深入浅出FPGA系列: http://blog.csdn.net/rill_zhen/article/category/1191601
引言
索性再破例一下,成个系列也行。
内容组织
1.建立工程
2.插入及配置核
2.1运行Synthesize
2.2新建cdc文件
2.3 ILA核的配置
3. Implement and generate programming file
4.利用Analyzer观察信号波形
4.1连接器件
4.2下载配置fpga
4.3载入信号端口名
4.4设置触发信号
4.5运行并观察信号波形
补充
1. 建立工程
ChipScope是配合Xilinx Ise使用的片内逻辑分析工具,使用的第一步是建立ise工程文件,详细步骤可参考ise使用说明。如果已有建好的ise工程,可跳过此步骤,打开已有工程即可。
建立工程时注意正确添加.v源文件和.ucf管脚配置文件。
2. 插入及配置核
这里介绍的是ICON核和ILA核的使用方法。ILA核提供触发和跟踪功能,根据用户设置的触发条件捕获数据;然后在ICON的控制下,通过边界扫描口将数据上传到PC;最后在Analyzer中显示出信号波形。
2.1 运行Ise的Synthesize
单击选中sources栏中的顶层源文件,右键点击processs栏中的Synthesize,点击Run,进行代码综合。
2.2 新建cdc文件
右键单击sources栏中顶层源文件,点击new source,选择chipscope definition and connection file,设好文件名及文件路径,勾选add to project,然后一直点next完成建立。
2.3 核的配置
双击sources栏中的刚刚建立的cdc文件,启动core inserter。点击两次next,进入ILA的设置界面,首先是trigger parameters界面。
弹出netlist changed的提示框,点选ok刷新网表。通过number of input trigger ports可设置要观察波形的组数,通过trigger width可设置每组观察的信号的数目。
点击next进入capture parameters界面。通过data depth可设置信号采集的时钟周期数,采集数目越多,观察信号的时间越长。
点击next进入net connections界面。可以看到net connections端口列表显示红色字体,表示端口没有完全连接;当全部端口都与具体信号连接时,字体变为黑色。
双击clock ports打开select net对话框。首先连接时钟信号,在右边net selections框中点clock signals,选择时钟的信道CH0,在左下方的信号列表中找到时钟信号,单击选中,然后单击右下方make connections按钮,完成clk信号的连接。
在右边net selections框中点trigger/data signals,用同样的方法连接所有想要观察的信号。如果之前设置观察多组信号,可点击右下方TP0/TP1切换信号组。连接完成后点击下方OK退出select net对话框,然后点击return to project navigator退出core inserter,并保存设置。
3. Implement和Generate Programming File
单击选中sources框中顶层源文件,运行processes框中的Implement。注意,如果Implement过程中报错端口连接不完全,应返回ILA配置检查端口是否全部连接。
右键单击Generate Programming File,点击properties,在startup options中将start-up clock设为JTAG clock,点击ok。
运行Generate Programming File,生成.bit文件。
4. 利用Analyzer观察信号波形
运行process框中的analyze design using chipscope,进入chipscope pro analyzer。
4.1 连接器件
单击左上角file下面的图标,连接到器件,弹出对话框选ok。
4.2 下载配置fpga
右键点击my device1(即fpga芯片),单击configure,弹出对话框,点select new file,选择之前生成的.bit文件,点击ok,之后程序将把design下载到fpga。
4.3 载入信号端口名
单击file->import,点击select new file选中cdc文件,然后点击ok。此时可以看到端口列表中的端口名称都变成了对应的信号名称。
4.4 设置触发信号
双击trigger setup打开触发信号设置框,在value栏中可设置开始信号采集的触发信号值,其中每一位对应一个端口,按照端口顺序排列。例如图中设置为端口0(cle)为1,并且端口7(clk)为0时开始采集信号。X表示任意值。
4.5 运行并观察波形
单击左上角三角形按钮启动fpga电路,当各端口信号满足设置的触发信号时,程序开始采集信号,并在waveform中显示采集到的信号。可通过左上角的一系列控制按钮调节波形显示。
补充:
1、 当对源文件进行过修改后需重新运行Synthesize、Implement、Generate programming file,生成.bit文件,并在chipscope analyzer中通过configure重新加载.bit文件。
http://blog.csdn.net/rill_zhen/article/details/8115756