cpu arch之arm核


soc设计概要

从以下文档中可以对比以下不同的arm体系的相同和不同之处。

设计arm核处理器需要了解的东东
处理器模式:目前不同arm体系均有7种处理器模式,对应n(=7?)种中断向量
寄存器组:不同arm体系寄存器数目大致相同r0--r15,pc
指令集:精简指令,分为32位的arm指令和16位的thumb指令,分别对应arm状态和thumb状态
寻址方式:相对其他risc核而言较为复杂,>=9
cache:不同的arm核均配置指令cache和数据cache。8051内部没有cache.
mmu:部分可装操作系统的cpu都配有mmu硬件,位于cpu和主存之间,cpu发出的地址会先在mmu中转换1下,变成物理地址发到总线
amba总线规范:是arm提出的总线规范,是设计soc最重要的一部分,大部分外围器件都挂在amba类总线上(具体分为分为ahb,apb,axi)。比如sdram,flash控制器,iic控制器,uart控制器等等soc设计者所要扩展的一切东西。我觉得8051也需要搞一个好用的总线规范,这样在设计51核的soc时大家都遵守,是不是更简单了呢。
amba 2.0
amba axi 1.0

ARMv7-AR 体系结构参考手册

本手册介绍符合 ARMv7(A&R 配置文件)的处理器的指令集、内存模型和程序员模型,这类处理器包括:

  • Cortex-A 系列
  • Cortex-R 系列
  • Qualcomm Scorpion。

此外,本手册还介绍了用于 ARM11 处理器的较新的 ARMv6 体系结构版本,以及 Thumb-2 和 TrustZone 安全扩展。

ARMv7-M 体系结构参考手册

本手册介绍符合 ARMv7(M 配置文件)标准的处理器的指令集、内存模型和程序员模型,这类处理器包括:

  • Cortex-M3。

本手册的读者是那些实现 ARM 处理器、移植操作系统或编写开发工具的工程师,这些工程师需要详细了解 ARMv7-M 体系结构。

ARMv6-M 体系结构参考手册

本手册介绍符合 ARMv6-M 标准的处理器的指令集、内存模型和程序员模型,这类处理器包括:

  • Cortex-M0
  • FPGA 产品出售配置中使用的 Cortex-M1。

ARMv5 体系结构参考手册

本手册介绍符合 ARMv4 和 ARMv5 标准的处理器的指令集、内存模型和程序员模型,这类处理器包括:

  • ARM7
  • ARM9
  • ARM11
  • StrongARM
  • Intel XScale
  • Marvell Feroceon 产品系列

本手册还介绍最初的 ARMv6 体系结构版本。Thumb-2 或 TrustZone 安全扩展的内容不包含在本手册中。

有关 Thumb-2 和 TrustZone 的内容,请参阅 ARMv7-AR 体系结构参考手册



arm7
s3c44b0
s3c44b0采用一个三星基于amba修改的总线结构叫samb来搭建其处理器
cache 8KB,并没有指令和数据之分,为诺依曼结构


EP7311



arm9
s3c2440
s32440采用amba总线规范,
高速总线ahb用于连接nand控制器,sdram控制器,usb控制器,中断控制器,lcd控制器等,均是ahb slave
低速总线(外围总线,频率一般设置=ahb/2)apb用于连接i2c控制器,spi控制器,gpio控制器,adc,uart等,均是apb slave
ahb通过一个转换桥连接,amba 2.0中桥的描述

连接在总线上的设备的寄存器都需要地址,这样cpu才能找到他们,所以每个控制器模块都分配有地址空间,2440是均匀分配的,每个模块0x1000000(16MB)

AHB总线设备地址空间:
存储器控制器 0x48000000---0x49000000-1,没完全用完,只用到0x48000033
usb控制器0x49000000
中断控制器0x4A000000
DMA 0x4B000000
Clock & Power Management 0x4C000000
LCD Controller 0X4D000000
NAND Flash 0x4E000000
Camera Interface 0x4F000000

APB总线设备地址空间:
UART 0x50000000 
PWM Timer 0x51000000
USB Device 0x52000143 
Watchdog Timer 0x53000000
IIC 0x54000000
IIS 0x55000000
I/O port 0x56000000
RTC 0x57000043 
A/D Converter 0x58000000
SPI 0x59000000
SD Interface 0x5A000000
AC97 Audio-CODEC Interface 0x5B000000

cpu通过ahb或者apb总线访问这些地址时,


arm11

arm cortex-a8

arm cortex-a9
arm cortex-a15

arm cortex-m0
arm cortex-m3

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值