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

技术编号:18426157 阅读:21 留言:0更新日期:2018-07-12 01:57
本发明专利技术实施例提供一种读写数据的方法和装置,写数据的方法包括:接收写数据请求;写数据请求包括待写数据和待写数据对应的逻辑区域;将待写数据存储至NAND闪存系统中的至少一个物理块区域;建立每个物理块区域的首地址和长度,与物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。本发明专利技术实施例可以实现基于映射节点的映射表,不仅有效减小了映射表的大小,节省了维护映射表的成本,还可以很好地平衡不同长度数据访问时查找映射地址的性能和稳定性,降低了映射方法对应用的依赖性。

A method and device for reading and writing data

An embodiment of the invention provides a method and device for reading and writing data. The method of writing data includes receiving and writing data requests, writing a data request including a logical area corresponding to the pending data and pending data, storing at least one physical block area in the NAND flash system, and setting up the first ground of each physical block area. The mapping relationship between the address and length and the first address of the logical block corresponding to the stored data in the physical block area is used as the mapping node in the mapping table. The embodiment of this invention can realize mapping table based on mapping node. It can not only reduce the size of the mapping table, save the cost of maintaining the mapping table, but also balance the performance and stability of the mapping address in different length data access, and reduce the dependence of the mapping method on the application.

【技术实现步骤摘要】
一种读写数据的方法和装置
本专利技术涉及存储
,特别是涉及一种写数据的方法、一种写数据的装置、一种读数据的方法和一种读数据的装置。
技术介绍
NAND闪存系统的地址映射方法,从早期的块映射方法和混合映射方法,发展到目前主流采用的页映射方法及最新的4KB映射方法。但是,现有的各种映射方法对应用存在较强的依赖性,也就是说,每种映射方法针对特定的应用具有较好的优越性,针对另一个应用却具有较差的实际效果。例如,块映射方法和混合映射方法对大数据访问可以提供较高性能和稳定性的支持,但对小粒度的数据访问会有两极分化的表现;页映射方法和4KB映射方法虽然具有较好的小数据访问性能,但是相对块映射方法和混合映射方法而言,在大数据访问时的稳定性较差。
技术实现思路
鉴于上述问题,本专利技术实施例的目的在于提供一种写数据的方法、一种写数据的装置、一种读数据的方法和一种读数据的装置,以解决现有的各种映射方法对应用存在强依赖性的问题。为了解决上述问题,本专利技术实施例公开了一种写数据的方法,应用于NAND闪存系统,包括:接收写数据请求;所述写数据请求包括待写数据和所述待写数据对应的逻辑区域;将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域;建立每个所述物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。可选地,所述将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域,包括:根据所述待写数据的长度确定用于存储所述待写数据的至少一个物理块区域。为了解决上述问题,本专利技术实施例还公开了一种读数据的方法,应用于NAND闪存系统,包括:接收读数据请求;所述读数据请求包括待读逻辑区域;根据所述待读逻辑区域的首地址和所述待读逻辑区域的末地址确定所述读数据请求需调用的各映射节点;所述映射节点为映射表中物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系;按所述待读逻辑区域对应逻辑地址的顺序,依次从所述待读逻辑区域的首地址对应映射节点中的物理地址开始,至所述待读逻辑区域的末地址对应映射节点中的物理地址,读取所述读数据请求需调用的各映射节点中物理块区域的数据。可选地,确定所述读数据请求需调用的各映射节点,包括:根据所述待读逻辑区域的首地址和末地址遍历所述映射表中所有映射节点的逻辑块首地址,以确定所述待读逻辑区域的首地址对应的首映射节点、所述待读逻辑区域的末地址对应的末映射节点、以及所述首映射节点和所述末映射节点之间的映射节点。可选地,确定所述待读逻辑区域的首地址对应映射节点中的物理地址,包括:根据所述待读逻辑区域的首地址对应映射节点中,物理块区域的首地址、对应逻辑块的首地址,确定所述待读逻辑区域的首地址对应映射节点中的物理地址。可选地,确定所述待读逻辑区域的末地址对应映射节点中的物理地址,包括:根据所述待读逻辑区域的末地址对应映射节点中,物理块区域的首地址、对应逻辑块的首地址,确定所述待读逻辑区域的末地址对应映射节点中的物理地址。为了解决上述问题,本专利技术实施例还公开了一种写数据的装置,应用于NAND闪存系统,包括:第一接收模块,用于接收写数据请求;所述写数据请求包括待写数据和所述待写数据对应的逻辑区域;存储模块,用于将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域;映射建立模块,用于建立每个所述物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。可选地,所述存储模块包括:存储区域确定单元,用于根据所述待写数据的长度确定用于存储所述待写数据的至少一个物理块区域。为了解决上述问题,本专利技术实施例还公开了一种读数据的装置,应用于NAND闪存系统,包括:第二接收模块,用于接收读数据请求;所述读数据请求包括待读逻辑区域;节点确定模块,用于根据所述待读逻辑区域的首地址和所述待读逻辑区域的末地址确定所述读数据请求需调用的各映射节点;所述映射节点为映射表中物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系;数据读取模块,用于按所述待读逻辑区域对应逻辑地址的顺序,依次从所述待读逻辑区域的首地址对应映射节点中的物理地址开始,至所述待读逻辑区域的末地址对应映射节点中的物理地址,读取所述读数据请求需调用的各映射节点中物理块区域的数据。可选地,所述节点确定模块包括:遍历单元,用于根据所述待读逻辑区域的首地址和末地址遍历所述映射表中所有映射节点的逻辑块首地址,以确定所述待读逻辑区域的首地址对应的首映射节点、所述待读逻辑区域的末地址对应的末映射节点、以及所述首映射节点和所述末映射节点之间的映射节点。可选地,所述数据读取模块包括:第一确定单元,用于根据所述待读逻辑区域的首地址对应映射节点中,物理块区域的首地址、对应逻辑块的首地址,确定所述待读逻辑区域的首地址对应映射节点中的物理地址。可选地,所述数据读取模块包括:第二确定单元,用于根据所述待读逻辑区域的末地址对应映射节点中,物理块区域的首地址、对应逻辑块的首地址,确定所述待读逻辑区域的末地址对应映射节点中的物理地址。本专利技术实施例包括以下优点:在写数据时,通过将待写数据存储至NAND闪存系统中的至少一个物理块区域,并建立每个物理块区域的首地址和长度,与物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。这样,由于实现了基于映射节点的映射表,不仅有效减小了映射表的大小,节省了维护映射表的成本,在读数据时,还可以很好地平衡不同长度数据访问时查找映射表中映射地址的性能和稳定性,便于降低映射方法对应用的依赖性。附图说明图1是本专利技术的一种写数据的方法实施例的步骤流程图;图2是本专利技术的一种读数据的方法实施例的步骤流程图;图3是本专利技术的另一种读数据的方法实施例的步骤流程图;图4是本专利技术的一种写数据的装置实施例的结构框图;图5是本专利技术的一种读数据的装置实施例的结构框图;图6是本专利技术的另一种读数据的装置实施例的结构框图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。实施例一参照图1,其示出了本专利技术的一种写数据的方法实施例的步骤流程图,该写数据的方法可以应用于NAND闪存系统,该写数据的方法具体可以包括如下步骤:步骤S10,接收写数据请求;写数据请求可以包括待写数据和待写数据对应的逻辑区域。其中,待写数据可以为任意类型的数据。步骤S20,将待写数据存储至NAND闪存系统中的至少一个物理块区域。步骤S30,建立每个物理块区域的首地址和长度,与物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。需要说明的是,步骤S20中,每个物理块区域的物理地址连续,物理块区域的大小和对应逻辑块的大小相同,且物理块区域的首地址与对应逻辑块的首地址为一一对应关系。其中,在步骤S20之前,至少一个物理块区域可以为空闲区域,每个物理块区域的物理地址连续,此时,步骤S20可以直接将待写数据存储至至少一个物理块区域。或者,至少一个物理块区域中存在数据且数据为无效数据,此时,步骤S20可以清除至少一个物理块区域中的数据,进而将待写数据存储至本文档来自技高网...

【技术保护点】
1.一种写数据的方法,应用于NAND闪存系统,其特征在于,包括:接收写数据请求;所述写数据请求包括待写数据和所述待写数据对应的逻辑区域;将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域;建立每个所述物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。

【技术特征摘要】
1.一种写数据的方法,应用于NAND闪存系统,其特征在于,包括:接收写数据请求;所述写数据请求包括待写数据和所述待写数据对应的逻辑区域;将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域;建立每个所述物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系,以作为映射表中的映射节点。2.根据权利要求1所述的方法,其特征在于,所述将所述待写数据存储至所述NAND闪存系统中的至少一个物理块区域,包括:根据所述待写数据的长度确定用于存储所述待写数据的至少一个物理块区域。3.一种读数据的方法,应用于NAND闪存系统,其特征在于,包括:接收读数据请求;所述读数据请求包括待读逻辑区域;根据所述待读逻辑区域的首地址和所述待读逻辑区域的末地址确定所述读数据请求需调用的各映射节点;所述映射节点为映射表中物理块区域的首地址和长度,与所述物理块区域中存储数据对应逻辑块的首地址之间的映射关系;按所述待读逻辑区域对应逻辑地址的顺序,依次从所述待读逻辑区域的首地址对应映射节点中的物理地址开始,至所述待读逻辑区域的末地址对应映射节点中的物理地址,读取所述读数据请求需调用的各映射节点中物理块区域的数据。4.根据权利要求3所述的方法,其特征在于,确定所述读数据请求需调用的各映射节点,包括:根据所述待读逻辑区域的首地址和末地址遍历所述映射表中所有映射节点的逻辑块首地址,以确定所述待读逻辑区域的首地址对应的首映射节点、所述待读逻辑区域的末地址对应的末映射节点、以及所述首映射节点和所述末映射节点之间的映射节点。5.根据权利要求3所述的方法,其特征在于,确定所述待读逻辑区域的首地址对应映射节点中的物理地址,包括:根据所述待读逻辑区域的首地址对应映射节点中,物理块区域的首地址、对应逻辑块的首地址,确定所述待读逻辑区域的首地址对应映射节点中的物理地址。6.根据权利要求3所述的方法,其...

【专利技术属性】
技术研发人员:朱荣臻
申请(专利权)人:北京兆易创新科技股份有限公司
类型:发明
国别省市:北京,11

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

1