资源描述
单击此处编辑母版文本样式,第七章 DMA控制器,*,本章主要内容:,1,第七章 DMA控制器,7.1 8237A DMA,控制器,一、概述,1.8237A,是可编程,DMA,控制器,2.,每个,8237A,有,4,个独立的,DMA,通道,优先权不同,3.,每个,DMA,通道有,4,种工作方式,4.,一次传送的最大长度可达,64KB,5.,多个,8237A,芯片可以级连,扩展通道数,2,第七章 DMA控制器,二、,8237A,的工作周期,1.,空闲周期,2.,有效周期,3,第七章 DMA控制器,三、,8237A,的引脚,分三部分,1.,控制信号:,(,1,),CLK,:时钟,控制芯片内部操作和数据传输。,(,2,),CS,:片选。,(,3,),RESET,:,复位,(,4,),READY,:,准备好。,4,第七章 DMA控制器,(,5,),AEN,:地址允许。,(,6,),ADSTB,:地址选通。,(,7,),MEMR,:存储器读。,(,8,),MEMW,:存储器写。,(,9,),IOR,:,I/O,读。,(,10,),IOW,:,I/O,写。,(,11,),EOP,:过程结束。,5,第七章 DMA控制器,2.,请求和响应信号,(,1,),DREQ0,DREQ3,:,DMA,通道请求。,(,2,),HRQ,:,总线请求。,(,3,),HLDA,:总线响应。,(,4,),DACK0,DACK3,:,DMA,通道响应。,6,第七章 DMA控制器,3.,数据和地址信号,(,1,),A0,A7,:,地址线。,(,2,),DB0,DB7,:,数据线。,四、,8237A,的传送时序,7,第七章 DMA控制器,DB,0,DB,7,DACK,ADSTB,HRQ,DREQ,CLK,S,1,S,0,S,0,S,i,S,i,S,3,S,2,S,4,S,3,S,2,S,i,S,i,S,4,HLDA,AEN,A,0,A,7,MEMR(IOR),IOW(MEMW),8,第七章 DMA控制器,五、,8237A,的工作方式,1.,单字节传送方式,2.,数据块传送方式,3.,请求传送方式,4.,级连方式,六、,8237A,的传送类型,(,1,),DMA,读,(,2,),DMA,写(,3,),DMA,检验,9,第七章 DMA控制器,七、,8237A,的寄存器组,8237A,共有,10,种内部寄存器,,对它们的操作有时需要配合,3,个软件命令。,8237A,的“,软件命令,”:,(,1,)不需要通过数据总线写入控制字。,(,2,)直接由地址和控制信号译码实现。,10,第七章 DMA控制器,1.,现行地址寄存器,2.,现行字节数寄存器,3.,基地址寄存器,4.,基字节数寄存器,5.,模式寄存器,11,第七章 DMA控制器,方式字格式,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,00,请求模式,01,单字节模式,10,数据块模式,11,级联模式,0,地址增量(加,1,),1,地址减量(减,1,),0,禁止自动初始化,1,允许自动初始化,00DMA,校验,01DMA,写,10DMA,读,11,非法,若,D7D6,11,00,通道,0,01,通道,1,10,通道,2,11,通道,3,12,第七章 DMA控制器,6.,命令寄存器,命令字格式,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,0 DACK,低有效,1 DACK,高有效,0 DREQ,高有效,1 DREQ,低有效,0,滞后写,1,扩展写,若,D3,1,0,固定优先权,1,循环优先权,0,正常时序,1,压缩时序,若,D0,1,0,允许,DMAC,工作,1,禁止,DMAC,工作,0,允许通道,0,地址改变,1,禁止通道,0,地址改变,若,D0,0,0,禁止存储器之间传送,1,允许存储器之间传送,13,第七章 DMA控制器,7.,请求寄存器,请求字格式,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,任意,0,复位,1,置位,00,通道,0,01,通道,1,10,通道,2,11,通道,3,14,第七章 DMA控制器,8.,屏蔽寄存器,单通道屏蔽字格式,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,任意,0,清屏蔽位,1,置屏蔽位,00,通道,0,01,通道,1,10,通道,2,11,通道,3,15,第七章 DMA控制器,主屏蔽字格式,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,任意,Di,0,清通道,I,屏蔽位,Di,1,置通道,I,屏蔽位,16,第七章 DMA控制器,9.,状态寄存器,10.,临时寄存器,17,第七章 DMA控制器,八、,8237A,的软件命令,1.,清除高,/,低触发器软件命令,A,3,A,2,A,1,A,0,1100,,,使高,/,低触发器清零,2.,主清除命令,A,3,A,2,A,1,A,0,1101,,,使高,/,低触发器清零,3.,清屏蔽寄存器命令,A,3,A,2,A,1,A,0,1110,,,使,4,个屏蔽位都清零,(允许,DMA,请求),18,第七章 DMA控制器,19,第七章 DMA控制器,
展开阅读全文