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
    • Clock Domain Planning
    • Top-Level Crossings
    • Always-On Domain, Wake Policy and a Timer Extension
      • Always-On Domain and Timer Clocks
      • Extension: Watchdog-to-Reset Wiring
      • Wake Sources and Reset-Versus-Interrupt Policy
    • 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. Always-On Domain, Wake Policy and a Timer Extension

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

Always-On Domain, Wake Policy and a Timer Extension

What stays awake in NanoSoC, the wake policy, and how you would add a watchdog and a wake timer, which NanoSoC does not have.

  • 3topics
  • 3lessons

When NanoSoC sleeps, the PLL is off, both fast clocks are dead, and one 24 MHz crystal clock keeps eight blocks alive: the reset and power controller, the PLL, the interrupt controller, the UART, SPI, GPIO, SRAM0 and the ROM. This topic places those blocks, writes the wake policy for the sources that really exist, and then does something different in two lessons: it treats a watchdog and a wake timer as a clearly labelled extension. NanoSoC has no watchdog, no real-time clock and no timers: there is no such block in its list of sixteen, no RST_CAUSE bit for them (the four causes are POR, PAD, SW and WAKE) and no interrupt input (inputs 6 and 7 are reserved and tied to zero). The extension lessons show what adding one would change in the reset tree, the cause register and the interrupt map, which is the integrator's real work. For the block circuits see Counters and Timers and Watchdog Timer Example.

Lesson

After it you can...

Always-On Domain and Timer Clocks

Place every always-on block on its clock and power domain, and place a wake timer if you add one (extension).

Extension: Watchdog-to-Reset Wiring

List what a watchdog would change in the reset tree, RST_CAUSE and the interrupt map (extension, not in NanoSoC).

Wake Sources and Reset-Versus-Interrupt Policy

Write the wake policy for NanoSoC's real sources: what resets, what interrupts, and what wakes from sleep.

Suggested order: top to bottom. Placement first, because both the wake policy and the extension assume the always-on domain; then the extension, which shows how a new block changes three shared tables; then the policy, which closes the topic. Every number inside the two extension passages is an illustrative teaching value, labelled as such; every number about the existing chip comes from the NanoSoC specification.

Check yourself Why would a watchdog added to NanoSoC have to run on clk_per rather than clk_sys?

It must fire when software hangs, including hangs that stop the PLL or gate the fast clocks. On clk_sys it dies with the logic it is meant to supervise; on the always-on crystal clock it outlives every failure it guards except a supply loss.

Expect to be asked for the wake policy of a chip you have just drawn. Say which blocks stay powered and clocked, which three sources can wake it, and what the wake does to the cause register. If the interviewer proposes a watchdog, say it is an addition, and list the three tables it changes.

PreviousNext: Always-On Domain and Timer Clocks

Up next

Up nextAlways-On Domain and Timer Clocks

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • Clock Sources and PLLs
  • Dividers, Muxes and Glitch-Free Switching
  • Clock Gating Architecture