分线器可以把一个多位的输入拆分为若干位,也可反过来把若干个若干位的输入合并为一个输出,可设置具体拆分方式。
其参数包括:
正如 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公式编辑器
对于一个 1 Bit 的二进制( 0 or 1 )来说,它的加法被定义为:
其中,在 1+1 中出现的 (1) 被称之为“进位”标志。因此,在硬件上,我们定义半加器有两个输入 a 和 b 和两个输出 sum(表示 1 Bit 加法的结果) 和 cout(表示进位),其公式为:
半加器只能执行 1 Bit 的加法运算,这显然不够“给力”。我们需要进一步分析加法的逻辑,来构建更加有用的加法单元:全加器。
全加器的核心是考虑了进位(被记为 cin)。对于某一位来说,我们除了考虑两个加数的对应位数 a 和 b,还要考虑是否有前一位传来的进位信息。因此,我们的输入就有三个数:a,b,cin。我们需要构建这三个数到输出 sum 和 cout 的逻辑运算。
运行逻辑
cout: a、b、cin之中至少两个为高电平时,输出高电平。此时我们对输入两两取逻辑与,如果a、b、cin之中至少有两个高电平,那么三个逻辑与的输出也至少有一个为高电平,对逻辑与的三个输出取逻辑或即可。
sum: a、b、cin之中仅有一个或全部为高电平时,输出高电平。将a、b、cin输入一个三输入异或门即可。
七段 LED 数码管是一种常用的显示元件,常应用于手表、计算器等仪器中,用于显示数值。下图是数码管的原理图,数码管分为共阴极和共阳极两种类型,共阴极就是将七个 LED 的阴极连在一起,让其接低电平。这样给任何一个 LED 的另一端高电平,它便能点亮。而共阳极就是将七个 LED 的阳极连在一起,让其接高电平。这样,给任何一个 LED 的另一端低电平,它就能点亮。这里的 LED 是共阴极 LED。
我们将以1号管为例讲解
观察.circ文件:
Input_Number: 是一个四位二进制输入
Disp: 是一个七位二进制输出
既然只研究1号管,我们只需要关心: 四位输入是如何决定Disp1的高低电平的?

在4-1选择器中我们已经熟悉了两位二进制输入表示一位四进制的想法,这里我们用分线器将输入拆分为独立的四个二进制输入A、B、C、D。

你的工作流程:
sop:sum of product
卡诺图:用于化简SOP逻辑表达式
AOI:and or inverter(not) 电路,只有and or not门的电路




我们只需将逻辑表达用电路实现即可


y = B'C + CD' + AB' + AD + A'BC'

