Field Programmable Gate Arrays(FPGA,现场可编程逻辑门阵列),是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物, 是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路灵活性的不足,又克服了原有可编程器件门电路数有限的缺点。
参考文章:
Ⅰ electronicshub
Ⅱ IBM
为了实现可编程,FPGA通常包括可编程逻辑块(Programmable Logic Blocks,PLBs)/(Configurable Logic Blocks,CLBs) 和逻辑块之间的可配置互连线组成。相比于单片机、CPU等集成电路芯片具有效率高、功耗低的特点,同时相较于ASIC具有更短的开发周期与开发难度,但成本较高、且在资源的利用率上远不及ASIC。
1.不同类型的PLD
在进一步深入了解FPGA之前,我们先引入这样一个概念——Programmable Logic Devices(PLD),他是一个更高层面的概念,指包含大量逻辑门和触发器的集成电路,用户可以对其进行配置以实现各种功能
最简单的可编程逻辑设备通常由一系列的与门和或门组成,这些门的逻辑及其互连可以通过编程配置。基本上,PLD可以分为三种类型:
1.1 简单可编程逻辑器件(SPLD)
1.1.1 可编程逻辑阵列(PLA)
PLA由一个可编程互连的AND门平面和一个可编程互连的OR门平面组成,通过连接水平和垂直互连线,每个输入可以连接到任何一个与门,然后来自不同与门的输出可以进一步连接到或门以构成更复杂的逻辑