CN1770312A - 可检测在电源故障期间发生写入错误的存储器件及其方法 - Google Patents

可检测在电源故障期间发生写入错误的存储器件及其方法 Download PDF

Info

Publication number
CN1770312A
CN1770312A CNA2005101037733A CN200510103773A CN1770312A CN 1770312 A CN1770312 A CN 1770312A CN A2005101037733 A CNA2005101037733 A CN A2005101037733A CN 200510103773 A CN200510103773 A CN 200510103773A CN 1770312 A CN1770312 A CN 1770312A
Authority
CN
China
Prior art keywords
data
verification
page
multistage
during
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
CNA2005101037733A
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 CN1770312A publication Critical patent/CN1770312A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
    • G11C16/3486Circuits or methods to prevent overprogramming of nonvolatile memory cells, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
    • 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
    • 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/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

支持错误检测的集成电路器件包括一非易失性存储器件,其中有一包含多页存储单元的存储阵列。也提供一存储控制器。该存储控制器通过电路连接到该非易失性存储器件,且被配置用于在一页面写入操作期间为该非易失性存储器件提供多段页面数据。该多段页面数据包括多段校验和数据,其确定在该页面写入操作期间待用写入数据编程的若干非易失性存储单元。在一页面读取操作期间也生成额外的校验和数据用于比较和错误检测。

Description

可检测在电源故障期间发生写入错误 的存储器件及其方法
技术领域
本发明涉及集成电路器件及其操作方法,特别是涉及集成电路存储器件及其操作方法。
背景技术
集成电路器件中的差错检测和纠正(EDC)操作能检测并能纠正诸如通过数据链路(如总线)传输并存储在存储单元中的损坏数据。这些EDC操作可使用传统差错检测和纠正算法,包括Read-Solomon码(RS码)、Hamming码、Bose-Chaudhuri-Hocquengem码(BCH码)和循环冗余校验(CRC)码,来检测并能纠正有限数量的差错(如软差错)。为在非易失性存储器件中支持EDC操作,通常将写入数据(如果必要的话,要对其进行校验和纠正)和用来对该写入数据执行EDC操作的相应校验位(如ECC校验位)存储在一起。在美国专利6,651,212中Katayama等公开了闪存器中执行的一种典型EDC操作。
不幸的是,许多传统算法仅能检测相对少的错误(如1-2位)并可能纠正更少的检测错误(如纠正1位)。因此,这些传统算法大多不适合于在数据传输或存储期间出现大量错误的环境。易受大量错误攻击的一种存储技术为非易失性存储技术。例如,在正将大量数据写入非易失性存储单元的页面(如4K非易失性存储单元)中时,诸如闪存(如NAND或NOR)等低电源非易失性存储技术在发生电源故障时易受攻击。因此,在电源恢复之后,有必要使用一计算量不太大且当已发生超过有限数量的错误时不会中止的EDC技术,来确定页面数据中是否有错误存在。
发明内容
根据本发明实施例的支持检错操作的集成电路器件包括一非易失性存储器件,其中有一包含多页非易失性存储单元的存储阵列。该存储器件可为一闪存器,然而,也可使用其他类型的存储器件。这些其他类型的存储器件包括MROM器件、PROM器件、FRAM器件和其他有关器件。这些实施例中也提供一存储控制器。尤其是,该存储控制器通过电路连接到该非易失性存储器件,且被配置用于在一页面写入操作期间为该非易失性存储器件提供多段页面数据。该多段页面数据包括多段写入数据以及多段校验和数据,其确定在该页面写入操作期间用写入数据编程的若干非易失性存储单元。在一页面读取操作期间也生成额外的校验和数据,用于比较和错误检测。
根据本发明的其他实施例,集成电路器件可包括一存储器件,其中有一包含多页存储单元和一输入/输出控制电路的存储阵列。该输入/输出控制电路通过电路连接到该存储器件。该输入/输出控制电路被配置用于通过响应一写入指令以按顺序将多段(如8位段)页面数据写入该存储器件来支持一页面写入操作。该多段包括至少一段数据,其确定在该页面写入操作期间待用写入数据编程的存储单元的数量。该输入/输出控制电路被进一步配置用于通过将该至少一段数据与确定在该页面写入操作期间用写入数据实际编程的存储单元数量的额外数据作比较,来支持一页面读取操作。当发生电源故障事件时,用写入数据实际编程的存储单元的数量可与将要用写入数据编程的存储单元的数量不同。在某些情况下,该至少一段数据可由第一校验和数据组成,且该额外数据可由第二校验和数据组成。该校验和数据可由该输入/输出控制电路中的一校验和生成器生成。
在本发明实施例中,该输入/输出控制电路还可包括一数据通路选择电路,其处于该集成电路器件的一读取/写入数据通路中,且该校验和生成器与该读取/写入通路连接。该数据通路选择电路包括一第一开关,其对一有效标记信号作出响应。在页面写入操作期间,该有效标记信号使校验和数据能被传送到该存储器件。也可提供一第二开关,以响应该有效标记信号,从而将校验和数据从该校验和生成器发送到该第一开关。可将该存储器件和该输入/输出控制电路置于同一半导体衬底或单独集成电路衬底上。
本发明实施例还包括一集成电路器件,其中有一非易失性存储器件和存储控制器。该非易失性存储器件中有一存储阵列,其包含多页非易失性存储单元。每个这些存储单元可支持一位或多位数据(如2位表示4个可能二进制值00、01、10和11)。该存储控制器通过电路连接到该非易失性存储器件。该存储控制器被配置用于在一页面写入操作期间为该非易失性存储器件提供多段页面数据。这些多段包括多段校验和数据,其共同确定在该页面写入操作期间待用写入数据编程的非易失性存储单元的数量。在本发明实施例中,该存储控制器甚至还可包括一附加存储阵列(如“校验和数据”存储阵列),被配置用于存储在该页面写入操作期间传送到该非易失性存储器件的多段校验和数据的副本。
该存储控制器也被配置用于支持一页面读取操作。该页面读取操作可包括将该页面读取操作期间从该非易失性存储器件接收的多段校验和数据,与该页面写入操作期间用来确定用写入数据实际编程的该存储阵列中存储单元数量的额外校验和数据作比较。当在该页面写入操作期间发生电源故障时,用写入数据实际编程的存储单元数量可小于要用写入数据编程的存储单元数量。在该页面写入操作期间生成的多段校验和数据以及在该页面读取操作期间生成的额外校验和数据可由一校验和数据生成器生成。
本发明实施例还包括操作一集成电路存储器件的方法,其从该存储器件接收的第一数据生成第一校验和数据,之后将该第一数据和该第一校验和数据写入该存储器件中的一非易失性存储阵列。之后,从该非易失性存储阵列中读取该第一数据和该第一校验和数据。为支持错误检测,从读自该非易失性存储阵列中的第一数据生成第二校验和数据。将该第二校验和数据与从该非易失性存储阵列中读取的第一校验和数据作比较,以检测它们之间的差异。有差异存在就意味着在将该第一数据和该第一校验和数据写入该非易失性存储阵列的操作期间发生电源故障。
根据本实施例中的这些方法,生成第一校验和数据的步骤可包括从多段第一数据中生成多段校验和数据,且写入步骤可包括通过一数据总线按顺序写入多段第一数据和多段校验和数据。生成第一校验和数据的步骤可包括当该存储器件中处理多段第一数据时,使用一加法器和累积寄存器生成中间校验和数据值。
本发明实施例还包括操作一集成电路存储器件的方法,其从该存储器件接收的第一数据生成第一校验和数据,之后使用一页面写入操作将该第一数据和该第一校验和数据写入该存储器件中的一非易失性存储阵列。为支持检错操作,也将该第一校验和数据的副本写入该存储器件中的一附加“校验和”存储阵列。此后,在一页面读取操作期间,从该非易失性存储阵列中读取该第一数据和该第一校验和数据,且在从该附加存储阵列中读取的第一校验和数据的副本与从该非易失性存储阵列中读取的第一校验和数据之间进行比较。若该比较结果发现不相等,则可得出该第一数据中存在一个或多个错误的结论。
附图说明
图1是根据本发明实施例的一集成电路存储器件的方框图;
图2是图1所示电源故障判断电路以及数据通路选择电路的详细方框图;
图3是图2所示校验和数据生成器的方框图;
图4A表示图3校验和数据生成器所执行的生成校验和数据的操作图;
图4B表示当图1存储器件中正执行写入操作时,发生的电源故障如何导致数据错误;
图4C表示图3校验和数据生成器所执行的生成校验和数据的额外操作图;
图5是图1存储器件所执行的写入和读取操作流程图;
图6A表示图1存储器件中写入操作的时序图;
图6B表示图1存储器件中读取操作的时序图;
图7是根据本发明其他实施例的一多芯片集成电路存储器件的方框图;
图8是根据本发明其他实施例的一多芯片集成电路存储器件的方框图。
具体实施方式
现在将参照附图中表示的本发明优选实施例,更完整描述本发明。然而,本发明可体现为许多不同形式,且不应认为局限于这里提出的实施例,相反,提供这些实施例是为了使公开的内容更彻底和全面,并向本领域中的技术人员完整传达本发明的范围。文中相同标记数字指相同的部件。也可对信号作同步和/或进行简单布尔操作(如反相),而不认为是不同信号。例如,对一信号名所加的后缀B(或前缀符号″/″)也可表示一互补数据或信息信号、或一有效低电平控制信号。
现在参照图1,将描述根据本发明实施例的一集成电路存储器件100。这里将该存储器件100作为一非易失性存储器件,如一NAND型闪存器。然而,其他类型的存储器件可表示可供选择的本发明实施例。这些存储器件的某些包括MROM器件、PROM器件、FRAM器件以及NOR型闪存器。图示存储器件100包括一存储阵列110,可将其排列成多行和多列的非易失性存储单元。例如,可将每行存储阵列110作为包含一“页”存储单元,且常见页宽可为4K位(即4096个存储单元)大小或更大。如这里所述,将每行存储阵列110作为一528字节的页宽,其包括526个主要数据字节和2个备用(spare)数据字节,每个字节包含8位数据。在本发明实施例中也可使用不同页宽的存储阵列。此外,根据应用不同可改变一页中主要数据字节数和备用数据字节数的分配。例如,当在每一数据页中要存储事件差错检测和纠正(EDC)位(或其他诊断位)时,可能需要更多的备用数据字节。
在一写入或读取操作期间,一行选择器120(也叫作行解码器)可根据控制逻辑130生成的一行地址,选择该存储阵列110中的一行存储单元。该存储阵列110根据该控制逻辑130生成的控制信号,通过电耦接(如通过位线)到一页寄存器和检测放大器电路140。该页寄存器和检测放大器电路140的宽度可与该存储阵列110的页宽相等。在写入操作(如编程操作)期间,该页寄存器和检测放大器电路140用输入的数据驱动该存储阵列110中的列。在读取操作期间,该页寄存器和检测放大器电路140检测并放大从存储阵列110的列中接收的数据。
该页寄存器和检测放大器电路140根据一列地址,电耦接到一列选择电路150。该列选择电路150电耦接到一数据通路选择电路160。在写入操作期间,该列选择电路150将来自该数据通路选择电路160的写入数据发送到该页寄存器和检测放大器电路140中的各段中。在读取操作期间,该列选择电路150将来自该页寄存器和检测放大器电路140中的各段的读取数据发送到该数据通路选择电路160中。为该列选择电路150被配置用于在一单个时钟周期期间,将8位(即一字节)发送到该页寄存器和检测放大器电路140、且该页寄存器和检测放大器电路140支持4224位数据(4224=526×8主要位+2×8备用位)时,则在一跨越528个连续时钟周期的页写入操作期间,该列地址可顺序通过528个连续地址。
该数据通路选择电路160电耦接到该列选择电路150、输入/输出缓冲器170以及电源故障判断电路180。位于该存储器件100的一读取/写入数据通路中的该数据通路选择电路160也响应该控制逻辑130生成的控制信号。在某些实施例中,可将该存储阵列110、该页寄存器和检测放大器电路140以及该列选择电路150置于一第一半导体衬底上(与一有关输入/输出缓冲器一起),且可将该数据通路选择电路160、电源故障判断电路180、控制逻辑130以及输入/输出缓冲器170置于一第二半导体衬底上。
如图2所示,该数据通路选择电路160响应于(i)该控制逻辑130生成的一读取/写入控制信号READ;以及(ii)该电源故障判断电路180生成的一标记信号FLAG。可将读取/写入控制信号READ设置为一表示读取操作的第一逻辑电平(如逻辑1)以及一表示写入操作的第二逻辑电平(如逻辑0)。该标记信号FLAG由该电源故障判断电路180中的一控制器183生成。如下面更全面的解释,可将该标记信号FLAG切换到一有效电平从而生成校验和数据。
图示数据通路选择电路160包括一第一开关161以及一第二开关162,其响应于该读取/写入控制信号READ。当将该读取/写入控制信号READ设置为一表示写入操作的电平时,使该第一开关161启用,且当将该读取/写入控制信号READ设置为一表示读取操作的电平时,使该第二开关162启用。当在写入操作期间被启用时,该第一开关161通过一第一数据总线DB1将来自该输入/输出缓冲器170的写入数据传送到该列选择器150,且该第二开关被禁用。该第一数据总线DB1也被耦接到一校验和数据生成器181的一输入端。反之,在读取操作期间,该第二开关162通过一第二数据总线DB2将来自该列选择器150的读取数据传送到该输入/输出缓冲器170,且该第一开关161被禁用。该第二数据总线DB2也被耦接接到一寄存器组184中的一第二寄存器184b的一输入端。此外,在写入操作期间,该第一开关161可响应一有效标记信号FLAG,以通过该第一数据总线DB1将来自该电源故障判断电路180中的一开关182的额外写入数据(如校验和数据)传送到该列选择器150。如下面的更全面解释,可在图6A所示的一写入操作的末端(如一528周期的写入操作的最后2个周期),将该额外写入数据传送到该列选择器150。此外,可将该存储阵列110、行选择器120、页寄存器和检测放大器电路140以及列选择器150包含在一第一集成电路芯片中,且将该控制逻辑130、电源故障判断电路180以及数据通路选择器160包含在同一第一集成电路芯片中或另一第二集成电路芯片中。可将该控制逻辑130、电源故障判断电路180以及数据通路选择器160一起作为一输入/输出控制电路,其执行如下所述的校验和生成以及电源故障检测操作。
图2的电源故障判断电路180被配置用于检测在将数据写入该存储阵列110的操作期间是否出现电源故障。如果有的话,该检测发生在从该存储阵列110读取损坏写入数据(以及可能的损坏校验和数据)并通过该电源故障判断电路180检查错误之时。在写入操作期间,该校验和数据生成器181按顺序处理该第一数据总线DB1上提供的输入的每个字节的写入数据。如下面参照图6A的更全面描述,在将一页数据写入该存储阵列110的每次操作期间,该校验和数据生成器181可按顺序处理526字节(每字节8位)写入数据。根据该顺序处理操作,该校验和数据生成器181生成一所计算的校验和数据值(CSD),将其提供给一开关182。该开关182响应由该控制器183生成的标记信号FLAG以及该读取/写入控制信号READ。当将该读取/写入控制信号READ设置为表示写入操作时,一旦收到一有效标记信号FLAG,该开关182即将来自该校验和生成器181的计算的校验和数据(CSD)发送到该开关161的一输入端。之后该开关161通过该第一数据总线DB1将该校验和数据(CSD)发送到该列选择器150。另外,当将该读取/写入控制信号READ设置为表示读取操作时,该开关182将最近计算的校验和数据(CSD)发送到该寄存器组184中的一第一寄存器184a。在读取操作期间,该第二寄存器184b也将装载由该第二数据总线DB2提供的校验和数据。在从该存储阵列110读取一页数据的操作期间,从该列选择器150接收来自该第二数据总线DB2的校验和数据。这些第一和第二寄存器184a和184b与在该控制器183已收到一预定数量周期的时钟信号CLK之后由该控制器183生成的一锁存信号CSD_LAT的前缘同步。
如图3和4A所示,可将该校验和生成器181配置用于在写入和读取操作期间,从该第一数据总线DB1提供的一顺序数据字节流(如526个8位数据字节)生成一校验和数据值CSD。在写入操作期间,通过开关182和161将所生成的校验和数据值CSD(如2字节值)发送到该第一数据总线DB1,然而,在读取操作期间,将所生成的校验和数据值CSD发送到该寄存器组184中的第一寄存器184a,以支持检错操作(如检测在之前写入操作期间发生电源故障事件所致的一处或多处错误)。该校验和生成器181包括一反相器电路181a、一加法器181b以及一累积寄存器181c,其响应于控制逻辑130生成的时钟信号CLK。寄存器181c生成一校验和值,将其反馈到加法器181b,从而将校验和数据中间值与由该第一数据总线DB1接收的每个数据字节生成的输入的校验和数据更新值相加。
如图4A所示,可通过计算一数据值(表示为D(x))的1的补码生成校验和数据值。这可通过使用该反相器181a将该数据值D(x)中的每个单独位取反来实现。之后使用加法器181b将取反后数据值中的逻辑1值的数目加到一起。在图4A的所示例子中,一16位数据值D(x)的1的补码包含7个逻辑1值,其表示该校验和数据值(CSD)可用二进制格式表示为00111。本领域中的技术人员应理解,二进制CSD值的长度等于log2N+1,其中N等于从其中计算该CSD值的数据值D(x)中的位数。因此,当N=16时,该二进制CSD值的长度等于5(log216+1=5)。N的值不必与写入操作期间被编程的一页中的存储单元的数量相当。例如,图4C表示当一存储阵列中的非易失性存储单元每个单元支持2位编程数据时(即每个单元有1个未编程状态和3个可编程状态),如何确定一校验和数据值。在该情况下,8个存储单元可生成16位数据D(x)。确定该16位的1的补码,之后执行一加法操作,以确定该数据D(x)的补码中逻辑1的数量。如图示,该数等于二进制格式的6(即CSD=000110)。该数表示可在每单元支持2位的3个单元中存储校验和数据。
图4B表示一非易失性存储阵列(如闪存阵列)中21个相邻存储单元的一初始未编程状态。这些未编程状态表示为逻辑1值。这些存储单元中的16个被配置用于支持一存储器件在写入操作期间接收的实际数据,且这些存储单元中的5个被配置用于支持一校验和数据值,其确定在写入操作期间16个存储单元中有几个要被编程。图示待写入的16位数据值D(x)包括7个逻辑0值,其表示在写入操作期间这16个存储单元中有7个接收实际数据的单元要被编程。通过确定该数据值D(x)的1的补码并将所有逻辑1值加到一起,可生成一校验和数据值7。该校验和数据值Z(D(x))以二进制格式表示为00111。图4B也表示在写入操作(如编程操作)期间发生电源故障如何导致较少数量的逻辑0值被写入保持有实际数据的16个存储单元以及保持有校验和数据值的5个存储单元中。可通过评测编程后(即已执行一页面写入操作之后)这些存储单元的最终状态来检测电源故障。如图4B所示,这些存储单元的最终状态反映多个错误,其中D′(x)表示实际写入数据(含错误),且Z′(D(x))表示被编程的校验和数据值(含错误)。图4B的底部也表示在读取操作期间,从D′(x)即错误的写入数据生成的一校验和数据值。该校验和数据值表示为00100,其小于最初正确值00111,且也小于错误值Z′(D(x)),其等于10111(即二进制格式的23)。
因此,如图5所示,从该存储阵列110中读取错误数据、之后将从该错误数据值计算得到的一校验和数据值(即Z(D′(x)))与直接从该存储阵列110中读取的一正确(或错误)校验和值(如Z′(D(x))作比较,就可得出一判断,即在之前的将一页数据写入该存储阵列110的操作期间是否发生了电源故障。尤其是,图5中的框S100表示从一页写入数据生成第一校验和数据的操作。之后将该第一校验和数据(即图2所示CSD)通过开关182和161发送到数据总线DB1和列选择器150。之后将该页写入数据和该第一校验和数据按顺序递送到页寄存器和检测放大器电路140,然后在框S120中并行写入该存储阵列110中。之后,在框S140所示读取操作中,通过第二开关162将之前的页面写入数据和该第一校验和数据按顺序传送给数据总线DB2。之后将该页写入数据传送给输入/输出缓冲器170,并将从存储器件中读取的第一校验和数据传送给第二寄存器184b。同样,在这些读取操作期间,由校验和数据生成器181计算第二校验和数据,并通过开关182传送给第一寄存器184a。从自列选择器150传送给第二开关162的页面数据中生成该第二校验和数据。
现在参照框S160,在该第二寄存器184b中的第一校验和数据与该第一寄存器184a中的第二校验和数据之间执行一比较操作。该比较操作由图2所示比较器185执行。若该第一校验和数据和该第二校验和数据相等,则在框S180中认为从该存储阵列110中读取的数据有效,且该比较器生成一无效电平信号(READ_PF),其表示无电源故障错误。可是,若该第一校验和数据和该第二校验和数据不相等,则在框S200中认为从该存储阵列110中读取的数据无效,且该比较器生成一有效电平信号(READ_PF),其表示在传送到输入/输出缓冲器170的数据中出现至少一个电源故障错误。可将该信号READ_PF记载在控制逻辑130中的状态寄存器131中,并生成信号R/nB,其表示提供给一输出端口I/Oi的读取数据中的一错误/无错误情形。
如图6A所示,可用图1控制逻辑130所生成时钟信号CLK来生成一周期性的写使能信号/WE。该写使能信号/WE与从输入/输出端口I/Oi到列选择器150串行传输的8位数据同步。图示该传输跨越528个写使能信号/WE周期。该528个周期中的前526个专用于通过列选择器150将8位数据字节写入页寄存器和检测放大器140中。收到第526个周期的/WE后,触发生成一有效标记信号FLAG。该有效标记信号FLAG由电源故障判断电路180中的开关182以及数据通路选择器160中的第一开关161接收。作为响应,将校验和数据生成器181生成的校验和数据值CSD通过列选择器150传送到页寄存器和检测放大器电路140中。图示校验和数据值CSD需要2个8位字节(即CSD0和CSD1)。要求2个字节是必要的,因为该校验和数据值CSD的长度为13位(即Log2(526字节×8位/字节)+1=13)。
对上述参照图6A所作的类似时序要求在读取操作中同样需要,其用一读使能信号/RE来同步。图6B表示读取操作的时序图。在该时序图中,通过生成一有效高电平标记信号FLAG,以将第一校验和数据从页寄存器和检测放大器140传送到寄存器组184中的第二寄存器184b,以及将第二校验和数据从开关182传送到寄存器组184中的第一寄存器184a。通过生成有效高电平标记信号FLAG,同样会生成2个周期的锁存信号CSD_LAT,其使2个8位字节校验和数据((CSD0,CSD1)和(CSD0′,CSD1′))被装载到寄存器组184中的每个寄存器中。
根据本发明其他实施例的集成电路存储器件利用单独的存储器件和控制器电路。如图7所示,一集成电路存储器件100包括一非易失性存储器件1200以及一存储控制器1400,其可被配置为单独的集成电路芯片。在本发明某些实施例中,该非易失性存储器件1200可为一通用的现货供应闪存器或其他类型的非易失性存储器件。图示该存储器件1200对多个数据和控制信号作出响应,如所示R/nB、控制信号和I/Oi。该存储器件控制器1400包括一控制逻辑电路1420、一数据通路选择单元1460以及一电源故障判断电路1440。该控制逻辑电路1420、数据通路选择单元1460以及电源故障判断电路1440与图1-2中的控制逻辑电路130、电源故障判断电路180以及数据通路选择电路160等价,这里不必进一步描述。这些电路可共同表示另一类型的输入/输出控制电路。
图8表示根据本发明另一实施例的一集成电路存储器件2000。图示存储器件2000包括一非易失性存储器件1200以及一存储控制器2400,其被配置为电耦接在一起的单独集成电路芯片,甚至也可封装在一起。该存储控制器2400包括一控制逻辑电路2420以及一附加存储器件2440。该存储控制器2400对一命令主机(HOST)所生成的信号作出响应。该控制逻辑电路2420被配置用于执行图7控制逻辑电路1420、数据通路选择单元1460以及电源故障判断电路1440所执行的许多功能,然而该附加存储器件2440被用于存储在写入操作期间欲存储在非易失性存储器件1200中的原始校验和数据的副本。尤其是,在写入操作期间,将控制逻辑电路2420中生成的校验和数据提供给非易失性存储器件1200以及附加存储器件2440。之后,在读取操作期间,将从非易失性存储器件1200中读取的校验和数据与从附加存储器件2440中读取的相应校验和数据作比较。执行该比较操作以确定在当初将该校验和数据写入非易失性存储器件1200时,是否有电源故障事件发生。使用附加存储器件2440消除了需要在读取操作期间独立计算校验和数据,并因此降低了相对于图1器件100和图7器件1000而言的读取操作的实际时延。
在附图和说明书中,已公开本发明的典型优选实施例,且尽管采用了特定术语,它们只具有一般的描述性意义,而不是用来作限制,本发明的权利要求阐述了本发明的范围。此外,所有权利要求叙述中,应将对在一操作期间要被编程的存储单元数或被编程的存储单元数的描述作为涵盖等价情形,其中“数”实际表示未编程存储单元,且已编程存储单元数可通过从单元总数中减去未编程单元数推导出来。

Claims (21)

1.一集成电路器件,包括:
一存储器件,其中具有一包含多页存储单元的存储阵列;以及
一输入/输出控制电路,其通过电耦接到所述存储器件,所述输入/输出控制电路被配置用于响应一写入指令,按顺序将多段页面数据写入所述存储器件,以支持一页面写入操作,所述多段包括至少一段数据,其确定在页面写入操作期间要用写入数据编程的存储单元的数量。
2.根据权利要求1的器件,其中所述输入/输出控制电路被进一步配置用于通过将该至少一段数据与确定在该页面写入操作期间用写入数据实际编程的存储单元数量的额外数据作比较,来支持一页面读取操作。
3.根据权利要求1的器件,其中该至少一段数据包括多段校验和数据。
4.根据权利要求1的器件,其中所述输入/输出控制电路包括一校验和生成器,被配置用于生成该至少一段数据。
5.根据权利要求2的器件,其中所述输入/输出控制电路包括一校验和生成器,被配置用于在该页面写入操作期间生成该至少一段数据,且进一步被配置用于在该页面读取操作期间生成该额外数据。
6.根据权利要求1的器件,其中所述输入/输出控制电路包括一数据通路选择电路,其被置于该集成电路器件的一读取/写入数据通路中,所述数据通路选择电路包括一第一开关,其在页面写入操作期间响应于一有效标记信号,以使校验和数据被传送到所述存储器件。
7.根据权利要求6的器件,其中所述输入/输出控制电路还包括一连接到该读取/写入数据通路的校验和生成器、以及一被配置用于响应该有效标记信号以将校验和数据从该校验和生成器发送到该第一开关的第二开关。
8.根据权利要求7的器件,其中所述输入/输出控制电路还包括一寄存器组,其有一被配置用于从该第二开关接收校验和数据的第一寄存器、以及一被配置用于在页面读取操作期间从该读取/写入数据通路接收校验和数据的第二寄存器。
9.根据权利要求6的器件,其中所述输入/输出控制电路被进一步配置用于通过将该至少一段数据与确定在该页面写入操作期间用写入数据实际编程的存储单元数量的额外数据作比较,来支持一页面读取操作。
10.根据权利要求7的器件,其中所述输入/输出控制电路被进一步配置用于通过将该至少一段数据与确定在该页面写入操作期间用写入数据实际编程的存储单元数量的额外数据作比较,来支持一页面读取操作。
11.根据权利要求1的器件,其中将所述存储器件和所述输入/输出控制电路置于一共同的半导体衬底上。
12.一集成电路器件,包括:
一非易失性存储器件,其中具有一包含多页存储单元的存储阵列;以及
一存储控制器,其通过电耦接到所述非易失性存储器件,所述存储控制器被配置用于在一页面写入操作期间为所述非易失性存储器件提供多段页面数据,所述多段包括多段校验和数据,其确定在该页面写入操作期间要用写入数据编程的非易失性存储单元数量。
13.根据权利要求12的器件,其中所述存储控制器包括一存储阵列,其被配置用于在该页面写入操作期间存储传送给该非易失性存储器件的多段校验和数据的副本。
14.根据权利要求12的器件,其中存储控制器被进一步配置用于将该页面读取操作期间从所述非易失性存储器件接收的多段校验和数据与该页面写入操作期间用来确定用写入数据实际编程的该存储阵列中存储单元数量的额外校验和数据作比较,来支持一页面读取操作。
15.根据权利要求14的器件,其中所述存储控制器包括一校验和数据生成器,其被配置用于在该页面写入操作期间生成多段校验和数据,且进一步被配置用于在该页面读取操作期间生成该额外校验和数据。
16.根据权利要求14的器件,其中将所述非易失性存储器件和所述存储控制器置于单独的集成电路衬底上。
17.一种操作一集成电路存储器件的方法,包括步骤:
从该存储器件所接收第一数据生成第一校验和数据;
将该第一数据和该第一校验和数据写入该存储器件中的一非易失性存储阵列中;之后
从该非易失性存储阵列中读取该第一数据和该第一校验和数据;
从自该非易失性存储阵列读取的第一数据中生成第二校验和数据;以及
将该第二校验和数据与从该非易失性存储阵列中读取的第一校验和数据作比较,以检测它们之间的差异。
18.根据权利要求17中的方法,其中所述生成第一校验和数据的步骤包括从多段第一数据中生成多段校验和数据;且其中所述写入步骤包括通过一数据总线按顺序写入多段第一数据和多段校验和数据。
19.根据权利要求18中的方法,其中所述生成第一校验和数据的步骤包括当该存储器件中处理多段第一数据时,使用一加法器和累积寄存器生成中间校验和数据值。
20.一种操作一集成电路存储器件的方法,包括步骤:
从该存储器件所接收的第一数据生成第一校验和数据;
将该第一数据和该第一校验和数据写入该存储器件中的一非易失性存储阵列中;
将该第一校验和数据的副本写入该存储器件中的另一存储阵列中;之后
从该非易失性存储阵列中读取该第一数据和该第一校验和数据;以及
将从该另一存储阵列中读取的第一校验和数据的副本与从该非易失性存储阵列中读取的第一校验和数据作比较,以检测它们之间的差异。
21.根据权利要求20中的方法,其中所述生成第一校验和数据的步骤包括从多段第一数据中生成多段校验和数据;且其中所述写入步骤包括通过一数据总线按顺序写入多段第一数据和多段校验和数据。
CNA2005101037733A 2004-09-30 2005-09-23 可检测在电源故障期间发生写入错误的存储器件及其方法 Pending CN1770312A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR77924/04 2004-09-30
KR1020040077924A KR100632952B1 (ko) 2004-09-30 2004-09-30 정전으로 인한 프로그램 페일의 유무를 판별할 수 있는방법 및 장치

Publications (1)

Publication Number Publication Date
CN1770312A true CN1770312A (zh) 2006-05-10

Family

ID=36089090

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005101037733A Pending CN1770312A (zh) 2004-09-30 2005-09-23 可检测在电源故障期间发生写入错误的存储器件及其方法

Country Status (6)

Country Link
US (1) US20060069851A1 (zh)
JP (1) JP2006107710A (zh)
KR (1) KR100632952B1 (zh)
CN (1) CN1770312A (zh)
DE (1) DE102005048255A1 (zh)
TW (1) TWI299120B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329914A (zh) * 2007-06-22 2008-12-24 三星电子株式会社 半导体装置、存储器读取方法和存储器编程方法
CN101667454A (zh) * 2008-09-05 2010-03-10 三星电子株式会社 存储系统及其数据处理方法
CN101097781B (zh) * 2006-06-27 2010-06-09 三星电子株式会社 确定数据有效性的方法和设备
CN101097780B (zh) * 2006-06-26 2012-01-04 半导体元件工业有限责任公司 形成可编程电压调节器的方法及其结构
CN101763897B (zh) * 2008-12-16 2013-11-06 旺宏电子股份有限公司 操作非易失性存储器的方法与装置
CN103389893A (zh) * 2013-07-09 2013-11-13 福州瑞芯微电子有限公司 一种配置寄存器读写方法及装置
CN107230499A (zh) * 2016-03-23 2017-10-03 三星电子株式会社 非易失性存储器装置及其编程验证操作的方法
CN110162271A (zh) * 2019-05-21 2019-08-23 四川虹美智能科技有限公司 一种eeprom数据处理方法及装置
CN110543378A (zh) * 2018-05-29 2019-12-06 精工爱普生株式会社 电路装置、电光装置、电子设备和移动体
CN111492351A (zh) * 2017-12-21 2020-08-04 赛灵思公司 用于片上系统的在线ecc功能
CN111666037A (zh) * 2019-03-06 2020-09-15 半导体元件工业有限责任公司 存储器设备和数据验证方法
CN115080469A (zh) * 2022-05-13 2022-09-20 珠海全志科技股份有限公司 一种存储器传输时延校准方法及装置

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7504854B1 (en) 2003-09-19 2009-03-17 Xilinx, Inc. Regulating unused/inactive resources in programmable logic devices for static power reduction
US7498836B1 (en) 2003-09-19 2009-03-03 Xilinx, Inc. Programmable low power modes for embedded memory blocks
US7098689B1 (en) 2003-09-19 2006-08-29 Xilinx, Inc. Disabling unused/inactive resources in programmable logic devices for static power reduction
US7581124B1 (en) 2003-09-19 2009-08-25 Xilinx, Inc. Method and mechanism for controlling power consumption of an integrated circuit
US7549139B1 (en) 2003-09-19 2009-06-16 Xilinx, Inc. Tuning programmable logic devices for low-power design implementation
US7498839B1 (en) 2004-10-22 2009-03-03 Xilinx, Inc. Low power zones for programmable logic devices
US7373573B2 (en) * 2005-06-06 2008-05-13 International Business Machines Corporation Apparatus and method for using a single bank of eFuses to successively store testing data from multiple stages of testing
US7613894B2 (en) * 2005-09-02 2009-11-03 Hong Yu Wang Power loss recovery in non-volatile memory
US20070106868A1 (en) * 2005-11-04 2007-05-10 Sun Microsystems, Inc. Method and system for latency-directed block allocation
US7498835B1 (en) 2005-11-04 2009-03-03 Xilinx, Inc. Implementation of low power standby modes for integrated circuits
US7345944B1 (en) * 2006-01-11 2008-03-18 Xilinx, Inc. Programmable detection of power failure in an integrated circuit
US7818464B2 (en) * 2006-12-06 2010-10-19 Mosaid Technologies Incorporated Apparatus and method for capturing serial input data
KR100803373B1 (ko) * 2007-02-09 2008-02-13 주식회사 하이닉스반도체 반도체 메모리 장치의 데이터 에러 측정 회로
TW201009841A (en) * 2008-08-21 2010-03-01 Inventec Corp Replication system and data replication method
KR101543431B1 (ko) * 2008-11-20 2015-08-11 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 액세스 방법
US8289788B2 (en) * 2009-04-01 2012-10-16 Seiko Epson Corporation System having a plurality of memory devices and data transfer method for the same
JP5482275B2 (ja) * 2009-04-01 2014-05-07 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
JP5556371B2 (ja) 2010-05-25 2014-07-23 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
US8823405B1 (en) 2010-09-10 2014-09-02 Xilinx, Inc. Integrated circuit with power gating
KR101996004B1 (ko) * 2012-05-29 2019-07-03 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법 및 그것의 메모리 시스템
US9419624B2 (en) 2014-11-12 2016-08-16 Xilinx, Inc. Power management system for integrated circuits
KR20170073792A (ko) * 2015-12-18 2017-06-29 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR102438988B1 (ko) * 2016-04-07 2022-09-02 삼성전자주식회사 랜덤화 연산을 수행하는 불휘발성 메모리 장치
US10431291B1 (en) * 2018-08-08 2019-10-01 Micron Technology, Inc. Systems and methods for dynamic random access memory (DRAM) cell voltage boosting
JP7112060B2 (ja) * 2018-12-26 2022-08-03 ルネサスエレクトロニクス株式会社 半導体装置およびその電源制御方法
US11755685B2 (en) 2020-09-30 2023-09-12 Piecemakers Technology, Inc. Apparatus for data processing in conjunction with memory array access
US11250904B1 (en) 2020-09-30 2022-02-15 Piecemakers Technology, Inc. DRAM with inter-section, page-data-copy scheme for low power and wide data access
US11836035B2 (en) * 2021-08-06 2023-12-05 Western Digital Technologies, Inc. Data storage device with data verification circuitry

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3851306A (en) * 1972-11-24 1974-11-26 Ibm Triple track error correction
US4151510A (en) * 1978-04-27 1979-04-24 Honeywell Information Systems Method and apparatus for an efficient error detection and correction system
JPS6273500A (ja) * 1985-09-26 1987-04-04 Mitsubishi Electric Corp 半導体記憶装置
JPH0821011B2 (ja) * 1987-06-03 1996-03-04 株式会社日立製作所 バス拡張制御方式
US5159679A (en) * 1988-09-09 1992-10-27 Compaq Computer Corporation Computer system with high speed data transfer capabilities
JPH0624356B2 (ja) * 1989-12-21 1994-03-30 株式会社東芝 データ転送方式
US5341488A (en) * 1990-04-11 1994-08-23 Nec Electronics, Inc. N-word read/write access achieving double bandwidth without increasing the width of external data I/O bus
EP0473805A1 (en) * 1990-09-03 1992-03-11 International Business Machines Corporation Computer system with improved performance
US5418796A (en) * 1991-03-26 1995-05-23 International Business Machines Corporation Synergistic multiple bit error correction for memory of array chips
KR950008789B1 (ko) * 1992-07-30 1995-08-08 삼성전자주식회사 멀티-이씨씨(ecc)회로를 내장하는 반도체 메모리 장치
JPH06242957A (ja) * 1993-02-16 1994-09-02 Fujitsu Ltd プログラム実行制御装置
US5812792A (en) * 1994-07-22 1998-09-22 Network Peripherals, Inc. Use of video DRAM for memory storage in a local area network port of a switching hub
US5553238A (en) * 1995-01-19 1996-09-03 Hewlett-Packard Company Powerfail durable NVRAM testing
US5732265A (en) * 1995-11-02 1998-03-24 Microsoft Corporation Storage optimizing encoder and method
US5920580A (en) * 1996-03-11 1999-07-06 Integrated Device Technology, Inc. Multiple error detection in error detection correction circuits
US5950223A (en) * 1997-06-19 1999-09-07 Silicon Magic Corporation Dual-edge extended data out memory
KR100266748B1 (ko) * 1997-12-31 2000-10-02 윤종용 반도체 메모리 장치 및 그 장치의 에러 정정 방법
US6948112B2 (en) * 2001-05-10 2005-09-20 Hewlett-Packard Development Company, L.P. System and method for performing backward error recovery in a computer

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101097780B (zh) * 2006-06-26 2012-01-04 半导体元件工业有限责任公司 形成可编程电压调节器的方法及其结构
CN101097781B (zh) * 2006-06-27 2010-06-09 三星电子株式会社 确定数据有效性的方法和设备
CN101329914A (zh) * 2007-06-22 2008-12-24 三星电子株式会社 半导体装置、存储器读取方法和存储器编程方法
CN101329914B (zh) * 2007-06-22 2014-10-08 三星电子株式会社 半导体装置、存储器读取方法和存储器编程方法
CN101667454A (zh) * 2008-09-05 2010-03-10 三星电子株式会社 存储系统及其数据处理方法
CN101763897B (zh) * 2008-12-16 2013-11-06 旺宏电子股份有限公司 操作非易失性存储器的方法与装置
CN103389893A (zh) * 2013-07-09 2013-11-13 福州瑞芯微电子有限公司 一种配置寄存器读写方法及装置
CN103389893B (zh) * 2013-07-09 2016-01-13 福州瑞芯微电子股份有限公司 一种配置寄存器读写方法及装置
CN107230499A (zh) * 2016-03-23 2017-10-03 三星电子株式会社 非易失性存储器装置及其编程验证操作的方法
CN107230499B (zh) * 2016-03-23 2022-07-12 三星电子株式会社 非易失性存储器装置及其编程验证操作的方法
CN111492351A (zh) * 2017-12-21 2020-08-04 赛灵思公司 用于片上系统的在线ecc功能
CN110543378A (zh) * 2018-05-29 2019-12-06 精工爱普生株式会社 电路装置、电光装置、电子设备和移动体
CN110543378B (zh) * 2018-05-29 2023-07-11 精工爱普生株式会社 电路装置、电光装置、电子设备和移动体
CN111666037A (zh) * 2019-03-06 2020-09-15 半导体元件工业有限责任公司 存储器设备和数据验证方法
CN111666037B (zh) * 2019-03-06 2024-05-10 半导体元件工业有限责任公司 存储器设备和数据验证方法
CN110162271A (zh) * 2019-05-21 2019-08-23 四川虹美智能科技有限公司 一种eeprom数据处理方法及装置
CN115080469A (zh) * 2022-05-13 2022-09-20 珠海全志科技股份有限公司 一种存储器传输时延校准方法及装置

Also Published As

Publication number Publication date
JP2006107710A (ja) 2006-04-20
DE102005048255A1 (de) 2006-04-13
KR20060028981A (ko) 2006-04-04
US20060069851A1 (en) 2006-03-30
TWI299120B (en) 2008-07-21
TW200613965A (en) 2006-05-01
KR100632952B1 (ko) 2006-10-11

Similar Documents

Publication Publication Date Title
CN1770312A (zh) 可检测在电源故障期间发生写入错误的存储器件及其方法
US8694855B1 (en) Error correction code technique for improving read stress endurance
KR100331139B1 (ko) 에러 위치지정 코드를 사용하여 멀티레벨 셀 메모리를 정정하는방법 및 장치
US5502732A (en) Method for testing ECC logic
US6035432A (en) System for remapping defective memory bit sets
CN101558452B (zh) 用于在闪速eeprom存储页中重构可靠性数据的方法和装置
EP0530554A2 (en) Scrubbing and sparing in a memory system
US20110185254A1 (en) Error detection and correction scheme for a memory device
US9760434B2 (en) ECC method for double pattern flash memory
JP5780174B2 (ja) 不良ビットエラーを処理するシステムおよび方法
KR20070024624A (ko) 플래시 메모리 장치에서 내부 프로그래밍 동안 동시적으로외부 판독 동작을 수행하기 위한 방법 및 시스템
US8756398B2 (en) Partitioning pages of an electronic memory
JP5132687B2 (ja) メモリにおけるキャッシュを利用した誤り検出及び訂正方法及び装置
US7450436B2 (en) Device recoverable purge for flash storage device
US5935258A (en) Apparatus for allowing data transfers with a memory having defective storage locations
KR920001104B1 (ko) 어드레스 라인 오류 테스트 방법
EP1994470B1 (en) Electronic circuit with a memory matrix that stores pages including extra data
KR20020029925A (ko) 디지털 데이터의 소프트 에러를 정정하는 방법 및 장치
EP3392885B1 (en) Non-volatile memory repair circuit
WO2005101207A1 (en) Data handling device that corrects errors in a data memory
US20090119444A1 (en) Multiple write cycle memory using redundant addressing
US20030217325A1 (en) Method and apparatus for providing error correction within a register file of a CPU
JP4956230B2 (ja) メモリコントローラ
KR20030023762A (ko) 에러 보정 방법 및 에러 보정 회로 장치
CN111831486B (zh) 半导体装置和包括该半导体装置的半导体系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20060510