- 1、本文档共107页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基地址寄存器 它们是16位地址寄存器,存放DMA传送的内存首址,在初始化时,由CPU以先低字节后高字节顺序写入。传送过程中基地址寄存器的内容不变。其作用是在自动预置时,将它的内容重新装人当前地址寄存器。只能写,不能读。 当前地址寄存器 它们是16位地址寄存器,存放DMA传送过程中的内存地址,在每次传送后地址自动增1(或减1),它的初值与基地址寄存器的内容相同,并且是两者由CPU同时写入同一端口的。在自动预置时,EOP信号使其内容重新置为基地址值。可读可写。 基字节数计数器 它们是16位,存放DMA传送的总字节数,在初始化时,由CPU以先低字节后高字节顺序写入。传送过程中基字节数计数器的内容不变,当自动预置时,将它的内容重新装入当前字节数计数器。 在写基字节数计数器时应注意,当前字节计数器从初值减到0,还要再传输一个字节,又从0减到FFFFH时,才发出EOP信号结束DMA过程。所以,在初始化编程时,若欲传送N字节,则写基字节计数器的字节总数应为N-1。只能写,不能读。 当前字节计数器 它们是16位,存放DMA传送过程中没有传送完的字节数,在每次传送之后,字节数计数器减1,当它的值减为零时,便产生EOP,表示字节数传送完毕。它的初值与基字节数计数器的内容相同,并且两者由CPU同时写入同一端口的。自动预置时,EOP信号使当前字节数计数器的内容重新预置为基计数值。可读可写。 屏蔽寄存器 屏蔽寄存器用来禁止或允许通道的DMA请求。当屏蔽位置位时,禁止本通道的DREQ进入。若通道编程为不自动预置,则当该通道遇到EOP信号时,它所对应的屏蔽位置位。屏蔽命令有两种格式,即写单通道屏蔽的屏蔽字和写4个通道屏蔽位的屏蔽字。 单个通道屏蔽寄存器。单个通道屏蔽寄存器,每次只能屏蔽一个通道,通道号由D1、DO位决定。通道号选定后,若D2置1,则禁止该通道请求DREQ;若D2置0,则开通请求DREQ。该寄存器只能写,不能读。其格式为: 所以,它的作用是作为开通或屏蔽各通道的DMA请求。编程时,要使用哪个通道,就应该使该通道的屏蔽位置0。 例如,如果要使8237A-5的通道2开通,只需用程序向它写入02H代码。如果要使通道2屏蔽,则写入06H。 4个通道屏蔽寄存器。4个通道屏蔽寄存器可同时屏蔽4个通道(但对由软件设定的DMA请求位不能屏蔽)。若用程序使寄存器的低4位全部置1,则禁止所有的DMA请求,直到清屏蔽寄存器命令(软命令)的执行,或置0低4位,才允许DMA请求。该寄存器只能写,不能读。其格式为: 例:为了在每次软盘读/写操作时,进行DMA初始化,都必须开放通道2,以便响应软盘的DMA请求,可采用下述两种方法之一来实现。 使用单个通道屏蔽寄存器。 MOV AL ;最低3位=010,开放通道2 OUT 0AH,AL ;写单个通道屏蔽寄存器 使用4个通道屏蔽寄存器。 MOV AL ;最低4位=1011,仅开放通道2 OUT 0FH, AL ;写四个通道屏蔽寄存器 另外,8237A-5还设有一个开放4个通道的清屏蔽寄存器命令,其端口地址是OEH,属于软命令,将在后面介绍。 请求寄存器 DMA请求可由I/O设备发出,也可由软件产生。请求寄存器就是用于由软件来启动DMA请求的,存储器到存储器传送就是利用软件DREQ来启动的。这种软件请求DMA传输操作必须是块字节传输方式,并且在传送结束后,EOP信号会清除相应的请求位,因此,每执行一次软件请求DMA传送,都要对请求寄存器编程一次,如同硬件DREQ请求信号一样。RESET信号清除整个请求寄存器。软件请求位是不可屏蔽的。该寄存器只能写,不能读, 请求寄存器其格式如下: 请求使用的通道号由最低2位D1 DO的编码决定。D2是请求使用位,D2=l,请求使用该通道;D2=0,不请求。 例如,若用软件请求使用通道1进行DMA传送,则向请求寄存器写入05H代码即可。 命令寄存器 用来控制8237A-5的操作,其内容由CPU写入,由复位信号RESET和总清除命令清除。该寄存器只能写,不能读,各命令位的功能如下: (1)具有4个独立DMA通道,每个通道均有64KB寻 址与计数能力 (2)具有级联功能 (3)具有存储器到存储器的传送功能 (4)DMA请求可由硬件或软件产生 (5)能完成3种类型操作 DMA读操作 存
文档评论(0)