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中。

相关推荐
9527华安13 小时前
FPGA实现ARINC818总线协议,基于GT Transceivers Wizard高速收发器,提供7套工程源码和技术支持
fpga开发·transceivers·arinc818
小蘇的FPGA15 小时前
fpga-wide-data-crc32
fpga开发
落雨无风1 天前
fpga板级调试常见问题
fpga开发
码农小韩1 天前
FPGA学习(一)——LED点灯与开发流程
学习·fpga开发·入门·环境配置·仿真·点灯
FPGA小迷弟1 天前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga
NamoAmitabha1281 天前
Zynq 的 AXI GPIO,是“ARM 通过一条国际标准高速公路(AXI 总线),去遥控 FPGA 里的一个寄存器”。---deepseek
fpga开发·zynq--ps
NamoAmitabha1282 天前
ARM 不懂寄存器,它只懂内存地址---deepseek
fpga开发·zynq--ps
FPGA小迷弟2 天前
FPGA 千兆以太网帧格式全解:从 IEEE 802.3 帧结构到 Verilog 收发实现
人工智能·5g·fpga开发·架构·硬件架构
幻智星科技2 天前
FPGA数据采集接口选型终极指南
fpga开发·udp·硬件架构
星夜离尘562 天前
用 SystemVerilog 写一个可背压的流式 RLE 编码器:计数拆分、包尾与 flush 的完整实现
fpga开发