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

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Path
  • Cache Coherency Glossary
  • The Shared Course Model
  • Cache Coherency Revision Sheet
  • Why Coherence Exists8
  • States and Protocols12
  • Transactions12
  • Races and Controller Design8
  • Progress and the Fabric16
    • Virtual Networks and Progress
      • A Protocol Deadlock
      • Message Classes and Virtual Networks
      • Deadlock, Livelock, Starvation
      • Stating Progress Assumptions
    • Filtering and Snoop Pruning
    • Latency, Fairness and QoS
    • Hierarchical and Chiplet Coherence
  • Ordering and Synchronization12
  • Performance and Scalability12
  • Real Protocols12
  • SoC Integration12
  • Power, Clocking and Reliability12
  • Verification12
  • Debug and Bring-up12
  • Interview and Design Review17
  • Capstone: A Coherent Model Lab5
Loading lesson

‹Progress and the Fabric
  1. Topics
  2. Cache Coherency
  3. Progress and the Fabric
  4. Virtual Networks and Progress

Part 5 · Progress and the Fabric · All levels

Virtual Networks and Progress

Build an actual resource dependency cycle, break its identified edge, and state the assumptions behind progress.

  • 4topics
  • 4lessons

Separate message labels do not create separate resources. Progress depends on which buffers, credits and pending entries are held while other resources are requested. Begin with a small concrete cycle before discussing virtual networks or fairness.

Lesson

After it you can...

A Protocol Deadlock

Name the held and requested resources in a reachable cycle.

Message Classes and Virtual Networks

Order message classes and tell protocol deadlock from routing deadlock.

Deadlock, Livelock, Starvation

Classify a failure by what can still move.

Stating Progress Assumptions

Bound the claim by assumptions A1-A6.

Read in order after the Part 4 controller resources. Scope: the bad example adds finite resources to the course model, and its corrected variant breaks that one cycle, not every possible cycle in a production fabric.

Check yourself Can fair arbitration rescue a state with no enabled receive or service transition?

No. Fairness chooses among enabled actions. A resource deadlock needs a structural escape or a recovery transition, not merely a fairer choice of blocked work.

Related topics

  • Shared course model

  • Prerequisite: controller resources

PreviousNext: A Protocol Deadlock

Up next

Up nextA Protocol Deadlock

Sign in to save progress

Practice this lessonReport an error

See also

  • Filtering and Snoop Pruning
  • Latency, Fairness and QoS
  • Hierarchical and Chiplet Coherence