当前位置:首页 > 新闻资讯 > FPGA之家动态 >

FPGA开发流程简介

时间:2025-04-08      来源:FPGA_UCY 关于我们 0

典型的fpga开发流程一般包括功能定义/器件选型、设计输入、功能仿真(RTL级仿真)、综合优化、综合后仿真(静态仿真)、实现(布局布线)、布线后仿真(静态时序分析及时序仿真)、板级仿真以及芯片编程与调试等主要步骤。

1,功能定义/器件选型:

在系统设计之前,首先要进行的是方案的论证、系统设计和fpga芯片的选择等准备工作。工程师要根据任务要求,比如系统的指标和复杂度,对工作速度和芯片本身的各种资源、成本等方面的权衡,选择合适的设计方案和器件类型。一般都是采用自顶向下的设计方法,把系统分为若干个基本单元,然后把每个基本单元划分为下一层次的基本单元。

2,设计输入:

设计输入有三种形式,IP核、原理图、HDL;

3,功能仿真:

也称为前仿真,是再编译之前对用户所设计的电路进行逻辑功能验证,此时仿真没有延迟信息,仅对功能进行验证。

4,综合优化:

综合就是将高级抽象层次的描述转化成较低层次的描述。综合优化根据目标与要求优化所生成的逻辑连接,使层次设计平面化,供FPGA布局布线软件进行实现。综合优化是指将设计编译成由逻辑门、RAM\触发器等基本逻辑单元组成的逻辑连接网表,而并非真实的门级电路。在的开发流程中,将编译、映射过程合称为综合,在开发流程中,由设计输入得到门级网表的过程叫做综合,而映射过程归结到实现的步骤中。

5,综合后仿真:

检查综合结果是否与原设计一致,在仿真时,把综合生成的标准延时文件反标注到综合仿真的模型中去,可估计门延时带来的影响,但不能估计线延时。

6,布局布线:

利用实现工具把逻辑映射到目标器件结构的资源中,决定逻辑的最佳布局,选择逻辑与输入输出功能连接的布线通道进行连线,并产生相应文件;实现是将综合生成的逻辑网表配置到具体的FPGA芯片上,布局布线是其中最重要的过程。

7,时序仿真:

也称为后仿真,是指将布局布线的延时信息反标注到设计网表中来检测有无时序违规现象。时序仿真包含的延迟信息最全,最精确,能较好的反应芯片的实际工作情况。

8,板级仿真与验证:

主要应用与高速电路设计,对高速系统的信号完整性、电磁干扰等特征进行分析。

9,芯片编程与调试:

芯片编程是指生产使用的数据文件,然后将编程数据下载到FPGA芯片中。芯片编程需要满足一定的条件,如编程电压、编程时序和编程算法等方面。逻辑分析仪是FPGA设计的主要调试工具,但需要引出大量的测试管脚。

10,约束:

是指对相关环节操作制定规则,分为综合约束和布局布线约束(位置约束,时序约束)

FPGA配置过程

在FPGA正常工作时,配置数据存储在SRAM中,这个SRAM单元也被称为配置存储器( RAM)。由于SRAM是易失性存储器,因此在FPGA上电之后,外部电路需要将配置数据重新载入到芯片内的配置RAM中。在芯片配置完成之后,内部的寄存器以及I/O管脚必须进行初始化(),等到初始化完成以后,芯片才会按照用户设计的功能正常工作,即进入用户模式。

FPGA上电以后首先进入配置模式(),在最后一个配置数据载入到FPGA以后,进入初始化模式(),在初始化完成后进入用户模式(user-mode)。在配置模式和初始化模式下,FPGA的用户I/O处于高阻态(或内部弱上拉状态),当进入用户模式下,用户I/O就按照用户设计的功能工作。

配置模式分为在线调试配置和固化。在线调试配置是通过JTAG模式完成的。JTAG接口时业界标准接口,主要用于芯片测试等功能。固化程序到存储器的过程可以分为两种方式,主模式和从模式。主模式下FPGA器件引导配置操作过程,它控制着外部存储器和初始化过程;从模式下则由外部计算机或控制器控制配置过程。主、从模式从传输数据宽度上,又可以分为串行和并行。


注明:本内容来源网络,不用于商业使用,禁止转载,如有侵权,请来信到邮箱:429562386ⓐqq.com 或联系本站客服处理,感谢配合!

用户登陆

    未注册用户登录后会自动为您创建账号

提交留言