一次总线操作一般分为哪几个阶段?各阶段主要完成什么工作
发布网友
发布时间:2022-05-02 04:51
我来回答
共1个回答
热心网友
时间:2022-06-28 09:38
按照数据传输方向,总线操作可以分为总线读操作和总线写操作。总线读操作就是指CPU从存储器或I/O端口读取数据,包括取指、存储器读、I/O读,中断应答操作也可以看成特殊的总线读操作;总线写操作是指CPU将数据写入存储器或I/O端口的操作,包括存储器写、I/O写
T1状态
从T1状态开始,M/IO#信号有效,它指出CPU要进行的是存储器访问还是I/O访问。
T1状态为地址状态,处理器发出所要访问的内存或I/O端口的地址。CPU通过地址/状态线A19/S6~A16/S3送出高4位地址,通过地址/数据线AD15~AD0 送出低16位地址。由于8086的20位地址线是和状态与数据线分时复用的,因此,地址信号在T1状态内必须被锁存起来。在T1状态,CPU的地址锁存使能ALE信号有效,ALE为一个正向脉冲,它用来作用于地址锁存器8282,ALE的下降沿将地址信号锁存在8282当中。高位数据总线使能信号BHE#也是一个分时复用信号,在T1状态通过BHE#/S7管脚送出, BHE#信号用作奇地址存储体的选择。通常BHE#和20位地址信号一起,用地址锁存器进行锁存,使它们的状态在整个总线周期有效。
此外,数据总线收发器的数据传输方向控制信号DT/R#也将在T1状态有效,由于本总线周期为读周期,DT/R#端输出低电平,控制数据总线收发器接收数据。
T2状态
在T2状态,地址信号结束,AD15~AD0进入高阻状态,为读入数据作准备;而A19/S7~A16/S3及BHE#/S7上输出状态信息S7~S3。
CPU输出读信号RD#,RD# 信号送到系统中所有的存储器和I/O接口芯片上,和地址线一起,打开选中地址的存储单元或I/O端口的三态门,将数据从存储单元或I/O端口中读出,送到系统的数据总线上。
同时,数据使能信号DEN#变为低电平,控制总线收发器进入有效状态。
T3状态
基本总线周期就是不须插入等待状态的总线周期,由4个T状态组成。在基本总线周期,CPU通常在T3的下降沿锁存出现在数据线上的数据。
T4状态
T4状态为总线周期结束状态,除CPU读写数据以外,M/IO#、地址和数据等均变为高阻状态,结束当前总线周期。