“PCIe DMA”选项卡如下图所示。
图 1. “PCIe DMA”选项卡
- “Descriptor Bypass for Read/Write (H2C/C2H)”(对应读取/写入的描述符旁路 (H2C/C2H))
- 有两个选项可供选择。注释: 在此模式(内部模式)下,DMA 不会绕过任何 H2C 或 C2H 描述符。
- “Descriptor bypass and Internal”(描述符旁路和内部)
- 在此模式下,启用旁路输出和旁路输入的描述符端口。根据上下文设置,可在描述符旁路输出上传出 H2C 或 C2H 描述符。用户可在描述符旁路输入端口上传入描述符。
- “C2H Stream Completion”(C2H 串流完成)
-
- “C2H Stream Completion Color bits”(C2H 串流完成颜色位)
- 完成条目中的完成颜色位的位置。对于 64 位完成,从位 0 到 511,有 7 个寄存器可用于编程。您可对这些位进行编程,并生成 BIT 文件。在 DMA 传输器件,输入管脚
s_axis_c2h_cmpt_ctrl_color_idx[2:0]
用于判定要使用的颜色位的位置。在寄存器 0 中选中默认位元位置 1。
- “C2H Stream Completion Error bits”(C2H 串流完成错误位)
- 完成条目中的完成错误位的位置。对于 64 位完成,从位 0 到 511,有 7 个寄存器可用于编程。您可对这些位进行编程,并生成 BIT 文件。在 DMA 传输期间,输入管脚
s_axis_c2h_cmpt_ctrl_err_idx[2:0]
用于判定要使用的错误位的位置。在寄存器 0 中选中默认位元位置 2。
- “Performance options”(性能选项)
-
- “Pre-fetch cache depth”(预取高速缓存深度)
- 预取高速缓存最多支持 64 个队列。选择 16 或 64(默认 16)。预取高速缓存可以在任意给定时间支持相应数量的队列保持活动状态。当某一个活动队列为该队列的所有包完成提取并交付所有描述符后,它就释放高速缓存条目以供其他活动队列使用。高速缓存大小越大,支持的活动队列数量越多,但面积也将增大。
- “Data Protection”(数据保护)
- 包括奇偶校验和端到端数据保护。默认情况下,不启用数据保护。
不启用“Data Protection”时:
- 无需在 C2H 数据和控制接口上提供任何 CRC/ECC 值。
- 这将不会记录任何错误,也不会丢弃任何数据包。
- 用户应将 ECC 和 CRC 端口接地。
- CMPT 奇偶校验不受此参数影响。 注释: 您必须始终在 CMPT 上提供奇偶校验。