準安定状態は不安定な平衡状態に似ています。不安定な平衡の一般的な例は、倒立振子です。振り子を垂直位置でバランスできる場合、それは安定した状態です。ただし、レバーをいずれかの側に押すと(気流や地面の振動など)、振り子は垂直位置に戻らず、落下します。通常の振り子とは対照的です。振り子は片側に押されると、最終的に垂直に落ち着きます。
電気システムでは、安定した平衡がストレージ要素を作成するために使用されます。不安定な平衡状態は、状態を簡単に失うため、適切なストレージ要素にはなりませんが、多くの場合、寄生状態として存在します。
一般的なデジタルストレージエレメントは、クロスカップルインバーターのペアです。
記憶素子には2つの安定した状態があり、1つは左側のノードが電源電圧にあり、右側のノードはグランドにあり、もう1つは反対の状態にあります。また、各ノードが中間電圧にある不安定な状態もあります。
不安定な状態がどのように発生するかをよりよく理解するには、インバータの伝達関数を思い出してください。伝達関数のプロットは、特定の入力電圧に対するインバータの出力電圧を示しています。
インバーターは非線形です。非線形回路のおおよその解を得る簡単な方法の1つは、回路特性をプロットすることです。プロットの交点は解、つまり回路のすべてのコンポーネントの電気的特性が満たされるポイントです。通常、これはWikipediaのこのダイオードの例のように、ivプロットで行われます。ただし、インバーターの場合は、vvプロットで行います。プロット上に2番目のインバーター伝達関数を重ねます(2番目のインバーターが後方にあるため、軸を交換しました
プロットには3つの交点があります。1つは(0、Vs)、1つは(Vs、0)、もう1つは(Vs / 2、Vs / 2)です。(Vs / 2、Vs / 2)状態は準安定です。いずれかのノードの小さな摂動の後、回路は(Vs / 2、Vs / 2)に戻るのではなく、ほとんど常に安定状態の1つに落ち着きます。
デュアルインバーター記憶要素に値を書き込む方法は、インバーターよりも強力なドライバーを使用して、ノードの1つを目的の値に強制することです。これを行う一般的な方法の1つは、パストランジスタを使用することです。
パストランジスタのゲートをクロックに接続すると、Dラッチができます(出力構造は省略しています)。クロックが高い場合、パストランジスタが有効になり、ラッチは透過的になります。入力は出力に直接渡されます。クロックが低い場合、ラッチは前の値を保持します。ラッチがサンプリングする瞬間に準安定性が生じます。ラッチのサンプリング時に入力が安定した高電圧または低電圧である場合、正常に機能します。ただし、ラッチがサンプリングされるときに入力がVs / 2ポイント付近にある場合、ラッチがメタステーブル(Vs / 2、Vs / 2)状態になる可能性があります。一度準安定状態になると、無期限にそこにとどまることができます(ラッチが再度クロックされないと仮定します)が、それは不安定な平衡状態であるため、通常は準安定状態から抜け出すために何かが比較的迅速に発生します。
準安定性を心配するとき
ストレージエレメントが準安定状態になっている場合、少なくともダウンストリームロジックのタイミングバジェットの一部を失っています。ロジックは、準安定状態が解決するまで目的の評価を実行できません。最悪の場合、メタステーブル状態はロジックを介して持続または伝播し、ダウンストリームストレージエレメントもメタステーブルになります。または、関連する複数のストレージエレメントが一貫性のない値をキャプチャします。
適切に設計され機能する同期ロジックには、準安定性に関する問題はありません。クロック周期はロジックの評価時間より長く、すべてのフリップフロップ入力は次のクロックエッジで安定しており(セットアップ要件が満たされている)、すべて有効な値をロードします。
準安定性が懸念される一般的な状況は次のとおりです。
- フロントパネルのスイッチなどの外部入力、またはいつでも遷移する可能性のあるモニター回路の出力(低電圧、過熱)をサンプリングするロジック。
- 同期関係を持たない複数のクロックを使用するロジック。これは、特定のクロック要件を持つI / Oインターフェイスでよく発生しますが、チップの異なる部分に異なるパフォーマンス要件がある場合にも内部的に発生します。たとえば、3 GHz CPUのすべてのロジックが実際に3 GHzで実行されているわけではありません。(ただし、CPUのクロックの多くは互いに同期倍数であるため、CPUは良い例ではありません。)