K12第5章中央处理器1_第1页
K12第5章中央处理器1_第2页
K12第5章中央处理器1_第3页
K12第5章中央处理器1_第4页
K12第5章中央处理器1_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

第5章中央处理器(CPU)5.1控制器的基本概念5.2时序系统与控制方式5.3指令的执行过程5.4微程序控制原理5.5微程序设计举例5.6硬布线控制器5.7流水线处理技术15.1控制器的基本概念5.1.1控制器的功能5.1.2控制器的基本组成5.1.3控制器的实现方法控制器是计算机的控制和指挥中心,它负责对指令进行译码,产生一系列控制信号,指挥和协调计算机各部件工作。25.1.1控制器的功能1)操作控制功能2)指令顺序控制功能3)时序控制功能4)对异常和某些请求的处理功能(1)异常(2)中断(3)DMA请求或其它主控设备的总线请求35.1.2控制器的组成41)指令部件(1)程序计数器PCPC是用来提供下一条要执行的指令的地址在程序顺序执行时,由PC自动增1功能提供下一条指令的地址。(2)指令寄存器IRIR用来存放当前从主存中取出的指令。指令存放于IR中,直到被下一条取出的指令所取代。5(3)指令译码器IDID的功能是对存放IR中的操作码进行译码。经ID输出的一系列控制电位反映该指令的操作性质。(4)地址形成部件地址形成部件的功能是根据指令的寻址方式,形成有效地址。有效地址地址寄存器AR(操作数的地址)有效地址PC(跳转的目标地址)62)时序部件时序部件是用来产生机器中的各种时序信号,对各种操作实施时间上的控制。(1)脉冲源脉冲源是机器的主频信号,为机器提供时间基准。它由外接高稳定度的晶体振荡器产生,具有一定占空比。例如:占空比1/37(2)启停线路开放和封锁脉冲,控制时序信号的发生和停止;保证起动时输出的第一个脉冲和停止时的最后一个脉冲都是完整的。(3)节拍信号发生器节拍信号分为节拍电位和节拍脉冲节拍电位:用于控制数据通路中代码的传送或数据的运算。节拍脉冲(工作脉冲):用于寄存器接收代码的选通信号。83)微操作信号发生器(时序控制信号形成部件)根据指令操作码译码结果和时序信号及状态标志,产生各种操作控制信号,以便正确地建立数据通路,完成取指令和执行指令的控制。通常把许多寄存器之间传送信息的通路,称为“数据通路”。4)中断控制逻辑中断控制逻辑是用来控制中断处理的硬件逻辑,对于某些外部中断的处理,需要外部中断逻辑配合完成。95.1.3控制器的实现方法硬布线控制器根据译出的指令各字段的含义,并结合当前工作状态及时序信号,由组合逻辑电路形成微操作控制信号。微程序控制器以存储逻辑取代组合逻辑,根据指令操作码的译码转向控制存储器取出对应的微程序,由微指令提供微操作控制信号。105.2时序系统与控制方式5.2.1时序系统5.2.2时序控制方式115.2.1时序系统计算机的协调动作需要时间标志,而时间标志是用时序信号来体现的。1)指令周期和机器周期(1)指令周期完成一条指令所有操作所需要的时间,称为指令周期。指令周期通常用若干机器周期(CPU周期)表示。指令周期长短不同。12(2)机器周期为了便于对执行时间各不相同的指令进行控制,一般根据指令的操作性质和控制功能,将各指令分成一些基本操作,每一条指令由若干个不同的基本操作组成,对每一个基本操作规定一个基本时间称为机器周期。不同机器周期完成不同的操作。在时序系统中设置一组周期状态触发器,以标志不同的机器周期。任一时序只允许其中的一个触发器为1,以表明CPU当前所处的机器周期。132)节拍电位和工作脉冲(1)节拍电位一个机器周期内要完成若干个微操作,这些微操作有的可以同时进行,有的则按先后次序串行执行。每个微操作都需要一定的时间,因此需要将一个机器周期分为若干相等的时间段,每一个时间段,用一个电平信号宽度对应,称为节拍电位。节拍电位作为开门/关门控制信号。14(2)工作脉冲用于同步触发器的翻转。如:运算结果打入、周期切换。一个节拍内可以设置一个或几个工作脉冲。工作脉冲一般处于节拍后部(节拍脉冲)。若机器周期由时钟组成,脉冲的前沿将运算结果打入寄存器,后沿实现周期切换。时钟电位作为开门/关门控制信号。15节拍电位和工作脉冲配合关系163)总线周期完成一次总线操作所需的时间称为总线周期。总线周期与机器周期的区别在于总线周期是根据要求出现的。例如:8086基本的总线周期174)多级时序系统

(1)三级时序信号间的关系这些时序信号将参与形成各种微操作命令。机器周期节拍工作脉冲18(2)时钟周期的时序系统

195.2.2时序控制方式CPU的控制方式包含时序控制方式和指令执行控制方式。形成控制不同操作序列的时序信号的方法,称为时序控制方式,其实质反映了时序信号的定时方式。1)同步控制方式固定时序控制。受事先确定的时序信号所控制。每个时序信号的结束意味一个微操作的完成,随即开始进行后继的微操作。20同步控制方式可选取的三种方案:(1)定长机器周期(2)不定长机器周期。(3)中央控制与局部控制结合。同步控制方式的特点设计简单,容易实现影响指令的执行速度212)异步控制方式每条指令、每个操作控制信号需要多少时间就占用多少时间。当控制器发出某一操作控制信号后,等待执行部件完成操作后发回“回答”信号,再开始新的操作。没有统一的时钟,各功能部件拥有各自的时序信号。异步控制方式的特点没有时间上的浪费,提高了机器的效率;分散控制,比较复杂。223)联合控制方式同步控制和异步控制相结合的方式。大部分操作序列安排在固定的机器周期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束。例如CPU访问主存时,依靠其送来的“READY”信号作为读/写周期的结束。常用:部件内同步,部件间异步235.3指令的执行过程5.3.1CPU的基本功能元素5.3.2指令执行的基本过程5.3.3指令执行的微操作序列24…5.3.1CPU的基本功能元素逻辑函数启动信号二进制

存储位元读写1)门实现逻辑功能,采用电位控制数据流,无记忆功能2)存储位元存储一位数据的元件,采用脉冲打入数据,有记忆功能25例如:265.3.2指令执行的基本过程CPU的工作过程就是执行指令序列的过程。1)取指令2)分析指令

(1)指令译码产生微操作控制信号

(2)计算操作数的有效地址

(3)取操作数对于分页式或分段式存储器结构需要将有效地址与段或页基址组合形成物理地址送主存取出操作数。3)执行指令4)响应中断或DMA请求27PC285.3.3指令执行的微操作序列从指令的微操作序列说明一条指令的执行过程。微操作序列是与CPU的内部数据通路密切相关。指令格式加法指令完成的功能:

((rs1)+disp)+(rs)rd(rd、rs为同一R)设加法指令采用四个机器周期(每个机器周期包含T1、T2):

取指、计算有效地址、取数、运算及送结果操作码rs、rdrs1(源1)Imm(disp)2930311)取指PCAB访存控制命令

ADS=1(T1周期)、M/IO=1、W/R=0DBIRPC+12)计算有效地址送AR,即(rs1)+dispARrs1GR、(rs1)ALU、disp

ALU“+”ALUAR323)取数ARAB访存控制命令

ADS=1(T1周期)、M/IO=1、W/R=0DBDR4)运算及送结果、置状态标志rs、rdGR、(rs)ALU、DRALU“+”ALUGR、置N、Z、V、C标志33JCA1)取指(PC)AB访存控制命令

ADS=1(T1周期)、M/IO=1、W/R=0DBIR(PC)+12)分析执行Ifc=0thenendIfc=1thenPCALU、dispALU“+”ALUPC345.4微程序控制原理5.4.1微程序控制的基本概念5.4.2实现微程序控制的基本原理5.4.3微指令编码法5.4.4微程序流的控制5.4.5微指令格式及执行方式5.4.6微程序设计技术的应用355.4.1微程序控制的基本概念1)微命令和微操作控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,它构成控制序列的最小单位。执行部件接受微命令后所进行的操作,称为微操作,它是最基本的、不可再分解的操作。相容性的微操作:指在同一个微周期内可以并行执行的微操作。(相容性微命令)互斥性的微操作:指不能在同一个微周期内并行执行的操作。(互斥性微命令)362)微指令和微地址在一个微周期中,一组实现一定操作功能的微命令的组合,构成一条微指令(控制字)。微指令组成操作控制字段:用来发出管理和指挥全机工作的工作信号。位信息为“1”时,表示发出微命令;位信息为“0”时,表示不发微命令。顺序控制字段(下址字段):用来控制产生下一条微指令的地址。微指令存放在控制存储器中,存放微指令的控制存储器的单元地址称为微地址。373)微周期(机器周期或节拍)从控存中读取一条微指令并执行相应的一组微命令所需的全部时间4)微程序

一条机器指令的功能是用许多条微指令组成的序列来实现的,这个微指令序列称为微程序。38微程序控制计算机涉及两个层次传统机器层:机器指令工作程序主存储器微程序层:微指令微程序控制存储器395.4.2实现微程序控制的基本原理1)微程序实现加法指令设ALU能进行+、-、、四种运算40加法指令对应控制信号的序号用4个机器周期完成,每个机器周期用一条微指令产生微操作命令。取指微指令的微命令序号:

1、3、5、21、22、23计算有效地址微指令的微命令序号:

4、8、10、13、19取数微指令的微命令序号:

6、20、21、22、23运算及送结果微指令的微命令序号:

9、11、12、13、1741微指令格式12…2324…35操作控制字段顺序控制字段(PC)ABALUPCW/R设控存容量为4K字42微程序流程图的表示432)微程序控制器基本工作原理44工作过程:执行取指公共操作(0#单元开始)形成微程序入口地址MAR从CM中取微指令IR:产生一组微命令控制有关操作,通过微地址形成部件形成下址下址MAR重复3)、4)直到机器指令的微程序执行完毕。返回到取指微程序的入口,重复上述过程,直到整个程序执行完毕。453)时序信号的形成(1)二分频电路及节拍电位、工作脉冲的产生CP=T2·CLK·CLK246(2)打入脉冲的形成方法一:控制信号“与”CP47

方法二:直接用CP48(3)特殊控制信号的产生例如:ADS49(4)访存需要等待的处理方法505.4.3微指令编码法微指令编码是指对操作控制字段的编码。实质:在微指令中如何组织微命令。典型的微指令编译法有:1)直接控制法2)最短字长编码法3)字段直接编码法4)字段间接编码法5)常数源字段E511)直接控制法操作控制字段中的每一位代表一个微命令。优点:简单直观,其输出直接用于控制,并行性强,速度快。缺点:微指令字较长,因而使控制存储器容量较大。522)最短字长编码法所有微命令统一编码,每条微指令只定义一个微命令。Llog2n优点:微指令字最短。缺点:译码复杂,不能充分利用硬件的并行性,微程序长,速度慢,对要求同时动作的组和性微操作无法实现。533)字段直接编码法把一组互斥性的微命令信号组成一个字段,然后通过字段译码器对每一个微命令信号进行译码,译码输出作为操作控制信号。54优点:用较少的二进制信息位表示较多的微命令信号。缺点:使微程序的执行速度减慢。例如:3位二进制位译码后可表示7个微命令,4位二进期位译码后可表示15个微命令。55例题:某运算器数据通路如图。

①指出哪些微操作是互斥的,哪些是相容的。

②分别用直接控制法和字段直接编译法设计适合该运算器的微指令格式中的操作控制字段。解:①互斥微操作:IRA、R1A、R2A、R3A互斥;R1B、R2B、R3B互斥;+、-、M互斥。相容微操作:A选通门的任一个微操作与B选通门的任一个微操作相容;LDR1、LDR2、LDR3相容。5657②直接控制法操作控制字段:58字段直接编码法操作控制字段ALUBUSLDR1LDR2LDR31232111

00无

01+10-11M

000无

001IRA010R1A011R2A100R3A00无01R1B10R2B11R3B594)字段间接编码法一个字段的某些编码不独立地定义某些微命令,而与其他字段联合定义。60例如:有一ALU,它能完成8种不同的算术运算和8种不同的移位运算,用1位字段指示是算术运算还是移位运算,3位字段指示是8种操作中的某一种。5)常数源字段E通常把直接控制法与字段编码法相混合使用,以便能综合考虑微指令字长、灵活性和执行微程序速度等方面的要求。目标:减少微指令字长,增强微操作的并行性。615.4.4微程序流的控制1)微程序入口地址的形成OP微程序入口地址一级功能转换——机器指令的OP位数、位置固定(定长、定位置)二级功能转换——同类机器指令的OP位数、位置固定,不同类机器指令的OP位数、位置不固定MAPROM——机器指令的OP位数、位置不固定(变长、变位置)62采用映像存储器MAPROM(2716)63(1)增量与下址字段结合方式微指令顺序控制部分分成:转移控制字段BCF转移地址字段BAF当微程序转移时,将BAF送微程序计数器(μPC),否则顺序执行下一条微指令(μPC加1)。2)后继微地址的形成

6465(2)多路转移方式(断定方式)一条微指令具有多个转移分支的能力称为多路转移。当微程序不产生分支时,后继微地址直接由微指令的下址字段给出;当微程序出现分支时,有若干“后选”微地址可供选择。下址字段由两部分组成:非测试段:由设计者指定,一般为微地址的高位。测试段:根据有关状态位的测试确定后继微地址,一般为微地址低位部分。66测试段有1位标志,可实现微程序2路转移;测试段有2位标志,可实现微程序4路转移。①实现两路转移②实现四路转移③实现三路转移673)微程序定序器Am291068I3—I0功能2无条件转至微程序入口(/MAP=0)。3若/CC=0,则下条微指令地址来自当前微指令的下址字段(/PL=0);若/CC=1,则顺序执行(来自PC)。4进栈且条件装入计数器。把下条微指令的地址压入微堆栈,若/CC=0,则把当前微指令的下址字段内容装入计数器,然后顺序执行。8重复循环。

前提:已使用4号命令,循环首址压入微堆栈,循环次数装入计数器。若R/C0,则R/C减1,微堆栈栈顶的内容作为下条微指令的地址。若R/C=0,则(SP)-1SP(弹栈),顺序执行下条微指令。14无条件顺序执行(来自PC)。153路转移。前提同8号。F、D(/PL=0)、PC若R/C0,则R/C减1:

若/CC=0,弹栈,选择PC;若/CC=1,选择F(栈顶)。若R/C=0,弹栈:

若/CC=0,选择PC;若/CC=1,后继微指令地址来自当前微指令的地址字段。695.4.5微指令格式及执行方式1)微指令格式水平型微指令一次能定义并执行多个并行操作微命令的微指令,称为水平型微指令。垂直型微指令控制字段的设置采用编码法,由微操作码规定微指令的功能,称为垂直型微指令。垂直型微指令的结构类似于机器指令的结构。它有操作码,在一条微指令中只有1-2个微操作命令,每条微指令的功能简单。它是采用较长的微程序结构去换取较短的微指令结构。70

(3)水平与垂直的比较:水平特征垂直特征不编码高度编码控制字段多位微指令字较短高度并行并行能力差硬件细节观点硬件总体观点编程困难编程容易很少或没有控制逻辑复杂的控制逻辑

温馨提示

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

评论

0/150

提交评论