《戴森球计划》可扩展时序逻辑门电路分享
2022-05-25 05:26:55《戴森球计划》中时序逻辑是指整个程序是一个序列,按时间顺序输入处理单元。如果要可扩展时序逻辑门电路其实非常简单,只要做替换,使得蓝->黄,红->蓝,黄->红,就可以实现红蓝块对换,也就是非门了。
《戴森球计划》可扩展时序逻辑门电路分享:
首先要搞定的是IO的结构,IO由红、蓝、白块组成。其中白块标志程序/输入的开始和终止,红块代表1,蓝块代表0
左侧那些就是输入,基本的输入结构是9白块+蓝红序列+4白块。白块的作用是标志程序起止,方便精确提取结果
非门的实现很简单,我们可以做替换:
蓝->黄,红->蓝,黄->红,就可以实现红蓝块对换,也就是非门了。
对换的方法是,先将蓝色块全部取出,这样蓝块会变成空位,而后在空位插入黄快即可。
与或门更简单,先将蓝色全部取出,而后两个输入进入四向分流器,优先输出端输出的就是或门结果(两路中有一个红块就输出红块),非优先输出端就是与门的结果(两路都是红块才输出红块)。而后再在空位上填上蓝块即可。
时序逻辑电路除了输入的值(块的颜色),同等重要的是输入时间,因为一旦输入的时间错位了,输出的自然就不是正确结果了。这就是为什么我们需要一个同步模块。
同步模块的原理很简单,(大家看上图中的AND/OR模块中间的紫色块序列)我们先用紫块堵住路,然后通过设置出口优先级和过滤,并调节传送带速度,就可以实现两侧被紫块堵上的路同时疏通的效果,或者说输入会同时进入我们的门电路中。
还有一个是结果提取模块,我们只希望提取程序运行时的输出,而不希望看到程序开始前和结束后无意义的块。
这就稍微复杂一些(见图右上的模块),首先最左侧的四向分流器的作用是当程序未开始时不让任何块进入结果区,当程序没开始时,所有块,无论红蓝都将进入下方区域,然后被取走。不会向右走。而程序开始的9个白块的作用就是堵住下方路径,强制所有块进入右方区域。然后块会直接经过第二个分流器和第三个分流器。而当程序结束时,由于我们设置了最右侧的四向分流器优先将白块往下输送,所以标志程序结束的四个白块进入时,会直接向下走,而多出的白块会进一步堵住最右侧四向分流器的入口。此时就不会再有块进入右侧了。同时,第二个分流器会将后续的块导走,不堵塞路径。
除此之外还需要有一个分线模块。也就是我们希望一个输入能变成两个输入。这是比较复杂的。
我采用的基本原理就是一个铜块可以造出两个电路板,所以可以用它实现一条线边两条线。
基本的方法是先将红块替换为铜板,输入制造机器制造成电路板后分两路输出。而后再将输出的电路板替换为红块。同理处理白块即可。
一分二的基础结构,最左侧的是输入序列,是蓝红蓝蓝红蓝白白。
这是输出结果(刚刚是向右输入,这里向左输出),可以看到输入结果被拷贝成了两条。
至此,所有搭建一个可扩展时序逻辑门电路的结构都有了,理论上我们可以用它搭建一台任意的图灵机了~
试验出了同步结构!之后制造大型电路的时候,可能出现的时序同步问题就业解决了!
基本的原理是通过三个四向分流器造倍增器,将第一个白块倍增成白块-磁线圈-马达的组合。由于制造一个涡轮需要两个马达,所以必须两侧的马达都到达了,才会同时吸取新的磁线圈,否则磁线圈会堵塞线路,防止先到的一方走。这样就可以实现无损的同步。