リバーシブルゲートが使用されないのはなぜですか?


25

私はKurzweilによって書かれた「The singularity is near」という本を読んでいて、彼は例えばFredkin gateのようなリバーシブルのゲートについて言及していました。このようなゲートを使用する利点は、ビットが熱に消える計算に関連する熱の無駄をなくすことができ、計算にエネルギー入力が必要ないことです。これらの仮定により、これらのゲートは奇跡の解決策のように聞こえます。したがって、問題は、どのような技術的ハードルが大規模な使用を依然として妨げているかです。

また、電気工学の学士号とドイツのトップ大学での修士課程のそれらのゲートについて聞いたことがないのは残念だと思います...


5
量子計算は可逆ゲートについて非常に重要であることに注意してください(これは「ユニタリ」の意味の一部です)。
デビッドリチャービー

1
@DavidRicherbyすべての量子計算が可逆的というわけではありません。最終的にデコヒーレンスが発生します。
アリス

リバーシブルゲートを使用する実際のコンピューターは、コンピューターを正常な状態に保つためにエラー修正を実行する必要があるため、依然として熱を発生することに注意してください。エラー訂正には、不可逆的な操作(またはゼロ化されたビットの連続的な供給、同じ差)が本質的に必要です。
クレイグギドニー

回答:


18

私は決してこのトピックの専門家ではありませんが、ウィキペディアを何気なく読んでいるだけです。

ボールが完全に跳ね返る緩衝材で作られた摩擦のない環境での球形ビリヤードボールの動きに依存しています

...これは非常に現実的に聞こえます。

実際にそのようなゲートを実際に作成する方法を考え出した人はまだいません。それらは単に理論的に興味深いだけです。エンジニアリングは通常練習を扱っているので、それはあなたがそれらを聞いたことがない理由を説明するかもしれません。

リバーシブルコンピューティングの前提は、ビットが消えると、ある程度の熱が発生することです。リバーシブルゲートを使用することで、ビットが表示されたり消えたりすることはないため、リバーシブルゲートを使用すると計算がはるかに効率的になります。

リバーシブルコンピューティングが回避すると主張する理論上の限界は、1ビットの情報を消去すると、熱で少なくともエネルギーが生成されるということです。トーストで実行されているコンピューターで、それぞれトランジスターがビットを割合で消滅させます。これは対応します発熱の。これは、コンピューターのエネルギー使用量のごく一部()を占めるだけです。60kTln210 9 560C109 165GHz 1 / 1000016mW1/10000

現在のコンピューターは、ビットの消失に伴う発熱に制限されません。それらは、小さな銅トレース上で電子を移動させる際の固有の非効率性によって制限されます。


5
-1。一部の人々は、リバーシブルゲートを作成し、それらからCPU全体を構築しました。そのリバーシブルロジックCPUの写真はcise.ufl.edu/research/revcompにあります。
デビッドケアリー

2
@DavidCaryしかし、それらは非可逆ゲートで作られたコンピューターよりも(または無視できるほど)効率的ではありません。
user253751

3
@immibis著しく真実ではない。それらは、非可逆ゲートで作られたコンピューターと同じ法律の対象ではないため、劇的に効率的です。
アリス

3
@DavidCaryリンクしたCPUの効率に関するデータをいくつか教えてください。私が見ているのは「断熱」という言葉が付いたCPUのイメージだけですが、従来のコンピューターよりもはるかに効率的な情報はありません。
トムファンデルザンデン

1
@TomvanderZandenどのような効率を指定しないと、効率の測定は少し役に立ちません。RISCチップは、チップサイズの点ではCISCチップよりも効率的ですが、特定のアルゴリズムを指定するのに必要な命令数の点では効率的ではありません。可逆回路は、Landauerの原理に従わないため、従来の回路よりもすぐに効率です。それはすでに大きな勝利です。
アリス

15

実用的なリバーシブルゲート(シリコンで製造できる(および製造された)ゲート)の問題は、実際のエネルギー節約が、それらの実行速度に比例することです。

MITのTom Knightの研究グループが1990年代後半に小さな断熱プロセッサを製造したことは知っています。彼らが開発した実用的なロジックファミリは、スプリットレベル電荷回復ロジックと呼ばれ、標準(CMOS)製造技術を使用して実装できます。フロリダ州立大学のマイケル・P・フランクが仕事を続けていると思います。:トム・ナイトのグループでの作業の例としては、(。1990年代初頭を通じて、関連する作業にかなりまともなセクションがあります)、次の修士論文ビエリ、CJある振り子:Aリバーシブルコンピュータアーキテクチャ、修士論文、MIT EECS DEPT、1995。

リバーシブル回路は断熱的である必要があります(回路とその環境の間で熱交換はできません)。つまり、常に平衡状態でなければなりません。何かを変更する必要があるプロセスについては、できるだけゆっくりと変更を行うことで平衡状態に近づけることができます。

熱力学を正しく覚えていれば、可逆計算のエネルギーを任意に小さくすることができますが、最小アクション(エネルギーと時間)は小さな定数でなければなりません。


2
熱力学を正しく覚えていません。Landauerの原理は可逆ビットでサポートされる必要はなく(ビットを消去しないため)、必要なエネルギーは理論的にはゼロになります(そして熱は放出されません)。可逆回路も断熱である必要はありません。非可逆チップよりも遅くない実用的な可逆ゲートが作成されました(可逆チップは通常より大きく、したがって光遅延速度が増加することを考慮してください)。
アリス

「光遅延の速度の増加」:リバーシブルの光学チップについて言及していますか?ほとんどのチップは電子機器です。
-zylstra

6

それらの大規模な使用を妨げる最大の障害は、非同期回路の場合とほぼ同じであり、その他の非標準回路設計のほとんどはムーアの法則です。

ムーアの法則は、自己充足的な予言のようなものになっています。Tick Tockリリーススケジュールに見られるように、チップメーカーはムーアの法則を実現することを課題と考えています。ムーアの法則を満たす必要があるため、リソグラフィを進めることで(そして多くの場合、マルチパターニングのようなチートを使用することで)チップのサイズを小さくすることに熟練しています。

これはすべて、リバーシブルゲートと何の関係がありますか?ファウンドリがより小さくより小さなトランジスタサイズをリリースしようと競争しているため、新しいチップを印刷したい企業は、単にキャッシュを追加し、従来の設計を見直してそのキャッシュをより有効に活用することで、速度を向上させる簡単な方法を見ています。

より良い殺人者は、技術的なハードルではありません。それは十分な成功です。


1
うまくいけば、いつかはそれで十分ではなくなるでしょう。
メフディ

@Mehdi私たち全員が望んではいけません。しかし、私はそうは思いません。エネルギーは現在安価であり、少なくとも5年間は現在のサイクルを継続するパスがあります(特定のテクノロジーを機能させる方法を見つけた場合は、おそらく10 です。その後、リソグラフィーの代わりに新しいテクノロジーが必要になりますが、 3Dリソグラフィーは、同じピッチで異なる方向に構築することで、より高密度のチップを提供でき、2050
アリス

3

有用なコンピューティングデバイスにはフィードバックが必要です。これにより、1つの回路要素で本質的に無制限の数の逐次計算を実行できるようになります。使用可能なフィードバック回路には、入力の合計数(出力からフィードバックされたものとそうでないものの両方をカウントする)が、入力にフィードバックされる出力の数(入力の数が回路が外部刺激にまったく応答しなかった場合、tはフィードバック出力の数を超えます)。完全に可逆な論理関数は、出力よりも多くの入力を持つことができないため、非自明な計算タスクを繰り返し実行するために必要なフィードバック構造をそれらから構築することはできません。現在のコンピューターで使用されているCMOS技術では、信号が到着する相対的なタイミングではない場合、回路のさまざまな部分での計算によって報告された結果を他の部分で同時に利用できるようにするためのフィードバックが必要であることに注意してください完全に下流に渡すことができなかった「情報」を構成します。他の技術では、可逆性を維持しながら、多くのゲートで正確に同じ速度で信号を伝搬させることができますが、実用的な技術はありません。

CSの観点からは、ステップ数に各ステップで変化する可能性のある状態の量を掛けたサイズに本質的に比例する初期の空の記憶媒体がある場合、コンピューティングプロセスを可逆的にするのは簡単です。この主張は、前の段落の主張と矛盾しません。なぜなら、ステップ数に比例するストレージにはステップ数に比例する回路が必要であり、これはすべてのフィードバックが除去された場合に必要な量に比例する回路を意味するからです。

適切な入力条件が与えられても、それらが決して高くならない場合に無視される出力を持つことが許可されている場合、理論的には可逆ロジックの恩恵を受けるシステムを設計することが可能かもしれません。たとえば、256ワードのRAMチャンクで動作するアルゴリズムがあり、1秒間に1,000,000の操作を実行し、各操作でレジスタ、プログラムカウンター、または1つを更新する「リバーシブルロジックCPU」を使用したい場合RAMのワードでは、次のような「リバーシブルCPU」を使用できます。

  • 大量の命令を実行し、それぞれで、LIFOバッファーに上書きされたものを送信します
  • 大量の命令が実行された後、RAMを最初の空白の「転送」バッファにコピーします
  • LIFOの値を使用して、すべての計算を逆に実行します
  • メインRAMの内容を転送バッファーで上書きします。これはプロセスで消去されます。

上記のレシピを何度でも繰り返して、任意の数のステップでアルゴリズムを実行できます。レシピの最後のステップだけは元に戻せません。非可逆操作でアルゴリズムのステップごとに消費されるエネルギー量は、LIFOのサイズに反比例するため、十分に大きいLIFOを構築するために構築する場合は、任意に小さくすることができます。

しかし、その能力をあらゆる種類のエネルギー節約に変換するには、情報が入力されたときにエネルギーを保存し、読み取られたときにそのエネルギーを有効に戻すLIFOが必要です。さらに、LIFOは、それを使用するエネルギーコストが有効に節約されたエネルギー量よりも少なくなるのに十分なステップの状態データを保持するのに十分な大きさでなければなりません。実際のFIFOからNバイトを保存および取得する際に失われるエネルギー量がO(1)になる可能性は低いことを考えると、Nの増加がエネルギー消費を有意に削減するかどうかは不明です。


1
@LoganMayfield:必要なテープの長さが可逆的に実行されるステップの数に比例するという要件を無視すると思います。カートリッジをAtari 2600に入れてしばらく電源を入れると、1日に約1,000億サイクル実行されます。システム(最大のカートリッジ以外のすべてを含む)のトランジスタは100,000未満であるため、1トランジスタにつき1日あたり100万サイクルを超えます。ビットごとに1つのトランジスタでリバーシブルLIFOを作成する能力があっても、完全に可逆的に1日実行できる同等のマシンを設計したい場合
15

1
...トランジスタの数を100万倍以上増やす必要があります。一度に数千サイクルだけ可逆的に実行する必要がある場合、結果をキャプチャし、サイクルを巻き戻してから、以前の初期状態をキャプチャした結果で置き換えます。これはほとんど実行可能ですが、途方もなく複雑です。今日の技術に似たものであれば、可逆コンピューティングを使用することで得られる「理論的に避けられない」損失の減少は、理論上のみ回避可能な原因への電力損失の増加に圧倒されます。
supercat

1
「可逆技術は不可逆技術と同じことを計算できない」と言った、あなたの元の答えが出た声明だけに関心がありました。私はそれが実際的であることを意味するつもりはありませんでした。
ローガンメイフィールド

1
@LoganMayfield:最初の質問は「なぜこれらのものは使われないのか」でした。ほぼすべての実用的なコンピューティングデバイスは、制限された時間を与えられた場合、一定量のハードウェアが制限されない数の計算を実行できるようにフィードバックを使用することをお勧めします。それはリバーシブルロジックではできないことです。これは、リバーシブルコンピューティングとリバーシブルコンピューティングの大きな質的な違いです。「巻き戻し」の前に限られた数の操作しか実行できないコンピューターでさえも有用である可能性があるため、
...-supercat

1
...投稿を編集して、そのようなものを使用して意味のある作業を行うために必要なものを述べました。しかし、根本的な実際的な問題は、私が最初に言ったことに起因するものだと思います。それを処理するためのリバーシブルロジックは、すぐに重大な不利益をもたらします。
スーパーキャット

2

実用的なリバーシブルコンピューティングは、研究の活発な分野であり、今後さらに顕著になる可能性があります。量子コンピューティングのほとんどは可逆キュービットゲートを作成しようとしているように見え、QM形式の理論的特性に一致させることは実験的に非常に困難ですが、着実に進歩しています。

もう1つの基本的なポイントは、チップでのエネルギー消費が減少するときはいつでも、本質的にゲートシステムを「より可逆的」に動かし、モバイルコンピューティングでは低エネルギーのチップ消費が長い間優先度が高いことです(一種の業界全体のパラダイムシフト)。(ムーアの法則と同様に)数十年にわたり、チップの性能向上は、エネルギーの散逸により多少「緩和」または「粗雑」になったものでしたが、数年前に利益が減少するポイントに達しました。世界の大手チップメーカーであるインテルは、低電力チップへの移行を試みて、Armとの競争を試みています。

超電導技術を使用した最近の研究は、おそらく飛躍的な進歩があります(2014年6月)。

例えば、断熱超伝導デバイスを使用した可逆論理ゲート /竹内、山梨、吉川、自然を参照してください。

Rolf LandauerがLandauerの原理として知られるようになった議論を進めて以来、リバーシブルコンピューティングが研究されてきました。この原則は、情報エントロピーの減少を伴わないため、可逆コンピューティングの論理演算に最小エネルギー散逸がないことを示しています。ただし、これまでのところ、実用的な可逆論理ゲートは実証されていません。問題の1つは、非常にエネルギー効率の高いロジックデバイスを使用して、可逆ロジックゲートを構築する必要があることです。別の難点は、可逆論理ゲートが論理的および物理的に可逆でなければならないことです。ここでは、断熱超伝導デバイスを使用した最初の実用的な可逆論理ゲートを提案し、ゲートの論理的および物理的可逆性を実験的に実証します。さらに、ゲートのエネルギー散逸を推定し、また、可逆論理演算に必要な最小のエネルギー消費について説明します。この研究の結果により、リバーシブルコンピューティングが理論段階から実用化に移行できることが期待されます。


1

Fredkinゲートは現実的で、多くが実装されています。FPGAボード全体で、LUとしてFredkinゲートとToffoliゲートを使用して実装された可逆ロジックゲートを厳密に使用しています。

コンピュータアーキテクチャでの広範な使用に影響する問題がいくつかあります。実際の回路で期待どおりに動作するとは限らないフレドキンゲートには、「広告された」利点がいくつかあります。リバーシブルロジックゲートのエネルギー節約は、主に操作の実行時にエントロピーを作成する必要がないという事実によるものです。Tom van der Zandenが述べたように、これが、可逆ロジックがはるかに効率的になる主な理由です。なぜ実際の回路ではそうではないのか:

  1. 現在、トランジスタ技術はコンピュータの速度と消費電力を制限するものであり、残念ながら、従来のナンドゲートやノルゲートとは対照的に、フレドキンゲートを作成するにはより多くのトランジスタが必要です。これは、フレドキンゲートがトランジスタのリークにより多くのエネルギーを浪費し、シリコン上により多くのスペースを必要とすることを意味します(より高価なことを意味します)。これだけで、フレドキンゲート上のnand / norの使用を正当化するのに十分です。
  2. 電力損失の主な形態は、実際の計算によるエントロピーの作成ではなくトランジスタによるものであるため、この電力損失を補うために、電力線と接地線をフレドキンゲートに接続する必要があります。これらの大きなバスはファンインバスであり、シリコン上の多くのスペースも占有します。フレッドキンゲートにはより多くのトランジスタがあるため、これによりファンインが増え、シリコン上の無駄なスペースが増えます。
  3. リバーシブルフレドキンゲートはありますが、これらは非リバーシブルデバイス(トランジスタ)で構成されています。これは、エネルギーゲインの一部が現在のゲートテクノロジーでは実現されないことを意味します(量子回路以外)。
  4. サイズと速度はシリコン上で関係があり、物事がより密接であればあるほど、一般的にそれらをより速くすることができます。フレドキンゲートはより多くのトランジスタを使用し、電力などの接続が多いため、かなり遅くなる傾向があります。
  5. 電力消費の利点と速度の利点は、ビットの再利用が成功した場合にのみ実現されます。私たちが持っているアルゴリズムのほとんどは恐ろしく非保守的です。これは、fredkinゲートを使用した全加算器またはシフトレジスタの実装を調査することで確認できます。リバーシブルロジックでは論理的なファンインとファンアウトが許可されないため、多くのビット計算が行われ、最終的には有用な操作を実現するために使用されることはありません。2つの8ビット数を追加するようなものは9ビットまたは有用な情報(8ビット結果、1キャリービット)を生成しますが、多くの1および0定数の入力バスを必要とし、多くのジャンクデータ出力ビットを生成します。バスの幅が広いため、シリコン上の回路がさらに広がります。
  6. さらに、ジャンクビットはプロセッサによってダンプされる必要があるため、使用されないため、とにかくエネルギーの損失につながります。

要約:Fredkinゲートは、実際のアルゴリズムを実装するときに多くの無駄な計算を生成します。無駄な計算=無駄なエネルギー。このため、バスのサイズが大きくなり、物事が広がり、物事が遅くなります。さらに、フレドキンゲートの物理的な実装は、現在の技術にとって大きな懸念事項です。現在の実装では、回路内の損失を補償するためにより多くの電力線とグランド線を必要とすることで状況が広がり(これはエネルギー損失のはるかに大きな懸念です)、シリコン上のはるかに多くの不動産を使用します(速度のはるかに大きな関心事です) )

私はこれが古いスレッドであることを認識していますが、多くの答えはトランジスタが非効率であるという事実に焦点を当てています。私の目標は、アルゴリズムが非効率的であり、可逆計算をうまく処理できないことを示すことです。私はリバーシブルおよび量子コンピューティングの研究を楽しんでいるコンピューターエンジニアです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.