JPH10232789A - Eccパーシャルライト制御ユニット - Google Patents
Eccパーシャルライト制御ユニットInfo
- Publication number
- JPH10232789A JPH10232789A JP9034640A JP3464097A JPH10232789A JP H10232789 A JPH10232789 A JP H10232789A JP 9034640 A JP9034640 A JP 9034640A JP 3464097 A JP3464097 A JP 3464097A JP H10232789 A JPH10232789 A JP H10232789A
- Authority
- JP
- Japan
- Prior art keywords
- data
- write
- cpu
- memory
- buffer
- 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
Links
Landscapes
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【課題】CPUからメモリへのデータのパーシャルライ
ト時の、メモリへのパーシャルライト実施頻度の削減を
はかり、CPUのメモリへのアクセス時間の短縮を図
る。 【解決手段】CPU13のメモリ14にデータを書き込
み時に、ライトバッファ3にデータの書き出しを行い、
チェックビット生成の対象となるデータ幅よりも小さい
データ幅をもつデータをマルチプレクサ1により組合
せ、ライトバッファ3内の複数のデータを一つのデータ
にし、チェックビット生成を行い、又、パーシャルライ
トでリードモディファイライトが必要な場合でも書き換
えを一度に行う。
ト時の、メモリへのパーシャルライト実施頻度の削減を
はかり、CPUのメモリへのアクセス時間の短縮を図
る。 【解決手段】CPU13のメモリ14にデータを書き込
み時に、ライトバッファ3にデータの書き出しを行い、
チェックビット生成の対象となるデータ幅よりも小さい
データ幅をもつデータをマルチプレクサ1により組合
せ、ライトバッファ3内の複数のデータを一つのデータ
にし、チェックビット生成を行い、又、パーシャルライ
トでリードモディファイライトが必要な場合でも書き換
えを一度に行う。
Description
【0001】
【発明の属する技術分野】本発明はECCパーシャルラ
イト制御ユニットに関する。
イト制御ユニットに関する。
【0002】
【従来の技術】半導体の分野では、微細化技術が著しく
進展している。各種メモリ素子では、この微細化技術の
進展によりメモリ素子1個あたりの記憶容量が増大する
反面、記憶セル1個の占める体積の縮小による蓄積電荷
量の減少や、微小欠陥の発生確率の高まり、動作の高速
化に伴う電気的なノイズの印加等の外部要因により、デ
ータ中のエラービットの発生率が高くなる。
進展している。各種メモリ素子では、この微細化技術の
進展によりメモリ素子1個あたりの記憶容量が増大する
反面、記憶セル1個の占める体積の縮小による蓄積電荷
量の減少や、微小欠陥の発生確率の高まり、動作の高速
化に伴う電気的なノイズの印加等の外部要因により、デ
ータ中のエラービットの発生率が高くなる。
【0003】一般に、メモリ装置におけるデータの信頼
性向上の方法は、パリティチェック方式とECC機構が
知られている。
性向上の方法は、パリティチェック方式とECC機構が
知られている。
【0004】パリティチェック方式では、データビット
に1ビットのパリティチェックビットを付加し、パリテ
ィチェックビットによりデータビットとパリティチェッ
クビット中のビットの値が“1”であるビットの数をチ
ェックすることにより誤りの検出を行う。
に1ビットのパリティチェックビットを付加し、パリテ
ィチェックビットによりデータビットとパリティチェッ
クビット中のビットの値が“1”であるビットの数をチ
ェックすることにより誤りの検出を行う。
【0005】ECC機構では、拡張ハミングコードを用
いてデータビットよりチェックビットを生成し、データ
ビットとチェックビットをメモリ装置に書き込む。
いてデータビットよりチェックビットを生成し、データ
ビットとチェックビットをメモリ装置に書き込む。
【0006】従来のECCの生成方式には特開平2−166
57号公報がある。特開平2−16657号公報では、メモリよ
りデータを読み出し、その1部を書き換えるメモリコン
トローラを具備するパーシャルライト制御において、先
のライトデータと,次のライトデータのアドレスを比較
して、先のライトデータと,次のライトデータが連続的
に書き込み可能と判断できた時、同じライト動作でメモ
リからの読み出しデータの修正を行い、修正後のデータ
に対し、チェックビット生成を行いメモリにライトをす
るという手段である。
57号公報がある。特開平2−16657号公報では、メモリよ
りデータを読み出し、その1部を書き換えるメモリコン
トローラを具備するパーシャルライト制御において、先
のライトデータと,次のライトデータのアドレスを比較
して、先のライトデータと,次のライトデータが連続的
に書き込み可能と判断できた時、同じライト動作でメモ
リからの読み出しデータの修正を行い、修正後のデータ
に対し、チェックビット生成を行いメモリにライトをす
るという手段である。
【0007】
【発明が解決しようとする課題】ECC機構では、1ビ
ットの誤り訂正及び2ビットの誤り検出が可能である
が、誤り検出訂正の手法が複雑であるため、ECC生成
実行によるメモリアクセスの時間オーバヘッドが大きく
なる欠点があった。特にチェックビット生成の対象とな
るデータ幅よりも小さいデータ幅のデータ書き込みであ
るパーシャルライトでは、メモリからのチェックビット
生成の対象となるデータ幅のデータを読み出し、書き込
みデータとマージした後にチェックビットを生成すると
いうリードモディファイライトの動作が必要となる。
ットの誤り訂正及び2ビットの誤り検出が可能である
が、誤り検出訂正の手法が複雑であるため、ECC生成
実行によるメモリアクセスの時間オーバヘッドが大きく
なる欠点があった。特にチェックビット生成の対象とな
るデータ幅よりも小さいデータ幅のデータ書き込みであ
るパーシャルライトでは、メモリからのチェックビット
生成の対象となるデータ幅のデータを読み出し、書き込
みデータとマージした後にチェックビットを生成すると
いうリードモディファイライトの動作が必要となる。
【0008】従来、メモリよりデータを読み出して、こ
れを保持し、その1部を書き換えるメモリコントローラ
を具備するパーシャルライト制御はあったが、二つのラ
イトデータに関して、先のライトデータと次のライトデ
ータのアドレスを比較して、先のライトデータと、次の
ライトデータが連続的に書き込み可能であると判断した
時のみ、同じライト動作でデータの書き換えが可能であ
った。書き換えで、アドレスが連続しないデータの場合
は、データ毎に1回ずつのリードモディファイライトの
動作が必要であり、また、連続書き込みのデータを合わ
せてもチェックビット生成の対象となるデータ幅に満た
ない時もリードモディファイライトを行わねばならず、
アクセス時間が改善されなかった。
れを保持し、その1部を書き換えるメモリコントローラ
を具備するパーシャルライト制御はあったが、二つのラ
イトデータに関して、先のライトデータと次のライトデ
ータのアドレスを比較して、先のライトデータと、次の
ライトデータが連続的に書き込み可能であると判断した
時のみ、同じライト動作でデータの書き換えが可能であ
った。書き換えで、アドレスが連続しないデータの場合
は、データ毎に1回ずつのリードモディファイライトの
動作が必要であり、また、連続書き込みのデータを合わ
せてもチェックビット生成の対象となるデータ幅に満た
ない時もリードモディファイライトを行わねばならず、
アクセス時間が改善されなかった。
【0009】本発明は、同じライト動作の行えない複数
のデータの書き込みの場合のメモリのアクセス方法の欠
点を解消し、固定長のライトバッファを設けることによ
り、CPUのメモリアクセス時間及び、メモリアクセス
頻度を削減し、システムのスループット向上を図る。
のデータの書き込みの場合のメモリのアクセス方法の欠
点を解消し、固定長のライトバッファを設けることによ
り、CPUのメモリアクセス時間及び、メモリアクセス
頻度を削減し、システムのスループット向上を図る。
【0010】
【課題を解決するための手段】本発明は、書き込みデー
タ組合せ用のマルチプレクサ,チェックビット生成用の
ECC生成ユニットと、CPUからのメモリライトアク
セスデータを保存する少なくとも一つのライトバッフ
ァ,メモリからの読み出しデータを保存するリードバッ
ファ、及び、上記マルチプレクサ,ECC生成ユニッ
ト,リードバッファ,ライトバッファ及びメモリを制御
する制御ユニットを有することを特徴とする。
タ組合せ用のマルチプレクサ,チェックビット生成用の
ECC生成ユニットと、CPUからのメモリライトアク
セスデータを保存する少なくとも一つのライトバッフ
ァ,メモリからの読み出しデータを保存するリードバッ
ファ、及び、上記マルチプレクサ,ECC生成ユニッ
ト,リードバッファ,ライトバッファ及びメモリを制御
する制御ユニットを有することを特徴とする。
【0011】
【発明の実施の形態】以下、本発明の実施例を図面を用
いて説明する。ただし、図はライトバッファが複数ある
時のものを示す。
いて説明する。ただし、図はライトバッファが複数ある
時のものを示す。
【0012】図1は本発明の実施例であり、1はマルチ
プレクサで、3a、又は3bのライトバッファのデータ
と、メモリ14からの読み出しデータを保存するリード
バッファ4からのデータとの組合せを行う。ライトバッ
ファ3a、及び3bはメモリ14より高速アクセス可能
である。2はチェックビット生成用のECC生成ユニッ
トでマルチプレクサ1からのデータに対し、チェックビ
ットの生成を行う。6は制御ユニットでマルチプレクサ
1,ECC生成ユニット2,ライトバッファ3a、又は
3b,リードバッファ4、及びメモリ14を制御する。
7はCPUデータバス、8はCPU制御信号、9は制御
信号線、10はCPUアドレスバス、11はメモリアド
レスバス、12はメモリデータバス、13はCPUを示
す。CPU13はCPU制御信号8を制御ユニット6に
出力し、制御ユニット6がその情報から、制御信号9を
出力する。
プレクサで、3a、又は3bのライトバッファのデータ
と、メモリ14からの読み出しデータを保存するリード
バッファ4からのデータとの組合せを行う。ライトバッ
ファ3a、及び3bはメモリ14より高速アクセス可能
である。2はチェックビット生成用のECC生成ユニッ
トでマルチプレクサ1からのデータに対し、チェックビ
ットの生成を行う。6は制御ユニットでマルチプレクサ
1,ECC生成ユニット2,ライトバッファ3a、又は
3b,リードバッファ4、及びメモリ14を制御する。
7はCPUデータバス、8はCPU制御信号、9は制御
信号線、10はCPUアドレスバス、11はメモリアド
レスバス、12はメモリデータバス、13はCPUを示
す。CPU13はCPU制御信号8を制御ユニット6に
出力し、制御ユニット6がその情報から、制御信号9を
出力する。
【0013】図7は3a,3bのライトバッファの構造
を示している。本実施例ではECCチェックビット生成
の対象となるデータ幅を32ビットとする。3a,3b
はそれぞれ32ビットのデータを保存できるバッファを
4個備えている。バッファを4個備えることにより、バ
イトデータの書き込みが4回続いた場合でも、ライトバ
ッファのデータをマージして32ビットのチェックビッ
ト生成の対象となるデータを生成することが可能であ
る。ただし、ライトバッファ3a,3bは制御ユニット
6によって、CPU13からの新規書き込みアドレスと
制御ユニットに格納されたCPUからの複数の書き込み
データのライト先アドレスを比較して、ライトバッファ
3a,3bがECCチェックビット生成の対象となるア
ドレスの範囲内のデータで、書き込まれるデータのデー
タ幅の合計が、ECC生成ユニット2でチェックビット
を生成できるデータの最大ビット数以内のデータ数を格
納するよう、制御信号9を介して制御されている。これ
により、ライトバッファ3a,3bはECC生成ユニッ
ト2でデータ幅の合計がチェックビット生成可能なデー
タ幅以下の複数のデータを格納することが可能となる。
を示している。本実施例ではECCチェックビット生成
の対象となるデータ幅を32ビットとする。3a,3b
はそれぞれ32ビットのデータを保存できるバッファを
4個備えている。バッファを4個備えることにより、バ
イトデータの書き込みが4回続いた場合でも、ライトバ
ッファのデータをマージして32ビットのチェックビッ
ト生成の対象となるデータを生成することが可能であ
る。ただし、ライトバッファ3a,3bは制御ユニット
6によって、CPU13からの新規書き込みアドレスと
制御ユニットに格納されたCPUからの複数の書き込み
データのライト先アドレスを比較して、ライトバッファ
3a,3bがECCチェックビット生成の対象となるア
ドレスの範囲内のデータで、書き込まれるデータのデー
タ幅の合計が、ECC生成ユニット2でチェックビット
を生成できるデータの最大ビット数以内のデータ数を格
納するよう、制御信号9を介して制御されている。これ
により、ライトバッファ3a,3bはECC生成ユニッ
ト2でデータ幅の合計がチェックビット生成可能なデー
タ幅以下の複数のデータを格納することが可能となる。
【0014】パーシャルライトで、CPU13からのメ
モリライトアクセス時に、CPU13からチェックビット
生成の対象となるデータ幅よりも小さいデータ幅のデー
タ書き込み時に、ライトバッファに、CPU13からの
書き込みデータを書き込み、制御ユニット6に格納され
た複数のデータのCPU13の書き込みアドレスとCP
U13からの新規書き込みデータのライト先アドレスを
比較して、制御ユニット6がECCチェックビット生成
の対象となるアドレスの範囲内のデータを格納してお
り、書き込まれたデータ幅の合計が、ECC生成ユニッ
ト2でチェックビットを生成できるデータ幅となったら
マルチプレクサ1で、ライトバッファ3a、又は3bの
複数のデータをマージし、ECC生成ユニット2でチェ
ックビットが生成される。
モリライトアクセス時に、CPU13からチェックビット
生成の対象となるデータ幅よりも小さいデータ幅のデー
タ書き込み時に、ライトバッファに、CPU13からの
書き込みデータを書き込み、制御ユニット6に格納され
た複数のデータのCPU13の書き込みアドレスとCP
U13からの新規書き込みデータのライト先アドレスを
比較して、制御ユニット6がECCチェックビット生成
の対象となるアドレスの範囲内のデータを格納してお
り、書き込まれたデータ幅の合計が、ECC生成ユニッ
ト2でチェックビットを生成できるデータ幅となったら
マルチプレクサ1で、ライトバッファ3a、又は3bの
複数のデータをマージし、ECC生成ユニット2でチェ
ックビットが生成される。
【0015】ライトバッファ3aに格納された各データ
の合計データ幅がECC生成ユニット2でチェックビッ
ト生成可能なデータ幅となった時点で、データはマルチ
プレクサ1に送られ、マージされた後、ECC生成ユニ
ット2に送られチェックビットが生成され、メモリ14
に書き込まれる。
の合計データ幅がECC生成ユニット2でチェックビッ
ト生成可能なデータ幅となった時点で、データはマルチ
プレクサ1に送られ、マージされた後、ECC生成ユニ
ット2に送られチェックビットが生成され、メモリ14
に書き込まれる。
【0016】ライトバッファが2個ある場合、ライトバ
ッファ3aが一杯で、CPU13からデータの書き込み
要求がきている時には、CPU13の書き込みデータを
ライトバッファ3b内に格納する。これによりライトバ
ッファ3aからメモリ14へのデータ送信中に、CPU
13が未使用のライトバッファにアクセスができるた
め、メモリ14へのデータ書き込みの待機時間がなくな
り、ライトアクセス時間の短縮が図れる。3a,3bの
ライトバッファの使用は、使用されていないライトバッ
ファを選択するように制御ユニット6で制御する。ただ
し、3a,3b両方が使用されていない時には、優先順
位をつけて選択する。
ッファ3aが一杯で、CPU13からデータの書き込み
要求がきている時には、CPU13の書き込みデータを
ライトバッファ3b内に格納する。これによりライトバ
ッファ3aからメモリ14へのデータ送信中に、CPU
13が未使用のライトバッファにアクセスができるた
め、メモリ14へのデータ書き込みの待機時間がなくな
り、ライトアクセス時間の短縮が図れる。3a,3bの
ライトバッファの使用は、使用されていないライトバッ
ファを選択するように制御ユニット6で制御する。ただ
し、3a,3b両方が使用されていない時には、優先順
位をつけて選択する。
【0017】パーシャルライトによってライトデータが
CPU13からライトバッファ3a、又は3bに書き込
まれ、任意の時間以上経過した後に、データが全ライト
バッファ内のデータをマージしてもチェックビット生成
の対象となるデータ幅にならない時、制御ユニット6
で、強制的にメモリからチェックビット生成の対象とな
るデータ幅で、書き換えるアドレスのデータをメモリ1
4よりリードバッファ4に読み出し、ライトバッファ3
a、又は3bの書き込みデータとリードバッファ4のメ
モリ14からの読み出しデータとをマルチプレクサ1で
マージを行い、チェックビット生成の対象となるデータ
幅のデータとし、ECC生成ユニット2でチェックビッ
トを生成し、メモリ14に書き込みを行う。ライトバッ
ファ3a,3bに書き込まれたデータの書き込み後の経
過時間は制御ユニット6で管理する。
CPU13からライトバッファ3a、又は3bに書き込
まれ、任意の時間以上経過した後に、データが全ライト
バッファ内のデータをマージしてもチェックビット生成
の対象となるデータ幅にならない時、制御ユニット6
で、強制的にメモリからチェックビット生成の対象とな
るデータ幅で、書き換えるアドレスのデータをメモリ1
4よりリードバッファ4に読み出し、ライトバッファ3
a、又は3bの書き込みデータとリードバッファ4のメ
モリ14からの読み出しデータとをマルチプレクサ1で
マージを行い、チェックビット生成の対象となるデータ
幅のデータとし、ECC生成ユニット2でチェックビッ
トを生成し、メモリ14に書き込みを行う。ライトバッ
ファ3a,3bに書き込まれたデータの書き込み後の経
過時間は制御ユニット6で管理する。
【0018】図2,図3を用いて、ライトバッファ3
a、又は3bに制御ユニット6に決められた時間以内に
チェックビット生成対象となるデータがそろった時のメ
モリ14のパーシャルライトのECC生成ユニット2に
おける、チェックビット生成を示す。また更に、図4,
図5では、制御ユニット6に決められた時間内にチェッ
クビット生成対象となるデータがそろわなかった時のメ
モリからの読み出しデータの一部分書き換え、及びチェ
ックビット生成を示す。
a、又は3bに制御ユニット6に決められた時間以内に
チェックビット生成対象となるデータがそろった時のメ
モリ14のパーシャルライトのECC生成ユニット2に
おける、チェックビット生成を示す。また更に、図4,
図5では、制御ユニット6に決められた時間内にチェッ
クビット生成対象となるデータがそろわなかった時のメ
モリからの読み出しデータの一部分書き換え、及びチェ
ックビット生成を示す。
【0019】図2,図4では構成図、図3,図5ではデ
ータの流れを示すものである。図3,図5で、1はCP
U13からの書き込みデータを示し、2はCPU13か
らの書き込みデータのライトバッファ3a、又は3bへ
の書き込みを示す。
ータの流れを示すものである。図3,図5で、1はCP
U13からの書き込みデータを示し、2はCPU13か
らの書き込みデータのライトバッファ3a、又は3bへ
の書き込みを示す。
【0020】図3では、ライトバッファ3a、又は3b
にデータがチェックビット生成の対象となる32ビット
分が時間内にそろうので、リードバッファ4にメモリ1
4からデータを読み出す必要はないが、図5ではデータ
が32ビット分が時間内にそろわないので、書き換える
アドレスのデータをメモリ14から読み出しリードバッ
ファ4に格納する。
にデータがチェックビット生成の対象となる32ビット
分が時間内にそろうので、リードバッファ4にメモリ1
4からデータを読み出す必要はないが、図5ではデータ
が32ビット分が時間内にそろわないので、書き換える
アドレスのデータをメモリ14から読み出しリードバッ
ファ4に格納する。
【0021】図3の3では、2でライトバッファに書き
込まれたデータのマルチプレクサ1でのマージ、図5の
3では、ライトバッファ3a、又は3b、及びリードバ
ッファ4のデータのマージをしており、マルチプレクサ
1でマージされるデータは、ECC生成ユニットでチェ
ックビット可能なデータ幅となる。
込まれたデータのマルチプレクサ1でのマージ、図5の
3では、ライトバッファ3a、又は3b、及びリードバ
ッファ4のデータのマージをしており、マルチプレクサ
1でマージされるデータは、ECC生成ユニットでチェ
ックビット可能なデータ幅となる。
【0022】図3,図5の4は、マルチプレクサ1での
マージによる、ECC生成ユニット2へのチェックビッ
ト生成対象データの書き込みを示す。
マージによる、ECC生成ユニット2へのチェックビッ
ト生成対象データの書き込みを示す。
【0023】従来方式によれば、二つの書き込みデータ
のライト先アドレスを比較して、ライトバッファがEC
Cチェックビット生成の対象となるアドレスの範囲内の
データを格納しており、かつライト先アドレスが連続し
ていない場合は1回ずつのリードモディファイライト
と、ECCチェックビット生成が必要であるが、本実施
例では、二つ以上の書き込みデータのライト先アドレス
を比較するため、図3及び図5のように同じECCチェ
ックビット生成の対象となるアドレスの範囲内のデータ
の書き込みが、2回以上に分けて行われる場合でも、マ
ルチプレクサ1によるデータのマージが可能となり、メ
モリアクセスの頻度を少なくすることができる。
のライト先アドレスを比較して、ライトバッファがEC
Cチェックビット生成の対象となるアドレスの範囲内の
データを格納しており、かつライト先アドレスが連続し
ていない場合は1回ずつのリードモディファイライト
と、ECCチェックビット生成が必要であるが、本実施
例では、二つ以上の書き込みデータのライト先アドレス
を比較するため、図3及び図5のように同じECCチェ
ックビット生成の対象となるアドレスの範囲内のデータ
の書き込みが、2回以上に分けて行われる場合でも、マ
ルチプレクサ1によるデータのマージが可能となり、メ
モリアクセスの頻度を少なくすることができる。
【0024】図6は制御ユニット詳細図である。23は
アドレス比較回路で、CPU13からの書き込みデータ
のアドレスを記憶するものである。アドレス比較回路2
3はデータ位置通知バス21に、メモリの書き込みアド
レスを出力する。更に、アドレス比較回路23は、22
のデータビット情報線に、CPU13からの書き込みデ
ータとライトバッファ3a、又は3bに格納された各デ
ータの合計データ幅がECC生成ユニット2でチェック
ビット生成可能なデータ幅であるかどうかの情報を出力
する。
アドレス比較回路で、CPU13からの書き込みデータ
のアドレスを記憶するものである。アドレス比較回路2
3はデータ位置通知バス21に、メモリの書き込みアド
レスを出力する。更に、アドレス比較回路23は、22
のデータビット情報線に、CPU13からの書き込みデ
ータとライトバッファ3a、又は3bに格納された各デ
ータの合計データ幅がECC生成ユニット2でチェック
ビット生成可能なデータ幅であるかどうかの情報を出力
する。
【0025】メモリ14に書き込まれるデータがライト
バッファ3a、又は3bに格納された各データの合計デ
ータ幅がECC生成ユニットでチェックビット生成可能
なデータ幅である場合は、制御信号発生回路20は、デ
ータが格納されているライトバッファの選択を行い、ア
ドレス比較回路23は21のデータ位置通知バスに、メ
モリの書き込みアドレスを出力する。制御ユニット6は
ライトバッファ3a、又はライトバッファ3bのデータ
をマルチプレクサ1でマージし、ECC生成ユニット2
によるチェックビットの生成、及びメモリのアクセスを
行うため、ライトバッファ3a、又は3b、マルチプレ
クサ1,ECC生成ユニット2、及びメモリ14に制御
信号9を出力する。
バッファ3a、又は3bに格納された各データの合計デ
ータ幅がECC生成ユニットでチェックビット生成可能
なデータ幅である場合は、制御信号発生回路20は、デ
ータが格納されているライトバッファの選択を行い、ア
ドレス比較回路23は21のデータ位置通知バスに、メ
モリの書き込みアドレスを出力する。制御ユニット6は
ライトバッファ3a、又はライトバッファ3bのデータ
をマルチプレクサ1でマージし、ECC生成ユニット2
によるチェックビットの生成、及びメモリのアクセスを
行うため、ライトバッファ3a、又は3b、マルチプレ
クサ1,ECC生成ユニット2、及びメモリ14に制御
信号9を出力する。
【0026】ライトバッファ3a、又は3bに格納され
た各データの合計データ幅がECC生成ユニットでチェ
ックビット生成可能なデータ幅でない場合には、制御信
号発生回路20はデータの格納されているライトバッフ
ァの選択を行い、アドレス比較回路23は21のデータ
位置通知バスに、メモリの書き込みアドレスを出力す
る。制御ユニット6はライトバッファ3a、又はライト
バッファ3bとリードバッファのデータをマルチプレク
サ1でマージし、ECC生成ユニット2によるチェック
ビットの生成、及びメモリのアクセスを行うため、ライ
トバッファ3a、又は3bとリードバッファ4,マルチ
プレクサ1,ECC生成ユニット2、及びメモリ14に
制御信号9を出力する。
た各データの合計データ幅がECC生成ユニットでチェ
ックビット生成可能なデータ幅でない場合には、制御信
号発生回路20はデータの格納されているライトバッフ
ァの選択を行い、アドレス比較回路23は21のデータ
位置通知バスに、メモリの書き込みアドレスを出力す
る。制御ユニット6はライトバッファ3a、又はライト
バッファ3bとリードバッファのデータをマルチプレク
サ1でマージし、ECC生成ユニット2によるチェック
ビットの生成、及びメモリのアクセスを行うため、ライ
トバッファ3a、又は3bとリードバッファ4,マルチ
プレクサ1,ECC生成ユニット2、及びメモリ14に
制御信号9を出力する。
【0027】
【発明の効果】従来のデータのアドレスの連続しない場
合のライト動作を一度に行えない場合、及びアドレスが
連続した書き込みでも、チェックビット生成の対象とな
るデータ幅に満たない時にリードモディファイライトが
必要になる場合の欠点を解消し、データサイズ,アドレ
スの連続性に関わらず、ECC生成ユニットでのチェッ
クビット生成の対象となるデータ幅のデータをライトバ
ッファ内の複数のデータをマージして生成し、マルチプ
レクサに書き込みを行うことによりメモリへのアクセス
の頻度を削減し、CPUのメモリアクセス時間の削減を
図る。
合のライト動作を一度に行えない場合、及びアドレスが
連続した書き込みでも、チェックビット生成の対象とな
るデータ幅に満たない時にリードモディファイライトが
必要になる場合の欠点を解消し、データサイズ,アドレ
スの連続性に関わらず、ECC生成ユニットでのチェッ
クビット生成の対象となるデータ幅のデータをライトバ
ッファ内の複数のデータをマージして生成し、マルチプ
レクサに書き込みを行うことによりメモリへのアクセス
の頻度を削減し、CPUのメモリアクセス時間の削減を
図る。
【図1】本発明による誤り検出訂正コード生成のブロッ
ク図。
ク図。
【図2】ライトバッファにチェックビット生成の対象と
なるデータがそろった場合のパーシャルライトのブロッ
ク図。
なるデータがそろった場合のパーシャルライトのブロッ
ク図。
【図3】ライトバッファにチェックビット生成の対象と
なるデータがそろった場合の動作説明図。
なるデータがそろった場合の動作説明図。
【図4】ライトバッファにチェックビット生成の対象と
なるデータがそろわない場合のパーシャルライトのブロ
ック図。
なるデータがそろわない場合のパーシャルライトのブロ
ック図。
【図5】ライトバッファにチェックビット生成の対象と
なるデータがそろわない場合のパーシャルライトの動作
説明図。
なるデータがそろわない場合のパーシャルライトの動作
説明図。
【図6】制御ユニットの説明図。
【図7】ライトバッファの説明図。
1…マルチプレクサ、2…ECC生成ユニット、3a,
3b…ライトバッファ、4…リードバッファ、6…制御
ユニット、8…CPU制御信号、9…制御信号、10…
CPUアドレスバス、11…メモリアドレスバス、13
…CPU、14…メモリ。
3b…ライトバッファ、4…リードバッファ、6…制御
ユニット、8…CPU制御信号、9…制御信号、10…
CPUアドレスバス、11…メモリアドレスバス、13
…CPU、14…メモリ。
Claims (4)
- 【請求項1】メモリよりデータを読み出してこれを保持
し、CPUからの書き込みデータでその一部を書き換え
るパーシャルライト制御方式において、 書き込みデータ組合せ用のマルチプレクサ,チェックビ
ット生成用のECC生成ユニット,上記CPUからのラ
イトデータを格納するためのライトバッファ,上記CP
Uからのライトデータのアドレスを記憶し、上記マルチ
プレクサ,上記ECC生成ユニット,上記ライトバッフ
ァ,上記メモリからの読み込みデータを格納するリード
バッファ、及びメモリ制御する制御ユニットを有し、上
記CPUからのチェックビット生成の対象となるデータ
幅よりも小さいデータ幅のデータ書き込み時に、上記ラ
イトバッファに上記CPUからの書き込みデータを書き
込み、上記CPUからの新規書き込みアドレスと制御ユ
ニットに格納された上記CPUからの複数の書き込みデ
ータのライト先アドレスを比較して、上記ライトバッフ
ァが上記チェックビット生成の対象となるアドレスの範
囲内のデータを格納しており、書き込まれたデータ幅の
合計が、上記ECC生成ユニットで上記チェックビット
を生成できるデータ幅となったら上記マルチプレクサ
で、上記ライトバッファの複数のデータをマージし、上
記チェックビット生成の対象となるデータ幅とし、上記
ECC生成ユニットで上記チェックビットを生成し、上
記メモリに書き込むことを特徴とするECCパーシャル
ライト制御ユニット。 - 【請求項2】メモリよりデータを読み出してこれを保持
し、CPUからの書き込みデータでその一部を書き換え
るパーシャルライト制御方式において、 書き込みデータ組合せ用のマルチプレクサ,チェックビ
ット生成用のECC生成ユニット,上記CPUからのラ
イトデータを格納するためのライトバッファ,上記CP
Uからのライトデータのアドレスを記憶し、上記マルチ
プレクサ,上記ECC生成ユニット,上記ライトバッフ
ァ,上記メモリからの読み込みデータを格納するリード
バッファ、及びメモリ制御する制御ユニットを有し、上
記CPUからのチェックビット生成の対象となるデータ
幅よりも小さいデータ幅のデータ書き込み時に、上記ラ
イトバッファに上記CPUからの書き込みデータを書き
込み、上記CPUからの新規書き込みアドレスと制御ユ
ニットに格納された上記CPUからの複数の書き込みデ
ータのライト先アドレスを比較して、上記ライトバッフ
ァが上記チェックビット生成の対象となるアドレスの範
囲内のデータを格納しており、書き込まれたデータ幅の
合計が、上記ECC生成ユニットで上記チェックビット
を生成できるデータ幅となったら上記マルチプレクサ
で、上記ライトバッファの複数のデータをマージし、上
記チェックビット生成の対象となるデータ幅とし、上記
ECC生成ユニットで上記チェックビットを生成し、上
記ライトバッファに存在する複数のデータが上記チェッ
クビット生成の対象となるデータ幅に足りないときは、
上記ライトバッファに書き込まれてからの時間が任意の
時間を越えたデータに対し、制御ユニットで、メモリか
らライト先のアドレスで、上記チェックビット生成の対
象となるデータ幅を持つデータをリードバッファに読み
出し、上記ライトバッファ内の上記チェックビット生成
の対象となるアドレスの範囲内のデータと上記リードバ
ッファのデータをマージし、上記ECC生成ユニットで
データの上記チェックビットを生成し、上記メモリに書
き込みを行うことを特徴とするECCパーシャルイト制
御ユニット。 - 【請求項3】請求項1において、上記CPUからの上記
ライトデータを格納するための上記ライトバッファを複
数個設け、一つのライトバッファが一杯で、上記CPU
からデータ書き込み要求がきた場合、上記CPUからの
書き込みデータをもう一つのライトバッファに転送する
ことで上記CPUのアクセス時間の短縮を図るECCパ
ーシャルライト制御ユニット。 - 【請求項4】請求項2において、上記CPUからの上記
ライトデータを格納するための上記ライトバッファを複
数個設け、一つのライトバッファが一杯で、上記CPU
からデータ書き込み要求がきた場合、上記CPUからの
書き込みデータをもう一つのライトバッファに転送する
ことで上記CPUのアクセス時間の短縮を図るECCパ
ーシャルライト制御ユニット。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9034640A JPH10232789A (ja) | 1997-02-19 | 1997-02-19 | Eccパーシャルライト制御ユニット |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9034640A JPH10232789A (ja) | 1997-02-19 | 1997-02-19 | Eccパーシャルライト制御ユニット |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10232789A true JPH10232789A (ja) | 1998-09-02 |
Family
ID=12420034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9034640A Pending JPH10232789A (ja) | 1997-02-19 | 1997-02-19 | Eccパーシャルライト制御ユニット |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10232789A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007088597A1 (ja) | 2006-01-31 | 2007-08-09 | Fujitsu Limited | エラー訂正コード生成方法及びメモリ管理装置 |
WO2008155850A1 (ja) | 2007-06-20 | 2008-12-24 | Fujitsu Limited | キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム |
JP6090489B1 (ja) * | 2016-03-01 | 2017-03-08 | 日本電気株式会社 | エラー検知装置、記憶装置およびエラー訂正方法 |
JP2020102087A (ja) * | 2018-12-25 | 2020-07-02 | ルネサスエレクトロニクス株式会社 | 半導体装置、メモリコントローラ、及びメモリアクセス方法 |
-
1997
- 1997-02-19 JP JP9034640A patent/JPH10232789A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007088597A1 (ja) | 2006-01-31 | 2007-08-09 | Fujitsu Limited | エラー訂正コード生成方法及びメモリ管理装置 |
EP1980946A1 (en) * | 2006-01-31 | 2008-10-15 | Fujitsu Limited | Error correction code generation method and memory management device |
EP1980946A4 (en) * | 2006-01-31 | 2009-07-29 | Fujitsu Ltd | METHOD FOR PRODUCING ERROR CORRECTION CODE AND MEMORY MANAGEMENT DEVICE |
US8245110B2 (en) | 2006-01-31 | 2012-08-14 | Fujitsu Limited | Error correcting code generation method and memory control apparatus |
WO2008155850A1 (ja) | 2007-06-20 | 2008-12-24 | Fujitsu Limited | キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム |
US8533565B2 (en) | 2007-06-20 | 2013-09-10 | Fujitsu Limited | Cache controller and cache controlling method |
JP6090489B1 (ja) * | 2016-03-01 | 2017-03-08 | 日本電気株式会社 | エラー検知装置、記憶装置およびエラー訂正方法 |
US10423488B2 (en) | 2016-03-01 | 2019-09-24 | Nec Corporation | Error detection device, storage apparatus and error correction method |
JP2020102087A (ja) * | 2018-12-25 | 2020-07-02 | ルネサスエレクトロニクス株式会社 | 半導体装置、メモリコントローラ、及びメモリアクセス方法 |
CN111382000A (zh) * | 2018-12-25 | 2020-07-07 | 瑞萨电子株式会社 | 半导体装置、存储器控制器与存储器访问方法 |
US11221789B2 (en) | 2018-12-25 | 2022-01-11 | Renesas Electronics Corporation | Semiconductor device, memory controller, and memory accessing method |
CN111382000B (zh) * | 2018-12-25 | 2024-01-12 | 瑞萨电子株式会社 | 半导体装置、存储器控制器与存储器访问方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7257666B2 (en) | Method of writing, erasing, and controlling memory for memory device | |
US7783846B2 (en) | Method, apparatus and computer program product providing energy reduction when storing data in a memory | |
JP2006512657A (ja) | メモリ・コントローラおよびメモリに書き込む方法 | |
CN111566738A (zh) | 存储器***中的有效和选择性的备用位 | |
US20030236943A1 (en) | Method and systems for flyby raid parity generation | |
US20090044032A1 (en) | Method, Apparatus and Computer Program Product Providing Instruction Monitoring for Reduction of Energy Usage | |
JPH10232789A (ja) | Eccパーシャルライト制御ユニット | |
US20040236883A1 (en) | System for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple buffers | |
US5946707A (en) | Interleaved burst XOR using a single memory pointer | |
US8812767B2 (en) | Method of controlling memory, memory control circuit, storage device and electronic device | |
JP3962853B2 (ja) | メモリデータ誤り訂正方法 | |
JP3821911B2 (ja) | メモリ初期化制御方式 | |
JPH06274462A (ja) | 共有メモリの非同期書込み方式 | |
JP3520570B2 (ja) | メモリアクセス制御装置 | |
JP3123855B2 (ja) | メモリ装置のパトロール制御回路 | |
JPH08190512A (ja) | データ記憶制御装置 | |
JP2762798B2 (ja) | 命令キャッシュを有するパイプライン構成の情報処理装置 | |
JP3196094B2 (ja) | メモリ監視装置 | |
JPH04291434A (ja) | メモリシステム | |
JPS6235146B2 (ja) | ||
JP3457428B2 (ja) | データ処理装置 | |
JP2627491B2 (ja) | 半導体記憶装置 | |
JP2000259496A (ja) | 記憶装置 | |
JPH07160594A (ja) | 情報処理装置 | |
JPH0877067A (ja) | キャッシュメモリ制御装置 |