微机原理与单片机应用课件:第3章 微型计算机的基本工作原理_第1页
微机原理与单片机应用课件:第3章 微型计算机的基本工作原理_第2页
微机原理与单片机应用课件:第3章 微型计算机的基本工作原理_第3页
微机原理与单片机应用课件:第3章 微型计算机的基本工作原理_第4页
微机原理与单片机应用课件:第3章 微型计算机的基本工作原理_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

1、3.1 微型计算机的简化形式 3.2 指令系统 3.3 程序设计 3.4 执行指令的例行程序 3.5 控制部件 3.6 微型计算机功能的扩展3.7 初级程序设计举例3.8 控制部件的扩展 3.9 现代技术在微型计算机中的应用 第3章 微型计算机的基本工作原理第三章 微型计算机的基本工作原理 我们从一个简化了的微机作为分析对象,逐步介绍微机的各种基本功能,从而概括出微机的基本工作原理。注意了解以下的内容:各个部件之间的信息流通过程指令系统的意义程序设计的步骤控制部件的功能及其结构 控制矩阵产生控制字的过程例行程序概念。问题:在微机系统中,有很多种部件,它们是如何做到各个信息和部件之间能够“循序渐

2、进、各得其所、有条不紊、快而不乱”的?PCIRCONMAR PROM 168AALUBODCPCLKCLKCLKCLKCLKCLKCLRCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888888444412 其特点:(1)功能简单:只能做加减法。(2)内存量小:168 PROM。(3)字长8位:二进制8位显示。(4)手动输入:用拔动开关输入程序和数据图3-1 微型计算机的简化结构 3.1微型计算机的简化形式PCIRCONMARPROM16 8AALUBODCPCLKCLKCLKCLKCLKCLKCL

3、RCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888888444412图3-1 微型计算机的简化结构 3.1微型计算机的简化形式1、程序计数器PC(program counter):其内容为指令地址,上电复位,PC=0;每取一条指令后, PC (PC) +1PCIRCONMARPROM16 8AALUBODCPCLKCLKCLKCLKCLKCLKCLRCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888

4、888444412图3-1 微型计算机的简化结构 3.1微型计算机的简化形式2、MAR(memory address register):其内容作为地址码,并选中存储器的某个单元,为读取指令做好准备。PCIRCONMARPROM16 8AALUBODCPCLKCLKCLKCLKCLKCLKCLRCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888888444412图3-1 微型计算机的简化结构 3.1微型计算机的简化形式 3、指令寄存器IR (instruction register) :IR从PR

5、OM接收到指令字,将指令字分送到控制部件CON和W总线上。指令字是8位(高4位指令字段,低4位地址字段). PCIRCONMARPROM16 8AALUBODCPCLKCLKCLKCLKCLKCLKCLRCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888888444412图3-1 微型计算机的简化结构 3.1微型计算机的简化形式4、ALU ALU是一个二进制补码加法器/减法器。SU=0,ALU进行加法 A+B;SU=1,ALU进行减法 A-BPCIRCONMARPROM16 8AALUBODCPC

6、LKCLKCLKCLKCLKCLKCLRCLREPLIEICLKCLRLMERLAEASUEULBLOCP EP LM ER LI EI LA EA SU EU LB LOW8888888888444412图3-1 微型计算机的简化结构 3.1微型计算机的简化形式 5、寄存器A、B、O和显示D A、B用以暂存数据;输出寄存器O 用以暂存要显示的数据;D是用发光二极管(LED)组成的显示器,每一个LED接到寄存器O的一位上去。 6、PROM(program read only memory)为了便于理解,用44PROM说明其工作原理。A0A1R0R1R2R3ERD0D1D2D32-4译码器图3-

7、2 44 PROM原理图 7、控制部件CON其功能如下:(1)运行开始前,CON先发出CLR=1,使相关部件清0。注意:PC=0000(2)CON产生CLK送到各个部件去,使各部件步调一致。(3)在CON中有一个控制矩阵CM(Control Matrix),根据IR送来的指令发出12位控制字: CON= CPEPLMERLIEILAEASUEULBLO根据控制字中各位的情况,计算机就能自动地按指令程序而有序的运行。1、CPU(central processing unit):包括PC、IR、CON、ALU、A和B等。2、存储器M:又称微机的内存。3、输入/输出I/O(包括C及D) CPUMI/

8、O图3-1(b) 微型计算机的功能分解图 微机按功能可分成三大部分,如图所示。3.2指令系统指令系统是用来编制计算程序的一个指令集合。不同的机型,其指令系统也不同。例如,Z80有158条指令,M6800有72条等。本模型机有5条指令。助记符 操作数 注释LDA R9 ; (R9)AADD RA ; (RA)+(A)AADD RB ; (RB)+(A)AADD RC ; (RC)+(A)ASUB RD ; A -(RD) AOUT ; 输出A中的数据HLT ;停机3.3程序设计 3.3.1 先要有一个操作码表 本操作码表共5条指令。指令为8位二进制代码,其高4位为操作码,低4位为操作数地址。助记

9、符 操作码操作数地址LDA 0000 *ADD 0001 *SUB 0010 *OUT 1110HLT 11113.3.2 存储器分配:PROM分为两个区:程序指令区和数据区 。3.3.3 将源程序翻译成目的程序 把用汇编语言编写的程序翻译成二进制代码。例: 源程序 目标程序 存储单元 LDA R9 0000 1001 0000(R0) ADD RA 0001 1010 0001 (R1) ADD RB 0001 1011 0010 (R2) ADD RC 0001 1100 0011 (R3) SUB RD 0010 1101 0100 (R4) HLT 1111 * 0101 (R5) 源

10、程序 目的程序 存储单元 16D 0001 0000 1001(R9) 20D 0001 0100 1010(RA) 24D 0001 1000 1011(RB) 28D 0001 1100 1100(RC) 32D 0010 0000 1101(RD)数据区指令区操作码表LDA 0000ADD 0001 SUB 0010 OUT 1110HLT 1111计算机运行前,必须把程序和数据装入存储器。416译码器A0A1A2A3D0D1D2D3D4D5D6D7R0R1R2R3R4R5R6R7R8R9RARBRCRDRERF3.3.4程序及数据的输入方法数据“0”开关断开数据“1”开关闭合。D0D1

11、D2D3D4D5D6D7R0R1R2R3R4R5R6R7R8R9RARBRCRDRERFR0:0000 1001R1:0001 1010R2:0001 1011R3:0001 1100R4:0010 1101R5:1111 *R9:0001 0000RA:0001 0100RB:0001 1000RC:0001 1100RD:0010 0000图3-3 PROM的初始数据输入3.4 执行指令的例行程序 在程序和数据装入之后,计算机按存储器给出的指令执行。机器周期:执行一条指令所需的时间。机器周期分为取指周期和执行周期。取指过程和执行过程都是通过不同的机器节拍。3.4.1 环形计数器及机器节拍

12、计算机以环形计数器的各位输出端高电位用作机器节拍T0-T5,环形计数器的各位的状态如下图所示。图3-4环形计数器产生的机器节拍 CLKCLRT0T1T2T3T4T5Q5Q4Q3Q2Q1Q0CLRCLKT0T1T2T3T4T5注意:只有Q0的PR端接CLR把环形计数器的输出看作是一个T字,T=T5 T4 T3 T2 T1 T0可控制六条电路,使它们依次轮流为高电位,T0,T1,T2,T3,T4,T5称为机器的节拍。 3.4.2取指周期及执行周期 取指需要3个机器节拍。在清零和启动之后第一个节拍为T0。在取指周期,在不同的机器节拍,控制器应发出什么样的控制字。(1)地址节拍T0=1,应将PC的内容

13、送到MAR。 EP=1,即PC放出数据 LM=1,MAR准备接受数据 控制器应发出的控制字为: CON= CPEP LMER LI EI LA EA SU EU LB LO = 0 1 1 0 0 0 0 0 0 0 0 0 =600H(2)储存节拍T1=1,应将(PROM)中指定的存储单元中的内容送到IR。ER=1 PROM准备放出数据LI=1 (IR)准备接受数据控制器应发出的控制字为:CON= CPEP LM ER LI EI LA EA SU EU LB LO = 0 0 0 1 1 0 0 0 0 0 0 0 =180H(3)增量节拍T2=1, (PC)+1PC,准备读取下一条指令。

14、控制器应发出的控制字为:CON= CP EP LM ER LI EI LA EA SU EU LB LO = 1 0 0 0 0 0 0 0 0 0 0 0=800HCP=1,PC的内容加1。执行周期为3个节拍。指令的高4位送入到控制部件,控制部件根据送来的指令,在不同的机器节拍,发出不同的控制字。本机共有5类可执行的程序指令。即,LDA、ADD、SUB、OUT、HLT 执行5个程序指令都要3个节拍(T3、 T4、 T5),这些程序是由生产厂家编制,称这些程序为例行程序。以LDA例行程序为例,在执行周期的3个节拍中,各寄存器的内容有何变化。(4)T3=1时, IR的高4位送至控制部件进行分析,

15、经控制部件分析后发出的命令: EI=1:将IR低4位送至总线 LM=1:MAR接收总线上来的数据。控制器应发出的控制字为:CON=CP EP LM ER,LI EI LA EA,SU EU LB LO =0 0 1 0,0 1 0 0,0 0 0 0 =240H(5)T4=1时,由MAR指定存储单元的内容送入累加器AER=1:PROM准备放出数据LA=1:A准备接收数据控制器应发出的控制字为:CON= CP EP LM ER, LI EI LA EA,SU EU LB LO = 0 0 0 1 ,0 0 1 0,0 0 0 0 =120H(6)T5=1,因为在T4节拍时,已将数据存入A中。完成

16、了该条指令的使命。在T5节拍无事可干,为空节拍。 LDA的例行程序完成。控制器应发出什的控制字为:CON=CP EP LM ER,LI EI LA EA,SU EU LB LO =0 0 0 0, 0 0 0 0,0 0 0 0 为什么需要T5这个节拍呢?助记符T0T1T2T3T4T5LDAEP,LMER,LICPEI,LMER,LAADDEP,LMER,LICPEI,LMER,LBLA,EUSUBEP,LMER,LICPEI,LMER,LBLA,EU,SUOUTEP,LMER,LICPLO,EAHLTEP,LMER,LICPHLT表1 指令执行过程中各控制位的情况(未举出者为0)3.5 控制

17、部件 控制部件是计算机的中枢部分,它包括下列主要部件: (1) 环形计数器(Ring Counter,RC) (2) 指令译码器(Instruction Decoder,ID) (3) 控制矩阵(Control Matrix,CM) (4) 其它控制电路控制器由RC、ID、CM等部件组成。利用环形计数器产生机器节拍。下面讨论ID和CM。 3.5.1指令译码器 ID 指令译码器将IR送来的高4位数据进行译码,指令译码器的每一根输出线相对应用一条指令。下图是指令译码器的示意图。译码器的真值表见下表。译码器I4I5I6I7LDAADDSUBOUTHLTI7I6I5I4LDAADDSUBOUTHLT0

18、00010000000101000001000100111000010111100001其它组合为非法指令表 译码器的真值表 IR的高4位3.5.2控制矩阵 ID将IR中的编码信息译成某一控制线为高电位。控制矩阵就是根据指令译码器的输出信号,在不同的节拍,产生不同的控制字。控制矩阵的输出端组成了控制字CON:CON=CPEPLMER,LIEILAEA,SUEULBLO控制矩阵电路本身的设计较为复杂,本节略为介绍,仅是为了解其工作原理。下图是控制矩阵的电路图。控制器T0 CM (译码器)ID RC T1 T2 T3 T4 T5 LDA ADD SUBOUT CP EP LMER LI EI LA

19、 EA SU EU LB LO 图3-6 控制矩阵(CM)的示意图 设计CM:确定输入变量和输出变量设计其真值表根据真值表分别写出输出量的逻辑代数式将每一个输出量的代数式进行化简再根据化简的代数式,设计出控制矩阵逻辑电路。 LDA指令 控制矩阵真值表OUT SUB ADD LDA T5 T4T3T2 T1 T0 CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 00 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1

20、 0 0 0 0 0 0 0 0 0 0 00 0 0 1 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 00 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 该真值表中只包含了指令LDA的相关内容,还应写出ADD、OUT和SUB的相关内容。根据完整的真值表分别写出输出量的逻辑代数式,并将其化简。再根据化简后的代数式,设计出控制矩阵逻辑电路。 用逻辑电路的方法来实现控制字的方法称为硬件方法。在指令系统较大,控制字较长的情况下,常用软件方法来实现之,这

21、就是微程序法。 3.5.3 其它控制电路 控制器是由环形计数器、控制矩阵和指令译码器等部件组成. 下图显示控制部件与其它控制电路间的关系。启动和清除按钮运行/停止触发器时钟振荡器射极跟随器RCIDCMIR高4位CLRCLKCON图3-7控制部件的结构图 1)时钟脉冲发生器,它可分成二个部分,时钟振荡器+射极跟随器。射极跟随器的作用是减小振荡器的输出电阻,以增加输出电流。2)运行/停车触发器:接收按钮的“运行”脉冲信号,也接收来自指令译码器的“HLT”停车信号,而其输出去启动时钟振荡器。3)“启动”和”清除”按钮:这是由人直接操作的主令电器,命令都是由此开始的。 3.6 微型计算机功能的扩展(自

22、学) 微机功能扩展后,有哪些新特点?(参考书P42 图3-8)较复杂的硬件结构:1、子程序计数器 SC2、程序计数的PC增加了一个LP门。3、RAM: 用RAM作为主存储器(25612)4、控制部件CON产生一个28位控制字Ls Cs Es Lp Cp Ep Lm We Me Ln En La Ea S3 S2 S1 So Eu Lb Lx Inx Dex Ex Lo5、算术逻辑部件ALU:增加了运算功能。控制端S=S3S2S1S0,可实现更多的运算。6、变址寄存器X 该寄存器可用指令使其加1或减1。该指令为INX、DEX。 7、指令寄存器IR IR是一个12位寄存器,其指令字段和地址字段的位数是可变的。较丰富的指令系统访问存储器指令 LDA ADD SUB STA LDB LDX转移指令JMP JAM JAZ JIM JIZ JMS逻辑运算指令NOP CLA XCH DEX INX CMA CMB LOR AND NOR NAN XOR BRB INP OUT HLT3.7 初级程序设计举例(自学) 简单介绍了初级程序的模式。(1)简单程序 :程序一统到底(2)分支程序:在程序设计中,经

温馨提示

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

评论

0/150

提交评论