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

Digital One Shot Timer

MediumLogic CircuitBuild

Hardware systems frequently require a fixed-duration pulse to drive mechanical components, debounce switches, or sequence power rails. The digital one-shot timer replaces legacy analog RC timers with deterministic, counter-based synchronous logic.

The circuit receives a trigger signal. Upon detecting a high trigger, the output pulse must assert high for exactly 100 clock cycles. The timer is non-retriggerable: any trigger assertions occurring while pulse is high must be ignored. After 100 cycles, pulse deasserts and the timer waits for the next trigger. An active-high rst signal resets the timer state and drives pulse low immediately.

Constraints

  • Use synchronous logic only.
  • Ignore all incoming triggers while the timer is active.
  • Drive the pulse output high for exactly 100 clock cycles following a valid trigger.
  • Implement using only standard flip-flops and combinational logic.
  • Do not use asynchronous delays or RC elements.

Topics

Synchronous LogicCountersState MachinesTimers

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