FPGA验证在SOC设计非常重要,一般而言,做一些RAM和FIFO的替换以及相应代码转换。具体分下面几步:
1 替换RAM,FIFO和时钟
RAM和FIFO控制器需要RAM的接口都放在了设计顶层,方便RAM做BIST。采用generate 做RAM的例化,提供代码的可读性。
2适当做一些外围接口
3 用synplify综合
对于RAM 采用stub综合,编写相应的综合约束。
4 用vivado布局布线
编写布局布线的约束文件,比如全局时钟,引脚分配等。用采用增量编译和多核编译提供开发效率。在采用多核进行增量编译时,需要在在Xilinx/Vivado/2013.4/scripts/init.tcl 文件中加入
set_param general.maxThreads 8
该文件默认不存在,需要自己新建。
5 生bit文件下载到FPGA原型验证板上。观察芯片运行状态。
参考文献:
1现在是时候将您的 FPGA 原型验证系统升级到 V7-2000T 了.
2透过FPGA原型验证复杂的ASIC(ZT).
http://blog.sina.com.cn/s/blog_6df0701a0100xm5e.html
3工作方向请教:FPGA原型验证.
http://bbs.eetop.cn/thread-370917-1-1.html
4原型验证过程中的ASIC到FPGA的代码转换
5用多片FPGA 进行ASIC 设计验证的分区和综合技术
6 [FPGA博客大赛]ARM Soc芯片验证手记
7 Change the default number of threads on Vivado
https://forums.xilinx.com/t5/Design-Entry/Change-the-default-number-of-threads-on-Vivado/td-p/309505
8 vivado 设置 多线程编译
http://blog.csdn.net/angelbosj/article/details/51596146
9 vivado多线程编译实现方法
http://blog.chinaaet.com/sock/p/40319