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

ARM常见的一些问题记录

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-9-26 13:28 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

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

x
1.说出ARM可以工作的模式名字答:7种:
) _2 Z# ~& c0 z" E$ E( E; e& w, d
  • usr 用户模式
  • system  系统模式
  • FIQ 快速中断模式
  • IRQ 外部中断模式
  • Abort 异常模式
  • undef 未定义模式
  • svc 管理模式
    6 j" m# E9 `( k% a% G$ b/ B

  u0 |$ g# p- @& g8 C, Z6 C% o# s9 @5 [( W" o& @  R
2.ARM核有多少个寄存器
9 ?  V4 T7 J& K1 y: O! r7 s

# E# `& f; A" W4 @, R' t) T# `答:37个32位的寄存器
/ j& v9 A# v0 q  b8 Z
, t" a5 A9 n3 \: H# A
3.什么寄存器用于存储PC和LR寄存器  
- C$ l; ~1 k: }5 V  I& k
( S" m3 j8 x$ Q' W9 o% ^2 H

( H2 M% p2 [6 m- v0 U. M答:PC:R15。LR:P140 W3 |4 f" }1 y: ~3 e  X; V

  B+ j  [( j- E& a. ^' `  E1 P3 A
4.R13通常用来存储什么  
5 \7 l$ w5 _8 _- c* P% n
6 d2 ]& o* G& A0 V" C) B' A

: O& k! o" A. S: r& S2 l答:栈指针
* O' |6 }2 ~' J9 X! t
: I; a* g" f- I! H

! v" y/ Q$ c' F2 F* o# M
' h1 K: [+ c% w0 E$ J5.哪种模式使用的寄存器最少  
- ^6 D* F% e' g: I" ^3 |* n$ |3 c+ `

9 e* N$ O/ g* p) s

2 {# \1 |0 q6 a1 v# f2 N0 W答:usr) o: n* K# s" R0 i- a& [

/ U' m& W  I, c  O
4 k; x; C# _+ @7 ~+ u2 H
5 g% w! o8 C) D2 @4 g  ~  a' p
6.在Thumb指令中,哪些处理器处于Low group  
$ ]/ v+ U- U5 p2 e3 J" U4 c
6 F5 U# }6 L4 k  |2 A
+ i8 [7 J4 R7 f' v
答:R0-R7
5 s+ P# _- w, f' F6 y- O' w
  O+ e; g/ J. W6 w
  u: v1 y% f; ~- Y' h
- g: }, t' }5 m) V) d
7.CPSR的哪一位反映了处理器的状态  

1 _- g; ]3 P. q* J: D8 c4 H) g% x- V' W: \; f! o7 I% L
# w& X" ?( w* l3 X
答:T* F8 W% K6 H0 J* q& {$ R$ v3 Y
! y" }# k, ]+ S& d" J
$ W1 E* J; \* W5 V, q8 e: Z9 L% r4 E! }

# j: o! e; f. k0 i8.所有Thumb指令采取什么对齐方式  

1 ^. [1 w; c9 F; U4 d: ?
/ j- ]7 q, J3 U7 ]" R& D
+ t# G7 J- s, e& s# }
答:16位2字节对齐
+ P, m& ^3 [3 @1 u7 ]
% J7 T5 {4 c* T% I9 O6 M, ~
$ Z3 x. J" L$ _+ q% l8 [5 U- C7 I" i6 l/ m. Q

/ G- G5 }- m/ ~5 K& ~9.ARM有哪几个异常类型

+ Z9 \$ Z6 ^2 x; P: E0 y* r' l  E
9 w8 Z/ V2 i- d

; U6 n: r4 ~. u  s/ j答:7个
' G. l# c1 f' x8 L
/ }8 p* e  \/ d: L5 f! J

$ x- L& a7 ?/ C) ~
  • Reset   复位异常   0x00
  • Undefined instruction 未定义异常 0x04
  • Software interrupt 软中断  0x08
  • Prefetch Abort  预取指异常 0x0c
  • Data Abort  数据异常 0x10
  • IRQ   外部中断异常 0x18
  • FIQ   快速中断异常 0x1c$ p  r! I+ s1 l$ N
0 F  g0 H) z8 M1 g

) a1 x& {7 C4 u

8 D. D% }- m( i/ q0 P, O3 ], Z0 U  i' t( y! n5 F; o
10.为什么FIQ的服务程序地址要位于0x1c
0 V8 l6 p3 K  E2 X3 o

- r5 d' X% ^( M% s* Z( m答:因为0x1c后面可以直接给异常处理函数,而不需跳转,FIQ还有额外的5个私有寄存器,不需对齐进行保护(中断处理时,必须保护期使用的非私有寄存器)从而提高执行速度如果在0x1c前面的话则只有四个字节只能跳转执行异常函数

1 C: d; Z% L- o
3 ?6 x( b# G! p5 Y) S; y0 i
% t3 K* J" K8 l+ e3 w, u3 v: o
/ g  H8 F( o" H! r
11.在复位后,ARM处理处于何种模式、何种状态  
5 d: u9 e& B3 O- `
( H( Y" T3 n$ R4 k( n9 m
答:处理ARM状态,svc模式

$ Y& R% l' a  m- J
1 g! @9 H7 s1 i  G6 ]

- d+ W* p* G7 z6 l# f0 L4 L9 Q
5 ^* O+ y1 q. c* b/ l12.哪些ARM指令可以有条件的执行  
! h* B/ c9 p$ e# I" Q! t& R

+ c' G9 m! k. u- M5 X- d9 J答:在ARMv4架构下所有的指令都是可以有条件执行,但是在ARMv5架构下有一条指令BX不能有条件执行,是非条件执行
  e. v/ K8 E1 G% h; ?; ~8 _
/ I0 @+ U% A' A0 ]8 e% ^
" ]- z- N( U  B5 a- k

3 q7 a( [/ {8 k! A" |13.Thumb代码与ARM代码比较的两在优势

- @. g! [* O+ L& [3 u
8 W4 W/ M8 f$ R" H0 Z

8 a3 H1 C+ P, S! Y答:优化代码密码、提高窄内存操作性能、是ARM指令集的一个功能子集4 Z/ v) Y& j7 e1 [* a* M
: N% y8 T- }9 B

$ Q* `/ G% O& E6 @+ h  T* x
1 Q9 h$ K* Y6 ?14.AMBA代表是什么  

4 E) s8 d8 `* C
+ [% g& q! k; F/ H3 ]1 T
0 ~  ^: l5 @0 l! ]" k+ [( x3 A
答:advanced mircontrol bus architecture 高级微控制总线体系结构- D  n  O) I5 q4 l- z

# X1 z- p0 B2 X7 S! E" X* D6 l AHB:高速总线。APB:低速总线% s  Z. ]# A* ?% v7 s9 l

  U; j: l8 g  d* Q3 C1 _- l  ]! @  l* z1 H, h7 T- |4 x  W+ U

. ~$ l1 `+ z8 Y
9 f- F3 n* R, V* z/ {* ~
- J2 X4 ^/ c. D1 Y0 a4 _
8 p: l) p& Z$ s; w5 Z9 R
4 m8 ~2 w( A+ @8 f

2 Q3 c" \$ Q  t1 H' e

8 p2 e! ~9 p) ]

该用户从未签到

2#
发表于 2019-9-26 19:01 | 只看该作者
ARM常见的一些问题记录。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-25 01:55 , Processed in 0.156250 second(s), 24 queries , Gzip On.

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

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

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