基本数字电路组件

多路复用器(,MUX Multiplexer,)

MUX 图示

2-1(,2 inputs, 1 output,) MUX

sq
0e0
1e1
MUX 电路

使用小的 MUX 组成更大的 MUX

MUX 组合

使用 MUX 实现函数

使用 MUX 实现函数
MUX -> minterm
使用 MUX 实现异或门
使用 MUX 实现异或门
使用 MUX 实现与门
使用 MUX 实现与门

多路分用器(,DEMUX Demultiplexer,)

DEMUX

解码器(,dec Decoder,)

独热码(,One-hot code / 1-out-of-m code,)

输出多个 bit,其中只有一个 bit 为 1。

Decoder
e1e0q3q2q1q0
000001
010010
100100
111000

使用解码器实现函数

通常需要配合其它逻辑门实现

使用解码器实现函数

编码器(,enc Encoder,)

Encoder
q3q2q1q0e1e0
000100
001001
010010
100011

优先编码器(,Priority Encoder,)

当多个输入同时为有效状态时,优先编码器会选择具有最高优先级的有效输入,并产生相应的二进制编码输出。

q3q2q1q0re1e0
00000XX
0001100
001X101
01XX110
1XXX111

逻辑移位(,Logic Shift,)

Shift Left
Shift Right

笔记

n bits

使用上述的符号来表示有 n 个 bit 输入/输出

算术移位(,Arithmetic Shift,)

算术移位图示

在进行位的移位时,保持最高位的值。

旋转(,rot Rotation,)

Rotate Left: 将最左侧的位移到最右

Rotate Right: 将最右侧的位移到最左

旋转图示

加法器(,add Adder,)

半加器(,Half Adder,)

no carry in

半加器

全加器(,Full Adder,)

全加器

ripple-carry adder: chain n-bit full adders

涟波进位加法器

运算逻辑单元(,ALU,)

ALU 能组合多个运算单元(logic, add, compare 等),通过 MUX 的输入决定具体进行什么运算。

比较器(,cmp Comparator,)

比较器图例

使能信号(,Enable Input,)

决定电路元件是否正常工作。

当 enable=0 时,元件会进入高阻态(,high impedance,)状态

使能信号图例

点此查看原文