微机原理完整ppt课件_第1页
微机原理完整ppt课件_第2页
微机原理完整ppt课件_第3页
微机原理完整ppt课件_第4页
微机原理完整ppt课件_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

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

文档简介

8086微处理器,微处理器的基本结构,8086微处理器的主要特性和内部结构,8086CPU的工作模式和引脚信号,8086的存储器管理,8086的总线操作和时序,微处理器(Microprocessor)是一种采用大规模(LSI)或超大规模集成电路(VISI)技术的半导体芯片,集成了计算机的主要部件:控制器、运算器和寄存器组。微处理器又被称为中央处理器(CentralProcessingUnit),字长16位、即一次能处理16位数据的称16位CPU,如Intel8086CPU。CPU是微型计算机的核心部件,其性能和特点基本上决定了微型计算机的性能。因此,了解CPU的组成结构、引脚功能、操作时序等是学习微机原理与接口技术,进行微机应用系统开发设计的基础。,2.1微处理器的基本结构,一、微处理器的结构框图,各部分的功能:,1.ALU(ArithmaticLogicUnit),算术逻辑单元,是计算机中的运算部件,执行算术运算,逻辑运算及移位操作等。,2.累加器,运算中的专用寄存器,存放操作数和运算结果。,3.通用寄存器组,存放数据和地址。,4.标志寄存器FR,反映指令执行时的状态标志信号,如进位标志C、零标志Z、符号标志S、奇偶标志P、溢出标志O等。,5.程序计数器PC(ProgramCounter),又称指令指针寄存器IP(InstructionPointer),指向下一条要执行的指令所在存储单位的地址。取出指令后,PC自动加1。,6.堆栈指针SP(StackPointer),堆栈操作时,栈顶在内存中的具体位置。,7.变址寄存器,用于变址寻址时存放存储器的地址,也可作通用寄存器使用。,8.数据总线缓冲器DR,寄存从MEMORY中读出或要写入的数据或指令。,9.地址总线缓冲器AR,存放指令的地址或操作数地址。,10.指令寄存器IR,存放从MEMORY中取出的将要被执行的指令。,11.指令译码器ID,对IR中的指令译码,确定要执行的操作。,12.时序和控制逻辑,产生多种微操作控制信号,由ID确定执行何种操作,发出相应功能的控制信号。,二、程序执行过程举例,以7+10=?为例,说明程序执行过程。,1.查指令系统,编写程序:,MOVAL,7;7ALB0H07HADDAL,10;10+ALAL04H0AHHLT;处理器暂停F4H,2.汇编源程序,3.机器码放入存储器,4.机器的执行过程,(1)第一条指令(MOVAL,07H)的取指过程:,PC的值(00H)AR,PC+1PC(PC=01H),AR中的内容(00H)ABMEMORY,译码选中00H存储单元。,CPU发出“存储器读”信号,(00H)=B0HDBDRIRID,(2)ID译码指令,确定操作(07HAL),执行指令。,PC的值(01H)AR,PC+1PC(PC=02H),AR中的内容(01H)ABMEMORY,译码选中01H存储单元,CPU发出“存储器读”信号,(01H)=07HDBDRAL,三、指令执行过程小结,1.取指令,(1)程序计数器PC将指令地址经地址缓冲器送到微处理外部地址总线,然后送到存储器进行地址译码。,(2)访问存储器某一单元,同时CPU向存储器发“存储器读”控制信号(且PCPC+1)。,(3)经过几百ns,在外部数据总线上出现指令的第一字节,即操作码,它经由CPU内部数据缓冲器内部总线指令寄存器。,(4)对于多字节指令,控制部件还会发出再去存储器取指令第二或第三字节的信号,每取一个字节,PCPC+1。,2.指令译码,3.取操作数,经指令译码,如果需要取操作数,则CPU将给出操作数地址,再次访问存储器。,5.存放运算结果,微处理器就是不断重复以上过程,逐条执行指令。,4.执行指令,2.28086微处理器的主要特性和内部结构,2.2.18086的主要特性,8086微处理器是美国Intel公司1978年推出的一种高性能的16位微处理器。,8086CPU采用高速运算性能的HMOS工艺制造,内含29000多个晶体管,封装在标准的40引脚双列直插式塑封管壳内,采用单个+5V电源供电。,1、数据线:16位,主要特性有:,2、地址线:20位,其中低16位与数据总线复用。,3、内存空间:20位地址线可直接寻址1MB存储空间。,4、端口地址:16位端口地址线可寻址64K个I/O端口。,5、寻址方式:7种基本寻址方式提供了灵活的操作数存取方法。,6、指令系统:99条基本指令系统,除能完成数据传送、算术运算、逻辑运算、控制转移和处理器控制功能外,内部还设有硬件乘法指令及串处理指令电路,可以对位、字节、字节串、字串、压缩和非压缩BCD码等多种数据类型进行处理。,7、时钟频率:8086标准主频为5MHZ,8086-2主频为8MHZ。,8、中断功能:可处理内部软件中断和外部硬件中断,中断源多达256个。,9、工作模式:支持单处理器、多处理器系统工作。,10、兼容性:与8080、8085在源程序一级兼容。,2.2.28086的功能结构,从功能结构看,分两部分:,1.执行部件EU(ExecutionUnit),2.总线接口部件BIU(BusInterfaceUnit),一、执行部件EU,1.EU的功能:,负责指令的执令。译码指令并利用内部寄存器和ALU来处理数据。,2.结构组成,四个通用寄存器AX,BX,CX,DX。,四个专用寄存器:,标志寄存器FR。,算术逻辑单元ALU。,基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,目的变址寄存器DI。,3.8086CPU中EU的特点,四个通用寄存器AX,BX,CX,DX可以作为16位寄存器使用,也可以分别作为两个8位寄存器使用。,AX又称累加器,指令系统中许多指令都是利用AX来实现的。,FR共有16位,其中7位未用,各位的定义如下:,根据功能,有两类标志,状态标志(6个),控制标志(3个),表2.18086CPU标志位情况,名称,符号,符号标志,SF,功能,与运算结果的最高位相同,当数据用补码表示时,负数的最高位为1,所以符号标志表示运算执行后的结果是正还是负,零标志,ZF,当前的运算结果为零,当前的运算结果为非零,奇偶标志,PF,运算结果所含的1的个数为偶数,进位标志,CF,当执行一个加法运算使最高位产生进位时,或者执行一个减法运算引起最高位产生借位时,此外,循环指令也影响这一标志,辅助进位标志,AF,加法运算时,如果第3位往第4位有进位;减法运算时,如果第3位往第4位有借位。辅助进位标志一般在BCD码运算中作为是否进行十进制调整的判断依据,溢出标志,OF,运算过程中产生溢出时,所谓溢出,是指当字节运算的结果超出了范围128+127,或者当字运算的结果超出了范围32768+32767时称为溢出,方向标志,DF,控制串操作指令用的标志。DF=0,串操作过程中的地址会不断增值;DF=1,串操作过程中的地址会不断减值,中断标志,IF,控制可屏蔽中断的标志。IF=0,CPU不能对可屏蔽中断请求作出响应;IF=1,CPU可以接受可屏蔽中断请求,跟踪标志,TF,CPU按跟踪方式执行指令,例1:执行以下两数的加法操作,判断各标志位的状态。,执行以上操作后,各状态标志位的状态应是:,CF0,PF0,AF0,ZF0,SF0,OF0,例2:执行加法操作。,各状态标志位的状态应是:,CF1,PF1,AF0,ZF0,SF1,OF0,例3:执行加法操作。,执行以上加法操作后,各状态标志位的状态应是:,CF0,PF0,AF0,ZF0,SF1,OF1,二、总线接口部件BIU,负责与存储器、I/O接口电路传送信息。,1.BIU的功能:,2.BIU的组成,(1)四个段地址寄存器,CS16位代码段寄存器,DS16位数据段寄存器,ES16位附加段寄存器,SS16位堆栈段寄存器,(2)IP16位指令指针寄存器,指向下一条要取出的指令。,(3)20位地址加法器,16位内部寄存器提供的信息经地址加法器产生20位地址信息。,例:指令的物理地址=CS16+IP,若CS=1000H,IP=3050H,则PA=10000H+3050H=13050H,(4)六字节的指令队列,取指令与执行指令并行工作,即在一条指令的执行过程中,可以取出下一条或多条指令,在指令队列中排队。,三、BIU和EU的并行工作,2.38086CPU的工作模式与引脚信号,2.3.18086CPU的两种工作模式,根据不同的应用环境,8086可以工作在两种模式:最小模式和最大模式。,1.最小模式,系统中只有8086一个微处理器,所有的总线控制信号均由8086产生,系统的总线控制信号被减至最少。,2.最大模式,用于中规模或大型的8086系统中。,8086作为主微处理器以外,还有其它的微处理器协助工作。,8087:数值运算的协处理器。,8089:输入/输出(I/O)协处理器,2.3.28086CPU的引脚信号,1.最小模模式的引脚信号,双向,三态。,在一个总线周期的第一个时钟周期,AD15AD0传送地址信号,在其他的时钟周期,作数据总线使用。,(1)地址/数据总线AD15AD0,(2)地址/状态信号线A19/S6A16/S3,输出,三态。,在一个总线周期的T1,输出地址信号的最高4位,在其他的时钟周期,输出状态信号S6S3。,(1)S6为低,表示8086当前与总线相连,(2)S5IF。,3.S4、S3的组合指出当前使用的段码寄存器情况,S4,S3,意义,0,0,1,1,0,1,0,1,当前正在使用ES附加段,当前正在使用SS堆栈段,当前正在使用CS或者未使用任何寄存器,当前正在使用DS数据段,同样,这4个引脚信号也要用外电路将地址信号锁存。,(3)BHE/S7高8位数据总线允许/状态线,输出,三态。,在总线周期的T1,为BHE信号,表示高8位数据线D15D8上的数据有效。,在其他的总线周期,为S7状态信号,8086中S7未作定义。,BHE和A0结合控制CPU与存储器之间数据传送的格式。,BHE,A0,数据传送格式,0,0,1,1,0,1,0,1,同时传送高、低字节(AD0AD15),奇数地址的高位字节(AD8AD15),偶数地址的低位字节(AD0AD7),无效,以上13为地址、数据总线信号,下面介绍引脚中的控制信号。,(4)MN/MX最大/最小模式控制信号。,输出,三态,低电平有效。,(5)RD读信号,(6)M/IO存储器/输入输出控制信号,输出,三态。,(7)WR写信号,输出,三态,低电平有效。,(8)ALE地址锁存允许信号,输出,高有效。每一总线周期的T1有效。,(9)READY准备好信号,输入,高有效。CPU访问存储器或外设时,READY有效,表示存储器或外设已准备好传送数据。,(10)INTR可屏蔽的中断请求信号,输入,高有效,表示外设向CPU提出中断申请,若FR中IF=1,CPU在当前指令后即响应。,(11)INTA中断响应信号,(12)NMI非屏蔽中断请求信号,(13)RESET系统复位信号,复位重新启动后,第一条指令地址FFFF0H。,(14)DT/R数据收发控制信号,输出,三态,控制数据总线驱动器的数据传送方向。,(15)DEN数据允许信号,输出,三态,低有效,控制CPU外接的数据收发器。,(16)HOLD总线保持请求信号,输入,高有效,表示其它的总线主设备申请对总线的控制权。,(17)HLDA总线保持响应信号,输出,高有效,表示CPU响应HOLD信号,让出总线控制权。,(18)TEST测试信号,输入,低电平有效,与WAIT指令配合使用。,(19)CLK系统时钟输入信号,最大时钟频率为5MHZ,占空比1/3。,(20)GND地和VCC电源引脚,VCC:+5直流电源。,2.最大模式下的引脚信号,在最大模式下,仅2431引脚信号与最小模式不同,如表2-6所示。,表2-6两种模式下8086的2431引脚信号,引脚编号最小模式最大模式,2425262728293031,ALE,DT/,M,HLDAHOLD,QS1QS2,RQ/GT1RQ/GT0,(1)QS1和QS0指令队列状态信号,输出。这两信号组合起来提供了8086内部指令队列的状态,以便外部对其动作进行跟踪。QS1和QS0编码和对应的队列状态如表2-7所示。,表2-7QS1和QS0编码与队列状态,QS1QS0队列状态,0011,0101,空操作取走指令的第一个字节队列空从队列里取出的字节是指令的后续字节,(2)2,1和0总线周期状态信号,输出,三态。这三个状态信号组成的编码表示了当前总线周期是何种操作周期,如表2-8所示。,表2-82,1和0编码总线周期,发中断响应信号读I/O端口写I/O端口暂停取指令读存储器写存储器无源状态,01010101,00001111,00110011,总线周期,当8086工作在最大模式时,必须连接总线控制器,如Intel8288。8288将利用以上状态信息产生最大模式下的存储器和I/O控制信号。,(3)总线封锁信号,输出,三态、低电平有效。当此信号为低电平有效时,系统中其他总线主部件不能占有总线。此信号由前缀指令LOCK使其有效,并一直保持到LOCK前缀后面的一条指令执行完毕。另外,在8086的两个中断响应脉冲之间,信号也自动变为有效电平,以防其他总线主部件在中断响应过程中占有总线,使一个完整的中断响应过程被间断。,(4)和总线请求/允许信号,双向。这两个信号可供CPU以外的两个处理器用以发出使用总线的请求信号和接收CPU对总线请求信号的应答信号,总线请求信号和允许信号在同一引脚上传输,但方向相反。其中,的优先级高于。,2.48086的存储器管理,2.4.1存储器的分段和物理地址的形成,8086可寻址空间为1M字节,对整个存储器空间寻址需要20位的地址码,而8086CPU内的所有寄存器都是16位,只能寻址64K字节,为了能对1M字节的存储器进行寻址,8086系统采用了巧妙的存储器分段技术,即将1M字节的存储器空间分成若干个逻辑段,每个段最长64K字节,段内地址是连续的,仍可采用16位寻址方法。逻辑段可在整个存储空间内浮动,段与段之间可以是连续的,也可以是分开的或重叠的(部分重叠或完全重叠),如图2-11所示。,1.存储器的分段,2.物理地址的形成,物理地址:20位绝对地址,逻辑地址:段基址和段内偏移量。,物理地址段基地址16+偏移地址,其意思是:将段寄存器(CS,DS,SS或ES)中的内容向左移4位(相当于乘16),然后和偏移地址相加便得出20位物理地位。物理地址的计算是在CPU的总线接口部件BIU中的地址加法器中实现的。,例如:某指令在代码段中逻辑地址为:段首址CS1000H,段内偏移地址IP5F62H,则其物理地址为CS16+IP10000H+5F62H15F62H,如图2-13所示。,显然,若该指令的段的基址为CS1200H,而IP3F62H,则20位的物理地址仍为15F62H。也就是说,同一个物理地址可以由不同的段地址和偏移地址组合得到。即指向同一物理地址的段地址和偏移地址不是唯一的。,3.逻辑地址的来源,8086CPU在运行程序过程中,访问存储器的操作类型是各种各样的,如取指令访问存储器,取操作数访问存储器等等。访问存储器的操作类型不同,总线接口部件BIU访问存储器时所使用逻辑地址的来源就不同,不同操作类型的逻辑地址的来源如表2-9所示。,表2-9逻辑地址来源,操作类型正常使用的(隐含)段基址可替换段地址偏移地址物理地址计算,取指令CS无IPCS16+IP,堆栈操作SS无SPSS16+SP,BP间址SSCS,DS,ES有效地址EASS16+EA,存取变量DSCS,ES,SS有效地址EADS16+EA,源字符串DSCS,ES,SSSIDS16+SI,目标字符串ES无DIES16+DI,图2-14所示为段寄存器与其他寄存器组合寻址存储单元的示意图。,2.4.28086系统中存储器的分体结构,在8086系统中,将总容量为1M字节的存储器分为两个存储体,即奇地址存储体和偶地址存储体,各为512K字节,如图2-15所示。,表2-10和A0的代码组合及对应的存取操作,通常,从偶地址开始的字称为规则字,读/写规则字只需一个总线周期;把从奇地址开始的字称为非规则字,读/写非规则字需要用二个总线周期,相对来说需要较长时间。所以,为了加快程序运行速度,编程时应注意从偶地址开始存放字数据。,堆栈是按照“后进先出”(LastinFirstout)原则组织的一段特殊的内存区域。,堆栈由SP自动管理,SP始终指向当前的栈顶。,堆栈主要用于中断调用,子程序调用以及数据的暂时存储等。,堆栈有压入和弹出两种操作。,8086CPU的堆栈在压栈时,由上往下生长(堆栈指针减量修改)。,2.4.38086系统的堆栈,2.5.1指令周期、总线周期和时钟周期,指令周期(InstructionCycle):CPU执行一条指令所需要的时间。,总线周期(BusCycle):CPU与外部电路之间进行一次数据传送所需的时间。,时钟周期(ClockCycle):控制CPU基本操作的时钟,是CPU处理动作的最小时间单位,又称T状态。,2.58086的总线操作和时序,一个指令周期由一个或若干个总线周期组成,一个总线周期至少包含4个T状态。,2.5.28086的典型总线周期,一、典型总线周期的时序,8086CPU的一个基本总线周期由4个时钟周期(T1T4)组成。时钟周期T也称为T状态,即T1状态、T2状态、T3状态和T4状态。CPU在每个时钟周期(状态)内完成若干基本操作,具体是:,T1状态:CPU向20位地址/状态(A19/S6A16/S3),地址/数据(AD15AD0)分时复用总线上发送读写存储器或I/O端口的地址。,T2状态:CPU从总线上撤消地址,若为读周期,则使低16位地址/数据总线(AD15AD0)为高阻抗状态,以便CPU有足够的时间从输出地址方式转变为输入数据方式。若为写周期,则向低16位地址/数据总线(AD15AD0)上送出写数据,准备进行写操作。由于输出地址和输出数据都是写总线过程,CPU不必要改输出为输入方式,因而不需要缓冲时间。T2状态总线的高4位(A19/S6A16/S3)上输出本总线周期状态信息S6S3。这些状态信息用来表示中断允许状态、当前正在使用的段寄存器等。,T3状态:CPU在总线的高4位(A19/S6A16/S3)继续输出总线周期状态信号S6S3。在总线的低16位(AD15AD0)地址/数据线上继续发送要写的数据,或者从存储器或I/O端口读入数据。,T4状态:总线周期结束,命令被禁止,选中的设备在逻辑上和总线脱离。,TW等待状态:如果被选中的存储器或I/O设备不能及时配合CPU传送数据,则必须通知CPU数据“未准备好”,迫使CPU在T3状态后插入等待状态TW。“未准备好”信号必须

温馨提示

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

评论

0/150

提交评论