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

Combinational Logic Between Synchronizer Flops

MediumLogic CircuitDebug

A 2-stage synchronizer safely transfers an asynchronous signal into a new clock domain and provides an active-low output.

Expected behavior:

The path between the first and second synchronizer flip-flops must be a direct wire connection. This maximizes the time available for a metastable signal to settle. The output sync_out_n must reflect the inverted state of async_in after a two-cycle synchronization delay.

CDC linting reports a structural violation: combinational logic is detected between the synchronizer stages. The metastability resolution time is severely degraded.

Inspect the circuit and correct the fault.

Constraints

  • Do not change the total number of flip-flops in the circuit.
  • The final output must remain logically inverted relative to the synchronized input.
  • The path between the two synchronizer flip-flops must contain no logic gates.

Topics

Clock Domain CrossingDebugMetastabilitySynchronizer

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