如何有效利用Visual JTAG进行电路调试
0赞
发表于 2011/12/11 21:45:24
阅读(2617)
记得刚开始研究Visual JTAG的时候存在一个疑问,即VJ 接口速率会不会影响其调试的功效?!其实只要想想Altera的SignalTapII以及Xilinx的ChipScope就会想到如何去提升Visual JTAG的调试效率。
SignalTapII在例化的时候时候根据参数的不同会消耗FPGA内部的RAM,这些RAM就是存储采样数据的,同理Visual Jtag可以利用相似道理来达到你所需的调试目的。
下图是一般VJ Interface设计框图:
如图所示,应用设计(User Logic)中需要观察的信息可以通过Visual Jtag模块采集并缓存于FIFO中,FIFO中的数据可以随时被取出分析或送显.根据不同FPGA以及需要观测的信号多寡决定FIFO的大小.
根据riple给出其中一个例子改写的例子如下:
QII工程:2166040655279.rar.
TCL以及Debug文件:2167164483389.rar.
调试效果如下图所示:
这个工程实现一个简单功能,就是将项目中我存在ROM的倒数归一化值读出来,提供了读取usedw值、读取单个FIFO数据以及一次读完FIFO等接口用来调试及分析数据。
--------------------------------------------------------------------------------------------
加入了FIFO写,也就是通过Visual JTAG可以进行双向读写与用户逻辑通信进行调试检测:
下图显示通过Visual Jtag写入0x0D也即13的整个移位过程: