仅对英特尔可见 — GUID: qwx1636679661534
Ixiasoft
3.5. 系统控制台控制设计实例的硬件测试
使用 Intel® Quartus® Prime软件中的系统控制台控制执行以下命令运行设计实例的硬件测试。
注: 该硬件测试假定您的设计已经以system console控制的双工模式配置。如果您使用的是单工模式设计,请自行修改。
- 从 Intel® Quartus® Prime启动System Console工具(Tools > System Debugging Tools > System Console)。
- 在TCL Console命令提示中,键入get_service_paths master,可打印连接JTAG链的器件清单。
- 在您选择的任意文本编辑器中,打开位于ed/hwtest/目录中的main.tcl脚本,并找到以下命令行。
set master_index [expr {$master_list_length - 1}]
- 根据需要调整master_index偏移量来反映您的JTAG链配置,以便master_index始终指向 Intel® Agilex™ 器件并保存文件。
图 10. 反映JTAG链的master_index配置实例
- 在TCL Console命令提示中,浏览到ed/hwtest/目录(cd../ed/hwtest/)并执行main.tcl脚本(source main.tcl)。TCL Console窗口应当如下图所示。
图 11. 源main.tcl
- 在命令提示中键入start_basic_test以执行链路建立和测试规程。
该测试例程会执行一组指令以将TX和RX上的sysref设置为周期性模型,并检查PRBS模型,配置F-Tile JESD204C IP PHY内部串行环回模式,和报告链路状态。
下图说明成功建立链路的期望值,以及以数据率24.33024 Gbps对L=8,M=2和F=1变体的测试。图 12. System Console中的成功测试表 21. main.tcl System Console脚本中的规程下表说明main.tcl中有助于调试的规程。 规程 值 描述 get_service_paths {master} 报告连接JTAG链的所有器件。使用该信息将主索引设置指向 Intel® Agilex™ 器件。 get_master_index N/A 设置目标器件主索引。使用get_service_paths主索引决定JTAG链中 Intel® Agilex™ 器件的偏移量,并在此规程中相应编辑此偏移量。 start_basic_test N/A 该测试例程会执行一组指令以将TX和RX上的SYSREF设置为周期性模型,并检查PRBS模型,配置F-Tile JESD204C IP PHY内部串行环回模式,配置PMA和报告链路状态。 reset N/A 全局复位。 xcvr_lpbk {0,1} 0: 禁用内部串行环回
1: 使能内部串行环回
testmode {ramp, prbs7, prbs9, prbs15, prbs23 } ramp:将模式生成器和检查器设置为斜坡模型
prbs7-23:将模式生成器和检查器设置为各自的PRBS模式
sysref_type {oneshot, periodic, gperiodic } 设置SYSREF类型 eval_test N/A 1. 加载状态。
2. 逐个数据通路检查。
3. 显示TX和RX寄存器值:
- rst_sts0:
- Bit 0 – CORE PLL LOCKED
- rx_status3:
- Bit 0-15 – RX CDR LOCKED
- rx_status4:
-
Bit 0-15 – SH LOCKED
-
- rx_status5:
- Bit 0-15 – EMB LOCKED
- tst_err0:
- Bit 0 – PATTERN CHECKER ERROR
- Bit 1 – TX LINK ERROR
- Bit 2 – RX LINK ERROR
- Bit 3 – COMMAND PATTERN CHECKER ERROR
read_err_status N/A 读取F-Tile JESD204C IP错误状态寄存器。 clear_err_status N/A 清除F-Tile JESD204C IP错误状态寄存器。 read_rx_status0 N/A 读取F-Tile JESD204C IP rx_status0寄存器。 read_tx_status0 N/A 读取F-Tile JESD204C IP tx_status0寄存器。 read_rx_syncn_sysref_ctrl N/A 读取F-Tile JESD204C IP syncn_sysref_ctrl寄存器。 wait_seconds {integer}(整数) 等待 {integer}(整数)秒。 wait_minutes {integer}(整数) 等待 {integer}(整数)分钟。 - rst_sts0: