图灵完备之路(数电学习三分钟)----数据选择器与总线

1.数据选择器

之前我们学习了逻辑与算数的计算,得知两个数字之间的加减和与或的结果是不同的,而一个通用的数字电路不可能只有一个功能,所以我们将在本节引入电路选择器这一"器件",来实现对两个输入的运算方式的选择,甚至是学习手机电脑中不同APP的切换的思想。

首先,我们假设数据已经经过了所有的运算,根据运算方式的不同得到了一堆不同的结果,那么我们的任务便是从不同的结果中选出自己想要的,比如此时有两个结果,一个加,一个减,输入为16与9,结果便有25与7,假设用1代表加,0代表减,那么设计电路如下:

当1时,选择16输出;当0时,选择9输出,一方输出,另一方就关闭,所以需要两个逻辑相反的开关,同时需要让开关同时受一个输入的控制,那么电路设计如下:

2.总线

既然我们将不同的结果发送到了同一个输出端,那么接下来就自然而然的要将多个结果发送到多个输出,实现从线到面的转变,这便是总线。

以两个输入(AB)对两个输出(12)为例,可能出现的情况有1A,2A,1B,2B,既然所有输入都能接到所有输出,那么他们必然是相连的情况:

由于输入不能接到输入(会短路),所以需要开关将输入分开,开关选几个呢?假设选1个,那么会出现A输出时,B不受控制的情况,所以至少得2个:

2个自然可以达成上述目的,但开关还应该控制当A输出到1时,不输出到2的情况,所以还需要2个控制输出:

四个开关需要几个信号控制呢?4个当然可以,当实际输入无非AB,输出无非12,所以2个就可以完成数据的输入输出选择,布线可以按照上一节的来:

这便是2对2的总线,而计算机中的通信总线,无非就是对上述情况的堆量而已。

相关推荐
无名3871 天前
RTPEngine 官方自带的 perl 测试程序
开发语言·perl·通信
偶像你挑的噻1 天前
16-Linux驱动开发-多核通信中的并发控制
linux·驱动开发·stm32·嵌入式硬件
编码追梦人1 天前
基于 ESP32 的多人无线答题竞赛系统设计与实现
单片机·嵌入式硬件
yyycqupt1 天前
蓝牙协议栈的学习(二)
stm32·单片机·嵌入式硬件·mcu·物联网·51单片机·iot
ACP广源盛139246256731 天前
GSV2125D@ACP#GSV6125#HDMI 2.0 转 DisplayPort 1.4 转换器(带嵌入式 MCU)
嵌入式硬件·计算机外设·音视频
ℳ๓. Sweet2 天前
【从零开发STM32(HAL版)】一、开发硬件环境准备
stm32·单片机·嵌入式硬件
ACP广源盛139246256732 天前
GSV2202D@ACP#DisplayPort 1.4 到 HDMI 2.0 转换器(带嵌入式 MCU)
单片机·嵌入式硬件·计算机外设·音视频
梓德原2 天前
【总结】STM32 SPI DMA 的使用
stm32·单片机·嵌入式硬件
三佛科技-134163842122 天前
LP3610S开关电源45V同步整流芯片17W (5V 3400MA) 典型应用电路
嵌入式硬件·物联网·智能家居·pcb工艺
hazy1k2 天前
MSPM0L1306 从零到入门:第六章 UART —— 让单片机与世界“对话”
stm32·单片机·嵌入式硬件·物联网·51单片机·esp32·iot