您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 接口与通信技术 第二章
第二章微处理器的外部特性与总线形成•这一章将从用微处理器组成微型计算机的角度,介绍Intel8088微处理器的外部特性,以及微型计算机的系统总线形成,主要内容包括:Intel8088的两种组态模式,每种组态下的引脚定义、总线形成等。第一节Intel8088微处理器的外部特性•微处理器是微型计算机的核心部件,其外部特性表现在它的引脚信号上,并通过引脚的连接在微型计算机中发挥作用•一Intel8088的两种组态模式BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,同样具有20位地址线,可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。•BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,•同样具有20位地址线,可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,•IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。局资源的竞争,每个CPU都需要有总线总裁器8289来管理它们对系统总线和系统资源的使用。•IBMPC/XT是一个单CPU微型机,只使用一片8088CPU。它工作在最大组态模式,系统总线由8088和8288共同形成和管理。此外,系统中安排了数值运算协处理器8087的插座,供用户选用,但没有使用输入/输出协处理器8089和总线总裁器8289。•图2-1示出了8088在两种组态下的引脚定义,注意某些引脚在两种组态下有不同的功能。图中,未加括号的为不区分最大组态或最小组态的引脚定义,加括号的为最大组态下的引脚定义。在构成应用系统时,最大组态和最小组态模式有不同的总线形成办法。•二最小组态下的引脚定义•在最小组态模式下,8088提供了系统所需要的全部控制信号。其引脚功能虽比较简单,但反映了系统工作的基本原理。•1.数据和地址引脚•8088的所有引脚信号中,数量最多的是数据和地址信号。为减少引脚数,8088采用了引脚信号分时复用的方法。所谓分时复用,•就是同一引脚在不同的时刻具有不同的功能。最常用的复用是地址和数据的复用。•①AD7~AD0(Address/Data):地址/数据分时复用引脚,双向,三态。在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7~A0,其它时间用于传送8位数据D7~D0。•②A15~A8(Address):8位地址引脚,输出,三态。这些引脚在访问存储器或外设时,提供全部20位地址中的8位地址A15~A8。•③A19/S6~A16/S3(Address/Status):地址/状态分时复用引脚,输出,三态。这些引脚在访问存储器的第一个时钟周期输出高4位地址A19~A16,•在访问外设的第一个时钟周期输出低电平(无效),其它时间输出状态信号S6~S3。其中,S6恒为低电平,S5反映中断允许标志IF的状态,S4和S3的编码反映CPU当前对段寄存器的使用情况,如表2-1所示,表中不使用段寄存器的操作指I/O访问和中断响应等。表2-1S4和S3编码的意义S4S3意义00当前正使用DS段寄存器01当前正使用SS段寄存器10当前正使用CS或未使用段寄存器11当前正使用ES段寄存器注意,在软件编程时,我们用逻辑地址(两个16位数)来对存储器单元进行寻址,但是实际上,8088访问存储器时,是用20位物理地址,即引脚A19~A0来寻址存储器单元。从逻辑地址到物理地址的转换,是由8088在其内部自动完成的。而8088在寻址I/O时只使用20位地址中的低16位,即A15~A0,或低8位,即A7~A0,对I/O编程时,我们只需使用低16位或低8位地址即可,亦即8088访问I/O时,不像访问存储器时需要进行逻辑地址到物理地址的转换•2.读写控制引脚•这是一组读写控制引脚信号,是微处理器的控制总线。•①ALE(AddressLatchEnable):地址锁存允许引脚,输出,三态,高电平有效。有效时,表示复用引脚(AD7~AD0和A19/S6~A16/S3)上正在传送地址信号。由于地址在复用引脚上出现的时间很短暂,•所以,系统需要利用ALE信号将地址锁存到地址锁存器中以备使用。•②IO/M(InputandOutput/Memory):8088访问I/O或者存储器指示引脚,输出,三态。该引脚为高电平时,表示CPU将访问I/O端口,此时地址总线A15~A0提供16位的I/O端口地址;为低电平时,表示CPU将访问存储器,此时地址总线A19~A0提供20位的存储器物理地址•③WR(Write):写控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在将数据写到存储器单元或I/O端口中。④RD(Read):读控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在从存储器单元或I/O端口中读取数据。•IO/M、WR和RD这三个信号构成了微型机的基本控制信号,组合后可形成四种基本的总线控制,即存储器写MEMW、存储器读MEMR、I/O写IOW和I/O读IOR。•⑤READY:存储器或I/O端口就绪信号引脚,输入,高电平有效。存储器或I/O端口可利用该信号无效(低电平时)来请求CPU延长时序。•在总线操作周期中,8088CPU会在第3个时钟周期的前沿测试该引脚,如果测到有效(高电平时),表示被访问的存储器或I/O端口已就绪,CPU将在第4个时钟周期后结束数据存取总线操作;如果测到无效(低电平时),表示被访问的存储器或I/O端口跟不上CPU的操作速度,•此时CPU将插入等待周期TW。CPU会在等待周期中继续监测READY信号,有效时则进入第4个时钟周期,否则继续插入等待周期TW。⑥DEN(DataEnable):数据允许信号引脚,输出,三态,低电平有效。有效时,表示复用的数据总线上正在传送数据,•可利用该信号来控制数据收发器,以便对数据总线进行适时的驱动。•⑦DT/R(DataTransmit/Receive):数据发送或接收信号引脚,输出,三态。该信号指示数据总线上数据的流向:高电平时数据自CPU输出到总线(发送),低电平时数据从总线输入到CPU(接收)。可利用该信号来控制数据收发器对数据的驱动方向。•⑧SS0(SystemStatus):(最小组态模式下的)系统状态0输出信号引脚。SS0、IO/M和DT/R一道,通过编码可以指示CPU在最小组态模式下的8种工作状态,如表2-2所示。其中,暂停状态在执行HLT指令后出现;过度状态在总线操作即将结束时出现,它意味着下个总线操作即将开始。表2-2最小组态模式下的状态编码IO/MDT/RSS0CPU的工作状态000取指令001存储器读010存储器写011过渡状态100中断响应101I/O读110I/O写111暂停•3.中断请求和响应引脚•①INTR(InterruptRequest):可屏蔽中断请求信号引脚,输入,高电平有效。有效时,表示中断请求源向CPU申请屏蔽中断。该请求的优先级别较低,通过关中断指令CLI可清除CPU内的标志寄存器的中断允许标志IF,充而对该中断请求进行屏蔽。•可屏蔽中断请求用于常规的中断服务,例如,当某个外设需要传送数据时,可通过该引脚向CPU申请可屏蔽中断。•②INTA(InterruptAcknowledge):可屏蔽中断响应信号引脚,输出,低电平有效。有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU将进入中断响应周期。•已被响应,并令外设将其中断向量号送到中断响应周期由连续两个总线周期构成,每个总线周期都会从INTA引脚输出一个负脉冲,以此通知外设其中断请求数据总线。此后,CPU接收中断向量号,据此得知哪个设备有中断请求,并转入相应的中断服务程序入口,为它提供相应的服务。•③NMI(Non-MaskInterrupt):不可屏蔽中断请求信号引脚,输入,上升沿有效。有效时,表示外界向CPU申请不可屏蔽中断。该中断请求的优先级别高于INTR,且不能在CPU内被屏蔽(即CPU内的中断允许标志IF对其不起作用)。当系统发生紧急情况时,可通过它向CPU申请不可屏蔽中断服务。•4.总线请求和响应引脚•①HOLD:占用总线请求信号引脚,输入,高电平有效。有效时,表示其它总线主控设备向CPU申请占用总线。该信号从有效回到无效时,表示总线主控设备对总线的使用已经结束,通知CPU收回对总线的控制权。在系统中,浮点运算协处理器和DMA控制器等总线主控设备都可以通过该引脚向CPU申请总线的使用权•②HLDA(HOLDAcknowledge):占用总线响应信号引脚,输出,高电平有效。有效时,表示CPU已响应占用总线请求,并将总线释放给申请占用总线的主控设备。此时CPU的地址线、数据线及具有三态输出能力的控制线将呈现高阻,使总线请求设备可以顺利接管和使用总线。使用完毕后,请求信号HOLD将转为无效,响应信号HLDA也随之转为无效,CPU将重新掌管总线。•5.其它引脚•①RESET:复位请求信号引脚,输入,高电平有效。有效时,将使CPU回到初始化状态。当它从有效转为无效时,CPU重新开始工作。为保证可靠复位,在上电复位(冷启动)时,要求其有效时间应维持50μs以上;在按钮复位(热启动)时,要求其有效时间应维持4个时钟周期以上。•CPU复位时,其内部寄存器和外部引脚的状态如表2-3所示。表中同时给出了两种组态下引脚的复位状态。复位后,寄存器CS=FFFFH,IP=0000H,所以复位后CPU一开始执行的程序入口在物理地址FFFF0H处;在引脚方面,复位后总的情况是输出高阻或者无效。•②CLK(Clock):时钟输入信号引脚。系统通过该引脚给CPU提供内部定时信号。8088的工作时钟最高可选5MHz。在IBMPC/XT机中,它采用了4.77MHz的时钟,其周期约为210ns。•③Vcc:电源,向CPU提供+5V电源。•④GND:地,向CPU提供参考地电平。•⑤MN/MX(Minimum/Maximum):组态选择信号引脚,输入。当它接高电平时,8088将工作在最小组态模式;反之,8088将工作在最大组态模式。•⑥TEST:测试信号引脚,输入,低电平有效,该引脚信号配合WAIT指令来使用。•当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测试:如果无效(高电平时),则程序原地踏步并继续测试;如果有效(低电平时),则程序恢复运行。也就是说,WAIT指令使CPU产生等待,直到TEST引脚有效为止。在使用协处理器8087时,通过TEST引脚和WAIT指令,可使8088和8087的操作保持同步。•表2-38088寄存器和引脚的复位状态寄存器寄存器内容引脚(括号内为最大组态模式的引脚)引脚状态指令队列状态寄存器CS:IP其它段寄存器全清除全清除FFFFH:0000H0000HAD7~AD0、A15~A8、A19/S6~A16/S3SS0(HIGH)、(RQ/GT0)、(RQ/GT1)DEN(S0)、DT/R(S1)、IO/M(S2)WR(LOCK)、RD、INTAALE(QS0)、HLDA、(QS1)高阻高电平高电平后呈高阻高电平
本文标题:接口与通信技术 第二章
链接地址:https://www.777doc.com/doc-316422 .html