vivado中如何使用chipscope
如何使用chipscope
参考: https://www.cnblogs.com/liujinggang/p/9813863.html
Xilinx FPGA开发实用教程---徐文波 田耘
1.ChipScope Pro工作原理
ChipScope Pro是一款在线调试软件,可以观察FPGA内部的任何信号,触发条件,数据宽度和深度等。不足在于速度和数据量。
ChipScope用于在测试过程中观察芯片内部信号。便于调试。
将逻辑分析仪、总线分析仪、虚拟IO小型软件核直接插入到用户的设计当中,信号在操作系统速度下被采集下来,从编程接口中引出,再将采集到的信号通过Chipscope Prol逻辑分析仪中进行分析。
怎么做到的?
在线调试:在用户设计中插入相应的核,当用户程序运行时,所测信号经过核送到JTAG链,传到PC机上ChipScope软件。便于观察。
信号---》ILA--》ICON--》JTAG--》Alalyzer
组件:
核生成器:
集成控制核ICON:具备JTAG边界扫描端口通信功能,必不可缺,一个ICON可同时最多连接15个核。
集成逻辑分析仪核ILA:提供触发和跟踪功能.
1输入输出触发逻辑
2数据捕获逻辑:储存在芯片的RAM中
3控制核状态逻辑
虚拟输入输出核VIO:实时监控和驱动FPGA内部的信号,可以观测FPGA任意信号的输出结果。
异步输入信号
同步输入信号
异步输出次您好
同步输出信号
适用于处理器外设总线的集成总线分析核 OPB/IBA
适用于处理器本地总线的集成总线分析核 PLB/IBA
安捷伦跟踪核ATC2
集成的误比特率测试核IBERT
核插入器:
自动将上述核插入到用户经过综合的设计中
分析仪:
完成核的芯片配置,触发设置,跟踪显示等功能。
TCL脚本接口:
通过TCL脚本语言和JTAG链,完成与芯片的交互通信
2.开发流程
1.建立工程
2.插入及配置核
2.1运行Synthesize
2.2新建cdc文件
2.3 ILA核的配置
3. Implement and generate programming file
4.利用Analyzer观察信号波形
4.1连接器件
4.2下载配置fpga
4.3载入信号端口名
4.4设置触发信号
4.5运行并观察信号波形
开发实例:ISE如何使用ChipScope
https://www.cnblogs.com/liujinggang/p/9813863.html
3.Vivado如何使用Chipscope
Vivado作为新的设计工具,并没有集成Chipscope,取而代之的是新的debug工具:hardware debug。后者的优势是可以与SDK联合调试,软硬件协同开发时非常有用,但其无法实时持续的观测信号的变化,且从目前2013.4的版本反应的无法抓取非顶层文件信号的问题(大量时序错误)对设计开发非常不便。
通过对Chipscope工作原理的分析,应该可以通过间接的方式在VIVADO工程中使用,经过上板测试,确实可以做到,下面是实现的步骤:
1、 Synthesis后点击Open Synthesized Design,完成后点击File原工程综合后导出netlist(.edn)和constraint(.xdc);
2、 打开Chipscope的Core Insert,将step1中的netlist作为输入,指定输出文件名及路径;
3、 Chipscope随后自动加载step2的netlist,按照需求添加信号,方法与ISE调用时相同;
4、 点击Chipscope界面里的insert按键,生成携带ILA核的netlist文件;
5、 建立新的VIVADO工程,选择post-syn方式,随后加入step4的netlist(.ngo)和step1的constraint;
6、 Implement step5建立的VIVADO工程,获得BIT文件(此过程会报一个ucf与xdc的critical warning,不用关注它);
7、 原工程按照规范流程implement、bitgen,最后导出SDK;
8、 按照规范流程完成SDK应用程序开发;
9、 用Chipscope Analyzer配置step6生成的bit文件到芯片,配置界面选择导入step2保存的cdc文件,配置完成后,运行SDK中的run as,随后设置chipscope的触发条件;
10、此时可以观察信号的实时输出;
vivado中如何使用chipscope的更多相关文章
- vivado中如何调用chipscope或者impact
vivado中并没有集成chipscope和impact,所以需要安装ISE,安装完ISE后进行以下操作: 1) 选择环境变量中的系统变量,新建以下变量 XILINX ...
- Vivado中debug用法
Vivado和ISE相比ChipScope已经大幅改变,很多人都不习惯.在ISE中称为ChipScope而Vivado中就称为in system debug.下面就介绍Vivado中如何使用debug ...
- 设置ISE/vivado中默认文本编辑器为gvim
ise windows版,添加方式 ISE下点击菜单Edit -> Preferences -> Editor. 在Editor选项框里选择Custom,在Command line syn ...
- Tcl在Vivado中的使用
http://blog.chinaaet.com/detail/36014 Vivado是Xilinx最新的FPGA设计工具,支持7系列以后的FPGA及Zynq 7000的开发.与之前的ISE设计套件 ...
- 在Vivado中调用ModelSim生成FSM的状态转移图
如果我们已经书写了一段FSM代码,现在想倒过来把它转换成为状态转移图,方便我们直观地检查我们书写的状态对不对(在写论文什么的画图太麻烦的时候,有个自动生成的是多方便啊!),应该怎么弄呢?通过在Viva ...
- System Generator 生成IP核在Vivado中进行调用
System Generator 生成IP核在Vivado中进行调用 1.首先在Simulink中搭建硬件模型 2.查看仿真结果 3.资源分析与时序分析 4.启动vivado,关联生成的IP核 5.调 ...
- Vivado中ILA的使用
Vivado中ILA的使用 1.编写RTL代码 其中需要说明的是(* keep = "TRUE" *)语句的意识是保持cnt信号不被综合掉,方便以后的调试,是否可以理解为 ...
- vivado中设置多线程编译
VIVADO中一个run编译时支持的线程数如下表:(综合时一般是2线程) Place Route Windows默认 2 2 Linux默认 4 4 Windows开启maxThreads=8 4 4 ...
- 73.Vivado使用误区与进阶——在Vivado中实现ECO功能
关于Tcl在Vivado中的应用文章从Tcl的基本语法和在Vivado中的应用展开,继上篇<用Tcl定制Vivado设计实现流程>介绍了如何扩展甚至是定制FPGA设计实现流程后,引出了一个 ...
随机推荐
- 在JavaScript中使用三目运算符时进行多个操作
今天使用三目运算符时,刚好需要在false时进行两个操作,故测试并记录在三目运算符中使用多个操作的方式 例子如下: true ? (console.log(1),console.log(2), tes ...
- Android布局理解
参考菜鸟教程,原文请查看:https://www.runoob.com/w3cnote/android-tutorial-linearlayout.html 1.FrameLayout(帧布局) 帧布 ...
- Python----Kernel SVM
什么是kernel Kernel的其实就是将向量feature转换与点积运算合并后的运算,如下, 概念上很简单,但是并不是所有的feature转换函数都有kernel的特性. 常见kernel 常见k ...
- (二)jdk8学习心得之Lambda表达式
二.Lambda表达式 1. 格式 (参数1,参数2,…,参数n)->{方法体} 注意: (参数1,参数2,...,参数n)要与方法接口中的参数一致,但是名字可以不一样. 此外,方法类型接口,有 ...
- asp.net获取当前请求的url
asp.net获取当前请求的url 设当前页完整地址是:http://www.dgshop.com/Home/Manager?id=2¶=ASFDG [1]获取 完整url 代码如下: ...
- Flutter获取屏幕宽高和Widget大小
我们平时在开发中的过程中通常都会获取屏幕或者 widget 的宽高用来做一些事情,在 Flutter 中,我们可以使用如下方法来获取屏幕或者 widget 的宽高. MediaQuery 一般情况下, ...
- 基于Redis实现分布式锁
分布式锁具有的特性: 1.排他性: 文件系统: 数据库:主键 唯一约束 for update 性能较差,容易出现单点故障 锁没有失效时间,容易死锁 缓存Redis:setnx 实现复杂: 存在死锁(或 ...
- python 包以及循环导入
包的认识 包通过文件夹来管理一系列功能相近的模块 包:一系列模块的集合体重点:包中一定有一个专门用来管理包中所有模块的文件包名:存放一系列模块的文件夹名字包名(包对象)存放的是管理模块的那个文件的地址 ...
- ADO.Net笔记整理(一)
几次装机,Notes已烟消云散,近日因为Node.js死活搞不定,无奈装机,备份好的东东,没想到磁盘扇区出现异常,可能是PE启动盘的病毒,只好将磁盘全部重新分区,恢复数据也懒得恢复了,日积月累关乎将来 ...
- 实用HTML5游戏资源
awesome games Web-First游戏引擎协同构建令人惊叹的HTML5可视化和游戏 HTML5游戏开发者和技术传播者,华沙,波兰- @EnclaveGames独立工作室的创始人 代表作 ...