ALU Borrow Logic
An ALU borrow logic block computes the difference and borrow-out for 1-bit addition and subtraction operations.
Expected behavior:
| Op | A | B | Res | Bout | |------|-----|-----|-------|--------| | 0 | 0 | 0 | 0 | 0 | | 0 | 0 | 1 | 1 | 0 | | 0 | 1 | 0 | 1 | 0 | | 0 | 1 | 1 | 0 | 0 | | 1 | 0 | 0 | 0 | 0 | | 1 | 0 | 1 | 1 | 1 | | 1 | 1 | 0 | 1 | 0 | | 1 | 1 | 1 | 0 | 0 |
Simulation shows Bout = 0 for input Op=1, A=0, B=1 and Bout = 1 for input Op=1, A=0, B=0. The borrow output is incorrect during subtraction. Inspect the circuit and correct the fault.
Constraints
- Do not modify the full adder component used in the datapath.
- Only replace or rewire the faulty logic gate generating
Bout.
Topics
Solve this problem
Place the gates, wire them up and watch the signals settle. Every submission runs on the same simulation engine that grades it.
This problem is part of Codiode Pro. The statement above is free to read.
The circuit builder and code editor need a desktop screen. On a phone, read the problem here and open it on a laptop to solve.