当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]TMS320C641X系列DSP引导方法研究

 摘要:在进行DSP产品化设计时,BootLoader是一项关键技术。为了更好地解决数字信号处理器应用程序的加载问题,以TI公司641X系列DSP为例,详细论述了DSP的两种引导方法:ROM引导和主机HPI引导,包括二次代码编写、存储器空间分配、引导表生成和.hex文件的烧写。经某星栽接收机系统实测验证,所述方法同时适用于BIOS和No-BIOS两种系统,具有可靠性高、可行性强的优点。
关键词:BootLoader;二次引导;HPI;引导表

0 引言
    近年来,以数字信号处理器(DSP)为基础的通用信号处理模块的研制受到人们的重视,它的研制成功满足了信号处理系统实时性和通用性的要求,被广泛应用于雷达、通信、电子测量和图像等领域。进行DSP开发,最终的目标产品要脱离仿真器运行,在上电后可自行启动程序代码,这就需要一个能在断电后保存程序的存储器。对于C641X系列的DSP,内部没有供用户使用的非易失性存储器,只能将程序代码存放在外部的非易失性存储器中。因此,通常需要在上电复位时,将存储在外部速度较慢的存储器的程序代码搬移到片内高速RAM中,这个过程被称为BootLoader。因此,在设计通用信号处理模块前,有必要研究DSP的多种引导方式。

1 C641X BootLoader方式和过程
    C641X有三种Boot模式:不引导、ROM引导和主机引导。第一种方式只能用于仿真运行;第二种方式利用片内固化的BootLoader程序通过EDMA通道,从EMIF的CE1空间拷贝1 KB数据到地址0处,然后从地址0处开始执行。这种方式只需一片非易失性存储器,实现较为简单;第三种方式是在DSP内核处于复位时,由外部主机通过主机接口实现程序引导。这种方法虽然复杂度较前者高,但也被广泛应用于一些具有抗空间辐射效应的星载平台中。

2 ROM BOOT实现
    前面提到这种方式是在DSP上电复位后,由片内固化的BootLoader代码采用EDMA方式从CE1空间复制1 KB代码到地址O处。但通常用户程序都远大于1 KB,这就需要编写二次BootLoader代码,将用户程序搬移到DSP内部RAM中。下面介绍具体实现过程。
2.1 二次引导程序编写
    由于系统最初启动时,C语言环境还没有初始化,所以二次引导程序一般用汇编语言编写。主要完成EMIF寄存器配置,程序搬移,最后跳转到C程序入口函数。其中,程序搬移主要有两种实现方式。一种方法无需Copy Table(引导表),而采用镜像的方式将所有程序代码看成是一个连续的数据段,二次引导时将片外存储器的内容镜像到内部RAM即可。这种方法虽然实现简单,但存在占用空间资源大,引导效率低的问题。第二种方法是利用引导表实现。这种方法生成的引导文件是各段连续存放的,因而引导效率较前一种方法高。关于引导表的格式和生成参见2.4节;两种方法的二次装载汇编程序可参见CCS烧写工具FlashBurn提供的示例工程,这里不再详述。
2.2 存储空间分配
    程序存储空间可分为LOAD空间和RUN空间。前者保存程序代码,物理介质一般为片外FLASH或E2PROM;后者是程序代码实际运行的空间,物理介质一般是内部RAM。通常,经常访问的程序和初始化变量的LOAD空间放在FLASH中,而RUN空间则放在内部RAM中;对于只在初始化时使用的段,其LOAD和RUN空间都放在FLASH中;而对于非初始化变量,其LOAD和RUN空间都安排在内部RAM中。当然,如果存储空间充足时,也可统一将LOAD空间放在FLASH中,而把RUN空间放在内部RAM中。根据上述内容,可以将C64X存储区作表1所示的安排。


    其中,VECS用于存放中断向量表,BOOT存放二次引导程序。[!--empirenews.page--]
2.3 cmd文件
    cmd文件的作用是实现前两节所述的二次装载代码、中断向量表等的存储空间分配,其主要包含内存的划分以及各程序代码段的load地址和run地址的分配。常见的cmd文件如下所示:
    
     }
    其中,vectors是包含中断向量表的段;BootLoad是包含二次装载代码的段。
2.4 引导表的生成
    引导表的常用格式如下:
    段1的大小
    段1的目的地址
    段1的内容
    段2的大小
    ……
    O;
    O;
    O;
    一种方便的生成引导表的方法是,当工程文件编译生成.out文件后,用CCS自带的hex6x可执行程序将其转化为用于程序引导的.hex文件。这种方法需要编写一个转换命令文件作为hex6x命令的输入参数,具体如下:

    其中len的大小可以查看map文件,只要大于程序和数据的实际长度即可。[!--empirenews.page--]
2.5 文件烧写
    将.hex文件烧入ROOM或FLASH中的方法有以下几种:
    (1)使用通用烧写器写入。
    (2)使用CCS自带的烧写工具FlashBurn。
    (3)用户自己编写烧写FLASH的程序。
    其中,使用通用烧写器需要文件格式转换且要求烧入的器件是可插拔的;而第三种方法又需要自己编写代码,费时费力;常用的是第二种方法,这种方法只需稍加改动,就可以运用于不同的目标系统中。这是因为这种方法需要首先下载FlashBurn提供的工程FBTC的.out文件到目标系统中。这个工程的代码包含了系统中使用的存储器的烧写命令字,而对于不同的存储器,该命令字是有差别的。这里要做的就是将工程的控制字宏定义改为自己目标系统芯片的控制字,重新编译链接,然后在FlashBurn中选定新生成的FBTC.out文件和待烧入的.hex文件,就可完成文件烧写。

3 外部主机HPI引导实现
    选择这种引导方式时,外部主机在DSP内核处于复位状态,但芯片其他部分已经脱离复位状态时,通过HPI接口访问DSP的全部存储空间和外设寄存器。当主机完成代码装载和初始化后,置HPIC寄存器中的DSPNIT位为1使内核脱离复位状态,然后从0地址处开始运行,具体流程如图1所示。


    这种方式也需要如ROM BOOT方式一样生成.hex文件,生成方法和上述大致相同,只是由于有了外部主机的参与,可以将程序代码一次性装载到片内RAM中,没有1 KB的限制,因而无需二次启动代码,只需在O地址处添加跳转指令,使得DSP内核复位后能从入口函数_c_intOO处开始执行即可。

4 结语
    本文详细论述了TMS320C641X系列DSP上电自启动的两种方法,并通过某星载通信接收机系统的验证,方法简单可行。该方法论述时虽然是基于非DSP/BIOS框架,经验证也同样适用于DSP/BIOS系统中。
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

美国纽约州阿蒙克2022年10月20日 /美通社/ -- IBM(NYSE: IBM)发布 2022 年第三季度业绩报告。 IBM 董事长兼首席执行官 Arvind Kri...

关键字: IBM 软件 BSP 云平台

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭