CN102346691B - 闪存镜像文件制作方法及装置 - Google Patents
闪存镜像文件制作方法及装置 Download PDFInfo
- Publication number
- CN102346691B CN102346691B CN 201010241724 CN201010241724A CN102346691B CN 102346691 B CN102346691 B CN 102346691B CN 201010241724 CN201010241724 CN 201010241724 CN 201010241724 A CN201010241724 A CN 201010241724A CN 102346691 B CN102346691 B CN 102346691B
- Authority
- CN
- China
- Prior art keywords
- module
- data
- flash
- image file
- data processing
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种闪存镜像文件制作方法,该方法包括以下步骤:提供NFTL模块,该模块为多种FTL算法的基本特征的集合;提供闪存模拟驱动模块,该模块包括模拟文件;提供个人电脑端的数据读取模块;提供便携设备的数据处理模块;数据读取模块将原始数据包传递至数据处理模块;数据处理模块将原始数据输入NFTL模块;通过NFTL模块提取相应的FTL算法对数据进行转化;转化后的数据通过闪存模拟驱动模块进行读写;经过读写操作的镜像文件输出。本发明另提供一种利用上述方法的镜像文件制作装置。设备厂商不需要关注闪存厂家的FTL坏块管理算法,在闪存厂家不提供个人电脑端镜像文件制作工具的情况下,可以使用该方法在设备端生成镜像文件。
Description
技术领域
本发明涉及一种闪存,尤其涉及一种NAND闪存的镜像文件的制作方法和制作装置。
背景技术
NAND闪存被广泛应用在便携式电子设备上,如MP3、手机、存储卡等,主要原因则是因为NAND闪存不易丢失数据、稳定、低功耗以及良好的物理抗震性能。NAND闪存有个重要的特性,就是在写入前必须先擦除。对于NAND闪存的操作,如读取、擦除、写入,需要借助特定的闪存管理软件来实现,一般地,这种软件为FTL(Flash Translation Layer),其用于处理读写擦除的次序算法。一般来说,FTL接受来自于上层(如系统文件)的读写指令,并且负责将逻辑地址转换为闪存的物理地址。
通常,NAND闪存中需要由某些文件对闪存的某些功能进行管理,这些文件需要预先写入NAND闪存内。设备厂商通常会使用NAND闪存厂家免费提供的FTL算法对NAND闪存进行管理,为了批量生产的高效性,版本稳定后需要制作一个镜像文件(ROM Image),用作批量生产。设备厂商读写NAND闪存是通过闪存厂家提供的FTL接口实现的,假设设备厂商写入闪存的数据为A,数据A经过FTL软件处理最终写入闪存的数据会转化成B。
然而,由于NAND闪存厂家的FTL算法不开放,因此设备厂商要做到数据A转化成数据B,就受到NAND闪存厂家FTL算法的约束,并且各个NAND闪存厂家的FTL算法是完全不兼容的,也没有统一的标准。
目前在NAND闪存厂家FTL算法不开放的情况下,制作ROM Image的方法通常有两种:
一是由NAND闪存厂家提供视窗操作系统(WINDOWS)下的ROM Image制作工具,可以在电脑上将数据A直接转化为数据B,但实际当中一些NAND闪存厂家并不提供此类电脑工具;
二是使用在线烧录方式将数据写入NAND闪存,同时使用NAND闪存标准驱动将所有的数据读出来,存储到电脑上。由于NAND闪存存在坏块,而每个NAND闪存的坏块位置是完全不同的,因此还需要将读出的数据做坏块过滤和处理,该操作由NAND闪存厂家的特定坏块管理方法决定,因此仍然与特有的FTL算法相关。
因此现有制作ROM Image的两种方式都受到具体NAND闪存厂家的限制,不利于制作的统一处理,并且可能需要研究各个不同厂家的FTL坏块管理算法(简称FTL算法),不利于设备厂商快速发展电子设备。
发明内容
本发明要解决的技术问题在于提供一种不依赖闪存FTL算法并且处理统一的NAND闪存镜像文件制作方法以及制作装置。
本发明通过这样的技术方案解决上述的技术问题:
提供一种闪存镜像文件制作方法,该方法包括以下步骤:提供NFTL模块,该模块为多种FTL算法的基本特征的集合;提供闪存模拟驱动模块,该模块包括模拟文件;提供个人电脑端的数据读取模块;提供便携设备的数据处理模块;数据读取模块将原始数据包传递至数据处理模块;数据处理模块将原始数据输入NFTL模块;通过NFTL模块提取相应的FTL算法对数据进行转化;转化后的数据通过闪存模拟驱动模块进行读写;经过读写操作的镜像文件输出。
作为一种改进,数据读取模块与数据处理模块之间通过通用串行总线连接。
作为一种改进,数据读取模块与数据处理模块之间通过通用异步接收发送装置连接。
作为一种改进,镜像文件输出至便携存储单元。
作为一种改进,镜像文件输出至个人电脑端的镜像文件存储模块。
本发明另提供一种闪存镜像文件制作装置,该装置包括:个人电脑端,个人电脑端内包括原始数据、数据读取模块以及模拟文件;便携设备端,便携设备端内包括接受数据读取模块发送的数据的数据处理模块,该数据处理模块内进一步包括处理接受到的数据的NFTL模块以及模拟闪存驱动读取操作的闪存模拟驱动模块。
与现有技术相比较,本发明具有以下优点:设备厂商不需要关注闪存厂家的FTL坏块管理算法,在闪存厂家不提供个人电脑端镜像文件制作工具的情况下,可以使用该方法在设备端生成镜像文件,降低了闪存厂家的约束。同时,NFTL模块可以将各个FTL算法的接口差异进行屏蔽,镜像文件工具可以不关心FTL层接口,保证了处理的统一性。
附图说明
图1是本发明闪存镜像文件制作方法的数据流向图。
图2是本发明闪存镜像文件制作方法的另一种数据流向图。
图3是本发明闪存镜像文件制作方法的流程图。
具体实施方式
下面结合附图详细说明本发明的具体实施方式。
本发明闪存镜像文件的制作方法,主要是利用文件来模拟闪存驱动,并将FTL层读写闪存驱动转化为文件读写操作,最终生成闪存镜像文件。细言之,将便携设备的闪存驱动读写更换为文件操作,使用文件读写模拟闪存驱动,同时使用一个内容全为0XFF的文件来模拟整个闪存。
请参图1,为本发明闪存镜像文件制作方法的数据流向图。本发明是用一种闪存镜像文件制作装置来完成制作过程。该装置包括个人电脑端10、便携设备端11以及便携式存储单元12,其中个人电脑端10包括原始数据包101以及读取该原始数据包101的数据读取模块102(RomMakerPC),便携设备端11包括数据处理模块111(RomMakerUE)。数据读取模块102运行于个人电脑端10,从原始数据包101中读取数据,并将读取到的数据传递给便携设备端11的数据处理模块111,数据处理模块111运行于便携设备端11,从数据读取模块102得到数据,调用NFTL(NAND Falsh Translation Layer)对原始数据进行转化,并调用闪存模拟接口读写闪存。转化后的镜像文件传递给便携存储单元12。
上述的NFTL,是在NAND闪存上实现了一个虚拟块设备,然后必须使用一个磁盘形式的文件系统,例如FAT或者ext2,通过NFTL管理的设备(便携设备,或者其他访问终端,包括电脑等)存取数据。
请参图2,为本发明闪存镜像文件制作方法的另一种数据流向图。本发明是用一种闪存镜像文件制作装置来完成制作过程。该装置包括个人电脑端10’、便携设备端11’,其中个人电脑端10’包括原始数据包101’、数据读写模块102’(RomMakerPC)以及镜像文件存储模块103’,便携设备端11’包括数据处理模块111’(RomMakerUE)。数据读写模块102’运行于个人电脑端10’,从原始数据包101’中读取数据,并将读取到的数据传递给便携设备端11’的数据处理模块111’,数据处理模块111’运行于便携设备端11’,从数据读写模块102’得到数据,调用NFTL(NAND Falsh Translation Layer)对原始数据进行转化,并调用闪存模拟接口读写闪存。转化后的镜像文件传递给个人电脑端10’的数据读写模块102’,并由数据读写模块102’将镜像文件写入个人电脑端10’的镜像文件存储模块103’。
上述两种数据流向,表明生成的镜像文件可以保存在便携存储单元,如移动硬盘或者其他移动存储器内,便于批量复制,也可以保存至个人电脑中。
另外,上述的数据读取模块或者数据读写模块与数据处理模块之间的连接方式,可以通过通用串行总线(USB),也可以通过通用异步接收发送装置(UART,Universal Asynchronous Receiver/Transmitter)。
请参图3,为本发明闪存镜像文件制作方法的流程图,实际上,显示的是数据处理模块从数据读取模块或者数据读写模块得到数据后的处理流程。由于闪存厂家提供的FTL算法存在接口差异,为了保持镜像文件制作工具的统一处理,需要开发一个NFTL模块,该模块将多种FTL算法的基本特征抽象出来,为多种FTL算法的基本特征的集合,并向上提供统一的处理方式,将FTL算法闪存的访问接口整理为闪存模拟驱动模块,在设备侧将闪存驱动使用标准的文件读写接口来模拟。具体实现方式为:使用便携式存储单元或个人电脑上的一个文件模拟闪存,闪存驱动主要实现读指定页、写指定页以及擦除指定块的基本操作,模拟接口可将这些操作转化为读写文件操作。
文件大小取闪存数据区(Data)和空闲区(Spare)的总大小,文件起初始数据以全0XFF填充,表示该闪存为空。
文件模拟下闪存的所有块不存在坏块,该特点正好满足镜像文件的需求。
上述流程包括如下步骤:
数据处理模块将原始数据输入NFTL模块;
通过NFTL模块提取相应的FTL算法对数据进行转化;
转化后的数据通过闪存模拟驱动模块进行读写,包括读指定页、写指定页、擦除指定块等;
经过读写操作的镜像文件输出,输出可至个人电脑端或者便携存储单元内。
采用本发明的技术方案,设备厂商不需要关注闪存厂家的FTL坏块管理算法,在闪存厂家不提供个人电脑端镜像文件制作工具的情况下,可以使用该方法在设备端生成镜像文件,降低了闪存厂家的约束。同时,NFTL模块可以将各个FTL算法的接口差异进行屏蔽,镜像文件工具可以不关心FTL层接口,保证了处理的统一性。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。
Claims (10)
1.一种闪存镜像文件制作方法,其特征在于:该方法包括以下步骤:
提供NFTL模块,该模块为多种FTL算法的基本特征的集合;
提供闪存模拟驱动模块,该模块包括模拟文件;
提供个人电脑端的数据读取模块;
提供便携设备的数据处理模块;
数据读取模块将原始数据包传递至数据处理模块;
数据处理模块将原始数据输入NFTL模块;
通过NFTL模块提取相应的FTL算法对数据进行转化;
转化后的数据通过闪存模拟驱动模块进行读写;
经过读写操作的镜像文件输出;
其中,使用一个内容全为0XFF的文件来模拟整个闪存。
2.根据权利要求1所述的闪存镜像文件制作方法,其特征在于:数据读取模块与数据处理模块之间通过通用串行总线连接。
3.根据权利要求1所述的闪存镜像文件制作方法,其特征在于:数据读取模块与数据处理模块之间通过通用异步接收发送装置连接。
4.根据权利要求1或2或3所述的闪存镜像文件制作方法,其特征在于:镜像文件输出至便携存储单元。
5.根据权利要求1或2或3所述的闪存镜像文件制作方法,其特征在于:镜像文件输出至个人电脑端的镜像文件存储模块。
6.一种利用如权利要求1所述的闪存镜像文件制作方法制作闪存镜像文件的闪存镜像文件制作装置,其特征在于,该装置包括:
个人电脑端,个人电脑端内包括原始数据、数据读取模块以及模拟文件;
便携设备端,便携设备端内包括接受数据读取模块发送的数据的数据处理模块,该数据处理模块内进一步包括处理接受到的数据的NFTL模块以及模拟闪存驱动读取操作的闪存模拟驱动模块;
其中,使用一个内容全为0XFF的文件来模拟整个闪存。
7.根据权利要求6所述的闪存镜像文件制作装置,其特征在于:数据读取模块与数据处理模块之间通过通用串行总线连接。
8.根据权利要求6所述的闪存镜像文件制作装置,其特征在于:数据读取模块与数据处理模块之间通过通用异步接收发送装置连接。
9.根据权利要求6所述的闪存镜像文件制作装置,其特征在于:该装置进一步包括便携存储单元用以保存数据处理模块转化后的镜像文件。
10.根据权利要求6所述的闪存镜像文件制作装置,其特征在于:该装置的个人电脑端具有镜像文件存储模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010241724 CN102346691B (zh) | 2010-07-30 | 2010-07-30 | 闪存镜像文件制作方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010241724 CN102346691B (zh) | 2010-07-30 | 2010-07-30 | 闪存镜像文件制作方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102346691A CN102346691A (zh) | 2012-02-08 |
CN102346691B true CN102346691B (zh) | 2013-07-24 |
Family
ID=45545388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010241724 Active CN102346691B (zh) | 2010-07-30 | 2010-07-30 | 闪存镜像文件制作方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102346691B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544082B (zh) * | 2013-10-28 | 2015-08-19 | 公安部第三研究所 | 基于闪存芯片实现存储设备数据恢复的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093463A (zh) * | 2006-06-23 | 2007-12-26 | 无锡盈泰科技有限公司 | 一种实现闪存快速写入速度的新颖的闪存转换层算法 |
US7426633B2 (en) * | 2005-05-12 | 2008-09-16 | Hewlett-Packard Development Company, L.P. | System and method for reflashing disk drive firmware |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100874702B1 (ko) * | 2006-10-02 | 2008-12-18 | 삼성전자주식회사 | 플래시 메모리 파일 시스템을 효율적으로 관리하기 위한장치 드라이버 및 방법 |
KR101446779B1 (ko) * | 2008-07-09 | 2014-10-01 | 삼성전자주식회사 | 플래시 사용을 제한하는 촬영 제어 방법 및 장치 |
KR20080087771A (ko) * | 2008-08-11 | 2008-10-01 | (주)세인정보통신 | 이미지 파일을 이용한 낸드 플래시메모리 고속 데이터 기록 |
-
2010
- 2010-07-30 CN CN 201010241724 patent/CN102346691B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7426633B2 (en) * | 2005-05-12 | 2008-09-16 | Hewlett-Packard Development Company, L.P. | System and method for reflashing disk drive firmware |
CN101093463A (zh) * | 2006-06-23 | 2007-12-26 | 无锡盈泰科技有限公司 | 一种实现闪存快速写入速度的新颖的闪存转换层算法 |
Also Published As
Publication number | Publication date |
---|---|
CN102346691A (zh) | 2012-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7222212B2 (en) | Virtual USB card reader with PCI express interface | |
US7496703B2 (en) | Virtual IDE card reader with PCI express interface | |
US8225067B2 (en) | Multilevel cell NAND flash memory storage system, and controller and access method thereof | |
CN106067321A (zh) | 适于存储器编程暂停-恢复的控制器 | |
CN102609741B (zh) | 一种移动设备及其内、外部存储卡间数据交换的方法 | |
CN104461750A (zh) | 一种NAND flash的访问方法和装置 | |
CN101777033A (zh) | 存储卡扩展装置 | |
CN104461977B (zh) | 记忆卡存取装置、其控制方法与记忆卡存取系统 | |
CN102346691B (zh) | 闪存镜像文件制作方法及装置 | |
CN102375781B (zh) | 数据保护方法、存储器控制器及可携式存储器储存装置 | |
CN101751338A (zh) | 数据存取控制装置及数据存取方法 | |
CN102591737A (zh) | 数据写入与读取方法、存储器控制器与存储器储存装置 | |
TWI436209B (zh) | 記憶體管理表處理方法、記憶體控制器與記憶體儲存裝置 | |
CN101710237A (zh) | 以闪存为存储介质的设备生产流程 | |
CN103902298A (zh) | 一种指令集固件刷写状态信息的设置方法和装置 | |
CN201156156Y (zh) | 自播放式投影仪 | |
CN107358110A (zh) | 基于国密安全芯片的移动端U盘及其与Android设备的通信方法 | |
CN210776642U (zh) | 一种多个tf卡自动拼盘装置 | |
CN202995718U (zh) | Otg数据读卡线 | |
CN102436842B (zh) | 存储器储存装置、存储器控制器与产生对数似然比的方法 | |
CN207518629U (zh) | 一种便携式勘验取证设备 | |
CN105302479A (zh) | 一种数据管理方法及存储设备 | |
CN110362513A (zh) | 控制器及包括控制器的存储器系统 | |
CN201673686U (zh) | 可同时烧录四颗eeprom的烧录装置 | |
CN100397409C (zh) | 具高速外围部件互连总线的虚拟usb接口读卡机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20120208 Assignee: Shanghai Li Ke Semiconductor Technology Co., Ltd. Assignor: Leadcore Technology Co., Ltd. Contract record no.: 2018990000159 Denomination of invention: Method for manufacturing flash image files and device Granted publication date: 20130724 License type: Common License Record date: 20180615 |