湘攸客

如何有效利用Visual JTAG进行电路调试

0
阅读(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的整个移位过程:

Baidu
map