FPGA架构和应用基础知识

简介:

FPGA代表现场可编程门阵列,它是一种半导体逻辑芯片,可编程成几乎任何类型的系统或数字电路,类似于PLD。PLD仅限于数百个门,但FPGA支持数千个门。FPGA架构的配置通常使用语言来指定,即HDL(硬件描述语言),其类似于用于ASIC(专用集成电路)的语言。
与固定功能ASIC技术(如标准单元)相比,FPGA可提供许多优势。通常,ASIC需要数月才能制造出来,并且它们的成本将达到数千美元才能获得该设备。但是,FPGA的制造时间不到一秒钟,成本从几美元到一千美元不等。FPGA的灵活性在很大程度上降低了成本,功耗和延迟。与标准单元ASIC相比, FPGA需要20到35倍的面积,速度性能比ASIC慢3到4倍。本文介绍了FPGA的基础知识和FPGA架构模块,包括I / O焊盘,逻辑块和开关矩阵。FPGA是VLSI的一些新兴趋势领域。
FPGA

FPGA架构
通用FPGA架构由三种类型的模块组成。它们是I / O块或焊盘,开关矩阵/互连线和可配置逻辑块(CLB)。基本FPGA架构具有二维逻辑块阵列,其具有用于用户安排逻辑块之间的互连的装置。下面讨论FPGA架构模块的功能:
CLB(可配置逻辑块)包括数字逻辑,输入和输出。它实现了用户逻辑。
互连提供逻辑块之间的方向以实现用户逻辑。
根据逻辑,开关矩阵提供互连之间的切换。
用于外部世界的I / O垫与不同的应用程序通信。
逻辑块包含 MUX(多路复用器),D触发器和LUT。LUT实现了组合逻辑功能; MUX用于选择逻辑,D触发器存储LUT的输出。
FPGA的基本构建模块是基于查找表的函数发生器。LUT的输入数量从3,4,6变化,甚至在实验后变为8。现在,我们有自适应LUT,每个LUT提供两个输出,并实现两个函数发生器。
Xilinx Virtex-5是最受欢迎的FPGA,它包含一个与MUX连接的查找表(LUT)一个如上所述的触发器。目前的FPGA由大约数百或数千个可配置逻辑块组成。对于配置FPGA,Modelsim和Xilinx ISE软件用于生成比特流文件和用于开发。

基于应用的FPGA类型
现场可编程门阵列基于低端FPGA,中档FPGA和高端FPGA等应用分为三类。
低端FPGA
这些类型的FPGA设计用于低功耗,低逻辑密度和每芯片低复杂度。低端FPGA的例子是Altera的Cyclone系列,Xilinx的Spartan系列,Microsemi的融合系列和莱迪思半导体的Mach XO / ICE40。
中端FPGA
这些类型的FPGA是低端和高端FPGA之间的最佳解决方案,它们是在性能和成本之间取得平衡而开发的。中端FPGA的示例是来自Altera的Arria,来自Xlinix的Artix-7 / Kintex-7系列,来自Microsemi的IGL002和来自莱迪思半导体的ECP3和来自莱迪思半导体的ECP5系列。
高端FPGA
这些类型的FPGA是为逻辑密度和高性能而开发的。高端FPGA的例子有Altera的Stratix系列,Xilinx的Virtex系列,Achronix的Speedster 22i系列和Microsemi的ProASIC3系列。

FPGA的应用
FPGA在过去十年中获得了快速增长,因为它们适用于广泛的应用。FPGA的具体应用包括数字信号处理,生物信息学,设备控制器,软件定义无线电,随机逻辑,ASIC原型设计,医学成像,计算机硬件仿真,集成多个SPLD,语音识别,加密,过滤和通信编码等等。
通常,FPGA保留用于生产量较小的特定垂直应用。对于这些小批量应用,顶级公司支付每单位硬件成本。如今,新的性能动态和成本扩展了可行的应用范围。
一些更常见的FPGA应用包括:航空航天和国防,医疗电子,ASIC原型,音频,汽车,广播,消费电子,分布式货币系统,数据中心,高性能计算,工业,医疗,科学仪器,安全系统,视频和图像处理,有线通信,无线通信。

相关文章
|
4天前
|
存储 边缘计算 Cloud Native
“论模型驱动架构设计方法及其应用”写作框架,软考高级,系统架构设计师
模型驱动架构设计是一种用于应用系统开发的软件设计方法,以模型构造、模型转换和精化为核心,提供了一套软件设计的指导规范。在模型驱动架构环境下,通过创建出机器可读和高度抽象的模型实现对不同问题域的描述,这些模型独立于实现技术,以标准化的方式储存,利用模型转换策略来驱动包括分析、设计和实现等在内的整个软件开发过程。
|
4天前
|
缓存 C语言 计算机视觉
程序与技术分享:CPU0处理器的架构及应用
程序与技术分享:CPU0处理器的架构及应用
|
13天前
|
数据处理 C语言
深入解析x86架构:X86, X86_32和X86_64的差异与应用
深入解析x86架构:X86, X86_32和X86_64的差异与应用
25 0
|
6天前
|
Web App开发 Linux 微服务
了解应用中的微内核架构
【6月更文挑战第25天】**微内核架构**是将系统服务从内核移出,形成可选插件,增强扩展性和适应性。常见于第三方应用和嵌入式系统,如Linux、L4、WinCE。优点包括清晰结构、移植性和扩展性,但缺点是通信开销大、性能较低,不利于整体优化。适合需要灵活功能组合的场景。
21 5
了解应用中的微内核架构
|
10天前
|
存储 数据采集 数据挖掘
“湖仓一体架构及其应用”写作框架,系统架构设计师
随着5G、大数据、人工智能、物联网等技术的不断成熟,各行各业的业务场景日益复杂,企业数据呈现出大规模、多样性的特点,特别是非结构化数据呈现出爆发式增长趋势。在这一背景下,企业数据管理不再局限于传统的结构化OLTP(On-Line Transaction Processing)数据交易过程,而是提出了多样化、异质性数据的实时处理要求。传统的数据湖(Data Lake)在事务一致性及实时处理方面有所欠缺,而数据仓库(Data Warehouse)也无法应对高并发、多数据类型的处理。因此,支持事务一致性、提供高并发实时处理及分析能力的湖仓一体(Lake House)架构应运而生。湖仓一体架构在成本、
|
6天前
|
存储 消息中间件 API
“论微服务架构及其应用”写作框架,软考高级,系统架构设计师
论微服务架构及其应用近年来,随着互联网行业的迅猛发展,公司或组织业务的不断扩张,需求的快速变化以及用户量的不断增加,传统的单块(Monolithic)软件架构面临着越来越多的挑战,已逐渐无法适应互联网时代对软件的要求。在这一背景下,微服务架构模式(MicroserviceArchitecturePattern)逐渐流行,它强调将单一业务功能开发成微服务的形式,每个微服务运行在一个进程中;采用HTTP等通用协议和轻量级API实现微服务之间的协作与通信。这些微服务可以使用不同的开发语言以及不同数据存储技术,能够通过自动化部署工具独立发布,并保持最低限制的集中式管理。
|
5天前
|
Kubernetes 测试技术 持续交付
深入理解微服务架构及其在现代后端系统中的应用
本文将深入探讨微服务架构的核心概念、设计原则以及如何在现代后端系统中实现和优化它。我们将从微服务的定义开始,逐步展开讨论其优势、面临的挑战,以及如何克服这些挑战。同时,文章还会涉及微服务与容器化技术、持续集成/持续部署(CI/CD)的协同作用,以及微服务架构的未来发展趋势。读者将获得对微服务架构全面而深刻的理解,并能够识别在实施过程中可能遇到的陷阱和解决方案。
24 1
|
5天前
|
存储 算法 C语言
【链表专题】深入探索链表:文章索引与知识架构(链表的概念、实现、应用、经典例题大合集)
【链表专题】深入探索链表:文章索引与知识架构(链表的概念、实现、应用、经典例题大合集)
|
7天前
|
Java 数据库连接 API
“论数据访问层设计技术及其应用”写作框架,系统架构设计师
在信息系统的开发与建设中,分层设计是一种常见的架构设计方法,区分层次的目的是为了实现“高内聚低耦合”的思想。分层设计能有效简化系统复杂性,使设计结构清晰,便于提高复用能力和产品维护能力。一种常见的层次划分模型是将信息系统分为表现层、业务逻辑层和数据访问层。信息系统一般以数据为中心,数据访问层的设计是系统设计中的重要内容。数据访问层需要针对需求,提供对数据源读写的访问接口;在保障性能的前提下,数据访问层应具有良好的封装性、可移植性,以及数据库无关性。
“论数据访问层设计技术及其应用”写作框架,系统架构设计师
|
11天前
|
机器学习/深度学习 算法框架/工具 计算机视觉
ViT模型的出现标志着Transformer架构在计算机视觉中的成功应用
ViT模型的出现标志着Transformer架构在计算机视觉中的成功应用
24 2