计算机硬件系统组成.ppt

上传人:牧羊曲112 文档编号:6342612 上传时间:2023-10-18 格式:PPT 页数:54 大小:428KB
返回 下载 相关 举报
计算机硬件系统组成.ppt_第1页
第1页 / 共54页
计算机硬件系统组成.ppt_第2页
第2页 / 共54页
计算机硬件系统组成.ppt_第3页
第3页 / 共54页
计算机硬件系统组成.ppt_第4页
第4页 / 共54页
计算机硬件系统组成.ppt_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《计算机硬件系统组成.ppt》由会员分享,可在线阅读,更多相关《计算机硬件系统组成.ppt(54页珍藏版)》请在三一办公上搜索。

1、,计算机硬件系统组成,运 算 器,控 制 器,主存储器,输入设备,输出设备,总线 和 入出接口,高速缓存,虚拟存储器(磁盘设备),第6章 中央处理部件(CPU),6.1 中央处理其结构 中央理器简称CPU,是用来实现运算和控制功能的部件,由运算器、控制器和寄存器 3 部分组成。运算器用于完成数据的算术和逻辑运算。CPU内部的寄存器用来暂存参加运算的操作数和运算结果。控制器通常由指令寄存器、指令译码器和控制电路组成。指令是一组二进制编码信息,主要包括两个内容:一是告诉计算机进行什么操作;二是指出操作数或操作数地址。控制电路根据指令的要求向微型机各部件发出一系列相应的控制信息,使它们协调有序地工作

2、。,第6章 中央处理部件(CPU),6.1 中央处理其结构一、结构框图,AB,DB,CB,二、各部件功能 当用计算机解决某个问题时,我们首先必须为它编写程序。程序是一个指令序列,这个序列明确告诉计算机应该执行什么操作,在什么地方找到用来操作的数据。一旦把程序装入内存储器,就可以由计算机来自动完成取出指令和执行指令的任务。专门用来完成此项工作的计算机部件就是中央处理器(CPU)。CPU对整个计算机系统的运行是极其重要的,它具有如下四方面的基本功能:,(一)指令控制 程序的顺序控制称为指令控制。由于程序是一个指令序列,这些指令的相互顺序不能任意颠倒,必须严格按程序规定的顺序进行。,(二)操作控制

3、一条指令的功能往往是由若干个操作信号的组合来实现的,因此,CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。,(三)时间控制 对各种操作实施时间上的定时称为时间控制。在计算机中,各种指令的操作信号以及一条指令的整个执行过程都受到时间的严格定时。,(四)数据加工 数据加工就是对数据进行算术运算和逻辑运算处理。,6.2 控制器一、控制器的分类微程序的控制器硬布线的控制器,计算机的功能是执行程序 程序是依次排列起来的指令代码 控制器的功能就在于 正确且自动地连续执行指令 正确地分步完成每一条指令规定的功能再进一步说,就是向计算机各功能

4、部件发出 协调运行每一步所需要的控制信号,每条指令的执行步骤,读取指令指令地址送入主存地址寄存器读主存,读出内容送入指定的寄存器分析指令按指令规定内容执行指令不同指令的操作步骤数,和具体操作内容差异很大检查有无中断请求若有,则转中断处理若无,则转入下一条指令的执行过程,形成下一条指令地址,6.2 控制器二、控制器的功能(一)取指令:(二)分析指令:(三)执行指令:(四)I/O操作:(五)处理异常:,三、控制器的组成 根据对控制器的功能分析,得出控制器的基本组成如下:,(一)程序计数器(PC):,为了保证程序能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。而程序计数器正是起到这

5、种作用,所以通常又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的第一条指令所在的内存单元地址送入PC,因此PC的内容即是从内存提取的第一条指令的地址。当执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1。但是,当遇到转移指令如JMP指令时,那么后继指令的地址(即PC的内容)必须从指令的地址段取得。在这种情况下,下一条从内存取出的指令将由转移指令来规定,而不是像通常一样按顺序来取得。因此程序计数器的结构应当是具有寄存信息和计数两种功能的结构。,(二)地址寄存器(AR):地址

6、寄存器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。当CPU和内存进行信息交换,即CPU向内存存/取数据时,或者CPU从内存中读出指令时,都要使用地址寄存器和数据缓冲寄存器。同样,如果我们把外围设备的设备地址作为象内存的地址单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样使用地址寄存器和数据缓冲寄存器。,(三)数据缓冲寄存器(DR):数据缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在数据缓冲寄存器中。

7、缓冲寄存器的作用是:(1)作为CPU和内存、外部设备之间信息传送的中转站;(2)补偿CPU和内存、外围设备之间在操作速度上的差别;(3)在单累加器结构的运算器中,数据缓冲寄存器还可兼作为操作数寄存器。,(四)指令寄存器(IR)指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。,(五)

8、累加寄存器(AC):累加寄存器AC通常简称为累加器,它是一个通用寄存器。其功能是:当运算器的算术逻辑单元(ALU)执行算术或逻辑运算时,为ALU提供一个工作区。累加寄存器暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄存器。目前CPU中的累加寄存器,多达16个,32个,甚至更多。当使用多个累加器时,就变成通用寄存器堆结构,其中任何一个可存放源操作数,也可存放结果操作数。在这种情况下,需要在指令格式中对寄存器号加以编址。,(六)状态条件寄存器(PSW):状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,如运算结果进位标志(C),运算结果溢出标志(V),运算

9、结果为零标 志(Z),运算结果为负标志(N)等等。这些标志位通常分别由 1位触发器保存。除此之外,状态条件寄存器还保存中断和系统工作状态等信息,以便使CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。,(七)脉冲源及启停线路:脉冲源产生一定频率的脉冲信号作为整个机器的时钟脉冲,是机器周期和工作脉冲的基准信号,在机器刚加电时,还应产生一个总清信号(reset)。启停线路保证可靠地送出封锁时钟脉冲,控制时序信号的发生或停止,从而起动机器工作或使之停机。,(八)时钟控制信号形成部件 当机器启动后,在CLK时钟作用下,根据当前正在执行的指令

10、的需要,产生相应的时序控制信号,并根据被控制功能部件的反馈信号调整时序控制信号。,时序控制信号形成部件,译码,IR,PC,输出设备,输入设备,主存,运算器部件,时序,启停,地址寄存器,数据总线,地址总线,控制总线,.,控制条件,控制器信号,主振,硬布线方案的控制器,控制存储器,映射,IR,PC,输出设备,输入设备,主存,运算器部件,下地址,启停,地址寄存器,数据总线,地址总线,控制总线,.,控制条件,微指令寄存器,主振,微程序方案的控制器,四、组成控制器的基本电路(一)具有记忆功能的触发器以及由它组成的寄存器、计数器和存储单元。其特点是当输入信号消失后,源信号仍保留其中。,(二)没有记忆功能的

11、门电路及由它组成的加法器、算术逻辑运算单元(ALU)和各种逻辑电路等。其特点是当输入信号改变后,输出跟着改变。,五、指令执行过程(一)基本概念1.指令周期:CPU从内存取出一条指令并执行这条指令的时间总和。2.CPU周期:又称机器周期,CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义。3.时钟周期:通常称为节拍脉冲或T周期。一个CPU周期包含若干个时钟周期。下图示出了采用定长CPU周期的指令周期示意图。,(二)CLA命令 CLA是一条非访内指令,它需要两个CPU 周期,其中取指令阶段需要一个CPU周期,执行指令阶段需要一个CPU周期。1取指令阶段(1)程序计数器PC

12、的内容20(假设)被装入地址寄存器AR;(2)程序计数器内容加1,变成21,为取下一条指令做好准备;(3)地址寄存器的内容被放到地址总线上;(4)所选存储器单元20的内容经过数据总线,传送到数据缓冲寄存器DR;(5)缓冲寄存器的内容传送到指令寄存器IR;(6)指令寄存器中的操作码被译码或测试;(7)CPU识别出是指令CLA,至此,取指令阶段即告结束。,2执行指令阶段(1)操作控制器送一控制信号给算术逻辑运算单元ALU;(2)ALU响应该控制信号,将累加寄存器AC的内容全部清零,从而执行了CLA指令。,(三)ADD 30命令ADD指令的指令周期由三个CPU周期组成。,取指令阶段 取指令阶段与CL

13、A基本相同;,2.送操作数地址 第二个CPU周期主要完成送操作数地址。在此阶段,CPU的动作只有一个,那就是把指令寄存器中的地址码部分(30)装入地址寄存器,其中30为内存中存放操作数的地址。,3.两操作数相加 第三个CPU周期主要完成取操作数并执行加法操作中。在此阶段,CPU完成如下动作:(1)把地址寄存器中的操作数的地址(30)发送到地址总线(2)由存储器单元30中读出操作数(6),并经过数据总线传送到缓冲寄存器。(3)执行加操作:由数据缓冲寄存器来的操作数(6)可送往ALU 的一个输入端,已等候在累加器内的另 一个操作数(因为CLA指令执行结束后累加器内容为零)送往ALU的另一输入端,于

14、是ALU将两数相加,产生运算结果为0+66。这个结果放回累加器,替换了累加器中原先的数0。,(四)STA 40 指令1.取指令阶段 取指令阶段与CLA基本相同;,2.送操作数地址 在第二个CPU周期中,CPU完成的动作是把指令寄存器中地址码部分的形式地址40装到地址寄存器。其中数字40是操作数地址。,3.存储和数执行阶段的第二个CPU周期中,累加寄存器的内容传送到缓冲寄存器,然后再存入到所选定的存储单元(40)中。CPU完成如下动作:(1)累加器的内容(6)被传送到数据缓冲寄存器DR;(2)把地址寄存器的内容(40)发送到地址总线上,40即为将要存入的数据6的内存单元号;,(3)把缓冲寄存器的

15、内容(6)发送到数据总线上;(4)数据总线上的数写入到所选中的存储器单元中,即将数6写入到存储器40号单元中。注意:在这个操作之后,累加器中仍然保留和数6,而存储器40号单元中原先的内容被冲掉。,(五)NOP 指令 这是一条空操作指令。其中第一个CPU周期中取指令,CPU把23号单元的“NOP”指令取出放到指令寄存器,第二个CPU周期中执行该指令。因译码器译出是“NOP”指令,第二个CPU周期中操作控制器不发出任何控制信号。NOP指令可用来调机之用。,(六)JMP 21 指令 JMP指令的指令周期由两个CPU周期组成。1.第一个CPU周期(取指令阶段)CPU把24号单元的“JMP 21”指令取

16、出放至指令寄存器,同时程序计数器内容加1,变为25,从而取下一条指令做好准备。,2.第二个CPU周期(执行阶段)CPU把指令寄存器中地址码部分21送到程序计数器,从而用新内容21代替PC原先的内容25。这样,下一条指令将不从25单元读出,而是从内存21单元开始读出并执行,从而改变了程序原先的执行顺序。,注意:执行“JMP 21”指令时,我们此处所给的四条指令组成的程序进入了死循环,除非人为停机,否则这个程序将无休止地运行下去。,6.3 微程序控制器一、基本概念微程序控制器:所有控制信号皆由微程序及相关电路产生。微操作:计算机最小且不可分解的操作。微操作控制信号:控制微操作的信号。微指令:若干个

17、微命令的集合。微命令:产生微操作控制信号的命令。微程序:完成一条机器指令所需全部微指令的有序集合。微控制存储器:用来存放微程序的存储器。,二、微程序控制器的工作过程(一)结构1.结构框图,它主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。1.控制存储器控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器。一旦微程序固化,机器运行时则只读不写。其工作过程是:每读出一条微指令,则执行这条微指令;接着又读出下一条微指令,又执行这一条微指令。读出一条微指令并执 行微指令的时间总和称为一个微指令周期。通常,在串行方式的微程序控制器中,微指令周期就是只读存储器的工作周期。控制存储器的字

18、长就是微指令字的长度,其存储容量视机器指令系统而定,即取决于微程序的数量。对控制存储器的要求是速度快,读出周期要短。,2.微指令寄存器微指令寄存器用来存放由控制存储器读出的一条微指令信息。其中微地址寄存器决定将要访问的下一条微指令的地址,而微命令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。3.地址转移逻辑 在一般情况下,微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址,这个微地址信息就存放在微地址寄存器中。如果微程序不出现分支,那么下一条微指令的地址就直接由微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。在这种情况下,通过判别测试字段P和执行

19、部件的“状态条件”反馈信息,去修改微地址寄存器的内容,并按改好的内容去读下一条微指令。地址转移逻辑就承担自动完成修改微地址的任务。,(二)工作过程 以执行一条加法指令为例,它由四条微指令解释执行,一条微指令中的所有控制信号是同时发出的。每条微指令所需的控制信号如下:1.取指微指令 指令地址送地址总线;发访存控制命令,从存储器取指令送数据总线;指令送指令寄存器;程序计数器+1。2.计算地址微指令 取两个源操作数(计算地址用);加法运算;有效地址送地址寄存器;,3.取数微指令 数据地址送地址总线;发访存控制命令,从存储器将数据送数据总线;数据送数据寄存器;4.加法运算和送结果微指令 两操作输送AL

20、U;加法运算;运算结果送通用寄存器。,(三)微指令的组成形式 微指令最简单的组成形式是将控制信号用一个控制位来表示,当该位为“1”时,定义为有控制信号,当该位为“0”时,没有控制信号。如控制存储器容量位4K时,则总共有23个控制信号,其余12位来表示下址。如书176页实际的计算机的控制信号数量要大的多,而且控制存储器容量一般大于4K字,因此微指令字的长度通常在100位以上。控制存储器的容量取决于实现指令系统所需的微程序的长度。,(四)CPU周期与微指令周期的关系在串行方式的微程序控制器中:微指令周期=读出微指令的时间+执行该条微指令的时间下图示出了某小型机中CPU周期与微指令周期的时间关系:,

21、一个CPU周期为0.8s,它包含四个等间隔的节拍脉冲T1T4,每个脉冲宽度为200ns。用T4作为读取微指令的时间,用T1+T2+T3时间作为执行微指令的时间。例如,在前600ns时间内运算器进行运算,在600ns时间的末尾运算器已经运算完毕,可用T4上升沿将运算结果打入某个寄存器。与此同时可用T4间隔读取下条微指令,经200ns时间延迟,下条微指令又从只读存储器读出,并用T1上升沿打入到微指令寄存器。如忽略触发器的翻转延迟,那么下条微指令的微命令信号就从T1上升沿起就开始有效,直到下一条微指令读出后打入微指令寄存器为止。因此一条微指令的保持时间恰好是0.8s,也就是一个CPU周期的时间。,(

22、五)机器指令与微指令的关系 一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。简言之,一条机器指令所完成的 操作划分成若干条微指令来完成,由微指令进行解释和执行。从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。我们在前面曾讲述了指令与机器周期概念,并归纳了五条典型指令的指令周期,并演示了这五条指令的微程序流程图,每一个CPU周期就对应一条微指令。这就告诉我们如何设计微程序,也将使我们进一步体验到机器指令与微指令的关系。,微程序的控制器运行原理,每条指令一个执行步骤

23、用到的全体控制信号组成一微指令每条指令可以包括一到多个微操作用多条微指令解释每条指令的整个执行过程全部微指令的集合叫做微程序执行一条微指令所用的时间被称为一个微周期。微指令的格式和内容:下地址字段 控制命令字段,执行第I条微指令,形成第I+1条微指令地址,读第I+1条微指令,读与执行微指令的并行流水技术,加法指令 ADD R1,R2,读取指令 1 AR PC 2 读主存,IR 读出内容 PC PC+1 3 由操作码找微地址,读控存执行指令 4 ALU R1 ALU R2 执行+R1 ALU结束,判中断,形成下条指令地址,寄存器内容传送指令MOV R9,R1,读取指令 1 AR PC 2 读主存

24、,IR 读出内容 PC PC+1 3 由操作码找微地址,读控存 执行指令 4 ALU 0 ALU R1 执行+R9 ALU结束,判中断,形成下条指令地址,写寄存器内容到主存MOV 807,R9,读取指令 1 AR PC 2 读主存,IR 读出内容 PC PC+1 3 由操作码找微地址,读控存执行指令 4 AR PC,PC PC+1 5 读主存,AR 读出内容 6 写主存,总线 ALU,ALU 0,ALU R9,+,形成下条指令地址,(地址 807 存在指令的第二个字中),判中断,(注),输入指令 IN 80,读取指令 1 AR PC 2 读主存,IR 读出内容 PC PC+1 3 由操作码找微

25、地址,读控存执行指令 4 AR I/o port(IR低字节)5 读外设,ALU 读出内容+,ALU 0 R0 ALU结束,判中断,形成下条指令地址,相对转移指令 JR c,offset,读取指令 1 IP,AR PC 2 读主存,IR 读出内容 PC PC+1 3 由操作码找微地址,读控存执行指令 4 若 c=1 则:ALU IP ALU offset(IR低字节)+,PC ALU 否则,顺序执行结束,判中断,形成 下条指令 地址,子程序返回指令 RET,读取指令 1 AR PC 2 读主存,IR 读出内容 PC PC+1 3 由操作码找微地址,读控存执行指令 4 AR SP SP SP+1

26、 5 读主存,PC 读出内容 结束,判中断,形成下条指令地址,设某计算机运算器框图如图(a)所示,其中ALU为16位的加法器(高电平工作),SA,SB为16位暂存器。4个通用寄存器由D触发器组成,Q端输出:,其读、写控制功能见下表:,机器采用串行微程序控制方式,其微指令周期见图(b)。其中读ROM是从控存中读出一条微指令时间,为1s;ALU工作是加法器做加法运算,为500ns;m1是读寄存器时间,为500ns;m2是写寄存器的工作脉冲宽度,为100ns。微指令字长12位,微指令格式如下:,RA0RA1:读R0-R3的选择控制WA0WA1:写R0-R3的选择控制R:寄存器读命令 W:寄存器写命令

27、 LDSA:打入SA的控制信号 LDSB:打入SB的控制信号SB-ALU:传送SB的控制信号 SB-ALU:传送SB的控制信号,并使加法器最低位加1.,Reset:清暂存器SB为零的信号:一段微程序结束,转入取机器指令的控制信号要求:用二进制代码写出如下指令的微程序:(1)“ADD R0,R1”指令,即(R0)+(R1)R1(2)“SUB R2,R3”指令,即(R3)-(R2)R3(3)“MOV R2,R3”指令,即(R2)(R3)先画出三条指令的微指令的微程序流程图,如下图所示。,其中未考虑“取指周期”和顺序控制问题,也即微程序仅考虑“执行周期”,每一框表示一条微指令。根据给定的微指令周期时间关系,完成ADD,SUB指令的执行动作需要3条微指令,MOV指令只需2条微指令。用二进制代码写出的三条指令的微程序列于下表中,其中*表示代码随意设置(0或1均可)。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号