signal tap简单详细使用

  • FILE
  • 开发
  • LOGIC
  • Eagleson
  • LV5工程师
  • |      2017-04-26 10:16:23
  • 浏览量 2525
  • 回复:3
FPGA开发过程中,能够方便的观察模块中信号的时序变化对逻辑的开发有很重要的意义。在quartus中的signal tap 就是能够方便的抓取模块中的信号,这类似与ISE的chipscope,但是在vivado中就没有了,必须内部例化ila,抓取的数据也不太方便,所以个人对vivado的使用还是感觉不太方便。言归正传,这里将详细讲解signal tap的使用,我使用的quartus版本为13.1.1.创建并设置STP文件 STPsignal tap的缩写,在quartus界面中点击file,选中new,弹出下面框: 选中SignalTap II Logic A nalyzer File点击OK,弹出下面框: 2.STP文件中添加实例(instance 添加方法:在上图中的instance窗口中点击右键,选择createinstance默认情况下,STP中有一个默认名为auto_signaltap_0instance,双击auto_signaltap_0可以修改为自己定义的名字。3.instance中添加观测节点(nodes 点击Edit,选中AddNodes...(此处有一个需要注意的:上面的步骤必须在打开一个工程后操作,否则Edit中的Add Nodes...将会是灰色,无法选中) ,然后弹出: 这个时候就需要添加你所需要抓取的信号。Look in中选择抓取的信号所在的模块,Filter修改为:SignalTap II:pre-synthesis.(这两步非常重要,否则的话在NodesFound中会提示non-mathcad),在Named中输入所需抓取的信号名(貌似必须是全名),点击List,在Nodes Found中就会出现该信号,双击该信号,该信号就会出现在Selected Nodes里面。同样在Named中输入另外需要抓取的信号,使之出现在Selected Nodes里面。添加完所有的信号后,点击OK 4.instance添加采样时钟点击软件中下部的Setup按键,在右边会出现: 点击上图的clk旁边的将会弹出与上面一样的Noder Finder窗口,选择好合适的时钟信号。然后设置一些基本的参数:采样深度,Sample depth 个人建议选大些,但是又不能超过FPGA资源,不然在后面的编译会报错。RAM类型,这个默认为auto,不用管触发,Trigger 这个在初期使用signal tap就选择默认,后期可以根据具体信号波形来设置。5.重新编译添加了signal tap工程 quartus10.1中一般在上面的步骤都做好后,关闭signal tap窗口一直点击OK就行。为了确保工程中的确添加了我们刚刚新建的stp文件,可以打开工程,选中Entity中的顶层,右键点击settings,就会出现: 选中左边的SignalTap II Logic Analyzer,在右边选中刚刚新建的stp文件。6.编译和下载代码 按照一般的方法,编译和生成sof文件。下载代码需要在SignalTapII 中下载,双击stp文件,就会弹出: 给板子上电,并且连上JTAG线(有的称为仿真器)。界面就会变成: 点击右上角的SOF Manager后面的,选择好刚刚生成的SOF文件,然后点击program device7.抓取数据,观测波形 在下载好sof后,点击InstanceManager旁边的run analyzer(也就是红色的三角标志),就会弹出: 界面上就是抓取出来的信号波形,此时完成了signal tap的基本操作。理论分析:1.SignalTap II 的优缺点(摘自《alteraFPGA/CPLD设计(基础篇)》(第2版)) 优点: 1.不占用额外的I/O管脚 2.不占用PCB上的空间 3.不破坏信号的完整性 4.相对传统逻辑分析仪设备,SignalTapII 免费试用。 缺点:SignalTapII 中抓取数据的深度取决于RAM剩余大小,特别是在低端的FPGA中,特别是学习板中,由于RAM太小,抓取的数据太少,SignalTap II 基本对设计没有帮助。2.触发位置的选择 以前似乎有四种选择,现在好像只能找到三种: 1.Pretrigger position :采样的数据12%为触发前,88%为触发后 2.Centertrigger position :采样的数据50%为触发前,50%为触发后 3.Posttrigger position :采样的数据88%为触发前,12%为触发后
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:2
呓语闲人 2017-05-16
写的不错,很好, 但是16.0版本的使用起来不是很习惯。
0   回复
举报
发布
Eagleson 回复 2017-05-16
16.0没有用过 还用的是13.1
0   回复
举报
guyuemao 2017-05-02
写的不错 学习学习
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子