由于英特尔® Quartus® Prime Pro Edition 软件 22.2 版本存在问题,F-tile 以太网 英特尔® FPGA Hard IP PTP 变体的设计示例中提供的“ptp_fw.tcl”脚本可能会生成不正确的 Tx 或 Rx tam_delta 值。仅当脚本在 Windows 操作系统上运行时,如果 tam_delta 值占用超过 32 位,则会出现此问题。
要变通解决此问题,请执行以下步骤:
1. 打开位于<生成的示例设计文件夹 >/hardware_test_design/hwtest/altera/ptp/ptp_fw.tcl 中的 PTP 固件脚本。
2). 查找 并 替换 以下代码行:
a). 从 集合bslip_p_dlpulse [格式 0x%X ...
要 设置 bslip_p_dlpulse [格式 0x%lX ...
b). From set tx_tam_delta [format 0x%X [expr $tx_tam_n - $tx_tam_0]]
要 设置 tx_tam_delta [format 0x%lX [expr $tx_tam_n - $tx_tam_0]]
c). From set tx_tam_delta [format 0x%X [expr $rx_tam_n + $billion_ns_fns - $tx_tam_0]]
要 设置tx_tam_delta [format 0x%lX [expr $tx_tam_n + $billion_ns_fns - $tx_tam_0]]
d). From set rx_tam_delta [format 0x%X [expr $rx_tam_n - $rx_tam_0]]
要 设置 rx_tam_delta [format 0x%lX [expr $rx_tam_n - $rx_tam_0]]
e). From set rx_tam_delta [format 0x%X [expr $rx_tam_n + $billion_ns_fns - $rx_tam_0]]
要 设置 rx_tam_delta [format 0x%lX [expr $rx_tam_n + $billion_nsfns - $rx_tam_0]]
f). 从 集合rx_spulse_offset_0 [格式 0x%X ...
要 设置 rx_spulse_offset_0 [格式 0x%lX ...
从 集合rx_spulse_offset_1 [格式 0x%X ...
要 设置 rx_spulse_offset_1 [格式 0x%lX ...
3). 保存 文件。
从英特尔® Quartus® Prime 专业版软件版本 22.4 开始,此问题已修复。