编码器与三态设备的设计与应用
1. 编码器在ABEL和PLD中的设计
1.1 传统设计方法的局限性
在ABEL中设计编码器时,我们可以使用明确的方程或真值表。然而,当输入数量较多时,输入组合的数量会变得非常庞大,这种方法往往不切实际。例如,要设计一个15输入的优先级编码器(输入为P0 - P14),如果考虑所有(2^{15})种可能的输入组合,工作量巨大。
1.2 分解优先级函数的方法
为了解决上述问题,我们可以将优先级函数分解为两个部分:
1. 首先,为15个变量Hi((0\leq i\leq14))编写方程,使得当Pi是最高优先级的有效输入时,Hi为1。
2. 由于任何时候最多只有一个Hi变量为1,我们可以将这些Hi变量组合在一个二进制编码器中,以获得一个4位数字,用于标识最高优先级的有效输入。
以下是一个使用这种方法的ABEL程序示例:
module PRIOR15
title '15-Input Priority Encoder
J. Wakerly, DAVID Systems, Inc.'
PRIOR15 device 'P20L8';
" Input pins
P0, P1, P2, P3, P4, P5, P6, P7 pin 1, 2, 3, 4, 5, 6, 7, 8;
P8, P9, P10, P11, P12, P13, P14 pin 9, 10, 11, 13, 14, 23, 16;
!EN pin 17;
"
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



