Channels
PicoLink uses exactly two channels:
Channel |
Direction |
Purpose |
|---|---|---|
A |
Core → CM |
Requests, writebacks, and invalidation acknowledgments |
B |
CM → Core |
Grants, invalidations, acknowledgments, and denials |
A Channel Messages (Core → CM)
Message Type |
Meaning |
|---|---|
|
Request Shared (S) permission for a cache line. |
|
Request Exclusive (E) permission for a cache line. |
|
Request S → M transition (core already holds line in S). |
|
Evict a Modified (M) line: carries dirty data payload. |
|
Acknowledge a received |
Note
When a core in M state receives an Invalidate, its WriteBack
response implicitly serves as the InvAck. The CM shall not expect
a separate InvAck in this case.
B Channel Messages (CM → Core)
Message Type |
Meaning |
|---|---|
|
Data + Shared permission. |
|
Data + Exclusive permission. |
|
Write permission only (no data): |
|
Demand the core write back (if dirty) then go to |
|
Acknowledge the core’s |
|
Request denied: core must retry as |
Grant Message Usage
Message |
Carries Data? |
Used For |
|---|---|---|
|
Yes |
|
|
Yes |
|
|
No |
|