找回密码
 注册
关于网站域名变更的通知
查看: 614|回复: 3
打印 上一主题 下一主题

关于ARM

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-5-28 14:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

% Q$ Y% n+ ~, A0 i1.1 ARM 分类
1 o3 x# v- _" L. \1.1.1 版本号分类6 P% @" h5 ^/ n$ d# Z$ |
  以前分类的是 ARM7,ARM9... ARM11,在 ARM11 之后,就是以 Cortex 系列分类了:- h9 X/ n5 U6 Q: P, {
1 w: b) J2 y( v) {
Cortex-R:应用在实时系统上的系列
; R* u' k3 C8 m5 Q! M/ {Cortex-M:替代单片机的系列,M0  M3  M4  M7
3 [4 E7 w7 L8 YCortex-A:A8  A9  A15  A72  A53' h5 ]( E9 d2 F' U" D& [0 u  p8 b
1.1.2 指令集分类
4 ~( J" D& X( g4 b7 E' N  指令集原则上是向下兼容的。6 l8 h1 X" k7 {  U

/ G# \* B5 c: m& G( w) h* _' A  指令集是根据核来分的,比如 ARMv7指令集、ARMv8指令集等等4 P. [6 K. [1 T$ M. f4 c
0 k4 x/ j* }0 Q$ m4 h
1.2 ARM 商业模式及半导体公司3 i% L2 y& e/ u/ n
1.2.1 IP 核(知识产权)
, j& ?; J) c3 Y7 Y* P  W  ARM MIPS X86 PowerPC(IBM)
3 i; U5 A" Z; V- }4 J6 d) o, O4 n+ q4 y. B
  ARM 出卖 IP 而不卖芯片
# ~* G* {& v* K- |9 \( |1 B9 o- l% v/ I. p1 e8 `8 l
1.2.2 半导体公司, E. O2 k9 [- ]7 h
  主流的半导体公司有三星、高通、苹果、NXP(Freescale)、TI、ST、ATMEL、Ambarella、Amlogic、MTK、海思、全志、瑞芯微、展讯(基带)、炬力、联咏等等。8 k0 T4 h* h9 M9 Q
4 B, ]+ ?6 K+ n& E4 P# v
1.2.3 芯片、处理器和架构的联系
) w9 ]' ?3 y4 l+ t/ ?+ l  以 S3C2440 为例子:
7 q# ]+ o+ _, u; Y- E: |
- r3 ^, U/ u) u4 K, W   # M# B, i4 [' [7 A& k3 r
, s' B. d7 x( ]0 I* R! B
1.3 ARM 处理器状态和处理器模式) [9 k  F# |4 C% H! p
  在不同的体系下,有一些概念有所不同。这里主要以 S3C2440 为例子。
$ z7 D: x- R) W4 k' Q( X# J# p, ?8 N& Q, f& k0 y
1.3.1 处理器状态
3 H( m! T1 O' Z5 q1 h6 |" _处理器状态有两种:) o5 x0 x" U& Y" I% B! s( S+ g
ARM 状态:执行效率高: O/ N+ |5 X6 l5 e
THUMB 状态:代码密度好
# e1 n+ ~' K& `5 H% k% LARMV4 中,ARM 状态为32位,THUMB 状态为 16位,但是,在 ARMV7 中,ARM状态为32位,THUMB 状态为 16/32位状态,还有一种 THUMBEE状态,适用于 JAVA 运行的状态。* g2 h. F- E, m! d* Q0 v0 a6 |( }
处理器状态的切换指令: BX  BLX4 K! c! Y6 n* O; W8 \' k
指令集:" n% w; q. f. o
ARM指令:32位. [+ w( t0 G* g- f
THUMB指令:16位  _9 m+ E: q" Z
THUMB2:32/16位/ x$ f/ ?/ Y$ J5 M
CORTEX-M 只是指令 THUMB2 指令子集
  _: e4 |2 V5 W3 j1.3.2 处理器模式7 }' Q# x" I2 z1 W0 `$ _& X
处理器模式共有 7 种:
- f" c: C( i8 Gusr:用户模式
2 V$ z# |9 T+ rfiq:快速中断模式
: ?( Y( k, n6 w: p* J+ n! cirq:普通中断模式! G6 ]& x- y4 ~0 f1 x' t9 S) g
svc:保护/特权模式( U' I' d5 U* W3 Z& G' A( S; \
abt:异常模式, s4 I' p* z4 N' o$ `% E: O
sys:系统模式
" I1 ?( c( K& @6 G0 _8 Wund:未定义模式
; U* A  q- E8 O1 e8 n, s设计的目的:提高相应速度
" x3 E' [2 W; _# Q6 S# C注意:保护模式/特权模式,需要 MMU 和代码的支持
0 {2 t  d% |2 k! F1.4 ARM 内部寄存器及 SFR" M' O4 A0 X/ w/ q4 B
1.4.1 ARM 内部寄存器3 O' L7 [' ~8 ?; O( @0 x' b: V
此类寄存器设计在 CPU 内部,特点是速度快。& R, y- Z- h5 W2 S
一共 37 个寄存器,31 个通用寄存器 和 6 个状态寄存器5 M2 l' P2 w: d) G/ I2 U' A5 `$ m
通用寄存器:R0-R12,R13,R14,R15,R16/ k3 K7 [$ p5 Q' V! y- f! m7 ~3 P
R13(SP):栈指针,不同模式下栈空间是不一样的
, Q5 ?) N% Z) {+ ^R14(LR):链接寄存器,存放断点,硬件自动完成
" }3 a+ U+ u0 _R15(PC):程序指针,取指令的位置
4 e! x% b6 K0 }1 l/ [6 X, }状态寄存器:PSR 分为 CPSR、SPSR
9 C) A& ^5 G& Z/ N1 v条件状态:NZCV
# L3 \2 @1 A5 v; v' C( q: H# W保留位
5 E! u: I( @. ]- \, [7 {, E# g0 Y/ WIFT
: C9 {; W! v  A$ v; H( T0 Y7 ~6 X模式位:M4-M0
+ m) N( |# F& r& j+ f. I3 N  
" d  R6 ^' b" M4 q* ?: i& [. G, V7 Z4 H. N8 ^

0 l2 D3 o2 s+ N) r* ?
- m$ t. k" K' R& n) ]- J1.4.2 SFR 特殊功能寄存器2 C( h' x* v) a6 Q
IO 端口/寄存器,它属于外设的组成部分。- R, w( X  K" l: n6 M& z
/ _% s- \, S# K$ ]; y- E8 {
ARM 是采用与存储器统一编址的方式使用软件编程控制某一硬件,起使就是编程读写该硬件的寄存器1 U5 |1 K! H9 v: ~9 [& H

. ?: J' {  j; c! F& A* _$ g5 V. L1.5 ARM 异常处理和存储系统! @9 W, w% Y5 d( x
1.5.1 模式与异常" f& _$ [* h  K- C. Y3 Z! A5 N+ _
异常的类型:Reset、undefined instruction、swi、prefetch/bort、data/abort、Reserved、IRQ、FIQ  y4 o4 x( m/ Q( F, G$ g
处理器的模式:每一个异常对应一种模式,但不是一一对应关系. l9 [& j# l5 G8 n
1.5.2 中断向量表7 v1 }4 F4 L1 X  Q( h, K% Y

5 _) |: Y. S  }1 D1 ^  
7 d' s$ E" e8 S% e) w8 J
& z, x" m' K% N# d) C1.5.3 大端与小端存储
( Q( S/ Q5 |9 i3 C 在大端格式中,字中最高有效位 MSB(Most Significant Byte)存储在编号最低的字节中,最低有效位 LSB(Least Significant Byte)存储在编号最高的字节中。因此存储器系统的字节 0 关联到数据行的 24 到 31。6 r% ^, O( _8 |
& m3 I" L( E/ S2 z6 v* E
  
& \6 @8 e" r0 U& e1 Q) j5 v& N! R- A
! c/ O2 A: h$ e* S, c

6 A! Z& B- v0 J' Y在小端格式中,字中编号最低的字节被认为是最低有效位 LSB,编号最高的字节为最高有效位 MSB。因此存储器系统的字节 0 关联到数据行的 0 到 7。* J- F+ ~; B* a2 M5 s. q0 F4 W
: w6 g$ j6 {1 K" k1 O. G  `
   & G0 `& _3 j) s3 R/ |* H1 v8 A

该用户从未签到

3#
发表于 2021-5-28 15:28 | 只看该作者
挺详细的资料

该用户从未签到

4#
发表于 2021-5-28 15:29 | 只看该作者
这是总结的ARM精华啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 16:48 , Processed in 0.250000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表