编辑: 摇摆白勺白芍 2019-07-15

14 1.2.1. pWTCON INTMOD INTMSK INTSUBMSK CLKDIVN

14 1.2.2. ldr pWTCON

15 1.2.3. mov

17 1.2.4. str

17 1.3. 关闭中断

19 1.3.1. set INTMSK

19 1.3.2. set INTSUBMSK

20 1.3.3. set CLKDIVN

21 1.3.4. bl

22 1.4. 设置堆栈sp指针

23 1.4.1. stack_setup

23 1.4.2. calc stack

25 1.4.3. bl clock_init

26 1.4.4. adr

27 1.4.5. clear_bss

29 1.4.6. cal armboot size from _armboot_start

29 1.4.7. cal armboot size from CopyCode2Ram

31 1.5. 清除bss段33 1.5.1. clear_bss

33 1.5.2. clear css loop

33 1.5.3. ldr pc

33 1.5.4. cpu_init_crit

34 1.5.5. disable MMU

39 1.5.6. clear bits

40 1.5.7. bl lowlevel_init

43 1.6. 异常中断处理

43 1.6.1. macros stmia

43 1.6.2. cal reg value and store

47 1.6.3. irq_save_user_regs irq_restore_user_regs

48 1.6.4. exception handlers

50 1.6.5. Launch

52 1.6.6. int_return

53 2. start.S的总结

55 Uboot中start.S源码 的指令级的详尽解析 v 2.1. start.S各个部分的总结

55 2.2. Uboot中的内存的Layout

56 3. 相关知识点详解

58 3.1. 如何查看C或汇编的源代码所对应的真正的汇编代码

58 3.2. uboot初始化中,为何要设置CPU为SVC模式而不是设置为其他模式

59 3.3. 什么是watchdog + 为何在要系统初始化的时候关闭watchdog

61 3.3.1. 什么是watchdog

61 3.3.2. 为何在要系统初始化的时候关闭watchdog

61 3.4. 为何ARM7中PC=PC+8

62 3.4.1. 为何ARM9和ARM7一样,也是PC=PC+8

63 3.5. AMR寄存器的别名 + APCS

69 3.5.1. ARM中的寄存器的别名

69 3.5.2. 什么是APCS

71 3.6. 为何C语言(的函数调用)需要堆栈,而汇编语言却不需要堆栈

71 3.6.1. 保存现场/上下文

71 3.6.1.1. 什么叫做上下文context

71 3.6.2. 传递参数

72 3.6.3. 举例分析C语言函数调用是如何使用堆栈的

72 3.7. 关于为何不直接用mov指令,而非要用adr伪指令

73 3.8. mov指令的操作数的取值范围到底是多少

74 3.9. 汇编学习总结记录

77 3.9.1. 汇编中的标号=C中的标号

77 3.9.2. 汇编中的跳转指令=C中的goto

77 3.9.3. 汇编中的.globl=C语言中的extern

78 3.9.4. 汇编中用bl指令和mov pc,lr来实现子函数调用和返回

78 3.9.5. 汇编中的对应位置有存储值的标号 = C语言中的指针变量

79 3.9.6. 汇编中的ldr+标号,来实现C中的函数调用

81 3.9.7. 汇编中设置某个寄存器的值或给某个地址赋值

82 参考书目

85 vi 插图清单 1.1. LDR指令的语法

4 1.2. CPSR/SPSR的位域结构

11 1.3. pWTCON

14 1.4. INTMOD

14 1.5. INTMSK

15 1.6. INTSUBMSK

15 1.7. CLKDIVN

15 1.8. WTCON寄存器的位域

18 1.9. INTMSK寄存器的位域

20 1.10. INTSUBMSK寄存器的位域

21 1.11. INTSUBMSK寄存器的位域

22 1.12. macro的语法

45 1.13. LDM/STM的语法

45 1.14. 条件码的含义

46 2.1. Uboot中的内存的Layout

57 3.1. AMR7三级流水线

62 3.2. ARM7三级流水线状态

62 3.3. ARM7三级流水线示例

63 3.4. ARM7三级流水线 vs ARM9五级流水线

64 3.5. ARM7三级流水线到ARM9五级流水线的映射

64 3.6. ARM9的五级流水线示例

65 3.7. ARM9的五级流水线中为何PC=PC+8

67 3.8. ARM Application Procedure Call Standard (AAPCS)69 3.9. 数据处理指令的指令格式

75 vii 表格清单 1.1. global的语法

2 1.2. .word的语法

5 1.3. balignl的语法

6 1.4. CPSR Bitfield

11 1.5. CPSR=0xD3的位域及含义

13 1.6. 控制寄存器1的位域含义

40 1.7. 时钟模式

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题