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
  • Ordering and Synchronization12
  • Performance and Scalability12
  • Real Protocols12
  • SoC Integration12
    • LLC Data and Directory Policies
    • Devices and DMA
    • The Memory-Controller Boundary
      • Point of Coherence and Serialization
      • Memory-Controller Reordering
      • Same-Address Hazards Below the Home
      • Memory Latency and Coherence
  • Power, Clocking and Reliability12
  • Verification12
  • Debug and Bring-up12
  • Interview and Design Review17
  • Capstone: A Coherent Model Lab5
Loading lesson

‹The Memory-Controller Boundary
  1. Topics
  2. Cache Coherency
  3. SoC Integration
  4. The Memory-Controller Boundary
  5. Point of Coherence and Serialization

Part 9 · SoC Integration · All levels

Point of Coherence and Serialization

Ask where conflicts are ordered, who can supply data and what target an operation must reach.

Is the home always the place where the newest bytes live?

No. In the course model H serializes conflicting transactions for X, but C0 can hold M / 1 while H records exclusive(C0) and memory = 0. Serialization means choosing and enforcing an order for conflicting line operations. Data authority identifies the source of the required value. Neither requires H to contain every current payload at all times.

The point of coherence (PoC) is Arm's term (Arm Architecture Reference Manual for A-profile, DDI 0487): the point at which all agents that can access memory are guaranteed to see the same copy of a location. It is a target for cache maintenance (clean or invalidate to PoC), usually memory or a memory-side cache. H is something different: the per-line point of serialization, where conflicting requests for X are put in one order. H can serialize X while the current value sits in C0, so the two points need not coincide. The PoC and PoU definitions are tabulated in Cache Maintenance Operations.

Question

Course answer in the warm MESI X = 1 snapshot

Why separate

Where are conflicts on X ordered?

At H's active/pending work

H need not already have the payload.

Where is current X?

C0 M / 1

Memory = 0 cannot answer as current.

What proves a default dirty eviction reached memory?

H's memory update before Put-Ack

C0's WB entry held the current value until memory accepted it.

What proves persistence?

No such contract is added here

Volatile memory acceptance alone is not nonvolatile durability.

The review names observers, ordering, data source and target acceptance before deciding whether completion is established.
A completion claim is tied to a defined target and evidence, not a component nickname.

Use the existing completion comparison for the default and early Put-Ack examples. The integration question adds a boundary: when may H treat a memory write as accepted? A controller may accept (and H may send Put-Ack) once the write sits in a queue that every later same-address read checks and that keeps the data until DRAM is written. When DRAM is actually written is then invisible to coherence and matters only for persistence. A write queue whose entries later reads do not check is not a valid acceptance point.

The queue rule that makes this acceptance safe (forward or block on a same-address hit) is the subject of Memory-Controller Reordering.

Common pitfall

Using point of coherence, serializer, data source, completion target and persistence point as interchangeable labels.

Interview

For one warm dirty X, draw the metadata decision and data responsibility separately, then ask what downstream acknowledgment actually proves.

Check yourself If H knows C0 is exclusive, does that make memory current?

No. C0 may have silently changed a clean exclusive copy into M and written 1. H's metadata directs resolution; it does not rewrite backing bytes.

Related topics

  • Shared course model

  • Authority while memory lags

Previous

106 / 167

Next: Memory-Controller Reordering

Up next

Up nextMemory-Controller Reordering

Sign in to save progress

Practice this lessonReport an error

See also

  • Same-Address Hazards Below the Home
  • Memory Latency and Coherence