NivaarExam PrepOfficial exam papers ↗

25-Comp-A2 Digital Systems Design · December 2018

Question 2 of 6: PAL Implementation of Two Functions

Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)

Notes on this paper

17-Comp-A2, Digital Systems Design — National Exams, December 2018. Closed-book, 3 hours; six 20-mark questions, FIVE constitute a complete exam (all six answered below as a complete study resource).

Reference texts: Mano & Ciletti, Digital Design, 6th ed. — PAL/PLA implementation, Variable-Entered-Map minimization, synchronous counter design, and memory/interfacing, covering Questions 1–5; Patterson & Hennessy, Computer Organization and Design, 6th ed. — interrupt-driven I/O, covering Question 6.

Question 2: PAL Implementation of Two Functions (20 marks)

Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.

Given. A PAL with six input lines $a,a',b,b',c,c'$, six programmable AND (product-term) columns $P_1$–$P_6$, and two fixed 3-input OR gates producing $F1$ (from $P_1,P_2,P_3$) and $F2$ (from $P_4,P_5,P_6$).

Find. Which fuses to keep intact (dot) on each of the six product-term columns so the OR-plane outputs realize $F1=a'b+ab'+c$ and $F2=a'b'c'+abc'+a'bc$ exactly as given.

Approach. Both expressions are already minimal sum-of-products, so no Boolean simplification is needed — each of the six literal product terms is assigned to one AND column, with a fuse dot kept only on the input lines that literal term actually uses (an unconnected AND input floats to logic 1 and does not constrain the product, which is exactly "don't include this literal").

  1. Assign $F1$'s three terms to columns $P_1$–$P_3$ (first OR gate). $F1=a'b+ab'+c$ has three product terms, one literal pattern each: $$P_1=a'b,\qquad P_2=ab',\qquad P_3=\boxed{c}$$ $P_1$ keeps dots on $a'$ and $b$ only; $P_2$ keeps dots on $a$ and $b'$ only; $P_3$ keeps a single dot on $c$ (a one-literal product term uses only one input line, and the AND gate's other four unconnected inputs float to 1 and drop out of the product).
  2. Assign $F2$'s three terms to columns $P_4$–$P_6$ (second OR gate). $F2=a'b'c'+abc'+a'bc$ has three 3-literal minterm-style terms: $$P_4=a'b'c',\qquad P_5=abc',\qquad P_6=\boxed{a'bc}$$ $P_4$ keeps dots on $a',b',c'$; $P_5$ keeps dots on $a,b,c'$; $P_6$ keeps dots on $a',b,c$ — three dots each, one per literal in the term.
  3. Wire the OR plane (fixed, no programming needed). $P_1,P_2,P_3$ feed the first OR gate, giving $F1=P_1+P_2+P_3=a'b+ab'+c$; $P_4,P_5,P_6$ feed the second OR gate, giving $F2=P_4+P_5+P_6=a'b'c'+abc'+a'bc$ — the OR-plane connections are fixed silicon (not fuse-programmed) on a PAL, so the entire implementation is captured by the eighteen dots above.
P1 P1 P2 P3 P4 P5 P6 a a' b b' c c' & & & & & & OR → F1 OR → F2 F1 F2
Fig. Q2 — PAL fuse map: columns $P_1$-$P_3$ (dots on $a',b$; $a,b'$; $c$) feed the OR gate producing $F1$; columns $P_4$-$P_6$ (dots on $a',b',c'$; $a,b,c'$; $a',b,c$) feed the OR gate producing $F2$. Every AND input line without a dot floats to logic 1 and drops out of that product term.
Final Results — Question 2
ColumnProduct termDotted (kept) fusesFeeds
$P_1$$a'b$$a'$, $b$$F1$
$P_2$$ab'$$a$, $b'$$F1$
$P_3$$c$$c$$F1$
$P_4$$a'b'c'$$a'$, $b'$, $c'$$F2$
$P_5$$abc'$$a$, $b$, $c'$$F2$
$P_6$$a'bc$$a'$, $b$, $c$$F2$