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

下载本文档

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

文档简介

1、1 第第4 4章章 控制器控制器本章主要讨论:本章主要讨论:运算器运算器 控制器控制器数据通路结构数据通路结构与外部的连接与外部的连接指令的执行过程指令的执行过程,微命令序列的形成微命令序列的形成CPUCPU逻辑逻辑组成组成CPUCPU工作原理工作原理2运算器运算器 控制器控制器数据通路结构数据通路结构与外部的连接与外部的连接指令的执行过程指令的执行过程,微命令序列的形成微命令序列的形成CPUCPU逻辑逻辑组成组成CPUCPU工作原理工作原理u CPU由哪些部件组成由哪些部件组成?u 各部件之间如何交换信息各部件之间如何交换信息?u CPU如何建立与外部的连接如何建立与外部的连接?u CPU如

2、何形成微命令序列如何形成微命令序列, 来控制指来控制指令的执行令的执行?3CPU的基本组成的基本组成l 运算部件组织和运算方法的实现运算部件组织和运算方法的实现l 通过一个通过一个CPU模型模型,讨论讨论CPU数据通路结数据通路结构和指令的执行过程构和指令的执行过程.1. 从从寄存器传送级寄存器传送级分析指令的分步执行分析指令的分步执行流程流程.2. 从从微操作控制级微操作控制级阐述寄存器传送的具阐述寄存器传送的具体实现体实现.4* * 概述概述* * CPU CPU的基本组成的基本组成 通常通常,CPU,CPU包含运算部件、寄存器组、微命令包含运算部件、寄存器组、微命令产生部件、时序系统等主

3、要部件,这些部件由产生部件、时序系统等主要部件,这些部件由CPUCPU内内部的总线连接起来,实现它们之间的信号交换。其部的总线连接起来,实现它们之间的信号交换。其中运算部件和一部分寄存器属于传统运算器部分,中运算部件和一部分寄存器属于传统运算器部分,另一部分寄存器、微命令产生部件、时序系统等属另一部分寄存器、微命令产生部件、时序系统等属于传统控制器部分。于传统控制器部分。5运算部件运算部件 寄存器寄存器 寄存器寄存器控制部件控制部件运算器运算器控制器控制器运算器和一部分运算器和一部分R 另一部分另一部分R 微命令产生部件微命令产生部件 时序系统时序系统由由CPU内总线连接这内总线连接这些部件些

4、部件.6运算部件运算部件 寄存器寄存器 寄存器寄存器控制部件控制部件运算器运算器控制器控制器微型机微型机: CPU集成运算器和控制器集成运算器和控制器大巨型计算机大巨型计算机: 运算器仍需由多块芯片构成运算器仍需由多块芯片构成,与控制器保持相对独立与控制器保持相对独立.71. 运算部件运算部件对数据进行加工处理。对数据进行加工处理。(1)输入逻辑)输入逻辑(2)ALU(3)输出逻辑)输出逻辑移位器移位器ALUALU选择器通用寄通用寄存器组存器组选择器运算部件的档次运算部件的档次:n 只有一个只有一个ALUn 一个一个ALU,配合时序控制配合时序控制n 一个一个ALU,有定点乘除部件和浮点运算部

5、件有定点乘除部件和浮点运算部件n 设置多种运算部件设置多种运算部件82. 寄存器组寄存器组寄存器:寄存器:CPU在处理信息的过程中,用来暂时在处理信息的过程中,用来暂时存放各种信息。存放各种信息。(1)通用寄存器组)通用寄存器组 用户可通过编程访问的寄存器,在指令系用户可通过编程访问的寄存器,在指令系统中为它们分配了相应的编号。指令中以统中为它们分配了相应的编号。指令中以寄存寄存器号器号来指示。来指示。 通用寄存器通过编程,可以实现多种功能,通用寄存器通过编程,可以实现多种功能,如提供操作数,存放运算结果,用作地址指针,如提供操作数,存放运算结果,用作地址指针,作基址寄存器、变址寄存器等等。作

6、基址寄存器、变址寄存器等等。9独立结构独立结构小型存储器结构小型存储器结构单口单口双口双口寄存器组构成形式寄存器组构成形式 通用寄存器的命名可以是简单地取名为通用寄存器的命名可以是简单地取名为R0、R1、R2等。也可以根据各寄存器的基本任等。也可以根据各寄存器的基本任务来命名,如累加器务来命名,如累加器AX、基址寄存器、基址寄存器BX、计数、计数寄存器寄存器CX、数据寄存器、数据寄存器DX等等。等等。10(2)暂存器)暂存器 暂存器对编程者来说是透明的,即在程序暂存器对编程者来说是透明的,即在程序中不会出现。中不会出现。作用作用:暂时存放:暂时存放CPU处理过程中的临时信息,处理过程中的临时信

7、息,避免破坏通用寄存器的内容。避免破坏通用寄存器的内容。例如,实现从内存的单元例如,实现从内存的单元A传送数据到另一个传送数据到另一个单元单元B。从单元。从单元A读出的数据先送到读出的数据先送到CPU中的中的一个暂存器,然后再从暂存器送入单元一个暂存器,然后再从暂存器送入单元B。11(3)指令寄存器)指令寄存器IR作用作用:用来存放当前正在执行的指令。控制:用来存放当前正在执行的指令。控制器根据其内容(操作码以及地址信息)产生器根据其内容(操作码以及地址信息)产生所需要的各种微命令。所需要的各种微命令。 为了提高计算机的处理速度,现代计算为了提高计算机的处理速度,现代计算机一般将指令寄存器扩充

8、为指令队列(指令机一般将指令寄存器扩充为指令队列(指令栈)。形成了指令流水线处理方式栈)。形成了指令流水线处理方式.指令流水线指令流水线:一次预取多条指令,增加指令间一次预取多条指令,增加指令间执行的衔接速度和并行处理能力。执行的衔接速度和并行处理能力。12(4)程序计数器)程序计数器PC也叫指令计数器或指令指针。也叫指令计数器或指令指针。作用作用:指示指令在存储器中的存放位置。:指示指令在存储器中的存放位置。程序顺序执行时程序顺序执行时,每当从主存中取出一条指,每当从主存中取出一条指令后,令后,PC内容就自动增量计数内容就自动增量计数(pc=pc+1),指向下一条指令。指向下一条指令。程序发

9、生转移时程序发生转移时,将转移地址送入,将转移地址送入PC,使,使其指向转移目的地的指令地址。其指向转移目的地的指令地址。13(5)程序状态字寄存器)程序状态字寄存器PSW作用作用:记录现行程序的:记录现行程序的运行状态运行状态和指示程序的和指示程序的工作方式工作方式。PSW包括特征状态位和方式控制位两部分。包括特征状态位和方式控制位两部分。特征位特征位:进位位:进位位C、溢出位、溢出位V、零值位、零值位Z、符号、符号位位S、奇偶位、奇偶位P等。等。方式控制位方式控制位:跟踪位:跟踪位T、中断允许位、中断允许位I、程序优、程序优先级字段、工作方式字段等。先级字段、工作方式字段等。14(6)地址

10、寄存器)地址寄存器MAR作用作用:CPU访问主存时,暂时存放所访问单元访问主存时,暂时存放所访问单元地址。地址。CPU取指令时取指令时,先将,先将PC的内容送入的内容送入MAR,再,再由由MAR将指令的存放地址送往主存译码。将指令的存放地址送往主存译码。CPU存取数据时存取数据时,将数据的存放地址先送到,将数据的存放地址先送到MAR,再送往主存进行地址译码。,再送往主存进行地址译码。PCPCMARMARM,M,译码译码数据存放地址数据存放地址MARMARM,M,译码译码15(7)数据缓冲寄存器)数据缓冲寄存器MBR作用作用:存放:存放CPU与主存之间交换的数据。与主存之间交换的数据。 由由CP

11、U写入主存的数据先送入写入主存的数据先送入MBR,主,主存地址译码找到指定单元后,再将数据从存地址译码找到指定单元后,再将数据从MBR送入到该单元。送入到该单元。数据数据MBRMBR该单元该单元译码译码, ,寻址寻址写入写入16 从主存中读出的数据,先送入从主存中读出的数据,先送入MBR,然后,然后再送到指定的再送到指定的CPU内部某寄存器。内部某寄存器。 MAR和和MBR是连接是连接CPU与主存的桥梁,它们与主存的桥梁,它们可使可使CPU与主存之间的数据通路变得比较单一。与主存之间的数据通路变得比较单一。这两个寄存器不能编程访问,即对用户透明。这两个寄存器不能编程访问,即对用户透明。主存数据

12、主存数据MBRMBR某某R R译码译码, ,寻址寻址读出读出174.1 控制器分类、功能和组成控制器分类、功能和组成 在计算机内部,程序的执行过程体现为信息在计算机内部,程序的执行过程体现为信息的传送,即在计算机中形成的传送,即在计算机中形成控制流控制流和和数据流数据流。这些信息的传送需要靠各种微命令来控制。这些信息的传送需要靠各种微命令来控制。181、控制器的分类:、控制器的分类: 微命令产生部件可以是由一些组合微命令产生部件可以是由一些组合逻辑电路组成,也可以由专门的存储逻逻辑电路组成,也可以由专门的存储逻辑组成。它们分别对应了辑组成。它们分别对应了组合逻辑控制组合逻辑控制方式方式和和微程

13、序控制方式。微程序控制方式。192、控制器的功能:、控制器的功能: CPU中设置了微命令产生部件,它中设置了微命令产生部件,它根据指令提供的信息产生出各指令所需根据指令提供的信息产生出各指令所需要的各种微命令序列。要的各种微命令序列。203 3、控制器的组成:、控制器的组成:由寄存器、由寄存器、指令译码器、地址形成部件、微指令译码器、地址形成部件、微命令产生部件时序系统和中断控命令产生部件时序系统和中断控制逻辑部件等组成。(制逻辑部件等组成。(P93P93) 21一条指令的读取与执行一条指令的读取与执行,需要分步需要分步: 取指令取指令 取源操作数取源操作数 取目的操作数取目的操作数 执行运算

14、操作执行运算操作 存放结果存放结果每个阶段再分为若干步每个阶段再分为若干步, 微命令也是分步产生微命令也是分步产生224. 时序系统时序系统 计算机能够有条不紊地自动执行程序,计算机能够有条不紊地自动执行程序,很重要的一个原因就是它有一个提供精确时很重要的一个原因就是它有一个提供精确时间信号的时序系统。间信号的时序系统。 时序系统产生计算机所需要的各种时间信时序系统产生计算机所需要的各种时间信息,如息,如周期周期、节拍节拍、工作脉冲工作脉冲等。这些信号等。这些信号的产生依据是一个频率稳定的振荡器,以及的产生依据是一个频率稳定的振荡器,以及计数分频器或倍频器。计数分频器或倍频器。23CPU基本组

15、成基本组成 (整体框架图整体框架图)5. CPU内部的数据通路结构内部的数据通路结构 CPU内部各部件之间需要传送信息,如寄存器将操作数送到ALU进行运算,ALU将结果送到寄存器存放。如何将这些部件连接起来,为信息提供通路?这就涉及CPU内部的数据结构,这是CPU组成的核心问题。24 通常,内部较简单的CPU 中,只设置一组数据传送总线,用来连接CPU内的寄存器与ALU部件,在微处理器中常将这组总线称为ALU总线。在较复杂的CPU中,为了提高工作速度,可能设置了几组数据总线,同时传送多个数据。25 有的CPU中还包含了用于控制的存储逻辑部件、管理内存的地址变换部件,这样除了数据线外,还有传送地

16、址信息的地址总线。26 现在的CPU结构都较复杂。例如,设置指令栈(称为指令队列),以便预取若干条指令;相应的操作数栈;专用ROM(称为控制存储器)以存放微程序,用于存储管理的段地址运算和页地址运算的多个运算部件;片内高速Cache等。2728特点特点:l 移位器只能向内部总线发送数据移位器只能向内部总线发送数据,不能直接不能直接从内总线上接收数据从内总线上接收数据l 寄存器只能从内总线上接收数据寄存器只能从内总线上接收数据,而不能直而不能直接向内总线发送数据接向内总线发送数据l ALU既是运算部件既是运算部件,又是又是CPU内数据传送通内数据传送通路的中心路的中心.4.2 时序控制与信息传送

17、 我们知道:计算机在执行指令时是分步进行的,因此在微命令的形成逻辑中引入了时间标志-时序信号,这样,计算机的操作能在不同的时间段中有序地完成。而操作是受时序信号同步控制的。当然,计算机机中也有一些操作,如系统总线上的一些数据传送则不受时序信号同步控制。 通常,把时序信号分为同步控制和异步控制两大类。29 1、同步控制方式、同步控制方式 指用统一发出的时序信号对各项操作进行同步控制。这里的时序信号就是指具有周期、节拍、脉冲等信号。 在同步控制中,操作时间被划分为许多长度固定的时间段,一个时间段就是一个节拍(时钟周期)。每个时间周期完成一步操作。不同的计算机有不同的安排。30 如CPU内部数据通路

18、的一次传送操作安排在一个时钟周期内完成,因而时钟周期较短;而访问一次存储器的时间作为一个时钟周期时间,则时钟周期较长。 时钟周期是基本的时序单位,一旦确定便固定不变,这就是同步控制方式的主要特点。 31 CPU根据统一的时钟周期为指令的执行安排严格的时间表,各操作必须按时间表执行,即在规定的时钟周期内完成本步操作,时钟周期一结束,本步操作也结束,并开始下一步操作。各步操作间的衔接由时钟周期自动切换来控制。32 有许多操作要求在约定的时刻同步定时执行。例如加法运算中,由于进位传递的延迟,加法器各位形成稳定的结果需要一段时间,而将结果送入目的寄存器的时刻则是严格定时的,这就需要产生一种统一的同步打

19、入(送入)脉冲,在脉冲的上升沿时刻打入运算结果。33 时钟周期提供加法运算的时间段。同步打入脉冲决定打入运算结果的时刻。在一个CPU中可能同时有几个数据传送操作,如将寄存器R0的内容同时送入寄存器、,一般需要将它们的打入脉冲同步定时在同一时刻。34 通常,在CPU内部有一组时序信号系统,产生统一的时序信号来控制CPU内部的各项操作各部件之间的数据传送。在一个计算机系统中,主存、各外部设备都有自己的时序系统,产生相应的时序信号控制设备内的操作。这里就存在一个问题: CPU、主存与外部设备之间的数据传送怎样协调控制?35 在同步控制方式中,一般由CPU提供统一的时序信号来控制它们的操作。例如:由C

20、PU提供时钟周期,发出输入脉冲或输出脉冲,在一个或多个时钟周期内完成数据在总线上的传送,用输入脉冲或输出脉冲对数据的接收进行定时。36 同步控制方式优点:1、时序关系简单2、时序划分规整3、控制结构易于集中,设计方便。 所以,在CPU内部、主存、外设等均广泛采用同步控制方式。37 同步控制方式缺点:1、时间安排不合理。2、时间的利用不经济。 所以,在系统总线上的信息传送可采用异步控制方式。38 2、异步控制方式、异步控制方式 是指各项操作不受统一时序信号(如时钟周期)的约束,而是根据实际需要安排不同的时间。各操作之间的衔接、各部件之间的数据传送均采用异步应答方式。 由于时序系统不为操作预先安排

21、固定时间,异步控制方式中采用应答方式(申请、响应、询问和回答)来了解操作时间的开始和结束。 39 应答的双方分别称为主设备和从设备。主设备是指申请并掌握总线控制权的设备(主动的一方),从设备是指响应主设备要求的设备(被动的一方)从设备不能掌握总线控制权。应答过程由主设备启动。40 3、同步控制在实际应用中的变化、同步控制在实际应用中的变化 一般来讲,在CPU或设备内部的操作中普遍采用同步控制方式。在CPU、主存和外部设备的系统总线上,有的采用同步控制方式,则有的采用异步控制方式来控制总线传送操作。同步控制不复杂,而异步控制方式则能按需要分配时间。41 因此,在实际应用中,是把两种方式的优点结合

22、起来:(1)不同指令安排不同的时钟周期数。(2)总线周期中允许插入延长周期。(3)同步方式中引入异步应答。42 43l 在设计CPU时,不仅要考虑主机内部的信息传递(如CPU内部、CPU与主存间的传递),还要考虑主机与外部设备间的信息交换。由于VLSI的发展,CPU已被集成为一块芯片。人们更为关心的是CPU与外部的连接、信息传递方式等。l 44l一、主机与外设连接模式 l 主机与外设的信息交换是通过其间的数据传送通路来实现。传送通路的连接模式可分为:l1、辐射型l2、总线型l3、通道型。 45l 1.1.辐射式辐射式 主机主机I/OI/OI/OI/OI/OI/O早期:不易扩展早期:不易扩展 主

23、机主机 接口接口 接口接口I/OI/OI/OI/OI/OI/O现在:便于扩展现在:便于扩展 46l 2.2.总线式总线式 主机主机 接口接口 接口接口 I/OI/O I/OI/O便于扩展便于扩展总线总线 总线型连接常用于微机、小型机。例如Pentium PC机,设置了三种不同速度的系统总线:CPU总线、PCI总线、ISA总线。CPU总线连接Pentium CPU与主存、片外高速缓存;PCI总线连接高性能显示卡、高速局网卡、SCSI盘卡等高速I/O设备;ISA总线连接打印机、调制解调器等低速I/O设备。47 48l l I/OI/O3.3.通道式通道式 主机主机 通道通道 通道通道I/OI/OI

24、/OI/OI/OI/O并行能力提高并行能力提高 在较大型的计算机系统中,由于外设种类多、数量大,需要设置专门的控制部件来管理I/O操作-通道。就是把星型与总线型结合的多级连接模式。 主机采用星型方式,通过多个独立通路与若干通道连接,每个通道再按总线方式连接多台外设,不同速度的外设接入不同的通道上。49 4.2.5 信息传递控制方式信息传递控制方式主机与外设间是怎样控制信息的传送?何时启动外设、何时传送信息通常,可以通过三种控制方式完成:50 1、直接程序传送方式、直接程序传送方式 就是CPU现行程序中通过直接执行I/O指令来实现信息的传送。由于启动外设和数据交换均在同一段程序中进行,因此CPU

25、在启动外设后只能查询外设的状态,等待外设准备好或完成一次操作,再用I/O指令与外设进行数据交换。也称为程序查询方式。 主要是CPU查询外设的状态,根据外设状态决定需要完成的操作。51 52l 2.2.程序中断传送方式程序中断传送方式查询方式查询方式(1 1)中断的引入)中断的引入程序程序并行操作并行操作主机主机外设外设空闲空闲启动启动等待等待工作工作程序程序交换数据交换数据中断:中断:主机主机程序程序外设外设空闲空闲启动启动工作工作程序程序请求请求中断程序中断程序交换数据交换数据程序程序 (2)中断定义)中断定义 在查询方式中CPU启动外设工作后,之所以要查询等待,是为了确定外设何时完成工作。

26、这种CPU主动查询也可改为由外设主动报告。这样,在外设工作期间,CPU不等待而继续执行原来的程序,即CPU与外设在这段时间内是并行工作。 53 当外设准备好或完成一次操作后,主动向CPU提出请求;CPU收到该请求后便可以与外设进行数据传送。 在CPU执行程序期间,外设何时提出请求完全是随机的,因而不可能将数据传送工作预先安排在放在另一段程序里(这里所指的程序就是我们常说的中断程序)。54 CPU收到随机中断请求后,收到随机中断请求后,暂时停止现行程序的执行,转暂时停止现行程序的执行,转去执行为随机事件服务的中断去执行为随机事件服务的中断处理程序,处理完毕后自动恢处理程序,处理完毕后自动恢复原来

27、程序的执行。复原来程序的执行。55 这里的随机事件泛指故障、某个到时的控制信号、程序执行中出现无法预测的随机事件等。 中断方式是通过执行中断处理程序来处理随机事件的。中断处理程序又称为中断服务程序或中断子程序,是按处理过程事先编制好的。 56 57l 响应响应逻辑逻辑设备工作完成设备工作完成判优判优逻辑逻辑请求请求逻辑逻辑屏蔽屏蔽逻辑逻辑非屏蔽非屏蔽CPUCPU送屏蔽字送屏蔽字( (动态改变设动态改变设 备优先级备优先级) )设备提出请求设备提出请求判别设备优先级判别设备优先级CPUCPU响应请求,响应请求,并转相应服务并转相应服务程序入口程序入口CPUCPU接口接口注意区分注意区分CPUCP

28、U对请求的对请求的屏蔽屏蔽和对请求的和对请求的响应响应。送屏蔽字送屏蔽字开开/ /关中断关中断CPU禁止禁止/允允许设备请求许设备请求 58l l 启动外设启动外设一条指令结束一条指令结束时有中断请求?时有中断请求?N NY Y继续原程序继续原程序(3 3)中断流程)中断流程CPUCPU内设置允许中断标志内设置允许中断标志=1 =1 允许响应中断允许响应中断(开中断)(开中断)=0 =0 不允许响应中断不允许响应中断(关中断)(关中断) 开中断开中断执行中断执行中断服务程序服务程序继续原程序继续原程序响应响应返回返回 中断服务程序可以扩充,所以其处理能力很强。它可以处理非常复杂的随机事件。但在

29、中断服务程序与原来执行的程序间切换需要一定的时间,这样就会影响到中断处理的速度。所以,中断方式更适合于中、低速的I/O操作。59 (4)应用场合)应用场合 用于中、低速用于中、低速I/O操作或处理复杂随机事操作或处理复杂随机事态。态。 对于高速的如磁盘等设备的I/O操作,则采用直接存储器存取(访问)方式-DMA。60 3、DMA传送方式传送方式 这是直接依靠硬件在主存与I/O设备间传送数据的一种工作方式。在传送期间,不需要CPU执行程序进行干预。 6162 早期的计算机系统中,由早期的计算机系统中,由CPUCPU发送命发送命令控制令控制DMADMA传送,即传送,即CPUCPU响应设备提出的响应

30、设备提出的DMADMA请求之后,在一个周期内暂停执行程请求之后,在一个周期内暂停执行程序(不进行程序切换),实现序(不进行程序切换),实现DMADMA传送。传送。这个周期称为这个周期称为DMADMA周期。这种方式称为周周期。这种方式称为周期挪用或周期窃取。期挪用或周期窃取。 在现代计算机系统中,是通过设置一种专用的控制器-DMA控制器,即DMA控制器。CPU响应DMA请求后,暂停使用系统总线和访存,由DMA控制器掌握总线权,在DMA周期中发出命令,实现主存与I/O设备间的DMA传送。CPU仅暂停执行程序而不是切换程序,因而不必保存断点、现场等信息,响应速度大为提高。63 在DMA操作前,还必须

31、确定:从主存的哪个单元开始传送?数据量有多大?是从主存传外设还是外设传主存?与外设的什么地址交换数据?这些问题无法直接通过硬件解决,需由程序事先准备相关控制信息-DMA的初始化操作。另外:一批数据传送后如何判断是否正确,也需通过中断方式处理。也就是说:DMA传送前和传送后都需要CPU执行程序来干预。64 传送方向传送方向:即是输入还是输出。该信息可以包括在控制字中,由程序送到DMA控制器中的有关控制逻辑。主存缓冲区首地址主存缓冲区首地址:为了与主存进行数据传送,需在主存中划一个对应于外设的缓冲区,从缓冲区向外设输出数据或由外设向缓冲区输入数据。65 为此,在DMA 控制器中设置一个地址计数器,

32、初始化时将主存缓冲区首地址送入该计数器,以后每传一个数据便修改该计数值,使它指向下一个数据所对应的主存地址。66 交换数据量交换数据量:通常,启动一次DMA要传送一批数据,每次DMA初始化后将要传送一个或几个数据块。这样,就必须给出起始地址、传送量(如字节数或数据块数)。DMA控制器中也设置一 个计数器来控制传送数据的结束。外设寻址信息外设寻址信息:这是如磁盘驱动器号、磁道号、磁头号、起始数据块号等。这些信息通常由程序送入DMA接口的相应逻辑中。67 CPU在完成初始化后,启动有关外部设备(如磁盘存储器;然后CPU可以继续执行自己的程序。当外部设备准备好传送一 个数据的条件,就向CPU提出请求

33、。 CPU响应后进入DMA周期,由DMA控制器接管系统总线权,在主存缓冲区和磁盘接口间进行一次传送。当准备好下一个数据的传送,外设再次向CPU提出请求。若干次DMA请求,占用数次DMA周期来完成所要求的数据传送。68 在DMA传送期间,CPU程序并不干预。如果传送中存在错误,将由有关的状态字记录下来,留待DMA批量传送结束后再作善后处理。通常,在批量传送结束时,由外设接口向CPU发出中断请求,CPU通过调用中断处理程序进行处理。所以,DMA传送是:DMA方式实现快速的数据直接传送,中断方式处理复杂的事态(如善后处理)。 后面给出DMA方式才流程图。69 70l DMADMA初始化初始化启动启动

34、I/OI/O设备设备DMADMA请求请求DMADMA请求请求中断请求中断请求响应响应返回返回结束处理结束处理(DMADMA传送)传送)DMADMA方式的程序组织方式的程序组织 响应DMA请求后的DMA传送是在DMA控制器硬件控制下实现的,并不是执行程序(指令);编制程序时无需考虑,所以图中以括号标注的程序并不存在硬件隐指令操作。71 综上所述,DMA实现的思想:由CPU通过执行程序对DMA进行初始化,将有关控制信息发给DMA控制器,CPU不再干预;以后以响应随机请求方式,由DMA控制器实现DMA传送;批量结束时,CPU以响应中断请求方式进行结束处理。72 73l (2 2)硬件设置)硬件设置

35、操作类型操作类型 地址计数地址计数控制传送方向控制传送方向DMADMA控制器控制器接口接口提供主存地址提供主存地址 交换量计数交换量计数控制传送次数控制传送次数 请求请求DMADMA中断中断 数据缓冲数据缓冲传递请求传递请求暂存交换数据暂存交换数据 外设寻址外设寻址提供外设地址提供外设地址初始化信息初始化信息 74l 启动外设启动外设 一个总线周期结一个总线周期结 束时有束时有DMADMA请求?请求?N NY Y 继续程序继续程序传送初始化:传送操作类型、传送初始化:传送操作类型、主存首址、交换量、外设寻主存首址、交换量、外设寻址信息址信息一次一次DMADMA传送传送 地址地址+ +1 交换量

36、交换量- -1 一条指令结束一条指令结束 时有中断请求?时有中断请求?中断处理中断处理Y Y交换量交换量=0=0?N NY Y申请中断申请中断N N响应响应 75l 主程序主程序实现初始化。实现初始化。DMADMA传送的三个阶段:传送的三个阶段:程序准备:程序准备:DMADMA传送:传送:善后处理:善后处理:硬件硬件实现实现M MI/OI/O。中断处理程序中断处理程序判断传送的正误。判断传送的正误。 DMA DMA方式只占用系统总线,不切换程序,不方式只占用系统总线,不切换程序,不需要保存和恢复断点、保护和恢复现场等操需要保存和恢复断点、保护和恢复现场等操作。因此能进行快速处理。作。因此能进行

37、快速处理。 76l 应用场合应用场合用于高速、简单、批量数据用于高速、简单、批量数据传送。传送。DMADMA与中断的相同点:与中断的相同点:能响应随机请求;可并行操作。能响应随机请求;可并行操作。DMADMA与中断的不同点:与中断的不同点:中断:用程序实现中、低速中断:用程序实现中、低速I/OI/O传送;能处理复杂传送;能处理复杂 一条指令结束时响应请求。一条指令结束时响应请求。事态;事态;DMADMA:用硬件实现高速、简单用硬件实现高速、简单I/OI/O传送;一个总线传送;一个总线 周期结束时响应请求。周期结束时响应请求。 程序切换程序切换总线权切换总线权切换 DMA的优点是传送速度快、传送

38、操作简单。适合高速外设与主存间的批量数据传送。 实际工作中,是采用中断方式还是DMA方式,要根据具体情况和环境来定。774.4 组合逻辑控制器组合逻辑控制器概述组合逻辑控制器概述 在CPU中,控制器的作用是决定在什么时间、根据什么条件、发什么命令、做什么操作。因此产生微命令的依据是时间(如周期、节拍、脉冲等时序信号)、指令代码(如操作码、寻址方式、寄存器号)、状态(如CPU内部的程序状态字、外设的状态)、外部请求(如控制台请求、外部中断请求、DMA请求)等。78 按照微命令的形成方式,控制器分为组合逻辑控制器、微程序控制器。79 这些信息可作为逻辑变量,经组合逻辑电路产生微命令序列;也可形成相

39、应的微程序地址,通过执行微指令直接产生微命令序列。80 81l 1.1.组合逻辑控制器的时序划分组合逻辑控制器的时序划分即时序信号与操作的关系即时序信号与操作的关系 采用三级时序系统:采用三级时序系统:指令周期指令周期工作周期工作周期1 1工作周期工作周期2 2工作周期工作周期n n时钟周期时钟周期1 1时钟周期时钟周期2 2时钟周期时钟周期m m.工作脉冲工作脉冲1 1工作脉冲工作脉冲2 2工作脉冲工作脉冲k k.( (节拍节拍1)1)( (节拍节拍2)2)( (节拍节拍m)m) 82 2 2、 时序关系:时序关系:振荡器输出振荡器输出工作周期工作周期1 1工作周期工作周期2 2工作周期工作

40、周期3 3时钟时钟T1T1工作脉冲工作脉冲P P时钟时钟T2T2指令周期指令周期控制不同阶段操作时间控制不同阶段操作时间控制分步操作时间控制分步操作时间对微操作定时对微操作定时取指取指执行执行取数取数取出指令取出指令修改修改PC打入打入IR打入打入PC 3、组合逻辑控制器、组合逻辑控制器 由于每个微命令的产生都需要逻辑条件和时间条件,把条件作为输入,微命令作为输出,它们之间的关系可用逻辑表达式来表示,并可用组合逻辑电路来实现。每种微命令需要一组逻辑电路,全机所有微命令所需的逻辑电路构成了微命令发生器。 83 执行指令时,由组合逻辑电路(微命令发生器)在相应时间发出所需的微命令,控制有关操作。这

41、种产生微命令的方式就是组合逻辑控制方式。84 通常,组合逻辑控制器包括:微命令发生器、指令寄存器IR、程序计数器PC、状态寄存器PSW、时序系统等部件。 微命令发生器由若干门电路组成。85 86l 微命令微命令发生器发生器微命令序列微命令序列I/OI/O状态状态控制台信息控制台信息运行状态运行状态译码译码. PSW PSW 时序时序 IR IR地址形成地址形成PCPCD寻寻来自来自M送送M或或ALU+1送送M 874.4.时序控制方式及其变化时序控制方式及其变化(1 1)同步控制)同步控制各项操作受统一时序控制。各项操作受统一时序控制。定义:定义:特点:特点:有明显时序时间划分;有明显时序时间

42、划分;时钟周期时间固定;时钟周期时间固定;各步操作的衔接、各部件之间的数据传各步操作的衔接、各部件之间的数据传 送受严格同步定时控制。送受严格同步定时控制。各项操作受各项操作受统一时序统一时序控制。控制。由由CPUCPU或或其他设备其他设备提供提供优缺点:优缺点:控制逻辑易于集中,便于管理。控制逻辑易于集中,便于管理。时序关系简单,时序划分规整,控制不复杂;时序关系简单,时序划分规整,控制不复杂;但时间安排不合理。但时间安排不合理。 88应用场合:应用场合:用于用于CPUCPU内部、设备内部、系统总线操作内部、设备内部、系统总线操作( (各挂接各挂接部件速度相近,传送时间确定,传送距离较近部件

43、速度相近,传送时间确定,传送距离较近) )。(2 2)异步控制)异步控制 各项操作按不同需要安排时间,不受统各项操作按不同需要安排时间,不受统一时序控制。一时序控制。定义:定义:特点:特点: 无统一时钟周期划分;无统一时钟周期划分;各操作间的衔接和各部件之间的信息交换采各操作间的衔接和各部件之间的信息交换采用异步应答方式。用异步应答方式。 89l 例例. .总线的异步传送操作总线的异步传送操作 主设备:主设备:申请并掌握总线权的设备。申请并掌握总线权的设备。总线总线主主从从 从设备:从设备:响应主设备请求的设备。响应主设备请求的设备。发发/接接接接/发发 90主设备获得总线控制权主设备获得总线

44、控制权 操作流程:操作流程: 主设备询问从设备主设备询问从设备主设备发送主设备发送/ /接收数据接收数据主设备释放总线控制权主设备释放总线控制权 从设备准备好?从设备准备好?YN主设备输出端与总线连接主设备输出端与总线连接主设备输出端与总线断开主设备输出端与总线断开 91时间安排紧凑、合理;时间安排紧凑、合理;但控制复杂。但控制复杂。优缺点:优缺点:应用场合:应用场合: 用于异步总线操作用于异步总线操作( (各挂接部件速度各挂接部件速度差异大,传送时间不确定,传送距离较远差异大,传送时间不确定,传送距离较远) )。(3 3)同步方式的变化)同步方式的变化指令周期长度可变,时钟周期长度不变。指令

45、周期长度可变,时钟周期长度不变。不同指令安排不同时钟周期数不同指令安排不同时钟周期数总线周期中插入延长周期总线周期中插入延长周期经总线传送一次数据所用的时间经总线传送一次数据所用的时间( (送地址、读送地址、读/ /写写) ) 92总线周期长度可变,时钟周期长度不变。总线周期长度可变,时钟周期长度不变。总线周期总线周期( (4T) )例例. .一个总线周期包含一个总线周期包含4 4个时钟周期个时钟周期时钟时钟T1T3T2T4送地址送地址读读/写数据写数据 结束结束同步方式同步方式时钟时钟T1T3T2T4T4T4Tw送地址送地址读读/写数据写数据 结束结束总线周期总线周期( (5T) )扩展同步

46、方式扩展同步方式 93同步方式引入异步应答同步方式引入异步应答以固定时钟周期作为时序基础,引入应答思想以固定时钟周期作为时序基础,引入应答思想例例.8088.8088最大模式,用一根最大模式,用一根总线请求总线请求/ /应答应答线实现线实现总线权的转移。总线权的转移。设备请求设备请求总线权总线权RQ/GTRQ/GTCPUCPU使用使用总线总线CPUCPU使用使用总线总线CPUCPU使用使用总线总线设备使用设备使用总线总线设备设备设备设备CPUCPUCPUCPU响应,响应,总线权交设备总线权交设备CPUCPU设备释放设备释放总线权总线权CPUCPU设备设备若干时钟若干时钟若干时钟若干时钟 94l

47、4.5 微程序控制器微程序控制器l 所谓微程序控制方式,是指微命令是由微指令产生的。一条机器指令可分若干步执行,将每一步操作所需的若干微命令以代码形式编写在一条微指令中,若干条微指令组成一段微程序,对应一条机器指令。在设计CPU时,根据指令系统的需要,事先编好各段微程序,并存放在一专用ROM(控制存储器)中。 95l 微程序控制器与组合逻辑控制器最大的不同之处是微命令产生部件的实体不是一些组合逻辑电路的集合,而是由一个控制存储器CM和相应的微指令寄存器等部件。l CM是一个只读存储器,结构比较规整。对于不同的指令系统,仅改变CM的内容和容量。 96l 微地址微地址形成电路形成电路 IR PSW

48、 PC微地址寄存器微地址寄存器 AR控制存储器控制存储器CM 译码器译码器微命令序列微命令序列微命令字段微命令字段 微地址字段微地址字段IR控制存储器控制存储器CM例题:某微型机的设计下面以一位加法单元说明其工作流程。 97加法单元加法单元 i本位操作数本位操作数A Ai iB Bi i低位进位低位进位C Ci-i-1 1本位进位本位进位 C Ci i本位和本位和 i i图图3 316 16 一位加法单元示意图一位加法单元示意图*模型机 CPU的设计 前面我们讨论了CPU组织有关的内容:逻辑组成、时序控制、运算部件、运算方法。现在将把前面的内容用于设计一台模型机,让同学们进一步建立整机概念,了

49、解CPU的工作机制、执行指令以及如何产生微命令序列。9899* * *CPUCPU设计步骤设计步骤设计步骤:设计步骤:拟定指令系统拟定指令系统确定总体结构确定总体结构安排时序安排时序拟定指令流程和微命令序列。拟定指令流程和微命令序列。形成控制逻辑形成控制逻辑格式、寻址方式、格式、寻址方式、指令类型设置指令类型设置寄存器、寄存器、ALUALU、数、数据通路设置据通路设置画流程图画流程图( (寄存器传送级寄存器传送级) )列操作时间表列操作时间表组:列逻辑式,形组:列逻辑式,形成逻辑电路成逻辑电路微:按微指令格式微:按微指令格式编写微程序编写微程序100* * *模型机的指令系统模型机的指令系统一

50、一. .指令格式指令格式指令字长指令字长1616位,采用寄存器型寻址,指令中位,采用寄存器型寻址,指令中给出寄存器号。给出寄存器号。 (主存容量为(主存容量为64K64K1616位)位)101双操作数指令格式:双操作数指令格式:4 6 3 34 6 3 3操作码操作码 寄存器号寄存器号 寻址方式寻址方式 寄存器号寄存器号 寻址方式寻址方式目的地址目的地址源地址源地址单操作数指令格式:单操作数指令格式:操作码操作码 (可扩展)(可扩展) 寄存器号寄存器号 寻址方式寻址方式4 3 3 3 34 3 3 3 3目的地址目的地址转移指令格式:转移指令格式: 4 3 3 1 1 1 1 1 4 3 3

51、1 1 1 1 1转移地址转移地址转移条件转移条件操作码操作码 寄存器号寄存器号 寻址方式寻址方式 方式方式 NZVCNZVC102CPUCPU可编程访问的寄存器:可编程访问的寄存器:寻址方式寻址方式 编码编码 助记符助记符 定义定义二二. .寻址方式寻址方式寄存器寻址寄存器寻址通用寄存器通用寄存器R0-R3R0-R3、指令计数器、指令计数器PCPC、堆栈指针、堆栈指针SPSP、程序状态字、程序状态字PSWPSW000000R R(R R)为操作数)为操作数寄存器间址寄存器间址001001(R R)(R R)为操作数地址)为操作数地址自减型寄存自减型寄存器间址器间址010010-(R)-(R)

52、-(SP)-(SP)(R)-1(R)-1为操作数地址为操作数地址(SP)-1(SP)-1为栈顶地址为栈顶地址103寻址方式寻址方式 编码编码 助记符助记符 定义定义101101(PC)+(PC)+(R)+d(R)+d为有效地址为有效地址(R R)为操作数地址,)为操作数地址,立即立即/ /自增型自增型寄存器间址寄存器间址011011(R)+(R)+访问后访问后(R)+1(R)+1(SP)+(SP)+(SP)(SP)为栈顶地址,为栈顶地址,出栈后出栈后(SP)+1(SP)+1(PC)(PC)为立即数地址,为立即数地址,取数后取数后(PC)+1(PC)+1变址变址X(R)X(R)X(PC)X(PC

53、)(PC)+d(PC)+d为有效地址为有效地址跳步跳步110110SKPSKP跳过下条指令执行跳过下条指令执行104操作码操作码 助记符助记符 含义含义三三. .指令类型指令类型用于数传、堆栈、用于数传、堆栈、I/OI/O操作操作00000000MOVMOV传送传送00010001ADDADD加加01010101EOREOR异或异或双操作数指令双操作数指令01100110COMCOM求反求反10111011SRSR右移右移单操作数指令单操作数指令11001100JMPJMP转移转移11001100RSTRST返回返回11011101JSRJSR转子转子1050 0 0 0 0 0 0 0 0

54、0 5 4 3 2 1 0 5 4 3 2 1 0转移地址转移地址无条件转无条件转JMP JMP 寄寄 寻寻 方式方式 NZVCNZVC0 0 0 0 0 0 0 0 1 1 无进位无进位转转(C=(C=0 0) )0 0 0 0 0 0 1 1 0 0 无溢出无溢出转转(V=(V=0 0) )0 0 0 0 1 1 0 0 0 0 数非零转数非零转(Z=(Z=0 0) )0 0 1 1 0 0 0 0 0 0 数为正转数为正转(N=(N=0 0) )1 1 0 0 0 0 0 0 1 1 有进位有进位转转(C=(C=1 1) )1 1 0 0 0 0 1 1 0 0 有溢出有溢出转转(V=(

55、V=1 1) )1 1 0 0 1 1 0 00 0 数为零转数为零转(Z=(Z=1 1) )1 1 1 1 0 0 00 0 0 数为负转数为负转(N=(N=1 1) )条件满足,转目的地址;条件不满足,顺序执行。条件满足,转目的地址;条件不满足,顺序执行。转移指令106隐含约定:转子时返回地址压栈保存。隐含约定:转子时返回地址压栈保存。子程序入口子程序入口JSR JSR 寄寄 寻寻 方式方式 NZVCNZVC 5 4 3 2 1 0 5 4 3 2 1 0四、四、 CPUCPU总体结构总体结构1.1.寄存器设置寄存器设置(1 1)可编程寄存器()可编程寄存器(1616位)位)通用寄存器通用

56、寄存器:R R0 0(000)(000)、R R1 1(001)(001)R R2 2(010)(010)、R R3 3(011)(011)11 9 8 6 5 011 9 8 6 5 0 RSTRST SPSP (SPSP)+ + 转子指令返回指令107允许中断(开中断)允许中断(开中断) (可扩展)(可扩展) I N Z V CI N Z V C 4 3 2 1 0 4 3 2 1 0暂存器暂存器C C(2 2)非编程寄存器()非编程寄存器(1616位)位)堆栈指针堆栈指针:SPSP(100)(100)指令计数器指令计数器:PCPC(111)(111)程序状态字程序状态字:PSWPSW(1

57、01)(101): :暂存来自主存的暂存来自主存的源地址源地址或或源数据源数据。暂存器暂存器D D: :暂存来自主存的暂存来自主存的目的地址目的地址或或目的数目的数。指令寄存器指令寄存器IRIR地址寄存器地址寄存器MARMAR数据寄存器数据寄存器MDRMDR: :存放现行指令。存放现行指令。实现实现CPUCPU与主存的接口与主存的接口108SN74181 4SN74181 4片片SN74182 1SN74182 1片片2.2.算逻部件设置算逻部件设置ALUALU移位器移位器: :实现实现直送直送、左移左移、右移右移、字节交换字节交换(1616位)位)选择数据来源选择数据来源选择器选择器A A选

58、择器选择器B B 109五、模型机的组成与数据通路五、模型机的组成与数据通路 为了使数据传送控制简单、集中,采用为了使数据传送控制简单、集中,采用以以ALUALU为中心的总线结构为中心的总线结构。(一)部件设置(一)部件设置包括四个部分:包括四个部分:ALUALU部件、寄存器组、内总线、部件、寄存器组、内总线、CPUCPU与系统总与系统总线的连接。线的连接。 通常,部件设置有1、寄存器(包括可编程寄存器、暂存器、指令寄存器IR和与主存的接口寄存器MAR(地址寄存器)、MDR(数据寄存器)。2、运算部件(包括ALU部件、输入逻辑、输出逻辑)110111(2 2)特点)特点ALUALU为内部数据传

59、送通路的中心;为内部数据传送通路的中心; 寄存器寄存器采用采用内总线内总线采用单向数据总线采用单向数据总线(16(16位位) );分立结构;分立结构; R0R3 R0R3 C D C D SP PC PSW MDR A移位器移位器 B ALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMDR IR PC SPPSWABDB控制控制逻辑逻辑 112与系统总线与系统总线的连接通过的连接通过MARMAR、MDRMDR实现。实现。MDRMDR输入输入输出至输出至DBDB输出至输出至ALUALU的的B B门门输出输出从内总线输入从内总线输入从从DBDB输入输入( (打入打入) )( (

60、置入置入) ) R0R3 R0R3 C D C D SP PC PSW MDR A移位器移位器 B ALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMDR IR PC SPPSWABDB控制控制逻辑逻辑 (二)总线与数据通路结构(二)总线与数据通路结构在这部分中,主要有:1、内总线,它是16根单向数据传送线。2、系统总线,CPU通过系统总线与外部连接(如与主存、外设连接)。系统总线分分为地址总线、数据总线、控制总线。CPU通过MAR向地址总线提供地址。CPU通过MDR向数据总线发送或接收数据。CPU及外围设备向控制总线发出有关控制信号或接收控制信号。113114(三)各类信

温馨提示

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

评论

0/150

提交评论