当前位置: 首页 > 专利查询>深圳大学专利>正文

一种数据写入、读取方法和装置制造方法及图纸

技术编号:17032680 阅读:76 留言:0更新日期:2018-01-13 19:15
本发明专利技术实施例提供一种数据写入、读取方法和装置,涉及数据存储技术领域。其中,该方法包括:获取待写入3D闪存的数据和数据的逻辑页号,判断配置在二级存储器中的缓存链表中是否存在逻辑页号,若缓存链表中存在逻辑页号,则将数据更新在缓存链表中逻辑页号对应的位置,若缓存链表中不存在逻辑页号,则当缓存链表写满时,将缓存链表的表尾的数据移至3D闪存中,并将数据及数据的逻辑页号写入表头,当缓存链表未写满时,将数据及数据的逻辑页号写入缓存链表。通过将待写数据写入到缓存链表中,在缓存链表写满的情况下,再将数据写入到3D闪存的物理块中,可以减少对3D闪存的访问,避免由于3D闪存的温度升高造成的存储性能降低和存储可靠性降低的问题。

【技术实现步骤摘要】
一种数据写入、读取方法和装置
本专利技术属于数据存储
,尤其涉及一种数据写入、读取方法和装置。
技术介绍
目前,3D闪存主要采用电荷捕获闪存(ChargeTrapFlash,简称CTF)技术和垂直堆叠制程技术。CTF技术与传统的浮栅极技术的区别在于:CTF技术使用一层极薄的氮化硅薄膜来捕获电荷并储存电子。在CTF技术中,数据被临时存放在非传导层中一个由氮化硅组成的“单元格”中,并用绝缘的氮化硅薄膜来充当电子的隔离层。当需要读取数据时,对数据进行“解禁”,可以对储存流进行更好的控制。但是,CTF技术受温度的影响较大,高温条件下会造成电子的损耗。另外,芯片频繁的写入和擦除会使温度升高,进而加剧电子损耗,最终降低芯片的存储新能。垂直堆叠制程技术制造的3D闪存使用垂直堆叠结构,其主要特点是在垂直方向是一个圆柱体结构,这样在进行频繁的擦除和读写后,3D闪存的温度升高,会使得圆柱体中顶部氧化层和底部氧化层电子分布不均匀导致电荷的损耗,进而降低3D闪存的存储性能。另外,由于3D闪存中的物理块呈垂直结构,水平方向上临近的是不同的物理块,在读数据进行读写操作时,对某一物理块中物理页的读写不仅存在相同物理块间的干扰,还存在不同物理块间的干扰,使得存储的数据差错率增加,重要数据的可靠性降低。
技术实现思路
本专利技术提供一种数据写入、读取方法和装置,旨在解决现有的3D闪存中,由于在频繁的擦除和读写后,使得3D闪存的温度升高,进而导致3D闪存存储性能降低的问题,以及在对数据进行读写时,由于临近的物理块之间相互干扰造成的数据存储的可靠性降低的问题。本专利技术提供的一种数据写入方法,所述方法包括:获取待写入3D闪存的数据和所述数据的逻辑页号;判断配置在二级存储器中的缓存链表中是否存在所述逻辑页号;若所述缓存链表中存在所述逻辑页号,则将所述数据更新在所述缓存链表中所述逻辑页号对应的位置;若所述缓存链表中不存在所述逻辑页号,则当所述缓存链表写满时,将所述缓存链表的表尾的数据移至所述3D闪存中,并将所述数据及所述数据的逻辑页号写入所述表头,当所述缓存链表未写满时,将所述数据及所述数据的逻辑页号写入所述缓存链表。本专利技术提供的一种数据读取方法,所述方法包括:获取待读取数据的逻辑页号,并判断设置在二级存储器中的缓存链表中是否存在所述逻辑页号;若是,则读取所述缓存链表中所述逻辑页号对应的数据;若否,则根据所述逻辑页号在3D闪存的物理块中查找所述逻辑页号对应的数据并读取。本专利技术提供的一种数据写入装置,所述装置包括:获取模块,用于获取待写入3D闪存的数据和所述数据的逻辑页号;判断模块,用于判断配置在二级存储器中的缓存链表中是否存在所述逻辑页号;写入模块,用于若所述缓存链表中存在所述逻辑页号,则将所述数据更新在所述缓存链表中所述逻辑页号对应的位置;所述写入模块,用于若所述缓存链表中不存在所述逻辑页号,则当所述缓存链表写满时,将所述缓存链表的表尾的数据移至所述3D闪存中,并将所述数据及所述数据的逻辑页号写入所述表头,当所述缓存链表未写满时,将所述数据及所述数据的逻辑页号写入所述缓存链表。本专利技术提供的一种数据读取装置,所述装置包括:获取模块,用于获取待读取数据的逻辑页号;判断模块,用于判断设置在二级存储器中的缓存链表中是否存在所述逻辑页号;读取模块,用于若所述二级存储器中的缓存链表中存在所述逻辑页号,则读取所述缓存链表中所述逻辑页号对应的数据;所述读取模块,还用于若所述二级存储器中的缓存链表中存在所述逻辑页号,则根据所述逻辑页号在3D闪存的物理块中查找所述逻辑页号对应的数据并读取。本专利技术提供的一种数据写入、读取方法和装置,通过将待写数据写入到缓存链表中,并在缓存链表写满的情况下,再将数据写入到3D闪存的物理块中,如此,可以极大的减少对3D闪存的访问,避免由于3D闪存的温度升高造成的存储性能降低的问题。此外,由于对3D闪存的访问量减少,还可以避免读取数据时临近的物理块间相互干扰造成的数据存储可靠性降低的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例。图1是本专利技术第一实施例提供的一种数据写入方法的实现流程示意图;图2是本专利技术第二实施例提供的一种数据写入方法的实现流程示意图;图3是本专利技术第三实施例提供的一种数据读取方法的实现流程示意图;图4是本专利技术第四实施例提供的一种数据读取方法的实现流程示意图;图5是本专利技术第五实施例提供的一种数据写入装置的结构示意图;图6是本专利技术第六实施例提供的一种数据写入装置的结构示意图;图7是本专利技术第七实施例和第八实施例提供的一种数据读取装置的结构示意图。具体实施方式为使得本专利技术的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而非全部实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,图1为本专利技术第一实施例提供的数据写入方法的实现流程示意图,图1所示的数据写入方法主要包括以下步骤:S101、获取待写入3D闪存的数据和该数据的逻辑页号;逻辑页号为用于表示待写入3D闪存的数据的地址,通过逻辑页号可以在映射表中查找到数据待写入3D闪存的物理块号和物理页号。S102、判断配置在二级存储器中的缓存链表中是否存在该逻辑页号;二级存储器为非易失性存储器(NonVolatileMemory,NVM),可以为静态随机存取存储器(StaticRandomAccessMemory,SRAM),动态随机存取存储器(DynamicRandomAccessMemory,DRAM),数据方向寄存器(DataDirectionRegister,DDR)或同步动态随机存储器(SynchronousDynamicRandomAccessMemory,SDRAM)等。逻辑页号表示待写入3D闪存的数据的地址,通过逻辑页号可以在映射表中查找到数据待写入3D闪存的物理块号和物理页号。S103、若该缓存链表中存在该逻辑页号,则将该数据更新在该缓存链表中该逻辑页号对应的位置;S104、若该缓存链表中不存在该逻辑页号,则当该缓存链表写满时,将该缓存链表的表尾的数据移至该3D闪存中,并将该数据及该数据的逻辑页号写入该表头,当该缓存链表未写满时,将该数据及该数据的逻辑页号写入该缓存链表。缓存链表包括顺次排列的多个用于存储数据和数据的逻辑页号的单元,其中,每一个单元包括两个部分,一部分用于存储数据,另一部分用于存储该数据对应的逻辑页号。缓存链表可以为一个,也可以为多个。本专利技术提供的一种数据写入方法,通过将待写数据写入到缓存链表中,并在缓存链表写满的情况下,再将数据写入到3D闪存的物理块中,如此,可以极大的减少对3D闪存的访问,避免由于3D闪存的温度升高造成的存储性能降低的问题。此外,由于对3D闪存的访问量减少,还可以避免读取数据时临近的物理块间相互干扰造成的数据存储可靠性降低的问题。请参阅图2,图2为本专利技术第二实施例提供的数据写入方法的实现流程示意图,图2所示本文档来自技高网...
一种数据写入、读取方法和装置

【技术保护点】
一种数据写入方法,其特征在于,所述方法包括:获取待写入3D闪存的数据和所述数据的逻辑页号;判断配置在二级存储器中的缓存链表中是否存在所述逻辑页号;若所述缓存链表中存在所述逻辑页号,则将所述数据更新在所述缓存链表中所述逻辑页号对应的位置;若所述缓存链表中不存在所述逻辑页号,则当所述缓存链表写满时,将所述缓存链表的表尾的数据移至所述3D闪存中,并将所述数据及所述数据的逻辑页号写入所述表头,当所述缓存链表未写满时,将所述数据及所述数据的逻辑页号写入所述缓存链表。

【技术特征摘要】
1.一种数据写入方法,其特征在于,所述方法包括:获取待写入3D闪存的数据和所述数据的逻辑页号;判断配置在二级存储器中的缓存链表中是否存在所述逻辑页号;若所述缓存链表中存在所述逻辑页号,则将所述数据更新在所述缓存链表中所述逻辑页号对应的位置;若所述缓存链表中不存在所述逻辑页号,则当所述缓存链表写满时,将所述缓存链表的表尾的数据移至所述3D闪存中,并将所述数据及所述数据的逻辑页号写入所述表头,当所述缓存链表未写满时,将所述数据及所述数据的逻辑页号写入所述缓存链表。2.根据权利要求1所述的方法,其特征在于,所述缓存链表包括一级缓存链表和二级缓存链表,则所述判断配置在二级存储器中的缓存链表中是否存在所述逻辑页号,具体包括:判断所述一级缓存链表或所述二级缓存链表中是否存在所述逻辑页号;所述若所述缓存链表中存在所述逻辑页号,则将所述数据更新在所述缓存链表中所述逻辑页号对应的位置,具体包括:若所述一级缓存链表存在所述逻辑页号,则将所述数据更新在所述一级缓存链表中所述逻辑页号对应的位置;若所述二级缓存链表存在所述逻辑页号,则将所述数据更新在所述二级缓存链表中所述逻辑页号对应的位置。3.根据权利要求2所述的方法,其特征在于,所述将所述数据更新在所述一级缓存链表中所述逻辑页号对应的位置之后,还包括:判断所述逻辑页号对应的数据是否为第二次写入;若是,则将更新后的数据和所述逻辑页号移至所述二级缓存链表的表头。4.根据权利要求3所述的方法,其特征在于,所述将所述数据更新在所述二级缓存链表中所述逻辑页号对应的位置之后,还包括:判断更新后的数据是否位于所述二级缓存链表的表头;若是,则将所述更新后的数据和所述逻辑页号移至所述一级缓存链表的表头;若否,则将所述更新后的数据和所述逻辑页号移至所述二级缓存链表的表头。5.根据权利要求2所述的方法,其特征在于,所述若所述缓存链表中不存在所述逻辑页号,则当所述缓存链表写满时,将所述缓存链表的表尾的数据移至所述3D闪存中,并将所述数据及所述数据的逻辑页号写入所述表尾,当所述缓存链表未写满时,将所述数据及所述数据的逻辑页号写入所述缓存链表,具体包括:若所述一级缓存链表和所述二级缓存链表中均不存在所述逻辑页号,则判断所述一级缓存链表是否写满;若所述一级缓存链表已写满,则判断所述二级缓存链表是否写满,并当所述二级缓存链表已写满时,将所述二级缓存链表的表尾的数据移至所述3D闪存的物理块中,将所述一级缓存链表的表尾的数据移至所述二级缓存链表的表头,并将所述数据和所述逻辑页号写入所述一级缓存链表的表头,以及当所述二级缓存链表未写满时,将所述一级缓存链表的表尾的数据移至所述二级缓存链表的表头,并将所述数据和所述逻辑页号写入所述一级缓存链表的表头;若所述一级缓存链表未写满,则将所述数据和所述逻辑页号写入所述一级缓存链表中的表头。6.根据权利要求5所述的方法,其特征在于,所述将所述二级缓存链表的表尾的数据移至所述3D闪存的物理块中,具体包括:根据所述表尾的数据的逻辑页号,在预置的映射表中查找所述表尾的数据的逻辑块号,并判断预置的最近擦除链表中是否存在所述逻辑块号,所述映射表及所述最近擦除链表预置在所述3D闪存中;若否,则将所述表尾的数据写入到所述3D闪存中所述逻辑块号对应的物理块中,并在所述最近擦除链表中记录所述逻辑块号对应的物理块的物理块号和擦除次数1;若是,则判断所述逻辑块号对应的物理块的擦除次数是否大于预置的擦除次数;若大于,则将所述表尾的数据写入所述3D闪存中的预置的空闲链表中擦除次数最少的物理块。7.一种数据读取方法,其特征在于,所述方法包括:获取待读取数据的逻辑页号,并判断设置在二级存储器中的缓存链表中是否存在所述逻辑页号;若是,则读取所述缓存链表中所述逻辑页号对应的数据;若否,则根据所述逻辑页号在3D闪存的物理块中查找所述逻辑页号对应的数据并读取。8.根据权利要求7所述的方法,其特征在于,所述缓存链表包括一级缓存链表和二级缓存链表,则所述判断设置在二级存储器中的缓存链表中是否存在所述逻辑页号,具体包括:判断所述一级缓存链表中或所述二级缓存链表中是否存在所述逻辑页号;则所述若是,则读取所述缓存链表中所述逻辑页号对应的数据,具体包括:若所述一级缓存链表中存在所述逻辑页号,则读取所述一级缓存链表中所述逻辑页号对应的数据;若所述二级缓存链表中存在所述逻辑页号,则读取所述二级缓存链表中所述逻辑页号对应的数据;所述若否,则根据所述逻辑页号在3D闪存的物理块中查找所述逻辑页号对应的数据并读取,具体包括:若所述一级缓存链表中和所述二级缓存链表中均不存在所述逻辑页号...

【专利技术属性】
技术研发人员:王毅黄江帆梁悦锋许文豪陈林柯晓阳
申请(专利权)人:深圳大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1