分线器可以把一个多位的输入拆分为若干位,也可反过来把若干个若干位的输入合并为一个输出,可设置具体拆分方式。
其参数包括:

正如 Python 程序可以包含函数一样, Schematic 也可以包含子电路。在这部分实验中,我们将创建几一些子电路来演示它们的用途。
重要提示
Logisim Evolution 规定,不能用关键字(如
NAND)命名子电路,也不能在名称的第一个字符使用数字。
打开练习 1 的 Schematic ( File -> Open -> ex1.circ )。
双击左侧菜单电路选择器中的 NAND1 打开 NAND1 空子电路。(注意末尾的 1 ;因为有一个名为 NAND 的组件,所以我们不能将其称为 NAND )。
在新的 Schematic 窗口中,创建一个简单的 NAND 电路,左侧为 2 个输入引脚,右侧为输出引脚。请不要使用 Gates 文件夹中的内置 NAND 门(即只使用选择工具图标旁边提供的 AND 、 OR 和 NOT 门)。您可以使用选择工具选择输入/输出,并更改窗口左下角的属性 Label 来更改输入和输出的标签。
重复上述步骤,再创建几个子电路:
NORXOR2-to-1 MUX4-to-1 MUX以4-1选择器为例:总计六位输入,分别是四路数据输入A、B、C、D和两位地址选择sel1、sel2。我们可以朴素地感知,这个电路通过地址选择将一路输入接通至输出。
由此可知运行逻辑:
两位地址选择,采用二进制编码,将被译码为四位输出(0001或0010或0100或1000)。通过这四位输出分别和数据输入取逻辑与(AND)并输出,仅有一位数据输入被带出,另外三位输出必为0。最终将取逻辑与之后的四位输出通过四输入或门输出即可。
可推知输出 Y=Asel1'sel2'+Bsel1'sel2+Csel1sel2'+Dsel1sel2
AND 、 OR 和 NOT 以外的任何内置门电路。在作业中,我们有一些标注了 Don't Touch 的电路,这部分是固定位置的输入输出,用于进行作业的结果检测。

异或 XOR; 同或 XNOR; 与非 NAND; 或非 NOR; 传输门 TG.

使用LaTeX能够轻松打出异或符号和同或符号:在线 LaTeX 公式编辑器
\oplus \odot
组合逻辑数字电路是电子工程中的基本概念之一,它在数字系统设计中扮演着极其重要的角色。本部分将从基础知识讲解到具体实施步骤,一步一步带你学习如何基于真值表绘制组合逻辑数字电路。
真值表是组合逻辑电路设计的起点,它罗列了所有可能的输入组合及其对应的输出结果。

以一个三输入的全加器为例,全加器的作用是将两个 1 位(1-Bit)的二进制数相加,并考虑到可能的进位。
关于 Full Adder 更详细的讲解,你可以在 Homework 1 的题目中看到!
真值表列出所有输入变量的可能组合。
对于

SOP形式是用“与”(Product,或者称 And)项(称为 Product Terms)的“相加”(Add,或者称 Or)来表达逻辑函数,这些 Product Term 中的每个都能导致逻辑函数输出为 1 。
标准SOP形式中的每个product term都应该包含逻辑函数中的所有变量,无论是原始变量还是其反转形式。
例如,对于一个三输入函数

仍以全加器为例,观察真值表中 Sum(
布尔代数提供了一系列规则,用于逻辑函数的化简,使之可以用更少的逻辑门电路实现相同的功能。

虽然布尔代数可以用于化简逻辑函数,但是这种方法的局限性在于,可能无法找到逻辑函数的最简形式。尤其是对于包含多个变量的函数,手动化简可能既复杂又容易出错。
卡诺图是真值表的图形化表示。一个逻辑函数的卡诺图就是将此函数的最小项表达式中的各项最小项相应地填入一个特定的方格图内,此方格图为卡诺图。

左图为最小项的序号排列,右图为表达式对应的最小项
为什么两侧的数值不采用二进制数从小到大进行排列(事实上,这种排列形式叫“格雷码”)?
局限性:只能化简小于等于四个变量,(五个变量也可以,但一般不用)


这是一些不同大小的卡诺图。

基于化简后的逻辑表达式,可以选择合适的逻辑门来实现相应的逻辑功能。
例如,对于前述全加器中S的逻辑表达式
根据上面所学到的步骤,尝试搭建一个红绿灯故障检测的电路:
使用逻辑门电路设计一个监视交通信号灯工作状态的逻辑电路。每一组信号灯均由红、黄、绿三盏灯组成,如下图所示。正常工作情况下,任何时刻必有一盏灯点亮,而且只允许有一盏灯点亮。而当出现其他五种点亮状态时,电路发生故障,这时要求发出故障信号,以提醒维护人员前去修理。

取红、黄、绿三盏灯的状态为输入变量,分别用 R、A、G 表示,并规定灯亮时为 1,不亮时为 0。
取故障信号为输出变量,以 Z 表示之,并规定正常工作状态下 Z 为 0,发生故障时 Z 为 1。
| R | A | G | Z |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 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 |
找 Z=1 时对应的 R、A、G 的值

化简后的逻辑表达式为:
