当前位置:   article > 正文

初学者必须要知道的FPGA基础知识_fpga初学者

fpga初学者

一、FPGA是什么?

在《FPGA至简设计原理与应用》一书里是这样描述的:『FPGA的全称为Field-Programmable Gate Array,即现场可编程门阵列。在开始学习FPGA之前,同学们首先应该清楚地了解FPGA的概念,明白FPGA到底是什么东西,可以用来做什么。FPGA是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。简而言之,FPGA就是一个可以通过编程来改变内部结构的芯片。

直观来说,FPGA就是一个可以“改变”内部结构的芯片,而让这个芯片来实现怎样的功能,就需要通过编程即设计硬件描述语言,经过EDA工具编译、综合、布局布线成后转换为可烧录的文件,最终加载到FPGA器件中去,改变FPGA内部的连线,最终完成所实现的功能。此时的FPGA就可以认为是用来实现具体功能的一个粗糙的芯片。

稍微接触过硬件的人大概都听说过另一种集成电路芯片即单片机,那么FPGA与单片机在结构上有着怎样的差别呢?对于单片机而言,FPGA是一种微处理器,类似于电脑的CPU,一般是基于哈佛总线结构或者冯·诺依曼结构。单片机用途广泛,多用于控制流水线上;FPGA的结构是查找表,它的结构比较复杂,相对应的它可以实现的功能也很强大,一般应用于通信接口设计、数字信号处理等比较高端的场合,而且FPGA还有一个特殊的应用场合,即ASIC的原型验证。

相较于专职专用的ASIC,FPGA工具在开发难度上降低了许多,并且大大缩短了开发周期,而且由于FPGA是可重复编程的,其研发成本与风险也要比ASIC减少许多,更适用于复杂多变的数据中心等应用。

但是FPGA也不是万能的,优势有时候也是劣势。虽然FPGA相比于单片机、CPU等集成电路芯片拥有效率更高、功耗更低的特点,但是易于开发程度远远不如单片机、CPU;在数字芯片设计领域,FPGA虽然相比ASIC具有更短的开发周期与开发难度,但是其存在着成本过高、性能较差并且在资源的利用率上远不及ASIC等问题,不能真正的替代ASIC。』

这段描述非常的接地气且通俗易懂,但从另一个层面来讲,FPGA对于不同的人有不同的意义。FPGA有多种类型,每一种类型具有不同的功能和组合。

二、FPGA的基本结构

FPGA可编程的特性决定了其实现数字逻辑的结构不能像专用ASIC那样通过固定的逻辑门电路来完成,而只能采用一种可以重复配置的结构来实现,而查找表(LUT)可以很好地满足这一要求,目前主流的FPGA芯片仍是基于SRAM工艺的查找表结构。

在任意一款FPGA芯片说明书中可以查看到该器件具体的参数指标,其中包含可编程逻辑模块的数量、固定功能逻辑模块(如乘法器)的数目及存储器资源(如嵌入式RAM)的大小

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/623235
推荐阅读
相关标签
  

闽ICP备14008679号