ASynchronous Sequential Circuits

Embed Size (px)

Citation preview

  • 8/12/2019 ASynchronous Sequential Circuits

    1/49

    Asynchronous Sequential Circuits

    CHAPTER 4

    ASYNCHRONOUS SEQUENTIAL CIRCUITS

    4! INTRO"UCTION

    A sequential circuit is specified by a time sequence of inputs, outputs and internal

    states. In synchronous sequential circuits, the output changes whenever a clock pulse is

    applied. The memory elements are clocked flip-flops.

    Asynchronous sequential circuits do not use clock pulses. The memory elements in

    asynchronous sequential circuits are either unclocked flip-flops (atches! or time-delay

    elements.

    SNo Synchronous sequential circuits Asynchronous sequential circuits

    " #emory elements are clocked flip-flops#emory elements are either unclocked

    flip-flops or time delay elements.

    $

    The change in input signals can affect

    memory element upon activation of

    clock signal.

    The change in input signals can affect

    memory element at any instant of time.

    %

    The ma&imum operating speed of clock

    depends on time delays involved.Therefore synchronous circuits can

    operate slower than asynchronous.

    'ecause of the absence of clock, it can

    operate faster than synchronous

    circuits.

    )asier to design #ore difficult to design

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    2/49

    Asynchronous Sequential Circuits

    #loc$

    %ia&ra' o(

    Asynchronous sequential circuits

    The block diagram of asynchronous sequential circuit is shown above. It consists of a

    combinational circuit and delay elements connected to form feedback loops. There are *n+

    input variables, *m+ output variables, and *k+ internal states.

    The delay elements provide short term memory for the sequential circuit. The present-

    state and ne&t-state variables in asynchronous sequential circuits are called secondary

    variables and e&citation variables, respectively.

    hen an input variable changes in value, the *y+ secondary variable does not change

    instantaneously. It takes a certain amount of time for the signal to propagate from the input

    terminals through the combinational circuit to the *+ e&citation variables where the new

    values are generated for the ne&t state. These values propagate through the delay elements

    and become the new present state for the secondary variables.

    In steady-state condition, e&citation and secondary variables are same, but during

    transition they are different.

    To ensure proper operation, it is necessary for asynchronous sequential circuits to

    attain a stable state before the input is changed to a new value. 'ecause of unequal delays in

    wires and combinational circuits, it is impossible to have two or more input variable change

    at e&actly same instant. Therefore, simultaneous changes of two or more input variables are

    avoided.

    nly one input variable is allowed to change at any one time and the time betweeninput changes is kept longer than the time it takes the circuit to reach stable state.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    3/49

    Asynchronous Sequential Circuits

    Ty)es*

    According to how input variables are to be considered, there are two types

    /undamental mode circuit

    0ulse mode circuit.

    /undamental mode circuit assumes that1

    The input variables change only when the circuit is stable.

    nly one input variable can change at a given time.

    Inputs are levels (2, "! and not pulses.

    0ulse mode circuit assumes that1

    The input variables are pulses (True, /alse! instead of levels.

    The width of the pulses is long enough for the circuit to respond to the input.

    The pulse width must not be so long that it is still present after the new state is reached.

    4+ Analysis o( ,un%a'ental -o%e Circuits

    The analysis of asynchronous sequential circuits consists of obtaining a table or a

    diagram that describes the sequence of internal states and outputs as a function of changes in

    the input variables.

    4+! Analysis )roce%ure

    The procedure for obtaining a transition table from the given circuit diagram is as

    follows.

    ". 3etermine all feedback loops in the circuit.

    $. 3esignate the output of each feedback loop with variable " and its corresponding

    inputs y", y$,4.yk, where k is the number of feedback loops in the circuit.

    %. 3erive the 'oolean functions of all +s as a function of the e&ternal inputs and the

    y+s.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    4/49

    Asynchronous Sequential Circuits

    . 0lot each function in a map, using y variables for the rows and the e&ternal inputs

    for the columns.

    5. 6ombine all the maps into one table showing the value of 7 ", $,4.kinside each

    square.

    8. 6ircle all stable states where 7y. The resulting map is the transition table.

    4++ Pro.le's

    ". An asynchronous sequential circuit is described by the following e&citation and output

    function,

    Y/ 0!0+1 20!10+3 y

    / Y

    a! 3raw the logic diagram of the circuit.b! 3erive the transition table, flow table and output map.

    c! 3escribe the behavior of the circuit.

    Soln*

    i! The logic diagram is shown as,

    Lo&ic %ia&ra'

    ii!

    y 0! 0+ 0!0+ 20!10+3y Y/ 0!0+1 20!10+3y / Y

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    "

    2

    2

    2

    "

    "

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    "

    "

    "

    2

    "

    "

    "

    2

    "

    "

    "

    Transition ta.le*

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    5/49

    Asynchronous Sequential Circuits

    Out)ut 'a)*

    utput is mapped for all stable states. /or unstable states output is mapped

    unspecified.

    ,lo5 ta.le*

    Assign a7 29 b7 "

    iii!

    The circuit gives carry output of the full adder circuit.

    $. 3esign an asynchronous sequential circuit that has two internal states and one output. The

    e&citation and output function describing the circuit are as follows1

    Y!/ 0!0+1 0!y+1 0+y!

    Y+/ 0+1 0!y!y+1 0!y!

    / 0+1 y!

    a! 3raw the logic diagram of the circuit.

    b! 3erive the transition table, output map and flow table.

    Soln*

    i! The logic diagram is shown as,

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    6/49

    Asynchronous Sequential Circuits

    Lo&ic "ia&ra'

    ii!

    y!

    y+

    0!

    0+

    0!0+

    0!y+

    0+y!

    0!y!y+

    0!y!

    Y!

    Y+

    4/0+1y!

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    2

    "

    2

    "

    2

    "

    2

    "

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    "

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    "

    2

    "

    "

    "

    "

    "

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    "

    2

    "

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    "

    "

    2

    2

    "

    "

    2

    "

    "

    "

    2

    "

    "

    "

    "

    "

    "

    "

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    7/49

    Asynchronous Sequential Circuits

    Transition ta.le an% Out)ut 'a)

    Transition ta.le Out)ut 'a)

    Pri'iti6e ,lo5 ta.le

    %. An asynchronous sequential circuit is described by the e&citation and output functions,

    Y/ 0!0+71 20!10+73 y

    / Y

    a! 3raw the logic diagram of the circuit.

    b! 3erive the transition table, output map and flow table.

    Soln*

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    8/49

    Asynchronous Sequential Circuits

    Lo&ic %ia&ra'

    ii!

    Y 0! 0+ 0+7 0!0+7 20!10+73y Y/ 0!0+71 20!10+73y / Y

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    "

    2

    2

    2

    "

    2"

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    "

    2

    "

    2

    2

    2

    "

    2

    "

    2

    "

    "

    "

    2

    "

    "

    "

    2

    "

    "

    Transition ta.le*

    Transition Ta.le

    Out)ut 'a)*

    utput is mapped for all stable states. /or unstable states output is mapped

    unspecified.

    Out)ut 'a)

    ,lo5 ta.le*

    Assign a7 29 b7 "

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    9/49

    Asynchronous Sequential Circuits

    . An asynchronous sequential circuit is described by the e&citation and output functions,

    #/ 2A!7#+3 .1 2A!1#+3 C/ #

    a! 3raw the logic diagram of the circuit.

    b! 3erive the transition table, output map and flow table.

    Soln*

    Lo&ic "ia&ra'

    ii!

    # A! #+ A!7 2A!7#+3. A!1#+ #/ 2A!7#+3 .1 2A!1#+3 C/ #

    22

    2

    2

    22

    "

    "

    2"

    2

    "

    ""

    2

    2

    22

    2

    2

    2"

    "

    "

    2"

    "

    "

    2"

    "

    "

    "

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    "

    "

    2

    2

    2

    "

    2

    2

    2

    "

    "

    "

    2

    "

    "

    "

    2

    "

    "

    "

    Transition ta.le

    Out)ut 'a)

    utput is mapped for all stable states.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    10/49

    Asynchronous Sequential Circuits

    ,lo5 ta.le

    Assign a7 29 b7 "

    5. An asynchronous sequential circuit is described by the e&citation and output functions,

    8/ 2Y!!79+3 0 1 2Y!7!9+73

    S/87

    a! 3raw the logic diagram of the circuit

    b! 3erive the translation table and output map

    Soln*

    0 9+

    9+7

    Y!

    Y!7

    4!

    4!7

    2Y!4!79+30

    Y!74!9+7

    8S/87

    2

    2

    2

    2

    "

    "

    2

    2

    "

    "

    2

    "

    "

    2

    2

    2

    2

    "

    2

    "

    "

    2

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    11/49

    Asynchronous Sequential Circuits

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    2

    "

    "

    2

    2

    2

    2

    2

    2

    2

    "

    "

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    2

    "

    2

    "

    "

    2

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    "

    "

    "

    "

    "

    "

    "

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    "

    "

    "

    "

    2

    2

    2

    "

    2

    "

    "

    2

    "

    2

    2

    2

    2

    2

    2

    "

    2

    2

    2

    "

    2

    2

    "

    2

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    2

    2

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    2

    "

    2

    "

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    "

    2

    "

    "

    2

    "

    Transition ta.le an% Out)ut 'a)*

    Transition ta.le Out)ut 'a)

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    12/49

    Asynchronous Sequential Circuits

    4: Analysis o( Pulse -o%e Circuits

    0ulse mode asynchronous sequential circuits rely on the input pulses rather than

    levels. They allow only one input variable to change at a time. They can be implemented by

    employing a :; latch.

    The procedure for analy

  • 8/12/2019 ASynchronous Sequential Circuits

    13/49

    Asynchronous Sequential Circuits

    E0a')le o( a circuit 5ith SR latches

    Soln*

    There are two inputs &"and &$and two e&ternal feedback loops giving rise to the

    secondary variables y"and y$.

    :tep "1The 'oolean functions for the : and ; inputs in each latch are1

    S!/ 0!y+ S+/ 0!0+

    R!/ 0!70+7 R+/ 0+7y!

    :tep $1

    6heck whether the conditions :;7 2 is satisfied to ensure proper operation of the circuit.

    S!R!/ 0!y+0!70+7 / ;

    S+R+/ 0!0+0+7y! / ;

    The result is 2 because &"&"+ 7 &$&$+ 7 2

    :tep %1

    )valuate "and $. The e&citation functions are derived from the relation Y/ S1 R7y

    Y!/ S!1 R!7y!7 &"y$?(&"+&$+!+ y"

    7 &"y$?(&"? &$! y"7 &"y$?&"y"? &$y"

    Y+/ S+1 R+7y+7 &"&$? (&$+y"!+y$7 &"&$? (&$? y"+! y$7 &"&$? &$y$? y"+y$

    y! y+ 0! 0+ 0!y+ 0!y! 0+y! 0!0+ 0+y+ y!7y+ Y! Y+

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    2

    2

    2

    2

    "

    "

    "

    "

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    "

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    2

    "

    2

    "

    "

    "

    "

    "

    2

    2

    "

    "

    "

    "

    "

    "

    "

    "

    "

    "

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    2

    2

    2

    "

    "

    2

    "

    2

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    2

    2

    2

    2

    "

    "

    "

    2

    2

    2

    "

    "

    "

    "

    "

    2

    2

    2

    "

    2

    2

    2

    2

    2

    "

    2

    2

    2

    "

    2

    2

    2

    "

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    14/49

    Asynchronous Sequential Circuits

    "

    "

    "

    "

    "

    "

    2

    "

    "

    "

    "

    "

    2

    "

    2

    "

    2

    "

    2

    2

    "

    "

    :tep 1

    #aps for "and $.

    :tep 51Transition table

    44 RACES*

    A race condition is said to e&ist in an asynchronous sequential circuit when two or

    more binary state variables change value in response to a change in an input variable.

    ;aces are classified as1

    i. =on-critical races

    ii. 6ritical races.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    15/49

    Asynchronous Sequential Circuits

    Non=critical races*

    If the final stable state that the circuit reaches does not depend on the order in which

    the state variables change, the race is called a non-critical race.

    If a circuit, whose transition table (a! starts with the total stable state y"y$&7 000 and

    then change the input from 2 to ". The state variables must then change from 22 to "", which

    define a race condition.

    The possible transitions are1

    2 ""

    2 2" ""

    2 "2 ""

    In all cases, the final state is the same, which results in a non-critical condition. In (a!, thefinal state is (y"y$&7 """!, and in (b!, it is (y"y$&7 2""!.

    E0a')les o( Non=critical Races

    Critical races*

    A race becomes critical if the correct ne&t state is not reached during a state transition.

    If it is possible to end up in two or more different stable states, depending on the order in

    which the state variables change, then it is a critical race. /or proper operation, critical races

    must be avoided.

    The below transition table illustrates critical race condition. The transition table (a!

    starts in stable state (y"y$&7 222!, and then change the input from 2 to ". The state variables

    must then change from 22to "". If they change simultaneously, the final total stable state is

    """. In the transition table (a!, if, because of unequal propagation delay, $ changes to "

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    16/49

    Asynchronous Sequential Circuits

    before " does, then the circuit goes to the total stable state 2"" and remains there. If,

    however, Y1 changes first, the internal state becomes "2 and the circuit will remain in the

    stable total state "2".

    @ence, the race is critical because the circuit goes to different stable states, depending on the

    order in which the state variables change.

    E0a')les o( Critical Races

    4> CYCLES

    ;aces can be avoided by directing the circuit through intermediate unstable states

    with a unique state-variable change. hen a circuit goes through a unique sequence of

    unstable states, it is said to have a cycle.

    Again, we start with y"y$7 22 and change the input from 0 to ". The transition table

    (a! gives a unique sequence that terminates in a total stable state "2". The table in (b! shows

    that even though the state variables change from 22 to "", the cycle provides a unique

    transition from 00 to 2" and then to "", 6are must be taken when using a cycle that

    terminates with a stable state. If a cycle does not terminate with a stable state, the circuit will

    keep going from one unstable state to another, making the entire circuit unstable. This is

    demonstrated in the transition table (c!.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    17/49

    Asynchronous Sequential Circuits

    E0a')les o( Cycles

    "e.ounce Circuit*

    Input binary information in binary information can be generated manually be means

    of mechanical switches. ne position of the switch provides a voltage equivalent to logic ",

    and the other position provides a second voltage equivalent to logic 2. #echanical switches

    are also used to start, stop, or reset the digital system. A common characteristic of a

    mechanical switch is that when the arm is thrown from one position to the other the switch

    contact vibrates or bounces several times before coming to a final rest. In a typical switch, the

    contact bounce may take several milliseconds to die out, causing the signal to oscillate

    between " and 2 because the switch contact is vibrating.

    A debounce circuit is a circuitwhich removes the series of pulses that result from a

    contact bounce and produces a single smooth transition of the binary signal from 0 to " or

    from " to 2. ne such circuit consists of a single-pole, double-throw switch connectedto an

    SR latch, as shown below. The center contact is connected to ground that provides a signal

    equivalent to logic 2. hen one of the two contacts, A or B, is not connected to ground

    through the switch, it behaves like a logic-" signal. hen the switch is thrown from position

    A to positionB and back, the outputs of the latch produce a single pulse as shown, negative

    for Q and positive for Q'. The switch is usually a push button whose contact rests in position

    A. hen the pushbutton is depressed, it goes to position ' and when released, it returns to

    position A.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    18/49

    Asynchronous Sequential Circuits

    "e.ounce Circuit

    The operation of the debounce circuit is as follows1 hen the switch resets in position

    A, we have the condition : 7 2, R 7 " and Q 7 ", Q' 7 2. hen the switch is moved to

    positionB, the ground connection causes ; to go to 0, while Sbecomes a " because contact A

    is open. This condition in turn causes output to go to 2 and B to go to ". After the switch

    makes an initial contact with B, it bounces several times. The output of the latch will be

    unaffected by the contact bounce because B remains " (and remains 0) whetherR is equal

    to 0 (contact with ground! or equal to" (no contact with ground!. hen the switch returns to

    position A, Sbecomes 0 and Q returns to ". The output again will e&hibit a smooth transition,

    even if there is a contact bounce in position A.

    4? "ESI@NO,,UN"A-ENTAL-O"ESEQUENTIALCIRCUITS

    The design of an asynchronous sequential circuit starts from the statement of the

    problem and concludes in a logic diagram. There are a number of design steps that must be

    carried out in order to minimi

  • 8/12/2019 ASynchronous Sequential Circuits

    19/49

    Asynchronous Sequential Circuits

    . Assign binary state variables to each row of the reduced flow table to obtain the

    transition table. The procedure of state assignment eliminates any possible critical

    races.

    5. Assign output values to the dashes associated with the unstable states to obtain the

    output maps.

    8. :implify the 'oolean functions of the e&citation and output variables and draw the

    logic diagram.

    ". 3esign a gated latch circuit with inputs, C (gate! and 3 (data!, and one output, . 'inary

    information present at the 3 input is transferred to the output when C is equal to ". The

    output will follow the 3 input as long as C7 ". hen C goes to 2, the information that

    was present at the 3 input at the time of transition occurred is retained at the output.

    The gated latch is a memory element that accepts the value of 3 when C7 " and retains

    this value after C goes to 2, a change in 3 does not change the value of the output .

    Soln*

    :tep "1

    /rom the design specifications, we know that 7 2 if 3C7 2"

    and 7 " if 3C7 ""

    because 3 must be equal to when C7 ".

    hen C goes to 2, the output depends on the last value of 3. Thus, if the transition is

    from 2" to 22 to "2, then must remain 2 because 3 is 2 at the time of the transition from "

    to 2 in C.

    If the transition of 3C is from "" to "2 to 22, then must remain ". This information

    results in si& different total states, as shown in the table.

    StateIn)uts Out)ut

    Co''ents" @ Q

    a 2 " 2 37 because C7 "

    b " " " 37 because C7 "

    c 2 2 2 After state a or d

    d " 2 2 After state c

    e " 2 " After state b or f

    f 2 2 " After state e

    :tep $1 A primitive flow is a flow table with only one stable total state in each row. It

    has one row for each state and one column for each input combination.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    20/49

    Asynchronous Sequential Circuits

    Pri'iti6e (lo5 ta.le

    :tep %1

    The primitive flow table has only stable state in each row. The table can be reduced to

    a smaller number of rows if two or more stable states are placed in the same row of the flow

    table. The grouping of stable states from separate rows into one common row is called

    merging.

    States that are can%i%ates (or 'er&in&

    Thus, the three rows a, c, and d can be merged into one row. The second row of the

    reduced table results from the merging of rows b, e, and f of the primitive flow table.

    Re%uce% ta.le= !

    The states c D d are replaced by state a, and states e D f are replaced by state b

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    21/49

    Asynchronous Sequential Circuits

    Re%uce% ta.le= +

    :tep 1

    Assign distinct binary value to each state. This assignment converts the flow table into

    a transition table. A binary state assignment must be made to ensure that the circuit will be

    free of critical races.

    Assign 2 to state a, and " to state b in the reduced state table.

    Transition ta.le an% out)ut 'a)

    Ste) >*

    @ate%=Latch Lo&ic %ia&ra'

    The diagram can be implemented also by means of an :; latch. btain the 'oolean

    function for : and ; inputs.

    y Y S R

    2

    2

    "

    "

    2

    "

    2

    "

    2

    "

    2

    E

    &

    2

    "

    2SR Latch e0citation ta.le

    /rom the information given in the transition table and from the latch e&citation table

    conditions, we can obtain the maps for the : and ; inputs of the latch.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    22/49

    Asynchronous Sequential Circuits

    -a)s (or S an% R

    The logic diagram consists of an :; latch using =; latch and the gates required to

    implement the : and ; 'oolean functions. ith a =A=3 latch, we must use the

    complemented values for : and ;.

    S7 / 2"@37 and R7 / 2"7@37

    Lo&ic %ia&ra' 5ith NOR latch Lo&ic %ia&ra' 5ith NAN" latch

    $. 3esign a negative-edge triggered T flip-flop. The circuit has two inputs, T (toggle! and C

    (clock!, and one output, . the output state is complemented if T7 " and the clock

    changes from " to 2 (negative-edge triggering!. therwise, under any other input

    condition, the output remains unchanged.

    :tep "1

    :tarting with the input condition T67 "" and assign it to a. The circuit goes to state b

    and output complements from 2 to " when 6 changes from " to 2 while T remains a ".

    Another change in the output occurs when the circuit changes from state c to state d.

    In this case, T7", 6 changes from " to 2, and the output complements from " to 2. The

    other four states in the table do not change the output, because T is equal to 2. If is initially

    2, it stays at 2, and if initially at ", it stays at " even though the clock input changes.

    StateIn)uts Out)ut

    Co''entsT @ Q

    a " " 2 Initial output is 2

    b " 2 " After state ac " " " Initial output is "

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    23/49

    Asynchronous Sequential Circuits

    d " 2 2 After state c

    e 2 2 2 After state d or f

    f 2 " 2 After state e or a

    g 2 2 " After state b or h

    h 2 " " After state g or cS)eci(ications o( total states

    :tep $* -er&in& o( the (lo5 ta.le

    The information for the primitive flow table can be obtained directly from the

    condition listed in the above table. e first fill in one square in each row belonging to stable

    state in that row as listed in the table.

    Then we enter dashes in those squares whose input differs by two variables from the

    input corresponding to the stable state.The unstable conditions are then determined by utili

  • 8/12/2019 ASynchronous Sequential Circuits

    24/49

    Asynchronous Sequential Circuits

    I')lication ta.le

    The implication table is used to find the compatible states. The only difference is that

    when comparing rows, we are at liberty to adFust the dashes to fit any desired condition. The

    two states are compatible if in every column of the corresponding rows in the primitive flow

    table, there are identical or compatible pairs and if there is no conflict in the output values.

    A check mark ( ! designates a square whose pair of states is compatible. Those

    states that are not compatible are marked with a cross (&!. The remaining squares are

    recorded with the implied pairs that need further investigation.

    The squares that contain the check marks define the compatible pairs1

    (a, f! (b, g! (b, h! (c, h! (d, e! (d, f! (e, f! (g, h!

    Ste) 4* -a0i'al co')ati.les

    @aving found all the compatible pairs, the ne&t step is to find larger set of states that

    are compatible. The maximal compatibleis a group of compatibles that contain all the

    possible combinations of compatible states. The ma&imal compatible can be obtained from a

    merger diagram.

    The 'er&er %ia&ra'is a graph in which each state is represented by a dot placed

    along the circumference of a circle. ines are drawn between any two corresponding dots that

    form a compatible pair. All possible compatibles can be obtained from the merger diagram by

    observing the geometrical patterns in which states are connected to each other..

  • 8/12/2019 ASynchronous Sequential Circuits

    25/49

    Asynchronous Sequential Circuits

    A line represents a compatible pair

    A triangle constitutes a compatible with three states

    An n-state compatible is represented in the merger diagram by an n-sided polygon

    with all its diagonals connected.

    -er&er "ia&ra'

    The merger diagram is obtained from the list of compatible pairs derived from the

    implication table. There are eight straight lines connecting the dots, one for each compatible

    pair. The lines form a geometrical pattern consisting of two triangles connecting (b, g, h! D

    (d, e, f! and two lines (a, f! D (c, h!. The ma&imal compatibles are1

    2a (3 2. & h3 2c h3 2% e (3

    Re%uce% ,lo5 ta.le

    The reduced flow table is drawn. The compatible states are merged into one row that

    retains the original letter symbols of the states. The four compatible set of states are used to

    merge the flow table into four rows.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    26/49

    Asynchronous Sequential Circuits

    ,inal Re%uce% ,lo5 ta.le

    @ere we assign a common letter symbol to all the stable states in each merged row.

    Thus, the symbol f is replaced by a9 g D h are replaced by b, and similarly for the other two

    rows.

    Ste) >* State Assi&n'ent an% Transition ta.le

    /ind the race-free binary assignment for the four stable states in the reduced flow

    table. Assign a7 22, b7 2", c7 "" and d7 "2.

    :ubstituting the binary assignment into the reduced flow table, the transition table is

    obtained. The output map is obtained from the reduced flow table.

    Transition Ta.le an% Out)ut -a)

    Transition ta.le Out)ut 'a) Q/ y+

    Lo&ic "ia&ra'*

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    27/49

    Asynchronous Sequential Circuits

    -a)s (or Latch In)uts

    %. 3evelop a state diagram and primitive flow table for a logic system that has two inputs, E

    and , and a single output E, which is to behave in the following manner. Initially, both

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    28/49

    Asynchronous Sequential Circuits

    inputs and output are equal to 2. henever E7 " and 7 2, the G becomes " and

    whenever E7 2 and 7 ", the G becomes 2. hen inputs are

  • 8/12/2019 ASynchronous Sequential Circuits

    29/49

    Asynchronous Sequential Circuits

    e know that both inputs are not allowed to change simultaneously, so we can enter

    dash marks in each row that differs in two or more variables from the input variables

    associated with the stable state. /or e&ample, the first row in the flow table shows a stable

    state with an input of 22. :ince only one input can change at any given time, it can change to

    2" or "2, but not to "". Therefore we can enter two dashes in the "" column of row A.

    The remaining places in the primitive flow table can be filled by observing state

    diagram. /or e&ample, state ' is the ne&t state for present state A when input combination is

    2"9 similarly state 6 is the ne&t state for present state A when input combination is "2.

    Pri'iti6e (lo5 ta.le

    :tep %1

    The rows in the primitive flow table are merged by first obtaining all compatible pairs

    of states. This is done by means of the implication table.

    The squares that contain the check marks ( ! define the compatible pairs1

    (A, '! (A, 3! (A, /! (', 3! (6, )! (6, /! (3, )! (), /!

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    30/49

    Asynchronous Sequential Circuits

    :tep 1

    The merger diagram is obtained from the list of compatible pairs derived from the

    implication table. There are eight straight lines connecting the dots, one for each compatible

    pair. The lines form a geometrical pattern consisting of two triangles connecting (A, ', 3! D

    (6, ), /! and two lines (A, /! D (3, )!. The ma&imal compatibles are1

    2A # "3 2C E ,3 2A ,3 2" E3

    -er&er %ia&ra'

    Close% co6erin& con%ition1

    The condition that must be satisfied for merging rows is that the set of chosen

    compatibles must cover all the states and must be closed. The set will cover all the states if it

    includes all the states of the original state table. The closure condition is satisfied if there are

    no implied states or if the implied states are included within the set. A closed set of

    compatibles that covers all the states is called a closed covering.

    If we remove (A, /) and (3, )!, we are left with a set of two compatibles1

    2A # "3 2C E ,3

    All si& states from the primitive flow table are included in this set. Thus, the set satisfies the

    covering condition.

    The reduced flow table is drawn as below.

    Re%uce% (lo5 ta.le

    @ere we assign a common letter symbol to all the stable states in each merged row.

    Thus, the symbol ' D 3 is replaced by A9 ) D / are replaced by 6.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    31/49

    Asynchronous Sequential Circuits

    :tep 51

    /ind the race-free binary assignment for the four stable states in the reduced flow

    table. Assign A7 2 and 67 "

    :ubstituting the binary assignment into the reduced flow table, the transition table is

    obtained. The output map is obtained from the reduced flow table.

    Transition ta.le an% out)ut 'a)

    :tep 81

    @ate%=Latch Lo&ic %ia&ra'

    . 3esign a circuit with inputs E and to give an output G7 " when E7 "" but only if E

    becomes " before , by drawing total state diagram, primitive flow table and output map

    in which transient state is included.

    Soln*

    :tep "1

    The state diagram can be drawn as,

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    32/49

    Asynchronous Sequential Circuits

    State ta.le

    :tep $1

    A primitive flow table is constructed from the state table as,

    Pri'iti6e (lo5 ta.le

    :tep %1

    The rows in the primitive flow table are merged by first obtaining all compatible pairs

    of states. This is done by means of the implication table.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    33/49

    Asynchronous Sequential Circuits

    I')lication ta.le

    The squares that contain the check marks ( ! define the compatible pairs1

    (A, '! (A, 6! (A, 3! (A, )! (', 3! (6, )!

    :tep 1

    The merger diagram is obtained from the list of compatible pairs derived from the

    implication table. There are si& straight lines connecting the dots, one for each compatible

    pair. The lines form a geometrical pattern consisting of one triangle connecting (A, ', 3! D a

    line (6, )!. The ma&imal compatibles are1

    2A # "3 2C E3

    -er&er %ia&ra'

    The reduced flow table is drawn as below.

    Re%uce% (lo5 ta.le

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    34/49

    Asynchronous Sequential Circuits

    @ere we assign a common letter symbol to all the stable states in each merged row.

    Thus, the symbol ' D 3 is replaced by A9 ) is replaced by 6.

    Transition ta.le

    5. 3esign a circuit with primary inputs A and ' to give an output G equal to " when A

    becomes " if ' is already ". nce G7 " it will remain so until A goes to 2. 3raw the total

    state diagram, primitive flow table for designing this circuit.

    Soln*

    :tep "1

    The state diagram can be drawn as,

    State %ia&ra'

    :tep $1

    A primitive flow table is constructed from the state table as,

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    35/49

    Asynchronous Sequential Circuits

    Pri'iti6e (lo5 ta.le

    8. 3esign an asynchronous sequential circuit that has two inputs E $and E"and one output

    G. hen E"7 2, the output G is 2. The first change in E $that occurs while E"is " will

    cause output G to be ". The output G will remain " until E"returns to 2.

    Soln*

    :tep "1

    The state diagram can be drawn as,

    State %ia&ra'

    :tep $1

    A primitive flow table is constructed from the state table as,

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    36/49

    Asynchronous Sequential Circuits

    Pri'iti6e (lo5 ta.le

    :tep %1The rows in the primitive flow table are merged by obtaining all compatible pairs of

    states. This is done by means of the implication table.

    I')lication ta.le

    The squares that contain the check marks ( ! define the compatible pairs1(A, '! (A, 6! (6, )! (3, /!

    :tep 1

    The merger diagram is obtained from the list of compatible pairs derived from the

    implication table. There are four straight lines connecting the dots, one for each compatible

    pair. It consists of four lines (A, '!, (A, 6!, (6, )! and (3, /!.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    37/49

    Asynchronous Sequential Circuits

    -er&er %ia&ra'

    The ma&imal compatibles are1

    2A #3 2C E3 2" ,3

    This set of ma&imal compatible covers all the original states resulting in the reduced flow

    table.

    The reduced flow table is drawn as below.

    /lo5 ta.le

    @ere we assign a common letter symbol to all the stable states in each merged row.

    Thus, the symbol ' is replaced by A9 ) is replaced by 6 and / is replaced by 3.

    Re%uce% ,lo5 ta.le

    :tep 51

    /ind the race-free binary assignment for the four stable states in the reduced flow

    table. Assign A7 :2, 67 :"and 37 :$.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    38/49

    Asynchronous Sequential Circuits

    =ow, if we assign :27 22, :" 7 2" and :$ 7 "2, then we need one more state :%7"" to

    prevent critical race during transition of :2 :"or :$ :". 'y introducing :%the transitions

    :" :$and :$ :"are routed through :%.

    Thus after state assignment the flow table can be given as,

    ,lo5 ta.le 5ith state assi&n'ent

    :ubstituting the binary assignment into the reduced flow table, the transition table is

    obtained. The output map is obtained from the reduced flow table.

    B= -a) si')li(ication1

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    39/49

    Asynchronous Sequential Circuits

    Lo&ic "ia&ra'1

    >. btain a primitive flow table for a circuit with two inputs &"and &$and two outputs

  • 8/12/2019 ASynchronous Sequential Circuits

    40/49

    Asynchronous Sequential Circuits

    Soln*

    The state diagram can be drawn as,

    State %ia&ra'

    Ste) +* A primitive flow table is constructed from the state table as,

    Pri'iti6e (lo5 ta.le

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    41/49

    Asynchronous Sequential Circuits

    4 HAAR"S

    @a

  • 8/12/2019 ASynchronous Sequential Circuits

    42/49

    Asynchronous Sequential Circuits

    The below circuit demonstrates the occurrence of a static "-ha

  • 8/12/2019 ASynchronous Sequential Circuits

    43/49

    Asynchronous Sequential Circuits

    Thus, a static 2-ha

  • 8/12/2019 ASynchronous Sequential Circuits

    44/49

    Asynchronous Sequential Circuits

    HaDar%=(ree Circuit

    The e&tra gate in the circuit generates the product term E"E%. The ha

  • 8/12/2019 ASynchronous Sequential Circuits

    45/49

    Asynchronous Sequential Circuits

    changes from 2 to ". Then, when E"change propagates through gate C$, the lower input to

    gate C%becomes 2 and the network output changes back to 2.

    /inally, when the E"7 " signal propagates through gate C, the lower input to gate C5

    becomes " and the network output again changes to ". It is therefore seen that during the

    change of E"variable from 2 to " the output undergoes the sequence,

    2 " 2 ", which results in three changes when it should have undergone only a

    single change.

    4: Essential HaDar%

    An essential ha

  • 8/12/2019 ASynchronous Sequential Circuits

    46/49

    Asynchronous Sequential Circuits

    ,/A7#7"1 A7#C1 A#"

    b! @a

  • 8/12/2019 ASynchronous Sequential Circuits

    47/49

    Asynchronous Sequential Circuits

    ,/ #7"71 A7#C1 AC7"71 A7C"7

    %. 3esign a ha, J, "2, "", "5!.

    .

  • 8/12/2019 ASynchronous Sequential Circuits

    48/49

    Asynchronous Sequential Circuits

    Soln*

    a! -map Implementation and grouping

    ,/ #7"71 A7#1 AC"

    b! @a

  • 8/12/2019 ASynchronous Sequential Circuits

    49/49

    Asynchronous Sequential Circuits

    ,/ A#7"1 A7#C1 A7#"1 A7#7C71 A7C7"1 #7C7"