JP2015164044A - 論理アドレス変換 - Google Patents

論理アドレス変換 Download PDF

Info

Publication number
JP2015164044A
JP2015164044A JP2015055721A JP2015055721A JP2015164044A JP 2015164044 A JP2015164044 A JP 2015164044A JP 2015055721 A JP2015055721 A JP 2015055721A JP 2015055721 A JP2015055721 A JP 2015055721A JP 2015164044 A JP2015164044 A JP 2015164044A
Authority
JP
Japan
Prior art keywords
data
encryption key
memory
group
lba
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015055721A
Other languages
English (en)
Other versions
JP6181689B2 (ja
Inventor
エル. カリー,マーティン
L Culley Martin
エル. カリー,マーティン
エー. マニング,トロイ
A Manning Troy
エー. マニング,トロイ
ディー. ラーセン,トロイ
d larsen Troy
ディー. ラーセン,トロイ
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.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of JP2015164044A publication Critical patent/JP2015164044A/ja
Application granted granted Critical
Publication of JP6181689B2 publication Critical patent/JP6181689B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • 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/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • 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/04Addressing variable-length words or parts of words
    • 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/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means
    • 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/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Storage Device Security (AREA)
  • Read Only Memory (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

【課題】SSD(半導体ドライブ)において特定のLBA(論理ブロックアドレス)範囲と暗号鍵を関連付ける方法を提供する。【解決手段】第1の暗号鍵を第1のLA(論理アドレス)のグループに関連付けることと、第2の暗号鍵を第2のLAのグループに関連付けることと、第1のLAのグループと関連付けられた第1のデータをメモリデバイス内の第1の数のメモリセルの一部に書き込む第1の書き込み動作と、第2のLAのグループと関連付けられた第2のデータをメモリデバイス内の第2の数のメモリセルに書き込む第2の書き込み動作と、を備える。第1、第2の書き込み動作において、第1のデータと第2のデータが異なるページに書き込まれるように、第1の数のメモリセルのうちの残りのメモリセルをスキップする。【選択図】図3

Description

本開示は、主に半導体メモリデバイス、方法およびシステムに関し、より詳細には、論理アドレス変換に関する。
メモリデバイスは典型的には、コンピュータ内または他の電子デバイスの内部半導体集積回路として提供されることが多い。揮発性および不揮発性メモリを含めて、異なる多数の種類のメモリが存在する。揮発性メモリの場合、そのデータを維持するための電力を必要とし得、及び、とりわけ、ランダムアクセスメモリ(RAM)と、ダイナミックランダムアクセスメモリ(DRAM)と、同期型ダイナミックランダムアクセスメモリ(SDRAM)とを含む。給電されていない場合、不揮発性メモリは、記憶情報を保持することにより永続的データを提供することができ、NANDフラッシュメモリ、NORフラッシュメモリ、リードオンリーメモリ(ROM)、電気的消去可能ROM(EEPROM)、消去可能ROM(EPROM)および相変化ランダムアクセスメモリ(PCRAM)などを含み得る。
メモリデバイスを相互に組み合わせることにより、半導体ドライブ(SSD)を形成することができる。半導体ドライブは、不揮発性メモリ(例えば、NANDフラッシュメモリおよびNORフラッシュメモリ)を含み得、かつ/または揮発性メモリ(例えば、他の多様な種類の不揮発性および揮発性メモリの内DRAMおよびSRAM)を含み得る。フラッシュメモリデバイス(例えば、窒化物層中の電荷トラップに情報を保存する半導体−酸化物−窒化物−酸化物−半導体および金属−酸化物−窒化物−酸化物−半導体コンデンサ構造を用いたフローティングゲートフラッシュデバイスおよび電荷捕獲フラッシュ(CTF)デバイス)は、広範な電子用途のための不揮発性メモリとして利用することができる。フラッシュメモリデバイスは典型的には、高メモリ密度、高信頼性および低電力消費を可能にする単一トランジスタメモリセルを用いる。
SSDは、コンピュータ用主記憶デバイスとしてのハードディスクドライブの代わりに用いることが可能である。なぜならば、半導体ドライブは、性能、サイズ、重量、耐久性、動作温度範囲および電力消費の点においてハードドライブよりも有利であり得る。例えば、SSDを磁気ディスクドライブと比較した場合、SSD内には可動部が無いため、磁気ディスクドライブと関連付けられたシーク時間、待ち時間および他の電気機械遅延を回避することができるため、SSDの方がより高性能であり得る。SSD製造業者は、不揮発性フラッシュメモリを用いて内部バッテリー電源を用いないフラッシュSSDを生成することができ、これにより、ドライブを高汎用性かつコンパクトにすることができる。
SSDは、幾つかのメモリデバイスを含み得る(例えば、幾つかのメモリチップ(本明細書中用いられる「幾つかの〜」という表現は、1つ以上の存在を指し得る(例えば、幾つかのメモリデバイスは、1つ以上のメモリデバイスを指し得る)。当業者であれば理解するように、メモリチップは、幾つかのダイおよび/または論理ユニット(LUN)を含み得る。各ダイは、幾つかのメモリアレイと、アレイ上の周辺回路とを含み得る。これらのメモリアレイは、幾つかの物理的ページとして編成された幾つかのメモリセルを含み、物理的ページは幾つかのブロックへと編成され得る。
SSDは、論理アドレス(LA)テーブルを含み得る(例えば、論理ブロックアドレス(LBA)テーブル)。LBAテーブルを用いて、情報を記録することができる。この情報により、例えば、データの論理アドレスが、SSDのメモリアレイ中のデータの物理的位置へと変換(例えば、リンク)される。LBAテーブルを半導体ドライブ中の揮発性メモリ中に保存することができ、LBAテーブルのコピーをソリッドステートドライブ中の不揮発性メモリ中に保存することもできる。コマンド(例えば、読み出し要求および/または書き込み要求)がソリッドステートドライブにおいて開始した場合、LBAテーブルを用いて、例えば半導体ドライブ中のデータの物理的位置を変換(例えば、ロケイト(配置))することができる。特定の論理アドレスにおけるデータを読み出しおよび/または書き込むための読み出しおよび/または書き込み要求は、ホストによって開始され得る。論理アドレスはLBAテーブル中において見受けられ、その後対応する物理的アドレスを表示することができる。半導体ドライブは、表示された物理的アドレスからデータを読み出して、半導体ドライブについての読み出し要求を完了しかつ/または半導体ドライブは表示された物理的アドレスにデータを書き込んで、ソリッドステートドライブについての書き込み要求を完了することができる。
暗号データは、ソリッドステートメモリデバイス中に保存することができ、ホストが一定範囲のLBAをグループとして取り扱う場合がある。例えば、暗号鍵は、特定のLBA範囲と関連付けられ得る。複数の暗号鍵を用いて、メモリデバイス中に保存されたデータを暗号化することができる。
従来のソリッドステートメモリデバイスが、例えば特許文献1及び2に記載されている。
特開2001−350665号公報 特開2007−94900号公報
発明を解決するための手段
本発明のデータ処理方法は、第1の暗号鍵を第1の論理アドレス(LA)のグループに関連付けることと、第2の暗号鍵を第2のLAのグループに関連付けることと、前記第1のLAのグループと関連付けられた第1のデータをメモリデバイス内の第1の数のメモリセルの一部に書き込む第1の書き込み動作と、前記第2のLAのグループと関連付けられた第2のデータを前記メモリデバイス内の第2の数のメモリセルに書き込む第2の書き込み動作と、を備え、前記第1、第2の書き込み動作において、前記第1のデータと前記第2のデータが異なるページに書き込まれるように、前記第1の数のメモリセルのうちの残りのメモリセルをスキップする、ことを特徴するものである。
本発明の他のデータ処理方法は、第1の暗号鍵を用いて第1の論理アドレス(LA)のグループに関連付けられたデータを暗号化した第1のデータをメモリデバイスに書き込むことと、第2の暗号鍵を用いて第2のLAのグループに関連付けられたデータを暗号化した第2のデータを前記メモリデバイスに書き込むことと、を備え、前記第1のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第1のデータと前記第2のデータとを、それぞれ異なるページに書き込む、ことを特徴とするものである。
本発明のメモリシステムは、第1、第2の暗号鍵を用いて暗号化されたデータが格納された不揮発性メモリと、前記不揮発性メモリと接続されたコントローラであって、前記コントローラは、第1の論理アドレス(LA)のグループを前記第1の暗号鍵と関連付けることと、第2のLAのグループを前記第2の暗号鍵と関連付けることと、前記第1の暗号鍵を用いて前記第1のLAのグループに関連付けられたデータを暗号化した第1のデータと、前記第2の暗号鍵を用いて前記第2のLAのグループに関連付けられたデータを暗号化した第2のデータと、を前記不揮発性メモリに書き込む際に、前記第1のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第1のデータと前記第2のデータとは、異なるページに書き込むことと、を含む、ことを特徴とするものである。
本開示の1つ以上の実施形態による少なくとも1つのメモリシステムを含むコンピューティングシステムの機能ブロック図である。 本開示の1つ以上の実施形態による不揮発性メモリ中の鍵ゾーンのブロック図を示す。 本開示の1つ以上の実施形態によるa鍵範囲テーブルを示す。
本開示は、論理アドレス変換のための方法を含む。このような1つの方法は、LAと関連付けられたコマンドを受信することであって、LAは特定の範囲のLA中に存在する、ことと、上記特定の範囲以外の範囲のLAと関連付けられたデータを書き込む際にスキップされる幾つかの物理的位置に対応するオフセットを用いて、LAをメモリ中の物理的位置へと変換することと、を含む。
以下の本開示の詳細な記載において、本開示の一部を形成する添付図面を参照する。図面中、本開示の1つ以上の実施形態を実行する様態を例示的に示す。これらの実施形態は、当業者が本開示の実施形態を実行することを可能にするための充分な詳細を記載する。他の実施形態が利用可能であり、プロセス変更、電気的変更および/または構造的変更が本開示の範囲から逸脱することなく可能であることが理解されるべきである。本明細書中用いられる「N」という用語が特に図面中の参照符号と共に用いられる場合、幾つかの特定の特徴が本開示の1つ以上の実施形態において含まれ得ることを意味する。
本明細書中の図面において用いられるナンバリング法として、第1の桁(単数または複数)が図面数に対応し、残りの桁は、図面中の要素または構成要素を差す。異なる図面における類似の要素または構成要素は、類似の桁を用いて示す。例えば、108は、図1中の要素「08」を指し得、類似の要素を図2中において208として示し得る。理解されるように、本開示の複数のさらなる実施形態が可能となるように、本明細書中の多様な実施形態中に示される要素を追加、交換かつ/または省略することが可能である。加えて、理解されるように、図面中に記載の要素の比率および相対的大きさは、本発明の特定の実施形態を例示することを意図し、限定的なものとしてとられるべきではない。
図1は、本開示の1つ以上の実施形態による、少なくとも1つのメモリシステム104を含むコンピューティングシステム100の機能ブロック図である。図1に示す実施形態において、メモリシステム104(例えば、半導体ドライブ(SSD))は、コントローラ108と、1つ以上のソリッドステートメモリデバイス110−1、...、110−N)とを含み得る。ソリッドステートメモリデバイス110−1、...、110−Nにより、メモリシステム(例えば、メモリデバイスに合わせてフォーマットされたファイルシステム)のための記憶ボリュームを得ることができる。コントローラ108は、制御回路を含み得る(例えば、ハードウェア、ファームウェアおよび/またはソフトウェア)。1つ以上の実施形態において、コントローラ108は、物理的インターフェースおよびソリッドステートメモリデバイス110−1、...、110−Nを含むプリント基板へ接続された特定用途向け集積回路(ASIC)であり得る。
図1に示すように、コントローラ108は、ソリッドステートメモリデバイス110−1、...、110−Nに接続することができる。ホスト102は、メモリシステム104をアドレス指定する際、論理ブロックアドレス(LBA)を用いることができる。フラッシュ変換層(FTL)112は、LBAをソリッドステートメモリデバイス110−1、...、110−N中の物理的位置へと変換することができ、この逆も成立する。その結果、ホスト102は、メモリデバイス110−1、…、110−Nの物理的特性を無視し、メモリシステム104を論理セクターの連続した線形マップとして取り扱うことができる。ホスト102は、ラップトップコンピュータ、パーソナルコンピュート、デジタルカメラ、デジタル記録および再生デバイス、携帯電話、PDA、メモリカードリーダー、インターフェースハブ、他のホストシステムを含み得、メモリアクセスデバイス(例えば、プロセッサ)を含み得る。当業者であれば、「プロセッサ」とは、1つ以上のプロセッサ(例えば、並列処理システム、複数のコプロセッサ)を意図し得ることを理解する。
1つ以上の実施形態において、物理的ホストインターフェースは、標準インターフェースの形態をとり得る。例えば、メモリシステム104がコンピューティングシステム100中のデータ保存に用いられる場合、物理的ホストインターフェースは、シリアル高度技術アタッチメント(SATA)、周辺構成要素相互接続エクスプレス(PCIe)またはユニバーサルシリアルバス(USB)、および他のコネクタおよびインターフェースであり得る。しかし、一般的に、物理的ホストインターフェースにより、メモリシステム104と、物理的ホストインターフェースのための適合可能な受容器を有するホスト102との間において制御、アドレス、データおよび他の信号を送るためのインターフェースを得ることができる。
データの読み出し、書き込みおよび消去などの動作を行うために、コントローラ108は、ソリッドステートメモリデバイス110−1、...、110−Nと通信し得る。コントローラ108は、回路を持ち得る。この回路は、1つ以上の集積回路および/または別個の構成要素であり得る。図1に示すように、コントローラ108は、物理的変換機能のための論理を含み得る(例えば、フラッシュ変換層(FTL)112)。FTL112を用いて、ホスト102から受信された要求と関連付けられた論理アドレスを、ソリッドステートメモリデバイス110−1、...、110−N内の物理的位置へとマッピングすることができる。本明細書中にさらに記載されるように、FTL112は、LBAを物理的位置へと変換するためのオフセットを示す鍵範囲テーブル114中の情報を用いることができる(鍵範囲テーブル114は、コントローラに含まれるが、メモリデバイス110に含まれる場合もある)。メモリコントローラは、ソリッドステートメモリデバイス110−1、...、110−NのI/O接続(図1中図示せず)を選択的に接続して、適切な信号を適切なI/O接続において適切な時期に受信することができる。同様に、ホスト102とメモリシステム104との間の通信プロトコルは、ソリッドステートメモリデバイス110−1、...、110−Nのアクセスに必要なものと異なり得る。その後、コントローラ108は、ホストから受信されたコマンドを適切なコマンドへと変換して、ソリッドステートメモリデバイス110−1、...、110−Nへの所望のアクセスを達成することができる。
ソリッドステートメモリデバイス110−1、...、110−Nは、メモリセルの1つ以上のアレイを含み得る(例えば、不揮発性メモリセル)。これらのアレイは、例えばNANDアーキテクチャのフラッシュアレイであり得る。NANDアーキテクチャにおいて、「行」のメモリセルの制御ゲートをアクセスライン(例えば、ワードライン)と接続することができ、一方メモリセルを、選択ゲートソーストランジスタと選択ゲートドレイントランジスタとの間の「ストリング」の形態で、ドレインとソースとを直列に接続することができる。選択ゲートドレイントランジスタにより、ストリングをデータライン(例えば、ビットライン)へと接続することができる。「行」および「ストリング」という用語は、メモリセルが直線状または直接に配置されている状態を示さない。当業者であれば理解するように、メモリセルをビットラインおよびソースラインへ接続する様態は、アレイがNANDアーキテクチャ、NORアーキテクチャまたは何らかの他のメモリアレイアーキテクチャであるかによって異なる。
ソリッドステートメモリデバイス110−1、...、110−Nは、グループ分けすることが可能な幾つかのメモリセルを含み得る。本明細書中用いられる「グループ」という用語は、1つ以上のメモリセルを含み得る(例えば、ページ、ブロック、プレーン、ダイ、アレイ全体、または他のメモリセルグループ)。例えば、いくつかのメモリアレイは、1つのメモリセルブロックを構成するメモリセルからなる幾つかのページを含み得る。幾つかのブロックは、メモリセルのプレーン内に含まれ得る。幾つかのメモリセルプレーンが、ダイ上に含まれ得る。一例として、128GBメモリデバイスは、1ページ毎に4314バイトのデータ、1ブロック毎に128ページ、1プレーン毎に2048ブロック、1デバイス毎に16プレーンを含み得る。
ソリッドステートメモリデバイス110−1、...、110−Nは幾つかのチャンネルを含み得、各チャンネルは幾つかのダイを含み得る。各チャンネルは、論理ユニット数(LUN)を用いて組織化することができる。ソリッドステートメモリデバイス110−1、...、110−Nへデータを書き込む場合、幾つかのチャンネルおよびLUN上にデータをストライプすることができる。ソリッドステートメモリデバイス110−1、...、110−Nへのデータ書き込みは、チャンネルと関連付けられたメモリセル間の予測パターン中にデータをストライプする書き込みパターンアルゴリズムを用いて行われる。データ書き込みは、ホストからチャンネルへと送られるデータトラフィックを取り扱うチャンネルの能力によって限定され得るため、幾つかのチャンネルをメモリシステムによって用いることにより、幾つかのチャンネル上へのデータの書き込みおよび読み出しを行うことが可能になる。
暗号データを、ソリッドステートメモリデバイス110−1、...、110−N中に保存することができる。例えば、複数の暗号鍵を用いて、メモリデバイス110中に保存されたデータを暗号化することができる。LBAの範囲は、暗号鍵と関連付けることができる。例えば、LBA〜LBAと関連付けられたデータは、暗号鍵0で暗号化され得、LBAx+1〜LBA2yと関連付けられたデータは、暗号鍵1で暗号化され得、LBA2y+1〜LBA3zと関連付けられたデータは、暗号鍵2で暗号化され得る。1つ以上の実施形態において、メモリシステムは、データ暗号化のために16個の異なる暗号鍵を用いることができる。
メモリデバイスにおいて、物理的ページは、書き込み単位および/または読み出し単位のことを指し得る(例えば、共にまたはメモリセルの機能グループとして書き込まれかつ/または読み出される幾つかのセル)。別個の書き込み動作および/または読み出し動作により、偶数ページおよび奇数ページを書き込みおよび/または読み出しすることができる。多(マルチ)レベルセル(MLC)を含む実施形態において、物理的ページを論理的に分割して、例えばデータの上側ページおよび下側ページとすることができる。例えば、1つのメモリセルは、1ビット以上をデータの上側ページへ提供し得、1ビット以上をデータの下側ページへ提供し得る。よって、データの上側ページおよび下側ページを1つの書き込み動作および/または読み出し動作の一部として書き込みおよび/または読み出すことが可能となる。なぜならば、論理上側ページおよび論理下側ページはどちらとも、1つの物理的ページの一部であるからである。
図1の実施形態は、本開示の実施形態を不明瞭にしないために図示していないさらなる回路を含み得る。例えば、メモリシステム104は、アドレス回路を含み得る。このアドレス回路は、I/O接続を介してI/O回路を通じて提供されたアドレス信号をラッチする。アドレス信号は、行復号器および列復号器によって受信および復号化され得る。行復号器および列復号器は、ソリッドステートメモリデバイス110−1、...、110−Nへアクセスする。当業者であれば、アドレス入力接続の数は、ソリッドステートメモリデバイス110−1、...、110−Nの密度およびアーキテクチャに応じて異なり得ることを理解する。
一般的に、コントローラ108は、ホストシステム102から受信された(例えば、PCIeバスから受信された)コマンドパケットをホストメモリ変換回路に対するコマンド命令へと変換することと、メモリ応答を要求元ホストへと送られるホストシステムコマンドへ変換することとを行う。例えば、ホストインターフェース回路は、PCIeベーストランザクション層パケットからSATAコマンドパケットを構築することができる。
コントローラ108は、論理(例えば、ホスト)アドレス(例えば、受信コマンドと関連付けられたもの)を物理的メモリアドレスへと変換するように構成され得る。例えば、コントローラ108中のFTL112は、鍵範囲テーブルからの入力を用いて、ホストセクター読み出しコマンドおよび書き込みコマンドを、ソリッドステートメモリデバイス110−1、...、110−Nの特定部分向けのコマンドへと変換することができる。各ホスト動作は、単一セクターまたは多セクターの不揮発性メモリ動作へ変換することができる。
1つ以上の実施形態において、メモリデバイスへのデータ書き込みは、1ページに対して一度に行うことができる。メモリデバイス中の各ページは幾つかの物理的セクターを持ち得、各物理的セクターはLBAと関連付けることができる。一例として、1つの物理的ページは、8つの物理的データセクターを持ち得る。しかし、実施形態は、物理的ページ毎の特定の数の物理的セクターに限定されない。データ書き込みを1ページに対して一度に行う場合、当該ページのデータを、例えば8個のLBAと関連付けることができる。いくつかの実施形態において、第1の数のLBA(例えば、3個のLBA)を第1の暗号鍵と関連付けることができ、第2の数LBA(例えば、5個のLBA)を第2の暗号鍵と関連付けることができる。1つのページについて規定されたデータが、2つの異なる暗号鍵と関連付けられたLBAと関連付けられている場合、これらのデータを代わりに2つの異なるページに書き込むことができる。第1の数のLBAと関連付けられたデータは、第1の暗号鍵と関連付けられた第1のページへ書き込まれ得、第2の数のLBAと関連付けられたデータは、第2の暗号鍵と関連付けられた第2のページへと書き込まれ得る。これにより、第1のページへ割り当てられたデータを含む、ページの幾つかの物理的位置(例えば、セクター)を、データなしのまま残しておくことができる。例えば、第1のページのうちの残りの物理的セクターが、書き込みプロセスにおいてスキップされる。本開示の1つ以上の実施形態において、これらの物理的セクターのスキップは、鍵範囲テーブルのオフセットで説明される。FTLは、鍵範囲テーブル中の情報に基づいて、LBAを、シフトされた物理的位置へと変換することができる。
コントローラ108は、鍵範囲テーブル114を用いて、LBAと関連付けられたデータの物理的位置を変換することができる。鍵範囲テーブル114は、幾つかのエントリー(項目)を含み得る。これらのエントリーはそれぞれ、各エントリーと関連付けられた範囲に先行するLBAの範囲(単数または複数)と関連付けられたデータのページ(単数または複数)を書き込む際にスキップされた幾つかの物理的位置(例えば、物理的セクター)に対応する各オフセットを示す。鍵範囲テーブルは、各暗号鍵についてのエントリーと、暗号鍵と関連付けられたLBA範囲と、先行する範囲内の最終LBAへ割り当てられたデータを書き込んだ後にスキップされた上記幾つかの物理的セクターを示すオフセットとを含み得る。幾つかのLBAと関連付けられかつ暗号鍵と関連付けられたデータを書き込む場合、先行するLBA範囲からの鍵範囲テーブル内のオフセットおよび暗号鍵を累積(例えば、合計)し、かつ、この累積(合計)数を用いて、上記幾つかのLBAと関連付けられたデータの物理的位置を変換することができる。LBAと関連付けられたデータの物理的位置を変換する際に用いられるオフセットは、鍵範囲テーブル内に配置することができる。このオフセットは、LBAと関連付けられた暗号鍵に基づいて鍵範囲テーブル内に配置することができる。
図2は、本開示の1つ以上の実施形態による不揮発性メモリ中の鍵ゾーンのブロック図である。図2において、第1の数のメモリセルと、第1の鍵ゾーン242によって示されるような第1の暗号鍵とを関連付けることができ、第2の数のメモリセルと、第2の鍵ゾーン244によって示されるような第2の暗号鍵とを関連付けることができる。上記の数のメモリセルは、ページ状に配置することができ、これを図2中の行によって示す。例えば、図2において、ページ246は1行の物理的セクターを含み得、各物理的セクターは幾つかのメモリセルを含み得る。1つのページは幾つかの物理的セクターを含み得、例えば図2中のページ246は8個の物理的セクターを含む。
メモリ内のページへデータを書き込む場合、このデータをデータ暗号化/復号化のための鍵ゾーンの暗号鍵と関連付けることができ、かつ、このデータを幾つかのLBAと関連付けることができる。例えば、鍵ゾーン242の第1の暗号鍵と関連付けられた幾つかのLBAおよび鍵ゾーン244の第2の暗号鍵と関連付けられた幾つかのLBAと関連付けられたデータを書き込むためのコマンド(単数または複数)を受信することができる。よって、1つの暗号鍵と関連付けられた幾つかのLBAから別の暗号鍵と関連付けられた幾つかのLBAへの遷移を、物理的ページの途中で発生させることができる。例えば、鍵ゾーン242の第1の暗号鍵と関連付けられた最後の2つのLBAと関連付けられたデータを、ページ254のうちの物理的セクター248において終了する最初の2つの物理的セクターに書き込むことができる。鍵ゾーン244の第2の暗号鍵と関連付けられたLBAと関連付けられたデータを、ページ256のうちの物理的セクター250(例えば、新規の物理的ページ)から開始する最初の6個の物理的セクターへ書き込むことができる。第1の暗号鍵と関連付けられたLBAと関連付けられたデータが、第2の暗号鍵と関連付けられたLBAとは異なるページへ書き込まれる。例えば、FTLの状態によっては、異なる暗号鍵と関連付けられたLBAと関連付けられたデータを同一ページへ書き込むことができない場合がある。第1の暗号鍵と関連付けられたLBAと関連付けられたデータと、第2の暗号鍵と関連付けられたLBAと関連付けられたデータとを、異なる物理的ページ上に書き込む場合、セクター248が存在しているページの最終の6個の物理的セクターをスキップする(例えば、これらのセクターにはデータは書き込まれない)。これらのスキップされた物理的セクターは、鍵ゾーン242の暗号鍵と関連付けられたLBA範囲と関連付けられた暗号鍵の記載と共に、鍵範囲テーブルのエントリーに記載される。1つ以上の実施形態において、2つ以上の異なる暗号鍵と関連付けられたデータのページを書き込む際、任意の数の物理的セクターをスキップすることができる。
図3は、本開示の1つ以上の実施形態による鍵範囲テーブルを示す。図3中の鍵範囲テーブルは、幾つかの列を含む。第1の列360は、データ暗号化に用いられる暗号鍵を示す。第2の列370は、特定の暗号鍵と関連付けられたLBA範囲を示す。第3の列380は、暗号鍵およびLBA範囲と関連付けられたLBAオフセットを示す。
図3に示す例において、列360は、幾つかの異なる暗号鍵362−1(「a」)、362−2(「b」)、362−3(「c」)、362−4(「d」)および362−5(「e」)を含む。各暗号鍵は、各LBA範囲372−1(LBA範囲0−127)、372−2(LBA範囲128−255)、372−3(LBA範囲256−383)、372−4(LBA範囲384−511)および372−5(LBA範囲512−639)と関連付けられる。
1つ以上の実施形態において、鍵範囲テーブルの列380中のLBAオフセットは、FTL(例えば、図1に示すFTL)がLBAをメモリシステム(例えば、図1中のシステム104)における物理的位置へ変換する際にスキップすべき物理的セクター数を示し得る。各暗号鍵362−1、362−2、362−3、362−4および362−5と、それらに関連付けられたLBA範囲372−1、372−2、372−3、372−4および372−5とは、それらに関連付けられたLBAオフセットを持ち得る。LBAオフセットは、1つの暗号鍵と関連付けられたデータの書き込みから別の(例えば、異なる)暗号鍵と関連付けられたデータの書き込みへ遷移する際の物理的ページ内の幾つかの物理的セクターのスキップに基づき得る。1つ以上の実施形態において、特定のLBA範囲に対応するLBAオフセットは、LBA値の増加と共に累積し得る。例えば、暗号鍵と関連付けられたLBAのオフセットは、各先行する暗号鍵間の遷移時におけるデータ書き込みと関連付けられた各LBAオフセットの合計である。
図3に示す例において、LBA範囲372−1と関連付けられた暗号鍵362−1のLBAオフセットは0である。なぜならば、暗号鍵362−1は鍵テーブル内の第1の暗号鍵であるため、暗号鍵362−1と関連付けられたLBAと関連付けられた先行する累積LBAオフセットは存在しないからである。よって、暗号鍵362−1と関連付けられた累積(例えば、合計)LBAオフセット382−1は0である。この例において、LBA範囲372−2と関連付けられた暗号鍵362−2の個々のLBAオフセットは7である。暗号鍵362−2の個々のLBAオフセットが7であるということは、暗号鍵362−1と関連付けられたデータの最終ページにおいて7個の物理的セクターがスキップされることを示す。暗号鍵362−2の累積LBAオフセット382−2は7である(例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計)。
この例において、LBA範囲372−3と関連付けられた暗号鍵362−3の個々のLBAオフセットは7である。暗号鍵362−3の個々のLBAオフセットが7であるということは、暗号鍵362−2と関連付けられたデータの最終ページにおいて7個の物理的セクターがスキップされることを示す。暗号鍵362−3の累積LBAオフセット382−3は14である(例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計)。
この例において、LBA範囲372−4と関連付けられた暗号鍵362−4の個々のLBAオフセットは1である。暗号鍵362−4の個々のLBAオフセットが1であるということは、暗号鍵362−3と関連付けられたデータの最終ページにおいて1個の物理的セクターがスキップされることを示す。暗号鍵362−4の累積LBAオフセット382−4は15である(例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計)。
この例において、LBA範囲372−5と関連付けられた暗号鍵362−5の個々のLBAオフセットは6である。暗号鍵362−5の個々のLBAオフセットが6であることは、暗号鍵362−4と関連付けられたデータの最終ページにおいて6個の物理的セクターがスキップされることを示す。暗号鍵362−5の累積LBAオフセット382−5は21である(例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計)。
<結論>
本開示は、論理ブロックアドレス変換のための方法を含む。1つのこのような方法は、LAと関連付けられたコマンドを受信することを含む。LAは、特定のLA範囲内にある。このような方法はまた、この特定の範囲以外の範囲のLAと関連付けられたデータを書き込む際にスキップされる幾つかの物理的位置に対応するオフセットを用いて、LAをメモリ内の物理的位置へと変換することを含む。
本明細書中、特定の実施形態を図示および記載してきたが、当業者であれば、同じ結果を達成するように計算された配置構成の代わりに、これらの記載の特定の実施形態を用いることが可能であることを理解する。本開示は、本開示の1つ以上の実施形態の適応または改変を網羅することを意図する。上記記載は例示的に示されたものであり、限定的なものではないことが理解されるべきである。当業者であれば、上記記載を鑑みれば、上記の実施形態と、本明細書中に具体的に記載されていない他の実施形態との組み合わせを想起する。本開示の1つ以上の実施形態の範囲は、上記の構造および方法が用いられる他の用途を含む。よって、本開示の1つ以上の実施形態の範囲は、添付の特許請求の範囲およびその均等物の範囲全体を元に決定されるべきである。
上記の詳細な記載において、本開示を簡潔にする目的のため、いくつかの特徴を単一の実施形態においてグループ分けしている。本開示の方法は、本開示の開示の実施形態において、各請求項中に明示的に記載された特徴よりも多数の特徴を用いなければならないという意図を反映したものととして解釈されるべきではない。すなわち、以下の特許請求の範囲に記載のように、本発明の内容は、単一の開示の実施形態の全特徴未満の特徴に含まれる。よって、以下の特許請求の範囲は詳細の記載に採用され、各請求項は、別個の実施形態として独立する。
100 コンピューティングシステム
102 ホストシステム
104 メモリシステム
108 コントローラ
110−1〜110−N ソリッドステートメモリデバイス
112 フラッシュ変換層(FTL)
114 鍵範囲テーブル
242、244 鍵ゾーン
246 ページ
248、250 物理的セクター
254、256 ページ
360、370、380 列
362−1〜362−5 暗号鍵
372−1〜372−5 LBA範囲
382−1〜382−5 累積LBAオフセット

Claims (9)

  1. 第1の暗号鍵を第1の論理アドレス(LA)のグループに関連付けることと、
    第2の暗号鍵を第2のLAのグループに関連付けることと、
    前記第1のLAのグループと関連付けられた第1のデータをメモリデバイス内の第1の数のメモリセルの一部に書き込む第1の書き込み動作と、
    前記第2のLAのグループと関連付けられた第2のデータを前記メモリデバイス内の第2の数のメモリセルに書き込む第2の書き込み動作と、を備え、
    前記第1、第2の書き込み動作において、前記第1のデータと前記第2のデータが異なるページに書き込まれるように、前記第1の数のメモリセルのうちの残りのメモリセルをスキップするデータ処理方法。
  2. 前記第1の暗号鍵は前記第1のLAのグループに関連付けられた前記第1のデータに適用し、前記第2の暗号鍵は前記第2のLAのグループに関連付けられた前記第2のデータに適用する、請求項1に記載のデータ処理方法。
  3. 前記第1の数のメモリセルは複数のページよりなる請求項1に記載のデータ処理方法。
  4. 第1の暗号鍵を用いて第1の論理アドレス(LA)のグループに関連付けられたデータを暗号化した第1のデータをメモリデバイスに書き込むことと、
    第2の暗号鍵を用いて第2のLAのグループに関連付けられたデータを暗号化した第2のデータを前記メモリデバイスに書き込むことと、を備え、
    前記第1のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第1のデータと前記第2のデータとを、それぞれ異なるページに書き込むデータ処理方法。
  5. 暗号化された前記第1のデータはメモリデバイス中の複数のページにわたって書き込まれる請求項4に記載のデータ処理方法。
  6. 前記複数のページのなかの最後のページのうちの一部の物理的位置には前記第1のデータが書き込まれ、該ページの末尾の残りの物理的位置はスキップされる請求項5に記載のデータ処理方法。
  7. 第1、第2の暗号鍵を用いて暗号化されたデータが格納された不揮発性メモリと、
    前記不揮発性メモリと接続されたコントローラであって、前記コントローラは、
    第1の論理アドレス(LA)のグループを前記第1の暗号鍵と関連付けることと、
    第2のLAのグループを前記第2の暗号鍵と関連付けることと、
    前記第1の暗号鍵を用いて前記第1のLAのグループに関連付けられたデータを暗号化した第1のデータと、前記第2の暗号鍵を用いて前記第2のLAのグループに関連付けられたデータを暗号化した第2のデータと、を前記不揮発性メモリに書き込む際に、前記第1のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第1のデータと前記第2のデータとは、異なるページに書き込むことと、
    を含む、メモリシステム。
  8. 暗号化された前記第1のデータは前記不揮発性メモリ中の複数のページにわたり書き込まれる請求項7に記載のメモリシステム。
  9. 前記複数のページのなかの最後のページのうちの一部の物理的位置には前記第1のデータが書き込まれ、該ページの末尾の残りの物理的位置はスキップされる請求項8に記載のメモリシステム。
JP2015055721A 2011-03-06 2015-03-19 論理アドレス変換 Active JP6181689B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/041,402 US8732431B2 (en) 2011-03-06 2011-03-06 Logical address translation
US13/041,402 2011-03-06

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013557761A Division JP5719041B2 (ja) 2011-03-06 2012-03-01 論理アドレス変換

Publications (2)

Publication Number Publication Date
JP2015164044A true JP2015164044A (ja) 2015-09-10
JP6181689B2 JP6181689B2 (ja) 2017-08-16

Family

ID=46754039

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013557761A Active JP5719041B2 (ja) 2011-03-06 2012-03-01 論理アドレス変換
JP2015055721A Active JP6181689B2 (ja) 2011-03-06 2015-03-19 論理アドレス変換

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2013557761A Active JP5719041B2 (ja) 2011-03-06 2012-03-01 論理アドレス変換

Country Status (7)

Country Link
US (2) US8732431B2 (ja)
EP (1) EP2684132B1 (ja)
JP (2) JP5719041B2 (ja)
KR (1) KR101554084B1 (ja)
CN (1) CN103502958B (ja)
TW (1) TWI459200B (ja)
WO (1) WO2012121968A2 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862902B2 (en) * 2011-04-29 2014-10-14 Seagate Technology Llc Cascaded data encryption dependent on attributes of physical memory
US9086999B2 (en) * 2011-07-05 2015-07-21 International Business Machines Corporation Data encryption management
KR101818445B1 (ko) * 2011-07-08 2018-01-16 삼성전자주식회사 메모리 컨트롤러, 이의 동작 방법, 및 상기 메모리 컨트롤러를 포함하는 전자 장치들
US9443085B2 (en) 2011-07-19 2016-09-13 Elwha Llc Intrusion detection using taint accumulation
US9460290B2 (en) 2011-07-19 2016-10-04 Elwha Llc Conditional security response using taint vector monitoring
US9298918B2 (en) 2011-11-30 2016-03-29 Elwha Llc Taint injection and tracking
US9798873B2 (en) 2011-08-04 2017-10-24 Elwha Llc Processor operable to ensure code integrity
US9465657B2 (en) 2011-07-19 2016-10-11 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US9575903B2 (en) * 2011-08-04 2017-02-21 Elwha Llc Security perimeter
US9471373B2 (en) 2011-09-24 2016-10-18 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US9558034B2 (en) 2011-07-19 2017-01-31 Elwha Llc Entitlement vector for managing resource allocation
KR101979392B1 (ko) * 2012-05-17 2019-05-16 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
US8898548B1 (en) 2012-08-24 2014-11-25 Western Digital Technologies, Inc. Methods, data storage devices and systems having variable size ECC page size
US9268682B2 (en) 2012-10-05 2016-02-23 Skyera, Llc Methods, devices and systems for physical-to-logical mapping in solid state drives
US9507523B1 (en) 2012-10-12 2016-11-29 Western Digital Technologies, Inc. Methods, devices and systems for variable size logical page management in a solid state drive
US9489296B1 (en) 2012-10-17 2016-11-08 Western Digital Technologies, Inc. Methods, devices and systems for hardware-based garbage collection in solid state drives
US9684593B1 (en) * 2012-11-30 2017-06-20 EMC IP Holding Company LLC Techniques using an encryption tier property with application hinting and I/O tagging
TWI479359B (zh) * 2013-08-01 2015-04-01 Phison Electronics Corp 指令執行方法、記憶體控制器與記憶體儲存裝置
US9354955B1 (en) 2014-03-19 2016-05-31 Western Digital Technologies, Inc. Partial garbage collection for fast error handling and optimized garbage collection for the invisible band
US9298647B2 (en) * 2014-08-25 2016-03-29 HGST Netherlands B.V. Method and apparatus to generate zero content over garbage data when encryption parameters are changed
CN104391805B (zh) * 2014-10-27 2017-12-05 浪潮集团有限公司 一种用于加密固态存储的数据结构
CN107430521B (zh) 2015-03-27 2022-02-18 英特尔公司 高效地址转换
JP2017033501A (ja) 2015-08-06 2017-02-09 株式会社東芝 記憶装置および制御方法
US20170093823A1 (en) * 2015-09-25 2017-03-30 Vinodh Gopal Encrypting Observable Address Information
US10169251B1 (en) * 2015-12-10 2019-01-01 Massachusetts Institute Of Technology Limted execution of software on a processor
TWI595356B (zh) * 2016-08-19 2017-08-11 大心電子(英屬維京群島)股份有限公司 資料傳輸方法及使用所述方法的儲存控制器與清單管理電路
KR102458312B1 (ko) 2017-06-09 2022-10-24 삼성전자주식회사 스토리지 장치 및 이의 동작 방법
US10534718B2 (en) * 2017-07-31 2020-01-14 Micron Technology, Inc. Variable-size table for address translation
US11436154B2 (en) 2017-12-01 2022-09-06 Micron Technology, Inc. Logical block mapping based on an offset
US10977182B2 (en) 2017-12-01 2021-04-13 Micron Technology, Inc. Logical block mapping based on an offset
US10831596B2 (en) 2018-01-22 2020-11-10 Micron Technology, Inc. Enhanced error correcting code capability using variable logical to physical associations of a data block
CN109951275B (zh) * 2019-02-22 2021-08-17 记忆科技(深圳)有限公司 密钥生成方法、装置、计算机设备及存储介质
KR20210142974A (ko) * 2020-05-19 2021-11-26 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350665A (ja) * 2000-06-06 2001-12-21 Hitachi Ltd ブロックアラインメント機能付き半導体記憶装置
JP2006504198A (ja) * 2002-10-28 2006-02-02 サンディスク コーポレイション 論理ブロックをスプリットする方法および装置
JP2008108039A (ja) * 2006-10-25 2008-05-08 Hitachi Ltd 暗号化機能を備えたストレージサブシステム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162433A (ja) * 2001-11-27 2003-06-06 Fujitsu Ltd メモリシステム
CA2530524A1 (en) 2003-06-23 2004-12-29 Koninklijke Philips Electronics N.V. Device and method for recording information with remapping of logical addresses to physical addresses when defects occur
US7480766B2 (en) * 2005-08-03 2009-01-20 Sandisk Corporation Interfacing systems operating through a logical address space and on a direct data file basis
JP2007094900A (ja) * 2005-09-29 2007-04-12 Eastman Kodak Co アクセス装置
CN101506902A (zh) 2006-08-21 2009-08-12 Nxp股份有限公司 用于数据处理的电路结构和方法
US20080046641A1 (en) 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
KR100969758B1 (ko) 2007-01-22 2010-07-13 삼성전자주식회사 플래시 변환 레이어에서 데이터를 암호화하여 처리하기위한 방법 및 장치
JP2009258948A (ja) 2008-04-16 2009-11-05 Panasonic Corp メモリコントローラ、不揮発性記憶装置および演算処理システム
US8341430B2 (en) * 2008-10-03 2012-12-25 Microsoft Corporation External encryption and recovery management with hardware encrypted storage devices
US8412880B2 (en) * 2009-01-08 2013-04-02 Micron Technology, Inc. Memory system controller to manage wear leveling across a plurality of storage nodes
US8180995B2 (en) 2009-01-21 2012-05-15 Micron Technology, Inc. Logical address offset in response to detecting a memory formatting operation
US8176295B2 (en) * 2009-04-20 2012-05-08 Imation Corp. Logical-to-physical address translation for a removable data storage device
US8386747B2 (en) 2009-06-11 2013-02-26 Freescale Semiconductor, Inc. Processor and method for dynamic and selective alteration of address translation
US9015401B2 (en) * 2011-04-28 2015-04-21 Seagate Technology Llc Selective purge of confidential data from a non-volatile memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350665A (ja) * 2000-06-06 2001-12-21 Hitachi Ltd ブロックアラインメント機能付き半導体記憶装置
JP2006504198A (ja) * 2002-10-28 2006-02-02 サンディスク コーポレイション 論理ブロックをスプリットする方法および装置
JP2008108039A (ja) * 2006-10-25 2008-05-08 Hitachi Ltd 暗号化機能を備えたストレージサブシステム

Also Published As

Publication number Publication date
JP2014507738A (ja) 2014-03-27
CN103502958A (zh) 2014-01-08
WO2012121968A3 (en) 2012-11-22
US9164701B2 (en) 2015-10-20
US20120226887A1 (en) 2012-09-06
JP5719041B2 (ja) 2015-05-13
JP6181689B2 (ja) 2017-08-16
WO2012121968A2 (en) 2012-09-13
EP2684132A2 (en) 2014-01-15
TWI459200B (zh) 2014-11-01
US8732431B2 (en) 2014-05-20
KR20130120541A (ko) 2013-11-04
TW201250470A (en) 2012-12-16
CN103502958B (zh) 2016-08-17
EP2684132A4 (en) 2014-12-10
EP2684132B1 (en) 2019-04-24
US20140317374A1 (en) 2014-10-23
KR101554084B1 (ko) 2015-09-17

Similar Documents

Publication Publication Date Title
JP6181689B2 (ja) 論理アドレス変換
US9472244B2 (en) Apparatus power control
KR101491943B1 (ko) 트랜잭션 로그 복구
US20100146194A1 (en) Storage Device And Data Management Method
KR20190099693A (ko) 메모리 시스템 및 그것의 동작 방법
US10936508B2 (en) Storage device and method of operating the same
US20180217773A1 (en) Memory device configuration commands
TWI717751B (zh) 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置
US10466938B2 (en) Non-volatile memory system using a plurality of mapping units and operating method thereof
KR102605566B1 (ko) 메모리 컨트롤러 및 그 동작 방법
CN111435333A (zh) 存储装置及其操作方法
US11868267B2 (en) Access unit and management segment memory operations
CN111506515A (zh) 存储器控制器及其操作方法
CN108108122B (zh) 控制器和存储器系统及其操作方法
US11817154B2 (en) Optimized threshold translation from serialized pipeline

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170302

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170720

R150 Certificate of patent or registration of utility model

Ref document number: 6181689

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