FPGA功能及特点

news2024/9/27 23:29:09

集成电路芯片包括数字芯片和模拟芯片两大类,数字芯片又分为存储器芯片和逻辑芯片。

逻辑芯片一般包括CPU、GPU、DSP等通用处理器芯片以及专用集成电路芯片ASIC。

FPGA(现场可编程门阵列)就是逻辑芯片的一种。

图片

FPGA功能

FPGA中文名是现场可编程门阵列,是指通过软件手段更改、配置器件内部连接结构和逻辑单元,完成既定功能设计的数字集成电路。

FPGA是在PAL(可编程逻辑阵列)、GAL(通用阵列逻辑)、CPLD(复杂可编程逻辑器件)等传统逻辑电路和门阵列的基础上进一步发展的产物。它利用计算机辅助设计,绘制出实现用户要求的原理图、编辑布尔方程或用硬件描述语言等方式作为设计输入;然后经一系列转换程序、自动布局布线、模拟仿真的过程;最后生成FPGA的数据文件,对FPGA器件初始化。这样就实现了满足用户要求的专用集成电路,真正达到了用户自行设计、自行研制和自行生产集成电路的目的。

FPGA与CPU、GPU、ASIC等芯片的核心区别是:其底层逻辑运算单元的连线和逻辑布局未固化。用户可通过EDA软件对逻辑单元和开关阵列编程,进行功能配置,从而去实现特定功能的集成电路芯片。而其他类别逻辑芯片,像ASIC、CPU和GPU等,物理底层逻辑单元的运算关系均已固定且不可变。简单地说,如果CPU、GPU、ASIC等是建好的楼房,楼房中房间、走廊及楼梯等格局是已经固定了;而FPGA的内部类似霍格沃兹中的魔法楼梯,可以随时改变房间到房间的路线关系。

FPGA由可编程逻辑块(CLB)、输入/输出模块(IOB)、可编程互连资源(PIR)等三种可编程电路和用于存放编程数据的静态存储器SRAM组成。CLB是实现逻辑功能的基本单元,它们通常规则排列成一个阵列,散布于整个芯片中。IOB主要完成芯片上的逻辑与外部引脚的接口,通常排列在芯片的四周。PIR提供了丰富的连线资源,包括纵横网状连线、可编程开关矩阵和可编程连接点等,它们将各个CLB之间、CLB与IOB之间以及IOB之间连接起来,构成特定功能的电路。静态存储器SRAM用于存放内部IOB、CLB和PIR的编程数据,并形成对IOB、CLB及PIR的控制,从而完成系统逻辑功能。

由于FPGA需要被反复烧写,它实现的组合逻辑基本结构无法通过固定的与非门来完成,只能采用一种易于反复配置的结构。查找表(Look-Up-Table,简称为LUT)可以很好地满足这一要求。

LUT实质上是一个RAM,当用户描述了一个逻辑电路后,软件会计算所有可能的结果,并写入RAM。每一个信号进行逻辑运算,就等于输入一个地址进行查表,找出地址对应的内容,输出结果。这样也大大加快了FPGA的运算速度。目前主流FPGA都采用了基于SRAM工艺的查找表结构,也有一些FPGA采用Flash或反熔丝工艺的查找表结构。

FPGA特点

FPGA有三大特点:

  • 可编程灵活性高

FPGA属于逻辑芯片,但区别于其他逻辑芯片,FPGA最大的特点便是现场可编程性,这个特点,可以使FPGA通过编程实现任意芯片的逻辑功能,例如ASIC、DSP甚至PC处理器等,这也是为什么FPGA被称为“万能芯片”的原因。

逻辑芯片中,例如ASIC和DSP是一张出厂时就写有数据并且不可擦除的CD,用户只需要放在CD播放器就可以听到音乐;而FPGA是一张出厂时空白的CD,需要用户自己使用刻录机烧写数据内容到盘里,并且还可以擦除上面的数据,反复刻录。

  • 开发周期短

逻辑芯片如ASIC制造流程包括逻辑实现、布线处理和流片等多个步骤,而FPGA无需布线、掩膜和定制流片等,芯片开发大大简化。一般逻辑芯片如ASIC、DSP、SOC等,开发周期需要14-24个月,甚至更长,而FPGA则只需要6-12个月,比其他芯片开发周期减少55%的时间。

类型FPGAASICDSPSOC
名称现场可编程门阵列专用集成电路数字信号处理技术系统级芯片
开发周期6-12个月14-24个月14-24个月14-24个月或更长
  • 并行计算效率高

FPGA属于并行计算,一次可执行多个指令算法。而传统的ASIC、DSP、CPU都是串行计算,一次只能处理一个指令集。因此在部分特殊任务中,FPGA的并行计算效率比串行计算效率更高。

图片

因此,FPGA 通常在数字信号处理、视频处理、图像处理、5G 通信领域、医疗领域、工业控制、云服务、加速计算、人工智能、数据中心、自动驾驶、芯片验证等领域发挥着不可替代的作用。

欢迎关注微信公众号“我想我思”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/921257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【速成】蓝桥杯嵌入式省一教程:(十)利用共用体进行E2PROM读写

在上一节中我们了解到,AT24C02芯片(E2PROM存储器)内部含有256个8位字节,每一次只能对一个字节进行读写操作。因此,其只能处理unsigned char或uint8_t类型的数据,对于int、float型等大于占用一个字节的数据&…

VMware虚拟机---Ubuntu无法连接网络该怎么解决?

在学习使用Linux系统时,由于多数同学们的PC上多是Windows系统,故会选择使用VMware创建一个虚拟机来安装Linux系统进行学习。 安装完成之后,在使用时总是会遇到各种各样的问题。本片随笔就主要针对可能出现的网络问题进行一个总结,…

2022中国主要城市的绿地数据

绿地是城市生态的重要组成部分,在很多分析中都会用到绿地数据! 本次给大家带来的是中国主要城市的绿地数据!31个城市 该数据是中山大学的石茜等研究者通过深度学习方法,基于GoogleEarth影像和城市边界数据绘制的!数据格式为栅格格式(.tif)。 01 数据预览 我们以北京…

联邦学习:对“数据隐私保护”和“数据孤岛”困境的破局

作者:vivo 互联网安全团队- Tu Daxi 随着计算力、算法和数据量的巨大发展,人工智能迎来第3次发展高潮,开始了各行业的落地探索。然而,在“大数据”兴起的同时,更多行业应用领域中是“小数据”或者质量很差的数据。“数…

php开发websocket笔记(1)

1.运行server1.php文件 Windows命令行运行 php server1.php<?phperror_reporting(E_ALL); set_time_limit(0); //ob_implicit_flush(); $address 0.0.0.0;//可以监听网络上的请求 $address 127.0.0.1;//只能监听本机的请求$port 10005; //创建端口 $socket1 socket_cr…

智能型温湿度传感器在各个行业的广泛应用

在物联网时代&#xff0c;传感器的重要性是不言而喻&#xff0c;各类传感器在不同领域都有着极为重要的应用。如在智能家居领域&#xff0c;现代人们追求高品质舒适生活&#xff0c;对于所处环境要求进一步提升&#xff0c;以环境监测为主的智能家居设备广受追捧。这时候温湿度…

数据库——Redis 常见数据结构以及使用场景分析

文章目录 1. string2. list3. hash4. set5. sorted set 你可以自己本机安装 redis 或者通过 redis 官网提供的在线 redis 环境。 1. string 介绍 &#xff1a;string 数据结构是简单的 key-value 类型。虽然 Redis 是用 C 语言写的&#xff0c;但是 Redis 并没有使用 C 的字符串…

数据分析利器:pandas库的奥秘与代码示例

pandas是Python中一款强大的数据分析库&#xff0c;它提供了数据清洗、数据操作、数据可视化等功能&#xff0c;使得数据分析与处理变得更加高效和便捷。本文将从基本概念、基础知识、高级特性、实战案例和总结五个方面&#xff0c;深入介绍pandas库的用法和技巧。 一、基本概念…

安装Docker并配置镜像加速器、容器

1.安装docker服务&#xff0c;配置镜像加速器 安装软件包 [rootlocalhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 设置yum源 [rootlocalhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo…

ZDRE6VP4-1X/50MG24K4V比例压力阀放大器

DRE 6-11/100MG24K4M比、DRE 10-6X/200YMG24K4M、DRE 20-52/200YMG24K4M、DRE 20-6X/200YMG24K4M、ZDRE6VP1-1X/315MG24N9K4M、ZDRE6VP4-1X/50MG24K4V、Z3DRE6VP2-2X/50G24K4M、Z3DRE6VP1-2X/100G24K4M、Z3DRE10VP2-1X/100XYG24K4M、Z3DRE10VP1-1X/315XLG24K4V 功能: 设定值通…

【实践篇】DDD脚手架及编码规范 | 京东云技术团队

一、背景介绍 我们团队一直在持续推进业务系统的体系化治理工作&#xff0c;在这个过程中我们沉淀了自己的DDD脚手架项目。脚手架项目是体系化治理过程中比较重要的一环&#xff0c;它的作用有两点&#xff1a; &#xff08;1&#xff09;可以对新建的项目进行统一的规范&…

【校招VIP】java语言考点之类的加载过程

考点介绍&#xff1a; 类的加载过程在校招面试中是个高频考点。类只有在要运行的时候才会被加载进JVM,即编译后只有需要到这个类的时候才会把他加载进JVM运行&#xff0c;这种动态加载是依靠反射来实现的&#xff0c;一般来说一个class只会被加载一次...... 『java语言考点之…

oracle 启停操作

1. 监听端口启停 # 根据实际情况 切换至oracle用户 su - oracle# 状态查看 lsnrctl stat# 启动1521端口监听 lsnrctl start# 关闭1521监听 lsnrctl stop 2. 数据库服务启停 # 立即关闭服务 shutdown immediate# 启动服务 startup

前端需要理解的 JavaScript 知识

1 关于JavaScript JavaScript&#xff08;JS&#xff09;是单线程的、基于原型的、弱类型的、动态类型的、轻量的、支持面向对象/命令式/声明式编程的、头等函数的、多范式的、解释性&#xff08;直译式或即时编译&#xff09;的、也可在非浏览器环境下使用的动态脚本语言。Ja…

AI创作助手:介绍 TensorFlow 的基本概念和使用场景

目录 背景 环境测试 入门示例 背景 TensorFlow 是一个强大的开源框架&#xff0c;用于实现深度学习和人工智能模型。它最初由 Google 开发&#xff0c;现在已经成为广泛使用的机器学习框架之一。 TensorFlow 简单来说就是一个用于创建和运行机器学习模型的库。它的核心概念…

安装ssl证书有什么意义?

相信很多网站用户对ssl证书都有一定的了解&#xff0c;它就像是身份证&#xff0c;同时也能保障网站的安全&#xff0c;尤其是一些交易平台&#xff0c;不泄露客户的隐私。为了保证在线客户的隐私信息的安全&#xff0c;中小型企业一定要明白安装ssl证书的重要性。下面JoySSL的…

Nginx实践之使用MaxMind的GeoIP2实现处理不同国家的访问

场景&#xff1a; 因防火墙到期&#xff0c;原网站接入的需要回到公网的解析&#xff0c;经过分析&#xff0c;站点只需要国内访问。于是想到了用地址过滤&#xff0c;目前比较火的是nginx的allow和deny&#xff0c;另外一种是geoip,geoip2 区别&#xff1a; GeoIP用于通过IP获…

ssm班主任助理系统源码和论文

ssm班主任助理系统源码和论文054 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 1、课题背景 由于当今社会科学技术不断发展,科学技术不断发展&#xff0c;21世纪的今天是一个讲究质量和效率的时代&#xff0…

8、Vue 核心技术与实战 智慧商城项目 DAY8~10

1、 项目演示 2、 项目收获 3、 创建项目 4、调整初始化目录 1、删掉&#xff08;1&#xff09;assets中的文件&#xff08;2&#xff09;components中的文件&#xff08;3&#xff09;views中的文件2、(1)修改路由配置&#xff0c;默认的路由是个空数组即可&#xff0c;把路由…

医疗中心疫苗保存,隐藏这招你不知道的技法!

由于疫苗对温度敏感&#xff0c;如果没有在规定温湿度下储存&#xff0c;疫苗的药性很可能发生改变&#xff0c;从疫苗制造的部门到疫苗使用的现场之间的每一个环节&#xff0c;都可能因温度过高而失效。 为了保证从生产、贮存、运输、分发到使用的整个过程中&#xff0c;疫苗始…