基于CCS5.5的TMS320C6000程序Flash上电自举设计及三种固化方法对比

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:yvonnechan
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:该文针对TMS320C6000系列支持的启动方式之一——EMIF boot启动,固化程序在片外Flash。解决了TMS320C6713B片内无非易失存储器,上电需从外部加载程序并启动的问题。介绍了基于CCS5.5平台,Bootload启动函数和Flash烧写程序的设计编制。整理总结了三种烧写Flash的方式方法,并进行了优缺点的对比。
  关键词:DSP;TMS320C6713;CCS5.5;EMIF;Flash;软件固化;引导加载
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)14-0094-03
  TMS320C6713B(以下简称C6713)是11公司推出的高性能浮点运算DSP,采用超常指令字(VLIW)结构。TMS320C67 13B支持Host boot/Emulation boot/EMIF boot。EMIF作为C6713与外部存储器之间的接口,可支持与各种外部器件无缝连接。EMIF存储器映射由4个(CEO-CE3)空间组成,这4个空间彼此独立,实现不同访问控制。C67 13包含从0×00000000地址开始的256KB内部RAM,但其内部无非易失性存储器,需要外扩Flash或ROM等非易失性存储器。
  CCS(Code Composer Studio)的是TI公司提供的开放的集成软件开发平台,根据安装不同的硬件接口驱动可开发不同的器件。CCS5.5集成开发环境基于Eclipse开发平台,在开发过程中能够完成对工程的配置、建立、调试、跟踪和分析,能够加速开发进程,提高工作效率,支持JTAG加密功能、提供全覆盖的DSP代码跟踪、加强了统计分析及在小窗口绘制图形的性能。目前,TI已对CCS4、CCS5和CCS6免费开放,供用户开发使用。
  1 TMS320C6713B与Flash的硬件连接
  以AMD公司的AM29LV160DB为例,该Flash具有2Mx8bifflMxl6bit的存储空间,16位数据总线,支持程序写、擦除和悬挂。为最快的启动程序,数据吞吐量设置为最大,将AM29LV160DB的BYTE=1,设置为16位数据宽度。
  遵照TI对C6713的内置启动设定,需将支持EMIF接口的Flash挂载CE1空间。HD[4:3]=“10”设定DSP处于16bit异步外部ROM boot方式。
  其硬件连接原理示意如图1所示。
  在当前配置下,C6713上电或复位时,位于外部存储空间CE1的FLASH中的1KB代码通过EDMA被拷贝到片内RAM地址0处,这就是片上Boot一次引导。然而,大多数的DSP程序并不仅限于1KB代码,因此需要开发用户引导程序将没有拷贝的代码拷贝到DSP的片内RAM。此用户引导程序即称为二级Bootloader。
  该二级Bootloader程序实际在运行时,是在C6713的0×0000~0×4000地址空间,从0地址开始执行。从通用化角度,每次修改后,重新烧写的用户程序,只是程序长度发生变化,因此,只要将搬运长度独立出来,那么Bootloader程序就无需其他更改。为此,将C6713的片内地址空间划分开来,如表1所示。
  3 TMS320C6713B用户程序的烧写到外部Flash
  目前,常用的烧写C6713方法有三种,分别是:TI公司提供的FlashBurn软件烧录法、二次下载烧录法、程序bin镜像烧录法。
  3.1 FlashBurn软件烧录法
  通过TI公司提供的FlashBurn软件来对Flash存储器进行烧写。将FlashBurn与CCS、HEX文件转换工具以及FBTC程序(即通过一定的编程命令序列来控制FLASH的工作方式)配合使用,可以快速地将用户数据与程序写入Flash存储器。Flash-Burn采用图形化界面,使用方便,用户只需要简单配置几个操作参数,即可实现对FLASH存储器进行擦除、烧写和查看内存内存储器进行操作。
  需要注意的是,FlashBurn软件需要与CCS版本匹配才能正常使用,FlashBurn 4才支持CCS4~CCS6。虽然FlashBurn有免费版本,但是仅能对DSK开发板进行烧录。要对自己的定制电路板烧写,需购买其收费版本。
  3.2两次下载烧录法
  基于CCS开发环境,编译链接生成的用户程序为*out文件,该文件为COFF格式,不能在DSP的RAM中直接运行。
  两次下载法的实质为在设计调试过程中用仿真器下载进DSP的RAM区的程序,已经是程序的可执行机器码(该程序需包含boot函数)。因此,可以通过再编写一个Flash烧写程序,并下载进DSP运行,将RAM中的用户程序机器码写入Flash对应的空间,特别是Boot函数烧写到Flash的前1KB空间,即可完成烧录过程。
  简言之,所谓“两次下载法”就是通过仿真器对DSP进行两次加载运行来完成用户程序的烧写。其实质是将用户程序当作“数据”写人Flash。
  该方法的核心搬移函数如下:
  需要注意的是宏“CODE_LEN”,对应BootLoad的空间定义,该处定义了用户程序所占用的字节长度。该长度可由用户程序map文件查询计算得到。
  采用该方法的优点是,在用户程序调试正常后,接着加载Flash烧录程序即可将程序固化。其中最复杂的操作也仅仅是查询下用户程序map文件计算下程序的大小,修改下宏“CODE_LEN”而已。
  但是,采用该方法需要注意的是用戶程序与Flash烧写程序在内存空间分配时不能重叠,即防止Flash烧写程序在下载时,修改或覆盖已经在DSP的RAM中的程序。而且当用户程序与Flash烧写程序的总大小大于RAM空间时,该方法就无法使用了。
  3.3程序bin镜像烧录法
  3.3.1基于CCS5.5置快速生成bin文件
  上节已经提到CCS编译出的文件为*.out文件无法直接使用,但是TI公司在CCS安装包中同时也提供了Hex6x.exe等转换工具,可将*.out可配置的转换为*.hex和*.bin文件,其中*.bin文件内容即是DSP执行的机器码。
  在CCS5.5中,提供了在程序编译结束后继续执行其他操作的接口,如图2所示。
  采用该方法可完全不必考虑用户程序和Flash烧录程序的空间重叠问题,也完全不必考虑RAM空间大小,只要Flash足够大可以装载用户程序即可,也完全不用查询计算用户程序的字节长度,烧录程序可自行计算并烧写到对应位置,因此,采用此种烧录方法唯一要注意的就是用户程序*.bin的文件名和所在的PC系统路径。
  4结束语
  本文针对TMS320C6713B的EMIF boot方式进行启动,固化程序在片外Flash。基于CCS5.5平台,设计编制Boofload启动函数和Flash烧写程序。整理总结了三种烧写Flash的方法,并进行了优缺点的对比。
其他文献
微软今天公布的一条消息——“利用大规模人工智能,大幅提高了Windows 10的2018年4月10日更新版质量和可靠性”。
作为单位的信息员,每月要统计各单位上报的信息数量。一年下来,从"1月底稿"到"12月底稿"共有12张工作表,并且每张工作表的数据结构都是相同的。由于各单位不是每月都有信息上报,
对液相色谱-串联质谱法测定鲜姜中涕灭威及其代谢物(涕灭威砜、涕灭威亚砜)残留量的不确定度进行分析,建立数学模型,找出影响测量不确定度的各种因素,对各个不确定度分量进行评估
为充分利用鮟鱇鱼下脚料资源,探讨鮟鱇鱼加工下脚料卵磷脂的提取工艺流程、最佳提取方法和影响因素,采用溶剂提取法对鮟鱇鱼加工下脚料进行提取,用紫外分光光度法测定含量。由单
人才的竞争实质上是体制、制度的竞争,人才的培养和知识型人力资源的开发与利用需要靠机制来保证.只有不断创新和完善人才资源管理机制,才能引进人才、留住人才,才能适应高等
高等职业教育结构的调整与提升应以社会需求为目标,主动适应社会结构、经济结构、产业结构和技术结构的变化.随着我国经济和社会结构调整对人才需求多层次的要求,整合教育资
影响因子作为文献计量的一项指标近年来在我国收到了广泛的关注,但是,在网络上我们通常能见到有两种影响因子,一种是由美国科学信息研究所(ISI)每年发布的期刊引证报告(Journal Cit
本文是院级重点教研课题的子项目,对高职电工基础课程教学内容的特色、体系结构及题作了研究和探讨,提出了教学内容点的新概念.
面对家电市场的激烈竞争,迫使其产品必须不断创新才能占领市场,以满足人们求新求异的需求.探讨家电产品创新和人性化设计有助于产品创新设计活动的提高和把握好创新方向.
摘要:通过文献研读对学习分系统研究现状与成果进行分析,该文提出可行的学习分析过程,分析有效的学习分析工具。而后,笔者结合翻转课堂实验教学需求,从课前学习推荐和课后复习干预两个方面入手,设计支持翻转课堂实验教学模式的學习分析系统。  关键词:学习分析;翻转课堂;系统建模  中图分类号:G642 文献标识码:A 文章编号:1009-3044(2017)29-0093-02  软件工程专业课程教学基于翻