欢迎来到天天文库
浏览记录
ID:36988013
大小:1.14 MB
页数:64页
时间:2019-05-10
《《嵌入式DMA》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章DMA控制接口第9章DMA控制接口教学重点8237A的工作方式8237A寄存器组的作用8237A寄存器组的编程9.1.1直接存取概述内存与外设间有大量数据交换时,采用中断方式,每传送一次数据,就必须经历中断处理的全部步骤,而且一般需要借助CPU内部的寄存器作为中介DMA方式:不用CPU的寄存器作传数中介,完成存储器和外设间的直接传数,CPU必须将系统总线的控制权让给DMAC9.1.2DMA方式原理方框图DBHOLDCPUHLDAABDMACMEMI/O请求响应DMA的工作流程DMAC发存储器地址在总线上传送数据传送结束?修改地址指针D
2、MA结束,交还总线权CPU允许释放总线,向DMAC发出总线应答信号HLDADMAC向CPU发总线申请HOLDYN9.2可编程DMA控制器8237A每个8237A芯片有4个DMA通道,就是有4个DMA控制器每个DMA通道具有不同的优先权每个DMA通道可以分别允许和禁止每个DMA通道有4种工作方式一次传送的最大长度可达64KB多个8237A芯片可以级连,扩展通道数9.2.18237A的内部结构和引脚内部结构和外部引脚都相对比较复杂应用观点,内部主要由两类寄存器组成通道寄存器控制和状态寄存器1.请求与响应信号DREQ0~DREQ3:DMA通道请求
3、。当外设需要请求DMA服务时,将DREQ信号置成有效电平,并要保持到产生响应信号。HRQ:总线请求。8237A输出有效的HRQ高电平,向CPU申请使用系统总线。HLDA:总线响应。8237A接受来自CPU的响应信号HLDA,取得了总线的控制权。DACK0~DACK3:DMA通道响应。8237A使请求服务的通道产生相应的DMA响应信号。2.DMA传送控制信号A0~A7:地址线。输出低8位存储器地址。DB0~DB7:数据线。输出高8位存储器地址;存贮器与存贮器的传送期间,用于数据传送。ADSTB:地址选通。DMA传送开始时,输出高有效,把在DB
4、0~DB7上输出的高8位地址锁存在外部锁存器中。AEN:地址允许。输出高有效,将锁存的高8位地址送入系统总线,与芯片此时输出的低8位地址组成16位存储器地址。2.DMA传送控制信号(续)MEMR*:存储器读。有效将数据从存储器读出MEMW*:存储器写。有效将数据写入存储器IOR*:I/O读。有效将数据从外设读出IOW*:I/O。有效将数据写入外设READY:准备好。DMA传送的S3下降沿检测到为低时,插入等待状态Sw,直到READY为高才进入第4个时钟周期S4。EOP*:过程结束。DMA传送过程结束,输出一个低有效脉冲。外部输入低脉冲信号,
5、则终结DMA传送。3.处理器接口信号DB0~DB7:数据线。用于8237A与微处理器进行数据交换。A0~A3:地址线。用以选择芯片内部寄存器。CS*:片选。低有效时,微处理器与8237A通过数据线通信,主要完成对8237A的编程。IOR*:I/O读。读取8237A内部寄存器。IOW*:I/O写。写入8237A内部寄存器。CLK:时钟。控制芯片内部操作和数据传输。RESET:复位。使8237A处于初始状态。8237A的两种工作状态8237A具有两种工作状态空闲周期:作为接口电路,受CPU控制的工作状态有效周期:作为DMAC控制DMA传送的工作
6、状态8237A引脚的两种作用与CPU连接(空闲周期)的引脚与外设连接(有效周期)的引脚CLK、RESETA0~A3、CS*、DB0~DB7IOR*、IOW*HRQ、HLDAAEN、ADSTB、READY、EOP*A0~A7、DB0~DB7IOR*、IOW*、MEMR*、MEMW*DREQ0~DREQ3、DACK0~DACK39.2.28237A的工作时序·空闲周期8237A的任一通道都没有DMA请求时8237A由微处理器控制作为一个接口芯片CPU可对8237A编程,或从8237A读取状态8237A采样CS*选片信号,该信号有效,CPU就要对
7、8237A进行读/写操作8237A还采样通道的请求输入信号DREQ,该信号有效,就进入有效周期9.2.28237A的工作时序·有效周期8237A采样到外设有DMA请求,就脱离空闲周期进入有效周期8237A作为系统的主控芯片,控制DMA传送操作DMA传送借用系统总线完成,其控制信号以及工作时序类似CPU总线周期DMA传送时序DB0~DB7DACKADSTBHRQDREQCLKS1S0S0SiSiS3S2S4S3S2SiSiS4HLDAAENA0~A7MEMR(IOR)IOW(MEMW)DMA传送时序S1状态——输出16位存储器地址AEN输出高
8、电平,表示DMA传送S2状态——输出DMA响应信号和控制信号DMA读:MEMR*和IOW*有效DMA写:IOR*和MEMW*有效S3和Sw状态——检测数据传送是否能够完成,决定是
此文档下载收益归作者所有