1 / 195

第五章 中央控制器

第五章 中央控制器. 第五章 中央控制器. CPU 的功能和组成 指令周期 时序产生器和控制方式 微程序控制器 微程序设计技术 硬布线控制器 各种 CPU. CPU 的功能和组成. 什么是 CPU ? 所谓中央处理器是控制 计算机来自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通常简称为 CPU 。. CPU 的功能和组成. ( 1 ) 指令控制 :就是保证机器按规定的顺序执行程序。. CPU 的功能.

Download Presentation

第五章 中央控制器

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第五章 中央控制器

  2. 第五章 中央控制器 • CPU的功能和组成 • 指令周期 • 时序产生器和控制方式 • 微程序控制器 • 微程序设计技术 • 硬布线控制器 • 各种CPU

  3. CPU的功能和组成 • 什么是CPU? 所谓中央处理器是控制计算机来自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通常简称为CPU。

  4. CPU的功能和组成 (1)指令控制 :就是保证机器按规定的顺序执行程序。 • CPU的功能 (2)操作控制:CPU管理并产生由内存取出的每条指令的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。 (3)时间控制: 对各种操作实施时间上的控制,称为时间控制。 (4)数据加工: 所谓数据加工,就是对数据进行算术运算和逻辑运算处理。完成数据的加工处理,这是CPU的根本的任务。

  5. CPU的功能和组成 • CPU的基本组成 中央处理器由两个主要部分 控制器和运算器组成。

  6. CPU的功能和组成 控制器 由程序计数器、指令寄存器、指令译码 器、时序产生器和操作控制器组成,它是发布命令的“决策机构”。控制器的主要功能有: 1.从内存中取出一条指令,并指出下一条指令在内存中的位置。 2.对指令进行译码或测试,并产生相应的控制信号。 3.指挥并控制CPU,内存和I/O之间的数据流动的方向。

  7. CPU的功能和组成 • 运算器 由算术逻辑单位(ALU)、累加寄存器、数据缓冲寄存器和状态条件寄存器组成,它是数据加工处理部件。相对控制器而言,运算器接受控制器的命令而进行动作,所以它是执行部件。运算器的主要功能: 1.执行所有的算术运算。 2.执行所有的逻辑运算。

  8. 执行控制 取指控制 CPU 算术逻辑单元 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC c 程序记数器PC c 指令译码器 c c c 指令寄存器IR 地址寄存器AR 缓冲寄存器DR 地址总线ABUS 存储器 数据总线DBUS I/O CPU的功能和组成

  9. CPU的功能和组成 • CPU中的主要寄存器 • 累加寄存器AC • 累加寄存器AC通常简称为累加器,它的功能是:当运算器的算术逻辑单元(ALU)执行全部算术和逻辑运算时,为ALU提供一个工作区。累加寄存器是暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄存器。

  10. CPU的功能和组成 • CPU中的主要寄存器 2.状态条件寄存器PSW 状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,同时状态条件寄存器还保存中断和系统工作状态等信息,以便使CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。

  11. CPU的功能和组成 • 3.程序计数器PC • 程序计数器中存放的是下一条指令在内存中的地址。 • 指令寄存器IR • 指令寄存器用来保存当前正在执行的一条指令。

  12. CPU的功能和组成 • 地址寄存器AR • 地址寄存器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。 • 缓冲寄存器DR • 缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在缓冲寄存器中。

  13. CPU的功能和组成 • 操作控制器和时序产生器 1.数据通路:通常把许多寄存器之间传送信息的通路,称为“数据通路”。 2.操作控制器:根据指令操作码和时序信号,产生各种操作信号,以便正确建立数据通路,从而完成取指令和执行指令的操作。 3.时序产生器:就是对各种操作实施时间上的控制。

  14. 指令周期 • 程序的执行过程: 1.正确从程序首地址开始. 2. 正确分步执行每一条指令,并形成下条待执行指令的地址. 3.正确并自动地连续执行指令,直到程序的最后一条指令.

  15. 指令周期 • 指令的执行过程 —读取指令 指令地址送入主存地址寄存器 读主存,读出内容送入指定的寄存器 —分析指令 —按指令规定内容执行指令 不同指令的操作步骤数 和具体操作内容差异很大 —检查有无中断请求 若无,则转入下一条指令的执行过程

  16. 指令周期 • 指令周期:CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需花费的时间通常叫做一个指令周期。 • 指令周期的基本概念 • 机器周期:通常用内存中读取一个指令字的最短时间来规定一个机器周期。指令周期常常用若干个机器周期数来表示,CPU周期也称为机器周期 • 时钟周期:它是处理操作的最基本单位.而一个CPU周期时间又包含有若干个时钟周期。

  17. T1 T2 T3 T4 CPU周期 CPU周期 指令周期 T周期 (取指令) (执行指令 ) 指令周期

  18. 指令周期 • 执行周期 • 许多类型 • 主要是涉及到处理器内部的寄存器 • 可能的操作有 • 数据传输 • ALU • 控制指令的处理

  19. 内存地址 内存内容 助记符 所完成的操作 020 250 000 CLA 将累加器的内容清零 021 030 030 ADD 30 (A)+(30) A 022 021 040 STA 40 (A)(40) 023 000 000 NOP 空操作指令 024 140 021 JMP 21 21→PC 030 000 006 031 040 存和数单元 • 下面以一个简单的程序来具体认识每一条指令的指令周期和执行过程。

  20. 非访内指令需要两个CPU周期。 在第一个CPU周期,即取指令阶段,CPU完成三件事:(1)从内存取出指令;(2)对程序计数器PC加1,以便为取下一条指令做好准备;(3)对指令操作码进行译码或测试,以便确定进行什么操作。在第二个CPU周期,即执行指令阶段,将累加器A的内容清零。 指令周期 • CLA指令的指令周期 一个CPU周期 一个CPU周期 取下条指令 PC+1 取指令 PC+1 开始 执行 指令 对指令 译码 取指令阶段 执行指令阶段

  21. 指令周期 执行控制 取指控制 CPU 算术逻辑单元 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC c 程序记数器PC +1 指令译码器 000 020 000 021 c CLA c 000 020 c 指令寄存器IR 地址寄存器AR CLA 20 CLA 21 ADD 30 缓冲寄存器DR 22 STA 40 23 NOP 地址总线ABUS 24 JMP 21 数据总线DBUS 30 000 006 31 40

  22. 指令周期 执行控制 取指控制 CPU 算术逻辑单元 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC c 程序记数器PC +1 指令译码器 000 021 c CLA c 000 020 c 指令寄存器IR 地址寄存器AR CLA 20 CLA 21 ADD 30 缓冲寄存器DR 22 STA 40 23 NOP 地址总线ABUS 24 JMP 21 数据总线DBUS 30 000 006 31 40

  23. 指令周期 • ADD指令的指令周期 ADD指令的指令周期由三个CPU周期组成。 第一个CPU周期为取指令阶段。 第二个CPU周期中将操作数的地址送往地址寄存器并完成地址译码。 在第三个CPU周期中从内存取出操作数并执行相加的操作。

  24. 指令周期 一个CPU周期 一个CPU周期 一个CPU周期 取指令 PC+1 执行加 操作 取下条指令 PC+1 开始 对指令 译码 送操作数 地址 取出操作数 取指令阶段 执行指令阶段

  25. 指令周期 执行控制 取指控制 CPU 算术逻辑单元 0+6=6 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC 000 006 c 程序记数器PC +1 指令译码器 000 022 000 021 c ADD 30 c 000 021 000 030 c 指令寄存器IR 地址寄存器AR 000 006 ADD 20 CLA 21 ADD 30 缓冲寄存器DR 22 STA 40 23 NOP 数据总线DBUS 地址总线ABUS 24 JMP 21 30 000 006 31 40

  26. 指令周期 • STA指令的指令周期 STA指令的指令周期由三个CPU周期组成。其中第一个CPU周期仍然是取指令阶段,其过程和CLA指令、ADD指令完全一样,不同的是此阶段中程序计数器加1后变为023,因而为取第四条指令做好了准备。我们假定,第一个CPU周期后结束,“STA 40”指令已放入指令寄存器并完成译码测试。

  27. 指令周期 执行控制 取指控制 CPU 算术逻辑单元 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC 000 006 c 程序记数器PC +1 指令译码器 000 023 000 022 c STA 40 c 000 022 000 040 c 指令寄存器IR 地址寄存器AR 000 006 STA 20 CLA 21 ADD 30 缓冲寄存器DR 22 STA 40 23 NOP 数据总线DBUS 地址总线ABUS 24 JMP 21 30 000 006 40 000 006

  28. 指令周期 • NOP指令和JMP指令的指令周期 NOP指令是一条空指令,包含两个CPU周期,第一个周期取指令,第二个周期执行指令,因是空指令,所以操作控制器不发出任何控制信号。 JMP指令由两个CPU周期组成,第一个周期是取指令周期,同其他指令。第二个周期为执行阶段,CPU把指令寄存器中的地址码部分21送到程序计数器,从而用新内容21代替PC原先的内容25,这样,下一条指令将不从25单元中读出,而从21电源开始读出并执行,从而改变了程序原先的执行顺序 。

  29. 指令周期 执行控制 取指控制 算术逻辑单元 ALU 时钟 状态条件寄存器 操作控制器 时序产生器 状态反馈 累加器AC 000 006 c 程序记数器PC +1 指令译码器 000 021 000 024 000 025 c JMP 21 c 000 024 000 021 c 指令寄存器IR 地址寄存器AR JMP 21 20 CLA 21 ADD 30 缓冲寄存器DR 22 STA 40 23 NOP 数据总线DBUS 地址总线ABUS 24 JMP 21 30 000 006 40 000 006

  30. 指令周期 小结:各类信息的传送路径 指令:M → DBUS → DR → DBUS → IR 地址:PC → ABUS → AR →(取决于寻址方式) 数据: 寄存器→寄存器:总线直接传送 寄存器→存储器 : Ri → DBUS → DR → DBUS → M 存储器→寄存器 : M → DBUS → DR → DBUS → Ri

  31. 指令周期 • 用方框图语言表示指令周期 在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。 一个方框代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制。 一个菱形符号代表某种判别或测试,不过时间它依附于它前面一个方框的CPU周期,而不单独占用一个CPU周期。 符号“~”代表一个公操作 。

  32. 指令周期 PC→AR →ABUS DBUS →DR →IR PC +1 译码或测试 CLA ADD STA JMP NOP 0 →AC IR →AR IR →PC PC→AR IR →AR ~ ~ ~ AR →ABUS DBUS →DR RD→ALU ALU→AC AR →ABUS AC→DR DR→DBUS ~ ~

  33. 指令周期 例:如图所示为双总线结构机器的数据通路,控制信号G控制的是一个门电路。 画出下列的指令周期流程图,并列出相应的微操作控制信号序列。 1. “ADD R2,R0”指令完成(R0)+(R2)→R0功能操作。假设该指令的地址已放入 PC中。 2. “SUB R1,R3”指令完成(R3)-(R1)→R3的功能操作 。

  34. IR PC DR R0 R1 R2 R3 指令周期 A总线 + - Xi R3i IRi PCi R0i ARi DRi R/W X ALU AR M G Y IRo DRo PCo R0o R3o Yi B总线

  35. 指令周期 PC0,G,ARi PC→AR PC→AR R/W=R M→DR M→DR DR→IR DR→IR DR0,G,IRi R3o,G,Yi R3→Y R2o,G,Yi R2→Y R1o,G,Xi R1→X R00,G,Xi R0→X R3-R1→R3 -,G,R3i R0+R2→R0 +,G,R0I ~ ~

  36. 时序产生器和控制方式 • 时序信号的作用和体制 • 计算机的协调动作需要时间标志,而时间标志则是用时序信号来体现的。 • 操作控制器发出的各种控制信号都是时间因素(时序信号)和空间因素(部件位置)的函数。 • 组成计算机硬件的器件特性决定了时序信号最基本的体制是电位---脉冲制。

  37. 时序产生器和控制方式 • 常用的操作控制器有两种: • 硬布线控制器 • 微程序控制器

  38. 时序产生器和控制方式 • 硬布线控制器中 • 时序信号采用主状态周期——节拍电位——节拍脉冲 三级体制 • 微程序控制中 • 时序信号采用节拍电位——节拍脉冲二级体制。

  39. 时序产生器和控制方式 • 主状态周期(指令周期):包含若干个节拍周期,可以用一个触发器的状态持续时间来表示。 • 节拍电位(机器周期):包含若干个节拍脉冲,表示较大的时间单位。 • 节拍脉冲(时钟周期):表示较小的时间单位。

  40. 时序产生器和控制方式 • 时序信号产生器的组成 • 时钟源 • 环形脉冲发生器 • 节拍脉冲和读/写时序的译码 • 启停控制逻辑

  41. 时序产生器和控制方式 IORQ MREQ RD WE T1 T2 T3 T4 启停控制逻辑 启停控制逻辑 IORQ° MREQ° RD° WE° T1° T2° T3° T4° MERQ’ RD’ 节拍脉冲和对时序译码逻辑 节拍脉冲和对时序译码逻辑 WR’ IORQ’ 环形脉冲发生器 环形脉冲发生器 Φ 时钟脉冲源 时钟脉冲源 产生一组有序的间隔相等或不等的脉冲序列。通常采用循环移位寄存器。 用来位环形脉冲发生器提供频率稳定且电平匹配的方波时钟脉冲信号。有石英晶体振荡器组成。

  42. 控制方式 当两个操作速度不同的部件或执行时间不同的指令在一起工作,怎样使计算机协调工作?这就要涉及到部件之间的通信方式及时序的控制方式方面的问题,统称为控制方式问题。 按时序信号与操作的关系进行分类,控制方式可以分为同步控制、异步控制和联合控制等3种方式。

  43. 控制方式 • 同步控制方式:其基本思想是选取部件中最长的操作时间作为统一的时间间隔标准,使所有的部件都在这个时间间隔内启动并完成操作。已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的。 优点是:时序关系比较简单,控制器设 计方便。 缺点是:以牺牲速度为代价。

  44. 控制方式 • 异步控制方式: 又称为可变时序控制方式,其基本思想是不设立统一的时间间隔标准,各部件按本身的速度占用时间。时间上的衔接通过应答通信方式(又称握手方式)实现。 每条指令、每个操作控制信号 需要多少时间就占用多少时间。这意味着每条指令的指令周期可由多少不等的机器周期数组成。 优点:提高了系统的速度 缺点:控制器比较复杂

  45. 控制方式 联合控制方式: 其基本思想是将同步控制方式和异步控制方式相结合,使计算机处于同步与异步交替工作方式。 例如,对大多数需要节拍数相近的指令,用相同的节拍数来完成,即采用同步控制;而对少数需要节拍数多的指令或节拍数不固定的指令,给予必要的延长,即采用异步控制; 因为是少数指令,是局部的,所以又称为局部性异步控制,实现局部性异步控制的方法有: 1.节拍数可变周期法,即不同的机器周期采用不同的节拍数,由周期状态触发器来控制; 2.节拍数周期固定法,即不同的机器周期采用相同的节拍数,对需要延长的周期,采用节拍插入法或周期延长法来调整。

  46. 小结 • 控制器的组成: • 指令部件 • 程序计数器PC • 指令寄存器 • 指令译码器 • 时序部件 • 脉冲源及启停逻辑 • 时序信号形成部件 • 微操作信号形成部件 • 中断控制逻辑

  47. 小结 微操作信号 送AR I/O信息 控制台信息 +1 程序计数器PC 微操作信号形成 地址形成部件 状态寄存器 节拍发生器 译码 中断控制逻辑 时钟源 操作码 地址码

  48. 微程序控制器 • 基本概念 • 组成 • 工作过程 • 微程序举例 • 微程序设计技术 • 微程序控制器的设计方法

  49. 微程序控制器 • 基本概念 • 微命令 • 微操作 • 微指令 • 微程序 • 控制存储器 • 微地址

  50. 微程序控制器——基本概念 • 微程序控制器的基本思想: 将微操作控制信号按一定规则进行信息编码(代码化)形成控制字(微指令),一条机器指令对应一段“程序”,该程序存放在控制存储器中,因为“程序”的指令结果是实现一条机器指令的功能,所以称为“指令的微程序”

More Related