CN108052279A - 一种提升闪存性能的方法、装置、设备及存储介质 - Google Patents
一种提升闪存性能的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN108052279A CN108052279A CN201711178871.2A CN201711178871A CN108052279A CN 108052279 A CN108052279 A CN 108052279A CN 201711178871 A CN201711178871 A CN 201711178871A CN 108052279 A CN108052279 A CN 108052279A
- Authority
- CN
- China
- Prior art keywords
- read
- reading
- data block
- order
- flash 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
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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3431—Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/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
- 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/0647—Migration mechanisms
-
- 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]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种提升闪存性能的方法包括:获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。通过区分顺序读取和随机读取对数据块带来的干扰程度,从而能够更加准确的确定数据块的数据搬移时间点,防止过早数据搬移引起的写放大,从而降低读写响应时间和延长闪存的使用寿命。
Description
技术领域
本发明属于闪存读写领域,尤其涉及一种提升闪存性能的方法、装置、设备及存储介质。
背景技术
闪存(flash)是一种容量大、读写速度高、功耗低、成本低的非易失性存储器。由于其具有非易失性特点,即在断电后仍能保存数据,使得它在生活中的应用越来越广泛。
闪存的使用寿命会受到读相关干扰和数据块的擦写次数的影响。其中,读相关干扰是指读取闪存某页数据时,对该块中其他字线word line施加电压,导致字线word line上的页产生轻微编程,从而使这些页的数据受干扰。随着读次数不断增加,干扰效果不断累加,最终导致该块中数据失效,使数据块成为坏块。并且,每个数据块的可擦除次数有限,频繁的擦写将会使得数据块成为坏块。坏块的累计会导致闪存稳定性下降,当坏块累积到一定数据时,闪存便无法继续使用。
当读干扰达到一定程度时,为保证数据有效,通常会将数据块的数据搬移至空块。由于现有技术中对于读取数据时的受干扰程度不能准确判断,导致进行数据搬移时,可能会出现过早的进入数据搬移而导致写放大,影响读写性能及使用寿命。
发明内容
有鉴于此,本发明实施例提供了一种提升闪存性能的方法、装置及设备,以解决现有技术中对于读取数据时的受干扰程度不能准确判断,导致进行数据搬移时,可能会出现过早的进入数据搬移而导致写放大,影响读写性能及使用寿命的问题。
本发明实施例的第一方面提供了一种提升闪存性能的方法,所述提升闪存性能的方法包括:
获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
结合第一方面,在第一方面的第一种可能实现方式中,所述获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数的步骤包括:
获取当前读取的数据页的序号和读取当前的数据页之前的前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,所述根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度的步骤包括:
如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度;
如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度;
如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度;
根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
结合第一方面,在第一方面的第三种可能实现方式中,所述获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数的步骤包括:
获取当前读取的数据页的序号和读取当前的数据页之前的前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被顺序读取的总次数;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
结合第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式中,所述根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度的步骤包括:
确定当前的数据块被顺序读取的受干扰程度的权值系数,以及当前的数据块被随机读取的受干扰的权值系数;
根据所述当前的数据块被顺序读取的总的次数,当前的数据块被随机读取的总的次数,以及当前的数据块被顺序读取的受干扰程度的权值系数、当前的数据块被随机读取的受干扰的权值系数,确定所述数据块的受干扰程度。
本发明实施例的第二方面提供了一种提升闪存性能的装置,所述提升闪存性能的装置包括:
读取方式获取单元,用于获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
受干扰程度确定单元,用于根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
数据搬移单元,用于当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
结合第二方面,在第二方面的第一种可能实现方式中,所述读取方式获取单元包括:
第一顺序确定子单元,用于获取当前读取的数据页的序号和读取当前的数据页之前的前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
第一顺序读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数;
第一随机读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
结合第二方面的第一种可能实现方式,在第二方面的第二种可能实现方式中,所述受干扰程度确定单元包括:
第一比较子单元,用于如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度;
第二比较子单元,用于如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度;
随机读取干扰确定子单元,用于如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度;
根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
本发明实施例的第三方面提供了一种提升闪存性能的设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现第一方面任一项所述提升闪存性能的方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如第一方面任一项所述提升闪存性能的方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:通过对闪存的数据块的读取方式,以及读取方式所对应的读取次数的记录,确定随机读取和顺序读取所对应的读取次数,并根据不同的读取方式的读取次数确定数据块的受干扰程度,将其与干扰阈值进行比较确定是否对数据块中的数据进行数据搬移。由于本申请通过数据块的读取方式所对应的次数来确定数据块的受干扰程度,因而能够有效的区分顺序读取和随机读取对数据块带来的干扰程度,从而能够更加准确的确定数据块的数据搬移时间点,防止过早数据搬移引起的写放大,从而降低读写响应时间和延长闪存的使用寿命。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的提升闪存性能的方法的实现流程示意图;
图2是本发明实施例提供的一种提升闪存性能方法的实现流程示意图;
图3是本发明实施例提供的一种提升闪存性能方法的实现流程示意图;
图4是本发明实施例提供的提升闪存性能的装置的示意图;
图5是本发明实施例提供的提升闪存性能的设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1为本申请实施例提供的一种提升闪存性能的方法的实现流程示意图,详述如下:
在步骤S101中,获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取。
具体的,数据块的顺序读取,可以理解为:确定当前读取的数据块所在的数据页,如果当前读取的数据页的读取顺序,与读取当前的数据页之前的前一次读取的数据页的读取顺序相同,则表示当前读取的数据块为顺序读取。其中,顺序读取可以包括正序读取和逆序读取。正序读取可以表示为沿着数据页增加的方向进行数据块的读取,而逆序读取可以表示为沿着数据页减少的方向进行数据块的读取。比如,当前数据块为正序读取,读取当前数据块所在数据页之前的前一次数据页的读取方式也为正序读取,则当前的数据块的读取方式为顺序读取。或者,当前数据块为逆序读取,读取当前数据块所在数据页之前的前一次的数据页的读取方式也为逆序读取,则当前的数据块的读取方式也为顺序读取。
所述前一次读取的数据页,是指在读取当前读取的数据块所在的数据页之前的前一次所读取的数据页,是两个不同的数据页。
数据块的随机读取,可以理解为:确定当前读取的数据块所在的数据页,当前读取的数据页的读取顺序,与读取当前的数据页之前的前一次读取的数据页的读取顺序不同,则表示当前数据块为随机读取。
比如,当前数据块为正序读取,读取当前数据块所在数据页之前的前一次数据页的读取方式为逆序读取,则当前的数据块的读取方式为随机读取。或者,当前数据块为逆序读取,读取当前数据块所在数据页之前的前一次数据页的读取方式为正序读取,则当前的数据块的读取方式也为随机读取。
在步骤S102中,根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度。
由于数据块被顺序读取时,数据块的受干扰程度,会小于随机读取时的数据块的受干扰程度,特别是连续顺序读取的次数越多,数据块的受干扰程度也会越小。因此,对于数据块由顺序读取所引起的受干扰程度,可以设定不同的读取次数对应不同的受干扰程度值,并且随着次数的增加,逐渐减少每次顺序读取所产生的受干扰程度。
比如,可以设定第一次顺序读取数据块时,对数据块所产生的受干扰程度为1,连续顺序读取中的第二次顺序读取数据块时,对数据块所产生的受干扰程度为0.95,连续第二次顺序读取数据块时,对数据块所产生的受干扰程度为0.9,连续第三次顺序读取数据块时,对数据块所产生的受干扰程度为0.85,连续第四次顺序读取数据块时,对数据块所产生的受干扰程度为0.8。当然,这只是本申请一种可选的实施方式,可以采用其它降低的速度,来设定随着连续顺序读取的次数的增加,相应的降低数据块的受干扰程度。比如,还可以采用图2所述的设定方式。
当数据块被随机读取时,数据块的受干扰程度较为恒定,可以设定为恒定值,比如可以设定数据块被随机读取时的受干扰程度为1。
在步骤S103中,当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
将数据块每次被读取时所对应的受干扰程度进行记录,并将数据块的所有被读取的次数所对应的受干扰程度进行累加,即可得到数据块的总的受干扰程度,将其与预定的干扰阈值进行比较,如果大于所述干扰阈值,则可将该数据块中的数据搬移至其它数据块。
本申请将读取方式进行区分后,可以根据区分方式,对顺序读取和随机读取对数据块带来的受干扰程度进行区分,因而可以为更加准确的确定数据块的受干扰程度的累积值,根据该累积值可以更为合理的控制数据搬移时间点,防止过早进行数据搬移所引起的过大的写放大,因而可以有效的提高读写响应时间,并延长闪存的使用寿命。
图2为本申请实施例提供的一种提升闪存性能方法的实现流程示意图,详述如下:
在步骤S201中,获取当前读取的数据页的序号和前一次读取的数据页的序号,确定当前读取的数据页的读取顺序。
可以通过获取当前读取的数据页的序号,以及前一次读取的数据页的序号,确定当前读取的数据页的读取顺序。当前的数据页的读取顺序可以为正序读取或逆序读取。
在步骤S202中,如果当前读取的数据页的读取顺序与前一次读取数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数。
为了确定数据块的读取方式,需要进一步确定都读取当前数据块所在的数据页之前的前一次读取数据页的读取顺序。根据当前的数据页的读取顺序,和读取当前数据页之前的前一次数据页的读取顺序,确定当前的数据页中的数据块的读取方式。
如果当前读取的数据块所对应的数据页的读取顺序,和读取当前数据块所对应的数据页之前的前一次读取的数据页的读取顺序相同(比如当前读取数据页的读取顺序为先读数据页3,再读数据页5,而前一次读取数据页的读取顺序为先读数据页1,再读数据页3),包括都为正序读取或都为逆序读取,则所述数据块的读取方式为顺序读取。否则,如步骤S203所示,相邻两次读取数据块中的数据页的读取方式不同,则所述数据块的读取方式为随机读取,例如当前读取数据页的读取顺序为先读数据页1,再读数据页3,即正序读取,而前一次读取数据页的读取顺序为先读数据页2,再读数据页1,即逆序读取,则对该数据块的读取方式为随机读取。
所述数据块被连续顺序读取的次数,可以根据所述数据块被读取时的读取方式进行判断,如果数据块在当前的读取方式为顺序读取,在当前读取的前一次的数据页读取方式也为顺序读取,那么当前的连续顺序读取次数加1,如果数据块在当前的读取方式为随机读取,在当前读取的前一次数据页读取方式为顺序读取,则连续顺序读取次数清零并重新开始记录。
在步骤S203中,如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
所述随机读取的总的次数不会被清零,可以用于表示数据块在使用过程中所读取的总的随机读取次数。
在步骤S204中,如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度。
对于当前的数据块的读取方式进行实时的判断,当连续顺序读取的次数小于预定的顺序读取次数阈值时,记录其对应的受干扰程度的大小,在本实施例示意性为记录为一个单元的受干扰程度。
在步骤S205中,如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度。
如果连续顺序读取的次数大于或等于预定的顺序读取次数阈值时,这个时候由连续顺序读取所带来的干扰较小,在本实施例对其进行忽略。当然,优选的其它实施方式中,可以选择其它较小的权值来计算对应的受干扰程度。
在步骤S206中,如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度。
由于随机读取时对数据块的受干扰程度影响较大,在本申请中设定每次随机读取时所对应的受干扰程度为一个单元,使得随机读取的总次数与数据块的受干扰程度成正比。
在步骤S207中,根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
数据块有可能多次被连续顺序读取,或者还可能被随机读取,为了得到数据块的受干扰程度,需要将连续顺序读取所产生的受干扰程度和随机读取所产生的受干扰程度进行累加,从而得到数据块的受干扰程度。
在步骤S208中,当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
将累加的受干扰程度与数据块所对应的干扰阈值进行比较,如果大于或等于该干扰阈值,则对该数据块中的数据进行数据搬移,即将该数据块中的数据复制到其它位置的空白数据块处,并禁止对搬移的源数据块进行读写操作。
本申请实施例中所述数据块,可以优选为快闪记忆体NANDFLASH块。
图2通过对连续顺序读取方式所产生的受干扰程度的计算进行了定义,确定连续顺序读取方式中,在连续顺序读取的次数小于设定的顺序读取次数阈值时,计算相应的受干扰程度,在大于或等于所述顺序读取次数阈值时,忽略其轻微影响,并将连续顺序读取与随机随读取所产生的受干扰程度分开计算,有利于进一步提高数据块的受干扰程度的计算精度,使得能够更为合理的控制数据搬移的时间点,提高闪存的读写响应速度和增加使用寿命。
图3为本申请实施例提供的一种基于总的读取次数来提升闪存性能方法的实现流程示意图,详述如下:
在步骤S301中,获取当前读取的数据页的序号和前一次数据页的序号,确定当前读取的数据页的读取顺序。
在步骤S302中,如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被顺序读取的总次数。
与图2所述的步骤S202不同之处在于,本步骤中所记录的是顺序读取的总次数N1,而图2中的步骤S202所记录的是当前读取操作中,该数据块连续顺序读取的次数。
比如,某数据块S被顺序读取的总次数为100次,并且这100次顺序读取分5个时间段完成,每个时间段完成20次连续顺序读取。在某次数据块的顺序读取时,其对应的总的顺序读取次数为第98次,但其对应的当前数据块被连续顺序读取的次数可能为第18次。
在步骤S303中,如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数N2。
在步骤S304中,确定当前的数据块被顺序读取的受干扰程度的权值系数Q1,以及当前的数据块被随机读取的受干扰的权值系数Q2。
可以设定当前的数据块被顺序读取的受干扰程度的权值系数Q1,小于当前的数据块被随机读取的受干扰的权值系数Q2。比如,可以设定当前的数据块被顺序读取的受干扰程度的权值系数Q1为当前的数据块被随机读取的受干扰的权值系数Q2的0.5倍等。
在步骤S305中,根据所述当前的数据块被顺序读取的总的次数N1,当前的数据块被随机读取的总的次数N2,以及当前的数据块被顺序读取的受干扰程度的权值系数Q1、当前的数据块被随机读取的受干扰的权值系数Q2,确定所述数据块的受干扰程度。
根据所述当前的数据块被顺序读取的总的次数N1,当前的数据块被随机读取的总的次数N2,以及当前的数据块被顺序读取的受干扰程度的权值系数Q1、当前的数据块被随机读取的受干扰的权值系数Q2,确定所述数据块的受干扰程度,可以通过如下表达公式进行计算:
受干扰程度=N1*Q1+N2*Q2
其中,权值系数Q1和权值系数Q2可以根据顺序读取和随机读取所产生的受干扰程度进行确定。
另外,优选的一种实施方式中,所述当前的数据块被顺序读取的受干扰程度的权值系数Q1,还可以结合当前的数据块被连续顺序读取次数,相应的修改。比如,连续顺序读取次数越多,权值系数Q1的值越小。
在步骤S306中,当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
图3所述的提升闪存性能的方法,通过总的顺序读取次数和随机读取次数,结合对应的权值对数据块的受干扰程度进行计算,有利于进一步提高数据块的受干扰程度的计算精度,使得能够更为合理的控制数据搬移的时间点,提高闪存的读写响应速度和增加使用寿命。
图4为本申请实施例提供的一种提供闪存性能的装置的结构示意图,详述如下:
本申请实施例所述提升闪存性能的装置,包括:
读取方式获取单元401,用于获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
受干扰程度确定单元402,用于根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
数据搬移单元403,用于当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
优选的,所述读取方式获取单元包括:
第一顺序确定子单元,用于获取当前读取的数据页的序号和当前的数据页前一次数据页的序号,确定当前读取的数据页的读取顺序;
第一顺序读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数;
第一随机读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
优选的,所述受干扰程度确定单元包括:
第一比较子单元,用于如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度;
第二比较子单元,用于如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度;
随机读取干扰确定子单元,用于如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度;
根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
优选的,所述读取方式获取单元还包括:
第二顺序确定子单元,用于获取当前读取的数据页的序号和当前的数据页前一次数据页的序号,确定当前读取的数据页的读取顺序;
第二顺序读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被顺序读取的总次数;
第二随机读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
优选的,优选的,所述受干扰程度确定单元包括:
权值系数确定子单元,用于确定当前的数据块被顺序读取的受干扰程度的权值系数,以及当前的数据块被随机读取的受干扰的权值系数;
第二受干扰程度确定子单元,用于根据所述当前的数据块被顺序读取的总的次数,当前的数据块被随机读取的总的次数,以及当前的数据块被顺序读取的受干扰程度的权值系数、当前的数据块被随机读取的受干扰的权值系数,确定所述数据块的受干扰程度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图5是本发明一实施例提供的提升闪存性能的设备的示意图。如图5所示,该实施例的提升闪存性能的设备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52,例如提升闪存性能的程序。所述处理器50执行所述计算机程序52时实现上述各个提升闪存性能的方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至403的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述提升闪存性能的设备5中的执行过程。例如,所述计算机程序52可以被分割成读取方式获取单元、受干扰程度确定单元和数据搬移单元,各单元具体功能如下:
读取方式获取单元,用于获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
受干扰程度确定单元,用于根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
数据搬移单元,用于当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
所述提升闪存性能的设备5可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述提升闪存性能的设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是提升闪存性能的设备5的示例,并不构成对提升闪存性能的设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述提升闪存性能的设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述提升闪存性能的设备5的内部存储单元,例如提升闪存性能的设备5的硬盘或内存。所述存储器51也可以是所述提升闪存性能的设备5的外部存储设备,例如所述提升闪存性能的设备5上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述提升闪存性能的设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述提升闪存性能的设备所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种提升闪存性能的方法,其特征在于,所述提升闪存性能的方法包括:
获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
2.根据权利要求1所述的提升闪存性能的方法,其特征在于,所述获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数的步骤包括:
获取当前读取的数据页的序号和前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
3.根据权利要求2所述的提升闪存性能的方法,其特征在于,所述根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度的步骤包括:
如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度;
如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度;
如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度;
根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
4.根据权利要求1所述的提升闪存性能的方法,其特征在于,所述获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数的步骤包括:
获取当前读取的数据页的序号和前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被顺序读取的总次数;
如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
5.根据权利要求4所述的提升闪存性能的方法,其特征在于,所述根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度的步骤包括:
确定当前的数据块被顺序读取的受干扰程度的权值系数,以及当前的数据块被随机读取的受干扰的权值系数;
根据所述当前的数据块被顺序读取的总的次数,当前的数据块被随机读取的总的次数,以及当前的数据块被顺序读取的受干扰程度的权值系数、当前的数据块被随机读取的受干扰的权值系数,确定所述数据块的受干扰程度。
6.一种提升闪存性能的装置,其特征在于,所述提升闪存性能的装置包括:
读取方式获取单元,用于获取闪存的数据块所对应的读取方式和读取方式所对应的读取次数,所述读取方式包括顺序读取和随机读取;
受干扰程度确定单元,用于根据所述读取方式以及所述读取方式对应的次数,确定闪存的数据块的受干扰程度;
数据搬移单元,用于当数据块的受干扰程度大于预定的干扰阈值时,将所述数据块中的数据搬移至空的数据块。
7.根据权利要求6所述的提升闪存性能的装置,其特征在于,所述读取方式获取单元包括:
第一顺序确定子单元,用于获取当前读取的数据页的序号和前一次读取的数据页的序号,确定当前读取的数据页的读取顺序;
第一顺序读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序一致,则所述读取方式为顺序读取,并记录所述数据块被连续顺序读取的次数;
第一随机读取确定子单元,用于如果当前读取的数据页的读取顺序与前一次读取的数据页的读取顺序不同,则所述读取方式为随机读取,并记录所述数据块被随机读取的总的次数。
8.根据权利要求7所述的提升闪存性能的装置,其特征在于,所述受干扰程度确定单元包括:
第一比较子单元,用于如果当前的数据块被连续顺序读取的次数小于预定的顺序读取次数阈值,则每次顺序读取增加一个单元的受干扰程度;
第二比较子单元,用于如果当前的数据块被连续顺序读取的次数大于或等于预定的顺序读取次数阈值,则停止增加受干扰程度;
随机读取干扰确定子单元,用于如果当前的数据块被随机读取时,则每次随机读取增加一个单元的受干扰程度;
第一受干扰程度确定子单元,用于根据数据块被连续顺序读取所增加的受干扰程度的单元数,以及数据块被随机读取所增加的受干扰程度的单元数,确定所述数据块的受干扰程度。
9.一种提升闪存性能的设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述提升闪存性能的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述提升闪存性能的方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711178871.2A CN108052279B (zh) | 2017-11-23 | 2017-11-23 | 一种提升闪存性能的方法、装置、设备及存储介质 |
PCT/CN2017/116255 WO2019100463A1 (zh) | 2017-11-23 | 2017-12-14 | 一种提升闪存性能的方法、装置、设备及存储介质 |
US16/175,843 US10762972B2 (en) | 2017-11-23 | 2018-10-31 | Method and apparatus for processing data in flash memory |
TW107140655A TWI699648B (zh) | 2017-11-23 | 2018-11-15 | 一種處理快閃記憶體中資料的方法及裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711178871.2A CN108052279B (zh) | 2017-11-23 | 2017-11-23 | 一种提升闪存性能的方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108052279A true CN108052279A (zh) | 2018-05-18 |
CN108052279B CN108052279B (zh) | 2020-06-19 |
Family
ID=62120354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711178871.2A Active CN108052279B (zh) | 2017-11-23 | 2017-11-23 | 一种提升闪存性能的方法、装置、设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10762972B2 (zh) |
CN (1) | CN108052279B (zh) |
TW (1) | TWI699648B (zh) |
WO (1) | WO2019100463A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992217A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种服务质量控制方法、装置、电子设备和存储介质 |
CN110007878A (zh) * | 2019-04-17 | 2019-07-12 | Oppo广东移动通信有限公司 | 存储卡处理方法、存储卡处理装置及移动终端 |
CN112527203A (zh) * | 2020-12-14 | 2021-03-19 | 深圳市硅格半导体有限公司 | 闪存存储器的数据重写方法、***、终端设备及存储介质 |
CN113010454A (zh) * | 2021-02-09 | 2021-06-22 | Oppo广东移动通信有限公司 | 数据读写方法、装置、终端及存储介质 |
CN113419682A (zh) * | 2021-06-30 | 2021-09-21 | 湖南国科微电子股份有限公司 | 一种数据处理方法、装置和计算机闪存设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11069417B2 (en) * | 2019-08-27 | 2021-07-20 | Samsung Electronics Co., Ltd. | Memory system and method of operating the same |
KR20210025249A (ko) | 2019-08-27 | 2021-03-09 | 삼성전자주식회사 | 메모리 시스템 및 그 동작 방법 |
CN111078151A (zh) * | 2019-12-19 | 2020-04-28 | 江苏芯盛智能科技有限公司 | 固态硬盘数据重读方法、装置和固态硬盘 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080151618A1 (en) * | 2006-12-24 | 2008-06-26 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
CN101546298A (zh) * | 2008-03-28 | 2009-09-30 | 群联电子股份有限公司 | 用于闪存的数据读取方法、其控制器与储存*** |
US20110040932A1 (en) * | 2009-08-12 | 2011-02-17 | Texas Memory Systems, Inc. | Efficient Reduction of Read Disturb Errors in NAND FLASH Memory |
CN103370686A (zh) * | 2010-09-15 | 2013-10-23 | 净睿存储股份有限公司 | 存储环境中重建i/o读取操作的调度 |
CN104051016A (zh) * | 2013-03-15 | 2014-09-17 | 三星电子株式会社 | 非易失性存储装置、读取数据方法、存储***及操作方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8112574B2 (en) * | 2004-02-26 | 2012-02-07 | Super Talent Electronics, Inc. | Swappable sets of partial-mapping tables in a flash-memory system with a command queue for combining flash writes |
US7801994B2 (en) * | 2007-11-29 | 2010-09-21 | Hitachi, Ltd. | Method and apparatus for locating candidate data centers for application migration |
EP2077559B1 (en) * | 2007-12-27 | 2012-11-07 | Hagiwara Solutions Co., Ltd. | Refresh method of a flash memory |
US8645662B2 (en) * | 2011-12-23 | 2014-02-04 | Oracle International Corporation | Sub-lun auto-tiering |
US9575690B2 (en) * | 2011-12-23 | 2017-02-21 | Oracle International Corporation | Sub-lun auto-tiering |
US8930621B2 (en) * | 2012-06-07 | 2015-01-06 | Hitachi, Ltd. | Storage subsystem and storage control method |
KR20140042458A (ko) * | 2012-09-28 | 2014-04-07 | 삼성전자주식회사 | 스토리지 시스템의 파일 관리 장치, 파일 관리 방법 |
US9361182B2 (en) * | 2014-05-20 | 2016-06-07 | Transcend Information, Inc. | Method for read disturbance management in non-volatile memory devices |
US10014060B2 (en) | 2015-01-30 | 2018-07-03 | Sandisk Technologies Llc | Memory system and method for reducing read disturb errors |
US9946671B1 (en) * | 2015-12-15 | 2018-04-17 | Cavium, Inc. | Methods and systems for processing read and write requests |
KR20170086840A (ko) | 2016-01-19 | 2017-07-27 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11632304B2 (en) * | 2016-10-31 | 2023-04-18 | Hewlett Packard Enterprise Development Lp | Methods and systems for characterizing computing system performance using peer-derived performance severity and symptom severity models |
US20190163371A1 (en) * | 2017-11-30 | 2019-05-30 | Cisco Technology, Inc. | Next generation storage controller in hybrid environments |
-
2017
- 2017-11-23 CN CN201711178871.2A patent/CN108052279B/zh active Active
- 2017-12-14 WO PCT/CN2017/116255 patent/WO2019100463A1/zh active Application Filing
-
2018
- 2018-10-31 US US16/175,843 patent/US10762972B2/en active Active
- 2018-11-15 TW TW107140655A patent/TWI699648B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080151618A1 (en) * | 2006-12-24 | 2008-06-26 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
CN101546298A (zh) * | 2008-03-28 | 2009-09-30 | 群联电子股份有限公司 | 用于闪存的数据读取方法、其控制器与储存*** |
US20110040932A1 (en) * | 2009-08-12 | 2011-02-17 | Texas Memory Systems, Inc. | Efficient Reduction of Read Disturb Errors in NAND FLASH Memory |
CN103370686A (zh) * | 2010-09-15 | 2013-10-23 | 净睿存储股份有限公司 | 存储环境中重建i/o读取操作的调度 |
CN104051016A (zh) * | 2013-03-15 | 2014-09-17 | 三星电子株式会社 | 非易失性存储装置、读取数据方法、存储***及操作方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992217A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种服务质量控制方法、装置、电子设备和存储介质 |
CN109992217B (zh) * | 2019-04-11 | 2020-05-29 | 苏州浪潮智能科技有限公司 | 一种服务质量控制方法、装置、电子设备和存储介质 |
CN110007878A (zh) * | 2019-04-17 | 2019-07-12 | Oppo广东移动通信有限公司 | 存储卡处理方法、存储卡处理装置及移动终端 |
CN112527203A (zh) * | 2020-12-14 | 2021-03-19 | 深圳市硅格半导体有限公司 | 闪存存储器的数据重写方法、***、终端设备及存储介质 |
CN112527203B (zh) * | 2020-12-14 | 2024-04-19 | 深圳市硅格半导体有限公司 | 闪存存储器的数据重写方法、***、终端设备及存储介质 |
CN113010454A (zh) * | 2021-02-09 | 2021-06-22 | Oppo广东移动通信有限公司 | 数据读写方法、装置、终端及存储介质 |
CN113419682A (zh) * | 2021-06-30 | 2021-09-21 | 湖南国科微电子股份有限公司 | 一种数据处理方法、装置和计算机闪存设备 |
CN113419682B (zh) * | 2021-06-30 | 2022-06-03 | 湖南国科微电子股份有限公司 | 一种数据处理方法、装置和计算机闪存设备 |
Also Published As
Publication number | Publication date |
---|---|
US10762972B2 (en) | 2020-09-01 |
CN108052279B (zh) | 2020-06-19 |
TW201926045A (zh) | 2019-07-01 |
WO2019100463A1 (zh) | 2019-05-31 |
US20190156903A1 (en) | 2019-05-23 |
TWI699648B (zh) | 2020-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108052279A (zh) | 一种提升闪存性能的方法、装置、设备及存储介质 | |
CN108876560B (zh) | 一种基于区块链对作品发布者进行信用评价的方法及装置 | |
CN108711047B (zh) | 一种自动还款方法、***及终端设备 | |
CN108615096A (zh) | 服务器、金融时序数据的处理方法及存储介质 | |
US9251051B2 (en) | Capacity forecasting for backup storage | |
CN110399380A (zh) | 一种数据处理方法、电子装置及存储介质 | |
CN111078123A (zh) | 一种闪存块的磨损程度的评估方法及装置 | |
CN108009444A (zh) | 全文搜索的权限控制方法、装置与计算机可读存储介质 | |
CN109521970B (zh) | 一种数据处理方法及相关设备 | |
CN105335886A (zh) | 处理金融数据的方法和设备 | |
CN110390463B (zh) | 风控数据处理方法、装置及终端设备 | |
CN108256816A (zh) | 一种佣金数据处理方法、装置及设备 | |
CN108830663B (zh) | 电力客户价值评价方法、***及终端设备 | |
CN109117976B (zh) | 一种贷款损失预测方法、装置、服务器及存储介质 | |
CN110443517A (zh) | 一种影响网约车司机出车积极性的关键指标确定方法 | |
CN114385092B (zh) | 固态硬盘闪存阵列的擦除方法、固态硬盘主控芯片 | |
US20160210695A1 (en) | Computer-Implemented Asset Allocation Method | |
CN115472203A (zh) | 闪存磨损次数预测方法、装置及存储介质 | |
CN112150269B (zh) | 企业借款用途核验方法及其***、计算机设备、存储介质 | |
CN114817209A (zh) | 监控规则的处理方法和装置、处理器及电子设备 | |
CN117891754B (zh) | 处理器Cache结构的缓存方法、计算子***以及智能计算平台 | |
US20230032400A1 (en) | Management of flash storage media | |
CN111158605B (zh) | 用于优化操作***磁盘存储策略的方法、装置和智能设备 | |
CN111913650B (zh) | 一种确定预测窗口期的方法及装置 | |
CN117764709A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 518000 A, B, C, D, E, F1, 8 Building, Financial Services Technology Innovation Base, No. 8 Kefa Road, Nanshan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen jiangbolong electronic Limited by Share Ltd Address before: 518057 8 building, 1 finance base, 8 KFA Road, Nanshan District, Shenzhen, Guangdong. Applicant before: Shenzhen jiangbolong Electronic Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |