TWI657440B - 記憶裝置、記憶單元及其控制方法 - Google Patents

記憶裝置、記憶單元及其控制方法 Download PDF

Info

Publication number
TWI657440B
TWI657440B TW105144303A TW105144303A TWI657440B TW I657440 B TWI657440 B TW I657440B TW 105144303 A TW105144303 A TW 105144303A TW 105144303 A TW105144303 A TW 105144303A TW I657440 B TWI657440 B TW I657440B
Authority
TW
Taiwan
Prior art keywords
memory
characteristic
memory unit
operational
programming
Prior art date
Application number
TW105144303A
Other languages
English (en)
Other versions
TW201818409A (zh
Inventor
洪俊雄
陳漢松
陳重光
Original Assignee
旺宏電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 旺宏電子股份有限公司 filed Critical 旺宏電子股份有限公司
Publication of TW201818409A publication Critical patent/TW201818409A/zh
Application granted granted Critical
Publication of TWI657440B publication Critical patent/TWI657440B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3431Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

一種記憶裝置,包括:一記憶單元,包含複數個記憶胞;一控制器,包含一儲存單元,儲存複數個操作選擇,各操作選擇對應至複數個記憶胞中至少一被選記憶胞的一特性(property)。

Description

記憶裝置、記憶單元及其控制方法
本發明是有關於一種包含記憶單元的記憶裝置、及藉由記憶裝置內之控制器控制記憶單元之方法。
記憶裝置包含複數個記憶胞以儲存資料。記憶胞所儲存的資料由記憶胞之臨界電壓所決定。然而,記憶胞的臨界電壓會因各種原因而漂移(drift),例如是編程干擾、讀取干擾、溫度干擾、及資料保存(retention)。此種漂移會導致讀記憶胞之資料讀取錯誤,致使記憶裝置失去可靠性。
根據本揭露之一實施例,提出一種記憶裝置,包括:一記憶單元,包括複數個記憶胞;以及一控制器,包括一儲存單元,儲存單元儲存複數個操作選擇,操作選擇的各者對應至複數個記憶胞中至少一被選記憶胞的特性(property)。
根據本揭露之另一實施例,提出一種記憶單元,包括:複數個記憶胞;以及一儲存裝置,被配置以儲存複數個操作參數,操作參數用於記憶胞之一編程操作、讀取操作、或抹除操作。操作參數係依據複數個記憶胞中之至少一被選記憶胞之一特性而被改變。
根據本揭露之又一實施例,提出一種方法用以藉由控制器控制記憶單元,此方法包括:儲存複數個操作選擇於一儲存單元中;監視記憶單元內複數個記憶胞中之一被選記憶胞之一特性;以及基於被選記憶胞之特性,選擇複數個操作選擇中之一者。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下:
100、600‧‧‧記憶裝置
110、610‧‧‧記憶單元
112、612‧‧‧記憶胞
114、614‧‧‧儲存裝置
116、616‧‧‧狀態機
120、620‧‧‧控制器
122、622‧‧‧處理器
124、624‧‧‧儲存單元
210、310‧‧‧橫座標
220、320‧‧‧縱座標
230_1、230_2、…、230_N‧‧‧編程脈衝
630_1、630_2、…、630_N‧‧‧記憶區塊
640_1、640_2、…、640_N‧‧‧儲存區段
410~430、510~560、710~760‧‧‧流程步驟
△VPGM‧‧‧增量步進
VPGM‧‧‧編程電壓
Vth‧‧‧臨界電壓
第1圖繪示依照一範例實施例之記憶裝置之方塊圖。
第2圖繪示依照一範例於增量步進脈衝編程(Incremental Step Pulse Programming,ISPP)中之編程電壓與時間之示意圖。
第3圖繪示依照一範例之複數個多位階記憶胞之臨界電壓分布之示意圖。
第4圖繪示依照一範例實施例之由控制器控制記憶單元之方法的流程圖。
第5圖繪示依照一範例實施例之由控制器控制記憶單元之方法的流程圖。
第6圖繪示依照一範例實施例之記憶裝置的方塊圖。
第7圖繪示依照一範例實施例之由控制器控制記憶單元之方法的流程圖。
以下將配合圖式詳細述明所揭露之實施例及範例。若可能,相同的參考數字在此些圖式中會被用於表示相同或相仿的元件。
第1圖依據範例實施例繪示記憶裝置100的方塊圖。記憶裝置100包含記憶單元110及控制器120,控制器120係通訊耦接至記憶單元110。
記憶單元110包含陣列之記憶胞112、儲存裝置114、及狀態機116。記憶胞112可以是NOR快閃記憶胞、NAND快閃記憶胞、相變化記憶(phase-change,PCM)胞、靜態隨機存取記憶(static random access memory,SRAM)胞、動態隨機存取記憶(dynamic random access memory,DRAM)胞、電阻性隨機存取記憶(resistive random access memory,RRAM)胞、或其他合適的電荷儲存記憶胞。記憶胞112可被編程以儲存由外部裝置例如主機(host device)所供應的資料。儲存裝置114包含邏輯電路或類比電路,被配置以儲存狀態機116所使用之各種操作參數。儲存裝置114 可選自揮發性記憶體、非揮發性記憶體、或兩者的組合。揮發性記憶體可更選自SRAM、DRAM、快取記憶體、暫存器、或類似物,非揮發性記憶體可更選自快閃記憶體、相變化記憶體、或類似物。狀態機116包含邏輯電路或類比電路,被配置以對記憶胞112執行各種操作,例如讀取、編程、抹除等。
控制器120包含一般用途處理器122及儲存單元124,儲存單元124被配置以儲存指令而由處理器122執行從而控制記憶單元110的操作。在替代實施例中,控制器120可包含特殊用途處理器,被配置以控制記憶單元110的操作。在另一替代實施例中,控制器可提供在記憶裝置100外部。儲存單元124可選自揮發性記憶體、非揮發性記憶體、或兩者的組合。揮發性記憶體可更選自SRAM、DRAM、快取記憶體、暫存器、或類似物,非揮發性記憶體可更選自快閃記憶體、相變化記憶體、或類似物。
傳統控制器一般輸出簡易控制指令例如讀取指令、編程指令、或抹除指令至記憶單元110。記憶單元110的狀態機116係被配置而具有預先定義之操作演算法,例如是預先定義讀取演算法、預先定義編程演算法、及預先定義抹除演算法。在接收從傳統控制器所輸入之控制指令時,記憶單元110的狀態機116從儲存裝置114擷取操作參數,並依據控制指令執行預先定義操作演算法於記憶胞112上。
舉例來說,記憶單元110的狀態機116可被配置以 包含增量步進脈衝編程(Incremental Step Pulse Programming,ISPP)演算法。第2圖繪示依據一範例之ISPP中編程電壓VPGM對比時間的示意圖。在第2圖中,橫座標210表示時間而縱座標220表示編程電壓VPGM的振幅(magnitude)。在ISPP演算法中,為了編程被選記憶胞達至目標臨界電壓,一序列之N編程脈衝(亦即編程射擊(shot))230_1、230_2、…、及230_N係施加至被選記憶胞。編程脈衝230_1、230_2、…、及230_N的各者導致被選記憶胞之臨界電壓的增量改變,而相對於先前之編程脈衝具有逐漸增高(stepped up)的振幅。編程脈衝230_1、230_2、…、及230_N的脈衝寬度是相等的。增量步進(亦即兩鄰近編程脈衝的差)為△VPGM。編程參數例如第一編程脈衝230_1的振幅、兩鄰近編程脈衝的增量步進△VPGM、脈衝寬度、及射擊次數N可被預先定義並儲存在記憶單元110的儲存裝置114中。當記憶單元110接收來自傳統控制器之編程指令時,狀態機116擷取來自儲存裝置114的編程參數,並依據編程參數執行ISSP編程演算法。
傳統控制器的一個問題在於傳統控制器不能監控記憶胞112的特性,不能控制操作演算法或在記憶胞112的特性劣化時更新記憶單元110的操作參數。如此,記憶單元110的可靠性會降低。
第3圖繪示依照一範例之複數個多位階記憶胞之臨界電壓分布之示意圖。第3圖中繪示四個臨界電壓分布,各分布表示預先決定之儲存狀態(例如“11”、“10”、“00”、“01”)。在第3 圖中,橫座標310表示臨界電壓Vth的大小而縱座標320表示此些記憶胞中臨界電壓Vth的出現的次數。第3圖所示之臨界電壓分布具有四個位階,分別標示為此處之LV0、LV1、LV2、及LV3。 當記憶胞係使用ISPP編程演算法而被編程時,記憶胞的臨界電壓Vth會從一個位階改變為次一個較高位階。在一些例子中,在多個編程及抹除周期後,記憶胞的臨界電壓Vth會因各種因素而漂移,例如是編程干擾、讀取干擾、溫度變化、及資料保存(retention)。若記憶胞仍使用相同的ISSP編程演算法及相同的編程參數(例如相同的增量步進△VPGM)進行編程,多位階記憶胞的臨界電壓分布寬度會變大。如此,記憶胞的感測視窗會變小。
請再次參照第1圖,為了克服傳統控制器有關的問題,本揭露實施例中,基於記憶胞112的特性,控制器120係被配置(亦即被調節(dial in))而具有多個待被輸出至記憶單元110的操作選擇。此些操作選擇可預先儲存在儲存單元124。此外,控制器120係被配置以監視或擷取記憶胞112之至少一特性,並基於記憶胞112的特性而選擇一個操作選擇。在本揭露一些實施例中,操作選擇係實現為各種二位元碼。然而,操作選擇可實現為其他形式,例如字串、數字等。
此些操作選擇係用於控制記憶單元110的各種操作(例如編程、讀取、抹除)。此些操作選擇可包含複數組操作選擇,分別對應至複數種形式的操作(例如編程、讀取、抹除)以用於對被選記憶單元110執行操作。各組操作選擇中的操作選擇分別地 對應至用於一種操作的多個操作演算法,並對應至該組。
舉例來說,儲存單元124可被配置以儲存一組操作選擇(例如是編程選擇),分別地對應至用於對被選記憶單元110進行編程操作的複數個編程演算法。表1總結多種編程選擇,實現為二位元碼,用於控制記憶單元110的編程操作以執行不同編程演算法。
舉例來說,請參照第3圖,當記憶單元110中的記憶胞112具有儲存狀態“10”時,記憶胞112具有之臨界電壓會落於臨界電壓分布視窗LV1內。由於編程干擾、讀取干擾、溫度變化、或資料維持,記憶胞112的臨界電壓可能會漂移至LV1的視窗外。在編程操作中,當控制器112偵測記憶胞112的臨界電壓 漂移時,控制單元120發布(issue)表1中的一個編程選擇以於記憶單元110中執行編程演算法。
此外,儲存單元124也可被配置以儲存對應至各種讀取演算法的各種讀取選擇(例如:前向電流讀取、前向電壓讀取、反向電壓讀取等)、及對應至各種抹除演算法的各種抹除選擇(例如:字元線零偏壓抹除、字元線負偏壓抹除等)。
操作選擇可包含複數個更新選擇以對應至來自記憶單元的擷取特性,以更新儲存在記憶單元110之儲存裝置114中所儲存的操作參數。在替代實施例中,儲存裝置114可為一部分的記憶胞112以儲存此種操作參數。操作參數可包含第一編程脈衝230_1的振幅、兩鄰近編程脈衝之間的增量步進△VPGM、脈衝寬度、及如第3圖所示之射擊次數N等。
舉例來說,控制器120可被配置為具有更新選擇以更新各編程演算法、各讀取演算法、及各抹除演算法中的各種操作參數。各種更新選擇可被儲存在控制器120的儲存單元124。
第4圖繪示依照一範例實施例之由控制器120控制記憶單元110之方法400的流程圖。如第4圖所示,控制器120首先監視記憶單元110中至少一記憶胞112的至少一特性(步驟410)。控制器120在監視至少一記憶胞112的特性時,可藉由擷取並分析特性資訊例如頁失敗位元數(fail bit count)、編程及抹除週期數、編程射擊次數(shot number)、或啞(dump)編程操作期間的臨界電壓位移值。頁失敗位元數表示一頁資料中的失敗位元的 次數。頁失敗位元數可從記憶單元110提供的錯誤校正碼(error correction code,ECC)資訊計算而得。編程及抹除周期數表示記憶單元110所執行之編程及抹除周期的次數。編程射擊次數表示在編程操作期間施加至被選記憶胞的編程射擊(亦即編程脈衝)的次數。抹除射擊數表示在抹除操作期間施加至被選記憶胞的抹除射擊的次數。臨界電壓位移值表示在啞編程操作期間的記憶胞的臨界電壓變化。
在一實施例中,控制器120藉由被動接收來自記憶單元110的特性資訊以監視至少一記憶胞112的特性。舉例來說,記憶單元110自動傳送特性資訊以及在讀取操作期間從記憶胞112讀取的資料。在另一實施例中,控制器120被配置(亦即被調節)而具有各種監視指令以要求來自記憶單元110的各種特性資訊。舉例來說,控制器120發布監視指令至記憶單元110以要求特性資訊。在接收監視指令時,記憶單元110的狀態機116傳送所要求之特性資訊至控制器120。在另一實施例中,控制器120自動監視並紀錄特性資訊(例如編程及抹除周期次數)於儲存單元124中。
控制器120接著基於記憶胞112的特性,從儲存單元124內所儲存之複數個操作選擇中選擇一操作選擇,如步驟420所示。特別地,控制器120首先基於記憶單元110內之記憶胞112的特性決定合適的操作演算法,並接著選擇對應至所決定之操作演算法的操作選擇。
舉例來說,如第3圖所示,當記憶胞112的編程或抹除周期的次數增加時,若相同的ISPP編程演算法係用於編程記憶胞112,則記憶胞112的臨界電壓分布寬度會變大,記憶胞112的感測視窗會變小。因此,依據所示實施例,當控制器120決定記憶胞112的編程或抹除次數超過預先決定之臨界次數時,控制器120決定控制記憶單元110以執行較小的△VPGM ISPP編程演算法。控制器120接著選擇較小的△VPGM ISPP編程演算法所對應的操作選擇。依據上述表1,較小的△VPGM ISPP編程演算法對應至操作選擇“010”。因此,控制器120選擇“010”為操作選擇。
控制器120接著輸出(亦即發布)被選之操作選擇至記憶單元110(步驟430)。在一些實施例中,操作選擇也可包含資料。在上述範例實施例,操作選擇包含較小的△VPGM ISPP編程演算法之二位元碼“010”、待被編程入記憶單元110之資料、及待被編程入記憶單元110之資料的位址。
回應於從控制器120所接收之操作選擇,記憶單元110執行對應於操作選擇之操作演算法。特別地,記憶單元110之狀態機116從儲存裝置114擷取操作參數,並依據所擷取之操作參數執行操作演算法,其中操作參數對應至所發布之操作選擇。
在上述範例中,當記憶單元10接收較小的△VPGMISPP編程選擇時,記憶單元110的狀態機116從儲存裝置114擷取編程參數,並依據所擷取之操作參數執行較小的△VPGM ISPP編 程演算法。接著,方法400結束。
第5圖繪示依照一範例實施例之由控制器120控制記憶單元110之方法500的流程圖。如第5圖所示,控制器120首先監視記憶單元110中之至少一記憶胞112的至少一特性(步驟510)。步驟510係相仿於步驟410,故不再提供步驟510的詳細說明。
控制器120基於至少一記憶胞112之特性決定操作演算法及操作參數(步驟520)。舉例來說,當至少一記憶胞112的特性改變時,控制器120依照至少一記憶胞112的變化後特性,決定改變操作參數。參照第3圖,在替代範例中,當控制器120決定至少一記憶胞112的編程及抹除周期次數超過預先決定的臨界次數時,控制器120決定以使具有減小的增量步進△VPGM的正常編程應被執行於記憶單元110,並決定將更新的數值(亦即改變後的數值)用於增量步進△VPGM。增量步進△VPGM的更新數值係小於最近一次使用之增量步進△VPGM的數值。
控制器120選擇來自儲存單元124中的複數個更新選擇的一個更新選擇,以於更新儲存裝置114中的操作參數(步驟530)。在上述替代範例中,當控制器120決定增量步進△VPGM應被減小時,控制器120從記憶單元124所儲存之複數個二位元碼(參照表1)中選擇一更新選擇,以更新增量步進。所選擇之更新選擇是用於更新增量步進△VPGM之唯一(unique)的資訊。
控制器120接著輸出被選之更新選擇至記憶單元 110(步驟540)。被選之更新選擇可包含操作參數的更新數值。在上述替代範例中,被選的更新選擇包含用於增量步進△VPGM之更新後的數值。
在一些實施例中,當複數個操作參數需被更新時,控制器120輸出在儲存單元內所儲存之更新選擇中的複數個被選更新選擇,以更新儲存裝置114內的複數個操作參數。在一些替代實施例中,控制器120輸出單一被選更新選擇,以命令記憶單元110更新特定操作演算法的複數個操作參數。在此些實施例中,單一被選更新選擇包含此複數個操作參數的更新數值。
回應於從控制器120所接收的被選更新選擇,記憶單元110依據被選之更新選擇更新操作參數。特別地,記憶單元110之狀態機116依據此更新數值更新儲存裝置114中的操作參數。在上述替代範例中,當記憶單元110從控制器120接收為了更新增量步進之被選更新選擇時,記憶單元110之狀態機116依據從控制器120所接收之被選更新選擇中所包含的更新數值,更新儲存裝置114中的增量步進。
控制器120也選擇對應於所決定之操作演算法的操作選擇(步驟550)。在上述之替代範例中,當控制器120決定正常IPP編程演算法應被執行時,控制器120選擇正常IPP編程演算法所對應的正常ISPP編程選擇。依據上述表1,正常IPP編程演算法對應至二位元碼“000”。因此,控制器120選擇“000”作為用於正常ISPP編程演算法的操作選擇。
控制器120接著輸出所決定之操作選擇至記憶單元110(步驟560)。操作選擇包含資料。在上述替代範例中,控制器120輸出包含正常ISPP編程演算法之編碼“000”的正常ISPP編程選擇、待被編程入記憶單元110之資料、及待被編程入記憶單元110之資料的位址。
回應於從控制器120所接收之操作選擇,記憶單元110依據此操作選擇執行操作演算法。在上述替代範例中,當記憶單元110接收正常ISPP編程選擇時,記憶單元110之狀態機116從儲存裝置114擷取編程參數,並依據所擷取之編程參數執行正常ISPP演算法。接著,方法500結束。
第6圖繪示依照一範例實施例之記憶裝置600的方塊圖。記憶裝置600包含記憶單元610及控制器620。記憶單元610包含陣列之記憶胞612、儲存裝置614、及狀態機616。記憶胞612可以是NOR快閃記憶胞、NAND快閃記憶胞、PCM胞、SRAM胞、DRAM胞、RRAM胞、或其他合適的電荷儲存記憶胞。記憶胞612可分為複數個記憶區塊630_0、630_1、…、及630_n。儲存裝置614包含邏輯電路或類比電路,被配置以儲存複數個操作參數。儲存裝置614可選自SRAM、DRAM、快取記憶體或暫存器。儲存裝置614包含儲存區段640_0、640_1、…、及640_n,分別對應至記憶區塊630_0、630_1、…、及630_n。儲存區段640_0、640_1、…、及640_n的各者係配置以儲存對應至記憶區塊630_0、630_1、…、及630_n之的者的操作參數。狀態機616包含邏輯 電路或類比電路,被配置以對記憶胞612執行各種操作,例如讀取、編程、抹除等。控制器620包含一般用途處理器622及記憶單元624,記憶單元624被配置以儲存由處理器622所執行之指令,從而控制記憶單元610的操作。在替代實施例中,控制器620可包含特殊用途邏輯電路,被配置以控制記憶單元610的操作。
記憶區塊630_0、630_1、…、及630_n內之記憶胞612的特性可彼此不同,原因例如是記憶胞612之物理特性差別、或記憶胞612內的儲存資料差別。因此,在範例實施例中,控制器620係被配置以監視記憶區塊630_0、630_1、…、及630_n之各者內之記憶胞612的特性,並基於所監視之效能針對記憶區塊630_0、630_1、…、及630_n之各者決定操作演算法及/或操作參數。
第7圖繪示依照一範例實施例之由控制器620控制記憶單元610之方法700的流程圖。如第7圖所示,控制器620監視記憶區塊630_0、630_1、…、及630_n之各者的至少一記憶胞612的至少一特性(步驟710)。控制器620可監視基於特性資訊之特性,例如記憶區塊630_0、630_1、…、及630_n之各者的頁失敗位元數、編程及抹除週期數、編程射擊次數、或啞編程操作期間的△Vt位移值。
控制器620基於被選記憶區塊內之記憶胞612的特性,決定記憶區塊630_0、630_1、…、及630_n之一被選者的操作演算法及操作參數(步驟720)。控制器620接著選擇一更新選擇 以更新被選記憶區塊的操作參數(步驟730)。此更新選擇是用於更新操作參數之唯一(unique)的資訊。
控制器620輸出被選記憶區塊之被選更新選擇(步驟740)。更新操作選擇包含操作參數的更新數值、及被選記憶區塊所對應之儲存區段640_0、640_1、…、及640_n中之一者的位址。舉例來說,記憶區塊630_0之更新操作參數的更新選擇包含記憶區塊630_0所對應之儲存區段640_0的位址。
回應於從控制器620所接收之更新選擇,記憶單元610更新被選記憶區塊所對應之儲存裝置614內之儲存區段的操作參數。特別地,記憶單元610的狀態機616針對更新選擇中所包含之位址所對應的儲存裝置614中的儲存區段進行更新操作參數。在上述範例實施例,當記憶單元610接收用於更新記憶區塊630_0之操作參數的更新選擇時,狀態機616依據更新選擇中所包含之更新數值,更新儲存區段640_0中的操作參數。
控制器620也選擇被決定用於被選記憶區塊之操作演算法所對應之操作選擇(步驟750)。控制器620接著輸出被選操作選擇至記憶單元610(步驟760)。操作選擇包含被選記憶區塊的位址。
回應於操作選擇,記憶單元610依據此操作選擇執行操作演算法於被選記憶區塊上。特別地,記憶單元610的狀態機616從被選記憶區塊所對應之儲存區段640_0、640_1、…、及640_n中之一者擷取操作參數,並依據所擷取之操作參數執行操 作演算法於被選記憶區塊上。接著,方法700結束。
依據上述實施例,控制器能監視記憶單元內之記憶胞的效能,並基於記憶胞的效能決定記憶單元所使用之操作演算法及操作參數,且控制記憶單元以使用所決定之操作參數執行所決定之操作演算法。以依方式,當記憶胞的效能劣化時,控制器能調整記憶單元所使用之操作演算法及/或操作參數,以增進記憶胞的效能。因此,能增進記憶單元的可靠度。
綜上所述,雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (19)

  1. 一種記憶裝置,包括:一記憶單元,包括複數個記憶胞;以及一控制器,包括一儲存單元,該儲存單元儲存複數個操作選擇,各該操作選擇對應至該複數個記憶胞中至少一被選記憶胞的一特性(property),其中該記憶單元中之該複數個記憶胞係分為複數個記憶區塊,該記憶單元的一儲存裝置包含複數個儲存區段,分別對應至該複數個記憶區塊,以及該控制器經組態以執行:監視該複數個記憶區塊中一被選者之該些記憶胞之該至少一特性;基於該被選區塊之該些記憶胞之該至少一特性,決定用於該被選記憶區塊之一操作選擇;及依據該被選記憶區塊之該些記憶胞之該至少一特性的變化,儲存一更新操作參數。
  2. 如申請專利範圍第1項所述之記憶裝置,其中該些操作選擇分別對應至編程操作、讀取操作、或抹除操作之至少一者。
  3. 如申請專利範圍第2項所述之記憶裝置,其中該控制器係配置以:基於該被選記憶胞之該特性,決定將被執行在該記憶單元之一操作演算法;及選擇該些操作選擇之一者以執行該被決定之該操作演算 法。
  4. 如申請專利範圍第1項所述之記憶裝置,其中該記憶單元的該儲存裝置被配置以儲存該記憶單元所使用之複數個操作參數;及其中各該操作選擇對應至該些操作參數之至少一者。
  5. 如申請專利範圍第4項所述之記憶裝置,其中該控制器被配置以:在接收並分析該被選記憶胞之該特性後發布(issue)該些操作選擇之一者至該記憶單元,接著對應至所發布之該操作選擇的該至少一操作參數被該記憶單元使用以執行一編程操作、讀取操作、或抹除操作。
  6. 如申請專利範圍第4項所述之記憶裝置,其中該被選記憶胞之特性為頁失敗位元數(fail bit count)、編程及抹除週期數、編程射擊次數(shot number)、或啞(dump)編程操作期間的臨界電壓位移值,其中該些操作參數係依據該被選記憶胞之一變化特性而被改變。
  7. 如申請專利範圍第1項所述之記憶裝置,其中該控制器係被配置透過輸出一監視指令至該記憶胞以要求該記憶胞之特性資訊,從而監視該被選記憶胞的該特性。
  8. 如申請專利範圍第4項所述之記憶裝置,其中該複數個儲存區段的各者被配置以儲存該複數個記憶區塊中所對應之一者的多個操作參數。
  9. 一種記憶單元,包括:複數個記憶胞;以及一儲存裝置,被配置以儲存複數個操作參數,該些操作參數用於該些記憶胞之一編程操作、讀取操作、或抹除操作;其中該些操作參數係依據該複數個記憶胞中之至少一被選記憶胞之一特性而被改變,以及其中該複數個記憶胞係分為複數個記憶區塊,該記憶單元的一儲存裝置包含複數個儲存區段,分別對應至該複數個記憶區塊,該儲存裝置更用以儲存一更新操作參數,該更新操作參數係依據受監視的該複數個記憶區塊中的一被選者之該些記憶胞之該至少一特性的變化所決定。
  10. 如申請專利範圍第9項所述之記憶單元,其中該複數個儲存區段的各者被配置以儲存該複數個記憶區塊中所對應之一者的操作參數。
  11. 如申請專利範圍第9項所述之記憶單元,其中該記憶胞之該特性為頁失敗位元數、編程及抹除週期數、編程試數、或啞編程操作期間的臨界電壓位移值,其中操作參數係依據該被選記憶胞之該變化特性而被改變。
  12. 一種記憶裝置控制方法,其中該記憶裝置包含一控制器及一記憶單元,該方法包括:儲存複數個操作選擇於一儲存單元中;監視該記憶單元內複數個記憶胞中之至少一被選記憶胞之 一特性;以及基於該被選記憶胞之該特性,選擇該複數個操作選擇中之一者,其中該複數個記憶胞係分為複數個記憶區塊,該記憶單元的一儲存裝置包含複數個儲存區段,分別對應至該複數個記憶區塊,以及該記憶裝置控制方法更包括:監視該複數個記憶區塊中一被選者之該些記憶胞之該至少一特性;基於該被選區塊之該些記憶胞之該至少一特性,決定用於該被選記憶區塊之一操作選擇;及依據該被選記憶區塊之該些記憶胞之該至少一特性的變化,儲存一更新操作參數。
  13. 如申請專利範圍第12項所述之方法,其中該些操作選擇分別對應至編程操作、讀取操作、或抹除操作之至少一者。
  14. 如申請專利範圍第13項所述之方法,其中基於該被選記憶胞之該特性選擇該複數個操作選擇中之一者的步驟包括:基於該被選記憶胞之該特性,決定將被執行在該記憶單元之一操作演算法;及選擇該些操作選擇之一者以執行該被決定之該操作演算法。
  15. 如申請專利範圍第12項所述之方法,其中該記憶單元的該儲存裝置被配置以儲存該記憶單元所使用之複數個操作參數; 及其中各該操作選擇對應至該些操作參數之至少一者。
  16. 如申請專利範圍第15項所述之方法,更包括:在接收並分析該被選記憶胞之該特性後發布該些操作選擇之一者至該記憶單元,接著對應至所發布之該操作選擇的該至少一操作參數被該記憶單元使用以執行一編程操作、讀取操作、或抹除操作。
  17. 如申請專利範圍第15項所述之方法,其中監視該記憶單元內之一被選記憶胞之一特性之步驟包括:監視頁失敗位元數、編程及抹除週期數、編程試數、或該被選記憶胞之一啞編程操作期間的臨界電壓位移值中之至少一者;及該方法更包括:依據該被選記憶胞之一變化特性改變該些操作參數。
  18. 如申請專利範圍第12項所述之方法,其中監視該記憶單元內之一被選記憶胞之一特性之步驟包括:輸出一監視指令至該記憶單元以要求該被選記憶單元之特性資訊。
  19. 如申請專利範圍第15項所述之方法,其中該複數個儲存區段的各者被配置以儲存該複數個記憶區塊中所對應之一者的多個操作參數。
TW105144303A 2016-11-09 2016-12-30 記憶裝置、記憶單元及其控制方法 TWI657440B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/346,790 US9977627B1 (en) 2016-11-09 2016-11-09 Memory device and memory controlling method
US15/346,790 2016-11-09

Publications (2)

Publication Number Publication Date
TW201818409A TW201818409A (zh) 2018-05-16
TWI657440B true TWI657440B (zh) 2019-04-21

Family

ID=62133930

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105144303A TWI657440B (zh) 2016-11-09 2016-12-30 記憶裝置、記憶單元及其控制方法

Country Status (3)

Country Link
US (1) US9977627B1 (zh)
CN (1) CN108074612B (zh)
TW (1) TWI657440B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210025412A (ko) * 2019-08-27 2021-03-09 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 동작 방법
JP7305592B2 (ja) * 2020-03-30 2023-07-10 キオクシア株式会社 メモリシステム、メモリデバイス、及びメモリシステムの制御方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050073869A1 (en) * 2002-09-11 2005-04-07 Gudesen Hans Gude Method for operating a ferroelectric of electret memory device, and a device of this kind
US20090310408A1 (en) * 2008-06-13 2009-12-17 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
US20100232221A1 (en) * 2009-03-10 2010-09-16 Samsung Electronics Co., Ltd. Nonvolatile memory device and method of reading same
US20140226412A1 (en) * 2012-08-13 2014-08-14 Phison Electronics Corp. Data writing method, and memory control circuit unit and memory storage apparatus using the same
US20150262699A1 (en) * 2014-03-17 2015-09-17 Kabushiki Kaisha Toshiba Semiconductor memory device and memory controller

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6091623A (en) * 1997-12-12 2000-07-18 Lg Semicon Co., Ltd. Split word line ferroelectric memory
CN102640227B (zh) * 2009-09-23 2016-06-01 纳姆迪兰斯有限公司 一种快闪存储器件及控制方法
US9001578B2 (en) * 2012-09-11 2015-04-07 Seagate Technology Llc Soft erasure of memory cells
TWI541810B (zh) * 2014-04-21 2016-07-11 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US9658821B2 (en) * 2014-09-29 2017-05-23 International Business Machines Corporation Single operation array index computation
US9324441B1 (en) * 2015-01-20 2016-04-26 Sandisk Technologies Inc. Fast adaptive trimming of operating parameters for non-volatile memory devices
KR102501751B1 (ko) * 2015-09-22 2023-02-20 삼성전자주식회사 메모리 콘트롤러, 불휘발성 메모리 시스템 및 그 동작방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050073869A1 (en) * 2002-09-11 2005-04-07 Gudesen Hans Gude Method for operating a ferroelectric of electret memory device, and a device of this kind
US20090310408A1 (en) * 2008-06-13 2009-12-17 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
US20100232221A1 (en) * 2009-03-10 2010-09-16 Samsung Electronics Co., Ltd. Nonvolatile memory device and method of reading same
US20140226412A1 (en) * 2012-08-13 2014-08-14 Phison Electronics Corp. Data writing method, and memory control circuit unit and memory storage apparatus using the same
US20150262699A1 (en) * 2014-03-17 2015-09-17 Kabushiki Kaisha Toshiba Semiconductor memory device and memory controller

Also Published As

Publication number Publication date
CN108074612A (zh) 2018-05-25
US9977627B1 (en) 2018-05-22
CN108074612B (zh) 2021-04-27
TW201818409A (zh) 2018-05-16

Similar Documents

Publication Publication Date Title
KR102398957B1 (ko) 동적 타깃 교정을 이용하는 메모리 디바이스
US10613781B2 (en) Apparatus and method for determining an operating condition of a memory cell based on cycle information
KR102380614B1 (ko) 동적 프로그래밍 교정을 이용하는 메모리 디바이스
KR100799018B1 (ko) 불휘발성 메모리 소자 및 자기 보상 방법
US9377962B2 (en) Determining bias information for offsetting operating variations in memory cells
US9224456B2 (en) Setting operating parameters for memory cells based on wordline address and cycle information
JP5280757B2 (ja) フラッシュメモリシステム及びそのエラー訂正方法
TWI574277B (zh) 記憶體裝置中之錯誤校正操作
JP4382675B2 (ja) 多状態メモリのための高性能検証
KR101434403B1 (ko) 플래시 메모리 장치, 그것의 프로그램 방법, 그리고 그것을포함하는 메모리 시스템
KR100967004B1 (ko) 플래시 메모리 장치의 동작 제어 방법
JP2009020996A (ja) 不揮発性メモリ装置及び読み取りのための方法
KR20120098164A (ko) 불휘발성 메모리 장치 및 그 동작방법
KR101684037B1 (ko) 조절가능한 충전 상태 레벨(들)을 사용하여 메모리 셀을 프로그래밍하는 장치 및 방법
US9236146B2 (en) Single check memory devices and methods
KR101985952B1 (ko) 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 구동 방법
TWI657440B (zh) 記憶裝置、記憶單元及其控制方法
US11307918B2 (en) Memory controller performing recovery operation, operating method of the same, and memory system including the same
JP2013125575A (ja) 不揮発性半導体記憶装置、および不揮発性半導体記憶装置における動作条件制御方法
KR20150075887A (ko) 메모리 시스템 및 이의 동작 방법
KR20090068667A (ko) 불휘발성 메모리 장치의 프로그램 방법
KR20100138543A (ko) 불휘발성 메모리 소자의 동작 방법