Vivado开发工具熟悉

目前借助实验室的项目对Vivado开发工具进行熟悉,从上次AVNET的会包括最近玩ZYBO板子都了解到,Vivado已经成为潮流,ISE已经被淘汰(14.7 2013年最后更新)。虽然ISE和Vivado开发工具没有本质的不同(都是FPGA开发工具),但是从ISE转向Vivado还是需要一些时间去磨合适应的。毕竟这是一个比较根本上的更新换代。

目前来看Vivado开发环境主要的好处有一下几点:

1,速度更加快,这个是从AVNET的X-fest会上听到的,Vivado开发的目的就是因为ISE太慢了,了解到Vivado的synthesize, map, P&R(现在就只叫implementation)算法都是重新写的,详细的流程也略有不同(详见综合布线报告),官方称编译速度要比ISE快数倍,这对大容量的FPGA开发显然加速不少;

2,更加集成,Vivado将原来ISE的isim(也经过了重写),chipscope(现在叫debug),XPS都集成到了一个开发环境下,因此,开发,仿真,调试都在一个开发环境下进行,不用每次打开那么多的软件,显然是一件好事(当然用惯ISE的表示需要一段时间去适应)。

3,适合系统开发,所谓适合系统开发是针对最近推的zynq系列的FPGA,当然也包括带软核的系统实现方案(比如再次我们KC705带一个microblaze软核),这是因为Vivado将ISE的XPS和plan ahead集成到了一起,因此非常适合带核的系统开发。这也引出了我要说的第4点好处;

4,基于IP核的开发流程,Vivado最大的变化我觉得其实是FPGA开发思路的转变,ISE其实还是基于手写VHDL自顶向下的开发思路,这种方式完全是从底层开发,虽然代码的质量上肯定会很高,但是在仿真调试上都有比较大的难度,虽然目前专业的FPGA开发还是会采用手写VHDL的方式。但是随着目前FPGA器件速度越来越快,容量越来越大,采用完全底层开发的方式的优势逐渐减弱。而Vivado这种基于IP核的开发思路可以大大减少手写VHDL代码量,将常用的模块接口进行封装(意味着灵活性的降低),本质上FPGA开发变成了模块化开发方式(类似软件里面linux操作系统)。对于大规模系统开发,Vivado这种基于IP核开发的思路显然大大提高了开发效率。


目前我这边在花一定的时间将之前远程同步采集系统ISE工程向Vivado上面移植,借此来对Vivado进行实战上的熟悉,目前使用下来总结下来一些和ISE不一样的地方:

1,首先就是IP核文件结构发生了变化,目前的IP核有如下的特点,不需要添加源文件,在IP Catalog里面选择后生成,IP核右键可以直接打开参考设计(另外得到一个工程)并包含仿真程序;

2.,约束文件变化,这里Vivado的约束概念和ISE设计有所变化,直观来看,就是由ucf约束文件改为了xdc约束文件。目前没有直接转换的工具,需要手动转换,这里约束文件的转换可以参考ug911;

3,chipscope改变,前面讲了,Vivado中chipscope是集成在环境中的,需要在综合结束后,synthesis下面的Open Synthesized Design下的Set Up Debug中添加chipscope观察信号,然后烧入bit文件后,在Vivado的Program and Debug下Open Hardware Manager下点击Open Target进行观察;

4,其他小地方的不同,ISE中的 template在Vivado中没有了,比如ISE下面例化的vhi文件Vivado不能再自动产生,testbench也不能自动产生,都需要手动去写,不过google了一下发现这些工具在tcl store里面是有的,通过tcl脚本来实现,但是由于实验室的电脑不能联网,因此这里也没有再去尝试。


总的来说Vivado开发工具在FPGA开发上肯定是更加好用的,无论是在开发难度还是开发效率上都有所提升,后面我自己还需要慢慢去熟悉!


你可能感兴趣的:(Vivado)