Avalon® 存储器映射(Avalon-MM) Intel® Stratix® 10 Hard IP+用于 PCI Express* 解决方案用户手册

ID 683527
日期 9/30/2019
Public
文档目录

3.1. 块说明

图 9. 顶层块结构图
注: Config Slave模块仅存在于Root Port类型中

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)。

注: Config Slave模块仅存在于Root Port类型中。而Root Port模式属于未来发布的增强功能,因而本次发布的 Intel® Quartus® Prime Pro Edition中不支持此功能。

Response Reordering模块对通过PCIe链路接收以用于Bursting Slave和Read Data Mover的完成TLP进行组装和重新排序。该模块根据完成的标记来规定完成的路线(请参阅“标记”以获得有关标记分配的信息)。

发送到Config模块的完成不必重新排序,因其一次仅发布一个请求TLP。

FLR模块通过PCIe链路检测已接收的Function Level Reset并通知应用程序逻辑和Scheduler模块。

可在 Intel® Quartus® Prime Pro EditionParameters Editor中通过任意组合GUI选择以单独使能或禁用Bursting Master和Slave,以及Read和Write Data Mover模块。

Endpoint应用程序通常需要Bursting Master来使能主机为其他模块提供信息。