vivado的非嵌入ILA的使用
vivado非嵌入ILA的使用
1、实验原理
前面在vivado中联合vitis设计时接触过ila,那个时候采用的方法是直接调用IP核在原理图中连接。这个方法简单直接,可以将自己所需的测量信号转移到ILA上实现显示。在下载后会自动弹出ILA界面。但是,这个方法在后期需要手动修改设计,将ILA移除。不可能将占用庞大资源的ILA留在设计内部。这会消耗一定的时间。vivado还支持另外一种方式,即将ILA另外打包一个文件和bit文件分立下载。当要去除ILA时,只需将文件移除即可。
2、实验操作
事例工程的操作就不介绍了,按照综合,布局布线,映射,生成bit流的顺序操作即可。这里的特别操作在综合之后、映射之前。
(1)添加ILA设置
在综合后,可以打开Run Synthesis下面的Open Synthesized Design。这里可以查看综合结果以及基于综合的操作。这里的第二个set up debug就是加入逻辑调试文件。
第一个界面大致说明了这个操作的作用以及相应的支持文档,有深入了解需求的可以查看相应的文档。只想使用基本功能的就直接next。
第二个选择是继承前面的选择还是开始新的,还是删除。这里新建的话应该没有这个界面。第二次的话会有,可以在这里更新测试向量。
第三个界面则是选择测试点和测试形式。
一般这里选择比较好认的信号,比如带有端口名字的信号。这样也不容易出错。总线和单线都是可以选择的。后面的probe type就是触发形式。data就是被动显示,trigger就是主动修改。两者都有则是可以手动修改,也可以依据实际信号。添加方法就是在左下角的Find nets to add中找。一般都能找到。注意,这里的信号一般是reg信号才会保持和原有命名一致。wire变量的综合优化后会有比较大的变化。所以端口输出信号尽量使用reg型变量方便测试。
再下一页就是选择测样深度。下面两个选项暂时还不大清楚是做什么的,勾选上就可以了。具体的作用可能需要查找手册。
最后就是设计完成后的总结了。一般这里会自动设置信号刷新的时钟。这个和Altera的signal tapII还是有所区别的。点击finish即可。
这个时候重新综合即可将设置导入设计,并且加入到约束文件。
(2)后续区别
这里可以直接生成bit文件。在板级下载时,会多出一个文件。这个文件就是ILA的设计文件。不加这个文件,就是普通的下载。
3、实验总结
本实验简单的记录了vivado中另外一种添加ILA的方法。这种方法灵活性更高,使用比IP核添加要方便一些。至于ILA的调试界面,自己去探索就可以了。如果使用过类似的逻辑分析软件,就可以快速入手。
vivado的非嵌入ILA的使用的更多相关文章
- ABP文档 - 嵌入的资源文件
文档目录 本节内容: 简介 创建嵌入的文件 暴露嵌入的文件 使用嵌入的文件 简介 一个web应用里,客户端包含javascript,css,xml等文件,这此文件被添加到一个web项目后,发布成独立的 ...
- 通过PDB文件实现非嵌入式的c++反射
上一篇blog我阐述了一种实现非嵌入式的反射的基本思路.相比于通过宏和模板实现,这种非嵌入的反射的优点是不需要写额外的代码来记录meta信息. 首先,为了在c++中实现反射系统,我认为需要解决以下两个 ...
- ABP理论学习之内嵌资源文件
返回总目录 本篇目录 介绍 创建内嵌文件 暴露内嵌文件 使用内嵌文件 介绍 在一个web应用中,有供客户端使用的javascript,css,xml等文件.它们一般是作为分离的文件被添加到web项目中 ...
- @EmbeddedId和@idClass的区别
@idClass 使复合主键类成为非嵌入类,使用 @IdClass 批注为实体指定一个复合主键类(通常由两个或更多基元类型或 JDK 对象类型组成).从原有数据库映射时(此时数据库键由多列组成),通常 ...
- jpa注解
http://www.oracle.com/technetwork/cn/middleware/ias/toplink-jpa-annotations-100895-zhs.html#ManyToOn ...
- 《C++必知必会》学习笔记
转载:http://dsqiu.iteye.com/blog/1734640 条款一 数据抽象 抽象数据设计遵循步骤:(1)为类型取一个描述性的名字.(2)列出类型所能执行的操作,不要忘了初始化(构造 ...
- Think in java 4th读书笔记__last update20151130
一周至少两章,去掉最后的并发和图形化用户界面,刚好需要2个半月才能学好.这进度感觉有点慢,所以做下调整吧,改成一个月会不会更好点^^,认认真真的把java的圣经给看一遍. 计划: 第1~6 11.17 ...
- gcc g++ 参数介绍
C和C++ 编译器是集成的.他们都要用四个步骤中的一个或多个处理输入文件: 预处理 (preprocessing),编译(compilation),汇编(assembly)和连接(linking).源 ...
- tcpdf导出pdf数据支持中文的解决方案
步骤如下:1.确保你测试tcpdf能正常输出英文内容的pdf2.测试输入中文内容后显示是?的乱码或者空白分析原因,是因为我们输入的中文,tcpdf字体库并不支持,因此乱码或者空白显示 添加一个合适的字 ...
- thinkinginjava学习笔记06_复用类
MarsEdit粘代码好麻烦,所有代码交给github:https://github.com/lozybean/MyJavaLearning 复用一个类常用的两种方式:组合.继承: 组合 将对象引用置 ...
随机推荐
- KQL笔记
KQL: {'query': {'bool': {'must': [{'match': {'Sql': 'insert'}}, {'match': {'PolicyName.keyword': 'd8 ...
- 基于角色的权限控制(RBAC)介绍
什么是RBAC? RBAC(Role-Based Access Control)基于角色的权限控制.其基本思想是,对系统操作的各种权限不是直接授予具体的用户,而是在用户集合与权限集合之间建立一个角色集 ...
- Spring Boot图书管理系统项目实战-11.检索图书
导航: pre:10.借还统计 next: 只挑重点的讲,具体的请看项目源码. 1.项目源码 需要源码的朋友,请捐赠任意金额后留下邮箱发送:) 2.页面设计 2.1 index.html <!D ...
- Docker实践之08-使用网络
目录 一.外部访问容器 启动容器时指定参数-P(大写P) 启动容器时指定参数-p(小写p) 二.容器互联 使用--link参数使容器互联 将容器加入自定义网络实现互联 三.为容器配置DNS 一.外部访 ...
- MySQL Boolean类型的坑
MySQL中,Boolean只是 tinyint(1) 的别名,也就是说,MySQL中并没有真正的bool类型. 而SQLAlchemy生成SQL的时候并没有检测到 这一点,这就导致一个问题,当使用 ...
- Flask AttributeError 'Request' object has no attribute 'is_xhr'解决办法
flask版本0.12.5 运行时会报以上错误,原因是因为werkzeug的版本大于等于1.x版本. 解决办法,降低werkzeug的版本即可 pip uninstall Werkzeug pip i ...
- 使用秘籍|如何实现图数据库 NebulaGraph 的高效建模、快速导入、性能优化
本文整理自 NebulaGraph PD 方扬在「NebulaGraph x KubeBlocks」meetup 上的演讲,主要包括以下内容: NebulaGraph 3.x 发展历程 NebulaG ...
- STL-RBTree模拟实现
#pragma once #include<assert.h> #include<iostream> using std::cout; using std::endl; usi ...
- opencv库图像基础1-python
opencv库图像基础-python 基本操作 图片颜色通道 非灰度图的颜色通道是红绿蓝,在opencv中默认是BGR的顺序 argparse模块 argparse 库是 Python 标准库中用于命 ...
- MySQL日志15连问,redo log与biglog
1. redo log是什么? 为什么需要redo log? redo log 是什么呢? redo log 是重做日志. 它记录了数据页上的改动. 它指事务中修改了的数据,将会备份存储. 发生数据库 ...