Chapter 5: Combinational Circuit Design - Complete Study Notes
NotebookLM Ingestion Compilation
This merged document contains all 6 study notes for Chapter 5: Combinational Circuit Design from ECE 2103 Digital Electronics (Sharif Sir).
Related Concepts: 02 Code Converters & Data Routing Implementations | 03 Tree Networks (Cascading MUX, Decoders & DeMUX) | 04 Programmable Logic Devices (ROM & PLA)
5.01 Arithmetic Circuits, Multipliers & Comparators
Combinational Arithmetic Building Blocks
Combinational Arithmetic Circuits form the core of a CPU’s Arithmetic Logic Unit (ALU). Because combinational circuits have no memory elements, their outputs are functions solely of their present inputs.
graph TD subgraph 3 Half-Adder Functional Generator InA[Inputs A, B] --> HA1[Half-Adder 1: S1 = A ⊕ B, C1 = AB] HA1 & InC[Input C] --> HA2[Half-Adder 2: S2 = A ⊕ B ⊕ C = D, C2 = S1 • C = E] HA1 & InC --> HA3[Half-Adder 3: S3 = C1 ⊕ C = F, C3 = C1 • C = G] end
1. The Combinational Circuit Design Blueprint
To design any combinational circuit from scratch (especially when resolving 14-mark word problems), engineers follow a structured 5-step blueprint:
+-----------------------------------+
| 1. Analyze Word Problem & Rules |
+-----------------------------------+
|
v
+-----------------------------------+
| 2. Draw Truth Table (I/O Mapping)|
+-----------------------------------+
|
v
+-----------------------------------+
| 3. Simplify Outputs via K-Maps |
+-----------------------------------+
|
v
+-----------------------------------+
| 4. Write Minimized Equations |
+-----------------------------------+
|
v
+-----------------------------------+
| 5. Draw Schematic Gate Diagram |
+-----------------------------------+Step 1: Variable Identification
Determine the number of input variables and output variables from the problem specification. Assign distinct letter symbols (e.g., inputs , outputs ) to each.
Step 2: Truth Table Construction
List all possible binary combinations for the input variables. Determine the required output value (1 or 0) for each row based on the system rules. If certain input states are physically impossible or will never occur, mark those output states as Don’t Cares (X).
Step 3: K-map Optimization
Plot a separate K-map for each output variable. Place 1s, 0s, and Xs in their corresponding cells, and group them to obtain the simplest expressions.
Step 4: Logic Equation Extraction
Write down the minimized Sum-of-Products (SOP) or Product-of-Sums (POS) algebraic equations for each output.
Step 5: Schematic Drafting
Draw the physical logic gate circuit. Ensure inputs flow from left to right, gates are drawn cleanly, and all lines and connections are clearly labeled.
2. The 4-Function Half-Adder Cascading Puzzle
Major Exam Problem: Implement 4 Functions using 3 Half-Adders (2015, 2018, 2019 - 12 Marks)
Question: Implement the following four Boolean functions using exactly three Half-Adder circuits:
Solution Step-by-Step:
-
Half-Adder 1 (HA1): Inputs and .
- Sum Output:
- Carry Output:
-
Half-Adder 2 (HA2): Inputs and .
- Sum Output:
- Carry Output:
-
Half-Adder 3 (HA3): Inputs and .
- Sum Output:
- Carry Output:
2. Full-Adder to Full-Subtractor Conversion
The Single Inverter Trick (2020 - 10 Marks)
Question: Show that a Full-Adder can be converted to a Full-Subtractor with the addition of one inverter gate.
- Standard Full-Adder (FA): ,
- Standard Full-Subtractor (FS): ,
Solution:
Connect an inverter to the Minuend input () before it enters the Full-Adder.
- Input to FA becomes .
- Carry Out becomes: (matches Full-Subtractor Borrow Out).
- Note: The Sum output becomes (complement of Difference).
4. Carry Look-Ahead Mathematical Proof & Parallelism
In a standard Ripple Carry Adder, the propagation delay accumulates as carries ripple sequentially through each stage. A Carry Look-Ahead (CLA) Adder eliminates this sequential bottleneck by calculating all carry signals in parallel.
4.1 Derivation of the Carry Equation
Carry Equation Proof (2018 - 10 Marks)
Question: Prove that the output carry of any full-adder stage can be expressed in terms of generate () and propagate () functions as:
- Standard Full-Adder carry-out logic equation:
- Factor out the carry-in :
- Define Carry Generate (): A carry is generated internally if both inputs are
1, regardless of carry-in: - Define Carry Propagate (): An input carry is propagated to the output if either input is
1(commonly implemented using XOR for sum generation): - Substituting and back into the carry equation: $$\mathbf{C_{i+1} = G_i + P_i C_i} \quad \blacksquare$
4.2 Parallel Carry Generation (Look-Ahead Formulas)
By expanding the recurrence relation, we express every carry signal solely in terms of the initial carry-in and the primary input variables ( and , which generate and instantly at the first gate level):
- (Stage 1 Carry):
- (Stage 2 Carry):
- (Stage 3 Carry):
- (Stage 4 Carry):
Propagation Delay Analysis
Since all and terms are computed simultaneously at the first gate level, all carry signals ( to ) are generated in parallel with a flat delay of only two gate levels (one level of ANDs, one level of ORs). This eliminates the ripple carry delay, keeping the addition speed independent of the word size.
5. 2-Bit Binary Multiplier Circuit Design
Major PYQ Problem: (2022 - 10 Marks)
Inputs: and . Outputs: .
graph TD subgraph Multiplier Architecture P0[P0 = A0 • B0] AND1[A1 • B0] & AND2[A0 • B1] --> HA1[Half-Adder 1: Sum = P1, Carry = C1] AND3[A1 • B1] & HA1 --> HA2[Half-Adder 2: Sum = P2, Carry = P3] end
- Hardware Required: 4 AND gates and 2 Half-Adders.
6. Magnitude Comparator Design & Mathematics
A magnitude comparator is a combinational circuit that compares two multi-bit binary numbers ( and ) to determine their relative magnitude (, , or ).
6.1 Bit Equivalence Coefficient ()
To compare two numbers, we first define an equivalence coefficient for each individual bit position using the XNOR gate:
- if bit is equal to bit .
- if bit is not equal to bit .
6.2 Equality Condition ()
For the entire 4-bit numbers and to be equal, every single bit position must be equal simultaneously:
Hardware Implementation: Four 2-input XNOR gates feeding into a single 4-input AND gate.
6.3 Inequality Conditions ( and )
To determine if is greater than or less than , we compare bits starting from the Most Significant Bit (MSB, position 3) down to the Least Significant Bit (LSB, position 0).
1. The Logic Equation
if the MSB of is and is . If they are equal, we check the next bit down, and so on:
2. The Logic Equation
Similarly, if the MSB of is and is . If they are equal, we check the next bit down:
Hardware Implementation: Utilizes the existing XNOR equivalence outputs along with AND gates and a final multi-input OR gate to evaluate the conditions.
7. BCD Adder Design & Operation
Syllabus Context: Hardware Block Design
Design and operation of BCD adders is a standard 10-mark design question in ECE 2103 examinations.
A BCD Adder is a digital circuit that adds two BCD digits in parallel and produces a BCD sum digit.
The Correction Logic
The sum of two BCD digits () plus a carry-in () can range from to .
-
Standard 4-bit binary addition handles sums up to 15 without a carry-out.
-
To convert a binary sum ( with carry ) into a valid BCD digit (where values must generate a decimal carry and be offset by ), we define a correction detection logic function .
-
Detection Rule: An overflow (sum ) occurs if:
- (the binary sum is ).
- (the binary sum is or ).
- (the binary sum is or ).
-
If , we add binary to the sum. The output carry for the next decimal stage is .
Hardware Block Diagram:
graph TD subgraph BCD Adder Architecture InA[BCD Input A] & InB[BCD Input B] --> Adder1[4-Bit Binary Adder 1] Cin[Carry In] --> Adder1 Adder1 --> BinSum[Binary Sum: S3 S2 S1 S0] Adder1 --> CarryK[Carry K] BinSum & CarryK --> Detect[Detection Logic: F = K + S3•S2 + S3•S1] Detect -->|F| CorrectionBit[Correction Value: 0 F F 0] BinSum & CorrectionBit --> Adder2[4-Bit Binary Adder 2] Adder2 --> BCDOut[Final BCD Sum Output] Detect --> CarryOut[Final BCD Carry Out Cout = F] end
Past Year Questions (PYQs)
- [PYQ 2015, 2018, 2019]: Implement 4 functions using 3 Half-Adders. (12 Marks)
- [PYQ 2018]: Carry Look-Ahead proof . (10 Marks)
- [PYQ 2020]: FA to FS conversion using 1 inverter. (10 Marks)
- [PYQ 2022]: 2-bit binary multiplier circuit design. (10 Marks)
- [PYQ 2023, 2024, 2025]: 4-bit magnitude equality comparator (). (14 Marks)
- [Syllabus / PYQ]: Explain BCD Adder operation and draw its circuit diagram. (10 Marks)
Related Concepts: 01 Arithmetic Circuits, Multipliers & Comparators | 03 Tree Networks (Cascading MUX, Decoders & DeMUX) | 04 Programmable Logic Devices (ROM & PLA)
5.02 Code Converters & Data Routing Implementations
MSI Component Architecture
Medium Scale Integration (MSI) components—such as Decoders, Multiplexers (MUX), and Demultiplexers (DeMUX)—drastically reduce hardware gate counts and wiring complexity by replacing custom SSI gate networks.
1. Core Data Routing Definitions
- Decoder: Converts binary information from input lines to a maximum of unique output lines {generates all minterms internally}.
- Multiplexer (MUX): Selects binary data from one of input lines and routes it to a single output controlled by select lines {Data Selector}.
- Demultiplexer (DeMUX): Takes data from a single input line and routes it to one of output lines controlled by select lines {Data Distributor}.
2. Master Code Converter: 2,4,2,1 to 8,4,-2,-1
Major PYQ Problem (2017, 2019, 2020, 2023, 2024, 2025 - 14 Marks)
Question: Design a combinational circuit to convert a decimal digit from 2,4,2,1 code to 8,4,-2,-1 code.
Complete Conversion Truth Table:
| Decimal | Inputs (2,4,2,1) | Outputs (8,4,-2,-1) | Weight Check |
|---|---|---|---|
| 0 | 0 0 0 0 | 0 0 0 0 | |
| 1 | 0 0 0 1 | 0 1 1 1 | |
| 2 | 0 0 1 0 | 0 1 1 0 | |
| 3 | 0 0 1 1 | 0 1 0 1 | |
| 4 | 0 1 0 0 | 0 1 0 0 | |
| 5 | 1 0 1 1 | 1 0 1 1 | |
| 6 | 1 1 0 0 | 1 0 1 0 | |
| 7 | 1 1 0 1 | 1 0 0 1 | |
| 8 | 1 1 1 0 | 1 0 0 0 | |
| 9 | 1 1 1 1 | 1 1 1 1 |
- Don’t Care Conditions: Unused 2,4,2,1 binary combinations .
3. Shannon’s Expansion Theorem & MUX Logic Design
Shannon’s Expansion Theorem is the mathematical foundation behind multiplexer-based logic design. It states that any Boolean function can be decomposed into smaller sub-functions by expanding it about one or more select variables.
3.1 Theorem Statement
For any -variable Boolean function , it can be expanded about an individual variable as:
Using cofactor notation, we write:
Where:
- is the cofactor of evaluated with variable .
- is the cofactor of evaluated with variable .
3.2 Direct Hardware Mapping to Multiplexers
A multiplexer is physically a hardware implementation of Shannon’s expansion equation:
- The Select Lines () act as the expansion variables ().
- The Data Inputs () of the MUX are hardwired to the resulting cofactors.
The Select Line Rule
Since each select line represents one expansion variable, an -variable Boolean function can always be implemented using a Multiplexer with:
- select lines (where the remaining variable feeds the data inputs as ).
- select lines (where the data inputs are tied to static constants
0or1).
4. Implementing Full-Adder using 4x1 Multiplexers
Major PYQ Problem: Full-Adder via MUX (2021 - 10 Marks)
Question: Implement a Full-Adder circuit using two 4x1 Multiplexers.
Solution: A Full-Adder has three inputs: (which we choose as our select lines ) and (the carry-in, which will feed the data inputs).
- Sum Function (): Apply Shannon’s expansion about variables :
- For : (covers minterm 1)
- For : (covers minterm 2)
- For : (covers minterm 4)
- For : (covers minterm 7)
- Carry Function (): Apply Shannon’s expansion about variables :
- For :
- For : (covers minterm 3)
- For : (covers minterm 5)
- For : (covers minterms 6, 7)
graph TD subgraph 4x1 MUX Full-Adder Implementation S1[Select S1 = X] & S0[Select S0 = Y] --> MUX_Sum[MUX 1: Sum S] S1 & S0 --> MUX_Carry[MUX 2: Carry Out C] Z[Input Z] -->|I0=Z, I1=Z', I2=Z', I3=Z| MUX_Sum Z -->|I0=0, I1=Z, I2=Z, I3=1| MUX_Carry end
5. Implementing Full-Adder using 3-to-8 Decoder
Major PYQ Problem (2019 - 7 Marks)
Inputs: connected to 3-to-8 decoder select lines.
- Sum Output (): Connect decoder output pins 1, 2, 4, 7 to a 4-input OR gate .
- Carry Output (): Connect decoder output pins 3, 5, 6, 7 to a second 4-input OR gate .
6. BCD to Seven-Segment Decoder Design [PYQ 2018]
A BCD to Seven-Segment decoder takes a 4-bit binary coded decimal input (, where is MSB) and converts it to active-high control outputs () to drive a standard 7-segment LED display to render decimal numbers 0 through 9.
6.1 Display Segment Layout
a
+---+
f | | b
+---+ <- g
e | | c
+---+
d6.2 Truth Table (Active-High Display)
States (binary 1010 to 1111) are invalid BCD inputs and are treated as Don’t Care () states.
| Decimal | Inputs () | Segments () |
|---|---|---|
| 0 | 0 0 0 0 | 1 1 1 1 1 1 0 |
| 1 | 0 0 0 1 | 0 1 1 0 0 0 0 |
| 2 | 0 0 1 0 | 1 1 0 1 1 0 1 |
| 3 | 0 0 1 1 | 1 1 1 1 0 0 1 |
| 4 | 0 1 0 0 | 0 1 1 0 0 1 1 |
| 5 | 0 1 0 1 | 1 0 1 1 0 1 1 |
| 6 | 0 1 1 0 | 1 0 1 1 1 1 1 |
| 7 | 0 1 1 1 | 1 1 1 0 0 0 0 |
| 8 | 1 0 0 0 | 1 1 1 1 1 1 1 |
| 9 | 1 0 0 1 | 1 1 1 1 0 1 1 |
6.3 Minimized Logic Equations (using K-Maps)
- Segment a:
- Segment b:
- Segment c:
- Segment d:
- Segment e:
- Segment f:
- Segment g:
7. Basic 1-to-4 Demultiplexer (DeMUX) Design [PYQ 2023]
A Demultiplexer (DeMUX) is a logic circuit that takes a single input line and routes it to one of outputs, based on the select variables.
7.1 Truth Table
- Inputs: Data , Selects (where is MSB).
- Outputs: .
| Selects () | Outputs () |
|---|---|
0 0 | 0 0 0 D |
0 1 | 0 0 D 0 |
1 0 | 0 D 0 0 |
1 1 | D 0 0 0 |
7.2 Logic Equations & Schematic Implementation
The hardware is implemented using four 3-input AND gates:
- The select lines are connected to the gate inputs through inverters to generate the addressing minterms.
- The data line is fed to one input of all four AND gates in parallel.
8. Past Year Questions (PYQs) [PYQ 2017, 2018, 2019, 2020, 2021, 2023, 2024, 2025]
- [PYQ 2018, 2019]: Define Decoder, MUX, DeMUX. (06 Marks)
- [PYQ 2017, 2019, 2020, 2023, 2024, 2025]: 2,4,2,1 to 8,4,-2,-1 code converter. (14 Marks)
- [PYQ 2021]: Implement Full-Adder using two 4x1 MUXes. (10 Marks)
- [PYQ 2019]: Implement Full-Adder using 3-to-8 decoder and two OR gates. (07 Marks)
- [PYQ 2018]: Design BCD to 7-segment decoder. (12 Marks)
- [PYQ 2023]: Implement 1-to-16 DeMUX tree or basic DeMUX operation. (08 Marks)
Related Concepts: 01 Arithmetic Circuits, Multipliers & Comparators | 02 Code Converters & Data Routing Implementations | 04 Programmable Logic Devices (ROM & PLA)
5.03 Tree Networks (Cascading MUX, Decoders & DeMUX)
Concept Overview: MSI Tree Networks
When required system line counts exceed single IC capacity, smaller Medium Scale Integration (MSI) components are cascaded into Tree Networks.
- Multiplexers: Level-1 outputs feed into Level-2 data inputs.
- Decoders & Demultiplexers: Master decoder uses MSBs to drive the Enable () pins of Slave decoders sharing LSB select lines.
graph TD subgraph 16-to-1 MUX Tree Architecture LSB[LSB Selects S1 S0] --> M1[4x1 MUX 1: D0-D3] & M2[4x1 MUX 2: D4-D7] & M3[4x1 MUX 3: D8-D11] & M4[4x1 MUX 4: D12-D15] M1 & M2 & M3 & M4 --> OutLevel1[4 Intermediate Outputs] OutLevel1 --> MUX_Final[Level 2: 4x1 MUX Driven by MSBs S3 S2] MUX_Final --> FinalOut[16-to-1 Output Y] end
1. 16-to-1 MUX using 4-to-1 MUXes
Major PYQ Problem (2016, 2017 - 8 Marks)
Question: Design a 16-to-1 Multiplexer using 4-to-1 Multiplexers.
Wiring Architecture:
- Level 1 (4 MUXes): Receives inputs . LSB select lines are connected in parallel to all four MUXes.
- Level 2 (1 MUX): Receives the 4 intermediate outputs from Level 1. MSB select lines select which block output reaches final .
- Total Chips: .
2. Decoder Expansion Tree Networks
graph TD subgraph Master-Slave Decoder Expansion MSB[MSB Inputs A B] --> Master[Master 2x4 Decoder] Master -->|O0| E1[Enable Slave 1: Out 0-7] Master -->|O1| E2[Enable Slave 2: Out 8-15] Master -->|O2| E3[Enable Slave 3: Out 16-23] Master -->|O3| E4[Enable Slave 4: Out 24-31] LSB[LSB Inputs C D E] -->|Parallel Selects| E1 & E2 & E3 & E4 end
A. 4-to-16 Decoder using Five 2-to-4 Decoders
- Master Decoder (1 Chip): Driven by MSBs . Outputs drive Enable pins of Slaves.
- Slave Decoders (4 Chips): Driven by LSBs in parallel. Generates outputs .
B. 5-to-32 Decoder using Four 3x8 and One 2x4 Decoders
- Master Decoder (2x4 Decoder): Driven by MSBs . Outputs drive Enable pins of 3x8 Slaves.
- Slave Decoders (Four 3x8 Decoders): Driven by LSBs in parallel. Generates 32 outputs ().
3. 1x16 Demultiplexer using 2-to-4 Decoders
Major PYQ Problem (2023 - 7 Marks)
Question: Implement a 1x16 Demultiplexer using 2-to-4 decoders.
- Architecture: Wire five 2-to-4 decoders. Connect global Data Input () to the Enable pin of the Master decoder. MSBs drive Master select pins. LSBs drive Slave select pins in parallel.
Past Year Questions (PYQs)
- [PYQ 2016, 2017]: 16-to-1 MUX using 4-to-1 MUXes. (08 Marks)
- [PYQ 2021]: 4-to-16 decoder using five 2-to-4 decoders. (10 Marks)
- [PYQ 2024, 2025]: 5-to-32 decoder using four 3x8 and one 2x4 decoder. (10 Marks)
- [PYQ 2023]: 1x16 Demux using 2-to-4 decoders. (07 Marks)
Related Concepts: 01 Arithmetic Circuits, Multipliers & Comparators | 02 Code Converters & Data Routing Implementations | 05 Application-Specific Word Problems
5.04 Programmable Logic Devices (ROM & PLA)
PLD Classifications
Programmable Logic Devices (PLDs) replace custom SSI logic networks with dense arrays of AND and OR gates connected via programmable fuses.
- ROM: Fixed AND array (decoder) + Programmable OR array.
- PAL: Programmable AND array + Fixed OR array.
- PLA: Programmable AND array + Programmable OR array {maximum term-sharing flexibility}.
graph LR subgraph PLA Architecture Inputs[Inputs A B C] --> Buffers[Input Buffers / Inverters] Buffers --> ProgAND[Programmable AND Array: k Product Terms] ProgAND --> ProgOR[Programmable OR Array: m Outputs] ProgOR --> ProgInv[Programmable Output Inverters XOR/Fuses] ProgInv --> FinalOutputs[Outputs F1 F2] end
1. ROM Design: 3-Bit Input Square Generator
Major PYQ Problem (2015, 2017, 2020, 2021, 2025 - 8 Marks)
Question: Design a combinational circuit using a ROM that accepts a 3-bit number and generates an output equal to its square.
Solution & Optimization:
- Inputs: 3 bits (, Max ).
- Outputs: Max bits ().
Truth Table:
| Decimal | Inputs () | Outputs () |
|---|---|---|
0 0 0 | 0 0 0 0 0 0 | |
0 0 1 | 0 0 0 0 0 1 | |
0 1 0 | 0 0 0 1 0 0 | |
0 1 1 | 0 0 1 0 0 1 | |
1 0 0 | 0 1 0 0 0 0 | |
1 0 1 | 0 1 1 0 0 1 | |
1 1 0 | 1 0 0 1 0 0 | |
1 1 1 | 1 1 0 0 0 1 |
Circuit Hardware Optimization:
- Notice directly {no ROM needed}.
- Notice permanently {hardwired to Ground}.
- ROM Size Required: to generate .
2. PLA Design: Shared Product Terms
Major PYQ Problem (2015, 2023, 2024, 2025 - 11 Marks)
Question: Implement and with a PLA having 3 inputs, 4 product terms, and 2 outputs.
Solution:
Simplify and :
Selecting (Complement form) and (True form) shares product terms and ! The 4 distinct AND terms are: .
PLA Program Table:
| Product Term | Inputs () | Outputs () |
|---|---|---|
| 1. | - 0 0 | 1 1 |
| 2. | 0 - 0 | 1 1 |
| 3. | 0 0 - | 1 - |
| 4. | 1 1 1 | - 1 |
| Output Mode: | C T |
Past Year Questions (PYQs)
- [PYQ 2017, 2024, 2025]: Distinguish between ROM and PLA. (06 Marks)
- [PYQ 2017, 2018]: Internal block diagram of PLA. (05 Marks)
- [PYQ 2015, 2017, 2020, 2021, 2025]: 3-bit square generator ROM design. (08 Marks)
- [PYQ 2015, 2023, 2024, 2025]: PLA design with shared product terms. (11 Marks)
Related Concepts: 01 Arithmetic Circuits, Multipliers & Comparators | 02 Code Converters & Data Routing Implementations | 04 Programmable Logic Devices (ROM & PLA)
5.05 Application-Specific Word Problems
Real-World Logic Synthesis
Application-specific word problems test your ability to convert a real-world scenario into formal Boolean expressions: defining input/output variables constructing the truth table simplifying via K-map drawing the hardware circuit.
1. The Restaurant Voting Tie-Breaker Logic
Major PYQ Problem (2016 - 11 Marks)
Scenario: Mom (), Dad (), Joe (), Sue () vote: Vegetables () vs. Chicken (). Rules:
- Majority vote wins.
- If Mom and Dad agree, they win regardless of the kids.
- Any other tie votes result in Chicken ().
Solution:
- Minterms where :
- K-map simplification:
- Quad (Mom & Dad agree)
- Pair
- Pair
2. The Spaceship Battery Monitor
Major PYQ Problem (2017 - 13 Marks)
Scenario: A 4-bit A/D converter () monitors a 0-15V battery. Generate HIGH output if voltage .
Solution:
- Minterms for :
- K-map simplification: Octet , Pair .
3. Gas-Fired Boiler Alarm System
Major PYQ Problem (2021 - 10 Marks)
Scenario: Flame (), Chimney Temp (), Water Temp (), Pressure (). Alarm triggers if flame ignited AND chimney temp OR water temp OR pressure is high.
4. 4-Bit Divisibility Indicator (Divisible by 2 and 3)
Major PYQ Problem (2022 - 8 Marks)
Scenario: 4-bit input (). Output if divisible by 2; if divisible by 3.
Solution:
- Divisible by 2 (): LSB must be
- Divisible by 3 (): Numbers
Past Year Questions (PYQs)
- [PYQ 2016]: Restaurant voting logic. (11 Marks)
- [PYQ 2017]: Spaceship battery monitor logic. (13 Marks)
- [PYQ 2021]: Boiler alarm logic. (10 Marks)
- [PYQ 2022]: Binary divisibility indicator for 2 and 3. (08 Marks)
Related Concepts: 02 Code Converters & Data Routing Implementations | 03 Tree Networks (Cascading MUX, Decoders & DeMUX) | 04 Programmable Logic Devices (ROM & PLA)
5.06 Combinational Hardware Edge Cases & Logic Synthesis
Hardware Restrictions & Synthesis
Advanced exam questions test your ability to synthesize functions into restricted hardware architectures {such as designing a MUX using ONLY NAND gates or expanding unsimplified equations for a Decoder}.
1. Design a 4-to-1 MUX using ONLY NAND Gates
Major PYQ Problem (2018 - 10 Marks)
Question: Design a 4-to-1 line multiplexer using NAND gates.
Solution:
- MUX SOP Equation:
- NAND-NAND Transformation:
- Circuit Construction:
- Two 2-input NAND gates (inputs tied) to produce and .
- Four 3-input NAND gates in Level 1.
- One 4-input NAND gate in Level 2.
2. Multi-Equation Decoder Implementation
Major PYQ Problem (2016, 2017, 2019, 2020 - 12 Marks)
Question: Design a circuit using a 3-to-8 decoder and external OR gates for:
Canonical Minterm Expansion Solution:
-
Expand :
-
Expand :
-
Expand :
Circuit Implementation:
- Connect inputs to a 3-to-8 decoder.
- : Wire decoder pins 0, 1, 6 into a 3-input OR gate.
- : Wire decoder pins 0, 1, 2, 3, 6, 7 into a 6-input OR gate (or pins 4, 5 into a 2-input NOR gate).
- : Wire decoder pins 0, 1, 6, 7 into a 4-input OR gate.
3. Combinational Circuit Analysis Blueprint [PYQ 2016, 2018, 2020]
Combinational circuit analysis is the reverse-engineering process of determining the logical function of an existing gate-level schematic.
3.1 The 4-Step Analysis Algorithm
- Label Intermediate Outputs: Assign distinct algebraic variables (e.g., ) to all intermediate gate output lines that are not connected directly to the primary inputs.
- Write Intermediate Boolean Equations: Starting from the input side and moving towards the output, write the Boolean expression for each intermediate labeled node.
- Formulate Output Equations: Derive the final Boolean equations for the primary circuit outputs in terms of the primary inputs.
- Construct the Truth Table:
- List all binary input combinations.
- Evaluate the intermediate and final equations for each input state to fill in the outputs.
- Analyze the truth table or algebraically simplify the output equations to identify the circuit’s overall function (e.g., Adder, Comparator, Decoder).
Worked Example: Logic Circuit Analysis
Question: Analyze the logic circuit with inputs and outputs .
- (Output of AND gate 1)
- (Output of OR gate 2)
Truth Table Construction:
A B C T1 (AB) T2 (A+C) F1 (T1 ⊕ C) F2 (T2 • B’) 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 0 0 0 1 1 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 Simplified Output Equations:
4. Past Year Questions (PYQs) [PYQ 2016, 2017, 2018, 2019, 2020]
- [PYQ 2018]: 4-to-1 MUX using ONLY NAND gates. (10 Marks)
- [PYQ 2016, 2017, 2019, 2020]: Multi-equation decoder implementation with unsimplified expressions. (12 Marks)
- [PYQ 2016, 2018, 2022]: Analyze a given logic circuit with gates to extract its Boolean function and truth table. (10 Marks)