CSC116 · TU past paper
Digital Logic 2075 question paper
The complete TU 2075 exam paper for Digital Logic (CSC116), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksNumericalDecoders and EncodersHideAnswer
Implement the following function F using:a. Decoderb. Multiplexerc. PLA[4+2+2+2]
Implementation of Function F Using Decoder, Multiplexer, and PLA
STEP 1 - EXTRACT: Given Data
The problem statement says: "Implement the following function F using: a. Decoder, b. Multiplexer, c. PLA [4+2+2+2]"
The actual Boolean function F is NOT provided in the question text. No minterm list, no algebraic expression, no truth table, and no LaTeX array is included. The phrase "the following function F" refers to an expression that was not transcribed into this prompt.
Missing data: The definition of function F (its minterms/expression and the number of variables) is entirely missing. Without it, no specific circuit can be correctly designed.
Also note the mark split is
[4+2+2+2] = 10, which totals four parts, but only three sub-parts (a, b, c) are listed. This suggests an additional part or a typo in the original paper.STEP 2 - SOLVE (General Method, since F is missing)
Because the specific function is missing, what follows is the correct general procedure that applies to any $F$ once it is known. Assuming a particular function such as $F(A,B,C)=\sum m(1,2,4,7)$ would not be supported by the given data.
(a) Decoder Implementation [4 marks]
For an $n$-variable function, use an $n$-to-$2^n$ decoder.
- A decoder generates every minterm $m_i$ on a separate output line.
- For active-HIGH outputs: OR together the outputs corresponding to the minterms where $F=1$.
- For active-LOW outputs: use a NAND gate on those lines.
$$F = \sum m(\text{minterms of }F) = \sum_i D_i \quad \text{for } i \in {\text{minterms}}$$
General diagram:
n-to-2^n Decoder +--------------+ inputs>| |--- D0 ...>| |--- D1 | |--- ... --> OR selected Di --> F | |--- D(2^n -1) +--------------+(b) Multiplexer Implementation [2 marks]
Two standard approaches:
-
Full MUX method: Use a $2^n$-to-1 MUX. Apply the $n$ variables to select lines. Tie each data input $I_i = 1$ if minterm $i \in F$, else $I_i = 0$.
-
Reduced MUX method (common in TU exams): Use a $2^{n-1}$-to-1 MUX with $(n-1)$ variables on select lines. Each data input becomes one of ${0, 1, x, x'}$ obtained from an implementation table pairing minterms.
(c) PLA Implementation [2 marks]
- Simplify $F$ (and if given, $F'$) using a K-map to obtain minimal product terms.
- Program the AND plane to generate each product term.
- Program the OR plane to sum the required product terms for the output.
- Present a PLA programming table:
Product term Input connections (AND plane) Output (OR plane) $P_1$ ... F $P_2$ ... F Conclusion
The specific function F required to produce numeric truth tables, minterm selections, MUX input values and a PLA table is not present in the supplied question. Any specific numeric result, for example one based on $F(A,B,C)=\sum m(1,2,4,7)$, would rest on an assumed function rather than on the given data.
- 24 marksNumericalDesign with state equations and state reduHideAnswer
Design clocked sequential circuit of the following state diagram by using JK flip-flop.[4]
The problem asks to design a clocked sequential circuit from a state diagram using JK flip-flops. Critical issue: The actual state diagram is not provided in the question. The diagram (states, transitions, inputs, outputs) is essential t...
- 34 marksNumericalProgrammable Array LogicHideAnswer
PAL Programming Table for 3-Input, 4-Output Combinational Circuit
X Y Z A B C D --------------------- 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 Minterms (output = 1): - $A$: 1, 2, 4, 6 - $B$: 0, 1, 3, 6, 7 - $C$: 1, 2, 4, 6, 7 - $D$:...
- 45 marksNumericalNumber base conversionHideAnswer
Convert the following decimal numbers to the indicated bases. a) 7562.45 to octal b) 1938.257 to hexadecimal c) 175.175 to binary [2+1.5+1.5]
- a) $7562.45{10}$ to octal (base 8) - b) $1938.257{10}$ to hexadecimal (base 16) - c) $175.175{10}$ to binary (base 2) --- Division Quotient Remainder ------------------------------- $7562 \div 8$ 945 2 (LSB) $945 \div 8$ 118 1
- 55 marksNumericalBoolean FunctionsHideAnswer
Express the Boolean function F = A+B'C in a sum of minterms. [5]
- Boolean function: $F = A + B'C$ - Variables: $A, B, C$ (3 variables, so $2^3 = 8$ possible minterms) --- $$A = A(B+B')(C+C') = (AB + AB')(C+C')$$ $$= ABC + ABC' + AB'C + AB'C'$$ $$B'C = B'C(A+A') = AB'C + A'B'C$$ $$F = ABC + ABC' + AB'...
- 65 marksNumericalK-mapHideAnswer
Reduce the following function using k-map. F=B'D+A'BC'+AB'C+ABC' [5]
Function of 4 variables A, B, C, D: $$F = B'D + A'BC' + AB'C + ABC'$$ Order: A B C D. B'D (B=0, D=1; A,C free): - 0001 = m1, 0011 = m3, 1001 = m9, 1011 = m11 A'BC' (A=0, B=1, C=0; D free): - 0100 = m4, 0101 = m5 AB'C (A=1, B=0, C=1; D fr...
- 75 marksNumericalDesign ProcedureHideAnswer
Design a combinational circuit with three inputs, x, y and z, and three outputs, A, B and C. When the binary input is 0,1,2, or 3, the binary output is one greater than the input. When the binary input is 4,5,6 or 7, the binary output is one less than the input. [5]
- Inputs: $x, y, z$ (3-bit, $x$ = MSB), range 0 to 7 - Outputs: $A, B, C$ ($A$ = MSB) - Rule: - Input in ${0,1,2,3}$ → output = input + 1 - Input in ${4,5,6,7}$ → output = input − 1 Dec x y z Out(dec) A B C --------------------------...
- 85 marksDecoders and EncodersHideAnswer
Implement half adder using 2-4 decoders. [5]
A half adder has two inputs (A, B) and two outputs (Sum, Carry). Truth Table: A B Sum (S) Carry (C) -------------------------- 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Boolean Expressions (Sum of Minterms): $$S = A \oplus B = A'B + AB' = \sum m(1...
- 95 marksDecoders and EncodersHideAnswer
Design the priority encoder circuit. [5]
A priority encoder is a combinational circuit that accepts multiple inputs and generates a binary code corresponding to the highest priority active input. If two or more inputs are active simultaneously, the input with the highest priori...
- 105 marksShift registersHideAnswer
What is the difference between a serial and parallel transfer? Explain how to convert serial data to parallel and parallel data to serial. What type of register is needed? [5]
Serial vs Parallel Transfer, and Serial-Parallel Conversion
1. Difference Between Serial and Parallel Transfer
Feature Serial Transfer Parallel Transfer Data movement One bit per clock pulse, in sequence All bits transferred simultaneously in a single clock pulse Speed Slower (n clock pulses for n bits) Faster (only 1 clock pulse needed) Wires/Lines required Fewer (single data line) More (one line per bit) Hardware complexity Simpler connections More complex wiring From notes (ctx6): "In case of serial operation, digits are put in sequence, one digit for each clock pulse, whereas in case of parallel operation all digits get shifted simultaneously during a single clock pulse."
2. Type of Register Needed
A Shift Register is required for both conversions. Specifically:
- Serial to Parallel: A Serial In Parallel Out (SIPO) shift register is used.
- Parallel to Serial: A Parallel In Serial Out (PISO) shift register is used.
3. Serial to Parallel Conversion (Using SIPO Register)
A SIPO (Serial In, Parallel Out) register accepts data one bit at a time through a single serial input line and makes all bits available simultaneously at the output.
Working:
- Data bits are shifted in one bit per clock pulse through the serial input (D-input of the first flip-flop).
- Each flip-flop passes its stored bit to the next on each clock pulse.
- After n clock pulses (for an n-bit register), all n bits are stored and available simultaneously at the parallel outputs Q1, Q2, ... Qn.
Example (4-bit SIPO):
Suppose serial input is: 1 0 1 1 (MSB first)
Clock Pulse Serial Input Q3 Q2 Q1 Q0 Initial - 0 0 0 0 1 1 1 0 0 0 2 0 0 1 0 0 3 1 1 0 1 0 4 1 1 1 0 1 After 4 clock pulses, parallel output = 1 0 1 1 (available all at once).
4. Parallel to Serial Conversion (Using PISO Register)
A PISO (Parallel In, Serial Out) register accepts all data bits simultaneously through parallel input lines and outputs them one bit at a time through a single serial output line.
Working:
- A parallel load control signal is applied, loading all n bits into the register simultaneously in one clock pulse.
- Then, on each subsequent clock pulse, bits are shifted out one by one through the serial output (from the last flip-flop).
- After n clock pulses, all bits have been transmitted serially.
Example (4-bit PISO):
Suppose parallel input loaded = 1 0 1 1
Clock Pulse Operation Serial Output 0 Parallel Load: 1 0 1 1 - 1 Shift right 1 2 Shift right 1 3 Shift right 0 4 Shift right 1 Serial output sequence: 1, 1, 0, 1 (LSB first in this case).
Summary
Conversion Register Used Clock Pulses Needed Serial → Parallel SIPO n pulses to fill, then read all at once Parallel → Serial PISO 1 pulse to load, n pulses to shift out From notes (ctx1): "In SIPO the data is stored serially but output is transferred in parallel. In PISO the data inputs are provided in parallel form and the output is transferred in serial sequence."
- 115 marksRipple CountersHideAnswer
Design a 4-bit binary ripple counter with D flip-flops. [5]
A binary ripple counter is a series connection of complementing flip-flops where the output of each flip-flop is connected to the clock input of the next higher-order flip-flop. The LSB flip-flop receives the incoming count pulses. Since...
- 125 marksExclusive-OR CircuitsHideAnswer
Write short notes on (any two): a. SIMM b.RTL c.Parity Checker [5]
--- SIMM stands for Single Inline Memory Module. It is a type of memory module used to add RAM (Random Access Memory) to a computer system. Key Points: - A SIMM is a small circuit board that holds several RAM chips and connects to the mo...