微型计算机原理与接口技术第2章尹建华高教版.ppt

上传人:牧羊曲112 文档编号:6572694 上传时间:2023-11-13 格式:PPT 页数:145 大小:9.10MB
返回 下载 相关 举报
微型计算机原理与接口技术第2章尹建华高教版.ppt_第1页
第1页 / 共145页
微型计算机原理与接口技术第2章尹建华高教版.ppt_第2页
第2页 / 共145页
微型计算机原理与接口技术第2章尹建华高教版.ppt_第3页
第3页 / 共145页
微型计算机原理与接口技术第2章尹建华高教版.ppt_第4页
第4页 / 共145页
微型计算机原理与接口技术第2章尹建华高教版.ppt_第5页
第5页 / 共145页
点击查看更多>>
资源描述

《微型计算机原理与接口技术第2章尹建华高教版.ppt》由会员分享,可在线阅读,更多相关《微型计算机原理与接口技术第2章尹建华高教版.ppt(145页珍藏版)》请在三一办公上搜索。

1、1,第二章80X86微处理器的结构,2,8086 CPU结构 8086 CPU的引脚及其功能 8086 存储器组织 8086 系统配置 8086 CPU时序,教学内容,3,重点和难点,8086CPU内部结构8086CPU引脚及功能8086CPU存储器组织,4,1.8086 CPU结构2.8086 CPU的引脚及其功能3.8086 存储器组织4.8086 系统配置5.8086 CPU时序,第二章 80X86微处理器的结构,5,1.8086 CPU结构,1.1 概述1.2 CPU的内部结构1.3 寄存器结构,6,1.1 概述,1.1.1 由于制造工艺的原因,处理器结构受限:,7,1.1.2 16位

2、微处理器基本结构具有如下特点,8,1.1.3 Intel 8086CPU,9,1.8086 CPU结构,1.1 概述1.2 CPU的内部结构1.3 寄存器结构,10,1.2 CPU的内部结构,11,8086CPU由两部分组成:(1)指令执行部件(EU,Execution Unit)(2)总线接口部件(BIU,Bus Interface Unit),12,执行部件(EU),执行部件(EU)主要包括4个部件:算术逻辑运算单元(ALU)标志寄存器FR、通用寄存器组EU控制器其主要功能是:执行指令,13,总线接口部件(BIU),4个部件组成20位物理地址加法器、专用寄存器组段寄存器:CS,DS,ES,

3、SS指令指针寄存器:IP6个字节指令队列总线控制电路,14,总线接口部件(BIU)(续1),其主要功能是:形成访问存储器的物理地址;访问存储器并取指令暂存到指令队列中等待执行,访问存储器或IO端口,读取操作数参加EU运算或存放运算结果等。,15,8086 BIU的特点,8086的指令队列分别为6/4个字节,在执行指令的同时,可从内存中取出后续的指令代码,放在指令队列中,可以提高CPU的工作效率。地址加法器用来产生20位物理地址。8086可用20位地址寻址1M字节的内存空间,而CPU内部的寄存器都是16 位,因此需要由一个附加的机构来计算出20位的物理地址,这个机构就是20位的地址加法器。,16

4、,EU和BIU的操作原则,(1)每当8086的指令队列中有两个空字节(8088的指令队列中有1个空字节时),BIU就会自动把指令取到指令队列中。其取指的顺序是按指令在程序中出现的前后顺序。(2)每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。如果必须访问存储器或者I/O端口,EU就会请求BIU,进入总线周期,完成访问内存或者I/O端口的操作;如果BIU处于空闲状态,会立即响应EU的总线请求。如果BIU正将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。,17,(3)当指令队列已满,

5、且EU又没有总线访问请求时,BIU便进入空闲状态。(4)在执行转移指令、调用指令和返回指令时,执行指令的顺序发生了变化,则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列装入转向的另一程序段中的指令代码。BIU与EU是并行工作方式,改变了以往计算机:取指令译码执行指令的串行工作方式,大大提高了工作效率,这正是8086获得成功的原因之一。,EU和BIU的操作原则(续1),18,8086CPU与一般CPU区别,一般CPU工作方式8086CPU工作方式,取指,执指,取指,执指,取指,执指,取指,执指,取指,执指,取指,执指,19,8086和8088的区别,8086和8088 CPU的内部基

6、本相同,但它们的外部性能是有区别的。8086是16位数据总线,8088是8位数据总线,在处理16位数据字时,8088需要两步操作,而8086只需要一步。8086和8088 CPU的内部都采用16位字进行操作及存储器寻址,两者软件完全兼容,程序执行也完全相同。然而,由于8088要比8086有较多的外部存储操作,所以对于相同的程序,它将执行得较慢。两种微处理器都采用相同的40脚双列直插式(DIP)封装。,20,8088的内部结构,1 2 3 4,内部暂存器,IP,ES,SS,DS,CS,输入/输出控制电路,外部总线,执行部分控制电路,ALU,标志寄存器,AH AL,BH BL,CH CL,DH D

7、L,SP,BP,SI,DI,通用寄存器,地址加法器,指令队列,执行部件(EU),总线接口部件(BIU),16位,20位,8位,8位,8位,21,8088的指令执行过程:,(1)MOV AX,0064H(2)ADD AX,0100H(3)MOV 2000H,AX,22,1.8086 CPU结构,1.1 概述1.2 CPU的内部结构1.3 寄存器结构,23,1.寄存器的作用:存放运算过程中所需要的操作数地址、操作数及中间结果。2.寄存器的特点:存取速度比存储器快。3.寄存器的分类:通用寄存器组 指针和变址寄存器 段寄存器 指令指针及标志位寄存器。,24,25,1.3.1 通用寄存器,均可作数据寄存

8、器,但每个寄存器还有各自的特殊使用。,26,AX(Accumulator Register)累加器一般用来存放参加运算的数据和结果,在乘、除法运算、I/O操作、BCD数运算中有不可替代的作用。BX(Base Register)基址寄存器除可作数据寄存器外,还可放内存的逻辑偏移地址,而AX,CX,DX则不能。,27,CX(Counter)将它称作计数寄存器,是因为它既可作数据寄存器,又可在串指令和移位指令中作计数用。DX(Data Register)DX除可作通用数据寄存器外,还在乘、除法运算、带符号数的扩展指令中有特殊用途。,28,1.3.2 指针和变址寄存器,29,SI(Source Ind

9、ex)源变址寄存器多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中,也可放数据。DI(Destination Index)目标变址寄存器多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中也可放数据。,30,BP(Base Pointer)基址指针用于存放内存的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中。SP(Stack Pointer)堆栈指针用于存放栈顶的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中。,31,寄存器的特殊用途和隐含性质在指令中没有明显的标出,而这些寄存器参加操作,称之为“隐含寻址”。具体的:在某类指令中,某些通用寄存器有指定的特殊用法,编程时需遵循这些

10、规定,将某些特殊数据放在特定的寄存器中,这样才能正确的执行这些指令。采用“隐含”的方式,能有效地缩短指令代码的长度。,32,33,1.3.3 段寄存器,34,CS(Code Segment),代码段寄存器中存放程序代码段起始地址的高16位。DS(Data Segment),数据段寄存器中存放数据段起始地址的高16位。SS(Stack Segment),堆栈段寄存器中存放堆栈段起始地址的高16位。ES(Extended Segment),扩展段寄存器中存放扩展数据段起始地址的高16位。物理地址的形成:16段基址+段内偏移地址,35,1.3.4 指令指针寄存器IP,用来存放将要执行的下一条指令在现

11、行代码段中的偏移地址。,36,1.3.5 标志寄存器PSW,CF(Carrv Flag):进位标志位 最高位有进位或借位时,CF1。PF(Parity Flag):奇偶校验标志位 本次运算结果低8位中有偶数个“1”时,PF1;有奇数个“1”时,PF 0。,37,ZF(Zero Flag):全零标志位 本次运算结果为0时,ZF1,否则ZF 0。SF(Sign Flag):符号标志位 本次运算结果的最高位为1时,SF1,否则SF0。即反映了本次运算结果是正还是负。OF(Overflow Flag):溢出标志位 本次运算过程中产生溢出时,OF 1。对带符号数,字节运算结果的范围为-128+127,字

12、运算结果的范围为-32768+32767,超过此范围为溢出。,38,TF(Trap Flag):单步标志位 调试程序时,可设置单步工作方式 TF1时,则每执行完一条指令,就自动产生一次内部中断,使用户能逐条跟踪程序进行调试。IF(Interrupt Flag):中断标志位 IF1时,允许CPU响应可屏蔽中断;当IP0时,即使外部设备有中断申请,CPU也不响应。,39,DF(Direction Flag):方向标志位 控制串操作指令中地址指针变化方向,若在串操作指令中,DF0,地址指针自动增量,即由低地址向高地址进行串操作;若DF1,地址指针自动减量,即由高地址向低地址进行串操作。由STD指令可

13、使DF标志位置“1”,由CLD指令可使标志位置“0”。,40,1.8086 CPU结构2.8086 CPU的引脚及其功能3.8086 存储器组织4.8086 系统配置5.8086 CPU时序,第二章 80X86微处理器的结构,41,2.2 8086 CPU的引脚及其功能,2.2.1 概述2.2.2 8086/8088的CPU在最小模式中引脚2.2.3 8086/8088的CPU在最大模式中引脚2.2.4 8086/8088的区别,42,1.80868088 CPU芯片:包括16条数据线、20条地址线(低16位和数据线复用)、17根控制线、电源和地线。封装:双列直插式。2.80868088的工作

14、模式:最小模式(单机系统):系统中所需要的控制信号全部由8086直接提供;最大模式(多处理机系统):系统中所需要的控制信号由总线控制器8288提供。2431脚的8条引脚在两种工作模式中具有不同的功能。,43,8086CPU引脚 8088CPU引脚,44,2.2 8086 CPU的引脚及其功能,2.2.1 概述2.2.2 8086/8088的CPU在最小模式中引脚2.2.3 8086/8088的CPU在最大模式中引脚2.2.4 两种模式的区别,45,46,47,48,时序图,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,2.2

15、8086 CPU的引脚及其功能,2.2.1 概述2.2.2 8086/8088的CPU在最小模式中引脚2.2.3 8086/8088的CPU在最大模式中引脚2.2.4 8086/8088的区别,68,69,70,71,72,2.2 8086 CPU的引脚及其功能,2.2.1 概述2.2.2 8086/8088的CPU在最小模式中引脚2.2.3 8086/8088的CPU在最大模式中引脚2.2.4 8086/8088的区别,73,【主要区别】:8088CPU的内部数据总线宽度是16位,外部数据总线宽度是8位,8088CPU为准16位微处理器。,74,75,1.8086 CPU结构2.8086 C

16、PU的引脚及其功能3.8086 存储器组织4.8086 系统配置5.8086 CPU时序,第二章 80X86微处理器的结构,76,3.8086 存储器组织,3.1 存储器地址的分段3.2 存储器的分体结构3.3 堆栈概念,77,3.1 存储器地址的分段,78,79,80,81,82,83,84,3.8086 存储器组织,3.1 存储器地址的分段3.2 存储器的分体结构3.3 堆栈概念,85,3.2 存储器的分体结构,86,87,88,89,90,91,92,3.8086 存储器组织,3.1 存储器地址的分段3.2 存储器的分体结构3.3 堆栈概念,93,3.3 堆栈概念,94,95,96,97

17、,98,1.8086 CPU结构2.8086 CPU的引脚及其功能3.8086 存储器组织4.8086 系统配置5.8086 CPU时序,第二章 80X86微处理器的结构,99,4.8086 系统配置,4.1 概述4.2 最小模式系统4.3 最大模式系统,100,4.1 概述,1.系统配置方式:最小模式(CPU的引脚MNMX端接高电平+5V)最大模式(CPU的引脚MNMX端接高电平低电平)2.系统配置特点:最小模式为单机系统,控制信号由CPU提供;最大模式为多处理器/协处理器系统,控制信号由总线控制器8288提供。(常用的处理器有数值运算协处理器8087,输入/输出处理器8089)3.CPU的

18、2431引脚意义不同,101,4.8086 系统配置,4.1 概述4.2 最小模式系统4.3 最大模式系统,102,4.2 最小模式系统,8086CPU存储器I/O接口芯片1片8284A,作为时钟发生器3片82828283或74LS373,作为地址锁存器2片82858287或74LS245,作为双向数据总线收发器,103,104,4.2.1 地址锁存器8282/8283,105,双向数据总线收发器8286/8287,106,4.2.3 时钟发生器8284,107,4.8086 系统配置,4.1 概述4.2 最小模式系统4.3 最大模式系统,108,4.3 最大模式系统,CPU的引脚MN/MX接

19、地时,8086为最大模式系统。在最大模式系统中需要增加总线控制器8288和总线裁决器8289,以完成8086CPU为中心的多处理器系统的协调工作。CPU输出的状态信号S2S0同时送给8288和8289,由8288输出原CPU所有的控制信号:存储器读/写控制,I/O端口读写控制,中断响应信号等。8289来裁决总线使用权赋给哪个处理器,以实现多主控者对总线资源的共享,109,110,8088 系统配置:,111,112,1.8086 CPU结构2.8086 CPU的引脚及其功能3.8086 存储器组织4.8086 系统配置5.8086 CPU时序,第二章 80X86微处理器的结构,113,5.80

20、86 CPU时序,5.1 概述5.2 系统的复位和启动5.3 8086最小模式下的总线操作5.4 8086最小模式下的总线保持5.5 8088最小模式下是总线操作,114,5.1 概述,相邻两个脉冲之间的时间间隔,称为一个时钟周期,又称T状态(T周期)。,1、T周期,115,2、总线周期,执行一个总线操作所需要的时间称为总线周期。一个基本的总线周期通常包含4 个T状态,按时间的先后顺序分别称为T1、T2、T3、T4,116,总线操作主要有,存储器读、I/O读操作存储器写、I/O写操作中断响应操作总线请求及响应操作,117,基本总线周期由4个T状态组成:T1、T2、T3、T4,等待时钟周期Tw,

21、在总线周期的T3和T4之间插入,空闲时钟周期Ti,在两个总线周期之间插入,118,3、指令周期,执行一条指令所需要的时间称为指令周期。执行一条指令的时间:是取指令、执行指令、取操作数、存放结果所需时间的总和(用所需的时钟周期数表示)。不同指令的执行时间(即指令周期)是不同的;同一类型的指令,由于操作数不同,指令周期也不同。执行指令的过程中,需从存储器或I/O端口读取或存放数据,故一个指令周期通常包含若干个总线周期。,119,例:MOV BX,AX;2个T周期 MUL BL;7077个T周期 MOV BX,AX;14个T周期,描述总线操作的微处理器时序有三级:,指令周期,总线周期,时钟周期,12

22、0,4.时序,为实现某个操作,芯片上的引脚信号在时钟信号的统一控制下,按一定的时间顺序发出有效信号,这个时间顺序就是时序。描述某一操作过程中,芯片/总线上有关引脚信号随时间发生变化的关系图,即时序图。,121,5.8086 CPU时序,5.1 概述5.2 系统的复位和启动5.3 8086最小模式下的总线操作5.4 8086最小模式下的总线保持5.5 8088最小模式下是总线操作,122,5.2 系统的复位和启动,80868088的复位和启动操作是在RESET引脚上加上触发信号来执行的。,123,80868088要求复位信号(RESET)至少有4个时钟周期的高电平。复位时,CS和IP分别初始化为

23、FFFFH和0000H。所以,80868088在复位之后从内存的FFFF0H处开始执行指令。在FFFF0H处存放了一条无条件转移指令,转移到系统引导程序的入口处,这样系统启动后就自动进入系统程序。复位信号RESET从高电平到低电平的跳变会触发CPU内部的一个复位逻辑电路,经过7个时钟周期之后,CPU就被启动而恢复正常工作,即从FFFF0H处开始执行程序。,124,当RESET信号变成高电平时,8086/8088CPU结束现行操作,各个内部寄存器复位成初值:,125,5.8086 CPU时序,5.1 概述5.2 系统的复位和启动5.3 8086最小模式下的总线操作5.4 8086最小模式下的总线

24、保持5.5 8088最小模式下是总线操作,126,5.3 8086最小模式下的总线操作,5.3.1 读总线周期5.3.2 写总线周期5.3.3 总线空操作,127,1.读总线周期(T1状态),5.3.1 读总线周期,128,2.读总线周期(T2状态),129,3.读总线周期(T3状态),130,4.读总线周期(Tw和T4状态),131,最小模式下的总线读操作时序(动画),S3-S7,132,5.3.1 写总线周期,BHE输出,高为读内存 低为读I/O,A15 A0,S6 S3,T4,T3,T2,T1,ALE,CLK,A19/S6 A16/S3,BHE/S7,AD15 AD0,数据输入,A19

25、A16,M/IO,WR,Tw(1n),DT/R,DEN,133,几点不同之处(与读总线周期):,在T1状态,DT/R信号为高电平,表示本总线周期为写周期,即CPU将数据写入存储单元或I/O端口。在T2状态,地址信号发出后,CPU立即向地址/数据总线AD15AD0发出数据,数据信号保持到T4状态的中间,使存储器或外设一旦准备好即可从数据总线取走数据。写信号为WR(代替RD),在T2状态有效,维持到T4状态,选通存储器或I/O端口的写入。,134,5.3.3 总线空操作(1),在CPU和存储器或I/O接口之间传输数据时,CPU才执行总线周期。当CPU不执行总线周期时(指令队列6字节已装满,EU未申

26、请访问存储器),总线接口部件不和总线打交道,就进入了总线空闲周期Ti。空闲周期Ti,状态信息S6 S3和前一个总线周期一样,数据总线上信号不同,若前一个总线周期是读周期,则AD15AD0在Ti状态处于高阻状态,若前一个总线周期是写周期,则AD15AD0在Ti状态继续保持数据有效。,135,5.3.3 总线空操作(2),在空闲周期中,虽然CPU对总线进行空操作,但CPU内部操作仍然进行。例如:ALU执行运算,内部寄存器之间数据传输等,即EU部件在工作。所以说,总线空操作是总线接口部件BIU对总线执行部件EU的等待。,136,5.8086 CPU时序,5.1 概述5.2 系统的复位和启动5.3 8

27、086最小模式下的总线操作5.4 8086最小模式下的总线保持5.5 8088最小模式下是总线操作,137,5.4 8086最小模式下的总线保持,CPU以外的其它主模块要求获得控制总线的使用权时,向CPU发出总线请求信号HOLD。在每个时钟脉冲的上升沿,CPU检测HOLD引脚上的信号。如果检测到HOLD为高电平,并且允许让出总线,那么在总线周期的T4状态或空闲状态Ti之后的下一个时钟周期,CPU发出总线响应信号HLDA,并且让出总线,直到HOLD信导无效,CPU才收回总线控制权。,138,总线保持的时序图:,139,HOLD信号变高电平后,CPU要在下一个时钟周期的上升沿才检测到。然后用T4或

28、Ti状态的下降沿使HLDA变成高电乎。若采样到HOLD信号时,不在T4或Ti状态,可能会延迟几个时钟周期,等到T4或Ti状态才发HLDA信号。8086CPU一旦让出总线控制权,使地址线,数据线及控制信号RD、WR、INTA、M/IO、DEN及DT/R处于浮空状态,但ALE信号不浮空。,以下可略讲:,140,HOLD信号影响8086CPU的总线接口部件BIU的工作(总线浮空),但执行部件EU继续执行指令队列中的指令,直到遇到需要使用总线的指令时,执行部件EU才停下来。当总线请求结束,HOLD及HLDA信号变为低电平时,CPU不立刻驱动三总线,这些引脚继续浮空,直到CPU执行一条总线操作,才结束这些引脚的浮空状态。因此,为了防止总线控制切换时,因没有任何主模块的驱动而造成控制线电平飘移到最小电平以下。在控制线和电源之间要连接个提拉电阻。,141,5.8086 CPU时序,5.1 概述5.2 系统的复位和启动5.3 8086最小模式下的总线操作5.4 8086最小模式下的总线保持5.5 8088最小模式下是总线操作,142,5.5 8088最小模式下是总线操作(读),143,5.5 8088最小模式下是总线操作(写),144,小结:,16位微处理器概述8086/8088 CPU的结构8086/8088 CPU的引脚信号和工作模式,145,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号