第三章 微机的基本工作原理.ppt_第1页
第三章 微机的基本工作原理.ppt_第2页
第三章 微机的基本工作原理.ppt_第3页
第三章 微机的基本工作原理.ppt_第4页
第三章 微机的基本工作原理.ppt_第5页
已阅读5页,还剩50页未读, 继续免费阅读

下载本文档

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

文档简介

1、第三章 微机的基本工作原理,一个实际的微机的电路结构是相当复杂的。本章内容将从微机的最基本功能出发来讲解其电路原理,在有限的时间内让同学们建立一个较完整的基本概念。 微机的基本功能可概括为“三能一快”;能运算、能判别、能决策。但所有这些“能”的过程都是建立在“快”的基础上才能有实际意义。,返回,在整个计算机中,信息量是很大的,部件数很多,如何做到各个信息和部件能够“循序渐进、各得其所、有条不紊、快而不乱”?这就是计算机基本工作原理所要解答的问题。,下面将以一个简化了的微机作为分析对象,逐步讲解一般计算机的各个基本功能,从而概括出微机的基本工作原理。,3.1 微机结构的简化形式,简化的微机结构如

2、图3-1所示,其硬件结构特点是:功能简单、内存量小、字长8位、手动输入。 (1)PC (2)MAR (3)PROM(图3-2) (4)IR指令字格式: 高4位为指令字段,低4位为地址字段。,返回,返回,(5)控制器 其功能: (PC、IR)清零;发出同步脉冲CLK;发出12位控制字CON。,(6)累加器A (7)算术逻辑单元 (8)寄存器B (9)输出寄存器O (10)二进制显示器D 可见结构简单,但为一个可编程计算机的雏形,麻雀虽小,五脏具全。其功能分解为三大部分见图所示。,3.2指令系统指令系统就是用来编制程序的一个指令集合。,这台微型机有五条指令,即其控制部件能完成一系列例行程序以执行五

3、种命令: LDA将数据装入累加器A ADD进行加法运算 SUB进行减法运算 OUT输出结果 HLT停机 这五条指令在一起就称为这台计算机的指令系统。,不同型号的微处理机的指令系统是不同的,指令的条数也不相同,如Z80型的指令系统可达58条,M6800型有72条,6502型则有56条指令,而Intel 80386则为152条。,例如一个计算程序的格式如下: LDA R9 ;把 R9中的数据存入A ADD RA ;把 RA中的数据与A的相加 ADD RB ;把 RB中的数据与A的相加 ADD RC ;把 RC中的数据与A的相加 SUB RD ;把 A中的数据与RD的相减 OUT ;输出A中的数据,

4、即结果 HLT ;停机 助记符 操作数 注释,这样的格式称为用汇编语言写的汇编语言程序。最左边的符号称为助记符,中间的符号R9、RA等称为操作数,在“;”之后的称为注释,每一行就是一条指令。,运行结果(A)=(R9) 运行结果(A)=(R9)(RA) 运行结果(A)=(R9)+(RA)+(RB) 运行结果(A)=(R9)+(RA)+(RB)+(RC) 运行结果(A)=(R9)+(RA)+(RB)+(RC)-(RD) 运行结果(D)=(A) 运行结果:CLK停止发脉冲 最后一条指令,使时钟脉冲停发,则计算机停止运行,但电源未切断,所以显示器中仍继续显示计算的结果。,3.3 程序设计1、先要有一个

5、操作码表:,2、存储器分配,助记符 操作码 LDA 0000 ADD 0001 SUB 0010 OUT 1110 HLT 1111,3、将源程序翻译成目的程序,源程序 目的程序存储单元 指LDAR9 0 0 0 0 1 0 0 1 0 0 0 0 (R0) ADDRA 0 0 0 1 1 0 1 0 0 0 0 1 (R1) 令ADDRB 0 0 0 1 1 0 1 1 0 0 1 0 (R2) ADDRC 0 0 0 1 1 1 0 0 0 0 1 1 (R3) 区SUBRD 0 0 1 0 1 1 0 1 0 1 0 0 (R4) OUT 1 1 1 0 0 1 0 1 (R5) HLT

6、 1 1 1 1 0 1 1 0 (R6) 数1610 0 0 0 1 0 0 0 0 1 0 0 1 (R9) 2010 0 0 0 1 0 1 0 0 1 0 1 0 (RA) 据2410 0 0 0 1 1 0 0 0 1 0 1 1 (RB) 2810 0 0 0 1 1 1 0 0 1 1 0 0 (RC) 区3210 0 0 1 0 0 0 0 0 1 1 0 1 (RD),4、程序及数据的输入方法,将上例执行过程中间结果表列出来。这样可以看到每执行一条指令后累加器A中存放的数据:,执行LDA 9H后A=0001000016(10) 执行ADD AH后A=0010010036(10

7、) 执行ADD BH后A=0011110060(10) 执行ADD CH后A=0101100088(10) 执行SUB DH后A=0011100056(10) 执行OUT 后 D=0011 100056(10) 执行HLT 后D=00111000(不变),3.4 执行指令的例行程序,执行一条指令的时间为一个机器周期。机器周期又可分为取指周期和执行周期。取指过程和执行过程都得通过不同的机器节拍。,2、取指周期及执行周期,取指周期需要三个机器节拍: (1)地址节拍(T0=1)PC内容送MAR并到达PROM CON=CPEP LM ERLIEILAEA SUEU LBLO = 0 1 1 0 0 0

8、 0 0 0 0 0 0 (2)储存节拍(T1=1)PROM指定单元内容送到IR,高四位送控制部件 CON=0001 1000 0000 (3)增量节拍(T2=1)PC+1,指向下一条指令 CON=1000 0000 0000,执行周期也需要三个节拍:这里以LDA例行程序为例:,(4) T3=1,IR已将高四位送至控制器进行分析,IR低四位送总线,MAR接受此低四位并指向PROM的某个单元。(第一次访问的是指令区,第二次访问的是数据区) CON= CPEP LMER LIEILAEA SUEU LBLO = 0 0 1 0 0 1 0 0 0 0 0 0 (5) T4=1,PROM中数据区的存

9、储单元的内容送累加器A CON= 0 0 0 1 0 0 1 0 0 0 0 0,(6) T5=1,因T4=1时,已将数据存入A中,所以LDA的例行程序就已完成, T5为空拍: CON= 0 0 0 1 0 0 1 0 0 0 0 0,注意: (1)为什么需空拍,这是因为虽然LDA的例行程序用不着这个节拍,但一些其它指令例行程序需要六拍,为了使每条指令的机器周期都是一样长,所以在不需6个节拍的指令语句中都给加一个空拍以补足之。这样的机器称为固定周期的计算机。 (2)对任何一条指令取指周期都是三拍。 其它例行程序执行情况见表3-3,表3-3 执行指令的过程,3.5 控制部件,控制部件是使计算机能

10、够成为自动机的关键部件。控制部件的主要环节: (1)环行计数器(RC) (2)指令译码器(ID) (3)控制矩阵(CM) (4)其它控制电路 1 指令译码器 指令译码器的任务是:将四位组成的编码,译成一个信号,即译为某一控制线为高电位。其译码电路如图3-5所示。,2 控制矩阵(CM)是控制部件的核心,其输入为节拍信号和经译码后的指令信号,输出为12位控制字。其结构见图3-6所示。,3 其它控制电路(1)时钟脉冲发生器 它一般由两部分组成,即时钟振荡器及射极输出器。,(2)运行/停车触发器 这个电路既接收来自按钮的“运行”脉冲信号,也接收来自指令译码器的“HLT”停车信号. (3)“启动”和“清

11、零”按钮 图3-7用方块图展示了控制部件各个电路 间的关系。,3.6 微机功能的扩展,作为引导入门的模型机功能太简单。其原因是:首先是硬件过于简单,只能接受五条指令而产生相应的例行程序。 为了扩大计算机的功能,就应该扩大其指令系统。其次是软件开发问题,即如何利用现有的指令系统,经过灵活的编程以解决更复杂的问题。 总之,计算机的功能在很大程度上取决于中央处理器部分,而中央处理器的功能又取决于控制器的功能。 图3-8是功能扩充的微机结构简图。,图3-8 功能扩充后的微机的结构图,(1)子程序计数器SC(2)程序计数器PC,(3)RAM (4)CON (5)ALU(见表3-4) (6)变址寄存器X

12、(7)IR 对于访问存储器指令和转移指令,高四位为指令字段,低八位为地址字段。 对于运算指令,高八位为指令字段,而低四位为任意数,不代表任何意义。,说明: (1)访问存储器指令-与存储器的读/写有关,所以其地址字段必须为8位(256)。 (2)转移指令-可用以改变程序的顺序。 (3)运算指令-特点是与存储器及PC无关,而是与ALU、A及B寄存器有关。,3.7 初级程序设计举例,上节提供的指令系统,可以据以进行程序设计。 所谓初级程序是包括下列的程序模式: 1 简单程序程序一统到底,中间没有任何分支和跳转。 2 分支程序程序进行中,根据判断程序执行的不同结果而分别跳转至其他子程序。 3 循环程序

13、程序进行过程中,在某一循环体进行若干次循环运行,然后再继续前进。 4 调用子程序程序进行至某一阶段,调用存储于某存储区中的某个子程序,然后返回至主程序继续运行下去。,【例1】程序清单(循环程序) R0 LDA 6H R1 SUB 7H 指 R2 JAM 5H 令 R3 JAZ 5H 区 R4 JMP 1H R5 HLT 数 据 R6 25(十进制) 区 R7 9 (十进制),例2乘法计算的程序 12*8 (利用循环程序和加法运算来实现),R0 NOP 空操作 R1 LDX AH R2 CLA 将A清零 R3 DEX R4 ADD 9H 七次返回 R5 JIZ 7H R6 JMP 3H R7 O

14、UT 转出循环 96转至O寄存器 R8 HLT R9 12 RA 8,例3设计一个用以测试某个来自接口电路的输入数I0,以确定该数是否为奇数。如I0为奇数,则显示一个 1111 1111 1111;如I0是偶数,则显示一个 0000 0000 0000。程序清单如下:,R0 INP R1 LDB 9H R2 AND R3 JAZ 6H R4 LDA AH R5 JMP 7H R6 LDA BH R7 OUT R8 HLT,R9 0000 0000 0001(掩码或屏蔽字)RA 1111 1111 1111 奇数标志RB 0000 0000 0000 偶数标志,3.9 现代技术在微机中的应用,1

15、、流水线技术 以往的计算机都采用冯诺伊曼结构, 通常称为存储程序的运行方式,即程序的指令顺序地存储在存储器中,这些指令被逐条取出并执行。这种串行运行,重复取出和执行顺序指令是过去计算机的主要局限性。根本解决的方法是采用并行操作。 流水线技术是一种同时进行若干操作的并行处理方式。它把取操作和执行操作重叠进行,在执行一条指令的同时,又取另一条指令。串行运行的顺序如图3-12a 所示。流水线操作如图3-12b所示。,流水线技术是要增加计算机硬件,例如上述中,需要采用预取指令操作就需增加硬件来取指令,并把它存放到寄存器队列中 ,使微处理器能同时进行取指令和执行微指令重叠进行。,在微处理器中有两个运算单

16、元,一个主运算单元用于执行指令,另一个专用于地址计算。,注意:虽然流水线技术已广泛地应用于1632位微处理机,但由于不同的指令运行时间不一样长,流水线技术受到最长步骤所需时间的限制。,2、存储体系的变革,随着电子技术的发展,CPU和存储器的速度都得到了明显的改善,但存储器速度的提高赶不上CPU运算速度的提高,大容量存储器的速度远远跟 不上CPU的运算速度。 为了程序的需要,主存容量也从几千字节发展到几兆和几十兆字节、几百兆字节以上。尽管如此,受价格等方面的约束,主存容量仍不能满足程序和数据的要求。因此需要将大量不常用的程序存放于大容量、低速的辅存中。,利用硬件控制将主存与辅存有机的组成一个整体

17、,构成二级存储体系,其结构见图所示,CPU与主存可以直接交换信息,辅存可以与主存交换信息但不能与CPU直接交换信息。,在二级存储体系中,主存是与计算机各部件进行数据交换的主要设备,辅存作为主存的后援系统来弥补主存容量不足的缺陷。辅存中存放的是暂时不用和主存中容纳不下的程序和数据。,这里辅存中的信息不能被CPU直接访问,必须通过调入主存中才能被计算机的其它部件使用。一般有两种途径允许CPU运行辅存中存放的程序。 一种途径是当主存能够容纳下整个程序及所需数据时,将要使用的程序从辅存调入到主存之中,然后由CPU控制运行。 另一种途径是当主存容量不能容纳整个程序时,由程序员将程序分成与主存大小相匹配的

18、几段,按需要控制各段程序间的运行顺序,在执行时依次调入主存运行。,二级存储体系解决了主存容量不足、价格高的矛盾,但仍没有解决主存与CPU之间速度不匹配的问题。 现代科技的发展使CPU的速度快于主存的存取速度,存储器的相对低速影响了CPU性能的发挥。同时,主存与辅存之间数据交换速度也影响了计算机存储系统性能的发挥。 因此,存储系统的设计突破了用主存和辅存组成单一的二级存储结构,采用由多种性能不同、速度不同、价格不同的存储设备按一定的层次结构组成多级存储体系,见图所示。,多级存储体系是由主存辅存二级存储体系发展而来。在主存和辅存之间利用辅助的软硬件将二者连为一体,构成速度接近主存、容量接近辅存的存

19、储体系。同时为解决主存与 CPU 之间的互相匹配问题,参照主存辅存结构,在 CPU与主存之间增加高速缓冲存储器(Cache)。借助于辅助硬件,将 Cache与 主存构成一整体,使得它具有接近Cache的速度、主存的容量和接近主存的平均价格。,在多级存储体系中, Cache的出现基本解决了主存与CPU之间的速度匹配问题。 Cache的性能高于主存的性能,但由于它是采用价格昂贵的双极性RAM线路,因此其价格高于主存。采用适量的Cache既可以增加存储体系的性能,又可以将整个存储体系的价格限制在一定范围内。,Cache的原理和特点: 其工作原理是基于对大量典型程序运行实例分析,在较短的时间间隔内,由

20、程序产生的地址往往集中于存储器逻辑地址空间很小的范围内。,指令地址的分布是连续的,加上循环程序和子程序段的重复执行,对这些地址的访问自然具有时间集中分布的倾向。这种对局部范围的存储器地址频繁访问,对此范围外的地址访问甚少的现象称为程序访问的局部性。程序访问的局部性为 Cache的引入提供了理论依据。,Cache中存放着主存的一部分副本(主存中的部分内容),当存储器接到有关读取指令时,先在Cache中查找此信息是否存在,若有则不经主存从Cache中取出,否则直接从主存中取出,同时写入Cache,以备再次使用。,需要向存储器写入内容时,由辅助硬件采用各种方法保证主存中的内容同Cache中的内容保持

21、一致。保证写入时两者内容一致的方法有以下三种:(1) 将内容同时写入主存和Cache;(2) 数据仅写入主存,放弃掉Cache中相应内容;(3)数据只写入Cache,在规定的时间将修改过的Cache的内容写入主存.,Cache的特点是: (1)存取速度快; (2)存储容量小,在P 3、P4系列微机中一般设置为128KB到512KB之间。而同期主存容量为32MB到512MB之间。,3、虚拟存储的概念、作用,(1)虚拟存储器的概念、作用 主存储器的实际容量不一定与根据地址码位所计算出的容量相同,其中原因有二: 一是在大,中型计算机中,由于指令系统中的地址码位较长,实际内存空间比地址码形成的空间要小

22、得多。如某种计算机,其指令系统中地址码位的长度为32,依此可以计算出其可寻址空间为232=4294 967 296Byte,即4GB,但其主存的容量仅为16MB,两者相差256倍。而程序员希望能够使用整个32位地址码位编程,利用整个地址空间装载程序。,二是小型,微型计算机系统中指令系统的地址码位短,由地址码位形成的寻址空间比实际主存小。如一种微机的地址码长为16,其寻址空间为21665536Byte,即64KB,而其存储器的实际容量为1MB。程序设计人员希望能够在程序中利用整个内存的空间编程,以摆脱地址码位的限制。,对于第二种情况,由操作系统的存储管理部分控制,对内存的有效部分进行分段管理和重新定位,扩大其地址码位的长度,利于人们使用。,对于第一种情况,一般由操作系统将辅存的一部分当做主存使用,从而扩大程序可控制的空间。一般将这种由主存和部分辅存组成的存储结构称为虚拟存储器,其对应的存储地址称为虚拟地址(逻辑地址),其对应的存储容量称为虚拟容量,将实际主存地址称为物理地址或实地址,主存的

温馨提示

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

最新文档

评论

0/150

提交评论