FPGA开发主要包括系统设计、设计输入、功能仿真、综合优化、综合后仿真、实现与布局布线、时序方针与验证、板级方针与验证、芯片编程与调试等9个部分,如下图所示。

1. 电路设计

在系统设计之前,首先要进行的是方案论证、系统设计和FPGA芯片选择等准备工作。

2.设计输入

将设计的系统或电路硬件描述语言表示出来,输入至EDA工具中。如:Verilog HDL和VHDL等。

3.功能仿真

功能仿真也称为前仿真,即仅对用户所设计的电路进行逻辑功能验证,此时的仿真没有延迟信息,仅对初步的功能进行检测。如发现错误,则返回“设计输入”修改逻辑设计。

4. 综合

综合就是将高级抽象层次的描述转换成较低层次的描述。综合优化是指将设计输入编译成由与门、或门、非门、RAM、触发器等基本逻辑单元组成的逻辑连接网表,从而优化所生成的逻辑连接,使层次设计平面化,供FPGA布局布线软件进行实现。

5. 综合后仿真

综合后仿真用于检查综合结果与原设计是否一致,在仿真时,把综合生成的标准延时文件反标注到综合仿真模型中,可估计门延时带来的影响。但还无法估计线延时,和布局布线后的实际情况由一定的差距。

6. 实现与布局布线

实现是将从何生成的逻辑网表配置到具体的FPGA芯片上,布局布线是其中关键步骤。布局过程是将逻辑网表中的硬件原语和底层单元合理地配置到芯片内部固有的硬件结构上;布线则是根据布局的拓扑结构,利用芯片内部的各种连线资源,合理正确地连接各个元件。

7. 时序仿真与验证

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

8. 板级仿真与验证

板级仿真主要应用于高速电路设计中,对高速心态的信号完整性、电磁干扰等特性进行分析。

9. 芯片编程与调试

芯片编程是指产生使用的数据文件(比特流),然后将编程数据下载到FPGA芯片中,此时设计者可通过在线逻辑分析仪(ILA)进行系统调试和验证。

参考:《无线通信FPGA设计》 田耕 徐文波 张延伟等.

FPGA的基本设计流程相关推荐

  1. 【FPGA-F3】阿里云FAAS平台,极大简化FPGA开发部署流程

    摘要: 阿里FPGA云服务器平台FaaS(FPGA as a Service)在云端提供统一硬件平台与中间件,可大大降低加速器的开发与部署成本.普惠开发者 FPGA (现场可编程门阵列)由于其硬件并行 ...

  2. 9 pcb螺丝焊盘打很多小孔_PCB板设计的10个基本设计流程

    PCB板设计需要提供信息: (1)原理图:一种完整的电子文档格式,可以生成正确的网表(网表); (2)机械尺寸:提供定位装置的具体位置和方向识别,以及特定高度限位位置区域的识别; (3) BOM清单: ...

  3. FPGA开发基本流程

    转自:https://www.cnblogs.com/synow/p/5498654.html FPGA的设计流程就是利用EDA开发软件和编程工具对FPGA芯片进行开发的过程.典型FPGA的开发流程一 ...

  4. FPGA开发基本流程详解

    FPGA是一种可编程逻辑器件,与传统的硬连线电路不同,它具有高度的可编程性和灵活性.FPGA的设计方法包括硬件设计和软件设计两部分,硬件设计包括FPGA芯片电路.存储器.输入输出接口电路等等,软件设计 ...

  5. FPGA上板流程Signaltap信号抓取

    一. FPGA上板流程(野火征途pro板) 1.板子注意插拔线顺序 不要带电插拔JTAG线 拔线时,先断板子的电源,然后断USB口,最后断JTAG线 插线时,先JTAG线,然后USB口,最后板子上电, ...

  6. PCB工程师设计宝典:一般PCB基本设计流程

    对于立志当电工的筒子们来说,画板是门硬武艺,不练就成功,就算你能记下MOS管的所有特性曲线,也终究是不入流. 设计流程 一般PCB基本设计流程如下: 前期准备->PCB结构设计->PCB布 ...

  7. DE1-SoC笔记(二)—SoC FPGA开发设计流程总结(de1教程2.1节)

    文章目录 1.所需要的软件 1.1 硬件设计部分 1.2 软件设计部分 1.3 putty 2.各软件的作用 3.SoC FPGA设计流程 3.1.用Qsys构建Hardware系统 3.2.生成Pr ...

  8. [EDA]FPGA/CPLD 设计流程步骤及步骤概念

    EDA(以 FPGA/CPLD 设计为例)流程步骤 1.设计输入 2.全程编译 3.仿真验证 4.编程下载 5.硬件测试 设计输入 原理图/HDL文本编辑或其他输入方式把电路系统输入到EDA平台中. ...

  9. FPGA Vivado设计流程

    今天给大侠带来Vivado设计流程,话不多说,上货. 本篇通过创建一个简单的HDL工程,学会使用Vivado集成开发环境.学会如何使用Vivado进行设计.仿真.综合以及实现一个项目,生成比特流文件并 ...

  10. Xilinx FPGA开发基本流程

    目录 一.创建工程 二.添加源文件 三.RTL描述与分析 一.创建工程 双击Vivado图标,进入到Vivado启动界面,如图所示: 在上述界面中有三个分栏,即:Quick Start.Tasks.L ...

最新文章

  1. Java 程序员一次有趣的面试 | 每日趣闻
  2. 超实用的58个office快捷键汇总,办公室人员必备!
  3. 2021年春季学期-信号与系统-第二次作业参考答案-第一小题
  4. 四、redis比mysql快的原因
  5. xcode 选择configuraftions 打包_分利宝IOS自动化打包
  6. lamber表达式sql_lambda表达式转换sql
  7. JUC锁-互斥锁ReentrantLock(二)
  8. Android开发之Dialog对话框(弹框)工具类
  9. Linux_linux常用工具之make/makefile详解
  10. spoon无法初始化至少一个步骤_手机怎么设置无线路由器 手机设置无线路由器步骤【详解】...
  11. vue 调用c++_electron-vue跨平台桌面应用开发实战教程(七)——ffi调用C++(macOS平台)...
  12. jquery判断toggle当前状态
  13. 95-138-010-源码-Function-CoFlatMapFunction
  14. php 计算每年春节日期,动态显示2019年农历春节倒计时—2019年1月21日23时45分
  15. 20180908 2018-2019-2 《密码与安全新技术专题》第3周作业
  16. JSK-7 奇怪的国家【入门】
  17. mac电脑的磁盘空间变得越来越小
  18. js基础-15-new操作符,延迟加载,严格模式
  19. 黑色沙漠未能连接补丁服务器,打开黑色沙漠提示网络异常或者连接不上
  20. gateway 动态路由

热门文章

  1. 瑞幸咖啡,成败今年见分晓!
  2. 正态性检验中的统计量D值和统计量W值如何计算?
  3. PR2017添加字幕文本或文字水印
  4. 数据同步问题与解决方案:增量全量、数据漂移,数据更新、
  5. 用心成就精品海天讲述不一样的品牌故事
  6. VBA从工作表另存为工作簿
  7. Android Studio Logcat 左边的工具栏不显示了 Show Toolbar
  8. FH153C6常用一键开关机芯片 ON/OFF单键开关IC 美容仪电子开关IC
  9. 对接腾讯广告平台系统开发(半自动化广告投放系统)
  10. CMT2300A 433MHz SUB-1G无线收发芯片