(57)【特許請求の範囲】
【請求項１】
センサ内に生じるソフト・エラー率に影響する供給電圧を受け取る可変感度ソフト・エラーセンサ内で生じる前記ソフト・エラー率の指示を生成するソフト・エラー率モニタと、
前記ソフト・エラー率の前記指示を受け取り、前記供給電圧を設定する供給電圧制御であって、前記可変感度ソフト・エラーセンサ内で生じる基準ソフト・エラー率を満たすように前記供給電圧を設定する供給電圧制御と
を含む装置。
【請求項２】
前記供給電圧を受け取るシステム回路をさらに含む、請求項１に記載の装置。
【請求項３】
前記センサおよび前記システム回路が同一の集積回路上にある、請求項２に記載の装置。
【請求項４】
前記ソフト・エラー率の前記指示に応答し、前記システム回路の第１の部分にフォールトトレランス方式を実装するように命令する制御をさらに含む、請求項２に記載の装置。
【請求項５】
前記フォールトトレランス方式が誤り訂正符号（ＥＣＣ）を使用することを含む、請求項４に記載の装置。
【請求項６】
前記フォールトトレランス方式が冗長回路を使用することを含む、請求項４に記載の装置。
【請求項７】
前記フォールトトレランス方式が論理多数決方式を含む、請求項６に記載の装置。
【請求項８】
そのコンポーネントが前記供給電圧に基づくコンポーネント供給電圧を有するコンピュータ・システムをさらに含む、請求項１に記載の装置。
【請求項９】
その感度は入力電圧に基づいている可変感度ソフト・エラーセンサからソフト・エラー率のインディケータを受け取ることと、
前記センサからの前記ソフト・エラー率の前記インディケータの変化に応答して、前記可変感度ソフト・エラーセンサの前記感度を変更するために前記入力電圧を調節することと
を含む、電子デバイスを操作する方法。
【請求項１０】
前記ソフト・エラー率の増加を示す前記ソフト・エラー率の前記インディケータに応答して、前記可変感度ソフト・エラーセンサの前記感度を下げるために前記入力電圧が調節される、請求項９に記載の方法。
【請求項１１】
前記入力電圧がシステム回路に供給される供給電圧に相当する、請求項９に記載の方法。
【請求項１２】
前記システム回路内のフォールトトレランス方式を使用させることをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記フォールトトレランス方式が、誤り訂正符号、パリティ、および冗長論理のうちの少なくとも１つを含む、請求項１２に記載の方法。
【請求項１４】
その感度は入力電圧に基づいている可変感度ソフト・エラー率センサと、
前記可変感度ソフト・エラー率センサの出力に基づいて前記入力電圧を決定する電圧レギュレータと、
ソフト・エラーに対するシステム感度が前記入力電圧に相当する供給電圧に基づく、前記供給電圧を受け取るシステム回路と
を含む装置。
【請求項１５】
前記可変感度ソフト・エラー率センサの前記出力に応答するフォールトトレラント回路を含む、請求項１４に記載の装置。
【請求項１６】
前記フォールトトレラント回路がソフトウェア制御に応答する、請求項１５に記載の装置。
【請求項１７】
前記可変感度ソフト・エラー率センサおよび前記システム回路が同一の集積回路上にある、請求項１５に記載の装置。
【請求項１８】
前記フォールトトレラント回路および前記システム回路が同一の集積回路上にある、請求項１５に記載の装置。
【請求項１９】
前記フォールトトレラント回路が多数決方式を実装された冗長回路を含む、請求項１８に記載の装置。
【請求項２０】
前記フォールトトレラント回路が誤り訂正符号データ保護方式をオンにする、請求項１８に記載の装置。
【発明の詳細な説明】
【背景技術】
【０００１】
現代のデジタル集積回路は、アルファ粒子または中性子の攻撃の形で放射線によって阻害される内部論理を有し得る。混乱は、シングル・イベント・アップセット（ＳＥＵ）と称される。ＳＥＵがメモリ、ラッチ、フリップフロップ、および電荷結合素子などの記憶素子内で生じるとき、それらは永続的である。この永続性は特に厄介である。ＳＥＵが生じる率は、ソフト・エラー率（ＳＥＲ）と称される。制御論理または状態機械内の永続的なＳＥＵは、回路を望ましくない状態に導き得る。これは、システム障害の原因に成り得る。
【０００２】
放射線（例えば、アルファ粒子および中性子粒子）フラックスは、物理的な環境および場所により変わる。例えば、宇宙放射線レベルは高度と相関性があり、したがって、航空機の飛行中に大きく変化し得る。もう１つの例では、自由中性子は磁極を辿る傾向がある。したがって、中性子フラックスは、世界中で大きく異なり得る。したがって、ＳＥＲもまた、そのシステムまたは集積回路の物理的な環境および場所により異なる。
【発明の概要】
【課題を解決するための手段】
【０００３】
本発明の一実施形態は、したがって、そのセンサ内に生じるソフト・エラー率に影響する供給電圧を受け取る前記センサ内で生じる前記ソフト・エラー率の指示を生成するソフト・エラー率モニタと、前記ソフト・エラー率の前記指示を受け取り、前記センサ内で生じる基準ソフト・エラー率を満たすように前記供給電圧を設定する供給電圧制御とを備える装置を含み得る。
【０００４】
本発明の一実施形態は、したがって、その感度が入力電圧に基づいている前記センサからソフト・エラー率のインディケータを受け取ることと、前記センサからの前記ソフト・エラー率の前記インディケータの変化に応答して前記センサの前記感度を変えるために前記入力電圧を調節することとを含む、電子デバイスを操作する方法をさらに含み得る。
【０００５】
本発明の一実施形態は、したがって、その感度が入力電圧に基づいているソフト・エラー率センサと、前記ソフト・エラー率センサの出力に基づいた前記入力電圧を決定する電圧レギュレータと、ソフト・エラーに対するシステムの感度が供給電圧に基づいている、前記入力電圧に相当する前記供給電圧を受け取るシステム回路とを備える装置をさらに含み得る。
【図面の簡単な説明】
【０００６】
【図１】閉ループ・ソフト・エラー感度制御システムの構成図である。
【図２】ソフト・エラー感度制御システムの構成図である。
【図３】ソフト・エラー制御システムの構成図である。
【図４】電子デバイスを操作する方法の流れ図である。
【図５】ソフト・エラーを制御する方法の流れ図である。
【図６】ソフト・エラー率センサの構成図である。
【図７】コンピュータ・システムの構成図である。
【発明を実施するための形態】
【０００７】
図１は、閉ループ・ソフト・エラー感度制御システムの構成図である。図１で、ソフト・エラー感度制御システム１００は、ソフト・エラー・センサ１１０および電圧制御１２０を備える。センサ１１０は、電圧制御１２０と結合するソフト・エラー率インディケータ１１１を出力する。ソフト・エラー率インディケータ１１１に基づいて、電圧制御１２０は、センサ１１０への入力である制御電圧１２１を生成する。制御電圧１２１は、センサ１１０に作用する放射線１３０に対するセンサ１１０の感度に影響を与える。したがって、センサ１１０、ソフト・エラー率インディケータ１１１、電圧制御１２０、および制御電圧１２１は、作用する放射線１３０の各種量にわたってソフト・エラー率インディケータ１１１がほぼ一定レベルを維持するようにセンサ１１０への制御電圧１２１を調節する閉ループ・フィードバック・システムを形成する。一実施形態では、電圧制御１２０は、ソフト・エラー率インディケータ１１１を閾値以下に維持するように制御電圧１２１を調節することができる。
【０００８】
一実施形態では、制御電圧１２１は、センサ１１０内の放射線の影響を受ける回路への電源電圧である。制御電圧１２１が上がると、センサ１１０内の放射線の影響を受ける回路の放射線１３０の攻撃に対する感度は低くなる。例えば、センサ１１０への名目電源電圧の±５％の範囲では、センサ１１０の感度を２：１の範囲にわたって変えることができる。放射線１３０のレベルが低いとき、電圧制御１２０はセンサ１１０に対してより低い制御電圧１２１を出力する。これによって、センサ１１０の放射線１３０に対する感度は高くなる。平衡が達せられると、電圧制御１２０（制御電圧１２１を介する）はソフト・エラー率インディケータ１１１をほぼ一定値に維持する。もう１つの実施形態では、電圧制御１２０がソフト・エラー率インディケータを閾値以下に維持するときに平衡が達せられる。
【０００９】
一実施形態では、ソフト・エラー率インディケータ１１１は、センサ１１０内で生じるソフト・エラーの率に相当する。したがって、ソフト・エラー率インディケータ１１１を一定値に維持することは、センサ１１０内で生じるソフト・エラーの率をほぼ一定値に維持することに相当する。同様に、ソフト・エラー率インディケータ１１１を閾値以下に維持することは、センサ１１０内で生じるソフト・エラーの率を閾値以下に維持することに相当する。
【００１０】
一実施形態では、制御電圧１２１は、別の回路のソフト・エラー率を制御するために使用されることができる。例えば、制御電圧１２１は、システム電源レベルを設定するために使用されることができる。したがって、センサ１１０が高レベルの放射線１３０を受けているとき、放射線の攻撃に対するそのシステム回路の感度を下げるために、システム電源レベルは上げられる。
【００１１】
図２は、ソフト・エラー感度制御システムの構成図である。図２で、ソフト・エラー感度制御システム２００は、センサ２１０、電圧制御２２０、およびシステム２５０を備える。前述のとおり、センサ２１０、ソフト・エラー率インディケータ２１１、電圧制御２２０、および制御電圧２２１は、作用する放射線２３０の各種量にわたってソフト・エラー率インディケータ２１１がほぼ一定レベルを維持するようにセンサ２１０への制御電圧２２１を調節する閉ループ・フィードバック・システムを形成する。したがって、センサ２１０の感度は、一定値（または閾値）に（またはそれより低い値に）センサ２１０内で生じるソフト・エラーの率を保つために操作される。
【００１２】
図２では、システム２５０もまた制御電圧２２１を受け取る。放射線２３１に対するシステム２５０の感度は、制御電圧２２１によって影響される。一実施形態では、特定の制御電圧２２１レベルでの放射線２３１に対するシステム２５０の感度は、放射線２３０に対するセンサ２１０の感度に相当する。したがって、システム２５０内で生じるソフト・エラー率は、センサ２１０内で生じるソフト・エラー率に相当する（またはこれと共に変化する）。放射線２３０および放射線２３１が互いを比例的に辿る（即ち、放射線２３０が２倍になると、放射線２３１も２倍になる）と仮定すると、制御電圧２２１で放射線２３１に対するシステム２５０の感度を制御することで、システム２５０内に一定のソフト・エラー率を生じさせることができる。システム２５０内のこの一定のソフト・エラー率は、システム２５０を攻撃する放射線２３１のレベルが変化するにもかかわらず維持される。したがって、システム２５０を攻撃する放射線２３１のレベルの範囲にわたってソフト・エラーの安定した（または閾値未満の）レベルがシステム２５０内で維持されることができる。一実施形態では、制御電圧２２１は電源電圧である。
【００１３】
図３は、ソフト・エラー制御システムの構成図である。図３において、ソフト・エラー感度制御システム３００は、センサ３１０、電圧制御３２０、およびシステム３５０を備える。前述のとおり、センサ３１０、ソフト・エラー率インディケータ３１１、電圧制御３２０、および制御電圧３２１は、作用する放射線３３０の各種量にわたってソフト・エラー率インディケータ３１１がほぼ一定レベルを維持するようにセンサ３１０への制御電圧３２１を調節する閉ループ・フィードバック・システムを形成する。したがって、センサ３１０の感度は、放射線３３０からセンサ３１０内でまた放射線３３１からシステム３５０内で生じるソフト・エラーの率を一定の（または閾値の）率に（またはそれ未満に）保つために操作される。一実施形態では、制御電圧３２１は電源電圧である。
【００１４】
図３で、システム３５０は、フォールトトレランス（ＦＴ）制御３５１およびフォールトトレラント・ブロック３５２を備える。フォールトトレランス制御３５１は、フォールトトレラント・ブロック３５２に結合されている。フォールトトレランス制御３５１は、ソフト・エラー率インディケータ３１１を受け取る。ソフト・エラー率インディケータ３１１に基づいて、フォールトトレランス制御３５１は、フォールトトレラント・ブロック３５２を使用するフォールトトレランス方式を有効にする（またはオンにする）ことができる。例えば、閉ループ・フィードバック・システムがシステム３５０内のソフト・エラー率を閾値以下に維持することができない場合、フォールトトレランス制御３５１は、放射線３３１に起因するソフト・エラーに対して保護するためにシステム３５０がフォールトトレランス方式を使用することができるようにすることによって応答することができる。フォールトトレランス制御３５１が放射線３３１に起因するソフト・エラーに対して保護することを可能にすることができるフォールトトレランス方式の例は、エラーを検出するためのパリティ・アルゴリズム、データを保護するための誤り訂正符号、冗長回路、冗長回路および多数決方式、ならびにシステム３５０によって動作されるフォールトトレラントなまたは故障修正ソフトウェアのアルゴリズムを含むがこれらに限定されない。
【００１５】
最後に、ソフト・エラー率インディケータ３１１が第２の閾値を超える場合、システム３５０は、シャットダウンするあるいはそのシステムが規格外で動作されていて使用されるべきではないことをユーザに警告することができる。この情報は、エラー・メッセージまたはある種の他のインディケータ（例えば、エラー・ライト）を介してユーザに伝えられることができる。
【００１６】
前述のシステムは、システム（またはチップ）のソフト・エラー率に影響するハードウェアおよび／またはソフトウェアを制御するために、ソフト・エラー率モニタ（別称  ソフト・エラー率センサ）、または他の放射線フラックス・センサを使用することによって、所望の（または所要の）ソフト・エラー率レベルに合うように適応することを理解されたい。一実施形態では、ソフト・エラー率フィードバック・システムは、１つの集積回路上に完全に存在することができる。もう１つの実施形態では、フィードバック・システム（または制御されたシステム）の１つまたは複数の部分は他のチップ上に存在することができる。例えば、フィードバック・システムによって作り出される制御電圧は、集積回路への電力供給を調節するためにオフチップのシステム電源によって使用されることができる。この形では、電圧制御（例えば、１２０、２２０および３２０）はオフチップであり、システムの残り（例えば、センサ２１０およびシステム２５０）は同一のチップ上にある。もう１つの例では、センサは、システムの他のコンポーネントとは別個の集積回路上に存在することができる。
【００１７】
図４は、電子デバイスを操作する一方法の流れ図である。図４のステップは、システム１００、２００、または３００の１つまたは複数の要素により実行されることができる。ソフト・エラー率インディケータは、可変感度ソフト・エラー率センサから受け取られる（４０２）。例えば、電圧制御１２０は、センサ１１０からソフト・エラー率インディケータ１１１を受け取ることができる。作用する放射線１３０に対するセンサ１１０の感度は、制御電圧１２１により変化する。
【００１８】
ソフト・エラー率インディケータの変化に応答して、ソフト・エラー率センサの感度が調節される（４０４）。例えば、センサ１１０からのソフト・エラー率インディケータ１１１の変化に応答して、電圧制御１２０は、制御電圧１２１を調節することにより、作用する放射線１３０に対するセンサ１１０の感度を調節する。
【００１９】
図５は、ソフト・エラーを制御する一方法の流れ図である。図５に示すステップは、システム３００の１つまたは複数の要素によって実行されることができる。入力供給電圧は、ソフト・エラー率センサおよびシステムに適用される（５０２）。例えば、制御電圧３２１は、センサ３１０およびシステム３５０によって使用される電源電圧でもよい（あるいはこれを制御することができる）。入力供給電圧は、ソフト・エラー率センサの変更された出力に基づいて調節される（５０４）。例えば、制御電圧３２１（またはそれが制御する電源電圧）は、センサ３１０の出力（ソフト・エラー率インディケータ３１１）の変化に応答して電圧制御３２０により調節されることができる。
【００２０】
システムのフォールトトレランス方式は、ソフト・エラー率センサの出力がある基準を満たすときにオンになる（５０６）。例えば、フォールトトレランス制御３５１は、閾値を超えるソフト・エラー率インディケータ３１１に応答して、フォールトトレランス３５２をオンにすることができる。フォールトトレランス制御３５１は、ハードウェアまたはソフトウェア・ベースのフォールトトレランス方式３５２をオンにすることができる。ソフト・エラー率インディケータ３１１が閾値を下回るとき、フォールトトレランス制御３５１は、ハードウェアまたはソフトウェア・ベースのフォールトトレランス方式３５２をオフにすることができる。フォールトトレランス制御３５１がオンにすることができるフォールトトレランス方式は、エラーを検出するためのパリティ・アルゴリズム、データを保護するための誤り訂正符号、冗長回路、冗長回路および多数決方式、およびフォールトトレラントなまたは故障修正のソフトウェア・アルゴリズムを含むがこれらに限定されない。
【００２１】
図６は、ソフト・エラー率センサの構成図である。図６に示すソフト・エラー率センサ６００は、センサ１１０、２１０または３１０のいずれかとして使用されることができる例示的なＳＥＲセンサである。ＳＥＲセンサ６００は、放射線効果自己試験のための回路（Ｃｉｒｃｕｉｔ  ｆｏｒ  Ｒａｄｉａｔｉｏｎ  Ｅｆｆｅｃｔｓ  Ｓｅｌｆ−Ｔｅｓｔ：ＣＲＥＳＴ）アルゴリズムと称されるものを実行する。ＳＥＲセンサ６００は、パターン発生器６０２、直列シフト・レジスタ６０４、およびエラー検出器６０６を含む。直列シフト・レジスタ６０４は、一般に、ソフト・エラー（ひいてはソフト・エラー率）についてテストされる回路である。直列シフト・レジスタは、Ｎステージの整数倍（即ち、ＮおよびＭが整数値であるところの、Ｎ＊Ｍステージ）を有する。放射線に対するこれらのステージのそれぞれの感度は、入力電圧６２１により影響される。一実施形態では、入力電圧６２１は、直列シフト・レジスタ６０４のステージへの電源電圧である。
【００２２】
パターン発生器６０２は、繰返しのデータ・パターンを出力する。繰返しのデータ・パターンは、直列シフト・レジスタ６０４のＮシフト・サイクルごとに繰り返される。直列シフト・レジスタ６０４の入力は、パターン発生器６０２から繰返しのデータ・パターンを受け取る。エラー検出器６０６は、直列シフト・レジスタ６０４の出力を受け取る。エラー検出器６０６はまた、パターン発生器６０２から繰返しのデータ・パターンも受け取る。直列シフト・レジスタ６０４は繰返しのデータ・パターンの長さ（即ち、Ｎ）の整数倍（Ｍ）であるので、直列シフト・レジスタ６０４内でソフト・エラーが生じない場合、エラー検出器６０６への２つの入力で受信されるデータ・パターンは一致することになる。しかし、繰返しのデータ・パターンの１つまたは複数のビットが放射線の攻撃によって変えられた場合、エラー検出器６０６はその２つの入力の間の差異としてこれを検出することになる。したがって、エラー検出器６０６は、ソフト・エラー率のインディケータ６１１を生成することができる。
【００２３】
一実施形態では、パターン発生器６０２は、出力を切り換える（例えば、１０１０１０１０）単純なフリップフロップでもよい。もう１つの実施形態では、パターン発生器６０２は、より複雑な繰返しのパターンを生成するための線形フィードバック・シフト・レジスタを実装することができる。エラー検出器６０６は、単純なコンパレータ（例えば、ＸＯＲゲート）およびカウンタでもよい。一実施形態では、パターン発生器６０２および／またはエラー検出器６０６は、放射線の攻撃に対して、直列シフト・レジスタ６０４よりも感度が低くなるように構成されることができる。
【００２４】
前述の方法、システム、デバイス、および機能は、１つまたは複数のコンピュータ・システムで実装されるまたはそれ（ら）により実行されることができる。前述の方法は、コンピュータ可読媒体上に格納されることもできる。制御システム１００、ソフト・エラー感度制御システム２００、およびソフト・エラー感度制御システム３００のいくつかのまたはすべての要素は、コンピュータ・システム、集積回路、システム・オン・チップ（ＳｏＣ）、またはそれらのコンポーネントの中に具備されるまたは含まれ得る。これは、制御システム１００、ソフト・エラー・センサ１１０、電圧制御１２０、ソフト・エラー感度制御システム２００、センサ２１０、電圧制御２２０、システム２５０、ソフト・エラー感度制御システム３００、センサ３１０、電圧制御３２０、およびシステム３５０を含むが、これらに限定されない。
【００２５】
図７は、コンピュータ・システムの構成図である。コンピュータ・システム７００は、通信インターフェース７２０、処理システム７３０、記憶システム７４０、およびユーザ・インターフェース７６０を含む。処理システム７３０は、記憶システム７４０と動作可能なように結合されている。記憶システム７４０は、ソフトウェア７５０およびデータ７７０を格納する。処理システム７３０は、通信インターフェース７２０およびユーザ・インターフェース７６０と動作可能なように結合されている。コンピュータ・システム７００は、プログラムされた汎用コンピュータを備えることができる。コンピュータ・システム７００は、マイクロプロセッサを含むことができる。コンピュータ・システム７００は、プログラマブルなまたは専用の回路を備えることができる。コンピュータ・システム７００は、複数のデバイス、プロセッサ、記憶装置、および／または要素７２０〜７７０を共に備えるインターフェースの間に分散されることができる。
【００２６】
通信インターフェース７２０は、ネットワーク・インターフェース、モデム、ポート、バス、リンク、トランシーバ、または他の通信デバイスを含み得る。通信インターフェース７２０は、複数の通信デバイスの間に分散されることができる。処理システム７３０は、マイクロプロセッサ、マイクロコントローラ、論理回路、または他の処理デバイスを含み得る。処理システム７３０は、複数の処理デバイスの間に分散されることができる。ユーザ・インターフェース７６０は、キーボード、マウス、音声認識インターフェース、マイクおよびスピーカ、グラフィック表示装置、タッチ・スクリーン、または他のタイプのユーザ・インターフェース、デバイスを含み得る。ユーザ・インターフェース７６０は、複数のインターフェース、デバイスの間に分散されることができる。記憶システム７４０は、ディスク、テープ、集積回路、ＲＡＭ、ＲＯＭ、ネットワーク記憶装置、サーバ、または他のメモリ機能を含み得る。記憶システム７４０は、コンピュータ可読媒体でもよい。記憶システム７４０は、複数のメモリ・デバイスの間に分散されることができる。
【００２７】
処理システム７３０は、記憶システム７４０からソフトウェア７５０を取り出し、実行する。処理システムは、データ７７０を取り出し、格納することができる。処理システムはまた、通信インターフェース７２０を介してデータを取り出し、格納することもできる。処理システム７３０は、ソフトウェア７５０またはデータ７７０を作成または修正して具体的な結果を得ることができる。処理システムは、通信インターフェース７２０またはユーザ・インターフェース７７０を制御して具体的な結果を得ることができる。処理システムは、通信インターフェース７２０を介して、遠隔に格納されたソフトウェアを取り出し、実行することができる。
【００２８】
ソフトウェア７５０および遠隔に格納されたソフトウェアは、オペレーティング・システム、ユーティリティ、ドライバ、ネットワーキング・ソフトウェア、およびコンピュータ・システムによって通常は実行される他のソフトウェアを含み得る。ソフトウェア７５０は、アプリケーション・プログラム、アプレット、ファームウェア、またはコンピュータ・システムによって通常は実行される他の形態の機械可読の処理命令を含み得る。処理システム７３０によって実行されるとき、ソフトウェア７５０または遠隔に格納されたソフトウェアは、本明細書に記載のとおり動作するようにコンピュータ・システム７００に指示することができる。
【００２９】
前述の本発明の説明は、例示および説明のために提示されている。本明細書は網羅的なものあるいは本発明を開示された具体的な形態に限定するものではなく、また前述の教示に照らして他の修正形態および変更形態が可能となるであろう。実施形態は、意図する個々の使用に適した様々な実施形態および様々な修正形態で他の当業者が本発明を最大に活用できるように、本発明の原理およびその実際的応用例を最もよく説明するために、選択され、記載されている。添付の特許請求の範囲は、先行技術によって制限される範囲を除いて本発明の他の代替実施形態を含むものと解釈されるものとする。
【図１】
0005437872.tif 000002
【図２】
0005437872.tif 000003
【図３】
0005437872.tif 000004
【図４】
0005437872.tif 000005
【図５】
0005437872.tif 000006
【図６】
0005437872.tif 000007
【図７】
0005437872.tif 000008