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

Double Clocking Synthesis Failure

HardLogic CircuitAnalyze

Standard cell libraries provide flip-flops that trigger on a single clock edge to ensure predictable setup and hold times across a synchronous design.

The provided Verilog snippet contains an always @(posedge clk or negedge clk) block driving an output register q from an input d.

Analyze the synthesis failure generated by this construct. Identify why standard logic compilers reject this pattern and determine the correct hardware primitives required for dual-edge data rates.

Constraints

  • Assume a standard ASIC or FPGA cell library without native dual-edge flip-flops.
  • The synthesis tool is Yosys running a standard synthesis script.
  • The target architecture relies on discrete logic cells for standard sequential logic.

Topics

Flip-FlopsSynthesisDDRYosys

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

  • Binary to HexEasy
  • 1-to-4 Demultiplexer from AND and NOT GatesEasy
  • 2-to-4 Line Decoder with Active-High EnableEasy
  • Hex Nibble to BinaryEasy
  • Odd Parity Bit Generator for 3-bit DataEasy
  • Full Adder from Half AddersEasy
  • Modulo ArithmeticMedium
  • Two's Complement: Encode a Negative DecimalEasy

Browse all problems · Learning tracks