什么是ARM流⽔线技术?

浏览量:246
时间: 2023-10-27 10:25:10

流⽔线技术通 多个功能部件并⾏⼯作来缩短程序执⾏时间,提⾼处理器核的效率和吞吐率,从⽽成为微处理 器设计中最为重要的技术之⼀。ARM7处理器核使⽤了典型三级流⽔线的冯·诺伊曼结构ARM9系列则采⽤了 基于五级流⽔线的哈佛结构。通过增加流⽔线级数简化了流⽔线各级的逻辑,进⼀步提⾼了处理器的性能。


PC代表程序计数器,流⽔线使⽤三个阶段,因此指令分为三个阶段执⾏:1.取指(从存储器装载⼀条指令);

2.译码(识别将要被执⾏的指令);3.执⾏(处理指令并将结果写回寄存器)。⽽R15(PC)总是指向“正在取 指”的指令,⽽不是指向“正在执⾏”的指令或正在“译码”的指令。⼀般来说,⼈们习惯性约定将“正在执⾏的指令 作为参考点”,称之为当前第⼀条指令,因此PC总是指向第三条指令。当ARM状态时,每条指令为4字节⻓,所 以PC始终指向该指令地址加8字节的地址,即:PC值=当前程序执⾏位置+8;


ARM指令是三级流⽔线,取指,译指,执⾏,同时执⾏的,现在PC指向的是正在取指的地址(下⼀条指令),

那么cpu正在译指的指令地址是PC-4(假设在ARM状态下,⼀个指令占4个字节),cpu正在执⾏的指令地址是

PC-8,也就是说PC所指向的地址和现在所执⾏的指令地址相差8。

当突然发⽣中断的时候,保存的是PC的地址(PC-8+4 = PC-4 下⼀条指令的地址) 这样你就知道了,如果返回的时候返回PC,那么中间就有⼀个指令没有执⾏,所以⽤SUB pc lr-irq #4。 

image.png

声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。仅供学习交流使用,不构成商业目的。版权归原作者所有,如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时删除。侵权投诉
相关推荐HOT
PCB面试相关知识概述-PCB面试之前你要准备的工作

PCB(Printed Circuit Board)是电子产品中不可或缺的基础组件,因此在PCB设计和制造领域的人才需求非常大。如果你正在准备面试,下面将从多个... 详情>>

2023-11-27 10:15:26
描述⼀下嵌入式基于ROM的运⾏⽅式和基于RAM的运⾏⽅式有什么区别?

基于RAM1. 需要把硬盘和其他介质的代码先加载到ram中,加载过程中⼀般有重定位的操作。2. 速度比基于ROM的快,可⽤RAM比基于ROM的少,因为所有的代码... 详情>>

2023-10-25 10:03:49
一套比较经典的PCB设计工程面试题

一套比较经典的PCB设计工程面试题一、填空1.PCB上的互连线按类型可分为 _微带线_和带状线2引起串扰的两个因素是_容性耦合和_感性耦合3.EMI的三要素:发... 详情>>

2023-11-27 10:21:08
将铁氧体磁芯(R=80Ω@300MHz)放置在单极子上,则单极子模型对外的辐射发射将减少?

如图所示,电压源驱动谐振频率为300MHz的λ/4单极子(辐射发射模型),辐射阻抗为36 Ω。如果将铁氧体磁芯(R=80Ω@300MHz)放置在单极子上,则单极... 详情>>

2024-03-20 16:36:09
面试PCB Layout设计工作面试官一般会问什么?

面试PCB Layout设计工作面试官一般会问什么?问:您好!我是电子行业的资深技术人员,我大学里学的是电子信息工程专业,现在是高级硬件工程师,目前是在方案公司... 详情>>

2023-11-27 10:26:06