一、典型的ARM嵌入式系统开发环境配置:
1、编译器/汇编器
2、指令系统模拟器
3、在线仿真器或调试探测器
4、目标的开发板
5、跟踪捕捉器
6、嵌入式操作系统
ARM嵌入式系统c编译器: ARM公司、keil公司、IAR系统公司、lauterbach公司。
二、ARM嵌入式系统的硬件配置
ARM嵌入式芯片主要包括32位ALU、31个32位通用寄存器和6个状态寄存器、32×8位乘法器、32×32位桶移位寄存器、指令解码和控制逻辑、指令流水线和数据/地址寄存器
在ARM处理器架构中,用流水线技术提高处理器指令的执行速度。 流水线操作可以同时执行多个操作,并且可以处理和连续操作存储系统。
三. ARM硬件配置
Cortex-M3是32位ARM处理器内核。 内部的数据宽度为32位,寄存器的接口也同样为32位。 与典型的ARM嵌入式处理器一样,Cortex-M3采用了哈伯结构,拥有独立的指令和数据总线,可以同时进行寻址和数据访问操作。
采用哈佛体系结构的数据/指令存储方案,处理器在访问数据时不会占用数据总线,从而提高系统处理性能。 为了进一步提高ARM处理器的处理能力,CM3的内部结构包括多个总线接口方案,每个总线针对特定APP应用进行了综合优化,使得多条总线可以并行工作。
1、CM3寄存器组
CM3处理器包含R0~R15寄存器组,其中R13是堆栈指针SP。 有两个SP寄存器,但在同一时间用户只能看到其中一个。 所谓的“banked”寄存器。
r0-R12位通用寄存器都是32位寄存器,主要用于ARM处理器内部的数据操作,但在ARM指令集中,并非所有语句都可以访问R0~R12寄存器。 其中,大多数16位Thumb指令只能访问R0—R7寄存器,而32位Thumb-2指令可以访问所有寄存器。
2、嵌套向量中断控制器
Cortex-M3配备了一个终端控制器,称为矢量终端控制器,嵌套在ARM内核中,与内核紧密耦合。
支持系统嵌套中断
支持向量中断;
动态调整中断的优先顺序
短中断延迟
可以切断系统的中断。
3、内存映射
Cortex-M3可以支持4g存储。
4、内存保护单元
存储保护单元允许对权限级别的访问和用户级别的访问提供不同的访问限制。