微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > Xilinx可编程逻辑器件设计与开发(基础篇)连载45:Spartan

Xilinx可编程逻辑器件设计与开发(基础篇)连载45:Spartan

时间:02-11 来源:网络整理 点击:

本节将简单介绍在PlanAhead工具中如何应用ChipScope核和分析工具进行逻辑调试与验证。先通过一个向导将ChipScope核插入设计中,选择待测试的网线,并进行例化、连接和综合,最后,导入布局和时序报告,产生位流文件,用ChipScope分析器进行验证。

1. 打开项目。

(1) 运行PlanAhead,在目录"PlanAhead_Tutorial\Projects\project_cpu_hdl"下找到"Project_cpu_hdl.ppr"项目并打开,PlanAhead窗口显示如图10-86所示。

图10-86 【PlanAhead】窗口

(2) 将项目存储为另外一个项目,以确保原始项目不被损坏。运行【File】→【Save Project as】,打开【Save Project As】对话框,按图10-87中所示设置项目名和项目存储路径。

图10-87 设置项目名和存储路径

2. 应用【Set Up ChipScope】向导。

(1) 【Set Up ChipScope】向导引导设计者在综合后网表中插入ChipScope的ICON核和ILA核,并选择待测网线,设置插入的ChipScope核的数目,然后例化这些核,最后将所选网线和核连接起来。

(2) 运行【Tools】→【Set Up ChipScope】向导,将wbArbEngine/m0/wb*网线连接到ChipScope核。如图10-88所示。

图10-88 【Set Up ChipScope】窗口

(3) 单击【Next】,出现图10-89所示的【Specify Nets to Debug】窗口。

图10-89 【Specify Nets to Debug】对话框

(4) 单击【Add/Remove Nets】按钮,出现图10-90所示【Add/Remove Nets】对话框,按照图中所示设置查找匹配条件为wbArbEngine/m0/wb_*,单击【Find】按钮,查找结果会显示在【Find Results】中。

图10-90 查找结果

(5) 单击按钮,将查找到的网线选为待测试网络,如图10-91所示。单击【OK】退出网线设置对话框。

图10-91 加入待测网线

(6) 单击【OK】退出网线设置对话框。这时的【Specify Nets to Debug】对话框显示如图10-92所示,可以看到,共加入了39个需要测试的网线。单击【Next】按钮,出现【Set Up ChipScope Summary】对话框,单击【Finish】,在PlanAhead的【Netlist】窗口可以看到添加了ChipScope核后增加了csdebugcore_0_0、csdebugcore_0_1和u_icon,如图10-93所示。

图10-92 加入网线后的【Specify Nets to Debug】对话框

图10-93 增加了ChipScope 核的【Netlist】窗口

3. 修改ChipScope 核和触发信号的属性。

如图10-94 所示,在【ChipScope】视图选择一组触发信号TRIG0,在【Debug Port ProperTIes】中选择【OpTIons】选项卡,可以改变match_type 属性,选择不同的触发条件。

图10-94 改变触发属性

如图10-95 所示,在【ChipScope】视图选择ChipScope 的ILA 核,在【Debug Core ProperTIes】中选择【OpTIons】选项卡,在这里可以修改该核的属性,例如采样深度和采样时钟边沿。

图10-95 改变ChipScope 核属性

4. 实现ChipScope 核。

在图10-96 所示【ChipScope】视窗选择一个ILA 核,单击按钮,实现ChipScope 调试核【Implement ChipScope Debug Cores】,这个命令调用COREGen 工具,将黑盒子ChipScope 调试核转换成综合后ChipScope 核,然后就可以对其进行翻译、映射、布局布线。

图10-96 实现ChipScope 核

另外, 读者可以在【ChipScope 】窗口选择一个ILA 核, 单击鼠标右键选择【Schematic】,可以看到ChipScope 核的原理图模块,如图10-97 所示。

图10-97 【Schematic】窗口

在【Schematic】窗口双击CLK和TRIG0引脚,再单击按钮,重新生成原理图,如图10-98所示。可以看到,TRIG0连接到了设计中的cpuEngine的地址端,这些信号由cpuClk时钟控制。

图10-98 【Schematic】窗口

需要注意的是,在设计中插入ChipScope核,会影响实现结果。因此建议将触发器的输出作为测试点,并且使用区域约束(在PlanAhead中用Pblock),将ChipScope核与关键路径约束在一起,使ChipScope核对时序的影响降至最小。

5. 实现设计。

(1) 单击工具栏的运行实现图标,出现【Run Implementation】对话框,如图10-99所示,按图中所示设置各参数。

图10-99 【Run Implementation】对话框

(2) 单击【OK】按钮,【Design Runs】窗口会增加impl_1 进程,如图10-100 所示,该实现进程会简要显示图10-99 所示的设置,并且会显示出该实现的当前状态及进度信息。

图10-100 【Design Runs】窗口

(3) 运行结束后,双击impl_1 进程,弹出【Import Implementation Results】对话框,提示是否导入impl_1 的布局

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top