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.软件硬件的整合和执行

相关推荐
长安第一美人16 分钟前
C 语言可变参数(...)实战:从 logger_print 到通用日志函数
c语言·开发语言·嵌入式硬件·日志·工业应用开发
214实验室6 小时前
STM32串口打印使用printf乱码问题
stm32·单片机·嵌入式硬件
沐欣工作室_lvyiyi6 小时前
基于单片机的电厂烟道粉尘浓度检测系统(论文+源码)
单片机·嵌入式硬件·毕业设计
-木槿昔年-7 小时前
【米尔-安路MYD-YM90X创意秀】飞龙派学习和PS串口实践
学习·fpga开发
Aaron15887 小时前
基于RFSOC+VU13P+GPU架构在雷达电子战的技术
人工智能·算法·fpga开发·架构·硬件工程·信号处理·基带工程
罗汉松(山水白河)7 小时前
显卡接口:VGA、DVI、HDMI、DP
硬件工程·接口·显卡·显示
d111111111d9 小时前
什么是内存对齐?在STM32上面如何通过编辑器指令来实现内存对齐。
笔记·stm32·单片机·嵌入式硬件·学习·编辑器
bai5459369 小时前
STM32 CuberIDE 中断
stm32·单片机·嵌入式硬件
小叶子来了啊9 小时前
5Arduino 程序结构
单片机·嵌入式硬件
小叶子来了啊10 小时前
1Arduino 简介
单片机·嵌入式硬件