JP4358187B2 - 放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置 - Google Patents

放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置 Download PDF

Info

Publication number
JP4358187B2
JP4358187B2 JP2005513138A JP2005513138A JP4358187B2 JP 4358187 B2 JP4358187 B2 JP 4358187B2 JP 2005513138 A JP2005513138 A JP 2005513138A JP 2005513138 A JP2005513138 A JP 2005513138A JP 4358187 B2 JP4358187 B2 JP 4358187B2
Authority
JP
Japan
Prior art keywords
coupled
input
radiation
output
node
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 - Lifetime
Application number
JP2005513138A
Other languages
English (en)
Other versions
JP2006519511A (ja
Inventor
ウィリアム・シー・プランツ
Original Assignee
アクテル・コーポレイシヨン
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 アクテル・コーポレイシヨン filed Critical アクテル・コーポレイシヨン
Publication of JP2006519511A publication Critical patent/JP2006519511A/ja
Application granted granted Critical
Publication of JP4358187B2 publication Critical patent/JP4358187B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • 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
    • G11C11/412Digital 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 using field-effect transistors only
    • G11C11/4125Cells incorporating circuit means for protecting against loss of information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/005Circuit means for protection against loss of information of semiconductor storage devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/0033Radiation hardening
    • H03K19/00338In field effect transistor circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17764Structural details of configuration resources for reliability
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/1778Structural details for adapting physical parameters
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • H01L27/118Masterslice integrated circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Error Detection And Correction (AREA)

Description

本発明は、集積回路に関する。特に、本発明は、放射線に耐性のある、フィールドプログラマブルゲートアレイ(FPGA)用のスタティックRAM(SRAM)に関する。
宇宙の用途に対する、放射線に耐性のあるSRAMを基にしたFPGAを構築する際の大きな問題は、構成メモリ(configuration memory)の信頼性である。衛星と他のコンピュータ機器で使用されるメモリ素子は、非常に放射線の影響を受けやすい環境に置かれる可能性がある。宇宙環境での衛星のメモリセルは、通常、単一事象の異常(SEU)と呼ばれる、放射線が起こすソフトエラーにさらされる危険があり、この時メモリセルが高エネルギー粒子に衝突される。メモリなどの集積回路を通過する際に、単一のエネルギー粒子によって、この道筋に沿って作られる電子と正孔の対は、通常ソフトエラーもしくはSEUを引き起こす。SEUは、普通、半導体回路の低容量ノードを襲うアルファ粒子(ヘリウムの原子核)やベータ粒子や他のイオン化した原子核から生まれる。エネルギー粒子によって臨界体積のメモリセル内に危険な電荷が作られると、メモリの論理状態が混乱する。定義によれば危険な電荷とは、メモリセルの論理状態を変えるのに必要な電荷の最少の量である。それは通常Q臨界値(Qcrit)と呼ばれる。
SEUは、あらゆる揮発性メモリセルの内容を変える可能性がある。もしメモリのそのビットが、FPGAの論理機能を制御するような、単にデータを記憶する以外の何かをしているのなら、結果は破滅的なものになる危険がある。他の技術は影響を受けやすい殆どの宇宙船の制御機能により適しているかも知れないが、地上での試作品の間あるいはその後の任務の間に、宇宙船の機能の一部を遠隔で変更できることによって大きな利点がある。宇宙船の設計者は、SEUが不可避的に発生するという考えを認めている。不可避であることを踏まえて、設計者達は、誤り率が妥当なものであり、誤りの捕捉が十分であり、復帰時間が妥当なものであるならば、乗り物の危険でない部分にSRAMを基にしたFPGAを使いたいと考えている。
重いイオンがメモリ記憶セル内のノードを横切るとき、そのイオンは一時期の間、該ノードを元の状態から反対の状態へと強いることがある。この状態の変化は、重いイオンがメモリセルの金属酸化物半導体(MOS)トランジスタのシリコンを通過する際に置いていった電荷によるものである。もしこのノードがメモリセルの帰還ループ回りの遅延よりも長い時間の間、反対の状態が続くならば、セルは状態を変え、記憶したデータは失われる危険がある。ノードが反対の状態に保持される時間は、いくつかの因子による可能性がある。最も危険なのは、置かれた電荷である。
図1Aは、論理ゲート104の簡略化した図である。論理ゲート104は、pチャネルトランジスタ102とnチャネルトランジスタ100とを備える。pチャネルトランジスタには、Vccに結合されるソースと、ノードQ・105に結合されるドレインと、ノードQB・106に結合されるゲートとがある。Nチャネルトランジスタ100には、接地されるソースと、Qノード105に結合されるドレインと、QBノード106に結合されるゲートとがある。
図1Bは、トランジスタ100上での帯電した粒子の衝突を示す図である。トランジスタ100には、ドレイン160とソース165とゲート162とが備わる。ゲート酸化物163は、ゲート162とドレイン162とソース161とを分離する。図1Bに示されるように、ドレイン160は帯電した粒子(イオン)110によって、衝突経路180に沿って衝突される。帯電した粒子110が半導体トランジスタ100を(場合によっては、が時速10000マイル或いはそ以上の相対速度で)突き通す時、後ろに正孔の航跡(wake)と電子対120を残す。もし、図1Aに示すように、相補的金属酸化物半導体(CMOS)論理ゲート104の出力拡散に衝突すると、電界が存在するなら、それらの全てのキャリアが、ドリフト電流130として使用可能である。もし、電界が存在しないならば、ドリフト電流130は最後には拡散する。もしCMOSゲートの出力が、衝突される拡散の周囲の物質の電圧になければ(例えば、接地電位にあるP型基板内の、VccにあるN+拡散160)、そのような電界が存在し、電流はその電界をP基板190の電圧まで引っ張るだろう。衝突で発生する問題で、ゲート162のN+拡散140は論理1に駆動され、ゲートのP+拡散は論理0に駆動される。
そのような場合、ノードQの制御を競う2つの電流源がある:本来ノードを正しい論理レベルへ駆動したCMOSのpチャネル素子102と、図1Bのいわゆる“電界ファンネル”150内の電荷溜まりである。大きい方の電流がノードを制御する。もしpチャネル素子102の強さが、利用可能なドリフト電流130より相対的に大きければ、そのノードはどうにか動く。もし、pチャネル素子102の強さがエネルギーの衝突よりも相対的に小さければ、図1Bのドリフト電流130が制御する。ドリフト電流130は、その電荷が全て消えるまで制御し、消えた時点で、CMOS素子は、ノードを正しい値に復元できる。
残念なことに、小さなCMOS素子が大きなエネルギーの衝突に対して制御を取り戻すのには時間がかかる。例えば、犠牲になったゲートが、ループの周囲を伝搬する正しくない論理レベルの順序素子(例えば、メモリ)内の帰還経路の一部であるような場合、CMOS素子は遮断し、決して必要な修正をすることができず、メモリ素子は状態を失う。もしメモリ素子が何か重要なものを制御しているならば、システムかサブシステムの故障という結果になるだろう。
図2Aは、交差結合した(cross-coupled)トランジスタ上への粒子の衝突を簡略化して示す図である。トランジスタ102aと102bと100aと100bは、図1Aに1つの論理ゲートとして示される2つの論理ゲートと同一である。図2Aにおいて、粒子の衝突210は、nチャネルトランジスタ100aのN+領域を襲っているように描かれている。図2は、この衝突に関連する波形を示している。
図2Bは、粒子の衝突210に関連した波形200を描いた図である。ここに示される特別な場合は、ラッチを反転させるのに必要な、ぎりぎりの電荷を作り出すことが全くできない粒子に対するものである。時刻T1において、粒子が衝突し、ノードQが、電界ファンネルにおけるドリフトのせいで、平衡したVccの値から迅速に降下する。その間、トランジスタ102は、ノードQのポンプ電流をT2においてノードQに与え、その時、図1B内の電界ファンネル150内の全ての電荷が消費され、ノードQは、迅速に元の平衡した値Vccに戻る。ここで示した例は、セルが耐えられる電荷の最大量に近いものであり、ノードQ上の電圧はVtripにおけるトリップ点230に達する。もし荷電粒子が、実質的に、トランジスタが耐えられる以上の荷電担体を作ったならば、ノードQは、接地電位へ降下し、ラッチは永久に反対の状態へと飛び込む。
FPGA内のSRAMも、CSRAMあるいはUSRAMとして特定できる。CSRAMは、構造SRAMである。このCSRAMは、FPGAに対して構成ビットを保持しておくのに使用される。CSRAMは、ダイ全体に渡って物理的に広がっており、FPGAの回路の残りの部分に散りばめられている。SRAMを構成するスタティックラッチ内の2つのノードの少なくとも1つは、それを制御するFPGA回路に接続することができる。CSRAMの内容が変更になると、FPGAによって実現される論理機能が変化する。必要なのは、データの完全性が確実に保たれる解決法である。
USRAMは、ユーザーSRAMの短縮形である。これは、ユーザーの論理設計の一部であり、目的専用の機能ブロック内部にまとめられるメモリである。必要とされるのは、USRAMのデータの完全性が確実に保たれる解決法である。
SRAMを元にしたFPGAにおいて、有用な製品を作ることになる様々な別々の要素がある。CSRAM内には構成メモリビットがあり、これによってユーザーは、自身の設計を、利用可能な中立な資源に与えることができる。ユーザーの論理回路のための、組み合わせモジュールと順序モジュールがある。それらのモジュールが互いに接続することができるような、構成可能なスイッチと信号線とバッファとがある。クロックのような支援回路と、イネーブルやリセットのような他の汎用の信号があり、これらによって、異なる時間領域内に1つ或いは2つ以上のサブシステムを作ることができる。これらは、ユーザーが、論理モジュールと内部接続のアレイ外部に作ることができるよりも高い集積度の機能にアクセスできるような、SRAMやDLLのようなブロックである。
従って、放射線に耐性のあるSRAMを基にしたFPGA内で誤りの検出と訂正を提供する装置と方法に対する要求があり、これは、従来からのCMOSプロセスを用いて容易に実現することができ、また、放射線に耐性の無かったSRAMを基にしたFPGAに比肩できる性能速度を持っている。
本発明は、論理モジュールと、論理モジュールと互いに結合した配線資源を持った、放射線に耐性のあるプログラム可能な論理素子を備える。構成データを与える構成データラインは、論理モジュールと配線資源のプログラミングを制御する。構成データラインに結合された誤り訂正回路は、単一事象の異常(SEU)のせいで発生する可能性のある構成データ内のあらゆる誤りを分析し訂正する。
本システムは、プログラム可能な論理素子をプログラムする構成データを持ったプログラム可能な論理素子内で、誤りを訂正するための方法も備えている。本方法は、構成データのバックグラウンド読み込みの段階を備えている。次に、構成データが誤りに対して分析される。最後に、構成データは訂正されて、もし誤りが発見されると、構成データは書き換えられる。
本発明の特徴と利点とをより良く理解することは、本発明の原理を利用した実施例を説明する、以下に示す本発明の詳細な説明と添付の図面を参照することによって得られる。
以下で本発明の実施形態が説明される。特定の例を説明するが、これは説明の目的のためにのみ行われることを理解されたい。本発明の趣旨や範囲から逸脱せずに、他の部品や構成を使用可能であることは、当業者ならば分かるであろう。
本明細書においては、様々な回路と論理機能が説明される。記載において“1”や“0”の表記は、任意の論理表記であることを理解されたい。本発明の第1実施形態では、“1”は高い電圧に対応し、“0”は低い電圧或いは接地電位に対応し、一方第2実施形態では、“0”は高い電圧に対応し、“1”は低い電圧或いは接地電位に対応する。同様に、信号の表記では、本明細書中で用いられる“信号”とは、本発明の特定の実施例によって、今まで低電圧或いは電圧が無いところで、“高い”電圧を回路内の1ノードへ適用したり引き上げたることを表すかも知れず、または“低い“電圧を該ノードへ終端したり引き下げたりすることを表すかも知れない。
ここで開示した発明は、放射線に強いFOGAを設計するための方法と、商用のスタティックランダムアクセスメモリ(SRAM)を基にしたフィールドプログラマブルゲートアレイ(FPGA)を、放射線に強いものへと変換するために必要な回路設計に関する。ここで説明した、放射線に強いFPGAは、従来技術による素子に関係した(単一通常単一事象の異常)SEUの問題点を大きく減少させる。
放射線に強い回路は、そうでない同等のものよりもかなり大きくなりがちであるので、回路の全ての部品を強くすることは、面積の問題から、実際的ではない。様々な項目の放射線への強さに対する要求を優先し、放射線に強い回路に必須の項目のみを実現する必要がある。放射線に強い設計は、非常に統計的な手法である。以下に説明するのは、放射線に強いFPGAを作るのに使用される方法である。
CSRAMは、高い信頼性で論理回路を保存できないと、その製品が商業的に生存できないため、強化されなくてはならない。また、コア領域の約25%から成る数百万の構成ビットがあるので、非常に領域効率の良い方法で行われなくてはならない。データの正確さを保証するための誤り訂正符号(ECC)ビットによる誤り法でのバックグラウンド読み取り\読み取り\読み取り\書き込みが使用される。
構成データ入力回路と、読み取り或いは書き込みシステムと、CSRAMワード線ドライバ/復号器および関連する制御論理回路は、メモリのロードとバックグラウンドの検査を制御するために、強化することが必要となる。
図3は、本発明で開示される、放射線に耐性のある読み取りと書き込み回路を持ったCSRAMアーキテクチャ300を簡略化して示す図である。SRAMメモリのアーキテクチャには、当業者には周知のように、外部資源(即ちEPROM,CPU等)から直列のデータストリーム(SD)および様々なブロックの動作の同期を取る対応のクロック信号(SCK)を出力するEPROM制御ブロック312が備わる。データストリームには、残りのデータを処理するやり方を様々なブロックに伝える序文が含まれる。この序文は、部分的負荷と最大負荷の対比や、他の可能性の中での部分的負荷のアドレスなどの情報を備える。直列データストリーム信号は、信号ライン313と制御論理回路332と列計数器330と読み取り/書き込み増幅器328を介して、行計数器314に結合される(試験時のみ使用される)。行計数器314は、FPGAコア316に結合される。当業者には良く知られたことだが、FPGAコアは、単独のFPGAコアとして使用することができ、コアタイルの矩形配列内で反復され、あるいはシステムオンチップ(SOC)内に他の素子と共に含まれる。コアFPGAタイルは、入出力モジュールで囲まれた論理モジュールの配列を含むかもしれない。FPGAコアタイルには、読み出し専用メモリ(ROM)モジュールのような他の部品も含まれるかも知れない。水平と垂直の配線チャネルは、FPGAコアタイル内の様々な部品間の内部接続を提供する。配線資源の間に、プログラム可能な要素によって、プログラム可能な接続が提供される。
列計数器330は、読み取り/書き込み増幅器328を通してFPGAコア316へ結合される。FPGAコア316は、放射線に耐性のある読み取り/書き込み増幅器及び誤り訂正符号回路318に結合され、後者は、放射線に耐性のあるシフトレジスタ320と2入力マルチプレクサ322及び324を通して周期的冗長検査回路(CRC)326に結合される。放射線に耐性のある読み取り/書き込み増幅器及び誤り訂正符号回路318と放射線に耐性のあるシフトレジスタが行計数器314と共に、バックグラウンド誤り訂正符号リフレッシュ動作を実行する。
行計数器314は、行の各セルが読み取りあるいは書き込みのためにアクセスされるはずの際にのみ、どんな行のワードも電位を上げ、残りの時間はそのワードを低電位にする(そしてメモリセルは保護される)。これを行うために、本発明の、放射線に耐性のあるシフトレジスタ320と放射線に耐性のある読み取り/書き込み増幅器及び誤り訂正符号回路318が、データを放射線の環境にある回路へロードするのに追加された。
図4は、放射線に耐性のある増幅器及び誤り訂正符号回路318と放射線に耐性のあるシフトレジスタ320の1ビット400の簡略化されたブロック図である。CSRAMインターフェイス回路400は、CSRAMコア内の各メモリ列とECC回路の間のインターフェイスを取る。CSRAMインターフェイス回路400は、複数のECCラッチを備えるが、本例では、402と404と406の3つがある。ECCラッチは3の多数決ブロック408に結合される。多数決ブロックは、また7:1マルチプレクサ410に結合する入力も持っている。マルチプレクサ410は、以下に説明するフリップフロップ414のシフトレジスタにデータを与える。多数決ブロック408の出力は、フリップフロップ414を通して7:1マルチプレクサ410に結合される第2入力を持った2入力マルチプレクサ412に結合される。シフトレジスタフリップフロップ414は、図3に示すように、1ビットの放射線に耐性のあるシフトレジスタ320である。フリップフロップ414は、データをCSRAM内にロードするのに使用することができるが、7:1マルチプレクサ410と一緒に、試験の目的のためにCSRAMインターフェイス回路400内の残りの回路を観察するのに使用することもできる。2入力マルチプレクサ412の出力は、書き込みラッチ416を通して読み取り/書き込み増幅器418に結合される。2入力マルチプレクサ412は、ECCあるいはシフトレジスタフリップフロップ414から書き込みデータを与えることができる。
ECCラッチ402と404と406は、ECC回路の結果に対して、3重モード冗長性(TMR)を実現する。本発明では、以下に詳細に説明するように、バックグラウンドECC試験では、4つのサイクルを使用する:3つの連続的な読み取りサイクルとその後に続く1つの書き込みサイクルである(訂正が必要な時に、書き込み処理は書き込みサイクルの間でのみ起こるのだが)。各読み取りサイクルの後に、CRC試験の結果が、放射線に耐性のあるECCラッチ402,404,406の1つに記憶される。放射線に耐性のあるECCラッチ402,404,406は、放射線に耐性のある書き込みラッチ416と同一である。而して、試験は3回実行され、結果は、1ビット毎に3の多数決ブロック408内で多数決される。多数決論理回路は、図6に示される。
図5は、ECCラッチ402,404,406と書き込みラッチ416として図4に示される放射線に強いラッチ500の簡略化された図である。放射線に強いラッチ500は、データがCSRAMの中に高い信頼性で書き込まれるよう保持するのに使用される。ラッチ500は、通常CMOSでレベル検知型で非同期のセット/リセットラッチとして動作し、但し、508から504を経て506への帰還ループ内のトランジスタは、本処理で放射線に耐性を持たせることのできる最小値よりも大きい。トランジスタの大きさは、ポリ抵抗を使用せずに、Qcritあるいはそれより大きな粒子の衝突に抵抗するのに必要な大きさによって決定される。動作中、LがハイでLBがローの時に、左のトランスミッションゲート502は閉じ、右のトランスミッションゲート504は開き、ラッチは入力INを無視し、OUTからLGを経てLQBへの帰還ループはデータを記憶する。LがローでLBがハイの時、最上部のトランスミッションゲートはオフし(帰還ループを切る)、左のトランスミッションゲートは開いてラッチ500をIN上のデータに応答させる。トランスミッションゲートに対する回路は、挿入図510に示されている。
ECCラッチ402と404と406は、図4に示されるように、ECC回路に対して3重モードの冗長性(TMR)を実現する。本発明において、以下により詳細に説明するが、バックグラウンドECC検査は、4つのサイクルを使用する:3つの読み取りサイクルと、それに続く1つの書き込みサイクルである(訂正が必要な時に、書き込み処理は書き込みサイクルの間でのみ起こるのだが)。各読み取りサイクルの後で、CRC検査の結果は、放射線に耐性のあるECCラッチ402あるいは404あるいは406の1つに記憶される。放射線に耐性のあるECCラッチ402あるいは404あるいは406は、放射線に耐性のある書き込みラッチ416と同一である。検査は、例えば、3回実行されて、その結果はビットごとに3の多数決ブロック408で多数決される。多数決論理回路は、図6に示されている。
本発明の一実施形態において、単一の誤り訂正法だけを使用することができ、従って、誤り訂正符号回路は、あらゆるECCワードラインにも訂正すべき誤りが1つあるように設計されることが重要である。しかしいくつかの場合には、“2重衝突”誤りと呼ばれる誤りが起こる。これらの誤りは、粒子が比較的浅い角度で回路に衝突した時に起こり、単一のワードライン内の2つ或いはそれ以上のプログラミングビットを同時に反転させる。本発明のECC回路において、“2重衝突”の問題は、ECCワードライン内のビットを、“2重衝突”の距離より大きな距離だけ物理的に離すことによって解決される。“2重衝突”の距離は推定であるが、0.25mmのCMOSプロセスにおいて約20μmであると考えられる。本実施形態において、メモリセルの1次元の大きさ(ワードラインに平行)は、約7.66μmであろう。従って、3つのメモリセルは、1次元で20μmよりも大きな距離で広がっており、ワードライン上で4つ或いはそれ以上離れたメモリセルが、“2重衝突”から隔絶されている。加えて、FPGA回路は、殆ど常に、その距離が通常上記の距離よりも大きくあるようにメモリの列の間に配される。こうして、本発明の一実施形態では、4つのECCワードラインは、あらゆる単一のワードライン上の全てのビットが“2重衝突”の距離よりも離れることが保証されるように互いにかみ合わせられる。あらゆる集積回路上で空間は貴重なので、本発明のECC法は、なるべく広いデータワードラインを用いて実現するのが望ましい。この方法の実施形態の例は、以下で図6において示される。
図7は、多数のコアタイル702を持った集積回路内の、フィールドプログラマブルゲートアレイ(FPGA)コア700の簡略化されたブロック図である。上で説明したように、FPGAコア700は、単独のFPGAコアとして使用されるか、コアタイルの矩形配列で反復されるか、あるいは他の素子と共にシステムオンアチップ(SOC)内に含まれることができる。コアFPGAタイルには、入出力モジュールによって囲まれた論理モジュールの配列が含まれるかも知れない。FPGAコアタイルには、読み出し専用メモリ(ROM)モジュールのような他の部品も含まれるかも知れない。水平及び垂直の配線チャネルは、FPGAコアタイル内の様々な部品間に内部接続を提供する。プログラム可能な接続が、プログラム可能な要素によって、配線資源間に提供される。この例において、FPGAコア700は、6つのFPGAタイル702を備える。本発明の利益を持つ分野の当業者には、他の構成も可能であり、本構成は一例として説明されただけであることは明らかであろう。FPGAコア600には、水平の半チャネルFPGAタイル706と、垂直の半チャネルFPGAタイル704と、角ブロック708も備わる。
図8は、唯一つのコアタイル804を持ったFPGAコア800を簡略化して示した図である。FPGAコア800は、それぞれが19個のメモリ列810を持つ2つの垂直の半チャネル802と、442個のメモリ列812および内蔵ECCユーザーSRAM(USRAM)回路のための8個の追加メモリ列814を持つ1つのコアタイル804とを備える。内蔵ECCユーザーSRAM(USRAM)回路は、以下でより詳細に説明される。CSRAMブロック800には、全部で488個のメモリ列がある。
上述したように、本発明の一実施形態において、あらゆる単一のワードライン内の全てのビットが“2重衝突”の距離よりも離れていることを保証されるように、4つのECCワードが各ワードライン上でかみ合わせられる。1つの例において、メモリ列の総数は488であり、従って本実施形態において、122ビットデータのワードラインを処理できる4つのECC復号器/符号化器がある(488/4=122)。当業者には明らかであるが、ECCは、パリティ付きハミング符号化/復号を用いる。一例では、単一の誤り訂正/2重誤り検出(SECDED)法(図4に示されている)を実現するのに、1つのデータワードラインごとに9つの特別なビットが必要であるか、メモリブロックごとに9×4=36個の追加ビットが必要である。
FPGA配線資源に対する遅延を広げるのに、36個の検査ビットを4つ一組で(各ECCワードラインに1ビット)FPGAコア902の横方向に渡って図9に示すように配するのが望ましい。各FPGAコア902は、4つの検査ビットに関連し、左の垂直の半チャネル906には4つの検査ビットがある。本明細書の利益を持つ分野の当業者ならば、上記データビットとワードラインと検査ビットの数は、FPGAコアの大きさ(には限定しないが)を含む様々な因子によって変更できることを理解するだろう。而して、上記データビットとワードラインと検査ビットの数は、例示の目的のみのために説明したのであり、決して本発明を限定することを考えていない。
図10は、図4で示した読み取りと書き込みの増幅器をより詳細ではあるが簡略化して示した図である。書き込み増幅器1010には、インバータ1016に結合されたイネーブル入力1015が備わる。インバータ1016には、Pチャネルトランジスタ1020と1034および2入力NORゲート1022に結合される出力がある。2入力NORゲート1022には、インバータ1042を通してプリチャージ回路1014の第1入力1041に結合される第2入力と、Nチャネルトランジスタ1026と1038のゲートに結合される出力がある。書き込み増幅器1010には、Pチャネルトランジスタ1018と1032およびNチャネルトランジスタ1028のゲートに結合され、またインバータ1030を通して1032と1040に結合されるデータ入力1027がある。書き込み増幅器1010のデータ入力1027は、図4の書き込みラッチ416に結合される。
さらに図10を参照すると、Pチャネルトランジスタ1018は、Vccに結合されたソースと、Pチャネルトランジスタ1020のソースに結合されたドレインとを持っている。Pチャネルトランジスタには、出力1024を備えたノードに結合されるドレインがある。Nチャネルトランジスタ1026には、出力1024を備えたノードに結合されるドレインと、接地電位に結合されるソースを持ったNチャネルトランジスタのドレインに結合されるソースとがある。Pチャネルトランジスタ1032には、Vccに結合されるソースと、Pチャネルトランジスタ1034のソースに結合されるドレインとがある。Pチャネルトランジスタには、論理列バー(LCB)出力1036を備えたノードに結合されるドレインがある。Nチャネルトランジスタ1038には、出力1036を備えたノードに結合されるドレインと、接地電位に結合されるソースを持つNチャネルトランジスタ1040のドレインに結合されるソースとがある。
プリチャージ回路1014は、インバータ1042に結合されるプリチャージ入力1041を備える。インバータ1042には、Pチャネルトランジスタ1046と1048のゲートに結合される出力を持ったインバータ1044の入力に結合される出力がある。Pチャネルトランジスタ1046には、Vccに結合されるソースと、LCB出力1024に結合されるドレインとがある。Pチャネルトランジスタ1048には、Vccに結合されるソースと、論理列(LC)出力1036に結合されるドレインがある。
プリチャージ期間は、全ての読み取りと書き込みの処理の間に発生する。例えば、プリチャージ入力1041は、プリチャージ中は論理0にあるだろう。プリチャージ入力1041が論理0にある時は、インバータ1044の入力は、ノード1047を強制的に論理0にし、かつ書き込み回路1010のプルダウントランジスタ1026と1038をディスエーブルにする論理1にある。プリチャージ入力1041が論理0にある時は、ノード1047を論理0にしてプリチャージPチャネルトランジスタ1046と1048をオンにし、LC出力1036とLCB出力1024の両ラインをVccに駆動する。
プリチャージ入力1041は、Pチャネルトランジスタ1052と1054を備えたVCS生成器への電流源入力(VCS)1051も備えている。VCS生成器は、LCライン1036とLCBライン1024へのブリード電流(bleed current)を供給する。
センスアンプ1012は、リセット/セット(RS)ラッチを備える。一実施形態において、RSラッチは、第1および第2の、たすきがけされた2入力ANDゲート1064と1066とで作られる。第1の2入力NANDゲート1064には、書き込み増幅器回路1010とプリチャージ回路1014からLCライン1036に結合された第1入力と、第2の2入力NANDゲート1066の出力に結合される第2入力と、第2の2入力NANDゲート1066の第1入力とインバータ1062に結合される出力とを持っている。第2の2入力NANDゲート1066には、第1の2入力NANDゲート1064の出力に結合される第1入力と、書き込み増幅器回路1010あるいはプリチャージ回路1014からLCBライン1024に結合される第2入力と、第1の2入力ANDゲート1064の第2入力に結合される出力とがある。インバータ1062には、データ出力ライン1068に結合される出力がある。
図11は、図3に示した、ユーザースタティックランダムアクセスメモリ(USRAM)用の、放射線に耐性のある読み取りと書き込みの増幅器をより詳細ではあるが簡略化して示した図である。書き込み増幅器1110は、インバータ1116に結合されるイネーブル入力1115を備える。インバータ1116には、Pチャネルトランジスタ1120と1134のゲートおよび2入力NORゲート1122に結合される出力がある。2入力NORゲート1122には、2入力NANDゲート1142を通ってプリチャージ回路1114の第1入力1141に結合される第2入力と、Nチャネルトランジスタ1126と1138のゲートに結合される出力とがある。書き込み増幅器1110には、Pチャネルトランジスタ118と1132およびNチャネルトランジスタ1128と1140のゲートに結合されるデータ入力1127がある。
さらに図11を参照すると、Pチャネルトランジスタ1118には、Vccに結合されるソースと、Pチャネルトランジスタ1120のソースに結合されるドレインとがある。Pチャネルトランジスタには、出力1124を備えるノードに結合されるドレインがある。Nチャネルトランジスタには、出力1124を備えるノードに結合されるドレインと、接地電位に結合されるソースを持ったNチャネルトランジスタ1128のドレインに結合されるソースとがある。Pチャネルトランジスタ1132には、Vccに結合されるソースと、Pチャネルトランジスタ1134のソースに結合されるドレインとがある。Pチャネルトランジスタには、LB出力1136を備えるノードに結合されるドレインがある。Nチャネルトランジスタ1138には、出力1136を備えるノードに結合されるドレインと、接地電位に結合されるソースを持つNチャネルトランジスタ1140のドレインに結合されるソースとがある。
プリチャージ回路1114は、2入力NANDゲート1142に結合される、プリチャージ入力1141とMASKB入力1143を備えている。2入力NANDゲート1142には、Pチャネルトランジスタ1146と1148のゲートに結合される出力を持ったインバータ1144に結合される出力がある。Pチャネルトランジスタには、Vccに結合されるソースと、LCB出力1124に結合されるドレインがある。Pチャネルトランジスタ1548には、Vccに結合されるソースと、LC出力1136に結合されるドレインがある。
プリチャージ期間は、全ての読み取り及び書き込み処理の間で発生する。例えば、プリチャージ入力1141は、プリチャージの間は論理0にあるだろう。プリチャージ入力1141が論理0にある時、インバータ1144の入力は、ノード1127を強制的に論理0にして書き込み回路1110のプルダウントランジスタ1126と1138をディスエーブルにする論理1にある。プリチャージ入力1141が論理0にある時は、強制的にノード1147を論理0にして、プリチャージPチャネルトランジスタ1146と1148をオンにし、LC出力1136とLCB出力1124を論理1にする。
MASKB入力1143は、ローにアサートされると、強制的にセンスアンプ1112に論理0の値を与え、あたかもプリチャージ入力1141がローにアサートされたように、強制的にプリチャージ回路をプリチャージ状態にする。これによって、USRAMビットが最初のローディングの後に値を変えるかも知れないので周知のようにバックグラウンドECCの間はマスクされなくてはならないため、LC/LCB上で検知されたデータがマスクされる。動的用途においてUSRAMビットは、最初に特定のビットにロードされた値に関わらず、リフレッシュの目的のために論理0を備えている。
プリチャージ回路1114は、Pチャネルトランジスタ1152と1154を備えたVCS生成器へのVSC入力1151も備えている。VCS生成器は、LCライン1136とLCBライン1124へのブリード電流を提供する。
センスアンプ1112は、RSラッチを備えている。一実施形態では、RSラッチは、交差結合した3入力NANDゲート1164と2入力NANDゲート1166によって作られている。3入力NANDゲート1164には、書き込み増幅器1110とプリチャージ回路1114からのLCライン1136に結合される第1入力と、MASKB入力ライン1143に結合される第2入力と、2入力NANDゲート1166の出力に結合される第3入力と、2入力NANDゲート1166とインバータ1162に結合される出力とがある。2入力NANDゲート1166には、3入力NANDゲート1164の第3出力に結合される第1入力と、書き込み増幅器回路1110もしくはプリチャージ回路1114のいずれかからのLCBライン1124に結合される第2入力と、3入力NANDゲート1164の第3入力に結合される出力とがある。
図12は、本発明の電子的訂正符号回路(ECC)を備えたUSRAMを簡略化して示したブロック図である。USRAM回路1200は、書きこみデータライン1208に結合されるECC符号化器1210を持った書き込みポート1602が備わる。書き込みデータライン1208は、信号ライン1209を介してUSRAMコア1204に結合され、信号ライン1211を介して、ECC符号化器を通りUSRAM ECCに結合される。ECC符号化器は、書き込み処理が始まる前に、書き込みデータ入力ライン1208から検査ビットを生成する。読み取りポート1206には、信号ライン1218を介してUSRAMコアに結合され、信号ライン1220を介してUSRAM ECCに結合される、ECC復号器を含む。ECC復号器1214には、読み取りライン1216に結合される出力がある。ECC復号器1214は、記憶したデータと試験ビットを用いて、読み取り処理の後に必要な時は、単一訂正(single correction)を行う。読み取りポートは、USRAMブロックから離れたとき、データをECC訂正する。
スタティックな用途(AROM等)において、マスクすることは必要ない。動的な用途(RAM,FIFO等)では、マスクすることが必要である。
この明細書から、当業者には、ここに説明したシステムの実施形態に代わる様々なものを、本システムを実行するのに使用することができることは明らかであろう。添付の特許請求の範囲が本システムの範囲を定義し、これらの特許請求の範囲とその等価物の範囲内にある構成と方法とが特許請求の範囲によって網羅されることを意図している。
論理ゲートの簡略化した図である。 帯電した粒子が半導体の中に衝突し、正孔の航跡と電子対を作るのを示した図である。 粒子が交差結合したトランジスタに衝突するのを示した図である。 ラッチを反転させるのに必要な、ぎりぎりの電荷を作り出すことが全くできない粒子に対する波形である。 本発明で開示された、放射線に耐性のある読み取り書き込み回路を持ったSRAMメモリアーキテクチャを簡略化して示した図である。 CMOSインターフェイス回路の簡略化したブロック図である。 図4においてECCラッチと書き込みラッチとして示した、放射線に強いラッチの簡略化した図である。 図4の3の多数決回路に対する論理回路図と真理値表を示している。 複数のコアタイルを持った集積回路内の、フィールドプログラマブルゲートアレイ(FPGA)コアの簡略化して示したブロック図である。 1つだけコアタイルを持ったFPGAコアを簡略化して示した図である。 2つのFPGAタイルを持ったFPGAコア内でのEECチェックビットの配置の一実施形態を簡略化して示した図である。 図4で示した構成スタティックランダムアクセスのための、放射線に耐性のある読み取り書き込み増幅器を、簡略化してはあるがより詳細に示した図である。 ユーザースタティックランダムアクセス(USRAM)のための、図3に示した、放射線に耐性のある読み取り書き込み増幅器を、簡略化してはあるがより詳細に示した図である。 本発明の電子的訂正符号回路を備えたUSRAMを簡略化して示したブロック図である。
符号の説明
300…CRAMアーキテクチャ
312…EPROM制御ブロック
313…信号ライン
314…行計数器
316…FPGAコア
318…放射線に耐性のある読み取り/書き込み増幅器及び誤り訂正符号回路
320…放射線に耐性のあるシフトレジスタ
324…2入力マルチプレクサ
326…周期的冗長検査回路(CRC)
328…読み取り/書き込み増幅器
330…列計数器
332…制御論理回路

Claims (9)

  1. 論理モジュールと、
    前記論理モジュールに結合される配線資源と、
    前記論理モジュールと前記配線資源とを制御する構成データを持った構成データラインと、
    前記構成データラインに結合される誤り訂正回路と
    を備え、
    前記誤り訂正回路は、前記構成データの複数回の読み取りに対して前記構成データ内の誤りを分析し、複数の分析結果からの多数決論理回路の決定に基づく訂正を行うことを特徴とする放射線に耐性のあるプログラマブル論理素子。
  2. 前記誤り訂正回路は、さらに、
    放射線に耐性のある読み取り/書き込み増幅器と、
    前記放射線に耐性のある読み取り/書き込み増幅器に結合される、放射線に耐性のあるシフトレジスタと
    を備えることを特徴とする請求項1記載の放射線に耐性のあるプログラマブル論理素子。
  3. 前記誤り訂正回路は、さらに、
    前記放射線に耐性のある読み取り/書き込み増幅器と前記構成データラインとの間で結合される多数決ブロックを備えることを特徴とする請求項2記載の放射線に耐性のあるプログラマブル論理素子。
  4. 前記誤り訂正回路は、さらに、Qcritあるいはより大きな衝突に十分耐えられる大きさの少なくとも1つのトランジスタを持った複数のラッチを備え、前記ラッチは、前記多数決ブロックに結合されることを特徴とする請求項3記載の放射線に耐性のあるプログラマブル論理素子。
  5. 前記誤り訂正回路は、さらに、
    各々が複数の入力と1つの出力とを持った、複数の電子的符号訂正(ECC)ラッチと、
    1つの入力と複数の出力とを持った第1マルチプレクサと、
    前記複数のECCラッチの少なくとも1つの出力に結合され、また前記マルチプレクサの前記出力の少なくとも1つに結合される入力を持ち、2入力マルチプレクサの第1入力に結合される出力を持った多数決論理回路と、
    前記第1マルチプレクサの前記複数の出力の1つに結合され、前記2入力マルチプレクサの第2入力に結合される1つの出力を持つ放射線に耐性のあるシフトレジスタと、
    前記2入力マルチプレクサの出力に結合される1つの入力を持った書き込みラッチと、
    前記書き込みラッチの出力と、前記第1マルチプレクサの複数の出力の少なくとも1つとに結合される1つの入力を持った読み取り及び書き込み増幅器と
    を備えることを特徴とする請求項1記載の放射線に耐性のあるプログラマブル論理素子。
  6. 前記多数決回路は、さらに
    3つの2入力ANDゲートと、
    前記3つの2入力ANDゲートの各々の出力に結合される入力を持った3入力ANDゲートと
    を備えることを特徴とする請求項5記載の放射線に耐性のあるプログラマブル論理素子。
  7. 前記読み取り及び書き込み増幅器は、さらに、
    複数の入力と複数の出力とを持った書き込み増幅器回路と、
    前記書き込み増幅器の前記入力に結合され、複数の出力を持ったプリチャージ回路と、
    前記書き込み増幅器回路の前記出力と、前記プリチャージ回路の前記出力とに結合される入力を持ち、1つの出力を持つセンス回路と
    を備えることを特徴とする請求項5記載の放射線に耐性のあるプログラマブル論理素子。
  8. 前記ECCラッチは、さらに、
    前記ECCラッチへの入力を作る第1ノードに結合されるソースと、第2ノードに結合されるドレインと、論理モジュール信号ラインに結合されるゲートとを持った、第1公称寸法の第1トランジスタと、
    前記第1ノードに結合されるソースと、前記第2ノードに結合されるドレインと、反転された論理モジュール信号ラインに結合されるゲートとを持った公称寸法の第2トランジスタと、
    前記第2ノードに結合される第1入力と、リセット信号ラインに結合される第2入力とを持った第1の2入力NANDゲートと、
    第1の2入力NANDゲートの出力に結合される第1入力と、一組の信号ラインに結合される第2入力とを持ち、前記ECCラッチの出力への出力を持った第2の2入力NANDゲートと、
    第3ノードに結合されるソースと、第4ノードに結合されるドレインと、第2論理モジュール信号ラインに結合されるゲートとを持った、より大きな第2の大きさの第3トランジスタと、
    前記第3ノードに結合されるソースと、前記第4ノードに結合されるドレインと、反転された第2論理モジュール信号ラインに結合されるゲートとを持った、より大きな第2の大きさの第4トランジスタと
    を備え、
    前記第3ノードは、前記第2の2入力NANDゲートの前記出力に結合され、前記第4ノードは、前記第1の2入力NANDゲートの前記第1入力に結合されることを特徴とする請求項5記載の放射線に耐性のあるプログラマブル論理素子。
  9. プログラマブル論理素子をプログラムするための構成データを持ったプログラマブル論理素子内の誤り訂正の方法において、
    構成データのバックグラウンド読み取り段階と、
    誤りのための前記構成データを分析する段階と、
    もし誤りが見付かれば、前記構成データを訂正する段階と、
    もし誤りが見付かれば、前記構成データを書き換える段階と
    を備え
    前記構成データのバックグラウンド読み取り段階は、複数回繰り返され、
    誤りのための前記構成データを分析する前記段階は、前記複数回読み取られた構成データそれぞれに対する分析結果を用いて、多数決論理回路で実践されることを特徴とする方法。
JP2005513138A 2002-12-30 2003-12-23 放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置 Expired - Lifetime JP4358187B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/335,234 US6838899B2 (en) 2002-12-30 2002-12-30 Apparatus and method of error detection and correction in a radiation-hardened static random access memory field-programmable gate array
PCT/US2003/041359 WO2005067147A1 (en) 2002-12-30 2003-12-23 Apparatus and method of error detection and correction in a radiation-hardened static random access memory field-programmable gate array

Publications (2)

Publication Number Publication Date
JP2006519511A JP2006519511A (ja) 2006-08-24
JP4358187B2 true JP4358187B2 (ja) 2009-11-04

Family

ID=32655295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005513138A Expired - Lifetime JP4358187B2 (ja) 2002-12-30 2003-12-23 放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置

Country Status (6)

Country Link
US (6) US6838899B2 (ja)
EP (2) EP1584138B1 (ja)
JP (1) JP4358187B2 (ja)
AU (1) AU2003304697A1 (ja)
DE (1) DE60329628D1 (ja)
WO (1) WO2005067147A1 (ja)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7310757B2 (en) * 2001-10-11 2007-12-18 Altera Corporation Error detection on programmable logic resources
US7269814B1 (en) * 2002-10-08 2007-09-11 Actel Corporation Parallel programmable antifuse field programmable gate array device (FPGA) and a method for programming and testing an antifuse FPGA
US6838899B2 (en) * 2002-12-30 2005-01-04 Actel Corporation Apparatus and method of error detection and correction in a radiation-hardened static random access memory field-programmable gate array
US7386826B1 (en) * 2003-06-24 2008-06-10 Xilinx, Inc. Using redundant routing to reduce susceptibility to single event upsets in PLD designs
US7057180B2 (en) * 2003-07-18 2006-06-06 International Business Machines Corporation Detector for alpha particle or cosmic ray
US7444565B1 (en) * 2003-11-24 2008-10-28 Itt Manufacturing Enterprises, Inc. Re-programmable COMSEC module
US7328377B1 (en) 2004-01-27 2008-02-05 Altera Corporation Error correction for programmable logic integrated circuits
US7426678B1 (en) 2004-07-20 2008-09-16 Xilinx, Inc. Error checking parity and syndrome of a block of data with relocated parity bits
US7320064B2 (en) * 2004-07-23 2008-01-15 Honeywell International Inc. Reconfigurable computing architecture for space applications
US7343579B2 (en) * 2004-11-30 2008-03-11 Physical Sciences Reconfigurable environmentally adaptive computing
US7698511B2 (en) * 2005-05-19 2010-04-13 Honeywell International Inc. Interface for writing to memories having different write times
JP4982110B2 (ja) * 2005-06-02 2012-07-25 株式会社東芝 半導体集積回路装置
FR2888423B1 (fr) * 2005-07-05 2008-04-11 Iroc Technologies Sa Cellule de memorisation durcie
US7212447B2 (en) * 2005-08-04 2007-05-01 Micron Technology, Inc. NAND flash memory cell programming
US7374134B2 (en) * 2005-08-29 2008-05-20 Honeywell International Inc. Systems and methods for semi-permanent, non-precision inspace assembly of space structures, modules and spacecraft
US20070046781A1 (en) * 2005-08-29 2007-03-01 Honeywell International Inc. Systems and methods for processing digital video data
US7579879B2 (en) * 2005-10-27 2009-08-25 Honeywell International Inc. Voting scheme for analog signals
US7568136B2 (en) * 2005-11-08 2009-07-28 M2000 Sa. Reconfigurable system and method with corruption detection and recovery
US7539914B1 (en) * 2006-01-17 2009-05-26 Xilinx, Inc. Method of refreshing configuration data in an integrated circuit
US8115515B2 (en) * 2006-03-28 2012-02-14 Honeywell International Inc. Radiation hardened differential output buffer
US7525866B2 (en) * 2006-04-19 2009-04-28 Freescale Semiconductor, Inc. Memory circuit
US7702978B2 (en) * 2006-04-21 2010-04-20 Altera Corporation Soft error location and sensitivity detection for programmable devices
WO2008011232A2 (en) * 2006-06-07 2008-01-24 Bae Systems Information And Electronic Systems Integration Inc. Universal non-volatile support device for supporting reconfigurable processing systems
US20080022081A1 (en) * 2006-07-18 2008-01-24 Honeywell International Inc. Local controller for reconfigurable processing elements
US7805545B2 (en) * 2007-02-07 2010-09-28 Honeywell International Inc. Method for implementing a control channel in a system of circumvention and recovery
US7657785B2 (en) * 2007-02-07 2010-02-02 Honeywell International Inc. System of circumvention and recovery in a multi-function system
US7761721B2 (en) * 2007-04-12 2010-07-20 Honeywell International Inc. System of integrated environmentally hardened architecture for space application
US8122317B1 (en) 2007-06-27 2012-02-21 Arizona Board Of Regents For And On Behalf Of Arizona State University Two-dimensional parity technique to facilitate error detection and correction in memory arrays
US7937647B2 (en) * 2007-07-27 2011-05-03 Actel Corporation Error-detecting and correcting FPGA architecture
US7656189B1 (en) * 2007-07-31 2010-02-02 Xilinx, Inc. Trust controller for detecting unauthorized logic in a circuit design
US7965098B2 (en) * 2007-12-10 2011-06-21 Bae Systems Information And Electronic Systems Integration Inc. Hardened current mode logic (CML) voter circuit, system and method
US7589558B1 (en) * 2008-02-27 2009-09-15 Xilinx, Inc. Method and apparatus for configuring an integrated circuit
US7626415B1 (en) 2008-02-27 2009-12-01 Xilinx, Inc. Method and apparatus for configuring an integrated circuit
DE102008045717A1 (de) * 2008-09-04 2010-03-11 Rohde & Schwarz Gmbh & Co. Kg Flugfunkgerät und Verfahren mit dynamisch rekonfigurierbarer Redundanz
US8489919B2 (en) * 2008-11-26 2013-07-16 Arizona Board Of Regents Circuits and methods for processors with multiple redundancy techniques for mitigating radiation errors
US9191009B1 (en) * 2009-05-07 2015-11-17 Arizona Board Of Regents, For And On Behalf Of Arizona State University Radiation hardened by design digital input/output circuits and related methods
CN101834611B (zh) * 2010-05-06 2012-11-21 复旦大学 一种纠正多比特错误的ecc电路
US8539403B2 (en) * 2011-07-03 2013-09-17 International Business Machines Corporation Reducing observability of memory elements in circuits
DE102012204361A1 (de) 2012-03-20 2013-09-26 Siemens Aktiengesellschaft Verfahren zum Erkennen einer fehlerhaften Funktionsweise einer Schnittstelleneinrichtung, Schaltungsanordnung mit einer Schnittstelleneinrichtung sowie medizinisches Gerät mit einer solchen Schaltungsanordnung
US9201727B2 (en) 2013-01-15 2015-12-01 International Business Machines Corporation Error protection for a data bus
US20140201599A1 (en) * 2013-01-15 2014-07-17 International Business Machines Corporation Error protection for integrated circuits in an insensitive direction
US9021328B2 (en) 2013-01-15 2015-04-28 International Business Machines Corporation Shared error protection for register banks
US9041428B2 (en) 2013-01-15 2015-05-26 International Business Machines Corporation Placement of storage cells on an integrated circuit
US9043683B2 (en) 2013-01-23 2015-05-26 International Business Machines Corporation Error protection for integrated circuits
JP2014174812A (ja) * 2013-03-11 2014-09-22 Ricoh Co Ltd 集積回路、画像処理装置、方法およびプログラム
CN103325411B (zh) * 2013-06-20 2016-05-04 上海航天测控通信研究所 一种用于fpga的抗单粒子翻转加固系统及其方法
US9075111B2 (en) * 2013-10-07 2015-07-07 King Fahd University Of Petroleum And Minerals Generalized modular redundancy fault tolerance method for combinational circuits
US9235461B2 (en) * 2014-02-14 2016-01-12 Wisconsin Alumni Research Foundation Method and apparatus for soft error mitigation in computers
CN103840823B (zh) * 2014-02-14 2017-09-05 北京时代民芯科技有限公司 基于jtag接口的宇航fpga通用刷新电路的实现方法
US9490968B2 (en) * 2014-02-27 2016-11-08 Cavium, Inc. CDR voter with improved frequency offset tolerance
US9672880B2 (en) 2014-06-16 2017-06-06 Honeywell International Inc. Radiation upset detection
CN106199392B (zh) * 2016-06-27 2019-02-12 中国科学院深圳先进技术研究院 芯片单粒子效应探测方法及装置
US9965356B2 (en) * 2016-09-02 2018-05-08 Alibaba Group Holding Limited Method and system of high-availability PCIE SSD with software-hardware jointly assisted implementation to enhance immunity on multi-cell upset
CN107389211B (zh) * 2017-06-29 2019-03-12 西安邮电大学 一种二进制码转温度计码电路
US10305478B1 (en) 2018-01-03 2019-05-28 Honeywell International Inc. Compensating for degradation of electronics due to radiation vulnerable components
US10797701B2 (en) 2018-01-03 2020-10-06 Honeywell International Inc. Compensating for degradation of electronics due to radiation vulnerable components
CN108183706B (zh) * 2018-01-29 2021-09-07 中国人民解放军国防科技大学 一种抗单粒子翻转的寄存器文件存储阵列写单元
US10901097B1 (en) * 2018-03-05 2021-01-26 Xilinx, Inc. Method and apparatus for electronics-harmful-radiation (EHR) measurement and monitoring
CN108766491B (zh) * 2018-06-01 2019-05-31 北京理工大学 一种sram型fpga片内跟踪环路单粒子翻转错误修复方法
CN109361387B (zh) * 2018-08-02 2022-02-22 合肥工业大学 一种低成本三模冗余锁存器
US11205031B2 (en) * 2019-02-25 2021-12-21 Qiang Huang System and method for facilitating use of commercial off-the-shelf (COTS) components in radiation-tolerant electronic systems
CN110311656B (zh) * 2019-07-03 2023-01-31 西安微电子技术研究所 一种自适应抗单粒子翻转的异步复位和置位d触发器
CN111143107B (zh) * 2019-11-13 2022-06-17 广东高云半导体科技股份有限公司 一种fpga单粒子反转校验电路和方法
FR3104798B1 (fr) * 2019-12-17 2022-02-18 Thales Sa Registre a triplication comportant un dispositif de securisation
CN111653306B (zh) * 2020-07-07 2022-08-26 中国人民解放军国防科技大学 用于单端口sram的微体系结构级通用加固装置
CN113655745B (zh) * 2021-08-19 2023-04-07 无锡中微亿芯有限公司 一种实现配置码流自动检纠错的fpga
US11996843B2 (en) 2022-01-03 2024-05-28 Texas Instruments Incorporated Redundant analog built-in self test
CN115543683B (zh) * 2022-09-21 2023-07-18 深圳市紫光同创电子有限公司 单粒子翻转纠错方法、装置、电子设备以及可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2951946A1 (de) * 1979-12-22 1981-07-02 Ibm Deutschland Gmbh, 7000 Stuttgart Fehlererkennungs- und -korrektureinrichtung fuer eine logische anordnung
US4876220A (en) * 1986-05-16 1989-10-24 Actel Corporation Method of making programmable low impedance interconnect diode element
US6101624A (en) * 1998-01-21 2000-08-08 International Business Machines Corporation Method and apparatus for detecting and correcting anomalies in field-programmable gate arrays using CRCs for anomaly detection and parity for anomaly correction
US6237124B1 (en) * 1998-03-16 2001-05-22 Actel Corporation Methods for errors checking the configuration SRAM and user assignable SRAM data in a field programmable gate array
US6104211A (en) * 1998-09-11 2000-08-15 Xilinx, Inc. System for preventing radiation failures in programmable logic devices
US6492206B2 (en) * 2000-12-12 2002-12-10 Actel Corporation Antifuse with improved radiation SEDR
US6324102B1 (en) * 2000-12-14 2001-11-27 Actel Corporation Radiation tolerant flash FPGA
US7036059B1 (en) * 2001-02-14 2006-04-25 Xilinx, Inc. Techniques for mitigating, detecting and correcting single event upset effects in systems using SRAM-based field programmable gate arrays
US7111224B1 (en) * 2001-02-28 2006-09-19 Xilinx, Inc. FPGA configuration memory with built-in error correction mechanism
US6838899B2 (en) 2002-12-30 2005-01-04 Actel Corporation Apparatus and method of error detection and correction in a radiation-hardened static random access memory field-programmable gate array

Also Published As

Publication number Publication date
EP1584138B1 (en) 2009-10-07
EP1956713A1 (en) 2008-08-13
US7288957B2 (en) 2007-10-30
US20080007288A1 (en) 2008-01-10
JP2006519511A (ja) 2006-08-24
US20050040844A1 (en) 2005-02-24
US20060145722A1 (en) 2006-07-06
US20070103966A1 (en) 2007-05-10
DE60329628D1 (de) 2009-11-19
AU2003304697A1 (en) 2005-08-12
US7075328B2 (en) 2006-07-11
EP1584138A4 (en) 2007-08-22
US6838899B2 (en) 2005-01-04
EP1584138A1 (en) 2005-10-12
US20080297191A1 (en) 2008-12-04
US20040124876A1 (en) 2004-07-01
WO2005067147A1 (en) 2005-07-21
US7173448B2 (en) 2007-02-06
US7443191B2 (en) 2008-10-28

Similar Documents

Publication Publication Date Title
JP4358187B2 (ja) 放射線に耐性のある、スタティックramのフィールドプログラマブルゲートアレイにおける誤りの検出と訂正の方法及び装置
Vargas et al. SEU-tolerant SRAM design based on current monitoring
US7126842B2 (en) Deglitching circuits for a radiation-hardened static random access memory based programmable architecture
US7236001B2 (en) Redundancy circuits hardened against single event upsets
US8355292B2 (en) Volatile memory elements with soft error upset immunity
CN102918598B (zh) 具有软错误翻转免疫性的存储器元件
JP6974437B2 (ja) 投票回路および自己修正ラッチ
US6549443B1 (en) Single event upset resistant semiconductor circuit element
US8797790B1 (en) Memory elements with soft error upset immunity
JP2007519144A (ja) 放射線耐性のあるsramビット
US7095262B2 (en) High reliability triple redundant latch with integrated testability
de Lima et al. Single event upset mitigation techniques for programmable devices
EP3416171B1 (en) Integrated circuits with complementary non-volatile resistive memory elements
Baloch et al. Design of a novel soft error mitigation technique for reconfigurable architectures
Radu et al. Verilog HDL methodology for redundancy in digital circuits targeting FPGA technology for highly reliable applications
Blum VLSI implementation of cross-parity and modified DICE fault tolerant schemes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060810

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090127

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: 20090707

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: 20090805

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4358187

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130814

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term