1. 三个层次对应的职责;
协议层 | 负责产生和处理请求与响应; 负责维护cache state; 负责处理整个protocal level flow; |
网络层 | 对协议层的message进行封装; 产生srcid/tgtid, 用于message在网络中进行传输; |
链路层 | device间,flow control; 负责各个通道间的建链解链; |
2. Topology的分类与区别;
crossbar | 低延时,适用于小规模nodes; |
ring | 效率与延时平衡,适用于中等规模nodes; |
mesh | 高带宽,可扩展性更强,适用于大规模nodes; |
3. 常用术语:
transaction | 一笔读写操作 |
message | 两个component之间的传输,例如,一笔request, 一笔response, 一笔snoop等等; |
packet | 一笔message的多个packet,例如,一个data_resp,可能分多次传输回来; |
flit | 在chi中,一个packed=一个flit; |
pos | 保序点 |
poc | 一致性点, |
A point at which all agents that can access memory are guaranteed to see the same copy of a memory location. In a typical CHI based system it is the HN-F in the interconnect. | |
requester | A component that starts a transaction by issuing a Request message. |
Completer | Any component that responds to a transaction it receives from another component. |
可以是interconnect上的一个组件,也可以是之外的一个组件(slv) | |
Master | An agent that independently issues transactions |
A master can also be referred to as a Requester | |
Typically a master is the most upstream agent in a system | |
Slave | An agent that receives transactions and completes them appropriately |
A slave can also be referred to as a Completer or Endpoint. | |
Typically, a slave is the most downstream agent in a system | |
Protocol Credit | A credit, or guarantee, from a Completer that it will accept a transaction. |
Link layer Credit | A credit, or guarantee, that a flit will be accepted on the other side of the link |
ICN | An ICN might include a fabric of switches connected in a ring, mesh, crossbar, or some other topology |
IPA | Intermediate Physical Address |
RN | Request Node. Generates protocol transactions, including reads and writes, to the interconnect. |
RN-F | |
Fully coherent Request Node | |
• Includes a hardware-coherent cache. | |
• Permitted to generate all transactions defined by the protocol. | |
• Supports all Snoop transactions. | |
RN-D | |
IO coherent Request Node with DVM support: | |
• Does not include a hardware-coherent cache. • Receives DVM transactions. • Generates a subset of transactions defined by the protocol. | |
RN-I | |
IO coherent Request Node | |
• Does not include a hardware-coherent cache. | |
• Does not receive DVM transactions. | |
• Generates a subset of transactions defined by the protocol. | |
• Does not require snoop functionality. | |
HN | Home Node. Node located within the interconnect that receives protocol transactions from Request Nodes, completes the required Coherency action, and returns a Response. |
HN-F | |
Is expected to receive all Request types except DVMOp | |
• Includes a Point of Coherence (PoC) that manages coherency by snooping the required RN-Fs, consolidating the snoop responses for a transaction, and sending a single response to the requesting RN. | |
• Is expected to be the Point of Serialization (PoS) that manages order between memory requests. | |
• Might include a directory or snoop filter to reduce redundant snoops. | |
HN-I | |
Processes a limited subset of Request types defined by the protocol | |
• Is expected to be the PoS which manages order for requests targeting the IO subsystem. | |
• Does not include a PoC and is not capable of processing a Snoopable request. On receipt of a Snoopable request must respond with a protocol compliant message. | |
MN | |
Miscellaneous Node: | |
• Receives a DVM transaction from an RN, completes the required action, and returns a response | |
SN | Slave Node. Node that receives a Request from a Home Node, completes the required action, and returns a Response |
SN-F | |
A Slave Node type used for Normal memory. | |
It can process Non-snoopable read write, and atomic requests, including exclusive variants of them, and Cache Maintenance Operation (CMO) requests | |
SN-I | |
A Slave Node type used for peripherals or Normal memory. | |
It can process Non-snoopable read, write and atomic requests, including exclusive variants of them, and CMO requests. | |
MN | Misc or Miscellaneous Node. Node located within the interconnect that receives DVM messages from Request Nodes, completes the required action, and returns a Response |
IO Coherent node | The Snoopable requests that an IO Coherent node generates do not result in the caching of the received data in a coherent state. Therefore, an IO Coherent node does not receive any Snoop requests |
Write-Invalidate protocol | A protocol in which an RN writing to a cache line that is shared in the system must invalidate all the shared copies before proceeding with the write. The CHI protocol is a Write-Invalidate protocol. |
In a timely manner | The protocol cannot define an absolute time within which something must occur. However, in a sufficiently idle system, it will make progress and complete without requiring any explicit action |
Don’t Care | Any component receiving a packet with a field value set to Don't Care must ignore the value set for that field |
Inapplicable | A field value that indicates that the field is not used in the processing of the message |
更多推荐
chi协议简单总结
发布评论