1、芯片:s3c2440、s3c6410、s5pv210
2、ARM核:A8、ARM9、ARM11
3、指令架构:armv7、armv6
2440使用的是arm9的核,内核使用的是armv4的指令架构;
6410使用的是arm11的核,内核使用的是armv6的指令架构;
210使用的是A8的核,内核使用的是armv7的指令架构。
arm11 cortexA5 A8 A9
arm9 cortexR4
arm7 cortexM0 M1M3 M4
ARM经典 cortexM cortexR cortexA
CortexM主要用于工业控制领域,不能安装操作系统;
CortexR用于实用控制;
CortexA用于多媒体。
4、核对比
ARM7类似CortexM3主要用于裸机开发。
ARM9和ARM11是介于CortexR与CortexA中间的ARM内核。
5、芯片对比
2440 | 6410 | 210 | |
处理速度 | 400-500M | 533-667M | 800-1G |
缓存 | 16K | 16K | 32K |
内存接口 | SDRAM | DDR SDRAM |
DDR1 DDR2 |
支持OS | wince/linux | wince/linux/andoid | wince/linux/andoid |
其它 | 停产 | 生产中 | 生产中 |
二、ARM工作模式
1、ARM一共有几种工作模式,为什么
ARM共有7种工作模式,usr、svc、sys、irq、fiq、und、abt
不同的工作模式下,可以访问不同的寄存器和指令。这就保证了不同工作任务的分类处理。例如在linux中应用程序工作在usr模式下,而linux内核工作在svc模式下。
sys是在armv4中新加入的模式,一般不会用到。
usr normal program execution mode
fiq supports a high-speed data transfer or channel process
irq used for general-purpose interrupt handling
svc a protected mode for the operating system
abt implements virtual memory and memory protection
und supports software emulation of hardware coprocessors
sys runs privileged operating system tasks(armv4 and above)
2、ARM寄存器详解
ARM寄存器{通用寄存器{未分组寄存器(r0-r7)、分组寄存器(r8-r14)、程序计数器(r15)}、状态寄存器{cpsr、spsr}}
ARM共有37个寄存器,其中31个通用寄存器和6个状态寄存器。
R13:SP堆栈指针寄存器
R14:链接寄存器{执行函数返回地址、中断返回地址}
R15:PC指针,计数器。
CPSR和SPSR都是状态寄存器,它们有着共同的模式。当发生中断等异常时,将CPSR中的状态数字保存到相应的异常模式下的SPSR,等要返回原来模式时,就调用SPSR中的状态数字,就可以返回原来模式了。
三、ARM的寻址方式
1、什么是寻址方式
寻址方式就是指根据指令中信息来查找操作数的方式
2、都有哪些寻址方式
1、立即数寻址
就是其中指令就是操作数,对指令进行操作就是对操作数直接操作。
2、寄存器寻址
寄存器中存放的是操作数,对寄存器进行操作就是对寄存器中的内容操作数进行操作。
3、寄存器间接寻址
寄存器中存放的是内存地址,通过内存地址对操作数进行间接的存取。
4、基址变址寻址
寄存器中存放的是基址,而后又加变址,基址加变址就是一个操作数的内存地址。
5、相对寻址
跳转指令中相对寻址PC指针的当前值为基地址,指令中的地址标号作为偏移量,将两者相加之后得到操作数的有效地址。
上一篇:arm驱动linux设备地址映射到用户空间
下一篇:ARM裸机开发中内存管理库RT_HEAP的使用
推荐阅读最新更新时间:2024-03-16 14:56