Lecture11 | Combinational Logic
1 iff one(not both) a, b = 1
a | b | y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
a | y |
---|---|
0 | b |
1 | b ‾ \overline{b} b |
2-bit adder
![](https://img-blog.csdnimg.cn/img_convert/41a5390eaca59d187040ca0b9647d195.png)
A a 1 a 0 a_1a_0 a1a0 | B b 1 b 0 b_1b_0 b1b0 | C c 2 c 1 c 0 c_2c_1c_0 c2c1c0 |
---|---|---|
00 | 00 | 000 |
00 | 01 | 001 |
00 | 10 | 010 |
00 | 11 | 011 |
01 | 00 | 001 |
01 | 01 | 010 |
01 | 10 | 011 |
01 | 11 | 100 |
10 | 00 | 010 |
10 | 01 | 011 |
10 | 10 | 100 |
10 | 11 | 101 |
11 | 00 | 011 |
11 | 01 | 100 |
11 | 10 | 101 |
11 | 11 | 110 |
Logical Gates
AND
![](https://img-blog.csdnimg.cn/img_convert/bf7b205a67a1f4c99a3b822347d5ab0f.png)
ab | c |
---|---|
00 | 0 |
01 | 0 |
10 | 0 |
11 | 1 |
OR
![](https://img-blog.csdnimg.cn/img_convert/d2c2d42b5957c921d29d805507acf0aa.png)
ab | c |
---|---|
00 | 0 |
01 | 1 |
10 | 1 |
11 | 1 |
NOT
![](https://img-blog.csdnimg.cn/img_convert/acce84b407311c8b96cd32cef70a7189.png)
a | b |
---|---|
0 | 1 |
1 | 0 |
XOR
![](https://img-blog.csdnimg.cn/img_convert/05c01ec548400087b8e8c26cf5fc700f.png)
ab | c |
---|---|
00 | 0 |
01 | 1 |
10 | 1 |
11 | 0 |
对于异或,如果有 奇数 \textcolor{red}{奇数} 奇数个 1 最后结果就是 1 |
NAND
![](https://img-blog.csdnimg.cn/img_convert/f24a468e98e60d2692189a0ef6efb668.png)
ab | c |
---|---|
00 | 1 |
01 | 1 |
10 | 1 |
11 | 0 |
NOR
![](https://img-blog.csdnimg.cn/img_convert/3a027f29b3c8013136deaf2f7e020001.png)
ab | c |
---|---|
00 | 1 |
01 | 0 |
10 | 0 |
11 | 0 |
Example
![](https://img-blog.csdnimg.cn/img_convert/4553b34ef3933b19eb1b723f681ddca7.png)
PS | Input | NS | Output |
---|---|---|---|
00 | 0 | 00 | 0 |
00 | 1 | 01 | 0 |
01 | 0 | 00 | 0 |
01 | 1 | 10 | 0 |
10 | 0 | 00 | 0 |
11 | 1 | 00 | 1 |
P S 0 PS_0 PS0 是右边一列, P S 1 PS_1 PS1 是左边的一列 |
Boolean Algebra
y
=
a
⋅
b
+
a
⋅
c
+
b
⋅
c
y = a \cdot b + a \cdot c + b \cdot c
y=a⋅b+a⋅c+b⋅c
Algebraic Simplification
y
=
a
b
+
a
+
c
=
a
(
b
+
1
)
+
c
=
a
(
1
)
+
c
=
a
+
c
\begin{aligned} y &= ab + a + c \\ & = a(b + 1) + c \\ & = a(1) + c \\ & = a + c \end{aligned}
y=ab+a+c=a(b+1)+c=a(1)+c=a+c
x
⋅
x
‾
=
0
x
+
x
‾
=
1
x
⋅
0
=
0
x
+
1
=
1
x
⋅
1
=
x
x
+
0
=
x
x
⋅
x
=
x
x
+
x
=
x
x
⋅
y
=
y
⋅
x
x
+
y
=
y
+
x
(
x
y
)
z
=
x
(
y
z
)
(
x
+
y
)
+
z
=
x
+
(
y
+
z
)
x
(
y
+
z
)
=
x
y
+
x
z
x
+
y
z
=
(
x
+
y
)
(
x
+
z
)
x
y
+
x
=
x
(
x
+
y
)
x
=
x
x
⋅
y
‾
=
x
‾
+
y
‾
(
x
+
y
)
‾
=
x
‾
⋅
y
‾
\begin{aligned} x \cdot \overline {x} &= 0 ~~~~~~~~~~~~~~~~~~ &x + \overline {x} &= 1\\ x \cdot 0 &= 0 ~~~~~~~~~~~~~~~~~~ &x + 1 &= 1\\ x \cdot 1 &= x ~~~~~~~~~~~~~~~~~~ &x + 0 &= x\\ x \cdot x &= x ~~~~~~~~~~~~~~~~~~ &x + x &= x\\ x \cdot y &= y \cdot x ~~~~~~~~~~~~~~~~~~ &x + y &= y + x\\ (xy)z &= x(yz) ~~~~~~~~~~~~~~~~~~ &(x + y) + z &= x + (y + z)\\ x(y + z) &= xy + xz ~~~~~~~~~~~~~~~~~~ &x + yz &= (x + y)(x + z)\\ xy + x &= x ~~~~~~~~~~~~~~~~~~ &(x + y)x &= x\\ \overline{x \cdot y} &= \overline{x} + \overline{y} ~~~~~~~~~~~~~~~~~~ &\overline{(x + y)} &= \overline{x} \cdot \overline{y}\\ \end{aligned}
x⋅xx⋅0x⋅1x⋅xx⋅y(xy)zx(y+z)xy+xx⋅y=0 =0 =x =x =y⋅x =x(yz) =xy+xz =x =x+y x+xx+1x+0x+xx+y(x+y)+zx+yz(x+y)x(x+y)=1=1=x=x=y+x=x+(y+z)=(x+y)(x+z)=x=x⋅y
Data Multiplexor
![](https://img-blog.csdnimg.cn/img_convert/1d032f0b3710ed7307b0f1a266800359.png)
s | ab | c |
---|---|---|
0 | 00 | 0 |
0 | 01 | 0 |
0 | 10 | 1 |
0 | 11 | 1 |
1 | 00 | 0 |
1 | 01 | 1 |
1 | 10 | 0 |
1 | 11 | 1 |
s 为 0 时 c 实际上是 a 的值。s 为 1 时 c 实际上是 b 的值。 | ||
$$ | ||
\begin{aligned} | ||
c &= \overline{s}a\overline{b} + \overline{s}ab + s\overline{a}b + sab \ | ||
&= \overline{s}(a\overline{b} + ab) + s(\overline{a}b + ab) \ | ||
&= \overline{s}(a(\overline{b} + b)) + s((\overline{a} + a)b) \ | ||
&= \overline{s}(a(1)+s(1)b) \ | ||
&= \overline{s}a + sb | ||
\end{aligned} | ||
$$ | ||
也就是 | ||
![]() |
4-to-1 Multiplexor
![](https://img-blog.csdnimg.cn/img_convert/5f26bc8952b83fecffabb1cdd91d0e19.png)
![](https://img-blog.csdnimg.cn/img_convert/832bae9f1281977f3b5a4d0282fcee33.png)
![](https://img-blog.csdnimg.cn/img_convert/bfd6e8ebe3b082013eab02d723e82926.png)
S | R |
---|---|
00 | A + B |
01 | A - B |
10 | A & B |
11 | A | B |
Our Simple ALU
![](https://img-blog.csdnimg.cn/img_convert/c498c28fa884312c555ea8e0c80f2915.png)
a 0 a_0 a0 | b 0 b_0 b0 | s 0 s_0 s0 | c 1 c_1 c1 |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
a i a_i ai | b i b_i bi | c i c_i ci | s i s_i si | c i + 1 c_{i+1} ci+1 |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
s i = X O R ( a i , b i , c i ) s_i=XOR(a_i,b_i,c_i) si=XOR(ai,bi,ci) | ||||
c i + 1 = M A J ( a i , b i , c i ) = a i b i + a i c i + b i c i c_{i+1}=MAJ(a_i,b_i,c_i)=a_ib_i+a_ic_i+b_ic_i ci+1=MAJ(ai,bi,ci)=aibi+aici+bici | ||||
![]() | ||||
![]() |
N 1-bit adders -> 1 N-bit adder
![](https://img-blog.csdnimg.cn/img_convert/57e978db0e33f21706e029ab93b2f302.png)
![](https://img-blog.csdnimg.cn/img_convert/abbb5eaeca42981416a479af2c0aa2f9.png)