JPH08190512A - データ記憶制御装置 - Google Patents

データ記憶制御装置

Info

Publication number
JPH08190512A
JPH08190512A JP7003373A JP337395A JPH08190512A JP H08190512 A JPH08190512 A JP H08190512A JP 7003373 A JP7003373 A JP 7003373A JP 337395 A JP337395 A JP 337395A JP H08190512 A JPH08190512 A JP H08190512A
Authority
JP
Japan
Prior art keywords
data
error detection
requested
stored
correction
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
JP7003373A
Other languages
English (en)
Inventor
Yuji Sugaya
祐二 菅谷
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 JP7003373A priority Critical patent/JPH08190512A/ja
Publication of JPH08190512A publication Critical patent/JPH08190512A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】 誤り検出訂正及びメモリアクセスを高速に行
い、メモリの使用効率を向上可能なデータ記憶制御装置
を実現する。 【構成】 制御ユニット7はMPU14の要求アドレス
データがメモリ3a、3b、3cに格納されているかを
判定し、格納されてなければ、メモリ15から要求アド
レスデータ1及び関連アドレスデータ2、3を読み出
す。データ1、2、3のエラー検出訂正が各ECC実行
ユニット4a、4b、4cにて並列に実行される。エラ
ー検出訂正されたデータがメモリ3a、3b、3cに格
納され、要求されたデータ1がMPU14に転送され
る。要求されたアドレスデータがメモリ3a、3b、3
cに格納されていれば、データはそのメモリから出力制
御部5を介しMPU14に転送される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムにおけ
るデータの記憶制御装置に係わり、特に、データの誤り
を検出訂正して、メモリに格納又はメモリからの読み出
しを制御するデータ記憶制御装置に関する。
【0002】
【従来の技術】半導体の分野では、微細化技術が著しく
進展している。各種メモリ素子では、この微細化技術の
進展によりメモリ素子1個あたりの記憶容量が増大する
が、記憶セル1個の占める体積の縮小による蓄積電荷量
の減少や、微小欠陥の発生確率の上昇、動作の高速化に
伴う電気的なノイズの印加等の外部要因等により、デー
タ中のエラービットの発生確率が高くなる。一般に、メ
モリにおけるデータの信頼性向上の方法としては、パリ
ティチェック方式とECC(エラー検出訂正)方式が知
られている(例えば、特開昭59−3800号公報記載
のメモリシステム)。
【0003】パリティチェック方式では、データビット
に1ビットのパリティビットを付加し、パリティビット
によりデータビットとパリティビット中のビットの値が
“1”であるビットの数を奇数若しくは偶数に統一して
メモリに書き込み、読み出し時にはデータビットとパリ
ティビット中のビットの値が“1”であるビットの数を
チェックすることにより誤りの検出を行う。
【0004】また、ECC方式では、拡張ハミングコー
ドを用いてデータビットよりチェックビットを生成し、
データビットとチェックビットとをメモリに書き込む。
そして、読み出し時にはメモリから読み出したデータビ
ットとチェックビットとからシンドロームを生成し、こ
のシンドロームにより1ビットの誤り訂正及び2ビット
の誤り検出を行う。
【0005】
【発明が解決しようとする課題】しかしながら、上述し
たパリティチェック方式では奇数個ビットの誤り検出の
みが可能で、偶数個ビットの誤り検出はできない。ま
た、奇数個ビットの誤り検出時もデータ中のどのビット
に誤りがあるかを指定できないため誤りが訂正できない
欠点があった。
【0006】これに対し、ECC方式では、1ビットの
誤り訂正及び2ビットの誤り検出が可能である。しかし
ながら、ECC方式では、パリティチェック方式より、
誤り検出訂正の手法が複雑であるため、ECC実行によ
るメモリアクセスの時間が必要で、オーバヘッドタイム
が長くなる欠点があった。
【0007】本発明の目的は、これら従来技術の欠点を
解消し、誤り検出訂正及びメモリアクセスを高速に行
い、メモリの使用効率を向上可能なデータ記憶制御装置
を実現することである。
【0008】
【課題を解決するための手段】本発明は、上記目的を達
成するため、次のように構成される。データ記憶手段の
データ読みだし及び書き込みを制御するデータ記憶制御
装置において、データ記憶手段に記憶されたデータとこ
のデータの誤り検出訂正用情報とが供給され、供給され
たデータの誤りを検出し、訂正する複数のデータ誤り検
出訂正手段と、複数のデータ誤り検出訂正手段により誤
り訂正された複数のデータを記憶するバッファメモリ
と、データ読みだし要求に応答し、読みだし要求された
データがバッファメモリに記憶されているか否かを判定
し、記憶されていれば、読みだし要求されたデータをデ
ータプロセッサに供給し、要求されたデータがバッファ
メモリに記憶されていなければ、読みだし要求されたデ
ータと、このデータに関連するデータと、誤り検出訂正
情報とをデータ記憶手段から読みだし、各データを複数
のデータ誤り検出訂正手段に供給し、これら複数のデー
タ誤り検出訂正手段のデータ誤り検出訂正動作をほぼ同
時に実行させ、誤り検出訂正されたデータを、バッファ
メモリに記憶させるとともに、読みだし要求されたデー
タをデータプロセッサに出力させるデータ制御手段とを
備える。
【0009】好ましくは、上記データ記憶制御装置にお
いて、データプロセッサからデータの書き込み要求に応
答し、データ制御手段からの指令に従って、書き込み要
求されたデータのデータ誤り検出訂正情報を生成し、書
き込み要求されたデータと、生成したデータ誤り検出訂
正用情報とをデータ記憶手段に記憶させるデータ誤り検
出訂正情報生成手段を、さらに備え、このデータ誤り検
出訂正情報生成手段は、書き込み要求されたデータがデ
ータ記憶手段に記憶されたデータのデータ長未満であ
り、かつ、書き込み要求されたデータを記憶すべきアド
レスに対応するアドレスのデータが、バッファメモリに
記憶されている場合には、このバッファメモリに記憶さ
れたデータと書き込み要求されたデータとをデータ長と
等しいデータ長となるように組み合わせ、組み合わせた
データに対して、データ誤り検出訂正用情報を生成す
る。
【0010】また、データ記憶手段のデータ読みだし及
び書き込みを制御するデータ記憶制御装置において、デ
ータ記憶手段に記憶されたデータとこのデータの誤り検
出訂正用情報とが供給され、供給されたデータの誤りを
検出し、訂正するデータ誤り検出訂正手段と、データ誤
り検出訂正手段により誤り訂正されたデータを記憶する
バッファメモリと、データプロセッサから書き込み要求
されるデータのデータ誤り検出訂正用情報を生成し、書
き込み要求されたデータと、生成したデータ誤り検出訂
正用情報とをデータ記憶手段に記憶させるデータ誤り検
出訂正用情報生成手段と、データ書き込み要求に応答
し、書き込み要求されたデータがデータ記憶手段に記憶
されたデータのデータ長未満であり、かつ、書き込み要
求されたデータを記憶すべきアドレスに対応するアドレ
スのデータが、バッファメモリに記憶されていない場合
には、上記アドレスのデータをデータ記憶手段から読み
だし、データ誤り検出訂正手段及びデータ誤り検出訂正
用情報生成手段に供給し、データの誤りを検出させると
ともに、データ記憶手段から読みだしたデータと書き込
み要求されたデータとを組み合わせ、上記データ長と等
しいデータ長となるように組み合わせ、組み合わせたデ
ータの誤り検出訂正用情報を生成させ、データ誤り検出
訂正手段により、データの誤りが検出されなかったとき
には、組み合わせたデータ及び生成したデータ誤り検出
訂正用情報を、データ記憶手段に記憶させるデータ制御
手段とを備える。
【0011】好ましくは、上記データ記憶制御装置にお
いて、データ誤り検出訂正手段は、複数個備えられ、デ
ータ制御手段は、データ読みだし要求に応答し、読みだ
し要求されたデータがバッファメモリに記憶されている
か否かを判定し、記憶されていれば、読みだし要求され
たデータをデータプロセッサに供給し、要求されたデー
タがバッファメモリに記憶されていなければ、読みだし
要求されたデータと、このデータに関連するデータと、
誤り検出訂正情報とをデータ記憶手段から読みだし、各
データを上記複数のデータ誤り検出訂正手段に供給し、
これら複数のデータ誤り検出訂正手段のデータ誤り検出
訂正動作をほぼ同時に実行させ、誤り検出訂正されたデ
ータを、バッファメモリに記憶させるとともに、読みだ
し要求されたデータをデータプロセッサに出力させる。
【0012】
【作用】読みだし要求されたデータがバッファメモリに
記憶されていない場合には、読みだし要求されたデータ
と、このデータに関連するデータとがデータ記憶手段か
ら読みだされ、複数のデータ誤り検出訂正手段に供給さ
れる。これら複数のデータ誤り検出訂正手段は、データ
制御手段により、ほぼ同時に動作される。そして、誤り
検出訂正された複数のデータは、バッファメモリに記憶
される。読みだし要求されたデータに関連するデータ
は、続いて、データプロセッサから読みだし要求される
確率が高く、読みだし要求された場合には、既に、誤り
検出訂正されたデータがバッファメモリに格納されてい
るので、データの読みだしが高速化される。
【0013】また、書き込み要求されたデータがデータ
記憶手段に記憶されたデータのデータ長未満であり、か
つ、書き込み要求されたデータを記憶すべきアドレスに
対応するアドレスのデータが、バッファメモリに記憶さ
れている場合には、このバッファメモリに記憶されたデ
ータを書き込み要求されたデータに組み合わせることが
できる。これにより、書き込み要求されたデータを格納
すべきアドレスに対応するデータの読みだし及び読みだ
したデータの誤り検出訂正を省略でき、データの書き込
み動作時間が短縮される。
【0014】また、書き込み要求されたデータがデータ
記憶手段に記憶されたデータのデータ長未満であり、か
つ、書き込み要求されたデータを記憶すべきアドレスに
対応するアドレスのデータが、バッファメモリに記憶さ
れていない場合には、上記アドレスのデータをデータ記
憶手段から読みだし、データの誤りの検出並びに書き込
み要求されたデータとの組み合わせ及び組み合わせたデ
ータの誤り検出訂正用情報の生成が、並列して実行され
る。そして、データの誤りが検出されなかったときに
は、上記組み合わせたデータ及び生成したデータ誤り検
出訂正用情報が、データ記憶手段に記憶される。
【0015】したがって、データ記憶手段から読みだし
たデータの誤り訂正、誤り訂正されたデータと書き込み
要求されたデータとの組み合わせ及びそれに続く誤り検
出訂正用情報の生成に要する時間が省略され、データ書
き込み時間の短縮化が可能となる。
【0016】
【実施例】以下、本発明の実施例を添付図面に基づいて
説明する。図1は本発明の第1実施例であるデータ記録
制御装置の概略構成図である。図1において、MPU
(メインプロセッサ(データプロセッサ))14から読
み出し要求するデータのアドレスが、制御信号とともに
アドレスバス12及び制御信号線13を介して制御ユニ
ット7に供給される。制御ユニット7は、メモリ15か
ら読み出すべきデータのアドレス及び制御信号とをアド
レスバス10及び信号線11を介してメモリ15に供給
する。
【0017】メモリ15は、制御ユニット7から要求さ
れたアドレスのデータ及びチェクビットを、メモリデー
タバス8及びチェックビットバス9を介して、データの
誤り検出訂正用のECC実行ユニット4a、4b及び4
cに供給する。ECC実行ユニット4a、4b及び4c
は、制御ユニット7からの制御信号に従って、供給され
たチェックビットデータ(データ誤り検出訂正用情報)
を基に読み出しデータの誤り検出訂正を行う。
【0018】ECC実行ユニット4a、4b、4cから
の誤り検出訂正実行後のデータは、それぞれバッファメ
モリ3a、3b、3cに格納される。出力制御部5は、
制御ユニット7からの制御信号に従って、バッファメモ
リ3a、3b、3cからのデータをMPUデータバス6
を介してMPU14に出力する。
【0019】図2は、制御ユニット7の内部ブロック図
である。図2において、アドレス比較部71は、MPU
アドレスバス12上のMPU14がアクセスするメモリ
のアドレスに対応するデータがバッファメモリ3a、3
b、3cに格納されているかどうかを判断する。そし
て、アドレス比較部71は、MPU14がアクセスする
データがバッファメモリ3a、3b、3c内に存在する
場合、データが格納されているバッファメモリの位置を
データ位置通知バス72に出力する。また、MPU14
がアクセスするデータがバッファメモリ3a、3b、3
c内に存在しない場合は、MPU14がアクセスするメ
モリのアドレスをデータ位置通知バス72に出力する。
【0020】さらに、アドレス比較部71は、MPU1
4がアクセスするデータがバッファ3a、3b、3c内
に存在するかしないかの情報をデータヒット情報線73
に出力する。制御信号発生部74は、メモリアドレスバ
ス10に、MPU14がアクセスするメモリのアドレス
を出力する。また、制御信号発生部74は、MPU制御
信号線13上のMPUからの制御信号、データ位置通知
バス72、データヒット情報線73上のデータから、E
CC実行ユニット4a、4b、4c、バッファメモリ3
a、3b、3c、出力制御部5及びメモリ15を制御す
る信号を生成し、制御信号線11に出力する。
【0021】図3は、メモリ15のアドレスとそのアド
レスに格納されたデータの対応関係を示す図である。図
4は、図1の例の動作フローチャートである。図4のス
テップ100において、MPU14からのデータ読みだ
し要求があれば、ステップ101に進む。そして、この
ステップ101において、制御ユニット7は、読みだし
要求されたアドレスnのデータは、バッファメモリ3
a、3b又は3cに格納されているか否かを判定する。
【0022】要求されたデータがバッファメモリ3a、
3b又は3cに格納されていなければ、ステップ102
に進み、メモリ15から要求されたアドレスnのデータ
を読み出すとともに、このアドレスnに関連するアドレ
スn+1、n+2のデータを読み出す。そして、ステッ
プ103、104、105において、アドレスn、n+
1、n+2のデータのエラー検出訂正が、それぞれEC
C実行ユニット4a、4b、4cにて並列に実行され
る。次に、ステップ106、107、108において、
エラー検出訂正されたデータが、バッファメモリ3a、
3b、3cにそれぞれ格納される。そして、ステップ1
09において、MPU14から要求されたアドレスnの
データが、バッファメモリ3aからMPU14に転送さ
れる。
【0023】また、ステップ101において、要求され
たアドレスのデータがバッファメモリ3a、3b又は3
cに格納されていれば、ステップ109に進み、そのデ
ータが格納されたバッファメモリから出力制御部5を介
してMPU14にデータが転送される。つまり、MPU
14からアドレス0001のデータ1が読みだし要求さ
れると、このアドレス0001のデータ1とともに、デ
ータ1に関連するアドレス0002及び0003のデー
タ2及び3が(これら関連するデータは、読みだし要求
されたデータに続いて、読みだし要求される確率が高
い)、メモリ15が読み出され、これらのデータ1、2
及び3の誤り検出訂正が並列に実行される。そして、誤
り検出訂正が行われたデータ1、2及び3がバッファメ
モリ3a、3b及び3cに格納され、MPU14から要
求されたデータ1がMPU14に転送される。
【0024】次に、MPU14からアドレス0002又
は0003のデータ2又は3が要求されると、制御ユニ
ット7は、図5に示すように(ただし、図5の例はデー
タ0002が読みだし要求された場合を示す)、バッフ
ァメモリ3b又は3cから要求されたデータをMPU1
4に転送する。
【0025】図6は、図1の例におけるデータ1、2及
び3に対して並列に誤り検出訂正の実行タイミングを示
し、図7は、図1の例と異なり、関連するデータ1、2
及び3に対して順に誤り検出訂正を行う場合の実行タイ
ミングを示す。図6において、時点t0からデータ1に
対する誤り検出訂正が開始され、時点t3にて終了し、
MPU14にデータを転送する(図6の(A)、(B)
及び(E))。そして、時点t3以前の時点t1からデー
タ2に対する誤り検出訂正が開始され、時点t4にて終
了し、バッファメモリ3bに格納される(図6の(A)
及び(C))。次に、時点t3以前の時点t2からデータ
3に対する誤り検出訂正が開始され、時点t5にて終了
し、バッファメモリ3cに格納される(図6の(A)及
び(D))。
【0026】これに対して、図7の例の場合は、時点t
0からデータ1に対する誤り検出訂正が開始され、時点
3にて終了し、MPU14にデータ1が転送される。
続いて、時点t3からデータ2に対する誤り検出訂正が
開始され、時点t6にて、終了し、この時点t6からデー
タ3に対する誤り検出訂正が開始され、時点t7にて終
了する。
【0027】図6の例においては、データ1に対する誤
り検出訂正が終了する時点t3以前に、データ2及び3
に対する誤り訂正検出が開始されている。したがって、
図6の例の場合には、図7の例におけるデータ2の誤り
検出訂正が終了する時点t6以前にデータ3の誤り検出
訂正が終了する。
【0028】以上のように、本発明の第1実施例によれ
ば、MPU14から読みだし要求されたアドレスのデー
タと、このアドレスのデータに関連する複数のアドレス
のデータとを読みだし、これら複数のデータの誤り検出
訂正を複数のECC実行ユニットにより並列に実行す
る。そして、誤り検出訂正されたデータは、データバッ
ファに格納される。したがって、複数のデータの誤り検
出訂正を高速に実行可能であるとともに、関連するデー
タの読みだしが高速に実行でき、メモリの使用効率を向
上可能なデータ記憶制御装置を実現することができる。
【0029】なお、上述した例においては、関連するデ
ータは、連続したアドレスのデータとしたが、必ずしも
連続したアドレスのデータでなくてもよい。また、上述
した例においては、各ECC実行ユニット毎に、別個の
バッファメモリを配置したが、一つのメモリに、誤り検
出訂正された複数のデータを格納するように構成するこ
とも可能である。
【0030】さて、データ記憶制御装置において、パー
シャルライト、つまり、チェックビット生成の対象とな
るデータ長よりも小さいデータ長のデータをメモリに書
き込む場合においては、まず、チェックビット生成の対
象となるデータ長のデータをメモリから読み出す。そし
て、読みだしたデータの誤り検出訂正をECC実行ユニ
ットにより行い、誤り検出訂正後のデータとMPUから
の書き込みデータ(データ長小)を組合せる。この組み
合わせたデータに対し、さらに、ECC実行ユニットに
よりチェックビット生成を行った後にメモリに書き込み
を行っていた。
【0031】つまり、ECC実行ユニット200では、
ある固定長のデータに対して、拡張ハミングコードによ
りチェックビットが生成される。例えば、データ長8、
16、32ビットのデータに対して、それぞれ5、6、
7ビットのチェックビットが生成される。データとその
データに対するチェックビットをメモリに書き込み、メ
モリからのデータ読み出し時にチェックビットも同時に
読み出し、このチェックビットを基にデータの誤り検出
訂正を行う。
【0032】32ビットのデータに対して、7ビットの
チェックビットが生成されると仮定すると、MPU14
からの書き込みデータが8又は16ビットであり、チェ
ックビット生成の対象となるデータ長(32ビット)よ
りも小さい場合、データをそのままメモリに書き込む
と、チェックビットがデータに対応した値にならなくな
る。
【0033】そこで、図8の(A)に示すようにパーシ
ャルライトでは、まず、MPU14が8、16ビットの
書き込みを行うメモリ15のアドレスから、32ビット
データ(d1d2d3d4)と対応するチェックビット
を読み出し、ECC実行ユニット200により誤り検出
訂正を行ってから、マルチプレクサ1により、誤り検出
訂正実行後の32ビットデータとMPU14からの8又
は16ビットの書き込みデータ(D1D2)とを組み合
わせて、32ビットデータ(D1D2d3d4)とす
る。
【0034】そして、図8の(B)に示すように、上記
32ビットデータ(D1D2d3d4)に対してECC
実行ユニット200によりチェックビットを生成し、こ
の32ビットデータとチェックビットとをメモリ15へ
書き込む。
【0035】この結果、パーシャルライトは、メモリか
らの32ビットデータの読み出し、読みだしたデータの
誤り検出訂正をし、8又は16ビットデータと32ビッ
トデータとを組み合わせたデータに対してチェックビッ
トを生成して、メモリ書き込みを実行する必要があっ
た。
【0036】パーシャルライトを無くし、メモリからの
読み出し、ECC実行による誤り検出訂正の時間を省く
ために、メモリアクセスの最小単位であるバイト(8ビ
ット)毎にチェックビット5ビットを生成するように構
成することも考えられる。しかし、8ビット毎にチェッ
クビットを5ビット生成すると、32ビットデータに対
しては、チェックビット長が20ビットとなってしま
う。この結果、データ長に対するチェックビット長の割
合が大きくなりメモリの使用効率が悪くなる。
【0037】図9は、本発明の第2実施例であるデータ
記憶制御装置の概略構成図であり、上述したパーシャル
ライトにおけるデータのメモリ書き込み時間を短縮可能
な例である。この図9の例において、図1の例と同等な
ものには、同一の符号が付してある。
【0038】そして、図9の例においては、図1の例
に、バッファメモリ3a、3b、3c、MPU14から
のデータが供給されるマルチプレクサ1と、このマルチ
プレクサ1からのデータに対してチェックビットを生成
し、この生成したデータとチェックビットとをメモリ1
5に格納するチェックビット生成用ECC実行ユニット
2が追加されている。
【0039】図10は、図9の例の動作フローチャート
である。図10のステップ110において、MPU14
からのデータ書き込み要求があると、ステップ111に
進み、制御ユニット7が書き込みデータが所定長(例え
ば、32ビット長)未満か否かを判定し、所定長未満で
なければ、ステップ114に進む。そして、このステッ
プ114において、書き込みデータは、MPU14から
マルチプレクサ1を介して、チェックビット生成用EC
C実行ユニット2に供給され、チェックビットが生成さ
れる。次に、ステップ115に進み、MPU14からの
データとチェックビットとが、ECC実行ユニット2か
らメモリ15に転送され、格納される。
【0040】ステップ111において、書き込みデータ
が所定長未満であれば、ステップ112に進み、制御ユ
ニット7はデータを書き込むアドレスが、バッファメモ
リ3a、3b、3cに格納されたデータのアドレスと一
致するか否かを判定する。そして、書き込み要求された
アドレスとバッファメモリに格納されたアドレスとが一
致すると、ステップ113に進み、バッファメモリに格
納されたデータと書き込み要求されたデータとが、マル
チプレクサ1を介してECC実行ユニット2に供給さ
れ、両データが組み合わされる。次に、ステップ114
において、組み合わされたデータのチェックビットが、
ECC実行ユニット2にて生成される。続いて、ステッ
プ115において、組み合わされたデータと、チェック
ビットとがメモリ15に格納される。上記ステップ11
3、114及び115の状態を図11に示す。
【0041】ステップ112において、バッファメモリ
に格納されたアドレスと一致しなければ、図8に示した
ように、メモリ15から対応するデータを読みだして、
誤り検出訂正、データ組み合わせ、チェックビット生成
が実行される。
【0042】つまり、バッファメモリに格納されたアド
レスと一致しなければ、ステップ112から、ステップ
116に進み、メモリ15から所定長の対応するデータ
(32ビット)を読み出す。次に、読みだしたデータ
は、ステップ117において、ECC実行ユニット4
a、4b又は4cにより誤り検出訂正が実行される。
【0043】そして、ステップ118において、ECC
実行ユニット2は誤り検出訂正されたデータと、書き込
み要求されたデータとを組み合わせる。次に、ステップ
114において、チェックビットを生成し、ステップ1
15において、組み合わせたデータと、生成したチェッ
クビットとが、メモリ15に格納される。
【0044】以上のように、本発明の第2実施例によれ
ば、第1実施例と同様な効果が得られる他、次のような
効果がある。つまり、パーシャルライトの場合、バッフ
ァメモリに格納されたアドレスと書き込み要求されたデ
ータのアドレスとが一致するときには、メモリ15から
のデータ2の読みだし及び読みだしたデータの誤り検出
訂正が不要となり、パーシャルライトを高速化できる。
これより、チェックビット長を増やすことなく、バイト
毎にチェックビットを生成した場合と同様なパーシャル
ライトの高速化ができ、メモリアクセスの高速化と共に
メモリの使用効率が向上可能となる。
【0045】図12は、本発明の第3実施例の概略構成
図であり、図9の例と同等なものには、同一の符号を付
してある。また、図13は、第3実施例の動作フローチ
ャートである。そして、図12及び図13に示す例は、
パーシャルライトにおいて、書き込み要求されたデータ
のアドレスがバッファメモリに格納されていない場合に
も、書き込み動作を高速化できる例である。
【0046】図13のステップ110〜115は、図1
0のステップ110〜115と同様であるので、説明は
省略する。図13のステップ112において、バッファ
メモリに格納されたアドレスと書き込み要求されたデー
タのアドレスとが一致しない場合には、ステップ116
に進む。そして、このステップ116において、書き込
み要求されたデータに対応するデータをメモリ15から
読み出す。
【0047】続いて、ステップ117及び119に進
み、ECC実行ユニット4aにて読みだしたデータの誤
り検出を実行するとともに、ECC実行ユニット2に
て、読みだしたデータと、書き込み要求されたデータと
を組み合わせ、ステップ120において、組み合わせた
データのチェックビットを生成する(図12参照)。
【0048】次に、ステップ117及びステップ120
からステップ121に進み、ECC実行ユニット4aに
て読みだしたデータに誤りが検出されたか否かを制御ユ
ニット7が判定する。読みだしたデータに誤りが検出さ
れない場合には、ステップ115に進み、ECC実行ユ
ニット2にて、組み合わされたデータと生成されたチェ
クビットとが、メモリ15に格納される(図14参
照)。
【0049】ステップ121において、読みだしたデー
タに誤りが検出された場合には、ステップ122に進
み、ECC実行ユニット4aによりデータの誤り訂正が
実行される。次に、ステップ123において、ECC実
行ユニット4aにより、誤り訂正されたデータは、マル
チプレクサ1を介してECC実行ユニット2に供給さ
れ、書き込みデータと組み合わされる。続いて、ステッ
プ114及び15によりチェックビットが生成され、こ
の生成されたチェックビットとデータとがメモリ15に
格納される。図12及び図14は、パーシャルライトが
アドレス0004に格納されているデータ4に対して行
われる場合の例である。
【0050】このように、バッファメモリに格納されて
いないアドレスのデータに対してパーシャルライトの要
求があった場合、メモリから対応するデータを読みだ
し、誤りを検出するとともに、これと平行して、読みだ
したデータと書き込み要求されたデータとの組み合わせ
及びチェックビット生成を行う。そして、誤りが検出さ
れなかったときは、組み合わされたデータとチェックビ
ットとがメモリ15に格納される。読み出されたデータ
に誤りが検出される可能性は低いため、大半のデータ
は、誤り訂正すること無しに、書き込みデータと組み合
わされ、メモリ15に格納される。
【0051】したがって、読みだしたデータに誤りがな
い場合は、データの訂正、それに続く、訂正されたデー
タと書き込みデータとの組み合わせ、チェックビットの
生成に必要な時間を省略することができる。
【0052】以上のように、本発明の第3実施例によれ
ば、第2実施例と同様な効果が得られる他、パーシャル
ライトの場合、バッファメモリに格納されたアドレスと
書き込み要求されたデータのアドレスとが一致しないと
きであり、読みだしたデータに誤りが検出されないとき
には、データの訂正、それに続く、訂正されたデータと
書き込みデータとの組み合わせ、チェックビットの生成
に必要な時間を省略することができ、さらに、パーシャ
ルライトの高速化が可能となる。
【0053】図15は、本発明の第4実施例の概略構成
図であり、図16は、図15の例の動作フローチャート
である。この図15の例は、一つの誤り検出訂正用EC
C実行ユニット4aと、一つのチェックビット生成用E
CC実行ユニット2とを備え、データの読みだしに際し
ては、上記第1〜第3の例と異なり、関連するデータ
は、読み出さない例である。そして、この図15の例
は、パーシャルライトにおいて、第3の実施例と同様
に、メモリから対応するデータを読みだし、誤りを検出
するとともに、これと平行して、読みだしたデータと書
き込み要求されたデータとの組み合わせ及びチェックビ
ット生成を行い、誤りが検出されなかったときは、組み
合わされたデータとチェックビットとをメモリ15に格
納する例である。
【0054】このため、図16に示したフローチャート
は、図13に示したフローチャートからステップ112
及び113が省略されている。そして、ステップ111
からステップ116に進み、図13の例と同様に、ステ
ップ116、117、119〜123が実行される。
【0055】以上のように、本発明の第4実施例によれ
ば、パーシャルライトの場合、読みだしたデータに誤り
が検出されないときには、データの訂正、それに続く、
訂正されたデータと書き込みデータとの組み合わせ、チ
ェックビットの生成に必要な時間を省略することがで
き、パーシャルライトの高速化が可能となる。
【0056】なお、上述した例においては、誤り検出訂
正用ECC実行ユニットが3つの例を示したが、3つに
限らず、2つ又は4つ以上であってもよい。
【0057】
【発明の効果】本発明は、以上説明したように構成され
ているため、次のような効果がある。読みだし要求され
たアドレスのデータと、このアドレスのデータに関連す
る複数のアドレスのデータとを読みだし、これら複数の
データの誤り検出訂正を複数のECC実行ユニットによ
り並列に実行する。そして、誤り検出訂正されたデータ
は、データバッファに格納される。したがって、複数の
データの誤り検出訂正を高速に実行可能であるととも
に、関連するデータの読みだしが高速に実行でき、メモ
リの使用効率を向上可能なデータ記憶制御装置を実現す
ることができる。
【0058】パーシャルライトの場合、バッファメモリ
に格納されたアドレスと書き込み要求されたデータのア
ドレスとが一致するときには、メモリからのデータの読
みだし及び読みだしたデータの誤り検出訂正が不要とな
り、パーシャルライトを高速化できる。これより、チェ
ックビット長を増やすことなく、バイト毎にチェックビ
ットを生成した場合と同様なパーシャルライトの高速化
ができ、メモリアクセスの高速化と共にメモリの使用効
率が向上可能となる。
【0059】また、パーシャルライトの場合、書き込む
データのアドレスに対応するデータをデータ記憶手段か
ら読みだし、データの誤りの検出並びに書き込み要求さ
れたデータとの組み合わせ及び組み合わせたデータの誤
り検出訂正用情報の生成が、並列して実行される。そし
て、データの誤りが検出されなかったときには、組み合
わせたデータ及び生成したデータ誤り検出訂正用情報
が、データ記憶手段に記憶される。
【0060】したがって、データ記憶手段から読みだし
たデータの誤り訂正、誤り訂正されたデータと書き込み
要求されたデータとの組み合わせ及びそれに続く誤り検
出訂正用情報の生成に要する時間が省略され、データ書
き込み時間の短縮化が可能となる。
【図面の簡単な説明】
【図1】本発明の第1実施例の概略構成図である。
【図2】図1の例のおける制御ユニットの機能ブロック
図である。
【図3】メモリの各アドレスに格納されたデータを示す
図である。
【図4】図1の例の動作フローチャートである。
【図5】図1の例において、バッファメモリに読みだし
要求データが格納されている場合の動作説明図である。
【図6】図1の例のデータ誤り検出訂正の動作タイミン
グチャートである。
【図7】本発明とは異なる例におけるデータ誤り検出訂
正の動作タイミングチャートである。
【図8】チェックビット生成の対象となるデータ幅より
小さいデータを書き込む場合の動作説明図である。
【図9】本発明第2実施例の概略構成図である。
【図10】図9の例の動作フローチャートである。
【図11】図9の例において、バッファメモリに書き込
み要求されたデータに対応するデータが格納されている
場合のパーシャルライトの動作説明図である。
【図12】本発明の第3実施例の概略構成図である。
【図13】図12の例の動作フローチャートである。
【図14】図12の例の動作説明図である。
【図15】本発明の第4実施例の概略構成図である。
【図16】図15の例の動作フローチャートである。
【符号の説明】
1 マルチプレクサ 2 チェックビット生成用ECC実行ユ
ニット 3a、3a、3b バッファメモリ 4a、4b、4c 誤り検出訂正用のECC実行ユニッ
ト 5 出力制御部 6 MPUデータバス 7 制御ユニット 8 メモリデータバス 9 チェックビットバス 10 メモリアドレスバス 11 制御信号線 12 MPUアドレスバス 13 MPU制御信号線 14 MPU 15 メモリ 71 アドレス比較部 72 データ位置通知バス 73 データヒット情報線 74 制御信号発生部 200 ECC実行ユニット

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 データとこのデータの誤り検出訂正用情
    報とを記憶するデータ記憶手段を有し、データプロセッ
    サからのデータ読みだし及び書き込み要求に応じて、デ
    ータ記憶手段のデータ読みだし及び書き込みを制御する
    データ記憶制御装置において、 データ記憶手段に記憶されたデータとこのデータの誤り
    検出訂正用情報とが供給され、供給されたデータの誤り
    を検出し、訂正する複数のデータ誤り検出訂正手段と、 上記複数のデータ誤り検出訂正手段により誤り訂正され
    た複数のデータを記憶するバッファメモリと、 データ読みだし要求に応答し、読みだし要求されたデー
    タが上記バッファメモリに記憶されているか否かを判定
    し、記憶されていれば、読みだし要求されたデータをデ
    ータプロセッサに供給し、要求されたデータがバッファ
    メモリに記憶されていなければ、読みだし要求されたデ
    ータと、このデータに関連するデータと、誤り検出訂正
    情報とをデータ記憶手段から読みだし、各データを上記
    複数のデータ誤り検出訂正手段に供給し、これら複数の
    データ誤り検出訂正手段のデータ誤り検出訂正動作をほ
    ぼ同時に実行させ、誤り検出訂正されたデータを、上記
    バッファメモリに記憶させるとともに、読みだし要求さ
    れたデータをデータプロセッサに出力させるデータ制御
    手段と、 を備えることを特徴とするデータ記憶制御装置。
  2. 【請求項2】 請求項1記載のデータ記憶制御装置にお
    いて、データプロセッサからデータの書き込み要求に応
    答し、データ制御手段からの指令に従って、書き込み要
    求されたデータのデータ誤り検出訂正情報を生成し、書
    き込み要求されたデータと、生成したデータ誤り検出訂
    正用情報とを上記データ記憶手段に記憶させるデータ誤
    り検出訂正情報生成手段を、さらに備え、このデータ誤
    り検出訂正情報生成手段は、書き込み要求されたデータ
    がデータ記憶手段に記憶されたデータのデータ長未満で
    あり、かつ、書き込み要求されたデータを記憶すべきア
    ドレスに対応するアドレスのデータが、上記バッファメ
    モリに記憶されている場合には、このバッファメモリに
    記憶されたデータと上記書き込み要求されたデータとを
    上記データ長と等しいデータ長となるように組み合わ
    せ、組み合わせたデータに対して、データ誤り検出訂正
    用情報を生成することを特徴とするデータ記憶制御装
    置。
  3. 【請求項3】 データとこのデータの誤り検出訂正用情
    報とを記憶するデータ記憶手段を有し、データプロセッ
    サからのデータ読みだし及び書き込み要求に応じて、デ
    ータ記憶手段のデータ読みだし及び書き込みを制御する
    データ記憶制御装置において、 データ記憶手段に記憶されたデータとこのデータの誤り
    検出訂正用情報とが供給され、供給されたデータの誤り
    を検出し、訂正するデータ誤り検出訂正手段と、 上記データ誤り検出訂正手段により誤り訂正されたデー
    タを記憶するバッファメモリと、 データプロセッサから書き込み要求されるデータのデー
    タ誤り検出訂正用情報を生成し、書き込み要求されたデ
    ータと、生成したデータ誤り検出訂正用情報とをデータ
    記憶手段に記憶させるデータ誤り検出訂正用情報生成手
    段と、 データ書き込み要求に応答し、書き込み要求されたデー
    タがデータ記憶手段に記憶されたデータのデータ長未満
    であり、かつ、書き込み要求されたデータを記憶すべき
    アドレスに対応するアドレスのデータが、バッファメモ
    リに記憶されていない場合には、上記アドレスのデータ
    をデータ記憶手段から読みだし、データ誤り検出訂正手
    段及びデータ誤り検出訂正用情報生成手段に供給し、デ
    ータの誤りを検出させるとともに、データ記憶手段から
    読みだしたデータと書き込み要求されたデータとを組み
    合わせ、上記データ長と等しいデータ長となるように組
    み合わせ、組み合わせたデータの誤り検出訂正用情報を
    生成させ、データ誤り検出訂正手段により、データの誤
    りが検出されなかったときには、上記組み合わせたデー
    タ及び生成したデータ誤り検出訂正用情報を、データ記
    憶手段に記憶させるデータ制御手段と、 を備えることを特徴とするデータ記憶制御装置。
  4. 【請求項4】 請求項3記載のデータ記憶制御装置にお
    いて、上記データ誤り検出訂正手段は、複数個備えら
    れ、上記データ制御手段は、データ読みだし要求に応答
    し、読みだし要求されたデータが上記バッファメモリに
    記憶されているか否かを判定し、記憶されていれば、読
    みだし要求されたデータをデータプロセッサに供給し、
    要求されたデータがバッファメモリに記憶されていなけ
    れば、読みだし要求されたデータと、このデータに関連
    するデータと、誤り検出訂正情報とをデータ記憶手段か
    ら読みだし、各データを上記複数のデータ誤り検出訂正
    手段に供給し、これら複数のデータ誤り検出訂正手段の
    データ誤り検出訂正動作をほぼ同時に実行させ、誤り検
    出訂正されたデータを、上記バッファメモリに記憶させ
    るとともに、読みだし要求されたデータをデータプロセ
    ッサに出力させることを特徴とするデータ記憶制御装
    置。
JP7003373A 1995-01-12 1995-01-12 データ記憶制御装置 Pending JPH08190512A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7003373A JPH08190512A (ja) 1995-01-12 1995-01-12 データ記憶制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7003373A JPH08190512A (ja) 1995-01-12 1995-01-12 データ記憶制御装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001288489A Division JP3675748B2 (ja) 2001-09-21 2001-09-21 データ記憶制御装置

Publications (1)

Publication Number Publication Date
JPH08190512A true JPH08190512A (ja) 1996-07-23

Family

ID=11555556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7003373A Pending JPH08190512A (ja) 1995-01-12 1995-01-12 データ記憶制御装置

Country Status (1)

Country Link
JP (1) JPH08190512A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102087A (ja) * 2018-12-25 2020-07-02 ルネサスエレクトロニクス株式会社 半導体装置、メモリコントローラ、及びメモリアクセス方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102087A (ja) * 2018-12-25 2020-07-02 ルネサスエレクトロニクス株式会社 半導体装置、メモリコントローラ、及びメモリアクセス方法

Similar Documents

Publication Publication Date Title
US8245109B2 (en) Error checking and correction (ECC) system and method
TWI478171B (zh) 非揮發性記憶體系統
US6158040A (en) Rotated data-aligmnent in wade embedded DRAM for page-mode column ECC in a DVD controller
US7257762B2 (en) Memory interface with write buffer and encoder
US5430742A (en) Memory controller with ECC and data streaming control
JPH0757496A (ja) 記憶装置の誤り検出装置及び記憶装置の誤り検出と訂正をおこなう方法
JPH10207726A (ja) 半導体ディスク装置
JP2006190425A (ja) 半導体記憶装置
US7689895B2 (en) On-the fly error checking and correction CODEC system and method for supporting non-volatile memory
US9256556B2 (en) RAM memory device capable of simultaneously accepting multiple accesses
JP2004246754A (ja) 半導体記憶装置およびその制御装置
US6697921B1 (en) Signal processor providing an increased memory access rate
CN114758696A (zh) 存储系统及其操作方法
JPH08190512A (ja) データ記憶制御装置
JP3675748B2 (ja) データ記憶制御装置
JP3157787B2 (ja) 記憶装置
JP3962853B2 (ja) メモリデータ誤り訂正方法
JPH10232789A (ja) Eccパーシャルライト制御ユニット
JPH06149685A (ja) メモリエラー回復装置
JPH01194046A (ja) メモリアクセス方式
JP2004126911A (ja) 制御装置
JPH0675864A (ja) メモリエラー回復方式
JPH0756816A (ja) メモリの制御装置
JP3457428B2 (ja) データ処理装置
JPS58199498A (ja) メモリシステム