You are on page 1of 31

Chapter 4

 
Combinational and
Sequential Circuit

1
Topics
• Combinational Circuit and Sequential
Circuit Criterions
• Some Examples of Combinational Circuit:
Parallel Adder, Decoder, etc
• Some Examples of Sequential Circuits:
Flip-flop, Register, Serial Adder, etc.

2
Combinational vs Sequential Circuit
Combinational Circuit A

- output determined solely by B


F
inputs
C
D

A
Sequential Circuit
B
- output determined by inputs F
AND previous outputs
C

3
Combinational Circuit
• Combinational Logic circuit contains logic gates where its
output is determined by the combination of the current
input, regardless of the output or the prior combination of
input.
• Basically, combinational circuit can be depicted by
Diagram 1 below:

n input combinational m output


circuit

• Examples of Combinational circuits in the computer


system are decoder, parallel adder, and multiplexer.
 

(Note: Students are encouraged to obtain examples of


combinational circuits stated above) 4
Sequential Circuit
• Sequential Logic Circuit contains logic gates arranged in
parallel and its output is not only determined by the
combination of the current input, but also the prior output.
• The circuit also contains memory elements that enable it
to store the information of the prior output.

m output
n input sequential
logic
circuit memory
elements

• Examples of sequential circuits in the computer


system are like registers, counters and serial adders.
5
Some Examples of Combinational Circuit:
Parallel Adder, Decoder, etc
• The circuits learnt in chapter 3 are combinational circuits. The
steps to design combinational circuits are as the following:
1.  Understand the problem
2. Determine the number of input and output variables
that are needed
3. Give symbols for the stated input and output
4. Construct a truth table that defines the relationship
between the input and output
5. Obtain the Boolean function or the logical expression from the
truth table in (4) using Karnaugh Map or other known methods.
6. Draw a logic circuit based on the expression obtained from (5)
above.
(Note : Alarm System in Chapter 3 is an example of designing a combinational
circuit )
6
Adder

7
Designing a Circuit for Half Adder

The steps are as below:


1. Problem: to build a logic circuit for the addition of 2 bits data
2. Number of input : 2; Number of output : 2
3. Variables for input: x and y
Variables for output : s (sum) and c (carry)
4. The Truth Table for the problem :
INPUT OUTPUT
x y s c
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
8
5. The expressions for s and c using Karnaugh Map

For s For c

y y
x 0 1 x 0 1
0 1 0

1 1 1 1

_ _
s=xy+xy c=xy
=xy
9
6. A logic circuits for Half Adder (HA)
x _ _
s = xy + xy
y

c = xy
OR
x
xy=s
y

xy = c
10
A Block Diagram for HA is as below:

x s
input HA output
y c

11
Designing a Circuit for Full Adder (FA)
The same method used to design HA.
1. Problem: Build logic circuit for the addition
of 3 bits data
2. Number of input : 3
Number of output : 2
3. Variables for input: x , y and ci
Variables for output : s (sum) and co (carry)

12
4. The truth table for the problem :
INPUT OUTPUT
x y ci s co

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

 5. Obtain the expression for r and co using Karnaugh Map


(Students are required to try this out themselves):
  will obtain s = x y pi + x y ci + x y ci + x y ci
= x  y  ci
and co = x y + y c i + x c i
13
6. Draw the circuit for FA
(Students are required to try this out themselves):

Generally, the block diagram for FA is shown as below :

x
s
input y FA output
co
ci

14
To construct a 4-bit parallel adder, 3 FA and 1 HA are required like
the diagram below with the input as X = x3x2x1x0 and Y = y3y2y1y0
(X and Y are binary numbers 4-bit) and the output (addition result)
is s3s2s1s0.
x3 y3 x2 y2 x1 y1 x 0 y0
INPUT

FA FA FA HA

c2 c1 c0
OUTPUT c 3 s3 s2 s1 s0
or x3 y 3 x2 y2
INPUT x1 y1 x0 y0 0

FA FA FA FA

c2 c1 c0
OUTPUT c3 s3 s2 s1 s0
15
Some Examples of Sequential Circuits: Flip-flop,
Register, Serial Adder, etc.

• Sequential circuits are a kind of logic circuit where the


current output not only depends on the current input but
also on the past history of inputs.
• Another and generally more useful way to view it is that
the current output of a sequential circuit depends on the
current input and the current state of that circuit.
• The simplest form of sequential circuit is a flip-flop. Flip-
flop is a kind of logic circuit that is capable of exhibiting 2
stable conditions.
• It is also known as 1-bit memory element and is mostly
used to make important computer components such as
registers, counters, memory etc.

16
17
• Table 1 shows symbolic graphic and feature table for three
types of flip-flop that are S‑R, J‑K and D flip‑flops.
• Flip-flop is a form of memory element used to construct
sequential circuits that are more complex, such as registers
etc. Sequential circuits can be divided into:
  1. Synchronous
2. Asynchronous
•  In synchronous sequential circuit, all flip‑flops are moved
by the same clock pulse so that all flip‑flops involved
change simultaneously.
• In asynchronous circuit, the change of flip‑flop condition
depends on the change that occurs on the input and the
late time that is in the circuit.

18
Table 1: Basic Flip-flops
Name Graphical Symbol Feature Table

 
S R  Qn+1
S Q
S-R 0 0 Qn
Clock

0 1 0
R Q
1 0 1

1 1 -

   
   
  J K  Qn+1
 
J Q
0 0 Qn
J-K
Clock
0 1 0
K Q 1 0 1

1 1 Change
condition
 
 
D Q  
D D Qn+1
Clock  
0 0
Q
1 1

19
S‑R Flip‑flop
• S‑R flip‑flop has 2 inputs, S (set) and R (reset) like Diagram 3
below. In the diagram below, (also for JK and D flip-flops),
they used another input called clock. It is to control the
movement of input that is input will only occur when given a
clock pulse (synchronous circuit)
• The features of S‑R flip‑flop can be depicted S R Qn Qn+1
in Table 2 below. It can be summarized that:
0 0 0 0
1. If the value of both S and R are 0, the 1
flip‑flop will remain in its present condition 0 0 1 1
(either 0 or 1). 0 1 0 0
2
2. If S = 0 and R = 1 (reset), then the flip‑flop
condition will change to 0 (its output, Q = 0). 0 1 1 0
3. If S = 1 (set) and R = 0, then the flip‑flop 1 0 0 1
3
condition will change to 1 (output, Q = 1). 1 0 1 1
4. This circuit does not allow combinational
1 1 0 -
input of input S = 1 and R = 1. 4
1 1 1 -
Table 2 : Feature table of S-R Flip-flop
20
S
Q

control the clock


movement
of input

Q
R

Diagram 3 : S-R Flip-flop

21
J-K Flip-flop
•  J-K flip-flop also has 2 inputs, J and K. The function of clock is same
as S‑R flip‑flop. Unlike S‑R flip‑flop, J‑K flip‑flop allows all
combination of inputs.
• It can be observed that J‑K flip-flop is built to address the input
problem of S = R = 1 in S‑R flip-flop. Features 1 till 3 are same as S‑R
flip-flop.
• Table 3 shows the features of J‑K flip‑flop. J K Qn Qn+1
From the table, it can be summarized that: 0 0 0 0
1. If J = 0 and K = 0, it will maintain the 1
0 0 1 1
flip‑flop condition like before
0 1 0 0
2. If J = 0 and K = 1, it will cause flip‑flop 2
0 1 1 0
to change to condition 0 (reset).
3. If J = 1 and K = 0, it will cause flip‑flop 1 0 0 1
3
to change to condition 1 (set). 1 0 1 1
4. If J = 1 and K = 1, it will change the 1 1 0 1
4
flip‑flop condition, that is it will 1 1 1 0
become complementary to the initial or Table 3: Features table of J-K flip-flop
prior condition 22
The logic circuit for J-K flip-flop is shown in Diagram 4 below.

J
Q

Clock

Q
K

Diagram 4: J-K Flip-flop

23
D Flip‑flop
• Logic circuit for D flip‑flop is shown in
Diagram 5. This flip‑flop only has one D Qn Qn+1
input that is D.
0 0 0
• The clock function is same as S‑R and J-
K flip‑flops. The features of D flip‑flop 0 1 0
can be illustrated by Table 4. 1 0 1
• From the table, it can be seen that this
1 1 1
flip‑flop produces the same output as its
input regardless of the condition of the Table 4 : Feature table of D Flip-
flop
stated flip-flop.
• This feature is very suitable to be used
as memory element and this flip-flop is
mostly used to make registers and
computer memory (RAM)
24
Q
clock

D Q

Diagram 5 : D Flip-flop

25
Examples of Flip-flop (Sequential Circuit) usage
• As priory stated, flip-flop is an example of the
simplest form of sequential circuit. It is also a
form of memory element where a flip-flop can
store 1 bit of data. In this section, examples of
sequential circuits that use flip-flop will be
given:
1. Register
2. Adder

26
Register
• Register is an important component in the computer. Generally,
it can be categorized into:
1. Storage Register (or Parallel Register)
2. Shift Register (or Serial Register)
• Parallel register is made up of a set of 1-bit (flip-flop) that can be
written on and read simultaneously.
• This register is used to store data (output=input). The amount of
flip-flop used depends on the size of the register that is to be built.
• If a parallel register that can store 8 bits of data is to be built, then
8 flip-flops are needed.
• Diagram 6 below is a 4 bit parallel register that uses flip-flop D.
(Note: all kinds of flip-flop can be used to build storage register, but its circuit
will differ because every flip-flop has its own features)

27
• Diagram 6 below is a 4 bit parallel register that uses flip-flop D.
(Note: all kinds of flip-flop can be used to build storage register, but its circuit will
differ because every flip-flop has its own features)

I1 I2 I3 I4

D Q D Q D Q D Q
_ _ _ _
Clock Q Clock Q Clock Q Clock Q

Clock
Pulse
Q1 Q2 Q3 Q4

Diagram 6: A 4-bit parallel register that uses D Flip-flop

• In the above diagram, 4 bits of input is admitted simultaneously, that


is I1, I2, I3 and I4, whereas its output is also is simultaneous or parallel,
that is Q1, Q2, Q3 and Q4.
28
• In shift register, only one output is produced at a time.
• There are 2 types of shift register that is shift to right and
shift to left.
• Shift to right register means the rightmost bit of the stated
will be taken out first followed by the following bits after a
given clock beat.
• It’s vice versa for move to shift to left register. Diagram 7
below is an example of 4-bit shift to right register that
utilizes J-K flip-flop.
Input J Q J Q J Q J Q Output

Clock Clock Clock Clock


_ _ _ _
K K Q K Q K Q
Q
Clock
Pulse
Diagram 7: Shift to Right Register Using J-K Flip-flop
29
Parallel Adder

• In the computer environment, there are 2 types of adders:


1.  Parallel Adder
2.  Serial Adder
• Parallel adder is an adder that performs addition concurrently
for each bit involved.
• Adder in section 4.2 is called a serial adder.
• Serial Adder performs addition bit by bit starting with the
rightmost bit, followed by the following bits.
• Diagram 8 below is an example of a serial 4-bit adder.
• This adder uses two Shift to Right Registers, X and Y to hold
operand 1 (A = A3A2AIA0) and operand 2 (B = B3B2B1B0), a
full adder and a flip‑flop (usually D flip-flop) to hold the
carrier value.
30
• The addition process in the adder are as below :
 X = X + Y
  that is the X and Y registers will hold operand 1 and operand 2 and the addition result
will be kept in the X register.
• Hence, in the addition, the value in the Y (Operand 2) register cannot change while
the X register holds the addition result (the value of operand 1 will be lost)
 

Note: observe and understand the data movement in the stated circuit after every
clock pulse is given.
X Register
Ai Si
A3 A2 A1 A0

Full
Adder
Bi
B3 B2 B1 B0 Ci+1
Ci
Y Register
Diagram 8 : 4-bit Serial Adder

D flip-flop
Carry

Clock Pulse
31

You might also like