第2章微处理器精选PPT.ppt
第2章微处理器第1页,此课件共52页哦 第第2章章 典型微处理器典型微处理器2.1 8086 CPU内部结构内部结构2.2 8086 CPU的引脚功能的引脚功能2.3 80 x86/Pentium系列系列CPU技术发展技术发展第2页,此课件共52页哦2.1 8086 CPU2.1 8086 CPU内部结构内部结构2.1.12.1.1 8086 CPU 8086 CPU 的内部功能结构的内部功能结构1.Intel 8086 CPU 1.Intel 8086 CPU 的组成结构的组成结构:Intel 8086 CPU Intel 8086 CPU 从功能上分为从功能上分为:总线接口单元总线接口单元 BIUBIU(BusInterface BusInterface UnitUnit)和)和执行单元执行单元 EUEU(Execute UnitExecute Unit)两)两部分,见图部分,见图 2-12-1。第3页,此课件共52页哦 Intel 8086 CPU 采用指令流水线结构,访问存储器与执行采用指令流水线结构,访问存储器与执行指令的操作指令的操作 分别由分别由 BIU 和和 EU 分别承担,分别承担,EU 和和 BIU 分工合分工合作、并行操作。作、并行操作。1、总线接口单元、总线接口单元BIU:完成:完成CPU与存储器、与存储器、I/O端口之间的信息端口之间的信息传送。传送。包括段寄存器、外部数据存取部件、部分相关电路。包括段寄存器、外部数据存取部件、部分相关电路。具体功能:具体功能:根据段寄存器根据段寄存器CS和指令指针和指令指针IP形成形成20位的物理地址,从存储器位的物理地址,从存储器中取出指令,并暂存在指令队列中,等待中取出指令,并暂存在指令队列中,等待EU取走并执行。取走并执行。2、执行单元、执行单元EU:从从BIU指令队列中取出指令代码,然后执行指令队列中取出指令代码,然后执行指令所规定的全部功能。主要进行各种算术、逻辑运算。指令所规定的全部功能。主要进行各种算术、逻辑运算。包包括运算器、通用寄存器、状态寄存器、控制逻辑部分相关电路。括运算器、通用寄存器、状态寄存器、控制逻辑部分相关电路。2.1 8086 CPU内部结构内部结构第4页,此课件共52页哦2.1 8086 CPU内部结构内部结构2.寄存器结构寄存器结构 分三大部分:分三大部分:通用寄存器、段寄存器、控制寄存器通用寄存器、段寄存器、控制寄存器(1)通用寄存器()通用寄存器(General Register)包括:数据寄存器、指针寄存器、变址寄存器。包括:数据寄存器、指针寄存器、变址寄存器。数据寄存器共有数据寄存器共有 AX、BX、CX、DX4个,均可作为个,均可作为 16 位寄存器使位寄存器使用,也可作为独立用,也可作为独立 8 位寄存器使用,如位寄存器使用,如AH、AL、BH、BL、CH、CL、DH、DL。它们具有良好的通用特性,可选用编程。有少数指令,隐含使用寄。它们具有良好的通用特性,可选用编程。有少数指令,隐含使用寄存器。存器。通用通用 寄存器的特定、隐含使用见表寄存器的特定、隐含使用见表 2-1。指针寄存器分指针寄存器分堆栈指针堆栈指针SP和和基数指针基数指针BP。变址寄存器分变址寄存器分源变址源变址SI和和目的变址目的变址DI。第5页,此课件共52页哦表表 2-1 通用寄存器的特定、隐含使用通用寄存器的特定、隐含使用第6页,此课件共52页哦2.1 8086 CPU内部结构内部结构(2)段寄存器()段寄存器(Segment Register)8086CPU 将存储器将存储器分段管理分段管理,把将要运行的程序各模块分别放在不同的存储段中。,把将要运行的程序各模块分别放在不同的存储段中。每个存储段用一个段寄存器来指示它的首地址(即段首址)每个存储段用一个段寄存器来指示它的首地址(即段首址),同时给出访问存储单元的偏移量。,同时给出访问存储单元的偏移量。共分四段:共分四段:CS代码段:程序代码段起始地址的高代码段:程序代码段起始地址的高16位位 DS数据段:数据段起始地址的高数据段:数据段起始地址的高16位位 SS堆栈段:堆栈段起始地址的高堆栈段:堆栈段起始地址的高16位位 ES扩展段:扩展数据段起始地址高扩展段:扩展数据段起始地址高16位位为何加入段寄存器组?为何加入段寄存器组?8086CPU共有共有40个引脚,数据线个引脚,数据线8位,地址线却有位,地址线却有20位位所以总寻址空间要达到所以总寻址空间要达到2的的20次方次方=1MB空间,即空间,即00000H-FFFFFH但内部指针寄存器,变址寄存器中地址最大仅有但内部指针寄存器,变址寄存器中地址最大仅有16位,也即只能寻址位,也即只能寻址2的的16次方次方=64KB,要想达到要想达到1MB空间,必须采取方法:空间,必须采取方法:利用分段利用分段16位位+地址偏移量地址偏移量4位位=20位物理地址位物理地址第7页,此课件共52页哦(3)控制寄存器包括)控制寄存器包括指令指针寄存器指令指针寄存器IP和和标志寄存器标志寄存器PSW。指令指针寄存器指令指针寄存器 IP(Instruction Pointer)IP 是指令的地址指针寄存器。在程序运行期间,是指令的地址指针寄存器。在程序运行期间,CPU 自动修改自动修改 IP 的值,使它始终的值,使它始终保持正在执行指令的下一条指令代码的起始地址的偏移量。保持正在执行指令的下一条指令代码的起始地址的偏移量。标志寄存器(标志寄存器(Flags Register)16 位标志寄存器的作用反映位标志寄存器的作用反映 CPU 在在程序运行时的某些状态程序运行时的某些状态,该寄存器又称为程序状态,该寄存器又称为程序状态字字 PSW(Program Status Word)寄存器,该寄存器中有)寄存器,该寄存器中有 9 个标志位,其中个标志位,其中 6 个标志位个标志位(CF,PF,AF,ZF,SF,OF)作为状态标志)作为状态标志,记载了刚刚执行完算术运算或逻辑运算指,记载了刚刚执行完算术运算或逻辑运算指令后的某些特征。令后的某些特征。另外另外 3 个标志位(个标志位(TF,IF,DF)作为控制标志)作为控制标志,对执行的指令起控,对执行的指令起控制作用。制作用。图图 2-3 中除指明控制标志位外,其余均为状态标志位。中除指明控制标志位外,其余均为状态标志位。2.1 8086 CPU2.1 8086 CPU内部结构内部结构第8页,此课件共52页哦图图2一一3 标志寄存器标志寄存器第9页,此课件共52页哦2.1 8086 CPU内部结构内部结构2.1.2存储器组织存储器组织1存储器的组成存储器的组成 存储器是由存储器是由若干存储单元组成若干存储单元组成的存储整体。每个存储单元的唯一地址编号称为的存储整体。每个存储单元的唯一地址编号称为物理地址(物理地址(Physical Address)。)。8086CPU 共有共有 20 根地址线根地址线,可直接寻址,可直接寻址 2的的20次方次方=1MB 内存空间,地址范围是内存空间,地址范围是 00000H0FFFFFH。8086/8088 存储器存储器相邻相邻字节地址单元字节地址单元数据数据构成一个字构成一个字数据数据,用,用低地址值的字低地址值的字节单元地址节单元地址作为作为该字单元地址该字单元地址,一个字数据的高,一个字数据的高/低低 8 位存储在高位存储在高/低地址字低地址字节单元中。节单元中。1MB 存储空间划分成若干段,每个段限长存储空间划分成若干段,每个段限长 64KB,都是可独立寻址逻辑单元。每个,都是可独立寻址逻辑单元。每个段在物理存储器中的段基址是段在物理存储器中的段基址是 16 的整数倍。各个逻辑段在物理存储器中可以是邻接、的整数倍。各个逻辑段在物理存储器中可以是邻接、间隔、部分重叠间隔、部分重叠 和完全重叠的。一个物理存储单元可映像到一个或多个逻辑段。和完全重叠的。一个物理存储单元可映像到一个或多个逻辑段。第10页,此课件共52页哦2.1 8086 CPU内部结构内部结构2逻辑地址与物理地址逻辑地址与物理地址 8086/8088 系列微机的存储单元都有系列微机的存储单元都有物理地址和逻辑地址物理地址和逻辑地址(Logical Address)两个地址。)两个地址。CPU 与存储器之间的数据交换使用物理地址,与存储器之间的数据交换使用物理地址,程序设计程序设计使用逻辑地址使用逻辑地址,不直接使用物理地址,这有利于存储器的动态管理。,不直接使用物理地址,这有利于存储器的动态管理。一个逻辑地址由一个逻辑地址由段基址段基址和和偏移量偏移量(OFFSET)两部分组成)两部分组成,偏移量偏移量表表示示某存储单元某存储单元与与它所在段的段基址它所在段的段基址之间的之间的字节距离字节距离,通常将根据寻址方式,通常将根据寻址方式计算出的偏移量称为有效地址计算出的偏移量称为有效地址 EA(Effective Address)。)。CPU 访问存储器时,访问存储器时,BIU 把逻辑地址转换成物理地址。把逻辑地址转换成物理地址。转换方法为:转换方法为:(1)将逻辑地址中的将逻辑地址中的段基址左移位段基址左移位,形成,形成 20 位的段首址;位的段首址;(2)再加再加 16 位的偏移量位的偏移量,产生,产生 20 位的物理地址。位的物理地址。第11页,此课件共52页哦2.1 8086 CPU内部结构内部结构3堆栈设置与操作堆栈设置与操作 堆栈(堆栈(Stack)主要)主要用于暂存数据和保护现场数据用于暂存数据和保护现场数据,应用于,应用于过程调用过程调用或或中断处理时中断处理时的的断点信息暂存断点信息暂存。堆栈是由特定存储单元构成的一个存储。堆栈是由特定存储单元构成的一个存储区,堆栈数据操作遵循区,堆栈数据操作遵循先进后出先进后出原则。堆栈的基本结构见图原则。堆栈的基本结构见图 2-4。(1)堆栈设置)堆栈设置 采用软件方法设置堆栈。用软件在存储器中划出一块特定存储区域作为堆栈采用软件方法设置堆栈。用软件在存储器中划出一块特定存储区域作为堆栈区。区。堆栈区的一端固定,另一端浮动,堆栈区的一端固定,另一端浮动,固定端叫栈底(固定端叫栈底(Bottom),占用低地,占用低地址,址,浮动端叫栈顶(浮动端叫栈顶(Top),占用高地址;,占用高地址;数据存取在栈顶进行,数据存取在栈顶进行,堆栈堆栈指针指针SP指示现行堆栈栈顶数据位置,堆栈结构见图指示现行堆栈栈顶数据位置,堆栈结构见图 2-4。第12页,此课件共52页哦图图2一一4堆栈的基本结构堆栈的基本结构第13页,此课件共52页哦2.1 8086 CPU内部结构内部结构 8086CPU寻址的堆栈是由寻址的堆栈是由堆栈段寄存器堆栈段寄存器指定的一段存储区。通常,堆栈指定的一段存储区。通常,堆栈段中所包含的存储单元字节数就是堆栈深度(即堆栈长度)。段中所包含的存储单元字节数就是堆栈深度(即堆栈长度)。栈底是堆栈栈底是堆栈段最大单元地址,栈顶由堆栈指针段最大单元地址,栈顶由堆栈指针SP指向,指向,SP值是段基址与栈顶之间的偏移量,值是段基址与栈顶之间的偏移量,SP的初始化值是堆栈的深度。的初始化值是堆栈的深度。8086CPU寻址的堆栈最大寻址的堆栈最大64KB,如用户程序要扩大堆栈区域或更换堆栈如用户程序要扩大堆栈区域或更换堆栈区(已设置几个堆栈段),可用重新设置堆栈段寄存器区(已设置几个堆栈段),可用重新设置堆栈段寄存器SS的办法来实现。在用的办法来实现。在用户程序中户程序中每次更换堆栈段寄存器时,必须给每次更换堆栈段寄存器时,必须给SP赋新值。赋新值。8086/8088 的堆栈操作对象是的堆栈操作对象是字数据(字数据(16位)。位)。第14页,此课件共52页哦(2)堆栈操作)堆栈操作 堆栈的基本操作有设置堆栈的基本操作有设置堆栈、进栈和出栈堆栈、进栈和出栈三种操作。三种操作。堆栈堆栈的设置的设置主要是对主要是对堆栈段寄存器堆栈段寄存器SS和和堆栈指针堆栈指针SP的的赋值。赋值。进栈进栈就是把就是把字数据压入堆栈字数据压入堆栈。出栈出栈是从堆栈顶部是从堆栈顶部弹出一个字弹出一个字数据数据送回送回寄存器或字存储单元中。寄存器或字存储单元中。遵循的重要原则:数据遵循的重要原则:数据先进后出,后进先出。先进后出,后进先出。2.1 8086 CPU内部结构内部结构第15页,此课件共52页哦2.28086CPU 的引脚功能的引脚功能2.2.1 8086/8088 的引脚信号和功能的引脚信号和功能8086 和和 8088 的引脚信号图如图的引脚信号图如图 2-5 所示。所示。8086/8088 各引脚信号的功能如下:各引脚信号的功能如下:1、AD15AD0(Address Data Bus):地址地址/数据复用引脚数据复用引脚,在,在 8086 中作为中作为地址和数据的复用引脚,在总线周期的地址和数据的复用引脚,在总线周期的 T1 状态状态用来用来输出输出要访问的存储器或要访问的存储器或I/O 端口地址端口地址。T2T3 状态状态,则是,则是传输数据传输数据。在。在 8088 中,中,A815 是单纯的地址是单纯的地址输出引脚。输出引脚。2、A19/S6A16/S3(Address/Status):地址状态复用引脚,地址状态复用引脚,CPU执行指令中,执行指令中,总线周期的总线周期的T1状态输出地址的最高状态输出地址的最高4位,后三个状态则送出状态信息。位,后三个状态则送出状态信息。(S6=0,S5,中断允许标志,中断允许标志,S4、S3联合指出当前正在使用的哪个段寄存器。联合指出当前正在使用的哪个段寄存器。3、NMI(Non-Maskable Interrupt):非屏蔽中断引脚非屏蔽中断引脚第16页,此课件共52页哦图图2一一5 8086/8088的引脚信息图的引脚信息图第17页,此课件共52页哦2.28086CPU 的引脚功能的引脚功能 4、NTR(Interrupt Request):可屏蔽中断请求信号引脚可屏蔽中断请求信号引脚 CPU 在执行每条指令的在执行每条指令的最后一个时钟周期会对最后一个时钟周期会对INTR 信号进行采样信号进行采样,如,如果果CPU 中的中的中断中断,允许标志允许标志IF 为为,且又接收到,且又接收到INTR 引脚为高电平信号引脚为高电平信号输入,则输入,则CPU 就在就在结束当前指令结束当前指令后,后,响应中断请求响应中断请求,进入相应的中断处理,进入相应的中断处理子程序。子程序。5、(Read):读信号引脚读信号引脚 6、CLK(Clock):时钟引脚时钟引脚7、(Bus High Enable/Status)高位高位数据总线数据总线允许状态复用允许状态复用引脚。该引脚在引脚。该引脚在总线周期的总线周期的T1状态状态,输出,输出低电平有效,表示高低电平有效,表示高8位数据线上的数据有效;位数据线上的数据有效;在其在其他状态,输出状态信号他状态,输出状态信号S7(在在8086中未定义)。该引脚信号与低位地址中未定义)。该引脚信号与低位地址A0配合表配合表示不同的数据传送操作。可参考课本示不同的数据传送操作。可参考课本P21页表页表2-5。第18页,此课件共52页哦2.28086CPU 的引脚功能的引脚功能 8、RESET:复位信号引脚复位信号引脚 复位信号至少保持复位信号至少保持4个时钟周期或个时钟周期或2个机器周期,个机器周期,高电平有效。高电平有效。CPU结束当前操作,标志寄存器及指令队列均清零,代码寄存器结束当前操作,标志寄存器及指令队列均清零,代码寄存器CS设置设置为为0FFFFH,IP设置为设置为0000H。复位信号消失后,。复位信号消失后,CPU从从0FFFFH:0000H处开处开始执行程序。始执行程序。9、READY:准备好信号引脚准备好信号引脚 在每个总线周期的在每个总线周期的T3状态查询状态查询该引脚电平,若为低电平,说明数据没准该引脚电平,若为低电平,说明数据没准备好,在备好,在T3状态后插入等待周期状态后插入等待周期TW,CPU继续对继续对READY进行检测,进行检测,直到检测直到检测到高电平到高电平,表明内存和,表明内存和I/O设备数据设备数据准备就绪准备就绪,才可进入,才可进入T4状态,完成数据状态,完成数据传送,结束当前总线周期。传送,结束当前总线周期。6、TEST/测试信号引脚测试信号引脚:它是可用它是可用WAIT指令对该引脚进行测试的输入信号,指令对该引脚进行测试的输入信号,低电平有效低电平有效。当该信号有。当该信号有效时,效时,CPU继续执行程序;否则继续执行程序;否则CPU就进行等待状态(空转)。此信号在每就进行等待状态(空转)。此信号在每个时钟周期的上升沿由内部电路进行同步。个时钟周期的上升沿由内部电路进行同步。第19页,此课件共52页哦2.2.28086 芯片构成最大芯片构成最大/最小系统最小系统1最小工作模式最小工作模式 当当 8086/8088 的的第第 33 脚脚 MN/MX 接接+5V 时时,就处于,就处于最小最小工作模式下工作模式下,此时第,此时第 2431 脚的信号功能和作用为:脚的信号功能和作用为:INTA(Interrupt Acknowledge)中断响应信号中断响应信号 中断响应信号输出引脚,反映中断响应信号输出引脚,反映 8086/8088CPU 是否接受外设送到是否接受外设送到 INTR 引脚的中引脚的中断请求信号。断请求信号。INTA 信号实际上是位于连续周期中的两个负脉冲,在每个总线周信号实际上是位于连续周期中的两个负脉冲,在每个总线周期的期的 T2T3 和和 Tw 状态,状态,INTA 端为低电平。第一个负脉冲通知外设的接口,它发端为低电平。第一个负脉冲通知外设的接口,它发出的中断请求已允许,外设接口收到第二个负脉冲后,往数据总线上放中断类型出的中断请求已允许,外设接口收到第二个负脉冲后,往数据总线上放中断类型码,从而码,从而 CPU 便得到了有关此中断请求的详尽信息。便得到了有关此中断请求的详尽信息。2.28086CPU 的引脚功能的引脚功能第20页,此课件共52页哦(2)ALE(Address Latch Enable)地址锁存允许信号地址锁存允许信号 地址锁存允许信号输出引脚,在任何一个总线周期的地址锁存允许信号输出引脚,在任何一个总线周期的 T1状态状态,ALE 输出高电输出高电平有效信号平有效信号,表示当前在地址表示当前在地址/数据复用数据复用总线上输出的是地址信息总线上输出的是地址信息,地址锁,地址锁存器存器 8282/8283 用用 ALE 作锁存信号作锁存信号进行进行地址锁存地址锁存。特别要注意的是在构成。特别要注意的是在构成最最小系统时,小系统时,ALE 端不能被浮空端不能被浮空。DEN(Data Enable)数据允许信号数据允许信号 数据允许信号输出引脚,低电平有效,数据允许信号输出引脚,低电平有效,8286/8287 总线收发器将总线收发器将DEN 作为作为输出允许信号。输出允许信号。打开或者关闭总线收发器打开或者关闭总线收发器。DT/R(Data Transmit/Receive)数据收发数据收发 数据发送或者接受信号输出引脚。为总线收发器数据发送或者接受信号输出引脚。为总线收发器 8286/8287 提供数据传提供数据传送方向控制信息。如送方向控制信息。如 DT/R 为为高电平高电平,则进行数据,则进行数据发送发送;如;如 DT/R 为为低电平低电平,则进行则进行数据接收数据接收。2.28086CPU 的引脚功能的引脚功能第21页,此课件共52页哦M/IO(Memory/Input and Output):):存储器存储器/输入或输出控制信号输入或输出控制信号 存储器或输入输出控制信号输出引脚,存储器或输入输出控制信号输出引脚,高电平高电平时,表示时,表示 CPU 和和存储器存储器之间进行之间进行数据传输;数据传输;低电平低电平时,表示时,表示 CPU 和和I/O输入输入/输出设备输出设备之间进行数据传输。之间进行数据传输。WR(Write):写信号):写信号HOLD(Hold Request):总线保持请求信号):总线保持请求信号HLDA(Hold Acknowledge):总线保持响应信号):总线保持响应信号 该信号与该信号与 HOLD 信号配合使用。当信号配合使用。当 HLDA 有效时,表示有效时,表示 CPU 对其它主部件的对其它主部件的总线请求做出响应,与此同时,总线请求做出响应,与此同时,所有与三态门相接所有与三态门相接的的 CPU 的引脚的引脚呈现高阻抗呈现高阻抗,从而让出了系统总线使用权,总线请求部件获得使用权,在此期间以上两个信号保持从而让出了系统总线使用权,总线请求部件获得使用权,在此期间以上两个信号保持高电平,直到部件让出总线后,才变为低电平,高电平,直到部件让出总线后,才变为低电平,CPU再次获得总线控制使用权。再次获得总线控制使用权。2.28086CPU 的引脚功能的引脚功能第22页,此课件共52页哦图图 2-6 是是 8086 在最小在最小模式下的典模式下的典型配置。型配置。2.28086CPU 的引脚功能的引脚功能第23页,此课件共52页哦在在 8086 的最小模式中,硬件包括:的最小模式中,硬件包括:1片片 8284A时钟发生器:时钟发生器:产生恒定的时钟信号,对准备产生恒定的时钟信号,对准备READY信信号和复位号和复位RESET信号进行同步;信号进行同步;3片片 8282 或或 74LS373 地址锁存器;地址锁存器;2片片 8286/8287 作为总线收发器,用以增加数据总线的驱动能力。作为总线收发器,用以增加数据总线的驱动能力。在总线周期的前半部分,在总线周期的前半部分,CPU 送出地址信号,为配合存储器、送出地址信号,为配合存储器、I/O 接口电路读写时序的要求,地址必须锁存,接口电路读写时序的要求,地址必须锁存,CPU 送出高电平允许地送出高电平允许地址锁存信号址锁存信号 ALE,对地址进行锁存。,对地址进行锁存。2.2 8086CPU 的引脚功能的引脚功能第24页,此课件共52页哦 地址锁存器地址锁存器:除了地址信号外,:除了地址信号外,BHE/信号也需要锁存。在后面的时序图上,将信号也需要锁存。在后面的时序图上,将会看到地址会看到地址/数据总线是复用的,而数据总线是复用的,而BHE和和S7(在当前芯片设计中,(在当前芯片设计中,S7未被赋予意未被赋予意义)也是复用的,所以在总线周期前半部分中输出地址信号和义)也是复用的,所以在总线周期前半部分中输出地址信号和BHE信号。在总线信号。在总线周期的后半部分中改变含义,周期的后半部分中改变含义,因为有了锁存器对地址和因为有了锁存器对地址和BHE信号进行锁存,信号进行锁存,所以所以在在总线周期的后半部分总线周期的后半部分,地址和数据地址和数据同时出现同时出现在系统的地址总线和数据总线上在系统的地址总线和数据总线上;同样,此;同样,此时时 BHE也在锁存器输出端呈现有效电平,于是也在锁存器输出端呈现有效电平,于是确保了确保了CPU对锁存器和对锁存器和I/O设备的正常读设备的正常读/写操作。写操作。1)8282是是8位典型锁存器芯片,可用位典型锁存器芯片,可用8D触发器触发器74LS373完全代换,而完全代换,而8086系统采用系统采用20位地址,加上信号,所以,位地址,加上信号,所以,需要三片需要三片8282作为地址锁存器作为地址锁存器。8282与与CPU的连接如的连接如图图2-7所示。所示。2.28086 CPU的引脚功能的引脚功能第25页,此课件共52页哦图图2一一7 8282锁存器与锁存器与8086CPU的连接的连接第26页,此课件共52页哦 2)总线驱动器:总线驱动器:当一个系统中所含的当一个系统中所含的外设接口较多时外设接口较多时,数据总线上需要有发送器和接,数据总线上需要有发送器和接收器来收器来增加驱动能力增加驱动能力。发送器和接收器简。发送器和接收器简称为收发器,也称为总线驱动器。称为收发器,也称为总线驱动器。Intel 系统的典型收发器为系统的典型收发器为 8 位的位的 8286 芯片芯片,可用双向驱动门,可用双向驱动门 74LS245 来替换,来替换,8088系统,系统,只用一片只用一片 8286 就可构成数据总线收发器,而就可构成数据总线收发器,而 8086 系统中,则要用两片系统中,则要用两片 8286。8088 与与8282 连接如连接如图图 2-8 所示:所示:在设计系统总线时,有时在设计系统总线时,有时希望提供希望提供给各部件给各部件数据信号的相位正好和数据信号的相位正好和CPU 的原始数据信号相的原始数据信号相反;反;反过来也一样,也就需要将外部数据信号反一个相位再提供给反过来也一样,也就需要将外部数据信号反一个相位再提供给CPU。为了满足这种要求,。为了满足这种要求,INTEL公司又公司又提供了提供了另一种功能和另一种功能和8286相仿的芯片相仿的芯片8287。在这样的系统中,一般。在这样的系统中,一般对地址信对地址信号也要求反一个相位号也要求反一个相位。这时,。这时,地址锁存器地址锁存器就不用就不用8282,而是采用,而是采用Intel 公司的公司的另一种芯片另一种芯片8283,其功能和,其功能和8282 相仿,但提供的输出信号相位相反。相仿,但提供的输出信号相位相反。2.28086 CPU的引脚功能的引脚功能第27页,此课件共52页哦图图2一一8 8286 收发器和收发器和8088CPU的连接的连接第28页,此课件共52页哦 最小模式系统中,信号最小模式系统中,信号M/IO、RD和和WR组合起来决定了系统中数据传输的方式。组合起来决定了系统中数据传输的方式。其组合方式和对应功能如其组合方式和对应功能如表表2-7所示。所示。2.2 8086CPU 的引脚功能的引脚功能第29页,此课件共52页哦2.最大工作模式最大工作模式 由前知,由前知,8086CPU 在最大工作模式下有多个处理器在工作,此时就在最大工作模式下有多个处理器在工作,此时就必须增设总必须增设总线控制器线控制器8288 和总线仲裁器和总线仲裁器 8289,实现总线使用权的交接和总线优先权的仲裁。,实现总线使用权的交接和总线优先权的仲裁。1)最大工作模式的状态信号)最大工作模式的状态信号 最大工作模式的典型配置见最大工作模式的典型配置见图图 2-10。这时,。这时,8086/8088 的的 MN/MX 引脚接地引脚接地。最大工作模式时,最大工作模式时,8086/8088 的第的第 2431 引脚的信号含义如下:引脚的信号含义如下:(1)QS1 和和 QS0(Instruction Queue Status)指令队列状态信号)指令队列状态信号 在最大工作模式时,第在最大工作模式时,第 24 及及 25 引脚作为引脚作为 QS1 及及 QS0 信号输出端,这两个信号信号输出端,这两个信号提提供总线周期的供总线周期的前一个状态中前一个状态中指令队列的状态。指令队列的状态。QS1及及QS0 的组合功能见的组合功能见表表 2-8。2.2 8086CPU 的引脚功能的引脚功能第30页,此课件共52页哦第31页,此课件共52页哦(2)S2、S1及及S2(Bus Cycle Status)总线周期状态信号)总线周期状态信号 在最大工作模式时,第在最大工作模式时,第2628引脚为引脚为S2/、S1/及及S0/信号输出端。它们提供当前总线信号输出端。它们提供当前总线周期中所进行的数据传输过程类型。周期中所进行的数据传输过程类型。由总线控制器由总线控制器8288根据这些信号根据这些信号对存储器及对存储器及I/O进行进行控制控制。其对应的操作见。其对应的操作见表表2-9。至少有一个为低电平才有效,否则无效。至少有一个为低电平才有效,否则无效。(3)(Lock)总线封锁信号)总线封锁信号 在最大工作模式时,第在最大工作模式时,第29 引脚为总线封锁信号输出端。引脚为总线封锁信号输出端。当为低电平时,其它总线当为低电平时,其它总线主控部件都不能占用总线主控部件都不能占用总线。在。在DMA期间,期间,LOCK端被浮空而处于高阻状态。端被浮空而处于高阻状态。中断过程中,中断过程中,LOCK引脚自动变为低电平。引脚自动变为低电平。(4)(Request/Grant)总线请求信号(输入端)总线请求信号(输入端)/总线请求信号(允许输出端)总线请求信号(允许输出端)在最大工作模式时,第在最大工作模式时,第30及及31引脚分别为总线请求信号输入端引脚分别为总线请求信号输入端/总线请求允许信号输出总线请求允许信号输出端,可供端,可供CPU以外两个协处理器用来以外两个协处理器用来发出使用总线请求发出使用总线请求和和接收接收CPU对总线请求信号的应答信号对总线请求信号的应答信号。这两个应答信号都是双向的。这两个应答信号都是双向的。RQ/GT0 的优先级比的优先级比RQ/GT1的高。的高。2.28086 CPU的引脚功能的引脚功能第32页,此课件共52页哦2)总线控制器)总线控制器 82888288总线控制器的内部结构及引脚排列见总线控制器的内部结构及引脚排列见图图2-11 2.2 8086CPU 的引脚功能的引脚功能第33页,此课件共52页哦 8288产生的产生的ALE、DT/R及及DEN信号与最小工作模式时相同,但信号与最小工作模式时相同,但DEN信号的极性相反。信号的极性相反。8288产生的总线命令是由产生的总线命令是由8086的总线状态信号的总线状态信号S2/、S1/及及S0/所所决定的。这些信号所产生的总线命令见决定的。这些信号所产生的总线命令见表表2-10。(3)总线仲裁控制器)总线仲裁控制器 8289 多处理器系统中必须多处理器系统中必须采用总线仲裁器采用总线仲裁器8289来确定总线使用权来确定总线使用权,并并将总线使用权赋给优先级别较高的处理器使用将总线使用权赋给优先级别较高的处理器使用。在解决总。在解决总线争用的问题上,线争用的问题上,8289 采用采用并行优先权仲裁、串行优先权仲裁并行优先权仲裁、串行优先权仲裁和循环优先权仲裁方式和循环优先权仲裁方式三种优先权处理方法。三种优先权处理方法。2.2 8086CPU 的引脚功能的引脚功能第34页,此课件共52页哦表表2一一10 8086总线状态信号经总线状态信号经8288所产生的总线命令所产生的总线命令第35页,此课件共52页哦1.系统的复位和启动操作系统的复位和启动操作 8086 的复位和启动操作通过在的复位和启动操作通过在 RESET 引脚施加触发信号来执行,见图引脚施加触发信号来执行,见图 2-12。当当 RESET 引脚接收到高电平后的第一个时钟周期的上升沿,即图引脚接收到高电平后的第一个时钟周期的上升沿,即图 2-12 的的时,时,8086/8088 进入内部进入内部 RESET 阶段。再过一个时钟周期,所有阶段。再过一个时钟周期,所有三态输出线就被三态输出线就被设置成高阻状态设置成高阻状态,并且一直,并且一直 维持高阻状态维持高阻状态,直到直到 RESET 信号回到低电平信号回到低电平。但在。但在进入高阻状态的前半个时钟周期,即在前进入高阻状态的前半个时钟周期,即在前 一个时钟周期的低电平期间,见一个时钟周期的低电平期间,见图图 2-12,这些三态输出线被设置成无作用状态。等到时钟信号,这些三态输出线被设置成无作用状态。等到时钟信号 又成为高电平时,三态输出又成为高电平时,三态输出线才进入高阻状态。线才进入高阻状态。2.2.38086CPU 的主要操作功能的主要操作功能第36页,此课件共52页哦图图2一一12 8086/8088的启动和复位时序的启动和复位时序第37页,此课件共52页哦 当当 8086/8088 进入内部进入内部 RESET 时,时,CPU 结束现行操作,结束现行操作,维持在复位状态,这时维持在复位状态,这时 CPU 各内部寄存器各内部寄存器都被设为初值都被设为初值,见见左表左表 2-11。复位状态的代码段寄存器。复位状态的代码段寄存器 CS 和指令指和指令指针寄存器针寄存器 IP 分别被初始化为分别被初始化为 FFFFH 和和 0000H。所以,所以,8086/8088 在复位之后再重新启动时,便从在复位之后再重新启动时,便从内存的内存的 FFFF0H 处开始执行指令,使系统在启动时,处开始执行指令,使系统在启动时,能自动进入系统程序。能自动进入系统程序。在复位时,标志寄存器被清零,系统程序处于启动状态,在复位时,标志寄存器被清零,系统程序处于启动状态,需要通过指令设置有关标志。需要通过指令设置有关标志。复位信号复位信号 RESET 从高电平到低电平的跳变将触发从高电平到低电平的跳变将触发 CPU 内部的复位逻辑电路,经过内部的复位逻辑电路,经过 7 个时钟周期之后,个时钟周期之后,CPU 就启就启动而恢复正常工作,即从动而恢复正常工作,即从 FFFF0H 处开始执行程序。处开始执行程序。2.2 8086CPU 的引脚功能的引脚功能标志寄存器清零指令指针0000HCS 寄存器FFFFHDS 寄存器0000HSS 寄存器0000HES 寄存器0000H指令队列空其它寄存器0000H第38页,此课件共52页哦2.总线读操作和总线写操作总线读操作和总线写操作 8086CPU 与存储器或外设之间的数据交换通过总线操作实现,基与存储器或外设之间的数据交换通过总线操作实现,基本时序用总线周期描述,本时序用总线周期描述,一个总线周期至少包含一个总线周期至少包含 4 个时钟周期,个时钟周期,时钟周期由时钟频率来确定。时钟周期由时钟频率来确定。(1)最小模式的总线读操作)最小模式的总线读操作 8086/8088 最小工作模式总线读操作时序见最小工作模式总线读操作时序见图图 2-13。一个基本的一个基本的读操作周期包含读操作周期包含 4 个状态个状态,即,即 T1、T2、T3 和和 T4。在存储器和外。在存储器和外设速度较慢时,要在设速度较慢时,要在 T3 之后插入一个或数个之后插入一个或数个等待状态等待状态 Tw。2.2 8086CPU 的引脚功能的引脚功能第39页,此课件共52页哦图图2一一13 8086/8088最小工作模式总线读操作时序最小工作模式总线读操作时序第40页,此课件共52页哦(2)最小工作模式下的总线)最小工作模式下的总线写写操作操作 总线写操作发生的过程与总线读操作完全类似,一个基本的总线写操作发生的过程与总线读操作完全类似,一个基本的写操作周期包含写操作周期包含 T1T4 四个状四个状 态。但当存储器和外设较慢时,态。但当存储器和外设较慢时,在在 T3 和和 T4 状态之间,可能插入几个等待状态状态之间,可能插入几个等待状态 Tw。不同是是不同是是 CPU 控控制信号为制信号为 WR,数据是数据是从从 CPU 输出到存储器或者外设输出到存储器或者外设,具体时,具体时序见序见图图 2-14。2.2 8086CPU 的引脚功能的引脚功能第41页,此课件共52页哦图图2一一14 8086/8088最小工作模式总线写操作时序最小工作模式总线写操作时序第42页,此课件共52页哦2.3.1 80 x86/Pentium 系列系列 CPU 的功能结构的功能结构1、80386 80386 是是 32 位位 80 x86/Pentium 系列系列 CPU 中的中的首个首个 32 位处理器。位处理器。80386 拥有拥有 32 位数据线和位数据线和32 位地址位地址线线,内部寄存器与数据线,内部寄存器与数据线 32 位,段寄存器为位,段寄存器为 16 位。位。80386 CPU 首次将首次将 32 位的寄存器组引入位的寄存器组引入 80 x86 体体系结构系结构的的 CPU 中,能够用于计算和寻址操作。每个中,能够用于计算和寻址操作。每个 32 位寄存器的低半部分与位寄存器的低半部分与 8086/8088、80286 的的 16 位寄存器具有相同