集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1019|回复: 0

FPGA基础知识之1——FPGA是什么?

[复制链接]
fpga_feixiang 发表于 2018-6-29 14:24:02 | 显示全部楼层 |阅读模式
1.什么是FPGA
    FPGA的官方解释是 : Field-Programmable Gate Array,即现场可编程门阵列,它是在PAL、GAL、CPLD(不用读系列)等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点

    可以将FPGA理解为大量的逻辑门阵列,用户可以自由组合以实现不同的电路功能,即FPGA的可编程特性。相比于冯诺依曼结构的CPU、GPU等通用处理器,FPGA具有效率更高速度更快的优点;相比于专职专用的ASIC,FPGA则具有开发难度小,开发周期更短的优势,更适用于复杂多变的数据中心等应用

    但是FPGA也不是万能的,优势有时候也是劣势。虽然FPGA相比于CPU效率更高、功耗更低的特点,但是易于开发程度远远不如CPU;虽然相比ASIC开发周期更短,但是也存在着资源浪费,成本过高、性能较差的问题,不能真正的替代ASIC



2.FPGA的工作原理
    由于FPGA需要反复烧写,所以他实现组合逻辑的结构不能像ASIC那样通过固定的与非门来完成,而只能采用一种抑郁反复配置的结构。查找表(LUT)可以很好地满足这一要求,目前主流FPGA都采用了基于SRAM工艺的查找表结构。通过烧写文件改变查找表内容的方法来实现对FPGA的重复配置
    根据数字电路的基本知识可以知道,对于一个n输入的逻辑运算,不管是与或非运算还是异或运算等等,最多只可能存在2n种结果。所以如果事先将相应的结果存放在一个存储单元,就相当于实现了与非门电路的功能。FPGA的原理就是如此,他通过烧写文件去配置查找表的内容,从而在相同的电路情况下实现了不同的逻辑功能。
    查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。目前FPGA中多实用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的RAM。当用户通过原理图或HDL语言描述了一个逻辑电路以后,FPGA开发软件会自动计算逻辑电路的所有可能结果,并把真值表(即结果)事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查找表,找出相应的内容,然后输出即可。LUT相比逻辑电路有这更快的执行速度和更大的规模,给出一个查找表示例:

LUT输出        LUT输出
0 0 0 0        0
0 0 0 1        0
......        .......
1 1 1 1        1

3.编程方式
    由于基于LUT的FPGA具有很高的集成度,其器件密度从数万门到数千万门不等,可以完成极其复杂的时序与组合逻辑电路功能,所以适用于高速、高密度的高端数字逻辑电路设计领域。其组成部分主要有可编程输入/输出单元(IOB)、内嵌SRAM、丰富的不限资源、底层嵌入功能单元、内嵌专用单元等。主要设计和生产厂家有Xilinx、Altera、Lattice、Actel、Atmel和QuickLogic等公司,其中最大的是Xilinx、Altera、Lattice三家
    FPGA是由存放在片内的RAM来设置其工作状态的,因此工作室需要对片内RAM进行编程。用户可根据不同的配置模式,采用不同的编程方式。FPGA有如下几种配置模式:
        1、并行模式:并行PROM、Flash配置FPGA;
        2、主从模式:一片PROM配置多片FPGA;
        3、串行模式:串行PROM配置FPGA;
        4、外设模式:将FPGA作为微处理器的外设,由微处理器对其编程。
    目前,FPGA市场占有率最高的两大公司Xlinx和Altera生产的FPGA都是基于SRAM工艺的,需要在使用时外接一个片外存储器以保存程序。上电是,FPGA将外部存储其中的数据读入片内RAM,完成配置后,进入工作状态;掉电后FPGA恢复为白片,内部逻辑消失。这样FPGA不仅能反复使用,还无需专门的FPGA编程器,只需通用的EPROM、PROM编程器即可
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-2 06:25 , Processed in 0.055359 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表