CN114510198B - 一种提高nvm擦写效率的方法 - Google Patents

一种提高nvm擦写效率的方法 Download PDF

Info

Publication number
CN114510198B
CN114510198B CN202210140090.9A CN202210140090A CN114510198B CN 114510198 B CN114510198 B CN 114510198B CN 202210140090 A CN202210140090 A CN 202210140090A CN 114510198 B CN114510198 B CN 114510198B
Authority
CN
China
Prior art keywords
cache
page
nvm
data
written
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
CN202210140090.9A
Other languages
English (en)
Other versions
CN114510198A (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.)
Beijing CEC Huada Electronic Design Co Ltd
Original Assignee
Beijing CEC Huada Electronic Design 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 Beijing CEC Huada Electronic Design Co Ltd filed Critical Beijing CEC Huada Electronic Design Co Ltd
Priority to CN202210140090.9A priority Critical patent/CN114510198B/zh
Publication of CN114510198A publication Critical patent/CN114510198A/zh
Application granted granted Critical
Publication of CN114510198B publication Critical patent/CN114510198B/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提出一种提高NVM擦写效率的方法,该方法除使用一般的缓存机制缓存待写入数据之外,还加入了LRU算法用于优化CACHE中的页面置换方法,使得频繁更新的数据能够一直存储在CACHE中,加快写的效率,同时频繁更新的数据在修改时也不用每次都从NVM中读取,进一步加快写的效率。本发明主要解决NVM存储的寿命问题以及更新数据的效率问题,通过间接减少NVM的擦写次数来提高NVM的寿命,同时通过减少NVM的读的次数提高整体写性能与功耗。

Description

一种提高NVM擦写效率的方法
技术领域
本发明涉NVM存储与更新技术领域,以及智能卡、SE、MCU等需要用到NVM擦写的所有芯片。PC机端作为对比测试也可以使用本发明中提到的方法。
背景技术
一般芯片中都会有NVM作为存储代码和数据使用,在实际使用当中会有更新数据的需求。但由于目前NVM的技术,擦写次数有限,长时间擦写会使得芯片NVM报废,同时应用层对于指令的执行时间有苛刻的要求,所以需要通过减少NVM的擦写次数来提高寿命,加快指令处理时间。
一般减少NVM擦写次数的方法是定义N页RAM(称之为CACHE,下同),单页大小和NVM的单页大小相同,假如是N=6页(本文的其他描述有关于CACHE页数总大小的都按照6页来描述)。当准备执行写行为时,先根据写入的地址计算待写页号PN,然后从CACHEPN[i](其中0≤i<6,下同)中查找有没有相同的PN,找到相同的直接更新CACHE[i],没找到则查看CACHE中是否存满了用户待写入数据,如果存满了则执行把数据全部进行提交到NVM的行为,然后再把待写入的页的内容从NVM中读取到CACHE中,然后再根据传入的修改数据修改这页CACHE。待这条指令结束时,再把这页CACHE提交到NVM中,并清空CACHE。
这样做虽然可以有效减少擦写NVM的次数,但是如果写入数据比较多,且处于不同页,并且不同页的数量大于6,则依然会出现多次擦写NVM的情况。且每条指令结束后,全部数据提交后,下一条指令执行写操作时,依然需要先把数据读到CACHE再修改。
因此,为了进一步提高擦写性能,减少擦写次数,在CACHE满了之后,此时并不能把所有CACHE都提交到NVM中,而是需要选择一页最久未更新的CACHE页进行提交,然后把新的需要写入的页读到该页CACHE中,然后进行修改。与此同时,在每条指令结束前进行CACHE提交时,提交之后不应该清空CACHE,但是需要每页置一个标记,标明该页数据不需要提交,当下条指令写入的数据正好处于CACHE中时,直接修改CACHE,而不再需要从NVM中读取一整页数据,加快整体性能,降低整体功耗。
发明内容
在具体讲解发明内容之前先介绍一些基本概念,有助于理解整个发明内容。
1、NVM一般指FLASH或E2P,其中E2P可以按字节进行更新,FLASH只能按页更新,且必须先擦再写。本文提到的NVM一般指FLASH。
2、NVM中存储的数据,掉电之后不丢失,RAM中存储的数据掉电之后丢失,更新NVM的时间很长,且只能按页更新;更新RAM的时间很短,可以按字节更新。
3、更新NVM会产生很大的功耗,读NVM也会产生功耗,而读写RAM的功耗很低。
4、NVM擦写有次数限制,一般单页是10W次,当擦写次数超过此限制时,数据将不可写入,如果软件没有做其他处理,芯片将无法继续使用;RAM没有限制,可以写无数次。
5、CACHE是一种RAM缓存,本质是RAM,大小以NVM一页为单位,一页大小必须是2的幂次,一般是512。每一个CACHE页都会对应某一个物理页中的一整页数据,同时附加两个数据,一个是该页对应的物理页号,记做CACHEPN,一个是该页的更新标记,记做CACHEFLAG。
我们执行读写数据的原则是功耗尽量低,速度尽量快,尽可能少的擦写FLASH次数,尽可能少的读FLASH次数。
我们使用CACHE[i]表示某一页CACHE数据,i是CACHE索引代号,0≤i<N,使用CACHEPN[i]表明该页CACHE对应的物理页号,也就是执行提交操作时,需要把该页CACHE数据提交到哪个物理页中;使用CACHEFLAG[i]表明该页CACHE数据是否需要提交到NVM,如果CACHEFLAG[i]为标记A,则表明该页CACHE数据需要提交到NVM中,如果CACHEFLAG[i]为标记B,则表明该页CACHE数据不需要提交到NVM中。
本发明提供一种加速NVM擦写的方法,以通过减少NVM擦写次数来变相降低总擦写时间。
为了实现此目标,我们需要预置一些RAM作为存储待写入数据的CACHE缓存,这里假定CACHE的页数为6,当一条指令中多次出现对同一页的更新时,只需要修改CACHE即可。
当一条指令中写入的不同数据页的页数大于6时,此时需要从当前的CACHE中,选择一页进行提交NVM的操作,选择的原则是根据引用矩阵,依照某个法则,确保选择的页是最久未更新的页,这样留下的页都是后续被更新几率更大的,也就有更大的几率在更新时命中CACHE,进而执行修改RAM的操作,否则如果没命中CACHE,就又要根据引用矩阵,依照某个法则选择一页执行提交NVM的操作,进而降低效率。当提交完该页数据后,立即正向更新引用矩阵。
所有进到CACHE中的数据,都额外需要一个标记,这个标记用于控制该页CACHE是否需要提交,当标记值为标记A时,表示该页CACHE中的数据需要被提交到NVM中;当标记值为标记B时,表明该页不需要被提交到NVM中。在一条指令准备结束之时,需要把CACHE中的所有有效数据提交到NVM中。这里的有效数据指CACHEFLAG[i]为标记A。任何一页CACHE的提交都会触发一次正向更新引用矩阵的行为。
这么做的目的是每次对应页CACHE数据提交到NVM后,并不清空该页CACHE[i]和CACHEPN[i],只把CACHEFLAG[i]写成标记B,这样的好处有两个:
1、当用户执行读行为时,可以通过CACHEPN[i]来命中CACHE,因为针对该页的最后一次NVM提交之后,该页中存储的数据实际上和NVM相同,此时不需要再去读NVM,而是直接读RAM,这样读行为就可以命中CACHE,减少由于读NVM造成的额外功耗。
2、当用户对该页执行写行为时,由于该页一直存储在CACHE中,所以不需要把存储在NVM中的一页数据读到CACHE中,直接修改CACHE即可,减少一个页读行为,降低功耗,提升速度。
当用户期望把某个存储于CACHE中的数据,取消提交时(无论该CACHE页是否被修改过),需要执行反向更新引用矩阵的操作,同时把CACHEPN[i]设成无效页号,并把CACHEFLAG[i]设成标记B。
下面来介绍引用矩阵以及引用矩阵的正向更新和反向更新的方法。
引入引用矩阵的目的,或者说我们要解决的问题是:如果发生“缓存落空”(也就是没找到匹配的CACHEPN),那么为了确保新的待写入的数据进入CACHE,我们应该把哪一块现有缓存进行提交,然后留出空块用于存储待写入数据块。我们无法预知下一次用户会写入哪一页,但最理想的做法是把上一次使用时间距离现在最久的那块CACHE替换掉,也就是LRU策略(least recently used)。
引用矩阵为一个N*N的数组,每个元素为0或者1,该策略的核心是当第i缓存块被使用后,把矩阵中第i行元素设为1,然后将第i列元素设为0。下图依次演示了矩阵初始状态和矩阵后续变化,即第3,0,5,1,4,5,2,3块缓存被使用时的矩阵状态。
在每个矩阵的6行中,有一行含有五个“1”,有一行含有四个“1”,有一行含有三个“1”,有一行含有两个“1”,有一行含有一个“1”,还有一行没有“1”。没有“1”的那行,其行号也就代表上次使用时间距现在最远的那块缓存,“1”的个数越多,表明上次使用时间据现在越近。当发生“缓存落空”时,我们需要找到全是“0”的那一行,并且将该块缓存进行提交,然后存入待写入数据页,把该行元素全设为1.表示此缓存块是刚使用过的,然后将矩阵中该列元素置0。
以上均是引用矩阵的正向更新,也就是期望利用LRU策略把某一页数据剔除CACHE,然后把新数据写进CACHE。但是还有一种情况是用户主动想取消某一个物理页的写行为,且该页数据已经进了CACHE。这时就要用到引用矩阵的反向更新。
反向更新引用矩阵的方法是:根据输入的待取消的PN,到CACHEPN[i]中查找,如果找到了,则先把引用矩阵中第i列元素置1,再把第i行元素置0。我们在图4的基础上取消第二页缓存,得到图5。
附图说明:
图1为本发明用户的写NVM行为示意图;
图2为本发明用户的读NVM行为示意图;
图3用户取消某一个存在于CACHE中的物理页的示意图;
图4为引用矩阵的正向更新示例;
图5为引用矩阵的正向更新和一个反向更新示例。
图6本发明的实施例一之前的数据准备状态。
图7本发明的实施例一执行之后的数据状态。
图8本发明的实施例二执行之后的数据状态。
图9本发明的实施例三执行之后的数据状态。
图10本发明的实施例四执行之后的数据状态。
具体实施方式:
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行实际数据的举例说明。标记A用0x55表示,标记B用0xAA表示,无效页号用0xFFFF表示。
本发明的核心框图如图1、图2所示,其中图1为用户写NVM行为,图2为用户读NVM行为。
图3为当用户取消某一个存在于CACHE中的物理页时的流程示意,避免该页数据后续被提交到NVM中。
图4为引用矩阵的8次正向更新示例图。
图5为引用矩阵的6次正向更新和1次反向更新示例图。。
图6为某个初始状态时,各个数据的状态,包括引用矩阵,CACHEPN[i],CACHE[i]及CACHEFLAG[i],其中0≤i≤5,下同。
图7为用户触发更新CACHE中已有的第四页数据为一整页0x06之后,各个数据的变化及当前状态。
图8为用户触发更新CACHE中没有的第七页数据为一整页0x07之后,各个数据的变化及当前状态。
图9为用户触发取消更新CACHE中已有的第四页数据之后,各个数据的变化及当前状态。
图10为用户把所有数据都提交到NVM之后,各个数据的变化及当前状态。
实施例1:
针对图6的初始状态,执行更新第四页为全0x06的行为,因为CACHEPN[4]=0x0004,故在CACHEPN中直接找到了待更新的页,此时直接更新CACHE[4]中的一页数据为全0x06,同时更新引用矩阵,第四行更新成全1,第四列更新成全0,此时全0行为第二行,即当前最久未更新的页是第二页,第四行1的个数最多,即表明第四行是刚刚更新过的。CACHEFLAG[4]依然为0x55,因为该页最终需要提交到NVM中。最终结果见图7。
实施例2:
针对图7的状态,执行更新物理的第七页为全0x07的行为,因为CACHEPN[i]中不包含0x0007这个页号,所以此时需要通过引用矩阵淘汰掉一页最久未使用的缓存页。通过查找引用矩阵中的全0行,可以知道当前最久未更新的物理页是第二页,那么先把该页写到NVM中,再把CACHEPN[2]赋值成0x0007,最后把CACHE[2]一整页写成全0x07。因为物理的第七页最终也需要写入NVM,所以保持CACHEFLAG[2]为0x55。最终结果见图8。
实施例3:
针对图8的状态,执行取消物理第四页的写入行为,因为CACHEPN[4]=0x0004,故在CACHEPN中找到了待取消更新的页,由于取消该页的更新行为,所以需要后续对物理第四页进行读取或更新时,不能再使用CACHE中的数据,所以需要把CACHEPN[4]赋值为0xFFFF,同时CACHEFLAG[4]应设为0xAA,表明该页数据无效,最终提交CACHE时不需要写入该页。而CACHE[4]中存储的一页数据,此时都是脏数据,不需要额外进行操作。最终结果见图9。
实施例4:
针对图9的状态,执行提交所有CACHE到NVM的操作。提交之后,CACHE中所有页的内容,和NVM中保持一致,后续读取NVM中的内容时,依然可以从CACHE中读取,所以图9和图10的CACHEPN[i]保持一致。但数据已经提交,在没有修改的情况下不需要提交第二次,所以需要把所有的CACHEFLAG[i]设为0xAA,表明该页不需要再次提交,除非有新的写行为。而引用矩阵保持不变,因为数据全部提交与否不影响之前数据的先后使用时间,即在图10中,即使提交了所有数据,后续有新的数据需要写入时,依然要根据引用矩阵把数据装载到CACHE[4]中,以确保更多的有效数据存储于CACHE中,减少NVM页读行为,加快整体读速度。

Claims (1)

1.一种提高NVM擦写效率的方法,其特征在于,措施包括:
1)写入操作:
执行写入操作时,根据写入地址计算待写页号PN,通过比较待写页号PN与CACHE中对应的若干个物理页号CACHEPN,判断当前CACHE缓存中是否存在待写入的页:
CACHE命中:如果PN和第i个CACHEPN相等,0≤i<N,N为大于0的任意整数,则直接在该页CACHE数据CACHE[i]中更新待写入的数据;
CACHE未命中:如果PN不等于任何一个CACHEPN,则根据引用矩阵获取一个CACHE索引i,并把待写入的页号PN对应存储在NVM中的一整页数据读出来存储到CACHE[i]中,然后更新CACHE[i]中的数据,并正向更新引用矩阵,同时设置更新标记CACHEFLAG[i]为标记A,标明该页最终需要提交到NVM中;i是CACHE索引代号,0≤i<N,所述CACHE命中和CACHE未命中里分别描述的i互相之间并无关联;
2)提交操作:
在当前指令全部结束后,执行提交操作,把CACHE中更新标记CACHEFLAG[i]为标记A的有效数据页更新到NVM中,然后设置更新标记CACHEFLAG[i]为标记B,标明该页不再需要提交到NVM中;
3)取消操作:
如需要执行某页的取消写入操作时,根据待取消写入地址计算待写页号PN,通过比较待取消页号PN与CACHE中对应的若干个物理页号CACHEPN,判断当前CACHE缓存中是否存在待写入的页,如果PN和第i个CACHEPN相同,则设置物理页号CACHEPN[i]为无效页号并反向更新引用矩阵,并设置更新标记CACHEFLAG[i]为标记B,所述取消操作和所述写入操作里分别描述的i互相之间并无关联。
CN202210140090.9A 2022-02-16 2022-02-16 一种提高nvm擦写效率的方法 Active CN114510198B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210140090.9A CN114510198B (zh) 2022-02-16 2022-02-16 一种提高nvm擦写效率的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210140090.9A CN114510198B (zh) 2022-02-16 2022-02-16 一种提高nvm擦写效率的方法

Publications (2)

Publication Number Publication Date
CN114510198A CN114510198A (zh) 2022-05-17
CN114510198B true CN114510198B (zh) 2023-06-30

Family

ID=81552058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210140090.9A Active CN114510198B (zh) 2022-02-16 2022-02-16 一种提高nvm擦写效率的方法

Country Status (1)

Country Link
CN (1) CN114510198B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法
WO2015185002A1 (zh) * 2014-06-06 2015-12-10 华为技术有限公司 一种数据写入方法及装置
CN105786717A (zh) * 2016-03-22 2016-07-20 华中科技大学 软硬件协同管理的dram-nvm层次化异构内存访问方法及系统
WO2017107161A1 (zh) * 2015-12-25 2017-06-29 研祥智能科技股份有限公司 基于异构混合内存的nvm内存擦写控制方法和系统
CN107291405A (zh) * 2017-08-17 2017-10-24 北京中电华大电子设计有限责任公司 一种NorFlash的数据管理方法与装置
CN107784121A (zh) * 2017-11-18 2018-03-09 中国人民解放军国防科技大学 一种基于非易失内存的日志文件系统的小写优化方法
CN109254878A (zh) * 2018-09-27 2019-01-22 北京中电华大电子设计有限责任公司 一种基于字写的智能卡掉电备份方法和数据结构
CN110427285A (zh) * 2019-08-06 2019-11-08 北京中电华大电子设计有限责任公司 一种高性能的智能卡镜像保护方法和数据结构
CN112231244A (zh) * 2020-12-21 2021-01-15 深圳杰睿联科技有限公司 应用于SoftSIM的SIM卡文件擦写系统、方法和可读存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104614B2 (en) * 2011-09-16 2015-08-11 Apple Inc. Handling unclean shutdowns for a system having non-volatile memory
US20170024326A1 (en) * 2015-07-22 2017-01-26 CNEX-Labs, Inc. Method and Apparatus for Caching Flash Translation Layer (FTL) Table
WO2017113213A1 (zh) * 2015-12-30 2017-07-06 华为技术有限公司 访问请求处理方法、装置及计算机系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法
WO2015185002A1 (zh) * 2014-06-06 2015-12-10 华为技术有限公司 一种数据写入方法及装置
WO2017107161A1 (zh) * 2015-12-25 2017-06-29 研祥智能科技股份有限公司 基于异构混合内存的nvm内存擦写控制方法和系统
CN105786717A (zh) * 2016-03-22 2016-07-20 华中科技大学 软硬件协同管理的dram-nvm层次化异构内存访问方法及系统
CN107291405A (zh) * 2017-08-17 2017-10-24 北京中电华大电子设计有限责任公司 一种NorFlash的数据管理方法与装置
CN107784121A (zh) * 2017-11-18 2018-03-09 中国人民解放军国防科技大学 一种基于非易失内存的日志文件系统的小写优化方法
CN109254878A (zh) * 2018-09-27 2019-01-22 北京中电华大电子设计有限责任公司 一种基于字写的智能卡掉电备份方法和数据结构
CN110427285A (zh) * 2019-08-06 2019-11-08 北京中电华大电子设计有限责任公司 一种高性能的智能卡镜像保护方法和数据结构
CN112231244A (zh) * 2020-12-21 2021-01-15 深圳杰睿联科技有限公司 应用于SoftSIM的SIM卡文件擦写系统、方法和可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向NVM存储系统的快速文件访问系统;贺庆建;蔡涛;王杰;牛德姣;;计算机应用(第02期);全文 *

Also Published As

Publication number Publication date
CN114510198A (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
US10019369B2 (en) Apparatuses and methods for pre-fetching and write-back for a segmented cache memory
EP0157175B1 (en) Prefetching mechanism for a high speed buffer store
EP1066566B1 (en) Shared cache structure for temporal and non-temporal instructions and corresponding method
US7958334B2 (en) Method and apparatus for an efficient multi-path trace cache design
TWI533201B (zh) 縮減交易回復的快取控制
US7284096B2 (en) Systems and methods for data caching
US20070168627A1 (en) Method and apparatus for reducing page replacement time in system using demand paging technique
CN110018790B (zh) 一种保证持久性内存中数据崩溃一致性的方法及系统
CN1361887A (zh) 具有保护的最近最少使用置换方法
EP0604015A2 (en) Cache control system
CN106569960A (zh) 一种混合主存的末级缓存管理方法
KR100787856B1 (ko) 플래시 메모리 저장장치의 페이지 교체 방법
CN106663026A (zh) 针对事务型数据处理执行模式的调用堆栈维护
CN115617712A (zh) 一种基于组相联高速缓存Cache的LRU替换算法
US20080147989A1 (en) Lockdown control of a multi-way set associative cache memory
CN114510198B (zh) 一种提高nvm擦写效率的方法
US20180203703A1 (en) Implementation of register renaming, call-return prediction and prefetch
US11836092B2 (en) Non-volatile storage controller with partial logical-to-physical (L2P) address translation table
JP2007272681A (ja) キャッシュメモリ装置及びそのキャッシュラインの入れ替え方法
CN100428200C (zh) 一种片上指令cache的实现方法
US8214601B2 (en) Purging without write-back of cache lines containing spent data
US10783083B2 (en) Cache management device, system and method
JP2016062513A (ja) プロセッサおよびプロセッサシステム
US20170147498A1 (en) System and method for updating an instruction cache following a branch instruction in a semiconductor device
US6601155B2 (en) Hot way caches: an energy saving technique for high performance caches

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