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
    • Read and Write-Permission Flows
    • Forwarding Versus Memory Sourcing
      • Who May Supply Data?
      • Dirty Intervention
      • Three-Hop Versus Four-Hop
      • When Memory Is Stale
    • Writeback, Eviction and Cleaning
  • Races and Controller Design8
  • Progress and the Fabric16
  • 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

‹Transactions
  1. Topics
  2. Cache Coherency
  3. Transactions
  4. Forwarding Versus Memory Sourcing

Part 3 · Transactions · All levels

Forwarding Versus Memory Sourcing

Choose a correct data source, keep dirty data safe through forwarding, and compare direct and H-buffered routes.

  • 4topics
  • 4lessons

H's job is not to choose whichever value returns first. It must choose a source that the permission and dirty-responsibility history justifies. Settle the source before comparing routes or latency.

Lesson

After it you can...

Who May Supply Data?

Decide which source may answer in each settled state.

Dirty Intervention

Compare an E holder with an M holder on a forwarded read, and the direct-to-reader variant.

Three-Hop Versus Four-Hop

Compare direct and H-buffered exclusive-permission transfers and what each costs.

When Memory Is Stale

Tell legally stale memory from a stale response.

Suggested order: source, dirty response, route alternatives, then stale-data diagnosis.

Check yourself Does a low-latency memory response outrank a dirty holder's later response?

No. The right source follows from the line's history and the pending transaction, not from arrival order. Returning stale memory sooner is a correctness failure.

Related topics

  • Shared course model

  • Prerequisite: basic transactions

PreviousNext: Who May Supply Data?

Up next

Up nextWho May Supply Data?

Sign in to save progress

Practice this lessonReport an error

See also

  • Read and Write-Permission Flows
  • Writeback, Eviction and Cleaning