CodiodeCodiode
Home
Problem Solving
Skill Tracks
My Assignments
Contests
Leaderboard
Community
Settings
Codiode/Problems/Combinational Logic

Build the Same Function in Both Minimum-Gate and Minimum-Depth Versions and Compare

HardLogic CircuitBuild

EDA tools synthesize logic based on strict design constraints, trading off silicon area for signal propagation speed. A designer must structure the logic differently depending on whether the target is minimal gate count or minimal logic depth.

Implement the boolean function F = AB + ACD + BCD twice. Route the area-optimized (minimum-gate) version to F_area. Route the timing-optimized (minimum-depth) version to F_speed.

| A | B | C | D | F_area | F_speed | |-----|-----|-----|-----|----------|-----------| | 0 | 0 | 0 | 0 | 0 | 0 | | 0 | 0 | 0 | 1 | 0 | 0 | | 0 | 0 | 1 | 0 | 0 | 0 | | 0 | 0 | 1 | 1 | 0 | 0 | | 0 | 1 | 0 | 0 | 0 | 0 | | 0 | 1 | 0 | 1 | 0 | 0 | | 0 | 1 | 1 | 0 | 0 | 0 | | 0 | 1 | 1 | 1 | 1 | 1 | | 1 | 0 | 0 | 0 | 0 | 0 | | 1 | 0 | 0 | 1 | 0 | 0 | | 1 | 0 | 1 | 0 | 0 | 0 | | 1 | 0 | 1 | 1 | 1 | 1 | | 1 | 1 | 0 | 0 | 1 | 1 | | 1 | 1 | 0 | 1 | 1 | 1 | | 1 | 1 | 1 | 0 | 1 | 1 | | 1 | 1 | 1 | 1 | 1 | 1 |

Constraints

  • Implement F_area using a factored Boolean expression to minimize total gate count.
  • Implement F_speed using a strict two-level sum-of-products (SOP) form to minimize logic depth.
  • Do not share any logic gates between the F_area circuit and the F_speed circuit.
  • Use only basic AND, OR, and NOT gates.

Topics

optimizationtimingboolean-algebraarea

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.

Sign in to solveSee what Pro unlocks

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.

Related problems

  • Binary to HexEasy
  • 1-to-4 Demultiplexer from AND and NOT GatesEasy
  • 2-to-4 Line Decoder with Active-High EnableEasy
  • Hex Nibble to BinaryEasy
  • Odd Parity Bit Generator for 3-bit DataEasy
  • Full Adder from Half AddersEasy
  • Modulo ArithmeticMedium
  • Two's Complement: Encode a Negative DecimalEasy

Browse all problems · Learning tracks