一、ARM基础
1、ARM公司讲解
- 成立于1990年11月
- 前生为Acorn计算机公司;
- 主要设计ARM系列RISC处理器内核;
- 授权ARM内核给生产和销售半导体的合作伙伴;
- ARM公司不生产芯片;
2、ARM产品线
3、授权的厂家
- TI(德州仪器)
- Omap3430 Cortex-a8核600MHz(若基亚N96)
- Omap3530 Cortex-a8核600MHz(ARM+DSP双核)
- Samsung(三星)
- S5PC100 Cortex-A8核 600MHz (iphone 3GS和M9都应用此芯片)
- S5PC110/S5PV210 Cortex-A8 1GHz (号称世界上最快的ARM处理器)
- Freescale(飞思卡尔)
- MX512/ i.MX513/ i.MX515 Cortex-A8核 600MHz~1GHz(在多款上网本中得到应用)
- Marvell(马维尔)
- PXA930 800MHz Cortex-A8核
- ARMADA 500/600/1000系列Sheeva PJ4核心 1GHz~1.2GHz(支持ARMv7指令集,架构异同)
- Qualcom(高通)
- QSD8650A/QSD8672(Snapdragon系列) 1。3GHz~1.5GHz scorpion核心(支持ARMv7指令集,架构异同)
- Nvidia(英伟达)
- Tegra ARM11核 700MHz
- Tegra2 (下一代产品) Cortex A8(或A9)核
4、体系结构
注:不同的架构采取不同的指令集;
哈弗结构是数据和指令分开存储并行;
冯.若依曼(普林斯顿)结构是混合存储的;
5、ARM系统的硬件组成与运行原理
6、安装交叉编译工具链:arm 2011.09.70 arm none linux gnueabi.exe
7、ARM工作模式(ARM主要有7个基本工作模式)
- User : 非特权模式,大部分任务执行在这种模式;
- FIQ :当一个高优先级(fast)中断产生时将会进入这种模式;
- IRQ :当一个低优先级(normal)中断产生时将会进入这种模式;
- Supervisor : 当复位或软中断指令执行时将会进入这种模式;
- Abort :当存取异常时将会进入这种模式;
- Undef :当执行未定义指令时会进入这种模式;
- System :使用和User模式相同寄存器集的特权模式;
8、ARM有37个寄存器
- 1个用作PC(Program Counter);
- 1个用作CPSR(Current Program Status Register);
- 5个用作SPSR(Saved Program Status Register);
- 30个通用寄存器;
9、ARM工作模式及寄存器框图
- 阴影部分 的寄存器是 — 单片机(MCU)在当前在当前状态下 独有的寄存器;
- 没有阴影部分的 寄存器,是所有工作模式下公用的 寄存器;
- CPSR 特殊的寄存器:状态寄存器 ,当前的工作模式;
- PC 寄存器:当前的 执行位置;
CPSR寄存器:
10、结合keill ,ARM中的寄存器具体的运行过程;
11、测试:
- ARM有哪些工作模式?
- ARM核有多少个寄存器?
- PC和LR寄存器的别名?
- R13别名是什么?
- 哪种模式使用的寄存器是最少的?
- 在Thumb和ARM指令的区别?
- CPSR的哪位反映了处理器的状态?