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

AboutRoadmapCareersInternshipsFAQContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • The NanoSoC Tour
  • Reading Path
  • SoC Glossary10
  • SoC Metrics Reference
  • SoC Cheatsheet
  • What SoC Integration Is12
  • Architecture and Budgets21
  • Memory Maps and Address Decode26
  • Interconnect and Bus Fabrics26
  • Clock and Reset Architecture24
    • Clock Sources and PLLs
    • Dividers, Muxes and Glitch-Free Switching
    • Clock Gating Architecture
      • ICG Cells and Enable Timing
      • Hierarchical Gating and Enable Ownership
      • Failure: DMA Gated During an APB Access
    • Clock Domain Planning
    • Top-Level Crossings
    • Always-On Domain, Wake Policy and a Timer Extension
    • Reset Sources and Reset Tree
    • Reset Sequencing and Release
  • Power Architecture21
  • Interrupts, DMA and Peripherals15
  • Memories, Boot and Security21
  • IP Integration and Handoff21
  • Top-Level Verification and Bring-up21
  • Package, Pads and I/O18
  • Chip Signoff and Tapeout18
  • SoC Interview Prep16
  • Capstone: Integrate NanoSoC14
Loading lesson

←Clock and Reset Architecture
  1. Topics
  2. SoC Design
  3. Clock and Reset Architecture
  4. Clock Gating Architecture

Part 5 of 14Part 5 of 14/Clock and Reset ArchitectureAll levels

Clock Gating Architecture

ICG cells, enable timing, hierarchical gating, enable ownership, and the DMA gated-clock failure.

  • 3topics
  • 3lessons

NanoSoC stops three clocks when their logic has nothing to do: the CPU clock on a wait-for-interrupt, the DMA and stream-bridge clocks on register bits. Stopping a clock saves power but can hang a bus, freeze a wake-up or slice a pulse in half, so every gate has an owner, a timing rule and a wake path. This topic teaches the cell that makes gating safe, the hierarchy that decides who gates what, and the failure where the DMA clock stops in the middle of a bus access. For the RTL cell view see Clock Gating and The ICG Cell; for the CDC view see Clock Gating and Muxing.

Lesson

After it you can...

ICG Cells and Enable Timing

Explain the latch-based cell, its setup and hold, and prove a model glitch-free.

Hierarchical Gating and Enable Ownership

Assign every NanoSoC gate an owner and a wake path.

Failure: DMA Gated During an APB Access

Tell the DMA gating failure as symptom, capture and fix, and write its check.

Suggested order: top to bottom. The cell first, because the hierarchy assumes glitch-free gates; then ownership, because the failure is an ownership mistake; then the failure itself. Readers who gate clocks in RTL already can start at the second lesson.

Check yourself Why does gating belong at the top level rather than inside each block?

Because the enable for one block depends on the state of others: the DMA must be idle, its bus quiet and its interrupt cleared before its clock stops. Only the integrator sees all three, so only the integrator can own the rule.

Expect to draw the ICG cell from memory, then answer who drives its enable on NanoSoC for each of the three gated clocks.

PreviousNext: ICG Cells and Enable Timing

Up next

Up nextICG Cells and Enable Timing

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • Clock Sources and PLLs
  • Dividers, Muxes and Glitch-Free Switching
  • Clock Domain Planning