数字电路中,译码器(如n线-2n线BCD译码器)可以担任多输入多输出逻辑门的角色,能将已编码的输入转换成已编码的输出,这里输入和输出的编码是不同的。输入使能信号必须接在译码器上使其正常工作,否则输出将会是一个无效的码字。译码在多路复用、 七段数码管和内存地址译码等应用中是必要的。
译码器可以由与门或与非门来负责输出。若使用与门,当所有的输入均为高电平时,输出才为高电平,这样的输出称为“高电平有效”的输出;若使用与非门,则当所有的输入均为高电平时,输出才为低电平,这样的输出称为“低电平有效”的输出。
2线-4线一位译码器更复杂的译码器是n线-2n线类型的二进制译码器。这类译码器是一种组合逻辑电路,能从已编码的n个输入,将二进制信息转换为2n个独特的输出中最大个数的输出。我们说2n个输出的最大个数,是因为当n位已编码信息中有未使用的位组合时,译码器可能会有少于2n个输出。
译码器包括2线-4线译码器、3线-8线译码器或4线-16线译码器。在有使能信号输入的情况下,2个2线-4线译码器可以组成1个3线-8线译码器,同样,2个3线-8线译码器可以组成1个4线-16线译码器。在这类电路设计中,2个3线-8线译码器的使能输入都来自于第四个输入端,这一输入在2个3线-8线译码器间起到了选择器的作用t。这使得第四个输入端可以使2个译码器中的任何一个工作,其中第一个译码器产生输出D(0)至D(7),第二个译码器产生输出D(8)至D(15)。包含使能输入的译码器又称译码器-多路分配器。因此,将第四个输入端作为2个译码器共享的输出就能组成1个4线-16线译码器,能产生16个输出。
输入:s0,s1,s2
输出:最小项m0,m1,…,m7
大多数随机存取存储器使用n线-2n线译码器来将地址总线上已选择的地址转换为行地址选择线中的一个。
在CPU设计中,指令译码器是CPU的一部分,能将存储在指令寄存器或微程序指令中的比特转换为能控制CPU其他部分的控制信号。
8个寄存器组成的简单CPU会使用指令译码器中的3线-8线逻辑译码器来选择寄存器文件的源寄存器并输出到ALU以及目的寄存器中,以接受ALU的输出。典型的CPU指令译码器也包括其他很多组件。