kukaky的个人空间 https://blog.eetop.cn/48941 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Fpga设计流程

已有 1102 次阅读| 2006-9-20 22:48

天气: 晴朗
心情: 高兴

FPGA设计流程
副标题:
作者:佚名 文章来源:本站原创 点击数:1194 更新时间:2006-3-17
 
 
使用modelsim进行功能仿真
导入源程序和testbench进行仿真,并保存波形文件(.wlf)
2,使用synplify pro对硬件描述语言编译并生成netlist
综合前要注意对器件的选择,方法是在project->implementation option中对要下载的器件和网表的生成情况进行选择。综合后的网表有两种: RTL级网表和门级网表(gate netlist),通过对网表的分析可以对设计的实现方式有初步的了解,并分析其中的错误和不合理的地方,另外还可以对关键路径的delay和slack进行分析。
使用synplify pro要先新建工程,注意修改工作目录,然后添加所要编译的文件,要注意top文件要最后一个添加,这样才可以保证生成的文件是以top文件来命名的
3,使用quartusⅡ根据netlist进行布线,并进行时序分析
在使用quartusⅡ前要做一些必要的设置,在assignments->eda tools setting中的simulation中选择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模块前后仿真的对比图

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

 


点赞

全部作者的其他最新日志

发表评论 评论 (1 个评论)

回复 kukaky 2006-9-20 22:50
个人认为不错的一篇文章,综合利用了不同的工具的优点。

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 0

    获赞
  • 6

    评论
  • 访问数
关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-26 17:39 , Processed in 0.023125 second(s), 18 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部