JP4184362B2 - テスト機能が組み込まれた高信頼性三重冗長ラッチ - Google Patents

テスト機能が組み込まれた高信頼性三重冗長ラッチ Download PDF

Info

Publication number
JP4184362B2
JP4184362B2 JP2005194597A JP2005194597A JP4184362B2 JP 4184362 B2 JP4184362 B2 JP 4184362B2 JP 2005194597 A JP2005194597 A JP 2005194597A JP 2005194597 A JP2005194597 A JP 2005194597A JP 4184362 B2 JP4184362 B2 JP 4184362B2
Authority
JP
Japan
Prior art keywords
memory element
latch
configurable memory
triple redundant
nfet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005194597A
Other languages
English (en)
Other versions
JP2006030180A (ja
Inventor
ジョン・ティー・ピーターセン
ハッサン・ネイサー
ジョナサン・ピー・ロッツ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2006030180A publication Critical patent/JP2006030180A/ja
Application granted granted Critical
Publication of JP4184362B2 publication Critical patent/JP4184362B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits
    • H03K3/0375Bistable circuits provided with means for increasing reliability; for protection; for ensuring a predetermined initial state when the supply voltage has been applied; for storing the actual state when the supply voltage fails
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/012Modifications of generator to improve response time or to decrease power consumption
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は概してラッチ設計に関する。詳しくは、本発明はラッチのソフトエラー耐性の改善に関する。
高エネルギーの中性子は、材料中で主としてシリコン原子核との衝突によりエネルギーを失い、一連の二次反応を引き起こす。電子正孔対がpn接合を通過する際には、そのような反応により、電子正孔対の粗密による軌跡が残る。付着した電荷の一部は再結合し、一部は接合接点部に集まる。粒子がラッチの脆弱な部分に当たると、蓄積された電荷は、ラッチに記憶された値を「反転させる」のに必要とされる最低電荷を超え、ソフトエラーを引き起こすことがある。
ソフトエラーを発生させるこの最低電荷はラッチの臨界電荷と呼ばれる。ソフトエラーが発生する割合すなわちソフトエラー発生率(SER)は通常、故障発生率(FIT)で表現される。1FITは通常、10億時間当たり1回の故障が発生することに等しい。
ソフトエラーの一般的原因は、集積回路のパッケージ材料中に存在する微量の放射性同位元素から放射されるアルファ粒子である。フリップチップパッケージ技術に使用されるバンプ材料も、アルファ粒子の発生源になりうることが分かっている。
ソフトエラーの他の原因には、高エネルギーの宇宙線や太陽粒子線などがある。高エネルギーの宇宙線や太陽粒子線は、大気圏上層部の大気と反応し、地球に降り注ぐ高エネルギーの陽子と中性子を生成する。中性子はほとんどの人造構造物を貫通するので、特に問題となることがある(中性子は5フィート(約152センチメートル)のコンクリートを容易に通過することができる)。この影響は緯度や標高によっても異なる。ロンドンでは、赤道上に比べてこの影響が2倍になる。標高1マイル(約1609メートル)のコロラド州デンバーでは、標高0メートルのサンフランシスコに比べて、この影響が3倍になる。商用飛行機の中では、標高0メートルの地点に比べて、この影響が100〜800倍にも及ぶことがある。その理由は一般に、標高が高いほど宇宙線が高いエネルギーを持つからである。宇宙線は一般に、大気圏を降下する際に、他の分子と衝突することでエネルギーを失う。
放射線によって生じるソフトエラーは、マイクロプロセッサや他の複雑なIC(集積回路)の故障率を高める主な原因の1つになっている。この種の故障を減らすために、いくつかの手法が提案されている。データ経路にECC(誤り訂正コード)やパリティを追加することは、アーキテクチャレベルでこの問題に対処するものである。データ経路にECCやパリティを追加することは、複雑でコストがかかる場合がある。
回路レベルでは、p/n接合によって生成されるキャパシタンスに対する酸化物によって生成されるキャパシタンスの比率を高めることにより、SERを減少させることができる。ラッチのキャパシタンスには、主に、p/n接合によって生成されるキャパシタンスと、酸化物によって生成されるキャパシタンスとがある。電子正孔対は高エネルギーの中性子がp/n接合を通過するときに生成されるので、一般にラッチのp/n接合面積を小さくすればSERは減少する。高エネルギーの中性子が酸化物の中を通過しても、あまり多くの電子正孔対は生成されない。従って、SRAMセルでは一般に、p/n接合キャパシタンスに対する酸化物キャパシタンスの比率を高めることによって、SERを減少させることができる。
当該技術分野では、ラッチのSERを減少させることが必要とされている。本発明の一実施形態は、三重冗長ラッチのSERを減少させるだけでなく、三重冗長ラッチの物理サイズをわずかに大きくするだけで、三重冗長ラッチによる遅延時間を低減する。さらに、2つの冗長ラッチを用いて、三重冗長ラッチに対して双方向にデータをスキャンイン/スキャンアウトする。
本発明は好ましい実施形態において、テスト機能が組み込まれた高信頼性三重冗長ラッチの回路および方法を提供する。基本態様では、3つの設定可能メモリ要素が、各設定可能メモリ要素に同一の論理値を設定する。設定可能メモリ要素を設定した後、第2の設定可能メモリ要素および第3の設定可能メモリ要素からの入力を有し、設定可能メモリ要素を制御する投票構造は、第1の設定可能メモリ要素に保持される論理値を決定する。テスト態様では、第2の設定可能メモリ要素に対してデータを双方向にスキャンイン/スキャンアウトさせることができる。データは、バッファを介して第3の設定可能メモリ要素まで伝搬する。第3の設定可能メモリ要素を使用すると、三重冗長ラッチからデータをスキャンアウトさせることができる。三重冗長ラッチの伝搬遅延は、一個のラッチによる伝搬遅延のみである。
本発明の他の態様および利点は、本発明の原理を例として示す添付の図面と共に下記の詳細な説明から明らかになるであろう。
図1は三重冗長ラッチの回路図である。三重冗長ラッチに対する入力100が、転送ゲートTG1、TG2およびTG3の入力に接続されている。制御信号102は、転送ゲートTG1、TG2およびTG3に接続されている。制御信号102は、転送ゲートTG1、TG2およびTG3の入力信号をそれぞれ、転送ゲートTG1、TG2およびTG3の出力104、106および108にいつ転送するかを制御する。出力104、106および108に提示された信号はそれぞれ、LATCH1、LATCH2およびLATCH3に記憶される。
制御信号102をオフにした後、LATCH1の信号が反転器INV1の入力を駆動する。制御信号102をオフにした後、LATCH2の信号が反転器INV2の入力を駆動する。制御信号102をオフにした後、LATCH3の信号が反転器INV3の入力を駆動する。反転器INV1の出力110は、AND1に対する入力と、AND2に対する入力とを駆動する。反転器INV2の出力112は、AND1に対する入力と、AND3に対する入力とを駆動する。反転器INV3の出力114は、AND2に対する入力と、AND3に対する入力とを駆動する。AND1の出力116はOR1の入力を駆動する。AND2の出力118はOR1の入力を駆動する。AND3の出力120はOR1の入力を駆動する。三重冗長ラッチの出力は、OR1の出力122である。
三重冗長ラッチは、3つの異なるラッチに同じデータを記憶することによってソフトエラーを低減する。例えば、制御信号102をオンにすると、転送ゲートTG1、TG2およびTG3の入力100から論理高の値が、転送ゲートTG1、TG2およびTG3の出力104、106および108にそれぞれ駆動される。制御信号102をオフにした後、ラッチLATC1、LATCH2およびLATCH3には論理高の値が記憶される。LATCH1に記憶された論理高の値は反転器INV1の入力を駆動し、反転器INV1の出力110に論理低の値を生成する。LATCH2に記憶された論理高の値は反転器INV2の入力を駆動し、反転器INV2の出力112に論理低の値を生成する。LATCH3に記憶された論理高の値は反転器INV3の入力を駆動し、反転器INV3の出力114に論理低の値を生成する。
反転器INV1、INV2およびINV3の出力110、112および114がそれぞれ論理低の値になるので、AND1、AND2およびAND3のそれぞれに対する入力110、112および114はすべて論理低の値になる。AND1、AND2およびAND3に対する入力110、112および114がすべて論理低の値になるので、AND1、AND2およびAND3の出力116、118および120はいずれも論理低の値になる。AND1、AND2およびAND3の出力116、118および120がそれぞれ論理低の値になるので、OR1の入力はすべて論理低の値になる。OR1に対する入力116、118および120がすべて論理低の値になるので、出力122は論理低の値になる。
例えばLATCH2にソフトエラーが発生し、そこに記憶された論理値が論理高の値から論理低の値に変化した場合、その論理低の値が反転器INV2の入力106に提示される。反転器INV2の出力112は、AND1およびAND3の入力に論理高の値を提示する。この例では、AND1に対するもう一方の入力110と、AND3に対するもう一方の入力114が論理低の値であるから、AND1とAND3の出力116および120はそれぞれ論理低の値になり、出力122は変化しない。この例は、三重冗長ラッチに記憶された元の値が、一個のラッチに発生した単一のソフトエラーによって変更されない仕組みを示している。
さらに他の例として、LATCH2のソフトエラーの他にLATCH3にも別のソフトエラーがある場合を仮定する。その場合、反転器INV3に対する入力108は論理低の値であるから、反転器INV3の出力114は論理高の値になる。そして、AND2の入力114とAND3の入力114に論理高の値が提示される。AND1の入力には論理低の値と論理高の値が提示されるので、AND1の出力116は論理低の値のまま変わらない。AND2の入力には論理低の値と論理高の値が提示されるので、AND2の出力118も論理低の値のまま変わらない。しかしながら、AND3に対する2つの入力112および114はいずれも論理高の値であるから、出力120は論理高の値になる。OR1に対する入力120が論理高の値であるので、出力122は、論理低の値から論理高の値に変化する。この例は、三重冗長ラッチに記憶された元の値が、三重冗長ラッチの2つのラッチに発生したソフトエラーにより変更される仕組みを示している。
三重冗長ラッチは、ラッチに記憶された元の値が単一のソフトエラーにより変更されるのを防止することが出来る。ただし、これには回路の追加という大きな犠牲が伴ない、結果としてラッチの物理的サイズは大きくなる。また、三重冗長ラッチは、ラッチの遅延経路に時間遅延を発生させることがある。そのため、三重冗長ラッチは一般に、シングルラッチに比べてサイズが大きく、遅くなることが多い。
図2は、改良された三重冗長ラッチの一実施形態を示すブロック図である。この実施形態では、制御信号SETにより、設定可能メモリ要素1(SME1)、設定可能メモリ要素2(SME2)および設定可能メモリ要素3(SME3)に同一の論理値(DIN:Data-IN)が設定される。制御信号SETにより設定可能メモリ要素1(SME1)、設定可能メモリ要素2(SME2)および設定可能メモリ要素3(SME3)に同一の論理値DINが設定された後、3つの設定可能メモリ要素SME1、SME2およびSME3は同一の論理値を保持する。設定可能メモリ要素1(SME1)、設定可能メモリ要素2(SME2)および設定可能メモリ要素3(SME3)に同一の論理値DINが設定された後、投票構造1(VS1)は、ノードNOUT2およびNOUT3の論理値に基づいて、投票構造VS1の出力VSOUTに提示する論理値を決定する。
設定可能メモリ要素1(SME1)に記憶された論理値DINがソフトエラーイベントによって変更され、他の2つの設定可能メモリ要素SME2およびSME3がソフトエラーイベントの影響を受けない場合、投票構造1(VS1)は、設定可能メモリ要素1(SME1)に記憶されていた元の論理値を復元する。
設定可能メモリ要素2(SME2)に記憶された論理値がソフトエラーイベントによって変更された場合、投票構造1(VS1)は、その出力VSOUTをトライステートし、設定可能メモリ要素1(SME1)に記憶された元の論理値はそのままにする。2つの設定可能メモリ要素SME2およびSME3が、ソフトエラーイベントの影響を受けた場合、三重冗長ラッチに記憶された元の論理値は機能しなくなることがある。
テストのために、三重冗長ラッチに記憶された元の論理値を取り出して(スキャンアウトして)調べることができる。設定可能なメモリ2(SM2)に保持された論理値DINは、バッファBUF1の入力OUT2に提示される。バッファ1(BUF1)の出力BOUTは、設定可能メモリ3(SME3)の入力に提示される。制御信号NSHIFTを活動化させることにより、BOUTに提示された論理値を出力SOUTに伝搬させることができる。SOUTの論理値で読み取られ、評価される。
スキャンデータSINを三重冗長ラッチの中に順次読み込ませる(スキャンインさせる)こともできる。制御信号SHIFTを活動化し、制御信号SETを非活動化すると、スキャンデータSINが、設定可能メモリ要素2(SME2)に読み込まれる。次に、非活動化された制御信号SETはそのままにし、制御信号SHIFTを非活動化し、制御信号NSHIFTを活動化することにより、そのスキャンデータは設定可能メモリ要素3(SME3)にも読み込まれる。そして、設定可能メモリ要素SME2およびSME3に読み込まれた論理値は、設定可能メモリ要素1(SME1)にも強制的に設定される。なぜなら、設定可能メモリ要素SME2とSME3が同じ論理値になれば、投票構造1(VS1)の出力VSOUTにも同じ論理値が生成されるからである。
図2に示す三重冗長ラッチの伝搬遅延は、設定可能メモリ要素SME1の伝搬遅延のみによって決まる。本発明のこの実施形態は、三重冗長ラッチの遅延時間を大幅に短縮する。図1に示した従来技術の場合、遅延時間には例えば、LATCH1、LATCH2およびLATCH3のうちの最も遅いラッチの伝搬遅延、反転器INV2の伝搬遅延、ANDゲート(AND2)の伝搬遅延、ORゲート(OR1)の伝搬遅延などが含まれる。
図3は、遅延を短縮し、信頼性を向上させ、テスト機能を組み込んだ三重冗長ラッチのブロック図である。この例の三重冗長ラッチの入力は、転送ゲートTG1、TG2およびTG3の入力DINに接続されている。さらに、転送ゲートの代わりに、3つの状態をとることが可能な入力反転器(トライステートインバータ)、交差結合されたNANDゲート、交差結合されたNORゲートを使用してもよい。制御信号SETがオンになると、転送ゲートTG1、TG2およびTG3の入力DINの信号が、転送ゲートTG1の出力DOUT、転送ゲートTG2の出力OUT2、および転送ゲートTG3の出力SOUTに転送される。転送ゲートTG1の出力DOUTに提示された論理値は、ラッチ1(L1)に対する入力でもある。転送ゲートTG2の出力OUT2に提示された論理値は、ラッチ2(L2)に対する入力でもある。転送ゲートTG3の出力SOUTに提示された論理値は、ラッチ3(L3)の入力SOUTにも接続される。
ラッチ2(L2)の出力NOUT2は、投票構造VS1の入力に接続されている。ラッチ3(L3)の出力NOUT3も、投票構造VS1の入力に接続されている。
この実施形態で冗長性が利用される例として、論理高の値が記憶される場合を仮定する。すなわち、この例では、記憶ノードDOUT、OUT2およびOUT3にそれぞれ論理高の値が記憶される。ラッチ2(L2)の出力NOUT2は、論理低の値を投票構造1(VS1)の入力に提供する。ラッチ3(L3)の出力NOUT3も、論理低の値を投票構造1(VS1)の入力に提供する。投票構造VS1に対する入力が両方とも論理低の値であるから、出力は論理高の値になる。制御信号NSETを活動化すると、VSOUTの論理高の値はDOUTに転送される。
この例では、ラッチ1(L1)に記憶された論理値がソフトエラーイベントにより論理高の値から論理低の値に変化した場合、投票構造1(VS1)は、ラッチ1(L1)に記憶されていた元の論理高の値を復元し、三重冗長ラッチを変化を受ける前の元の状態に復元する。従って、三重冗長ラッチは、単一のソフトエラーが発生しても、そこに記憶されていた元の論理値を維持することが出来る。
この例では、ラッチ2(L2)に記憶された論理値がソフトエラーイベントにより論理高の値から論理低の値に変化した場合、投票構造1(VS1)がトライステートされ、ラッチ1(L1)に記憶されていた元の値は論理高の値のまま維持される。従って、三重冗長ラッチは、単一のソフトエラーが発生しても、そこに記憶されていた元の論理値を維持することが出来る。
この例では、ラッチ3(L3)に記憶された論理値がソフトエラーイベントにより論理高の値から論理低の値に変化した場合、投票構造1(VS1)がトライステートされ、ラッチ1(L1)に記憶されていた元の値は論理高の値のまま維持される。従って、三重冗長ラッチは、単一のソフトエラーが発生しても、そこに記憶されていた元の論理値を維持することが出来る。
しかしながら、この例では、ノードOUT2とOUT3に記憶された値がソフトエラーイベントにより変化した場合は、同時に三重冗長ラッチはその元の値から変化することがある。ノードOUT2およびOUT3に記憶された論理値がソフトエラーイベントにより論理高の値から論理低の値に変化した場合、投票構造1(VS1)に対する2つの入力NOUT2およびNOUT3は、いずれも論理低の値から論理高の値に変化する。入力NOUT2およびNOUT3が論理高の値になると、投票構造1(VS1)の出力VSOUTは論理低の値になる。従って、DOUTに記憶された論理値は、元の論理高の値から論理低の値に変化する。この例では、三重冗長ラッチに記憶されていた元の値が、論理高の値から論理低の値に変化する。
テストのために、三重冗長ラッチに記憶された元の論理値を取り出して(スキャンアウトして)調べることができる。ラッチ2(L2)に保持された論理値は、バッファBUF1の入力OUT2に提示される。バッファ1(BUF1)の出力BOUTは、転送ゲート6(TG6)の入力に提示される。制御信号NSHIFTを活動化させることにより、BOUTに提示された論理値を出力SOUTに伝搬させ、ラッチ3(L3)に記憶することができる。SOUTの論理値はテスタで読み取られ、評価される。
スキャンデータSINを三重冗長ラッチの中に順次読み込ませる(スキャンインさせる)こともできる。制御信号SHIFTを活動化し、制御信号SETを非活動化すると、スキャンデータSINが、転送ゲート5(TG5)を介してラッチ2(L2)に転送される。次に、そのスキャンデータは、バッファ1(BUF1)を介して転送ゲート6(TG6)の入力に提示される。次に、制御信号SETを非活動化状態に維持したまま、制御信号SHIFTを非活動化し、制御信号NSHIFTを活動化することにより、そのスキャンデータをラッチ3(L3)にも読み込ませることができる。そして、ラッチL2およびL3に読み込まれた論理値は、ラッチ1(L1)にも強制的に設定される。なぜなら、ラッチL2とL3が同じ論理値になれば、投票構造1(VS1)の出力VSOUTは、同じ論理値を生成するからである。NSETが活動化されているので転送ゲート4(TG4)はオンであり、VSOUTの値はDOUTに強制的に送られる。
図3の三重冗長ラッチは、ラッチのソフトエラー発生率を改善する他に、ロジック遅延の数が少ないので、三重冗長ラッチの遅延時間も低減する。
図4は、改良された三重冗長ラッチの回路図である。図4は、図3に含まれる基本ブロックと同じ基本ブロック、すなわち、転送ゲート1(TG1)、転送ゲート2(TG2)、転送ゲート3(TG3)、転送ゲート4(TG4)、転送ゲート5(TG5)、転送ゲート6(TG6)、ラッチ1(L1)、ラッチ2(L2)、ラッチ3(L3)、投票構造1(VS1)、およびバッファ1(BUF1)を含む。
三重冗長ラッチの転送ゲート1(TG1)の一実施形態は、PFET(MP2)とNFET(MN2)とを含む。この実施形態では、PFET(MP2)とNFET(MN2)のドレインが、転送ゲート1(TG1)の入力DINに接続される。PFET(MP2)とNFET(MN2)のソースは、転送ゲート1(TG1)の出力DOUTに接続される。PFET(MP2)のゲートは、転送ゲート1(TG1)の制御入力NSETに接続される。そして、NFET(MN2)のゲートは、転送ゲート1(TG1)の制御入力SETに接続される。
三重冗長ラッチの転送ゲート2(TG2)の一実施形態は、PFET(MP3)とNFET(MN3)とを含む。この実施形態では、PFET(MP3)とNFET(MN3)のドレインが、転送ゲート2(TG2)の入力DINに接続される。PFET(MP3)とNFET(MN3)のソースは、転送ゲート2(TG2)の出力OUT2に接続される。PFET(MP3)のゲートは、転送ゲート2(TG2)の制御入力NSETに接続される。そして、NFET(MN3)のゲートは、転送ゲート2(TG2)の制御入力SETに接続される。
三重冗長ラッチの転送ゲート3(TG3)の一実施形態は、PFET(MP4)とNFET(MN4)とを含む。この実施形態では、PFET(MP4)とNFET(MN4)のドレインが、転送ゲート3(TG3)の入力DINに接続される。PFET(MP4)とNFET(MN4)のソースは、転送ゲート3(TG3)の出力SOUTに接続される。PFET(MP4)のゲートは、転送ゲート3(TG3)の制御入力NSETに接続される。そして、NFET(MN4)のゲートは、転送ゲート3(TG3)の制御入力SETに接続される。
三重冗長ラッチの転送ゲート4(TG4)の一実施形態は、PFET(MP14)とNFET(MN14)とを含む。この実施形態では、PFET(MP14)とNFET(MN14)のドレインが、転送ゲート4(TG4)の入力VSOUTに接続される。PFET(MP14)とNFET(MN14)のソースは、転送ゲート4(TG4)の出力DOUTに接続される。PFET(MP14)のゲートは、転送ゲート4(TG4)の制御入力SETに接続される。そして、NFET(MN14)のゲートは、転送ゲート4(TG4)の制御入力NSETに接続される。
三重冗長ラッチの転送ゲート5(TG5)の一実施形態は、PFET(MP13)とNFET(MN13)とを含む。この実施形態では、PFET(MP13)とNFET(MN13)のドレインが、転送ゲート5(TG5)の入力SINに接続される。PFET(MP13)とNFET(MN13)のソースは、転送ゲート5(TG5)の出力OUT2に接続される。PFET(MP13)のゲートは、転送ゲート5(TG5)の制御入力NSHIFTに接続される。そして、NFET(MN13)のゲートは、転送ゲート5(TG5)の制御入力SHIFTに接続される。
三重冗長ラッチの転送ゲート6(TG6)の一実施形態は、PFET(MP15)とNFET(MN15)とを含む。この実施形態では、PFET(MP15)とNFET(MN15)のドレインが、転送ゲートTG6の入力BOUTに接続される。PFET(MP15)とNFET(MN15)のソースは、転送ゲート6(TG6)の出力SOUTに接続される。PFET(MP15)のゲートは、転送ゲート6(TG6)の制御入力SHIFTに接続される。そして、NFET(MN15)のゲートは、転送ゲート6(TG6)の制御入力NSHIFTに接続される。
三重冗長ラッチのラッチ1(L1)の一実施形態は、PFET(MP5)、NFET(MN5)、PFET(MP6)、およびNFET(MN6)を含む。この実施形態では、NFET(MN5)のゲートとPFET(MP5)のゲートが、PFET(MP6)のドレインおよびNFET(MN6)のドレインに、すなわちラッチ1(L1)の入力DOUTに接続される。PFET(MP5)のドレインとNFET(MN5)のドレインは、PFET(MP6)のゲートおよびNFET(MN6)のゲートに、すなわちラッチ1(L1)の出力400に接続される。PFET(MP5)とPFET(MP6)のソースはVDDに接続される。そして、NFET(MN5)とNFET(MN6)のソースはGNDに接続される。
三重冗長ラッチのラッチ2(L2)の一実施形態は、PFET(MP7)、NFET(MN7)、PFET(MP8)、およびNFET(MN8)を含む。この実施形態では、NFET(MN7)のゲートとPFET(MP7)のゲートが、PFET(MP8)のドレインおよびNFET(MN8)のドレインに、すなわちラッチ2(L2)の入力OUT2に接続される。PFET(MP7)のドレインとNFET(MN7)のドレインは、PFET(MP8)のゲートおよびNFET(MN8)のゲートに、すなわちラッチ2(L2)の出力NOUT2に接続される。PFET(MP7)とPFET(MP8)のソースはVDDに接続される。そして、NFET(MN7)とNFET(MN8)のソースはGNDに接続される。
三重冗長ラッチのラッチ3(L3)の一実施形態は、PFET(MP9)、NFET(MN9)、PFET(MP10)、およびNFET(MN10)を含む。この実施形態では、NFET(MN9)のゲートとPFET(MP9)のゲートが、PFET(MP10)のドレインおよびNFET(MN10)のドレインに、すなわちラッチ3(L3)の入力SOUTに接続される。PFET(MP9)のドレインとNFET(MN9)のドレインは、PFET(MP10)のゲートおよびNFET(MN10)のゲートに、すなわちラッチ3(L3)の出力NOUT3に接続される。PFET(MP9)とPFET(MP10)のソースはVDDに接続される。そして、NFET(MN9)とNFET(MN10)のソースはGNDに接続される。
三重冗長ラッチの投票構造1(VS1)の一実施形態は、PFET(MP11)、PFET(MP12)、NFET(MN11)、およびNFET(MN12)を含む。この実施形態では、PFET(MP11)とNFET(MN11)のゲートが、投票構造1(VS1)の第1の入力NOUT2に接続される。PFET(MP12)とNFET(MN12)のゲートは、投票構造1(VS1)の第2の入力NOUT3に接続される。PFET(MP11)のソースはVDDに接続される。NFET(MN11)のソースはGNDに接続される。PFET(MP11)のドレイン402は、PFET(MP12)のソース402に接続される。PFET(MP12)のドレインVSOUTは、NFET(MN12)のドレインVSOUTに接続される。そして、NFET(MN12)のソース404は、NFET(MN11)のドレイン404に接続される。
三重冗長ラッチのバッファ1(BUF1)の一実施形態は、PFET(MP16)、NFET(MN16)、PFET(MP17)、およびNFET(MN17)を含む。この実施形態では、PFET(MP16)のゲートとNFET(MN16)のゲートが、BUF1の入力OUT2に接続される。PFET(MP16)のドレインとNFET(MN16)のドレインは、PFET(MP17)のゲートおよびNFET(MN17)のゲート406に接続される。PFET(MP17)とNFET(MN17)のドレインは、バッファ1(BUF1)の出力BOUTに接続される。PFET(MP16)とPFET(MP17)のソースはVDDに接続される。そして、NFET(MN16)とNFET(MN17)のソースはGNDに接続される。
図4は、改良された三重冗長ラッチの回路図である。入力信号は、転送ゲート1(TG1)、転送ゲート2(TG2)、および転送ゲート3(TG3)の入力DINを駆動する。制御信号SETが論理高の値で制御信号NSETが論理低の値であれば、転送ゲート1(TG1)、転送ゲート2(TG2)、および転送ゲート3(TG3)の入力DINの信号は、転送ゲート1(TG1)の出力DOUT、転送ゲート2(TG2)の出力OUT2、および転送ゲート3(TG3)の出力SOUTに転送される。
ノードDOUT、OUT2、およびSOUTに転送された信号は、ラッチ1(L1)の入力DOUT、ラッチ2(L2)の入力OUT2、ラッチ3(L3)の入力SOUTにも提示される。ラッチL1、L2およびL3は、同じ論理値を記憶する。ラッチL1、L2およびL3の出力400、NOUT2およびNOUT3はそれぞれ、そこに記憶された論理値とは反対の意味の論理値を出力する。ラッチL2とL3のそれぞれの出力NOUT2およびNOUT3は、投票構造VS1に入力される。NOUT2およびNOUT3が投票構造1(VS1)に入力されると、投票構造1(VS1)はVSOUTを出力し、転送ゲート1(TG1)がオフである場合は、ラッチ1(L1)の入力DOUTに提示される信号を強化する。
制御入力SETを論理低の値にし、制御入力NSETを論理高の値にした後、ラッチ1(L1)、ラッチ2(L2)、およびラッチ3(L3)は、ノードDOUT、OUT2、およびSOUTにそれぞれ提示されていた元の論理値を記憶する。ノードDOUT、OUT2およびSOUTのどれにも異常がない場合は、同じ意味の信号が三重冗長ラッチの出力DOUTに提示される。
例えば、ノードDOUT、OUT2、およびSOUTに論理高の値が記憶された場合、三重冗長ラッチの出力DOUTには論理高の値が提示される。ラッチ2(L2)の出力NOUT2における論理低の値は、投票構造1(VS1)の第1の入力に印加される。ラッチ3(L3)の出力NOUT3における論理低の値は、投票構造1(VS1)の第2の入力に印加される。制御信号SETが低(ロー)で制御信号NSETが高(ハイ)であるので、第4の転送ゲートTG4の入力VSOUTから論理高の値がラッチ1(L1)の入力に転送される。このような論理値が投票構造1(VS1)に印加された場合、三重冗長ラッチの出力DOUTは、論理高の値のまま維持される。
ノードDOUT、OUT2、およびSOUTに論理高の値が記憶されるこの例では、ノードDOUTの論理値がソフトエラーイベントにより論理低の値に変化した場合でも、投票構造VS1の出力VSOUTが高(ハイ)に維持されるので、DOUTは論理高の値に復元される。NSETが論理高の値で、SETが論理低の値であるから、VSOUT上の論理高の値がDOUTに転送される。
ラッチ3(L3)に記憶された論理値が単一のソフトエラーイベントによって変化した場合、投票構造1(VS1)はトライステートし、DOUT上の正しい値を変更しないようにする。ラッチ2(L2)に記憶された論理値が単一のソフトエラーイベントによって変化した場合も、投票構造1(VS1)はトライステートし、DOUT上の正しい値を変更しないようにする。
しかしながら、ノードOUT2とSOUTに記憶された値がソフトエラーイベントにより変化した場合は、同時に三重冗長ラッチはその元の値から変化することがある。例えば、ノードDOUT、OUT2、およびSOUTに論理高の値が記憶されている場合、三重冗長ラッチの出力DOUTには、論理高の値が提示される。ノードOUT2とSOUTに記憶された論理値がソフトエラーイベントにより論理高の値から論理低の値に変化した場合、投票構造1(VS1)に対する2つの入力NOUT2およびNOUT3は、いずれも論理低の値から論理高の値に変化する。投票構造1(VS1)の入力NOUT2およびNOUT3が論理高の値になると、出力VSOUTは論理低の値に引き下げられる。転送ゲート4(TG4)がオンであるため、ラッチ1(L1)に記憶されていた論理高の値は、論理低の値に反転される。そして、三重冗長ラッチの出力DOUTは、論理高の値から論理低の値に変化する。
テストのために、三重冗長ラッチに記憶された元の論理値を取り出して(スキャンアウトして)調べることができる。ラッチ2(L2)に保持された論理値は、バッファ1(BUF1)の入力OUT2に提示される。バッファ1(BUF1)の出力BOUTは、転送ゲート6(TG6)の入力に提示される。制御信号NSHIFTを高(ハイ)に駆動し、制御信号SHIFTを低(ロー)に駆動することにより、BOUTに提示された論理値を出力SOUTに伝搬させ、ラッチ3(L3)に記憶することができる。SOUTの論理値はテスタで読み取られ、評価される。
スキャンデータSINを三重冗長ラッチの中に順次読み込ませる(スキャンインさせる)こともできる。制御信号SHIFTを高(ハイ)にし、NSHIFTを低(ロー)にし、制御信号SETを低(ロー)にすると、スキャンデータSINが、転送ゲート5(TG5)を介してラッチ2(L2)に転送される。そして、そのスキャンデータは、バッファ1(BUF1)を介して転送ゲート6(TG6)の入力に提示される。制御信号SETをローに維持したまま、制御信号SHIFTを低(ロー)にし、制御信号NSHIFTを高(ハイ)にすることにより、そのスキャンデータはラッチ3(L3)にも読み込まれる。そして、ラッチL2およびL3に読み込まれた論理値は、ラッチ1(L1)にも強制的に設定される。なぜなら、ラッチL2とL3が同じ論理値になれば、投票構造1(VS1)の出力VSOUTにも同じ論理値が生成されるからである。NSETが高(ハイ)でSETが低(ロー)であるから転送ゲート4(TG4)がオンであり、VSOUTの値はDOUTに強制的に送られる。
図4の三重冗長ラッチは、ラッチのソフトエラー発生率を改善する他に、ロジック遅延の数が少ないので、三重冗長ラッチによる遅延時間も低減する。
本発明に関する上記の説明は図示説明の目的で提示している。上記の説明は発明の形態を網羅するためのものでもなければ、発明を開示した形態に厳密に制限するためのものでものなく、以上の教示を鑑みて他にも改良や変形は可能である。実施例には、本発明の原理とその応用形態を最も分かりやすく説明できるようなものを選択して記載している。そして、それにより当業者が意図する特定の用途に合わせて本発明を様々な実施形態および変形形態で利用できるようにしている。添付の特許請求の範囲は、従来技術によって限定される範囲を除き、本発明の他の代替実施形態も含むものとして解釈すべきである。
従来技術による三重冗長ラッチの回路図である。 テスト機能が組み込まれた改良型三重冗長ラッチの一実施形態を示すブロック図である。 テスト機能が組み込まれた改良型三重冗長ラッチのブロック図である。 テスト機能が組み込まれた改良型三重冗長ラッチの回路図である。

Claims (9)

  1. ソフトエラーを低減する三重冗長ラッチであって、
    a)第1の設定可能メモリ要素(SME1)と、
    b)第2の設定可能メモリ要素(SME2)と、
    c)第3の設定可能メモリ要素(SME3)と、
    d)第1の投票構造(VS1)と、
    e)第1のバッファ(BUF1)と、
    を有し、
    f)前記設定可能メモリ要素(SME1、SME2、SME3)のそれぞれに同一の論理値(DIN)が設定され、
    g)前記第1の投票構造(VS1)に対する入力(NOUT2、NOUT3)が、前記第2の設定可能メモリ要素(SME2)と第3の設定可能メモリ要素(SME3)によって提供され、
    h)前記第1の設定可能メモリ要素(SME1)、前記第2の設定可能メモリ要素(SME2)、および前記第3の設定可能メモリ要素(SME3)が設定された後、前記第1の投票構造(VS1)の出力(VSOUT)が、前記第1の設定可能メモリ要素(SME1)に保持される論理値を決定し、
    i)前記第2の設定可能メモリ要素(SME2)の中にスキャンデータSINをスキャンインさせることができ、
    j)前記第2の設定可能メモリ要素(SME2)から前記第1のバッファ(BUF1)へデータ(OUT2)をスキャンアウトさせることができ、
    k)前記第1のバッファ(BUF1)から前記第3の設定可能メモリ要素(SME3)へデータ(BOUT)をスキャンインさせることができ、
    l)前記第3の設定可能メモリ要素(SME3)からデータ(SOUT)をスキャンアウトさせることができ、
    m)前記第1の設定可能メモリ要素(SME1)の伝搬遅延が、該三重冗長ラッチの唯一の伝搬遅延である、三重冗長ラッチ。
  2. 前記第1の設定可能メモリ要素は、
    a)第1の転送ゲート(TG1)と、
    b)第2の転送ゲート(TG4)と、
    c)ラッチ(L1)と、
    を含む、請求項1に記載の三重冗長ラッチ。
  3. 前記転送ゲート(TG1、TG4)が相補的パスゲートから成る、請求項2に記載の三重冗長ラッチ。
  4. 前記第2の設定可能メモリ要素が、
    a)第1の転送ゲート(TG2)と、
    b)第2の転送ゲート(TG5)と、
    c)ラッチ(L2)と、
    を含む、請求項1に記載の三重冗長ラッチ。
  5. 前記転送ゲート(TG2、TG5)が相補的パスゲートから成る、請求項4に記載の三重冗長ラッチ。
  6. 第3の設定可能メモリ要素が、
    a)第1の転送ゲート(TG3)と、
    b)第2の転送ゲート(TG6)と、
    c)ラッチ(L3)と、
    を含む、請求項1に記載の三重冗長ラッチ。
  7. 前記転送ゲート(TG3、TG6)が相補的パスゲートから成る、請求項6に記載の三重冗長ラッチ。
  8. 前記第1の投票構造が、
    a)第1の入力(NOUT2)と、
    b)第2の入力(NOUT3)と、
    c)出力(VSOUT)と、
    を含み、
    d)前記第1の入力(NOUT2)が、前記第2の設定可能メモリ要素(SME2)の出力に接続され、
    e)前記第2の入力(NOUT3)が、前記第3の設定可能メモリ要素(SME3)の出力に接続され、
    f)前記第2(SME2)の設定可能メモリ要素および前記第3(SME3)の設定可能メモリ要素が三重冗長ラッチに元々記憶されていた論理値を有している場合、前記第1の投票構造(VS1)の出力(VSOUT)は、三重冗長ラッチに元々記憶されていた論理値を前記第1の設定可能メモリ要素(SME1)に強制的に送るように構成される、請求項1に記載の三重冗長ラッチ。
  9. 前記第1のバッファ(BUF1)が、
    a)ゲート、ドレインおよびソースを有する第1のPFET(MP16)と、
    b)ゲート、ドレインおよびソースを有する第2のPFET(MP17)と、
    c)ゲート、ドレインおよびソースを有する第1のNFET(MN16)と、
    d)ゲート、ドレインおよびソースを有する第2のNFET(MN17)と、
    を含み、
    e)前記第1のPFET(MP16)と前記第2のPFET(MP17)のソースがVDDに接続され、
    f)前記第1のNFET(MN16)と前記第2のNFET(MN17)のソースがGNDに接続され、
    g)前記第1のPFET(MP16)と前記第1のNFET(MN16)のゲートが前記第1のバッファ(BUF1)の入力に接続され、
    h)前記第2のPFET(MP17)と前記第2のNFET(MN17)のドレインが前記第1のバッファ(BUF1)の出力(BOUT)に接続され、
    i)前記第1のPFET(MP16)と前記第1のNFET(MN16)のドレインが前記第2のPFET(MP17)と前記第2のNFET(MN17)のゲートに接続される、請求項1に記載の三重冗長ラッチ。
JP2005194597A 2004-07-19 2005-07-04 テスト機能が組み込まれた高信頼性三重冗長ラッチ Expired - Fee Related JP4184362B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/894,720 US7095262B2 (en) 2004-07-19 2004-07-19 High reliability triple redundant latch with integrated testability

Publications (2)

Publication Number Publication Date
JP2006030180A JP2006030180A (ja) 2006-02-02
JP4184362B2 true JP4184362B2 (ja) 2008-11-19

Family

ID=35598836

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005194597A Expired - Fee Related JP4184362B2 (ja) 2004-07-19 2005-07-04 テスト機能が組み込まれた高信頼性三重冗長ラッチ

Country Status (2)

Country Link
US (1) US7095262B2 (ja)
JP (1) JP4184362B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7215581B2 (en) * 2004-04-14 2007-05-08 Hewlett-Packard Development Company, L.P. Triple redundant latch design with low delay time
US7449924B2 (en) * 2004-09-16 2008-11-11 Texas Instruments Incorporated Latch-based serial port output buffer
US20070229132A1 (en) * 2006-03-28 2007-10-04 Chu Sam G Scannable domino latch redundancy for soft error rate protection with collision avoidance
US7661047B2 (en) * 2007-03-05 2010-02-09 International Business Machines Corporation Method and dual interlocked storage cell latch for implementing enhanced testability
US7661046B2 (en) * 2007-03-05 2010-02-09 International Business Machines Corporation Method and dual interlocked storage cell latch for implementing enhanced testability
JP5699057B2 (ja) * 2011-08-24 2015-04-08 株式会社日立製作所 プログラマブルデバイス、プログラマブルデバイスのリコンフィグ方法および電子デバイス
US10425604B2 (en) * 2016-10-19 2019-09-24 Raytheon Company Self-recovering digital latch

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504411B2 (en) * 2000-11-02 2003-01-07 Intersil Americas Inc. Redundant latch circuit and associated methods
WO2004105241A1 (ja) * 2003-05-21 2004-12-02 Fujitsu Limited 多数決論理回路を有するフリップフロップ回路
US6825691B1 (en) * 2003-06-05 2004-11-30 International Business Machines Corporation Apparatus and method for a radiation resistant latch with integrated scan
US6882201B1 (en) * 2004-01-07 2005-04-19 Hewlett-Packard Development Company, L.P. Triple redundant latch design using a fail-over mechanism with backup
US6930527B1 (en) * 2004-01-30 2005-08-16 Hewlett-Packard Development Company, L.P. Triple redundant latch design with storage node recovery
US6937527B1 (en) * 2004-05-27 2005-08-30 Hewlett-Packard Development Company, L.P. High reliability triple redundant latch with voting logic on each storage node

Also Published As

Publication number Publication date
US7095262B2 (en) 2006-08-22
JP2006030180A (ja) 2006-02-02
US20060012413A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
JP4098312B2 (ja) 3重冗長ラッチ
JP4358187B2 (ja) 放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置
JP4184362B2 (ja) テスト機能が組み込まれた高信頼性三重冗長ラッチ
JP4273101B2 (ja) テスト機能と各ラッチに対する投票構造が組み込まれた高信頼性3重冗長メモリ素子
Calin et al. Upset hardened memory design for submicron CMOS technology
CN100592631C (zh) 具有存储节点恢复功能的三冗余锁存器
JP4249739B2 (ja) ラッチのソフトエラー率の改善
CN1638282B (zh) 使用带备份的故障克服机制的三重冗余锁存器设计
JP4065870B2 (ja) ソフト・エラー・イミュニティが改善されたデュアル・ポート読み取りsramセル
Pavan Kumar et al. A review on radiation‐hardened memory cells for space and terrestrial applications
US6549443B1 (en) Single event upset resistant semiconductor circuit element
Yamamoto et al. Construction of latch design with complete double node upset tolerant capability using C-element
US7215581B2 (en) Triple redundant latch design with low delay time
US7054203B2 (en) High reliability memory element with improved delay time
Yan et al. Dual-interlocked-storage-cell-based double-node-upset self-recoverable flip-flop design for safety-critical applications
Ueno et al. Construction of a soft error (SEU) hardened latch with high critical charge
de Lima et al. Single event upset mitigation techniques for programmable devices
US20060103442A1 (en) Memory element with improved soft-error rate
Blum et al. Enhanced Fault-Tolerant Data Latches for Deep Submicron CMOS.
Myjak et al. Enhanced fault-tolerant CMOS memory elements
CN111181545B (zh) 一种流水结构的软错误自检电路
US20220368327A1 (en) Circuit for mitigating single-event-transients
Paparsenos et al. Triple-Node-Upset Recoverable Radiation-Hardened by Design Latch
Tian et al. An Architecture of a Single-Event Tolerant D Flip-flop Using Full-Custom Design in 28nm Process
Tian Study of Radiation-Tolerant SRAM Design

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080321

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080325

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080625

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080715

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080805

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080903

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110912

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110912

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120912

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees