参考: https://blog.csdn.net/wanruoqingkong/article/details/30081829
一、基本知识
ChipScope Pro是ISE下一款功能强大的在线调试工具。ChipScope Pro是针对Xilinx Virtex-II pro/ Virtex/ Virtex-II/ Virtex-EM/ Spartan-IIE/ Spartan-IIE 系列FPGA的在线片内信号分析工具。它的主要功能是通过JTAG口,在线实时读取FPGA的内部信号。
原理:ChipScope Pro的基本原理是利用FPGA中未使用的BlockRam,根据用户设定的触发条件将信号实时地保存到这些BlockRam中,然后通过JTAG口传送到计算机,最后在计算机屏幕上显示出时序波形。
其中ILA、ICON是为了使用ChipScope Pro观察信号而插入的核。ChipScope Pro工作时一般需要用户设计中实例化两种核:一是集成逻辑分析仪核(ILA core,Integrate Logic Analyzer core),该核主要用于提供触发和捕获的功能;二是集成控制核(ICON core,Integrated Contorller core),负责ILA core和边界扫描端口(JTAG)的通信。
一个ICON core可以连接1~15个ILA core。ChipScope Pro工作时,ILA core根据用户设置的触发条件捕获数据,然后在ICON core控制下,通过边界扫描端口上传到计算机,最后用ChipScope Pro Analyzer显示信号波形。
二、使用方法
应用举例:本例检测gain_vld为高电平时,next_state[2:0]的数值变化
1、工程中添加cdc文件
(1)添加chipscope核
(2)点击Finish
2、配置chipscope核
(1)双击新建的cdc文件,打开core inserter配置页面
在“Input Design Netlist”文本框中设置输入设计网表的路径。设置好后,“Output Design Netlist”和“Output Directory”会自动生成,设计者也可自己指定。如果是通过新建资源的方法启动ChipScope Pro Core Inserter,这几项显示为灰色,无需设计者设置,系统会自动找到设计网表文件。
(2)设置触发引脚的数量和宽度
“Select Integrated Logic Analyzer Options”对话框设置ILA对话框下有3个选项卡,可对触发参数、捕获参数、网线连接进行设置。
触发端口数目:在设计中可以根据需要设置多个触发端口,每个ILA Core最多可以有16个输入触发端口,每个触发端口下又可设置多个触发条件判断单元,但各个触发端口包含的触发条件判断单元数量之和不能大于16。
触发端口设置:
完整的触发端口设置包括:触发宽度、触发条件判断单元个数及类型的设置。触发宽度是指触发端口包含信号线的个数。通过触发条件判断单元进行判断,当信号线上的信号满足设定的条件时,ChipScope Pro就可将其捕获并存储在BlockRam中,用于在ChipScope Pro Analyzer中显示波形。
(3)设置捕获后的数据深度
(4)添加参考时钟引脚和触发引脚
添加参考时钟引脚
触发引脚
注意:Chipscope只能分析FPGA设计的内部信号,因此不能直接连接输入信号的网表。如果没有从选项中找到某个内部信号,则在信号声明时添加一下语句,再综合。
(*KEEP="TRUE"*)reg [2:0] next_state;//状态转移
设置完成之后,保存关闭
3、综合、实现并生成.bit文件
4、双击Analyze Design Using ChipScope
(1)点击连接按钮
(2)下载.bit文件到FPGA
添加要下载的.bit文件
(3)导入cdc文件
File -> Import
(4)Trigger设置
设置高电平触发
启动监测
添加满足时,参考波形