一种基于国产处理器的嵌入式系统程序的安全下载方法技术方案

技术编号:20992162 阅读:23 留言:0更新日期:2019-04-29 22:15
本发明专利技术涉及一种基于国产处理器的嵌入式系统程序的安全下载方法,其技术特点在于:包括以下步骤:步骤1、PC机向嵌入式处理器发送“进入下载模式指令”;步骤2、嵌入式处理器执行设置标志位flag状态字操作;步骤3、复位嵌入式处理器;步骤4、嵌入式处理器进入下载服务模式;步骤5、PC机向嵌入式处理器发送“下载嵌入式处理器Flash”指令;步骤6、主设备发送“置嵌入式处理器模块工作状态”指令,嵌入式处理器将其片内Flash标志位flag写入;步骤7、PC机通过USB接口向嵌入式处理器发送“模块复位指令”;步骤8、嵌入式处理器复位嵌入式处理器模块。本发明专利技术具有安全控制措施,保证下载过程的安全性。

A Secure Download Method for Embedded System Programs Based on Domestic Processors

The present invention relates to a safe downloading method for embedded system programs based on domestic processors. Its technical features include the following steps: step 1, PC sends \instruction to enter downloading mode\ to embedded processors; step 2, embedded processors perform flag status word operation; step 3, reset embedded processors; step 4, embedded processors enter Step 5: PC sends \Download Embedded Processor Flash\ instruction to embedded processor; Step 6: Main device sends \Install Embedded Processor Module Working Status\ instruction, embedded processor writes Flash flag in embedded processor; Step 7: PC sends \Module Reset Instruction\ to embedded processor through USB interface; Step 8: Embedded. The processor resets the embedded processor module. The invention has safety control measures to ensure the safety of the download process.

【技术实现步骤摘要】
一种基于国产处理器的嵌入式系统程序的安全下载方法
本专利技术属于嵌入式硬件系统
,涉及嵌入式系统程序的安全下载方法,尤其是一种基于国产处理器的嵌入式系统程序的安全下载方法。
技术介绍
随着嵌入式系统的广泛应用,在嵌入式系统软件的升级、维护过程中可能存在缺陷,如软件升级、维护后硬件系统需断电重启,软件升级、维护过程中会有开盖、拔卡(或跳线)等操作,主设备的通讯接口可直接访问嵌入式系统内部空间,上述这些情况都暴露出嵌入式系统潜在的安全问题。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提出一种基于国产处理器的嵌入式系统程序的安全下载方法,能在不更改任何硬件接口的前提下,方便地实现国产处理器的软件升级和维护,有效解决嵌入式系统程序更新问题。本专利技术解决其现实问题是采取以下技术方案实现的:一种基于国产处理器的嵌入式系统程序的安全下载方法,包括以下步骤:步骤1、PC机通过USB接口向嵌入式处理器发送“进入下载模式指令”;步骤2、嵌入式处理器收到指令后执行设置标志位flag状态字操作:擦除片内Flash标志位flag状态字;步骤3、复位嵌入式处理器;步骤4、嵌入式处理器复位后进入下载服务模式;步骤5、PC机通过USB接口向嵌入式处理器发送“下载嵌入式处理器Flash”指令,完成数据下载;步骤6、嵌入式处理器Flash下载完成后,主设备发送“置嵌入式处理器模块工作状态”指令,嵌入式处理器将其片内Flash标志位flag写入0x12345678;步骤7、PC机通过USB接口向嵌入式处理器发送“模块复位指令”;步骤8、嵌入式处理器收到“模块复位指令”指令后复位嵌入式处理器模块;步骤9、嵌入式处理器工作程序被引导,进入工作状态。而且,所述步骤4的具体方法是:嵌入式处理器上电后查询片内Flash标志位flag状态字,若状态字不等于0x12345678,则进入下载流程,等待PC机指令。本专利技术的优点和有益效果:1、本专利技术提供了一种在软件的升级、维护的全过程中的安全可控的基于国产处理器的嵌入式系统程序的安全下载方法,以国产专用指令处理器芯片为基础,从嵌入式开发的角度阐述了嵌入式系统的程序下载的安全性设计方法和具体开发流程。本专利技术的具体操作不涉及改变嵌入式硬件系统,仅通过国产处理器内引导程序和系统对外通信接口实现用户程序的下载和升级,该方法具有安全控制措施,保证下载过程的安全性。2、本专利技术以国产处理器为核心,系统通过该处理器的对外通信接口(USB口)与主设备进行数据交互。在系统上电、引导程序(Boot)运行后,根据相关标志位flag的值进行判断系统的启动模式,如果条件满足则跳转到用户指定程序运行;如果条件不满足则顺序运行自身程序完成程序下载工作。在没有国产处理器内部引导程序的配合的情况下,非法用户无法篡改和获取Flash内的关键信息,从而保证了嵌入式系统的安全。3、本专利技术具备下载端口防护措施:本专利技术的嵌入式系统的用户程序的下载通过USB接口实现,其原理是主设备程序通过USB接口,将数据和操作命令发送到国产处理器上,由国产处理器负责将代码和数据下载到Flash芯片,而主设备不能通过USB接口直接访问模块上的Flash芯片。这样,如果没有国产处理器内部程序的配合,则非法用户无法篡改和获取Flash内的关键信息。4、本专利技术不涉及嵌入式硬件系统断电重启:传统方式中,程序下载完毕后需要断电后重新启动嵌入式系统后才能运行用户程序。而本专利技术在程序更新完毕后立即引导用户程序,可以在不影响系统工作的情况下完成嵌入式系统程序的更新。5、本专利技术不涉及改变嵌入式硬件系统:传统方式中,工作程序下载和升级时会有开盖、拔卡(或跳线)操作,而本专利技术在程序和数据的下载过程中没有上述或其他任何改变嵌入式硬件系统的操作,保证下载过程的安全性。附图说明图1为本专利技术的嵌入式处理器引导程序流程图;图2为本专利技术的主设备端下载程序流程图;图3为本专利技术的嵌入式系统存储空间划分示意图。具体实施方式以下结合附图对本专利技术实施例作进一步详述:本专利技术的嵌入式系统为XX模块,其用户程序的下载通过XX模块的USB接口实现,其原理是主设备程序通过USB接口,将数据和操作命令发送到XX模块的国产处理器上,由国产处理器负责将代码和数据下载到Flash芯片,而主设备不能通过USB接口直接访问模块上的Flash芯片。这样,如果没有国产处理器内部程序的配合,则非法用户无法篡改和获取Flash内的关键信息。本专利技术的下载安全性设计流程如图1和图2所示,其中图1是嵌入式处理器引导程序流程,图2是主设备端下载程序流程。一种基于国产处理器的嵌入式系统程序的安全下载方法,如图1和图2所示,包括以下步骤:步骤1、PC机通过USB接口向嵌入式处理器发送“进入下载模式指令”;步骤2、嵌入式处理器收到指令后执行设置标志位flag状态字操作:擦除片内Flash标志位flag状态字(0xFFFFFFFF);步骤3、复位嵌入式处理器;步骤4、嵌入式处理器复位后进入下载服务模式:嵌入式处理器上电后查询片内Flash标志位flag状态字,若状态字不等于0x12345678,则进入下载流程,等待PC机指令;步骤5、PC机通过USB接口向嵌入式处理器发送“下载嵌入式处理器Flash”指令,完成数据下载;步骤6、嵌入式处理器Flash下载完成后,主设备发送“置嵌入式处理器模块工作状态”指令,嵌入式处理器将其片内Flash标志位flag写入0x12345678;步骤7、PC机通过USB接口向嵌入式处理器发送“模块复位指令”;(可选)步骤8、嵌入式处理器收到“模块复位指令”指令后复位嵌入式处理器模块;步骤9、嵌入式处理器工作程序被引导,进入工作状态。下面分别对嵌入式处理器引导程序和存储空间分配作进一步详细说明:(1)引导程序(Boot)引导程序(Boot):在完成初始化后,Boot通过USB口与主设备之间进行命令交互,主设备通过USB口终端软件发送各种命令如“烧写Flash,启动应用程序”等。XX模块内程序接收命令并执行相应的操作,并显示处理结果。引导程序(Boot)主要实现以下功能:1)如果Flash内没有用户程序代码,执行用户代码下载流程,用户代码的下载通过USB接口,需要主设备端下载程序与嵌入式处理器内部程序配合;2)如果Flash内有用户程序代码,则将Flash代码通过DMA指令搬运指定的程序代码到嵌入式处理器存储器地址并执行。以上两个流程的选择通过查询相关标志位的值来实现。如果条件满足则表示用户代码已经下载到Flash,可以执行代码的搬运操作及程序引导过程;否则说明用户代码未下载,需要执行Flash代码的下载操作。(2)存储空间分配嵌入式系统中存储空间分为两个部分:片内Flash和片外Flash。根据开发设计考虑,数据空间按如下分配。片内Flash大小为256KB,片外Flash大小为16MB。引导程序(Boot)存放在片内Flash0地址区域,用户程序APP存放在片外Flash中。地址0x0~0xE000为Boot区域存放引导程序,此处为boot.bin文件,地址0xE000~0x10000为标志位flag区域存放跳转标志,现在是在最高地址0xFFFC存放一个32bit的flag标志,地址0x40000000~0xX本文档来自技高网...

【技术保护点】
1.一种基于国产处理器的嵌入式系统程序的安全下载方法,其特征在于:包括以下步骤:步骤1、PC机通过USB接口向嵌入式处理器发送“进入下载模式指令”;步骤2、嵌入式处理器收到指令后执行设置标志位flag状态字操作:擦除片内Flash标志位flag状态字;步骤3、复位嵌入式处理器;步骤4、嵌入式处理器复位后进入下载服务模式;步骤5、PC机通过USB接口向嵌入式处理器发送“下载嵌入式处理器Flash”指令,完成数据下载;步骤6、嵌入式处理器Flash下载完成后,主设备发送“置嵌入式处理器模块工作状态”指令,嵌入式处理器将其片内Flash标志位flag写入0x12345678;步骤7、PC机通过USB接口向嵌入式处理器发送“模块复位指令”;步骤8、嵌入式处理器收到“模块复位指令”指令后复位嵌入式处理器模块;步骤9、嵌入式处理器工作程序被引导,进入工作状态。

【技术特征摘要】
1.一种基于国产处理器的嵌入式系统程序的安全下载方法,其特征在于:包括以下步骤:步骤1、PC机通过USB接口向嵌入式处理器发送“进入下载模式指令”;步骤2、嵌入式处理器收到指令后执行设置标志位flag状态字操作:擦除片内Flash标志位flag状态字;步骤3、复位嵌入式处理器;步骤4、嵌入式处理器复位后进入下载服务模式;步骤5、PC机通过USB接口向嵌入式处理器发送“下载嵌入式处理器Flash”指令,完成数据下载;步骤6、嵌入式处理器Flash下载完成后,主设备发送“置嵌入式处理器模块工作状...

【专利技术属性】
技术研发人员:吴璇崔强张霁莹迟静樊镕龚俊阳
申请(专利权)人:中国船舶重工集团公司第七零七研究所
类型:发明
国别省市:天津,12

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

1