TW201907406A - 記憶體系統及用於操作半導體記憶體裝置的方法 - Google Patents
記憶體系統及用於操作半導體記憶體裝置的方法 Download PDFInfo
- Publication number
- TW201907406A TW201907406A TW107101432A TW107101432A TW201907406A TW 201907406 A TW201907406 A TW 201907406A TW 107101432 A TW107101432 A TW 107101432A TW 107101432 A TW107101432 A TW 107101432A TW 201907406 A TW201907406 A TW 201907406A
- Authority
- TW
- Taiwan
- Prior art keywords
- page
- memory device
- semiconductor memory
- memory
- programming
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/102—Error in check bits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/1056—Updating check bits on partial write, i.e. read/modify/write
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1072—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in multilevel memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1585—Determination of error values
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Read Only Memory (AREA)
Abstract
一種操作半導體記憶體裝置的方法可包括施加編程脈衝,該編程脈衝用於對包括在半導體記憶體裝置中的第一頁的資料進行程式化。該方法可包括確定編程脈衝的施加次數是否超過第一臨界值。該方法可包括基於編程脈衝的施加次數是否超過第一臨界值的確定結果,對耦接到與第一頁所耦接的字線相同的字線的第二頁執行錯誤位元檢查。
Description
本公開的一方面總體上涉及電子裝置,更具體地講,涉及一種記憶體系統和操作半導體記憶體裝置的方法。
本申請案主張2017年7月6日在韓國智慧財產權局提交的韓國專利申請案第10-2017-0086102號的優先權,其完整內容透過引用併入本文。
記憶體裝置可按照將串水平地佈置到半導體基板的二維結構形成,或者按照將串垂直地佈置到半導體基板的三維結構形成。三維半導體裝置是為了克服二維半導體裝置中的整合度限制而設計出的記憶體裝置,並且可包括在半導體基板上垂直地層疊的多個記憶體單元。
根據本公開的一方面,可提供一種操作半導體記憶體裝置的方法。該方法可包括施加編程脈衝,該編程脈衝用於對包括在半導體記憶體裝置中的第一頁的資料進行程式化。該方法可包括確定編程脈衝的施加次數是否超過第一臨界值。該方法可包括基於編程脈衝的施加次數是否超過第一臨界值的確定結果,對耦接到與第一頁所耦接的字線相同的字線的第二頁執行錯誤位元 檢查。
根據本公開的一方面,可提供一種記憶體系統。該記憶體系統可包括半導體記憶體裝置,該半導體記憶體裝置包括耦接到第一字線的第一頁和耦接到第一字線的第二頁。該記憶體系統可包括被配置為控制半導體記憶體裝置的操作的控制器。該控制器可控制半導體記憶體裝置基於對第一字線施加編程脈衝的次數來對第二頁執行錯誤位元檢查。
根據本公開的一方面,可提供一種記憶體系統。該記憶體系統可包括半導體記憶體裝置,該半導體記憶體裝置包括耦接到第一字線的第一頁和耦接到第一字線的第二頁。該記憶體系統可包括被配置為控制半導體記憶體裝置的操作的控制器。該控制器可控制半導體記憶體裝置基於包括在第二頁中的記憶體單元的閾值電壓由於用於對第一頁進行程式化的編程脈衝被施加到第一字線而改變,來對第二頁執行錯誤位元檢查。
根據本公開的一方面,可提供一種操作半導體記憶體裝置的方法。該方法可包括將編程脈衝施加到耦接到第一頁和第二頁的第一字線,該編程脈衝被施加到第一字線以將資料程式化到包括在半導體記憶體裝置中的第一頁中。該方法可包括確定包括在第二頁中的記憶體單元的閾值是否已從第一值改變為第二值,以及該第二值是否大於用於驗證記憶體單元的狀態的讀取電壓的值。該方法可包括基於閾值是否已改變以及第二值是否大於用於驗證記憶體單元的狀態的讀取電壓的值的確定結果,來對第二頁執行錯誤位元檢查。
50‧‧‧記憶體系統
100‧‧‧半導體記憶體裝置
110‧‧‧記憶體單元陣列
120‧‧‧週邊電路
121‧‧‧位址解碼器
122‧‧‧電壓發生器
123‧‧‧讀取和寫入(讀/寫)電路
124‧‧‧輸出(輸入/輸出)電路/資料輸入/輸出電路
130‧‧‧控制邏輯
131‧‧‧脈衝計數器
135‧‧‧脈衝施加臨界值存儲單元
137‧‧‧狀態暫存器
140‧‧‧介面
200‧‧‧控制器
210‧‧‧隨機存取記憶體/RAM
220‧‧‧記憶體控制器
230‧‧‧錯誤更正塊
1000‧‧‧記憶體系統
1100‧‧‧步驟
1110‧‧‧隨機存取記憶體/RAM
1120‧‧‧處理單元
1130‧‧‧主機介面
1140‧‧‧記憶體介面
1150‧‧‧錯誤更正塊
2000‧‧‧記憶體系統
2100‧‧‧半導體記憶體裝置
2200‧‧‧控制器
3000‧‧‧計算系統
3100‧‧‧中央處理單元
3200‧‧‧RAM
3300‧‧‧使用者介面
3400‧‧‧電源
3500‧‧‧系統匯流排
S110-S140‧‧‧步驟
S210-S240‧‧‧步驟
S310-S330‧‧‧步驟
圖1是示出根據本公開的實施方式的記憶體系統的方塊圖。
圖2是示出圖1的半導體記憶體裝置的結構的方塊圖。
圖3是示出圖2的記憶體單元陣列的實施方式的方塊圖。
圖4是示出圖2的記憶體單元陣列的實施方式的圖。
圖5是示出圖2的記憶體單元陣列的另一實施方式的圖。
圖6是示出圖4的記憶體單元陣列的一部分的電路圖。
圖7是示出圖6的頁與單元串之間的關係的圖。
圖8是示出當編程脈衝被施加時相鄰串組的閾值電壓的變化的圖。
圖9是示出圖2的控制邏輯的實施方式的方塊圖。
圖10是示出根據本公開的實施方式的半導體記憶體裝置的編程處理的圖。
圖11是示出根據本公開的實施方式的半導體記憶體裝置的操作方法的流程圖。
圖12是示出圖11中的檢查錯誤位元的步驟的流程圖。
圖13是示出圖12中的執行故障處理並改變編程位址的步驟的實施方式的流程圖。
圖14是示出記憶體單元陣列的實施方式的示例的電路圖。
圖15是示出圖14的頁與單元串之間的關係的圖。
圖16是示出根據本公開的實施方式的半導體記憶體裝置的編程處理的圖。
圖17是示出包括圖2的半導體記憶體裝置的記憶體系統的方塊圖。
圖18是示出圖17的記憶體系統的應用示例的方塊圖。
圖19是示出包括參照圖18所描述的記憶體系統的計算系統的方塊圖。
在以下詳細描述中,僅示出並描述了本公開的實施方式的特定示例。如本領域技術人員將認識到的,所描述的實施方式可按照各種不同的方式修改,其全部沒有脫離本公開的精神或範圍。因此,附圖和描述本質上將被 視為是例示性的而非限制性的。
在整個說明書中,當元件被稱為“連接”或“耦接”到另一元件時,其可直接連接或耦接到另一元件,或者間接連接或耦接到另一元件,二者間插入一個或更多個中間元件。另外,當元件被稱為“包括”元件時,這指示該元件還可包括另一元件,而非排除另一組件,除非有不同的公開。
實施方式可提供一種可改進可靠性的記憶體系統和操作半導體記憶體裝置的方法。
現在將在下文參照附圖更充分地描述實施方式的示例;然而,它們可按照不同的形式具體實現,不應被解釋為限於本文所闡述的實施方式。相反,提供這些實施方式是為了使得本公開將徹底和完整,並且將向本領域技術人員充分傳達示例實施方式的範圍。
在附圖中,為了例示清晰,尺寸可被誇大。將理解,當元件被稱作在兩個元件“之間”時,它可以是這兩個元件之間的僅有元件,或者還可存在一個或更多個中間元件。相似標號始終表示相似元件。
圖1是示出根據本公開的實施方式的記憶體系統的方塊圖。
參照圖1,記憶體系統50包括半導體記憶體裝置100和控制器200。
半導體記憶體裝置100回應於控制器200的控制而操作。半導體記憶體裝置100包括記憶體單元陣列110和用於驅動記憶體單元陣列110的週邊電路120。記憶體單元陣列110包括多個非易失性記憶體單元。
週邊電路120響應於控制器200的控制而操作。週邊電路120回應於控制器200的控制將資料程式化到記憶體單元陣列110。週邊電路120被配置為從記憶體單元陣列110讀取資料以及擦除記憶體單元陣列110的資料。
在實施方式中,半導體記憶體裝置100的讀取操作和編程操作可 以按照頁為單位執行。半導體記憶體裝置100的擦除操作可以按照記憶體塊為單位執行。
在編程操作中,週邊電路120可從控制器200接收指示編程操作的編程命令、物理塊位址和寫入資料。可通過物理塊位址選擇一個記憶體塊和包括在其中的一頁。週邊電路120可將寫入資料程式化在所選頁中。
在讀取操作中,週邊電路120可從控制器200接收指示讀取操作的命令(以下稱為讀取命令)和物理塊位址。可通過物理塊位址選擇一個記憶體塊和包括在其中的一頁。週邊電路120可從所選頁讀取資料並將所讀取的資料(以下稱為頁數據)輸出到控制器200。
在擦除操作中,週邊電路120可從控制器200接收指示擦除操作的命令和物理塊位址。物理塊位址可指定一個記憶體塊。週邊電路120可擦除與物理塊位址對應的記憶體塊的資料。
半導體記憶體裝置100是非易失性記憶體裝置。在實施方式中,半導體記憶體裝置100可以是快閃記憶體裝置。
控制器200控制半導體記憶體裝置100的總體操作。控制器200被配置為回應於來自外部主機的請求存取半導體記憶體裝置100。
控制器200包括隨機存取記憶體RAM 210、記憶體控制器220和錯誤更正塊230(即,錯誤更正碼(ECC))。
RAM 210回應於記憶體控制器220的控制而操作。記憶體控制器220被配置為控制半導體記憶體裝置100的讀取、寫入、擦除和後臺操作。記憶體控制器220被配置為驅動用於控制半導體記憶體裝置100的固件。在實施方式中,控制器可利用硬體、軟體或其任何組合來實現。
當主機發送讀取請求時,記憶體控制器220可向半導體記憶體裝置100提供讀取命令以識別與讀取請求對應的頁(即,所選頁)的數據。記憶 體控制器220可將包括在讀取請求中的邏輯塊位址轉換為物理塊位址。在實施方式中,記憶體控制器220可執行快閃記憶體轉換層(FTL)的功能。記憶體控制器220可將所生成的物理塊位址與讀取命令一起提供給半導體記憶體裝置100。
回應於讀取命令,半導體記憶體裝置100從所選頁讀取頁數據,並將所讀取的頁數據發送到控制器200。錯誤更正塊230回應於記憶體控制器220的控制確定頁數據中是否包括錯誤。例如,控制器200可根據錯誤更正碼來對頁數據進列解碼。將理解,各種方法可用於錯誤更正碼。例如,將理解,使用諸如博斯-喬赫裡-霍克文黑姆(Bose-Chaudhri-Hocquenghem)碼(BCH碼)、裡德-所羅門(Reed Solomon)碼、海明(Hamming)碼和低密度同位碼(LDPC碼)的各種方法的錯誤更正碼可被使用。當頁數據中包括預定數量或更多的錯誤位元時,解碼可失敗。當頁數據中包括預定數量或更少的錯誤位元時,解碼可成功。
解碼的成功可意味著對應讀取命令通過。解碼的失敗可意味著對應讀取命令失敗。當解碼成功時,控制器200可向主機輸出錯誤已被更正的頁數據。
圖2是示出圖1的半導體記憶體裝置100的結構的方塊圖。
參照圖2,半導體記憶體裝置100可包括記憶體單元陣列110、週邊電路120、控制邏輯130和介面140。
記憶體單元陣列110可通過列線RL耦接到位址解碼器121。在實施方式中,例如,列線RL可包括源極選擇線SSL、字線WL和汲極選擇線DSL。記憶體單元陣列110可通過位元線BL(即,BL1至BLm)、讀取和寫入(讀/寫)電路123和資料線DL耦接到資料輸入和輸出(輸入/輸出)電路124。
記憶體單元陣列110包括多個記憶體塊BLK1至BLKz。多個記憶 體塊BLK1至BLKz通過列線RL耦接到位址解碼器121。多個記憶體塊BLK1至BLKz通過位元線BL1至BLm耦接到讀/寫電路123。多個記憶體塊BLK1至BLKz中的每一個包括多個記憶體單元。在實施方式中,多個記憶體單元是非易失性記憶體單元。在多個記憶體單元當中,耦接到同一字線的記憶體單元被限定為一頁。即,記憶體單元陣列110配置有多頁。
在一些實施方式中,記憶體單元陣列110可包括至少一個記憶體平面。各個記憶體平面可包括多個記憶體塊。包括在記憶體單元陣列110中的記憶體平面將稍後參照圖5來描述。
半導體記憶體裝置100的各個記憶體單元可被配置成用於存儲一位元資料的單級單元(SLC)、用於存儲兩位元資料的多級單元(MLC)、用於存儲三位元資料的三級單元(TLC)或者用於存儲四位元資料的四級單元(QLC)。
週邊電路120可包括位址解碼器121、電壓發生器122、讀/寫電路123和資料輸入/輸出電路124。
週邊電路120驅動記憶體單元陣列110。例如,週邊電路120可驅動記憶體單元陣列120以執行編程操作、讀取操作和擦除操作。
位址解碼器121通過列線RL耦接到記憶體單元陣列110。位址解碼器121被配置為回應於控制邏輯130的控制而操作。位址解碼器121通過設置在半導體記憶體裝置100中的輸入/輸出緩衝器(未示出)來接收位址ADDR。
位址解碼器121被配置為對所接收的位址ADDR中的塊位址進列解碼。位址解碼器121根據所解碼的塊位址在記憶體塊BLK1至BLKz當中選擇至少一個記憶體塊。位址解碼器121被配置為對所接收的位址ADDR中的列位址進列解碼。位址解碼器121可通過根據所解碼的列位址將從電壓發生器122提供的電壓施加到字線WL來選擇所選記憶體塊的至少一條字線WL。
在編程操作中,位址解碼器121可對所選字線施加編程電壓,並且對未選字線施加具有比編程電壓低的層級的通過電壓。在編程驗證操作中,位址解碼器121可對所選字線施加驗證電壓,並且對未選字線施加比驗證電壓高的驗證通過電壓。
在讀取操作中,位址解碼器121可對所選字線施加讀取電壓,並且對未選字線施加比讀取電壓高的通過電壓。
在實施方式中,半導體記憶體裝置100的擦除操作以記憶體塊為單位執行。在擦除操作中輸入到半導體記憶體裝置100的位址ADDR包括塊位址。位址解碼器121可對塊位址進列解碼,並且根據所解碼的塊位址來選擇一個記憶體塊。在擦除操作中,位址解碼器121可對輸入到所選記憶體塊的字線施加接地電壓。
在實施方式中,位址解碼器121可被配置為對發送給其的位址ADDR中的行位址進列解碼。所解碼的行位址DCA可被發送到讀/寫電路123。在實施方式的示例中,位址解碼器121可包括諸如列解碼器、行解碼器和位址緩衝器的組件。
電壓發生器122被配置為利用供應給半導體記憶體裝置100的外部電源電壓來生成多個電壓。電壓發生器122回應於控制邏輯130的控制來操作。
在實施方式中,電壓發生器122可通過調節外部電源電壓來生成內部電源電壓。電壓發生器122所生成的內部電源電壓用作半導體記憶體裝置100的操作電壓。
在實施方式中,電壓發生器122可利用外部電源電壓或內部電源電壓來生成多個電壓。電壓發生器122可被配置為生成半導體記憶體裝置100所需的各種電壓。例如,電壓發生器122可生成多個編程電壓、多個通過電壓、 多個選擇讀取電壓和多個未選讀取電壓。
例如,電壓發生器122可包括用於接收內部電源電壓的多個泵電容器,並且通過回應於控制邏輯130的控制選擇性地啟用多個泵電容器來生成多個電壓。
所生成的多個電壓可由位址解碼器121供應給記憶體單元陣列110。
讀/寫電路123包括第一頁緩衝器PB1至第m頁緩衝器PBm。第一頁緩衝器PB1至第m頁緩衝器PBm通過相應的第一位元線BL1至第m位元線BLm耦接到記憶體單元陣列110。第一頁緩衝器PB1至第m頁緩衝器PBm回應於控制邏輯130的控制而操作。
第一頁緩衝器PB1至第m頁緩衝器PBm與資料輸入/輸出電路124進行資料通信。在編程操作中,第一頁緩衝器PB1至第m頁緩衝器PBm通過資料輸入/輸出電路124和資料線DL來接收待存儲的資料DATA。
在編程操作中,當編程脈衝施加到所選字線時,第一頁緩衝器PB1至第m頁緩衝器PBm可向所選記憶體單元發送通過資料輸入/輸出電路124接收的待存儲的資料DATA。可根據所發送的資料DATA對所選頁的記憶體單元進行程式化。耦接到施加有編程允許電壓(例如,接地電壓)的位元線的記憶體單元可具有增大的閾值電壓。耦接到施加有編程禁止電壓(例如,電源電壓)的位元線的記憶體單元的閾值電壓可被維持。在編程驗證操作中,第一頁緩衝器PB1至第m頁緩衝器PBm通過位元線BL1至BLm從所選記憶體單元讀取頁數據。
在讀取操作中,讀/寫電路123通過位元線BL從所選頁的記憶體單元讀取資料DATA,並且將所讀取資料DATA輸出到資料輸入/輸出電路124。
在擦除操作中,讀/寫電路123可將位元線BL浮置。在實施方式 中,讀/寫電路123可包括行選擇電路。
資料輸入/輸出電路124通過資料線DL耦接到第一頁緩衝器PB1至第m頁緩衝器PBm。資料輸入/輸出電路124回應於控制邏輯130的控制而操作。在編程操作中,資料輸入/輸出電路124可從外部控制器(未示出)接收待存儲的資料DATA。在讀取操作中,資料輸入/輸出電路124向外部控制器輸出從包括在讀/寫電路123中的第一頁緩衝器PB1至第m頁緩衝器PBm發送來的資料。
控制邏輯130可耦接到位址解碼器121、電壓發生器122、讀/寫電路123和資料輸入/輸出電路124。控制邏輯130可被配置為控制半導體記憶體裝置100的總體操作。控制邏輯130可回應於從外部裝置發送來的命令CMD而操作。
介面140可作為半導體記憶體裝置100與外部裝置之間的資料(DATA)通信的介面。根據半導體記憶體裝置100的類型,介面140可包括NAND介面或NOR介面。
圖3是示出圖2的記憶體單元陣列的實施方式的方塊圖。
參照圖3,記憶體單元陣列110包括多個記憶體塊BLK1至BLKz。各個記憶體塊可具有三維結構。各個記憶體塊包括在基板上層疊的多個記憶體單元。所述多個記憶體單元沿著+X、+Y和+Z方向佈置。具有三維結構的各個記憶體塊將參照圖4和圖5來描述。根據本公開的實施方式,各個記憶體塊可具有二維結構。在這種情況下,各個記憶體塊中的多個記憶體單元可沿著+X和+Y方向佈置。
圖4是示出圖2的記憶體單元陣列110的實施方式110_1的圖。
參照圖4,記憶體單元陣列110_1包括多個記憶體塊BLK1至BLKz。在圖4中,為了描述方便,示出了第一記憶體塊BLK1的內部配置,省略了其它記憶體塊BLK2至BLKz的內部配置。將理解,第二記憶體塊BLK2至 第z記憶體塊BLKz也與第一記憶體塊BLK1相同地配置。
第一記憶體塊BLK1包括多個單元串CS11至CS1m和CS21至CS2m。在實施方式中,多個單元串CS11至CS1m和CS21至CS2m中的每一個可按照“U”形狀形成。在第一記憶體塊BLK1中,在列方向(即,+X方向)上佈置m個單元串。在圖4中,示出了在行方向(即,+Y方向)上佈置兩個單元串。然而,這是為了描述方便,將理解,可在行方向上佈置三個單元串。例如,記憶體單元陣列110_1的各個記憶體塊中可包括佈置在行方向(即,+Y方向)上的四個單元串。此外,在本說明書中,佈置在行方向(即,+Y方向)上的m個單元串被指定為一個串組。即,單元串CS11至CS1m可被指定為第一串組,單元串CS21至CS2m可被指定為第二串組。
多個單元串CS11至CS1m和CS21至CS2m中的每一個包括至少一個源極選擇電晶體SST、第一記憶體單元MC1至第n記憶體單元MCn、管電晶體PT以及至少一個汲極選擇電晶體DST。
選擇電晶體SST和DST與記憶體單元MC1至MCn可具有彼此相似的結構。在實施方式中,選擇電晶體SST和DST和記憶體單元MC1至MCn中的每一個可包括溝道層、隧穿絕緣層、電荷存儲層和阻擋絕緣層。在實施方式中,可在各個單元串中設置用於提供溝道層的柱。在實施方式中,可在各個單元串中設置用於提供溝道層、隧穿絕緣層、電荷存儲層和阻擋絕緣層中的至少一個的柱。
各個單元串的源極選擇電晶體SST耦接在公共源極線CSL與記憶體單元MC1至MCp之間。
在實施方式中,佈置在同一列上的單元串的源極選擇電晶體耦接到在列方向上延伸的源極選擇線,佈置在不同列上的單元串的源極選擇電晶體耦接到不同的源極選擇線。在圖4中,第一列上的單元串CS11至CS1m的源極 選擇電晶體耦接到第一源極選擇線SSL1。第二列上的單元串CS21至CS2m的源極選擇電晶體耦接到第二源極選擇線SSL2。
在實施方式中,單元串CS11至CS1m和CS21至CS2m的源極選擇電晶體可共同耦接到一條源極選擇線。
各個單元串的第一記憶體單元MC1至第n記憶體單元MCn耦接在源極選擇電晶體SST與汲極選擇電晶體DST之間。
第一記憶體單元MC1至第n記憶體單元MCn可被分成第一記憶體單元MC1至第p記憶體單元MCp和第(p+1)記憶體單元MCp+1至第n記憶體單元MCn。第一記憶體單元MC1至第p記憶體單元MCp依次佈置在+Z方向的相反方向上,並且串聯耦接在源極選擇電晶體SST和管電晶體PT之間。第(p+1)記憶體單元MCp+1至第n記憶體單元MCn依次佈置在+Z方向上,並且串聯耦接在管電晶體PT和汲極選擇電晶體DST之間。第一記憶體單元MC1至第p記憶體單元MCp和第(p+1)記憶體單元MCp+1至第n記憶體單元MCn通過管電晶體PT耦接。各個單元串的第一記憶體單元MC1至第n記憶體單元MCn的閘電極分別耦接到第一字線WL1至第n字線WLn。
各個單元串的管電晶體PT的閘極耦接到管線PL。
各個單元串的汲極選擇電晶體DST耦接在對應位元線與記憶體單元MCp+1至MCn之間。佈置在列方向上的單元串耦接到在列方向上延伸的汲極選擇線。第一列上的單元串CS11至CS1m的汲極選擇電晶體耦接到第一汲極選擇線DSL1。第二列上的單元串CS21至CS2m的汲極選擇電晶體耦接到第二汲極選擇線DSL2。
佈置在行方向上的單元串耦接到在行方向上延伸的位元線。在圖4中,第一行上的單元串CS11和CS21耦接到第一位元線BL1。第m行上的單元串CS1m和CS2m耦接到第m位元線BLm。
佈置在列方向上的單元串中耦接到同一字線的記憶體單元構成一頁。例如,第一列上的單元串CS11至CS1m中耦接到第一字線WL1的記憶體單元構成一頁。第二列上的單元串CS21至CS2m中耦接到第一字線WL1的記憶體單元構成另一頁。即,佈置在+X方向上的要耦接到同一字線的記憶體單元構成一頁。當汲極選擇線DSL1和DSL2中的任一條被選擇時,可選擇佈置在一個列方向上的單元串。當字線WL1至WLn中的任一條被選擇時,可在所選單元串中選擇一頁。
圖5是示出圖2的記憶體單元陣列100的實施方式110_2的圖。
參照圖5,記憶體單元陣列110_2包括多個記憶體塊BLK1'至BLKz'。在圖5中,為了描述方便,示出了第一記憶體塊BLK1'的內部配置,省略了其它記憶體塊BLK2'至BLKz'的內部配置。將理解,第二記憶體塊BLK2'至第z記憶體塊BLKz'也與第一記憶體塊BLK1相同地配置。
第一記憶體塊BLK1'包括多個單元串CS11'至CS1m'和CS21'至CS2m'。多個單元串CS11'至CS1m'和CS21'至CS2m'中的每一個沿著+Z方向延伸。在第一記憶體塊BLK1'中,在+X方向上佈置m個單元串。在圖5中,示出了在+Y方向上佈置兩個單元串。然而,這是為了描述方便,將理解,可在行方向上佈置三個單元串。例如,記憶體單元陣列110_2的各個記憶體塊中可包括佈置在行方向(即,+Y方向)上的四個單元串。
多個單元串CS11'至CS1m'和CS21'至CS2m'中的每一個包括至少一個源極選擇電晶體SST、第一記憶體單元MC1至第n記憶體單元MCn以及至少一個汲極選擇電晶體DST。
各個單元串的源極選擇電晶體SST耦接在公共源極線CSL與記憶體單元MC1至MCn之間。佈置在同一列上的單元串的源極選擇電晶體耦接到同一源極選擇線。佈置在第一列上的單元串CS11'至CS1m'的源極選擇電晶體耦接 到第一源極選擇線SSL1。佈置在第二列上的單元串CS21'至CS2m'的源極選擇電晶體耦接到第二源極選擇線SSL2。在實施方式中,單元串CS11'至CS1m'和CS21'至CS2m'的源極選擇電晶體可共同耦接到一條源極選擇線。
各個單元串的第一記憶體單元MC1至第n記憶體單元MCn串聯耦接在源極選擇電晶體SST和汲極選擇電晶體DST之間。第一記憶體單元MC1至第n記憶體單元MCn的閘電極分別耦接到第一字線WL1至第n字線WLn。
各個單元串的汲極選擇電晶體DST耦接在對應位元線與記憶體單元MC1至MCn之間。佈置在列方向上的單元串的汲極選擇電晶體耦接到在列方向上延伸的汲極選擇線。第一列上的單元串CS11'至CS1m'的汲極選擇電晶體耦接到第一汲極選擇線DSL1。第二列上的單元串CS21'至CS2m'的汲極選擇電晶體耦接到第二汲極選擇線DSL2。
佈置在列方向上的單元串中耦接到同一字線的記憶體單元構成一頁。例如,第一列上的單元串CS11'至CS1m'中耦接到第一字線WL1的記憶體單元構成一頁。第二列上的單元串CS21'至CS2m'中耦接到第一字線WL1的記憶體單元構成另一頁。即,佈置在+X方向上的要耦接到同一字線的記憶體單元構成一頁。當汲極選擇線DSL1和DSL2中的任一條被選擇時,可選擇佈置在一個列方向上的單元串。當字線WL1至WLn中的任一條被選擇時,可在所選單元串中選擇一頁。耦接到同一字線的記憶體單元與頁之間的關係將稍後參照圖7來描述。
因此,除了從各個單元串排除管電晶體PT之外,圖5的記憶體塊BLK1'具有與圖4的記憶體塊BLK1相似的等效電路。
圖6是示出圖4的記憶體單元陣列的一部分的電路圖。
參照圖6,示出了圖4的單元串當中的兩個單元串CS11和CS21。即,在圖4的記憶體塊和單元串中,示出了在+X方向上看的兩個單元串CS11和 CS21。在圖4中,示出了單元串CS11和CS21中的每一個具有U形狀。然而,在圖6中,為了描述方便,示出了單元串CS11和CS21中的每一個具有直線形狀。單元串CS11包括汲極選擇電晶體DST、記憶體單元MC1至MCn和管電晶體PT1。另外,單元串CS21包括汲極選擇電晶體DST0'、記憶體單元MC1'至MCn'和管電晶體PT2。管電晶體PT1和PT2分別位於單元串CS11和CS21的中間端。如上所述,可限定單元串CS11至CS1m屬於第一串組並且單元串CS21至CS2m屬於第二串組。圖6中示出了屬於第一串組的單元串CS11和屬於第二串組的單元串CS21。然而,如圖4所示,屬於第一串組的單元串CS12至CS1m和單元串CS22至CS2m存在於+X方向上。如上所述,屬於第一串組的單元串CS11至CS1m當中耦接到同一字線的記憶體單元構成一頁。另外,屬於第一串組的單元串CS21至CS2m當中耦接到同一字線的記憶體單元構成一頁。即,佈置在+X方向上的要耦接到同一字線的記憶體單元構成一頁。耦接到同一字線但屬於不同串組的記憶體單元不構成一頁。例如,在圖6中,由於耦接到第一字線WL1的兩個記憶體單元MC1和MC1'屬於不同的串組,所以兩個記憶體單元MC1和MC1'不構成一頁。耦接到同一字線的記憶體單元與頁之間的關係將稍後參照圖7來描述。
圖7是示出圖6的頁與單元串之間的關係的圖。
參照圖7,在圖4的記憶體單元陣列的結構中,示出了在+Z方向上看的頁。一起參照圖6和圖7,示出了耦接到第一字線WL1的頁。為了例示方便,圖6的記憶體單元MC1和MC1'被指定為圖7中的記憶體單元MC11和MC11'。一起參照圖4、圖6和圖7,記憶體單元MC11至MC1m分別被包括在單元串CS11至CS1m中。此外,記憶體單元MC11'至MC1m'分別被包括在單元串CS21至CS2m中。
記憶體單元MC11至MC1m和記憶體單元MC11'至MC1m'全部耦 接到同一第一字線WL1,但不是同一頁。即,在耦接到第一字線WL1的記憶體單元MC11至MC1m和MC11'至MC1m'當中,屬於第一串組的記憶體單元MC11至MC1m構成一頁,並且屬於第二串組的記憶體單元MC11'至MC1m'構成另一頁。一般半導體記憶體裝置的讀取操作和寫入操作以頁為單位執行,因此,根據上述頁配置來區分記憶體單元是有意義的。
一起參照圖4、圖6和圖7,在編程操作中首先對屬於第一串組的單元串CS11至CS1m進行程式化。在單元串CS11至CS1m的編程操作期間,屬於第二串組的單元串CS21至CS2m被維持在擦除狀態。
在屬於第一串組的單元串CS11至CS1m被程式化之後,對屬於第二串組的單元串CS21至CS2m進行程式化。從圖7的角度,記憶體單元MC11'至MC1m'在記憶體單元MC11至MC1m被程式化之後程式化。在具有如圖3至圖5所示的三維結構的記憶體單元陣列中,在製造工藝期間在存儲編程資料的電荷捕獲氮化物(CTN)層中可能出現故障。在這種情況下,在編程操作中包括CTN層的故障的記憶體單元通常不被程式化。因此,編程脈衝相對被施加多次,或者發生程式化失敗。在這種情況下,耦接到同一字線的相鄰記憶體單元的閾值電壓可能受到影響。在本公開中,當編程脈衝被施加特定次數或以上以對所選頁進行程式化時,通過讀取耦接到同一字線的相鄰頁的資料來檢查錯誤位元,並且通過檢查讀失敗概率來執行諸如資料備份的後續操作。因此,可提供更可靠的半導體記憶體裝置。
在圖6所示的實施方式中,單元串CS11和CS21的汲極選擇電晶體DST和DST0'耦接到同一位元線BL1。然而,這僅是本公開的實施方式。在一些實施方式中,屬於第一串組的單元串和屬於第二串組的單元串可分別耦接到不同的位元線。在這種情況下,耦接到屬於第一串組的單元串的位元線與耦接到屬於第二串組的單元串的位元線可彼此獨立地驅動,並且可單獨地控制位元 線。
圖8是示出當施加編程脈衝時相鄰串組的閾值電壓的變化的圖。作為示例將描述記憶體單元是各自存儲兩位元資料的MLC的情況。
一起參照圖7和圖8,示出了在屬於第一頁的記憶體單元MC11'至MC1m'正被程式化的同時當過多施加編程脈衝時屬於耦接到同一字線WL1的第二頁的記憶體單元的閾值電壓的變化。
為了描述方便,將假設這樣的情形:對圖6所示的記憶體單元當中包括單元串CS21的記憶體單元MC1'的頁執行編程操作。從圖7的角度,該情形可以是屬於第一頁的記憶體單元MC11'至MC1m'被程式化的情形。單元串CS11至CS1m已被完全程式化,因此,對圖6中屬於單元串CS11的記憶體單元MC1至MCn執行的編程操作可完成。從圖7的角度,資料已經被存儲在包括記憶體單元MC11至MC1m的頁中。即,屬於第二頁的記憶體單元MC11至MC1m具有擦除狀態S0和第一狀態S1至第三狀態S3當中的任一個狀態。
屬於第二頁的記憶體單元MC11至MC1m和屬於第一頁的記憶體單元MC11'至MC1m'全部耦接到同一字線WL1。因此,在資料正被程式化在包括記憶體單元MC11'至MC1m'的第一頁中的同時,即使當記憶體單元MC11至MC1m處於編程禁止狀態時,由於字線WL1,屬於相鄰第二頁的記憶體單元MC11至MC1m也可能受到第一頁的編程操作影響。例如,編程脈衝也被施加到耦接到記憶體單元MC11至MC1m的閘電極的字線WL1,因此,記憶體單元MC11至MC1m的閾值電壓可能改變。例如,當編程脈衝被施加到字線WL1以執行第一頁的編程操作時,包括在第二頁中的記憶體單元MC11至MC1m的閾值電壓可從實線所指示的範圍改變為虛線所指示的範圍。
因此,如圖8所示,當屬於第二頁的記憶體單元MC11至MC1m當中處於擦除狀態S0的記憶體單元的閾值電壓改變為大於第一讀取電壓Vr1的 值時,在存儲在對應記憶體單元中的資料中可能發生錯誤位元。根據圖7的例示,當第一編程狀態S1或第二編程狀態S2下的閾值電壓的變化較小時,在以第二讀取電壓Vr2或第三讀取電壓Vr3讀取資料時在對應編程狀態下沒有發生任何錯誤位元。然而,圖7的例示是例示性的。在一些情形下,當第一編程狀態S1或第二編程狀態S2下的閾值電壓的變化增大時,在對應編程狀態下可能發生錯誤位元。
通常,在編程操作中,沒有對耦接到字線的相鄰頁的資料執行任何錯誤位元檢查。因此,當在後續讀取操作中錯誤位元的數量增加時,可能發生讀失敗,這成為降低半導體記憶體裝置的可靠性的因素。在實施方式中,例如,可由控制器200執行錯誤位元檢查。
在根據本公開的半導體記憶體裝置中,當編程脈衝被施加特定次數或以上時,通過讀取耦接到同一字線的相鄰頁的資料來檢查錯誤位元,並且因此,檢查讀失敗概率。因此,可提供更可靠的半導體記憶體裝置。在本說明書中,在編程操作期間被確定讀失敗概率高的對應資料可被存儲在記憶體單元陣列的另一位置。
圖9是示出圖2的控制邏輯130的實施方式的方塊圖。
參照圖9,包括在根據本公開的實施方式的半導體記憶體裝置中的控制邏輯130可包括脈衝計數器131、脈衝施加臨界值存儲單元135和狀態暫存器137。在實施方式中,控制邏輯130、脈衝計數器131、脈衝施加臨界值存儲單元135和狀態暫存器137可利用硬體、軟體或其組合來實現。脈衝計數器131可對在對記憶體單元陣列執行的編程操作中對施加到所選字線的編程脈衝的施加次數進行計數。脈衝施加臨界值存儲單元135可存儲第一臨界值,該第一臨界值用於確定在編程操作期間對相鄰頁的資料檢查錯誤位元的時間。如稍後將描述的,在根據本公開的半導體記憶體裝置中,當在對第一頁執行的編程 操作中編程脈衝的施加次數超過第一臨界值時,相鄰第二頁的資料被讀取然後被發送到控制器,從而檢查錯誤位元。因此,檢查讀失敗概率。因此,半導體記憶體裝置的可靠性改進。
除了第一臨界值之外,脈衝施加臨界值存儲單元135還可存儲第二臨界值。第二臨界值是在編程操作中最大程度地施加的編程脈衝的施加次數。即,當即使編程脈衝被施加該次數(即,第二臨界值),資料也未被程式化到對應記憶體單元中時,這被確定為程式化失敗。在這種情況下,對應記憶體單元可被視為故障,並且資料被程式化到位於另一位置的記憶體單元中。
狀態暫存器137可存儲表示半導體記憶體裝置的當前操作狀態的資料。當操作狀態改變時,半導體記憶體裝置更新存儲在狀態暫存器137中的資料。當控制器向半導體記憶體裝置發送狀態讀取命令時,半導體記憶體裝置將存儲在狀態暫存器137中的資料發送到控制器。因此,控制器可基於所接收的資料來確定半導體記憶體裝置的當前操作狀態。根據本公開,當由脈衝計數器131計數的編程脈衝的施加次數超過第一臨界值時,半導體記憶體裝置100的控制邏輯130被配置為更新狀態暫存器137。在這種情況下,狀態暫存器137可被更新以包括指示被施加以對第一頁進行程式化的編程脈衝的施加次數已超過第一臨界值的代碼。控制器200被配置為基於更新來檢查錯誤位元。
第二臨界值是大於第一臨界值的數。以下,作為示例將描述第一臨界值為15並且第二臨界值為20的情況。
圖10是示出根據本公開的實施方式的半導體記憶體裝置的編程處理的圖。
參照圖10,示出了對屬於所選第一頁的記憶體單元施加的編程脈衝Vpgm1至Vpgmt+3以及對耦接到同一字線的相鄰第二頁施加的讀取電壓Vr1。由於編程脈衝和讀脈衝全部被施加到字線,所以編程脈衝Vpgm1至 Vpgmt+3和讀取電壓Vr1被施加到同一字線。返回參照圖6和圖7,編程脈衝Vpgm1至Vpgmt+3被施加到第一頁的記憶體單元MC11'至MC1m',用於檢查錯誤位元的讀脈衝Vr1被施加到第二頁的記憶體單元MC11至MC1m。然而,編程脈衝Vpgm1至Vpgmt+3和讀脈衝Vr1二者均通過字線WL1施加。
當被施加以對第一頁進行程式化的編程脈衝的施加次數等於或小於第一臨界值時,不檢查相鄰第二頁的資料的任何錯誤位元。在上述示例中,假設了第一臨界值為15並且第二臨界值為20的情況,因此,值t變為15。即,在編程脈衝被施加多達15次的同時,不執行相鄰第二頁的任何錯誤位元檢查,並且與典型編程操作相同地執行編程操作。
在上述示例中,如果編程脈衝的施加次數變為15次,則在對第一頁執行的編程操作期間對第二頁執行錯誤位元檢查。即,通過字線WL1施加第一讀取電壓Vr1以讀取存儲在圖7的第二頁中所包括的記憶體單元MC11至MC1m中的資料。所讀取資料可被發送到控制器,並且可由錯誤更正塊230對錯誤位元的數量進行計數。另選地,錯誤位元的數量可通過針對隨機化以被程式化的第二頁的資料對屬於擦除狀態的記憶體單元的數量進行計數來確定。圖1的控制器200可解碼並輸入資料,使得所選頁的記憶體單元的閾值電壓可均勻地分佈。例如,當假設4K位元組耦接到第二頁的記憶體單元,並且作為第二頁的編程操作完成的結果創建記憶體單元的四個閾值電壓分佈時,控制器200可解碼並輸入資料,使得在各個閾值電壓分佈S0、S1、S2和S3中包括1K位元組記憶體單元。因此,可均勻地創建所選頁的記憶體單元的閾值電壓分佈。因此,可利用閾值電壓分佈來執行錯誤位元檢查。如圖8所示,當記憶體單元的閾值電壓被示出為四個閾值電壓分佈S0、S1、S2和S3時,如果使用第一讀取電壓Vr1來讀取資料,則記憶體單元的閾值電壓均勻地分佈,使得程式化的單元(例如,作為“0”讀取的單元)變為3K,未程式化的單元(例如,作為“1”讀取 的單元)變為1K。如果通過對使用第一讀取電壓Vr1讀取的資料當中“1”的數量進行計數而獲得的值是小於3K的值,則可確定發生了與小於3K的值對應的錯誤位元。即,即使當僅通過如圖10所示僅施加第一讀取電壓Vr1來讀取最低有效位元(LSB)資料時,也可檢測錯誤位元的發生趨勢。在另一實施方式中,可通過施加多個讀取電壓來讀取資料,並且可基於所讀取資料來檢測發生錯誤位元的記憶體單元的數量。例如,可通過施加圖8所示的所有第一至第三讀取電壓Vr1、Vr2和Vr3來檢測發生錯誤位元的記憶體單元的數量。當在第二頁上檢查到的錯誤位元的數量大於可糾正位的數量時,在對應頁的資料中發生ECC失敗,並且資料無法恢復。在本公開中,當在第二頁上檢查到的錯誤位元的數量超過特定水準時,確定將發生ECC失敗的概率高,因此對第二頁的資料執行備份操作。
例如,限定在第二頁上檢查到的錯誤位元的數量為Nε,可通過ECC操作糾正的位的最大數量為NC,並且用於對資料執行備份操作的錯誤臨界值為NT。這裡,NT是小於Nε的整數(NT<NC)。在這種情況下,當滿足下面的關係式時,執行對第二頁的資料的備份操作。
關係式1 NT<Nε<NC
當作為施加第一讀取電壓Vr1的結果,滿足上述關係式1時,仍可通過ECC操作恢復資料,但是很有可能的是由於編程擾動等導致的影響,錯誤位元的數量將超過NC。因此,當滿足上述關係式1時預先對頁的資料執行備份操作,從而可預期地降低將發生ECC錯誤的概率。
此外,當滿足下面的關係式2時,不對第二頁的資料執行備份操作。
關係式2 Nε<NT<NC
即,上述關係式2意味著在第二頁的資料上仍發生少量錯誤的情形,並且意味著閾值電壓的波動範圍不嚴重。因此,在滿足上述關係式2的狀態下,重新開始屬於第一頁的記憶體單元MC11'至MC1m'的編程操作,並且通過字線WL1對記憶體單元MC11'至MC1m'施加第十六編程脈衝Vpgmt+1。隨後,再次對相鄰第二頁執行錯誤位元檢查。
當第一頁上的編程脈衝的施加和第二頁上的錯誤位元檢查正在重複的同時檢測到數量滿足上述關係式1的錯誤位元時,第二頁的資料可被移至另一位置。
參照圖10,示出了以上述方式施加第十八編程脈衝Vpgmt+3,並且編程操作完成。在上述示例中,第二臨界值為20。因此,當即使施加第二十編程脈衝,編程操作也未完成時,這可最終被視為程式化失敗。此外,在圖10中,示出了在對第二頁執行的錯誤位元檢查中僅施加第一讀取電壓Vr1。這是因為在對第一頁重複地施加編程脈衝時,當屬於第二頁的記憶體單元MC11至MC1m當中處於擦除狀態S0的記憶體單元的閾值電壓的波動範圍最大時將發生錯誤位元的概率最高。然而,在一些實施方式中,可使用第二讀取電壓Vr2、第三讀取電壓Vr3或其組合來執行錯誤位元檢查。例如,當對第二頁執行錯誤位元檢查時,可通過施加第二讀取電壓Vr2和第三讀取電壓Vr3以及第一讀取電壓Vr1來執行錯誤位元檢查。
此外,根據圖10所示的實施方式,當對第一頁施加編程脈衝的次數超過第一臨界值時,隨著每當對屬於第一頁的記憶體單元MC11'至MC1m'施加編程脈衝時對屬於相鄰第二頁的記憶體單元MC11至MC1m施加第一讀取電壓Vr1而執行錯誤位元檢查。然而,圖10所示的實施方式是例示性的,執行錯誤位元檢查的次數和執行錯誤位元檢查的時間可不同地改變。例如,在實施方 式中,當對第一頁施加編程脈衝的次數超過第一臨界值時,可僅執行錯誤位元檢查一次。在圖10中,當施加第十八編程脈衝Vpgm+3,並且編程操作完成時,可隨著僅當第一頁上的編程操作完成時才對屬於第二頁的記憶體單元施加第一讀取電壓Vr1而執行錯誤位元檢查。在另一實施方式中,當施加第十八編程脈衝Vpgm+3,並且編程操作完成時,每當對第一頁施加兩次編程脈衝時,可執行一次對第二頁的錯誤位元檢查。
圖11是示出根據本公開的實施方式的半導體記憶體裝置的操作方法的流程圖。
參照圖11,對半導體記憶體裝置的第一頁施加編程脈衝(S110)。即,控制器200可將編程命令和編程位址發送到半導體記憶體裝置100,並且半導體記憶體裝置100可與編程命令和編程位址對應地執行步驟S110。在施加編程脈衝之後,半導體記憶體裝置100確定編程脈衝的施加次數是否超過第一臨界值(S120)。步驟S120可由半導體記憶體裝置100的控制邏輯130執行。即,脈衝計數器131可對施加編程脈衝以對第一頁進行程式化的次數進行計數,並且將計數結果與存儲在脈衝施加臨界值存儲單元135中的第一臨界值進行比較。當編程脈衝的施加次數沒有超過第一臨界值時,通過進行到步驟S130來確定第一頁的資料是否已被完全程式化。當第一頁的資料被完全程式化時,編程操作結束。當第一頁的資料未被完全程式化時,通過進行到步驟S110來再次施加編程脈衝。即,步驟S110、S120和S130可由記憶體系統50的半導體記憶體裝置100執行。
當作為步驟S120的確定結果,編程脈衝的施加次數超過第一臨界值時,通過進行到步驟S140來在第二頁上檢查錯誤位元。如上面參照圖7所描述的,第二頁是已經被完全程式化的頁,並且意指耦接到與第一頁所耦接的字線相同的字線的頁。如圖10所示,在步驟S140中,通過施加讀取電壓Vr1來 在第二頁上檢查錯誤位元。步驟S140可由記憶體系統50的半導體記憶體裝置100和控制器200執行。步驟S140的實施方式將稍後參照圖12來描述。
圖12是示出圖11中的檢查錯誤位元的步驟的流程圖。
參照圖12,為了檢查第二頁上的錯誤位元,對第二頁施加讀取電壓(S210),通過測試讀取資料來檢測發生錯誤的記憶體單元的數量(S220),並且確定所檢測到的記憶體單元的數量是否超過預定錯誤臨界值(S230)。當所檢測到的記憶體單元的數量超過預定錯誤臨界值時,對第二頁執行故障處理,並且改變編程位址(S240)。
在步驟S210中,對半導體記憶體裝置100的第二頁施加讀取電壓。為此,首先,控制器200可向半導體記憶體裝置100發送施加讀取電壓的命令。然後,半導體記憶體裝置100可回應於命令將圖10所示的讀取電壓Vr1施加到屬於第二頁的記憶體單元MC11至MC1m。此外,從半導體記憶體裝置100將讀取資料發送到控制器200。
在步驟S220中,通過測試發送到控制器200的讀取資料來檢測發生錯誤的記憶體單元的數量Nε。如上所述,可通過ECC操作來檢測發生錯誤的記憶體單元的數量。
在步驟S230中,確定所檢測到的記憶體單元的數量Nε是否超過預定錯誤臨界值NT。當如上述關係式1所示,所檢測到的記憶體單元的數量Nε超過預定錯誤臨界值NT時,對對應第二頁執行故障處理,並且改變編程位址(S240)。步驟S240的實施方式將稍後參照圖13來描述。
圖13是示出圖12中的執行故障處理並改變編程位址的步驟的實施方式的流程圖。
參照圖13,可由控制器200向半導體記憶體裝置100發送編程停止命令(S310)。半導體記憶體裝置100可回應於編程停止命令停止對第一頁 的資料執行的編程操作。
在步驟S320中,由控制器200向半導體記憶體裝置100發送備份第二頁的資料的命令。半導體記憶體裝置100可回應於命令將第二頁的資料備份到另一物理位置。在實施方式中,控制器200可向半導體記憶體裝置100發送僅將發生錯誤的記憶體單元的數量Nε超過預定錯誤臨界值NT的第二頁的資料備份到另一物理位置的命令。在實施方式中,控制器200可向半導體記憶體裝置100發送將包括第二頁的記憶體塊BLK1的全部資料備份到另一物理位置的命令。
在步驟S330中,丟棄由控制器200完成資料備份的第二頁的物理位址。控制器200可通過更新包括在映射表中的邏輯位址與物理位址之間的關係來執行步驟S330。當在步驟S320中僅第二頁的資料被備份到另一物理位置時,控制器200可在步驟S330中將與第二頁的邏輯位址對應的物理位址更新為備份有第二頁的資料的物理位置。當在步驟S320中包括第二頁的記憶體塊的全部資料被備份到另一記憶體塊時,控制器200在步驟S330中將與備份的資料所對應的邏輯位址對應的物理位址更新為與新記憶體塊對應的物理位置。
圖14是示出記憶體單元陣列的實施方式的示例的電路圖。
參照圖14,示出了在各個記憶體塊中包括佈置在行方向(即,+Y方向)上的四個單元串的記憶體單元陣列的一部分。即,在圖14中,記憶體單元陣列的記憶體塊包括第一串組、第二串組、第三串組和第四串組。第一串組可包括單元串CS11'和另外多個單元串。第二串組可包括單元串CS21'和另外多個單元串。第三串組可包括單元串CS31'和另外多個單元串。第四串組可包括單元串CS41'和另外多個單元串。即,圖14中僅示出了屬於第一至第四串組的單元串當中的單元串CS11'、CS21'、CS31'和CS41'。然而,類似於圖4或圖5所示的記憶體單元陣列,屬於第一至第四串組的單元串存在於+X方向上。
圖15是示出圖14的頁與單元串之間的關係的圖。
參照圖15,在圖14的記憶體單元陣列的結構中,示出了在+Z方向上看的頁。一起參照圖14和圖15,示出了耦接到第一字線WL1的頁。如圖15所示,四個頁耦接到同一第一字線WL1。
在記憶體單元陣列的編程操作中,包括記憶體單元CM11的第一頁可首先被程式化,然後包括記憶體單元MC21的第二頁可被程式化。然後,包括記憶體單元MC31的第三頁可被程式化,最後包括記憶體單元MC41的第四頁可被程式化。
當包括記憶體單元MC21的第二頁被程式化時,可執行第一頁上的錯誤位元檢查。當包括記憶體單元MC31的第三頁被程式化時,可執行第一頁或第二頁上的錯誤位元檢查。當包括記憶體單元MC41的第四頁被程式化時,可執行第一頁、第二頁或第三頁上的錯誤位元檢查。
此外,當第四頁被程式化時,可在所有第一至第三頁上執行錯誤位元檢查。然而,編程脈衝可對第一頁具有最大影響。因此,在實施方式的示例中,當第四頁程式化時,可僅在第一頁上執行錯誤位元檢查。
根據本公開,第一臨界值可以是通過實驗確定的固定值。例如,當通過實驗確認直到施加編程脈衝約15次時,才在相鄰頁中發生多個讀失敗時,第一臨界值可被確定為15。在另一實施方式中,在相鄰頁的編程操作中,第一臨界值可被確定為直到編程操作完成所施加的編程脈衝的總施加次數。例如,在圖15中,如果在第一頁的編程操作中通過總共施加編程脈衝13次來完成第一頁的編程操作,則在第二頁的編程操作中使用的第一臨界值可被確定為13。此外,當第二頁的編程操作完成時,所施加的編程脈衝的數量可被更新為要在第三頁的編程操作中使用的第一臨界值。在這種情況下,更新的第一臨界值可被存儲在圖9的脈衝施加臨界值存儲單元135中。
在圖14和圖15的實施方式中,屬於第一串組的單元串CS11'的汲極選擇電晶體DST1、屬於第二串組的單元串CS21'的汲極選擇電晶體DST2、屬於第三串組的單元串CS31'的汲極選擇電晶體DST3和屬於第四串組的單元串CS41'的汲極選擇電晶體DST4耦接到同一位元線BL1。然而,這僅是本公開的實施方式。在一些實施方式中,屬於第一至第四串組的單元串可分別耦接到不同的位元線。在這種情況下,分別耦接到屬於第一至第四串組的單元串的不同位元線可彼此獨立地驅動,並且位元線可單獨地控制。
參照圖3至圖7、圖14和圖15,示出了記憶體單元陣列110中的多個記憶體塊BLK1至BLKz具有三維結構的實施方式。然而,這是例示性的,本公開可被應用於具有二維結構的記憶體塊。
圖16是示出根據本公開的實施方式的半導體記憶體裝置的編程處理的圖。在圖16中,與圖10重複的內容將被省略。
參照圖16,與圖10不同,當在相鄰頁上執行錯誤位元檢查時施加第一讀取電壓Vr1和第二讀取電壓Vr2。因此,可根據不僅與擦除狀態S0,而且與第一編程狀態S1對應的記憶體單元的閾值電壓的變化來執行錯誤位元檢查。在一些實施方式中,當在相鄰頁上執行錯誤位元檢查時可施加所有第一讀取電壓Vr1、第二讀取電壓Vr2和第三讀取電壓Vr3。在這種情況下,可根據與擦除狀態S0、第一編程狀態S1和第二編程狀態S2對應的記憶體單元的閾值電壓的變化來檢查讀失敗概率。
圖17是示出包括圖2的半導體記憶體裝置的記憶體系統的方塊圖。
參照圖17,記憶體系統1000包括半導體記憶體裝置100和控制器1100。半導體記憶體裝置100可以是參照圖2描述的半導體記憶體裝置。以下,將省略重複的描述。
控制器1100耦接到主機Host和半導體記憶體裝置100。控制器1100被配置為回應於來自主機Host的請求訪問半導體記憶體裝置100。例如,控制器1100被配置為控制半導體記憶體裝置100的讀、寫、擦除和後臺操作。控制器1100被配置為提供半導體記憶體裝置100與主機Host之間的介面。控制器1100被配置為驅動用於控制半導體記憶體裝置100的固件。
控制器1100包括隨機存取記憶體(RAM)1110、處理單元1120、主機介面1130、記憶體介面1140和錯誤更正塊1150。RAM 1110用作處理單元1120的操作記憶體、半導體記憶體裝置100與主機Host之間的快取記憶體以及半導體記憶體裝置100與主機Host之間的緩衝記憶體中的至少一個。處理單元1120控制控制器1100的總體操作。另外,控制器1100可任意地存儲在寫入操作中從主機Host提供的編程資料。
主機介面1130包括用於在主機Host與控制器1100之間交換資料的協定。在實施方式的示例中,控制器1100被配置為通過諸如通用序列匯流排(USB)協定、多媒體卡(MMC)協定、週邊元件連接(PCI)協議、高速PCI(PCI-E)協定、先進技術附件(ATA)協定、串列-ATA協定、並行-ATA協定、小型電腦小型介面(SCSI)協定、增強小型磁片介面(ESDI)協定、整合驅動電子裝置(IDE)協定和私有協定的各種介面協定中的至少一種來與主機Host通信。
記憶體介面1140與半導體記憶體裝置100介面。例如,記憶體介面1140可包括NAND介面或NOR介面。
錯誤更正塊1150被配置為利用錯誤更正碼(ECC)來檢測並糾正從半導體記憶體裝置100接收的資料的錯誤。處理單元1120可控制半導體記憶體裝置100基於錯誤更正塊1150的錯誤檢測結果來調節讀取電壓,並且執行重讀。在實施方式的示例中,錯誤更正塊1150可作為控制器1100的元件提供。
控制器1100和半導體記憶體裝置100可被整合到一個半導體裝置中。在實施方式的示例中,控制器1100和半導體記憶體裝置100可被整合到一個半導體裝置中以構成記憶卡。例如,控制器1100和半導體記憶體裝置100可被整合到一個半導體裝置中,以構成諸如PC卡(國際個人電腦記憶卡協會(PCMCIA))、緊湊快閃記憶體(CF)卡、智慧媒體卡(SM或SMC)、記憶棒、多媒體卡(MMC、RS-MMC或MMCmicro)、SD卡(SD、miniSD、microSD或SDHC)或者通用快閃記憶體(UFS)的記憶卡。
控制器1100和半導體記憶體裝置100可被整合到一個半導體裝置中以構成半導體驅動器(固態驅動器(SSD))。半導體驅動器SSD包括被配置為將資料存儲在半導體記憶體中的存儲裝置。如果記憶體系統1000用作半導體驅動器SSD,則耦接至記憶體系統1000的主機Host的操作速度可顯著改進。
在示例中,記憶體系統1000可作為諸如電腦、超級移動PC(UMPC)、工作站、上網本、個人數位助理(PDA)、可攜式電腦、網路本、無線電話、行動電話、智慧型電話、電子書、可攜式多媒體播放機(PMP)、可攜式遊戲機、導航系統、黑匣子、數位相機、3維電視、數位音訊記錄儀、數位音訊播放機、數位照片記錄儀、數位照片播放機、數位視訊記錄儀、數位視訊播放機、能夠在無線環境中發送/接收資訊的裝置的電子裝置的各種元件之一、構成家用網路的各種電子裝置之一、構成電腦網路的各種電子裝置之一、構成車聯網的各種電子裝置之一、RFID裝置、或者構成計算系統的各種元件之一來提供。
在實施方式的示例中,半導體記憶體裝置100或記憶體系統1000可按照各種形式來封裝。例如,半導體記憶體裝置100或記憶體系統1000可按照諸如堆疊式封裝(PoP)、球格陣列(BGA)、晶片級封裝(CSP)、帶引線的塑膠晶片載體(PLCC)、塑膠雙列直插封裝(PDIP)、華夫晶片封裝、 晶圓形式晶片、板載晶片(COB)、陶瓷雙列直插封裝(CERDIP)、塑膠公制四方扁平封裝(MQFP)、薄四方扁平封裝(TQFP)、小外形積體電路(SOIC)、收縮型小外形封裝(SSOP)、薄小外形封裝(TSOP)、薄四方扁平封裝(TQFP)、系統封裝(SIP)、多晶片封裝(MCP)、晶圓級製造封裝(WFP)或者晶圓級處理層疊封裝(WSP)的方式封裝。
圖18是示出圖17的記憶體系統的應用示例的方塊圖。
參照圖19和圖18,記憶體系統2000包括半導體記憶體裝置2100和控制器2200。半導體記憶體裝置2100包括多個半導體記憶體晶片。所述多個半導體記憶體晶片被分成多個組。
在圖18中,示出了多個組通過第一通道CH1至第k通道CHk與控制器2200通信。各個半導體記憶體晶片可與參照圖2描述的半導體記憶體裝置100相同地配置和操作。
各個組被配置為通過一個公共通道來與控制器2200通信。控制器2200與參照圖17描述的控制器1100相似地配置。控制器2200被配置為通過多個通道CH1至CHk來控制半導體記憶體裝置2100的多個記憶體晶片。
圖19是示出包括參照圖18描述的記憶體系統的計算系統的方塊圖。
參照圖19,計算系統3000包括中央處理單元3100、RAM 3200、使用者介面3300、電源3400、系統匯流排3500和記憶體系統2000。
記憶體系統2000通過系統匯流排3500電耦接至中央處理單元3100、RAM 3200、使用者介面3300和電源3400。通過使用者介面3300供應的資料或者由中央處理單元3100處理的資料被存儲在記憶體系統2000中。
在圖19中,示出了半導體記憶體裝置2100通過控制器2200耦接至系統匯流排3500。然而,半導體記憶體裝置2100可直接耦接至系統匯流排 3500。在這種情況下,控制器2200的功能可由中央處理單元3100和RAM 3200執行。
在圖19中,示出了設置有參照圖18描述的記憶體系統2000。然而,記憶體系統2000可被參照圖17描述的記憶體系統1000代替。在實施方式的示例中,計算系統3000可被配置為包括參照圖17和圖18描述的記憶體系統1000和2000二者。
根據本公開,可提供一種改進了可靠性的半導體記憶體裝置和控制器。
本文公開了實施方式的示例,儘管採用了特定術語,它們僅在一般描述性意義上使用和解釋,並非用於限制。在一些情況下,對於本領域普通技術人員而言將顯而易見的是,自提交本申請起,除非明確地另外指示,否則結合特定實施方式描述的特徵、特性和/或元件可單獨地使用或者與結合其它實施方式描述的特徵、特性和/或元件組合使用。因此,本領域技術人員將理解,在不脫離以下申請專利範圍中所闡述的本公開的精神和範圍的情況下,可進行各種形式和細節上的改變。
Claims (20)
- 一種操作半導體記憶體裝置的方法,該方法包括以下步驟:利用週邊電路施加編程脈衝,該編程脈衝用於對包括在所述半導體記憶體裝置中的第一頁的資料進行程式化;利用控制邏輯確定所述編程脈衝的施加次數是否超過第一臨界值;以及基於所述編程脈衝的施加次數是否超過所述第一臨界值的確定結果,利用控制器對耦接到與所述第一頁所耦接的字線相同的字線的第二頁執行錯誤位元檢查。
- 如請求項1所述之方法,該方法還包括以下步驟:當所述編程脈衝的施加次數沒有超過所述第一臨界值時,利用所述控制邏輯確定所述第一頁的資料是否已被完全程式化。
- 如請求項2所述之方法,其中,當所述第一頁的資料沒有被完全程式化時,重複地施加用於對所述第一頁的資料進行程式化的所述編程脈衝。
- 如請求項1所述之方法,其中,對所述第二頁執行所述錯誤位元檢查的步驟包括以下步驟:將讀取電壓施加到所述第二頁;通過測試讀取資料來檢測發生錯誤的記憶體單元的數量;確定所檢測到的記憶體單元的數量是否超過預定的錯誤臨界值;以及基於所檢測到的記憶體單元的數量是否超過預定的所述錯誤臨界值的確定結果,對所述第二頁執行故障處理並改變編程位址。
- 如請求項4所述之方法,其中,執行所述故障處理並改變所述編程位址的步驟包括以下步驟:當所檢測到的記憶體單元的數量超過所述錯誤臨界值時,向所述半導體記憶體裝置發送編程停止命令; 向所述半導體記憶體裝置發送備份所述第二頁的資料的命令;以及丟棄所述第二頁的物理位址。
- 如請求項5所述之方法,其中,在向所述半導體記憶體裝置發送備份所述第二頁的資料的命令的步驟中,耦接到所述第二頁的記憶體單元中所存儲的資料被備份到另一頁,並且其中,在丟棄所述第二頁的物理位址的步驟中,耦接到所述第二頁的所述字線的物理位址被丟棄。
- 如請求項5所述之方法,其中,在向所述半導體記憶體裝置發送備份所述第二頁的資料的命令的步驟中,包括所述第二頁的記憶體塊中所存儲的資料被備份到另一記憶體塊,並且其中,在丟棄所述第二頁的物理位址的步驟中,包括所述第二頁的所述記憶體塊的物理位址被丟棄。
- 如請求項4所述之方法,其中,在將所述讀取電壓施加到所述第二頁的步驟中,對屬於所述第二頁的記憶體單元施加一個讀取電壓,並且其中,在通過測試所述讀取資料來檢測發生錯誤的記憶體單元的數量的步驟中,通過所述一個讀取電壓來檢測處於擦除狀態的記憶體單元當中發生錯誤的記憶體單元的數量。
- 如請求項8所述之方法,其中,在通過測試所述讀取資料來檢測發生錯誤的記憶體單元的數量的步驟中,基於隨機化的資料來檢測發生錯誤的記憶體單元的數量。
- 如請求項4所述之方法,其中,在將所述讀取電壓施加到所述第二頁的步驟中,對屬於所述第二頁的記憶體單元施加多個讀取電壓。
- 如請求項10所述之方法,其中,在通過測試所述讀取資料來檢測發生錯誤的記憶體單元的數量的步驟中,通過錯誤更正碼(ECC)操作來檢測 發生錯誤的記憶體單元的數量。
- 如請求項4所述之方法,其中,基於在所述第二頁的編程操作中施加的編程脈衝的施加次數來確定所述錯誤臨界值。
- 如請求項12所述之方法,其中,當所述第一頁的編程操作完成時,所述錯誤臨界值被更新為在所述第一頁的所述編程操作中施加的編程脈衝的施加次數。
- 一種記憶體系統,該記憶體系統包括:半導體記憶體裝置,該半導體記憶體裝置包括耦接到第一字線的第一頁和耦接到所述第一字線的第二頁;以及控制器,該控制器被配置為控制所述半導體記憶體裝置的操作,其中,所述控制器控制所述半導體記憶體裝置基於對所述第一字線施加編程脈衝的次數來對所述第二頁執行錯誤位元檢查。
- 如請求項14所述之記憶體系統,其中,當在所述第一頁的編程操作期間用於對所述第一頁進行程式化的所述編程脈衝的施加次數超過第一臨界值時,所述控制器控制所述半導體記憶體裝置對所述第二頁執行錯誤位元檢查。
- 如請求項15所述之記憶體系統,其中,所述半導體記憶體裝置還包括狀態暫存器,其中,所述控制器向所述半導體記憶體裝置發送用於對所述第一頁進行程式化的編程命令,並且其中,所述半導體記憶體裝置回應於所述編程命令對所述第一頁施加編程脈衝,並且當所述編程脈衝的施加次數超過所述第一臨界值時更新所述狀態暫存器。
- 如請求項16所述之記憶體系統,其中,回應於所述狀態暫存器 的更新,所述控制器向所述半導體記憶體裝置發送對所述第二頁執行錯誤位元檢查的命令。
- 如請求項17所述之記憶體系統,其中,回應於所述執行錯誤位元檢查的命令,所述半導體記憶體裝置讀取所述第二頁的資料並將經讀取的資料發送到所述控制器。
- 如請求項18所述之記憶體系統,其中,所述控制器通過分析所述第二頁的所述經讀取的資料來檢測發生錯誤的記憶體單元的數量,並且其中,當所檢測到的記憶體單元的數量超過預定的錯誤臨界值時,所述控制器向所述半導體記憶體裝置發送備份所述第二頁的資料的命令。
- 如請求項19所述之記憶體系統,其中,所述控制器在向所述半導體記憶體裝置發送備份所述第二頁的資料的命令的同時丟棄所述第二頁的物理位址。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR10-2017-0086102 | 2017-07-06 | ||
| ??10-2017-0086102 | 2017-07-06 | ||
| KR1020170086102A KR20190005447A (ko) | 2017-07-06 | 2017-07-06 | 반도체 메모리 장치의 동작 방법 및 메모리 시스템 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201907406A true TW201907406A (zh) | 2019-02-16 |
| TWI741128B TWI741128B (zh) | 2021-10-01 |
Family
ID=64903236
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW107101432A TWI741128B (zh) | 2017-07-06 | 2018-01-15 | 記憶體系統及用於操作半導體記憶體裝置的方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US10698761B2 (zh) |
| KR (1) | KR20190005447A (zh) |
| CN (1) | CN109215713B (zh) |
| TW (1) | TWI741128B (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI688960B (zh) * | 2019-04-18 | 2020-03-21 | 旺宏電子股份有限公司 | 記憶體裝置 |
| TWI748356B (zh) * | 2019-09-02 | 2021-12-01 | 日商鎧俠股份有限公司 | 記憶系統 |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102629487B1 (ko) * | 2019-05-28 | 2024-01-26 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
| US11010244B2 (en) * | 2019-09-16 | 2021-05-18 | Macronix International Co., Ltd. | Memory data management method |
| US11144471B1 (en) | 2020-05-07 | 2021-10-12 | Micron Technology, Inc. | Dual address encoding for logical-to-physical mapping |
| CN113454722B (zh) * | 2020-05-19 | 2022-08-19 | 长江存储科技有限责任公司 | 存储器器件及其编程操作 |
| CN115565580A (zh) * | 2022-10-19 | 2023-01-03 | 长江存储科技有限责任公司 | 存储器装置及其操作方法、存储器系统 |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101038991B1 (ko) * | 2009-03-10 | 2011-06-03 | 주식회사 하이닉스반도체 | 메모리 영역의 균등한 사용을 위한 반도체 스토리지 시스템및 그 제어 방법 |
| US8130544B2 (en) * | 2009-08-17 | 2012-03-06 | Skymedi Corporation | Method of reducing bit error rate for a flash memory |
| KR101662309B1 (ko) | 2010-02-08 | 2016-10-04 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 |
| KR20120098079A (ko) | 2011-02-28 | 2012-09-05 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 장치 및 이의 프로그램 방법 |
| US8880977B2 (en) * | 2011-07-22 | 2014-11-04 | Sandisk Technologies Inc. | Systems and methods of storing data |
| US8638607B2 (en) * | 2011-10-06 | 2014-01-28 | Micron Technology, Inc. | Disturb verify for programming memory cells |
| US8576651B2 (en) * | 2012-01-20 | 2013-11-05 | Sandisk 3D Llc | Temperature compensation of conductive bridge memory arrays |
| KR101915719B1 (ko) * | 2012-04-26 | 2019-01-08 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 동작 방법 |
| US9069695B2 (en) * | 2013-03-14 | 2015-06-30 | Apple Inc. | Correction of block errors for a system having non-volatile memory |
| CN104217757B (zh) * | 2013-05-31 | 2018-01-05 | 华邦电子股份有限公司 | 非易失性存储器的编程方法 |
| US20150262693A1 (en) * | 2014-03-13 | 2015-09-17 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
| US9281078B2 (en) * | 2014-06-12 | 2016-03-08 | Micron Technology, Inc. | Program operations with embedded leak checks |
| US9811275B2 (en) * | 2015-02-27 | 2017-11-07 | Toshiba Memory Corporation | Memory system and data control method |
-
2017
- 2017-07-06 KR KR1020170086102A patent/KR20190005447A/ko not_active Withdrawn
-
2018
- 2018-01-15 TW TW107101432A patent/TWI741128B/zh active
- 2018-01-18 US US15/874,261 patent/US10698761B2/en active Active
- 2018-02-02 CN CN201810106473.8A patent/CN109215713B/zh active Active
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI688960B (zh) * | 2019-04-18 | 2020-03-21 | 旺宏電子股份有限公司 | 記憶體裝置 |
| TWI748356B (zh) * | 2019-09-02 | 2021-12-01 | 日商鎧俠股份有限公司 | 記憶系統 |
Also Published As
| Publication number | Publication date |
|---|---|
| US10698761B2 (en) | 2020-06-30 |
| CN109215713A (zh) | 2019-01-15 |
| TWI741128B (zh) | 2021-10-01 |
| US20190012227A1 (en) | 2019-01-10 |
| KR20190005447A (ko) | 2019-01-16 |
| CN109215713B (zh) | 2022-06-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI741128B (zh) | 記憶體系統及用於操作半導體記憶體裝置的方法 | |
| US10276245B2 (en) | Semiconductor memory device and method of operating the same | |
| US9418753B2 (en) | Method of operating memory controller and data storage device including memory controller | |
| KR102429452B1 (ko) | 반도체 메모리 장치 및 그것의 동작 방법 | |
| CN107808682B (zh) | 控制电路、外围电路、半导体存储器件及其操作方法 | |
| CN108694977B (zh) | 储存装置及其操作方法 | |
| CN110277132B (zh) | 存储器控制器、其操作方法以及包括其的存储装置 | |
| KR102461738B1 (ko) | 반도체 메모리 장치 및 그것의 동작 방법 | |
| KR102643658B1 (ko) | 반도체 메모리 장치 및 그것의 동작 방법 | |
| US9053790B1 (en) | Counter for write operations at a data storage device | |
| CN110119244A (zh) | 存储器控制器及其操作方法 | |
| CN110838313A (zh) | 半导体存储器装置及其操作方法 | |
| CN104103318B (zh) | 操作存储控制器的方法和包括存储控制器的数据存储设备 | |
| CN111858397A (zh) | 控制器以及操作该控制器的方法 | |
| CN111477258B (zh) | 半导体存储器装置、控制器以及两者的操作方法 | |
| CN111324300B (zh) | 控制器以及控制器的操作方法 | |
| KR102665270B1 (ko) | 반도체 메모리 장치 및 그것의 동작 방법 | |
| CN112908388A (zh) | 存储器装置及其操作方法 | |
| CN112992230B (zh) | 半导体存储器装置及操作方法与该装置的控制器的操作方法 | |
| CN111290876B (zh) | 存储器系统及其操作方法 | |
| US11216363B2 (en) | Controller to control semiconductor memory device to perform garbage collection operation and method of operating the same | |
| US20210223990A1 (en) | Semiconductor memory device, controller, and storage device having semiconductor memory device and controller | |
| CN111933204A (zh) | 半导体存储器装置及其操作方法 | |
| CN110299175A (zh) | 存储器控制器及其操作方法 |