22-Elec-A4 Digital Systems and Computers · December 2014
Question 3 of 6: Four-output minimisation and PLA implementation (12 marks)
Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)
Notes on this paper
Paper format. National Exams, December 2014 — 07-Elec-A4,
Digital Systems & Computers. Three hours, closed book
(one approved Casio or Sharp calculator). Six questions, each worth 12 marks;
the rubric states that five questions constitute a complete paper.
A table of Boolean identities and a flip-flop excitation table are supplied with
the paper. All six questions are solved below, because this set is
intended as a study resource rather than a timed attempt.
Reference texts.
M. Morris Mano and M. D. Ciletti, Digital Design, 6th ed. —
Boolean minimisation (Ch. 3), combinational building blocks (Ch. 4),
synchronous sequential logic (Ch. 5), programmable logic (Ch. 7).
J. F. Wakerly, Digital Design: Principles and Practices, 5th ed.
— hazards and glitch-free design (Ch. 3), decoders and multiplexers
(Ch. 6), PLA/PAL architectures (Ch. 6).
C. Hamacher, Z. Vranesic, S. Zaky and N. Manjikian, Computer
Organization and Embedded Systems, 6th ed. — address decoding,
programmed vs. interrupt-driven I/O, parallel-interface handshaking
(Ch. 3 and Ch. 4).
Check: Question 4 figure. The AND-plane and OR-plane wiring of the Q4 circuit is read from the printed figure. The four product terms and the two OR gates are unambiguous, and the upper OR gate clearly drives RA. One detail of the printed figure is genuinely ambiguous: the lower OR gate's output wire runs at almost exactly the same height as
the feedback rails returning from flip-flop B, so it cannot be resolved with
certainty whether it lands on RB (the reading used below, which yields a well-formed machine) or on SA. The solution below states the wiring it
assumes explicitly, and Question 4 closes with the alternative reading and its
consequence so that either version can be reproduced.
Question 3: Four-output minimisation and PLA implementation (12 marks)
Check: output naming in the source. Part (a) asks for
"simplified expressions for A, B, C and D", but the truth table printed with the
question labels its inputs A, B, C and its outputs X, Y, Z,
W. The intent is unambiguous — the four outputs are wanted
— so the answer below uses the table's own names, X, Y, Z and W, and treats
"A, B, C and D" as a typographical carry-over from an earlier version of the
question.
Given. A three-input, four-output truth table, reproduced
below exactly as printed in the paper.
Given data — truth table of the combinational circuit
Inputs
Outputs
A
B
C
X
Y
Z
W
0
0
0
0
1
1
1
0
0
1
0
1
1
1
0
1
0
1
0
0
1
0
1
1
0
1
0
1
1
0
0
0
0
0
0
1
0
1
0
1
1
1
1
1
0
1
1
0
1
1
1
1
1
1
0
0
Find. A minimal two-level expression for each of the four
outputs via Karnaugh maps, and a PLA realisation of all four together.
Approach. Read each output column off the table as a minterm
list, minimise it on its own three-variable map, and then — because a PLA
shares one AND plane across all outputs — count the distinct
product terms across the four expressions to size the array.
(a) Minimisation by K-map (6 marks)
Extract the four ON-sets. Reading each output column down
the table and recording the row indices where it is 1:
$$X = \sum m(2,6,7) \qquad Y = \sum m(0,1,3,5,6,7)$$
$$Z = \sum m(0,1,5) \qquad W = \sum m(0,1,2,3,5,6)$$
Each column is now mapped and looped independently.
K-map for output X.
K-map for output Y. The four-cell loop spanning C = 1 reduces to the single literal C.
K-map for output Z.
K-map for output W. The whole A = 0 row loops to the single literal A'.
Read the loops off the four maps. Each loop of $2^k$ cells
eliminates k variables, giving
$$X = \boxed{AB + B\overline{C}} \qquad
Y = \boxed{\overline{A}\,\overline{B} + AB + C}$$
$$Z = \boxed{\overline{A}\,\overline{B} + \overline{B}C} \qquad
W = \boxed{\overline{A} + \overline{B}C + B\overline{C}}$$
Note the four-cell loop in Y covering all of column $C = 1$, which
reduces to the single literal C, and the four-cell loop in W
covering the whole $A = 0$ row, which reduces to $\overline{A}$.
Confirm against the table. Each expression was evaluated at
all eight input combinations and matched to its column; for example
$W$ at $ABC = 111$ gives $\overline{A} = 0$, $\overline{B}C = 0$ and
$B\overline{C} = 0$, so $W = 0$, agreeing with the last row.
(b) PLA implementation (6 marks)
Collect the distinct product terms. The four minimal
expressions between them name ten product-term instances, but several
terms appear in more than one output. Listing them without repetition:
$$\overline{A},\quad \overline{A}\,\overline{B},\quad AB,\quad
B\overline{C},\quad \overline{B}C,\quad C$$
which is $\boxed{6\text{ distinct product terms}}$.
Quantify the sharing. Four of the six terms are used
twice — $\overline{A}\,\overline{B}$ by Y and Z, $AB$ by
X and Y, $B\overline{C}$ by X and W, and
$\overline{B}C$ by Z and W. The array therefore serves
$$10 \text{ term instances with } 6 \text{ AND rows} \;\Rightarrow\;
\boxed{4 \text{ rows saved}}$$
Size the array. The PLA needs three inputs (each available
true and complemented), six product rows and four outputs:
$$\boxed{3 \times 6 \times 4 \text{ PLA}}$$
The programming map below shows which literals enter each product (AND plane)
and which products are summed into each output (OR plane).
PLA programming map. Six product rows serve ten term instances because four terms are shared between two outputs each.
This heavy sharing is exactly the case a PLA is designed for. In a PAL, the
OR plane is fixed and each output owns a private group of AND rows, so the same
design would need all ten product terms — the four shared terms would have
to be duplicated. The PLA's programmable OR plane lets one physical AND row drive
two outputs, so the sharing translates directly into a 40 % smaller array.
Where a design shows little or no sharing the argument reverses and the simpler,
faster PAL is preferred.
Question 3 — final results
Quantity
Result
$X$
$AB + B\overline{C}$
$Y$
$\overline{A}\,\overline{B} + AB + C$
$Z$
$\overline{A}\,\overline{B} + \overline{B}C$
$W$
$\overline{A} + \overline{B}C + B\overline{C}$
Product-term instances
10
Distinct product terms
6
Shared terms
$\overline{A}\,\overline{B}$, $AB$, $B\overline{C}$, $\overline{B}C$ (each used twice)