(57)【要約】      （修正有）【課題】ＳＳＤ（半導体ドライブ）において特定のＬＢＡ（論理ブロックアドレス）範囲と暗号鍵を関連付ける方法を提供する。【解決手段】第１の暗号鍵を第１のＬＡ（論理アドレス）のグループに関連付けることと、第２の暗号鍵を第２のＬＡのグループに関連付けることと、第１のＬＡのグループと関連付けられた第１のデータをメモリデバイス内の第１の数のメモリセルの一部に書き込む第１の書き込み動作と、第２のＬＡのグループと関連付けられた第２のデータをメモリデバイス内の第２の数のメモリセルに書き込む第２の書き込み動作と、を備える。第１、第２の書き込み動作において、第１のデータと第２のデータが異なるページに書き込まれるように、第１の数のメモリセルのうちの残りのメモリセルをスキップする。【選択図】図３
2015164044.tif 000002
【特許請求の範囲】
【請求項１】
第１の暗号鍵を第１の論理アドレス（ＬＡ）のグループに関連付けることと、
第２の暗号鍵を第２のＬＡのグループに関連付けることと、
前記第１のＬＡのグループと関連付けられた第１のデータをメモリデバイス内の第１の数のメモリセルの一部に書き込む第１の書き込み動作と、
前記第２のＬＡのグループと関連付けられた第２のデータを前記メモリデバイス内の第２の数のメモリセルに書き込む第２の書き込み動作と、を備え、
前記第１、第２の書き込み動作において、前記第１のデータと前記第２のデータが異なるページに書き込まれるように、前記第１の数のメモリセルのうちの残りのメモリセルをスキップするデータ処理方法。
【請求項２】
前記第１の暗号鍵は前記第１のＬＡのグループに関連付けられた前記第１のデータに適用し、前記第２の暗号鍵は前記第２のＬＡのグループに関連付けられた前記第２のデータに適用する、請求項１に記載のデータ処理方法。
【請求項３】
前記第１の数のメモリセルは複数のページよりなる請求項１に記載のデータ処理方法。
【請求項４】
第１の暗号鍵を用いて第１の論理アドレス（ＬＡ）のグループに関連付けられたデータを暗号化した第１のデータをメモリデバイスに書き込むことと、
第２の暗号鍵を用いて第２のＬＡのグループに関連付けられたデータを暗号化した第２のデータを前記メモリデバイスに書き込むことと、を備え、
前記第１のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第１のデータと前記第２のデータとを、それぞれ異なるページに書き込むデータ処理方法。
【請求項５】
暗号化された前記第１のデータはメモリデバイス中の複数のページにわたって書き込まれる請求項４に記載のデータ処理方法。
【請求項６】
前記複数のページのなかの最後のページのうちの一部の物理的位置には前記第１のデータが書き込まれ、該ページの末尾の残りの物理的位置はスキップされる請求項５に記載のデータ処理方法。
【請求項７】
第１、第２の暗号鍵を用いて暗号化されたデータが格納された不揮発性メモリと、
前記不揮発性メモリと接続されたコントローラであって、前記コントローラは、
第１の論理アドレス（ＬＡ）のグループを前記第１の暗号鍵と関連付けることと、
第２のＬＡのグループを前記第２の暗号鍵と関連付けることと、
前記第１の暗号鍵を用いて前記第１のＬＡのグループに関連付けられたデータを暗号化した第１のデータと、前記第２の暗号鍵を用いて前記第２のＬＡのグループに関連付けられたデータを暗号化した第２のデータと、を前記不揮発性メモリに書き込む際に、前記第１のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第１のデータと前記第２のデータとは、異なるページに書き込むことと、
を含む、メモリシステム。
【請求項８】
暗号化された前記第１のデータは前記不揮発性メモリ中の複数のページにわたり書き込まれる請求項７に記載のメモリシステム。
【請求項９】
前記複数のページのなかの最後のページのうちの一部の物理的位置には前記第１のデータが書き込まれ、該ページの末尾の残りの物理的位置はスキップされる請求項８に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、主に半導体メモリデバイス、方法およびシステムに関し、より詳細には、論理アドレス変換に関する。
【背景技術】
【０００２】
メモリデバイスは典型的には、コンピュータ内または他の電子デバイスの内部半導体集積回路として提供されることが多い。揮発性および不揮発性メモリを含めて、異なる多数の種類のメモリが存在する。揮発性メモリの場合、そのデータを維持するための電力を必要とし得、及び、とりわけ、ランダムアクセスメモリ（ＲＡＭ）と、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）と、同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）とを含む。給電されていない場合、不揮発性メモリは、記憶情報を保持することにより永続的データを提供することができ、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、リードオンリーメモリ（ＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、消去可能ＲＯＭ（ＥＰＲＯＭ）および相変化ランダムアクセスメモリ（ＰＣＲＡＭ）などを含み得る。
【０００３】
メモリデバイスを相互に組み合わせることにより、半導体ドライブ（ＳＳＤ）を形成することができる。半導体ドライブは、不揮発性メモリ（例えば、ＮＡＮＤフラッシュメモリおよびＮＯＲフラッシュメモリ）を含み得、かつ／または揮発性メモリ（例えば、他の多様な種類の不揮発性および揮発性メモリの内ＤＲＡＭおよびＳＲＡＭ）を含み得る。フラッシュメモリデバイス（例えば、窒化物層中の電荷トラップに情報を保存する半導体−酸化物−窒化物−酸化物−半導体および金属−酸化物−窒化物−酸化物−半導体コンデンサ構造を用いたフローティングゲートフラッシュデバイスおよび電荷捕獲フラッシュ（ＣＴＦ）デバイス）は、広範な電子用途のための不揮発性メモリとして利用することができる。フラッシュメモリデバイスは典型的には、高メモリ密度、高信頼性および低電力消費を可能にする単一トランジスタメモリセルを用いる。
【０００４】
ＳＳＤは、コンピュータ用主記憶デバイスとしてのハードディスクドライブの代わりに用いることが可能である。なぜならば、半導体ドライブは、性能、サイズ、重量、耐久性、動作温度範囲および電力消費の点においてハードドライブよりも有利であり得る。例えば、ＳＳＤを磁気ディスクドライブと比較した場合、ＳＳＤ内には可動部が無いため、磁気ディスクドライブと関連付けられたシーク時間、待ち時間および他の電気機械遅延を回避することができるため、ＳＳＤの方がより高性能であり得る。ＳＳＤ製造業者は、不揮発性フラッシュメモリを用いて内部バッテリー電源を用いないフラッシュＳＳＤを生成することができ、これにより、ドライブを高汎用性かつコンパクトにすることができる。
【０００５】
ＳＳＤは、幾つかのメモリデバイスを含み得る（例えば、幾つかのメモリチップ（本明細書中用いられる「幾つかの〜」という表現は、１つ以上の存在を指し得る（例えば、幾つかのメモリデバイスは、１つ以上のメモリデバイスを指し得る）。当業者であれば理解するように、メモリチップは、幾つかのダイおよび／または論理ユニット（ＬＵＮ）を含み得る。各ダイは、幾つかのメモリアレイと、アレイ上の周辺回路とを含み得る。これらのメモリアレイは、幾つかの物理的ページとして編成された幾つかのメモリセルを含み、物理的ページは幾つかのブロックへと編成され得る。
【０００６】
ＳＳＤは、論理アドレス（ＬＡ）テーブルを含み得る（例えば、論理ブロックアドレス（ＬＢＡ）テーブル）。ＬＢＡテーブルを用いて、情報を記録することができる。この情報により、例えば、データの論理アドレスが、ＳＳＤのメモリアレイ中のデータの物理的位置へと変換（例えば、リンク）される。ＬＢＡテーブルを半導体ドライブ中の揮発性メモリ中に保存することができ、ＬＢＡテーブルのコピーをソリッドステートドライブ中の不揮発性メモリ中に保存することもできる。コマンド（例えば、読み出し要求および／または書き込み要求）がソリッドステートドライブにおいて開始した場合、ＬＢＡテーブルを用いて、例えば半導体ドライブ中のデータの物理的位置を変換（例えば、ロケイト（配置））することができる。特定の論理アドレスにおけるデータを読み出しおよび／または書き込むための読み出しおよび／または書き込み要求は、ホストによって開始され得る。論理アドレスはＬＢＡテーブル中において見受けられ、その後対応する物理的アドレスを表示することができる。半導体ドライブは、表示された物理的アドレスからデータを読み出して、半導体ドライブについての読み出し要求を完了しかつ／または半導体ドライブは表示された物理的アドレスにデータを書き込んで、ソリッドステートドライブについての書き込み要求を完了することができる。
【０００７】
暗号データは、ソリッドステートメモリデバイス中に保存することができ、ホストが一定範囲のＬＢＡをグループとして取り扱う場合がある。例えば、暗号鍵は、特定のＬＢＡ範囲と関連付けられ得る。複数の暗号鍵を用いて、メモリデバイス中に保存されたデータを暗号化することができる。
【０００８】
従来のソリッドステートメモリデバイスが、例えば特許文献１及び２に記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００１−３５０６６５号公報
【特許文献２】特開２００７−９４９００号公報
【発明の概要】
【発明を解決するための手段】
【００１０】
本発明のデータ処理方法は、第１の暗号鍵を第１の論理アドレス（ＬＡ）のグループに関連付けることと、第２の暗号鍵を第２のＬＡのグループに関連付けることと、前記第１のＬＡのグループと関連付けられた第１のデータをメモリデバイス内の第１の数のメモリセルの一部に書き込む第１の書き込み動作と、前記第２のＬＡのグループと関連付けられた第２のデータを前記メモリデバイス内の第２の数のメモリセルに書き込む第２の書き込み動作と、を備え、前記第１、第２の書き込み動作において、前記第１のデータと前記第２のデータが異なるページに書き込まれるように、前記第１の数のメモリセルのうちの残りのメモリセルをスキップする、ことを特徴するものである。
【００１１】
本発明の他のデータ処理方法は、第１の暗号鍵を用いて第１の論理アドレス（ＬＡ）のグループに関連付けられたデータを暗号化した第１のデータをメモリデバイスに書き込むことと、第２の暗号鍵を用いて第２のＬＡのグループに関連付けられたデータを暗号化した第２のデータを前記メモリデバイスに書き込むことと、を備え、前記第１のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第１のデータと前記第２のデータとを、それぞれ異なるページに書き込む、ことを特徴とするものである。
【００１２】
本発明のメモリシステムは、第１、第２の暗号鍵を用いて暗号化されたデータが格納された不揮発性メモリと、前記不揮発性メモリと接続されたコントローラであって、前記コントローラは、第１の論理アドレス（ＬＡ）のグループを前記第１の暗号鍵と関連付けることと、第２のＬＡのグループを前記第２の暗号鍵と関連付けることと、前記第１の暗号鍵を用いて前記第１のＬＡのグループに関連付けられたデータを暗号化した第１のデータと、前記第２の暗号鍵を用いて前記第２のＬＡのグループに関連付けられたデータを暗号化した第２のデータと、を前記不揮発性メモリに書き込む際に、前記第１のデータの末尾から前記末尾が属するページの最後まで書き込みデータの含まれない複数の物理的位置を設けることで、前記第１のデータと前記第２のデータとは、異なるページに書き込むことと、を含む、ことを特徴とするものである。
【図面の簡単な説明】
【００１３】
【図１】本開示の１つ以上の実施形態による少なくとも１つのメモリシステムを含むコンピューティングシステムの機能ブロック図である。
【図２】本開示の１つ以上の実施形態による不揮発性メモリ中の鍵ゾーンのブロック図を示す。
【図３】本開示の１つ以上の実施形態によるａ鍵範囲テーブルを示す。
【発明を実施するための形態】
【００１４】
本開示は、論理アドレス変換のための方法を含む。このような１つの方法は、ＬＡと関連付けられたコマンドを受信することであって、ＬＡは特定の範囲のＬＡ中に存在する、ことと、上記特定の範囲以外の範囲のＬＡと関連付けられたデータを書き込む際にスキップされる幾つかの物理的位置に対応するオフセットを用いて、ＬＡをメモリ中の物理的位置へと変換することと、を含む。
【００１５】
以下の本開示の詳細な記載において、本開示の一部を形成する添付図面を参照する。図面中、本開示の１つ以上の実施形態を実行する様態を例示的に示す。これらの実施形態は、当業者が本開示の実施形態を実行することを可能にするための充分な詳細を記載する。他の実施形態が利用可能であり、プロセス変更、電気的変更および／または構造的変更が本開示の範囲から逸脱することなく可能であることが理解されるべきである。本明細書中用いられる「Ｎ」という用語が特に図面中の参照符号と共に用いられる場合、幾つかの特定の特徴が本開示の１つ以上の実施形態において含まれ得ることを意味する。
【００１６】
本明細書中の図面において用いられるナンバリング法として、第１の桁（単数または複数）が図面数に対応し、残りの桁は、図面中の要素または構成要素を差す。異なる図面における類似の要素または構成要素は、類似の桁を用いて示す。例えば、１０８は、図１中の要素「０８」を指し得、類似の要素を図２中において２０８として示し得る。理解されるように、本開示の複数のさらなる実施形態が可能となるように、本明細書中の多様な実施形態中に示される要素を追加、交換かつ／または省略することが可能である。加えて、理解されるように、図面中に記載の要素の比率および相対的大きさは、本発明の特定の実施形態を例示することを意図し、限定的なものとしてとられるべきではない。
【００１７】
図１は、本開示の１つ以上の実施形態による、少なくとも１つのメモリシステム１０４を含むコンピューティングシステム１００の機能ブロック図である。図１に示す実施形態において、メモリシステム１０４（例えば、半導体ドライブ（ＳＳＤ））は、コントローラ１０８と、１つ以上のソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎ）とを含み得る。ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎにより、メモリシステム（例えば、メモリデバイスに合わせてフォーマットされたファイルシステム）のための記憶ボリュームを得ることができる。コントローラ１０８は、制御回路を含み得る（例えば、ハードウェア、ファームウェアおよび／またはソフトウェア）。１つ以上の実施形態において、コントローラ１０８は、物理的インターフェースおよびソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎを含むプリント基板へ接続された特定用途向け集積回路（ＡＳＩＣ）であり得る。
【００１８】
図１に示すように、コントローラ１０８は、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎに接続することができる。ホスト１０２は、メモリシステム１０４をアドレス指定する際、論理ブロックアドレス（ＬＢＡ）を用いることができる。フラッシュ変換層（ＦＴＬ）１１２は、ＬＢＡをソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎ中の物理的位置へと変換することができ、この逆も成立する。その結果、ホスト１０２は、メモリデバイス１１０−１、…、１１０−Ｎの物理的特性を無視し、メモリシステム１０４を論理セクターの連続した線形マップとして取り扱うことができる。ホスト１０２は、ラップトップコンピュータ、パーソナルコンピュート、デジタルカメラ、デジタル記録および再生デバイス、携帯電話、ＰＤＡ、メモリカードリーダー、インターフェースハブ、他のホストシステムを含み得、メモリアクセスデバイス（例えば、プロセッサ）を含み得る。当業者であれば、「プロセッサ」とは、１つ以上のプロセッサ（例えば、並列処理システム、複数のコプロセッサ）を意図し得ることを理解する。
【００１９】
１つ以上の実施形態において、物理的ホストインターフェースは、標準インターフェースの形態をとり得る。例えば、メモリシステム１０４がコンピューティングシステム１００中のデータ保存に用いられる場合、物理的ホストインターフェースは、シリアル高度技術アタッチメント（ＳＡＴＡ）、周辺構成要素相互接続エクスプレス（ＰＣＩｅ）またはユニバーサルシリアルバス（ＵＳＢ）、および他のコネクタおよびインターフェースであり得る。しかし、一般的に、物理的ホストインターフェースにより、メモリシステム１０４と、物理的ホストインターフェースのための適合可能な受容器を有するホスト１０２との間において制御、アドレス、データおよび他の信号を送るためのインターフェースを得ることができる。
【００２０】
データの読み出し、書き込みおよび消去などの動作を行うために、コントローラ１０８は、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎと通信し得る。コントローラ１０８は、回路を持ち得る。この回路は、１つ以上の集積回路および／または別個の構成要素であり得る。図１に示すように、コントローラ１０８は、物理的変換機能のための論理を含み得る（例えば、フラッシュ変換層（ＦＴＬ）１１２）。ＦＴＬ１１２を用いて、ホスト１０２から受信された要求と関連付けられた論理アドレスを、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎ内の物理的位置へとマッピングすることができる。本明細書中にさらに記載されるように、ＦＴＬ１１２は、ＬＢＡを物理的位置へと変換するためのオフセットを示す鍵範囲テーブル１１４中の情報を用いることができる（鍵範囲テーブル１１４は、コントローラに含まれるが、メモリデバイス１１０に含まれる場合もある）。メモリコントローラは、ソリッドステートメモリデバイス１１０−１、．．．、１１０−ＮのＩ／Ｏ接続（図１中図示せず）を選択的に接続して、適切な信号を適切なＩ／Ｏ接続において適切な時期に受信することができる。同様に、ホスト１０２とメモリシステム１０４との間の通信プロトコルは、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎのアクセスに必要なものと異なり得る。その後、コントローラ１０８は、ホストから受信されたコマンドを適切なコマンドへと変換して、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎへの所望のアクセスを達成することができる。
【００２１】
ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎは、メモリセルの１つ以上のアレイを含み得る（例えば、不揮発性メモリセル）。これらのアレイは、例えばＮＡＮＤアーキテクチャのフラッシュアレイであり得る。ＮＡＮＤアーキテクチャにおいて、「行」のメモリセルの制御ゲートをアクセスライン（例えば、ワードライン）と接続することができ、一方メモリセルを、選択ゲートソーストランジスタと選択ゲートドレイントランジスタとの間の「ストリング」の形態で、ドレインとソースとを直列に接続することができる。選択ゲートドレイントランジスタにより、ストリングをデータライン（例えば、ビットライン）へと接続することができる。「行」および「ストリング」という用語は、メモリセルが直線状または直接に配置されている状態を示さない。当業者であれば理解するように、メモリセルをビットラインおよびソースラインへ接続する様態は、アレイがＮＡＮＤアーキテクチャ、ＮＯＲアーキテクチャまたは何らかの他のメモリアレイアーキテクチャであるかによって異なる。
【００２２】
ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎは、グループ分けすることが可能な幾つかのメモリセルを含み得る。本明細書中用いられる「グループ」という用語は、１つ以上のメモリセルを含み得る（例えば、ページ、ブロック、プレーン、ダイ、アレイ全体、または他のメモリセルグループ）。例えば、いくつかのメモリアレイは、１つのメモリセルブロックを構成するメモリセルからなる幾つかのページを含み得る。幾つかのブロックは、メモリセルのプレーン内に含まれ得る。幾つかのメモリセルプレーンが、ダイ上に含まれ得る。一例として、１２８ＧＢメモリデバイスは、１ページ毎に４３１４バイトのデータ、１ブロック毎に１２８ページ、１プレーン毎に２０４８ブロック、１デバイス毎に１６プレーンを含み得る。
【００２３】
ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎは幾つかのチャンネルを含み得、各チャンネルは幾つかのダイを含み得る。各チャンネルは、論理ユニット数（ＬＵＮ）を用いて組織化することができる。ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎへデータを書き込む場合、幾つかのチャンネルおよびＬＵＮ上にデータをストライプすることができる。ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎへのデータ書き込みは、チャンネルと関連付けられたメモリセル間の予測パターン中にデータをストライプする書き込みパターンアルゴリズムを用いて行われる。データ書き込みは、ホストからチャンネルへと送られるデータトラフィックを取り扱うチャンネルの能力によって限定され得るため、幾つかのチャンネルをメモリシステムによって用いることにより、幾つかのチャンネル上へのデータの書き込みおよび読み出しを行うことが可能になる。
【００２４】
暗号データを、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎ中に保存することができる。例えば、複数の暗号鍵を用いて、メモリデバイス１１０中に保存されたデータを暗号化することができる。ＬＢＡの範囲は、暗号鍵と関連付けることができる。例えば、ＬＢＡ０〜ＬＢＡｘと関連付けられたデータは、暗号鍵０で暗号化され得、ＬＢＡｘ＋１〜ＬＢＡ２ｙと関連付けられたデータは、暗号鍵１で暗号化され得、ＬＢＡ２ｙ＋１〜ＬＢＡ３ｚと関連付けられたデータは、暗号鍵２で暗号化され得る。１つ以上の実施形態において、メモリシステムは、データ暗号化のために１６個の異なる暗号鍵を用いることができる。
【００２５】
メモリデバイスにおいて、物理的ページは、書き込み単位および／または読み出し単位のことを指し得る（例えば、共にまたはメモリセルの機能グループとして書き込まれかつ／または読み出される幾つかのセル）。別個の書き込み動作および／または読み出し動作により、偶数ページおよび奇数ページを書き込みおよび／または読み出しすることができる。多（マルチ）レベルセル（ＭＬＣ）を含む実施形態において、物理的ページを論理的に分割して、例えばデータの上側ページおよび下側ページとすることができる。例えば、１つのメモリセルは、１ビット以上をデータの上側ページへ提供し得、１ビット以上をデータの下側ページへ提供し得る。よって、データの上側ページおよび下側ページを１つの書き込み動作および／または読み出し動作の一部として書き込みおよび／または読み出すことが可能となる。なぜならば、論理上側ページおよび論理下側ページはどちらとも、１つの物理的ページの一部であるからである。
【００２６】
図１の実施形態は、本開示の実施形態を不明瞭にしないために図示していないさらなる回路を含み得る。例えば、メモリシステム１０４は、アドレス回路を含み得る。このアドレス回路は、Ｉ／Ｏ接続を介してＩ／Ｏ回路を通じて提供されたアドレス信号をラッチする。アドレス信号は、行復号器および列復号器によって受信および復号化され得る。行復号器および列復号器は、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎへアクセスする。当業者であれば、アドレス入力接続の数は、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎの密度およびアーキテクチャに応じて異なり得ることを理解する。
【００２７】
一般的に、コントローラ１０８は、ホストシステム１０２から受信された（例えば、ＰＣＩｅバスから受信された）コマンドパケットをホストメモリ変換回路に対するコマンド命令へと変換することと、メモリ応答を要求元ホストへと送られるホストシステムコマンドへ変換することとを行う。例えば、ホストインターフェース回路は、ＰＣＩｅベーストランザクション層パケットからＳＡＴＡコマンドパケットを構築することができる。
【００２８】
コントローラ１０８は、論理（例えば、ホスト）アドレス（例えば、受信コマンドと関連付けられたもの）を物理的メモリアドレスへと変換するように構成され得る。例えば、コントローラ１０８中のＦＴＬ１１２は、鍵範囲テーブルからの入力を用いて、ホストセクター読み出しコマンドおよび書き込みコマンドを、ソリッドステートメモリデバイス１１０−１、．．．、１１０−Ｎの特定部分向けのコマンドへと変換することができる。各ホスト動作は、単一セクターまたは多セクターの不揮発性メモリ動作へ変換することができる。
【００２９】
１つ以上の実施形態において、メモリデバイスへのデータ書き込みは、１ページに対して一度に行うことができる。メモリデバイス中の各ページは幾つかの物理的セクターを持ち得、各物理的セクターはＬＢＡと関連付けることができる。一例として、１つの物理的ページは、８つの物理的データセクターを持ち得る。しかし、実施形態は、物理的ページ毎の特定の数の物理的セクターに限定されない。データ書き込みを１ページに対して一度に行う場合、当該ページのデータを、例えば８個のＬＢＡと関連付けることができる。いくつかの実施形態において、第１の数のＬＢＡ（例えば、３個のＬＢＡ）を第１の暗号鍵と関連付けることができ、第２の数ＬＢＡ（例えば、５個のＬＢＡ）を第２の暗号鍵と関連付けることができる。１つのページについて規定されたデータが、２つの異なる暗号鍵と関連付けられたＬＢＡと関連付けられている場合、これらのデータを代わりに２つの異なるページに書き込むことができる。第１の数のＬＢＡと関連付けられたデータは、第１の暗号鍵と関連付けられた第１のページへ書き込まれ得、第２の数のＬＢＡと関連付けられたデータは、第２の暗号鍵と関連付けられた第２のページへと書き込まれ得る。これにより、第１のページへ割り当てられたデータを含む、ページの幾つかの物理的位置（例えば、セクター）を、データなしのまま残しておくことができる。例えば、第１のページのうちの残りの物理的セクターが、書き込みプロセスにおいてスキップされる。本開示の１つ以上の実施形態において、これらの物理的セクターのスキップは、鍵範囲テーブルのオフセットで説明される。ＦＴＬは、鍵範囲テーブル中の情報に基づいて、ＬＢＡを、シフトされた物理的位置へと変換することができる。
【００３０】
コントローラ１０８は、鍵範囲テーブル１１４を用いて、ＬＢＡと関連付けられたデータの物理的位置を変換することができる。鍵範囲テーブル１１４は、幾つかのエントリー（項目）を含み得る。これらのエントリーはそれぞれ、各エントリーと関連付けられた範囲に先行するＬＢＡの範囲（単数または複数）と関連付けられたデータのページ（単数または複数）を書き込む際にスキップされた幾つかの物理的位置（例えば、物理的セクター）に対応する各オフセットを示す。鍵範囲テーブルは、各暗号鍵についてのエントリーと、暗号鍵と関連付けられたＬＢＡ範囲と、先行する範囲内の最終ＬＢＡへ割り当てられたデータを書き込んだ後にスキップされた上記幾つかの物理的セクターを示すオフセットとを含み得る。幾つかのＬＢＡと関連付けられかつ暗号鍵と関連付けられたデータを書き込む場合、先行するＬＢＡ範囲からの鍵範囲テーブル内のオフセットおよび暗号鍵を累積（例えば、合計）し、かつ、この累積（合計）数を用いて、上記幾つかのＬＢＡと関連付けられたデータの物理的位置を変換することができる。ＬＢＡと関連付けられたデータの物理的位置を変換する際に用いられるオフセットは、鍵範囲テーブル内に配置することができる。このオフセットは、ＬＢＡと関連付けられた暗号鍵に基づいて鍵範囲テーブル内に配置することができる。
【００３１】
図２は、本開示の１つ以上の実施形態による不揮発性メモリ中の鍵ゾーンのブロック図である。図２において、第１の数のメモリセルと、第１の鍵ゾーン２４２によって示されるような第１の暗号鍵とを関連付けることができ、第２の数のメモリセルと、第２の鍵ゾーン２４４によって示されるような第２の暗号鍵とを関連付けることができる。上記の数のメモリセルは、ページ状に配置することができ、これを図２中の行によって示す。例えば、図２において、ページ２４６は１行の物理的セクターを含み得、各物理的セクターは幾つかのメモリセルを含み得る。１つのページは幾つかの物理的セクターを含み得、例えば図２中のページ２４６は８個の物理的セクターを含む。
【００３２】
メモリ内のページへデータを書き込む場合、このデータをデータ暗号化／復号化のための鍵ゾーンの暗号鍵と関連付けることができ、かつ、このデータを幾つかのＬＢＡと関連付けることができる。例えば、鍵ゾーン２４２の第１の暗号鍵と関連付けられた幾つかのＬＢＡおよび鍵ゾーン２４４の第２の暗号鍵と関連付けられた幾つかのＬＢＡと関連付けられたデータを書き込むためのコマンド（単数または複数）を受信することができる。よって、１つの暗号鍵と関連付けられた幾つかのＬＢＡから別の暗号鍵と関連付けられた幾つかのＬＢＡへの遷移を、物理的ページの途中で発生させることができる。例えば、鍵ゾーン２４２の第１の暗号鍵と関連付けられた最後の２つのＬＢＡと関連付けられたデータを、ページ２５４のうちの物理的セクター２４８において終了する最初の２つの物理的セクターに書き込むことができる。鍵ゾーン２４４の第２の暗号鍵と関連付けられたＬＢＡと関連付けられたデータを、ページ２５６のうちの物理的セクター２５０（例えば、新規の物理的ページ）から開始する最初の６個の物理的セクターへ書き込むことができる。第１の暗号鍵と関連付けられたＬＢＡと関連付けられたデータが、第２の暗号鍵と関連付けられたＬＢＡとは異なるページへ書き込まれる。例えば、ＦＴＬの状態によっては、異なる暗号鍵と関連付けられたＬＢＡと関連付けられたデータを同一ページへ書き込むことができない場合がある。第１の暗号鍵と関連付けられたＬＢＡと関連付けられたデータと、第２の暗号鍵と関連付けられたＬＢＡと関連付けられたデータとを、異なる物理的ページ上に書き込む場合、セクター２４８が存在しているページの最終の６個の物理的セクターをスキップする（例えば、これらのセクターにはデータは書き込まれない）。これらのスキップされた物理的セクターは、鍵ゾーン２４２の暗号鍵と関連付けられたＬＢＡ範囲と関連付けられた暗号鍵の記載と共に、鍵範囲テーブルのエントリーに記載される。１つ以上の実施形態において、２つ以上の異なる暗号鍵と関連付けられたデータのページを書き込む際、任意の数の物理的セクターをスキップすることができる。
【００３３】
図３は、本開示の１つ以上の実施形態による鍵範囲テーブルを示す。図３中の鍵範囲テーブルは、幾つかの列を含む。第１の列３６０は、データ暗号化に用いられる暗号鍵を示す。第２の列３７０は、特定の暗号鍵と関連付けられたＬＢＡ範囲を示す。第３の列３８０は、暗号鍵およびＬＢＡ範囲と関連付けられたＬＢＡオフセットを示す。
【００３４】
図３に示す例において、列３６０は、幾つかの異なる暗号鍵３６２−１（「ａ」）、３６２−２（「ｂ」）、３６２−３（「ｃ」）、３６２−４（「ｄ」）および３６２−５（「ｅ」）を含む。各暗号鍵は、各ＬＢＡ範囲３７２−１（ＬＢＡ範囲０−１２７）、３７２−２（ＬＢＡ範囲１２８−２５５）、３７２−３（ＬＢＡ範囲２５６−３８３）、３７２−４（ＬＢＡ範囲３８４−５１１）および３７２−５（ＬＢＡ範囲５１２−６３９）と関連付けられる。
【００３５】
１つ以上の実施形態において、鍵範囲テーブルの列３８０中のＬＢＡオフセットは、ＦＴＬ（例えば、図１に示すＦＴＬ）がＬＢＡをメモリシステム（例えば、図１中のシステム１０４）における物理的位置へ変換する際にスキップすべき物理的セクター数を示し得る。各暗号鍵３６２−１、３６２−２、３６２−３、３６２−４および３６２−５と、それらに関連付けられたＬＢＡ範囲３７２−１、３７２−２、３７２−３、３７２−４および３７２−５とは、それらに関連付けられたＬＢＡオフセットを持ち得る。ＬＢＡオフセットは、１つの暗号鍵と関連付けられたデータの書き込みから別の（例えば、異なる）暗号鍵と関連付けられたデータの書き込みへ遷移する際の物理的ページ内の幾つかの物理的セクターのスキップに基づき得る。１つ以上の実施形態において、特定のＬＢＡ範囲に対応するＬＢＡオフセットは、ＬＢＡ値の増加と共に累積し得る。例えば、暗号鍵と関連付けられたＬＢＡのオフセットは、各先行する暗号鍵間の遷移時におけるデータ書き込みと関連付けられた各ＬＢＡオフセットの合計である。
【００３６】
図３に示す例において、ＬＢＡ範囲３７２−１と関連付けられた暗号鍵３６２−１のＬＢＡオフセットは０である。なぜならば、暗号鍵３６２−１は鍵テーブル内の第１の暗号鍵であるため、暗号鍵３６２−１と関連付けられたＬＢＡと関連付けられた先行する累積ＬＢＡオフセットは存在しないからである。よって、暗号鍵３６２−１と関連付けられた累積（例えば、合計）ＬＢＡオフセット３８２−１は０である。この例において、ＬＢＡ範囲３７２−２と関連付けられた暗号鍵３６２−２の個々のＬＢＡオフセットは７である。暗号鍵３６２−２の個々のＬＢＡオフセットが７であるということは、暗号鍵３６２−１と関連付けられたデータの最終ページにおいて７個の物理的セクターがスキップされることを示す。暗号鍵３６２−２の累積ＬＢＡオフセット３８２−２は７である（例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計）。
【００３７】
この例において、ＬＢＡ範囲３７２−３と関連付けられた暗号鍵３６２−３の個々のＬＢＡオフセットは７である。暗号鍵３６２−３の個々のＬＢＡオフセットが７であるということは、暗号鍵３６２−２と関連付けられたデータの最終ページにおいて７個の物理的セクターがスキップされることを示す。暗号鍵３６２−３の累積ＬＢＡオフセット３８２−３は１４である（例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計）。
【００３８】
この例において、ＬＢＡ範囲３７２−４と関連付けられた暗号鍵３６２−４の個々のＬＢＡオフセットは１である。暗号鍵３６２−４の個々のＬＢＡオフセットが１であるということは、暗号鍵３６２−３と関連付けられたデータの最終ページにおいて１個の物理的セクターがスキップされることを示す。暗号鍵３６２−４の累積ＬＢＡオフセット３８２−４は１５である（例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計）。
【００３９】
この例において、ＬＢＡ範囲３７２−５と関連付けられた暗号鍵３６２−５の個々のＬＢＡオフセットは６である。暗号鍵３６２−５の個々のＬＢＡオフセットが６であることは、暗号鍵３６２−４と関連付けられたデータの最終ページにおいて６個の物理的セクターがスキップされることを示す。暗号鍵３６２−５の累積ＬＢＡオフセット３８２−５は２１である（例えば、鍵範囲テーブル中の先行する暗号鍵と関連付けられたデータの最終ページにおいてスキップされる物理的セクターの合計）。
【００４０】
＜結論＞
本開示は、論理ブロックアドレス変換のための方法を含む。１つのこのような方法は、ＬＡと関連付けられたコマンドを受信することを含む。ＬＡは、特定のＬＡ範囲内にある。このような方法はまた、この特定の範囲以外の範囲のＬＡと関連付けられたデータを書き込む際にスキップされる幾つかの物理的位置に対応するオフセットを用いて、ＬＡをメモリ内の物理的位置へと変換することを含む。
【００４１】
本明細書中、特定の実施形態を図示および記載してきたが、当業者であれば、同じ結果を達成するように計算された配置構成の代わりに、これらの記載の特定の実施形態を用いることが可能であることを理解する。本開示は、本開示の１つ以上の実施形態の適応または改変を網羅することを意図する。上記記載は例示的に示されたものであり、限定的なものではないことが理解されるべきである。当業者であれば、上記記載を鑑みれば、上記の実施形態と、本明細書中に具体的に記載されていない他の実施形態との組み合わせを想起する。本開示の１つ以上の実施形態の範囲は、上記の構造および方法が用いられる他の用途を含む。よって、本開示の１つ以上の実施形態の範囲は、添付の特許請求の範囲およびその均等物の範囲全体を元に決定されるべきである。
【００４２】
上記の詳細な記載において、本開示を簡潔にする目的のため、いくつかの特徴を単一の実施形態においてグループ分けしている。本開示の方法は、本開示の開示の実施形態において、各請求項中に明示的に記載された特徴よりも多数の特徴を用いなければならないという意図を反映したものととして解釈されるべきではない。すなわち、以下の特許請求の範囲に記載のように、本発明の内容は、単一の開示の実施形態の全特徴未満の特徴に含まれる。よって、以下の特許請求の範囲は詳細の記載に採用され、各請求項は、別個の実施形態として独立する。
【符号の説明】
【００４３】
１００  コンピューティングシステム
１０２  ホストシステム
１０４  メモリシステム
１０８  コントローラ
１１０−１〜１１０−Ｎ  ソリッドステートメモリデバイス
１１２  フラッシュ変換層（ＦＴＬ）
１１４  鍵範囲テーブル
２４２、２４４  鍵ゾーン
２４６  ページ
２４８、２５０  物理的セクター
２５４、２５６  ページ
３６０、３７０、３８０  列
３６２−１〜３６２−５  暗号鍵
３７２−１〜３７２−５  ＬＢＡ範囲
３８２−１〜３８２−５  累積ＬＢＡオフセット
【図１】
2015164044.tif 000003
【図２】
2015164044.tif 000004
【図３】
2015164044.tif 000005