微型计算机技术(I)

微型计算机技术(I)

ID:40447397

大小:1.58 MB

页数:89页

时间:2019-08-02

微型计算机技术(I)_第1页
微型计算机技术(I)_第2页
微型计算机技术(I)_第3页
微型计算机技术(I)_第4页
微型计算机技术(I)_第5页
资源描述:

《微型计算机技术(I)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章7.2DMA控制接口教学重点8237A的工作方式8237A寄存器组的作用8237A寄存器组的编程7.2.1DMA控制器的一般结构和概要一、DMA概述为了提高数据传送的速率,人们提出了直接存储器存取(DMA)的数据传送控制方式,即在一定时间段内,由DMA控制器取代CPU,获得总线控制权,来实现内存与外设或者内存的不同区域之间大量数据的快速传送。二、DMA数据传送的工作过程①外设向DMAC发出DMA传送请求。②DMAC通过连接到CPU的HOLD信号向CPU提出DMA请求。③CPU在完成当前总线操作后会立即对DMA请求做出响应。CPU的响应包括两个方面:一方

2、面,CPU将控制总线、数据总线和地址总线浮空,即放弃对这些总线的控制权;另一方面,CPU将有效的HLDA信号加到DMAC上,用此来通知DMAC,CPU已经放弃了总线的控制权。二、DMA数据传送的工作过程(续)⑤待CPU将总线浮空,即放弃了总线控制权后,由DMAC接管系统总线的控制权,并向外设送出DMA的应答信号。⑥由DMAC送出地址信号和控制信号,实现外设与内存或内存不同区域之间大量数据的快速传送。⑦DMAC将规定的数据字节传送完之后,通过向CPU发HOLD信号,撤消对CPU的DMA请求。CPU收到此信号,一方面使HLDA无效,另一方面又重新开始控制总线,实

3、现正常取指令、分析指令、执行指令的操作。需要注意的是,在内存与外设之间进行DMA传送期间,DMAC控制器只是输出地址及控制信号,而数据传送是直接在内存和外设端口之间进行的,并不经过DMAC;对于内存不同区域之间的DMA传送,则应先用一个DMA存储器读周期将数据从内存的源区域读出,存入到DMAC的内部数据暂存器中,再利用一个DMA存储器写周期将该数据写到内存的目的区域中去。二、DMA数据传送的工作过程(续)7.2.2DMA控制器8237A的原理控制寄存器状态寄存器模式寄存器当前地址寄存器当前字节寄存器基本地址寄存器基本字节寄存器通道0通道1通道2通道3请求触发

4、器屏蔽触发器一、DMA控制器8237A的编程结构含有4个相互独立的通道,每个通道有独立的地址寄存器和字节数寄存器,而控制寄存器、状态寄存器为四个通道所共用。每个DMA通道具有不同的优先权每个DMA通道可以分别允许和禁止每个DMA通道有4种工作方式,分别为:单字节传送、数据块传送、请求传送、级连方式。通道中地址寄存器的长度为16位,一次传送的最大长度可达64KB多个8237A芯片可以级连,扩展通道数二、8237A的内部组成和结构1.四个独立的DMA通道每个通道都有一个16位的基地址寄存器,一个16位的基字节数计数器,一个16位的当前地址寄存器和一个16位的当前

5、字节数计数器及一个8位的方式寄存器,方式寄存器接收并保存来自于CPU的方式控制字,使本通道能够工作于不同的方式下;2.定时及控制逻辑电路对在DMA请求服务之前,CPU编程对给定的命令字和方式控制字进行译码,以确定DMA的工作方式,并控制产生所需要的定时信号;3.优先级编码逻辑对通道进行优先级编码,确定在同时接收到不同通道的DMA请求时,能够确定相应的先后次序。通道的优先级可以通过编程确定为是固定的或者是旋转的。4.共用寄存器除了每个通道中的寄存器之外,整个芯片还有一些共用的的寄存器:1个16位的地址暂存寄存器1个16位的字节数暂存寄存器1个8位的状态寄存器1

6、个8位的命令寄存器1个8位的暂存寄存器,1个4位的屏蔽寄存器1个4位的请求寄存器寄存器名长度(Bit)数量寄存器名长度(Bit)数量基地址寄存器基字节数寄存器当前地址寄存器当前字节数寄存器地址暂存寄存器字节数暂存寄存器161616161616444411状态寄存器命令寄存器暂存寄存器方式寄存器屏蔽寄存器请求寄存器8886441114118237的内部寄存器5.8237的三态缓冲器8237的数据引线,地址引线都有三态缓冲器,因而可以接也可以释放总线。三、8237的外部结构8237是具有40个引脚的双列直插式集成电路芯片首先分类展开外部引脚1.请求与响应信号DR

7、EQ0~DREQ3:DMA通道请求。当外设需要请求DMA服务时,将DREQ信号置成有效电平,并要保持到产生响应信号。对应于四个独立的通道,DREQ的有效电平可以通过编程来加以确定,优先级可以固定,也可以旋转。HRQ:总线请求。8237A输出有效的HRQ高电平,向CPU申请使用系统总线。HLDA:总线响应。8237A接受来自CPU的响应信号HLDA,取得了总线的控制权。DACK0~DACK3:DMA通道响应。8237A使请求服务的通道产生相应的DMA响应信号。2.DMA传送控制信号A0~A7:地址线。输出低8位存储器地址。DB0~DB7:数据线。输出高8位存储

8、器地址;存贮器与存贮器的传送期间,用于数据传送。AD

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。