《组成原理课程第六章.ppt》由会员分享,可在线阅读,更多相关《组成原理课程第六章.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第六章第六章 中央处理器中央处理器计算机组成原理计算机组成原理本章知识点本章知识点6.1 CPU6.1 CPU的功能和基本结构的功能和基本结构 CPU的基本功能和常见的CPU基本结构6.2 6.2 指令执行的过程指令执行的过程 1)数据通路的概念及组成 2)指令周期流程图6.36.3时序与控制器时序与控制器6.46.4微程序控制器的工作原理微程序控制器的工作原理 1)微程序控制的基本概念 2)微程序控制器的组成原理 3)微指令的编码方法 4)微程序设计举例6.56.5硬布线控制器的工作原理硬布线控制器的工作原理 1)硬布线控制器的模型 2)硬布线控制器的基本原理与设计方法2计算机组成原理计算
2、机组成原理6.1 CPU6.1 CPU的功能和基本结构的功能和基本结构(1)(1)指令执行顺序的控制指令执行顺序的控制:控制程序中的指令按事先规定的顺序自动地执行。控制程序中的指令按事先规定的顺序自动地执行。(2)(2)指令的操作控制:指令的操作控制:产生指令执行过程中所需要的信号,以控制执行部件按指令规定产生指令执行过程中所需要的信号,以控制执行部件按指令规定的操作运行。的操作运行。(3)(3)时间控制:时间控制:对各控制信号进行定时,以便按规定的时间顺序启动各操作。对各控制信号进行定时,以便按规定的时间顺序启动各操作。(4)(4)异常和中断处理:异常和中断处理:处理运算中的异常及处理外部设
3、备的中断服务请求等。处理运算中的异常及处理外部设备的中断服务请求等。(5)(5)数据加工处理:数据加工处理:对数据进行算术、逻辑运算,或将数据在相关部件之间传送。对数据进行算术、逻辑运算,或将数据在相关部件之间传送。1.CPU1.CPU的基本功能的基本功能3计算机组成原理计算机组成原理2.CPU2.CPU的基本结构的基本结构4计算机组成原理计算机组成原理5计算机组成原理计算机组成原理1)1)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:程序计数器程序计数器PCPC给出并指示下一条指令的地址给出并指示下一条指令的地址完成顺序控制的功能完成顺序控制的功能内容在取指完成后即可改变内容在取
4、指完成后即可改变 转移指令直接修改转移指令直接修改PCPC值值计算机组成原理计算机组成原理保存当前正执行的指令保存当前正执行的指令指令的操作码字段和寻址方式送译码指令的操作码字段和寻址方式送译码2)2)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:指令寄存器指令寄存器IRIR7计算机组成原理计算机组成原理 对对指令的指令的OPOP字段和寻址方式译码,指出指令的操作方式字段和寻址方式译码,指出指令的操作方式译码的结果是找到与该指令相关的微程序的入口译码的结果是找到与该指令相关的微程序的入口3)3)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:指令译码器指令译码器IDID8
5、计算机组成原理计算机组成原理产生指令执行过程中所需要的控制信号产生指令执行过程中所需要的控制信号 实现指令的操作控制功能实现指令的操作控制功能4)4)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:操作控制器操作控制器OCOC9计算机组成原理计算机组成原理 5)5)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:时序产生器时序产生器对对操作控制信号进行同步操作控制信号进行同步 实现控制器的时间控制功能实现控制器的时间控制功能计算机组成原理计算机组成原理6)6)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:数据缓冲寄存器数据缓冲寄存器DRDR保存与主存之间交换的数
6、据保存与主存之间交换的数据11计算机组成原理计算机组成原理7)7)控制器中各主要功能部件的作用控制器中各主要功能部件的作用:地址寄存器地址寄存器ARAR存放存放CPU将要访问的主存单元地址将要访问的主存单元地址12计算机组成原理计算机组成原理6.2 6.2 指令执行的过程指令执行的过程1.1.数据通路的概念及组成数据通路的概念及组成 数据通路数据通路:数据在功能部件之间传送的路径;数据在功能部件之间传送的路径;数据在数据通路中的传送操作是在控制信号的控制下进行的;数据在数据通路中的传送操作是在控制信号的控制下进行的;数据通路的建立可用总线或专用通路两种方法来构建;数据通路的建立可用总线或专用通
7、路两种方法来构建;不同功能的指令及同一指令在执行的不同阶段的数据通路可不同;不同功能的指令及同一指令在执行的不同阶段的数据通路可不同;数据通路的结构直接影响数据通路的结构直接影响CPUCPU内各种信息的传送路径、指令执行流程、内各种信息的传送路径、指令执行流程、所需要的微操作控制信号及其时序安排和控制器的设计;所需要的微操作控制信号及其时序安排和控制器的设计;13计算机组成原理计算机组成原理2.2.指令周期流程指令周期流程1)1)程序控制的过程程序控制的过程,本质上是由控制器根据程序所包含的指令序列,本质上是由控制器根据程序所包含的指令序列,逐条执行指令的过程。逐条执行指令的过程。2)2)指令
8、周期指令周期一条指令从取出到执行完成所需时间一条指令从取出到执行完成所需时间3)3)指令周期划分指令周期划分(1)(1)取指令周期取指令周期:根据根据PCPC的值取去主的值取去主存储取指令;存储取指令;如何形成后续指令地址。如何形成后续指令地址。(a)(a)顺序执行指令时,将顺序执行指令时,将PCPC内容加当内容加当 前指令所占用的主存单元数前指令所占用的主存单元数 (b)(b)当出现转移时,根据寻址方式、转当出现转移时,根据寻址方式、转移条件、转移的目标地址等内容计算得移条件、转移的目标地址等内容计算得到。到。14计算机组成原理计算机组成原理(2)(2)译码译码/取操作数周期取操作数周期 对
9、指令寄存器中的操作码字段进行译对指令寄存器中的操作码字段进行译码并识别指令类型码并识别指令类型 根据指令地址码和寻址方式,从寄存根据指令地址码和寻址方式,从寄存器或存储器中读取操作数。器或存储器中读取操作数。不同的寻址方式可能具有不同的取操不同的寻址方式可能具有不同的取操作数周期。作数周期。算术运算类指令大都要求双操作数,算术运算类指令大都要求双操作数,因此,取操作数流程要经历两次,第因此,取操作数流程要经历两次,第一次取源操作数,操作流程由源寻址一次取源操作数,操作流程由源寻址方式字段确定,第二次取目的操作数,方式字段确定,第二次取目的操作数,操作流程由目的寻址字段确定。操作流程由目的寻址字
10、段确定。15计算机组成原理计算机组成原理(3)(3)执行周期执行周期 控制器向算术逻辑运算单元及数据通控制器向算术逻辑运算单元及数据通路中的其它相关部件发送操作控制命路中的其它相关部件发送操作控制命令,完成由指令操作码规定的动作,令,完成由指令操作码规定的动作,包括传送结果及记录状态信息。包括传送结果及记录状态信息。操作结果送到哪里由寻址方式确定;操作结果送到哪里由寻址方式确定;状态信息状态信息(如溢出如溢出)记录在记录在PSWPSW中中;对对转移指令还需在执行周期内计算机转移指令还需在执行周期内计算机移地址。移地址。(4)(4)写回写回将运算结果写到结果寄存器或存储器。将运算结果写到结果寄存
11、器或存储器。写回存储器时间较长写回存储器时间较长,一般需要多个时一般需要多个时钟周期。钟周期。16计算机组成原理计算机组成原理3.3.寄存器级传送语言寄存器级传送语言RTL(RegisterRTL(Register Transfer Language)Transfer Language)为统一表示指令执行流程,采用寄存器描述语言表示指令执行过程中为统一表示指令执行流程,采用寄存器描述语言表示指令执行过程中的操作,使用的操作,使用RTLRTL的规则如下:的规则如下:1)1)用用()()表示读取寄存器或主存地址的内容,如(表示读取寄存器或主存地址的内容,如(PCPC)表示读取)表示读取PCPC寄寄
12、存器中的内容;存器中的内容;2)2)用用 表示主存单元地址或寄存器堆中寄存器的编号,则:表示主存单元地址或寄存器堆中寄存器的编号,则:M6M6表示主存表示主存6 6号单元,号单元,(M6)(M6)表示读取主存表示读取主存6 6号单元的数据;号单元的数据;R6R6表示寄存器堆中表示寄存器堆中6 6号寄存器,号寄存器,(R6)(R6)表示读取寄存器堆中表示读取寄存器堆中6 6号号寄存器的数据;寄存器的数据;M(R6)M(R6)表示寄存器堆中表示寄存器堆中6 6寄存器内容所指主存单元寄存器内容所指主存单元;(M(R6);(M(R6)表示读取寄存器堆中表示读取寄存器堆中6 6寄存器内容所指主存单元的内
13、容。为简化对主寄存器内容所指主存单元的内容。为简化对主存单元的表示和访问,将它们分别简化成存单元的表示和访问,将它们分别简化成MR6MR6和(和(MR6MR6)。)。3)3)用用“A AB”B”表示数据传送,其中表示数据传送,其中B B为数据源,为数据源,A A为目的端;为目的端;17计算机组成原理计算机组成原理4.4.指令操作流程指令操作流程:基于单总线结构的处理器基于单总线结构的处理器 18计算机组成原理计算机组成原理根据指令周期的概念,任何指令第一个根据指令周期的概念,任何指令第一个CPUCPU周期都是取指周期,取指周期都是取指周期,取指周期中周期中CPUCPU要完成以下三件事:要完成以
14、下三件事:(1)(1)根据根据PCPC的内容取出指令并送指令寄存器的内容取出指令并送指令寄存器IRIR中保存中保存(本书假定程序本书假定程序首地址已存放在首地址已存放在PCPC中中);(2)(2)修改修改PCPC的值;(这里假定计算机字长的值;(这里假定计算机字长8 8位,采用单字长指令,主位,采用单字长指令,主存按字节编址);存按字节编址);(3)(3)对指令的操作码进行译码或测试,以确定指令在执行阶段将要具对指令的操作码进行译码或测试,以确定指令在执行阶段将要具体进行何种操作。体进行何种操作。19计算机组成原理计算机组成原理(1)(1)LOAD LOAD 指令周期流程指令周期流程R0 R0
15、 (M6):(M6):将主存将主存6 6号单元内容送号单元内容送R0,RSR0,RS型指令型指令取指阶段的操作取指阶段的操作 MAR MAR(PC)(PC)X X (PC)(PC)Z Z ALU ALU PC PC (Z)(Z)MDR MDR (MMAR)(MMAR)IR IR(MDR)(MDR)各操作对应的控制信号各操作对应的控制信号PCoutPCout=ARinARin=1=1XinXin=1=1+1+1ZoutZout=PCinPCin=1=1Read=Read=DREinDREin=1=1DRIoutDRIout=IRinIRin=1=1(a)(a)取指取指CPUCPU周期用到两条数据
16、通路:周期用到两条数据通路:PC MAR MEM MDR IR PC MAR MEM MDR IR PC X ALU Z PCPC X ALU Z PC(b)(b)执行阶段用到的数据通路:执行阶段用到的数据通路:IRIRA A MAR MEM MDR R0 MAR MEM MDR R0 20计算机组成原理计算机组成原理(1)(1)LOAD LOAD 指令周期流程指令周期流程R0 R0 (M6):(M6):将主存将主存6 6号单元内容送号单元内容送R0,RSR0,RS型指令型指令执行阶段用到的数据通路:执行阶段用到的数据通路:IRIRA A MAR MEM MDR R0 MAR MEM MDR
17、R0 执行阶段的操作执行阶段的操作 MAR MAR (IRA)(IRA)MDR MDR (MMAR)(MMAR)R0 R0 (MDR)(MDR)各操作对应的控制信号各操作对应的控制信号IRoutIRout=ARinARin=1=1Read=Read=DREinDREin=1=1 DRIoutDRIout=R0in=1=R0in=1 21计算机组成原理计算机组成原理(2)(2)MOVE 指令周期流程指令周期流程R1 R1 (IR(IRA A):将来自于:将来自于IRIR形式地址字段的立即数形式地址字段的立即数1010送送R1R1,RRRR型指令型指令 执行阶段的操作执行阶段的操作 R1 R1 (
18、IRA)(IRA)对应的控制信号对应的控制信号 IRoutIRout=R1in=1=R1in=1 执行执行CPUCPU周期用到的数据通路:周期用到的数据通路:IR R1 IR R1 指令中的立即数送指令中的立即数送R1R1。22计算机组成原理计算机组成原理(3)(3)ADD 指令周期流程指令周期流程R0 R0 (R0)+(R1):(R0)+(R1):将将R0R0和和R1R1相加,结果送相加,结果送R0R0,RRRR型指令型指令 执行阶段的操作执行阶段的操作 X X (R0)(R0)Z Z ALU ALU R0 R0 (Z)(Z)对应的控制信号对应的控制信号 R0out=R0out=XinXin
19、=1=1 R1out=1=R1out=1=ADD=1ADD=1 ZoutZout=R0in=1=R0in=1 执行执行CPUCPU周期用到的数据通路:周期用到的数据通路:R0 X ALU R0 X ALU;R1 ALUR1 ALU 加数和被加数送加数和被加数送ALUALU输入端输入端 ALU Z R0 ALU Z R0 运算结果经运算结果经Z Z写回寄存器写回寄存器R0R0。23计算机组成原理计算机组成原理(4)(4)STORE 指令周期流程指令周期流程MR2 MR2 (R0):(R0):将将R0R0内容送内容送R2R2内容所指主存单元保存内容所指主存单元保存,RSRS型指令型指令 执行阶段的
20、操作执行阶段的操作 MAR MAR(R2)(R2)MDR MDR(R0)(R0)MR2MR2(MDR(MDR)对应的控制信号对应的控制信号 R2out=R2out=ARinARin=1=1 R0out=R0out=DRIinDRIin=1=1 DREoutDREout=Write=1=Write=1 执行执行CPUCPU周期用到的数据通路:周期用到的数据通路:R2 MAR R2 MAR 传送地址;传送地址;R0 MDR MEM R0 MDR MEM 往主存存数据。往主存存数据。指令的执行需要两个指令的执行需要两个CPUCPU周期,执行阶周期,执行阶段的第一个段的第一个CPUCPU送地址,即将寄
21、存器送地址,即将寄存器R2R2的内容的内容MARMAR;执行阶段第二个;执行阶段第二个CPUCPU周期内周期内将将R0R0的值送的值送MDRMDR,然后存入,然后存入MARMAR指向的内指向的内存单元存单元 24计算机组成原理计算机组成原理(5)(5)JMP 指令周期流程指令周期流程PC PC (IRA):(IRA):将将10001000送入送入PCPC,实现无条件转移,实现无条件转移 执行阶段的操作执行阶段的操作 PC PC (IRA)(IRA)对应的控制信号对应的控制信号 IRoutIRout=PCinPCin=1=1 执行执行CPUCPU周期用到的数据通路:周期用到的数据通路:IRA P
22、C IRA PC 25计算机组成原理计算机组成原理6.36.3时序与控制器时序与控制器1.1.中央处理器的时序中央处理器的时序 过去的计算机采用主状态周期、节拍电位和节拍脉冲三级时序体制过去的计算机采用主状态周期、节拍电位和节拍脉冲三级时序体制来对操作控制信号进行定时控制来对操作控制信号进行定时控制.主状态周期主状态周期:一般对应指令的执行时间一般对应指令的执行时间 节拍电位节拍电位:对应指令执行的不同周期对应指令执行的不同周期,如取指周期如取指周期,以主存的工作周期为基础以主存的工作周期为基础 节拍脉冲节拍脉冲:完成一次微操作所需要的时间完成一次微操作所需要的时间 26计算机组成原理计算机组
23、成原理2.2.启停控制电路启停控制电路 启停控制逻辑的作用是保证节拍和脉冲启停控制逻辑的作用是保证节拍和脉冲信号的完整性。即启动从第一个信号的完整性。即启动从第一个CPUCPU周期周期的第一个节拍脉冲前沿开始工作,停机在的第一个节拍脉冲前沿开始工作,停机在一个一个CPUCPU周期的最后一个节拍脉冲的下降周期的最后一个节拍脉冲的下降沿结束。只有这样才能保证时序信号脉冲沿结束。只有这样才能保证时序信号脉冲的完整性和指令功能的完整性。的完整性和指令功能的完整性。27计算机组成原理计算机组成原理6.4 6.4 微程序控制器的工作原理微程序控制器的工作原理1.1.微程序控制的基本概念微程序控制的基本概念
24、 微程序设计技术是利用软件方法来设计硬件的技术微程序设计技术是利用软件方法来设计硬件的技术 微程序控制的基本思想微程序控制的基本思想仿照程序设计的方法,把完成每条仿照程序设计的方法,把完成每条指令指令所需要的操作控制信号编写成所需要的操作控制信号编写成微指令微指令,存放到一个只读存储器,存放到一个只读存储器(控存控存)中。每条机器指令对应一段微中。每条机器指令对应一段微程序,当机器执行程序,当机器执行程序程序时依次读出每条指令所对应的微指令时依次读出每条指令所对应的微指令,执行每条执行每条微指令中规定的微操作微指令中规定的微操作,从而完成指令的功能从而完成指令的功能,重复这一过程重复这一过程,
25、直到该程直到该程序的所有指令完成序的所有指令完成.微程序控制器的设计采用了存储技术和程序设计技术,使复杂的微程序控制器的设计采用了存储技术和程序设计技术,使复杂的控制逻辑得到简化,从而推动了微程序控制器的广泛应用控制逻辑得到简化,从而推动了微程序控制器的广泛应用.28计算机组成原理计算机组成原理程序程序微微指令指令微微程序程序29计算机组成原理计算机组成原理1)1)微命令和微操作微命令和微操作控制部件与执行部件之间的联系控制部件与执行部件之间的联系控制部件控制部件执行部件执行部件控制线控制线反馈线反馈线 微命令微命令控制部件通过控制线向执行部件发出的各种控制信号控制部件通过控制线向执行部件发出
26、的各种控制信号(打开和关闭控制门打开和关闭控制门)微操作微操作执行部件接受微命令后所进行的操作执行部件接受微命令后所进行的操作 反馈线的作用反馈线的作用向控制部件反馈执行的状态信息,以便控制部件进行状态测试向控制部件反馈执行的状态信息,以便控制部件进行状态测试30计算机组成原理计算机组成原理2)2)微操作的分类微操作的分类微微操作是计算机中最基本的操作,由于数据通路、逻辑功操作是计算机中最基本的操作,由于数据通路、逻辑功能的关系,微操作可以分为相容性的和相斥性的微操作:能的关系,微操作可以分为相容性的和相斥性的微操作:相容性的微操作相容性的微操作能能同时同时并行执行的微操作并行执行的微操作相斥
27、性的微操作相斥性的微操作不能同时并行执行的微操作不能同时并行执行的微操作31计算机组成原理计算机组成原理图中相斥性的微操作有:图中相斥性的微操作有:(+(+、M)(4M)(4、6 6、8)(58)(5、7 7、9)9)图中相容性的微操作有:图中相容性的微操作有:1 1、2 2、3 3(4(4、6 6、8)8)与与 (5(5、7 7、9)9)两组中各取一个任意组合两组中各取一个任意组合32计算机组成原理计算机组成原理1)1)控制存储器:控制存储器:存放用来实现全部指令的所有微程序,是一种只读存储器,微程序固化存放用来实现全部指令的所有微程序,是一种只读存储器,微程序固化在其中,其容量取决于机器指
28、令和每条指令微程序的长度,字长取决于在其中,其容量取决于机器指令和每条指令微程序的长度,字长取决于微指令的字长,也与容量有一定关系微指令的字长,也与容量有一定关系(!)。要求控制存储器快速。要求控制存储器快速。2.2.微程序控制器的组成原理微程序控制器的组成原理 33计算机组成原理计算机组成原理2)2)微指令寄存器微指令寄存器(IRIR)存放从控存中读出的微指令存放从控存中读出的微指令 是图中的哪部分是图中的哪部分?3)3)微地址寄存器微地址寄存器(ARAR)存储访问存储访问CMCM的微地址的微地址34计算机组成原理计算机组成原理4)4)微地址产生逻辑微地址产生逻辑用于产生后续微指令地址。能作
29、为后继微指令地址的有下列形式:用于产生后续微指令地址。能作为后继微指令地址的有下列形式:微程序的入口地址微程序的入口地址 顺序地址顺序地址 转移地址转移地址35计算机组成原理计算机组成原理3.3.微指令的的格式与微命令编码微指令的的格式与微命令编码 1)1)微指令的格式微指令的格式 操作控制字段是微指令的主体,由若干微命令位组成。控制操作控制字段是微指令的主体,由若干微命令位组成。控制字段中的每一位通常表示一个特定的微命令,微指令是否含某字段中的每一位通常表示一个特定的微命令,微指令是否含某个微命令,由该位的状态个微命令,由该位的状态1 1或或0 0决定。决定。判别测试字段指出微指令执行过程中
30、需要测试的外部条件,判别测试字段指出微指令执行过程中需要测试的外部条件,如进位、运算结果是否为零等;如进位、运算结果是否为零等;下地址字段给出的地址是下条微指令地址,最终是否按照该下地址字段给出的地址是下条微指令地址,最终是否按照该地址执行下一条微指令与是否进行条件测试及测试条件是否成地址执行下一条微指令与是否进行条件测试及测试条件是否成立等有关。立等有关。36计算机组成原理计算机组成原理 微命令编码就是微指令中的操作控制字段采用的表示方法微命令编码就是微指令中的操作控制字段采用的表示方法(1)(1)直接表示法直接表示法 操作字段的每一位表示一个微命令操作字段的每一位表示一个微命令 优点优点:
31、简单、直观,简单、直观,缺点缺点:微指令字长、不利于减少控存容量微指令字长、不利于减少控存容量2)2)微指令的格式微指令的格式37计算机组成原理计算机组成原理(2)(2)编码表示法编码表示法把一组把一组互斥的信号组成一个小组,然后通过小组译码器译码,译码输互斥的信号组成一个小组,然后通过小组译码器译码,译码输出将作为操作控制信号。每次每个小组最多只能有一个有效。出将作为操作控制信号。每次每个小组最多只能有一个有效。译码译码译码译码译码译码译码译码字段字段1字段字段2字段字段3P字段字段下地址字段下地址字段微微 命命 令令 若某小组有若某小组有4 4个微命令,则微指令中该字段需要多少位?个微命令
32、,则微指令中该字段需要多少位?需要需要3 3位位,为什么?为什么?因为每字段经过译码后,要有一个状态表示不使用本组中的微命令。因为每字段经过译码后,要有一个状态表示不使用本组中的微命令。38计算机组成原理计算机组成原理编码表示法的优点编码表示法的优点:大大缩短微指令字的长度,从而减少控存的容量。大大缩短微指令字的长度,从而减少控存的容量。编码表示法的缺点:编码表示法的缺点:增加的译码电路降低了微指令的执行速度。增加的译码电路降低了微指令的执行速度。(3)(3)混合表示法混合表示法综合前面的直接表示法和编码表示法综合前面的直接表示法和编码表示法.关于微命令编码的结论关于微命令编码的结论:目前一般
33、使用字段直接表示法目前一般使用字段直接表示法.39计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例LOADLOAD指令取指周期的操作及控制信号指令取指周期的操作及控制信号40计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例MOVEMOVE指令取指周期的操作及控制信号指令取指周期的操作及控制信号41计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例ADD ADD 指令取指周期的操作及控制信号指令取指周期的操作及控制信号42计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例STORE STORE 指令取指周期的操作及控制信号指令取指周期的
34、操作及控制信号43计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例JMP JMP 指令取指周期的操作及控制信号指令取指周期的操作及控制信号44计算机组成原理计算机组成原理4.4.微程序设计举例微程序设计举例 各指令操作系列顺序的安排必须保证指令功能的正确实现。如取指令阶段各指令操作系列顺序的安排必须保证指令功能的正确实现。如取指令阶段MAR MAR(PC)(PC)操作一定要在操作一定要在IR IR(MDR)(MDR)之前完成,否则取出出错;之前完成,否则取出出错;同一节拍内不能同时有两个或两个以上的部件向公共总线输出信息。如取指阶同一节拍内不能同时有两个或两个以上的部件向公共总
35、线输出信息。如取指阶段段PCoutPCout、ZoutZout和和DRIoutDRIout必须被分别安排在不同的节拍内;必须被分别安排在不同的节拍内;上述指令微操作序列实现,重在描述实现方法,并不是优化;上述指令微操作序列实现,重在描述实现方法,并不是优化;指令执行不同周期所需要的节拍数可能不同,上述安排采用了同步控制方法,指令执行不同周期所需要的节拍数可能不同,上述安排采用了同步控制方法,每个周期都分配了四个节拍,因此,部分指令有些周期中存在一些空节拍,没每个周期都分配了四个节拍,因此,部分指令有些周期中存在一些空节拍,没有任何微操作。有任何微操作。45计算机组成原理计算机组成原理5.5.微
36、命令的同步微命令的同步 微程序存放在控存中,每条指令的微程序包含几条微指令微程序存放在控存中,每条指令的微程序包含几条微指令(包括取指包括取指令微指令令微指令)就表示该指令的执行需要几个就表示该指令的执行需要几个CPUCPU周期。周期。微命令自从控存中取出并送入微指令寄存器后就开始生效,直到新的微命令自从控存中取出并送入微指令寄存器后就开始生效,直到新的微指令送入微指令寄存器微指令送入微指令寄存器(一个一个CPUCPU周期的时间周期的时间)一条微指令的若干个微命令中一条微指令的若干个微命令中,大部分微命令只能在一个大部分微命令只能在一个CPUCPU周的某周的某个个T T周期有效,必须对微命令进
37、行时间同步后才能与相应执行部件的周期有效,必须对微命令进行时间同步后才能与相应执行部件的控制端相连。控制端相连。46计算机组成原理计算机组成原理 微命令同步的基本方法就是列出每个微命令的逻辑表达式,并用相应微命令同步的基本方法就是列出每个微命令的逻辑表达式,并用相应的逻辑电路实现表达式的功能,电路的输入来自微指令的相关位和时序的逻辑电路实现表达式的功能,电路的输入来自微指令的相关位和时序信号(包括节拍电位或节拍脉冲),对应逻辑电路的输出才能与相应执信号(包括节拍电位或节拍脉冲),对应逻辑电路的输出才能与相应执行部件的控制端相连。行部件的控制端相连。下面以下面以ZoutZout为例说明微命令的同
38、步方法。为例说明微命令的同步方法。Zout=M取指周期ZoutT2+ADD M执行周期ZoutT3。47计算机组成原理计算机组成原理6.56.5硬布线控制器的工作原理硬布线控制器的工作原理 1.1.硬布线控制器的模型硬布线控制器的模型1)1)组合逻辑控制单元组合逻辑控制单元 是控制器的核心,产生指令执行所需是控制器的核心,产生指令执行所需要的控制信号要的控制信号(包括控制电位与打入包括控制电位与打入脉冲脉冲),可采用组合逻辑电路或可编,可采用组合逻辑电路或可编程阵列逻辑或程阵列逻辑或ROMROM实现实现.输入来自输入来自:指令码译码器的输出;指令码译码器的输出;条件状态寄存器的状态标志信息;条
39、件状态寄存器的状态标志信息;来自时序电路的节拍信号,包括节来自时序电路的节拍信号,包括节拍电位信号拍电位信号M1M1MiMi和节拍脉冲信号和节拍脉冲信号T1T1TmTm。48计算机组成原理计算机组成原理1.1.硬布线控制器的模型硬布线控制器的模型2)指令寄存器和指令译码器指令寄存器和指令译码器3)节拍电路节拍电路4)周期电路周期电路5)条件状态寄存器条件状态寄存器49计算机组成原理计算机组成原理2.2.硬布线控制器的基本原理与设计方法硬布线控制器的基本原理与设计方法 分析指令执行的数据通路,列出每条指令在所有寻址方式下的执行操分析指令执行的数据通路,列出每条指令在所有寻址方式下的执行操作流程和
40、每一步所需要的控制信号;作流程和每一步所需要的控制信号;对指令的操作流程进行细化,将每条指令的每个微操作分配到具体机对指令的操作流程进行细化,将每条指令的每个微操作分配到具体机器周期的各时间节拍上,即对操作控制信号进行同步控制器周期的各时间节拍上,即对操作控制信号进行同步控制;对每一个控制信号进行逻辑综合,得到每个控制信号的逻辑表达式。对每一个控制信号进行逻辑综合,得到每个控制信号的逻辑表达式。在对控制信号进行逻辑综合的过程中,要考虑每一个控制信号在不同在对控制信号进行逻辑综合的过程中,要考虑每一个控制信号在不同指令、不同指令、不同CPUCPU周期和不同节拍脉冲的有效情况,不能遗漏,否则对应周
41、期和不同节拍脉冲的有效情况,不能遗漏,否则对应的指令将由于缺少控制信号而不能正确执行。为了防止遗漏,设计时的指令将由于缺少控制信号而不能正确执行。为了防止遗漏,设计时可按信号出现在指令流程图中的先后次序书写,然后进行归纳可按信号出现在指令流程图中的先后次序书写,然后进行归纳;最后采用逻辑门或最后采用逻辑门或PLAPLA或或ROMROM实现逻辑表达式的功能。实现逻辑表达式的功能。1)1)硬布线控制器的设计流程硬布线控制器的设计流程50计算机组成原理计算机组成原理 XinXin在所有指令取指周期的在所有指令取指周期的T0T0节拍和节拍和ADDADD指令取操作数周期的指令取操作数周期的T0T0节拍有
42、效,对应节拍有效,对应的逻辑表达式为:的逻辑表达式为:XinXin=M=MFTFTT0+ADDMT0+ADDMSTSTT0 T0 其中其中M MFTFT和和M MSTST分别两个取指周期分别两个取指周期和取操作数周期;和取操作数周期;ADDADD是加法指令是加法指令OPOP字段译码器的输出。字段译码器的输出。ZoutZout在所有指令取指周期的在所有指令取指周期的T2T2节拍和节拍和ADDADD指令取操作数周期的指令取操作数周期的T3T3节拍有效,逻节拍有效,逻辑表达式为:辑表达式为:ZoutZout=M=MFTFTT2+ADDMT2+ADDMSTSTT3T3 IRoutIRout 在在LOA
43、DLOAD和和MOVEMOVE指令的取操作数周期的指令的取操作数周期的T0T0节拍和节拍和JMPJMP指令的执行周期的指令的执行周期的T2T2节拍有效,逻辑表达式为:节拍有效,逻辑表达式为:IRoutIRout=LOADMSTT0 +MOVEMSTT0+JMPMETT2=LOADMSTT0 +MOVEMSTT0+JMPMETT2 =(LOAD+MOVELOAD+MOVE)MSTT0 +JMPMETT2MSTT0 +JMPMETT251计算机组成原理计算机组成原理产生产生XinXin、ZoutZout、IRoutIRout三个控制信号的硬布线控制器三个控制信号的硬布线控制器 52计算机组成原理计算机组成原理本章小结本章小结6.1 CPU6.1 CPU的功能和基本结构的功能和基本结构6.2 6.2 指令执行的过程指令执行的过程6.36.3时序与控制器时序与控制器6.46.4微程序控制器的工作原理微程序控制器的工作原理6.56.5硬布线控制器的工作原理硬布线控制器的工作原理 本章以单总线结构的本章以单总线结构的CPUCPU为例,介绍了下列知识:为例,介绍了下列知识:教材中还大量介绍了基于专用通路教材中还大量介绍了基于专用通路CPUCPU结构的微程序和硬布线结构的微程序和硬布线控制器的设计方法,请大家课后对照学习。控制器的设计方法,请大家课后对照学习。53
限制150内