1.嵌入式系统是什么

以应用为中心、以计算机技术为基础、软件硬件可裁剪、对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2.嵌入式系统特点

专用而确定
实时性要求高
高可靠性
有功耗约束
可用资源少

3.嵌入式系统应用

消费电子,机器人,交通相关,军事国防

4.嵌入式系统包括哪几个部分

嵌入式处理器
外围硬件
嵌入式操作系统
用户应用软件

5.CISC,RISC区别

CISC用于通用计算机RISC用于嵌入式系统
RISC中要用str,ldr实现存储器和寄存器的数据传输

6.经典嵌入式微处理器

ARM
MIPS
PowerPC

7.嵌入式处理器结构

嵌入式微处理器
嵌入式微控制器
嵌入式DSP处理器
嵌入式片上系统

8.常见嵌入式操作系统

嵌入式Linux
Windows CE
Android
iOS
Android
Symbian
VxWorks
QNX, Palm OS, LynxOS

9.冯诺依曼结构

运算器控制器存储器输入设备输出设备
特点:简化了结构,降低了复杂性,总线的吞吐量成为性能提升的瓶颈

10.哈佛结构

cpu,程序储存器,数据储存器
特点:指令和数据有各自的总线,执行效率高,设计复杂度高

11.软件设计过程抽象层次

image.png
12、IP核分类

硬核,软核,固核

13、arm处理器系列的应用

v1:
基本的数据处理指令(无乘法)字节、半字和字的LOAD/STORE指令转移指令,包括子程序调用及链接指令软件中断指令寻址空间:64M字节(26)
v2:
乘法和乘加指令支持协处理器操作指令快速中断模式SWP/SWPB指令,实现存储器与寄存器数据交换寻址空间:64M字节(26)
v3:
从V3开始,ARM体系结构被大规模应用寻址空间增至32位(4G字节)增加了当前程序状态寄存器CPSR和备份程序状态寄存器SPSR以便于异常的处理。增加了中止abort和未定义二种异常模式。ARM6就采用该版架构指令集变化如下:增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器改进了从异常处理返回的指令功能
v4:
有符号、无符号的半字和有符号字节的Load/Store指令。引入了16位Thumb指令集完善了软件中断SWI指令的功能增加了处理器的系统模式。
v5:
提高ARM和Thumb指令集混合使用的效率增加了前导零计数CLZ指令引入了软件断点指令BKPT,进行中断调试增加了信号处理指令为协处理器增加更多可选择的指令CLZ:Count Leading Zeros,计算最高符号位与第一个1之间的0的个数;
v6:
2001年发布首先在ARM11处理器中使用具备高性能DSP功能引入全新的Jazelle技术,降低Java应用程序对内存的空间占用增加了 SIMD(单指令流多数据流 )功能扩展,提高了嵌入式应用系统的语音,图像处理能力。适合使用电池供电的便携式设备
v7:
目前为止32位ARM处理器体系结构的最高版本Cortex系列基于V7架构Cortex-A—面向性能密集型系统的应用处理器内核Cortex-R—面向实时应用的高性能内核Cortex-M—面向各类嵌入式应用的微控制器内核

14.ARM7TDMI含义

T:支持Thumb指令集
D:片上调试
M:快速乘法器
I:Embedded ICE,嵌入式跟踪宏单元

15.CISC,RISC对照表

image.png

16.三级流水

取指:从程序存储器中读取指令
解码:对指令的解析,并为下一个周期准备数据路径需要的控制信号。由指令与译码逻辑完成,不占用数据通路
执行:指令要求的操作,并根据需要将结果写回目的寄存器

17.ARM和Thumb状态转换

BX命令

18.工作模式及其分类

工作模式:用户,系统,中断,快中断,管理,中止,未定义
除用户模式以外都是特权模式,除用户与系统外称异常模式

19.寄存器

一共37个
31个通用寄存器
6个状态寄存器(用户和系统模式公用一个cpsr,每个异常状态对应一个spsr)

20.大端小端

如 11 22 33 44
大端:11 22 33 44
小端:44 33 22 11

21.R13,R14,R15寄存器

R13寄存器为sp,堆栈指针。在ARM指令集当中,没有以特殊方式使用R13的指令或其它功能,只是习惯上都这样使用。但是在Thumb指令集中存在使用R13的指令。
R14寄存器为LR,链接寄存器。在每种模式下,模式自身的R14版本用于保存子程序返回地址;当发生异常时,该模式下的R14被设置成该异常模式将要返回的地址
R15寄存器为PC,程序计数器,它指向正在取指的地址

22.异常进入退出过程

进入异常:
在适当的LR中保存下一条指令的地址(ARM7TDMI将当前指令地址加4或加8复制(取决于异常的类型)到LR中)
将CPSR复制到适当的SPSR
将CPSR模式位强制设置为与异常类型相对应的值
强制PC从相关的异常向量处取指
退出异常:(除了复位异常外,其余的异常都需要返回)
将LR中的值减去偏移量后存入PC
将SPSR的值复制回CPSR
若在进入异常处理时设置了中断禁止标志(I/F位)则清零该标志

23.标志寄存器含义

image.png

24.异常种类及优先级

image.png

25.异常返回地址

无论发生什么异常(除复位),内核总是会首先将 PC-4 放到LR寄存器中

26.9种寻址方式

(1) 寄存器寻址image.png
(2) 立即寻址image.png
(3) 寄存器移位寻址 image.png
(4) 寄存器间接寻址image.png
(5) 基址寻址 image.png
(6) 多寄存器寻址image.png
(7) 堆栈寻址 image.png
(8) 块拷贝寻址image.png
(9) 相对寻址image.png

27.LDM与STM

image.png
image.png
image.png
image.png

28.指令格式

image.png
image.png

29.数据处理指令

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

30.杂项指令

image.png

31.LDR伪指令

image.png
image.png

32.常用伪指令

image.png
image.png
image.png
image.png

33.DCB,DCD

image.png
image.png
image.png
image.png

34.数据比较跳转

image.png
image.png

35.混合编程

image.png
image.png
image.png
image.png
image.png

36.c语言内嵌汇编

image.png
image.png

37.汇编访问c程序变量

image.png

38.汇编和C相互调用

image.png

39.硬件电路最小系统

image.png

40.硬件电路调试

image.png
image.png
image.png