FPGA原理和结构

设计流程和工具

设计流程

RTL级描述电路,逻辑综合,技术映射,布局布线,生成配置数据。

基于HDL的设计流程

1.工程的创建

包括源程序,设置文件,约束文件等

2.源文件的创建

就是将电路描述代码添加到源文件中

3.仿真源文件的创建

除了源文件还要添加测试文件testbench,如果用了IP,则需要添加IP的行为模型。

4.逻辑综合

将RTL描述生成网表文件

5.技术映射

将网表文件映射到FPGA的实际逻辑元素(如查找表)

6.布局布线

利用片上资源实现网表,可能会出现无法布同的情况,就需要重新设计架构和算法或者更换器件。

7.配置FPGA

通过JTAG写入

通过非易失性存储器写入

通过存储卡或USB存储器写入

8.实机功能验证

选择必要的模块观察电路

9.优化

运行频率,电路规模,功耗

HLS设计

高层次综合

1.行为综合

一般把变脸映射成寄存器,数组映射成内存,函数映射成电路模块实例,把顺序,分支等流程控制映射成状态机。

输入输出描述

位宽设置

并行化描述

2.行为级仿真

可以对行为功能进行验证,没有考虑时序,,仿真结果与实机可能存在差异

3.行为综合

将运算关系处理为数据流图,将控制流程处理为控制流图。由两个流图来决定运行顺序和运行时刻称为调度,,将变量或运算映射到寄存器等称为绑定。按照既定调度实现运算的寄存器和数据选择器称为运算通路。

简单来说,行为综合就是把C代码映射为数据通路和状态机。

4.分析测评和优化

5.与RTL连接

行为综合后的模块就可以在上层RTL中用实例化的方式连接。

包含处理器的设计

FPGA加处理器(软硬结合),可以同时发挥硬件和软件的优势。

硬核处理器就是嵌入式处理器

软核处理器FPGA可编程逻辑上实现的处理器。

1.构建处理器系统

2.对处理器进行软件开发

3.软件硬件的整合和执行

相关推荐
ZPC82106 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC82106 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
Lester_11016 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元6 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133976 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315206 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
tiantianuser6 天前
RDMA设计53:构建RoCE v2 高速数据传输系统板级测试平台2
fpga开发·rdma·高速传输·cmac·roce v2
PM老周6 天前
2026年软硬件一体化项目管理软件怎么选?多款工具对比测评
java·安全·硬件工程·团队开发·个人开发
Alaso_shuang6 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
博览鸿蒙6 天前
FPGA 和 IC,哪个前景更好?怎么选?
fpga开发