文档介绍:第8章 DMA控制器
内容
DMA控制器的编程结构;
DMA控制器的作为主模块和从模块时的差别
8237A的工作模式;
8237A的时序;
结合例子了解8237A的编程方法。
1
DMAC在系统中
CPU
系统总线
DMAC
存储器
设备
接口
2
DMAC在系统中(从)
CPU
系统总线
DMAC
存储器
设备
接口
3
DMAC在系统中(主)
CPU
系统总线
DMAC
存储器
设备
接口
4
DMA控制器一般结构
5
8237A原理
4个通道
控制寄存器
状态寄存器
每个通道
模式寄存器
16位地址寄存器
16位数据字节计数器
引脚?
6
DMA工作时(输入)
DMAC
MEMORY
外设接口
设备
(磁盘驱动器)
DB
AB(A0-3, A4-7,DB0-7)
IOR*
MEMW*
每次传输一个字节
字节计数器-1
地址寄存器+1/-1
直到计数器减到0,DMA结束
7
DMA工作时(输出)
DMAC
MEMORY
外设接口
设备
(磁盘驱动器)
DB
AB(A0-3, A4-7,DB0-7)
IOW*
MEMR*
每次传输一个字节
字节计数器-1
地址寄存器+1/-1
直到计数器减到0,DMA结束
8
8237A工作
从模块
A3-A0:内部寄存器
CS*
IOR*, IOW*
AEN=0
DB7~0:数据总线
主模块
输出地址
低位:A7-A0
高位:DB7-DB0
AEN=1
IOR*, IOW*, MEMR*, MEMW*(输出)
9
工作模式字
单字节传输模式
块传输模式
请求传输模式
级联传输模式
10