计算机组成原理 第2版 课件 第六章 中央处理器_第1页
计算机组成原理 第2版 课件 第六章 中央处理器_第2页
计算机组成原理 第2版 课件 第六章 中央处理器_第3页
计算机组成原理 第2版 课件 第六章 中央处理器_第4页
计算机组成原理 第2版 课件 第六章 中央处理器_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理杨洁指令字长为16位,每个地址码为4位,采用扩展操作码的方式,设计11条三地址指令、61条一地址指令和23条二地址指令和8条三地址。试给出一种操作码的扩展方案。第五章作业讲解第五章作业讲解采用扩展操作码的方式,能否构成3条三地址指令、254条一地址指令和64条零地址指令。如果可以请列出扩展方案,如果不能,请说明原因。指令字基址寄存器的内容为3000H,变址寄存器的内容为32B0H,指令的地址码为002BH,程序计数器(存放当前正在执行的指令的地址)的内容为4500H,且存储器内存放的内容如下表所示。第五章作业讲解(1)若采用基址寻址方式,则取出的操作数是什么?(2)若采用变址寻址(不考虑基址)方式,取出的操作数是什么?(3)若采用立即寻址方式,取出的操作数是什么?(4)若采用存储器间接寻址(不考虑基址)方式,取出的操作数是什么?基址寄存器的内容为2000H,变址寄存器内容为03A0H,指令的地址码部分是003FH,当前正在执行的指令所在地址为2B00H。(不考虑指令长度)(1)求基址变址编址和相对编址两种情况的访存有效地址(即实际地址)。(2)设基址变址编址用于取数指令,相对编址用于转移指令,存储器内存放的内容如下:

请写出从存储器中所取的数据以及转移地址。(3)若采取直接编址,请写出从存储器取出的数据。第五章作业讲解01CPU概述第六章中央处理器02指令的执行过程03时序部件04操作控制器05指令级流水线06微处理器中的新技术CPU概述01当前世界上大多数计算机的中央处理器由下述两种方法实现:(1)采用半导体公司(工厂)生产的微处理器构成通用的或专用的计算机系统以及工作站等。(2)一些计算机公司采用自行设计制造的芯片来构成大、中、小型计算机的CPU。Intel80386微机系统框图及功能如下:CPU的功能及组成Intel80386微机系统框图是系统中主要的处理、控制部件,从存储器中取出的指令主要在80386中处理机器加电由它产生整机复位信号(reset),使计算机各个部件处于初始状态扩充了80386指令系统,主要完成浮点运算和高精度整数运算。80386自动将取得的协处理器指令传送给80387。80386通过总线与存储器、I/O设备交换信息存放数据、指令以及完成输入输出操作的系统。CPU与I/O设备之间传送信息时由于CPU的速度比I/O设备快,为了不浪费CPU时间,CPU采取分时并行工作。Intel80386包括指令部件、执行部件和存储管理部件等。指令部件完成取指及指令译码功能,并产生控制信号执行部件包括ALU、乘法部件、寄存器组等存储管理部件用来确定存储器地址。80386结构及外部连线Intel80386引出端信号

32位数据总线,是传送数据的双向总线32位地址线,其中A0,A1在80386内部转换成“字节使能”分别是字节0~字节3的选择信号,符号#表示低电位有效。输入到80386的时钟总清或复位信号运算器+控制器运算器:实施算术逻辑运算,ALU控制器:计算机的指挥中心,对程序规定的控制信息进行分析、控制和协调,使计算机中各个部件协同工作控制器:取指令、译码、数据流控制CPU的定义指令控制:控制指令序列的执行操作控制:控制单个指令执行和部件间协同时序控制:控制操作信号的时间序列数据加工:算术和逻辑运算运算器与控制器的功能集合CPU的功能★寄存器的组织和功能★数据通路CPU的内部构成(虚线框内)缓冲寄存器DRCPU与主存、外设的信息中转(数据、指令)数据缓冲,补偿CPU与主存、外设间的时序差异为算术逻辑部件提供另一个操作数寄存器组织指令寄存器IR保存当前执行的指令寄存器组织地址寄存器AR当前访问的存储器地址或I/O端口地址寄存器组织程序计数器PC

下一条指令在主存中的地址顺序执行即可累加,累加值决定于指令字长分支转移指令需视寻址方式确定PC值寄存器组织累加寄存器AC数据源于缓冲寄存器或ALU为ALU提供操作数寄存器组织状态寄存器PSW保存执行各类指令产生的状态结果作为后续指令的判断条件寄存器组织21数据通路寄存器之间传送信息的通路操作控制器在寄存器之间建立数据通路硬布线控制器微程序控制器可编程逻辑阵列建立怎样的数据通路、何时建立CPU组织02指令的执行过程取指译码执行指令的执行过程指令周期CPU从主存取出一条指令到指令执行完毕机器周期(CPU周期)指令周期的不同阶段划分为多个机器周期时钟周期(节拍、T周期)CPU处理操作的最小时间单位几个周期的区分机器周期(取指)机器周期(执行指令)指令周期T1T2T3

T4T2T3

T4T1机器周期(取指)机器周期(执行)指令周期T1T2T3

T4T2T3

T1定长机器周期组成的指令周期不定长机器周期组成的指令周期指令周期由若干个机器周期(CPU周期)组成。所有指令周期的第一个机器周期都为取指周期。每个机器周期又由若干个节拍(时钟周期)组成。根据指令操作的复杂程度不同,各种指令所需的机器周期也不同。几个周期的关系指令地址(八进制)指令内容(八进制)助记符020250000CLA021030030ADD30022021031STAI31023140021JMP21024000000HLT…………030000006031000040…………040xxxxxx;结果数据将累加器清零,属非访存指令加法,属直接访存指令存数操作,属间接访主存指令程序控制指令4条典型指令构成的程序执行过程需要2个机器周期。第1个机器周期用来进行取指和译码操作第2个机器周期用于指令的执行操作。在指令执行阶段,CPU根据译码器输出的结果,进行指令所需的操作。非访主存指令的执行过程如右图不需要访存指令的指令周期(CLA)取指令PC+1

PC指令译码执行指令取下一条指令第1周期取指译码第2周期指令执行①②③地址

指令或数据020250000;CLA021030030;ADD022031;STA023140021;JMP024000000;HLT状态寄存器累加器020020250000250000指令译码器操作控制器时序发生器……主存储器数据总线地址总线CPU+1微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器取出CLA指令数据通路020020250000;CLA250000250000250000CPU识别是一条非访存CLA指令指令执行阶段CLA控制信号000000021需要3个机器周期。第1个机器周期用来进行取指和译码操作第2个机器周期用于送操作数地址。第3个机器周期进行取操作数和执行加法操作。直接访主存指令的执行过程如右图直接访存指令的指令周期(ADD30)取指令PC+1

PC指令译码送操作数地址取操作数取指译码指令执行执行指令取下一条指令

第1个机器周期第2个机器周期

第3个机器周期地址

指令或数据020250000;CLA021030030;ADD022021031;STA023140021;JMP024000000;HLT状态寄存器000000022250000250

000指令译码器操作控制器时序发生器……主存储器数据总线地址总线CPU微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器…累加器

送操作数地址的数据通路(第一个机器周期在做什么?)021030+1………地址

指令或数据020250000;CLA021030030;ADD022021031;STA023140021;JMP024000000;HLT状态寄存器000000022250000250

000指令译码器操作控制器时序发生器……主存储器CPU微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器…累加器021030+1地址

指令或数据024000000

030000006031000040040xxxxxx

状态寄存器022030ADD

030指令译码器操作控制器时序发生器…①…主存储器数据总线地址总线CPU微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器……030030000006000006000000000006取操作数和指令执行间接访问主存指令

第3条是间接访问主存的指令由4个机器周期组成。取指、译码送地址指针取操作数地址存储结果取指PC+1

PC指令译码送地址指针取出地址取指译码指令执行执行指令第1个机器周期第2个机器周期第3机器周期第4个机器周期取操作数取下一条指令送地址指针地址指令或数据024000000

030000006031000040040xxxxxx状态寄存器000006STI031指令译码器操作控制器时序发生器…主存储器数据总线地址总线CPU微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器………031+1023取操作数地址000040存储结果000006040至此:STAI031指令结束回想第一个机器周期无条件转移指令无条件把PC的值修改为021JMP可以是直接寻址,也可以是间接寻址。如右图所示:程序控制指令的指令周期

取指PC+1

PC指令译码送转移地址取下一条指令取指译码指令执行第1个机器周期第2个机器周期

地址

指令或数据020250000;CLA021030030;ADD022021031;STA023140021;JMP024000000;HLT状态寄存器023指令译码器操作控制器时序发生器……主存储器数据总线地址总线CPU微指令时钟状态反馈ALU程序计数器地址寄存器缓冲寄存器指令寄存器…累加器023+1………024第一个机器周期结束第二个机器周期结束140021;JMPPC

AR

ABUSDBUS

DR

IR,PC+1

译码0

ACIR

ARIR

AR

(AR)

ARIR

PCPC

ARRDCLAADDSTAIJMP开始AR

ABUSDBUS

DRDR

ALUALU

ACRDWE取指周期AR

ABUSAC

DRDR

DBUS公操作:表示一条指令已经执行完毕,CPU所开始进行的一些操作,主要是CPU对外设请求的处理,若没有外设请求,转入“取指令操作”。指令周期流程图03时序部件时序部件产生计算机执行机器指令过程中的时序信号产生过各个机器周期中的节拍信息三级时序系统工作周期(机器周期)、时钟周期(节拍)、工作脉冲计算机的主频就是计算机的时钟周期的频率。主频的倒数就是时钟周期。单位为Hz,也就是一秒钟震荡的次数。控制信号控制器发出的控制信号通过硬连线的方式连接到某个受控部件。不同指令对应不同的微操作序列。操作控制器04操作控制器

硬布线控制器结构操作控制器

硬布线控制器设计步骤1.确定指令系统包括指令系统中的每条指令的格式,功能和寻址方式2.确定CPU内部结构和时序系统围绕指令系统的实现展开3.写出微操作或微操作控制序列分析指令执行过程的基础上展开4.化简优化逻辑函数综合每个微操作命令或控制信号展开5.用逻辑电路实现例题

根据操作时间表得到对应的微操作命令的逻辑函数。比如实现(ACC)+(MDR)→ACC例题

那对应的逻辑函数为

这样可以得到的微命令逻辑图为数据通路寄存器之间传送信息的通路操作控制器在寄存器之间建立数据通路硬布线控制器

微程序控制器可编程逻辑阵列操作控制器

控制器和运算器一起组成了CPU,即中央处理器,控制器是整台计算机的指挥系统。指挥和控制全机的各个部分,使他们有条不紊的工作。本节内容对建立计算机的整机概念十分重要。微操作控制器控制器的组成框图微指令

在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。

微命令

控制部件通过控制线向执行部件发出各种控制命令

微操作

执行部件接受微命令后所进行的操作

微程序

一条机器指令的功能是用许多条微指令组成的序列来实现的,这个微指令序列通常叫作微程序几个概念微指令:一个CPU周期中,一组实现一定操作功能的微命令的组合。微程序:一条机器指令的功能是用多条微指令组成的序列实现的,这个序列称为微程序。微程序控制器:以保存在只读存储器内的专用程序代替逻辑控制电路,这种只读存储器被称为控制存储器,它以微程序形式保存控制信号。这种控制器称为微程序控制器。微指令与微程序程序‘=’一系列的机器指令机器指令‘=’受控的数据通路和操作时序微命令‘=’控制部件向执行部件发出的控制命令微操作‘=’执行部件接受命令后进行的操作微程序控制的基本思想:把操作控制信号编成所谓的微指令,存放于只读存储器中。当机器运行时读出微指令,产生各种操作控制信号,使相应部件执行规定的操作。微指令与微程序关系微程序控制器的构成框图存放实现指令系统的微程序为只读型地址转移逻辑决定要访问的下一条微指令的地址保存一条微指令的操作控制字段和判别测试字段的信息微地址:微指令由控制存储器读出后直接给出下一条微指令的地址。微指令编码法—1直接编码法(直接控制法)。。。。。。。。。。。。。。。。。。。。。。。LDR1LDR3R1

YR2

YR3

YMRDLDIRPC+1

LDR2

R1

XR2

XDR

X+―LDDRLDAR

P1P2

直接地址操作控制顺序控制1234567891011121314151617181920212223

用来发出管理和指挥全机工作的控制信号产生下一条微指令的地址优点:并行性强,操作速度快缺点:微指令字长,很多微命令是互斥的,不允许并行的时候就不可以用这种方式编码微指令编码法—2字段编码法:将操作控制字段分为若干段,每段内采用最短编码,段和段之间采用直接控制法字段直接编码:各字段独立定义本字段的微命令,和其他字段无关,缩短了微指令字,得以广泛应用。2.字段间接编码:一个字段的某些编码不能独立定义某些微命令,需要与其他字段的编码联合定义,又称隐式编码。典型例题在某机微指令格式中,共有3个控制字段,每个字段可分别激活5、15、24种控制信号。分别采用直接编码和字段直接编码法设计微指令的操作控制字段,并说明两种方式的操作控制字段各有几位采用直接编码,微指令的操作控制字段总位数等于控制信号数,那么操作控制字段位数=5+15+24=44位采用字段直接编码,微指令的操作控制字段分为3段,每段需要加一个不激活状态,所以,这个3段分别需要给出6、16、25种状态。对应操作控制字段位数=3+4+5=12位一条机器指令对应一个微程序,微程序由若干条微指令序列组成。换言之,一条机器指令的操作被划分为若干微指令完成。指令与主存相关,微指令与控制存储器相关。指令对应指令周期,微指令对应机器周期(CPU周期)机器指令与微指令的关系微指令格式分类

(1)水平型微指令

指一次能定义并执行多个并行操作控制信号的微指令,是一种速度最快的微指令格式。前面所介绍的直接表示法、编码表示法和混合表示法三种编码方式的微指令都属于水平型微指令。微指令格式的分类微指令格式分类

(2)垂直型微指令

指采用类似机器指令结构的微指令,一条垂直型微指令中只有1~2个微操作命令,控制1~2种微操作,这种微指令不强调并行控制功能。垂直型微指令设置有微操作码字段,由微操作码规定微指令的功能。微指令格式的分类

(3)混合型微指令

在垂直型的基础上增加一些不太复杂的并行操作。微指令较短,仍便于编写;微程序也不长,执行速度加快

(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则差。(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。(3)由水平型微指令解释指令的微程序,具有微指令字比较长,但微程序短的特点。垂直型微指令则相反,微指令字比较短而微程序长。(4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。两种微指令的比较

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论