在8086cpu工作与最小方式,执行指令的时候如何判断高低电平

如题所述

在学习8086 CPU的引脚信号前,必须弄清CPU最小模式和最大模式的概念。所谓最小模式,就是在系统中只有一个8086微处理器,所有的总线控制信号都直接由8086 CPU产生,因此,系统中的总线控制电路被减到最少。最大模式是相对最小模式而言的。在最大模式系统中,总是包含两个或多个微处理器,其中一个主处理器就是8086,其他的处理器称为协处理器,它们是协助主处理器工作的。如数学运算协处理器8087,输入/输出协处理器8089。8086 CPU到底工作在最大模式还是最小模式,完全由硬件决定。
当CPU处于不同工作模式时,其部分引脚的功能是不同的。 ⑴AD15 ~AD0(address data bus):地址/数据总线,双向,三态。
这是一组采用分时的方法传送地址或数据的复用引脚。根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O端口的低16位地址,还是传送16位数据,或是处于高阻状态。
⑵A19/S6~A16/S3(address/status):地址/状态信号,输出,三态。
这是采用分时的方法传送地址或状态的复用引脚。其中A19~A16为20位地址总线的高4位地址,S6~S3是状态信号。S6表示CPU与总线连接的情况,S5指示当前中断允许标志IF的状态。S4,S3的代码组合用来指明当前正在使用的段寄存器。S4,S3的代码组合及对应段寄存器的情况。
⑶BHE(低)/S7(bus high enable/status):允许总线高8位数据传送/状态信号,输出,三态。
为总线高8位数据允许信号,当低电平有效时,表明在高8位数据总线D15 ~D8上传送1个字节的数据。S7为设备的状态信号。
⑷RD/(read):读信号,输出,三态,低电平有效。
信号低电平有效时,表示CPU正在进行读存储器或读I/O端口的操作。
⑸READY(ready):准备就绪信号,输入,高电平有效。
READY信号用来实现CPU与存储器或I/O端口之间的时序匹配。当READY信号高电平有效时,表示CPU要访问的存储器或I/O端口已经作好了输入/输出数据的准备工作,CPU可以进行读/写操作。当READY信号为低电平时,则表示存储器或I/O端口还未准备就绪,CPU需要插入若干个“TW状态”进行等待。
⑹INTR(interrupt request):可屏蔽中断请求信号,输入,高电平有效。
8086 CPU在每条指令执行到最后一个时钟周期时,都要检测INTR引脚信号。INTR为高电平时,表明有I/O设备向CPU申请中断,若IF=1,CPU则会响应中断,停止当前的操作,为申请中断的I/O设备服务。
⑺TEST/(test):等待测试控制信号,输入,低电平有效。
信号用来支持构成多处理器系统,实现8086 CPU与协处理器之间同步协调的功能,只有当CPU执行WAIT指令时才使用。
⑻NMI(non-maskable interrupt):非屏蔽中断请求信号,输入,高电平有效。
当NMI引脚上有一个上升沿有效的触发信号时,表明CPU内部或I/O设备提出了非屏蔽的中断请求,CPU会在结束当前所执行的指令后,立即响应中断请求。
⑼RESET(reset):复位信号,输入,高电平有效。
RESET信号有效时,CPU立即结束现行操作,处于复位状态,初始化所有的内部寄存器。复位后各内部寄存器的状态,当RESET信号由高电平变为低电平时,CPU从FFFF0H地址开始重新启动执行程序。
⑽CLK(clock):时钟信号,输入。
CLK为CPU提供基本的定时脉冲信号。8086 CPU一般使用时钟发生器8284A来产生时钟信号,时钟频率为5MHz~8MHz,占空比为1:3。
⑾VCC电源输入引脚。
8086 CPU采用单一+5V电源供电。
⑿GND:接地引脚。
⒀MN/MX/(minimum/maximum):最小/最大模式输入控制信号。
引脚用来设置8086 CPU的工作模式。当为高电平(接+5V)时,CPU工作在最小模式;当为低电平(接地)时,CPU工作在最大模式。
CPU工作于最小模式时使用的引脚信号
当引脚接高电平时,CPU工作于最小模式。此时,引脚信号24~31的含义及其功能如下。
⑴IO/M/(memory I/O select):存储器、I/O端口选择控制信号。
信号指明当前CPU是选择访问存储器还是访问I/O端口。为高电平时,访问存储器,表示当前要进行CPU与存储器之间的数据传送。为低电平时,访问I/O端口,表示当前要进行CPU与I/O端口之间的数据传送。
⑵WR/(write):写信号,输出,低电平有效。
信号有效时,表明CPU正在执行写总线周期,同时由信号决定是对存储器还是对I/O端口执行写操作。
⑶INTA/(interrupt acknowledge):可屏蔽中断响应信号,输出,低电平有效。
CPU通过信号对外设提出的可屏蔽中断请求做出响应。为低电平时,表示CPU已经响应外设的中断请求,即将执行中断服务程序。
⑷ALE(address lock enable):地址锁存允许信号,输出,高电平有效。
CPU利用ALE信号可以把AD15 ~AD0地址/数据、A19/S6~A16/S3地址/状态线上的地址信息锁存在地址锁存器中。
⑸DT/(data transmit or receive):数据发送/接收信号,输出,三态。
DT/信号用来控制数据传送的方向。DT/为高电平时,CPU发送数据到存储器或I/O端口;DT/为低电平时,CPU接收来自存储器或I/O端口的数据。
⑹DEN/(data enable):数据允许控制信号,输出,三态,低电平有效。
信号用作总线收发器的选通控制信号。当为低电平时,表明CPU进行数据的读/写操作。
⑺HOLD(bus hold request):总线保持请求信号,输入,高电平有效。
在DMA数据传送方式中,由总线控制器8237A发出一个高电平有效的总线请求信号,通过HOLD引脚输入到CPU,请求CPU让出总线控制权。
⑻HLDA(hold acknowledge):总线保持响应信号,输出,高电平有效。
HLDA是与HOLD配合使用的联络信号。在HLDA有效期间,HLDA引脚输出一个高电平有效的响应信号,同时总线将处于浮空状态,CPU让出对总线的控制权,将其交付给申请使用总线的8237A控制器使用,总线使用完后,会使HOLD信号变为低电平,CPU又重新获得对总线的控制权。
CPU工作于最大模式时使用的引脚信号
当引脚接低电平时,CPU工作于最大模式。此时,引脚信号24~31的含义及其功能如下。
⑴S2,S1,S0(status signals):总线周期状态信号,输出,低电平有效。
它们表明当前总线周期所进行的操作类型。,代码组合及其对应操作见表2.3。
表2.3,代码组合及对应操作表
⑵RQ/,GT/ (request/grant):总线请求允许信号输入/总线请求允许输出信号,双向,低电平有效。
该信号用以取代最小模式时的HOLD/HLDA两个信号的功能,是特意为多处理器系统而设计的。当系统中某一部件要求获得总线控制权时,就通过此信号线向8086 CPU发出总线请求信号,若CPU响应总线请求,就通过同一引脚发回响应信号,允许总线请求,表明8086 CPU已放弃对总线的控制权,将总线控制权交给提出总线请求的部件使用。RQ/GT0优先级高于RQ/GT1。
⑶LOCK/(lock)总线封锁信号,输出,低电平有效。
信号有效时,表示此时8086 CPU不允许其他总线部件占用总线。
⑷QS1,QS0(queue status):指令队列状态信号,输出。
QS1和QS0信号的组合可以指示总线接口部件BIU中指令队列的状态,以便其他处理器监视、跟踪指令队列的状态。
温馨提示:答案为网友推荐,仅供参考