vivado 使用 ILA 默认仪表板

使用 ILA 默认仪表板
ILA 仪表板 请参阅下图 是给定 ILA 核相关的所有状态和控制信息的集中显示位置。刷新硬件器件并首次检测到 ILA
核时 将自动打开该核的默认 ILA 仪表板。如果需要手动打开或重新打开此仪表板 只需在“硬件 (Hardware) ”窗口
中右键单击 ILA 核对象 然后选择“ Default Dashboard ”即可。
您可使用 ILA 仪表板通过多种方式来与 ILA 调试核进行交互
• 设置触发器模式 以便在硬件中发生各种事件时触发
BASIC_ONLY ILA 基本触发器模式 (ILA Basic Trigger Mode) ”可用于在满足调试核比较结果的基本 AND/OR
功能时触发 ILA 核。
ADVANCED_ONLY ILA 高级触发器模式 (ILA Advanced Trigger Mode) ”可用于按用户定义的状态机指定的
条件来触发 ILA 核。
TRIG_IN_ONLY ILA TRIG_IN 触发器模式 (ILA TRIG_IN Trigger Mode) ”可用于在 ILA 核的 TRIG_IN 管脚从
低位转换至高位时触发 ILA 核。
BASIC_OR_TRIG_IN ILA BASIC_OR_TRIG_IN 触发器模式 (ILA BASIC_OR_TRIG_IN Trigger Mode) ”可用于
ILA 核的 TRIG_IN 管脚执行逻辑 OR 操作并且目标模式为 BASIC_ONLY 触发器模式时触发 ILA 核。
ADVANCED_OR_TRIG_IN ILA ADVANCED_OR_TRIG_IN 触发器模式 (ILA ADVANCED_OR_TRIG_IN
Trigger Mode) ”可用于在 ILA 核的 TRIG_IN 管脚执行逻辑 OR 操作并且目标模式为 ADVANCED_ONLY 触发器
模式时触发 ILA 核。
• 设置触发器输出模式。
ALWAYS BASIC 采集模式可用于控制要采集的数据的筛选操作。
• 设置 ILA 采集窗口的数量。
• 设置 ILA 采集窗口的数据深度。
• 将触发器位置设置为采集窗口内的任意样本。
• 监控 ILA 调试核的触发和采集状态。
用户定义的调试探针
在硬件管理器中使用用户定义的调试探针 也称为 hw_probes 即可利用物理 ILA 探针端口与常量值的组合来创建探
针。随后即可在硬件管理器的“触发器设置 (Trigger Setup) ”窗口或“波形 (Waveform) ”窗口中使用这些探针。成功创
建这些探针后 将在“调试探针 (Debug Probes) ”窗口中列出这些探针 并将这些探针包含在创建期间与其关联的调试
核中。
您可创建的用户定义的探针类型如下
ILA 探针端口。
1 个或多个常量值 0 / 1
ILA 探针端口与常量值混合。
重要提示 包含常量值的用户定义的探针只能在“ Waveform ”窗口中使用。这些探针无法在“ Trigger
Setup ”窗口中使用。
提示 您只能在 ILA 调试核上创建用户定义的探针。当前不支持为 VIO 核创建用户定义的调试探针。
创建用户定义的调试探针
GUI 流程
要在 Vivado IDE 硬件管理器中创建用户定义的调试核 请在“ Hardware ”窗口中右键单击要探测的 ILA 核并选择
Create User Defined Probe ”。
这样可启动“创建用户定义的探针 (Create User Defined Probe) ”对话框。选择要在其中创建探针的 ILA 核、新探针的
名称 最后选择探针位和 / 或组成此新探针的常量。
要向此新探针添加特定探针位 请单击“ + ”按钮 并选择“ Add Probe ”。
这样将启动“添加探针 (Add Probes) ”对话框 以便您选择现有探针或者现有探针的特定位。
您还可以在“创建用户定义的探针 (Create User Defined Probe) ”对话框中添加或移除位。将特定位上移或下移 如下
图所示。
Tcl 流程
要创建用户定义的调试探针 请使用 create_hw_probe Tcl 命令。
create_hw_probe [-verbose] [-map <arg>] <name> <core>
其中
name hw_probe 的名称。对于属于同一器件的 hw_probes 此名称必须唯一。必须指定总线探针的范围。
例如 myNewProbe[31:0]
core 是要与探针关联的 hw_ila
-map 表示声明的位元 这些位元将作为用户定义的探针的基础。
创建用户定义的调试探针的示例
# Given a 512-bit counter "counterA[511:0]": Connects [255:223] to
# ILA probe port 0 [31:0]
# Create a user-defined probe called foobar pointing at the
# ILA buffer specified range [255:223]
create_hw_probe -map {probe0[31:0]} {foobar [255:223]} [get_hw_ilas
hw_ila_1]
# Constant only probe. NO triggering allowed on constant ONLY probes.
create_hw_probe -map {0} {my_constant_gnd[0:0]} [get_hw_ilas hw_ila_1]
# Create a user-defined probe as a mix of constants and ILA probe ports
create_hw_probe -map {0000 probe0[31:0] 1010} {my_mixed_probe[47:8]}
[get_hw_ilas
hw_ila_1]
# Creating scalar hw_probe called "foobar" from probe1:
create_hw_probe -map {probe1} foobar [get_hw_ilas hw_ila_1]
# Creating scalar hw_probe called "foobar" from bit 3 of probe0:
create_hw_probe -map {probe0[3]} foobar [get_hw_ilas hw_ila_1]
# Creating vector hw_probe called "foobar[0:0]" from probe1:
create_hw_probe -map {probe1} foobar[0:0] [get_hw_ilas hw_ila_1]
# Creating vector probe called "foobar[3:0]" from probe0:
create_hw_probe -map {probe0} foobar[3:0] [get_hw_ilas hw_ila_1]
# Creating vector probe called "foobar[3:2]" from probe0[1:0]:
create_hw_probe -map {probe0[1:0]} foobar[3:2] [get_hw_ilas hw_ila_1]
删除用户定义的调试探针
GUI 流程
要在 Vivado IDE Hardware Manager 中删除用户定义的探针 请依次单击“ Window ” → “ Debug Probe ”。这样会
在“硬件管理器 (Hardware Manager) ”仪表板旁打开“调试探针 (Debug Probes) ”窗口。请右键单击此窗口中的相应
探针 然后单击“ Delete 如下所示。
Tcl 流程
您可使用 delete_hw_probe Tcl 命令删除用户定义的调试探针。
例如 要删除先前使用 create_hw_probe 创建的 foobar 探针 请执行以下操作
delete_hw_probe [get_hw_probes foobar -of_objects [get_hw_ilas -of_objects
[get_hw_devices xc7k325t_0] -filter {CELL_NAME=~"i_fast_ila"}]]
用户定义的调试探针的持久性
在工程流程中 硬件管理器会保留其中创建的任何用户定义的探针。下次打开该工程并使用 Vivado 硬件管理器连接到
硬件目标时 这些用户定义的探针就会恢复。如果这些用户定义的调试探针参与了“基本触发” 或者已被添加到“波
(Waveform) ”窗口中 那么打开工程并连接到硬件管理器中的目标时 所有窗口中显示的探针设置都与先前关闭工
程时的设置完全相同。
与用户定义的探针进行交互
硬件管理器中创建的任意用户定义的调试探针均可显示在“基本触发 (Basic triggering) ”窗口、“高级触发 (Advanced
Triggering) ”窗口和 / 或“波形 (Waveform) ”窗口中。唯一例外是涉及常量值的用户定义的调试探针。这些类型的调试
探针只能在“ Waveform ”窗口中使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/810996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

性能优化 - 你知道CSS有哪些优化方案吗

难度级别:中高级及以上 提问概率:70% CSS是前端开发工作中必不可少的技能之一,同时也是网页开发中必不可少的重要元素之一。但很多人所开发的项目本身对性能要求并不高,再加上项目周期紧张,久而久之,也就容易养成不考虑细节的习惯,觉得C…

每日OJ题_01背包①_牛客DP41 【模板】01背包(滚动数组优化)

目录 牛客DP41 【模板】01背包 问题一解析 问题二解析 解析代码 滚动数组优化代码 牛客DP41 【模板】01背包 【模板】01背包_牛客题霸_牛客网 #include <iostream> using namespace std;int main() {int a, b;while (cin >> a >> b) { // 注意 while 处…

软件杯 深度学习人体语义分割在弹幕防遮挡上的实现 - python

文章目录 1 前言1 课题背景2 技术原理和方法2.1基本原理2.2 技术选型和方法 3 实例分割4 实现效果5 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习人体语义分割在弹幕防遮挡上的应用 该项目较为新颖&#xff0c;适合作为竞…

二叉树学习

树 树是n个结点的有限集合&#xff0c;当n0时为空树&#xff0c;在任意一颗非空的树中&#xff0c;有且只有一个特定的称为根的结点&#xff0c;当n>1时&#xff0c;其余结点又可以分为m个不相交的有限集&#xff0c;其中每一个集合又是一棵树&#xff0c;并且称为根的子树…

【Java探索之旅】从输入输出到猜数字游戏

&#x1f3a5; 屿小夏 &#xff1a; 个人主页 &#x1f525;个人专栏 &#xff1a; Java编程秘籍 &#x1f304; 莫道桑榆晚&#xff0c;为霞尚满天&#xff01; 文章目录 &#x1f4d1;前言一、输入输出1.1 输出到控制台1.2 从键盘输入 二、猜数字游戏2.1 所需知识&#xff1a…

《猎灵online》游戏完整源码(源码+客户端+服务端+文档+工具),云盘下载

《猎灵》是一款由国内知名开发运营开发的大型3D魔幻网游&#xff0c;《猎灵》研发团队突破诸多瓶颈&#xff0c;首创“全自由无限制PK”&#xff0c;让玩家拒绝无意义等待&#xff0c;自由作战不受任何束缚&#xff0c;真正的实现想战就战&#xff0c;游戏创建了六界神魔乱斗的…

Amazon SageMaker:让机器学习变得更简单、更强大

授权说明&#xff1a;本篇文章授权活动官方亚马逊云科技文章转发、改写权&#xff0c;包括不限于在 亚马逊云科技开发者社区, 知乎&#xff0c;自媒体平台&#xff0c;第三方开发者媒体等亚马逊云科技官方渠道。 前言&#xff1a; 在大数据时代的浪潮中&#xff0c;数据不再只是…

Python神器!WEB自动化测试集成工具 DrissionPage

案例 跟踪商品价格&#xff0c;降价自动推送消息到微信 咱买不起还等不起吗&#xff1f; from DrissionPage import * import re from time import sleep import csv import os import datetime#写入时间p MixPage() p.get(http://xxxxxxx) #快快买网址 p.to_iframe(iframe…

云服务器centos提示 Cannot prepare internal mirrorlist: No URLs in mirrorlist的解决办法

yum update -y CentOS-8 - AppStream 118 B/s | 38 B 00:00 Error: Failed to download metadata for repo AppStream: Cannot prepare internal mirrorlist: No URLs in mirrorlist 执行下面的命令就可…

CSS特效---纯CSS实现点击切换按钮

1、演示 2、一切尽在代码中 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" content"w…

HashMap的常见问题

Entry中的hash属性为什么不直接使用key的hashCode()返回值呢&#xff1f; 不管是JDK1.7还是JDK1.8中&#xff0c;都不是直接用key的hashCode值直接与table.length-1计算求下标的&#xff0c;而是先对key的hashCode值进行了一个运算&#xff0c;JDK1.7和JDK1.8关于hash()的实现…

c++ 指针总结

概述 内存地址 在计算机内存中&#xff0c;每个存储单元都有一个唯一的地址(内存编号)。通俗理解&#xff0c;内存就是房间&#xff0c;地址就是门牌号 指针和指针变量 指针&#xff08;Pointer&#xff09;是一种特殊的变量类型&#xff0c;它用于存储内存地址。指针的实质…

算力租赁费用包括哪些

相比于企业自购设备、自建机房、自己运营&#xff0c;服务器租赁是绝大数企业的首先&#xff0c;租赁服务器从一定程度上解决了企业资金预算不足、AI芯片难买的局面。 随着文生视频大模型Sora、大语言模型Grok-1的相继出现&#xff0c;对高新能算力资源和服务的需求不断提高&a…

暴力枚举法

虽然暴力枚举法有时候效率低&#xff0c;时间复杂度高&#xff0c;但是在面对小规模数据集的时候&#xff0c;暴力枚举法往往是很好的思维利器。 B: 01 串的熵&#xff08;5分&#xff09; 问题描述 #include <iostream> #include <cmath> #include <algorithm…

什么是云HIS?云HIS的优点是什么?云HIS适用于什么医院?

什么是云HIS&#xff1f;云HIS的优点是什么&#xff1f;云HIS适用于什么医院&#xff1f; 一、什么是云HIS&#xff1f; 云HIS系统是一个运用云计算、大数据、物联网等新兴信息技术的业务和技术平台。它旨在按照现代医疗卫生管理要求&#xff0c;以数字化形式提供医疗卫生行业…

Mybatis generate xml 没有被覆盖

添加插件即可 <plugin type"org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin"/>

epic免费游戏在哪里领 epic免费游戏怎么领取 图文教程一看就会

Epic Games是一家位于美国北卡罗来纳州卡里的视频游戏和软件开发商&#xff0c;由Tim Sweeney于1991年创立。该公司最著名的作品包括《堡垒之夜》和虚幻引擎&#xff0c;后者是一种广泛用于游戏开发的商用游戏引擎。Epic Games在2020年和2024年分别与索尼和迪士尼达成财务合作及…

ARM架构麒麟操作系统安装配置Mariadb数据库

、安装配置JDK (1)检查机器是否已安装JDK 执行 java -version命令查看机器是否安装JDK,一般麒麟操作系统默认安装openjdk 1.8。 (2)安装指定版本JDK 如果麒麟操作系统默认安装的openjdk 1.8不符合需求的话,可以卸载机器安装的openjdk 1.8并按需安装所需的openjdk版本…

#esp8266模块通过AT指令获取网络时间(苏宁时间)

一、IDE&#xff1a;keil、cubemx、Arduino......... 二、记录&#xff1a; 1.依次发送以下指令&#xff08;发送新行&#xff09; AT ATCWMODE1 ATCWDHCP1,1 ATCWJAP"Redmi K40 Gaming","87654321" ATCIPSTART"TCP","quan.suning.com&quo…

Leetcode110_平衡二叉树

1.leetcode原题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 2.题目描述 给定一个二叉树&#xff0c;判断它是否是 平衡二叉树 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;true示例 2&#xff1a; 输入&#xff1a;…