原创 【博客大赛】Zynq构建SoC系统深度学习笔记-01-利用IP集成器构建嵌入式SoC系统(06)

2016-1-20 22:08 1813 10 10 分类: FPGA/CPLD 文集: Zynq构建SoC系统深度学习笔记

【声明】纯属原创,未经允许,禁止转载。

3.5 将硬件集成设计方案转变成verilog封装形式

    到此为止,对于SoC的设计是存储在.bd格式的文件中的,这种格式应该是便于配置和图形化显示,但是这种格式不能让FPGA接受,需要转变成verilog格式。

图片1.jpg

    这个转换的过程称为“Create HDL Wrapper”,Wrapper字面的意思是“包装纸,书皮”。也就是加一个封装形式。

    操作如下所示:

图片2.jpg


    选择如图所示的选项即可。

图片3.jpg

    运行完毕之后,变为:

图片4.jpg

    可 以看到,在MySystem.db文件上层又封装了一个MySystem_wrapper.v的verilog文件。打开这个文件,只是一个模型定义,里 面直接实例化了一个MySystem的模块,而MySystem的实现是黑盒子,应该是已经自动后台综合成了网表,用户无法看到其具体的RTL级设计。

    再看上图中的Constraints项,并没有约束文件,那么Zynq子系统使用的PS_CLK, DDR, UART (MIO[48:49]), 具体是怎么约束的呢?

 

3.6 SoC系统管脚绑定

    点击Flow Navigator中的Synthesis下的Run Synthesis项。

图片5.jpg


    系 统会开始进行综合,将Block Design转化成网表(Vivado结构下是否还叫网表有待研究),运行时间会比较长,耐心等待。综合完成后,选择Open Synthesis Design,如果错过了该入口,可以点击上图的Open Synthesis Design,从而进入Synthesis Design功能页面。

    进入Synthesis Design页面后,在工具栏的下拉列表中选择I/O Planning,如下图所示。

图片6.jpg


    将会进入IO管脚的配置界面,在下方的I/O Ports列表中将会显示所有的管脚信息,包括Zynq子系统固定的管脚配置。

图片7.jpg


    可 以看到Block Designed中跟Zynq子系统Auto Block Automation中绑定的外接管脚DDR, FIXED 都已经出现了。还有用户自定义模块中gpio_sw中由软件Auto Connection Automation绑定的的sw_8bit也几经自动绑定了管脚约束。

    而我们没有让软件自行绑定的btn_5bits也自动绑定了,而且还是对的。真是奇怪了。

图片8-s.jpg


    打开FIXED_ID菜单,可以看到Zynq子系统中指明的54个MIO都已经被明确了管脚。其中[48:49]是指定的UART1的TX和RX。

图片9.jpg
图片10.jpg

    根据原理图,配置是正确的,也不知道修改Block Design中UART1的MIO管脚对应关系,Vivado是否会自动修改FIXED_MIO的管脚约束,这个有待进一步验证。

    【注意】相似I/O Port页面这些管脚约束是不可修改的,但在IO Port Properties页面是可以修改的。除非对系统结构特别明白,否则建议不要这样做。

图片11.jpg


    从上图可以看到针对Zynq子系统的PS_CLK和RST管脚具体绑定的物理管脚,对照原理图,也是正确的,如下图所示,但是对于PS_CLK管脚的IO口,原理图给的参考电压是3.3V,而约束配置默认的是1.8V是否会有问题??有待研究。

图片12.jpg


    DDR的结构类似,也可以看到,这里就不再分析。

    如果对于管脚的绑定,全部采用软件默认的配置结果,系统中是不会产生约束文件的。

图片13.jpg


    这里修改一个btn_5bits的管脚绑定顺序。

图片14.jpg
图片15.jpg

    此时,工具栏的保存按钮被激活。

图片16.jpg


    点击之后,弹出如下对话框。

图片17.jpg

    点击OK之后,显示如下对话框。

图片18.jpg

    因为现在系统中没有约束文件,因此点击Update按钮软件也会提示你新建一个约束文件,显示的操作界面如下:

图片19.jpg


    在这种方法下,创建的约束文件会保存在Constrs_1的约束集下。

图片20.jpg


【未完待续】。。。
 

文章评论0条评论)

登录后参与讨论
我要评论
0
10
关闭 站长推荐上一条 /2 下一条