YAOTU INSIGHTS

【FPGA学习】在线调试方法(四)

【FPGA学习】在线调试方法(四)
1. 在线调试简介1.1 在线调试工具的使用在仿真的时候时钟的产生是由软件产生若因时钟不起振导致错误单独使用在线调试无法实现调试工具示波器逻辑分析仪在线逻辑分析仪不同厂商的在线逻辑分析仪FPGA厂商FPGA开发工具在线调试工具XilinxVivadoILAIntegrated Logic AnalyzerXilinxISEChipScopeAlteraQuartus IISignalTap II紫光同创PDSDebugger………………在线调试工具连线示意图如下图所示通过片内的BSRAM完成数据的存储通过JTAG接口与开发工具链接实现逻辑显示的功能2 Xilinx在线调试方案Vivado工具集成了逻辑分析仪ILA用于替换外部的逻辑分析仪添加ILA核和VIO核实现在线调试通过JTAG接口和PC链接2.1 ILAILAIntegrated Logic Analyzer集成逻辑分析仪主要用于监控逻辑内部信号和端口信号VIOVirtual Input/Output虚拟输入输出实时监控和驱动逻辑内部信号和端口信号主要使用ILA在FPGA内部具有一个XADC内核可以通过这个硬核采集对应的电压2.2 添加ILA的方法添加ILA IP核在代码中对ILA IP核进行例化在原理图或者网表文件中添加“mark debug”属性手动地在XDC约束文件中编写对应的TCL XDC调试命令上述为三个方法2.3 通过XADC查看各部分电压1. 打开任务部分的硬件管理2. 链接板子3. 双击XADC2.4 ILA在线调试工具的使用2.4.1 通过添加ILA IP核的调试方式点击IP catalog搜索ILA设置内容这里主要是设置了探针的数量以及采样的深度采样深度类似于数据缓存宽度可以查看对应的数据的长度上述的为通用设置此部分主要设置数据的位宽设置ooc也就是每个IP核都单独编译上面那个是全编译比较慢以及对应的核心数这里也是保持默认此时这部分进行编译等待完成找到对应的IP核的例化模板按照对应检测的端口对变量进行例化此时源文件下出现了对应的ILA文件生成比特流等待综合执行完成因为加入了debug文件所以编译时间上会长很多点击下载下载完成后会出现对应的调试界面调试界面上面的是调试的按钮下面部分是触发条件的选择可以根据细节具体查看在完成了调试后还需要将对应的例化代码删除若出现无法识别调试文件的报错可以手动将Debug路径移除防止占用资源也就是这部分2.4.2 通过网表中添加信号的调试方式如下图所示找到对应的连线点击加入Debug即可或者通过网络进行添加或者通过代码的方式添加Debug这里是对应的debug打开方式以及对应的debug代码的存在方式存在于xdc文件中添加信号后后面的操作与之前相同只是不同的导出IP核的方法补充在操作的过程中如果不小心删掉了窗口可以通过此地方来进行打开对应的窗口