- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课24讲教案主讲人许文丹.doc
微机原理 课 24 讲 教 案 主讲人 许文丹
直接存储器存取DMA(2)
§6-3 8237A的初始化编程
§6-3-1 8237的寻址及连接
8237内部共占用16个I/O端口地址,由地址码的A3~A0控制,恰好对应从0000至1111的16种组合。表6-2给出了端口地址的分配关系。需要说明以下两点:
地址0H~7H(0000~0111)分配给4个通道的地址初值寄存器和地址计数器、
字节数值寄存器和字节计数器。每个寄存器都是16位,无论是写入还是读出都需要两次。内部逻辑中有个字节指向触发器F接成计数方式工作。F触发器为0,读、写时指向低位字节;F为1,读、写时指向高位字节。每次读、写后F改变状态。表6-2还指出,对地址0CH(1100)执行输出指令(AL寄存器可为任意值),将使F触发器初始化为0。
16个I/O端口地址中,除分配给内部编址寄存器外,还有几个地址分配用于形成软件命令。这些命令是:对8237总清等效于外接RESET信号,占用地址1101;对请求寄存器清0,占用地址1110;还有已经提到的对字节指向触发器F的清0。这3种命令都是用输出指令实施的。指令中AL寄存器的内容不起作用,可为任意值。
表6-2 8237内的地址分配
A3A2A1A0 寄存器说明 0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
通道0
写:地址初值寄存器和地址计数器
读:地址计数器
通道0
写:字节数初值寄存器和字节数计数器
读:字节数计数器
通道1:操作时对应的寄存器与地址0000同
通道1:操作时对应的寄存器与地址0001同
通道2:操作时对应的寄存器与地址0000同
通道2:操作时对应的寄存器与地址0001同
通道3:操作时对应的寄存器与地址0000同
通道3:操作时对应的寄存器与地址0001同
写:控制寄存器,读:状态寄存器
写:请求寄存器,读:非法
写:发管理一位的屏蔽字,读:非法
写:方式寄存器,读:非法
写:清除F触发器,读:非法
写:8237总清,读:暂存寄存器
写:清除屏蔽寄存器,读:非法
写:发管理4位的屏蔽字,读:非法
§6-3-2 8237A的初始化
8237A的初始化编程:
命令字写入控制寄存器。在初始化时必须设置寄存器,以确定其工作时序、优先级方式、DREP和DACK的有效电平及是否允许工作等。
在PC系列机中,当BIOS初始化时,已将通道的控制寄存器设定为00H ,禁止存储器到存储器的传送,允许读、写传送、正常时序,固定优先级,不扩展写信号,DREQ高电平有效,DACK低电平有效。因此在PC微机系统中,如果借用DMA CH1进行DMA传送,则在初始化编程时,不应再向控制寄存器写入新的命令字。
屏蔽字写入屏蔽寄存器。当某通道正在进行初始化编程时,接收到DMA请求,可能本初始化结束,8237A就开始进行DMA传送,从而导致出错。因此,初始化编程时,必须先屏蔽末初始化的通道,在初始化结束后再解除该通道的屏蔽。
方式字写入方式寄存寄器。通道规定传送类型及工作方式。
置0先/后触发器。对口地址DMA+0CH执行一条输出指令,从而产生一个写命令,即可置“0”先/后触发器,为始化基地址寄存器和基本字节寄存器作准备。
写入基地址和基本字节寄存器。把DMA操作所设计到的存储区首址或末址写入地址寄存器,把要传送的字节数减1,写入基本字节寄存器。这几个寄都是16位的,因此写入要分两次进行;先写低8位,先写高8位。
解除屏蔽。初始化空间通道的屏蔽寄存器写入D2~D0=0××的命令,置0相应通道的屏蔽解发器,准备响应DMA请求。
写入请求寄存器。如果采用软件DMA请求,在完成通道 初始化之后,在程序的适当位置向请求寄存置器写入D2~D0=1××命令,即可使相应通道进行DMA传送。
§6-4 DMA的应用举例
1.8237A在IBM PC /AT系统中的应用
286微机系统使用两片8237A级连,如图6-11所示。它提供了7个DMA通道,通道0~3支持8位数据传送,通道5~7支持16位数据传送。PC/AT有专门的动态RAM刷新电路,硬盘驱动器,通道4作为两个DMA控制器的级联,其佘均保留备用。
PC/AT DMAC寄存器I/O端口地址见表6-3所示。
表6-3 PC/AT DMAC寄存器I/O端口地址
8237A内部寄存器口地址 DMAC1 DMAC2
您可能关注的文档
- 建筑施工与管理专业(专科)教学计划.doc
- 建筑材料2材料的基本性质.ppt
- 建筑物防雷设计规范(GB50057.doc
- 建筑装饰工程技术专业人才培养模式改革方案、措施和实施情况.doc
- 建築資訊模型之法律議題初探.doc
- 建议批准的认证认可(验收)项目及限制范围.doc
- 建设安全的校园网环境.ppt
- 建设工程施工现场生活区设置和管理规范-北京-北京市质量技术监督局.doc
- 建设最佳科学城市——从厄勒海峡大桥建成后引出的区域科技发展课题.docx
- 建设综合勘察研究设计院.doc
- 2025年内蒙古通辽市直属国有企业招聘117人笔试模拟试题及参考答案详解.docx
- 2025年安徽芜湖职业技术学院高层次人才招聘笔试模拟试题及答案详解一套.docx
- 2025年嘉峪关市事业单位引进50名高层次和急需紧缺人才(含教育系统)笔试模拟试题带答案详解.docx
- 2025年吉林白城市镇赉县事业单位面向上半年应征入伍高校毕业生招聘4人笔试模拟试题及答案详解1套.docx
- 2024年湖南省工业和信息化厅所属事业单位湖南省工业技师学院招聘10人笔试模拟试题附答案详解.docx
- 2024年江苏省连云港市东海县教育局所属学校赴高校招聘新教师50人笔试模拟试题及参考答案详解.docx
- 江苏南通市海门区工商业联合会招聘政府购买服务人员笔试模拟试题带答案详解.docx
- 2025年内蒙古乌海市事业单位第二批人才引进36人笔试模拟试题及参考答案详解.docx
- 2025年山东商河县事业单位招聘初级综合类岗位88人笔试模拟试题及完整答案详解1套.docx
- 2025年浙江金华兰溪市中医院招聘编外工作人员7人笔试模拟试题参考答案详解.docx
文档评论(0)