概述
1. CPU按照一定的时序关系,通过BIU对外部的存储器或I/O接口完成一次访问,称为CPU执行了一次总线操作。执行一次总线操作的周期称为一个总线周期。在微型计算机系统中,CPU与系统其它部件的信息交互,是通过各种类型的总线操作实现的。总线操作的时序构成了微型计算机运行的基本定时关系。
2. 系统的复位和启动操作
系统的复位和启动操作是通过在RESET信号上施加有效电平使8086进行复位的。复位信号要求4个时钟周期的高电平。撤除复位信号,也就是使RESET由高变低,系统开始启动。
在复位状态,CPU的内部寄存器被置为如下初值:
标志寄存器 清零
CS寄存器 FFFFH
DS寄存器 0000H
SS寄存器 0000H
ES寄存器 0000H
指令指针(IP) 0000H
指令队列 空
其他寄存器 0000H
CPU启动以后,从FFFF0H地址开始取指令并执行指
系统复位的时候代码段寄存器CS和指令指针IP分别被初始化为FFFFH和0000H。所以复位以后CPU从内存的FFFF0H单元执行指令。一般情况下,在FFFF0H处存放一条无条件转移指令,转移到系统程序的入口。这样,系统一旦被启动,便自动进入系统程序。
由于复位时标志寄存器被清零,可屏蔽中断INTR不能被响应。
3. 总线的操作时序
按照数据传输方向,总线操作可以分为总线读操作和总线写操作。总线读操作就是指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#、地址和数据等均变为高阻状态,结束当前总线周期。
最后
以上就是正直草莓为你收集整理的微处理器的总线操作的全部内容,希望文章能够帮你解决微处理器的总线操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复