基于与非型闪存存储设备的系统软件升级方法技术方案

技术编号:4102614 阅读:225 留言:0更新日期:2012-04-11 18:40
本发明专利技术提出一种基于与非型闪存存储设备的系统软件升级方法,其包括步骤:从网络上读取用于更新与非型闪存其中一个存储页的镜像文件数据块,将所述镜像文件数据块写入与非型闪存中对应的存储页;于所述存储页更新成功后,再依次从网络上读取更新与非型闪存另一个存储页的镜像文件数据块对与非型闪存进行更新处理,直至所有镜像文件数据块均被写入至与非型闪存对应的存储页。本发明专利技术提供的在线一边下载一边进行软件升级的方法,为通过网络进行大范围的、快速的、便利的软件升级提供了实现可能;且本案也不存在本地缓冲镜像文件的存储空间不够而导致整个系统升级失败,从而提高了软件升级的质量。

【技术实现步骤摘要】

本专利技术涉及一种电子设备的软件升级方法,尤其是涉及一种对采用与非型闪存存 储系统软件的电子设备进行一边在线下载一边对与非型闪存中的系统数据进行升级的方法。
技术介绍
Nand-fIash存储器(简称为“与非型闪存”)是flash内存的一种,其内部采用非 线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。Nand-flash存储 器具有容量较大,改写速度快等优点,适用于大量数据的存储,因而在业界得到了越来越广 泛的应用,如嵌入式设备中包括数码相机、MP3随身听记忆卡、体积小巧的U盘等。对采用与非型闪存作为存储器的电子设备而言,不同厂家的电子设备在升级流程 上可能存在一些差异,但是他们升级过程中都有一个很重要的步骤就是更新存储设备中的 数据。一般而言,与非型闪存需要借助专门的软件工具,比如,软件名为mtd-utils(—种用 于专门维护内存技术设备的工具)的nandwrite工具或者相同原理的应用程序去完成。升 级过程中使NandWrite工具或者相同原理的的应用程序将二进制的镜像文件烧写至对应 的分区。Nandffrite 使用方法nandwrite[OPTION] MTD_DEVICE INPUTFILE[OPTION]参数选项MTD_DEVICE 写入分区INPUTFILE 镜像文件路径当往nand flash的页写入数据的时候,每页字节生成一个ECC校验和,保存到页 的OOB数据区。OOB :nand flash中每一页最后有一块区域,用于存放校验的ECC数据和其他一些 信息,比如上层文件系统放的和自己文件系统相关的数据。这个区域,在Linux MTD相关系 统中,被称作 OOB (Out Of Band)。nandwrite操作语中一个参数“INPUTFILE”表示为本地镜像文件路径,如果系统 采用在线升级的方式,就需要将镜像文件下载至内存或者本地存储器中。比如,申请号为 CN200510083029的中国专利申请,其采用软件升级技术就是先将升级数据通过无线互联网 络下载至通信设备本地的缓存区,再利用缓存区下载数据对与非型闪存存储器进行软件更 新处理。现有对与非型闪存存储器更新方式存在如下缺陷若用于系统软件升级的镜像文 件数量较多或者存储容量较大,需要借助外接存储器用于缓冲下载的镜像文件,或者外接 存储器提供用于升级的镜像文件,难于同时对接入网络的若干电子设备进行在线软件升级 处理;鉴于嵌入式硬件资源非常有限,若本地缓冲镜像文件的存储空间不够时,将会导致整 个系统升级失败。
技术实现思路
本专利技术提出一种,在线网络升级时 可以实现边下载边写入用于升级的镜像文件,从而避免先将整个镜像文件下至与非型闪存 中,导致存储空间消耗过大或者存储空间不够而无法实现升级的技术问题。本专利技术提出的采用了如下技术方 案来实现从网络上读取用于更新与非型闪存其中一个存储页的镜像文件数据块,将所述镜 像文件数据块写入与非型闪存中对应的存储页,包括同时更新该存储页的数据部分与OOB 部分;于所述存储页更新成功后,再依次从网络上读取更新与非型闪存另一个存储页的 镜像文件数据块对与非型闪存进行更新处理,直至所有镜像文件数据块均被写入至与非型 闪存对应的存储页。在本专利技术的一种优选实施方式中,是将更新与非型闪存每一存储页中OOB部分的 更新数据预先写入至网络上对应的镜像文件数据块;利用所述镜像文件数据块同时更新与 非型闪存中对应存储页的数据部分与OOB部分。在本专利技术的另一种优选实施方式中,是将所述镜像文件数据块写入与非型闪存中 对应的存储页的数据部分,同时通过相应的算法更新OOB数据区的数据。其中,所述镜像文件数据块存放在服务器或网站,采用与非型闪存作为存储的电 子设备通过网络访问该服务器或网站获取所述镜像文件数据块。与现有技术相比,本专利技术具有如下有益技术效果本专利技术以Nand Flash芯片的存储页(Page)为单位从网络上下载与非型闪存中更 新每页数据对应的镜像文件部分,将下载的镜像文件部分烧入至与非型闪存对应的存储页 实现同时更新与Nand Flash芯片中每一个存储页的数据部分与OOB部分,从而实现了一边 从网络上下载用于软件升级的镜像文件一边对Nand Flash芯片进行软件升级处理。本发 明无需将整个镜像文件全部下载完毕才能进行软件升级,更无需借助外接存储器提供缓冲 镜像文件,从而为通过网络进行大范围的、快速的、便利的软件升级提供了实现可能;且本 案也不存在本地缓冲镜像文件的存储空间不够而导致整个系统升级失败,从而提高了软件 升级的质量。附图说明图1是本专利技术实现在线升级的流程示意图。 具体实施例方式为便于理解,先以型号为Samsung K9F1208U0B的Nand flash芯片对与非型闪存 存储器作简单介绍。Nand Flash芯片型号为Samsung K9F1208U0B的数据存储容量为64MB,采用块页 式存储管理,8个I/O引脚充当数据、地址、命令的复用端口。芯片内部存储布局及存储操作 特点一片Nand Flash芯片为一个设备(Device),其数据存储分层为1 设备(Device) = 4096 块(Blocks);1块(Block) = 32页/行(Pages/Rows),页与行是相同的意思;1页(Page) = 528字节(Bytes)=数据部分(容量为512Bytes) +OOB部分(容量 为 16Bytes)。在每一页中,最后16个字节(又称OOB块)用于Nand Flash芯片命令执行完 后设置状态用,剩余512个字节又分为前半部分和后半部分,可以通过Nand Flash命令 00h/01h/50h分别对前半部、后半部、OOB进行定位,通过Nand Flash内置的指针指向各自 的首地址。存储操作特点1.擦除操作的最小单位是块(Block)。2. Nand Flash芯片每一位(bit)只能从1变为0,而不能从0变为1,所以在对其 进行写入操作之前要一定将相应块擦除(擦除即是将相应块得位全部变为1)。3. OOB部分的第6字节(即517字节)标志是否是坏块,如果不是坏块该值为FF, 否则为坏块。4.除OOB第6字节外,通常至少把OOB的前3个字节存放Nand Flash芯片的硬件 ECC(Error Correcting Code,错误检查和纠正)码。如图1所示,本专利技术提供一种,以 NandFlash芯片的存储页(Page)为单位从网络上下载与非型闪存中更新每页数据对应的 镜像文件部分,将下载的镜像文件部分烧入至与非型闪存对应的存储页。具体如下步骤Sl 通过网络从服务器读取用于软件升级的镜像文件,每次读取1个存储页 (Page)的镜像文件数据块;步骤S2 判断是否下载成功,若成功转入步骤S3,否则结束升级处理。步骤S3 将该镜像文件数据块写入与非型闪存中对应的存储页(Page),包括同时 更新该页的数据部分与00B部分。该页的数据部分的更新数据来源于所述镜像文件数据块。而该页的00B部分的更 新方式有两种其一是事先通过00B数据写入工具将00B部分的更新数据写入服务器上的 镜像文件,因此从网络读取加入00B更新数据的镜像文件数据块后,根据该镜像文件数据 块更新该页的00B部分;本文档来自技高网
...

【技术保护点】
一种基于与非型闪存存储设备的系统软件升级方法,其特征在于包括步骤:从网络上读取用于更新与非型闪存其中一个存储页的镜像文件数据块,将所述镜像文件数据块写入与非型闪存中对应的存储页,包括同时更新该存储页的数据部分与OOB部分;于所述存储页更新成功后,再依次从网络上读取更新与非型闪存另一个存储页的镜像文件数据块对与非型闪存进行更新处理,直至所有镜像文件数据块均被写入至与非型闪存对应的存储页。

【技术特征摘要】
一种基于与非型闪存存储设备的系统软件升级方法,其特征在于包括步骤从网络上读取用于更新与非型闪存其中一个存储页的镜像文件数据块,将所述镜像文件数据块写入与非型闪存中对应的存储页,包括同时更新该存储页的数据部分与OOB部分;于所述存储页更新成功后,再依次从网络上读取更新与非型闪存另一个存储页的镜像文件数据块对与非型闪存进行更新处理,直至所有镜像文件数据块均被写入至与非型闪存对应的存储页。2.根据权利要求1所述基于与非型闪存存储设备的系统软件升级方法,其特征在于, 还包括步骤将更新与非型闪存每一存储页中OOB部...

【专利技术属性】
技术研发人员:邬惺景麟邓宇孔庆峰
申请(专利权)人:深圳创维数字技术股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1