加位器

现在来看加位器的设计. 其真值表如下:

A B S
0 0 0
0 1 1
1 0 1
1 1 0

它的结果很类似于 并联(Parallel) 的结果:

A B P
0 0 0
0 1 1
1 0 1
1 1 1

除了在最后一项上有所不同:

加位器逻辑与并联电路的对比

https://cc.xiaogd.net/?startCircuitLink=https://spcp.xiaogd.net/assets/circuit/simple-adder/sum-circuit-compare-to-serial-circuit.txt

两个输入为 1 时, 因为进位导致归零的缘故, 输出反而为 0. 很显然, 肯定得有某种形式的反向控制的存在.

如果都是正向控制, 则对于两个输入为 1 的情况, 无论怎么串并联, 结果都只能为 1 而不可能是 0.

要怎么去设计这个电路才能有上述的结果呢? 你不妨先自己想想并尝试一下.

通过更仔细的分析输入与输出的关系, 可以概括为以下两点:

  1. 输入相同时(同为 0, 或同为 1), 输出为 0;
  2. 输入不同时(0 和 1 或是 1 和 0), 输出为 1.

显然, 这样的电路是可以区分两个输入是不是相同的, 而所谓相同的, 有时也可以认为是 "平衡的".

比如同为 0 或同为 1 就是平衡的;

一个 0, 一个 1; 或者一个 1, 一个 0 输入就是不同的, 也就是"不平衡的".

那么说到平衡你能想到什么呢? 我首先想到了天平. 一架天平, 当它两端都不放东西时, 类似于两端输入都是 0 的情况, 则它是平衡的;

而当它两端都放上同样的东西时, 比如都放一个 1kg 的砝码, 类似于两端输入都是 1 的情况, 它依然是平衡的.

可以说两个输入互相抵消了, 或者说互相拆台了.

用投资的话来说, 应该叫对冲?

与此相反, 只在一端放砝码, 而另一端不放, 类似于输入为 0 和 1 或是 1 和 0 的情况, 那么天平就是不平衡的, 必然要偏向其中一边.

所以, 假如放一架天平在电路中, 连接成下述的样子, 并假设它的横杆是可以导电的:

一个天平电路原型

而它不同的放置砝码的方式所形成的四种通断状态, 跟我们电路想要达成的状态可以说是几乎是一模一样的:

天平电路的四种通断情况

唯一的问题, 是你绝不会想把一架天平放到你的电路设计中! 这也太怪异了. 我们要的是类似于天平效果的电路, 怎么去做呢? 你不妨自己再思考一下.

前面说到, 把砝码等价于输入, 那么砝码的本质是什么? 或者说它起的作用是什么? 显然它就是提供一个力, 电路中什么可以提供一个力呢? 电磁铁对吧.

所以假如在天平的两个托盘下放两个电磁铁(假设托盘是铁质的, 可以被磁铁吸引), 然后用输入去控制这两个电磁铁, 那不就可以用输入取代砝码了?

天平电路使用电磁铁代替砝码

比如 1 + 1 情况, 也即两端都有输入, 那就属于同时试图往下拉这个天平, 结果就还是平衡的, 于是输出还是为 0.

那么到这一步, 你能否想出怎么去设计这个电路吗? 我们的模拟器中有一种器件, 前面一直也在用的, 就是继电器, 它里面就是一个电磁铁对吧, 它就能产生力, 并把弹性开关往下吸引.

而天平的托盘不就相当于是那个弹性铁片开关吗?

最后, 如果你还想不到, 这里也不再卖关子了, 结果就是这样:

使用继电器交叉连接形成的天平电路

具体使用了两个继电器, 并让它们的两个触点朝向彼此, 然后使用导线交叉连接起来(注: 交叉导线交点处是不连通的).

注: 右边那个继电器添加时, 可以从右往左拖动, 即可让两个触点朝向左边.

另: 也可以正常从左往右拖动, 生成后再通过 Ctrl + 鼠标拖动 旋转其朝向.

另: 十指交叉中连接的两个为下拉电阻, 为解决电压悬空问题而引入, 有关介绍请参考: 利用继电器实现 0 的显示

简单讲, 前面说到要让它们两个输入互相拆台, 要对消或者说对冲, 那么一交叉就对冲了, 因为一个正向控制连到了另一个反向控制, 最终效果就互相抵消了. 这样的电路也可以称为跷跷板电路.

嗯, 跷跷板本质就是天平

其对应不同输入组合时的状态如下:

加位器电路的四种情况

至此, 整个半加器的核心设计就完成了.

results matching ""

    No results matching ""