
メタステーブル性とは、デジタル電子システムが不安定な平衡状態またはメタステーブル状態に無期限に留まる能力のことです。 [ 1 ]デジタル論理回路 では、回路が正しく動作するために、デジタル信号は特定の電圧または電流制限内にあり、「0」または「1」の論理レベルを表す必要があります。信号が禁止されている中間範囲内にある場合、信号が適用される論理ゲートで誤った動作を引き起こす可能性があります。メタステーブル状態では、回路は適切な回路動作に必要な時間内に安定した「0」または「1」の論理レベルに落ち着くことができない場合があります。その結果、回路は予測不可能な動作をし、システム障害(「グリッチ」と呼ばれることもあります)につながる可能性があります。[ 2 ]メタステーブル性は、ブリダンのロバのパラドックスの一例です。
準安定状態は、非同期デジタルシステム、および複数の独立したクロックドメインを持つシステムに固有の特徴です。自己同期非同期システムでは、アービタは準安定状態が解消された後にのみシステムが進行できるように設計されているため、準安定状態はエラー状態ではなく正常な状態です。[ 3 ] 非同期入力を持つ同期システムでは、同期失敗の確率を許容できるほど小さくするように同期器が設計されています。[ 4 ]フリップフロップの入力セットアップ時間とホールド時間の要件が満たされている 場合、完全同期システムでは準安定状態を回避できます。

準安定状態の簡単な例として、SR NORラッチにおいて、 Set入力とReset入力の両方が真(R=1、S=1)で、その後ほぼ同時に両方が偽(R=0、S=0)に遷移する場合が挙げられます。出力QとQは、Set入力とReset入力が同時に入力されるため、最初は両方とも0に保持されます。Set入力とReset入力の両方が偽に変化すると、フリップフロップは(最終的に)QとQが真となる安定状態と偽となる安定状態のいずれかに落ち着きます。最終的な状態は、RとSのどちらが先に0に戻るかによって決まりますが、両方がほぼ同時に遷移する場合、結果として生じる準安定状態は、中間レベルまたは振動的な出力レベルを伴い、安定状態に落ち着くまでに任意の長さを要する可能性があります。
電子工学において、アービタとは、複数の信号のうちどれが先に到着するかを決定するように設計された回路である。アービタは、非同期回路において、共有リソースの計算処理の順序を決定し、同時発生する誤った操作を防止するために使用される。アービタは、完全同期システムの入力、およびクロックドメイン間で、入力信号の同期器として使用される。アービタは、メタステーブル状態の発生確率を非常に低く抑えることができるが、それでもすべてのアービタにはメタステーブル状態が存在し、入力状態空間の領域の境界では、異なる出力をもたらすため、これは避けられない。[ 5 ]

同期回路設計技術は、メタステーブル状態によって引き起こされる可能性のある故障モードに耐性のあるデジタル回路を実現します。クロックドメインは、共通のクロックを持つフリップフロップのグループとして定義されます。このようなアーキテクチャは、低スキューの共通クロックを前提として、メタステーブル状態が発生しないことが保証された回路を構成できます(特定の最大クロック周波数以下ではメタステーブル状態が発生し、それを超えるとまずメタステーブル状態が発生し、その後完全に故障します)。しかし、それでも、システムが連続入力に依存している場合は、これらの入力がメタステーブル状態に脆弱になる可能性があります。[ 6 ]
同期回路は、非同期入力を受け取ったときや、異なるクロックドメイン間で信号を転送するときに、メタステーブル状態になる可能性を低減するために使用されます。同期回路は、Dフリップフロップのカスケード接続の形をとることがあります(図3のシフトレジスタなど)。[ 7 ]各フリップフロップ段は入力データストリームにクロックサイクル分の遅延を追加しますが、各段はメタステーブル状態を解消する機会を提供します。このような同期回路は、メタステーブル状態を許容できるレベルまで低減するように設計できます。
シュミットトリガーは準安定状態の発生確率を低減するためにも使用できますが、1979 年に研究者の Chaney が実証したように、シュミットトリガーでさえ準安定状態になる可能性があります。彼はさらに、有限時間内に非同期入力から準安定状態の可能性を完全に排除することは不可能であり、「2 つの安定状態を持つすべてのデバイスには異常動作領域が存在するという理論的および実験的な証拠が多数存在する」と主張しました。この避けられない状況に直面して、ハードウェアは準安定状態の発生確率を低減することしかできず、システムは時折発生する準安定状態イベントをうまく処理しようと試みるしかありません。[ 8 ]
準安定性は十分に理解されており、それを制御するためのアーキテクチャ技術も知られているにもかかわらず、機器の故障モードとして依然として存在し続けている。
メタステーブル状態によって引き起こされる深刻なコンピュータおよびデジタルハードウェアのバグには、興味深い社会的歴史があります。多くのエンジニアは、双安定デバイスが真でも偽でもない状態に入り、時間の経過とともに指数関数的に減少する確率ではあるものの、任意の期間にわたってその状態が不確定に続く正の確率を持つことを信じようとしませんでした。[ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] しかし、メタステーブル状態は、連続領域を離散領域にマッピングしようとするあらゆる試みの必然的な結果です。異なる離散出力にマッピングされる領域間の連続領域の境界では、連続領域内で任意に近接した点が異なる出力にマッピングされるため、どの出力を選択するかの決定は困難で、場合によっては長いプロセスになります。[ 14 ] アービタまたはフリップフロップへの入力がほぼ同時に到着すると、回路はメタステーブル状態を通過する可能性が最も高くなります。メタステーブル状態は一部の分野では依然として十分に理解されておらず、さまざまなエンジニアがメタステーブル状態を解決またはフィルタリングするとされる独自の回路を提案しています。通常、これらの回路はメタステーブル状態の発生をある場所から別の場所に移動させるだけです。[ 15 ] 複数のクロックソースを使用するチップは、動作中に経験される互いにずれる独立したクロックではなく、固定された位相関係を持つテスタークロックでテストされることがよくあります。これは通常、現場で発生するメタステーブル状態の故障モードが見られたり報告されたりすることを明示的に防ぎます。メタステーブル状態の適切なテストでは、周波数がわずかに異なるクロックを使用し、回路が正しく動作することを確認することがよくあります。