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
  • Memories, Boot and Security21
  • IP Integration and Handoff21
    • IP Collateral and Versioning
    • Wrappers and Adapters
      • Why Every Block Is Wrapped
      • Width and Protocol Adapters
      • The NanoSoC Wrappers
    • Integration Lint and Connectivity Checks
    • Top-Level SDC and Constraint Merge
    • DFT Integration
    • Debug Infrastructure
    • Safety and Fault Architecture
  • Top-Level Verification and Bring-up21
  • Package, Pads and I/O18
  • Chip Signoff and Tapeout18
  • SoC Interview Prep16
  • Capstone: Integrate NanoSoC14
Loading lesson

←IP Integration and Handoff
  1. Topics
  2. SoC Design
  3. IP Integration and Handoff
  4. Wrappers and Adapters

Part 9 of 14Part 9 of 14/IP Integration and HandoffAll levels

Wrappers and Adapters

Why every block is wrapped, width and protocol adapters, and the NanoSoC wrapper patterns with a SystemVerilog sketch.

  • 3topics
  • 3lessons

The DMA speaks an 8-bit APB dialect with no byte writes inside a 12-bit slot world, streams 32-bit words with no sidebands, and releases its reset to nobody's synchroniser. The rest of NanoSoC must not know any of that: the wrapper knows. This topic teaches the boundary layer that sits between every block and the chip: why it exists, the adapters that translate width, protocol, clock, reset and power, and the exact NanoSoC wrappers with a small SystemVerilog sketch for each pattern. The wrapper is owned by the integrator, reviewed as RTL, and checked by the connectivity topic next door.

Lesson

After it you can...

Why Every Block Is Wrapped

State what belongs in the wrapper versus the block, and who owns each side.

Width and Protocol Adapters

Design a width adapter that preserves strobes and ordering, and prove it with a sketch.

The NanoSoC Wrappers

Read each NanoSoC wrapper, including the DMA address slice and the isolation cells.

Suggested order: top to bottom. Ownership first, because the adapter lesson assumes the wrapper is the integrator's code; then the adapter patterns with their SystemVerilog; then the NanoSoC instances that tie the patterns to real ports. For reusable interface style see Reusable SystemVerilog for RTL and for interface constructs Interfaces; for the physical tie-off side see Tie Cells and Tie-Off Hygiene.

Check yourself A block team offers to fix an integration mismatch inside their RTL. Accept?

Usually not: the fix belongs in the integrator-owned wrapper so the block stays pristine for reuse and the next redelivery does not silently revert the fix. Accept the fix inside the block only when the behaviour is genuinely wrong for every user of the block.

Expect to sketch a wrapper around an unfamiliar block on the spot: name the five translations, clock, reset, power, width and protocol, and say which you check rather than trust.

PreviousNext: Why Every Block Is Wrapped

Up next

Up nextWhy Every Block Is Wrapped

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • IP Collateral and Versioning
  • Integration Lint and Connectivity Checks
  • Top-Level SDC and Constraint Merge