计算机组成原理教案第五章中央处理器_第1页
计算机组成原理教案第五章中央处理器_第2页
计算机组成原理教案第五章中央处理器_第3页
计算机组成原理教案第五章中央处理器_第4页
计算机组成原理教案第五章中央处理器_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

第五章中央处理器

5.1CPU的组成和功能

5.1.1CPU器的功能

CPU它具有如下四方面的基本功能:

★指令控制

★操作控制

★时间控制

★数据加工

5.L2CPU的基本组成和5.1.3CPU中的主要寄存器

CPU的基本部分由运算器、cache和控制器三大部分组成。

控制器

由程序计数器、指令寄存器、指令译码器、时序产生器和操作

控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整

个计算机系统的操作。它的主要功能有:

(1)从内存中取出一条指令,并指出下一条指令在内存中的位置;

(2)对指令进行译码或测试,并产生相应的操作控制信号,以便启动

规定的动作;

(3)指挥并控制CPU、内存和输入/输出设备之间数据流动的方向。

运算器

由算术逻辑单元(ALU)、累加寄存器、数据缓冲寄存器和状态

条件寄存器组成,它是数据加工处理部件。相对控制器而言,运算

器接受控制器的命令而进行动作,即运算器所进行的全部操作都是

由控制器发出的控制信号来指挥的,所以它是执行部件。运算器有

两个主要功能:

(1)执行所有的算术运算;

⑵执行所有的逻辑运算,并进行逻辑测试,如零值测试或两个值的

比较。

CPU模型参看

5.1.4操作控制器与时序产生器

数据通路:许多寄存器之间传送信息的通路

时序产生器:产生电平和脉冲,规定指令执行时间等。

操作控制器:就是根据指令操作码和时序信号,产生各

种操作控制信号,以便正确地建立数据通路,从而完成

取指令和执行指令的控制。

根据设计方法不同,操作控制器可分为时序逻辑型、存储逻辑型、

时序逻辑与存储逻辑结合型三种。

1.硬布线控制器

是采用时序逻辑技术来实现的;

2.微程序控制器

是采用存储逻辑来实现的;

3.前两种方式的组合

5.2指令周期

5.2.1指令周期的基本概念

指令周期CPU从内存取出一条指令并执行这条指令的时间

总和。

CPU周期又称机器周期,CPU访问一次内存所花的时间较

长,因此用从内存读取一条指令字的最短时间来定义。

时钟周期通常称为节拍脉冲或T周期。一个CPU周期包含

若干个时钟周期。

下图示出了采用定长CPU周期的指令周期示意图。

T周期

—Tl-T2T3T4T1T2T3T4

CPU周期-CPU周期------>

(取指令)《执行指令》

指令周期

5.2.2-5.2.5指令周期

(1)CLA

(2)ADD30

(3)STA40

(4)NOP

(5)JMP

我们把前面的五条典型指令取指和执行过程

5.2.6用方框图语言表示指令周期

在进行计算机设计时,可以采用方框图语言来表示一条指令的

指令周期。

方框代表一个CPU周期,方框中的内容表示数据通路的操作

或某种控制操作。

菱形通常用来表示某种判别或测试,不过时间上它依附于紧

接它的前面一个方框的CPU周期,而不单独占用一个CPU周期

我们把前面的五条典型指令加以归纳,

用方框图语言表示的指令周期

⑴“ADDR2,RO”指令完成(R0)+(R2)一RO的功能操作,

画出其指令周期流程图,假设该指令的地址已放入PC中。

并列出相应的微操作控制信号序列。

(2)"SUBRI,R3”指令完成(R3)-(R1)-R3的操作,画出其

指令期流程图,并列出相应的微操作控制信号序列。

LR3->Y「一R3°,G,Yi

R昌|Rio,G,Xi

R3-R1->R3-3GjR3i

(a)加法⑻减法

5.3时序产生器和控制方式

5.3.1时序信号的作用和体制

用二进制码表示的指令和数据都放在内存里,那么CPU

是怎样识别出它们是数据还是指令呢?

电位脉冲

总之,计算机的协调动作需要时间标志,而时间标志则是用

时序信号来体现的。

(1)硬布线控制器中,时序信号往往采用主状态周期-节拍

电位-节拍脉冲三级体制。

(2)在微程序控制器中,时序信号比较简单,一般采用节

拍电位■节拍脉冲二级体制。

5.3.2时序信号产生器

微程序控制器中使用的时序信号产生器由

时钟源、环形脉冲发生器、节拍脉冲和读写时序译

码逻辑、启停控制逻辑等部分组成。

中E2|_|3|_I4LJFKUR_JFl_

Ct1

C

2I11I

C3|1

c

411i1

RD'

RD|1

WE'

WE1I1

Tt1

T

2111ii1

T31111II

T41

V---------------CPU周期--------AH--------CPU周期--------*

5.3.3控制方式

控制方式即控制不同操作序列时序信号的方法。

常用的有同步控制、异步控制、联合控制三种方式,其

实质反映了时序信号的定时方式。

1.同步控制方式

在任何情况下,已定的指令在执行时所需的机器周期数和

时钟周期数都固定不变。根据不同情况,同步控制方式可选取

如下方案:

(1)采用完全统一的机器周期执行各种不同的指令。

(2)采用不定长机器周期。

(3)中央控制与局部控制结合。

2.异步控制方式

其特点是:每条指令、每个操作控制信号需要多少时

间就占用多少时间。这意味着每条指令的指令周期可由多

少不等的机器周期数组成;也可以是当控制器发出某一操

作控制信号后,等待执行部件完成操作后发“回答”信号

,再开始新的操作。显然,用这种方式形成的操作控制序

列没有固定的CPU周期数(节拍电位)或严格的时钟周期(节

拍脉冲)与之同步。

3,联合控制方式

此为同步控制和异步控制相结合的方式。

情况(1)大部分操作序列安排在固定的机器周期中,对某些

时间难以确定的操作则以执行部件的“回答”信号作为本次操

彳?的幺吉束^.

情况”;2)’机器周期的节拍脉冲数固定,但是各条指令周期的

机器周期数不固定。

5.4微程序控制器

5.4.1微命令和微操作

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

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

简单运算器数据通路

5.4.2微指令和微程序

微指令在机器的一个CPU周期中,一组实现一定操作功能

的微命令的组合。

微程序实现一条机器指令功能的许多条微指令组成的序列。

具体的微指令结构

nn

uu

­■W林

d号

lHs

LDRjLDR2LDR3

5.4.3微程序控制器原理框图

它主要由控制存储器、微指令寄存器和地址转移逻辑三大

部分组成。

微程序控制器原理框图

读出一条微指令并执行微指令的时间总和称为一个微指令周期。

微指令周期就是只读存储器的工作周期。

控制存储器的字长就是微指令字的长度,其存储容量视机器指

令系统而定,即取决于微程序的数量

5.4.4微程序举例

我们举“十进制加法”指令为例,具体看一看微程序控制的过

程。

5.4.5CPU周期与微指令周期的关系

在串行方式的微程序控制器中:

微指令周期=读出微指令的时间+执行该条微指令的时间

下图示出了某小型机中CPU周期与微指令周期的时间关系:

♦读微

—执行微指令----------微指令周期---------指令

T1T2T3T4T1T2T3T4

——CPU周期----------CFU周期

机器指令与微指令的总结

1.一条机器指令对应一个微程序,这个微程序是由若干条微指

令序列组成的。因此,一条机器指令的功能是由若干条微指

令组成的序列来实现的。简言之,一条机器指令所完成的操

作划分成若干条微指令来完成,由微指令进行解释和执行。

2.CAI演示

3.我们在讲述本章5.2节时,曾讲述了指令与机器周期概念,

并归纳了五条典型指令的指令周期,并演示了这五条指令的

微程序流程图,每一个CPU周期就对应一条微指令。这就

告诉我们如何设计微程序,也将使我们进一步体验到机器

指令与微指令的关系。

【例2】设某计算机运算器框图如图(a)所示,其中ALU为16位的

加法器(高电平工作),SA,SB为16位暂存器。4个通用寄存器由D

触发器组成,Q端输出,其读、写控制功能见下表。

RRAORA1选择WWAOWA1选择

100R0100R0

101R1101R1

110R2110R2

111R3111R3

0**不读出0**不写入

16位数据总线

ALU

(a)

微指令格式如下(未考虑顺序控制字段):

WAWA

RAQRAJ0RReset

WLDSALDStR)SJRL)-ALUSJRL)-ALU

i

要求:用二进制代码写出如下指令的微程序:

(1)“ADDRO,R1”指令,即(RO)+(R1)-R1

(2)“SUBR2,R3”指令,即(R3)-(R2)一R3

(3)“MOVR2,R3”指令,即(R2)一(R3)

MOV

R27sA

8

-CF7SE-

SA+SB->R3

T

5.5微程序设计技术

5.5.1微命令编码

微命令编码对微指令中的操作控制字段采用的表示方法。通常

有以下三种方法:

1,直接表示法

这种方法的优点是简单直观,其输出直接用于控制。

缺点是微指令字较长,因而使控制存储器容量较大。

2.编码表不法

微命令P1P2Pn

Il…LJ卜]

译码逐码

字段1字段2...........P字段下一个微地址

3.混合表示法

这种方法是把直接表示法与字段编码法混合使用,以便能综

合考虑指令字长、灵活性、执行微程序速度等方面的要求。

5.5.2微地址的形成方法

产生微地址有两种方法:

1.计数器方式

这种方法同用程序计数器来产生机器指令地址的方法相类似

在顺序执行微指令时微地址寄存器通常改为计数器

在非顺序执行微指令时,必须通过转移方式

2.多路转移方式

O在多路转移方式中,当微程序不产生分支时,后继

微地直接由微指令的顺序控制字段给出;

3当微程序出现分支时,有若干“后选”微地址可供选择:

即按顺序控制字段的“判别测试”标志和“状态条件”信息

来选择其中一个微地址。“判别测试”有n位标志,可实现

微程序2的n次方路转移,涉及微地址寄存器的n位。

【例3】微地址寄存器有6位((iA5-ptA0),当需要修改其内容时,可

通过某一位触发器的强置端S将其置“1”。现有三种情况:

⑴执行“取指”微指令后,微程序按IR的0P字段(IR3-IR0)进行16

路分支;

⑵执行条件转移指令微程序时,按进位标志C的状态进行2路分支;

(3)执行控制台指令微程序时,按IR4,IR5的状态进行4路分支。

请按多路转移方法设计微地址转移逻辑。

(l)fflPl和IR3-IR0修改piA3-piA0;

(2)用P2和C修改(1A0;

(3)用P3和IR5,IR4修改(iA5,RVL

另外还要考虑时间因素T4(假设CPU周期最后一个节拍脉冲),故

转移逻辑表达式如下:

(1A5=P3IR5T4

(1A4=P3IR4T4

(1A3=P1IR3T4

piA2=PlIR2T4

piAl=Pl-IRl-T4

(1AO=P1IROT4+P2CT4

5.5.3微指令格式

微指令的格式大体分成两类:水平型微指令和垂直型微指令。

1・水平型微指令

一次能定义并执行多个并行操作微命令的微指令,叫

做水平型微指令。其一般格式如下:

控制字段判别测试字段下地址字段

按照控制字段的编码方法不同,水平型微指令又分为三种:

I.全水平型(不译法)微指令

II.字段译码法水平型微指令

III.直接和译码相混合的水平型微指令。

2.垂直型微指令

微指令中设置微操作码字段,采用微操作码编译法,由

微操作码规定微指令的功能,称为垂直型微指令。

下面举4条垂直型微指令的微指令格式加以说明。设微指

令字长为16位,微操作码3位。

(1)寄存器-寄存器传送型微指令

151312873/0

000源济行器编址目标寄存器编址其他

(2)运算控制型微指令

001左输入源编址右输入源编址ALU

(3)访问主存微指令

1513128732111

010寄存器编址存储器编址速写其他

(4)条件转移微指令

151312:43:0

0011测试条件

3•水平型微指令与垂直型微指令的比较

⑴水平型微指令并行操作能力强,效率高,灵活性强,垂直型微

指令则较差。

(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间

长。

(3)由水平型微指令解释指令的微程序,有微指令字较长而微程序

短的特点。垂直型微指令则相反。

(4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似

,相对来说,比较容易掌握。

5.5.4动态微程序设计

微程序设计技术有静态微程序设计和动态微程序设计之分。

。:筋强做程序度计

西窠用EP自6陶栅蜩鞋输丽

裱指绿熟禳耀珍果颔妻树器的指令系统.这种技术又称

为仿真其他机器指令系统

5.8.1并行处理技术

并行性的两种含义:

同时性指两个以上事件在同一时刻发生;

并发性指两个以上事件在同一时间间隔内发生。

计算机的并行处理技术概括起来主要有以下三种形式:

1.时间并行

2.空间并行

3.时间并行+空间并行

5.8.2流水CPU的结构

其中CPU按流水线方式组织,通常由三部分组成:指令部件、指令

队列、执行部件。

霞笠件交叉存读器

取指令

指令在四

计算掾作薮上也

栗址

富取母作数

FIFO

B处指•令取歹U

执彳亍的件

《指令工》舞森累盘运

2.流水CPU的时空图

图(a)表示流水CPU中一个指令周期的任务分解。

SIS2S3S4

入出

(a)一个指令流水线过程段

or*自匕

图(d)表示超标量流水计算机的时空图。

(d)超标量流水线时空图

3.流水线分类

指令流水线指指令步骤的并行。将指令流的处理过程划分

为取指令、译码、执行、写回等几个并行处理的过程段。

算术流水线指运算操作步骤的并行。

处理机流水线又称为宏流水线,是指程序步骤的并行。

5.8.3流水线中的主要问题

流水过程中通常会出现以下三种相关冲突,使流水线断流。

1.资源相关

资源相关是指多条指令进入流水线后在同一机器时钟周

期内争用同一个功能部件所发生的冲突。

7^怦1I34簧8

I!(Load)IFIDEAra

12IFIDEXMEM岫

13IFIDEXJEM

1■(

14IFII'EXMEMWB

15IFIDEXMEM

2.数据相关

在一个程序中,如果必须等前一条指令执行完毕后,才能

执行后一条指令,那么这两条指令就是数据相关的。

(1)II:ADDRI,R2,R3;(R2)+(R3)->R1

12:SUBR4,RI,R5;(RI)-(R5)->R4

RAW相关

(2)13:STAM(x),R3;(R3)->M(x),M(x)是存储器单元

14:ADDR3,R4,R5;(R4)+(R5)->R3

WAR相关

(3)15:MULR3,RI,R2;(R1)X(R2)->R3

16:ADDR3,R4,R5;(R4)+(R5)->R3

WAW

解决数据相关冲突的办法:

在流水CPU的运算器中设置若干运算结果缓冲寄存器,暂时

保留运算结果,以便于后继指令直接使用,这称为“向前”

或定向传送技术。

3.控制相关

控制相关冲突是由转移指令引起的。当执行转移指令时,

依据转移条件的产生结果,可能为顺序取下条指令;也可

能转移到新的目标地址取指令,从而使流水线发生断流。

为了减小转移指令对流水线性能的影响,常用以下两种转移处

理技术:

温馨提示

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

最新文档

评论

0/150

提交评论