DMA控制器8237A
8237A的编程结构
8237A的工作模式和模式寄存器
工作模式
单字节传输模式
每传输一个字节,8237A释放系统总线,从而CPU获得系统总线
块传输模式
字节计数器为0时,8237A才释放系统总线
请求传输模式
与块传输模式类似,不过每传输一个字节,8237A都 对DREQ引脚进行检测,低电平暂停传输,高电平继续传输
级联传输模式
模式寄存器
8237A的工作时序
S
I
S_I
SI:无DMA请求
S
0
S_0
S0:总线请求状态
S
1
S_1
S1:锁存地址A15~A8
S
2
S_2
S2:修改地址A7~A0
S
3
S_3
S3:A15~A8送到地址总线
S
4
S_4
S4:对传输模式进行测试
8237A的控制寄存器和状态寄存器
控制寄存器的格式
8237A的控制寄存器的设置使用
- 8237A的启动和停止
- 实现内存到内存的传输
- 建立扩展写信号功能
- 解决优先级问题
- DREQ信号和DACK信号的极性选择
状态寄存器的格式
请求触发器的格式
单屏蔽寄存器的格式
全屏蔽寄存器的格式
8237A各寄存器对应的端口地址
清除先/后触发器
在操作基地址寄存器和基本字节计数器时,使装入的顺序为先低字节后高字节
暂存器
8bit,存储器到存储器传送方式中,暂时存放源存储器读出的数据
基地址寄存器和当前地址寄存器共用一个地址
基本字节计数器和当前字节计数器共用一个地址
起始地址A3=A2=A1=A0=0
8237A的编程和使用
略