CN1983424A - 错误校正装置及校正方法 - Google Patents

错误校正装置及校正方法 Download PDF

Info

Publication number
CN1983424A
CN1983424A CNA2006101467172A CN200610146717A CN1983424A CN 1983424 A CN1983424 A CN 1983424A CN A2006101467172 A CNA2006101467172 A CN A2006101467172A CN 200610146717 A CN200610146717 A CN 200610146717A CN 1983424 A CN1983424 A CN 1983424A
Authority
CN
China
Prior art keywords
data group
internal memory
error
revised
memory
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.)
Granted
Application number
CNA2006101467172A
Other languages
English (en)
Other versions
CN1983424B (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.)
Daoling Technology Co., Ltd
Original Assignee
MediaTek 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 MediaTek Inc filed Critical MediaTek Inc
Publication of CN1983424A publication Critical patent/CN1983424A/zh
Application granted granted Critical
Publication of CN1983424B publication Critical patent/CN1983424B/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
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • G11C7/1027Static column decode serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled bit line addresses

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)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明提供错误校正装置及校正方法,该错误校正装置用以修正一数据群组,该装置包括:一第一内存,用以储存数据群组;一里德所罗门引擎,接收多个错误校正码,且根据错误校正码而译码出一错误序列以修正数据群组;一内存控制器,对第一内存执行一瞬间读取操作,以使得第一内存输出所述数据群组;一计算单元,接收来自RS引擎的错误序列及来自第一内存的数据群组,且对错误序列及数据群组执行一逻辑运算,以获得修正后的数据群组;以及一第二内存,耦接计算单元并储存修正后的数据群组,其中,当内存控制器执行一写入操作时,内存控制器控制第一内存接收并储存来自第二内存的修正后的数据群组。

Description

错误校正装置及校正方法
技术领域
本发明涉及光盘的刻录技术,尤其涉及当检测到错误数据时对其进行校正的技术,具体的说是涉及错误校正装置及校正方法。
背景技术
当储存在动态随机存取内存(dynamic random access memory,DRAM)的错误数据被检测到时,数据将以读取-修改-写入(read-modify-write,RMW)操作方式来做修正。在现有RMW操作中,由DRAM的RMW操作来将数据读出。被读出的数据接着由外部电路来做修正。修正后的数据最后存在DRAM中对应的记忆胞(memory cell)里。现有RMW操作需要相对长的处理时间,此处理时间由RMW操作的操作循环来定义。然而,长时间的处理时间造成效能降低以及其它复杂性的问题。
图1表示现有错误校正装置。错误校正装置1包括译码器10、内存控制器11、以及DRAM12。DRAM12储存多字节(byte)的数据。当储存在DRAM 12的每一字节数据要被修正时,错误校正装置1执行RMW操作。译码器10接收错误校正码(error correction code,ECC)并根据ECC译码出多错误值。
图2说明在RMW操作中内存控制器11的指令。其中,标号“20”表示内存控制器11的指令,标号“21”表示在DRAM总线上的读取/写入数据,且标号“22”表示错误值。
请参阅图1及图2,将以一字节数据D1为例来说明。内存控制器11传送预充电(pre-charge)指令PRE及使能(active)指令ACT至DRAM 12,以确定在DRAM12中欲修正的数据D1的地址。当内存控制器11接着传送读取指令RD至DRAM12时,DRAM12透过DRAM总线传送数据D1至内存控制器11内的计算单元13。计算单元13对数据D1与对应的错误值E1执行逻辑运算以修正数据D1。当内存控制器11传送写入指令WR至DRAM12时,修正后的数据W1由记算单元13传送至DRAM12,且再次储存于对应的地址。因此,根据现有错误校正装置1,对于欲修正的n字节数据而言,内存控制器11传送了n个预充电指令PRE、n个使能指令ACT、n个读取指令RD、以及n个写入指令WR。
在图2中,内存控制器11在充电指令PRE与使能指令ACT间、在使能指令ACT与读取指令RD间、以及在读取指令RD与写入指令WR间,传送了无运算(no-operation)指令NOP。这些无运算指令NOP在闲置或等待状态期间防止不需要的指令。标号“PRMW”表示一个RMW操作的期间。标号“Trp20”表示由充电指令PRE到使能指令ACT的延迟时间,标号“Trcd20”表示由使能指令ACT到读取指令RD的延迟时间,标号“Trc120”表示由读取指令RD到数据D1处于DRAM总线上时间点之间的延迟时间。参阅图2,在一个RMW操作中,错误校正装置1需要(Trp20+Trcd20+Trc120+1(NOP23)+1(WR))个操作循环。其中,“NOP23”用来防止DRAM总线冲突(contention)。假设每一延迟Trp20、Trcd20、Trc120花费3个操作循环,因此,当一字节数据被修正时,将花费11个操作循环。蓝光激光光盘(blue-ray disc)的磁簇(cluster)具有240*304个字节,且假设蓝光激光光盘的错误率为5%。当错误校正装置1应用在蓝光激光光盘时,将花费大约41459个操作循环((248*304*11*5%)=~41459)。这些操作循环将降低DRAM频宽的使用。表一表示在不同的光盘速度下,错误校正操作循环的百分比。根据表一可以明显得知当光盘速度越高,百分比则越高。因此,减少错误校正所花费的操作循环是很重要的。
蓝光激光光盘的速度 一个磁簇的操作循环(假设1循环=10ns) 错误校正百分比
1X  956000 cycles  41459/956000=4.33%
4X  239000 cycles  41459/239000=17.35%
8X  119500 cycles  41459/119500=34.69%
14X  68286 cycles  41459/68286=60.71%
表一
发明内容
本发明提供一种错误校正装置,用以校正修正一个数据群组,其包括第一内存、里德所罗门(Reed-Solomon,RS)引擎、内存控制器、计算单元、以及第二内存。第一内存储存此数据群组。RS引擎接收多错误校正码,且根据多错误校正码而译码出一错误序列以修正数据群组。内存控制器对第一内存执行瞬间读取(burst read)操作,以使得第一内存输出数据群组。计算单元接收来自RS引擎的错误序列及来自第一内存的数据群组,且对错误序列及数据群组执行一逻辑运算,以获得修正后的数据群组。第二内存耦接计算单元并储存修正后的数据群组。当内存控制器执行写入操作时,内存控制器控制第一内存接收并储存来自第二内存的修正后的数据群组。
本发明更提供一种错误校正装置,用以校正修正一数据群组,其包括里德所罗门(Reed-Solomon,RS)引擎、第一内存、第二内存、计算单元、以及内存控制器。RS引擎接收多错误校正码,且根据多错误校正码而译码出一错误序列。第二内存储存数据群组。计算单元接收来自RS引擎的错误序列及来自第二内存的数据群组,且对错误序列及数据群组执行一逻辑运算,并接着输出修正后的数据群组至第二内存。内存控制器对第一内存执行一瞬间写入(burst write)操作,以使得第一内存接收并储存来自第二内存的修正后的数据群组。
本发明另提出一种错误校正装置,用以校正修正n个数据组,其包括内存、里德所罗门(Reed-Solomon,RS)引擎、内存控制器、以及计算单元。内存储存n个数据组。RS引擎接收多错误校正码,且根据多错误校正码而译码出n个错误值。内存控制器对内存执行一瞬间读取-修正-写入(burstread-modify-write,burst RMW)操作,以在n个预设期间内修正这些n个数据组。计算单元耦接RS引擎及内存控制器。当内存控制器对内存执行瞬间读取-修正-写入操作时,在n个期间的第i期间中,计算单元接收来自内存的第i数据组,对第i数据组及第i错误值执行一逻辑运算以获得修正后的第i数据组,并输出正后的第i数据组至内存以做储存,1≤i≤n。
附图说明
图1表示现有错误校正装置。
图2表示在读取-修正-写入(read-modify-write,RMW)操作中,图1的错误校正装置的指令。
图3表示本发明实施例的一错误校正装置。
图4表示图3的错误校正装置的一指令例子。
图5表示图3的错误校正装置的另一指令例子。
图6表示本发明实施例的另一错误校正装置。
图7a及图7b表示图6的错误校正装置的一指令例子。
主要组件符号说明
10~译码器;         11~内存控制器;
12~DRAM;           13~计算单元;
23~无运算指令NOP;  31~计算单元;
32~缓存器;         33~内存控制器;
34~DRAM;           35~RS引擎;
44~无运算指令NOP;  61~计算单元;
62~内存控制器;
63~DRAM;
64~RS引擎。
具体实施方式
为使本发明的上述目的、特征和优点能更明显易懂,下文特举一较佳实施例,并配合附图,作详细说明如下。
图3表示本发明一实施例的错误校正装置。错误校正装置3包括计算单元3 1、缓存器32、内存控制器33、动态随机存取内存(dynamic random accessmemory,DRAM)34、以及里德所罗门(Reed-Solomon,RS)引擎35。DRAM34储存m个数据组,且每一数据组的长度为一字节(byte)。RS引擎35检查m个数据组。在此实施例中,RS引擎35判断出在m个数据组里有n个数据组D1至Dn发生错误,并根据错误校正码(error correction code,ECC)而计算出对应的错误值E1至En。其中,错误值E1至En组合成错误序列ES。数据组D1至Dn合称为数据群组DG。在图3的错误校正装置3中,缓存器32可以是先进先出(First In First Out,FIFO)缓冲器或是同步动态随机存取内存(synchronous dynamic random access memory,SDRAM)。
图4说明内存控制器33指令的一个例子。其中,标号“40”表示内存控制器33的指令,标号“41”表示在DRAM总线上的读取/写入数据,标号“42”表示错误值E1至En,且标号“43”表示在缓存器32中的数据组。
请参阅图3及图4在RS引擎35判断出数据群组DG发生错误,且计算对应的错误序列ES及位置后,内存控制器33传送预充电(pre-charge)指令PRE及使能(active)指令ACT至DRAM34,以确定在DRAM34中欲修正的数据群组DG的地址。当内存控制器33对DRAM34执行瞬间读取(burst read)操作时,其传送多个读取指令RD至DRAM34,且DRAM34根据地址并透过DRAM总线输出数据群组DG至计算单元31,如图3中介于计算单元31与内存单元33间的虚线所示。计算单元31也接收来自RS引擎35的错误序列ES。计算单元31对数据群组DG与错误序列ES执行一逻辑运算,由此以错误序列ES来修正数据群组DG。修正后的数据群组WG由计算单元31输出至缓存器32来做储存。当内存控制器33对DRAM34执行写入操作时,内存控制器33传送多个写入指令WR至DRAM34,且修正后的数据群组WG由缓存器32输出至DRAM34,且重新储存在对应的地址。
在接下来的说明中,将详细说明上述装置的一些操作。请参阅图3及图4,计算单元31由RS引擎35接收错误序列ES的错误值E1至En。当内存控制器33对DRAM 34执行瞬间读取操作且传送n个读取指令RD至DRAM34时,DRAM34依序输出数据群组DG的数据组D1至Dn至计算单元31。计算单元31对数据组D1至Dn与错误值E1至En执行一逻辑运算以修正数据组D1至Dn,并获得修正后的数据群组WG的数据组W1至Wn。在此实施例中,此逻辑运算为互斥或(exclusive OR,XOR)运算,由以下式子来表示:
Di XOR Ei=Wi;其中,0≤i≤n
举例来说,D1 XOR E1=W1,D2 XOR E2=W2。
在计算单元31获得修正后的数据组W1至Wn后,其将修正后的数据组W1至Wn输出至缓存器32做储存。当内存控制器33对DRAM34执行写入操作时,内存控制器33传送n个写入指令WR至DRAM34,且修正后的数据组W1至Wn依序由缓存器32输出至DRAM34,且重新储存在对应的地址。在图4的例子中,对于欲修正的n个数据组而言,内存控制单元33传送一个预充电指令PRE、一个使能指令ACT、n个读取指令RD、以及n个写入指令WR。
在图4中,内存控制器33在充电指令PRE与使能指令ACT间、在使能指令ACT与多个读取指令RD中的第一者间、以及在多个读取指令RD的最后者与多写入指令WR的第一者间,传送了无运算(no-operation)指令NOP。其中,无运算指令NOP用以防止DRAM总线冲突(contention)。标号“Trp40”表示由充电指令PRE到使能指令ACT的延迟时间,标号“Trcd40”表示由使能指令ACT到第一个读取指令RD的延迟时间,标号“Trc140”表示由最后一个读取指令RD到数据组Dn处于DRAM总线上时间点之间的延迟时间。
请参阅图4,当n个数据组要被修正时,错误校正装置3需要(Trp40+Trcd40+n(RD)+Trc140+1(NOP44)+n(WR))个操作循环。假设每一延迟Trp40、Trcd40、及Trc140花费3个操作循环,且错误校正装置3应用在蓝光激光光盘(blue-ray disc)。蓝光激光光盘的磁簇(cluster)具有240*304个字节,且假设蓝光激光光盘的错误率为5%。蓝光激光光盘将花费大约10579个操作循环((3+3+248*5%+3+1+248*5%)*304=~10579),大于等于现有错误校正装置1所花费的41459个操作循环的2%,因此,降低了所占用的DRAM频宽。
在一些实施例中。当RS引擎35判断/检测出错误的数据组D1至Dn时,其同时储存数据组D1至Dn在缓存器32。
图5表示内存控制器33指令的另一例子。其中,标号“50”表示预先储存在缓存器32的数据组,标号“51”表示错误值E1至En,标号“52”表示在校正后储存在缓存器32的数据组,标号“53”表示内存控制器33的指令,标号“54”表示在DRAM总线上的读取/写入数据。
请参阅图3及图5,缓存器32预先储存数据组D1至Dn,由标号“50”所表示。计算单元31接收来自缓存器32的数据组D1至Dn(由计算单元31与缓存器32间虚线所表示)以及接收来自RS引擎35的错误值E1至En。计算单元31接着对数据组D1至Dn与错误值E1至En执行一逻辑运算以修正数据组D1至Dn,且计算单元31获得修正后的数据组W1至Wn。在此实施例中,此逻辑运算为互斥或(exclusive OR,XOR)运算。在计算单元31获得修正后的数据组W1至Wn后,其将修正后的数据组W1至Wn输出至缓存器32。在此时,缓存器32储存修正后的数据组W1至Wn,以取代数据组D1至Dn。内存控制器33传送预充电指令PRE及使能指令ACT至DRAM 34,以确定在DRAM 34中要修正的数据组D1至Dn的地址。当内存控制器33对DRAM 34执行瞬间写入(burst write)指令时,其传送n个写入指令WR至DRAM34。修正后的数据组W1至Wn依序由缓存器32输出至DRAM34,且重新储存在对应的地址。在图5的例子中,对于欲修正的n个数据组而言,内存控制单元33传送一个预充电指令PRE、一个使能指令ACT、以及n个写入指令WR。
在图5中,标号“Trp50”表示由充电指令PRE到使能指令ACT的延迟时间,且标号“Trcd50”表示由使能指令ACT到第一个写入指令WR的延迟时间。请参阅图3及图5,当n个数据组要被修正时,错误校正装置3需要(Trp50+Trcd50+n(WR))个操作循环。假设每一延迟Trp40及Trcd40花费3个操作循环,且错误校正装置3是应用在蓝光激光光盘(blue-ray disc)。蓝光激光光盘的磁簇(cluster)具有240*304个字节,并假设蓝光激光光盘的错误率为5%蓝光激光光盘将花费大约5594个操作循环((3+3+248*5%)*304=~5594),等于现有错误校正装置1所花费的41459个操作循环的12%,因此,降低了所占用的DRAM频宽。
图6表示本发明另一实施例的错误校正装置。错误校正装置6包括计算单元61、内存控制器62、动态随机存取内存(dynamic random access memory,DRAM)63、以及里德所罗门(Reed-Solomon,RS)引擎64。DRAM 63储存m个数据组,且每一数据组的长度为一字节(byte)。RS引擎64检查m个数据组。在此实施例中,RS引擎64判断出在m个数据组里有n个数据组D1至Dn发生错误并计算出对应的错误值E1至En。
图7a及图7b表示内存控制器62指令的一例子。其中,标号“70”表示内存控制器62的指令,标号“71”表示在DRAM总线上的读取/写入数据,标号“73”表示错误值E1至En。
请参阅图6、图7a、及图7b,计算单元61接收来自RS引擎64的错误值E1至En。为了修正n个数据组D1至Dn,内存控制器62对DRAM63执行瞬间读取-修正-写入(burst read-modify-write,burst RMW)操作。内存控制器62传送预充电指令PRE及使能指令ACT至DRAM63,以确定在DRAM63中欲修正的数据组D1至Dn的地址。内存控制器62接着传送第一读取指令RD至DRAM63。DRAM63输出数据组D1至计算单元61,如内存控制器62与计算单元61间的虚线所示。计算单元61对数据组D1与错误值E1执行一逻辑运算以修正数据组D1,且计算单元61接着获得修改后的数据组W1。在此实施例中,此逻辑运算为互斥或(exclusive OR,XOR)运算,由以下式子来表示:
Di XOR Ei=Wi;其中,0≤i≤n
举例来说,D1 XOR E1=W1,D2 XOR E2=W2。
当内存控制器62传送第一写入指令WD至DRAM63时,修正后数据组W1由计算单元61传送至DRAM 63,且重新储存在对应的地址。由第一读取指令RD到第一写入指令的其间称为第一操作期间P1。
内存控制器62接着传送第二读取指令RD至DRAM63。DRAM63输出数据组D1至计算单元61。计算单元61对数据组D2与错误值E2执行一逻辑运算以修正数据组D2,且计算单元61接着获得修改后的数据组W2。当内存控制器62传送第二写入指令WD至DRAM63时,修正后数据组W2由计算单元61传送至DRAM63,且重新储存在对应的地址。由第二读取指令RD到第二写入指令的其间称为第二操作期间P2。对于一个瞬间读取-修正-写入(burst RMW)操作而言,重复上述动作以修正数据组D1至Dn。在第i操作期间Pi中,计算单元61自DRAM63接收第i数据组Di。计算单元61对第i数据组Di与第i错误值Ei执行一逻辑运算以获得修正后的第i数据组Wi,并输出修正后的第i数据组Wi至DRAM63做储存。因此,在此实施例中,对于欲修正的n个数据组而言,内存控制器62只传送一个预充电指令PRE、一个使能指令ACT、n个读取指令RD、以及n个写入指令WR。
本发明虽以较佳实施例揭露如上,然其并非用以限定本发明的范围,任何熟习此项技艺者,在不脱离本发明的精神和范围内,当可做些许的更动与润饰,因此本发明的保护范围当视后附的权利要求所界定者为准。

Claims (24)

1.一种错误校正装置,该装置用以修正一数据群组,所述错误校正装置包括:
一第一内存,用以储存所述数据群组;
一里德所罗门引擎,接收多个错误校正码,且根据所述错误校正码而译码出一错误序列以修正所述数据群组;
一内存控制器,对所述第一内存执行一瞬间读取操作,以使得所述第一内存输出所述数据群组;
一计算单元,接收来自所述RS引擎的所述错误序列及来自所述第一内存的所述数据群组,且对所述错误序列及所述数据群组执行一逻辑运算,以获得修正后的所述数据群组;以及
一第二内存,耦接所述计算单元并储存修正后的所述数据群组,
其中,当所述内存控制器执行一写入操作时,所述内存控制器控制所述第一内存接收并储存来自所述第二内存的修正后的所述数据群组。
2.如权利要求1所述的错误校正装置,其特征在于,所述数据群组包括多个字节的数据。
3.如权利要求1所述的错误校正装置,其特征在于,所述第二内存为先进先出缓冲器。
4.如权利要求1所述的错误校正装置,其特征在于,所述第二内存为同步动态随机存取内存。
5.如权利要求1所述的错误校正装置,其特征在于,所述逻辑运算为互斥或运算。
6.一种错误校正装置,该装置用以修正一数据群组,所述错误校正装置包括:
一里德所罗门引擎,接收多个错误校正码,且根据所述错误校正码而译码出一错误序列;
一第一内存;
一第二内存,储存所述数据群组;
一计算单元,接收来自所述RS引擎的所述错误序列及来自所述第二内存的所述数据群组,且对所述错误序列及所述数据群组执行一逻辑运算,并接着输出修正后的所述数据群组至所述第二内存;以及
一内存控制器,对所述第一内存执行一瞬间写入操作,以使得所述第一内存接收并储存来自所述第二内存的修正后的所述数据群组。
7.如权利要求6所述的错误校正装置,其特征在于,所述数据群组包括多个字节的数据。
8.如权利要求6所述的错误校正装置,其特征在于,所述第二内存为先进先出缓冲器。
9.如权利要求6所述的错误校正装置,其特征在于,所述第二内存为同步动态随机存取内存。
10.如权利要求6所述的错误校正装置,其特征在于,所述逻辑运算为互斥或运算。
11.一种错误校正装置,该装置用以修正n个数据组,所述错误校正装置包括:
一内存,用以储存所述n个数据组;
一里德所罗门引擎,接收多个错误校正码,且根据所述错误校正码而译码出n个错误值;
一内存控制器,对所述内存执行一瞬间读取-修正-写入操作,以在n个预设期间内修正所述n个数据组;以及
一计算单元,耦接所述RS引擎及所述内存控制器;
其中,当所述内存控制器对所述内存执行所述瞬间读取-修正-写入操作时,在所述n个期间的一第i期间中,所述计算单元接收来自所述内存的所述第i数据组,对所述第i数据组及所述第i错误值执行一逻辑运算以获得修正后的所述第i数据组,并输出修正后的所述第i数据组至所述内存以做储存,1≤i≤n。
12.如权利要求11所述的错误校正装置,其特征在于,所述数据群组包括多个字节的数据。
13.如权利要求11所述的错误校正装置,其特征在于,所述逻辑运算为互斥或运算。
14.一种校正方法,该方法用以修正储存在一第一内存的一数据群组,所述校正方法包括以下步骤:
接收多个错误校正码;
根据所述错误校正码来决定一错误序列;
对所述第一内存执行一瞬间读取操作;
自所述第一内存输出所述数据群组;
对所述数据群组与所述错误序列执行一逻辑运算,以获得修正后的所述数据群组;
执行一写入操作:以及
将修正后的所述数据群组储存至所述第一内存。
15.如权利要求14所述的校正方法,其特征在于,所述数据群组包括多个字节的数据。
16.如权利要求14所述的校正方法,其特征在于,所述逻辑运算为互斥或运算。
17.如权利要求14所述的校正方法,其特征在于,所述校正方法更包括将所述修正后的所述数据群组储存至一第二内存,且将修正后的所述数据群组自所述第二内存输出至所述第一内存的步骤。
18.一种校正方法,该方法用以修正储存在一第一内存的一数据群组,所述校正方法包括以下步骤:
检测所述数据群组,并将所述数据群组储存至一第二内存;
接收多个错误校正码;
根据所述错误校正码来决定一错误序列;
对所述数据群组与所述错误序列执行一逻辑运算,以获得修正后的所述数据群组;
输出修正后的所述数据群组至所述第二内存以做储存;
对所述第一内存执行一瞬间写入操作:以及
将修正后的所述数据群组储存至所述第一内存。
19.如权利要求18所述的校正方法,其特征在于,所述数据群组包括多个字节的数据。
20.如权利要求18所述的校正方法,其特征在于,所述逻辑运算为互斥或运算。
21.如权利要求18所述的校正方法,其特征在于,所述校正方法更包括将所述修正后的所述数据群组储存至所述第二内存,且将修正后的所述数据群组自所述第二内存输出至所述第一内存的步骤。
22.一种校正方法,该方法用以修正储存在一内存的n个数据组,所述校正方法包括以下步骤:
接收多个错误校正码;
根据所述错误校正码来译码出n个错误值;
对所述内存执行一瞬间读取-修正-写入操作,以在n个预设期间内修正所述n个数据组;
在所述n个期间的一第i期间中,对所述第i数据组及第i错误值执行一逻辑运算以获得修正后的所述第i数据组,并将所述第i数据组储存至所述内存,其中,1≤i≤n。
23.如权利要求22所述的校正方法,其特征在于,所述数据群组包括多个字节的数据。
24.如权利要求22所述的校正方法,其特征在于,所述逻辑运算为互斥或运算。
CN2006101467172A 2005-12-12 2006-11-16 错误校正装置及校正方法 Active CN1983424B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/299,537 2005-12-12
US11/299,537 US7802169B2 (en) 2005-12-12 2005-12-12 Error correction devices and correction methods

Publications (2)

Publication Number Publication Date
CN1983424A true CN1983424A (zh) 2007-06-20
CN1983424B CN1983424B (zh) 2010-07-21

Family

ID=38140913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101467172A Active CN1983424B (zh) 2005-12-12 2006-11-16 错误校正装置及校正方法

Country Status (3)

Country Link
US (1) US7802169B2 (zh)
CN (1) CN1983424B (zh)
TW (1) TWI349938B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107710163A (zh) * 2015-05-04 2018-02-16 德克萨斯仪器股份有限公司 一次写入型存储器码的纠错码管理
CN108028666A (zh) * 2015-07-31 2018-05-11 瑞伯韦尔公司 数据完整性检测和校正

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8756486B2 (en) 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US8289760B2 (en) 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
EP3009932A1 (en) * 2012-01-31 2016-04-20 Hewlett-Packard Development Company, L.P. Single and double chip spare
US10379971B2 (en) 2012-01-31 2019-08-13 Hewlett Packard Enterprise Development Lp Single and double chip space
US9009570B2 (en) * 2012-06-07 2015-04-14 Micron Technology, Inc. Integrity of an address bus
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161208A (en) 1994-05-06 2000-12-12 International Business Machines Corporation Storage subsystem including an error correcting cache and means for performing memory to memory transfers
US6304992B1 (en) 1998-09-24 2001-10-16 Sun Microsystems, Inc. Technique for correcting single-bit errors in caches with sub-block parity bits
TW440823B (en) * 1999-04-16 2001-06-16 Via Tech Inc Method and apparatus for data transmission of a storage device
JP2003517173A (ja) 1999-12-17 2003-05-20 トムソン ライセンシング ソシエテ アノニム 光学記録装置または光学再生装置のフロントエンドic内での訂正およびトラック・バッファリング用のストレージとしてのsdramの使用
US6434081B1 (en) 2000-05-12 2002-08-13 Micron Technology, Inc. Calibration technique for memory devices
JP3595495B2 (ja) 2000-07-27 2004-12-02 Necマイクロシステム株式会社 半導体記憶装置
US6859904B2 (en) 2001-05-11 2005-02-22 Sun Microsystems, Inc. Apparatus and method to facilitate self-correcting memory
WO2005006563A1 (en) 2003-07-09 2005-01-20 Thomson Licensing Error correction method for reed-solomon product code

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107710163A (zh) * 2015-05-04 2018-02-16 德克萨斯仪器股份有限公司 一次写入型存储器码的纠错码管理
CN107710163B (zh) * 2015-05-04 2021-06-18 德克萨斯仪器股份有限公司 一次写入型存储器码的纠错码管理的电路、系统和方法
CN108028666A (zh) * 2015-07-31 2018-05-11 瑞伯韦尔公司 数据完整性检测和校正
CN108028666B (zh) * 2015-07-31 2021-11-02 瑞伯韦尔公司 数据完整性检测和校正

Also Published As

Publication number Publication date
US20070136645A1 (en) 2007-06-14
CN1983424B (zh) 2010-07-21
TW200723288A (en) 2007-06-16
TWI349938B (en) 2011-10-01
US7802169B2 (en) 2010-09-21

Similar Documents

Publication Publication Date Title
CN1983424B (zh) 错误校正装置及校正方法
CN102414666B (zh) 用于受管理的非易失性存储器的低等待时间读取操作
CN100541440C (zh) 半导体存储设备和伪sram
US8001444B2 (en) ECC functional block placement in a multi-channel mass storage device
US9003260B2 (en) Partial-writes to ECC (error check code) enabled memories
US8127205B2 (en) Error correction code generation method and memory control device
CN114328316B (zh) Dma控制器、soc系统及基于dma控制器的数据搬运方法
US11468963B2 (en) Memory device and read method thereof
KR20180089104A (ko) 메모리 모듈, 이를 포함하는 메모리 시스템 및 이의 에러 정정 방법
US11106533B2 (en) Memory systems and writing methods of the memory systems
US9891986B2 (en) System and method for performing bus transactions
US10992322B2 (en) Data storage system and associated method for saving storage space and eliminating data errors
US11188417B2 (en) Memory system, memory module, and operation method of memory system
US20240192862A1 (en) Automated Error Correction with Memory Refresh
CN101488369A (zh) Bch码控制器接口电路
US20110004817A1 (en) Crc management method performed in sata interface and data storage device using crc management method
US9239755B2 (en) Semiconductor device and semiconductor system including the same
US10379926B2 (en) Method and device for monitoring data error status in a memory
US20170345472A1 (en) Memory device and information processing apparatus
US9519539B2 (en) Monitoring data error status in a memory
US9703625B1 (en) Method and apparatus for detecting or correcting multi-bit errors in computer memory systems
TWI716918B (zh) 電子裝置、記憶體裝置及其記憶資料的讀取方法
US20120290895A1 (en) Controller for detecting and correcting an error without a buffer, and method for operating same
JP2014086924A (ja) エラー検出装置及びエラー検出方法
KR20140028914A (ko) 압축병렬테스트방법을 제공하는 반도체메모리장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191209

Address after: Rika Univ.

Patentee after: Daoling Technology Co., Ltd

Address before: Hsinchu Science Industrial Park, Taiwan, China

Patentee before: MediaTek.Inc