第01章微处理器精选文档.ppt
第第01章微处理器章微处理器本讲稿第一页,共九十五页总总 目目 录录第1章 微型计算机与微处理器第2章 存储器 第3章 汇编语言基础第4章 汇编语言程序设计第5章 微型计算机输入输出接口第6章 微型计算机的中断系统第7章 可编程接口芯片第8章 DMA传输第9章 数/模与模/数转换第10章 现代微型计算机第11章 PC系列微型计算机外部设备接口 第12章 微型计算机总线本讲稿第二页,共九十五页第第1章章 微型计算机与微处理器微型计算机与微处理器1.1 微型计算机微型计算机1.2 8086/8088微处理器结构微处理器结构1.3 8086/8088微处理器子系统微处理器子系统1.4 8086/8088 微处理器的工作时序微处理器的工作时序本讲稿第三页,共九十五页1.1 微型计算机微型计算机1.1.1 电子计算机的基本组成电子计算机的基本组成电子计算机的基本结构特点:电子计算机的基本结构特点:存储程序原理:把程序事先存储在计算机内部,计算机通过执行程存储程序原理:把程序事先存储在计算机内部,计算机通过执行程序实现高速数据处理。序实现高速数据处理。五大功能模块:电子数字计算机由运算器、控制器、存储五大功能模块:电子数字计算机由运算器、控制器、存储器、输入设备、输出设备这些功能模块组成。器、输入设备、输出设备这些功能模块组成。本讲稿第四页,共九十五页1.1.1 电子计算机的基本组成电子计算机的基本组成图图1-1 计算机的基本组成计算机的基本组成本讲稿第五页,共九十五页存储器存储器运算器运算器控制器控制器输入设备输入设备输出设备输出设备中央处理器中央处理器(CPUCPU)主机主机外部设备外部设备电子计算机电子计算机本讲稿第六页,共九十五页1.1.2 微型计算机微型计算机微型计算机在基本结构和基本功能上与计算机大致微型计算机在基本结构和基本功能上与计算机大致相同。相同。由于微型计算机采用了大规模和超大规模集成电路组由于微型计算机采用了大规模和超大规模集成电路组成的功能部件,使微型计算机在系统结构上有着成的功能部件,使微型计算机在系统结构上有着简单、简单、规范和易于扩展规范和易于扩展的特点。的特点。微型计算机由微型计算机由微处理器、存储器、输入输出接口微处理器、存储器、输入输出接口电电路组成。路组成。连接这些功能部件的是连接这些功能部件的是三组总线三组总线:数据总线、地址总:数据总线、地址总线和控制总线。线和控制总线。本讲稿第七页,共九十五页图图1-2 微型计算机的基本结构微型计算机的基本结构本讲稿第八页,共九十五页1 微处理器微处理器 微处理器(MPU):微型计算机的中央处理器,亦称微型计算机的中央处理器,亦称CPU。2 存储器存储器 微型计算机的存储器采用集成度高、容量大、体积微型计算机的存储器采用集成度高、容量大、体积小、功耗低的半导体存储器芯片构成。小、功耗低的半导体存储器芯片构成。根据能否写入信息根据能否写入信息,存储器分为存储器分为RAM和和ROM。本讲稿第九页,共九十五页随机存取存储器随机存取存储器(RAM)又称读写存储器:又称读写存储器:随机存取:可以根据需要读写任意位置上的内容,而不像磁盘一样可以根据需要读写任意位置上的内容,而不像磁盘一样必须成块地顺序读写。必须成块地顺序读写。可读可写:随机存储器中的信息可以读出,也可以写入随机存储器中的信息可以读出,也可以写入。易失性:断电后储存的信息自动消失,是易失性存储器。断电后储存的信息自动消失,是易失性存储器。用途:用于存放当前正在使用的程序和数据。用于存放当前正在使用的程序和数据。只读存储器只读存储器(ROM):只读:信息在一般情况下只能读出,不能写入和修改:信息在一般情况下只能读出,不能写入和修改非易失性:断电后原信息不会丢失,是非易失性存储器,:断电后原信息不会丢失,是非易失性存储器,用途:用来存放固定的程序和数据表格。:用来存放固定的程序和数据表格。本讲稿第十页,共九十五页3 输入输出接口电路输入输出接口电路 介于计算机和外部设备之间的电路称为输入输出接口电路。介于计算机和外部设备之间的电路称为输入输出接口电路。微型计算机的接口普遍采用大规模集成电路芯片,大多数接口微型计算机的接口普遍采用大规模集成电路芯片,大多数接口芯片是可编程的。芯片是可编程的。4 总线总线 总线是一组公共的信号传输线,用于连接计算机各个部件。总线是一组公共的信号传输线,用于连接计算机各个部件。位于芯片内部的总线称为位于芯片内部的总线称为内部总线。连接微处理器与存储器、输入输出接口,用以构成完整的微型计算机连接微处理器与存储器、输入输出接口,用以构成完整的微型计算机的总线称为的总线称为系统总线(有时也称外部总线)。(有时也称外部总线)。微型计算机的微型计算机的系统总线分为系统总线分为系统总线分为系统总线分为数据总线、地址总线和和控制总线三组。三组。本讲稿第十一页,共九十五页数据总线:用于传送数据信息,数据总线是双向总线。用于传送数据信息,数据总线是双向总线。地址总线地址总线:用于发送内存地址和用于发送内存地址和I/OI/O接口的地址。接口的地址。控制总线控制总线:传送各种控制信号和状态信号,使微型计算机各部件协调传送各种控制信号和状态信号,使微型计算机各部件协调工作。工作。微型计算机采用标准总线结构,提高了微机系统的通用性和可微型计算机采用标准总线结构,提高了微机系统的通用性和可扩展性。扩展性。本讲稿第十二页,共九十五页1.2 8086/8088微处理器结构微处理器结构1.2.1 8088/8086微处理器内部结构微处理器内部结构 8086 CPU由由指令执行部件指令执行部件EU 总线接口部件总线接口部件BIU两个部份组成。两个部份组成。指令执行部件指令执行部件EU主要功能是执行指令。主要功能是执行指令。总线接口部件总线接口部件BIU主要功能是连接主要功能是连接CPU内部总内部总线和外部系统总线,访问存储器和外部接口。线和外部系统总线,访问存储器和外部接口。本讲稿第十三页,共九十五页图图1-3 8086微处理器内部结构微处理器内部结构本讲稿第十四页,共九十五页物理地址物理地址访问存储器的实际地址称为访问存储器的实际地址称为物理地址物理地址,用,用20位二进制位二进制表示。表示。物理地址的位数由地址总线的位数决定物理地址的位数由地址总线的位数决定物理地址的位数决定了该计算机能够连接的存储器的数量:物理地址的位数决定了该计算机能够连接的存储器的数量:例如:例如:16根地址线最多能连接根地址线最多能连接216=64KB内存储器;内存储器;20根地址线最多能连接根地址线最多能连接220=1MB内存储器内存储器.本讲稿第十五页,共九十五页逻辑地址逻辑地址 EU送来的存储器地址称为送来的存储器地址称为逻辑地址逻辑地址,由,由16位位“段基址”和和 16位位“偏移地址”(段内地址)组成。(段内地址)组成。段基址段基址表示一个段的起始地址的高表示一个段的起始地址的高16位。位。偏移地址偏移地址表示段内的一个单元距离段开始位置的距离。因表示段内的一个单元距离段开始位置的距离。因此,偏移地址也称为段内地址。此,偏移地址也称为段内地址。例如,例如,2345H1100H表示表示:段基址为段基址为2345H(这个段的起始地址是这个段的起始地址是23450H),段内偏移地址为段内偏移地址为1100H的存储单元地址。的存储单元地址。本讲稿第十六页,共九十五页地址转换地址转换地址加法器用来完成逻辑地址向物理地址的变换:地址加法器用来完成逻辑地址向物理地址的变换:物理地址段基址16+偏移地址上例中,逻辑地址上例中,逻辑地址2345H:1100H对应的物理地址是对应的物理地址是24550H。反之,物理地址反之,物理地址24550H,它对应的逻辑地址可以是它对应的逻辑地址可以是2455H:0000H,也可以是也可以是2400H:0550H等。等。这说明一个存储单元的物理地址是惟一的,而它对应的逻辑地址这说明一个存储单元的物理地址是惟一的,而它对应的逻辑地址是不惟一的。是不惟一的。本讲稿第十七页,共九十五页图图1-4 地址加法器地址加法器本讲稿第十八页,共九十五页 总线接口部件总线接口部件BIU BIU的功能:的功能:形成访问存储器的物理地址(由地址加法器完成);形成访问存储器的物理地址(由地址加法器完成);访问存储器取得指令访问存储器取得指令,暂存到指令队列中等待执行;暂存到指令队列中等待执行;访问存储器或访问存储器或I/O端口以读取操作数参与端口以读取操作数参与EU运算,或存放运运算,或存放运算结果等算结果等;产生外部总线的各种控制信号。产生外部总线的各种控制信号。BIU内部有一个内部有一个6 6字节的指令队列。一旦指令队列中空出字节的指令队列。一旦指令队列中空出2 2个字节,个字节,BIU将自动进行读指令的操作以填满指令队列。将自动进行读指令的操作以填满指令队列。BIU内部总线控制电路将内部总线控制电路将CPU的内部总线与的内部总线与CPU引脚所连接的外部引脚所连接的外部总线相连。总线相连。本讲稿第十九页,共九十五页指令执行部件指令执行部件EU EU的功能是执行指令。一般情况下的功能是执行指令。一般情况下,指令按照它存放的先后指令按照它存放的先后次序顺序执行,次序顺序执行,EU从指令队列中源源不断地取得指令代码,从指令队列中源源不断地取得指令代码,满负荷地连续执行指令。满负荷地连续执行指令。EU中的算术逻辑运算单元中的算术逻辑运算单元ALU可完成可完成16位或位或8位的二进制位的二进制运算,运算结果通过内部总线送到通用寄存器,或者送往运算,运算结果通过内部总线送到通用寄存器,或者送往BIU的内部寄存器中,等待写入存储器。的内部寄存器中,等待写入存储器。EU控制器负责从控制器负责从BIU的指令队列中取出指令,并对指令译码,的指令队列中取出指令,并对指令译码,根据指令要求向根据指令要求向EU内部各部件发出控制命令以实现各条指内部各部件发出控制命令以实现各条指令的功能。令的功能。本讲稿第二十页,共九十五页8088 CPU与与8086 CPU的区别:的区别:(1)8088与外部交换数据的数据总线宽度是与外部交换数据的数据总线宽度是8位,而位,而EU内部总线和寄存器仍是内部总线和寄存器仍是16位,所以把位,所以把8088称为称为准准16位微处理器位微处理器。(2)8088 BIU中指令队列长度只有中指令队列长度只有4字节,只要队列中出现字节,只要队列中出现一个空闲字节,一个空闲字节,BIU就会自动地访问存储器,取指令来填就会自动地访问存储器,取指令来填满指令队列。满指令队列。本讲稿第二十一页,共九十五页1.2.2 8086/8088 微处理器的寄存器微处理器的寄存器8086/8088 CPU的内部寄存器如图的内部寄存器如图1-5通用数据寄存器:通用数据寄存器:存放运算原始存放运算原始/中间结果中间结果指针和变址寄存器:指针和变址寄存器:存放存储器地址存放存储器地址控制寄存器:控制寄存器:存放程序地址和其他控制信息存放程序地址和其他控制信息段寄存器:段寄存器:存放各段的信息存放各段的信息本讲稿第二十二页,共九十五页图图1-5 8086/8088 CPU内部寄存器内部寄存器本讲稿第二十三页,共九十五页1.通用寄存器组通用寄存器组8个个16位通用寄存器可分成位通用寄存器可分成两组:两组:一组由一组由AX、BX、CX和和DX构成构成,称作,称作通用数据寄存器通用数据寄存器,用来存放用来存放16位的数据或地址。也可当作位的数据或地址。也可当作8个个8位寄存器使用。位寄存器使用。8位寄存器只能存放数据。位寄存器只能存放数据。AX 称为累加器称为累加器BX 称为基址寄存器称为基址寄存器CX 称为计数寄存器称为计数寄存器DX 称为数据寄存器称为数据寄存器本讲稿第二十四页,共九十五页另一组另一组4 4个个1616位寄存器,位寄存器,主要用来存放操作数的偏移地址主要用来存放操作数的偏移地址(即操作数的段内地址)(即操作数的段内地址)SP 称为堆栈指针寄存器称为堆栈指针寄存器BP 称为基址指针寄存器称为基址指针寄存器SI 称为源变址寄存器称为源变址寄存器DI 称为目的变址寄存器称为目的变址寄存器(变址寄存器内存放的地址在数据传送完成后,具有自动修改(变址寄存器内存放的地址在数据传送完成后,具有自动修改的功能。的功能。例如例如:传送:传送1字节数据后把地址加字节数据后把地址加1,为下次传送做,为下次传送做好准备,变址寄存器因此得名。好准备,变址寄存器因此得名。)本讲稿第二十五页,共九十五页2 2 段寄存器段寄存器 8086/8088 CPU总线接口部件总线接口部件BIU中设置有中设置有4 4个个16位段寄位段寄存器:代码段寄存器存器:代码段寄存器CS,数据段寄存器数据段寄存器DS,附加段寄附加段寄存器存器ES和堆栈段寄存器和堆栈段寄存器SS。代码段:存放程序指令。代码段:存放程序指令。CS中存放的是现在正在执行的程序段的中存放的是现在正在执行的程序段的段基址。程序代码超过段基址。程序代码超过64K时,需要分成几个段存放。时,需要分成几个段存放。数据段用于存放当前使用的数据。需要第二个数据段时可以数据段用于存放当前使用的数据。需要第二个数据段时可以使用附加段。使用附加段。堆栈段是内存中的一块存储区,用来存放专用数据。堆栈段是内存中的一块存储区,用来存放专用数据。例如例如,调用子,调用子程序时的入口参数,返回地址等,这些数据都按照程序时的入口参数,返回地址等,这些数据都按照“先进后出先进后出”的规则进行存取。的规则进行存取。SSSS存放堆栈段的段基址,存放堆栈段的段基址,SPSP存放当前堆栈栈顶存放当前堆栈栈顶的偏移地址。的偏移地址。本讲稿第二十六页,共九十五页3 标志寄存器标志寄存器FLAGS 8086/8088 CPU中设置了一个中设置了一个16位标志寄存位标志寄存器器FLAGS,用来存放运算结果的特征和控制用来存放运算结果的特征和控制标志,其标志,其格式格式如下:如下:本讲稿第二十七页,共九十五页FLAGS中存放的中存放的9个标志位可分成个标志位可分成两类:两类:一类叫状态标志,用来表示运算结果的特征,包括一类叫状态标志,用来表示运算结果的特征,包括CF、PF、AF、ZF、SF和和OF;另一类叫控制标志,用来控制另一类叫控制标志,用来控制CPU的操作,包括的操作,包括IF、DF和和TF。本讲稿第二十八页,共九十五页状态标志位(状态标志位(1)(1)ZF(Zero Flag)零标志位。零标志位。(2)SF(Sign Flag)符号标志位。符号标志位。(3)PF(Parity Flag)奇偶标志位。奇偶标志位。PF=1,表表示本次运算结果的低八位中有示本次运算结果的低八位中有偶数个偶数个“1”;PF=0,表示有表示有奇数奇数“1”。PF可以用来进可以用来进行奇偶校验,或者用来生成奇偶校验位。行奇偶校验,或者用来生成奇偶校验位。(4)AF(Auxiliary Carry Flag)辅助进位标志辅助进位标志位。这个标志位只在位。这个标志位只在BCD数运算中起作用。数运算中起作用。本讲稿第二十九页,共九十五页状态标志位(状态标志位(2)(5)CF(Carry Flag)进位标志位。进位标志位。进行进行二个无符号数二个无符号数加法或减法运算后,如果加法或减法运算后,如果CF=1,表示表示运算的结果超出了该字长能够表示的数据范围。运算的结果超出了该字长能够表示的数据范围。例如例如,执,执行行8位数据运算后,位数据运算后,CF=1表示加法结果超过了表示加法结果超过了255,或者是,或者是减法得到的差小于零。减法得到的差小于零。进行进行有符号数有符号数运算时,运算时,CF对运算结果没有直接意义。对运算结果没有直接意义。(6)OF(Overflow Flag)溢出标志位。溢出标志位。例如例如,进行,进行8位运算位运算时,时,OF=1表示运算结果大于表示运算结果大于+127 或小于或小于128。OF标标志对无符号数的运算结果没有意义。志对无符号数的运算结果没有意义。本讲稿第三十页,共九十五页上述运算后:上述运算后:CF=C7(D7位上的进位)位上的进位)=0(无进位);(无进位);AF=C3(D3位上的进位)位上的进位)=1(有辅助进位);(有辅助进位);PF=1(运算结果有运算结果有4个个1););SF=D7=1(运算结果符号位为运算结果符号位为1););OF=C7 C6=0 1=1(有溢出);有溢出);ZF=0(运算结果不为运算结果不为0)。)。(1)()(AL)+(AH)本讲稿第三十一页,共九十五页上述运算后:上述运算后:CF=1(有借位);有借位);AF=1(有辅助进位);有辅助进位);PF=1(运算结果中有运算结果中有6个个1););SF=1(符号位为符号位为1););OF=0(无溢出);无溢出);ZF=0(运算结果不为运算结果不为0)。)。(2)()(AL)-(AH)本讲稿第三十二页,共九十五页运算产生的标志位由程序员根据需要选择使用:运算产生的标志位由程序员根据需要选择使用:如果参加运算的两个数是有符号数(用补码表示),如果参加运算的两个数是有符号数(用补码表示),可以用可以用OF判断结果是否产生溢出,这时不必关心判断结果是否产生溢出,这时不必关心CF的的状态;状态;如果参加运算的两个数是无符号数,可以用如果参加运算的两个数是无符号数,可以用CF判断结判断结果是否超出范围,无需关心果是否超出范围,无需关心OF的状态。的状态。本讲稿第三十三页,共九十五页控制标志控制标志(1)IF(Interrupt Flag)中断允许标志位。中断允许标志位。IF=1,表示允许表示允许CPU响应可屏蔽中断。响应可屏蔽中断。IF标志可通过标志可通过STI指令置位(置指令置位(置1),通过),通过CLI指令复位(清指令复位(清零)。零)。(2)DF(Direction Flag)方向标志位。在串操作指令中,若方向标志位。在串操作指令中,若DF=0,表示串操作指令执行后表示串操作指令执行后地址指针自动增量地址指针自动增量,串操作,串操作由低地址向高地址进行;由低地址向高地址进行;DF=1,表示表示地址指针自动减量地址指针自动减量,串操作由高地址向低地址进行。串操作由高地址向低地址进行。DF标志位可通过标志位可通过STD指令置位,通过指令置位,通过CLD指令复位。指令复位。(3)TF(Trap Flag)单步标志位。单步标志位。TF=1,每条指令执行结束都会每条指令执行结束都会发生发生“单步单步”中断,用于程序调试。中断,用于程序调试。本讲稿第三十四页,共九十五页4 指令指针寄存器指令指针寄存器IP 8086/8088 CPU中有一个中有一个16位指令指针寄存器位指令指针寄存器IP,用来用来存放将要执行的下一条指令在代码段中的偏移地址。存放将要执行的下一条指令在代码段中的偏移地址。程序运行过程中,程序运行过程中,BIU自动修改自动修改IP中的内容,使它始中的内容,使它始终指向将要执行的下一条指令。终指向将要执行的下一条指令。程序不能直接访问程序不能直接访问IP,但是可通过某些指令修改但是可通过某些指令修改IP的内的内容。例如容。例如,执行转移指令时,会将转移的目标地址送入执行转移指令时,会将转移的目标地址送入IP中,实现程序的转移。中,实现程序的转移。本讲稿第三十五页,共九十五页四种段的寻址方式四种段的寻址方式本讲稿第三十六页,共九十五页1.3 8086/8088 微处理器子系统微处理器子系统1.3.1 8086/8088 微处理器的引脚及功能微处理器的引脚及功能 8086/8088 CPU是十六位的微处理器,它向外的信号包含是十六位的微处理器,它向外的信号包含16条条数据线,数据线,20条地址线,以及若干控制信号。条地址线,以及若干控制信号。为了减少芯片引脚数量,部分引脚采用分时复用的方式,为了减少芯片引脚数量,部分引脚采用分时复用的方式,构成构成40条引脚的双列直插式封装。条引脚的双列直插式封装。本讲稿第三十七页,共九十五页图图1-7 8086微处理器的封装外形微处理器的封装外形GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVcc(+5V)AD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN(S0)ALE(QS0)INTA(QS1)TESTREADYRESET8086微处理器微处理器1202140本讲稿第三十八页,共九十五页8086/8088 CPU有有两种不同的工作模式两种不同的工作模式(最小模式和最(最小模式和最大模式)。大模式)。8条引脚(条引脚(2431)在两种工作模式中,具有)在两种工作模式中,具有不同的功能,最大模式下被重新定义的控制信号写在括不同的功能,最大模式下被重新定义的控制信号写在括号中。号中。引脚信号的传输有以下几种类型:引脚信号的传输有以下几种类型:输出:信号从输出:信号从CPU向外部传送;向外部传送;输入:信号从外部送入输入:信号从外部送入CPU;双向:信号有时从外部送入双向:信号有时从外部送入CPU,有时从有时从CPU向外部传向外部传送;送;三态:除了高电平、低电平两种状态之外,三态:除了高电平、低电平两种状态之外,CPU内部还内部还可以通过一个大的电阻阻断内外信号的传送,可以通过一个大的电阻阻断内外信号的传送,CPU内部的内部的状态与外部相互隔离,称为状态与外部相互隔离,称为“悬浮态悬浮态”。本讲稿第三十九页,共九十五页1.地址与数据信号引脚地址与数据信号引脚(1)AD15AD0(Address Data Bus)分时复用的地址分时复用的地址/数数据线。据线。(2)A19/S6A16/S3(Address/Status)分时复用的地址分时复用的地址/状态线。状态线。用作地址线时,用作地址线时,A19A16与与AD15AD0一起构成访问一起构成访问存储器的存储器的20位物理地址。位物理地址。CPU访问访问I/O端口时,端口时,A19A16保持为保持为“0”。用作状态线时,用作状态线时,S6S3用来输出状态信息,表示当前正用来输出状态信息,表示当前正在使用的段寄存器(表在使用的段寄存器(表1-1)。)。本讲稿第四十页,共九十五页2 读写控制信号引脚读写控制信号引脚 读写控制信号用来控制读写控制信号用来控制CPU对存储器和对存储器和IO设备的设备的读写读写过程:过程:数据传输方向(读数据传输方向(读/写);写);传输种类(存储器还是传输种类(存储器还是IO设备);设备);读写方式(奇地址字节读写方式(奇地址字节/偶地址字节偶地址字节/字);字);存储器存储器/IO设备是否准备好的状态信号;设备是否准备好的状态信号;分时总线上信号的类型等。分时总线上信号的类型等。本讲稿第四十一页,共九十五页(1)M/(Memory/IO)存储器或存储器或I/O端口访问选择信号,三态端口访问选择信号,三态输出。输出。(2)(Read)读信号。三态输出,低电平有效,表示当前读信号。三态输出,低电平有效,表示当前CPU正在读存储器或正在读存储器或I/O端口。端口。(3)(Write)写信号。三态输出,低电平有效,表示当前写信号。三态输出,低电平有效,表示当前CPU正在写存储器或正在写存储器或I/O端口。端口。(4)READY 准备就绪信号。由外部输入,高电平有效,表示准备就绪信号。由外部输入,高电平有效,表示CPU访问的存储器或访问的存储器或I/O端口已准备好传送数据。端口已准备好传送数据。当当READY无效时无效时,要求,要求CPU插入一个或多个等待周期插入一个或多个等待周期TW,直直到到READY信号有效为止。信号有效为止。(5)/S7(Bus High Enable/Status)总线高字节有效信号。总线高字节有效信号。三态输出,低电平有效。非数据传送期间,该引脚用作三态输出,低电平有效。非数据传送期间,该引脚用作S7,输出状态信息输出状态信息。本讲稿第四十二页,共九十五页8086CPU有有16根数据线根数据线:低低8位数据线总是和偶地址的存储器或位数据线总是和偶地址的存储器或IO端口相连接端口相连接,这些存储器这些存储器/IO端口称为端口称为偶体偶体。高高8位的数据线与奇地址的存储器或位的数据线与奇地址的存储器或IO端口相连接,这端口相连接,这些存储器些存储器/IO端口称为端口称为奇体奇体。有效表示有效表示CPU正在使用高正在使用高8位的数据线对奇体的存位的数据线对奇体的存储单元或储单元或IO端口进行访问。它与最低位地址码端口进行访问。它与最低位地址码A0配合配合起来表示当前总线使用情况,如起来表示当前总线使用情况,如表表1-2。本讲稿第四十三页,共九十五页 AD0总线使用情况0016位数据总线上进行字传送01高8位数据总线上进行字节传送10低8位数据总线上进行字节传送11无效表1-2 和AD0编码的含义本讲稿第四十四页,共九十五页(6)ALE(Address Latch Enable)地址锁存允许信地址锁存允许信号,向外部输出,高电平有效。号,向外部输出,高电平有效。(7)(Data Enable)数据允许信号,三态输出,数据允许信号,三态输出,低电平有效。进行低电平有效。进行DMA传输时,被置为高阻态。传输时,被置为高阻态。(8)DT/(Data Transmit/Receive)数据发送数据发送/接接收控制信号,三态输出。收控制信号,三态输出。CPU写数据到存储器或写数据到存储器或I/O端口时,输出高电平;端口时,输出高电平;CPU从存储器或从存储器或I/O端端口读取数据时,为低电平。口读取数据时,为低电平。本讲稿第四十五页,共九十五页3 中断控制信号引脚中断控制信号引脚这一组引脚传输中断的请求和应答信号。这一组引脚传输中断的请求和应答信号。(1)INTR(Interrupt Request)可屏蔽中断请求信号可屏蔽中断请求信号由外部输入,电平触发,高电平有效。由外部输入,电平触发,高电平有效。CPU在在每每条条指指令令的的最最后后一一个个时时钟钟周周期期对对INTR进进行行测测试试,一一旦旦测测试试到到中中断断请请求求,并并且且当当前前中中断断允允许许标标志志IF=1,则则暂暂停停执执行行下一条指令转入中断响应周期。下一条指令转入中断响应周期。本讲稿第四十六页,共九十五页(2)(Interrupt Acknowledge)中断响应信号。中断响应信号。向外部输出,低电平有效。向外部输出,低电平有效。该该信信号号表表示示CPU已已经经收收到到并并且且响响应应外外部部发发来来的的INTR信信号号,要要求求请请求求中中断断的的设设备备向向CPU发发送送中中断断类类型型(代代表表该该中中断断的的一一个编号)。个编号)。(3)NMI(Non Maskable Interrupt Request)不不可可屏屏蔽蔽中中断断请求信号。请求信号。由由外外部部输输入入,边边沿沿触触发发,正正跳跳沿沿有有效效,不不受受中中断断允允许许标标志志的的限限制。这是一种比制。这是一种比INTR级别高的中断请求。级别高的中断请求。本讲稿第四十七页,共九十五页4 DMA控制信号引脚控制信号引脚DMA传传输输是是一一种种不不经经过过CPU,在在内内存存储储器器和和IO设设备备之之间间直直接接传传输输数据的方法。进行数据的方法。进行DMA传输之前要向传输之前要向CPU申请使用总线并取得认可。申请使用总线并取得认可。(1)HOLD(Hold Request)总总线线请请求求信信号号。由由外外部部输输入入,高高电电平有效。平有效。(2)HLDA(Hold Acknowledge)总总线线请请求求响响应应信信号号。向向外外部部输输出出,高电平有效。高电平有效。CPU一一旦旦测测试试到到有有HOLD请请求求,就就在在当当前前总总线线周周期期结结束束后后,使使HLDA有有效效,立立即即让让出出总总线线使使用用权权(所所有有三三态态总总线线处处于于高高阻阻态态,从从而而不不影影响外部的存储器与响外部的存储器与IO设备交换数据设备交换数据)。)。HOLD变变为为无无效效后后,CPU也也将将HLDA置置成成无无效效,并并收收回回对对总总线线的的控控制权。制权。本讲稿第四十八页,共九十五页5 其他引脚其他引脚(1)Vcc(电源)电源)8086 CPU只需要单一的只需要单一的+5V电源,由电源,由Vcc引脚输入。引脚输入。(2)CLK(Clock)主时钟信号,输入。由主时钟信号,输入。由8284时钟发生器产生。时钟发生器产生。(3)MN/(Minimum/Maximum)工作模式选择信号。由外部输入,工作模式选择信号。由外部输入,为为高电平高电平,CPU工作在工作在最小模式最小模式,为,为低电平低电平,CPU工作在工作在最大模式最大模式。(4)RESET 复位信号。由外部输入,高电平有效。复位信号。由外部输入,高电平有效。RESET复位信号通常由计算机机箱上的复位按钮产生;复位信号通常由计算机机箱上的复位按钮产生;RESET信号至少要保持信号至少要保持4个时钟周期才有效。个时钟周期才有效。(5)TEST 测试信号。由外部输入,低电平有效。测试信号。由外部输入,低电平有效。CPU执行执行WAIT指令时,指令时,每隔每隔5个时钟周期对个时钟周期对TEST进行一次测试,若测试无效,则进行一次测试,若测试无效,则CPU处于踏处于踏步等待状态。有效后,步等待状态。有效后,CPU执行执行WAIT指令后面的下一条指令。指令后面的下一条指令。本讲稿第四十九页,共九十五页6 8088CPU的引脚的引脚8088 CPU的大部分引脚名称及其功能与的大部分引脚名称及其功能与8086相同,所不同之处仅在于:相同,所不同之处仅在于:(1)由于由于8088的外部数据线只有的外部数据线只有8条,因此分时复用地址数据线只有条,因此分时复用地址数据线只有AD7AD0,AD15AD8专门用来传送地址而成为专门用来传送地址而成为A15A8。(2)第第34号引脚在号引脚在8086中是中是BHE#,由于由于8088只有只有8根外部数据线,不根外部数据线,不再需要此信号,在再需要此信号,在8088中它被重新定义为中它被重新定义为SS0,它与它与DT/R#,IO/M#一起用作最小方式下的周期状态信号。一起用作最小方式下的周期状态信号。(3)第)第28号引脚在号引脚在8086中是中是M/IO#,在在8088中改为中改为IO/M#,使用的信使用的信号极性相反。号极性相反。本讲稿第五十页,共九十五页7.最大模式下的最大模式下的24-31引脚引脚 8086 CPU工作在最大模式时,工作在最大模式时,24-31引脚有不同的定义。引脚有不同的定义。(1)S2#S0#(Bus Cycles Status)总线周期状态信号,三态输出。总线周期状态信号,三态输出。由由CPU传送给总线控制器传送给总线控制器8288的总线周期状态信号。的总线周期状态信号。S2#S1#S0#操 作经总线控制器8288产生的信号000中断响应INTA#(中断响应)001读IO端口IORC#(IO读)010写IO端口IOWC#(IO写)011暂停无100取指令MRDC#(存储器读)101读内存MRDC#(存储器读)110写内存WMTC#(存储器写)111无源状态无本讲稿第五十一页,共九十五页(2)LOCK#总线封锁信号。三态输出,低电平有效。有效时表总线封锁信号。三态输出,低电平有效。有效时表示示CPU不允许其他总线主控者占用总线。这个信号由软件设置。不允许其他总线主控者占用总线。这个信号由软件设置。在指令前加上在指令前加上LOCK前缀时,则在执行这条指令期间保持有前缀时,则在执行这条指令期间保持有效,阻止其他主控者使用总线。效,阻止其他主控者使用总线。(3)RQ#/GT0#、RQ#/GT1#(Request/Grant)请求请求/同意信号。同意信号。双向,低电平有效,双向,低电平有效,输入低电平输入低电平表示其他主控者向表示其他主控者向CPU请求使请求使用总线;用总线;输出低电平输出低电平表示表示CPU对总线请求的响应。两条线可同对总线请求的响应。两条线可同时与两个主控者相连,时与两个主控者相连,RQ#/GT0#比比RQ#/GT1#有较高优先级。有较高优先级。(4)QS1,QS0(Instruction Queue Status)指令队列状态。指令队列状态。向外部输出。向外部输出。本讲稿第五十二页,共九十五页1.3.2 最小模式下的最小模式下的8086/8088 微处理器子系统微处理器子系统 8086/8088 CPU设置有设置有两种工作模式两种工作模式:最小工作模式最小工作模式:系统中只有一个系统中只有一个8086/8088处理器;处理器;所有的总线控制信号都由所有的总线控制信号都由8086/8088 CPU直接产生;直接产生;构成系统所需的总线控制逻辑部件最少构成系统所需的总线控制逻辑部件最少最小模式最小模式也称单处理器模式也称单处理器模式。最大工作模式最大工作模式:系统内可以有一个以上的处理器,除了系统内可以有一个以上的处理器,除了8086/8088作为作为“中央处理器中央处理器”之外,之外,还可以配置用于数值计算的还可以配置用于数值计算的8087“数值协处理器数值协处理器”和用于和用于I/O管理的管理的“I/O协处协处理器理器”8089;各个处理器发往总线的命令统一送往各个处理器发往总线的命令统一送往“总线控制器总线控制器”,由它,由它“仲裁仲裁”后发后发出。出。CPU两种工作模式由两种工作模式由MN/引脚决定。引脚决定。本讲稿第五十三页,共九十五页1.最小模式下最小模式下8086微处理器子系统的构成微处理器子系统的构成 CPU及其外围芯片合称为及其外围芯片合称为微处理器子系统微处理器子系统。外围芯片的作用是:外围芯片的作用是:(1)为)为CPU工作提供适当的时钟信号,对外界输入的控制工作提供适当的时钟信号,对外界输入的控制/联络信号进行同步处理;联络信号进行同步处理;(2)分离)分离CPU输出的地址输出的地址/数据分时复用信号,得到独数据分时复用信号,得到独立的地址总线和数据总线信号,同时还增强它们的驱立的地址总线和数据总线信号,同时还增强它们的驱动能力。动能力。(3)对)对CPU输出的控制信号进行组合,产生稳定可靠、输出的控制信号进行组合,产生稳定可靠、便于使用的系统总线信号。便于使用的系统总线信号。图图1-8是以是以8086 微处理器为核心构建的最小模式下的微处理器微处理器为核心构建的最小模式下的微处理器子系统子系统本讲稿第五十四页,共九十五页图图1-8 8086最小模式下的微处理器子系统最小模式下的微处理器子系统本讲稿第五十五页,共九十五页2 时钟发生器时钟发生器8284 8284通过外接晶振芯片产生通过外接晶振芯片产生14.31MHz的时钟信号,并对这的时钟信号,并对这个信号个信号3分频分频,产生占空比为,产生占空比为1/3的的4.77MHz时钟信号时钟信号CLK送送往往8086 CPU。8284同时产生同时产生12分频分频的的1.1918MHz的外部时钟信号的外部时钟信号PCLOCK供其他外设使用。供其他外设使用。8284还对外部输入的还对外部输入的*RESET和和*READY信号进行同步,产生信号进行同步,产生与与CLK同步的复位信号同步的复位信号RESET和准备就绪信号和准备就绪信号READY送往送往8086。本讲稿第五十六页,共九十五页3 地址锁存器地址锁存器8282(三片)(三片)地址锁存器用来锁存地址锁存器用来锁存8086输出的地址信号。输出的地址信号。8282是一个是一个8位锁存器,位锁存器,STB是它的数据锁存是它的数据锁存/选通信号。选通信号。8282具有三态输出功能,具有三态输出功能,OE#是数据输出允许端,为低电平时,锁是数据输出允许端,为低电平时,锁存器的内容通过