CN111198657A - 存储器控制器、操作存储器控制器的方法和存储器系统 - Google Patents

存储器控制器、操作存储器控制器的方法和存储器系统 Download PDF

Info

Publication number
CN111198657A
CN111198657A CN201911104897.1A CN201911104897A CN111198657A CN 111198657 A CN111198657 A CN 111198657A CN 201911104897 A CN201911104897 A CN 201911104897A CN 111198657 A CN111198657 A CN 111198657A
Authority
CN
China
Prior art keywords
memory
subset
read
memory device
data
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201911104897.1A
Other languages
English (en)
Inventor
吴银珠
金暎植
南喜铉
李永根
赵永进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN111198657A publication Critical patent/CN111198657A/zh
Pending legal-status Critical Current

Links

Images

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/0658Controller construction arrangements
    • 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/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/108Parity data distribution in semiconductor storages, e.g. in SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1489Generic software techniques for error detection or fault masking through recovery blocks
    • 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
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1659Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4085Word line control circuits, e.g. word line drivers, - boosters, - pull-up, - pull-down, - precharge
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5607Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using magnetic storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5685Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using storage elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/003Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0061Timing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/72Array wherein the access device being a diode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Materials Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Semiconductor Memories (AREA)

Abstract

提供存储器控制器、操作存储器控制器的方法和存储器系统。所述存储器系统包括:存储器装置,包括构成多个子集的多个存储器单元;以及存储器控制器,用于控制存储器装置。存储器控制器控制存储器装置,以管理指示由存储器装置针对所述多个子集中的每个子集执行的读取操作的数量的读取计数,并且基于与所述多个子集之中的子集对应的读取计数对所述子集执行恢复操作。所述多个子集中的每个子集包括多个页。所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。

Description

存储器控制器、操作存储器控制器的方法和存储器系统
本申请基于并要求于2018年11月16日提交到韩国知识产权局的第10-2018-0141955号韩国专利申请的优先权,所述韩国专利申请的公开通过引用全部包含于此。
技术领域
公开涉及存储器控制器和存储器系统,更具体地,涉及执行恢复操作的存储器控制器、操作该存储器控制器的方法以及包括该存储器控制器的存储器系统。
背景技术
作为非易失性存储器装置,电阻式存储器装置(诸如,相变RAM(PRAM)、电阻式RAM(RRAM)和磁性RAM(MRAM))使用通过电阻状态的变化存储数据的可变电阻元件作为存储器单元。构成电阻式存储器装置的材料的共性是电阻值根据电流或电压的大小和/或方向而变化,并且具有即使在电流或电压被切断时也保持电阻值的非易失性特性。
在这种情况下,包括在电阻式存储器装置中的电阻式存储器单元的电阻根据施加到另一存储器单元的电压而变化。随着电阻变化,数据的可靠性可能无法被确保或者存储器单元本身可能劣化。
发明内容
公开提供一种以子集为单位管理存储器单元的读取操作的数量从而保持存储器单元的电阻分布的存储器控制器。
根据公开的一个方面,提供一种存储器系统,所述存储器系统包括:存储器装置,包括:构成多个子集的多个存储器单元;以及存储器控制器,被配置为:管理指示由存储器装置在所述多个子集中的每个子集中执行的读取操作的数量的读取计数,以及基于与所述多个子集之中的子集对应的读取计数,对所述子集执行恢复操作,其中,所述多个子集中的每个子集包括多个页,以及其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
根据公开的另一方面,提供一种操作用于控制存储器装置的操作的存储器控制器的方法,其中,存储器装置包括构成多个子集的多个存储器单元,所述方法包括:将读取命令发送至存储器装置;增加所述多个子集之中的与读取命令对应的子集的读取计数;以及基于与所述子集对应的读取计数,对所述子集执行恢复操作,其中,所述子集包括多个页,以及其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
根据公开的另一方面,提供一种用于控制存储器装置的存储器控制器,其中,存储器装置包括构成多个子集的多个存储器单元,所述存储器控制器包括:存储器,被配置为:存储一条或多条指令;以及至少一个处理器,被配置为:执行所述一条或多条指令,以管理指示针对所述多个子集中的每个子集发送至存储器装置的读取命令的数量的读取计数,针对所述多个子集之中的子集,确定读取计数是否达到第一参考值,以及基于读取计数达到第一参考值的确定的结果,输出针对与读取计数对应的子集执行恢复操作的指令,其中,所述多个子集中的每个子集包括多个页,以及其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
附图说明
从下面结合附图的详细描述,公开的实施例将被更清楚地理解,其中:
图1是示出根据公开的示例实施例的存储器系统的框图;
图2是示出包括在图1的存储器系统中的存储器控制器的框图;
图3是示出包括在图1的存储器系统中的存储器装置的框图;
图4是示出图3的存储器单元阵列的实施示例的框图;
图5是示出图4的一个存储器区块的示例实施例的电路图;
图6是用于解释图5的存储器单元的示例特性的曲线图;
图7是示出图4的一个存储器区块的示例实施例的电路图;
图8是用于解释根据公开的示例实施例的操作存储器控制器的方法的流程图;
图9是用于解释根据公开的示例实施例的操作存储器系统的方法的流程图;
图10是用于解释根据公开的示例实施例的操作存储器系统的方法的流程图;
图11是用于解释根据公开的示例实施例的操作存储器系统的方法的流程图;以及
图12是用于解释根据公开的示例实施例的操作存储器控制器的方法的流程图。
具体实施方式
在下文中,将参照附图详细描述公开的实施例。
图1是示出根据公开的示例实施例的存储器系统10的框图。
参照图1,存储器系统10可包括存储器控制器100和存储器装置200。
存储器控制器100可响应于来自主机HOST的写入/读取请求,控制存储器装置200以将数据写入存储器装置200或读取存储在存储器装置200中的数据。例如,存储器控制器100可将地址ADDR、命令CMD(例如,读取命令RCMD、写入命令WCMD、恢复命令recCMD和重新写入命令reWCMD)以及控制信号CTRL提供给存储器装置200,从而控制提供关于存储器装置200的编程(或写入)操作和读取操作。此外,将被写入的数据DATA和读取的数据DATA可在存储器控制器100与存储器装置200之间发送和接收。在图1中,尽管重新写入命令reWCMD被示出为与写入命令WCMD不同的命令,但是公开不限于此,并且重新写入命令reWCMD可被包括在写入命令WCMD中,而不是作为单独的命令。
存储器控制器100可从主机HOST接收基于逻辑地址的请求。由存储器控制器100的处理器110驱动的闪存转换层FTL可将逻辑地址转换为存储器装置200的物理地址。存储器控制器100可将转换的物理地址传送至存储器装置200。
存储器控制器100可对在存储器装置200中执行的读取操作进行计数。例如,存储器控制器100可对发送至存储器装置200的读取命令RCMD的数量进行计数。在一个实施例中,存储器控制器100可管理子集SUB-SET_1至SUB-SET_z中的每个的读取计数RCNT。也就是说,存储器控制器100可以以子集为单位管理读取计数RCNT。
存储器控制器100可对在存储器装置200中执行的写入操作进行计数。也就是说,存储器控制器100可对发送至存储器装置200的写入命令WCMD的数量进行计数。在一个实施例中,存储器控制器100可管理子集SUB-SET_1至SUB-SET_z中的每个的写入计数WCNT。也就是说,存储器控制器100可基于子集单元管理写入计数WCNT。
然而,公开不限于此,并且存储器控制器100可不基于子集单元管理写入计数WCNT。根据另一实施例,存储器控制器100可不基于子集单元管理读取计数RCNT。根据另一实施例,在存储器控制器100中用于管理读取计数RCNT和写入计数WCNT的单位可彼此不同。
存储器控制器100可基于读取计数RCNT来确定是否执行针对子集SUB-SET_1至SUB-SET_z中的每个的恢复操作。在这种情况下,恢复操作可表示这样的操作,该操作用于通过防止与存储在子集SUB-SET_1至SUB-SET_z中的数据对应的电阻分布的劣化来减少针对子集SUB-SET_1至SUB-SET_z的读取操作中的错误。
在一个实施例中,当子集SUB-SET_1至SUB-SET_z中的至少一个子集需要恢复操作时,存储器控制器100可将恢复命令recCMD发送至存储器装置200。响应于恢复命令recCMD,存储器装置200的控制电路230可将恢复电压提供给与恢复命令recCMD对应的子集。
在一个实施例中,当子集SUB-SET_1至SUB-SET_z之中的至少一个子集需要恢复操作时,存储器控制器100可将重新写入命令reWCMD发送至存储器装置200。存储器装置200可响应于重新写入命令reWCMD对需要恢复操作的子集执行重新写入操作。也就是说,存储器装置200可重新写入写在需要恢复操作的子集中的数据DATA。
存储器控制器100可基于写入计数WCNT对子集SUB-SET_1至SUB-SET_z中的每个执行损耗均衡操作。当数据通过损耗均衡操作被写入同一存储器单元时,存储器单元的劣化可被防止。
存储器控制器100可包括由处理器110驱动的计数器CNT。当对特定存储器单元执行读取操作时,计数器CNT可增加包括特定存储器单元的子集的读取计数RCNT。此外,当对特定存储器单元执行写入操作时,计数器CNT可增加包括特定存储器单元的子集的写入计数WCNT。
存储器装置200可包括存储器单元阵列210和控制电路230。存储器单元阵列210可包括多个存储器单元(例如,图5中的MC),其中,每个存储器单元被布置在多条第一信号线和多条第二信号线彼此交叉的区域中。也就是说,存储器单元阵列210可以是具有交叉点结构的存储器单元阵列。在一个实施例中,多条第一信号线可以是多条字线,多条第二信号线可以是多条位线。在另一实施例中,多条第一信号线可以是多条位线,多条第二信号线可以是多条字线。
在一个实施例中,多个存储器单元可包括包含可变电阻元件的电阻式存储器单元。例如,当可变电阻元件包括相变材料(例如,锗-锑-碲(Ge-Sb-Te,GST))并且可变电阻元件的电阻基于温度而变化时,存储器装置200可以是PRAM。可选地,例如,当可变电阻元件包括上电极、下电极以及上电极与下电极之间的复合金属氧化物时,存储器装置200可以是RRAM。可选地,例如,当可变电阻元件包括磁体的上电极、磁体的下电极以及上电极与下电极之间的电介质时,存储器装置200可以是MRAM。因此,存储器装置200可被称为电阻式存储器装置,并且存储器系统10可被称为电阻式存储器系统。
在一个实施例中,多个存储器单元中的每个可以是存储一比特数据的单层单元(SLC)。在这种情况下,存储器单元可根据存储的数据具有两种不同的电阻分布。在另一实施例中,多个存储器单元中的每个可以是能够存储两比特数据的多层单元(MLC)。在这种情况下,存储器单元可根据存储的数据具有四种电阻分布。在另一实施例中,多个存储器单元中的每个可以是能够存储三比特数据的三层单元(TLC)。在这种情况下,存储器单元可根据存储的数据具有八种电阻分布。然而,公开不限于此。在一个实施例中,存储器单元阵列210可包括各自能够存储4比特或更多比特的数据的存储器单元,并且存储器单元阵列210可包括单层单元、多层单元和/或三层单元。
存储器单元阵列210可包括子集SUB-SET_1至SUB-SET_z。每个子集可以是存储器控制器100管理读取计数RCNT的单位,并且可包括作为执行读取操作/写入操作的单位的多个页。此外,每个子集可包括连接到不同的存储器隔间(memory bay)(例如,图4中的BAY)中的每个中的一条字线的存储器单元。
控制电路230可控制存储器装置200的操作。在一个实施例中,响应于从存储器控制器100接收到的命令CMD,控制电路230可控制施加到与存储器单元阵列210连接的第一信号线和第二信号线的电压的电压电平,或者电压被施加的时序。在一个实施例中,控制电路230可响应于从存储器控制器100接收到的命令CMD,对子集SUB-SET_1至SUB-SET_z中的至少一个执行恢复操作。根据实施例的存储器装置200可执行恢复操作,从而防止包括在子集SUB-SET_1至SUB-SET_z中的存储器单元的电阻分布的劣化。
图2是详细示出包括在图1的存储器系统10中的存储器控制器100的框图。
参照图2,存储器控制器100可包括处理器110、随机存取存储器(RAM)120、纠错码(ECC)电路130、主机接口140、存储器接口150和总线160。
处理器110可包括中央处理器或微处理器等,并且处理器110可控制存储器控制器100的整体操作。处理器110可通过主机接口140与主机HOST通信,并且可通过存储器接口150与存储器装置200通信。处理器110可使用RAM 120作为用于控制存储器装置200的操作存储器、高速缓冲存储器或缓冲存储器。
在一个实施例中,闪存转换层FTL和计数器CNT中的至少一个可以以软件(诸如,固件、操作系统和应用)的形式来实现。在一个实施例中,闪存转换层FTL和计数器CNT中的至少一个可以以硬件(诸如,电路或知识产权(IP))被实现在处理器110中。在一个实施例中,闪存转换层FTL和计数器CNT中的至少一个可以以与处理器110相关联的硬件和软件的组合的形式来实现。在一个实施例中,闪存转换层FTL和计数器CNT中的至少一个可被提供为与处理器110分离的单独的模块。
根据公开嵌入的存储器控制器100可使用计数器CNT来管理作为读取命令被发送的次数的读取计数RCNT,并且可基于读取计数RCNT来确定是否执行恢复操作。因此,存储器控制器100可通过恢复操作来防止包括在存储器装置200中的存储器单元的电阻分布的劣化。在一个实施例中,在存储器控制器100中用于管理读取计数RCNT和写入计数WCNT的单位可分别与子集单位相同。
RAM 120可用作处理器110的操作存储器、高速缓冲存储器或缓冲存储器。RAM 120可存储处理器110执行的代码和指令。RAM 120可存储由处理器110处理的数据。RAM 120可包括SRAM(静态RAM)。在一个实施例中,处理器110可被配置为驱动用于控制存储器控制器100的固件,并且固件可被加载到RAM 120以被驱动。
ECC电路130可基于将要通过存储器接口150写入存储器装置200的数据来执行ECC编码。ECC编码的数据可通过存储器接口150传送至存储器装置200。ECC电路130可对通过存储器接口150从存储器装置200接收的数据执行ECC解码。
主机接口140可与主机HOST接口连接,以从主机HOST接收对存储器操作的请求。例如,主机接口140从主机HOST接收各种请求(诸如,读取数据和写入数据),并且作为响应,生成用于存储器装置200的存储器操作的各种内部信号。
存储器接口150可在存储器控制器100与存储器装置200之间提供接口,例如,写入数据可经由存储器接口150发送至存储器装置200并且读取数据可经由存储器接口150从存储器装置200接收。此外,存储器接口150可向存储器装置200提供命令和地址。此外,存储器接口150可从存储器装置200接收多条信息以将接收的信息提供给存储器控制器100。
总线160可被配置为在存储器控制器100的组件之间提供通道。在一个实施例中,存储器控制器100的总线160可被划分为控制总线和数据总线。数据总线可在存储器控制器100内传输数据,控制总线可被配置为在存储器控制器100内传输控制信息(诸如,命令、地址)。数据总线和控制总线可被彼此分离以相互不干扰或相互不影响。
图3是示出包括在图1的存储器系统10中的存储器装置200的框图。
参照图3,存储器装置200可包括存储器单元阵列210、写入/读取电路220、控制电路230、参考信号生成电路240、电压生成电路250、行解码器(X-DEC)260和列解码器(Y-DEC)270。
存储器单元阵列210可包括多个存储器单元,并且多个存储器单元可连接到多条第一信号线和多条第二信号线。在一个实施例中,多条第一信号线可以是多条字线WL,多条第二信号线可以是多条位线BL。当各种电压信号或电流信号通过多条字线WL、多条位线BL来提供时,数据可被写入选择的存储器单元或者数据可从选择的存储器单元被读取,并且可防止对剩余的或未选择的存储器单元执行写入操作或读取操作。稍后将参照图4描述构成存储器单元阵列210的存储器单元的示例描述。
可在存储器装置200中接收用于指示根据命令CMD将被访问的存储器单元的地址ADDR,并且地址ADDR可包括用于选择存储器单元阵列210的字线WL的行地址RA和用于选择存储器单元阵列210的位线BL的列地址CA。行解码器260响应于行地址RA执行字线选择操作,列解码器270可响应于列地址CA执行位线选择操作。
写入/读取电路220可连接到存储器单元阵列210的第一信号线和/或第二信号线,以将数据写入存储器单元或从存储器单元读取数据。写入/读取电路220可包括感测放大器221、写入驱动器223和数据比较-写入单元(DCW单元)225。在图3中,尽管写入/读取电路220可包括数据比较-写入单元225,但是数据比较-写入单元225不限于此,并且数据比较-写入单元225可具有与写入/读取电路220分离的配置,且可被配置为控制写入/读取电路220的操作。
感测放大器221可经由位线BL连接到存储器单元阵列210。在读取操作中,感测放大器221可通过位线BL接收数据电压以放大接收到的数据电压。为此,感测放大器221可被实现为包括用于感测并放大数据电压的多个感测放大器电路SA。例如,每个感测放大器电路SA可被实现为将数据电压与参考电压进行比较,并且输出比较的结果作为数字电平数据信号。一个感测放大器电路SA可连接到构成存储器单元阵列210的一个存储器隔间(例如,图4中的BAY)。
数据比较-写入单元225可连接到感测放大器221和写入驱动器223。数据比较-写入单元225可从存储器控制器100(例如,图1中的100)接收数据DATA。数据比较-写入单元225可响应于控制电路230的控制信号CTRL_RW控制感测放大器221和写入驱动器223执行比较-写入操作或重新写入操作。
例如,当请求写入的数据和存储在存储器单元中的数据相同时,数据比较-写入单元225可在比较-写入操作被执行时控制写入驱动器223保持存储在存储器单元中的数据。当请求写入的数据和存储在存储器单元中的数据不相同时,数据比较-写入单元225可控制写入驱动器223允许请求写入的数据被重写入存储器单元。
此外,例如,当重新写入操作被执行时,数据比较-写入单元225可控制感测放大器221和写入驱动器223执行用于不管存储在存储器单元中的数据如何都将请求写入的数据写入存储器单元的重新写入操作。也就是说,与比较-写入操作不同,当重新写入操作被执行时,数据比较-写入单元225可控制感测放大器221不执行预读取操作,并且可控制写入驱动器223允许请求写入的数据被重写入相应的存储器单元。例如,即使已写入的数据和新请求的数据相同,新请求的数据也可被重写入存储器单元。例如,写入脉冲可被施加到写入操作被执行的页中的存储器单元中的至少一个,在存储器单元中的所述至少一个中,已写入的数据和新请求的数据是相同的。例如,用于写入操作的写入脉冲可被施加到写入操作被执行的页中的所有存储器单元。
电压生成电路250可生成用于写入操作的写入电压Vwrite,并且可生成用于读取操作的读取电压Vread。此外,电压生成电路250可生成用于恢复操作的恢复电压Vrecov。写入电压Vwrite可包括作为与写入操作有关的各种电压的置位脉冲、复位脉冲等。恢复电压Vrecov可以是与恢复操作有关的电压,并且可包括恢复脉冲。恢复脉冲可具有与置位脉冲和复位脉冲不同的电压电平,或者恢复脉冲的持续时间可与置位脉冲和复位脉冲不同。写入电压Vwrite、读取电压Vread和恢复电压Vrecov可通过列解码器270被供应给位线BL,或者可通过行解码器260被供应给字线WL。
参考信号生成电路240可生成参考电压Vref和参考电流Iref作为与数据读取操作有关的各种参考信号。例如,感测放大器221可连接到位线BL的节点(例如,感测节点)以确定数据,并且可通过关于感测节点的电压和参考电压Vref的比较操作来确定数据值。可选地,当电流感测方法被应用时,参考信号生成电路240可生成参考电流Iref以将参考电流Iref提供给存储器单元阵列210,并且可通过将由参考电流Iref引起的感测节点的电压与参考电压Vref进行比较来确定数据值。
写入/读取电路220可将读取数据的确定结果提供给控制电路230。控制电路230可参照确定结果来控制存储器单元阵列210的写入操作和读取操作。
控制电路230可基于从存储器控制器100接收的命令CMD、地址ADDR和控制信号CTRL输出各种控制信号CTRL_RW,以将数据写入存储器单元阵列210,或者从存储器单元阵列210读取数据。控制电路230可基于从存储器控制器100接收的命令CMD、地址ADDR和控制信号CTRL来执行恢复操作。例如,控制电路230可控制电压生成电路250、列解码器270和行解码器260向与恢复命令recCMD对应的子集(例如,图1中的子集SUB-SET_1至SUB-SET_z中的至少一个)提供恢复电压Vrecov。例如,控制电路230可控制电压生成电路250、列解码器270和行解码器260以将数据重新写入与重新写入命令reWCMD对应的子集(例如,图1中的子集SUB-SET_1至SUB-SET_z中的至少一个)。
图4是示出图3的存储器单元阵列210的实施示例的框图。图3的存储器单元阵列210可被实现为包括在其中存储器区块TILE1至TILE4沿平面图中的行方向和列方向被布置的存储器区块组TILE_GR。在这种情况下,存储器区块组TILE_GR可包括多个存储器隔间BAY1至BAY128,并且存储器区块TILE1至TILE4可布置在每个存储器隔间BAY中。存储器隔间BAY可包括连接到包括在图3的感测放大器221中的多个感测放大器电路中的一个的存储器单元。
图4示出128个存储器隔间BAY1至BAY128,其中,四个存储器区块TILE1至TILE4构成一个存储器隔间BAY。公开不限于此,并且存储器隔间BAY1至BAY128的数量和存储器区块TILE1至TILE4的数量可根据实施例被不同地配置。
参照图4,存储器区块组TILE_GR可被设置为以页PAGE为单位被写入或读取数据的存储器区域。一个页PAGE可以是存储器单元之中的同时执行写入操作或读取操作的选择的存储器单元的集合。页PAGE可包括在存储器区块组TILE_GR的不同的存储器隔间BAY1至BAY128中的每个中包括的存储器单元。例如,当假设与一个页单元对应的数据比特是128比特(或16字节)时,在包括在存储器区块组TILE_GR中的128个存储器隔间BAY1至BAY128中的每个中,一比特数据可被写入或读取。
一个子集SUB-SET可包括在存储器区块组TILE_GR的不同的存储器隔间BAY1至BAY128中的每个中包括的存储器单元。在一个实施例中,一个子集SUB-SET可包括多个页PAGE。因此,存储器控制器100可更容易地管理子集SUB-SET的读取计数。
在一个实施例中,不同的存储器隔间BAY1至BAY128中的每个中的连接到一条字线的存储器单元可被包括在一个子集SUB-SET中。在一个实施例中,与多个存储器隔间BAY1至BAY128中的每个中的相同字线地址对应的存储器单元包括在同一子集SUB-SET中。在一个实施例中,与多个存储器区块TILE至TILE4中的每个中的相同字线地址对应的存储器单元包括在同一子集中。稍后将参照图5和图7描述构成一个区块中的子集的存储器单元。
图5是示出图4的一个存储器区块TILE2的示例实施例的电路图。
参照图5,存储器区块TILE2可包括多条字线WL0至WLm、多条位线BL0至BLm以及多个存储器单元MC,其中,m是大于0的整数。这里,字线WL的数量、位线BL的数量和存储器单元MC的数量可根据实施例被不同地改变。
根据实施例,多个存储器单元MC中的每个可包括可变电阻元件R和选择元件D。这里,可变电阻元件R可被称为可变电阻元件或可变电阻材料,选择元件D可被称为开关元件。然而,与图5中示出的存储器单元MC不同,多个存储器单元MC中的每个可仅包括可变电阻元件R,可包括可变电阻元件R和双向二极管,或者可包括可变电阻元件R和晶体管。
在一个实施例中,可变电阻元件R可连接在多条字线WL0到WLm中的一条与选择元件D之间,并且选择元件D可连接在可变电阻元件R与多条位线BL0至BLm中的一条之间。然而,公开不限于此,选择元件D可连接在多条字线WL0到WLm中的一条与可变电阻元件R之间,并且可变电阻元件R可连接到选择元件D与多条位线BL0至BLm中的一条之间。
选择元件D可连接在多条位线BL0至BLm中的任何一条与可变电阻元件R之间,并且对可变电阻元件R的电流的供应可根据施加到连接的字线和位线的电压来控制。在一个实施例中,选择元件D可以是PN结二极管或PIN结二极管,二极管的阳极可连接到可变电阻元件R,二极管的阴极可连接到多条位线BL0至BLm。在这种情况下,当二极管的阳极与阴极之间的电压差大于二极管的阈值电压时,二极管可被导通,并且电流可被供应给可变电阻元件R。
图6是解释图5的存储器单元MC的示例特性的示图。图6示出存储器单元MC利用一比特来编程的单层单元的理想分布。在图6中,横轴表示电阻,纵轴指示存储器单元的数量。
参照图5和图6,存储器单元MC的可变电阻元件R可具有低电阻状态LRS或高电阻状态HRS。通过将置位脉冲施加到存储器单元MC来将可变电阻元件R从高电阻状态HRS切换到低电阻状态LRS的操作被称为置位操作或置位写入操作。此外,通过将复位脉冲施加到存储器单元来将可变电阻元件R从低电阻状态LRS切换到高电阻状态HRS的操作被称为复位操作或复位写入操作。
由于低电阻状态LRS引起的分布与由于高电阻状态HRS引起的分布之间的任意电阻可被设置为阈值电阻Rth(REF)。在存储器单元MC的读取操作中,当读取操作的读取结果大于阈值电阻Rth时,读取结果可被确定为作为高电阻状态HRS的复位数据(逻辑“0”),当读取操作的读取结果等于或小于阈值电阻Rth时,读取结果可被确定为作为低电阻状态LRS的置位数据(逻辑“1”)。
当假设数据从存储器区块TILE2的一个选择的存储器单元MC_sel被读出时,连接到选择的存储器单元MC_sel的第三位线BL2和第三字线WL2均可被提供选择电压,并且非选择电压可被施加到其他位线BL0至BL1、BL3至BLm以及其他字线WL0至WL1和WL3至WLm。
连接到与选择的存储器单元MC_sel连接的第三字线WL2的未选择的存储器单元可通过施加到第三字线WL2的选择电压来改变电阻值,因此可能发生电阻分布变宽的读取干扰。读取干扰可表示对未选择的存储器单元而不是选择的存储器单元施压以执行读取操作。例如,未选择的存储器单元的电阻值可能由于读取干扰而增大,并且电阻分布可能变宽。因此,当连接到与特定存储器单元连接的同一字线的其他存储器单元中的读取操作的数量增加时,特定存储器单元的电阻分布可能劣化。由于存储器单元减小了逻辑“1”的置位数据与逻辑“0”的复位数据之间的感测容限,因此可能导致存储器单元被固定在复位状态的问题。
再次参照图4和图5,图5示出构成子集Sub-Set的存储器单元中的包括在一个存储器区块中的存储器单元。包括在一个存储器区块TILE2中的存储器单元MC之中的连接到同一字线的存储器单元MC可被包括在同一子集中。在一个实施例中,连接到不同字线的存储器单元可被包括在不同的子集中。例如,连接到第一字线WL0的存储器单元MC可被包括在一个子集SUB-SET中,连接到第二字线WL1的存储器单元MC可被包括在另一子集SUB-SET中,连接到第(m+1)字线WLm的存储器单元MC可被包括在另一子集SUB-SET中。
根据公开的存储器控制器100和存储器装置200可管理每个子集单元的读取计数,并且可针对每个子集单元执行恢复操作。
由于子集SUB-SET包括连接到同一字线的存储器单元,所以当对在包括未选择的存储器单元的子集中包括的选择的存储器单元的一部分执行读取操作时,读取计数针对未选择的存储器单元也会增加。因此,即使由于读取操作的重复而存在未选择的存储器单元,也可通过与选择的存储器单元(例如,MC_sel)连接到同一字线(例如,第三字线WL2)来防止在未选择的存储器单元中发生读取干扰。也就是说,尽管存在未选择的存储器单元,也可通过将选择电压施加到连接的字线来防止电阻分布的劣化。
图7是示出图4中的一个存储器区块TILE2的示例实施例的电路图。图7是示出构成子集Sub-Set’的存储器单元中的包括在一个区块中的存储器单元的示图。
参照图7,在包括在一个存储器区块TILE2中的存储器单元MC之中,连接到同一字线的存储器单元MC可被包括在同一子集Sub-Set’中。在一个实施例中,连接到多条字线WL0至WLm中的一些字线的存储器单元MC可被包括在同一子集Sub-Set’中。例如,连接到与一个存储器区块TILE2连接的字线WL0到WLm中的两条字线的存储器单元MC可被包括在同一子集Sub-Set’中。连接到第一字线WL0和第二字线WL1的存储器单元MC可被包括在一个子集Sub-Set’中,并且连接到第三字线WL2和第四字线WL3的存储器单元MC可被包括在另一子集Sub-Set’中。连接到第m字线WLm-1和第(m+1)字线WLm的存储器单元MC可被包括在另一子集Sub-Set’中。在图7中,包括在存储器区块TILE2中的每个子集中的多个存储器单元被示出连接到两条字线,但是公开不限于此,并且所述多个存储器单元可连接到三条或更多条字线。
由于根据公开的存储器控制器100和存储器装置200管理读取计数并基于子集Sub-Set’单元执行恢复操作,因此可防止由于读取操作的重复执行导致的存储器单元的劣化。由于子集Sub-Set’包括连接到同一字线的所有存储器单元,因此当针对包括在子集Sub-Set’中的选择的存储器单元中的一些(例如,构成一页的存储器单元)的读取操作被执行时,读取计数针对包括在子集Sub-Set’中的未选择的存储器单元也会增加。因此,由于即使存储器单元未被选择,选择的电压也被施加到连接的字线,因此可防止电阻分布劣化。
图8是用于解释根据公开的示例实施例的操作存储器控制器100的方法的流程图。
参照图1和图8,存储器控制器100可从外部主机HOST接收读取请求和逻辑地址,并且存储器控制器100可执行读取操作。例如,闪存转换层(FTL)可将逻辑地址转换为存储器装置200的物理地址。在步骤S10中,存储器控制器100可将读取命令发送至存储器装置200。
在步骤S20中,存储器控制器100可增加包括与发送的读取命令对应的存储器单元(例如,构成一页的存储器单元)的子集的读取计数。例如,可基于与读取命令对应的物理地址来检测相应的子集,并且可增加检测到的子集的读取计数。
在一个实施例中,当发送读取命令时,存储器控制器100可将与读取命令对应的子集的读取计数增加恒定值。在一个实施例中,当发送读取命令时,存储器控制器100可增加读取计数使得根据与读取命令对应的子集的物理地址ADDR具有读取权重。例如,读取干扰的发生程度可根据在存储器单元之中将被连接的字线的布置而变化,可通过反映读取干扰来计算读取权重,并且可将读取计数增加读取权重。
在步骤S30中,存储器控制器100可基于读取计数对子集执行恢复操作。例如,当读取计数超过特定值时,可执行对与读取计数对应的子集的恢复操作。稍后将参照图9等描述步骤S30。
每次对页执行读取操作时,在包含该页的子集中可能发生读取干扰。当读取干扰累积时,存储在未选择的存储器单元中的数据可被改变,因此数据的可靠性可能难以被保证。恢复操作可包括:将恢复脉冲施加到存储器单元以将改变的电阻分布恢复回原始状态,以及从存储器单元读取有效数据并重新写入读取的数据。当恢复操作被执行时,由于读取干扰的影响被去除,因此数据的可靠性可被恢复。
根据公开的存储器控制器100可基于由计数器CNT管理的读取计数,来对子集执行恢复操作。因此,通过恢复操作写入存储器装置200的数据的可靠性可被保证。
图9是用于解释根据公开的示例实施例的操作存储器系统10的方法的流程图。
参照图1、图8和图9,存储器控制器100可执行步骤S31和步骤S32以执行图8的步骤S30。在步骤S31中,存储器控制器100可确定在步骤S20中读取计数已经增加的子集的读取计数是否已达到第一参考值N。也就是说,在步骤S31中,存储器控制器100可确定子集的读取计数是否等于或大于第一参考值N。当读取计数未达到第一参考值N时,可终止处理。当读取计数达到第一参考值N时,存储器控制器100可执行步骤S32。在这种情况下,第一参考值N可以是存储在存储器控制器100中的作为预定值的值。
在步骤S32中,存储器控制器100可针对其读取计数已达到第一参考值N的子集,将恢复命令recCMD发送至存储器装置200。例如,存储器控制器100可发送与子集对应的恢复命令recCMD和物理地址ADDR。
存储器装置200可接收恢复命令recCMD,并且对与恢复命令recCMD对应的子集执行恢复操作。在步骤S110中,存储器装置200可向子集提供恢复电压(即,恢复脉冲)。在这种情况下,恢复脉冲可与用于将数据写入存储器单元的置位脉冲和复位脉冲具有不同的电压电平或不同的脉冲持续时间。当恢复脉冲被施加时,包括在子集中的存储器单元的电阻可被减小,并且电阻分布的宽度可被减小。
在步骤S40中,存储器控制器100可对子集的读取计数进行复位。在一个实施例中,步骤S40和步骤S110可被彼此并行地执行。
图10是用于解释根据公开的示例实施例的操作存储器系统10的方法的流程图。图10的步骤S30a可以是图8的步骤S30的实施例。
参照图1、图8和图10,存储器控制器100可执行步骤S33a至步骤S36a以执行步骤S30a。在步骤S33a中,存储器控制器100可确定在步骤S20中读取计数已经增加的子集的读取计数是否已达到第二参考值M。也就是说,在步骤S33a中,存储器控制器100可确定子集的读取计数是否等于或大于第二参考值M。当读取计数未达到第二参考值M时,可终止处理。当读取计数达到第二参考值M时,存储器控制器100可执行步骤S34a至步骤S36a。在这种情况下,第二参考值M可以是存储在存储器控制器100中的作为预定值的值,并可以是与图9中的第一参考值N相同或不同的值。
在步骤S34a中,存储器控制器100可针对读取计数已达到第二参考值M的子集,将读取命令RCMD发送至存储器装置200。例如,存储器控制器100可发送与子集对应的读取命令(RCMD)和物理地址(ADDR)。
在步骤S120中,存储器装置200可接收读取命令RCMD,并且可读取写入相应的子集中的数据。在步骤S130中,存储器装置200可将读取的数据发送至存储器控制器100。
在步骤S35a中,存储器控制器100可校正从存储器装置200接收的数据的错误。例如,存储器控制器100可通过ECC解码操作来校正从子集读取的数据中的错误。
在步骤S36a中,存储器控制器100可将针对子集的重新写入命令reWCMD和校正了错误的数据发送至存储器装置200。在这种情况下,存储器控制器100可将子集的物理地址一起发送至存储器装置200。然而,存储器装置200和存储器控制器100可被描述为执行ECC操作,但是不限于此。在一个实施例中,存储器装置200可在其中包括ECC电路,存储器装置200可在被存储器控制器100控制的情况下直接执行ECC操作(例如,片上ECC操作)。
在步骤S140中,存储器装置200接收针对子集的重新写入命令reWCMD和校正了错误的数据,并且可将校正的数据重新写入子集。在这种情况下,重新写入操作可表示写入操作,而不是比较-写入操作。例如,即使已写入的数据和新请求写入的数据相同,也可通过重写相应的存储器单元来执行写入操作。例如,用于写入操作的写入脉冲可被施加到包括在执行写入操作的子集中的页中的存储器单元中的至少一个,其中,在存储器单元中的所述至少一个中,已写入的数据和新请求写入的数据是相同的。例如,用于写入操作的写入脉冲可被施加到包括在执行写入操作的子集中的页中的所有存储器单元。
然而,存储器装置200可被描述为执行重新写入操作而不是比较-写入操作,但是不限于此。在一个实施例中,在步骤S36a中,存储器控制器100可将针对子集的写入命令WCMD和校正了错误的数据发送至存储器装置200,并且在步骤S140中,存储器装置200可在子集SUB-SET中对校正的数据执行比较-写入操作。
此外,存储器控制器100可被描述为执行ECC操作,但是不限于此。存储器控制器100可不执行包括ECC解码操作和ECC编码操作的ECC操作。因此,在一个实施例中,在步骤S140中,存储器装置200可在不执行ECC操作的情况下重新写入在步骤S120中读取的数据。
在步骤S40中,存储器控制器100可对子集的读取计数进行复位。在一个实施例中,步骤S40和步骤S140可被并行地执行。
图11是用于解释根据公开的示例实施例的操作存储器系统10的方法的流程图。图11的步骤S30b可以是图8的步骤S30的实施例。
参照图1、图8和图11,存储器控制器100可执行步骤S31b至步骤S36b以执行步骤S30b。在步骤S31b中,存储器控制器100可确定在步骤S20中读取计数已经增加的子集的读取计数是否已达到第一参考值N。当读取计数未达到第一参考值N时,可终止处理。当读取计数达到第一参考值N时,存储器控制器100可执行步骤S32b和步骤S33b。
在步骤S32b中,存储器控制器100可针对读取计数已达到第一参考值N的子集,将恢复命令recCMD发送至存储器装置200。例如,存储器控制器100可发送与子集对应的恢复命令recCMD和物理地址ADDR。
存储器装置200可接收恢复命令recCMD,以对与接收到的恢复命令recCMD对应的子集执行恢复操作。在步骤S110中,存储器装置200可向子集提供恢复脉冲。
在步骤S33b中,存储器控制器100可确定子集的读取计数是否已经达到第二参考值M。当读取计数未达到第二参考值M时,可终止处理。当读取计数达到第二参考值M时,存储器控制器100可执行步骤S34b至步骤S36b。在这种情况下,第二参考值M可以是大于第一参考值N的值。也就是说,即使在存储器控制器100执行步骤S32b并且存储器装置200执行步骤S110之后,也进一步执行图8的步骤S10和步骤S20,因此子集的读取计数可从第一参考值N增加而达到第二参考值M。
在步骤S34b中,存储器控制器100可针对读取计数达到第二参考值M的子集,将读取命令RCMD发送至存储器装置200。例如,存储器控制器100可发送与子集对应的读取命令RCMD和物理地址ADDR。
在步骤S120中,存储器装置200接收读取命令RCMD,以读取写入与接收到的读取命令RCMD对应的子集中的数据。在步骤S130中,存储器装置200可将读取的数据发送至存储器控制器100。
在步骤S35b中,存储器控制器100可校正从存储器装置200接收的数据中的错误。例如,存储器控制器100可通过ECC解码操作来校正从子集读取的数据中的错误。
在步骤S36b中,存储器控制器100可将针对子集的重新写入命令reWCMD和校正了错误的数据发送至存储器装置200。在这种情况下,存储器控制器100可将子集的物理地址一起发送至存储器装置200。
在步骤S140中,存储器装置200接收针对子集的重新写入命令reWCMD和校正了错误的数据,并且可将校正的数据重新写入子集。在这种情况下,重新写入操作可表示写入操作,而不是比较-写入操作。例如,用于写入操作的写入脉冲可被施加到相应的已写入的数据与相应的新请求写入的数据相同的存储器单元中的至少一个。例如,用于写入操作的写入脉冲可被施加到包括在执行写入操作的子集中的页中的所有存储器单元。
然而,存储器装置200可被描述为执行重新写入操作而不是比较和写入操作,但是不限于此。在一个实施例中,在步骤S36b中,存储器控制器100可将针对子集的写入命令WCMD和校正了错误的数据发送至存储器装置200,并且在步骤S140中,存储器装置200可在子集SUB-SET中对校正的数据执行比较-写入操作。
在步骤S40中,存储器控制器100可对子集的读取计数进行复位。在一个实施例中,步骤S40和步骤S140可被并行地执行。
图12是用于解释根据公开的示例实施例的操作存储器控制器100的方法的流程图。不重复与图8中的参考标号相同的参考标号。
参照图1和图12,存储器控制器100可在执行步骤S30的恢复操作之前执行步骤S21、步骤S23和步骤S25。在这种情况下,步骤S30可以是图9的步骤S30、图10的步骤S30a和图11的步骤S30b中的一个。
在步骤S21中,存储器控制器100可从主机HOST检查是否接收到对其读取计数已经在步骤S20中增加的特定子集的请求。当没有接收到对子集的请求时,存储器控制器100可基于步骤S30执行恢复操作。
在步骤S21中,存储器控制器100可确认存储器控制器100是否已经接收到来自主机HOST的对子集的请求。如果接收到来自主机HOST的对子集的请求,则在步骤S23中,存储器控制器100可确认是否接收到来自主机HOST的对子集的读取请求。当接收到对子集的读取请求时,存储器控制器100可优先执行步骤S30。也就是说,当存在来自主机HOST的对包括在子集中的存储器单元的读取请求时,存储器控制器100可在执行基于从主机HOST接收到的读取请求的读取操作之前优先执行恢复操作。存储器控制器100可在基于步骤S30的恢复操作完成之后基于读取请求执行读取操作。由于在执行对包括在子集中的存储器单元的读取操作之前执行恢复操作,因此写入子集的数据的可靠性可被提高。如果在步骤S21中没有接收到来自主机HOST的对子集的请求,则存储器控制器100可在步骤S30中基于读取计数对子集执行恢复操作。
当存储器控制器100接收到对子集的除了读取请求之外的请求(例如,写入请求)时,存储器控制器100可执行步骤S25。在步骤S25中,存储器控制器100可基于来自主机HOST的请求对子集执行操作。在步骤S25完成之后,存储器控制器100可执行步骤S30。也就是说,当存在来自主机HOST的对包括在子集中的存储器单元的除了读取请求之外的请求时,存储器控制器100可基于该请求执行操作,随后可执行步骤S30。
尽管已经参照附图中示出的实施例描述了公开,但是将理解,本领域技术人员可在不脱离发明构思的范围的情况下做出各种修改和等同实施例。因此,公开的真正保护范围应由权利要求的技术构思确定。
虽然已经参照公开的实施例具体示出和描述了公开,但是将理解,在不脱离权利要求的精神和范围的情况下,可在形式和细节上进行各种改变。

Claims (22)

1.一种存储器系统,包括:
存储器装置,包括:构成多个子集的多个存储器单元;以及
存储器控制器,被配置为:
管理指示由存储器装置对所述多个子集中的每个子集执行的读取操作的数量的读取计数;以及
基于与所述多个子集之中的子集对应的读取计数,对所述子集执行恢复操作,
其中,所述多个子集中的每个子集包括多个页,以及
其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
2.根据权利要求1所述的存储器系统,其中,所述多个存储器单元之中的连接到同一字线的存储器单元被包括在同一子集中。
3.根据权利要求1所述的存储器系统,其中,存储器控制器还被配置为:管理指示由存储器装置在所述多个子集中的每个子集中执行的写入操作的数量的写入计数。
4.根据权利要求1所述的存储器系统,其中,当读取计数达到第一参考值时,存储器装置被配置为向与读取计数对应的子集提供恢复脉冲。
5.根据权利要求4所述的存储器系统,其中,恢复脉冲具有与用于写入操作的脉冲的电压电平不同的电压电平。
6.根据权利要求4所述的存储器系统,其中,恢复脉冲具有与用于写入操作的脉冲的脉冲持续时间不同的脉冲持续时间。
7.根据权利要求1所述的存储器系统,其中,当读取计数达到第二参考值时,存储器装置被配置为读出写入在与读取计数对应的子集中的数据,并将读取的数据发送至存储器控制器。
8.根据权利要求7所述的存储器系统,其中,存储器控制器还被配置为:接收从子集读取的数据,校正接收到的数据中的错误,并将错误校正数据发送至存储器装置。
9.根据权利要求8所述的存储器系统,其中,存储器装置被配置为:将错误校正数据写入与读取计数对应的子集。
10.根据权利要求9所述的存储器系统,其中,存储器装置还被配置为:即使在读取的数据和错误校正数据相同时,也将错误校正数据重新写入存储器单元中。
11.根据权利要求9所述的存储器系统,其中,存储器装置还被配置为:对与读取计数对应的子集执行数据比较-写入操作。
12.根据权利要求1所述的存储器系统,
其中,存储器装置还包括多个感测放大器电路,感测并放大来自存储器单元的接收的数据,
所述多个存储器单元构成多个存储器隔间,所述多个存储器隔间分别连接到所述多个感测放大器电路之中的相应的感测放大器电路,并且
所述多个存储器单元之中的与所述多个存储器隔间中的每个中的相同字线地址对应的存储器单元包括在同一子集中。
13.根据权利要求12所述的存储器系统,
其中,所述多个存储器隔间中的每个包括多个存储器区块,
所述多个存储器单元之中的与所述多个存储器区块中的每个中的相同字线地址对应的存储器单元包括在同一子集中。
14.一种操作用于控制存储器装置的操作的存储器控制器的方法,其中,存储器装置包括构成多个子集的多个存储器单元,所述方法包括:
将读取命令发送至存储器装置;
增加所述多个子集之中的与读取命令对应的子集的读取计数;以及
基于与所述子集对应的读取计数,对所述子集执行恢复操作,
其中,所述子集包括多个页,以及
其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
15.根据权利要求14所述的方法,其中,执行恢复操作的步骤包括:
确定读取计数是否达到第一参考值;以及
基于确定读取计数达到第一参考值,将恢复命令发送至存储器装置。
16.根据权利要求14所述的方法,其中,执行恢复操作的步骤包括:
确定读取计数是否达到第二参考值;
基于确定读取计数达到第二参考值,发送针对与读取计数对应的子集的读取命令;
校正从所述子集读取的数据中的错误;以及
将针对所述子集的重新写入命令和校正的数据发送至存储器装置,以允许校正的数据被重新写入所述子集。
17.根据权利要求14所述的方法,还包括:在执行恢复操作完成之后对读取计数进行复位。
18.根据权利要求14所述的方法,还包括:确认是否从主机接收到对所述子集的请求,
其中,当未接收到对所述子集的请求时,执行恢复操作。
19.根据权利要求14所述的方法,还包括:确认是否从主机接收到对所述子集的读取请求,
其中,当接收到对所述子集的读取请求时,在执行恢复操作之后执行根据读取请求的操作。
20.根据权利要求14所述的方法,还包括:确认是否从主机接收到对所述子集的请求,
其中,当接收到对所述子集的除了读取请求之外的请求时,在执行根据所述请求的操作之后执行恢复操作。
21.一种用于控制存储器装置的存储器控制器,其中,存储器装置包括构成多个子集的多个存储器单元,所述存储器控制器包括:
存储器,被配置为:存储一条或多条指令;以及
至少一个处理器,被配置为:
执行所述一条或多条指令,以管理指示针对所述多个子集中的每个子集发送至存储器装置的读取命令的数量的读取计数,
针对所述多个子集之中的子集,确定读取计数是否达到第一参考值,以及
基于读取计数达到第一参考值的确定的结果,输出针对与读取计数对应的子集执行恢复操作的指令,
其中,所述多个子集中的每个子集包括多个页,以及
其中,所述多个页中的每个页是在所述多个存储器单元中执行读取操作的单位。
22.根据权利要求21所述存储器控制器,
其中,所述至少一个处理器还被配置为:
基于读取计数达到第一参考值的确定的结果,将恢复命令发送至存储器装置,使得恢复脉冲被提供给与读取计数对应的子集,以及
当读取计数达到第二参考值时,发送重新写入命令,使得数据被重新写入所述子集,其中,第一参考值小于第二参考值,以及
其中,所述多个存储器单元之中的连接到同一字线的存储器单元被包括在同一子集中。
CN201911104897.1A 2018-11-16 2019-11-13 存储器控制器、操作存储器控制器的方法和存储器系统 Pending CN111198657A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180141955A KR102599046B1 (ko) 2018-11-16 2018-11-16 리커버리 동작을 수행하는 메모리 컨트롤러, 이의 동작 방법 및 이를 포함하는 메모리 시스템
KR10-2018-0141955 2018-11-16

Publications (1)

Publication Number Publication Date
CN111198657A true CN111198657A (zh) 2020-05-26

Family

ID=70726349

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911104897.1A Pending CN111198657A (zh) 2018-11-16 2019-11-13 存储器控制器、操作存储器控制器的方法和存储器系统

Country Status (3)

Country Link
US (1) US11307918B2 (zh)
KR (1) KR102599046B1 (zh)
CN (1) CN111198657A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102430828B1 (ko) * 2020-06-05 2022-08-09 울산과학기술원 저항성 메모리 기반의 뉴럴 네트워크 가속기에 적용되는 연산 오차 보정 장치 및 그 방법
US11437119B2 (en) * 2020-08-19 2022-09-06 Micron Technology, Inc. Error read flow component

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5661227B2 (ja) 2007-02-07 2015-01-28 株式会社メガチップス メモリコントローラ
US7952928B2 (en) 2008-05-27 2011-05-31 Sandisk Il Ltd. Increasing read throughput in non-volatile memory
US7818525B1 (en) 2009-08-12 2010-10-19 Texas Memory Systems, Inc. Efficient reduction of read disturb errors in NAND FLASH memory
JP5788183B2 (ja) * 2010-02-17 2015-09-30 三星電子株式会社Samsung Electronics Co.,Ltd. 不揮発性メモリ装置、それの動作方法、そしてそれを含むメモリシステム
KR101692520B1 (ko) 2010-02-17 2017-01-04 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US9036416B2 (en) 2011-11-18 2015-05-19 Sandisk Technologies Inc. Non-volatile storage with broken word line screen and data recovery
US8838883B2 (en) * 2012-04-13 2014-09-16 Sandisk Technologies Inc. System and method of adjusting a programming step size for a block of a memory
TWI525635B (zh) * 2013-12-17 2016-03-11 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
US9652381B2 (en) * 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
KR102233074B1 (ko) * 2014-10-08 2021-03-30 삼성전자주식회사 저장 장치 및 그것의 신뢰성 검증 방법
US20160118132A1 (en) * 2014-10-27 2016-04-28 Sandisk Enterprise Ip Llc Low Impact Read Disturb Handling
KR102513505B1 (ko) * 2016-01-29 2023-03-24 에스케이하이닉스 주식회사 비휘발성 메모리 장치, 그것을 포함하는 데이터 저장 장치의 동작 방법
US9910606B2 (en) * 2016-03-23 2018-03-06 Seagate Technology Llc End of life extension of solid state memory
US9589634B1 (en) 2016-03-31 2017-03-07 Intel Corporation Techniques to mitigate bias drift for a memory device
KR102606490B1 (ko) 2016-06-30 2023-11-30 삼성전자주식회사 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치
US10657014B2 (en) * 2017-02-27 2020-05-19 Everspin Technologies, Inc. Methods for monitoring and managing memory devices
US10340016B2 (en) * 2017-06-26 2019-07-02 Micron Technology, Inc. Methods of error-based read disturb mitigation and memory devices utilizing the same
US10983890B2 (en) * 2018-10-09 2021-04-20 Micron Technology, Inc. Real time trigger rate monitoring in a memory sub-system

Also Published As

Publication number Publication date
US11307918B2 (en) 2022-04-19
KR102599046B1 (ko) 2023-11-06
US20200159602A1 (en) 2020-05-21
KR20200057479A (ko) 2020-05-26

Similar Documents

Publication Publication Date Title
US10629286B2 (en) Memory devices, memory systems and methods of operating memory devices
KR101925384B1 (ko) 불휘발성 메모리를 포함하는 메모리 시스템 및 불휘발성 메모리의 제어 방법
US8004898B2 (en) Nonvolatile memory device, program method thereof, and memory system including the same
KR20190139082A (ko) 메모리 장치의 비트 에러율 균등화 방법
KR102261817B1 (ko) 다수의 레이어들을 포함하는 저항성 메모리 장치, 저항성 메모리 시스템 및 저항성 메모리 시스템의 동작방법
JP2017073151A (ja) ソリッドステートドライブ内の下位ページデータ復旧を行うシステム及び方法
US11120872B2 (en) Resistive memory devices and methods of operating resistive memory devices
US20160078966A1 (en) Method of performing wear management in non-volatile memory devices
US11043268B2 (en) Resistive memory devices and methods of operating resistive memory devices including adjustment of current path resistance of a selected memory cell in a resistive memory device
KR20190053646A (ko) 메모리 콘트롤러, 이를 포함하는 반도체 메모리 시스템 및 그 구동 방법
US11321170B2 (en) Memory system, memory controller, and method for operating memory system
CN111833949A (zh) 存储器控制器、存储器系统及其操作方法
KR20210010755A (ko) 메모리 셀의 멀티-턴 온을 방지하기 위한 메모리 장치 및 그것의 동작 방법
CN113010459A (zh) 存储器系统、存储器控制器以及操作存储器系统的方法
CN111198657A (zh) 存储器控制器、操作存储器控制器的方法和存储器系统
US11315650B2 (en) Memory system, memory controller, and method of operating memory system
KR20200099024A (ko) 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치, 그리고 불휘발성 메모리 장치의 동작 방법
KR101435889B1 (ko) 공통 소스 라인 전압을 제어하는 플래시 메모리 장치,그것의 프로그램 검증 방법, 그리고 그것을 포함하는메모리 시스템
CN116072186A (zh) 存储装置及其操作方法
KR20190113061A (ko) 디스터번스를 방지하는 반도체 메모리 장치
US11474726B2 (en) Memory system, memory controller, and operation method thereof
KR20200138894A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 장치
CN111798913A (zh) 存储器系统、存储器控制器及其操作方法
KR102292167B1 (ko) 배드 블록 관리 방법 및 메모리 시스템
US11500771B2 (en) Memory system, memory controller, and method of operating memory system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination