嵌入式CPU的启动方式和启动地址
2009-09-20 22:15
281 查看
嵌入式
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,如
Freescale
MPC82xx系列
为什么有两种呢?默认是从
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
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,如
Freescale
MPC82xx系列
为什么有两种呢?默认是从
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
相关文章推荐
- 嵌入式启动方式-从Nand启动cpu .下(3)(学习整理笔记)
- 嵌入式启动方式-从Nand启动cpu .上(学习整理笔记)
- 嵌入式启动方式-从Nand启动cpu .中(学习整理笔记)
- 嵌入式启动方式-从Nand启动cpu .下(学习整理笔记)
- 嵌入式启动方式-从Nand启动cpu .下(2)(学习整理笔记)
- ----[x86实模式] 内存地址空间分布 CPU合成内存地址的方式 程序中段的加载 启动区格式要求----
- 嵌入式jetty启动spring(java配置方式),junit测试用
- 【转改】嵌入式linux应用开发完全手册 5.2以总线方式访问硬件,地址对齐。
- 【ARM-Linux开发】ARM嵌入式设备Linux系统启动步骤和方式
- ARM嵌入式设备Linux系统启动步骤和方式
- Odoo 8 绿色版在 CentOS 自动安装及以服务方式启动方法 原文地址:
- 嵌入式启动之三:应用程序的三种存储和加载方式
- [x86实模式] 内存地址空间分布 CPU合成内存地址的方式 程序中段的加载 启动区格式要求----
- 嵌入式启动之三:应用程序的三种存储和加载方式
- ARM嵌入式设备Linux系统启动步骤和方式
- CPU对I/O的物理地址的编程方式
- .嵌入式jetty启动spring(java配置方式),junit测试用.标准spring 配置(java config) 嵌入式jetty9启动
- CPU对外设IO端口物理地址的编程方式
- QCOM 从CPU 启动地址
- IPv6地址表达方式、寻址模型和地址空间