JP3942807B2 - ブロックアラインメント機能付き半導体記憶装置 - Google Patents

ブロックアラインメント機能付き半導体記憶装置 Download PDF

Info

Publication number
JP3942807B2
JP3942807B2 JP2000169289A JP2000169289A JP3942807B2 JP 3942807 B2 JP3942807 B2 JP 3942807B2 JP 2000169289 A JP2000169289 A JP 2000169289A JP 2000169289 A JP2000169289 A JP 2000169289A JP 3942807 B2 JP3942807 B2 JP 3942807B2
Authority
JP
Japan
Prior art keywords
address
logical address
data
memory device
semiconductor memory
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.)
Expired - Fee Related
Application number
JP2000169289A
Other languages
English (en)
Other versions
JP2001350665A (ja
Inventor
永雅 水島
国弘 片山
和則 古沢
富久 幡野
隆之 田村
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2000169289A priority Critical patent/JP3942807B2/ja
Priority to TW090102060A priority patent/TWI221553B/zh
Priority to KR10-2001-0006173A priority patent/KR100441587B1/ko
Priority to US09/779,610 priority patent/US6459644B2/en
Publication of JP2001350665A publication Critical patent/JP2001350665A/ja
Application granted granted Critical
Publication of JP3942807B2 publication Critical patent/JP3942807B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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/04Addressing variable-length words or parts of words
    • 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

Description

【0001】
【発明の属する技術分野】
本発明は、半導体記憶装置に関し、特に、データを書き込む際に、所定のブロック単位での消去が必要な記憶媒体を利用した半導体記憶装置に関する。
【0002】
【従来の技術】
携帯端末等の外部記憶装置として、半導体メモリを搭載した半導体記憶装置が急速に普及している。このような半導体記憶装置では、半導体メモリとしては、通常、電気的に一括消去と書き換えが可能で、不揮発性であり、消費電力が低く、大容量のデータを格納できるフラッシュメモリが用いられている。
【0003】
このようなフラッシュメモリでは、近年の大容量化の要求にともなって、1セルに1ビットのデータを蓄える2値構造のフラッシュメモリに代わって、1セルに2ビット以上のデータを蓄えることのできる多値構造のフラッシュメモリが導入されている。
【0004】
このような多値構造のフラッシュメモリでは、1セルに2ビット以上のデータを蓄えることができるので、単位面積当たりの記憶容量が増加するが、多値構造のセルは、2値構造のセルよりも消去や書き込みの処理時間が長くかかるため、一括消去・書き込みの単位ブロック(以下、消去ブロックという)のサイズが同じである限り、書き込み処理性能が低下してしまう。
【0005】
そこで、消去ブロックのサイズを拡張するという対策がなされている。これにより、一定量のデータの書き込みにおいて、同時に一括して消去・書き込みをおこなう回数(消去ブロック数)を減らすことができるため、処理性能の低下を防ぐことができる。
【0006】
また、消去ブロックが細分化され、消去ブロックの数が増えると、その分、周辺回路も必要となり、全体としてのチップ面積が拡大してしまい製造の歩留まりを悪化させるが、消去ブロックのサイズを拡張し、ブロックの数を減らすことにより面積の拡大が抑えられ、歩留まりを向上させることもできる。
【0007】
一方、ホストシステムがこのような外部記憶装置に対して、ファイルデータを読み出したり書き込んだりするときには、一般に、ハードディスク装置等と同様に、セクタをそのアクセス単位としている。1セクタのサイズは、例えば、512バイトである。
【0008】
2値構造のフラッシュメモリを搭載した半導体記憶装置では、一般に、このセクタの大きさと消去ブロックの大きさを一致させていた。一方、多値構造のフラッシュメモリを搭載した半導体記憶装置では、前述したように消去ブロックのサイズを拡大して、このセクタを複数まとめたものを消去ブロックとしている。これにより、ホストシステムが半導体記憶装置に対して、複数セクタを一括して書き込むコマンドを送った場合、複数セクタのデータを同時に一括して消去したり書き込んだりすることが可能になり、2値構造のフラッシュメモリを搭載した半導体記憶装置に比べて処理時間を短縮することができる。
【0009】
また、フラッシュメモリを搭載した半導体記憶装置を用いる場合、ホストシステムは、ハードディスク装置等のファイル管理方式として最も一般的なFAT(File Allocation Table)ファイルシステムという方式によってファイルデータ管理を行うことが多い。
【0010】
FATファイルシステムが構築されたパーティション(以下、FATパーティションという)は、管理データを格納するための領域である管理データ領域(PBR領域やFAT領域等)と、ファイルデータを格納するための領域であるFATファイル領域とを有し、このうちFATファイル領域は、一般に、4、8、16、32などの複数個のセクタから構成されるクラスタを単位として管理される。
【0011】
ホストシステムがFATファイル領域にファイルデータを格納する状況においては、このクラスタを単位とする書き込みが頻繁におこなわれている。多値構造のフラッシュメモリでは、通常、消去ブロックを構成するセクタの数K(Kは2以上の整数)を、クラスタを構成するセクタの数Jを割り切れるような数に設定している。すなわち、クラスタを構成するセクタ数Jは、K×L個(Lは正整数)となる。
【0012】
【発明が解決しようとする課題】
ホストシステムが、複数のセクタで構成される消去ブロックを有するフラッシュメモリを搭載した半導体記憶装置を、FATファイルシステムでファイルデータを管理するため、FATパーティションをフラッシュメモリ上に割り付ける場合を考える。
【0013】
従来のフラッシュメモリを搭載した半導体記憶装置においては、ホストシステムがセクタの番号を管理するときに用いる論理アドレスを、フラッシュメモリの同じ値の物理アドレスに割り当てていた。
【0014】
このような割り当てを行った場合、FATファイル領域におけるクラスタと消去ブロックの対応関係としては、次の2つの場合が考えられる。
【0015】
ケース1は、クラスタの先頭セクタの論理アドレスと、消去ブロックの先頭セクタの物理アドレスとが対応している場合であり、ケース2は、クラスタの先頭セクタの論理アドレスと消去ブロックの先頭セクタの物理アドレスとが対応していない場合である。
【0016】
例えば、消去ブロックが4セクタから構成され(K=4)、クラスタが8セクタから構成される場合(J=8,L=2)、ケース1では、1クラスタは、連続する2個のブロックに含まれる8個のセクタで過不足なく構成されるが、ケース2では、クラスタの先頭と消去ブロックの先頭がずれているため、1クラスタは、連続する3個の消去ブロックに含まれる12個のセクタのうち、中間の8個のセクタで構成されることになる。
【0017】
つまり、ケース2の場合、互いに隣接するクラスタ(以下、クラスタA、Bという)は、一つの消去ブロック(以下、ブロックMという)を共有していることになる。
【0018】
ここで、ブロックMを構成する4個のセクタのうち、クラスタAに含まれるセクタ部分をセクタ部分X、クラスタBに含まれるセクタ部分をセクタ部分Yとする。いま、ホストシステムがクラスタAにデータを書き込むと、セクタ部分Yのデータは書き換える必要が無いにもかかわらず、ブロックMとして一括して消去されて、もとのデータが再び書き込まれる。また、クラスタBにデータを書き込むときについても、セクタ部分Xのデータは書き換える必要が無いにもかかわらず、ブロックMとして一括して消去されて、もとのデータが再び書き込まれる。
【0019】
従って、FATファイル領域の各クラスタが平均的に書き込まれた場合を考えると、ブロックMのように互いに隣接するクラスタに共有されている消去ブロックの消去・書き込み回数は、単一のクラスタに含まれている消去ブロック(以下、ブロックNという)の消去・書き込み回数の2倍必要になり、ブロックMの記憶素子の寿命をブロックNに比べ確率的に半減させてしまうことになる。
【0020】
さらに、ケース1では1クラスタを書き込むのに2個の消去ブロックの消去と書き込みが必要になるが、ケース2では1クラスタを書き込むのに3個の消去ブロックの消去と書き込みが必要になる。したがって、ケース1に比べて、書き込み処理速度についても遅くなる。
【0021】
本発明の目的は、各ブロックの消去回数や1回の書き込みで消去するブロックの数を必要最低限に抑えることができる半導体記憶装置を提供することにある。
【0022】
【課題を解決するための手段】
本発明に係る半導体記憶装置は、複数のセクタから構成されるクラスタを単位として、ファイルデータを分割・管理するホストシステムから論理アドレスによってアクセスされる半導体記憶装置であって、物理アドレスによってアクセス可能で、セクタを単位としてファイルデータを管理し、複数のセクタから構成されるブロック単位の消去を行ってデータの書き込みを行う記憶媒体を備え、前記クラスタの先頭セクタの論理アドレスが前記ブロックの先頭セクタの物理アドレスに対応するよう、前記論理アドレスを前記物理アドレスに変換することを特徴とする。
【0023】
この場合に、論理アドレスに、アドレスオフセット値を適用することによって、前記論理アドレスを前記物理アドレスに変換するようにしてもよい。
【0024】
前記アドレスオフセット値の算出は、電源投入直後に、前記記憶媒体の総記憶容量情報を利用して行うようにしてもよい。
【0025】
また、前記記憶媒体上に作成されるパーティションに関する情報を利用して、前記パーティションに関する情報が書き込まれる際におこなうようにしてもよい。前記パーティションに関する情報は、例えば、前記論理アドレス0番地に書き込まれるデータである。
【0026】
また、前記アドレスオフセット値の算出を、前記記憶媒体上に作成されるファイルシステムにおいて、前記ファイルデータを管理するのに用いられる管理情報を利用して、前記管理情報の書き込み時におこなうようにしてもよい。
【0027】
前記管理情報は、例えば、前記ファイルシステムの管理データ領域が占める論理アドレス範囲に書き込まれるデータであり、例えば、ファイルシステムがFATファイルシステムの場合は、PBR(パーティションブートレコード)のデータである。
【0028】
本発明に係る情報処理装置は、以上のような半導体記憶装置を備えたことを特徴とする。
【0029】
本発明に係るホストシステムは、複数のセクタから構成されるクラスタを単位として、ファイルデータを分割・管理するホストシステムであって、物理アドレスによってアクセス可能で、セクタを単位としてファイルデータを管理し、複数のセクタから構成されるブロック単位の消去を行ってデータの書き込みを行う記憶媒体に対してアクセスする際に、前記クラスタの先頭セクタの論理アドレスが前記ブロックの先頭セクタの物理アドレスに対応するよう、前記論理アドレスを前記物理アドレスに変換することを特徴とする。
【0030】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照しつつ詳細に説明する。
【0031】
《第1実施形態》
図1は、本発明による半導体記憶装置のブロック図である。
【0032】
同図に示すように、本発明による半導体記憶装置100は、ホストインターフェース3と、CPU6と、プログラムROM8と、アドレスオフセット格納手段10と、バッファメモリ12と、メモリインターフェース15と、フラッシュメモリ17とを備える。
【0033】
また、半導体記憶装置100は、バス2を介して、パーソナルコンピュータなどのホストシステム1と接続され、ホストシステム1からのコマンドを受けたり、ホストシステム1との間でデータのやり取りをおこなう。
【0034】
バス2は、ホストシステム1が半導体記憶装置100にアクセスする際に利用するバスであり、例えば、ホストシステム1のローカルバスや、パーソナルコンピュータの標準バス(IDEバス、ISAバス、PCIバス、SCSIバス、PCカードバス等)である。
【0035】
ホストインターフェース3は、バス2を通して送られたデータをバッファメモリ12に転送したり、バッファメモリ12が保持するデータをバス2に転送するハードウェアである。
【0036】
バッファメモリ12は、フラッシュメモリ17から読み出したデータやフラッシュメモリ17に書き込むデータを一時的に保持する記憶手段であり、例えば、スタティックRAM(Ramdom Access Memory)で構成される。
【0037】
メモリインターフェース15は、フラッシュメモリ17から読み出したデータをバッファメモリ12に転送したり、バッファメモリ12が保持するデータをフラッシュメモリ17に書き込むハードウェアである。
【0038】
CPU(Central Processing Unit)6は、プログラムROM(Read Only Memory)8に格納されたプログラムを読み出し、そのプログラムに従って所定の動作を行う。例えば、CPU6は、ホストインターフェース3を介して受け取ったホストシステム1のコマンドやステータスを解釈し、コマンドに従って、ホストインターフェース3やメモリインターフェース15の機能を制御する。また、CPU6は、バッファメモリ12が保持しているデータの読み出しや書き換えをおこなう。
【0039】
また、CPU6は、アドレスオフセット格納手段10に格納されたアドレスオフセット値を使って、ホストシステム1が指定した論理アドレスを、フラッシュメモリ17をアクセスするための物理アドレスに変換する。アドレスオフセット値の算出方法及び論理アドレスから物理アドレスへのアドレス変換方法については後述する。
【0040】
アドレスオフセット格納手段10は、論理アドレスを物理アドレスに変換するときに使われるアドレスオフセット値を格納する記憶手段であり、不揮発性または揮発性の記憶素子で構成される。なお、アドレスオフセット格納手段10は、独立した記憶手段を設けるようにしてもよいし、他の記憶手段(例えば、フラッシュメモリ17)の一部を利用して構成するようにしてもよい。
【0041】
フラッシュメモリ17は、半導体記憶装置100においてファイルデータなどを格納する記憶手段である。
【0042】
図2は、フラッシュメモリ17の構成を示す図である。
【0043】
同図に示すように、フラッシュメモリ17は、フラッシュメモリアレイ18とデータレジスタ19とを備える。
【0044】
フラッシュメモリアレイ18は、データを格納する領域であり、複数の(消去)ブロック20の集合として構成される。
【0045】
データレジスタ19は、任意のブロック20からデータを読み出したり、任意のブロック20にデータを格納するために、一時的にデータを保持する記憶手段である。
【0046】
同図に示すフラッシュメモリ17において、指定された物理アドレスに対するセクタデータの書き込みは、次のようにして行われる。まず、書き込み対象セクタが含まれるブロックの全データをデータレジスタ19へ転送する。その後、フラッシュメモリアレイ18上のそのブロックの全データを消去する。消去によりそのブロックのビットデータは、消去状態(例えば、すべて‘1’)になる。図2の21は、消去状態のブロックを示している。
【0047】
次に、データレジスタ19に保持したデータのうち、書き込み対象となるセクタ部分のデータを書き換え、データレジスタ19のデータ全体をブロック21に書き込む。同図の例では、書き込みは、データレジスタ19内の‘0’であるビットデータに対応するブロック21のビットデータを‘1’から‘0’へ反転させることによっておこなう。
【0048】
図3は、フラッシュメモリアレイ18の構成を表した図である。同図に示すように、フラッシュメモリアレイ18は、複数のブロック20から構成され、各ブロック20は、それぞれ4個のセクタ22から構成される。なお、各ブロックは、2個以上のセクタであれば何個のセクタから構成されていてもよい。
【0049】
セクタ22は、ホストシステム1が半導体記憶装置100に対してデータの読み出しや書き込みをおこなう際のデータ単位であり、その大きさは、例えば、512バイトである。
【0050】
フラッシュメモリアレイ18を構成する各セクタ22には、0hから昇順に通し番号がつけられており、そのセクタ番号を物理アドレスと呼ぶ。
【0051】
ホストシステム1が半導体記憶装置100に対してセクタを単位とするデータの読み出しや書き込みをおこなう際、ホストシステム1が管理するセクタ番号を論理アドレスと呼び、0hを開始点とする。ホストシステム1は、論理アドレスを指定して、半導体記憶装置100に対するデータの読み書きを行う。
【0052】
次に、ホストシステム1からデータの書き込みが指示された場合の半導体記憶装置100の動作について説明する。
【0053】
ホストシステム1から半導体記憶装置100に、指定された論理アドレスへのデータの書き込みを要求するコマンドが送られると、CPU6は、ホストインターフェース3を通してその論理アドレスを取得し、それを物理アドレスに変換する。
【0054】
すなわち、CPU6は、アドレスオフセット格納手段10に格納されたアドレスオフセット値を読み出し、それを論理アドレス値に加算することによって、物理アドレスを生成する。
【0055】
ホストシステムから転送された書き込みデータは、ホストインターフェース3を通してバッファメモリ12に保持される。CPU6は、バッファメモリ12内のデータをアドレス変換後の物理アドレスに書き込むようにメモリインターフェース15を制御し、そのデータをフラッシュメモリ17の指定された物理アドレスに書き込む。
【0056】
次に、アドレス変換に使われるアドレスオフセット値の算出方法について説明する。
【0057】
そのために、まず、半導体記憶装置100に作成されるファイルシステムについて説明する。ホストシステム1が、フラッシュメモリ17のフラッシュメモリアレイ18上でファイルデータを管理する方式をファイルシステムと呼ぶ。ファイルシステムは、フラッシュメモリアレイ18上に複数作成することができ、ある一つのファイルシステムを置くための論理アドレス範囲をパーティションと呼ぶ。
【0058】
ここでは、ファイルシステムとしてFATファイルシステムを採用した場合について説明する。
【0059】
図4は、FATファイルシステムの構成を示す図である。同図は、FATパーティション25がフラッシュメモリアレイ18上に一つ作成されている例を示したものである。FATパーティション25は、FATファイルシステムが占有するパーティションである。
【0060】
同図の例では、FATパーティション25の論理アドレス範囲は、20hから1E7Fhまでになっている。FATパーティション25は、PBR26と、FAT領域I27と、FAT領域II28と、ルートディレクトリ領域29と、FATファイル領域30とから構成される。
【0061】
PBR(パーティションブートレコード)26は、FATパーティション25の先頭論理アドレスに格納されたデータである。図4の例では、PBR26の論理アドレスは、20hである。PBR26には、FATパーティション25のFAT領域I27、FAT領域II28、ルートディレクトリ領域29、FATファイル領域30の各論理アドレス範囲を知ることができる情報が含まれる。
【0062】
FATファイル領域30は、ファイルデータを格納するための領域である。図4の例では、FATファイル領域30の論理アドレス範囲は、47hから1E7Fhになっている。
【0063】
ホストシステム1は、FATファイル領域30をクラスタ31を単位として管理し、ファイルデータを書き込むときは、クラスタ31を単位として書き込む。
【0064】
ここでは、各クラスタ31は、8個のセクタ22から構成されるものとする。なお、クラスタ31を構成するセクタ22の数は、ブロック20を構成するセクタ22の数の自然数倍であればいくつでもよい。
【0065】
FAT領域I27は、各クラスタ31の使用状況を示すテーブルデータを格納する領域である。図4の例では、FAT領域I27の論理アドレス範囲は、21hから23hになっている。
【0066】
FAT領域II28は、FAT領域I27のデータのコピーを格納する領域である。図4の例では、その論理アドレス範囲は、24hから26hになっている。
【0067】
ルートディレクトリ領域29は、このFATパーティション25のルートディレクトリにあるファイルやサブディレクトリの情報を示すデータを格納する領域である。図4の例では、その論理アドレス範囲は、27hから46hになっている。
【0068】
ホストシステム1は、半導体記憶装置100上にファイルシステムを作成する場合、まず、フラッシュメモリアレイ18上で空いている(他のパーティションが割り当てられていない)論理アドレス範囲にパーティションを割り当てる。そして、そのパーティションをフォーマットする。フォーマットとは、パーティション上にPBR26、FAT領域I27、FAT領域II28、ルートディレクトリ領域29の論理アドレス範囲を割り当て、それらの領域にファイルデータを管理するための初期化データを書き込むことをいう。
【0069】
MBR(マスターブートレコード)23は、論理アドレス0hに格納されたデータである。MBR23は、ホストシステム1がファイルデータを格納することができる論理アドレス範囲において、そこに存在する各ファイルシステムの種類や各パーティションの論理アドレス範囲を示す情報を含む。ホストシステム1は、パーティションの割り当て、パーティションのフォーマット、既存のパーティションの削除などをおこなうとき、このMBR23のデータ書き換えをおこなう。
【0070】
このようなFATファイルシステムが半導体記憶装置100に作成される場合、CPU6は、次の条件を満足するようなアドレスオフセット値を算出する。すなわち、そのアドレスオフセット値を加算すると、FATファイル領域30の先頭論理アドレスが、あるブロック20の先頭セクタの物理アドレスに対応するようになるようなアドレスオフセット値である。このような条件を満足するアドレスオフセット値を算出することにより、FATファイル領域30を構成する各クラスタ31の先頭セクタの論理アドレスの変換先は、必ずブロック20の先頭セクタの物理アドレスとなる。
【0071】
図5は、上記条件下におけるFATファイル領域30のクラスタ31とフラッシュメモリ17のブロック20の対応状態を表した図である。同図は、ブロック20が4セクタから構成され、クラスタ31が8セクタから構成されている場合について示しており、各クラスタ31はちょうど2個のブロック20から構成される。
【0072】
これにより、クラスタ単位の書き込みにおいて書き込むクラスタに含まれないセクタを消去することがなくなる。従って、前述の記憶素子の寿命低下の問題を解決し、さらに、クラスタ当たりの書き込みブロック数が最小となり、処理時間が短縮されるという効果をもたらす。
【0073】
次に、アドレスオフセット値の算出を行うアドレスオフセット設定処理の詳細について説明する。図6は、その処理の流れを表した図である。
【0074】
半導体記憶装置100の電源を投入すると(S32)、CPU6は、まずフラッシュメモリ17を構成するメモリチップの個数と各メモリチップの容量を調査する(S33)。本調査は、例えば、各メモリチップから容量情報等を読みとることで行う。
【0075】
そして、フラッシュメモリ17でファイルシステムを作成することができる総メモリ容量を算出する(S34)。次に、算出した容量全体を用いて1つのFATパーティション25を作成した場合にPBR26、FAT領域I27、FAT領域II28、ルートディレクトリ領域29が占める論理アドレス範囲を算出し、FATファイル領域30が開始する論理アドレス値を計算する(S35)。
【0076】
そして、その論理アドレス値に等しい値を物理アドレスとするセクタがブロックの先頭アドレスであるか否かを判別し、ブロックの先頭アドレスでない場合は、それ以降のブロックの先頭セクタの物理アドレス値からその論理アドレス値を減算して、アドレスオフセット値を算出し(S36)、算出したアドレスオフセット値をアドレスオフセット格納手段10に格納する(S37)。
【0077】
そして、これ以後、CPU6は、ホストシステム1が指定した論理アドレスについては、アドレスオフセット格納手段10に格納されたこのアドレスオフセット値を加算した値の物理アドレスに変換してフラッシュメモリ17に対するアクセスを行う。
【0078】
図7は、ホストシステム1が全フラッシュメモリ領域を1パーティションに割り当て、これをFATでフォーマットした場合に、MBR23やFATパーティションの各領域26〜30や各クラスタ31の先頭セクタの論理アドレスが物理アドレスとどのように対応づけられるかの例を表している図である。
【0079】
この場合、ブロック20は4セクタから構成されるため、4の倍数を物理アドレスとするセクタはブロック20の先頭セクタになる。FATファイル領域30の先頭論理アドレス47hに等しい値を物理アドレスとするセクタはブロック20の先頭アドレスでないので、例えば、その次のブロック20の先頭セクタの物理アドレス値48hから47hを減算した1がアドレスオフセット値となる。
【0080】
論理アドレスにアドレスオフセット値の1を加算することによって、FATファイル領域30を構成する各クラスタ31の先頭論理アドレスは、ブロック20の先頭セクタの物理アドレスに対応するように変換されるので、上記のアドレスオフセット値の条件が満たされる。なお、ここでは、論理アドレス範囲全体についてアドレスオフセット値を適用しているが、少なくとも、FATファイル領域30が占める論理アドレス範囲にアドレスオフセット値が適用されていれば、どのような範囲にアドレスオフセット値を適用してもよい。
【0081】
《第2実施形態》
次に、アドレスオフセット設定処理の別の実施形態について説明する。図8は、第2の実施形態におけるアドレスオフセット設定処理の流れを表した図である。本実施形態は、MBR23にデータが書き込まれた際に、そのデータを使って、アドレスオフセット値を算出するものである。
【0082】
ホストシステム1は、フラッシュメモリアレイ18上に新しくパーティションを作成すると(S38)、そのパーティションの論理アドレス範囲の情報を含むデータを論理アドレス0hのMBR23に書き込む。すなわち、論理アドレス0hにデータを書き込むコマンドを送る(S39)。
【0083】
CPU6は、論理アドレス0hに対するデータの書き込みが指示されると、バッファメモリ12に保持されているデータをフラッシュメモリ17の物理アドレス0hに書き込むと共に、そのデータを読み出して解析し、新しく作成されるパーティションの論理アドレス範囲を知る(S40)。そして、このパーティションがFATでフォーマットされた場合にPBR26、FAT領域I27、FAT領域II28、ルートディレクトリ領域29が占める論理アドレス範囲を算出し、FATファイル領域30が開始する論理アドレス値を計算する(S41)。
【0084】
そして、その論理アドレス値と等しい値を持つ物理アドレスがブロックの先頭に対応していない場合は、それ以降のブロックの先頭セクタの物理アドレス値からその論理アドレス値を減算して、アドレスオフセット値を算出し(S42)、算出したアドレスオフセット値をアドレスオフセット格納手段10に格納する(S43)。
【0085】
これ以後、CPU6は、FATパーティション25が占める範囲内の論理アドレスについては、アドレスオフセット格納手段10に格納されたアドレスオフセット値を加算した値の物理アドレスに変換して、フラッシュメモリ17に対するアクセスを行う。
【0086】
図9は、MBR23やFATパーティションの各領域26〜30や各クラスタ31の先頭セクタの論理アドレスと物理アドレスとの対応づけの例を示す図である。
【0087】
同図に示すように、MBR23にアドレスオフセット値が加算されていないことを除けば、図7と同じである。なお、アドレスオフセットを適用する範囲は、少なくとも、FATファイル領域30が占める論理アドレス範囲にアドレスオフセット値が適用されていれば、どのような範囲にアドレスオフセット値を適用するようにしてもよい。例えば、図7と同様に、MBR23のデータを物理アドレス1hに書き込むようにしてもよい。
【0088】
《第3実施形態》
次に、アドレスオフセット設定処理の更に別の実施形態について説明する。図10は、第3の実施形態におけるアドレスオフセット設定処理の流れを表した図である。本実施形態は、パーティションをフォーマットする際に、PBRデータを使ってアドレスオフセット値を算出するものである。
【0089】
ホストシステムが、フラッシュメモリアレイ18上のパーティションをFATでフォーマットする場合(S44)、そのFATパーティションの各領域の論理アドレス範囲の情報を含むデータをパーティションの先頭論理アドレスにあるPBR26に書き込む(S45)。
【0090】
ホストシステムからある論理アドレスにデータを書き込むコマンドが送られると、CPU6は、その論理アドレスがそのパーティションの先頭論理アドレスであるか否かを調べる。その結果、書き込み対象の論理アドレスがパーティションの先頭論理アドレスであるならば、バッファメモリ12が保持しているデータを読み出して解析し、そのデータがFATファイルシステムのPBR26に相当するデータであるかを調べる(S46)。
【0091】
これにより、そのパーティションがFATでフォーマットされていることを検出すると、CPU6は、バッファメモリ12が保持しているPBRデータを、パーティションの先頭論理アドレス値に等しい値の物理アドレスに書き込むとともに、そのデータからこのFATパーティション25を構成するFAT領域I27、FAT領域II28、ルートディレクトリ領域29が占める論理アドレス範囲を計算し、FATファイル領域30が開始する論理アドレス値を算出する(S47)。
【0092】
そして、算出した論理アドレス値に等しい値を持つ物理アドレスがブロックの先頭アドレスでないならば、それ以降のブロックの先頭セクタの物理アドレス値からその論理アドレス値を減算し、アドレスオフセット値を算出し(S48)、算出されたアドレスオフセット値をアドレスオフセット格納手段10に格納する(S49)。
【0093】
これ以後、CPU6は、FATファイル領域30が占める範囲内の論理アドレスについては、アドレスオフセット格納手段10に格納されたアドレスオフセット値を加算した値の物理アドレスに変換して、フラッシュメモリ17に対するアクセスを行う。
【0094】
図11は、MBR23やFATパーティションの各領域26〜30や各クラスタ31の先頭セクタの論理アドレスと物理アドレスとの対応づけの例を示す図である。
【0095】
同図に示すように、この場合は、FATファイル領域30が占める論理アドレス範囲についてのみアドレスオフセット値を適用している。なお、他の範囲、例えば、図9に示すように、PBR領域26以降の領域にアドレスオフセット値を適用するようにしてもよい。
【0096】
以上説明した実施形態では、半導体記憶装置100内のCPU6がアドレスオフセット値の算出や、アドレス変換等を行っていたが、これらの機能の一部または全てを半導体記憶装置外部のCPUが行うようにしてもよい。
【0097】
図12は、ホストシステムにおいてアドレス変換等を行う場合のホストシステム及び半導体記憶装置の構成を示す図である。
【0098】
同図に示すように、ホストシステム1aは、ホストCPU50と、アドレスオフセット格納手段10と、バッファメモリ12とを備える。
【0099】
一方、半導体記憶装置100aには、メモリインタフェース15と、フラッシュメモリ17が搭載されている。なお、半導体記憶装置100a内に、バッファメモリ12等を設けるようにしてもよい。
【0100】
ホストシステムのCPU50は、上記のCPU6と同様の処理を行い、アドレス変換後の物理アドレスを使って、半導体記憶装置100a内のフラッシュメモリ17にアクセスをする。これにより、半導体記憶装置100aにおいても、前述した半導体記憶装置100と同様の効果を得ることができる。
【0101】
以上の説明では、ファイルデータ管理方式としてFATファイルシステムについて説明したが、本発明は、クラスタ等のファイルデータ領域の割り当て単位の先頭と、フラッシュメモリの一括消去・書き込みブロックの先頭とが一致しない場合が発生し、管理データを利用してファイルデータ領域の占める論理アドレスが算出できるファイルデータ管理方式であれば、他のファイルシステムについても適用することは可能である。
【0102】
また、本発明による半導体記憶装置を構成する記憶媒体は、フラッシュメモリに限られず、データを書き込む際に、2個以上のセクタから構成されるブロックを単位とする消去を行う記憶媒体であればよい。
【0103】
【発明の効果】
以上詳細に説明したように、本発明によれば、複数のセクタから構成されるブロックを消去・書き込みの単位とする記憶媒体を搭載した半導体記憶装置に対して、ホストシステムが、複数のブロックから構成されるクラスタ単位でファイルデータの書き込みを行う場合であっても、各ブロックの消去回数を必要最低限に抑えることができ、ブロックの寿命低下を防止することができる。また、1回の書き込みに対して、一括して消去・書き込みするブロック数を必要最低限に抑えることができ、書き込みに要する処理時間を短縮することもできる。
【図面の簡単な説明】
【図1】 本発明による半導体記憶装置のブロック図である。
【図2】 フラッシュメモリの構成を示す図である。
【図3】 フラッシュメモリアレイの構成を示す図である。
【図4】 FATファイルシステムの構成を示す図である。
【図5】 フラッシュメモリアレイ上に配置されたFATファイル領域のクラスタとブロックの関係を表した図である。
【図6】 アドレスオフセット設定処理のフローチャートを表した図である。
【図7】 論理アドレスと物理アドレスとの対応関係の一例を表した図である。
【図8】 第2のアドレスオフセット設定処理のフローチャートを表した図である。
【図9】 論理アドレスと物理アドレスとの対応関係の一例を表した図である。
【図10】 第3のアドレスオフセット設定処理のフローチャートを表した図である。
【図11】 論理アドレスと物理アドレスとの対応関係の一例を表した図である。
【図12】 半導体記憶装置およびホストシステムのブロック図である。
【符号の説明】
1 ホスト
3 ホストインターフェース
6 CPU
8 プログラムROM
10 アドレスオフセット格納手段
12 バッファメモリ
15 メモリインターフェース
17 フラッシュメモリ
18 フラッシュメモリアレイ
19 データレジスタ
20 ブロック
22 セクタ
23 MBR
25 FATパーティション
26 PBR
27 FAT領域I
28 FAT領域II
29 ルートディレクトリ領域
30 FATファイル領域
31 クラスタ

Claims (10)

  1. 複数のセクタから構成されるクラスタを単位として、ファイルデータを分割・管理するホストシステムから論理アドレスによってアクセスされる半導体記憶装置であって、
    物理アドレスによってアクセス可能で、セクタを単位としてファイルデータを管理し、複数のセクタから構成されるブロック単位の消去を行ってデータの書き込みを行う記憶媒体と、
    前記記憶媒体に対するデータの読み書きを制御するCPUと、
    前記クラスタの先頭セクタの論理アドレスを前記ブロックの先頭セクタの物理アドレスに対応させるためのアドレスオフセット値を格納するアドレスオフセット格納手段と、を備え、
    前記記憶媒体は、
    当該記憶媒体上に作成される一以上のパーティション毎の論理アドレス範囲と、前記論理アドレス範囲内に作成されるファイルシステムの種類と、を有するパーティションに関する情報を格納する領域を有し、
    前記CPUは、
    前記パーティションに関する情報を参照し、前記論理アドレス範囲内に作成されるファイルシステムにおける前記クラスタの先頭セクタの論理アドレスと、等しい値を持つ物理アドレスが前記ブロックの先頭に対応していない場合、それ以降のブロックの先頭セクタの物理アドレス値からその論理アドレス値を減算して、アドレスオフセット値を算出し、算出したアドレスオフセット値を前記アドレスオフセット格納手段に格納し、
    前記ファイルデータへのアクセス時、前記論理アドレスに前記アドレスオフセット格納手段に格納されているアドレスオフセット値を加算することによって、当該論理アドレスを前記物理アドレスに変換すること、
    を特徴とする半導体記憶装置。
  2. 前記アドレスオフセット値の算出を、前記パーティションに関する情報が所定の論理アドレスに書き込まれる際に行うことを特徴とする請求項1に記載の半導体記憶装置。
  3. 前記パーティションに関する情報は、前記論理アドレス0番地に書き込まれるデータであることを特徴とする請求項2に記載の半導体記憶装置。
  4. 前記パーティションに関する情報は、マスターブートレコード(MBR)に含まれる情報であることを特徴とする請求項1、2および3のいずれか一項に記載の半導体記憶装置。
  5. 複数のセクタから構成されるクラスタを単位として、ファイルデータを分割・管理するホストシステムから論理アドレスによってアクセスされる半導体記憶装置であって、
    物理アドレスによってアクセス可能で、セクタを単位としてファイルデータを管理し、複数のセクタから構成されるブロック単位の消去を行ってデータの書き込みを行う記憶媒体と、
    前記記憶媒体に対するデータの読み書きを制御するCPUと、
    前記クラスタの先頭セクタの論理アドレスを前記ブロックの先頭セクタの物理アドレスに対応させるためのアドレスオフセット値を格納するアドレスオフセット格納手段と、を備え、
    前記記憶媒体上に作成されるパーティションの論理アドレス範囲内に作成されるファイルシステムは、当該ファイルシステムを構成する一以上の領域毎の論理アドレス範囲を有する管理情報を格納する領域を有し、
    前記CPUは、
    前記管理情報を参照し、当該ファイルシステムにおける前記クラスタの先頭セクタの論 理アドレスと、等しい値を持つ物理アドレスが前記ブロックの先頭に対応していない場合、それ以降のブロックの先頭セクタの物理アドレス値からその論理アドレス値を減算して、アドレスオフセット値を算出し、算出したアドレスオフセット値を前記アドレスオフセット格納手段に格納し、
    前記ファイルデータへのアクセス時、前記論理アドレスに前記アドレスオフセット格納手段に格納されているアドレスオフセット値を加算することによって、当該論理アドレスを前記物理アドレスに変換すること、
    を特徴とする半導体記憶装置。
  6. 前記アドレスオフセット値の算出を、前記管理情報が前記パーティション内の所定の論理アドレスに書き込まれる際に行うことを特徴とする請求項5に記載の半導体記憶装置。
  7. 前記所定の論理アドレスは、前記パーティション内の先頭論理アドレスであることを特徴とする請求項6に記載の半導体記憶装置。
  8. 前記管理情報は、パーティションブートレコード(PBR)に含まれる情報であることを特徴とする請求項5、6および7のいずれか一項に記載の半導体記憶装置。
  9. 前記アドレスオフセット格納手段は、前記記憶媒体上に設けられることを特徴とする請求項1〜8のいずれか一項に記載の半導体記憶装置。
  10. 請求項1〜9のいずれか一項に記載の半導体記憶装置を備えたことを特徴とする情報処理装置。
JP2000169289A 2000-06-06 2000-06-06 ブロックアラインメント機能付き半導体記憶装置 Expired - Fee Related JP3942807B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2000169289A JP3942807B2 (ja) 2000-06-06 2000-06-06 ブロックアラインメント機能付き半導体記憶装置
TW090102060A TWI221553B (en) 2000-06-06 2001-02-01 Semiconductor memory device with block alignment function
KR10-2001-0006173A KR100441587B1 (ko) 2000-06-06 2001-02-08 블록 얼라인먼트 기능을 갖는 반도체 기억 장치
US09/779,610 US6459644B2 (en) 2000-06-06 2001-02-09 Semiconductor memory device with block alignment function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000169289A JP3942807B2 (ja) 2000-06-06 2000-06-06 ブロックアラインメント機能付き半導体記憶装置

Publications (2)

Publication Number Publication Date
JP2001350665A JP2001350665A (ja) 2001-12-21
JP3942807B2 true JP3942807B2 (ja) 2007-07-11

Family

ID=18672171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000169289A Expired - Fee Related JP3942807B2 (ja) 2000-06-06 2000-06-06 ブロックアラインメント機能付き半導体記憶装置

Country Status (4)

Country Link
US (1) US6459644B2 (ja)
JP (1) JP3942807B2 (ja)
KR (1) KR100441587B1 (ja)
TW (1) TWI221553B (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725322B1 (en) * 1999-02-22 2004-04-20 Renesas Technology Corp. Memory card, method for allotting logical address, and method for writing data
US7203729B2 (en) * 2001-04-20 2007-04-10 Motorola Inc. Method and apparatus for a communication network with nodes capable of selective cluster head operation
JP2003162433A (ja) * 2001-11-27 2003-06-06 Fujitsu Ltd メモリシステム
JP2003296177A (ja) * 2002-04-03 2003-10-17 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
JP4238514B2 (ja) * 2002-04-15 2009-03-18 ソニー株式会社 データ記憶装置
JP4009840B2 (ja) * 2002-06-27 2007-11-21 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
KR100526178B1 (ko) * 2003-03-31 2005-11-03 삼성전자주식회사 플래시 메모리 액세스 장치 및 방법
US7173852B2 (en) * 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
US8001325B2 (en) * 2004-01-09 2011-08-16 Sandisk Corporation Memory card that supports file system interoperability
US7200703B2 (en) * 2004-06-08 2007-04-03 Valmiki Ramanujan K Configurable components for embedded system design
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
US7395404B2 (en) * 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
US7412560B2 (en) * 2004-12-16 2008-08-12 Sandisk Corporation Non-volatile memory and method with multi-stream updating
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7386655B2 (en) * 2004-12-16 2008-06-10 Sandisk Corporation Non-volatile memory and method with improved indexing for scratch pad and update blocks
US8122193B2 (en) 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
KR100684887B1 (ko) 2005-02-04 2007-02-20 삼성전자주식회사 플래시 메모리를 포함한 데이터 저장 장치 및 그것의 머지방법
US20060253643A1 (en) * 2005-05-04 2006-11-09 Delkin Devices, Inc. Memory with isolated master boot record
JPWO2007000862A1 (ja) * 2005-06-24 2009-01-22 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
US7457910B2 (en) * 2005-06-29 2008-11-25 Sandisk Corproation Method and system for managing partitions in a storage device
KR100739722B1 (ko) * 2005-08-20 2007-07-13 삼성전자주식회사 플래시 메모리 관리 방법 및 플래시 메모리 시스템
US20070174549A1 (en) * 2006-01-24 2007-07-26 Yevgen Gyl Method for utilizing a memory interface to control partitioning of a memory module
JP2007233838A (ja) * 2006-03-02 2007-09-13 Toshiba Corp メモリシステムの制御方法
JP2008112285A (ja) * 2006-10-30 2008-05-15 Toshiba Corp 不揮発性メモリシステム
JP4991320B2 (ja) * 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム
JP2008204041A (ja) 2007-02-19 2008-09-04 Hitachi Ltd ストレージ装置及びデータ配置制御方法
KR101449524B1 (ko) 2008-03-12 2014-10-14 삼성전자주식회사 스토리지 장치 및 컴퓨팅 시스템
TWI415134B (zh) * 2008-04-10 2013-11-11 Phison Electronics Corp 資料存取方法、使用此方法的控制器與儲存系統
US8392687B2 (en) 2009-01-21 2013-03-05 Micron Technology, Inc. Solid state memory formatting
US8180995B2 (en) * 2009-01-21 2012-05-15 Micron Technology, Inc. Logical address offset in response to detecting a memory formatting operation
CN101866269A (zh) * 2009-04-16 2010-10-20 鸿富锦精密工业(深圳)有限公司 存储装置、存储系统及存储装置的控制方法
US8856488B2 (en) 2010-02-11 2014-10-07 Memory Technologies Llc Method for utilizing a memory interface to control partitioning of a memory module
TWI420305B (zh) * 2010-10-08 2013-12-21 Phison Electronics Corp 記憶體儲存裝置、其記憶體控制器與自動產生填充檔案的方法
US8626989B2 (en) * 2011-02-02 2014-01-07 Micron Technology, Inc. Control arrangements and methods for accessing block oriented nonvolatile memory
US8732431B2 (en) * 2011-03-06 2014-05-20 Micron Technology, Inc. Logical address translation
TWI515736B (zh) * 2013-07-25 2016-01-01 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
US10423353B2 (en) * 2016-11-11 2019-09-24 Micron Technology, Inc. Apparatuses and methods for memory alignment
CN108845959B (zh) * 2018-06-25 2023-06-23 联想(北京)有限公司 一种内存数据处理方法、装置和电子设备
US11816363B2 (en) * 2021-11-04 2023-11-14 International Business Machines Corporation File based virtual disk management

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303198A (en) 1990-09-28 1994-04-12 Fuji Photo Film Co., Ltd. Method of recording data in memory card having EEPROM and memory card system using the same
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
JP2856621B2 (ja) 1993-02-24 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 一括消去型不揮発性メモリおよびそれを用いる半導体ディスク装置
JP3078946B2 (ja) * 1993-03-11 2000-08-21 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置
US5889795A (en) * 1995-04-21 1999-03-30 International Business Machines Corporation Disk array system and method for storing data
US5907856A (en) * 1995-07-31 1999-05-25 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US5835935A (en) 1995-09-13 1998-11-10 Lexar Media, Inc. Method of and architecture for controlling system data with automatic wear leveling in a semiconductor non-volatile mass storage memory
JPH10124384A (ja) * 1996-08-28 1998-05-15 Toshiba Corp 不揮発性半導体メモリの制御方法
US5937423A (en) * 1996-12-26 1999-08-10 Intel Corporation Register interface for flash EEPROM memory arrays
JP3588231B2 (ja) 1997-08-04 2004-11-10 東京エレクトロンデバイス株式会社 データ処理システム及びブロック消去型記憶媒体
JP4079506B2 (ja) 1997-08-08 2008-04-23 株式会社東芝 不揮発性半導体メモリシステムの制御方法
KR100319598B1 (ko) * 1998-03-18 2002-04-06 김영환 플래시메모리어레이액세스방법및장치
DE69900577T2 (de) * 1998-10-22 2002-08-01 Matsushita Electric Ind Co Ltd Informationsaufzeichnungsmedium sowie Verfahren und Vorrichtung zur Fehlerverwaltung darauf

Also Published As

Publication number Publication date
KR100441587B1 (ko) 2004-07-23
US20010048121A1 (en) 2001-12-06
US6459644B2 (en) 2002-10-01
TWI221553B (en) 2004-10-01
KR20010110073A (ko) 2001-12-12
JP2001350665A (ja) 2001-12-21

Similar Documents

Publication Publication Date Title
JP3942807B2 (ja) ブロックアラインメント機能付き半導体記憶装置
US9343153B2 (en) De-duplication in flash memory module
US9396103B2 (en) Method and system for storage address re-mapping for a memory device
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
JP5823875B2 (ja) 固体メモリフォーマッティング
US7890732B2 (en) Memory card and semiconductor device
RU2348992C2 (ru) Запоминающее устройство и ведущее устройство
KR100923814B1 (ko) 논리적 블록을 분할하기 위한 방법 및 장치
US8166258B2 (en) Skip operations for solid state disks
KR100389867B1 (ko) 플래시 메모리 관리방법
US8078794B2 (en) Hybrid SSD using a combination of SLC and MLC flash memory arrays
US7702846B2 (en) Memory controller, nonvolatile storage device, nonvolatile storage system, and data writing method
JP5728672B2 (ja) ハイブリッドメモリ管理
KR101324688B1 (ko) 영구 가비지 컬렉션을 갖는 메모리 시스템
KR100946286B1 (ko) 플래시 파일 시스템에서 가상-물리 주소 변환 방법 및 시스템
US20090271562A1 (en) Method and system for storage address re-mapping for a multi-bank memory device
JPWO2005103903A1 (ja) 不揮発性記憶システム
US10635358B2 (en) Memory management method and storage controller
WO2006046425A1 (ja) 不揮発性記憶装置及び不揮発性記憶システム
JP2012113343A (ja) 記憶装置
JP2018160189A (ja) メモリシステム
JP4561246B2 (ja) メモリ装置
JP2000181784A (ja) 書き換え可能な不揮発性記憶装置
CN115390747A (zh) 存储设备及其操作方法
JP3934659B1 (ja) メモリコントローラ及びフラッシュメモリシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070111

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070404

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

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

Year of fee payment: 4

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

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120413

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140413

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees