CN109949854B - 存储系统及其操作方法 - Google Patents

存储系统及其操作方法 Download PDF

Info

Publication number
CN109949854B
CN109949854B CN201811169537.5A CN201811169537A CN109949854B CN 109949854 B CN109949854 B CN 109949854B CN 201811169537 A CN201811169537 A CN 201811169537A CN 109949854 B CN109949854 B CN 109949854B
Authority
CN
China
Prior art keywords
data
error
pattern
bits
compressed 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.)
Active
Application number
CN201811169537.5A
Other languages
English (en)
Other versions
CN109949854A (zh
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.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN109949854A publication Critical patent/CN109949854A/zh
Application granted granted Critical
Publication of CN109949854B publication Critical patent/CN109949854B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • 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/1008Adding 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/1064Adding 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 cache or content addressable memories
    • 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/1008Adding 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/1072Adding 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
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error 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 the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • 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/1008Adding 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/1048Adding 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/1056Updating check bits on partial write, i.e. read/modify/write
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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/81Threshold
    • 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/0409Online test
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种存储系统及其操作方法。一种存储系统包括:存储器件,其包括多个存储单元,并适用于:基于页来读取和写入数据与奇偶校验位;以及存储器控制器,其适用于:当基于数据和奇偶校验位而检测到的错误比特位的数量等于或小于第一阈值且大于第二阈值时,基于压缩数据来获取错误掩蔽模式,并且控制将压缩数据、基于反映错误掩蔽模式的压缩数据而被更新的奇偶校验位、关于压缩数据的压缩信息以及关于错误掩蔽模式的模式信息写入到页中。

Description

存储系统及其操作方法
相关申请的交叉引用
本申请要求于2017年12月20日提交的申请号为10-2017-0176215的韩国专利申请的优先权,其公开的全部内容通过引用合并于此。
技术领域
本公开的各种示例性实施例涉及半导体设计技术,并且更具体地,涉及执行错误校正操作的存储系统。
背景技术
以前在半导体存储器件行业中,经由半导体制造工艺制造的存储芯片中具有无缺陷存储单元的多个原始好裸片可以分布在晶片上。然而,随着存储器件的容量增大,制造无任何缺陷的存储单元的存储器件变得更加困难了。更不可能制造出具有无缺陷存储单元的存储器件。为了处理这个问题,存储器件可以包括用于修复有缺陷存储单元的冗余存储单元。
此外,错误校正码(ECC)电路可以用于校正存储单元中出现的一些错误以及在存储系统的读取操作和写入操作期间传送的数据中出现的其他错误。
发明内容
本公开的各种实施例针对一种存储系统,其可以通过获取用于在对出现错误比特位的页的数据进行压缩之后剩余的空间的错误比特位的错误掩蔽模式(error maskpattern)来掩蔽多个错误比特位。
根据本发明的一个实施例,一种存储系统包括:存储器件,其包括多个存储单元,并适用于:基于页来读取和写入数据与奇偶校验位;以及存储器控制器,其适用于:当基于所述数据和所述奇偶校验位而检测到的错误比特位的数量等于或小于第一阈值且大于第二阈值时,基于压缩数据来获取错误掩蔽模式,并且控制将所述压缩数据、基于反映所述错误掩蔽模式的所述压缩数据而被更新的所述奇偶校验位、关于所述压缩数据的压缩信息以及关于所述错误掩蔽模式的模式信息写入到所述页中。
根据本发明的一个实施例,一种存储系统的操作方法包括:基于从特定页读出的数据和奇偶校验位来检测并校正一定量的错误比特位;当所述错误比特位的数量等于或小于第一阈值且大于第二阈值时,对错误已被校正的数据进行压缩以产生压缩数据;基于所述压缩数据来获取错误掩蔽模式;更新与反映所述错误掩蔽模式的所述压缩数据相对应的所述奇偶校验位;以及将所述压缩数据、已更新的奇偶校验位、关于所述压缩数据的压缩信息以及关于错误掩蔽模式的模式信息写入到所述页中。
根据本发明的一个实施例,一种存储系统的操作方法,包括:检查存储器件中有多少可写入页;当可写入页的数量在特定阈值以内时,对写入数据进行压缩以产生压缩数据;基于所述压缩数据来获取错误掩蔽模式;产生与反映所述错误掩蔽模式的所述压缩数据相对应的奇偶校验位;以及将所述压缩数据、所述奇偶校验位、关于所述压缩数据的压缩信息以及关于所述错误掩蔽模式的模式信息写入到特定页中。
附图说明
图1是示出包括根据本公开的一个实施例的存储系统的数据处理系统的框图。
图2A和图2B是用于描述根据本公开的一个实施例的页的配置的示图。
图3是示出图1所示的存储系统的操作的流程图。
图4是示出根据本公开的一个实施例的存储系统的框图。
图5A和图5B是用于描述图4所示的页的配置的示图。
图6是示出图4所示的模式获取单元的操作的示图。
图7是示出图4所示的存储系统的读取操作的流程图。
图8是示出图4所示的存储系统的写入操作的流程图。
具体实施方式
下面将参照附图来更详细地描述本公开的各种实施例。提供这些实施例使本公开全面且完整。本公开中提到的所有“实施例”指的是本文中所公开的发明构思的实施例。所呈现的实施例仅为示例,而非意在限制本发明的范围。
此外,要注意的是:本文中所使用的术语仅是用于描述实施例的目的,而非意在限制本发明。如本文所使用的,单数术语意在也包括复数形式,除非上下文另外明确指出。还要理解的是:在本说明书中使用时术语“包括”、“包括有”、“包含”和/或“包含有”表示存在所述的特征,但不排除存在或添加一个或更多个其他未述的特征。如本文所使用的,术语“和/或”表示一个或更多个有关联的所列项的任意组合和所有组合。还需注意的是,在本申请文件中,“连接/耦接”不仅指一个组件直接耦接另一个组件,而且指一个组件通过中间组件间接耦接另一个组件。
要理解的是,虽然在本文中可以使用术语“第一”、“第二”、“第三”等来描述各种元件,但是这些元件不受这些术语的限制。这些术语用于将一个元件与另一个元件区分开。因此,在不偏离本发明的精神和范围的情况下,下面描述的第一元件也能被称为第二元件或第三元件。
附图不一定按比例绘制,并且在一些情况下,为了清楚地示出实施例的特征,比例可能已经被夸大。
图1是示出根据本公开的一个实施例的应用存储系统10的数据处理系统的框图。
参考图1,数据处理系统可以包括存储系统10和主机20。
主机20可以包括实质独立的处理器(其可以被称为核心)。主机20可以用单个处理器或包括两个或更多个处理器的多核处理器来实现。
存储系统10可以响应于主机20的请求REQ而运行,且更具体地,储存由主机20访问的数据。换言之,存储系统10可以用作主机20的主存储器件或辅助存储器件。存储系统10包括储存由主机102访问的数据的存储器件200以及控制将数据储存到存储器件200中的存储器控制器100。
存储器件200可以在写入操作期间储存从主机20提供的数据,在读取操作期间将所储存的数据提供给主机20,并且即使不提供电源,存储器件200也可以保留所储存的数据。存储器件200包括多个存储块BLK1至BLKN。存储块BLK1至BLKN中的每个存储块包括与多个字线WL和多个位线BL的交叉点耦接的多个存储单元MC。
存储器控制器100可以响应于从主机20输入的请求REQ而将命令CMD、数据DATA和地址ADDR传输给存储器件200。存储器控制器100可以控制存储器件200的操作。命令CMD可以包括指示写入操作的写入命令WT以及指示读取操作的读取命令RD。数据DATA可以包括在写入操作期间被提供给存储器件200的写入数据WDATA以及在读取操作期间从存储器件200读出的读取数据RDATA。
作为示例而非制,当从主机20输入的请求REQ是写入请求时,存储器控制器100可以将写入命令WT、写入数据WDATA以及与存储器件200的目标存储单元相对应的地址ADDR提供给存储器件200。存储器控制器100可以控制写入操作以将写入数据WDATA编程到根据地址ADDR而选中的目标存储单元中。另一方面,当从主机20输入的请求REQ是读取请求时,存储器控制器100可以将读取命令RD以及与存储器件200的目标存储单元相对应的地址ADDR提供给存储器件200。存储器控制器100可以控制读取操作以从根据地址ADDR而选中的目标存储单元中读出读取数据RDATA。
在存储系统10执行错误校正操作的情况下,存储器控制器100可以产生并接收错误校正码与写入数据WDATA或读取数据RDATA。这里,错误校正码(例如,奇偶校验位PTY)用于校正写入数据WDATA的一些错误比特位或读取数据RDATA的一些错误比特位。在写入操作期间,存储器控制器100可以产生与写入数据WDATA相对应的奇偶校验位PTY,将奇偶校验位PTY连同写入数据WDATA一起传输到存储器件200并且控制将写入数据WDATA和奇偶校验位PTY一起编程到目标存储单元中。在读取操作期间,存储器件200可以将奇偶校验位PTY和读取数据RDATA传输到存储器控制器100,并且存储器控制器100可以使用奇偶校验位PTY来校正读取数据RDATA的错误比特位。
存储器件200可以基于页来读取数据DATA和奇偶校验位PTY或者将数据DATA和奇偶校验位PTY写入目标存储单元。即,响应于一个写入命令WT而被写入目标存储单元的写入数据WDATA和奇偶校验位PTY可以构成一个页或一个码字。类似地,响应于一个读取命令RD而从目标存储单元读出的读取数据RDATA和奇偶校验位PTY可以构成一个页或一个码字。
图2A和图2B是用于描述根据本公开的一个实施例的页的配置的示图。
参考图2A,页可以包括:数据区域310,其中写入了写入数据WDATA或读取数据RDATA;以及错误校正码(ECC)区域321,其中写入了用于检测并校正对应数据的错误比特位的奇偶校验位PTY。ECC区域321可以设置在页的空闲区域320中。通常,如图2A所示,空闲区域320中除了ECC区域321之外的剩余区域被分配给未使用区域322。当存储器件200的操作不正常完成时,不另外储存或使用可以用于恢复写入数据区域310中的数据的元数据。
然而,在本公开中,当基于在读取操作期间读出的读取数据RDATA和奇偶校验位PTY而检测到的错误比特位的数量比可校正错误比特位的数量小但是接近可校正错误比特位的数量时(即当目前错误校正成功了而下一个错误校正可能失败时),存储器控制器100可以将读取数据RDATA压缩以产生压缩数据COM_DATA。存储器控制器100可以控制存储器件200以基于压缩数据COM_DATA来获取错误掩蔽模式。存储器控制器100可以使存储器件200将压缩数据COM_DATA、基于应用了错误掩蔽模式的压缩数据COM_DATA而再次产生的(即,更新的)奇偶校验位PTY、关于压缩数据COM_DATA的压缩信息COM_INF以及关于错误掩蔽模式的模式信息MSK_INF重写到对应页中。如图2B所示,压缩数据COM_DATA、奇偶校验位PTY、压缩信息COM_INF以及模式信息MSK_INF可以构成单个页。具体地,压缩数据COM_DATA可以被储存在页的数据区域310中,而奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF可以被储存在页的空闲区域320中。
返回参考图1,存储器控制器100可以包括控制逻辑110、错误校正码(ECC)电路120、压缩块130、模式表150、掩蔽模式处理块160、主机接口(I/F)170和存储器接口(I/F)180。这些组件中的每个组件可以经由总线190而彼此电耦接或彼此结合。
总线190表示在存储器控制器100的内部配置之间传输数据的传输路径。
布置在主机20与存储器控制器100之间的主机I/F 170可以缓冲从主机20输入的请求REQ,将缓冲后的请求REQ传输到内部配置,并且将通过处理请求REQ而获取的结果传输到主机20。
控制逻辑110可以控制存储系统10的全部操作。控制逻辑110可以响应于主机20的请求REQ而产生用于控制存储器件200的写入操作或读取操作的命令CMD、数据DATA和地址ADDR。另外,控制逻辑110可以基于从ECC电路120提供的读取数据RDATA的错误信息来判断或估计哪个存储块很可能具有错误比特位,使得特定存储块可以不被使用,从而增强存储系统10的性能。
ECC电路120可以在写入操作期间产生与从主机20提供的写入数据WDATA相对应的奇偶校验位PTY。ECC电路120可以包括奇偶校验发生单元122,该奇偶校验发生单元122将所产生的奇偶校验位PTY连同写入数据WDATA一起提供给存储器件200。另外,ECC电路120可以包括错误校正单元124,该错误校正单元124通过使用在读取操作期间从存储器件200读出的奇偶校验位PTY来检测并校正包括在读取数据RDATA中的错误比特位。作为示例而非限制,错误校正单元124可以基于编码调制来执行错误校正操作,该编码调制诸如低密度奇偶校验(LDPC)码、博斯-乔赫里-霍克文黑姆(BCH)码、Turbo码、里德-所罗门(RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)和块编码调制(BCM)。
当错误校正成功时,即,当检测到的错误比特位的数量等于或小于可校正错误比特位的数量(在下文中被称为“第一阈值TH1”)时,ECC电路120可以通过主机I/F 170将其错误已被校正的读取数据提供给主机20。另外,ECC电路120可以在错误校正失败时基于包括在读取数据RDATA中的错误比特位来产生模式,并且可以将所产生的模式储存在模式表150中。
当错误校正失败时,即,当检测到的错误比特位的数量大于第一阈值TH1时,ECC电路120可以通过主机I/F 170来向主机20通知错误失败信号。ECC电路120可以将错误信息提供给控制逻辑110,使得对应的操作可以被执行。具体地,在本公开中,当目前错误校正成功但是下一个错误校正可能失败时,即,当检测到的错误比特位的数量等于或小于第一阈值TH1且大于第二阈值TH2时,奇偶校验发生单元122可以再次产生(即,更新)与压缩数据COM_DATA相对应的奇偶校验位PTY。第二阈值TH2可以小于第一阈值TH1。
当检测到的错误比特位的数量等于或小于第一阈值TH1且大于第二阈值TH2时,压缩块130可以对其错误已被校正的读取数据进行压缩以产生压缩数据COM_DATA,并且产生关于压缩数据COM_DATA的压缩信息COM_INF。
模式表150可以储存预先定义的多个掩蔽模式。模式表150可以储存在错误校正失败时由ECC电路120产生的模式。
掩蔽模式处理块160可以基于压缩数据COM_DATA而获取错误掩蔽模式以产生关于错误掩蔽模式的模式信息MSK_INF。掩蔽模式处理块160可以检查除了压缩数据COM_DATA之外的数据区域(图2B的阴影部分)的错误比特位的位置,在模式表150中储存的模式之中选择能够最大限度地覆盖错误比特位的模式作为错误掩蔽模式,并且产生关于错误掩蔽模式的模式信息MSK_INF。
存储器I/F 180可以设置在存储器控制器100与存储器件200之间,将来自存储器控制器100的命令CMD和地址ADDR传输到存储器件200,并且在存储器件200与存储器控制器100之间传送数据DATA。具体地,存储器I/F 180可以基于如参考图2B所述的页来将压缩数据、已更新的奇偶校验位、压缩信息和模式信息传输到存储器件200。
上述的存储器控制器100仅包括与本公开直接相关的配置,但是还可以包括除上述的配置以外的其他配置。作为示例而非限制,存储器控制器100还可以包括用于储存驱动存储器控制器100的数据的存储器(未示出),该存储器作为存储器控制器100的工作存储器。当存储器控制器100响应于主机20的请求REQ而将读取数据RDATA提供给主机20且将写入数据WDATA提供给存储器件200时,存储器可以暂时地储存操作存储器控制器100和存储器件200所需的数据。根据实施例,模式表150可以被包括在存储器中。
图3是示出图1所示的存储系统10的操作的流程图。
参考图3,在步骤S310中,存储器控制器的存储器I/F 180从存储器件200的特定页接收读取数据RDATA和奇偶校验位PTY。在步骤S320中,ECC电路120基于从存储器件200读出的奇偶校验位PTY而检测包括在读取数据RDATA中的错误比特位。
当检测到的错误比特位的数量大于第一阈值TH1(即,步骤S330中的“CON1”)时,在步骤S342中,ECC电路120通过主机I/F 170将错误失败信号提供给主机20。在步骤S344中,ECC电路120可以在错误校正失败时基于包括在读取数据RDATA中的错误比特位来产生模式,并且将所产生的模式储存在模式表150中。
当检测到的错误比特位的数量等于或小于第二阈值TH2(即,步骤S330中的“CON2”)时,在步骤S352中,ECC电路120通过主机I/F 170将其错误已被校正的读取数据提供给主机20。
当检测到的错误比特位的数量小于可校正错误比特位的数量但是接近可校正错误比特位的数量时,即,当检测到的错误比特位的数量等于或小于第一阈值TH1且大于第二阈值TH2时(即,步骤S330中的“CON3”),在步骤S362中,ECC电路120通过主机I/F 170将其错误已被校正的读取数据提供给主机20。在步骤S364中,压缩块130通过对其错误已被校正的读取数据进行压缩来产生压缩数据COM_DATA。压缩块130产生关于压缩数据COM_DATA的压缩信息COM_INF。掩蔽模式处理块160检查除了压缩数据COM_DATA之外的数据区域的错误比特位的位置。掩蔽模式处理块160获取储存在模式表150中的模式之中能够最大限度地覆盖错误比特位的模式作为错误掩蔽模式。掩蔽模式处理块160产生关于错误掩蔽模式的模式信息MSK_INF。随后,在步骤S368中,ECC电路120基于反映错误掩蔽模式的压缩数据COM_DATA来更新奇偶校验位PTY。在步骤S370中,存储器I/F 180可以基于如上面参考图2B所述的页来将压缩数据COM_DATA、已更新的奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF传输到存储器件200以使其被写入该页。
在根据如上所述的本公开的实施例的存储系统中,当错误比特位的数量小于可校正错误比特位的数量但是接近可校正错误比特位的数量时,错误比特位被重新布置以集中在对应页的数据被压缩之后剩余的区域中,并且该区域基于错误掩蔽模式而被掩蔽。此外,使用反映错误掩蔽模式的压缩数据来更新奇偶校验位。压缩数据、已更新的奇偶校验位、压缩信息和模式信息被重写到存储器件中。通常,当出现错误比特位的位置被卡在特定比特位(例如,高比特位“1”)时,即使出现错误比特位的位置用低比特位来零填充,错误出现的概率也相当高。在本公开中,最初通过反映错误掩蔽模式而不用低比特位或高比特位来填充压缩后的剩余空间来阻止错误比特位,从而可以改善存储系统的错误校正性能。
下面,将参考附图来描述本公开的存储系统的具体配置和操作。
图4是示出根据本公开的一个实施例的存储系统的框图。图4仅示出了与存储系统中的数据传输直接相关的配置。这里省略了与命令CMD和地址ADDR相关的配置以及使命令CMD与地址ADDR交互的配置。
参考图4,存储器控制器400可以包括控制逻辑410、错误校正码(ECC)电路420、压缩块430、解压缩块440、模式表450和掩蔽模式处理块460。ECC电路420可以包括奇偶校验发生单元422和错误校正单元424。掩蔽模式处理块460可以包括模式反映单元462和模式获取单元464。选择单元412、页检查单元414和压缩检查单元416可以以控制逻辑410的一部分来实现。
存储器件500可以基于页来将写入数据WDATA或读取数据RDATA与奇偶校验位PTY传输到存储器控制器400并且从存储器控制器400接收写入数据WDATA或读取数据RDATA与奇偶校验位PTY。页可以被划分成:数据区域(图2A和图2B中的附图标记310),其中写入了写入数据WDATA或读取数据RDATA;以及空闲区域(图2A和图2B中的附图标记320),其中设置了奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF。在下文中,构成单个页的数据被称为“页数据”。
压缩检查单元416可以基于在读取操作期间从存储器件500提供的特定页的数据的压缩信息COM_INF来检查读取数据RDATA是否被压缩。当读取数据RDATA被压缩时,压缩检查单元416可以将页数据传输到模式反映单元462。当读取数据RDATA未被压缩时,压缩检查单元416可以将页数据传输到错误校正单元424。
模式反映单元462可以在模式表450中储存的模式之中搜索与页数据的模式信息MSK_INF相对应的错误掩蔽模式MSK_PAT。模式反映单元462可以将错误掩蔽模式MSK_PAT反映在读取数据RDATA中以产生掩蔽读取数据RDATA_MSK。模式反映单元462可以将包括掩蔽读取数据RDATA_MSK的页数据传输到错误校正单元424。
错误校正单元424可以基于页数据的奇偶校验位PTY来检测并校正掩蔽读取数据RDATA_MSK的错误比特位。错误校正单元424可以产生错误已被校正的掩蔽读取数据RDATA_MSK′。错误校正单元424可以将包括错误已被校正的掩蔽读取数据RDATA_MSK′的页数据传输到解压缩块440。解压缩块440可以基于页数据的压缩信息COM_INF来将错误已被校正的掩蔽读取数据RDATA_MSK′解压缩以将错误已被校正的读取数据RDATA′输出到主机(未示出)。
错误校正单元424可以基于页数据的奇偶校验位PTY来检测并校正从压缩检查单元416传输来但未被压缩的读取数据RDATA的错误比特位。此时,错误校正单元424可以在第一条件CON1、第二条件CON2、第三条件CON3下如下操作,其中第一条件CON1为检测到的错误比特位的数量比第一阈值TH1大;第二条件CON2为检测到的错误比特位的数量等于或小于第二阈值TH2;以及第三条件CON3为检测到的错误比特位的数量等于或小于第一阈值TH1且大于第二阈值TH2(例如,在从第二阈值TH2到第一阈值TH1的范围之内)。
在第一条件CON1下,错误校正单元424可以将错误失败信号ERR_FAIL传输到主机。另外,错误校正单元424可以基于包括在错误校正失败的读取数据RDATA中的错误比特位来产生模式PAT_CON1。错误校正单元424可以将模式PAT_CON1储存在模式表450中。因此,模式表450可以储存预先定义的多个掩蔽模式。在第二条件CON2下,错误校正单元424可以将错误已被校正的读取数据RDATA′提供给主机。在第三条件CON3下,错误校正单元424可以将错误已被校正的读取数据RDATA′提供给主机以输出被激活的选择信号SEL_CON3。
选择单元412可以在写入操作期间选择从主机输入的写入数据WDATA′,或者在读取操作期间输出从错误校正单元424提供的错误已被校正的读取数据RDATA′。当选择信号SEL_CON3在第三条件CON3下被激活时,选择单元412可以选择并输出错误已被校正的读取数据RDATA′。
页检查单元414可以基于存储器件500的储存区域来检查可写入页的数量。当可写入页的数量超过特定阈值S_TH时,页检查单元414可以将从选择单元412输入的写入数据WDATA′输出到奇偶校验发生单元422。特定阈值S_TH可以被设置为总页数的大约10%。当可写入页的数量不超过特定阈值S_TH(即,可写入页的数量在总页数的大约10%以内)时,页检查单元414可以将写入数据WDATA′提供给压缩块430。根据实施例,页检查单元414可以将通知以下内容的信号传输到主机:可写入页的数量在特定阈值S_TH以内。
不管可写入页的数量如何,页检查单元414都可以将从选择单元412输入的错误已被校正的读取数据RDATA′提供给压缩块430。虽然未示出,但是页检查单元414可以接收选择信号SEL_CON3以检查哪个输入数据是写入数据WDATA′或错误已被校正的读取数据RDATA′。
压缩块430可以对写入数据WDATA′或错误已被校正的读取数据RDATA′进行压缩以产生压缩数据COM_DATA。压缩块430可以产生关于压缩数据COM_DATA的压缩信息COM_INF。
模式获取单元464可以基于压缩数据COM_DATA来获取错误掩蔽模式MSK_PAT,并且产生关于错误掩蔽模式MSK_PAT的模式信息MSK_INF。更具体地,模式获取单元464可以检查除了压缩数据COM_DATA之外的数据区域的错误比特位的位置。模式获取单元464可以在模式表450中储存的模式之中选择能够最大限度地覆盖错误比特位的模式作为错误掩蔽模式MSK_PAT。模式获取单元464可以产生关于错误掩蔽模式MSK_PAT的模式信息MSK_INF。模式获取单元464可以将反映错误掩蔽模式MSK_PAT的压缩数据COM_DATA提供给奇偶校验发生单元422。根据实施例,当在写入操作期间能够覆盖错误比特位的错误掩蔽模式MSK_PAT在模式表450中未被搜索到时,模式获取单元464可以请求页检查单元414将写入数据WDATA′而非压缩数据COM_DATA传输到奇偶校验发生单元422。
奇偶校验发生单元422可以基于从页检查单元414输入的写入数据WDATA′来产生奇偶校验位PTY。包括在每个页中的写入数据WDATA和奇偶校验位PTY可以被传输到存储器件500。
奇偶校验发生单元422可以基于反映从模式获取单元464输入的错误掩蔽模式MSK_PAT的压缩数据COM_DATA来产生奇偶校验位PTY。压缩数据COM_DATA、奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF可以基于单个页而被传输到存储器件500。
作为示例而非限制,图4示出了将写入数据WDATA输出到存储器件500的奇偶校验发生单元422。根据实施例,图1所示的控制逻辑110或存储器I/F 180可以将写入数据WDATA′或压缩数据COM_DATA作为写入数据WDATA提供给存储器件500。
图5A和图5B是用于描述图4所示的页的配置的示图。
参考图5A和图5B,示出了数据区域的写入数据WDATA′或读取数据RDATA′具有7个错误比特位的情况。附图标记“X”表示每个错误比特位的位置。
压缩块430可以对写入数据WDATA′或错误已被校正的读取数据RDATA′进行压缩以产生压缩数据COM_DATA。压缩块430可以产生关于压缩数据COM_DATA的压缩信息COM_INF。模式获取单元464可以基于压缩数据COM_DATA来获取错误掩蔽模式MSK_PAT。模式获取单元464可以产生关于错误掩蔽模式MSK_PAT的模式信息MSK_INF。
如图5A所示,当5个错误比特位集中在数据区域的后面(即,较低区域)时,模式获取单元464可以将压缩数据COM_DATA布置在数据区域的前面(即,较高区域)以检查除了压缩数据COM_DATA之外的数据区域的错误比特位的位置。模式获取单元464可以在模式表450中储存的多个模式之中选择能够最大限度地覆盖错误比特位的模式作为错误掩蔽模式MSK_PAT。
如图5B所示,当三个错误比特位零星分散时,模式获取单元464可以将压缩数据COM_DATA划分成两部分。模式获取单元464可以将划分后的压缩数据COM_DATA布置在数据区域的三个错误比特位未被设置于其中的区域中。模式获取单元464可以检查除了压缩数据COM_DATA之外的数据区域的错误比特位的位置。模式获取单元464可以在模式表450中储存的多个模式之中选择能够最大限度地覆盖错误比特位的模式作为错误掩蔽模式MSK_PAT。
图6是示出图4所示的模式获取单元464的掩蔽模式(MSK_PAT)选择操作的示图。图6仅示出了数据区域。
参考图6,示出了原始数据“10110001”具有8比特位并且包括在原始数据中的错误比特位为等于或小于第一阈值TH1(例如,4)并且大于第二阈值TH2(例如,2)的4比特位的情况。换言之,图6中示出了包括在原始数据中的错误比特位与第三条件CON3相对应的情况。错误比特位分别设置在第二比特位、第五比特位和第八比特位处,并且压缩数据COM_DATA被以大约50%的比率从原始数据压缩。给出附图标记“A”、“B”、“C”、“D”以区分压缩数据COM_DATA。
模式表450可以储存预先定义的第一掩蔽模式MSK_PAT1至第五掩蔽模式MSK_PAT5。当掩蔽模式的比特位是低比特位“0”时,掩蔽的目标比特位被掩蔽。
在其模式比特位由高比特位组成的第一掩蔽模式MSK_PAT1的情况下,模式获取单元464可以随机地将压缩数据COM_DATA布置在数据区域中。由于无论压缩数据COM_DATA被设置在何处,错误比特位都不被掩蔽,因此从反映第一掩蔽模式MSK_PAT1的压缩数据COM_DATA中检测到的错误比特位的数量为4。
在第二掩蔽模式MSK_PAT2包括由高比特位组成的较高4比特位的情况下,模式获取单元464可以将压缩数据COM_DATA布置在数据区域的前面(即,较高区域)中。由于除了压缩数据COM_DATA之外的数据区域的错误比特位被掩蔽,因此从反映第二掩蔽模式MSK_PAT2的压缩数据COM_DATA中检测到的错误比特位的数量为1。
在其较低4比特位是由高比特位组成的第三掩蔽模式MSK_PAT3的情况下,模式获取单元464可以将压缩数据COM_DATA布置在数据区域的后面(即,较低区域)中。由于除了压缩数据COM_DATA之外的数据区域的错误比特位被掩蔽,因此从反映第三掩蔽模式MSK_PAT3的压缩数据COM_DATA中检测到的错误比特位的数量为3。
在由“11001100”组成的第四掩蔽模式MSK_PAT4的情况下,模式获取单元464可以划分压缩数据COM_DATA并将划分后的压缩数据COM_DATA分别布置在数据区域的前面和后面。由于除了压缩数据COM_DATA之外的数据区域的错误比特位被掩蔽,所以从反映第四掩蔽模式MSK_PAT4的压缩数据COM_DATA中检测到的错误比特位的数量为3。
在由“10101010”组成的第五掩蔽模式MSK_PAT5的情况下,模式获取单元464可以将压缩数据COM_DATA布置在数据区域的奇数编号的比特位位置处。由于除了压缩数据COM_DATA之外的数据区域的错误比特位被掩蔽,所以从反映第五掩蔽模式MSK_PAT5的压缩数据COM_DATA中检测到的错误比特位的数量为1。
在上述情况下,模式获取单元464可以选择检测到最少数量的错误比特位的第二掩蔽模式MSK_PAT2或第五掩蔽模式MSK_PAT5作为错误掩蔽模式MSK_PAT。
在下文中,将参照图4至图8来描述图4所示的存储系统的操作。
图7是示出图4所示的存储系统的读取操作的流程图。
参考图7,当在步骤S710中从主机输入读取请求时,在步骤S720中,存储器控制器400从存储器件500的特定页接收页数据。页数据可以包括读取数据RDATA和奇偶校验位PTY。当读取数据RDATA被压缩时,页数据可以包括压缩数据COM_DATA、奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF。
在步骤S730中,压缩检查单元416基于页数据的压缩信息COM_INF而检查读取数据RDATA是否被压缩。
当读取数据RDATA被压缩(即,步骤S730中的“是”)时,模式反映单元462在在模式表450中储存的模式之中搜索与页数据的模式信息MSK_INF相对应的错误掩蔽模式MSK_PAT。在步骤S742中,模式反映单元462将错误掩蔽模式MSK_PAT反映在读取数据RDATA中以产生掩蔽读取数据RDATA_MSK。错误校正单元424基于页数据的奇偶校验位PTY而检测并校正掩蔽读取数据RDATA_MSK的错误比特位。在步骤S744中,错误校正单元424产生错误已被校正的掩蔽读取数据RDATA_MSK′。在步骤S746中,解压缩块440基于页数据的压缩信息COM_INF而将错误已被校正的掩蔽读取数据RDATA_MSK′解压缩。在步骤S748中,解压缩块440将错误已被校正的读取数据RDATA′提供给主机。因此,完成读取操作。
当读取数据RDATA未被压缩(即,步骤S730中的“否”)时,在步骤S750中,错误校正单元424基于页数据的奇偶校验位PTY而检测从压缩检查单元416传输来且未被压缩的读取数据RDATA的错误比特位。
在步骤S760中,错误校正单元424检查检测到的错误比特位的数量。错误校正单元424可以将检查结果划分成下述条件:检测到的错误比特位的数量比第一阈值TH1大的第一条件CON1;检测到的错误比特位的数量等于或小于第二阈值TH2的第二条件CON2;以及检测到的错误比特位的数量等于或小于第一阈值TH1且大于第二阈值TH2的第三条件CON3。
在第一条件CON1下,在步骤S772中,错误校正单元424将错误失败信号ERR_FAIL提供给主机。错误校正单元424可以基于包括在其错误校正失败的读取数据RDATA中的错误比特位来产生模式PAT_CON1。在步骤S774中,错误校正单元424可以将模式PAT_CON1储存在模式表450中。因此,完成读取操作。
在第二条件CON2下,在步骤S782中,错误校正单元424将错误已被校正的读取数据RDATA′提供给主机。因此,完成读取操作。
在第三条件CON3下,在步骤S792中,错误校正单元424将错误已被校正的读取数据RDATA′提供给主机。错误校正单元424激活并输出选择信号SEL_CON3。选择单元412选择并输出错误已被校正的读取数据RDATA′。不管可写入页的数量如何,页检查单元414都将从选择单元412输入的错误已被校正的读取数据RDATA′提供给压缩块430。
在步骤S794中,压缩块430对错误已被校正的读取数据RDATA′进行压缩以产生压缩数据COM_DATA。压缩块430产生关于压缩数据COM_DATA的压缩信息COM_INF。在步骤S796中,模式获取单元464基于压缩数据COM_DATA而获取错误掩蔽模式MSK_PAT。模式获取单元464产生关于错误掩蔽模式MSK_PAT的模式信息MSK_INF。模式获取单元464将反映错误掩蔽模式MSK_PAT的压缩数据COM_DATA提供给奇偶校验发生单元422。
在步骤S798中,奇偶校验发生单元422基于从模式获取单元464输入的反映错误掩蔽模式MSK_PAT的压缩数据COM_DATA而产生奇偶校验位PTY。在步骤S799中,压缩数据COM_DATA、奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF可以基于单个页而被传输并写入到存储器件500中。因此,完成读取操作。
图8是示出图4所示的存储系统的写入操作的流程图。
参考图8,当在步骤S810中从主机输入写入请求时,选择单元412选择并输出从主机提供的写入数据WDATA′。
在步骤S820中,页检查单元414基于存储器件500的储存区域而检查可写入页的数量。
当可写入页的数量超过特定阈值S_TH(即,步骤S820中的“是”)时,页检查单元414将从选择单元412输入的写入数据WDATA′提供给奇偶校验发生单元422。在步骤S832中,奇偶校验发生单元422基于从页检查单元414输入的写入数据WDATA′而产生奇偶校验位PTY。在步骤S834中,写入数据WDATA′和奇偶校验位PTY可以基于单个页而被传输到存储器件500。因此,完成写入操作。
当可写入页的数量不超过特定阈值S_TH(即,步骤S820中的“否”)时,页检查单元414将写入数据WDATA′提供给压缩块430。虽然未示出,但是页检查单元414可以将通知以下内容的信号传输到主机:可写入页在特定阈值S_TH以内。在步骤S840中,压缩块430对写入数据WDATA′进行压缩以产生压缩数据COM_DATA。压缩块430产生关于压缩数据COM_DATA的压缩信息COM_INF。
模式获取单元464检查除了压缩数据COM_DATA以外的数据区域的错误比特位的位置。在步骤S850中,模式获取单元464在模式表450中储存的多个模式之中搜索能够最大限度地覆盖错误比特位的模式。
当模式表450中不存在能够覆盖错误比特位的错误掩蔽模式MSK_PAT时(即,步骤S850中的“否”),模式获取单元464请求页检查单元414将写入数据WDATA′而非压缩数据COM_DATA传输到奇偶校验发生单元422。因此,在步骤S832中,页检查单元414将写入数据WDATA′提供给奇偶校验发生单元422,并且奇偶校验发生单元422基于写入数据WDATA′而产生奇偶校验位PTY。在步骤S834中,写入数据WDATA′和奇偶校验位PTY可以基于单个页而被传输到存储器件500。因此,完成写入操作。
当模式表450中存在能够覆盖错误比特位的错误掩蔽模式MSK_PAT时(即,步骤S850中的“是”),模式获取单元464产生关于错误掩蔽模式MSK_PAT的模式信息MSK_INF。在步骤S860中,模式获取单元464将错误掩蔽模式MSK_PAT反映在压缩数据COM_DATA中。模式获取单元464将反映错误掩蔽模式MSK_PAT的压缩数据COM_DATA提供给奇偶校验发生单元422。在步骤S870中,奇偶校验发生单元422基于反映错误掩蔽模式MSK_PAT的压缩数据COM_DATA而产生奇偶校验位PTY。在步骤S880中,压缩数据COM_DATA、奇偶校验位PTY、压缩信息COM_INF和模式信息MSK_INF可以基于单个页而被传输到存储器件500中。因此,完成写入操作。
根据本公开的实施例,多个错误比特位集中于其中出现错误比特位的页被压缩之后剩余的区域中。错误比特位基于错误掩蔽模式而被掩蔽,由此可以改善存储系统的错误校正性能。
虽然已经关于具体实施例描述了本发明,但是这些实施例并非意在是限制性的,而是描述性的。另外,要注意的是:在不偏离如所附权利要求所限定的本发明的精神和/或范围的情况下,本领域技术人员可以通过替换、改变和修改以各种其他方式来实现本发明。

Claims (19)

1.一种存储系统,包括:
存储器件,其包括多个存储单元,并适用于:基于页来读取和写入数据与奇偶校验位;以及
存储器控制器,其适用于:
通过利用所述奇偶校验位来检测并校正所述数据中包括的错误比特位而产生错误已被校正的数据;
对错误已被校正的数据进行压缩以产生压缩数据;以及
当所述错误比特位的数量等于或小于第一阈值且大于第二阈值时,基于所述压缩数据而在多个模式之中选择能够最大限度地覆盖所述错误比特位的模式来获取错误掩蔽模式;以及
控制将所述压缩数据、基于反映所述错误掩蔽模式的所述压缩数据而被更新的所述奇偶校验位、关于所述压缩数据的压缩信息以及关于所述错误掩蔽模式的模式信息写入到所述页中。
2.根据权利要求1所述的存储系统,其中,所述页包括数据区域和空闲区域,所述压缩数据被储存在所述数据区域中,而已更新的奇偶校验位、所述压缩信息和所述模式信息被储存在所述空闲区域中。
3.根据权利要求2所述的存储系统,其中,所述存储器控制器包括:
错误校正块,其适用于:通过利用所述奇偶校验位来检测并校正所述数据中包括的所述错误比特位而产生所述错误已被校正的数据;
压缩块,其适用于:当所述错误比特位的数量等于或小于所述第一阈值且大于所述第二阈值时,对所述错误已被校正的数据进行压缩以产生所述压缩数据,并且产生关于所述压缩数据的所述压缩信息;
掩蔽模式处理块,其适用于:基于所述压缩数据来获取所述错误掩蔽模式,并且产生关于所述错误掩蔽模式的所述模式信息;以及
奇偶校验发生块,其适用于:基于所述压缩数据来更新所述奇偶校验位。
4.根据权利要求3所述的存储系统,其中,所述存储器控制器还包括:
模式表,其适用于:储存预先定义的所述多个模式。
5.根据权利要求4所述的存储系统,其中,所述掩蔽模式处理块检查除了所述压缩数据以外的数据区域的错误比特位的位置,在所述模式之中选择能够最大限度地覆盖所述错误比特位的模式作为所述错误掩蔽模式,并且产生关于所述错误掩蔽模式的所述模式信息。
6.根据权利要求3所述的存储系统,其中,当所述错误比特位的数量等于或小于所述第一阈值时,所述错误校正块将所述错误已被校正的数据提供给主机,而当所述错误比特位的数量大于所述第一阈值时,所述错误校正块将错误失败信号提供给所述主机。
7.根据权利要求1所述的存储系统,其中,所述第一阈值为可校正错误比特位的数量。
8.一种存储系统的操作方法,包括:
通过利用奇偶校验位来检测并校正数据中包括的错误比特位而产生错误已被校正的数据,所述数据和奇偶校验位是从页读出的;
当所述错误比特位的数量等于或小于第一阈值且大于第二阈值时,对所述错误已被校正的数据进行压缩以产生压缩数据;
基于所述压缩数据来获取错误掩蔽模式;
基于反映所述错误掩蔽模式的所述压缩数据来更新所述奇偶校验位;以及
将所述压缩数据、已更新的奇偶校验位、关于所述压缩数据的压缩信息以及关于所述错误掩蔽模式的模式信息写入到所述页中。
9.根据权利要求8所述的操作方法,其中,所述页包括数据区域和空闲区域,所述压缩数据被储存在所述数据区域中,而所述已更新的奇偶校验位、所述压缩信息和所述模式信息被储存在所述空闲区域中。
10.根据权利要求9所述的操作方法,其中,获取所述错误掩蔽模式的步骤包括:
检查除了所述压缩数据以外的数据区域的错误比特位的位置;
在模式表中预先定义的多个模式之中选择能够最大限度地覆盖所述错误比特位的模式;以及
产生关于所述错误掩蔽模式的所述模式信息。
11.根据权利要求8所述的操作方法,其中,所述第一阈值为可校正错误比特位的数量。
12.根据权利要求8所述的操作方法,还包括:
当所述错误比特位的数量等于或小于所述第一阈值且大于所述第二阈值时,将所述错误已被校正的数据提供给主机。
13.根据权利要求8所述的操作方法,还包括:
当所述错误比特位的数量大于所述第一阈值时,将错误失败信号提供给主机;以及
当所述错误比特位的数量等于或小于所述第二阈值时,将所述错误已被校正的数据提供给所述主机。
14.根据权利要求8所述的操作方法,其中,利用所述奇偶校验位来检测并校正所述数据中包括的所述错误比特位的步骤包括:
当从所述页读出的所述数据被压缩时,在模式表中预先定义的多个模式之中搜索与所述模式信息相对应的错误掩蔽模式;
通过将所述错误掩蔽模式反映在所述数据中来产生掩蔽数据;
通过基于所述奇偶校验位而校正所述掩蔽数据的错误比特位来产生错误已被校正的掩蔽数据;以及
基于所述压缩信息来对所述错误已被校正的掩蔽数据进行解压缩,并且将解压缩后的数据提供给主机。
15.一种存储系统的操作方法,包括:
检查存储器件中有多少可写入页;
当可写入页的数量在特定阈值以内时,对写入数据进行压缩以产生压缩数据;
基于所述压缩数据来获取错误掩蔽模式;
基于反映所述错误掩蔽模式的所述压缩数据来产生奇偶校验位;以及
将所述压缩数据、所述奇偶校验位、关于所述压缩数据的压缩信息以及关于所述错误掩蔽模式的模式信息写入到页中。
16.根据权利要求15所述的操作方法,其中,所述页包括数据区域和空闲区域,所述压缩数据被储存在所述数据区域中,而所述奇偶校验位、所述压缩信息和所述模式信息被储存在所述空闲区域中。
17.根据权利要求16所述的操作方法,其中,获取所述错误掩蔽模式的步骤包括:
检测所述写入数据中包括的错误比特位;
检查除了所述压缩数据以外的数据区域的错误比特位的位置;
在模式表中预先定义的多个模式之中选择能够最大限度地覆盖所述错误比特位的模式;以及
产生关于所述错误掩蔽模式的所述模式信息。
18.根据权利要求15所述的操作方法,还包括:
当所述可写入页的数量超过所述特定阈值时,基于所述写入数据来产生所述奇偶校验位;以及
将所述写入数据和所述奇偶校验位写入到所述页中。
19.一种存储系统,包括:
存储器件,其包括多个页,每个页储存数据与奇偶校验位;以及
存储器控制器,其适用于:对从所述存储器件输出的所述数据的至少一个错误比特位执行错误检测与校正,
其中,当基于所述数据和所述奇偶校验位而检测到的错误比特位的数量超出预定范围时,所述存储器控制器基于所述数据和所述奇偶校验位而识别错误掩蔽模式,以调整用于与写入命令相对应的数据的奇偶校验信息。
CN201811169537.5A 2017-12-20 2018-10-08 存储系统及其操作方法 Active CN109949854B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0176215 2017-12-20
KR1020170176215A KR102468721B1 (ko) 2017-12-20 2017-12-20 메모리 시스템 및 그의 동작 방법

Publications (2)

Publication Number Publication Date
CN109949854A CN109949854A (zh) 2019-06-28
CN109949854B true CN109949854B (zh) 2023-01-24

Family

ID=66815106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811169537.5A Active CN109949854B (zh) 2017-12-20 2018-10-08 存储系统及其操作方法

Country Status (3)

Country Link
US (1) US11003531B2 (zh)
KR (1) KR102468721B1 (zh)
CN (1) CN109949854B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11694761B2 (en) * 2021-09-17 2023-07-04 Nxp B.V. Method to increase the usable word width of a memory providing an error correction scheme
CN116612806A (zh) * 2022-02-08 2023-08-18 长鑫存储技术有限公司 数据校验方法、装置、电子设备及存储介质
CN114999559B (zh) * 2022-08-03 2022-11-29 合肥康芯威存储技术有限公司 一种存储芯片的测试方法、系统及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8924723D0 (en) * 1988-12-15 1989-12-20 Samsung Electronics Co Ltd Error checking and correction in digital memory devices
CN102394113A (zh) * 2011-11-14 2012-03-28 清华大学 一种应用于快闪存储器中的动态ldpc纠错码方法
CN102713855A (zh) * 2009-12-23 2012-10-03 桑迪士克科技股份有限公司 在存储器设备处的控制数据的错误校正的系统和方法
CN106326028A (zh) * 2015-07-03 2017-01-11 爱思开海力士有限公司 具有不同奇偶校验区的存储器件
CN107393596A (zh) * 2016-04-26 2017-11-24 三星电子株式会社 半导体存储设备和操作其的方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110025524A (ko) * 2009-09-04 2011-03-10 삼성전자주식회사 반도체 메모리 장치 및 그것의 데이터 처리 방법
KR101616100B1 (ko) * 2009-09-25 2016-04-28 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
TWI459396B (zh) 2010-12-30 2014-11-01 Phison Electronics Corp 資料寫入與讀取方法、記憶體控制器與記憶體儲存裝置
KR20130027138A (ko) * 2011-09-07 2013-03-15 삼성전자주식회사 에러 정정 방법 및 이를 이용하는 메모리 장치
KR101730497B1 (ko) * 2011-11-04 2017-04-27 삼성전자 주식회사 에러 정정 성능 신장 방법 및 이를 이용한 저장 장치
KR102081980B1 (ko) * 2012-10-08 2020-02-27 삼성전자 주식회사 메모리 시스템에서의 라이트 동작 또는 리드 동작 수행 방법
JP5855150B2 (ja) * 2014-03-06 2016-02-09 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
US10067828B2 (en) * 2014-10-03 2018-09-04 Hitachi, Ltd. Memory controller and data control method
DE102018123103A1 (de) * 2017-10-13 2019-04-18 Samsung Electronics Co., Ltd. Halbleitervorrichtung, die Sicherheitsschlüssel erzeugt, Verfahren zum Erzeugen eines Sicherheitsschlüssels und Verfahren zum Registrieren des Sicherheitsschlüssels

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8924723D0 (en) * 1988-12-15 1989-12-20 Samsung Electronics Co Ltd Error checking and correction in digital memory devices
US5142541A (en) * 1988-12-15 1992-08-25 Samsung Electronics Co., Ltd. Error-bit generating circuit for use in a non-volatile semiconductor memory device
CN102713855A (zh) * 2009-12-23 2012-10-03 桑迪士克科技股份有限公司 在存储器设备处的控制数据的错误校正的系统和方法
CN102394113A (zh) * 2011-11-14 2012-03-28 清华大学 一种应用于快闪存储器中的动态ldpc纠错码方法
CN106326028A (zh) * 2015-07-03 2017-01-11 爱思开海力士有限公司 具有不同奇偶校验区的存储器件
CN107393596A (zh) * 2016-04-26 2017-11-24 三星电子株式会社 半导体存储设备和操作其的方法

Also Published As

Publication number Publication date
KR102468721B1 (ko) 2022-11-21
US20190188077A1 (en) 2019-06-20
CN109949854A (zh) 2019-06-28
US11003531B2 (en) 2021-05-11
KR20190074678A (ko) 2019-06-28

Similar Documents

Publication Publication Date Title
US10152249B2 (en) Data memory device and controller with interface error detection and handling logic
KR101750662B1 (ko) 데이터 에러 교정용 회로, 장치, 및 방법
US20200081780A1 (en) Data storage device and parity code processing method thereof
US7899980B2 (en) Flash memory system and data writing method thereof
KR100681429B1 (ko) 반도체 메모리 장치 및 그것의 비트 에러 검출 방법
CN109949854B (zh) 存储系统及其操作方法
US9465552B2 (en) Selection of redundant storage configuration based on available memory space
US8321757B2 (en) Method and apparatus for error correction
WO2014164134A2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
US20080082872A1 (en) Memory controller, memory system, and data transfer method
US11144388B2 (en) Nonvolatile memory device and memory system including nonvolatile memory device
US11030040B2 (en) Memory device detecting an error in write data during a write operation, memory system including the same, and operating method of memory system
CN111475327A (zh) 存储系统及其操作方法
US8219860B2 (en) Microprocessor system for controlling at least partly safety-critical processes
US10735030B2 (en) Re-encoding data associated with failed memory devices
EP4030435B1 (en) Data transmission circuit and memory
US20100235680A1 (en) Microprocessor System for Controlling or Regulating at least partly Safety-Critical Processes
US10922025B2 (en) Nonvolatile memory bad row management
CN115039343A (zh) 用于存储器装置的连续单调计数器
US11609813B2 (en) Memory system for selecting counter-error operation through error analysis and data process system including the same
US20240168845A1 (en) Memory including error correction circuit and operating method thereof
KR20220028363A (ko) 반도체 메모리 장치 및 그의 동작 방법
CN113903390A (zh) 存储器和存储器的操作方法
CN116246690A (zh) 一种eeprom数据可靠性校验方法
CN117992282A (zh) 异常断电后的编码方法和存储器存储装置

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
GR01 Patent grant
GR01 Patent grant