Unit 5 Sequential MOS Logic Circuit
Unit 5 Sequential MOS Logic Circuit
Contents:
5.1 Introduction
5.2 Behaviour of Bistable elements
5.3 The SR Latch Circuit
5.4 Clocked Latch and Flip-flop Circuit
5.5 CMOS D-latch and Edge-triggered Flip-flop
In combinational logic, the output levels can be determined as Boolean functions of the
input variables applied at that time. They don’t have any capability of storing any
previous events, or displaying an output behavior that is dependent upon the previous
inputs. They are classified as non-regenerative circuits, since there is no feedback
relationship between the output and the input.
In sequential circuits, the output is determined by the current inputs as well as the
previous inputs. Figure 5.1 shows a sequential circuit consisting of a combinational
circuit and a memory block in the feedback loop. They are classified as non-
regenerative circuits, since there is no feedback relationship between the output and the
input. The regenerative circuits are critical components of sequential systems that can
be classified into three main groups: bistable circuits, monostable circuits, and astable
circuits. The general classification of logic circuits is shown in Fig. 5.2
Bistable circuits have two stable states. Monostable circuits have only one stable
operating point (state). If the circuit experiences an external perturbation, the output
returns to the single stable state after a certain time period. In astable circuits, there is
no stable operating point or state, which the circuit can preserve. The output of an
astable circuit must oscillate without settling into a stable operating mode Ring
The basic bistable element consists of two identical cross-coupled inverter circuits, as
shown in Fig. 5.3(a). Here, the output voltage of inverter (1) is equal to the input
voltage of inverter (2), and the output voltage of inverter (2) is equal to the input voltage
of inverter (1).
Figure 5.3(b) shows voltage transfer characterisitcs (VTC) of cross coupled inverters
shown in Fig. 5.3(a). The two VTCs intersect at three points; two of these operating
points are stable. If the circuit is operating at one of these two stable points, it will
preserve this state unless it is forced externally to change its operating point. The slope
of the respective VTC (gain) is smaller than unity at the two stable operating points.
Thus, in order to change the state by moving the operating point from one stable point
to the other, a sufficiently large external voltage must be applied so that the voltage
Fig. 5.4 (a) Circuit diagram of a CMOS bistable element. (b) Time-domain behavior of the output
voltages, if the circuit is initially set at its unstable operating point.
Figure 5.4(a) shows the circuit diagram of a CMOS two-inverter bistable element. The
unstable operating point of this circuit, all four transistors are in saturation, resulting in
maximum loop gain for the circuit. The output voltages of the two inverters settle at
VOH and VOL, respectively, as shown in Fig. 5.4(b).
Fig. 5.5 shows, small signal current and voltage for two inverters. Here,
The simple two-inverter circuit discussed above has no provision for allowing its state
to be changed from one stable operating mode to the other. To allow such a change of
state, simple switches can be used to force or trigger the circuit from one operating
point to the other. Figure 5.6 shows the gate level schematic of SR latch, which has two
Fig. 5.6 Gate-level schematic and block diagram of the NOR-based SR latch
The SR latch has two complementary outputs, Q and Q . Here, set state means Q is equal to
logic “1" and Q is equal to logic "0." The reset state indicates output Q is equal to logic "0"
and Q is equal to "1."
Here, when both input signals are equal to logic "0," the SR latch preserves its previous
state (hold). If the S input is equal to logic "1" and the R input is equal to logic "0," then
the output Q is equal to logic “1 " and output Q is equal to logic "0." This indicates set
condition of SR latch. Similarly, if S is equal to "0" and R is equal to "1," then the
output node Q will be forced to "0" while Q is forced to "1." Thus, the latch is reset, for
this condition of inputs. Finally, when both of the inputs S and R are equal to logic “1”,
both output nodes will be forced to logic "0." However, Q and Q must be
complementary. Therefore, this input combination is not permitted during normal
operation and is considered to be a not allowed condition. The truth table of the NOR-
based SR latch is summarized in the following:
The SR latch can also be implemented through NAND gates as shown in Fig. 5.9. Here,
one input of each NAND gate is used to cross-couple to the output of the other NAND
gate, while the second input enables external triggering.
Here, when both input signals are equal to logic "0," both output nodes will be at logic-
high, which is not allowed because it violates the complementarity of the two outputs.
Now, if S is equal to "0" and R is equal to “1," the output Q becomes logic “1” value
and the Q becomes logic "0." Assuming S and R active low inputs, the latch is in set
condition. If S is equal to "1" and R is equal to “0," the output Q becomes logic “0”
value and the Q becomes logic "1." This is reset condition of latch. The NAND based
SR latch preserves its state when both of the inputs equal to logic “1." The truth table
of the NAND SR latch is also shown in the following. Figure 5.10 shows CMOS
implementation of NAND SR latch.
The gate-level schematic of a clocked NOR-based SR latch is shown in Fig. 5.12. The
clock pulse is a periodic square waveform. If the clock (CK) is equal to logic "0," the
outputs of the two AND gates will remain at logic "0," which forces the SR latch to
hold its state. The input signals have no influence upon the circuit response. When the
clock input goes to logic " 1," state changes as per input conditions.
To understand the operation of the clocked SR latch, a sample sequence of CK, S, and
R waveforms and the corresponding output waveform Q are shown in Fig. 5.13. The
circuit is high level-sensitive during active clock phases, i.e., output follows input when
the CK level is equal to " 1 ". Even a narrow spike or glitch occurring during an active
clock phase can set or reset the latch, if the loop delay is shorter than the pulse width.
Figure 5.14 shows a CMOS implementation of the clocked NOR-based SR latch circuit,
using two AND-OR-INVERT (AOI) gates. The AOI-based implementation results in a
very small transistor count.
The clocked based NAND SR latch can also be implemented, as shown in Fig. 5.15.
The latch is low level sensitive. This means that output changes as per input
All NAND based implementation of SR latch is shown in Fig. 5.16. Here, both input
signals and the CK signal are active high. This means latch is set when CK=”1”, S=”1”
and R=”0”. Similarly, the latch will be reset when CK = "1," S = "0," and R = "1." The
latch preserves its state as long as CK = "0". However, this implementation requires
higher transistor count than the active low version shown in Fig. 5.15.
Clocked JK Latch
All SR latch circuits suffer from the not-allowed state. This problem can be overcome
through a JK latch. Figure 5.17 shows an all-NAND implementation of the JK latch
with active high inputs and its block diagram. The JK latch is commonly called a JK
flip-flop.
When the clock is active, the latch can be set with the input combination (J = '1," K =
"0"), and it can be reset with the input combination (J = "0," K = "1"). If both inputs are
equal to logic "0," the latch preserves its current state. If, both inputs are equal to " 1 "
during the active clock phase, the latch simply switches its state due to feedback. The
JK latch does not have a not-allowed input combination. The JK latch holds its state
when the clock is inactive (CK = "0"). The operation of the clocked JK latch is
summarized in Table 5.3.
Figure 5.18 shows NOR-based clocked JK latch, and CMOS realization of it. The AOI-
based implementation results in a relatively low transistor count, and hence, a more
compact circuit compared to the all-NAND realization shown in Fig. 5.17.
Master-Slave Flip-Flop
Two latch stages in a cascaded configuration can prevent most of the timing limitations
of clocked latch circuits. The principle is that the two-cascaded stages are activated with
opposite clock phases. This configuration is called the master-slave flip-flop.
The input signals J and K are connected to the "master" flip-flop which "locks" the
input condition while the clock (Clk) input is at logic level "1". As the clock input of
the "slave" flip-flop is the inverse (complement) of the "master" clock input, the "slave"
flip-flop does not toggle. The outputs from the "master" flip-flop are only "seen" by the
"slave" flip-flop when the clock input goes to logic level "0". When the clock is "LOW",
the outputs from the "master" flip-flop are latched and any additional changes to its
inputs are ignored. The gated "slave" flip-flop now responds to the state of its inputs
passed over by the "master" section. Because the master and the slave stages are
decoupled from each other, the circuit allows for toggling when J = K = "1," but it
eliminates the possibility of uncontrolled oscillations since only one stage is active at
any given time.
Figure 5.20 shows waveforms of the master-slave flip-flop. When the clock pulse is
high, a narrow spike or glitch in one of the inputs, cause an unwanted state transition,
which will then be propagated into the slave stage during the following phase. This
problem can be eliminated by using an edge-triggered master-slave flip-flop. A NOR-
based realization for the master-slave JK flip-flop circuit is shown in Fig. 5.21.
The D-latch circuit is shown in Fig. 5.22. The gate-level representation of the D-latch
can be obtained by modifying the clocked NOR-based SR latch circuit. Here, single D
input is directly connected to the S input of the latch. The inverted input ( D ) is
connected to the R input of the latch. Therefore output Q follows D when the clock is
active, i.e., for CK = "1." When the clock signal goes to zero, the output will simply
preserve its state.
The D-latch can be used in digital circuit design, for temporary storage of data or as a
delay element. Figure 5.23 shows a basic two-inverter loop and two CMOS
Fig. 5.22 Gate-level schematic and the block diagram of the D-latch.
Here, setup time is the minimum amount of time the data signal should be held steady
before the clock event so that the data are reliably sampled by the clock. Similarly, hold
time is the minimum amount of time the data signal should be held steady after the
clock event so that the data are reliably sampled. Once the inverter loop is completed
by closing the loop switch, the output will preserve its valid level. The metastability in
flip-flops can be avoided by ensuring that the data and control inputs are held valid and
constant for specified periods before and after the clock pulse, called the setup time and
the hold time respectively.
Fig. 5.24 Schematic view and the timing diagram of the CMOS D latch
circuit, showing the setup time and the hold time.
Brief Questions:
Detailed Questions: