CN1983424A - 错误校正装置及校正方法 - Google Patents
错误校正装置及校正方法 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1044—Adding 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1018—Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
- G11C7/1027—Static 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所述的校正方法,其特征在于,所述逻辑运算为互斥或运算。
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)
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)
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)
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 |
-
2005
- 2005-12-12 US US11/299,537 patent/US7802169B2/en active Active
-
2006
- 2006-11-07 TW TW095141150A patent/TWI349938B/zh active
- 2006-11-16 CN CN2006101467172A patent/CN1983424B/zh active Active
Cited By (4)
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 |