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

Up/Down Counter with 7-Segment Display

MediumLogic CircuitBuild

Digital clocks, microwave timers, and instrumentation panels require human-readable numeric outputs. This subsystem links a state-tracking sequential core directly to a combinational display driver.

The circuit integrates a modulo-10 (BCD) counter and an active-high 7-segment decoder. The internal counter tracks decimal values from 0 to 9. When rst is 1, the internal count synchronously resets to 0. When rst is 0, the counter increments on the clock edge if up_down is 1, and decrements if up_down is 0. The counter must wrap around: incrementing past 9 rolls over to 0, and decrementing past 0 rolls under to 9. The outputs a through g drive the 7-segment display corresponding to the current internal decimal value.

| Value | a | b | c | d | e | f | g | |---------|-----|-----|-----|-----|-----|-----|-----| | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | | 2 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | | 3 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | | 4 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | | 5 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | | 6 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | | 7 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | | 8 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | | 9 | 1 | 1 | 1 | 1 | 0 | 1 | 1 |

Constraints

  • Implement a synchronous reset for the counter.
  • Restrict the internal count strictly to the 0 to 9 range.
  • Use active-high logic for all 7-segment outputs.
  • Derive the display outputs combinatorially from the counter state.

Topics

Combinational LogicCountersState MachinesIntegration

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

  • 3-bit Ripple Counter from Toggle Flip-FlopsEasy
  • D Latch from a 2:1 MUXEasy
  • 2-bit Ring CounterEasy
  • T Flip-Flop from a D Flip-FlopEasy
  • Handshake Deadlock Due to Early ResetHard
  • Reconvergence of Individually Synchronized BitsHard
  • Debug: Asynchronous Clear GlitchHard
  • Clock Gate Enable Crossing DomainsHard

Browse all problems · Learning tracks