FPGA的人工智能之路:基于Intel FPGA开发的入门到实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.7 复杂可编程逻辑器件(CPLD)

进一步扩展PLD的思路,将单个器件中的多个PLD与可编程互连,和I/O相结合,进一步产生了CPLD。与由多个PAL和宏单元组成PLD的创建类似,CPLD由多个PLD逻辑块组成,这些逻辑块通过可编程互连结构连接到I/O引脚并相互连接,如图1-14所示。

1.7.1 普通CPLD逻辑块的特点

以英特尔的CPLD芯片MAX7000为例,其他型号的结构与其都非常相似。这种CPLD结构可分为3块:宏单元(Marocell)、可编程连线阵列(Programmable Interconnect Array,PIA)和I/O控制块。宏单元是CPLD的基本结构,由它来实现基本的逻辑功能。

一个CPLD芯片通常包含多个宏单元,宏单元的局部可编程互连就像一个PLD。宏单元中的扩展乘积项逻辑以额外的延迟为代价提供受控的乘积项分布和扩展,如图1-15所示。

图1-14 CPLD结构示意图

图1-15 扩展乘积项

1.7.2 CPLD的一般优势

CPLD与PLD前代产品相比具有以下优势:

(1)大量逻辑和高级可配置I/O;

(2)可编程布线;

(3)高效的即开即用;

(4)低成本;

(5)非易失性配置;

(6)可再编程。

在这些优势当中,CPLD最大的优势是逻辑和布线选择的数量。LAB逻辑和PI是完全可编程的,在单个器件中提供了大量的设计灵活性。CPLD的I/O特性和功能远远超过PLD上的简单I/O,具有更多选项,并且可以更好地控制I/O的工作方式。

与PAL和PLD一样,CPLD可在电路板上电时提供即时操作。它们成本低,并且只需要很少的电路板空间。它们的非易失性EEPROM编程架构使其成为使用系统内编程进行测试和调试的理想选择,无须在电路板上电时进行重新编程。

1.7.3 非易失FPGA

英特尔一直以MAX系列产品参与传统的CPLD市场,直到20世纪90年代末,CPLD被FPGA取代,取而代之的是片上非易失性配置Flash闪存的FPGA,如图1-16所示,如MAX Ⅱ、MAX V和MAX 10设备中的配置。MAX系列是单芯片、非易失的低成本可编程逻辑器件(PLD),旨在集成最优的系统组件集。这类器件具有全功能的FPGA功能,以及用户闪存(UFM)与配置闪存(CFM),具有即时开启与低成本的特点。

图1-16 非易失FPGA

对于基于SRAM结构设计的FPGA而言,每次电路板上电都需要从外部配置FPGA。英特尔的MAX系列是非易失FPGA,仍然是基于SRAM的FPGA,但它们都在同一芯片上包含内部闪存。内部闪存包含用户闪存和配置闪存。上电时,配置闪存中包含的配置数据将被用来加载FPGA的配置RAM。

非易失FPGA系列具有与传统CPLD类似的特性,因为它们是即时开启的,因此可以用作电路板上第一个启动的器件,用于其他器件的启动和控制,并且成本低廉。