昨天大概讲了下数字信号处理中的模拟信号与数字信号之间进行转换的原理,今天将SystemGenerator给安装下,有些人在安装相关开发软件时可能就已经安好了。
微信
System Generator是Xilinx公司进行数字信号处理开发的一种设计工具,嵌入了Xilinx的一些模块,能够在MATLAB中的Simulink中进行定点仿真,能够设置定点信号的类型等操做,不过我更看重的是那个能够直接生成HDL文件,而后用于设计Xilinx的FPGA,ISE能够调用,VIVADO也能够调用,不过如今应该搞得比较多的是VIVADO,因此就直接按VIVADO的来玩这个System Generator。
System Generator是在安装VIVADO时就可选的,若是安装VIVADO的时候没安,就本身再补安下,能够看如下的操做步骤,先说下,我用的版本是VIVADO 2018.2,以前学VIVADO设计FPGA时安了后就没去更新过了,也不知道新版本的咋个样,估计差不到多少去。
补安
设计工具或者器件库均可以从这进入,打开VIVADO,再打开Help下的Add Design Tools or Devices....

而后登陆你XILINX的帐号进行下载安装(帐号直接在官网注册个就行,或者查查有没有跳过该步骤的办法
)

进入安装界面后,勾选上图中的System Generator for DSP,我这边是已经安装好了,因此是显示打了勾的框,若是没安装是空白的,而后点击NEXT,再Install,慢慢等待安装完成就好了。


由于System Generator是在MATLAB上使用Simulink进行的,因此要和MATLAB一块儿运行,这就关系到其版本的问题了,根据本身下的VIVADO版本对应ug973这个文档中查看兼容哪些版本,在文档的配置的第三方工具这一项。

个人VIVADO是2018.2的版本,从下方的图能够看到MATLAB版本能够兼容R2017a,R2017b和R2018a,不过更高版本的固然也能够了,我用的就是R2019b,旧版本的不太清楚在使用的时候会不会出什么问题,能够本身尝试,固然要兼容ug973这个文件里没有的版本还须要对一个文件作下修改,否则SystemGenerator会不支持本身版本的MATLAB。

在改文件前,要先知道本身MATLAB的版本信息,网上说的是在卸载软件的地方能够看到,好比这个样子,不过个人R2019b的版本不是3.1这个,用3.1去改文件一直没成功,我还郁闷了很久为何别人的跟我不同
,不过折腾了下仍是找到真实的版本信息了。

我是这样操做获得版本信息的,先找到MATLAB这个EXE所在的路径(直接找安装路径或者其余方式打开位置所在),而后直接看它属性,再点详细信息,就能够看到版本信息了,个人就是9.7版本而不是上面看到的3.1。

知道本身MATLAB的版本信息后就能够更改
Vivado
安装目录下的文件ml_supported.xml,而后编辑,往里面添加你本身MATLAB版本的信息,如下红色框框里的就是要添加的版本信息。

添加完后,保存,而后打开
System Generator 2018.2 MATLAB Configurator
,在开始菜单中的Xilinx Design Tools下能够找到,我这边是由于还装了ISE的版本,因此会看到有四个,若是只装了一个XILINX的开发工具,只会有两个System Generator的相关。

打开配置后,会看到如下的图中这个样子,由于R2016a的MATLAB版本信息我没加在刚刚的文件中,因此会显示不支持的字样,R2019b则是未配置,按下方红箭头依次点击。


点OK就行了,而后会发现状态变成已配置,这时候至关于配置成功,再点OK结束就行了。


准备完成后,开始使用System Generator进行一个简单的设计流程
一、运行SystemGenerator 2018.2(按本身的版本打开便可),而后就会调用MATLAB的运行程序,等待打开完成后,MATLAB会有一段加载System Generator库的时间,当命令窗口出现以下图所示的状况就能够下一步操做;
注:从图中的表述可知道在命令窗口输入“xlDoc”可以打开System Generator的帮助文档,输入“demo blocksetxilinx”可查阅官方示例(感受有点耗时,不知道是否是网络的缘由)。

二、打开Simulink,能够在命令窗口输入simulink或者单机MATLAB工具栏的Simulink按钮,以下图所示

三、打开后,先创建一个空白模型而且保存到要存的位置上

四、打开Library Browser,这个打开就是Simulink的仿真库

五、在仿真库界面能够看到有Xilinx的仿真库“Xilinx Blockset”和“Xilinx Reference Blockset”

六、放置仿真模块并仿真,找到库界面中的Simulink,将该目录中的Source中的Constant模块和Sinks中的Scope模块放到刚刚创建的空白模型的窗口,而且链接起来,能够先仿真看此时的结果。
Constant模块中的Sample time默认为inf的,须要先将其改成你想要的采样时间,否则仿真的结果只有一个点。


七、放置SystemGenerator的仿真模块并仿真,打开Xilinx Blockset下的Basic Elements,将图中的四个模块放到模型文件中,看到这些名字,或许你就知道我要实现的是一个什么功能。


九、运行10s的仿真,结果以下,能够看到在等待1s之后,信号才持续输出,这也是用到Delay的那个延迟做用所致;


原本还想把生成VIVADO工程的也继续写出来,可是在生成工程的时候遇到一个奇怪的bug
,看看明天发以前能不能解决掉
,我把相关的软件都传到了网盘,没有MATLAB或者VIVADO的能够自行获取来安装使用,设计文件我就不传上去了,感受没什么实际意义,这篇也主要就是对这个工具的使用流程有个了解先。
阅读本文共使用
秒网络
软件
获取
方式以下
:
🔥更多精彩等你发现🔥


⇈长按识别二维码关注电子狂人⇈工具

本文分享自微信公众号 - 电子狂人(DZKR666)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。开发工具