可程式逻辑阵列原文是英文的ProgrammableLogicArray,简称PLA,PLA是一种可程式化的装置,可用来实现组合逻辑电路。PLA具有一组可程式化的AND阶,AND阶之后连接一组可程式化的OR阶,如此可以达到:只在合乎设定条件时才允许产生逻辑讯号输出。
PLA如此的逻辑闸佈局能用来规划大量的逻辑函式,这些逻辑函式必须先以积项(有时是多个积项)的原始形式进行齐一化。
在PLA的应用中,有一种是用来控制资料路径,在指令集内事先定义好逻辑状态,并用此来产生下一个逻辑状态(透过条件分支)。
举例来说,如果目前机器(指整个逻辑系统)处于二号状态,如果接下来的执行指令中含有一个立即值(侦测到立即值的栏位)时,机器就从第二状态转成四号状态,并且也可以进一步定义进入第四状态后的接续动作。因此PLA等于扮演(晶片)系统内含的逻辑状态图(statediagram)角色。
除了PLA外,其他常用的可程式逻辑装置还有可程式阵列逻辑(PAL)、複杂可程式逻辑装置(CPLD)以及现场可程式逻辑闸阵列(FPGA)。
要注意的是,虽然可程式逻辑阵列一词中带有“可程式”一字,但不表示所有的PLA都是具有现场性的可程式化能力。事实上许多都属遮罩性的可程式化,性质与ROM相同,必须在晶片製造厂内就执行与完成程式化设定,尤其是内嵌于电路较複杂的晶片(例如:微处理器)的PLA多属此种程式化方式。