JP2008016003A - メモリー格納装置及びその読み書き方法 - Google Patents

メモリー格納装置及びその読み書き方法 Download PDF

Info

Publication number
JP2008016003A
JP2008016003A JP2006286287A JP2006286287A JP2008016003A JP 2008016003 A JP2008016003 A JP 2008016003A JP 2006286287 A JP2006286287 A JP 2006286287A JP 2006286287 A JP2006286287 A JP 2006286287A JP 2008016003 A JP2008016003 A JP 2008016003A
Authority
JP
Japan
Prior art keywords
address
memory
data
page
comparison 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.)
Pending
Application number
JP2006286287A
Other languages
English (en)
Inventor
Kito Cho
▲奇▼棟 張
Chia-Wei Hou
嘉偉 后
Kuo-Hsiang Hsu
國祥 徐
Wen-Hao Cheng
文豪 鄭
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.)
Alcor Micro Corp
Original Assignee
Alcor Micro 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 Alcor Micro Corp filed Critical Alcor Micro Corp
Publication of JP2008016003A publication Critical patent/JP2008016003A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】フラッシュ・メモリーの読み書き機能を向上できるメモリー格納装置及びその読み書き方法を提供する。
【解決手段】このメモリー格納装置の読み書き方法は、先ずフラッシュ・メモリーの対応するロジック・ブロックを、少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域として定義し、且つ外部システムとの間におけるトランスファーするデータに対し、それぞれ特殊なデータ内容および一般のデータ内容を処理するが、特殊なデータ管理領域はダイナミック偏差値の書込み方式を採用し、そして一般のデータ管理領域は同じ偏差値の書込み方式を採用する。これにより、特殊なデータ管理領域は、外部システムが常に更新を行うことにより頻繁にデータを移す必要がある事態を招くのを避けることができる。
【選択図】図5

Description

本発明は、メモリー格納装置及びその読み書き方法に関し、特に読み書き効果を向上するように用いられるメモリー格納装置及びその方法を指す。
近年、コンピューター(Computer),通信(Communication)及びコンシューマー・エレクトロニクス(ConsumerElectronics)などの3C産業の快速な発展から、各製品の中では、内蔵のフラッシュ・メモリーを介し或いは外部のメモリー・カードを読み取ってデータを格納する媒体とすることが既に必要な機能となっている。然しながらユーザーがデータにアクセスする回数が頻繁となり、またデータにアクセスする量が日々増加するのに伴い、読み書きの格納媒体における装置の速度も、ユーザーが製品を選択・購買する際における重要な参考点となっている。
フラッシュ・メモリーは小体積,大容量,電力の節約,不揮発性と耐震などの多数の利点を具備するが、ハードウェアの電気的な二つの制限、即ち直接オーバーライトできない及び抹消(Erase)できないという制限を具する。直接オーバーライトできないのは、新たなデータを格納する前に、先ず元の位置のデータ・ブロックを抹消した後に、新たなデータを書き込み直す必要があり、そして運算を抹消し且つ全てのメモリー・ユニットを設定し直すのに必要な時間が、読取り又は書込みの運算時間よりも長くなり、例えばToshiba TH58NVG1S3AFT05 2Gbitを例とすると、その読取りの時間が50nsで、書込みの速度が200usで、そして抹消の時間が2msである。さらに新たな使用可能なフリー・スペース(Available freespace;即時使用可能な空間)は、既に予め抹消された後におけるブロックに作り上げられる必要がある。
従来技術のフラッシュ・メモリーのアクセスの構成模式図である図1を参照すると、図面に示すように、ホスト・コンピューター・エンド(Host)を代表する外部システム10がロジック・ブロック・アドレス(LogicalBlock Address;LBA)を制御ユニット20へ送り出した後に、制御ユニット20がフラッシュ・メモリー30との疎通を行う時に、一つのロジック/実体アドレスの対照表21を介して、前記ロジック・ブロック・アドレス及びそのフラッシュ・メモリー30の中に対応する実体アドレス(Physical Block Address;PBA)を記録することにより、毎度データをアクセスする度に相対応するロジック・アドレスを取得するために最初から最後まで1回シークする必要を避ける。同時に従来技術のフラッシュ・メモリーの中における実体アドレスとロジック・アドレスとの関係の模式図および当該関係を利用して作り上げるロジック/実体アドレスの対照表である図2を参照すると、ロジック/実体アドレスの対照表21の生成は、システムをスタートする時に作り上げて完成し、且つ例えば一つのSRAMを設計することにより前記ロジック/実体アドレスの対照表21を格納して記録でき、そして次にデータをアクセスする時にソフトウェアを利用してSRAMの中におけるロジック/実体アドレスの対照表21をシークし、前記ロジック・アドレスに対応する実体アドレスを快速に得る。フラッシュ・メモリー30の読み書きにおいて、データを書き込むのに必要な時間は、データを読み取るのに必要な時間よりも長くなり、且つデータをフラッシュ・メモリー30へ書き込むと同時に、その書かれたアドレスの中に既にデータが存在するかどうかを考慮する必要があり、前記アドレスに既にデータが存在する時は、先ず前記外部システム10から書き込まれたデータを一つの新たな使用可能なフリー・スペースの内へ書き込む必要があり、且つまずブロック・アドレスの中へ書き込もうとするデータを、新たなブロックの中へ移し、さらにロジック/実体アドレスの対照表21を変更することにより、外部システム10からの次のロジック・アドレスを実体アドレスに対応できる。
然しながら、フラッシュ・メモリーの機制中では、外部システム10がデータをアクセスするのに必要な実体アドレス、及びロジック・アドレスが非線性の対応関係のため、直接実体アドレスからロジック・アドレスの所在を推測できない。従って、フラッシュ・メモリー30の中におけるデータを移そうとする前に、先ずシークの動作を行うことにより、まずブロック・アドレスの中へ書き込もうとするデータをシークして収集する必要があり、そして移された後にロジック/実体アドレスの対照表21では、更新を行うことにより新たな実体アドレスへ指定する。然しながら、フラッシュ・メモリーのアクセス装置の中には、前記のシーク,移し及び指定アドレスの過程の運営があまり頻繁すぎれば、抹消および移動の書込みの回数が増加し、更にデータを全体に書き込む効果が相対的に影響し、そしてその中でも例えばマイクロソフト Windows(登録商標)XPオペレーティングシステムの下では、前記の行う過程が最も頻繁するが、従って書込み効果の差異も最も大きい。
従って元のフラッシュ・メモリーのハードウェア・アクセスの構築の下で、どのようにソフトウェアのプログラムの改良を介し、各種のオペレーティングシステムの下でフラッシュ・メモリーが読み書きする効果の差異を減少させ、ひいては全体の効果を向上させることは、改善に値する箇所である。
これに鑑み、本発明の解決しようとする技術問題は、外部システムとの間においてトランスファーするデータを、特殊なデータ内容および一般のデータ内容として区分し、且つ異なるアクセス方式を採用することにより行い、この特殊なデータ管理領域にて、外部システムが常に更新することにより頻繁にデータを移す事態を招く必要があることを退避でき、ひいてはフラッシュ・メモリーの読み書き効果を向上することを目的とする。
発明を解決するための手段
前記の問題を解決するために、本発明の提出する方案に基づくメモリー格納装置は、一つの外部システムとの間にデータの読取り及び書込みを行うように適用されるもので、一つのフラッシュ・メモリーと一つの制御ユニットを含む。フラッシュ・メモリーは、データを格納し且つ読み書きするように用いられ、且つ複数個のメモリー・ブロックを更に含み、それぞれのメモリー・ブロックが複数個のメモリー・ページを含み、そしてロジック・アドレスの上では、メモリー・ブロックが少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域として区分される。そして制御ユニットは、一つの領域対照表のメモリー・ブロックに対応するロジック・アドレスと実体アドレス、及び複数個のページ対照表を含み、各ページ対照表はそれぞれのメモリー・ブロックに基づいて個別に生成され、当該これらのメモリー・ページのロジック・アドレスと実体アドレスの関連として用いられる。その中で、制御ユニットは、領域対照表および相対応するページ対照表に基づき、一つのダイナミック偏差値の方式により、データを前記特殊なデータ管理領域に属するメモリー・ブロックの中におけるメモリー・ページへ書き込み、さらに相対応する前記領域対照表とページ対照表を更新することにより、その後の読み書きの時における対応として使用する。
また前記の問題を解決するために、本発明の提出する他の方案に基づくメモリー格納装置の書込み方法は、前記メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーが複数個のメモリー・ブロックを含み、これらのメモリー・ブロックがそれぞれ複数個のメモリー・ページを具し、そしてこの書込み方法は、先ず前記フラッシュ・メモリーを少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義し、且つ一つの書込み待ちの新たなデータの一つのロジック・アドレス(Logical Address)を受け入れ、一つの領域判断機制を介して前記ロジック・アドレスが前記特殊なデータ管理領域または前記一般のデータ管理領域のいずれに位置するかを判断し、ロジック・アドレスが特殊なデータ管理領域に位置する時に前記ロジック・アドレスが先に書き込まれたデータ箇所の最後累積アドレスに継続するか否かを判断し、さらに前記ロジック・アドレスが前記先に書き込まれたデータ箇所の最後累積アドレスに継続する時に、その属する積重ねブロックを詰め切るかを否かをさらに判断し、前記積重ねブロックを詰め切れば、前記積重ねブロックの中におけるデータを他の新たな積重ねブロックの中へ整理し且つピックアップするように行い、且つ前記新たな積重ねブロックの最新累積アドレスを取得することにより、一つの領域対照表および相対応する一つのページ対照表に基づいて前記書込み待ちの新たなデータを一つのダイナミック偏差値の方式にて前記最新累積アドレスの後の対応する実体アドレスの中へ書き込み、逆に前記積重ねブロックをまだ詰め切らなければ、直接前記領域対照表および相対応する前記ページ対照表に基づいて前記書込み待ちの新たなデータを前記ダイナミック偏差値の方式にて前記最後累積アドレスの後の対応する実体アドレスの中へ直接書き込むことを含む。
前記の問題を解決するために、本発明の提出する更に他の方案に基づくメモリー格納装置の読取り方法は、メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックがそれぞれ複数個のメモリー・ページを具し、且つ前記フラッシュ・メモリーが少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義され、前記読取り方法は、先ず一つの読取りデータのロジック・アドレス(Logical Address)を受け入れ、且つ更に一つの領域判断機制を介して前記ロジック・アドレスが特殊なデータ管理領域または一般のデータ管理領域のいずれに位置するかを判断し、前記ロジック・アドレスが特殊なデータ管理領域に位置する時に、前記ロジック・アドレスが先に書き込まれたデータ箇所の最後メモリー・ページのアドレスに合致するかどうかを判断し、前記ロジック・アドレスが当該先に書き込まれたデータの最後メモリー・ページ・アドレスに合致すれば、更に当該最後メモリー・ページ・アドレスの中では前記ロジック・アドレスが一つの最後セクター・アドレスを上回るかどうかを判断し、但し前記ロジック・アドレスが当該最後ブロック・アドレスを上回れば、前記読取りデータが当該ロジック・アドレスの所属する積重ねブロックの中における古いメモリー・ページに位置するように表示し、そして一つの領域対照表および相対応する一つのページ対照表に基づいて当該古いメモリー・ページの実体ページ・アドレスを取得し、且つ当該古いメモリー・ページの実体ページ・アドレスの所属する実体ブロック中における読取りデータを読み出し、逆に前記ロジック・アドレスが当該最後セクター・アドレスを上回らなければ、前記読取りデータが既に新たなメモリー・ページへ整理されるように表示し、そして前記領域対照表および相対応する前記ページ対照表に基づいて当該新たなメモリー・ページの実体ページ・アドレスを取得し、且つ当該新たなメモリー・ページの実体ページ・アドレスの所属する実体ブロック中における読取りデータを読み出す。
以上の概述および次の詳細な説明と添付の図面は、何れも本発明が予定の目的を達成するために採用される方式,手段および効果を説明するためのものである。そして本発明の他の目的と利点に関して、次の説明および図面を用いて、より詳細に陳述する。
図3A及び図3Bを参照すると、これらは本発明のメモリー格納装置の一つのより好ましい実施例のブロック図及び本発明の応用するフラッシュ・メモリーの構成模式図であるが、図3Aに示すように、本発明は、メモリー格納装置1を提供し、一つの外部システム10との間でデータの読取り及び書込みを行うように適用され、メモリー格納装置1は一つのフラッシュ・メモリー30と一つの制御ユニット40を含む。フラッシュ・メモリー30は、データの読み書きの格納をし、且つフラッシュ・メモリー30の中には複数個のメモリー・ブロック31が含まれ、そしてそれぞれのメモリー・ブロック31は複数個のメモリー・ページ301を具し、さらにロジック・アドレス上では、これらのメモリー・ブロック31は少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域(図3Bに示す)として区分される。但しフラッシュ・メモリー30の実体アドレスの上では、実際に特殊なデータ管理領域と一般のデータ管理領域の中におけるメモリー・ブロック31が混合して共用し、且つ両種のデータ管理領域は一定な配列の使用順序ではない。特殊なデータ管理領域は、例えばより常に読み取られる或いは移されるデータを処理するように用いられることができ、一般のデータ管理領域は、例えばより常に読み取る或いは移す必要がないデータを処理するように用いられる。
制御ユニット40は、一つの領域対照表41,複数個のページ対照表42と一つのマイクロプロセッサー43を含み、その中で領域対照表41はメモリー・ブロック31のロジック・アドレスと実体アドレスに対応するように用いられ、そしてそれぞれのメモリー・ブロック31が何れも個別のページ対照表42に対応しており、メモリー・ページ301のロジック・アドレスと実体アドレスの関連付けとして用いられる。さらに制御ユニット40は、その中のシステム・エンド界面44を介して外部システム10とデータのトランスファーを行い、またその中のメモリー界面45を介して、フラッシュ・メモリー30との間におけるデータ・トランスファー・チャネルとして、マイクロプロセッサー43が領域対照表41とページ対照表42に基づいて読取り,書込み及び抹消等の関連する作業を実行する。特に特殊なデータ管理領域の処理の際に領域対照表41を使用する以外に、さらにページ対照表42をメモリー・ブロック31として利用し、メモリー・ページ301のダイナミック偏差値の書込みを行う際におけるアドレスの対応では、特殊なデータ管理領域の中におけるメモリー・ブロック31に、ページ対照表42を介してダイナミック偏差値の書込みを行うことにより、特殊なデータ管理領域の中におけるメモリー・ブロック31は外部システム10の頻繁な更新により常に整理する必要がある回数が、減少する。
制御ユニット40は、領域対照表41及び相対応するページ対照表42に基づき、一つのダイナミック偏差値の方式により、データを前記特殊なデータ管理領域に属するメモリー・ブロック31の中におけるメモリー・ページ301へ書き込み、その後に相対応する領域対照表41とページ対照表42のアドレス連結関係を更新することにより、その後の読み書きの時における対応として使用するが、一般のデータ管理領域の部分では、領域対照表41のみに基づき、且つ一つの同じ偏差値の方式により、データの書込みを行い、さらにその後に領域対照表41のアドレス連結関係の更新を行う。
更に図4A及び図4Bを参照すると、これらは本発明の使用するページ対照表、およびページ対照表の対応するロジック・ページ・アドレスと実体ページ・アドレスを利用する関係模式図であるが、図面に示すように、特殊なデータ管理領域の中では、少なくとも一つのメモリー・ブロック31を単位として一つのロジック・ブロックに対応しており、本発明においては、二つのメモリー・ブロック31を例として説明する。ページ対照表42の中では、主としてロジック・ページ・アドレスのフィールド及び実体ページ・アドレスのフィールドとして区分されており、且つ前記二つのフィールドの中における連結関係が外部システム10から出力されたロジック・アドレスの違いに伴って、更新を行う。そして図4Bの中における実体アドレスは、例えば二つのメモリー・ブロック31を例として説明すると、第1のメモリー・ブロック及び第2のメモリー・ブロックがそれぞれダイナミック偏差値の方式に基づいてデータの書込みを行い、先ず第1のメモリー・ブロックから書き込み、書き切るまで待ってから、更に第2のメモリー・ブロックの中へ書き込み、そして二つのメモリー・ブロック31では、何れも書き切った後に、他の新たな第1のメモリー・ブロックへ整理を行い、且つ一つの新たな第2のメモリー・ブロックを更に定義し、組合せて使用する。外部システム10から出力されたロジック・アドレスの中におけるロジック・ページ・アドレスは、繰り返しの状況を具する可能性があり、従ってメモリー・ブロック31の中では、同じデータ・ページのデータがあるが、この時のロジック・ページ・アドレスがより新たなデータ・ページのデータの上に指定され、且つページ対照表42が更新および関連を行って対応し、そしてメモリー・ブロック31を整理する時に、ページ対照表42の関連に基づいてより新たなデータ・ページのデータのみが残る。
更にページ対照表42の中における単一のロジック・ページ・アドレスは、メモリー・ブロック31の対応する単一の実体ページ・アドレスのみに限定されず、更に複数個の実体ページ・アドレスに対応できることにより、より多いページ対照表42を使用する時に、制御ユニット40の中におけるページ対照表42を格納するように用いられる空間を占用することを避ける。
図5を参照すると、これは本発明のメモリー格納装置の書込み方法の一つの実施例のフローチャートであるが、図面に示すように、本発明は、メモリー格納装置1の書込み方法を提供し、その中においてメモリー格納装置1が一つのフラッシュ・メモリー30を含み、そしてフラッシュ・メモリー30が複数個のメモリー・ブロック31を含み、且つそれぞれのメモリー・ブロック31が複数個のメモリー・ページ301を具し、前記書込み方法は、先ずフラッシュ・メモリー30を少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義し(S501)、一つの書込み待ちの新たなデータの一つのロジック・アドレスを受け入れ(S503)、その中で前記ロジック・アドレスはメモリー・ブロック・アドレス,メモリー・ページ・アドレス及び一つのメモリー・セクター・アドレス等を含む。次に一つの領域判断機制を介して前記ロジック・アドレスが特殊なデータ管理領域または一般のデータ管理領域のいずれに位置するかを判断し(S505)、その中で前記領域判断機制は、事前に定義された特殊なデータ管理領域と一般のデータ管理領域のロジック分割アドレスを照合するように用いられることにより、当該書込み待ちの新たなデータのロジック・アドレスを受け入れ、所属する管理領域を判断するように行う。結果として前記ロジック・アドレスが特殊なデータ管理領域に位置するように判断された場合、前記ロジック・アドレスが先に書き込まれたデータ箇所の最後累積アドレスに継続するかを判断し(S507)、そして前記ロジック・アドレスが当該先に書き込まれたデータ箇所の最後累積アドレスに継続する場合、さらに前記ロジック・アドレスの所属する積重ねブロックを詰め切るかをさらに判断し(S509)、その中で積重ねブロックが少なくとも一つのメモリー・ブロック31を含有でき、そして前記積重ねブロックを詰め切った時に、前記積重ねブロックの中におけるデータを他の新たな積重ねブロックの中へ整理し且つピックアップするように行い(S511)、且つ更に領域対照表41および相対応するページ対照表42に基づいて当該新たな積重ねブロックの最新累積アドレスを取得し(S512)、当該書込み待ちの新たなデータをダイナミック偏差値の方式にて当該最新累積アドレスの後の対応する実体アドレスへ書き込み、さらに前記領域対照表41および前記ページ対照表42を更新する(S515)。逆に前記積重ねブロックをまだ詰め切らない場合は、直接、領域対照表41および相対応するページ対照表42に基づいて最後累積アドレスを取得し(S513)、且つ当該書込み待ちの新たなデータをダイナミック偏差値の方式にて当該最後累積アドレスの後の対応する実体アドレスへ直接に書き込み、さらに前記領域対照表41および前記ページ対照表42を更新する(S515)。
さらにステップ(S507)では、前記ロジック・アドレスが先に書き込まれたデータ箇所の最後累積アドレスに継続するかどうかを判断された判断結果が否であれば、前記ロジック・アドレスが一つの新たな積重ねブロックを指すように表示し、そして当該先に書き込まれたデータが一つの古い積重ねブロックの中に相対的に位置し、ひいては古い積重ねブロックの最後使用のメモリー・ページ301の対応する実体ページの中では、前記ロジック・アドレスのメモリー・セクター・アドレスを相対アドレスとし、セクター(Sector)を単位とし、前記相対アドレスの後におけるデータを、前記ロジック・アドレスの指示の新たな積重ねブロックのメモリー・ページ301に対応する実体ページの相対アドレスの中へコピーし(S517)、且つ新たな積重ねブロックの最新累積アドレスを取得する(S519)。この時、更に前記ロジック・アドレスの指示するメモリー・ページ301が前記メモリー・ページ301の第1のセクターから書き込むかどうかを判断するが(S521)、判断された結果が是であれば、当該書込み待ちの新たなデータをさらに前記領域対照表41および相対応する前記ページ対照表42に基づいて前記ダイナミック偏差値の方式にて前記対応する実体アドレスの中へ書き込み、且つ前記領域対照表41と前記ページ対照表42を更新し(S515)、逆に判断された結果が否であれば、古い積重ねブロックの最後使用メモリー・ページ301の対応する実体ページの中では、前記ロジック・アドレスのメモリー・セクター・アドレスを相対アドレスとし、セクター(Sector)を単位とし、当該相対アドレスの前におけるデータを、前記ロジック・アドレスの指示の新たな積重ねブロックのメモリー・ページ301に対応する実体ページの相対アドレスの中へコピーし(S523)、且つ当該書込み待ちの新たなデータをさらに前記領域対照表41および相対応する前記ページ対照表42に基づいて前記ダイナミック偏差値の方式にて当該対応する実体アドレスの中へ書き込み、且つ前記領域対照表41と前記ページ対照表42を更新する(S515)。
そしてステップ(S505)では、判断された管理領域の結果が一般のデータ管理領域に位置する時になれば、同じ偏差値の方式にてデータをフラッシュ・メモリー30の中へ書き込む(S525)。そして一般のデータ管理領域の部分について、図6を再び参照すると、これは本発明のメモリー格納装置の書込み方法の他の実施例のフローチャートで、図面に示すように、本発明は、主として一般のデータ管理領域のデータ書込み方法に対し、より説明し、その中でステップ(S601)乃至ステップ(S605)の部分が図5の中におけるステップ(S501)乃至ステップ(S505)と同様で、そしてステップ(S605)での管理領域の判断結果が一般のデータ管理領域である時になれば、前記ロジック・アドレスが先に書き込まれたデータ箇所の最後アドレスに継続するかどうかを判断するように行い(S607)、前記ロジック・アドレスが先に書き込まれたデータ箇所の最後アドレスに継続する時になれば、領域対照表41に基づいて当該最後アドレスの対応する実体ブロック・アドレスを取得し(S609)、且つ同じ偏差値の方式にて、書込み待ちの新たなデータを当該対応する実体ブロック・アドレスへ書き込み、さらに前記領域対照表41を更新する(S611)。
この時にステップ(S607)での判断結果が否であれば、受け入れたロジック・アドレスが当該先に書き込まれたデータ箇所の最後アドレスに継続しないように表示し、前記ロジック・アドレスが一つの新たな積重ねブロックへ指すように表示し、そして当該先に書き込まれたデータが一つの古い積重ねブロックの中に相対的に位置し、ひいては古い積重ねブロックの最後使用メモリー・ページ301の対応する実体ページの中では、当該ロジック・アドレスのメモリー・セクター・アドレスを相対アドレスとし、セクター(Sector)を単位とし、当該相対アドレスの後におけるデータを、当該ロジック・アドレスの指示の新たな積重ねブロックのメモリー・ページ301に対応する実体ページの相対アドレスの中へコピーし(S613)、且つ領域対照表41に対応することにより当該新たなメモリー・ブロック・アドレスの対応する実体ブロック・アドレスを取得し(S615)、この後に更にロジック・アドレスの書き込もうとする新たなブロック・アドレスが当該新たなメモリー・ブロック・アドレスの第1のメモリー・ページ301から書き込むかどうかを判断するが(S617)、判断された結果が是であれば、直接に当該書込み待ちの新たなデータを同じ偏差値の方式にて当該新たな実体ブロック・アドレスへ書き込み、且つ前記領域対照表41を更新し(S611)、逆に判断された結果が否であれば、古いメモリー・ブロックの最後使用メモリー・ページ301の対応する実体ページの中では、前記ロジック・アドレスのメモリー・セクター・アドレスを相対アドレスとし、セクターを単位とし、当該相対アドレスの前におけるデータを、前記ロジック・アドレスの指示の新たなメモリー・ブロックのメモリー・ページ301に対応する実体ページの相対アドレスの中へコピーし(S619)、その後に当該書込み待ちの新たなデータをさらに前記同じ偏差値の方式にて当該新たな実体ブロック・アドレスへ書き込み、且つ前記領域対照表41を更新する(S611)。
同様にステップ(S605)では判断された管理領域の結果が特殊なデータ管理領域であれば、図5に示すように参照し、ダイナミック偏差値の方式によりデータをフラッシュ・メモリー30の中へ書き込むように行う(S621)。
図7を参照すると、これは本発明のメモリー格納装置の読取り方法の一つの実施例のフローチャートであり、図面に示すように、本発明は、メモリー格納装置1の読取り方法を提供し、その中で、メモリー格納装置1が一つのフラッシュ・メモリー30を含み、前記フラッシュ・メモリー30が複数個のメモリー・ブロック31を含み、それぞれのメモリー・ブロック31は複数個のメモリー・ページ301を具し、且つ前記フラッシュ・メモリー30が少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義され、そしてこの読取り方法は、先ず一つの読取りデータのロジック・アドレスを受け入れ(S701)、その中で前記ロジック・アドレスは、メモリー・ブロック・アドレス,メモリー・ページ・アドレス及びメモリー・セクター・アドレスを含んでいる。そして、一つの領域判断機制を介して前記ロジック・アドレスが特殊なデータ管理領域または一般のデータ管理領域に位置するかを判断し(S703)、前記領域判断機制は、特殊なデータ管理領域と一般のデータ管理領域のロジック分割アドレスを定義するように用いられることにより、当該読取り待ちのデータのロジック・アドレスを受け入れる時に、所属する管理領域を判断するように行う。前記ロジック・アドレスが特殊なデータ管理領域に位置する時は、前記ロジック・アドレスが先に書き込まれたデータの最後メモリー・ページのアドレスに合致するかどうかを判断し(S705)、前記ロジック・アドレスが先に書き込まれたデータの最後メモリー・ページ・アドレスに合致する時になれば、ひいては当該最後メモリー・ページ・アドレスの中で前記ロジック・アドレスが一つの最後セクター・アドレスを上回るかどうかを判断し(S707)、前記ロジック・アドレスが当該最後セクター・アドレスを上回ると、前記読取りデータが前記ロジック・アドレスの所属する積重ねブロックの古いメモリー・ページの中に位置するように表示し、一つの領域対照表41および相対応する一つのページ対照表42に基づいて当該古いメモリー・ページの実体ページ・アドレスを取得し(S709)、且つ当該古いメモリー・ページの実体ページ・アドレスの所属する実体ブロックの中における読取りデータを読み出し(S711)、逆に前記ロジック・アドレスが当該最後セクター・アドレスを上回らないと、前記読取りデータが既に新たなメモリー・ページの中へ整理されるように表示し、そして前記領域対照表41および相対応する前記ページ対照表42に基づいて当該新たなメモリー・ページの実体ページ・アドレスを取得し(S713)、且つ当該新たなメモリー・ページの実体ページ・アドレスの所属する実体ブロックの中における読取りデータを読み出し(S711)、その中で、当該積重ねブロックは例えば少なくとも一つのメモリー・ブロック31を含む場合を含む。
そしてステップ(S705)で判断された結果のように、前記ロジック・アドレスが先に書き込まれたデータの最後メモリー・ページ・アドレスに合致しない時になれば、直接前記領域対照表41と前記ページ対照表42に基づいて前記ロジック・アドレスの対応する積重ねブロックの実体アドレスを取得し(S715)、且つ当該積重ねブロックの対応する実体ブロックの中における読取りデータを読み出す(S711)。
さらにステップ(S703)で判断された結果によれば、前記ロジック・アドレスが一般のデータ管理領域に位置する時に、領域対照表41に基づいて前記読取りデータを読み取ることが出来(S717)、そして一般のデータ管理領域の部分に関し、図8をさらに参照すると、これは本発明のメモリー格納装置の読取り方法の他の実施例のフローチャートで、その中でステップ(S801)乃至ステップ(S803)の部分が図7の中におけるステップ(S701)乃至ステップ(S703)と同様で、そしてステップ(S803)での管理領域の判断結果が一般のデータ管理領域である時になれば、前記読取りデータのロジック・アドレスが先に書き込まれたデータの最後メモリー・ブロック・アドレスに合致するかどうかを判断し(S805)、前記ロジック・アドレスが当該先に書き込まれたデータの最後メモリー・ブロック・アドレスに合致する時になれば、当該最後メモリー・ブロック・アドレスの中で前記ロジック・アドレスが一つの最後メモリー・ページ・アドレスを上回るかどうかを判断し(S807)、前記ロジック・アドレスが当該最後メモリー・ページ・アドレスを上回れば、前記読取りデータが古いメモリー・ブロックの中に位置するように表示し、そして一つの領域対照表41に基づいて当該古いメモリー・ブロックに対応する実体ブロック・アドレスを取得することにより(S809)、前記実体ブロック・アドレスの中における読取りデータを読み出し(S811)、逆に前記ロジック・アドレスが当該最後メモリー・ページ・アドレスを上回らなければ、前記読取りデータが既に新たなメモリー・ブロックの中に位置するように表示し、従って前記領域対照表41に基づいて当該新たなメモリー・ブロックに対応する実体ブロック・アドレスを取得することにより(S813)、当該実体ブロック・アドレスの中における読取りデータを読み出す(S811)。
更にステップ(S805)での判断された結果が否であれば、前記ロジック・アドレスが当該先に書き込まれたデータの最後ロジック・ブロック・アドレスに合致しないように表示し、直接前記領域対照表41に基づいて前記ロジック・アドレスの対応する実体ブロック・アドレスを取得し(S815)、且つ当該実体ブロック・アドレスの中における読取りデータを読み出す(S811)。同様にステップ(S803)では判断された管理領域の結果が特殊なデータ管理領域であれば、図5に示すように参照し、前記領域対照表41および相対応するページ対照表42に基づいて、前記読取りデータを読み取る(S817)。
追加して叙述すると、前記の領域対照表41及びページ対照表42は、主としてロジック・アドレスと実体アドレスに対応する関連として使用されるが、如何なる状況の下では実体アドレスを取得する必要がある時になれば、これらの二つの対照表を使用する。
以上の叙述は、本発明の具体実施例の詳細な説明および図面のみに限られ、本発明を限定するように用いられるものではなく、本発明の全ての範囲は下記の特許請求の範囲に準拠する必要があり、いかなる当該技術をよく分かる者でも、本発明の領域内において、簡便に思い付くことが出来る変化または仕上げは、何れも以下の本願の限定する特許請求の範囲にまとめることができる。
従来技術のフラッシュ・メモリーのアクセスの構成模式図である。 従来技術のフラッシュ・メモリーの中における実体アドレスとロジック・アドレスとの関係の模式図および当該関係を利用して作り上げるロジック/実体アドレスの対照表である。 本発明のメモリー格納装置の一つのより好ましい実施例のブロック図である。 本発明の応用するフラッシュ・メモリーの構成模式図である。 本発明の使用するページ対照表である。 本発明がページ対照表に対応するロジック・ページ・アドレスと実体ページ・アドレスを利用する関係模式図である。 本発明のメモリー格納装置の書込み方法の一つの実施例のフローチャートである。 本発明のメモリー格納装置の書込み方法の他の実施例のフローチャートである。 本発明のメモリー格納装置の読取り方法の一つの実施例のフローチャートである。 本発明のメモリー格納装置の読取り方法の他の実施例のフローチャートである。
符号の説明
1 メモリー格納装置
10 外部システム
11 制御ユニット
21 ロジック/実体アドレスの対照表
30 フラッシュ・メモリー
31 メモリー・ブロック
40 制御ユニット
41 領域対照表
42 ページ対照表
43 マイクロプロセッサー
44 システム・エンド界面
45 メモリー界面
301 メモリー・ページ

Claims (21)

  1. 一つの外部システムとの間でデータの読取り及び書込みを行うように適用されるメモリー格納装置であって、
    このメモリ格納装置は、一つのフラッシュ・メモリーと一つの制御ユニットを含み、
    前記フラッシュ・メモリーはデータを格納し且つ読み書きするように用いられ、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックはそれぞれ複数個のメモリー・ページを具し、且つロジック・アドレスの上では、これらのメモリー・ブロックが少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域として区分され、
    前記制御ユニットは、前記複数個のメモリー・ブロックのロジック・アドレスと実体アドレスに対応するように用いられる一つの領域対照表と、それぞれ前記複数個のメモリー・ブロック毎に基づいて生成することによりこれらのメモリー・ページのロジック・アドレスと実体アドレスの関連として用いられる複数個のページ対照表とを含み、
    前記制御ユニットは、前記領域対照表および相対応する前記ページ対照表に基づいて一つのダイナミック偏差値の方式により、データを前記特殊なデータ管理領域に属するメモリー・ブロックの中におけるメモリー・ページへ書き込み、さらに相対応する前記領域対照表とページ対照表を更新することにより、その後の読み書きの時における対応として使用することを特徴とするメモリー格納装置。
  2. 前記制御ユニットは、前記制御ユニットと前記外部システムとの間におけるデータのトランスファーを行う一つのシステム・エンド界面と、前記領域対照表と前記複数個のページ対照表に基づいて読取り,書込み及び抹消の関連する作業を実行する一つのマイクロプロセッサーと、前記制御ユニットと前記フラッシュ・メモリーとの間におけるデータ・トランスファー・チャネルである一つのメモリー界面とをさらに含むことを特徴とする請求項1に記載のメモリー格納装置。
  3. 前記特殊なデータ管理領域および前記一般のデータ管理領域は、データを読み取り或いは移す頻度に基づいて、前記両種のデータ管理領域に処理分配されることを特徴とする請求項1に記載のメモリー格納装置。
  4. 前記一般のデータ管理領域の書込みは、前記制御ユニットが前記領域対照表に基づいて一つの同じ偏差値の方式により、データを当該一般のデータ管理領域に属するメモリー・ブロックの中へ書き込み、さらに相対応する前記領域対照表を更新することにより、その後の読み書きの時における対応として使用することを特徴とする請求項1に記載のメモリー格納装置。
  5. 前記各ページ対照表の中における前記メモリー・ページ毎のロジック・アドレスは、少なくとも一つの実体アドレスに対応することを特徴とする請求項1に記載のメモリー格納装置。
  6. メモリー格納装置の書込み方法であって、メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックそれぞれが複数個のメモリー・ページを具し、
    この書込み方法は、前記フラッシュ・メモリーを少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義することと、
    一つの書込み待ちの新たなデータの一つのロジック・アドレスを受け入れることと、
    一つの領域判断機制を介して前記ロジック・アドレスが前記特殊なデータ管理領域または前記一般のデータ管理領域のいずれに位置するかを判断することと、
    前記ロジック・アドレスが前記特殊なデータ管理領域に位置する時に前記ロジック・アドレスが先に書き込まれたデータ箇所の最後累積アドレスに継続するか否かを判断することと、
    前記ロジック・アドレスが前記先に書き込まれたデータ箇所の最後累積アドレスに継続する時に、その属する一つの積重ねブロックを詰め切るか否かをさらに判断することと、
    前記積重ねブロックを詰め切れば前記積重ねブロックの中におけるデータを他の新たな積重ねブロックの中へ整理し且つピックアップするように行い更に一つの領域対照表および相対応する一つのページ対照表に基づいて前記新たな積重ねブロックの最新累積アドレスを取得し、次に前記書込み待ちの新たなデータを一つのダイナミック偏差値の方式にて前記最新累積アドレスの後の対応する実体アドレスの中へ書き込み且つ前記領域対照表と前記ページ対照表を更新することと、
    前記積重ねブロックをまだ詰め切らなければ直接前記領域対照表および相対応する前記ページ対照表に基づいて最後累積アドレスを取得し且つ次に前記書込み待ちの新たなデータを前記ダイナミック偏差値の方式にて前記最後累積アドレスの後の対応する実体アドレスの中へ直接書き込み且つ前記領域対照表と前記ページ対照表を更新することとを含むことを特徴とするメモリー格納装置の書込み方法。
  7. 前記領域判断機制は、事前に定義された前記特殊なデータ管理領域と前記一般のデータ管理領域のロジック分割アドレスを照合するように用いられることを特徴とする請求項6に記載のメモリー格納装置の書込み方法。
  8. 前記ロジック・アドレスが前記一般のデータ管理領域に位置する時になれば、前記領域対照表に基づいて、前記書込み待ちの新たなデータを一つの同じ偏差値の方式にて前記フラッシュ・メモリーの実体アドレスの中へ書き込むことを特徴とする請求項6に記載のメモリー格納装置の書込み方法。
  9. さらに、前記ロジック・アドレスが前記先に書き込まれたデータ箇所の最後累積アドレスに継続する時でなければセクターを単位として前記先に書き込まれたデータ箇所の最後累積アドレスのメモリー・ページの中における後のデータを前記ロジック・アドレスの指示する相対のメモリー・ページの中へコピーし且つ所属する積重ねブロックの最新累積アドレスを取得することと、
    前記ロジック・アドレスの指示するメモリー・ページが第1のセクターから書き込まれるかどうかを判断することと、
    判断された結果が是であれば前記書込み待ちの新たなデータを前記領域対照表および相対応する前記ページ対照表に基づいて前記ダイナミック偏差値の方式にて対応する実体アドレスの中へ書き込み且つ前記領域対照表と前記ページ対照表を更新することと、
    判断された結果が否であればブロックを単位として前記先に書き込まれたデータ箇所の最後累積アドレスのメモリー・ページの中における前のデータを前記ロジック・アドレスの指示するメモリー・ページの相対のアドレス中へコピーし、更に前記書込み待ちの新たなデータを前記領域対照表および相対応する前記ページ対照表に基づいて前記ダイナミック偏差値の方式にて対応する実体アドレスの中へ書き込み且つ前記領域対照表と前記ページ対照表を更新することとを含むことを特徴とする請求項6に記載のメモリー格納装置の書込み方法。
  10. メモリー格納装置の書込み方法であって、メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックそれぞれが複数個のメモリー・ページを具し、
    この書込み方法は、前記フラッシュ・メモリーを少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義することと、
    一つの書込み待ちの新たなデータの一つのロジック・アドレスを受け入れることと、
    一つの領域判断機制を介して前記ロジック・アドレスが前記特殊なデータ管理領域または前記一般のデータ管理領域のいずれに位置するかを判断することと、
    前記ロジック・アドレスが前記一般のデータ管理領域に位置する時に前記ロジック・アドレスが先に書き込まれたデータ箇所の最後アドレスに継続するか否かを判断することと、
    前記ロジック・アドレスが前記先に書き込まれたデータ箇所の最後アドレスに継続する時に一つの領域対照表に基づいて前記最後アドレスの対応する実体ブロック・アドレスを取得し且つ一つの同じ偏差値の方式にて前記書込み待ちの新たなデータを前記最後アドレスの対応する実体ブロック・アドレスへ書き込み、更に前記領域対照表を更新することとを含むことを特徴とするメモリー格納装置の書込み方法。
  11. 前記領域判断機制は、事前に定義された前記特殊なデータ管理領域と前記一般のデータ管理領域のロジック分割アドレスを照合するように用いられることを特徴とする請求項10に記載のメモリー格納装置の書込み方法。
  12. 前記ロジック・アドレスが前記特殊なデータ管理領域に位置する時になれば、前記領域対照表および相対応する一つのページ対照表に基づいて、前記書込み待ちの新たなデータを一つのダイナミック偏差値の方式にて一つの積重ねブロックの最後累積アドレスの対応する実体アドレスへ書き込むことを特徴とする請求項10に記載のメモリー格納装置の書込み方法。
  13. さらに、前記ロジック・アドレスが前記先に書き込まれたデータ箇所の最後アドレスに継続する時でなければブロックをコピー単位として前記先に書き込まれたデータ箇所の最後ブロックのメモリー・ページの中における後のデータを前記ロジック・アドレスの指示する新たなブロックの中における相対のメモリー・ページ・アドレスへコピーし且つ前記領域対照表に対応することにより当該新たな実体ブロック・アドレスを取得することと、
    更に前記ロジック・アドレスの指示する新たなブロック・アドレスが第1のメモリー・ページから書き込むかどうかを判断することと、
    判断された結果が是であれば直接前記書込み待ちの新たなデータを前記同じ偏差値の方式にて当該新たな実体ブロック・アドレスを書き込み且つ前記領域対照表を更新することと、
    判断された結果が否であれば前記先に書き込まれたデータ箇所の最後ブロックのメモリー・ページの中における前のデータを当該新たな実体ブロック・アドレスの中における相対のメモリー・ページ・アドレスへコピーし、更に前記書込み待ちの新たなデータを前記同じ偏差値の方式にて当該新たな実体ブロック・アドレスへ書き込み且つ前記領域対照表を更新することとを含むことを特徴とする請求項10に記載のメモリー格納装置の書込み方法。
  14. メモリー格納装置の読取り方法であって、前記メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックそれぞれが複数個のメモリー・ページを具し、且つ前記フラッシュ・メモリーが少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義され、
    この読取り方法は、一つの読取りデータのロジック・アドレスを受け入れることと、
    一つの領域判断機制を介して前記ロジック・アドレスが前記特殊なデータ管理領域または前記一般のデータ管理領域のいずれに位置するかを判断することと、
    前記ロジック・アドレスが前記特殊なデータ管理領域に位置する時に前記ロジック・アドレスが先に書き込まれたデータ箇所の最後メモリー・ページのアドレスに合致するかどうかを判断することと、
    前記ロジック・アドレスが前記先に書き込まれたデータの最後メモリー・ページ・アドレスに合致すれば更に当該最後メモリー・ページ・アドレスの中では前記ロジック・アドレスが一つの最後セクター・アドレスを上回るかどうかを判断することと、
    前記ロジック・アドレスが前記最後セクター・アドレスを上回れば前記読取りデータが前記ロジック・アドレスの所属する積重ねブロックの中における古いメモリー・ページに位置するように表示し、一つの領域対照表および相対応する一つのページ対照表に基づいて当該古いメモリー・ページの実体ページ・アドレスを取得し且つ当該古いメモリー・ページの所属する実体ブロック中における読取りデータを読み出すことと、
    前記ロジック・アドレスが前記最後セクター・アドレスを上回らなければ前記読取りデータが既に新たなメモリー・ページへ整理されるように表示し前記領域対照表および相対応する前記ページ対照表に基づいて前記新たなメモリー・ページの実体ページ・アドレスを取得し且つ当該新たなメモリー・ページの実体ページ・アドレスの所属する実体ブロック中における読取りデータを読み出すこととを含むことを特徴とするメモリー格納装置の読取り方法。
  15. 前記領域判断機制は、事前に定義された前記特殊なデータ管理領域と前記一般のデータ管理領域のロジック分割アドレスを照合するように用いられることを特徴とする請求項14に記載のメモリー格納装置の読取り方法。
  16. 前記ロジック・アドレスが前記一般のデータ管理領域に位置する時になれば、前記領域対照表に基づいて、前記読取りデータを読み取ることを特徴とする請求項14に記載のメモリー格納装置の読取り方法。
  17. 前記ロジック・アドレスが前記先に書き込まれたデータの最後メモリー・ページ・アドレスに合致しなければ直接前記領域対照表と前記ページ対照表に基づいて前記ロジック・アドレスの対応する積重ねブロックの実体アドレスを取得し且つ当該積重ねブロックの対応する実体ブロックの中における読取りデータを読み出すことをさらに含むことを特徴とする請求項14に記載のメモリー格納装置の読取り方法。
  18. メモリー格納装置の読取り方法であって、メモリー格納装置が一つのフラッシュ・メモリーを含み、前記フラッシュ・メモリーは複数個のメモリー・ブロックを含み、これらのメモリー・ブロックそれぞれが複数個のメモリー・ページを具し、且つ前記フラッシュ・メモリーが少なくとも一つの特殊なデータ管理領域および少なくとも一つの一般のデータ管理領域としてロジック的に定義され、
    この読取り方法は、一つの読取りデータのロジック・アドレスを受け入れることと、
    一つの領域判断機制を介して前記ロジック・アドレスが前記特殊なデータ管理領域または前記一般のデータ管理領域のいずれに位置するかを判断することと、
    前記ロジック・アドレスが前記一般のデータ管理領域に位置する時に前記ロジック・アドレスが先に書き込まれたデータの最後メモリー・ブロック・アドレスに合致するかどうかを判断することと、
    前記ロジック・アドレスが前記先に書き込まれたデータの最後メモリー・ブロック・アドレスに合致すれば更に当該最後メモリー・ブロック・アドレスの中では前記ロジック・アドレスが一つの最後メモリー・ページ・アドレスを上回るかどうかを判断することと、
    前記ロジック・アドレスが前記最後メモリー・ページ・アドレスを上回れば前記読取りデータが古いメモリー・ブロックの中に位置するように表示し一つの領域対照表に基づいて当該古いメモリー・ブロックに対応する実体ブロック・アドレスを取得することにより当該実体ブロック・アドレスの中における読取りデータを読み出すことと、
    前記ロジック・アドレスが前記最後メモリー・ページ・アドレスを上回らなければ当該読取りデータが既に新たなメモリー・ブロックの中に位置するように表示し前記領域対照表に基づいて当該新たなメモリー・ブロックに対応する実体ブロック・アドレスを取得することにより当該実体ブロック・アドレスの中における読取りデータを読み出すこととを含むことを特徴とするメモリー格納装置の読取り方法。
  19. 前記領域判断機制は、事前に定義された前記特殊なデータ管理領域と前記一般のデータ管理領域のロジック分割アドレスを照合するように用いられることを特徴とする請求項18に記載のメモリー格納装置の読取り方法。
  20. 前記ロジック・アドレスが前記特殊なデータ管理領域に位置する時になれば、前記領域対照表および相対応する一つのページ対照表に基づいて、前記読取りデータを読み取ることを特徴とする請求項18に記載のメモリー格納装置の読取り方法。
  21. 前記ロジック・アドレスが前記先に書き込まれたデータの最後ロジック・ブロック・アドレスに合致しなければ直接前記領域対照表に基づいて前記ロジック・アドレスの対応する実体ブロック・アドレスを取得し且つ当該実体ブロック・アドレスの中における読取りデータを読み出すことをさらに含むことを特徴とする請求項18に記載のメモリー格納装置の読取り方法。
JP2006286287A 2006-07-07 2006-10-20 メモリー格納装置及びその読み書き方法 Pending JP2008016003A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW095124982A TW200805394A (en) 2006-07-07 2006-07-07 Memory storage device and the read/write method thereof

Publications (1)

Publication Number Publication Date
JP2008016003A true JP2008016003A (ja) 2008-01-24

Family

ID=38920334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006286287A Pending JP2008016003A (ja) 2006-07-07 2006-10-20 メモリー格納装置及びその読み書き方法

Country Status (3)

Country Link
US (1) US7516296B2 (ja)
JP (1) JP2008016003A (ja)
TW (1) TW200805394A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4182993B2 (ja) * 2006-06-30 2008-11-19 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
KR100885783B1 (ko) * 2007-01-23 2009-02-26 주식회사 하이닉스반도체 플래시 메모리 장치 및 동작 방법
TWI381274B (zh) * 2008-07-10 2013-01-01 Phison Electronics Corp 用於快閃記憶體的區塊管理方法、儲存系統與控制器
US8321652B2 (en) * 2008-08-01 2012-11-27 Infineon Technologies Ag Process and method for logical-to-physical address mapping using a volatile memory device in solid state disks
US20100262979A1 (en) * 2009-04-08 2010-10-14 Google Inc. Circular command queues for communication between a host and a data storage device
US8595572B2 (en) 2009-04-08 2013-11-26 Google Inc. Data storage device with metadata command
US8250271B2 (en) * 2009-04-08 2012-08-21 Google Inc. Command and interrupt grouping for a data storage device
US20100287217A1 (en) * 2009-04-08 2010-11-11 Google Inc. Host control of background garbage collection in a data storage device
TWI450271B (zh) * 2009-09-02 2014-08-21 Silicon Motion Inc 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
US8527749B2 (en) * 2009-11-11 2013-09-03 International Business Machines Corporation User device, computer program product and computer system for system for secure network storage
TWI424438B (zh) * 2009-12-30 2014-01-21 Asolid Technology Co Ltd 非揮發性記憶體控制裝置及其多階重新排序方法
TWI417889B (zh) * 2009-12-30 2013-12-01 Silicon Motion Inc 快閃記憶體之寫入逾時控制方法及其記憶裝置
US8248723B1 (en) * 2011-01-31 2012-08-21 Oracle International Corporation System and method for managing errors on a magnetic tape
KR101329497B1 (ko) * 2011-03-10 2013-11-13 한양대학교 산학협력단 파티션에 따라서 저장 위치를 물리적으로 구분하는 nvram 기반의 저장 장치 및 상기 저장 장치의 동작 방법
TWI546666B (zh) * 2014-11-03 2016-08-21 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
CN105183374B (zh) * 2015-08-28 2018-04-06 北京腾凌科技有限公司 一种数据读写方法以及主板
US10732896B2 (en) * 2017-06-12 2020-08-04 Western Digital Technologies, Inc. Method and system for reading data during control sync operations
US11210173B2 (en) * 2018-05-09 2021-12-28 Microsoft Technology Licensing, Llc Fault tolerant device upgrade
US11436041B2 (en) 2019-10-03 2022-09-06 Micron Technology, Inc. Customized root processes for groups of applications
US11474828B2 (en) 2019-10-03 2022-10-18 Micron Technology, Inc. Initial data distribution for different application processes
US11599384B2 (en) * 2019-10-03 2023-03-07 Micron Technology, Inc. Customized root processes for individual applications
US11429445B2 (en) 2019-11-25 2022-08-30 Micron Technology, Inc. User interface based page migration for performance enhancement
US11366752B2 (en) 2020-03-19 2022-06-21 Micron Technology, Inc. Address mapping between shared memory modules and cache sets
US11836087B2 (en) 2020-12-23 2023-12-05 Micron Technology, Inc. Per-process re-configurable caches

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100526188B1 (ko) * 2003-12-30 2005-11-04 삼성전자주식회사 플래시 메모리의 주소 사상 방법, 사상 정보 관리 방법 및상기 방법을 이용한 플래시 메모리
KR100706242B1 (ko) * 2005-02-07 2007-04-11 삼성전자주식회사 메모리 시스템 및 그것의 런 단위 어드레스 매핑 테이블 구성 방법
US8307148B2 (en) * 2006-06-23 2012-11-06 Microsoft Corporation Flash management techniques
US20080091901A1 (en) * 2006-10-12 2008-04-17 Alan David Bennett Method for non-volatile memory with worst-case control data management

Also Published As

Publication number Publication date
TWI306263B (ja) 2009-02-11
US20080010431A1 (en) 2008-01-10
US7516296B2 (en) 2009-04-07
TW200805394A (en) 2008-01-16

Similar Documents

Publication Publication Date Title
JP2008016003A (ja) メモリー格納装置及びその読み書き方法
US7802054B2 (en) Apparatus and methods using invalidity indicators for buffered memory
EP2631916B1 (en) Data deletion method and apparatus
US7227788B2 (en) Memory management device and memory device
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
TWI385519B (zh) 資料寫入方法及使用此方法的快閃儲存系統與其控制器
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US11354236B2 (en) Garbage collection method for data storage device
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
US20060179212A1 (en) Flash memory control devices that support multiple memory mapping schemes and methods of operating same
US10360155B1 (en) Multi-tier memory management
EP2096546A1 (en) Write once recording device
JPWO2005029311A1 (ja) 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法
US20200218667A1 (en) Operating method for data storage device
US20050169058A1 (en) Data management apparatus and method used for flash memory
US8380920B2 (en) Flash storage device and data access method of flash memory
JP2009043054A5 (ja)
JP4829202B2 (ja) 記憶装置及びメモリ制御方法
JP4308780B2 (ja) 半導体メモリ装置、メモリコントローラ及びデータ記録方法
TW201621668A (zh) 資料儲存裝置及其資料寫入方法
JP2020170477A (ja) 記憶装置、その制御方法、及びプログラム
TWI824761B (zh) 在以快閃記憶體為基礎的儲存裝置中快取位址映射資訊的方法與裝置
US7996598B2 (en) Memory management module
TWI364660B (en) Method for managing a storage medium
JP2009265839A (ja) 記憶装置

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091013

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100309