网站搜索:
5.1.6 ChipScope Pro应用实例
文章出处:与非网
更新于2008-11-18 11:38:08

5.1.6 ChipScope Pro应用实例
在Xilinx软件设计工具中,ISE可集成Xilinx公司的所有工具和程序。ChipScope Pro也不例外,在ISE中将其作为一类源文件,和HDL源文件、IP Core以及嵌入式系统的地位是等同的。本节在Xilinx Spartan3E-D开发板上实现一个计数器模块,基于该模块详细介绍如何在ISE中新建ChipScope应用以及观察、分析数据的详细操作。
例5-2:在ISE中实现一个8比特计数器,利用ChipScope分析其逻辑输出。
(1)新建用户工程,添加mycounter.v的源文件,其内容如下所列:
module mycounter(clk, reset, dout);
input clk;
input reset;
output [7:0] dout;

reg [7:0] dout;

always @(posedge clk) begin
if (reset == 0)
dout <= 0;
else
dout <= dout + 1;
end

endmodule
然后根据电路连接,添加相应的管脚约束。
(2)综合工程,然后在ISE工程管理区,单击右键,选择“Add New Source”命令,在弹出的对话框中选择“ChipScope Definition and Connection File”类型,并在“File Name”栏输入ChipScope 设计名称mychipscope,如图5-50所示。


图5-50 添加ChipScope设计示意图

 


单击“Next”按键,进入分析文件选择界面,这里会将该文件夹里所有的HDL设计、原理图设计都罗列出来(包括顶层模块和全部底层模块),供用户挑选,用鼠标单击即可选中,本例选择mycounter,如图5-51所示。单击“Next”按键进入小结页面,单击“Finish”按键完成添加。

 


图5-51 测试模块选择界面


(3)双击工程区mycounter.v下的子模块mychipscope.cdc,可自动打开Chipscope Pro Core Insterser软件,按照5.1.3节相应的步骤添加触发单元和触发位宽。其中触发类型选为Basic,位宽为8比特;设置采样深度为4096,各步骤如图5-52到图5-55所示。


图5-52 调试工程配置界面

图5-53 ICON核配置界面


图5-54 触发信号配置界面

图5-55 采集深度配置界面


(4)点击“Next”进入网表连接显示页面,如图5-56所示。其中如果用户定义的触发和时钟信号线有未连接的情况,则图中“UNIT”、“CLOCKPORT”以及“TRIGGERPORTS”等字样以红色显示;正确完成连接后则变成黑色。


图5-56 网表连接提示界面


点击图5-56中“Modify Connection”的按键,进入连接页面,时钟和数据的连接如图5-57、图5-58所示。需要注意的是,ChipScope Pro只能分析FPGA设计的内部信号,因此不能直接连接输入信号的网表,所以输入信号网表全部以灰色显示。如果要采样输入信号,可通过连接其输入缓冲信号来实现,时钟信号选择相应的BUFGP,普通信号选择相应的IBUF。如图5-57中所示,选择采样时钟时,选择了CLK_BUFGP。


图5-57 时钟网表连接界面


图5-58 触发网表连接界面


连接完成后,单击“OK”按键返回连接显示界面,发现所有提示字符“UNIT”、“CLOCKPORT”以及“TRIGGERPORTS”没有红色,则单击“Return Project Navigator”,退出Chipscope,返回到ISE中。否则需要再次点击“Modify Connection”按键重新连接。
(5)在工程中加入UCF文件,约束时钟、数据管脚位置。为了简化也可以只添加clk和reset这两个控制信号的管脚约束,其内容如下:
NET "clk" LOC = "C9" | IOSTANDARD = LVCMOS33 ;
# Define clock period for 50 MHz oscillator (40%/60% duty-cycle)
NET " clk " PERIOD = 20.0ns HIGH 40%;
NET "reset" LOC = "H13" | IOSTANDARD = LVTTL | PULLDOWN ;
(6)在ISE过程控制区中双击“Implement Design”和“Generate Programming File”,可以完成实现以及生成可编程文件,并将设计人员插入的各类核也将被包含在比特文件中。生成配置文件后,双击图5-59所示的“Analyze Design Using Chipscope”图标,可自动打开Chipscope Pro Analyzer软件。


图5-59 Chipscope Pro Analyzer启动操作示意图


(7)在Chipscope Analyzer用户界面上点击工具栏上图标“ ”,初始化边界扫描链。等扫描完成后,单击“Device”菜单下“DEV: 0 My Device0(XC3S500E) → Configure”命令选择.bit文件配置FPGA。
(8)芯片配置完成后,选择“File”菜单的“Import”命令,可弹出CDC文件加载页面,选择相应的CDC文件,将会把所有以“Dataport<n>”的名称修改为综合后的线网名称。
(9)组合cnt总线信号。可按住“Ctrl”键,选择多个总线信号,单击右键,选择“Add to Bus”命令,将其组合成相应的总线信号,如图5-60所示。


图5-60 添加总线操作示意图


(10)不设定触发条件采集数据。点击工具栏的“ ”图标,开始采集数据。整体结果如图5-61所示,单击工具栏的“ ”按键,可放大信号,局部结果如图5-62所示。从分析结果可以看出,本设计在FPGA中成功地完成了8比特计数器的功能。


图5-61 Analyzer分析结果整体示意图


图5-62 Analyzer分析结果局部示意图

 
(11)设定触发条件采集数据。在“Trigger Setup”栏Match区域的“M0: Trigger Port0”行的Value列输入触发条件“0000_0000”,如图5-63所示。


图5-63 触发条件设置界面


点击工具栏的“ ”图标,开始采集数据,可以看到,采集结果的第一个数为0,如图5-64所示。当然,用户可以根据需要设置更复杂的触发条件。


图5-64 触发条件设置界面


(12)利用Bus Plot功能绘制输出信号波形。在工程区双击“Bus Plot”命令,然后在弹出窗口的“Bus Selection”区域选中“dout”,则会将采集数据以图形方式显示出来,如图5-65所示。由于本设计是8比特加1计数器,因此其波形就是幅度为0到255的锯齿波。

 

 

<上一节 



关于OpenHW | OpenHW使用说明 | FAQ | 相关法律 | 版权声明 | 网站地图
联系邮件:xiaoquan@eefocus.com  联系电话: 010-58859035-8012
Powered by eefocus.com