IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 長江存儲科技有限責任公司の特許一覧

特表2025-5016703D NANDメモリの最良読み込み基準電圧探索
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-01-23
(54)【発明の名称】3D NANDメモリの最良読み込み基準電圧探索
(51)【国際特許分類】
   G06F 12/00 20060101AFI20250116BHJP
   G11C 16/08 20060101ALI20250116BHJP
   G11C 16/04 20060101ALI20250116BHJP
   G06F 11/10 20060101ALI20250116BHJP
【FI】
G06F12/00 560A
G11C16/08 120
G11C16/04 170
G06F12/00 597U
G06F11/10
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023539176
(86)(22)【出願日】2022-12-14
(85)【翻訳文提出日】2023-06-26
(86)【国際出願番号】 CN2022138853
(87)【国際公開番号】W WO2024124417
(87)【国際公開日】2024-06-20
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FIREWIRE
(71)【出願人】
【識別番号】519237948
【氏名又は名称】長江存儲科技有限責任公司
【氏名又は名称原語表記】Yangtze Memory Technologies Co.,Ltd.
【住所又は居所原語表記】No.88 Weilai 3rd Road,East Lake High-tech Development Zone,Wuhan,Hubei,China
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ユフェイ・フェン
【テーマコード(参考)】
5B160
5B225
【Fターム(参考)】
5B160CB00
5B225BA01
5B225BA19
5B225CA11
5B225DA03
5B225DA10
5B225DE08
5B225EA05
5B225EG15
5B225FA01
5B225FA05
(57)【要約】
メモリシステムは、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するように構成され、第2のデフォルト読み込み基準電圧に対する、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するように構成されるメモリ制御装置を備える。第1および第2のデフォルト読み込み基準電圧は、半導体メモリデバイスにおけるMLCのセットからページを読み込むために設定される。第1の走査範囲がアンカー読み込み基準電圧に基づいて決定され得る。第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットが、第1の走査範囲における探索によって決定され得る。読み込み処理が、第1および第2の最良読み込み基準電圧に基づいてMLCのセットからページを読み込むために実施され得る。
【特許請求の範囲】
【請求項1】
メモリシステムの方法であって、
第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップと、
第2のデフォルト読み込み基準電圧に対する、前記第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するステップであって、前記第1のデフォルト読み込み基準電圧および前記第2のデフォルト読み込み基準電圧は、前記メモリシステムにおける半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される、ステップと、
前記アンカー読み込み基準電圧に基づいて第1の走査範囲を決定するステップであって、前記第1の走査範囲の上限が前記アンカー読み込み基準電圧に上限オフセットを加算したものであり、前記第1の走査範囲の下限が前記アンカー読み込み基準電圧に下限オフセットを加算したものであり、前記上限オフセットおよび前記下限オフセットは正の電圧値または負の電圧値である、ステップと、
前記第1の走査範囲に基づいて、前記第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定するステップと
を含む方法。
【請求項2】
前記第1の最良読み込みオフセットを決定する前記ステップは、
第2の走査範囲を決定するステップであって、前記第2の走査範囲は、前記第1のデフォルト読み込み基準電圧に上限オフセットを加算したものである上限と、前記第1のデフォルト読み込み基準電圧に下限オフセットを加算したものである下限とを有する、ステップと、
前記第2の走査範囲内で一連の第1の単回読み込み動作を実施することで、粗いステップ電圧に基づいて前記第2の走査範囲を走査するステップであって、各々の第1の単回読み込み動作は第1の読み込み基準電圧に対応し、各々の第1の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、
各々の第1の単回読み込み動作について、
利用可能な場合、前記第1の単回読み込み動作および前回の前記第1の単回読み込み動作のそれぞれの前記ビットカウントの間の第1のビットカウント差、および、
利用可能な場合、前記第1の単回読み込み動作および後続の前記第1の単回読み込み動作のそれぞれの前記ビットカウントの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第1の単回読み込み動作のうちで最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、粗い最良読み込み基準電圧となるように決定するステップと
を含む、請求項1に記載の方法。
【請求項3】
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が同じ値を有する2つ以上の第1の単回読み込み動作があるとき、それぞれの前記第1のビットカウント差およびそれぞれの前記第2のビットカウント差の最小値が、前記2つ以上の第1の単回読み込み動作のうちの最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、前記粗い最良読み込み基準電圧となるように決定するステップをさらに含む、請求項2に記載の方法。
【請求項4】
第3の走査範囲を決定するステップであって、前記第3の走査範囲は、前記粗い最良読み込み基準電圧に前記粗いステップ電圧を加算したものである上限と、前記粗い最良読み込み基準電圧から前記粗いステップ電圧を減算したものである下限とを有する、ステップと、
前記第3の走査範囲内で一連の第2の単回読み込み動作を実施することで、細かいステップ電圧に基づいて前記第3の走査範囲を走査するステップであって、各々の第2の単回読み込み動作は第2の読み込み基準電圧に対応し、各々の第2の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと
各々の第2の単回読み込み動作について、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、前回の前記第2の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、後続の前記第2の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第2の単回読み込み動作のうちで最小値を有する前記第2の単回読み込み動作の前記第2の読み込み基準電圧を、前記第1の最良読み込み基準電圧となるように決定するステップであって、前記第1のデフォルト読み込み基準電圧に対する前記第1の最良読み込み基準電圧のオフセットが前記第1の最良読み込みオフセットである、ステップと
をさらに含む、請求項2に記載の方法。
【請求項5】
前記第1の走査範囲に基づいて、前記第2のデフォルト読み込み基準電圧に対する前記第2の最良読み込み基準電圧の前記第2の最良読み込みオフセットを決定する前記ステップは、
前記第1の走査範囲内で一連の第3の単回読み込み動作を実施することで前記第1の走査範囲を走査するステップであって、各々の第3の単回読み込み動作は第3の読み込み基準電圧に対応し、各々の第3の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、
各々の第3の単回読み込み動作について、
利用可能な場合、それぞれの前記第3の単回読み込み動作の前記ビットカウントと、前回の前記第3の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第3の単回読み込み動作の前記ビットカウントと、後続の前記第3の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第3の単回読み込み動作のうちで最小値を有する前記第3の単回読み込み動作の前記第3の読み込み基準電圧を、前記第2の最良読み込み基準電圧となるように決定するステップであって、前記第2のデフォルト読み込み基準電圧に対する前記第2の最良読み込み基準電圧のオフセットが前記第2の最良読み込みオフセットである、ステップと
を含む、請求項4に記載の方法。
【請求項6】
前記第1の単回読み込み動作、前記第2の単回読み込み動作、および前記第3の単回読み込み動作は、一部ページ読み込み動作である、請求項5に記載の方法。
【請求項7】
第1の最良読み込みオフセットの第1のセットを収集するステップであって、各々の第1の最良読み込みオフセットは、前記第1のデフォルト読み込み基準電圧からの最良読み込み基準電圧の電圧シフトであり、各々の第1の最良読み込みオフセットは、メモリセルのセットにそれぞれの前記第1の最良読み込みオフセットを持たせるメモリセル条件に対応し、前記第1の最良読み込みオフセットの前記第1のセットは正の値または負の値をそれぞれ有する、ステップと、
前記第1の最良読み込みオフセットの前記第1のセットの最大値を、前記第2の走査範囲の前記上限オフセットになるように設定するステップと、
前記第1の最良読み込みオフセットの前記第1のセットの最小値を、前記第2の走査範囲の前記下限オフセットになるように設定するステップと
をさらに含む、請求項2に記載の方法。
【請求項8】
第2の最良読み込みオフセットの第2のセットを収集するステップであって、各々の第2の最良読み込みオフセットは、前記第1の最良読み込み電圧の前記第1のセット、および、それぞれの前記メモリセル条件の一方に対応し、各々の第2の最良読み込みオフセットは、前記第2のデフォルト読み込み基準電圧からの最良読み込み基準電圧の電圧シフトであり、前記第2の最良読み込みオフセットの前記第2のセットは正の値または負の値をそれぞれ有する、ステップと、
前記第1の最良読み込みオフセットとそれぞれの前記第2の最良読み込みオフセットとの各々の対の間の差を決定するステップであって、前記差は、それぞれの前記第2の最良読み込みオフセットからそれぞれの前記第1の最良読み込みオフセットを減算したものに等しい、ステップと、
前記第1の最良読み込みオフセットとそれぞれの前記第2の最良読み込みオフセットとの各々の対の間の前記差の最大値を、前記第1の走査範囲の前記上限オフセットになるように設定するステップと、
前記第1の最良読み込みオフセットとそれぞれの前記第2の最良読み込みオフセットとの各々の対の間の前記差の最小値を、前記第1の走査範囲の前記下限オフセットになるように設定するステップと
をさらに含む、請求項7に記載の方法。
【請求項9】
前記第1のデフォルト読み込み基準電圧に対する前記第1の最良読み込み基準電圧の前記第1の最良読み込みオフセットを決定する前記ステップの前に、誤り訂正符号(ECC)復号処理が前記ページを読み込むのに失敗したことを決定するステップをさらに含む、請求項1に記載の方法。
【請求項10】
前記第1の最良読み込み基準電圧および前記第2の最良読み込み基準電圧に基づいてMLCの前記セットから前記ページを読み込むためにECCソフトウェア復号処理を実施するステップをさらに含む、請求項1に記載の方法。
【請求項11】
前記第1または第2のデフォルト読み込み基準電圧は、前記MLCのデフォルト読み込み基準電圧に対応する、請求項1に記載の方法。
【請求項12】
半導体メモリデバイスと、
第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定することと、
第2のデフォルト読み込み基準電圧に対する、前記第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定することであって、前記第1のデフォルト読み込み基準電圧および前記第2のデフォルト読み込み基準電圧は、前記半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される、決定することと、
前記アンカー読み込み基準電圧に基づいて第1の走査範囲を決定することであって、前記第1の走査範囲の上限が前記アンカー読み込み基準電圧に上限オフセットを加算したものであり、前記第1の走査範囲の下限が前記アンカー読み込み基準電圧に下限オフセットを加算したものであり、前記上限オフセットおよび前記下限オフセットは正の電圧値または負の電圧値である、決定することと、
前記第1の走査範囲に基づいて、前記第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定することと
を行うように構成される回路を備えるメモリ制御装置と
を備えるメモリシステム。
【請求項13】
前記回路は、
第2の走査範囲を決定することであって、前記第2の走査範囲は、前記第1のデフォルト読み込み基準電圧に上限オフセットを加算したものである上限と、前記第1のデフォルト読み込み基準電圧に下限オフセットを加算したものである下限とを有する、決定することと、
前記第2の走査範囲内で一連の第1の単回読み込み動作を実施することで、粗いステップ電圧に基づいて前記第2の走査範囲を走査することであって、各々の第1の単回読み込み動作は第1の読み込み基準電圧に対応し、各々の第1の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、走査することと、
各々の第1の単回読み込み動作について、
利用可能な場合、それぞれの前記第1の単回読み込み動作の前記ビットカウントと、前回の前記第1の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第1の単回読み込み動作の前記ビットカウントと、後続の前記第1の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定することと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第1の単回読み込み動作のうちで最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、粗い最良読み込み基準電圧となるように決定することと
を行うようにさらに構成される、請求項12に記載のメモリシステム。
【請求項14】
前記回路は、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が同じ値を有する2つ以上の第1の単回読み込み動作があるとき、それぞれの前記第1のビットカウント差およびそれぞれの前記第2のビットカウント差の最小値が、前記2つ以上の第1の単回読み込み動作のうちの最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、前記粗い最良読み込み基準電圧となるように決定するように
さらに構成される、請求項13に記載のメモリシステム。
【請求項15】
前記回路は、
第3の走査範囲を決定することであって、前記第3の走査範囲は、前記粗い最良読み込み基準電圧に前記粗いステップ電圧を加算したものである上限と、前記粗い最良読み込み基準電圧から前記粗いステップ電圧を減算したものである下限とを有する、決定することと、
前記第3の走査範囲内で一連の第2の単回読み込み動作を実施することで、細かいステップ電圧に基づいて前記第3の走査範囲を走査することであって、各々の第2の単回読み込み動作は第2の読み込み基準電圧に対応し、各々の第2の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、走査することと、
各々の第2の単回読み込み動作について、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、前回の前記第2の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、後続の前記第2の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定することと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第2の単回読み込み動作のうちで最小値を有する前記第2の単回読み込み動作の前記第2の読み込み基準電圧を、前記第1の最良読み込み基準電圧となるように決定することであって、前記第1のデフォルト読み込み基準電圧に対する前記第1の最良読み込み基準電圧のオフセットが前記第1の最良読み込みオフセットである、決定することと
を行うようにさらに構成される、請求項13に記載のメモリシステム。
【請求項16】
プロセッサによって実行されるとき、前記プロセッサに方法を実施させる命令を保存する非一時的コンピュータ読取可能媒体であって、前記方法は、
第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップと、
第2のデフォルト読み込み基準電圧に対する、前記第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するステップであって、前記第1のデフォルト読み込み基準電圧および前記第2のデフォルト読み込み基準電圧は、半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される、ステップと、
前記アンカー読み込み基準電圧に基づいて第1の走査範囲を決定するステップであって、前記第1の走査範囲の上限が前記アンカー読み込み基準電圧に上限オフセットを加算したものであり、前記第1の走査範囲の下限が前記アンカー読み込み基準電圧に下限オフセットを加算したものであり、前記上限オフセットおよび前記下限オフセットは正の電圧値または負の電圧値である、ステップと、
前記第1の走査範囲に基づいて、前記第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定するステップと
を含む、非一時的コンピュータ読取可能媒体。
【請求項17】
前記第1の最良読み込みオフセットを決定する前記ステップは、
第2の走査範囲を決定するステップであって、前記第2の走査範囲は、前記第1のデフォルト読み込み基準電圧に上限オフセットを加算したものである上限と、前記第1のデフォルト読み込み基準電圧に下限オフセットを加算したものである下限とを有する、ステップと、
前記第2の走査範囲内で一連の第1の単回読み込み動作を実施することで、粗いステップ電圧に基づいて前記第2の走査範囲を走査するステップであって、各々の第1の単回読み込み動作は第1の読み込み基準電圧に対応し、各々の第1の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、
各々の第1の単回読み込み動作について、
利用可能な場合、それぞれの前記第1の単回読み込み動作の前記ビットカウントと、前回の前記第1の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第1の単回読み込み動作の前記ビットカウントと、後続の前記第1の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第1の単回読み込み動作のうちで最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、粗い最良読み込み基準電圧となるように決定するステップと
を含む、請求項16に記載の非一時的コンピュータ読取可能媒体。
【請求項18】
前記方法は、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が同じ値を有する2つ以上の第1の単回読み込み動作があるとき、それぞれの前記第1のビットカウント差およびそれぞれの前記第2のビットカウント差の最小値が、前記2つ以上の第1の単回読み込み動作のうちの最小値を有する前記第1の単回読み込み動作の前記第1の読み込み基準電圧を、前記粗い最良読み込み基準電圧となるように決定するステップをさらに含む、請求項17に記載の非一時的コンピュータ読取可能媒体。
【請求項19】
前記方法は、
第3の走査範囲を決定するステップであって、前記第3の走査範囲は、前記粗い最良読み込み基準電圧に前記粗いステップ電圧を加算したものである上限と、前記粗い最良読み込み基準電圧から前記粗いステップ電圧を減算したものである下限とを有する、ステップと、
前記第3の走査範囲内で一連の第2の単回読み込み動作を実施することで、細かいステップ電圧に基づいて前記第3の走査範囲を走査するステップであって、各々の第2の単回読み込み動作は第2の読み込み基準電圧に対応し、各々の第2の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、
各々の第2の単回読み込み動作について、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、前回の前記第2の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第2の単回読み込み動作の前記ビットカウントと、後続の前記第2の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第2の単回読み込み動作のうちで最小値を有する前記第2の単回読み込み動作の前記第2の読み込み基準電圧を、前記第1の最良読み込み基準電圧となるように決定するステップであって、前記第1のデフォルト読み込み基準電圧に対する前記第1の最良読み込み基準電圧のオフセットが前記第1の最良読み込みオフセットである、ステップと
をさらに含む、請求項17に記載の非一時的コンピュータ読取可能媒体。
【請求項20】
前記第1の走査範囲に基づいて、前記第2のデフォルト読み込み基準電圧に対する前記第2の最良読み込み基準電圧の前記第2の最良読み込みオフセットを決定する前記ステップは、
前記第1の走査範囲内で一連の第3の単回読み込み動作を実施することで前記第1の走査範囲を走査するステップであって、各々の第3の単回読み込み動作は第3の読み込み基準電圧に対応し、各々の第3の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、
各々の第3の単回読み込み動作について、
利用可能な場合、それぞれの前記第3の単回読み込み動作の前記ビットカウントと、前回の前記第3の単回読み込み動作の前記ビットカウントとの間の第1のビットカウント差、および、
利用可能な場合、それぞれの前記第3の単回読み込み動作の前記ビットカウントと、後続の前記第3の単回読み込み動作の前記ビットカウントとの間の第2のビットカウント差
を決定するステップと、
それぞれの前記第1のビットカウント差とそれぞれの前記第2のビットカウント差との合計が前記一連の第3の単回読み込み動作のうちで最小値を有する前記第3の単回読み込み動作の前記第3の読み込み基準電圧を、前記第2の最良読み込み基準電圧となるように決定するステップであって、前記第2のデフォルト読み込み基準電圧に対する前記第2の最良読み込み基準電圧のオフセットが前記第2の最良読み込みオフセットである、ステップと
を含む、請求項19に記載の非一時的コンピュータ読取可能媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、3次元(3D)NANDフラッシュメモリ動作技術に関する。
【背景技術】
【0002】
3次元(3D)NANDフラッシュメモリは、高い記憶密度を提供するために、最先端のマルチレベルセル(MLC)技術を採用している。読み込み-再試行機構が、3D NANDフラッシュメモリの信頼性を向上させるために使用されている。例えば、調整された読み込み基準電圧値を伴う複数の再試行ステップが、符号化ページが正確に復号され得る前に、標的ページを複数回読み込むために実施され得る。多数の読み込み-再試行動作は、読み込み待機時間を相当に増加させ、メモリシステムの性能を悪化させる可能性がある。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の態様は、メモリシステムの方法を提供する。方法は、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップと、第2のデフォルト読み込み基準電圧に対する、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するステップとを含み得る。第1のデフォルト読み込み基準電圧および第2のデフォルト読み込み基準電圧は、メモリシステムの半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される。第1の走査範囲がアンカー読み込み基準電圧に基づいて決定され得る。第1の走査範囲の上限は、アンカー読み込み基準電圧に上限オフセットを加算したものであり、第1の走査範囲の下限は、アンカー読み込み基準電圧に下限オフセットを加算したものである。上限オフセットおよび下限オフセットは正の電圧値または負の電圧値であり得る。第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットが、第1の走査範囲に基づいて決定され得る。
【0004】
実施形態において、第1の最良読み込みオフセットを決定するステップは、第2の走査範囲を決定するステップであって、第2の走査範囲は、第1のデフォルト読み込み基準電圧に上限オフセットを加算したものである上限と、第1のデフォルト読み込み基準電圧に下限オフセットを加算したものである下限とを有する、ステップと、第2の走査範囲内で一連の第1の単回読み込み動作を実施することで、粗いステップ電圧に基づいて第2の走査範囲を走査するステップであって、各々の第1の単回読み込み動作は第1の読み込み基準電圧に対応し、各々の第1の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、各々の第1の単回読み込み動作について、利用可能な場合、それぞれの第1の単回読み込み動作のビットカウントと、前回の第1の単回読み込み動作のビットカウントとの間の第1のビットカウント差、および、利用可能な場合、それぞれの第1の単回読み込み動作のビットカウントと、後続の第1の単回読み込み動作のビットカウントとの間の第2のビットカウント差を決定するステップと、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第1の単回読み込み動作のうちで最小値を有する第1の単回読み込み動作の第1の読み込み基準電圧を、粗い最良読み込み基準電圧となるように決定するステップとを含む。
【0005】
実施形態において、方法は、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が同じ値を有する2つ以上の第1の単回読み込み動作があるとき、それぞれの第1のビットカウント差およびそれぞれの第2のビットカウント差の最小値が、2つ以上の第1の単回読み込み動作のうちの最小値を有する第1の単回読み込み動作の第1の読み込み基準電圧を、粗い最良読み込み基準電圧となるように決定するステップをさらに含み得る。
【0006】
実施形態において、方法は、第3の走査範囲を決定するステップであって、第3の走査範囲は、粗い最良読み込み基準電圧に粗いステップ電圧を加算したものである上限と、粗い最良読み込み基準電圧から粗いステップ電圧を減算したものである下限とを有する、ステップと、第3の走査範囲内で一連の第2の単回読み込み動作を実施することで、細かいステップ電圧に基づいて第3の走査範囲を走査するステップであって、各々の第2の単回読み込み動作は第2の読み込み基準電圧に対応し、各々の第2の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、各々の第2の単回読み込み動作について、利用可能な場合、それぞれの第2の単回読み込み動作のビットカウントと、前回の第2の単回読み込み動作のビットカウントとの間の第1のビットカウント差、および、利用可能な場合、それぞれの第2の単回読み込み動作のビットカウントと、後続の第2の単回読み込み動作のビットカウントとの間の第2のビットカウント差を決定するステップと、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第2の単回読み込み動作のうちで最小値を有する第2の単回読み込み動作の第2の読み込み基準電圧を、第1の最良読み込み基準電圧となるように決定するステップであって、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧のオフセットが第1の最良読み込みオフセットである、ステップとをさらに含み得る。
【0007】
実施形態において、第1の走査範囲に基づいて、第2のデフォルト読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定するステップは、第1の走査範囲内で一連の第3の単回読み込み動作を実施することで第1の走査範囲を走査するステップであって、各々の第3の単回読み込み動作は第3の読み込み基準電圧に対応し、各々の第3の単回読み込み動作は1または0のいずれかのビットカウントを発生させる、ステップと、各々の第3の単回読み込み動作について、利用可能な場合、それぞれの第3の単回読み込み動作のビットカウントと、前回の第3の単回読み込み動作のビットカウントとの間の第1のビットカウント差、および、利用可能な場合、それぞれの第3の単回読み込み動作のビットカウントと、後続の第3の単回読み込み動作のビットカウントとの間の第2のビットカウント差を決定するステップと、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第3の単回読み込み動作のうちで最小値を有する第3の単回読み込み動作の第3の読み込み基準電圧を、第2の最良読み込み基準電圧となるように決定するステップであって、第2のデフォルト読み込み基準電圧に対する第2の最良読み込み基準電圧のオフセットが第2の最良読み込みオフセットである、ステップとを含む。例では、第1の単回読み込み動作、第2の単回読み込み動作、および第3の単回読み込み動作は、一部ページ読み込み動作である。
【0008】
実施形態において、方法は、第1の最良読み込みオフセットの第1のセットを収集するステップであって、各々の第1の最良読み込みオフセットは、第1のデフォルト読み込み基準電圧からの最良読み込み基準電圧の電圧シフトであり、各々の第1の最良読み込みオフセットは、メモリセルのセットにそれぞれの第1の最良読み込みオフセットを持たせるメモリセル条件に対応し、第1の最良読み込みオフセットの第1のセットは正の値または負の値をそれぞれ有する、ステップと、第1の最良読み込みオフセットの第1のセットの最大値を、第2の走査範囲の上限オフセットになるように設定するステップと、第1の最良読み込みオフセットの第1のセットの最小値を、第2の走査範囲の下限オフセットになるように設定するステップとをさらに含み得る。
【0009】
実施形態において、方法は、第2の最良読み込みオフセットの第2のセットを収集するステップであって、各々の第2の最良読み込みオフセットは、第1の最良読み込み電圧の第1のセット、および、それぞれのメモリセル条件の一方に対応し、各々の第2の最良読み込みオフセットは、第2のデフォルト読み込み基準電圧からの最良読み込み基準電圧の電圧シフトであり、第2の最良読み込みオフセットの第2のセットは正の値または負の値をそれぞれ有する、ステップと、第1の最良読み込みオフセットとそれぞれの第2の最良読み込みオフセットとの各々の対の間の差を決定するステップであって、差は、それぞれの第2の最良読み込みオフセットからそれぞれの第1の最良読み込みオフセットを減算したものに等しい、ステップと、第1の最良読み込みオフセットとそれぞれの第2の最良読み込みオフセットとの各々の対の間の差の最大値を、第1の走査範囲の上限オフセットになるように設定するステップと、第1の最良読み込みオフセットとそれぞれの第2の最良読み込みオフセットとの各々の対の間の差の最小値を、第1の走査範囲の下限オフセットになるように設定するステップとをさらに含み得る。
【0010】
実施形態において、方法は、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップの前に、誤り訂正符号(ECC)復号処理がページを読み込むのに失敗したことを決定するステップをさらに含み得る。実施形態において、ECCソフトウェア復号処理が、第1の最良読み込み基準電圧および第2の最良読み込み基準電圧に基づいてMLCのセットからページを読み込むために実施される。実施形態において、第1または第2のデフォルト読み込み基準電圧は、MLCのデフォルト読み込み基準電圧に対応する。
【0011】
本開示の態様は、命令を保存する非一時的コンピュータ読取可能媒体を提供する。命令は、プロセッサによって実行されるとき、プロセッサに方法を実施させる。
【0012】
本開示の態様は、メモリシステムを提供する。メモリシステムは、半導体メモリデバイスと、半導体メモリデバイスを動作させるメモリ制御装置とを備え得る。メモリ制御装置は回路を備え得る。回路は、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するように構成され、第2のデフォルト読み込み基準電圧に対する、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するように構成される。第1のデフォルト読み込み基準電圧および第2のデフォルト読み込み基準電圧は、メモリシステムにおける半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される。第1の走査範囲がアンカー読み込み基準電圧に基づいて決定され得る。第1の走査範囲の上限が、アンカー読み込み基準電圧に上限オフセットを加算したものであり、第1の走査範囲の下限が、アンカー読み込み基準電圧に下限オフセットを加算したものである。上限オフセットおよび下限オフセットは正の電圧値または負の電圧値であり得る。第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットが、第1の走査範囲に基づいて決定され得る。
【0013】
本発明の開示は、添付の図と共に読まれるとき、以下の詳細な記載から理解できる。業界における標準的な実施に従って、様々な特徴が一定の縮尺で描かれていないことは、留意されるべきである。実際、様々な特徴の寸法は、検討の明確性のために、増大または縮小させられる可能性がある。
【図面の簡単な説明】
【0014】
図1】本開示のいくつかの態様による、メモリデバイスを有するシステム100のブロック図である。
図2A】本開示のいくつかの態様による、メモリシステムの例の図である。
図2B】本開示のいくつかの態様による、メモリシステムの例の図である。
図3】本開示のいくつかの態様による、周辺回路を含むメモリデバイス300の概略回路図である。
図4】本開示のいくつかの態様による、周辺回路の例の図である。
図5】本開示の実施形態による、メモリセルの閾値電圧分布の概略図である。
図6】メモリセル閾値電圧分布がずれた状況の図である。
図7】本開示の実施形態による読み込み処理700の図である。
図8】本開示の実施形態による、失敗したビットカウント(FBC:Failed Bit Count)に基づく最良読み込みレベルの探索処理800の図である。
図9】走査処理の間に一連の読み込みレベル(走査点)から最良読み込みレベルを決定するためのビットカウント差(BCD:Bit Count Difference)テーブル900の図である。
図10A】本開示の実施形態による、BCDに基づく最良読み込みレベルの探索処理1000の図である。
図10B】本開示の実施形態による、BCDに基づく最良読み込みレベルの探索処理1000の図である。
図11A】本開示の実施形態による、BCDに基づく探索処理1000における粗い探索のために使用される走査範囲をどのように最適化するかを示すための2つのテーブル1110および1120の図である。
図11B】本開示の実施形態による、BCDに基づく探索処理1000における細かい探索のために使用される走査範囲をどのように最適化するかを示すための2つのテーブル1130および1140の図である。
図12A】本開示の実施形態による最良読み込みレベルの探索処理の図である。
図12B】本開示の実施形態による最良読み込みレベルの探索処理の図である。
図12C】本開示の実施形態による最良読み込みレベルの探索処理の図である。
図13】本開示の実施形態による最良読み込みレベルの探索処理1300の図である。
図14A】本開示の実施形態による、第1の最良読み込み探索処理と第2の最良読み込み探索処理との間の性能の比較の図である。
図14B】本開示の実施形態による、第1の最良読み込み探索処理と第2の最良読み込み探索処理との間の性能の比較の図である。
【発明を実施するための形態】
【0015】
特定の構成および配置が検討されているが、これが例示の目的のためだけに行われていることは、理解されるべきである。そのため、他の構成および配置が、本開示の範囲から逸脱することなく使用できる。また、本開示は、様々な他の用途において用いることもできる。本開示に記載されているような機能的特徴および構造的特徴は、図面において明確に描写されていない方法で、互いとの組み合わせ、調整、および変更が本開示の範囲内になるように、それらの組み合わせ、調整、および変更を行うことができる。
【0016】
概して、用語は、文脈における使用から少なくとも部分的に理解できる。例えば、本明細書で使用されているような「1つまたは複数」という用語は、少なくとも部分的に文脈に依存して、単数の意味での特徴、構造、もしくは特性を記載するために使用され得る、または、複数の意味での特徴、構造、もしくは特性の組み合わせを記載するために使用され得る。同様に、「1つ」または「その」などの用語も、少なくとも部分的に文脈に依存して、単数での使用を伝えるために、または、複数での使用を伝えるために、理解され得る。また、「~に基づいて」という用語は、排他的な因子のセットを伝えるように必ずしも意図されていないとして理解でき、代わりに、文脈に少なくとも部分的に依存して、必ずしも明示的に記載されていない追加の因子の存在を許容してもよい。
【0017】
本開示は、3次元(3D)NANDメモリデバイスに限定されないが、3D NANDデバイスが、本発明の概念を例示するために、いくつかの例で使用され得る。例えば、本明細書に記載されている技術は、平面状のNANDメモリデバイスに適用することができる。
【0018】
本開示の態様は、最良読み込み基準電圧(最良読み込みレベル)を探索するための方法および技術を提供する。最良読み込みレベルは、続いて、読み込み再試行またはソフトウェア復号処理のために使用できる。実施形態において、読み込みレベルに対応して、走査処理が、走査電圧範囲(走査範囲)における複数の走査点にわたって実施され得る。一連の単回読み込み動作は、データの1つまたは複数のページを保存するワード線メモリセルストリングにわたる各々の走査点において実施され得る。各々の単回読み込み動作は、ビットカウントを出力することができる。最良読み込みレベルが、2回の連続した単回読み取り動作の間のビットカウント差に基づいて決定され得る。したがって、探索処理は、メモリセルに保存されている既知のデータに依拠しない。
【0019】
また、走査範囲最適化方法が、最良のレベルの探索処理を加速させるために提供される。例えば、異なるメモリセル条件に対応して、第1のデフォルト読み込み基準電圧に対する第1の最良読み込みオフセットと、第2のデフォルト読み込み基準電圧に対する第2の最良読み込みオフセットとのデータが、収集され得る。第1の最良読み込みオフセットの電圧値と、それぞれの第2の最良読み込みオフセットの電圧値との間の電圧差の範囲が、決定され得る。第1の読み込みレベルにおける第1の探索処理から生じる最良読み込みレベルが、第2の読み込みレベルにおける第2の探索処理についてのアンカー電圧として使用できる。第2の探索処理についての探索範囲は、アンカー電圧の周りでの電圧差の範囲に基づいて決定され得る。
【0020】
図1は、本開示のいくつかの態様による、メモリデバイスを有するシステム100のブロック図を示している。システム100は、携帯電話、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、車載コンピュータ、ゲームコンソール、プリンタ、測位デバイス、ウェアラブル電子デバイス、スマートセンサ、仮想現実(VR)デバイス、拡張現実(AR)デバイス、または、記憶装置を有する任意の他の適切な電子デバイスであり得る。図1に示されているように、システム100は、ホスト108と、1つまたは複数のメモリデバイス104およびメモリ制御装置106を有するメモリシステム102とを備え得る。ホスト108は、中央処理ユニット(CPU)などの電子デバイス、または、アプリケーションプロセッサ(AP)などのシステムオンチップ(SoC)のプロセッサであり得る。ホスト108は、データをメモリデバイス104へと送信するように、または、データをメモリデバイス104から受信するように、構成され得る。メモリデバイス104は、本開示に開示されている任意のメモリデバイスであり得る。
【0021】
いくつかの実施例によれば、メモリ制御装置106は、メモリデバイス104とホスト108とに連結され、メモリデバイス104を制御するように構成される。メモリ制御装置106は、メモリデバイス104に保存されたデータを管理することができ、ホスト108と通信することができる。いくつかの実施例において、メモリ制御装置106は、セキュアデジタル(SD)カード、コンパクトフラッシュ(CF)(登録商標)カード、ユニバーサルシリアルバス(USB)フラッシュドライブ、または、パーソナルコンピュータ、デジタルカメラ、携帯電話などの電子デバイスでの使用のための他の媒体のような低いデューティサイクル環境において動作するために設計される。いくつかの実施例において、メモリ制御装置106は、スマートフォン、タブレット、ラップトップコンピュータなどの携帯デバイスのためのデータ保存装置として使用されるソリッドステートドライブ(SSD)または組み込み型マルチメディアカード(eMMC)、およびエンタープライズストレージアレイのような高いデューティサイクル環境において動作するために設計される。
【0022】
メモリ制御装置106は、読み込み、消去、およびプログラム動作など、メモリデバイス104の動作を制御するように構成され得る。メモリ制御装置106は、限定されることはないが、不良ブロック管理、ガベージコレクション、論理アドレスから物理アドレスへの変換、ウェアレベリングなどを含め、メモリデバイス104に保存されたデータ、または保存されるデータに関して、様々な機能を管理するようにも構成され得る。いくつかの実施例において、メモリ制御装置106は、メモリデバイス104から読み込まれたデータ、または、メモリデバイス104に書き込まれたデータに関して、誤り訂正符号(ECC)を処理するようにさらに構成される。例えば、メモリデバイス104をフォーマットするなど、任意の他の適切な機能もメモリ制御装置106によって実施され得る。本開示のいくつかの態様と一致して、いくつかの実施例において、メモリ制御装置106は、本明細書に記載されているように、最良読み込み基準電圧探索方法を全体的または部分的に実施するように構成される。
【0023】
メモリ制御装置106は、具体的な通信プロトコルに従って外部デバイス(例えば、ホスト108)と通信することができる。例えば、メモリ制御装置106は、USBプロトコル、MMCプロトコル、PCI(周辺構成要素相互接続)プロトコル、PCI-Express(PCI-E)プロトコル、ATA(Advanced Technology Attachment)プロトコル、シリアルATAプロトコル、パラレルATAプロトコル、Small Computer Small Interface(SCSI)プロトコル、Enhanced Small Disk Interface(ESDI)プロトコル、Integrated Drive Electronics(IDE)プロトコル、Firewireプロトコルなど、様々なインターフェースプロトコルのうちの少なくとも1つを通じて、外部デバイスと通信することができる。
【0024】
メモリ制御装置106と、1つまたは複数のメモリデバイス104とは、様々な種類の保存デバイスへと組み込むことができ、例えば、Universal Flash Storage(UFS)パッケージまたはeMMCパッケージなどの同じパッケージに含まれ得る。つまり、メモリシステム102は、異なる種類の最終電子製品へと実装およびパッケージされ得る。
【0025】
図2Aに示されているような一例において、メモリ制御装置106と単一のメモリデバイス104とはメモリカード202へと組み込まれ得る。メモリカード202には、PCカード(PCMCIA、Personal Computer Memory Card International Association)、CFカード、スマートメディア(SM)カード、メモリースティック、マルチメディアカード(MMC、RS-MMC、MMCmicro)、SDカード(SD、miniSD、microSD、SDHC)、UFSなどがあり得る。メモリカード202は、メモリカード202をホスト(例えば、図1におけるホスト108)と連結するメモリカードコネクタ204をさらに備え得る。図2Bに示されているような他の例において、メモリ制御装置106と複数のメモリデバイス104とはSSD206へと組み込まれ得る。SSD206は、SSD206をホスト(例えば、図1におけるホスト108)と連結するSSDコネクタ208をさらに備え得る。いくつかの実施例において、SSD206の記憶容量および/または動作速度は、メモリカード202の記憶容量および/または動作速度より大きい。
【0026】
図3は、本開示のいくつかの態様による、周辺回路を含むメモリデバイス300の概略回路図を示している。メモリデバイス300は、図1におけるメモリデバイス104の例であり得る。メモリデバイス300は、メモリセルアレイ301と、メモリセルアレイ301に連結された周辺回路302とを備え得る。メモリセルアレイ301は、メモリセル306が基板(図示せず)の上方で垂直にそれぞれ延びるNANDメモリストリング308の配列の形態で提供されるNANDフラッシュメモリセルアレイであり得る。いくつかの実施例において、各々のNANDメモリストリング308は、直列に連結され、垂直に積み重ねられた複数のメモリセル306を備える。各々のメモリセル306は、メモリセル306の領域内で捕獲される電子の数に依存する電圧または電荷などの連続的なアナログ値を保持することができる。各々のメモリセル306は、浮遊ゲートトランジスタを含む浮遊ゲート式のメモリセル、または、電荷捕獲トランジスタを含む電荷捕獲式のメモリセルのいずれかであり得る。
【0027】
いくつかの実施例において、各々のメモリセル306は、2つの可能なメモリ状態を有し、1ビットのデータを保存することができるシングルレベルセル(SLC)である。例えば、第1のメモリ状態「0」は第1の電圧の範囲に対応することができ、第2のメモリ状態「1」は第2の電圧の範囲に対応することができる。いくつかの実施例において、各々のメモリセル306は、4つより多くのメモリ状態において、シングルビットより多くのデータを保存することができるマルチレベルセル(MLC)である。例えば、MLCは、1つのセルあたり2ビット(ダブルレベルセル(DLC)としても知られている)、1つのセルあたり3ビット(トリプルレベルセル(TLC)としても知られている)、または1つのセルあたり4ビット(クアッドレベルセル(QLC)としても知られている)を保存することができる。各々のMLCは、可能な名目上の記憶値の範囲を取るようにプログラムされ得る。一例において、各々のMLCが2ビットのデータを保存する場合、MLCは、3つの可能な名目上の記憶値のうちの1つをセルに書き込むことで、消去状態から3つの可能なプログラミングレベルのうちの1つを取るようにプログラムされ得る。第4の名目上の記憶値は消去状態のために使用され得る。
【0028】
図3に示されているように、各々のNANDメモリストリング308は、そのソース端におけるソース選択ゲート(SSG:Source Select Gate)310(または、ソース選択トランジスタと称される)と、そのドレイン端におけるドレイン選択ゲート(DSG:Drain Select Gate)312(または、ドレイン選択トランジスタと称される)とを備え得る。SSG310およびDSG312は、読み込み動作およびプログラム動作の間、選択されたNANDメモリストリング308(アレイの列)を作動させるように構成され得る。いくつかの実施例において、同じブロック304におけるNANDメモリストリング308のソースは、例えば共通のSL(Source Line)といった、同じソース線314を通じて連結される。別の言い方をすれば、同じブロック304におけるすべてのNANDメモリストリング308は、いくつかの実施例に従ってアレイ共通ソース(ACS)を有する。各々のNANDメモリストリング308のDSG312が、いくつかの実施例によれば、データが出力バス(図示せず)を介して読み込みまたは書き込みされ得るそれぞれのビット線316に連結される。いくつかの実施例では、各々のNANDメモリストリング308は、選択電圧(例えば、DSG312を有するトランジスタの閾値電圧を上回る)もしくは非選択電圧(例えば、0V)を、1つまたは複数のDSG線313を通じてそれぞれのDSG312に適用することで、および/または、選択電圧(例えば、SSG310を有するトランジスタの閾値電圧を上回る)もしくは非選択電圧(例えば、0V)を、1つまたは複数のSSG線315を通じてそれぞれのSSG310に適用することで、選択または非選択されるように構成される。
【0029】
図3に示されているように、NANDメモリストリング308は、ACSに連結されるなど、共通ソース線314をそれぞれが有し得る複数のブロック304へと組織化され得る。いくつかの実施例において、各々のブロック304は、消去動作のための基本的なデータユニットであり、つまり、同じブロック304におけるすべてのメモリセル306が同時に消去される。選択されたブロック304におけるメモリセル306を消去するために、選択されたブロック304に連結されたソース線314と、選択されたブロック304と同じ平面における選択されなかったブロック304とは、高い正の電圧(例えば、20V以上)など、消去電圧(Vers)でバイアスされ得る。いくつかの例では、消去動作は、ハーフブロックレベル、クォータブロックレベル、または、任意の適切な数のブロックもしくはブロックの任意の適切な断片を有するレベルにおいて、実施され得る。
【0030】
隣接のNANDメモリストリング308のメモリセル306が、メモリセル306のどの行が読み込み動作およびプログラム動作によって影響されるかを選択するワード線318を通じて連結される。いくつかの実施例において、各々のワード線318は、プログラム動作のための基本的なデータユニットであるメモリセル306のページ320に連結される。ビットでの1つのページ320の大きさは、1つのブロック304においてワード線318によって連結されたNANDメモリストリング308の数に関係することができる。記載の容易性のために、1つのページ320におけるメモリセル306は同じワード線318に連結させることができ、「ページ」および「ワード線」という用語は、本開示において置き換え可能に使用され得る。しかしながら、いくつかの例において、1つのページ320におけるメモリセル306は、2つ以上のワード線318に連結されてもよい。各々のワード線318は、それぞれのページ320における各々のメモリセル306での複数の制御ゲート(ゲート電極)と、制御ゲート同士を連結するゲート線とを備え得る。いくつかの実施例において、各々のワード線318は、SSGおよびDSGの制御に基づいて、メモリセルの複数のページ(または一部のページ)に連結され得る。
【0031】
周辺回路302は、ビット線316、ワード線318、ソース線314、SSG線315、およびDSG線313を通じてメモリセルアレイ301に連結させることができる。周辺回路302は、ビット線316、ワード線318、ソース線314、SSG線315、およびDSG線313を通じて、電圧信号および/または電流信号を各々の標的のメモリセル306に適用することで、ならびに、電圧信号および/または電流信号を各々の標的のメモリセル306から感知することで、メモリセルアレイ301の動作を容易にするための任意の適切なアナログ回路、デジタル回路、および混合信号回路を備え得る。周辺回路302は、金属酸化膜半導体(MOS)技術を用いして形成された様々な種類の周辺回路を備え得る。
【0032】
例えば、図4は、ページバッファ/センス増幅器404と、列デコーダ/ビット線ドライバ406と、行デコーダ/ワード線ドライバ408と、電圧発生装置410と、制御論理412と、レジスタ414と、インターフェース416と、データバス418とを含むいくつかの周辺回路を示している。いくつかの例では、図4に示されていない追加の周辺回路が同じく含まれ得ることは、理解される。
【0033】
ページバッファ/センス増幅器404は、制御論理412からの制御信号に従って、メモリセルアレイ301からデータを読み込むように、および、メモリセルアレイ301にデータをプログラム(書き込み)するように、構成され得る。一例において、ページバッファ/センス増幅器404は、メモリセルアレイ301の1つのページ320へとプログラムさせるために、プログラムデータ(書き込みデータ)の1つのページを保存してもよい。他の例において、ページバッファ/センス増幅器404は、選択されたワード線318に連結されたメモリセル306へとデータが適切にプログラムされたことを確実にするために、プログラム検証動作を実施してもよい。なおも他の例では、ページバッファ/センス増幅器404は、メモリセル306に保存されたデータビットを表すビット線316からの低電力信号を感知してもよく、小さい電圧振幅を、読み込み動作において認識可能な論理レベルへと増幅してもよい。列デコーダ/ビット線ドライバ406は、制御論理412によって制御されるように、および、電圧発生装置410から発生させられたビット線電圧を適用することで1つまたは複数のNANDメモリストリング308を選択するように、構成され得る。
【0034】
行デコーダ/ワード線ドライバ408は、制御論理412によって制御されるように構成でき、メモリセルアレイ301のブロック304を選択/非選択するように、および、ブロック304のワード線318を選択/非選択するように構成できる。行デコーダ/ワード線ドライバ408は、電圧発生装置410から発生させられたワード線電圧を使用してワード線318を駆動するようにさらに構成され得る。いくつかの実施例において、行デコーダ/ワード線ドライバ408は、SSG線315およびDSG線313を選択/非選択および駆動することもできる。後で詳細に記載されているように、行デコーダ/ワード線ドライバ408は、選択されたワード線318に連結されたメモリセル306における読み込み動作において、読み込み電圧を選択されたワード線318に適用するように構成される。読み込み電圧は、読み込み電圧が空いているブロックにおけるワード線318に適用されるときの空いているブロックに基づく読み込みオフセットで補正された読み込み電圧、または、読み込み電圧が一杯のブロックにおけるワード線318に適用されるときの空いているブロックに基づく読み込みオフセットなしでのデフォルトの読み込み電圧のいずれかであり得る。
【0035】
電圧発生装置410は、制御論理412によって制御され、メモリセルアレイ301に供給されるワード線電圧(例えば、読み込み電圧、プログラム電圧、パス電圧、ローカル電圧、検証電圧など)、ビット線電圧、およびソース線電圧を発生させるように構成され得る。後で詳細に記載されているように、読み込み動作が空いているブロックで実施されるのか一杯のブロックで実施されるのかに依存して、制御論理412は、デフォルトの読み込み電圧、または、デフォルトの読み込み電圧から行デコーダ/ワード線ドライバ408へのオフセットを有する補正された読み込み電圧を提供するために、電圧発生装置410を制御することができる。
【0036】
制御論理412は、先に記載された各々の周辺回路に連結でき、各々の周辺回路の動作を制御するように構成され得る。レジスタ414は、制御論理412に連結させることができ、各々の周辺回路の動作を制御するための状態情報、命令動作コード(OPコード)、および命令アドレスを保存するための状態レジスタ、命令レジスタ、およびアドレスレジスタを含み得る。後で詳細に記載されているように、レジスタ414の状態レジスタは、ADSVリストを有するなど、メモリセルアレイ301におけるすべてのブロック304の空いているブロックを指示する、空いているブロックの情報を保存するように構成されている1つまたは複数のレジスタを備え得る。いくつかの実施例において、空いているブロックの情報は、各々の空いているブロックの最後のプログラムされたページも指示する。
【0037】
図5は、本開示の実施形態による、メモリセルの閾値電圧分布の概略図を示している。水平軸はメモリセルの閾値電圧(Vthで示されている)を表している。垂直軸は、異なる閾値電圧に対応するメモリセルの数を表している。
【0038】
図5において、メモリセルは、ページ、符号語、ワード線メモリセルストリング、ブロック、プレーン、ダイなどに対応する3D NANDメモリデバイスにおけるメモリセルであり得る。メモリセルは、TLCであり、S0~S7で示されている8つの状態(メモリ状態)のうちの1つとなるようにプログラム(または消去)され得る。特定の状態になるようにプログラム(または消去)されるメモリセルは、電圧範囲内で分布される閾値電圧を有し得る。したがって、図5において、各々の状態(S0~S7)は、閾値電圧分布を有するように示されている。いくつかの例において、これらの分布は、ポアソン分布を用いてそれぞれモデル化され得る。
【0039】
TLCメモリセルが、メモリセルがどの状態にあるかに依存して、3つのビットを表すことができる。別の言い方をすれば、3つのビットが8つの状態のうちの1つにおいて符号化され得る。状態とそれぞれの3つのビットとの間のマッピングは、異なる実施形態において変化することができる。図5では、8つの状態S0~S7は、それぞれ111、110、100、000、010、011、001、および101にマッピングされる。8つの状態における最下位ビット(LSB)は、より下のページに属することができる。8つの状態における中位ビット(CSB)は、真ん中のページに属することができる。8つの状態における最上位ビット(MSB)は、より上のページに属することができる。
【0040】
図5では、7つのデフォルト読み込み基準電圧V1~V7がそれぞれのメモリセル閾値電圧分布の間に位置付けられている。理想的には、各々のメモリセル閾値電圧分布は、2つの近隣のデフォルト読み込み基準電圧の中に含まれ得る。別の言い方をすれば、プログラムまたは消去されたメモリセルは、意図されている状態を保ち、それによって、表されている3つのビットを維持することができることが望まれる。しかしながら、メモリセル閾値分布は、例えば、プログラム/消去(P/E)サイクル、保持期間、ライトディスターブまたはリードディスターブ、温度変化などのため、ある分布から他の分布へと移行または拡張する可能性がある。メモリセル閾値分布のこのような変化は、読み込みの誤りを引き起こす。
【0041】
特定のデフォルト読み込み基準電圧に対応して、メモリセルがデフォルト読み込み基準電圧未満の閾値電圧を有する場合、メモリセルはより下の状態になると言える。メモリセルがデフォルト読み込み基準電圧を上回る閾値電圧を有する場合、メモリセルはより上の状態になると言える。また、図5において、デフォルト読み込み基準電圧の右側への状態は、デフォルト読み込み基準電圧に対してより上の状態と呼ばれる。デフォルト読み込み基準電圧の左側への状態は、デフォルト読み込み基準電圧に対してより下の状態と呼ばれる。
【0042】
異なるMLC技術に対応して、デフォルト読み込み基準電圧の異なるセットが使用され得る。例えば、SLCは、2つの状態を区別するために1つのデフォルト読み込み基準電圧を使用することができる。DLCは、4つの状態を区別するために3つのデフォルト読み込み基準電圧を使用することができる。QLCは、16個の状態を区別するために15個のデフォルト読み込み基準電圧を使用することができる。
【0043】
図6は、メモリセル閾値電圧分布がずれた状況を示している。分布D1およびD2(破線)は、2つの近隣の状態(図5におけるS1およびS2など)に対応する理想的なメモリセル閾値電圧分布を表している。Vdefaultと示されているデフォルト読み込み基準電圧601が分布D1と分布D2との間に位置付けられている。理想的な閾値電圧分布に対応して、メモリセルは、メモリセルへとプログラムされたデータの符号化されたビットを正確に表す、またはそのようなビットでマッピングする状態にある。典型的には、プログラムされているメモリセルの時間におけるメモリセルの状態は、理想的な分布であり得る。別の言い方をすれば、プログラムされている時間におけるメモリセルは、理想的な閾値電圧(または状態)の分布を有することができる。
【0044】
分布D1およびD2に対応して、単回読み込み動作がデフォルト読み込み基準電圧601を用いて実施されるとき、分布D2に属するメモリセルは、例えば、0の状態(Vdefaultより大きい閾値電圧を有することを指示する)になるように検出され、0のビットをもたらす。分布D1に属するメモリセルは、例えば、1の状態(Vdefaultより小さい閾値電圧を有することを指示する)になるように検出され、1のビットをもたらす。それらの検出されたビットは、プログラムされている時間において、理想的な閾値電圧分布、またはメモリセルの状態に対応する。したがって、それらのビットは、対応するデフォルト読み込み基準電圧601に対して元のビットまたは理想的なビットとして言及されている。メモリセルのセットへとプログラムされるデータが既知であるとき、メモリセルのセットの理想的な状態(例えば、図5における状態S0~S7)は、読み込み動作なしでデータに基づいて決定され得ることは、留意されるべきである。したがって、元のビットは、関連付けられたデータが既知である場合、導き出すことができる、または計算することができる。したがって、元のビットは、既知のデータに基づいて、誤りビットを決定する状況において、導き出されたビットまたは計算されたビットに言及するために使用することもできる。
【0045】
複数の読み込み動作が複数の異なる読み込み基準電圧において起こるページ読み込み動作と比較して、単回読み込み基準電圧(デフォルトまたは非デフォルトの読み込み基準電圧など)における読み込み動作は、単回読み込み動作と称される。
【0046】
分布D1’およびD2’は、理想的な分布D1およびD2の結果がずれたときの実際のメモリセルの閾値電圧分布を表している。実際の分布の下で、単回読み込み動作がデフォルト読み込み基準電圧601を用いて実施されるとき、分布D2’に属するが、Vdefaultより小さい閾値をそれぞれが有するメモリセルが、例えば、1の状態(Vdefaultより小さい閾値電圧を有することを指示する)になるように検出されることになり、1のビットをもたらす。したがって、これらのメモリセルによって表される元のビット0は、1となるように反転する。これらの反転ビットは、それぞれのメモリセルが状態をより上の状態からより下の状態へと変化させたとき、より上の状態の反転ビットと称される。
【0047】
分布D1’に属するが、Vdefaultより大きい閾値をそれぞれが有するメモリセルは、例えば、0の状態(Vdefaultより大きい閾値電圧を有することを指示する)になるように検出されることになり、ビット0をもたらす。したがって、これらのメモリセルによって表される元のビット1は、0となるように反転する。これらの反転ビットは、それぞれのメモリセルが状態をより下の状態からより上の状態へと変化させたとき、より下の状態の反転ビットと称される。より下の状態またはより上の状態の反転ビットと関連付けられるメモリセルの他に、分布D1’およびD2’に属する他のメモリセルは、状態1および0にそれぞれなるように、なおも正確に検出され得る。
【0048】
ページ読み込み動作(複数の単回読み込み動作を含む)の間、複数の単回読み込み動作からの反転ビット誤りが、ページの符号語においてビット誤りをもたらす可能性がある。符号語の未加工ビット誤り率(RBER:Raw Bit Error Rate)がECC訂正能力を上回るレベルに達するとき、関連するデータ(例えば、ページに対応する)は取り戻すことができず、ECC復号の失敗をもたらす。成功裏のECC訂正を達成するためには、単回読み込み動作において反転ビットの数を減らすことが望ましい。
【0049】
本開示は、反転ビットの数を最小限または低減するために、最良読み込み基準電圧を探索するための技術および方法を提供する。図6は、Voptと示されている最適読み込み基準電圧602を示している。最適読み込み基準電圧602は、反転ビットの大きさ(1から0への反転、または0から1への反転を含む)が探索範囲610内の他の読み込み基準電圧と比較して最小である読み込み基準電圧であり得る。最良読み込み基準電圧603が、探索処理の出力とでき、最適読み込み基準電圧602の近くである。最良読み込み基準電圧603と最適読み込み基準電圧602との間の不一致は、それぞれの探索処理において設定されるような精度内になるように制限され得る。
【0050】
図示されているように、探索範囲610は、デフォルト読み込み基準電圧601に対して定められている上限オフセット612および下限オフセット611を有し得る。したがって、探索範囲610の上限は、デフォルト読み込み基準電圧601に上限オフセット612を加算したものとできる。探索範囲610の下限は、デフォルト読み込み基準電圧601に下限オフセット611(負の値を有する)を加算したものとできる。
【0051】
図7は、本開示の実施形態による読み込み処理700を示している。処理700は、3D NANDメモリデバイス104からデータ(ページまたは上のページなど)を読み込むために、メモリ制御装置106によって実施され得る。処理700はS711から始まる。
【0052】
S711において、読み込み動作が、例えば、メモリデバイス104からページを読み出すために実施され得る。ページは、TLCのセットに保存されたより下のページ、真ん中のページ、またはより上のページのうちの1つであり得る。したがって、デフォルト読み込み基準電圧にそれぞれが基づく複数の単回読み込み動作が、ページを保存するメモリセルにおいて実施され得る。例えば、図5における3つのビットと8つの状態(S0~S7)との間のマッピングに対応して、デフォルト読み込み基準電圧V2、V4、およびV6における3つの単回読み込み動作が、真ん中のページを読み込むために実施され得る。各々の単回読み込み動作から生じるビットは、ページに属する符号語の未加工ビットを発生させるために処理され得る。
【0053】
S712において、ECC復号が符号語の未加工ビットに基づいて実施され得る。様々な種類のECC(低密度パリティ符号(LDPC))が、様々な実施形態で使用され得る。S713において、ECC復号が成功したかどうかが決定される。符号語のRBERがECC訂正能力を超えるとき、ページのECC復号は失敗することになる。ECC復号が失敗するとき、処理700はS714へと進む。そうでない場合、処理700はS716へと進み、S716において終了する。
【0054】
S714において、読み込み基準電圧の同調が新たな読み込み基準電圧を決定するために実施される。S715において、読み込み再試行が、新たな読み込み基準電圧に基づいて実施される。S715における動作は、S711における動作と同様であり得るが、更新された読み込み基準電圧を伴う。S715から発生させられた符号語未加工ビットに基づいて、ECC復号の第2の繰り返しがS712において実施され得る。読み込み再試行は、処理700がS716に達するまで、または、読み込み再試行のための利用可能な読み込み基準電圧が使い果たされるまで、繰り返され得る。
【0055】
読み込み誤りが起こるとき(S713において)、様々な実施形態において、読み込み誤り取り扱いについての様々な方法があり得る。いくつかの例において、読み込み-再試行テーブルが読み込み-再試行処理のために使用される。読み込み-再試行の読み込み基準電圧の1つまたは複数の一覧が、例えば、それぞれの3D NANDメモリデバイスまたはメモリシステム(SSDなど)の生産者によって、読み込み-再試行テーブルで提供され得る。典型的には、読み込み再試行テーブルは、保持期間、リードディスターブ、交差温度、最初の読み込みの問題など、限られた数の因子の検討に基づいて構築される。したがって、読み込み再試行テーブルは、すべての状況について包括的であるとは限らない可能性がある。
【0056】
いくつかの実施形態において、本明細書において開示されている最良読み込み基準電圧探索方法は、次の読み込み再試行基準電圧を決定するために、読み込み-再試行テーブルの使用の代替または追加で採用され得る。
【0057】
いくつかの実施形態において、ECC復号の失敗の後、最良読み込み基準電圧探索方法が最良読み込み基準電圧を見つけ出すために起動される。次に、最良読み込み基準電圧はソフトウェアLDPC復号処理のベース電圧として使用できる。ソフトウェアLDPC復号処理の例において、複数の読み込み-再試行の読み込み基準電圧が最良読み込み基準電圧の周りに設定できる。したがって、複数の読み込み再試行動作が、対数尤度比(LLR)を得るために、(段階的な)手法で実施され得る。LLRは、符号語をソフトウェア復号するために、ECCエンジン(メモリ制御装置106とは別であり得る、または、メモリ制御装置106の一部であり得る)へと送り込むことができる。
【0058】
図8は、本開示の実施形態による、失敗したビットカウント(FBC)に基づく最良読み込みレベルの探索処理800を示している。本明細書における最良読み込みレベルという用語は、最良読み込み基準電圧レベルに言及している。処理800は、既知のデータがメモリデバイスにおけるメモリセルのブロックなどへプログラムされる実験環境で実行され得る。
【0059】
処理800は、複数の粗いまたは細かい走査処理を含み得る。各々の走査処理は、ステップ電圧で読み込み基準電圧の探索範囲を網羅することができる。各々の走査点(特定の読み込み基準電圧レベル、または読み込みレベルに対応する)において、単回読み込み動作から生じる読み込みビットは、FBC(0から1への、または1から0への反転ビットの大きさ)を決定するために、元のビットと比較することができる。元のビットは、既知のデータに基づいて導き出すことができる。最小FBCを伴う読み込みレベルが、それぞれの走査処理の最良読み込みレベルとなるように決定され得る。探索範囲は、それぞれのデフォルト読み込み基準電圧(または、デフォルト電圧として参照される)に対して定めることができる。最良読み込みレベルは、デフォルト電圧に対する最良読み込みオフセットとして表すことができる。
【0060】
処理800は、粗い走査の1つのステップ(S810)と、細かい走査の2つのステップ(S820およびS830)とを含み得る。TLCは処理800の説明のための例として使用される。
【0061】
S810において、粗い走査が、ワード線セルストリングに対してデフォルト電圧で実施される。デフォルト電圧は、例えば、TLCについて構成されたすべてのデフォルト電圧であるV1~V7であり得る。ワード線セルストリングは、ワード線によって制御されるメモリセルを含み得る。ワード線セルストリングは、3ページの既知のデータを保存することができる。したがって、ワード線セルストリングの初期状態または元のビットは、既知のデータに基づいて計算することができる。試験下にあるブロックは、ワード線の複数の層を含み得る。
【0062】
走査範囲およびステップ電圧が各々の粗い走査のために提供され得る。例えば、-300mVの下限オフセットおよび300mVの上限オフセットがそれぞれのデフォルト電圧に対して設けられ得る。したがって、走査範囲は、中央点にそれぞれのデフォルト電圧を伴った{-300mV、+300mV}であり得る。例えば、100mVの粗いステップ電圧が提供され得る。したがって、7つの走査点、すなわち、-300mV、-200mV、-100mV、0、100mV、200mV、および300mVが設けられる。
【0063】
各々の粗い走査について、最小FBCを有する走査点における読み込みレベルが、最良読み込みレベルとなるように決定され得る。いくつかの例において、各々の走査点について、ワード線メモリセルストリングからの読み込みビットは、複数の符号語のビットを含み得る。符号語ごとのFBCが決定され得る。符号語ごとの最大FBCが、各々の走査点または読み込みレベルについて決定され得る。したがって、符号語ごとの最大FBCが最小である読み込みレベルが、それぞれの粗い走査の最良読み込みレベル(粗い最良読み込みレベルと称される)として決定される。したがって、最良読み込みオフセット(粗い最良読み込みオフセットと称される)がそれぞれの粗い走査について決定され得る。
【0064】
ある粗い走査の複数の読み込みレベルが同じ符号語ごとの最大FBCを有する場合、各々の読み込みレベルのすべての符号語の全FBCが考慮される。最小の全FBCを有する読み込みレベルが最良読み込みレベルとなるように決定される。ある粗い走査の複数の読み込みレベルが同じ最小全FBCを有する場合、より小さいオフセットを有する読み込みレベルが最良読み込みレベルとなるように決定される。
【0065】
S820において、第1の細かい走査が、ブロックにおけるワード線メモリセルストリングに対して粗い最良読み込みレベルで実施される。例えば、ワード線メモリセルストリングの各々について、7回の第1の細かい走査が7つの粗い最良読み込みレベルにおいて実施され得る。各々の第1の細かい走査には、中間においてそれぞれの粗い最良読み込みレベルを伴う走査範囲{-200ms、200ms}が設けられ得る。S810からの粗い最良読み込みレベルのオフセットが-100msであると仮定すると、それぞれのデフォルト電圧に対する下限オフセットおよび上限オフセットが走査範囲を定めるために使用されるとき、走査範囲は{-300ms、100ms}となる。各々の第1の細かい走査には、例えば、100mVの粗いステップ電圧より小さい20msの細かいステップ電圧が提供され得る。S810においてと同様の方法で、FBCに基づいて、細かい最良読み込みレベルと、対応する細かい最良読み込みオフセットとが、各々の第1の細かい走査について見つけ出すことができる。
【0066】
S830において、第2の細かい走査が、ブロックにおけるワード線メモリセルストリングに対して細かい最良読み込みレベルで実施される。例えば、ワード線メモリセルストリングの各々について、7回の第2の細かい走査が7つの細かい最良読み込みレベルにおいて実施され得る。各々の第2の細かい走査には、中間において細かい最良読み込みレベルを伴う走査範囲{-10ms、10ms}が設けられ得る。S820からの細かい最良読み込みレベルのオフセットが-120msであると仮定すると、それぞれのデフォルト電圧に対する下限オフセットおよび上限オフセットが走査範囲を定めるために使用されるとき、走査範囲は{-130ms、-110ms}となる。各々の第2の細かい走査には、例えば、20mVの細かいステップ電圧より小さい10ms(または10ms未満)の細かいステップ電圧が提供され得る。S810またはS820においてと同様の方法で、FBCに基づいて、最終の細かい最良読み込みレベルと、対応する最終の細かい最良読み込みオフセットとが、各々の第2の細かい走査について見つけ出すことができる。最後に、メモリセルのブロックについて、各々のワード線メモリセルストリングにおいて、最良読み込みレベルが7つのデフォルト電圧の各々に対応して得られる。様々な例において、結果は、様々な評価または実験のための基礎として使用できる。例えば、結果は、LDPCアルゴリズムの性能を評価するために使用できる。
【0067】
本明細書に記載されているFBCに基づく方法は、典型的には、試験または実験の環境について使用できる。FBCに基づく方法は、メモリセルにプログラムされる既知のデータに依存する。実メモリシステムについて、メモリデバイスに保存されているデータは既知でない可能性がある。FBCに基づく方法は、すべてのワード線メモリセルストリングを走査することができる。実メモリシステムについて、最良レベルの探索が、ワード線メモリセルストリングに対する失敗したページ読み込み動作に応答して、1つのワード線メモリセルストリングにおいて実施される。FBCに基づく方法において、ワード線メモリセルストリングに対する走査は、時間が掛かりすぎるため、実メモリシステムには適していない可能性がある。
【0068】
いくつかの実施形態において、ビットカウント差(BCD)に基づく最良読み込みレベル探索方法が使用される。BCDに基づく方法では、隣接する読み込みレベル(走査点)同士の間のビットカウント差が、最良読み込みレベルを決定するために計算および使用される。したがって、BCDに基づく方法は、実メモリシステムにおいて利用不可能であり得るメモリデバイスにプログラムされた既知のデータに依拠しない。
【0069】
また、BCDに基づく方法は、ページを読み込むための最良読み込みレベルを見つけ出すために使用される。したがって、走査動作が、ワード線メモリセルストリングのすべてのデフォルト電圧の代わりに、限られた数のデフォルト電圧で実施される。例えば、真ん中のページを読み込むために、走査動作が3つの最良読み込みレベルを見つけ出すために3つのデフォルト電圧(例えば、V2、V4、およびV6)の周りで実施され得る。また、走査動作は、ブロック全体におけるすべてのワード線メモリセルストリングにおいて実施されるわけではない。
【0070】
いくつかの例において、BCDに基づく方法において、各々の読み込みレベル(走査点)について、一部ページ読み込みが、単回読み込み動作の間に完全ページ読み込みの代わりに使用される。例えば、ワード線メモリセルストリングに保存されたページが16kバイトの長さであり得る。ページは、4kバイトの長さの各々で4つの符号語を含み得る。したがって、BCDに基づく方法は、ページの代わりに符号語に対応するメモリセルから読み込むことができる。単回読み込み動作から生じるビットは減らすことができる。したがって、メモリデバイスからメモリ制御装置へのデータ伝送の遅れを減らすことができる。
【0071】
いくつかの例において、BCDに基づく方法で使用される走査範囲は、いくつかの最も悪い場合に観察される読み込みレベルのずれに基づいて最適化される。したがって、走査時間が短縮され得る。いくつかの例において、BCDに基づく方法は、1つの粗い走査と1つの細かい走査とを使用することができる。走査処理は、探索処理800における1つの粗い走査および2つの細かい走査と比較して、簡素化される。いくつかの例において、ハードウェアサポートが、BCDについてのビットカウントを計算するために利用可能である。ソフトウェアを使用して実施されるFBC計算と比較して、ビットカウントを計算するための時間を短縮することができる。
【0072】
図9は、走査処理の間に一連の読み込みレベル(走査点)から最良読み込みレベルを決定するためのBCDテーブル900を示している。走査処理は、BCDに基づく最良読み込みレベル探索処理の一部であり得る。BCDテーブル900の第1の列は、走査処理で網羅される一連の走査点を含む。走査点は走査点オフセット(または読み込みレベルオフセット)によって表されている。10mVのステップ電圧が使用されている。各々の走査点において、単回読み込み動作が実施され得る。ビットは、ワード線メモリセルストリングに属するメモリセルのセットから読み込むことができる。例えば、走査点の読み込みレベルより低い閾値電圧を伴うメモリセルは1として読み込まれる。走査点の読み込みレベルより高い閾値電圧を伴うメモリセルは0として読み込まれる。
【0073】
現在の走査点を考慮すると、2つのBCDが計算できる。BCD-Lで示される第1のBCDは、現在の走査点と、現在の走査点に隣接する左の走査点との間のBCDであり得る。BCD-Rで示される第2のBCDは、現在の走査点と、現在の走査点に隣接する右の走査点との間のBCDであり得る。左または右の位置は、閾値電圧の軸に沿っての探索範囲に対してであり得る。典型的には、より大きい読み込みレベルがより小さい読み込みレベルの右側にある。探索範囲の左の境界または右の境界に近い読み込みレベルについて、左または右の走査点は利用不可能である。それぞれのBCD-LまたはBCD-Rは計算されず、利用不可能である。典型的には、探索範囲の境界に近い読み込みレベルは、最良読み込みレベルを選択するための候補の走査点から除外され得る。
【0074】
各々の走査点に対応する上記のBCD-LおよびBCD-Rであれば、最良読み込みレベルが一連の走査点から選択され得る。初めに、BCD-LとBCD-Rとの最も小さい合計を有する走査点における読み込みレベル(Sum(BCD-L,BCD-R)と示される)が、最良読み込みレベルになると決定され得る。複数の走査点がBCD-LとBCD-Rとの同じ合計を有する場合、BCD-LまたはBCD-Rの最も小さい最小値を有する走査点(Min(BCD-L,BCD-R)と示される)における読み込みレベルが、これらの複数の走査点のうちの最良読み込みレベルになると決定される。BCD-LまたはBCD-Rの同じ最小値を有する複数の走査点がなおもある場合、走査範囲の中間点に最も近い走査点が、最良読み込みレベルを伴う最良走査点として決定され得る。最良読み込みレベルに対応して、対応する走査点オフセットが、それぞれのデフォルト電圧に対する最良読み込みオフセットになると決定され得る。
【0075】
図10A図10Bは、本開示の実施形態による、BCDに基づく最良読み込みレベルの探索処理1000を示している。BCDに基づく探索処理1000は、ページ読み込み動作のための最良読み込み基準電圧を見つけ出すために実施され得る。処理1000は、2つの部分、つまり、S1002~S1016の粗い探索部分と、S1024~S1036の細かい探索部分とを含み得る。
【0076】
S1002において、ECC復号がページ読み込み動作に失敗する。例えば、標的ページの未加工の符号語ビットが、1つまたは複数の単回読み込み動作によってメモリデバイスから読み込まれたデータに基づいて得られる。未加工の符号語ビットに基づくLDPCハードウェア復号が、高いRBERのため失敗する可能性がある。BCDに基づく探索処理1000は、続いて、標的ページの読み込み再試行またはソフトウェアLDPC復号のために最良読み込みレベルを見つけ出すために起動され得る。
【0077】
S1004において、デフォルト電圧に対応する読み込みレベルが初期化され得る。標的ページがどのMLC技術を使用するか、標的ページがどの種類のものであるか(例えば、より下のページまたはより上のページ)、および、ビットがメモリセル状態によってどのように符号化されるかに依存して、網羅される読み込みレベルの数が決定され得る。例えば、SLCについて、ある読み込みレベルにおけるある単回読み込み動作が実施され得る。DLCについて、1つの読み込みレベルがより下のページを読み込むために網羅され、2つの読み込みレベルがより上のページを読み込むために網羅される。TLCについて、2つの読み込みレベル、3つの読み込みレベル、および2つの読み込みレベルが、より下のページ、真ん中のページ、およびより上のページを読み込むためにそれぞれ網羅され得る。粗い探索および細かい探索は、S1004において決定される読み込みレベルを網羅する。
【0078】
S1006において、次の読み込みレベルが利用可能であるかどうかが決定される。S1004において決定されたすべての読み込みレベルが完了され、次の読み込みレベルが利用可能ではない場合、処理1000はS1024へと進み、細かい探索部分に入る。そうでない場合、処理1000は、S1004において決定された読み込みレベルのうちの読み込みレベルの選択でS1008へと進む。読み込みレベルは任意の順番で選択できる。
【0079】
S1008において、走査点オフセットが、選択された読み込みレベルに対応して初期化され得る。例えば、それぞれの走査点の数および位置(電圧値)が、走査範囲(または走査電圧範囲)およびステップ電圧に基づいて決定され得る。走査点は、選択された読み込みレベルに対応するそれぞれのデフォルト電圧に対する走査点オフセットの形態で指示され得る。例えば、デフォルト電圧に対する上限オフセットおよび下限オフセットが、走査範囲を指示するために提供され得る。
【0080】
S1010において、次の走査点オフセットが利用可能であるかどうかが決定される。S1008において決定されたすべての走査点オフセットが完了し、次の走査点オフセットが利用可能でない場合、処理1000はS1016へと進む。そうでない場合、処理1000はS1012へと進む。S1012において、走査点オフセットが、S1008において決定された走査点オフセットから選択される。走査点オフセットは任意の順番で選択できる。
【0081】
S1014において、単回読み込み動作が、標的ページを保存するメモリセルに対して、選択された走査点オフセットの走査点において実施され得る。単回読み込み動作から生じるビットはメモリにおいて保存され得る。近隣の走査点の読み込みビットがメモリにおいて利用可能である場合、現在の走査点と近隣の走査点との間のBCD-LまたはBCD-Rが、計算され、図9に示されているテーブルなどのBCDテーブルに保存され得る。処理1000は、利用可能な場合、次の走査点オフセットを処理するためにS1010へと戻ることができる。
【0082】
S1016では、現在の段階において、それぞれの走査点オフセットについてのBCD-LおよびBCD-Rが、S1006において選択された現在の読み込みレベルに対応するBCDテーブルに入れられる。BCDテーブルに基づいて、粗い最良読み込みオフセットが現在の読み込みレベルについて決定され得る。粗い最良読み込みオフセットが、現在の読み込みレベルに対応する細かい探索のための中央走査点オフセットとして使用され得る。処理1000は、利用可能な場合、次の読み込みレベルを処理するためにS1006へと進むことができる。
【0083】
S1024において、処理1000の細かい探索部分が、各々の読み込みレベルの粗い最良読み込みオフセットに基づいて開始する。明確には、S1024において、デフォルト電圧に対応する読み込みレベルがS1004と同様の方法で初期化される。読み込みレベルの同じセットが決定され得る。S1026において、次の読み込みレベルが利用可能であるかどうかが決定され得る。すべての読み込みレベルが網羅されるとき、処理1000はS1038へと進むことができ、S1038において終了する。そうでない場合、処理1000は、選択された読み込みレベルでS1028へと進む。
【0084】
S1028において、選択された読み込みレベルに対応する細かい探索のための走査点オフセットが初期化され得る。例えば、細かい探索のための走査点オフセットの数および位置が、細かい走査範囲および細かいステップ電圧に基づいて決定され得る。例えば、細かい走査範囲は、それぞれの粗い最良読み込みレベルを中央点として使用することができる。上限および下限が中央の場所に対して設けられ得る。
【0085】
S1030において、次の走査点オフセットが利用可能であるかどうかが決定され得る。すべての走査点オフセットが網羅される場合、処理1000はS1036へと進む。そうでない場合、処理1000はS1032へと進む。S1032において、次の走査点オフセットが選択される。S1034において、単回読み込み動作が、標的ページを保存するメモリセルからビットを読み込むために、選択された走査点オフセットにおいて実施される。現在の走査点オフセットまたは近隣の走査点オフセットのBCD-LまたはBCD-Rが、BCDテーブルを埋めるために計算され得る。処理1000は、次の利用可能な走査点オフセットを処理するためにS1030へと戻ることができる。
【0086】
S1036において、現在の読み込みレベルに対応するBCDテーブルが埋められる。細かい最良読み込みオフセットが現在の読み込みレベルについて決定され得る。処理1000は、次の利用可能な読み込みレベルを処理するためにS1026へと進むことができる。処理1000がS1038において終了するとき、細かい最良読み込みオフセットに対応する最良読み込みレベルがそれぞれの読み込みレベルについて利用可能である。いくつかの例において、得られた最良読み込みレベルは、続いて、LDPCソフトウェア復号処理において使用され得る。
【0087】
図11Aは、本開示の実施形態による、BCDに基づく探索処理1000における粗い探索のために使用される走査範囲をどのように最適化するかを示すための2つのテーブル1110および1120を示している。図11Aの例において、それぞれのデフォルト電圧に対応する特定の読み込みレベルにおける粗い探索のための最適化された走査範囲(最適化された粗い走査範囲と称される)が、テーブル1110において提供されるデータのセットに基づいて決定され得る。テーブル1110は7つの列を含む。各々の列は、TLCについての7つの読み込みレベル(または7つのデフォルト電圧)のうちの1つに対応する。7つの読み込みレベルはRD1~RD7と示されている。テーブル1110は複数の行を含む。
【0088】
各々の行は、RD1~RD7の7つの読み込みレベルのうちの1つにそれぞれ対応する最良読み込みオフセットのセットを含む。各々の最良読み込みオフセットは、それぞれのデフォルト電圧(図5におけるV1~V7など)に関してオフセット値(mVの単位で)を有する。例えば、読み込みレベルRD1について、第1の最良読み込みオフセットは-130mVであり、最後の最良読み込みオフセットは、デフォルト電圧V1に対して-60mVである。
【0089】
最良読み込みオフセットの各々の行は、メモリセルのセットにそれぞれの最良読み込みオフセットを持たせるかまたは示させるメモリセル条件に対応することができる。例えば、条件は複数の因子の組み合わせであり得る。因子には、作業負荷の種類、環境の温度、保持期間、リードディスターブ、交差温度、最初の読み込みの問題、製作処理などがあり得る。異なる条件が異なる因子の値に対応することができる。例えば、セットのメモリセルを実験環境における条件へと置くことができる。最良読み込みオフセットがこれらのメモリセルから測定され得る。いくつかの実施形態において、考慮されている条件は、最悪の場合の状況と関連付けられる極端な条件のセットであり得る。したがって、最良読み込みオフセットのいくつかは、極端な条件の下での最良読み込みオフセットの最大変化をそれぞれ表すことができる。
【0090】
テーブル1120は、テーブル1110において収集された最良読み込みオフセットに基づいて導き出された最適化された粗い探索範囲を示している。図示されているように、各々の読み込みレベル(RD1、RD2、およびRD3)に対応して、最良読み込みオフセットのそれぞれの列のうちの最小値が下限オフセットとして使用される一方で、最良読み込みオフセットのそれぞれの列のうちの最大値が上限オフセットとして使用される。下限オフセットと上限オフセットとは、一緒になって、それぞれのデフォルト電圧に対するそれぞれの読み込みレベルについて、最適化された粗い探索範囲を定めることができる。例えば、最適化された粗い探索範囲の下境界電圧は、デフォルト電圧に下限オフセットを加算したものである。最適化された粗い探索範囲の上境界電圧は、デフォルト電圧に上限オフセットを加算したものである。
【0091】
テーブル1120において、第1、第2、および第3の列におけるオフセットは、それぞれの読み込みレベルRD1、RD2、およびRD3における粗い探索のためにそれぞれ使用され得る。必要に応じて、他の読み込みレベルのための他の上限オフセットおよび下限オフセットを同様に導き出すことができる。
【0092】
図11Bは、本開示の実施形態による、BCDに基づく探索処理1000における細かい探索のために使用される走査範囲をどのように最適化するかを示すための2つのテーブル1130および1140を示している。テーブル1130は、テーブル1110における最良読み込みオフセットの行と等しい数の値の行を含む。テーブル1130の第1の列は、列RD2とRD4との間の最良読み込みオフセット差のリストを含む。各々のこのような最良読み込みオフセット差が、テーブル1110における同じ行においてであるが、異なる列RD2およびRD4における2つの最良オフセット値の間の差であり得る。例えば、テーブル1110の最後の行を考えると、列RD2の値と列RD4の値との間の差は、-40mV-(-30)mV=-10mVである(より高い読み込みレベルの値からより低いレベルの値を減算する)。同様に、テーブル1130の第2の列は、列RD4とRD6との間の最良読み込みオフセット差のリストを含む。
【0093】
テーブル1140は、読み込みレベルRD4およびRD6についての最適化された細かい探索範囲を示している。最適化された探索範囲は、テーブル1130における最良読み込みオフセット差に基づいて導き出すことができる。明確には、テーブル1140におけるRD4の細かい探索範囲について、-80mVの下限オフセットが、テーブル1130の第1の列における列記された最良読み込みオフセット差の最小であり得、50mVの上限オフセットが、テーブル1130の第1の列における列記された最良読み込みオフセット差の最大であり得る。これらの下限オフセットおよび上限オフセットは、細かい探索処理で使用されるとき、アンカー電圧に対するオフセットであり得る。例えば、RD4についてのアンカー電圧は、RD4のデフォルト電圧に対してアンカーオフセットを有し得る。アンカーオフセットは、読み込みレベルRD2の細かい最良読み込みオフセットと等しくすることができる。RD2の細かい最良読み込みオフセットは、例えば、テーブル1120において指示されたRD2の最適化された粗い探索範囲{-190mV、70mV}において見つけ出すことができる。探索の2回の繰り返し(粗い探索および細かい探索)が、図10A図10Bの例においてなど、RD2のセットの細かい最良の読み込みを見つけ出すために実施されることが可能である。
【0094】
同様に、テーブル1140におけるRD6の細かい探索範囲について、-160mVの下限オフセットが、テーブル1130の第2の列における列記された最良読み込みオフセット差の最小であり得、60mVの上限オフセットが、テーブル1130の第2の列における列記された最良読み込みオフセット差の最大であり得る。これらの下限オフセットおよび上限オフセットは、RD6についてのアンカー電圧に対するオフセットであり得る。RD6についてのアンカー電圧は、RD6のそれぞれのデフォルト電圧に対してアンカーオフセットを有し得る。RD6のアンカーオフセットは、読み込みレベルRD4の細かい最良読み込みオフセットと等しくすることができる。RD4の細かい最良読み込みオフセットは、例えば、テーブル1140において指示されたRD2の最適化された細かい探索範囲{-80mV、50mV}において見つけ出すことができる。テーブル1140は、RD2についての細かい探索範囲{-100mV、100mV}も列記している。この細かい探索範囲は、任意の他の方法に基づいて設定され得る。
【0095】
先の記載において、粗い探索と細かい探索との組み合わせは、RD2の細かい最良読み込みオフセットを見つけ出すために、テーブル1120におけるRD2の粗い探索範囲において最初に実施される。RD2の細かい最良読み込みオフセットをアンカーオフセットとして使用する場合、細かい探索は、RD4の細かい最良読み込みオフセットを見つけ出すために、テーブル1140におけるRD4の細かい探索範囲において実施される。RD4の細かい最良読み込みオフセットはアンカーオフセットとして使用され、RD6の細かい探索範囲が、テーブル1140におけるRD6の細かい探索範囲で決定され得る。この方法では、3つの最良読み込みオフセットが、読み込みレベルRD2、RD4、およびRD6について決定でき、図5の例における真ん中のページを読み込むために使用できる。
【0096】
他の例では、上記の順番(RD2からRD6へ)が、任意の順番へと変更されてもよい。例えば、上記の探索は、RD6、RD2、およびRD4の順番など、任意の順番を取ることができる。粗い探索と細かい探索との組み合わせが、RD6から開始し、RD2およびRD4における2つの細かい探索によって続けられてもよい。この順番では、対応するレベルの粗い探索範囲および細かい探索範囲は、それに応じて調整され得る。例えば、RD6の細かい最良オフセットはRD2のアンカーオフセットとして使用できる。したがって、RD2の細かい探索範囲が、RD2の最良読み込みオフセットとRD6の最良読み込みオフセットとの間の最良読み込みオフセット差に基づいて決定され得る。また、RD6の細かい最良オフセットはRD4のアンカーオフセットとして使用できる。代替で、RD2の細かい最良オフセットがRD4のアンカーオフセットとして使用される。
【0097】
先の記載は、TLCの真ん中のページの読み込みレベルRD2、RD4、およびRD6を、粗い探索範囲または細かい探索範囲の最適化の方法を説明するための例として使用している。しかしながら、探索最適化方法は、保存されている1つ、2つ、3つ、4つ、またはより多くのページによって任意の種類のMLCについて使用できる。
【0098】
探索範囲を無分別に設定することと比較して、本明細書において開示されている探索範囲最適化方法を使用して得られた探索範囲(または走査範囲)は、より短くすることができ、したがって最良読み込みレベル探索処理を加速させる。また、本明細書において開示されている探索範囲最適化方法が用いられるとき、いくつかの粗い探索処理を飛ばすことができ、最良読み込みレベル探索処理をさらに加速させることができる。さらに、本明細書において開示されている探索範囲最適化方法は、特定の探索方法に依拠しない。探索範囲最適化方法は、最適化された対策範囲を任意の最良読み込み探索方法に提供するために用いることができる。
【0099】
図12A図12Cは、本開示の実施形態による最良読み込みレベルの探索処理を示している。TLCから真ん中のページを読み込むためのデフォルト電圧V2およびV4に対応する最良読み込みレベルが、処理の間に決定され得る。最適化された粗い探索範囲および細かい探索範囲が、処理の間に使用される。
【0100】
図12Aは粗い探索範囲1210を示している。粗い探索範囲1210は、V2のデフォルト電圧1213に対して、70mVの上限オフセット1212と、-190mVの下限オフセット1211とを有する。粗い探索範囲1210は、図11A図11Bの例に記載されている粗い探索範囲の最適化方法を使用して決定される最適化された粗い探索範囲であり得る。100mVのステップ電圧を伴う粗い探索が、V2のデフォルト電圧1213に対して、-30mVの粗い最良読み込みオフセット1215を有する粗い最良読み込みレベル1214を見つけ出すために、粗い探索範囲1210にわたって実施され得る。
【0101】
図12Bは、粗い最良読み込みレベル1214を中央走査点1214として伴って定められた細かい探索範囲1220を示している。細かい探索範囲1220は、中央走査点1214に対して、-100mVの下限オフセット1221と、100mVの上限オフセット1222とを有し得る。図12Aにおける粗い探索に続いて、10mVのステップ電圧による細かい探索が、細かい最良読み込みレベル1223を見つけ出すために、細かい探索範囲1220にわたって実施され得る。細かい最良読み込みレベルは、V2のデフォルト電圧1213に対して、-50mVの細かい最良読み込みオフセット1224を有し得る。
【0102】
図12Cは、V4のデフォルト電圧1235に対応する読み込みレベルについての他の細かい探索範囲1230を示している。細かい探索範囲1230は、他の走査点(アンカー電圧)1233に基づいて定められ得る。アンカー走査点1233は、V4のデフォルト電圧1235に対してであるが、-50mVの細かい最良読み込みオフセット1224と同じオフセット値を有し得る。細かい探索範囲1230は、アンカー走査点1233に対して、-80mVの下限オフセット1231と、50mVの上限オフセット1232とを有し得る。図12Bにおける細かい探索に続いて、他の細かい探索が、最良読み込みレベル1236を見つけ出すために、10mVの電圧ステップで細かい探索範囲1230に対して実施され得る。最良読み込みレベル1236は、デフォルト電圧V4に対する最良読み込みオフセット1237を有し得る。
【0103】
図13は、本開示の実施形態による最良読み込みレベルの探索処理1300を示している。処理1300はS1310から始まることができる。
【0104】
S1310において、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットが決定できる。例えば、第1の最良読み込みオフセットを決定するために、第2の走査範囲が決定できる。第2の走査範囲は、第1のデフォルト読み込み基準電圧に上限オフセットを加算したものである上限と、第1のデフォルト読み込み基準電圧に下限オフセットを加算したものである下限とを有し得る。第2の走査範囲は、一連の第1の単回読み込み動作を第2の走査範囲内で実施することで、粗いステップ電圧に基づいて走査され得る。各々の第1の単回読み込み動作は、1または0のいずれかのビットカウントを発生させる。各々の第1の単回読み込み動作は第1の読み込み基準電圧に対応する。
【0105】
例えば、各々の第1の単回読み込み動作について、利用可能な場合、それぞれの第1の単回読み込み動作のビットカウントと、前回の第1の単回読み込み動作のビットカウントとの間の第1のビットカウント差が決定され得る。利用可能な場合、それぞれの第1の単回読み込み動作のビットカウントと、後続の第1の単回読み込み動作のビットカウントとの間の第2のビットカウント差が決定され得る。それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第1の単回読み込み動作のうちで最小値を有する第1の単回読み込み動作の第1の読み込み基準電圧が、粗い最良読み込み基準電圧となるように決定され得る。
【0106】
例において、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が同じ値を有する2つ以上の第1の単回読み込み動作があるとき、それぞれの第1のビットカウント差およびそれぞれの第2のビットカウント差の最小値が、2つ以上の第1の単回読み込み動作のうちの最小値を有する第1の単回読み込み動作の第1の読み込み基準電圧が、粗い最良読み込み基準電圧となるように決定され得る。
【0107】
いくつかの例において、第3の走査範囲が続いて決定され得る。第3の走査範囲は、粗い最良読み込み基準電圧に粗いステップ電圧を加算したものである上限と、粗い最良読み込み基準電圧から粗いステップ電圧を減算したものである下限とを有し得る。第3の走査範囲は、一連の第2の単回読み込み動作を第3の走査範囲内で実施することで、細かいステップ電圧に基づいて走査され得る。各々の第2の単回読み込み動作は第2の読み込み基準電圧に対応する。各々の第2の単回読み込み動作は、1または0のいずれかのビットカウントを発生させる。
【0108】
各々の第2の単回読み込み動作について、利用可能な場合、それぞれの第2の単回読み込み動作のビットカウントと、前回の第2の単回読み込み動作のビットカウントとの間の第1のビットカウント差が決定され得る。また、利用可能な場合、それぞれの第2の単回読み込み動作のビットカウントと、後続の第2の単回読み込み動作のビットカウントとの間の第2のビットカウント差が決定され得る。したがって、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第2の単回読み込み動作のうちで最小値を有する第2の単回読み込み動作の第2の読み込み基準電圧が、第1の最良読み込み基準電圧となるように決定され得る。第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧のオフセットが第1の最良読み込みオフセットである。
【0109】
S1320において、第2のデフォルト読み込み基準電圧に対してであるが、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧が決定され得る。第1のデフォルト読み込み基準電圧および第2のデフォルト読み込み基準電圧は、半導体メモリデバイスにおけるMLCのセットからページを読み込むために設定される。
【0110】
S1330において、第1の走査範囲がアンカー読み込み基準電圧に基づいて決定され得る。例えば、第1の走査範囲の上限は、アンカー読み込み基準電圧に上限オフセットを加えたものである。第1の走査範囲の下限は、アンカー読み込み基準電圧に下限オフセットを加えたものである。上限オフセットおよび下限オフセットは正の電圧値または負の電圧値であり得る。
【0111】
S1340において、第2のデフォルト読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットが、第1の走査範囲における探索によって決定され得る。例えば、第1の走査範囲は、第1の走査範囲内で一連の第3の単回読み込み動作を実施することで走査できる。各々の第3の単回読み込み動作は第3の読み込み基準電圧に対応する。各々の第3の単回読み込み動作は、1または0のいずれかのビットカウントを発生させる。
【0112】
各々の第3の単回読み込み動作について、利用可能な場合、それぞれの第3の単回読み込み動作のビットカウントと、前回の第3の単回読み込み動作のビットカウントとの間の第1のビットカウント差が決定され得る。利用可能な場合、それぞれの第3の単回読み込み動作のビットカウントと、後続の第3の単回読み込み動作のビットカウントとの間の第2のビットカウント差が決定され得る。したがって、それぞれの第1のビットカウント差とそれぞれの第2のビットカウント差との合計が一連の第3の単回読み込み動作のうちで最小値を有する第3の単回読み込み動作の第3の読み込み基準電圧が、第2の最良読み込み基準電圧となるように決定され得る。第2のデフォルト読み込み基準電圧に対する第2の最良読み込み基準電圧のオフセットが第2の最良読み込みオフセットである。いくつかの例において、第1の単回読み込み動作、第2の単回読み込み動作、および第3の単回読み込み動作は、一部ページ読み込み動作である。
【0113】
S1350において、読み込み処理が、第1の最良読み込み基準電圧および第2の最良読み込み基準電圧に基づいてMLCのセットからページを読み込むために実施され得る。処理1300は終了することができる。
【0114】
図14A図14Bは、本開示の実施形態による、第1の最良読み込み探索処理と第2の最良読み込み探索処理との間の性能の比較を示している。第1の最良読み込み探索処理は、図8の例におけるなど、FBCに基づく最良読み込みレベルの探索処理であり得る。第2の最良読み込み探索処理は、図9図13の例における処理など、BCDに基づく最良読み込みレベルの探索処理であり得る。
【0115】
図14Aは、ワード線メモリセルストリングに対する第1の最良読み込みレベル探索処理を完了するための全体時間を示している。ワード線メモリセルストリングは、(n+1)の状態を有するMLCを含み得る。したがって、処理されるn個の読み込みレベルがある。Tで示される全体時間は、
T=SUM(K, M, N)*(tR+tDMA+tOH)*nレベル (1)
であり得る。式(1)において、nレベルは、処理される読み込みレベル数を表している。K、M、およびNは、各々の読み込みレベルを処理するとき、粗い走査、第1の細かい走査、および第2の細かい走査の間にそれぞれ実施される走査ステップの数をそれぞれ示している。各々の走査ステップについての時間は、ページ読み込み時間tR、データ伝送時間(例えば、メモリデバイスとメモリ制御装置との間)、tDMA、およびファームウェア(FW)処理オーバーヘッド時間tOHを含む。
【0116】
図14Bは、ワード線メモリセルストリングに対する第2の最良読み込みレベル探索処理を完了するための全体時間を示している。ワード線メモリセルストリングは、(n+1)の状態を有するMLCを同じく含み得る。しかしながら、処理される読み込みレベルの数はnより小さい。例えば、TLCの真ん中のページを読み込むために、探索処理は3つの読み込みレベル(例えば、RD2、RD4、およびRD4)において実施され得る。したがって、T’で示される全体時間は、
T’=K’*(tR’+tDMA’+tOH’)+ΣM[i]*(tR’+tDMA’+tOH’) (2)
であり得る。式(2)において、K’は、処理される読み込みレベルのうちの第1の読み込みレベルにおける粗い走査の間に実施される走査ステップの数を表している。M’[i]は、iによってインデックスの付けられた各々の読み込みレベルの細かい走査の間に実施される走査ステップの数を表している。各々の走査ステップについての時間は、単回読み込み動作時間tR’、データ伝送時間(例えば、メモリデバイスとメモリ制御装置との間)、tDMA’、およびファームウェア(FW)処理オーバーヘッド時間tOH’を含む。
【0117】
図14Bの例を図14Aの例と比較すると、単回読み込み動作が通常のページ読み込み動作の代わりに使用できるため、読み込み時間tR’はtRより小さくできる。データ伝送時間tDMA’は、一部ページ読み込みが完全ページ読み込みの代わりに使用でき、伝送されるデータの量が低減されるため、tDMAより小さくなることができる。FW処理オーバーヘッドtOH’は、第2の探索方法における(各々の走査ステップにおいての)ビットカウントがハードウェア加速支援を有し得る一方で、FBC(読み込みビットと元のビットとの間の比較)がFWを使用して実施され得るため、tOHより小さくなることができる。走査ステップの数K’およびM’[i]は、探索範囲最適化技術の採用のため、KおよびMから低減させることもできる。第2の細かい探索が第2の探索方法から除外され、したがって、Nが式(2)では現れない。また、図14Bに示されているように、粗い走査(K’走査ステップを含む)は第1の読み込みレベルのみにおいて行われる。他の読み込みレベルは細かい走査のみをそれぞれ含む。粗い走査を1回にすることも時間を節約することができる。
【0118】
様々な実施形態において、本明細書で開示されている最良読み込みレベル探索方法は、メモリ制御装置(メモリ制御装置106など)において、または、メモリデバイス(メモリデバイス104など)において、実施され得る。これらの方法は、ECC復号失敗に応答して起動させられ得る、または、バックグラウンドで実行され得る。いくつかの実施形態において、本明細書で開示されている方法は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施され得る。例では、本明細書で開示されている最良読み込みレベル探索方法は、非一時的コンピュータ読取可能媒体に保存されている命令で実施され得る。プロセッサまたは処理回路は、それぞれの方法を実施するために命令を実行することができる。
【0119】
本開示の態様は、本明細書で開示されている技術を実施するメモリ制御装置を提供する。例えば、メモリ制御装置は、方法を実施するように構成された回路を含み得る。方法は、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップと、第2のデフォルト読み込み基準電圧に対する、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するステップであって、第1のデフォルト読み込み基準電圧および第2のデフォルト読み込み基準電圧は、メモリシステムにおける半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される、ステップと、アンカー読み込み基準電圧に基づいて第1の走査範囲を決定するステップであって、第1の走査範囲の上限がアンカー読み込み基準電圧に上限オフセットを加算したものであり、第1の走査範囲の下限がアンカー読み込み基準電圧に下限オフセットを加算したものであり、上限オフセットおよび下限オフセットは正の電圧値または負の電圧値である、ステップと、第1の走査範囲における探索によって、第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定するステップと、第1の最良読み込み基準電圧および第2の最良読み込み基準電圧に基づいてMLCのセットからページを読み込むために読み込み処理を実施するステップとを含み得る。
【0120】
本開示の態様は、本明細書で開示されている技術を実施する命令を保存する非一時的コンピュータ読取可能媒体を提供する。例えば、命令は、プロセッサ(または処理回路)によって実行されるとき、プロセッサ(または処理回路)に方法を実施させることができる。方法は、第1のデフォルト読み込み基準電圧に対する第1の最良読み込み基準電圧の第1の最良読み込みオフセットを決定するステップと、第2のデフォルト読み込み基準電圧に対する、第1の最良読み込みオフセットと同じオフセットを有するアンカー読み込み基準電圧を決定するステップであって、第1のデフォルト読み込み基準電圧および第2のデフォルト読み込み基準電圧は、メモリシステムにおける半導体メモリデバイスにおけるマルチレベルセル(MLC)のセットからページを読み込むために設定される、ステップと、アンカー読み込み基準電圧に基づいて第1の走査範囲を決定するステップであって、第1の走査範囲の上限がアンカー読み込み基準電圧に上限オフセットを加算したものであり、第1の走査範囲の下限がアンカー読み込み基準電圧に下限オフセットを加算したものであり、上限オフセットおよび下限オフセットは正の電圧値または負の電圧値である、ステップと、第1の走査範囲における探索によって、第2の読み込み基準電圧に対する第2の最良読み込み基準電圧の第2の最良読み込みオフセットを決定するステップと、第1の最良読み込み基準電圧および第2の最良読み込み基準電圧に基づいてMLCのセットからページを読み込むために読み込み処理を実施するステップとを含み得る。
【0121】
上記は、当業者が本開示の態様をより良く理解することができるように、いくつかの実施形態の特徴を概説している。当業者は、同じ目的を実行するために、および/または、本明細書において紹介されている実施形態の同じ利点を達成するために、他の処理および構造を設計または変更するための基礎として、本開示を容易に使用することができることを理解すべきである。当業者は、このような等価の構造が本開示の精神および範囲から逸脱しないことと、本開示の精神および範囲から逸脱することなく本明細書において様々な変更、代用、および代替を行うことができることとを理解すべきでもある。
【符号の説明】
【0122】
100 システム
102 メモリシステム
104 メモリデバイス
106 メモリ制御装置
108 ホスト
202 メモリカード
204 メモリカードコネクタ
206 SSD
208 SSDコネクタ
300 メモリデバイス
301 メモリセルアレイ
302 周辺回路
304 ブロック
306 メモリセル
308 NANDメモリストリング
310 ソース選択ゲート、SSG
312 ドレイン選択ゲート、DSG
314 ソース線
316 ビット線
318 ワード線
320 ページ
404 ページバッファ/センス増幅器
406 列デコーダ/ビット線ドライバ
408 行デコーダ/ワード線ドライバ
410 電圧発生装置
412 制御論理
414 レジスタ
416 インターフェース
418 データバス
601 デフォルト読み込み基準電圧
602 最適読み込み基準電圧
603 最良読み込み基準電圧
610 探索範囲
611 下限オフセット
612 上限オフセット
700 読み込み処理
800 最良読み込みレベルの探索処理
900 BCDテーブル
1000 BCDに基づく最良読み込みレベルの探索処理
1110、1120 粗い探索のためのテーブル
1130、1140 細かい探索のためのテーブル
1210 粗い探索範囲
1211 下限オフセット
1212 上限オフセット
1213 デフォルト電圧
1214 粗い最良読み込みレベル、中央走査点
1215 粗い最良読み込みオフセット
1220 細かい探索範囲
1221 下限オフセット
1222 上限オフセット
1223 細かい最良読み込みレベル
1224 細かい最良読み込みオフセット
1230 細かい探索範囲
1231 下限オフセット
1232 上限オフセット
1233 走査点、アンカー電圧
1235 デフォルト電圧
1236 最良読み込みレベル
1237 最良読み込みオフセット
D1、D2、D1’、D2’ 分布
S0、S1、S2、S3、S4、S5、S6、S7 状態
V1、V2、V3、V4、V5、V6、V7 デフォルト読み込み基準電圧
Vth 閾値電圧
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図11A
図11B
図12A
図12B
図12C
図13
図14A
図14B
【国際調査報告】