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,一经查实,立即删除!

相关文章

java之编译型多态

在Java中方法重载就属于编译型多态&#xff0c;又称静态多态。 举个例子&#xff0c;动物园中饲养员需要知道每个动物应该吃什么饲料&#xff0c;例如熊猫吃竹子&#xff0c;狗吃骨头&#xff0c; 对于饲养员而言他只要对程序输入动物名&#xff0c;程序输出该动物吃什么即可…

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

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

jquery 正则自整理

常用正则表达式大全&#xff01;&#xff08;例如&#xff1a;匹配中文、匹配html&#xff09; 匹配中文字符的正则表达式&#xff1a; [u4e00-u9fa5]   评注&#xff1a;匹配中文还真是个头疼的事&#xff0c;有了这个表达式就好办了   匹配双字节字符(包括汉字在内)&…

C++ 的内存安全与效率

在C编程中&#xff0c;内存安全和效率是两个至关重要的考虑因素。 内存安全涉及确保程序在分配和使用内存时不会发生错误&#xff0c;如内存泄漏、悬挂指针、越界访问、空指针解引用等&#xff1b; 效率则关注如何有效地使用内存资源&#xff0c;减少不必要的内存分配和释放操…

前端说你的API接口太慢了,可是真的有几千万条数据啊!怎么办?

当有千万条海量数据时,前端调取接口发现接口响应的太慢,前端这时让你优化一下接口,你说有几千万条数据,觉得自己尽力了,前端觉得你好菜,别急,读完这篇文章,让前端喊你一声:大佬,厉害!!! 常用的方法总结 通过合理的分页加载、索引优化、数据缓存、异步处理、压缩…

每日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;并且称为根的子树…

解决MySQL错误:`ERROR 1049 (42000): Unknown database ‘nonexistentdb‘`

在管理MySQL数据库的过程中&#xff0c;我们可能会遇到各种各样的错误信息&#xff0c;这些错误信息有助于我们快速定位并解决问题。本文将深入探讨一个特定的错误——ERROR 1049 (42000): Unknown database nonexistentdb&#xff0c;这个错误会在尝试连接到MySQL服务器上不存…

【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;数据不再只是…

Anaconda的常用指令

一、conda基础命令 ① 查看conda帮助信息 conda --help # 或者&#xff1a; conda -h ② 查看conda版本 conda --version ③ 更新conda conda update conda ④ 降级conda版本 conda install -n base conda4.6.7 ⑤ 升级conda和anaconda conda update conda conda up…

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 执行下面的命令就可…

算法-快速幂

算法-快速幂 时间复杂度 O(logk) //求 m^k mod p int qmul(int m,int k,int p) {int res1%p;while(k){if(k&1){res*m;res%p;}m*m;m%p;k>>1;}return res; }

出海业务的网络安全挑战

出海业务的扩展带来了巨大的市场机遇&#xff0c;同时也带来了不少网络安全挑战&#xff1a; 数据泄露与隐私保护&#xff1a;跨境数据传输增加了数据被截获和泄露的风险。地理位置限制和审查&#xff1a;某些地区的网络审查和地理位置限制可能阻碍企业正常开展业务。网络攻击…

【svg】—— java解析svg的宽高属性

SVG&#xff08;Scalable Vector Graphics&#xff09;是一种基于XML的图像格式&#xff0c;用于描述二维矢量图形。用户在网页上展示高质量的矢量图形&#xff0c;svg图形可以无限放大或缩小而不会失真&#xff0c;保持清晰的边缘和线条。 java对于svg的处理其实比较麻烦&…

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()的实现…