可编程逻辑器件PLD介绍


复杂可编程逻辑器件(CPLD)是一种可编程逻辑器件,其复杂性介于PAL和FPGA之间,并具有两者的架构特性。 CPLD的主要组成块是宏单元,它包含实现析取范式表达式和更专业逻辑运算的逻辑。


特性

CPLD的一些功能特性跟PAL是一致的:

  • 非易失性配置存储器 - 与许多FPGA不同,不需要外部配置ROM,CPLD可以在系统启动时立即运行。
  • 对于许多传统CPLD器件,布线限制了大多数逻辑模块的输入和输出信号同外部引脚的连接,从而减少了内部状态存储和深度分层逻辑的机会。对于较大的CPLD和较新的CPLD产品系列,这通常不再是一个问题。

其它与FPGA相同的特性:

  • 提供大量门。 CPLD通常具有相当于数千到数万个逻辑门,允许实现中等复杂度的数据处理设备。而PAL通常最多只有几百个门的规模,而FPGA通常从几万到几百万不等。
  • 逻辑的一些规定比“产品加”表达式更灵活,包括宏单元之间复杂的反馈路径,以及用于实现各种常用功能的专用逻辑,例如整数运算。
  • 大型CPLD和小型FPGA之间最显着的区别是CPLD中存在片上非易失性存储器,允许CPLD用于“引导加载程序”功能,然后将控制权移交给那些自己没有永久程序存储的设备。 一个很好的例子是CPLD被用于从非易失性存储器加载FPGA的配置数据。


区别

CPLD是从它们之前的更小型设备 - PLAs(首次由Signetics出货)和PAL演进而来的,在PLAs和PAL之前则是标准的逻辑产品,它们不提供可编程性,只能通过将几个标准逻辑芯片物理地连接在一起(通常在印刷电路板上布线,但有时特别是用于原型设计,使用绕线布线)来构建逻辑功能)。

FPGA和CPLD器件架构之间的主要区别在于FPGA内部是基于查找表(LUT),而CPLD构成具有栅极门的逻辑功能(例如,产品总和)。


编程语言

  • VHDL - VHSIC硬件描述语言
  • Verilog硬件描述语言
  • JAM/STAPL - 标准测试和编程语言


主要厂商


技术

  • 专用集成电路(ASIC)
  • 可擦除可编程逻辑器件(EPLD)
  • 简单可编程逻辑器件(SPLD)
  • 宏单元阵列(Macrocell array)
  • 可编程阵列逻辑(PAL)
  • 可编程逻辑阵列(PLA)
  • 可编程逻辑器件(PLD)
  • 通用阵列逻辑(GAL)
  • 可编程电可擦除逻辑(PEEL)
  • 现场可编程门阵列(FPGA)