JPH0136137B2 - - Google Patents

Info

Publication number
JPH0136137B2
JPH0136137B2 JP58004764A JP476483A JPH0136137B2 JP H0136137 B2 JPH0136137 B2 JP H0136137B2 JP 58004764 A JP58004764 A JP 58004764A JP 476483 A JP476483 A JP 476483A JP H0136137 B2 JPH0136137 B2 JP H0136137B2
Authority
JP
Japan
Prior art keywords
error
register
data
address
circuit
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
Application number
JP58004764A
Other languages
English (en)
Other versions
JPS59129995A (ja
Inventor
Toshuki Hatsutori
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP58004764A priority Critical patent/JPS59129995A/ja
Publication of JPS59129995A publication Critical patent/JPS59129995A/ja
Publication of JPH0136137B2 publication Critical patent/JPH0136137B2/ja
Granted legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices

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)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は記憶装置に関し、特にその誤り訂正方
式に関する。
(従来技術) 従来の情報処理装置ではハミングコードなどの
誤り訂正符号を用い、RAMまたはROMのよう
なランダムアクセス形メモリから読出された1ワ
ードのデータの誤りを訂正するためには、誤り訂
正機能を有する記憶装置が使用され、これは第1
図に示すような構成である。
第1図において、記憶装置の一例はアドレスレ
ジスタ1と、RAMまたはROM2と、セレクタ
3と、データレジスタ4と、誤り訂正回路5とを
具備したものである。
第1図において、アドレスレジスタ1とデータ
レジスタ4とはそれぞれクロツク信号に同期して
動作しており、第1のアドレスレジスタ1の内容
を番地とする1ワードのデータがRAMまたは
ROM2から読出され、セルクタ3を通つてデー
タレジスタ4にセツトされる。
データレジスタ4の出力は、そのデータを必要
とする他の装置へ転送されるが、これと同時に誤
り訂正回路5にも加えられる。
もしデータレジスタ4の内容に誤りがあれば、
誤りが検出され、正しく訂正されてからセレクタ
3に戻されている。また、出力信号線104上の
データに誤りがあるか否かを他の装置へ知らせる
ため、信号線105が備えてある。
次に第1図の回路の動作の一例を第2図のタイ
ミングチヤートにより詳しく説明する。
アドレスレジスタ1からの出力信号線101上
の信号の状態がクロツクタイミングt1において
200番地を示している。RAMまたはROM2のア
ドレス200番地から1ワードのデータが信号線1
04上にデータ204として読出され、セレクタ
3を通り、次のクロツクタイミングt2においてデ
ータレジスタ4にセツトされる。
クロツクタイミングt2においては、データレジ
スタ4にセツトされているデータに誤りが含まれ
ていないか否かを誤り訂正回路5により検出す
る。誤りが存在しなかつた場合には、出力信号線
105の上の信号の状態は論理値0になり、出力
信号線104上の信号を受けとる装置はデータ2
04が有効であると認識する。
このクロツクタイミングt2においては、アドレ
スレジスタ1からの出力信号線101上のデータ
が201番地のアドレスを指示する。
201番地に記憶されているデータ205は上記
と同様にして、クロツクタイミングt3の期間にデ
ータレジスタ4へセツトされる。このとき、誤り
訂正回路5により誤りが検出されたものとすれ
ば、出力信号線105上の信号の状態は論理値1
になり、出力信号線104上のデータ205が誤
りであり、無効なことを他の装置が知る。
誤り訂正回路5はデータ205を正しく訂正し
てデータ206とし、セレクタ3を信号線106
の側に向ける。そこで、クロツクタイミングt4に
おいて正しいデータ206がデータレジスタ4に
セツトされる。クロツクタイミングt4ではデータ
レジスタ4にセツトされているデータは正しくな
つているので、出力信号線105上の信号の状態
は論理値0になる。
なお、クロツクタイミングt3からクロツクタイ
ミングt4に移るとき、アドレスレジスタ1の内容
が変化しないように保持する。以後、クロツクタ
イミングt4、t5ではデータレジスタ4にセツトさ
れているデータが正しいので、クロツクタイミン
グt1、t2におけるのと同様な動作をする。ところ
が、この方式では誤り訂正回路5により誤りを検
出するさいに、1ワード以内のECC部の誤りが
あつても、他の情報ビツトの誤りと同様に取扱つ
て訂正を行なつてしまう。このため、ECC部に
ワード方向の故障が存在するような場合には、デ
ータを読出すさいに第2図のクロツクタイミング
t3のような訂正サイクルが入り、クロツクタイミ
ングt3とt4とを交互に繰返すことになるため、実
際に有効な動作をしているのは全体の半分の時間
しか存在しないと云う欠点があつた。
(発明の目的) 本発明の目的は、1ワード内にデータ部と
ECC部とを有するランダムアクセス形のRAMま
たはROMにおいて、誤りの存在したビツトがデ
ータ部にあるか、あるいは誤り訂正のために付加
したECC部にあるかの判定を行なうため、パリ
テイチエツク回路と、シンドロームデコーダと、
判定論理回路とを備え、さらにデータ部に誤りが
存在する場合に限つて誤りの訂正を行なうように
データ部誤り訂正回路を設けることにより上記欠
点を解決し、アクセス性能の低下を抑圧するよう
に構成した誤り訂正回路を備えた記憶装置を提供
することにある。
(発明の構成) 本発明による記憶装置はRAM/ROMと、レ
ジスタと、誤り訂正回路とを少なくとも具備し、
誤り訂正回路はパリテイチエツク回路と、シンド
ロームデコーダと、判定論理回路と、データ部誤
り訂正回路とから成立つものである。
RAM/ROMは1ワード内にECC部とデータ
部とを有する情報を記憶するためのランダムアク
セス形のメモリである。
レジスタはRAM/ROMから読出した情報を
保持するための回路である。
誤り訂正回路は、レジスタに保持された内容に
誤りが存在する場合に、この誤りを検出して訂正
するための回路である。
誤り訂正回路を構成するためのパリテイチエツ
ク回路は、データ部とECC部のパリテイチエツ
クを行なうための回路である。シンドロームデコ
ーダはパリテイチエツク回路の出力を受け、パリ
テイエラー信号の組合せから誤りの生じているビ
ツトの指示信号を出力するための回路である。
判定論理回路はシンドロームデコーダの出力を
もとにして誤りの存在をチエツクし、誤りが
ECC部に存在するか、あるいはデータ部に存在
するかを判定して、データ部の誤りのみを訂正さ
せるよう指示するための回路である。
データ部誤り訂正回路はデータ部に誤りがある
場合にこれを訂正し、レジスタに戻すための回路
である。
(実施例) 次に、本発明について図面を参照しながら詳細
に説明する。
第3図に本発明による記憶装置の一実施例を示
す。
第3図は情報処理システムの制御記憶装置の一
例を示すものであり、第1〜第3のレジスタ6,
9,15と、第1〜第5のセレクタ7,10,1
3,14,18と、レジスタ群8と、加算器11
と、RAM/ROM12と、誤り訂正回路16と、
フリツプフロツプ群17とを具備したものであ
る。
第3図にしたがい、上記記憶装置の動作を以下
に説明する。
第3図において、RAM/ROM12にはマイ
クロ命令が記憶されている。
第2のセレクタ10の出力により、RAM/
ROM12の該当するアドレスにおける最下位ビ
ツト(LSB)を除く全ビツトがアクセスされる。
最下位ビツトの値が0(データ信号線116上に
表われる値)であるか、あるいは1(データ信号
線117上に表われる値)であるかは、第5のセ
レクタ18の出力に応じて第3のセレクタ13に
より選択されるように構成してある。
選択された1ワードのマイクロ命令は第4のセ
レクタ14を介して第3のレジスタ15に読出さ
れる。このマイクロ命令は、第4図に示すような
第1〜第5のフイールド19〜23から構成され
ている。
第1のフイールド19はデータパスを制御する
ためのフイールドである。例えば、第6図はデー
タパスの一例を示す図であり、第4および第5の
レジスタ24,25と、演算論理ユニツト
(ALU)26とから成立つ。
第1のフイールド19は、第4および第5のレ
ジスタ24,25に対する書込み信号と、演算論
理ユニツト26に対する演算モード信号とを制御
し、次の演算を行なわせるものである。
すなわち、 (第4のレジスタ24)+(第5のレジスタ2
5)→(第4のレジスタ24) (第4のレジスタ24)−(第5のレジスタ2
5)→(第5のレジスタ25) である。
第2のフイールド20はRAM/ROM12の
動作シーケンスを制御する命令を表わすためのフ
イールドである。
第3のフイールド21は第2のフイールド20
が第5図に示すようなTEST命令のとき、読出す
ビツトを選択するためのものである。
第4のフイールド22はブランチ先アドレスや
演算定数などを設定するためのフイールドであ
る。第4のフイールド23は冗長フイールドであ
り、冗長フイールドはマイクロ命令の1ワード内
の誤りを検出して訂正するためのフイールドであ
る。レジスタ群8はアドレスの後入れ先出しスタ
ツクであり、サブルーチンを呼出す場合の戻り番
地を保存しておくために使われる。
このレジスタ群8にアドレスを収容したときに
は、スタツクポインタとなる第1のレジスタ6の
内容は1だけ増分され、読出された後では1だけ
減分される。
第3のレジスタ15にセツトされているデータ
の第2のフイールド20がINCSR命令のときに
は、第1のセレクタ7は信号線108を選択し
CALL命令のときには信号線110を選択してレ
ジスタ群8にセツトするアドレスを切換えてい
る。
第2のレジスタ9は常に現在実行中のマイクロ
命令の次の番地を保持しているレジスタであり、
その内容は加算器11によつて増分される。した
がつて、第2のレジスタ9はマイクロプログラム
カウンタと呼ばれている。
第2のセレクタ10はRAM/ROM12のア
ドレスを選択するためのセレクタであり、複数の
信号線111,113,114のうち、いずれを
選ぶかは第3のレジスタ15にセツトされた第2
のフイールド20により決定される。
第2のフイールド20の内容が命令の命令部を
表わすものであることは第5図から明らかであ
る。第3のセレクタ13は条件付き分岐を行なわ
せるためのセレクタであり、第3のレジスタ15
にセツトされている第2のフイールド20が
TEST命令のとき、第3のフイールド21により
選択されたフリツプフロツプ群17のビツトの状
態が0であるか、あるいは1であるかによつて、
隣合つた偶数アドレスか、あるいは奇数アドレス
かのいずれかに分岐する。
これによつて、次のサイクルに実行する命令の
番地が指定される。
第4のセレクタ14はRAM/ROM12から
送出された命令コードか、あるいは誤り訂正回路
16により訂正されたコードかのいずれかを第3
のレジスタ15にセツトするように選択する。
第3のレジスタ15は現在実行中のマイクロ命
令を保持するためのレジスタである。
誤り訂正回路16は誤りを訂正するための回路
であり、第3のレジスタ15のECC部以外のフ
イールド、すなわち第1〜第4のフイールド19
〜22に誤りがあつたことを検出した場合には、
第3のレジスタ15の内容が無効であることを信
号線122に使つて示している。
信号線122上の信号により、第1のレジスタ
6と、レジスタ群8と、第2のレジスタ9と、第
4のレジスタ24と、第5のレジスタ25とは内
容を保持している。
この場合、正しく訂正されたデータは第4のセ
レクタ14に戻され、第3のレジスタ15にセツ
トされる。また、誤りが存在しないか、あるいは
誤りが存在してもECC部の第5のフイールド2
3に誤りが存在するような場合には、上記のよう
な誤り訂正動作は行なわない。
フリツプフロツプ群17は演算の結果生じたオ
ール0やオーバフローなどの状態を保持するため
のフリツプフロツプの集合体であり、第3のレジ
スタ15にセツトされている第2のフイールド2
0の内容がTEST命令の場合に限り、第3のフイ
ールド21によつてフリツプフロツプ群17のひ
とつのビツトだけが選択され、信号線126と、
第5のセレクタ18と、信号線125とを介して
第3のセレクタ13を切換える。
その結果、信号線125上の信号の状態が0で
あるならば、偶数アドレス側の信号線116を選
択し、1であるならば奇数アドレス側の信号線1
17を選択して条件付き分岐をする。
第2のフイールド20がTEST命令ではない場
合には、第5のセレクタ18は信号線124の側
を選択し、第2のセレクタ10の最下位ビツトに
よりRAM/ROM12の最下位アドレスを決定
することになる。
第8図と第9図とは、上記回路部分の動作を説
明するための図であり、マイクロプログラムとそ
の実行タイミングチヤートとを解析的に示した図
である。
いま、第9図に示すようにマイクロ命令は
RAM/ROM12に記憶されているものとする。
最初に000番地の命令を実行するものとすれば、
INCSRが実行され、第5図から明らかなように
第2のセレクタ10は信号線113を選択し、第
1のセレクタ7は信号線108を選択し、第4の
フイールド22の内容“001”がレジスタ群8に
格納され、第1のレジスタ6の内容は“001”と
なつて次の001番地へ進む。
001番地はTEST命令であり、第3のフイール
ド21により選択されたフリツプフロツプ群17
のなかの特定ビツトが0であるとすれば、第3の
セレクタ13は信号線116を選択し、最下位ビ
ツトの値は0である。
また、第2のセレクタ10は第4のフイールド
22に接続された信号線114を選択するので、
2+0→2となり、次のサイクルは002番地へ進
む。002番地はRTN命令を格納しており、レジス
タ群8からはINCSRで始まる“1”が読出され、
第2のセレクタ10は信号線111の側を選択す
る。
そこで、次は001番地へ飛ぶ。
001番地は上記と同様なTEST命令であるが、
前回とは異なつてフリツプフロツプ群17により
選択されたビツトの値が“001”であつたとすれ
ば、002+001→003となり、次は003番地へ飛ぶ。
003番地にはBRH命令が格納されており、第2の
セレクタ10は信号線114を選択して第4のフ
イールド22をアクセスする。その結果、次は
006番地に飛ぶ。006番地はCALL命令であり、こ
れは第1のセレクタ7は信号線110の側を選択
し、第2のレジスタ9の内容をレジスタ群8に格
納する。これと同時に、第2のセレクタ10は信
号線114の側を選択する。その結果、次は004
番地へ飛ぶ。004番地にはINC命令が格納され、
第2のセレクタ10が信号線113の側を選択す
る。その結果、次は005番地へ進む。005番地には
RTN命令が格納され上記のようにレジスタ群8
に格納されていた007番地へ飛ぶ。007番地には
INC命令が格納され、次は008番地へ飛ぶと云つ
た具合に命令のシーケンスが進んでゆく。
この間、第3のレジスタ15の他のフイールド
によつてデータパスが制御され、各種の演算やデ
ータの転送が行なわれる。
第10図は、第3図における誤り訂正回路16
とその周辺との構成の一実施例を詳細に示した図
である。
第10図において、添字aはデータ部ビツトに
属するもの、添字bはECC部ビツトに属するも
のを示している。誤り訂正回路16において、2
7はパリテイチエツク回路であり、ECC部とデ
ータ部とのパリテイチエツクを行うものである。
28はシンドロームデコーダであり、パリテイチ
エツク回路27の出力を信号線134を介して受
け、パリテイエラー信号の組合せから誤りの生じ
ているビツトを指示する信号を信号線135に出
力するためのデコーダである。
29はデータ部の誤りを訂正するためのデータ
部誤り訂正回路である。
その出力信号線123aは第4のセレクタ14
に戻され、訂正セレクタのときに正正しいデータ
が第3のレジスタ15にセツトされる。
30はシンドロームデコーダ28の出力をもと
にして誤りが存在するか否かをチエツクし、誤り
が存在する場合にはデータ部ビツトに存在するも
のであるか、あるいはECC部ビツトに存在する
ものであるかを判定するための判定論理回路であ
る。誤りが存在しないか、あるいは存在していて
もECC部ビツトに限られている場合には信号線
120上のデータは有効であり、データ部ビツト
15aの内容が誤つている場合には信号線120
上の信号が無効であると云う信号を信号線122
上に出力する。
本明細では装置全体の性能を左右する情報処理
装置の制御用記憶装置に対して実施した例を示し
たが、誤り訂正符号を有する他のいかなる記憶装
置にも応用できることは云うまでもない。
(発明の効果) 本発明には以上説明したように、1ワード内に
データ部とECC部とを有するランダムアクセス
形のRAMまたはROMにおいて、誤りの存在し
たビツトがデータ部にあるか、あるいはECC部
にあるかの判定を行なうため、パリテイチエツク
回路と、シンドロームデコーダと、判定論理回路
とを備え、さらにデータ部に誤りが存在する場合
に限つて誤りの訂正を行なうようにデータ部誤り
訂正回路を設けることにより、記憶装置の1ワー
ド内の1〜2割を占めるECC部の誤りを訂正す
る時間を省略することができ、長期的にみれば平
均アクセスタイムが短縮され、処理を有効に行な
うことができると云う効果がある。
【図面の簡単な説明】
第1図は従来方式により構成した誤り訂正回路
を具備した記憶装置のブロツク図である。第2図
は第1図の動作を示すタイミングを示す図であ
る。第3図は本発明による記憶装置の一実施例を
示すブロツク図である。第4図は第3図の記憶装
置を動作させるためのマイクロ命令のフオーマツ
トの一例を示す図である。第5図は第4図におけ
る命令フイールドの動作を要約した図である。第
6図は第3図の記憶装置の出力により制御される
演算回路の一実施例を示すブロツク図である。第
7図は第6図の演算回路の動作例を示すタイミン
グ図である。第8図は第3図における動作例を示
すタイミング図である。第9図は第3図の記憶装
置を動作させるためのマイクロプログラムの一例
を示す図である。第10図は第3図の記憶装置に
含まれている誤り訂正回路の構成例を示すブロツ
ク図である。 1,4,6,9,15,24,25…レジス
タ、2,12…RAM/ROM、3,7,10,
13,14,18…セレクタ、5,16…誤り訂
正回路、8…レジスタ群、11…加算器、17…
フリツプフロツプ群、19〜23…マイクロ命令
内部フイールド、26…演算論理ユニツト、27
…パリテイチエツク回路、28…シンドロームデ
コーダ、29…データ部誤り訂正回路、30…判
定論理回路、101〜135…信号線、200〜
207…情報。

Claims (1)

    【特許請求の範囲】
  1. 1 ワード内にデータ部とECC部とを有する情
    報を記憶するためのランダムアクセス形のRAM
    またはROMと、前記RAMまたはROMから読出
    した前記情報を保持するためのレジスタと、前記
    レジスタに保持された内容に誤りが存在する場合
    には、前記誤りを検出して訂正するための誤り訂
    正回路とを少なくとも具備し、かつ、前記誤り訂
    正回路は前記データ部と前記ECC部のパリテイ
    チエツクを行なうためのパリテイチエツク回路
    と、前記パリテイチエツク回路の出力を受けてパ
    リテイエラー信号の組合せから誤りが生じている
    ビツトの指示信号を出力するためのシンドローム
    デコーダと、前記シンドロームデコーダの出力を
    もとにして誤りの存在をチエツクし、前記誤りが
    前記ECC部に存在するか、あるいは前記データ
    部に存在するかを判定して前記データ部の誤りの
    みを訂正させるよう指示するための判定論理回路
    と、前記データ部の誤りを訂正して前記レジスタ
    に戻すためのデータ部誤り訂正回路とから成立つ
    ことを特徴とした記憶装置。
JP58004764A 1983-01-14 1983-01-14 記憶装置 Granted JPS59129995A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58004764A JPS59129995A (ja) 1983-01-14 1983-01-14 記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58004764A JPS59129995A (ja) 1983-01-14 1983-01-14 記憶装置

Publications (2)

Publication Number Publication Date
JPS59129995A JPS59129995A (ja) 1984-07-26
JPH0136137B2 true JPH0136137B2 (ja) 1989-07-28

Family

ID=11592936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58004764A Granted JPS59129995A (ja) 1983-01-14 1983-01-14 記憶装置

Country Status (1)

Country Link
JP (1) JPS59129995A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62251949A (ja) * 1986-04-25 1987-11-02 Mitsubishi Electric Corp 記憶装置の誤り訂正方法
US9110829B2 (en) * 2012-11-30 2015-08-18 Taiwan Semiconductor Manufacturing Co. Ltd. MRAM smart bit write algorithm with error correction parity bits

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56168266A (en) * 1980-05-28 1981-12-24 Fujitsu Ltd Processing system for error of memory for control
JPS5771032A (en) * 1980-10-22 1982-05-01 Nec Corp Priority controlling circuit

Also Published As

Publication number Publication date
JPS59129995A (ja) 1984-07-26

Similar Documents

Publication Publication Date Title
US4409654A (en) Data processor adapted for interruption to an instruction stream
US4446517A (en) Microprogram memory with page addressing and address decode in memory
EP0125855A2 (en) Buffer-storage control system
JPH0460720A (ja) 条件分岐命令制御方式
US4171765A (en) Error detection system
JPS59129995A (ja) 記憶装置
JPH0746323B2 (ja) 部分書込みアクセスを圧縮する主記憶装置
EP0113982A2 (en) A data processing system
JPS60214043A (ja) パイプライン制御回路
JPS58213349A (ja) 情報処理装置
JPH02207355A (ja) メモリ読出し方式
JPH038029A (ja) マイクロプログラム制御装置
JPH0823849B2 (ja) メモリ読出レジスタ制御装置
EP0305530A1 (en) High-speed floating point arithmetic unit
JPH0533252U (ja) メモリ制御装置
JPH0520215A (ja) 情報処理装置
JPH0135369B2 (ja)
JPH05120155A (ja) マイクロプログラム制御装置
JPH04255032A (ja) 制御記憶装置のエラー訂正方式
JPS63276126A (ja) 命令デコ−ド回路
JPS5936853A (ja) 演算処理装置
JPS6340939A (ja) 制御記憶のエラ−修正制御方式
JPH03186981A (ja) キャッシュメモリ内蔵マイクロプロセッサ
JPH0638239B2 (ja) 誤り訂正機構
JPS60238933A (ja) 制御記憶装置のエラ−処理方式