VIVADO下ILA使用指南

ILA是VIVADO下的一个DEBUG- IP,类似于片上逻辑分析仪,通过在RTL设计中嵌入ILA核,可以抓取信号的实时波形,帮助我们定位问题。本文档以一个简单的COUNTER设计为例,对VIVADO(2014.1)下ILA核的使用进行说明。

第一部分   RTL设计

    module counter

    (

    input            clk,

    output   [3:0]  q

    );

 

    wire       clk;

     

    //想抓取cnt信号进行观察

    (* keep ="TRUE" *)reg [3:0]  cnt = 4'd0;

 

    assign   q = cnt;

 

 

    always@(posedge clk)

    begin

       cnt <= cnt +4'd1;

    end

 

    endmodule

 

第二部分   加入LIA核

在vivado工程中,打开IP Catalog选项,找到ILA核

进入ILA核的配置界面(2页)

第一页

在“component Name”可以修改例化名, 在“Number of Prober”可以修改想抓取信号的分组个数,在本例中仅观察1组信号cnt,在“sample Data Depth”可以修改抓取信号的深度,本例选择默认值1024。其他选项保持默认值。

第二页

在“Probe Width”选择各分组信号的位宽,我们需要观察的cnt信号为4bit,这里选择4。

点击OK,到此为止,ILA的配置完成

第三部分  在RTL中嵌入ILA核

在vivado工程的sources窗口找到刚生成的ILA核的例化代码

将其复制到RTL设计中,并连接好信号

    module counter

    (

    input            clk,

    output   [3:0]  q

    );

 

    wire       clk;

     

    //想抓取cnt信号进行观察

    (* keep ="TRUE" *)reg [3:0]  cnt = 4'd0;

 

    assign   q = cnt;

 

 

    always@(posedge clk)

    begin

       cnt <= cnt +4'd1;

    end

 

    ila_0  u_ila

    (

    .clk     (clk),

    .probe0  (cnt)

    );

 

    endmodule

 

ps:ILA的clk需要连接到需要观察信号的相应时钟域,在一个RTL中可以嵌入多个ILA,方便观察不同时钟域 的信号

第四部分  使用vivado在线抓取信号波形

1)修改完RTL后,点击Generate Bitstream生成bit文件

2)开发板上电,接上JTAG下载器,然后打开open Target

打开Open New Target..

点击Next

点击Next

点击Next

点击Finish

发现vivado界面的左下角的Program Device选项变亮,点击该选项,下载bit文件

点击Pro...

开始下载

下载完成,vivado界面发生变化

打开window菜单栏,选择Debug Probes选项,界面会多出一个Debug Probes窗口

将需要观察的信号cnt 信号“拖入”右侧的Basic Trigger Setup窗口

在这个界面中可以修改触发条件(cnt=2),触发深度(1024),触发位置(500)等参数(类似于chipscope)

点击左侧的触发开关,vivado会自动打开一个wave窗口

通过放大波形,可以观察波形细节

vivado----fpga硬件调试 (八)----例化ila核相关推荐

  1. FPGA(2)--例化语句--1位全加器

    文章目录 一.实验目的 二.实验内容 三.实验设计 四.实验结果及仿真 一.实验目的 熟悉元件封装方法,掌握层次化电路设计方法:掌握VHDL例化语句的设计方法. 二.实验内容 1.用VHDL语言设计1 ...

  2. vivado ILA核使用教程

    ILA可以加在代码里使用,也可以加在网表里使用.在这里举例加在代码中使用,硬件平台:Xilinx AX7020 1.打开vivado,新建项目(选择对应的芯片型号) 2.添加源文件,编写RTL代码 ` ...

  3. vivado中ILA核的使用

    RTL设计 在RTL设计中,将想要抓取的信号前加上: (*KEEP = "TRUE"*) reg led_reg02; 例如,本例中需要抓取的信号是led_reg02: ILA核的 ...

  4. vivado----fpga硬件调试 (五) ----找不到ila核问题及解决

    问题 一: WARNING: [Xicom 50-38] xicom: No CseXsdb register file specified for CseXsdb slave type: 0, cs ...

  5. 使用Vivado软件进行硬件调试

    文章目录 前言 一.例化ILA IP核调试 二.在网表中添加探针调试 总结 前言 本文的主要内容是使用Vivado软件进行硬件的调试,介绍例化ILA IP核和在网表中添加探针这两种硬件调试的方法,重点 ...

  6. vivado常规操作之烧写bit文件_固化mcs文件_调试界面debug之ila与vio的操作

    目录 1 概述 2 烧写bit程序 3 Vivado 常用的调试界面 3.1 ila界面 3.1.1 添加需要查看的信号 3.1.2 添加条件触发信号 3.1.3 运行与停止ila界面,查看信号 3. ...

  7. [FPGA/Vivado/ILA]Vivado的ILA核在Waveform界面无任何变化,抓取不到信号和数据

    使用Vivado软件操作ILA核,在Waveform界面如遇到抓取不到信号的问题,如下图所示: 可能在以下方面出现问题: 最基础也是最重要的: 通过IP Catalog产生ILA核后,是否在代码里例化 ...

  8. 【ZYNQ-FPGA】zynq学习笔记(一)——使用ILA进行硬件调试

    Xilinx硬件调试解决方案 Vivado集成了"逻辑分析仪"作为一个IP核,很好地替代了外部逻辑分析仪.我们通过添加ILA核和VIO核即可实现硬件调试.ZYNQ设备与PC通过JT ...

  9. FPGA学习-Verilog例化说明

    原文作者:FPGA设计论坛 Verilog例化说明 1.什么是模块例化?为什么要例化? 模块例化可以理解成模块调用.对于一个FPGA工程,通常是由一个顶层模块与多个功能子模块组成,为了实现顶层模块与子 ...

最新文章

  1. DB2存储过程——条件判断语句if then
  2. 设计模式03------单例模式
  3. 易语言 企鹅机器人开发文档
  4. 管理员密码的php文件,ecshop网站后台管理员密码找回办法
  5. formValidator的一些验证实例
  6. Rendering: repaint, reflow/relayout, restyle的学习笔记
  7. python学习笔记(十三)标准库heapq
  8. gridview ashx实现数据更新_Python分析了香港26281套在售二手房数据,结果发现
  9. process java类_Java中Process类的用途是什么?
  10. Ta 在假笑么?这个识别算法可以鉴定
  11. vue.js学习资源大全
  12. RestTemplate 发送 get 请求使用误区 多值为null
  13. Win11修改用户名(超详细图文)
  14. C#注册Email发送验证码详解
  15. 微信域名防封PHP程序强制跳转到浏览器打开
  16. 用AS实现微信界面设计
  17. Android TV开发--HDMI播放器
  18. C# EXCEL 删除行
  19. 如何分发大文件、大文件断点续传解决方案
  20. 联想y7000电脑未正确启动_Lenovo/联想 拯救者 Y7000简单装系统教程

热门文章

  1. 2021-06-082021年春季学期-信号与系统-第十五次作业-第四小题参考答案
  2. FZ35恒流电子负载检测测试
  3. RT-Thread逐飞-智能车培训之MM32芯片应用
  4. 高斯计磁场测试仪磁力检测仪磁场测磁仪手持磁通计特斯拉计TD8620
  5. 双轴机械臂中的闭环步进电机平顺控制算法: 42HS48EIS,57HS
  6. ebs查看服务状态_Oracle EBS - 工单状态
  7. 关于日常使用的命令解读:ifconfig
  8. html中的js点击ipunt后加一,iphone 端 ipunt输入框光标偏移
  9. c语言中throw的用法,C中的内联throw()方法
  10. linux mysql8.0.16 下载_Linux CentOS上安装 MySQL 8.0.16