为什么在建OR
门时需要使用晶体管?仅通过连接两个输入并读取输出,我们就完全不需要晶体管就不能达到相同的结果吗?
为什么在建OR
门时需要使用晶体管?仅通过连接两个输入并读取输出,我们就完全不需要晶体管就不能达到相同的结果吗?
Answers:
您所描述的称为有线或连接。在某些逻辑系列中,尤其是在ECL(发射极耦合逻辑)中,这是可能的,但在最常见的逻辑系列(TTL和CMOS)中,这是不可能的。
在CMOS中这是不可能的,因为当CMOS输出为低电平时,它会导致从输出引脚到芯片到地的短路。当它为高电平时,它会导致从VDD到芯片到输出引脚之间的短路。
因此,如果将两个CMOS输出连接在一起,一个输出为高电平,而另一个输出为低电平,则VDD与地之间的短路会非常短,这会吸收大电流,并且可能会使涉及的两个芯片中的一个或另一个过热。
对于TTL,存在类似的问题,但是输出引脚到VDD或接地的“短路”并不像CMOS短路那么近。
有一种变化的输出样式,称为CMOS的漏极开路或TTL的集电极开路,它允许有线与连接而不是有线或。这些输出被设计为仅能够将电流吸收到地,而当它们名义上处于高状态时不能够产生任何输出电流。这些通常与外部上拉电阻一起使用,以便在需要时输出电压实际上将达到“高”电压电平。
注:如果使用低电平有效逻辑(低电压表示逻辑1,高电压表示逻辑0),则集电极开路或漏极开路可用于线或。
这使您可以“加入输出”
模拟该电路 –使用CircuitLab创建的原理图
this lets you "join the outputs" schematic
链接到
如果仅连接电线,则(很有可能)将0和1组合在一起。由于0是gnd,而1是5V(取决于芯片,但这是一个标准),因此您需要通过电线将5V和gnd连接在一起。术语是短路!
您可以将二极管用于简单的“或”门。甚至电阻器。当您将此门连接到其他门和其他电路时,就会出现问题。您可以反过来由2个二极管构建一个AND门。但是,如果您尝试将它们中的许多连接在一起,则最终会得到一个巨大的电路,该电路不能用作单独的小零件,而可以用作一个大零件。不在您的简单门计划中的连接可能在现实生活中突然出现,弄乱了您想要发生的事情。
晶体管可让您将输入与输出分开。晶体管的输出不能反馈并影响其输入。中继将是另一种选择,尽管速度较慢。由于开关不会影响电磁体。
早期的逻辑是RTL或DTL,电阻晶体管逻辑或二极管晶体管逻辑。首先使用电阻器,然后使用后来的二极管来形成门,然后使用晶体管来缓冲结果,因此您使用的下一个门不会通过该门反馈到其输入。
现在,由于芯片上的晶体管实际上是免费的,因此从财务上来说,我们拥有适当缓冲和分离的所有物品。通常这就是我们想要的。TTL逻辑!
有一种模拟方法:将
任意数量的输入(假定为0或5伏)与电阻组合。
如果结果电压为0,则全部关闭。
如果结果电压为5,则所有电压都接通。
中间电压指示一些接通,一些断开。
示例:如果有4个输入,则2.5伏表示2个打开,2个关闭。
结果== 0:也门
结果== 5:和门
结果!= 0:或门
结果!= 5:和门
输入不需要晶体管,仅需要输出即可检查电压并恢复0或5伏逻辑结果。
这可以用于具有非线性输出功能的模拟神经网络节点,该输出结果的“软”结果可能并非完全正确或错误。
经过深思熟虑:
以这种方式使用的电阻器可能会降低逻辑速度,因为当输入改变时,电阻器后面的电容必须充电或放电。另外,使用晶体管可以大大降低功耗。以这种方式使用的电阻器始终会在混合输入状态的情况下消耗功率。对于晶体管,功耗可以大致除以晶体管的增益。