JPS60179851A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS60179851A
JPS60179851A JP59234838A JP23483884A JPS60179851A JP S60179851 A JPS60179851 A JP S60179851A JP 59234838 A JP59234838 A JP 59234838A JP 23483884 A JP23483884 A JP 23483884A JP S60179851 A JPS60179851 A JP S60179851A
Authority
JP
Japan
Prior art keywords
operands
storage
error correction
data
error
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.)
Granted
Application number
JP59234838A
Other languages
English (en)
Other versions
JPH0581935B2 (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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPS60179851A publication Critical patent/JPS60179851A/ja
Publication of JPH0581935B2 publication Critical patent/JPH0581935B2/ja
Granted 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/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
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はデータ処理装置に関するものであり、更に詳し
くはかかる装置に用いられる誤り訂正機構に関するもの
である。
(従来の技術) データ処理装置におけるデータの記憶密度が高まるにつ
れて、記憶装置の記憶内容は、更に誤り一発生源になり
易くなってきている。例えば、ダイナミックメモリにお
ける記憶セルの内容は、アルファ粒子の射突によっても
変化してしまう。適当な時間内に、いずれかの特定のセ
ルがこのように変化する可能性は、未だ非常に少ないが
、最近のデータ処理装置に用いられるこのよつなセルア
レイは、非常に大きいので、データに誤りが発生ずるの
を回避することは不可能である。
このような問題に対処するために、コンピュータ設計者
は誤り訂正コードを用いる構成に頼っている。多重ピン
トのデータ語についての典型的な誤り訂正コードは、多
数の“チェソクビソトパから成り、予め定められたアル
ゴリズムにしたがって発生される。考えられ得る多重ビ
ットのデータ語のそれぞれは、考えられ得るチェックビ
ットの順序のうちのただ1つのものに対応している。従
って、多重ピントのデータ語にチェ・ノクビ・ノドが加
えられて成る考えられ得る全ての合成語の他は、妥当な
語はほんのわずかである。すなわち、チェックビットが
N個あるならば、2N個の考えられ43る合成語の他に
は、妥当なものはただ1個である。誤り訂正コーディン
グ機構の構成は、妥当な合成語の各々が、他の全ての妥
当な合成語に対して、コーディング理論における意味に
おいて大きな“距離”を有するようになっている。誤り
訂正は、検知に対応するものとして、頻発する種類の誤
りに対して行なうことができる。何故ならば、起こり得
る誤りの各々から得られる合成語は、他のいずれの妥当
な合成語に対してよりも、はるかにただ1つの妥当な合
成語に“近い”からである。
これらの妥当でない語が“近い”という意味は、それら
の語は、他の妥当な語内の誤りから生ずるよりもその1
個の妥当な語内の誤りから生ずる見込みが非常に高いと
いうことである。従って、それらの妥当でない語に対し
ては、誤り訂正回路によって、それらの語はそれらに最
も近い妥当な語であるはずだ、との推定がなされる。こ
のようにして、データ処理装置では、データ内の誤りを
検知すると共に、訂正することができる。勿論、訂正す
ることのできない誤りもあり、もっと言うならば検知す
ることのできない誤りすらある。しかし、起こり得る6
■能性が最も高い誤りは、コ1正することができ・る。
(発明が解決しようとする問題点) 一方、最近のデータ処理装置は、より速い演算速度が要
求されている。しかしながら、誤り訂正の要求は、速度
の要求とは全く相反するものである。誤り訂正コードを
用いて誤りデータの訂正を行なう誤り訂正アルゴリズム
は、非常に時間を消費してしまう。誤り訂正アルゴリズ
ムの使用は、データに誤りが発生したときに必要となる
ものではあるが、例えば装置の記憶部から装置の処理部
への通路内に配置されたゲートの形態をした誤り訂正ハ
ードウェアにより、誤りの発生していない場合でさえも
遅れが加わってしまうのが通常である。更に、データ語
を装置の記憶部に記憶するときに・は常に誤り訂正コー
ドの計算が必要であり、従って、その必要とされる計算
時間のために、それに関するデータ語の検索が遅れてし
まう。
従って、本発明の目的は、装置内における記憶W置から
命令実行部への信号通路に誤り訂正用ゲートを必要とす
ることなく、装置の誤り訂正を行なうことにある。本発
明の他の目的は、誤り訂正処理によって生ずる遅延を減
少させることにある。
本発明の他の形態における目的は、好適な誤り訂正コー
ディング機構を提供し、誤り訂正コードを発生させるた
めに生ずる遅延を排除することにある。
(問題点を解決するための手段) そのために、本発明のデータ処理装置では、データ語お
よびそれに関する誤り訂正コードのそれぞれを別個にア
クセス可能な記憶装置を有している。記憶制御装置は、
記憶装置に記憶および検索動作を行なわせ、また、各デ
ータ語と共に記憶すべき誤り訂正コードを算出する。命
令を実行する処理装置は記憶制御装置に結合され、その
記憶制御装置に命令およびオペランドの要求を行なわせ
、また、記憶装置への結果の返却を行なわせる。記憶装
置に記憶させるために、処理装置64より情報が記憶制
御装置に送られると、記憶制御装置では誤り訂正コード
を算出し終える前に、直ちにそのデータ語を記憶装置に
記憶させる。記4.a装置に書き込まれたデータ語はパ
リティピットを含んでおり、記憶制御装置はたった今記
憶されたデータ語をパリティビットと共に直ちにフェッ
チすることができるが、それに関する誤り訂正コードを
共にフェッチすることばできない。データ語のフェッチ
は、それに関する誤り訂正コードの記憶装置への記憶動
作と同時に行なわれる。
記憶制御装置は、データ語をフェッチして処理装置に送
るときには、そのデータ語内のパリティビットを検査し
て、誤りが生じているか否かを判別する。しかるに、そ
の判別結果が出る前に、記憶制御装置は、データ語をパ
リティピットと共に処理装置へ送出する。従って、処理
装置に対するデータ語のフェッチ動作の遅延は、記憶す
る前の誤り訂正コードの初期計算、およびフェッチ動作
の間に行なわれるパリティチェックのいずれによっても
生ずることはない。パリティチェックに基づき、データ
語に誤りがあるという判別結果が出た場合には、記憶制
御装置は、そのデータ語に対応している誤り訂正コード
をフェッチし、その誤りが訂正可能ならば訂正を行ない
、訂正した語を記憶装置に再び書き込む。
パイプライン処理方式を用いた機械においては、処理装
置は、送られてきた不正なデータ語を実際に用いること
はない。しかし、処理装置がそのデータ語の使用を必要
とする場合には、そのデータ語内の不正なパリティに応
答して、そのデータ語卆含む命令の実行を中止し、記憶
装置からそのデータ語の再送出を要求する。一般には、
中央処理部からの要求が繰り返される時点までには、記
憶制御装置は、そのデータ語を含む記憶番地の訂正を行
なうことになり、誤りの回復は迅速に行なわれる。
(実施例) 上述したように、本発明は、データ処理装置の記憶装置
、記憶制御装置および中央処理部における誤りの検知お
よび訂正を目的とするものである。
本発明の特徴は、特に第2図、第3図を参照して展開さ
れる。しかし、これらの図面に言及する前に、まず、第
1図を参照して本発明を適用した典型的な装置について
述べる。
第1図に示すように、本発明を適用したデータ処理装置
の基本的な要素は、中央処理部(プロセッサ)10、記
憶部11および入出力要素I2から成っている。プロセ
ッサ10により実行される命令は、記憶部11内のアド
レス可能な記憶番地に記憶されている。命令は、オペラ
ンドによって行なわれる動作を同定し、オペランドもま
た、記憶部内のアドレス可能な番地に記憶されている。
命令およびオペランドは、プロセッサ1oによって必要
に応じてフェッチされ、処理されたデータが記憶部に戻
される。プロセッサ10は、また、制御情報を入出力要
素12の各部に送出して、例えば記憶部11へのデータ
転送や記憶部11からのデータ検索といった予め定めた
オペレーションを行なわせるべく、入出力要素の各部を
付勢する。
このようなデータは、記憶部11へ送出された命令、オ
ペランドであり、あるいは、記憶や表示のために、記憶
部から検索された処理データである。
13はオペレータ・コンソールであり、オペレータのイ
ンターフェースとして配置されている。
このコンソールによって、オペレータは、データの検査
および保、存、中央処理部10の動作停止、あるいは、
中央処理部に命令シーケンスを順次に実行させて、プロ
セッサの応答を決定させることができる。また、このコ
ンソールによって、オペレータは、ブートストラップ手
順を介して装置の初期化を行ない得、データ処理装置全
体の種々の故障検査を行なうことができる。
中央処理部10は、全体を参照番号14で示す数本のバ
スを介して、記憶部11に接続されている。詳述するに
、中央処理部10は、直接に記憶制御装置およびキャッ
シュ15に接続されており、一方この装置15は、アレ
イバス17を介して複数のアレイ16に接続されている
データ処理装置は、ディスクおよびテープ形態の2次記
4.1装置、電信タイプライタ、キーボードおよびビデ
オディスプレイ端子といった、数種類の入出力要素を有
していても良い。これらの各部20は、入出力ハス21
を介して、ハスアダプタ22に接続されている。この入
出力ハス21は、米国特許第4,232,366号に述
べられている“BusFor Data Proces
sing System 1llith 0verla
pSequences”とすることができる。この米国
特許は、John V、 1.evy等に特許されたも
ので、本発明の譲受人に譲渡されて、いる。他の種類の
入出力ハスもまた、同様な入出力部(図示せず)を接続
するのに用いることができ、その入出力部は入出力ハス
23を有しハスアダプタ24に接続されている。
このような入出力部としては、米国特許第3.815.
0943号に記載されたものがあり、その米国特許は、
1974年7月4日に、J、 Cohen等に特許され
たものであり、名称はDate Processing
System”である。
ハスアダプタ22および24は、記憶制御装置およびキ
ャッシュ15からのデータの送出および受け取りを行な
うように、ハスアダプタ25を介して接続されている。
また、バスアダプタは割込み要求/許可バス26によっ
て接続され、このハス26を介して、バスアダプタは、
入出力部20が状態を変える場合には、中央処理部の処
理に割込みをかけることができる。中央処理部10は、
それに応答して、割込み要求の許可信号を直接に入出力
要素12内の各部に送出するが、入出力要素12内の各
部への制御情報の送出およびそれら各部からの状態情報
の受け取りは、記憶制御装置およびキャッシュ15を介
して行なわれる。このように、記憶制御装置は、中央処
理部10と入出力要素とに対するデータの転送制御を行
なっている。更に、中央処理部と入出力要素12との間
における制御情報および状態情報の転送制御を行なって
いる。
記憶制御装置およびキャッシュ15は、第2図に示すよ
うに、記憶制御回路部30とキヤ・フシ1メモリ32と
を有し−Cいる。キャッジ1メモリは、小さな高速メモ
リであり、常に、その番地が、メモリアレイ16内の所
定の番地に対応しζいる。
当業者ならば理解できるように、キャッシュの番地とア
レイの番地とのプログラムの実行中における対応関係は
、連続的に変化して、プロセッサIOによるほとんど全
てのデータ要求によって、キャッシュメモリ内の記10
番地が特定されるようになっている。もっとも、キャッ
シュメモリは、メモリアレイ16の番地における小さな
部分にのみ対応している。このように、データ処理装置
では、全プレイを高価なメモリ型式とすることなく、速
いが高価な型式のメモリにおける有効な高速性を利用す
ることができる。
次に、本発明の特徴に言及する。言及するにつれて、本
発明の基本的な特徴の利用は、キャッシュメモリに対し
てのデータの転送のみならず、例えばメモリアレイ16
やI10装置20などの他の装置に対してのデータの転
送にも行ない得ることが明らかとなろう。しかるに、簡
単にするために、また、一般にはほとんどのデータ交換
は中央処理部10とキャッシュメモリ32との間におい
て生ずるので、本発明をこのような転送に関してのみ説
明するものとする。
本発明によれば、キャッシュ32は、データ語およびそ
れに関する誤り訂正コードの双方を記憶する。(キャッ
シュ32は以下においては華に“メモリ゛32という。
これは、本発明はキヤ・ノシュメモリに関して実行され
るので、キャッシュメモリと特定する必要がないからで
ある。)データ語には、誤り訂正コードが存在するにも
拘わらず、パリティ (すなわち、誤り訂正というより
も誤り検知)ピッ1−が冗長度を有しない情報に付加さ
れている。例えば、メモリ32により構成されるデータ
語を、32ビツトの冗長度を有していない情報と、4個
のパリティビット (8ビット構成の各バイトに対して
1個のパリティヒツト)と、6個のチェックビットから
成る誤り訂正コードとを有するものとすることができる
。 (キャッシュメモリに関するものなので、キャッシ
ュメモリ32とメモリアレイ16との対応関係を示す“
タグビットちまた存在するが、これらのビットへの言及
は、ここにおける目的からは必要でない。)誤り訂正コ
ードとデータ語とは、別個にアクセス可能となっている
。すなわち、データ語の読み取りおよび書き込みは、そ
れに関する誤り訂正コードの読み取りおよび書き込みを
伴なわずに行なうことができる。更にまた、記憶制御回
路部30は、メモリ32からのデータ語のフェッチを、
メモリ32へそのデータ語に関する誤り訂正コードを書
き込んでいる間に、同時に行なうことができろ。
この特徴は、データ語の一部として記憶およびフェッチ
が行なわれるパリティビットを設けたことと組み合され
て、第2図、第3図を参照し°ζ次に述べるような動作
上の利益をもたらす。
本発明を用いた典型的なデータ処理装置において、プロ
セッサ10ばパイプライン処理方式によって動作する。
すなわち、プロセッサは与えられた命令を実行している
間に、同時に記憶制御回路部30を動作して、メモリ内
から次の命令のフェッチを行なわせ、その命令により指
示されるオペランドのアセンブリを行なわせる。勿論、
メモリ内の次の命令が常に次に実行すべき命令であると
いう訳ではなく、現在の命令の実行が終了するまでに次
に実行する命令の番地を知ることは、常に可能という訳
ではない。このような場合には、プロセッサ10は、“
予めフェッチした”命令をドロップ(drop)させ、
最後に行なわれた実行により指示されている命令の検索
を行なわねばならない。しかしながら、メモリ内の次の
命令が、次に実行されるべき命令である場合がほとんど
あるので、予め行なわれるフェッチングによって、デー
タ処理装置の動作速度は著しく向上する。
簡略化のために、第3図は、装置における一部の動作で
ある、成る特定の命令の終了および別の命令の開始につ
いてのみ示している。詳述すると、図示するために、第
1命令の実行がその実行による結果“A”を記憶して終
了するものとし、また、その次の命令は、その結果を、
オペランドとしてのデータ語と共に要求するものである
とする。更に、第1オペランドの検索に誤りが存在し、
その誤りは訂正可能なものであるとする。更にまた、含
まれる命令は、誤りを回復不可能にし”Cしまう種類の
ものでばないものとする。例えば、訂正およびその番地
の再読み取′りの間で、当該メモリ番地を修飾するため
のポテンシャルが存在するような種類の命令ではないも
のとする。これらの全ての仮定が、本発明を実施した全
ての場合において、妥当というのではないことは明らか
であり、誤り訂正機構の動作は、他の動作の間に、次に
述べる実施例に対して幾つかの点において変化すること
になる。しかるに、以下に述べる本発明の基本的な主要
部は同一のままである。
第3図は、第2図の各要素における典型的な動作のタイ
ミングを表わしている。最初の3行分が示すのは、記憶
制御回路部30におけるデータ転送と、誤り訂正と、誤
り検知の各機能であり、これらの機能は、同時に行なわ
れる。第4番目の行が表わしているのは、プロセッサI
Oの幾つかの機能である。第3図における開始動作の時
点においては、プロセッサ■0は、記憶制御回路部30
に結果”A″をそのパリティピッ1−と共にメモリ32
内へ記憶させる要求をして、命令の実行を完了している
図示の装置では、プロセッサはパリティビットをその結
果と共に発生ずるので、記憶制御回路部は直ちに、冗長
度を有しない情報およびパリティの双方を含むデータ語
をメモリ32内に記憶する。
この動作を表わしているのが、第3図の第1行目のtl
である。これと同時に、記憶制御回路部30は、′第2
行目に示されているように“A″に関する誤り訂正コー
ド(E CC)の算出を行なう。
換言すると、結果“A”のメモリ32への記憶は、それ
に関する誤り訂正コードが用意される前に行なわわれる
このことは、パイプライン機械においては重要な成果で
ある。というのも、上記したように、プロセッサ10ば
次の命令を既にフェッチし終えて、その命令によって指
示されるオペランドをフェッチする用意が整うからであ
る。多くの場合において、次の命令のために要求される
オペランドは、その前の命令から得られる。従って、プ
ロセッサ10は、記憶制御回路部30が直ちに前の命令
の結果をフェッチするように、要求を出すことができる
。この動作を表わすのが、第3図の最下行におけるt2
である。これと同時期に、t2における第3図の第2列
目が示すように、記iff aa+御回路部30ば、“
Δ”についての誤り訂11°−t−ドをメモリ32内に
記憶する処理過程にある。もし、装置が従来のように構
成されて、“A″を記憶するにはその“A”についての
誤り訂正コードが算出されるまで待たなければならない
としたら、L2において“′A”をフエ・ソチすること
は不可能である。しかしながら、本発明では、データ語
とその誤り訂正コードの記憶および検索は、独立してい
るので、“A″のフェッチングにおいて、誤り訂正コー
ドの算出による遅延はない。
第3図のt3における第1行目が表わしているのは、プ
ロセッサ10からの要求があった第2オペランド”B″
のフェソチングである。すなわち、記憶制御回路部30
は、そのオペランドをプロセッサに送出する。これと同
時に、第3行のt3に示すように、記憶制御回路部30
は、“A″内にパリティエラーを発見する。これと同時
に、第4行目のt3において示すように、プロセッサは
、“A”をその不正なパリティと共に受け取る。
不正なパリティの判別に応答して、記憶制御回路部30
は、直ちに誤り訂正ルーチンに入り、”A”に関する誤
り訂正コードを呼び出して、誤りが訂正可能なものなら
ば、訂正した内容をメモリ32内に再び書き込む。一般
に、このルーチンの時間は、検知された誤りの種類に応
じて変化する。第1図から明らかなように、記憶制御装
置は、プロセッサ以外の部位からの要求を受けζいる。
従って、−記1.α制御回路部30は、この回路部への
アクセスをどの装置が行なうのかを決定するための所定
の回路部(図示せず)を有している。また、所定の機構
により、誤り訂正ルーチンは最も高い優先度を有してい
るので、記憶制御回路部30へのアクセスは、この誤り
訂正ルーチンの実行中は、プロセッサを含む何れの装置
に対しても許可されない。
第3図に示すように、最下行の14においては何も入っ
ていないが、これはプロセッサの動作を表わしている。
勿論、プロセッサは、通常何らかの動作に関与している
が、第3図は本発明に関係するステップのみを表わして
いるのである。プロセッサはオペランド“A″をそのパ
リティビットと共に受り取るが、不正なパリティに対し
ては、直しに応答することはない。この理由は、上述し
たように、プロセッサがパイプライン機械であり、従っ
て、実際にオペランドの使用を必要とする以前に、その
オペランドを取得するからである。
第3図においては、その実際に使用される時点を、t、
において行なわれるものとし“ト描い“ζあり、この時
点において、不正なパリティに応答して、次のサイクル
の間に、エラールーチンを開始する。このエラールーチ
ンは、記憶制御回路部30が実行する誤り訂正ルーチン
よりもかなり長時間続く。すなわち、プロセッサのエラ
ールーチンは、一般に、誤り記録および他のハウスキー
ピング機能を行なうマイクロ命令ルーチンのトラップを
含んでおり、それらは本発明には直接関与するものでは
ない。プロセッサによるエラールーチンが終了する時点
までには、記憶制御回路部30はその誤り訂正ルーチン
を終了し、誤りが訂正可能な場合には、訂正した“A 
”の値を所定の番地に記憶している。訂正した“A”を
記憶した後、すなわち第3図の第1行目において任意に
示される時点t、。の後は、記憶制御回路部30は再び
他の装置からの要求を受け付ける状態となる。この状態
は、図面においては“アイドル”として表わしである。
もっとも、記憶制御回路部30がアイドル状態となるの
は、他の装置からの要求が無い場合のみである。
プロセッサ10にはエラールーチンの実際の演算は、第
3図の最下行に示すように、記憶制御回路部30による
、不正なオペランド゛′A”が発生した命令のフェッチ
を、繰り返し要求するごとによって行なわれる。記憶制
御回路部30ば、誤りを検知したときには、直ちに番地
“A”の訂正を開始するので、プロセッサ10がオペラ
ンド゛′A”を要求したときには直しに正しい値の“′
A゛を利用することができ、誤り訂正処理自体によって
、遅延が生ずることはない。
先に示したように、記憶制御回路部:30は、一般にプ
ロセッサ10によるオペランド″Δ”の再要求がある以
前に、その誤り訂正を終了する。また、仮え、この記憶
制御11回路部30による誤り訂正ルーチンの終了以前
に、ゾロセノiノ10のエラール−チンが本冬了してし
まったとしても、プロセッサはやはり正しいデータを受
け取ることができる。この理由は、先に述べたように、
記憶制御回路部30により、最も高い優先度がデータ訂
正用のルーチンに与えられているからである。従って、
プロセッサ10は、記憶制御回路部へのアクセスが許可
されるまで所定の間待たなければならない。
すなわち、誤り訂正ルーチンが終了するまでは、アクセ
スは行なわれない。勿論、誤り訂正ルーチンが終了した
時点では、内容が訂正されているので、プロセッサIO
は正しいデータを受け取ることになる。
(発明の効果) 以上の説明から明らかなように、本発明によれば、誤り
訂正処理によって起こり得る遅延を大幅に減少させた好
適な誤り訂正を行なうことができる。減少される遅延は
、誤り訂正によるもののみでなく、誤り訂正コードの初
期発生による遅延も含まれる。
当業者ならば、先に述べた節filな実施例に示される
本発明の基本構成を、広範なデータ処理装置に適用可能
なことを理解できるであろう。本発明の各形態において
は、キャッシュメモリのみでなく、他のメモリおよびI
10装置を用いることができる。このように、本発明に
よる改良は、一般に、データ処理装置に対して広範に適
用することができる。
【図面の簡単な説明】
第1図は本発明を適用可能な典型的なデータ処理装置の
概略を示すブロック図、 第2図は本発明の実施にあたり特に含まれる第1図の装
置の要素を詳しく示すブロック図、第3図は本発明を適
用したデータ処理装置の動作を示すタイミング図である
。 10・・・・・・プロセッサ 11・・・・・・記憶要
素゛。 12・・・・・・入出力要素 13・・・・・・コンソ
ール14・・・・・・ハス 15・・・・・・記憶制御装置およびキャッシュ16・
・・・・・アレイ 17・・・・・・アレイバス20・
・・・・・入出力装置 21.23・・・・・・バス2
2.24.25・・・・・・ハスアダプタ26・・・・
・・ハス 30・・・・・・記4σ制御回路部32・・
・・・・キャッシュメモリ 図面の浄書(内容に変更なし) 一 1 1 FIG、2 昭和 年 月 日 特許庁長官 志 賀 学 殿 2、発明の名称 データ処理装置 3、補正をする者 事件との関係 出願人 4、代理人

Claims (1)

  1. 【特許請求の範囲】 (11命令およびオペランド等のデータと、それらのデ
    ータに関する分離した誤り検知コードおよび誤り5j゛
    正コードとを記憶ずろためのデータ番地を複数有する記
    憶回路と、 記憶回路に刻して命令およびオペランドの送出を要求す
    る記憶要求信号を発生し、要求した命令およびオペラン
    ドを、それに関する誤り検知コードと共に受け取り、受
    は取った命令、オペランドおよびそれらに関する誤り検
    知コードのそれぞれを調べて、命令あるいはオペランド
    に誤りが存在するか否かを判別し、命令およびそれによ
    って指示されるいずれのオペランドにおいても誤りが検
    知されないときには、命令を実行し、その命令あるいは
    それによって指示されるいずれかのオペランドにおいて
    誤りが検知されたときには、その命令に対する記憶要求
    信号を繰り返し発生する実行手段と、 実行手段から、記憶要求信号を受け取るように接続され
    ており、記憶回路を動作させて、記憶要求信号に対応す
    る命令およびオペランドならびにそれらに関する誤り検
    知コードを検索させ、検索した命令およびオペランドな
    らびにそれらに関する誤り検知コードを調べて、それら
    に誤りが存在するか否かを判別し、その誤りが存在する
    か否かの判別を待つことなく、命令とオペランドを、そ
    れらに関する誤り検知コードと共に、実行手段へ送り、
    誤りの存在が検知されたときには、記憶回路を動作させ
    て、命令あるいはオペランドに関する誤り訂正コードの
    検索を行なわせ、その誤り訂正コードにWづいて、検知
    された訂正可能な誤りの訂正を行なう記憶制御手段とを
    有し、それによって、誤り検知のために必要とされる遅
    延を伴うことなく正しい命令およびオペランドの検索を
    行ない(実行手段による訂正によらずに、不正な命令お
    よびオペランドの訂正を行ない得るようにしたことを特
    徴とするデータ処理装置。 (2、特許請求の範囲第1項に記載の装置において、前
    記記憶回路は、命令およびオペランドが、それらに関す
    る誤り訂正コードとは別々に記憶および検索されるよう
    になっており、 前記実行手段は、前記記憶i制御手段に接続されて、前
    記記憶回路内に記憶するためにデータ語を前記記憶制御
    11手段に送るようになっており、前記記憶制御手段は
    、データ語を実行手段から受け取り、受は取ったデータ
    語のそれぞれから、それに関する誤り訂正コードを発生
    し、記憶回路へのデータ語の記憶動作を、そのデータ語
    に関する誤り訂正コードの発生の完了を待つことなく行
    ない、その次にそのデータ語に関する誤り訂正コードを
    記憶するようになっており、それによって、前記記憶回
    路からのデータ語の検索準備が、そのデータ語に関する
    誤り言I正コードが記憶され終る前にととのうようにし
    たことを特徴とするデータ処理装置。 (3)特許請求の範囲第2項に記載の装置において、前
    記記憶制御手段によって行なわれる前記記憶回路による
    命令およびオペランドに関する誤り訂正コードの検索を
    、それら命令およびオペランド内に誤りが検知された場
    合にのみ行なうようにしたことを特徴とするデータ処理
    装置。 (4)特許請求の範囲第1項に記載の装置において、前
    記記憶制御手段によって行なわれる前記記憶回路による
    命令およびオペランドに関する誤り訂正コードの検索を
    、それら命令およびオペランド内に誤りが検知された場
    合にのみ行なうようにしたことを特徴とするデータ処理
    装置。 (5)命令およびオペランド等のデータと、そのデータ
    に関する誤り訂正コードとを記憶するためのデータ番地
    を複数有し、命令およびオペランドが、それらに関する
    誤り訂正コードとは別々に記憶および検索される記憶回
    路と、 記1.a装置に対して命令およびオペランドの送出を要
    求する記憶要求信号を発生し、要求した命令およびオペ
    ランドを受け取り、その命令の実行を行なう実行手段と
    、 実行手段から記憶要求信号を受け取るように接続され、
    また、データ語を受け取るように構成されており、受は
    取ったデータ語を基にそれに関する誤り訂正コードを発
    生し、受は取ったデータ語の記憶回路への記ig動作を
    、そのデータ語に関する誤り訂正コードの発生が完了す
    るのを待つことなく行ない、その次にそのデータ語に関
    する誤り訂正コードを記1,9するようになっており、
    更に、記憶要求信号に応答して記憶回路による命令およ
    びオペランドの検索を行なわせ、それらの命令およびオ
    ペランドを実行手段に送出するようになっており、それ
    によって、データの検索およびそのデータの実行手段へ
    の送出を、そのデータに関する誤り訂正コートを発生さ
    せるために生ずる遅延を伴うことなく行なう記憶制御手
    段とを(+iiiえたことを特徴とするデータ処理装置
    。 (6)特8′1請求の範囲第5項に記載の装置においζ
    、OjI記記憶回路は、データ語の検索とそれに関する
    誤り訂正コードの記taを同時に行ない得るようになっ
    Cおり、 前記記憶制御手段は、記憶要求信号に応答して、データ
    語をフェッチすると共に、同時に、記憶回路へのデータ
    語に関する誤り訂正コードの記41動作を行ない得るよ
    うになっており、それによって、誤り訂正コードの記憶
    による遅、延を伴うことなく、データ語のフェッチを行
    なうようにしたことを特徴とするデータ処理装置。
JP59234838A 1983-11-07 1984-11-07 デ−タ処理装置 Granted JPS60179851A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/549,610 US4604750A (en) 1983-11-07 1983-11-07 Pipeline error correction
US549610 1983-11-07

Publications (2)

Publication Number Publication Date
JPS60179851A true JPS60179851A (ja) 1985-09-13
JPH0581935B2 JPH0581935B2 (ja) 1993-11-16

Family

ID=24193716

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59234838A Granted JPS60179851A (ja) 1983-11-07 1984-11-07 デ−タ処理装置

Country Status (8)

Country Link
US (1) US4604750A (ja)
EP (1) EP0141743B1 (ja)
JP (1) JPS60179851A (ja)
AU (1) AU564134B2 (ja)
CA (1) CA1213674A (ja)
DE (1) DE3485766T2 (ja)
DK (1) DK526784A (ja)
FI (1) FI86921C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6320641A (ja) * 1986-07-15 1988-01-28 Fujitsu Ltd メモリアクセス方式

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR8503913A (pt) * 1984-08-18 1986-05-27 Fujitsu Ltd Sistema e processo de recuperacao de erros em um processador de dados do tipo de canalizacao tendo um dispositivo de memoria de controle e processo de recuperacao de erros em um processador de dados do tipo de canalizacao
US4791641A (en) * 1986-09-15 1988-12-13 Thinking Machines Corporation Parallel processor error checking
US4761783A (en) * 1986-10-17 1988-08-02 Christensen Harold F Apparatus and method for reporting occurrences of errors in signals stored in a data processor
US4791642A (en) * 1986-10-17 1988-12-13 Amdahl Corporation Buffer error retry
ATE70657T1 (de) * 1987-03-10 1992-01-15 Siemens Nixdorf Inf Syst Verfahren und einrichtung zur steuerung der fehlerkorrektur innerhalb einer datenuebertragungssteuerung bei von bewegten peripheren speichern, insbesondere plattenspeichern, eines datenverarbeitungssystems gelesenen daten.
US4851993A (en) * 1987-04-20 1989-07-25 Amdahl Corporation Cache move-in bypass
GB8828817D0 (en) * 1988-12-09 1989-01-18 Int Computers Ltd Data processing apparatus
US5283763A (en) * 1989-09-21 1994-02-01 Ncr Corporation Memory control system and method
EP0473102B1 (en) * 1990-08-29 1995-11-22 Honeywell Inc. Data communication system with checksum calculating means
US5280488A (en) * 1990-11-08 1994-01-18 Neal Glover Reed-Solomon code system employing k-bit serial techniques for encoding and burst error trapping
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
US5263030A (en) * 1991-02-13 1993-11-16 Digital Equipment Corporation Method and apparatus for encoding data for storage on magnetic tape
EP0547769B1 (en) * 1991-12-18 1999-10-13 Sun Microsystems, Inc. Write overlap with overwrite prevention
MY109399A (en) * 1992-01-07 1997-01-31 Koninklijke Philips Electronics Nv Device for processing digital data, and digital video system comprising the device
US5956352A (en) * 1992-04-24 1999-09-21 Digital Equipment Corporation Adjustable filter for error detecting and correcting system
US5357529A (en) * 1992-04-24 1994-10-18 Digital Equipment Corporation Error detecting and correcting apparatus and method with transparent test mode
US5339408A (en) * 1992-12-30 1994-08-16 Digital Equipment Corporation Method and apparatus for reducing checking costs in fault tolerant processors
US5588112A (en) * 1992-12-30 1996-12-24 Digital Equipment Corporation DMA controller for memory scrubbing
US5500950A (en) * 1993-01-29 1996-03-19 Motorola, Inc. Data processor with speculative data transfer and address-free retry
US5604753A (en) * 1994-01-04 1997-02-18 Intel Corporation Method and apparatus for performing error correction on data from an external memory
GB2289779B (en) * 1994-05-24 1999-04-28 Intel Corp Method and apparatus for automatically scrubbing ECC errors in memory via hardware
US5771247A (en) * 1994-10-03 1998-06-23 International Business Machines Corporation Low latency error reporting for high performance bus
JPH08106733A (ja) * 1994-10-07 1996-04-23 Hitachi Ltd 情報記憶媒体利用システム
EP0740073B1 (en) * 1995-04-28 2004-08-18 Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno Circuit for detecting an overvoltage on an electric load
DE69526789T2 (de) * 1995-09-29 2002-11-21 St Microelectronics Srl Speicheranordnung mit verbessertem Ergebnis und verbesserter Zuverlässigkeit
US5987628A (en) * 1997-11-26 1999-11-16 Intel Corporation Method and apparatus for automatically correcting errors detected in a memory subsystem
US5959914A (en) * 1998-03-27 1999-09-28 Lsi Logic Corporation Memory controller with error correction memory test application
US6115837A (en) * 1998-07-29 2000-09-05 Neomagic Corp. Dual-column syndrome generation for DVD error correction using an embedded DRAM
US6530036B1 (en) * 1999-08-17 2003-03-04 Tricord Systems, Inc. Self-healing computer system storage
US6772383B1 (en) * 1999-05-27 2004-08-03 Intel Corporation Combined tag and data ECC for enhanced soft error recovery from cache tag errors
US6408417B1 (en) * 1999-08-17 2002-06-18 Sun Microsystems, Inc. Method and apparatus for correcting soft errors in digital data
US6543028B1 (en) * 2000-03-31 2003-04-01 Intel Corporation Silent data corruption prevention due to instruction corruption by soft errors
US6594796B1 (en) * 2000-06-30 2003-07-15 Oak Technology, Inc. Simultaneous processing for error detection and P-parity and Q-parity ECC encoding
FR2815737B1 (fr) * 2000-10-25 2003-01-24 Centre Nat Etd Spatiales Dispositif et procede de codage pour un sous-ensemble de detection et correction d'erreurs memoire dans un systeme electronique
FR2815735B1 (fr) * 2000-10-25 2005-11-11 Centre Nat Etd Spatiales Dispositif et procede de detection et correction d'erreurs memoire dans un systeme electronique
FR2840445B1 (fr) * 2002-06-03 2004-09-10 St Microelectronics Sa Circuit memoire comportant un code correcteur d'erreur
US7383464B2 (en) * 2003-12-08 2008-06-03 International Business Machines Corporation Non-inline transaction error correction
US7555703B2 (en) * 2004-06-17 2009-06-30 Intel Corporation Method and apparatus for reducing false error detection in a microprocessor
US7386756B2 (en) * 2004-06-17 2008-06-10 Intel Corporation Reducing false error detection in a microprocessor by tracking instructions neutral to errors
US7831882B2 (en) * 2005-06-03 2010-11-09 Rambus Inc. Memory system with error detection and retry modes of operation
US9459960B2 (en) * 2005-06-03 2016-10-04 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
US7673190B1 (en) * 2005-09-14 2010-03-02 Unisys Corporation System and method for detecting and recovering from errors in an instruction stream of an electronic data processing system
US7562285B2 (en) 2006-01-11 2009-07-14 Rambus Inc. Unidirectional error code transfer for a bidirectional data link
US8352805B2 (en) 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
US20070271495A1 (en) * 2006-05-18 2007-11-22 Ian Shaeffer System to detect and identify errors in control information, read data and/or write data
US7506226B2 (en) * 2006-05-23 2009-03-17 Micron Technology, Inc. System and method for more efficiently using error correction codes to facilitate memory device testing
US10296405B2 (en) * 2016-07-05 2019-05-21 SK Hynix Inc. Nonvolatile memory system and error determination method thereof
US11361839B2 (en) 2018-03-26 2022-06-14 Rambus Inc. Command/address channel error detection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5294738A (en) * 1976-02-04 1977-08-09 Hitachi Ltd Error correction system
JPS53110433A (en) * 1977-03-09 1978-09-27 Nec Corp Memory unit
JPS58114398A (ja) * 1981-12-25 1983-07-07 Nec Corp 記憶装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3824547A (en) * 1972-11-29 1974-07-16 Sigma Syst Inc Communications system with error detection and retransmission
IT1052738B (it) * 1975-12-24 1981-07-20 Cselt Centro Studi Lab Telecom Dispositivo per il caricamento automatico della memoria centrale di calcolatori elettronici
US4072853A (en) * 1976-09-29 1978-02-07 Honeywell Information Systems Inc. Apparatus and method for storing parity encoded data from a plurality of input/output sources
US4058851A (en) * 1976-10-18 1977-11-15 Sperry Rand Corporation Conditional bypass of error correction for dual memory access time selection
IT1089225B (it) * 1977-12-23 1985-06-18 Honeywell Inf Systems Memoria con dispositivo rivelatore e correttore a intervento selettivo
JPS55105897A (en) * 1979-01-31 1980-08-13 Hitachi Koki Co Ltd Memory device
US4360917A (en) * 1979-02-07 1982-11-23 The Warner & Swasey Company Parity fault locating means
US4360915A (en) * 1979-02-07 1982-11-23 The Warner & Swasey Company Error detection means
US4339804A (en) * 1979-07-05 1982-07-13 Ncr Corporation Memory system wherein individual bits may be updated
US4371930A (en) * 1980-06-03 1983-02-01 Burroughs Corporation Apparatus for detecting, correcting and logging single bit memory read errors
US4369510A (en) * 1980-07-25 1983-01-18 Honeywell Information Systems Inc. Soft error rewrite control system
JPS57113497A (en) * 1980-12-29 1982-07-14 Fujitsu Ltd Error correction system
US4388684A (en) * 1981-03-27 1983-06-14 Honeywell Information Systems Inc. Apparatus for deferring error detection of multibyte parity encoded data received from a plurality of input/output data sources
JPS57162186A (en) * 1981-03-27 1982-10-05 Fujitsu Ltd Patrol controlling system of main memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5294738A (en) * 1976-02-04 1977-08-09 Hitachi Ltd Error correction system
JPS53110433A (en) * 1977-03-09 1978-09-27 Nec Corp Memory unit
JPS58114398A (ja) * 1981-12-25 1983-07-07 Nec Corp 記憶装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6320641A (ja) * 1986-07-15 1988-01-28 Fujitsu Ltd メモリアクセス方式

Also Published As

Publication number Publication date
EP0141743A3 (en) 1988-03-23
EP0141743B1 (en) 1992-06-10
US4604750A (en) 1986-08-05
FI844343L (fi) 1985-05-08
AU3489384A (en) 1985-05-16
DE3485766D1 (de) 1992-07-16
FI86921B (fi) 1992-07-15
FI86921C (fi) 1992-10-26
EP0141743A2 (en) 1985-05-15
DK526784D0 (da) 1984-11-06
AU564134B2 (en) 1987-07-30
FI844343A0 (fi) 1984-11-06
CA1213674A (en) 1986-11-04
DE3485766T2 (de) 1992-12-24
DK526784A (da) 1985-06-14
JPH0581935B2 (ja) 1993-11-16

Similar Documents

Publication Publication Date Title
JPS60179851A (ja) デ−タ処理装置
US6658554B1 (en) Electronic processor providing direct data transfer between linked data consuming instructions
EP0706128B1 (en) Fast comparison method and apparatus for errors corrected cache tags
US3564506A (en) Instruction retry byte counter
US3800294A (en) System for improving the reliability of systems using dirty memories
US5500950A (en) Data processor with speculative data transfer and address-free retry
US6971041B2 (en) Cache entry error-correcting code (ECC) based at least on cache entry data and memory address
EP0321793B1 (en) Apparatus for forcing a reload from main memory upon cache memory error
JPS6324428A (ja) キヤツシユメモリ
US6898738B2 (en) High integrity cache directory
US4924425A (en) Method for immediately writing an operand to a selected word location within a block of a buffer memory
US5287483A (en) Prefetched operand storing system for an information processor
US4737908A (en) Buffer memory control system
JPS60144847A (ja) キヤツシユメモリ制御方式
EP0113982A2 (en) A data processing system
JPH02123442A (ja) 高速化メモリ
US11928024B1 (en) Atomic correction of single bit errors within a memory
JPH0644238B2 (ja) 命令再実行制御方法
JP3171639B2 (ja) データ処理装置
JP3014701B2 (ja) 情報処理装置
JPS61198335A (ja) 分岐予測制御方式
JPS59129995A (ja) 記憶装置
JPS6223899B2 (ja)
JPS62130443A (ja) メモリアクセス制御装置
JPH0250500B2 (ja)