- 1.嵌入式系统是什么
- 2.嵌入式系统特点
- 3.嵌入式系统应用
- 4.嵌入式系统包括哪几个部分
- 5.CISC,RISC区别
- 6.经典嵌入式微处理器
- 7.嵌入式处理器结构
- 8.常见嵌入式操作系统
- 9.冯诺依曼结构
- 10.哈佛结构
- 11.软件设计过程抽象层次
12、IP核分类">
12、IP核分类- 13、arm处理器系列的应用
- 14.ARM7TDMI含义
- 15.CISC,RISC对照表
- 16.三级流水
- 17.ARM和Thumb状态转换
- 18.工作模式及其分类
- 19.寄存器
- 20.大端小端
- 21.R13,R14,R15寄存器
- 22.异常进入退出过程
- 23.标志寄存器含义
- 24.异常种类及优先级
- 25.异常返回地址
- 26.9种寻址方式
- 27.LDM与STM
- 28.指令格式
- 29.数据处理指令
- 30.杂项指令
- 31.LDR伪指令
- 32.常用伪指令
- 33.DCB,DCD
- 34.数据比较跳转
- 35.混合编程
- 36.c语言内嵌汇编
- 37.汇编访问c程序变量
- 38.汇编和C相互调用
- 39.硬件电路最小系统
- 40.硬件电路调试
1.嵌入式系统是什么
以应用为中心、以计算机技术为基础、软件硬件可裁剪、对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2.嵌入式系统特点
3.嵌入式系统应用
4.嵌入式系统包括哪几个部分
5.CISC,RISC区别
CISC用于通用计算机RISC用于嵌入式系统
RISC中要用str,ldr实现存储器和寄存器的数据传输
6.经典嵌入式微处理器
7.嵌入式处理器结构
嵌入式微处理器
嵌入式微控制器
嵌入式DSP处理器
嵌入式片上系统
8.常见嵌入式操作系统
嵌入式Linux
Windows CE
Android
iOS
Android
Symbian
VxWorks
QNX, Palm OS, LynxOS
9.冯诺依曼结构
运算器、控制器、存储器、输入设备、输出设备
特点:简化了结构,降低了复杂性,总线的吞吐量成为性能提升的瓶颈
10.哈佛结构
cpu,程序储存器,数据储存器
特点:指令和数据有各自的总线,执行效率高,设计复杂度高
11.软件设计过程抽象层次
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对照表
16.三级流水
取指:从程序存储器中读取指令
解码:对指令的解析,并为下一个周期准备数据路径需要的控制信号。由指令与译码逻辑完成,不占用数据通路
执行:指令要求的操作,并根据需要将结果写回目的寄存器
17.ARM和Thumb状态转换
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.标志寄存器含义
24.异常种类及优先级
25.异常返回地址
无论发生什么异常(除复位),内核总是会首先将 PC-4 放到LR寄存器中
26.9种寻址方式
(1) 寄存器寻址
(2) 立即寻址
(3) 寄存器移位寻址
(4) 寄存器间接寻址
(5) 基址寻址
(6) 多寄存器寻址
(7) 堆栈寻址
(8) 块拷贝寻址
(9) 相对寻址