- ARM的特点:功能强、耗电省、成本低、32位与16位指令集共存
- ARM处理器工作状态:ARM状态(32位)、Thumb/Thumb-2态(16位)、调试状态。
- Thumb-2指令集既有16位又有32位指令,用于实现代码密度和处理器性能的最佳平衡,它在不牺牲性能的情况下可以节省存储成本。Thumb或Thumb-2态代码密度大于ARM态
- 经典ARM处理器:ARM-7,ARM-9,ARM-11
- Cortex-A:高端应用处理器(工作频率高,性能好,功耗合理),Cortex-M:微控制器处理器(性价比高,成本很低,功耗极小),Cortex-R:实时控制应用处理器(响应速度快,功耗低),
- 除了支持Thumb-2状态的ARM处理器外,其他所有ARM处理器都可以在ARM工作,而Cortex-M3只能工作在Thumb-2及调试状态
- 嵌套向量中断控制器NVIC,向量中断控制器VIC,唤醒中断控制器WIC
-
ARM处理器的工作模式:
用户模式User:程序正常执行的工作模式
快速中断模式FIQ:处理快速中断
外部中断模式IRQ:处理普通中断
管理模式SVC:操作系统的保护模式,处理软中断SWI
中止模式ABT:处理存储器故障,实现虚拟存储器和存储器保护
未定义指令模式UND:处理未定义的指令陷阱,支持硬件协处理器仿真
系统模式SYS:运行特权级的操作系统任务
Thumb-2指令集用于专门开、关中断的专用指令:CPSIE I、CPSID I
-
R13--SP堆栈指针,R14---LR程序链接寄存器,R15---PC程序计数器
-
ARM异常:
扫描二维码关注公众号,回复: 2941589 查看本文章复位RESET、未定义指令UND、软件中断SWI、指令预取中止PABT、数据访问中止DABT、外部中断请求IRQ、快速中断请求FIQ
复位优先级最高,系统无条件的将PC指向0X00000000
ARM的2种存储字的格式:
小端:低字节存放在低地址,高字节存放在高地址
大端:低字节存放在高地址,高字节存放在低地址
系统复位时一般默认为是小端模式
MMU:存储器管理单元。功能:虚拟地址到物理地址的映射;存储器访问权限控制
存储器访问顺序:MMU先查找TLB中的转换表,如果TLB中没有,硬件会自动查找页表,若页表中也没有,则产生中断
MPU:存储器保护单元
STR 寄存器---->存储器
LDR 存储器---->寄存器
伪指令
DCB表达式--分配一片连续的字节存储单元并对数据初始化
DCW表达式---分配一片连续的半字存储单元并对数据初始化
DCD表达式---分配一片连续的字存储单元并对数据初始化
DCQ表达式---分配一片连续的双字节存储单元并对数据初始化
CODE 属性----定义一个代码段,默认只读
CODE 16/32---指示其后指令是16位Thumb指令或者32位ARM指令
名称 EQU 表达式---等于
EXPORT 标号---全局标号声明
IMPORT 标号---引入一个标号
EXTERN 标号---外部标号引用声明
嵌入式系统开发平台作用:提高开发质量,缩短开发周期,降低开发成本
-
OSTimeDly()-------- 运行态转为等待态
OSSemPost()------等待态转为就绪态
OSSemPend()-----运行态转为等待态
OSTaskDel()------运行态转为休眠态
嵌入式系统中,核心部分是内核,对硬件设备进行控制和管理的模块称为驱动程序。引导加载程序在引导加载操作系统时,设置相关寄存器和资源,跳转到操作系统所在的空间,执行其引导,这个过程可以给内核传递参数,可以控制系统启动的模式
-
驻留监控软件是一段固化在目标机ROM中的程序,它是一种成本较低的调试方法,不需要专门的硬件调试和仿真设备。
利用ADS1.2工具套件进行基于ARM硬件平台的软件开发,在进行编译连接时,地址映射有2种连接类型,Simple和scatter,采用scatter时需要一个scatter格式的配置文件
S3C2410电源管理模块有4种模式:正常模式、慢速模式、休眠模式、掉电模式。任何情况下复位操作均进入正常工作模式。在掉电和休眠模式下,只要有任何一个外部中断或RTC时钟中断发生,也均将返回到正常模式。正常模式下电源管理模块为内核及ARM芯片内部所有硬件组件提供时钟源,即将所有设备处于开启,因此功耗较大,用户可以通过软件控制内置硬件组件的开启和关闭,暂时不用的硬件可以关闭以减少功耗。
嵌入式硬件设备主体是中央处理器+存储器,他们通过输入/输出(I/O)设备进行外部世界的连接。
空闲任务永远不会处于挂起态,当其他任务都因为等待事件的发生而被阻塞时,空闲任务得到运行。
系统调用是Linux中用户进程与操作系统支架的重要接口
断点中断指令助记符BKPT
执行关中断---OS_ENTER_CRITICAL()
ARM9中规定的IRQ异常所对应的异常向量地址为0X00000018,复位异常所对应的向量地址为0X00000000
移植VxWorks操作系统有4种操作类型:宿主机移植、体系结构移植、目标板移植、升级以前的Tornado集成开发环境版本的BSP到最新版本。
中断服务子程序----ISR
常见嵌入式Linux进程间通信机制包括信号、管道、消息队列、信号量、共享内存、套接字
ADS1.2把目标文件的信息按照3种存储区域类型进行划分,分为RO段、RW段、ZI段。RO指代码和常数的存储区域,且只读
硬件抽象层是嵌入式硬件电路板的最基本软件,包含嵌入式软件中直接访问底层硬件的例程集合,HAL的函数是移植操作系统的基础。
PDF(便携式文件格式)由Adobe Systems 在1993年开发,能跨平台、保留文件原有格式,开放标准,免版税,自由开发PDF相容的软体,是一个开放标准,2007年成为ISO 32000国际标准
移植uC/OS-II操作系统作为软件平台,重点是改写OS_CPU.H 、 OS_CPU_A.S 、 OS_CPU_C.C
嵌入式三级整理三
猜你喜欢
转载自blog.csdn.net/Ohio98/article/details/81774733
今日推荐
周排行