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
  • AMBA Family (APB / AHB / AXI)17
  • Coherence Fabrics (ACE / CHI)17
    • ACE Coherent Transactions
    • Snoop & Cache Maintenance
    • CHI Topology Basics
      • CHI Topology Basics: Concepts
      • CHI Topology Basics: Integration
      • CHI Topology Basics: Debug
      • CHI Topology Basics: Interview
    • Coherence Fabric Debug
    • Coherence Fabrics (ACE / CHI): Tricky Q&A
  • Memory Interfaces (DDR / LPDDR / HBM)17
  • PCIe & CXL17
  • Embedded Peripherals (I2C / SPI / UART)17
  • High-Speed I/O (USB / Ethernet / MIPI)17
  • Protocol Verification & Compliance21
  • Protocols Interview Prep5
  • Interface Protocols Cheatsheet
Loading lesson

←CHI Topology Basics
  1. Topics
  2. Bus Protocols
  3. Coherence Fabrics (ACE / CHI)
  4. CHI Topology Basics
  5. CHI Topology Basics: Concepts
On this page

    Interface ProtocolsAll levels

    CHI Topology Basics: Concepts

    Concepts for CHI Topology Basics.

    Core concepts

    Follow one transaction context until every obligation is retired

    A transaction identifier correlates messages; a buffer slot retains work; an admission credit authorises particular future work. They are related resources, not interchangeable counters. CHI’s link-level credits and protocol-credit retry machinery operate at different boundaries. Retain the Issue/revision scope already stated below when interpreting actual message names.

    This resource exercise intentionally uses generic Req/Snoop/Data/Complete names, not CHI opcodes. A home accepts a request only under its stated storage policy and must track any promised snoop data before finishing it. Eventual completion assumes delivery, fair service and a responder that eventually makes progress; adding a network channel alone proves none of these.

    Follow one transaction context until every obligation is retired — worked trace

    Illustrative isolated example; not measured silicon behaviour.

    Event

    Context held at home

    Why it stays allocated

    Request accepted

    Address, requester and transaction identity

    The requester still expects a result

    Peer promises data

    Above plus unresolved data obligation

    A response indication alone is not the promised bytes

    Data arrives

    Returned value and remaining completion obligations

    Routing and completion remain to be resolved

    Required completion obligations finish

    Context may be released under the protocol

    Reusing it earlier could match a late message to new work

    Check yourself If the peer response arrives before its promised data, can the home reuse the context immediately?

    No. This transaction still has an unresolved data obligation. The response and data can be separate events; a free link credit does not discharge the end-to-end obligation.

    CHI node types and message flows

    Read first: Specialist comparison; note its independently named specification revisions

    In the simplified coherent path here, a Request Node initiates accesses, a coherent Home Node coordinates coherence for its assigned addresses, and a Subordinate Node provides downstream service. CHI defines different coherent and non-coherent node types; these three labels alone do not specify every capability. Arm IHI 0050 Issue H B1.6 permits an HN-F to include a directory or snoop filter rather than requiring one.

    CHI separates REQ (request), RSP (response), DAT (data) and SNP (snoop) roles. That separation supports concurrency, but the protocol, network and buffering design must still preserve their dependency rules. Separate channels alone do not prove absence of deadlock, livelock or starvation.

    Requests and snoops use different node roles. Isolated CHI role map under the lesson's Issue H scope. The transaction selects which snoop/downstream actions are required. RN A/RN B are illustrative, not added core-system caches. Return/acknowledgement paths are omitted here, not waived.
    Isolated CHI role map under the lesson's Issue H scope. The transaction selects which snoop/downstream actions are required. RN A/RN B are illustrative, not added core-system caches. Return/acknowledgement paths are omitted here, not waived.

    What to notice

    • The home determines the required peer and downstream work for the selected transaction.

    • A downstream memory path does not make a dirty peer's newer data irrelevant.

    Check yourself Which node coordinates a required snoop instead of treating memory as the only possible data source?

    The coherent home. It resolves the line's required peer and downstream actions; the SN is the downstream service role.

    Trace: retry is an admission protocol

    This trace uses AMBA CHI, Arm IHI 0050 Issue H B2.10 and Figure B2.50. RN-F requests ReadOnce from HN-F. Assume HN-F cannot allocate the required transaction entry on the first attempt, supports retry, and later reserves the appropriate resource. No link failure, reset or cancellation occurs. The chosen credit type is n; it is a type, not a universal count of free bytes.

    Normal and reordered Protocol Credit arrival

    Event at requester

    Recorded evidence

    May resend?

    Send initial ReadOnce

    AllowRetry=1; PCrdType=0

    Not a retry; retain request context.

    Receive RetryAck(type n)

    Request rejected for admission; matching credit still absent

    No: RetryAck alone is insufficient.

    Receive PCrdGrant(type n)

    RetryAck and suitable grant from the required Completer now recorded

    Yes: resend with AllowRetry=0 and PCrdType=n.

    Alternative: grant arrives before RetryAck

    Retain grant's source/type context; rejection not yet received

    No, until the matching RetryAck arrives.

    Credited request accepted

    Admission obligation satisfied; operation remains in flight

    Wait for this transaction's required data/completion.

    What to notice

    • The alternative row describes a separate arrival ordering, not an extra grant in the first trace.

    • Progress assumes resource release, delivery and service of admitted work. Separation into REQ/RSP/DAT/SNP does not establish those assumptions by itself.

    Check yourself PCrdGrant arrives first. Can RN-F immediately resend the request, or conclude that its read has completed?

    Neither. It must retain the suitable credit and wait for the corresponding RetryAck before retrying. Admission on the credited retry still precedes the transaction's data/completion obligations.

    Directory-based coherency

    A directory or snoop filter can reduce unnecessary snoops using conservative knowledge of which caches may hold a line. Its representation, capacity and handling of missing information are implementation choices. Do not equate CHI with mandatory exact-directory tracking or assume ACE always broadcasts. There is no universal eight-core or 32-core protocol scaling threshold; compare the actual traffic and resources.

    In AMBA CHI Issue H request retry, a Completer that cannot accept an eligible first request can return RetryAck and later PCrdGrant for the required Protocol Credit. The Requester must wait for both before resending with AllowRetry deasserted and the granted PCrdType; the credited retry is guaranteed acceptance under the protocol rules. A high RetryAck rate shows admission/resource pressure at a Completer or path, but does not by itself identify a home-node compute bottleneck.

    • Home placement and address distribution affect locality and hotspots; evaluate the selected topology.

    • Directory representation trades storage, filtering precision and fallback traffic; bit-vector width is not the only possible encoding.

    • Distinguish CHI channel/link flow control from implementation-specific NoC virtual channels and buffer pools.

    Key takeaways

    • Identify node roles and message obligations before interpreting a topology or a latency counter.

    • A CHI retry needs both RetryAck and a suitable Protocol Credit; their arrival order can differ.

    • A credit grants admission under the protocol rules, not an end-to-end latency deadline.

    Apply the mechanism

    Continue to the integration exercise

    Then trace a failure

    Previous

    55 / 158

    Next: CHI Topology Basics: Integration

    Up next

    Up nextCHI Topology Basics: Integration

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • CHI Topology Basics: Debug
    • CHI Topology Basics: Interview