仅对英特尔可见 — GUID: lbl1416435990511
Ixiasoft
仅对英特尔可见 — GUID: lbl1416435990511
Ixiasoft
10. Avalon-MM测试台和设计实例
本章节介绍端点设计实例,包括测试台,BFM和测试驱动器模块。可使用Quick Start Guide(快速入门)中介绍的设计流程创建此设计实例。该设计台使用您在Quick Start Guide中指定的参数。
该测试台可对最高x16系列进行仿真。但是,提供的BFM仅支持x1 - x8链接。可通过下行训练到x8倍速来支持x16系列。为仿真所有x16数据通路(lane)系列,可创建一个仿真模块以用于Avery测试台(testbench)。该选项当前仅适用于 Avalon® -ST系列。请参阅AN-811: Using the Avery BFM for PCI Express Gen3x16 Simulation on Intel Stratix 10 Devices获取更多信息。
当配置成端点实例时,测试台例化设计实例和Root Port BFM,并提供如下功能:
- 一个配置例程,用于设置Endpoint中的所有基本的配置寄存器。此配置支持Endpoint应用程序成为PCI Express事务的对象和启动程序。
- Verilog HDL处理过程接口启动Endpoint的PCI Express事务。
该测试台仿真一个单Endpoint DUT。
该测试台使用一个测试驱动器模块,altpcietb_bfm_rp_gen3_x8.sv,以运用Endpoint BFM中的目标存储器和DMA通道。测试驱动器模块显示来自Root Port Configuration Space寄存器的信息,以便您可以关联通过参数编辑器指定的参数。Endpoint模型由结合了DMA应用程序的Endpoint系列组成。
自 Intel® Quartus® Prime 18.0发布起,可生成一个将IP配置为Root Port的 Intel® Arria® 10 PCIe设计实例。该情况下,测试台例化Endpoint BFM和JTAG主桥。
该仿真使用JTAG主BFM启动CRA读写事务以执行总线枚举并配置端点。该仿真还使用JTAG主BFM驱动TXS Avalon® -MM接口执行存储器读写事务。
您的Application Layer设计可能需要处理以下无法使用Intel测试台和Root Port BF进行创建的情况:
- 无法生成或接收Vendor Defined Message。一些系统成成Vendor Defined Message且Application Layer必须旨在处理这些消息。Hard IP块将这些消息传递到Application Layer,但大多数情况下会将其忽略。
- 仅处理已接收的读请求,而这些请求的量或小于或等于通过参数编辑器对Device > PCI Express > PCI Capabilities > Maximum payload size的当前设置。很多系统能够处理较大读请求并以多个完成返回。
- 总是返回每个读请求的单个完成。一些系统将完成按每64字节地址边界进行分割。
- 始终按照读请求的发布顺序返回完成。而某些系统生成无序完成(completions out-of-order)。
- 无法生成0长度读请求,而一些系统将其生成以作为某些写事务之后的刷新请求(flush request)。Application Layer必须能够生成0长度读请求完成。
- 使用固定credit分配。
- 不支持奇偶校验。
- 使用Configuration Space Bypass模式或Single Root I/O Virtualization(SR-IOV)时不支持可用的多功能设计。