JP5739551B2 - メモリアドレス変換 - Google Patents

メモリアドレス変換 Download PDF

Info

Publication number
JP5739551B2
JP5739551B2 JP2013548536A JP2013548536A JP5739551B2 JP 5739551 B2 JP5739551 B2 JP 5739551B2 JP 2013548536 A JP2013548536 A JP 2013548536A JP 2013548536 A JP2013548536 A JP 2013548536A JP 5739551 B2 JP5739551 B2 JP 5739551B2
Authority
JP
Japan
Prior art keywords
entry
record
records
memory device
logical
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.)
Active
Application number
JP2013548536A
Other languages
English (en)
Other versions
JP2014505297A (ja
Inventor
エー. マニング,トロイ
エー. マニング,トロイ
エル. カリー,マーティン
エル. カリー,マーティン
ディー. ラーセン,トロイ
ディー. ラーセン,トロイ
Original Assignee
マイクロン テクノロジー, インク.
マイクロン テクノロジー, インク.
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 マイクロン テクノロジー, インク., マイクロン テクノロジー, インク. filed Critical マイクロン テクノロジー, インク.
Publication of JP2014505297A publication Critical patent/JP2014505297A/ja
Application granted granted Critical
Publication of JP5739551B2 publication Critical patent/JP5739551B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1004Compatibility, e.g. with legacy hardware
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

本開示は、概して、半導体メモリデバイス、方法、およびシステムに関し、より具体的には、メモリアドレス変換に関する。
メモリデバイスは、典型的に、コンピュータまたは他の電子デバイスにおいて、内部の半導体、集積回路、および/または外部の取り外し可能デバイスとして提供される。とりわけ、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、ダイナミックランダムアクセスメモリ(DRAM)、同期型ダイナミックランダムアクセスメモリ(SDRAM)、相変化ランダムアクセスメモリ(PCRAM)、およびフラッシュメモリを含む、多数の異なる種類のメモリが存在する。
フラッシュメモリデバイスは、揮発性メモリおよび不揮発性メモリとして、広範な電子用途に利用することができる。フラッシュメモリデバイスは、典型的に、高いメモリ密度、高い信頼性、および低い電力消費を可能にする、1トランジスタ型メモリセルを使用する。フラッシュメモリデバイスは、しばしば、それぞれの基本的なメモリセル構造が配置される論理形態のために、「NAND」または「NOR」と称されるメモリアレイアーキテクチャを有する場合がある。フラッシュメモリの用途には、他の電子デバイスの中でも、ソリッドステートドライブ(SSD)、パーソナルコンピュータ、携帯情報端末(PDA)、デジタルカメラ、携帯電話、携帯音楽プレーヤー(例えば、MP3プレーヤー)、およびムービープレーヤー用のメモリが挙げられる。プログラムコード、ユーザデータ、および/または基本的な入力/出力システム(BIOS)等のシステムデータ等のデータは、典型的に、フラッシュメモリデバイス内に記憶される。
フラッシュメモリデバイスは、フラッシュトランジションレイヤ(FTL)を含み得る。FTLを(例えば、フラッシュメモリデバイスで実行されるプログラミング操作中に)使用して、データエントリと関連付けられた論理アドレスを、フラッシュメモリ内の物理アドレスにマッピングすることができる。FTLは、マッピング操作を実行するために、フラッシュメモリデバイスのローカルメモリ内にアドレスマッピングテーブルを含むことができる。しかしながら、以前のFTLアプローチで使用されるアドレスマッピングテーブルのサイズ(例えば、中に記憶されるデータの量)は、一定であり得る。
本開示の1つ以上の実施形態による、いくつかの物理ブロックを有するメモリアレイの一部分の図を図示する。 本開示の1つ以上の実施形態による、メモリデバイスのブロック図を図示する。 本開示の1つ以上の実施形態による、いくつかのテーブル間の関係を図示する図である。 本開示の1つ以上の実施形態による、テーブルの一部分の図を図示する。 本開示の1つ以上の実施形態による、サブテーブルの一部分の図を図示する。 本開示の1つ以上の実施形態による、テーブルの一部分の図を図示する。
本開示は、メモリアドレス変換のためのデバイス、システム、および方法を含む。1つ以上の実施形態は、メモリアレイおよびアレイに結合されたコントローラを含む。アレイは、いくつかのレコードを有する第1のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、アレイ内に記憶されたデータセグメントに対応する物理アドレスと、論理アドレスとを含む。コントローラは、いくつかのレコードを有する第2のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、第1のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを含む。コントローラはまた、いくつかのレコードを有する第3のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、第2のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを含む。
本開示の実施形態は、可変サイズを有するテーブル(例えば、アドレスマッピングテーブル)を有する、フラッシュ変換レイヤを含むことができる。すなわち、本開示のフラッシュ変換レイヤ内のテーブルのサイズ(例えば、中に記憶されるデータの量)は、変更可能である。本開示のフラッシュ変換レイヤ内のテーブルのサイズが変更可能であるため、テーブルは、異なる種類のフラッシュメモリデバイスに適合可能であり得る。すなわち、本開示によるフラッシュ変換レイヤは、異なる種類のフラッシュメモリデバイスに使用することができる。
以下の本開示の発明を実施するための形態において、その一部を形成し、本開示のいくつかの実施形態をどのようにして実施することができるかを例示する目的で示される、添付の図面への参照がなされる。これらの実施形態は、当業者が本開示の実施形態を実施することができるように十分に詳細に記載されており、他の実施形態が利用可能であること、およびプロセス、電気的、および/または構造的な改変が本開示の範囲から逸脱することなくなされ得ることが理解されるべきである。
本明細書に使用する際、「いくつかの」とは、1つ以上のこのようなものを指す。例えば、いくつかのテーブルとは、1つ以上のテーブルを指し得る。さらに、本明細書に使用される指定子「B」、「D」、「E」、「R」、および「S」は、特に、図中の参照数字に関して、このように指定されるいくつかの具体的な特徴が、いくつかの本開示の実施形態とともに含まれ得ることを示す。
本明細書の図は、最初の数字(複数を含む)が、図の番号に対応し、残りの数字が、図中の要素または構成要素を特定する、番号付けの慣例に従う。異なる図の間で類似の要素または構成要素は、類似の数字の使用によって特定することができる。例えば、232は、図2の要素「32」に言及し得、同じ要素が、図3において332として言及され得る。理解されるように、本開示のいくつかの追加の実施形態を提供するために、本明細書の種々の実施形態に示される要素は、追加、交換、および/または排除されてもよい。さらに、理解されるように、図において提供された比率および相対的な大きさは、本開示の実施形態を例示するように意図され、限定的な意味でとらえられるものではない。
図1は、本開示の1つ以上の実施形態による、いくつかの物理ブロックを有するメモリアレイ100の一部分の図を示す。メモリアレイ100は、例えば、NANDまたはNOR型フラッシュ不揮発性メモリアレイであり得る。しかしながら、本開示の実施形態は、特定の種類のメモリアレイに限定されるものではない。さらに、図1には示されないが、当業者は、メモリアレイ100が、その操作と関連付けられた種々の周辺回路とともに、特定の半導体ダイ上に位置付けられてもよいことを理解するであろう。
図1に示されるように、メモリアレイ100は、メモリセルのいくつかの物理ブロック116−0(ブロック0)、116−1(ブロック1)、...、116−B(ブロックB)を有する。メモリセルは、シングルレベルセルおよび/またはマルチレベルセルであり得る。一例として、メモリアレイ100内の物理ブロックの数は、128のブロック、512のブロック、1,024のブロックであってもよいが、実施形態は、メモリアレイ100内の特定の128の倍数またはいずれの特定の物理ブロック数にも限定されない。
図1に示される実施例において、各物理ブロック116−0、116−1、...、116−Bは、1つのユニットとして一緒に消去することができる(例えば、各物理ブロック内のセルは、実質的に同時の方式で消去することができる)メモリセルを含む。例えば、各物理ブロック内のメモリセルは、単一の消去操作で一緒に消去することができる。
図1に示されるように、各物理ブロック116−0、116−1、...、116−Bは、アクセス線(例えば、ワード線)に結合された、メモリセルのいくつかの物理行(例えば、120−0、120−1、...、120−R)を含む。各物理ブロック内の行(例えば、ワード線)の数は、32であってもよいが、実施形態は、1物理ブロック当たり特定の行数120−0、120−1、...、120−Rに限定されない。
当業者には理解されるように、各行120−0、120−1、...、120−Rは、1つ以上の物理ページのデータを含む(例えば、記憶する)ことができる。物理ページは、プログラミングおよび/またはセンシングの単位を指す(例えば、メモリセルの機能的なグループとして一緒にプログラムおよび/またはセンスされるいくつかのセル)。図1に示される実施形態において、各行120−0、120−1、...、120−Rは、1ページのデータを記憶する。しかしながら、本開示の実施形態は、それに限定されるものではない。例えば、本開示の1つ以上の実施形態において、各行は、1つ以上のデータを記憶することができる。
本開示の1つ以上の実施形態において、図1に示されるように、行と関連付けられたページは、(例えば、プログラミング操作後に)物理セクタ122−0、122−1、...、122−Sに従ってデータを記憶することができる。各物理セクタ122−0、122−1、...、122−Sは、1つ以上の論理セクタのデータに対応するデータを記憶することができる。例えば、特定の物理セクタ(例えば、特定の物理セクタ内に記憶されたデータ)は、特定の論理セクタに対応し得る。さらに、1つ以上の物理セクタ内に記憶されたデータの一部分は、特定の論理セクタに対応してもよい。例えば、特定の物理セクタ内に記憶されたデータの第1の部分は、第1の論理セクタに対応し、特定の物理セクタ内に記憶されたデータの第2の部分は、第2の論理セクタに対応し得る。各物理セクタ122−0、122−1、...、122−Sはまた、システムおよび/またはユーザデータを記憶することができ、エラー訂正コード(ECC)情報および論理ブロックアドレス(LBA)情報等のオーバーヘッド情報を含み得る。
各物理セクタ122−0、122−1、...、122−Sは、それと関連付けられた物理アドレス、例えば、物理ブロック番号(PBN)等を有し得る。物理セクタのPBNは、メモリアレイ100内でのセクタの実際の物理的位置を特定し得る。例えば、PBNは、CE番号、LUN、平面、ブロック、ページ、位置、および/またはステータスを特定することができる。さらに、いくつかのPBNを、メモリアレイ100内のメモリセルの物理ページ上にマッピングすることができる。例えば、1つ、2つ、または4つのPBNを、メモリアレイ100の種類に応じて、1つの物理ページ上にマッピングすることができる。
当業者には理解されるように、論理ブロックのアドレス指定は、データの論理セクタを特定するために、ホストによって使用され得るスキームである。例えば、各論理セクタは、固有の論理ブロックアドレス(LBA)に対応し得る。
本開示の1つ以上の実施形態において、いくつかのLBAは、論理ページ番号(LPN)に対応し得る。すなわち、LPNは、いくつかのLBA(例えば、データのいくつかの論理セクタ)を含み得る。例えば、1つ以上のLPNは、LBAおよび/またはLPN(複数を含む)のサイズに応じて、1つのLBAに論理的にマッピングされ得る。さらに、仮想ページ番号(VPN)を使用して、例えば、図2A〜5に関連して本明細書にさらに説明される、テーブル232、236、242、332、438、および/または542等のテーブル内に記憶されたデータの論理アドレスを特定(例えば、位置をマッピング)することができる。すなわち、VPNは、テーブル内に記憶されたデータに対するLPNに相当し得る。
物理ブロック116−0、116−1、...、116−B、行120−0、120−1、...、120−R、セクタ122−0、122−1、...、122−S、およびページに対する他の構成が可能であることに留意されたい。例えば、物理ブロック116−0、116−1、...、116−Bの行120−0、120−1、...、120−Rは、それぞれ、例えば、512バイト程度のデータを含むことができる単一の論理セクタに対応するデータを記憶することができる。
図2Aは、本開示の1つ以上の実施形態による、メモリデバイス201のブロック図を図示する。図2Aに示されるように、メモリデバイス201は、メモリアレイ200およびメモリアレイ200に結合された(例えば、それと通信する)コントローラ230を含む。
メモリアレイ200は、例えば、図1に関連して前述されたメモリアレイ100であってもよい。図2Aには1つのメモリアレイが示されるが、本開示の実施形態は、それに限定されない(例えば、メモリデバイス201は、コントローラ230に結合された2つ以上のメモリアレイを含んでもよい)。
図2Aに示されるように、コントローラ230は、コントローラメモリ231を含む。コントローラメモリ231は、例えば、他の種類のメモリの中でも、スタティックランダムアクセスメモリ(SRAM)であり得る。コントローラ230はまた、例えば、制御回路および/またはファームウェアを含んでもよく、メモリアレイ200と同じ物理デバイス(例えば、同じダイ)に含まれ得るか、または、メモリアレイ200を含む物理デバイスと通信可能に結合された別個の物理デバイスに含まれてもよい。
図2Aに図示される実施形態において、メモリデバイス201は、3つのテーブル(例えば、テーブル232、236、および242)を含む。テーブル232、236、および242(例えば、テーブル232、236、および242に記憶されたデータ)は、本明細書でさらに説明される、要求ベースのフラッシュ変換レイヤの一部であってもよい。例えば、テーブル232、236、および242を使用して、本明細書にさらに説明されるように、メモリアレイ200内のいくつかのメモリセルと関連付けられた論理アドレス(例えば、ホストによって提供されたLBA)を、メモリセルと関連付けられた物理アドレス(例えば、PBN)にマッピングすることができる。
テーブル232、236、および242は、それぞれ、例えば、データブロック検索テーブル、グローバルディレクトリ検索テーブル、およびルートディレクトリ検索テーブルであってもよい。テーブル232は、図2Aに示されるように、メモリアレイ200内に位置付けられる(例えば、記憶される)。テーブル236および242は、図2Aに示されるように、コントローラ230内(例えば、コントローラメモリ231内)に位置付けられる。テーブル232、236、および242は、本明細書にさらに説明されるように、いくつかの論理から物理へのアドレスマッピングを含み得る。
テーブル232は、いくつかのレコードを含むことができる。テーブル232内の各レコードは、いくつかのエントリを含むことができ、レコード内の各エントリは、メモリアレイ200内に記憶されたデータセグメント(例えば、データのセクタ)に対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、LPN)とを含むことができる。すなわち、テーブル232内の各エントリは、LPNからPBNへのマッピングを含むことができる。テーブル232内のレコードおよびエントリは、本明細書で(例えば、図3に関連して)さらに説明されることになる。
図2Aに示されるように、コントローラ230(例えば、コントローラメモリ231)は、テーブル232に結合されたキャッシュ234を含む。キャッシュ234は、キャッシュされたマッピングエントリ235を含む。キャッシュ234(例えば、キャッシュされたマッピングエントリ235)は、テーブル232内のいくつかのレコードのうちの1つ以上を記憶することができる。種々の実施形態において、キャッシュ234内に記憶された1つ以上レコードは、キャッシュ234内に一時的に記憶されたテーブル232のアクティブなレコードであってもよい。テーブル232内のレコードが、現在キャッシュ234内に含まれているかどうか(例えば、テーブル232内のレコードが、現在アクティブであるかどうか)の判定は、例えば、レコード内のエントリが、現在使用中であるか(例えば、アプリケーションによって)、および/または、以前にメモリアレイ200内の特定のデータセグメントの物理アドレスの判定に使用されたかどうかに基づいてもよい。
例えば、キャッシュ234内の1つ以上レコードは、メモリアレイ200内の特定のデータセグメントの物理アドレスを判定するために、最も最近使用されたエントリを有する、テーブル232内のレコードであってもよい。すなわち、現在キャッシュ234に存在しないテーブル232内のレコードは、キャッシュ234内にも現在存在するテーブル232内のレコードよりも最近に、メモリアレイ200内の特定のデータセグメントの物理アドレスを判定するために使用されたエントリを有し得ない。追加として、および/または代替として、キャッシュ234内の1つ以上のレコードは、以前に、メモリアレイ200内の特定のデータセグメントの物理アドレスを判定するために少なくとも2回使用されたエントリを有する、テーブル232内のレコードであってもよい。
図2Aに示されるように、テーブル236は、キャッシュ234に結合され、2つのサブテーブル(例えば、サブテーブル238および240)を含む。サブテーブル238は、いくつかのレコードを含むことができ、サブテーブル240は、追加のいくつかのレコードを含むことができる。サブテーブル238内の各レコードは、いくつかのエントリを含むことができ、サブテーブル238内のレコード内の各エントリは、テーブル232内のレコードに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、VPN)とを含むことができる。サブテーブル240内の各レコードは、いくつかのエントリを含むことができ、サブテーブル240内のレコード内の各エントリは、キャッシュ234内のレコードに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、VPN)とを含むことができる。すなわち、サブテーブル238および240内の各エントリは、VPNからPBNへのマッピングを含むことができる。テーブル236内(例えば、サブテーブル238および240内)のレコードおよびエントリは、本明細書で(例えば、図4に関連して)さらに説明される。
図2Aには示されないが、サブテーブル238のコピーを、バックアップとして(例えば、突然の電力喪失に対する保護として)メモリアレイ200内に記憶することができる。対照的に、サブテーブル240のコピーは、サブテーブル240がレコードをキャッシュ234内にマッピングし、したがって、突然の電力喪失の影響を受ける可能性がないため、メモリアレイ200内に記憶されなくてもよい。
図2Aに示されるように、テーブル242は、テーブル236に結合される。テーブル242は、いくつかのレコードを含むことができる。テーブル242内の各レコードは、いくつかのエントリを含むことができ、各エントリは、テーブル236内(例えば、サブテーブル238および/またはサブテーブル240内)のレコードに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、VPN)とを含むことができる。すなわち、テーブル242内の各エントリは、VPNからPBNへのマッピングを含むことができる。
本開示の1つ以上の実施形態において、テーブル232、236、および/または242は、可変サイズを有し得る。すなわち、テーブル232、236、および/または242のサイズ(例えば、中に記憶されるデータの量)は、変更可能である。テーブル232、236、および/または242のサイズが変更可能であるため、テーブル232、236、および/または242は、異なる種類のフラッシュメモリデバイスに適合可能であり得る。すなわち、テーブル232、236、および242を有するフラッシュ変換レイヤは、異なる種類のフラッシュメモリデバイスに使用することができる。
さらに、テーブル232は、メモリアレイ200よりも小さいサイズを有し得、テーブル236は、テーブル232よりも小さいサイズを有し得、テーブル242は、テーブル236よりも小さいサイズを有し得る。例えば、テーブル232のサイズとメモリアレイ200とのサイズの比率は、おおよそ1対1000であってもよく、テーブル236は、テーブル232よりもおおよそ3桁小さくてもよく、テーブル242は、テーブル236よりも、おおよそ3桁小さくてもよい。しかしながら、本開示の実施形態は、メモリアレイ200と、テーブル232、236、および242との間の特定のサイズ関係に限定されない。
図2Aに図示される実施形態は、3つのテーブル(例えば、テーブル232、236、および242)を含むが、本開示の実施形態は、特定のテーブル数に限定されない。例えば、本開示の実施形態は、テーブル232、236、および242に加えて、要求ベースのフラッシュ変換レイヤの一部として、1つ以上の追加のテーブル(図2Aには示されない)を含むことができる。例えば、コントローラ230(例えば、コントローラメモリ231)もまた、テーブル236および242に加えて、テーブル236および/または242に類似である1つ以上の追加のテーブル(図2Aには示されない)を含むことができる。
図2Aに図示される実施形態はまた、本開示の実施形態を不明瞭にしないように図示されてはいない、追加の回路を含んでもよい。例えば、メモリデバイス201は、I/OコネクタからI/O回路を通じて提供されるアドレス信号をラッチするためのアドレス回路を含むことができる。アドレス信号は、メモリアレイ200にアクセスするために、行デコーダおよび列デコーダによって受信され、解読され得る。アドレス入力コネクタの数は、メモリデバイス201および/またはメモリアレイ200の密度およびアーキテクチャに応じて決められてもよいことが、当業者には理解されるであろう。
図2Bは、テーブル232、236、および242の間の関係を図示する図202である。図2Bに図示されるように、メモリアレイ200内の特定のデータセグメント(例えば、特定のセクタのデータ)に対応する論理アドレス(例えば、LBA)に対応する、テーブル242のレコード内のエントリは、ホストから受信された所定の論理アドレスに基づいて、判定することができる。図2Bに図示されるように、テーブル242内の判定されたエントリを使用して、テーブル236内(例えば、サブテーブル238および/またはサブテーブル240内)のレコードに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、VPN)とを判定することができる。
図2Bに図示されるように、次いで、メモリアレイ200内のデータセグメントに対応する論理アドレスに対応する、テーブル236内のレコード内のエントリを、判定することができる。すなわち、次いで、メモリアレイ200内のデータセグメントに対応する論理アドレスに対応する、サブテーブル238および/またはサブテーブル240内のエントリを判定することができる。
図2Bに図示されるように、サブテーブル238内の判定されたエントリを使用して、テーブル232内のレコードに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、VPN)とを判定することができる。すなわち、図2Bに図示される実施形態において、テーブル236内のレコード内の判定されたエントリは、サブテーブル238内のエントリである。追加として、および/または代替として、テーブル236内のレコード内の判定されたエントリが、サブテーブル240内のエントリである実施形態において、キャッシュ234内のレコードに対応する物理アドレス(例えば、PBN)、および論理アドレス(例えば、VPN)は、サブテーブル240内の判定されたエントリを使用して、判定することができる。
図2Bに図示されるように、次いで、メモリアレイ200内のデータセグメントに対応する論理アドレスに対応する、テーブル232内のレコード内のエントリを判定することができる。追加として、および/または代替として、キャッシュ234内のレコードに対応する物理アドレスを判定する実施形態においては、次いで、メモリアレイ200内のデータセグメントに対応する論理アドレスに対応する、キャッシュ234内のレコード内のエントリを判定することができる。
図2Bに図示されるように、テーブル232および/またはキャッシュ234内の判定されたエントリを使用して、メモリアレイ200内のデータセグメントに対応する物理アドレス(例えば、PBN)と、論理アドレス(例えば、LPN)とを判定することができる。
図3は、本開示の1つ以上の実施形態による、テーブル332の一部分の図を図示する。テーブル332は、例えば、図2Aに関連して前述されたテーブル232であってもよい。
図3に示されるように、テーブル332は、いくつかのレコード352−0、352−1、...、352−Dを含む。各レコード352−0、352−1、...、352−Dは、いくつかのエントリ354−1、354−2、...、354−Eを含む。レコード352−0、352−1、...、352−D内の各エントリ354−1、354−2、...、354−Eは、図3に示されるように、例えば、論理ページ番号(LPN)から物理ブロック番号(PBN)へのマッピングを含むことができる。PBNは、メモリアレイ(例えば、図2Aに関連して前述されたメモリアレイ200)内の特定のデータセグメントに対応し得る。さらに、レコード352−0、352−1、...、352−D内の各エントリ354−1、354−2、...、354−Eは、メモリアレイと関連付けられた論理ページ番号(LPN)の線形マッピングに基づいて、論理的にアドレス指定することができる。例えば、図3に示されるように、レコード352−0内のエントリ354−1は、メモリアレイ内のメモリセルの第1の論理ページに対するLPNと関連付けられたデータセグメントに対応するPBNを含むことができ、レコード352−1内のエントリ354−2は、メモリアレイ内のメモリセルの第2の論理ページに対するLPNと関連付けられたデータセグメントに対応するPBNを含むことができる等である。
さらに、各レコード352−0、352−1、...、352−Dは、図2Aに関連して前述されたキャッシュ234内にレコードを組み込むように構成される、リンクを含んでもよい。例えば、リンクは、キャッシュ234内へのレコードの移行を、レコードを操作することなく行うことができる、位置ホルダーであってもよい。レコードがキャッシュ234内に移行された後(例えば、レコードが、キャッシュ234に記憶されている間)、リンクは、例えば、キャッシュ234および/またはテーブル332内の論理および/または物理アドレス等のメモリアドレスに対応し得る。
図4は、本開示の1つ以上の実施形態による、サブテーブル438の一部分の図を図示する。サブテーブル438は、例えば、図2Aに関連して前述されたサブテーブル238であってもよい。
図4に示されるように、サブテーブル438は、いくつかのレコード462−0、462−1、...、462−Dを含む。各レコード462−0、462−1、...、462−Dは、いくつかのエントリ464−1、464−2、...、464−Eを含む。レコード462−0、462−1、...、462−D内の各エントリ464−1、464−2、...、464−Eは、図4に示されるように、例えば、仮想ページ番号(VPN)から物理ブロック番号(PBN)へのマッピングを含んでもよい。PBNは、図3に関連して前述されたテーブル332内の特定のレコードに対応し得る。さらに、レコード462−0、462−1、...、462−D内の各エントリ464−1、464−2、...、464−Eは、テーブル332と関連付けられたVPNの線形マッピングに基づいて、論理的にアドレス指定することができる。例えば、図4に示されるように、レコード462−0内のエントリ464−1は、テーブル332内のレコード352−0に対するVPNと関連付けられたPBNを含むことができ、レコード462−0内のエントリ464−2は、テーブル332内のレコード352−1に対するVPNと関連付けられたPBNを含むことができる等である。
レコード462−0、462−1、...、462−D内の各エントリ464−1、464−2、...、464−Eは、図2Aに関連して前述されたサブテーブル240内のエントリと、一対一対応を有することができる。例えば、サブテーブル240内の各エントリは、サブテーブル240内の各エントリが、VPNから図2Aに関連して前述されたキャッシュ234内の特定のレコードに対応するPBNへのマッピングを含み得ること、およびサブテーブル240内の各エントリが、キャッシュ234と関連付けられたVPNの線形マッピングに基づいて論理的にアドレス指定することができること、を除いて、レコード462−0、462−1、...、462−D内のエントリ464−1、464−2、...、464−Eに類似であってもよい。
さらに、サブテーブル240内のエントリは、そのエントリによってマッピングされたテーブル332内のレコードが、同時にキャッシュ234内にも記憶される場合にのみ、有効であり得る。例えば、テーブル332内のレコードが、キャッシュ234から削除されると、キャッシュ234内のレコードをマッピングするために使用されたサブテーブル240内のエントリは、無効にされ得、テーブル332内のレコードをマッピングするために使用されるサブテーブル438内のエントリが、更新され得る。
図5は、本開示の1つ以上の実施形態による、テーブル542の一部分の図を図示する。テーブル542は、例えば、図2Aに関連して前述された、テーブル242であってもよい。
図5に示されるように、テーブル542は、いくつかのレコード572−0、572−1、...、572−Dを含む。各レコード572−0、572−1、...、572−Dは、いくつかのエントリ574−1、574−2、...、574−Eを含む。
(結論)
本開示は、メモリアドレス変換のためのデバイス、システム、および方法を含む。1つ以上の実施形態は、メモリアレイおよびアレイに結合されたコントローラを含む。アレイは、いくつかのレコードを有する第1のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、アレイ内に記憶されたデータセグメントに対応する物理アドレスと、論理アドレスとを含む。コントローラは、いくつかのレコードを有する第2のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、第1のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを含む。コントローラはまた、いくつかのレコードを有する第3のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、第2のテーブル内のレコードに対応する物理アドレスと、論理アドレスを含む。
特定の実施形態を、本明細書に例示し、説明してきたが、同じ結果を達成するように計算された配置が、示された特定の実施形態の代わりとなり得ることが、当業者には理解されるであろう。本開示は、本開示のいくつかの実施形態の適合または改変を包含するように意図されるものである。上述の説明は、例示的な目的で行われたものであり、制限的なものではないことを理解されたい。上述の実施形態の組み合わせ、および本明細書に具体的に記載されない他の実施形態は、上述の説明を検討する際に、当業者には明らかであろう。本開示のいくつかの実施形態の範囲には、上述の構造および方法が使用される他の適用が含まれる。
前述の発明を実施するための形態において、いくつかの特徴は、本開示の合理化の目的で、単一の実施形態にまとめられる。本開示の方法は、本開示の開示される実施形態が、各請求項に明確に述べられるものよりも多くの特徴を使用しなければならないという意図を反映するものとして解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、発明に関する主題は、単一の開示される実施形態の全ての特徴よりも少ないところに存在する。したがって、以下の特許請求の範囲は、各請求項が独立して別個の実施形態として存在する状態で、本明細書において発明を実施するための形態に組み込まれる。

Claims (13)

  1. アドレス変換のためのメモリデバイスであって、
    メモリアレイであって、前記アレイは、いくつかのレコードを有する第1のテーブルを含み、各レコードは、いくつかのエントリを含み、各エントリは、前記アレイ中に記憶されたデータセグメントに対応する物理アドレスと、論理アドレスとを含む、メモリアレイと、
    前記アレイに結合され、
    前記第1のテーブル内の前記いくつかのレコードのうちの1つ以上を記憶するキャッシュと、
    いくつかのレコードを有する第2のテーブルであって、各レコードがいくつかのエントリを含み、各エントリが前記第1のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを含み、前記第2のテーブルは、それぞれがいくつかのエントリを含む追加のいくつかのレコードを含み、各エントリは、前記キャッシュ内のレコードに対応する物理アドレスと、論理アドレスとを含む、第2のテーブルと、
    いくつかのレコードを有する第3のテーブルであって、各レコードがいくつかのエントリを含み、各エントリが前記第2のテーブル内のレコードに対応する物理アドレスと論理アドレスとを含む、第3のテーブルと、を含む、コントローラと、を備える、メモリデバイス。
  2. 前記第2のテーブルは、第1のサブテーブルと第2のサブテーブルとを含み、
    前記第1のサブテーブルは、前記いくつかのレコードを含み、そのエントリは、前記第1のテーブル内のレコードに対応する物理アドレスと論理アドレスとを含み、
    前記第2のサブテーブルは、前記追加のいくつかのレコードを含み、そのエントリは、前記キャッシュ内のレコードに対応する物理アドレスと、論理アドレスとを含む、請求項に記載のメモリデバイス。
  3. 前記第1、第2、および第3のテーブル内の各エントリに含まれる前記物理アドレスは、物理ブロック番号である、請求項に記載のメモリデバイス。
  4. 前記第1のテーブル内の各エントリは、前記メモリアレイと関連付けられた論理ページ番号の線形マッピングに基づいて、論理的にアドレス指定され、
    前記第2のテーブル内の各エントリは、前記第1のテーブル内の前記いくつかのレコードの線形マッピングに基づいて、論理的にアドレス指定され、
    前記第3のテーブル内の各エントリは、前記第2のテーブル内の前記いくつかのレコードの線形マッピングに基づいて、論理的にアドレス指定される、請求項に記載のメモリデバイス。
  5. 前記第2のテーブルは、前記第1のテーブルよりも小さいサイズを有し、
    前記第3のテーブルは、前記第2のテーブルよりも小さいサイズを有する、請求項に記載のメモリデバイス。
  6. 前記第1のテーブルは、可変サイズを有する、請求項1〜のいずれか一項に記載のメモリデバイス。
  7. 前記第2のテーブルおよび前記第3のテーブルは、可変サイズを有する、請求項1〜のいずれか一項に記載のメモリデバイス。
  8. 前記第1のテーブルは、データブロック検索テーブルであり、
    前記第2のテーブルは、グローバルディレクトリ検索テーブルであり、
    前記第3のテーブルは、ルートディレクトリ検索テーブルである、請求項1〜のいずれか一項に記載のメモリデバイス。
  9. メモリアドレス変換のための方法であって、
    メモリデバイス内に記憶されたデータセグメントに対応する論理アドレスに対応する、第1のテーブルのレコード内のエントリを判定することと、
    前記第1のテーブル内の前記判定されたエントリを使用して、第2のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを判定することと、
    前記データセグメントに対応する前記論理アドレスに対応する、前記第2のテーブル内の前記レコード内のエントリを判定することと、
    前記第2のテーブル内の前記判定されたエントリを使用して、第3のテーブル内のレコードに対応する物理アドレスと、論理アドレスとを判定することと、
    前記第2のテーブル内の前記判定されたエントリを使用して、前記第3のテーブル内のいくつかのレコードのうちの1つである、キャッシュ内のレコードに対応する物理アドレスと、論理アドレスとを判定することと、
    前記データセグメントに対応する前記論理アドレスに対応する、前記キャッシュ内の前記レコード内のエントリを判定することと、
    前記キャッシュ内の前記判定されたエントリを使用して、前記データセグメントに対応する前記物理アドレスを判定することと、
    前記データセグメントに対応する前記論理アドレスに対応する前記第3のテーブル内の前記レコード内のエントリを判定することと、
    前記第3のテーブル内の前記判定されたエントリを使用して、前記データセグメントに対応する物理アドレスを判定することと、を含む、方法。
  10. 前記第1のテーブルおよび前記第2のテーブルは、前記メモリデバイスのコントローラ内に位置付けられ、
    前記第3のテーブルは、前記メモリデバイスのメモリアレイ内に位置付けられる、請求項に記載の方法。
  11. 前記データセグメントに対応する前記論理アドレスは、論理ブロックアドレスである、請求項1に記載の方法。
  12. 前記データセグメントに対応する前記論理アドレスに対応する、前記第1のテーブル内の前記レコード内の前記エントリは、少なくとも部分的に、ホストから受信した論理アドレスに基づいて判定される、請求項〜1のいずれか一項に記載の方法。
  13. 前記データセグメントに対応する前記決定された物理アドレスを使用して、前記データセグメントにアクセスすることを含む、請求項〜1のいずれか一項に記載の方法。
JP2013548536A 2011-01-06 2012-01-05 メモリアドレス変換 Active JP5739551B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/985,787 2011-01-06
US12/985,787 US8417914B2 (en) 2011-01-06 2011-01-06 Memory address translation
PCT/US2012/020312 WO2012094481A2 (en) 2011-01-06 2012-01-05 Memory address translation

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015087997A Division JP2015158941A (ja) 2011-01-06 2015-04-23 メモリアドレス変換

Publications (2)

Publication Number Publication Date
JP2014505297A JP2014505297A (ja) 2014-02-27
JP5739551B2 true JP5739551B2 (ja) 2015-06-24

Family

ID=46456122

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013548536A Active JP5739551B2 (ja) 2011-01-06 2012-01-05 メモリアドレス変換
JP2015087997A Pending JP2015158941A (ja) 2011-01-06 2015-04-23 メモリアドレス変換

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2015087997A Pending JP2015158941A (ja) 2011-01-06 2015-04-23 メモリアドレス変換

Country Status (7)

Country Link
US (3) US8417914B2 (ja)
EP (1) EP2661692B1 (ja)
JP (2) JP5739551B2 (ja)
KR (1) KR101497860B1 (ja)
CN (1) CN103299283B (ja)
TW (1) TWI453585B (ja)
WO (1) WO2012094481A2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10282286B2 (en) * 2012-09-14 2019-05-07 Micron Technology, Inc. Address mapping using a data unit type that is variable
US9495288B2 (en) * 2013-01-22 2016-11-15 Seagate Technology Llc Variable-size flash translation layer
US9236133B2 (en) 2013-12-13 2016-01-12 Micron Technology, Inc. Adjusted read for partially programmed block
US20160048328A1 (en) * 2014-08-12 2016-02-18 Kabushiki Kaisha Toshiba Memory system
US10007433B2 (en) 2015-01-21 2018-06-26 Sandisk Technologies Llc Systems and methods for performing adaptive host memory buffer caching of transition layer tables
US10101918B2 (en) 2015-01-21 2018-10-16 Sandisk Technologies Llc Systems and methods for generating hint information associated with a host command
US9940287B2 (en) 2015-03-27 2018-04-10 Intel Corporation Pooled memory address translation
KR20170044781A (ko) * 2015-10-15 2017-04-26 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US10162526B2 (en) * 2015-10-20 2018-12-25 Micron Technology, Inc. Logical address history management in memory device
KR20170056765A (ko) 2015-11-13 2017-05-24 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US10095413B2 (en) * 2016-01-28 2018-10-09 Toshiba Memory Corporation Memory system with address translation between a logical address and a physical address
US10437785B2 (en) * 2016-03-29 2019-10-08 Samsung Electronics Co., Ltd. Method and apparatus for maximized dedupable memory
CN109074318B (zh) * 2016-05-31 2023-07-04 桑迪士克科技有限责任公司 用于执行转换层表的自适应主机存储器缓冲区高速缓存的系统和方法
KR20180121733A (ko) * 2017-04-28 2018-11-08 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
TWI633437B (zh) 2017-05-26 2018-08-21 慧榮科技股份有限公司 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法
US11113205B2 (en) * 2017-07-31 2021-09-07 Micron Technology, Inc. Die addressing using a reduced size translation table entry
US10437734B2 (en) * 2017-08-31 2019-10-08 Micron Technology, Inc. Memory constrained translation table management
US10860474B2 (en) 2017-12-14 2020-12-08 Micron Technology, Inc. Multilevel addressing
KR102521746B1 (ko) 2017-12-18 2023-04-13 에스케이하이닉스 주식회사 메모리 장치의 주소 맵핑을 관리하는 반도체 장치 및 이를 포함하는 데이터 저장 장치
TWI727185B (zh) * 2018-07-09 2021-05-11 慧榮科技股份有限公司 鏈結串列搜索裝置及方法
TWI717953B (zh) * 2019-12-26 2021-02-01 大陸商深圳大心電子科技有限公司 儲存控制器、記憶體管理方法與儲存裝置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203191A (ja) * 1997-11-13 1999-07-30 Seiko Epson Corp 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体
US8341332B2 (en) 2003-12-02 2012-12-25 Super Talent Electronics, Inc. Multi-level controller with smart storage transfer manager for interleaving multiple single-chip flash memory devices
CN1276358A (zh) 2000-06-29 2000-12-13 西北有色金属研究院 一种低碳超细REBa2Cu3O6+δ粉末的制备方法
US6938144B2 (en) * 2001-03-22 2005-08-30 Matsushita Electric Industrial Co., Ltd. Address conversion unit for memory device
JP3526452B2 (ja) * 2001-12-18 2004-05-17 株式会社東芝 ディスクアレイ装置及びデータバックアップ方法
US8041878B2 (en) 2003-03-19 2011-10-18 Samsung Electronics Co., Ltd. Flash file system
US20090193184A1 (en) 2003-12-02 2009-07-30 Super Talent Electronics Inc. Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System
US8122193B2 (en) 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
JP2006338371A (ja) * 2005-06-02 2006-12-14 Toshiba Corp メモリシステム
JP5076411B2 (ja) * 2005-11-30 2012-11-21 ソニー株式会社 記憶装置、コンピュータシステム
US7644251B2 (en) * 2005-12-19 2010-01-05 Sigmatel, Inc. Non-volatile solid-state memory controller
US8046542B2 (en) 2007-11-21 2011-10-25 Micron Technology, Inc. Fault-tolerant non-volatile integrated circuit memory
US8041922B2 (en) * 2008-01-11 2011-10-18 International Business Machines Corporation Enhanced dynamic address translation with load real address function
US20090198952A1 (en) * 2008-02-04 2009-08-06 Apple Inc Memory Mapping Architecture
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
US8566511B2 (en) * 2009-07-23 2013-10-22 Stec, Inc. Solid-state storage device with multi-level addressing

Also Published As

Publication number Publication date
WO2012094481A3 (en) 2012-09-20
US20140297990A1 (en) 2014-10-02
US8417914B2 (en) 2013-04-09
WO2012094481A2 (en) 2012-07-12
EP2661692A2 (en) 2013-11-13
US8898424B2 (en) 2014-11-25
TW201241626A (en) 2012-10-16
KR20130114233A (ko) 2013-10-16
CN103299283B (zh) 2016-08-17
US20120179853A1 (en) 2012-07-12
TWI453585B (zh) 2014-09-21
EP2661692B1 (en) 2020-05-20
US20130227247A1 (en) 2013-08-29
JP2014505297A (ja) 2014-02-27
US9274973B2 (en) 2016-03-01
JP2015158941A (ja) 2015-09-03
KR101497860B1 (ko) 2015-03-04
CN103299283A (zh) 2013-09-11
EP2661692A4 (en) 2014-07-02

Similar Documents

Publication Publication Date Title
JP5739551B2 (ja) メモリアドレス変換
US8239614B2 (en) Memory super block allocation
JP6109316B2 (ja) アドレスマッピング
JP5736439B2 (ja) ソリッドステート記憶装置におけるトランスレーションレイヤ
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US11232041B2 (en) Memory addressing
US8606987B2 (en) Data writing method for flash memory and controller using the same
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US10871919B2 (en) Memory system and wear-leveling method using the same
JP2015026379A (ja) 磁気ランダムアクセスメモリ(mram)を使用する記憶デバイスのメモリアレイのコントローラ管理
TWI687811B (zh) 資料儲存裝置及系統資訊的編程方法
US11113205B2 (en) Die addressing using a reduced size translation table entry

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20141023

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141023

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150423

R150 Certificate of patent or registration of utility model

Ref document number: 5739551

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250