留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

一种高效的嵌入式系统固件局部更新方法

黄鑫 吴跃前 王德明

黄鑫, 吴跃前, 王德明. 一种高效的嵌入式系统固件局部更新方法[J]. 华南师范大学学报(自然科学版), 2021, 53(4): 100-106. doi: 10.6054/j.jscnun.2021064
引用本文: 黄鑫, 吴跃前, 王德明. 一种高效的嵌入式系统固件局部更新方法[J]. 华南师范大学学报(自然科学版), 2021, 53(4): 100-106. doi: 10.6054/j.jscnun.2021064
HUANG Xin, WU Yueqian, WANG Deming. An Efficient Local Firmware Update Method for Embedded System[J]. Journal of South China normal University (Natural Science Edition), 2021, 53(4): 100-106. doi: 10.6054/j.jscnun.2021064
Citation: HUANG Xin, WU Yueqian, WANG Deming. An Efficient Local Firmware Update Method for Embedded System[J]. Journal of South China normal University (Natural Science Edition), 2021, 53(4): 100-106. doi: 10.6054/j.jscnun.2021064

一种高效的嵌入式系统固件局部更新方法

doi: 10.6054/j.jscnun.2021064
基金项目: 

国家自然科学基金项目 62001173

全国统计科学研究项目 2017LY85

广东省普通高校青年创新人才项目 2016KQNCX033

华南师范大学青年教师科研培育基金项目 14KJ05

详细信息
    通讯作者:

    黄鑫,Email: huangxin@m.scnu.edu.cn

  • 中图分类号: TP319

An Efficient Local Firmware Update Method for Embedded System

  • 摘要: 为了解决资源紧缺型嵌入式系统(Resource-scarce Embedded System,RSES)在固件更新时所存在的效率低问题,提出了一种高效的固件局部更新(Efficient Local Firmware Update,EL-FU)方法:新的局部固件先由调试器写入内存,然后由驱动程序写入外存中预留的局部更新区域,最后由调试器进行调试. 该方法通过修改操作系统,增加了更新触发、固件更新、目录添加和提醒4个模块(仅增加了约3 KB代码),实现了不需要使用烧写工具、不需要打包整个固件、仅利用调试器就可以更新局部固件的功能. 测试了在某资源紧缺型的蓝牙音频片上系统(内核为MIPS32 M4K,内存为128 KB)上使用EL-FU方法更新固件后,系统的可靠性和稳定性,并比较了在该系统使用EL-FU方法和传统JDO-FU(JTAG Debugger-based Overall Firmware Update)方法更新固件的效率,同时比较了在该RSES和某资源丰富型嵌入式系统(Resource-rich Embedded System,RRES)更新相同大小固件的效率. 测试结果表明:应用了EL-FU方法的RSES具有可靠性和稳定性;在RSES上采用EL-FU方法的固件更新效率远高于采用JDO-FU方法的;在RSES上使用EL-FU方法更新固件可以克服运算和内存资源少的限制,获得与RRES相近的固件更新效率.
  • 图  1  RSES的典型固件分布

    Figure  1.  The typical firmware distribution of the RSES

    图  2  RSES采用JDO-FU方法更新固件的连接示意图

    Figure  2.  The diagram of the RSES connection with the JDO-FU method

    图  3  JDO-FU方法的流程

    Figure  3.  The process of the JDO-FU method

    图  4  RSES采用EL-FU方法更新固件的连接示意图

    Figure  4.  The diagram of the RSES connection with the EL-FU method

    图  5  应用了EL-FU方法的RSES的系统框图

    Figure  5.  The block diagram of the RSES system with the EL-FU method

    图  6  RSES采用EL-FU方法后的固件分布

    Figure  6.  The distribution of the RSES firmware with the EL-FU method

    图  7  EL-FU方法的流程

    Figure  7.  The process of the EL-FU method

    图  8  测试装置图

    Figure  8.  The diagram of the test device

    表  1  在RSES上利用2种方法更新固件的时间

    Table  1.   The time for updating firmware with the two methods on the RSES  s

    固件更新方法 局部固件大小
    30 KB 50 KB 300 KB 1 MB
    EL-FU 60 61 65 67
    JDO-FU 480 481 482 484
    下载: 导出CSV

    表  2  在RRES上利用GDBL-FU方法更新固件的时间

    Table  2.   The time for updating firmware with the GDBL-FU method on the RRES  s

    固件更新方法 局部固件大小
    30 KB 50 KB 300 KB 1 MB
    GDBL-FU 45 45 46 47
    下载: 导出CSV
  • [1] 曲明成, 崔乃刚, 吴翔虎, 等. 嵌入式软件虚拟化测试技术标准框架研究[J]. 哈尔滨工业大学学报, 2017, 49(5): 49-55. https://www.cnki.com.cn/Article/CJFDTOTAL-HEBX201705008.htm

    QU M C, CUI N G, WU X H, et al. Research on general framework of virtual testing for embedded software[J]. Journal of Harbin Institute of Technology, 2017, 49(5): 49-55. https://www.cnki.com.cn/Article/CJFDTOTAL-HEBX201705008.htm
    [2] HUYNH-VAN D, TRAN-QUOC K, LE-TRUNG Q. An empirical study on approaches of internet of things reconfiguration[C]//Proceedings of the 7th International Conference on Communications and Electronics. Washington: IEEE, 2018: 57-62.
    [3] 康燕萍, 程小辉, 黄鹏. 基于STM32系列电子产品的IAP研究[J]. 现代电子技术, 2017, 40(22): 142-144;148. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201722042.htm

    KANG Y P, CHENG X H, HUANG P. Study on IAP based on electronic products in STM32 series[J]. Mo-dern Electronics Technique, 2017, 40(22): 142-144;148. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201722042.htm
    [4] 王星斗. 复杂嵌入式系统的自动检测技术研究[D]. 北京: 北京理工大学, 2017.

    WANG X D. Research on automatic testing technology of complex embedded system[D]. Beijing: Beijing Institute of Technology, 2017.
    [5] 王豫新, 高美凤. 一种改进的固件增量更新算法[J]. 计算机工程, 2020, 46(10): 210-215. https://www.cnki.com.cn/Article/CJFDTOTAL-JSJC202010027.htm

    WANG Y X, GAO M F. An improved incremental update algorithm for firmware[J]. Computer Engineering, 2020, 46(10): 210-215. https://www.cnki.com.cn/Article/CJFDTOTAL-JSJC202010027.htm
    [6] 郭俊, 虞致国, 洪广伟, 等. 基于RISC-V处理器的固件更新系统设计[J]. 计算机工程与应用, (2021-02-07)[2021-04-29]. https://kns.cnki.net/kcms/detail/11.2127.TP.20210207.0944.002.html.

    GUO J, YU Z G, HONG G W, et al. Design of firmware update system based on RISC-V processor[J]. Computer Engineering and Applications, (2021-02-07)[2021-04-29]. https://kns.cnki.net/kcms/detail/11.2127.TP.20210207.0944.002.html.
    [7] 陈必泉, 黄承慧. GDBSERVER原理分析及其应用[J]. 计算机工程与设计, 2005(3): 746-749. doi: 10.3969/j.issn.1000-7024.2005.03.061

    CHEN B Q, HUANG C H. Analysis of GDBSERVER and its application[J]. Computer Engineering and Design, 2005(3): 746-749. doi: 10.3969/j.issn.1000-7024.2005.03.061
    [8] 方冲, 任海兰, 王成丽. 基于MCU的嵌入式在线升级系统的设计与实现[J]. 电视技术, 2012, 36(5): 22-25. https://www.cnki.com.cn/Article/CJFDTOTAL-DSSS201205011.htm

    FAND C, REN H L, WAND C L. Design and realization of embedded online-upgrade system based on MCU[J]. Video Engineering, 2012, 36(5): 22-25. https://www.cnki.com.cn/Article/CJFDTOTAL-DSSS201205011.htm
    [9] CLARK C J. IEEE standard test access port and boundary scan architecture: 1149.1-2001[S]. New York: IEEE, 2001: 1-200.
    [10] 阳富民, 柯滔, 涂刚. 基于JTAG技术的嵌入式交叉调试软件[J]. 计算机工程与设计, 2005, 26(10): 2817-2819. doi: 10.3969/j.issn.1000-7024.2005.10.081

    YANG F M, KE T, TU G. Embedded cross debugging soft- ware based on JTAG[J]. Computer Engineering and Design, 2005, 26(10): 2817-2819. doi: 10.3969/j.issn.1000-7024.2005.10.081
    [11] 李苑, 郑一麟, 田雨, 等. 基于串口YMODEM和远程FTP固件升级方法研究[J]. 电子测量技术, 2019, 42(13): 132-136. https://www.cnki.com.cn/Article/CJFDTOTAL-DZCL201913024.htm

    LI Y, ZHENG Y L, TIAN Y, et al. Research on YMODEM serial and FTP terminal method for firmware upgrade for STM32 embedded device[J]. Electronic Measurement Technology, 2019, 42(13): 132-136. https://www.cnki.com.cn/Article/CJFDTOTAL-DZCL201913024.htm
    [12] 黄飞龙, 谭晗凌, 陈冰怀. 基于无线分包传输的气象站固件无感升级方法[J]. 计算机测量与控制, 2020, 28(1): 166-169;174. https://www.cnki.com.cn/Article/CJFDTOTAL-JZCK202001035.htm

    HUANG F L, TAN H L, CHEN B H. Non-feelable upgrade of automatic weather station based on wireless packet transmission[J]. Computer Measurement & Control, 2020, 28(1): 166-169;174. https://www.cnki.com.cn/Article/CJFDTOTAL-JZCK202001035.htm
    [13] 陈长, 王铮, 胡俊. 基于SiTCP通信协议的FPGA可回滚远程固件更新方法[J]. 核技术, 2020, 43(11): 42-46. https://www.cnki.com.cn/Article/CJFDTOTAL-HJSU202011006.htm

    CHEN Z, WANG Z, HU J. FPGA remote firmware update method based on SiTCP communication protocol with rollback function[J]. Nuclear Techniques, 2020, 43(11): 42-46. https://www.cnki.com.cn/Article/CJFDTOTAL-HJSU202011006.htm
    [14] 许金宇, 曹子涛, 王冠男. IR46智能电能表固件在线升级方案设计[J]. 电测与仪表, 2018, 55(S1): 71-74. https://www.cnki.com.cn/Article/CJFDTOTAL-DCYQ2018S1016.htm

    XU J Y, CAO Z T, WANG G N. Design of IR46 smart meter online firmware upgrading[J]. Electrical Measurement & Instrumentation, 2018, 55(S1): 71-74. https://www.cnki.com.cn/Article/CJFDTOTAL-DCYQ2018S1016.htm
    [15] 袁凤培. 煤矿多层异构网络远程固件更新方法[J]. 工矿自动化, 2020, 46(12): 101-105. https://www.cnki.com.cn/Article/CJFDTOTAL-MKZD202012016.htm

    YUAN F P. Remote firmware update method for multi-layer heterogeneous networks in coal mines[J]. Industry and Mine Automation, 2020, 46(12): 101-105. https://www.cnki.com.cn/Article/CJFDTOTAL-MKZD202012016.htm
    [16] 何国锋, 李月婷, 刘宇红. 基于模拟BIOS的可穿戴设备固件在线升级实现[J]. 电子技术应用, 2017, 43(3): 63-65;69. https://www.cnki.com.cn/Article/CJFDTOTAL-DZJY201703015.htm

    HE G F, LI Y T, LIU Y H. Firmware online upgrade implementation for wearable devices based on simulating BIOS[J]. Application of Electronic Technique, 2017, 43(3): 63-65;69. https://www.cnki.com.cn/Article/CJFDTOTAL-DZJY201703015.htm
    [17] 胡振波. RISC-V架构与嵌入式开发快速指南[M]. 北京: 人民邮电出版社, 2019: 213-218.
    [18] 曹欲晓, 韩冬, 徐金宝. 一种基于CPUID和AES算法的STM32固件升级方案[J]. 电子技术应用, 2015, 41(3): 28-30;34. https://www.cnki.com.cn/Article/CJFDTOTAL-DZJY201503015.htm

    CAO Y X, HAN D, XU J B. A scheme of firmware upgrade of STM32 based on CPUID and AES algorithm[J]. Application of Electronic Technique, 2015, 41(3): 28-30;34. https://www.cnki.com.cn/Article/CJFDTOTAL-DZJY201503015.htm
    [19] 檀朝新, 张杨, 马柱, 等. 基于IAP技术的远程固件更新系统设计与实现[J]. 中国医疗器械杂志, 2019, 43(6): 425-428. https://www.cnki.com.cn/Article/CJFDTOTAL-ZYLZ201906011.htm

    TAN C X, ZHANG Y, MA Z, et al. Design and implementation of remote firmware update system based on IAP technology[J]. Chinese Journal of Medical Instrumentation, 2019, 43(6): 425-428. https://www.cnki.com.cn/Article/CJFDTOTAL-ZYLZ201906011.htm
  • 加载中
图(8) / 表(2)
计量
  • 文章访问数:  106
  • HTML全文浏览量:  47
  • PDF下载量:  11
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-11-14
  • 网络出版日期:  2021-09-03
  • 刊出日期:  2021-08-25

目录

    /

    返回文章
    返回