优先编码器类型与实时应用程序

在前面的教程中我们已经看到了二进制编码器s对给定的数据进行编码。但是一个标准的数字编码器有一个限制,如果在一个给定的时间有多个输入是活跃的,它将在输出产生一个错误。如果两个输入同时是逻辑的,它会产生一个未定义的输出组合。二进制编码器

考虑8 - 3线的编码器,同时如果D2和D5 1,编码器生成的输出为111,这意味着这三个输出等于逻辑1(例如在一个人操作键盘可能按另一个键释放第一个之前)。此值既不对应于二进制2也不对应于二进制5。

为了克服这个问题,编码器电路必须建立一个优先级,这样在这种情况下只有一个输入被编码。这意味着当两个输入同时等于逻辑1时,编码器必须对每个输入的级别进行优先级排序,这样它产生的输出对应于最高优先级的输入。这种编码器称为优先编码器。

回到顶部

优先编码器

如前所述,优先级编码器是一种编码器类型,它对输入施加了排序,这意味着与标准编码器相比,它包含优先级函数。

然而,这一优先次序是基于投入的相对规模。因此,具有较大幅度的输入是第一个被编码的。

优先级编码器可以在许多实际应用中选择具有最高优先级的输入。这种选择的过程称为仲裁。

仲裁的一个最常见的例子是,在计算机系统中有许多输入设备,其中几个设备试图同时向计算机提供数据。在这些情况下,优先级编码器允许在试图同时访问计算机的那些设备中具有最高优先级的输入设备。

让我们看看4输入,8输入优先编码器的设计。

回到顶部

简单的4-Input优先编码器

这个优先级编码器由4个输入和3个输出组成。尽管编码器有2n输入和n个输出,它有第三个输出' V ',这是一个有效的位指示器,当一个或多个输入是活跃的或等于1时设置为1。

当所有的输入都为零时,这个有效位为零,这表明没有有效的输入。在这个条件下,其他输出被认为是不关心条件,当V为零时不检查。

根据真值表,最高位是下标数更高的输入的优先级,最高位优先级最高,最低位优先级低。

在真值表中,D3的优先级最高,D0的优先级最低。当D3是活跃的或1,那么不管其他输入,输出是11。下一个优先级高的是D2,在D3之后。

下一个优先级高的是D2,在D1之后。因此,当D3为0,D2为1时,不管其他两个输入(优先级较低),输出为10。当更高优先级的输入为零时,则生成D1的输出,以此类推。

4位优先级编码器真值表

根据上面的真值表,我们可以将这两种输出的布尔表达式写成

表达式

K-map简化

上述输入和有效输出的表达式可以通过K-map化简得到。虽然该编码器的真值表显示为5行,但将每一行中的每个×先用0替换,再用1替换,我们可以得到16个输入组合。这两个输出的最小项可以推导为

日元=∑m(1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14、15)

Y0 =∑m (1, 3, 4, 5, 7, 9, 11, 12, 13, 15)

那么从下面的k -map中我们得到的输出为

y = D3 + D2

Y0 = D3 + (D2)̅D1

优先编码器的K图简化

通过K-map化简得到相应的输出表达式,实现了4输入优先级编码器的逻辑图。该编码器的电路图如下所示。

4位优先编码器逻辑图

回到顶部

8 - to - 3优先编码器或八进制- to -二进制优先编码器

八进制到二进制优先级编码器的真值表如下所示。这种编码器有8个输入和3个输出,产生相应的二进制码。优先级被分配给每个输入,因此当两个或多个输入同时为1时,具有最高优先级的输入在输出中表示出来。

假设输入行D2, D4和D7同时是逻辑1,而与其他输入无关,则只有D7被编码,输出为111。同理,如果D3 = 1,则D2, D1, D0的状态无关或不关心,输出为011。

八进制到二进制优先编码器

IC 74148是最常用的MSI编码器电路,用于8到3线优先编码器。该编码器的主要特点包括n位优先级编码级联、编码转换、最高优先级输入行优先级编码、十进制到BCD转换、所有输入均为高时输出使能-激活低等。

数字电路的输入通常使用八进制码,因此需要手动输入这样长的二进制字。因此,设计了编码器集成电路来实现这一操作。

下图显示了它的引脚图,它有主动低输入和主动低输出。为了处理更多的输入,这些集成电路级联,使输入和灰色输出也是活跃的低线路。

引脚图74148

回到顶部

十进制到BCD优先编码器

这种类型的编码器执行与普通的十进制到BCD编码器相同的操作,将十进制数字编码为4位的BCD输出。但是,它包含了提供优先级的附加功能。这意味着BCD输出对应于出现在输入上的十进制数字的最高优先级而产生,而与所有其他输入无关。

下图显示了十进制到- bcd编码器的真值表。该编码器有9个活跃的低输入,表示从1到9的十进制数字。根据最高阶激活输入,产生反BCD码。

十进制到BCD优先编码器真值表

当D1到D9的所有输入为逻辑1时,所有输出设为1111,是0000的倒数,即BCD码为0。当D9为1时,输出为0110,是1001的倒数,即9的BCD码。这个过程对所有的小数都是一样的。

当没有任何输入被激活时,输出通常是高的,这种情况对应于小数0输入。因此,当所有的输入都是高输入时,编码器假设为小数点0状态,因为没有D0输入。

同样,如果两个输入同时被激活,假设D3和D5,那么这些输入的最高优先级,也就是,D5被编码为1010是0101的倒数,这就是这个编码器被称为优先级编码器的原因。

回到顶部

16到4优先编码器

类似地,一个16到4的编码器可以通过使用6个4到2编码器来构造。四个4到2编码器连接到16个输入端,8个输出端再次连接到两个4到2编码器,产生4个输出端。

优先编码器的应用程序

与标准数字编码器相比,优先编码器最常用于多种应用场合。通过级联几个优先级编码器,设计了一个更大的优先级编码器。因此,这种类型的编码器用于减少在有多个输入的特定应用程序中所需的连接数。

键盘编码器

假设QWERTY键盘与微型计算机相连,因此计算机必须读取键盘上的104个键,以便在任何时候只能读取一个键的高低。

不可能将所有的104个连接都直接连接到计算机(如果它的配置较少),但是使用优先级编码器将它们连接起来是一种更有效的方法。通过使用这个编码器,每个字符或密钥都被编码成7位(0-127十进制)的标准ASCII码

这104个键或单个按钮。然后将7位BCD码输入计算机。其中一种类型的键盘编码器是20键,74C923。这些编码器还提供了优先级的便利,当两个键同时被按下时,它会给出最高优先级的输入。

位置编码器

磁定位控制是优先编码器的另一个常见应用。这种控制用于机械臂的定位和船舶导航。在这种情况下,编码器将罗盘的旋转或角度位置转换为数字代码。然后这个代码被输入到计算机中,这样就提供了导航数据。

下图显示了一个简单的罗盘编码器,它将8个位置转换为3位输出。对于这种类型的输入-输出配置,使用了74LS148 IC,它是一个8- 3行优先编码器。一般使用簧片开关和磁铁来指示罗盘的角度位置。

优先编码器框图的应用优先编码器的应用

回到顶部

一个回应

留下一个回复

您的电子邮件地址将不会被公布。必填字段被标记*