CN113050877B - 一种映射表存储的方法、装置、电子设备及存储介质 - Google Patents
一种映射表存储的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113050877B CN113050877B CN201911381017.5A CN201911381017A CN113050877B CN 113050877 B CN113050877 B CN 113050877B CN 201911381017 A CN201911381017 A CN 201911381017A CN 113050877 B CN113050877 B CN 113050877B
- Authority
- CN
- China
- Prior art keywords
- mapping table
- physical block
- stored
- new
- system management
- 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
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 646
- 238000000034 method Methods 0.000 title claims abstract description 67
- 230000015654 memory Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/0608—Saving storage space on 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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]
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供一种映射表存储的方法、装置、电子设备及存储介质。所述方法包括:在第一物理块被***映射表和基础映射表第一次存满且有新的***映射表和新的基础映射表需要存储时,直接将新的***映射表和新的基础映射表存储于第二物理块内,更新并存储更新后的***管理映射表;在第二物理块被新的***映射表和新的基础映射表存满且后续有新的***映射表和新的基础映射表需要存储时,擦除第一物理块,第一物理块继续存储后续新的***映射表和新的基础映射表,更新并存储更新后的***管理映射表。本发明不但加快了eMMC中映射表的存储速度,而且极大的缩减了映射表占用的存储空间,提高eMMC的运行速率和工作效率。
Description
技术领域
本发明涉及存储器领域,特别是一种映射表存储的方法、装置、电子设备及存储介质。
背景技术
eMMC(Embedded Multi Media Card)为嵌入式多媒体卡,eMMC是MMC协会订立的,主要针对手机或平板电脑等电子产品的内嵌式存储器标准规格,eMMC在封装中集成了一个控制器,它提供标准接口并管理闪存,使得厂商能专注于产品开发的其他部分,并缩短向市场推出产品的时间。
目前对eMMC来说,尤其是对eMMC的产品固件(FW)来说,各种映射表的管理非常重要,一个映射表建立以及存储方式的好坏,将会影响到eMMC的运行速率和工作效率,目前的eMMC映射表的存储方式较为复杂,导致eMMC的运行速率和工作效率均较低。
发明内容
鉴于上述问题,本发明提供一种映射表存储的方法、装置、电子设备及存储介质,提高了eMMC的运行速率和工作效率。
本发明实施例提供了一种映射表存储的方法,所述方法应用于eMMC,所述eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,所述***映射表和所述基础映射表存储于所述eMMC中物理块内,所述物理块包括:第一物理块和第二物理块,所述第一物理块和所述第二物理块的地址存储于所述***管理映射表中,所述方法包括:
在所述第一物理块被所述***映射表和所述基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第一物理块,所述第一物理块继续存储后续新的***映射表和新的基础映射表,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第二物理块,将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述物理块还包括:第三物理块和第四物理块,所述第三物理块和所述第四物理块的地址存储于所述***管理映射表中,所述方法还包括:
在所述第二物理块被***映射表和基础映射表存满,所述第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于所述第三物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第三物理块被新的***映射表和新的基础映射表存满,所述第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于所述第四物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述eMMC中的映射表还包括:区映射表、段映射表,所述区映射表和所述段映射表存储于所述***映射表对应的块内,所述段映射表存储所述eMMC中区包括的Nand颗粒的地址和页地址,所述方法还包括:
当所述eMMC中的区变动时,所述区映射表和所述段映射表变化更新;
当所述区映射表和所述段映射表变化更新时,存储所述区映射表和所述段映射表的所述***映射表对应的块的地址变化,使得所述***映射表更新。
可选地,所述eMMC中的映射表还包括:根映射表,所述段映射表还存储于所述段映射表对应的块内,所述方法还包括:
在所述eMMC上电时,根据根结构体,查询段映射表对应的块内存储的段映射表,所述根结构体用于构建所述eMMC中的所述根映射表;
根据所述段映射表和根结构体,在所述eMMC的内存中建立所述根映射表,所述根映射表不存储,在所述eMMC下电时丢失。
可选地,所述eMMC中的映射表还包括:***根映射表,所述物理块还包括:第五物理块和第六物理块,第五物理块和所述第六物理块的地址存储于所述***根映射表中,所述***管理映射表存储于所述第五物理块中,所述方法还包括:
在所述第五物理块被所述***管理映射表第一次存满,且有新的***管理映射表需要存储的情况下,直接将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表;
在所述第六物理块被新的***管理映射表的情况下,且后续有新的***管理映射表需要存储的情况下,擦除所述第五物理块,所述第五物理块继续存储后续新的***管理映射表,更新所述***根映射表并存储更新后的***根映射表;
在所述第五物理块被后续新的***管理映射表存满,且还有新的***管理映射表需要存储的情况下,擦除所述第六物理块,将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表。
可选地,所述物理块还包括:第七物理块和第八物理块,所述第七物理块和所述第八物理块的地址存储于所述***根映射表中,所述方法还包括:
在所述第六物理块被***管理映射表存满,所述第五物理块的擦除次数达到预设值,且有新的***管理映射表需要存储的情况下,将新的***管理映射表存储于所述第七物理块内,更新所述***根映射表并存储更新后的***根映射表;
在所述第七物理块被新的***管理映射表存满,所述第六物理块的擦除次数达到预设值,且后续有新的***管理映射表需要存储的情况下,将后续新的***管理映射表存储于所述第八物理块内,更新所述***根映射表并存储更新后的***根映射表。
本发明实施例还提供了一种映射表存储的装置,所述装置应用于eMMC,所述eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,所述***映射表和所述基础映射表存储于所述eMMC中物理块内,所述物理块包括:第一物理块和第二物理块,所述第一物理块和所述第二物理块的地址存储于所述***管理映射表中,所述装置包括:
第一存储更新模块,用于在所述第一物理块被所述***映射表和所述基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第一擦除后存储更新模块,用于在所述第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第一物理块,所述第一物理块继续存储后续新的***映射表和新的基础映射表,更新所述***管理映射表并存储更新后的***管理映射表;
第二擦除后存储更新模块,用于在所述第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第二物理块,将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述物理块还包括:第三物理块和第四物理块,所述第三物理块和所述第四物理块的地址存储于所述***管理映射表中,所述装置还包括:
第三擦除后存储更新模块,用于在所述第二物理块被***映射表和基础映射表存满,所述第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于所述第三物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第四擦除后存储更新模块,用于在所述第三物理块被新的***映射表和新的基础映射表存满,所述第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于所述第四物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述eMMC中的映射表还包括:区映射表、段映射表,所述区映射表和所述段映射表存储于所述***映射表对应的块内,所述段映射表存储所述eMMC中区包括的Nand颗粒的地址和页地址,所述装置还包括:
区和段映射表更新模块,用于当所述eMMC中的区变动时,更新所述区映射表和所述段映射表;
***映射表更新模块,用于当所述区映射表和所述段映射表变化更新时,存储所述区映射表和所述段映射表的所述***映射表对应的块的地址变化,更新所述***映射表。
可选地,所述eMMC中的映射表还包括:根映射表,所述段映射表还存储于所述段映射表对应的块内,所述装置还包括:
查询模块,用于在所述eMMC上电时,根据根结构体,查询段映射表对应的块内存储的段映射表,所述根结构体用于构建所述eMMC中的所述根映射表;
建立根映射表模块,用于根据所述段映射表和根结构体,在所述eMMC的内存中建立所述根映射表,所述根映射表不存储,在所述eMMC下电时丢失。
可选地,所述eMMC中的映射表还包括:***根映射表,所述物理块还包括:第五物理块和第六物理块,第五物理块和所述第六物理块的地址存储于所述***根映射表中,所述***管理映射表存储于所述第五物理块中,所述装置还包括:
第二存储更新模块,用于在所述第五物理块被所述***管理映射表第一次存满,且有新的***管理映射表需要存储的情况下,直接将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表;
第五擦除后存储更新模块,用于在所述第六物理块被新的***管理映射表的情况下,且后续有新的***管理映射表需要存储的情况下,擦除所述第五物理块,所述第五物理块继续存储后续新的***管理映射表,更新所述***根映射表并存储更新后的***根映射表;
第六擦除后存储更新模块,用于在所述第五物理块被后续新的***管理映射表存满,且还有新的***管理映射表需要存储的情况下,擦除所述第六物理块,将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表。
可选地,所述物理块还包括:第七物理块和第八物理块,所述第七物理块和所述第八物理块的地址存储于所述***根映射表中,所述装置还包括:
第三存储更新模块,用于在所述第六物理块被***管理映射表存满,所述第五物理块的擦除次数达到预设值,且有新的***管理映射表需要存储的情况下,将新的***管理映射表存储于所述第七物理块内,更新所述***根映射表并存储更新后的***根映射表;
第四存储更新模块,用于在所述第七物理块被新的***管理映射表存满,所述第六物理块的擦除次数达到预设值,且后续有新的***管理映射表需要存储的情况下,将后续新的***管理映射表存储于所述第八物理块内,更新所述***根映射表并存储更新后的***根映射表。
本发明提供的一种映射表存储的方法,将***映射表和基础映射表存储在同一个物理块中,并且只在存储***映射表和基础映射表的物理块变更的情况下,才更新***管理映射表,同时存储更新后的***管理映射表,而不需要每当***映射表或者基础映射表变化时就更新***管理映射表并存储更新后的***管理映射表,不但加快了整个eMMC中映射表的存储速度,而且极大的缩减了映射表占用的存储空间,从而提高了eMMC的运行速率和工作效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明一种映射表存储方法的流程图;
图2是本发明一种映射表存储装置的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。应当理解,此处所描述的具体实施例仅用以解释本发明,仅仅是本发明一部分实施例,而不是全部的实施例,并不用于限定本发明。
发明人发现,目前eMMC中映射表类型很多,且存储较为复杂,目前eMMC中映射表一般包括:区映射表(zone table)、段映射表(segment table)、根映射表(root table)、***映射表(meta table)、基础映射表(basic table)、***管理映射表(metamanage table)以及***根映射表(metaroot table),这些映射表分别有对应的块为:zone block、segmentblock、root block、metablock、basic block、metamanage block以及metaroot block。
其中zone block中存储的是很多个map表(eMMC中物理块的逻辑4k的地址和物理4k地址的对应关系表),一个eMMC中根据其自身容量的大小会被划分成很多个zone,在eMMC编程、擦除等操作的使用过程中,还根据各种数据内容的大小,map表并不固定,会随时变化,存储map表的zone block自然也是随时变化的,当zone table变化时,zone block也跟着变化。
zone table存储于zone block中,同时,segment table也记录zone的Nand颗粒(chip)的地址和页(page)地址,由于zone的划分也是变化的,因此segment table也是变化的,segment table存储于segment block中,表征zone table和segment block对应关系,以及segment table和segment block对应关系的映射表为root table,root table存储于root block中,表征root table和rootblock对应关系的映射表为meta table,meta table存储于meta block中,表征meta table和meta block对应关系的映射表为basic table,basic table存储于basic block中,表征basic table和basic block对应关系的映射表为metamanage table,metamanage table存储于metamanage block中,表征metamanagetable和metamanage block对应关系的映射表为metaroot table,metaroot table存储于metaroot block中。
根据上述结构,当zone发生变化,或者map表发生变化,zone table和segmenttable都会变化,相应的存储于segment block中的地址会变化,则引起root table变化,root table变化,相应的存储于root block中的地址会变化,则引起meta table变化,metatable变化,相应的存储于meta block中的地址会变化,则引起basic table变化,basictable变化,相应的存储于basic block中的地址会变化,则引起metamanage table变化,metamanage table变化,相应的存储于metamanage block中的地址会变化,则引起metaroot table变化。
即在eMMC使用过程中,任何zone发生变化,或者map表发生变化,均会使得各级映射表相应的变化,而每一个映射表发生变化时,均需要进行映射表的存储,造成了eMMC需要处理大量的数据,导致了eMMC运行速率和工作效率的降低。
基于以上问题,发明人经过深入研究,结合eMMC自身的特点,经过大量实地测试和仿真计算,大胆地、创造性的提出本发明的映射表储存方法,利用两个物理块相互存储,只在块更换时存储metamanage table和metaroot table的方法,加快了映射表的存储速度,缩减了映射表占用的存储空间。以下对发明人提出的解决方案进行详细解释和说明。
参照图1,示出了一种映射表存储方法的流程图,该方法应用于eMMC,eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,***映射表和基础映射表存储于eMMC中物理块内,该物理块包括:第一物理块和第二物理块,第一物理块和第二物理块的地址存储于***管理映射表中,映射表存储的具体方法可以包括如下步骤:
步骤101:在第一物理块被***映射表和基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于第二物理块内,更新***管理映射表并存储更新后的***管理映射表。
本发明实施例中,在eMMC进行映射表存储时,将***映射表(metatable)和基础映射表(basic table)存储于eMMC中第一物理块和第二物理块中,而不再按照目前的存储方式进行存储。第一物理块和第二物理块的地址存储于***管理映射表(metamanage table)中,在初始阶段,meta table和basic table按照eMMC既定的规则变化依次按照顺序存储在第一物理块中,随着eMMC的使用,meta table和basic table持续的存储在第一物理块中直至第一物理块被存满。在第一物理块被存满时,若有新的meta table和basic table需要存储时,第一物理块已不能再存储了,就将新的meta table和basic table存储在第二物理块中,并且,在新的meta table和basic table存储在第二物理块时,更新metamanage table,并存储更新后的metamanage table(metamanage table存储于一个新的物理块blockn中,具体存储方法下文对应处有详细解释和说明,在此先不做赘述)。
作为一个示例:假设第一物理块(block0)和第二物理块(block1)均有1000个page,地址为0~999,每一个新的meta table或者新的basic table占用一个page,随着eMMC的使用,meta table和basic table从block0的page0开始存储,一直存储到page999,代表着block0被存满。当再有新的meta table或者新的basic table时,新的meta table或者新的basic table存储在block1的page0中,并且此时metamanage table更新,更新后的metamanage table存储在一个blockn的page0(假设该blockn也包括page0~page999)上。
步骤102:在第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除第一物理块,第一物理块继续存储后续新的***映射表和新的基础映射表,更新***管理映射表并存储更新后的***管理映射表。
本发明实施例中,在第二物理块存储新的meta table和basic table时,第一物理块中依然存满了原来旧的meta table和basic table。而当第二物理块被新的meta table和basic table存满,且后续有新的meta table和basic table需要存储的情况下,擦除第一物理块(因为旧的meta table和basic table已经不再需要),使得第一物理块可以继续存储后续新的meta table和basictable,并且,在后续新的meta table和basic table存储在第一物理块时,更新metamanage table,并存储更新后的metamanage table。
沿用上述示例:block1从page0开始存储新的meta table和basic table,一直存储到page999,当后续再有新的meta table和basic table需要存储时,block1无法进行存储,擦除block0,将后续新的meta table和basic table存储在block0的page0上,并且此时metamanage table更新,更新后的metamanage table存储在blockn的page1上。
步骤103:在第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除第二物理块,将新的***映射表和新的基础映射表存储于第二物理块内,更新***管理映射表并存储更新后的***管理映射表。
本发明实施例中,当第一物理块再一次被存满,且还有新的meta table和basictable需要存储的情况下,擦除第二物理块,将新的meta table和basictable存储于第二物理块内,更新metamanage table并存储更新后的metamanage table。
沿用上述示例:block0从page0开始存储新的meta table和basic table,一直存储到page999,当后续再有新的meta table和basic table需要存储时,block0无法进行存储,擦除block1,将后续新的meta table和basic table存储在block1的page0上,并且此时metamanage table更新,更新后的metamanage table存储在blockn的page2上。
可选地,由于eMMC所用Nand的自身特性,block擦除次数过多后容易不稳定,存储的数据容易出错,为了保证meta table和basic table的正确性,上述过程中,当block的擦除达到一定次数时,就需要使用新的block:第三物理块(block2)和第四物理块(block3)来存储新的meta table和basictable,同样的,block2和block3的地址存储于metamanagetable中,映射表存储的方法还包括:
步骤S1:在第二物理块被***映射表和基础映射表存满,第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于第三物理块内,更新***管理映射表并存储更新后的***管理映射表。
本发明实施例中,理论上,eMMC中block的特性一样,假若第一物理块的可擦除上限为1000次,那么第二物理块的可擦除上限也为1000次。而根据前述,第一物理块执行第一次擦除先于第二物理执行擦除操作,因此第一物理块也先达到擦除上限次数。因此,在第二物理块被meta table和basictable存满,第一物理块的擦除次数达到预设值(擦除次数上限值),且有新的meta table和basic table需要存储的情况下,使用一个新的物理块,第三物理块存储新的meta table和basic table,并且,更新metamanage table,存储更新后的metamanage table。
沿用上述示例:block1被meta table和basic table存满,而此时block0达到了擦除次数上限1000次,并且还有新的meta table和basic table需要存储的情况下,则新的meta table和basic table存储在block2中,metamanagetable随之更新,更新后的metamanage table存储在新的物理块blockx的page0上。
步骤S2:在第三物理块被新的***映射表和新的基础映射表存满,第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于第四物理块内,更新***管理映射表并存储更新后的***管理映射表。
本发明实施例中,由于第二物理块在第一物理块第一次执行擦除操作之后才执行的第一次擦除操作,因此,在第三物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,本应该擦除第二物理块,但第二物理块肯定也达到了擦除次数上限,所以,将后续新的***映射表和新的基础映射表存储于另一个新的物理块:第四物理块,同时更新***管理映射表并存储更新后的***管理映射表。
沿用上述示例:沿用上述示例:block2被meta table和basic table存满,后续还有新的meta table和basic table需要存储的情况下,而此时block1达到了擦除次数上限1000次,则后续新的meta table和basic table存储在block3中,metamanage table随之更新,更新后的metamanage table存储在新的物理块blockx的page1上。
综上所述,在上述过程中,metamanage table只在存储meta table和basictable的block变换时,才更新并存储一次,并且eMMC的block容量越大,metamanage table更新并存储的次数就越少,这样不但加快了映射表的存储速度,而且缩减了映射表占用的存储空间。
可选地,本发明对zone table、segment table以及root table的相关存储方法进行了改变,zone table和segment table保持原有存储方案的同时,zonetable和segmenttable还存储于meta block内,将root table改为不保存而只是临时建立,root block临时由eMMC的内存构成,该方法具体包括:
步骤T1:当eMMC中的区变动时,区映射表和段映射表变化更新。
步骤T2:当区映射表和段映射表变化更新,且存储区映射表和段映射表的***映射表对应的块存满需要更换新块时,***映射表更新。
本发明实施例中,在eMMC使用过程中,当zone发生变化,或者map表发生变化时,其对应的zone table和segment table随之发送变化更新,而zone table和segment table变化更新时,存储zone table和segment table的meta block的地址也会变化,当存储zonetable和segment table的meta block存满需要更换block时,meta table会变化更新。
沿用上述示例:假设meta block的地址为:page0~page999,从page0开始存储zone table和segment table,一直到page999,当meta block存满,且有新的zone table和segment table需要存储时,使用一个新的meta block,从新的meta block的page0开始存储zone table和segment table。而在更换metablock存储zone table和segment table时,meta table就会更新。
而root table建立的过程如下:
步骤U1:在eMMC上电时,根据根结构体,查询段映射表对应的块内存储的段映射表,根结构体用于构建eMMC中的根映射表。
步骤U2:根据段映射表和根结构体,在eMMC的内存中建立根映射表,根映射表不存储,在eMMC下电时丢失。
本发明实施例中,在eMMC中会预设一个构建root table的根结构体,eMMC上电时,eMMC的控制器会进行自动扫描所有的物理块的操作,在扫描到segment block时,根据根结构体的内容,在segment block中查询到segment table,再根据segment table和根结构体的内容,在eMMC的内存中构建root table,其对应的root block也临时由eMMC的内存构成。根据内存的特性,在eMMC下电时,root table和root block不保存,被释放掉。
上述过程中,虽然增加了zone table和segment table存储于meta block的内容,但是省去了root table和root block的更新和存储,相较于目前的映射表存储方案,并没有增加映射表存储的时间,并且因为没有root block的存在,使得整个映射表占用的存储空间进一步缩小。
可选地,本发明将metamanage table存储于第五物理块block4和第六物理块block5以及第七物理块block6和第八物理块block7中,其工作方式与meta table和basictable存储在block0和block1以及block2和block3中一样,block4、block5、block6以及block7的地址存储于metaroot table中,该方法具体包括:
步骤V1:在第五物理块被***管理映射表第一次存满,且有新的***管理映射表需要存储的情况下,直接将新的***管理映射表存储于第六物理块内,更新***根映射表并存储更新后的***根映射表。
步骤V2:在第六物理块被新的***管理映射表的情况下,且后续有新的***管理映射表需要存储的情况下,擦除第五物理块,第五物理块继续存储后续新的***管理映射表,更新***根映射表并存储更新后的***根映射表。
步骤V1:在第五物理块被后续新的***管理映射表存满,且还有新的***管理映射表需要存储的情况下,擦除第六物理块,将新的***管理映射表存储于第六物理块内,更新***根映射表并存储更新后的***根映射表。
本发明实施例中,与meta table和basic table存储在block0和block1的方法一样,metamanage table首先从block4的page0开始存储,一直到page999存满,且有新的metamanage table需要存储时,将新的metamanage table直接存储到block5的page0,此时更新metaroot table,并将更新后的metaroottable存储在metaroot block中。
在block5中存储到page999时,后续还有新的metamanage table需要存储时,擦除block4,重新从block4的page0开始存储,此时更新metaroot table,并将更新后的metaroot table存储在metaroot block中。当block4再次存满时,再擦除block5进行存储,再更新metaroot table,并将更新后的metaroot table存储在metaroot block中,上述过程一直重复,一直到block4达到擦除次数上限。
同样的,当block4达到擦除次数上限时,有如下步骤:
步骤W1:在第六物理块被***管理映射表存满,第五物理块的擦除次数达到预设值,且有新的***管理映射表需要存储的情况下,将新的***管理映射表存储于第七物理块内,更新***根映射表并存储更新后的***根映射表。
步骤W1:在第七物理块被新的***管理映射表存满,第六物理块的擦除次数达到预设值,且后续有新的***管理映射表需要存储的情况下,将后续新的***管理映射表存储于第八物理块内,更新***根映射表并存储更新后的***根映射表。
本发明实施例中,在block5存满metamanage table,需要擦除block4继续存储metamanage table时,此时block4达到擦除次数上限1000次,则将新的metamanage table存储在block6中,此时更新metaroot table,并将更新后的metaroot table存储在metaroot block中;同理,在block6存满metamanagetable,需要擦除block5继续存储metamanage table时,此时block5达到擦除次数上限1000次,则将新的metamanage table存储在block7中,此时更新metaroot table,并将更新后的metaroot table存储在metaroot block中,之后使用block6和block7来存储metamanage table。
同样的,在上述过程中,metaroot table只在存储metamanage table的block变换时,才更新并存储一次,并且eMMC的block容量越大,metaroot table更新并存储的次数就越少,这同样加快了映射表的存储速度,而且缩减了映射表占用的存储空间。
综上所述,本发明的映射表存储方法,metamanage table只在存储metatable和basic table的block变换时,才更新并存储一次,metaroot table只在存储metamanagetable的block变换时,才更新并存储一次,两者结合,极大的加快了映射表的存储速度,而且缩减了映射表占用的存储空间。
举例说明,假设一个eMMC包括物理块block0、block1……blockn,这些block均有1000个page,地址为:page0~page999,擦除次数上限为1000次,每一个新的meta table、新的basic table以及新的metamanage table占用一个page。
随着eMMC的使用,不断有新的meta table、新的basic table产生,这些metatable和basic table按照顺序从block0的page0开始存储,在存储到page999时,还有新的meta table和basic table需要存储,则eMMC控制新的meta table和basic table直接存储到block1的page0,再从block1的page0开始一直存储到block1的page999,并同时更新metamanage table,将更新后的metamanage table存储在block2的page0上。
当block1的page999存储meta table和basic table后,后续还有新的metatable和basic table,则eMMC控制block0执行擦除操作,再将后续新的metatable和basic table存储在block0的page0中,并同时更新metamanage table,将更新后的metamanage table存储在block2的page1上,之后meta table和basic table一直再次存储到block0的page999时,还有新的meta table和basictable需要存储,则eMMC控制block1执行擦除操作,将新的meta table和basic table再次存储到block1的page0,并同时更新metamanage table,将更新后的metamanage table存储在block2的page2上。
上述过程反复进行,当eMMC控制block0执行第1000次擦除操作后,将新的metatable和basic table存储到block0的page0,更新metamanage table,更新后的metamanagetable将存储在blockx的paget中(指代按照上述存储规则可以运算出的某block中的某页)。
继续上述过程,当meta table和basic table存储到block0的page999时,block1执行第1000次擦除操作,将新的meta table和basic table存储到block1的page0,更新metamanage table,更新后的metamanage table将存储在blockx的page(t+1)中,当metatable和basic table存储到block1的page999,需要擦除block0时,此时因为block0的擦除次数达到上限1000次,所以后续新的meta table和basic table将存储在block3(block2用来存储metamanagetable)的page0中,并同时更新metamanage table,将更新后的metamanagetable存储在blockx的page(t+2)中。
当meta table和basic table存储到block3的page999时,需要继续存储新的metatable和basic table,此时因为block1达到擦除次数上限1000次,所以将新的meta table和basic table存储在block4(block2用来存储metamanage table)的page0中,并同时更新metamanage table,将更新后的metamanage table存储在blockx的page(t+3)中。
存储metamanage table的block的工作方式与上述过程一样,不再赘述。
需要说明的是,上述数据是为了使得实施例更加清晰易懂而例举的简单实施例,并不代表所有非易失存储器的指标,并且因为非易失存储器采用的元器件的制作工艺质量不同,所以能达到的工作状态会有差异,上述数据是满足一般制作工艺情况下,经过大量的实测实验得出的数据,并不代表所有非易失存储器的指标。
参照图2,示出了一种映射表存储装置的框图,该装置应用于eMMC,该eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,***映射表和基础映射表存储于eMMC中物理块内,物理块包括:第一物理块和第二物理块,第一物理块和第二物理块的地址存储于***管理映射表中,映射表存储装置包括:
第一存储更新模块210,用于在所述第一物理块被所述***映射表和所述基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第一擦除后存储更新模块220,用于在所述第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第一物理块,所述第一物理块继续存储后续新的***映射表和新的基础映射表,更新所述***管理映射表并存储更新后的***管理映射表;
第二擦除后存储更新模块230,用于在所述第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第二物理块,将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述物理块还包括:第三物理块和第四物理块,所述第三物理块和所述第四物理块的地址存储于所述***管理映射表中,所述装置还包括:
第三擦除后存储更新模块,用于在所述第二物理块被***映射表和基础映射表存满,所述第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于所述第三物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第四擦除后存储更新模块,用于在所述第三物理块被新的***映射表和新的基础映射表存满,所述第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于所述第四物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
可选地,所述eMMC中的映射表还包括:区映射表、段映射表,所述区映射表和所述段映射表存储于所述***映射表对应的块内,所述段映射表存储所述eMMC中区包括的Nand颗粒的地址和页地址,所述装置还包括:
区和段映射表更新模块,用于当所述eMMC中的区变动时,更新所述区映射表和所述段映射表;
***映射表更新模块,用于当所述区映射表和所述段映射表变化更新时,存储所述区映射表和所述段映射表的所述***映射表对应的块的地址变化,更新所述***映射表。
可选地,所述eMMC中的映射表还包括:根映射表,所述段映射表还存储于所述段映射表对应的块内,所述装置还包括:
查询模块,用于在所述eMMC上电时,根据根结构体,查询段映射表对应的块内存储的段映射表,所述根结构体用于构建所述eMMC中的所述根映射表;
建立根映射表模块,用于根据所述段映射表和根结构体,在所述eMMC的内存中建立所述根映射表,所述根映射表不存储,在所述eMMC下电时丢失。
可选地,所述eMMC中的映射表还包括:***根映射表,所述物理块还包括:第五物理块和第六物理块,第五物理块和所述第六物理块的地址存储于所述***根映射表中,所述***管理映射表存储于所述第五物理块中,所述装置还包括:
第二存储更新模块,用于在所述第五物理块被所述***管理映射表第一次存满,且有新的***管理映射表需要存储的情况下,直接将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表;
第五擦除后存储更新模块,用于在所述第六物理块被新的***管理映射表的情况下,且后续有新的***管理映射表需要存储的情况下,擦除所述第五物理块,所述第五物理块继续存储后续新的***管理映射表,更新所述***根映射表并存储更新后的***根映射表;
第六擦除后存储更新模块,用于在所述第五物理块被后续新的***管理映射表存满,且还有新的***管理映射表需要存储的情况下,擦除所述第六物理块,将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表。
可选地,所述物理块还包括:第七物理块和第八物理块,所述第七物理块和所述第八物理块的地址存储于所述***根映射表中,所述装置还包括:
第三存储更新模块,用于在所述第六物理块被***管理映射表存满,所述第五物理块的擦除次数达到预设值,且有新的***管理映射表需要存储的情况下,将新的***管理映射表存储于所述第七物理块内,更新所述***根映射表并存储更新后的***根映射表;
第四存储更新模块,用于在所述第七物理块被新的***管理映射表存满,所述第六物理块的擦除次数达到预设值,且后续有新的***管理映射表需要存储的情况下,将后续新的***管理映射表存储于所述第八物理块内,更新所述***根映射表并存储更新后的***根映射表。
基于同一发明构思,本发明另一实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如以上任一所述的方法中的步骤。
基于同一发明构思,本发明另一实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行时实现本发明上述任一实施例所述的方法中的步骤。
通过上述实施例,本发明将***映射表和基础映射表存储在同一个物理块中,并且只在存储***映射表和基础映射表的物理块变更的情况下,才更新***管理映射表,同时存储更新后的***管理映射表,而不需要每当***映射表或者基础映射表变化时就更新***管理映射表并存储更新后的***管理映射表,不但加快了整个eMMC中映射表的存储速度,而且极大的缩减了映射表占用的存储空间,从而提高了eMMC的运行速率和工作效率。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、***、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
上面结合附图对本发明的实施例进行了描述,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种映射表存储的方法,其特征在于,所述方法应用于eMMC,所述eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,所述***映射表和所述基础映射表存储于所述eMMC中物理块内,所述物理块包括:第一物理块和第二物理块,所述第一物理块和所述第二物理块的地址存储于所述***管理映射表中,所述方法包括:
在所述第一物理块被所述***映射表和所述基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第一物理块,所述第一物理块继续存储后续新的***映射表和新的基础映射表,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第二物理块,将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
2.根据权利要求1所述的方法,其特征在于,所述物理块还包括:第三物理块和第四物理块,所述第三物理块和所述第四物理块的地址存储于所述***管理映射表中,所述方法还包括:
在所述第二物理块被***映射表和基础映射表存满,所述第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于所述第三物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
在所述第三物理块被新的***映射表和新的基础映射表存满,所述第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于所述第四物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
3.根据权利要求1所述的方法,其特征在于,所述eMMC中的映射表还包括:区映射表、段映射表,所述区映射表和所述段映射表存储于所述***映射表对应的块内,所述段映射表存储所述eMMC中区包括的Nand颗粒的地址和页地址,所述方法还包括:
当所述eMMC中的区变动时,所述区映射表和所述段映射表变化更新;
当所述区映射表和所述段映射表变化更新时,存储所述区映射表和所述段映射表的所述***映射表对应的块的地址变化,使得所述***映射表更新。
4.根据权利要求3所述的方法,其特征在于,所述eMMC中的映射表还包括:根映射表,所述段映射表还存储于所述段映射表对应的块内,所述方法还包括:
在所述eMMC上电时,根据根结构体,查询段映射表对应的块内存储的段映射表,所述根结构体用于构建所述eMMC中的所述根映射表;
根据所述段映射表和根结构体,在所述eMMC的内存中建立所述根映射表,所述根映射表不存储,在所述eMMC下电时丢失。
5.根据权利要求1所述的方法,其特征在于,所述eMMC中的映射表还包括:***根映射表,所述物理块还包括:第五物理块和第六物理块,第五物理块和所述第六物理块的地址存储于所述***根映射表中,所述***管理映射表存储于所述第五物理块中,所述方法还包括:
在所述第五物理块被所述***管理映射表第一次存满,且有新的***管理映射表需要存储的情况下,直接将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表;
在所述第六物理块被新的***管理映射表的情况下,且后续有新的***管理映射表需要存储的情况下,擦除所述第五物理块,所述第五物理块继续存储后续新的***管理映射表,更新所述***根映射表并存储更新后的***根映射表;
在所述第五物理块被后续新的***管理映射表存满,且还有新的***管理映射表需要存储的情况下,擦除所述第六物理块,将新的***管理映射表存储于所述第六物理块内,更新所述***根映射表并存储更新后的***根映射表。
6.根据权利要求5所述的方法,其特征在于,所述物理块还包括:第七物理块和第八物理块,所述第七物理块和所述第八物理块的地址存储于所述***根映射表中,所述方法还包括:
在所述第六物理块被***管理映射表存满,所述第五物理块的擦除次数达到预设值,且有新的***管理映射表需要存储的情况下,将新的***管理映射表存储于所述第七物理块内,更新所述***根映射表并存储更新后的***根映射表;
在所述第七物理块被新的***管理映射表存满,所述第六物理块的擦除次数达到预设值,且后续有新的***管理映射表需要存储的情况下,将后续新的***管理映射表存储于所述第八物理块内,更新所述***根映射表并存储更新后的***根映射表。
7.一种映射表存储的装置,其特征在于,所述装置应用于eMMC,所述eMMC中的映射表包括:***映射表、基础映射表以及***管理映射表,其中,所述***映射表和所述基础映射表存储于所述eMMC中物理块内,所述物理块包括:第一物理块和第二物理块,所述第一物理块和所述第二物理块的地址存储于所述***管理映射表中,所述装置包括:
第一存储更新模块,用于在所述第一物理块被所述***映射表和所述基础映射表第一次存满,且有新的***映射表和新的基础映射表需要存储的情况下,直接将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第一擦除后存储更新模块,用于在所述第二物理块被新的***映射表和新的基础映射表存满,且后续有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第一物理块,所述第一物理块继续存储后续新的***映射表和新的基础映射表,更新所述***管理映射表并存储更新后的***管理映射表;
第二擦除后存储更新模块,用于在所述第一物理块被后续新的***映射表和新的基础映射表存满,且还有新的***映射表和新的基础映射表需要存储的情况下,擦除所述第二物理块,将新的***映射表和新的基础映射表存储于所述第二物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
8.根据权利要求7所述的装置,其特征在于,所述物理块还包括:第三物理块和第四物理块,所述第三物理块和所述第四物理块的地址存储于所述***管理映射表中,所述装置还包括:
第三擦除后存储更新模块,用于在所述第二物理块被***映射表和基础映射表存满,所述第一物理块的擦除次数达到预设值,且有新的***映射表和新的基础映射表需要存储的情况下,将新的***映射表和新的基础映射表存储于所述第三物理块内,更新所述***管理映射表并存储更新后的***管理映射表;
第四擦除后存储更新模块,用于在所述第三物理块被新的***映射表和新的基础映射表存满,所述第二物理块的擦除次数达到预设值,且后续有新的***映射表和新的基础映射表需要存储的情况下,将后续新的***映射表和新的基础映射表存储于所述第四物理块内,更新所述***管理映射表并存储更新后的***管理映射表。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一所述的方法中的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行时实现如权利要求1-6任一所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911381017.5A CN113050877B (zh) | 2019-12-27 | 2019-12-27 | 一种映射表存储的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911381017.5A CN113050877B (zh) | 2019-12-27 | 2019-12-27 | 一种映射表存储的方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113050877A CN113050877A (zh) | 2021-06-29 |
CN113050877B true CN113050877B (zh) | 2024-03-01 |
Family
ID=76506931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911381017.5A Active CN113050877B (zh) | 2019-12-27 | 2019-12-27 | 一种映射表存储的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113050877B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101346703A (zh) * | 2005-12-21 | 2009-01-14 | Nxp股份有限公司 | 具有可块擦除单元的非易失性存储器 |
CN102841851A (zh) * | 2012-07-19 | 2012-12-26 | 深圳市江波龙电子有限公司 | 闪存管理方法和闪存设备 |
US8489942B1 (en) * | 2012-05-31 | 2013-07-16 | Phison Electronics Corp. | Memory management method, and memory controller and memory storage device using the same |
CN104571951A (zh) * | 2014-12-19 | 2015-04-29 | 上海新储集成电路有限公司 | Emmc/ufs卡及其提高emmc/ufs卡读性能的方法 |
CN104809037A (zh) * | 2015-05-13 | 2015-07-29 | 深圳芯邦科技股份有限公司 | eMMC基于特殊页的快速启动方法及装置 |
CN104881249A (zh) * | 2015-05-13 | 2015-09-02 | 深圳芯邦科技股份有限公司 | 一种eMMC的读写方法及装置 |
KR20160019780A (ko) * | 2014-08-12 | 2016-02-22 | 삼성전자주식회사 | 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법 |
CN107402715A (zh) * | 2016-05-20 | 2017-11-28 | 华为终端(东莞)有限公司 | 数据搬移的方法、装置、存储器及终端 |
CN109800179A (zh) * | 2019-01-31 | 2019-05-24 | 维沃移动通信有限公司 | 获取数据的方法、发送数据的方法、主机和内嵌式存储器 |
-
2019
- 2019-12-27 CN CN201911381017.5A patent/CN113050877B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101346703A (zh) * | 2005-12-21 | 2009-01-14 | Nxp股份有限公司 | 具有可块擦除单元的非易失性存储器 |
US8489942B1 (en) * | 2012-05-31 | 2013-07-16 | Phison Electronics Corp. | Memory management method, and memory controller and memory storage device using the same |
CN102841851A (zh) * | 2012-07-19 | 2012-12-26 | 深圳市江波龙电子有限公司 | 闪存管理方法和闪存设备 |
KR20160019780A (ko) * | 2014-08-12 | 2016-02-22 | 삼성전자주식회사 | 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법 |
CN104571951A (zh) * | 2014-12-19 | 2015-04-29 | 上海新储集成电路有限公司 | Emmc/ufs卡及其提高emmc/ufs卡读性能的方法 |
CN104809037A (zh) * | 2015-05-13 | 2015-07-29 | 深圳芯邦科技股份有限公司 | eMMC基于特殊页的快速启动方法及装置 |
CN104881249A (zh) * | 2015-05-13 | 2015-09-02 | 深圳芯邦科技股份有限公司 | 一种eMMC的读写方法及装置 |
CN107402715A (zh) * | 2016-05-20 | 2017-11-28 | 华为终端(东莞)有限公司 | 数据搬移的方法、装置、存储器及终端 |
CN109800179A (zh) * | 2019-01-31 | 2019-05-24 | 维沃移动通信有限公司 | 获取数据的方法、发送数据的方法、主机和内嵌式存储器 |
Also Published As
Publication number | Publication date |
---|---|
CN113050877A (zh) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7788441B2 (en) | Method for initializing and operating flash memory file system and computer-readable medium storing related program | |
EP1906311B1 (en) | Mapping apparatus and method for non-volatile memory supporting different cell types | |
KR101907059B1 (ko) | 비휘발성 메모리 장치의 블록 관리 방법 및 블록 관리 시스템 | |
US20180089074A1 (en) | Techniques to Manage Key-Value Storage at a Memory or Storage Device | |
KR101428189B1 (ko) | 비휘발성 메모리를 갖는 시스템을 위한 고속 트리 플래트닝 | |
EP1909184A2 (en) | Mapping information managing apparatus and method for non-volatile memory supporting different cell types | |
CN113282522A (zh) | 数据储存装置以及其操作方法 | |
US8909895B2 (en) | Memory apparatus | |
CN100367306C (zh) | 非易失性存储卡 | |
US10475516B2 (en) | Data storage device and data erasing method wherein after erasing process, predetermined value is written to indicate completion of said erasing method | |
CN103995855A (zh) | 存储数据的方法和装置 | |
US10606744B2 (en) | Method for accessing flash memory module and associated flash memory controller and electronic device | |
CN112596668A (zh) | 一种存储器的坏块处理方法及*** | |
TWI556103B (zh) | 記憶體裝置及其資料存取方法 | |
CN114356248A (zh) | 一种数据处理方法和装置 | |
CN104461384A (zh) | 一种数据写入方法及存储设备 | |
US20070005929A1 (en) | Method, system, and article of manufacture for sector mapping in a flash device | |
CN109388644B (zh) | 一种数据更新方法及装置 | |
JP4329937B2 (ja) | パーシスタントメモリに書き込む際のエラーを検出する方法および装置 | |
CN113050877B (zh) | 一种映射表存储的方法、装置、电子设备及存储介质 | |
CN101131649A (zh) | 设有闪存的装置的只读存储器升级速度改善方法 | |
US8966159B2 (en) | Flash storage device and data writing method thereof | |
CN105335095B (zh) | 闪存文件***的处理方法及装置 | |
CN116301614A (zh) | 存储器数据存取方法、***、设备和存储介质 | |
CN103456354B (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: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094 Applicant after: Zhaoyi Innovation Technology Group Co.,Ltd. Applicant after: SHANGHAI GEYI ELECTRONIC Co.,Ltd. Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing Applicant before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc. Applicant before: SHANGHAI GEYI ELECTRONIC Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |