CN115904453A - 一种基于双芯片的程序在线升级系统及升级方法 - Google Patents
一种基于双芯片的程序在线升级系统及升级方法 Download PDFInfo
- Publication number
- CN115904453A CN115904453A CN202211061597.1A CN202211061597A CN115904453A CN 115904453 A CN115904453 A CN 115904453A CN 202211061597 A CN202211061597 A CN 202211061597A CN 115904453 A CN115904453 A CN 115904453A
- Authority
- CN
- China
- Prior art keywords
- main control
- control chip
- chip
- program
- upgrading
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于双芯片的程序在线升级系统及升级方法,系统包括:上位机、主控芯片、主控芯片FLASH模块、BIOS芯片、BIOS芯片FLASH模块;上位机用于发送升级指令和升级程序文件至主控芯片;BIOS芯片可对BIOS芯片FLASH模块中的升级标志和备份程序文件进行调用;主控芯片可对主控芯片FLASH模块中的当前程序文件进行调用;主控芯片和BIOS芯片能够相互通信;本发明能有效避免程序升级过程中意外断电、FLASH擦写异常、烧写的程序本身错误所带来的风险,使主控芯片始终可正常运行,还可以根据用户需求随时进行升级。
Description
技术领域
本发明属于程序在线升级技术领域,具体涉及一种基于双芯片的程序在线升级系统及升级方法。
背景技术
随着微控电子技术的飞速发展,DSP、ARM等芯片在数字信号处理、通信、控制等领域的运用越来越广泛。而对芯片更新程序的常用手段是使用芯片自身的开发环境通过JTAG、SWD接口操作来实现的。采用传统的程序更新方法,需要拆开产品,将产品主控芯片的仿真器接口暴露出来,通过连接仿真器构建通讯链路,通过专业软件对程序进行更新。对于产品来讲,这种方法极其不便。
目前存在的程序在线升级方法,通常需要通过手动断电复位,重启芯片后进行升级,不能随时根据用户需求进行程序在线升级,且在升级过程中不能应对意外断电、FLASH异常以及烧写的程序本身错误所带来的异常风险。
发明内容
有鉴于此,本发明提供了一种基于双芯片的程序在线升级系统及升级方法,能有效避免程序升级过程中意外断电、FLASH擦写异常、烧写的程序本身错误所带来的风险,使主控芯片始终可正常运行,还可以根据用户需求随时进行升级。
本发明是通过下述技术方案实现的:
一种基于双芯片的程序在线升级系统,包括:上位机、主控芯片、主控芯片FLASH模块、BIOS芯片、BIOS芯片FLASH模块;
主控芯片FLASH模块存放有升级前程序文件作为当前程序文件,用于程序的正常运行;
BIOS芯片FLASH模块存放有升级标志和备份程序文件;BIOS芯片可对BIOS芯片FLASH模块中的升级标志和备份程序文件进行调用:
上位机用于发送升级指令和升级程序文件至主控芯片;
主控芯片将升级指令传输至BIOS芯片,BIOS芯片根据升级指令判断和更新BIOS芯片FLASH模块内的升级标志,并生成相应的反馈升级指令,BIOS芯片将反馈升级指令传输至主控芯片;BIOS芯片还可根据升级指令将BIOS芯片FLASH模块中的备份程序文件发送至主控芯片;BIOS芯片还可对主控芯片进行复位;
主控芯片根据反馈升级指令进行升级;主控芯片擦除主控芯片FLASH模块中的升级前程序文件,接收上位机的升级程序文件或者BIOS芯片FLASH模块的备份程序文件,将升级程序文件或者备份程序文件固化在主控芯片FLASH模块中成为当前程序文件;
主控芯片可对主控芯片FLASH模块中的当前程序文件进行调用。
进一步的,一种基于双芯片的程序在线升级系统,还包括调试接口模块,用于连接外部仿真器对主控芯片和BIOS芯片进行调试以及首次升级前程序文件和备份程序文件的下载。
进一步的,调试接口模块包括主控芯片的JTAG接口和BIOS芯片的SWD接口。
进一步的,升级标志包括执行当前程序标志、执行更新程序标志和执行备份程序标志;
反馈升级指令为执行当前程序指令、执行更新程序指令以及执行备份程序指令中的一个指令;
其中,当升级标志的判断结果为执行当前程序标志时,对应的反馈升级指令为执行当前程序指令;
当升级标志的判断结果为执行更新程序标志时,对应的反馈升级指令为执行更新程序指令;
当升级标志的判断结果为执行备份程序标志时,对应的反馈升级指令为执行备份程序指令。
进一步的,上位机和主控芯片通过串口连接,采用RS422通信方式进行通信;主控芯片FLASH模块与主控芯片通过EMIF总线连接;BIOS芯片FLASH模块与BIOS芯片采用SPI通信方式,SPI总线模式为模式3;主控芯片和BIOS芯片通过串口连接,采用TTL通信方式进行通信。
一种基于双芯片的程序在线升级方法,基于一种基于双芯片的程序在线升级系统,具体逻辑流程如下:
上位机传输升级指令至主控芯片,升级开始,主控芯片接收上位机传输的升级指令后,与BIOS芯片握手,若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片根据升级指令判断升级标志;
所述升级指令是执行更新程序指令时,BIOS芯片判断的升级标志是执行更新程序标志,BIOS芯片将执行更新程序指令传输至主控芯片,且更新升级标志为执行备份程序标志;主控芯片接收到执行更新程序指令后,主控芯片接收上位机传输的升级程序文件并固化到主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行;
其中,如果主控芯片接收上位机传输的升级程序文件未超时,则继续接收,直至接收完毕;如果接收升级程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行备份程序标志,BIOS芯片将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
然后,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
进一步的,所述升级指令是执行备份程序指令时,判断的升级标志是执行备份程序标志,BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
进一步的,所述升级指令是执行当前程序指令时,判断的升级标志是执行当前程序标志,BIOS芯片将执行当前程序指令传输至主控芯片,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
进一步的,如果主控芯片接收备份程序文件未超时则继续接收,直至接收完毕;如果主控芯片接收备份程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志还是执行备份程序标志,进行下述步骤:
BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
有益效果:
(1)本发明一种基于双芯片的程序在线升级系统包括:上位机、主控芯片、主控芯片FLASH模块、BIOS芯片、BIOS芯片FLASH模块;主控芯片FLASH模块存放有升级前程序文件作为当前程序文件,用于程序的正常运行;BIOS芯片FLASH模块存放有升级标志和备份程序文件;BIOS芯片可对BIOS芯片FLASH模块中的升级标志和备份程序文件进行调用:上位机用于发送升级指令和升级程序文件至主控芯片;主控芯片将升级指令传输至BIOS芯片,BIOS芯片根据升级指令判断和更新BIOS芯片FLASH模块内的升级标志,并生成相应的反馈升级指令,BIOS芯片将反馈升级指令传输至主控芯片;BIOS芯片还可根据升级指令将BIOS芯片FLASH模块中的备份程序文件发送至主控芯片;BIOS芯片还可对主控芯片进行复位;主控芯片根据反馈升级指令进行升级;主控芯片擦除主控芯片FLASH模块中的升级前程序文件,接收上位机的升级程序文件或者BIOS芯片FLASH模块的备份程序文件,将升级程序文件或者备份程序文件固化在主控芯片FLASH模块中成为当前程序文件;主控芯片可对主控芯片FLASH模块中的当前程序文件进行调用。本发明通过设置主控芯片和BIOS芯片两个能够相互通信的芯片,主控芯片可对主控芯片FLASH模块进行调用以及BIOS芯片可对BIOS芯片FLASH模块进行调用,在BIOS芯片FLASH模块存储备份程序文件,当更新程序发生错误或者中断时,BIOS芯片能将BIOS芯片FLASH模块中的备份程序文件发送至主控芯片,从而有效避免程序升级过程中意外断电、FLASH擦写异常、烧写的程序本身错误所带来的风险,使主控芯片始终可正常运行。
(2)本发明还包括调试接口模块,用于连接外部仿真器对主控芯片和BIOS芯片进行调试以及首次升级前程序文件和备份程序文件的下载。在主控芯片或BIOS芯片发生问题时,可以通过调试接口模块对主控芯片和BIOS芯片进行调试,以保证程序的正常在线升级。
(3)本发明中升级标志包括执行当前程序标志、执行更新程序标志和执行备份程序标志;反馈升级指令为执行当前程序指令、执行更新程序指令以及执行备份程序指令中的一个指令;其中,当升级标志的判断结果为执行当前程序标志时,对应的反馈升级指令为执行当前程序指令;当升级标志的判断结果为执行更新程序标志时,对应的反馈升级指令为执行更新程序指令;当升级标志的判断结果为执行备份程序标志时,对应的反馈升级指令为执行备份程序指令。本发明中,BIOS芯片可根据升级标志的判断结果对主控芯片传输相应的反馈升级指令,使主控芯片执行相应的程序,实现主控芯片和BIOS芯片之间的有效通信。
(4)本发明一种基于双芯片的程序在线升级方法的具体逻辑流程如下:上位机传输升级指令至主控芯片,升级开始,主控芯片接收上位机传输的升级指令后,与BIOS芯片握手,若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片根据升级指令判断升级标志;所述升级指令是执行更新程序指令时,BIOS芯片判断的升级标志是执行更新程序标志,BIOS芯片将执行更新程序指令传输至主控芯片,且更新升级标志为执行备份程序标志;主控芯片接收到执行更新程序指令后,主控芯片接收上位机传输的升级程序文件并固化到主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行;其中,如果主控芯片接收上位机传输的升级程序文件未超时,则继续接收,直至接收完毕;如果接收升级程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行备份程序标志,BIOS芯片将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;然后,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
通过上述流程,本发明在在线升级时,接收上位机的更新程序命令,可接收上位机的升级程序文件进行升级,同时BIOS芯片更新升级标志为执行备份程序标志,所以在主控芯片接收上位机的升级程序文件超时时,或者说在程序升级过程中意外断电、FLASH擦写异常、烧写的程序本身错误时,BIOS芯片可对主控芯片进行复位,然后再根据执行备份程序标志将备份程序文件传输至主控芯片,以恢复程序的正常运行。
同时,BIOS芯片还可对主控芯片进行复位,无需手动断电复位,可以随时根据用户的需求进行升级。
(5)本发明中所述升级指令是执行备份程序指令时,判断的升级标志是执行备份程序标志,BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。本发明中升级指令还包括执行备份程序指令,在升级前程序文件程序发生错误时,也可以通过上位机发送执行备份程序指令主动控制,用备份程序文件替换升级前程序文件,以保证程序的正常运行。
(6)本发明中,如果主控芯片接收备份程序文件未超时则继续接收,直至接收完毕;如果主控芯片接收备份程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志还是执行备份程序标志,进行下述步骤:BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。本发明中BIOS芯片可以重复调用BIOS芯片FLASH模块中的备份程序文件并发送至主控芯片,如果控芯片接收备份程序文件超时,BIOS芯片对主控芯片进行复位,BIOS芯片判断升级标志,此时升级标志还是执行备份程序标志,主控芯片再次执行备份程序指令,进一步保证在程序升级过程中意外断电、FLASH擦写异常、烧写的程序本身错误时,能够恢复程序的正常运行。
附图说明
图1是程序在线升级系统的硬件框图;
图2是程序在线升级方法的逻辑流程图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
实施例1:
本实施例提供了一种基于双芯片的程序在线升级系统,参见附图1,包括:上位机、主控芯片、主控芯片FLASH模块、BIOS芯片、BIOS芯片FLASH模块;
主控芯片FLASH模块存放有升级前程序文件作为当前程序文件,用于程序的正常运行;
BIOS芯片FLASH模块存放有升级标志和备份程序文件;BIOS芯片可对BIOS芯片FLASH模块中的升级标志和备份程序文件进行调用:
上位机用于发送升级指令和升级程序文件至主控芯片;
主控芯片将升级指令传输至BIOS芯片,BIOS芯片可根据升级指令判断和更新BIOS芯片FLASH模块内的升级标志,并生成相应的反馈升级指令,BIOS芯片将反馈升级指令传输至主控芯片;BIOS芯片还可根据升级指令将BIOS芯片FLASH模块中的备份程序文件发送至主控芯片;BIOS芯片还可对主控芯片进行复位;
主控芯片根据反馈升级指令进行升级;主控芯片擦除主控芯片FLASH模块中的升级前程序文件,接收上位机的升级程序文件或者BIOS芯片FLASH模块的备份程序文件,将升级程序文件或者备份程序文件固化在主控芯片FLASH模块中成为当前程序文件;
主控芯片可对主控芯片FLASH模块中的当前程序文件进行调用。
进一步的,一种基于双芯片的程序在线升级系统还包括调试接口模块,用于连接外部仿真器对主控芯片和BIOS芯片进行调试以及首次升级前程序文件和备份程序文件的下载。
进一步的,升级标志包括执行当前程序标志、执行更新程序标志和执行备份程序标志;
反馈升级指令为执行当前程序指令、执行更新程序指令以及执行备份程序指令中的一个指令;
其中,当升级标志的判断结果为执行当前程序标志时,对应的反馈升级指令为执行当前程序指令;
当升级标志的判断结果为执行更新程序标志时,对应的反馈升级指令为执行更新程序指令;
当升级标志的判断结果为执行备份程序标志时,对应的反馈升级指令为执行备份程序指令。
进一步的,主控芯片采用的处理器较BIOS芯片性能高和稳定性好;由于BIOS芯片实现的功能较主控芯片简单,采用比主控芯片性能差和稳定性差的处理器,成本低,性价比更高。
进一步的,上位机和主控芯片通过串口连接,采用RS422通信方式进行通信;主控芯片FLASH模块与主控芯片通过EMIF总线连接;BIOS芯片FLASH模块与BIOS芯片采用SPI通信方式,SPI总线模式为模式3;主控芯片和BIOS芯片通过串口连接,采用TTL通信方式进行通信。
进一步的,调试接口模块包括主控芯片的JTAG接口和BIOS芯片的SWD接口。
进一步的,主控芯片采用型号为LCDSP0102的处理器,该处理器核为高性能的C6713浮点DSP,工作主频200MHz,性能1200MFLOPS,1600MIPS;
BIOS芯片采用ARM处理器,型号为STM32F103C8T6,该处理器是一款基于ARMCortex-M内核STM32系列的32位微控制器,工作主频为72MHz;
BIOS芯片FLASH模块选用低功耗NAND Flash芯片,NAND Flash芯片的型号为W25N01GV,容量为1Gbit;
主控芯片FLASH模块选用型号为S29GL512P的Flash芯片,芯片容量为512Mbit;
上位机和主控芯片连接的串口型号为MAX3490ESA,最高波特率为921600bps。
实施例2:
本实施例提供了一种基于双芯片的程序在线升级方法,基于实施例1中的一种基于双芯片的程序在线升级系统,参见附图2,具体逻辑流程如下:
上位机传输升级指令至主控芯片,升级开始,主控芯片接收上位机传输的升级指令后,与BIOS芯片握手,若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片根据升级指令判断升级标志,根据升级标志的不同分为以下三种情况:
(1)升级指令是执行更新程序指令,BIOS芯片判断的升级标志是执行更新程序标志,BIOS芯片将执行更新程序指令传输至主控芯片,且更新升级标志为执行备份程序标志;主控芯片接收到执行更新程序指令后,主控芯片接收上位机传输的升级程序文件并固化到主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行;
其中,如果主控芯片接收上位机传输的升级程序文件未超时,则继续接收,直至接收完毕;如果接收升级程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行备份程序标志,BIOS芯片将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
然后,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
(2)升级指令是执行备份程序指令时,判断的升级标志是执行备份程序标志,BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
(3)升级指令是执行当前程序指令时,判断的升级标志是执行当前程序标志,BIOS芯片将执行当前程序指令传输至主控芯片,主控芯片调用主控芯片FLASH模块中的当前程序文件(即升级前程序文件)并运行;
进一步的,如果主控芯片接收备份程序文件未超时则继续接收,直至接收完毕;如果主控芯片接收备份程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志还是执行备份程序标志,进行下述步骤:
BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于双芯片的程序在线升级系统,其特征在于,包括:上位机、主控芯片、主控芯片FLASH模块、BIOS芯片、BIOS芯片FLASH模块;
主控芯片FLASH模块存放有升级前程序文件作为当前程序文件,用于程序的正常运行;
BIOS芯片FLASH模块存放有升级标志和备份程序文件;BIOS芯片可对BIOS芯片FLASH模块中的升级标志和备份程序文件进行调用:
上位机用于发送升级指令和升级程序文件至主控芯片;
主控芯片将升级指令传输至BIOS芯片,BIOS芯片根据升级指令判断和更新BIOS芯片FLASH模块内的升级标志,并生成相应的反馈升级指令,BIOS芯片将反馈升级指令传输至主控芯片;BIOS芯片还可根据升级指令将BIOS芯片FLASH模块中的备份程序文件发送至主控芯片;BIOS芯片还可对主控芯片进行复位;
主控芯片根据反馈升级指令进行升级;主控芯片擦除主控芯片FLASH模块中的升级前程序文件,接收上位机的升级程序文件或者BIOS芯片FLASH模块的备份程序文件,将升级程序文件或者备份程序文件固化在主控芯片FLASH模块中成为当前程序文件;
主控芯片可对主控芯片FLASH模块中的当前程序文件进行调用。
2.如权利要求1所述一种基于双芯片的程序在线升级系统,其特征在于,还包括调试接口模块,用于连接外部仿真器对主控芯片和BIOS芯片进行调试以及首次升级前程序文件和备份程序文件的下载。
3.如权利要求2所述一种基于双芯片的程序在线升级系统,其特征在于,调试接口模块包括主控芯片的JTAG接口和BIOS芯片的SWD接口。
4.如权利要求1所述一种基于双芯片的程序在线升级系统,其特征在于,升级标志包括执行当前程序标志、执行更新程序标志和执行备份程序标志;
反馈升级指令为执行当前程序指令、执行更新程序指令以及执行备份程序指令中的一个指令;
其中,当升级标志的判断结果为执行当前程序标志时,对应的反馈升级指令为执行当前程序指令;
当升级标志的判断结果为执行更新程序标志时,对应的反馈升级指令为执行更新程序指令;
当升级标志的判断结果为执行备份程序标志时,对应的反馈升级指令为执行备份程序指令。
5.如权利要求1-4任意一项所述一种基于双芯片的程序在线升级系统,其特征在于,上位机和主控芯片通过串口连接,采用RS422通信方式进行通信;主控芯片FLASH模块与主控芯片通过EMIF总线连接;BIOS芯片FLASH模块与BIOS芯片采用SPI通信方式,SPI总线模式为模式3;主控芯片和BIOS芯片通过串口连接,采用TTL通信方式进行通信。
6.一种基于双芯片的程序在线升级方法,基于权利要求1-5任意一项所述一种基于双芯片的程序在线升级系统,其特征在于,具体逻辑流程如下:
上位机传输升级指令至主控芯片,升级开始,主控芯片接收上位机传输的升级指令后,与BIOS芯片握手,若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片根据升级指令判断升级标志;
所述升级指令是执行更新程序指令时,BIOS芯片判断的升级标志是执行更新程序标志,BIOS芯片将执行更新程序指令传输至主控芯片,且更新升级标志为执行备份程序标志;主控芯片接收到执行更新程序指令后,主控芯片接收上位机传输的升级程序文件并固化到主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行;
其中,如果主控芯片接收上位机传输的升级程序文件未超时,则继续接收,直至接收完毕;如果接收升级程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行备份程序标志,BIOS芯片将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
然后,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
7.如权利要求6所述一种基于双芯片的程序在线升级方法,其特征在于,所述升级指令是执行备份程序指令时,判断的升级标志是执行备份程序标志,BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中,主控芯片接收备份程序文件完成后,BIOS芯片更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
8.如权利要求6或7所述一种基于双芯片的程序在线升级方法,其特征在于,所述升级指令是执行当前程序指令时,判断的升级标志是执行当前程序标志,BIOS芯片将执行当前程序指令传输至主控芯片,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
9.如权利要求6或7所述一种基于双芯片的程序在线升级方法,其特征在于,如果主控芯片接收备份程序文件未超时则继续接收,直至接收完毕;如果主控芯片接收备份程序文件超时,BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志还是执行备份程序标志,进行下述步骤:
BIOS芯片直接将执行备份程序指令传输至主控芯片,同时将备份程序文件传输至主控芯片,主控芯片接收备份程序文件并将其固化在主控芯片FLASH模块中成为当前程序文件,固化完成后,更新升级标志为执行当前程序标志;
BIOS芯片对主控芯片进行复位,主控芯片与BIOS芯片重新进行握手;若握手不成功,BIOS芯片对主控芯片进行复位,重新进行握手;若握手成功,BIOS芯片判断升级标志,此时升级标志为执行当前程序标志,主控芯片调用主控芯片FLASH模块中的当前程序文件并运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211061597.1A CN115904453A (zh) | 2022-09-01 | 2022-09-01 | 一种基于双芯片的程序在线升级系统及升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211061597.1A CN115904453A (zh) | 2022-09-01 | 2022-09-01 | 一种基于双芯片的程序在线升级系统及升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115904453A true CN115904453A (zh) | 2023-04-04 |
Family
ID=86494475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211061597.1A Pending CN115904453A (zh) | 2022-09-01 | 2022-09-01 | 一种基于双芯片的程序在线升级系统及升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115904453A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117055929A (zh) * | 2023-10-11 | 2023-11-14 | 国网信息通信产业集团有限公司 | 一种实现双芯系统安全升级的方法、设备及介质 |
-
2022
- 2022-09-01 CN CN202211061597.1A patent/CN115904453A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117055929A (zh) * | 2023-10-11 | 2023-11-14 | 国网信息通信产业集团有限公司 | 一种实现双芯系统安全升级的方法、设备及介质 |
CN117055929B (zh) * | 2023-10-11 | 2024-01-09 | 国网信息通信产业集团有限公司 | 一种实现双芯系统安全升级的方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106257417B (zh) | 引导程序升级方法、嵌入式设备、控制设备及嵌入式系统 | |
CN101329632B (zh) | 一种使用boot启动cpu的方法与装置 | |
CN112947977B (zh) | 一种软件在线升级方法及系统 | |
CN102945173B (zh) | 用户程序在线升级系统和升级方法 | |
CN103514018A (zh) | 基于stm32f4控制器的程序远程下载的实现方法 | |
CN103092647A (zh) | 嵌入式系统的在线升级方法 | |
US20210294615A1 (en) | Fpga upgrade method based on pcie interface | |
CN105320531A (zh) | 一种基于MicroBlaze软核的FPGA软件在线升级方法 | |
WO2021136200A1 (zh) | 引导程序的加载方法、存储介质及嵌入式终端 | |
CN115904453A (zh) | 一种基于双芯片的程序在线升级系统及升级方法 | |
CN105740139B (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
CN113064745B (zh) | 一种错误信息上报的方法、装置及介质 | |
CN106990985A (zh) | 基于bmc更新及备份系统uefi固件的设备和方法 | |
CN112540780A (zh) | 一种编队无人机批量固件升级实现系统、方法 | |
CN115718610A (zh) | 一种可靠的单片机应用程序更新的方法 | |
US11579977B2 (en) | Data storage device restoring method | |
CN112860298A (zh) | 一种远程bios升级实现方法及系统 | |
CN110362323B (zh) | 基于分布式自组网的嵌入式终端设备程序更新方法 | |
CN111736882B (zh) | 一种dsp程序的远程升级方法 | |
CN102043654A (zh) | 一种基于TMS320VC55xx的DSP简易开发方法 | |
CN117519749A (zh) | 一种stm32在线升级功能解决方法 | |
CN111414182B (zh) | 一种基于spi的fpga远程升级方法 | |
CN115495136B (zh) | 一种基于国产飞腾平台的bmc快速在线升级方法 | |
CN110377303A (zh) | 基于备用存储区方式升级程序的方法及其设备 | |
CN115756558A (zh) | 一种可在线引导重启并校验的dsp软件在线升级方法 |
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 |