CN102722516A - 一种针对NAND Flash烧录文件的生成方法及相应的装置 - Google Patents

一种针对NAND Flash烧录文件的生成方法及相应的装置 Download PDF

Info

Publication number
CN102722516A
CN102722516A CN2012100138116A CN201210013811A CN102722516A CN 102722516 A CN102722516 A CN 102722516A CN 2012100138116 A CN2012100138116 A CN 2012100138116A CN 201210013811 A CN201210013811 A CN 201210013811A CN 102722516 A CN102722516 A CN 102722516A
Authority
CN
China
Prior art keywords
divisional description
recordable paper
file
subregion
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
CN2012100138116A
Other languages
English (en)
Other versions
CN102722516B (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.)
MStar Software R&D Shenzhen Ltd
MStar Semiconductor Inc Taiwan
Original Assignee
MStar Software R&D Shenzhen Ltd
MStar Semiconductor Inc Taiwan
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 MStar Software R&D Shenzhen Ltd, MStar Semiconductor Inc Taiwan filed Critical MStar Software R&D Shenzhen Ltd
Priority to CN201210013811.6A priority Critical patent/CN102722516B/zh
Publication of CN102722516A publication Critical patent/CN102722516A/zh
Priority to TW101145945A priority patent/TWI498906B/zh
Priority to US13/742,524 priority patent/US20130185484A1/en
Application granted granted Critical
Publication of CN102722516B publication Critical patent/CN102722516B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits

Abstract

本发明实施例公开了一种针对NAND Flash烧录文件生成方法,本发明实施例还提供相应的针对NAND Flash烧录文件生成装置。本发明提供的方法中,通过获取包含分区描述信息的分区描述文件和对应的配置信息以及用户数据,根据该分区描述文件判断对应的分区文件所属的文件格式,再根据分区描述信息和对应的烧录文件生成数量将用户数据生成烧录文件;通过本发明提供的方法,能够区别不同的文件格式自动生成烧录文件,实用性强,灵活性高,大大提高了将烧录文件烧录进非易失闪存的效率。

Description

一种针对NAND Flash烧录文件的生成方法及相应的装置
技术领域
本发明涉及计算机数据存储领域,特别是涉及一种针对NAND Flash烧录文件的生成方法及相应的装置。
背景技术
非易失闪存(NAND Flash)以其容量大、访问速度快以及单位容量的成本低廉等特点,在嵌入式领域越来越广泛地被用作存放数据的载体。
NAND Flash的文件格式目前来看主要有两种:内存技术设备(MTD,Memory Technology Device)和未分类块图像(UBI,UnsortedBlock Images)。其中,UBI是一种开源的NAND管理软件,能有效提升使用NAND的可靠性和产品寿命。UBI会在每个用户数据的头部添加自己的管理信息,其中,用户数据是以分区的形式来组织的独立的bin文件,分区大小在设置时与存储块block的大小对齐,各个区的分区描述由UBI全局卷表来管理,UBI在文件管理上的特性,对于上层应用程序来说是透明的。而MTD格式的文件是没有自己的管理信息的,只有原始的裸数据。
在产品量产时,为提高生产效率,一般使用专门的烧录器将需要烧录的数据写入NAND Flash中,因此需要为烧录器提供专门的烧录文件,烧录文件的好坏直接影响着产品量产的效率和良率。
现有技术中,一般先通过常规的方式,借助网络、串口或者USB等方式完成一台产品的升级,再从升级好的产品中将NAND Flash中的所有数据读出来,生成烧录文件。这种方法最直接,最容易实现,但是也有缺陷,比如操作步骤较为繁琐,烧录文件的内容与特定的产品有关,整个过程耗时较长等等。
因此提供一种简单可靠又具有较强的灵活性的手段提供烧录文件成为必然的需求。
发明内容
本发明主要解决的技术问题是提供一种针对NAND Flash烧录文件的生成方法,还提供了相应的装置,能够根据不同的文件格式来自动生成烧录文件,以提高将烧录文件烧录进非易失闪存的效率。
一种针对NAND Flash烧录文件的生成方法,包括:
需要生成NAND Flash烧录文件时,获取分区描述文件及其对应的配置信息与用户数据,其中,分区描述文件包括一个或者多个分区的分区描述信息,配置信息包括有烧录文件的生成数量;
根据该分区描述文件判断对应分区文件所属的分区格式;以及
根据分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件。
一种针对NAND Flash烧录文件生成装置,其特征在于,包括:
获取模块,用于在需要生成NAND Flash烧录文件时,获取分区描述文件及其对应的配置信息和用户数据,其中,分区描述文件包括一个或者多个分区的分区描述信息,配置信息包括有烧录文件的生成数量;
第一判断模块,用于根据获取模块获取的分区描述文件判断对应的分区文件所属的文件格式;以及
烧录文件生成模块,用于根据分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件。
本发明的有益效果是:区别于现有技术的情况,本发明通过对文件格式的判断,将不同的文件格式自动生成烧录文件,既简单又可靠,并且灵活性好,提高了烧录效率。
附图说明
图1是本发明针对NAND Flash烧录文件的生成方法实施例的数据流程图;
图2是本发明针对NAND Flash烧录文件的生成方法中MTD烧录文件生成过程数据流程图;
图3是本发明针对NAND Flash烧录文件的生成方法中UBI烧录文件生成过程数据流程图;
图4是本发明针对NAND Flash烧录文件的生成方法中混合烧录文件生成过程数据流程图;
图5是本发明针对NAND Flash烧录文件的生成方法中混合烧录文件生成过程生成的烧录文件的组成示意图;
图6是本发明针对NAND Flash烧录文件生成装置实施例的逻辑结构示意图;
图7是本发明针对NAND Flash烧录文件生成装置另一实施例的逻辑结构示意图;
图8是本发明针对NAND Flash烧录文件生成装置另一实施例的逻辑结构示意图;
图9是本发明针对NAND Flash烧录文件生成装置另一实施例的逻辑结构示意图。
具体实施方式
参阅图1,本发明针对NAND Flash烧录文件的生成方法实施例包括:
101、获取分区描述文件及其对应的配置信息与用户数据;
需要生成NAND Flash烧录文件时,获取分区描述文件及其对应的配置信息与用户数据,其中,分区描述文件包括一个或者多个分区的分区描述信息,配置信息包括有烧录文件的生成数量,用户数据为待烧录的主要数据;
其中,分区描述文件和对应的配置信息以及用户数据可以是预先保存在本地的,也可以是由用户输入获取的,此处不做限制;
102、根据分区描述文件判断对应的分区文件所属的文件格式;
分区描述文件包括一个或者多个分区的分区描述信息,分区描述信息包括文件格式、分区大小等信息;在步骤101中获取到分区描述文件和对应的配置信息以及用户数据后,再根据该获取的分区描述文件判断对应的分区文件所属的文件格式;
103、根据分区描述信息、与该分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件;
在步骤102中判断出分区描述文件判断对应的分区文件所属的文件格式后,再根据分区描述信息和对应的配置信息将用户数据生成烧录文件;不同的文件格式的存储格式不同,例如MTD格式只有裸的用户数据,而UBI格式则除了用户数据之外还有UBI全局卷表和UBI管理信息,所以,针对不同格式的文件,采用不同的方法来生成烧录文件,并将生成的烧录文件写入NAND Flash中;
通过对文件格式的判断,针对不同的文件格式,根据分区描述信息和对应的烧录文件生成数量将用户数据生成烧录文件,既简单又可靠,并且灵活性好,提高了烧录效率;
下面分别以MTD格式、UBI格式以及MTD格式和UBI格式混合的格式为例,对烧录文件生成过程进行详细说明:
请参阅图2,如果判断出分区描述文件对应的分区文件所属的文件格式为MTD格式,具体的:
201、判断用户数据的大小是否小于分区描述文件对应的分区的大小;
首先判断步骤101中获取的用户数据的大小是否小于分区描述文件对应的分区的大小,如果小于分区描述文件对应的分区的大小,则执行步骤202,如果不小于分区描述文件对应的分区的大小,则执行步骤203;
202、在用户数据末尾添加0xFF;
因为分区大小在设置时与block的大小是对齐的,但是如果分区中的用户数据的大小小于分区的大小,在生成的烧录文件中就会出现分区大小与block的大小不对齐的问题,所以,如果步骤201中判断出用户数据的大小小于分区描述文件对应的分区的大小,则需要在用户数据末尾添加0xFF,使得添加0xFF后的用户数据的大小与分区描述文件对应的分区的大小相等;
203、将用户数据写入对应的存储块生成初步的烧录文件;
当用户数据的大小与分区描述文件对应的分区的大小相等时,将用户数据写入对应的存储块生成初步的烧录文件;
需要说明的是,配置信息包括烧录文件的生成数量,即可以根据配置信息指示的烧录文件的生成数量生成一个或者多个烧录文件,这是根据实际需要进行设置的;
204、在初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
请参阅图3,如果判断出分区描述文件对应的分区文件所属的文件格式为UBI格式,具体的:
301、根据分区描述信息创建UBI全局卷表;
首先根据步骤101中获取的分区描述文件中的分区描述信息创建UBI全局卷表,其中,UBI全局卷表为管理各个区的分区描述的卷表;
302、在UBI全局卷表中,根据分区描述文件分别在分区对应的各个block的头部添加UBI管理信息;
分区的大小是与block对齐的,一个分区可能与一个block对齐,也可能与多个block对齐,这取决于分区和block的大小,例如,分区的大小为10240kb,一个block的大小为1024kb,那么该分区与10个block对齐;
创建UBI全局卷表后,根据分区描述文件分别在分区对应的各个block的头部添加UBI管理信息;
303、判断用户数据的大小是否小于分区描述文件对应的分区的大小;
在执行完步骤302后,再判断用户数据的大小是否小于分区描述文件对应的分区的大小,如果小于分区描述文件对应的分区的大小,则执行步骤304,如果不小于分区描述文件对应的分区的大小,则执行步骤305;
304、在用户数据末尾添加0xFF;
因为分区大小在设置时与block的大小是对齐的,但是如果分区中的用户数据的大小小于分区的大小,在生成的烧录文件中就会出现分区大小与block的大小不对齐的问题,所以,如果步骤201中判断出用户数据的大小小于分区描述文件对应的分区的大小,则需要在用户数据末尾添加0xFF,使得添加0xFF后的用户数据的大小与分区描述文件对应的分区的大小相等;
305、将用户数据写入对应的存储块生成初步的烧录文件;
当用户数据的大小与分区描述文件对应的分区的大小相等时,将该用户数据写入对应的存储块生成初步的烧录文件;
需要说明的是,配置信息包括烧录文件的生成数量,即可以根据配置信息指示的烧录文件的生成数量生成一个或者多个烧录文件,这是根据实际需要进行设置的;
306、在初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
用户数据、UBI管理数据以及添加的0xFF是存放在block的主(main)区域中的,ECC校验码存放在block的备用(spare)区域,具体如表1所示;
表1
  UBI system data   ECC
  UBI system data   ECC
  user data   ECC
  user data   ECC
  …… ……
  user data   ECC
  0xFF   0xFF
请参阅图4,如果判断出分区描述文件对应的分区文件所属的文件格式为MTD和UBI的混合格式,具体的:
401、获取第一个分区描述信息;
首先,获取第一个分区描述信息;
402、判断是MTD格式还是UBI格式;
获取分区描述信息后,判断该分区描述信息描述的分区是MTD格式还是UBI格式,如果是MTD格式,则执行步骤406,如果是UBI格式,则执行步骤403;
403、判断是否是第一个UBI分区;
如果步骤402中判断出获取的分区描述信息描述的分区是UBI分区,则再判断该UBI分区是否是第一个UBI分区;
404、根据分区描述信息创建UBI全局卷表;
如果获取的分区描述信息描述的分区是第一个UBI分区,则根据分区描述文件中的分区描述信息创建UBI全局卷表,其中,UBI全局卷表为管理各个区的分区描述的卷表;
405、在UBI全局卷表中,根据分区描述文件分别在分区对应的各个block的头部添加UBI管理信息;
分区的大小是与block对齐的,一个分区可能与一个block对齐,也可能与多个block对齐,这取决于分区和block的大小,例如,分区的大小为10240kb,一个block的大小为1024kb,那么该分区与10个block对齐;
创建UBI全局卷表后,根据分区描述文件分别在分区对应的各个block的头部添加UBI管理信息;
406、获取该分区的用户数据;
用户数据是以分区的形式来组织的独立的bin文件,每个分区有对应的用户数据,执行步骤405后,获取该分区的用户数据;
407、判断用户数据的大小是否小于分区描述文件对应的分区的大小;
判断用户数据的大小是否小于分区描述文件对应的分区的大小,如果小于分区描述文件对应的分区的大小,则执行步骤408,如果不小于分区描述文件对应的分区的大小,则执行步骤409;
408、在用户数据末尾添加0xFF;
因为分区大小在设置时与block的大小是对齐的,但是如果分区中的用户数据的大小小于分区的大小,在生成的烧录文件中就会出现分区大小与block的大小不对齐的问题,所以,如果步骤201中判断出用户数据的大小小于分区描述文件对应的分区的大小,则需要在用户数据末尾添加0xFF,使得添加0xFF后的用户数据的大小与分区描述文件对应的分区的大小相等;
409、将用户数据写入对应的存储块;
将添加了0xFF后大小与的分区描述文件对应的分区的大小相等用户数据写入对应的存储块;
410、判断是否处理完最后一个分区;
当用户数据的大小与分区描述文件对应的分区的大小相等时,再判断是否处理完最后一个分区,如果还未处理完最后一个分区,则执行步骤411,如果已经处理完最后一个分区,则执行步骤412;
411、获取下一个分区描述信息;
如果步骤409中判断出还未处理完最后一个分区,则获取下一个分区描述信息,然后返回步骤402;
412、在初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
在处理完最后一个分区后,已经生成初步的烧录文件,然后在初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
最后生成的烧录文件的组成示意图如图5所示,其中,虚框部分的对齐填充0xFF是根据用户数据的大小和分区的大小决定的,可能有填充的0xFF,也可以没有填充的0xFF,此处不做限定;
需要说明的是,配置信息包括烧录文件的生成数量,即可以根据配置信息指示的烧录文件的生成数量生成一个或者多个烧录文件,这是根据实际需要进行设置的;具体的:
可以通过设置一个参数来实现,当该参数为0时,即需要提供单一的烧写文件,需要考虑在分区的尾部填充0xFF,确保分区大小与存储块大小对齐,所有的用户数据也都要写入一个唯一的烧写文件中;
当参数为1的时候,即需要提供各分区的独立文件,比如一共有三个MTD分区,最后就会生成三个烧写文件,对于MTD分区,只需要插入ECC校验码即可,可不用在尾部填充0xFF;
在需要分区的情况中,还有一种预留分区的情况,即某些分区虽然有定义,但是一开始并没有任何用户数据保存在其中,而是为以后的某种用途预留的分区,在这种情况下,则需要在全局的卷表中保存预留分区的相关配置信息,但是不会有任何对应的用户数据写到烧写文件中;
在本实施例中,通过对文件格式的判断,针对不同的分区文件的文件格式,根据分区描述信息和对应的烧录文件生成数量将用户数据生成烧录文件,既简单又可靠,并且灵活性好,提高了烧录效率。
请参阅图6至图9,本发明针对NAND Flash烧录文件生成装置实施例包括:
获取模块601,用于在需要生成NAND Flash烧录文件时,获取分区描述文件以及对应的配置信息和用户数据,其中,分区描述文件包括一个或者多个分区的分区描述信息,配置信息包括有烧录文件的生成数量;
第一判断模块602,用于根据获取模块601获取的分区描述文件判断对应的分区文件所属的文件格式;
烧录文件生成模块603,用于根据分区描述信息、与该分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件;
在另一实施例中,烧录文件生成模块603包括:
第一生成单元6031,用于当第一判断模块602判断出分区描述文件对应的分区文件为MTD格式时,将获取模块601获取的用户数据写入对应的存储块以生成初步的烧录文件,其中,初步的烧录文件的数量与烧录文件生成数量相同;
第二生成单元6032,用于在第一生成单元6031生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
在另一实施例中,烧录文件生成模块603包括:
第一创建单元6033,用于第一判断模块602判断出分区描述文件对应的分区文件为UBI格式时,根据分区描述信息创建包含各个区的分区描述的UBI全局卷表;
第一添加单元6034,用于根据分区描述信息分别在分区对应的各个存储块的头部添加UBI管理信息;
第三生成单元6035,用于将用户数据写入对应的存储块生成初步的烧录文件,其中,初步的烧录文件的数量与烧录文件生成数量相同;
第四生成单元6036,用于在第三生成单元6045生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
在另一实施例中,烧录文件生成模块603包括:
第一获取单元60371,用于当第一判断模块602判断出分区描述文件对应的分区文件为MTD和UBI的混合格式时,获取第一个分区描述信息;
第一判断单元60372,用于判断第一获取单元获取的分区描述信息对应的分区是MTD格式还是UBI格式;
第二判断单元60373,当第一判断单元60372判断出分区描述信息对应的分区是UBI格式时,再判断该分区描述信息是否是第一个UBI格式的分区描述信息;
第二创建单元60374,用于当第二判断单元60373判断出分区描述信息是第一个UBI格式的分区描述信息时,根据该分区描述信息创建UBI全局卷表;
第二添加单元60375,用于当第二判断单元60373判断出分区描述信息不是第一个UBI格式的分区描述信息时,根据分区描述文件分别在分区对应的各个存储块的头部添加UBI管理信息;
第五生成单元60376,用于当第一判断单元判断出分区描述信息对应的分区是MTD格式时,将所述分区对应的用户数据写入对应的存储块,当处理完最后一个分区描述信息后,生成初步的烧录文件;
第六生成单元60377,用于在第五生成单元60377生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件;
进一步的,烧录文件生成模块603还包括:
第三判断单元,用于判断用户数据的大小是否小于分区描述文件对应的分区的大小;
填充单元,用于当第三判断单元判断出用户数据的大小小于分区描述文件对应的分区的大小时,在该用户数据末尾添加0xFF,从而使该用户数据的大小与该分区描述文件对应的分区的大小相等;
在本实施例中,提供了一种烧录文件生成装置,该装置通过对文件格式的判断,针对不同的分区文件格式,根据分区描述信息和对应的烧录文件生成数量将用户数据生成烧录文件,既简单又可靠,并且灵活性好,提高了烧录效率。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (15)

1.一种针对NAND Flash烧录文件的生成方法,其特征在于,包括:
需要生成NAND Flash烧录文件时,获取分区描述文件及其对应的配置信息与用户数据,所述分区描述文件包括一个或者多个分区的分区描述信息,所述配置信息包括有烧录文件的生成数量;
根据所述分区描述文件判断对应分区文件所属的文件格式;以及
根据所述分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件。
2.根据权利要求1所述的方法,其特征在于,所述根据分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件的步骤包括:
如果分区文件所属的文件格式为内存技术设备(MTD,MemoryTechnology Device)格式,则将所述用户数据写入对应的存储块生成初步的烧录文件;
在所述初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
3.根据权利要求2所述的方法,其特征在于,所述将用户数据写入对应的存储块生成初步的烧录文件的步骤之前包括:
判断所述用户数据的大小是否小于所述分区描述文件对应的分区的大小;
如果所述用户数据的大小小于所述分区描述文件对应的分区的大小,则在所述用户数据末尾添加0xFF,从而使添加0xFF后的用户数据的大小与所述分区描述文件对应的分区的大小相等。
4.根据权利要求1所述的方法,其特征在于,所述根据分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件的步骤包括:
如果分区文件所属的文件格式为未分类块图像(UBI,UnsortedBlock Images)格式,则根据所述分区描述信息创建包含各个分区的分区描述的UBI全局卷表;
根据所述分区描述信息分别在所述分区对应的各个存储块的头部添加UBI管理信息;
将所述用户数据写入对应的存储块生成初步的烧录文件;
在所述初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
5.根据权利要求4所述的方法,其特征在于,所述将用户数据写入对应的存储块生成初步的烧录文件的步骤之前包括:
判断所述用户数据的大小是否小于所述分区描述文件对应的分区的大小;
如果所述用户数据的大小小于所述分区描述文件对应的分区的大小,则在所述用户数据末尾添加0xFF,从而使添加0xFF后的用户数据的大小与所述分区描述文件对应的分区的大小相等。
6.根据权利要求1所述的方法,其特征在于,所述根据分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件的步骤包括:
如果分区文件所属的文件格式为MTD和UBI的混合格式,则获取第一个分区描述信息,然后根据述分区描述信息判断该分区描述信息对应的分区是MTD格式还是UBI格式,如果是MTD格式,则将所述分区对应的用户数据写入对应的存储块,直至处理完最后一个分区描述信息以生成初步的烧录文件,然后在所述烧录文件中插入ECC校验码以生成最终的烧录文件。
7.根据权利要求6所述的方法,其特征在于,所述判断分区描述信息是MTD格式还是UBI格式的步骤之后包括:
如果是UBI格式,则再判断所述分区描述信息是否是第一个UBI格式的分区描述信息,如果所述分区描述信息不是第一个UBI格式的分区描述信息,则根据所述分区描述文件分别在所述分区对应的各个存储块的头部添加UBI管理信息后,再将所述分区对应的用户数据写入对应的存储块,直至处理完最后一个分区描述信息以生成初步的烧录文件,然后在所述初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
8.根据权利要求6或者7所述的方法,其特征在于,所述将分区对应的用户数据写入对应的存储块的步骤之前包括:
判断所述用户数据的大小是否小于所述分区描述文件对应的分区的大小;
如果所述用户数据的大小小于所述分区描述文件对应的分区的大小,则在所述用户数据末尾添加0xFF,从而使用户数据的大小与所述分区描述文件对应的分区的大小相等。
9.根据权利要求8所述的方法,其特征在于,所述判断分区描述信息是否是第一个UBI格式的分区描述信息的步骤之后包括:
如果所述分区描述信息是第一个UBI格式的分区描述信息,则先根据所述分区描述信息创建UBI全局卷表,然后执行根据所述分区描述文件分别在所述分区对应的各个存储块的头部添加UBI管理信息的步骤。
10.一种针对NAND Flash烧录文件生成装置,其特征在于,包括:
获取模块,用于在需要生成NAND Flash烧录文件时,获取分区描述文件及其对应的配置信息和用户数据,所述分区描述文件包括一个或者多个分区的分区描述信息,所述配置信息包括有烧录文件的生成数量;
第一判断模块,用于根据获取模块获取的分区描述文件判断对应的分区文件所属的文件格式;以及
烧录文件生成模块,用于根据所述分区描述信息、与所述分区描述信息对应的烧录文件生成数量以及所述分区文件所属的文件格式将用户数据生成烧录文件。
11.根据权利要求10所述的装置,其特征在于,所述烧录文件生成模块包括:
第一生成单元,用于当第一判断模块判断出所述分区为MTD格式时,将所述用户数据写入对应的存储块以生成初步的烧录文件;
第二生成单元,用于在第一生成单元生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
12.根据权利要求10所述的装置,其特征在于,所述烧录文件生成模块包括:
第一创建单元,用于当第一判断模块判断出所述分区为UBI格式时,根据所述分区描述信息创建包含各个区的分区描述的UBI全局卷表;
第一添加单元,用于根据所述分区描述信息分别在所述分区对应的各个存储块的头部添加UBI管理信息;
第三生成单元,用于将所述用户数据写入对应的存储块生成初步的烧录文件;
第四生成单元,用于在第三生成单元生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
13.根据权利要求10所述的装置,其特征在于,所述烧录文件生成模块包括:
第一获取单元,用于当第一判断模块判断出所述分区为MTD和UBI的混合格式时,获取第一个分区描述信息;
第一判断单元,用于判断第一获取单元获取的分区描述信息对应的分区是MTD格式还是UBI格式;
第五生成单元,用于当第一判断单元判断出分区描述信息对应的分区是MTD格式时,将所述分区对应的用户数据写入对应的存储块,当处理完最后一个分区描述信息后,生成初步的烧录文件;
第六生成单元,用于在第五生成单元生成的初步的烧录文件中插入ECC校验码以生成最终的烧录文件。
14.根据权利要求13所述的装置,其特征在于,所述烧录文件生成模块还包括:
第二判断单元,当第一判断单元判断出分区描述信息对应的分区是UBI格式时,再判断所述分区描述信息是否是第一个UBI格式的分区描述信息;
第二创建单元,用于当第二判断单元判断出所述分区描述信息是第一个UBI格式的分区描述信息时,根据所述分区描述信息创建UBI全局卷表;
第二添加单元,用于当第二判断单元判断出所述分区描述信息不是第一个UBI格式的分区描述信息时,根据所述分区描述文件分别在所述分区对应的各个存储块的头部添加UBI管理信息。
15.根据权利要求11、12或14所述的装置,其特征在于,所述烧录文件生成模块还包括:
第三判断单元,用于判断所述用户数据的大小是否小于所述分区描述文件对应的分区的大小;
填充单元,用于当第三判断单元判断出所述用户数据的大小小于所述分区描述文件对应的分区的大小时,在所述用户数据末尾添加0xFF,从而使所述用户数据的大小与所述分区描述文件对应的分区的大小相等。
CN201210013811.6A 2012-01-17 2012-01-17 一种针对NAND Flash烧录文件的生成方法及相应的装置 Expired - Fee Related CN102722516B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201210013811.6A CN102722516B (zh) 2012-01-17 2012-01-17 一种针对NAND Flash烧录文件的生成方法及相应的装置
TW101145945A TWI498906B (zh) 2012-01-17 2012-12-06 一種針對反及閘快閃記憶體之燒錄檔的產生方法及相應的裝置
US13/742,524 US20130185484A1 (en) 2012-01-17 2013-01-16 File programming method and associated device for nand flash

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210013811.6A CN102722516B (zh) 2012-01-17 2012-01-17 一种针对NAND Flash烧录文件的生成方法及相应的装置

Publications (2)

Publication Number Publication Date
CN102722516A true CN102722516A (zh) 2012-10-10
CN102722516B CN102722516B (zh) 2014-12-17

Family

ID=46948280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210013811.6A Expired - Fee Related CN102722516B (zh) 2012-01-17 2012-01-17 一种针对NAND Flash烧录文件的生成方法及相应的装置

Country Status (3)

Country Link
US (1) US20130185484A1 (zh)
CN (1) CN102722516B (zh)
TW (1) TWI498906B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019794A (zh) * 2012-12-27 2013-04-03 安徽中兴继远信息技术股份有限公司 一种嵌入式多程序文件离线批量烧写方法
CN103593216A (zh) * 2013-11-12 2014-02-19 上海斐讯数据通信技术有限公司 将ubi格式的系统文件制作成工厂烧录映像文件方法
CN104679507A (zh) * 2015-02-05 2015-06-03 四川长虹电器股份有限公司 NAND Flash编程器烧录映像文件的生成方法及装置
CN105005482A (zh) * 2015-08-06 2015-10-28 上海斐讯数据通信技术有限公司 一种nor flash烧录文件制作方法
CN105516806A (zh) * 2015-12-08 2016-04-20 广东长虹电子有限公司 一种电视芯片自动制作升级固件的方法
CN105955722A (zh) * 2016-04-20 2016-09-21 合肥师范学院 嵌入式系统中ubi设备分区快速加载方法
CN106776105A (zh) * 2016-11-15 2017-05-31 惠州Tcl移动通信有限公司 一种系统启动文件的校验及编译方法
CN107145507A (zh) * 2017-03-23 2017-09-08 北京空间飞行器总体设计部 一种面向NandFLASH的多相机多图像并行处理的图像文件系统
CN107301023A (zh) * 2017-06-29 2017-10-27 郑州云海信息技术有限公司 一种固态盘配置信息管理方法和装置
CN107402751A (zh) * 2017-05-23 2017-11-28 博为科技有限公司 一种基于Linux系统NAND FLASH母片烧录镜像实现方法
CN110443032A (zh) * 2019-08-14 2019-11-12 重庆蓝岸通讯技术有限公司 一种针对UBI文件系统在fastboot模式下烧录的加密保护方法
CN112114880A (zh) * 2020-08-07 2020-12-22 深圳市鼎盛光电有限公司 一种智能电视的配置方法、装置、智能电视和存储介质
CN115098146A (zh) * 2022-07-12 2022-09-23 深圳市航顺芯片技术研发有限公司 一种烧录方法、装置、介质及终端

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116230060B (zh) * 2023-05-08 2023-07-21 无锡国芯微高新技术有限公司 一次性可编程存储器的数据编程校验方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1614558A (zh) * 2003-11-06 2005-05-11 联想(北京)有限公司 烧录方法及系统
CN101788962A (zh) * 2009-01-23 2010-07-28 沈阳晨讯希姆通科技有限公司 将文件烧录到无线模块上的方法
CN102122530A (zh) * 2011-01-20 2011-07-13 中兴通讯股份有限公司 一种烧写闪存的系统及方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100405297C (zh) * 2005-05-18 2008-07-23 鸿富锦精密工业(深圳)有限公司 嵌入式系统出厂预设值初始设定程序的更新方法
US7886141B2 (en) * 2007-10-27 2011-02-08 Asix Electronics Corporation Method and systems for advanced reprogrammable boot codes and in-application programming of embedded microprocessor systems
KR20090060774A (ko) * 2007-12-10 2009-06-15 한국전자통신연구원 임베디드 시스템의 펌웨어 및 데이터 미러링 장치 및 방법
US8245214B2 (en) * 2008-06-05 2012-08-14 International Business Machines Corporation Reliably updating computer firmware while performing command and control functions on a power/thermal component in a high-availability, fault-tolerant, high-performance server
US8065304B2 (en) * 2008-06-11 2011-11-22 International Business Machines Corporation Using asymmetric memory
KR20120072228A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 플래시 메모리의 파일 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1614558A (zh) * 2003-11-06 2005-05-11 联想(北京)有限公司 烧录方法及系统
CN101788962A (zh) * 2009-01-23 2010-07-28 沈阳晨讯希姆通科技有限公司 将文件烧录到无线模块上的方法
CN102122530A (zh) * 2011-01-20 2011-07-13 中兴通讯股份有限公司 一种烧写闪存的系统及方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019794B (zh) * 2012-12-27 2016-07-13 安徽中兴继远信息技术股份有限公司 一种嵌入式多程序文件离线批量烧写方法
CN103019794A (zh) * 2012-12-27 2013-04-03 安徽中兴继远信息技术股份有限公司 一种嵌入式多程序文件离线批量烧写方法
CN103593216B (zh) * 2013-11-12 2017-12-05 上海斐讯数据通信技术有限公司 将ubi格式的系统文件制作成工厂烧录映像文件方法
CN103593216A (zh) * 2013-11-12 2014-02-19 上海斐讯数据通信技术有限公司 将ubi格式的系统文件制作成工厂烧录映像文件方法
WO2015070521A1 (zh) * 2013-11-12 2015-05-21 上海斐讯数据通信技术有限公司 将ubi格式的系统文件制作成工厂烧录映像文件方法
CN104679507A (zh) * 2015-02-05 2015-06-03 四川长虹电器股份有限公司 NAND Flash编程器烧录映像文件的生成方法及装置
CN104679507B (zh) * 2015-02-05 2017-10-03 四川长虹电器股份有限公司 NAND Flash编程器烧录映像文件的生成方法及装置
CN105005482A (zh) * 2015-08-06 2015-10-28 上海斐讯数据通信技术有限公司 一种nor flash烧录文件制作方法
CN105005482B (zh) * 2015-08-06 2018-04-06 上海斐讯数据通信技术有限公司 一种nor flash烧录文件制作方法
CN105516806A (zh) * 2015-12-08 2016-04-20 广东长虹电子有限公司 一种电视芯片自动制作升级固件的方法
CN105955722A (zh) * 2016-04-20 2016-09-21 合肥师范学院 嵌入式系统中ubi设备分区快速加载方法
CN106776105A (zh) * 2016-11-15 2017-05-31 惠州Tcl移动通信有限公司 一种系统启动文件的校验及编译方法
CN106776105B (zh) * 2016-11-15 2020-02-21 惠州Tcl移动通信有限公司 一种系统启动文件的校验及编译方法
CN107145507A (zh) * 2017-03-23 2017-09-08 北京空间飞行器总体设计部 一种面向NandFLASH的多相机多图像并行处理的图像文件系统
CN107402751A (zh) * 2017-05-23 2017-11-28 博为科技有限公司 一种基于Linux系统NAND FLASH母片烧录镜像实现方法
CN107301023A (zh) * 2017-06-29 2017-10-27 郑州云海信息技术有限公司 一种固态盘配置信息管理方法和装置
CN110443032A (zh) * 2019-08-14 2019-11-12 重庆蓝岸通讯技术有限公司 一种针对UBI文件系统在fastboot模式下烧录的加密保护方法
CN112114880A (zh) * 2020-08-07 2020-12-22 深圳市鼎盛光电有限公司 一种智能电视的配置方法、装置、智能电视和存储介质
CN115098146A (zh) * 2022-07-12 2022-09-23 深圳市航顺芯片技术研发有限公司 一种烧录方法、装置、介质及终端

Also Published As

Publication number Publication date
TWI498906B (zh) 2015-09-01
TW201331943A (zh) 2013-08-01
US20130185484A1 (en) 2013-07-18
CN102722516B (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN102722516A (zh) 一种针对NAND Flash烧录文件的生成方法及相应的装置
CN103688247B (zh) 混合slc/mlc存储器中的块管理方案
CN102591789B (zh) 存储空间回收方法及装置
CN102332029A (zh) 一种基于Hadoop的海量可归类小文件关联存储方法
CN103778964B (zh) 一种NAND Flash烧写数据的处理、使用方法及装置、系统
CN103902384A (zh) 为虚拟机分配物理机的方法及装置
CN103246549B (zh) 一种数据转存的方法及系统
CN105991478A (zh) 服务器资源分配方法及其系统
CN109033365B (zh) 一种数据处理方法及相关设备
CN105404691A (zh) 一种文件存储的方法及装置
CN106155917A (zh) 内存管理方法及装置
CN106528443A (zh) 适用于星载数据管理的flash管理系统及方法
CN101645062B (zh) 一种报表生成方法、系统
CN107678686A (zh) 基于硬件实现闪存的ftl功能的方法及其数据存储装置
CN109669621A (zh) 一种文件管理方法、文件管理系统、电子设备及存储介质
CN110674052A (zh) 内存管理方法、服务器及可读存储介质
CN106326439A (zh) 一种实时视频存储、检索方法及装置
CN105718328B (zh) 存储器坏区的数据备份方法及系统
CN107644059A (zh) 数据库文件导出的方法和装置、存储介质以及终端设备
CN104156420A (zh) 事务日志的管理方法和装置
CN102141964B (zh) 一种磁带重复使用的方法及装置
US7839684B2 (en) Defective block handling method for a multiple data channel flash memory storage device
CN105528304A (zh) 内存池管理方法
CN111191299A (zh) 一种计算机联锁系统机柜生产图纸自动化生成方法
CN112667523B (zh) 一种测试用例自动填充方法及装置

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141217

Termination date: 20190117