fpga 的设计开发流程主要包括以下步骤

fpga 的设计开发流程主要包括以下步骤

ID:6858301

大小:28.00 KB

页数:2页

时间:2018-01-28

fpga 的设计开发流程主要包括以下步骤_第1页
fpga 的设计开发流程主要包括以下步骤_第2页
资源描述:

《fpga 的设计开发流程主要包括以下步骤》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、FPGA的设计开发流程主要包括以下步骤:设计输入(DesignEntry)、仿真验证(Verification)、综合(Synthesis)及布局布线(Place&Route)和比特流生成。    在简单的FPGA设计中,设计输入就是使用硬件描述语言编写RTL的过程,虽然还有一些基于状态图、真值表、流程图、方框图的设计输入方法,现在基本已经被淘汰。硬件描述语言最重要的是Verilog/SystemVerilog,其次是VHDL。目前基于VHDL的设计越来越少。SystemVerilog是VHDL和Verilog合并后产生的新语言,是它们的继承和发展。对于初

2、学者,学习SystemVerilog就够了。设计输入编辑工具有很多,ModelSim、VisualHDL、ActiveHDL、ISE、QuartusII都有针对HDL的编辑工具,也有些人使用支持Verilog语法高亮的UltraEdit。ActiveHDL提供HDL语法高亮显示、自动产生文本结构、自动格式化文本等非常有益的文本编辑浏览特性,在国内很受欢迎。对于设计输入,核心的问题是有三个:(1)熟练使用HDL语言(2)准确的把握要完成的设计功能及其性能指标;(3)充分理解常见的设计思想,保证设计功能和性能指标的恰当表达。   基于HDL的设计输入的缺点是效

3、率低下,不能满足复杂设计快速实现的要求,其优点是与电路结构紧密联系,能够清晰的表达跨时终域、延迟、逻辑工程和比特存储功能。近年来,基于C/SystemC语言的算法综合和系统级综合技术发展迅速。用户只需使用C/SystemC描述目标设计,工具就能够自动完成C/SystemC描述到RTL描述的综合。这种新技术在航空、航天、军工等领域广泛使用,主要用于运算加速。目前比较成功的C/SystemC描述到RTL描述的综合的软件有CoDeveloper(ImpulseC)、CatapultC等。我们也在研发一种称作ESLFlex的国产综合软件。ESLFlex与CoDev

4、eloper(ImpulseC)、CatapultC等的区别是:ESLFlex是一种系统级综合工具,在系统级综合领域有一些独特的创新,从SystemC非定时模型得到异构多核SoC,而CoDeveloper(ImpulseC)、CatapultC是算法综合工具,综合的结果是一个算法加速IP。   设计输入的另外一个重要技能是学会使用FPGA厂商提供的设计库,里面有大量可根据应用定制的专门单元,如FIFO、SRAM、差分IO、DLL等。      仿真验证是FPGA开发的第二个步骤,目的是验证所编写的HDL或者高层次综合得到的HDL的功能正确性,即是否与预定的

5、功能相符。这时需要使用SystemVerilog或者SystemC编写Testbench,以产生RTL设计的激励,并对RTL的输出进行分析。简单的设计使用SystemVerilog编写Testbench即可,对于复杂的设计以及软硬件结合的设计,使用SystemC更加方便。验证的最基本方法是仿真。仿真包括功能仿真和时序仿真。其中,功能仿真在布局布线之前,检查设计输入的正确性;时序仿真在布局布线之后,主要检查时序的收敛性,综合结果与功能仿真的不一致性。常见的仿真工具有ModelSim、ActiveHDL等。仿真工具都支持SystemVerilog、System

6、C和VHDL,也支持这些语言混合在一起的设计。对于一些小的设计,主要是肉眼观察仿真结果是否与预期相符,对于一个复杂的大设计,要首先验证每一个子模块的功能正确性,对于整个大设计,要使用工具对比参考设计比如基于C语言的参考设计在同样的激励下产生的输出与RTL的输出是否相同。    综合(Synthesis)及布局布线(Place&Route)和比特流生成都是设计工具自动完成的步骤。当然,也需要使用者进行一些设置,以使得工具自动完成的结果更加符合预期。综合工具实现从HDL语言到门级网表的生成。FPGA厂商的FPGA集成开发环境一般提供综合工具,比如Xilinx的

7、XST和AlteraQuartusII内置的综合工具,目前使用最广泛的第三方综合工具是Synplicity公司的Synplify。布局布线采用FPGA厂商提供的工具。Xilinx有FoundationSeries, Altera有QuartusII。布局布线更具体的包括门级网表到FPGA基本单元的转换(Xilinx称作Translate,Altera称作Map)和实际的布局布线(Xilinx称作PAR,Altera称作Fit)。布局布线的结果进一步被用来可以下载到FPGA比特流。在进行布局布线之前,我们需要设置顶层设计的每一个输入输出与实际FPGA管脚的对

8、应关系。这种对应关系是在在电路板设计的原理图设计阶段确定的。如果你

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。