Forcing Resource Sharing on a Datapath
Resource-shared datapaths reduce area by multiplexing operands into fewer arithmetic units to resolve routing congestion. A junior engineer attempted to optimize a datapath by replacing four adders with two adders, but the new implementation fails simulation.
Expected behavior:
When Sel = 0: Y1 = A + B and Y2 = C + D. When Sel = 1: Y1 = A + C and Y2 = B + D.
Simulation shows Y2 = 6 for inputs A=1, B=2, C=3, D=4 with Sel=0. The expected value is 7. Inspect the circuit and correct the fault.
Constraints
- The fixed circuit must use a maximum of 2 Adders.
- Do not change the input or output port names.
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.