中文解释:可现场编程逻辑阵列
FPLA的结构特点
ROM中的与阵列是一个产生2n个输出的译码器,即产生2n个最小项。从逻辑设计的角度看,不管实际的逻辑函数需要多少个最小项,这2n个最小项始终存在。如果我们把ROM 用来进行逻辑设计,从逻辑设计的角度看,ROM 中总有一部分最小项未使用,造成芯片面积浪费。为此,人们进行创新改造,出现了FPLA 器件。
在FPLA 器件中,ROM 中的地址译码器改为乘积项发生器。与阵列不再是固定的产生2n个最小项,它所产生的最小项数目<2n个,且按用户使用的要求来设计,即与阵列是可编程的。或阵列与ROM 相似,当然也是可编程的。结构框图如下图所示
图4.13 FPLA实现组合逻辑的框图
总之,FPLA 的特点是与阵列、或阵列都是可编程的,它既能实现组合逻辑,也能实现时序逻辑。
FPLA实现组合逻辑
FPLA器件为了减少芯片面积,在实现组合逻辑时,逻辑函数表达式不是写成最小项之和的形式,而是最简与-或形式。其中乘积项用与阵列编程实现,或运算则由或阵列编程实现。
【例1】用FPLA 实现4位二进制码到格雷码的转换。
二进制码(B3-B0)到格雷码(G3-G0)的转换真值表如下
表4.3 二进制码到格雷码的转换真值表
从表中可以得到如下最简与-或表达式:
G3 = B3
_ _
G2=B3⊕B2= B3B2+B3 B2
_ _
G1=B2⊕B1= B2B1+B2 B1
_
G0=B1⊕B0= B1B0+B1B0
与项输出(7个):
P0=B3P1=B3B2P2=B3B2P3=B
P4=B2B1P5=B1B0P6=B1B0
或项输出(4个):
G3=P0 G2=P1+P2 G1=P3+P4 G0=P5+P6
FPLA编程的阵列结构图
图4.14 FPLA编程的阵列结构图
存储容量比较:
FPLA:7 × 4 = 28个存储元
ROM:16 × 4 = 64个存储元
FPLA实现时序逻辑
早期FPLA 中触发器需要外加,后期FPLA 中将触发器也集成在一个芯片内,因此可直接采用时序 FPLA 器件。
【例2】用FPLA 实现具有7段显示输出的8421BCD码同步计数器。
[解]
8421BCD码同步计数器状态转移表如下
表4.4(a) 8421BCD码同步计数器状态转移表
由表得到4个D触发器的激励函数,其最后化简结果为
D1=
Q1
D2=Q1Q4Q2+Q1Q
D3=Q1Q2
Q3+ Q1 Q3+ Q2Q3
D4=Q1Q2Q3 Q4+ Q1Q4
8421BCD码七段显示译码电路的真值表见下表。七段 a ~ g中某段输出 1 ,表示该段点亮;输出 0 ,表示该段熄灭。最后一列表示组合显示的阿拉伯数字。
表4.4(a) 8421BCD码七段显示译码真值表
由表,并利用卡诺图,最后化简得到:
_ _ _ _
_
a=A B C D + A BC
_ _
b= A
B C
+ A B C
_
_
c= AB C
_ _ _ _ _
d= A B C+ABC+A B C D
_ _
e=A+ A BC
_ _ _ _ _
f=AB+A B C D + A B C
_ _ _
g=ABC+ B C D
由于 DCBA = Q4Q3Q2Q1 ,代入上式得:
_ _ _ _ _
a= Q4 Q3 Q2 Q1+Q3 Q2 Q1
_ _
b=Q3 Q2 Q1+Q3Q2 Q1
_ _
c= Q3 Q2 Q1
_ _ _ _ _
d=Q3 Q2 Q1+Q3Q2Q1+ Q4 Q3 Q2 Q1
_ _
e=Q1+Q3 Q2 Q1
_ _ _ _ _
f=Q2Q1+ Q4 Q3 Q2Q1+ Q3Q2 Q1
_ _ _
g=Q3Q2Q1+ Q4 Q3 Q2
根据各级触发器的激励函数及七段译码输出方程,可做出 FPLA 方阵图,见下图所示。

图4.15 8421BCD同步计数器和七段显示译码器阵列图