JPH1083357A - データ記憶制御方法及び装置 - Google Patents

データ記憶制御方法及び装置

Info

Publication number
JPH1083357A
JPH1083357A JP8236707A JP23670796A JPH1083357A JP H1083357 A JPH1083357 A JP H1083357A JP 8236707 A JP8236707 A JP 8236707A JP 23670796 A JP23670796 A JP 23670796A JP H1083357 A JPH1083357 A JP H1083357A
Authority
JP
Japan
Prior art keywords
data
cpu
main storage
interrupt
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
JP8236707A
Other languages
English (en)
Other versions
JP3638729B2 (ja
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 JP23670796A priority Critical patent/JP3638729B2/ja
Publication of JPH1083357A publication Critical patent/JPH1083357A/ja
Application granted granted Critical
Publication of JP3638729B2 publication Critical patent/JP3638729B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】CPUのバースト転送用I/Fを使用してキャ
ッシュメモリの内容の更新を高速に行うと共にECC機
構により1ビットエラーが検出された場合に、主記憶装
置の内容を訂正可能なデータ記憶制御装置を実現する。 【解決手段】CPU1から主記憶装置6へリードアクセ
スがあると主記憶装置6からデータが読み出され、EC
C実行部3でエラーの検出が行われる。主記憶装置6か
らの読み出しデータに1ビットエラーがないとCPU1
に読み出しデータが送られ、主記憶装置6への読み出し
アクセスサイクルが終了する。主記憶装置6からの読み
出しデータに1ビットエラーがあればアドレス保持部4
にエラーが検出されたデータのアドレスを格納する。割
込み情報保持部5aをセットし制御部5から制御線7を
介してCPU1に割込みを要求する。CPU1にエラー
訂正後のデータが送られ主記憶装置6への読み出しアク
セスサイクルが終了する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テムにおける主記憶装置をECC実行により高信頼性を
維持しつつ、高速アクセス可能なデータ記憶制御方法及
び装置に関する。
【0002】
【従来の技術】CPUの中には主記憶装置への高速アク
セスを狙いとして、内部に主記憶装置の内容の一部を格
納するキャッシュメモリを有するものがある。このよう
なCPUにおいては、キャッシュメモリにミスヒットし
た場合、アクセスデータのアドレスと下位の固定長ビッ
トのみアドレスが異なるデータを連続して主記憶装置か
ら読み出し、キャッシュメモリに格納して、キャッシュ
メモリの内容を更新する。
【0003】この際、ライトバックキャッシュメモリの
場合は、キャッシュメモリの更新される部分に格納され
ていたデータを、キャッシュメモリの更新前に主記憶装
置に書き戻す。この際の主記憶装置へのアクセスも、主
記憶装置へのアクセスデータと下位の固定ビットのみ異
なるデータの連続した書き込みである。
【0004】このような、アクセスデータのアドレスと
下位の固定長ビットのみアドレスが異なるデータを連続
してアクセスすることをバーストアクセスという。リー
ドはバーストリード、ライトはバーストライトという。
【0005】メモリ素子の中には、連続したアドレスへ
のアクセスの高速化を目的として、バーストアクセス可
能なものがある。最近のCPUでは、キャッシュメモリ
の内容の更新の高速化を目的として、上記メモリ素子に
対応した、バースト転送用の外部バスI/F(インター
フェース)を備えるものがある。
【0006】通常の外部バスI/Fでは、ウェイト信号
により、外部で1つのバスサイクルの長さを制御できる
が、メモリ素子のバーストアクセスには対応しておら
ず、キャッシュメモリの内容の更新の際は、1つのバス
サイクルを繰り返し行うことによって対応する。
【0007】バースト転送用の外部バスI/Fは、1つ
のバスサイクルでバーストアクセスを完了することがで
き、通常のバスI/Fよりも高速に、キャッシュメモリ
の内容を更新できる。一般的にCPUのバースト転送用
の外部バスI/Fは、バスサイクルの長さが固定であ
り、ウェイト信号により、外部から1つのバスサイクル
の長さを制御することはできない。
【0008】また、半導体の分野では、微細化技術が著
しく進展している。各種メモリ素子では、この微細化技
術の進展によりメモリ素子1個あたりの記憶容量が増大
する反面、記憶セル1個の占める体積の縮小による蓄積
電荷量の減少や、微小欠陥の発生確率の高まり、動作の
高速化に伴う電気的なノイズの印加等の外部要因によ
り、データ中のエラービットの発生確率が高くなる。
【0009】メモリ装置におけるデータの信頼性向上の
方法としては、ECC機構が知られている。ECC機構
では、拡張ハミングコードを用いてデータビットよりチ
ェックビットを生成し、データビットとチェックビット
とをメモリ装置に書き込む。そして、読み出し時にはメ
モリ装置から読み出したデータビットとチェックビット
とによりシンドロームを生成し、このシンドロームによ
り1ビットの誤り訂正及び2ビットの誤り検出を行う。
【0010】
【発明が解決しようとする課題】ところで、従来、主記
憶に対してECC機構によりエラー検出訂正を実行する
場合、通常の外部バスI/Fを使用していた。主記憶装
置の読みだしアクセス時にECC機構により1ビットエ
ラーが検出された場合、CPUには、ECC機構により
訂正されたデータが送られると共に、主記憶装置には訂
正後のデータが書き込まれ、主記憶装置の内容が訂正さ
れる。この際、エラーが検出されない場合の読み出しア
クセスよりも、主記憶装置の書き込みの時間だけバスサ
イクルが長くなるが、ウェイト信号によってバスサイク
ルの長さが制御される。
【0011】上述した通常の外部バスI/Fではなく、
バースト転送用I/Fを使用してECC機構によるエラ
ー検出訂正を実施した場合、通常の外部バスI/Fを使
用した場合よりも高速にキャッシュメモリの内容の更新
を行うことができる。
【0012】しかし、主記憶装置の読み出しアクセス時
に、ECC機構により1ビットエラーが検出された場
合、CPUには、ECC機構により訂正されたデータが
送られるが、バースト転送用I/Fはバスサイクルの長
さが固定であるため、ウェイトさせることができず、主
記憶装置に訂正データを書き込んで主記憶装置の内容を
訂正することができない。この場合、主記憶装置のデー
タを、1ビットの誤りを含んだままにしておくと、訂正
不可能な2ビットエラーが発生する確率が高くなり、主
記憶装置の信頼性が低くなる。
【0013】本発明の目的は、CPUのバースト転送用
I/Fを使用して、キャッシュメモリの内容の更新を高
速に行うと共に、ECC機構により1ビットエラーが検
出された場合に、主記憶装置の内容を訂正可能なデータ
記憶制御方法及び装置を実現することである。
【0014】
【課題を解決するための手段】
(1)上記目的を達成するため、本発明は次のように構
成される。すなわち、連続したアドレスのデータを転送
するバースト転送用の外部バスインタフェースを有する
CPUと、主記憶手段と、データの誤り検出訂正を行う
ECC実行部とを有するコンピュータシステムのデータ
記憶制御方法において、CPUから上記主記憶手段への
データの読み出しが要求され、読み出されたデータに誤
りがあることが上記ECC実行部に検出されたときに、
誤りのあるデータのアドレスを保持し、上記ECC実行
部によりデータの誤りが検出された際に、割込み情報を
保持し、上記CPUに割込み要求を行い、CPUの割込
み処理ルーチンにて、CPUを割込み禁止にし、主記憶
手段から上記保持されたアドレスと下位の固定長ビット
のみアドレスの異なる複数のデータを読み出し、上記読
み出した複数のデータを上記ECC実行部により誤り訂
正を実行し、誤りを訂正した複数のデータを主記憶手段
に書き戻し、上記割込み情報をクリアし、CPUを割込
み許可状態とする。
【0015】CPUのバースト転送用I/Fを使用し
て、主記憶手段からCPU内のキャッシュメモリへ、又
はキャッシュメモリから主記憶手段へ、ECC実行部を
介してデータ転送を実行する場合に、1ビットエラーが
検出されたデータのアドレスを保持しておく。そして、
CPUの割り込みを禁止し、保持したアドレスのデータ
のエラー訂正を実行した後に、これらのデータを主記憶
手段に書き込み、CPUの割り込み禁止を解除する。し
たがって、CPUのバースト転送用I/Fを使用して、
キャッシュメモリの内容の更新を高速に行うと共に、E
CC実行部により1ビットエラーが検出された場合に、
主記憶手段の内容を訂正可能なデータ記憶制御方法を実
現することができる。
【0016】(2)また、連続したアドレスのデータを
転送するバースト転送用の外部バスインタフェースを有
するCPUと、ダイレクトメモリアクセス可能なDMA
デバイスと、主記憶手段と、データの誤り検出訂正を行
うECC実行部とを有するコンピュータシステムのデー
タ記憶制御方法において、CPU又はDMAデバイスか
ら上記主記憶手段へのデータの読み出しが要求され、読
み出されたデータに誤りがあることが上記ECC実行部
に検出されたときに、誤りのあるデータのアドレスを保
持し、上記ECC実行部によりデータの誤りが検出され
た際に、割込み情報を保持し、上記CPUに割込み要求
を行い、CPUの割込み処理ルーチンにて、上記DMA
デバイスによるダイレクトメモリアクセスを禁止すると
共に、CPUを割込み禁止にし、主記憶装置から上記保
持されたアドレスと下位の固定長ビットのみアドレスの
異なる複数のデータを読み出し、上記読み出した複数の
データを上記ECC実行部により誤り訂正を実行し、誤
りを訂正した複数のデータを主記憶装置に書き戻し、上
記割込み情報をクリアし、上記DMAデバイスによるダ
イレクトメモリアクセスを許可状態とすると共に、CP
Uを割込み許可状態とする。
【0017】(3)また、連続したアドレスのデータを
転送するバースト転送用の外部バスインタフェースを有
するCPUと、主記憶手段と、データの誤り検出訂正を
行うECC実行部とを有するコンピュータシステムのデ
ータ記憶制御装置において、CPUから上記主記憶手段
へのデータの読み出しが要求され、読み出されたデータ
に誤りがあることが上記ECC実行部に検出されたとき
に、誤りのあるデータのアドレスを保持するアドレス保
持部と、CPUの割り込み情報を保持する割り込み情報
保持部と、上記ECC実行部によりデータの誤りが検出
された際に、上記割込み情報保持部に割り込み情報を設
定し、上記CPUに割込み要求を行い、CPUの割込み
処理ルーチンにて、CPUを割込み禁止にし、主記憶手
段から上記アドレス保持部に保持されたアドレスと下位
の固定長ビットのみアドレスの異なる複数のデータを読
み出し、読み出した複数のデータを上記ECC実行部に
より誤り訂正を実行し、誤りを訂正した複数のデータを
主記憶装置に書き戻し、上記割込み情報保持部の割り込
み情報をクリアし、CPUを割込み許可状態とする制御
部とを備える。
【0018】CPUのバースト転送用I/Fを使用し
て、主記憶手段からCPU内のキャッシュメモリへ、又
はキャッシュメモリから主記憶手段へ、ECC実行部を
介してデータ転送を実行する場合に、1ビットエラーが
検出されたデータのアドレスをアドレス保持部に保持し
ておく。そして、制御部により、CPUの割り込みが禁
止され、アドレス保持部に保持されたアドレスのデータ
を、ECC実行部によりエラー訂正を実行させた後に、
これらのデータを主記憶手段に書き込み、CPUの割り
込み禁止を解除する。したがって、CPUのバースト転
送用I/Fを使用して、キャッシュメモリの内容の更新
を高速に行うと共に、ECC実行部により1ビットエラ
ーが検出された場合に、主記憶手段の内容を訂正可能な
データ記憶制御装置を実現することができる。
【0019】(4)また、連続したアドレスのデータを
転送するバースト転送用の外部バスインタフェースを有
するCPUと、ダイレクトメモリアクセス可能なDMA
デバイスと、主記憶手段と、データの誤り検出訂正を行
うECC実行部とを有するコンピュータシステムのデー
タ記憶制御装置において、CPU又はDMAデバイスか
ら上記主記憶手段へのデータの読み出しが要求され、読
み出されたデータに誤りがあることが上記ECC実行部
に検出されたときに、誤りのあるデータのアドレスを保
持するアドレス保持部と、CPUの割り込み情報を保持
する割り込み情報保持部と、上記DMAデバイスの制御
情報を保持するDMA制御情報保持部と、上記ECC実
行部によりデータの誤りが検出された際に、上記割込み
情報保持部に割り込み情報を設定し、上記CPUに割込
み要求を行い、CPUの割込み処理ルーチンにて、DM
A制御情報保持部にDMA制御情報を設定し、上記DM
Aデバイスによるダイレクトメモリアクセスを禁止する
と共に、CPUを割込み禁止にし、主記憶手段から上記
アドレス保持部に保持されたアドレスと下位の固定長ビ
ットのみアドレスの異なる複数のデータを読み出し、読
み出した複数のデータを上記ECC実行部により誤り訂
正を実行し、誤りを訂正した複数のデータを主記憶装置
に書き戻し、上記割込み情報保持部の割り込み情報をク
リアし、CPUを割込み許可状態とし、上記DMA制御
情報保持部の制御情報をクリアし、上記DMAデバイス
によるダイレクトメモリアクセスを許可状態とする制御
部とを備える。
【0020】
【発明の実施の形態】以下、本発明の実施の形態を添付
図面を用いて説明する。図1は本発明の一実施形態であ
るデータ記憶制御装置の全体概略構成図である。図1に
おいて、1は連続したアドレスのデータを転送するバー
スト転送用の外部バスインタフェース及びキャッシュメ
モリ1Cを有するCPUであり、2はDMA(ダイレク
トメモリアクセス)実行可能なデバイスである。
【0021】3は、主記憶装置6からのデータの誤り検
出訂正を行うECC実行部であり、4はアドレス保持部
である。このアドレス保持部4は、ECC実行部3によ
る主記憶装置6からのデータ読み出し時に1ビットエラ
ーが検出された際に、1ビットエラーを含むデータのア
ドレスを保持する。
【0022】5aは割込み情報保持部であり、この割り
込み情報保持部5aは、ECC実行部3により主記憶装
置6からのデータ読み出し時に1ビットエラーが検出さ
れた際にセットされる。
【0023】5bはDMA制御情報保持部であり、この
DMA制御情報保持部5bがセットされると、主記憶装
置6へのDMAデバイス2のアクセスが禁止される。5
は制御部であり、割込み情報保持部5aと、DMA制御
情報保持部5bとを有する。そして、この制御部5は、
主記憶装置6へのアクセス及びECC実行部3及びアド
レス保持部4を制御し、割込み保持部5aがセットされ
た際に、制御線7に含まれる割込み要求線を介してCP
U1に割込み要求をする。
【0024】8はアドレスバス、9はデータバス、10
はメモリ制御線、11はメモリアドレスバス、12はメ
モリデータバスである。また、13はシステム制御線で
あり、制御部5はシステム制御線13を介してECC実
行部3及びアドレス保持部4を制御する。14は1ビッ
トエラー報告線で、ECC実行部3は1ビットエラー検
出時に1ビットエラー報告線14を介して制御部5に、
その報告を行う。
【0025】図2及び図3は、CPU1の通常の外部バ
スI/Fを用いた場合のリードサイクル及びライトサイ
クルを示すタイミングチャートであり、バスサイクル最
小の場合の例である。そして、図2及び図3の例では、
バスサイクルの長さは3バスクロックサイクルである。
【0026】CPU1の外部バスI/Fは、各バスクロ
ックの立ち上がりで外部からのウェイト信号をサンプリ
ングし、ウェイト信号の値が“H”レベルであれば、そ
のバスクロックでバスサイクルを終了させる。
【0027】図4及び図5は、CPU1の通常の外部バ
スI/Fを用いた場合であって、外部から3バスクロッ
クサイクルだけウェイトサイクルを挿入した場合のタイ
ミングチャートである。そして、図4がリードサイクル
で、図5がライトサイクルである。図4及び図5に示し
た例は、図2及び図3に示した例に比べて、ウェイト信
号が“L”レベルである期間が3バスクロックサイクル
だけ長い。
【0028】図6及び図7は、CPU1のバースト転送
用外部バスI/Fを用いた場合であって、転送長が4の
場合のタイミングチャートである。バースト転送である
ので、アドレスA1、A2、A3、A4は、互いに下位
のビットのみが異なる。また、データD1、D2、D
3、D4は、それぞれアドレスA1、A2、A3、A4
に格納されたデータである。 CPU1のバースト転送
用外部バスI/Fは、バスサイクルの長さが固定長であ
り、外部からウェイト信号によりバスサイクルの長さを
制御することはできない。
【0029】従来においては、主記憶装置6に対してE
CC機構によるエラー検出訂正を実行する場合、CPU
1の通常の外部バスI/Fを使用していた。つまり、主
記憶装置6の読み出しアクセス時に、ECC実行部3に
より1ビットエラーが検出された場合、CPU1には、
ECC実行部3より訂正されたデータが送られると共
に、主記憶装置6には訂正後のデータが書き込まれ、主
記憶装置6の内容が訂正される。
【0030】このエラーが検出された場合には、エラー
が検出されない場合の読み出しアクセスよりも、主記憶
装置6の書き込みの時間だけバスサイクルが長くなる
が、ウェイト信号によってバスサイクルの長さが制御さ
れる。
【0031】図8は、通常の外部バスI/Fを使用し、
主記憶装置6の読み出しアクセス時にECC実行部3に
より1ビットエラーが検出された場合のバスサイクルを
示すタイミングチャートである。図8において、メモリ
素子リードアクセスサイクルがエラーが検出されない場
合の読み出しアクセスである。そして、エラーが検出さ
れた場合は、メモリリードアクセスサイクルに、メモリ
素子ライトアクセスサイクルが追加される。このメモリ
素子ライトアクセスサイクルが、主記憶装置6の内容の
訂正によりバスサイクルが延長される部分である。
【0032】なお、メモリ素子リードアクセスサイクル
においては、メモリ素子アクセス時間が60ns、EC
C時間が15nsである。また、メモリ素子ライトアク
セスサイクルにおいては、メモリ素子アクセス時間が4
5nsとなっている。
【0033】図9は、本発明の一実施形態におけるCP
U1の主記憶装置6への書き込みアクセス動作を表して
いる。図9において、CPU1の書き込みデータは、デ
ータバス9を介してECC実行部3に送られる。そし
て、ECC実行部3に送られた書き込みデータは、この
ECC実行部3にて、チェックビットが生成され、CP
U1の書き込みデータとチェックビットが、メモリデー
タバス12を介して主記憶装置6に書き込まれる。
【0034】図10は、本発明の一実施形態における主
記憶装置6への読み出しアクセスの動作フローチャート
である。図10のステップ100において、CPU1又
はDMAデバイス2により主記憶装置6へリードアクセ
スがあると、ステップ101に進み、主記憶装置6から
データが読み出される。次に、ステップ102におい
て、主記憶装置6からの読み出しデータは、ECC実行
部3によりエラーの検出が行われる。そして、ステップ
103において、主記憶装置6からの読み出しデータに
1ビットエラーがない場合は、ステップ104に進み、
CPU1又はDMAデバイス2に読み出しデータが送ら
れ、主記憶装置6への読み出しアクセスサイクルが終了
する。
【0035】ステップ103において、主記憶装置6か
らの読み出しデータから1ビットエラーが検出された場
合、ステップ105に進み、アドレス保持部4に1ビッ
トエラーが検出されたデータのアドレスを格納する。次
に、ステップ106において、割込み情報保持部5aを
セットし、ステップ107において、制御部5から制御
線7を介してCPU1に割込みを要求する。そして、ス
テップ108において、CPU1又はDMAデバイス2
に1ビットエラー訂正後のデータが送られ、主記憶装置
6への読み出しアクセスサイクルが終了する。
【0036】図11は、CPU1の主記憶6装置への読
み出しアクセスにおいて、主記憶装置6からの読み出し
データに1ビットエラーがない場合の動作を表してい
る。また、図12は、CPU1の主記憶装置6への読み
出しアクセスにおいて、主記憶装置6からの読み出しデ
ータに1ビットエラーがある場合の動作を表している。
【0037】図12に示した動作は、図11に示した動
作に加え、ECC実行部3から制御部5に1ビットエラ
ー報告線14を介しての1ビットエラーの報告、割込み
情報保持部5aのセット及び制御部5からの制御線7の
中の割込み要求線を介してのCPU1への割込み要求の
動作が加わっている。また、CPU1には、ECC実行
部3によりエラー訂正後のデータが送られる。
【0038】本発明の一実施形態においては、ECC実
行部3により、1ビットエラーが検出された場合、主記
憶装置6の内容の訂正は、制御部5により要求された割
込みの処理ルーチンで行う。
【0039】図13は、上記割込み処理ルーチンにおけ
る主記憶装置6の内容訂正の動作フローチャートであ
る。主記憶装置6の内容は、ECC実行部3により訂正
されたデータを主記憶6に書き戻せば訂正される。具体
的には、主記憶装置6の1ビットエラーが発生したアド
レスからCPU1が読み出しを行い、読み出したデータ
を主記憶装置6に書き戻せばよい。
【0040】この読み出しと書き戻しの間に、主記憶装
置6の1ビットエラーの発生したアドレスに新たにデー
タが書き込まれた場合、主記憶装置6への訂正データ書
き戻しにより主記憶装置6の内容が古いデータに戻され
る恐れがある。1ビットエラーの発生したアドレスへの
新たなデータの書き込みはDMAデバイス2によるか、
CPU1の1ビットエラー割込みよりもレベルの高い割
込み処理ルーチンにより行われる。
【0041】そこで、本発明の一実施形態においては、
図13のステップ200及び201に示すように、1ビ
ットエラー発生アドレスからの読み出しと書き戻しの前
にDMA制御情報保持部5bをセットし、DMAを禁止
し、CPU1を割込み禁止状態にする。これにより、1
ビットエラー発生アドレスへの新たなデータの書き込み
を禁止している。
【0042】そして、ステップ202において、制御部
5はアドレス保持部4に格納されたエラー発生アドレス
を読み出す。次に、ステップ203において、読み出し
たエラー発生アドレスからバーストで、つまり連続して
主記億装置6からデータを読み出す。そして、ステップ
204において、エラー訂正されたデータを、主記憶装
置6のエラーが発生したアドレスにバーストで書き込
む。
【0043】次に、ステップ205において、制御部5
は、割り込み情報保持部5aの内容をクリアし、割り込
み要求を解除する。続いて、ステップ206において、
制御部5は、CPU1を割り込み許可状態とする。そし
て、ステップ207において、DMA制御情報保持部5
bの内容をクリアし、DMAを許可する。なお、アドレ
ス保持部4には、1ビットエラーの発生した最新のアド
レスが格納されているため、バースト転送にて1ビット
エラーが複数回発生した場合は、最後の1ビットエラー
発生アドレスのみがアドレス保持部4に格納される。本
発明の一実施形態においては、1ビットエラー発生アド
レスからの読み出しと訂正データの書き戻しとをバース
トで行うことにより、バースト転送において複数回1ビ
ットエラーが発生した場合にも対応している。図14
は、アドレス保持部4からの1ビットエラー発生アドレ
スの読み出し動作を示している。
【0044】図15は、CPU1の通常の外部バスI/
Fを使用した例であって、主記憶装置6にバーストモー
ドを備えるDRAMを使用した場合の、主記憶装置6か
らCPU1のキャッシュメモリ1Cへのデータの転送例
におけるタイミングチャートである。この図15に示す
ように、CPU1の通常の外部バスI/Fを使用した場
合、4つのデータを転送するためには、1回のリードア
クセスを4回実行しなければならないことになる。
【0045】図16は、CPU1のバースト転送用の外
部バスI/Fを使用した例であって、主記憶装置6にバ
ーストモードを備えるDRAMを使用した場合の、主記
憶装置6からCPU1のキャッシュメモリ1Cへのデー
タの転送例におけるタイミングチャートである。
【0046】この図16に示すように、DRAMの連続
アクセスを高速に実行できるバーストモードを使用する
ため、主記憶装置6からCPU1のキャッシュメモリ1
Cへのデータ転送を高速に行うことができる。図16で
は、バーストモード使用により一定間隔で連続してデー
タが読み出されている。
【0047】ここで、主記憶装置6のリードアクセス時
間を60ns、バーストモードによるデータ読み出し間
隔を10ns、ECC実行時間を15nsとして、図1
5に示した例と、図16に示した例とを比較する。この
比較結果から、CPU1のバースト転送用の外部I/F
を使用することにより、通常の外部バスI/Fを使用す
るよりも主記憶装置6からCPU1のキャッシュメモリ
へデータの転送を195ns(300ns−105n
s)短縮できる。
【0048】図17は、CPU1の通常の外部バスI/
Fを使用した例であって、主記憶装置6にバーストモー
ドを備えるDRAMを使用した場合の、CPU1のキャ
ッシュメモリ1Cから主記憶装置6へのデータの転送例
におけるタイミングチャートである。この図17に示す
ように、CPU1の通常の外部バスI/Fを使用した場
合、4つのデータを転送するためには、1回のライトア
クセスを4回実行しなければならないことになる。
【0049】図18は、CPU1のバースト転送用の外
部バスI/Fを使用した例であって、主記憶装置6にバ
ーストモードを備えるDRAMを使用した場合の、CP
U1のキャッシュメモリ1Cから主記憶装置6へのデー
タの転送例におけるタイミングチャートである。
【0050】この図18に示すように、DRAMの連続
アクセスを高速に実行できるバーストモードを使用する
ため、 CPU1のキャッシュメモリ1Cから主記憶装
置6へのデータの転送を高速に行うことができる。図1
8では、バーストモード使用により一定間隔で連続して
データが書き込まれている。そして、1ビットエラーが
検出された場合には、エラーが検出されたデータのアド
レスを保持しておく。そして、CPU1の割り込みを禁
止し、保持したアドレスのデータのエラー訂正を実行し
た後に、これらのデータを主記億装置6に書き込み、C
PU1の割り込み禁止を解除する。
【0051】ここで、主記憶装置6のライトアクセス時
間とECC実行時間の和を45ns、バーストモードに
よるデータ書き込み間隔を10nsとして、図17に示
した例と、図18に示した例とを比較する。この比較結
果から、CPU1のバースト転送用の外部I/Fを使用
することにより、通常の外部バスI/Fを使用するより
もCPU1のキャッシュメモリ1Cから主記憶装置6へ
データの転送を105ns(180ns−75ns)短
縮できる。
【0052】以上のように、本発明の一実施形態によれ
ば、CPU1のバースト転送用I/Fを使用して、主記
億装置6からキャッシュメモリ1Cへ、又はキャッシュ
メモリ1Cから主記億装置6へ、ECC実行部3を介し
てデータ転送を実行する場合に、1ビットエラーが検出
されたデータのアドレスを保持しておく。そして、CP
U1の割り込みを禁止し、保持したアドレスのデータの
エラー訂正を実行した後に、これらのデータを主記億装
置6に書き込み、CPU1の割り込み禁止を解除するよ
うに構成したので、CPUのバースト転送用I/Fを使
用して、キャッシュメモリの内容の更新を高速に行うと
共に、ECC機構により1ビットエラーが検出された場
合に、主記憶装置の内容を訂正可能なデータ記憶制御方
法及び装置を実現することができる。
【0053】なお、上述した例においては、DMAデバ
イス2を有するシステムに適用した例であるが、このD
MAデバイス2を有していないシステムに対しても、本
発明は適用可能である。
【0054】
【発明の効果】本発明は、以上説明したように構成され
ているため、次のような効果がある。CPUのバースト
転送用I/Fを使用して、主記億手段からCPU内のキ
ャッシュメモリへ、又はキャッシュメモリから主記億手
段へ、ECC実行部を介してデータ転送を実行する場合
に、1ビットエラーが検出されたデータのアドレスを保
持しておく。そして、CPUの割り込みを禁止し、保持
したアドレスのデータのエラー訂正を実行した後に、こ
れらのデータを主記億手段に書き込み、CPU1の割り
込み禁止を解除する。したがって、CPUのバースト転
送用I/Fを使用して、キャッシュメモリの内容の更新
を高速に行うと共に、ECC実行部により1ビットエラ
ーが検出された場合に、主記憶手段の内容を訂正可能な
データ記憶制御方法及び装置を実現することができる。
【0055】また、ECC機構によるエラー訂正動作に
より、主記憶手段のデータの1ビット誤りが訂正され、
訂正不可能な2ビットエラーが発生する確率を低くし、
主記憶手段の信頼性を高くすることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態の全体概略図である。
【図2】CPUの通常の外部バスI/Fを用いた場合の
リードサイクルを示すタイミングチャートである。
【図3】CPUの通常の外部バスI/Fを用いた場合の
ライトサイクルを示すタイミングチャートである。
【図4】CPUの通常の外部バスI/Fを用いた場合の
ウェイトサイクルを挿入したリードサイクルを示すタイ
ミングチャートである。
【図5】CPUの通常の外部バスI/Fを用いた場合の
ウェイトサイクルを挿入したライトサイクルを示すタイ
ミングチャートである。
【図6】CPUのバースト転送用の外部バスI/Fを用
いた場合のリードサイクルを示すタイミングチャートで
ある。
【図7】CPUのバースト転送用の外部バスI/Fを用
いた場合のライトサイクルを示すタイミングチャートで
ある。
【図8】CPUの通常のバスI/Fを用いた場合におい
て、1ビットエラーが発生した際の主記憶装置の内容を
訂正するサイクルを示すタイミングチャートである。
【図9】本発明の一実施形態におけるCPUから主記憶
装置への書き込みアクセスを表す図である。
【図10】本発明の一実施例おける主記憶装置への読み
出しアクセスの動作フローチャートである。
【図11】CPUの主記憶装置への読み出しアクセスに
おいて、主記憶装置からの読み出しデータに1ビットエ
ラーがない場合の動作を表す図である。
【図12】CPUの主記憶装置への読み出しアクセスに
おいて、主記憶装置からの読み出しデータに1ビットエ
ラーがある場合の動作を表す図である。
【図13】割込み処理ルーチンにおける主記憶装置の内
容訂正の動作フローチャートである。
【図14】アドレス保持部からの1ビットエラーを発生
したデータのアドレスの読み出し動作を示す図である。
【図15】CPUの通常の外部バスI/Fを使用し、主
記憶装置にバーストモードを備えるDRAMを使用した
場合の、主記憶装置からCPUのキャッシュメモリへの
データの転送例を示すタイミングチャートである。
【図16】CPUのバースト転送用の外部バスI/Fを
使用し、主記憶装置にバーストモードを備えるDRAM
を使用した場合の、主記憶装置からCPUのキャッシュ
メモリへのデータの転送例を示すタイミングチャートで
ある。
【図17】CPUの通常の外部バスI/Fを使用し、主
記憶装置にバーストモードを備えるDRAMを使用した
場合の、CPUのキャッシュメモリから主記憶装置への
データの転送例を示すタイミングチャートである。
【図18】CPUのバースト転送用の外部バスI/Fを
使用し、主記憶装置にバーストモードを備えるDRAM
を使用した場合の、CPUのキャッシュメモリから主記
憶装置へのデータの転送例を示すタイミングチャートで
ある。
【符号の説明】
1 連続したアドレスのデータを転送するバースト転送
用の外部バスインタフェースを有するCPU 1C キャッシュメモリ 2 DMA実施可能なデバイス 3 ECC実行部 4 アドレス保持部 5 制御部 5a 割込み情報保持部 5b DMA制御情報保持部 6 主記憶装置 7 制御線 8 アドレスバス 9 データバス 10 メモリ制御線 11 メモリアドレスバス 12 メモリデータバス 13 システム制御線 14 1ビットエラー報告線

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】連続したアドレスのデータを転送するバー
    スト転送用の外部バスインタフェースを有するCPU
    と、主記憶手段と、データの誤り検出訂正を行うECC
    実行部とを有するコンピュータシステムのデータ記憶制
    御方法において、 CPUから上記主記憶手段へのデータの読み出しが要求
    され、読み出されたデータに誤りがあることが上記EC
    C実行部に検出されたときに、誤りのあるデータのアド
    レスを保持し、 上記ECC実行部によりデータの誤りが検出された際
    に、割込み情報を保持し、上記CPUに割込み要求を行
    い、 CPUの割込み処理ルーチンにて、CPUを割込み禁止
    にし、主記憶手段から上記保持されたアドレスと下位の
    固定長ビットのみアドレスの異なる複数のデータを読み
    出し、 上記読み出した複数のデータを上記ECC実行部により
    誤り訂正を実行し、誤りを訂正した複数のデータを主記
    憶手段に書き戻し、 上記割込み情報をクリアし、CPUを割込み許可状態と
    することを特徴とするデータ記憶制御方法。
  2. 【請求項2】連続したアドレスのデータを転送するバー
    スト転送用の外部バスインタフェースを有するCPU
    と、ダイレクトメモリアクセス可能なDMAデバイス
    と、主記憶手段と、データの誤り検出訂正を行うECC
    実行部とを有するコンピュータシステムのデータ記憶制
    御方法において、 CPU又はDMAデバイスから上記主記憶手段へのデー
    タの読み出しが要求され、読み出されたデータに誤りが
    あることが上記ECC実行部に検出されたときに、誤り
    のあるデータのアドレスを保持し、 上記ECC実行部によりデータの誤りが検出された際
    に、割込み情報を保持し、上記CPUに割込み要求を行
    い、 CPUの割込み処理ルーチンにて、上記DMAデバイス
    によるダイレクトメモリアクセスを禁止すると共に、C
    PUを割込み禁止にし、主記憶装置から上記保持された
    アドレスと下位の固定長ビットのみアドレスの異なる複
    数のデータを読み出し、 上記読み出した複数のデータを上記ECC実行部により
    誤り訂正を実行し、誤りを訂正した複数のデータを主記
    憶装置に書き戻し、 上記割込み情報をクリアし、上記DMAデバイスによる
    ダイレクトメモリアクセスを許可状態とすると共に、C
    PUを割込み許可状態とすることを特徴とするデータ記
    憶制御方法。
  3. 【請求項3】連続したアドレスのデータを転送するバー
    スト転送用の外部バスインタフェースを有するCPU
    と、主記憶手段と、データの誤り検出訂正を行うECC
    実行部とを有するコンピュータシステムのデータ記憶制
    御装置において、 CPUから上記主記憶手段へのデータの読み出しが要求
    され、読み出されたデータに誤りがあることが上記EC
    C実行部に検出されたときに、誤りのあるデータのアド
    レスを保持するアドレス保持部と、 CPUの割り込み情報を保持する割り込み情報保持部
    と、 上記ECC実行部によりデータの誤りが検出された際
    に、上記割込み情報保持部に割り込み情報を設定し、上
    記CPUに割込み要求を行い、CPUの割込み処理ルー
    チンにて、CPUを割込み禁止にし、主記憶手段から上
    記アドレス保持部に保持されたアドレスと下位の固定長
    ビットのみアドレスの異なる複数のデータを読み出し、
    読み出した複数のデータを上記ECC実行部により誤り
    訂正を実行し、誤りを訂正した複数のデータを主記憶装
    置に書き戻し、上記割込み情報保持部の割り込み情報を
    クリアし、CPUを割込み許可状態とする制御部とを備
    えることを特徴とするデータ記憶制御装置。
  4. 【請求項4】連続したアドレスのデータを転送するバー
    スト転送用の外部バスインタフェースを有するCPU
    と、ダイレクトメモリアクセス可能なDMAデバイス
    と、主記憶手段と、データの誤り検出訂正を行うECC
    実行部とを有するコンピュータシステムのデータ記憶制
    御装置において、 CPU又はDMAデバイスから上記主記憶手段へのデー
    タの読み出しが要求され、読み出されたデータに誤りが
    あることが上記ECC実行部に検出されたときに、誤り
    のあるデータのアドレスを保持するアドレス保持部と、 CPUの割り込み情報を保持する割り込み情報保持部
    と、 上記DMAデバイスの制御情報を保持するDMA制御情
    報保持部と、 上記ECC実行部によりデータの誤りが検出された際
    に、上記割込み情報保持部に割り込み情報を設定し、上
    記CPUに割込み要求を行い、CPUの割込み処理ルー
    チンにて、DMA制御情報部にDMA制御情報を設定
    し、上記DMAデバイスによるダイレクトメモリアクセ
    スを禁止すると共に、CPUを割込み禁止にし、主記憶
    手段から上記アドレス保持部に保持されたアドレスと下
    位の固定長ビットのみアドレスの異なる複数のデータを
    読み出し、読み出した複数のデータを上記ECC実行部
    により誤り訂正を実行し、誤りを訂正した複数のデータ
    を主記憶装置に書き戻し、上記割込み情報保持部の割り
    込み情報をクリアし、CPUを割込み許可状態とし、上
    記DMA制御情報保持部の制御情報をクリアし、上記D
    MAデバイスによるダイレクトメモリアクセスを許可状
    態とする制御部とを備えることを特徴とするデータ記憶
    制御装置。
JP23670796A 1996-09-06 1996-09-06 データ記憶制御方法及び装置 Expired - Lifetime JP3638729B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23670796A JP3638729B2 (ja) 1996-09-06 1996-09-06 データ記憶制御方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23670796A JP3638729B2 (ja) 1996-09-06 1996-09-06 データ記憶制御方法及び装置

Publications (2)

Publication Number Publication Date
JPH1083357A true JPH1083357A (ja) 1998-03-31
JP3638729B2 JP3638729B2 (ja) 2005-04-13

Family

ID=17004579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23670796A Expired - Lifetime JP3638729B2 (ja) 1996-09-06 1996-09-06 データ記憶制御方法及び装置

Country Status (1)

Country Link
JP (1) JP3638729B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011516978A (ja) * 2008-04-01 2011-05-26 アップル インコーポレイテッド 任意の処理機能を有する中央dma
US8566485B2 (en) 2005-09-29 2013-10-22 Apple Inc. Data transformation during direct memory access

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566485B2 (en) 2005-09-29 2013-10-22 Apple Inc. Data transformation during direct memory access
JP2011516978A (ja) * 2008-04-01 2011-05-26 アップル インコーポレイテッド 任意の処理機能を有する中央dma

Also Published As

Publication number Publication date
JP3638729B2 (ja) 2005-04-13

Similar Documents

Publication Publication Date Title
US5912906A (en) Method and apparatus for recovering from correctable ECC errors
US7908443B2 (en) Memory controller and method for optimized read/modify/write performance
TWI274991B (en) A method, apparatus, and system for buffering instructions
US9058290B2 (en) Memory protection cache
US7689895B2 (en) On-the fly error checking and correction CODEC system and method for supporting non-volatile memory
JPS6310460B2 (ja)
WO2024131845A1 (zh) 一种片上系统以及汽车
JP2001249847A (ja) マルチレベルキャッシュ転送時間の改善方法および装置
US6859904B2 (en) Apparatus and method to facilitate self-correcting memory
JP2004102395A (ja) メモリダンプデータの取得方法および情報処理装置、ならびにそのプログラム
JP3962853B2 (ja) メモリデータ誤り訂正方法
JP3638729B2 (ja) データ記憶制御方法及び装置
JP4021991B2 (ja) メモリ制御システム
JP2004126911A (ja) 制御装置
JPH04162161A (ja) 記憶制御装置
JPH0667989A (ja) 記憶装置のパトロール回路
JPH0423294B2 (ja)
JPS62130444A (ja) メモリアクセス制御装置
JPH03191451A (ja) エラー訂正方式
JPH0778747B2 (ja) データ処理装置
JPH03168839A (ja) 制御メモリ1ビットエラー修正方式
JPH08194648A (ja) 記憶装置
JPS62271030A (ja) メモリアクセス方式
JPH0877067A (ja) キャッシュメモリ制御装置
JPS59217298A (ja) メモリエラ−救済方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040408

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050112

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080121

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100121

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110121

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110121

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120121

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130121

Year of fee payment: 8

EXPY Cancellation because of completion of term