" ABEL Code for the Sequence
detector 1011, implemented as a Mealy Machine
" File: SeqDet.abl
" created: 11/14/98 23:03:36
" from: \SeqDet.asf'
" by: fsm2hdl - version: 2.0.1.15
module seqdet
Title 'seqdet'
Declarations
"clocks
CLK PIN;
"input ports
RST PIN;
X PIN;
"output ports
Z PIN;
Equations
"diagram ACTIONS
Declarations
"******** SYMBOLIC state machine: Sreg0 ******
Sreg0 STATE_REGISTER;
S0, S1, S2, S3 STATE;
"************* state machine: Sreg0 *************
Equations
" clock signals definitions
    Sreg0.clk
= CLK;
State_diagram Sreg0
    ASYNC_RESET
S0 : RST;
State S0:
    IF (X&!RST)
THEN
    S1 WITH
    Z=^b0;
    ENDWITH
    ELSE IF (!X#RST)
THEN
       
S0 WITH
       
Z=^b0;
       
ENDWITH;
State S1:
    IF (X&!RST)
THEN
    S1 WITH
    Z=^b0;
    ENDWITH
    ELSE IF (!X&!RST)
THEN
       
S2 WITH
     
Z=^b0;
     
ENDWITH;
State S2:
    IF (X&!RST)
THEN
    S3 WITH
    Z=^b0;
    ENDWITH
    ELSE IF (!X&!RST)
THEN
       
S0 WITH
     Z=^b0;
     ENDWITH;
State S3:
    IF (X&!RST)
THEN
    S1 WITH
    Z=^b1;
    ENDWITH
    ELSE IF (!X&!RST)
THEN
       
S2 WITH
    Z=^b0;
    ENDWITH;
" end of state machine - Sreg0
end seqdet