文档介绍:华为FPGA设计流程指南
前言
本部门所承担的FPGA设计任务要紧是两方面的作用:系统的原型实现和ASIC的原型验证。编写本流程的目的是:
在于规范整个设计流程,实现开发的合理性、一致性、高效性。
形成风格良好和完整的文档。
实现在FPGA不同厂家之间以及从FPGA到ASIC的顺利移植。
便于新职员快速把握本部门FPGA的设计流程。
由于目前所用到的FPGA器件以Altera的为主,因此下面的例子也以 Altera为例,工具组合为 modelsim +
LeonardoSpectrum/pilerll + Quartus,但原则和方法关于其他厂家和工具也是差不多适用的。
目录
.基于HDL的FPGA设计流程概述 1
设计流程图 1
关键步骤的实现 2
121功能仿真 2
122逻辑综合 2
前仿真 3
布局布线 3
125后仿真(时序仿真) 4
. Verilog HDL 设计 4
编程风格(Coding Style)要求 4
文件 4
大小写 5
标识符 5
参数化设计 5
空行和空格 5
对齐和缩进 5
注释 5
参考C语言的资料 5
可视化设计方法 6
可综合设计 6
设计名目 6
.逻辑仿真 6
测试程序(test bench) 7
使用预编译库 7
.逻辑综合 8
逻辑综合的一些原则 8
关于 LeonardoSpectrum 8
大规模设计的综合 8
必须重视工具产生的警告信息 8
调用模块的黑盒子(Blackbox)方法 8
参考 10
修订纪录 10
.基于HDL的FPGA设计流程概述
设计流程
(1)设计定义
(2) HDL实现
(3)功能仿真
(4)逻辑综合
(5)前仿真
(6)布局布线
FPGA厂家工具
(8)静态时序分析
逻辑仿真器
(9)在系统测试
讲明:
逻辑仿真器要紧指modelsim, Verilog-XL等。
逻辑综合器要紧指 LeonardoSpectrumSynplify、FPGA Express/piler 等。
FPGA 厂家工具指的是如 Altera 的 Max+PlusIL QuartusII,
Xilinx 的 Foundation > Alliance > 等。
测试程序
(test bench)
逻辑仿真器
讲明:
“调用模块的行为仿真模型”指的是RTL代码中引用的由厂家提供的宏模块/IP,如Altera提供的LPM库中的乘法器、储备器等部件的行为模型。
调用模块的
黑盒子接口
逻辑综合器
讲明:
“调用模块的黑盒子接口”的导入,是由于RTL代码调用了一些外部模块,而这些外部模块不能被综合或无需综合,但逻辑综合器需要其接口的定义来检查逻辑并保留这些模块的接口。
讲明:
一样来讲,对FPGA设计这一步能够跃过不做,但可用于 debug综合有无咨询题。
,4布局布线
逻辑综合器