FPGA 专业术语介绍
- 写在前面
- ASIC(Application Specific Integrated Circuit,专用集成电路)
- ASSP(Application Specific Standard Product,专用标准产品)
- BRAM(Block Random Access Memory,块随机存取存储器)
- CLB(Configurable Logic Blocks,可编程逻辑功能块)
- CPLD(Complex PLD,复杂可编程逻辑器件)
- DLL(Delay-Locked Loop,延迟锁定环)
- DRAM(Distributed Random Access Memory,分布式随机存取存储器)
- FF(Flip Flop,触发器)
- HLS(High Level Synthesis,高层次综合)
- IP(Intellectual Property,设计资产)
- LATCH(锁存器)
- LUT(Look-up Table,查找表)
- MUX(Multiplexer,多路选择器)
- PLD(Programmable Logic Device,可编程逻辑器件)
- SPLD(Simple PLD,简单可编程逻辑器件)
- SRAM(Static Random Access Memory,静态随机存取存储器)
- 参考文档
写在前面
- 本文是 FPGA 专业术语的记录文档,完善该文档的过程同时也是本人学习的过程(◍•ᴗ•◍)ゝ
- 如果你想深入了解专业术语,可以参考专业术语下方给出的链接。现在基本上还没有链接,之后我会努力将他们补全的(ง๑ •̀_•́)ง
- 当然如果你有兴趣和我一块补全,可以私信我<( ̄︶ ̄)>
ASIC(Application Specific Integrated Circuit,专用集成电路)
ASIC是为满足顾客需求而设计制造,面向特定用途的集成电路的总称。面向特定用途的集成电路分为全定制IC和半定制IC。通常所说的ASIC主要指门阵列,嵌入式阵列,标准单元ASIC,结构化ASIC等。
ASSP(Application Specific Standard Product,专用标准产品)
相对于ASIC,ASSP是面向某一特定领域或应用的通用大规模集成电路。因为不是针对某一顾客而特别定制的芯片,所以作为通用器件(标准器件)具有可提供给不同客户的优势。
BRAM(Block Random Access Memory,块随机存取存储器)
BRAM俗称块RAM,是相对于DRAM的一个概念,DRAM是分布式RAM,是由遍布FPGA全片的逻辑资源LUT构成的RAM(所以叫分布式RAM)。而BRAM则是一整块,完整地固定在FPGA内部的嵌入式资源构成的RAM(所以叫块RAM)。
CLB(Configurable Logic Blocks,可编程逻辑功能块)
CLB是FPGA中最基本的功能单元之一,主要用于实现数字电路的逻辑功能。通过对CLB进行编程,可以实现各种各样的数字电路功能,使FPGA具有极高的灵活性和可重构性。
推荐学习:
(本人写的)《FPGA结构:DRAM(动态随机存取存储器)和 CLB(可编程逻辑功能块)介绍》
CPLD(Complex PLD,复杂可编程逻辑器件)
CPLD 指将多个小规模的SPLD作为基本逻辑块,再通过开关连接形成的中规模(大规模)PLD,这种方式能够防止单纯扩大AND-OR阵列规模带来的资源浪费。CPLD逻辑部分的延迟时间和开关部分的延迟时间比较固定,因此设计较为容易。
DLL(Delay-Locked Loop,延迟锁定环)
CPLD 指将多个小规模的SPLD作为基本逻辑块,再通过开关连接形成的中规模(大规模)PLD,这种方式能够防止单纯扩大AND-OR阵列规模带来的资源浪费。CPLD逻辑部分的延迟时间和开关部分的延迟时间比较固定,因此设计较为容易。
DRAM(Distributed Random Access Memory,分布式随机存取存储器)
在FPGA中,DRAM指的是分布式随机存取存储器。相比于BRAM来说,DRAM使用LUT实现存储器,既可以具备灵活性,又能提高资源利用率。
推荐学习:
(本人写的)《FPGA结构:DRAM(动态随机存取存储器)和 CLB(可编程逻辑功能块)介绍》
FF(Flip Flop,触发器)
FF(触发器)是一种基本的逻辑单元,用于存储和控制数字信号,其功能类似于计算机中的寄存器,可以在时序电路中用于控制状态和顺序逻辑。
推荐学习:
(本人写的)《FPGA结构:LATCH(锁存器)和 FF(触发器)介绍》
HLS(High Level Synthesis,高层次综合)
高层次综合指直接使用C语言或者基于C的语言描述算法功能,再由工具自动将其综合为含有寄存器,时钟同步等硬件概念的RTL描述的过程。
推荐学习:
官方 HLS 用户指南
官方 HLS 视频教程汇总
FPGA并行编程(电子书,包括十个通过HLS实现的算法案例)
(本人写的)《vitis-hls指令优化小结》
IP(Intellectual Property,设计资产)
IP本来的意思是知识产权,而在半导体领域,CPU核,大规模宏单元等功能模块被称为IP(设计资产)。使用经过验证的成品功能模块(IP),比重新设计电路更高效且可以i缩短开发周期。为了和固件,中间件等软件IP区分开来,电路IP也被称为“硬IP”或“IP核”。
LATCH(锁存器)
LATCH是一种用于存储数据的元件。它类似于FF,用于将输入数据保持在其内部,直到外部信号触发其释放。
推荐学习:
(本人写的)《FPGA结构:LATCH(锁存器)和 FF(触发器)介绍》
LUT(Look-up Table,查找表)
通过将函数的真值表存放在少量内存单元中来实现组合逻辑电路功能的模块称为LUT。直接用电路的方式实现复杂函数,产生的电路可能会存在面积过大或速度过低等问题,而基于LUT的实现方式则有可能解决这些问题。
推荐学习:
(本人写的)《FPGA结构:LUT(查找表)和 MUX(多路选择器)介绍》
《FPGA从入门到精通(2) - LUT》
MUX(Multiplexer,多路选择器)
多路选择器MUX是一个多输入、单输出的组合逻辑电路,一个n输入的多路选择器就是一个n路的数字开关,可以根据通道选择控制信号的不同,从n个输入中选取一个输出到公共的输出端。
推荐学习:
(本人写的)《FPGA结构:LUT(查找表)和 MUX(多路选择器)介绍》
《FPGA从入门到精通(4) - MUX》
PLD(Programmable Logic Device,可编程逻辑器件)
PLD是用户可将设计电路写入芯片的可编程逻辑器件的总称。代表的PLD有SPLD,CPLD,FPGA等。
SPLD(Simple PLD,简单可编程逻辑器件)
SPLD 是一种数字电路芯片。由一个或多个可编程逻辑门阵列和输入/输出(I/O)引脚构成。可编程逻辑门阵列包括与门(AND)、或门(OR)和非门(NOT)等逻辑门。通过编程,可以控制逻辑门之间的连接,从而实现所需的逻辑功能。
SRAM(Static Random Access Memory,静态随机存取存储器)
SRAM是一种可以自由进行读写操作的半导体随机存储器(RAM),并且属于断电后数据会丢失的易失性存储器。由于不像动态随机存取存储器那样需要周期性地刷新操作(保持数据),因此被称为静态存储器。
参考文档
《FPGA原理和结构》,天野英晴著