CN103955376A - 一种dsp自启动二次按需加载方法 - Google Patents
一种dsp自启动二次按需加载方法 Download PDFInfo
- Publication number
- CN103955376A CN103955376A CN201410056275.7A CN201410056275A CN103955376A CN 103955376 A CN103955376 A CN 103955376A CN 201410056275 A CN201410056275 A CN 201410056275A CN 103955376 A CN103955376 A CN 103955376A
- Authority
- CN
- China
- Prior art keywords
- dsp
- module
- boot
- boot2
- loading
- 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
Abstract
本发明公开了一种DSP自启动二次按需加载方法,包括:将DSP外接的ROM中存放的程序按功能模块化,将其划分为初始引导模块BOOT、主框架引导模块BOOT2和应用模块,所述应用模块包含不同功能的子应用程序模块;DSP上电复位后,自动从ROM中加载初始引导模块BOOT,所述初始引导模块BOOT用于加载主框架引导模块BOOT2;DSP运行初始引导模块BOOT,进而从ROM中加载主框架引导模块BOOT2;DSP运行主框架引导模块BOOT2,然后根据主控单元的需求,从ROM应用模块中加载对应的子应用程序模块。本发明有效避免传统一次程序加载方法带来的功能模块整合过程,从而最大化的使用DSP硬件内部资源。
Description
技术领域
本发明涉及一种数字信号处理器(DSP)自启动加载方法,尤其涉及一种DSP自启动二次按需加载方法。
背景技术
TI公司C6000系列DSP提供的启动方式分为:No Boot、HPI Boot、EMIFB8bit ROMboot三种启动方式。EMIFB8bit ROM boot过程是:在上电复位之后,DSP自动通过EMIFB口去搬移Flash开始的1K字节程序,这1K字节程序boot搬移近来之后,DSP就按照这1K字节的程序boot来运行,而通常这1K字节程序boot的作用是将存储在Flash的应用程序搬移到DSP内部,然后运行已经搬移进来的目标程序,也就达到了自启动的目的。
在现代的通信系统中,系统功能的集成度和程序的复杂度都越来越高,如果是按照传统的一次程序加载入DSP,这就带来了几个问题:
(1)不同功能模块通常都为不同开发人员完成,按照传统的一次程序加载入DSP,需要进行不同开发人员,不同功能模块的整合过程,以及进行片内资源的合理划分与规划;
(2)DSP硬件内部资源有限,而往往每个功能的DSP程序都需要最大化的使用DSP硬件内部资源,整合的过程中往往会造成资源的冲突。
发明内容
为了克服现有技术中存在的不足,本发明提供一种DSP自启动二次按需加载方法,有效避免传统一次程序加载方法带来的功能模块整合过程,从而最大化的使用DSP硬件内部资源,有利于大量程序放进DSP中运行。
为实现上述目的,本发明采取如下技术方案:
一种DSP自启动二次按需加载方法,包括如下步骤:
(1)将DSP外接的ROM中存放的程序按功能模块化,将其划分为初始引导模块BOOT、主框架引导模块BOOT2和应用模块,所述应用模块包含不同功能的子应用程序模块;
(2)DSP上电复位后,自动从ROM中加载初始引导模块BOOT,所述初始引导模块BOOT用于加载主框架引导模块BOOT2;
(3)DSP运行初始引导模块BOOT,进而从ROM中加载主框架引导模块BOOT2;
(4)DSP运行主框架引导模块BOOT2,然后根据主控单元(如CPU)的需求,从ROM应用模块中加载对应的子应用程序模块。
更进一步的,应用模块包含至少两个子应用程序模块。
有益效果:(1)由于外部存储空间ROM的大小相对于片内的存储空间不是系统设计的瓶颈,本发明将所有集成的功能程序放在外部ROM中,而没有对DSP内部存储空间增加额外开销,DSP运行时按需加载对应的功能程序,从而最大化的使用有限的DSP硬件内部资源,并避免了传统方法对不同功能模块的整合过程,方法简单高效。(2)本发明将由于所有集成的功能程序放在外部ROM中,可以方便的对系统功能进行扩展,即使存储空间不足,也可以随时对外部ROM进行空间扩展,从而便于系统集成。
附图说明
图1为传统的DSP一次加载方法示意图。
图2为本发明提供的二次按需加载方法示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1所示,传统的DSP一次加载方法在上电复位之后,DSP自动通过EMIFB口去搬移Flash开始的1K字节程序,这1K字节程序boot搬移近来之后,DSP就按照这1K字节的程序boot来运行,而通常这1K字节程序boot的作用是将存储在Flash的应用程序搬移到DSP内部,然后运行已经搬移进来的目标程序,也就达到了自启动的目的。
如图2所示,本发明提供的一种DSP自启动二次按需加载方法,包括如下步骤:
(1)将DSP外接的ROM中存放的程序按功能模块化,将其划分为初始引导模块BOOT、主框架引导模块BOOT2和应用模块,所述应用模块包含不同功能的子应用程序模块serve1,serve2…serveN;
(2)DSP上电复位后,自动从ROM中加载初始引导模块BOOT,所述初始引导模块BOOT用于加载主框架引导模块BOOT2;
(3)DSP运行初始引导模块BOOT,进而从ROM中加载主框架引导模块BOOT2;
(4)DSP运行主框架引导模块BOOT2,然后根据主控单元的需求,从ROM应用模块中加载对应的子应用程序模块。
在本实例设计中,由于片外存储空间的大小相对于片内的存储空间不再是系统设计的瓶颈,外接的ROM选用了4M byte FlashAM29LV033,将Flash划分为多个片区,分别存储不同的程序,初始引导模块BOOT、主框架引导模块BOOT2和应用模块serve1,serve2…serveN。DSP上电复位后自动加载1K字节的程序BOOT,这1K字节的程序BOOT功能不是用来加载最终执行程序,而是加载一个主框架程序BOOT2,然后等待主控单元(如CPU)给出加载哪个功能的应用程序,由主框架程序BOOT2来完成对子应用程序的加载到存储空间L2。BOOT、BOOT2、子应用程序都需要烧入片外的Flash。在DSP内部存储空间的划分为:
BOOT: o=00000000h l=00000400h /*1k*/
BOOT2: o=00000400h l=00000C00h /*3.072k*/
L2: o=00001000h l=00100000h /*1024k*/
在Flash程序烧写的过程中,把程序的.out文件load进dsp,通过File---Data---Save生成boot.dat,boot2.dat,子应用程序server1.dat,server2.dat,server3.dat,server4.dat等。DSP二次按需程序加载,按照CPU指令,由Boot2完成对应段的ServeX.dat(1<X<N)程序加载,该方法操作过程简单,整个烧写过程耗时2分钟左右。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (2)
1.一种DSP自启动二次按需加载方法,其特征在于包括如下步骤:
(1)将DSP外接的ROM中存放的程序按功能模块化,将其划分为初始引导模块BOOT、主框架引导模块BOOT2和应用模块,所述应用模块包含不同功能的子应用程序模块;
(2)DSP上电复位后,自动从ROM中加载初始引导模块BOOT,所述初始引导模块BOOT用于加载主框架引导模块BOOT2;
(3)DSP运行初始引导模块BOOT,进而从ROM中加载主框架引导模块BOOT2;
(4)DSP运行主框架引导模块BOOT2,然后根据主控单元的需求,从ROM应用模块中加载对应的子应用程序模块。
2.根据权利要求1所述的一种DSP自启动二次按需加载方法,其特征在于:所述应用模块包含至少两个子应用程序模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410056275.7A CN103955376A (zh) | 2014-02-19 | 2014-02-19 | 一种dsp自启动二次按需加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410056275.7A CN103955376A (zh) | 2014-02-19 | 2014-02-19 | 一种dsp自启动二次按需加载方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103955376A true CN103955376A (zh) | 2014-07-30 |
Family
ID=51332652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410056275.7A Pending CN103955376A (zh) | 2014-02-19 | 2014-02-19 | 一种dsp自启动二次按需加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955376A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867977A (zh) * | 2016-04-01 | 2016-08-17 | 天津七所精密机电技术有限公司 | DSP用户程序升级及Flash下载方法 |
CN106775610A (zh) * | 2016-03-22 | 2017-05-31 | 新华三技术有限公司 | 一种电子设备启动方法及一种电子设备 |
CN106886425A (zh) * | 2015-12-15 | 2017-06-23 | 西安富成防务科技有限公司 | 一种dsp启动方式的改进结构 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067789A (zh) * | 2007-06-05 | 2007-11-07 | 上海微电子装备有限公司 | 程序动态加载方法 |
CN101763279A (zh) * | 2010-01-15 | 2010-06-30 | 上海维宏电子科技有限公司 | 一种BootLoader架构设计方法 |
CN101901156A (zh) * | 2010-07-26 | 2010-12-01 | 四川九洲电器集团有限责任公司 | 一种处理器应用程序动态加载方法及其系统 |
CN102214105A (zh) * | 2010-04-08 | 2011-10-12 | 纬创资通股份有限公司 | 平行化快速启动方法及具有多处理单元的电子装置 |
-
2014
- 2014-02-19 CN CN201410056275.7A patent/CN103955376A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067789A (zh) * | 2007-06-05 | 2007-11-07 | 上海微电子装备有限公司 | 程序动态加载方法 |
CN101763279A (zh) * | 2010-01-15 | 2010-06-30 | 上海维宏电子科技有限公司 | 一种BootLoader架构设计方法 |
CN102214105A (zh) * | 2010-04-08 | 2011-10-12 | 纬创资通股份有限公司 | 平行化快速启动方法及具有多处理单元的电子装置 |
CN101901156A (zh) * | 2010-07-26 | 2010-12-01 | 四川九洲电器集团有限责任公司 | 一种处理器应用程序动态加载方法及其系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106886425A (zh) * | 2015-12-15 | 2017-06-23 | 西安富成防务科技有限公司 | 一种dsp启动方式的改进结构 |
CN106775610A (zh) * | 2016-03-22 | 2017-05-31 | 新华三技术有限公司 | 一种电子设备启动方法及一种电子设备 |
CN106775610B (zh) * | 2016-03-22 | 2021-11-12 | 新华三技术有限公司 | 一种电子设备启动方法及一种电子设备 |
CN105867977A (zh) * | 2016-04-01 | 2016-08-17 | 天津七所精密机电技术有限公司 | DSP用户程序升级及Flash下载方法 |
CN105867977B (zh) * | 2016-04-01 | 2019-06-14 | 天津七所精密机电技术有限公司 | DSP用户程序升级及Flash下载方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107656773B (zh) | 一种多核dsp启动方法 | |
CN103605498B (zh) | 单线程任务的多线程执行方法及系统 | |
CN103605568A (zh) | 一种多线程管理方法及装置 | |
CN103207797A (zh) | 基于通用可扩展固件接口固件系统的胶囊式定制更新方法 | |
CN106528893B (zh) | 数据同步方法及装置 | |
CN110516789A (zh) | 卷积网络加速器中指令集的处理方法、装置及相关设备 | |
CN103744713A (zh) | 基于fpga的嵌入式双核系统的自主配置方法 | |
CN105446806A (zh) | 一种应用程序无响应的处理方法及装置 | |
CN105867977A (zh) | DSP用户程序升级及Flash下载方法 | |
CN104731569A (zh) | 一种数据处理方法及相关设备 | |
CN103955376A (zh) | 一种dsp自启动二次按需加载方法 | |
CN104683472A (zh) | 一种支持大数据量的数据传输方法 | |
US8966212B2 (en) | Memory management method, computer system and computer readable medium | |
CN102779060B (zh) | 一种应用程序多次压缩解压方法 | |
CN104462324A (zh) | 一种hdfs多线程并行下载方法 | |
CN105245372A (zh) | 一种基于缓存和异步机制的加载网络资源的优化方法 | |
CN103019819A (zh) | 一种基于插件机制的动态库统一调度方法 | |
CN104516829A (zh) | 微处理器及使用指令循环高速缓存的方法 | |
CN101799793B (zh) | 闪存控制方法及装置 | |
CN104035776A (zh) | 一种操作系统的启动方法 | |
CN109753314B (zh) | 一种可配置的流程自动执行方法及系统 | |
US9626230B2 (en) | Processor and control method of processor | |
CN103714511B (zh) | 一种基于gpu的分支处理方法及装置 | |
CN103049325A (zh) | 基于tc1767平台的csa节点管理器的实现方法 | |
CN105893521A (zh) | 一种读写分离的HBase入库方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140730 |