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
    • Flops, Resets and Enables
    • FSM Synthesis
    • Memory and Macro Inference
    • Retiming and Pipelining
      • What Retiming Moves
      • Latency, Throughput and Register Count
      • Reset, Initial State and Equivalence
      • Pipelining a Long Path by Hand
      • A Retiming Model and the Tool Flow
  • Datapath Synthesis14
  • Area, Power and Test14
  • Verification, ECO and Handoff15
  • Flows and Debugging15
  • Interview and Judgment11
Loading lesson

‹Sequential, FSM and Memory
  1. Topics
  2. Logic Synthesis
  3. Sequential, FSM and Memory
  4. Retiming and Pipelining

Part 4 · Sequential, FSM and Memory · Intermediate

Retiming and Pipelining

Moving registers across logic to balance stages; reset behavior must be rechecked.

  • 5topics
  • 5lessons

Retiming moves registers across combinational logic to balance stage delays. It keeps the steady-state output stream and per-path latency.

Reset-cycle outputs and the initial-state flush can still change and must be rechecked. Pipelining adds registers to split long paths, which adds latency.

Retiming balancing two uneven stages into two even stages.
Retiming shifts one block across the register: stages 8 and 4 ns become 6 and 6 ns.

Lesson

What it covers

What retiming moves

Forward and backward register moves across gates and fanout, with a balanced pair.

Latency, throughput and register count

Why latency stays fixed while throughput rises, and when the register count changes.

Reset, initial state and equivalence

Reset-cycle differences after a move and what equivalence can still show.

Pipelining a long path by hand

Cutting a 12 ns path into three stages with valid bits and a testbench.

A retiming model and the tool flow

A small Python stage-graph model plus a sketch of the synthesis tool flow.

Check yourself Two stages take 8 ns and 4 ns. Retiming balances them to 6 ns and 6 ns. What changed and what did not?

The clock period changed from 8 ns to 6 ns. Latency did not: each input-to-output path still crosses one register.

Interview

Carry one sentence per lesson: retiming shifts registers across gates without changing path counts, latency is cycles while throughput is rate, reset values move with their register, hand pipelining pairs each new stage with a valid bit, and a stage-graph model pins the period before trusting the tool.

PreviousNext: What Retiming Moves

Up next

Up nextWhat Retiming Moves

Sign in to save progress

Practice this lessonReport an error

See also

  • Flops, Resets and Enables
  • FSM Synthesis
  • Memory and Macro Inference