当前位置:   article > 正文

Vivado的ila触发器详解_ila循环触发

ila循环触发

ILA (Integrated Logic Analyzer)集成逻辑分析器:即 Vivado 的在线逻辑分析仪,

现在我们写一段测试代码,随便一段就可以,例如下面一段代码

  1. module top(
  2. input sysclk,
  3. input rst_n,
  4. input key1,
  5. input key2,
  6. output reg [3:0] led
  7. );
  8. wire key_out1;
  9. wire key_out2;
  10. reg[3:0] led_water;
  11. reg[3:0] led_jump;
  12. reg[31:0] timer;
  13. reg[31:0] timedelay; //计时0.5s 1s 2s 5s
  14. reg[2:0] dt; // 时间档位

这里笔者定义了两个单击按键,分别可以控制开发板上的led灯的流动样式和速度。

当key_out1键信号输出我们可以改变开发板的led灯样式,当key_out2按键信号输出可以更改led灯的速度.

然后我们点击vivado界面左边的IP Catalog

在右面弹出的界面,搜索框搜索ila,双击选择如下的IP核:

 在下图的1处,我们可以选择多少个检测的probe数量,2处深度,3处选项卡可以选择我们测量数据的数据位宽,例如我要检测key_out1的数据位宽,因为位置代码里面只给了一个位宽,所以数据位宽我也只给一个建议选择综合选项选ooc,减少综合时间

 

 点击OK会为我们创建IP核,这里我们勾选上Out of context per IP可以提高我们的综合速度,右下角的Number of jobs 是用多少个处理器核心来完成,你的电脑有多少个核心就选多少个,然后点击Generate.

 这个时候Vivado会生成ila的IP核

生成完成后 ,我们可以在左上角的Source界面看到我们刚刚生成的IP核

 这个时候点击下方的IP Sources,点开如下图的veo文件,在这里我们可以直接找到他的例化代码

 我们将其复制出来,然后粘贴到我们代码文件中

 保存后可以看见ilaIP核已经例化进了我们的代码中

然后点击 Generate Bitstream生成 bit流文件,稍等一会,这个时候可以给我点个赞,时间是完全够的。

 生成完成之后,我们可以打开hardware manager界面,这个界面在左下角也可以打开

 点击program device,将程序下载到开发板上

可以看见这个时候下方会有要得多出来的测试文件路径

将程序烧录到开发板上时,会同时弹出来这个界面,在标红的地方可以添加我们要查看的信号波形

在下图的1处,可以添加我们设定好的触发器,注意这里可以同时添加多个触发器,但是要保证他们都能同时触发才能添加进来,否则就算添加进来怎么调试也不会触发我们的触发器的,所以建议是一次添加一个触发器,2处是选择触发数值的进制,B开头是二进制,U开头是十进制,H开头是十六进制,O开头是八进制,3处是填写数值,这里的key_out1我代码中触发时会输出一个高电平的信号,所以这里可以写1

 

 设置好了之后,可以点击红框处的三角符号运行触发器,这个时候触发器会等待我们的触发信号

 当我们按下按键时,按键会返回给我key_out1的高电平信号,所以触发器会被这个型号给触发

 ila可以实时的检测我们的开发板所传输的数据,可以很好的帮助我们纠错,当仿真我们找不出来bug的时候,ila这个时候可以排上用场了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/484450
推荐阅读
相关标签
  

闽ICP备14008679号