嵌入式CPU的启动方式和启动地址

1 篇文章 0 订阅

嵌入式CPU的启动方式和启动地址

sailor_forever  sailing_9806#163.com

http://blog.csdn.net/sailor_8318/archive/2009/09/20/4573932.aspx

 

CPU上电后从哪里开始执行第一条指令?

答案可是千差万别 或许这是嵌入式CPU区别于X86等桌面处理器的一大特点

具体从哪启动是取决于何种CPU类别和型号的,总体来说有两个因素:

 

1、启动方式
有些CPU有多种启动方式,不同启动方式的启动设备是不一样的
典型的有片内ROM启动,片外flash启动(又分为并口/SPI等不同的接口形式),片外EEPROM启动甚至是RAM启动
如AT91RM9200就有片内ROM启动和片外并口flash启动
TI F2812就有并口flash启动和IIC EEPROM启动
TI C6416只有RAM启动,需要主控CPU将程序下载到RAM中,再触发复位
TI C6488启动方式更是多达五六种 每种都有不同的适用场合 可见多么强大
PPC440启动方式更是多达8种
 
那么这么多种复杂的启动方式是如何选择的呢
通常都是通过硬件管脚控制的 可以设置跳线选择不同的启动方式
CPU上电时会对这些管脚进行采样 选择相应的启动方式
但是大部分CPU通常都只有一种启动方式 即从并口flash启动
 
2、启动地址
选择了某种启动方式后,启动地址通常都是固定的
ARM系统无论从何种设备启动都是从0地址开始运行的
PowerPC通常是0x100或者0xFFF00100,如FreescaleMPC82xx系列
为什么有两种呢?默认是从0xFFF00100启动,但是里面有程序后,可配置为从0x100启动
也有从0xFFFFFFFC启动的,如E500及IBM的PPC405GP和440,只有4个字节,通常这里是一个跳转指令
MIPS也有从0x1fc0 0000启动的
至于DSP,那就更复杂了
 
总体来说,嵌入式CPU为了使用特定场合的应用 启动设备繁多
但是ARM的启动方式和启动地址是最简单的了
DSP最复杂 PowerPC有单一的也有多种启动方式的

 

另附一个参考文档

http://blog.mcuol.com/User/emblinux/Article/13496_1.htm


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值