- 1easy
Wire
Connect a one-bit input directly to an output.
- 2easy
2-to-1 Multiplexer (Gate-Level)
Build a 2-to-1 multiplexer using only basic AND/OR/NOT gates instead of a behavioral assign statement.
- 3easy
Ground
Drive an output permanently low.
- 4easy
4-to-1 Multiplexer
Select one of four single-bit inputs with a 2-bit select signal.
- 5medium
BCD to 7-Segment Display Decoder
Decode a 4-bit BCD digit into the seven segment-drive signals of a 7-segment display.
- 6easy
NOR
Implement a two-input NOR gate.
- 7easy
Another Gate
Combine XOR and OR logic in one combinational expression.
- 8medium
4-bit Priority Encoder
Report the bit position of the highest set bit in a 4-bit input, with a valid flag for all-zero input.
- 9medium
K-Map Simplification: Prime BCD Digit Detector
Use a Karnaugh map with don't-cares to derive a minimal two-term sum-of-products circuit for a prime BCD digit detector.
- 10easy
Two Gates
Connect two logic gates through an intermediate signal.
- 11easy
8-bit Magnitude Comparator
Compare two 8-bit unsigned values and report equal, greater-than, and less-than as three one-hot flags.
- 12easy
More Logic Gates
Build independent NAND and NOR outputs.
- 13easy
7420 Chip
Model two independent four-input NAND gates.
- 14medium
4-bit Barrel Shifter (Rotate Left)
Rotate a 4-bit value left by a variable amount using a combinational barrel shifter.
- 15easy
Two-Bit Equality
Compare two two-bit values for equality.
- 16easy
Simple Circuit A
Implement a three-input function with an OR stage feeding an AND stage.
- 17easy
Simple Circuit B
Implement a sum-of-products Boolean function.
- 18medium
Combine Two Circuits
Combine two independently computed Boolean terms.
- 19easy
Ring or Vibrate?
Choose whether a phone rings or vibrates when a call arrives.
- 20easy
Thermostat
Drive heater and cooler controls from temperature and enable signals.
- 21medium
3-Bit Population Count
Count the one bits in a three-bit input.
- 22easy
2-to-1 Bus Multiplexer
Select one of two eight-bit buses.
- 23medium
9-to-1 Multiplexer
Select one of nine bits with a four-bit selector.
- 24medium
256-to-1 Multiplexer
Select one bit from a 256-bit input using an eight-bit index.
- 25hard
256-to-1 4-Bit Multiplexer
Select one four-bit word from 256 packed choices.
- 26easy
3-Bit Binary Adder
Add two three-bit unsigned numbers and expose the carry bit.
- 27medium
32-Bit Adder
Add two 32-bit unsigned operands with a carry-preserving result.
- 28medium
Signed Addition Overflow
Add signed bytes and flag when the mathematical result exceeds the signed range.
- 29medium
100-Bit Binary Adder
Add two 100-bit operands and preserve the final carry.
- 30hard
4-Digit BCD Adder
Add two four-digit packed BCD values with decimal carry propagation.
- 31medium
3-Variable Karnaugh Map
Implement a three-variable Boolean function from its minterms.
- 32medium
4-Variable Karnaugh Map A
Minimize a four-variable function with five asserted minterms.
- 33medium
4-Variable Karnaugh Map B
Minimize a second four-variable function.
- 34medium
4-Variable Karnaugh Map C
Minimize a four-variable function with eight asserted minterms.
- 35hard
Minimum SOP and POS Forms
Express a Boolean function in equivalent minimized SOP and POS forms.
- 36medium
K-Map Function with a Multiplexer
Implement a small Boolean function suitable for a mux-based realization.
- 37easy
Truth Tables
Translate two three-input truth tables into combinational logic.
- 38easy
Even Longer Vectors
Apply a bitwise operation across two 64-bit buses.
- 39medium
Karnaugh Map Circuit
Reduce a four-variable function to a compact expression.