接口与通信技术-第二章课件_第1页
接口与通信技术-第二章课件_第2页
接口与通信技术-第二章课件_第3页
接口与通信技术-第二章课件_第4页
接口与通信技术-第二章课件_第5页
已阅读5页,还剩149页未读 继续免费阅读

下载本文档

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

文档简介

第二章微处理器的外部特性与总线形成

这一章将从用微处理器组成微型计算机的角度,介绍Intel8088微处理器的外部特性,以及微型计算机的系统总线形成,主要内容包括:Intel8088的两种组态模式,每种组态下的引脚定义、总线形成等。第二章微处理器的外部特性与总线形成这一章将从用微处第一节Intel8088微处理器的外部特性

微处理器是微型计算机的核心部件,其外部特性表现在它的引脚信号上,并通过引脚的连接在微型计算机中发挥作用一Intel8088的两种组态模式第一节Intel8088微处理器的外部特性微接口与通信技术-第二章课件

BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,同样具有20位地址线,BMPC/XT采用的CPU为Intel

可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。可以寻址1MB的内存空间和64K个I/O端口,其

BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,BMPC/

同样具有20位地址线,可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,同样具有20位地址线,可以寻址1MB的内存空间和64IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。局资源的竞争,每个CPU都需要有总线总裁器8289来管理它们对系统总线和系统资源的使用。IBM选择8088为IBMPC/XT的CPU的原因

IBMPC/XT是一个单CPU微型机,只使用一片8088CPU。它工作在最大组态模式,系统总线由8088和8288共同形成和管理。此外,系统中安排了数值运算协处理器8087的插座,供用户选用,但没有使用输入/输出协处理器8089和总线总裁器8289。IBMPC/XT是一个单CPU微型机,只使用

图2-1示出了8088在两种组态下的引脚定义,注意某些引脚在两种组态下有不同的功能。图中,未加括号的为不区分最大组态或最小组态的引脚定义,加括号的为最大组态下的引脚定义。在构成应用系统时,最大组态和最小组态模式有不同的总线形成办法。图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,②A15~A8(Address):8位地址引脚,输出,三

在访问外设的第一个时钟周期输出低电平(无效),其它时间输出状态信号S6~S3。其中,S6恒为低电平,S5反映中断允许标志IF的状态,S4和S3的编码反映CPU当前对段寄存器的使用情况,如表2-1所示,表中不使用段寄存器的操作指I/O访问和中断响应等。在访问外设的第一个时钟周期输出低电平(无效),其它时表2-1S4和S3编码的意义S4S3

意义

0

0当前正使用DS段寄存器

0

1当前正使用SS段寄存器

1

0当前正使用CS或未使用段寄存器

1

1当前正使用ES段寄存器表2-1S4和S3编码的意义

注意,在软件编程时,我们用逻辑地址(两个16位数)来对存储器单元进行寻址,但是实际上,8088访问存储器时,是用20位物理地址,即引脚A19~A0来寻址存储器单元。从逻辑地址到物理地址的转换,是由8088在其内部自动完成的。

而8088在寻址I/O时只使用20位地址中的低16位,即A15~A0,或低8位,即A7~A0,对I/O编程时,我们只需使用低16位或低8位地址即可,亦即8088访问I/O时,不像访问存储器时需要进行逻辑地址到物理地址的转换

注意,在软件编程时,我们用逻辑地址(两个16位2.读写控制引脚这是一组读写控制引脚信号,是微处理器的控制总线。①ALE(AddressLatchEnable):地址锁存允许引脚,输出,三态,高电平有效。有效时,表示复用引脚(AD7~AD0和A19/S6~A16/S3)上正在传送地址信号。由于地址在复用引脚上出现的时间很短暂,2.读写控制引脚

所以,系统需要利用ALE信号将地址锁存到地址锁存器中以备使用。②IO/M(InputandOutput/Memory):8088访问I/O或者存储器指示引脚,输出,三态。该引脚为高电平时,表示CPU将访问I/O端口,此时地址总线A15~A0提供16位的I/O端口地址;为低电平时,表示CPU将访问存储器,此时地址总线A19~A0提供20位的存储器物理地址所以,系统需要利用ALE信号将地址锁存到地址锁存器中③WR(Write):写控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在将数据写到存储器单元或I/O端口中。④RD(Read):读控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在从存储器单元或I/O端口中读取数据。③WR(Write):写控制信号引脚,输出,三态,低电IO/M、WR和RD这三个信号构成了微型机的基本控制信号,组合后可形成四种基本的总线控制,即存储器写MEMW、存储器读MEMR、I/O写IOW和I/O读IOR。⑤READY:存储器或I/O端口就绪信号引脚,输入,高电平有效。存储器或I/O端口可利用该信号无效(低电平时)来请求CPU延长时序。IO/M、WR和RD这三个信号构成了微型机的基本控制

在总线操作周期中,8088CPU会在第3个时钟周期的前沿测试该引脚,如果测到有效(高电平时),表示被访问的存储器或I/O端口已就绪,CPU将在第4个时钟周期后结束数据存取总线操作;如果测到无效(低电平时),表示被访问的存储器或I/O端口跟不上CPU的操作速度,在总线操作周期中,8088CPU会在第3个时钟周期的

此时CPU将插入等待周期TW。CPU会在等待周期中继续监测READY信号,有效时则进入第4个时钟周期,否则继续插入等待周期TW。⑥DEN(DataEnable):数据允许信号引脚,输出,三态,低电平有效。有效时,表示复用的数据总线上正在传送数据,此时CPU将插入等待周期TW。CPU会在等待周

可利用该信号来控制数据收发器,以便对数据总线进行适时的驱动。⑦DT/R(DataTransmit/Receive):数据发送或接收信号引脚,输出,三态。该信号指示数据总线上数据的流向:高电平时数据自CPU输出到总线(发送),低电平时数据从总线输入到CPU(接收)。可利用该信号来控制数据收发器对数据的驱动方向。可利用该信号来控制数据收发器,以便对数据总线进行适时⑧SS0(SystemStatus):(最小组态模式下的)系统状态0输出信号引脚。SS0、IO/M和DT/R一道,通过编码可以指示CPU在最小组态模式下的8种工作状态,如表2-2所示。其中,暂停状态在执行HLT指令后出现;过度状态在总线操作即将结束时出现,它意味着下个总线操作即将开始。⑧SS0(SystemStatus):(最小组态模式下的表2-2最小组态模式下的状态编码IO/MDT/RSS0CPU的工作状态

0取指令

1存储器读

0存储器写

1过渡状态

0中断响应

1I/O读

0I/O写

1暂停表2-2最小组态模式下的状态编码IO/MDT3.中断请求和响应引脚①

INTR(InterruptRequest):可屏蔽中断请求信号引脚,输入,高电平有效。有效时,表示中断请求源向CPU申请屏蔽中断。该请求的优先级别较低,通过关中断指令CLI可清除CPU内的标志寄存器的中断允许标志IF,充而对该中断请求进行屏蔽。3.中断请求和响应引脚

可屏蔽中断请求用于常规的中断服务,例如,当某个外设需要传送数据时,可通过该引脚向CPU申请可屏蔽中断。②INTA(InterruptAcknowledge):可屏蔽中断响应信号引脚,输出,低电平有效。有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU将进入中断响应周期。可屏蔽中断请求用于常规的中断服务,例如,当某个外已被响应,并令外设将其中断向量号送到中断响应周期由连续两个总线周期构成,每个总线周期都会从INTA引脚输出一个负脉冲,以此通知外设其中断请求数据总线。此后,CPU接收中断向量号,据此得知哪个设备有中断请求,并转入相应的中断服务程序入口,为它提供相应的服务。已被响应,并令外设将其中断向量号送到中断响应周期由连续两个总③NMI(Non-MaskInterrupt):不可屏蔽中断请求信号引脚,输入,上升沿有效。有效时,表示外界向CPU申请不可屏蔽中断。该中断请求的优先级别高于INTR,且不能在CPU内被屏蔽(即CPU内的中断允许标志IF对其不起作用)。当系统发生紧急情况时,可通过它向CPU申请不可屏蔽中断服务。③NMI(Non-MaskInterrupt):不可4.总线请求和响应引脚①HOLD:占用总线请求信号引脚,输入,高电平有效。有效时,表示其它总线主控设备向CPU申请占用总线。该信号从有效回到无效时,表示总线主控设备对总线的使用已经结束,通知CPU收回对总线的控制权。在系统中,浮点运算协处理器和DMA控制器等总线主控设备都可以通过该引脚向CPU申请总线的使用权4.总线请求和响应引脚②HLDA(HOLDAcknowledge):占用总线响应信号引脚,输出,高电平有效。有效时,表示CPU已响应占用总线请求,并将总线释放给申请占用总线的主控设备。此时CPU的地址线、数据线及具有三态输出能力的控制线将呈现高阻,使总线请求设备可以顺利接管和使用总线。使用完毕后,请求信号HOLD将转为无效,响应信号HLDA也随之转为无效,CPU将重新掌管总线。②HLDA(HOLDAcknowledge):占用5.其它引脚①RESET:复位请求信号引脚,输入,高电平有效。有效时,将使CPU回到初始化状态。当它从有效转为无效时,CPU重新开始工作。为保证可靠复位,在上电复位(冷启动)时,要求其有效时间应维持50μs以上;在按钮复位(热启动)时,要求其有效时间应维持4个时钟周期以上。5.其它引脚

CPU复位时,其内部寄存器和外部引脚的状态如表2-3所示。表中同时给出了两种组态下引脚的复位状态。复位后,寄存器CS=FFFFH,IP=0000H,所以复位后CPU一开始执行的程序入口在物理地址FFFF0H处;在引脚方面,复位后总的情况是输出高阻或者无效。CPU复位时,其内部寄存器和外部引脚的状态如表②CLK(Clock):时钟输入信号引脚。系统通过该引脚给CPU提供内部定时信号。8088的工作时钟最高可选5MHz。在IBMPC/XT机中,它采用了4.77MHz的时钟,其周期约为210ns。③Vcc:电源,向CPU提供+5V电源。④GND:地,向CPU提供参考地电平。②CLK(Clock):时钟输入信号引脚。系统通过该引脚给⑤MN/MX(Minimum/Maximum):组态选择信号引脚,输入。当它接高电平时,8088将工作在最小组态模式;反之,8088将工作在最大组态模式。⑥TEST:测试信号引脚,输入,低电平有效,该引脚信号配合WAIT指令来使用。⑤MN/MX(Minimum/Maximum):组态选择信当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测试:如果无效(高电平时),则程序原地踏步并继续测试;如果有效(低电平时),则程序恢复运行。也就是说,WAIT指令使CPU产生等待,直到TEST引脚有效为止。在使用协处理器8087时,通过TEST引脚和WAIT指令,可使8088和8087的操作保持同步。当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测表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)高阻高电平高电平后呈高阻高电平后呈高阻低电平表2-38088寄存器和引脚的复位状态寄存器寄存器内三最大组态下的引脚定义在最大组态模式下,8088CPU的数据、地址等引脚信号与最小组态模式下相同,不同的是一些控制信号。8088将状态信号S2~S0输出,由总线控制器8288译码并产生一系列控制信号。①表2-4信号S2~S0的编码意义

三最大组态下的引脚定义

S2、S1、S0(Status):三个状态信号引脚,三者编码输出,三态。通过它们的编码来指示CPU在最大组态模式下的8种工作状态,如表2-4所示。读者可将它与表2-2进行对比。实际上,8088无论是在最大组态模式下还是最小组态模式下,都具有8种相同的工作状态。S2、S1、S0(Status):三个状态信号②LOCK:总线封锁信号引脚,输出,低电平有效,该引脚信号一般与指令前缀LOCK配合使用。当CPU执行一条加有LOCK前缀的指令时,该引脚将输出有效低电平,可以用它来封锁其它总线请求设备,即此刻不允许它们向CPU提出总线请求,直到CPU将该指令执行完为止。②LOCK:总线封锁信号引脚,输出,低电平有效,该引脚

此外,在中断响应周期中,它也会一度有效,目的也是利用该信号来临时封锁其它设备对总线的请求,以确保CPU能从数据总线上正确读取中断向量号。③QS1、QS0(QueueStatus):指令队列状态信号引脚,此外,在中断响应周期中,它也会一度有效,目的也是利用

两者编码输出。该编码反映了指令队列的操作状态,如表2-5所示。通过该编码,协处理器8087可以了解8088的队列操作情况,从而使自己的指令队列与CPU保持同步。④RQ/GT0、RQ/GT1(Request/Grant):总线请求/同意信号引脚,两者编码输出。该编码反映了指令队列的操作状态,如表2

共有两个并相互独立,双向,负脉冲有效。其中,RQ/GT0的优先级别高于RQ/GT1。如果总线请求设备需要请求总线,可通过该引脚向CPU发送宽度为1个时钟周期的负脉冲信号;CPU收到后,向对方回送同样宽度的负脉冲,表示同意并将总线释放,此时总线请求设备可接管并使用总线;共有两个并相互独立,双向,负脉冲有效。其中,R

一旦总线使用完毕,总线请求设备仍通过该引脚向CPU发同样宽度的负脉冲,CPU收到后于下一个时钟周期重新收回总线控制权。⑤HIGH:该引脚信号在8088中无用,始终输出高电平(但在8086中它对应有效的引脚信号BHE)。一旦总线使用完毕,总线请求设备仍通过该引脚向CPU发表2-4信号S2~S0的编码意义S2S1S0

CPU的工作状态000中断响应001I/O读010I/O写011暂停100取指令101存储器读110存储器写111过渡状态

表2-4信号S2~S0的编码意义表2-5QS1、QS0的编码意义QS1QS0指令队列的操作状态00无操作01取指令首字节到队列10队列空11取指令其余字节到队列

表2-5QS1、QS0的编码意义第二节微型计算机的总线形成

在微型计算机中,是通过总线将CPU与存储器、I/O接口(设备)等部件连接在一起,组成微型计算机的。本节以典型的微型计算机IBMPC/XT为例,介绍微型计算机的总线形成。IBMPC/XT选用Intel8088微处理器为CPU,Intel8088微处理器有两种组态模式,下面分别详细介绍8088在两种组态模式下的总线形成。第二节微型计算机的总线形成在微型计算机中,是通过总线

一Intel8088微处理器在最小组态下的总线形成一Intel8088微处理器在最小组态下的总线形成

在最小组态模式下,可以按图2-2所示形成系统总线,该方案由Intel公司推荐。1.20位地址总线——采用3个三态透明锁存器8282进行锁存和驱动由于部分地址由分时复用引脚提供,在这些引脚上,地址信息只在总线操作的第一个时钟周期出现,因此必须使用地址锁存器加以锁存,并同时对它进行驱动,以增加它们的负载能力。在最小组态模式下,可以按图2-2所示形成系统总线,该

允许地址信息输出;无效(高电平)时,不允许地址信息输出,即输出引脚呈现高阻。这里所说的“透明”,是指当锁存控制端STB有效(高电平)时,锁存器8282的内部输出B能随输入A而变化;当STB从有效转为无效(低电平)时(即STB的下降沿)地址信息被锁存,且内部输出B不再随输入A而变化。允许地址信息输出;无效(高电平)时,不允许地址信息输

图2-2采用Intel公司的三态透明锁存器8282来对地址进行锁存和驱动。8282的引脚和内部结构如图2-3所示。它有8位输入、8位输出和2个控制端,即选通控制端STB(Strobe)和输出允许控制端OE(OutputEnable),前者对地址信息锁存进行控制,后者对地址信息输出进行控制。注意,这里所说的“三态”是指芯片具有三态输出能力,也就是说,当输出控制信号OE有效(低电平)时,图2-2采用Intel公司的三态透明锁存器8282接口与通信技术-第二章课件

在图2-2中。8282因OE接地而常有效,表示该锁存器始终允许地址输出,不再使用三态控制能力。8282的STB连接8088的ALE,这样,当ALE有效时,从8088CPU输出的地址将直通8282的输出端;当ALE无效时,地址将被锁存并始终保持在系统的地址总线上。除8282外,Intel公司的8283和74LS373也属三态透明锁存器。

在图2-2中。8282因OE接地而常有效,表示该8283的情况与8282相似,只是数据输出反向;74LS373用G(Gate)来标识其锁存控制端。与透明锁存器相对的是非透明锁存器,它利用边沿信号(上升沿/下降沿)来进行锁存控制,无论控制端为高电平还是低电平,其输出均不随输入变化(不透明)。8283的情况与8282相似,只是数据输出反向;74

如74LS374是非透明的三态锁存器,上升沿有效;74LS273是上升沿有效的非透明锁存器,无三态能力。2.8位数据总线——采用数据收发器Intel8286来进行双向驱动

Intel8286的引脚和内部结构如图2-4所示,它可以朝两个方向驱动8位数据,如74LS374是非透明的三态锁存器,上升沿有效;7

发送时从A到B,接收时从B到A,所以也称为双向驱动器。除A、B两侧各有8位数据线外,它还有2个控制端,即输出允许控制端OE和方向控制端T(Transmit)。前者用来控制数据的输出:有效(低电平)时,允许数据输出(包括从A到B和从B到A);无效(高电平)时,发送时从A到B,接收时从B到A,所以也称为双向驱动器

输出呈现高阻。后者用来控制数据驱动的方向:有效(高电平)时,从A侧向B侧驱动;无效(低电平)时,从B侧向A侧驱动。在图2-2中,8286的控制端OE连接8088CPU的DEN引脚,有效(低电平)时说明数据总线上正在传送数据,这时数据收发器方开始驱动。8286的控制端T连接8088输出呈现高阻。后者用来控制数据驱动的方向:有效(CPU的DT/R引脚,高电平时由8088CPU向总线驱动数据(发送),低电平时由总线向8088CPU驱动数据(接收)。除了8286外,Intel公司的8287和74LS245也属于数据收发器。其中8287的情况与8286相似,只是两个方向的输出均为反相;而74LS245用DIR(Direction)来标识其方向控制端,用G来标识其输出控制端。CPU的DT/R引脚,高电平时由8088CPU向总3.系统控制信号——IO/M、WR、RD、NMI、INTR和INTA等,由8088CPU的引脚直接提供。二、Intel8088微处理器在最大组态下的总线形成

IBMPC/XT机是典型的采用Intel8088微处理器以最大组态模式工作的微型计算机,下面以IBMPC/XT机为例,介绍其总线的形成,参见图2-5。3.系统控制信号——IO/M、WR、RD、NMI、INT接口与通信技术-第二章课件1.20位地址总线——用两个三态透明锁存器74LS373和一个三态单向驱动器74LS244来分别对地址进行锁存和驱动两个三态透明锁存器74LS373用来锁存和驱动地址总线A19~A12和A7~A0(其中A15~A12可不锁存);1.20位地址总线——用两个三态透明锁存器74LS373和一个三态单向驱动器74LS244用来驱动地址A11~A8。在图2-5中,74LS373的地址锁存端接8288的ALE,74LS373和74LS244的地址输出端接DMA应答电路的AENBRD。当AENBRD信号有效时,表示主板上DMA控制器提供的地址有效,一个三态单向驱动器74LS244用来驱动地址A11~A8。

即DMA控制器正在使用总线;这时74LS373和74LS244的地址输出将呈现高阻,即不允许8088CPU向总线输出地址。74LS244是一个双4位的三态单向驱动器,这里只使用了其中的4位。即DMA控制器正在使用总线;这时74LS373和7接口与通信技术-第二章课件接口与通信技术-第二章课件

三态透明锁存器74LS373的引脚排列如图2-6所示,内部有8个锁存器,Di和Qi分别是输入和输出端,LE和OE分别是所有锁存器的电平锁存引脚和输出允许引脚,74LS373与Intel8282功能一样,参见前面Intel8282的介绍。三态透明锁存器74LS373的引脚排列如图2-6所示

三态单向驱动器74LS244的引脚排列和内部结构如图2-7所示,内部有8个三态单向驱动器,分成4位的两组,信息的传送方向为从Ai到Yi,输出与输入同相,每组的控制端连接在一起,分别为1G和2G,各控制一组(4位)三态单向驱动器的信息传送,三态单向驱动器74LS244的引脚排列和内部结构如图1G和2G为低电平有效。1G为低电平时,允许信息从1Ai传到1Yi(i=1,2,3,4),1G为高电平时,输出端1Yi(i=1,2,3,4)为高阻;2G为低电平时,允许信息从2Ai传到2Yi(i=1,2,3,4),2G为高电平时,输出端2Yi(i=1,2,3,4)为高阻。1G和2G为低电平有效。1G为低电平时,允许信息从12.系统数据总线——用数据收发器74LS245进行数据的双向驱动数据收发器74LS245的两个控制端由8288产生的信号来进行控制。其中,8288的DT/R连接74LS245的方向控制端DIR,高电平时由CPU向总线驱动数据,低电平时由总线向CPU驱动数据。2.系统数据总线——用数据收发器74LS245进行数据的双

8288的DEN经反向后连接74LS245的输出控制端G,有效时允许数据输出(包括两个方向),否则输出高阻。数据收发器74LS245的引脚排列如图2-8所示,内部有8个双向三态数据收发驱动器,Ai和Bi皆可作为数据的输入或输出端,8288的DEN经反向后连接74LS245的输74LS245与Intel8286功能一样,参见前面Intel8286的介绍。

3.系统控制信号——少数由8088的引脚直接提供,如NMI、INTR等;多数信号由总线控制器8288提供,分“命令”和“控制”两组,其中:①IOW(I/O写)、IOR(I/O读)、MEMW(存储器写)、74LS245与Intel8286功能一样,参见前

MEMR(存储器读)和INTA(中断响应)等信号称为“命令”,它们均为低电平有效,分别用于系统的读写操作和中断响应,并构成系统的控制总线,由其名称即可知道它的含义。②ALE、DT/R和DEN等信号称为“控制”。接口与通信技术-第二章课件

它们的功能与最小组态下的同名引脚功能相同,用来控制形成系统的地址总线和数据总线,包括锁存地址、允许数据驱动和控制驱动方向。唯一的不同是,由8288产生的DEN信号为高电平有效,这是Intel公司为了兼容早期的8085CPU而设计的。它们的功能与最小组态下的同名引脚功能相同,用来控

请注意8288的两个输入引脚:地址允许AEN和命令允许CEN。它们连接着DMA应答电路中两个完全相反的信号AENBRD和AEN/。使用时,AENBRD和AEN/(其含义是由DMA提供的地址有效)将同时有效或同时无效。请注意8288的两个输入引脚:地址允许AEN和命令允

当地址允许AEN和命令允许CEN同时有效时,表示CPU掌管系统总线。此时,8288正常工作,产生上面列举的一系列命令和控制信号,并允许将CPU提供的地址输出到总线。当地址允许AEN和命令允许CEN同时无效时,当地址允许AEN和命令允许CEN同时有效时,表示CP

表示DMA控制器掌管系统总线。此时,8288被封锁,它的ALE和DEN都将输出无效。前者无效将使地址继续处在锁存状态;后者无效将使数据收发器74LS245输出高阻。与此同时,AENBRD有效将直接封锁地址锁存器74LS373和单向驱动器74LS244的输出控制端,表示DMA控制器掌管系统总线。此时,8288被封锁,

使它们全都输出高阻。于是CPU对系统总线的控制将被剥夺,系统总线呈现全面高阻,实际上,此时总线已由DMA控制器掌管。在IBMPC/XT微型机的CPU子系统中,除了总线形成电路外,还包括时钟发生器8284、等待信号产生电路、浮点运算协处理器8087等。使它们全都输出高阻。于是CPU对系统总线的控制将被剥第二章微处理器的外部特性与总线形成

这一章将从用微处理器组成微型计算机的角度,介绍Intel8088微处理器的外部特性,以及微型计算机的系统总线形成,主要内容包括:Intel8088的两种组态模式,每种组态下的引脚定义、总线形成等。第二章微处理器的外部特性与总线形成这一章将从用微处第一节Intel8088微处理器的外部特性

微处理器是微型计算机的核心部件,其外部特性表现在它的引脚信号上,并通过引脚的连接在微型计算机中发挥作用一Intel8088的两种组态模式第一节Intel8088微处理器的外部特性微接口与通信技术-第二章课件

BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,同样具有20位地址线,BMPC/XT采用的CPU为Intel

可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。可以寻址1MB的内存空间和64K个I/O端口,其

BMPC/XT采用的CPU为Intel8088,图2-1给出了Intel8088的引脚图,第一章图1-4给出了Intel8086的引脚图,比较两图可以看出,两者引脚图基本相同。事实上,Intel8088同Intel8086很相近,都是16位微处理器,内部运算器和寄存器都是16位,BMPC/

同样具有20位地址线,可以寻址1MB的内存空间和64K个I/O端口,其指令系统完全兼容。两者不同的是,8088的外部数据总线为8位,而8086为16位,因而8086是真正的16位微处理器,而8088被称为“准16位”微处理器,同样具有20位地址线,可以寻址1MB的内存空间和64IBM选择8088为IBMPC/XT的CPU的原因是当时外部设备的数据宽度均为8位,并考虑到价格因素。局资源的竞争,每个CPU都需要有总线总裁器8289来管理它们对系统总线和系统资源的使用。IBM选择8088为IBMPC/XT的CPU的原因

IBMPC/XT是一个单CPU微型机,只使用一片8088CPU。它工作在最大组态模式,系统总线由8088和8288共同形成和管理。此外,系统中安排了数值运算协处理器8087的插座,供用户选用,但没有使用输入/输出协处理器8089和总线总裁器8289。IBMPC/XT是一个单CPU微型机,只使用

图2-1示出了8088在两种组态下的引脚定义,注意某些引脚在两种组态下有不同的功能。图中,未加括号的为不区分最大组态或最小组态的引脚定义,加括号的为最大组态下的引脚定义。在构成应用系统时,最大组态和最小组态模式有不同的总线形成办法。图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,②A15~A8(Address):8位地址引脚,输出,三

在访问外设的第一个时钟周期输出低电平(无效),其它时间输出状态信号S6~S3。其中,S6恒为低电平,S5反映中断允许标志IF的状态,S4和S3的编码反映CPU当前对段寄存器的使用情况,如表2-1所示,表中不使用段寄存器的操作指I/O访问和中断响应等。在访问外设的第一个时钟周期输出低电平(无效),其它时表2-1S4和S3编码的意义S4S3

意义

0

0当前正使用DS段寄存器

0

1当前正使用SS段寄存器

1

0当前正使用CS或未使用段寄存器

1

1当前正使用ES段寄存器表2-1S4和S3编码的意义

注意,在软件编程时,我们用逻辑地址(两个16位数)来对存储器单元进行寻址,但是实际上,8088访问存储器时,是用20位物理地址,即引脚A19~A0来寻址存储器单元。从逻辑地址到物理地址的转换,是由8088在其内部自动完成的。

而8088在寻址I/O时只使用20位地址中的低16位,即A15~A0,或低8位,即A7~A0,对I/O编程时,我们只需使用低16位或低8位地址即可,亦即8088访问I/O时,不像访问存储器时需要进行逻辑地址到物理地址的转换

注意,在软件编程时,我们用逻辑地址(两个16位2.读写控制引脚这是一组读写控制引脚信号,是微处理器的控制总线。①ALE(AddressLatchEnable):地址锁存允许引脚,输出,三态,高电平有效。有效时,表示复用引脚(AD7~AD0和A19/S6~A16/S3)上正在传送地址信号。由于地址在复用引脚上出现的时间很短暂,2.读写控制引脚

所以,系统需要利用ALE信号将地址锁存到地址锁存器中以备使用。②IO/M(InputandOutput/Memory):8088访问I/O或者存储器指示引脚,输出,三态。该引脚为高电平时,表示CPU将访问I/O端口,此时地址总线A15~A0提供16位的I/O端口地址;为低电平时,表示CPU将访问存储器,此时地址总线A19~A0提供20位的存储器物理地址所以,系统需要利用ALE信号将地址锁存到地址锁存器中③WR(Write):写控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在将数据写到存储器单元或I/O端口中。④RD(Read):读控制信号引脚,输出,三态,低电平有效。有效时,表示CPU正在从存储器单元或I/O端口中读取数据。③WR(Write):写控制信号引脚,输出,三态,低电IO/M、WR和RD这三个信号构成了微型机的基本控制信号,组合后可形成四种基本的总线控制,即存储器写MEMW、存储器读MEMR、I/O写IOW和I/O读IOR。⑤READY:存储器或I/O端口就绪信号引脚,输入,高电平有效。存储器或I/O端口可利用该信号无效(低电平时)来请求CPU延长时序。IO/M、WR和RD这三个信号构成了微型机的基本控制

在总线操作周期中,8088CPU会在第3个时钟周期的前沿测试该引脚,如果测到有效(高电平时),表示被访问的存储器或I/O端口已就绪,CPU将在第4个时钟周期后结束数据存取总线操作;如果测到无效(低电平时),表示被访问的存储器或I/O端口跟不上CPU的操作速度,在总线操作周期中,8088CPU会在第3个时钟周期的

此时CPU将插入等待周期TW。CPU会在等待周期中继续监测READY信号,有效时则进入第4个时钟周期,否则继续插入等待周期TW。⑥DEN(DataEnable):数据允许信号引脚,输出,三态,低电平有效。有效时,表示复用的数据总线上正在传送数据,此时CPU将插入等待周期TW。CPU会在等待周

可利用该信号来控制数据收发器,以便对数据总线进行适时的驱动。⑦DT/R(DataTransmit/Receive):数据发送或接收信号引脚,输出,三态。该信号指示数据总线上数据的流向:高电平时数据自CPU输出到总线(发送),低电平时数据从总线输入到CPU(接收)。可利用该信号来控制数据收发器对数据的驱动方向。可利用该信号来控制数据收发器,以便对数据总线进行适时⑧SS0(SystemStatus):(最小组态模式下的)系统状态0输出信号引脚。SS0、IO/M和DT/R一道,通过编码可以指示CPU在最小组态模式下的8种工作状态,如表2-2所示。其中,暂停状态在执行HLT指令后出现;过度状态在总线操作即将结束时出现,它意味着下个总线操作即将开始。⑧SS0(SystemStatus):(最小组态模式下的表2-2最小组态模式下的状态编码IO/MDT/RSS0CPU的工作状态

0取指令

1存储器读

0存储器写

1过渡状态

0中断响应

1I/O读

0I/O写

1暂停表2-2最小组态模式下的状态编码IO/MDT3.中断请求和响应引脚①

INTR(InterruptRequest):可屏蔽中断请求信号引脚,输入,高电平有效。有效时,表示中断请求源向CPU申请屏蔽中断。该请求的优先级别较低,通过关中断指令CLI可清除CPU内的标志寄存器的中断允许标志IF,充而对该中断请求进行屏蔽。3.中断请求和响应引脚

可屏蔽中断请求用于常规的中断服务,例如,当某个外设需要传送数据时,可通过该引脚向CPU申请可屏蔽中断。②INTA(InterruptAcknowledge):可屏蔽中断响应信号引脚,输出,低电平有效。有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU将进入中断响应周期。可屏蔽中断请求用于常规的中断服务,例如,当某个外已被响应,并令外设将其中断向量号送到中断响应周期由连续两个总线周期构成,每个总线周期都会从INTA引脚输出一个负脉冲,以此通知外设其中断请求数据总线。此后,CPU接收中断向量号,据此得知哪个设备有中断请求,并转入相应的中断服务程序入口,为它提供相应的服务。已被响应,并令外设将其中断向量号送到中断响应周期由连续两个总③NMI(Non-MaskInterrupt):不可屏蔽中断请求信号引脚,输入,上升沿有效。有效时,表示外界向CPU申请不可屏蔽中断。该中断请求的优先级别高于INTR,且不能在CPU内被屏蔽(即CPU内的中断允许标志IF对其不起作用)。当系统发生紧急情况时,可通过它向CPU申请不可屏蔽中断服务。③NMI(Non-MaskInterrupt):不可4.总线请求和响应引脚①HOLD:占用总线请求信号引脚,输入,高电平有效。有效时,表示其它总线主控设备向CPU申请占用总线。该信号从有效回到无效时,表示总线主控设备对总线的使用已经结束,通知CPU收回对总线的控制权。在系统中,浮点运算协处理器和DMA控制器等总线主控设备都可以通过该引脚向CPU申请总线的使用权4.总线请求和响应引脚②HLDA(HOLDAcknowledge):占用总线响应信号引脚,输出,高电平有效。有效时,表示CPU已响应占用总线请求,并将总线释放给申请占用总线的主控设备。此时CPU的地址线、数据线及具有三态输出能力的控制线将呈现高阻,使总线请求设备可以顺利接管和使用总线。使用完毕后,请求信号HOLD将转为无效,响应信号HLDA也随之转为无效,CPU将重新掌管总线。②HLDA(HOLDAcknowledge):占用5.其它引脚①RESET:复位请求信号引脚,输入,高电平有效。有效时,将使CPU回到初始化状态。当它从有效转为无效时,CPU重新开始工作。为保证可靠复位,在上电复位(冷启动)时,要求其有效时间应维持50μs以上;在按钮复位(热启动)时,要求其有效时间应维持4个时钟周期以上。5.其它引脚

CPU复位时,其内部寄存器和外部引脚的状态如表2-3所示。表中同时给出了两种组态下引脚的复位状态。复位后,寄存器CS=FFFFH,IP=0000H,所以复位后CPU一开始执行的程序入口在物理地址FFFF0H处;在引脚方面,复位后总的情况是输出高阻或者无效。CPU复位时,其内部寄存器和外部引脚的状态如表②CLK(Clock):时钟输入信号引脚。系统通过该引脚给CPU提供内部定时信号。8088的工作时钟最高可选5MHz。在IBMPC/XT机中,它采用了4.77MHz的时钟,其周期约为210ns。③Vcc:电源,向CPU提供+5V电源。④GND:地,向CPU提供参考地电平。②CLK(Clock):时钟输入信号引脚。系统通过该引脚给⑤MN/MX(Minimum/Maximum):组态选择信号引脚,输入。当它接高电平时,8088将工作在最小组态模式;反之,8088将工作在最大组态模式。⑥TEST:测试信号引脚,输入,低电平有效,该引脚信号配合WAIT指令来使用。⑤MN/MX(Minimum/Maximum):组态选择信当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测试:如果无效(高电平时),则程序原地踏步并继续测试;如果有效(低电平时),则程序恢复运行。也就是说,WAIT指令使CPU产生等待,直到TEST引脚有效为止。在使用协处理器8087时,通过TEST引脚和WAIT指令,可使8088和8087的操作保持同步。当CPU执行WAIT指令时,它将在每个时钟周期对该引脚进行测表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)高阻高电平高电平后呈高阻高电平后呈高阻低电平表2-38088寄存器和引脚的复位状态寄存器寄存器内三最大组态下的引脚定义在最大组态模式下,8088CPU的数据、地址等引脚信号与最小组态模式下相同,不同的是一些控制信号。8088将状态信号S2~S0输出,由总线控制器8288译码并产生一系列控制信号。①表2-4信号S2~S0的编码意义

三最大组态下的引脚定义

S2、S1、S0(Status):三个状态信号引脚,三者编码输出,三态。通过它们的编码来指示CPU在最大组态模式下的8种工作状态,如表2-4所示。读者可将它与表2-2进行对比。实际上,8088无论是在最大组态模式下还是最小组态模式下,都具有8种相同的工作状态。S2、S1、S0(Status):三个状态信号②LOCK:总线封锁信号引脚,输出,低电平有效,该引脚信号一般与指令前缀LOCK配合使用。当CPU执行一条加有LOCK前缀的指令时,该引脚将输出有效低电平,可以用它来封锁其它总线请求设备,即此刻不允许它们向CPU提出总线请求,直到CPU将该指令执行完为止。②LOCK:总线封锁信号引脚,输出,低电平有效,该引脚

此外,在中断响应周期中,它也会一度有效,目的也是利用该信号来临时封锁其它设备对总线的请求,以确保CPU能从数据总线上正确读取中断向量号。③QS1、QS0(QueueStatus):指令队列状态信号引脚,此外,在中断响应周期中,它也会一度有效,目的也是利用

两者编码输出。该编码反映了指令队列的操作状态,如表2-5所示。通过该编码,协处理器8087可以了解8088的队列操作情况,从而使自己的指令队列与CPU保持同步。④RQ/GT0、RQ/GT1(Request/Grant):总线请求/同意信号引脚,两者编码输出。该编码反映了指令队列的操作状态,如表2

共有两个并相互独立,双向,负脉冲有效。其中,RQ/GT0的优先级别高于RQ/GT1。如果总线请求设备需要请求总线,可通过该引脚向CPU发送宽度为1个时钟周期的负脉冲信号;CPU收到后,向对方回送同样宽度的负脉冲,表示同意并将总线释放,此时总线请求设备可接管并使用总线;共有两个并相互独立,双向,负脉冲有效。其中,R

一旦总线使用完毕,总线请求设备仍通过该引脚向CPU发同样宽度的负脉冲,CPU收到后于下一个时钟周期重新收回总线控制权。⑤HIGH:该引脚信号在8088中无用,始终输出高电平(但在8086中它对应有效的引脚信号BHE)。一旦总线使用完毕,总线请求设备仍通过该引脚向CPU发表2-4信号S2~S0的编码意义S2S1S0

CPU的工作状态000中断响应001I/O读010I/O写011暂停100取指令101存储器读110存储器写111过渡状态

表2-4信号S2~S0的编码意义表2-5QS1、QS0的编码意义QS1QS0指令队列的操作状态00无操作01取指令首字节到队列10队列空11取指令其余字节到队列

表2-5QS1、QS0的编码意义第二节微型计算机的总线形成

在微型计算机中,是通过总线将CPU与存储器、I/O接口(设备)等部件连接在一起,组成微型计算机的。本节以典型的微型计算机IBMPC/XT为例,介绍微型计算机的总线形成。IBMPC/XT选用Intel8088微处理器为CPU,Intel8088微处理器有两种组态模式,下面分别详细介绍8088在两种组态模式下的总线形成。第二节微型计算机的总线形成在微型计算机中,是通过总线

一Intel8088微处理器在最小组态下的总线形成一Intel8088微处理器在最小组态下的总线形成

在最小组态模式下,可以按图2-2所示形成系统总线,该方案由Intel公司推荐。1.20位地址总线——采用3个三态透明锁存器8282进行锁存和驱动由于部分地址由分时复用引脚提供,在这些引脚上,地址信息只在总线操作的第一个时钟周期出现,因此必须使用地址锁存器加以锁存,并同时对它进行驱动,以增加它们的负载能力。在最小组态模式下,可以按图2-2所示形成系统总线,该

允许地址信息输出;无效(高电平)时,不允许地址信息输出,即输出引脚呈现高阻。这里所说的“透明”,是指当锁存控制端STB有效(高电平)时,锁存器8282的内部输出B能随输入A而变化;当STB从有效转为无效(低电平)时(即STB的下降沿)地址信息被锁存,且内部输出B不再随输入A而变化。允许地址信息输出;无效(高电平)时,不允许地址信息输

图2-2采用Intel公司的三态透明锁存器8282来对地址进行锁存和驱动。8282的引脚和内部结构如图2-3所示。它有8位输入、8位输出和2个控制端,即选通控制端STB(Strobe)和输出允许控制端OE(OutputEnable),前者对地址信息锁存进行控制,后者对地址信息输出进行控制。注意,这里所说的“三态”是指芯片具有三态输出能力,也就是说,当输出控制信号OE有效(低电平)时,图2-2采用Intel公司的三态透明锁存器8282接口与通信技术-第二章课件

在图2-2中。8282因OE接地而常有效,表示该锁存器始终允许地址输出,不再使用三态控制能力。8282的STB连接8088的ALE,这样,当ALE有效时,从8088CPU输出的地址将直通8282的输出端;当ALE无效时,地址将被锁存并始终保持在系统的地址总线上。除8282外,Intel公司的8283和74LS373也属三态透明锁存器。

在图2-2中。8282因OE接地而常有效,表示该8283的情况与8282相似,只是数据输出反向;74LS373用G(Gate)来标识其锁存控制端。与透明锁存器相对的是非透明锁存器,它利用边沿信号(上升沿/下降沿)来进行锁存控制,无论控制端为高电平还是低电平,其输出均不随输入变化(不透明)。8283的情况与8282相似,只是数据输出反向;74

如74LS374是非透明的三态锁存器,上升沿有效;74LS273是上升沿有效的非透明锁存器,无三态能力。2.8位数据总线——采用数据收发器Intel8286来进行双向驱动

Intel8286的引脚和内部结构如图2-4所示,它可以朝两个方向驱动8位数据,如74LS374是非透明的三态锁存器,上升沿有效;7

发送时从A到B,接收时从B到A,所以也称为双向驱动器。除A、B两侧各有8位数据线外,它还有2个控制端,即输出允许控制端OE和方向控制端T(Transmit)。前者用来控制数据的输出:有效(低电平)时,允许数据输出(包括从A到B和从B到A);无效(高电平)时,发送时从A到B,接收时从B到A,所以也称为双向驱动器

输出呈现高阻。后者用来控制数据驱动的方向:有效(高电平)时,从A侧向B侧驱动;无效(低电平)时,从B侧向A侧驱动。在图2-2中,8286的控制端OE连接8088CPU的DEN引脚,有效(低电平)时说明数据总线上正在传送数据,这时数据收发器方开始驱动。8286的控制端T连接8088输出呈现高阻。后者用来控制数据驱动的方向:有效(CPU的DT/R引脚,高电平时由8088CPU向总线驱动数据(发送),低电平时由总线向8088CPU驱动数据(接收)。除了8286外,Intel公司的8287和74LS245也属于数据收发器。其中8287的情况与8286相似,只是两个方向的输出均为反相;而74LS245用DIR(Direction)来标识其方向控制端,用G来标识其输出控制端。CPU的DT/R引脚,高电平时由8088CPU向总3.系统控制信号——IO/M、WR、RD、NMI、INTR和INTA等,由8088CPU的引脚直接提供。二、Intel8088微处理器在最大组态下的总线形成

IBMPC/XT机是典型的采用Intel8088微处理器以最大组态模式工作的微型计算机,下面以IBM

温馨提示

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

评论

0/150

提交评论