JPH08221223A - 半導体ディスク装置 - Google Patents

半導体ディスク装置

Info

Publication number
JPH08221223A
JPH08221223A JP2828795A JP2828795A JPH08221223A JP H08221223 A JPH08221223 A JP H08221223A JP 2828795 A JP2828795 A JP 2828795A JP 2828795 A JP2828795 A JP 2828795A JP H08221223 A JPH08221223 A JP H08221223A
Authority
JP
Japan
Prior art keywords
data
address
logical sector
storage area
conversion table
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
JP2828795A
Other languages
English (en)
Other versions
JP3706167B2 (ja
Inventor
Meeson Korin
コリン・メーソン
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2828795A priority Critical patent/JP3706167B2/ja
Priority to US08/598,535 priority patent/US5740396A/en
Priority to GB9602595A priority patent/GB2298063B/en
Priority to KR1019960003774A priority patent/KR100218871B1/ko
Publication of JPH08221223A publication Critical patent/JPH08221223A/ja
Application granted granted Critical
Publication of JP3706167B2 publication Critical patent/JP3706167B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【構成】 当該消去ブロックの消去回数を格納する消去
ブロック情報格納領域10と、データを格納する複数の
データ格納領域11と、論理セクタアドレスを格納する
前記データ格納領域毎の論理セクタアドレス格納領域1
2とから構成される消去ブロック9を複数有するフラッ
シュメモリ8Aと、前記論理セクタアドレスを物理消去
ブロック番号へ変換するためのアドレス変換テーブル5
Aと、前記アドレス変換テーブル5Aに基づいて入力し
た論理セクタアドレス(LSA)を物理消去ブロック番
号(PBN)へ変換し、前記フラッシュメモリ8A上の
該当物理消去ブロック内で前記入力した論理セクタアド
レスに基づいて最新の該当データ格納領域11を捜し出
し、前記最新の該当データ格納領域11の内容を読み出
すCPU4とを備えた。 【効果】 データ管理用のアドレス変換テーブル5Aを
小さくできる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、フラッシュメモリを
記憶媒体として用いた半導体ディスクカード等の半導体
ディスク装置に関するものである。
【0002】
【従来の技術】今日、パーソナルコンピュータの分野に
おいて比較的大容量のデータを記憶させておく際には、
ハードディスク装置などの磁気記憶媒体が用いられるこ
とが多い。これは、消費電力こそ大きいがコストパフォ
ーマンスが非常によいためである。
【0003】一方、フラッシュメモリ等の半導体メモリ
を上記ハードディスク装置のように動作させる半導体デ
ィスク装置が出現した。この半導体ディスク装置は上記
ハードディスク装置と違いモーターなどのメカニカルな
部分が存在しないため、コストパフォーマンスは磁気記
憶媒体に遅れをとるものの低消費電力、高信頼性という
面を生かし携帯情報端末などに普及しつつある。
【0004】なお、フラッシュメモリの特徴は以下のと
おりである。第1に、電気的にデータの書き込み、消去
が可能な不揮発性メモリである。第2に、データが既に
書き込まれているメモリセルにデータを上書きすること
はできない(このため、常に消去動作がつきまとう)。
第3に、データの消去単位は、数K〜数十KByte単
位である。第4に、書き込み、消去回数に制限がある。
【0005】従来の半導体ディスク装置の構成について
図14、図15、図16及び図17を参照しながら説明
する。図14は、従来の半導体ディスク装置の全体構成
を示すブロック図である。図15は、図14のアドレス
変換テーブルの内部構成を示す図である。図16は、図
14のフラッシュメモリの内部構成を示す図である。ま
た、図17は、図16の消去ブロックの内部構成を示す
図である。
【0006】図14において、従来の半導体ディスク装
置2は、インターフェイス回路3と、CPU4と、アド
レス変換テーブル5と、フラッシュ制御回路6と、デー
タ入出力用セクタバッファ7と、フラッシュメモリ8と
を備える。
【0007】半導体ディスク装置2と接続するホスト1
の代表的な例は、ノートパソコンや携帯情報端末であ
る。リムーバブルタイプの半導体ディスク装置2は、現
在の所、カード型が主流である。インターフェイス回路
3は、ホスト1との情報をやりとりする。CPU4は、
データの入出力及びフラッシュメモリ8への命令を出力
する。
【0008】論理セクタ/物理セクタアドレス変換テー
ブル5は、論理セクタアドレスを物理セクタアドレスに
変換するためのテーブルである。論理セクタアドレス
(LSA:Logical Sector Address)とはホスト1が半
導体ディスク装置2に指定するセクタアドレスのことで
ある。また、物理セクタアドレス(PSA:Physical S
ector Address)とは、半導体ディスク装置2内で使用
されるフラッシュメモリ8のアドレスのことである。
【0009】フラッシュ制御回路6は、複雑でないフラ
ッシュメモリ8のデータ処理を行う。単純なデータの受
け渡し等はフラッシュ制御回路6で行い、他の処理はC
PU4で行う。データ入出力用セクタバッファ7は、デ
ータをフラッシュメモリ8からインターフェース回路3
を通して出力、あるいはインターフェース回路3を通し
てフラッシュメモリ8にデータを入力する際に用いられ
る。
【0010】図15において、アドレス変換テーブル5
は、論理セクタアドレス(LSA)格納部と物理セクタ
アドレス(PSA)格納部とから構成される。
【0011】LSA格納部には論理セクタアドレスが保
存されている。内容は固定されている。なお、実際は、
論理セクタアドレスがホスト1から送られてくると、論
理セクタアドレスデータに基づき変換テーブル用の揮発
性RAMのアドレスピンに電圧がかかりPSAデータが
でてくる構造になっている。説明しやすくするために、
PSA格納部との対応でLSA格納部があるとしてい
る。PSA格納部には任意の(図では1〜n)フラッシ
ュメモリ8のセクタ番号が保存される。このアドレス変
換テーブル5を用いることで、ホスト1が指定する論理
セクタアドレスに左右されることなく内部管理に都合の
よい物理セクタアドレスにデータを保存することができ
る。このアドレス変換テーブル5は、頻繁に書き込み・
消去されるのでSRAMやDRAMなどの揮発性のRA
Mで構成するのが一般的である。
【0012】このアドレス変換テーブル5の容量は、次
のような条件のとき以下のようになる。20メガバイト
(MByte)のフラッシュメモリ8を使用し、データの入
出力単位(セクタ)を512バイト(Byte)とすると、
半導体ディスク装置2内のセクタ数は次のようになる。 半導体ディスク装置2内のセクタ数=20メガバイト÷
512バイト=40960セクタ
【0013】次に、「40960」を2進数表現する際
に必要なビット数は、ln40960÷ln2=15.
3となり、16桁必要となる。
【0014】これにより必要なアドレス変換テーブル5
の容量は、40960×16=655360ビットとな
り、最終的に、80キロバイト(KByte)必要となる。
【0015】図16において、フラッシュメモリ8は、
複数の消去ブロック9と、予備の複数の消去ブロック9
とから構成される。
【0016】フラッシュメモリ8は電気的に書き込み消
去可能な不揮発メモリである。不揮発であるためDRA
M・SRAMのように電池によるバックアップの必要も
なく、また電気的にデータの消去が可能なのでEPRO
Mと違いボードから外すことなくデータを変更すること
ができる。1セルで1ビットのデータを記憶することが
できるため、EERROMより安価にメモリを作製する
ことができる。以上の点がフラッシュメモリ8の長所に
あたる。短所としては、消去回数に1万回〜10万回程
度の上限があること、書き込みの際には必ず消去動作が
必要なこと(このためデータがすでに書き込まれている
セルに上書きすることは不可能)、消去単位は数K〜数
十KByteのブロック単位であること、等が上げられる。
【0017】図17において、1つの消去ブロック9
は、先頭に消去ブロック情報格納領域10と、複数のデ
ータ格納領域11と、データ格納領域11毎のLSA格
納領域12とを有する。
【0018】消去ブロック情報格納領域10に現在のブ
ロック消去回数を格納しておく。データ格納領域11
は、通常512バイト(=1セクタ)の大きさである。
LSA格納領域12はセクタごとに存在し、データを書
き込む際にホスト1が指定したLSAを格納しておく。
これは、論理セクタ/物理セクタアドレス変換テーブル
5を揮発性RAMで構成した際、電源オフと同時にデー
タが消えてしまうためである。電源をオンにしたときに
全てのセクタのLSA格納領域12を検索し揮発性RA
Mテーブル5を再構築する際に用いられる。
【0019】つぎに、従来の半導体ディスク装置の動作
について図18、図19及び図20を参照しながら説明
する。図18は、従来の半導体ディスク装置の読み出し
動作を説明するための図である。また、図19及び図2
0は、従来の半導体ディスク装置の書き込み動作を説明
するための図である。
【0020】フラッシュメモリ8を用いた半導体ディス
ク装置2はハードディスク装置とは異なり、データを上
書きすることができない。従って、ホスト1から送られ
てくるデータの論理セクタアドレスとそのデータをフラ
ッシュメモリ8のどの物理セクタアドレスに書き込むか
を示すアドレス変換テーブル5を揮発性RAM内に記憶
させておくことが行われる。このアドレス変換テーブル
5を用いることでLSAに左右されることなくフラッシ
ュメモリ8の記憶領域を有効に使用することが可能とな
る。
【0021】まず、半導体ディスク装置2からのデータ
の読み出し動作を図18で説明する。ホスト1は読み出
したいデータのセクタアドレスを半導体ディスク装置2
に送る。ホスト1から送られてくるアドレスデータには
2種類ある。LSA形式とCHS形式である。LSA形
式が1〜nまでの通し番号でセクタを指定するのに対
し、CHS形式はハードディスク装置で使用されるシリ
ンダ・ヘッド・セクタという3つのデータの組み合わせ
でデータ領域を指定する。半導体ディスク装置2内では
LSA/PSAアドレス変換テーブル5を用いるため、
ホスト1からCHS形式のデータが入力された場合は、
例えばインターフェース回路内でLSAに変換し次の作
業に移る。
【0022】CPU4は、アドレス変換テーブル5を用
いてホスト1が指定したLSAをPSAにアドレス変換
する。最後にPSAに対応したフラッシュメモリ8内か
らデータが読み出される。
【0023】例えば、ホスト1が指定したLSAが
「2」であった場合、アドレス変換テーブル5により
「6」というPSAに変換される。これにより、図18
に示すように、「A」というデータが読み出されること
になる。LSA格納領域12にはLSAである「2」が
格納されている。
【0024】次に、半導体ディスク装置2へのデータの
書き込み動作を図19及び図20で説明する。「A」、
「B」、「C」というデータがPSAの「1」、
「3」、「7」に格納されている状態を初期状態とす
る。データを書き込む際に注意しなければならないのは
フラッシュメモリ8はデータの再書き込みができないと
いう点である。上記初期状態の場合、PSA「1」、
「3」、「7」の領域が該当する。
【0025】データが書き込まれていないLSAをホス
ト1が指定してきた場合は、CPU4は、フラッシュメ
モリ8内の適当な空き領域(PSA「2」、「4」〜
「6」、「8」〜「12」)にデータを書き込み、アド
レス変換テーブル5内のデータを更新する。図19は、
LSA「4」へ「D」というデータの書き込みをホスト
が指定した場合の例である。データ「D」とホスト1が
指定したLSAを空き領域PSA「4」に書き込み、ア
ドレス変換テーブル5のLSA「4」に対応したPSA
の部分にPSAの値「4」を書き込む。
【0026】ホスト1から、既にデータが書き込まれて
いる領域への再書き込みが要求された場合(例えば、同
名ファイルの上書き保存)であっても、再書き込みデー
タをフラッシュメモリ8の空き領域に書き込み、アドレ
ス変換テーブル5を更新する。図20は、LSA「2」
のデータを再書き込みした際の結果である。更新データ
「B’」を空き領域PSA「5」に書き込み、アドレス
変換テーブル5のLSA「2」に対応するPSAを
「5」と更新する。なお、PSA「3」が使用済みデー
タであることは、カード内のCPU4は認識しておかな
ければならない。
【0027】
【発明が解決しようとする課題】上述したような従来の
半導体ディスク装置では、アドレス変換テーブル5がセ
クタ(データ管理の最小単位)ごとに1つのPSAを格
納するメモリ領域が必要となるため、フラッシュメモリ
8が大容量になるにつれアドレス変換テーブル5も大容
量となるという問題点があった。
【0028】この発明は、前述した問題点を解決するた
めになされたもので、従来装置のパフォーマンス、つま
り読み出し速度と略同程度の読み出し速度を維持し、か
つメモリ管理用のアドレス変換テーブルの容量を小さく
できる半導体ディスク装置を得ることを目的とする。
【0029】
【課題を解決するための手段】この発明に係る半導体デ
ィスク装置は、当該消去ブロックの消去回数を格納する
消去ブロック情報格納領域と、データを格納する複数の
データ格納領域と、論理セクタアドレスを格納する前記
データ格納領域毎の論理セクタアドレス格納領域とから
構成される消去ブロックを複数有するフラッシュメモリ
と、前記論理セクタアドレスを物理消去ブロック番号へ
変換するためのアドレス変換テーブルと、前記物理消去
ブロック番号に基づいて前記フラッシュメモリ上のデー
タを管理する制御手段とを備えたものである。
【0030】また、この発明に係る半導体ディスク装置
は、前記制御手段が、前記アドレス変換テーブルに基づ
いて入力した論理セクタアドレスを物理消去ブロック番
号へ変換し、前記フラッシュメモリ上の該当物理消去ブ
ロック内で前記入力した論理セクタアドレスに基づいて
最新の該当データ格納領域を捜し出し、前記最新の該当
データ格納領域の内容を読み出すものである。
【0031】さらに、この発明に係る半導体ディスク装
置は、前記制御手段が、該当消去ブロックの上から下へ
連続してデータ格納領域にデータを書き込み、前記書き
込んだデータ格納領域に対応する論理セクタアドレス格
納領域に入力した論理セクタアドレスを書き込むととも
に、前記アドレス変換テーブルの前記入力した論理セク
タアドレスに対応する物理消去ブロック番号格納部に該
当物理消去ブロック番号を書き込むものである。
【0032】
【作用】この発明に係る半導体ディスク装置において
は、当該消去ブロックの消去回数を格納する消去ブロッ
ク情報格納領域と、データを格納する複数のデータ格納
領域と、論理セクタアドレスを格納する前記データ格納
領域毎の論理セクタアドレス格納領域とから構成される
消去ブロックを複数有するフラッシュメモリと、前記論
理セクタアドレスを物理消去ブロック番号へ変換するた
めのアドレス変換テーブルと、前記物理消去ブロック番
号に基づいて前記フラッシュメモリ上のデータを管理す
る制御手段とを備えたので、データ管理用のアドレス変
換テーブルを小さくできる。
【0033】また、この発明に係る半導体ディスク装置
においては、前記制御手段が、前記アドレス変換テーブ
ルに基づいて入力した論理セクタアドレスを物理消去ブ
ロック番号へ変換し、前記フラッシュメモリ上の該当物
理消去ブロック内で前記入力した論理セクタアドレスに
基づいて最新の該当データ格納領域を捜し出し、前記最
新の該当データ格納領域の内容を読み出すので、データ
管理用のアドレス変換テーブルを小さくできる。
【0034】さらに、この発明に係る半導体ディスク装
置においては、前記制御手段が、該当消去ブロックの上
から下へ連続してデータ格納領域にデータを書き込み、
前記書き込んだデータ格納領域に対応する論理セクタア
ドレス格納領域に入力した論理セクタアドレスを書き込
むとともに、前記アドレス変換テーブルの前記入力した
論理セクタアドレスに対応する物理消去ブロック番号格
納部に該当物理消去ブロック番号を書き込むので、デー
タ管理用のアドレス変換テーブルを小さくできる。
【0035】
【実施例】
実施例1.以下、この発明の実施例1の構成について図
1、図2、図3及び図4を参照しながら説明する。図1
は、この発明の実施例1の全体構成を示すブロック図で
ある。図2は、図1のアドレス変換テーブルの内部構成
を示す図である。図3は、図1のフラッシュメモリの内
部構成を示す図である。図4は、図3の消去ブロックの
内部構成を示す図である。なお、各図中、同一符号は同
一又は相当部分を示す。
【0036】図1において、この実施例1に係る半導体
ディスク装置2Aは、インターフェイス回路3と、CP
U4と、アドレス変換テーブル5Aと、フラッシュ制御
回路6Aと、データ入出力用セクタバッファ7と、フラ
ッシュメモリ8Aとを備える。
【0037】従来の半導体ディスク装置2との違いは、
アドレス変換テーブル5Aの容量が小さい点であり、そ
の分、フラッシュメモリ8Aを大きくできる。また、フ
ラッシュ制御回路6Aは、従来のフラッシュ制御回路6
の機能に加えて、ハード的な論理セクタアドレス比較回
路61を含む。さらに、CPU4は、読み出し用と書き
込み用のアドレスポインタを用いてフラッシュメモリ8
A上のデータ管理を行う。すなわち、半導体ディスク装
置2Aは、上記論理セクタアドレス比較回路61と、ア
ドレスポインタとを使用することで、従来と略同程度の
パフォーマンスを維持しながら、アドレス変換テーブル
5Aの容量を小さくできる。なお、この発明に係る制御
手段は、この実施例1では読み出し用と書き込み用のア
ドレスポインタを用いるCPU4と、論理セクタアドレ
ス比較回路61を含むフラッシュ制御回路6Aと、デー
タ入出力用セクタバッファ7とから構成される。
【0038】アドレス変換テーブル5Aは、論理セクタ
アドレスを物理消去ブロック番号に変換するためのテー
ブルである。物理消去ブロック番号(PBN:Physical
Block Number)とは、半導体ディスク装置2A内で使
用されるフラッシュメモリ8Aのブロックアドレスのこ
とである。
【0039】図2において、アドレス変換テーブル5A
は、論理セクタアドレス(LSA)格納部と物理消去ブ
ロック番号(PBN)格納部とから構成される。
【0040】LSA格納部には論理セクタアドレスが保
存されている。内容は固定されている。なお、実際は、
論理セクタアドレスがホスト1から送られてくると、論
理セクタアドレスデータに基づき変換テーブル用の揮発
性RAMのアドレスピンに電圧がかかりPBNデータが
でてくる構造になっている。説明をしやすくするため
に、PBN格納部との対応でLSA格納部があるとして
いる。PBN格納部には任意のフラッシュメモリ8Aの
物理消去ブロック番号が保存される。このアドレス変換
テーブル5Aを用いることで、ホスト1が指定する論理
セクタアドレスに左右されることなく内部管理に都合の
よい物理消去ブロックにデータを保存することができ
る。このアドレス変換テーブル5Aは、頻繁に書き込み
・消去されるのでSRAMやDRAMなどの揮発性のR
AMで構成するのが一般的である。
【0041】ただ、このアドレス変換テーブル5Aで
は、従来と違いLSAのデータからPBNしか解らな
い。例えば、消去ブロックのサイズが64キロバイトの
フラッシュメモリを用いた場合、内部にはおよそ100
前後のセクタ(=512バイト)が存在する(消去ブロ
ック情報格納領域10、LSA格納領域12等がなけれ
ば最大128セクタが存在する)。このため目的のデー
タを検索するための工夫が必要となる。これについては
後述する。
【0042】このアドレス変換テーブル5Aの容量は、
以下のようになる。20メガバイトのフラッシュメモリ
8Aを使用し、1セクタを512バイトとすると、半導
体ディスク装置2A内のセクタ数は従来と同様に409
60となる。しかしながら、アドレス変換テーブル5A
のPBN格納部にはブロック番号を記憶させるので、半
導体ディスク装置2A内のブロック数は、1ブロック
(消去ブロック)を64キロバイトとすると以下のよう
になる。半導体ディスク装置2A内のブロック数=20
メガバイト÷64キロバイト=320ブロック
【0043】次に、「320」を2進数表現する際に必
要なビット数は、ln320÷ln2=8.3となり、
9桁必要となる。これにより必要なアドレス変換テーブ
ル5Aの容量は、40960×9=368640ビット
となり、最終的に、45キロバイト必要となる。これ
は、従来の約1/2である。
【0044】図3において、フラッシュメモリ8Aは、
複数の消去ブロック9Aと、予備の複数の消去ブロック
9Aとから構成される。なお、データ(メモリ)管理の
対象ブロックのサイズが消去単位と同じであるので、消
去ブロックと称する。メインメモリに使用するフラッシ
ュメモリ8Aは、従来と同様ブロック消去型(消去ブロ
ック単位は数K〜数十Kバイト)のフラッシュメモリを
用いる。
【0045】図4において、1つの消去ブロック9A
は、先頭に消去ブロック情報格納領域10と、複数のデ
ータ格納領域11と、データ格納領域11毎のLSA
(論理セクタアドレス)格納領域12と、データ格納領
域11毎の有効データ確認フラグ13とを有する。有効
データ確認フラグ13以外は、従来と同様である。この
有効データ確認フラグ13は、CPU4が有効データ
か、いつでも消去可能な無効データかを区別するための
ものである。有効データは「FF」(1111111
1)、無効データは「00」(00000000)で表
す。なお、逆の表現でもよい。CPU4は、データの上
書きや消去を行った場合、必要なくなったデータ格納領
域11に対応する有効データ確認フラグ13を「FF」
から「00」へ書き換える。
【0046】つぎに、この実施例1の動作について図5
から図13までを参照しながら説明する。図5〜図8
は、この実施例1の書き込み動作を説明するための図で
ある。図9及び図10は、この実施例1の読み出し動作
を説明するための図である。図11及び図12は、この
実施例1の読み出し動作を示すフローチャートである。
図13は、この実施例1の書き込み動作を示すフローチ
ャートである。
【0047】まず、半導体ディスク装置2Aへのデータ
書き込み動作を図5〜図8で説明する。従来との違い
は、1つの消去ブロック内のセクタ(データ格納領域1
1)が全て書き込み済みになるまで他の消去ブロックに
はデータを書き込まないことである。また、データは、
消去ブロックの上から下に連続して書き込む(ランダム
に書き込まない)。これは、「書き込み用アドレスポイ
ンタ」を用い、書き込みの度に1つづつ更新(インクリ
メント)していく。ここで、「アドレスポインタ」と
は、任意の物理セクタアドレス(PSA)を記憶してお
くためのものである。この実施例1では、データの読み
出し時と、書き込み時にそれぞれ1つの「読み出し用ア
ドレスポインタ」、「書き込み用アドレスポインタ」を
使用する。
【0048】半導体ディスク装置2A内のフラッシュメ
モリ8A内にデータが全く無い状態から動作の説明を進
める。このとき、書き込み用アドレスポインタは「1」
を指し示している。データ書き込みの際には、まずホス
ト1から書き込むべきデータと書き込みアドレスが送ら
れてくる。アドレスは、CHS形式の場合が考えられる
ので従来と同様に全てLSA形式に変換する。アドレス
形式情報もホスト1から送られてくるため半導体ディス
ク装置2A側で容易にCHS形式かLSA形式かを区別
することができる。
【0049】LSAがランダムに送られてきても、図5
に示すように、書き込みはPBN「1」から行う。例え
ば、ホスト1からLSA「3」にデータ「A」の書き込
み要求があった場合、CPU4は書き込み用アドレスポ
インタに従い、PBN「1」の先頭のデータ格納領域1
1にデータ「A」を書き込み、対応する論理セクタアド
レス格納領域12にLSA「3」を書き込む。そして、
書き込みアドレスポインタを更新する。つまり、書き込
みアドレスポインタを「2」とする。さらに、アドレス
変換テーブル5AのLSA「3」に対応するPBN格納
部に「1」を書き込む。なお、図5〜図9において、フ
ラッシュメモリ8Aの消去ブロック9Aは、説明しやす
いようにデータ格納領域11を3つとしている。
【0050】図6は、クリーンな消去ブロックがあと1
ブロックになった状態である。このとき、書き込み用ア
ドレスポインタは、「1」→「2」→「3」→「…」→
「8」→「9」と更新されて、PBN「4」の先頭のデ
ータ格納領域11である「10」を指し示している。こ
こで、これ以上書き込むと、クリーンな消去ブロックを
確保することができないためフラッシュメモリ8Aの消
去ブロックのクリーニングを行う。
【0051】CPU4は、全ての消去ブロック内の状態
を確認し消去に最適なブロックを決定する。最適なブロ
ックとは、有効データ確認フラグ13に基づく、有効な
データがあまり存在しない消去ブロックや、消去ブロッ
ク情報格納領域10の内容に基づく、消去回数が少ない
消去ブロックなどである。図6では、各消去ブロックの
消去回数は「0」で同じであり、PBN「1」が有効な
データが少ないため、つまりPBN「1」のデータ
「A’」はデータ「A」の上書きを意味しているため、
このブロックを消去し、クリーンなセクタを確保するこ
とにする。
【0052】まず、図7に示すように、有効なデータを
クリーンなPBN「4」に退避し、次にアドレス変換テ
ーブル5Aを更新する。その後、図8に示すように、P
BN「1」をブロック消去し、ブロック消去回数を
「1」だけ増やす。この作業により、クリーンなブロッ
ク1つと、クリーンなセクタ1つが確保されたことにな
る。このとき、書き込み用アドレスポインタは「12」
を指し示している。
【0053】次に、半導体ディスク装置2Aからのデー
タ読み出し動作を図9及び図10で説明する。まず、ホ
スト1から送られてきたアドレスをLSA形式に統一す
る。次に、アドレス変換テーブル5Aを用いてLSAか
らPBNを割り出す。
【0054】次に、得られたPBN内の論理セクタアド
レス格納領域12に格納されたLSAを下から順に確認
していく。この際、図10に示すように、フラッシュ制
御回路6A内の論理セクタアドレス比較回路61で、ホ
スト1から送られてきたLSAと、該当PBN内の論理
セクタアドレス格納領域12に格納されたLSAとを比
較する。一致したときのデータ格納領域11(セクタ)
の内容が読み出すべきデータである。このとき、読み出
し用アドレスポインタに一致したときのPSAにプラス
1した値をセットする。読み出しデータが複数のセクタ
の場合、次の読み出し時は読み出し用アドレスポインタ
が指し示すセクタアドレスからデータを読み出す。
【0055】例えば、ホスト1からLSAが「2」とい
うデータが送られてきた場合、図9に示すように、アド
レス変換テーブル5Aにより、PBN「3」を得る。次
に、PBN「3」の消去ブロック内の論理セクタアドレ
スを下から順に確認する。一番下のLSAは「6」であ
るから該当せず。次に、次のLSAが「2」であるから
一致する。従って、読み出すべきデータは「H」という
ことになる。このとき、読み出し用アドレスポインタは
「9」である。
【0056】従来と違い、消去ブロックが大きくなると
検索に要する時間がかかることになる。しかし、一般に
データは512バイト(1セクタ)以上のサイズのもの
が多いため、初めてのデータ検索には、1つの消去ブロ
ック内に約100セクタのデータエリアがあるため、最
高100ステップ程度の検索を必要とするが、2回目以
降は前回読み出したセクタの次のセクタにデータがある
可能性が極めて高いため、前回読み出したセクタの次の
セクタのアドレスを読み出し用アドレスポインタに記憶
しておくことで検索回数を大幅に減少させることができ
る。
【0057】つづいて、半導体ディスク装置2Aからの
データ読み出し動作を図11及び図12のフローチャー
トで説明する。1〜数十のセクタからなるファイル(デ
ータ)を扱う場合、ファイルの先頭のセクタを読み出す
際は読み出し用アドレスポインタが決定していないの
で、図11の検索処理を行う。また、上記ファイルの次
のセクタのデータを読み出すときには読み出し用アドレ
スポインタが設定されているので、図12の処理を行
う。図11の検索処理との違いは、図12の処理はホス
ト1から読み出すべきデータのアドレス(LSA)を受
け取るが、ホスト1からのLSAを使用することなくデ
ータを読み出すことである。図11の検索処理は、ファ
イルの先頭セクタのデータを読み出す場合の他に、読み
出し用アドレスポインタが消去ブロック内の最終セクタ
アドレスまできた場合にも行う。これは、次に読み出す
セクタが存在する消去ブロックが解らなくなるためであ
る。CPU4は、ファイル名等に基づきファイルの先頭
とそれ以外を認識し、また、ブロックサイズ等に基づき
最終セクタアドレスを認識する。
【0058】初めに、ホスト1から読み出すべきデータ
のセクタ情報を受け取る(ステップ20)。これはLS
Aの形式かもしくはCHS形式で送られてくる。LSA
形式に統一するためにCHSデータ形式で送られてきた
場合はLSA形式に変換する(ステップ21〜22)。
この変換は、半導体ディスク装置2A内のCPU4を用
いてもかまわないし、専用の回路を半導体ディスク装置
内部に持たせてもかまわない。
【0059】次に、LSAをPBNに変換する(ステッ
プ23)。これは、アドレス変換テーブル5Aを用い
る。次に、決定したPBN内の論理セクタアドレス格納
領域12内に格納されたLSAを読み出す。この読み出
したLSAと、ホスト1からのLSAとを論理セクタア
ドレス比較回路61で比較し、不一致ならば次の論理セ
クタアドレス格納領域12内に格納されたLSAを読み
出し、上記PBN内を下から検索し、同様の比較を一致
するまで行う。なお、検索の方向は、場合によっては上
から行ってもよい(ステップ24〜26)。
【0060】LSA同士が一致したら、対応するデータ
格納領域11からデータを読み出す(ステップ27)。
そして、読み出し用アドレスポインタに、上記のデータ
を読み出した次のセクタアドレスをセットする(ステッ
プ28)。
【0061】つづいて、次のセクタアドレスのデータを
読み出す場合は以下のとおりである。ステップ40〜4
2は、上記ステップ20〜22と同様である。これは、
インターフェースの互換性を保つために、ホスト1から
のLSAを受け取り、処理した形にしなければならない
からである。
【0062】次に、読み出し用アドレスポインタが指し
示すセクタアドレスからデータを読み出す(ステップ4
3)。そして、読み出し用アドレスポインタに「1」を
加算して更新する。ある1つのファイルを読み出す場
合、従来の半導体ディスク装置ではファイルを構成して
いるセクタ数だけアドレス変換テーブル5を参照する。
しかし、この実施例1では、初回の消去ブロック内のデ
ータ検索に時間をとるものの、それ以降のセクタに関し
ては読み出し用アドレスポインタに従ってデータを読み
出すため、2つ目以降のセクタに関しては上記従来装置
よりも高速に処理できる。
【0063】また、読み出し速度を犠牲にし、データ読
み出しの信頼度を上げる場合には、ステップ43の次
で、ホスト1から受け取ったLSAと、読み出し用アド
レスポインタが指し示すセクタのLSA格納領域12内
のLSAとを比較して確認する。なお、ここで不一致の
ときはステップ23以降の検索処理を行う。
【0064】つづいて、半導体ディスク装置2Aへのデ
ータ書き込み動作を図13のフローチャートで説明す
る。図13のステップ30〜32は、図11のステップ
20〜22と同様であるので説明を省略する。まず、書
き込み用アドレスポインタの指示に基づき空きセクタを
確認する(ステップ33)。
【0065】空きセクタがある場合は、そこにデータを
書き込むとともに、アドレス変換テーブル5Aを更新す
る(ステップ34〜35)。つまり、データを書き込ん
だPBNを該当するLSAのPBN格納部に保存する。
【0066】ステップ34において、書き込み用アドレ
スポインタに基づき空きセクタがない場合には以下のよ
うに処理する(ステップ36〜38)。まず、消去回数
や無効データ数等に基づき消去するブロックを決定す
る。次に、有効データを空きブロックにコピーする。そ
の後、決定したブロックを消去し、消去したブロックの
消去回数を更新する。そして、ステップ35に進む。
【0067】データ更新の場合は、旧データの有効デー
タ確認フラグ13を「FF」から「00」へ更新する。
また、書き込み用アドレスポインタを更新する(ステッ
プ39)。この実施例1では連続してデータを書き込む
ため、書き込み用アドレスポインタはデータ書き込み終
了後、次のセクタアドレスを指し示すことになる。な
お、1つの消去ブロック内のセクタ全てがデータで埋ま
ったときは、次に書き込むべき消去ブロックをCPU4
が決定し指し示すセクタアドレスを決める。例えば、複
数の空きの(クリーンな)消去ブロックが存在する場
合、CPU4は、消去回数等に基づき次に書き込むべき
空きの消去ブロックを決定する。
【0068】この実施例1は、従来の半導体ディスクカ
ード(装置)の読み出し速度等のパフオーマンスを落と
すことなく、読み出し用及び書き込み用アドレスポイン
タと論理セクタアドレス比較回路61を使用することに
より、アドレス変換テーブル5Aの容量を小さくするこ
とができる。アドレス変換テーブル5Aの容量を小さく
することで、無理なく半導体ディスクカードの大容量化
を進めることができる。従来のアドレス変換テーブル5
を用いると20MBの半導体ディスクで80KBのサイ
ズが、40MBの半導体ディスクで160KB(1.2
5Mbit)のサイズが必要となる。これがおよそ1/
2のサイズに小さくなれば揮発性RAMにかかっていた
コストを削減することができ、またアドレス変換テーブ
ル用揮発性RAMメモリが搭載されていたスペースにフ
ラッシュメモリを増設して搭載できるため半導体ディス
ク装置の容量を増大させることができる。
【0069】
【発明の効果】この発明に係る半導体ディスク装置は、
以上説明したとおり、当該消去ブロックの消去回数を格
納する消去ブロック情報格納領域と、データを格納する
複数のデータ格納領域と、論理セクタアドレスを格納す
る前記データ格納領域毎の論理セクタアドレス格納領域
とから構成される消去ブロックを複数有するフラッシュ
メモリと、前記論理セクタアドレスを物理消去ブロック
番号へ変換するためのアドレス変換テーブルと、前記物
理消去ブロック番号に基づいて前記フラッシュメモリ上
のデータを管理する制御手段とを備えたので、データ管
理用のアドレス変換テーブルを小さくできるという効果
を奏する。
【0070】また、この発明に係る半導体ディスク装置
は、以上説明したとおり、前記制御手段が、前記アドレ
ス変換テーブルに基づいて入力した論理セクタアドレス
を物理消去ブロック番号へ変換し、前記フラッシュメモ
リ上の該当物理消去ブロック内で前記入力した論理セク
タアドレスに基づいて最新の該当データ格納領域を捜し
出し、前記最新の該当データ格納領域の内容を読み出す
ので、データ管理用のアドレス変換テーブルを小さくで
きるという効果を奏する。
【0071】さらに、この発明に係る半導体ディスク装
置は、以上説明したとおり、前記制御手段が、該当消去
ブロックの上から下へ連続してデータ格納領域にデータ
を書き込み、前記書き込んだデータ格納領域に対応する
論理セクタアドレス格納領域に入力した論理セクタアド
レスを書き込むとともに、前記アドレス変換テーブルの
前記入力した論理セクタアドレスに対応する物理消去ブ
ロック番号格納部に該当物理消去ブロック番号を書き込
むので、データ管理用のアドレス変換テーブルを小さく
できるという効果を奏する。
【図面の簡単な説明】
【図1】 この発明の実施例1の全体構成を示すブロッ
ク図である。
【図2】 この発明の実施例1のアドレス変換テーブル
の構成を示す図である。
【図3】 この発明の実施例1のフラッシュメモリの構
成を示す図である。
【図4】 この発明の実施例1の消去ブロックの内部構
成を示す図である。
【図5】 この発明の実施例1のデータ書き込み動作を
説明するための図である。
【図6】 この発明の実施例1のデータ書き込み動作を
説明するための図である。
【図7】 この発明の実施例1のデータ書き込み動作を
説明するための図である。
【図8】 この発明の実施例1のデータ書き込み動作を
説明するための図である。
【図9】 この発明の実施例1のデータ読み出し動作を
説明するための図である。
【図10】 この発明の実施例1のデータ読み出し動作
を説明するための図である。
【図11】 この発明の実施例1のデータ読み出し動作
を示すフローチャートである。
【図12】 この発明の実施例1のデータ読み出し動作
を示すフローチャートである。
【図13】 この発明の実施例1のデータ書き込み動作
を示すフローチャートである。
【図14】 従来の半導体ディスク装置の全体構成を示
すブロック図である。
【図15】 従来の半導体ディスク装置のアドレス変換
テーブルの構成を示す図である。
【図16】 従来の半導体ディスク装置のフラッシュメ
モリの構成を示す図である。
【図17】 従来の半導体ディスク装置のフラッシュメ
モリ内の消去ブロックの構成を示す図である。
【図18】 従来の半導体ディスク装置のデータ読み出
し動作を説明するための図である。
【図19】 従来の半導体ディスク装置のデータ書き込
み動作を説明するための図である。
【図20】 従来の半導体ディスク装置のデータ書き込
み動作を説明するための図である。
【符号の説明】
1 ホスト、2A 半導体ディスク装置、3 インター
フェース回路、4 CPU、5A アドレス変換テーブ
ル、6A フラッシュ制御回路、61 論理セクタアド
レス比較回路、7 データ入出力用セクタバッファ、8
A フラッシュメモリ。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 当該消去ブロックの消去回数を格納する
    消去ブロック情報格納領域と、データを格納する複数の
    データ格納領域と、論理セクタアドレスを格納する前記
    データ格納領域毎の論理セクタアドレス格納領域とから
    構成される消去ブロックを複数有するフラッシュメモ
    リ、前記論理セクタアドレスを物理消去ブロック番号へ
    変換するためのアドレス変換テーブル、並びに前記物理
    消去ブロック番号に基づいて前記フラッシュメモリ上の
    データを管理する制御手段を備えたことを特徴とする半
    導体ディスク装置。
  2. 【請求項2】 前記制御手段は、前記アドレス変換テー
    ブルに基づいて入力した論理セクタアドレスを物理消去
    ブロック番号へ変換し、前記フラッシュメモリ上の該当
    物理消去ブロック内で前記入力した論理セクタアドレス
    に基づいて最新の該当データ格納領域を捜し出し、前記
    最新の該当データ格納領域の内容を読み出すことを特徴
    とする請求項1記載の半導体ディスク装置。
  3. 【請求項3】 前記制御手段は、該当消去ブロックの上
    から下へ連続してデータ格納領域にデータを書き込み、
    前記書き込んだデータ格納領域に対応する論理セクタア
    ドレス格納領域に入力した論理セクタアドレスを書き込
    むとともに、前記アドレス変換テーブルの前記入力した
    論理セクタアドレスに対応する物理消去ブロック番号格
    納部に該当物理消去ブロック番号を書き込むことを特徴
    とする請求項1記載の半導体ディスク装置。
JP2828795A 1995-02-16 1995-02-16 半導体ディスク装置 Expired - Lifetime JP3706167B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2828795A JP3706167B2 (ja) 1995-02-16 1995-02-16 半導体ディスク装置
US08/598,535 US5740396A (en) 1995-02-16 1996-02-08 Solid state disk device having a flash memory accessed by utilizing an address conversion table to convert sector address information to a physical block number
GB9602595A GB2298063B (en) 1995-02-16 1996-02-08 Semiconductor disk device
KR1019960003774A KR100218871B1 (ko) 1995-02-16 1996-02-15 반도체 디스크 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2828795A JP3706167B2 (ja) 1995-02-16 1995-02-16 半導体ディスク装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005176388A Division JP3976764B2 (ja) 2005-06-16 2005-06-16 半導体ディスク装置

Publications (2)

Publication Number Publication Date
JPH08221223A true JPH08221223A (ja) 1996-08-30
JP3706167B2 JP3706167B2 (ja) 2005-10-12

Family

ID=12244404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2828795A Expired - Lifetime JP3706167B2 (ja) 1995-02-16 1995-02-16 半導体ディスク装置

Country Status (4)

Country Link
US (1) US5740396A (ja)
JP (1) JP3706167B2 (ja)
KR (1) KR100218871B1 (ja)
GB (1) GB2298063B (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366423A (ja) * 2001-06-04 2002-12-20 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2007280108A (ja) * 2006-04-07 2007-10-25 Sony Corp 記憶媒体制御装置、記憶媒体制御方法、プログラム
JP2008004117A (ja) * 2001-01-19 2008-01-10 Sandisk Corp 不揮発性メモリにおける部分的ブロックデータのプログラミング動作および読出し動作
WO2009110141A1 (en) * 2008-03-07 2009-09-11 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
US8230156B2 (en) 1997-08-08 2012-07-24 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
US8812767B2 (en) 2011-03-08 2014-08-19 Fujitsu Semiconductor Limited Method of controlling memory, memory control circuit, storage device and electronic device

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2608995A1 (fr) * 1986-12-29 1988-07-01 Roche Kerandraon Oliver Dispositif porteur d'une camera orientable embarquee dont la pre-optique est auto-nettoyable
DE69024086T2 (de) * 1989-04-13 1996-06-20 Sundisk Corp EEprom-System mit Blocklöschung
US6978342B1 (en) * 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US5838614A (en) * 1995-07-31 1998-11-17 Lexar Microsystems, Inc. Identification and verification of a sector within a block of mass storage flash memory
US5987478A (en) * 1995-10-31 1999-11-16 Intel Corporation Virtual small block file manager for flash memory array
US5978808A (en) * 1995-12-27 1999-11-02 Intel Corporation Virtual small block file manager for flash memory array
JPH09185551A (ja) * 1996-01-08 1997-07-15 Mitsubishi Electric Corp 半導体記憶装置
GB9606928D0 (en) * 1996-04-02 1996-06-05 Memory Corp Plc Memory devices
JP3197815B2 (ja) * 1996-04-15 2001-08-13 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 半導体メモリ装置及びその制御方法
JPH09330598A (ja) * 1996-06-10 1997-12-22 Mitsubishi Electric Corp 記憶装置及びその特性劣化状態判定方法
JPH10124381A (ja) * 1996-10-21 1998-05-15 Mitsubishi Electric Corp 半導体記憶装置
JPH11203191A (ja) * 1997-11-13 1999-07-30 Seiko Epson Corp 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体
KR100251962B1 (ko) * 1997-12-29 2000-04-15 윤종용 웹 비디오 폰에서 메모리 스와핑 방법
JP3544476B2 (ja) * 1998-09-11 2004-07-21 富士通株式会社 メモリ管理テーブル作成方法
GB9903490D0 (en) * 1999-02-17 1999-04-07 Memory Corp Plc Memory system
US6148354A (en) 1999-04-05 2000-11-14 M-Systems Flash Disk Pioneers Ltd. Architecture for a universal serial bus-based PC flash disk
JP2001056760A (ja) * 1999-08-19 2001-02-27 Murata Mfg Co Ltd データ処理装置
CN1088218C (zh) * 1999-11-14 2002-07-24 邓国顺 用于数据处理***的快闪电子式外存储方法及其装置
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US6938144B2 (en) 2001-03-22 2005-08-30 Matsushita Electric Industrial Co., Ltd. Address conversion unit for memory device
US6711663B2 (en) * 2001-11-15 2004-03-23 Key Technology Corporation Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
KR100449708B1 (ko) * 2001-11-16 2004-09-22 삼성전자주식회사 플래시 메모리 관리방법
US6704852B2 (en) * 2001-11-16 2004-03-09 Key Technology Corporation Control device applicable to flash memory card and method for building partial lookup table
US6675281B1 (en) 2002-01-22 2004-01-06 Icreate Technologies Corporation Distributed mapping scheme for mass storage system
US6732222B1 (en) * 2002-02-01 2004-05-04 Silicon Motion, Inc. Method for performing flash memory file management
US6839826B2 (en) 2002-02-06 2005-01-04 Sandisk Corporation Memory device with pointer structure to map logical to physical addresses
US20060143365A1 (en) * 2002-06-19 2006-06-29 Tokyo Electron Device Limited Memory device, memory managing method and program
US20040128430A1 (en) * 2002-12-30 2004-07-01 Rudelic John C. Accessing data from non-volatile memories
US7058755B2 (en) * 2003-09-09 2006-06-06 Ballard Power Systems Corporation EEPROM emulation in flash memory
KR100526188B1 (ko) * 2003-12-30 2005-11-04 삼성전자주식회사 플래시 메모리의 주소 사상 방법, 사상 정보 관리 방법 및상기 방법을 이용한 플래시 메모리
JP4751037B2 (ja) * 2004-06-22 2011-08-17 株式会社東芝 メモリカード
US20060015866A1 (en) * 2004-07-16 2006-01-19 Ang Boon S System installer for a reconfigurable data center
US7421575B2 (en) * 2004-07-16 2008-09-02 Hewlett-Packard Development Company, L.P. Configuring a physical platform in a reconfigurable data center
US20060015589A1 (en) * 2004-07-16 2006-01-19 Ang Boon S Generating a service configuration
US20080250188A1 (en) * 2004-12-22 2008-10-09 Matsushita Electric Industrial Co., Ltd. Memory Controller, Nonvolatile Storage, Nonvolatile Storage System, and Memory Control Method
US8341371B2 (en) * 2005-01-31 2012-12-25 Sandisk Il Ltd Method of managing copy operations in flash memories
WO2006093201A1 (ja) * 2005-03-03 2006-09-08 Matsushita Electric Industrial Co., Ltd. メモリモジュール、メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びメモリの読み書き方法
JP2006285669A (ja) * 2005-03-31 2006-10-19 Toshiba Corp ホスト機器
JP5162846B2 (ja) * 2005-07-29 2013-03-13 ソニー株式会社 記憶装置、コンピュータシステム、および記憶システム
US20080071968A1 (en) * 2006-09-18 2008-03-20 Phison Electronics Corp. Method of managing blocks fo flash memory suitable for flexible correspondence between logic block and physical block
US7515500B2 (en) * 2006-12-20 2009-04-07 Nokia Corporation Memory device performance enhancement through pre-erase mechanism
KR100881597B1 (ko) * 2007-02-02 2009-02-03 지인정보기술 주식회사 읽기 요청 처리 시스템 및 방법
JP4691123B2 (ja) 2008-03-01 2011-06-01 株式会社東芝 メモリシステム
US20090228641A1 (en) * 2008-03-07 2009-09-10 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
CN102063379B (zh) * 2010-12-28 2015-01-07 天津市亚安科技股份有限公司 一种flash存储器的数据存储方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6379196A (ja) * 1987-09-03 1988-04-09 Toshiba Corp 電子装置のアクセス方式
JPH0512125A (ja) * 1991-07-04 1993-01-22 Nec Corp アドレス変換方式
JPH0527924A (ja) * 1991-07-12 1993-02-05 Internatl Business Mach Corp <Ibm> 半導体メモリを用いた外部記憶システム及びその制御方法
JPH05258585A (ja) * 1992-03-16 1993-10-08 Ricoh Co Ltd ファイル装置
WO1994020906A1 (en) * 1993-03-08 1994-09-15 M-Systems Ltd. Flash file system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW261687B (ja) * 1991-11-26 1995-11-01 Hitachi Seisakusyo Kk
US5337275A (en) * 1992-10-30 1994-08-09 Intel Corporation Method for releasing space in flash EEPROM memory array to allow the storage of compressed data
JP3641280B2 (ja) * 1992-10-30 2005-04-20 インテル・コーポレーション フラッシュeepromアレイのクリーン・アップすべきブロックを決定する方法
US5459850A (en) * 1993-02-19 1995-10-17 Conner Peripherals, Inc. Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks
US5465338A (en) * 1993-08-24 1995-11-07 Conner Peripherals, Inc. Disk drive system interface architecture employing state machines
US5473765A (en) * 1994-01-24 1995-12-05 3Com Corporation Apparatus for using flash memory as a floppy disk emulator in a computer system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6379196A (ja) * 1987-09-03 1988-04-09 Toshiba Corp 電子装置のアクセス方式
JPH0512125A (ja) * 1991-07-04 1993-01-22 Nec Corp アドレス変換方式
JPH0527924A (ja) * 1991-07-12 1993-02-05 Internatl Business Mach Corp <Ibm> 半導体メモリを用いた外部記憶システム及びその制御方法
JPH05258585A (ja) * 1992-03-16 1993-10-08 Ricoh Co Ltd ファイル装置
WO1994020906A1 (en) * 1993-03-08 1994-09-15 M-Systems Ltd. Flash file system

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230156B2 (en) 1997-08-08 2012-07-24 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
US8756401B2 (en) 1997-08-08 2014-06-17 Kabushiki Kaisha Toshiba Method for controlling non-volatile semiconductor memory system
JP2008004117A (ja) * 2001-01-19 2008-01-10 Sandisk Corp 不揮発性メモリにおける部分的ブロックデータのプログラミング動作および読出し動作
JP2008226254A (ja) * 2001-01-19 2008-09-25 Sandisk Corp 不揮発性メモリにおける部分的ブロックデータのプログラミング動作および読出し動作
US7657702B2 (en) 2001-01-19 2010-02-02 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US7818490B2 (en) 2001-01-19 2010-10-19 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US7970987B2 (en) 2001-01-19 2011-06-28 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US8316177B2 (en) 2001-01-19 2012-11-20 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
JP2002366423A (ja) * 2001-06-04 2002-12-20 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2007280108A (ja) * 2006-04-07 2007-10-25 Sony Corp 記憶媒体制御装置、記憶媒体制御方法、プログラム
WO2009110141A1 (en) * 2008-03-07 2009-09-11 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
US8812767B2 (en) 2011-03-08 2014-08-19 Fujitsu Semiconductor Limited Method of controlling memory, memory control circuit, storage device and electronic device

Also Published As

Publication number Publication date
GB2298063B (en) 1997-04-02
JP3706167B2 (ja) 2005-10-12
KR100218871B1 (ko) 1999-09-01
KR960032163A (ko) 1996-09-17
GB9602595D0 (en) 1996-04-10
US5740396A (en) 1998-04-14
GB2298063A (en) 1996-08-21

Similar Documents

Publication Publication Date Title
JPH08221223A (ja) 半導体ディスク装置
JPH08212019A (ja) 半導体ディスク装置
US5924113A (en) Direct logical block addressing flash memory mass storage architecture
US7552311B2 (en) Memory device with preread data management
KR100725390B1 (ko) 수정 빈도를 고려하여 데이터를 비휘발성 캐쉬부에저장하는 장치 및 방법
US6978342B1 (en) Moving sectors within a block of information in a flash memory mass storage architecture
US7127551B2 (en) Flash memory management method
US6145051A (en) Moving sectors within a block of information in a flash memory mass storage architecture
US6134151A (en) Space management for managing high capacity nonvolatile memory
US6477632B1 (en) Storage device and accessing method
JPH08137634A (ja) フラッシュディスクカード
US20040085849A1 (en) Flash memory, and flash memory access method and apparatus
JP2009525511A (ja) 多段階誤り訂正方法及び装置
JPH08328762A (ja) 半導体ディスク装置及びそのメモリ管理方法
JP3421581B2 (ja) 不揮発性半導体メモリを用いた記憶装置
JP3976764B2 (ja) 半導体ディスク装置
JP2000181784A (ja) 書き換え可能な不揮発性記憶装置
JP2000122909A (ja) 不揮発性メモリを使用した外部記憶装置
JP2009080926A (ja) 記憶装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040224

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050218

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050616

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050621

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: 20050726

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050728

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: 20080805

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090805

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090805

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100805

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110805

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110805

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110805

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20120805

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120805

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130805

Year of fee payment: 8

EXPY Cancellation because of completion of term