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

  • How to Use This Course
  • Reading Path
  • CDC/RDC Glossary
  • CDC/RDC Metrics Reference
  • CDC/RDC Interview Prep
  • CDC/RDC Signoff Cheatsheet
  • Clock Domains and Failure Modes8
  • Metastability and Synchronizers16
  • CDC Protocols and Handshakes16
  • Reconvergence and Gray Coding16
  • Reset Domain Crossing16
  • Architecture and Design Rules16
    • CDC-Aware Partitioning
    • Clock Gating and Muxing
    • Interface and IP Rules
    • Quasi-Static Signals and Configuration
  • CDC Signoff Methodology24
  • RDC Signoff16
  • Debug and Case Studies11
  • CDC and RDC Interview Prep30
  • Capstone: Sign Off a Multi-clock Peripheral4
Loading lesson

‹CDC & RDC
  1. Topics
  2. CDC & RDC
  3. Architecture and Design Rules

Part 6 · Architecture and Design Rules · Intermediate

Architecture and Design Rules

Design rules that make signoff easy: partitioning, clock gating and muxing, interface rules, and quasi-static configuration.

  • 4topics
  • 16lessons

Topics in this section

  1. 1CDC-Aware Partitioning4 lessons
    • Choosing Domain Boundaries
    • Register at the Boundary
    • Minimising Crossings
    • Crossing Inventory
  2. 2Clock Gating and Muxing4 lessons
    • Glitch-Free Clock Mux
    • Gating as a Domain Boundary
    • Crossing with Gated Clocks
    • Clock Switching and Reset
  3. 3Interface and IP Rules4 lessons
    • IP and Macro Boundaries
    • Async Interfaces: Config and Status
    • Documenting Crossings
    • Interface Checklists
  4. 4Quasi-Static Signals and Configuration4 lessons
    • Static by Construction
    • Qualification and Stability
    • Constraints and Waiver Hygiene
    • Runtime Reconfiguration

Most CDC bugs are decided before any synchroniser is drawn: by where the design is cut into domains, how clocks are gated and muxed, what crosses each interface, and which signals are allowed to be static. This section collects the design rules that keep those decisions clean, so that signoff has a handful of well-defined crossings to check instead of dozens of ad-hoc ones.

Learning path through the architecture and design rules section.
Suggested order. Partition first, then classify gated clocks, then fix the interfaces, then optimise the static signals.

The sixteen lessons

Lesson

After it you can...

Choosing Domain Boundaries

Place a domain cut where it costs least and price what each cut costs.

Register at the Boundary

Launch every crossing from a flop and explain why a combinational crossing is a violation.

Minimising Crossings

Replace scattered signals with fewer, wider, well-defined crossings.

Crossing Inventory

Keep the crossing table that signoff is built on.

Glitch-Free Clock Mux

Describe the safe mux structure and show a simulation with no runt pulses.

Gating as a Domain Boundary

Say when a gated clock shares its parent domain and when the enable path is a crossing.

Crossing with Gated Clocks

Keep handshakes alive when a clock may stop.

Clock Switching and Reset

Order resets and state correctly across a clock-source change.

IP and Macro Boundaries

Say what the integrator must know and document about crossings inside hard IP.

Async Interfaces: Config and Status

Pick handshake, shadow register, or qualified capture for each direction.

Documenting Crossings

Write an interface specification that signoff can be set up from.

Interface Checklists

Walk the integration and handoff checklists without missing a row.

Static by Construction

Design signals so they are provably static in a mode, with sequencing rules.

Qualification and Stability

State the stable-before-use proof obligation and assert it.

Constraints and Waiver Hygiene

Communicate quasi-static intent to the checks without blanket waivers.

Runtime Reconfiguration

Change configuration while running through safe sequencing patterns.

Tip

Read the section in order the first time: each topic uses facts the previous one established (domains, then gated clocks, then interfaces, then static signals).

Check yourself A new block arrives with five clocks, two gated domains, and an undocumented third-party macro. Where do you start?

Partitioning: name the domains and the gated-clock relationships first, then list the macro boundary signals, and only then choose protocols. The section order is the triage order.

Related topics

  • Up: CDC/RDC course hub

  • Glossary

  • RTL: Metastability and Synchronisation

  • RTL: Clock Gating

PreviousNext: CDC-Aware Partitioning

Up next

Up nextCDC-Aware Partitioning

Sign in to save progress

Practice this lessonReport an error

See also

  • How to Use This Course
  • Reading Path
  • CDC/RDC Glossary