RISC指令集的五个周期

RISC指令集的五个周期 

RISC(reduced instruction set computer,精简指令集计算机)简称为精简指令集。RISC把执行指令的精力主要放在了经常使用的指令上面。本文主要介绍了在RISC指令集中一条指令的五个主要执行CC(Clock Cycle,时钟周期)的主要涵义以及内容。

  这五个时钟周期分别为:IF(Instruction fetch,取指令),ID(Instruction decode/register fetch cycle,指令解码),EX(Execution/effective address cycle,执行),MEM(Memory access,内存访问), WB(Write-back cycle,写回)。

  IF:根据PC(program counter,程序计数器)中所存储的内存地址,在内存中找到该地址所指向的指令,并将该指令存储在寄存器中。同时,PC指向下一条指令,完成这个操作要求PC加4(以32位指令集为例,如果是64位则要加8)。

  ID :  操作从IF阶段获取来的指令。将指令解码,最终找到指令所需要的寄存器中存储的数据。如果该指令只一条跳转指令,那么在这一阶段需要根据跳转指令的意义对获取的值进行比较,如果比较结果为true则执行跳转,如果比较结果为false则不执行跳转,继续下一条指令的执行;如果指令需要对指令中某些位进行填充,也在ID阶段完成,比如对高四位进行填充以满足指令结果是32位;计算可能跳转的指令的地址。

  EX : ALU(Arithmetic Logic Unit,算术逻辑单元)对ID阶段的结果进行计算。在ID阶段已经获得了指令计算所需要的寄存器的值,那么在EX阶段需要根据指令的意义对这些寄存器的值进行计算。计算根据指令的不同变得不同。主要有三种类型的ALU计算:1. ALU根据ID中补充的地址,对有效的地址单元进行计算,最终得到所需要的内存的地址;2. 根据指令的意义,对从寄存器中获取的值,进行操作,比如对两个寄存器的值进行相加;3. 根据寄存器的值以及补充的值,计算出立即数的结果。

  MEM:如果当前指令是Load指令,那么,根据EX计算出的内存地址,从内存中获取对应的值;如果当前指令是store,那么,根据EX计算出的内存地址和寄存器的值,将寄存器的值存入该内存地址中。其他的指令一般不会设计内存的访问。

  WB:将计算出来的最终的寄存器的值写入到register file(寄存器文件)中。这部操作包括从内存中获取的值以及通过算术运算得到的结果。

  以上五个时钟周期便是一条RISC指令执行的主要步骤。

时间: 2024-08-28 11:30:27

RISC指令集的五个周期的相关文章

计算机指令集CISC与RISC

当接触一新CPU时商家会首先描述它是RISC指令集,这意味着什么,从这个描述你能了解多少CPU特性信息? 复杂指令集计算机(CISC) 长期来,计算机性能的提高往往是通过增加硬件的复杂性来获得.随着集成电路技术.特别是VLSI(超大规模集成电路)技术的迅速发展,为了软件编程方便和提高程序的运行速度,硬件工程师采用的办法是不断增加可实现复杂功能的指令和多种灵活的编址方式.甚至某些指令可支持高级语言语句归类后的复杂操作.至使硬件越来越复杂,造价也相应提高.为实现复杂操作,微处理器除向程序员提供类似各

信息安全系统设计基础第八周期中总结(2)

学习目标:复习前面的Linux命令,Linux编程基础,教材前七章的内容 学习资源:书 学习任务:1. 复习Linux命令,特别是man -k, cheat, grep -nr xxx /usr/include 2. 复习vi, gcc, gdb,make的使用 3. 复习教材内容ch01 ch02 ch03 ch04 ch06 ch07 4. 复习前面的考题(答案解析见http://group.cnblogs.com/topic/73060.html) ,下次考试考每次考试错的最多的题目 5.

处理器架构——从RISC与CISC到x86、ARM、MIPS

1.CISC(Complex Instruction SetComputer,复杂指令集计算机) 复杂指令集(CISC,Complex Instruction Set Computer)是一种微处理器指令集架构(ISA),每个指令可执行若干低阶操作,诸如从内存读取.储存.和计算操作,全部集于单一指令之中. CISC特点: 1.指令系统庞大,指令功能复杂,指令格式.寻址方式多: 2.绝大多数指令需多个机器周期完成: 3.各种指令都可访问存储器: 4.采用微程序控制: 5.有专用寄存器,少量: 6.

指令集基本原理

指令集体系结构----程序员或编译器编写人员能够看到的计算机部分. 指令集体系结构包括: 1.对各种指令集进行了分类,并对各种方法的优势和劣势进行某种量化评估. 2.对一些指令集测量数据进行分析. 3.语言与编译器问题以及他们对指令集体系结构的影响. 桌面式计算机强调设计整数.浮点类型的程序的性能,很少考虑程序的规模.今天的服务器主要用于数据库.文件服务器和Web应用程序,再加上一些正对许多用户的时分应用程序.因此浮点性能的重要性要远低于整数与字符字符串的重要性,但是所有服务器处理器都仍包含浮点

LLVM 笔记(五)—— LLVM IR

ilocker:关注 Android 安全(新手) QQ: 2597294287 LLVM 的 IR (Intermediate Representation) 是其设计中的最重要的部分.优化器在进行代码优化时所进行的分析和转换都是针对 IR 的. 在设计 IR 时,考虑到了很多明确的目标,包括:支持轻量级的运行时优化.交叉函数/过程间优化.整体程序分析和侵入式调整转换等等. 原文:including supporting lightweight runtime optimizations, c

CPU指令集

cpu作为一台电脑中的核心,它的作用是无法替代的.而cpu本身只是在块硅晶片上所集成的超大规模的集成电路,集成的晶体管数量可达到上亿个,是由非常先进复杂的制造工艺制造出来的,拥有相当高的科技含量. CPU指令集 - 概念 CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统.指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一.从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Mu

那些年的那些事CISC和RISC发展中的纠缠

本文来自http://www.cnbeta.com/articles/224544.htm ARM.ARM.ARM,没错ARM仿佛一夜之间就火了,平板.手机等领域随处可见它的影子,甚至已经有人预言未来有相当一部分原属于传统x86势力范围 的台式机份额也将被ARM占据.在这种情况下,大家不可避免地将ARM和传统的x86处理器进行比较,有力挺ARM的,也有支持x86的.事实上,ARM 并非突然冒起,它几乎和x86同时崛起于上个世纪末期. 那么,目前ARMCISC和RISC是现代微处理器的两大基础指令

单片机指令周期、机器周期、状态周期、时钟周期

单片机的系统指令周期根据不同的内核架构各有区别. 8051系列单片机采用的是同步式的顺序逻辑系统,整个系统的工作完全是依赖系统内部的时脉信号.它的指令周期.机器周期等也是根据时钟脉冲信号来确定.下面说明机器周期.指令周期等的关系. 时钟周期:又叫时钟振荡周期,指晶振振荡产生的脉冲,一个脉冲表示一个时钟周期. 状态周期:在8051单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示).一个状态周期等于两个时钟周期. 机器周期:一般也叫CPU周期,表示从内存读取一条

指令集的概念

指令集是什么: 指令集是存储在CPU内部,对CPU运算进行指导和优化的硬程序.拥有这些指令集,CPU就可以更高效地运行. 指令集是软件与CPU之间的一个接口而CPU就是接口的实列化. 指令集就是一组汇编指令的集合,不同的CPU使用的指令集不同. 设计CPU的人给出的编写规则就可以说是指令,这一系列的规则就是指令集(合). 设计CPU的厂商有多家,这样就产生了不同的指令集,比如intel阵营的8086指令集,ARM阵营的RISC指令集. 不同阵营,其对应的汇编语言也是不一样的. +++++++++