计算机组成原理新课件第五章中央处理器.ppt
《计算机组成原理新课件第五章中央处理器.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理新课件第五章中央处理器.ppt(138页珍藏版)》请在三一办公上搜索。
1、第五章 中央处理器,5.1 CPU的功能和组成5.2 指令周期5.3 时序产生器和时序控制方式5.4 硬布线控制器5.5 微程序控制器5.6 微程序设计技术,5.1 CPU的功能和组成,CPU(Central Process Unit):计算机系统的核心部件,由运算器和控制器构成.,5.1.1 CPU的功能,指令控制:产生下一条指令在内存中的地址;,操作控制:产生各种操作信号送往相应部件,以控制完成指令所要求的动作;,时序控制:对各种操作信号实施时间上的控制,以保证计算机有条不紊地连续自动工作;,数据加工:执行所有的算术运算和逻辑运算,并进行逻辑测试;,异常处理和中断处理,MDR,译码器,时序
2、与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,GPR,GPR,MAR,AB,内部总线,内部总线,5.1.2 CPU的组成 1.控制器的构成 指令部件:程序计数器(PC)、指令寄存器(IR)、指令译码器(ID-Instruction Decoder)、地址形成部件等;时序部件:脉冲源、启挺控制逻辑、节拍信号发生器等;,ALU,图5.1 CPU内部组成,MDR,译码器,时序与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,GPR,GPR,MAR,AB,内部总线,内部总线,ALU,5.1.2 CPU的
3、组成1.控制器的构成中断控制逻辑 微操作信号发生器:亦称控制单元CU,控制器的核心,通常有3种实现方法:组合逻辑型、存储逻辑型、可编程逻辑阵列。CU的一般模型见下图。,图5.1 CPU内部组成,控制单元CU,指令译码器,指令寄存器,操作码,时序信号,状态反馈信号,CPU内的控制信号,来自系统总线的控制信号,至系统总线的控制信号,控制单元模型,上图显示了CU中输入和输出信号之间的关系来自系统总线的控制信号:中断信号和存储器完成信号等至系统总线的控制信号:对存储器的控制信号和对外设的控制信号等,5.1.2 CPU的组成 2.运算器由通用寄存器组GPR、算术逻辑单元(ALU)、累加寄存器(AC)、程
4、序状态字寄存器(PSWR)、数据暂存器(LA、LB)和移位器(SH)等组成。功能是执行所有的算术运算和逻辑运算。,MDR,译码器,时序与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,GPR,GPR,MAR,AB,内部总线,内部总线,ALU,(1)通用寄存器GPR(General Purpose Register)可用于存放操作数(包括源操作数、目的操作数及中间结果)、各种地址信息,或作为基址寄存器、变址寄存器,或作为计数器等.,MDR,译码器,时序与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,
5、GPR,GPR,MAR,AB,内部总线,内部总线,ALU,3.CPU中的寄存器设置,(2).专用寄存器SPR用于控制的寄存器 程序计数器PC(Program Counter)存放当前或下一条要执行的指令的地址,控制指令的执行顺序.顺序执行时,PC增量计数;遇到转移指令,则将转移地址送至PC.,MDR,译码器,时序与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,GPR,GPR,MAR,AB,内部总线,内部总线,ALU,(2).专用寄存器SPR 用于控制的寄存器指令寄存器IR(Instruction Register)存放正在执行的指令代码.堆栈指
6、示器SP(Stack Pointer)存放堆栈栈顶指针.,MDR,译码器,时序与 控制,DB,CB,内部控制线,内部控制线,AC,LA,LB,SH,PSWR,IR,PC,SP,GPR,GPR,MAR,AB,内部总线,内部总线,ALU,GPR,(2)专用寄存器SPR 用于控制的寄存器状态标志寄存器(PSWR):存放运算结果的状态和机器运行的状态.一条指令执行完毕,根据运行结果自动修改标志位的有关内容,这些内容可被后面的条件转移指令所测试,作为决定程序流向的因素之一.,常用运算结果的状态标志包括:,进位标志C:当运算结果产生进位时,C=1 溢出标志V:当运算结果产生溢出时,V=1 零结果标志Z:当
7、运算结果为零时,Z=1 负结果标志N:当运算结果为负时,N=1,(2)专用寄存SPR用于主存接口的寄存器存储器地址寄存器(MAR):接受指令地址(PC)、操作数地址或结果地址,以确定要访问的单元.存储器数据寄存器(MDR):亦称为存储器数据缓冲寄存器(MBR).写入主存的数据一般先送至MDR,再送主存;从主存读出的指令或数据一般先送入MDR,再送指定寄存器.主存接口的寄存器MAR、MDR的作用:作为 CPU与主存、外设之间信息传递的中转站;补偿CPU与主存、外设之间操作速度的差别.,4.总线,(2)计算机中各部件的连接方式 在各部件之间用专门的通路连接 优点:直观 缺点:结构复杂,硬件设备量增
8、大 在各部件之间设置总线来传送信息,优点:减少传送线数量,使数据通路结构简化,便于控制.,(1)总线定义:一组能为多个部件分时共享的公共信息传送线路.它分时接受各部件送来的信息,并发送信息到有关部件.,缺点:当多个部件争用总线时,需设置总线控制逻辑解决总线控制权的问题.,(3)总线分类 CPU内部总线:连接CPU内的各寄存器与ALU,主要用于传送数据信息;系统总线:连接CPU、主存与I/O接口,通常包括数据总线、地址总线、控制总线.,5.CPU内部数据通路,总线结构:将所有寄存器的输入端和输出端都连接到一条或多条公共的通路上.又分为单总线结构(见图5.2)、双总线结构、多总线结构(见图5.3)
9、.,(1)数据通路:CPU中寄存器及ALU之间的连接线路.通常有两种形式,同4(1),即:,专用数据通路结构:根据指令执行过程中的数据和地址的流动方向安排连接线路,结构见图5.1.,指令周期的基本概念,5.2 指令周期,指令周期:取指令、分析指令到执行完该指令所需的时间.由于各种指令的操作类型不同、寻址方式不同,所以它们的指令也不同.如访存指令与不访存指令、加法指令与乘法指令的指令周期不同.,机器周期:亦称CPU周期,一般将一个指令周期划分为若干机器周期,每个机器周期完成一个基本操作,如取指周期、取数周期、执行周期、中断周期等.一般情况下,一条指令所需的最短时间为两个机器周期:取指周期和执行周
10、期.,许多计算机以访问主存的工作周期(存取周期)为基础来规定CPU周期.,三者关系:一个指令周期包含若干个CPU周期,一个CPU周期的功能由多个时钟周期来完成,T周期,CPU周期(取指令),CPU周期(执行指令),指令周期,时钟周期(节拍,T周期):将一个机器周期划分为若干相等的时间段,每个时间段内完成一步基本操作.每个时间段用一个电平信号宽度对应,称为节拍或时钟周期.节拍长度的确定,一般取决于CPU内部的操作需要.,5.2.2 指令执行的基本过程,一条指令执行过程分为3个阶段:取指、分析指令、执行指令.,取指令:将现行指令从主存取出并送至IR.,PC,MAR,IR,MDR,AB,DB,CB,
11、主存,(1),(1),(1),(2),(3),(3),(4),+1,(5),(1)将PC内容送MAR,并送地址总线;,(2)向存储器发读命令;,(3)从主存取出指令,通过数据总线,送到MDR;,(4)将MDR内容送IR;,(5)将PC内容递增,为取下一条指令做准备.,注意:取指阶段的操作对任何一条指令来说,都是必须要执行的操作,称为公操作,完成取指阶段任务的时间,称为取指周期.,分析指令:指令译码器(ID-Instruction Decoder)可以识别和区分不同的指令类型及各种获取操作数的方法.由于各条指令功能不同,寻址方式不同,所以分析指令阶段的操作各不相同.,执行指令:执行指令规定的各种
12、操作,形成稳定的运算结果,并存储起来.,可以看出,计算机的基本工作可以概括为:取指令(公操作)、分析指令(包括指令译码、计算操作数地址和取操作数等)、执行指令,然后再取下一条指令,。如此循环,直到程序执行完毕,或外来干预为止.,250 000 CLA,021 030 030 ADD 30,022 021 031 STA 40,023 000 000 NOP,八进制地址 八进制内容,024 140 021 JMP 21,030 000 006,031 000 040,040 存和数单元,数据,表5.1 五条典型指令组成的程序,(P.158-164)五条典型指令的执行过程图例。首先了解五条指令的具
13、体内容,详见P.158表5.1CPU内部结构见下图所示.,0,助记符,ALU,AC,PC,地址总线 ABUS,数据总线DBUS,DR,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,AR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,CPU,存储器,输入/输出,PSWR,状态条件寄存器,图5.1采用专用数据通路结构的CPU模型,返回,取指令PC+1,对指令译码,开始,执行指令,取下条指令PC+1,取指令周期(FETCH)执行周期(EXE),一个CPU周期,CLA指令周期,5.2.3 CLA指令的指令周期非访内指令功能:累加器清零,即0AC,一个
14、CPU周期,ALU,AC,000 020,PC,000 020,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,+1,地址总线 ABUS,CLA,数据总线,DBUS,MDR,CLA,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,图5.4 取出CLA指令,ALU,000 000,000 021,PC,000 020,地址 指令或数据内容,20 CLA,21 ADD 30,2
15、2 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,CLA,数据总线,DBUS,MDR,CLA,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,C(清AC),图5.5 CLA指令 执行阶段,5.2.4 ADD指令的指令周期需要访问内存去取数并要执行加法指令 ADD 30的功能:(AC)+(30)AC,取指令PC+1,指令译码,送操作数地址,取出操作数,执行加法操作,开始,取下条指令PC+1,取指令周期 执行周期1
16、执行周期2 FETCH EXE1 EXE2,一个CPU周期 一个CPU周期 一个CPU周期,ADD指令周期,ALU,000 000,000 021,PC,000 021,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,ADD 30,数据总线,DBUS,MDR,ADD,30,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,+1,取出ADD指令(取指令周期)
17、,ALU,000 000,000 022,PC,000 030,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,ADD 30,数据总线,DBUS,MDR,ADD,30,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,图5.6 送(ADD指令的)操作数地址(执行周期一),ALU,000 006,000 022,PC,000 030,地址 指令或数据内容,2
18、0 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,000 006,数据总线,DBUS,MDR,ADD,30,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,图5.7 取操作数并 执行加法操作(执行周期二),取指令PC+1,开始,指令译码,送操作数地址,送操作数,执行写内存操作,取下条指令PC+1,一个CPU周期 一个CPU周期 一个CPU周期,取指令周期 执行周期1 执行周期2
19、FETCH EXE1 EXE2,STA指令周期,5.2.5 STA指令的指令周期访问内存的存数指令 STA 40的功能:(AC)40,ALU,000 006,000 022,PC,000 022,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,STA 40,数据总线,DBUS,MDR,STA,40,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,+1,取
20、出STA指令(取指周期),ALU,000 006,000 023,PC,000 040,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,STA 40,数据总线,DBUS,MDR,STA,40,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,送操作数地址(执行周期一),ALU,000 006,000 023,PC,000 040,地址 指令或数据内容,20
21、 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 000 006,地址总线 ABUS,000 006,数据总线,DBUS,MDR,STA,40,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,图5.8 存储和数,(执行周期二),取指令PC+1,开始,指令译码,送转移地址,取下条指令地址PC+1,一个CPU周期 一个CPU周期,5.2.7 NOP指令和JMP指令的指令周期NOP:空操作,只取指令;JMP 21:
22、21PC,取指令周期 执行周期 FETCH EXE,JMP指令的指令周期,ALU,000 006,000 023,PC,000 023,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,NOP,数据总线,DBUS,MDR,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,取出NOP指令(取指周期)执行周期CU不发任何控制信号,+1,NOP,ALU,000 0
23、06,000 024,PC,000 024,地址 指令或数据内容,20 CLA,21 ADD 30,22 STA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,JMP 21,数据总线,DBUS,MDR,JMP,21,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,+1,取出JMP指令(取指周期),ALU,000 006,000 021,PC,000 021,地址 指令或数据内容,20 CLA,21 ADD 30,22 S
24、TA 40,23 NOP,24 JMP 21,30 000 006,31,40 存和数,地址总线 ABUS,JMP 21,数据总线,DBUS,MDR,JMP,21,IR,指令译码器,操作控制器时序产生器,时钟状态反馈,指令寄存器,MAR,微操作控制信号,算术逻辑单元,累加器,程序计数器,地址寄存器,数据缓冲寄存器,存储器,CPU,图5.9 JMP指令 的执行阶段,5.2.8 用方框图语言表示指令周期,PCARABUSDBUSDRIRPC+1,开始,RD,译码或测试,IR(AR)AR,IR(AR)AR,IR(AR)PC,0 AC,CLA ADD STA JMP NOP,AR ABUSDBUS D
25、RDR ALUALU AC,AR ABUSAC DRDRDBUS,RD WE,例1(P166):下图所示为双总线结构机器的数据通路,M为主存(受R/W信号控制),IR为指令寄存器,AR为地址寄存器,DR为数据缓冲寄存器,PC为程序计数器(具有自加功能),ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,如yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标注字符的线为直通线,不受控制。(1)ADD R2,R0的功能为(R0)+(R2)R0,画出指令周期流程图,并列出相应的微操作控制信号序列。(2)SUB R1,R3的功能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 新课 第五 中央处理器
链接地址:https://www.31ppt.com/p-6342718.html