The Casex Simulation Trap
Instruction decoder circuits map operational codes to specific execution paths while rejecting uninitialized control states.
Expected behavior:
| Op2 | Op1 | Op0 | Valid | Match | |-------|-------|-------|---------|---------| | 0 | 0 | 0 | 1 | 0 | | 0 | 0 | 1 | 1 | 1 | | 1 | 0 | 0 | 1 | 2 | | 1 | 0 | 1 | 1 | 2 | | 1 | 1 | 0 | 1 | 2 | | 1 | 1 | 1 | 1 | 2 | | 1 | X | X | 0 | 0 |
Simulation shows Valid = 1 and Match = 2 for the test case Op2 = 1, Op1 = "X", Op0 = "X". The decoder incorrectly processes the unknown states instead of flagging an invalid operation. Inspect the circuit and correct the fault.
Constraints
- Do not use the
casexkeyword for pattern matching. - Handle unknown states explicitly to prevent simulation mismatches.
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.