[go: up one dir, main page]

JPH0581935B2 - - Google Patents

Info

Publication number
JPH0581935B2
JPH0581935B2 JP59234838A JP23483884A JPH0581935B2 JP H0581935 B2 JPH0581935 B2 JP H0581935B2 JP 59234838 A JP59234838 A JP 59234838A JP 23483884 A JP23483884 A JP 23483884A JP H0581935 B2 JPH0581935 B2 JP H0581935B2
Authority
JP
Japan
Prior art keywords
data
operands
instructions
error
storage
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
JP59234838A
Other languages
English (en)
Other versions
JPS60179851A (ja
Inventor
Shii Manton Jon
Efu Burutsukaato Uiriamu
Jei Derishitsuchi Arufuretsudo
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 OR CALCULATING; 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)

Description

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

Claims (1)

  1. 【特許請求の範囲】 1 A 命令およびオペランド等のデータと、そ
    れらのデータに関連していてそれらとは別個な
    誤り検知コードおよび誤り訂正コードとを記憶
    するための複数のデータ記憶場所を有する記憶
    回路と; B (a) 記憶回路に対して命令およびそれによつ
    て指定されたオペランド並びにそれらに関連
    する誤り検知コードの送出を要求する記憶要
    求信号を発生する手段と、 (b) 要求された命令およびオペランド、ならび
    にそれらに関連する誤り検知コードを受け取
    り、受け取つた命令およびオペランド、なら
    びにそれらに関連する誤り検知コードを検査
    して、命令およびオペランドに誤りが存在す
    るか否かを決定する手段と、 (c) 命令およびそれらによつて指定されたいづ
    れのオペランドにも誤りが検知されないとき
    には、命令を誤り訂正回路に供給しないで命
    令を実行し、その命令またはそれによつて指
    定されたオペランドに誤りが検知されたとき
    は、その命令に対する記憶要求信号を繰り返
    す手段と、 を含むプロセツサ手段と; C プロセツサ手段から前記要求信号を受け取る
    ように接続され、 (a) 記憶要求信号に応答して命令およびオペラ
    ンド並びにそれらに関連する誤り検知コード
    を検索させ、命令およびオペランドに誤りが
    検知されたときは、その命令およびオペラン
    ドに関連する誤り訂正コードを検索させるよ
    うに、記憶回路を作動させる手段と、 (b) 検索された命令およびオペランド、ならび
    にそれらに関連する誤り検知コードを検査し
    て、それらに誤りが存在するか否かを決定す
    る手段と、 (c) 誤りが存在するか否かの決定を持つことな
    く、命令およびオペランド、ならびにそれら
    に関連する誤り検知コードをプロセツサ手段
    に送る手段と、 (d) 検知された誤りを、誤り訂正コードに従つ
    て訂正し、訂正したデータを記憶回路に書き
    込む手段と、 を含む記憶制御手段と; を具備していて、誤りの検知のために必要な遅延
    を伴なうことなく正しい命令及びオペランドの検
    索を行い、しかもプロセツサ手段による訂正によ
    らないで、正しくない命令およびオペランドにお
    ける誤りを訂正し得ることを特徴とするデータ処
    理装置。 2 A 命令およびオペランド等のデータと、そ
    れらのデータに関連する誤り訂正コードとを記
    憶するための複数のデータ記憶場所を有し、命
    令およびオペランドがそれらに関連する誤り訂
    正コードとは別個に記憶され、かつ検索される
    ように構成された記憶回路と; B 記憶回路に対して命令およびそれによつて指
    定されたオペランドの送出を要求する記憶要求
    信号を発生し、要求された命令およびオペラン
    ドを受け取り、そしてその命令を実行する実行
    手段と、 C 実行手段から記憶要求信号を受け取るように
    接続されて、データ語を受け取るように構成さ
    れており、 (a) 受け取つたデータ語からそれに関連する誤
    り訂正コードを発生する手段と、 (b) 受け取つたデータ語を、そのデータ語に関
    連する誤り訂正コードの発生の完了を持つこ
    となく、記憶回路に記憶させ、次でそのデー
    タ語に関連する誤り訂正コードを記憶回路に
    記憶させ、これと独立して記憶要求信号に応
    答して命令およびオペランドの検索を行なわ
    せるように、記憶回路を作動させる手段と、 (c) それらの命令およびオペランドを実行手段
    に送り出す手段と、 を含む記憶制御手段と; を具備していて、データの検索および実行手段に
    対するデータの送り出しを、そのデータに関連す
    る誤り訂正コードの発生により生じる遅延を伴な
    うことなく行ない得ることを特徴とするデータ処
    理装置。
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 JPS60179851A (ja) 1985-09-13
JPH0581935B2 true 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)

Families Citing this family (49)

* 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
JPH0754483B2 (ja) * 1986-07-15 1995-06-07 富士通株式会社 メモリアクセス方式
US4791641A (en) * 1986-09-15 1988-12-13 Thinking Machines Corporation Parallel processor error checking
US4791642A (en) * 1986-10-17 1988-12-13 Amdahl Corporation Buffer error retry
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
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
DE69114788T2 (de) * 1990-08-29 1996-07-11 Honeywell Inc Datenübertragungssystem mit Kontrollsummerechenmittel.
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
US5588112A (en) * 1992-12-30 1996-12-24 Digital Equipment Corporation DMA controller for memory scrubbing
US5339408A (en) * 1992-12-30 1994-08-16 Digital Equipment Corporation Method and apparatus for reducing checking costs in fault tolerant processors
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 情報記憶媒体利用システム
DE69533391D1 (de) * 1995-04-28 2004-09-23 St Microelectronics Srl Schaltung zur Erkennung einer Überspannung an einem elektrischen Verbraucher
DE69526789T2 (de) * 1995-09-29 2002-11-21 Stmicroelectronics S.R.L., Agrate Brianza 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
US7386756B2 (en) * 2004-06-17 2008-06-10 Intel Corporation Reducing false error detection in a microprocessor by tracking instructions neutral to errors
US7555703B2 (en) * 2004-06-17 2009-06-30 Intel Corporation Method and apparatus for reducing false error detection in a microprocessor
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
US7831882B2 (en) 2005-06-03 2010-11-09 Rambus Inc. Memory system 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
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
US8352805B2 (en) 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
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
WO2019190866A1 (en) 2018-03-26 2019-10-03 Rambus Inc. Command/address channel error detection

Family Cites Families (15)

* 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
JPS5294738A (en) * 1976-02-04 1977-08-09 Hitachi Ltd Error correction system
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
JPS604497B2 (ja) * 1977-03-09 1985-02-04 日本電気株式会社 記憶装置
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
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
JPS58114398A (ja) * 1981-12-25 1983-07-07 Nec Corp 記憶装置

Also Published As

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

Similar Documents

Publication Publication Date Title
JPH0581935B2 (ja)
JP2539199B2 (ja) デジタルプロセッサ制御装置
EP0706128B1 (en) Fast comparison method and apparatus for errors corrected cache tags
JP4395425B2 (ja) 破損データ値を処理するためのデータ処理装置と方法
US5701313A (en) Method and apparatus for removing soft errors from a memory
US4852100A (en) Error detection and correction scheme for main storage unit
US5297281A (en) Multiple sequence processor system
EP0321793B1 (en) Apparatus for forcing a reload from main memory upon cache memory error
JPS6324428A (ja) キヤツシユメモリ
US6895527B1 (en) Error recovery for speculative memory accesses
CN116382958A (zh) 一种内存错误的处理方法及计算设备
KR20200123799A (ko) 디바이스를 디버깅할 때 메타데이터에 액세스하기 위한 장치 및 방법
US20030018936A1 (en) High integrity cache directory
US5287483A (en) Prefetched operand storing system for an information processor
US4737908A (en) Buffer memory control system
EP0596144A1 (en) Hierarchical memory system for microcode and means for correcting errors in the microcode
US4594710A (en) Data processing system for preventing machine stoppage due to an error in a copy register
JPH02123442A (ja) 高速化メモリ
EP0297890A2 (en) Apparatus and method for data induced condition signaling
EP0655686A1 (en) Retry control method and device for control processor
JPS62130443A (ja) メモリアクセス制御装置
JPS6223899B2 (ja)
JPS6074032A (ja) マイクロプログラム制御装置
JPH0353660B2 (ja)
JPS61198335A (ja) 分岐予測制御方式