JPH0778228A - メモリカードおよびそのデータ管理方法 - Google Patents
メモリカードおよびそのデータ管理方法Info
- Publication number
- JPH0778228A JPH0778228A JP5222503A JP22250393A JPH0778228A JP H0778228 A JPH0778228 A JP H0778228A JP 5222503 A JP5222503 A JP 5222503A JP 22250393 A JP22250393 A JP 22250393A JP H0778228 A JPH0778228 A JP H0778228A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- eeprom
- memory card
- block
- 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
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 EEPROMカードのアクセススピードを速
くする。 【構成】このメモリカードはメモリカード本体1の一端
部に設けられたコネクタ2およびバスライン3を介して
接続されたデータ入出力制御回路4と、このデータ入出
力制御回路4にバスライン5を介して接続され、データ
の高速書込みおよび高速読出しが可能なバッファメモリ
6と、データ入出力制御回路4にバスライン7を介して
接続された複数のEEPROM8とを具備し、データ入
出力制御回路4はEEPROM8内の、消去単位(1ブ
ロック)よりも小さな記憶領域のデータを消去したと
き、リンクテーブル上の論理アドレスと一致させるよう
物理アドレスを書換える。
くする。 【構成】このメモリカードはメモリカード本体1の一端
部に設けられたコネクタ2およびバスライン3を介して
接続されたデータ入出力制御回路4と、このデータ入出
力制御回路4にバスライン5を介して接続され、データ
の高速書込みおよび高速読出しが可能なバッファメモリ
6と、データ入出力制御回路4にバスライン7を介して
接続された複数のEEPROM8とを具備し、データ入
出力制御回路4はEEPROM8内の、消去単位(1ブ
ロック)よりも小さな記憶領域のデータを消去したと
き、リンクテーブル上の論理アドレスと一致させるよう
物理アドレスを書換える。
Description
【0001】
【産業上の利用分野】本発明は、例えば電子スチルカメ
ラなどに用いられるメモリカードおよびそのデータ管理
方法に関する。
ラなどに用いられるメモリカードおよびそのデータ管理
方法に関する。
【0002】
【従来の技術】従来から、メモリカードには、電子スチ
ルカメラなどで得た画像データを保管するための半導体
メモリとして、SRAM(スタティック・ランダム・ア
クセス・メモリ)やEEPROM(エレクトリカリィ・
イレーサブル・アンド・プログラマブル・リード・オン
リー・メモリ)などが適用されているが、それぞれには
長短があり改善が望まれている。
ルカメラなどで得た画像データを保管するための半導体
メモリとして、SRAM(スタティック・ランダム・ア
クセス・メモリ)やEEPROM(エレクトリカリィ・
イレーサブル・アンド・プログラマブル・リード・オン
リー・メモリ)などが適用されているが、それぞれには
長短があり改善が望まれている。
【0003】ここで、図6を参照してSRAMを適用し
たメモリカード(SRAMカード)とEEPROMを適
用したメモリカード(EEPROMカード)との長所・
短所について説明する。
たメモリカード(SRAMカード)とEEPROMを適
用したメモリカード(EEPROMカード)との長所・
短所について説明する。
【0004】同図に示すように、比較項目1、2のバッ
クアップ電池およびコストについて、SRAMカードは
バックアップ電池が必要なためコストが高いというデメ
リットがあるのに対して、EEPROMカードはバック
アップ電池が不要でありコストが低いというメリットが
ある。
クアップ電池およびコストについて、SRAMカードは
バックアップ電池が必要なためコストが高いというデメ
リットがあるのに対して、EEPROMカードはバック
アップ電池が不要でありコストが低いというメリットが
ある。
【0005】次の比較項目3、4の書込みスピードおよ
び読み出しスピードについて、SRAMカードはランダ
ムアクセスモードのみを有しているのに対してEEPR
OMカードはランダムアクセスモードとページモードを
有しているが、ランダムアクセスモードでの各スピード
はEEPROMカードよりもSRAMカードが速く勝っ
ている。
び読み出しスピードについて、SRAMカードはランダ
ムアクセスモードのみを有しているのに対してEEPR
OMカードはランダムアクセスモードとページモードを
有しているが、ランダムアクセスモードでの各スピード
はEEPROMカードよりもSRAMカードが速く勝っ
ている。
【0006】さらに比較項目5のイレース(消去)モー
ドは、EEPROMカード特有のモードであり、SRA
Mカードには存在しないモードである。すなわち、EE
PROMカードでは、EEPROMのある記憶領域に既
にデータが記憶されており、その記憶領域に新たなデー
タを記憶する場合、先に記憶されていたデータを一旦イ
レースした後、新たなデータを記憶する必要がある。そ
こでこのイレースモードが実行されるが、このイレース
モードにもEEPROMに記録されているすべてのデー
タを一括して消去する一括イレースと、複数連続するペ
ージデータからなる1ブロックを指定してブロック単位
でデータを消去するブロックイレースとがあるが、デー
タの書換えにはブロックイレースがよく使われる。
ドは、EEPROMカード特有のモードであり、SRA
Mカードには存在しないモードである。すなわち、EE
PROMカードでは、EEPROMのある記憶領域に既
にデータが記憶されており、その記憶領域に新たなデー
タを記憶する場合、先に記憶されていたデータを一旦イ
レースした後、新たなデータを記憶する必要がある。そ
こでこのイレースモードが実行されるが、このイレース
モードにもEEPROMに記録されているすべてのデー
タを一括して消去する一括イレースと、複数連続するペ
ージデータからなる1ブロックを指定してブロック単位
でデータを消去するブロックイレースとがあるが、デー
タの書換えにはブロックイレースがよく使われる。
【0007】最後の比較項目6の書込みベリファイは、
EEPROMカード特有の処理であり、SRAMカード
には存在しない処理である。すなわち、EEPROMカ
ードでは、EEPROM内の所定のデータ領域に対して
書込み処理を行った場合、通常、1回ではデータが完全
に書込まれないことが多く、このためEEPROMに記
憶した内容をその都度読み出して正確性をチェックする
処理が書込みベリファイである。この書込みベリファイ
によって書込み不良があった場合、他の救済領域に再度
データが書込まれる。
EEPROMカード特有の処理であり、SRAMカード
には存在しない処理である。すなわち、EEPROMカ
ードでは、EEPROM内の所定のデータ領域に対して
書込み処理を行った場合、通常、1回ではデータが完全
に書込まれないことが多く、このためEEPROMに記
憶した内容をその都度読み出して正確性をチェックする
処理が書込みベリファイである。この書込みベリファイ
によって書込み不良があった場合、他の救済領域に再度
データが書込まれる。
【0008】上記したような長所・短所を鑑み、SRA
Mに比べてEEPROMが安価で大容量化が可能なこと
から、近年、電子スチルカメラにはEEPROMカード
が使用されることが多くなっている。
Mに比べてEEPROMが安価で大容量化が可能なこと
から、近年、電子スチルカメラにはEEPROMカード
が使用されることが多くなっている。
【0009】ここで、図7〜図10を参照して従来のE
EPROMカードの動作を説明する。 このEEPRO
Mカード内にはEEPROMとバスラインを介して接続
されたデータ入出力制御回路が設けられており、このデ
ータ入出力制御回路がEEPROMを制御してデータの
入出力制御を行う。
EPROMカードの動作を説明する。 このEEPRO
Mカード内にはEEPROMとバスラインを介して接続
されたデータ入出力制御回路が設けられており、このデ
ータ入出力制御回路がEEPROMを制御してデータの
入出力制御を行う。
【0010】このEEPROMカード場合、EEPRO
M内には、図7(a)に示すように、複数のデータA〜
Fが書込まれたデータ書込み領域とデータが書込まれて
いない空き領域とが設けられており、データ消去単位で
ある1ブロックは2つのデータ(2ぺージ)からなりそ
れぞれの領域にはアドレスa、b、c、d、e、f、
y、zが設定されているものとする。
M内には、図7(a)に示すように、複数のデータA〜
Fが書込まれたデータ書込み領域とデータが書込まれて
いない空き領域とが設けられており、データ消去単位で
ある1ブロックは2つのデータ(2ぺージ)からなりそ
れぞれの領域にはアドレスa、b、c、d、e、f、
y、zが設定されているものとする。
【0011】例えばデータAなどをデータYなどに書換
える場合、まず、図7(b)に示すように、データAの
書込まれているデータ書込み領域の存在する1つのブロ
ックを消去し、次に、図7(c)に示すように、データ
Aの書込まれていたデータ書込み領域にデータYを書込
めば、データの書換え動作は終了するが、これではデー
タAと同じブロックの、データYの書込みには無関係な
データBまでもが消去される。
える場合、まず、図7(b)に示すように、データAの
書込まれているデータ書込み領域の存在する1つのブロ
ックを消去し、次に、図7(c)に示すように、データ
Aの書込まれていたデータ書込み領域にデータYを書込
めば、データの書換え動作は終了するが、これではデー
タAと同じブロックの、データYの書込みには無関係な
データBまでもが消去される。
【0012】そこで、これを避けるためEEPROMカ
ードでは、図8のフローチャートに示すような複雑な処
理が実行される。
ードでは、図8のフローチャートに示すような複雑な処
理が実行される。
【0013】すなわち、データAをデータYに書換える
場合、データ入出力制御回路は、まず、図9(a)に示
すように、データ書込み領域の中のデータA〜Fのう
ち、過去、個々のブロックの中で少なくとも一方が書換
えられたか否かを確認する(ステップ601 )。この確認
結果、各データ書込み領域のデータが何ら書換えられて
いない場合、次にデータ入出力制御回路はEEPROM
内の空き領域の存在するブロック(空きブロック)を検
索する(ステップ602 )。
場合、データ入出力制御回路は、まず、図9(a)に示
すように、データ書込み領域の中のデータA〜Fのう
ち、過去、個々のブロックの中で少なくとも一方が書換
えられたか否かを確認する(ステップ601 )。この確認
結果、各データ書込み領域のデータが何ら書換えられて
いない場合、次にデータ入出力制御回路はEEPROM
内の空き領域の存在するブロック(空きブロック)を検
索する(ステップ602 )。
【0014】この検索結果、EEPROM内に空きブロ
ック、すなわちアドレスy、zが存在すると(ステップ
603 )、図9(b)に示すように、その空きブロック内
のアドレスyなどに新たなデータYを書込む(ステップ
604 )。なお上記検索結果、空きブロックが存在しない
場合は(ステップ603 )、書込み動作を行えないので、
データ入出力制御回路はNG処理に移る(ステップ605
)。
ック、すなわちアドレスy、zが存在すると(ステップ
603 )、図9(b)に示すように、その空きブロック内
のアドレスyなどに新たなデータYを書込む(ステップ
604 )。なお上記検索結果、空きブロックが存在しない
場合は(ステップ603 )、書込み動作を行えないので、
データ入出力制御回路はNG処理に移る(ステップ605
)。
【0015】続いてデータ入出力制御回路は上記書込み
処理でEEPROM内のその空きブロックにデータYが
正しく書き込まれたか否かを確認し(書込みベリファイ
を行い)(ステップ606 )、正しく書き込まれていれ
ば、書換元のブロックにまだ他のデータがあるか否かを
確認する(ステップ607 )。ここでは書換元のブロック
にデータAの他、データBがあるので、そのデータBを
読出し(ステップ608 )、図9(c)に示すように、デ
ータYを書込んだ空きブロックの残る空き領域(アドレ
スz)にデータBを書込む(ステップ609 )。その後、
データ入出力制御回路はデータBについて書込みベリフ
ァイを行い、さらに書換元のブロックにデータが存在す
るか否かを確認し、この確認結果、そのブロックにはデ
ータA、B以外のデータがないので、データ入出力制御
回路はリンクテーブル上のリンク情報を、データY、B
の論理アドレスをアドレスa、bに、また実際にデータ
Y、Bが書込まれている物理アドレスをアドレスy、z
に書換えて動作を終了する。
処理でEEPROM内のその空きブロックにデータYが
正しく書き込まれたか否かを確認し(書込みベリファイ
を行い)(ステップ606 )、正しく書き込まれていれ
ば、書換元のブロックにまだ他のデータがあるか否かを
確認する(ステップ607 )。ここでは書換元のブロック
にデータAの他、データBがあるので、そのデータBを
読出し(ステップ608 )、図9(c)に示すように、デ
ータYを書込んだ空きブロックの残る空き領域(アドレ
スz)にデータBを書込む(ステップ609 )。その後、
データ入出力制御回路はデータBについて書込みベリフ
ァイを行い、さらに書換元のブロックにデータが存在す
るか否かを確認し、この確認結果、そのブロックにはデ
ータA、B以外のデータがないので、データ入出力制御
回路はリンクテーブル上のリンク情報を、データY、B
の論理アドレスをアドレスa、bに、また実際にデータ
Y、Bが書込まれている物理アドレスをアドレスy、z
に書換えて動作を終了する。
【0016】次に、上記図9(c)の状態のデータCを
さらにデータZに書換える動作について説明する。
さらにデータZに書換える動作について説明する。
【0017】この場合も、データ入出力制御回路はEE
PROM内の各ブロックについて過去にデータが書換え
られたか否かを確認する(上記ステップ601 )。ここで
は上記書換え処理によってデータAのブロック(アドレ
スa、bのデータ書込み領域)が既に書換えられている
ことが確認され、この結果、最新の書換先としてそのブ
ロック、すなわちアドレスa、bが検索される(ステッ
プ610 )。
PROM内の各ブロックについて過去にデータが書換え
られたか否かを確認する(上記ステップ601 )。ここで
は上記書換え処理によってデータAのブロック(アドレ
スa、bのデータ書込み領域)が既に書換えられている
ことが確認され、この結果、最新の書換先としてそのブ
ロック、すなわちアドレスa、bが検索される(ステッ
プ610 )。
【0018】そしてデータ入出力制御回路は、図10
(a)に示すように、そのアドレスa、bの内容(デー
タA、B)を消去し(ステップ611 )、その後、図10
(b)に示すように、アドレスaにデータZを書込む
(ステップ612 )。
(a)に示すように、そのアドレスa、bの内容(デー
タA、B)を消去し(ステップ611 )、その後、図10
(b)に示すように、アドレスaにデータZを書込む
(ステップ612 )。
【0019】さらに、書換を行うデータC(アドレス
c)の存在するブロック内の他のデータDをそのアドレ
スdから読出し、図10(c)に示すように、そのデー
タDをアドレスbに書込み、上記同様にリンクテーブル
上のリンク情報として、データZ、Dの論理アドレスを
それぞれアドレスc、dに、物理アドレスをそれぞれア
ドレスa、bに書換えて処理を終了する。
c)の存在するブロック内の他のデータDをそのアドレ
スdから読出し、図10(c)に示すように、そのデー
タDをアドレスbに書込み、上記同様にリンクテーブル
上のリンク情報として、データZ、Dの論理アドレスを
それぞれアドレスc、dに、物理アドレスをそれぞれア
ドレスa、bに書換えて処理を終了する。
【0020】ところで、このEEPROMカードの場
合、問題となるのはデータ書込みおよびデータ読出しな
どのスピード、いわゆるアクセススピードが遅いことで
あるが、これはブロックイレースにおいてデータの論理
的な書込み位置(論理アドレス)と実際にデータが書込
まれた位置(物理アドレス)とが異なることに関係して
いる。
合、問題となるのはデータ書込みおよびデータ読出しな
どのスピード、いわゆるアクセススピードが遅いことで
あるが、これはブロックイレースにおいてデータの論理
的な書込み位置(論理アドレス)と実際にデータが書込
まれた位置(物理アドレス)とが異なることに関係して
いる。
【0021】すなわち、従来のEEPROMカードで
は、EEPROMにデータを書込む際、複数の記憶領域
の中から検索された空き領域内に存在するデータをブロ
ック毎に消去してからそこに新たなデータを書込むた
め、リンクテーブル上のデータの論理的な書込み位置
(論理アドレス)と実際にデータが書込まれた位置(物
理アドレス)とが一致しなくなる。このアドレスの不一
致のためにデータを読出す際には必ずアドレスの置換を
行う必要がありアクセススピードが遅くなっていた。
は、EEPROMにデータを書込む際、複数の記憶領域
の中から検索された空き領域内に存在するデータをブロ
ック毎に消去してからそこに新たなデータを書込むた
め、リンクテーブル上のデータの論理的な書込み位置
(論理アドレス)と実際にデータが書込まれた位置(物
理アドレス)とが一致しなくなる。このアドレスの不一
致のためにデータを読出す際には必ずアドレスの置換を
行う必要がありアクセススピードが遅くなっていた。
【0022】
【発明が解決しようとする課題】このように上述した従
来のメモリカードでは、半導体メモリとしてEEPRO
Mを用いることによりSRAMと比較して安価で大容量
化が可能ではあるが、このEEPROMにデータを書込
む際、複数のデータ書込み領域の中から既にデータ書換
え済みのデータ書込み領域を検索しそこにデータを書込
むといったことを都度繰り返すため、リンクテーブル上
のデータの論理アドレスと物理アドレスとが一致しなく
なる。このためEEPROMからデータを読出すときに
は必ずアドレスの置換を行う必要があり、これがアクセ
ススピードを遅らせる原因になっていた。
来のメモリカードでは、半導体メモリとしてEEPRO
Mを用いることによりSRAMと比較して安価で大容量
化が可能ではあるが、このEEPROMにデータを書込
む際、複数のデータ書込み領域の中から既にデータ書換
え済みのデータ書込み領域を検索しそこにデータを書込
むといったことを都度繰り返すため、リンクテーブル上
のデータの論理アドレスと物理アドレスとが一致しなく
なる。このためEEPROMからデータを読出すときに
は必ずアドレスの置換を行う必要があり、これがアクセ
ススピードを遅らせる原因になっていた。
【0023】本発明はこのような課題を解決するために
なされたもので、半導体メモリとしてEEPROMを用
いた中でアクセススピードの速いメモリカードおよびそ
のデータ管理方法を提供することを目的としている。
なされたもので、半導体メモリとしてEEPROMを用
いた中でアクセススピードの速いメモリカードおよびそ
のデータ管理方法を提供することを目的としている。
【0024】
【課題を解決するための手段】本発明のメモリカードは
上記した目的を達成するために、EEPROMの複数の
記憶領域に書込まれたデータの物理アドレスと論理アド
レスとをリンクさせて管理するリンクテーブルを有する
メモリカードにおいて、外部からのデータ消去命令によ
り前記複数の記憶領域の中からデータを消去する記憶領
域をアドレスを基に検索し、検索された記憶領域のデー
タを消去する手段と、外部からのデータ書込命令により
データが消去された記憶領域を検索し新たなデータを書
込む手段と、この書込手段により新たなデータが正しく
書込まれたことが確認されると、そのデータの、前記リ
ンクテーブル上における物理アドレスを前記論理アドレ
スに一致させる手段とを具備している。
上記した目的を達成するために、EEPROMの複数の
記憶領域に書込まれたデータの物理アドレスと論理アド
レスとをリンクさせて管理するリンクテーブルを有する
メモリカードにおいて、外部からのデータ消去命令によ
り前記複数の記憶領域の中からデータを消去する記憶領
域をアドレスを基に検索し、検索された記憶領域のデー
タを消去する手段と、外部からのデータ書込命令により
データが消去された記憶領域を検索し新たなデータを書
込む手段と、この書込手段により新たなデータが正しく
書込まれたことが確認されると、そのデータの、前記リ
ンクテーブル上における物理アドレスを前記論理アドレ
スに一致させる手段とを具備している。
【0025】このメモリカードのデータ管理方法は、E
EPROMの複数の記憶領域のデータを、リンクテーブ
ル上の論理アドレスと物理アドレスとを基に管理するメ
モリカードのデータ管理方法において、前記複数の記憶
領域の中に空き領域が検索され、その空き領域のデータ
が他の記憶領域に移動された後、その空き領域のデータ
が消去され、その空き領域に新たなデータが書込まれた
とき、前記リンクテーブル上の新たなデータの前記論理
アドレスと物理アドレスとが一致するよう前記物理アド
レスを書換えるデータ管理方法である。
EPROMの複数の記憶領域のデータを、リンクテーブ
ル上の論理アドレスと物理アドレスとを基に管理するメ
モリカードのデータ管理方法において、前記複数の記憶
領域の中に空き領域が検索され、その空き領域のデータ
が他の記憶領域に移動された後、その空き領域のデータ
が消去され、その空き領域に新たなデータが書込まれた
とき、前記リンクテーブル上の新たなデータの前記論理
アドレスと物理アドレスとが一致するよう前記物理アド
レスを書換えるデータ管理方法である。
【0026】
【作用】本発明では、EEPROM内の、消去単位(1
ブロック)よりも小さな記憶領域のデータを書換または
消去を行ったとき、リンクテーブル上の論理アドレスと
物理アドレスとを一致させるよう物理アドレスが書換え
られるので、次にデータを読出したり書換えたりする場
合、アドレス変換が不要になり、アクセススピードが向
上する。
ブロック)よりも小さな記憶領域のデータを書換または
消去を行ったとき、リンクテーブル上の論理アドレスと
物理アドレスとを一致させるよう物理アドレスが書換え
られるので、次にデータを読出したり書換えたりする場
合、アドレス変換が不要になり、アクセススピードが向
上する。
【0027】この結果、EEPROMを用いたメモリカ
ードでもアクセススピードを速くすることができる。
ードでもアクセススピードを速くすることができる。
【0028】
【実施例】以下、本発明の実施例を図面を参照して詳細
に説明する。
に説明する。
【0029】図1は本発明に係る一実施例のメモリカー
ドを電子スチルカメラに適用した場合の構成を示す図で
ある。
ドを電子スチルカメラに適用した場合の構成を示す図で
ある。
【0030】同図において、1はメモリカード本体であ
る。このメモリカード本体1の一端部には、図示しない
電子スチルカメラ本体に挿着されるコネクタ2が設けら
れている。このコネクタ2には、バスライン3を介して
データ入出力制御回路4が接続されている。このデータ
入出力制御回路4には、バスライン5を介してデータの
高速書込みおよび高速読出しが可能なバッファメモリ6
が接続されている。またこのデータ入出力制御回路4に
は、バスライン7を介して複数のEEPROM(エレク
トリカリィ・イレーサブル・アンド・プログラマブル・
リード・オンリー・メモリ)8が接続されている。各E
EPROM8には、データの書込み単位としてページデ
ータ1ページ分の記憶領域が複数設けられている。また
各EEPROM8はブロック単位でデータの消去が行わ
れる、いわゆるブロックイレース方式のものであり、1
ブロックはデータの書込み単位(ページデータ1ページ
分)よりも大きく、通常、2つのページデータが1ブロ
ックとされている。したがって、データを書込む際は1
ブロック単位に必ずデータを消去してからそのブロック
のいずれか一方の記憶領域にデータが書込まれる。
る。このメモリカード本体1の一端部には、図示しない
電子スチルカメラ本体に挿着されるコネクタ2が設けら
れている。このコネクタ2には、バスライン3を介して
データ入出力制御回路4が接続されている。このデータ
入出力制御回路4には、バスライン5を介してデータの
高速書込みおよび高速読出しが可能なバッファメモリ6
が接続されている。またこのデータ入出力制御回路4に
は、バスライン7を介して複数のEEPROM(エレク
トリカリィ・イレーサブル・アンド・プログラマブル・
リード・オンリー・メモリ)8が接続されている。各E
EPROM8には、データの書込み単位としてページデ
ータ1ページ分の記憶領域が複数設けられている。また
各EEPROM8はブロック単位でデータの消去が行わ
れる、いわゆるブロックイレース方式のものであり、1
ブロックはデータの書込み単位(ページデータ1ページ
分)よりも大きく、通常、2つのページデータが1ブロ
ックとされている。したがって、データを書込む際は1
ブロック単位に必ずデータを消去してからそのブロック
のいずれか一方の記憶領域にデータが書込まれる。
【0031】次に、図2のフローチャートおよび図3〜
図5を参照してこのメモリカードの動作を説明する。
図5を参照してこのメモリカードの動作を説明する。
【0032】図3に示すように、このメモリカード内の
2つのEEPROM8(チップ1とチップ2)のデー
タ、すなわちデータA〜Fは各論理アドレスおよび物理
アドレスともに既に1ブロック内でさまざまに書換えら
れているものとし、これからデータA、C、Dを消去す
る場合について考えてみる。
2つのEEPROM8(チップ1とチップ2)のデー
タ、すなわちデータA〜Fは各論理アドレスおよび物理
アドレスともに既に1ブロック内でさまざまに書換えら
れているものとし、これからデータA、C、Dを消去す
る場合について考えてみる。
【0033】まず、データAを消去する場合、データ入
出力制御回路4はデータAの論理アドレスと物理アドレ
スとが一致しているか否かを確認する(ステップ201
)。この場合、アドレスbのみしか一致していないの
で、データ入出力制御回路4は物理アドレスs、bのデ
ータAを消去する(ステップ202 )。
出力制御回路4はデータAの論理アドレスと物理アドレ
スとが一致しているか否かを確認する(ステップ201
)。この場合、アドレスbのみしか一致していないの
で、データ入出力制御回路4は物理アドレスs、bのデ
ータAを消去する(ステップ202 )。
【0034】次にデータ入出力制御回路4は消去したデ
ータAの物理アドレスs、bにリンクする論理アドレス
a、bが他のデータB〜Eの置換先になっているか否か
を確認する(ステップ203 )。ここで、論理アドレスa
はチップ2に書込まれているデータBの置換先であるの
で、この論理アドレスaを置換先とするデータBをチッ
プ2から読出す(ステップ204 )。そしてデータ入出力
制御回路4はチップ2の記憶領域の中から、既にデータ
消去済みのブロック、すなわちアドレスsを検索し、読
出したデータBをそのアドレスsの記憶領域に書込む
(ステップ205 )。
ータAの物理アドレスs、bにリンクする論理アドレス
a、bが他のデータB〜Eの置換先になっているか否か
を確認する(ステップ203 )。ここで、論理アドレスa
はチップ2に書込まれているデータBの置換先であるの
で、この論理アドレスaを置換先とするデータBをチッ
プ2から読出す(ステップ204 )。そしてデータ入出力
制御回路4はチップ2の記憶領域の中から、既にデータ
消去済みのブロック、すなわちアドレスsを検索し、読
出したデータBをそのアドレスsの記憶領域に書込む
(ステップ205 )。
【0035】続いてデータ入出力制御回路4はアドレス
sの記憶領域にデータBが正しく書き込まれたか否かを
確認し(ベリファイ)(ステップ206 )、正しく書き込
まれていなければ、他に空き領域があるブロック(空き
ブロック)を検索し(ステップ207 )、他に空きブロッ
クがあった場合(ステップ208 )、その空きブロックを
新たな置換先としてデータBをその空きブロックの空き
領域に書込む(ステップ209 )。なお上記検索結果、チ
ップ2に空きブロックがなかった場合は書込み動作を行
えないのでデータ入出力制御回路4はNG処理に移る
(ステップ210 )。 一方、正しく書き込まれていれ
ば、書換元(データAのあった位置)の論理アドレスブ
ロック(アドレスa、b)に他のデータが存在するか否
かを確認する(ステップ211 )。この場合、他にデータ
はないので、データ入出力制御回路4は論理アドレスa
の領域の、既に置換したデータBを消去する(ステップ
212 )。そしてリンクテーブル内のデータBのリンク情
報を論理アドレスm、nおよび物理アドレスs、nと書
換える(ステップ213 )。最後にデータ入出力制御回路
4はデータAを消去したブロックの論理アドレスa、b
にリンクするリンクテーブル上の物理アドレスを、論理
アドレスa、bと一致するようにa、bと書換えて処理
を終了する(ステップ214 )。
sの記憶領域にデータBが正しく書き込まれたか否かを
確認し(ベリファイ)(ステップ206 )、正しく書き込
まれていなければ、他に空き領域があるブロック(空き
ブロック)を検索し(ステップ207 )、他に空きブロッ
クがあった場合(ステップ208 )、その空きブロックを
新たな置換先としてデータBをその空きブロックの空き
領域に書込む(ステップ209 )。なお上記検索結果、チ
ップ2に空きブロックがなかった場合は書込み動作を行
えないのでデータ入出力制御回路4はNG処理に移る
(ステップ210 )。 一方、正しく書き込まれていれ
ば、書換元(データAのあった位置)の論理アドレスブ
ロック(アドレスa、b)に他のデータが存在するか否
かを確認する(ステップ211 )。この場合、他にデータ
はないので、データ入出力制御回路4は論理アドレスa
の領域の、既に置換したデータBを消去する(ステップ
212 )。そしてリンクテーブル内のデータBのリンク情
報を論理アドレスm、nおよび物理アドレスs、nと書
換える(ステップ213 )。最後にデータ入出力制御回路
4はデータAを消去したブロックの論理アドレスa、b
にリンクするリンクテーブル上の物理アドレスを、論理
アドレスa、bと一致するようにa、bと書換えて処理
を終了する(ステップ214 )。
【0036】ここで、図示はしていないが、データBを
消去する場合について説明する。
消去する場合について説明する。
【0037】データBを消去する場合も上記同様の手順
で行われる。そして最終的にチップ2内に書込まれてい
たデータEの物理アドレスq、mは、アドレスq、aに
書換えられ、消去したデータBの物理アドレスa、n
は、アドレスm、nに書換えられる。さらに図示はして
いないがデータEを消去する場合について説明する。
で行われる。そして最終的にチップ2内に書込まれてい
たデータEの物理アドレスq、mは、アドレスq、aに
書換えられ、消去したデータBの物理アドレスa、n
は、アドレスm、nに書換えられる。さらに図示はして
いないがデータEを消去する場合について説明する。
【0038】この場合、論理アドレスと物理アドレスと
が一致していないため、上記同様に物理アドレスq、m
が消去される(上記ステップ202 )。そしてこの消去し
た物理アドレスq、mにリンクする論理アドレスq、r
が他のデータの書換先となっていないので(論理アドレ
スq、rが置換元ではないので)(上記ステップ20
3)、この場合、論理アドレスq、rのブロックが消去
される(ステップ215 )。その後、データ入出力制御回
路4は物理アドレスと論理アドレスとを一致させるよう
物理アドレスをq、rと書換える。この場合、他のデー
タは絡んでいないので、リンク情報の書換えはアドレス
mからアドレスrへ1つ書換えるのみとなる。
が一致していないため、上記同様に物理アドレスq、m
が消去される(上記ステップ202 )。そしてこの消去し
た物理アドレスq、mにリンクする論理アドレスq、r
が他のデータの書換先となっていないので(論理アドレ
スq、rが置換元ではないので)(上記ステップ20
3)、この場合、論理アドレスq、rのブロックが消去
される(ステップ215 )。その後、データ入出力制御回
路4は物理アドレスと論理アドレスとを一致させるよう
物理アドレスをq、rと書換える。この場合、他のデー
タは絡んでいないので、リンク情報の書換えはアドレス
mからアドレスrへ1つ書換えるのみとなる。
【0039】最後にデータC、Dを消去する場合につい
て説明する。
て説明する。
【0040】この場合、データ入出力制御回路4が論理
アドレスと物理アドレスとの一致、不一致を確認した結
果(上記ステップ201 )、一致するので、データ入出力
制御回路4は次にそのブロックの中のデータC、Dのう
ち、いずれか一方で過去に書換られたか否かを確認する
(ステップ216 )。この確認結果、過去にデータが書換
られていなければ、データ入出力制御回路4はそのブロ
ック(アドレスc、d、e、f)を消去し(ステップ21
7 )、処理を終了する。
アドレスと物理アドレスとの一致、不一致を確認した結
果(上記ステップ201 )、一致するので、データ入出力
制御回路4は次にそのブロックの中のデータC、Dのう
ち、いずれか一方で過去に書換られたか否かを確認する
(ステップ216 )。この確認結果、過去にデータが書換
られていなければ、データ入出力制御回路4はそのブロ
ック(アドレスc、d、e、f)を消去し(ステップ21
7 )、処理を終了する。
【0041】これにより、図4に示すように、チップ1
側のデータはすべて消去されたことになる。なおデータ
B、Eについては実際に書換え処理をしていないので、
論理アドレスと物理アドレスとは異なっているが、その
他は一致している。
側のデータはすべて消去されたことになる。なおデータ
B、Eについては実際に書換え処理をしていないので、
論理アドレスと物理アドレスとは異なっているが、その
他は一致している。
【0042】一方、上記処理を従来のメモリカードで行
った場合、図5に示すように、チップ1のアドレスaに
データBが残ってしまうことになり、チップ1側のすべ
てのデータの消去はできない。またブロックの中で一方
のみを消去したデータA、Bの各論理アドレスと物理ア
ドレスとはさまざまに異なってしまう。
った場合、図5に示すように、チップ1のアドレスaに
データBが残ってしまうことになり、チップ1側のすべ
てのデータの消去はできない。またブロックの中で一方
のみを消去したデータA、Bの各論理アドレスと物理ア
ドレスとはさまざまに異なってしまう。
【0043】ところで、上記ステップ201 において、書
換指定ブロックの論理アドレスと物理アドレスとが一致
しても、そのブロック内のデータが過去に書換えられて
いないものであるとは限らない。すなわち、図9(c)
に示したデータの状態のとき、既に書換えたデータYを
さらにデータWに書換えた場合には、データWはアドレ
スaに書込まれる。そしてデータBがアドレスbに置換
され、さらにリンクテーブル上のデータW、Bの物理ア
ドレスが論理アドレスa、bと一致するようにアドレス
a、bに書換えられる。
換指定ブロックの論理アドレスと物理アドレスとが一致
しても、そのブロック内のデータが過去に書換えられて
いないものであるとは限らない。すなわち、図9(c)
に示したデータの状態のとき、既に書換えたデータYを
さらにデータWに書換えた場合には、データWはアドレ
スaに書込まれる。そしてデータBがアドレスbに置換
され、さらにリンクテーブル上のデータW、Bの物理ア
ドレスが論理アドレスa、bと一致するようにアドレス
a、bに書換えられる。
【0044】この結果、物理アドレスと論理アドレスと
は一致するが、この際、ステップ216 を無視してステッ
プ217 に進み書換指定されたブロックのデータW、Bを
そのまま消去すると、書換元のブロック(アドレスy、
z)にデータW、Bが残ってしまう。そこで、この場
合、ステップ216 において過去のデータ書換を確認し、
データが書換られていれば、書換元のブロックを消去し
た後(ステップ218 )、書換指定ブロックを消去するこ
とでメモリ領域の無駄な使用を防止している。
は一致するが、この際、ステップ216 を無視してステッ
プ217 に進み書換指定されたブロックのデータW、Bを
そのまま消去すると、書換元のブロック(アドレスy、
z)にデータW、Bが残ってしまう。そこで、この場
合、ステップ216 において過去のデータ書換を確認し、
データが書換られていれば、書換元のブロックを消去し
た後(ステップ218 )、書換指定ブロックを消去するこ
とでメモリ領域の無駄な使用を防止している。
【0045】このように本実施例のメモリカードによれ
ば、EEPROM8内に1ブロックの中で一方のみが消
去あるいは書換えられるデータが存在する場合、データ
入出力制御回路4がデータを消去するたびにリンクテー
ブル上の物理アドレスを、その論理アドレスに一致する
ように書換えるので、データが幾度か書換えられても論
理アドレスと物理アドレスとのリンク関係が明瞭であ
り、その後、データ書込みおよびデータ読出しなどを行
う際にアドレスの置換を行わずに済みアクセススピード
を速くすることができる。
ば、EEPROM8内に1ブロックの中で一方のみが消
去あるいは書換えられるデータが存在する場合、データ
入出力制御回路4がデータを消去するたびにリンクテー
ブル上の物理アドレスを、その論理アドレスに一致する
ように書換えるので、データが幾度か書換えられても論
理アドレスと物理アドレスとのリンク関係が明瞭であ
り、その後、データ書込みおよびデータ読出しなどを行
う際にアドレスの置換を行わずに済みアクセススピード
を速くすることができる。
【0046】また2つのEEPROM8(チップ1およ
びチップ2)内にそれぞれ関連するデータが点在しチッ
プ1内の他のデータを消去するとき、従来であれば一方
のチップ、例えばチップ1にデータBなどが残ってしま
ったが、本発明ではデータBはチップ2のアドレスsに
置換されるので、一方のチップ1のすべてのデータを消
去することが可能になりデータの消去スピードを速くす
ることができる。
びチップ2)内にそれぞれ関連するデータが点在しチッ
プ1内の他のデータを消去するとき、従来であれば一方
のチップ、例えばチップ1にデータBなどが残ってしま
ったが、本発明ではデータBはチップ2のアドレスsに
置換されるので、一方のチップ1のすべてのデータを消
去することが可能になりデータの消去スピードを速くす
ることができる。
【0047】
【発明の効果】以上説明したように本発明によれば、E
EPROM内のデータを書換または消去を行ったとき、
リンクテーブル上の論理アドレスと物理アドレスとを一
致させるよう物理アドレスが書換えられるので、次にデ
ータ読出しまたは書換えを行う場合、アドレス変換が不
要になりアクセススピードが向上する。
EPROM内のデータを書換または消去を行ったとき、
リンクテーブル上の論理アドレスと物理アドレスとを一
致させるよう物理アドレスが書換えられるので、次にデ
ータ読出しまたは書換えを行う場合、アドレス変換が不
要になりアクセススピードが向上する。
【0048】この結果、EEPROMを用いたメモリカ
ードでもアクセススピードを速くすることができる。
ードでもアクセススピードを速くすることができる。
【図1】本発明に係る一実施例のメモリカードの構成を
示す図である。
示す図である。
【図2】図1のメモリカードの動作を示すフローチャー
トである。
トである。
【図3】図1のメモリカードにおいてEEPROM内の
あるデータ状態を示す図である。
あるデータ状態を示す図である。
【図4】図1のメモリカードにより図3のEEPROM
のデータ状態からデータA、C、Dなどを消去した場合
を示す図である。
のデータ状態からデータA、C、Dなどを消去した場合
を示す図である。
【図5】従来のメモリカードにより図3のEEPROM
のデータ状態からデータA、C、Dなどを消去した場合
を示す図である。
のデータ状態からデータA、C、Dなどを消去した場合
を示す図である。
【図6】従来のSRAMカードとEEPROMカードと
の長短を示す図である。
の長短を示す図である。
【図7】(a)、(b)、(c)は、従来のEEPRO
MカードにおいてデータAをデータYに単純に書換える
場合の過程を示す図である。
MカードにおいてデータAをデータYに単純に書換える
場合の過程を示す図である。
【図8】従来のメモリカードの動作を示すフローチャー
トである。
トである。
【図9】(a)、(b)、(c)は、従来のEEPRO
MカードにおいてデータAをデータYに書換える複雑な
過程を示す図である。
MカードにおいてデータAをデータYに書換える複雑な
過程を示す図である。
【図10】(a)、(b)、(c)は、上記図9(c)
の状態のデータCをさらにデータZに書換える過程を示
す図である。
の状態のデータCをさらにデータZに書換える過程を示
す図である。
1…メモリカード本体、2…コネクタ、3、5、7…バ
スライン、4…データ入出力制御回路、6…バッファメ
モリ、8…EEPROM。
スライン、4…データ入出力制御回路、6…バッファメ
モリ、8…EEPROM。
Claims (2)
- 【請求項1】 EEPROMの複数の記憶領域に書込ま
れたデータの物理アドレスと論理アドレスとをリンクさ
せて管理するリンクテーブルを有するメモリカードにお
いて、 外部からのデータ消去命令により前記複数の記憶領域の
中からデータを消去する記憶領域をアドレスを基に検索
し、検索された記憶領域のデータを消去する手段と、 外部からのデータ書込命令によりデータが消去された記
憶領域を検索し新たなデータを書込む手段と、 この書込手段により新たなデータが正しく書込まれたこ
とが確認されると、そのデータの、前記リンクテーブル
上における物理アドレスを前記論理アドレスに一致させ
る手段とを具備したことを特徴とするメモリカード。 - 【請求項2】 EEPROMの複数の記憶領域のデータ
を、リンクテーブル上の論理アドレスと物理アドレスと
を基に管理するメモリカードのデータ管理方法におい
て、 前記複数の記憶領域の中に空き領域が検索され、その空
き領域のデータが他の記憶領域に移動された後、その空
き領域のデータが消去され、その空き領域に新たなデー
タが書込まれたとき、前記リンクテーブル上の新たなデ
ータの前記論理アドレスと物理アドレスとが一致するよ
う前記物理アドレスを書換えることを特徴とするメモリ
カードのデータ管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5222503A JPH0778228A (ja) | 1993-09-07 | 1993-09-07 | メモリカードおよびそのデータ管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5222503A JPH0778228A (ja) | 1993-09-07 | 1993-09-07 | メモリカードおよびそのデータ管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0778228A true JPH0778228A (ja) | 1995-03-20 |
Family
ID=16783453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5222503A Withdrawn JPH0778228A (ja) | 1993-09-07 | 1993-09-07 | メモリカードおよびそのデータ管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0778228A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000036382A (ko) * | 2000-02-29 | 2000-07-05 | 민훈 | 적층식 대용량 불휘발성 메모리 반도체 카드 |
US7970982B2 (en) | 2007-02-06 | 2011-06-28 | Samsung Electronics Co., Ltd. | Memory card and memory system having the same |
-
1993
- 1993-09-07 JP JP5222503A patent/JPH0778228A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000036382A (ko) * | 2000-02-29 | 2000-07-05 | 민훈 | 적층식 대용량 불휘발성 메모리 반도체 카드 |
US7970982B2 (en) | 2007-02-06 | 2011-06-28 | Samsung Electronics Co., Ltd. | Memory card and memory system having the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5983312A (en) | Simultaneously writing to and erasing two commonly numbered sectors | |
US5682497A (en) | Managing file structures for a flash memory file system in a computer | |
JP3706167B2 (ja) | 半導体ディスク装置 | |
US8327068B2 (en) | Memory module, memory controller, nonvolatile storage, nonvolatile storage system, and memory read/write method | |
KR100664933B1 (ko) | 비휘발성 저장장치에 멀티미디어 데이터를 블록 단위로저장하는 방법 및 장치 | |
EP0544252A2 (en) | Data management system for programming-limited type semiconductor memory and IC memory card having the data management system | |
US6839798B1 (en) | Flash memory capable of storing frequently rewritten data | |
JPH08328762A (ja) | 半導体ディスク装置及びそのメモリ管理方法 | |
US7231383B2 (en) | Search engine for large-width data | |
JP2768618B2 (ja) | 半導体ディスク装置 | |
JPH05233464A (ja) | Eepromのデータ書換方法およびeepromカード | |
US5724544A (en) | IC memory card utilizing dual eeproms for image and management data | |
JPH05151098A (ja) | メモリカード装置 | |
CN100364013C (zh) | 在闪存中存放校验码的方法及装置 | |
US10990323B2 (en) | Flash memory controller, memory device and method for accessing flash memory module | |
JP2008084184A (ja) | メモリコントローラ | |
JPH0778228A (ja) | メモリカードおよびそのデータ管理方法 | |
CN103389943A (zh) | 控制装置、存储装置及存储控制方法 | |
KR100479170B1 (ko) | 메모리 억세스 제어장치 및 방법 | |
JP3976764B2 (ja) | 半導体ディスク装置 | |
JP3117244B2 (ja) | Eepromの制御装置 | |
JPH06309527A (ja) | Icカード | |
JPH06162786A (ja) | フラッシュメモリを用いた情報処理装置 | |
JPH04137077A (ja) | メモリカードにおけるデータ記録方法およびメモリカードシステム | |
JPH0764831A (ja) | データ記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20001107 |