PLD 可编程逻辑器件
PLD大致分为SPLD CPLD FPGA 三类,SPLD CPLD原理相同复杂程度不通,FPGA和前面两种电路结构不同.
SPLD simple PLD 简单可编程逻辑器件
CPLD complex PLD 复杂可编程逻辑器件
FPGA,现场可编程门阵列
其实这些缩写可以想象一下他们英文含义就能记得住.
- PLD 的内部逻辑连接有熔丝和反熔丝以及叠栅隧道MOS管几种,熔丝和反熔丝型只能一次写入,叠栅隧道MOS管可反复写入.
- PLD的类型早期有PLA 可编程逻辑阵列,因为通过逻辑代数推理学习,任何一种逻辑函数的表达式最终都可以变换为与和或的形式,因此都可以用一级与(AND)逻辑和一级或(OR)逻辑电路来实现,这也是PLA的基本原理.
- 由于与逻辑阵列产生的最小项是可编程的,那么将或逻辑阵列的输入做成固定连接,就不用对或逻辑阵列编程了;把或逻辑阵列做成固定连接,压缩了电路规模,简化了编程工作,进而产生一种与逻辑阵列可编程或逻辑阵列固定的 可编程阵列逻辑(PAL)(因为或逻辑固定了所以叫阵列逻辑)
- PAL包括可编程与逻辑阵列,固定的或逻辑阵列和输出电路三部分.部分型号输出电路还包括触发器和从触发器反馈到与逻辑阵列的反馈线. 不通型号的PAL输出电路部分可以分为
- 只缓冲输出,
- 输入输出(可将输出引脚通过连接到与逻辑阵列的特定输入,从而将输出引脚编程为输入或输入状态,充分利用引脚资源.)
- 还有带异或们的可编程输入/输出结构,是在与或逻辑阵列的输出端接一个异或门
- 寄存器输出,再与或阵列输出和三态缓冲器之间接一个D触发器,有触发器就可以设计时序逻辑,同时触发器的状态还可以反馈回与逻辑阵列输入上.
GAL 通用阵列逻辑,基本结构和PAL一样,但做了2个改进
- 可编程连接由熔丝或反熔丝工艺改为能反复编程的叠栅MOS管,从而让器件可反复编程.
- 输出电路部分改用了逻辑功能更丰富的 输出逻辑宏单元(OLMC) ,为了便于逻辑关系描述,,把与或阵列中的或们也划入了OLMC框图之中,对OLMC的编程,可以将输出电路设置成不同的工作模式,这也就是名称中通用的含义来源.
- 逻辑宏单元也可配置为4种输出结构,专用输入/专用组合输出/反馈组合输出/寄存器输出(和PAL的输出模式类似)
CPLD 复杂可编程逻辑 由若干逻辑阵列模块(LAB,也叫function block FB 功能模块或通用模块)和可编程互联阵列(PIA,也有叫switch matrix开关矩阵的)组成, 每个LBA相当于一个PAL或GAL电路,
Altera max 7000S系列由多个LBA和可编程互联阵列组成, 单个LBA又包涵多个宏单元,这里面每个宏单元电路相当于GAL电路的一组与或逻辑阵列和输出逻辑宏单元.