Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • Logic Synthesis Glossary
  • Logic Synthesis Cheatsheet
  • Synthesis Foundations14
  • Logic Optimisation and Mapping20
  • Constraints and Timing15
  • Sequential, FSM and Memory19
  • Datapath Synthesis14
  • Area, Power and Test14
  • Verification, ECO and Handoff15
    • Equivalence Checking
      • Combinational Equivalence of RTL and Netlist
      • Key Points and Black Boxes
      • Retiming and FSM Recoding
      • Reading an Equivalence Failure
      • Constants and Brute Force
    • Incremental Compile and ECO
    • Physical-Aware Synthesis and Handoff
  • Flows and Debugging15
  • Interview and Judgment11
Loading lesson

‹Equivalence Checking
  1. Topics
  2. Logic Synthesis
  3. Verification, ECO and Handoff
  4. Equivalence Checking
  5. Retiming and FSM Recoding

Part 7 · Verification, ECO and Handoff · Intermediate

Retiming and FSM Recoding

Moved registers and recoded states, and why the correspondence must be rebuilt.

On this page

    Retiming moves registers

    Retiming slides registers across combinational gates to balance stage delays. The logic is preserved but the register positions change.

    Each moved register breaks its old pairing. The correspondence must be rebuilt from the retiming log before cones can be compared.

    Before retiming

    After retiming

    Effect on the check

    Register after a slow block

    Register pushed into the block

    Old pair gone; new cut points needed.

    Two registers in series

    One merged register

    Two pairs collapse into one.

    No register on a path

    Register pulled onto the path

    A new key point appears.

    FSM recoding changes codes

    Synthesis may recode state registers from binary to one-hot or Gray. The state names survive but their bit patterns change.

    A binary pair and its one-hot form name the same four states with different widths. The calc block shows the exact codes.

    Diagram
    4 states need ceil(log2(4)) = 2 binary bits
    binary codes: 00, 01, 10, 11 (2 bits each)
    one-hot codes: 0001, 0010, 0100, 1000 (4 bits each)
    same 4 states, different bit patterns and widths

    Rebuilding the correspondence

    Sequential comparison first aligns states, then compares next-state and output logic. Name-based pairing alone fails after recoding.

    The usual fix maps old codes to new codes explicitly. Only then do the combinational checks between matched state bits apply.

    Step

    Action

    Why

    Collect moves

    Read the retiming and recoding reports.

    They list which registers moved and which codes changed.

    Map states

    Pair each old code with its new code.

    Cones must compare equivalent states.

    Re-run cones

    Prove next-state and output logic per pair.

    A pass on aligned pairs is meaningful again.

    Common mistakes

    Common pitfall

    Reproving with stale pairings after retiming compares mismatched logic. Either point may still pass while the machine as a whole differs.

    Interview

    Likely probes: why retiming breaks a combinational check.

    • Registers moved, so the old cut points pair the wrong logic.

    • Recoded states need code mapping before any cone compares.

    • The fix is re-alignment first, then the same miter proof.

    Check yourself Retiming pushed one register across an AND gate and the old script still passes. Should the pass be trusted?

    No. The pairing predates the move, so the cones compared are stale. Rebuild the correspondence and re-run.

    Check yourself A 4-state machine moves from binary to one-hot. How many state bits change, and what must be supplied?

    Two bits become four. An old-code to new-code map must be supplied before comparison.

    Related topics

    • Retiming and pipelining

    • FSM synthesis

    Previous

    101 / 139

    Next: Reading an Equivalence Failure

    Up next

    Up nextReading an Equivalence Failure

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Combinational Equivalence of RTL and Netlist
    • Constants and Brute Force