FPGA 的硬件结构

FPGA 的基本结构分为5 部分:可编程逻辑块(CLB)、输入/输出块(IOB)、逻辑块之间的布线资源、内嵌RAM 和内嵌的功能单元。

(1)可编程逻辑块(CLB)

一个基本的可编程逻辑块由一个寄存器(Register)和一个查找表(Look UpTable,LUT)组成。它是FPGA 内部可编程逻辑资源的基本组成。通过配置查找表,可以实现组合逻辑电路的功能。寄存器可以配置为各种触发器和锁存器。查找表和寄存器结合在一起可以实现各种逻辑设计。

(2)输入/输出块(IOB)

输入/输出块是FPGA 外部电路接口,需要满足各种信号的驱动和匹配要求。通过分布在FPGA 芯片边缘的寄存器将输入/输出块设计成可编程单元,可以通过配置文件的配置使FPGA 的接口可以满足各种电气标准和物理特性的需求。

(3)逻辑块间的布线资源

虽然FPGA 内部有着十分丰富的布线资源,但是布局布线的工作一般是由芯片设计厂商提供的设计软件来完成,设计者并不需要进行详细的布局布线设计。设计者不需要做布局布线的设计并不代表布线工作不重要,布局布线的结果直接影响功能设计的运行结果,尤其是时序上的影响。

(4)内嵌RAM 块

设计者可以根据设计需要将内嵌RAM 块配置成各种类型的存储结构。除了使用BRAM 外,还可以将查找表配置成分布式RAM 来满足小容量RAM 的设计需求。

(5)内嵌功能单元

FPGA 一般会嵌入一些比较常用的功能模块,如锁相环、延迟锁定环、CPU和DSP 等。特定型号的FPGA 内部也会有CPU 这种软处理核,这种类型FPGA不仅当作硬件设计平台来使用还可以做一些系统级设计。随着越来越多的设计需求,更多的功能模块会逐步内嵌到FPGA 中。

相关推荐
博览鸿蒙17 小时前
FPGA高频面试问题整理—附答案
fpga开发
我先去打把游戏先17 小时前
ESP32学习笔记(基于IDF):SmartConfig一键配网
笔记·嵌入式硬件·mcu·物联网·学习·esp32·硬件工程
墨染点香1 天前
LeetCode 刷题【126. 单词接龙 II】
算法·leetcode·职场和发展
GilgameshJSS1 天前
STM32H743-ARM例程24-USB_MSC
c语言·arm开发·stm32·单片机·嵌入式硬件
cmc10281 天前
134.FPGA常见管脚与时钟的约束方法
fpga开发
坚持编程的菜鸟1 天前
LeetCode每日一题——三角形的最大周长
算法·leetcode·职场和发展
第二层皮-合肥1 天前
AD导出FPGA管脚的方法
fpga开发
爱coding的橙子1 天前
每日算法刷题Day76:10.19:leetcode 二叉树12道题,用时3h
算法·leetcode·职场和发展
瑞禧生物ruixibio1 天前
4-ARM-PEG-Pyrene(2)/Biotin(2),多功能化聚乙二醇修饰荧光标记生物分子的设计与应用探索
arm开发·人工智能
ehiway1 天前
国际先进!中科亿海微国产嵌入式FPGA IP核及EDA系统设计技术通过科技成果评价
网络协议·tcp/ip·fpga开发