JPH10177496A - エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ - Google Patents

エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ

Info

Publication number
JPH10177496A
JPH10177496A JP8352921A JP35292196A JPH10177496A JP H10177496 A JPH10177496 A JP H10177496A JP 8352921 A JP8352921 A JP 8352921A JP 35292196 A JP35292196 A JP 35292196A JP H10177496 A JPH10177496 A JP H10177496A
Authority
JP
Japan
Prior art keywords
signal
logic circuit
logic
error
output
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.)
Pending
Application number
JP8352921A
Other languages
English (en)
Inventor
Makoto Hanawa
誠 花輪
Yoshio Miki
良雄 三木
Tatsuya Kawashita
達也 川下
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8352921A priority Critical patent/JPH10177496A/ja
Priority to US08/989,414 priority patent/US5881078A/en
Publication of JPH10177496A publication Critical patent/JPH10177496A/ja
Pending legal-status Critical Current

Links

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/085Error detection or correction by redundancy in data representation, e.g. by using checking codes using codes with inherent redundancy, e.g. n-out-of-m codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 【課題】 プロセッサなどの論理LSIにおいて、高性能
を確保したまま、小規模の追加回路で、動作時のソフト
エラーに対する耐性を向上させる。 【解決手段】 個々の論理回路200、201、202、203は、
各論理ゲート毎に正極性の信号と負極性の信号を出力す
る複数段の論理ゲートから成る論理回路であり、ラッチ
151は、上記論理回路の正極性の出力信号と負極性の出
力信号を別々にラッチする。最後の論理回路段200、201
のそれぞれの正極性の出力信号と負極性の出力信号は、
正極性又は負極性のどちらか一方の信号にしてラッチ15
2にそれぞれラッチされる。ラッチ152の直前で論理回路
200と201の正極性の出力信号と負極性の出力信号は、そ
れぞれ正論理のANDゲート161、162とNORゲート171、172
に入力され、その出力がORゲート163、173に入力され、
そのいずれかの出力が「真」となるとエラー有りとな
り、命令の再実行が行われる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセッサなどの
論理LSIにおいて、動作時のソフトエラーに対する耐
性を向上させる技術に係り、特に、超高性能なマイクロ
プロセッサに好適な技術に関する。
【0002】
【従来の技術】高速動作可能な論理LSIは、ダイナミ
ック論理回路で実現することができる。ダイナミック論
理回路は、プリチャージによりダイナミックノードに蓄
積された電荷を、論理関数に従って、保持するか、或い
は放電するかを制御することで、出力信号の電位を決定
する。そのため、動作時に貫通電流が流れないので、高
速動作が可能である。しかし、ダイナミックノードに蓄
積された電荷は、α線の入射などのノイズにより、誤っ
て放電してしまう危険性がある。このとき、論理関数の
結果が正しくダイナミック論理回路の出力に反映できな
くなり、エラーとなる。このようなエラーは、定常的に
発生するわけではなく、α線の入射などのノイズが発生
した時にだけ起こることから、ソフトエラーと呼ばれて
いる。
【0003】上記のソフトエラーに対する耐性を単体ゲ
ートレベルで向上させつつ、高速動作を可能ならしめる
技術が、特開平2−168724号に開示されている
(以下、第1の従来技術と呼ぶ)。プリチャージ動作後
にダイナミックノードの電荷を保持するノイズ抑制手段
と、論理関数を構成するnMOS回路網の内部ノードを
プリチャージする手段により、実現されている。ダイナ
ミックノードの電荷を保持するノイズ抑制手段を強力に
すると、ソフトエラーを充分に抑止することができる。
しかし一方、論理動作時の貫通電流が大きくなり、高速
動作の障害になる。そこで、論理関数を構成するnMO
S回路網の内部ノードをプリチャージすることにより、
チャージシェアによるノイズの発生を防止し、ダイナミ
ックノードの電荷を保持するノイズ抑制手段では、α線
などの入射によるノイズの発生だけを抑止することにし
ている。したがって、ノイズ抑制手段の強さを、α線な
どの入射によるノイズの発生を抑止するのに最低限必要
な強さに低減することができるので、論理動作時の貫通
電流も小さくでき、或程度の高速動作が可能になる。
【0004】ソフトエラーに対する耐性を、単体ゲート
レベルでなく、或程度大きな論理ブロックで確保した例
が、「1982 IEEE International Solid-State Circuits
Conference DIGEST OF TECHNICAL PAPERS」の54−5
5頁に開示されている(以下、第2の従来技術と呼
ぶ)。データにパリティを付加してデータの誤りを検出
すると共に、論理回路を2重化して、それらの出力を比
較することにより、論理回路中の誤りを検出する方法で
ある。α線などの入射によるノイズの発生を抑止するの
ではなく、ノイズによるソフトエラーを確実に検出し
て、正常動作と誤動作を区別する手段を提供したもので
ある。
【0005】論理回路の2重化と同等の効果がある論理
回路の構成法について、「1996 IEEE International So
lid-State Circuits Conference TUTORIAL#4」資料の2
1頁に記載がある(以下、第3の従来技術と呼ぶ)。単
体ゲートを構成するダイナミック論理回路において、正
極性の出力と負極性の出力の両方とも生成する回路であ
る。ダイナミック回路であるので、プリチャージ時に出
力信号は両方とも低電位になり、論理動作時にどちらか
一方の出力信号だけが高電位に変化する。本来、両方の
出力信号が同時に高電位になることはないので、もし、
両方の出力信号が同時に高電位になった場合は、エラー
であることが検出可能である。
【0006】
【発明が解決しようとする課題】上記第1の従来技術で
は、LSIの加工レベルとして0.5μm、また電源電
圧として4.5Vを想定している。今後、LSIの微細
化が進み、加工レベルが0.25μm以下、また電源電
圧が2.0V以下になることが想定されている。ダイナ
ミックノードに蓄積される電荷量は、LSIの微細化と
共に、また、電源電圧の低下と共に減少する。したがっ
て、上記第1の従来技術のように、ノイズ抑制手段の強
さを、α線などの入射によるノイズの発生を抑止するの
に最低限必要な強さに低減したとしても、LSIの微細
化が進むと、従来の加工レベルの時に比べて、大変強い
ノイズ抑止手段とせざるを得ない。そのため、論理動作
時の貫通電流も大きくなり、高速動作が困難になるとい
う課題が生じる。そこで、本発明の第1の目的は、微細
な加工レベルのLSIにおいても、論理回路の高速動作
に悪影響を及ぼさない、有効な耐ソフトエラー手段を提
供することである。また上記第2の従来技術では、ソフ
トエラーの発生を、パリティ回路や2重化論理回路など
専用回路を用いて検出していた。通常の論理回路を構成
する単体ゲートでは、ソフトエラーの発生を抑止する必
要がないので、高速動作時の障害にはならない。しか
し、専用回路を用いて検出しているため、回路規模が大
きくなるという課題があった。そこで、本発明の第2の
目的は、回路規模の増大を最小限に抑えながら、ソフト
エラーを検出する手段を提供することである。上記第3
の従来技術では、正極性の出力と負極性の出力の両方と
も生成するダイナミック論理回路において、両方の出力
信号が同時に高電位になった場合は、エラーであること
が示されている。しかし、上記の技術は、単体ゲートを
構成するダイナミック論理回路について述べたものであ
り、具体的なエラー検出回路の検討、およびエラー検出
後の動作について、何ら配慮されていない。そこで、本
発明の第3の目的は、上記第3の従来技術で開示されて
いるダイナミック論理回路のエラーを、積極的に検出
し、ソフトエラー耐性の高い論理LSIを構成する手段
を提供することである。
【0007】
【課題を解決するための手段】上記課題を解決するた
め、本発明は、各論理ゲート毎に正極性の信号と負極性
の信号を出力する複数段の論理ゲートから成る論理回路
において、該論理回路の論理信号の出力時に、正極性の
出力信号と負極性の出力信号を比較し、互いに逆の信号
レベルの関係になっていないことを検出する検出手段を
有し、エラー検出機能を有するようにしている。
【0008】また、前記論理回路の論理ゲートはプリチ
ャージ型論理ゲートであり、プリチャージ時には、前記
正極性の出力信号及び前記負極性の出力信号の両方と
も、同一の信号レベルにリセットされ、論理動作時にど
ちらか一方の信号のみが反転する論理ゲートであり、前
記信号レベルの関係を検出する検出手段は、前記論理動
作時においてのみ、前記論理回路の正負両極性の出力信
号の関係を比較するようにしている。
【0009】また、前記論理回路を多段に接続し、該多
段の論理回路の正極性の出力信号及び負極性の出力信号
は正極性の信号又は負極性の信号のどちらかに変換され
て出力される多段の論理回路において、前記正極性の出
力信号と負極性の出力信号を比較し、互いに逆の信号レ
ベルの関係になっていないことを検出する検出手段が、
前記正極性の出力信号及び負極性の出力信号が正極性の
信号又は負極性の信号のどちらかに変換される直前にの
み設置されているようにしている。
【0010】また、前記多段の論理回路の途中段にデー
タラッチを有する場合、前記データラッチは、前記正極
性の出力信号及び前記負極性の出力信号のそれぞれを独
立に保持するデータラッチであり、前記信号レベルの関
係を検出する手段は、前記正極性の出力信号及び前記負
極性の出力信号が正極性の信号又は負極性の信号のどち
らかに変換される直前にのみ設置されているようにして
いる。
【0011】また、前記のエラー検出機能を有する論理
回路を内部に含むプロセッサにおいて、ある処理を実行
中に、論理回路におけるエラーが検出された場合、該エ
ラーの発生した処理を途中でキャンセルし、再度初めか
ら該処理を実行し直す手段を有するようにしている。
【0012】また、前記エラー検出機能を有する論理回
路を内部に含み、命令により処理が制御されているプロ
セッサにおいて、ある命令を実行中に、論理回路におけ
るエラーが検出された場合、該エラーの発生した命令の
実行を途中でキャンセルし、再度初めから該命令を実行
し直す手段を有するようにしている。
【0013】
【発明の実施の形態】以下、本発明に係るエラー検出機
能を有する論理回路、及び該論理回路を備え、エラー発
生時に処理を再実行するマイクロプロセッサを図面に示
した実施例を参照して、更に詳細に説明する。なお、図
1〜図3における同一の記号は、同一物又は類似物を表
示するものとする。
【0014】<マイクロプロセッサの構成及び動作>図
1は、論理回路のエラー検出回路を有し、エラー発生時
には処理を再実行するマイクロプロセッサの構成図であ
る。本実施例のマイクロプロセッサは、プログラムメモ
リ110に格納されている命令を読み出し、読み出した
命令に従って処理を実行する。命令の処理にあたって、
本実施例では6段のパイプライン処理を採用している。
パイプライン処理の各段は、 (1)命令アドレスの計算(IAステージ) (2)命令の読み出し(IFステージ) (3)命令の解読(IDステージ) (4)実行の第1ステップ(E1ステージ) (5)実行の第2ステップ(E2ステージ) (6)命令の完了(CTステージ) である。パイプライン処理の各段で処理中の命令のアド
レスは、それぞれレジスタに保持される。IFステージ
で処理中の命令アドレスはレジスタ121に、以下、I
Dステージ、E1ステージ、E2ステージ、CTステー
ジ で処理中の命令アドレスは、それぞれレジスタ12
2、123、124、125に保持される。
【0015】(1)IAステージ IAステージでは、次に処理すべき命令のアドレスを決
定する。直前の命令が分岐命令であった場合は、レジス
タ131の内容を次命令のアドレスとしてレジスタ12
1にセットする。直前の命令が分岐命令以外の命令であ
った場合は、プログラムカウンタ132において、直前
の命令のアドレスにその命令の長さを加算し、レジスタ
121にセットする。 (2)IFステージ IFステージでは、レジスタ121に保持されている命
令アドレスを用いてプログラムメモリ110から命令を
読み出す。また、レジスタ121に保持していた命令ア
ドレスはレジスタ122に転送する。 (3)IDステージ IDステージでは、プログラムメモリ110から読み出
した命令を、命令デコーダ111によって解読し、以降
のパイプライン処理に必要な制御信号を生成する。ま
た、レジスタ122に保持していた命令アドレスはレジ
スタ123に転送する。 (4)E1ステージ E1ステージでは、命令デコーダ111によって生成さ
れた制御信号に従い命令実行の第1ステップを実行す
る。また、レジスタ123に保持していた命令アドレス
はレジスタ124に転送する。 (5)E2ステージ E2ステージにおいてもE1ステージと同様に、命令デ
コーダ111によって生成された制御信号に従い命令実
行の第2ステップを実行する。また、レジスタ124に
保持していた命令アドレスはレジスタ125に転送す
る。 (6)CTステージ CTステージでは、命令の実行が正常に完了できたかを
確認する。正常に完了できなかった場合は、レジスタ1
25に保持していた命令アドレスをレジスタ126に転
送し、例外処理を起動する。例外処理では、レジスタ1
26に保持されている例外発生命令アドレスを読み出す
ことにより、どの命令で例外が発生したかを知ることが
できる。例外が発生した命令の再実行が必要な場合は、
上記の例外発生命令アドレスをレジスタ121にセット
し、再度、IFステージからやり直す。
【0016】<論理回路の構成>図1において、論理回
路141は、E1ステージでの命令実行の第1ステップ
を処理する論理回路である。また、論理回路142は、
E2ステージでの命令実行の第2ステップを処理する論
理回路である。論理回路141及び142は、論理ゲー
ト200、201、202、203から構成されてい
る。各論理ゲートは、入力信号の正極性の信号と負極性
の信号の両方が入力され、出力信号の正極性の信号と負
極性の信号の両方を出力する。ここで、正極性の信号と
は、信号が論理的に「1」の時に高電位(例えば、
H、以下、高電位のことを“H”と記す場合がある)
になり、「0」の時に低電位(例えば、EL、以下、低
電位のことを“L”と記す場合がある)になる信号であ
り、負極性の信号とは、信号が論理的に「0」の時に高
電位になり、「1」の時に低電位になる信号である。デ
ータラッチ151は、E1ステージでの命令実行の第1
ステップの実行結果、つまり論理回路141の出力をE
2ステージに伝達するためのパイプライン処理用データ
ラッチである。また、データラッチ152は、E2ステ
ージでの命令実行の第2ステップの実行結果、つまり論
理回路142の出力をCTステージに伝達するためのパ
イプライン処理用データラッチである。データラッチ1
51は、論理回路141の出力である正極性の信号と負
極性の信号の両方をそれぞれ独立に保持し、論理回路1
42の入力として、正極性の信号と負極性の信号の両方
をそれぞれ独立に出力する。データラッチ152は、論
理回路142の出力である正極性の信号と負極性の信号
の両方を受け取り、データをラッチし、正極性の信号若
くは負極性の信号のどちらか一方をCTステージの論理
回路(図示せず)へ出力する。
【0017】上記論理回路を構成する論理ゲート20
0、201、202、203の内部構成について以下で
説明する。代表して論理ゲート200の内部構成を図2
に示す。他の論理ゲートの内部構成も、実現している論
理機能の違いにより論理関数部の違いはあるが、その他
の部分は同様である。2つの入力信号X及びYを入力
し、出力信号Zを生成する。入力信号X及びYはそれぞ
れ正極性の信号XT又はYTと負極性の信号XB又はY
Bから成り、出力信号Zは正極性の信号ZTと負極性の
信号ZBから成る。インバータ221及び222は、そ
れぞれ出力信号ZT及びZBを出力するバッファであ
る。pチャネルMOS電界効果トランジスタ(以下、p
MOS−FETと記載)211、212及びnチャネル
MOS電界効果トランジスタ(以下、nMOS−FET
と記載)213は、制御信号CKが低電位のとき、出力
信号ZT及びZBを共に低電位にリセットする回路であ
る。論理関数部241及び242は、それぞれnMOS
−FETの直列接続、並列接続により構成された回路網
であり、上下にそれぞれ端子を有している。論理関数部
241は、論理ゲート200で実現している論理演算の
結果が真のとき、上下の端子の間がnMOS−FETの
回路網により導通状態になり、偽のとき、上下の端子の
間がnMOS−FETの回路網により非導通状態にな
る。一方、論理関数部242は、論理ゲート200で実
現している論理演算の結果が偽のとき、上下の端子の間
がnMOS−FETの回路網により導通状態になり、真
のとき、上下の端子の間がnMOS−FETの回路網に
より非導通状態になる。pMOS−FET231及び2
32は、プリチャージ後に、論理関数部241及び24
2が、非導通状態であるときに、プリチャージされた状
態を保持するように働く。
【0018】図3に、制御信号CK及び入力信号XT、
XB、YT、YBと出力信号ZT及びZBの関係を説明
するタイミングチャートを示す。制御信号CKが低電位
のとき、出力信号ZT及びZBが共に低電位にリセット
され、制御信号CKが高電位になると、論理ゲート20
0が実現している論理関数に従って、出力信号ZT又は
ZBのどちらか一方が高電位になる。
【0019】<論理回路のソフトエラー>図2のような
プリチャージ型論理回路の場合、α線の入射により内部
の信号レベルが反転してしまうソフトエラーが発生する
ことが知られている。論理関数部241において、入力
信号XTが低電位(L)のとき、入力信号XTをゲート
端子に接続しているnMOS−FETは非導通状態であ
り、ノード251は、制御信号CKが高電位に遷移した
後も、プリチャージされた高電位の状態を保持し、出力
信号ZTは低電位(L)を出力する。このとき、入力信
号XTをゲート端子に接続しているnMOS−FETの
ドレイン領域にα線が入射すると、α線の電離作用によ
りnMOS−FETのドレインに負の電荷が集められ、
ドレイン端子が接続しているノード251を強制的に低
電位にしてしまう。その結果、出力信号ZTは本来低電
位(L)でなければならなかったところが、高電位
(H)になってしまう。これがソフトエラーである。p
MOS−FET211のドレイン領域にα線が入射した
場合は、ノード251が強制的に高電位になる。しか
し、ノード251が本来低電位であるということは、論
理関数部241が導通状態になっているとういことであ
り、論理関数部241の働きにより、ノード251は本
来の低電位に戻すことができる。したがって、pMOS
−FETのドレイン領域へのα線入射は、遅延時間の増
大を招くが、次のリセットまでの間、継続的に信号の電
位が反転してしまうような致命的なエラーにはならな
い。
【0020】<エラー検出>上記のα線の入射によるソ
フトエラーは、図2のように正負両極性の出力信号を独
立に生成する論理回路の場合には、検出可能である。 (1)単一ゲートのエラー検出 出力信号ZTは、論理関数部241及びプリチャージ用
pMOS−FET211、出力用インバータ221、高
電位保持用pMOS−FET231から生成され、一
方、出力信号ZBは、論理関数部242及びプリチャー
ジ用pMOS−FET212、出力用インバータ22
2、高電位保持用pMOS−FET232から生成され
ており、それぞれ独立の回路から構成されている。
【0021】α線の入射によるソフトエラーは狭い領域
にしか影響を与えないので、もし出力信号ZT側にソフ
トエラーが発生したとしても、出力信号ZB側には影響
を及ぼさない。そこで、出力信号ZT及びZBが、論理
信号出力時に、互いに逆の信号電位になっていないこと
を確認すれば、ソフトエラーの発生を検出することがで
きる。図2の論理回路の場合、ソフトエラーとしては、
出力信号ZT又はZBの内どちらか一方が、本来低電位
であるべきときに高電位になってしまう。もう一方の出
力信号は本来の高電位を出力しているので、ソフトエラ
ーの検出のためには、出力信号ZT及びZBが共に高電
位になっているかを確認すれば良い。図1のANDゲー
ト161及び162(共に、正論理)が、論理回路20
0及び201のエラーを検出する回路である。正負両極
性の出力信号が共に高電位であることを検出する。な
お、NORゲート171及び172(共に、正論理)に
ついては後述する。
【0022】(2)複数出力のエラー検出 図1のORゲート163は、論理回路142を構成する
論理ゲートの内1箇所でもエラーが発生したら、それを
検出するための回路である。データラッチ164は、論
理回路142がプリチャージ中でなく論理的に意味のあ
る信号を出力している期間において、エラーが発生した
ことを示す信号をラッチする回路である。
【0023】(3)多段論理のエラー検出 図1の論理回路142の内部回路は、論理ゲート200
と201が並列に存在しているが、複数の論理ゲートが
直列に接続される場合もある。この場合も、エラー検出
用ANDゲートの挿入位置は、図1に示したように、正
負両極性の信号が正極性又は負極性の信号のどちらか一
方に変換される直前の位置(図1では、データラッチ1
52の直前の位置)で良い。なぜなら、論理ゲートに入
力される複数の入力信号の内、他の入力信号の状態及び
実現している論理関数から見て、出力信号の論理値に影
響を及ぼす入力信号にエラーが発生し、正極性の信号及
び負極性の信号の両方が共に高電位になった場合は、そ
の論理ゲートの出力においても、正極性の信号及び負極
性の信号の両方が共に高電位になり、エラー状態が伝播
するからである。
【0024】以下、正負両極性の信号を入力し正負両極
性の信号を出力する論理ゲートにおいて、入力信号のエ
ラーが出力信号に伝播する様子を説明する。全ての論理
ゲートはANDゲート及びORゲートを基本として、こ
れらの組み合わせで実現できる。図2の回路は、AND
ゲートである。この回路の入力信号と出力信号の関係を
図4に示す。ここで、入力信号Xにエラーがあり、正負
両極性の信号XT及びXBが共に高電位「H」となった
場合を考える。入力信号Yが論理値「0」(即ち、YT
が「L」、YBが「H」)のときは、入力信号Xの値に
依らず出力信号Zは論理値「0」(即ち、ZTが
「L」、ZBが「H」)になり、入力信号のエラー状態
は出力信号に伝播せず、正常に動作する。一方、入力信
号Yが論理値「1」(即ち、YTが「H」、YBが
「L」)のときは、出力信号の正負両極性の信号ZT及
びZBが共に「H」になり、入力信号のエラー状態は出
力信号に伝播する。また、入力信号Xにエラーがあり、
正負両極性の信号XT及びXBが共に低電位「L」とな
った場合を考える。入力信号Yが論理値「0」(即ち、
YTが「L」、YBが「H」)のときは、入力信号Xの
値に依らず出力信号Zは論理値「0」(即ち、ZTが
「L」、ZBが「H」)になり、入力信号のエラー状態
は出力信号に伝播せず、正常に動作する。一方、入力信
号Yが論理値「1」(即ち、YTが「H」、YBが
「L」)のときは、出力信号の正負両極性の信号ZT及
びZBが共に「L」になり、入力信号のエラー状態は出
力信号に伝播する。
【0025】もう1つの基本回路であるORゲートを図
5に示す。また、この回路の入力信号と出力信号の関係
を図6に示す。ここで、入力信号Xにエラーがあり、正
負両極性の信号XT及びXBが共に「H」となった場合
を考える。入力信号Yが論理値「1」(即ち、YTが
「H」、YBが「L」)のときは、入力信号Xの値に依
らず出力信号Zは論理値「1」(即ち、ZTが「H」、
ZBが「L」)になり、入力信号のエラー状態は出力信
号に伝播せず、正常に動作する。一方、入力信号Yが
「0」(即ち、YTが「L」、YBが「H」)のとき
は、出力信号の正負両極性の信号ZT及びZBが共に
「H」になり、入力信号のエラー状態は出力信号に伝播
する。また、入力信号Xにエラーがあり、正負両極性の
信号XT及びXBが共に「L」となった場合を考える。
入力信号Yが論理値「1」(即ち、YTが「H」、YB
が「L」)のときは、入力信号Xの値に依らず出力信号
Zは論理値「1」(即ち、ZTが「H」、ZBが
「L」)になり、入力信号のエラー状態は出力信号に伝
播せず、正常に動作する。一方、入力信号Yが論理値
「0」(即ち、YTが「L」、YBが「H」)のとき
は、出力信号の正負両極性の信号ZT及びZBが共に
「L」になり、入力信号のエラー状態は出力信号に伝播
する。
【0026】以上のように、基本的なANDゲート及び
ORゲートにおいて、入力信号の値が出力信号値に直接
影響を及ぼすときには、エラーの状態も出力信号に伝播
することから、全ての論理ゲートにおいても、入力信号
の値が出力信号値に直接影響を及ぼすときには、エラー
の状態も出力信号に伝播することが明かである。したが
って、論理ゲートを多段に接続した場合は、最終段にお
いてエラーの検出を行えば、それ以前の論理ゲートにお
いて発生したエラーが検出可能である。
【0027】(4)多段ステージのエラー検出 論理ゲートを多段に接続する際、途中にパイプライン・
ステージ用のデータラッチを挿入する場合がある。この
ような場合には、図1に示したように、論理回路の出力
である正負両極性の信号をそれぞれ独立に保持し、次段
の論理回路の入力として、正負両極性の信号をそれぞれ
独立に出力するようにデータラッチ151を構成すれば
良い。データラッチの入力信号として正負両極性の信号
が共に「H」になるエラー状態が入力されたとき、それ
らのデータをそのままラッチし、出力信号として正負両
極性の信号が共に「H」になるエラー状態を伝播するこ
とができる。したがって、論理回路が複数のパイプライ
ン・ステージにまたがった場合にも、上記の様にデータ
ラッチを構成することにより、論理ゲートの最終段にお
いてエラーの検出を行えば、それ以前の論理ゲートにお
いて発生したエラーが検出可能である。
【0028】<エラー発生命令の再実行>上記のエラー
検出手段によって論理回路のエラーが検出された場合、
本発明の実施例(図1)では、エラーが発生した命令を
再実行することにより、誤動作を回避することができ
る。図1において、データラッチ164は、論理回路1
42及び141にエラーが発生したことを示す信号をラ
ッチする。制御回路180は、データラッチ164の出
力信号を入力とし、エラーが発生したら、レジスタ12
5に保持しておいた実行中の命令アドレスをレジスタ1
26に転送すると共に、論理回路においてエラーが発生
したことを示すフラグ181をセットし、その後、例外
処理を起動する。例外処理では、フラグ181を読み出
し、論理回路のエラーであることを判断する。論理回路
のエラーの場合、α線の入射によるソフトエラーが考え
られるので、エラーを起こした命令を再実行することに
より、正常にその命令を完了することができる可能性が
ある。そこで、例外処理では、レジスタ126にセット
されている例外発生命令のアドレスを読み出し、このア
ドレスから命令をフェッチし直すことにより、再実行を
行う。
【0029】以下、例外処理の手続きをステップごとに
説明する。 (1)例外種別の識別 例外処理の種別には、上記の論理回路エラーの他、外部
割り込み等多数の例外処理がある。そこで、例外処理ル
ーチンの先頭で、どの例外処理であるかを識別する必要
がある。上記の論理回路エラーの場合、制御回路180
内のエラーフラグ181がセットされているので、これ
を読み出し、チェックすることにより、論理回路エラー
であることを識別することができる。他の種別の例外処
理も同様に、対応したフラグをチェックすることにより
識別可能である。 (2)例外発生命令のアドレス読み出し 上記の例外種別の識別の結果、論理回路のエラーである
ことが判明したら、本実施例では、そのエラーが発生し
た命令からプログラムを再開する。そのため、まず、上
記の論理回路エラーが発生した命令のアドレスを読み出
す必要がある。例外発生命令のアドレスは、レジスタ1
26にセットされているので、これを汎用レジスタ13
3に読み出す。 (3)再実行命令アドレスのセット エラーが発生した命令からプログラムを再開するために
は、汎用レジスタ133に読み出したアドレスへ分岐す
れば良い。そこで、分岐先アドレス用のレジスタ131
に、汎用レジスタ133に読み出した例外発生命令のア
ドレスをセットし、その後、上記の分岐先アドレス用の
レジスタ131で示されたアドレスにプログラムの制御
を移す分岐命令を実行する。 (4)プログラムの再実行 上記の分岐命令の実行までが例外処理ルーチンであり、
分岐先は、再実行すべき命令から始まるプログラムであ
る。以上のステップによって、エラー発生命令の再実行
が実現できる。
【0030】<遅延マージンエラー>上記で説明したよ
うに、論理回路の正負両極性の出力信号が共に高電位で
あることを検出することにより、α線などの入射による
誤動作を回避できる。さらに本実施例では、論理回路の
正負両極性の出力信号が共に低電位であることを検出す
ることにより、遅延時間不良による誤動作も回避するこ
とができる。論理回路142及び141を構成する論理
ゲート(例えば、200)は、制御信号CKによって正
負両極性の出力信号があらかじめ共に低電位にリセット
されている。遅延時間の不良がない場合は、正負両極性
の出力信号の内、どちらか一方は必ず高電位に遷移す
る。したがって、正負両極性の出力信号が共に低電位で
あることは、遅延時間の不良が発生したことを示す。図
1のNORゲート171及び172(共に、正論理)
は、論理ゲート200及び201の正負両極性の出力信
号が共に低電位であることを検出する。ORゲート17
3は、論理回路142を構成する論理ゲートの内1箇所
でも遅延時間不良によるエラーが発生したら、それを検
出する。また、図4及び図6に示したように、正負両極
性の入力信号が共に低電位であること、つまり共に
「L」である入力信号のエラー状態は、その入力信号の
値が出力信号の値に直接影響を与える場合には、出力の
正負両極性の信号が共に低電位、つまり共に「L」にな
り、エラー状態を出力に伝播する。したがって、遅延時
間不良によるエラーも、α線などの入射によるエラーと
同様に、多段の論理ゲートの場合でも、図1のように最
終段においてエラーの検出を行えば、それまでの段階に
おいて発生したエラーは検出可能である。さらに、多段
ステージの場合も、α線などの入射によるエラーと同様
に、パイプライン・ステージ用データラッチ151によ
ってエラー状態が伝播するので、論理回路141及び1
42の内1箇所でも遅延時間不良によるエラーが発生し
たら、それを検出することができる。上記のエラー検出
手段によって検出されたエラーは、データラッチ174
に保持される。制御回路180は、データラッチ174
の出力信号を入力とし、エラーが発生したら、レジスタ
125に保持しておいた実行中の命令アドレスをレジス
タ126に転送すると共に、論理回路においてエラーが
発生したことを示すフラグ182をセットし、その後、
例外処理を起動する。以上説明したように、本実施例に
よれば、α線などの入射による誤動作のみならず、遅延
時間不良による誤動作も回避することができる。
【0031】なお、上記マイクロプロセッサとしてCI
SCが用いられた場合は、処理単位での実行が行われ、
エラーが検出された場合には、処理の再実行が行われ、
RISCが用いられた場合は、命令単位での実行が行わ
れ、エラーが検出された場合には、命令の再実行が行わ
れる。
【0032】
【発明の効果】以上、具体的な実施例を用いて説明した
通り、本発明によれば、α線などの入射による論理回路
のソフトエラーの発生を検出することができる。また、
上記ソフトエラーが発生したときは、そのエラーが発生
した処理または命令を再実行することにより、ソフトエ
ラーによる誤動作を回避することができる。さらにま
た、本発明によれば、個々の論理ゲートにおいてα線な
どの入射によるソフトエラーの発生を防止する必要がな
いので、論理ゲートを高速化に関して最適化することが
でき、論理回路全体としても動作速度を高速にすること
ができる。
【図面の簡単な説明】
【図1】本発明に係る実施例であるプロセッサの全体構
成図である。
【図2】図1の論理ゲート200の構成例を示す回路図
である。
【図3】図2の論理ゲート200の動作を示すタイムチ
ャートである。
【図4】図2の論理ゲート200の機能を説明するため
の表を示す図である。
【図5】他の論理ゲートの構成例を示す回路図である。
【図6】図5の論理ゲートの機能を説明するための表を
示す図である。
【符号の説明】
200〜203 正負両極性の信号を出力する論理ゲー
ト 151 正負両極性の信号を独立に保持するパイプライ
ン・ステージ用データラッチ 152 正負両極性の信号をマージして保持するデータ
ラッチ 161、162 正負両極性の信号が共に高電位である
ことを検出するANDゲート 163 ORゲート 164 エラーが発生したことを示す信号を保持するデ
ータラッチ 180 例外処理を起動する制御回路 181 論理回路においてソフトエラーが発生したこと
を示すフラグ 126 エラーが発生した命令のアドレスを保持するレ
ジスタ 171、172 正負両極性の信号が共に低電位である
ことを検出するNANDゲート 173 ORゲート 174 エラーが発生したことを示す信号を保持するデ
ータラッチ 182 論理回路において遅延時間不良が発生したこと
を示すフラグ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 各論理ゲート毎に正極性の信号と負極性
    の信号を出力する複数段の論理ゲートから成る論理回路
    において、 該論理回路の論理信号の出力時に、正極性の出力信号と
    負極性の出力信号を比較し、互いに逆の信号レベルの関
    係になっていないことを検出する検出手段を有すること
    を特徴とするエラー検出機能を有する論理回路。
  2. 【請求項2】 請求項1記載のエラー検出機能を有する
    論理回路において、 前記論理回路の論理ゲートはプリチャージ型論理ゲート
    であり、プリチャージ時には、前記正極性の出力信号及
    び前記負極性の出力信号の両方とも、同一の信号レベル
    にリセットされ、論理動作時にどちらか一方の信号のみ
    が反転する論理ゲートであり、 前記信号レベルの関係を検出する検出手段は、前記論理
    動作時においてのみ、前記論理回路の正負両極性の出力
    信号の関係を比較することを特徴とするエラー検出機能
    を有する論理回路。
  3. 【請求項3】 請求項1または請求項2記載の論理回路
    を多段に接続し、該多段の論理回路の正極性の出力信号
    及び負極性の出力信号は正極性の信号又は負極性の信号
    のどちらかに変換されて出力される多段の論理回路にお
    いて、 前記正極性の出力信号と負極性の出力信号を比較し、互
    いに逆の信号レベルの関係になっていないことを検出す
    る検出手段が、前記正極性の出力信号及び負極性の出力
    信号が正極性の信号又は負極性の信号のどちらかに変換
    される直前にのみ設置されていることを特徴とするエラ
    ー検出機能を有する論理回路。
  4. 【請求項4】 請求項3記載のエラー検出機能を有する
    論理回路において、 前記多段の論理回路の途中段にデータラッチを有する場
    合、 前記データラッチは、前記正極性の出力信号及び前記負
    極性の出力信号のそれぞれを独立に保持するデータラッ
    チであり、 前記信号レベルの関係を検出する手段は、前記正極性の
    出力信号及び前記負極性の出力信号が正極性の信号又は
    負極性の信号のどちらかに変換される直前にのみ設置さ
    れていることを特徴とするエラー検出機能を有する論理
    回路。
  5. 【請求項5】 請求項1乃至請求項4のいずれかの請求
    項記載のエラー検出機能を有する論理回路を内部に含む
    プロセッサにおいて、 ある処理を実行中に、論理回路におけるエラーが検出さ
    れた場合、該エラーの発生した処理を途中でキャンセル
    し、再度初めから該処理を実行し直す手段を有すること
    を特徴とするプロセッサ。
  6. 【請求項6】 請求項1乃至請求項4のいずれかの請求
    項記載のエラー検出機能を有する論理回路を内部に含
    み、命令により処理が制御されているプロセッサにおい
    て、 ある命令を実行中に、論理回路におけるエラーが検出さ
    れた場合、該エラーの発生した命令の実行を途中でキャ
    ンセルし、再度初めから該命令を実行し直す手段を有す
    ることを特徴とするプロセッサ。
JP8352921A 1996-12-13 1996-12-13 エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ Pending JPH10177496A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8352921A JPH10177496A (ja) 1996-12-13 1996-12-13 エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ
US08/989,414 US5881078A (en) 1996-12-13 1997-12-12 Logic circuit having error detection function and processor including the logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8352921A JPH10177496A (ja) 1996-12-13 1996-12-13 エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ

Publications (1)

Publication Number Publication Date
JPH10177496A true JPH10177496A (ja) 1998-06-30

Family

ID=18427373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8352921A Pending JPH10177496A (ja) 1996-12-13 1996-12-13 エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ

Country Status (2)

Country Link
US (1) US5881078A (ja)
JP (1) JPH10177496A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010220205A (ja) * 2009-03-16 2010-09-30 Arm Ltd 予備充電ロジックにおけるエラー検出
JP2015032860A (ja) * 2013-07-31 2015-02-16 日本電気株式会社 データ補正回路及びデータ補正方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553519B1 (en) * 1998-01-23 2003-04-22 Alcatel Internetworking (Pe), Inc. Method for detecting signal transfer errors in near real time in a digital system
US6457119B1 (en) * 1999-07-23 2002-09-24 Intel Corporation Processor instruction pipeline with error detection scheme
US6975238B2 (en) * 2003-10-01 2005-12-13 Infineon Technologies Ag System and method for automatically-detecting soft errors in latches of an integrated circuit
US7899680B2 (en) * 2005-03-04 2011-03-01 Netapp, Inc. Storage of administrative data on a remote management device
US7487343B1 (en) 2005-03-04 2009-02-03 Netapp, Inc. Method and apparatus for boot image selection and recovery via a remote management module
US7805629B2 (en) * 2005-03-04 2010-09-28 Netapp, Inc. Protecting data transactions on an integrated circuit bus
US8090810B1 (en) 2005-03-04 2012-01-03 Netapp, Inc. Configuring a remote management module in a processing system
US8291063B2 (en) * 2005-03-04 2012-10-16 Netapp, Inc. Method and apparatus for communicating between an agent and a remote management module in a processing system
US7634760B1 (en) 2005-05-23 2009-12-15 Netapp, Inc. System and method for remote execution of a debugging utility using a remote management module
US20070240019A1 (en) * 2005-12-29 2007-10-11 International Business Machines Corporation Systems and methods for correcting errors in I2C bus communications
DE102006020063A1 (de) * 2006-04-29 2007-10-31 Dr.Ing.H.C. F. Porsche Ag Fahrgeschwindigkeitsregelungseinrichtung
US7977965B1 (en) * 2010-03-12 2011-07-12 International Business Machines Corporation Soft error detection for latches

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02168724A (ja) * 1988-09-19 1990-06-28 Hitachi Ltd 半導体論理回路
JPH03237698A (ja) * 1990-02-13 1991-10-23 Nec Corp 半導体メモリのテスト回路
JP3293935B2 (ja) * 1993-03-12 2002-06-17 株式会社東芝 並列ビットテストモード内蔵半導体メモリ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010220205A (ja) * 2009-03-16 2010-09-30 Arm Ltd 予備充電ロジックにおけるエラー検出
JP2015032860A (ja) * 2013-07-31 2015-02-16 日本電気株式会社 データ補正回路及びデータ補正方法

Also Published As

Publication number Publication date
US5881078A (en) 1999-03-09

Similar Documents

Publication Publication Date Title
JPH10177496A (ja) エラー検出機能を有する論理回路およびエラー検出機能を有する論理回路を備えるプロセッサ
US5903171A (en) Sense amplifier with integrated latch and level shift
US7546519B2 (en) Method and apparatus for detecting and correcting soft-error upsets in latches
JPH06349282A (ja) メモリアレイ用の二重動的センスアンプ
JPH10126249A (ja) 論理回路
US6667520B1 (en) SEU hard majority voter for triple redundancy
US4980851A (en) Reduced power pipelined static data transfer apparatus
US6826090B1 (en) Apparatus and method for a radiation resistant latch
JPS63273942A (ja) 論理演算装置
US6825691B1 (en) Apparatus and method for a radiation resistant latch with integrated scan
JP4888562B2 (ja) メモリ回路およびメモリ回路のデータ書き込み・読み出し方法
US6392474B1 (en) Circuit for filtering single event effect (see) induced glitches
JPH08330941A (ja) 高速スタティック回路設計
JPS6224498A (ja) メモリ読出し方式
US7053663B2 (en) Dynamic gate with conditional keeper for soft error rate reduction
EP0928069A2 (en) Self-resetting dynamic logic circuits and method for resetting the same
JP2794019B2 (ja) 非同期式割込ステータスビット回路
EP0442116A2 (en) Pipeline method and apparatus
US6301188B1 (en) Method and apparatus for registering free flow information
JP2004110798A (ja) スキューのないデュアルレールバスドライバ
US4949343A (en) Error detecting circuit for a decoder
US20070229132A1 (en) Scannable domino latch redundancy for soft error rate protection with collision avoidance
JP3135543B2 (ja) 半導体集積回路装置
JPH09261021A (ja) 信号遷移検出回路
JPH01296487A (ja) アドレス信号のノイズ検出回路