首先8086是以一个字节单元来寻址的所以我们必须一个地址选通2个存储单元。
___
用BHE和A0来决定是读/写一个字还是字节。
___
BHE A0 功能 总线使用情况
0 0 以偶地址开始读/写一个字 AD15---AD0(16位)
0 1 以奇地址开始读/写一个字节 AD15---AD8(8位)
1 0 以偶地址开始读/写一个字节 AD7----AD0(8位)
1 1 无效
___
注意:1)T1时BHE有效 且低有效.
2)你这里是从20031H开始读所以8086还是要2个总线周期才能读完如果是20030H那么一个总线周期便可读完。
接下来是整个读的总线周期
(1)CLK:(时钟信号)基本的读周期由4个T周期组成----T1、T2、T3、T4。当选中的外设,存储器储存速度较慢时会在T3和T4之间插入若干个等待周期TW。(这里我们假设用4个T就读完)
(2)A19/S6---A16/S3:在T1周期输出CPU要读的存储单元或I/O端口的地址高4位
___ T2到T4输出状态信息S6---S3。
(3)BHE/S7:T1时为低(理由上面以说明)表示奇地址存储体的体选信号
T2到T4输出高
(4)AD15--AD0 :T1周期输出CPU要读的存储存单元或I/O端口的地址A15--A0
T2为高阻态,T3到T4周期送数据
(5)ALE:T1周期地址锁存有效信号。
__
(6)RD 读信号T2周期输出低电平送到被选中的存储器或I/O接口。
__
(7)M/IO:在整个总线周期都有效, 高电平为选中存储器,低电平为选中I/O设备。