组合电路血型符合设计电路#
课题背景及要求#
人的血型有 A、B、AB、O 4种。输血时输血者的血型与受血者血型必须符合下图中用箭头指示的授受关系(图 P4.22)。试用数据选择器设计一个逻辑电路,判断输血者与受血者的血型是否符合上述规定。(提示:可以用两个逻辑变量的 4 种取值表示输血者的血型;用另外两个逻辑变量的 4 种取值表示受血者的血型。)
逻辑设计方案#
1. 状态编码#
以 M,N 的 4 种状态组合表示输血者的 4 种血型,并以 P,Q 的 4 种状态组合表示受血者的 4 种血型,编码分配如图 A4.22(a) 所示。
用 Z 表示判断结果,Z=0 表示符合输血要求,Z=1 表示不符合要求。
2. 真值表#
根据输血授受关系,可列出 Z 与 M,N,P,Q 之间逻辑关系的真值表(表 A4.22):
| 输血者编码 (MN) | 输血者血型 | 受血者编码 (PQ) | 受血者血型 | 判断结果 (Z) |
|---|
| 00 | A | 00 | A | 0 |
| 00 | A | 01 | B | 1 |
| 00 | A | 10 | AB | 0 |
| 00 | A | 11 | O | 1 |
| 01 | B | 00 | A | 1 |
| 01 | B | 01 | B | 0 |
| 01 | B | 10 | AB | 0 |
| 01 | B | 11 | O | 1 |
| 10 | AB | 00 | A | 1 |
| 10 | AB | 01 | B | 1 |
| 10 | AB | 10 | AB | 0 |
| 10 | AB | 11 | O | 1 |
| 11 | O | 00 | A | 0 |
| 11 | O | 01 | B | 0 |
| 11 | O | 10 | AB | 0 |
| 11 | O | 11 | O | 0 |
3. 逻辑函数表达式#
从真值表写出逻辑式为:
Z=MNPQ+MNPQ+MNPQ+MNPQ+MNPQ+MNPQ+MNPQ
电路实现#
本设计使用 8选1数据选择器 (如 74HC151) 来产生上述逻辑函数。
已知 8选1数据选择器的输出为:
Y=A2A1A0D0+A2A1A0D1+A2A1A0D2+A2A1A0D3+A2A1A0D4+A2A1A0D5+A2A1A0D6+A2A1A0D7
将 Z 变换成与 Y 对应的形式:
Z=MNPQ+MNPQ+MNPQ+MNPQ+MNP1+MNPQ+MNP′0+MNP0
(注:根据真值表,MNP 项在 Q=0 和 Q=1 时均为 1,因而对应 D4=1;MNP 与 MNP 项在 Q=0 和 Q=1 时均为 0,因而对应 D6=D7=0)
通过变量置换与引脚连接:
- 地址输入端:令 A2=M,A1=N,A0=P;
- 数据输入端:令 D0=D1=D3=D5=Q,D2=Q,D4=1,D6=D7=0。
所得逻辑电路连接图如图 A4.22(b) 所示,此时数据选择器的输出 Y 即为所求的判断结果 Z: