用户名
Email
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
帖子
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com技术社区
»
论坛
›
数据库
›
Oracle
›
ARM原理
ARM原理
商道如狼道
论坛元老
|
2024-12-19 14:35:47
|
显示全部楼层
|
阅读模式
楼主
主题
1818
|
帖子
1818
|
积分
5454
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
一、指令集
1、
指令集 就是cpu用来盘算和控制盘算机系统的一套指令的聚集。
2、
每一种新型cpu在计划的时间就规定好了一套和硬件电路适配的指令系统。指令集先进与否与CPU性能发挥占据很大的因素,也因此,指令集尝尝作为一个判定CPU性能强弱的重要指标。
3、
从现阶段主流的指令集来进行分类,重要分为复杂指令集(CISC)和精简指令集(RISC)。
二、CISC和RISC的区别
1、RISC精简指令集(ARM)
1. 概念
复杂指令集中提取了一些简朴和常用的指令集构成
2. 特点
指令周期:
实行一条指令的所需的时间
指令宽度:
一条汇编指令编译生成呆板码所占用的空间
3. 结论:
精简指令集:
指令周期以及指令宽度都是固定的
thumb指令集:
一条指令占用两个字节的空间
arm指令集:
一条指令占用四个字节的空间
注意:
thumb指令集在利用的时间必要搭配arm指令集利用
2、复杂指令集
1. 概念
更加注意指令的功能和性能
2. 结论
复杂指令集指令宽度和周期都是不固定的 重点在实现功能
三、ARM数据类型的约定
重点区分字和字节的区别
1、arm-v7
2、armv-8
四、数据的存储(重点)
数据的存储方式分为大小端存储
对于
大端
存储方式:
低位地址存高字节数据
对于
小端
存储方式:
低位地址存低字节数据
五、ARM处理器的工作模式
1、ARM处理器工作模式概念
ARM处理器工作模式一共有七种
1. User(用户程序运行模式)
非特权模式,大部门使命在这里实行
2. FIQ(快速停止模式)
当一个高优先级(fast)停止产生时进入FQ模式。
3. IRQ(平凡/一般停止模式)
当一个低优先级停止产生式进入IRQ模式
4. Supervisor(管理模式)
当复位或者软停止指令实行时会进入管理模式 重启上电时也是管理模式
提供操纵系统利用的一种掩护模式,swi下令状态
5. Abort(中止)
当存取异常时会进入Abort模式 对捏造内存管和内存数据的掩护
6. Undef(未界说指令中止)
当实行未界说指令时进入,支持通过软件仿真硬件的协处理
7. system(系统)
利用和User模式相同的寄存器集的特权模式 和user雷同只是权限更高(基本遇不到)
2、总结
在特定的模式下,一般会实行特定的代码,完成某个特定功能。
除了用户模式,别的所有模式均为特权模式。
这几种工作模式可以进行切换,可以通过外部硬件进行切换也可以通过软件编程来进行切换。
进入特权模式的异常模式 是为了处理相应的停止
user和system共用一套寄存器
六、ARM寄存器组织
1、
CPU从逻辑上划分可以分为三个模块:分别是控制单元、存储单元、运算单元,这三部门是CPU内部总线连接起来的。
2、
冯诺依曼提出盘算机架构,其工作过程可以分五个阶段:取指令、指令译码、实行指令、访存取数、结果协回。
3、
运算器、控制器、存储器、寄存器,由ARM公司集成到CPU内部的。
1、寄存器的位置
1.
寄存器处于SOC内部的cortex-A7核内部
2. 优缺点
运算速率快 但因为适合CPU结合在一起 数量相对较少
2、寄存器先容
1. 概念
寄存器属于处理器内部寄存器,没有地址,只有编号,利用者只能通过编号对寄存器进行操纵。
2. 作用
一般存放暂时必要运算的数据
每一个方块都代表一个寄存器 一个寄存机可以存放32bit(4byte)
每种工作模式都有自己的私有寄存器
寄存器为白色的代表为公有寄存器 带标识的为私有寄存器
假如某个工作模式下有私有寄存器 则不可以访问公有的
寄存器个数有限,一般cortex处理器一共43个寄存器,arm处理器一般有37个寄存器
七、特殊功能寄存器
1、SP------->栈指针寄存器
R13--------->SP
作用:
指向栈顶空间的地址
2、LR------->链接寄存器
R14--------->LR
作用:
用于存放函数的返回地址
3、PC---->程序计数器
R13----->
C
作用:
PC中存放的是当前取指指令的地址
4、CPSR状态寄存器
CPSR--->当前状态寄存器
作用:
保存当前的程序状态,分析CPSR寄存器中的值可以判定当前程序的运行状态
5、SPSR寄存器
SPSR----->保存状态寄存器
作用:
备份CPSR寄存器的值
八、指令流水线(取指 译码 实行)
1、概念
1. 指令流水线的作用
提高代码的实行效率
2. 取指器
根据PC寄存器中的值进行取指操纵
3. 译码器
翻译指令 实行功能 并且给到对应的实行器
4. 实行器
实行下令 完成特定的功能 并且将相应的结果给到对应寄存器
2、ARM指令流水线
V7采取三级 V9采取5级 A9采取8级
注:
固然流水线的品级越来越多,但是其本质还是在三级的底子上进行细分
PC不管是几级流水线,PC指向的永世是当前正在取指的指令,而当前正在实行的指令的地址就是PC。
3、多核处理器
1. 概念
即一个SOC集成多个CPU内核
2. 作用
差别的线程可以在差别的核中进行 实现真正的并发
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
商道如狼道
论坛元老
这个人很懒什么都没写!
楼主热帖
【python】实现文章同步csdn社区自动化 ...
SQLI-LABS(Less-5)
Scrum 框架的四个会议还适用于哪些敏捷 ...
Django生产环境静态资源404问题 ...
容器化 | 在 Rancher 中部署 MySQL 集 ...
如何利用ipad随时随地开发代码 ...
django 报错 'set' object is ...
SAP集成技术(十)混合集成平台 ...
MySQL数据库安装
2022 Delphi 11开发苹果IOS证书等详细 ...
标签云
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
移动端开发
Java
登录参与点评抽奖加入IT实名职场社区
下次自动登录
忘记密码?点此找回!
登陆
新用户注册
用其它账号登录:
关闭
快速回复
返回顶部
返回列表