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

ARMv8 架构与指令集.学习笔记(1)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-6-27 11:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x

% B, Z& r& ^6 Z+ K/ u  T3 I

5 \' n# g8 ?; c. G目 录
) W9 q' z* B0 [  l" J* r2 P第1章 ARMv8简介. 3
9 F+ E( `* a- ?0 A7 ~" H8 s1.1基础认识. 3
2 ?$ j9 w9 O1 h: ~1.2 相关专业名词解释. 3
, C/ s. D8 S. j1 t$ X第2章 Execution State 4
: l2 |' ^7 j" K* l1 }2.1 提供两种Execution State 4
" \, p) t+ y1 V+ j0 _) F) k# v) s2.2 决定Execution State的条件. 48 Q% l6 h+ t, b# Q$ J# d
第3章 Exception Level 5$ y. ?) y# Q- r6 `/ e! [
3.1 Exception Level 与Security 5
- N( p. l7 y/ j6 _8 U3.1.1 EL3使用AArch64、AArch32的对比. 5
5 S3 g4 o) v3 V& ]5 w0 @* {3.2 ELx 和 Execution State 组合. 6: H$ L0 o& t$ ?$ ~5 a
3.3路由控制. 7
: D# A  N: z% {4 T3.3.1 路由规则. 7
/ W: @4 ~4 O- }8 f- Q8 \3.3.2 IRQ/FIQ/SError路由流程图. 8& ~2 S! m3 ?- g: \0 G* ~
第4章 ARMv8寄存器. 9! S$ [; e4 y6 D, _- X
4.1 AArch32重要寄存器. 9) `  v, P1 e% C3 M2 [
4.1.1 A32状态下寄存器组织. 10
: K9 @2 u3 H' \* O, B% S2 b- z/ ?4.1.1 T32状态下寄存器组织. 10! h9 t0 D: Q( F( S/ s: U
4.2 AArch64重要寄存器. 11
7 X, \3 c2 W9 U7 n7 E4.3 64、32位寄存器的映射关系. 116 [( C$ ?; H0 |" M' K3 [
第5章 异常模型. 127 h- R/ G% l# |' p
5.1 异常类型描述. 12
/ C0 c: H- i* c, N: W. f5.1.1 AArch32异常类型. 12
" x9 I% i& B. _2 b$ J5.1.2 AArch64异常类型. 123 j% w( |) n5 S" [8 a: D
5.2异常处理逻辑. 13, O+ }- o% d1 H
5.2.1 寄存器操作. 13" Q9 ?6 c% i9 U( ^3 l
5.2.2 路由控制. 14
% y* w9 ?! h- r: T5.3流程图对比. 14
+ O  B  Z7 X, O( X* ~; A5.3.1 IRQ 流程图. 15
- w; e0 A! g+ e; n6 P+ W5.3.2 Data Abort 流程图. 18" R  T# f2 k* y, w& w! `2 v0 d, B
5.4  源代码异常入口. 20
; d6 H8 I# v4 o/ [9 B5.4.1 C函数入口. 20
4 C8 _$ V+ }1 }) i) `5.4.2 上报流程图. 209 Z* W  m/ J; ~2 I( Y
5.4.3 异常进入压栈准备. 21
* N0 b9 h7 h" X8 G7 S5.4.4 栈布局. 21
7 j! O4 I2 G7 o$ [0 c+ f/ k+ x第6章 ARMv8指令集. 22  {+ G* G' }' O9 m$ b
6.1 概况. 22# E" b. G8 I' c1 T& h9 r* Y) C7 u( k
6.1.1 指令基本格式. 22
0 m2 H* S# q4 N6.1.2 指令分类. 22# k0 l: z$ X3 O6 m$ b$ ^" m; k
6.2 A64指令集. 222 s# f+ O3 b5 Z) _# R: @8 [' o- G* y
6.2.1 指令助记符. 23) m) o6 l2 X( @% s6 Y
6.2.2 指令条件码. 23
7 d3 e, u2 c9 A( B# h6.2.3 跳转指令. 24
5 }4 K0 o. M" j1 B4 g4 v6.2.4 异常产生和返回指令. 24
. b1 B) v4 E9 b6.2.5 系统寄存器指令. 24
8 r+ ?7 r0 n2 [6.2.6 数据处理指令. 25
+ t$ a8 _! a. x6.2.7 Load/Store指令. 27, j' b# y/ B0 s. L! e" P0 w$ c
6.2.8 屏障指令. 31  p( a& _. x2 `. s- G
6.3 A32 & T32指令集. 31
4 f% {. l+ f, v, v' W5 m6.3.1 跳转指令. 31  i" z& C& w1 ?) J
6.3.2 异常产生、返回指令. 32
5 X% A0 E8 C0 ~" f9 j% |6.3.3 系统寄存器指令. 32
7 l" L- I5 y; g% w9 @6.3.4 系统寄存器指令. 32$ z9 F8 e* Q3 V- ~  M7 ^, z
6.3.5 数据处理指令. 32, K, E+ C1 h( H, a% p
6.3.6 Load/Store指令. 32. f- T* k  `$ m
6.3.7 IT(if then)指令. 342 \8 }3 t! b: A* F$ r7 ]
6.3.8 协处理器指令. 34* g* O: b# `9 e6 z( O
6.4 指令编码. 34! {$ B: N' `" m# ^0 ^. K
6.4.1 A32编码. 34
# S* E5 R. [) F) b6.4.2 T32-16bit编码. 35
6 Y4 d4 o* j" |/ ~# o6.4.3 T32-32bit编码. 35
" p" k7 Z6 N  F6.4.4 A64编码. 350 j; M8 Z3 d1 A5 A
6.4 汇编代码分析. 35
; V0 i. V' |) a; r( ~第7章 流水线. 365 Q& l$ L% @8 y* l" Q8 K6 |
7.1 简介. 36
, S) e( p. H* L$ l) c' T7.1.1 简单三级流水线. 364 g  P$ J, _. c  `# v+ p) n
7.1.2 经典五级流水线. 36
4 t1 F( q  ^1 u- ^: H) g; S% D  l7.2 流水线冲突. 37$ h" _7 |2 F( P! @
7.3 指令并行. 37
# _9 A, d5 Z: W( t2 J- e* n2 o- W* R' y) }2 }. ~$ f* ]

/ H6 x: n: F/ s: W+ K! l
/ m: M1 H1 H7 ]4 O& ?+ n

* E! t6 _) g6 Q8 H% M
; V8 e9 b$ ?. c; g
+ _- A7 A% W9 _2 X* ]
第1章 ARMv8简介
( R' X( S/ n* }9 x3 h
6 R2 c8 E! s' |5 q% V4 b. G1.1基础认识
; M  _) k* v' f* i( u; H6 J: ?' A' e4 d# O; u
5 t7 ~3 F# V, U5 T1 t# {
ARMv8的架构继承以往ARMv7与之前处理器技术的基础,除了现有的16/32bit的Thumb2指令支持外,也向前兼容现有的A32(ARM 32bit)指令集,基于64bit的AArch64架构,除了新增A64(ARM 64bit)指令集外,也扩充了现有的A32(ARM 32bit)和T32(Thumb2 32bit)指令集,另外还新增加了CRYPTO(加密)模块支持。
8 }; Q9 l, @1 V
  a+ O  |1 l4 e! |3 [* u

0 O' |7 O; T9 W* b1.2 相关专业名词解释
$ u* D* j! u7 m
% ]2 H) y. ~# a2 i' M

7 w5 ?3 I+ h3 S) v, mAArch32                    描述32bit Execution State/ C' H: \# N1 S8 {* i
AArch64                    描述64bit Execution State: v9 N0 |% O0 a/ L$ c
A32、T32                  AArch32 ISA (Instruction Architecture)
8 A* T- ?# u" }A64                          AArch64 ISA (Instruction Architecture)
( s$ Q/ P; n3 g+ `1 OInterprocessing          描述AArch32和AArch64两种执行状态之间的切换2 R- V8 E6 j) p! h! h& G# W
SIMD                       Single-Instruction, Multiple-Data (单指令多数据)
6 z9 s' p, c" T9 l' \" }
7 {6 ?+ b+ v5 h+ u! }7 b$ P2 o' o
% ~+ h/ D, q4 X/ o# J- E# g4 q
(参考文档:ARMv8-A Architecture reference manual-DDI0487A_g_armv8_arm.pdf). @7 \7 ]. t7 q% f* |# h

2 z+ |0 G& P  t/ Z* u$ E

- k( ^/ N4 k, u0 f: a0 L# N) Q  X第2章 Execution State
# D: c; m( w7 L- Q2 x1 t. P6 c
1 v; C; q0 ~! H* L# w0 f, i: R
游客,如果您要查看本帖隐藏内容请回复
7 N; L" |5 i5 h1 x
  d4 Y7 w7 W# u4 x4 Y# J
7 R% j; u/ q3 o9 o* s8 g8 X: f
- m. h0 ]" K( @( B+ Q( S

# Z% ^# a) x, p, B# D1 p
6 k- U$ w/ E7 |, I3 e6 F8 m9 u# I+ q( s. b

5 r! j& n* r' d# A

# k( ^+ R4 X8 T" a$ }
1 c0 H( T6 j" i! e/ l

6 S& S; [0 f4 I8 V! S7 A" ?
0 S  R* E6 [( c+ k8 g3 d+ V9 x8 _3 z# d; [

该用户从未签到

2#
发表于 2019-6-27 17:52 | 只看该作者
目录好长啊

该用户从未签到

3#
发表于 2020-2-3 16:20 | 只看该作者
xxxxxxxxxxxxxxxxxxx
1 k: H: V% \) |' y, z5 Y" |+ K
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 16:43 , Processed in 0.171875 second(s), 26 queries , Gzip On.

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

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

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