FPGA板级调试方法与原则

FPGA调试借助于示波器和逻辑分析仪是最常见的方法。

本文列举Quartus II支持的五种较实用的调试方法。

当然还有一些虚拟JTAG调试和LogicLock逻辑锁定等调试方法。
在这里插入图片描述

1.信号探针(signalProbe)法:

信号探针方式是不影响原有设计功能和布局布线,只是通过增加额外布线将需要观察调试的信号连接到预先保留或暂时不使用的I/O接口,该方式相应得到的信号电平会随布线有一定的延时,不适合于高速,大容量信号观察调试,也不适合做板级时序分析。

它的优势在于不影响原有设计,额外资源消耗为零,调试中也不需要保持连接JTAG等其他线缆,能够最小化编译或重编译的时间。

这种信号探针法(signalProbe)使用条件有:

1.首先得有多余的I/O管脚;
2.器件是FPGA或CPLD芯片;
3.必须要有外部测试设备,比如逻辑分析仪,示波器。(需要外部设备来观察会导致信号具备一定的时延和不完整性,个人不常用)

具体操作参考博文地址:

https://blog.csdn.net/huan09900990/article/details/78908748

2.在线逻辑分析仪(signalTap II)

SignalTap II在线逻辑分析仪很大程度上可以替代昂贵的逻辑分析仪,为开发节约成本,同时也为调试者省去了原本繁琐的连线工作,而有些板级连接的外部设备很难观察到的信号都能够轻松捕获。如果对设计进行模块的区域约束,也能够使在线逻辑分析仪对设计带来的影响最小化。在线逻辑分析仪的采样存储深度和宽度都在一定程度上受限于FPGA器件资源的大小。

使用该方式必须通过JTAG接口,它的采样频率可以达到200MHZ(若器件支持)以上,不用像外部调试设备一样担心信号的完整性问题。

具体操作参考博文地址:

https://blog.csdn.net/woshiyuzhoushizhe/article/details/83007026

推荐使用在线逻辑分析仪(signalTap II)

3.逻辑分析仪接口(Logic Analyzer Interface )法

这里的逻辑分析仪接口是针对具有外部逻辑分析仪的。调试者可以设置FPGA器件内部的多个信号映射到一个预留或暂时不用的I/O口上,从而通过较少的I/O口就能够观察到FPGA多组内部信号。

该法与第一种信号探针法类似,因此具备信号探针法的缺点,个人不常用。

4.在线存储内容编辑法(In-System Memory Content Editor)

在线存储内容编辑是针对设计中例化的内嵌存储器内容或常量的调试。可以通过这种方式在线重写或者读出工程中内嵌存储器内容或常量。对于某些应用可以通过在线更改存储器内容后观察响应来验证设计,也可以在不同激励下在线读取当前存储内容来验证设计。总之,这种方法对存储器的验证具有很大帮助。

但是首先很遗憾,目前该功能只支持单口RAM以及ROM,不支持双口RAM。

具体操作参考博文地址:

https://blog.csdn.net/huan09900990/article/details/78890356

5.在线源和探针法(In-System Sources and Probes)

这种方法是通过例化一个定制的寄存器链到FPGA器件内部,这些寄存器链通过JTAG接口与器件通信,能够驱动器件内部的某些输入节点信号,采样某些输出节点信号,这就使得调试者不需要借助外部设备就能够给FPGA添加激励并观察响应。

具体操作参考博文地址:

https://blog.csdn.net/huan09900990/article/details/78893435

对于FPGA调试而言,

(1)设计前,首先就要选择好片上调试方案,并规划好存储器和逻辑要求,确定I/O引脚连接和电路板连接方式。

(2)对于使用器件自带的如SignalTap II这一类嵌入式逻辑分析仪进行调试时,需要保留一定的内部存储器资源,以便大量存储采集数据。

(3)如果要使用嵌入式逻辑分析仪,逻辑分析接口,在线存储器内容编辑和虚拟JTAG宏功能,就需要在系统和电路板的规划中专门设计对应的JTAG接口。

(4)要逐渐使用调试工具,减少编译时间,开启渐进式编译。这样就不必重新编译设计来更改调试工具。

(5)确保电路板能支持调试模式,在此模式下调试信号不影响系统运行。

(6)保留I/O引脚,以便于通过逻辑分析仪接口或者额外的信号引脚进行调试。这样就不必在以后为了适应调试信号而更改设计或者电路板。

  • 5
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
FPGA板级确认测试是在将FPGA设计部署到实际硬件板上之前进行的一系列测试。以下是一些常见的FPGA板级确认测试要求: 1. 电源测试:检查FPGA板的电源供应是否正常,包括检测电压稳定性、电流负载能力等。 2. 时钟测试:验证FPGA板的时钟源是否正确连接并工作正常,包括时钟频率、相位稳定性等方面的测试。 3. 通信接口测试:验证FPGA板与其他系统或设备之间的通信接口是否正常工作,包括UART、SPI、I2C、Ethernet等接口的功能和兼容性测试。 4. 输入/输出端口测试:验证FPGA板的输入和输出端口是否按照设计要求工作,包括验证数据传输的正确性、带宽、延迟等方面的测试。 5. 存储器测试:检查FPGA板上的存储器模块(如RAM、Flash等)是否正常工作,包括读写操作的正确性、数据一致性等方面的测试。 6. 外设测试:验证与FPGA板连接的外设设备是否正常工作,如传感器、执行器等,以确保与外部设备的交互功能正常。 7. 温度和环境测试:检查FPGA板在不同温度和环境条件下的性能和稳定性,以确保在各种工作环境下的可靠性。 8. 容错和异常情况测试:测试FPGA板在异常情况下的处理能力,包括错误检测与纠正、容错机制等方面的测试。 9. 仿真验证对比测试:将FPGA设计在实际硬件上进行测试,与仿真验证结果进行对比,以验证设计的准确性和可靠性。 以上是一些常见的FPGA板级确认测试要求,具体的要求还会根据项目的需求和设计的复杂性而有所差异。在进行板级确认测试时,需要制定详细的测试计划和测试用例,并记录测试结果以便后续分析和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值