|
设计在线调试
System Generator提供了使用ChipScope和共享存储器两种方法来实现系统的在线调试,它们都可以利用相关工具获得可视化的测试信号,都支持十六进制、十进制以及二进制数,允许在模型中比较参考信号,且支持逻辑值和模拟量两种信号显示方式。
使用ChipScope完成在线调试,需要在模型中插入ChipScope模块,在FPGA芯片中插入ChipScope探头,通过JTAG接口实时地完成芯片内部信号的采集。如果使用共享存储器的方式,则需要由FPGA硬件、Simulink设计以及MATLAB软件共同提供一个独立的共享地址空间,将FPGA芯片中的数据实时地存储到空间中,然后再读回Simulink设计,可简化整个在线调试的数据分析。
本次以ChipScope法为例介绍如何完成设计的在线调试。
例7-4 利用System Generator实现一个正弦波信号发生器,并通过ChipScope在FPGA芯片中实时分析。
1. 在MTALB中启动Simulink,建立设计模型,从Xilinx模块库中添加Counter模块、SinCosine模块、ChipScope模块、Gataway Out模块、System Generator模块以及Scope模块,其连接关系如图7-50所示,并保存为mychipscope.mdl。
2. 双击SinCosine模块,选定Function为Sine;双击Counter模块,设置步长为1。
3. 双击ChipScope模块,在Triggers栏中选择Number of trigger ports为1;Triggers Setting栏中设定Match type为Extended;Nunber of data ports设定为1,且选中“Use trigger ports as data”选项。
4. 双击Gataway Out模块,选中Specify IOB location constraints选项,在IOB pad location(cell array {' MSB',…,'LSB'})中输入{'F12','E12','E11','F11','C11','D11','E9','F9'}。
5. 在Simulink中单击运行键开始仿真,结果如图7-51所示。由于Counter的步长设置的比较小,所以正弦信号的频率较低,需要将仿真时间设置的长一些。
图7-50 在线调试的正弦信号发生器设计
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?我要注册
x
|