一种利用mram存储小文件的存储结构的制作方法

文档序号:9865422阅读:323来源:国知局
一种利用mram存储小文件的存储结构的制作方法
【技术领域】
[0001]本发明涉及固态硬盘,尤其涉及一种利用MRAM存储小文件的存储结构。
【背景技术】
[0002]现在计算机、智能手机、平板电脑中,用户数据、文件被存在硬盘,或者NAND闪存芯片中以及由NAND闪存组成的固态硬盘里。NAND和固态硬盘取代传统的机械硬盘又是一个产业发展的大趋势。
[0003]硬盘和固态硬盘内的NAND闪存都是整块读写的块设备(block device),最小可读取的单元叫页(page),最小可擦除的单元叫块(block),一个块往往由很多页组成,块擦除后里面的页可以进行单独的写入操作。
[0004]NAND闪存的一个问题是NAND具有有限的寿命。里面的每一个页经过一定次数的擦写以后,就会永久失效不能继续使用。目前的产业发展趋势是NAND的容量和数据密度增长非常快,但却是以降低寿命为代价。可擦写次数从最初的10万次降低到目前的3000次左右。
[0005]如图1所示,手机与计算机的文件操作方式如下:
[0006](I)应用软件向操作系统发出打开、关闭、读、写文件指令;
[0007](2)操作系统中的文件系统部分把读、写文件的指令转化为读、写存储块的指令;
[0008](3)NAND驱动与管理软件接受读写存储块区的指令,进行缓存、写均衡等优化,向芯片发出读page,写block等指令。
[0009]在手机中,NAND驱动与管理软件通常作为与操作系统紧密相关的软件模块,在主机芯片上运行;在计算机中,NAND驱动与管理软件通常在固态硬盘的主控芯片上运行。
[0010]文件系统是操作系统软件中的一个重要部分,负责解决文件的存储问题。它会把文件划分成一个个的块,一般每一个块和NAND闪存中的一个页对应。每当一个新文件创建,文件系统会分配给它一个块,当一个块写满后,再分配一个新的块。由于系统中很多文件都在增长,一个文件中的不同的块常常地址不连续,这就是文件的碎片化。并且,一个文件删除后,释放出的空闲块会被新的文件占用。所以,随着产品的使用,文件的碎片化会越来越严重。
[0011]随着当代技术的发展,NAND闪存的密度越来越大。于此同时,页和块的尺寸也变得越来越大。页从几年前的512字节(byte)变成了今天的16Kbyte ;块从几年前的16Kbyte变成了今天的8192Kbyte。
[0012]而一个计算机系统中相当数量的文件是小文件,从10-20字节,到几百个字节。小文件中最典型的例子就是文件夹目录。在大部分文件系统中,目录也是作为一个单独的文件存储的。大部分目录文件都很小,而且被修改的几率非常高。不适合存储在block device里。
[0013]计算机文件系统中文件的最小存储单元,一般和NAND的页一样大。因此NAND越来越不适于存储这样的小文件。为存储一个20字节的文件,要占用16Kbyte的空间,存储空间的利用率非常低。为修改这样一个20字节的小文件,甚至可能要对8192Kbyte的数据进行擦除重写,极大地加重了系统的负担。
[0014]本领域技术人员致力于提供一种存储小文件的方法,能够提高的存储空间的利用效率,同时降低系统的负担。

【发明内容】

[0015]有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种存储小文件的存储结构,能够提高的存储空间的利用效率,同时降低系统的负担。
[0016]本发明的重要背景是MRAM技术的发展。MRAM是一种新的内存和存储技术,可以像RAM 一样快速随机读写,还可以像NAND闪存一样在断电后永久保留数据。不像NAND,MRAM可以无限多次地擦写。但预计未来相当长一段时间内,MRAM的容量比NAND低,成本比NAND尚O
[0017]本发明中,采用MRAM协同NAND闪存或者硬盘等块设备一起存储文件,利用成本更低的块设备存储大文件,利用能够随机读写的MRAM存储小文件。
[0018]本发明提供一种利用MRAM存储小文件的存储结构,包括MRAM与块存储设备,MRAM包括小文件存储区,用于存储小文件,小文件是指文件大小小于或等于一个页的文件,块存储设备用于存储大文件,大文件是指文件大小大于一个页的文件,小文件存储区的块的容量小于块存储设备的块的容量。
[0019]本发明提供的利用MRAM存储小文件的存储结构,存储小文件采用的块的容量小于块存储设备的块的容量,因而能够提尚存储空间的利用率。
[0020]在修改文件时,首先需要擦除的块较小,能够降低系统的负担;其次修改操作是在MRAM中完成,而不是在硬盘或NAND中完成,在MRAM中操作要比在硬盘或NAND中快得多,整个系统的性能会因此提升。
[0021]另外减少了对NAND的写入,延长了系统寿命。
[0022]进一步地,小文件存储区至少包括两个存储区,存储区的块的容量依次增大。
[0023]设置不同块容量的存储区,能够将不同大小的文件存储在不同块容量的存储区,进一步提高的存储空间的利用率,降低系统的负担。
[0024]进一步地,小文件存储区中最大的块的容量等于设定值。
[0025]进一步地,根据第一次写入的数据,创建文件时在合适的存储区中选择一个空闲块分配给文件,合适的存储区是指存储区的块是能够容纳文件的最小的块。
[0026]进一步地,创建文件时在小文件存储区找不到合适的存储区,将文件交给下一级软件处理,由下一级软件决定存入缓存、直接写入块存储设备,或做其他处理。
[0027]本发明的软件涉及对计算机文件系统的修改,如图1所示,文件系统的下一级软件是指NAND管理软件。由于有可能存在缓存机制。所以交给下一级软件处理不一定马上写回到NAND中,也可能留在MRAM的写缓存中。
[0028]进一步地,文件修改后,如果文件的大小大于对应的存储区的块的容量,在下一个存储区中选择一个空闲块分配给文件,并释放对应的存储区的块。
[0029]进一步地,文件修改后,如果文件的大小小于或等于对应的存储区的上一个存储区的块的容量,在上一个存储区中选择一个空闲块分配给文件,并释放对应的存储区的块。
[0030]进一步地,MRAM通过DDR DRAM接口与手机的主控芯片或计算机的CPU连接。
[0031]进一步地,MRAM集成在固态硬盘中。
[0032]进一步地,小文件存储区还用于存储大文件的尾页,即最后一个未写满的页,减少了对NAND的写入,延长了系统寿命。
[0033]与现有技术相比,本发明提供的利用MRAM存储小文件的存储结构具有以下有益效果:
[0034](I)存储小文件采用的块的容量小于块存储设备的块的容量,因而能够提高存储空间的利用率;
[0035](2)在修改文件时,首先需要擦除的块较小,能够降低系统的负担;其次修改操作是在MRAM中完成,而不是在硬盘或NAND中完成,在MRAM中操作要比在硬盘或NAND中快得多,整个系统的性能会因此提升;
[0036](3)小文件存储区用于存储小文件,还用于存储大文件的尾页,减少了对NAND的写入,延长了系统寿命。
[0037]以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
【附图说明】
[0038]图1是现有技术中文件操作流程图;
[0039]图2是本发明的一个实施例的利用MRAM存储小文件的存储结构的示意图;
[0040]图3是本发明的另一个实施例的利用MRAM存储小文件的存储结构的示意图。
【具体实施方式】
[0041]如图2所示,本发明的一个实施例的利用MRAM存储小文件的存储结构,包括MR
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1