CN110134322B - 运用dram的储存装置及其相关数据处理方法 - Google Patents

运用dram的储存装置及其相关数据处理方法 Download PDF

Info

Publication number
CN110134322B
CN110134322B CN201810106147.7A CN201810106147A CN110134322B CN 110134322 B CN110134322 B CN 110134322B CN 201810106147 A CN201810106147 A CN 201810106147A CN 110134322 B CN110134322 B CN 110134322B
Authority
CN
China
Prior art keywords
data
host
control circuit
access area
host access
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810106147.7A
Other languages
English (en)
Other versions
CN110134322A (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.)
Jianxing Storage Technology Guangzhou Co Ltd
Original Assignee
Jianxing Storage Technology Guangzhou 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 Jianxing Storage Technology Guangzhou Co ltd filed Critical Jianxing Storage Technology Guangzhou Co ltd
Priority to CN201810106147.7A priority Critical patent/CN110134322B/zh
Priority to US15/925,816 priority patent/US20190243580A1/en
Publication of CN110134322A publication Critical patent/CN110134322A/zh
Priority to US16/682,330 priority patent/US11023316B2/en
Application granted granted Critical
Publication of CN110134322B publication Critical patent/CN110134322B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/702Masking faults in memories by using spares or by reconfiguring by replacing auxiliary circuits, e.g. spare voltage generators, decoders or sense amplifiers, to be used instead of defective ones

Abstract

本发明公开了一种运用DRAM的储存装置,包括:一DRAM以及一控制电路。控制电路连接至DRAM。DRAM包括一缓冲区与一主机存取区,主机存取区储存一数据。每经过一预定时间周期,控制电路由主机存取区拷贝一部分的数据至缓冲区。当该部分的数据成功拷贝至缓冲区时,控制电路确认主机存取区中该部分的数据是正确的。

Description

运用DRAM的储存装置及其相关数据处理方法
技术领域
本发明是有关于一种储存装置及其相关数据处理方法,且特别是有关于一种运用DRAM的储存装置及其相关数据处理方法。
背景技术
众所周知,固态储存装置(solid state device,简称SSD)已经非常广泛的应用于各种电子产品,例如SD卡、固态硬盘等等。
请参照图1,其所绘示为现有固态储存装置示意图。在电脑系统180中,固态储存装置100经由一外部总线110连接至主机(host)150,其中外部总线110可为USB总线、SATA总线、PCIe总线、M.2总线或者U.2总线等等。
再者,固态储存装置100包括:控制电路10、缓冲器(buffer)30以及非挥发性记忆体(non-volatile memory)20。其中,控制电路10连接至非挥发性记忆体20与缓冲器30,且缓冲器30是动态随机存取记忆体(DRAM)。
于固态储存装置100正常运作时,控制电路10可根据主机150所发出的指令来运作。举例来说,当主机150发出写入指令时,控制电路10接收主机150的写入数据,并将写入数据暂存于缓冲器30中。之后,控制电路10会在适当的时机将暂存于缓冲器30的写入数据进行ECC编码,并将ECC编码后的写入数据存入非挥发性记忆体20。
或者,当主机150发出的读取指令时,控制电路10由非挥发性记忆体20中取得读取数据并进行ECC解码后,暂存于缓冲器30并将读取数据传递至主机150。
基本上,主机150的写入数据皆储存于非挥发性记忆体20内。而固态储存装置100中的缓冲器30仅是控制电路10用来暂时储存数据的元件。也就是说,主机150仅可以存取(access)非挥发性记忆体20中的数据,但无法直接存取缓冲器30中的数据。
众所周知,非挥发性记忆体20在写入以及抹除动作时的效率低落,导致数据的写入时间较长。使得固态储存装置100的效能无法有效地提升。
发明内容
本发明有关于一种运用DRAM的储存装置,该运用DRAM的储存装置包括:一DRAM,其中该DRAM中包括一缓冲区与一主机存取区,主机存取区储存一数据;以及一控制电路,连接至该DRAM;其中,每经过一预定时间周期,该控制电路由该主机存取区拷贝一部分的数据至该缓冲区,当该部分的数据成功拷贝至该缓冲区时,该控制电路确认该主机存取区中该部分的数据正确。
本发明有关于一种运用DRAM的储存装置的数据处理方法,该运用DRAM的储存装置包括:一控制电路与一DRAM,其中该DRAM中包括一缓冲区与一主机存取区,且该主机存取区中储存一数据,该数据处理方法包括下列步骤:(a)经过一预定时间周期后,由该主机存取区拷贝一部分的数据至该缓冲区;(b)当该部分的数据成功拷贝至该缓冲区时,确认该主机存取区中该部分的数据正确;(c)当该部分的数据未成功拷贝至该缓冲区时,对该部分的该数据中出现错误位的数据进行一错误校正动作;(d)当该错误校正动作成功时,将更正后的数据再次写入该主机存取区;以及(e)当该错误校正动作不成功时,标记该主机存取区内该部分的数据中出现错误位的数据的储存位置。
为了对本发明的上述及其他方面有更佳的了解,下文特举实施例,并配合所附图式详细说明如下。
附图说明
图1为现有固态储存装置示意图。
图2为本发明运用DRAM的储存装置的示意图。
图3为本发明数据处理方法的流程图。
其中,附图标记:
10、210:控制电路
20、220:非挥发性记忆体
30:缓冲器
100:固态储存装置
110:外部总线
150:主机
160:备用电源
180、280:电脑系统
200:运用DRAM的储存装置
230:DRAM
212:缓冲区
214:主机存取区
具体实施方式
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
为了要改善现有储存装置的效能问题,本发明提出一种运用DRAM的储存装置及其相关数据处理方法。
请参照图2,其所绘示为运用DRAM的储存装置示意图。在电脑系统280中,运用DRAM的储存装置200经由一外部总线110连接至主机150,其中外部总线110可为USB总线、SATA总线、PCIe总线、M.2总线或者U.2总线等等。
再者,运用DRAM的储存装置200包括:控制电路210、DRAM 230以及非挥发性记忆体220。控制电路210连接至非挥发性记忆体220与DRAM 230。其中,DRAM 230中包括一缓冲区212与一主机存取区214,主机存取区214用以储存数据。
根据本发明的实施例,当主机150连接至运用DRAM的储存装置200时,主机150可检测出运用DRAM的储存装置200中包括二个可存取的区域(accessible regions),亦即非挥发记忆体220以及DRAM 230中的主机存取区214。也就是说,在电脑系统280中,主机150检测出运用DRAM的储存装置200中有二个储存元件(storage device),且主机110可以存取任意一个储存元件,对其进行数据的写入或读取。
举例来说,运用DRAM的储存装置200中,非挥发性记忆体220的容量为256G bytes,DRAM 230的容量为2G bytes。而DRAM 230中包括1.5G bytes的主机存取区214以及0.5Gbytes的缓冲区212。
由于DRAM 230的存取速度较快,因此主机150可将需要高速存取或频繁存取的写入数据储存于主机存取区214,并将其他的写入数据储存于非挥发性记忆体220。如此将可有效地提升运用DRAM的储存装置200的总体效能。然而主机存取区214储存的数据并不限于主机150所发出的写入数据,亦可储存其他的数据,如控制电路210将数据写入非挥发性记忆体220所需的表单,本发明不以此为限。
当主机150发出写入指令将写入数据储存于运用DRAM的储存装置200时,控制电路210可根据主机150所发出的指令来运作。
举例来说,当主机150发出写入指令将写入数据储存于非挥发性记忆体220时,控制电路210接收主机150的写入数据,并将写入数据暂存于缓冲区212中。之后,控制电路210会在适当的时机对暂存于缓冲区212的写入数据进行ECC编码,将ECC编码后的写入数据存入非挥发性记忆体220。
当主机150发出写入指令将写入数据储存于主机存取区214时,控制电路210接收主机150的写入数据,并对写入数据进行记忆体保护ECC(memory protection ECC,简称MPECC)编码后即储存于主机存取区214。其中MPECC编码及将写入数据储存非挥发性记忆体220所进行的ECC编码,两个编码方式不同。
当主机150发出读取指令以读取非挥发性记忆体220中的数据时,控制电路210由非挥发性记忆体220中取得读取数据并进行ECC解码后,将ECC解码后的读取数据暂存于缓冲区212中并传递至主机150。
另外,当主机150发出读取指令以读取主机存取区214中的数据时,控制电路210由主机存取区214中取得读取数据并进行MPECC解码后,即将读取数据传递至主机150。
同理,DRAM 230中的缓冲区212仅是控制电路210用来暂时储存数据的区域。也就是说,主机150无法直接存取DRAM 230中缓冲区212内的数据。
众所周知,DRAM 230在停止供电时,DRAM 230中所有的储存数据将会消失。因此,当电脑系统280进行正常关机时,主机150会发出关机指令(power off command)至运用DRAM的储存装置200。当控制电路210接收到关机指令时,控制电路210会将DRAM 230的主机存取区214中的写入数据转存于非挥发性记忆体220中,以避免数据消失,其中主机存取区214的数据会先经过MPECC解码,再经过ECC编码后存入至非挥发性记忆体220。于确认运用DRAM的储存装置200的写入数据已成功转存后,电脑系统280才可以关机。
此外,当电脑系统280发生突然断电时,由于运用DRAM的储存装置200具有一备用电源160,备用电源160开始供电使运用DRAM的储存装置200能够正常运作,此时控制电路210将DRAM 230的主机存取区214中的写入数据转存于非挥发性记忆体220中,因此即使电脑系统280突然断电,主机存取区214的数据也不会消失。其中备用电源160可以为一大容量的电容(例如超级电容)或一电池,在此不作限制。
当电脑系统280再次开机时,控制电路210会将关机之前储存于非挥发性记忆体220中的主机存取区214的写入数据读出,并进行ECC解码,将ECC解码后的数据经过MPECC编码后载入主机存取区214。当载入完成后,运用DRAM的储存装置200即可正常运作,主机150即可任意存取非挥发性记忆体220或者主机存取区214中的数据。此外,非挥发性记忆体220中会设定一区域,仅供储存主机存取区214的数据,当电脑系统280关机时,主机存取区214的数据将全部储存至该区域,当电脑系统280开机时,该区域的数据将回存至主机存取区214。
然而,在电脑系统280开机的状况下,主机150有可能长时间未存取主机存取区214中的写入数据。由于没有适当的方法来判断储存于主机存取区214中的写入数据的状况,因此,如果写入数据有遗失或者错误,则会对运用DRAM的储存装置200造成重大的影响。
举例来说,主机150将写入数据储存至主机存取区214后,将写入数据持续放置1年以上而未再进行任何存取。当电脑系统280进行关机时,控制电路210会将主机存取区214中的写入数据转存于非挥发性记忆体220中。
然而,如果控制电路210在写入数据转存的过程中才发现主机存取区214中的写入数据有错误位(error bit)时,则控制电路210会耗费相当长的时间进行写入数据的错误校正,将校正后的数据写入至非挥发性记忆体220。此时,有可能造成写入数据来不及转存至非挥发性记忆体220的情况发生。因此,一旦电脑系统280关机后,主机存取区214中尚未转存完成的写入数据将遗失而没有办法再回复。
而当电脑系统280再次开机时,由于关机前主机存取区214中部分的写入数据已经遗失,则会造成电脑系统280无法正常运作。
因此,为了确保DRAM 230的主机存取区214内数据的正确性,本发明提出一种数据处理方法。
请参照图3,其所绘示为本发明数据处理方法的流程图。当运用DRAM的储存装置200在正常运作时,控制电路210会进行时间的计数,每经过一段预定时间周期(步骤S310),控制电路210对主机存取区214进行一次数据确认动作。举例来说,预定时间可为1分钟。
当经过该预定时间时(步骤S310),控制电路210由DRAM 230的主机存取区214中拷贝(copy)一部分的写入数据至缓冲区212。
如果控制电路210可成功拷贝时(步骤S314),则确认主机存取区214中该部分的写入数据正确。因此,控制电路210回到步骤S310,继续等到下一个预定时间周期后,继续进行另一部分写入数据的数据确认动作。
反之,如果控制电路210无法成功拷贝时(步骤S314),则代表主机存取区214中该部分的写入数据中有错误位。此时,控制电路210需要对主机存取区214中该部分的写入数据进行错误校正(error correction)(步骤S316)。
再者,如果控制电路210可成功校正时(步骤S318),代表错误位已经被更正,而控制电路210即在主机存取区214中再次写入(rewrite)该部分写入数据(步骤S320),以确保该部分写入数据正确性。之后,控制电路210回到步骤S310,等到下一个预定时间周期后,继续进行下一次的数据确认动作。
反之,如果控制电路210无法成功校正时(步骤S318),代表该部分写入数据中的错误位过多,已经无法回复。因此,控制电路210标记(mark)该部分写入数据的储存位置(步骤S322),标记的储存位置表示为有问题的数据。之后,控制电路210回到步骤S310,等到下一个预定时间周期后,继续进行下一次的数据确认动作。在上述数据处理方法中是以主机存取区214所储存主机150发出的写入数据为例,然亦可针对主机存取区214中与主机150发出的写入数据无关的其他数据做数据确认的动作。以下以一个例子来说明本发明的数据处理方法。
假设主机存取区214的数据以一特定容量设定为一部分数据且该部分数据进一步被划分为多个单位数据。例如,主机存取区214以128k bytes设定为一部分数据,并将一部分数据以512bytes为一单位划分为多个单位数据,此时是将一部分数据划分为256个单位数据。
当运用DRAM的储存装置200在正常运作时,控制电路210会在每1分钟的时间周期对一个部分(128k bytes)的写入数据进行一次数据确认动作。
在进行数据确认动作时,控制电路210执行一直接记忆体存取拷贝功能(directmemory access copy function,简称DMAC function),将主机存取区214中的第一部分(128k bytes)的写入数据拷贝至缓冲区212。
如果该第一部分(128k bytes)的写入数据可以成功地被拷贝至缓冲区212时,控制电路210确认主机存取区214中该第一部分的写入数据正确。因此,在下一个1分钟的时间周期后,控制电路210对第二部分(128k bytes)的写入数据进行一次数据确认动作。如此类推,控制电路210可以依序对第三部分(128k bytes)写入数据、第四部分(128k bytes)写入数据…等等进行数据确认动作。
当然,如果该第一部分的写入数据无法完全成功地被拷贝至缓冲区212时,控制电路210确认主机存取区214中该第一部分的写入数据出现错误位。因此,控制电路210对该第一部分的写入数据中出现错误位的单位数据进行错误校正动作。
再者,如果控制电路210可成功校正时(步骤S318),代表该第一部分写入数据中该单位数据的错误位已经被更正。此时,控制电路210即将更正后的该单位的写入数据再次写入该主机存取区214中。如此,可以确保该第一部分中出现错误位的单位数据的正确性。之后,控制电路210在下一个1分钟的时间周期后,以该出现错误位的单位数据后续的256个单位数据做为第二部分写入数据,对第二部分写入数据的数据确认动作。并依此类推。
反之,如果控制电路210无法成功校正时(步骤S318),代表该第一部分写入数据中该单位数据的错误位过多,已经无法回复。因此,控制电路210标记该第一部分写入数据中该单位数据的储存位置,表示为有问题的数据。之后,控制电路210在下一个1分钟的时间周期后,继续进行第二部分写入数据的数据确认动作。并依此类推。
由以上的说明可知,本发明提出一种运用DRAM的储存装置及其相关数据处理方法。于运用DRAM的储存装置200的正常运作的过程,控制电路210会持续地对主机存取区214进行数据确认动作,因此可以确保DRAM 230中主机存取区214中数据的正确性。
当电脑系统280进行关机时,由于已经持续确保主机存取区214中数据的正确性,控制电路210即可将主机存取区214中的写入数据转存于非挥发性记忆体220中,在转存的过程中,有被标记的有问题数据也会一并转存至非挥发性记忆体220中。
综上所述,虽然本发明已以实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的申请专利范围所界定者为准。

Claims (10)

1.一种运用DRAM的储存装置,该储存装置连接至一主机,其特征在于,该运用DRAM的储存装置包括:
一非挥发性记忆体;
一DRAM,其中该DRAM中包括一缓冲区与一主机存取区,该主机存取区中储存一数据;以及
一控制电路,连接至该DRAM;
其中,当该主机发出一写入指令将一写入数据储存于该非挥发性记忆体时,该控制电路接收该主机的该写入数据,并将该写入数据暂存于该缓冲区中,该控制电路对暂存于该缓冲区的该写入数据进行一ECC编码,将ECC编码后的写入数据存入该非挥发性记忆体;
其中,当该主机发出该写入指令将该写入数据储存于该主机存取区时,该控制电路接收该主机的该写入数据,并对该写入数据进行一记忆体保护ECC编码,将记忆体保护ECC编码后的写入数据储存于该主机存取区;其中该ECC编码及该记忆体保护ECC编码,两个编码方式不同;
其中,每经过一预定时间周期,该控制电路由该主机存取区拷贝一部分的数据至该缓冲区,当该部分的数据成功拷贝至该缓冲区时,该控制电路确认该主机存取区中该部分的数据正确。
2.如权利要求1所述的运用DRAM的储存装置,其特征在于,当该部分的数据无法成功拷贝至该缓冲区时,该控制电路对该部分的数据中出现错误位的数据进行一错误校正动作。
3.如权利要求2所述的运用DRAM的储存装置,其特征在于,当该错误校正动作成功时,该控制电路将更正后的数据再次写入该主机存取区。
4.如权利要求2所述的运用DRAM的储存装置,其特征在于,当该错误校正动作不成功时,该控制电路标记该主机存取区内该部分的数据中出现错误位的数据的储存位置。
5.如权利要求1所述的运用DRAM的储存装置,其特征在于,该控制电路执行一直接记忆体存取拷贝功能,并由该主机存取区拷贝该部分的数据至该缓冲区。
6.如权利要求1所述的运用DRAM的储存装置,其特征在于,还包括一备用电源,该备用电源为一大容量的电容或一电池。
7.如权利要求1所述的运用DRAM的储存装置,其特征在于,当该控制电路接收到该主机发出的一关机指令时,该控制电路将该DRAM的主机存取区中的数据转存于该非挥发性记忆体中,其中该主机存取区的数据先经过该记忆体保护ECC解码,再经过该ECC编码后存入至该非挥发性记忆体。
8.如权利要求1所述的运用DRAM的储存装置,其特征在于,当该主机再次开机时,该控制电路将关机之前储存于该非挥发性记忆体中的主机存取区的数据读出,并进行一ECC解码,将ECC解码后的数据经过该记忆体保护ECC编码后载入该主机存取区。
9.一种运用DRAM的储存装置的数据处理方法,其特征在于,该运用DRAM的储存装置包括:一非挥发性记忆体,一控制电路与一DRAM,该储存装置连接至一主机,其中该DRAM中包括一缓冲区与一主机存取区,且该主机存取区中储存一数据,其中,当该主机发出一写入指令将一写入数据储存于该非挥发性记忆体时,该控制电路接收该主机的该写入数据,并将该写入数据暂存于该缓冲区中,该控制电路对暂存于该缓冲区的写入数据进行一ECC编码,将ECC编码后的写入数据存入该非挥发性记忆体;当该主机发出该写入指令将该写入数据储存于该主机存取区时,该控制电路接收该主机的写入数据,并对该写入数据进行一记忆体保护ECC编码,将记忆体保护ECC编码后的写入数据储存于该主机存取区;其中该ECC编码及该记忆体保护ECC编码,两个编码方式不同;该数据处理方法包括下列步骤:
每经过一预定时间周期后,该控制电路由该主机存取区拷贝一部分的数据至该缓冲区;
当该部分的数据成功拷贝至该缓冲区时,确认该主机存取区中该部分的数据正确;
当该部分的数据未成功拷贝至该缓冲区时,对该部分的数据中出现错误位的数据进行一错误校正动作;
当该错误校正动作成功时,将更正后的数据再次写入该主机存取区;以及
当该错误校正动作不成功时,该控制电路标记该主机存取区内该部分的数据中出现错误位的数据的储存位置。
10.如权利要求9所述的数据处理方法,其特征在于,该拷贝步骤包括执行一直接记忆体存取拷贝功能,由该主机存取区拷贝该部分的数据至该缓冲区。
CN201810106147.7A 2018-02-02 2018-02-02 运用dram的储存装置及其相关数据处理方法 Active CN110134322B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810106147.7A CN110134322B (zh) 2018-02-02 2018-02-02 运用dram的储存装置及其相关数据处理方法
US15/925,816 US20190243580A1 (en) 2018-02-02 2018-03-20 Dram-based storage device and associated data processing method
US16/682,330 US11023316B2 (en) 2018-02-02 2019-11-13 DRAM-based storage device and associated data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810106147.7A CN110134322B (zh) 2018-02-02 2018-02-02 运用dram的储存装置及其相关数据处理方法

Publications (2)

Publication Number Publication Date
CN110134322A CN110134322A (zh) 2019-08-16
CN110134322B true CN110134322B (zh) 2022-05-31

Family

ID=67476744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810106147.7A Active CN110134322B (zh) 2018-02-02 2018-02-02 运用dram的储存装置及其相关数据处理方法

Country Status (2)

Country Link
US (1) US20190243580A1 (zh)
CN (1) CN110134322B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816223A (zh) * 2021-01-27 2022-07-29 建兴储存科技股份有限公司 运用于固态存储装置的相关控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202109A (zh) * 2006-10-19 2008-06-18 三星电子株式会社 非易失性存储系统和相关编程方法
CN101226774A (zh) * 2008-02-15 2008-07-23 祥硕科技股份有限公司 降低闪存装置使用拷贝回去指令时的数据错误的方法
CN101303670A (zh) * 2007-05-11 2008-11-12 群联电子股份有限公司 储存装置及其控制方法
US20090055713A1 (en) * 2007-08-21 2009-02-26 Samsung Electronics Co., Ltd. Ecc control circuits, multi-channel memory systems including the same, and related methods of operation
TW200928737A (en) * 2007-11-21 2009-07-01 Micron Technology Inc Fault-tolerant non-volatile integrated circuit memory
US20110283166A1 (en) * 2010-05-14 2011-11-17 Samsung Electronics Co., Ltd Storage device having a non-volatile memory device and copy-back method thereof
TW201640855A (zh) * 2015-02-13 2016-11-16 三星電子股份有限公司 具記憶體分割之相鄰混合自動重覆要求(harq)記憶體的方法和系統

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US213853A (en) * 1879-04-01 Improvement in apparatus for destroying offensive odors
FR3015103B1 (fr) * 2013-12-12 2017-05-26 Commissariat Energie Atomique Systeme d'ecriture de donnees dans une memoire
US9305618B2 (en) * 2014-01-30 2016-04-05 International Business Machines Corporation Implementing simultaneous read and write operations utilizing dual port DRAM
US9904609B2 (en) * 2015-11-04 2018-02-27 Toshiba Memory Corporation Memory controller and memory device
TWI628543B (zh) * 2017-09-07 2018-07-01 群聯電子股份有限公司 解碼方法、記憶體儲存裝置及記憶體控制電路單元

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202109A (zh) * 2006-10-19 2008-06-18 三星电子株式会社 非易失性存储系统和相关编程方法
CN101303670A (zh) * 2007-05-11 2008-11-12 群联电子股份有限公司 储存装置及其控制方法
US20090055713A1 (en) * 2007-08-21 2009-02-26 Samsung Electronics Co., Ltd. Ecc control circuits, multi-channel memory systems including the same, and related methods of operation
TW200928737A (en) * 2007-11-21 2009-07-01 Micron Technology Inc Fault-tolerant non-volatile integrated circuit memory
CN101226774A (zh) * 2008-02-15 2008-07-23 祥硕科技股份有限公司 降低闪存装置使用拷贝回去指令时的数据错误的方法
US20110283166A1 (en) * 2010-05-14 2011-11-17 Samsung Electronics Co., Ltd Storage device having a non-volatile memory device and copy-back method thereof
TW201640855A (zh) * 2015-02-13 2016-11-16 三星電子股份有限公司 具記憶體分割之相鄰混合自動重覆要求(harq)記憶體的方法和系統

Also Published As

Publication number Publication date
CN110134322A (zh) 2019-08-16
US20190243580A1 (en) 2019-08-08

Similar Documents

Publication Publication Date Title
CN108733510B (zh) 数据储存装置及映射表重建方法
JP4524309B2 (ja) フラッシュメモリ用のメモリコントローラ
TWI662410B (zh) 資料儲存裝置與記憶體裝置之資料處理方法
KR102571747B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
TWI645404B (zh) 資料儲存裝置以及非揮發式記憶體操作方法
US20030093610A1 (en) Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
TW201916018A (zh) 資料儲存裝置與將資料寫入記憶體裝置之方法
WO2014164134A2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
US10467074B2 (en) Conditional journal for storage class memory devices
CN104699413A (zh) 数据管理方法、存储器存储装置及存储器控制电路单元
TW201508748A (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
JP2010079856A (ja) 記憶装置およびメモリ制御方法
JP4956230B2 (ja) メモリコントローラ
CN110134322B (zh) 运用dram的储存装置及其相关数据处理方法
CN110427279B (zh) 一种恢复写条带的Raid奇偶校验数据的方法及系统
CN113094307B (zh) 映射信息管理方法、存储器存储装置及存储器控制器
US10922025B2 (en) Nonvolatile memory bad row management
TWI738359B (zh) 資料儲存裝置與資料處理方法
TWI670598B (zh) 管理快閃記憶體模組的方法及相關的快閃記憶體控制器及電子裝置
TWI676105B (zh) 運用dram的儲存裝置及其相關資料處理方法
US11023316B2 (en) DRAM-based storage device and associated data processing method
US11928353B2 (en) Multi-page parity data storage in a memory device
CN209746537U (zh) 一种兼容nvdimm-p功能的nvdimm-n
US11893275B2 (en) DRAM-less SSD with recovery from HMB loss
US11809742B2 (en) Recovery from HMB loss

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200106

Address after: Room 302, factory a, No.8 Guangbao Road, Science City, Huangpu District, Guangzhou City, Guangdong Province

Applicant after: Jianxing storage technology (Guangzhou) Co., Ltd

Address before: 510663 No. 25 West spectral Road, Guangzhou hi tech Industrial Development Zone, Guangdong

Applicant before: Guangbao Electronics (Guangzhou) Co., Ltd.

Applicant before: Lite-On Technology Corporation

GR01 Patent grant
GR01 Patent grant