Vivado中提供了多种Debug的操作方式,下面就来总结一下: 1. 代码中例化ILA IP核 第一种,直接例化ILA IP核:
需要探测多少个信号,信号的位宽是多少,直接选择即可:
下面界面可以选择探测信号宽度以及触发方式:
可谓之简单粗暴,如果没人干预你,就这样用也没关系。之后直接在程序中例化即可。 2. 通过网表标记 综合后生成网表,在网表中设置Debug:Mark Debug。
或者在综合后的原理图中Mark Debug,这和网表debug是一致的:
在标记Debug后,就等于选择了需要debug的信号,之后在综合设置里设置Debug参数即可:
选择需要Debug的信号,设置时钟域以及触发方式等:
选择采样深度:
之后,重新综合,实现生成bit流文件即可完成debug,准备上板子吧。 注意:有些信号能够Mark Debug,有些则不能,例如模块直接的输入信号不能:
它经过一个Buf之后就可以:
最后的输出也不能?
哎呀, 具体什么个原则我也不知道了,不如就直接在网表中试试吧,如果不行,就找类似的代替呗。 综合后,也许你说自己找不到原理图在哪里,那就看这里:
方式二已经很实用了吧,不用修改代码! 3. 代码中Mark_debug
第三种还要在代码中加入标记:
之后综合,在set up debug,之后的操作同方式二。
|