FPGA设计流程“又臭又长”?从eda工具理解超级简单!

对于初学者而言,FPGA的设计流程是否显的“又臭又长”呢??嗬嗬,如果真的有这样的感觉,没有关系,下面我就通过对软体的使用来了解FPGA的设计流程。

1)使用synplify pro对硬件描述语言编译并生成netlist

综合前要注意对器件的选择,方法是在project-》implementa         TI   on op         TI   on中对要下载的器件和网表的生成情况进行选择。综合后的网表有两种: RTL级网表和门级网表(ga     te   netlist),通过对网表的分析可以对设计的实现方式有初步的了解,并分析其中的错误和不合理的地方,另外还可以对关键路径的delay和slack进行分析。

使用synplify pro要先新建工程,注意修改工作目录,然后添加所要编译的文件,要注意top文件要最后一个添加,这样才可以保证生成的文件是以top文件来命名的

2)使用modelsim进行功能仿真

导入源程序和testbench进行仿真,并保存波形文件(.wlf)

3)使用q     uart   usⅡ根据netlist进行布线,并进行时序分析

在使用quartusⅡ前要做一些必要的设置,在assignments-》eda tools set  TI ng中的simula  TI on中选择modelsim,并选择选项run this tools automatically after compilation。如果没有提前做这些设置,可以quartus做完编译布线后,做同样的设置,然后运行EDA netlist writer和eda simulation tool

在使用synplify pro得到满意的netlist后,可以在synplify pro中通过option-》 quartusⅡ直接调用quartusⅡ,quartusⅡ对synplify pro生成的.vqm文件进行编译,布线。然后根据设计要求进行时序分析和引脚调整。

4)使用modelsim进行布线后仿真

由于quartusⅡ提前做了设置,因此在编译布线完成后,会在工作目录下生成modelsim仿真所需要的文件和库(modelsim_work),在modelsim中将产生的文件和库所在的文件夹设置为当前目录,modelsim_work库会自动导入,新建工程会提示所使用的modelsim.ini文件,应使用quartus生成的,然后导入文件(包括testbench),进行编译,仿真的时候在library中添加modelsim_work库,在sdf选项中可以添加quartus生成的延迟信息文件.sdo,注意作用域的选择,如果testbench中调用被测试模块的语句是send3a tb,那幺作用域应该写tb,在option选择中可以选择是否看代码覆盖率。另外,还可以将布线后的仿真结果与功能仿真的结果进行对比。下图就是小型Soc中send3a模块前后仿真的对比图

 FPGA设计流程“又臭又长”?从eda工具理解超级简单!_设计制作_MEMS/传感技术

从图中可以看出,除了有一定的延迟外,输出波形不变。

5)将quartus的波形转化成testbench的方法:画好波形后,通过file-》export可以将波形输出到quatus的工作目录,verilog语言扩展名为.vt,修改为.v后可以在modelsim中使用,需要说明的是如果波形中包括输出端口的话,输出的testbench包含叁个模块,一般情况下,只需将输入波形画好后,输出到testbench就

实际上,我们可以看出,整个过程实际就是: 代码编写---》功能仿真----》综合----》布局,布线----》门级仿真-----》下载------》板子调试

这样一看,塬来HDL设计流程其实也很明了和简单。。不是吗??

53
48
0
23

相关资讯

  1. 1、《HND英雄永不灭》圣诞版今日上线再获苹果推荐2259
  2. 2、最强大脑《推理学院》新资料片“狼人杀”5月12日开启1502
  3. 3、北京烤鸭加入《料理次元》豪华套餐4255
  4. 4、经典回归重拾情怀《鬼吹灯3D》周边礼品大揭露1146
  5. 5、面面俱到也是特色《青春篮球》重塑PF小前锋4124
  6. 6、喜大普奔之模范游戏《猎魔(安卓版)》即将首发1749
  7. 7、《街篮高手》竹婷徽记攻略发布女版姚明回归球场1770
  8. 8、小兵传奇手游开发商推另类海报满满的正能量4945
  9. 9、《莽荒纪之无尽疆域》新版爆料英雄重置战斗加速4085
  10. 10、体育手游新方向《豪门足球风云》首月流水超6000万5103
全部评论(0)
我也有话说
0
收藏
点赞
顶部