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

Asynchronous Reset: Reset Recovery Time Violation

MediumLogic CircuitTiming Diagram

A positive-edge-triggered D flip-flop with an asynchronous active-low reset requires the reset signal to deassert at least 2 time steps before the clock edge to avoid metastability. Four signals are shown: CLK (clock, period 4), RST_bar (active-low asynchronous reset), D (input), and Q (output, initially 0). Trace Q across all 16 time steps, using X for any cycle where a recovery time violation causes an indeterminate state.

Constraints

  • RST_bar asynchronously forces Q to 0 when LOW, overriding all other inputs.
  • A recovery time violation occurs if RST_bar transitions from LOW to HIGH less than 2 time steps before a LOW-to-HIGH transition of CLK.
  • If a recovery time violation occurs, Q becomes indeterminate (X) at the clock edge and remains X until the next valid clock edge.

Topics

MetastabilityLatches and Flip-FlopsTiming Analysis

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