第 135 篇

考研数电·零基础讲义 第08讲|组合逻辑电路的分析与设计方法

约 18 分钟 6132 字 华南师范大学数字电子技术考研数电零基础讲义

考研数电·零基础讲义 · 第 08 讲|组合逻辑电路的分析与设计方法 学完这一讲,你能拿到一张逻辑图说出它是干什么的(分析),也能把一句中文要求变成一张能用的电路图(设计),包括 2026 回忆题"4 位奇校验器"这种题。预计用时 2~2.5 小时。

本讲地图

  • 组合逻辑电路是什么:输出只看"此刻"的输入,不记得过去。它是第 08~12 讲的共同主角。
  • 分析方法(四步):逐级写式 → 化简 → 列真值表 → 说功能。
  • 设计方法(六步):逻辑抽象 → 真值表 → 逻辑式 → 选器件 → 化简变换 → 画图,最后一定要验证。
  • 华师怎么考:大题常见"按要求设计一个电路,用指定的门实现",2026 回忆题第 6 题就是"设计 4 位奇校验器,用异或门实现"。本讲把它当作完整例题从头做到尾。
  • 教材对应:阎石《数字电子技术基础》(第六版)第 4 章 4.1~4.3 节。

前置知识

  • 与、或、非、与非、或非、异或、同或的真值表(见第 02 讲上)。
  • 真值表、逻辑式、逻辑图之间互相转换,最小项mim_i的写法(见第 03 讲)。
  • 公式化简、卡诺图化简、与非-与非形式变换(见第 04 讲上、中、下)。

如果这些还不熟,先别急着往下看,回去把卡诺图练顺,本讲会大量用到。


一、先认识"组合逻辑电路"

1.1 大白话:一台没有记忆的自动售货机

想象一台很"笨"的投币灯:你按下哪几个按钮,灯就立刻按规则亮或灭;你一松手,它就恢复——它完全不记得你刚才按过什么。这就是组合逻辑电路的性格:

任意时刻的输出,只由这一时刻的输入决定,和电路以前处于什么状态无关。

与之相对的是"时序逻辑电路"(第 13 讲以后),它像一个计步器,能记住之前走了多少步,输出要看"现在的输入 + 过去的状态"。

1.2 正式定义与结构特点

教材给出的两个特点,一个讲"功能",一个讲"结构":

  1. 功能上:输出仅仅取决于当时的输入。
  2. 结构上:电路里没有存储单元(没有触发器、没有锁存器),信号只从输入往输出单向流动,没有从输出拉回输入的反馈线。

一个有nn个输入、mm个输出的组合电路,可以写成一组函数:

Y1=f1(A1,A2,⋯ ,An),Y2=f2(A1,⋯ ,An),⋯ ,Ym=fm(A1,⋯ ,An)Y_1=f_1(A_1,A_2,\cdots,A_n),\quad Y_2=f_2(A_1,\cdots,A_n),\quad \cdots,\quad Y_m=f_m(A_1,\cdots,A_n)

逐行拆解:

  • A1∼AnA_1\sim A_n⁠:输入变量,每个只能是 0 或 1。
  • Y1∼YmY_1\sim Y_m⁠:输出变量。
  • f1f_1⁠、f2f_2⁠……:各自的"规则",可以用真值表、逻辑式、逻辑图、波形图中任何一种来描述(第 03 讲讲过它们可以互相转换)。

除了"逻辑功能",实际电路还有一个重要参数:传输延迟时间 tpdt_{pd}(读作 t-p-d),即输入变了以后,输出要等多久才跟着变。一个信号要穿过几级门,总延迟就大约是几个tpdt_{pd}⁠。这个参数第 12 讲"竞争-冒险"还会用到。

1.3 易错点 ⚠️

  • 判断是不是组合电路,看"有没有反馈、有没有存储",不是看门的多少。门再多,只要信号单向流动,就是组合电路。
  • "输出与过去无关"指稳定以后的结果。输入刚跳变的一瞬间,输出可能有短暂的毛刺,这是第 12 讲的内容,不改变它是组合电路的本质。

二、组合逻辑电路的分析方法

2.1 大白话:拆一台别人做好的机器

"分析"就是:电路图已经给你了,问它是干什么用的。 好比别人给你一台机器,你顺着管道一段一段看水是怎么流的,最后总结出"哦,原来这是个净水器"。

2.2 分析的四个步骤

  1. 逐级写式:从输入端开始,给每个门的输出起个名字(比如P1P_1⁠、P2P_2⁠),一级一级往后写,直到写出输出YY的表达式。
  2. 化简或变换:用公式法或卡诺图把式子化简,必要时变成异或、同或等更"眼熟"的形式。
  3. 列真值表:把所有输入组合代进去,算出输出。真值表是看功能最直观的形式。
  4. 说出功能:观察真值表的规律,用一句中文说清楚它是干什么的(表决器?比较器?校验器?加法器?)。

如果题目还问延迟,就数一数从输入到输出最长的路径经过了几级门。

组合逻辑电路分析与设计的步骤流程图 分析:已知电路 → 求功能 看懂逻辑图 逐级写出逻辑式 化简/变换 列真值表 说出功能 设计:已知要求 → 求电路 逻辑抽象 定输入输出+编码 列真值表 写逻辑式 选器件 化简/变换 适应器件 画逻辑图 验证 穷举核对 分析与设计是同一张"真值表"的两个方向:分析从电路走到真值表,设计从真值表走到电路

图 1:分析(上)与设计(下)的步骤。两者都绕不开真值表

2.3 例题 1:只用与非门的电路

题目:某电路由 4 个与非门组成:P1=AB‾P_1=\overline{AB}⁠,P2=BC‾P_2=\overline{BC}⁠,P3=AC‾P_3=\overline{AC}⁠,输出Y=P1P2P3‾Y=\overline{P_1P_2P_3}(第 4 个与非门把P1P_1⁠、P2P_2⁠、P3P_3再"与非"一次)。分析它的功能。

第 1 步:逐级写式。 已经给出了每一级,把它们串起来:

Y=AB‾⋅BC‾⋅AC‾‾Y=\overline{\overline{AB}\cdot\overline{BC}\cdot\overline{AC}}

第 2 步:化简。 用反演律(摩根定理)XYZ‾=X‾+Y‾+Z‾\overline{XYZ}=\overline{X}+\overline{Y}+\overline{Z}⁠,把最外面那条长横线"拆开":

Y=AB‾‾+BC‾‾+AC‾‾=AB+BC+ACY=\overline{\overline{AB}}+\overline{\overline{BC}}+\overline{\overline{AC}}=AB+BC+AC

两条横线叠在一起抵消(⁠X‾‾=X\overline{\overline{X}}=X⁠),于是得到最简与或式Y=AB+BC+ACY=AB+BC+AC⁠。

第 3 步:列真值表。

A B C Y
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

第 4 步:说功能。 观察:三个输入里有两个或两个以上是 1,输出就是 1。这是三人多数表决电路:三个人投票,同意记 1,多数同意就通过。

延迟:信号要先过第一级与非门,再过第二级与非门,总共2tpd2t_{pd}⁠。

小结论:"与非-与非"结构 = "与-或"结构。看到两级与非门,直接把第一级当"与",第二级当"或"就行,这个技巧在分析题里非常省时间。

2.4 例题 2:带异或门的电路

题目:电路有三个输入AA⁠、BB⁠、CICI⁠,两个输出。S=(A⊕B)⊕CIS=(A\oplus B)\oplus CI⁠,CO=(A⊕B)⋅CI+ABCO=(A\oplus B)\cdot CI+AB⁠。分析功能。

列真值表(把A⊕BA\oplus B先算出来作为中间列,不容易错):

A B CI A⊕BA\oplus B S CO
0 0 0 0 0 0
0 0 1 0 1 0
0 1 0 1 1 0
0 1 1 1 0 1
1 0 0 1 1 0
1 0 1 1 0 1
1 1 0 0 0 1
1 1 1 0 1 1

说功能:把每一行的A+B+CIA+B+CI(当成普通数字相加)算一下:0、1、1、2、1、2、2、3。再看输出CO SCO\,S当成两位二进制数:00、01、01、10、01、10、10、11,正好就是 0、1、1、2、1、2、2、3!所以这是1 位全加器:SS是本位和,COCO是向高位的进位。第 11 讲会专门讲它。

2.5 易错点 ⚠️

  • 写式时每一级都起名字,不要一口气写一长串,横线一多就容易漏一条。
  • 化简后别忘了列真值表再"说功能"。光看AB+BC+ACAB+BC+AC⁠,很多同学说不出"多数表决";一列表就一目了然。
  • 说功能要用中文的应用场景来说("三人表决""判断输入数是否大于 5"),只写"实现了Y=AB+BC+ACY=AB+BC+AC"在考试里会被扣分。

三、组合逻辑电路的设计方法

3.1 大白话:按订单造机器

"设计"正好反过来:只给你一句话的要求,让你造出电路。 就像客户说"我要一台三个人投票、多数同意就亮灯的机器",你得自己决定用几个开关、怎么接线。

难点不在画图,而在第一步——把中文翻译成 0 和 1。这一步叫逻辑抽象。

3.2 设计的六个步骤(外加验证)

  1. 逻辑抽象:
    • 找出"原因"和"结果":原因做输入变量,结果做输出变量;
    • 规定 0、1 的含义(比如"同意 = 1,不同意 = 0""灯亮 = 1"),这叫状态赋值;
    • 根据题意列出真值表。到这一步,一个中文问题就变成了一张表。
  2. 写出逻辑函数式:把真值表中输出为 1 的行写成最小项之和∑m(⋯ )\sum m(\cdots)⁠。
  3. 选定器件类型:题目要求用什么就用什么——与非门、或非门、异或门、译码器、数据选择器……
  4. 化简或变换:用卡诺图化成最简式,再变换成"适合所选器件"的形式。比如只许用与非门,就变成与非-与非式;要用异或门,就设法凑成异或形式。
  5. 画出逻辑电路图。
  6. 验证:把电路再"分析"一遍,或者穷举所有输入,看是否与真值表一致。

教材还提到第 7 步"工艺设计"(做电路板、调试),考试不考,知道就行。

什么时候可以跳步?如果题目直接给了真值表,第 1 步就省了;如果逻辑关系很直白(比如"有奇数个 1 输出 1"),也可以不列表直接写式——但考试时建议仍然列表,阅卷老师就是看这张表给步骤分的。

3.3 例题 3:举重裁判电路(完整走一遍)

题目:举重比赛有一名主裁判和两名副裁判。只有当主裁判判"成功",并且至少有一名副裁判也判"成功"时,成绩才有效(指示灯亮)。用与非门设计这个电路。

第 1 步:逻辑抽象。

  • 输入:主裁判AA⁠,副裁判BB⁠、CC⁠。规定"判成功 = 1,判失败 = 0"。
  • 输出:指示灯YY⁠。规定"灯亮(成绩有效)= 1"。
  • 按题意逐行判断,列真值表:
A B C Y 理由
0 0 0 0 主裁判不同意
0 0 1 0 主裁判不同意
0 1 0 0 主裁判不同意
0 1 1 0 主裁判不同意
1 0 0 0 没有副裁判同意
1 0 1 1 主裁 + 副裁 C
1 1 0 1 主裁 + 副裁 B
1 1 1 1 全部同意

第 2 步:写式。 输出为 1 的是第 5、6、7 行(行号从 0 数起),即

Y=∑m(5,6,7)=AB‾C+ABC‾+ABCY=\sum m(5,6,7)=A\overline{B}C+AB\overline{C}+ABC

第 3 步:选器件:题目指定与非门。

第 4 步:化简与变换。 把ABCABC用两次(⁠X+X=XX+X=X⁠),分别和前两项合并:

Y=(AB‾C+ABC)+(ABC‾+ABC)=AC+ABY=(A\overline{B}C+ABC)+(AB\overline{C}+ABC)=AC+AB

再变成与非-与非形式(两次取反,里面用摩根定理):

Y=AB+AC‾‾=AB‾⋅AC‾‾Y=\overline{\overline{AB+AC}}=\overline{\overline{AB}\cdot\overline{AC}}

第 5 步:画图:两个 2 输入与非门分别得到AB‾\overline{AB}⁠、AC‾\overline{AC}⁠,再送进第三个 2 输入与非门,输出就是YY⁠。一共 3 个与非门。

第 6 步:验证:把 8 种输入代进AB‾⋅AC‾‾\overline{\overline{AB}\cdot\overline{AC}}⁠,结果与真值表完全一致(本讲所有结果都已用程序穷举核对)。

顺便一提:AB+AC=A(B+C)AB+AC=A(B+C)用一个或门加一个与门只要 2 个门,更省。但题目指定"与非门",就必须按与非-与非来做。题目指定的器件就是硬约束,不能自作主张。

3.4 易错点 ⚠️

  • 状态赋值要写出来:"同意记 1、不同意记 0"这句话必须出现在答卷上,否则真值表没有意义。
  • 真值表的输入顺序要按二进制递增 000、001、010……,行号才和最小项编号对得上。
  • 题目说"用与非门实现",最后的式子必须全部是与非的形式;如果用到了单独的反变量A‾\overline{A}⁠,要说明它用与非门接成反相器得到(把与非门两个输入并在一起就是非门)。

四、完整例题:2026 回忆题第 6 题——4 位奇校验器

2026 回忆题:设计 4 位奇校验器:4 位中有奇数个 1 输出 1,否则输出 0,用异或门实现。

4.1 大白话:奇偶校验在干什么

数据在传输过程中可能被干扰,某一位 0 变成 1。怎么发现?一个简单办法是数 1 的个数。比如约定"每组数据里 1 的个数必须是奇数",接收端一数,发现是偶数,就知道出错了。能判断"1 的个数是奇是偶"的电路就叫奇偶校验器(第 01 讲下介绍过奇偶校验码)。

本题的电路:输入 4 位AA⁠、BB⁠、CC⁠、DD⁠,1 的个数为奇数时Y=1Y=1⁠,为偶数(包括 0 个)时Y=0Y=0⁠。

4.2 第 1 步:逻辑抽象,列真值表

输入AA⁠、BB⁠、CC⁠、DD就是 4 位数据本身(每位 0 或 1),输出YY⁠:奇数个 1 时为 1。逐行数 1 的个数:

序号 A B C D 1 的个数 Y
0 0 0 0 0 0 0
1 0 0 0 1 1 1
2 0 0 1 0 1 1
3 0 0 1 1 2 0
4 0 1 0 0 1 1
5 0 1 0 1 2 0
6 0 1 1 0 2 0
7 0 1 1 1 3 1
8 1 0 0 0 1 1
9 1 0 0 1 2 0
10 1 0 1 0 2 0
11 1 0 1 1 3 1
12 1 1 0 0 2 0
13 1 1 0 1 3 1
14 1 1 1 0 3 1
15 1 1 1 1 4 0

4.3 第 2 步:写出逻辑式

Y=∑m(1,2,4,7,8,11,13,14)Y=\sum m(1,2,4,7,8,11,13,14)

展开就是 8 个最小项相加:

Y=A‾ B‾ C‾D+A‾ B‾CD‾+A‾BC‾ D‾+A‾BCD+AB‾ C‾ D‾+AB‾CD+ABC‾D+ABCD‾Y=\overline{A}\,\overline{B}\,\overline{C}D+\overline{A}\,\overline{B}C\overline{D}+\overline{A}B\overline{C}\,\overline{D}+\overline{A}BCD+A\overline{B}\,\overline{C}\,\overline{D}+A\overline{B}CD+AB\overline{C}D+ABC\overline{D}

4.4 第 3、4 步:为什么要用异或门?——卡诺图告诉你

先试着用卡诺图化简。把 8 个 1 填进 4 变量卡诺图,你会发现它们排成国际象棋棋盘的样子:任何两个 1 都不相邻(相邻格只差一位,1 的个数奇偶必然相反)。所以一个都圈不起来,最简与或式就是上面 8 项本身——用与或门实现要 8 个 4 输入与门加一个 8 输入或门,非常笨重。

这正是异或门出场的时候。回忆异或的性质(第 02 讲上):

  • A⊕BA\oplus B⁠:两个输入不同时为 1,也就是"两位中有奇数个 1"时为 1。
  • 异或满足交换律和结合律:(A⊕B)⊕C=A⊕(B⊕C)(A\oplus B)\oplus C=A\oplus(B\oplus C)⁠,所以多个变量连续异或可以随便加括号、随便换顺序。
  • 推广:A1⊕A2⊕⋯⊕AnA_1\oplus A_2\oplus\cdots\oplus A_n的结果,等于"这nn位中 1 的个数是奇数吗?"——是奇数为 1,偶数为 0。

为什么推广成立?可以这样理解:异或像一个"翻转开关",初始为 0,每遇到一个 1 就翻转一次,遇到 0 不动。翻转奇数次停在 1,偶数次停在 0。

所以本题的函数可以直接写成:

Y=A⊕B⊕C⊕DY=A\oplus B\oplus C\oplus D

用公式把它推出来(考试写这一段,比只说"显然"更稳):先把前两位和后两位分组,令X=A⊕BX=A\oplus B⁠,Z=C⊕DZ=C\oplus D⁠。

  • 当X=1X=1(⁠AA⁠、BB中有 1 个 1)且Z=0Z=0(⁠CC⁠、DD中有 0 个或 2 个 1)时,总数为奇数;
  • 当X=0X=0且Z=1Z=1时,总数也为奇数;
  • X=ZX=Z时,总数为偶数。

即Y=XZ‾+X‾Z=X⊕Z=(A⊕B)⊕(C⊕D)Y=X\overline{Z}+\overline{X}Z=X\oplus Z=(A\oplus B)\oplus(C\oplus D)⁠。

4.5 第 5 步:画逻辑图

用 3 个 2 输入异或门:

  • 门 1:输入AA⁠、BB⁠,输出X=A⊕BX=A\oplus B⁠;
  • 门 2:输入CC⁠、DD⁠,输出Z=C⊕DZ=C\oplus D⁠;
  • 门 3:输入XX⁠、ZZ⁠,输出Y=X⊕ZY=X\oplus Z⁠。
用三个异或门组成的4位奇校验器,动画轮播四组输入 A B C D X=A⊕B Z=C⊕D Y Y=X⊕Z 1000X=1Z=0= 1输入 1000:1 的个数 = 1(奇数)→ Y = 1 1100X=0Z=0= 0输入 1100:1 的个数 = 2(偶数)→ Y = 0 1110X=0Z=1= 1输入 1110:1 的个数 = 3(奇数)→ Y = 1 1111X=0Z=0= 0输入 1111:1 的个数 = 4(偶数)→ Y = 0

图 2:用 3 个异或门组成的 4 位奇校验器,依次演示输入 1000、1100、1110、1111(动画循环播放)

也可以接成"链式":Y=((A⊕B)⊕C)⊕DY=((A\oplus B)\oplus C)\oplus D⁠,同样只要 3 个异或门。两者逻辑功能完全相同,区别在速度:

接法 门数 最长路径经过的门 延迟
树形(A⊕B)⊕(C⊕D)(A\oplus B)\oplus(C\oplus D) 3 2 级 2tpd2t_{pd}
链式((A⊕B)⊕C)⊕D((A\oplus B)\oplus C)\oplus D 3 3 级 3tpd3t_{pd}

所以树形更快,答题时推荐画树形。

4.6 第 6 步:验证

挑几行代进去:

  • ABCD=0111ABCD=0111⁠:X=0⊕1=1X=0\oplus1=1⁠,Z=1⊕1=0Z=1\oplus1=0⁠,Y=1⊕0=1Y=1\oplus0=1⁠。1 的个数是 3,奇数,正确。
  • ABCD=1111ABCD=1111⁠:X=0X=0⁠,Z=0Z=0⁠,Y=0Y=0⁠。4 个 1,偶数,正确。
  • ABCD=1010ABCD=1010⁠:X=1X=1⁠,Z=1Z=1⁠,Y=0Y=0⁠。2 个 1,偶数,正确。

把 16 行全部代入,结果与 4.2 的真值表完全一致(已用程序穷举 16 种输入核对)。

4.7 标准答卷长什么样

解:(1)设输入 4 位数据为AA⁠、BB⁠、CC⁠、DD⁠,输出为YY⁠,A∼DA\sim D中有奇数个 1 时Y=1Y=1⁠,否则Y=0Y=0⁠。

(2)列真值表(16 行,如上表)。

(3)由真值表得Y=∑m(1,2,4,7,8,11,13,14)Y=\sum m(1,2,4,7,8,11,13,14)⁠,卡诺图中 1 互不相邻,无法化简;利用异或运算的性质可写成Y=A⊕B⊕C⊕D=(A⊕B)⊕(C⊕D)Y=A\oplus B\oplus C\oplus D=(A\oplus B)\oplus(C\oplus D)⁠。

(4)画逻辑图:三个 2 输入异或门,接法如图 2。

(5)验证:(举两三行代入说明)。

4.8 易错点 ⚠️

  • 不要把"奇校验器"和"偶校验器"搞反。本题"奇数个 1 输出 1",就是A⊕B⊕C⊕DA\oplus B\oplus C\oplus D⁠。如果要"偶数个 1 输出 1",就在后面加一个非门,即A⊕B⊕C⊕D‾\overline{A\oplus B\oplus C\oplus D}⁠,或把最后一个异或门换成同或门:(A⊕B)⊙(C⊕D)(A\oplus B)\odot(C\oplus D)⁠。
  • 同或连写的陷阱:A⊙B⊙C⊙DA\odot B\odot C\odot D(偶数个变量)并不等于A⊕B⊕C⊕DA\oplus B\oplus C\oplus D⁠,而是等于它的反;但 3 个变量时A⊙B⊙C=A⊕B⊕CA\odot B\odot C=A\oplus B\oplus C⁠。规律:变量个数为奇数时两者相等,为偶数时互为反。考场上拿不准就代两行数验算。
  • 卡诺图"棋盘格"一出现,就要立刻想到异或/同或。
  • 题目说"用异或门实现",不要再画与门或门。

五、把方法串起来:设计中常用的"变换"

设计第 4 步"变换成适合器件的形式",是考试最容易丢分的地方。这里集中整理一下:

要求用的器件 目标形式 怎么得到
与门 + 或门 最简与或式 卡诺图圈 1
只用与非门 与非-与非式 最简与或式两次取反,里面用摩根定理
只用或非门 或非-或非式 先求最简或与式(卡诺图圈 0 得Y‾\overline{Y}再取反),再两次取反
与或非门 与或非式 卡诺图圈 0 得Y‾\overline{Y}的与或式,YY就是它的反
异或门 异或式 观察"奇偶""不同""相加"等特征;卡诺图成棋盘格
译码器、数据选择器 最小项形式 第 09、10 讲

一个小例子:Y=AB+CDY=AB+CD只用与非门实现。两次取反:

Y=AB+CD‾‾=AB‾⋅CD‾‾Y=\overline{\overline{AB+CD}}=\overline{\overline{AB}\cdot\overline{CD}}

两个与非门出AB‾\overline{AB}⁠、CD‾\overline{CD}⁠,第三个与非门出YY⁠。


速记卡

项目 要点
组合电路特点 输出只取决于当前输入;无存储、无反馈
分析四步 逐级写式 → 化简 → 真值表 → 说功能(+ 数延迟级数)
设计六步 逻辑抽象(定变量、赋值、列表)→ 写式 → 选器件 → 化简/变换 → 画图 → 验证
与非-与非 等价于与-或;最简与或式两次取反即得
奇校验 Y=A⊕B⊕C⊕DY=A\oplus B\oplus C\oplus D⁠,奇数个 1 输出 1
偶校验 Y=A⊕B⊕C⊕D‾Y=\overline{A\oplus B\oplus C\oplus D}
同或连写 奇数个变量:⊙\odot连写 = ⊕\oplus连写;偶数个变量:互为反
树形 vs 链式 门数相同,树形级数少、更快
卡诺图棋盘格 无法用与或化简,立刻想到异或/同或

自测练习

1. 分析:某电路由 4 个与非门组成,N=AB‾N=\overline{AB}⁠,P=AN‾P=\overline{AN}⁠,Q=BN‾Q=\overline{BN}⁠,Y=PQ‾Y=\overline{PQ}⁠。写出YY的最简式并说明功能。

答案与提示

P=A⋅AB‾‾P=\overline{A\cdot\overline{AB}}⁠,Q=B⋅AB‾‾Q=\overline{B\cdot\overline{AB}}⁠,Y=PQ‾=AAB‾+BAB‾=(A+B)AB‾=(A+B)(A‾+B‾)=AB‾+A‾B=A⊕BY=\overline{PQ}=A\overline{AB}+B\overline{AB}=(A+B)\overline{AB}=(A+B)(\overline{A}+\overline{B})=A\overline{B}+\overline{A}B=A\oplus B⁠。功能:异或门(用 4 个与非门搭成的异或门)。已穷举 4 种输入核对。

2. 设计:输入AA⁠、BB⁠、CC组成一个 3 位二进制数ABCABC(⁠AA为最高位),当这个数是质数(2、3、5、7)时输出 1。写出最简与或式。

答案与提示

Y=∑m(2,3,5,7)Y=\sum m(2,3,5,7)⁠。卡诺图上m2m_2⁠、m3m_3合并为A‾B\overline{A}B⁠,m5m_5⁠、m7m_7合并为ACAC⁠,得Y=A‾B+ACY=\overline{A}B+AC⁠。注意 1 不是质数,所以m1m_1不取。

3. 设计一个 4 位偶校验器(4 位中有偶数个 1,包括全 0,输出 1),用异或门和同或门实现。

答案与提示

Y=A⊕B⊕C⊕D‾=(A⊕B)⊙(C⊕D)Y=\overline{A\oplus B\oplus C\oplus D}=(A\oplus B)\odot(C\oplus D)⁠。用两个异或门得到A⊕BA\oplus B⁠、C⊕DC\oplus D⁠,再用一个同或门。也可以写成(A⊙B)⊙(C⊙D)(A\odot B)\odot(C\odot D)⁠:因为X‾⊕Z‾=X⊕Z\overline{X}\oplus\overline{Z}=X\oplus Z⁠,所以(A⊙B)⊙(C⊙D)=(A⊕B)⊕(C⊕D)‾(A\odot B)\odot(C\odot D)=\overline{(A\oplus B)\oplus(C\oplus D)}⁠,同样正确。已穷举核对。

4. 只用 2 输入与非门实现Y=AB+CDY=AB+CD⁠,最少需要几个门?

答案与提示

Y=AB‾⋅CD‾‾Y=\overline{\overline{AB}\cdot\overline{CD}}⁠,需要 3 个 2 输入与非门。

5. 设计一个"多数通过"电路:4 个评委AA⁠、BB⁠、CC⁠、DD⁠,至少 3 人同意(记 1)才通过。写出最简与或式。

答案与提示

Y=∑m(7,11,13,14,15)Y=\sum m(7,11,13,14,15)⁠。卡诺图中m15m_{15}分别与m7m_7⁠、m11m_{11}⁠、m13m_{13}⁠、m14m_{14}相邻,圈出 4 个两格圈:Y=ABC+ABD+ACD+BCDY=ABC+ABD+ACD+BCD⁠。

6.(华师真题风格)数据传输时采用奇校验:发送端在 3 位数据AA⁠、BB⁠、CC后附加一位校验位PP⁠,使 4 位中 1 的个数为奇数。(1)设计产生PP的电路;(2)接收端用什么电路检查是否出错?

答案与提示

(1)若AA⁠、BB⁠、CC中已有奇数个 1,P=0P=0⁠;有偶数个 1,P=1P=1⁠。所以P=A⊕B⊕C‾P=\overline{A\oplus B\oplus C}⁠:两个异或门后接一个非门,或者第二个门直接用同或门,P=(A⊕B)⊙CP=(A\oplus B)\odot C⁠。注意不能写成A⊙B⊙CA\odot B\odot C——三个变量时A⊙B⊙C=A⊕B⊕CA\odot B\odot C=A\oplus B\oplus C⁠,正好差一个"非"。

(2)接收端用本讲的 4 位奇校验器:Y=A⊕B⊕C⊕PY=A\oplus B\oplus C\oplus P⁠,Y=1Y=1表示 1 的个数为奇数、正常;Y=0Y=0表示出错(只能发现奇数位出错)。已穷举核对PP的 8 种情况。

7. 设计一个 2 位数值比较电路:输入A1A0A_1A_0和B1B0B_1B_0各表示一个 2 位二进制数,当A1A0>B1B0A_1A_0>B_1B_0时输出 1。写出最简与或式。

答案与提示

按A1A0B1B0A_1A_0B_1B_0排成 4 变量,Y=∑m(4,8,9,12,13,14)Y=\sum m(4,8,9,12,13,14)⁠,化简得Y=A1B1‾+A1A0B0‾+A0B1‾ B0‾Y=A_1\overline{B_1}+A_1A_0\overline{B_0}+A_0\overline{B_1}\,\overline{B_0}⁠。理解:高位大就一定大(⁠A1B1‾A_1\overline{B_1}⁠);或者低位大且高位"不吃亏"。第 11 讲的数值比较器就是这个思路的推广。


下一讲预告

第 09 讲(上)开始认识常用的中规模组合器件,第一个是"编码器"——把"哪个按键被按下"变成二进制代码,并重点读懂优先编码器 74HC148 的功能表。

👉 点击进入下一讲:第09讲(上)|编码器

评论

还没有评论。 来写第一条。

留下一条评论

选填,不会公开

纯文本,链接会自动识别。