ARM(哈弗、冯氏结构、总线和IO访问、处理器状态和处理机模式)
2024-10-19 12:44:06
1、哈弗结构与冯氏结构
(1)区别:
是否有独立的存储架构和信号通道。
(2)举例:
8086:冯氏结构(相同的存储相同的通道)
STM32F103:哈弗结构(不同的存储、通道)
8051:改进的哈弗结构(不同的存储,相同的通道)
ARM9:改进的冯氏结构(相同的存储不同的通道)
高性能:单片机(冯氏结构)因为数据和程序都存储在cache中
单片机:哈弗结构,性能较低
2、总线和IO访问
总线:计算机各部件之间传递信息的公共干线,根据传递的信息的种类可以分为数据总线、控制总线、地址总线。
统一编址:从存储器地址空间中划出地址给IO端口
独立编址:IO端口地址空间和存储器的地址空间独立
3、处理机的状态
(1)ARM状态:
执行效率高。
(2)THUMB状态:
代码密度好(同一段代码,对于不同的单片机,编译之后占用的空间是不同)
4、处理机模式
(1)模式类型:
User(usr):一般的执行状态,不能切换到其他模式(只能通过中断和异常)
FIQ(fiq):快速中断,优先级较高
IRQ(irq):中断
Supervisor(svc):保护模式
Abort mode(abt):发生异常时进入
System(sys):用户安全模式
Undefined(und):未定义的指令
(2)目的:
提高响应速度
(3)ARM流水线
指令执行过程:
每条指令包括五个步骤:取指、译码、执行、访存、回写
单流水:
ARM9(五级流水):
最新文章
- Grunt学习使用
- ActiveMQ入门
- ios app的版本号
- 补PSP进度(10.28-11.3)
- 使用扩展方法简化RadAjaxManager设置
- ecshop 影响全局的标量lib_main.php
- [IR] Tolerant Retrieval &; Spelling Correction &; Language Model
- 在JSP页面下使用AJAX实现用户名存在的检测
- 13、主线程任务太多导致异常退出(The application may be doing too much work on its main thread)
- mac下装Ruby
- Java获取的一天、本星期、这个月、本季度、一年等 开始和结束时间
- 苹果4S
- 超出区域文字显示为省略号或者剪切效果——CSS的生僻操作
- android开发中关于继承activity类中方法的调用
- NYOJ 23.取石子(一)
- windows使用.NET CORE下创建MVC,发布到linux运行
- 我眼中的SCRUM
- (队列的应用5.3.2)POJ 2259 Team Queue(队列数组的使用)
- 解决spark程序报错:Caused by: java.util.concurrent.TimeoutException: Futures timed out after [300 seconds]
- 【HDU 6191】Query on A Tree 【可持久化字典树】