(57)【特許請求の範囲】
【請求項１】
複数のメモリ素子各々について設けられ、該メモリ素子のアドレス変換用の第１記憶手段と、
前記複数のメモリ素子の不良エリア情報を格納する第２記憶手段とを具備し、
前記第２記憶手段に格納された前記不良エリア情報は前記第１記憶手段に転送され、該第１記憶手段は前記メモリ素子に対して発生されたアドレスを変換し、該メモリ素子の不良エリアを回避することを特徴とする不良エリア管理回路。
【請求項２】
前記メモリ素子はＥＥＰＲＯＭであって、前記第１記憶手段はＲＡＭであって、前記第２記憶手段はＥＥＰＲＯＭであることを特徴とする請求項１記載の不良エリア管理回路。
【請求項３】
前記第２記憶手段に格納されている前記不良エリア情報は、前記不良エリア管理回路の電源投入時、前記第１記憶手段に格納されることを特徴とする請求項１又は２記載の不良エリア管理回路。
【請求項４】
連続するアドレス領域のアドレスを先頭アドレスから順次発生し、前記第１記憶手段の各々に同時に供給するアドレス発生手段を更に具備することを特徴とする請求項１〜３のいずれか１項に記載の不良エリア管理回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＥＥＰＲＯＭ(Electricaly Erasable PROM)等のメモリ素子を使用した記憶装置に関し、特にメモリ内の不良エリアを管理する回路に関する。
【０００２】
【従来の技術】
ＥＥＰＲＯＭ等のメモリ素子は一般にデータ出力８ビットのものが主流である。画像データのようにメモリ内で連続したデータを高速にアクセスするために、８×ｎビット構成を必要とする場合、ｎ個のＥＥＰＲＯＭを並べ、これらＥＥＰＲＯＭのアドレスを全て共通にして使用している。このような場合、８×ｎビットデータが一度に出力される。
【０００３】
各ＥＥＰＲＯＭはランダムな場所が不良エリアとなっている。図３は８×ｎビット構成のメモリ装置で不良エリアが存在する場合のアドレスの割り振り方を示す従来例である。ここでは、メモリ２の２番目及びメモリ３の４番目が不良エリアとなっている。図中左端に示す物理アドレスの変換後アドレスは図中右端に示すアドレスとなる。このように８×ｎビット構成とした場合、１つのＥＥＰＲＯＭの不良エリアアドレスに対応する全ＥＥＰＲＯＭのデータエリアが不良エリアとなる。このようにアドレスを共通にすると、正常エリアにもかかわらず使用されないエリアが多くなるため不経済である。不良エリアが各アドレス単位ではなく、複数アドレスを含むブロック単位で指定されている場合は更に不経済である。
【０００４】
これを回避するため、各ＥＥＰＲＯＭ個別にアドレスを設定し、実際の設定アドレスとソフトウェア管理上のアドレスの変換を行う変換テーブルをｎ個持ち、ソフトウェアで不良エリアを管理する方法も知られている。図４はＣＰＵが変換テーブルを用いてアドレスを変換するソフトウエアによるアドレス変換方法を説明するための図である。
【０００５】
ＥＥＰＲＯＭ１ａ〜１ｎ内のデータは一般にブロック単位又はページ単位で読み出される。変換テーブル４には上位ビットアドレス変換値が記憶され、エリア内アドレス発生器３ａ〜３ｎには目的ブロックの先頭アドレス下位ビット及びクロックＣＬＫが入力される。エリア内アドレス発生器３ａ〜３ｎは各ＥＥＰＲＯＭ１ａ〜１ｎに対して上位ビット及び下位ビットアドレスを供給する。又、エリア内アドレス発生器３ａ〜３ｎはクロックＣＬＫに同期して、目的ブロックの各データを読み出すための連続する下位アドレスを発生する。
【０００６】
図４に示すメモリ装置の場合、メモリ２（１ｂ）の２番目の領域及びメモリ３（１ｃ）の４番目の領域が不良ブロックとなっている。この場合、変換後アドレスは図中４ｂ及び４ｃに示すように、メモリ２の２番目及びメモリ３の４番目の領域にアドレスは設定されない。
【０００７】
このメモリ装置を総合的に制御するシステムＣＰＵ（図示されず）は、目的ブロックの先頭アドレスを示す上位アドレス４ｍを、変換テーブル４を用いて各メモリについて変換し、変換後アドレスを上位アドレスとしてエリア内アドレス発生器２ａ〜２ｎに出力する。つまりシステムＣＰＵは変換後の上位アドレスの読み出しをｎ回行い、エリア内アドレス発生器に対する出力をｎ回行う。例えばアドレス４ｍとして”２”が選択された場合、ＣＰＵはアドレス”２”に対する変換後アドレスを変換テーブル４から読み出し、エリア内アドレス発生１ａ〜１ｎに供給する。このとき、メモリ２のみについてはアドレス”３”が選択されエリア内アドレス発生器３ｂに供給される。このように従来はソフトウエア処理により不良エリアを避けながらアドレスをｎ個のメモリに対して設定していた。
【０００８】
【発明が解決しようとする課題】
このような従来の方法ではＣＰＵの負担が大きくＥＥＰＲＯＭの高速アクセスが困難であり、高速アクセスを行うには高性能なＣＰＵを使用する必要があった。
【０００９】
従って本発明は、８×ｎビット構成のような複数のメモリ素子を同時にアクセスする構成を有するメモリ装置において、ソフトウェア処理を縮小しＣＰＵに負担をかけずに、不良エリアを有するメモリ素子を高速にアクセス可能なメモリの不良エリア管理回路を提供することを目的とする。
【００１０】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態について詳細に説明する。
【００１１】
図１は本発明によるメモリの不良エリア管理回路の構成を示すブロック図である。本発明では各ＥＥＰＲＯＭ１ａ〜１ｎに対し各々高速ＲＡＭ４ａ〜４ｎが接続され、これら高速ＲＡＭには不良エリアの位置を置き換える変換データが格納されている。ＥＥＰＲＯＭはこの実施形態ではフラッシュＥＥＰＲＯＭであって、このフラッシュＥＥＰＲＯＭは一般にブロック単位で不良エリアが指定されている。高速ＲＡＭ４ａ〜４ｎの入力側はアドレスバス５を介してアドレス発生器７、アドレスバス６を介して高速ＲＡＭ初期化回路８に接続されている。アドレス発生器７にはデータ転送用クロックＣＬＫが供給されている。
【００１２】
目的ブロックの先頭アドレスがＣＰＵのソフトウェア処理によりアドレス発生器７に設定されると、アドレス発生器７は先頭アドレスから順に、１ブロック分の連続したアドレスを発生する。この先頭アドレスには全アドレスビットが含まれる。例えば先頭アドレスが「０００００１００ｈ」で１ブロックが「１００ｈ」であれば、アドレス発生器７は「０００００１００」から「００００００１ＦＦ」のアドレスを順に出力する。このアドレス発生器７から出力されるアドレスをここでは管理アドレスという。
【００１３】
この管理アドレスはアドレスバス５を介してアドレス変換用高速ＲＡＭ４ａ〜４ｎに入力される。アドレス変換用高速ＲＡＭ４ａ〜４ｎには例えば図４に示した変換テーブル４の各変換データ４ａ〜４ｎのようなデータがそれぞれ格納されている。管理アドレスはこの変換データにより変換され、変換後のアドレスがＥＥＰＲＯＭ１ａ〜１ｎに入力される。このようにアドレス変換用高速ＲＡＭにより変換されたアドレスをここでは物理アドレスという。この物理アドレスはアドレスバス２ａ〜２ｎを介してＥＥＰＲＯＭ１ａ〜１ｎに各々入力される。アドレス変換用高速ＲＡＭ４ａ〜４ｎには後述するように電源投入時に高速ＲＡＭ初期化回路８から初期値が転送されている。
【００１４】
次に本発明による不良エリア管理回路の動作を詳細に説明する。先ず、システムＣＰＵ（図示されず）はソフトウエア処理により先頭アドレスを発生し、アドレス発生器７に供給する。アドレス発生器７はクロックＣＬＫに同期して、先頭アドレスから順に１ブロック分の管理アドレスを連続して出力する。この管理アドレスはアドレス変換用の高速ＲＡＭ４ａ〜４ｎにより、各ＥＥＰＲＯＭ１ａ〜１ｎの不良エリアをアクセスしないように、変換されてアドレスバス２ａ〜２ｎに供給される。
【００１５】
たとえば図２に示すようにメモリ１ａ〜１ｎに不良エリア（即ち不良ブロック）が存在する場合を仮定する。図２の各正常ブロック内に記載された番号は、管理アドレスが属するブロックの番号に対応する変換後のブロック番号である。アドレス発生器７からアドレスバス５に管理アドレスとしてブロック２の先頭アドレスが出力されると、メモリ１ｂの２番目のブロックが不良ブロックとなっているので、高速ＲＡＭ４ｂは３番目ブロックの先頭アドレスを物理アドレスとして出力する。したがって不良ブロックであるメモリ２の２番目ブロックに対応するアドレスは使用されず、代わりに３番目ブロックのアドレスが使用される。他のアドレス変換用高速ＲＡＭ４ａ、４ｃ、…４ｎは２番目ブロックの先頭アドレスを物理アドレスとして出力する。
【００１６】
このようにして、システムＣＰＵはｎ個のＥＥＰＲＯＭを、不良エリアがなく連続して使用可能なエリアを持つメモリ素子として用いることができる。したがってＣＰＵは先頭アドレスの設定において、アドレスが共通になっている上位アドレスビットを管理アドレスとして設定すれば良くソフトウェア処理が軽減される。しかも従来は図４のように、ｎ個のメモリに対してＣＰＵはｎ回アドレスを発生していたが、本発明では１回のみでよい。
【００１７】
アドレス変換用データは高速ＲＡＭ初期化回路８に保持されており、電源ＯＮ時に高速ＲＡＭ４ａ〜４ｎに展開される。変換データは一番最初の電源投入時に作成され、その方法は各フラッシュＥＥＰＲＯＭ内に工場出荷時に格納された不良情報を読み出すことにより行われる。又、ＥＥＰＲＯＭは一般に工場出荷時に、全記憶エリアに「ＦＦ」が書き込まれているので、全エリアを読み出し「ＦＦ」以外のデータが読み出された場合は、そのデータが属するブロックが不良ブロックであることが分かる。このようにして判明した不良エリア情報が高速ＲＡＭ初期化回路（好適にＥＥＰＲＯＭ）８に書き込まれる。
【００１８】
本発明の応用例として高速ＲＡＭ４ａ〜４ｎはアドレス変換専用ではなく、他のデータ処理に用いられる高速ＲＡＭを使用しても良い。また高速ＲＡＭ初期化回路も変換データバックアップ専用でなくとも良い。又、変換データをバックアップする方法としてＥＥＰＲＯＭを代表とする半導体メモリだけではなくハードディスクを代表とする固定記憶装置やフロッピーディスクを代表とする交換可能記憶装置を使用してもよい。更に、不良エリアはブロック単位ではなく、各アドレス単位で指定されている場合でも、本発明を適用できることは明らかである。この場合、図２のブロック番号は単にアドレス値となる。
【００１９】
【発明の効果】
以上説明したように本発明によれば、メモリ使用可能エリアが見かけ上一塊りとなるため、連続したアドレスにデータを格納することができ、ソフトウェア処理が簡単になる。また、先頭アドレスのみ設定すれば連続した多数のアドレスを指定できるので、ＣＰＵの能力を多く使わずとも不良エリアの管理ができる。更に、管理アドレスから物理アドレスへの変換は高速ＲＡＭを使用しているのでＥＥＰＲＯＭの高速アクセスが可能である。
【図面の簡単な説明】
【図１】本発明による不良エリア管理回路の構成を示すブロック図。
【図２】本発明による不良エリア管理情報を説明するための図。
【図３】８×ｎビット構成で不良エリアがあった場合のアドレス割り振り方を示す従来例。
【図４】ソフトウェアを使ったアドレス変換方法を示す従来例。
【符号の説明】
１ａ〜１ｎ…ＥＥＰＲＯＭ
２ａ〜２ｎ、５…アドレスバス
３ａ〜３ｎ…エリア内アドレス発生器
４…管理テーブル
６…バスライン
７…アドレス発生器
８…高速ＲＡＭ初期化回路
【図１】
0004371524.tif 000002
【図２】
0004371524.tif 000003
【図３】
0004371524.tif 000004
【図４】
0004371524.tif 000005