计算机三级之嵌入式系统学习笔记1
嵌入式系统的体系结构按指令集可以分为两大类:复杂指令集结构(CISC)和精简指令集结构(RISC)
嵌入式体系结构按存储机制分为冯诺依曼结构和哈佛结构
冯诺依曼结构中程序和指令并存,共用一条总线;而哈佛结构中数据和指令使用两条独立的总线,不允许数据和指令共存
ARM全部采用RISC结构,且多为哈佛结构
ARM共有三种工作状态:ARM状态、Thumb状态及Thumb-2状态、调试状态
- ARM状态的指令全都是32位的
- Thumb状态就是运行Thumb-2指令的状态,它是执行16指令的状态,但是他同时也兼容32位指令,因为在有些情况下如异常处理时必须由Thumb状态切换到ARM状态,然后处理完毕后重新返回到Thumb状态
- 处理器停机调试时进入调试状态
- 所有ARM复位之后均处于ARM状态
- 通过BX指令,将操作数寄存器的最低位设置为1即可将ARM状态切换到Thumb状态;将操作数寄存器的最低位设置为0即可将Thumb状态切换到ARM状态;当处理器进行异常处理时,则从异常向量地址开始执行,将自动进入ARM状态ARM体系结构(除Cortex外)支持7中工作模式,取决于当前程序状态寄存器低5位的值
- 用户模式(User):程序正常执行工作模式
- 快速中断模式(FIQ):处理高速中断,用于高速数据传输或通道处理
- 外部中断模式(IRQ):用于普通中断管理
- 管理模式(SVC):操作系统的保护模式,处理软件中断SWI
- 中止模式(ABT):处理存储器故障,实现虚拟存储器和存储器保护
- 未定义指令模式(UND):处理未定义的指令陷阱,用于支持硬件协处理器仿真
- 系统模式(SYS):运行特权级的操作系统任务
ARM状态下的寄存器组织
- R7~R0为通用的寄存器
- CPSR为当前程序状态寄存器(包括运算标志位、条件码标志等)
- SPSR为备份的程序状态寄存器
- R0~R15均为32位的寄存器
- R13为堆栈指针寄存器,R14为程序链接寄存器,R15均为PC(程序计数器)
Thumb状态下的寄存器组织
- 高位寄存器R8R12在Thumb状态下不可见,即不能直接作为通用寄存器使用,而在Thumb-2下可以使用,即R8R12只有在32位指令下才可当做通用寄存器使用
ARM体系结构有两种方法存储数据字:大端模式和小端模式
- 大端模式:32位数据字的高字节存储在低地址中,低字节存储在高地址中
- 小端模式:32位数据字的高字节存储在高地址中,低字节存储在低地址中
- 系统复位时一般自动默认为小端模式
外部中断请求(IRQ)
快速中断请求(FIQ)
MMU:存储器管理单元
MPU:存储器保护单元
计算机三级之嵌入式系统学习笔记1相关推荐
- 计算机三级之嵌入式系统学习笔记8
嵌入式系统是嵌入式计算机系统的简称,它是一种嵌入在设备(或系统)内部,为特定应用而设计开发的专用计算机系统 嵌入式系统与通用计算机一样,也由硬件和软件组成 能够按照指令的规定高速度完成二进制数据算数和 ...
- 计算机三级之嵌入式系统学习笔记7
嵌入式系统的开发过程 需求分析与规格说明 系统设计 构件设计 系统集成与测试 嵌入式系统的开发特点 使用宿主机-目标机的开发架构 用于编程.调试的计算机称为宿主机 用于程序最终运行的称为目标机 与底层 ...
- 计算机三级之嵌入式系统学习笔记6
嵌入式系统的软件结构 简单的轮询结构 应用程序重复循环检查每个外部输入条件,一旦有需要处理的任务,则进行相应的处理 带中断的轮询结构(中断驱动结构或前后台结构) 当有外部事件(例如温度传感器报警)发生 ...
- 计算机三级之嵌入式系统学习笔记3
嵌入式最小硬件系统组成: 电源电路 电源模块由以下几部分组成: 交流变直流(AC-DC) 直流到直流(DC-DC) 低压差稳压器(LDO) 时钟电路 复位电路 调试测试接口(JTAG测试接口) 如果处 ...
- 计算机三级之嵌入式系统学习笔记9
数字(电子)文本 文字信息在计算机中称为文本(Text).文本是基于 特定字符集的一个字符流,每个字符均使用二进制编码表示 西文字符的编码 ASCII字符集和ASCII码 ASCII字符集共有128个 ...
- 计算机三级之嵌入式系统学习笔记5
基于UART的RS-232/RS-485接口 RS-232 采用标准的RS-232电平转换电路,使UART的电平转换为RS-232电平 无法消除共模干扰,传输距离可达15米 负逻辑传输:逻辑0:+3V ...
- 计算机三级之嵌入式系统学习笔记4
所有嵌入式处理器内部均集成了通用输入输出(GPIO)口,GPIO接口提供的输入具备缓冲功能,而输出均具有锁存功能 GPIO一般具有三态:0态.1态和高阻状态 集成电路互联总线接口(IIC) 串行半双工 ...
- 计算机三级之嵌入式系统学习笔记2
ARM对存储器只有加载和存储两种操作,因此凡是与存储器操作有关的指令仅限于两类指令,即LDR和STR,其他指令无效 "#":立即数符号 例:#12(十进制),#0x12(十六进制) ...
- 嵌入式系统学习笔记之ftp
虽然在嵌入式系统中,我们可以通过串口的Xmodem模式传送小的文件,但是毕竟不符合我们的使用习惯,并且串口传输速率太低,不能满足我们大部分的需求,要传输文件的时候,我们还是使用网络较为熟悉,今天我将我 ...
最新文章
- 3.request response
- legnano里的看板成员及权限规则?项目成员及规则?
- 极光推送指定用户推送_干货|SpringBoot集成极光推送完整实现代码(建议收藏)...
- 判断客户端是否安装FlashPlayer及版本
- PHP如何实现解析抖音短视频链接中的无水印视频
- VirtualBox中不能正常使用OpneGL的问题
- python科研向数据处理篇——python-pptx批量向PPT中插入图片
- chatgpt为什么在中国不能被使用
- mac外接显示器 竖屏 黑苹果_调教Mac外接显示器(开启HiDPI)
- 【Pytorch】张量复制方法repeat、repeat_interleave和tile
- Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront
- 马云私有化回购价争议 或将套现2亿港币
- c++ map unordered_map使用大全
- Pinpoint作为链路追踪和报警(监控spring boot服务)
- 融合黄金正弦和曲线自适应的多策略麻雀搜索算法
- 英飞凌--GTM架构-Generic Timer Module
- 基于51单片机智能农业大棚恒温恒湿Proteus仿真
- IOS 自动化探索——使用蓝牙实现 XCUITest 的 Tap 操作
- 八大防火墙评测 谁才是真“金钟罩”
- eap方法 华为手机怎么连wifi_安卓手机如何接入公司网络的wifi设置步骤
热门文章
- LoadRunner常见错误代码解决方案
- HTTP Error 502.5 - Process Failure 解决方案
- 搜索推荐项目EFLS开源 | 阿里妈妈联邦学习解决方案详解
- 【报告分享】直播电商生态进化论-2020直播电商行业研究报告.pdf(附下载链接)...
- 【报告分享】新基建专题报告:5g和数据中心的投资机会分析.pdf(附下载链接)...
- 【报告分享】2020年中国智慧城市发展研究报告.pdf(附下载链接)
- 区块链2.0——以太坊
- leetcode力扣75. 颜色分类
- 百度知识图谱技术及应用
- c语言2的1000次方,在网上看到一个求2的10000次方的方法,有个地方看不懂,求大佬...