找回密码
 注册
搜索
查看: 774|回复: 1

[综合资料] 关于DSP的启动?

[复制链接]
发表于 2007-12-11 09:50:17 | 显示全部楼层 |阅读模式
请问各位大侠,对于DSP来说,有四种可能的入口点。分别是由-e global_symbol指定的标号,_c_int00,_main和0地址。那么对于cpu或者booter来说,它们是否是强行跳转到以上的标号,而我们在编译程序的时候,需要将自己的代码安排在这些标号的后面?另外,这四种入口点的优先顺序是什么呢?_main和通常的main有何区别?多谢!
发表于 2007-12-12 17:07:35 | 显示全部楼层
对于你说的启动,我暂时理解为上电自加载。
      一般设计TI的DSP芯片(C5000为例)系统,都会将MP/MC引脚接地,这样系统在硬件复位期间就会从片内ROM的FF80处开始执行程序,这个地址存放的是DSP的中断向量表,同时选择加载方式。当然加载方式要看你的硬件配制了。不同的配制DSP芯片就会有不同的操作,这部分你可以参考TI的C54XBOOTLOADER。
      如果你的程序是用C写的话,当BOOTLOADER完毕后,DSP会跳到_c_int00处。
     _c_int00是一个特殊的函数,主要完成设置堆栈指针、初始化全局变量、调用main().........等等,太多了我也记不大清楚。具体的你可以参考TI的C Compiler User’s Guide数据手册。里面有详细的介绍。
      _main和main,我个人感觉没什么大区别,可能就是前一个是汇编的表示,后一个是C的表示.
      个人见解,希望不会误导楼主~~~~[em04]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-10-7 13:14 , Processed in 0.056192 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表