BIT103 · TU past paper
Digital Logic 2081.2 question paper
The complete TU 2081.2 exam paper for Digital Logic (BIT103), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksNumericalMinterms and maxterms representationHideAnswer
Express the Boolean Function F=AB+B′CF = AB + B'CF=AB+B′C to sum of max terms with required truth tables.List two uses of sum of max terms.[8+2]
Boolean Function F = AB + B'C: Sum of Maxterms
Step 1 - Given Data
- Boolean function: $F = AB + B'C$
- Variables: $A, B, C$ (3 variables, so $2^3 = 8$ combinations)
- Required: express as product (sum) of maxterms, with truth table; list two uses.
Step 2 - Solve
Truth Table
Row A B C AB B'C F Type 0 0 0 0 0 0 0 M₀ 1 0 0 1 0 1 1 m₁ 2 0 1 0 0 0 0 M₂ 3 0 1 1 0 0 0 M₃ 4 1 0 0 0 0 0 M₄ 5 1 0 1 0 1 1 m₅ 6 1 1 0 1 0 1 m₆ 7 1 1 1 1 0 1 m₇ Check of B'C: when B=0, B'=1, so B'C = C. Rows 1 (C=1) and 5 (C=1) give 1. Rows where AB=1 are 6 and 7. All consistent.
Identifying Maxterms
Maxterms correspond to rows where F = 0: rows 0, 2, 3, 4.
Rule: variable appears uncomplemented if its bit = 0, complemented if its bit = 1.
Row A B C Maxterm Symbol 0 0 0 0 $(A+B+C)$ M₀ 2 0 1 0 $(A+B'+C)$ M₂ 3 0 1 1 $(A+B'+C')$ M₃ 4 1 0 0 $(A'+B+C)$ M₄ Product of Maxterms Form
$$F = \prod M(0, 2, 3, 4)$$
$$\boxed{F = (A+B+C)(A+B'+C)(A+B'+C')(A'+B+C)}$$
Verification
Minterms (F = 1) at rows 1, 5, 6, 7: $$F = \sum m(1,5,6,7)$$ The two sets ${0,2,3,4}$ and ${1,5,6,7}$ are complementary and together cover all 8 rows. Correct.
Two Uses of Sum (Product) of Maxterms
-
OR-AND (two-level) circuit implementation: The POS canonical form maps directly to an OR-AND gate structure, which is economical when there are fewer 0-outputs than 1-outputs.
-
Canonical/standard reference form: It provides a unique standardized representation of a function, useful as a starting point for minimization (K-map, Quine-McCluskey) and for comparing whether two Boolean expressions are equivalent.
- 210 marksRipple counters and synchronous countersHideAnswer
Differentiate between synchronous and asynchronous counter.Explain any one synchronous counter.[3+7]
Feature Synchronous Counter Asynchronous Counter --------- Clock Signal All flip-flops are triggered by the same common clock signal simultaneously Flip-flops are triggered one after another; only the first FF receives the clock directly...
- 310 marksNumericalBCD to excess-3 code converterHideAnswer
Design a combinational circuit that generates 9’s complement of a BCD number.[10]
- Input: a single BCD digit, 4 bits $B3 B2 B1 B0$, valid range decimal 0 to 9. - Output: 4 bits $X3 X2 X1 X0$ representing $9 - N$. - Inputs 10 to 15 are invalid BCD → treated as don't cares (X). Dec $B3B2B1B0$ $9-N$ $X3X2X1X0$ ---------...
- 45 marksNumericalBinary subtraction using complementsHideAnswer
Perform $A - B$ with the given binary numbers using 1’s complement. $A = 1010100$, $B = 1000100$. [5]
A − B Using 1's Complement Method
STEP 1 - EXTRACT (Given data)
- $A = 1010100$
- $B = 1000100$
- Operation: $A - B$ using 1's complement
Decimal check of inputs:
- $A = 1010100_2 = 64+16+4 = 84$
- $B = 1000100_2 = 64+4 = 68$
STEP 2 - SOLVE
Step 1: 1's Complement of B
Invert every bit of $B$:
B = 1000100 1's comp = 0111011Step 2: Add A and 1's complement of B
1010100 + 0111011 --------- 10001111Bit-by-bit (right to left):
- $0+1 = 1$
- $0+1 = 1$
- $1+0 = 1$
- $0+1 = 1$
- $1+1 = 0$, carry 1
- $0+1+1 = 0$, carry 1
- $1+0+1 = 0$, carry 1 (carry out)
Result = $1,0001111$ (a carry out of 1 is generated).
Step 3: End-around carry
Since a carry is produced, the result is positive. Add the carry back to the 7-bit sum:
0001111 + 1 --------- 0010000Step 4: Final Result
$$A - B = 0010000_2$$
Verification
$$0010000_2 = 16_{10}, \quad 84 - 68 = 16 \checkmark$$
Conclusion
$$A - B = 0010000_2 = 16_{10}$$
- 55 marksNumericalDon't care conditions in K-mapsHideAnswer
Simplify the Boolean Function $F$ in sum of products using the don't-care conditions $d$. $F = B'C'D' + BCD' + ABCD'$, $d = B'CD' + A'BC'D$. [5]
Function (SOP): $$F = B'C'D' + BCD' + ABCD'$$ Don't-care conditions: $$d = B'CD' + A'BC'D$$ Variables: A, B, C, D (4 variables → minterms 0 to 15) --- Order of bits: A B C D. - $B'C'D'$ → B=0, C=0, D=0, A free → A=0: 0000 = m₀, A=1: 1000...
- 65 marksDecoder design and operationHideAnswer
Explain the concept of decoder with an example. [5]
A decoder is a combinational logic circuit that converts binary coded input into a set of outputs, where exactly one output is active (HIGH) for each unique combination of inputs. - It has n input lines and 2^n output lines - It "decodes...
- 75 marksRead-only memory implementationHideAnswer
List different memory types and explain basic memory operations. [5]
Memory Types and Basic Memory Operations
Different Types of Memory
1. Primary Memory (Main Memory)
- RAM (Random Access Memory): Volatile memory used to store data and programs currently in use.
- SRAM (Static RAM): Uses flip-flops; faster, more expensive, used in cache memory.
- DRAM (Dynamic RAM): Uses capacitors; slower, cheaper, used as main memory; needs periodic refresh.
- ROM (Read Only Memory): Non-volatile memory; stores permanent data/firmware.
- PROM: Programmable ROM; can be written once.
- EPROM: Erasable PROM; erased using UV light.
- EEPROM: Electrically Erasable PROM; erased electrically.
2. Cache Memory
- High-speed memory located between CPU and main memory.
- Stores frequently accessed data to reduce access time.
- Levels: L1 (fastest, smallest), L2, L3.
3. Secondary Memory (Auxiliary Memory)
- Non-volatile, large capacity storage.
- Examples: Hard Disk Drive (HDD), Solid State Drive (SSD), Optical Disk, Magnetic Tape.
4. Registers
- Fastest memory, located inside the CPU.
- Temporarily hold data, instructions, and addresses during processing.
5. Virtual Memory
- A technique that uses secondary storage to extend the apparent size of primary memory.
Basic Memory Operations
Memory operations are the fundamental actions performed on a memory system:
1. Read Operation (Fetch / Load)
- Data is retrieved from a specific memory location and transferred to the CPU or a register.
- Steps:
- The CPU places the memory address on the Address Bus.
- A Read control signal (RD = 0 or active low) is sent via the Control Bus.
- The memory locates the addressed cell and places the data on the Data Bus.
- The CPU reads the data from the Data Bus.
CPU --> [Address Bus] --> Memory CPU <-- [Data Bus] <-- Memory CPU --> [Control Bus: READ] --> Memory2. Write Operation (Store)
- Data is transferred from the CPU and stored into a specific memory location.
- Steps:
- The CPU places the memory address on the Address Bus.
- The CPU places the data to be written on the Data Bus.
- A Write control signal (WR = 0 or active low) is sent via the Control Bus.
- The memory stores the data at the specified address.
CPU --> [Address Bus] --> Memory CPU --> [Data Bus] --> Memory CPU --> [Control Bus: WRITE] --> Memory
Summary Table
Operation Address Bus Data Bus Control Signal Read CPU sends address Memory sends data to CPU RD (active) Write CPU sends address CPU sends data to memory WR (active) Note: These two operations (Read and Write) form the foundation of all memory interactions in a computer system. All higher-level operations such as fetch-decode-execute cycles depend on these basic operations.
- RAM (Random Access Memory): Volatile memory used to store data and programs currently in use.
- 85 marksJK flip-flop design and operationHideAnswer
Explain JK flip flop with necessary diagram and truth table. [5]
A JK flip flop is an improved version of the SR flip flop that eliminates the invalid/indeterminate state. It has two inputs: J (Set) and K (Reset), along with a Clock input and outputs Q and Q'. --- Internal Gate Implementation: --- CLK...
- 95 marksNumericalFractional number conversionsHideAnswer
Perform the following conversion: (a) $(0.625)_{10}$ to binary. (b) $(173)_8$ to decimal. [2.5+2.5]
- (a) Convert $(0.625){10}$ to binary - (b) Convert $(173)8$ to decimal --- Method: Multiply the fractional part by 2 repeatedly, recording the integer part each time, reading top to bottom. Step Fraction × 2 Result Bit -----------------...
- 105 marksStatus register and processor registersHideAnswer
Explain processor registers and ALU connection through common buses with a suitable diagram. [5]
Inside a processor, registers and the ALU (Arithmetic Logic Unit) must be interconnected so that data can flow between them efficiently. A common bus (or internal bus) is a shared set of wires/lines used to transfer data between multiple...
- 115 marksNumericalExclusive-OR and exclusive-NOR gatesHideAnswer
Show that the dual of the exclusive-OR is equal to its complement. [5]
- Function: Exclusive-OR, $F = A \oplus B = A\bar{B} + \bar{A}B$ - To prove: $F^D = \bar{F}$ (dual equals complement) --- Dual of a Boolean expression: Interchange AND (·) with OR (+), and interchange 0 with 1. Variables (and their compl...
- 125 marksLogic gates and universal gatesHideAnswer
Write short notes on (a) Universal gate. (b) Status register. [2.5+2.5]
Short Notes
(a) Universal Gate
A universal gate is a logic gate that can be used to implement any Boolean function or any other logic gate (AND, OR, NOT, etc.) without needing any other type of gate.
The two universal gates are:
- NAND Gate
- NOR Gate
Why are they called Universal?
Because all basic gates can be realized using only NAND (or only NOR) gates:
Implementing Basic Gates using NAND:
Gate NAND Implementation NOT A A NAND A = $\overline{A}$ A AND B (A NAND B) NAND (A NAND B) A OR B (A NAND A) NAND (B NAND B) Implementing Basic Gates using NOR:
Gate NOR Implementation NOT A A NOR A = $\overline{A}$ A OR B (A NOR B) NOR (A NOR B) A AND B (A NOR A) NOR (B NOR B) Significance:
- Reduces the number of different gate types needed in circuit design.
- Simplifies manufacturing and reduces cost.
- NAND gates are widely used in digital IC design (e.g., TTL and CMOS families).
(b) Status Register (Flag Register)
A status register (also called a flag register or condition code register) is a special-purpose register in the CPU that holds individual flag bits reflecting the outcome of the most recently executed arithmetic or logical operation.
Common Flag Bits:
Flag Name Description Z Zero Flag Set to 1 if the result of an operation is zero C Carry Flag Set to 1 if there is a carry out from the MSB (unsigned overflow) S / N Sign / Negative Flag Set to 1 if the result is negative (MSB = 1) V / OV Overflow Flag Set to 1 if signed arithmetic overflow occurs P Parity Flag Set to 1 if the result has even parity AC / H Auxiliary Carry Set if carry occurs from lower nibble to upper nibble (used in BCD) Importance:
- Used by conditional branch/jump instructions to make decisions (e.g.,
JZ,JC,JNZ). - Enables the CPU to perform conditional execution and loop control.
- It is automatically updated after arithmetic and logical operations.
Example:
If we compute
5 - 5 = 0:- Zero flag Z = 1 (result is zero)
- Sign flag S = 0 (result is not negative)
The status register is a key component in program flow control within the CPU.