1、第第4 4章章 8086/8088的总线与时序第1页,共44页。主要内容n8086微处理器的组成、引脚功能;微处理器的组成、引脚功能;n8086的的CPU系统;系统;n8086的时序。的时序。第2页,共44页。4.1 80864.1 8086微处理器主要内容:主要内容:n指令流水线指令流水线n8086外部引线及功能;外部引线及功能;n8086的工作时序。的工作时序。第3页,共44页。8086的硬件特性(补充)n16位微处理器,位微处理器,CMOS型,型,40引脚引脚DIP封装封装n16位数据总线,位数据总线,20位地址总线位地址总线n功耗:功耗:5V,360mA(低功耗型(低功耗型80C86仅
2、需仅需10mA)n输入特性:输入电流输入特性:输入电流0.01mAn逻辑0:0.8Vn逻辑1:2.0Vn输出特性:输出特性:n逻辑0:0.45V,最大2.0mAn逻辑1:2.4V,最大-0.4mAn输出引脚负载能力:n74HC、74ALS、74AS、74F负载10个n74LS负载5个n74、74S负载1个第4页,共44页。一、指令流水线取指令取指令指令译指令译码码取操取操作数作数执行指执行指令令存放存放结果结果 CPU执行一条指令的过程类似于工厂生产流水线,被分 解为多个小的步骤,称为指令流水线。原料原料调度分配调度分配生产线生产线成品成品仓库仓库出厂出厂数据和程序指令控制器的调度分配ALU等
3、 功能部件处理后的数据存储器输出第5页,共44页。指令流水线n指令流水线有两种运作方式:指令流水线有两种运作方式:n串行方式:取指令取指令和和执行指令执行指令在不同的时刻按顺序执行。在不同的时刻按顺序执行。n并行方式:取指令取指令和和执行指令执行指令可同时执行,需要有能并行工作的硬件可同时执行,需要有能并行工作的硬件的支持。的支持。第6页,共44页。串行工作方式n8088086 6以前的以前的CPUCPU采用串行工作方式采用串行工作方式取指令取指令1执行执行1取指令取指令2执行执行2CPUBUS忙忙 碌碌忙忙 碌碌取指令取指令3执行执行3忙忙 碌碌空闲空闲空闲空闲空闲空闲t1t0t2t3t4t
4、56个周期执行了3条指令第7页,共44页。并行工作方式n8086CPU采用并行工作方式采用并行工作方式取指令取指令1取指令取指令2取指令取指令3取指令取指令4执行执行1执行执行2执行执行3BUS忙碌忙碌执行执行4CPUt1t0t2t3t4t5取指令取指令5执行执行5忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌6个周期执行了5条指令第8页,共44页。并行操作的前提n取指令部件和指令执行部件要能够并行工作;取指令部件和指令执行部件要能够并行工作;n各部件执行时间基本相同,否则需再细分;各部件执行时间基本相同,否则需再细分;n取指令部件取出的指令要能暂存在取指令部件取出的指令要能暂存在CPU内部内部某个
5、地方;某个地方;n指令执行部件在需要时总能立即获得暂存的指令执行部件在需要时总能立即获得暂存的指令;指令;n需要解决转移指令问题。需要解决转移指令问题。第9页,共44页。*超级流水线和超标量结构n超级流水线超级流水线n指令的执行步骤分得更细,流水线长度更长 例如,PIII为14个阶段,P4为20个阶段n有利于提高主频n转移分支时的效率?n解决:分支预测、推测执行n超标量结构超标量结构n对流水线中的关键“岗位”设置多个相同的执行单元多个工人完成一道工序nP4:倍频ALU2,FPU2(其中一个为并行FPU)nAthlon XP:ALU6,并行FPU3组第10页,共44页。8086 CPU的特点n采
6、用并行流水线工作方式:采用并行流水线工作方式:通过设置指令预取队列(IPQ)实现n对内存空间实行分段管理:对内存空间实行分段管理:将内存分段并设置地址段寄存器,以实现对1MB空间的寻址。n支持多处理器系统:支持多处理器系统:8087 FPU执行部件执行部件取指部件取指部件第11页,共44页。8086 CPU的两种工作模式n8086可工作于两种模式下,即:可工作于两种模式下,即:最小模式和最大模式。最小模式和最大模式。n最小模式不支持最小模式不支持8087。存储器和。存储器和I/O控制信控制信号全部由号全部由CPU产生。产生。n最大模式支持最大模式支持8087。CPU的部分信号线被用的部分信号线
7、被用作作8087的控制,因此需要由的控制,因此需要由8288总线控制器总线控制器来产生这些控制信号。来产生这些控制信号。注:80286以后的CPU不再区分这两种工作模式。第12页,共44页。最小模式下的连接示意图8086CPU控制总线控制总线数据总线数据总线地址总线地址总线地址地址锁存器锁存器数据总线数据总线缓冲器缓冲器ALE时钟发时钟发生生 器器8284A地址地址/数据数据8286(或74LS245)8282(或74LS373)三片Vcc MN/MXDENDT/R第13页,共44页。最大模式下的连接示意图8088CPU数据总线数据总线地址总线地址总线地址地址锁存器锁存器数据总线数据总线缓冲器
8、缓冲器时钟发时钟发生生 器器总总 线线控制器控制器控制总线控制总线8284A8288ALECLK MN/MX82828286GND第14页,共44页。8288总线控制器n最大模式下,最大模式下,8288总线控制器产生某些总线控制器产生某些CPU不再提供的控制信号。不再提供的控制信号。n8288产生的信号包括:产生的信号包括:n独立的I/O控制命令:IORC、IOWCn独立的存储器控制命令:MRDC、MWTCn中断响应信号和总线控制信号n以上三组信号取代了最小模式的:以上三组信号取代了最小模式的:nALE、WR、IO/M、DT/R、DEN、INTA第15页,共44页。8288总线控制器逻辑框图控
9、制逻辑命令信号产生器控制信号产生器状态译码器S0S1S2CLKAENCENIOBDT/RDENMCE/PDENALEMCE/PDEN:PIC主控级连/IO设备数据输出控制信号 IOB=0时,PIC主控级连;否则,用于允许I/O总线收发器MRDC(MEMR)MWTC(MEMW)AMWCIORC (IOR)IOWC(IOW)AIOWCINTA (INTA)第16页,共44页。二、8086CPU的引线及功能第17页,共44页。第18页,共44页。二、8086CPU的引线及功能引脚定义的方法可大致分为:n每个引脚只传送一种信息(如每个引脚只传送一种信息(如RDRD)n电平的高低代表不同的含义(如电平的
10、高低代表不同的含义(如M/IOM/IO)n在不同模式下有不同的名称和定义(如在不同模式下有不同的名称和定义(如WR/LOCKWR/LOCK)n分时复用引脚(如分时复用引脚(如AD15AD15AD0AD0)n引脚的输入、输出分别传送不同的信息(如引脚的输入、输出分别传送不同的信息(如RQ/GT0RQ/GT0)第19页,共44页。最小模式下的主要引线nMN/MX 工作模式控制工作模式控制n=0(接地):工作于最大模式;n=1(接Vcc):工作于最小模式。第20页,共44页。最小模式下的主要引线地址总线、数据总线:地址总线、数据总线:nAD15AD0:三态三态n地址/数据复用引脚。ALE=1时作为地
11、址线A16A0,ALE=0时作为数据线D16D0。n传送地址时为输出,传送数据时为双向。nA19-A16/S6-S3:输出,三态输出,三态n地址/状态复用引脚。ALE=1时作为地址线A19A16,ALE=0时作为控制信号。第21页,共44页。最小模式下的主要引线控制信号:控制信号:nWRWR:输出,三态输出,三态n写选通信号,表示CPU正在写数据到MEM或I/O设备。nRDRD:输出,三态输出,三态n读信号,表示CPU正在从总线上读来自于MEM或I/O设备的数据。nM/IOM/IO:输出,三态输出,三态n区分是读写存储器还是读写I/O端口(即地址总线上的地址是存储器地址还是I/O端口地址)。第
12、22页,共44页。最小模式下的主要引线nDEN:输出,三态输出,三态n数据总线允许信号。用来打开外部数据总线缓冲器。nDT/R:输出,三态:输出,三态n表明CPU正在传送还是接收数据,用来作为外部数据总线缓冲器的方向控制;nALE:输出:输出n地址锁存允许信号,表示地址/数据总线上传输的是地址信号。以上三个信号的用法见下页图以上三个信号的用法见下页图第23页,共44页。数据/地址分离电路(最小模式)8282或3738086BHE/S7A19-A16/S6-S3AD15-AD0OE8286或245OEDIRD15-D0DT/RALESTBA19-A0BHE地址总线数据总线DENCPU总线系统总线
13、第24页,共44页。最小模式下的主要引线nRESET:输入输入 n复位信号,保持4个以上时钟周期的高电平时将引起CPU进入复位过程(IF清0,并从存储单元FFFF0H开始执行指令);nBHE/S7:输出:输出n高8位数据总线允许。在读/写操作期间允许高高8 8位数据总线位数据总线D16D16D8D8有效(即读/写数据的高8位)。nREADY:输入:输入n准备就绪。用于与存储器或I/O接口的同步。n=0时CPU进入等待状态(插入1个或多个等待周期)。第25页,共44页。READY引脚的作用总线周期总线周期T2T1T3T4时钟周期总线周期总线周期T2T1T3TwaitT4标准总线标准总线周期周期增
14、加了等待增加了等待状态的总线状态的总线周期周期若在若在T3周期上升沿检测到周期上升沿检测到READY=0,将插入等待周期,插入的个数取决于,将插入等待周期,插入的个数取决于READY何时变为何时变为1。采样采样第26页,共44页。中断请求和响应信号nINTR:输入输入n可屏蔽中断请求输入端,CPU要检查IF状态nNMI:输入输入n非屏蔽中断请求输入端,CPU不检查IF状态nINTA:输出输出n中断响应信号,表示CPU已进入中断响应周期。n此信号常用来选通中断向量号。第27页,共44页。总线保持信号nHOLD:输入输入n总线保持请求。用来直接存储器存取(DMA)。当CPU以外的其他设备要求占用总
15、线以便访问存储器时,通过此引脚向CPU发出请求。nHOLD=1时,CPU停止执行指令,并将地址/数据总线和控制总线中的所有三态控制线置为高阻状态。nHLDA:输出输出n总线保持响应。CPU对HOLD信号的响应信号。指示CPU已进入保持状态。第28页,共44页。其他信号nTEST:输入:输入n测试信号。执行WAIT指令时将测试此引脚的状态。n=0时,WAIT指令相当于空操作(NOP)。n=1时,WAIT指令将重复测试直到它变为0。n通常此引脚与8087算术协处理器相连。nCLK:输入:输入n时钟引脚。为CPU提供基本的定时信号。n占空比必须为33(高1/3,低2/3)。第29页,共44页。三、8
16、086CPU的内部结构(第一章已讲述,回顾一下)n8086内部由两部分组成:内部由两部分组成:执行单元(执行单元(EU)总线接口单元(总线接口单元(BIU)结结 构构第30页,共44页。执行单元n功能:执行指令,具体操作如下功能:执行指令,具体操作如下 从从IPQ中取指令代码中取指令代码 译码译码 完成指定的操作完成指定的操作 结果保存到目的操作数结果保存到目的操作数 运算特征保存在标志寄存器运算特征保存在标志寄存器FLAGS(仅对影响标志的指令)(仅对影响标志的指令)第31页,共44页。总线接口单元功能:功能:n从内存中取指令到指令预取队列从内存中取指令到指令预取队列IPQ;n负责与内存或负
17、责与内存或I/O接口之间的数据传送;接口之间的数据传送;n在执行转移指令时,在执行转移指令时,BIU将清除将清除IPQ,然后,然后从转移的目的地址处开始取指令并重新填充从转移的目的地址处开始取指令并重新填充IPQ。第32页,共44页。8086结构特点小结n有有EU和和BIU两个独立的、同时运行的部件两个独立的、同时运行的部件n二者通过二者通过IPQ构成一个两工位流水线构成一个两工位流水线n指令被指令被EU和和BIU按流水线方式处理:按流水线方式处理:n提高了CPU的运行速度;n提高了CPU的执行效率;n降低了对存储器存取速度的要求。第33页,共44页。4.3 8086的工作时序n工作时序分为很
18、多小的时间片工作时序分为很多小的时间片:n时钟周期 一个时钟脉冲所持续的时间。时钟周期越短,一个时钟脉冲所持续的时间。时钟周期越短,CPU执行执行速度越快。速度越快。n总线周期 通过总线对存储器或通过总线对存储器或I/O接口进行一次访问所需要的时间。接口进行一次访问所需要的时间。一般包括一般包括4个时钟周期。个时钟周期。在在5MHz的工作频率时,一个标准总线周期为的工作频率时,一个标准总线周期为0.8s。第34页,共44页。总线周期中各时钟周期的操作nT1周期周期nCPU向存储器或I/O发送地址nCPU向地址/数据分离器(地址锁存器)发送ALE信号nT2周期周期n给存储器或I/O发送写入的数据
19、n测试READY引脚状态,以决定是否插入等待周期n发出RD或WR信号nT3周期周期n等待存储器或I/O存取数据完成n使数据在CPU与存储器或I/O之间传输nT4周期周期n写入数据 读读/写总线周期的信号波形见下页图。写总线周期的信号波形见下页图。第35页,共44页。数据写入存储器时的总线操作写总线周期由ALE信号将地址锁存到地址锁存器DEN=0并且DT/R=1时打开总线缓冲器,将其放到系统数据总线上此信号与M/IO信号共同构成存储器写控制信号,将数据写入存储器第36页,共44页。数据从存储器读出的总线操作读总线周期DEN=0并且DT/R=0时打开总线缓冲器,将其放到CPU总线上,供CPU读入
20、较完整的较完整的读总线周读总线周期期此信号与M/IO信号共同构成存储器读控制信号由ALE信号将地址锁存到地址锁存器第37页,共44页。补充:补充:80386CPU主要特性:主要特性:n全全32位结构位结构(ALU、BUS、Reg),可处理,可处理8/16/32位数据位数据n物理寻址空间物理寻址空间232字节(字节(4GB)n外部数据总线传输率为外部数据总线传输率为33MB/sn片内集成片内集成MMU,支持段式或页式虚拟存储管理和特权保护,支持段式或页式虚拟存储管理和特权保护n虚存空间64TB,1MB或4GB/段,16384段/任务n4级特权层:一般OS为0、1、2级,用户程序为3级n实地址方式
21、、虚拟实地址方式、虚拟8086方式和保护方式方式和保护方式n硬件支持多任务,一条指令可完成任务转换,转换时间硬件支持多任务,一条指令可完成任务转换,转换时间17usn更先进的流水线结构:更先进的流水线结构:16字节指令队列字节指令队列n时钟速度:时钟速度:1633MHz第38页,共44页。1.内部结构分三个部分:分三个部分:n总线接口单元(总线接口单元(BIU)n与存储器和接口间的数据传送n中央处理单元(中央处理单元(CPU)n指令预取部件、指令译码部件、执行部件n指令译码和执行n存储器管理单元(存储器管理单元(MMU)n段管理部件、页管理部件n地址转换、虚存管理内部内部结构结构第39页,共4
22、4页。2.主要引线功能nD0D31:双向,:双向,32位数据总线位数据总线;nA2A31:输出,:输出,30位地址总线;位地址总线;nBE0BE3:字节选通输出,与:字节选通输出,与30位地址线结合可位地址线结合可 相当于相当于32位地址;位地址;nW/R:输出,写:输出,写/读控制信号;读控制信号;nD/C:输出,数据传送周期:输出,数据传送周期/控制周期;控制周期;nBS16:输入,有效则总线宽度为:输入,有效则总线宽度为16位;位;nADS:输出,地址信号有效;:输出,地址信号有效;nNA:输入,下一地址请求信号;:输入,下一地址请求信号;n其他信号与其他信号与8086基本一致基本一致第
23、40页,共44页。80386的工作模式小结n实模式实模式n只允许CPU访问第一个1MB存储器空间n实模式存储器/常规内存n每次加电/复位后默认的工作方式n存储单元的地址都由“段偏移”组成n保护模式保护模式n允许CPU访问所有存储器空间n段地址由描述符提供,描述符由选择子在描述符表中选择n分页机制n虚拟虚拟8086模式模式n在保护模式下模拟多个8086工作环境 地址转换地址转换第41页,共44页。三、Pentium 4 CPU简介简介n物理特性(三个版本)物理特性(三个版本)n2000.8 Willametten0.18u铝工艺n1.4GHz 2.0GHznSocket 423/3400万晶体管
24、,Socket 478/4200万晶体管nFSB 400/533MHzn12KOps+8KB L1+256KB L2n2001.2 Northwoodn0.13u铝/铜工艺n1.6GHz 3.06GHznSocket 478,5500万晶体管nFSB 533/800MHzn12KOps+8KB L1+512KB L2+2MB L3(XE版本)n2004.2 Prescottn0.09u铜工艺n2.8GHz?nSocket 478/SocketT,12500万晶体管nFSB 800MHzn16KOps+16KB L1+1MB L2第42页,共44页。Pentium 4 CPU简介简介nNetbu
25、rst体系结构体系结构n2个2x ALU1个1x ALU,两个2x AGU(地址)n超级流水线,20级n高级动态执行n乱序执行:一条指令暂时不能执行时,后面的指令可继续执行n推测执行:为保证流水线不间断,先执行再判断,发现预测错误时再返回错误点重新开始n同时执行126条指令n同时执行48个读取操作和24个存储操作n增强的分支预测能力n分支目标缓存BTB,可追踪4096个分支目标地址n新型缓存体系结构n12K微指令追踪缓存,存放已执行过的指令,以便分支预测错误时能够立即恢复到错误的分支点n8KB L1数据缓存n256KB512KB L2高级传输缓存n4倍速总线接口n总线频率100MHz(133MHz)*4400MHz(533MHz)FSB第43页,共44页。Pentium 4 CPU简介简介n增强的单指令多数据流指令集增强的单指令多数据流指令集SSE2n144条128位多媒体指令n128位整数运算、128位双精度浮点运算n改善了视频、音频、3D图形、网络等领域的数据处理能力n存储管理基本同存储管理基本同80386n基本运行环境基本运行环境第44页,共44页。