JPH08202628A - 記憶管理装置 - Google Patents
記憶管理装置Info
- Publication number
- JPH08202628A JPH08202628A JP7009449A JP944995A JPH08202628A JP H08202628 A JPH08202628 A JP H08202628A JP 7009449 A JP7009449 A JP 7009449A JP 944995 A JP944995 A JP 944995A JP H08202628 A JPH08202628 A JP H08202628A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- block
- read
- parity
- 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.)
- Withdrawn
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【目的】 読み出すデータが、誤ったアドレスに書き込
まれていた可能性があるか否かを検出可能な記憶管理装
置を提供することを目的とする。 【構成】 記憶装置内のデータを、所定データ長を有す
るブロック毎に管理し、ブロック内に格納されているデ
ータの書込時におけるアドレスのパリティエラーの有無
を、格納されているデータが無効か有効かで示すデータ
管理フラグを設け、データ書込時に、アドレスにパリテ
ィエラーを検出したとき、全てのデータ管理フラグを無
効に設定し、記憶装置からのデータ読出時に、読み出す
データを格納していたブロックのデータ管理フラグが無
効に設定されているとき、読出データのパリティをエラ
ーとなるようにすることを含むように構成した。
まれていた可能性があるか否かを検出可能な記憶管理装
置を提供することを目的とする。 【構成】 記憶装置内のデータを、所定データ長を有す
るブロック毎に管理し、ブロック内に格納されているデ
ータの書込時におけるアドレスのパリティエラーの有無
を、格納されているデータが無効か有効かで示すデータ
管理フラグを設け、データ書込時に、アドレスにパリテ
ィエラーを検出したとき、全てのデータ管理フラグを無
効に設定し、記憶装置からのデータ読出時に、読み出す
データを格納していたブロックのデータ管理フラグが無
効に設定されているとき、読出データのパリティをエラ
ーとなるようにすることを含むように構成した。
Description
【0001】
【産業上の利用分野】本発明は、記憶管理装置に関し、
特に、記憶装置へのデータ書込要求時に書込アドレスに
生じたエラーを管理する装置に関する。
特に、記憶装置へのデータ書込要求時に書込アドレスに
生じたエラーを管理する装置に関する。
【0002】
【従来の技術】記憶装置に供給されるアドレスのチェッ
クは、記憶装置に入力される以前に行われている。その
ため、チェック結果が正常であったとしても、記憶装置
に入力されたアドレスの保障がなされているとは限ら
ず、本来のアドレスとは異なる別のアドレスが与えられ
ている可能性があった。
クは、記憶装置に入力される以前に行われている。その
ため、チェック結果が正常であったとしても、記憶装置
に入力されたアドレスの保障がなされているとは限ら
ず、本来のアドレスとは異なる別のアドレスが与えられ
ている可能性があった。
【0003】特に、最近の記憶装置の大容量化に伴っ
て、アドレス化けに伴う影響の範囲が拡大化するにつ
れ、かかるアドレス化けによるデータ処理の異常が無視
できなくなってきており、記憶装置に入力されたアドレ
スデータをチェックする記憶管理装置が必要とされるよ
うになってきた。
て、アドレス化けに伴う影響の範囲が拡大化するにつ
れ、かかるアドレス化けによるデータ処理の異常が無視
できなくなってきており、記憶装置に入力されたアドレ
スデータをチェックする記憶管理装置が必要とされるよ
うになってきた。
【0004】ここで、従来の記憶管理装置の一構成を図
15を参照して説明する。図15に示す従来の記憶管理
装置は、下記の(イ)〜(ホ)の要素を備えて構成され
る。 (イ)8バイト単位の書込データ2を格納すると共に、
8バイト単位の読出データ3を出力するRAM1。 (ロ)書込または読出要求に基づいてRAM1への書込
または読出を指示するフラグ6。 (ハ)RAM1へのアドレスをパリティビットを含んで
記憶するアドレスレジスタ4。 (ニ)アドレスレジスタ4の値を+1すると共に、+1
されたアドレスに対するパリティを作成するアドレス加
算器5。 (ホ)アドレスレジスタ4のパリティチェックを行うパ
リティチェック回路7。
15を参照して説明する。図15に示す従来の記憶管理
装置は、下記の(イ)〜(ホ)の要素を備えて構成され
る。 (イ)8バイト単位の書込データ2を格納すると共に、
8バイト単位の読出データ3を出力するRAM1。 (ロ)書込または読出要求に基づいてRAM1への書込
または読出を指示するフラグ6。 (ハ)RAM1へのアドレスをパリティビットを含んで
記憶するアドレスレジスタ4。 (ニ)アドレスレジスタ4の値を+1すると共に、+1
されたアドレスに対するパリティを作成するアドレス加
算器5。 (ホ)アドレスレジスタ4のパリティチェックを行うパ
リティチェック回路7。
【0005】
【発明が解決しようとする課題】このように、従来の記
憶管理装置は、パリティチェック回路7が書込アドレス
のパリティチェックを行っており、パリティエラーの検
出結果に基づいて誤ったアドレスにデータの書込がなさ
れないようにしていた。
憶管理装置は、パリティチェック回路7が書込アドレス
のパリティチェックを行っており、パリティエラーの検
出結果に基づいて誤ったアドレスにデータの書込がなさ
れないようにしていた。
【0006】しかし、メモリチップのアクセスタイムの
高速化や動作クロックの高速化などの要因によって、書
込アドレスにエラーが検出されたにもかかわらず、デー
タの書込を抑止できない場合がでてくる可能性があっ
た。
高速化や動作クロックの高速化などの要因によって、書
込アドレスにエラーが検出されたにもかかわらず、デー
タの書込を抑止できない場合がでてくる可能性があっ
た。
【0007】本発明は、このような事情に鑑みてなされ
たもので、読み出すデータが、誤ったアドレスに書き込
まれていた可能性があるか否かを検出可能な記憶管理装
置を提供することを課題とする。
たもので、読み出すデータが、誤ったアドレスに書き込
まれていた可能性があるか否かを検出可能な記憶管理装
置を提供することを課題とする。
【0008】
【課題を解決するための手段】本発明の記憶管理装置
は、前述した課題を解決するため下記の如く構成されて
いる。図1は、本発明の原理ブロック図である。
は、前述した課題を解決するため下記の如く構成されて
いる。図1は、本発明の原理ブロック図である。
【0009】即ち、パリティ付きのアドレスが指定され
てデータを書き込む記憶装置1を管理する記憶管理装置
において、ブロック管理部4、データ管理フラグ8、無
効設定部10及びパリティエラー設定部9を必須構成要
件として備えて構成されている(請求項1に対応)。
てデータを書き込む記憶装置1を管理する記憶管理装置
において、ブロック管理部4、データ管理フラグ8、無
効設定部10及びパリティエラー設定部9を必須構成要
件として備えて構成されている(請求項1に対応)。
【0010】《本発明の必須構成要素》 (ブロック管理部4)前記ブロック管理部4は、前記記
憶装置1内のデータを、所定データ長を有するブロック
毎に管理する。
憶装置1内のデータを、所定データ長を有するブロック
毎に管理する。
【0011】(データ管理フラグ8)前記データ管理フ
ラグ8は、前記ブロック内に格納されているデータの書
込時における前記アドレスのパリティエラーの有無に基
づいて、格納されているデータが無効か有効かを保持す
る。
ラグ8は、前記ブロック内に格納されているデータの書
込時における前記アドレスのパリティエラーの有無に基
づいて、格納されているデータが無効か有効かを保持す
る。
【0012】(無効設定部10)前記無効設定部10
は、データ書込時に、前記アドレスにパリティエラーを
検出したとき、全ての前記データ管理フラグ8を無効に
設定する。
は、データ書込時に、前記アドレスにパリティエラーを
検出したとき、全ての前記データ管理フラグ8を無効に
設定する。
【0013】(パリティエラー設定部9)前記パリティ
エラー設定部9は、前記記憶装置1からのデータ読出時
に、読み出すデータを格納していたブロックのデータ管
理フラグ8が無効に設定されているとき、読出データの
パリティがエラーとなるように設定する。
エラー設定部9は、前記記憶装置1からのデータ読出時
に、読み出すデータを格納していたブロックのデータ管
理フラグ8が無効に設定されているとき、読出データの
パリティがエラーとなるように設定する。
【0014】《本発明における付加的構成》本発明の記
憶管理装置は、前述した必須の構成要素からなるが、そ
の構成要素が以下のような場合であっても成立する。
憶管理装置は、前述した必須の構成要素からなるが、そ
の構成要素が以下のような場合であっても成立する。
【0015】第1の付加的構成は、前記書込アドレス
が、前記ブロック内のアドレスを指定するブロック内ア
ドレスとブロック内アドレス以外の部分であるブロック
アドレスとに分別されており、ブロック内アドレスとブ
ロックアドレスの両方に前記パリティが設けられている
ことである。そして、前記無効設定部10は、前記ブロ
ック内アドレスにパリティエラーを検出した場合に、対
応するブロックの前記データ管理フラグ8を無効に設定
する一方、前記ブロックアドレスにパリティエラーを検
出した場合に、全ての前記データ管理フラグ8を無効に
設定することである(請求項2に対応)。
が、前記ブロック内のアドレスを指定するブロック内ア
ドレスとブロック内アドレス以外の部分であるブロック
アドレスとに分別されており、ブロック内アドレスとブ
ロックアドレスの両方に前記パリティが設けられている
ことである。そして、前記無効設定部10は、前記ブロ
ック内アドレスにパリティエラーを検出した場合に、対
応するブロックの前記データ管理フラグ8を無効に設定
する一方、前記ブロックアドレスにパリティエラーを検
出した場合に、全ての前記データ管理フラグ8を無効に
設定することである(請求項2に対応)。
【0016】ここで、ブロック内アドレス及びブロック
アドレスは、例えば、下記の(イ)〜(二)のように設
定することができる。 (イ)書込アドレスを上位ビットと下位ビットに分けた
場合に、上位ビットをブロックアドレス、下位ビットを
ブロック内アドレスに設定する。 (ロ)書込アドレスを上位ビットと下位ビットに分けた
場合に、上位ビットをブロック内アドレス、下位ビット
をブロックアドレスに設定する。 (ハ)書込アドレスを上位、中位及び下位のビットに分
けた場合に、上位及び下位ビットをブロックアドレス、
中位ビットをブロック内アドレスに設定する。 (二)書込アドレスを上位、中位及び下位のビットに分
けた場合に、上位及び下位ビットをブロック内アドレ
ス、中位ビットをブロックアドレスに設定する。
アドレスは、例えば、下記の(イ)〜(二)のように設
定することができる。 (イ)書込アドレスを上位ビットと下位ビットに分けた
場合に、上位ビットをブロックアドレス、下位ビットを
ブロック内アドレスに設定する。 (ロ)書込アドレスを上位ビットと下位ビットに分けた
場合に、上位ビットをブロック内アドレス、下位ビット
をブロックアドレスに設定する。 (ハ)書込アドレスを上位、中位及び下位のビットに分
けた場合に、上位及び下位ビットをブロックアドレス、
中位ビットをブロック内アドレスに設定する。 (二)書込アドレスを上位、中位及び下位のビットに分
けた場合に、上位及び下位ビットをブロック内アドレ
ス、中位ビットをブロックアドレスに設定する。
【0017】第2の付加的構成は、転送部11を設ける
ことである(請求項3に対応)。 〔転送部11〕転送部11は、前記記憶装置1からのデ
ータ読出時に、読み出すデータを格納していたブロック
の前記データ管理フラグ8が無効に設定されていると
き、読出データのパリティをエラーにしないで、読出デ
ータが無効であることを示す信号を読出データと共に読
出要求先に転送する。
ことである(請求項3に対応)。 〔転送部11〕転送部11は、前記記憶装置1からのデ
ータ読出時に、読み出すデータを格納していたブロック
の前記データ管理フラグ8が無効に設定されていると
き、読出データのパリティをエラーにしないで、読出デ
ータが無効であることを示す信号を読出データと共に読
出要求先に転送する。
【0018】第3の付加的構成は、前記記憶装置1が格
納するデータに誤り検出用のチェックビットを設け、ま
た、パターン変更部12を設けることである(請求項4
に対応)。 〔パターン変更部12〕パターン変更部12は、前記記
憶装置1からのデータ読出時に、データが格納されてい
るブロックのデータ管理フラグ8が無効に設定されてい
るとき、読出データに対して、そのパリティをエラーに
しないで、誤り訂正不可能なパターンに変更する。
納するデータに誤り検出用のチェックビットを設け、ま
た、パターン変更部12を設けることである(請求項4
に対応)。 〔パターン変更部12〕パターン変更部12は、前記記
憶装置1からのデータ読出時に、データが格納されてい
るブロックのデータ管理フラグ8が無効に設定されてい
るとき、読出データに対して、そのパリティをエラーに
しないで、誤り訂正不可能なパターンに変更する。
【0019】
【作用】図2に、図1の構成によるフローチャートを示
す。本発明の記憶管理装置によれば、まず、記憶装置内
のデータがブロック毎に管理され、さらに、ブロック毎
にデータ管理フラグが設けられる。そして、データ書込
時に、書込アドレスにパリティエラーが検出されていれ
ば、全てのデータ管理フラグ8が無効に設定する。次
に、記憶装置1からのデータ読出時に、読み出すデータ
を格納していたブロックのデータ管理フラグ8が無効に
設定されているれば、読出データのパリティがエラーに
設定することで、読出データを無効とする。
す。本発明の記憶管理装置によれば、まず、記憶装置内
のデータがブロック毎に管理され、さらに、ブロック毎
にデータ管理フラグが設けられる。そして、データ書込
時に、書込アドレスにパリティエラーが検出されていれ
ば、全てのデータ管理フラグ8が無効に設定する。次
に、記憶装置1からのデータ読出時に、読み出すデータ
を格納していたブロックのデータ管理フラグ8が無効に
設定されているれば、読出データのパリティがエラーに
設定することで、読出データを無効とする。
【0020】ところで、前記第1の付加的構成のよう
に、書込アドレスを、ブロック内アドレスとブロックア
ドレスに分別しておけば、ブロック内アドレスにパリテ
ィエラーが検出された場合に、対応するブロックのデー
タ管理フラグ8が無効に設定され、ブロックアドレスに
パリティエラーが検出された場合に、全てのデータ管理
フラグ8が無効に設定される。
に、書込アドレスを、ブロック内アドレスとブロックア
ドレスに分別しておけば、ブロック内アドレスにパリテ
ィエラーが検出された場合に、対応するブロックのデー
タ管理フラグ8が無効に設定され、ブロックアドレスに
パリティエラーが検出された場合に、全てのデータ管理
フラグ8が無効に設定される。
【0021】また、前記第2の付加的構成のように転送
部11を設けておけば、記憶装置1からのデータ読出時
に、読み出すデータを格納していたブロックのデータ管
理フラグ8が無効に設定されているとき、読出データの
パリティをエラーにしないで、読出データが無効である
ことを示す信号が読出データと共に読出要求先に転送さ
れる。
部11を設けておけば、記憶装置1からのデータ読出時
に、読み出すデータを格納していたブロックのデータ管
理フラグ8が無効に設定されているとき、読出データの
パリティをエラーにしないで、読出データが無効である
ことを示す信号が読出データと共に読出要求先に転送さ
れる。
【0022】更に、前記第3の付加的構成のように、パ
ターン変更部12を設けておけば、記憶装置1からのデ
ータ読出時に、データ管理フラグ8が無効に設定されて
いるとき、読出データが誤り訂正不可能なパターンに変
更される。
ターン変更部12を設けておけば、記憶装置1からのデ
ータ読出時に、データ管理フラグ8が無効に設定されて
いるとき、読出データが誤り訂正不可能なパターンに変
更される。
【0023】
【実施例】以下、本発明の実施例を図面を参照して説明
する。 (実施例1) 《構成》図3は、実施例1の記憶管理装置の構成図であ
る。同図に示すように、実施例1は、以下の(イ)から
(ト)の要素を備えて構成されている。
する。 (実施例1) 《構成》図3は、実施例1の記憶管理装置の構成図であ
る。同図に示すように、実施例1は、以下の(イ)から
(ト)の要素を備えて構成されている。
【0024】(イ)8バイト単位の書込データ2を8個
格納する容量(計64バイト)を有する4つのブロック
1a・1b・1c・1dからなるRAM1。本実施例で
は、RAM1を4個のブロックから構成したが、任意の
数のブロックから構成してもよい。なお、このRAM1
からは、各ブロック単位のサイズ即ち64バイト単位で
データが読み出される。
格納する容量(計64バイト)を有する4つのブロック
1a・1b・1c・1dからなるRAM1。本実施例で
は、RAM1を4個のブロックから構成したが、任意の
数のブロックから構成してもよい。なお、このRAM1
からは、各ブロック単位のサイズ即ち64バイト単位で
データが読み出される。
【0025】(ロ)図示していないデータ書込・読出要
求元からRAM1に対して出力されたデータ書込要求及
びデータ読出要求を、それぞれ“1”及び“0”の値と
して格納する書込・読出指示フラグ6。この書込・読出
指示フラグ6が格納する値に基づいて、RAM1への書
込または読出が指示される。
求元からRAM1に対して出力されたデータ書込要求及
びデータ読出要求を、それぞれ“1”及び“0”の値と
して格納する書込・読出指示フラグ6。この書込・読出
指示フラグ6が格納する値に基づいて、RAM1への書
込または読出が指示される。
【0026】(ハ)0から4番までの番号が付された2
進5桁のデータ・ビットとパリティを示す2進1桁のパ
リティ・ビットからなるアドレスレジスタ4。このアド
レスレジスタ4は、図4に示すように、0番及び1番の
2桁のデータ・ビットがRAM1の4つのブロックのう
ちの一つを特定するのに使用され、2番、3番及び4番
の3桁のデータ・ビットが、RAM1の各ブロック内に
おける8バイト単位のデータ格納位置(8通りある)を
特定するのに使用される。
進5桁のデータ・ビットとパリティを示す2進1桁のパ
リティ・ビットからなるアドレスレジスタ4。このアド
レスレジスタ4は、図4に示すように、0番及び1番の
2桁のデータ・ビットがRAM1の4つのブロックのう
ちの一つを特定するのに使用され、2番、3番及び4番
の3桁のデータ・ビットが、RAM1の各ブロック内に
おける8バイト単位のデータ格納位置(8通りある)を
特定するのに使用される。
【0027】ここで、アドレスレジスタ4のパリティの
値は、データ・ビットとパリティ・ビット中に1の数が
奇数個となるように設定される。なお、本明細書及び図
面において<a:b>(a,bは数字)と書かれた記号
は、番号aから番号bまでの連続するビットを意味す
る。また、Pと書かれた記号はパリティを意味する。更
に、<a:b,P>と書かれた記号は、番号aから番号
bまでの連続するビットと、パリティを意味する。そし
て、’×××’と書かれた記号は、×××の値そのもの
を意味する。
値は、データ・ビットとパリティ・ビット中に1の数が
奇数個となるように設定される。なお、本明細書及び図
面において<a:b>(a,bは数字)と書かれた記号
は、番号aから番号bまでの連続するビットを意味す
る。また、Pと書かれた記号はパリティを意味する。更
に、<a:b,P>と書かれた記号は、番号aから番号
bまでの連続するビットと、パリティを意味する。そし
て、’×××’と書かれた記号は、×××の値そのもの
を意味する。
【0028】(ニ)アドレスレジスタ4の0番から4番
めまでの5桁のビットからなる値を1ずつ増加させるア
ドレス加算器5。 (ホ)アドレスレジスタ4の0番から4番までの5桁の
ビットとパリティビットとの整合性をチェックするパリ
ティチェック回路7。
めまでの5桁のビットからなる値を1ずつ増加させるア
ドレス加算器5。 (ホ)アドレスレジスタ4の0番から4番までの5桁の
ビットとパリティビットとの整合性をチェックするパリ
ティチェック回路7。
【0029】(ヘ)RAM1の各ブロック1a〜d内に
格納されているデータの書込時におけるアドレスのパリ
ティエラーの有無に基づいて、格納されているデータが
無効か有効かで示すデータ管理フラグ8。データ管理フ
ラグ8は、RAM1の各ブロック1a〜dにそれぞれ対
応する4つのフラグ8a・8b・8c・8dから構成さ
れている。
格納されているデータの書込時におけるアドレスのパリ
ティエラーの有無に基づいて、格納されているデータが
無効か有効かで示すデータ管理フラグ8。データ管理フ
ラグ8は、RAM1の各ブロック1a〜dにそれぞれ対
応する4つのフラグ8a・8b・8c・8dから構成さ
れている。
【0030】このデータ管理フラグ8の詳細回路を図5
を参照して説明する。まず、図5(a)に示すように、
書込要求をセット入力とすると共にアドレスレジスタの
2番目から4番目のビットが全て“1”ならば1でそれ
以外で0となる値、即ち、アドレスレジスタ<2:4>
=’111’ならば1でそれ以外で0となる値をリセッ
ト入力とし、0又は1の値を書込フラグとして出力する
R−Sフリップ8pが設けられている。即ち、書込要求
があった場合に、書込フラグの値は’1’となり、アド
レスレジスタ<2:4>=’111’となった場合に、
書込フラグの値は’0’となる。
を参照して説明する。まず、図5(a)に示すように、
書込要求をセット入力とすると共にアドレスレジスタの
2番目から4番目のビットが全て“1”ならば1でそれ
以外で0となる値、即ち、アドレスレジスタ<2:4>
=’111’ならば1でそれ以外で0となる値をリセッ
ト入力とし、0又は1の値を書込フラグとして出力する
R−Sフリップ8pが設けられている。即ち、書込要求
があった場合に、書込フラグの値は’1’となり、アド
レスレジスタ<2:4>=’111’となった場合に、
書込フラグの値は’0’となる。
【0031】同じく図5(a)に示すように、読出要求
をセット入力とすると共にアドレスレジスタ<2:4>
=’111’ならば1でそれ以外で0となる値をリセッ
ト入力とし、0又は1の値を読出フラグとして出力する
R−Sフリップ8qが設けられている。即ち、読出要求
があった場合に、読出フラグの値は’1’となり、アド
レスレジスタ<2:4>=’111’となった場合に、
読出フラグの値は’0’となる。
をセット入力とすると共にアドレスレジスタ<2:4>
=’111’ならば1でそれ以外で0となる値をリセッ
ト入力とし、0又は1の値を読出フラグとして出力する
R−Sフリップ8qが設けられている。即ち、読出要求
があった場合に、読出フラグの値は’1’となり、アド
レスレジスタ<2:4>=’111’となった場合に、
読出フラグの値は’0’となる。
【0032】さらに、データ管理フラグ8は、図5
(b)に示すように、下記の(1)〜(14)の要素か
ら構成されている。 (1)パリティチェック回路7の出力値と書込フラグの
値とを入力して、それらの値のAND演算値を出力する
AND回路8f。 (2)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’000
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8g。 (3)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’010
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8h。 (4)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’100
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8i。 (5)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’110
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8j。 (6)AND回路8fの出力をセット入力とすると共
に、AND回路8gの出力をリセット入力とするR−S
フリップフロップ8a。このR−Sフリップフロップ8
aが、フラグ8aに相当する。 (7)AND回路8fの出力をセット入力とすると共
に、AND回路8hの出力をリセット入力とするR−S
フリップフロップ8b。このR−Sフリップフロップ8
bが、フラグ8bに相当する。 (8)AND回路8fの出力をセット入力とすると共
に、AND回路8iの出力をリセット入力とするR−S
フリップフロップ8c。このR−Sフリップフロップ8
cが、フラグ8cに相当する。 (9)AND回路8fの出力をセット入力とすると共
に、AND回路8jの出力をリセット入力とするR−S
フリップフロップ8d。このR−Sフリップフロップ8
dが、フラグ8dに相当する。 (10)R−Sフリップフロップ8aの出力値とアドレ
スレジスタ<0:1>=’00’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8k。 (11)R−Sフリップフロップ8bの出力値とアドレ
スレジスタ<0:1>=’01’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8l。 (12)R−Sフリップフロップ8cの出力値とアドレ
スレジスタ<0:1>=’10’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8m。 (13)R−Sフリップフロップ8dの出力値とアドレ
スレジスタ<0:1>=’11’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8n。 (14)AND回路8k・8l・8m・8nの出力値を
入力して、それらの値のOR演算値を出力するOR回路
8s。このOR回路8sの出力値は、0のときに読出デ
ータを無効化するための信号となる。
(b)に示すように、下記の(1)〜(14)の要素か
ら構成されている。 (1)パリティチェック回路7の出力値と書込フラグの
値とを入力して、それらの値のAND演算値を出力する
AND回路8f。 (2)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’000
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8g。 (3)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’010
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8h。 (4)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’100
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8i。 (5)パリティチェック回路7の出力の反転値と、書込
フラグの値と、アドレスレジスタ<0:4>=’110
00’ならば1でそれ以外で0となる値とを入力して、
それらの値のAND演算値を出力するAND回路8j。 (6)AND回路8fの出力をセット入力とすると共
に、AND回路8gの出力をリセット入力とするR−S
フリップフロップ8a。このR−Sフリップフロップ8
aが、フラグ8aに相当する。 (7)AND回路8fの出力をセット入力とすると共
に、AND回路8hの出力をリセット入力とするR−S
フリップフロップ8b。このR−Sフリップフロップ8
bが、フラグ8bに相当する。 (8)AND回路8fの出力をセット入力とすると共
に、AND回路8iの出力をリセット入力とするR−S
フリップフロップ8c。このR−Sフリップフロップ8
cが、フラグ8cに相当する。 (9)AND回路8fの出力をセット入力とすると共
に、AND回路8jの出力をリセット入力とするR−S
フリップフロップ8d。このR−Sフリップフロップ8
dが、フラグ8dに相当する。 (10)R−Sフリップフロップ8aの出力値とアドレ
スレジスタ<0:1>=’00’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8k。 (11)R−Sフリップフロップ8bの出力値とアドレ
スレジスタ<0:1>=’01’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8l。 (12)R−Sフリップフロップ8cの出力値とアドレ
スレジスタ<0:1>=’10’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8m。 (13)R−Sフリップフロップ8dの出力値とアドレ
スレジスタ<0:1>=’11’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8n。 (14)AND回路8k・8l・8m・8nの出力値を
入力して、それらの値のOR演算値を出力するOR回路
8s。このOR回路8sの出力値は、0のときに読出デ
ータを無効化するための信号となる。
【0033】(ト)RAM1に格納されたデータとこの
データが格納されていたブロックに対応するデータ管理
フラグ8の値を入力し、読出データ3を出力するデータ
無効化回路9。
データが格納されていたブロックに対応するデータ管理
フラグ8の値を入力し、読出データ3を出力するデータ
無効化回路9。
【0034】このデータ無効化回路9は、図6に示すよ
うに、RAM1に格納されたデータとデータ管理フラグ
8のOR回路8sの出力値とを入力して、それらの値の
AND演算値を読出データ3として出力する。ここで、
OR回路8sの出力値が0であれば、データを無効化す
る信号であるから読出データ3は必ず0となる。即ち、
読出データ3の全てのビットの値が0となる。一方、O
R回路8sの出力値が1であれば、RAM1に格納され
たデータがそのまま読出データ3として出力される。
うに、RAM1に格納されたデータとデータ管理フラグ
8のOR回路8sの出力値とを入力して、それらの値の
AND演算値を読出データ3として出力する。ここで、
OR回路8sの出力値が0であれば、データを無効化す
る信号であるから読出データ3は必ず0となる。即ち、
読出データ3の全てのビットの値が0となる。一方、O
R回路8sの出力値が1であれば、RAM1に格納され
たデータがそのまま読出データ3として出力される。
【0035】《動作》次に、本実施例の動作を説明す
る。 (データ書込時に、アドレスにパリティエラーが生じな
い場合の動作)図7は、データ書込時に、アドレスにパ
リティエラーが生じない場合のタイムチャートを示して
いる。タイムチャートを示すこの図7及び他の図面にお
いて、図の左側から右側に処理が進行するものとする。
また、図の左端に書かれた項目がON状態になっている
所を太い横線で示し、OFF状態になっている所を細い
横線で示す。そして、横線をまたぐ縦線で動作(サイク
ル)の区切り示す。
る。 (データ書込時に、アドレスにパリティエラーが生じな
い場合の動作)図7は、データ書込時に、アドレスにパ
リティエラーが生じない場合のタイムチャートを示して
いる。タイムチャートを示すこの図7及び他の図面にお
いて、図の左側から右側に処理が進行するものとする。
また、図の左端に書かれた項目がON状態になっている
所を太い横線で示し、OFF状態になっている所を細い
横線で示す。そして、横線をまたぐ縦線で動作(サイク
ル)の区切り示す。
【0036】まず最初に、図示していないデータ書込・
読出要求元から、書込要求及び書込アドレスが発行され
たものとする。この書込要求により、書込・読出指示フ
ラグ6が書込有効に設定され、入力されたアドレスがア
ドレスレジスタ4のビット0:1に設定されると共に、
アドレスレジスタ4のビット2:4に’000’が設定
される。
読出要求元から、書込要求及び書込アドレスが発行され
たものとする。この書込要求により、書込・読出指示フ
ラグ6が書込有効に設定され、入力されたアドレスがア
ドレスレジスタ4のビット0:1に設定されると共に、
アドレスレジスタ4のビット2:4に’000’が設定
される。
【0037】書込・読出指示フラグ6は、書込要求があ
った次のサイクルから8番目のサイクルまでの間書込有
効となるが、この期間中、書込データ2が有効となり、
RAM1にデータが書き込まれる。より詳しくは、この
期間中、アドレスレジスタ4の2番目から4番目までの
下位3ビットがアドレス加算器5により+1されてRA
M1に供給されると共に、供給されたアドレスに、8バ
イト単位ずつ8回、計64バイトのデータがRAM1に
書き込まれる。
った次のサイクルから8番目のサイクルまでの間書込有
効となるが、この期間中、書込データ2が有効となり、
RAM1にデータが書き込まれる。より詳しくは、この
期間中、アドレスレジスタ4の2番目から4番目までの
下位3ビットがアドレス加算器5により+1されてRA
M1に供給されると共に、供給されたアドレスに、8バ
イト単位ずつ8回、計64バイトのデータがRAM1に
書き込まれる。
【0038】書込・読出指示フラグ6は、アドレスレジ
スタ4のビット2:4が’111’になった状態でリセ
ットされる。この段階で、RAM1への書込処理が終了
する。
スタ4のビット2:4が’111’になった状態でリセ
ットされる。この段階で、RAM1への書込処理が終了
する。
【0039】(データ書込時に、アドレスにパリティエ
ラーが生じた場合の動作)図8は、データ書込時に、ア
ドレスにパリティエラーが生じた場合のタイムチャート
を示している。ここでは、アドレスレジスタ4のビット
2:4が’010’となったときに、メモリアドレスに
パリティエラーが生じたものとして説明する。
ラーが生じた場合の動作)図8は、データ書込時に、ア
ドレスにパリティエラーが生じた場合のタイムチャート
を示している。ここでは、アドレスレジスタ4のビット
2:4が’010’となったときに、メモリアドレスに
パリティエラーが生じたものとして説明する。
【0040】まず、図7と比較すれば明らかなように、
アドレスにパリティエラーが生じた場合でも、書込動作
そのものは、エラーが生じない場合と同様に行われる。
すなわち、書込・読出指示フラグ6が有効となっている
期間中、書込データ2が有効となり、RAM1にデータ
が書き込まれる。
アドレスにパリティエラーが生じた場合でも、書込動作
そのものは、エラーが生じない場合と同様に行われる。
すなわち、書込・読出指示フラグ6が有効となっている
期間中、書込データ2が有効となり、RAM1にデータ
が書き込まれる。
【0041】そして、アドレスレジスタ4のビット2:
4が’010’となったときに、パリティチェック回路
7でパリティエラーが検出されると、エラーが検出され
た次のサイクルから、全てのデータ管理フラグ8a・8
b・8c・8dが無効に設定される。
4が’010’となったときに、パリティチェック回路
7でパリティエラーが検出されると、エラーが検出され
た次のサイクルから、全てのデータ管理フラグ8a・8
b・8c・8dが無効に設定される。
【0042】(データ管理フラグがリセットされる場合
のタイムチャート)図9は、データ管理フラグがリセッ
トされる場合のタイムチャートを示している。ここで
は、メモリアドレスパリティエラーが以前に生じていた
ため、全てのデータ管理フラグ8a・8b・8c・8d
が無効に設定されていたものとする。
のタイムチャート)図9は、データ管理フラグがリセッ
トされる場合のタイムチャートを示している。ここで
は、メモリアドレスパリティエラーが以前に生じていた
ため、全てのデータ管理フラグ8a・8b・8c・8d
が無効に設定されていたものとする。
【0043】まず、最初のサイクルで、図示していない
データ書込・読出要求元から、RAM1のブロック1a
に対する書込要求が発行されたものとする。すると、デ
ータ書込時に、アドレスにパリティエラーが生じない場
合の動作のところで説明したデータ書込動作が行われ
る。そして、パリティチェック回路7でエラーが無いこ
とを示す0が出力されると共に、書込フラグが立ってお
り、更に、アドレスレジスタ4の0:4ビットが’00
000’となった状態で、データ管理フラグ8のAND
回路8gから出力された値により、RAM1のブロック
1aに対応するデータ管理フラグ8aがリセットされ
る。即ち、有効であるとされる。
データ書込・読出要求元から、RAM1のブロック1a
に対する書込要求が発行されたものとする。すると、デ
ータ書込時に、アドレスにパリティエラーが生じない場
合の動作のところで説明したデータ書込動作が行われ
る。そして、パリティチェック回路7でエラーが無いこ
とを示す0が出力されると共に、書込フラグが立ってお
り、更に、アドレスレジスタ4の0:4ビットが’00
000’となった状態で、データ管理フラグ8のAND
回路8gから出力された値により、RAM1のブロック
1aに対応するデータ管理フラグ8aがリセットされ
る。即ち、有効であるとされる。
【0044】また、図示していないデータ書込・読出要
求元から、RAM1のブロック1bに対する書込要求が
発行された場合には、アドレスにパリティエラーが生じ
ない場合の動作のところで説明したデータ書込動作が行
われる。そして、パリティチェック回路7でエラーが無
いことを示す0が出力されると共に、書込フラグが立っ
ており、更に、アドレスレジスタ4の0:4ビットが’
01000’となった状態で、データ管理フラグ8のA
ND回路8hから出力された値により、RAM1のブロ
ック1bに対応するデータ管理フラグ8bがリセットさ
れる。すなわち、格納されているデータは有効であると
される。
求元から、RAM1のブロック1bに対する書込要求が
発行された場合には、アドレスにパリティエラーが生じ
ない場合の動作のところで説明したデータ書込動作が行
われる。そして、パリティチェック回路7でエラーが無
いことを示す0が出力されると共に、書込フラグが立っ
ており、更に、アドレスレジスタ4の0:4ビットが’
01000’となった状態で、データ管理フラグ8のA
ND回路8hから出力された値により、RAM1のブロ
ック1bに対応するデータ管理フラグ8bがリセットさ
れる。すなわち、格納されているデータは有効であると
される。
【0045】(エラーが生じていないデータを読み出す
場合の動作)図10は、エラーが生じていないデータを
読み出す場合のタイムチャートを示している。
場合の動作)図10は、エラーが生じていないデータを
読み出す場合のタイムチャートを示している。
【0046】まず最初に、図示していないデータ書込・
読出要求元から、読出要求及び読出アドレスが発行され
たものとする。この読出要求により、書込・読出指示フ
ラグ6が読出有効に設定され、入力されたアドレスがア
ドレスレジスタ4のビット0:1に設定されると共に、
アドレスレジスタ4のビット2:4に’000’が設定
される。
読出要求元から、読出要求及び読出アドレスが発行され
たものとする。この読出要求により、書込・読出指示フ
ラグ6が読出有効に設定され、入力されたアドレスがア
ドレスレジスタ4のビット0:1に設定されると共に、
アドレスレジスタ4のビット2:4に’000’が設定
される。
【0047】書込・読出指示フラグ6は、読出要求があ
った次のサイクルから8番目のサイクルまでの間読出有
効となるが、この期間中にRAM1から読み出されたデ
ータが有効となる。より詳しくは、この期間中、アドレ
スレジスタ4の2番目から4番目までの下位3ビットが
アドレス加算器5により+1されてRAM1に供給され
ると共に、供給されたアドレスから、8バイト単位ずつ
8回、計64バイトのデータがRAM1から読み込まれ
る。
った次のサイクルから8番目のサイクルまでの間読出有
効となるが、この期間中にRAM1から読み出されたデ
ータが有効となる。より詳しくは、この期間中、アドレ
スレジスタ4の2番目から4番目までの下位3ビットが
アドレス加算器5により+1されてRAM1に供給され
ると共に、供給されたアドレスから、8バイト単位ずつ
8回、計64バイトのデータがRAM1から読み込まれ
る。
【0048】書込・読出指示フラグ6は、アドレスレジ
スタ4のビット2:4が’111’になった状態でリセ
ットされる。この段階で、RAM1からの読込処理が終
了する。
スタ4のビット2:4が’111’になった状態でリセ
ットされる。この段階で、RAM1からの読込処理が終
了する。
【0049】(エラーが生じているデータを読み出す場
合の動作)図11は、エラーが生じているデータを読み
出す場合のタイムチャートを示している。ここでは、デ
ータ管理フラグ8a・8b・8c・8dが全て無効に設
定されたいたものとする。
合の動作)図11は、エラーが生じているデータを読み
出す場合のタイムチャートを示している。ここでは、デ
ータ管理フラグ8a・8b・8c・8dが全て無効に設
定されたいたものとする。
【0050】まず、図10と比較すれば明らかなよう
に、読み出すデータにエラーが生じている場合でも、読
出動作そのものは、エラーが生じていない場合と同様に
行われる。即ち、書込・読出指示フラグ6が有効となっ
ている期間中、RAM1からデータが読み出されるが、
読み出したデータをデータ無効化回路9によって、デー
タ及びパリティの全ビットに0が設定される。
に、読み出すデータにエラーが生じている場合でも、読
出動作そのものは、エラーが生じていない場合と同様に
行われる。即ち、書込・読出指示フラグ6が有効となっ
ている期間中、RAM1からデータが読み出されるが、
読み出したデータをデータ無効化回路9によって、デー
タ及びパリティの全ビットに0が設定される。
【0051】(実施例2)実施例2は、図12に示すよ
うに、実施例1のアドレスレジスタ4のビット0:1と
ビット2:4に別々のパリティ(それぞれP0、P1とす
る)を設けた例である。このアドレスレジスタ4に対応
して、パリティチェック回路7は、P0 とP1 の両方を
チェックする。そして、データ無効化フラグ8が図13
に示すように構成される他は、実施例1と同様に構成さ
れている。
うに、実施例1のアドレスレジスタ4のビット0:1と
ビット2:4に別々のパリティ(それぞれP0、P1とす
る)を設けた例である。このアドレスレジスタ4に対応
して、パリティチェック回路7は、P0 とP1 の両方を
チェックする。そして、データ無効化フラグ8が図13
に示すように構成される他は、実施例1と同様に構成さ
れている。
【0052】ここで、実施例2のデータ無効化フラグ8
は、下記の(1)〜(22)の要素から構成されてい
る。 (1)P0 をチェックするパリティチェック回路7の出
力値と書込フラグの値とを入力して、それらの値のAN
D演算値を出力するAND回路8f。 (2)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力値と、書込フラグの値と、アドレスレジスタ
<0:1>=’00’ならば1でそれ以外で0となる値
とを入力して、それらの値のAND演算値を出力するA
ND回路8ga。 (3)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力の反転値と、書込フラグの値と、アドレスレ
ジスタ<0:4>=’00000’ならば1でそれ以外
で0となる値とを入力して、それらの値のAND演算値
を出力するAND回路8gb。 (4)AND回路8fの出力値とAND回路8gaの出
力値とを入力して、それらのOR演算値を出力する8g
c。 (5)OR回路8gcの出力をセット入力とすると共
に、AND回路8gbの出力をリセット入力とするR−
Sフリップフロップ8a。このR−Sフリップフロップ
8aが、フラグ8aに相当する。 (6)R−Sフリップフロップ8aの出力値とアドレス
レジスタ<0:1>=’00’ならば1でそれ以外で0
となる値とを入力して、それらの値のAND演算値を出
力するAND回路8k。 (7)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力値と、書込フラグの値と、アドレスレジスタ
<0:1>=’01’ならば1でそれ以外で0となる値
とを入力して、それらの値のAND演算値を出力するA
ND回路8ha。 (8)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力の反転値と、書込フラグの値と、アドレスレ
ジスタ<0:4>=’01000’ならば1でそれ以外
で0となる値とを入力して、それらの値のAND演算値
を出力するAND回路8hb。 (9)AND回路fの出力値とAND回路8haの出力
値とを入力して、それらのOR演算値を出力する8h
c。 (10)OR回路8hcの出力をセット入力とすると共
に、AND回路8hbの出力をリセット入力とするR−
Sフリップフロップ8b。このR−Sフリップフロップ
8bが、フラグ8bに相当する。 (11)R−Sフリップフロップ8bの出力値とアドレ
スレジスタ<0:1>=’01’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8l。 (12)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力値と、書込フラグの値と、アドレスレジス
タ<0:1>=’10’ならば1でそれ以外で0となる
値とを入力して、それらの値のAND演算値を出力する
AND回路8ia。 (13)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力の反転値と、書込フラグの値と、アドレス
レジスタ<0:4>=’10000’ならば1でそれ以
外で0となる値とを入力して、それらの値のAND演算
値を出力するAND回路8ib。 (14)AND回路fの出力値とAND回路8iaの出
力値とを入力して、それらのOR演算値を出力する8i
c。 (15)OR回路8icの出力をセット入力とすると共
に、AND回路8ibの出力をリセット入力とするR−
Sフリップフロップ8c。このR−Sフリップフロップ
8cが、フラグ8cに相当する。 (16)R−Sフリップフロップ8cの出力値とアドレ
スレジスタ<0:1>=’10’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8m。 (17)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力値と、書込フラグの値と、アドレスレジス
タ<0:1>=’11’ならば1でそれ以外で0となる
値とを入力して、それらの値のAND演算値を出力する
AND回路8ja。 (18)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力の反転値と、書込フラグの値と、アドレス
レジスタ<0:4>=’11000’ならば1でそれ以
外で0となる値とを入力して、それらの値のAND演算
値を出力するAND回路8jb。 (19)AND回路fの出力値とAND回路8jaの出
力値とを入力して、それらのOR演算値を出力する8j
c。 (20)OR回路8jcの出力をセット入力とすると共
に、AND回路8jbの出力をリセット入力とするR−
Sフリップフロップ8d。このR−Sフリップフロップ
8dが、フラグ8dに相当する。 (21)R−Sフリップフロップ8dの出力値とアドレ
スレジスタ<0:1>=’11’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8n。 (22)AND回路8k・8l・8m・8nの出力値を
入力して、それらの値のOR演算値を出力するOR回路
8s。このOR回路8sの出力値は、0のときに読出デ
ータを無効化するための信号となる。
は、下記の(1)〜(22)の要素から構成されてい
る。 (1)P0 をチェックするパリティチェック回路7の出
力値と書込フラグの値とを入力して、それらの値のAN
D演算値を出力するAND回路8f。 (2)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力値と、書込フラグの値と、アドレスレジスタ
<0:1>=’00’ならば1でそれ以外で0となる値
とを入力して、それらの値のAND演算値を出力するA
ND回路8ga。 (3)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力の反転値と、書込フラグの値と、アドレスレ
ジスタ<0:4>=’00000’ならば1でそれ以外
で0となる値とを入力して、それらの値のAND演算値
を出力するAND回路8gb。 (4)AND回路8fの出力値とAND回路8gaの出
力値とを入力して、それらのOR演算値を出力する8g
c。 (5)OR回路8gcの出力をセット入力とすると共
に、AND回路8gbの出力をリセット入力とするR−
Sフリップフロップ8a。このR−Sフリップフロップ
8aが、フラグ8aに相当する。 (6)R−Sフリップフロップ8aの出力値とアドレス
レジスタ<0:1>=’00’ならば1でそれ以外で0
となる値とを入力して、それらの値のAND演算値を出
力するAND回路8k。 (7)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力値と、書込フラグの値と、アドレスレジスタ
<0:1>=’01’ならば1でそれ以外で0となる値
とを入力して、それらの値のAND演算値を出力するA
ND回路8ha。 (8)P0 をチェックするパリティチェック回路7の出
力の反転値と、P1 をチェックするパリティチェック回
路7の出力の反転値と、書込フラグの値と、アドレスレ
ジスタ<0:4>=’01000’ならば1でそれ以外
で0となる値とを入力して、それらの値のAND演算値
を出力するAND回路8hb。 (9)AND回路fの出力値とAND回路8haの出力
値とを入力して、それらのOR演算値を出力する8h
c。 (10)OR回路8hcの出力をセット入力とすると共
に、AND回路8hbの出力をリセット入力とするR−
Sフリップフロップ8b。このR−Sフリップフロップ
8bが、フラグ8bに相当する。 (11)R−Sフリップフロップ8bの出力値とアドレ
スレジスタ<0:1>=’01’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8l。 (12)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力値と、書込フラグの値と、アドレスレジス
タ<0:1>=’10’ならば1でそれ以外で0となる
値とを入力して、それらの値のAND演算値を出力する
AND回路8ia。 (13)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力の反転値と、書込フラグの値と、アドレス
レジスタ<0:4>=’10000’ならば1でそれ以
外で0となる値とを入力して、それらの値のAND演算
値を出力するAND回路8ib。 (14)AND回路fの出力値とAND回路8iaの出
力値とを入力して、それらのOR演算値を出力する8i
c。 (15)OR回路8icの出力をセット入力とすると共
に、AND回路8ibの出力をリセット入力とするR−
Sフリップフロップ8c。このR−Sフリップフロップ
8cが、フラグ8cに相当する。 (16)R−Sフリップフロップ8cの出力値とアドレ
スレジスタ<0:1>=’10’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8m。 (17)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力値と、書込フラグの値と、アドレスレジス
タ<0:1>=’11’ならば1でそれ以外で0となる
値とを入力して、それらの値のAND演算値を出力する
AND回路8ja。 (18)P0 をチェックするパリティチェック回路7の
出力の反転値と、P1 をチェックするパリティチェック
回路7の出力の反転値と、書込フラグの値と、アドレス
レジスタ<0:4>=’11000’ならば1でそれ以
外で0となる値とを入力して、それらの値のAND演算
値を出力するAND回路8jb。 (19)AND回路fの出力値とAND回路8jaの出
力値とを入力して、それらのOR演算値を出力する8j
c。 (20)OR回路8jcの出力をセット入力とすると共
に、AND回路8jbの出力をリセット入力とするR−
Sフリップフロップ8d。このR−Sフリップフロップ
8dが、フラグ8dに相当する。 (21)R−Sフリップフロップ8dの出力値とアドレ
スレジスタ<0:1>=’11’ならば1でそれ以外で
0となる値とを入力して、それらの値のAND演算値を
出力するAND回路8n。 (22)AND回路8k・8l・8m・8nの出力値を
入力して、それらの値のOR演算値を出力するOR回路
8s。このOR回路8sの出力値は、0のときに読出デ
ータを無効化するための信号となる。
【0053】この実施例2の場合、アドレスレジスタ4
のビット2:4にパリティエラーが生じた場合には、対
応するデータ管理フラグ8の何れか一つに、格納されて
いるデータが無効であることを示す値を設定すればよ
く、実施例1に比べて、パリティエラーにより影響を受
ける範囲を少なくすることができる。ただし、アドレス
レジスタ4のビット0:1にパリティエラーが生じた場
合には、全てのデータ管理フラグ8に、格納されている
データが無効であることを示す値が設定される。
のビット2:4にパリティエラーが生じた場合には、対
応するデータ管理フラグ8の何れか一つに、格納されて
いるデータが無効であることを示す値を設定すればよ
く、実施例1に比べて、パリティエラーにより影響を受
ける範囲を少なくすることができる。ただし、アドレス
レジスタ4のビット0:1にパリティエラーが生じた場
合には、全てのデータ管理フラグ8に、格納されている
データが無効であることを示す値が設定される。
【0054】(実施例3)実施例3は、実施例1におい
てデータ無効化回路9を削除し、代わりにRAM1から
のデータ読出時に、読み出すデータを格納していたブロ
ックのデータ管理フラグが無効に設定されていた場合で
も、RAM1から読み出したデータをそのまま出力して
構成される。このとき、読出データが無効であることを
示す信号を読出要求先に伝える。読出データが無効であ
ることを示す信号は、データ管理フラグを利用して作ら
れる。
てデータ無効化回路9を削除し、代わりにRAM1から
のデータ読出時に、読み出すデータを格納していたブロ
ックのデータ管理フラグが無効に設定されていた場合で
も、RAM1から読み出したデータをそのまま出力して
構成される。このとき、読出データが無効であることを
示す信号を読出要求先に伝える。読出データが無効であ
ることを示す信号は、データ管理フラグを利用して作ら
れる。
【0055】(実施例の変形)前記実施例1〜3におい
て、RAM1に格納される64ビットのデータに16ビ
ットの誤り検出用チェックビットを付加してもよい。即
ち、4ビット単位のデータ毎に、1ビットの検出用チェ
ックビットを付加する。このような誤り検出訂正は、S
4EC−D4ED(Single 4bit block Error Correctio
n-Double 4bitblock Error Detection)と呼ばれ、1個
のRAM故障によって発生する1〜4ビット誤りの完全
訂正と、任意の2個のRAM間にまたがる故障によって
発生する2〜8ビット誤りの完全検出が可能となってい
る。
て、RAM1に格納される64ビットのデータに16ビ
ットの誤り検出用チェックビットを付加してもよい。即
ち、4ビット単位のデータ毎に、1ビットの検出用チェ
ックビットを付加する。このような誤り検出訂正は、S
4EC−D4ED(Single 4bit block Error Correctio
n-Double 4bitblock Error Detection)と呼ばれ、1個
のRAM故障によって発生する1〜4ビット誤りの完全
訂正と、任意の2個のRAM間にまたがる故障によって
発生する2〜8ビット誤りの完全検出が可能となってい
る。
【0056】今、RAM1内のデータに誤り検出用チェ
ックビットを付加して構成される80ビットの符号語を
xとし、下記の式(1)で表されるパリティ検査行列
(あるいはECC検査行列)をHとする。
ックビットを付加して構成される80ビットの符号語を
xとし、下記の式(1)で表されるパリティ検査行列
(あるいはECC検査行列)をHとする。
【0057】
【数1】
【0058】 xHT(ただし、HTはHの転置行列)を計算し、その結
果をSとする。Sは、シンドロームと呼ばれる。シンド
ローム中の“1”の数を数えて、すべて偶数個(オール
“0”)になっていれば、エラーが無いことを示してい
る。
果をSとする。Sは、シンドロームと呼ばれる。シンド
ローム中の“1”の数を数えて、すべて偶数個(オール
“0”)になっていれば、エラーが無いことを示してい
る。
【0059】また、式(1)で、データがオール“0”
の場合には、誤り検出用チェックビットもオール“0”
になり、エラー無しの場合には、シンドロームがオール
“0”になる。逆に誤りがあった場合には、シンドロー
ムが“0”以外となる。
の場合には、誤り検出用チェックビットもオール“0”
になり、エラー無しの場合には、シンドロームがオール
“0”になる。逆に誤りがあった場合には、シンドロー
ムが“0”以外となる。
【0060】そして、1ブロック(=4ビット)誤りを
訂正するために、シンドロームは、1ブロック誤り時に
他の1ブロック誤りとは異なるコードになるため、訂正
が可能となる。
訂正するために、シンドロームは、1ブロック誤り時に
他の1ブロック誤りとは異なるコードになるため、訂正
が可能となる。
【0061】さらに、2ブロックの誤り検出は、シンド
ロームがオール“0”でなく、1ブロック誤りのシンド
ロームでも無いことにより検出される。エラーデータが
生じた時に、読出データに対して、そのパリティをエラ
ーにしないで、図14のような誤り訂正不可能なパター
ンに変更して伝播すれば、データ受け取り側でデータ中
に誤りがあることが検出されるようになる。
ロームがオール“0”でなく、1ブロック誤りのシンド
ロームでも無いことにより検出される。エラーデータが
生じた時に、読出データに対して、そのパリティをエラ
ーにしないで、図14のような誤り訂正不可能なパター
ンに変更して伝播すれば、データ受け取り側でデータ中
に誤りがあることが検出されるようになる。
【0062】
【発明の効果】必須構成要素により構成した本発明の記
憶管理装置によれば、データ書込時に、アドレスにパリ
ティエラーを検出したとき、全てのデータ管理フラグを
無効に設定し、記憶装置からのデータ読出時に、データ
が格納されているブロックのデータ管理フラグが無効に
設定されているとき、読出データのパリティをエラーと
なるようにすることで、読み出すデータが、誤ったアド
レスに書き込まれていた可能性があるか否かを検出する
ことが可能にある。
憶管理装置によれば、データ書込時に、アドレスにパリ
ティエラーを検出したとき、全てのデータ管理フラグを
無効に設定し、記憶装置からのデータ読出時に、データ
が格納されているブロックのデータ管理フラグが無効に
設定されているとき、読出データのパリティをエラーと
なるようにすることで、読み出すデータが、誤ったアド
レスに書き込まれていた可能性があるか否かを検出する
ことが可能にある。
【0063】そして、本発明の記憶管理装置に、第1の
付加的構成要素として、書込アドレスを、ブロック内ア
ドレスとブロックアドレスに分別しておけば、ブロック
内アドレスとブロックアドレスの両方にパリティを設け
たことにより、より小さな領域を単位として、読み出す
データが、誤ったアドレスに書き込まれていた可能性が
あるか否かを検出することが可能にある。
付加的構成要素として、書込アドレスを、ブロック内ア
ドレスとブロックアドレスに分別しておけば、ブロック
内アドレスとブロックアドレスの両方にパリティを設け
たことにより、より小さな領域を単位として、読み出す
データが、誤ったアドレスに書き込まれていた可能性が
あるか否かを検出することが可能にある。
【0064】さらに、本発明の記憶管理装置に、第2の
付加的構成要素である転送部を設ければ、記憶装置から
のデータ読出時に、データ管理フラグが無効に設定され
ているとき、読出データのパリティをエラーにしない
で、読出データが無効であることを示す信号を読出デー
タと共に読出要求先に転送することで、読出要求先は、
読出データが無効であることを知ることが可能になる。
付加的構成要素である転送部を設ければ、記憶装置から
のデータ読出時に、データ管理フラグが無効に設定され
ているとき、読出データのパリティをエラーにしない
で、読出データが無効であることを示す信号を読出デー
タと共に読出要求先に転送することで、読出要求先は、
読出データが無効であることを知ることが可能になる。
【0065】また、本発明の記憶管理装置に、第3の付
加的構成要素であるパターン変更部を設けておけば、前
記記憶装置からのデータ読出時に、データが格納されて
いるブロックのデータ管理フラグが無効に設定されてい
る場合、読出データのパリティをエラーにしないで、読
出データをエラー訂正不可能なパターンに変更するこ
と、誤った読出データを使用する恐れがなくなる。
加的構成要素であるパターン変更部を設けておけば、前
記記憶装置からのデータ読出時に、データが格納されて
いるブロックのデータ管理フラグが無効に設定されてい
る場合、読出データのパリティをエラーにしないで、読
出データをエラー訂正不可能なパターンに変更するこ
と、誤った読出データを使用する恐れがなくなる。
【図1】本発明の原理図である。
【図2】図1に基づくフローチャートである。
【図3】実施例1の構成図である。
【図4】実施例1のアドレスレジスタの詳細図である。
【図5】実施例1のデータ無効フラグの詳細図である。
【図6】実施例1のデータ無効化回路の詳細図である。
【図7】実施例1において、データ書込時に、アドレス
にパリティエラーが生じない場合のタイムチャートであ
る。
にパリティエラーが生じない場合のタイムチャートであ
る。
【図8】実施例1において、データ書込時に、アドレス
にパリティエラーが生じた場合のタイムチャートであ
る。
にパリティエラーが生じた場合のタイムチャートであ
る。
【図9】実施例1において、データ管理フラグがリセッ
トされる場合のタイムチャートである。
トされる場合のタイムチャートである。
【図10】実施例1において、エラーが生じていないデ
ータを読み出す場合のタイムチャートである。
ータを読み出す場合のタイムチャートである。
【図11】実施例1において、エラーが生じているデー
タを読み出す場合のタイムチャートである。
タを読み出す場合のタイムチャートである。
【図12】実施例2のアドレスレジスタの詳細図であ
る。
る。
【図13】実施例2のデータ無効化回路の詳細図であ
る。
る。
【図14】エラーデータの例である。
【図15】従来の記憶管理装置の構成図である。
1 記憶装置(RAM) 2 8バイトの書込データ 3 8バイトの読出データ 4 ブロック管理部(RAMのアドレスレジスタ) 5 アドレス加算器 6 書込・読出指示フラグ 7 パリティチェック回路 8 データ管理フラグ 9 パリティエラー設定部(データ無効化回路) 10 無効設定部 11 転送部 12 パターン変更部
Claims (4)
- 【請求項1】パリティ付きのアドレスが指定されてデー
タを書き込む記憶装置を管理する記憶管理装置におい
て、 前記記憶装置内のデータを、所定データ長を有するブロ
ック毎に管理するブロック管理部と、 前記ブロック内に格納されているデータの書込時におけ
る前記アドレスのパリティエラーの有無に基づいて、格
納されているデータが無効か有効かを保持するデータ管
理フラグと、 データ書込時に、前記アドレスにパリティエラーを検出
したとき、全ての前記データ管理フラグを無効に設定す
る無効設定部と、 前記記憶装置からのデータ読出時に、読み出すデータを
格納していたブロックのデータ管理フラグが無効に設定
されているとき、読出データのパリティがエラーとなる
ように設定するパリティエラー設定部とを備えたことを
特徴とする記憶管理装置。 - 【請求項2】前記書込アドレスを、前記ブロック内のア
ドレスを指定するブロック内アドレスとブロック内アド
レス以外の部分であるブロックアドレスとに分別して、
ブロック内アドレスとブロックアドレスの両方に前記パ
リティを設け、 前記無効設定部は、前記ブロック内アドレスにパリティ
エラーを検出した場合に、対応するブロックの前記デー
タ管理フラグを無効に設定する一方、前記ブロックアド
レスにパリティエラーを検出した場合に、全ての前記デ
ータ管理フラグを無効に設定することを特徴とする請求
項1に記載の記憶管理装置。 - 【請求項3】前記記憶装置からのデータ読出時に、読み
出すデータを格納していたブロックの前記データ管理フ
ラグが無効に設定されているとき、読出データのパリテ
ィをエラーにしないで、読出データが無効であることを
示す信号を読出データと共に読出要求先に転送する転送
部を設けたことを特徴とする請求項1に記載の記憶管理
装置。 - 【請求項4】前記記憶装置が格納するデータに誤り検出
用のチェックビットを設け、 前記記憶装置からのデータ読出時に、データが格納され
ているブロックのデータ管理フラグが無効に設定されて
いるとき、読出データに対して、そのパリティをエラー
にしないで、誤り訂正不可能なパターンに変更するパタ
ーン変更部を設けたことを特徴とする請求項1に記載の
記憶管理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7009449A JPH08202628A (ja) | 1995-01-25 | 1995-01-25 | 記憶管理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7009449A JPH08202628A (ja) | 1995-01-25 | 1995-01-25 | 記憶管理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08202628A true JPH08202628A (ja) | 1996-08-09 |
Family
ID=11720607
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7009449A Withdrawn JPH08202628A (ja) | 1995-01-25 | 1995-01-25 | 記憶管理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08202628A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023197935A1 (zh) * | 2022-04-12 | 2023-10-19 | 华为技术有限公司 | 存储数据的方法、读取数据的方法和相关设备 |
-
1995
- 1995-01-25 JP JP7009449A patent/JPH08202628A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023197935A1 (zh) * | 2022-04-12 | 2023-10-19 | 华为技术有限公司 | 存储数据的方法、读取数据的方法和相关设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7069494B2 (en) | Application of special ECC matrix for solving stuck bit faults in an ECC protected mechanism | |
| JP2512666B2 (ja) | 誤り検査/訂正機能を有するコンピュ―タ・システム | |
| US7272773B2 (en) | Cache directory array recovery mechanism to support special ECC stuck bit matrix | |
| EP0535086B1 (en) | Multiple error correction in a computer memory | |
| US4852100A (en) | Error detection and correction scheme for main storage unit | |
| IE71652B1 (en) | Byte write error method and apparatus | |
| JPS6061837A (ja) | エラ−訂正装置 | |
| JP2681398B2 (ja) | 記憶装置 | |
| US5335234A (en) | Error correction code pipeline for interleaved memory system | |
| US6631489B2 (en) | Cache memory and system with partial error detection and correction of MESI protocol | |
| JPS6391764A (ja) | パリティ・チェック機能を有するメモリ・システム | |
| JPH08202628A (ja) | 記憶管理装置 | |
| JP2908272B2 (ja) | 情報処理装置 | |
| CN100394390C (zh) | 差错检测和校正装置及其控制方法 | |
| JPH1166762A (ja) | フロッピディスクシステム | |
| US7523342B1 (en) | Data and control integrity for transactions in a computer system | |
| JPS6129024B2 (ja) | ||
| JPH11259238A (ja) | 信号処理装置 | |
| JPS59229799A (ja) | 記憶装置 | |
| JPH0746323B2 (ja) | 部分書込みアクセスを圧縮する主記憶装置 | |
| JPH07129466A (ja) | 階層記憶装置 | |
| JPH06230990A (ja) | 符号誤りの識別、補正方法及び装置 | |
| JPH0423048A (ja) | 誤り検出・訂正用集積回路、誤り検出・訂正回路、および、データ処理装置 | |
| JPS6041374B2 (ja) | 1ビツト誤り訂正・2ビツト誤り検出方式 | |
| JPH0373014B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20020402 |