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
  • Power Architecture21
  • Interrupts, DMA and Peripherals15
    • Interrupt Controller Integration
    • Interrupt Routing and Latency
    • DMA Integration
    • Peripheral Subsystem
      • UART Integration
      • SPI and GPIO Integration
      • Bridges, Clocks and Bring-Up Order
    • Pad Muxing and GPIO
  • 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

←Interrupts, DMA and Peripherals
  1. Topics
  2. SoC Design
  3. Interrupts, DMA and Peripherals
  4. Peripheral Subsystem

Part 7 of 14Part 7 of 14/Interrupts, DMA and PeripheralsAll levels

Peripheral Subsystem

UART, SPI and GPIO as integrated blocks: register maps, clocks, resets, interrupts, bridges and software bring-up order.

  • 3topics
  • 3lessons

The fast part of NanoSoC moves megabytes; the slow part moves characters, configuration bits and single pins, and the chip cannot boot without it. The UART prints the first banner, the SPI loads the second-stage image, and the GPIO gives software sixteen pins to read and drive. NanoSoC has no boot straps: it has one boot source, the SPI flash. This topic integrates all three as finished blocks on the slow APB segment: what their registers do, what each access costs in nanoseconds, how their interrupts and resets are wired, and the order software brings them up. For the peripheral protocols themselves see Embedded Peripherals; for the block-level shell see Peripheral Shell.

Lesson

After it you can...

UART Integration

Set the baud rate, budget the overrun window, and wire the UART interrupt.

SPI and GPIO Integration

Load an image over SPI and configure GPIO direction and interrupts safely.

Bridges, Clocks and Bring-Up Order

Price every peripheral access and bring the subsystem up in the right order.

Suggested order: top to bottom. The UART first because its deadline is the tightest; then SPI and GPIO, which share the segment and the reset story; then the bridges and the bring-up order that both depend on. Pad wiring for the GPIO pins continues in Pad Muxing and GPIO.

Check yourself Why do the UART, SPI and GPIO sit behind a clock-domain crossing instead of on the fast APB segment?

They run on clk_per at 24 MHz with the always-on logic, so they stay alive in sleep while the 96 MHz fabric sleeps. The crossing costs about 208 ns per access, which character traffic never notices.

Expect to derive the UART baud from the divider, price one peripheral register access, and recite the bring-up order with the reason for each step. The three lessons are those three answers.

PreviousNext: UART Integration

Up next

Up nextUART Integration

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • Interrupt Controller Integration
  • Interrupt Routing and Latency
  • DMA Integration