CN109426440A - 挥发性储存器的数据保存系统及方法 - Google Patents
挥发性储存器的数据保存系统及方法 Download PDFInfo
- Publication number
- CN109426440A CN109426440A CN201711143939.3A CN201711143939A CN109426440A CN 109426440 A CN109426440 A CN 109426440A CN 201711143939 A CN201711143939 A CN 201711143939A CN 109426440 A CN109426440 A CN 109426440A
- Authority
- CN
- China
- Prior art keywords
- line
- byte
- data
- byte line
- nybble
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/1048—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 using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- 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/1004—Adding 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
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2015—Redundant power supplies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- 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/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2253—Address circuits or decoders
- G11C11/2257—Word-line or row circuits
-
- 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/406—Management or control of the refreshing or charge-regeneration cycles
-
- 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/408—Address circuits
- G11C11/4085—Word line control circuits, e.g. word line drivers, - boosters, - pull-up, - pull-down, - precharge
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/1202—Word line control
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/401—Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C2211/406—Refreshing of dynamic cells
- G11C2211/4065—Low level details of refresh operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种挥发性储存器的数据保存系统及方法,应用于挥发性储存器,其中挥发性储存器包含用以储存数据的多个字节线。数据保存系统包含存取单元,存取单元用以侦测第一字节线被频繁存取的锤效应指示是否发生,当侦测到锤效应指示发生时,存取单元将相邻于第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于第二字节线以及第三字节线当中的数据无法修复时,储存于第四字节线以及第五字节线的数据将被存取。本发明实施例通过提供一种数据保存系统及方法,可适时保存挥发性储存器中的数据,防范挥发性储存器中的数据受到可能发生的锤效应的影响而流失。
Description
技术领域
本发明涉及一种计算机系统及方法,尤其涉及一种用以挥发性储存器的数据保存系统及方法。
背景技术
反复地存取储存器当中的某一列将可能对储存器中的数据造成副作用,尤其是一种被称为锤效应的副作用,其也被称作列干扰。这种被称为锤效应的副作用的可能发生条件为,当储存器中的某一列在其所属的储存器单元被刷新之前被过于频繁地存取时,锤效应将可能发生于该列周围,而此种锤效应将使得该被频繁存取列的邻近列当中所储存的数据损坏。面对此种锤效应带来的问题,有几种可能的解决方法,例如,可以通过限制储存器中的各列在每个刷新循环中能够被存取的次数,或是增加储存器单元的刷新率,来尝试降低锤效应发生的机会,进而降低锤效应的影响。
然而,应用上述解决方案将延伸出其他的问题,因此,如何找出更佳的解决方案来解决锤效应的影响,乃为本领域的重要研究议题。
发明内容
本发明内容的一目的在于提供一种挥发性储存器的数据保存系统,借以改善挥发性储存器中的数据受到锤效应影响的问题。
本发明的一实施例是关于一种数据保存系统,应用于挥发性储存器,其中挥发性储存器包含用以储存数据的多个字节线。数据保存系统包含存取单元,存取单元是用以侦测第一字节线被频繁存取的锤效应指示是否发生,当侦测到锤效应指示发生于第一字节线时,存取单元将相邻于第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于第二字节线以及第三字节线当中的数据无法修复时,储存于第四字节线以及第五字节线的数据将被存取。
在一实施例中,存取单元是根据第一字节线被存取的累计次数判断锤效应指示是否发生,当累计次数超过预设阈值时,存取单元判断锤效应指示发生。
在另一实施例中,第四字节线以及第五字节线为未使用字节线。
在又一实施例中,第四字节线以及第五字节线为冗余字节线。
在再一实施例中,第四字节线以及第五字节线将被分别联结至对应第二字节线以及第三字节线的逻辑位置。
在一实施例中,当储存于第二字节线以及第三字节线当中的数据无法修复时,存取单元将分别根据储存于第四字节线以及第五字节线的数据覆写第二字节线以及第三字节线。
在另一实施例中,当第二字节线以及第三字节线被储存于第四字节线以及第五字节线的数据覆写时,存取单元用以清除第四字节线以及第五字节线中的数据。
在又一实施例中,当第四字节线以及第五字节线中的数据被清除时,第四字节线以及第五字节线与逻辑位置的联结关系也被清除。
在再一实施例中,第二字节线、第三字节线、第四字节线以及第五字节线皆属于挥发性储存器的第一刷新单元。
本发明的另一实施例是关于一种数据保存方法,应用于挥发性储存器,其中挥发性储存器包含用以储存数据的多个字节线。数据保存方法包含:通过存取单元侦测第一字节线被频繁存取的锤效应指示是否发生;以及当侦测到锤效应指示发生于第一字节线时,通过存取单元将相邻于第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于第二字节线以及第三字节线当中的数据无法修复时,储存于第四字节线以及第五字节线的数据将被存取。
在一实施例中,存取单元是根据第一字节线被存取的累计次数判断锤效应指示是否发生,当累计次数超过预设阈值时,存取单元判断锤效应指示发生。
在另一实施例中,第四字节线以及第五字节线为未使用字节线。
在又一实施例中,第四字节线以及第五字节线为冗余字节线。
在再一实施例中,数据保存方法还包含:通过存取单元将第四字节线以及第五字节线分别与对应第二字节线以及第三字节线的逻辑位置进行联结。
在一实施例中,数据保存方法还包含:当储存于第二字节线以及第三字节线当中的数据无法修复时,通过存取单元分别根据储存于第四字节线以及第五字节线的数据覆写第二字节线以及第三字节线。
在另一实施例中,数据保存方法还包含:当第二字节线以及第三字节线被储存于第四字节线以及第五字节线的数据覆写时,通过存取单元清除第四字节线以及第五字节线中的数据。
在又一实施例中,数据保存方法还包含:当第四字节线以及第五字节线中的数据被清除时,通过存取单元清除第四字节线以及第五字节线与逻辑位置的联结关系。
在再一实施例中,第二字节线、第三字节线、第四字节线以及第五字节线皆属于挥发性储存器的第一刷新单元。
因此,根据本发明的技术内容,本发明实施例通过提供一种数据保存系统及方法,可适时保存挥发性储存器中的数据,防范挥发性储存器中的数据受到可能发生的锤效应的影响而流失。
附图说明
图1为基于本发明一实施例绘示的挥发性储存器的数据保存系统的示意图;
图2为基于本发明图1的实施例绘示的挥发性储存器的数据保存系统的示意图;
图3为基于本发明图2的实施例绘示的挥发性储存器的数据保存系统的示意图;以及
图4为基于本发明一实施例绘示的挥发性储存器的数据保存方法的步骤流程图。
具体实施方式
以下将以附图及详细叙述清楚说明本发明的精神,任何所属技术领域中的技术人员在了解本发明的实施例后,当可由本发明所教示的技术,加以改变及修饰,其并不脱离本发明的精神与范围。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
关于本文中所使用的“耦接”或“连接”,均可指二个或多个元件或装置相互直接作实体接触,或是相互间接作实体接触,也可指二个或多个元件或装置相互操作或动作。
关于本文中所使用的用词(terms),除有特别注明外,通常具有每个用词使用在此领域中、在本发明的内容中与特殊内容中的平常意义。某些用以描述本发明的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本发明的描述上额外的引导。
图1为基于本发明一实施例绘示的挥发性储存器的数据保存系统的示意图。如图1所示,在一实施例中,绘示有储存器阵列100,此储存器阵列包含多个字节线100a~100i。其中,字节线100a~100b属于第一刷新单元R1,此第一刷新单元R1是用以根据第一周期来刷新其所属的字节线100a~100b当中储存的数据。其中,字节线100c~100i属于第二刷新单元R2,此第二刷新单元R2是用以根据第二周期来刷新其所属的字节线100c~100i当中储存的数据。在此实施例中,字节线100a~100e储存有数据而字节线100f~100i则是未使用(unused)字节线。
如图1所示,在本实施例中,还有控制器200通过读写模块300与储存器阵列100电性耦接,其中,控制器200可经由读写模块300存取字节线100a~100i当中所储存的数据。如图1所示,控制器200包含存取单元201以及储存有存取地图202。控制器200还包含错误修正码(Error Correcting Code,ECC)引擎203。存取地图202为一种地图索引信息,其内容是关于逻辑位置和实体位置之间的指向或连结关系。其中,储存器阵列100当中的字节线100a~100i各自具有一个专属的实体位置,而各个实体位置皆与一个逻辑位置存在联结关系,依据此种实体位置,控制器200可存取储存在特定字节线当中所储存的数据。当一个逻辑位置被输入至控制器200时,控制器200可依据存取地图202当中的索引信息指向对应此逻辑位置的实体位置,控制器200即可通过读写模块300来存取此实体位置所对应的字节线当中所储存的数据。另外,错误修正码引擎203是用以侦测并修复字节线100a~100i当中所储存的数据,当侦测到字节线100a~100i当中储存的数据损坏,错误修正码引擎203将尝试复原数据。
图2为基于本发明图1的实施例绘示的挥发性储存器的数据保存系统的示意图。在本实施例中,存取单元201是用以侦测锤效应指示是否发生,其中,锤效应指示是用以表示储存器阵列100中的一个字节线是否被频繁地存取。此种锤效应指示的发生,将会引发存取单元201将与该字节线相邻的两个字节线当中所储存的数据复制至另外的两个字节线中,尤其是复制至未使用(unused)的字节线。在一些实施例中,这些被作为数据复制目标的其他字节线,其邻近的字节线也是未使用的字节线。当存取单元201将一条字节线当中所储存的数据复制至另一条字节线时,该另一条字节线的实体位置将被作为备份地被联结至该条字节线所对应的逻辑位置,而此种联结关系将被储存至存取地图202当中。当此种联结关系成功建立后,用以索引该数据的逻辑位置将同时包含两个实体位置,分别对应到该条字节线以及该另一条字节线。亦即,当存取单元201将与该字节线相邻的两个字节线当中所储存的数据复制至另外的两个字节线后,与该字节线相邻的两个字节线即具备了数据备份。
承上,图2为基于本发明图1的实施例绘示的挥发性储存器的数据保存系统的示意图。在本实施例中,存取单元201是用以侦测锤效应指示是否发生于字节线100a~100i当中的任一个,其是通过计算字节线100a~100i累计被存取的次数。当其中有字节线被存取的次数超过预设阈值时,即代表锤效应发生于此字节线,而存取单元201将据此进行数据复制程序。在本实施例中,字节线100d为常被存取的字节线,其所储存的数据常在第一周期的单一区间内被频繁地存取,在此状况下,与其邻近的字节线100c以及字节线100e将很可能受到锤效应的影响。在本实施例中,存取单元201将持续地累计字节线100d被存取的次数,当字节线100d被存取的次数超过预设阈值时,存取单元201将把字节线100c当中所储存的数据复制到字节线100h,并把字节线100e当中所储存的数据复制到字节线100g。
在本实施例中,字节线100h的实体位置将被联结至对应字节线100c的逻辑位置,而字节线100g的实体位置将被联结至对应字节线100e的逻辑位置。如此一来,字节线100c的逻辑位置即同时指向字节线100c以及字节线100h,储存于字节线100h当中的数据为储存于字节线100c当中的数据的备份。同理地,字节线100e的逻辑位置即同时指向字节线100e以及字节线100g,储存于字节线100g当中的数据为储存于字节线100e当中的数据的备份。上述联结关系将被储存于存取地图202当中。承前所述,在数据被复制到字节线100g及字节线100h之前,字节线100g及字节线100h原先皆为未使用(unused)字节线。然而,应注意的是,本实施例的说明仅是用以解释而非用以限定本发明,用以储存该数据的并非仅限于本实施例中所述的字节线,储存器阵列100中的其他字节线也可以为本发明所实施的范围。
图3为基于本发明图2的实施例绘示的挥发性储存器的数据保存系统的示意图。如前述,错误修正码引擎203是用以侦测字节线100a~100i当中储存的数据是否损坏,当侦测到字节线100a~100i当中储存的数据损坏,错误修正码引擎203将尝试复原数据。应注意的是,错误修正码引擎203仅在数据损坏仍处于可以修复的情况时才能复原数据,若数据经历了无法修复的损坏时,错误修正码引擎203也无法成功地复原数据。然而,若是经历无法修复的损坏的数据具备备份时,本发明的系统则可利用这些数据的备份来复原数据。例如,如图3所示,当错误修正码引擎203侦测到字节线100c或字节线100e当中的数据经历无法修复的损坏时,本发明的存取单元201即可将字节线100h或字节线100g当中的数据分别用于覆写字节线100c或字节线100e。借此,即便被频繁地存取的字节线两侧的字节线中所储存的数据受到锤效应的影响,本发明的存取单元201仍可以利用储存于其他字节线的备份将数据复原。
在一些实施例中,在存取单元201利用备份数据覆写损坏的字节线后,备份数据将被清除,而储存备份数据的字节线的实体位置与对应该数据的逻辑位置之间的联结关系也将被清除。例如,在上述实施例中,当错误修正码引擎203侦测到字节线100c当中的数据经历无法修复的损坏时,存取单元201即可以字节线100h当中的数据用于覆写字节线100c,随后,存取单元201将字节线100h当中所储存的数据清除,并于存取地图202当中将字节线100h的实体位置和字节线100c对应的逻辑位置之间的联结关系清除。亦即,在字节线100h当中的备份数据被清除后,对应该数据的逻辑位置仅指向字节线100c的实体位置而已。同理地,当字节线100g当中所储存的数据被存取单元201清除后,在存取地图202中,字节线100g的实体位置与字节线100e之间的联结关系也将被清除。此种设定可以节省储存器阵列100的空间。
图4为基于本发明一实施例绘示的挥发性储存器的数据保存方法的步骤流程图。此方法可应用于如图1至图3的实施例的挥发性储存器。此方法的步骤将详述于下列段落中。
步骤S1:通过存取单元侦测第一字节线被频繁存取的锤效应指示是否发生。如图1至图3的实施例所示,存取单元201是用以监测储存器阵列100中的字节线100a~100i。在本实施例中,可根据计算字节线100a~100i被存取的次数来判断锤效应指示是否发生,当字节线100a~100i当中的任一条字节线被存取的累计次数超过预预设阈值时,存取单元201即判断锤效应指示发生于该条字节线。
步骤S2:当侦测到该锤效应指示发生时,通过该存取单元将相邻于该第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于该第二字节线以及该第三字节线当中的该数据无法修复时,储存于该第四字节线以及该第五字节线的该数据将被存取。如图1至图3的实施例所示,当存取单元201于字节线100d侦测到锤效应指示,存取单元201即将字节线100e及字节线100e当中储存的数据分别复制至字节线100h和字节线100g。字节线100h的实体位置将被联结至对应字节线100c的逻辑位置,字节线100e的实体位置将被联结至对应字节线100g的逻辑位置,而此联结关系将被储存于存取地图202当中。
在本实施例中,若错误修正码引擎203侦测到字节线100c发生数据损坏,其将尝试复原字节线100c中的数据,然而,若发生于字节线100c的数据损坏为无法修复的损坏时,错误修正码引擎203将无法成功复原字节线100c中的数据。当发生于字节线100c的数据损坏为无法修复的损坏时,存取单元201即可将字节线100h当中的数据用于覆写字节线100c,借此,即便被频繁地存取的字节线两侧的字节线受到锤效应的影响而发生无法修复的损坏时,本发明的存取单元201仍可以利用储存于其他字节线的备份将数据复原。如此一来,即可降低字节线100a~100i被锤效应影响的机率。
虽然本发明以实施例公开如上,然其并非用以限定本发明,任何本领域的一般技术人员,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保护范围当视权利要求所界定的为准。
Claims (18)
1.一种挥发性储存器的数据保存系统,应用于挥发性储存器,其中所述挥发性储存器包含用以储存数据的多个字节线,其特征在于,所述数据保存系统包含:
存取单元,用以侦测第一字节线被频繁存取的锤效应指示是否发生,当侦测到所述锤效应指示发生于所述第一字节线时,所述存取单元将相邻于所述第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于所述第二字节线以及所述第三字节线当中的所述数据无法修复时,储存于所述第四字节线以及所述第五字节线的所述数据将被存取。
2.如权利要求1所述的数据保存系统,其特征在于,所述存取单元是根据所述第一字节线被存取的累计次数判断所述锤效应指示是否发生,当所述累计次数超过预设阈值时,所述存取单元判断所述锤效应指示发生。
3.如权利要求1所述的数据保存系统,其特征在于,所述第四字节线以及所述第五字节线为未使用字节线。
4.如权利要求3所述的数据保存系统,其特征在于,所述第四字节线以及所述第五字节线为冗余字节线。
5.如权利要求1所述的数据保存系统,其特征在于,所述第四字节线以及所述第五字节线将被分别联结至对应所述第二字节线以及所述第三字节线的逻辑位置。
6.如权利要求5所述的数据保存系统,其特征在于,当储存于所述第二字节线以及所述第三字节线当中的所述数据无法修复时,所述存取单元将分别根据储存于所述第四字节线以及所述第五字节线的所述数据覆写所述第二字节线以及所述第三字节线。
7.如权利要求6所述的数据保存系统,其特征在于,当所述第二字节线以及所述第三字节线被储存于所述第四字节线以及所述第五字节线的所述数据覆写时,所述存取单元用以清除所述第四字节线以及所述第五字节线中的所述数据。
8.如权利要求7所述的数据保存系统,其特征在于,当所述第四字节线以及所述第五字节线中的所述数据被清除时,所述第四字节线以及所述第五字节线与所述逻辑位置的联结关系也被清除。
9.如权利要求1所述的数据保存系统,其特征在于,所述第二字节线、所述第三字节线、所述第四字节线以及所述第五字节线皆属于所述挥发性储存器的第一刷新单元。
10.一种挥发性储存器的数据保存方法,应用于挥发性储存器,其中所述挥发性储存器包含用以储存数据的多个字节线,其特征在于,所述数据保存方法包含:
通过存取单元侦测第一字节线被频繁存取的锤效应指示是否发生;以及
当侦测到所述锤效应指示发生于所述第一字节线时,通过所述存取单元将相邻于所述第一字节线的第二字节线以及第三字节线中储存的数据分别复制至第四字节线以及第五字节线,当储存于所述第二字节线以及所述第三字节线当中的所述数据无法修复时,储存于所述第四字节线以及所述第五字节线的所述数据将被存取。
11.如权利要求10所述的数据保存方法,其特征在于,所述存取单元是根据所述第一字节线被存取的累计次数判断所述锤效应指示是否发生,当所述累计次数超过预设阈值时,所述存取单元判断所述锤效应指示发生。
12.如权利要求10所述的数据保存方法,其特征在于,所述第四字节线以及所述第五字节线为未使用字节线。
13.如权利要求12所述的数据保存方法,其特征在于,所述第四字节线以及所述第五字节线为冗余字节线。
14.如权利要求10所述的数据保存方法,其特征在于,还包含:
通过所述存取单元将所述第四字节线以及所述第五字节线分别与对应所述第二字节线以及所述第三字节线的逻辑位置进行联结。
15.如权利要求14所述的数据保存方法,其特征在于,还包含:
当储存于所述第二字节线以及所述第三字节线当中的所述数据无法修复时,通过所述存取单元分别根据储存于所述第四字节线以及所述第五字节线的所述数据覆写所述第二字节线以及所述第三字节线。
16.如权利要求15所述的数据保存方法,其特征在于,还包含:
当所述第二字节线以及所述第三字节线被储存于所述第四字节线以及所述第五字节线的所述数据覆写时,通过所述存取单元清除所述第四字节线以及所述第五字节线中的所述数据。
17.如权利要求16所述的数据保存方法,其特征在于,还包含:
当所述第四字节线以及所述第五字节线中的所述数据被清除时,通过所述存取单元清除所述第四字节线以及所述第五字节线与所述逻辑位置的联结关系。
18.如权利要求10所述的数据保存方法,其特征在于,所述第二字节线、所述第三字节线、所述第四字节线以及所述第五字节线皆属于所述挥发性储存器的第一刷新单元。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/683,793 | 2017-08-23 | ||
US15/683,793 US10338831B2 (en) | 2017-08-23 | 2017-08-23 | System and method for preserving data in volatile memory |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109426440A true CN109426440A (zh) | 2019-03-05 |
Family
ID=64452976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711143939.3A Pending CN109426440A (zh) | 2017-08-23 | 2017-11-17 | 挥发性储存器的数据保存系统及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10338831B2 (zh) |
CN (1) | CN109426440A (zh) |
TW (1) | TWI635497B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11054995B2 (en) * | 2018-09-07 | 2021-07-06 | Micron Technology, Inc. | Row hammer protection for a memory device |
US10825534B2 (en) * | 2018-10-26 | 2020-11-03 | Intel Corporation | Per row activation count values embedded in storage cell array storage cells |
US11567880B2 (en) * | 2020-08-12 | 2023-01-31 | Microsoft Technology Licensing, Llc | Prevention of RAM access pattern attacks via selective data movement |
US20210365316A1 (en) * | 2021-06-04 | 2021-11-25 | Intel Corporation | Memory chip with per row activation count having error correction code protection |
US11948656B1 (en) * | 2022-09-21 | 2024-04-02 | Micron Technology, Inc. | Counter management for memory systems |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101494085A (zh) * | 2008-01-22 | 2009-07-29 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
US20110170365A1 (en) * | 2008-05-22 | 2011-07-14 | Micron Technology, Inc. | Row addressing |
US20130326162A1 (en) * | 2012-06-04 | 2013-12-05 | SK Hynix Inc. | Semiconductor device and operating method thereof |
CN103456352A (zh) * | 2012-06-04 | 2013-12-18 | 爱思开海力士有限公司 | 半导体器件及其操作方法 |
US20150089183A1 (en) * | 2013-09-26 | 2015-03-26 | Kuljit S. Bains | Mapping a physical address differently to different memory devices in a group |
CN105304138A (zh) * | 2014-07-21 | 2016-02-03 | 爱思开海力士有限公司 | 存储器件 |
CN105321550A (zh) * | 2014-07-22 | 2016-02-10 | 爱思开海力士有限公司 | 存储器件 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8938573B2 (en) * | 2012-06-30 | 2015-01-20 | Intel Corporation | Row hammer condition monitoring |
US9117544B2 (en) * | 2012-06-30 | 2015-08-25 | Intel Corporation | Row hammer refresh command |
US9030903B2 (en) * | 2012-09-24 | 2015-05-12 | Intel Corporation | Method, apparatus and system for providing a memory refresh |
US20140085995A1 (en) | 2012-09-25 | 2014-03-27 | Zvika Greenfield | Method, apparatus and system for determining a count of accesses to a row of memory |
TWI544486B (zh) | 2014-08-08 | 2016-08-01 | 華邦電子股份有限公司 | 記憶體的存取方法 |
US9741421B1 (en) * | 2016-04-05 | 2017-08-22 | Micron Technology, Inc. | Refresh circuitry |
-
2017
- 2017-08-23 US US15/683,793 patent/US10338831B2/en active Active
- 2017-11-01 TW TW106137811A patent/TWI635497B/zh active
- 2017-11-17 CN CN201711143939.3A patent/CN109426440A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101494085A (zh) * | 2008-01-22 | 2009-07-29 | 群联电子股份有限公司 | 防止非易失性存储器发生读取干扰的方法及其控制器 |
US20110170365A1 (en) * | 2008-05-22 | 2011-07-14 | Micron Technology, Inc. | Row addressing |
US20130326162A1 (en) * | 2012-06-04 | 2013-12-05 | SK Hynix Inc. | Semiconductor device and operating method thereof |
CN103456352A (zh) * | 2012-06-04 | 2013-12-18 | 爱思开海力士有限公司 | 半导体器件及其操作方法 |
US20150089183A1 (en) * | 2013-09-26 | 2015-03-26 | Kuljit S. Bains | Mapping a physical address differently to different memory devices in a group |
CN105304138A (zh) * | 2014-07-21 | 2016-02-03 | 爱思开海力士有限公司 | 存储器件 |
CN105321550A (zh) * | 2014-07-22 | 2016-02-10 | 爱思开海力士有限公司 | 存储器件 |
Also Published As
Publication number | Publication date |
---|---|
US20190065079A1 (en) | 2019-02-28 |
US10338831B2 (en) | 2019-07-02 |
TWI635497B (zh) | 2018-09-11 |
TW201913679A (zh) | 2019-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109426440A (zh) | 挥发性储存器的数据保存系统及方法 | |
CN104346241B (zh) | 断写缓解 | |
US8719621B1 (en) | Solid-state disk cache assisted redundant array of independent disks | |
CN102890657B (zh) | 一种减少eeprom的数据读写出错的方法 | |
US9690642B2 (en) | Salvaging event trace information in power loss interruption scenarios | |
TWI490876B (zh) | 系統啟動引導處理方法及裝置 | |
CN103914407B (zh) | 一种sd卡掉电保护、恢复方法以及带有掉电保护的sd卡 | |
CN101379566B (zh) | 用于修复高速缓存阵列中单元的装置、系统和方法 | |
CN103150125B (zh) | 提高掉电保护数据缓冲存储器使用寿命的方法及智能卡 | |
CN108062259A (zh) | Mcu内部数据存储ecc处理系统及其处理方法 | |
CN105892950A (zh) | 一种磁盘阵列的重建方法及系统 | |
US10643668B1 (en) | Power loss data block marking | |
CN106708665A (zh) | 一种元数据修复方法和装置 | |
CN111176890B (zh) | 一种星载软件数据存储及异常恢复方法 | |
CN1831786A (zh) | 闪速存储器数据完整性保护方法 | |
CN103631721A (zh) | 一种隔离内存中坏块的方法及系统 | |
CN103049354B (zh) | 数据修复方法、数据修复装置以及存储系统 | |
CN110399247A (zh) | 一种数据恢复方法、装置、设备及计算机可读存储介质 | |
CN103984506A (zh) | 闪存存储设备数据写的方法和系统 | |
CN109408258A (zh) | 挥发性储存器的数据保存系统及方法 | |
CN102376362B (zh) | 应用于快闪存储器的方法与相关的控制器 | |
CN111459708A (zh) | 坏块处理方法及装置 | |
CN107402843A (zh) | 数据库损坏的恢复方法、装置和设备 | |
TWI744049B (zh) | 記憶體控制器與資料處理方法 | |
CN103279402A (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 |