(57)【要約】本開示は、カウンタ更新動作のための装置及び方法を含む。例示的装置は、複数の第１のグループのメモリセル及び第２のグループのメモリセルを含むマネージドユニットを含むメモリを含み、マネージドユニットに関連付けられる各々のカウンタは、第２のグループのメモリセルに記憶される。例示的装置は、さらに、コントローラを含む。コントローラは、ホストから受信されたメモリ動作要求をルーティングするように構成されるコアと、コア及びメモリに結合されたデータパスとを含む。データパスは、コアからルーティングされたメモリ動作要求の受信に応答して、メモリへのルーティングされたメモリ動作要求に関連付けられる複数のコマンドを発行し、複数の第１のグループのメモリセルで対応するメモリ動作を行うように構成され得る。各々のカウンタは、複数のコマンドとは無関係に更新され得る。
2021522567.tif 000002
【特許請求の範囲】
【請求項１】
マネージドユニットを含むメモリであって、前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、前記マネージドユニットに関連付けられる各々のカウンタは前記第２のグループのメモリセルに記憶される、前記メモリと、
コントローラであって、
ホストから受信されたメモリ動作要求をルーティングするように構成されるコアと、
前記コア及び前記メモリに結合されたデータパスであって、前記データパスは、前記コアからルーティングされた前記メモリ動作要求の受信に応答して、前記メモリにルーティングされた前記メモリ動作要求に関連付けられる複数のコマンドを発行し、前記複数の第１のグループのメモリセルで対応するメモリ動作を行うように構成され、前記各々のカウンタは前記複数のコマンドとは無関係に更新される、前記データパスと、
を含む、前記コントローラと、
を備える、装置。
【請求項２】
前記データパスから発行された前記複数のコマンドは、前記メモリに前記各々のカウンタを更新させる命令がない、請求項１に記載の装置。
【請求項３】
前記データパスがデータバスを介して前記メモリに結合され、前記各々のカウンタが前記データバスを介して前記データパスに戻るように転送されずに、前記各々のカウンタが更新される、請求項１に記載の装置。
【請求項４】
論理アドレス対物理アドレステーブルは、前記各々のカウンタと一緒に前記第２のグループのメモリセルに記憶される、請求項１〜３のいずれか１項に記載の装置。
【請求項５】
メタデータは、前記各々のカウンタと一緒に前記第２のグループのメモリセルに記憶される、請求項１〜３のいずれか１項に記載の装置。
【請求項６】
前記各々のカウンタは、
読み取りカウンタであって、前記複数の第１のグループのメモリセルを読み取るたびに、前記読み取りカウンタの値はインクリメントする、前記読み取りカウンタと、
書き込みカウンタであって、前記複数の第１のグループのメモリセルをプログラムするたびに、前記書き込みカウンタの値はインクリメントする、前記書き込みカウンタと、
のうちの少なくとも１つを含む、請求項１〜３のいずれか１項に記載の装置。
【請求項７】
前記複数の第１のグループのメモリセル及び前記第２のグループのメモリセルは不揮発性メモリセルである、請求項１〜３のいずれか１項に記載の装置。
【請求項８】
ホストに結合され、前記ホストから受信されたメモリ動作要求に対応する複数のコマンドを発行するように構成される、システムコントローラと、
前記システムコントローラに結合され、マネージドユニットを含むメモリデバイスであって、前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、前記マネージドユニットに関連付けられる各々のカウンタは前記第２のグループのメモリセルに記憶される、前記メモリデバイスと、を備え、
前記メモリデバイスは、制御論理によって、
前記システムコントローラから、前記複数のコマンドを受信し、
前記複数のコマンドの受信に応答して、前記マネージドユニットの対応するメモリ動作を行い、
前記複数のコマンドとは無関係に、前記第２のグループのメモリセルでカウンタ更新動作を行い、それにより、前記第２のグループのメモリセルに記憶される前記各々のカウンタは、前記複数の第１のグループのメモリセルで行われる前記対応するメモリ動作に従って更新されるように構成される、装置。
【請求項９】
前記複数のコマンドは前記制御論理に前記複数の第１のグループのメモリセルで対応するメモリ動作を行わせる命令を含む一方、前記複数のコマンドは前記制御論理に前記第２のグループのメモリセルの前記カウンタ更新動作を行わせる命令がない、請求項８に記載の装置。
【請求項１０】
前記制御論理は、前記システムコントローラが前記制御論理に前記カウンタ更新動作を行わせないにもかかわらず、前記カウンタ更新動作を行うように構成される、請求項８に記載の装置。
【請求項１１】
前記システムコントローラは、物理的周辺機器相互接続エクスプレス（ＰＣＩｅ）コマンドパスを介して前記ホストに結合される、請求項８〜１０のいずれか１項に記載の装置。
【請求項１２】
前記システムコントローラは、不揮発性メモリエクスプレス（ＮＶＭｅ）コントローラを備える、請求項８〜１０のいずれか１項に記載の装置。
【請求項１３】
前記制御論理は前記メモリデバイスの内部にあり、前記複数のコマンドはメモリインターフェースを介して前記システムコントローラから受信される、請求項８〜１０のいずれか１項に記載の装置。
【請求項１４】
システムコントローラであって、
ホストから、マネージドユニットを含むメモリデバイスでメモリ動作を行うための要求を受信するように構成されるコアであって、
前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、
前記第２のグループのメモリセルは前記マネージドユニットに関連付けられる各々のカウンタを含む、前記コアと、
データパスであって、
前記コアから、前記メモリ動作を行うためにルーティングされた要求を受信し、
前記メモリに発行される、前記ルーティングされた要求の対応するものにそれぞれ関連付けられる複数のコマンドを順に行う、前記データパスと、
を含む、前記システムコントローラを備え、
前記データパスは、さらに、前記コアから受信された特定のルーティングされた要求に応答して、前記メモリデバイスに前記特定のルーティングされた要求に対応する複数のコマンドを発行するように構成され、
前記メモリデバイスは、制御論理によって、
受信された前記複数のコマンドによって命令されるように前記マネージドユニットで前記メモリ動作を行い、
受信された前記複数のコマンドとは無関係に、前記第２のグループのメモリセルに記憶された前記各々のカウンタのカウンタ更新動作を行うように構成される、装置。
【請求項１５】
前記メモリ動作及び前記カウンタ更新動作は、前記データパスからルーティングされた前記要求である個々の要求に応答して一緒に行われる、請求項１４に記載の装置。
【請求項１６】
前記更新された各々のカウンタは前記データパスに戻るように転送されない、請求項１４に記載の装置。
【請求項１７】
前記メモリ動作は読み取り−修正−書き込み動作であり、前記マネージドユニットで行われる読み取り動作は前記読み取り−修正−書き込み動作の固有動作であり、それにより、同じ前記読み取り−修正−書き込み動作の前記読み取り動作及び書き込み動作は個別の動作によって行われる、請求項１４〜１６のいずれか１項に記載の装置。
【請求項１８】
ホストに結合されたシステムコントローラから、複数の第１のグループのメモリセル及び第２のグループのメモリセルを含むマネージドユニットに向けられた複数のコマンドを受信することであって、前記システムコントローラは前記ホストからメモリ動作要求を受信し、前記メモリ動作要求に対応するコマンドを発行する、前記受信することと、
前記複数のコマンドを受信することに応答して、前記複数の第１のグループのメモリセル及び前記第２のグループのメモリセルで前記複数のコマンドに対応するメモリ動作を行うことと、
前記複数のコマンドとは無関係に、前記第２のグループのメモリセルでカウンタ更新動作を行うことと、
を含む、方法。
【請求項１９】
前記複数のコマンドとは無関係に前記カウンタ動作を行うことは、閾値に達するまで、各々のカウンタの値をインクリメントすることを含む、請求項１８に記載の方法。
【請求項２０】
前記複数のコマンドとは無関係に前記カウンタ更新動作を行うことは、各々のカウンタの値をデクリメントすることを含む、請求項１８に記載の方法。
【請求項２１】
前記複数のコマンドとは無関係に前記カウンタ更新動作を行うことは、各々のカウンタの値が閾値に達したと判定したことに応答して、リセット値が初期値に調整されるように前記各々のカウンタの前記値をリセットすることを含む、請求項１８に記載の方法。
【請求項２２】
前記複数のコマンドとは無関係に前記カウンタ動作を行うことは、各々のカウンタのいずれか１つが閾値に達したときに前記システムコントローラに警告することを含む、請求項１８に記載の方法。
【請求項２３】
前記複数のコマンドとは無関係に前記カウンタ更新動作を行うことは、前記カウンタ更新動作によって状態が変更される前記第２のグループのこれらのセルにだけ書き込み信号を印加することを含む、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、半導体メモリ及び方法に関し、特に、カウンタ更新動作のための装置及び方法に関する。
【背景技術】
【０００２】
メモリデバイスは、通常、コンピュータまたは他の電子デバイスにおいて内部の半導体集積回路及び／または外部の取り外し可能なデバイスとして提供される。揮発性メモリ及び不揮発性メモリを含む多くの様々な種類のメモリが存在する。揮発性メモリは、そのデータを維持するために電力が必要であり得、とりわけ、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、及び同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）を含むことができる。不揮発性メモリは、電力供給されないときにも記憶されたデータを保持することによって永続的データを提供でき、とりわけ、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、読取専用メモリ（ＲＯＭ）、ならびに相変化ランダムアクセスメモリ（ＰＣＲＡＭ）、抵抗ランダムアクセスメモリ（ＲＲＡＭ）、及び磁気ランダムアクセスメモリ（ＭＲＡＭ）等の抵抗可変メモリを含むことができる。
【０００３】
メモリデバイスは、高メモリ密度、高信頼性、及び低消費電力を必要とする広範囲な電子的用途のための揮発性メモリ及び不揮発性メモリとして利用できる。不揮発性メモリは、電子デバイスのうち特に、例えば、パーソナルコンピュータ、ポータブルメモリスティック、ソリッドステートドライブ（ＳＳＤ）、電子手帳（ＰＤＡ）、デジタルカメラ、携帯電話、携帯型ミュージックプレイヤー（例えば、ＭＰ３プレイヤー）、及びムービープレイヤーで使用され得る。プログラムコード、ユーザデータ等のデータ及び／または基本入出力システム（ＢＩＯＳ）等のシステムデータは、通常、不揮発性メモリデバイスに記憶される。
【０００４】
いくつかの状態の１つ（例えば、抵抗状態）は、抵抗可変メモリセルに設定できる。例えば、シングルレベルセル（ＳＬＣ）を、セルが特定のレベルを上回るまたは下回る抵抗値にプログラムされるかどうかに依存し得る２つの状態（例えば、論理１または０）の１つにプログラム（例えば、書き込み）され得る。追加の実施例として、様々な抵抗可変メモリセルを、各々の桁パターン（例えば、１０、０１、００、１１、１１１、１０１、１００、１０１０、１１１１、０１０１、０００１等）に対応する複数の異なる状態の１つにプログラムできる。このようなセルは、マルチステートセル、マルチデジットセル、及び／またはマルチレベルセル（ＭＬＣ）と称され得る。
【０００５】
メモリセルの状態は、例えば、印加されたインテロゲーション電圧に応答してセルを通る電流を感知することにより、判定（例えば、読み取り）できる。検知電流は、セルの電圧レベルに基づいて変動し、セルの状態（例えば、セルによって記憶されたバイナリデータ）を示すことができる。しかしながら、セルの電圧レベルは、様々な理由により望ましくない変化をし得、メモリセルの誤検知をもたらす可能性がある。
【図面の簡単な説明】
【０００６】
【図１】本開示のいくつかの実施形態による、カウンタ更新動作を行うことが可能であるメモリシステムを含むコンピューティングシステムの形態の装置のブロック図である。
【図２】本開示のいくつかの実施形態による、いくつかの物理ページを有する例示的な物理ブロックの図を示す。
【図３Ａ】書き込み動作に関連付けられるカウンタを更新することに関連付けられるタイミング図を示す。
【図３Ｂ】読み取り動作に関連付けられるカウンタを更新することに関連付けられるタイミング図を示す。
【図３Ｃ】本開示のいくつかの実施形態による、カウンタ更新動作を行うことに関連付けられるタイミング図を示す。
【図４】本開示のいくつかの実施形態による、読み取り動作中の例示的なカウンタ動作を行うことに関連付けられる図を示す。
【図５】本開示のいくつかの実施形態による、書き込み動作中の例示的なカウンタ更新動作を行うことに関連付けられる図を示す。
【発明を実施するための形態】
【０００７】
本開示は、カウンタ更新動作を行うための装置及び方法を含む。例示的装置は、複数の第１のグループのメモリセル及び第２のグループのメモリセルを含むマネージドユニットを含むメモリを含み、マネージドユニットに関連付けられる各々のカウンタは、第２のグループのメモリセルに記憶される。例示的装置はさらにコントローラを含む。コントローラは、ホストから受信されたメモリ動作要求をルーティングするように構成されるコアと、コア及びメモリに結合されたデータパスとを含む。データパスは、コアからルーティングされたメモリ動作要求の受信に応答して、メモリへのルーティングされたメモリ動作要求に関連付けられる複数のコマンドを発行し、複数の第１のグループのメモリセルで対応するメモリ動作を行うように構成され得る。各々のカウンタは、複数のコマンドとは無関係に更新され得る。
【０００８】
いくつかのカウンタ（例えば、読み取り／書き込みカウンタ）を利用して、いつセルを「リフレッシュ」する（例えば、セルをその標的状態に戻す設定）かを判定し得る。例えば、セルに印加される読み取り信号及び／または書き込み信号は、不要に、（例えば、信号が印加される）特定のセルの状態と、その隣接セル（例えば、特定のセルに隣接するセル）の状態とを変え（例えば、読み取り／書き込みディスターブを生じ）、結果として、セルの論理状態の誤判定をもたらす。したがって、いくつかのカウンタを利用して、例えば、隣接セルの信号の影響の程度を識別し、いつその隣接セルをリフレッシュするのかを判定し、セルの論理状態を正しく検知し得る。
【０００９】
本開示の実施形態は、以前のアプローチと比較して、カウンタ（例えば、読み取り／書き込みカウンタ）を更新することが可能であるメモリデバイスに関連付けられる待ち時間の短縮等の様々な利点をもたらす。例えば、カウンタを更新することに関連付けられる様々な以前のアプローチは、メモリセルのアレイからカウンタを取り込むこと、メモリセルのアレイを含むデバイスと異なるデバイスで取り込まれたカウンタを更新すること、及び／またはカウンタが事前に記憶されていたメモリセルのアレイに戻して取り込まれたカウンタを記憶することを含む。このようなアプローチは、常に、関連デバイス間で情報を通信すること（例えば、データを転送すること）を要求し得、これは、情報を通信することに関連付けられる不要な待ち時間をもたらし得、及び／または（例えば、さらに、データ信頼性及び／またはデータ整合性の低下をもたらすだろう）セルのいくつかの不要な検知／プログラミングを要求することによって、エネルギー消費の観点から費用がかかり得る。対照的に、本開示のいくつかの実施形態は、以前のアプローチと比較して、（例えば、読み取り／書き込みカウンタに関して）情報を通信することに関連付けられる待ち時間を短縮し、エネルギー消費量を減らすように、カウンタ更新動作を提供できる。
【００１０】
本開示の以下の詳細な説明では、本開示の一部を形成し、本開示の１つ以上の実施形態をどのように実施し得るかを示すことによって示される添付図への参照がなされる。これらの実施形態は、当業者が本開示の実施形態を実施することを可能にするように十分に詳細に説明され、本開示の範囲から逸脱することなく、他の実施形態を利用し得ること、処理変更、電気的変更、及び構造的変更がなされ得ることを理解されたい。
【００１１】
本明細書で使用されるように、特に、図面の参照符号に関する「Ｎ」及び「Ｍ」等の指定子は、そのように指定されたいくつかの特定の特徴を含むことができることを示す。本明細書で使用される専門用語は特定の実施形態だけを説明する目的のためであり、限定することを意図されていないことも理解されたい。本明細書で使用される単数形「１つの（ａ）」、「１つの（ａｎ）」、及び「その（ｔｈｅ）」は、文脈上明らかに別段に示されている場合を除き、単数形及び複数形の両方の指示対象を含むことができる。加えて、「いくつかの」物（例えば、いくつかのメモリセル）は、１つ以上のこのようなものを指し得る一方、「複数の」は、２つ以上のこのようなもの（例えば、２つ以上のメモリセル）を指すことが意図される。さらに、単語「できる」及び「し得る」は、本出願の全体を通して、義務的な意味（例えば、必要）ではなく、許容的な意味（例えば、〜する可能性がある、〜することが可能である）で使用される。
【００１２】
本明細書の図は、最初の桁または複数桁が図面の図番に対応し、残りの桁が図面の要素またはコンポーネントを識別する番号付けの慣習に従う。異なる図の間の同様の要素またはコンポーネントは、同様の桁の使用によって識別され得る。例えば、１１０は図１の要素「１０」を指し得、同様の要素は図３の３１０として指され得る。
【００１３】
本明細書では、「第１の」及び「第２の」等の序数を使用して、同様のコンポーネント及び／または選択可能に結合されるコンポーネント（例えば、メモリセルのグループ、材料等）を相関付け及び／または区別することを補助し、文脈上明らかに別段に示されている場合を除き、（例えば、隣接等の用語を使用することによって）コンポーネント間の特定の順番及び／または関係を示すために使用されない。
【００１４】
図１は、本開示のいくつかの実施形態による、カウンタ更新動作を行うことが可能であるメモリシステム１０４を含むコンピューティングシステム１００の形態の装置のブロック図である。本明細書で使用されるメモリシステム１０４、システムコントローラ１１０、またはメモリデバイス１１６は、また、別々に「装置」と考えられ得る。メモリシステム１０４は、例えば、ソリッドステートドライブ（ＳＳＤ）であることができ、ホストインターフェース１０６、システムコントローラ１１０、及びシステム１０４のメモリとして働くことができるメモリデバイス１１６を含むことができる。
【００１５】
システムコントローラ１１０は、ホストインターフェース１０６を介してホスト１０２に結合でき、メモリインターフェース１０８を介してメモリデバイス１１６に結合でき、メモリシステム１０４とホスト１０２との間でデータを転送するために使用できる。ホストインターフェース１０６は、標準化されたインターフェースの形態であることができる。例えば、メモリシステム１０４がコンピューティングシステム１００のデータストレージに使用されるとき、ホストインターフェース１０６は、コネクタ及びインターフェースのうち特に、シリアルアドバンスドテクノロジアタッチメント（ＳＡＴＡ）、周辺機器相互接続エクスプレス（ＰＣＩｅ）、またはユニバーサルシリアルバス（ＵＳＢ）であることができる。概して、ホストインターフェース１０６を介して相互に結合されるメモリシステム１０４及びホスト１０２は、それぞれ、ホストインターフェース１０６を介して制御、アドレス、データ、及び他の信号を渡すための互換性のあるレセプタを有し得る。同様に、システムコントローラ１１０及びメモリデバイス１１６は、それぞれ、メモリインターフェース１０８と互換性のあるレセプタを有し得る。メモリインターフェース１０８は、様々な規格をサポートし及び／または様々なインターフェースタイプ（例えば、ＤＤＲ、ＯＮＦＩ等）に準拠し得る。
【００１６】
ホスト１０２はシステムマザーボード及び／またはバックプレーンを含むことができ、いくつかのメモリアクセスデバイス（例えば、いくつかのプロセッサ）を含むことができる。ホスト１０２は、また、メモリシステム１０４がメモリデバイス（例えば、オンダイコントローラを有するメモリデバイス）である場所等のメモリコントローラであることができる。実施例として、コンピューティングシステム１００が携帯電話（例えば、スマートフォン）であると仮定すると、ホスト１０２はシステムオンチップ（ＳｏＣ）にあり得、メモリシステム１０４は埋め込みマルチメディアコントローラ（ｅＭＭＣ）及び／またはユニバーサルフラッシュストレージ（ＵＦＳ）であることができる。
【００１７】
システムコントローラ１１０は、メモリデバイス１１６（いくつかの実施形態では、単一のダイ及び／またはいくつかのダイのいくつかのメモリアレイであることができる）と通信して、動作のうち特に、データの読み取り動作、書き込み動作、及び消去動作を制御できる。システムコントローラ１１０は、システムコントローラ１１０をメモリデバイス１１６に結合するメモリインターフェース１０８に結合できる。システムコントローラ１１０は、例えば、ハードウェア及び／またはファームウェアの形態のいくつかのコンポーネント（例えば、１つ以上の集積回路）、及び／またはメモリデバイス１１６へのアクセスを制御するための及び／またはホスト１０２とメモリデバイス１１６との間のデータ転送を容易にするためのソフトウェアを含むことができる。
【００１８】
いくつかの実施形態では、システムコントローラ１１０は、不揮発性メモリエクスプレス（ＮＶＭｅ）コントローラであり得る。例えば、システムコントローラ１１０は、ＮＶＭｅ仕様または不揮発性メモリホストコントローラインターフェース仕様等の論理デバイスインターフェース仕様（例えば、プロトコル）に従って動作するように構成され得る。したがって、いくつかの実施形態では、システムコントローラ１１０は、ＮＶＭｅプロトコルに従ってコマンドを処理するように構成され得る。
【００１９】
システムコントローラ１１０は、コアコンポーネント１１２及びデータパスコンポーネント１１４を含むことができる。コアコンポーネント１１２は、ホスト１０２からメモリ動作要求（例えば、メモリデバイス１１６で動作を行う要求）を受信する等の様々な機能を行い、要求をデータパスコンポーネント１１４にルーティングするように構成されることができる。データパスコンポーネント１１４は、ルーティングされた要求の受信に応答して、ルーティングされた要求に関連付けられるコマンドを生成し、コマンドをメモリデバイス１１６に発行するように構成されることができる。
【００２０】
いくつかの実施形態では、データパスコンポーネント１１４は、メモリデバイス１１６で行われるコマンドを調整する等の様々な機能を行うように構成されることができるアービタコンポーネントとして働くことができる。いくつかの実施形態では、データパスコンポーネント１１４は、メモリデバイス１１６に発行されるシーケンサコマンド等の様々な機能を行うように構成されることができるシーケンサコンポーネントとして働くことができ、それにより、コマンドに対応する動作は、データパスコンポーネント１１４によって順に行われるように、メモリデバイス１１６内で行われ得る。
【００２１】
メモリデバイス１１６は、いくつかのメモリアレイ（図示せず）及び制御論理１１８（例えば、メモリコントローラ）を含むことができる。制御論理１１８は、メモリデバイス１１６の内部に位置することができ、メモリインターフェース１０８を介してシステムコントローラ１１０からコマンド（例えば、書き込みコマンド、読み取りコマンド、リフレッシュコマンド等）を受信できる。本明細書でさらに説明するように、制御論理１１８は、ホスト１０２とは無関係に（例えば、ホスト１０２等の外部コントローラからの補助なしに）メモリデバイス１１６に記憶されたカウンタを管理（例えば、更新）するように構成されることができる。別の言い方をすれば、制御論理１１８は、システムコントローラ１１０が制御論理１１８にカウンタ更新動作を行わせないにもかかわらず、カウンタ更新動作を行うように構成されることができる。したがって、制御論理１１８は、カウンタをシステムコントローラ１１０に戻して転送することなく、カウンタを更新するように構成されることができる。
【００２２】
いくつかの実施形態では、システムコントローラ１１０は、制御論理１１８によって要求されない限り、制御論理１１８にカウンタ更新動作を行わせ得ない。例えば、制御論理１１８は、例えば、閾値に達するまで各々のカウンタ値をインクリメント／デクリメントすることによって、システムコントローラ１１０とは無関係に（例えば、システムコントローラ１１０から発行された指示がなく）、カウンタ更新動作を行い得る。閾値に達すると、制御論理１１８は、システムコントローラ１１０からの指示を要求し得る。この場合、制御論理１１８からの要求に応答して、システムコントローラ１１０は、閾値に達したときにするべきこと（例えば、インクリメント、デクリメント、及び／またはリセット）に関連付けられる指示を発行し得る。したがって、いくつかの実施形態では、システムコントローラ１１０は、負荷の一部を制御論理１１８に割り当てることによって、カウンタ更新動作を行う負荷からオフロードされ得る。
【００２３】
いくつかの実施形態では、（例えば、制御論理１１８によって）カウンタを更新することは、例えば、閾値に達するまで、カウンタの値をインクリメントすること、例えば、メモリセルの状態をリフレッシュするとき、カウンタの値をデクリメント／リセットすること、及び／またはカウンタのいずれか１つが閾値に達したとき、ホスト１０２及び／またはシステムコントローラ１１０に警告すること（例えば、割り込み信号）を含み得る。いくつかの実施形態では、対応するメモリセルが読み取られるたびに、読み取りカウンタをインクリメントし得る。同様に、書き込みカウンタは、対応するメモリセルがプログラムされる（例えば、書き込まれる）たびにインクリメントされ得る。用語「プログラム」及び「書き込み」は、本明細書では言い換え可能に使用され、文脈に応じて同じ意味を有し得る。
【００２４】
いくつかの実施形態では、カウンタ（例えば、カウンタの少なくとも一部）は、複数の閾値を有し得る。例えば、特定のカウンタ（例えば、読み取りカウンタ及び／または書き込みカウンタ）は、２つの異なる閾値を含み得、２つの異なる閾値のそれぞれを利用して、例えば、各閾値に達したときにメモリデバイス１１６が取ることができる一連のアクションの内容をさらに定義し得る。実施例として、メモリデバイス１１６は、１つの閾値（例えば、より低い閾値）に特定のカウンタが満たされるときにアラートをホストに送信するように構成され、さらに、別の閾値（例えば、より高い閾値）に満たされるときに特定のカウンタをリセット（例えば、サチュレート）するように構成され得る。用語「リセット」及び「サチュレート」は、本明細書では言い換え可能に使用され、文脈に応じて同じ意味を有し得る。
【００２５】
いくつかの実施形態では、値をリセットすることは、値を初期値（例えば、０及び／またはＸ等の所定値）に調整することを含み得る。例えば、特定の値が閾値に達すると、特定の値は初期値に調整（例えば、リセット）され得、それにより、特定の値は閾値を超えることなく、再度インクリメント／デクリメントし得る。閾値が満たされるたびに値をリセットし得る（例えば、再初期化）。
【００２６】
いくつかの実施形態では、異なる種類のカウンタは、コンピューティングシステム１００に使用され得る。異なる種類のカウンタは、例えば、読み取りカウンタがメインメモリ（例えば、メモリデバイス１１６）に利用されている場合よりも頻繁にリセットされ得るように、キャッシュメモリに特に利用可能であることができる読み取りカウンタを含み得る。異なる種類のカウンタは、例えば、２つの異なる書き込みカウンタのうちの１つがメモリ動作（例えば、読み取り／書き込み動作）に利用されることができ、２つの異なる書き込みカウンタのもう１つがウェアレベリング動作に利用されることができるように、２つの異なる書き込みカウンタを含み得る。
【００２７】
いくつかの実施形態では、メモリデバイス１１６のメモリアレイ（複数可）は不揮発性メモリセルを含むことができる。例えば、メモリアレイのメモリセルは、ＰＣＲＡＭ及び／またはＲＲＡＭ等の抵抗可変メモリセルであり得る。実施例として、メモリセルは相変化メモリ（ＰＣＭ）セルであることができ、これは、セルの記憶素子及びスイッチ素子の両方として働く単一のカルコゲナイド材料、及び／またはスイッチ素子として働く第１のカルコゲニド材料とセルのストレージ素子として働く第２のカルコゲニドとの材料のスタックを含む、カルコゲナイド系メモリセルであることができる。しかしながら、複数の実施形態はそのようなものに限定されない。例えば、メモリデバイス１１６のメモリアレイは、とりわけ、ＮＡＮＤフラッシュメモリセル及び／またはＮＯＲフラッシュメモリセルを含み得る。
【００２８】
メモリセル（例えば、抵抗可変メモリセル）は書き換え可能であり得る。例えば、特定のデータパターンは、グループに事前に記憶されたデータを必ずしも消去することなく、抵抗可変メモリセルのグループにプログラムできる。
【００２９】
動作中、例えば、データのブロックとして、データをメモリデバイス１１６に書き込むことができる及び／またはデータをメモリデバイス１１６から読み取ることができる。したがって、データのブロックは、メモリシステム１０４のデータ転送サイズと称されることができる。データはセクター（例えば、ホストセクター）と称されるデータセグメント内のホスト（例えば、ホスト１０２）に／から送信（sent to/from）できる。したがって、データのセクターは、ホストのデータ転送サイズと称されることができる。いくつかの実施形態では、メモリデバイス１１６は、メモリセル（例えば、抵抗可変メモリセル）の各々のブロックにマネージドユニットを記憶できる。本明細書で使用されるように、マネージドユニットは、一緒にまたは機能グループとしてプログラムされる及び／または読み取られるいくつかのメモリセルと称され得る。
【００３０】
マネージドユニットは、論理ブロックサイズ（例えば、ホスト１０２等のホストのデータ転送サイズ）及び／またはメモリシステム（例えば、メモリシステム１０４）のデータ管理サイズ（例えば、４ＫＢであることができる）に対応し得る。実施例として、マネージドユニットは、（例えば、システムコントローラ１１０を介して）メモリセルの物理ブロックにマッピングできる。しかしながら、複数の実施形態はそのようなものに限定されない。例えば、マネージドユニットは、ユーザデータ及びオーバーヘッドデータ（例えば、メモリセルのグループ内に記憶された他のデータを知らせるデータ）を記憶するメモリセルのグループが論理ブロックサイズよりも大きいものに対応するとき、論理ブロックサイズよりも大きいものに対応し得る。実施例として、オーバーヘッドデータは、メタデータ、エラー訂正符号（ＥＣＣ）データ、論理ブロックアドレス（ＬＢＡ）データ等のデータ、及びマネージドユニット（例えば、物理ブロック２２０）で行われるメモリ動作に関連付けられるカウンタ（例えば、読み取り／書き込みカウンタ）を含み得る。
【００３１】
いくつかの実施形態では、マネージドユニットは、異なる種類のメモリセルのグループを含み得る。例えば、マネージドユニットは、複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み得、マネージドユニットに関連付けられるカウンタは、第２のグループのメモリセルに記憶され得る。本明細書で説明される「メモリセルのグループ」は、メモリセルのページに対応し得る。
【００３２】
図２は、本開示のいくつかの実施形態による、いくつかの物理ページ２２２−０（ページ０）、２２２−１（ページ１）、・・・、２２２−Ｎ（ページＮ）を有する例示的な物理ブロック２２０の図を示す。いくつかの実施形態では、例示的な物理ブロック２２０は、図１に関連して説明されるマネージドユニットであり得る。例えば、セルの物理ブロックは、一緒にまたは機能グループとしてプログラムされる及び／または読み取られるいくつかのメモリセルを指すことができる。
【００３３】
ブロック２２０は、いくつかのページ２２２−０（ページ０）、２２２−１（ページ１）、・・・、２２２−Ｎ（ページＮ）（例えば、まとめてページ２２２と称される）を含み得る。実施例として、物理ページ２２２の数は、各ページが３２バイトのページサイズに対応する１２８ページであり得る。したがって、ブロック２２０は、また、４ＫＢバイトのブロックサイズに対応できる。しかしながら、複数の実施形態はそのようなものに限定されない。例えば、物理ページ２２２の数は５１６ページ、１０２４ページ等であり得、ブロック２２０のブロックサイズは、各ページ（例えば、ページ２２０）のページサイズ及びブロック２２０に含まれるページ数に基づいて変動することができる。
【００３４】
いくつかの実施形態では、物理ページ２２２−０、・・・、２２２−（Ｎ−１）はユーザデータを記憶するために利用され得、物理ページ２２２−Ｎは、メタデータ、エラー訂正符号（ＥＣＣ）データ、論理ブロックアドレス（ＬＢＡ）データ等のオーバーヘッドデータ、及びマネージドユニット（例えば、物理ブロック２２０）で行われるメモリ動作に関連付けられるカウンタ（例えば、読み取り／書き込みカウンタ）を記憶するために利用され得る。いくつかの実施形態では、２つ以上の物理ページ（例えば、物理ページ２２２−Ｎ）は、オーバーヘッドデータを記憶するために割り当てられ得る。
【００３５】
物理ページ２２２−Ｎは図２により詳細に示される。図２に示されるように、物理ページ２２２−Ｎは、異なる種類のデータを記憶するために利用され得る第１の部２２４及び第２の部２２６を含む。いくつかの実施形態では、第１の部２２４に記憶されたデータは、エラーデータ（例えば、エラー検出データ及び／または訂正符号データ）等のインテグリティデータを含むメタデータであり得る。いくつかの実施形態では、第１の部２２４に記憶されたデータは、システムコントローラ１１０によって使用され得る特定の物理ブロック（例えば、特定の物理ブロックに対応する論理ブロックアドレス）に関連する情報であり得る。
【００３６】
物理ページ２２２−Ｎの第２の部２２６は、読み取りカウンタ及び／または書き込みカウンタ等のカウンタを含み得る。本明細書で使用される読み取りカウンタは、例えば、マネージドユニットで行われる読み取り動作の量に対するマネージドユニット（例えば、物理ブロック２２０）で行われる読み取り動作の量を示す値と称され得る。本明細書で使用される書き込みカウンタは、例えば、マネージドユニットで行われる書き込み動作の量に対するマネージドユニット（例えば、物理ブロック２２０）で行われる書き込み動作の量を示す値と称され得る。
【００３７】
物理ページ２２２が３２バイトのページサイズに対応する実施例として、ユーザデータを記憶する第１の部２２４は３０バイトに対応でき、カウンタ（例えば、読み取り／書き込みカウンタ）を記憶する第２の部２２６は２バイト（例えば、カウンタのそれぞれに１バイト）に対応できる。しかしながら、複数の実施形態はそのようなものに限定されない。例えば、いくつかの実施形態では、読み取りカウンタ及び書き込みカウンタがそれぞれ８ビットであり得、及び／または、いくつかの実施形態では、読み取りカウンタのサイズは１６ビットに対応し得る一方、書き込みカウンタのサイズは３２ビットに対応し得るように、カウンタのサイズは変動し得る。
【００３８】
マネージドユニットのサイズが比較的小さい（例えば、物理ブロック２２０が４ＫＢのブロックサイズに対応する）場合、５１２ＫＢ、１．０２４ＭＢ等のブロックサイズに対応するブロックを有するそのアプローチと比較して、制御論理１１８がマネージドユニットに記憶されるカウンタを管理することを可能にする等の利点をもたらし得る。例えば、制御論理１１８は、メモリデバイス１１６のサイズ／設計に起因する回路設計に関して制限され得、それにより、いくつかの実施形態では、制御論理１１８の回路設計は、システムコントローラ１１０と比較して簡略化する必要があり得る。したがって、簡略化された回路設計を伴う制御論理１１８は、５１２ＫＢ、１．０２４ＭＢ等の比較的大きなブロックサイズに対応するそのブロックのカウンタを管理することが不可能であり得る。対照的に、本開示の実施形態は、制御ユニット１１８によって管理される各マネージドユニットのサイズを減らし、システムコントローラ１１０とは無関係にカウンタ管理を可能にする利点をもたらす。
【００３９】
図３Ａは、書き込み動作３３６に関連付けられるカウンタを更新することに関連付けられるタイミング図３３０を示す。カウンタは、システムコントローラ３１０によって更新（例えば、管理）され得、システムコントローラ３１０は、図１に関連して説明されるコアコンポーネント１１２（例えば、コアコンポーネント３１２に類似するもの）と、データパスコンポーネント１１４（例えば、データパスコンポーネント３１４に類似するもの）とを含むシステムコントローラ１１０等のコントローラであることができる。この実施例では、書き込み動作３３６は、メモリデバイス３１６で行われるホスト（例えば、ホスト１０２）によって要求される動作である。読み取り動作３３２は、カウンタ更新動作３３４によって更新されるカウンタを取得する（例えば、取り込む）ために行われる動作である。
【００４０】
この実施例では、時間ｔ１で、コア３１２は、カウンタ要求をデータパス３１４に送信する。例えば、カウンタ要求は、書き込み動作３３６が行われる物理ブロックアドレス（ＰＢＡ）に関連付けられるカウンタ（例えば、書き込みカウンタ）を取り込む（例えば、読み取る）ための要求であり得る。データパス３１４は、受信されたカウンタ要求に対応するコマンド（例えば、「ｒｅａｄ  ｃｍｄ」）を生成し、時間ｔ２において、生成されたコマンドをメモリデバイス３１６に送信する。時間ｔ３において、メモリデバイス３１６から取り込まれたカウンタはデータパス３１４で受信され、データパス３１４は、時間ｔ４において、取り込まれたカウンタをコア３１２にルーティングする。したがって、ｔ４の後の時点で、カウンタは、カウンタ更新動作３３４によって、コア３１２で更新され得る。更新されたカウンタは、書き込み動作３３６を介してメモリデバイス３１６に戻して記憶され得る。例えば、時間ｔ５において、コア３１２は、書き込み要求（例えば、書き込み動作３３６を行う要求）をデータパス３１４に送信し、データパス３１４は、書き込み要求に対応する書き込みコマンド（例えば、「ｗｒｉｔｅ  ｃｍｄ」）を生成し、時間ｔ６から始まるように、生成された書き込みコマンドをメモリデバイス３１６に送信する。実施例として、書き込み動作３３６がメモリデバイス３１６のマネージドユニットの１つ（例えば、ブロック２２０）で行われるとき、生成された書き込みコマンドのそれぞれは、マネージドユニットの対応するページに向けられ得る。
【００４１】
図３Ａに示されるように、書き込み動作３３６に関連付けられるカウンタがシステムコントローラ３１０によって管理される（例えば、更新される）とき、システムコントローラ３１０は、更新されたカウンタをメモリデバイス３１６に書き戻す前に、カウンタに関連付けられる情報を取得する必要があり得る。したがって、カウンタを取得するために、書き込み動作３３６とは別に読み取り動作３３２を行う必要がある。
【００４２】
図３Ｂは、読み取り動作３４２に関連付けられるカウンタを更新することに関連付けられるタイミング図３４０を示す。カウンタは、システムコントローラ３１０によって更新（例えば、管理）され得、システムコントローラ３１０は、図１に説明されるコアコンポーネント１１２（例えば、コアコンポーネント３１２に類似するもの）と、データパスコンポーネント１１４（例えば、データパスコンポーネント３１４に類似するもの）とを含むシステムコントローラ１１０等のコントローラであることができる。この実施例では読み取り動作３４２は、メモリデバイス３１６で行われるホスト（例えば、ホスト１０２）によって要求される動作である。読み取り動作３４６は、カウンタ更新動作３４４によって更新されるカウンタを取得する（例えば、取り込む）ために行われる動作である。
【００４３】
この実施例では、時間ｔ１において、コア３１２は、メモリデバイス３１６（例えば、メモリデバイス３１６のブロック）で読み取り動作３４２を行う要求（例えば、読み取り要求）を送信する。データパス３１４は、要求に対応するコマンド（例えば、図３Ｂに示されるような読み取りコマンド）を生成し、時間ｔ２から開始して、生成されたコマンドをメモリデバイス３１６に送信する。
【００４４】
読み取られるように（例えば、読み取りコマンドによって指定されるように）要求されたデータは、時間ｔ３において、データパス３１４に取り込まれ得る（例えば、返され得る）。データパス３１４は、時間ｔ４において、コア３１２がさらに取り込まれたデータをホスト（例えば、ホスト１０２）に返すように、受信データをコア３１２にルーティングする。取り込まれたデータ（例えば、ホストに取り込まれたデータ）は、カウンタ（例えば、書き込み動作３４６が行われる物理ブロックアドレスに関連付けられる読み取りカウンタ）を含み得る。したがって、（例えば、システムコントローラ３１０において）カウンタを受信すると、カウンタは、ｔ４（例えば、コア３１２においてカウンタを受信した後）とｔ５（例えば、更新されたカウンタをメモリデバイス３１６に書き戻す要求を送信する前）との間のある時点で、システムコントローラ３１０によって更新され得る。
【００４５】
更新されたカウンタをメモリデバイス３１６に書き戻す（例えば、記憶する）ために、読み取り動作３４２とは別の動作（例えば、書き込み動作３４６）を行う必要がある。例えば、時間ｔ５において、コア３１２は、カウンタ要求（例えば、更新されたカウンタをメモリデバイス３１６に書き戻す要求）をデータパス３１４に送信し、データパス３１４は、カウンタ要求に対応する書き込みコマンド（例えば、「ｗｒｉｔｅ  ｃｍｄ」）を生成し、送信し、時間ｔ６において、生成された書き込みコマンドをメモリデバイス３１６の特定の場所（例えば、カウンタが事前に取り込まれた場所）に送信する。
【００４６】
システムコントローラ１１０等のコントローラによってカウンタが管理（例えば、更新）されるとき、（例えば、図３Ａに示されるような）書き込み動作及び（例えば、図３Ｂに示されるような）読み取り動作に関連付けられるカウンタを更新することは、関連付けられる書き込み動作３３６及び読み取り動作３４２とは別の動作を要求し得る。例えば、図３Ａの書き込み動作３３６に関連付けられるカウンタは別の読み取り動作３３２なしで更新され得ない。この理由は、システムコントローラ３１０は、メモリデバイス３１６を更新して書き戻す前にカウンタに対応する値を識別する必要があるためである。同様に、図３Ｂの読み取り動作３４２に関連付けられるカウンタは別の書き込み動作３４６なしで更新され得ない。この理由は、カウンタが読み取り動作３４２によって読み取られ得るけれども、更新されたカウンタは、メモリデバイス３１６に書き戻される必要があり、これは、読み取り動作３４２によって行われ得ないためである。
【００４７】
図３Ｃは、本開示のいくつかの実施形態による、カウンタ更新動作を行うことに関連付けられるタイミング図３５０を示す。図３Ｃに示される書き込み動作３５２及び読み取り動作３５４は、ホスト（例えば、ホスト１０２）によって要求される動作であり得る。カウンタは、例えば、メモリデバイス３１６の制御論理（例えば、図１の制御論理１１８）によって更新（例えば、管理）され得る。
【００４８】
この実施例では、時間ｔ１において、コア３１２は、メモリデバイス３１６（例えば、メモリデバイス３１６のブロック）で書き込み動作３５２を行う要求を送信する。例えば、書き込み動作を行う要求は、ホスト（例えば、ホスト１０２）から受信された要求であり得る。データパス３１４は、コア３１２からの要求の受信に応答して、要求に対応するコマンド（例えば、「ｗｒｉｔｅ  ｃｍｄ」）を生成し、時間ｔ２から開始して、生成されたコマンドをメモリデバイス３１６に送信する。実施例として、書き込み動作３５２がメモリデバイス３１６のマネージドユニットの１つ（例えば、ブロック２２０）で行われるとき、生成された書き込みコマンドのそれぞれは、マネージドユニットの対応するページに向けられ得る。
【００４９】
この実施例では、時間ｔ３において、コア３１２は、メモリデバイス３１６（例えば、メモリデバイス３１６のブロック）で読み取り動作を行う要求を送信する。例えば、読み取り動作３５４を行う要求は、ホスト（例えば、ホスト１０２）から受信された要求であり得る。データパス３１４は、コア３１２からの要求の受信に応答して、要求に対応するコマンド（例えば、「ｒｅａｄ  ｃｍｄ」）を生成し、時間ｔ４から開始して、生成されたコマンドをメモリデバイス３１６に送信する。実施例として、読み取り動作３５４がメモリデバイス３１６のマネージドユニットの１つ（例えば、ブロック２２０）で行われるとき、生成された読み取りコマンドのそれぞれは、マネージドユニットの対応するページに向けられ得る。読み取られるように（例えば、読み取りコマンドによって指定されるように）要求されたデータは、時間ｔ５において、データパス３１４に取り込まれ得る（例えば、返され得る）。データパス３１４は、時間ｔ６において、コア３１２がさらに取り込まれたデータをホスト（例えば、ホスト１０２）に返すように、受信データをコア３１２にルーティングする。いくつかの実施形態では、メモリデバイス３１６から時間ｔ６において取り込まれたデータは、カウンタ（例えば、カウンタ値）に関連付けられる情報がない場合がある（例えば、含み得ない）。
【００５０】
いくつかの実施形態では、データパス３１４によって生成され、メモリデバイス３１６に発行されるコマンドは、メモリデバイス３１６（例えば、制御論理１１８）にカウンタを更新させる命令がない場合がある。別の言い方をすれば、時間ｔ２及びｔ４から開始して発行されるコマンドは、制御論理１１８に対応するメモリ動作（例えば、読み取り／書き込み動作３５２、３５４）を行わせる命令を含み得る一方、同じコマンドは、制御論理１１８にカウンタ更新動作を行わせる命令がない場合がある（例えば、含み得ない）。したがって、制御論理１１８は、システムコントローラ１１０及び／またはホスト１０２とは無関係にカウンタ更新動作を行うように構成されることができる一方、受信コマンドに依存して（例えば、ホスト１０２によって要求された）メモリ動作を行うように構成される。
【００５１】
さらに、図３Ｃに示されるように行われるカウンタ更新動作は書き込み動作３５２及び／または読み取り動作３５４の中に埋め込まれ、これは、別の読み取り動作（例えば、書き込み動作３３６のための読み取り動作３３２等）及び／または別の書き込み動作（例えば、読み取り動作３４２のための書き込み動作３４４等）をしないで行うことができる。また、読み取り動作３３６及び／または書き込み動作３４２を行う要求とは別のコア３１２からの要求に応答して行われる図３Ａ及び図３Ｂに記載されるカウンタ更新動作とは異なり、対応するメモリ動作内に埋め込まれたカウンタ動作は、対応するメモリ動作を行うことをトリガする個々の要求に応答して行われ得る。
【００５２】
図４は、本開示のいくつかの実施形態による、読み取り動作中にカウンタ更新動作を行うことに関連付けられる図４５０を示す。図４に示されるこの実施例では、読み取り動作は、ブロック４２０（例えば、ブロック２２０）で行われるホスト（例えば、ホスト１０２）によって要求される動作であり得る。例えば、読み取り動作を行う要求はシステムコントローラ（例えば、システムコントローラ１１０）で受信され得、システムコントローラは、（例えば、データパスコンポーネント１１４によって）対応するコマンドを生成し、対応するコマンドを制御論理（例えば、制御論理１１８）に送信する。
【００５３】
図４に示されるように、２つの異なるブロック４２０−１及び４２０−２（例えば、まとめてブロック４２０と称される）は図４に示される。ブロックのそれぞれは、マネージドユニットであり、いくつかのアドレススペースのそれぞれを他とは無関係に制御し得るように、いくつかのアドレススペースに分割され得る。例えば、ブロックの分割されたアドレススペースのそれぞれは、同じブロックのページ間でいくつかの動作を同時に行い得るように、（例えば、ブロックのそれぞれの）いくつかのページの一部を含み得る。例えば、制御論理１１８はコマンド４５２−Ｎに対応する読み取り動作を（例えば、カウンタ更新動作と一緒に）開始し得る一方、コマンド４５２−（Ｎ−１）に対応する読み取り動作が行われている。実施例として、（例えば、ブロック４２０−１の）ページ４５４−（Ｎ−２）、４５４−（Ｎ−１）、４５４−Ｎは各々パーティション１、２、及び３に割り当てられ得、ページ４５８−０、４５８−１、４５８−２、及び４５８−３は各々パーティション０、１、２、及び３に割り当てられ得る。
【００５４】
ブロック４２０−１は、ページ４５２−（Ｎ−１）及びページ４５２−Ｎを含むいくつかのページ（例えば、Ｎ＋１ページ）を含み得る。例えば、ページ４５２−（Ｎ−１）（例えば、複数の第１のグループのメモリセルの１つ）は、読み取りコマンド４５２−（Ｎ−１）によって読み取られる（例えば、ホスト１０２に取り込まれる）ことができるユーザデータを含み得る。例えば、ページ４５２−Ｎ（例えば、第２のグループのメモリセル）は、ブロック４２０−１に関連付けられるカウンタと一緒にオーバーヘッドデータを含み得る。したがって、カウンタ更新動作をページ４５２−Ｎで行い得る。
【００５５】
図４に示されるこの実施例では、コマンド４５２−（Ｎ−１）及び４５２−Ｎを含む読み取りコマンド４５２は、時間ｔ１の前に連続的に受信され得る。したがって、ページ４５４−（Ｎ−２）、４５４−（Ｎ−１）、及び４５４−Ｎを含むページ４５４の読み取り動作は、読み取りコマンド４５２の受信に応答して連続的に開始し得る。
【００５６】
ページ４５４−（Ｎ−１）に向けられたコマンド４５２−（Ｎ−１）は、時間ｔ１より前の及びコマンド４５２−Ｎの前のある時点において（例えば、制御論理１１８において）受信される。したがって、ページ４５４−（Ｎ−１）がユーザデータを含むという判定に応答して、制御論理１１８は、ユーザデータを取り込んでシステムコントローラ１１０に戻すことによって、ページ４５４−（Ｎ−１）で読み取り動作を行うことができ、システムコントローラ１１０は、さらに、取り込まれたユーザデータをホスト１０２に戻すことができる。
【００５７】
ページ４５４−Ｎに向けられたコマンド４５２−Ｎは、時間ｔ１において（例えば、制御論理１１８において）受信される。したがって、ページ４５４−Ｎがカウンタを含むという判定に応答して、制御論理１１８は、ホスト１０２によって要求され、コマンド４５２−Ｎによって命令される読み取り動作を行うことに加えて、カウンタ（例えば、読み取りカウンタ）を更新する（例えば、カウンタ更新動作を行う）ことができる。例えば、ページ４５４−Ｎに記憶されたデータをｔ１からｔ２において読み取ることができ（例えば、「ｔＲｅａｄ」）、カウンタはｔ２からｔ３において更新され得る（例えば、「ｔＣｏｕｎｔｅｒＵｐｄａｔｅ」）。取り込まれたデータ（例えば、「４５４−Ｎ」と示される）は、ＤＱバス等のデータバスを介してシステムコントローラ１１０に返送され得る。
【００５８】
いくつかの実施形態では、カウンタは、システムコントローラ１１０に戻されずに更新され得る。したがって、この実施例では、ページ４５４−Ｎに記憶されたカウンタが同時に更新され得る一方、ページ４５４−Ｎから取り込まれたオーバーヘッドデータ（例えば、メタデータ）及びカウンタがシステムコントローラ１１０に返送され得る。例えば、ページ４５４−Ｎから取り込まれたメタデータは、時間ｔ２において、システムコントローラ１１０に返送され得、カウンタはまた時間ｔ２において更新され得る。したがって、メモリデバイス１１６とシステムコントローラ１１０との間でカウンタを転送することに関連付けられる待ち時間は、カウンタを更新する際になくなり得る。
【００５９】
いくつかの実施形態では、カウンタは、後で（例えば、時間ｔ２の後で）更新されるようにバッファリングされ得る。ｔ２において更新される代わりに、例えば、（例えば、更新されてから）他の動作（例えば、読み取り／書き込み動作）がカウンタを更新することに関連付けられる待ち時間によって悪影響を受けないように、内部リソースがカウンタを更新することがすぐに利用可能になるまで、カウンタをバッファリングし得る。
【００６０】
図４に示されるこの実施例では、コマンド４５６−０、４５６−１、４５６−２、及び４５６−３を含む書き込みコマンド４５６は、時間ｔ１の後に連続的に受信され得、ページ４５８−０、４５８−１、４５８−２、及び４５８−３を含むページ４５８の書き込み動作は、書き込みコマンド５６６の受信に応答して連続的に開始し得る。カウンタが更新されている間、別の動作（例えば、読み取り動作）が別のブロック４２０−２で開始し得る。例えば、ページ４５４−Ｎとは異なるパーティション（例えば、アドレススペース）に割り当てられているこれらのページ４５８−０、４５８−２、及び４５８−３は、ページ４５４−Ｎで行われるカウンタ更新動作と同時に読み取られ得る。
【００６１】
いくつかの実施形態では、ページ４５４−Ｎに記憶されたデータは、システムコントローラ１１０に取り込まれ得ない。この実施例では、ページ４５４−Ｎに記憶されたデータをシステムコントローラ１１０に提供するのではなく、制御論理１１８は、時間ｔ２において、データバスを介してページ４５８−１に記憶され、そこから取り込まれたデータを提供し得る。したがって、（例えば、カウンタを含む）ページ４５４−Ｎに記憶されたデータの転送に関連付けられる待ち時間は、（例えば、ブロック４２０−１及び４２０−２を含む）メモリデバイス１１６でいくつかのメモリ動作を行う際になくなり得る。
【００６２】
図５は、本開示のいくつかの実施形態による、書き込み動作中にカウンタ更新動作を行うことに関連付けられる図５６０を示す。図５に示されるこの実施例では、書き込み動作は、ブロック５２０（例えば、ブロック２２０）で行われるホスト（例えば、ホスト１０２）によって要求される動作であり得る。例えば、書き込み動作を行う要求は、システムコントローラ（例えば、システムコントローラ１１０）で受信され得、システムコントローラは、（例えば、データパスコンポーネント１１４によって）対応するコマンドを生成し、対応するコマンドを制御論理（例えば、制御論理１１８）に送信する。
【００６３】
図５に示されるように、２つの異なるブロック５２０−１及び５２０−２（例えば、まとめてブロック５２０と称される）は図５に示される。ブロックのそれぞれは、マネージドユニットであり、いくつかのアドレススペースのそれぞれを他とは無関係に制御し得るように、いくつかのアドレススペースに分割され得る。例えば、ブロックの分割されたアドレススペースのそれぞれは、同じブロックのページ間でいくつかの動作を同時に行い得るように、（例えば、ブロックのそれぞれの）いくつかのページの一部を含み得る。例えば、制御論理１１８はコマンド５６２−Ｎに対応する書き込み動作を（例えば、カウンタ更新動作と一緒に）開始し得る一方、コマンド５６２−（Ｎ−１）に対応する書き込み動作が行われている。実施例として、（例えば、ブロック４２０−１の）ページ５６４−（Ｎ−３）、５６４−（Ｎ−２）、５６４−（Ｎ−１）、及び５６４−Ｎは各々パーティション０、１、２、及び３に割り当てられ得、ページ５６８−０、５６８−１、５６８−２、及び５６８−３は各々パーティション０、１、２、及び３に割り当てられ得る。
【００６４】
ブロック５２０−１は、ページ５６２−（Ｎ−１）及びページ５６２−Ｎを含むいくつかのページ（例えば、Ｎ＋１ページ）を含み得る。例えば、ページ５６２−（Ｎ−１）（例えば、複数の第１のグループのメモリセルの１つ）は、書き込みコマンド５６２−（Ｎ−１）によって書き込まれる（例えば、ホスト１０２に取り込まれる）ことができるユーザデータを含み得る。例えば、ページ５６２−Ｎ（例えば、第２のグループのメモリセル）は、書き込みコマンド５６２−Ｎを介して書き込むことができる、ブロック５２０−１に関連付けられるオーバーヘッドデータ及びカウンタを含み得る。したがって、カウンタ更新動作をページ５６２−Ｎで行い得る。
【００６５】
図５に示されるこの実施例では、コマンド５６２−（Ｎ−１）及び５６２−Ｎを含む書き込みコマンド５６２は、時間ｔ３から連続的に受信され得る。したがって、ページ５６４−（Ｎ−１）及び５６４−Ｎを含むページ５６４の書き込み動作は、書き込みコマンド５６２の受信に応答して、時間ｔ３の前に連続的に開始し得る。
【００６６】
ページ５６４−（Ｎ−１）に向けられたコマンド５６２−（Ｎ−１）は、時間ｔ１より前の及びコマンド５６２−Ｎの前のある時点において（例えば、制御論理１１８において）受信される。例えば、コマンド５６２−（Ｎ−１）は、データパターン（例えば、ホスト１０２から受信されたユーザデータ）と、ページ５６２−（Ｎ−１）に記憶されるデータパターンとを書き込む命令を含み得る。したがって、制御論理１１８は、システムコントローラ１１０から（例えば、ホスト１０２から）受信したデータパターンをページ５６４−（Ｎ−１）に記憶することによって、ページ５６４−（Ｎ−１）で書き込み動作を行うことができる。
【００６７】
ページ５６４−Ｎに向けられたコマンド５６２−Ｎは、時間ｔ１において（例えば、制御論理１１８において）受信される。例えば、コマンド５６２−Ｎは、データパターン（例えば、ホスト１０２から受信されたオーバーヘッドデータ）と、ページ５６２−Ｎに記憶されるデータパターンとを書き込む命令を含み得る。時間ｔ２において、データパターンの受信に応答して、制御論理１１８は、（例えば、同様に）受信されたデータパターンをページ５６２−Ｎに書き込むことに加えて、時間ｔ２から時間ｔ４まで、ページ５６２−Ｎに記憶されたカウンタを更新できる。
【００６８】
したがって、制御論理１１８は、カウンタを更新し、個々の書き込み動作によって（例えば、時間ｔ２から時間ｔ４まで行われる書き込み動作によって）データを書き込むことができる。したがって、書き込み動作中にカウンタを更新するために、カウンタ更新動作等の別の動作を要求し得ない。別の言い方をすれば、ページ５６４−Ｎで行われる書き込み動作内にカウンタ更新動作を埋め込むことができる。
【００６９】
図５に示されるこの実施例では、コマンド５６６−０、・・・、５６６−５を含む書き込みコマンド５６６は時間ｔ３から連続的に受信され、ページ５６８−０、・・・、５６８−３を含むページ５６８の書き込み動作は、書き込みコマンド５６６の受信に応答して、時間ｔ３から連続的に開始し得る。ページ５６４−Ｎで書き込み動作が行われている間に、別のブロック５２０−２で別の動作（例えば、書き込み動作）を開始し得る。例えば、データパターン（例えば、ブロック５２０−２に書き込むことが要求される）は、５６４−Ｎページ（例えば、パーティション３）と異なるパーティション（例えば、パーティション０及びパーティション１）に割り当てられるこれらのページ５６８−０及び５６８−１に書き込まれ得る一方、書き込み動作は５６４−Ｎページで行われている。データパターンは、各々、書き込みコマンド５６６−２及び５６６−３の受信に応答して、ページ５６８−２（例えば、時間ｔ４）及び５６８−３（例えば、時間ｔ５）に書き込まれることが開始し得る。
【００７０】
いくつかの実施形態では、書き込み動作は、読み取り−修正−書き込み（ＲＭＷ）動作と称されることができる動作を含むことができる。例えば、ページにデータパターンを書き込むことは、メモリセルのアレイからページ全体のデータを読み取ること、新しいデータパターンでページを更新すること、及びその後、更新されたページをメモリセルのアレイに書き戻すことを含むことができる。したがって、ＲＭＷ動作の一部として行うことができる読み取り動作はＲＭＷ動作の固有の動作であり、それにより、同じ読み取り−修正−書き込み動作のうちの読み取り動作及び書き込み動作は個々の動作によって行われる。したがって、図５に示されるこれらの書き込み動作は、書き込み動作がＲＭＷ動作である場合、書き込み動作とは別の読み取り動作を必要とし得ない。いくつかの実施形態では、カウンタを更新することは、書き込み動作中に状態が変更されるそれらのページのセルにだけ書き込み信号を印加することを含むことができる。
【００７１】
特定の実施形態が示され、本明細書で説明されてきたが、当業者は、同じ結果を達成するために予測される配列が、示される特定の実施形態と置き換えられることができることを認識するであろう。この開示は、本発明の開示のいくつかの実施形態の適応または変形を網羅することを意図している。上記の説明は、例示的になされたものであり、限定的になされたものではないことを理解されたい。上記の実施形態と本明細書で具体的に説明されていない他の実施形態との組み合わせは、上記の説明を考察すれば当業者にとって明らかになるであろう。本開示のいくつかの実施形態の範囲は、上記の構造及び方法が使用される他の用途を含む。したがって、本開示のいくつかの実施形態の範囲は、このような特許請求の範囲によって権利が与えられる均等物の全範囲と一緒に、添付された特許請求の範囲を参照して決定されるべきである。
【００７２】
前述の「発明を実施するための形態」では、本開示を簡素化する目的のために、単一の実施形態にいくつかの特徴を一緒にまとめている。この開示の方法は、本開示の開示された実施形態が各請求項に明確に列挙されたものより多くの特徴を使用する必要があるという意図を反映するものとして解釈されるものではない。むしろ、以下の特許請求の範囲が反映するように、発明の主題は、単一の開示された実施形態の全ての特徴に満たないものに存在する。したがって、以下の特許請求の範囲は、各請求項が別の実施形態として独自に存在する状態で、本明細書によって「発明を実施するための形態」に組み込まれる。
【図１】
2021522567.tif 000003
【図２】
2021522567.tif 000004
【図３Ａ】
2021522567.tif 000005
【図３Ｂ】
2021522567.tif 000006
【図３Ｃ】
2021522567.tif 000007
【図４】
2021522567.tif 000008
【図５】
2021522567.tif 000009
【手続補正書】
【提出日】令和2年12月18日(2020.12.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マネージドユニットを含むメモリであって、前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、
前記マネージドユニットに関連付けられる各々のカウンタは前記第２のグループのメモリセルに記憶され、
前記各々のカウンタは、
前記マネージドユニットで行われる読み取り動作の量を示す読み取りカウンタ、または
前記マネージドユニットで行われる書き込み動作の量を示す書き込みカウンタ、の少なくとも１つを含む、
前記メモリと、
コントローラであって、
ホストから受信されたメモリ動作要求をルーティングするように構成されるコアと、
前記コア及び前記メモリに結合されたデータパスであって、前記データパスは、前記コアからルーティングされた前記メモリ動作要求の受信に応答して、前記メモリにルーティングされた前記メモリ動作要求に関連付けられる複数のコマンドを発行し、前記複数の第１のグループのメモリセルで対応するメモリ動作を行うように構成され、前記各々のカウンタは前記複数のコマンドとは無関係に更新される、前記データパスと、
を含む、前記コントローラと、
を備える、装置。
【請求項２】
前記データパスから発行された前記複数のコマンドは、前記メモリに前記各々のカウンタを更新させる命令がない、請求項１に記載の装置。
【請求項３】
前記データパスがデータバスを介して前記メモリに結合され、前記各々のカウンタが前記データバスを介して前記データパスに戻るように転送されずに、前記各々のカウンタが更新される、請求項１に記載の装置。
【請求項４】
論理アドレス対物理アドレステーブルまたはメタデータは、前記各々のカウンタと一緒に前記第２のグループのメモリセルに記憶される、請求項１〜３のいずれか１項に記載の装置。
【請求項５】
ホストに結合され、前記ホストから受信されたメモリ動作要求に対応する複数のコマンドを発行するように構成される、システムコントローラと、
前記システムコントローラに結合され、マネージドユニットを含むメモリデバイスであって、前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、前記マネージドユニットに関連付けられる各々のカウンタは前記第２のグループのメモリセルに記憶される、前記メモリデバイスと、を備え、
前記メモリデバイスは、制御論理によって、
前記システムコントローラから、前記複数のコマンドを受信し、
前記複数のコマンドの受信に応答して、前記マネージドユニットの対応するメモリ動作を行い、
前記複数のコマンドとは無関係に、前記第２のグループのメモリセルでカウンタ更新動作を行い、それにより、前記第２のグループのメモリセルに記憶される前記各々のカウンタは、前記複数の第１のグループのメモリセルで行われる前記対応するメモリ動作に従って更新されるように構成される、装置。
【請求項６】
前記複数のコマンドは前記制御論理に前記複数の第１のグループのメモリセルで対応するメモリ動作を行わせる命令を含む一方、前記複数のコマンドは前記制御論理に前記第２のグループのメモリセルの前記カウンタ更新動作を行わせる命令がない、請求項５に記載の装置。
【請求項７】
前記制御論理は、前記システムコントローラが前記制御論理に前記カウンタ更新動作を行わせないにもかかわらず、前記カウンタ更新動作を行うように構成される、請求項５に記載の装置。
【請求項８】
前記システムコントローラは、物理的周辺機器相互接続エクスプレス（ＰＣＩｅ）コマンドパスを介して前記ホストに結合される、請求項５〜７のいずれか１項に記載の装置。
【請求項９】
前記制御論理は前記メモリデバイスの内部にあり、前記複数のコマンドはメモリインターフェースを介して前記システムコントローラから受信される、請求項５〜７のいずれか１項に記載の装置。
【請求項１０】
システムコントローラであって、
ホストから、マネージドユニットを含むメモリデバイスでメモリ動作を行うための要求を受信するように構成されるコアであって、
前記マネージドユニットは複数の第１のグループのメモリセル及び第２のグループのメモリセルを含み、
前記第２のグループのメモリセルは、
前記マネージドユニットで行われる読み取り動作の量を示す読み取りカウンタ、または
前記マネージドユニットで行われる書き込み動作の量を示す書き込みカウンタ、の少なくとも１つを含む、各々のカウンタを含む、
前記コアと、
データパスであって、
前記コアから、前記メモリ動作を行うためにルーティングされた要求を受信し、
前記メモリに発行される、前記ルーティングされた要求の対応するものにそれぞれ関連付けられる複数のコマンドを順に行う、前記データパスと、
を含む、前記システムコントローラを備え、
前記データパスは、さらに、前記コアから受信された特定のルーティングされた要求に応答して、前記メモリデバイスに前記特定のルーティングされた要求に対応する複数のコマンドを発行するように構成され、
前記メモリデバイスは、制御論理によって、
受信された前記複数のコマンドによって命令されるように前記マネージドユニットで前記メモリ動作を行い、
受信された前記複数のコマンドとは無関係に、前記第２のグループのメモリセルに記憶された前記各々のカウンタのカウンタ更新動作を行うように構成される、装置。
【請求項１１】
前記メモリ動作及び前記カウンタ更新動作は、前記データパスからルーティングされた前記要求である個々の要求に応答して一緒に行われる、請求項１０に記載の装置。
【請求項１２】
前記更新された各々のカウンタは前記データパスに戻るように転送されない、請求項１０に記載の装置。
【請求項１３】
前記メモリ動作は読み取り−修正−書き込み動作であり、前記マネージドユニットで行われる読み取り動作は前記読み取り−修正−書き込み動作の固有動作であり、それにより、同じ前記読み取り−修正−書き込み動作の前記読み取り動作及び書き込み動作は個別の動作によって行われる、請求項１０〜１２のいずれか１項に記載の装置。
【請求項１４】
ホストに結合されたシステムコントローラから、複数の第１のグループのメモリセル及び第２のグループのメモリセルを含むマネージドユニットに向けられた複数のコマンドを受信することであって、
前記システムコントローラは前記ホストからメモリ動作要求を受信し、前記メモリ動作要求に対応するコマンドを発行し、
前記第２のグループのメモリセルに記憶される各々のカウンタは、
前記マネージドユニットで行われる読み取り動作の量を示す読み取りカウンタ、または
前記マネージドユニットで行われる書き込み動作の量を示す書き込みカウンタ、の少なくとも１つを含む、
前記受信することと、
前記複数のコマンドを受信することに応答して、前記複数の第１のグループのメモリセル及び前記第２のグループのメモリセルで前記複数のコマンドに対応するメモリ動作を行うことと、
前記複数のコマンドとは無関係に、前記第２のグループのメモリセルでカウンタ更新動作を行うことと、
を含む、方法。
【請求項１５】
前記複数のコマンドとは無関係に前記カウンタ更新動作を行うことは、閾値に達するまで、前記各々のカウンタの値をインクリメントまたはデクリメントすることを含む、請求項１４に記載の方法。
【請求項１６】
前記複数のコマンドとは無関係に前記カウンタ更新動作を行うことは、各々のカウンタの値が閾値に達したと判定したことに応答して、リセット値が初期値に調整されるように前記各々のカウンタの前記値をリセットすることを含む、請求項１４に記載の方法。
【請求項１７】
前記複数のコマンドとは無関係に前記カウンタ動作を行うことは、各々のカウンタのいずれか１つが閾値に達したときに前記システムコントローラに警告することを含む、請求項１４に記載の方法。
【国際調査報告】
2021522567.tif 000010
2021522567.tif 000011
2021522567.tif 000012