当前位置: 首页 > news >正文

【FPGA】初识FPGA

1.FPGA是什么?

2.发展历程

PLD是可编程逻辑器件的总称,FPGA是其中的一部分

PLA只可实现一次编程,PROM是可编程只读存储器,它的与平面是固定的,只有或平面可以编程,他也只可以编程一次

PAL与平面可编程,或平面不可编程,有三态输出,寄存器输出,互补输出三类,与前面一样,都是熔丝工艺,只能编程一次。

GAL使用的电可擦的CMOS工艺,可多次编程,增强了器件的灵活性和可重复性,可以通过编程实现不同的输出状态,可以实现GAL模仿多个PAL,增强了器件的通用性,不过是规模较小的数字逻辑电路,因此称为简单可编程逻辑器件

随着社会发展,复杂可编程逻辑器件CPLD出现,可以看出多个PLA和一个可编程连接矩阵的集合 

FPGA的可编程分为三个可编程,可编程的逻辑块,可编程的IO口,可编程的布线资源

CPLD和FPGA比较

FPGA技术优势

  • 速度快,与常见的 CPU相比,CPU采用冯诺依曼结构,CPU要执行某些指令需要指令存储器,译码器和各种指令的运算器就会消耗一部分时间,同时CPU还需要共享内存, 势必会导致访问仲裁,这样就会使速度变慢,FPGA的每个逻辑单元在编译的逻辑单元在编译的时候就已经确定了,他执行不需要指令,也不需要内存共享,它的硬件结构决定了它的速度快
  • 效率高,FPGA利用了它的硬件并行优势打破了传统的顺序执行的模式,在每个时钟周期内可以完成更多的处理任务,与传统顺序执行的单片机相比,FPGA的效率更高
  • 低延时,若CPU处理一个数据包需要十个步骤,FPGA可以搭建一个十级流水线,流水线不同级别能处理不同数据包,每个数据包流经十级流水线后处理完成,每处理完成一个数据就直接输出,但是GPU是做十个寄存单元,每个寄存单元必须按照统一的步调做相同的事情,每次只能处理相同的步骤,要求十个数据包,必须一起输入一起输出,输如输出延时就增加了,当面对流水线计算任务的时候,FPGA比GPU有天生延迟方向的优势
  • FPGA属于半定制电路,可用于专用集成电路的设计与验证,它的可重构性可以节省专用集成电路的开发费用,缩短开发周期,降低设计风险,同时也便于一些专用设备的升级 
  • 开发灵活方便,FPGA的IO口资源具有数量多,可编程的特点,设计和使用过程中更加灵活,她不像传统的单片机IO口功能是固定的,同时 会提供诸多的IP核,可以大大缩短开发周期,提高设计的稳定性,使FPGA的开发更加方便,快捷接口丰富,IO口资源有不同的bank,每个bank均可支持输出电压的配置,从3.3v到1.2v不等 支持cmos,ttl电平标准,还支持lvds差分输出,内置高速串行解码器 
  • 既然优势众多,为什么没有单片机的使用范围广泛呢,原因是它的价格,单片机价格远远低于FPGA,FPGA根据性能和资源量的不同,价格也有很大的差异,FPGA的价格从几十元到几十万元不等,如果能够实现相同功能,单片机能够实现就不会选择价格昂贵的

FPGA的应用方向

  • 通信领域可以分为有线通信领域和无线通信领域,在有线通信领域,可以实现任何设备间的业务连接,比如所从广域网到城域网,再到移动回城接入网;在无线领域,由于FPGA自身可嵌入处理器  soPC,比如现在的5g时代,就是FPGA的主战场
  • 视频图像处理,由于人们对视频图形的清晰度要求越来越高,导致视频图像的处理数据量越来越大,FPGA的高速和并行执行能力可以满足这一需求,最关键的一点优势是可以进行实时流水线运算,它能达到最高的实时性,因此在一些实时性比较高的应用领域,做图像处理只能用FPGA,比如说高速分拣设备,因为在相机看到物料图像到执行指令的时间是非常短的,这就要求图像处理速度要非常快,而且延时固定
  • 人工智能领域,FPGA可以实现深度学习加速器,再加上FPGA的可重构性,便于实现算法的灵活调整,这样使得FPGA在人工智能领域有举足轻重的作用
  • 汽车驾驶领域,主要有两个方面的应用,一个是高级辅助驾驶(ADAS),另一个是自动驾驶(AD),高级辅助驾驶是利用安装在车上的传感器,摄像头以及卫星导航等 在汽车行驶过程中手机数据对静态和动态物体识别,侦测与追踪,结合导航数据进行系统的运算与分析,实现危险的预知,增加汽车驾驶的舒适度与安全性,FPGA的低延时,高速高效的优势在高级辅助驾驶可以得到很好的应用,ad是与人工智能和大数据相结合,实现自动驾驶
  • 医疗设备,如呼吸辅助设备,核磁共振设备,超音波设备等都有使用SOPC的FPGA组件所整合的设备产品
  • 数字信号处理,FPGA支持并行处理,他可以在每个时钟周期内完成更多的处理任务,它超越了传统的dsp数字信号处理器的运算能力,而且他的密度和性能都在不断提高,已经可以在很多领域替代传统的dsp解决方案
  • IC原型验证,可以在IC流片之前对芯片功能和性能作出评估,同时可以给软件设计人员提供设计平台

国内外FPGA产业现状

http://www.dtcms.com/a/324162.html

相关文章:

  • Git 版本管理规范与最佳实践摘要
  • 后量子密码学的迁移与安全保障:迎接量子时代的挑战
  • 【鸿蒙/OpenHarmony/NDK】C/C++开发教程之环境搭建
  • Linux操作系统从入门到实战(十八)在Linux里面怎么查看进程
  • HarmonyOS NEXT系列之编译三方C/C++库
  • 人工智能-python-机器学习-决策树与集成学习:决策树分类与随机森林
  • 给AI装上“翻译聚光灯”:注意力机制的机器翻译革命
  • ECharts Y轴5等分终极解决方案 - 动态适配缩放场景
  • 【走进Docker的世界】Docker的发展历程
  • MyBatis-Plus 逻辑删除
  • Spark学习(Pyspark)
  • Shell脚本-了解i++和++i
  • wordpress语言包制作工具
  • 点击速度测试:一款放大操作差距的互动挑战游戏
  • 简要介绍交叉编译工具arm-none-eabi、arm-linux-gnueabi与arm-linux-gnueabihf
  • 面向高级负载的 Kubernetes 调度框架对比分析:Volcano、YuniKorn、Kueue 与 Koordinator
  • Z20K118库中寄存器及其库函数封装-PMU库
  • ThreadLocal有哪些内存泄露问题,如何避免?
  • 机器学习实战·第三章 分类(1)
  • SAP HCM 结构化授权函数
  • 计算机网络:路由聚合是手动还是自动完成的?
  • 采用GPT5自动规划实现番茄计时器,极简提示词,效果达到产品级
  • 算术运算符指南
  • 震动马达实现库函数版(STC8)
  • MPLS使用LSP解决路由黑洞
  • 【工具变量】地市城市创业活力数据集(1971-2024年)
  • 微信小程序中实现表单数据实时验证的方法
  • 计算机网络:如何理解目的网络不再是一个完整的分类网络
  • 线程池线程复用的原理是什么?
  • 单调栈通用思路