fpga内嵌逻辑分析仪使用方法

文章目录

  • 前言
  • 一、方法1 — 使用 IP 核创建 ILA 调试环境
    • 1、创建 ILA ip 核
    • 2、进行例化
    • 3、生成比特流文件
    • 4、下载程序
    • 5、进行在线调试
  • 二、方法2 — 使用 Debug 标记创建 ILA
    • 1、Debug 标记相关信号
    • 2、综合操作
    • 3、设置 Set Up Debug
    • 4、生成比特文件
    • 5、下载程序
    • 6、进行在线调试


前言

本文基于上文的工程文件,讲述了 fpga 内嵌逻辑分析仪的使用方法,内嵌逻辑分析仪是在 fpga 开发调试过程中一个很重要的一个工具,这个工具可以帮助我们去观察内部的一些信号它的一些变化,然后帮助我们去调试从而找到问题。


一、方法1 — 使用 IP 核创建 ILA 调试环境

1、创建 ILA ip 核

①、点击左侧 PROJECT MANAGER 栏 –> IP Catalog 或者菜单栏下 Window –> IP Catalog 然后在右侧出现的 IP Catalog 窗口下搜索 ILA,双击选择 Debug 下的 ILA 进行 IP 配置操作步骤如下图所示
fpga内嵌逻辑分析仪使用方法_第1张图片
②、General Options 参数设置

  • Component Name:设置生成 IP Core 的名称,这里设置成 ila
  • Number of Probes:探针数量设置,要观察 2 个信号(一个是计数器,一个是 led 灯),所以这里设置探针数量为 2
  • Sample Data Depth:采样数据深度,设置的数值越大采样的数据越多看到的波形数据越多但是最终占用的资源也会越多并不是设置的越大越好。这个根据实际需求进行合适的设置即可我们这里选择设置 1024。
    fpga内嵌逻辑分析仪使用方法_第2张图片

③、Probe_Ports(0…7) 参数设置
Probe Width:探针数据信号的位宽设置,我们需要对一个 32 位的计数器和一个 1 位的 led 灯信号进行在线观察,因此这里将 PROBE0 位宽设置为 32,PROBE1 位宽设置为 1,并且可以看到左侧的图形器件引脚也跟着进行变化。点击 OK。
fpga内嵌逻辑分析仪使用方法_第3张图片
④、会弹出一个是否在我们的一个路径去创建 ip
fpga内嵌逻辑分析仪使用方法_第4张图片
⑤、点击 Generate,生成 IP 核
fpga内嵌逻辑分析仪使用方法_第5张图片

⑥、点击 OK
fpga内嵌逻辑分析仪使用方法_第6张图片
⑦、此时在 Design Sources 里面可以看到新增的一个 ila.xci 文件,点击左侧的 “>” 展开它的层级关系。
fpga内嵌逻辑分析仪使用方法_第7张图片
⑧、展开之后我们就可以看到顶层 .v 文件,打开 ila.v 这个文件我们可以看到 ila 模块名字
fpga内嵌逻辑分析仪使用方法_第8张图片

2、进行例化

①、下一步我们要做的就是例化,在 led.v 文件里面 endmodule 前添加下面的代码,点击保存后可以看到新的层级关系,led 把 ila 包含进来了,如下图所示

ila ila_inst
(
    .clk     (sys_clk),
    .probe0  (timer_cnt),
    .probe1  (led)
);

fpga内嵌逻辑分析仪使用方法_第9张图片

3、生成比特流文件

①、点击 Generate Bitstream
fpga内嵌逻辑分析仪使用方法_第10张图片
②、在弹出的对话框中可以选择任务数量,这里和 CPU 核心数有关,一般数字越大,编译越快,点击 “OK”
fpga内嵌逻辑分析仪使用方法_第11张图片

4、下载程序

①、点击 Open Hardware Manager
fpga内嵌逻辑分析仪使用方法_第12张图片
②、点击 Auto Connect
fpga内嵌逻辑分析仪使用方法_第13张图片
③、右键 xc7z020_1 -> Program Device
fpga内嵌逻辑分析仪使用方法_第14张图片
④、可以发现这里多了一个 led.ltx 文件,这是一个描述文件,描述的内容就是我们的逻辑分析仪与哪些信号进行连接,然后点击 Program
fpga内嵌逻辑分析仪使用方法_第15张图片
⑤、点击 Program 后可以看到这样的一个界面
fpga内嵌逻辑分析仪使用方法_第16张图片

5、进行在线调试

①、点击 Run trigger for this ILA core,并将计数器以 10 进制方式显示,c+rl + 鼠标滚轮调整界面,可以看到如下图所示:
fpga内嵌逻辑分析仪使用方法_第17张图片
这些数据都是真实的数据,不同于仿真,我们目前是在板子上进行运行,可以看到实际的运行的情况
②、做一个触发
fpga内嵌逻辑分析仪使用方法_第18张图片
以计数器做一个触发
fpga内嵌逻辑分析仪使用方法_第19张图片

根据计数器的最大值做一个触发
fpga内嵌逻辑分析仪使用方法_第20张图片
③、再点击 Run trigger for this ILA core,可以看到触发到的情况,以及 led 从 0 变为 1
fpga内嵌逻辑分析仪使用方法_第21张图片
此外为了方便我们观察波形情况,当我们想看后面的数据多一些可以把 Trigger poisition in window 的值调小一点,如果向看前面的数据可以把 Trigger poisition in window 的值调大一些
fpga内嵌逻辑分析仪使用方法_第22张图片
④、也可以尝试一下循环触发的模式,先点击 Toggle auto re-trigger mode for this ILA core 后再点击 Run trigger for this ILA core
fpga内嵌逻辑分析仪使用方法_第23张图片
可以看到进行循环触发,且左侧 hw_ila_1 显示了逻辑分析仪的状态,有空闲状态、等待触发状态、触发成功状态
fpga内嵌逻辑分析仪使用方法_第24张图片

二、方法2 — 使用 Debug 标记创建 ILA

1、Debug 标记相关信号

①、先将上述 led.v 中新增的 ila 例化代码屏蔽
fpga内嵌逻辑分析仪使用方法_第25张图片
②、点击 Language Templates,弹出的窗口点击搜索,输入 mark 会出现 Mark Signal for Debug(MARK_DEBUG),点击 Mark Signal for Debug(MARK_DEBUG),复制 Preview 中所显示的 (* MARK_DEBUG=“true” *)
fpga内嵌逻辑分析仪使用方法_第26张图片
③、粘贴到 led.v 中,按照下图方式粘贴,并进行保存
fpga内嵌逻辑分析仪使用方法_第27张图片

2、综合操作

①、点击 Run Synthesis,弹出的窗口点击 OK
fpga内嵌逻辑分析仪使用方法_第28张图片
②、点击 “OK”
fpga内嵌逻辑分析仪使用方法_第29张图片
③、综合完成,点击 Cancel
fpga内嵌逻辑分析仪使用方法_第30张图片

3、设置 Set Up Debug

①、点击 Set Up Debug,弹出的窗口选择 Next
fpga内嵌逻辑分析仪使用方法_第31张图片
②、这里我们就可以看到我们源文件里面添加的调试的信息,然后点击 Next
fpga内嵌逻辑分析仪使用方法_第32张图片
③、下面也是设置采样的数据深度,我们保持默认,点击 Next
fpga内嵌逻辑分析仪使用方法_第33张图片
④、点击 Finish
fpga内嵌逻辑分析仪使用方法_第34张图片
⑤、保存一下设置,弹出的窗口点击 OK
fpga内嵌逻辑分析仪使用方法_第35张图片
⑥、我们再看一下 led.xdc 约束文件,并 Reload 以下,可以看到新增了如下信息
fpga内嵌逻辑分析仪使用方法_第36张图片
这些信息代表我们创建一个一个 debug_core ila,就是把里面的一些信号连接在一起了

4、生成比特文件

①、点击 Generate Bitstream,弹出的窗口点击 Yes
fpga内嵌逻辑分析仪使用方法_第37张图片
②、选择 Open Hardware Manager 并点击 OK
fpga内嵌逻辑分析仪使用方法_第38张图片

5、下载程序

同第一种方法

6、进行在线调试

同第一种方法,操作及界面也完全相同
fpga内嵌逻辑分析仪使用方法_第39张图片


我的qq:2442391036,欢迎交流!


你可能感兴趣的:(zynq-7020,fpga开发,逻辑分析仪)