CN113821230A - 一种嵌入式系统的系统固件更新方式设计 - Google Patents
一种嵌入式系统的系统固件更新方式设计 Download PDFInfo
- Publication number
- CN113821230A CN113821230A CN202010557767.XA CN202010557767A CN113821230A CN 113821230 A CN113821230 A CN 113821230A CN 202010557767 A CN202010557767 A CN 202010557767A CN 113821230 A CN113821230 A CN 113821230A
- Authority
- CN
- China
- Prior art keywords
- flash
- design
- command
- command tool
- hardware
- 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.)
- Pending
Links
- 238000013461 design Methods 0.000 title claims abstract description 18
- 238000005192 partition Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 description 15
- 238000000034 method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- KKIMDKMETPPURN-UHFFFAOYSA-N 1-(3-(trifluoromethyl)phenyl)piperazine Chemical compound FC(F)(F)C1=CC=CC(N2CCNCC2)=C1 KKIMDKMETPPURN-UHFFFAOYSA-N 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
Abstract
本发明公开了一种嵌入式系统的系统固件更新方式设计,包括包含在嵌入式系统内的U‑boot源码和一个基于bootloader且集合了其它命令的命令工具,所述命令工具能自动完成一系列硬件相关的操作命令。本发明中,能够有效降低系统固件更新的操作难度,使操作者不用记忆大量的操作指令及其参数用法。同时,充分考虑到了不同硬件平台的可兼容性,避免因为硬件平台的变化而导致的操作流程变化。该方案能够有效的提升开发效率,帮助开发人员更好更快的完成系统固件更新操作。
Description
技术领域
本发明涉及系统固件更新技术领域,尤其涉及一种嵌入式系统的系统固件更新方式设计。
背景技术
目前很多嵌入式处理器都采用bootloader完成板卡启动与内核加载的工作,因此在实际应用中进行系统固件(bootloader镜像、内核镜像、文件系统镜像)更新工作时,bootloader控制台命令行下的自有命令是必不可少的命令工具。
嵌入式系统的bootloader必须承担起嵌入式系统固件更新的工作。系统固件更新工作主要包括:bootloader烧写、内核烧写、文件系统烧写、启动参数设置、环境变量设置、网络参数设置等工作。
bootloader本身集成了丰富的系统固件更新命令工具,可以进行环境变量设置、启动参数设置、网络测试、FLASH烧录等操作,还可以根据实际平台定制一些如网络传输、串口传输、USB传输等特殊固件传输命令工具。
在实际应用方案中,常见的bootloader系统固件更新操作有:
更新NAND FLASH中的bootloader镜像;
更新NAND FLASH中的内核镜像;
更新NAND FLASH中的RAMDISK或者YAFFS2文件系统镜像;
更新SPI FLASH中的bootloader镜像;
更新SPI FLASH中的内核镜像;
更新SPI FLASH中的RAMDISK文件系统镜像;
而想要将这些镜像烧录入对应的FLASH,需要先通过外设将镜像传输到系统内存中,然后才能将其烧写到FLASH中,常见的bootloader命令行镜像传输方式有:网络传输、串口传输、USB传输、SD卡传输等。
此外,bootloader中对SPI FLAHS和NAND FLASH的有各自独立的操作命令,其参数也会受到FLASH大小以及所挂载总线的不同而又所区别。由于FLASH本身的物理特性,需要先对需要烧录的区域进行擦除,然后才能将内存中对应的镜像烧写到指定的区域,无疑增加了操作的复杂程度。而且对于NAND FLASH独有的YAFFS2文件系统,需要用特殊的命令参数进行烧写,在实际操作中很容易被使用者遗漏,造成文件系统无法正常挂载。
由此可见无论进行哪种固件的更新,都需要通过bootloader命令行下的命令集进行实现,需要操作人员精通平台下的bootloader工具集,并熟悉平台硬件外设具体情况,才能进行固件烧录操作。在整个固件更新过程中要输入大量的操作命令,需要根据每一步的具体设置不同的命令参数,并且整个操作过程不能出现任何命令输入错误,否则会导致系统无法正常完成更新,甚至破坏bootloader固件,无法进入bootloader命令行,为开发带来诸多不便。
在完成系统固件的烧录工作之后,还需根据烧录的固件位置及格式进行环境变量和启动参数的设置,进一步提高了系统固件更新操作的难度。并且在实际应用中,设备批量化生产会需要批量烧录,如果使用原有方式更新系统固件会大大降低设备出厂设置的效率。
因此,对于使用bootloader启动系统的嵌入式板卡,在早期调试、中期生产和后期维护过程中随时进行系统固件更新操作,需要一种简便高效的、低风险的bootloader系统固件更新方法。该方法需要具有不依赖于人员技术水平、人员误操作低风险、基于平台既有命令环境、操作简便,普适性强的特性。
发明内容
本发明的目的在于:为了解决上述提出的问题,而提出的一种嵌入式系统的系统固件更新方式设计。
为了实现上述目的,本发明采用了如下技术方案:
一种嵌入式系统的系统固件更新方式设计,包括包含在嵌入式系统内的U-boot源码和一个基于bootloader且集合了其它命令的命令工具,所述命令工具能自动完成一系列硬件相关的操作命令。
作为上述技术方案的进一步描述:
所述操作命令为分离操作目的与平台硬件相关的操作命令。
作为上述技术方案的进一步描述:
所述命令工具可根据操作人对照命令工具使用要求输入参数自动执行一系列相关命令。
作为上述技术方案的进一步描述:
所述U-boot源码中根据硬件平台配置了设备信息,从而使用该命令工具进行操作时无需关注硬件信息。
作为上述技术方案的进一步描述:
所述命令工具能够实现的功能有:系统固件更新到FLASH、格式化FLASH设备分区、查看FLASH设备分区信息和动态启动系统。
作为上述技术方案的进一步描述:
所述命令工具可以移植到不同的硬件平台上,且命令工具的使用方式不受影响。
作为上述技术方案的进一步描述:
所述硬件平台配置的设备信息包括FLASH分区、FLASH挂载的总线和FLASH的片选引脚。
作为上述技术方案的进一步描述:
所述命令工具所有功能可根据实际应用进行扩展。
作为上述技术方案的进一步描述:
所述动态启动包含动态加载内核和挂载网络文件系统,不局限于这两种动态启动方式。
作为上述技术方案的进一步描述:
所述FLASH可以是任何接口的任何种类的FLASH。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
设计一个操作命令,使操作人员通过该操作命令可以完成所有系统固件更新操作,减少操作人员在bootloader命令行输入的命令个数及指令参数,且无需记忆繁多的命令工具的用法,也无需关注硬件设备的具体信息。只需指定文件传输方式、需要更新的系统固件名称、以及烧录的FLASH位置代号即可完成系统固件的更新。有效减少操作人员的工作量,并避免了因输错参数而导致的系统更新失败的问题,大大减少了对操作人员的专业要求,使初次使用者更加容易操作。
并且,板级相关的参数信息,可以由专业人员在初始阶段根据板卡实际硬件情况进行配置,当硬件平台有所改变时,只需修改硬件配置,生成新的bootloader即可。硬件平台的改变不会对该方案的操作方式产生任何影响,进一步加强了该方案的普适性。
此外,该命令会根据烧录系统固件的信息自动设置启动参数和环境变量,操作人员只需设置网络、调试口等简单的固定信息即可。
如上所述,通过采取上述的设计方案,能够有效降低系统固件更新的操作难度,使操作者不用记忆大量的操作指令及其参数用法。同时,充分考虑到了不同硬件平台的可兼容性,避免因为硬件平台的变化而导致的操作流程变化。该方案能够有效的提升开发效率,帮助开发人员更好更快的完成系统固件更新操作。
附图说明
图1示出了根据本发明工作流程框图的示意图;
图2示出了根据本发明编程图的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例,请参阅图1-2,本发明提供一种技术方案:一种嵌入式系统的系统固件更新方式设计,包括包含在嵌入式系统内的U-boot源码和一个基于bootloader且集合了其它命令的命令工具,命令工具能自动完成一系列硬件相关的操作命令,操作命令为分离操作目的与平台硬件相关的操作命令,命令工具可根据操作人对照命令工具使用要求输入参数自动执行一系列相关命令,U-boot源码中根据硬件平台配置了设备信息,从而使用该命令工具进行操作时无需关注硬件信息,命令工具能够实现的功能有:系统固件更新到FLASH、格式化FLASH设备分区、查看FLASH设备分区信息和动态启动系统,命令工具可以移植到不同的硬件平台上,且命令工具的使用方式不受影响,硬件平台配置的设备信息包括FLASH分区、FLASH挂载的总线和FLASH的片选引脚,命令工具所有功能可根据实际应用进行扩展,动态启动包含动态加载内核和挂载网络文件系统,不局限于这两种动态启动方式,FLASH可以是任何接口的任何种类的FLASH。
本发明具体实施的操作命令命名为fload,其格式如下所示:
fload[method]/[file_name]/dev/[dev_name]
该操作命令主要包含三个参数,即传输方式、固件名称和设备名称。操作人员只需指定这三个参数,该命令就会自动完成系统固件的传输和烧写,以及环境变量的设置,其实现流程如图1所示。
本发明操作命令的参数说明如下表所示,可以根据具体需要从表中找出对应的参数进行设置。
其中传输方式可以根据具体的硬件平台增减,FLASH设备的分区与标号可以根据实际的FLASH大小和工程需要进行动态配置和定义。如果使用网络传输方式,需要事先设置好TFTP服务的IP和本地IP,该命令也会在执行网络传输前对网络进行测试。
此外,为了使该方式更好的服务于开发人员,还可额外增加一些开发时常使用的启动方式的支持,如动态加载内核、挂载网络文件系统等方式。还可以添加对FLASH设备分块信息查看和格式化的操作,具体如图2所示。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种嵌入式系统的系统固件更新方式设计,其特征在于,包括包含在嵌入式系统内的U-boot源码和一个基于bootloader且集合了其它命令的命令工具,所述命令工具能自动完成一系列硬件相关的操作命令。
2.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述操作命令为分离操作目的与平台硬件相关的操作命令。
3.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述命令工具可根据操作人对照命令工具使用要求输入参数自动执行一系列相关命令。
4.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述U-boot源码中根据硬件平台配置了设备信息,从而使用该命令工具进行操作时无需关注硬件信息。
5.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述命令工具能够实现的功能有:系统固件更新到FLASH、格式化FLASH设备分区、查看FLASH设备分区信息和动态启动系统。
6.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述命令工具可以移植到不同的硬件平台上,且命令工具的使用方式不受影响。
7.根据权利要求6所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述硬件平台配置的设备信息包括FLASH分区、FLASH挂载的总线和FLASH的片选引脚。
8.根据权利要求1所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述命令工具所有功能可根据实际应用进行扩展。
9.根据权利要求5所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述动态启动包含动态加载内核和挂载网络文件系统,不局限于这两种动态启动方式。
10.根据权利要求7所述的一种嵌入式系统的系统固件更新方式设计,其特征在于,所述FLASH可以是任何接口的任何种类的FLASH。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010557767.XA CN113821230A (zh) | 2020-06-18 | 2020-06-18 | 一种嵌入式系统的系统固件更新方式设计 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010557767.XA CN113821230A (zh) | 2020-06-18 | 2020-06-18 | 一种嵌入式系统的系统固件更新方式设计 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113821230A true CN113821230A (zh) | 2021-12-21 |
Family
ID=78924429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010557767.XA Pending CN113821230A (zh) | 2020-06-18 | 2020-06-18 | 一种嵌入式系统的系统固件更新方式设计 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113821230A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737181A (zh) * | 2023-04-26 | 2023-09-12 | 珠海妙存科技有限公司 | 通用闪存存储芯片及烧录方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035757A (zh) * | 2013-03-07 | 2014-09-10 | 深圳国人通信有限公司 | 基于MIPS处理器的u-boot移植的实现方法 |
CN104965725A (zh) * | 2015-01-16 | 2015-10-07 | 北京中电兴发科技有限公司 | 一种基于sd卡的嵌入式设备全自动固件烧写方法 |
US20170235963A1 (en) * | 2016-02-11 | 2017-08-17 | Line Corporation | Method, apparatus, system and non-transitory computer readable medium for code protection |
CN108196906A (zh) * | 2017-12-28 | 2018-06-22 | 京信通信系统(中国)有限公司 | 一种用户指令处理方法及嵌入式设备 |
CN110096293A (zh) * | 2019-04-30 | 2019-08-06 | 上海睿赛德电子科技有限公司 | 一种基于STM32具有OTA升级功能的通用Bootloader实现方法 |
-
2020
- 2020-06-18 CN CN202010557767.XA patent/CN113821230A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035757A (zh) * | 2013-03-07 | 2014-09-10 | 深圳国人通信有限公司 | 基于MIPS处理器的u-boot移植的实现方法 |
CN104965725A (zh) * | 2015-01-16 | 2015-10-07 | 北京中电兴发科技有限公司 | 一种基于sd卡的嵌入式设备全自动固件烧写方法 |
US20170235963A1 (en) * | 2016-02-11 | 2017-08-17 | Line Corporation | Method, apparatus, system and non-transitory computer readable medium for code protection |
CN108196906A (zh) * | 2017-12-28 | 2018-06-22 | 京信通信系统(中国)有限公司 | 一种用户指令处理方法及嵌入式设备 |
CN110096293A (zh) * | 2019-04-30 | 2019-08-06 | 上海睿赛德电子科技有限公司 | 一种基于STM32具有OTA升级功能的通用Bootloader实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737181A (zh) * | 2023-04-26 | 2023-09-12 | 珠海妙存科技有限公司 | 通用闪存存储芯片及烧录方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101876940B (zh) | 一种自动化测试方法和装置 | |
EP2675110B1 (en) | Method, system and terminal for system update between mobile communication terminals | |
US6247126B1 (en) | Recoverable software installation process and apparatus for a computer system | |
JP5491675B2 (ja) | 情報処理装置及び情報処理装置制御方法 | |
CN106980493B (zh) | 固件管理方法和装置 | |
CN106990985A (zh) | 基于bmc更新及备份系统uefi固件的设备和方法 | |
US8726258B2 (en) | Supporting multiple hardware components in UEFI | |
CN113821230A (zh) | 一种嵌入式系统的系统固件更新方式设计 | |
CN106227630B (zh) | 一种用于嵌入式无线模块的检测系统 | |
CN108932134B (zh) | 服务器bios远程更新方法 | |
CN114816491A (zh) | 用于多系统移动终端的系统升级方法、装置及终端 | |
EP3043262A1 (en) | Method and device for remote base station version installation | |
CN107436778A (zh) | 一种无人系统的高可靠性升级方法 | |
CN110377303A (zh) | 基于备用存储区方式升级程序的方法及其设备 | |
CN114968299A (zh) | 基于Multiboot设备固件升级及异常处理方法 | |
CN110647343B (zh) | 一种OpenPower服务器及其系统部署方法 | |
CN112148376A (zh) | 一种终端启动方法及装置 | |
CN214409967U (zh) | 方便系统更新的硬件平台 | |
JPH0410081B2 (zh) | ||
CN116126366B (zh) | 芯片输入输出接口配置方法,装置,介质及电子设备 | |
CN114327538A (zh) | 一种嵌入式设备更新方法和更新装置 | |
CN117743058A (zh) | 终端测试方法、装置及系统 | |
CN114185561A (zh) | 分体式5g/v2x设备的固件烧录方法、装置及系统 | |
CN112835758A (zh) | 一种测试软件的自启并自动运行的方法及终端设备 | |
CN115408012A (zh) | 一种自动烧录电源管理芯片固件的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |