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

Missing Pulse Detector

HardLogic CircuitBuild

Reliable systems rely on a periodic heartbeat signal to confirm a subsystem is alive. A watchdog timer monitors this heartbeat and asserts a failure flag if the signal stops toggling.

The circuit must monitor an incoming pulse_in signal. An internal 2-bit counter increments by 1 on every clock cycle. A synchronous rising edge on pulse_in (a transition from 0 to 1) must reset this internal counter to 0. If the counter reaches its maximum value of 3, it must hold that value and the output missing_flag must assert high. The flag remains high until a new rising edge on pulse_in occurs or the active-high rst is asserted.

Constraints

  • Implement an internal 2-bit counter that saturates at 3 instead of rolling over.
  • Detect the rising edge of pulse_in synchronously to the main clock.
  • Use an active-high synchronous reset rst to clear the counter and the flag.

Topics

sequentialcounterswatchdogtimer

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