使用软件: Vivado
开发板: EGO1采用Xilinx Artix-7系列XC7A35T-1CSG324C FPGA
使用程序:按键案例
ILA详细使用方法
一、ILA简介
为了验证代码的正确性和不同条件下的可靠性,常通过仿真进行验证,但是仿真时间较长,工作量较大,有些驱动模块的模型无法获取的情况下,仿真很难进行,所以采用ILA工具,来实时抓取FPGA内部数字信号的波形,分析逻辑错误的原因,帮助debug。
二、ILA的使用方法
下面将分别介绍三种创建ILA调试环境的方法:
方法1:使用IP核创建ILA调试环境
方法2:使用 Debug 标记创建 ILA
方法3:使用路径标记和Set up debug 菜单创建 ILA 调试环境
方法1 — 使用IP核创建ILA调试环境
创建ILA IP核
- 点击左侧[PROJECT MANAGER]栏–>[IP Catalog]或者菜单栏下[Window]–>[IP Catalog],然后在右侧出现的[IP Catalog]窗口下搜索[ILA],双击选择[Debug]下的[ILA]进行IP配置,操作步骤如下图所示:
2. ILA IP的设置
(1)Documentation:IP 相关文档入口,其中的[Product Guide] 是 IP 手册查看入口,[Change Log] 是 IP 版本更新记录,[Product Webpage]是 IP 相关介绍的网页版
(2)IP Location:设置 IP 的存放路径入口,点击出现如下图所示窗口,在窗口里可以通过点击“…”设置更换存放路径,默认是存放在工程路径下的…<工程名>.srcs\ sources_1\ ip,这里我们就保持默认。
(3)Switch to Default:点击后所有的设置恢复到默认值。
(4)Component Name:设置生成 IP Core 的名称,这里保持默认设置。
(5)这里是一个提示,提示通过该界面设置最多可设置 64 个探针,如果想设置更多的探针需要使用 Tcl 脚本命令去设置,具体用法可以查询 IP 手册。
(6)ILA 探针接口类型设置
Native:常规普通接口模式
AXI:AXI 接口模式,用于调试 AXI 接口信号
(7)Number of Probes:探针数量设置,要观察3个信号,所以这里设置探针数量为3。
(8)Sample Data Depth:采样数据深度,设置的数值越大,采样的数据越多,看到的波形数据越多,但是最终占用的资源也会越多,并不是设置的越大越好。从下拉框也能看出最大也只能设置为 131072,这个根据实际需求进行合适的设置即可,我们这里选择设置 4096。
(9)Same Number of Comparators for All Probe Ports:这里是设置相同探针接口的 Comparators 的个数,不勾选,下面的 Number of Comparators 就会消失。默认勾选,后面的参数也保持默认,我们使用其基本功能。
(10)Trigger Out Port:触发输出端口,可用于 ILA 模块的级联或一些高级功能,
具体使用参考 IP 手册,这里保持默认不勾选。
(11)Trigger In Port:触发输入端口,可用于手工设置添加触发信号或进行 ILA
模块的级联或一些高级功能,具体使用参考 IP 手册,这里保持默认不勾选。
(12)Input Pipe Stages:设置待探测信号打拍次数,如下图所示,可设置数值0~6,
一般情况下,采样时钟和探测信号是一个时钟域下,这里可以默认设置为 0 即
可。
(13)Capture Control:这里勾选后可在调试查看波形窗口进行对 Capture mode
的设置,如果不勾选后面有关 Capture mode 就不可修改,这里勾选。
(14)Advanced Trigger:这里勾选后可在调试查看波形窗口进行对 Trigger mode
的设置,如果不勾选后面有关 Trigger mode 就不可修改,这里勾选。