CN105183369A - 一种NandFlash中模拟用户数据存储的方法 - Google Patents

一种NandFlash中模拟用户数据存储的方法 Download PDF

Info

Publication number
CN105183369A
CN105183369A CN201510496655.7A CN201510496655A CN105183369A CN 105183369 A CN105183369 A CN 105183369A CN 201510496655 A CN201510496655 A CN 201510496655A CN 105183369 A CN105183369 A CN 105183369A
Authority
CN
China
Prior art keywords
data
physical sector
physical
storage
user data
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.)
Granted
Application number
CN201510496655.7A
Other languages
English (en)
Other versions
CN105183369B (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.)
Zhaoyi Innovation Technology Group Co ltd
Original Assignee
Beijing Jingcun Technology 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 Jingcun Technology Co Ltd filed Critical Beijing Jingcun Technology Co Ltd
Priority to CN201510496655.7A priority Critical patent/CN105183369B/zh
Publication of CN105183369A publication Critical patent/CN105183369A/zh
Application granted granted Critical
Publication of CN105183369B publication Critical patent/CN105183369B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种NandFlash中模拟用户数据存储的方法,包括:获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元,其中每个物理扇区用于存储512字节用户数据,所述用户数据存储信息的长度为8字节;获取所述物理页中带外数据信息,将所述带外数据信息存储到数据文件的第二存储单元,其中,所述数据文件存储于内存中。本发明能够解决FTL测试中用户数据访问效率低的问题。

Description

一种NandFlash中模拟用户数据存储的方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种NandFlash中模拟用户数据存储的方法。
背景技术
eMMC(EmbeddedMultiMediaCard,内嵌式存储器)是一种主要针对于手机或平板电脑等电子设备的内嵌式存储器。其中,eMMC中包含了NandFlash,目前,NandFlash逐渐成为嵌入式系统的主要存储介质之一,没有文件系统来管理NandFlash上的数据是不可想象的。
为了便于管理NandFlash上的数据,引入了FTL(FlashTranslationLayer,文件传输层),一旦FTL出现问题,那么会使数据读写发生错误,更为严重的是eMMC无法被访问。因此,FTL的稳定性及效率对eMMC来说至关重要,在应用FTL对eMMC中NandFlash上的数据进行管理时,首先应该对FTL进行测试。
现有技术中,在FTL的测试过程中,需要不断的访问NandFlash上存储的数据,通过反馈结果判断FTL的稳定性及效率,但是这种测试方法应用到硬件中的NandFlash,不方便测试操作。所以,在FTL测试中,采用模拟的NandFlash进行数据的存储。其中,模拟的NandFlash存储的数据中包括用户数据,在NandFlash模拟储存中用户数据的数据量都是GB级的,由于用户数据的占用的空间比较大,在测试FTL过程中,访问用户数据的效率会降低。
发明内容
有鉴于此,本发明实施例提供一种NandFlash中模拟用户数据存储的方法,以解决FTL测试中用户数据访问效率低的问题。
本发明实施例提供了一种NandFlash中模拟用户数据存储的方法,包括:
获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元,其中每个物理扇区用于存储512字节用户数据,所述用户数据存储信息的长度为8字节;
获取所述物理页中带外数据信息,将所述带外数据信息存储到数据文件的第二存储单元,其中,所述数据文件存储于内存中。
进一步的,每个所述物理页包括8个或16个物理扇区;所述数据文件包括对应的8个或16个第一存储单元。
进一步的,每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址。
进一步的,所述带外数据包括纠错校验数据和所述物理页中各物理扇区的逻辑区块地址与物理地址转换的映射表。
进一步的,所述获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元存包括:
获取物理页中各个所述物理扇区的逻辑区块地址,以及各个所述物理扇区的写入次序;
将数据文件的第一存储单元分为大小相等的第一部分和第二部分;
通过所述第一部分存储物理扇区逻辑区块地址;
通过所述第二部分存储物理扇区的写入次序。
进一步的,所述存储物理扇区中写入次序包括:
采用时间戳记录物理扇区中用户数据的写入次序。
进一步的,所述第二存储单元的大小为16字节。
进一步的,所述每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址与所述物理扇区的写入次序。
本发明实施例提供的一种NandFlash中模拟用户数据存储的方法,通过第一存储单元存储物理页中各个扇区的用户数据,通过第二数据单元存储物理页中的带外数据,能够解决FTL测试中用户数据访问效率低的问题。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明实施例一提供的一种NandFlash中模拟用户数据存储的方法的流程图;
图2是本发明实施例一提供的数据文件的结构框图;
图3是本发明实施例二提供的一种NandFlash中模拟用户数据存储的方法的流程图;
图4是本发明实施例二提供的第一存储单元的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
目前,为了便于管理NandFlash上的数据,引入了FTL,一旦FTL出现问题,那么会使数据读写发生错误,更为严重的是eMMC无法被访问。因此,FTL的稳定性及效率对eMMC来说至关重要,在应用FTL对NandFlash上的数据进行管理时,首先应该对FTL进行测试。
现有技术中,在FTL的测试过程中,需要不断的访问NandFlash上存储的数据,通过反馈结果判断FTL的稳定性及效率,但是这种测试方法应用到硬件中的NandFlash,不方便测试操作。所以,在FTL测试中,采用模拟的NandFlash进行模拟数据的存储,其中,模拟的数据中大部分为用户数据。
在FTL的测试过程中,由测试系统向FTL发送读取NandFlash中用户数据的命令,FTL将命令中包含的逻辑区块地址转换为物理地址,调用该物理地址下的用户数据,如果调用的用户数据与之前写入的用户数据相同,则可以判定FTL对用户数据的管理是正确的;否则FTL出现问题。在FTL的测试中,需要不断的访问NandFlash中的用户数据,用户数据的数据量都是GB级的,占用的空间比较大,访问用户数据的效率会比较低。
实施例一
图1为本发明实施例提供的一种NandFlash中模拟用户数据存储的方法的流程图,如图1所示,该方法包括:
步骤101:获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元,其中每个物理扇区用于存储512字节用户数据,所述用户数据存储信息的长度为8字节。
在本实施例中,第一存储单元的大小为8字节,每个所述物理页包括8个或16个物理扇区,相应的,所述数据文件包括对应的8个或16个第一存储单元。每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址。
在本实施例中,将各个物理扇区用编号进行标识,各个物理扇区的编号即为逻辑区块地址。每个物理扇区存储的用户数据为物理扇区的逻辑区块地址。例如,一个扇区存储的用户数据为0,则该扇区的逻辑区块地址为0。在FTL测试过程中,如果测试系统发送读取逻辑区块地址为0的扇区时,FTL将逻辑区块地址0转换成物理地址;调用该物理地址下物理扇区的数据,如果返回的数据为0,则说明FTL管理用户数据是正确的,否则,FTL是有问题的。
在上述实施例的基础上,所述的逻辑区块地址为0的物理扇区中,包含的用户数据可以为多个0,为了提高用户数据的访问效率,提高FTL的测试效率,逻辑区块地址为0的物理扇区中的用户数据存储为0。
步骤102:获取所述物理页中带外数据信息,将所述带外数据信息存储到数据文件的第二存储单元,其中,所述数据文件存储于内存中。
在上述实施例的基础上,如图2所示,数据文件200包括第一存储单元201和第二存储单元202;第一存储单元201,用于存储物理页中各个物理扇区的用户数据,第二存储单元202,用于存储物理页中带外数据信息。其中,每个物理页优选包括8个物理扇区,相应的,数据文件优选包括为8个第一存储单元。
在本实施例中,所述带外数据包括纠错校验数据和所述物理页中各物理扇区的逻辑区块地址和物理地址转换的映射表。所述第二存储单元的大小为16字节。
具体的,纠错校验数据包括:原错误检查和纠正(ErrorCheckingandCorrecting,ECC)校验和以及新ECC校验和。在NandFlash中写入用户数据时,每256字节生成一个ECC校验和,称之为原ECC校验和;当从NandFlash中读取用户数据的时候,每256字节生成一个ECC校验和,称之为新ECC校验和。校验的时候,将从带外数据中读出的原ECC校验和、新ECC校验和按位异或,若结果为0,则表示不存在错(或是出现了ECC无法检测的错误);若3个字节异或结果中存在11个比特位为1,表示存在一个比特错误,且可纠正;若3个字节异或结果中只存在1个比特位为1,表示带外数据出错;其他情况均表示出现了无法纠正的错误。
在FTL测试的过程中,测试系统发送的写入或者读取的命令中包含的是逻辑区块地址,各个物理扇区在NandFlash中存在相应的物理地址,FTL根据带外数据中逻辑区块地址和物理地址的映射关系将逻辑区块地址转换成物理地址,在对应的物理扇区中写入或读取数据。
本发明实施例一提供的一种NandFlash中模拟用户数据存储的方法,通过第一存储单元存储物理页中各个扇区的用户数据,通过第二数据单元存储物理页中的带外数据,能够解决FTL测试中用户数据访问效率低的问题。
实施例二
图3为本发明实施例二提供的一种NandFlash中模拟用户数据存储的方法的流程图;本实施例在上述实施例的基础上进一步优化了“所述获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元”的步骤。
基于上述优化,如图3所示,本实施例提供的方案具体如下:
步骤301:获取物理页中各个所述物理扇区的逻辑区块地址,以及各个所述物理扇区的写入次序。
在本实施例中,采用时间戳记录物理扇区中用户数据的写入次序。例如,逻辑区块地址为0的物理扇区,第1次被写入,则该物理扇区写入的次序记为0,;当该物理扇区第2次被写入时,则该物理扇区写入的次序记为1。
步骤302:将数据文件的第一存储单元分为大小相等的第一部分和第二部分。
步骤303:通过所述第一部分存储物理扇区逻辑区块地址;
步骤304:通过所述第二部分存储物理扇区的写入次序。
在本实施例中,第一存储单元的大小为8字节,如图4所示,第一存储单元400包括第一部分401和第二部分402。其中,则第一部分401和第二部分402的大小分别为4字节。第一部分401,用于存储物理扇区的逻辑区块地址,第二部分402,用于存储物理扇区的写入次数。每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址与所述物理扇区的写入次序。
在本实施例中,如果一个物理扇区的逻辑区块地址为0,第1次被写入,则该物理扇区记为“00”,该物理扇区存储的数据为“00”。在FTL测试过程中,测试系统发送读取逻辑区块地址为0的物理扇区第1次写入数据的命令时,FTL查询地址映射表,查询到“00”对应的物理地址,读取“00”对应的物理地址下的数据,如果返回的数据为“00”,则FTL对用户数据的管理是正确的,否则FTL出现问题。如果测试系统发送读取逻辑区块地址为0第2次写入数据的命令时,FTL查询地址映射表,查询到“01”对应的物理地址,读取“01”对应的物理地址下的数据,如果返回的数据为“01”,则FTL对用户数据的管理是正确的,否则FTL出现问题。
步骤305:获取所述物理页中带外数据信息,将所述带外数据信息存储到数据文件的第二存储单元,其中,所述数据文件存储于内存中。
本发明实施例二提供的一种NandFlash中模拟用户数据存储的方法,在上述实施例的基础上,对“所述获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元”进行了优化,通过将第一存储单元分为大小相等的第一部分和第二部分,第一部分用于存储物理扇区的逻辑区块地址,第二部分用于存储物理扇区的写入次序,能够解决FTL测试中用户数据访问效率低的问题。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (8)

1.一种NandFlash中模拟用户数据存储的方法,其特征在于,包括:
获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元,其中每个物理扇区用于存储512字节用户数据,所述用户数据存储信息的长度为8字节;
获取所述物理页中带外数据信息,将所述带外数据信息存储到数据文件的第二存储单元,其中,所述数据文件存储于内存中。
2.根据权利要求1所述的用户数据存储的方法,其特征在于,每个所述物理页包括8个或16个物理扇区,所述数据文件包括对应的8个或16个第一存储单元。
3.根据权利要求1所述的用户数据存储的方法,其特征在于,每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址。
4.根据权利要求1所述的用户数据存储的方法,其特征在于,所述带外数据包括纠错校验数据和所述物理页中各物理扇区逻辑区块地址与物理地址转换的映射表。
5.根据权利要求1所述的用户数据存储的方法,其特征在于,所述获取物理页中各个物理扇区的用户数据存储信息,并存储到数据文件的第一存储单元存包括:
获取物理页中各个所述物理扇区的逻辑区块地址,以及各个所述物理扇区的写入次序;
将数据文件的第一存储单元分为大小相等的第一部分和第二部分;
通过所述第一部分存储物理扇区逻辑区块地址;
通过所述第二部分存储物理扇区的写入次序。
6.根据权利要求5所述的用户数据存储的方法,其特征在于,所述存储物理扇区中写入次序包括:
采用时间戳记录物理扇区中用户数据的写入次序。
7.根据权利要求1所述的用户数据存储的方法,其特征在于,所述第二存储单元的大小为16字节。
8.根据权利要求5所述的用户数据存储的方法,其特征在于,所述每个物理扇区存储的用户数据为所述物理扇区的逻辑区块地址与所述物理扇区的写入次序。
CN201510496655.7A 2015-08-13 2015-08-13 一种NandFlash中模拟用户数据存储的方法 Active CN105183369B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510496655.7A CN105183369B (zh) 2015-08-13 2015-08-13 一种NandFlash中模拟用户数据存储的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510496655.7A CN105183369B (zh) 2015-08-13 2015-08-13 一种NandFlash中模拟用户数据存储的方法

Publications (2)

Publication Number Publication Date
CN105183369A true CN105183369A (zh) 2015-12-23
CN105183369B CN105183369B (zh) 2018-03-27

Family

ID=54905478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510496655.7A Active CN105183369B (zh) 2015-08-13 2015-08-13 一种NandFlash中模拟用户数据存储的方法

Country Status (1)

Country Link
CN (1) CN105183369B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538619A (zh) * 2018-12-31 2020-08-14 美光科技公司 利用断电处置的多页奇偶校验保护

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789416A (zh) * 2012-06-13 2012-11-21 北京航空航天大学 面向bit软件测试的存储器故障注入方法及其模拟器
CN103996416A (zh) * 2014-05-27 2014-08-20 山东华芯半导体有限公司 一种可重用的ftl验证方法
CN104751900A (zh) * 2013-12-31 2015-07-01 北京兆易创新科技股份有限公司 一种或非型闪存中存储单元间串扰的测试方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789416A (zh) * 2012-06-13 2012-11-21 北京航空航天大学 面向bit软件测试的存储器故障注入方法及其模拟器
CN104751900A (zh) * 2013-12-31 2015-07-01 北京兆易创新科技股份有限公司 一种或非型闪存中存储单元间串扰的测试方法
CN103996416A (zh) * 2014-05-27 2014-08-20 山东华芯半导体有限公司 一种可重用的ftl验证方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538619A (zh) * 2018-12-31 2020-08-14 美光科技公司 利用断电处置的多页奇偶校验保护
US11726867B2 (en) 2018-12-31 2023-08-15 Micron Technology, Inc. Multi-page parity protection with power loss handling
CN111538619B (zh) * 2018-12-31 2023-11-28 美光科技公司 利用断电处置的多页奇偶校验保护

Also Published As

Publication number Publication date
CN105183369B (zh) 2018-03-27

Similar Documents

Publication Publication Date Title
US9189420B2 (en) Wear-leveling method, storage device, and information system
US8892846B2 (en) Metadata management for virtual volumes
CN106201338B (zh) 数据存储方法及装置
CN103699344B (zh) 非易失性存储器装置及其操作方法
US8341336B2 (en) Region-based management method of non-volatile memory
CN111125447A (zh) 一种元数据访问方法、装置、设备及可读存储介质
TWI544334B (zh) 資料儲存裝置與資料儲存裝置操作方法
US20180260319A1 (en) Writing ssd system data
CN103559027A (zh) 一种key与value分开存储的key-value存储系统设计方法
US11354050B2 (en) Data processing method, apparatus, and computing device
WO2023241160A1 (zh) 基于模拟eeprom的数据写入及管理方法
WO2021027340A1 (zh) 一种键值kv的存储方法、装置及存储设备
TWI528372B (zh) 資料儲存裝置以及揮發式記憶體的資料校驗方法
US9754682B2 (en) Implementing enhanced performance with read before write to phase change memory
CN105808378B (zh) 元数据修复方法及装置
CN106155833A (zh) 一种异步远程复制的方法和装置
US10445199B2 (en) Bad page management in storage devices
TW200929237A (en) Memory architecture and configuration method thereof
CN110187834A (zh) 重删副本的数据处理方法、装置、电子设备
CN105183369A (zh) 一种NandFlash中模拟用户数据存储的方法
CN105068764A (zh) 一种模拟NandFlash的装置及方法
CN105718328A (zh) 存储器坏区的数据备份方法及系统
CN107908500B (zh) 一种坏块识别方法及装置
CN108388483A (zh) 配置码率的方法、装置及计算机可读存储介质
CN110874285B (zh) 一种实现ext文件系统的可还原写操作的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200826

Address after: 100083 Beijing City, Haidian District Xueyuan Road No. 30, large industrial building A block 12 layer

Patentee after: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.

Address before: 202, room 52, building 2, 100176 North View Garden, Daxing District economic and Technological Development Zone, Beijing

Patentee before: BEIJING JINGCUN TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094

Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd.

Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing

Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.