DPSD QB R19
DPSD QB R19
DPSD QB R19
REGULATION – 2019
QUESTION BANK
Prepared By Approved By
HOD
Mrs. B.SANDHIYA
Mrs. S. GNANAPRIYA
1 | Page
UNIT I - BOOLEAN ALGEBRA AND LOGIC GATES
PART A – 2 MARKS
Binary logic consists of binary variables and logical operations. The variables are
designated by the alphabets such as A, B, C, x, y, z, etc., with each variable having only two
distinct values: 1 and 0.
5. Which gates are called as the universal gates? What are its advantages?
The NAND and NOR gates are called as the universal gates. These gates are used to
perform any type of logic application.
x Parenthesis
x AND
x OR
xRadix Complement
2 | Page
x Diminished Radix Complement
The map method provides a simple straightforward procedure for minimizing Boolean
function.
Two variable map have four minterms for two variables, hence the map consists of four
squares, one for each minterm.
The dual of any Boolean function can be obtained by changing each OR sign to an AND
sign and vice versa and complementing any 0 or 1 appearing in the expression.
Parity checker is required at the receiver side to check whether the expected parity is
equal to the calculated parity or not. If they are not equal then it is found that the received data
has error.
Parity bit is an extra bit included with a binary message to make the number of 1’seither
odd or even. The message, including the parity bit is transmitted and then checked at the
receiving and for errors.
x By using error detecting codes, errors generated in signal transmission can be detected.
x Codes are used for data compression by which large amounts of data are transmitted in
very short duration of time.
3 | Page
16. Mention the different type of binary
codes? x Binary weighted code
x Binary non - weighted code
x Sequential code
x Alphanumeric code
a. Any large decimal number can be easily converted into corresponding binary number
b. A person needs to remember only the binary equivalents of decimal number from 0 to 9.
a. The code is least efficient. It requires several symbols to represent even small numbers.
A self-complementing code is the one in which the members of the number system
complement on themselves. This requires the following two conditions to be satisfied.
x The complement of the number should be obtained from that number by replacing 1s
with0s and 0s with 1s.
x The sum of the number and its complement should be equal to decimal 9.
x There are 27 =128 possible combinations. Hence, a large number of symbols, alphabets
etc.., can be easily represented.
x There is a definite order in which the alphabets, etc.., are assigned to each code word.
4 | Page
x The parity bits can be added for error-detection and correction.
x The length of the code is larger and hence more bandwidth is required for transmission.
It is highly in convenient to handle long strings of binary numbers while entering into the
digital systems. It may cause errors also. Therefore, octal numbers are used for entering binary
data and displaying certain information.
Logic gates are the basic elements that make up a digital system. The electronic gate is a
circuit that is able to operate on a number of binary inputs in order to perform a particular logical
function.
23. List out the advantages and disadvantages of K-map method?
The advantages of the K-map method are
x K-maps are not suitable when the number of variables involved exceed four.
x Care must be taken to fill in every cell with the relevant entry, such as a 0, 1 (or)
don’t care terms.
24. Obtain truth table and name operation performed for A’B+AB’
PART B – 16 MARKS
1. a. Explain the various types of K-Map with Examples (12
)
b. Prove that x + 1 = 1 (2)
5 | Page
2. a. Simply the Boolean Function Using Three Variable K-Map
6. a. List out the Procedure for converting Binary to Gray Code (4)
Part A – 2 Marks
6 | Page
1. Define Combinational circuit
A combinational circuit consist of logic gates whose outputs at anytime are determined
directly from the present combination of inputs without regard to previous inputs.
x Determine the number of available input variables & required O/P variables. x
Assigning letter symbols to I/O variables
If two systems working with different binary codes are to be synchronized in operation,
then we need digital circuit, which converts one system of codes to the other. The process of
conversion is referred to as code conversion.
It is a circuit that makes the two systems compatible even though each uses a different
binary code. It is a device that converts binary signals from a source code to its output code. One
example is a BCD to Xs3 converter.
x Combinational circuit has a logic gate with no feedback paths or memory elements.
xA feedback path is a connection from the output of one gate to the input of second gate
that forms part of the input to the first gate
9. Design procedure for combinational circuits
Determine the required number of inputs and outputs and assign a symbol to each.
Derive the truth table that defines the required relationship between inputs and outputs.
Obtain the simplified Boolean functions for each output as a function of the input
variables.
Draw the logic diagram and verify the correctness of the design.
The combinational circuit that performs the addition of two bits is called a half-adder.
7 | Page
8. What is a full-adder?
The combinational circuit that performs the addition of three bits is called a full-adder.
9. What is half-subtractor?
The combinational circuit that performs the subtraction of two bits is called a
half-subtractor.
The combinational circuit that performs the subtraction of three bits is called a
half-subtractor.
A binary parallel adder is a digital function that produces the arithmetic sum of two binary
numbers in parallel.
S=X † Y
C=X.Y
In multidigit addition, add two bits along with the carry of previous digit addition.
Effectively such addition requires addition of three bits. This is not possible with half adder.
In multidigit subtraction, subtract two bits along with the borrow of previous digit
subtraction. Effectively such subtraction requires subtraction of three bits. This is not possible
with half subtractor.
The size and complexity of the digital systems increases, they cannot be designed
manually; their design is highly complex. At the most detailed level, they may consists of
millions of elements i.e.) transistor or logic gates. So the computer-aided tools are used to design
the Hardware Description Language.
8 | Page
<module items>
endmodule
f. Operators in Verilog
HDL x Boolean logical
Bitwise logical
Relational
Binary arithmetic
Unary arithmetic
reg variables store the last value that was procedurally assigned to them whereas the wire
variables represent physical connections between structural entities such as gates.
A BCD adder is a circuit that adds two BCD digits in parallel and produces a sum digit
also in BCD.
A decoder is a combinational circuit that converts binary information from ‘n’ input lines
n
to a maximum of 2 unique output lines.
9 | Page
A Demultiplexer is a circuit that receives information on a single line and transmits this
n
information on one of 2 possible output lines.
The function of the enable input in a MUX is to control the operation of the unit.
A priority encoder is an encoder that includes the priority function. The operation of the
priority encoder is such that if two or more inputs are equal to 1 at the same time, the input
having the highest priority will take precedence.
a. Data routing.
c. Control sequencer.
Parallel-to-serial converter.
28. Give the need for using carry look ahead adder (nov/dec 2011)
x Ans: To reduce the carry propagation delay and to reduce the complexity in designing
combimnational circuis
Part B - 16 Marks
1. a. Explain the Design procedure for Combination Logic Circuits (6)
(10)
Design procedure
The design procedure for combinational logic circuits starts with the problem specification
and comprises the following steps:
11 | Page
Half Adder
Half Subtractors
2. a.
Explain Logical Implementation of Full – adder and Full – Subtractor
(6)
12 | Page
Full Adder
Full Subtractor
Full adder can be formed by combining two half adders and an OR gate as shown in
above where output and carry-in of the first adder becomes the input to the second half
adder that produce the total sum output. The total carry out is produced by ORing the
two half adder carry outs as shown in figure. The full adder block diagram and truth
table is shown below.
13 | Page
b. Draw the Logic Diagram for BCD to Excess 3 code Converter with Explain
(6)
Truth Table relating BCD and Excess-3 codes
Decimal BCD inputs Excess-3 Code outputs
B3 B2 B1 B0 E3 E2 E1 E0
0 0 0 0 0 0 0 1 1
1 0 0 0 1 0 1 0 0
2 0 0 1 0 0 1 0 1
3 0 0 1 1 0 1 1 0
4 0 1 0 0 0 1 1 1
5 0 1 0 1 1 0 0 0
6 0 1 1 0 1 0 0 1
7 0 1 1 1 1 0 1 0
8 1 0 0 0 1 0 1 1
9 1 0 0 1 1 1 0 0
Boolean expression for each Excess-3 code bits
E3= m(5, 6, 7, 8, 9)
E2= m(1, 2, 3, 4, 9)
E1= m(0, 3, 4, 6, 7, 8)
E0= m(0, 2, 4, 6, 8)
14 | Page
Karnaugh-Map solution for each output
15 | Page
Realizing code conversion using Logic Gates
16 | Page
c. Explain the Block Diagram of BCD Adder
(10)
17 | Page
(10)
6. a. Explain the Binary to BCD Convertor
(6)
18 | Page
Let us design a 4bit binary to BCD code converter. As the 4 bit can represent 0 to 15, we
can draw the conversion table as follows,
19 | Page
7. a. Explain the excess 3 to BCD Code Converter
(6)
20 | Page
8. a. Explain the Logic Diagram of 3 to 8 line Decoder
(8)
b. How to Construct the 4 x 16 Decoder with two 3 x 8 Decoder
21 | Page
(8)
22 | Page
10. Implement Boolean function using mux
F=sum (1,2,5,6,8,9,10,15,14)
23 | Page
11. Construct 5 to 32 decoder using one 2 to 4decoder and four 3 to 8 decoder (8)
Construct 4 x16 decoder using 2 3x8 decoders with enable input (nov/dec2013)
12.
24 | Page
14.Explain the binary adder/subtractor circuit (April/may 2010)
25 | Page
15.Discuss the carry look ahead adder generation (April/may 2010)
26 | Page
27 | Page
UNIT III
Part A – 2 Marks
Sequential circuit is a broad category of digital circuit whose logic states depend on a
specified time sequence. A sequential circuit consists of a combinational circuit to which
memory elements are connected to form a feedback path.
A Synchronous sequential circuit is a system whose behavior can be defined from the
knowledge of its signal at discrete instants of time.
Synchronous sequential circuit that use clock pulses in the inputs of memory elements are
called clocked sequential circuit. One advantage as that they don’t cause instability problems.
Latch is a simple memory element, which consists of a pair of logic gates with their
inputs and outputs inter connected in a feedback arrangement, which permits a single bit to be
stored.
x SR flip-flop
i Clocked RS flip-flop
ii D flip-flop
iii T flip-flop
iv JK flip-flop
v JK master slave flip-flop
The state of a flip-flop is switched by a momentary change in the input signal. This
momentary change is called a trigger and the transition it causes is said to trigger the flip-flop.
During the design process we usually know the transition from present state to next state
and wish to find the flip-flop input conditions that will cause the required transition. A table
which lists the required inputs for a given chance of state is called an excitation table.
28 | Page
9. Give the excitation table of JK-flip flop?
A counter is used to count pulse and give the output in binary form.
In a synchronous counter, the clock pulse is applied simultaneously to all flip-flops. The
output of the flip-flops change state at the same instant. The speed of operation is high compared
to an asynchronous counter
In an Asynchronous counter, the clock pulse is applied to the first flip-flops. The change
of state in the output of this flip-flop serves as a clock pulse to the next flip-flop and so on. Here
all the flip-flops do not change state at the same instant and hence speed is less.
Asynchronous counter:
1. Speed of operation is high Speed of operation is low.
g. Synchronous counter
29 | Page
h. Asynchronous counter
Up counter
Down counter
Modulo – N counter
Up/Down counter
30 | Page
16. What is up counter?
A counter that increments the output by one binary number each time a clock pulse is
applied.
A counter that decrements the output by one binary number each time a clock pulse is
applied.
A ripple counter is nothing but an asynchronous counter, in which the output of the
flip-flop changes state like a ripple in water.
It is a ring counter in which the inverted output is fed into the input. It is also known as a
twisted ring counter.
The basic unit for storage is flip flop. A flip-flop maintains its output state either at1 or 0
until directed by an input signal to change its state.
23. Give the comparison between combinational circuits and sequential circuits
31 | Page
PART – B
1. a. Write the verilog code generate for paralled load up / down counter (8)
(8)
32 | Page
(8)
SR Flip Flop
There are majorly 4 types of flip-flops, with the most common one being SR flip-flop. This
simple flip-flop circuit has a set input (S) and a reset input (R). In this system, when you
Set “S” as active the output “Q” would be high and “Q‘” will be low. Once the outputs are
established, the wiring of the circuit is maintained until “S” or “R” go high, or power is
turned off. As shown above, it is the simplest and easiest to understand. The two outputs,
as shown above, are the inverse of each other. The truth table of SR Flip-Flop is
highlighted below
S R Q Q’
0 0 0 1
0 1 0 1
1 0 1 0
1 1 ∞ ∞
The change of state of the output is dependent on the rising edge of the
clock. The output (Q) is same as the input and can only change at the risin
edge of the clock.
33 | Page
D Flip-Flop
.Clock D Q Q’
↓»0 0 0 1
↑»1 0 0 1
↓»0 1 0 1
↑»1 1 1 0
JK
Flip-Flop
The input condition of J=K=1, gives an output inverting the
output state. However, the outputs are the same when one tests the
circuit practically.
34 | Page
J K Q Q’
0 0 0 0
0 1 0 0
1 0 0 1
1 1 0 1
0 0 1 1
0 1 1 0
1 0 1 1
1 1 1 0
35 | Page
T
Flip-Flop
These flip-flops are called T flip-flops because of their
ability to complement its state (i.e.) Toggle, hence the
name Toggle flip-flop.
T Q Q (t+1)
0 0 0
1 0 1
0 1 1
1 1 0
36 | Page
The input signals J and K are connected to the gated “master” SR flip
flop which “locks” the input condition while the clock (Clk) input is
“HIGH” at logic level “1”. As the clock input of the “slave” flip flop is the
inverse (complement) of the “master” clock input, the “slave” SR flip flop
does not toggle. The outputs from the “master” flip flop are only “seen”
by the gated “slave” flip flop when the clock input goes “LOW” 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.
Then on the “Low-to-High” transition of the clock pulse the inputs of the
“master” flip flop are fed through to the gated inputs of the “slave” flip
flop and on the “High-to-Low” transition the same inputs are reflected on
the output of the “slave” making this type of flip flop edge or
pulse-triggered.
Then, the circuit accepts input data when the clock signal is “HIGH”, and
passes the data to the output on the falling-edge of the clock signal. In
other words, the Master-Slave JK Flip flop is a “Synchronous” device
as it only passes data with the timing of the clock signal.
In the next tutorial about Sequential Logic Circuits, we will look
at Multivibrators that are used as waveform generators to produce the
clock signals to switch sequential circuits.
37 | Page
(8)
38 | Page
(8)
(8)
8. a. Explain Serial in Serial out Shift Register (8)
(8)
39 | Page
4-bit Serial-in to Serial-out Shift Register
You may think what’s the point of a SISO shift register if the output data is
exactly the same as the input data. Well this type of Shift Register also acts as
a temporary storage device or it can act as a time delay device for the data, with
the amount of time delay being controlled by the number of stages in the
register, 4, 8, 16 etc or by varying the application of the clock pulses.
Commonly available IC’s include the 74HC595 8-bit Serial-in to Serial-out
Shift Register all with 3-state outputs.
40 | Page
(8)
41 | Page
Basic Data Movement Through A Shift Register
Clock Pulse No QA QB QC QD
0 0 0 0 0
1 1 0 0 0
2 0 1 0 0
3 0 0 1 0
4 0 0 0 1
5 0 0 0 0
42 | Page
Note that after the fourth clock pulse has ended the 4-bits of data ( 0-0-0-1 ) are
stored in the register and will remain there provided clocking of the register has
stopped. In practice the input data to the register may consist of various
combinations of logic “1” and “0”. Commonly available SIPO IC’s include the
standard 8-bit 74LS164 or the 74LS594.
43 | Page
in the normal shift-right mode from the register at Q representing the data
present at PA to PD.
This data is outputted one bit at a time on each clock cycle in a serial format. It
is important to note that with this type of data register a clock pulse is not
required to parallel load the register as it is already present, but four clock
pulses are required to unload the data.
As this type of shift register converts parallel data, such as an 8-bit data word
into serial format, it can be used to multiplex many different input lines into a
single serial DATA stream which can be sent directly to a computer or
transmitted over a communications line. Commonly available IC’s include the
74HC166 8-bit Parallel-in/Serial-out Shift Registers.
44 | Page
UNIT IV
Part A – 2 Marks
In asynchronous sequential circuits change in input signals can affect memory element at
any instant of time.
Two or more binary state variables change their value in response to the change in input
variable.
Races can be avoided by making a proper binary assignment to the state variables. Here,
the state variables are assigned with binary numbers in such a way that only one state variable
can change at any one state variable can change at any one time when a state transition occurs.
To accomplish this, it is necessary that states between which transitions occur be given adjacent
assignments. Two binary are said to be adjacent if they differ in only one variable.
12. What are the steps for the design of asynchronous sequential circuit?
-construction of primitive flow table
-reduction of flow table
14. What are the steps for the design of asynchronous sequential circuit?
Primitive flow table is reduced by eliminating redundant states using the state reduction
15. Give the comparison between state Assignment Synchronous circuit and
state assignment asynchronous circuit.
In synchronous circuit, the state assignments are made with the objective of circuit
reduction. In asynchronous circuits, the objective of state assignment is to avoid critical races.
When 2 or more binary state variables change their value in response to a change in an
input variable, race condition occurs in an asynchronous sequential circuit. In case of unequal
delays, a race condition may cause the state variables to change in an unpredictable manner.
If the final stable state that the circuit reaches does not depend on the order in which the
state variable changes, the race condition is not harmful and it is called a non critical race.
46 | Page
If the final stable state depends on the order in which the state variable changes, the race
condition is harmful and it is called a critical race.
In asynchronous sequential circuit state table is known as flow table because of the
behavior of the asynchronous sequential circuit. The stage changes occur in independent of a
clock, based on the logic propagation delay, and cause the states to flow from one to another.
The merger graph is defined as follows. It contains the same number of vertices as the
state table contains states. A line drawn between the two state vertices indicates each compatible
state pair. It two states are incompatible no connecting line is drawn.
A transition from one stable state to another occurs only in response to a change in the
input state. After a change in one input has occurred, no other change in any input occurs until
the circuit enters a stable state. Such a mode of operation is referred to as a fundamental mode.
PART – B
47 | Page
Fig: Three row flow table example
To avoid critical races, we must find a binary state assignment such that only
one binary variable changes during each state transition. An attempt to find such
an assignment is shown in the transition diagram. State a is assigned binary 00,
and state c is assigned binary 11. This assignment will ca use a critical race
during the transition from a to c because there are two changes in the binary
state variables and the transition from a to c may occur directly or pass through
b. Note that the transition from c to a also ca uses a race condition, but it is
noncritical because the transition does not pass through other states.
A race-free assignment can be obtained if we add an extra row to the flow table.
The use of a fourth row does not increase the number of binary state variables,
but it allows the formation of cycles between two stable states.
The transition table corresponding to the flow table with the indicated binary
state assignment is shown in Fig. The two dashes in row d represent unspecified
states that can be considered don't-care conditions. However, care must be taken
48 | Page
not to assign 10 to these squares, in order to avoid the possibility of an
unwanted stable state being established in the fourth row.
A flow table with four rows requires a minimum of two state variables.
Although a race-free assignment is sometimes possible with only two binary
state variables, in many cases the requirement of extra rows to avoid critical
races will dictate the use of three binary state variables
The following figure shows a state assignment map that is suitable for any
four-row flow table. States a, b, c and d are the original states and e, f and g are
extra states. The transition from a to d must be directed through the extra state e
to produce a cycle so that only one binary variable changes at a time. Similarly,
the transition from c to a is directed through g and the transition from d to c
goes through f. By using the assignment given by the map, the four-row table
can be expanded to a seven-row table that is free of critical races.
49 | Page
Fig: Choosing extra rows for the flow table
Note that although the flow table has seven rows there are only four stable
states. The uncircled states in the three extra rows are there merely to provide a
race-free transition between the stable states.
50 | Page
There are two binary state variables for each stable state, each variable being
the logical complement of the other. For example, the original state a is
replaced with two equivalent states a1 =000 and a2 = 111. The output values,
not shown here must be the same in a1 and a2. Note that a1 is adjacent to
b1, c2 and d1, and a2is adjacent to c1, b2 and d2, and similarly each state is
adjacent to three states with different letter designations.
The expanded table is formed by replacing each row of the original table with
two rows. In the multiple-row assignment, the change from one stable state 10
another will always cause a change of only one binary state variable. Each
stable stale has two binary assignments with exactly the same output.
2.
Hazards In Combinational Circuits
51 | Page
Fig: Circuits with Hazards
Assume that all three inputs are initially equal to 1. This causes the output of
gate 1 10 be 1, that of gate 2 to be 0 and that of the circuit to be 1. Now
consider a change in x 2 from 1 to 0. Then the output of gate 1 changes to 0 and
that of gate 2 changes to 1, leaving the output at 1. However, the output may
momentarily go to 0 if the propagation delay through the inverter is taken into
consideration. The delay in the inverter may cause the output of gate 1 to
change to 0 before the output of gale 2 changes to 1.
The two circuits shown in Fig implement the Boolean function in
sum-of-products form:
then the output may momentarily go to 1 when it should remain 0. The first
case is referred to as static 1-hazard and the second case as static 0-hazard.
A third type of hazard, known as dynamic hazard, causes the output to change
three or more times when it should change from 1 to 0 or from 0 to 1.
52 | Page
Fig: Types of hazards
The change in x2 from 1 to 0 moves the circuit from minterm 111 to minterm
101. The hazard exists because the change in input results in a different product
term covering the two minterm.
53 | Page
Fig: Hazard free circuit
54 | Page
Fig: Hazard in an Asynchronous sequential circuit
If the circuit is in total stable state yx1x2 =111 and input x2 changes from I to 0,
the next total stable state should be 110. However, because of the hazard, output
Y may go to 0 momentarily. If this false signal feeds back into gate 2 before the
output of the inverter goes to 1, the output of gate 2 will remain at 0 and the
circuit will switch to the incorrect total stable state 010. This malfunction can
be eliminated by adding an extra gate.
✔ Essential Hazards
3.
Hazards in Sequential Circuits
If the circuit is in total stable state yx1x2 =111 and input x2 changes from I to 0,
the next total stable state should be 110. However, because of the hazard, output
Y may go to 0 momentarily. If this false signal feeds back into gate 2 before the
output of the inverter goes to 1, the output of gate 2 will remain at 0 and the
circuit will switch to the incorrect total stable state 010. This malfunction can
be eliminated by adding an extra gate.
Explain the analysis and design procedures of synchronous sequential circuits. (8)
56 | Page
4.
5.
57 | Page
With necessary example and diagram explain the concept of reduction of state and flow
6.
tables.
The procedure for reducing the number of internal states in an asynchronous sequential
circuit resembles the procedure that is used for synchronous circuits.
The state-reduction procedure for completely specified state tables is based on an algorithm
that combines two slates in a slate table into one as long as they can be shown to be
equivalent. Two states are equivalent if, for each possible input, they give exactly the same
output and go to the same next states or to equivalent next states.
58 | Page
Consider for example the state table shown in above table. The present states a and b have
the same output for the same input. Their next states are c and d for x = 0 and b and a for x =
1. If we can show that the pair of states (c, d) are equivalent, then the pair of states (a , b) will
also be equivalent, because they will have the same or equivalent next states. When this
relationship exists, we say that (a. b) imply (c, d) in the sense that if a and b are equivalent
then r and d have to be equivalent. Similarly, from the last two rows of above table, we find
that the pair of stales (c, d) implies the pair of states (a, b). The characteristic of equivalent
states is that if (a, b) imply (c, d) and (c, d) imply (a, b), then both pairs of states are
equivalent that is, a and b are equivalent, and so are c and d. As a consequence, the four rows
of table can be reduced to two rows by combining a and b into one state and c and d into a
second state.
The implication table is shown in Fig. On the left side along the vertical are listed all the
states defined in the state table except the first and across the bottom horizontally are listed
all the states except the last. The result is a display of all possible combinations of two stares
with a square placed in the intersection of a row and a column where the two states can be
tested for equivalence. Two states having different outputs for the same input are not
equivalent.
59 | Page
Two states that are not equivalent are marked with a cross [X] in the corresponding square
whereas their equivalence is recorded with a check mark(‘Dik’). Some of the squares have
entries of implied states that must be investigated further to determine whether they are
equivalent. Thus table can be reduced from seven states to four one for each member of the
preceding partition. The reduced state table is obtained by replacing state b by a and states e
and g by d and it is shown below,
Incompletely specified states can be combined to reduce the number of state in the flow
table. Such stares cannot be called equivalent because the formal definition of equivalence
requires that all outputs and next states be specified for all inputs. Instead, two incompletely
specified states that can be combined are said to be Compatible. The process that must be
applied in order to find a suitable group of compatibles for the purpose of merging a flow
table can be divided into three steps:
Compatible Pairs-The entries in each square of primitive flow table represent the next
stateand output The dashes represent the unspecified states or outputs. The implication
table is used to fmd compatible states just as it is used to find equivalent stales in the
60 | Page
completely specified case. The only difference is that, when comparing rows, we are at
liberty to adjust the dashes to fit any desired condition.
Maximal Compatibles
The maximal compatible is a group of compatibles that contains all the possible
combinations of compatible states. The maximal compatible can be obtained from a merger
diagram. The merger diagram is a graph in which each state is represented by a dot placed
along the circumference of a circle. Lines 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.
An isolated dot represents a state that is not compatible with any other state. A line
represents a compatible pair. A triangle constitutes a compatible with three states.
61 | Page
The maximal compatibles of fig (b) are
Closed-Covering Condition
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.
Example:
UNIT V
Part A – 2 Marks
2 Explain ROM
A read only memory (ROM) is a device that includes both the decoder and the OR
gates within a single IC package. It consists of n input lines and m output lines. Each bit
combination of the input variables is called an address. Each bit combination that comes out
of the output lines is called a word. The number of distinct addresses possible with n input
variables is 2n.
62 | Page
In a ROM, each bit combination of the input variable is called on address. Each bit
combination that comes out of the output lines is called a word.
In some cases the number of don’t care conditions is excessive, it is more economical
to use a second type of LSI component called a PLA. A PLA is similar to a ROM in concept;
however it does not provide full decoding of the variables and does not generates all the
minterms as in the ROM.
12. What is memory and draw the block diagram of memory cell. Refer note
13. What is the difference between programmable array logic (PAL) and programmable
logic array (PLA) refer note
x Masked ROM.
14. How error is detected and corrected in digital system . refer note
Part B
63 | Page
SRA
Types of DRAM
There are mainly 5 types of DRAM:
1. Asynchronous DRAM (ADRAM): The DRAM described above is the asynchronous
type DRAM. The timing of the memory device is controlled asynchronously. A
specialized memory controller circuit generates the necessary control signals to
control the timing. The CPU must take into account the delay in the response of the
memory.
2. Synchronous DRAM (SDRAM): These RAM chips’ access speed is directly
synchronized with the CPU’s clock. For this, the memory chips remain ready for
operation when the CPU expects them to be ready. These memories operate at the
CPU-memory bus without imposing wait states. SDRAM is commercially available
as modules incorporating multiple SDRAM chips and forming the required capacity
for the modules.
3. Double-Data-Rate SDRAM (DDR SDRAM): This faster version of SDRAM
performs its operations on both edges of the clock signal; whereas a standard SDRAM
performs its operations on the rising edge of the clock signal. Since they transfer data
on both edges of the clock, the data transfer rate is doubled. To access the data at high
rate, the memory cells are organized into two groups. Each group is accessed
separately.
4. Rambus DRAM (RDRAM): The RDRAM provides a very high data transfer rate over
a narrow CPU-memory bus. It uses various speedup mechanisms, like synchronous
memory interface, caching inside the DRAM chips and very fast signal timing. The
Rambus data bus width is 8 or 9 bits.
5. Cache DRAM (CDRAM): This memory is a special type DRAM memory with an
on-chip cache memory (SRAM) that acts as a high-speed buffer for the main DRAM.
Difference between SRAM and DRAM
64 | Page
Below table lists some of the differences between SRAM and DRAM:
18. Discuss the operation of memory decoding and elaborate its application as address
multiplexing and coincident decoding circuits
MEMORY DECODING
In addition to requiring storage components in a memory unit, there is a need for decoding
circuits to select the memory word specified by the input address.
The storage part of the cell is modeled by an SR latch with associated gate s to form a D
latch. Actually, the cell is an electronic circuit with four to six transistors. The select input
enables the cell for reading or writing and the read/write input determines the operation of
the cell when it is selected. A 1 in the read/write input provides the read operation by
65 | Page
fanning a path from the latch to the output terminal. A 0 in the read/write input provides the
write operation by forming a path from the input terminal to the latch.
The logical construction of a small RAM consists of four words of four bits each and bas
a×total of 16 binary cells. The small blocks labeled BC represent the binary cell with its three
inputs and one output. A memory with four words needs two address lines. The two address
inputs go through a 2 4 decoder to select one of the four words. The decoder is enabled with
the memory-enable input.
When the memory enable is 0, all outputs of the decoder are 0 and none of the memory
words are selected. With the memory select at 1, one of the four words is selected, dictated
by the value in the two address lines.
Once a word has been selected, the read/write input determines the operation. During the
read operation the four bits of the selected word go through OR gates to the output terminals.
During the write operation, the data available in the input lines arc transferred into the four
binary cells of the selected word. The binary cells that are not selected are disabled and their
previous binary values remain unchanged.
When the memory select input that goes into the decoder is equal to 0 none of the words are
selected and the contents of all cells remain unchanged regardless of the value of the
read/write input.
66 | Page
Coincident Decoding
A decoder with k inputs and 2k outputs requires 2k AND gates with k inputs per gate. The
total number of gates and the number of inputs per gate can be reduced by employing two
decoders in a two - dimensional selection scheme.
input decoders are used instead of one k-input decoder. One decoder performs the row
selection and the other the column selection in a two-dimensional matrix configuration.
For example, instead of using a single 10 x 1,024 decoder, we use two 5 x 32 decoders.
With the single decoder, we would need 1,024 AND gates with 10 inputs in each. The five
67 | Page
most significant bits of the address go to input X and the five least significant bits go to
input Y. Each word within the memory array is selected by the coincidence of one X line
and one Y line. Thus each word in memory is selected by the coincidence between 1 of 32
rows and 1 of 32 columns, for a total of 1,024 words.
Address Multiplexing
Because of large capacity, the address decoding of DRAM is arranged in a two dimensional
array and larger memories often have multiple arrays. To reduce the number of pins in the
IC package, designers utilize address multiplexing whereby one set of address input pins
accommodates the address components.
In a two-dimensional array, the address is applied in two parts at different times, with the
row address first and the column address second. Since the same set of pins is used for both
parts of the address, the size of the package is decreased significantly.
The memory consists of a two-dimensional array of cells arranged into 256 rows by
256 columns, for a total of 28 x 28 = 216 = 64K words. There is a single data input line;
a single data output line, and a read/write control as well as an eight-bit address input
and two address strobes, the latter included for-enabling the row and column address
into their respective registers. The row address strobe (RAS) enables the eight-bit row
register and the column address strobe (CAS) enables the eight-bit column register. The
bar on top of the name of the strobe symbol indicates that the registers are enabled on
the zero level of the signal.
(6)
4. a. Comparison between PROM, PLA and PAL
(10
Three Fundamental Types of PLDs: )
68 | Page
The three fundamental types of PLDs differ in the placement of programmable
connections in the AND-OR arrays. Figure shows the locations of the
programmable connections for the three types.
The PROM (Programmable Read Only Memory) has a fixed AND array
(constructed as a decoder) and programmable connections for the output OR
gates array. The PROM implements Boolean functions in sum-of-min terms
form.
The PAL (Programmable Array Logic) device has a programmable AND array
and fixed connections for the OR array.
The PLA (Programmable Logic Array) has programmable connections for both
AND and OR arrays. So it is the most flexible type of PLD.
The ROM (Read Only Memory) or PROM (Programmable Read Only Memory):
The input lines to the AND array are hard-wired and the output lines to the OR
array are programmable.
Each AND gate generates one of the possible AD products (.e., i minterms).
In the previous lesson, you have learnt how to implement a digital circuit using
ROM.
69 | Page
Each of the AND gates can be programmed to generate a product term of the
input variables and does not generate all the minterms as in the ROM.
The AND and OR gates inside the PLA are initially fabricated with the links
(fuses) among them.
b. Realise the function gives using a PLA with 6 Input, 4 Outputs and 10
AND gates
F1(A,B,C,D,E,F) = ∑(0,1,7,8,9,10,11,15,19,23,27,31,32,33,35,39,40,41,47,63)
70 | Page
PLA and PAL are types of Programmable
Logic Devices (PLD) which are used to design combination logic together with sequential
logic. The significant difference between the PLA and PAL is that the PLA consists of the
programmable array of AND and OR gates while PAL has the programmable array of AND
but a fixed array of OR gate. PLD’s provides a more simple and flexible way of designing
the logic circuits where the number of functions can also be increased. These are also
implemented in IC.
Before PLD’s, multiplexers were used for designing a combinational logic circuit, these
circuits were highly complex and rigid. Then Programmable logic devices (PLD) are
developed, and the first PLD was ROM. ROM design was not very successful as it emerged
the issue of hardware wastage and increasing exponential growth in the hardware for every
large application. To overcome the limitations of ROM, PLA and PAL were devised. PLA
and PAL are programmable and effectively utilizes the hardware.
1.
1. Comparison Chart
2. Definition
3. Key Differences
4. Conclusion
Comparison Chart
BASIS FOR
PLA PAL
COMPARISON
71 | Page
Stands for Programmable Logic Programmable Array
Array Logic
array of OR gates.
implemented.
Definition of PLA
PLA stands for the Programmable Logic Array which presents the boolean function in the
SOP (Sum of Products) form. The PLA contains NOT, AND and OR gates fabricated on the
chip. It passes every input by a NOT gate which makes each input and its complement
available to every AND gate. The output of each AND gate is given to the each OR gate. At
72 | Page
last, the OR gate output produces chip output. So, this is how suitable connections are made
In PLA the connections to both AND and OR arrays are programmable. PLA is considered
more expensive and complex as compared to the PAL. The two different manufacturing
techniques can be used for PLA to increase the ease of programming. In this technique, each
connection is built through a fuse at every intersection point where the unwanted connections
can be removed by blowing the fuses. The latter technique involves the connection making at
the time of the fabrication process with the help of the proper mask provided for the specific
interconnection pattern.
Definition of PAL
PAL (Programmable Array Logic) is also a PLD (Programmable Logic Device) circuit
which works similar to the PLA. PAL employs the programmable AND gates but fixed OR
gates, unlike PLA. It implements two simple functions where the number of linked AND
gates to each OR gate specifies the maximum number of product terms that can be generated
in a sum-of-products representation of the particular function. While the AND gates are
perpetually connected to the OR gates, which signifies that the produced product term is not
73 | Page
shareable with the output functions.
The main concept behind developing PLD’s is to embed a complex boolean logic into a
single chip. Therefore, eliminating the unreliable wiring, preventing the logic design and
minimizing power consumption.
1. The PLA is PLD, comprised of two levels of programmable logic AND plane and
OR plane. On the other hand, PAL contains only programmable AND plane and
fixed OR plane.
2. When it comes to availability, the PAL is more readily available along with easy
production. In contrast, the PLA is not easily available.
3. The PLA is more flexible than a PAL.
4. PLA is costlier as compared to the PAL.
5. A number of functions provided by PLA are more relatively because it enables the
programming of the OR plane also.
6. PAL works faster while PLA is slower comparatively.
74 | Page
22. Define Memory and discuss the operation & types of RAM and ROM
Memory is the most essential element of a computing system because without it computer
can’t perform simple tasks. Computer memory is of two basic type – Primary memory /
Volatile memory and Secondary memory / non-volatile memory. Random Access Memory
(RAM) is volatile memory and Read Only Memory (ROM) is non-volatile memory.
1. Sequential (or simple) programmable logic device (SPLD) The sequential PLD is
sometimes referred to as a simple PLD to differentiate it from the complex PLD. The SPLD
includes flip flops, in addition to the AND–OR array, within the integrated circuit chip. The
result is a sequential circuit as shown in Fig. 1. A PAL or PLA is modified by including a
number of flip flops connected to form a register. The circuit outputs can be taken from the
OR gates or from the outputs of the flip flops. Fig 1. Sequential Programmable logic device
Additional programmable connections are available to include the flip flop outputs in the
product terms formed with the AND array. The flip flops may be of the D or the JK type. The
configuration mostly used in an SPLD is the combinational PAL together with D flip flops. A
PAL that includes flip flops is referred to as a registered PAL, to signify that the device
contains flip flops in addition to the AND–OR array. Each section of an SPLD is called a
76 | Page
macrocell, which is a circuit that contains a sum of products combinational logic function
and an optional flip flop. Fig. 2 shows the logic of a basic macrocell. The AND–OR array is
the same as in the combinational PAL. The output is driven by an edge triggered D flip flop
connected to a common clock input and changes state on a clock edge. The output of the flip
flop is connected to a three state buffer (or inverter) controlled by an output enable signal
marked in the diagram as OE. The output of the flip flop is fed back into one of the inputs of
the programmable AND gates to provide the present state condition for the sequential circuit.
A typical SPLD has from 8 to 10 macrocells within one IC package. All the flip flops are
connected to the common CLK input, and all three state buffers are controlled by the OE
input. Fig 2. Basic Macrocell
2. Complex programmable logic device (CPLD) The design of a digital system using PLDs
often requires the connection of several devices to produce the complete specification. For
this type of application, it is more economical to use a complex programmable logic device
(CPLD), which is a collection of individual PLDs on a single integrated circuit. A
programmable interconnection structure allows the PLDs to be connected to each other in the
same way that can be done with individual PLDs. Fig. 3 shows the general configuration of a
CPLD. The device consists of multiple PLDs interconnected through a programmable switch
matrix. The input–output (I/O) blocks provide the connections to the IC pins. Each I/O pin is
driven by a three state buffer and can be programmed to act as input or output. The switch
matrix receives inputs from the I/O block and directs them to the individual macrocells.
Similarly, selected outputs from macrocells are sent to the outputs as needed. Each PLD
typically contains from 8 to 16 macrocells, usually fully connected. If a macrocell has unused
product terms, they can be used by other nearby macrocells. In some cases the macrocell flip
flop is programmed to act as a D, JK, or T flip flop. Fig3. General CPLD configuration
3. Field programmable gate array (FPGA) A field programmable gate array (FPGA) is a
VLSI circuit that can be programmed at the user’s location. A typical FPGA consists of an
array of millions of logic blocks, surrounded by programmable input and output blocks and
connected together via programmable interconnections. A typical FPGA logic block consists
of lookup tables, multiplexers, gates, and flip flops. A lookup table is a truth table stored in
an SRAM and provides the combinational circuit functions for the logic block. The
combinational logic section, along with a number of programmable multiplexers, is used to
configure the input equations for the flip flop and the output of the logic block. The program
can be downloaded either from a host computer or from an onboard PROM. The program
remains in SRAM until the FPGA is reprogrammed or the power is turned off. The device
must be reprogrammed every time power is turned on. The ability to reprogram the FPGA
can serve a variety of applications by using different logic implementations in the program.
The design with PLD, CPLD, or FPGA requires extensive computer aided design (CAD)
tools to facilitate the synthesis procedure. Among the tools that are available are schematic
entry packages and hardware description languages (HDLs), such as ABEL, VHDL, and
Verilog Synthesis tools
24. Explain ASIC in detail
Search ASIC's Registers. We provide access to a range of information and products through
our website. Searching ASIC's registers lets you access information on all our available
registers. You can also use NZAU Connect, our app that allows you tosearch across Australia
and New Zealand.
25. Implement following function using PLA (8)
Z1= ab‘d’e+a’b’c’d’e’+bc+de, Z2=a’c’e, Z3=bc+de+c’d’e+bd, Z4=a’c’e+ce us
5x8x4 PLA
26. Implement the two following Boolean function using 8x2 PROM.
(8)
77 | Page
F (x,y,z) = 13,5,6,7
F (x,y,z) = 1,2,3,4
78 | Page