对于FPGA调试,主要以Intel FPGA为例,在win10 Quartus ii 17.0环境下进行仿真和调试,开发板类型EP4CE15F17。主要包括一下几个部分:
- FPGA的调试-虚拟JTAG(Virtual JTAG)
- FPGA的调试-在线存储器内容编辑工具(In-system Memory Content Editor)
- FPGA的调试-内嵌逻辑分析仪(SignalTap)
- FPGA的调试-LogicLock
- FPGA的调试-调试设计的指导原则
上述内容主要参考《通信IC设计》,有兴趣的可以自己购买书籍进行研读。
调试设计的指导原则
对于FPGA的调试而言,无论是Altera还是Xilinx等产商的器件。均需要遵循以下几个原则:
1)提前选择片上调试方案,并规划存储器和逻辑要求,确定I/O引脚连接和电路板连接方式。
2)使用SignalTap II/Chipscope这一类嵌入式逻辑分析仪进行调试时,需要保留一定的内部存储资源,以便大量存储采集数据。
3)如果使用嵌入式逻辑分析仪、逻辑分析仪接口、在线存储器内容编辑、虚拟JTAG宏等功能,就需要在西永和电路板的规划中专门设计对应的JTAG接口资源。
4)要使用虚拟JTAG宏功能来实现定制调试的应用,需要在HDL代码中对其例化,作为设计过程中的一部分。很多高级的调试功能都要用到JTAG HUB功能,如多个逻辑观测实体或者虚拟JTAG等,因此在FPGA资源规划时,需要专门保留一定的逻辑资源,用于实现该功能。
5)要逐渐使用调试工具,减少编译时间,开启渐进式编译,这样就不必重新编译设计来更改调试工具。
6)确保电路板能支持调试模式,在此模式下调试信号不影响系统运行。
7)保留I/O引脚,以便于通过逻辑分析仪接口或者额外的信号引脚进行调试。这样就不必在以后为了适应调试信号而更改设计或者电路板。
8)按照外部逻辑分析仪或者混合信号示波器的要求来整合调试引脚头或者Mictor接头。