1、1 8086/8088 CPU 内部结构 2 8086/8088 CPU 引脚及功能 3 8086/8088 CPU 系统组织 4 8086/8088 CPU 时序 5 80X86/Pentium 微处理器CPU CPU 结构与特点结构与特点一、一、8086/8088 CPU结构结构EU:执行部件(8086/8088)BIU:总线接口部件(8086的不同于8088的)由两部分组成8086 BIU:指令队列6个字节,外部数据总线16位。8088 BIU:指令队列4个字节,外部数据总线8位。EU:执行指令.BIU:取指、读操作数、写结果.两部分相互独立 在大多数情况下,取指、执指的操作并行。这消除
2、了许多取在大多数情况下,取指、执指的操作并行。这消除了许多取指时间,从而提高了系统总线的使用效率,改善了系统性能。指时间,从而提高了系统总线的使用效率,改善了系统性能。8080X86/Pentium X86/Pentium 微处理器微处理器自1971年INTEL 4004问世以来,微处理器的发展速度惊人。1 8086/8088 CPU内部结构n8086/8088微处理器微处理器n8086/8088微处理器是微处理器是Intel公司推出的第三代公司推出的第三代CPU芯芯片,它们的内部结构基本相同,都采用片,它们的内部结构基本相同,都采用16位结构进行操位结构进行操作及存储器寻址,但外部性能有所差
3、异,两种处理器都封作及存储器寻址,但外部性能有所差异,两种处理器都封装在相同的装在相同的40脚双列直插组件中。脚双列直插组件中。CHDHDISPBPSI65标志 FR3EU控制系统运算寄存器ALU1 24DSSSES总线控制逻辑IPCS内部RegBHAHDLCLALBL地址总线20位地址加法 数据总线外部总线指令队列通用寄存器ALU数据总线80888086AXBXCXDX8080X86/Pentium X86/Pentium 微处理器微处理器负责全部指令的执行;向BIU输出(地址及结果)数据;对Reg及PSW进行管理。(2)功能1.EU(Execution Unit,含有含有ALU及部分及部分
4、Reg.)数据寄存器:AX,BX,CX,DX (16位)8个通用寄存器 变址寄存器:SI,DI 算术逻辑运算部件ALU 16 位加法器,用于对寄存器和指令操作数进行算术或逻辑运算位加法器,用于对寄存器和指令操作数进行算术或逻辑运算.标志寄存器PSW 9个标志位,其中个标志位,其中6个条件标志位用于存放结果状态个条件标志位用于存放结果状态.运算寄存器 EU控制系统(1)组成AH,AL,BH,BL,CH,CL,DH,DL(8位)指示器:SP,BP接收接收从从BIU的的指令队列中取来的指令代码指令队列中取来的指令代码,译码并向译码并向 EU 内各有关部分内各有关部分发出时序命令信号发出时序命令信号,
5、协调执行指令规定的操作协调执行指令规定的操作。8080X86/Pentium X86/Pentium 微处理器微处理器2.BIU(Bus Interface Unit,8086/8088同外部设备的接口部件)同外部设备的接口部件)完成所有外部总线的操作,提供总线控制信号。具体地说,完成:取指、指令排队、读写操作数、地址转换(将取指、指令排队、读写操作数、地址转换(将两个两个16位地址相加位地址相加 20位物理地址),总线控制。位物理地址),总线控制。代码段Reg:CS 堆栈段Reg:SS 数据段Reg:DS 附加段Reg:ES (1)组成 指令指针寄存器IP(下一条要取的指令在当前代 码段内的
6、偏移量)4个段寄存器 指令队列Queue 20位地址加法器 总线控制逻辑 内部通信寄存器(2)功能8080X86/Pentium X86/Pentium 微处理器微处理器(3)指令队列 BIU使用指令队列实现流水线操作。当指令队列中有2个或2个(1个)以上的字节空间,且EU未申请读写存储器,则BIU顺序预取后续指令代码 Queue。(1)若是运算操作:操作数 暂存器 ALU;运算结果 经“ALU总线”相应Reg、并置PSW。(2)若从外设取数:EU BIU 访问MEM 或 I/O 内部通信寄存器 向“ALU数据总线”传 送 数据。3.EU的工作过程的工作过程从BIU指令队列中取指 译码电路分析
7、 相应控制命令 控制数据经过“ALU数据总线”的流向:8080X86/Pentium X86/Pentium 微处理器微处理器字长字长:16位/准16位。时钟频率时钟频率:8086/8088标准主频为5MHz,8086/8088-2主频为8MHz。数据、地址总线复用数据、地址总线复用。最大内存容量最大内存容量:1MB。基本寻址方式基本寻址方式:8种。指令系统指令系统:99条基本汇编指令。除能完成数据传送、算术运算、逻辑运算、控制转 移和处理器控制功能外,还设有硬件支持乘除法指令 和串处理指令。可以对位、字节、字、字节串、字串、压缩和非压 缩BCD码等多种数据类型进行处理。端口地址端口地址:16
8、位I/O端口地址可寻址64K端口地址。中断功能中断功能:可处理内部软件中断和外部硬件中断源达256个。支持单片支持单片CPUCPU或多片或多片CPUCPU系统工作系统工作。二、二、特点特点1.8086/8088 CPU 主要性能8080X86/Pentium X86/Pentium 微处理器微处理器 通常情况下,IP中包含下一条要取出的指令在现行代码段内的偏移量。所以,只要是顺序执行,队列机构中的指令就是紧接在现行执行指令后的逻辑上的指令。如果如果EU执行转移指令,则执行转移指令,则BIU清除队列机构,从新地址取出清除队列机构,从新地址取出指令,并立即送指令,并立即送EU执行。然后,从后续的指
9、令序列中取指令填满执行。然后,从后续的指令序列中取指令填满队列。队列。2.特点取取指指取取指指取取指指取取指指得得到到数数据据等等待待执执行行执执行行执执行行执执行行(1)取指执指重叠并行 在一条指令的执行过程中可以取出下一条(或多条)指令,在一条指令的执行过程中可以取出下一条(或多条)指令,指令在指令队列中排队(指令在指令队列中排队(预取下一条指令的技术称指令流水线)预取下一条指令的技术称指令流水线);在一条指令执行完成后,就可以立即执行下一条指令,减少CPU为取指令而等待的时间,提高CPU的利用率和整个运行速度。8080X86/Pentium X86/Pentium 微处理器微处理器(i)
10、存储器空间 20根地址线 220=1M Byte(2)段寄存器和存储器分段 8086/8088率先打破微处理器只能访问率先打破微处理器只能访问64KB存储空间的限存储空间的限制,可寻址制,可寻址1MB。0000000000H H FFFFFHFFFFFH A19地地 址址A010 010111001011010101972D5H 将存储器分成将存储器分成4 4个段,存放三类信息:个段,存放三类信息:代码、数据、中间结果和断点地址。代码、数据、中间结果和断点地址。12H972D5H段(972D5H)=12H8080X86/Pentium X86/Pentium 微处理器微处理器+物理地址=段址1
11、0H+偏址段址段址 段寄存器段寄存器 CSCS、DSDS、ESES、SS SS 1616偏址偏址 BXBX、BPBP、SISI、DIDI、符号地址符号地址 1616指令地址指令地址(CS)*10H+(IP)数据地址数据地址 (DS)*10H+EA堆栈地址堆栈地址(SS)*10H+(SP)附加段地址附加段地址(ES)*10H+EA(ii)4个段寄存器CS、DS、SS、ES 分别指示存储区起始地址(段基地址),用来用来识别当前可寻址的识别当前可寻址的 四个段,不可互换使用四个段,不可互换使用。(iii)存储单元的逻辑地址和物理地址逻辑地址逻辑地址 段基地址 0000HFFFFH 偏移地址 指某段内
12、指令存放的单元到段基地 址的距离(0000HFFFFH)CPU访问存储器时,送出访问存储器时,送出00000HFFFFFH间的一个间的一个20位的物理地址。位的物理地址。8080X86/Pentium X86/Pentium 微处理器微处理器段基址段基址0 0 0 00 0 0 03 2 1 03 2 1 015 015 0偏移地址偏移地址基址加法器基址加法器物理地址物理地址0 015150 01919 物理地址的形成物理地址的形成.2000020000H H2525F60HF60H2525F61HF61H2525F62HF62H2525F63HF63H20002000H H段基址段基址逻逻辑
13、辑地地址址段内偏移地址段内偏移地址5 5F62HF62H逻辑地址与物理地址逻辑地址与物理地址物理地址与逻辑地址的关系如下图:8080X86/Pentium X86/Pentium 微处理器微处理器段缺省和段替换规则:段缺省和段替换规则:分段结构对初学者带来不便,段寄存器名不出现在指令机器码和汇编格式中,操作性质隐含指定,这就是“段缺省”。其次,段寄存器和指针、变址寄存器有较固定的配用关系,即搭配规则;最后,在指令之前加上“CS”,”DS”,”SS”等前缀,以指定的段寄存器替代隐含的段寄存器,也存在替换规则。(ES)16d+(DI)DI无ES目标字符串(DS)16d+(SI)SICS,ES,SS
14、DS源字符串(DS)16d+EA有效地址EACS,ES,SSDS存取变量(SS)16d+EA有效地址EACS,DS,ESSSBP间址(SS)16d+(SP)SP无SS堆栈操作(CS)16d+(IP)IP无CS取指令物理地址计算偏移地址可替换段地址正常使用(隐含)段基址操作类型8080X86/Pentium X86/Pentium 微处理器微处理器代代 码码 段段数数 据据 段段堆堆 栈栈 段段C CS SI IP PD DS SS SI I,D DI I或或 B BX XS SS SS SP P或或 B BP P段寄存器和其他寄存器组合指向存储单元示意图段寄存器和其他寄存器组合指向存储单元示意
15、图8080X86/Pentium X86/Pentium 微处理器微处理器(iv)存储器分段的一般规律:a.可独立分开(最大不重叠16个段)b.连续 c.重叠(部分重叠或完全重叠)如:数据段和附加段完全重叠,堆栈段和附加段部分重叠。因此对一个具体的存储单元,可以属于一个逻辑段,也可以同时属于几个逻辑段。8080X86/Pentium X86/Pentium 微处理器微处理器(3)部分管脚功能双重定义以适用多处理器控制寄存器控制寄存器8位寄存器位寄存器 IP FLAG CS DS SS ES 代码段寄存器代码段寄存器 数据段寄存器数据段寄存器 堆栈段寄存器堆栈段寄存器 附加段寄存器附加段寄存器
16、AH AL BH BL CH CL DH DL AX BX CX DX SP BP SI DI 累加器累加器 基地址寄存器基地址寄存器 计数器计数器 数据寄存器数据寄存器 堆栈指针寄存器堆栈指针寄存器 基地址寄存器基地址寄存器 源变址寄存器源变址寄存器 目的变址寄存器目的变址寄存器 (PC)指令指针寄存器指令指针寄存器(PSW)状态标志寄存器状态标志寄存器 段寄存器段寄存器16位寄存器位寄存器通用寄存器通用寄存器寄存器组(寄存器组(Register Set)2.1.2 2.1.2 寄存器的配置寄存器的配置8080X86/Pentium X86/Pentium 微处理器微处理器 (1)用途:存放
17、8位或16位操作数或中间结果,以提高CPU的 运算速度(减少存取MEM的时间)其中,AX是CPU使用最多的一个寄存器,功能最强。AX的作用:i)ALU之前保存一个操作数,ALU之后保存结果。ii)CPU与 I/O、MEM交换数据所用到的最多的寄存器。(前者对算术运算,后者对 I/O 操作)8080X86/Pentium X86/Pentium 微处理器微处理器一、通用一、通用Reg.Reg.(分为两组:一组可用于字、字节;另一组仅可用于字)1.数据Reg.(AX,BX,CX,DX)(2)特殊用法:i)BX 计算地址用作基址Reg.ii)CX 计数器,循环或移位时用。)DX 在某些 I/O 操作
18、时,用来保存I/O端口地址,或字的乘除法运算。2.指示器和变址Reg.(SP,BP,SI,DI,仅能用于字)用途:a.缩短指令代码的长度;b.建立可变的地址;c.寄存偏移量,与段寄存器的内容相加以获得物理地址。例:SP中通常存放的偏移量被认为是在堆栈段中(堆栈访问时)。DI、SI中的偏移量,通常被认为是在数据段中。BP通常用于存放当前堆栈段的一个数据区“基址”的偏移量。(通过堆栈传送数据或地址时,BP为偏移地址,SS中为段地 址。BP也可用于通用Reg.。SP 堆栈指针BP 基地址指针SI 源变址寄存器DI 目的变址寄存器指针寄存器变址寄存器8080X86/Pentium X86/Pentiu
19、m 微处理器微处理器 其中总是包含下一条要取的指令在当前代码段中的偏移量,即程序运行过程中,程序运行过程中,IP始终指向下一次要取出的指始终指向下一次要取出的指令偏移地址。或称令偏移地址。或称IP和和CS一起指向下一条指令的物理地址。一起指向下一条指令的物理地址。8080X86/Pentium X86/Pentium 微处理器微处理器二、二、段段Reg.(CS,DS,SS,ES)CS内容+IP内容,为下一条指令的地址。DS内容+指令中的偏移量,为数据段内的某单元地址。SS内容+SP 为堆栈段内的某单元地址。ES 附加段的段地址。三、三、指令指针指令指针IP(用来存储代码段中的偏移地址)用来存储
20、代码段中的偏移地址)IP的内容由8086/8088的总线接口部件BIU修改(编程序时不能直接访问IP,但指令可引起它的改变、或将它的内容压入堆栈、或从堆栈恢复)。物理地址物理地址=CS CS 16 16IPIP 四、标志寄存器四、标志寄存器FR 作用:作用:存放ALU的操作结果的特征标志,这种标志可作为条 件,用于判断是否控制程序转移。8080X86/Pentium X86/Pentium 微处理器微处理器状态标志寄存器(状态标志寄存器(PSW)CFPFAFZFSFTFIFDFOF进位标志进位标志CF(Carry Flag):):当结果的最高位(D15 或D7)产生一个进位 或借位,则CF=1
21、,否则CF=0。溢出标志溢出标志OF(Overflow Flag):):当带符号数的运算结果超出2n-1 2n-11 时,溢出,OF=1,否则OF=0。符号标志符号标志SF(Sign Flag):):结果的最高位(D15 或D7)为1,则SF=1,否 则 SF=0。零标志零标志ZF(Zero Flag):):若运算的结果为0,则ZF=1,否则ZF=0。奇偶标志奇偶标志PF(Parity Flag):):若运算结果的低8位中1的个数为偶数,则 PF=1,否则,PF=0。辅助进位标志辅助进位标志AF(Auxiliary Flag):在进行8位或16位数运算时,由低4位向 高4位(D3向D4有进位或
22、借位,则AF=1,否则AF=0。状状态态标标志志控控制制标标志志方向标志方向标志DF(Direction Flag):):DF=1,串操作时地址自动减量;DF=0,串操作时地址自动增量。中断允许标志中断允许标志IF(Interrupt Enable Flag):):IF=1,允许CPU接收外部中断 请求,IF=0,屏蔽外部中断请求。追踪标志追踪标志TF(Trace Flag):):TF=1,使处理进入单步方式,以便于调试。8080X86/Pentium X86/Pentium 微处理器微处理器例例1:执行:执行2345H3219H,分析对分析对PSW的影响。的影响。1 10 00 00 01
23、11 10 01 10 00 00 01 10 01 10 00 00 00 01 11 10 00 01 10 00 00 00 01 11 10 00 01 1+0 01 11 11 11 10 01 10 01 10 01 10 01 10 01 10 0标志标志:运算结果最高位为运算结果最高位为0 SF=0;运算结果本身运算结果本身0 ZF=0 低低8位中位中1的个数为奇数个的个数为奇数个 PF=0;最高位没有进位最高位没有进位 CF=0;第第3位向第位向第4位无进位位无进位 AF=0;次高位向最高位没有进位次高位向最高位没有进位,最高位向前没有进位,最高位向前没有进位 OF=0。例例
24、2:执行:执行2345H3219H,分析对分析对PSW的影响。的影响。1 10 00 00 01 11 10 01 10 00 00 01 10 01 10 00 01 11 10 00 01 11 10 01 11 11 11 10 00 01 11 11 1+0 00 01 11 10 01 10 00 01 10 00 00 01 11 11 11 1标志标志:F12CH 补补 =-0ED4H 运算结果最高位为运算结果最高位为1 SF=1;运算结果本身运算结果本身0 ZF=0 低低8位中位中1的个数为奇数个的个数为奇数个 PF=0;最高位没有进位(最高位没有进位(无进位,有借位无进位,有
25、借位)CF=1;第三位向第四位无进位(第三位向第四位无进位(无进位,有借位无进位,有借位)AF=1;次高位向最高位没有进位次高位向最高位没有进位,最高位向前没有进位,最高位向前没有进位 OF=0。8080X86/Pentium X86/Pentium 微处理器微处理器 8086/8088 均为40 PIN、双列直插式(DIP)封装的芯片。其功能强于8位CPU。为解决功能强与引脚的矛盾,在8086/8088 CPU内部设置了若干个多路开关,使某些引脚具有多种功能。多功能引脚功能的转换分两种情况 分时复用:在总线周期的不同时钟周期内其功能不同;按工作模式来定义引脚的功能:同一引脚在单CPU(最 小
26、模式)和多CPU(最大模式)下,加接不同的信号。2 8086/80882 8086/8088引脚功能引脚功能8080X86/Pentium X86/Pentium 微处理器微处理器2.1 80882.1 8088引脚功能引脚功能 地址/数据线20根 控制和状态线16根 定时信号线1根 电源和地线3根40PIN按功能分:每个信号方向(单、双)电平(三态、二态)8080X86/Pentium X86/Pentium 微处理器微处理器q 8088CPU是双列直插式芯是双列直插式芯片,片,n 共有共有40条引脚条引脚;q 引脚引脚33决定工作模式决定工作模式:n 接地,最大模式接地,最大模式n 接接+
27、5V,最小模式最小模式 q 在两种模式下引脚在两种模式下引脚2431n 有不同的名称和意义有不同的名称和意义8088GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND最大组态(最小组态最大组态(最小组态)VCCA15A16/S3A17/S4A18/S5A19/S6(HIGH)(SSO)MN/MXRDRQ/GT0(HOLD)RQ/GT1(HLDA)LOCK(WR)S2(IO/M)S1(DT/R)S0(DEN)QS0(ALE)QS1(INTA)TESTREADYRESET补充:补充:指令周期 一条指令从取出到执行完毕所持续的时间。
28、机器周期 CPU完成某个独立操作所需要的时间(取指,存储器读、写)。8080X86/Pentium X86/Pentium 微处理器微处理器时钟周期 CPU的基本时间计量单位,由P的主频决定。例:主频5MHz,则T=200ns 一个指令周期由若干个机器周期构成。在8086/8088 中,机器周期称为总线周期。一个基本总线周期由4个时钟周期 T 构成,称为T1、T2、T3和T4。T1:CPU经多路复用总线发地址信息,指出寻址单元或端口地址。T2:CPU从总线上撤消地址,成浮空状态(16位),而A19A16 用来输出本总线周期状态信息。T3:连续提供状态信息,传送数据。T4:结束状态。ADAD7
29、7ADAD0 0:地址/数据总线,双向(入/出)、三态。分时复用多功能引脚。在每个总线周期T1,作地址总线低8位 A7A0,用于寻址存储器或I/O端口。之后,内部多路转换开关数据总线D7D0,用来传送数据,直到总线周期结束。在DMA方式时,这些引脚成浮空状态。8088引脚图见右引脚图见右8080X86/Pentium X86/Pentium 微处理器微处理器8088GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND最大组态(最小组态最大组态(最小组态)VCCA15A16/S3A17/S4A18/S5A19/S6(HIGH)(S
30、SO)MN/MXRDRQ/GT0(HOLD)RQ/GT1(HLDA)LOCK(WR)S2(IO/M)S1(DT/R)S0(DEN)QS0(ALE)QS1(INTA)TESTREADYRESET A8A15:地址总线,输出、三态。这些地址在整个总线周期 内保持有效(即输出稳定8位地址)。在DMA方式时,这些引脚成浮空状态。A19/S6A16/S3:地址/状态线,输出、三态。分时复用多功能引 脚。在T1状态,若访问MEM,作地址总线高4位。若访问I/O口,全为低电平。因为 I/O口只用16位地址。在T2T4期间,输出状态信息:S6总是低电平,表示8086/8088连在总线上;S5可屏蔽中断允许标志
31、;S4和S3表示当前访问存储器所用的段寄存器,S4和S3编码与段寄存器对应关系如表2-2所示。在DMA方式时,这些引脚成浮空状态。8080X86/Pentium X86/Pentium 微处理器微处理器地址线地址线A19A0,1M内存;地址线内存;地址线A15A0,64K个端口地址。个端口地址。表2-2 S4,S3编码表示段寄存器S4 S3性能对应段寄存器0 0数据交替使用附加段寄存器ES0 1堆栈操作使用堆栈段寄存器SS1 0代 码使用代码段寄存器CS1 1数 据使用数据段寄存器DS8080X86/Pentium X86/Pentium 微处理器微处理器ALE:地址锁存允许信号,输出,高电平
32、有效。它作为地址/状态,地址/数据信号线中 地址锁存进锁存器地址锁存进锁存器(8282/8283,74LS373)的锁存控制信号的锁存控制信号。在T1期间,ALE高电平,其下跳沿将使地址锁存入锁存器。在DMA方式中,ALE不能浮空。8080X86/Pentium X86/Pentium 微处理器微处理器 NMI:非屏蔽中断请求,输入,上升沿有效。NMI是上升沿触发的非屏蔽中断请求输入信号,它不 能软件进行屏蔽。只要该引脚上出现一个从低到高的电脉 冲就能使CPU现行指令结束,立刻进入中断响应,自动形 成中断类型2,将中断向量表中的08H和09H单元的内容送 指令寄存器IP,将0AH和0BH单元内
33、容送入段寄存器CS,形成非屏蔽中断服务子程序入口地址,转去执行NMI中断 处理。INTR靠电平触发,CPU在每条指令的最后一个时钟周期对INTR采样,若发现INTR引脚信号为高电平,同时CPU内部中断允许标志IF=1时,CPU就进入了中断响应周期。若IF=0,即使有INTR引脚信号为高,CPU对外界送来的此中断请求信号也不予理睬。这样可以通过软件的方法使IF=0,以达到屏蔽中断请求INTR的目的。入口地址中断子程序断点INTA:中断响应信号,输出,低电平有效。CPU响应外部中断后,发应答信号给请求中断的设备。8080X86/Pentium X86/Pentium 微处理器微处理器INTR:可屏
34、蔽中断请求,输入、高电平有效。CPU响应中断时,暂停正在执行的主程序,从响应中断时,暂停正在执行的主程序,从中断源取出中断类型向量,根据中断类型向量,中断源取出中断类型向量,根据中断类型向量,从中断向量表里找到相应中断服务子程序的入从中断向量表里找到相应中断服务子程序的入口地址,转去执行中断服务程序。中断结束后,口地址,转去执行中断服务程序。中断结束后,再返回主程序的断点继续执行程序。再返回主程序的断点继续执行程序。CLK:时钟信号,输入。为CPU和总线控制器提供定时基准定时基准。占空比0.33(1/3周期高电平,2/3周期低电平)。RESET:复位信号,输入,高电平有效。至少保持4个时钟周期
35、。当主频为4.77MHz时,上电复位时必须大于50s。复位后,CPU从FFFF0H单元开始执行。通常在FFFF0HFFFFFH这16个单元中存放转移指令。READY:准备好信号,输入,高电平有效。是被访问的被访问的MEM和和I/O设备数据准备好设备数据准备好发回来的应答 信号。当被访问部件无法在CPU规定的时间内完成数据传送时,应 使READY信号处于低电平低电平,这时CPU进入等待状态,插入一个或 几个等待周期TW来延长总线周期。8080X86/Pentium X86/Pentium 微处理器微处理器 当被访问的部件可以完成数据传送时,READY输入高电平高电平,CPU继续运行。复位后复位后
36、CPU内部内部内内 容容标志位清除指令指针(IP)0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES 寄存器0000H指令队列空表2-3 初始化操作8080X86/Pentium X86/Pentium 微处理器微处理器 DEN:数据允许,输出,三态,低电平有效。在单CPU系统中,如果用8286/8287作为数据总线的双向 驱动器时,用DEN作为驱动器的选通信号。在每个MEM或 I/O访问周期以及中断响应周期,DEN变为有效低电平。在 DMA方式时,它处于浮空状态。8080X86/Pentium X86/Pentium 微处理器微处理器 TESTTEST:测试信号,输入
37、,低电平有效。当执行WAIT指令时,CPU对TEST进行监视(每隔5个T采样一次TEST,若TEST为高,就使CPU重复执行WAIT指令而处于等待状态。若TEST为低,CPU则脱离等待状态,继续执行下一条指令。(常用于多常用于多CPU系统系统)DT/R:数据发送/接收控制,输出,三态。在单CPU系统中,若用8286/8287作为数据总线的双向 驱动时,要用DT/R来控制8286/8287的数据传送方向。DT/R=1时,CPU发送数据,DT/R=0时,CPU接收数据。IO/MIO/M:外设/内存访问控制,输出,三态。输出高电平时,表示总线周期为I/O访问周期;输出低电平时,表示总线周期为MEM访
38、问周期。在DMA工作方式时,它为浮空状态。WR:写信号,输出,三态,低电平有效低电平有效。WR信号有效时,表示CPU正做写MEM(或I/O口)的操作。由IO/M的状态决定是写MEM(IO/M=0),还是写入I/O(IO/M=1)。在DMA方式时,它处于浮空状态。8080X86/Pentium X86/Pentium 微处理器微处理器 RDRD:读信号,输出,三态,低电平有效低电平有效。RD信号有效时,由IO/M决定是对I/0读(IO/M=1),还是对 MEM(IO/M=0)读。HOLD:保持请求信号,输入,高电平有效。当DMA操作或外部处理器要求通过总线传送数据时,HOLD信号为高,表示外界请
39、求现有主CPU让出对总线的控制权。HLDA:保持响应信号,输出,高电平有效。当CPU同意让出总线控制权时,输出HLDA高电平信号,通知外界可以使用总线。同时,现有主CPU所有具“三态”的 线,都进入浮空状态;当HOLD变为低电平时,现有主CPU也把HLDA变为低 电平,此时它又重新获得总线控制权。8080X86/Pentium X86/Pentium 微处理器微处理器HOLDHLDA MEM CPU I/O DMASSSS0 0:状态信号,输出,三态。用在单CPU系统中,与IO/M、DT/R一起表示当前的系统总 线周期状态,如表2-4所示。在多CPU系统下,SS0总是输出高电平。8080X86
40、/Pentium X86/Pentium 微处理器微处理器IO/MDT/RSS0操作111100000011001101010101中断响应读IO/口写I/O口暂停取指令读存储器写存贮器无效表2-4 MN/MX:单CPU/多CPU方式控制,输入。当MN/MX=1(接VCC)时,为单CPU模式(最小模式),这时8088的2431脚功能如上面所述如上面所述;若MN/MX=0(接GND),为多CPU模式(最大模式),8088的2431引脚定义如图2-9括号内所示。以下介绍多以下介绍多CPUCPU模式(最大模式)下,括号内引脚的功能。模式(最大模式)下,括号内引脚的功能。(通常(通常PC/XTPC/X
41、T中有中有80878087,故设为多,故设为多CPUCPU模式)模式)S2、S1、S0:总线周期状态标志,输出、三态,低电平有效。它们的不同组合,表示它们的不同组合,表示CPU总线周期的操作类型。总线周期的操作类型。此组信号 8288总线控制器对应输入端,8288利用 这些信号的不同组合,产生访问MEM或I/O的控制信号或 中断响应信号。(表表2-5)8080X86/Pentium X86/Pentium 微处理器微处理器表2-5 总线周期状态标志S2S1S0操作类型000011110011001101010101中断响应读I/O口写I/O口暂停取指令操作码读存储器写存储器无效状态8080X8
42、6/Pentium X86/Pentium 微处理器微处理器RQ/GT0,:请求/允许控制信号,双向、三态、低电平有效。RQ/GT1 供外部主控设备(如协处理器)用来请求获得总线 控制权而使用的。首先由外部主控设备向8088输入请求总线控制权的 信号(HOLD),若8088可以让出控制权,则在同一条线上 输出允许外部主控设备使用总线的回答信号(HLDA)。两条控制线可同时接两个外部主控设备,但 RQ/GT0的优先权 RQ/GT1的优先权。工作时序图见书P45,图2-10。8080X86/Pentium X86/Pentium 微处理器微处理器LOCK:封锁信号,输出,三态,低电平有效。用来封锁
43、外部主控设备请求的。当LOCK信号为低时,外部主控设备不能占用总线。这个信号由指令在程序中设置。若某条指令加上前缀 LOCK,则CPU执行这条指令时,LOCK引脚为低,并保持 到指令结束。QS1、QS0:指令队列状态,输出,高电平有效。QS1和QS0不同编码状态,反映了CPU内部当前的指令 队列状态,以便外部主控设备对8088进行跟踪。见表2-6。8080X86/Pentium X86/Pentium 微处理器微处理器表2-6 指令队列状态QS1 QS0意 义0 0无操作0 1取指令队列中第一操作码1 0队列空1 1取指令队列中后续字节2.2 80862.2 8086引脚功能引脚功能8080X
44、86/Pentium X86/Pentium 微处理器微处理器8086与8088引脚功能的区别:1.8086:16条地址/数据复用 引脚AD15AD0。8088:只有AD7AD0 2.8086的PIN34:BHE/S7 8088中为 SS0 PIN34是高是高8位数据总线的位数据总线的允许和状态信息复用引脚。允许和状态信息复用引脚。其组合编码与数据总线传送数据的关系如下表所示。通常,用BHE作为访问存储器高字节的选通信号,用A0作为访问存储器低字节的选通信号。BHE A0数据传送状态数据传送状态 0 0 传送传送16位位D15D0 0 1 传送高传送高8位位D15D8 1 0 传送低传送低8位
45、位D7D0 1 1 无操作无操作8080X86/Pentium X86/Pentium 微处理器微处理器在T1时,CPU输出BHE有效信息,在T2、T3、TW和T4期间,CPU输出S7状态信息。S7低电平有效。在DMA工作方式,它为浮空状态。3.8086:PIN28为M/IO,存贮器/输入输出信号,输出、三态。当M/IO=1时,表示访问存贮器。当M/IO=0时,表示访问I/O端口。它和它和8088的的PIN28(IO/M)意义正好相反。意义正好相反。单独的8086/8088 CPU只能进行数据处理,但不能记忆,更不能与外界交换信息。所以,CPU芯片必须再加上必要的支持芯片:时钟电路、地址锁存器
46、、总线驱动器、存贮器、I/O接口芯片及基本外围设备,才能构成一台完整微机系统。本节主要介绍本节主要介绍8086/8088 CPU的支持芯片。的支持芯片。8080X86/Pentium X86/Pentium 微处理器微处理器3 8086/80883 8086/8088系统组织系统组织3.1 8086/80883.1 8086/8088支持芯片支持芯片 8284是INTEL公司专门为8086/8088系统设计配套的单片时钟发生器,含有:时钟信号发生电路CLK;控制电路:准备就绪(READY)、复位(RESET)信号;晶体振荡信号(OSC,14.31818MHz);外围芯片所需时钟(PCLK,2.
47、5M)等。一、一、82848284时钟发生器时钟发生器 8284引脚及内部结构如图所示。8080X86/Pentium X86/Pentium 微处理器微处理器 CLK 输出,系统时钟。频率为晶体频率或外接频率EF1的1/3。CLK信号占空比为1/3。X1、X2 输入,晶体输入。其频率(14.318MHz)为CPU所需时钟 频率的3倍(4.77MHz)。PCLK 输出,外部设备时钟。其频率(2.5MHz)约为CLK的1/2,占空比为1/2。8080X86/Pentium X86/Pentium 微处理器微处理器 AEN1、AEN2 输入,地址允许信号。当AEN1、AEN2为低时,RDY1和RD
48、Y2产生 READY(0)信号,致使CPU产生等待周期。RDY1、RDY2 输入,总线准备好信号。当系统总线上某个设备已 收到数据或已准备好数据,则该设备可使RDY1或RDY2有效。READY 输出,准备好信号。由RDY1或RDY2形成。1:表示已准 备好;0:使CPU产生等待周期。RES 输入,外部复位信号。产生加到CPU的复位信号RESET。8284与8088/8086连接的一种方案见P48图2-12。8080X86/Pentium X86/Pentium 微处理器微处理器二、二、82828282/8283 8/8283 8位三态输出锁存器位三态输出锁存器(用于锁存地址,74LS373)8
49、086/8088的AD15AD0/AD7AD0既可作为地址线,又可作为数据线,为了把地址信息分离出来,为外接MEM或外设提供16位/8位地址信息,一般须外加三态锁存器,并由CPU产生的地址锁存允许信号的下跳沿将地址信息锁存入8282/8283锁存器中。8282/8283引脚及真值表如图2-13所示。是20个PIN、双列直插式封装(DIP)。8283的功能与8282完全相同,仅仅是输入/输出反相而已。STB:输入,选通信号,高电平有效。STB为“1”时,输出D7DO0随输入DI7DI0而变,即起传输作用;STB由1变到0平时,将输入数据锁存。_ OE 输出允许,低电平有效。当OE为0时,将锁存的
50、信号输出,当OE为1时,8282/8283输出呈高阻状态。在系统中,OE接地,保证总是允许输出状态。8282/8283接入系统中如图2-14所示。图2-14 8282和8086的连接8080X86/Pentium X86/Pentium 微处理器微处理器 74LS245/74LS244 20PIN,DIP 1.用来将数据总线上和CPU之间的数据进行传输;2.用以增加数据总线的带负载能力。1 A B(发送)T=0 B A(接收)B7.B0A7 B7.。.。.。.。.。.。A0 B0 _OETDEN DT/R 1 高阻OE=0 允许输出T,输入,传输方向控制。OE,输入,允许输出。8080X86/