CN117666972B - 一种存储装置及其数据处理方法 - Google Patents
一种存储装置及其数据处理方法 Download PDFInfo
- Publication number
- CN117666972B CN117666972B CN202410137957.4A CN202410137957A CN117666972B CN 117666972 B CN117666972 B CN 117666972B CN 202410137957 A CN202410137957 A CN 202410137957A CN 117666972 B CN117666972 B CN 117666972B
- Authority
- CN
- China
- Prior art keywords
- time
- data
- storage
- storage device
- blocks
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000013500 data storage Methods 0.000 claims abstract description 41
- 230000015654 memory Effects 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims description 21
- 230000014759 maintenance of location Effects 0.000 claims description 8
- 230000001133 acceleration Effects 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/061—Improving I/O performance
-
- 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/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种存储装置及其数据处理方法,存储装置包括:闪存,用以保存主机写入的存储数据;主控制器,内部设有计时单元,用以在存储装置上电后进行计时处理,计时单元的计时时间记为运行时间,主控制器用以在存储装置首次上电时,接收主机写入的启动时间,在存储装置后续上电时,接收主机写入的当前时间;当主机向存储装置写入存储数据时,主控制器将存储数据和写入时间保存到区块中;当主机不向存储装置写入存储数据时,主控制器读取多个区块中的写入时间,将当前时间和写入时间的差值记为差值时间,比较差值时间与预设的数据保存阈值时间的大小,以对多个区块中的存储数据进行搬运处理。本发明可提升存储装置的使用性能和使用寿命。
Description
技术领域
本发明涉及静态存储技术领域,尤其涉及一种存储装置及其数据处理方法。
背景技术
存储芯片是嵌入式系统芯片的概念在存储行业的具体应用。无论是系统芯片还是存储芯片,都是通过在单一芯片中嵌入软件,以实现多功能、高性能以及对多种协议、多种硬件和不同应用的支持。存储芯片广泛应用于计算机、移动设备、物联网等领域,用于存储各种数据,如操作系统、应用程序、音乐、视频、照片等。
存储芯片的闪存中存储数据的稳定性受到数据保存时间的影响,目前存储芯片的故障率较高,会发生存储系统运行异常的情况。因此,存在待改进之处。
发明内容
本发明提供一种存储装置及其数据处理方法,以改善现有技术中存在存储芯片的闪存中存储数据的稳定性受到数据保存时间的影响严重的技术问题。
本发明提供的一种存储装置,包括:
闪存,包括多个区块,用以保存主机写入的存储数据;以及
主控制器,内部设有计时单元,用以在存储装置上电后进行计时处理,所述计时单元的计时时间记为运行时间,所述主控制器用以在所述存储装置首次上电时,接收所述主机写入的启动时间,在所述存储装置后续上电时,接收所述主机写入的当前时间;
其中,当所述主机向所述存储装置写入所述存储数据时,所述主控制器将所述存储数据和写入时间保存到区块中,所述写入时间表示为所述启动时间和所述运行时间的加和;
当所述主机不向所述存储装置写入所述存储数据时,所述主控制器读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的所述存储数据进行搬运处理。
在本发明的一个实施例中,所述主控制器用以在所述当前时间和所述写入时间的差值大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理;
所述主控制器用以在所述当前时间和所述写入时间的差值小于所述数据保存阈值时间时,不对多个区块中的所述存储数据进行搬运处理。
在本发明的一个实施例中,所述主控制器内部还设有温度传感器,用以在所述存储装置上电后进行温度的检测,所述主控制器将写入温度保存至所述写入时间对应的区块中,所述写入温度表示为所述写入时间时的检测温度。
在本发明的一个实施例中,所述区块包括存储数据区域和备用区域,所述存储数据区域用以保存所述存储数据,所述备用区域用以保存所述写入时间和所述写入温度。
在本发明的一个实施例中,所述数据保存阈值时间在不同检测温度下对应转化的加速因子满足:
,其中,/>为自然对数底数,/>为所述存储装置在写入温度时的激活能或活化能,/>为玻尔兹曼常数,/>为所述写入温度,/>为所述温度传感器在所述当前时间检测的当前温度,所述加速因子/>反映出所述存储装置在所述当前温度/>下,保持正常工作状态下对应所述数据保存阈值时间的大小。
在本发明的一个实施例中,对于所述当前时间和所述写入时间的差值大于等于所述数据保存阈值时间的多个区块,所述主控制器用以在多个所述区块中错误位数量大于等于预设的错误阈值数量时,对多个所述区块中的所述存储数据进行搬运处理;
所述主控制器用以在多个所述区块中错误位数量小于所述错误阈值数量时,对错误位数量最多的所述区块中的所述存储数据进行搬运处理。
本发明还提出一种存储装置的数据处理方法,包括:
保存主机写入的存储数据,并存储至闪存的多个区块中;
对存储装置上电后进行计时处理,计时时间记为运行时间;
在所述存储装置首次上电时,接收所述主机写入的启动时间,在所述存储装置后续上电时,接收所述主机写入的当前时间;
当所述主机向所述存储装置写入所述存储数据时,将所述存储数据和写入时间保存到区块中,所述写入时间表示为所述启动时间和所述运行时间的加和;以及
当所述主机不向所述存储装置写入所述存储数据时,读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的所述存储数据进行搬运处理。
在本发明的一个实施例中,所述将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的所述存储数据进行搬运处理的步骤,包括:
在所述差值时间大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理;
在所述差值时间小于所述数据保存阈值时间时,不对多个区块中的所述存储数据进行搬运处理。
在本发明的一个实施例中,所述在所述差值时间大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理的步骤,包括:
在多个所述区块中错误位数量大于等于预设的错误阈值数量时,对多个所述区块中的所述存储数据进行搬运处理;
在多个所述区块中错误位数量小于所述错误阈值数量时,对错误位数量最多的所述区块中的所述存储数据进行搬运处理。
在本发明的一个实施例中,所述当所述主机向所述存储装置写入所述存储数据时,将所述存储数据和写入时间保存到区块中的步骤中,包括:
当所述主机向所述存储装置写入所述存储数据时,对所述存储装置的温度进行检测,将所述存储数据、写入时间和写入温度保存到区块中,所述写入温度表示为所述写入时间时的检测温度。
本发明的有益效果:本发明提出的一种存储装置及其数据处理方法,本发明可对区块上的数据保存时间进行精准的确定,精准的实现了区块启动数据保存所引起的垃圾回收操作,提升存储装置的使用性能和使用寿命。
附图说明
图1为本发明一实施例提供的一种存储装置的结构示意图。
图2为本发明一实施例提供的存储装置中区块的结构示意图。
图3为本发明一实施例提供的一种存储装置的数据处理方法的步骤示意图。
图4是本发明一实施例提供的图3中步骤S520的步骤示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
请参阅图1至图4,本发明提出一种存储装置及其数据处理方法,可对eMMC(Embedded Multi Media Card,嵌入式多媒体卡)、SSD(Solid State Disk,固态硬盘)、UFS(Univeral Flash Storage,通用闪存存储器)等存储芯片的产品性能进行检测。本发明在可对存储装置中区块上的数据保存时间进行精准的确定,精准的实现了区块启动数据保存所引起的垃圾回收操作,可提升存储装置的使用性能和使用寿命。下面通过具体的实施例进行详细的描述。
请参阅图1,在本发明的一个实施例中,本发明提出一种存储装置20,可包括主控制器30、闪存40和缓存单元50。主控制器30也可称为主控,作为存储装置20的控制中心,负责控制闪存40上存储数据的识别和读写,主控制器30可完成存储装置20中涉及的所有控制指令操作和数据读写操作。在主机10给存储装置20上电后,主控制器30内部的计时单元310可进行计时处理,计时单元310的计时时间记为运行时间。缓存单元50是主控制器30使用的SRAM(Static Random Access Memory,静态随机存储器),数据暂时存储在缓存单元50中,以缓冲数据交换,并最终将数据写入至闪存40中。SRAM比DRAM(Dynamic Random AccessMemory,动态随机存储器)相对更快,因此SRAM用于高速缓存,而DRAM用于主存储器。SRAM的存储容量为1MB到16MB,而DRAM的存储容量为1GB至16GB。闪存40是数据存储的最终位置,从主控制器30处接收相应的数据并进行长期保存。闪存40的数量可至少为一个,闪存40用以存储主机10写入的存储数据。主机10可为个人计算机(pc,personal computer)、平板电脑(pad)、移动手机(cell phone)等通信设备。主控制器30和闪存40电性连接,以对闪存40中的区块44上的数据进行读、写、转移处理。
请参阅图1,在本发明的一个实施例中,闪存40可为封装好的NAND快闪存储器(package)。一个闪存40可包括独立的页寄存器(page register)43和高速缓存寄存器(cache register)44,以优化闪存40的访问速度。页寄存器43用以与闪存40阵列之间传输数据。高速缓存寄存器44用以与主机10之间传输数据。一个闪存40可包括多个区块41(block),区块41在写入数据(program)前需要进行擦除数据(erase)处理,区块41是擦除数据的最小单位。一个区块41可包括多个页(page)42,页42是写入数据的最小单位。
请参阅图1,在本发明的一个实施例中,在主机10对存储装置20首次上电时,主控制器30可接收主机10写入的启动时间,即启动时间表明存储装置20在第一次上电时对应的时间,且由主机10写入至主控制器30中。在存储装置20后续上电时,主控制器30可接收主机10写入的当前时间,当前时间表明存储装置20在后续上电时所对应的时间。当主机10向存储装置20写入存储数据时,主控制器30将存储数据和写入时间保存到区块41中,写入时间表示为启动时间和运行时间的加和。当主机10不向存储装置20写入存储数据时,主控制器30读取多个区块41中的写入时间,将当前时间和写入时间的差值记为差值时间。主控制器30比较差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块41中的存储数据进行搬运处理。搬运处理可为垃圾回收处理(GC,Garbage Clean),即将一个区块41中的存储数据搬到另外一个区块41中。
请参阅图1,在本发明的一个实施例中,数据保存阈值时间表示为多个区块41中存储数据保持正常的阈值时间,在差值时间大于等于预设的数据保存阈值时间,多个区块41中的存储数据会发生数据变化,存在错误位(Error Bit)情况。另外,由于数据保存阈值时间相关的时间比较长,常温下可能达到1~10年,而存储装置20的运行时间一般很短,例如几天就会断电。本发明可解决断电期间的时间无法被统计,导致闪存40中多个区块41上写入存储数据的写入时间无法确定的问题。因此,在差值时间大于等于数据保存阈值时间时,主控制器30用以对多个区块41中的存储数据进行搬运处理。在差值时间小于数据保存阈值时间时,主控制器30用以不对多个区块41中的存储数据进行搬运处理。
请参阅图1,在本发明的一个实施例中,主控制器30内部还设有温度传感器320,用以在存储装置20上电后进行温度的检测,主控制器30将写入温度保存至写入时间对应的区块41中,写入温度表示为写入时间时的检测温度。如图2所示,区块41包括存储数据区域和备用区域,存储数据区域用以保存存储数据,备用区域用以保存写入时间和写入温度。数据保存阈值时间在不同检测温度下对应转化的加速因子满足:
,其中,/>为自然对数底数,/>为存储装置20在写入温度时的激活能或活化能,半导体产品的激活能在0.3~1.2/>之间。/>为玻尔兹曼常数,其值为/> ,/>(开尔文)为热力学温度单位。/>为写入温度,例如可为40℃,转换为热力学温度/>可为273+40=313/>(开尔文)。/>为温度传感器320在当前时间检测的当前温度,例如可为125℃,转换为热力学温度/>可为273+125=398/>(开尔文)。加速因子/>反映出存储装置20在当前温度/>下,保持正常工作状态下对应数据保存阈值时间的大小。对于闪存40中的存储数据,当/>为1.06/>时,根据闪存产品的质量报告,在写入温度/>为40℃的数据保存阈值时间可为1年,即8760个小时,因此,基于上述转化的加速因子/>,可以得到其他温度下对应的数据保存阈值时间,如表1所示,由此可知,当前温度/>越高,即存储装置20在放入至高温环境中,存储数据保存的时间越短,超出数据保存阈值时间,存储数据会发生变化。
表1、不同温度下对应的数据保存阈值时间
请参阅图1,在本发明的一个实施例中,对于存储装置20内部包含温度传感器320的,可以通过温度传感器320获取存储装置20在当前时间对应的当前温度,并基于当前温度确认当前温度对应的数据保存阈值时间,从而可进一步的判别是否需要对多个区块41中的存储数据进行搬运处理。而对于不支持温度传感器70的存储装置20,可以根据工作温度的温度范围,从严设定数据保存阈值时间,但是这样可能造成垃圾回收提前触发,导致存储装置20性能的下降及产品寿命的降低。本申请为了解决该问题,对于当前时间/>和写入时间/>的差值(差值时间)大于等于数据保存阈值时间的多个区块41,在多个区块41中错误位数量大于等于预设的错误阈值数量时,主控制器30用以对多个区块41中的存储数据进行搬运处理。在多个区块41中错误位数量小于错误阈值数量时,主控制器30用以对错误位数量最多的区块41中的存储数据进行搬运处理。
请参阅图3,在本发明的一个实施例中,本发明可提出一种存储装置的数据处理方法,可包括如下的步骤。
步骤10、保存主机写入的存储数据,并存储至闪存的多个区块中。
步骤20、对存储装置上电后进行计时处理,计时时间记为运行时间。
步骤30、在存储装置首次上电时,接收主机写入的启动时间,在存储装置后续上电时,接收主机写入的当前时间。
步骤40、当主机向存储装置写入存储数据时,将存储数据和写入时间保存到区块中,写入时间表示为启动时间和运行时间的加和。
步骤50、当主机不向存储装置写入存储数据时,读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的存储数据进行搬运处理。
下面对上述的实施例进行详细的描述。
步骤10、保存主机写入的存储数据,并存储至闪存的多个区块中。
在本发明的一个实施例中,闪存40的数量可至少为一个,闪存40用以存储主机10写入的存储数据。主机10可为个人计算机(pc,personal computer)、平板电脑(pad)、移动手机(cell phone)等通信设备。
步骤20、对存储装置上电后进行计时处理,计时时间记为运行时间。
在本发明的一个实施例中,在主机10给存储装置20上电后,主控制器30内部的计时单元310可进行计时处理,计时单元310的计时时间记为运行时间。
步骤30、在存储装置首次上电时,接收主机写入的启动时间,在存储装置后续上电时,接收主机写入的当前时间。
在本发明的一个实施例中,在主机10对存储装置20首次上电时,主控制器30可接收主机10写入的启动时间,即启动时间表明存储装置20在第一次上电时对应的时间,且由主机10写入至主控制器30中。在存储装置20后续上电时,主控制器30可接收主机10写入的当前时间,当前时间表明存储装置20在后续上电时所对应的时间。
步骤40、当主机向存储装置写入存储数据时,将存储数据和写入时间保存到区块中,写入时间表示为启动时间和运行时间的加和。
在本发明的一个实施例中,当主机10向存储装置20写入存储数据时,主控制器30将存储数据和写入时间保存到区块41中,写入时间表示为启动时间和运行时间的加和。
步骤50、当主机不向存储装置写入存储数据时,读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的存储数据进行搬运处理。
在本发明的一个实施例中,当主机10不向存储装置20写入存储数据时,主控制器30读取多个区块41中的写入时间,将当前时间和写入时间的差值记为差值时间,比较差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块41中的存储数据进行搬运处理。搬运处理可为垃圾回收处理(GC,Garbage Clean),即将一个区块41中的存储数据搬到另外一个区块41中。
请参阅图3,在本发明的一个实施例中,步骤S50可包括步骤S510、步骤S520和步骤S530。其中,步骤S510可表示为读取多个区块41中的写入时间,判断差值时间是否大于等于数据保存阈值时间。在步骤S510中,在差值时间大于等于数据保存阈值时间,可进入步骤S520。步骤S520可表示为对多个区块41中的存储数据进行搬运处理。在步骤S510中,在差值时间小于数据保存阈值时间,可进入步骤S530。步骤S530可表示为不对多个区块41中的存储数据进行搬运处理。
请参阅图4,在本发明的一个实施例中,步骤S520可包括步骤S521、步骤S522、步骤S523和步骤S523。其中,步骤S521可表示为差值时间大于等于数据保存阈值时间时。步骤S522可表示为判断多个区块41中错误位数量是否大于等于预设的错误阈值数量。在步骤S522中,当多个区块41中错误位数量大于等于预设的错误阈值数量时,可进入步骤S523。步骤S523可表示为对多个区块41中的存储数据进行搬运处理。在步骤S522中,当多个区块41中错误位数量小于预设的错误阈值数量时,可进入步骤S524。步骤S524可表示为对错误位数量最多的区块41中的存储数据进行搬运处理。
综上所述,本发明提出一种存储装置及其数据处理方法,本发明可对区块上的数据保存时间进行精准的确定,精准的实现了区块启动数据保存所引起的垃圾回收操作,提升存储装置的使用性能和使用寿命。
附图中的流程图和框图,图示了按照本公开各种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (6)
1.一种存储装置,其特征在于,包括:
闪存,包括多个区块,用以保存主机写入的存储数据;以及
主控制器,内部设有计时单元,用以在存储装置上电后进行计时处理,所述计时单元的计时时间记为运行时间,所述主控制器用以在所述存储装置首次上电时,接收所述主机写入的启动时间,在所述存储装置后续上电时,接收所述主机写入的当前时间;
其中,当所述主机向所述存储装置写入所述存储数据时,所述主控制器将所述存储数据和写入时间保存到区块中,所述写入时间表示为所述启动时间和所述运行时间的加和;
当所述主机不向所述存储装置写入所述存储数据时,所述主控制器读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的所述存储数据进行搬运处理;
其中,所述主控制器用以在所述差值时间大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理;
所述主控制器用以在所述差值时间小于所述数据保存阈值时间时,不对多个区块中的所述存储数据进行搬运处理;
对于所述当前时间和所述写入时间的差值大于等于所述数据保存阈值时间的多个区块,所述主控制器用以在多个所述区块中错误位数量大于等于预设的错误阈值数量时,对多个所述区块中的所述存储数据进行搬运处理;
所述主控制器用以在多个所述区块中错误位数量小于所述错误阈值数量时,对错误位数量最多的所述区块中的所述存储数据进行搬运处理。
2.根据权利要求1所述的存储装置,其特征在于,所述主控制器内部还设有温度传感器,用以在所述存储装置上电后进行温度的检测,所述主控制器将写入温度保存至所述写入时间对应的区块中,所述写入温度表示为所述写入时间时的检测温度。
3.根据权利要求2所述的存储装置,其特征在于,所述区块包括存储数据区域和备用区域,所述存储数据区域用以保存所述存储数据,所述备用区域用以保存所述写入时间和所述写入温度。
4.根据权利要求2所述的存储装置,其特征在于,所述数据保存阈值时间在不同检测温度下对应转化的加速因子满足:
,其中,/>为自然对数底数,/>为所述存储装置在写入温度时的激活能或活化能,/>为玻尔兹曼常数,/>为所述写入温度,/>为所述温度传感器在所述当前时间检测的当前温度,所述加速因子/>反映出所述存储装置在所述当前温度/>下,保持正常工作状态下对应所述数据保存阈值时间的大小。
5.一种存储装置的数据处理方法,其特征在于,包括:
保存主机写入的存储数据,并存储至闪存的多个区块中;
对存储装置上电后进行计时处理,计时时间记为运行时间;
在所述存储装置首次上电时,接收所述主机写入的启动时间,在所述存储装置后续上电时,接收所述主机写入的当前时间;
当所述主机向所述存储装置写入所述存储数据时,将所述存储数据和写入时间保存到区块中,所述写入时间表示为所述启动时间和所述运行时间的加和;以及
当所述主机不向所述存储装置写入所述存储数据时,读取多个区块中的写入时间,将所述当前时间和所述写入时间的差值记为差值时间,比较所述差值时间与预设的数据保存阈值时间的大小,并基于比较结果,对多个区块中的所述存储数据进行搬运处理;
其中,在所述差值时间大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理;
在所述差值时间小于所述数据保存阈值时间时,不对多个区块中的所述存储数据进行搬运处理;
所述在所述差值时间大于等于所述数据保存阈值时间时,对多个区块中的所述存储数据进行搬运处理的步骤,包括:
在多个所述区块中错误位数量大于等于预设的错误阈值数量时,对多个所述区块中的所述存储数据进行搬运处理;
在多个所述区块中错误位数量小于所述错误阈值数量时,对错误位数量最多的所述区块中的所述存储数据进行搬运处理。
6.根据权利要求5所述存储装置的数据处理方法,其特征在于,所述当所述主机向所述存储装置写入所述存储数据时,将所述存储数据和写入时间保存到区块中的步骤中,包括:
当所述主机向所述存储装置写入所述存储数据时,对所述存储装置的温度进行检测,将所述存储数据、写入时间和写入温度保存到区块中,所述写入温度表示为所述写入时间时的检测温度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137957.4A CN117666972B (zh) | 2024-02-01 | 2024-02-01 | 一种存储装置及其数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137957.4A CN117666972B (zh) | 2024-02-01 | 2024-02-01 | 一种存储装置及其数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117666972A CN117666972A (zh) | 2024-03-08 |
CN117666972B true CN117666972B (zh) | 2024-05-14 |
Family
ID=90084754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410137957.4A Active CN117666972B (zh) | 2024-02-01 | 2024-02-01 | 一种存储装置及其数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117666972B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118471309B (zh) * | 2024-07-03 | 2024-09-06 | 合肥康芯威存储技术有限公司 | 一种存储芯片的测试方法及测试装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0569040A2 (en) * | 1992-05-08 | 1993-11-10 | Kabushiki Kaisha Toshiba | Memory card device |
JP2010165039A (ja) * | 2009-01-13 | 2010-07-29 | Sony Ericsson Mobilecommunications Japan Inc | メモリ制御方法、メモリ制御装置および電子機器 |
CN102141943A (zh) * | 2010-01-28 | 2011-08-03 | 建兴电子科技股份有限公司 | 闪存装置及其数据保护方法 |
JP2015203995A (ja) * | 2014-04-15 | 2015-11-16 | レノボ・シンガポール・プライベート・リミテッド | 不揮発性メモリのデータ消失を防止する方法、コンピュータおよびホスト装置。 |
CN111414138A (zh) * | 2020-03-19 | 2020-07-14 | 青岛镕铭半导体有限公司 | 一种固态硬盘磨损均衡方法和装置 |
CN111475425A (zh) * | 2019-01-24 | 2020-07-31 | 慧荣科技股份有限公司 | 管理闪存模块的方法及相关的闪存控制器与电子装置 |
CN115291796A (zh) * | 2022-07-27 | 2022-11-04 | 三星(中国)半导体有限公司 | 存储数据的方法和装置 |
CN116610597A (zh) * | 2023-07-20 | 2023-08-18 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
CN117033268A (zh) * | 2023-10-09 | 2023-11-10 | 苏州元脑智能科技有限公司 | 一种ssd控制器、数据处理方法、设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9361182B2 (en) * | 2014-05-20 | 2016-06-07 | Transcend Information, Inc. | Method for read disturbance management in non-volatile memory devices |
TWI759580B (zh) * | 2019-01-29 | 2022-04-01 | 慧榮科技股份有限公司 | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 |
KR20210044564A (ko) * | 2019-10-15 | 2021-04-23 | 삼성전자주식회사 | 스토리지 장치 및 그것의 가비지 컬렉션 방법 |
US11461025B2 (en) * | 2020-11-05 | 2022-10-04 | Macronix International Co., Ltd. | Data retention in memory devices |
-
2024
- 2024-02-01 CN CN202410137957.4A patent/CN117666972B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0569040A2 (en) * | 1992-05-08 | 1993-11-10 | Kabushiki Kaisha Toshiba | Memory card device |
JP2010165039A (ja) * | 2009-01-13 | 2010-07-29 | Sony Ericsson Mobilecommunications Japan Inc | メモリ制御方法、メモリ制御装置および電子機器 |
CN102141943A (zh) * | 2010-01-28 | 2011-08-03 | 建兴电子科技股份有限公司 | 闪存装置及其数据保护方法 |
JP2015203995A (ja) * | 2014-04-15 | 2015-11-16 | レノボ・シンガポール・プライベート・リミテッド | 不揮発性メモリのデータ消失を防止する方法、コンピュータおよびホスト装置。 |
CN111475425A (zh) * | 2019-01-24 | 2020-07-31 | 慧荣科技股份有限公司 | 管理闪存模块的方法及相关的闪存控制器与电子装置 |
CN115658556A (zh) * | 2019-01-24 | 2023-01-31 | 慧荣科技股份有限公司 | 管理闪存模块的方法及相关的闪存控制器与电子装置 |
CN111414138A (zh) * | 2020-03-19 | 2020-07-14 | 青岛镕铭半导体有限公司 | 一种固态硬盘磨损均衡方法和装置 |
CN115291796A (zh) * | 2022-07-27 | 2022-11-04 | 三星(中国)半导体有限公司 | 存储数据的方法和装置 |
CN116610597A (zh) * | 2023-07-20 | 2023-08-18 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
CN117033268A (zh) * | 2023-10-09 | 2023-11-10 | 苏州元脑智能科技有限公司 | 一种ssd控制器、数据处理方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117666972A (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI430094B (zh) | 記憶體儲存裝置、記憶體控制器與溫度管理方法 | |
CN117666972B (zh) | 一种存储装置及其数据处理方法 | |
US8370611B2 (en) | Memory card, memory system including the same, and operating method thereof | |
KR102419036B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
EP2003569A9 (en) | Flash memory controller | |
US8489805B2 (en) | Memory devices operated within a communication protocol standard timeout requirement | |
KR20130031046A (ko) | 플래시 메모리 장치 및 플래시 메모리 장치의 데이터 관리 방법 | |
US20200218653A1 (en) | Controller, data storage device, and operating method thereof | |
CN107741913B (zh) | 用来管理一记忆装置的方法、记忆装置与控制器 | |
CN104461964A (zh) | 一种存储装置 | |
US20220138096A1 (en) | Memory system | |
KR20190102781A (ko) | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
US20190065102A1 (en) | Memory system and operating method thereof | |
US8429339B2 (en) | Storage device utilizing free pages in compressed blocks | |
US9384125B2 (en) | Method for accessing flash memory having pages used for data backup and associated memory device | |
CN103035282A (zh) | 存储器储存装置、存储器控制器与温度管理方法 | |
CN110568918A (zh) | 停电时减少功耗的数据存储方法及数据存储设备 | |
US11662944B2 (en) | Method and apparatus for performing resuming management | |
KR20220073017A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR102695482B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN107765989B (zh) | 一种存储设备控制芯片、存储设备及存储设备管理方法 | |
US20190361608A1 (en) | Data storage device and operation method for recovery, and storage system having the same | |
US20110087828A1 (en) | Method for enhancing performance of accessing a flash memory, and associated memory device and controller thereof | |
US11366736B2 (en) | Memory system using SRAM with flag information to identify unmapped addresses | |
US11106559B2 (en) | Memory controller and memory system including the memory controller |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |