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

ReadShared

Request Shared (S) permission for a cache line.

ReadExclusive

Request Exclusive (E) permission for a cache line.

Upgrade

Request S → M transition (core already holds line in S).

WriteBack

Evict a Modified (M) line: carries dirty data payload.

InvAck

Acknowledge a received Invalidate from the CM.

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

GrantS

Data + Shared permission.

GrantE

Data + Exclusive permission.

GrantM

Write permission only (no data): Upgrade response only.

Invalidate

Demand the core write back (if dirty) then go to I state.

WriteBackAck

Acknowledge the core’s WriteBack (memory has committed data).

Nack

Request denied: core must retry as ReadExclusive.

Grant Message Usage

Message

Carries Data?

Used For

GrantS

Yes

ReadShared response when other sharers exist.

GrantE

Yes

ReadShared response (no other sharers) or ReadExclusive response.

GrantM

No

Upgrade response only.