您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 指令译码器 >

计算机组成原理第五章中央处理器[一]讲述技术总结ppt

发布时间:2019-07-21 00:35 来源:未知 编辑:admin

  1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

  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 存和数 地 址 总 线 数 据 总 线 DBUS MDR ADD 30 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① 图5.8 送(ADD指令 的)操作数地址( 执行周期一) ALU 000 006 000 022 PC 000 030 地址 指令或数据内容 20 CLA 21 ADD 30 22 STA 40 23 NOP 24 JMP 21 30 000 006 31 40 存和数 地 址 总 线 数 据 总 线 DBUS MDR ADD 30 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① ② ③ ③ ④ 图5.9 取操作数并 执行加法操作 (执行周期二) 取指令 PC+1 开始 指令 译码 送操作数 地址 送操作数 执行写 内存操作 取下条 指令 PC+1 一个CPU周期 一个CPU周期 一个CPU周期 取指令周期 执行周期1 执行周期2 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 存和数 地 址 总 线 数 据 总 线 DBUS MDR STA 40 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ② +1 ③ ④ ⑤ 图5.10 取出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 存和数 地 址 总 线 数 据 总 线 DBUS MDR STA 40 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① 图5.10 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 000 006 地 址 总 线 数 据 总 线 DBUS MDR STA 40 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① 图5.11 存储和数 ③ ② (执行周期二) 取指令 PC+1 开始 指令译码 送转移 地址 取下条 指令地址 PC+1 一个CPU周期 一个CPU周期 5.2.6 NOP指令和JMP指令的指令周期 NOP:空操作,只取指令;JMP 21:21→PC 取指令周期 执行周期 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 图5.12取出NOP指令 (取指 周期)执行周期CU不发任何控制信号 ① ② +1 ③ ④ NOP ⑤ ALU 000 006 000 024 PC 000 024 地址 指令或数据内容 20 CLA 21 ADD 30 22 STA 40 23 NOP 24 JMP 21 30 000 006 31 40 存和数 地 址 总 线 数 据 总 线 DBUS MDR JMP 21 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① ② +1 ③ ④ ⑤ 图5.13取出JMP 指令(取指周期) ALU 000 006 000 021 PC 000 021 地址 指令或数据内容 20 CLA 21 ADD 30 22 STA 40 23 NOP 24 JMP 21 30 000 006 31 40 存和数 地 址 总 线 数 据 总 线 DBUS MDR JMP 21 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ② ① 图5.14 JMP指令 的执行阶段 5.2.7 用方框图语言表示指令周期 (PC)→AR,(AR)→ABUS DBUS→DR,(DR)→IR PC+1 开始 RD 译码或测试 IR(AR)→ AR IR(AR)→ AR IR(AR)→ PC 0→ AC CLA ADD STA JMP NOP (AR)→ ABUS DBUS→ DR (DR)→ ALU ALU→ AC (AR)→ ABUS (AC)→ DR (DR)→DBUS RD WE 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 注解:在时序系统中,通常不为指令周期设置时间标志信号,因而也不将其作为时序的一级. * 第五章 中央处理器 5.1 CPU的功能和组成 5.2 指令周期 5.3 时序产生器和时序控制方式 5.4 硬布线 CPU的功能和组成 CPU( Central Processing Unit):计算机系统的核心部件,由运算器和控制器构成. 5.1.1 CPU的功能 指令控制:取指令并产生下一条指令在内存中的地址; 操作控制:对指令进行译码,产生各种操作信号送往相应部件,以控制完成指令所要求的动作; 时序控制:对各种操作信号实施时间上的控制,以保证计算机有条不紊地连续自动工作; 数据加工:执行所有的算术运算和逻辑运算,并进行逻辑测试; 异常处理和中断处理:检测和处理异常情况(如电源掉电、除法运算除0溢出等)及特殊请求(如打印机请求传送打印字符等)。 微操作控制信号发生器 时序信号发生器 指令译码器 ... 启停电路 控制台 脉冲源 操作码 寻址方式 地址码 地址形成部件 pc 至MAR 增量 中断控制逻辑 ... ... 至MAR/ALU IR DB 图5.1 中央处理器组成框图 程序状态 寄存器 通用 寄存器组 ALU DB AB … … I/O状态信息 微操作控制信号 ... 5.1.2 CPU的组成 5.1.2 CPU的组成 1.控制器的构成 (1)指令部件:完成取指令和分析指令。 程序计数器(Program Counter ,PC):又称为指令计数器、指令地址寄存器。PC中存放当前或下一条要执行的指令的地址,控制指令的执行顺序。顺序执行时,PC增量计数;遇到转移指令,则将转移地址送至PC。 注意:由于PC可以指向主存中任一单元,故其位数应能表示主存的最大容量,并与MAR的位数相同。 指令寄存器(Instruction Register, IR):存放当前正在执行的指令。 指令译码器( Instruction Decoder,ID):指令分析部件,对IR中的指令操作码部分进行译码分析,产生相应操作的控制电位,提供给微操作控制信号形成部件。 注意:有的机器还需要对寻址方式字段进行译码,以控制操作数有效地址的形成。 5.1.2 CPU的组成 1.控制器的构成 (1)指令部件:完成取指令和分析指令。 地址形成部件:根据机器所规定的各种寻址方式,用来生成操作数有效地址。 (2)时序控制部件 从宏观(即程序控制)上看,计算机的解题过程是指令序列的执行过程;从微观(即指令控制)上看,它又是微操作序列(即一个个微操作)的执行过程。一条指令的执行过程可以分解为若干简单的基本操作,称之为微操作。这些微操作信号是有严格的时间顺序要求的,不可以任意颠倒。时序控制部件的作用就是用来产生一系列时序信号,为各个微操作定时,保证各个微操作的执行顺序。 (2)时序控制部件 脉冲源:用于产生一定频率的主时钟脉冲,一般采用石英晶体震荡器作为脉冲源。 启停电路:控制整个机器工作的启动与停止,即保证可靠地送出或封锁主时钟脉冲,控制时序信号的发生与停止。 时序信号发生器:用以产生机器所需要的各种时序信号,以便控制有关部件在不同的时间完成不同的微操作。不同的机器有不同的时序信号。在同步控制的机器中,一般包括周期、节拍、脉冲等三级时序信号。 (3)微操作控制信号发生器 不同的指令完成不同的功能,需要不同的微操作控制信号序列。每条指令都有自己对应的微操作序列。控制器必须根据不同的指令,在不同的时间,产生并发出不同的微操作控制信号,控制有关部件协调工作,完成指令规定的任务。 (4)中断控制逻辑 用以实现异常情况和特殊请求的处理。 (5) 程序状态寄存器PSR 用以存放程序的工作状态(如管态、目态等)和指令执行的结果特征(如ALU的运算结果为零、结果为负、结果溢出等),把它存放的内容称为程序状态字(PSW),表明了系统的基本状态,是控制程序执行的重要依据。 (6) 用于主存接口的寄存器 ○存储器地址寄存器(MAR):接受来自PC的指令地址,或来自地址形成部件的操作数地址,以确定要访问的单元。 ○存储器数据寄存器(MDR):亦称为存储器数据缓冲寄存器(MBR)。写入主存的数据一般先送至MDR,再送主存;从主存读出的指令或数据一般先送入MDR,再送指令寄存器。 ○主存接口寄存器MAR、MDR的作用: ----作为 CPU与主存、外设之间信息传递的中转站; ----补偿CPU与主存、外设之间操作速度的差别。 (7) 控制台:用于实现人与机器之间的通信联系,如启动或停止机器的运行、监视程序运行过程、对程序进行必要的修改或干预等。 2、CPU内部的寄存器设置 CPU内部一般都设置下列寄存器: 指令寄存器IR; 程序计数器PC; 累加寄存器AC; 程序状态寄存器PSR; 地址寄存器MAR; 数据缓冲寄存器MDR(或MBR)。 (1)累加寄存器AC 用于操作数和操作结果,例如一个加法操作,AC的内容作为作为一个操作数与另外一个操作数相加,结果送回AC。早期的机器只有一个累加器,一般采用隐含寻址的方法供程序使用。 随着计算机的发展,运算器结构从单累加器发展为多累加器,即通用寄存器组结构。 通用寄存器是一组程序可访问的、具有多种功能的寄存器。在指令系统中为这些寄存器分配了编号(或称寄存器地址),可编程使用其中的某个寄存器。因为可以实现多种功能,如提供操作数、保存中间结果(即作累加器用),或用作地址指针,或作为基址寄存器、变址寄存器、计数器等,因而称为通用寄存器。 IR、PC、PSR、MAR、MDR的作用前面已经作了介绍,此处不再赘述。 除了上述提到的寄存器外,CPU中还常设置一些程序不能直接访问、用于暂存操作数据或中间结果的寄存器,称为暂存器。 5.1.2 CPU的组成 2.控制器的构成方式 控制器的主要任务为根据不同的指令,不同的状态条件,在不同的时间,产生不同的控制信号,控制计算机的各部件协调地进行工作。故控制器的核心为微操作控制信号发生器(控制单元CU)。 根据产生微操作控制信号的方式不同,控制器可以分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型三种。 (1) 组合逻辑型 这种控制器称为组合逻辑控制器,是用组合逻辑技术来实现的,其微操作信号发生器是由门电路组成的复杂树状网络构成的。这种方法是分立元件时代的产物,以使用最少器件数和取得最高操作速度为设计目标。 (2) 存储逻辑型 这种控制器称为微程序控制器,采用存储逻辑实现,即将微操作信号代码化,使每条机器指令转化为一段微程序,存入控制存储器中,微操作控制信号由微指令产生。 (3) 组合逻辑和存储逻辑结合型 这种控制器称为PLA控制器,吸收了前两种设计思想。 PLA控制器实际上也是一种组合逻辑控制器,但与常规组合逻辑控制器不同的是,它是可编程的,某一微操作控制信号由PLA的某一输出函数产生。 微操作 控制信号 发生器 指令译码器 指令寄存器 操作码 时序信号 … 状态反馈信号 译码输出 图5.2 微操作控制信号发生器示意图 ... 微操作控制信号 注意:三种控制器只是微操作信号发生器的结构和原理不同,但产生的微操作命令的功能是相同的,并且各个控制条件都是由时序电路、操作码译码信号、被控部件的反馈信息有机配合而成的。 3.总线) 计算机中各部件的连接方式 ○在各部件之间用专门的通路连接 优点:直观; 缺点:结构复杂,硬件设备量增大. ○在各部件之间设置总线来传送信息 优点:减少传送线数量,使数据通路结构简化,便于控制; (1) 总线定义:一组能为多个部件分时共享的公共信息传送线路.它分时接受各部件送来的信息,并发送信息到有关部件. 缺点:当多个部件争用总线时,需设置总线控制逻辑解决总线)总线分类 ○CPU内部总线:连接CPU内的各寄存器与ALU,主要用于传送数据信息; ○系统总线:连接CPU、主存与I/O接口,通常包括数据总线、地址总线.CPU内部数据通路 ○总线结构:将所有寄存器的输入端和输出端都连接到一条或多条公共的通路上.又分为单总线结构、双总线) 、多总线) 数据通路:CPU中寄存器及ALU之间的连接线路.通常有两种形式,同3(2),即: ○专用数据通路结构:根据指令执行过程中的数据和地址的流动方向安排连接线) 指令周期:取指令、分析指令到执行完该指令所需的时间。 由于各种指令的操作类型不同、寻址方式不同,所以它们的指令周期也不同。如访存指令与不访存指令、加法指令与乘法指令的指令周期不同。 (2) 机器周期: 亦称CPU周期,一般将一个指令周期划分为若干机器周期,每个机器周期完成一个基本操作,如取指周期、取操作数周期、执行周期、中断周期等。一般情况下,一条指令所需的最短时间为两个机器周期:取指周期和执行周期。 时序系统是控制器的心脏,由它为指令的执行提供各种定时信号。 (2) 机器周期:每个机器周期设置一个周期状态触发器与之对应,机器运行在不同的机器周期时,与其对应的周期状态触发器被置为“1”。可见,机器运行的任何时刻只能处于一种周期状态,故有且仅有一个周期状态触发器被置为“1”。 注意:由于CPU内部操作速度快,而CPU访存所花时间较长,故许多计算机存取周期为基准时间来规定CPU周期。 (3)时钟周期(节拍、T周期):时钟信号由机器主振电路发出的脉冲信号经整形后产生,时钟信号的频率即为机器主频,用时钟信号控制节拍发生器,即可产生节拍,每个节拍的宽度正好对应一个时钟周期,在每个节拍内机器可完成一个或几个需同时执行的微操作。 通常一个节拍内CPU完成一个基本操作,如ALU完成一次正确运算、一次寄存器间的信息传送等。 (4)三者关系:一个指令周期包含若干个CPU周期,一个CPU周期的功能由多个时钟周期来完成。 T周期 CPU周期 (取指令) CPU周期 (执行指令) 指令周期 例:设某机主频为8MHZ,每个机器周期平均含2个时钟周期: (1)每条指令平均有2.5个机器周期,试问该机的平均指令执行速度为多少MIPS? 解:根据主频为8MHZ,得时钟周期为1/8=0.125us,机器周期为0.125us×2=0.25us.指令周期为0.25×2.5=0.625us. 平均指令执行速度为1/0.625=1.6MIPS 例:设某机主频为8MHZ: (2)若机器主频不变,但每个机器周期平均含4个时钟周期,每条指令平均有5个机器周期,该机的平均指令执行速度又是多少MIPS? (3)由此,可以得出什么结论? 解(2):指令周期为0.125us×4×5=2.5us,故平均指令执行速度为1/2.5=0.4MIPS. 解(3):可见,机器的速度并不完全取决于主频,还与机器周期中所含的时钟周期数以及指令周期中所含的 机器周期数有关. 此外,机器的速度还和许多其他因素,如主存的速度、 机器是否有Cache、总线的传输率、硬盘的速度及机器是否采用流水技术等等。 5.2.2 指令执行的基本过程 一条指令执行过程分为3个阶段:取指、分析指令、执行指令。 (1) 取指令:将现行指令从主存取出并送至IR。 PC MAR IR MDR AB DB CB 主存 (1) (1) (1) (2) (3) (3) (4) +1 (5) 将PC内容送MAR,并送地址总线; 由控制单元 (CU)经CB向存储器发读命令; 启动相应存储单元,将指令通过数据总线送往MDR; 将MDR内容送IR; 将PC内容递增,为取下一条指令做准备。 CU 注意:取指阶段的操作对任何一条指令来说,都是必须要执行的操作,称为公操作,完成取指阶段任务的时间,称为取指周期。 (2)分析指令:指令译码器(ID- Instruction Decoder)可以识别和区分不同的指令类型及各种获取操作数的方法.由于各条指令功能不同,寻址方式不同,所以分析指令阶段的操作各不相同。 (3)执行指令:执行指令规定的各种操作,形成稳定的运算结果,并存储起来。 可以看出,计算机的基本工作可以概括为:取指令(公操作)、分析指令(包括指令译码、计算操作数地址和取操作数等) 、执行指令,然后再取下一条指令,……。如此循环,直到程序执行完毕,或外来干预为止。 250 000 CLA;累加器清0,即0 →AC 021 030 030 ADD 30;(30)+(AC)→AC 022 021 031 STA 40;(AC) →40 023 000 000 NOP;空操作 八进制地址 八进制内容 024 140 021 JMP 21;无条件跳转 , 即21→PC 030 000 006 031 000 040 040 存和数单元 数据 表5.1 五条典型指令组成的程序 5.2.3-5.2.6(P.158-164)五条典型指令的执行过程图例。 首先了解五条指令的具体内容,详见P.158表5.1 CPU内部结构见下图所示. 0 助记符 ALU AC PC 地 址 总 线 ABUS 数 据 总 线 DBUS DR IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令 寄存器 AR … 微操作控制信号 算术逻辑单元 累加器 程序 计数器 地址 寄存器 数据 缓冲 寄存器 CPU 存储器 输入/ 输出 PSWR 状态条件 寄存器 图5.3采用专用 数据通路结构 的CPU模型 返回 取指令 PC+1 对指令译码 开始 执行指令 取下条指令 PC+1 取指令周期(FETCH) 执行周期(EXE) 一个CPU周期 CLA指令周期 5.2.3 CLA指令的指令周期——非访内指令 功能:累加器清零,即0→AC 一个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.5 取出CLA指令 ALU 000 000 000 021 PC 000 020 地址 指令或数据内容 20 CLA 21 ADD 30 22 STA 40 23 NOP 24 JMP 21 30 000 006 31 40 存和数 ② 地 址 总 线 ABUS CLA 数 据 总 线 DBUS MDR CLA IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ① C(清AC) 图5.6 CLA指令 执行阶段 5.2.4 ADD指令的指令周期——需要访问内存去取数 并要执行加法指令 ADD 30的功能:(AC)+(30)→AC 取指令 PC+1 指令译码 送 操作数 地址 取出 操作数 执行加 法操作 开始 取下条 指令 PC+1 取指令周期 执行周期1 执行周期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 存和数 地 址 总 线 数 据 总 线 DBUS MDR ADD 30 IR 指令 译码器 操作控制器 时序产生器 时钟 状态 反馈 指令寄存器 MAR … 微操作控制信号 算术逻辑单元 累加器 程序计数器 地址寄存器 数据缓冲 寄存器 存 储 器 CPU ② +1 ③ ④ ⑤ 图5.7 取出ADD指令(取指令周期) * 注解:在时序系统中,通常不为指令周期设置时间标志信号,因而也不将其作为时序的一级. *

http://mytkt.net/zhilingyimaqi/307.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有