- 创建CDC文件
在上图窗口中空白处单击右键,点击“New Source”。
在“New Source Wizard”窗口选中“ChipScope Definition and Connection File”,并输入文件名称;点击Next,再点击Finish,完成CDC文件创建。
- 设置Chipscope调试工具
首先在需要采集的信号定义前面添加(*KEEP = "TRUE"*)语句。
其次右击“Synthesize - XCT”,点击“Process Properities…”。
选择“Keep Hierarchy”为“yes”,这一步操作保证综合后的模块保存层级关系。
创建好的CDC文件出现在列表中,综合完成后双击打开。
打开后出现如下窗口,点击“Edit”,再点击“New ILA Unit”,创建新的采集单元。
单击要设置的单元,分别进行“Trigger Parameters”、“Capture Parameters”、“Net Connections”设置。
- Trigger Parameters设置
在“Trigger Width”栏输入需要采集的数据总宽度,例如:只采集wire [15:0] adc_data,则宽度设为16。在不确定数据总宽度的情况下,一般先将总宽度设为256(最大值),等设置完后面的“Net Connections”后,再回来把宽度改为相应值。
- Capture Parameters设置
根据需求,设置数据采样深度(Data Depth)。
- Net Connections设置
点击下方“Modify Connections”,分别对“CLOCK PRT”和“TRIGGER PORTS”进行连接;当连接宽度和设置宽度不一致,或者连接的信号在代码中被更改后,“CLOCK PRT”和“TRIGGER PORTS”栏会变红色;若设置正确,则为黑色。
在“Clock Signals”栏连接被采数据的时钟(不同时钟域的数据必须在不同单元中采集),在“Trigger/Data Signals”连接被采数据。
在“Patten”栏输入关键字可以过滤无用信号,提高效率。
完成设置后点击“Next”,保存退出。
- Chipscope在线调试
- 烧写bit文件
从“开始”栏打开“iMPCT”工具。
右击空白处,点击“Initial Chain”进行初始化,然后选中需要烧写的bit文件。
在“Attach SPI or BPI PROM”窗口,选择“No”。
在“Device Programing Properities”窗口点击“OK”。
右击上图中的芯片,点击Program进行bit文件烧写。
烧写完成后,从“开始”栏打开Chipscope(Analyzer),点击上图中图标,连接设备。
在“Cipscope Pro Analyzer”窗口点击“OK”。
点击“File”,“Import”,“Select New File”导入CDC文件。
在“Trigger Setup”窗口可设置触发条件;在“Waveform”窗口可查看采集的数据;在“BUS Plot”窗口可以查看采集数据波形。
- 导出数据文件
首先将要导出的数据格式改为有符号十进制数。
点击“File”,“Export”。
在“Export Signals”栏,选择ASCII文件格式、选择需要导出的数据单元、选择导出内容“Waveform Signals/Buses”,点击“Export”,得到后缀名为prn的数据文件。
注:在使用Matlab处理prn文件时,需要将prn文件的第一行删掉。