- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 可编程DMA控制器8237A课件
2. 8237A的传送类型 8237A主要完成三种不同的传送: (1)I/O接口到存储器的传送 (2)存储器到I/O接口的传送 (3)存储器到存储器的传送 3. 8237A的优先级处理 8237A有两种优先级方案可供编程选择: (1)固定优先级:规定每个通道的优先级是固定的,即通道0的优先级最高,依次降低,通道3的优先级最低。 (2)循环优先级:规定刚被服务的通道的优先级为最低,依次循环。这样,就可以保证4个通道都有机会被服务。若3个通道已被服务,则剩下的通道一定是优先级最高的。 4. 8237A的传送速率 一般情况下,8237A进行一次DMA传送需要4个时钟周期(不包括插入的等待周期)。例如,PC机的时钟周期约为210ns,则一次DMA传送需要210 ns×4+210 ns=1050 ns,多加一个210 ns是考虑到认为插入一个等待周期的缘故。 另外,8237A为了提高传输速率,可以在压缩定时状态下工作。在压缩定时下,每一个DMA总线周期仅用2个时钟周期来实现,从而大大地提高了传送速率。 2. 8237A内部寄存器 (1)当前地址寄存器 (2)当前字节计数寄存器 (3)基地址寄存器 (4)基字节计数寄存器 (5)工作方式寄存器 (6)命令寄存器 (7)状态寄存器 (8) 请求寄存器 (9)屏蔽寄存器 (10)暂存寄存器 (11)软件命令 【例8.1】已知某系统采用一片8237A来设计DMA传输电路,给定8237A的基地址为00H。利用通道0从磁盘将一个1K字节的数据块传送到内存06000H开始的区域中,每传送一个字节,地址增1,采用数据块连续传送方式,禁止自动预置,外设的DMA请求信号DREQ和响应信号DACK均为高电平有效。 对8237A的初始化程序如下: DMA EQU 00H OUT DMA+0DH,AL MOV AX,6000H OUT DMA+00H,AL MOV AL,AH OUT DMA+00H,AL MOV AX,0400H DEC AX OUT DMA+01H,AL MOV AL,AH OUT DMA+01H,AL 写入方式字:数据块传送,地址增量,禁止自动预置,写传送,选择通道 MOV AL OUT DMA+0BH,AL 写入屏蔽字:通道0屏蔽位清0 MOV AL,00H OUT DMA+0AH,AL 写入命令字:DACK和DREQ为高电平,固定优先级,非存储器间传送 MOV AL OUT DMA+08H,AL 写入请求字:通道0产生请求,用软件启动8237A MOV AL,04H OUT DMA+09H,AL 对8237A的初始化及测试程序如下。 初始化程序段: MOV AL, 04 ;4个DMA请求信号 MOV DX, DMA+8 ;DMA+8为控制寄存器的端口号 OUT DX, AL ;输出控制命令,关闭8237A MOV AL, 00 MOV DX, DMA+0DH ;DMA+0DH为主清除命令端口号 OUT DX, AL ;发送主清除命令 MOV DX, DMA ;DMA为通道0的地址寄存器对应端口号 MOV CX,0004 MOV AL, 0FFH OUT DX, AL ;写入地址低位 OUT DX, AL ;写入地址高位 INC DX INC DX ;指向下一通道 LOOP WRITE ;使4个通道地址寄存器均为FFFFH MOV DX, DMA+0BH ;DMA+0BH为模式寄存器的端口 MOV AL,58H OUT DX, AL MOV AL, 42H OUT DX, AL ;设置通道2模式 MOV AL, 43H OUT DX, AL ;设置通道3模式 MOV DX, DMA+8 ;DMA+8为控制寄存器的端口号 MOV AL, 0 OUT DX, AL MOV DX, DMA+0AH ;DMA+0AH为屏蔽寄存器的端口号 OUT DX, AL ;通道0去除屏蔽 MOV AL, 01 OUT DX, AL ;通道2去除屏蔽 MOV AL, 01 OUT DX, AL ;通道1去除屏蔽 MOV AL, 03 OUT DX, AL ;通道3去除屏蔽 对通道1~3的地址寄存器的值进行测试: MOV DX, DMA+2 ;DMA+2为通道1地址寄存器端口 MOV CX, 0003 READ:IN AL, DX ;读字节
您可能关注的文档
- 经济法 反不正当竞争法课件.ppt
- 地产家庭日-青岛安吉美国际传媒课件.ppt
- 苏教版必修三、四名句默写课件.ppt
- 计算题2013课件.ppt
- 模态命题及其推理课件.ppt
- 我国集料的技术指标课件.ppt
- 规制自由裁量权课件.ppt
- 计算机基础课程体系课件.ppt
- 诗歌鉴赏专题(含答案)课件.ppt
- 第1部分 必修2 Unit 4课件.ppt
- SAP_财务操作手册.docx
- 2021年公路水运助理试验检测师《道路工程》真题及答案解析(试题与答案分开版).pdf
- 2020年一级建造师《建设工程项目管理》真题及答案解析.pdf
- 2023年二级建造师《建设工程施工管理》考点速记手册.pdf
- 2023年二级建造师《市政公用工程管理与实务》考点速记手册.pdf
- 港口公司发展战略规划.docx
- 2022年二级建造师《机电工程管理与实务》真题(二)及答案解析.pdf
- 2022年二级建造师《建设工程施工管理》真题及答案解析.pdf
- 2020年中安《其他安全(不包括消防安全)技术》真题及答案解析.pdf
- 2021年中安《建筑施工安全技术》真题及答案解析.pdf
文档评论(0)