FPGA工具链及功能介绍

一、处理流程

把verilog等源码,变为FPGA中可执行的比特流文件,主要包含这些步骤:

|------|------------------------------|
| 步骤 | 功能 |
| 转译 | 将verilog代码转化为更详细的语法,增加更多细节内容 |
| 技术映射 | 将每个vrilog用到的模块,对应到FPGA的物理器件上 |
| 优化 | 优化冗余,优化面积、时序等 |
| 打包 | 将block组成组,可理解为聚类 |
| 布局 | 确定每个模块放在哪里实现 |
| 布线 | 确定每个模块如何连线 |
| 生成 | 生成比特流文件 |

其中综合环节,其实包含转译、技术映射和优化,可参考逻辑综合------概述与基本概念-CSDN博客

二、工具链

表 1 symbiflow工具链介绍

|------------------------------------------|--------------|
| 名称 | 作用 |
| Symbiflow-arch-defs | verilogàbit |
| OpenFPGA | FPGA设计和实现框架 |
| prjxray | 硬件逆向工程和设计自动化 |
| QuickLogic-corp/Yosys/OdinII | 综合 |
| SymbiFlow/vtr-Verilog-to-routing/nextpnr | 布局布线 |
| VPR | 封装、布局布线、时序分析 |
| ABC | 逻辑优化与技术映射 |

图 1处理流程及文件

划分可以理解为打包过程 ,简单来说就是将BLE合理的装入到CLB中。打包阶段的主要工作就是将技术映射之后生成的LUT和触发器装入到BLE中, 然后再满足FPGA芯片上的特定约束的前提下,将BLE合理的装入到CLB中。

相关推荐
ARM+FPGA+AI工业主板定制专家4 小时前
基于ZYNQ的目标检测算法硬件加速器优化设计
人工智能·目标检测·计算机视觉·fpga开发·自动驾驶
cycf5 小时前
时钟特性约束(四)
fpga开发
江苏学蠡信息科技有限公司13 小时前
STM32中硬件I2C的时钟占空比
stm32·单片机·fpga开发
OliverH-yishuihan14 小时前
FPGA 入门 3 个月学习计划表
学习·fpga开发
FPGA狂飙17 小时前
传统FPGA开发流程的9大步骤是哪些?
fpga开发·verilog·fpga·vivado·xilinx
我爱C编程18 小时前
【硬件片内测试】基于FPGA的完整DQPSK链路测试,含频偏锁定,帧同步,定时点,Viterbi译码,信道,误码统计
fpga开发·帧同步·viterbi译码·dqpsk·频偏锁定·定时点
szxinmai主板定制专家20 小时前
【NI测试方案】基于ARM+FPGA的整车仿真与电池标定
arm开发·人工智能·yolo·fpga开发
爱吃汽的小橘1 天前
基于ads1256的ADC控制实现
fpga开发
易享电子2 天前
基于单片机车窗环境监测控制系统Proteus仿真(含全部资料)
单片机·嵌入式硬件·fpga开发·51单片机·proteus
cycf2 天前
系统同步接口输入延迟(五)
fpga开发