TMS320C6455 DSP基于外部FLASH自动加载的设计
2021-01-29
来源:步旅网
a叶姣2014年第27卷第3期 Electronic Sci.&Tech./Mar.15.2014 S320C6455 DSP基于外部FLASH自动加载的设计 康康,何 萌 710071) (西安电子科技大学微电子学院,陕西西安摘 要 为实现数字信号处理器的加载,介绍了TMS320C6455的各种加栽模式,尤其是对外部ROM的引导方式, 以及一种无需数据转换即可通过数据加载将用户程序写入Flash的方法。以TMS320C6455为例,同时结合LED灯闪烁 实例验证自动加栽的可行性。 关键词DSP;加栽模式;二次加栽;Flash 中图分类号TN911.72 文献标识码A 文章编号1007-7820(2014)03—089—02 Design of Bootload for TMS320C6455 DSP Based on the External Flash KANG Kang.HE Meng (School of Mieroelectronies,Xidian University,Xi'an 710071,China) Abstract The load modes of TMS320C6455.especially the external ROM boot mode is described.A method for loading the user program.via the data written in the Flash without data conversion is introduced with TMS320C6455 as all example.An experiment of LED lights blinking verifies the feasibility of automatic program loading. Keywords DSP;load mode;secondly loading;Flash 数字信号处理器(DSP)在数字信号处理中有着广 泛的应用,尤其是与FPGA结合的设计,增加了应用的 灵活性和可升级性,能够充分发挥其信号处理的优越 性。在设计以DSP为处理器的信号处理模块时,DSP的 加载方式是必须考虑的问题。本文将以TMS320C6455 为例来研究DSP的自动加载。 TMS320 ̄55是rI.I推出的一款较为高端的定点型 采用。EMIF引导方式DSP与外部ROM的接口较为 自由,但需要二次加载。TMS320C6455在以上加载方 式的基础上还有主I C、从I C和SRIO引导方式。本 文主要讨论易于实现的EMIF加载方式。 DSP的内部ROM空间有限,不能将所有的用户代 码存储到内部ROM中。因此需要通过二次搬移完成 用户程序的加载。TMS320C6455的地址空间 0xl00000—0xl07FFF间集成了32 kB的内部ROM, Bootloader是其中的一段引导代码,作用是在DSP上电 数字信号处理器。TMS320CZ ̄455的时钟频率为 1.2 GHz,16位定点处理能力为9 600 MMAC/s,采用了 Serial Rapid IO接13技术,这些特点决定了TMSB20C6455 在通信、图像处理、雷达等领域得到广泛应用。 时,DSP将一段存储在外部ROM的用户代码(长度为 1 kB)搬移到内部的RAM单元中执行。这种自动加载 技术不仅利用了本身有限的ROM资源,而且充分发挥 了DSP内部资源的利用率。 C6000系类DSP的主要加载方式包括无引导模 式、主机引导模式和EMIF总线引导模式3种。3种加 载模式各有其优越点:无引导模式仅限于存储器0地 2 外部ROM引导 在外部ROM引导模式下,对TMS320C6455而言, 址不是必须映射到RAM空间的器件,否则在RAM空 间的初始化之前CPU会读取无效代码而导致错误;主 CPU上电后将自动从CE3空间拷贝1 kB到CPU的内 部RAM并且运行。对于大多数的应用程序,1 kB大 小的代码量无法满足系统的要求,如果将代码放在外 部Flash中运行,则又浪费了DSP的高速性能。因此, 机引导模式则要求必须有一部外部主机控制DSP的 初始化,这增加了系统的复杂度和成本,在设计中较少 收稿日期:2013-08-26 作者简介:康康(1988一),男,硕士研究生。研究方向:基 于DSP+FPGA的数据采集系统设计。E-mail:851370801@ qq.corn。何萌(1990一),女,硕士研究生。研究方向:IC设 计与验证。 当用户代码长度>1 kB时,需要使用Bootloader进行 二次加载。Bootloader程序是一个“搬移数据”的程 序,主要功能是将用户程序从CE3的其他空间搬移到 内部RAM供CPU运行。DSP的二次加载程序的加载 过程如图1所示。 WWW.dlanzikeji.org—— 89 康康,等:TMS320C6455 DSP基于外部FLASH自动加载的设计 CPu复位,加载Bootloader;从C E3空间 将二次加载程序拷贝CPU的RAM中 CPU启动,执行二次加载程序,将用户程序拷贝到 指定运行地址完成后跳转到程序入口_一c—int00 C6455 CE3 AOE AWE S29GL5l2N CE 卜、 OE 卜、 WE EA[19:0】 一卜、、 A[21:2】 c—intO0 C运行环境初始化 BA[hO] k A[2:0】 ED[7 l跳转到main0 图1 DSP程序的二次加载过程 :0】 卜\ DQ[7:0】 图2 DSP和Flash的连接示意图 DSP的CPU复位阶段,程序指针自动指向Boodoader, 调试步骤为:(1)通过JTAG口将编译生成的.out 文件下载到DSP内部的RAM中,不运行,将RAM中 这个程序将CE3空间的1 kB(对应外部Flash中二次 加载代码)搬移到CPU的内部RAM中;CPU退出复位 后正常启动,运行二次加载程序,将用户程序的部分拷 贝到RAM中,完成数据的搬移后跳转到一C—int00处, 初始化C运行环境;待c运行环境初始化完成后,指 针跳转到main()函数处。 的数据保存成.dat文件(注意保存的长度应该不小于 用户程序的长度)。(2)进行Flash的擦除,采用整体 擦除,擦除结束后采用循环检测DQ7引脚是否置1, 置1代表完全擦除。(3)进行Flash的烧写,将上面保 存的.dat文件Load到DSP的CE2地址段(注意修改 起始地址和长度),编写程序,从CE2的地址读取数 3用户程序的烧写和存储区域分配 文中重点介绍直接利用CCS开发工具将用户程 序编译连接的.out文件,通过]TAG仿真器下载到 DSP内部的RAM中,只要不运行程序,此时RAM中存 储的程序就是.out文件对应的二进制格式存储的机 器码,将其另存为.dat文件格式,则直接可以通过在 线烧写的方法完成Flash的烧写。一定要修改工程文 件中的原链接器,命令文件中存储空间的划分和COFF 据,以Flash相应的命令字将数据写入CE3相应的地 址位(注意写入长度不能小于.dat数据的长度),完成 Flash的烧写。(4)重新通电,LED闪烁,表面DSP完 成外部ROM加载,实现DSP的自启动。 6结束语 DSP广泛应用于各种数字信息产品中,对于其加载 模式的要求也越来越高,通过Flash存储器加载DSP的 方法是实际应用中有效而简单的方法。本文介绍了 TMS320C6455从外部ROM加载的模式,给出了硬件连 接方式和软件的核心代码,通过实验验证其运行良好。 参考文献 [1]Texas Instruments.TMS320C6455 Fixed—Point Digital Signal Processor(SPR276M)[M].Texas USA:Texas Instruments Corporation,2012. 段属性的设置,避免烧写程序的存储空间与用户程序 相冲突,并在两个程序中留有一定的间隔用于保护程 序的相互独立性。 4二次加载程序的编写 TMS320C6455片内的Bootloader自动载人CE3空 间的前l kB空间,在实际应用中,DSP的应用程序一 般1 kB,因此需要加入二次引导代码。其实现的功能 是将用户程序的剩余部分拷贝到RAM中。程序运行 的步骤为:(1)根据复制表中各段的加载和运行地址 等信息,对变量进行初始化。(2)根据信息将代码从 Flash搬移到RAM的相应位置。(3)将程序的指针跳 [2]Texas Instnnnents. s320G645x/G647x DSP Bootloader User's Guide(SPRUEC6G)[M].Texas USA:Texas Instruments Cot- poration,2011. [3]Spansion.S29GLxxxN MirrorBit Family[M].Texas USA: Spansion,2004. [4] 卫菊红.基于TMS320C6455 DSP自动加载及Flash烧写 转到C程序人口函数_c—intO0处。 程序的设计[J].现代计算机,2011(26):71—74,77. 【5] 吴海洲,刘恒甫.基于TM5320C6455的DSP的加载模式 5 Flash的烧写 Fldsh的烧写以一个GPIO口的LED闪烁的程序 为例。设计采用的Flash型号为S29GL512N,其接法 如图2所示。 研究[J].电子测量技术,2008,31(6):155—161. [6]徐家刚,徐瑞荣.基于TMS320C6455的Flash加载模式 [J].舰船电子对抗,2010(3):80—83. [7] 孙秋生,陈尚峰.基于CCS的DSP片外Flash直接烧写设 计[J].电子设计工程,2009(1):93—95. I/vww.dionzikeji.org