在完成核配置后,通过在 Vivado Tcl 控制台中执行以下命令来启用完成器模型:
set_property-dict [list CONFIG.completer_model {true}]
[get_ips <PCIe IP Core Name>]
当为核配置 512 位 AXI 接口后,您可选择使用此完成器模型测试激励文件,此文件可配合您的设计用于实践总线总控功能(从端点 DUT 到根端口模型的上游方向流量)。
完成器模型可提供根端口侧存储器阵列 (DATA_STORE_2),此阵列可通过存储器写入传输事务来写入,并可通过从端点 DUT 执行存储器读取传输事务来读取。此存储器可通过根端口模型模块 (xilinx_pcie_uscale_rp.v) 顶层提供的 2 个不同参数来进行配置。
- RP_BAR[63:0]
- 提供 DATA_STORE_2 阵列的第 1 个字节的地址。
- RP_BAR_SIZE[5:0]
- 提供 DATA_STORE_2 阵列的字节地址位 -1 的数值。例如,值为 11 可提供 2^(11+1) 字节或 4 KB 可用存储器。
将根据根端口模型中设置的上述 2 个参数、字节使能、4K 边界、最大有效载荷大小和最大读取请求大小规则来检查每个存储器传输事务与对应的存储器阵列位置。返回的每个存储器读取完成包都将根据最大有效载荷大小和读取完成边界规则来进行拆分。完成器模型还支持长度为 0 的写入数据包(拦截数据包但不会存储其有效载荷数据)和长度为 0 的读取数据包(返回含 1 个 DW 的有效载荷数据)。