WO2014190601A1 - 数据烧录系统及方法 - Google Patents

数据烧录系统及方法 Download PDF

Info

Publication number
WO2014190601A1
WO2014190601A1 PCT/CN2013/079947 CN2013079947W WO2014190601A1 WO 2014190601 A1 WO2014190601 A1 WO 2014190601A1 CN 2013079947 W CN2013079947 W CN 2013079947W WO 2014190601 A1 WO2014190601 A1 WO 2014190601A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
block
burned
burning
blocks
Prior art date
Application number
PCT/CN2013/079947
Other languages
English (en)
French (fr)
Inventor
陈敏
吕本凳
Original Assignee
京东方科技集团股份有限公司
北京京东方显示技术有限公司
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 京东方科技集团股份有限公司, 北京京东方显示技术有限公司 filed Critical 京东方科技集团股份有限公司
Publication of WO2014190601A1 publication Critical patent/WO2014190601A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Definitions

  • the present invention relates to the field of data storage technologies, and in particular, to a data burning system and method. Background technique
  • Nand Flash a kind of flash memory
  • Embodiments of the present invention provide a data burning system and method to improve data burning speed.
  • an embodiment of the present invention provides a data burning system, including: a programmer, and a controller and a memory connected to the programmer; the controller, configured to load Burning data and burning a configuration file, and controlling the programmer to perform a burning operation on the data to be burned according to the programming configuration file;
  • the burner is configured to use the data to be burned under the control of the controller
  • the useful data block and the padding data block are burned to the memory
  • the memory is configured to store a useful data block and a filled data block in the data to be burned.
  • the controller includes: a loading unit, a programming data unit, a configuration file unit, and a control unit;
  • the loading unit is configured to load the data to be burned and the programming configuration file;
  • the programming data unit is configured to temporarily store the data to be burned, and the data to be burned includes at least one block, each Blocks include: useful data blocks, padding data blocks, and blank data blocks;
  • the configuration file unit is configured to temporarily store the programming configuration file, where the programming configuration file is used to record the storage data of the useful data block and the filling data block of each block in the data to be burned;
  • the control unit is configured to control, according to the storage information of the useful data block and the padding data block of each block in the to-be-burned data recorded by the programming configuration file, the programmer to control each block
  • the useful data block and the padding data block are sequentially burned to the memory in blocks.
  • the storage information comprises: a useful data block of each block and a start block address of the padding block, an end block address, and a number of useful data blocks and padding data blocks of each block.
  • the data to be burned is a TV firmware image file.
  • the memory is a Nand Flash.
  • an embodiment of the present invention further provides a data burning method, including the steps of:
  • the data to be burned includes at least one block, and each block includes a useful data block, a padding data block, and a blank data block.
  • the programming information file stores the storage information of the useful data block and the padding data block of each block in the to-be-burned data.
  • the storage information includes: a start block address of the useful data block and the padding data block of each block, an end block address, and a number of useful data blocks and padding data blocks of each block.
  • the burning of the useful data block and the padding data in the data to be burned to the memory according to the programming configuration file includes:
  • step b) determining whether the useful data block and the padding data block of all the blocks in the to-be-burned data are all burned to the memory, and if so, ending the process; otherwise, obtaining the next block according to the stored information After starting the useful data block and the padding data block between the block address and the end block address, step b) is repeated.
  • the useful data block and the padding data block in the data to be burned are selected and burned, thereby avoiding blank data blocks.
  • the programming is performed, thereby increasing the programming speed of the large-capacity program memory.
  • FIG. 1 is a block diagram showing the structure of a data burning system according to Embodiment 1 of the present invention
  • FIG. 2 is a block diagram showing the structure of a controller according to Embodiment 1 of the present invention
  • FIG. 3 is a data burning system according to Embodiment 1 of the present invention. A schematic diagram of the comparison of system burning results;
  • FIG. 4 is a flowchart of a data burning method according to Embodiment 2 of the present invention
  • FIG. 5 is a refinement of Step S200 of the data burning method according to Embodiment 2 of the present invention
  • Flow chart Flow chart. detailed description
  • the invention overcomes the deficiencies of the prior art, and provides a data burning scheme, which can be applied to the fast burning of the large-capacity program memory data of the television, so as to carry out the large-capacity program memory of the television in the production line offline.
  • the rapid burning of data thereby greatly reducing the burning time and improving production efficiency.
  • the data burning scheme of the embodiment of the present invention can also apply the quick programming of other data, and is particularly suitable for the case where the amount of data to be burned is large, such as the computer firmware program, the smart phone firmware program, and the like. .
  • the following embodiments illustrate the solution of the present invention by taking the data to be burned as the image of the TV firmware as an example.
  • Example 1 illustrate the solution of the present invention by taking the data to be burned as the image of the TV firmware as an example.
  • the data burning system 100 includes a controller 110, a programmer 120, and a memory 130.
  • the controller 110 is connected to the programmer 120 for loading the data to be burned and the programming profile, and controlling the programmer 120 to perform the data to be burned according to the programming profile. Burn operation.
  • the programmer 120 is configured to burn the useful data block and the padding data block in the data to be burned to the memory 130 under the control of the controller 110.
  • the memory 130 is configured to store the useful data block and the padding data block in the data to be burned.
  • the controller 110 generally employs a computer.
  • the controller 110 further includes: a loading unit 111, a programming data unit 112, a configuration file unit 113, and a control unit 114.
  • the loading unit 111 is configured to load data to be burned and burn the configuration file. Pieces.
  • the data to be burned includes at least one block, and each block includes: a useful data block, a padding data block, and a blank data block.
  • the to-be-burned data may specifically be a TV firmware image file
  • the useful data block may store useful data such as a startup program, a Linux operating system program, a television application, and the like;
  • the padding data block may use OxFF as the data block.
  • the padding data is padded; blank data blocks with or without any data can be reserved before the first block, between two adjacent blocks, and after the last block.
  • the programming configuration file is configured to record the storage data of the useful data block and the padding data block of each block in the to-be-burned data, and is generally formed according to the data to be burned.
  • the storage information includes: a useful data block of each block and a start block address of the padding block, an end block address, and a number of useful data blocks and padding data blocks for each block.
  • Table 1 below is an example of the programming configuration file of the embodiment, wherein the programming configuration file has a total of 16 bytes from 0x0000 to OxOOOF, and the first line (the line with the offset address of 00000010) is a programming profile.
  • the description data is fixed and cannot be modified.
  • each line represents a description of a block of data to be burned: The first 4 bytes are filled with 01 00 00 00; 0x04 to 0x07 bytes are useful data blocks and padding blocks for this block.
  • the starting address that is, the starting block address; 0x08 to OxOB bytes are the useful data block of the block and the address of the end of the padding, that is, the ending block address; OxOC to OxOF is the number of blocks to be written for this block, ie The sum of the number of useful data blocks and padding data blocks in this block.
  • the first block in the TV firmware image file is 0x00 to 0x7F, where 0x02 to 0x59 have data (useful data and padding data).
  • the start block address of the block is 02 00 00 00
  • the end block address of the block is 59 00 00 00
  • the number of blocks of data to be written is 58 00 00 00 00.
  • the configuration file unit 113 is configured to temporarily store the programming configuration file.
  • the control unit 114 is configured to control, according to the description of the programming configuration file temporarily stored in the configuration file unit 113, the number of the to-be-burned
  • the blocks are sequentially burned to the location.
  • the memory 130 is described.
  • the programmer 120 is provided with an IC (Integrated Circuit) holder through which the memory 130 can be connected.
  • IC Integrated Circuit
  • the memory 130 writing the current block starting from the address corresponding to the start block In the useful data block and the padding data block, if a bad block is encountered, that is, the fault block in the memory 130 that cannot store data, the bad block is skipped and the writing is continued until the useful data block and the padding data in the current block.
  • the block is written, wherein the data that failed to be written at the address corresponding to the end block is written by the bad block to the area corresponding to the blank data block of the current block.
  • the memory 130 can adopt Nand Flash, and adopts a nonlinear macro cell mode inside, which has the advantages of large capacity, fast rewriting speed, and the like, and is suitable for storing a large amount of data.
  • FIG. 3 is a schematic diagram showing the comparison between the data burning system and the existing system burning effect according to Embodiment 1 of the present invention.
  • the TV firmware image file has two blocks of data that need to be burned to Nand Flash.
  • the first block starts at 0x0010 blocks and ends at 0x0013 blocks. There are a total of 0x0004 blocks to be programmed.
  • the second block starts at 0x0017 blocks and ends at 0x0023 blocks. There are a total of 0x0007 blocks to be burned. Among them, 0x0010 block, 0x0014 block to 0x0016 block, 0x0023 block are all blank data blocks.
  • the 0x0012 block of Nand Flash is a bad block.
  • the blank data block, the useful data block and the padding data block in the first block are first written into the Nand Flash, and the write is continued after the bad block is skipped, and the first block is written.
  • write the blank data block, the useful data block, and the padding data block in the second block in the same way.
  • the resulting file in Nand Flash is shown on the far right of Figure 3.
  • This method requires that the number of blank blocks in the TV firmware image file must be greater than the number of bad blocks in Nand Flash to ensure that all useful data and padding data can be written to the Nand Flash chip.
  • the blank data block of the TV firmware image file that does not store any data is also burned in the same way as the useful data block and the filled data block, thus causing the entire programming process to take more time.
  • the programmer reads data from the 0x0010 block of the TV firmware image file according to the programming configuration file, and starts writing data from the 0x0010 block of the Nand Flash.
  • the system of the embodiment of the present invention does not need to input additional equipment, and only needs to write a programming configuration file according to the firmware image file of the television, and the programming configuration file only uses useful data in the firmware image file of the television.
  • the block and the padding block are selected for programming, and the blank data block is prevented from being burned, thereby improving the burning speed of the large-capacity program memory.
  • FIG. 4 is a flowchart of a data burning method according to Embodiment 2 of the present invention. As shown in FIG. 4, the method includes the following steps:
  • the data to be burned includes at least one block, and each block includes a useful data block, a padding data block, and a blank data block.
  • the to-be-burned data is a TV firmware image file
  • the useful data block stores useful data such as a startup program, a Linux operating system program, a television application, and the like
  • the padding data block uses OxFF as the padding data. Filling is performed; blank data blocks with or without any data are reserved before the first block, between two adjacent blocks, and after the last block.
  • the storage configuration file records the storage information of the useful data block and the padding data block of each block in the to-be-burned data.
  • the storage information includes: a useful data block of each block and a start block address of the padding block, an end block address, and a number of useful data blocks and padding data blocks of each block.
  • the programming profile For more detailed information, refer to the corresponding description in Embodiment 1.
  • S200 Burn the useful data block and the padding data block in the to-be-burned data to the memory according to the programming configuration file.
  • the step S200 is substantially as follows: according to the recording of the programming configuration file The useful data block of each block in the data to be burned and the storage information of the padding data block, the useful data block and the padding data block in the to-be-burned data are burned to the memory.
  • step S200 specifically includes:
  • S210 Read storage information of the useful data block and the padding data block of each block in the to-be-burned data recorded in the programming configuration file, to obtain a starting block address of the first block in the storage information. Useful data blocks and padding data blocks between the end block addresses.
  • S220 In the memory, write the useful data block and the padding data block in the current block starting from the start block address corresponding to the current block. If a bad block is encountered, skip the bad block and continue writing until the block is reached. The useful data block and the padding data block in the current block are written, wherein the data that is not written at the end block address corresponding to the current block by the bad block is written to the blank data block of the current block. Area.
  • step S230 determining whether the useful data block and the padding data block of all the blocks in the to-be-burned data are all burned to the memory, and if yes, ending the process; otherwise, obtaining the next block in the stored information.
  • the step S220 is performed after starting the useful data block and the padding data block between the block address and the end block address.
  • the method according to the embodiment of the present invention selects and burns only the useful data blocks and the padding data blocks in the TV firmware image file according to the programming configuration file, and avoids burning the blank data blocks. Thereby increasing the large capacity Program memory burning speed.
  • the useful data block and the padding data block in the data to be burned are selected and burned, thereby avoiding blank data block. Burning, thereby increasing the burning speed of the large-capacity program memory.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据存储领域,具体公开了一种数据烧录系统及方法。所述数据烧录系统包括:烧录器,以及与所述烧录器连接的控制器和存储器;所述控制器,用于加载待烧录数据和烧录配置文件,并根据所述烧录配置文件,控制所述烧录器对所述待烧录数据执行烧录操作;所述烧录器,用于在所述控制器控制下将所述待烧录数据中的有用数据块和填充数据块烧录至所述存储器,所述存储器用于存储所述待烧录数据中的有用数据块和填充数据块。根据所述数据烧录系统及方法,根据待烧录数据所对应的烧录配置文件,对待烧录数据中的有用数据块和填充数据块进行选择烧录,避免对空白数据块进行烧录,从而提高了大容量程序存储器的烧录速度。

Description

数据烧录系统及方法 技术领域
本发明涉及数据存储技术领域, 特别涉及一种数据烧录系统 及方法。 背景技术
目前, 随着电视机功能的不断增多, 包括网络电视, 3D立体 电视, 数字电视的出现, 电视机固件程序也变得越来越庞大, 这 就需要采用大容量的 Nand Flash (一种闪存 )数据存储器。
传统的大容量 Nand Flash数据存储器数据下载流程中, 将整 个电视机固件镜像文件下载到 Nand Flash(电视机固件镜像文件的 大小和 Nand Flash的存储空间大小相等) 中, 由于固件镜像文件 中包括很多无数据区块, 这些无数据区块也同时被写入到了 Nand Flash中, 增加了不必要的数据写入时间。 假设整个电视机固件镜 像文件的大小为 2GB , 其中, 实际有用的程序数据只有 150MB , 如果只下载该部分有用的程序数据的时间大约为 25秒, 但是现有 技术中, 会下载完整的 2GB数据到 Nand Flash, 需要约 300秒的 时间。 发明内容
本发明实施例提供了一种数据烧录系统及方法, 以提高数据 烧录的速度。
技术方案
针对现有技术的缺陷, 本发明的实施例提供一种数据烧录系 统, 其包括: 烧录器, 以及与所述烧录器连接的控制器和存储器; 所述控制器, 用于加载待烧录数据和烧录配置文件, 并根据 所述烧录配置文件, 控制所述烧录器对所述待烧录数据执行烧录 操作;
所述烧录器, 用于在所述控制器控制下将所述待烧录数据中 的有用数据块和填充数据块烧录至所述存储器;
所述存储器, 用于存储所述待烧录数据中的有用数据块和填 充数据块。
根据一实施例, 所述控制器包括: 加载单元、 烧录数据单元、 配置文件单元和控制单元;
所述加载单元, 用于加载待烧录数据和烧录配置文件; 所述烧录数据单元, 用于暂存所述待烧录数据, 所述待烧录 数据包括至少一个区块, 每个区块包括: 有用数据块、 填充数据 块和空白数据块;
所述配置文件单元, 用于暂存所述烧录配置文件, 所述烧录 配置文件用于记录所述待烧录数据中每个区块的有用数据块和填 充数据块的存储信息;
所述控制单元, 用于根据所述烧录配置文件记录的所述待烧 录数据中每个区块的有用数据块和填充数据块的存储信息, 控制 所述烧录器将每个区块的有用数据块和填充数据块, 按区块依次 烧录至所述存储器。
根据一实施例, 所述存储信息包括: 每个区块的有用数据块 和填充数据块的开始块地址、 结束块地址, 以及每个区块的有用 数据块和填充数据块的数量。
根据一实施例, 所述待烧录数据为电视机固件镜像文件。 根据一实施例, 所述存储器为 Nand Flash。
根据另一方面, 本发明实施例还提供一种数据烧录方法, 包 括步骤:
加载待烧录数据和烧录配置文件;
根据所述烧录配置文件, 将所述待烧录数据中的有用数据块 和填充数据块烧录至存储器。
根据一实施例, 所述待烧录数据包括至少一个区块, 每个区 块包括有用数据块、 填充数据块和空白数据块。
根据一实施例, 所述烧录配置文件中记录有所述待烧录数据 中每个区块的有用数据块和填充数据块的存储信息。 根据一实施例, 所述存储信息包括: 每个区块的有用数据块 和填充数据块的开始块地址、 结束块地址, 以及每个区块的有用 数据块和填充数据块的数量。
根据一实施例, 根据所述烧录配置文件, 将所述待烧录数据 中的有用数据块和填充数据块烧录至存储器, 具体包括:
a)读取所述烧录配置文件中记录的所述待烧录数据中每个区 块的有用数据块和填充数据块的存储信息, 根据所述存储信息获 得首个区块的开始块地址至结束块地址之间的有用数据块和填充 数据块;
b)在所述存储器中,从对应当前区块的开始块地址处开始写入 当前区块中的有用数据块和填充数据块, 如果遇到坏块, 跳过坏 块后继续写入, 直至当前区块中的有用数据块和填充数据块写入 完毕, 其中, 由坏块导致未能在对应当前区块的结束块地址处写 完的数据被写入至当前区块的空白数据块对应的区域;
c)判断所述待烧录数据中所有区块的有用数据块和填充数据 块是否都被烧录至所述存储器, 如果是, 结束流程; 否则, 根据 所述存储信息获得下一区块的开始块地址至结束块地址之间的有 用数据块和填充数据块后, 重复执行步骤 b)。
通过本发明实施例提供的数据烧录系统及方法, 根据待烧录 数据所对应的烧录配置文件, 对待烧录数据中的有用数据块和填 充数据块进行选择烧录, 避免对空白数据块进行烧录, 从而提高 了大容量程序存储器的烧录速度。 附图说明
图 1是本发明实施例 1的数据烧录系统的模块结构示意图; 图 2是本发明实施例 1的控制器的模块结构示意图; 图 3是本发明实施例 1所述数据烧录系统与现有系统烧录效 果对比示意图;
图 4是本发明实施例 2所述数据烧录方法的流程图; 图 5是本发明实施例 2所述数据烧录方法的步骤 S200的细化 流程图。 具体实施方式
下面结合附图和实施例, 对本发明的具体实施方式作进一步 详细描述。 以下实施例用于说明本发明, 但不用来限制本发明的 范围。
本发明克服了现有技术存在的不足, 提供一种数据烧录方案, 该数据烧录方案可以应用于电视机大容量程序存储器数据的快速 烧录, 以便在生产线离线进行电视机大容量程序存储器数据的快 速烧录, 进而较大的减少烧录时间, 提高生产效率。 另外, 本发 明实施例所述数据烧录方案同样还可以应用其他数据的快速烧 录, 并且尤其适用于待烧录数据量较大的情况, 比如计算机固件 程序、 智能手机固件程序等的烧录。 筒单起见, 以下实施例仅以 待烧录数据为电视机固件镜像文件为例对本发明方案进行说明。 实施例 1
图 1是本发明实施例 1的数据烧录系统的模块结构示意图, 如图 1所示,所述数据烧录系统 100包括:控制器 110、烧录器 120 和存储器 130。
所述控制器 110连接所述烧录器 120,用于加载待烧录数据和 烧录配置文件, 并根据所述烧录配置文件, 控制所述烧录器 120 对所述待烧录数据执行烧录操作。
所述烧录器 120,用于在所述控制器 110控制下将所述待烧录 数据中的有用数据块和填充数据块烧录至所述存储器 130。
所述存储器 130,用于存储所述待烧录数据中的有用数据块和 填充数据块。
具体的, 所述控制器 110—般采用计算机, 参见图 2, 所述控 制器 110进一步包括: 加载单元 111、 烧录数据单元 112、 配置文 件单元 113和控制单元 114。
其中, 所述加载单元 111 , 用于加载待烧录数据和烧录配置文 件。
所述待烧录数据包括至少一个区块, 每个区块包括: 有用数 据块、 填充数据块和空白数据块。
本实施例中, 所述待烧录数据具体可以为电视机固件镜像文 件, 有用数据块中可以存储有启动程序, Linux操作系统程序, 电 视机应用程序等有用数据; 填充数据块可以使用 OxFF作为填充数 据进行填充; 第一个区块之前、 相邻两个区块之间, 以及最后一 个区块之后均可以预留有无任何数据的空白数据块。
所述烧录配置文件用于记录所述待烧录数据中每个区块的有 用数据块和填充数据块的存储信息, 一般根据所述待烧录数据手 工编写形成。
所述存储信息包括: 每个区块的有用数据块和填充数据块的 开始块地址、 结束块地址, 以及每个区块的有用数据块和填充数 据块的数量。
下面表 1是本实施例的烧录配置文件示例, 其中, 该烧录配 置文件每行从 0x0000到 OxOOOF共 16个字节, 第一行(偏移地址 为 00000010的行) 为烧录配置文件的说明数据, 固定不变, 不能 修改。 从第二行开始, 每行都代表待烧录数据的一个区块的说明: 前 4个字节固定填写 01 00 00 00; 0x04到 0x07字节为本区块的有 用数据块和填充数据块开始的地址, 即开始块地址; 0x08到 OxOB 字节为本区块的有用数据块和填充数据块结束的地址, 即结束块 地址; OxOC到 OxOF为本区块需要写入的块数量, 即本区块的有用 数据块和填充数据块的数量之和。 假设电视机固件镜像文件中第 一个区块为 0x00到 0x7F, 其中 0x02到 0x59有数据 (有用数据 和填充数据)。 则该区块的开始块地址为 02 00 00 00, 区块的结束 块地址为 59 00 00 00 , 需要写入的数据的块数量为 58 00 00 00。 根据该烧录配置文件, 烧录过程中将仅对 0x02到 0x59块进行数 据烧录, 而不是对 0x00到 0x7F整个区块进行烧录。 表 1 烧录配置文件示例 Offset(h) 00 01 02 03 04 05 06 07 08 09 OA OB OC OD OE OF Description
00000000 47 52 4F 55 50 20 44 45 46 49 4E 45 32 00 00 00 GROUP DEFIN2..
00000010 01 00 00 00 02 00 00 00 59 00 00 00 58 00 00 00 Y.X.
00000020 01 00 00 00 80 00 00 00 CI 00 00 00 42 00 00 00 A.B.
00000030 01 00 00 00 A5 OC 00 00 54 OD 00 00 BO 00 00 00 T...
00000040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
00000050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
00000060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
00000070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
00000080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
00000090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
000000A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
000000B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy ooooooco FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
000000D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
000000E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy
OOOOOOFO FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF yyyyyyyyyyyyyyyy 所述烧录数据单元 112, 用于暂存所述待烧录数据。
所述配置文件单元 113 , 用于暂存所述烧录配置文件。
所述控制单元 114,用于根据所述配置文件单元 113中暂存的 所述烧录配置文件的说明, 控制所述烧录器 120将所述待烧录数
据的每个区块的有用数据块和填充数据块, 按区块依次烧录至所
述存储器 130。
所述烧录器 120上设置有 IC (集成电路)座, 通过该 IC座可 以连接所述存储器 130。
在所述烧录器 120执行烧录过程中, 每次读取一个区块的开 始块地址至结束块地址之间的有用数据块和填充数据块; 然后在
所述存储器 130中, 从对应所述开始块地址处开始写入当前区块 中的有用数据块和填充数据块, 如果遇到坏块, 即所述存储器 130 中不能存储数据的故障块, 跳过坏块后继续写入, 直至当前区块 中的有用数据块和填充数据块写入完毕, 其中, 由坏块导致未能 在对应所述结束块地址处写完的数据被写入至当前区块的空白数 据块对应的区域。
所述存储器 130可以采用 Nand Flash,其内部采用非线性宏单 元模式, 具有容量较大, 改写速度快等优点, 适用于大量数据的 存储。
图 3是本发明实施例 1所述数据烧录系统与现有系统烧录效 果对比示意图。
如图 3所示, 假设电视机固件镜像文件有两个区块的数据需 要烧录至 Nand Flash。第一个区块开始于 0x0010块,结束于 0x0013 块, 总共有 0x0004个块需要烧录; 第二个区块开始于 0x0017块, 结束于 0x0023块, 总共有 0x0007个块需要烧录。 其中, 0x0010 块之前、 0x0014块到 0x0016块、 0x0023块之后均为空白数据块。 Nand Flash的 0x0012块为坏块。
现有的烧录方案中, 先将第一个区块中的空白数据块、 有用 数据块和填充数据块写入 Nand Flash, 遇到坏块跳过后继续写入, 第一个区块写入完毕后, 按照同样的方法写入第二个区块中的空 白数据块、 有用数据块和填充数据块。 最终得到的 Nand Flash中 的文件如图 3中最右侧所示。 这种方式要求电视机固件镜像文件 最后的空白数据块数量必须大于 Nand Flash的坏块的数量才能保 证所有有用数据和填充数据都能被写入到 Nand Flash芯片中。 在 这种方式中, 电视机固件镜像文件中没有存储任何数据的空白数 据块, 也按照与有用数据块和填充数据块相同的方式进行烧录, 因此, 导致整个烧录过程耗时较多。
当采用本发明实施例所述系统进行烧录时, 烧录器根据所述 烧录配置文件从电视机固件镜像文件的 0x0010块开始读取数据, 从 Nand Flash的 0x0010块开始写入数据, 依次写入 0x0010块, 0x0011块, 跳过 0x0012的坏块, 再接着烧录 0x0013块, 0x0014 块, 总共烧录 4个块后结束本区块的数据烧录; 然后再接着根据 烧录配置文件从电视机固件镜像文件的 0x0017块开始读取数据, 从 Nand Flash的 0x0017块开始写入数据, 依次写入 0x0017块至 0x0023块, 总共烧录 7个块后结束本区块的数据烧录。 这种方式 要求电视机固件镜像文件的每个区块后的空白数据块数量, 必须 大于 Nand Flash中对应于该区块的数据块中坏块的数量才能保证 该区块的有用数据和填充数据能被写入到 Nand Flash芯片中。 在 这种方式中, 电视机固件镜像文件中没有存储任何数据的空白数 据块, 不被执行烧录操作, 因此, 可以有效减少烧录过程耗时, 提高烧录速度。
本发明实施例所述系统不需要投入额外的设备, 只需要根据 电视机固件镜像文件编写一个与之配合的烧录配置文件, 利用该 烧录配置文件只对电视机固件镜像文件中的有用数据块和填充数 据块进行选择烧录, 避免对空白数据块进行烧录, 从而提高了大 容量程序存储器的烧录速度。 实施例 2
图 4是本发明实施例 2所述数据烧录方法的流程图, 如图 4 所示, 所述方法包括步骤:
S100: 加载待烧录数据和烧录配置文件。
其中, 所述待烧录数据包括至少一个区块, 每个区块包括有 用数据块、 填充数据块和空白数据块。 本实施例中, 所述待烧录 数据为电视机固件镜像文件, 其有用数据块中存储有启动程序, Linux操作系统程序, 电视机应用程序等有用数据; 其填充数据块 使用 OxFF作为填充数据进行填充; 第一个区块之前、 相邻两个区 块之间, 以及最后一个区块之后预留有无任何数据的空白数据块。
所述烧录配置文件中记录有所述待烧录数据中每个区块的有 用数据块和填充数据块的存储信息。 所述存储信息包括: 每个区 块的有用数据块和填充数据块的开始块地址、 结束块地址, 以及 每个区块的有用数据块和填充数据块的数量。 所述烧录配置文件 的更加详细信息可以参见实施例 1中相应说明。
S200: 根据所述烧录配置文件, 将所述待烧录数据中的有用 数据块和填充数据块烧录至存储器。
当所述烧录配置文件中记录有所述待烧录数据中每个区块的 有用数据块和填充数据块的存储信息, 该步骤 S200实质为: 根据 所述烧录配置文件记录的所述待烧录数据中每个区块的有用数据 块和填充数据块的存储信息, 将所述待烧录数据中的有用数据块 和填充数据块烧录至存储器。
参见图 6, 所述步骤 S200具体包括:
S210: 读取所述烧录配置文件中记录的所述待烧录数据中每 个区块的有用数据块和填充数据块的存储信息, 获得所述存储信 息中首个区块的开始块地址至结束块地址之间的有用数据块和填 充数据块。
S220: 在所述存储器中, 从对应当前区块的开始块地址处开 始写入当前区块中的有用数据块和填充数据块, 如果遇到坏块, 跳过坏块后继续写入, 直至当前区块中的有用数据块和填充数据 块写入完毕, 其中, 由坏块导致未能在对应当前区块的结束块地 址处写完的数据被写入至当前区块的空白数据块对应的区域。
S230: 判断所述待烧录数据中所有区块的有用数据块和填充 数据块是否都被烧录至所述存储器, 如果是, 结束流程; 否则, 获得所述存储信息中下一区块的开始块地址至结束块地址之间的 有用数据块和填充数据块后执行所述步骤 S220。
其中, 如果在对某一区块的开始块地址至结束地址之间的有 用数据块和填充数据块执行写入时, 却发现所述存储器上相应区 域已经被上一区块的有用数据块或填充数据块占用, 则表示所述 存储器对应上一区块的区域坏块过多, 所述存储器将停止写入, 并提示因坏块过多导致写入失败。
因此, 本发明实施例所述方法根据烧录配置文件, 利用烧录 配置文件只对电视机固件镜像文件中的有用数据块和填充数据块 进行选择烧录, 避免对空白数据块进行烧录, 从而提高了大容量 程序存储器的烧录速度。
本发明实施例所述数据烧录系统及方法, 根据待烧录数据所 对应的烧录配置文件, 对待烧录数据中的有用数据块和填充数据 块进行选择烧录, 避免对空白数据块进行烧录, 从而提高了大容 量程序存储器的烧录速度。
以上实施方式仅用于说明本发明, 而并非对本发明的限制, 有关技术领域的普通技术人员, 在不脱离本发明的精神和范围的 情况下, 还可以做出各种变化和变型, 因此所有等同的技术方案 也属于本发明的范畴, 本发明的专利保护范围应由权利要求限定。

Claims

权 利 要 求 书
1、 一种数据烧录系统, 其特征在于, 包括: 烧录器, 以及与所 述烧录器连接的控制器和存储器;
所述控制器,用于加载待烧录数据和烧录配置文件,并根据所述 烧录配置文件, 控制所述烧录器对所述待烧录数据执行烧录操作; 所述烧录器,用于在所述控制器控制下将所述待烧录数据中的有 用数据块和填充数据块烧录至所述存储器;
所述存储器,用于存储所述待烧录数据中的有用数据块和填充数 据块。
2、如权利要求 1所述的数据烧录系统, 其中, 所述控制器包括: 加载单元、 烧录数据单元、 配置文件单元和控制单元;
所述加载单元, 用于加载待烧录数据和烧录配置文件; 所述烧录数据单元,用于暂存所述待烧录数据,所述待烧录数据 包括至少一个区块, 每个区块包括: 有用数据块、 填充数据块和空白 数据块;
所述配置文件单元,用于暂存所述烧录配置文件,所述烧录配置 文件用于记录所述待烧录数据中每个区块的有用数据块和填充数据 块的存储信息;
所述控制单元,用于根据所述烧录配置文件记录的所述待烧录数 据中每个区块的有用数据块和填充数据块的存储信息,控制所述烧录 器将每个区块的有用数据块和填充数据块,按区块依次烧录至所述存 储器。
3、 如权利要求 2所述的数据烧录系统, 其中, 所述存储信息包 括:每个区块的有用数据块和填充数据块的开始块地址、结束块地址, 以及每个区块的有用数据块和填充数据块的数量。
4、 如权利要求 1至 3任一项所述的数据烧录系统, 其中, 所述 待烧录数据为电视机固件镜像文件。
5、 如权利要求 1至 3任一项所述的数据烧录系统, 其中, 所述 存储器为 Nand Flash。
6、 一种数据烧录方法, 其特征在于, 包括步骤: 加载待烧录数据和烧录配置文件;
根据所述烧录配置文件,将所述待烧录数据中的有用数据块和填 充数据块烧录至存储器。
7、 如权利要求 6所述的数据烧录方法, 其中,
所述待烧录数据包括至少一个区块, 每个区块包括有用数据块、 填充数据块和空白数据块。
8、 如权利要求 6所述的数据烧录方法, 其中,
所述烧录配置文件中记录有关于所述待烧录数据中每个区块的 有用数据块和填充数据块的存储信息。
9、 如权利要求 8所述的数据烧录方法, 其中, 所述存储信息包 括:每个区块的有用数据块和填充数据块的开始块地址、结束块地址, 以及每个区块的有用数据块和填充数据块的数量。
10、如权利要求 9所述的数据烧录方法, 其中, 根据所述烧录配 置文件,将所述待烧录数据中的有用数据块和填充数据块烧录至存储 器, 具体包括:
a)读取所述烧录配置文件中记录的所述待烧录数据中每个区块 的有用数据块和填充数据块的存储信息,根据所述存储信息获得首个 区块的开始块地址至结束块地址之间的有用数据块和填充数据块; b)在所述存储器中,从对应当前区块的开始块地址处开始写入当 前区块中的有用数据块和填充数据块, 如果遇到坏块, 跳过坏块后继 续写入,直至当前区块中的有用数据块和填充数据块写入完毕,其中, 由坏块导致未能在对应当前区块的结束块地址处写完的数据被写入 至当前区块的空白数据块对应的区域;
c)判断所述待烧录数据中所有区块的有用数据块和填充数据块 是否都被烧录至所述存储器, 如果是, 结束流程; 否则, 根据所述存 储信息获得下一区块的开始块地址至结束块地址之间的有用数据块 和填充数据块后, 重复执行步骤 b)。
PCT/CN2013/079947 2013-05-29 2013-07-24 数据烧录系统及方法 WO2014190601A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310205669.X 2013-05-29
CN201310205669XA CN103324503A (zh) 2013-05-29 2013-05-29 一种数据烧录系统及方法

Publications (1)

Publication Number Publication Date
WO2014190601A1 true WO2014190601A1 (zh) 2014-12-04

Family

ID=49193270

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/079947 WO2014190601A1 (zh) 2013-05-29 2013-07-24 数据烧录系统及方法

Country Status (2)

Country Link
CN (1) CN103324503A (zh)
WO (1) WO2014190601A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103605540B (zh) * 2013-11-18 2017-05-03 四川长虹电器股份有限公司 基于安卓系统的快速写入flash镜像的方法
CN104133743B (zh) * 2014-07-22 2016-02-10 青岛智动精工电子有限公司 一种将文件烧录到emmc芯片的方法及装置
CN105843631B (zh) * 2015-01-12 2019-02-15 芋头科技(杭州)有限公司 一种提高系统固件烧写速度的方法
CN105653469B (zh) * 2015-12-30 2018-11-02 深圳Tcl数字技术有限公司 数据写入方法和装置
CN106774261A (zh) * 2016-12-23 2017-05-31 广东嘉腾机器人自动化有限公司 一种agv数据配置系统及其数据的烧录和导入方法
CN106990983B (zh) * 2017-03-21 2021-09-24 北京新能源汽车股份有限公司 单片机烧写方法、装置、系统及单片机
CN107329779A (zh) * 2017-06-13 2017-11-07 芯海科技(深圳)股份有限公司 一种通过烧录文件储存配置数据的烧录方法
CN107766067B (zh) * 2017-09-28 2021-03-02 瑞芯微电子股份有限公司 一种提升压缩镜像烧录速度的方法、存储介质及计算机
CN108037932B (zh) * 2017-12-07 2021-01-15 北京兆易创新科技股份有限公司 Spi-nand的配置文件获取方法和装置
CN109271174A (zh) * 2018-08-01 2019-01-25 广州市星翼电子科技有限公司 一种单片机多个固件分散烧录方法
CN112486506B (zh) * 2019-09-12 2024-02-02 恒为科技(上海)股份有限公司 一种NAND Flash的烧录方法及装置
CN113312065B (zh) * 2021-06-06 2022-10-21 深圳市昂科技术有限公司 数据烧录方法、装置、终端及存储介质
CN113377391B (zh) * 2021-07-21 2023-11-21 北京百度网讯科技有限公司 镜像文件的制作和烧录的方法、装置、设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101111894A (zh) * 2005-01-25 2008-01-23 尼禄股份公司 用于准备dvd视频格式数据的方法,用于重建dvd视频数据的方法和dvd视频数据的结构
CN101218635A (zh) * 2005-08-24 2008-07-09 三星电子株式会社 确保信息记录介质的再现兼容性的方法、记录/再现设备及信息记录介质
US20090198875A1 (en) * 2008-02-05 2009-08-06 Phison Electronics Corp. Data writing method for flash memory, and controller and system using the same
CN102543193A (zh) * 2011-12-31 2012-07-04 深圳创维数字技术股份有限公司 一种闪存烧录方法、烧录设备及烧录系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622250B (zh) * 2012-03-07 2015-01-21 四川长虹电器股份有限公司 一种支持多flash设备的机顶盒软件升级方法
CN103064710B (zh) * 2012-12-26 2016-09-07 深圳市诺威达科技有限公司 一种flash烧录方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101111894A (zh) * 2005-01-25 2008-01-23 尼禄股份公司 用于准备dvd视频格式数据的方法,用于重建dvd视频数据的方法和dvd视频数据的结构
CN101218635A (zh) * 2005-08-24 2008-07-09 三星电子株式会社 确保信息记录介质的再现兼容性的方法、记录/再现设备及信息记录介质
US20090198875A1 (en) * 2008-02-05 2009-08-06 Phison Electronics Corp. Data writing method for flash memory, and controller and system using the same
CN102543193A (zh) * 2011-12-31 2012-07-04 深圳创维数字技术股份有限公司 一种闪存烧录方法、烧录设备及烧录系统

Also Published As

Publication number Publication date
CN103324503A (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
WO2014190601A1 (zh) 数据烧录系统及方法
JP5559001B2 (ja) 組込プログラム更新方法、組込プログラム更新プログラム、電子機器、ネットワークシステム
WO2015070521A1 (zh) 将ubi格式的系统文件制作成工厂烧录映像文件方法
TW201301039A (zh) 韌體燒錄方法
US8977802B2 (en) Access device, information recording device, controller, real time information recording system, access method, and program
CN104699417A (zh) 数据储存装置以及其数据存取方法
JP2013137721A (ja) コントローラ、記憶装置およびプログラム
JP4829370B1 (ja) メモリ制御装置、メモリ装置および停止制御方法
CN108509215A (zh) 一种系统软件的更换方法、装置、终端设备及存储介质
JP4997798B2 (ja) 不揮発性半導体記憶装置およびメモリシステム
JP2013161185A (ja) 磁気テープ装置及びその制御方法
JP4586469B2 (ja) メモリ制御装置、メモリ制御方法、プログラム
TWI540435B (zh) 記憶體系統
CN106155572B (zh) 数据储存装置以及数据存取方法
JP6518159B2 (ja) バイナリイメージをメモリデバイスに転写する方法および装置
TWI490696B (zh) 週邊裝置與其資料存取控制方法
JP2005353046A (ja) 記録媒体、ホスト機器及びデータ処理方法
CN102883220B (zh) 一种机顶盒启动方法及装置
CN102446142B (zh) 一种媒体设备扫描方法、系统及媒体设备
CN105511918A (zh) 一种智能电能表的数据存储格式自动维护方法
JP2010049303A (ja) メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
CN109683914B (zh) 一种flash烧录方法、上位机及烧录系统
JP5930940B2 (ja) 車両用電子制御装置
CN107749307B (zh) 存储系统写盘失败时的重写方法、装置、设备和存储介质
JP5632628B2 (ja) 記録装置、及びその制御方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13885643

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 18/04/2016)

122 Ep: pct application non-entry in european phase

Ref document number: 13885643

Country of ref document: EP

Kind code of ref document: A1