LASER回路とは
LASER回路とは、その名のとおりLASERを使って作られた回路のことである。
その大きな特徴は、回路が再利用可能である点である。ANT分岐などのように、一度使ってそれっきりになることがない。そのため、理論上は同じ回路を何回もループさせて複雑な処理を行うこともできる(が、それを実現した回路は今のところなさそうだ)。
また、LASERのスピードはMETALの中をTHUNDERが進むスピードよりずっと速いので、処理を早く終えることができる。
基本5装置
具体的には、主に以下の五つの装置を組み合わせて構成される。
OR装置
入力のどちらかにLASERが入力されると、出力からLASERが出力される。
A |
B |
OUT |
OFF |
OFF |
OFF |
OFF |
ON |
ON |
ON |
OFF |
ON |
ON |
ON |
ON |
A ∧ ¬B装置(A AND (NOT B)装置)
AにLASERが入力されていて、BにLASERが入力されていないときにのみ、出力からLASERが出力される。
また、見方によってはA>Bの時に出力からLASERが出力されると解釈できる。
A |
B |
OUT |
OFF |
OFF |
OFF |
OFF |
ON |
OFF |
ON |
OFF |
ON |
ON |
ON |
OFF |
十分に安定したLASERであれば、13dotの部分を9dotまで縮小できる。
LASER CLONE BALLのLASER源
LASER CLONE BALLを用いると、小型でそれなりに安定したLASER源が作れる。
(左がCLONE BALLを置いていない状態、右が完成した状態である)
WHELLのLASER増幅装置
WHELLを用いるとLASERを大量に増幅できる。
ただ、大量のスペースがいるので使うかどうかはよく考えなければならない。
また、BALLは50個までしか使えないのでそれ以上のLASERを使う場合は必須である。
LASER安定機構
LASER CLONE BALLのLASER源で作ったLASERは若干隙間ができることがある。それを少なくするときにこの機構が使える。
このような簡単な仕組みで実現できるので便利である。
実際に隙間が低減されているのが分かる。
また、WHELLのLASER増幅装置で増幅されたLASERはもともと安定しているので不要である。
その他の基本素子
これでなにができるのかと疑問に思うだろうが、これらの装置を組み合わせることによって以下の5つの基本素子が作れる。
AND装置
入力の両方にLASERが入力されると、出力からLASERが出力される。
A |
B |
OUT |
OFF |
OFF |
OFF |
OFF |
ON |
OFF |
ON |
OFF |
OFF |
ON |
ON |
ON |
NOT装置
入力にLASERが入力されているとき、出力からLASERが出力されず、入力にLASERが入力されていないとき、出力からLASERが出力される。
また、この画像では入力を止めているが、止めずに使えば入力と入力の反転が同時に得られる。
NAND装置
入力の両方にLASERが入力されているとき以外、出力からLASERが出力される。
A |
B |
OUT |
OFF |
OFF |
ON |
OFF |
ON |
ON |
ON |
OFF |
ON |
ON |
ON |
OFF |
間違いがあったので修正しました。(2011/06/04)
NOR装置
入力のどちらもLASERが入力されていないとき、出力からLASERが出力される。
A |
B |
OUT |
OFF |
OFF |
ON |
OFF |
ON |
OFF |
ON |
OFF |
OFF |
ON |
ON |
OFF |
XOR装置
入力の片方のみにLASERが入力されると、出力からLASERが出力される。
A |
B |
OUT |
OFF |
OFF |
OFF |
OFF |
ON |
ON |
ON |
OFF |
ON |
ON |
ON |
OFF |
これらの素子を組み合わせることによって、様々な処理が可能である。
二進数加算器
二進数の加算器の作り方を解説する。
構成
上の図のように、この加算器は
- 電源(LASER源)部分
- 入力部分
- 演算部分
- 出力部分
の4つの部分で構成されている。
電源部分
LASER CLONE BALLのLASER源とWHELLのLASER増幅装置を用いてLASER源としている。
入力部分
GLASSを光らせてLASERを遮断することでON/OFFのスイッチにしている。
METALの形状を工夫することで、THUNDERを出し続けなくてもON/OFFが維持されるようになっている。
演算部分
詳しい説明書きたいけどあまりにもめんどいので簡易的なのだけにします。
下のように、演算部分は分けられています。
各ブロックが各桁に対応していて、さらに下のように分割できます。
このそれぞれのブロックでしていることは、
- その桁の足し算(XOR回路を用いている)
- 繰り上がりの計算(AND回路を用いている)
入力がA,B、下の桁からの桁上げがX、足し算の結果がS,繰り上がりがCとすると、最下位桁を除いて、
S = A XOR (B XOR X)
C = (A AND (B XOR X)) OR (B AND X)
となるが、LASER回路ではそのままでは並列回路が作れないため、少し工夫が必要となる。
B AND X
= ¬(¬B OR ¬X) (ド・モルガンの定理)
と変形することで、NOT回路を用いるとBと¬B,Xと¬Xが同時に得られるため、計算が可能になる。
さらに、この計算機では¬(¬B OR ¬X)と同時に(¬B OR ¬X)を得て、次の計算に使いまわすことで回路をコンパクトにしている。
まとめると、このような計算をしていることになる。Tはわかり易くするための仮においた文字である。
T = B XOR X
S = A XOR T
C = ¬(¬A OR ¬T) OR ¬(¬B OR ¬X)
拡大図
緑がXOR,青がAND,白がNOTを取っている部分である。
…非常にわかりづらい説明であるが、理解するにはとりあえず作ってみることが大切である。
最終更新:2011年09月13日 18:31