特許拒絶査定不服審判
2023-006335
フラッシュメモリのマルチパスプログラミングのための先読み技法
- 審判番号
- 2023-006335
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2021-532904
- 請求日
- 2023年04月18日
- 審決日
- 2024年02月27日
- 公報発行日
- 2024年08月30日
- 結論
- 請求不成立
- 当事者
- 【請求人】長江存儲科技有限責任公司
- 【請求人代理人】新居 広守
- 審判長/審判官
- 審判長 林 毅
- 審判官 須田 勝巳
- 審判官 山崎 慎一
- 分類
- P18 .575-Z (G11C) / P18 .121-Z (G11C)
- 根拠条文(結論部分から自動抽出・参考)
- 特許法29条2項
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項、特許法第17条の2第3項、特許法第37条、特許法第17条の2第4項、特許法第17条の2第5項第2号、特許法第17条の2第6項
- データ出所
- 審決公報(XML)
事件の表示
特願2021-532904「フラッシュメモリのマルチパスプログラミングのための先読み技法」拒絶査定不服審判事件〔令和 2年 6月18日国際公開、WO2020/118481、令和 4年 1月27日国内公表、特表2022-510720〕について、次のとおり審決する。
結論
結 論
本件審判の請求は、成り立たない。
理由
理 由
第1 手続の経緯
本願は、2018年(平成30年)12月10日を国際出願日とする出願であって、その手続の経緯は以下のとおりである。
令和 4年 6月16日付け:拒絶理由通知書
令和 4年 9月21日 :意見書、手続補正書の提出
令和 4年12月15日付け:拒絶査定
令和 5年 4月18日 :審判請求書、手続補正書の提出
第2 令和5年4月18日にされた手続補正についての補正の却下の決定
[補正の却下の決定の結論]
令和5年4月18日にされた手続補正(以下「本件補正」という。)を却下する。
[理由]
1 本件補正について(補正の内容)
(1)本件補正後の特許請求の範囲の記載
本件補正により、特許請求の範囲の請求項1の記載は、次のとおり補正された。(下線部は、補正箇所である。)
「 【請求項1】
フラッシュ・メモリ・アレイと、
前記フラッシュ・メモリ・アレイに結合され、第1のプログラミングパスで、少なくとも1つの第1のページデータに従って前記フラッシュ・メモリ・アレイの複数のメモリセルをプログラムし、
ホストコントローラからの読み出しコマンドなしで、前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存し、かつ、
前記段階的ランピング検知手法では、前記第1のプログラミングパスでプログラムされた前記メモリセルの状態を検知するために、電圧レベルを徐々に増加させるようにして、互いに異なる複数の前記電圧レベルを前記第1のプログラミングパスでプログラムされた前記メモリセルに連続的に印加し、
前記第2のプログラミングパスで、前記少なくとも1つの第1のページデータ及び第2のページデータに従って、前記メモリセルをプログラムするように構成された制御ロジック部と、
を備える、フラッシュ・メモリ・デバイス。」
(2)本件補正前の特許請求の範囲の記載
本件補正前の、令和4年9月21日にされた手続補正により補正された特許請求の範囲の請求項1の記載は次のとおりである。
「 【請求項1】
フラッシュ・メモリ・アレイと、
前記フラッシュ・メモリ・アレイに結合され、第1のプログラミングパスで、少なくとも1つの第1のページデータに従って前記フラッシュ・メモリ・アレイの複数のメモリセルをプログラムし、
前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存し、かつ、
前記段階的ランピング検知手法では、前記第1のプログラミングパスでプログラムされた前記メモリセルの状態を検知するために、電圧レベルを徐々に増加させるようにして、互いに異なる複数の前記電圧レベルを前記第1のプログラミングパスでプログラムされた前記メモリセルに連続的に印加し、
前記第2のプログラミングパスで、前記少なくとも1つの第1のページデータ及び第2のページデータに従って、前記メモリセルをプログラムするように構成された制御ロジック部と、
を備える、フラッシュ・メモリ・デバイス。」
2 補正の適否
本件補正における「ホストコントローラからの読み出しコマンドなしで」との事項は、当初明細書の段落0021に記載されたものであるから、本件補正は、特許法第17条の2第3項の規定に適合するものであり、また、補正前に受けた拒絶理由通知において特許することができないものか否かについて判断が示された発明と、補正後の特許請求の範囲に記載された事項により特定される発明とが、特許法第37条の発明の単一性の要件を満たす一群の発明に該当するものであるから、本件補正は、特許法第17条の2第4項の規定に適合するものである。
そして、本件補正は、本件補正前の請求項1に記載された発明を特定するために必要な事項である「前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存」する動作について、当該動作が、「ホストコントローラからの読み出しコマンドなしで」実行されることを限定するものであって、補正前の請求項1に記載された発明と補正後の請求項1に記載される発明の産業上の利用分野及び解決しようとする課題が同一であるから、特許法第17条の2第5項第2号の特許請求の範囲の減縮を目的とするものに該当する。
そこで、本件補正後の請求項1に記載される発明(以下「本件補正発明」という。)が同条第6項において準用する同法第126条第7項の規定に適合するか(特許出願の際独立して特許を受けることができるものであるか)について、以下、検討する。
(1)本件補正発明
本件補正発明は、上記1(1)に記載したとおりのものであるところ、以下に再掲する。なお、A~Cの符号は、説明のために当審で付したものであり、以下、各符号が付された構成を「構成要件A」~「構成要件C」という。
「 【請求項1】
A:フラッシュ・メモリ・アレイと、
B1:前記フラッシュ・メモリ・アレイに結合され、
B2:第1のプログラミングパスで、少なくとも1つの第1のページデータに従って前記フラッシュ・メモリ・アレイの複数のメモリセルをプログラムし、
B3:ホストコントローラからの読み出しコマンドなしで、前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存し、かつ、
B4:前記段階的ランピング検知手法では、前記第1のプログラミングパスでプログラムされた前記メモリセルの状態を検知するために、電圧レベルを徐々に増加させるようにして、互いに異なる複数の前記電圧レベルを前記第1のプログラミングパスでプログラムされた前記メモリセルに連続的に印加し、
B5:前記第2のプログラミングパスで、前記少なくとも1つの第1のページデータ及び第2のページデータに従って、前記メモリセルをプログラムするように構成された
B6:制御ロジック部と、
C:を備える、フラッシュ・メモリ・デバイス。」
なお、構成要件B3の「前記フラッシュ・メモリ・デバイス」との記載は、それ以前に「フラッシュ・メモリ・デバイス」が前記されていないこと及び本願明細書の段落0008、0009の「フラッシュ・メモリ・デバイス内の第1のレジスタ回路」との記載からみて、「フラッシュ・メモリ・デバイス」の明らかな誤記と認められる。
(2)引用文献
ア 引用文献1の記載事項
原査定の拒絶の理由で引用された本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、国際公開第2018/063901号(2018年(平成30年)4月5日公開。以下「引用文献1」という。)には、図面とともに、次の記載がある。(下線は当審で付したものである。以下、同様。)
(ア)「[0013] FIG. 1 illustrates a block diagram of components of a computer system 100 in accordance with certain embodiments. System 100 includes a central processing unit (CPU) 102 coupled to an external input/output (I/O) controller 104, a plurality of storage devices 106A, 106B, and 106C (storage devices 106B and 106C may perform in similar manners to storage device 106A and/or may have any suitable characteristics of storage device 106A), and system memory device 107.・・・(以下省略)」
(当審訳:[0013] 図1は、特定の実施形態によるコンピュータシステム100の構成要素のブロック図を示す。システム100は、外部入出力(I/O)コントローラ104に結合された中央処理装置(CPU)102と、複数のストレージデバイス106A、106B、および106C(記憶装置106Bおよび106Cは、ストレージデバイス106Aと同様の態様で実行してもよく、および/またはストレージデバイス106Aの任意の適切な特性を有してもよい)と、システムメモリデバイス107とを含む。・・・(以下省略))
(イ)「[0030] In the embodiment depicted, storage device 106 A includes a storage device controller 118 and one memory 116 comprising four memory modules 122A-D operable to store data, however, a storage device may include any suitable number of memory modules. ・・・(中略)・・・In various embodiments, a memory module 122 A comprises one or more NAND flash memory arrays. NAND flash memory arrays are described in more detail in connection with FIG. 2.」
(当審訳:[0030] 描かれている実施形態では、ストレージデバイス106Aは、ストレージデバイスコントローラ118と、データを記憶するように動作可能な4つのメモリモジュール122A~Dからなる1つのメモリ116とを含むが、ストレージデバイスは、任意の適切な数のメモリモジュールを含んでもよい。・・・(中略)・・・様々な実施形態において、メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイから構成される。NANDフラッシュメモリアレイは、図2に関連してより詳細に説明される。)
(ウ)「[0045] FIG. 2 illustrates an example diagram of a portion of a NAND flash memory array 200 in accordance with certain embodiments. In various embodiments, a memory module 122A may comprise one or more NAND flash memory arrays. NAND flash memory array 200 may comprise a plurality of non-volatile memory cells 202 arranged in columns such as series strings 204.・・・(以下省略)」
(当審訳:[0045] 図2は、特定の実施形態によるNANDフラッシュメモリアレイ200の一部の例示的な図を示す。様々な実施形態において、メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイから構成され得る。NANDフラッシュメモリアレイ200は、直列ストリング204などの列に配列された複数の不揮発性メモリセル202から構成され得る。・・・(以下省略))
(エ)「[0048] In various embodiments, each memory cell 202 can be programmed according to an SLC, MLC, TLC, a QLC, or other encoding scheme. Each cell's threshold voltage (Vt) is indicative of the data that is stored in the cell.・・・(以下省略)」
(当審訳:[0048] 様々な実施形態において、各メモリセル202は、SLC、MLC、TLC、QLC、または他の符号化方式に従ってプログラムすることができる。各セルのしきい値電圧(Vt)は、セルに格納されるデータを示す。図3は、特定の実施形態に従って、NANDフラッシュメモリセル202内のビットの例示的な符号化を示す。・・・(以下省略))
(オ)「[0053] In various embodiments, a cell that is encoded to store multiple bits may form a part of multiple different pages, with each bit of the cell corresponding to a distinct page. For example, for a cell that is encoded with two bits (i.e., using an MLC encoding scheme), one bit may correspond to an Upper Page (UP) and the other bit may correspond to a Lower Page (LP). As another example, for a cell that is encoded with three bits (i.e., using a TLC encoding scheme), one bit may correspond to an LP, one bit may correspond to a UP, and the other bit may correspond to an Extra Page (XP). As yet another example, for a cell that is encoded with four bits (i.e., using a QLC encoding scheme), one bit may correspond to an LP, another bit may correspond to a UP, another bit may correspond to an XP, and the final bit may correspond to a Top Page (TP). Each page (e.g., LP, UP, XP, or TP) may comprise an aggregation of corresponding bits stored by a plurality of different cells of a wordline. For example, referring to the encoding shown in FIG. 3, all of the rightmost bits of a plurality of cells encoded using a TLC scheme may form an LP, all of the middle bits of the plurality of cells may form a UP, and all of the leftmost bits of the plurality of cells may form an XP.」
(当審訳:[0053] 様々な実施形態において、複数のビットを記憶するように符号化されたセルは、複数の異なるページの一部を形成することができ、セルの各ビットは異なるページに対応する。例えば、2ビットで符号化される(すなわち、MLC符号化方式を使用する)セルの場合、1ビットが上位ページ(UP)に対応し、他のビットが下位ページ(LP)に対応することがある。別の例として、3ビットで符号化される(すなわち、TLC符号化方式を使用する)セルの場合、1ビットがLPに対応し、1ビットがUPに対応し、他のビットがエクストラページ(XP)に対応してもよい。さらに別の例として、4ビットで符号化される(すなわち、QLC符号化方式を使用する)セルの場合、1ビットがLPに対応し、別のビットがUPに対応し、別のビットがXPに対応し、最後のビットがトップページ(TP)に対応してもよい。各ページ(例えば、LP、UP、XP、またはTP)は、ワードラインの複数の異なるセルによって記憶された対応するビットの集合体から構成されてもよい。例えば、図3に示す符号化を参照すると、TLC方式を用いて符号化された複数のセルの右端のビットの全てがLPを形成し、複数のセルの中央のビットの全てがUPを形成し、複数のセルの左端のビットの全てがXPを形成する場合がある。)
(カ)「[0056] ・・・(中略)・・・As other examples, when the cells of a wordline are encoded using a TLC scheme or a QLC scheme, all pages may be programmed during a single programming pass by setting the voltage levels of the cells to the desired program level, or one or more of the pages may be programmed during a first programming pass and the remaining pages programmed during a second pass (or the remaining pages may be programmed using multiple additional passes). For example, in a TLC scheme, a first pass may encode an LP and a second pass may encode the UP and the XP or a first pass may encode an LP and UP and a second pass may encode the XP. As another example, in a QLC scheme, a first pass may encode the LP and a second pass may encode the UP, XP, and TP; a first pass may encode an LP and a UP and a second pass may encode the XP and the TP; or a first pass may encode the LP, UP, and XP and a second pass may encode the TP.
[0057] As used herein, "lower page(s)" may refer to one or more pages that are programmed in a first programming pass and "upper page(s)" may refer to one or more pages that are programmed in one or more subsequent programming passes. These designations may be distinguished from the Lower Page (LP) and Upper Page (UP) previously described (in general a Lower Page will be a lower page as used herein when multiple programming passes are used while an Upper Page may be a lower page or an upper page depending on whether it is programmed in the first programming pass or in a subsequent programming pass). Thus, in an MLC scheme, a lower page (e.g., the LP) may be programmed in a first programming pass and an upper page (e.g., the UP) may be programmed in a second programming pass. As another example, in a TLC scheme, a lower page (e.g., the LP) may be programmed in a first programming pass and upper pages (e.g., the UP and the XP) may be programmed in a second programming pass or lower pages (e.g., the LP and the UP) may be programmed in a first programming pass and an upper page (e.g., the XP) may be programmed in a second programming pass. As another example, in a QLC scheme, a lower page (e.g., the LP) may be programmed in a first programming pass and upper pages (e.g., the UP, XP, and TP) may be programmed in a second programming pass. As another example, in a different QLC scheme, lower pages (e.g., the LP and the UP) may be programmed in a first programming pass and upper pages (e.g., the XP and the TP) may be programmed in a second programming pass. In yet another example, in a different QLC scheme, lower pages (e.g., the LP, UP, and XP) may be programmed in a first programming pass and an upper page (e.g., the TP) may be programmed in a second programming pass. Any other suitable permutations of pages programmed in programming passes is contemplated in this disclosure including multiple passes being used to program the upper pages.」
(当審訳:[0056]・・・(中略)・・・他の例として、ワードラインのセルがTLC方式またはQLC方式を用いて符号化される場合、セルの電圧レベルを所望のプログラムレベルに設定することにより、1回のプログラミングパスの間にすべてのページがプログラムされてもよいし、第1のプログラミングパスの間に1つまたは複数のページがプログラムされ、第2のパスの間に残りのページがプログラムされてもよい(または、複数の追加パスを用いて残りのページがプログラムされてもよい)。例えば、TLC方式では、第1のパスでLPを符号化し、第2のパスでUPとXPを符号化してもよいし、第1のパスでLPとUPを符号化し、第2のパスでXPを符号化してもよい。別の例として、QLC方式では、第1のパスがLPを符号化し、第2のパスがUP、XP、およびTPを符号化してもよいし、第1のパスがLPおよびUPを符号化し、第2のパスがXPおよびTPを符号化してもよいし、第1のパスがLP、UP、およびXPを符号化し、第2のパスがTPを符号化してもよい。)
[0057] 本明細書で使用する場合、「下位ページ(複数可)」は、第1のプログラミングパスでプログラムされる1つ以上のページを指すことがあり、「上位ページ(複数可)」は、1つ以上の後続のプログラミングパスでプログラムされる1つ以上のページを指すことがある。これらの呼称は、先に説明した下位ページ(LP)および上位ページ(UP)と区別することができる(一般に、複数のプログラミングパスが使用される場合、下位ページ(LP)は、本明細書で使用されるように下位ページとなり、上位ページ(UP)は、それが最初のプログラミングパスでプログラムされるか、後続のプログラミングパスでプログラムされるかに応じて、下位ページまたは上位ページとなる)。したがって、MLC方式では、下位ページ(例えば、LP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、UP)が第2のプログラミングパスでプログラムされることがある。別の例として、TLC方式では、下位ページ(例えば、LP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、UPおよびXP)が第2のプログラミングパスでプログラムされてもよく、または下位ページ(例えば、LPおよびUP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、XP)が第2のプログラミングパスでプログラムされてもよい。別の例として、QLC方式では、下位ページ(例えば、LP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、UP、XP、およびTP)が第2のプログラミングパスでプログラムされてもよい。別の例として、異なるQLC方式では、下位ページ(例えば、LPおよびUP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、XPおよびTP)が第2のプログラミングパスでプログラムされてもよい。さらに別の例では、異なるQLC方式において、下位ページ(例えば、LP、UP、およびXP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、TP)が第2のプログラミングパスでプログラムされてもよい。プログラミングパスにおいてプログラムされるページの任意の他の適切な順列は、上位ページをプログラムするために使用される複数のパスを含む、本開示において企図される。)
(キ)「[0062] The upper page(s) may be received through a data load operation which may comprise one or more data load commands. In conjunction with a data load command, storage device controller 118 may receive an address at which data is to be programmed and the data (e.g., a page) to be programmed. In various embodiments, a data load command directs the loading of a page of data from a host (e.g., CPU 102) into memory elements (e.g., of a memory module 122 A) to be used during a programming pass.」
(当審訳:[0062] 上位ページは、1つまたは複数のデータロードコマンドで構成され得るデータロード動作によって受信され得る。データロードコマンドに関連して、ストレージデバイスコントローラ118は、データがプログラムされるべきアドレスと、プログラムされるべきデータ(例えば、ページ)とを受信することができる。様々な実施形態において、データロードコマンドは、ホスト(例えば、CPU102)から、プログラミングパス中に使用されるメモリエレメント(例えば、メモリモジュール122Aの)へのデータのページのロードを指示する。)
(ク)「[0064] FIG. 5 illustrates an example sequence of a pre-read operation and a data load operation for a second programming pass of TLC NAND flash memory cells in accordance with certain embodiments. In the embodiment depicted, a command line 502, a read/busy line 504, and internal operations 506 and 508 are shown. In this embodiment, it is assumed that an LP was programmed during a first pass.
[0065] Command line 502 may comprise one or more communication channels over which storage device controller 118 may receive command signals and data signals from a host. In the embodiment depicted, two data load commands are depicted, with the first data load command comprising operations 510-514 and the second data load command comprising operations 515-519. In a particular embodiment, an operation occupies one or more clock cycles of the storage device 106 A. At operation 510, signals (e.g., a data input command such as an 80h instruction) indicating the start of a data load command are received. At operation 511, an address of an upper page is received. For example, in the embodiment depicted, an address of an XP is received at 511. During operations 512 and 513, data comprising the upper page (e.g., XP) is received. Any suitable number of sets of data of the XP may be sent over command line 502 in between operations 512 and 513. At 514, signals (e.g., a program command such as a 10h instruction) indicating the end of a data load command are received. Operation 514 may trigger the loading of the upper page (e.g., XP) data into memory elements of the memory module 122A corresponding to the address.
[0066] In various embodiments, a memory module 122 A may include a set of memory elements (e.g., latches) that interface with the storage device controller 118 to receive data that is loaded from a host via a data load command (hereinafter referred to as the "load memory element set"). In various embodiments, such memory elements may comprise a set of latches, such as SDC latches. The memory module 122A may also include one or more sets of memory elements (e.g., latches) that do not interface with the storage device controller 118 to receive data loaded from a host via a data load command, but are able to store data read during a pre-read operation or are able to receive and store a copy of data stored in the load memory element set. In various embodiments, such memory elements may comprise one or more sets latches, such as PDC latches. Accordingly, when two or more pages of data are to be loaded prior to a programming pass, a first page may be loaded in the load memory element set and then copied to another set of memory elements of the memory module 122 A to make room for an additional page of data to be loaded into the load memory element set. Accordingly, in the embodiment depicted, after the first data load command is completed, operation 506 occurs wherein the XP data is copied from the load memory element set into another memory element set so that data received during the second data load command may be loaded into the load memory element set. In various embodiments, while the XP data is being copied from the load memory element set, the load memory element set is unable to accept new data. Accordingly, the read/busy line 504 goes low at the start of the copy operation 506 to signal to the host that new data cannot be accepted.
[0067] Upon completion of the copy operation, the read/busy line 504 transitions back to its previous state and an additional data load command may be received and an additional upper page (e.g., the UP) may be loaded into the load memory element set (in some embodiments, the data load command associated with the loading of the UP data could begin before the copying of the XP data is complete since the actual load into the load memory element set may occur at the end of the data load command though if the read/busy line is coupled to the host, the host may wait until this line transitions to send an additional data load command). At operation 515, signals (e.g., an 80h instruction) indicating the start of a data load command are received. At operation 516, an address of a different upper page is received. For example, in the embodiment depicted, an address of a UP is received at 516. During operations 517 and 518, data comprising the UP is received. Any suitable number of sets of data including data of the UP may be sent over command line 502 in between operations 517 and 518. At 519, signals (e.g., a 10h instruction) indicating the end of a data load command are received. Operation 519 may trigger the loading of the UP data into the load memory element set of the memory module 122 A which correspond to the address of the UP.
[0068] ・・・(中略)・・・
[0069] The pre-read operation may be triggered at any suitable time. As various examples, the pre-read operation may be triggered when the address of an upper page (e.g., the UP, XP, or TP) is received, when all of the data of an upper page (e.g., the UP, XP, or TP) has been received, when an instruction (e.g., 10h instruction) signifying the end of a data load command is received, when the copying of an upper page (e.g., the UP, XP, or TP) from the load memory element set is complete, when the data input command (e.g., 80h) of an upper page is received (e.g., at 515) after an address of a different upper page has been received, or at any other suitable time.
[0070] Once the data load operation and the pre-read operation have completed, the second programming pass may be performed based on the page data stored in the memory element sets of the memory module 122 A.
[0071] Although the example above depicts a TLC encoding scheme in which two upper pages are programmed during the second pass, various embodiments of the present disclosure may involve any other suitable programming sequences in which a pre-read may be initiated (and/or completed) prior to the completion of the data load operation, whether the data load operation involves loading one, two, three, or more upper pages and whether the pre-read operation involves reading one, two, three, or other number of lower pages.」
(当審訳:[0064] 図5は、特定の実施形態に従った、TLC NANDフラッシュメモリセルの第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンスを示す。描かれている実施形態では、コマンドライン502、読み取り/ビジーライン504、および内部動作506および508が示されている。この実施形態では、LP は第1のパスの間にプログラムされたと仮定している。
[0065] コマンドライン502は、ストレージデバイスコントローラ118がホストからコマンド信号およびデータ信号を受信し得る1つまたは複数の通信チャネルを構成し得る。描かれている実施形態では、2つのデータロードコマンドが描かれており、第1のデータロードコマンドは動作510~514からなり、第2のデータロードコマンドは動作515~519からなる。特定の実施形態において、動作は、ストレージデバイス106Aの1つまたは複数のクロックサイクルを占有する。動作510において、データロードコマンドの開始を示す信号(例えば、80h命令などのデータ入力コマンド)が受信される。動作511において、上位ページのアドレスが受信される。例えば、図示の実施形態では、XPのアドレスが511で受信される。動作512および513において、上位ページ(例えば、XP)を構成するデータが受信される。動作512と513の間に、XPのデータの任意の適切な数のセットがコマンドライン502を介して送信されてもよい。514において、データロードコマンドの終了を示す信号(例えば、l0h命令などのプログラムコマンド)が受信される。動作514は、アドレスに対応するメモリモジュール122Aのメモリエレメントへの上位ページ(例えば、XP)データのロードをトリガする場合がある。
[0066] 様々な実施形態において、メモリモジュール122Aは、データロードコマンドを介してホストからロードされるデータを受信するために、ストレージデバイスコントローラ118とインターフェースするメモリエレメントのセット(例えば、ラッチ)を含み得る(以下、「ロードメモリエレメントセット」と呼ぶ)。様々な実施形態において、そのようなメモリエレメントは、SDCラッチなどのラッチのセットで構成され得る。メモリモジュール122Aはまた、データロードコマンドを介してホストからロードされたデータを受信するためにストレージデバイスコントローラ118とインターフェースしないが、先読み動作中に読み取られたデータを格納することができるか、またはロードメモリエレメントセットに格納されたデータのコピーを受信して格納することができる、1つまたは複数のメモリエレメントセット(例えば、ラッチ)を含むことができる。様々な実施形態において、そのようなメモリエレメントは、PDCラッチなどの1つまたは複数のセットラッチで構成され得る。したがって、プログラミングパスの前に2ページ以上のデータがロードされる場合、最初のページがロードメモリエレメントセットにロードされ、その後、ロードメモリエレメントセットにロードされる追加ページのデータのためのスペースを確保するために、メモリモジュール122Aのメモリエレメントの別のセットにコピーされてもよい。したがって、描かれている実施形態では、第1のデータロードコマンドが完了した後、動作506が発生し、XPデータがロードメモリエレメントセットから別のメモリエレメントセットにコピーされ、第2のデータロードコマンド中に受信されたデータがロードメモリエレメントセットにロードされるようになる。さまざまな実施形態では、XPデータがロードメモリエレメントセットからコピーされている間、ロードメモリエレメントセットは新しいデータを受け入れることができない。したがって、コピー動作506の開始時にリード/ビジー線504がローレベルになり、新しいデータを受け入れることができないことをホストに知らせる。
[0067] コピー動作が完了すると、リード/ビジー線504はその前の状態に遷移し、追加のデータロードコマンドを受信して、追加の上位ページ(例えば、UP)をロードメモリエレメントセットにロードすることができる(一部の実施形態では、UPデータのロードに関連するデータロードコマンドは、ロードメモリエレメントセットへの実際のロードがデータロードコマンドの終了時に発生する可能性があるため、XPデータのコピーが完了する前に開始される可能性があるが、リード/ビジーラインがホストに結合されている場合、ホストは、追加のデータロードコマンドを送信するためにこのラインが遷移するまで待つことができる)。動作515において、データロードコマンドの開始を示す信号(例えば、80h命令)が受信される。動作516において、異なる上位ページのアドレスが受信される。例えば、描かれている実施形態では、UPのアドレスが516で受信される。動作517および518の間、UPを構成するデータが受信される。UPのデータを含む任意の適切な数のデータセットが、動作517と518の間にコマンドライン502を介して送信されてもよい。519において、データロードコマンドの終了を示す信号(例えば、10h命令)が受信される。動作519は、UPのアドレスに対応するメモリモジュール122AのロードメモリエレメントセットへのUPデータのロードをトリガする場合がある。
[0068] ・・・(中略)・・・
[0069] 先読み動作は、任意の適切な時間にトリガされてもよい。様々な例として、先読み動作は、上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、 l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき(例えば、515において)、または任意の他の適切な時刻にトリガされてもよい。
[0070] データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行することができる。
[0071] 上記の例では、2つの上位ページが第2のパス中にプログラムされるTLC符号化方式が描かれているが、本開示の様々な実施形態は、データロード動作が1つ、2つ、3つ、またはそれ以上の上位ページのロードを伴うかどうか、および先読み動作が1つ、2つ、3つ、または他の数の下位ページの読み取りを伴うかどうかにかかわらず、データロード動作の完了前に先読みが開始(および/または完了)され得る任意の他の適切なプログラミングシーケンスを含み得る。)
(ケ)「[0075] FIG. 7 illustrates an example flow 700 for initiating a pre-read operation before completion of a data load operation in accordance with certain embodiments. The flow 700 depicts example operations that may be performed by any suitable logic, such as a storage device controller 118, memory 1 16, and/or a memory module 122 A.
[0076] At 702, one or more lower pages are loaded. ・・・(中略)・・・At 704, the lower page(s) are programmed in a first programming pass.
[0077] At 706, an address is received in association with a data load operation. ・・・(中略)・・・
[0078] At 708, lower page(s) stored in the memory cells associated with the received address are read in a pre-read operation. At 710, upper page(s) are loaded during the data load operation. ・・・(中略)・・・At 712, the upper page(s) are programmed in a second programming pass.」
(当審訳:[0075] 図7は、特定の実施形態に従って、データロード動作の完了前に先読み動作を開始するための例示的なフロー700を示す。フロー700は、ストレージデバイスコントローラ118、メモリ116、および/またはメモリモジュール122Aなどの任意の適切なロジックによって実行され得る例示的な動作を示す。
[0076] 702で、1つ以上の下位ページがロードされる。・・・(中略)・・・704で、下位ページは第1のプログラミングパスでプログラムされる。
[0077] 706では、データロード動作に関連してアドレスが受信される。・・・(中略)・・・
[0078] 708 において、受信したアドレスに関連付けられたメモリセルに格納された下位ページが、先読み動作において読み出される。710では、データロード動作中に上位ページがロードされる。・・・(中略)・・・712 で、上位ページが第2のプログラミングパスでプログラムされる。
(コ)「図1
[図:0001412893000001.jpg]
」
(サ)「図5
[図:0001412893000002.jpg]
」
(シ)「図6
[図:0001412893000003.jpg]
」
(ス)「図7
[図:0001412893000004.jpg]
」
イ 引用発明
上記引用文献1の記載について検討する。
(ア)上記ア(ア)の「システム100は、」「中央処理装置(CPU)102と、複数のストレージデバイス106A、106B、および106C」「と、システムメモリデバイス107とを含む。」との記載及び上記ア(コ)の図1の記載から、引用文献1には、“中央処理装置(CPU)102と、複数のストレージデバイス106A、106B、および106Cと、システムメモリデバイス107とを含むシステム100におけるストレージデバイス106A”が記載されていると認められる。
(イ)上記ア(イ)の「描かれている実施形態では、ストレージデバイス106Aは、ストレージデバイスコントローラ118と、データを記憶するように動作可能な4つのメモリモジュール122A~Dからなる1つのメモリ116とを含むが、ストレージデバイスは、任意の適切な数のメモリモジュールを含んでもよい。・・・(中略)・・・メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイから構成される。NANDフラッシュメモリアレイは、図2に関連してより詳細に説明される。」との記載、上記ア(ウ)の「図2は、特定の実施形態によるNANDフラッシュメモリアレイ200の一部の例示的な図を示す。」との記載、及び上記ア(コ)の図1の記載から、引用文献1には、“ストレージデバイス106Aは、ストレージデバイスコントローラ118と、データを記憶するように動作可能な4つのメモリモジュール122A~Dからなる1つのメモリ116とを含み、メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイ200から構成され”ることが記載されていると認められる。
(ウ)上記ア(ウ)の「図2は、特定の実施形態によるNANDフラッシュメモリアレイ200の一部の例示的な図を示す。・・・(中略)・・・メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイから構成され得る。NANDフラッシュメモリアレイ200は、直列ストリング204などの列に配列された複数の不揮発性メモリセル202から構成され得る。」との記載から、引用文献1には、“NANDフラッシュメモリアレイ200は、複数の不揮発性メモリセル202から構成され”ることが記載されていると認められる。
(エ)上記ア(エ)の「各メモリセル202は、SLC、MLC、TLC、QLC、または他の符号化方式に従ってプログラムすることができる。」との記載から、引用文献1には、“各メモリセル202は、SLC、MLC、TLC、QLC等の符号化方式に従ってプログラムすることができ”ることが記載されていると認められる。
(オ)上記ア(オ)の「複数のビットを記憶するように符号化されたセルは、複数の異なるページの一部を形成することができ、セルの各ビットは異なるページに対応する。例えば、・・・(中略)・・・4ビットで符号化される(すなわち、QLC符号化方式を使用する)セルの場合、1ビットがLPに対応し、別のビットがUPに対応し、別のビットがXPに対応し、最後のビットがトップページ(TP)に対応してもよい。」との記載において、“セル”は、“メモリセル202”のことを指すものであるから、前記記載より、引用文献1には、“複数のビットを記憶するように符号化されたメモリセル202は、複数の異なるページの一部を形成することができ、メモリセル202の各ビットは異なるページに対応し、例えば、4ビットで符号化される(すなわち、QLC符号化方式を使用する)メモリセル202の場合、1ビットがLPに対応し、別のビットがUPに対応し、別のビットがXPに対応し、最後のビットがトップページ(TP)に対応”することが記載されていると認められる。
(カ)上記ア(カ)の段落0056の「他の例として、ワードラインのセルがTLC方式またはQLC方式を用いて符号化される場合、セルの電圧レベルを所望のプログラムレベルに設定することにより、1回のプログラミングパスの間にすべてのページがプログラムされてもよいし、第1のプログラミングパスの間に1つまたは複数のページがプログラムされ、第2のパスの間に残りのページがプログラムされてもよい(または、複数の追加パスを用いて残りのページがプログラムされてもよい)。・・・(中略)・・・QLC方式では、・・・(中略)・・・第1のパスがLP、UP、およびXPを符号化し、第2のパスがTPを符号化してもよい。」との記載において、“セル”は、“メモリセル202”のことを指すものであり、“第1のパス”及び“第2のパス”はそれぞれ“第1のプログラミングパス”及び“第2のプログラミングパス”をさすものと認められるので、前記記載から、引用文献1には、“ワードラインのメモリセル202がQLC方式を用いて符号化される場合、メモリセル202の電圧レベルを所望のプログラムレベルに設定することにより、1回のプログラミングパスの間にすべてのページがプログラムされてもよいし、第1のプログラミングパスの間に1つまたは複数のページがプログラムされ、第2のプログラミングパスの間に残りのページがプログラムされてもよく、QLC方式では、第1のプログラミングパスがLP、UP、およびXPを符号化し、第2のプログラミングパスがTPを符号化してもよ”いことが記載されていると認められる。
(キ)上記ア(カ)の段落0057の「「下位ページ(複数可)」は、第1のプログラミングパスでプログラムされる1つ以上のページを指すことがあり、「上位ページ(複数可)」は、1つ以上の後続のプログラミングパスでプログラムされる1つ以上のページを指すことがある。・・・(中略)・・・QLC方式において、下位ページ(例えば、LP、UP、およびXP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、TP)が第2のプログラミングパスでプログラムされてもよい。」との記載から、引用文献1には、“「下位ページ(複数可)」は、第1のプログラミングパスでプログラムされる1つ以上のページを指し、「上位ページ(複数可)」は、1つ以上の後続のプログラミングパスでプログラムされる1つ以上のページを指し、QLC方式において、下位ページ(例えば、LP、UP、およびXP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、TP)が第2のプログラミングパスでプログラムされてもよ”いことが記載されている。
(ク)上記ア(キ)の「データロードコマンドは、ホスト(例えば、CPU102)から、プログラミングパス中に使用されるメモリエレメント(例えば、メモリモジュール122Aの)へのデータのページのロードを指示する。」との記載から、引用文献1には、“データロードコマンドは、ホスト(例えば、CPU102)から、プログラミングパス中に使用されるメモリエレメント(例えば、メモリモジュール122Aの)へのデータのページのロードを指示するものであ”ることが記載されている。
(ケ)上記ア(ク)の段落0066の「メモリモジュール122Aは、データロードコマンドを介してホストからロードされるデータを受信するために、ストレージデバイスコントローラ118とインターフェースするメモリエレメントのセット(例えば、ラッチ)を含み得る(以下、「ロードメモリエレメントセット」と呼ぶ)。・・・(中略)・・・メモリモジュール122Aはまた、データロードコマンドを介してホストからロードされたデータを受信するためにストレージデバイスコントローラ118とインターフェースしないが、先読み動作中に読み取られたデータを格納することができるか、またはロードメモリエレメントセットに格納されたデータのコピーを受信して格納することができる、1つまたは複数のメモリエレメントセット(例えば、ラッチ)を含むことができる。・・・(中略)・・・プログラミングパスの前に2ページ以上のデータがロードされる場合、最初のページがロードメモリエレメントセットにロードされ、その後、ロードメモリエレメントセットにロードされる追加ページのデータのためのスペースを確保するために、メモリモジュール122Aのメモリエレメントの別のセットにコピーされてもよい。」との記載、及び上記ア(シ)の図6の記載から、引用文献1には、“メモリモジュール122Aは、データロードコマンドを介してホストからロードされるデータを受信するためのロードメモリエレメントセットを含み得、メモリモジュール122Aはまた、先読み動作中に読み取られたデータを格納することができ、例えばラッチである1つまたは複数のメモリエレメントセットを含むことができ、プログラミングパスの前に2ページ以上のデータがロードされる場合、最初のページがロードメモリエレメントセットにロードされ、その後、ロードメモリエレメントセットにロードされる追加ページのデータのためのスペースを確保するために、メモリモジュール122Aのメモリエレメントの別のセットにコピーされてもよ”いことが記載されていると認められる。
(コ)a 上記ア(ク)の段落0064~0065の「図5は、特定の実施形態に従った、TLC NANDフラッシュメモリセルの第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンスを示す。・・・(中略)・・・この実施形態では、LP は第1のパスの間にプログラムされたと仮定している。・・・(中略)・・・コマンドライン502は、ストレージデバイスコントローラ118がホストからコマンド信号およびデータ信号を受信し得る1つまたは複数の通信チャネルを構成し得る。・・・(中略)・・・2つのデータロードコマンドが描かれており、第1のデータロードコマンドは動作510~514からなり、第2のデータロードコマンドは動作515~519からなる。・・・(中略)・・・動作510において、データロードコマンドの開始を示す信号(例えば、80h命令などのデータ入力コマンド)が受信される。動作511において、上位ページのアドレスが受信される。例えば、図示の実施形態では、XPのアドレスが511で受信される。動作512および513において、上位ページ(例えば、XP)を構成するデータが受信される。・・・(中略)・・・514において、データロードコマンドの終了を示す信号(例えば、l0h命令などのプログラムコマンド)が受信される。」との記載において、“第1のパス”は“第1のプログラミングパス”のことであるので、前記記載、及び上記ア(サ)の図5の記載から、引用文献1には、“TLC NANDフラッシュメモリセルの第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンスでは、LP は第1のプログラミングパスの間にプログラムされており、ストレージデバイスコントローラ118によってホストからの2つのデータロードコマンド、すなわち、動作510~514からなる第1のデータロードコマンド及び、動作515~519からなる第2のデータロードコマンドが受信され、動作510では、データロードコマンドの開始を示す信号(例えば、80h命令などのデータ入力コマンド)が受信され、動作511では、上位ページのアドレス(XPのアドレス)が受信され、動作512および513では、上位ページ(例えば、XP)を構成するデータが受信され、514では、データロードコマンドの終了を示す信号(例えば、l0h命令などのプログラムコマンド)が受信され”ることが記載されていると認められる。
b 上記ア(サ)の図5の「COPY XP DATA(506)」との記載から、動作506は、XPデータをコピーする“コピー動作”であることが読み取れる。
上記の点を踏まえると、上記ア(ク)の段落0066の「描かれている実施形態では、第1のデータロードコマンドが完了した後、動作506が発生し、XPデータがロードメモリエレメントセットから別のメモリエレメントセットにコピーされ、第2のデータロードコマンド中に受信されたデータがロードメモリエレメントセットにロードされるようになる。」との記載から、引用文献1には、“第1のデータロードコマンドが完了した後、コピー動作506(COPY XP DATA)が発生し、このコピー動作506により、XPデータがロードメモリエレメントセットから別のメモリエレメントセットにコピーされ、第2のデータロードコマンド中に受信されたデータがロードメモリエレメントセットにロードされるようにな”ることが記載されていると認められる。
c 上記ア(サ)の図5の記載から、“コピー動作506(COPY XP DATA)に引き続いて動作508(READ LP DATA)が開始され”ることが読み取れる。ここで、動作508(READ LP DATA)は、上記ア(ク)の段落0064の「図5は、特定の実施形態に従った、TLC NANDフラッシュメモリセルの第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンスを示す」との記載からみて、「TLC NANDフラッシュメモリセルの第2のプログラミングパスのための」“先読み動作”のことである。
そうすると、上記ア(ク)の段落0067の「コピー動作が完了すると、・・・(中略)・・・追加のデータロードコマンドを受信して、追加の上位ページ(例えば、UP)をロードメモリエレメントセットにロードすることができる」との記載、及び上記ア(サ)の図5の記載から、引用文献1には、“コピー動作506が完了すると、追加のデータロードコマンドを受信して、追加の上位ページ(例えば、UP)をロードメモリエレメントセットにロードすることができ、コピー動作506(COPY XP DATA)に引き続いて先読み動作508(READ LP DATA)が開始され”ることが記載されていると認められる。
d 上記ア(ク)の段落0067の「動作515において、データロードコマンドの開始を示す信号(例えば、80h命令)が受信される。動作516において、異なる上位ページのアドレスが受信される。動作517および518の間、UPを構成するデータが受信される。519において、データロードコマンドの終了を示す信号(例えば、10h命令)が受信される。」との記載、及び上記ア(サ)の図5の記載から、引用文献1には、“動作515では、データロードコマンドの開始を示す信号(例えば、80h命令)が受信され、動作516では、異なる上位ページのアドレスが受信され、動作517および518の間、UPを構成するデータが受信され、519では、データロードコマンドの終了を示す信号(例えば、10h命令)が受信され”ることが記載されていると認められる。
(サ)上記ア(ク)の段落0069の「先読み動作は、任意の適切な時間にトリガされてもよい。様々な例として、先読み動作は、上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、 l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき(例えば、515において)、または任意の他の適切な時刻にトリガされてもよい。」との記載から、引用文献1には、“先読み動作は、任意の適切な時間にトリガされてもよいものであり、例えば、上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき、等にトリガされ”ることが記載されていると認められる。
(シ)上記ア(ク)の段落0070の「データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行することができる。」との記載から、引用文献1には、“データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行することができ”ることが記載されていると認められる。
(ス)上記ア(ク)の段落0071の「上記の例では、2つの上位ページが第2のパス中にプログラムされるTLC符号化方式が描かれているが、本開示の様々な実施形態は、データロード動作が1つ、2つ、3つ、またはそれ以上の上位ページのロードを伴うかどうか、および先読み動作が1つ、2つ、3つ、または他の数の下位ページの読み取りを伴うかどうかにかかわらず、データロード動作の完了前に先読みが開始(および/または完了)され得る任意の他の適切なプログラミングシーケンスを含み得る。」との記載において、“第2のパス”は、“第2のプログラミングパス”のことであるから、前記記載から、引用文献1には、“上記の2つの上位ページが第2のプログラミングパス中にプログラムされるTLC符号化方式は例示であり、上位ページのデータロード動作の数や下位ページの先読み動作の数にかかわらず、データロード動作の完了前に先読みが開始(および/または完了)され得る任意の他の適切なプログラミングシーケンスを含み得”ることが記載されていると認められる。
(セ)上記ア(ケ)の段落0075の「図7は、特定の実施形態に従って、データロード動作の完了前に先読み動作を開始するための例示的なフロー700を示す。フロー700は、ストレージデバイスコントローラ118、メモリ116、および/またはメモリモジュール122Aなどの任意の適切なロジックによって実行され得る例示的な動作を示す。」との記載から、引用文献1には、“データロード動作の完了前に先読み動作を開始するための例示的なフロー700は、ストレージデバイスコントローラ118、メモリ116、および/またはメモリモジュール122Aなどの任意の適切なロジックによって実行され得るものであ”ることが記載されていると認められる。
(ソ)上記ア(ケ)の段落0076~0078の「702で、1つ以上の下位ページがロードされる。・・・(中略)・・・704で、下位ページは第1のプログラミングパスでプログラムされる。・・・(中略)・・・706では、データロード動作に関連してアドレスが受信される。・・・(中略)・・・708 において、受信したアドレスに関連付けられたメモリセルに格納された下位ページが、先読み動作において読み出される。710では、データロード動作中に上位ページがロードされる。・・・(中略)・・・712 で、上位ページが第2のプログラミングパスでプログラムされる。」との記載、及び上記ア(ス)の図7の記載から、引用文献1には、“702で、1つ以上の下位ページがロードされ、704で、前記下位ページは第1のプログラミングパスでプログラムされ、706では、データロード動作に関連してアドレスが受信され、708において、受信したアドレスに関連付けられたメモリセルに格納された下位ページが、先読み動作において読み出され、710では、データロード動作中に上位ページがロードされ、712で、上位ページが第2のプログラミングパスでプログラムされる”ことが記載されていると認められる。
上記(ア)~(ソ)の検討によれば、引用文献1には、次の発明(以下「引用発明」という。)が記載されていると認められる。なお、a~oの符号は、説明のために当審で付したものであり、以下「構成a」~「構成o」という。
(引用発明)
「a:中央処理装置(CPU)102と、複数のストレージデバイス106A、106B、および106Cと、システムメモリデバイス107とを含むシステム100におけるストレージデバイス106Aであって、
b:前記ストレージデバイス106Aは、ストレージデバイスコントローラ118と、データを記憶するように動作可能な4つのメモリモジュール122A~Dからなる1つのメモリ116とを含み、前記メモリモジュール122Aは、1つまたは複数のNANDフラッシュメモリアレイ200から構成され、
c:前記NANDフラッシュメモリアレイ200は、複数の不揮発性メモリセル202から構成され、
d:各メモリセル202は、SLC、MLC、TLC、QLC等の符号化方式に従ってプログラムすることができ、
e:複数のビットを記憶するように符号化されたメモリセル202は、複数の異なるページの一部を形成することができ、メモリセル202の各ビットは異なるページに対応し、例えば、4ビットで符号化される(すなわち、QLC符号化方式を使用する)メモリセル202の場合、1ビットがLPに対応し、別のビットがUPに対応し、別のビットがXPに対応し、最後のビットがトップページ(TP)に対応し、
f:ワードラインのメモリセル202がQLC方式を用いて符号化される場合、メモリセル202の電圧レベルを所望のプログラムレベルに設定することにより、1回のプログラミングパスの間にすべてのページがプログラムされてもよいし、第1のプログラミングパスの間に1つまたは複数のページがプログラムされ、第2のプログラミングパスの間に残りのページがプログラムされてもよく、QLC方式では、第1のプログラミングパスがLP、UP、およびXPを符号化し、第2のプログラミングパスがTPを符号化してもよく、
g:「下位ページ(複数可)」は、第1のプログラミングパスでプログラムされる1つ以上のページを指し、「上位ページ(複数可)」は、1つ以上の後続のプログラミングパスでプログラムされる1つ以上のページを指し、QLC方式において、下位ページ(例えば、LP、UP、およびXP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、TP)が第2のプログラミングパスでプログラムされてもよく、
h:データロードコマンドは、ホスト(例えば、CPU102)から、プログラミングパス中に使用されるメモリエレメント(例えば、メモリモジュール122Aの)へのデータのページのロードを指示するものであり、
i:メモリモジュール122Aは、データロードコマンドを介してホストからロードされるデータを受信するためのロードメモリエレメントセットを含み得、前記メモリモジュール122Aはまた、先読み動作中に読み取られたデータを格納することができ、例えばラッチである1つまたは複数のメモリエレメントセットを含むことができ、プログラミングパスの前に2ページ以上のデータがロードされる場合、最初のページがロードメモリエレメントセットにロードされ、その後、ロードメモリエレメントセットにロードされる追加ページのデータのためのスペースを確保するために、メモリモジュール122Aのメモリエレメントの別のセットにコピーされてもよく、
j:TLC NANDフラッシュメモリセルの第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンスでは、LP は第1のプログラミングパスの間にプログラムされており、ストレージデバイスコントローラ118によってホストからの2つのデータロードコマンド、すなわち、動作510~514からなる第1のデータロードコマンド及び、動作515~519からなる第2のデータロードコマンドが受信され、動作510では、データロードコマンドの開始を示す信号(例えば、80h命令などのデータ入力コマンド)が受信され、動作511では、上位ページのアドレス(XPのアドレス)が受信され、動作512および513では、上位ページ(例えば、XP)を構成するデータが受信され、514では、データロードコマンドの終了を示す信号(例えば、l0h命令などのプログラムコマンド)が受信され、第1のデータロードコマンドが完了した後、コピー動作506(COPY XP DATA)が発生し、このコピー動作506により、XPデータがロードメモリエレメントセットから別のメモリエレメントセットにコピーされ、第2のデータロードコマンド中に受信されたデータがロードメモリエレメントセットにロードされるようになり、前記コピー動作506が完了すると、追加のデータロードコマンドを受信して、追加の上位ページ(例えば、UP)をロードメモリエレメントセットにロードすることができ、コピー動作506(COPY XP DATA)に引き続いて先読み動作508(READ LP DATA)が開始され、動作515では、データロードコマンドの開始を示す信号(例えば、80h命令)が受信され、動作516では、異なる上位ページのアドレスが受信され、動作517および518の間、UPを構成するデータが受信され、519では、データロードコマンドの終了を示す信号(例えば、10h命令)が受信され、
k:先読み動作は、任意の適切な時間にトリガされてもよいものであり、例えば、上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき、等にトリガされ、
l:データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行することができ、
m:上記の2つの上位ページが第2のプログラミングパス中にプログラムされるTLC符号化方式は例示であり、上位ページのデータロード動作の数や下位ページの先読み動作の数にかかわらず、データロード動作の完了前に先読みが開始(および/または完了)され得る任意の他の適切なプログラミングシーケンスを含み得、
n:データロード動作の完了前に先読み動作を開始するための例示的なフロー700は、ストレージデバイスコントローラ118、メモリ116、および/またはメモリモジュール122Aなどの任意の適切なロジックによって実行され得るものであり、
n1:702で、1つ以上の下位ページがロードされ、
n2:704で、前記下位ページは第1のプログラミングパスでプログラムされ、
n3:706では、データロード動作に関連してアドレスが受信され、
n4:708において、受信したアドレスに関連付けられたメモリセルに格納された下位ページが、先読み動作において読み出され、
n5:710では、データロード動作中に上位ページがロードされ、
n6:712で、上位ページが第2のプログラミングパスでプログラムされる、
o:ストレージデバイス106A。」
ウ 引用文献2の記載事項
原査定の拒絶の理由で引用された本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、米国特許出願公開第2017/0371565号明細書(2017年(平成29年)12月28日公開。以下「引用文献2」という。)には、図面とともに、次の記載がある。
(ア)「[0060] FIG. 6 illustrates another example read cycle 602 for quad-level cell (QLC) NAND flash memory cells in accordance with certain embodiments. Cycle 602 depicts a read cycle that combines the reading of the LP, UP, and XP of memory encoded using a QLC scheme into a single read cycle. In cycle 602, the epilogue, wordline ramp, and read recovery phases are similar to the phases shown in cycles 502, 504, and 506 (where these pages were each read in a distinct read cycle). However, during the sensing phase, each read level (R2, R4, R6, R8, R10, R12, and R14) that was applied in cycles 502, 504, and 506 to read the LP, UP, and XP is applied during a single sensing phase and the cells are sensed at each read level. Based on the results of the sensing performed at these read levels, three bits from each cell forming the pages is resolved. Because the read of three pages is performed during a single cycle, the power and time overhead is reduced, as the combined read includes a single epilogue, wordline ramp, and read recovery phase instead of three of each of these phases as in the case of three separate read cycles that each read a single page. In another embodiment, the TP could also be read in the same read cycle as the LP, UP, and XP by expanding the read levels sensed during the sensing phase to include R1, R3, R5, R7, R9, R11, R13, and R15, thus saving three epilogue, wordline ramp, and read recovery phases. In other embodiments, any combination of the pages may be read together in the same read cycle while the other page(s) are read in one or more other read cycles.
[0061] Reading multiple pages in a single cycle is particularly useful when a computing host is requesting the read of sequential data. As describe above, it is typical for pages that are programmed together in a single programming pass to include sequential data. Thus, when pages that are programmed together in a single programming pass are read, these pages may be read together in a single read cycle. In various embodiments, it may also be advantageous to read all available pages (e.g., LP, UP, XP, TP) of a cell together in a single read cycle. For example, if the computing host is accessing a particularly large block of sequential data, even if one or more of these pages is not sequential with the other pages, the pages (or page) that are not sequential with the other pages may still be part of the large block of sequential data being accessed. In various embodiments, storage device 106 may determine, based on a read request received from a computing host, whether multiple pages or a single page should be read during a read cycle prior to performing a read.
[0062] The read cycles depict particular waveforms for the selected wordline during reads. In other embodiments, any suitable voltages may be applied to the selected wordline during each phase of the read cycle. For example, the read cycles 406 and 602 show monotonic increasing of the read levels during the sensing phase, but in other embodiments the read levels may be monotonically decreasing or may have any other suitable ordering.」
(当審訳:[0060] 図6は、特定の実施形態による、クワッドレベルセル(QLC)NANDフラッシュメモリセルの別の例示的な読み出しサイクル602を示す。サイクル602は、QLC方式を使用して符号化されたメモリのLP、UP、およびXPの読み出しを単一の読み出しサイクルに結合する読み出しサイクルを示す。サイクル602では、エピローグ、ワード線ランプ、および読み出し回復フェーズは、サイクル502、504、および506(これらのページはそれぞれ別個の読み出しサイクルで読み出された)に示されたフェーズと同様である。ただし、センシング・フェーズでは、LP、UP、およびXPを読み取るためにサイクル502、504、および506で適用された各読み取りレベル(R2、R4、R6、R8、R10、R12、およびR14)が単一のセンシング・フェーズで適用され、各読み取りレベルでセルがセンシングされる。これらの読み出しレベルで実行されたセンシングの結果に基づいて、ページを形成する各セルからの3ビットが解決される。3つのページの読み出しが1つのサイクル中に実行されるため、各々が1つのページを読み出す3つの個別の読み出しサイクルの場合のように、結合された読み出しが、これらの各フェーズの3つの代わりに、単一のエピローグ、ワード線ランプ、および読み出し回復フェーズを含むので、電力と時間のオーバーヘッドが低減される。別の実施形態では、R1、R3、R5、R7、R9、R11、R13、およびR15を含むように感知フェーズ中に感知される読み出しレベルを拡大することによって、LP、UP、およびXPと同じ読み出しサイクルでTPを読み出すこともでき、したがって、3つのエピローグ、ワード線ランプ、および読み出し回復フェーズを節約することができる。他の実施形態では、ページの任意の組み合わせが同じ読み取りサイクルで一緒に読み取られる一方で、他のページが1つ以上の他の読み取りサイクルで読み取られることがある。
[0061] 単一サイクルでの複数ページの読み出しは、コンピューティングホストがシーケンシャルデータの読み出しを要求している場合に特に有用である。上述したように、単一のプログラミング・パスで一緒にプログラムされるページにはシーケンシャル・データが含まれるのが一般的である。したがって、単一のプログラミング・パスで一緒にプログラムされるページが読み取られるとき、これらのページは、単一の読み取りサイクルで一緒に読み取られ得る。様々な実施形態において、セルのすべての利用可能なページ(例えば、LP、UP、XP、TP)を単一の読み取りサイクルで一緒に読み取ることも有利であり得る。例えば、コンピューティングホストがシーケンシャルデータの特に大きなブロックにアクセスしている場合、これらのページのうちの1つ以上が他のページとシーケンシャルでないとしても、他のページとシーケンシャルでないページ(またはページ)は、アクセスされているシーケンシャルデータの大きなブロックの一部である可能性がある。様々な実施形態において、ストレージデバイス106は、コンピューティングホストから受信した読み取り要求に基づいて、読み取りを実行する前に、読み取りサイクル中に複数ページまたは単一ページのいずれを読み取るべきかを決定することができる。
[0062] 読み出しサイクルは、読み出し中の選択されたワード線に対する特定の波形を示す。他の実施形態では、読み出しサイクルの各段階の間、選択されたワード線に任意の適切な電圧を印加することができる。例えば、読み出しサイクル406および602は、感知段階中の読み出しレベルの単調増加を示しているが、他の実施形態では、読み出しレベルは単調減少であってもよいし、任意の他の適切な順序を有してもよい。)
(イ)「図6
[図:0001412893000005.jpg]
」
(ウ)引用文献2記載事項
上記(イ)の図6の記載から、各読み取りレベル(R2、R4、R6、R8、R10、R12、およびR14)は、“段階的に変化する”ことが読み取れるから、上記(ア)、(イ)の記載から、引用文献2には、「クワッドレベルセル(QLC)NANDフラッシュメモリセルの読み出しサイクル602において、QLC方式を使用して符号化されたメモリのLP、UP、およびXPを読み取るために適用される段階的に変化する各読み取りレベル(R2、R4、R6、R8、R10、R12、およびR14)が単一のセンシング・フェーズで適用され、これにより、3つのページの読み出しが1つのサイクル中に実行されるため、各々が1つのページを読み出す3つの個別の読み出しサイクルの場合に比べて電力と時間のオーバーヘッドが低減されること」(以下、「引用文献2記載事項」という。)が記載されていると認められる。
エ 引用文献3の記載事項
原査定の拒絶の理由で引用された本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、特開2017-224370号公報(平成29年12月21日公開。以下「引用文献3」という。)には、図面とともに、次の記載がある。
(ア)「【技術分野】
【0001】
実施形態は半導体記憶装置及びメモリシステムに関する。
【背景技術】
【0002】
半導体記憶装置としてNAND型フラッシュメモリが知られている。」
(イ)「【0203】
[5-1]動作
[5-1-1]半導体記憶装置1の読み出し動作
まず、半導体記憶装置1の読み出し動作について説明する。本実施形態に係る半導体記憶装置1の読み出し動作では、複数のプレーンに対するsequential readingを実行するマルチプレーンリードにおいて、読み出しデータが確定したページからデータを出力させる。以降の説明において、このような読み出し動作のことを第4読み出し動作と呼ぶ。
【0204】
この第4読み出し動作に対応する波形の一例は、図30に示すものとなる。図30には、TLC方式においてプレーン<0>及び<1>に対するsequential readingを実行する場合の一例が示され、各読み出し動作時においてプレーン<0>及び<1>にそれぞれ対応する選択ワード線WLsel<0>及び<1>に印加される電圧と、制御信号STBの波形が示されている。
【0205】
図30に示すようにロウデコーダ12A及び12Bはそれぞれ、選択ワード線WLsel<0、1>に対して読み出し電圧AR、BR、CR、DR、ER、FR、及びGRを順に印加する。本例ではこの読み出し電圧のうち、電圧AR及びERが下位ページ読み出しに対応し、電圧BR、DR、及びFRが中位ページ読み出しに対応し、電圧CR及びGRが上位ページ読み出しに対応している。
【0206】
シーケンサ16は、選択ワード線WLselに各読み出し電圧が印加されている間に、それぞれ制御信号STBをアサートする。すると各センスアンプユニットSAUは、信号STBがアサートされたタイミングで対応するビット線BLに読み出されたデータを判定し、このデータをラッチ回路SDLに保持する。
【0207】
このように各読み出し電圧によって読み出され、ラッチ回路SDLに保持された読み出しデータは、他のラッチ回路に転送される。尚、本実施形態においてセンスアンプユニットSAUが備えるラッチ回路は、各データレベルの演算に使用する読み出しデータを全て保持するために、センス用のラッチ回路SDLとデータ転送用のラッチ回路XDL以外に、例えば7個のラッチ回路が設けられる。このラッチ回路の個数はこれに限定されず、例えば読み出し動作の途中で演算をすることにより、必要なラッチ回路の個数を抑えることが出来る。
【0208】
本例において、下位ページ読み出しは電圧ERによりデータが読み出された後の演算を終えたタイミングで終了し、中位ページ読み出しは電圧FRによりデータが読み出された後の演算を終えたタイミングで終了し、上位ページ読み出しは電圧FRによりデータが読み出された後の演算を終えたタイミングで終了する。」
(ウ)「図30
[図:0001412893000006.jpg]
」
(エ)引用文献3記載事項
上記(ウ)の図30の記載から、読み出し電圧AR、BR、CR、DR、ER、FR、及びGRは、“段階的に変化する”ことが読み取れるから、上記(ア)~(ウ)の記載から、引用文献3には、「NAND型フラッシュメモリの複数のプレーンに対するsequential readingを実行するマルチプレーンリードでは、例えばTLC方式の場合、選択ワード線WLsel<0、1>に対して段階的に変化する読み出し電圧AR、BR、CR、DR、ER、FR、及びGRを順に印加することで、下位ページ、中位ページ、及び上位ページの読み出しを行うこと」(以下、「引用文献3記載事項」という。)が記載されていると認められる。
オ 引用文献4の記載事項
原査定の拒絶の理由で引用された本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、特開2018-45754号公報(平成30年3月22日公開。以下「引用文献4」という。)には、図面とともに、次の記載がある。
(ア)「【0095】
・・・(中略)・・・コマンド“80h”は、半導体記憶装置10に対して書き込み動作を命令するコマンドである。・・・(以下省略)」
(イ)「【0097】
・・・(中略)・・・コマンド“10h”は、半導体記憶装置10に対して書き込み動作の実行を指示するコマンドである。」
(ウ)「【0103】
・・・(中略)・・・コマンド“04h”は、続いて受信するデータDATが4ページ目の書き込みデータであることを示すコマンドである。・・・(以下省略)」
(エ)「【0133】
[2]第2実施形態
次に、第2実施形態に従ったメモリシステム1について説明する。本実施形態に従ったメモリシステム1は、第1書き込み動作で3ページの書き込みを実行し、第2書き込み動作で3ページのIDLを実行するものである。以下に、第1実施形態と異なる点を説明する。」
(オ)「【0141】
(ステップS53)
半導体記憶装置10は、コントローラ20から第3コマンドセットを受信すると、レディビジー信号RBnを“L”レベルにして、ワード線WL0を選択した第1書き込み動作を実行する。本実施形態における第1書き込み動作の概略を図19に示す。図19は、第1書き込み動作によるメモリセルの閾値分布の変化を示している。図19に示すように第1書き込み動作では半導体記憶装置10が、コントローラ20から入力された第1LowerページデータTL1、第1MiddleページデータTM1、及び第1UpperページデータTU1に基づいた、3ページの書き込み動作を実行する。」
(カ)「【0154】
(ステップS61)
半導体記憶装置10は、コントローラ20から第2コマンドセット(当審注:「第2コマンドセット」は、「第4コマンドセット」の誤記と認められる。)を受信すると、レディビジー信号RBnを“L”レベルにして、ワード線WL0を選択した第2書き込み動作を実行する。本実施形態における第2書き込み動作の概略を図20に示す。図20は、第2書き込み動作によるメモリセルの閾値分布の変化を示している。図20に示すように本実施形態における第2書き込み動作において半導体記憶装置10は、まずInternal data load(IDL)を実行する。
【0155】
本実施形態におけるIDLでは、シーケンサ14が、電圧M1R、M2R、M3R、M4R、M5R、M6R、及びM7Rを用いた読み出し動作を実行する。電圧M1Rは電圧V1以上且つ電圧VM1以下であり、センスアンプ部SAは電圧M1Rを用いた読み出し動作によりメモリセルトランジスタMTの閾値電圧が電圧M1R未満か否かを判定する。電圧M2Rは電圧V3以上且つ電圧VM2以下であり、センスアンプ部SAは電圧M2Rを用いた読み出し動作によりメモリセルトランジスタMTの閾値電圧が電圧M2R未満か否かを判定する。電圧M3Rは、電圧V5以上且つ電圧VM3以下であり、センスアンプ部SAは電圧M3Rを用いた読み出し動作によりメモリセルトランジスタMTの閾値電圧が電圧M3R未満か否かを判定する。以下、同様である。
【0156】
これにより、第1書き込み動作によって書き込まれた“111”データ、“110”データ、“100”データ、“101”データ、“001”データ、“000”データ、“010”データ、及び“011”データが、センスアンプモジュールSAU内のラッチ回路に復元される。具体的には、図17に示すようにデータDAT0の第1LowerページデータTL1、第1MiddleページデータTM1、及び第1UpperページデータTU1がそれぞれ、ラッチ回路BDL、CDL、及びDDLに転送される。
【0157】
そして半導体記憶装置10は、IDLにより読み出された第1LowerページデータTL1、第1MiddleページデータTM1、及び第1UpperページデータTU1と、コントローラ20から入力された第2SingleページデータSL2とに基づいた、4ページの書き込み動作を実行する。」
(キ)「【0170】
以降の動作は、ステップS57~S72と同様の動作が繰り返される。そして、最後の4ページのデータに対応する第2書き込み動作が終了すると、メモリシステム1は書き込み動作を終了する。
<コマンドシーケンスについて>
次に、図21及び図22を用いて、上述した書き込み動作におけるコマンドシーケンス及び波形の詳細について説明する。図21は図16に対応するコマンドシーケンスを示し、半導体記憶装置10に入力される入出力信号I/Oを示している。図22は第1及び第2書き込み動作の波形を示し、選択ワード線WLに印加される電圧を示している。
【0171】
図21に示すように、ステップS52においてまずコントローラ20は、コマンド“01h”と、コマンド“80h”と、ワード線WL0を指定するアドレス情報ADDと、第1LowerページデータTL1に対応するデータDAT0と、コマンド“xyh”とを、順に半導体記憶装置10に送信する。コマンド“xyh”がコマンドレジスタ12に格納されると、シーケンサ14はレディビジー信号RBnを“L”レベルにして、ラッチ回路XDLに保持された書き込みデータを例えばラッチ回路ADLに転送させる。
【0172】
そして、レディビジー信号RBnが“H”レベルになると、コントローラ20はコマンド“02h”と、コマンド“80h”と、ワード線WL0を指定するアドレス情報ADDと、第1MiddleページデータTM1に対応するデータDAT0と、コマンド“xyh”とを、順に半導体記憶装置10に送信する。コマンド“xyh”がコマンドレジスタ12に格納されると、シーケンサ14はレディビジー信号RBnを“L”レベルにして、ラッチ回路XDLに保持された書き込みデータを例えばラッチ回路BDLに転送させる。
【0173】
そして、レディビジー信号RBnが“H”レベルになると、コントローラ20はコマンド“03h”と、コマンド“80h”と、ワード線WL0を指定するアドレス情報ADDと、第1UpperページデータTU1に対応するデータDAT0と、コマンド“10h”とを、順に半導体記憶装置10に送信する。
【0174】
上述したコマンド“01h”からコマンド“10h”までのグループが、第3コマンドセットに相当する。コマンド“10h”がコマンドレジスタ12に格納されると、シーケンサ14はレディビジー信号RBnを“L”レベルにして、ラッチ回路XDLに保持された書き込みデータを例えばラッチ回路CDLに転送させ、第1書き込み動作を実行する(ステップS53)。図示するtProg(TLC)は、第1書き込み動作の処理期間に相当する。この第1書き込み動作における波形の一例が、図22に示されている。図22に示すように、本実施形態における第1書き込み動作の波形は、第1実施形態で説明した図12に示された第1書き込み動作の波形と同様である。
【0175】
その後、ステップS57においてコントローラ20は、ワード線WL1を選択するアドレス情報ADDとデータDAT1とを含む第3コマンドセットを発行して半導体記憶装置10に送信する。半導体記憶装置10は、第3コマンドセットに含まれたコマンド“10h”がコマンドレジスタ12に格納されると、ワード線WL1を選択した第1書き込み動作を実行する(ステップS58)。
【0176】
その後、ステップS60においてコントローラ20は、コマンド“04h”と、コマンド“80h”と、ワード線WL0を指定するアドレス情報ADDと、第2SingleページデータSL2に対応するデータDAT0と、コマンド“10h”とを、順に半導体記憶装置10に送信する。このコマンド“04h”からコマンド“10h”までのグループが、第4コマンドセットに相当する。コマンド“10h”がコマンドレジスタ12に格納されると、シーケンサ14はレディビジー信号RBnを“L”レベルにして、ラッチ回路XDLに保持された書き込みデータを例えばラッチ回路ADLに転送させ、第2書き込み動作を実行する(ステップS61)。図示するtProg(QLC)は、第2書き込み動作の処理期間に相当する。この第2書き込み動作における波形の一例が、図22に示されている。
【0177】
図22に示すように、まずロウデコーダ16は選択ワード線WLに対して電圧M1R、M2R、M3R、M4R、M5R、M6R、及びM7Rを順に印加する。この動作がIDLに対応し、センスアンプモジュール17は、選択ワード線WLに接続されたメモリセルトランジスタMTに記憶された3ページのデータを読み出す。読み出された3ページのデータは、例えばラッチ回路BDL、CDL、及びDDLに保持される。続けてシーケンサ14は、ラッチ回路ADL、BDL、CDL、及びDDLに保持された4ページのデータに基づいて、プログラムループを繰り返す。第2書き込み動作におけるプログラムループは、第1実施形態で図12を用いて説明した第2書き込み動作のプログラムループと同様である。また、第1及び第2書き込み動作におけるプログラム電圧及びΔVpgmの大小関係も第1実施形態と同様のため、説明を省略する。」
(ク)「図19
[図:0001412893000007.jpg]
」
(ケ)「図20
[図:0001412893000008.jpg]
」
(コ)「図21
[図:0001412893000009.jpg]
」
(サ)「図22
[図:0001412893000010.jpg]
」
(シ)引用文献4記載事項1
上記(コ)の図22の記載から、電圧M1R、M2R、M3R、M4R、M5R、M6R、及びM7Rは、“段階的に変化する”ことが読み取れるから、上記(エ)~(カ)、(ク)~(サ)の記載から、引用文献4には、「第1書き込み動作で3ページの書き込みを実行し、第2書き込み動作で3ページのIDLを実行するメモリシステム1において、第1書き込み動作では半導体記憶装置10が、コントローラ20から入力された第1LowerページデータTL1、第1MiddleページデータTM1、及び第1UpperページデータTU1に基づいた、3ページの書き込み動作を実行し、第2書き込み動作において半導体記憶装置10は、まずInternal data load(IDL)を実行し、IDLでは、シーケンサ14が、段階的に変化する電圧M1R、M2R、M3R、M4R、M5R、M6R、及びM7Rを用いた読み出し動作を実行し、これにより、第1書き込み動作によって書き込まれたデータが、センスアンプモジュールSAU内のラッチ回路に復元されること」(以下、「引用文献4記載事項1」という。)が記載されていると認められる。
(ス)引用文献4記載事項2
上記(コ)及び(サ)の図21、図22の記載から、“第4コマンドセットにより、データDAT0(SL2)が受信され、続いてコマンド“10h”が受信されると、第2書き込み動作(tProg(QLC))のIDL(先読み動作)が開始されること”が読み取れる。
したがって、上記(ア)~(オ)、(ク)~(サ)の記載から、引用文献4には、「「コマンド“04h”(続いて受信するデータDATが4ページ目の書き込みデータであることを示すコマンド)」と、「コマンド“80h”(半導体記憶装置10に対して書き込み動作を命令するコマンド)」と、「ワード線WL0を指定するアドレス情報ADD」と、「第2SingleページデータSL2(データDAT0)」と、「コマンド“10h”(半導体記憶装置10に対して書き込み動作の実行を指示するコマンド)」からなる「第4コマンドセット」により、「第2SingleページデータSL2(データDAT0)」が受信され、これに続いて「コマンド“10h”」がコマンドレジスタ12に格納されると、シーケンサ14は第2書き込み動作(tProg(QLC))のIDL(先読み動作)を開始すること」(以下、「引用文献4記載事項2」という。)が記載されていると認められる。
カ 参考文献1の記載事項
本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、特開2010-109232号公報(平成22年5月13日公開。以下「参考文献1」という。)には、図面とともに、次の記載がある。
「【技術分野】
【0001】
この発明は、半導体集積回路装置に関し、特に、データを保持する部分を有する半導体集積回路装置に関する。より特定的には、この発明は、スタティック・ランダム・アクセス・メモリ(SRAM)のメモリセルのデータ保持特性を改善するための構成に関する。」
「【0136】
なお、上述の説明においては、このラッチ回路208は、フラッシュメモリと同一半導体基板上に集積化されるロジック回路(202)に含まれるように示している。しかしながら、たとえばフラッシュメモリ内において書込データをラッチするレジスタ回路などが設けられており、そのレジスタ回路のラッチの記憶ノードに対し、フラッシュメモリセルの電極配線と同一配線層の配線を付加容量として利用してもよい。」
キ 参考文献2の記載事項
本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、特開2006-344277号公報(平成18年12月21日公開。以下「参考文献2」という。)には、図面とともに、次の記載がある。
「【技術分野】
【0001】
この発明は、半導体装置内において内部電圧を発生する回路に関し、特に、不揮発性半導体記憶装置においてデコード回路へ与えられる制御電圧を発生するための内部電圧発生回路に関する。より特定的には、この内部電圧のレベル調整を行なうための電圧レベル調整の構成に関する。」
「【0030】
メモリセルアレイ1においては、書込回路5からの書込データをラッチする書込レジスタ回路が通常設けられ、この書込データレジスタに格納された書込データに従って、データの書込が行なわれる。この書込データレジスタについては、図面を簡略化するために示していない。」
ク 参考文献3の記載事項
本願の出願前に頒布された又は電気通信回線を通じて公衆に利用可能となった引用文献である、特開平5-204346号公報(平成5年8月13日公開。以下「参考文献3」という。)には、図面とともに、次の記載がある。
「【0001】
【産業上の利用分野】本発明は、複数の表示対象体をディスプレイ画面に表示するよう制御する表示対象体の表示制御処理方式に関し、特に、フレキシブルな表示対象体の表示処理を実現できるようにする表示対象体の表示制御処理方式に関するものである。」
「【0016】図5に示す実施例の重畳順位種別表示回路52は、フリップフロップ回路の組み合わせから構成されて、プロセッサ1から与えられる8ビットデータ(DI0~DI7)をラッチタイミング信号に従ってラッチするレジスタ回路521と、レジスタ回路521のラッチデータ(DO0~DO7)の下位2ビットをデコードして、どの重畳順位種別がプロセッサ1より設定されたのかを重畳回路53に表示するデコーダ522とから構成されるものを開示してある。」
(3)引用発明との対比
本件補正発明と引用発明を対比する。
ア 構成要件A、B6、Cについて
(ア)引用発明の「NANDフラッシュメモリアレイ200」は、構成要件Aの「フラッシュ・メモリ・アレイ」に相当する。
(イ)引用発明の「ストレージデバイスコントローラ118、メモリ116、および/またはメモリモジュール122Aなどの任意の適切なロジック」(以下、“任意の適切なロジック”と略称する。)は、「フロー700」に係る制御を実行するロジックを備えているといえるので、後述する相違点を除いて構成要件B6の「制御ロジック部」に相当する。
(ウ)引用発明の「ストレージデバイス106A」は、1つまたは複数のNANDフラッシュメモリアレイ200から構成されるメモリモジュール122Aを含むものであるから、“フラッシュ・メモリ・デバイス”といい得るものである。
(エ)そして、引用発明の「ストレージデバイス106A」は、「NANDフラッシュメモリアレイ200」と“任意の適切なロジック”とを備えるものであるから、上記(ア)~(ウ)の検討を踏まえると、引用発明の「ストレージデバイス106A」は、後述する相違点を除いて構成要件A、B6、及びCの「フラッシュ・メモリ・アレイと、」「制御ロジック部と、」「を備える、フラッシュ・メモリ・デバイス」に相当する。
イ 構成要件B1~B6について
構成要件B1~B5は、構成要件B6の「制御ロジック部」の詳細な構成を特定していることから、構成要件B1~B5を、構成要件B6と併せて対比する。
(ア)構成要件B1、B6について
引用発明の“任意の適切なロジック”は、「フロー700」に係る制御を実行するものであるところ、当該「フロー700」は、
「n1:702で、1つ以上の下位ページがロードされ、
n2:704で、前記下位ページは第1のプログラミングパスでプログラムされ、
n3:706では、データロード動作に関連してアドレスが受信され、
n4:708において、受信したアドレスに関連付けられたメモリセルに格納された下位ページが、先読み動作において読み出され、
n5:710では、データロード動作中に上位ページがロードされ、
n6:712で、上位ページが第2のプログラミングパスでプログラムされる」というものであるから、「NANDフラッシュメモリアレイ200」の「メモリセル202」に係る制御を実行するものである。
そうすると、引用発明の「NANDフラッシュメモリアレイ200」に係る制御を実行する“任意の適切なロジック”が、当該制御を実行するために、「NANDフラッシュメモリアレイ200」に“結合され”ていることは自明である。
したがって、引用発明の“任意の適切なロジック”は、構成要件B1、B6の「前記フラッシュ・メモリ・アレイに結合され」る「制御ロジック部」に相当する。
(イ)構成要件B2、B6について
引用発明の「NANDフラッシュメモリアレイ200」を構成する「複数の不揮発性メモリセル202」は、構成要件B2の「前記フラッシュ・メモリ・アレイの複数のメモリセル」に相当する。
そして、引用発明の「各メモリセル202は、SLC、MLC、TLC、QLC等の符号化方式に従ってプログラムすることができ」る(構成d)ものであって、「下位ページ(複数可)は、第1のプログラミングパスでプログラムされる1つ以上のページを指し、上位ページ(複数可)は、1つ以上の後続のプログラミングパスでプログラムされる1つ以上のページを指し、QLC方式において、下位ページ(例えば、LP、UP、およびXP)が第1のプログラミングパスでプログラムされ、上位ページ(例えば、TP)が第2のプログラミングパスでプログラムされ」る(構成g)ものであるから、引用発明の「第1のプログラミングパス」は、いわゆる“2パスプログラミング”における“1回目”のプログラミングパスである点で構成要件B2の「第1のプログラミングパス」に相当し、また、引用発明では、“任意の適切なロジック”が「第1のプログラミングパス」で下位ページ(例えば、LP、UP、およびXP)に“従って”、「NANDフラッシュメモリアレイ200」を構成する「複数の不揮発性メモリセル202」をプログラムしているといえるから、引用発明の“下位ページ(例えば、LP、UP、およびXP)のデータ”は、構成要件B2の「第1のプログラミングパス」でプログラムされる「少なくとも1つの第1のページデータ」に相当する。
したがって、上記アの検討も踏まえると、引用発明の“任意の適切なロジック”は、構成要件B2、B6の「第1のプログラミングパスで、少なくとも1つの第1のページデータに従って前記フラッシュ・メモリ・アレイの複数のメモリセルをプログラム」する「制御ロジック部」に相当する。
(ウ)構成要件B3、B6について
a 引用発明の構成n2には「704で、前記下位ページは第1のプログラミングパスでプログラムされ」と記載され、同n4には「メモリセルに格納された下位ページが、先読み動作において読み出され」と記載されていることから、引用発明の「先読み動作」は、「第1のプログラミングパス」でプログラムされ、メモリセルに格納された「下位ページ」を読み出すものである。
そして、上記(イ)より、引用発明の「第1のプログラミングパスでプログラムされ」た“下位ページのデータ”は、構成要件B2の「少なくとも1つの第1のページデータ」に相当するものであるから、引用発明において、「第1のプログラミングパス」でプログラムされ、メモリセルに格納された“下位ページのデータ”を先読み動作において読み出すことは、構成要件B3の「前記第1のプログラミングパスでプログラムされた前記メモリセルから」「前記少なくとも1つの第1のページデータを検知」することに相当する。
b 上記aの検討を踏まえると、引用発明の「先読み動作において読み出され」る“下位ページのデータ”は、構成要件B3の(検知される)「前記少なくとも1つの第1のページデータ」に相当する。
また、引用発明の「第2のプログラミングパス」は、“2パスプログラミング”において、第1のプログラミングパスでプログラムされなかった残りのページ(上位ページ(例えばTP))をプログラムするためのプログラミングパスであるから、構成要件B3の「第2のプログラミングパス」に相当する。
そして、引用発明の「メモリモジュール122A」は、「先読み動作中に読み取られたデータを格納することができ、例えばラッチである1つまたは複数の“メモリエレメントセット”を含む」(構成i)ものであり、構成lによれば、「データロード動作と先読み動作が完了すると、メモリモジュール122Aの“メモリエレメントセット”に格納されたページデータに基づいて、第2のプログラミングパスを実行する」ものであるから、引用発明において、「先読み動作中に読み取られたデータ」は、「第2のプログラミングパス」の“前に”、“メモリエレメントセット”に“保存”されているといえる。
c 引用発明の「先読み動作中に読み取られたデータを格納することができ、例えばラッチである1つまたは複数のメモリエレメントセット」は、“ラッチ機能を有する記憶素子”であるといえる。一方、構成要件B3の「レジスタ回路」も、本願明細書の段落0027の「検知されたメモリセル172の情報記憶状態が直接ロードされて、内部レジスタIR1内にラッチされる」との記載によれば、“ラッチ機能を有する記憶素子”であるといえる。そうすると、引用発明の「1つまたは複数のメモリエレメントセット」と構成要件B3の「レジスタ回路」とは、“ラッチ機能を有する記憶素子”である点で共通する。
そして、引用発明の「メモリエレメントセット」は、「メモリモジュール122A」に含まれ(構成i)るものであるから、「メモリエレメントセット」は、「ストレージデバイス106A」“内”にあるといえる。
したがって、引用発明の「ストレージデバイス106A」“内”の「メモリエレメントセット」と構成要件B3の「フラッシュ・メモリ・デバイス内の第1のレジスタ回路」とは、“フラッシュ・メモリ・デバイス内のラッチ機能を有する記憶素子”である点で共通する。
d 上記a~cの検討と、上記アの検討を踏まえると、引用発明の“任意の適切なロジック”と構成要件B3、B6の「ホストコントローラからの読み出しコマンドなしで、前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存」する「制御ロジック部」とは、 「前記第1のプログラミングパスでプログラムされた前記メモリセルから前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前にフラッシュ・メモリ・デバイス内のラッチ機能を有する記憶素子に保存」する「制御ロジック部」である点で共通している。
(エ)構成要件B4、B6について
引用発明は、先読み動作において「段階的ランピング検知手法」を用いることは記載されていないことから、引用発明と本件補正発明とは、引用発明が構成要件B4、B6に相当する構成を備えない点で相違する。
(オ)構成要件B5、B6について
引用発明は、「データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行する」(構成l)ものであるところ、引用発明の先読み動作により読み出される“下位ページのデータ”は、上記(ウ)bの検討を踏まえれば、構成要件B5の「前記少なくとも1つの第1のページデータ」に相当する。
また、引用発明の「データロード動作」に係る“上位ページのデータ”は、「第2のプログラミングパスにおいて、“下位ページのデータ”とともにプログラムされるデータ(構成n5、n6)であるから、構成要件B5の「第2のページデータ」に相当する。
そして、「データロード動作と先読み動作が完了すると、メモリモジュール122Aのメモリエレメントセットに格納されたページデータに基づいて、第2のプログラミングパスを実行する」(構成l)ことは、“第2のプログラミングパス”で、“先読み動作に係る下位ページのデータ”及び“データロード動作に係る上位ページのデータ”に“従って”、“メモリセルをプログラムする”ことに他ならない。
そうすると、引用発明の“任意の適切なロジック”は、構成要件B5、B6の「前記第2のプログラミングパスで、前記少なくとも1つの第1のページデータ及び第2のページデータに従って、前記メモリセルをプログラムするように構成された」「制御ロジック部」に相当する。
上記ア、イの検討から、本件補正発明と引用発明との一致点及び相違点は、次のとおりである。
[一致点]
「 フラッシュ・メモリ・アレイと、
前記フラッシュ・メモリ・アレイに結合され、第1のプログラミングパスで、少なくとも1つの第1のページデータに従って前記フラッシュ・メモリ・アレイの複数のメモリセルをプログラムし、
前記第1のプログラミングパスでプログラムされた前記メモリセルから前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前にフラッシュ・メモリ・デバイス内のラッチ機能を有する記憶素子に保存し、かつ、
前記第2のプログラミングパスで、前記少なくとも1つの第1のページデータ及び第2のページデータに従って、前記メモリセルをプログラムするように構成された制御ロジック部と、
を備える、フラッシュ・メモリ・デバイス。」
[相違点1]
本件補正発明では、前記第1のプログラミングパスでプログラムされた前記メモリセルから、前記少なくとも1つの第1のページデータを検知する動作が、「ホストコントローラからの読み出しコマンドなしで」実行されるのに対して、引用発明には、先読み動作が、「ホストコントローラからの読み出しコマンドなしで」実行されることは特定されていない点。
[相違点2]
本件補正発明は、第1のプログラミングパスでプログラムされたメモリセルから、少なくとも1つの第1のページデータを検知する際、「段階的ランピング検知手法」を用いるものであり、「前記段階的ランピング検知手法では、前記第1のプログラミングパスでプログラムされた前記メモリセルの状態を検知するために、電圧レベルを徐々に増加させるようにして、互いに異なる複数の前記電圧レベルを前記第1のプログラミングパスでプログラムされた前記メモリセルに連続的に印加」するものであるのに対して、引用発明では、先読み動作をどのような手法で実行するかについて具体的に特定されていない点。
[相違点3]
メモリセルから検知した第1のページデータを保存するラッチ機能を有する記憶素子が、本件補正発明では「第1のレジスタ回路」であるのに対して、引用発明では、「例えばラッチである1つまたは複数のメモリエレメントセット」であって、「レジスタ回路」ではない点。
(4)判断
上記相違点について検討する。
ア 相違点1について
引用発明の構成jの「第2のプログラミングパスのための先読み動作およびデータロード動作の例示的なシーケンス」によれば、引用発明は、ストレージデバイスコントローラ118によってホストから第1のデータロードコマンド(動作510~514)と第2のデータロードコマンド(動作515~519)が受信され、第2のデータロードコマンドと同時に「LPデータの先読み(READ LP DATA508)」が発生するものであるところ、第1のデータロードコマンドの内容は、それぞれ、「データロードコマンドの開始を示す信号(例えば、80h命令などのデータ入力コマンド)」(動作510)、「上位ページのアドレス(XPのアドレス)」(動作511)、「上位ページ(例えば、XP)を構成するデータ」(動作512および513)、「データロードコマンドの終了を示す信号(例えば、l0h命令などのプログラムコマンド)」(514)であり、また、第2のデータロードコマンドの内容は、それぞれ、「データロードコマンドの開始を示す信号(例えば、80h命令)」(動作515)、「異なる上位ページのアドレス」(動作516)、「UPを構成するデータ」(動作517および518)、「データロードコマンドの終了を示す信号(例えば、10h命令)」(519)であるから、ホストからの第1のデータロードコマンド及び第2のデータロードコマンドには、「ホストコントローラからの読み出しコマンド」は含まれていない。
また、引用発明の構成kによれば、先読み動作は、任意の適切な時間にトリガされてもよいものであり、例えば、上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき、等にトリガされることが例示されている。
しかしながら、これらの例示には、ホストコントローラからの「読み出しコマンド」を契機として「先読み動作」を開始することは含まれていない。
そうすると、引用発明は、「ホストコントローラからの読み出しコマンドなしで」、「先読み動作」の実行を開始するものであるということができるから、相違点1に係る事項は、実質的な相違点とはいえない。
なお、本願明細書の段落0021の「LPデータ、MPデータ、及びUPデータがメモリセル172内にプログラムされて、ワード線が選択された後、制御ロジック部130は、それぞれLPデータ、MPデータ、及びUPデータを表す、第1のプログラミングパスでプログラムされたメモリセル172の情報記憶状態を検知するための先読み動作を、自動的に(即ち、ホストコントローラ10からの読み出しコマンドなしで)実行するように動作可能となる。」との記載や、本願の図5のタイミングチャートの記載から、追加ページ(XP)データの受信のビジーが終了したタイミングにおいて自動的に検知(先読み動作)を開始することと限定的に解釈できる余地もあるが、仮にそのように解釈したとしても、引用発明の先読み動作は、任意の適切な時間にトリガされてもよいものであり、例えば引用文献4には、「コマンド“04h”(続いて受信するデータDATが4ページ目の書き込みデータであることを示すコマンド)」と、「コマンド“80h”(半導体記憶装置10に対して書き込み動作を命令するコマンド)」と、「ワード線WL0を指定するアドレス情報ADD」と、「第2SingleページデータSL2(データDAT0)」と、「コマンド“10h”(半導体記憶装置10に対して書き込み動作の実行を指示するコマンド)」からなる「第4コマンドセット」により、「第2SingleページデータSL2(データDAT0)」が受信され、これに続いて「コマンド“10h”」がコマンドレジスタ12に格納されると、シーケンサ14は第2書き込み動作(tProg(QLC))のIDL(先読み動作)を開始すること」(引用文献4記載事項2)が記載されている。
してみれば、引用発明における「先読み動作は、任意の適切な時間にトリガされてもよい」という示唆と、引用文献4記載事項2とに基づいて、引用発明の上位ページ(例えば、UP、XP、またはTP)のアドレスが受信されたとき、上位ページ(例えば、UP、XP、またはTP)のすべてのデータが受信されたとき、データロードコマンドの終了を意味する命令(例えば、l0h命令)が受信されたとき、ロードメモリエレメントセットからの上位ページ(例えば、UP、XP、またはTP)のコピーが完了したとき、異なる上位ページのアドレスが受信された後に上位ページのデータ入力コマンド(例えば、80h)が受信されたとき等に自動的に先読み動作を開始するように構成することも当業者が容易に想到し得たことである。
イ 相違点2について
フラッシュメモリのTLCやQLCで符号化されたデータの検知手法として、検知電圧を段階的に印加する手法(以下、「段階的検知手法」という。)は、例えば引用文献2に「クワッドレベルセル(QLC)NANDフラッシュメモリセルの読み出しサイクル602において、QLC方式を使用して符号化されたメモリのLP、UP、およびXPを読み取るために適用される段階的に変化する各読み取りレベル(R2、R4、R6、R8、R10、R12、およびR14)が単一のセンシング・フェーズで適用され、これにより、3つのページの読み出しが1つのサイクル中に実行されるため、各々が1つのページを読み出す3つの個別の読み出しサイクルの場合に比べて電力と時間のオーバーヘッドが低減されること」(引用文献2記載事項。上記(2)ウ(ウ)を参照。)が記載され、また、引用文献3に「NAND型フラッシュメモリの複数のプレーンに対するsequential readingを実行するマルチプレーンリードでは、例えばTLC方式の場合、選択ワード線WLsel<0、1>に対して段階的に変化する読み出し電圧AR、BR、CR、DR、ER、FR、及びGRを順に印加することで、下位ページ、中位ページ、及び上位ページの読み出しを行うこと」(引用文献3記載事項。上記(2)エ(エ)を参照。)が記載されているように本願の出願前に当該技術分野における周知技術であるものと認められる。また、2パスプログラミングにおける先読み動作において「段階的検知手法」を用いることも、例えば引用文献4に「第1書き込み動作で3ページの書き込みを実行し、第2書き込み動作で3ページのIDLを実行するメモリシステム1において、第1書き込み動作では半導体記憶装置10が、コントローラ20から入力された第1LowerページデータTL1、第1MiddleページデータTM1、及び第1UpperページデータTU1に基づいた、3ページの書き込み動作を実行し、第2書き込み動作において半導体記憶装置10は、まずInternal data load(IDL)を実行し、IDLでは、シーケンサ14が、段階的に変化する電圧M1R、M2R、M3R、M4R、M5R、M6R、及びM7Rを用いた読み出し動作を実行し、これにより、第1書き込み動作によって書き込まれたデータが、センスアンプモジュールSAU内のラッチ回路に復元されること」(引用文献4記載事項1。上記(2)オ(シ)を参照。)が記載されているように、本願の出願前に公知の技術である。
そうすると、引用発明において、2パスプログラミングにおける先読み動作の際に、周知の段階的検知手法を採用して、相違点2に係る構成とすることは当業者が容易に想到し得たことである。
ウ 相違点3について
引用発明の「メモリエレメントセット」は、「例えばラッチ」であるところ、「ラッチ機能を有する記憶素子」として「レジスタ回路」を用いることは、例えば参考文献1~3(上記(2)のカ~クを参照。)に記載されているように、本願の出願前に広く知られた周知技術であるから、引用発明の「例えばラッチである1つまたは複数のメモリエレメントセット」をレジスタ回路で構成することは当業者が容易に想到し得たことである。
なお、その際、当該レジスタ回路を「第1のレジスタ回路」と称することは、任意である。
エ そして、上記相違点を総合的に勘案しても、本件補正発明の奏する作用効果は、引用発明、引用文献4に記載の公知技術、及び周知技術の奏する作用効果から予測される範囲内のものに過ぎず、格別顕著なものということはできない。
オ したがって、本件補正発明は、引用発明、引用文献4に記載の公知技術、及び周知技術に基づいて、当業者が容易に発明をすることができたものであり、特許法第29条第2項の規定により、特許出願の際独立して特許を受けることができないものである。
(5)請求人の主張について
請求人は、審判請求書において以下のような主張をしている。
「(d)本願発明と引用発明との対比
本願発明1,6と引用文献1に記載の発明とは、「ホストコントローラからの読み出しコマンドなしで、前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により、前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存」する点、つまりホストコントローラからの読み出しコマンドなしで第2プログラミングパスの前の先読み動作を実行する点で相違する。
すなわち、引用文献1には、第2プログラミングパスで残りのページTPをプログラムするQLCスキームにおいて、データロードオペレーションが終了する前にプリリードを開始する、つまり先読み動作を開始することは記載されているものの、先読み動作をホストコントローラからの読み出しコマンドなしで実行することについては何ら開示も示唆もされていない。
また、引用文献2-4には、NANDフラッシュメモリのQLCスキームにおいて、ページデータをシーケンシャル読み出しすることは記載されているものの、ホストコントローラからの読み出しコマンドなしで先読み動作を行うことについては何ら開示も示唆もされていない。
これに対して、本願発明1,6では、上述のようにホストコントローラからの読み出しコマンドなしで、つまり外部装置から追加的に読み出しコマンドを送信されなくとも、フラッシュ・メモリ・デバイスが自律的に先読み動作を実行するため、第1のプログラミングパスでプログラムされたデータを検知するための読み出しコマンドをホストコントローラが送信する手法と比較して、プログラムされたデータを通常の読み出し動作を通じてメモリセルから検知するのに要する時間を短縮することができる、という顕著な作用効果を奏し得る(翻訳文の段落[0030]~[0033]等参照)。
そして、少なくとも引用文献1-4において、ホストコントローラからの読み出しコマンドなしで先読み動作を実行するという特徴の示唆がなければ、引用文献1-4の組み合わせから上記特徴を採用することは、たとえ当業者であっても容易に想到し得ない。
したがって、本願の請求項1,6に係る発明、及びこれらに従属する請求項2-5,7-10に係る発明は、引用文献1-4に記載された発明に基づいて発明の進歩性を否定されることはないものと思料する。」
しかしながら、先読み動作(第1のページデータの検知動作)が「ホストコントローラからの読み出しコマンドなしで」実行されることは、引用発明に実質的に記載されているか、あるいは、引用発明における示唆と引用文献4記載事項2とに基づいて当業者が容易に想到し得たことであることは、上記(4)アにおいて判断したとおりである。
したがって、請求人の審判請求書における上記主張は採用することができない。
3 本件補正についてのむすび
よって、本件補正は、特許法第17条の2第6項において準用する同法第126条第7項の規定に違反するので、同法第159条第1項の規定において読み替えて準用する同法第53条第1項の規定により却下すべきものである。
よって、上記補正の却下の決定の結論のとおり決定する。
第3 本願発明について
1 本願発明
令和5年4月18日にされた手続補正は、上記のとおり却下されたので、本願の請求項に係る発明は、令和4年9月21日にされた手続補正により補正された特許請求の範囲の請求項1ないし10に記載された事項により特定されるものであるところ、その請求項1に係る発明(以下「本願発明」という。)は、その請求項1に記載された事項により特定される、前記第2[理由]1(2)に記載のとおりのものである。
2 原査定の拒絶の理由
原査定の拒絶の理由は、この出願の請求項1に係る発明は、本願の出願前に頒布された下記の引用文献1に記載された発明及び引用文献2~4に記載された技術に基づいて、その出願前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない、というものである。
引用文献1:国際公開第2018/063901号
引用文献2:米国特許出願公開第2017/0371565号明細書
引用文献3:特開2017-224370号公報
引用文献4:特開2018-45754号公報
3 引用文献
原査定の拒絶の理由で引用された引用文献1~4の記載事項は、前記第2の[理由]2(2)に記載したとおりである。
4 対比・判断
本願発明は、前記第2の[理由]2で検討した本件補正発明から、「前記第1のプログラミングパスでプログラムされた前記メモリセルから段階的ランピング検知手法により前記少なくとも1つの第1のページデータを検知して、前記少なくとも1つの第1のページデータを、第2のプログラミングパスの前に前記フラッシュ・メモリ・デバイス内の第1のレジスタ回路に保存」する動作に係る限定事項を削除したものである。
そうすると、本願発明の発明特定事項を全て含み、さらに他の事項を付加したものに相当する本件補正発明が、前記第2の[理由]2(3)、(4)に記載したとおり、引用発明、引用文献4に記載の公知技術、及び周知技術に基づいて、当業者が容易に発明をすることができたものであるから、本願発明も、引用発明、引用文献4に記載の公知技術、及び周知技術に基づいて、当業者が容易に発明をすることができたものである。
第4 むすび
以上のとおり、本願発明は、特許法第29条第2項の規定により特許を受けることができないから、他の請求項に係る発明について検討するまでもなく、本願は拒絶されるべきものである。
よって、結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
J-PlatPat 審決検索を開く
2023-006335