一种可选择版本的dsp处理器程序加载方法

文档序号:6505752阅读:340来源:国知局
一种可选择版本的dsp处理器程序加载方法
【专利摘要】本发明涉及一种可选择版本的DSP处理器程序加载方法,属于DSP处理器应用【技术领域】。本发明采用两级程序加载机制进行程序加载,利用第一级引导程序完成第二级工作程序加载版本的选择及第二级工作程序的加载,加载后的第二级工作程序作为主工作程序运行,这样使得主机可以依据需求进行DSP处理器工作程序版本的选择,还解决了DSP升级功能融合到工作程序中导致的复杂性增加,以及软件升级过程中出现异常问题后需利用DSP仿真器重新进行固化从而实现加载的问题。
【专利说明】-种可选择版本的DSP处理器程序加载方法

【技术领域】
[0001] 本发明涉及DSP处理器应用【技术领域】,具体涉及一种可选择版本的DSP处理器程 序加载方法。

【背景技术】
[0002] 关于DSP (Digital Signal Processing,数字信号处理)处理器程序的固化及加 载,处理器生产厂家均提供相应的解决方法,通常可以利用仿真器实现DSP处理器程序的 固化,进而能够实现程序的自动加载功能,此种方法的不足之处在于如果对DSP处理器程 序进行了更改,需要重新利用仿真器完成修改后的DSP处理器程序的固化工作。在DSP处理 器程序的前期开发过程中,此种程序固化及加载方法基本能够满足需求,但是,当基于DSP 处理器设计的产品交付使用后,如果对其进行程序固化升级仍使用仿真器进行操作的话, 会涉及到产品的拆装,因此,此种方法不利于生产应用过程。
[0003] 针对上述不足之处,一些期刊文献中提出了在DSP处理器程序中增加程序升级的 功能,硬件上通过串口将DSP处理器与计算机连通,软件上在DSP处理器程序中添加程序升 级模块,即硬件电路上电工作后,计算机通过串口向DSP处理器发出指令,向DSP处理器发 送需要固化的新的DSP处理器程序,传输完成后,DSP处理器调用程序升级功能,将新的程 序固化于程序存储器中,从而完成脱离仿真器的程序固化升级功能,此种方法有效的解决 了程序固化升级需要拆装产品的问题,但是,存在如下一些不足之处:1)在DSP处理器程序 设计时需增加程序升级功能,增加了程序设计的复杂性;2)如果在程序固化升级过程中出 现掉电等异常现象或者需固化的程序文件本身存在问题,会使得产品重新加电后无法正常 加载程序,此时仍需使用仿真器对程序进行固化,同样涉及到产品的拆装。


【发明内容】

[0004] (一)要解决的技术问题
[0005] 本发明要解决的技术问题是:如何提供一种可选择版本的DSP处理器程序加载方 法,以解决现有技术中存在的DSP升级功能融合到工作程序中导致的复杂性增加,以及软 件升级过程中出现异常问题后需利用DSP仿真器重新进行固化从而实现加载的问题,并在 解决以上问题的同时,实现了 DSP处理器程序加载过程中程序版本可选择的功能。
[0006] (二)技术方案
[0007] 为了解决上述技术问题,本发明提供了一种可选择版本的DSP处理器程序加载方 法,包括以下步骤:
[0008] S1、主机向其与DSP处理器的信息交互区写入所述DSP处理器需加载的工作程序 的软件版本信息;
[0009] S2、所述主机向DSP处理器发送复位信号;
[0010] S3、所述DSP处理器进行复位,然后自动加载引导程序;
[0011] S4、所述引导程序读取所述软件版本信息;
[0012] S5、所述引导程序根据所述软件版本信息计算所述工作程序在程序存储区中的存 储地址、在程序运行空间的存储地址,以及工作程序运行入口地址,并将所述程序存储区中 的存储地址处的可执行代码复制到所述程序运行空间的存储地址中,然后根据所述可执行 代码、所述引导程序自身的内容,以及所述程序运行入口地址生成可执行文件;
[0013] S6、所述DSP处理器对所述可执行文件进行加载。
[0014] 优选地,在步骤S6之后还包括步骤:
[0015] S7、所述DSP处理器向主机反馈软件版本信息;
[0016] S8、所述主机判断所述DSP处理器反馈的软件版本信息与其写入到所述信息交互 区的软件版本信息是否一致,若一致,则结束,否则返回步骤S1,主机重新写入另一软件版 本信息,然后重新执行后续的步骤。
[0017] 优选地,所述可执行文件中包含写入所述程序运行入口地址后的引导程序,以及 所述可执行代码。
[0018] 优选地,所述引导程序和工作程序分别存储于所述程序存储区中的不同的空间。
[0019] (三)有益效果
[0020] 本发明采用两级程序加载机制进行程序加载,利用第一级引导程序完成第二级工 作程序加载版本的选择及第二级工作程序的加载,加载后的第二级工作程序作为主工作程 序运行,这样使得主机可以依据需求进行DSP处理器工作程序版本的选择,还解决了 DSP升 级功能融合到工作程序中导致的复杂性增加,以及软件升级过程中出现异常问题后需利用 DSP仿真器重新进行固化从而实现加载的问题。进一步,将DSP处理器程序存储区分块,用 于存储一级引导程序、多个版本的DSP处理器工作程序,这样使得在进行软件升级时,仅对 需升级版本的程序对应的存储区进行操作即可,可以保证其它版本的DSP处理器程序不被 覆盖,提高了工作效率。

【专利附图】

【附图说明】
[0021] 图1为本发明的方法流程图;
[0022] 图2为DSP处理器程序存储区分配图。

【具体实施方式】
[0023] 为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的

【具体实施方式】作进一步详细描述。
[0024] 如图1所示,本发明提供了一种可选择版本的DSP处理器程序加载方法,包括以下 步骤:
[0025] S1、主机向其与DSP处理器的信息交互区写入所述DSP处理器需加载的工作程序 的软件版本信息;
[0026] S2、所述主机向DSP处理器发送复位信号;
[0027] S3、所述DSP处理器进行复位,然后自动加载引导程序;
[0028] S4、所述引导程序读取所述软件版本信息;
[0029] S5、所述引导程序根据所述软件版本信息计算所述工作程序在程序存储区中的存 储地址、在程序运行空间的存储地址,以及工作程序运行入口地址,并将所述程序存储区中 的存储地址处的可执行代码复制到所述程序运行空间的存储地址中,然后根据所述可执行 代码、所述引导程序自身的内容,以及所述程序运行入口地址生成可执行文件;所述可执行 文件中包含写入所述程序运行入口地址后的引导程序(即此时的引导程序中含有该工作 程序的运行入口地址),以及所述可执行代码,且为减少可执行文件生成过程中人为参与的 复杂性,采用"引导程序+工作程序"的结构进行生成,以便在不同版本程序加载过程中,弓丨 导程序能够自动获取该版本工作程序的运行入口地址而不需在生成可执行文件时人工进 行分离,可减少操作的复杂性和出错的概率。
[0030] S6、所述DSP处理器对所述可执行文件进行加载;
[0031] S7、所述DSP处理器向主机反馈软件版本信息;
[0032] S8、所述主机判断所述DSP处理器反馈的软件版本信息与其写入到所述信息交互 区的软件版本信息是否一致,若一致,则结束,否则返回步骤S1,主机重新写入另一软件版 本信息,然后重新执行后续的所有步骤,以此方式循环,直到反馈的版本信息与写入的版本 信息一致,表不加载成功。
[0033] 本实施例中,本发明对DSP处理器程序存储区的分配方法进行了约定,如 图2所示,所述引导程序和工作程序分别存储于所述程序存储区中的不同的空间。以 TMS320C6416DSP为例,整个DSP程序存储区中需存储如下几类程序,即引导程序、升级程 序、工作程序1、DSP工作程序2.......工作程序n,共需分配n+2个程序存储块,除引导程 序占用1KB字节空间外,其它程序(包括升级程序及工作程序)均占用相同大小的存储空 间。
[0034] 基于统一化、规范化的原则,本发明对主机控制程序与升级程序、引导程序、各版 本工作程序间的信息交互协议进行了规定,以便于引导程序运行、工作程序选择、DSP处理 器程序升级、DSP处理器程序工作的实现。可以按照如下协议格式进行约定,如表1所示为 主机控制程序至引导程序、各版本工作程序、升级程序协议格式,表2表示引导程序、各版 本工作程序、升级程序反馈至主机控制程序的协议格式。
[0035] 表1主机至DSP处理器程序协议格式
[0036]

【权利要求】
1. 一种可选择版本的DSP处理器程序加载方法,其特征在于,包括以下步骤: 51、 主机向其与DSP处理器的信息交互区写入所述DSP处理器需加载的工作程序的软 件版本信息; 52、 所述主机向DSP处理器发送复位信号; 53、 所述DSP处理器进行复位,然后自动加载引导程序; 54、 所述引导程序读取所述软件版本信息; 55、 所述引导程序根据所述软件版本信息计算所述工作程序在程序存储区中的存储 地址、在程序运行空间的存储地址,以及工作程序运行入口地址,并将所述程序存储区中的 存储地址处的可执行代码复制到所述程序运行空间的存储地址中,然后根据所述可执行代 码、所述引导程序自身的内容,以及所述程序运行入口地址生成可执行文件; 56、 所述DSP处理器对所述可执行文件进行加载。
2. 如权利要求1所述的方法,其特征在于,在步骤S6之后还包括步骤: 57、 所述DSP处理器向主机反馈软件版本信息; 58、 所述主机判断所述DSP处理器反馈的软件版本信息与其写入到所述信息交互区的 软件版本信息是否一致,若一致,则结束,否则返回步骤S1,主机重新写入另一软件版本信 息,然后重新执行后续的步骤。
3. 如权利要求1所述的方法,其特征在于,所述可执行文件中包含写入所述程序运行 入口地址后的引导程序,以及所述可执行代码。
4. 如权利要求1或2或3所述的方法,其特征在于,所述引导程序和工作程序分别存储 于所述程序存储区中的不同的空间。
【文档编号】G06F9/445GK104281463SQ201310292153
【公开日】2015年1月14日 申请日期:2013年7月12日 优先权日:2013年7月12日
【发明者】成明伟, 樊庆华 申请人:中国航天科工集团第三研究院第八三五八研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1