(57)【要約】  装置の例は、メモリセルのアレイの第１の部分と、メモリセルのアレイの第２の部分と、第１の部分に対応する第１のレジスタと、第２の部分に対応する第２のレジスタとを備える。第１のレジスタは、第１の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、第１の部分が、ウェアレベリングされることになるかどうかを示し、第２のレジスタは、第２の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、第２の部分が、ウェアレベリングされることになるかどうかを示す。この装置は、セットアップコマンドに応答して、第１の部分または第２の部分がウェアレベリングされることになるかどうかを示すために、第１のレジスタまたは第２のレジスタを設定する。そして、装置の電源投入時に、装置はセットアップコマンドを受け取る。【選択図】図１
2020529665.tif 000002
【特許請求の範囲】
【請求項１】
装置の動作方法であって、
ウェアレベリングすべきメモリアレイの部分を、前記部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて選択すること、及び
前記部分をウェアレベリングすることを含む前記方法。
【請求項２】
ウェアレベリングすべき前記部分を選択することが、前記メモリアレイの最後にアクセスされた部分を選択することを含む、請求項１に記載の方法。
【請求項３】
ウェアレベリングすべき前記部分を選択することが、ホストから受け取られるコマンドに指定されたアドレスを有した前記メモリアレイの部分を選択することを含む、請求項１に記載の方法。
【請求項４】
前記ホストは、前記アドレスを有した前記部分が特定の回数以上アクセスされたことを判定することに応答して、前記コマンドに前記アドレスを追加することをさらに含む、請求項３に記載の方法。
【請求項５】
ウェアレベリングすべき前記部分を選択することは、ホストが、前記部分に対応する第１のレジスタを設定して、前記部分がウェアレベリングされるようにするとともに、前記メモリアレイの残りの部分に対応する複数の第２のレジスタを設定して、前記残りの部分がウェアレベリングされないようにすることを含む、請求項１に記載の方法。
【請求項６】
前記ホストからのコマンドに応答して、前記第１のレジスタを設定するとともに、前記複数の第２のレジスタを設定することを含む、請求項５に記載の方法。
【請求項７】
前記第１のレジスタを設定することは、前記部分が特定の回数以上アクセスされたことを前記ホストが判定することに応答ており、前記複数の第２のレジスタを設定して、前記残りの部分がウェアレベリングされないようにすることは、前記残りの部分が前記特定の回数よりも少なくアクセスされたことを前記ホストが判定することに応答している、請求項５に記載の方法。
【請求項８】
メモリセルのアレイの第１の部分と、
メモリセルの前記アレイの第２の部分と、
前記第１の部分に対応する第１のレジスタと、
前記第２の部分に対応する第２のレジスタと、を備え、
前記第１のレジスタは、前記第１の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、前記第１の部分がウェアレベリングされることになるかどうかを示し、
前記第２のレジスタは、前記第２の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、前記第２の部分がウェアレベリングされることになるかどうかを示す、装置。
【請求項９】
前記第１のレジスタは、前記第１の部分が特定の回数以上アクセスされることに応答して、前記第１の部分がウェアレベリングされることになることを示す、請求項８に記載の装置。
【請求項１０】
前記第１の部分と前記第２の部分とは、互いに独立してウェアレベリングされる、請求項８に記載の装置。
【請求項１１】
前記装置は、前記第１の部分がウェアレベリングされることになることを前記第１のレジスタが示す場合にのみ、前記第１の部分をウェアレベリングする、請求項８に記載の装置。
【請求項１２】
前記装置は、セットアップコマンドに応答して、前記第１の部分がウェアレベリングされることになるかどうかを示すために前記第１のレジスタを設定する、請求項７〜１１のいずれか１項に記載の装置。
【請求項１３】
前記装置は、前記装置の電源投入時に前記セットアップコマンドを受け取る、請求項１２に記載の装置。
【請求項１４】
複数の部分を備えるメモリアレイと、
前記複数の部分のうちの最後にアクセスされた部分のアドレスを格納するレジスタと、を備え、
前記メモリは、前記アドレスが前記レジスタ内に格納された後に受け取られたコマンドに応答して、前記最後にアクセスされた部分をウェアレベリングする、装置。
【請求項１５】
前記コマンドは、前記最後にアクセスされた部分の前記アドレスが格納された後に受け取られた次のウェアレベリングコマンドまたは次のリフレッシュコマンドである、請求項１４に記載の装置。
【請求項１６】
ホストと、
前記ホストに結合され、メモリセルのアレイの複数の部分を備えるメモリと、を備え、
前記ホストは、前記複数の部分がアクセスされることになる頻度、またはアクセスされる頻度に基づいて、前記複数の部分のどれがウェアレベリングされることになるかを前記メモリに示す、装置。
【請求項１７】
前記ホストは、ウェアレベリングされることになる前記複数の部分のうちの前記部分のアドレスを指定することにより、前記複数の部分のどれがウェアレベリングされることになるかを示すウェアレベリングコマンドまたはリフレッシュコマンドを送り、
前記メモリは、前記コマンドに応答して、前記コマンドで指定されるアドレスの前記複数の部分のうちの前記部分をウェアレベリングする、請求項１６に記載の装置。
【請求項１８】
前記ホストは、前記複数の部分にそれぞれ対応する前記メモリのレジスタが、前記複数の部分のみにウェアレベリングが実行されるようにすることによって、前記複数の部分のどれがウェアレベリングされることになるかを示すセットアップコマンドを送る、請求項１６及び請求項１７のいずれか１項に記載の装置。
【請求項１９】
前記ホストは、前記複数の部分の各部分がアクセスされる頻度を監視する、請求項１６及び請求項１７のいずれか１項に記載の装置。
【請求項２０】
前記ホストは、複数のカウンタを備え、前記複数のカウンタのそれぞれのカウンタが、前記複数の部分の対応する部分にそれぞれ対応し、
前記ホストは、前記カウンタのそれぞれのカウンタに対応する前記複数の部分のうちの一部分が、前記部分が特定の回数以上アクセスされたことを示す前記カウンタのそれぞれの前記カウンタに応答して、ウェアレベリングされることになることを示す、請求項１６及び請求項１７のいずれか１項に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、全体として、コンピューティングシステム及び／またはメモリシステムなどの電子システムに関し、より詳細には、メモリなどにおけるウェアレベリングに関する。
【背景技術】
【０００２】
メモリは、コンピュータ、携帯電話、携帯用デバイスなどの電子システムに多く実装される。揮発性メモリや不揮発性メモリなど、様々な種類のメモリがある。揮発性メモリは、データを維持するために電力が必要であり得、揮発性メモリとしては、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、及び同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）が含まれ得る。不揮発性メモリは、電力が供給されていないときに、格納データを保持することによって、永続的データを提供することができ、不揮発性メモリとしては、ＮＡＮＤ型フラッシュメモリ、ＮＯＲ型フラッシュメモリ、窒化物リードオンリーメモリ（ＮＲＯＭ）、相変化メモリ（例えば、相変化ランダムアクセスメモリ）、抵抗変化メモリ（例えば、抵抗変化ランダムアクセスメモリ）、クロスポイントメモリ、強誘電体ランダムアクセスメモリ（ＦｅＲＡＭ）、またはその種の他のものが含まれ得る。ハードディスクドライブ（ＨＤＤ）は、別種のメモリの例であり、ＨＤＤとしては、磁気テープ及び／または光ディスクが含まれ得る。
【０００３】
メモリの耐久性は、メモリがデータを確実に保存することができなくなる前（例えば、メモリが故障しそうになる前）に、メモリが持続し得る書き込み／消去（例えば、プログラムの書き込み／消去）サイクル数などの書き込み回数として定義され得る。例えば、不揮発性メモリはＤＲＡＭよりも耐久性が低い場合がある。
【０００４】
一部の例では、不揮発性メモリは、メモリセルのページ、メモリセルのブロックなど、メモリセルのグループに分割され得る。例えば、メモリセルの一部のグループは、別の一部よりも多い回数の書き込みを受け得、少ない回数の書き込みを受けるグループに比べて故障する可能性が高くなり得る。例えば、メモリは、そのメモリセルのグループの１つ以上の書き込み／消去サイクルカウントが高いが、他のグループの書き込み／消去サイクルカウントが低い場合には、故障する可能性が高いと考えられ得る。
【０００５】
一部の例では、ウェアレベリングを使用することによって、耐久性を改善することができる。ウェアレベリングにより、書き込みは、メモリセルのグループ全体にわたって分散され得る。例えば、ウェアレベリング中に、書き込み／消去サイクルカウントが高いグループは、書き込み／消去サイクルカウントが低いグループに置き換えられ得る。
【図面の簡単な説明】
【０００６】
【図１】本開示のいくつかの実施形態による装置の例を示すブロック図である。
【図２】本開示のいくつかの実施形態による装置の別の例を示すブロック図である。
【図３】本開示のいくつかの実施形態による装置の別の例を示すブロック図である。
【図４】本開示のいくつかの実施形態による装置の別の例を示すブロック図である。
【図５Ａ】本開示のいくつかの実施形態によるメモリアレイの例を示す図である。
【図５Ｂ】本開示のいくつかの実施形態によるメモリセルの例を示す図である。
【発明を実施するための形態】
【０００７】
一例では、メモリアレイの部分は、その部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、ウェアレベリングされるように選択され得る。その選択された部分は、ウェアレベリングされ得る。
【０００８】
本開示のいくつかの実施形態は、メモリシステムなどの従来の装置と比較して、ウェアレベリングによるバンド幅使用量の低減及び／または電力消費量の低減などの利益をもたらす。
【０００９】
以下の発明を実施するための形態では、本明細書の一部を構成する添付の図面を参照し、実例として具体例を示す。図面中で、同様の数字は、いくつかの図にわたって、実質的に同様の構成要素を表す。本開示の範囲から逸脱することなく、他の例を利用することができ、電気的変更を行うことができる。したがって、以下の発明を実施するための形態は、限定的な意味で解釈されるべきではなく、本開示の範囲は、添付の特許請求の範囲及びその均等物によってのみ定められる。
【００１０】
一部の既存のメモリでは、アレイの特定の部分の使用頻度に関係なく、メモリアレイ全体にウェアレベリングが適用され得る。例えば、ウェアレベリングが、それを必要としない可能性があるメモリアレイの部分に適用され、そのためにバンド幅及び電力が消費される場合がある。この問題は、記憶密度が増加するにつれて悪化し得る。
【００１１】
メモリアレイは、メモリセルのページ、メモリセルのブロックなど、メモリセルの複数のグループを含み得る。ラウンドロビン方式などの既存のウェアレベリング方式の例では、メモリセルのスペアグループが現行グループに取って代わり、この現行グループがスペアグループ化され得る。例えば、現行グループに割り当てられている論理アドレスが、アレイ内の現行グループのロケーションに代わって、アレイ内のスペアグループのロケーションに再マッピングされ得る。
【００１２】
図１は、本開示のいくつかの実施形態による電子システム１００などの装置のブロック図である。電子システム１００は、ホスト１０３（例えば、システムオンチップ（ＳＯＣ））などの装置（例えば、コントローラ）に結合されたメモリ１０１（例えば、ＦｅＲＡＭ）などのメモリシステムを含み得る。一部の例では、ホスト１０３は、パーソナルコンピュータ、携帯用デバイス、携帯電話などにおけるコンピューティングシステムの一部であってもよい。ホスト１０３は、例えば、コンピューティングシステムの中央処理装置（ＣＰＵ）などのプロセッサとメモリ１０１との間のインターフェースとして機能することができる。
【００１３】
「結合された」という用語には、電気的に結合されたもの、直接に結合されたもの、及び／または介在要素なしで直接に（例えば、直接の物理的接触によって）接続されたもの、または介在要素を用いて間接的に結合され及び／または接続されたものが含まれる場合がある。さらに、結合されたという用語は、（例えば、因果関係において見られるような）互いに協働しまたは相互作用する２つ以上の要素を伴い得る。
【００１４】
メモリ１０１は、メモリデバイス１０２と、メモリコントローラなどのコントローラ１０４とを含み得る。コントローラ１０４は、例えばプロセッサを含んでもよい。コントローラ１０４は、ホスト１０３から接続１０５を介してコマンド信号（またはコマンド）、アドレス信号（またはアドレス）、及びデータ信号（またはデータ）を受け取ることができ、ホスト１０３に接続１０５を介してデータを出力することができる。
【００１５】
メモリデバイス１０２は、メモリセルのメモリアレイ１０６を含み得る。一部の例では、メモリアレイ１０６は、バンク（例えば、パーティション）などの部分に分割される場合がある。メモリアレイ１０６は、例えば、クロスポイントメモリアレイ（例えば、３次元クロスポイントメモリアレイ）、図５Ａ中のアレイ５０６などの強誘電体メモリセルのアレイ、フラッシュメモリアレイ（例えば、ＮＡＮＤ型フラッシュメモリアレイ）などを含んでもよい。
【００１６】
メモリデバイス１０２は、Ｉ／Ｏ接続１１０を介しＩ／Ｏ回路１１２を経由して供給されるアドレス信号をラッチするためのアドレス回路１０８を含み得る。アドレス信号は、メモリアレイ１０６にアクセスするために、行デコーダ１１４及び列デコーダ１１６によって受け取られ、デコードされ得る。
【００１７】
メモリデバイス１０２は、一部の例では読み出し／ラッチ回路１２０であり得るセンス／バッファ回路を使用して、メモリアレイ列の電圧及び／または電流の変化を検知することにより、メモリアレイ１０６内のデータを読み出すことができる。読み出し／ラッチ回路１２０は、メモリアレイ１０６からデータを読み出してラッチすることができる。Ｉ／Ｏ回路１１２は、コントローラ１０４とのＩ／Ｏ接続１１０を介した双方向データ通信のために含まれ得る。メモリアレイ１０６にデータを書き込むために、書き込み回路１２２が含まれ得る。
【００１８】
制御回路１２４は、コントローラ１０４から制御接続１２６によって供給される信号をデコードすることができる。これらの信号には、データ読み出し動作、データ書き込み動作、及びデータ消去動作を含むメモリアレイ１０６上の動作を制御するために使用されるチップイネーブル信号、書き込みイネーブル信号、及びアドレスラッチ信号が含まれ得る。
【００１９】
制御回路１２４は、例えば、コントローラ１０４に含まれてもよい。コントローラ１０４は、単独であるか組み合わせであるかを別にして、他の回路、ファームウェア、ソフトウェア、またはその種の他のものを含むことができる。コントローラ１０４は、（例えば、全体的であれ部分的であれ、メモリアレイ１０６とは別のダイにある）外部コントローラであっても、または（例えば、メモリアレイ１０６と同じダイに含まれる）内部コントローラであってもよい。例えば、内部コントローラが、状態マシンまたはメモリシーケンサであってもよい。コントローラ１０４が内部コントローラであり得る一部の例では、コントローラ１０４はメモリデバイス１０２の一部であってもよい。
【００２０】
コントローラ１０４は、１つ以上のレジスタ１３０（例えば、ラッチ）を含んでもよい。一部の例では、レジスタ１３０の状態（例えば、レジスタ１３０内の値）は、アレイ１０６の対応する部分が、ホスト１０３からコントローラ１０４の接続１０５を介して受け取られるウェアレベリングコマンドに応答して、ウェアレベリングされるように選択され、したがって、ウェアレベリングされることになるかどうかを指定し得る。例えば、レジスタ１３０の状態（例えば、論理ハイまたは論理ローのいずれか）は、ホスト１０３からコントローラ１０４の接続１０５を介して受け取られるウェアレベリング設定コマンドに応答して設定されて、アレイ１０６の対応する部分が、ホスト１０３からのウェアレベリングコマンドに応答して、ウェアレベリングのために選択され、したがって、ウェアレベリングされることになるかどうかを指定し得る。他の例では、アレイ１０６の最後にアクセスされた（書き込まれた、読み出された、及び／または消去された）部分のアドレスを、レジスタ１３０が記憶してもよい。例えば、アレイ１０６の最後にアクセスされた部分（例えば、最後にアクセスされた部分のみ）が、ウェアレベリングコマンドに応答して、ウェアレベリングのために選択されてもよく、結果としてウェアレベリングされてもよい。
【００２１】
一部の例では、ホスト１０３は、アレイ１０６の各部分がアクセスされた回数を追跡記録し得る。例えば、コントローラ１０４は、アレイ１０６の各部分が書き込まれる回数、またはアレイ１０６の各部分で実行される書き込み／消去サイクルの数を追跡記録することができる。コントローラ１０４は、アレイ１０６の一部分がアクセスされた回数、例えばその部分が書き込まれる回数、またはその部分で書き込み／消去サイクルが実行される回数（例えば、書き込み／消去サイクル数）などをカウントするために、１つ以上のカウンタ１３５を含み得る。例えば、アレイ１０６の部分ごとにカウンタ１３５があってもよい。カウンタ１３５のカウント数は、例えば、システム１００の電源投入時に（例えば、ゼロに）リセットされ得る。
【００２２】
一部の例では、ＤＲＡＭ用に一般に使われ得るタイプのようなリフレッシュ信号（例えば、リフレッシュコマンド）が、接続１０５によって供給され得る。例えば、ウェアレベリングを開始する（例えば、トリガする）ために、ウェアレベリングコマンドの代わりにリフレッシュコマンドが用いられてもよい。例えば、標準的なＤＲＡＭリフレッシュの間に、データがメモリロケーションから読み出され得、読み出されたデータはそのメモリロケーションに書き戻され得る。
【００２３】
一部の例では、コントローラ１０４は、アドレス変換テーブル１３７などのアドレス変換器を含んでもよい。例えば、アドレス変換テーブル１３７は、ホスト１０３から受け取った論理アドレスを、メモリアレイ１０６内のメモリセルのグループのロケーション（例えば、ロケーションの物理アドレス）に変換することができる。一部の例では、メモリアレイ１０６の部分ごとに、その部分に対応するホスト１０３からの論理アドレスを、その部分の物理アドレスに変換することができる専用のアドレス変換テーブル１３７があってもよい。
【００２４】
図２は、本開示のいくつかの実施形態による電子システム１００の一部であり得る電子システム２００などの装置の一例のブロック図である。例えば、電子システム２００は、ホスト１０３の一部分であり得るホスト２０３に結合された、メモリ１０１の一部分であり得るメモリ２０１を含み得る。例えば、メモリ２０１は、メモリデバイス１０２などのメモリデバイスに結合された、コントローラ１０４などのコントローラを含み得る。一部の例では、メモリ２０１のコントローラは、メモリ２０１のメモリデバイスの一部分であってもよい（例えば、メモリ２０１は、メモリデバイスと呼ばれることがある）。
【００２５】
メモリ２０１は、メモリアレイ１０６の一部分であってもよく、バンク（例えば、パーティション）などの複数の部分２４０に分割されてもよいメモリアレイ２０６を含み得る。例えば、メモリアレイ２０６は、部分２４０−１〜２４０−４を含み得る。ただし、部分２４０の数は、４つの部分に限定されなくてもよい。各部分２４０は、個別にアドレス指定されてもよく、個別にアクセスされてもよい。例えば、各部分２４０は、個別に書き込まれ、読み出され、及び／または消去されてもよい。一部の例では、読み出しコマンド及び書き込みコマンドは、部分２４０−１〜２４０−４のうちの特定の１つのアドレスを含み得る。さらに、各部分２４０は、個別に、かつ他の部分２４０から独立して、ウェアレベリングされ得る。各部分２４０は、例えば、メモリセルのページ、メモリセルのブロックなどのメモリセルの複数のグループを含み得る。
【００２６】
メモリ２０１は、本開示のいくつかの実施形態による図１のレジスタ１３０の一部分であり得る、モードレジスタ（例えば、ラッチ）などのレジスタ２３０−１〜２３０−４を含み得る。レジスタ２３０−１〜２３０−４のうちのそれぞれのレジスタが、部分２４０−１〜２４０−４のうちの対応する部分にそれぞれ対応し得る。
【００２７】
カウンタ２３５−１〜２３５−４は、本開示のいくつかの実施形態による図１のカウンタ１３５の一部分であってもよい。ただし、カウンタの数は４つに限定されなくてもよい。一部の例では、ホスト２０３のカウンタ２３５−１〜２３５−４のうちのそれぞれのカウンタが、部分２４０−１〜２４０−４のうちの対応する部分にそれぞれ対応し得る。カウンタ２３５は、部分２４０−１〜２４０−４のうちの対応する部分がアクセスされた回数をカウントすることができる。例えば、対応する部分２４０がアクセスされるたびにカウントをインクリメントし得るカウンタ２３５に、信号２４１が送られ得る。例えば、カウントは、対応する部分２４０がアクセスされた回数を示すことができる。
【００２８】
ウェアレベリングは、ホスト２０３からのウェアレベリングコマンドまたはリフレッシュコマンドであり得るコマンド２４２に応答して、部分２４０−１〜２４０−４のうちの特定の選択された部分に対して行われ得る。一部の例では、レジスタ２３０の状態は、部分２４０のうちの対応する部分が、コマンド２４２に応答して、ウェアレベリングされることになるかどうかを示すことができる。例えば、論理１などの論理ハイがレジスタ２３０内に格納されて、コマンド２４２に応答してウェアレベリングすべき、部分２４０のうちの対応する部分が選択され得、コマンド２４２に応答して、その対応する部分２４０が無視される（例えば、ウェアレベリングされるように選択されない）レジスタ２３０内に、論理ゼロ（０）などの論理ローが格納され得る。レジスタ２３０の論理ハイは、対応する部分２４０がウェアレベリングされることを示すため（例えば、ウェアレベリングすべき対応する部分２４０を選択するため）に使用され得、レジスタ２３０の論理ローは、対応する部分２４０がウェアレベリングされないことを示すため（例えば、ウェアレベリングすべき対応する部分２４０を選択しないため）に使用され得るが、他の例では、論理ハイと論理ローとの役割が逆であってもよい。
【００２９】
一部の例では、ホスト２０３は、どの部分２４０が最も頻繁にアクセスされ得るかを前もって知ることができる。例えば、最も頻繁にアクセスされる可能性のある部分２４０は、コマンド２４２に応答してウェアレベリングされ得るが、相対的に頻繁にアクセスされない可能性のある部分は、コマンド２４２に応答してウェアレベリングされ得ない。例えば、最も頻繁にアクセスされる可能性のある部分２４０は、ウェアレベリングされるように選択され得るが、相対的に頻繁にアクセスされない可能性のある部分は、ウェアレベリングされるように選択され得ない。
【００３０】
一部の例では、ホスト２０３は、どのレジスタ２３０が、対応する部分２４０がアクセスされる頻度に基づいて、それらの対応する部分２４０でウェアレベリングが実行されることを示す状態（例えば、論理ハイ）に設定されることになるか、及びどのレジスタ２３０が、対応する部分２４０がアクセスされる頻度に基づいて、それらの対応する部分２４０でウェアレベリングが実行されないことを示す状態（例えば、論理ロー）に設定されることになるかをメモリ２０１に指定し得るセットアップコマンド２４４をメモリ２０１に送ることができる。このコマンドに応答して、レジスタ２３０は、設定され得る。例えば、レジスタ２３０−１〜１３０−４のそれぞれは、部分２４０−１〜２４０−４のうちの対応する部分がそれぞれアクセスされる頻度に基づいて、部分２４０−１〜２４０−４のうちの対応する部分がウェアレベリングされることになるかどうか（例えば、部分２４０−１〜２４０−４のうちの対応する部分がウェアレベリングされるように選択されるかどうか）を、それぞれ示してもよい。一部の例では、実行されるアクセスの数（例えば、期待数）が特定の数以上であることに応答して、対応する部分２４０がウェアレベリングされることを示すように、レジスタ２３０を設定することができる。
【００３１】
例えば、システム２００が電源を投入されるたびに（例えば、電源投入ごとに１回）、セットアップコマンド２４４がメモリ２０１に送られ得る。一部の例では、ホスト２０３は、対応する部分２４０でウェアレベリングが実行されることになるかどうかに基づいて、レジスタ２３０に状態を書き込むことができる。
【００３２】
一部の例では、レジスタ２３０の論理ローは、対応する部分２４０がウェアレベリングされるのを防ぐ（例えば、ロックアウトする）ように作用することができ、論理ハイを有するレジスタ２３０に対応する部分２４０のみが、コマンド２４２に応答してウェアレベリングされ得る（例えば、ウェアレベリングされるように選択され得る）ようにする。図２の例では、レジスタ２３０−１及び２３０−３での論理ゼロは、それぞれ、コマンド２４２に応答して、部分２４０−１及び２４０−３がウェアレベリングされるのを防ぐように作用することができ、論理１を有するレジスタ２３０−２及び２３０−４にそれぞれ対応する部分２４０−２及び２４０−４のみが、コマンド２４２に応答してウェアレベリングされ得るようにする。例えば、部分２４０−２及び２４０−４のみが、ウェアレベリングされるように選択され得る。
【００３３】
ホスト２０３は、カウンタ２３５のカウントを監視してもよい。カウンタ２３５のカウントが特定の値（例えば、対応する部分２４０への特定のアクセス回数を表す値）以上である場合に、ホスト２０３は、対応するレジスタ２３０に論理１を書き込むこと、または対応するレジスタ２３０内にメモリ２０１が論理１を格納するセットアップコマンド２４４を送ることなどによって、対応するレジスタ２３０を論理ハイに設定することができる。図２の例については、カウンタ２３５−１のカウントが特定の値以上になることに応答して、ホスト２０３により、（例えば、値を変更させるセットアップコマンド２４４をメモリ２０１に送ることによって、またはレジスタ２３０−１に論理１を書き込むことによって）対応するレジスタ２３０−１内の値が論理ゼロから論理１に変更されるようにすることができる。
【００３４】
一部の例では、ホスト２０３は、対応するカウンタ２３５のカウントから、各部分２４０の単位時間あたりのアクセス数（例えば、アクセス速度）を判定することができる。例えば、ホスト２０３は、対応する部分２４０へのアクセス速度に基づいて、レジスタ２３０を論理ローまたは論理ハイに設定することができる。図２の例については、部分２４０−１へのアクセス速度が特定の値以上になることに応答して、ホスト２０３は、対応するレジスタ２３０−１内の値を論理ゼロから論理１に変更することができ、部分２４０−２へのアクセス速度が特定の値未満であることに応答して、ホスト２０３は、対応するレジスタ２３０−２内の値を論理１から論理０に変更することができる。
【００３５】
図３は、本開示のいくつかの実施形態による電子システム１００の一部分であり得る電子システム３００などの装置の一例のブロック図である。例えば、電子システム３００は、ホスト１０３の一部分であり得るホスト３０３に結合された、メモリ１０１の一部分であり得るメモリ３０１を含み得る。例えば、メモリ３０１は、メモリデバイス１０２などのメモリデバイスに結合された、コントローラ１０４などのコントローラを含み得る。一部の例では、メモリ３０１のコントローラは、メモリ３０１のメモリデバイスの一部分であってもよい（例えば、メモリ３０１は、メモリデバイスと呼ばれることがある）。
【００３６】
メモリ３０１は、メモリアレイ１０６の一部分であってもよく、バンク（例えば、パーティション）などの複数の部分３４０に分割されてもよいメモリアレイ３０６を含み得る。例えば、メモリアレイ３０６は、部分３４０−１〜３４０−４を含み得る。ただし、部分３４０の数は、４つの部分に限定されなくてもよい。各部分３４０は、個別にアドレス指定されてもよく、個別にアクセスされてもよい。例えば、各部分３４０は、個別に書き込まれ、読み出され、及び／または消去されてもよい。一部の例では、読み出しコマンド及び書き込みコマンドは、部分３４０−１〜３４０−４のうちの特定の１つのアドレスを含み得る。さらに、各部分３４０は、個別に、かつ他の部分３４０から独立して、ウェアレベリングされ得る。各部分３４０は、例えば、メモリセルのページ、メモリセルのブロックなどのメモリセルの複数のグループを含み得る。
【００３７】
カウンタ３３５−１〜３３５−４は、本開示のいくつかの実施形態による図１のカウンタ１３５の一部分であってもよい。ただし、カウンタの数は４つに限定されなくてもよい。一部の例では、ホスト３０３のカウンタ３３５−１〜３３５−４のうちのそれぞれのカウンタが、部分３４０−１〜３４０−４のうちの対応する部分にそれぞれ対応し得る。カウンタ３３５は、部分３４０−１〜３４０−４のうちの対応する部分がアクセスされた回数をカウントすることができる。例えば、対応する部分３４０がアクセスされるたびにカウントをインクリメントし得るカウンタ３３５に、信号３４１が送られ得る。例えば、カウントは、対応する部分３４０がアクセスされた回数を示すことができる。
【００３８】
ウェアレベリングコマンドまたはリフレッシュコマンドなどのコマンド３４２が、ホスト３０３からメモリ３０１に送られて、部分３４０がウェアレベリングされるようにする（例えば、ウェアレベリングすべき部分３４０を選択する）ことができる。例えば、コマンド３４２は、ウェアレベリングすべき（例えば、ウェアレベリングされるように選択された）特定の部分３４０のアドレスを含むことができる。そのため、コマンド３４２は、例えば、部分指向コマンドと呼ばれ得る。一部の例では、コマンド３４３は、部分３４０の全てよりも少ないアドレスを含むことができる。例えば、コマンド３４２は、最も頻繁にアクセスされる可能性のある部分３４０のアドレスを含み得る。なお、例えば、コマンド３４２中にアドレスがある部分３４０のみが、ウェアレベリングされ得る。例えば、コマンド３４２中にアドレスがある部分３４０のみが、ウェアレベリングのために選択される。
【００３９】
一部の例では、ホスト３０３は、どの部分３４０が最も頻繁にアクセスされ得るかを前もって知ることができ、それらの部分のアドレスをコマンド３４２中に含めることができる。例えば、アドレスは、そのアドレスを有する部分が、アクセスされることになる頻度（例えば、アクセスされると予想される頻度）に基づいて含まれ得る。他の例では、コマンド３４２中のアドレスには、ウェアレベリングから除外されることになる部分のアドレスを、それらの部分がアクセスされることになる頻度（例えば、アクセスされると予想される頻度）に基づいて含めることができ、アドレスが現れない部分は、コマンド３４２に応答してウェアレベリングされる。例えば、コマンドは、ウェアレベリングされる部分のみを、それらの部分のアドレスのみを明示的に含めることによって、直接指定することができ、または除外されたアドレスのみがウェアレベリングされるように、ウェアレベリングされない部分のみのアドレスを含めることによって、ウェアレベリングされる部分のみを間接的に指定することができる。このようにして、例えば、コマンドは、ウェアレベリングされることになる部分のみを直接的または間接的に選択することができる。
【００４０】
他の例では、ホスト３０３は、カウンタ３３５のカウントを監視してもよい。カウンタ３３５のカウントが特定の値（例えば、対応する部分３４０への特定のアクセス回数を表す値）以上になることに応答して、ホスト３０３は、対応する部分３４０のアドレスをコマンド３４２に追加することができる。
【００４１】
一部の例では、ホスト３０３は、対応するカウンタ３３５のカウントから、各部分３４０の単位時間あたりのアクセス数（例えば、アクセス速度）を判定することができる。例えば、部分３４０へのアクセス速度が特定の値以上になることに応答して、ホスト３０３は、その部分３４０のアドレスをコマンド３４２に追加することができ、部分３４０へのアクセス速度が特定の値よりも小さくなることに応答して、ホスト３０３は、コマンド３４２から、その部分３４０のアドレスを削除することができる。
【００４２】
図４は、本開示のいくつかの実施形態による電子システム１００の一部分であり得る電子システム４００などの装置の一例のブロック図である。例えば、電子システム４００は、ホスト１０３の一部分であり得るホスト４０３に結合された、メモリ１０１の一部分であり得るメモリ４０１を含み得る。例えば、メモリ４０１は、メモリデバイス１０２などのメモリデバイスに結合された、コントローラ１０４などのコントローラを含み得る。一部の例では、メモリ４０１のコントローラは、メモリ４０１のメモリデバイスの一部分であってもよい（例えば、メモリ４０１は、メモリデバイスと呼ばれることがある）。
【００４３】
メモリ４０１は、メモリアレイ１０６の一部分であってもよく、バンク（例えば、パーティション）などの複数の部分４４０に分割されてもよいメモリアレイ４０６を含み得る。例えば、メモリアレイ４０６は、部分４４０−１〜４４０−４を含み得る。ただし、部分４４０の数は、４つの部分に限定されなくてもよい。各部分４４０は、個別にアドレス指定されてもよく、個別にアクセスされてもよい。例えば、各部分４４０は、個別に書き込まれ、読み出され、及び／または消去されてもよい。一部の例では、読み出しコマンド及び書き込みコマンドは、部分４４０−１〜４４０−４のうちの特定の１つのアドレスを含み得る。さらに、各部分４４０は、個別に、かつ他の部分４４０から独立して、ウェアレベリングされ得る。各部分４４０は、例えば、メモリセルのページ、メモリセルのブロックなどのメモリセルの複数のグループを含み得る。
【００４４】
ホスト４０３は、ウェアレベリングコマンドまたはリフレッシュコマンドなどのコマンド４４２を、メモリ４０１に送ることができる。メモリ４０１は、本開示のいくつかの実施形態による、例えば図１のレジスタ１３０の一部分であり得るレジスタ４３０（例えば、ラッチ）を含み得る。部分４４０の最後にアクセスされた部分４４０（例えば、部分４４０−１〜４４０−４）のアドレスを、レジスタ４３０が記憶してもよい。メモリ４０１は、アドレスがレジスタ４３０内に格納された後に、次のコマンド４４２を受け取ることに応答して、アドレスがレジスタ４３０内にある部分４４０をウェアレベリングすることができる。例えば、メモリ４０１は、コマンド４４２に応答してレジスタ４３０内のアドレスを読み出すことができ、そのアドレスを有する部分４４０をウェアレベリングすることができる。例えば、レジスタ４３０内にある最後にアクセスされた部分４４０のアドレスは、ウェアレベリングのためにその部分を選択することができる。
【００４５】
例えば、特定の最後にアクセスされた部分４４０のアドレスがレジスタ４３０内に現れる回数（例えば、特定の最後にアクセスされた部分４４０のアドレスがレジスタ４３０に現れる頻度）は、その特定の部分４４０がアクセスされる頻度の（例えば、少なくとも統計的に）尺度であることが予想される。例えば、アドレスがレジスタ４３０内に最も頻繁に現れる部分４４０は、最も頻繁にアクセスされている可能性が最も高く、アドレスがレジスタ４３０内に最も少なく現れる部分４４０は、最も少なくアクセスされている可能性が最も高い。例えば、アドレスがレジスタ４３０内にある部分４４０を選択することは、その部分４４０へのアクセス回数が残りの部分４４０よりも多いことに基づいて、その部分４４０を選択することに類似し得る。例えば、アドレスがレジスタ４３０内にある部分４４０を選択することは、その部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、その部分を選択することに類似し得る。
【００４６】
一部の例では、上に述べたウェアレベリングは、読み出しまたは書き込みの動作が実行されている間などに、バックグラウンド動作として実行されてもよい。例えば、ホストからのコマンドに応答して、メモリアレイの一部分で実行されるウェアレベリングは、読み出しまたは書き込みなどの優先度の高い（例えば、レイテンシがクリティカルな）動作を実行する必要があり得る場合には、延期されてもよい。
【００４７】
一部の例では、図２の各部分２４０、図３の各部分３４０、及び図４の各部分４４０など、メモリアレイの各部分は、例えば、使用中のブロックのグループの独自の（例えば、他の全てのグループ専用である）排他的セットと、スペアブロックの独自の排他的セットとを有し得る。一部の例では、メモリアレイの（例えば、各）部分におけるウェアレベリングは、現行グループなどの使用中のメモリセルのグループを、メモリセルの置き換え用スペアグループに置き換えることを含み得る。例えば、メモリアレイの一部分にある現行グループのロケーション（例えば、物理アドレス）にマッピングされ得る論理アドレスは、その部分にある置き換え用スペアグループのロケーションに再マッピングされ得る。例えば、メモリアレイの部分に関して、アドレス変換テーブル１３７などのアドレス変換テーブル内の既存グループの物理アドレスを、その部分の置き換え用スペアグループの物理アドレスに変更することにより、現行グループに対応する論理アドレスは、置き換え用スペアグループのアドレスに再マッピングされ得る。例えば、図１に関連して上で示したように、各部分２４０、３４０、及び４４０などの、メモリアレイ１０６の部分ごとに、専用のアドレス変換テーブル１３７が存在し得る。
【００４８】
メモリアレイの一部分（例えば、各部分）のウェアレベリングには、例えば、ラウンドロビン動作が含まれ得、この場合、（例えば、その部分専用の）スペアグループのキュー内の最初の位置にあるスペアグループが現行グループを置き換えることができ、現行グループはスペアグループのキュー内の最後の位置に配置され得る。後続のウェアレベリング動作では、キュー内の最後の位置から開始して、スペアグループは、これがキュー内の最初の位置に到達するまで移動し、最終的に既存のブロックを置き換えることができる。例えば、各ウェアレベリング中に、最後の位置にあるスペアグループは、交換された既存のブロックによって、最初の位置に向かって変位され得る。
【００４９】
図５Ａは、本開示のいくつかの実施形態による、強誘電体メモリアレイなどのメモリアレイ５０６の例を示す。例えば、メモリアレイ５０６は、メモリアレイ１０６、２０６、３０６、及び／または４０６であり得る。
【００５０】
メモリアレイ５０６は、異なる状態を記憶するようにプログラム可能なメモリセル５０８を含むことができる。メモリセル５０８は、プログラム可能な状態を表す電荷を保存するために、コンデンサを含み得る。例えば、充電されたコンデンサと充電されていないコンデンサとは、それぞれ２つの論理状態を表すことができる。メモリセル５０８は、一部の例では、強誘電体材料を備えたコンデンサを含み得る。例えば、強誘電体材料は自発電気分極を有し得る（例えば、電場の非存在下で、強誘電体材料は非ゼロの分極を有し得る）。強誘電体コンデンサの様々なレベルの電荷が、例えば、様々な論理状態を表し得る。
【００５１】
メモリセル５０８は、アクセス線５１０−１〜５１０−Ｍのうちのそれぞれのアクセス線などの、それぞれのアクセス線と、データ線５１５−１〜５１５−Ｎのうちのデータ線などの、それぞれのデータ（例えばディジット）線とに結合され得る。例えば、メモリセル５０８は、アクセス線５１０とデータ線５１５との間に結合され得る。一部の例では、アクセス線５１０はまた、ワード線とも呼ばれ得、データ線５１５はまた、ビット線とも呼ばれ得る。アクセス線５１０及びデータ線５１５は、例えば、銅、アルミニウム、金、タングステンなど、金属合金、他の導電性材料、またはその種の他のものなどの導電性材料で作られ得る。
【００５２】
一部の例では、アクセス線５１０に共通に結合されたメモリセル５０８は、メモリセルの行と呼ばれることがある。例えば、アクセス線５１０は行デコーダ１１４に結合され得、データ線は列デコーダ１１６に結合され得る。適切なアクセス線５１０及びデータ線５１５の活性化または選択により（例えば、アクセス線に電圧を印加することにより）、メモリセル５０８上で読み出し及び書き込みなどの動作を実行することができる。アクセス線５１０を活性化することで、メモリセル５０８の対応する行を、それらのそれぞれのデータ線５１５に電気的に結合することができる。
【００５３】
図５Ｂは、本開示のいくつかの実施形態によるメモリセル５０８を含む回路５２０の例を示す。回路５２０は、図５Ａに示すメモリセル５０８、アクセス線５１０、及びデータ線５１５の例であり得る強誘電体メモリセル５０８Ａ、アクセス線５１０Ａ、及びデータ線５１５Ａを含み得る。
【００５４】
メモリセル５０８Ａは、セルプレート５３０などの第１のプレートと、セルボトム５３５などの第２のプレートとを有することができるコンデンサ５２５などの論理記憶構成要素を含むことができる。セルプレート５３０及びセルボトム５３５は、それらの間に配置された強誘電体材料５４０を介して容量結合され得る。セルプレート５３０及びセルボトム５３５の向きは、メモリセル５０８Ａの動作を変えることなく反転させることができる。
【００５５】
回路５２０は、選択トランジスタなどの選択デバイス５５０を含み得る。例えば、選択デバイス５５０の制御ゲート５５２は、アクセス線５１０Ａに結合され得る。図５Ｂの例では、セルプレート５３０はプレート線５５５を介してアクセスされ得、セルボトム５３５はデータ線５１５Ａを介してアクセスされ得る。例えば、選択デバイス５５０は、アクセス線５１０Ａが選択デバイス５５０を活性化することに応答して、データ線５１５Ａをセルボトム５３５に選択的に結合するものであり得る。例えば、選択デバイス５５０が非活性化されると、コンデンサ５２５はデータ線５１５Ａから電気的に分離され得、選択デバイス５５０が活性化されると、コンデンサ５２５はデータ線５１５Ａに電気的に結合され得る。選択デバイス５５０の活性化は、例えば、メモリセル５０８Ａの選択と呼ばれることがある。上記の通り、コンデンサ５２５を充電または放電することによって、様々な状態を記憶させることができる。
【００５６】
本明細書では特定の例を図示し説明したが、当業者であれば、同じ結果を達成するために計算された構成を、提示した特定の実施形態に置き換えることができることを理解されるであろう。本開示は、本開示の１つ以上の実施形態の適応形態または変形形態を網羅することが意図されている。上記の説明は例示的なものであり、限定的なものではないことを理解されたい。本開示の１つ以上の例の範囲は、添付の特許請求の範囲を参照して、そのような特許請求の範囲が権利を与えられる均等物の全範囲と共に定められるべきである。
【図１】
2020529665.tif 000003
【図２】
2020529665.tif 000004
【図３】
2020529665.tif 000005
【図４】
2020529665.tif 000006
【図５Ａ】
2020529665.tif 000007
【図５Ｂ】
2020529665.tif 000008
【手続補正書】
【提出日】令和2年3月19日(2020.3.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
装置の動作方法であって、
ウェアレベリングすべきメモリアレイの部分を、前記部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて選択すること、及び
前記部分をウェアレベリングすることであって、ウェアレベリングすべき前記部分を選択することは、前記部分に対応する第１のレジスタを設定して、前記部分がウェアレベリングされるようにするとともに、前記メモリアレイの残りの部分に対応する複数の第２のレジスタを設定して、前記残りの部分がウェアレベリングされないようにすることを含む、前記部分をウェアレベリングすること
を含む前記方法。
【請求項２】
ウェアレベリングすべき前記部分を選択することが、前記メモリアレイの最後にアクセスされた部分を選択することを含む、請求項１に記載の方法。
【請求項３】
ホストから受け取られるコマンドに指定されたアドレスを有した前記メモリアレイの部分を選択することによって、ウェアレベリングすべき前記部分を選択すること、及び
前記ホストは、前記アドレスを有した前記部分が特定の回数以上アクセスされたことを判定することに応答して、前記コマンドに前記アドレスを追加すること
をさらに含む、請求項１に記載の方法。
【請求項４】
前記ホストからのコマンドに応答して、前記第１のレジスタを設定するとともに、前記複数の第２のレジスタを設定することを含む、請求項１に記載の方法。
【請求項５】
前記第１のレジスタを設定することは、前記部分が特定の回数以上アクセスされたことを前記ホストが判定することに応答しており、前記複数の第２のレジスタを設定して、前記残りの部分がウェアレベリングされないようにすることは、前記残りの部分が前記特定の回数よりも少なくアクセスされたことを前記ホストが判定することに応答している、請求項１に記載の方法。
【請求項６】
メモリセルのアレイの第１の部分と、
メモリセルの前記アレイの第２の部分と、
前記第１の部分に対応する第１のレジスタと、
前記第２の部分に対応する第２のレジスタと、を備え、
前記第１のレジスタは、前記第１の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、前記第１の部分がウェアレベリングされるために選択されたことを示す第１の状態に設定されるように構成され、
前記第２のレジスタは、前記第１のレジスタが前記第１の状態に設定されている間に、前記第２の部分がアクセスされる頻度、またはアクセスされることになる頻度に基づいて、前記第２の部分がウェアレベリングされるために選択されたことを示す前記第１の状態に設定されるように構成されている、
メモリ装置。
【請求項７】
前記第１のレジスタは、前記第１の部分が特定の回数以上アクセスされることに応答して、前記第１の状態に設定されるように構成されている、請求項６に記載のメモリ装置。
【請求項８】
前記第１の部分と前記第２の部分とは、互いに独立してウェアレベリングされる、請求項６に記載のメモリ装置。
【請求項９】
前記メモリ装置は、前記第１の部分が前記第１の状態に設定される場合にのみ、前記第１の部分をウェアレベリングする、請求項６に記載のメモリ装置。
【請求項１０】
複数の部分を備えるメモリアレイと、
前記複数の部分のうちの最後にアクセスされた部分のアドレスを格納するレジスタと、
各部分それぞれに専用のそれぞれのアドレス変換テーブルと、を備え、
前記メモリは、前記アドレスが前記レジスタ内に格納された後に受け取られたコマンドに応答して、前記最後にアクセスされた部分をウェアレベリングするように構成され、
前記メモリ装置は、複数の使用中グループのうちの使用中メモリセルグループの物理アドレスからスペアメモリセルグループの物理アドレスに、それぞれの前記アドレス変換テーブルの論理アドレスを再マッピングすることにより、前記最後にアクセスされた部分に専用の前記使用中メモリセルグループを、前記最後にアクセスされた部分に専用の前記スペアメモリセルグループで置き換えることによって、前記最後にアクセスされた部分をウェアレベリングするように構成されている、
メモリ装置。
【請求項１１】
前記最後にアクセスされた部分は、前記アドレスが前記レジスタに格納された後に受け取られるコマンドに応答して、前記複数の部分の他の部分に先立って最初にウェアレベリングされる前記複数の部分の部分であり、前記コマンドは、前記最後にアクセスされた部分の前記アドレスが格納された後に受け取られる次のウェアレベリングコマンドまたは次のリフレッシュコマンドである、請求項１０に記載のメモリ装置。
【請求項１２】
ホストと、
前記ホストに結合され、メモリセルのアレイの複数の部分を備えるメモリと、を備え、
前記メモリは、前記ホストからのコマンドに応答して、第１の部分がウェアレベリングするために選択され、第２の部分がウェアレベリングするために選択されるように、ウェアレベリングするために前記複数の部分の前記第１の部分及び前記第２の部分を選択する構成となっており、
前記メモリは、前記第１の部分及び前記第２の部分のアドレスを除いて前記複数の部分のそれぞれのアドレスを有する前記コマンドに応答して、前記第１の部分及び前記第２の部分を選択するように構成されている、
メモリ装置。
【請求項１３】
前記コマンドは、ウェアレベリングコマンドまたはリフレッシュコマンドである、請求項１２に記載のメモリ装置。
【請求項１４】
前記コマンドはセットアップコマンドであり、前記メモリは、前記第１の部分を選択するために、前記セットアップコマンドに応答して、第１のレジスタを特定の状態に設定し、前記第２の部分を選択するために、前記セットアップコマンドに応答して、第２のレジスタを前記特定の状態に設定するように構成されている、請求項１２に記載のメモリ装置。
【請求項１５】
前記ホストは、複数のカウンタを備え、前記複数のカウンタのそれぞれのカウンタが、前記複数の部分の対応する部分にそれぞれ対応し、
前記ホストは、前記第１の部分及び前記第２の部分がそれぞれ特定の回数以上アクセスされたことを、それぞれの前記第１の部分及び前記第２の部分にそれぞれ対応する前記カウンタがそれぞれ示すことに応答して、前記第１の部分及び前記第２の部分を選択するように、前記メモリに指示する構成となっている、
請求項１２に記載のメモリ装置。
【国際調査報告】
2020529665.tif 000009
2020529665.tif 000010