可编程逻辑阵列

可编程逻辑阵列(英语:Programmable Logic Array,缩写:PLA)是一种可以实现组合逻辑电路可编程逻辑器件。PLA有一组可编程的AND闸,其连接到一组可编程的OR闸,如此可以达到:“只在合乎设置条件时才允许产生逻辑信号输出。”PLA有2^N个AND闸来输入N个变量,并且需要M个OR闸来输出M个结果。PLA如此的逻辑门布局能用来规划大量的逻辑函数,这些逻辑函数必须先以积项(有时是多个积项)的原始形式进行齐一化。

PLA 示意图

PLA与可编程数组逻辑设备(PAL)的差别为PLA的AND闸、OR闸皆可修改。

历史

编辑

1970年,德州仪器根据IBM的只读关系存储器(ROAM)开发了一个有可编程光掩模的IC(TMS2000)。此IC借由改变金属层来达成可编程的功能。TMS2000有17个输入、18个输出以及8个JK触发器作为存储器。 同时,德州仪器将此设备命名为PLA。[1]

步骤

编辑
  1. 将所需逻辑化成积项之和(Sum of Products)(SOP)
  2. 将SOP化简至最简型式
  3. 决定输入的AND数组产生需要的积项(Product term)
  4. 决定OR数组的输入产生需要的和项(Sum term)
  5. 决定反向数组的连接
  6. 开始编程PLA

应用

编辑

在PLA的应用中,有一种是用来控制资料路径,在指令集内事先定义好逻辑状态,并用此来产生下一个逻辑状态(透过条件分支)。

举例来说,如果目前机器(指整个逻辑系统)处于二号状态,如果接下来的执行指令中含有一个立即值(侦测到立即值的字段)时,机器就从第二状态转成四号状态,并且也可以进一步定义进入第四状态后的接续动作。因此PLA等于扮演(芯片)系统内含的逻辑状态图state diagram)角色。

除了PLA外,其他常用的可编程逻辑器件还有可编程阵列逻辑(PAL)、复杂可编程逻辑器件CPLD)以及现场可编程逻辑门数组FPGA)。

参见

编辑

参考文献

编辑
  1. ^ Andres, Kent. A Texas Instruments Application Report: MOS programmable logic arrays.. Texas Instruments. October 1970. Bulletin CA-158. 

外部链接

编辑