博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ChipScope Pro内核生成器应用实例
阅读量:2028 次
发布时间:2019-04-28

本文共 2696 字,大约阅读时间需要 8 分钟。

ChipScope Pro内核生成器应用实例

下面通过一个简单8位计数器的例子,了解如何在工程中添加ChipScope Pro内核生成器的各个IP核,对FPGA内部节点和逻辑进行观测。在该实例中,我们将调用一个ICON、一个ILA和一个VIO。

1. 新建项目工程和RTL程序。

(1) 新建工程,选择器件型号、封装等项目信息,如图9-14所示。

器件型号信息

图9-14 器件型号信息

(2) 编写或添加源程序count_top.v。

count_top.v

module count_top(clk, reset
);
input clk;
input reset;
reg [7:0] count_out;
always @(posedge clk) begin
if (reset == 0)
count_out <= 0;
else
count_out <= count_out + 1;
end
endmodule

2. 生成ICON核。

(1) 在ISE环境下,单击【Project】菜单→【New Source】,弹出源程序设置界面,选择源程序类型【IP (Core Generator & Architecture Wizard)】,输入将要生成的IP核名,如ICON_Core,如图9-15所示。

【New Source Wizard】选择源程序类型界面

图9-15 【New Source Wizard】选择源程序类型界面

(2) 单击【Next】,弹出内核生成器的IP列表,选择【View By Function】→【Debug & Verifictation】→【Chipscope Pro】→【ICON(ChipScope Pro-Integrated Controller)】,如图9-16所示。

【New Source Wizard】IP核界面

图9-16 【New Source Wizard】IP核界面

(3) 单击【Next】,进入ICON配置页面,由于本例要用两个调试内核ILA和VIO,因此ICON需要两个控制口,设置【Number of Control Ports】为2。如图9-17所示。

ICON配置页面

图9-17 ICON配置页面

(4) 单击【Generate】,生成ICON核。

3. 生成ILA核。

(1) 回到ISE界面,【Project】→【New Source】,弹出源程序设置界面,选择【IP (Core Generator & Architecture Wizard)】,输入将生成的IP核名,如ILA_Core,如图9-18所示。

【New Source Wizard】选择源程序类型界面

图9-18 【New Source Wizard】选择源程序类型界面

(2) 单击【Next】,进入内核生成器的IP列表,单击【View By Function】→【Debug & Verifictation】→【Chipscope Pro】→【ILA(ChipScope Pro-Integrated Logic Analyzer)】,如图9-19所示。

【New Source Wizard】IP核界面

图9-19 【New Source Wizard】IP核界面

(3) 单击【Next】,弹出ILA Summary界面,如图9-20所示。

【New Source Wizard】Summary界面

图9-20 【New Source Wizard】Summary界面

(4) 单击【Finish】,进入ILA配置页面一,配置触发端口和存储属性,如图9-21所示。

ILA属性界面一

图9-21 ILA属性界面一

(5) 单击【Next】,进入ILA配置页面二,按图9-22所示配置触发条件。

ILA属性界面二

图9-22 ILA属性界面二

(6) 单击【Generate】,生成ILA核。

4. 生成VIO核。

(1) ISE界面,【Project】→【New Source】,弹出源程序设置界面,选择【IP (Core Generator & Architecture Wizard)】,输入将生成的IP核名,如VIO_Core,如图9-23所示。

【New Source Wizard】源程序类型选择界面

图9-23 【New Source Wizard】源程序类型选择界面

(2) 单击【Next】,进入内核生成器的IP列表,【View By Function】→【Debug & Verifictation】→【Chipscope Pro】→【VIO(ChipScope Pro-Virtual Input/Output)】,如图9-24所示。

【New Source Wizard】IP核界面

图9-24 【New Source Wizard】IP核界面

(3) 单击【Next】,弹出VIO Summary界面,如图9-25所示。

【New Source Wizard】Summary界面

图9-25 【New Source Wizard】Summary界面

(4) 单击【Finish】,进入VIO配置页面,如图9-26所示,VIO参数。该例设置允许异步输入,宽度为8位。

VIO参数界面

图9-26 VIO参数界面

(5) 单击【Generate】生成VIO核。

5. 例化ICON、VIO、ILA核。

(1) ISE环境下,生成ICON、VIO、ILA核的例化模板,如图9-27所示。

IP核例化模板<

图9-27 IP核例化模板

(2) 修改count.v代码,连接端口。

module count_top(clk, reset

);
input clk;
input reset;
reg [7:0] count_out;
wire [35:0] CONTROL0;
wire [35:0] CONTROL1;
always @(posedge clk) begin
if (reset == 0)
count_out <= 0;
else
count_out <= count_out + 1;
end
ICON_Core U1 (
.CONTROL0(CONTROL0), // INOUT BUS [35:0]
.CONTROL1(CONTROL1) // INOUT BUS [35:0]
);
VIO_Core U2(
.CONTROL(CONTROL0), // INOUT BUS [35:0]
.ASYNC_IN(count_out) // IN BUS [7:0]
);
ILA_Core U3(
.CONTROL(CONTROL1), // INOUT BUS [35:0]
.CLK(clk), // IN
.TRIG0(count_out) // IN BUS [7:0]
);
Endmodule
6. 生成比特流。在ISE的【Process】里,进行综合、实现、生成比特流。下载到FPGA里。
7. 打开ChipScope Analyzer,对采样数据进行分析。ChipScope Analyzer在后面小节中介绍。

转载地址:http://uocaf.baihongyu.com/

你可能感兴趣的文章
Linux宏:__ASSEMBLY__
查看>>
排序一:排序的概念及分类
查看>>
git远程仓库创建及代码提交
查看>>
内存管理初始化源码1:setup_arch
查看>>
【深入理解Linux内核架构】3.2 (N)UMA模型中的内存组织
查看>>
树四:遍历二叉树
查看>>
[Binder深入学习一]Binder驱动——基础数据结构
查看>>
1. QCamera2基础组件——cam_semaphore
查看>>
java8 JDK1.8 API 中文 翻译版 java帮助文档
查看>>
【Java】【40】Long类型和long类型的大小比较
查看>>
【Oracle】【34】ceil和floor函数
查看>>
【Java】【39】float保留两位小数
查看>>
【Git】【4】删除已经提交的文件夹
查看>>
【Java】【43】上传图片,重新命名并缩放到固定大小
查看>>
【Oracle】【30】CASE WHEN
查看>>
【JSON】【1】处理换行符
查看>>
【Oracle】【32】TRUNC 截取
查看>>
【MySQL】【5】排名功能
查看>>
【Java】【46】导入Excel到数据库
查看>>
【Spring】【5】 PUT请求接收不到参数
查看>>