仅对英特尔可见 — GUID: sdr1520633292396
Ixiasoft
3.1. 块说明
PCIe Hard IP实现 PCI Express* 协议所要求的Transaction、Data Link和Physical layers堆栈。该栈允许 Intel® Stratix® 10中的用户应用程序逻辑通过 PCI Express* 链路对接另一器件。
PCIe* Hard IP使用500 MHz时钟时,Bridge中的其他模块使用250 Mhz时钟。Width和Rate Adapter处理这两个时钟域之间的必要转换。其他适配器可在PCIe Hard Ip的嵌入式头(header )格式和 Avalon® -MM Bridge中其他模块使用的单个头(header)和数据格式之间进行转换。
Avalon® -MM Bridge主要由4个与 Avalon® -ST Scheduler交互的叶形模块组成。4个叶形模块是:
- Bursting Master:该模块将通过PCI而链路接收到的存储器读和写TLP转化成 Avalon® -MM突发读和写交易,并针对其接收到的读请求发回CplD TLP。
- Bursting Slave:该模块将Avalon-MM读和写交易转换成要通过PCIe链路传送的PCIe存储器读写TLP。该模块还处理与其读请求相关的已接收CplD TLP。
- Write Data Mover:该模块使用PCIe存储器写TLP和 Avalon® -MM读交易将 Avalon® -MM空间中应用程序逻辑的大量数据移动到PCIe空间中的系统存储器。
- Write Data Mover:该模块使用PCIe存储器读TLP和 Avalon® -MM写交易将PCIe空间中系统存储器的大量数据移动到 Avalon® -MM空间中的FPGA存储器。
Avalon® -ST Scheduler用于两个主要功能。接收方向中,该模块基于TLP类型,地址和标签将已接收的TLP分配到适当的叶形模块。发送方向中,该模块基于可用额度,从叶形模块获取已准备传送的TLP并将其调度到Width和Rate Adapter发送从而转发到PCIe Hard Ip。本数据传输遵循 PCI Express* 规范的顺序规则以避免死锁(deadlock)。
通过其中一个 Avalon® -ST sink接口提供给Data Mover的描述符控制数据传送。Data Mover通过其 Avalon® -ST源接口报告传送状态。
Config Slave将单周期,32-bit Avalon® -MM读写交易转换成PCIe配置读和写TLP(CfgRd0、CfgRd1、CfgWr0和CfgWr1),以通过PCIe链路发送。该模块还处理其从返回数据中接收的完成TLP(Cpl和CplD)。
Response Reordering模块对通过PCIe链路接收以用于Bursting Slave和Read Data Mover的完成TLP进行组装和重新排序。该模块根据完成的标记来规定完成的路线(请参阅“标记”以获得有关标记分配的信息)。
发送到Config模块的完成不必重新排序,因其一次仅发布一个请求TLP。
FLR模块通过PCIe链路检测已接收的Function Level Reset并通知应用程序逻辑和Scheduler模块。
可在 Intel® Quartus® Prime Pro Edition的Parameters Editor中通过任意组合GUI选择以单独使能或禁用Bursting Master和Slave,以及Read和Write Data Mover模块。
Endpoint应用程序通常需要Bursting Master来使能主机为其他模块提供信息。