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
  • Protocol Metrics Reference
  • Protocols Glossary
  • Reading Path
  • Protocol Fundamentals25
    • Layering & Transaction Model
      • Layering & Transaction Model: Concepts
      • Layering & Transaction Model: Integration
      • Layering & Transaction Model: Debug
      • Layering & Transaction Model: Interview
      • Layering & Transaction Model: Deep Dive
      • Layering & Transaction Model: Worked Examples
    • Handshake & Backpressure
    • Ordering & Outstanding Rules
    • Bandwidth & Latency Budgeting
    • Protocol Fundamentals: Tricky Q&A
  • AMBA Family (APB / AHB / AXI)17
  • Coherence Fabrics (ACE / CHI)17
  • Memory Interfaces (DDR / LPDDR / HBM)17
  • PCIe & CXL17
  • Embedded Peripherals (I2C / SPI / UART)17
  • High-Speed I/O (USB / Ethernet / MIPI)17
  • Protocol Verification & Compliance17
  • Protocols Interview Prep5
  • Interface Protocols Cheatsheet
Loading lesson

←Layering & Transaction Model
  1. Topics
  2. Bus Protocols
  3. Protocol Fundamentals
  4. Layering & Transaction Model
  5. Layering & Transaction Model: Debug
On this page

    Interface ProtocolsAll levels

    Layering & Transaction Model: Debug

    Debug for Layering & Transaction Model.

    Primary debug scenario

    Symptom: A read returns correct data in block simulation but stale data on silicon. Block-level VIP passes. Full-system test fails intermittently under multi-core load.

    Leading hypotheses: Leading hypotheses include attribute/coherency mismatch, address translation, bridge mapping, reset/power state, response association and integrity or timing faults. The intermittent multi-core condition raises concurrency-sensitive hypotheses but does not eliminate the read channel or physical path.

    Triage steps

    1. Tag failing read: ID, address, cache line, timestamp, initiating master.

    2. Dump page table / memory attributes for that address — cacheable? shareable?

    3. Trace physical path through interconnect — list every bridge and attribute transform.

    4. Compare VIP txn log at master side vs slave side of each bridge.

    5. Run 2-txn litmus: CPU write same line, DMA read same line — reproduce?

    6. If coherent system: check snoop participation for that address range.

    7. Reduce to smallest master pair that reproduces stale read.

    Common pitfalls

    • Debugging data values without checking transaction attributes.

    • Assuming block VIP path equals chip path.

    • Blaming slave when bridge changed the contract.

    • Fixing with cache flush in software without understanding why coherency failed.


    Secondary scenario

    Symptom: Simulation and silicon both pass directed tests. Fails only when GPU and CPU access same buffer concurrently.

    Triage steps

    1. Map buffer address to shareability domain.

    2. Verify GPU path participates in coherency (snoop or explicit flush).

    3. Profile: are CPU and GPU using different cache lines or false-sharing one line?

    4. Run the architecture/platform-defined producer-consumer synchronisation sequence and compare it with the failing sequence.

    5. If the defined synchronisation changes the result, inspect publication ordering, ownership and coherency configuration; the experiment narrows the search but is not a proof of one root cause.

    Common pitfalls

    • Adding barriers everywhere instead of fixing attribute/domain config.

    • Ignoring GPU non-coherent path by default.

    Previous

    7 / 154

    Next: Layering & Transaction Model: Interview

    Up next

    Up nextLayering & Transaction Model: Interview

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • Layering & Transaction Model: Concepts
    • Layering & Transaction Model: Deep Dive
    • Layering & Transaction Model: Worked Examples