CN101702139B - 一种访问Nand闪存数据的方法和装置 - Google Patents

一种访问Nand闪存数据的方法和装置 Download PDF

Info

Publication number
CN101702139B
CN101702139B CN 200910224156 CN200910224156A CN101702139B CN 101702139 B CN101702139 B CN 101702139B CN 200910224156 CN200910224156 CN 200910224156 CN 200910224156 A CN200910224156 A CN 200910224156A CN 101702139 B CN101702139 B CN 101702139B
Authority
CN
China
Prior art keywords
cache blocks
module
hit
nand flash
nand
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.)
Expired - Fee Related
Application number
CN 200910224156
Other languages
English (en)
Other versions
CN101702139A (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.)
Han Li
Liu Cuixia
Liu Zaoliang
Wang Mei
Zhang Cuiru
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN 200910224156 priority Critical patent/CN101702139B/zh
Publication of CN101702139A publication Critical patent/CN101702139A/zh
Priority to PCT/CN2010/073520 priority patent/WO2010148922A1/zh
Application granted granted Critical
Publication of CN101702139B publication Critical patent/CN101702139B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种访问Nand闪存数据的方法,创建Nand缓存,在访问Nand闪存数据时,先根据要访问的Nand闪存的线性地址,计算出要访问的Nand闪存的物理块号(WriteBlockNum),再根据WriteBlockNum和各缓存块的管理信息中的命中块号判断是否在Nand缓存中命中缓存块,如果命中,则对命中的缓存块进行访问;如果未命中,则在访问为写操作时,申请缓存块,并将WriteBlockNum记录到命中块号,再对此缓存块进行写操作;在访问为读操作时,直接从Nand闪存中读取数据;本发明同时还公开了一种访问Nand闪存数据的装置;采用本发明的方案大大提高了对Nand闪存的读写速度。

Description

一种访问Nand闪存数据的方法和装置
技术领域
本发明涉及数据存储技术,尤指涉及一种访问Nand闪存数据的方法和装置。 
背景技术
NOR和Nand是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR闪存(Flash)技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了Nand Flash结构,这种结构强调降低每比特的成本、更高的存储性能,并且能像磁盘一样可以通过接口轻松升级。 
Nand Flash已经成为消费类应用中用作海量存储的主要选择,因为它相比NOR Flas h而言具有单位比特成本更低、存储密度更高的优势,并且具有比硬盘更小的尺寸、更低的功耗以及更可靠的优势。 
正因如此,在嵌入式应用中,Nand Flash被越来越多的产品所采用,如媒体播放器,数码相机、数码相框、便携式导航仪、U盘、机顶盒、智能手机等。 
Nand Flash由大量的物理块组成,其操作特点为:擦除操作的最小单位是块,且Nand Flash数据的每一位只能从1变为0,而不能从0变为1。因此,对Nand Flash进行写操作之前一定要先擦除整个物理块。然而,在对Nand Flash以文件形式操作时,大部分时间只需改变一个物理块的部分数据,并不需要改变整个物理块,但由于Nand Flash的特点,一次只能操作整个物理块,这就导致会频繁的对Nand Flash进行读写操作。 
在嵌入式系统中,由于Nand Flash是一个低速设备,频繁地读写Nand Flash势必影响整个系统的性能,同时也会影响Nand Flash的寿命。 
发明内容
有鉴于此,本发明的主要目的在于提供一种访问Nand闪存数据的方法和装置,在提高对Nand Flash读写速度的同时,降低对Nand Flash擦写次数。 
为达到上述目的,本发明的技术方案是这样实现的: 
本发明提供的一种访问Nand闪存数据的方法,该方法包括: 
创建Nand缓存,初始化Nand缓存中各缓存块管理信息中的命中块号; 
在对Nand闪存数据访问时,根据要访问的Nand闪存的线性地址,计算出要访问的Nand闪存的物理块号; 
根据所述物理块号和命中块号判断是否命中缓存块,如果命中,则对命中的缓存块进行访问;如果未命中,则在写操作时,在Nand缓存中申请未使用的缓存块,并将所述物理块号记录到命中块号,再对此缓存块进行写操作;在读操作时,根据要读的线性地址,从Nand闪存中读取数据。 
上述方案中,所述创建Nand缓存具体为:以Nand闪存中的物理块为单位创建Nand缓存,Nand缓存由若干个缓存块组成,缓存块数不超过Nand闪存中的物理块数,其中每个缓存块的大小与物理块的大小相同。 
上述方案中,所述计算出要访问的Nand闪存的物理块号具体为:物理块号等于要访问的Nand Flash的线性地址与Nand Flash的物理块大小的比值。 
上述方案中,所述根据所述物理块号和命中块号判断是否命中缓存块具体为:在Nand缓存中查找与所述物理块号相同的命中块号的缓存块,如果查找到,则为命中;如果未查找到,则为未命中。 
上述方案中,在Nand缓存中没有未使用的缓存块供申请时,该方法进一步包括:计算各缓存块的命中率,将命中率最低的缓存块进行同步处理后,作为未使用的缓存块。 
上述方案中,所述计算各缓存块的命中率的方法具体为:将缓存块的访问次数与在第一次访问所述缓存块之后Nand缓存的访问次数的比值作为命中率。 
上述方案中,该方法进一步包括:在系统重启、设备卸载或者在一段时间内没有对Nand缓存进行访问时,对Nand缓存中所有已使用且数据相对于Nand闪存有更改的缓存块进行同步处理。 
本发明提供的一种访问Nand闪存数据的装置,该装置包括:创建模块、初始化模块、物理块号计算模块、命中判断模块、缓存块申请模块、读缓存模块、写缓存模块、读闪存模块;其中, 
创建模块,用于创建Nand缓存,并建立Nand缓存中各缓存块的管理信息中的命中块号; 
初始化模块,用于初始化Nand缓存中各缓存块管理信息中的命中块号; 
物理块号计算模块,用于根据要访问的Nand闪存的线性地址,计算出要访问的物理块号; 
命中判断模块,用于根据所述物理块号和命中块号判断是否命中缓存块,如果命中,则根据访问为读操作通知读缓存模块,根据访问为写操作通知写缓存模块;如果未命中,则在访问为写操作时,通知缓存块申请模块;在访问为读操作时,通知读闪存模块; 
缓存块申请模块,用于申请未使用的缓存块,并将所述物理块号记录到命中块号,将所述未使用的缓存块作为命中的缓存块,通知写缓存模块; 
读缓存模块,用于读命中的缓存块的数据; 
写缓存模块,用于将数据写入命中的缓存块; 
读闪存模块,用于根据要读的线性地址,从Nand闪存中读取数据。 
上述方案中,所述装置进一步包括命中率模块、同步模块;其中, 
命中率模块,用于计算各缓存块的命中率,并将命中率最低的缓存块通知给同步模块; 
同步模块,用于对命中率最低的缓存块进行同步处理;或者在系统重启、设备卸载或者在一段时间内没有对Nand缓存进行访问时,对Nand缓存中所有已使用且数据相对于Nand闪存有更改的缓存块进行同步处理; 
所述缓存块申请模块,还用于在Nand缓存中没有未使用的缓存块给缓存块申请模块申请时,通知命中率模块。 
本发明所提供的访问Nand闪存数据的方法和装置,预先创建Nand缓存(NandBuf),并初始化各缓存块(BlockBuf)的管理信息中的命中块号(HitBlockNum);在对Nand Flash数据访问时,计算出要访问的Nand Flash的物理块号(WriteBlockNum),再根据WriteBlockNum和命中块号判断是否命中BlockBuf,如果命中,则对命中的BlockBuf进行访问;如果未命中,则在写操作时,申请BlockBuf,并将WriteBlockNum记录到HitBlockNum,再进行写操作;在读操作时,根据要读的Nand Flash的线性地址,从Nand Flash中读取数据。如此,可实现对Nand Flash数据的访问。由于本发明的方案采用了数据缓存的方式,缓存的读写速度远远高于Nand Flash设备的读写速度,因此大大提高了对Nand Flash的读写速度;同时,不用在每次写操作时对Nand Flash的物理块进行擦除,降低了对Nand Flash的擦写次数,延长了Nand Flash的寿命。 
附图说明
图1为本发明实现访问Nand闪存数据的方法的流程示意图; 
图2为本发明实现访问Nand闪存数据的装置的结构示意图。 
具体实施方式
本发明的基本思想是:创建NandBuf,初始化NandBuf中各BlockBuf的管理信息中的HitBlockNum;在对Nand Flash数据访问时,先计算出要访问的WriteBlockNum,再根据WriteBlockNum和HitBlockNum判断是否命中BlockBuf,如果命中,则对命中的BlockBuf进行访问;如果未命中,则在写操作时,申请BlockBuf,并将WriteBlockNum记录到HitBlockNum,再对此BlockBuf进行写操作;在读操作时,根据要读的Nand Flash的线性地址,从Nand Flash中读取数据。 
其中,所述根据WriteBlockNum和HitBlockNum判断是否在NandBuf中命中BlockBuf具体为:在NandBuf中查找与WriteBlockNum相同的命中块号的BlockBuf,如果查找到,则为命中;如果未查找到,则为未命中。 
下面通过附图及具体实施例对本发明再做进一步的详细说明。 
本发明实现访问Nand闪存数据的方法,如图1所示,该方法包括以下几个步骤: 
步骤101:创建NandBuf,并初始化NandBuf各BlockBuf的管理信息中的HitBlockNum; 
具体为,预先以Nand Flash中的物理块为单位创建NandBuf,NandBuf由若干个BlockBuf组成,数量不超过Nand Flash中的物理块的数量,其中每个BlockBuf的大小与Nand Flash中的物理块的大小相同;对每个BlockBuf还需要建立各自的管理信息,包括:HitBlockNum,用于记录WriteBlockNum; 
所述初始化NandBuf各BlockBuf的管理信息中的命中块号,具体为初始化NandBuf各BlockBuf的管理信息中的命中块号为-1,表示未记录; 
在本步骤中,所述管理信息进一步包括:缓存块状态标志(status)、缓存块起始计数值(HitCntStart)、命中计数器(HitAccessTimes);其中, 
Status包括unused、clean、dirty三种状态,其中,unused状态表示此BlockBuf没有被使用;clean状态表示此BlockBuf已经使用,而且BlockBuf中的数据和Nand Flash中的数据一致;dirty状态表示此BlockBuf已经使用,但BlockBuf中的数据相对nand中的数据有更改;初始化为unused; 
HitCntStart,用于在BlockBuf命中某一物理块时,缓存BufAccessCnt的当前值,初始化为0; 
HitAccessTimes,用于记录在BlockBuf命中期间,对BlockBuf访问的次数,初始化为0; 
进一步的,还需为NandBuf建立缓存访问计数器(BufAccessCnt),用于记录NandBuf的访问次数,初始化为0。 
步骤102:在对Nand Flash数据访问时,根据要访问的Nand Flash的线性地址,计算出要访问的WriteBlockNum; 
本步骤中,所述计算出要访问的WriteBlockNum的方法为:WriteBlockNum=(线性地址)/(块大小),其中,块大小为NandFlash的物理块大小,目前 有16K,128K等几种类型。 
步骤103:根据WriteBlockNum和HitBlockNum判断是否在NandBuf中命中BlockBuf,如果命中且访问为写操作,则执行步骤104;如果命中且访问为读操作,则执行步骤106;如果未命中且访问为写操作,则执行步骤105;如果未命中且访问为读操作,则执行步骤107; 
具体的,在NandBuf中查找与WriteBlockNum相同的HitBlockNum的BlockBuf,如果查找到,则为命中,那么,访问为写操作时,执行步骤104,访问为读操作时,执行步骤106;如果未查找到,则为未命中,那么,访问为写操作时,执行步骤105,访问为读操作时,执行步骤107。 
步骤104:根据访问为写操作,将数据写入命中的BlockBuf,流程结束; 
本步骤中进一步包括:将命中的BlockBuf的管理信息中BufAccessCnt、HitAccessTimes各加1;还包括在Status为clean时,更新为dirty; 
步骤105:根据访问为写操作,在NandBuf中申请一个未使用的BlockBuf,把要写的Nand Flash的物理块的数据读入申请的BlockBuf,并将WriteBlockNum记录到HitBlockNum,此BlockBuf作为命中的BlockBuf,再执行步骤104; 
本步骤中进一步包括:在NandBuf中申请一个Status为unused的BlockBuf,更新申请的BlockBuf的管理信息中Status为clean,HitCntStart为BufAccessCnt当前值; 
进一步的,所述在NandBuf中没有未使用的BlockBuf时,则计算各BlockBuf的命中率,将命中率最低的BlockBuf进行同步处理后,作为未使用的BlockBuf;其中,所述计算各BlockBuf的命中率的方法一般有两种: 
第一种,将BlockBuf的访问次数与在第一次访问所述BlockBuf之后NandBuf的访问次数的比值作为命中率,比值大,说明命中率高;否则,说明命中率低;第二种,将BlockBuf的访问次数与访问BlockBuf所用的时间的比值作为命中率;比值大,说明命中率高;否则,说明命中率低。 
本发明的实施例中采用第一种方法,即: 
命中率=HitAccessTimes/(BufAccessCnt-HitCntStart); 
所述同步处理为:根据BlockBuf的HitBlockNum,将BlockBuf的数据回写到相应的Nand Flash的物理块中,更新其status为unused,HitCntStart为-1,HitAccessTimes为0。 
步骤106:根据访问为读操作,对命中的BlockBuf进行读操作,流程结束; 
本步骤中进一步包括:命中的BlockBuf的管理信息中BufAccessCnt、HitAccessTimes各加1; 
步骤107:根据访问为读操作,直接根据要读的Nand Flash的线性地址,从Nand Flash中读取数据,流程结束。 
进一步的,本发明的方法还包括:在系统重启、设备卸载或者在一段时间内没有对NandBuf进行访问时,对NandBuf所有status为dirty的BlockBuf进行同步处理,具体为:在系统重启、设备卸载或者在一段时间内没有对NandBuf进行访问时,查找出所有status为dirty的BlockBuf,根据这些BlockBuf各自的HitBlockNum,将所有status为dirty的BlockBuf的数据回写到相应的NandFlash的物理块中,并更新其status为unused,HitCntStart为-1,HitAccessTimes为0。其中,所述一段时间一般为10秒。 
基于上述方法,本发明还提供了一种访问Nand闪存数据的装置,如图2所示,该装置包括:创建模块、初始化模块、物理块号计算模块21、命中判断模块22、缓存块申请模块23、写缓存模块24、读缓存模块25、读闪存模块26;其中, 
创建模块,用于预先以Nand Flash中的物理块为单位创建NandBuf,NandBuf中每个BlockBuf的大小与Nand Flash中的物理块的大小相同,并建立NandBuf中各BlockBuf的管理信息中的HitBlockNum; 
进一步的,创建模块还用于建立各BlockBuf的管理信息中的status、HitCntStart、HitAccessTimes,及建立NandBuf的BufAccessCnt; 
初始化模块,用于初始化NandBuf中各BlockBuf的管理信息中的HitBlockNum; 
进一步的,初始化模块还用于初始化各BlockBuf的管理信息中的status为 unused、HitCntStart为0、HitAccessTimes为0;及初始化NandBuf的BufAccessCnt为0; 
物理块号计算模块21,用于根据要访问的Nand Flash的线性地址,计算出要访问的WriteBlockNum;计算方法为:WriteBlockNum=(线性地址)/(块大小); 
命中判断模块22,用于根据WriteBlockNum和命中块号判断是否在NandBuf中命中BlockBuf,如果命中,则根据访问为读操作通知读缓存模块25,根据访问为写操作通知写缓存模块24;如果未命中,则在访问为写操作时,通知缓存块申请模块23;在访问为读操作时,通知读闪存模块26; 
缓存块申请模块23,用于在NandBuf中申请一个未使用的BlockBuf,把要写的Nand Flash的物理块的数据读入申请的BlockBuf,并将WriteBlockNum记录到HitBlockNum,将此BlockBuf作为命中的BlockBuf,通知写缓存模块24; 
进一步的,缓存块申请模块23还用于更新申请的BlockBuf的管理信息中Status为clean,HitCntStart为BufAccessCnt当前值; 
读缓存模块25,用于读命中的BlockBuf的数据; 
进一步的,读缓存模块25还用于在读数据之后,将命中的BlockBuf的管理信息中BufAccessCnt、HitAccessTimes各加1; 
写缓存模块24,用于将数据写入命中的BlockBuf; 
进一步的,写缓存模块24还用于将命中的BlockBuf的管理信息中BufAccessCnt、HitAccessTimes各加1;还包括在Status为clean时,更新为dirty; 
读闪存模块26,用于根据要读的Nand Flash的线性地址,从Nand Flash中读取数据 
进一步的,该装置还包括命中率模块27、同步模块28;其中, 
命中率模块27,用于计算各BlockBuf的命中率,并将命中率最低的BlockBuf通知给同步模块28;所述命中率的计算方法为: 
命中率=HitAccessTimes/(BufAccessCnt-HitCntStart); 
同步模块28,用于根据要进行同步的BlockBuf的HitBlockNum,将BlockBuf 中的数据回写到相应的Nand Flash的物理块中,更新其status为unused,HitCntStart为-1,HitAccessTimes为0,并将此BlockBuf作为未使用的BlockBuf通知缓存块申请模块23;或者在系统重启、设备卸载或者在一段时间内没有对NandBuf进行访问时,对NandBuf中所有已使用且数据相对于Nand Flash有更改的BlockBuf进行同步处理,即:将所有status为dirty的BlockBuf中的数据回写到相应的Nand Flash的物理块中,更新其status为unused,HitCntStart为-1,HitAccessTimes为0; 
进一步的,所述缓存块申请模块23,还用于在NandBuf中没有未使用的BlockBuf给缓存块申请模块23申请时,通知命中率模块27。 
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。 

Claims (9)

1.一种访问Nand闪存数据的方法,其特征在于,该方法包括:
创建Nand缓存,初始化Nand缓存中各缓存块管理信息中的命中块号;
在对Nand闪存数据访问时,根据要访问的Nand闪存的线性地址,计算出要访问的Nand闪存的物理块号;
根据所述物理块号和命中块号判断是否命中缓存块,如果命中,则对命中的缓存块进行访问;如果未命中,则在写操作时,在Nand缓存中申请未使用的缓存块,并将所述物理块号记录到命中块号,再对此缓存块进行写操作;在读操作时,根据要读的线性地址,从Nand闪存中读取数据。
2.根据权利要求1所述的方法,其特征在于,所述创建Nand缓存具体为:以Nand闪存中的物理块为单位创建Nand缓存,Nand缓存由若干个缓存块组成,缓存块数不超过Nand闪存中的物理块数,其中每个缓存块的大小与物理块的大小相同。
3.根据权利要求1或2所述的方法,其特征在于,所述计算出要访问的Nand闪存的物理块号具体为:物理块号等于要访问的Nand Flash的线性地址与Nand Flash的物理块大小的比值。
4.根据权利要求1或2所述的方法,其特征在于,所述根据所述物理块号和命中块号判断是否命中缓存块具体为:在Nand缓存中查找与所述物理块号相同的命中块号的缓存块,如果查找到,则为命中;如果未查找到,则为未命中。
5.根据权利要求1或2所述的方法,其特征在于,在Nand缓存中没有未使用的缓存块供申请时,该方法进一步包括:计算各缓存块的命中率,将命中率最低的缓存块进行同步处理后,作为未使用的缓存块。
6.根据权利要求5所述的方法,其特征在于,所述计算各缓存块的命中率的方法具体为:将缓存块的访问次数与在第一次访问所述缓存块之后Nand缓存的访问次数的比值作为命中率。 
7.根据权利要求1或2所述的方法,其特征在于,该方法进一步包括:在系统重启、设备卸载或者在一段时间内没有对Nand缓存进行访问时,对Nand缓存中所有已使用且数据相对于Nand闪存有更改的缓存块进行同步处理。
8.一种访问Nand闪存数据的装置,其特征在于,该装置包括:创建模块、初始化模块、物理块号计算模块、命中判断模块、缓存块申请模块、读缓存模块、写缓存模块、读闪存模块;其中,
创建模块,用于创建Nand缓存,并建立Nand缓存中各缓存块的管理信息中的命中块号;
初始化模块,用于初始化Nand缓存中各缓存块管理信息中的命中块号;
物理块号计算模块,用于根据要访问的Nand闪存的线性地址,计算出要访问的物理块号;
命中判断模块,用于根据所述物理块号和命中块号判断是否命中缓存块,如果命中,则根据访问为读操作通知读缓存模块,根据访问为写操作通知写缓存模块;如果未命中,则在访问为写操作时,通知缓存块申请模块;在访问为读操作时,通知读闪存模块;
缓存块申请模块,用于申请未使用的缓存块,并将所述物理块号记录到命中块号,将所述未使用的缓存块作为命中的缓存块,通知写缓存模块;
读缓存模块,用于读命中的缓存块的数据;
写缓存模块,用于将数据写入命中的缓存块;
读闪存模块,用于根据要读的线性地址,从Nand闪存中读取数据。
9.根据权利要求8所述的装置,其特征在于,所述装置进一步包括命中率模块、同步模块;其中,
命中率模块,用于计算各缓存块的命中率,并将命中率最低的缓存块通知给同步模块;
同步模块,用于对命中率最低的缓存块进行同步处理;或者在系统重启、设备卸载或者在一段时间内没有对Nand缓存进行访问时,对Nand缓存中所有已使用且数据相对于Nand闪存有更改的缓存块进行同步处理; 
所述缓存块申请模块,还用于在Nand缓存中没有未使用的缓存块给缓存块申请模块申请时,通知命中率模块。 
CN 200910224156 2009-11-24 2009-11-24 一种访问Nand闪存数据的方法和装置 Expired - Fee Related CN101702139B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200910224156 CN101702139B (zh) 2009-11-24 2009-11-24 一种访问Nand闪存数据的方法和装置
PCT/CN2010/073520 WO2010148922A1 (zh) 2009-11-24 2010-06-03 一种访问nand闪存数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910224156 CN101702139B (zh) 2009-11-24 2009-11-24 一种访问Nand闪存数据的方法和装置

Publications (2)

Publication Number Publication Date
CN101702139A CN101702139A (zh) 2010-05-05
CN101702139B true CN101702139B (zh) 2011-11-30

Family

ID=42157055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910224156 Expired - Fee Related CN101702139B (zh) 2009-11-24 2009-11-24 一种访问Nand闪存数据的方法和装置

Country Status (2)

Country Link
CN (1) CN101702139B (zh)
WO (1) WO2010148922A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702139B (zh) * 2009-11-24 2011-11-30 中兴通讯股份有限公司 一种访问Nand闪存数据的方法和装置
CN101853702B (zh) * 2010-05-28 2015-06-17 上海华虹宏力半导体制造有限公司 一种利用内建自测提高读取速度的闪存及其方法
CN102736860B (zh) * 2011-04-08 2015-03-11 安凯(广州)微电子技术有限公司 同步nand的数据操作系统及方法
CN103559146B (zh) * 2013-11-05 2016-03-30 山东大学 一种提高NAND flash控制器读写速度的方法
CN107273306B (zh) * 2017-06-19 2021-01-12 苏州浪潮智能科技有限公司 一种固态硬盘的数据读取、数据写入方法及固态硬盘
CN107832016A (zh) * 2017-11-13 2018-03-23 郑州云海信息技术有限公司 一种读干扰优化方法及装置
CN110364220B (zh) * 2018-04-09 2022-04-29 展讯通信(上海)有限公司 用于测量嵌入式存储器的数据读取时间的电路系统及芯片
CN111563054B (zh) * 2020-04-17 2023-05-30 深圳震有科技股份有限公司 一种提高芯片读写速度的方法、智能终端及存储介质
CN113918485B (zh) * 2021-10-12 2023-04-11 广东省高峰科技有限公司 一种闪存资料防丢失方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179687A (en) * 1987-09-26 1993-01-12 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device containing a cache and an operation method thereof
US5778430A (en) * 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
CN1462000A (zh) * 2002-05-29 2003-12-17 科统科技股份有限公司 闪存桥接装置、方法及其应用系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1452181A (zh) * 2002-04-19 2003-10-29 笙泉科技股份有限公司 Nand型快闪存储器磁盘装置及检测逻辑位址的方法
US7519754B2 (en) * 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
CN101344867A (zh) * 2007-07-13 2009-01-14 深圳市江波龙电子有限公司 提高Nand型快闪存储器数据存取速度的方法
CN101702139B (zh) * 2009-11-24 2011-11-30 中兴通讯股份有限公司 一种访问Nand闪存数据的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179687A (en) * 1987-09-26 1993-01-12 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device containing a cache and an operation method thereof
US5778430A (en) * 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
CN1462000A (zh) * 2002-05-29 2003-12-17 科统科技股份有限公司 闪存桥接装置、方法及其应用系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JP特开平10-177521A 1998.06.30
JP特开平6-75859A 1994.03.18

Also Published As

Publication number Publication date
CN101702139A (zh) 2010-05-05
WO2010148922A1 (zh) 2010-12-29

Similar Documents

Publication Publication Date Title
CN101702139B (zh) 一种访问Nand闪存数据的方法和装置
CN101727295B (zh) 一种基于虚拟块闪存地址映射的数据写入及读出方法
US7689761B2 (en) Data storage system with complex memory and method of operating the same
CN104272243B (zh) 用于评估修剪指令的执行的方法和主机装置
CN103270500B (zh) 事务日志恢复
CN101981551B (zh) 用于高速缓存利用的设备和方法
CN102576332A (zh) 电力中断管理
US20120166709A1 (en) File system of flash memory
CN106557432B (zh) 缓冲存储器管理方法、存储器控制电路单元及存储装置
CN110674056B (zh) 一种垃圾回收方法及装置
CN110515550B (zh) 一种sata固态硬盘冷热数据分离的方法及其装置
US11138104B2 (en) Selection of mass storage device streams for garbage collection based on logical saturation
CN105867834A (zh) 存储装置数据整理方法
CN101425338B (zh) 非易失性存储器的写入方法及使用此方法的控制器
CN102306124A (zh) Nand Flash芯片硬件驱动层的实现方法
Jung et al. Fass: A flash-aware swap system
CN101661431A (zh) 用于快闪存储器的区块管理方法、快闪储存系统及控制器
CN102880432A (zh) 利用数据有限寿命提高闪存芯片写入速度的方法、系统及其控制器
CN106205707A (zh) 存储器装置
CN101339490A (zh) 闪存的驱动装置及方法
CN104268005B (zh) 虚拟机唤醒方法和装置
CN103324493B (zh) 基于nand flash的系统开机提速方法及系统
CN102841853A (zh) 存储器管理表处理方法、存储器控制器与存储器储存装置
CN106484320A (zh) 依赖于重用时段来操作管理耗损水平的存储设备的方法
CN106205708A (zh) 高速缓冲存储器装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170829

Address after: Jiaxiu road Zhuozhou City, Hebei province 071000 Baoding City No. 39 No. 41 building 4 unit 301 room

Co-patentee after: Han Li

Patentee after: Zhang Cuiru

Co-patentee after: Liu Cuixia

Co-patentee after: Liu Zaoliang

Co-patentee after: Wang Mei

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corp.

CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Zhang Cuiru

Inventor after: Han Li

Inventor after: Liu Cuixia

Inventor after: Liu Zaoliang

Inventor after: Wang Mei

Inventor before: Li Xianjun

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111130

Termination date: 20211124