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

相关推荐
坏孩子的诺亚方舟16 天前
FPGA系统架构设计实践15_高云Arora V系列时钟体系
fpga开发·系统架构
生成论实验室16 天前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
dayuOK630716 天前
写作卡壳怎么办?我的“5分钟启动法”
人工智能·职场和发展·自动化·新媒体运营·媒体
枫子有风16 天前
LLM-Agent智能体(大厂面试常问)
面试·职场和发展·llm·agent
重生之后端学习16 天前
Java入门
java·开发语言·职场和发展
AIHR数智引擎16 天前
KPI物理失效:AI原生组织的效能重构与技能度量
人工智能·经验分享·职场和发展·重构·ai-native·aihr
想吃火锅100516 天前
【leetcode】121.买卖股票的最佳时机js/c++
算法·leetcode·职场和发展
程序员小远16 天前
自动化测试基础知识总结
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
FPGA小徐16 天前
入门 CNN 结构全解析|从流程图理论到 FPGA Verilog 硬件实现(含习题带讲解)
fpga开发
AndyHeee16 天前
【SVC、PendSV(系统异常) 与 外设 IRQ 、NVIC笔记】
arm开发