这两天基本完成了实验室工程从ISE向vivado的移植,包括了两片FPGA的两个工程,这两个工程还算是比较大的工程,包括了内存,接口,embedded system,算法模块等,在这过程中也很好的熟悉了vivado的开发流程,发现了一些很好用的工具。
首先从整体上对vivado这个工具有了更深入的认识,整个可以分为源代码的编辑(包括hdl代码的编辑,IP core的添加),这里有两个独立的工具,一个是IP integrator,其实就是生成block design用的,而这个block design往往是embedded system,采用图形化界面,最后是一个bd源文件,加上hdl的顶层wrapper;还有一个是RTL analysis,这个虽然我没有用,但是应该是和源代码编译相关的,这里有一个叫DRC(Design Rule Checks),其实就相当于以前ISE的synth check。这里因为是移植工程没有新的源代码的编辑,所以不了解这个编译器是否好用。
其次就是仿真,这里仿真不再是Isim,Xilinx重新编写了仿真工具,而且效率快很多,使用简便,点击对应testbench文件,run simulation就行。
再次就是synthesis步骤,这里每次synthesis结束之后,可以打开synth,对应着open synthesized design,这时候发现主界面原来是project manager,就变成了synth_1(对应implementation也是一样),synthesis结果打开之后,可以edit timing constraints,可以report timing summary,这个都是一个初步的结果,流程和implementation之后一致,这里就不在介绍了,一般我们都看implementation的结果。
最后就是implementation步骤,implementation结束后也是会在原来project manager这里出现一个impl_1,其实里vivado设计是可以允许打开多个impl设计的,这样可以方便对比不同设计的结果,并进行优化,提高优化的效率。
这里重点觉得好用的是open implementation design下面的几