- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用C语言设计程序实现多页程序引导装载
用C语言设计程序实现多页程序引导装载
[摘要]TMS320VC5000系列DSP上电时,需要通过掩膜在DSP片上ROM的boot loader程序完成对用户主程序的引导装载过程。受限于片上boot loader程序,在外扩FLASH并行引导装载方式下,用户主程序可执行代码不能超过32K字。这种情况下,需要用户自行设计用户boot loader程序,通过二次引导装载的方法,完成用户主程序的引导装载。可以用C语言嵌套汇编的方法,设计用户的boot loader程序。
[关键词]DSP 二次引导装载
中图分类号:TP3 文献标识码:B 文章编号:1002-6908(2007)1120062-02
一、引言
TMS320VC5000系列DSP是为实现低功耗、高性能而专门设计的定点DSP芯片,它具有增强的哈佛结构,高度平行和带有专门硬件逻辑的先进CPU设计,高度专用的指令系统以及优化的高级语言开发系统。能满足电子市场众多领域的需求。TMS320VC5000系列DSP启动时,需要通过掩膜在DSP片上ROM的boot loader程序完成对用户主程序的引导装载。但是户主程序可执行代码不能超过32K字。本文介绍用C语言嵌套汇编的方法,设计用户的boot loader程序,实现超过32K字的用户程序引导装载。
二、TMS320VC5000系列DSP的引导
装载说明TMS320VC5000 DSP系列CPU提供上电引导装载功能。给DSP上电时,DSP内部的Boot程序会按外部中断或通过I/O口的设置,采用ROM中相应的Boot程序和Boot方法(Boot称为引导装载启动),从外部存储介质中读取程序,并将这些程序写入到DSP内部的高速RAM或片外映射到片上的外部RAM(仅当内部RAM空间不够大时)。这个工作完成后,Boot程序将程序指针指向RAM程序区的程序入口地址,Boot完毕后,DSP进入正常工作。
(一)引导装载模式
TI公司的TMS320VC5000提供了多种的引导装载模式,按照Boot时程序由外部FLASH等存储器进入到DSP片上RAM的通道不同分为很多种Boot Loader的模式。
按照数据进入DSP时的字长分有:
?16位方式
?8位方式
从接口方式上分类有:
?HP I模式(8位和16位)
?串行EEPROM模式(8位)
?并行模式(8位和16位)
?标准串行模式(8位和16位)
?I/O模式(8位和16位)
可见, TI公司提供的引导装载功能非常强大,可以满足用户多种不同的需求。但是芯片自带的引导装载程序(简称Boot loader)只支持32K字以内的外部程序加载,因此程序设计往往局限于32K字空间内,限制了编程的灵活性,不能充分发挥TMS320VC5000系列的性能,当程序空间大于32K字时,就需要自己编写程序来实现引导装载。
(二)外扩FLASH并行引导装载方法的局限性及其解决办法
采用外扩FLASH的16位并行引导装载方式是比较方便,也是相当普遍的一种使用方式。由于TMS320VC5000 DSP 系列CPU 的数据空间只有64K,其中低端32K(0000h - 7fffh)映射到内部,映射到外部数据空间的只有高端32K ( 8000h -ffffh) 。芯片自带的引导装载程序的处理方式是仅在这32K空间进行寻址搬移。如果用户程序超过了32K字,则无法完成引导装载。许多的用户在实际使用中遇到可执行代码超过32K的问题。因此提出利用二次引导装载的方法解决因CPU片上引导装载程序缺陷带来的程序空间受限使用问题。所谓二次引导装载,是指上电时,CPU片上引导装载程序首先将用户程序引导装载到片内RAM 中运行,用户引导装载程序取得控制权后,再将用户的主程序引导装载到RAM中运行。由于用户引导装载程序是自己编制的,完全可以根据所需进行搬移,因此也就突破了32K字的限制。
三、用C语言嵌套汇编实现二次引导装载
用户引导装载程序采用C语言嵌套汇编的方式实现。C语言明白易懂,便于移植和修改。之所以还要嵌套汇编,是因为引导装载程序需要将可执行代码从数据空间搬移到程序空间,在5000的平台上,没有任何一句C语言可以直接访问程序空间,因此必须要嵌套一部分汇编代码。TI的引导装载功能的实现,对用户存储在外部非易失性介质中的可执行代码格式,有着严格的要求。用户必须按照TI要求的格式生成可执行代码,并存储到CPU上电时能够寻址到的地方。这个所谓的可执行代码的格式,则是由TI的引导装载表规定。用户自己编写引导装载程序,可以不必按照TI的引导装载表格式。用户可以制定自己的引导装载表格式。但是,如果这样
您可能关注的文档
最近下载
- 阿联酋航空介绍(共33张PPT).ppt VIP
- 国企纪委书记竞聘面试题笔试题4套和专业题26问及答案.docx VIP
- 现场仪表 温度仪表WEST 8100+温控器说明书.pdf
- 张正友相机标定法课件.pptx VIP
- 某著名企业供应链咨询构建高效协同的销售与采购供应链战略供应链管理(61页PPT).pptx VIP
- 成人肺功能检查技术进展及临床应用推荐指南(2025版)解读.docx VIP
- 中国徐州PPT课件.pptx VIP
- 第1节 温度 (课件)人教版初中物理八年级上册(39页PPT).pptx VIP
- 船舶结构与货运PPT完整全套教学课件.pptx VIP
- 网络与新媒体概论PPT课件3.pptx VIP
文档评论(0)