微机原理与接口-mc10c02a微处理器_第1页
微机原理与接口-mc10c02a微处理器_第2页
微机原理与接口-mc10c02a微处理器_第3页
微机原理与接口-mc10c02a微处理器_第4页
微机原理与接口-mc10c02a微处理器_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微处理器28086微处理器8086微处理器的结构8086的功能结构8086的寄存器结构8086的工作模式和引脚特性8086的系统组成和总线时序最小模式最大模式38086微处理器的结构8086的功能结构8086的寄存器结构8086的工作模式和引脚特性8086的功能结构8086微处理器的内部功能结构由两个独立的工作部件——执行部件EU(ExecutionUnit)和总线接口部件BIU(BusInterfaceUnit)构成

EU负责指令的执行由运算器、寄存器组、控制器等组成BIU负责与系统总线打交道由指令队列、地址加法器、总线控制逻辑等组成45数据寄存器指针和变址寄存器AHALBHBLCHCLDHDLSPBPSIDIAXBXCXDX暂存寄存器ALU标志寄存器FLAGS

EU控制器ALU数据总线(16位)指令队列缓冲器123456总线控制逻辑8086总线地址加法器

CSDSSSESIP内部暂存器AB(20位)执行部件(EU)总线接口部件(BIU)DB(16位)(8位)队列总线8086CPU的内部功能结构框图反映CPU运算的状态特征和存放某些控制标志协助ALU完成运算,暂存参加运算的数据负责从BIU的指令队列缓冲器中取指令,并对指令译码,向EU内部发出控制命令,完成指令功能用于8/16位算术逻辑运算,也可计算寻址寄存器所需的16位偏移量用于EU内部和EU与BIU之间的通信6执行部件EU的组成算术逻辑单元ALU通用数据寄存器组地址指针和变址寄存器标志寄存器数据暂存寄存器EU控制器7总线接口部件BIU的组成4个段寄存器CS,DS,ES,SS16位指令指针寄存器IP20位地址加法器6字节的指令队列8EU的特点DLDHCLCHBLBHALAHAXBXCXDXALU的核心是16位二进制加法器通用数据寄存器AX,BX,CX,DX既可以作16位寄存器使用,也可以分成高、低8位分别作两个8位寄存器16位状态标志寄存器(7位未用)存放操作后的状态特征和设置的控制标志EU控制器是执行指令的控制电路,实现从队列中取指令、译码、产生控制信号等D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0CFPFAFZFSFTFIFDFOFPSW

9执行部件EU的功能从BIU的指令队列缓冲器中取出指令,由EU控制器的指令译码器译码产生相应的操作控制信号给各部件对操作数进行算术运算和逻辑运算,并将运算结果的状态特征保存到状态寄存器FR中EU不直接与CPU外部系统相连,当需要与主存储器或I/O设备交换数据时,EU向BIU发出命令,并提供给BIU16位有效地址及所需传送的数据10BIU的组成与特点BIU由20位物理地址加法器、6字节指令队列缓冲器、4个16位段寄存器、16位指令指针寄存器及总线控制逻辑组成地址加法器8086分配20条引脚线分时传送20位地址,16位数据和4位状态信息用来产生20位存储器物理地址指令队列缓冲器由6个字节的寄存器组成(8088指令队列由4个字节组成)先进先出16位指令指针寄存器存放下一条要执行的指令在代码段中的偏移地址。与CS相结合才能形成指向存放单元的物理地址

∑偏移地址段基址地址加法器物理地址段寄存器1515019011总线接口部件BIU的功能将8086CPU的内部总线和外部总线相连,是CPU与内存单元或I/O端口进行交换的必经之路BIU从主存取指令送到指令队列缓冲器CPU执行指令时,总线接口单元要配合EU从指定的主存单元或外设端口中取数据,将数据传送给EU或把EU的操作结果传送到指定的主存单元或外设端口中计算并形成访问存储器的20位物理地址12CPU程序执行过程EU单元执行完一条指令后,就从BIU的指令队列中取出预先读入的指令代码加以执行如果指令队列是空的,EU处于等待状态指令队列中出现指令,EU立即取出执行执行过程中,如访问存储单元或IO端口,EU就会发出命令,使BIU进入访问存储器或IO端口的总线周期如BIU正处于取指令总线周期,则必须在取指令总线周期后,BIU才能对EU的命令进行处理13CPU程序执行过程8086CPU中指令队列中出现两个空闲字节,且EU没有命令BIU进入对存储器和IO端口访问总线周期,BIU将自动执行取指令总线周期来填满指令队列在EU执行指令中,如需访问存储器或IO部件,且BIU允许,则转入总线周期当指令队列中已经填满指令,而EU单元又无存储器和IO端口访问总线周期的命令时,BIU进入空闲状态执行转移,子程序调用或返回指令时,指令队列的内容就被清除BIU通过对内部寄存器的检测来查看EU是否有对存储器或IO端口的存取要求EU从指令队列取指令执行指令和BIU补充指令队列的工作是同时进行的BIUEU取指取指取指取指取指取数据等待执行执行执行执行148086的寄存器结构通用数据寄存器组地址指针和变址寄存器段寄存器组指令指针寄存器IP(InstructionPointer)标志寄存器15AHALBHBLCHCLDHDLAX,BX,CX和DX在用做算术和逻辑运算指令中,用于存放算术逻辑运算的源/目的操作数AX:累加器,算术计算的主要寄存器,所有的I/O

指令都使用这一寄存器与外部设备传送信息BX:基址寄存器,在计算存储器地址时,用作基址存储器CX:计数寄存器,在循环和串处理指令中用作隐含

的计数器DX:数据寄存器,一般在作双字长运算时把DX和AX 组合在一起存放一个双字长数,用来存放高位

字,也可用来存放I/O的端口地址AXBXCXDX四个寄存器(8位或16位):存放计算过程中所用到的操作数、结果或其他信息。DX、AX组合成一个双字长,DX放高位字通用数据寄存器168086中通用寄存器的用法寄存器一般用法

隐含用法AX16位累加器(Accumulator)字乘时提供一个操作数并存放积的低字;字除时提供被除数的低字并存放商ALAX的低8位字节乘时提供一个操作数并存放积的低字节;字节除时提供被除数的低字节并存放商;BCD码运算指令和XLAT指令中作累加器;字节I/O操作中存放8位输入/输出数据AHAX的高8位字节乘时提供一个操作数并存放积的高字节;字节除时提供被除数的高字节并存放余数;LAHF指令中充当目的操作数BX基址(Base)寄存器,支持多种寻址,常用作地址寄存器XLAT指令中提供被查表格中源操作数的间接地址CX16位计数器串操作时用作串长计数器;循环操作中用作循环次数计数器CL8位计数器移位或循环移位时用作移位次数计数器DX16位数据寄存器在间接寻址的I/O指令中提供端口地址;字乘时存放积的高字,字除时提供被除数高字并存放余数17

SP

堆栈指针寄存器(存放栈顶的偏移地址)

BP

基址指针寄存器(堆栈区中的一个基址地址)

SI

源变址寄存器

DI

目的变址寄存器SP(StackPointer)BP(BasePointer)SI(SourceIndex)DI(DestinationIndex)段寄存器(4个16位):CSDSSSES指针寄存器变址寄存器指针及变址寄存器188086中地址寄存器的用法寄存器一般用法隐含用法SP堆栈指针(StackPointer),与SS配合指示堆栈栈顶的位置压栈、出栈操作中作为堆栈指针指示栈顶BP基址指针(BasePointer),它支持间接寻址、基址寻址、基址加变址等多种寻址手段。在子程序调用时,常用它来取压栈的参数在间接寻址中作为基址寄存器SI源变址(SourceIndex)寄存器。它支持间接寻址、变址寻址、基址加变址寻址等多种寻址串操作时用作源变址寄存器,指示数据段(段默认)或其他段(段超越)中源操作数的偏移地址DI目的变址(DestinationIndex)寄存器。它支持间接寻址、变址寻址、基址加变址寻址等多种寻址串操作时用作目的变址寄存器,指示附加段(段默认)中目的操作数的偏移地址19

DF为1,SI、DI减量,由高地址向低地址处理;DF为0,SI、DI增量,由低地址向高地址处理SP、BP、SI、DI联用说明SP,BP与SS联用→确定堆栈段中某一存储器单元的地址,SP用来表示栈顶的偏移地址,BP可作为堆栈区中的一个基地址以便访问堆栈中的其他信息SI,DI与DS联用→确定数据段中某一存储器单元的地址,SI和DI有自动增量和自动减量的功能。在串处理指令中,SI和DI作为隐含的源变址和目的变址寄存器,SI和DS联用,DI和ES联用,分别达到在数据段和附加段中寻址的目的208086的堆栈及堆栈操作有以下特点

双字节操作。即每次进、出栈的数据均为两字节。且高位字节对应高地址,低位字节对应低地址。无论是源操作数还是目的操作数,也无论是存储器操作数还是寄存器操作数,都必须按这个原则执行。堆栈向低地址方向生成。数据每次进栈时堆栈指针SP向低地址方向移动(减2);反之,数据出栈时,SP向高地址方向移动(加2)由于大多数算术和逻辑运算中又可以使用BP、SP和变址寄存器,因而也将这4个寄存器归入通用寄存器组。使用中应该注意这4个寄存器只能用于16位的存取操作特别说明21段寄存器8086中有4个段寄存器,用于存放当前程序所用的各段的起始地址,也称为段的基地址。(每段64K字节)代码段寄存器CS(CodeSegment)其内容左移4位再加上指令指针IP的内容,就形成下一条要执行的指令存放的实际物理地址数据段寄存器DS(DataSegment)

DS中的内容左移4位再加上按指令中存储器寻址方式计算出来的偏移地址,即为数据段指定的单元进行读写的地址堆栈段寄存器SS(StackSegment)堆栈是按“后进先出”原则组织的一个特别存储区。操作数的存放地址是由SS的内容左移4位再加上SP的内容而形成附加段寄存器ES(ExtendedSegment)附加段是在进行字符串操作时作为目的区地址使用的一个附加数据段。在字符串操作指令中SI作为源变址寄存器,DI作为目的变址寄存器,其内容都是偏移地址22信息分段与段寄存器的关系存储器中的信息可以相应的划分为程序区,存储程序的指令代码数据区,存储原始数据,中间结果和最后结果堆栈区,存储需要压入堆栈的数据或状态信息段寄存器的分工代码段寄存器CS划定并控制着程序区数据段寄存器DS和附加段寄存器ES控制着数据区堆栈段寄存器对应着堆栈存储区存储器类型默认段地址可指定段地址段内偏移地址来源取指令码CS无IP堆栈操作SS无SP字符串操作源地址DSCS,ES,SSSI字符串操作目的地址ES无DIBP用作基址寄存器SSCS,DS,ES依寻址方式求得的EA一般数据存取DSCS,ES,SS依寻址方式求得的EA指令指针寄存器指令指针寄存器IP一个16位的表示地址指针的寄存器正常运行时存放BIU要取的下一条指令的偏移地址具有每执行一次取指操作,自动加1的功能,使它指向要取的下一内存单元IP的值也可以压入和弹出堆栈2324标志寄存器标志寄存器FR(FlagRegister)也称为程序状态字PSW(ProgramStatusWord)寄存器,它是一个16位的标志寄存器,但仅使用其中的9位D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0CFPFAFZFSFTFIFDFOFPSW

8086CPU标志寄存器25

条件码标志flagOF(OverFlag)溢出标志:溢出为1SF(SignFlag)符号标志:负为1,取最高有效位

ZF(ZeroFlag)零标志:是0为1CF(CarryFlag)进位标志:右进位为1AF(AuxiliaryFlag)辅助进位标志:低4位向高4位进位或借位时,AF为1

PF(ParityFlag)奇偶进位标志:结果中1的个数位为偶数置1。注意:执行结果的低8位26控制信息由系统程序或用户程序根据需要用指令设置状态信息由中央处理机根据计算机的结果自动设置控制标志

DF(DirectionFlag)方向标志:DF为1,SI、DI减量,由高地址向低地址处理;DF为0,SI、DI增量,由低地址向高地址处理

IF(InterruptFlag)中断标志:IF为1时允许中断

TF(TrapFlag)陷阱标志(又叫跟踪标志):每执行一条指令就引起一个内部中断。用于单步方式操作,TF为1,指令执行完后产生陷阱,由系统控制计算机;TF为0,CPU不产生陷阱,正常工作27举例例:MOVAL,1MOVBL,2ADDAL,BL

指令执行后,(AL)=3,OF=0,CF=0,ZF=0, SF=0,AF=0,PF=1例:MOVAX,FFFFHMOVBX,1ADDAX,BX

指令执行后,(AX)=0,OF=0,CF=1,ZF=1, SF=0,AF=1,PF=100000001+00000010000000111111111111111111+00000000000000011000000000000000028芯片引脚特性的描述8086的工作模式8086的引脚特性8086的工作模式和引脚特性29芯片引脚特性的描述引脚的功能即引脚信号的定义。人们约定,引脚名为该引脚功能的英文缩写,基本反映了信号的作用,即含义信号的有效电平指控制引脚使用有效时的逻辑电平。低电平有效的引脚名字上面加有一条横线,引脚名字上无横线者为高电平有效信号流向芯片与其他部件的联系全靠在引脚上传送信息,这些信息可能自芯片向外输出,可能从外部输入到芯片,还可能是双向的CPU的地址线(AB)是输出的,用以寻址存储器单元或I/O端口数据线(DB)是双向的,CPU可通过它从存储器或外设读取数据,也能将数据输出给它们CPU的某些控制线(CB)是输出的,用来对外界提供控制,也有些控制线是输入的,通过这些流入的信息,可以接受外界的联络信号

30芯片引脚特性的描述引脚的复用在芯片的设计中,有时为了以少量引脚提供更多的功能,会采用引脚复用的做法如8086中就采用地址、数据线分时复用的方法,即当引脚上出现有效信号时,前一时刻总线上出现地址,后一时刻,其上传输的是数据三态能力“三态”能力是指有些引脚除了能正常输出或输入高、低电平外,还能输出高阻状态当它输出高阻状态时,表示芯片实际上已放弃了对该引脚的控制,使之“浮空”与总线相连接的其它设备就可以获得对总线的控制权,系统转为接受总线的设备控制下工作318086的工作模式8086系统处于最小模式,就是系统中的CPU只有8086单独一个处理器在这种系统中,所有总线控制信息都直接由8086产生,系统中总线控制逻辑电路被减到最少,这些特征就是最小模式名称的由来最小模式适合于较小规模的系统在最大模式系统中有多个微处理器,其中必有一个主处理器8086,其他处理器称为协处理器或辅助处理器,承担某一方面的专门工作328086的引脚特性VCCAD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN(S0)ALE(QS1)INTA(QS0)TESTREADYRESETGNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND123456789101112131415161718192040393837363534333231302928272625242322218086有40个引脚,其中第33(最小/最大模式)脚很关键,它是一条输入线,可以加高电平,也可以加低电平,由该线所加电平的高或低电平决定24-31引脚的功能(24-31引脚的功能取决于8086工作在最小模式还是最大模式)其他引脚不受第33引脚的影响,我们把这部分引脚称为一般引脚。33最小模式1-40引脚的功能定义MN/MXVCC,GNDCLKAD15-AD0A19-A16/S6-S3BHE/S7ALERD,WRM/IODENDT/RRESETREDAYTESTNMIINTRINTAHOLD34最小模式1-40引脚的功能定义MN/MXMN/MX=1,8086系统设置为最小模式在最小模式系统中,全部控制信号由8086提供VCC,GND8086VCC接入的电压为+5V±10%GND有两条(1,20脚)CLK该信号的占空比为33%(即1/3周期为低电平,2/3周期为高电平)系统时钟为CPU和总线控制逻辑电路提供了时序基准(定时手段)35最小模式1-40引脚的功能定义AD15-AD0AD15-AD0(地址/数据):分时复用的存储器或端口的地址/数据总线传送地址时为单向的三态输出,传送数据时可双向三态输入/输出在总线周期的T1状态,输出要访问的存储器或I/O端口的地址;T2状态浮置成高阻状态,为传输数据做准备;在T3状态,用于传输数据;T4状态,结束总线周期当CPU响应中断,DMA方式时,这些线处于浮空状态(高阻态)直接存储器存取(DMA)方式,使数据的传送不经过CPU,由DMA控制器来实现内存与外设,或外设与外设之间的直接快速传送36最小模式1-40引脚的功能定义A19-A16/S6-S3A19-A16是地址的高4位,在T1输出地址S6-S3是CPU的状态信号,在T2-T4时输出CPU状态当访问存储器时,T1输出的A19-A16与AD15-AD0组成20位地址信号而访问I/O端口时A19-A16=0000,AD15-AD0为16位地址信号状态信号的S6=0,表示当前8086与总线相连S5标志中断允许IF的状态S4和S3组合指示当前使用的段寄存器(00,01,10,11)分别指ES,SS,CS(访问IO端口时不使用任何段寄存器),DS在进行DMA方式时,A19-A16/S6-S3浮空37最小模式1-40引脚的功能定义BHE/S78位数据总线允许/状态复用引脚,三态,输出

BHE

在T1时输出,表示总线高8位AD15-AD8上的数据有效S7在T2—T4时输出,未赋予定义,作备用状态信号线

BHE

和A0组合起来表示当前数据在总线上的格式,如下表BHEA0操作所用数据引脚00奇偶地址读/写一个字(高奇,低偶)AD15~AD001从奇地址读/写一个字节AD15~AD810从偶地址读/写一个字节AD7~AD011无效BHEA0操作所用数据引脚0110从奇地址读/写一个字(分两个总线周期实现)首先作奇字节读/写,然后作偶字节读/写AD15~AD8AD7~AD038最小模式1-40引脚的功能定义ALE

(AddressLatchEnable)ALE是8086在每个总线周期的T1状态时发出的,作为地址锁存器的选通信号,表示当前地址/数据复用线上输出的是地址信息,要求进行地址锁存,注意ALE端不能被浮空RD,WRRD=0,表示8086为存储器或I/O端口读操作。当DMA时,此线浮空WR=0,表示8086为存储器或I/O端口写操作当DMA时,此线浮空具体到底是读取存储器某地址单元的内容还是某输入设备输入端口的内容,这取决于M/IO信号在最小模式中,信号M/IO、WR、RD组合起来决定了系统中数据传送方式39最小模式1-40引脚的功能定义M/IO输出,高,低电平均有效,三态M/IO用于指示是存储器还是I/O访问M/IO=1,表示CPU与存储器之间数据传输M/IO=0,表示CPU和I/O设备之间数据传输当DMA时,此线浮空DEN、DT/RDEN(DataEnable)DT/R(DataTransmit/Receiver)DEN

是8086提供给数据收发器的选通信号DT/R是控制其数据传输方向的信号如果DEN有效,表示允许传输。此时,DT/R=1,进行数据发送;DT/R=0,进行数据接收在DMA下,它们被置浮空40最小模式1-40引脚的功能定义RESETRESET引起处理器立即结束现行操作CPU结束当前操作后,对状态标志寄存器、IP、DS、SS、ES清零,而将CS设置为0FFFFH当RESET=0时,CPU从0FFFFH开始执行程序REDAY准备好信号线,输入,高电平有效当READY=1时,表示内存或I/O设备准备就绪,马上可以进行依次数据传输

CPU在每个总线周期的T3状态开始对READY进行采样,如READY=0,CPU在T3之后,自动插入一个或几个等待状态TW。一旦READY=1,才进入T4状态,完成数据传输过程,从而结束当前总线周期41最小模式1-40引脚的功能定义TEST等待测试信号。用于多处理器系统中,且只有在执行WAIT指令时才使用当CPU执行WAIT指令时,它就进入空转的等待状态,每隔5个时钟周期对该线的输入进行一次测试若TEST=1,则CPU将停止取下条指令而继续等待,直至TEST=0NMI(NO-MaskableInterrupt)不可屏蔽中断请求上升沿触发不受IF状态的影响,也不能用软件屏蔽一旦信号有效,在现行指令结束后引起中断42最小模式1-40引脚的功能定义INTR(InterruptRequest)当INTR=1,表示外设提出了中断请求CPU在执行每条指令的最后一个时钟周期采样此信号,若INTR=1且IF=1(中断允许),则响应中断所谓中断,是指在CPU正常运行程序时,由于内部事件、外部事件或由程序预先安排的事件所引起的CPU暂时停止正在运行的程序,而转去执行请求CPU服务的内部/外部事件或预先安排事件的服务程序,待服务程序处理完毕后又返回去继续执行被暂停的程序,这个过程称为中断43最小模式1-40引脚的功能定义INTA(InterruptAcknowledge)中断响应信号INTA有效表示对INTR的外部中断请求作出响应,进入中断响应周期INTA信号实际上是位于连续周期中的两个负脉冲,在每个总线周期的T2、T3和TW状态,INTA端为低电平第一个负脉冲通知外部设备的接口,它发出的中断请求已经得到允许;外设接口收到第二个负脉冲后,往数据总线上放中断类型码(中断向量号),从而CPU便得到了有关此中断请求的详尽信息44最小模式1-40引脚的功能定义HOLD、HLDAHOLD

(HoldRequest)总线请求信号HLDA(HoldAcknowledge)总线响应信号HOLD和HLDA是一对配合使用的总线联络信号。当系统中的其他总线主控部件要占用总线时,向CPU发HOLD=1总线请求如果此时CPU允许让出总线,就在当前总线周期完成时,发HLDA=1应答信号,且同时使具有三态功能的地址/数据总线和控制总线处于浮空,表示让出总线总线请求部件收到HLDA=1后,获得总线控制权,在这期间,HOLD和HLDA都保持高电平。当请求部件完成对总线的占用后,HOLD=0总线请求撤消,CPU收到后,也将HLDA=0。这时,CPU又恢复了对地址/数据总线和控制总线的占有权45最大模式引脚的功能定义MN/MX=0,8086系统设置为最大模式在最大模式下,许多总线控制信号不是由8086直接产生的,而是通过总线控制器8288产生S2,S1,S0

(总线周期状态)QS1,QS0(指令队列状态)PQ/GT1,PQ/GT0(总线请求信号输入/允许输出)LOCK(总线封锁)46S2,S1,S0

(三态输出)S0,S1,S2

的组合表示CPU总线周期的操作类型8288总线控制器依据这三个状态信号产生相关访问存储器和I/O端口的控制命令下表给出S2,S1,S0对应的数据传输过程的类型最大模式引脚的功能定义S2S1S0

操作过程8288的信号000发出中断响应信号INTA001读I/O端口IORC010写I/O端口IOWC,AIOWC011暂停无100取指令MRDC101读存储器(内存)MRDC110写存储器(内存)MWTC,AMWC111无源状态(不起作用)无47QS1,QS0(双向信号)指令队列状态(InstructionQueueStatus)QS1,QS0组合起来提供前一个时钟周期(指总线周期的前一个状态)中指令队列的状态标志,以便让外部对8086内部指令队列的动作跟踪QS0,QS1,组合与队列状态的对应关系见下表最大模式引脚的功能定义QS1QS0队列状态00无操作01从队列缓冲器中取出指令的第一字节10清除队列缓冲器11从队列缓冲器中取出指令的第二字节以后部分48PQ/GT1,PQ/GT0(三态输出)RQ/GT0、RQ/GT1分别是最大模式时裁决总线使用权的信号可供CPU以外的两个处理器用来发出使用总线的请求信号和接收CPU对总线请求信号的回答信号RQ为输入信号,表示总线请求,GT为输出信号,表示总线允许,当它们两个同时有请求时,RQ/GT0的优先权更高当8086使用总线,其RQ/GT为高电平(浮空),使之处于无效状态;这时若8087或8089要使用总线,它们就使RQ/GT0输出低电平(请求,相当于HOLD信号)。经8086检测,若总线处于开放状态,则8086输出的RQ/GT0变为低电平(允许,相当于HLDA信号),再经8087或8089检测出此允许信号,对总线进行使用。待使用完结,将RQ/GT0变成低电平(释放),8086再检测出该信号,又恢复对总线的使用最大模式引脚的功能定义49LOCK当LOCK信号有效时,系统中其它总线主要部件就不能占用总线LOCK信号是为避免多个处理器使用共有资源时产生冲突而设置的,为低电平表示CPU独占总线使用权LOCK信号由指令前缀LOCK产生,在LOCK前缀后面的一条指令执行完后,便撤消了LOCK信号此外,在8086的中断响应周期,LOCK信号也自动变为有效电平,以防止其他的总线主部件在中断响应过程中占有总线,而使一个完整的中断响应过程被间断在DMA时,LOCK端处于浮空最大模式引脚的功能定义508086的系统组成和总线时序8086的系统组成8086的总线时序518086的系统组成系统组成的特点最小模式系统组成最大模式系统组成存储器组织与分段I/O组织52系统组成的特点MN/MX端接VCC或GND,决定工作在最小模式或最大模式8284A为时钟发生器,外接15MHz振荡源,经8284A三分频后,得5MHz主频送到8086系统时钟端CLK8284A还将外部的复位信号RESET和就绪信号READY实现同步后发给8086相应引脚用3片8282作地址锁存器,在T1时锁存地址/数据复用线上的地址A19-A0和BHE信号当系统所连的存储器和外设较多时,需要增加数据总线的驱动能力系统组成还必须有其他的一些,如半导体存储器RAM和ROM,外部设备的I/O接口,中断控制管理部件等组件53最小模式系统组成BHECLKREADYRESET等待状态发生A19~A16AD15~AD0地址/数据8286收发器TOE8282锁存器STBD15~D08284ARESMN/MX8086RDWRM/IORDYOEDT/RVCCALEBHEDEN地址地址54A19~A0MRDCMWTCIORCIOWCINTABHECLKREADYRESET等待状态发生A19~A16AD15~AD0地址/数据8286收发器TOE8282锁存器STBD15~D08284ARES8288总线控制器CLKMN/MX80861S0S1S2S0S1S2RDYOEDENDT/RALE最大模式系统组成BHE55总线控制器8288最大模式与最小模式在总线部件配置上最主要的差别就是总线控制器8288系统因包含多个处理器,需要解决主处理器和协处理器之间的协调工作以及对总线的共享控制等问题。为此,最大模式系统中要采用8288总线控制器系统的许多控制信号不再由8086直接发出,而是由总线控制器8288对8086发出的控制信号进行变换和组合,以得到系统各种总线控制信号8086最大模式系统的其他组件,例如,协处理器8087或8089,总线仲裁器8289,中断控制器8259,存储器,I/O接口等根据实际系统的需要选配,目的是支持多总线结构,形成一个多处理器系统56控制总线地址总线BHE

S0S1S28086CPUCLK8284A&STB8282锁存器(3片)8286总线收发器(2片)OETDENALECLKS0S1S2AENIOBCENINTAMRDCMWTC8288总线控制器IORCIOWCMCE/PDEN8259A中断控制器INTAWRDT/RSP/ENRD总线控制器8288系统的连接578288的两种工作方式8288提供了两种工作方式,由IOB——I/O总线工作方式信号决定当IOB接地,8288适用于单处理器系统,称作系统总线方式,此时,还要求AEN接地,CEN接+5V。图中给出的就是这种方式的系统的连接当IOB接+5V,且CEN接+5V,8288则适合工作于多处理器系统,称作局部总线方式58存储器组织与分段所谓存储器分段技术就是把1MB空间分成若干逻辑段,每个逻辑段的容量≤64KB段内地址是连续的,段与段之间是互相独立的逻辑段可以在整个存储空间浮动,即段的排列可以连续、分开、部分重叠或完全重叠,非常灵活这里所谓的重叠是指存储单元可以分属于不同的逻辑段59存储器的逻辑分段断开排列A段B段C段D段E段40000H50000H60000H70000H连续排列部分重叠完全重叠60I/O组织8086系统和外部设备之间是通过I/O接口进行相互传输信息的每个I/O接口都有一个或几个I/O端口,一个端口往往对应于接口上一个寄存器或一组寄存器微机要为每个I/O端口分配一个地址,称端口地址。端口地址和存储单元地址一样,应具有惟一的地址编码微机I/O端口有两种编址方式统一编址独立编址61编址方式统一编址将I/O端口和存储单元统一编址,即把I/O端口置于存储器空间,也看作是存储单元,存储器的各种寻址方式均可用来寻址I/O端口在这种方式下I/O端口操作功能强,使用起来也很灵活,I/O接口与CPU的连接和存储器与CPU的连接相似缺点:I/O端口占用了一定的存储空间,而且执行I/O操作时,址位数长,速度较慢独立编址将I/O端口进行独立编址,I/O端口空间与存储器空间相互独立需要设置专门的输入、输出指令对I/O端口进行操作8086系统采用的就是独立的I/O编址方式62端口地址说明8086使用A15~A0这16根地址线作为I/O端口地址线,可访问端口最多可达64K个8位端口或32K个16位端口和存储器的字单元一样,对于奇地址的16位端口的访问,要进行两次操作才能完成16位的I/O端口地址无需经过地址加法器产生,因而不使用段寄存器从AB总线上发出的端口地址仍为20位,只不过最高四位A19~A16为0638086的总线时序最小模式下的读写总线周期最小模式下的读写总线周期648086的总线时序微型计算机系统内的所有操作都要按统一的时钟节拍进行8086的总线操作包括:存储器的读/写操作、I/O端口的输入/输出操作、中断响应操作、总线请求和响应操作等每项总线操作都需要一定的时间,称之为总线周期典型的总线周期由4个时钟周期(或称T状态)构成不同的总线操作需要不同的总线信号,而“总线时序”则是对这些信号的变化进行时间顺序的描述65总线周期8086CPU为了要与存储器及I/O端口交换数据,需要执行一个总线周期,即完成一次总线操作依照数据传输的方向,总线操作分为总线读操作和总线写操作总线读操作指CPU从存储器或I/O端口读取数据总线写操作指CPU将数据写入存储器或I/O端口一个基本的读/写周期包括4个T状态,即T1、T2、T3、T4在存储器和外设速度较慢时,要在T3之后插入一个或几个等待周期Tw,以使其在数据传送时能与CPU同步66①高为读内存低为读I/O地址输出状态输出地址输出数据输入④BHE③②⑤⑥⑦⑨⑩11输出DT/RDENALERDAD15~

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论