一种生成flash存储器镜像文件的方法和装置的利记博彩app

文档序号:6602924阅读:198来源:国知局
专利名称:一种生成flash存储器镜像文件的方法和装置的利记博彩app
技术领域
本发明有关于存储器技术领域,具体地讲是一种生成flash存储器镜像文件的方法和装置。
背景技术
Nor flash和Nand flash是现在市场上两种主要的非易失闪存技术,具有容量较大,改写速度快,适用于大量数据的存储,因而在业界得到了越来越广泛的应用,如嵌入式产品中包括数码相机、手机、MP3随身听记忆卡、体积小巧的U盘等。如果在Nor flash或者Nand flash中预置系统或者其他数据,在现在的生产工艺中通常采用镜像要复制的数据然后以镜像文件进行批量复制,但是目前的很多手机生产厂商由于flash的结构比较特殊无法自己制作镜像文件,需要将要复制的数据写入手机的 flash中,再将手机寄送给flash的生产厂商,flash生产商场将手机上的flash芯片取下, 通过该flash厂商特殊的设备获取flash中的数据,将手机flash中的数据制作成镜像文件再回传给手机上产厂商,长个流程时间长,效率低,并且flash —旦从手机的印刷电路板 (PCB)上取下,则该手机就无法再使用了,也造成了浪费。

发明内容
本发明正是基于上述问题而提出,其目的在于提供一种生成flash存储器镜像文件的方法和装置,用于解决现有技术中生产周期长,或生成的镜像文件存在坏块的问题。本发明实施例提供了一种生成flash存储器镜像文件的方法,包括根据flash存储器的容量生成同样大小的空的镜像文件;根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据;将所述具有信息区的第一数据复制到所述镜像文件的第一地址;根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据;将所述第二数据复制到所述镜像文件的第二地址。根据本发明实施例的一个进一步的方面,所述第一数据包括原始数据和/或NFTL 数据。根据本发明实施例的再一个进一步的方面,所述第二数据包括NFTL数据和/或文件系统数据。根据本发明实施例的另一个进一步的方面,在所述根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据之前还包括,获取所述flash存储器的设备信息,匹配与所述flash存储器相应的第二数据的地址。根据本发明实施例的另一个进一步的方面,在所述根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据之前还包括,接收用户输入的所述flash存储器的设备信息,从预先存储的所述第二数据的地址中匹配到相应的地址。根据本发明实施例的另一个进一步的方面,在所述将所述第二数据复制到所述镜像文件的第二地址之后还包括,判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。本发明实施例还提供了一种生成flash存储器镜像文件的装置,包括镜像文件生成单元,用于根据flash存储器的容量生成同样大小的空的镜像文件;信息计算单元,用于根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据;获取单元,用于根据未知数据结构的第二数据的地址获取flash存储器中所述第二数据的数据区数据和信息区数据;复制单元,用于将所述具有信息区的第一数据复制到所述镜像文件的第一地址, 并且将所述第二数据复制到所述镜像文件的第二地址。根据本发明实施例的一个进一步的方面,还包括存储单元,用于存储不同flash存储器的所述第二数据的地址;输入单元,用于接收用户输入的flash存储器设备信息;匹配单元308,用于根据flash存储器的设备信息在所述存储单元中匹配与所述 flash存储器相应的第二数据的地址。根据本发明实施例的再一个进一步的方面,还包括存储单元,用于存储不同flash存储器的所述第二数据的地址;存储器信息获取单元,用于获取所述flash存储器的设备信息;匹配单元,用于根据flash存储器的设备信息在所述存储单元中匹配与所述 flash存储器相应的第二数据的地址。根据本发明实施例的另一个进一步的方面,还包括判断单元,与所述复制单元相连接,用于判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。通过本发明实施例中将已知数据结构数据和未知数据结构数据的不同处理,尽量减少生成的镜像文件坏块的概率,并且缩短了生产过程,避免了资源浪费。


此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中图1所示为本发明实施例以Nand flash为例说明存储结构的示意图;图2所示为本发明实施例一种生成flash存储器镜像文件方法的流程图;图3所示为本发明实施例一种生成flash存储器镜像文件装置的结构示意图;图4所示为本发明实施例以手机为例获取手机侧flash存储器中文件系统数据的流程图;图5所示为本发明实施例以手机为例计算机侧获取手机flash存储器文件系统数据的流程图;图6所示为本发明实施例将数据进行拼接生成镜像文件的流程图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。如图1所示为本发明实施例以Nand flash为例说明存储结构的示意图。Nand flash中存储3种数据,数据1为普通的原始数据,不需要任何转换直接存储于所述Nand flash,数据2为例如写平衡管理、坏块处理和掉电保护等需要进行NFTL转换层转换后再存储于flash中的NFTL数据,数据3为文件系统数据,即以文件形式通过NFTL 转换层转换后存储于所述flash中的数据。对于数据1、数据2和数据3来说,其存储的数据结构都是有数据区(data区)和信息区(spare区)组成,其中在spare区中通常存储一些校验信息或者标识符等信息,但是通常数据2或者数据3这些数据结构都是保密的,一般的手机生产厂商都无法得,由于不知道数据结构是怎样的,无法还原数据内容,在生成flash存储器的镜像文件中可能包括很多坏块,利用该镜像文件对其它的flash存储器进行复制时,就会将很多坏块复制到其它flash存储器中,造成存储器容量的浪费,并且影响存储器的稳定性。如图2所示为本发明实施例一种生成flash存储器镜像文件方法的流程图。步骤201,根据flash存储器的容量生成同样大小的空的镜像文件。例如,所述 flash存储器为132MB (包括spare区),则生成132MB的空的镜像文件。步骤202,根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据。其中,当NFTL数据的数据结构可知,则所述第一数据可以包括原始数据、NFTL数据(nand flash transfer layer);或者当NFTL数据的数据结构不可知,则所述第一数据只包括原始数据。步骤203,将所述具有信息区的第一数据复制到所述镜像文件的第一地址。由于已知第一数据的数据结构,计算生成信息区的数据,使得在镜像文件中的第一数据实现没有坏块,利用该镜像文件对其它flash进行写入时,就可以避免将镜像文件中的坏块标记其它flash存储器。步骤204,根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据。其中,所述未知数据结构的第二数据包括,NFTL数据和/或文件系统数据。步骤205,将所述第二数据复制到所述镜像文件的第二地址。上述步骤201生成空的镜像文件的执行顺序可以在步骤205之前。其中,所述第二数据所占的存储空间较小,出现坏块的可能较小,所以通过上述方法生成的镜像文件包括坏块的概率较小,生成镜像文件的成功率较高。作为本发明的一个实施例,在所述步骤204之前还包括,获取所述flash存储器的设备信息,例如flash存储器的容量、厂商编号、产品编号等信息,匹配与所述flash存储器相应的第二数据的地址。作为本发明的一个实施例,在所述步骤204之前还包括,接收用户输入的所述 flash存储器的设备信息,从预先存储的所述第二数据的地址中匹配到相应的地址。作为本发明的一个实施例,在所述步骤205之后还包括,判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。通过上述方式,生成已知数据结构数据的数据区和信息区,将未知数据结构的数据区和信息区的数据一起读出,制作成镜像文件,这样就可以避免在制作镜像文件时坏块多,造成镜像文件写入的flash存储器不可靠的问题,并且通过上述方式移动终端(例如手机)厂商可以避免现有技术中长周期、低效率的镜像文件获取方式,自己制作移动终端 flash存储器中的镜像文件,提高效率,成本低。如图3所示为本发明实施例一种生成flash存储器镜像文件装置的结构示意图。包括镜像文件生成单元301,获取单元302,信息计算单元303,复制单元304。其中所述镜像文件生成单元301,用于根据flash存储器的容量生成同样大小的空的镜像文件。所述信息计算单元303,用于根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据。所述获取单元302,用于根据未知数据结构的第二数据的地址获取flash存储器中所述第二数据的数据区数据和信息区数据。所述复制单元304,用于将所述具有信息区的第一数据复制到所述镜像文件的第一地址,并且将所述第二数据复制到所述镜像文件的第二地址。作为本发明的一个实施例,还包括存储单元305,用于存储不同flash存储器的所述第二数据的地址;通常上述不同flash存储器的第二数据的地址是指flash存储器中的地址分区表,在该分区表中还可以包括第一数据的地址信息。还包括输入单元306,用于接收用户输入的flash存储器设备信息;和/或还包括存储器信息获取单元307,用于获取所述flash存储器的设备信息;还包括匹配单元308,用于根据flash存储器的设备信息在所述存储单元305中匹配与所述flash存储器相应的第二数据的地址。作为本发明的一个实施例,还包括判断单元309,与所述复制单元304相连接,用于判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。通过上述方式获得的镜像文件,可以使得已知数据结构的第一数据写入其它 flash存储器时规避坏块,并且可以使得移动终端(例如手机)厂商自己制作镜像文件,缩短了生成镜像文件的时间,提高了生产效率,并尽可能的保证了复制镜像文件后的flash 存储器的稳定性。如图4所示为本发明实施例以手机为例获取手机侧flash存储器中文件系统数据的流程图。包括步骤401,手机与计算机通过通用总线接口(USB)的方式建立通信连接。步骤402,手机获取手机上的flash存储器的设备信息,例如获取flash存储器的硬件识别码,flash存储器的容量、块数量、页数量以及spare区的大小,还包括flash存储器的地址范围等信息,以区别是什么类型的存储器,向计算机发送所述设备信息。步骤403,手机从计算机侧获取需要读取的文件系统数据的起止地址,在本例中文件系统数据的数据结构对于厂商来说是未知的,所以需要通过这种方式获取全部未知数据结构的文件系统数据,作为镜像文件的一部分,以生成镜像文件,当然在其他的实施例中未知数据结构的数据还可以包括NFTL数据。步骤404,判断所述起止地址是否超出范围,如果超出范围则进入步骤409,否则进入步骤405。步骤405,判断是否已经读取完所有数据,如果读取完则进入步骤406,否则进入步骤407。步骤406,向计算机侧发送读取成功,并进入步骤410。步骤407,读取flash存储器相应地址中的数据区数据和信息区数据。步骤408,将所述读取出来的数据区数据和信息区数据发送给计算机侧,返回步骤 405步骤409,向计算机侧发送地址超出范围的提示。步骤410,结束本流程。如图5所示为本发明实施例以手机为例计算机侧获取手机flash存储器文件系统数据的流程图。包括步骤501,等待手机的连接信号。步骤502,将手机侧的运行程序发送给手机,即使得所述手机可以进行如图4所示的处理步骤。步骤503,等待手机侧程序的握手信号。步骤504,根据手机传送过来的flash存储器设备信息,匹配到与该设备信息相应的在这种flash存储器中文件系统数据地址的信息。步骤505,将所述地址信息传送给手机。步骤506,接收手机返回的文件系统的数据区数据和信息区数据,判断是否数据接收完毕,如果完毕则进入步骤507,否则进入步骤508。步骤507,通过显示装置向用户提示数据读取成功,并进入步骤511。步骤508,判断接收数据是否成功(数据长度是否正确),如果成功则进入步骤 509,否则进入步骤510。步骤509,将所述文件系统的数据区数据和信息区数据保存至计算机的特定文件中,并返回步骤506。步骤510,通过显示装置向用户提示接收数据失败,并进入步骤511。步骤511,结束。通过上述手机侧和计算机侧的处理流程,可以获得未知数据结构的文件系统数据,以便于制作flash存储器的镜像文件。如图6所示为本发明实施例将数据进行拼接生成镜像文件的流程图。包括步骤601,通过上述图4和图5的方法,计算机获得了 flash存储器的设备信息,匹配预先存储的与flash存储器相应的原始数据地址和NFTL数据地址,或者根据用户输入的flash存储器的设备信息匹配到与flash存储器相应的原始数据地址和NFTL数据地址,并且根据上述图4和图5的方法,文件系统的数据已经存储于计算机中,在本步骤中可以获取文件系统的地址,通过获取原始数据地址、NFTL地址和文件系统的地址,就可以确定该flash存储器的容量大小。步骤602,生成与flash存储器大小一致的空的镜像文件。步骤603,由于已知原始数据的数据结构,并且原始数据已知,可以直接将原始数据复制到所述空的镜像文件的相应地址。步骤604,计算生成与该原始数据的数据区数据相应的信息区数据。步骤605,由于已知NFTL数据的数据结构,并且NFTL数据已知,可以直接将NFTL 数据复制到所述镜像文件的相应地址。步骤606,计算生成与该NFTL数据的数据区数据相应的信息区数据。步骤607,将所述存储于计算机的文件系统复制到所述镜像文件的相应地址。步骤608,检查所述镜像文件中是否有坏块,即主要检查文件系统数据部分是否有坏块,因为原始数据和NFTL数据均是已知的并且信息区数据是计算产生的,所以不会有坏块的情况,又由于文件系统所占空间通常比较小,一般存在坏块的可能性很低,所以镜像文件存在坏块的概率很低。当检查出所述镜像文件有坏块,则进入步骤610,否则进入步骤 609。步骤609,通过显示装置向用户提示镜像文件生成成功的信息。步骤610,通过显示装置向用户提示镜像文件生成失败的信息。步骤611,结束。本发明实施例的方法和装置可以应用于不完全清楚数据结构的NORflash存储器和Nand flash存储器等多种存储器镜像文件的生成,可以缩短生产时间,节省资源,并且可以尽量减少直接读取不知道数据结构的flash存储器制作镜像文件产生坏块的问题。以上所述的具体实施方式
,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式
而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种生成flash存储器镜像文件的方法,其特征在于包括 根据flash存储器的容量生成同样大小的空的镜像文件;根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据;将所述具有信息区的第一数据复制到所述镜像文件的第一地址; 根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据;将所述第二数据复制到所述镜像文件的第二地址。
2.根据权利要求1所述的方法,其特征在于,所述第一数据包括原始数据和/或NFTL 数据。
3.根据权利要求1所述的方法,其特征在于,所述第二数据包括NFTL数据和/或文件系统数据。
4.根据权利要求1所述的方法,其特征在于,在所述根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据之前还包括,获取所述flash存储器的设备信息,匹配与所述flash存储器相应的第二数据的地址。
5.根据权利要求1所述的方法,其特征在于,在所述根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据之前还包括,接收用户输入的所述flash存储器的设备信息,从预先存储的所述第二数据的地址中匹配到相应的地址。
6.根据权利要求1所述的方法,其特征在于,在所述将所述第二数据复制到所述镜像文件的第二地址之后还包括,判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。
7.—种生成flash存储器镜像文件的装置,其特征在于包括镜像文件生成单元,用于根据flash存储器的容量生成同样大小的空的镜像文件; 信息计算单元,用于根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据;获取单元,用于根据未知数据结构的第二数据的地址获取flash存储器中所述第二数据的数据区数据和信息区数据;复制单元,用于将所述具有信息区的第一数据复制到所述镜像文件的第一地址,并且将所述第二数据复制到所述镜像文件的第二地址。
8.根据权利要求7所述的装置,其特征在于,还包括存储单元,用于存储不同flash存储器的所述第二数据的地址; 输入单元,用于接收用户输入的flash存储器设备信息;匹配单元,用于根据flash存储器的设备信息在所述存储单元中匹配与所述flash存储器相应的第二数据的地址。
9.根据权利要求7所述的装置,其特征在于,还包括存储单元,用于存储不同flash存储器的所述第二数据的地址; 存储器信息获取单元,用于获取所述flash存储器的设备信息; 匹配单元,用于根据flash存储器的设备信息在所述存储单元中匹配与所述flash存储器相应的第二数据的地址。
10.根据权利要求7所述的装置,其特征在于,还包括判断单元,与所述复制单元相连接,用于判断所述镜像文件是否有坏块,如果有坏块则通过显示装置向用户提示镜像文件生成错误,否则提示镜像文件生成成功。
全文摘要
本发明有关于存储器技术领域,为了解决现有技术中生成flash存储器镜像文件时间长的问题,提供了一种生成flash存储器镜像文件的方法和装置,其中方法包括根据flash存储器的容量生成同样大小的空的镜像文件;根据已知数据结构的第一数据的数据区数据,生成与该第一数据区数据相应的信息区数据;将所述具有信息区的第一数据复制到所述镜像文件的第一地址;根据未知数据结构的第二数据的地址获取所述flash存储器中所述第二数据的数据区数据和信息区数据;将所述第二数据复制到所述镜像文件的第二地址。通过本发明实施例尽量减少生成的镜像文件坏块的概率,并且缩短了生产过程,避免了资源浪费。
文档编号G06F11/14GK102253867SQ20101018072
公开日2011年11月23日 申请日期2010年5月18日 优先权日2010年5月18日
发明者毛晨曦 申请人:中国移动通信集团公司, 乐金电子(中国)研究开发中心有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1