0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Vivado中关于ILA的详解

电子设计 来源:电子设计 作者:电子设计 2022-02-08 11:35 次阅读

本文转载自:ZYNQ微信公众号

ILA 简介

集成逻辑分析仪 (Integrated Logic Analyzer :ILA) 功能允许用户在 FPGA 设备上执行系统内调试后实现的设计。当设计中需要监视信号时,应使用此功能。用户还可以使用此功能在硬件事件和以系统速度捕获数据时触发。

添加 ILA

1.使用 IP 添加

添加IP

例化IP,并将所需要的信号放入 Probe 里面

o4YBAGAKAO2AXoT_AAGb3gZWB9k492.png

2.图形界面添加

给待测试的信号加上约束,防止被优化

pIYBAGAKAS2AVgW2AAHuTJTUOEo819.png

在综合选项下点击set up debug,选择需要查看的信号即可

ILA 数据和波形的关系

1. hw_ila表示的是ila核

2. hw_ila_data表示保存在存储器中的ila文件

3. WCFG是波形配置(信号颜色,总线进制表示,信号顺序,marker等)

4. WDB是波形数据库(波形数据)

o4YBAGAKAdmAJw2HAAB-oS3vvd4207.png

ILA 失败情景

情景1:没有波形窗口

现象如下:

pIYBAGAKAhuATgtiAADvK88-bQE073.png

WARNING: [Labtools 27-3123] The debug hub core was not detected at User Scan Chain 1 or 3.

Resolution:

1. Make sure the clock connected to the debug hub (dbg_hub) core is a free running clock and is active OR

2. Manually launch hw_server with -e “set xsdb-user-bscan ” to detect the debug hub at User Scan Chain of 2 or 4. To determine the user scan chain setting, open the implemented design and use: get_property C_USER_SCAN_CHAIN [get_debug_cores dbg_hub]。

WARNING: [Labtools 27-1974] Mismatch between the design programmed into the device xc7z010_1 and the probes file E:/Xilinx/example/dma_sg_m/dma_sg_m.runs/impl_1/debug_nets.ltx.

The device design has 0 ILA core(s) and 0 VIO core(s)。 The probes file has 1 ILA core(s) and 0 VIO core(s)。

Resolution:

1. Reprogram device with the correct programming file and associated probes file OR

2. Goto device properties and associate the correct probes file with the programming file already programmed in the device.

解决方法:查看 ILA 的时钟,如果不是自由时钟会出现这种问题,然后重启VIVADO软件,重新打开

情景2:有波形窗口没有波形

现象如下:

使用示波器查看ILA信号发现时钟频率发现是10M

分析:查看 Xilinx 手册发现JATG的时钟频率要比被ILA的时钟频率2.5倍低

o4YBAGAKAyeAYEc9AAKmVxGNi7U245.png

解决方法1:修改 Hardware Target 的 JTAG 时钟频率

o4YBAGAKA2-AZ_kKAAdUTdRgiwQ497.png

解决方法2:在TCL里面添加约束

o4YBAGAKA8CAAhu1AAmRY9Bw9CE462.png

上电后查看 ILA 信号

使用场景:flash偶尔在上电后读出来后出错,可以使用该方法。

一般情况下都是让要抓的事件延迟发生或者循环发生,方便调试。

pIYBAGAKA_-AEtkXAADe1QxIwHM642.png

如果实在要抓启动时的事件,按下面的步骤:(下面流程是ILA核在综合阶段不能浮空)

先把有ILA核的bit文件下进去,设置触发好条件

运行下面的Tcl命令把触发寄存器的值保存在tas文件中

%run_hw_ila -file ila_trig.tas [get_hw_ilas hw_ila_1]

打开实现后的implement工程

运行下面的Tcl命令把触发设置加到当前内存里已经布线的implement设计上去

%apply_hw_ila_trigger ila_trig.tas

注意:如果发生错误的话说明ILA核在综合过程中被flattened了,这时需要设置保留hierarchy重新综合实现。

直接用Tcl命令生成bit文件,不能点击生成bit命令,这样工程会认为implement发生了改动而全部重新布线。

write_bitstream trig_at_startup.bit

下载bit到芯片

参考链接

chrome-extension://ibllepbpahcoppkjjllbabhnigcbffpi/https://www.xilinx.com/support/documentation/sw_manuals/xilinx2020_1/ug9.。.

chrome-extension://ibllepbpahcoppkjjllbabhnigcbffpi/https://www.xilinx.com/support/documentation/sw_manuals/xilinx2020_1/ug9.。.

审核编辑:何安

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Vivado
    +关注

    关注

    19

    文章

    807

    浏览量

    66271
收藏 人收藏

    评论

    相关推荐

    每次Vivado编译的结果都一样吗

    很多FPGA工程师都有这种困惑,Vivado每次编译的结果都一样吗? 在AMD官网上,有这样一个帖子: Are Vivado results repeatable for identical
    的头像 发表于 11-11 11:23 124次阅读
    每次<b class='flag-5'>Vivado</b>编译的结果都一样吗

    Vivado使用小技巧

    后的约束在之前版本已存在,那么Vivado会给出警告信息,显示这些约束会覆盖之前已有的约束;如果是新增约束,那么就会直接生效。
    的头像 发表于 10-24 15:08 188次阅读
    <b class='flag-5'>Vivado</b>使用小技巧

    Vivado 2024.1版本的新特性(2)

    从综合角度看,Vivado 2024.1对SystemVerilog和VHDL-2019的一些特性开始支持。先看SystemVerilog。
    的头像 发表于 09-18 10:34 590次阅读
    <b class='flag-5'>Vivado</b> 2024.1版本的新特性(2)

    Vivado 2024.1版本的新特性(1)

    Vivado 2024.1已正式发布,今天我们就来看看新版本带来了哪些新特性。
    的头像 发表于 09-18 10:30 869次阅读
    <b class='flag-5'>Vivado</b> 2024.1版本的新特性(1)

    RA MCU CANFD在FSP的配置详解

    RA MCU CANFD在FSP的配置详解
    的头像 发表于 06-19 08:06 430次阅读
    RA MCU CANFD在FSP<b class='flag-5'>中</b>的配置<b class='flag-5'>详解</b>

    使用Python提取ILA数据的流程

    ILA应该是调试AMD-Xilinx FPGA最常用的IP。
    的头像 发表于 05-01 10:43 680次阅读
    使用Python提取<b class='flag-5'>ILA</b>数据的流程

    OpenHarmonySELinux使用详解

    OpenHarmonySELinux使用详解 目录 1.SELinux简介 2.SELinux概念 3.SELinux模式 4.OHSELinux使用详解 5.OH
    发表于 04-03 10:43

    详解Vivado非工程模式的精细设计过程

    将设置设计的输出路径,设置设计输出路径的步骤如下所示。 第一步:如图4.3所示,在“Vivado%”提示符后输入命令“set outputDir ./gate_Created_Data/top_output”。
    发表于 04-03 09:34 1394次阅读
    <b class='flag-5'>详解</b><b class='flag-5'>Vivado</b>非工程模式的精细设计过程

    vivado2017找不到ZCU102对应的板卡,求解决和分享,应该如何解决

    vivado2017找不到ZCU102对应的板卡,求解决和分享,应该如何解决
    发表于 02-29 17:31

    如何在下载Bitstream后自动触发ILA采集

    在硬件调试时,经常需要用 ILA 采集一些 FPGA 内部或者对外的初始化信号,然而在下载完 Bitstream 后立即采集这些变化稍纵即逝的信号,比如在 1uS 内手动触发 ILA 采集信号,以
    的头像 发表于 02-23 09:45 806次阅读
    如何在下载Bitstream后自动触发<b class='flag-5'>ILA</b>采集

    如何禁止vivado自动生成 bufg

    Vivado禁止自动生成BUFG(Buffered Clock Gate)可以通过以下步骤实现。 首先,让我们简要了解一下什么是BUFG。BUFG是一个时钟缓冲器,用于缓冲输入时钟信号,使其更稳
    的头像 发表于 01-05 14:31 1928次阅读

    Vivado时序问题分析

    有些时候在写完代码之后呢,Vivado时序报红,Timing一栏有很多时序问题。
    的头像 发表于 01-05 10:18 1846次阅读

    VIVADO安装问题解决

    vivado出现安装问题刚开始还以为是安装路径包含中文空格了,重装的注意了一下,发现还是这个问题。。。。后来又一顿操作猛如虎,终于发现了问题。出这个问题的原因是vivado压缩包解压的路径包含中文了把解压文件放到不含中文的地方,再重新安装,安装路径也不能含中文。然后。。。
    发表于 12-22 10:56 0次下载

    VIVADO软件使用问题总结

    【关键问题!!!!重要!!!】VIVADO会在MESSAGE窗口出提示很多错误和警告信息!
    的头像 发表于 12-15 10:11 1754次阅读
    <b class='flag-5'>VIVADO</b>软件使用问题总结

    如何实现ILA Cross Trigger

    ILA Cross Triggering功能使得ILA核心之间、以及ILA核心与处理器(例如,AMD Zynq 7000 SoC)之间可以进行Cross Trigger。这个功能在你需要在不同时钟域的两个
    的头像 发表于 11-30 10:17 1219次阅读
    如何实现<b class='flag-5'>ILA</b> Cross Trigger