微机原理与接口技术9章(DMA控制器)

上传人:飞****9 文档编号:25778551 上传时间:2021-08-01 格式:PPT 页数:45 大小:684.50KB
收藏 版权申诉 举报 下载
微机原理与接口技术9章(DMA控制器)_第1页
第1页 / 共45页
微机原理与接口技术9章(DMA控制器)_第2页
第2页 / 共45页
微机原理与接口技术9章(DMA控制器)_第3页
第3页 / 共45页
资源描述:

《微机原理与接口技术9章(DMA控制器)》由会员分享,可在线阅读,更多相关《微机原理与接口技术9章(DMA控制器)(45页珍藏版)》请在装配图网上搜索。

1、微机原理与接口技术第九章 DMA控制器 第9章 微型计算机常用接口技术微机系统中多采用大规模集成接口芯片作为接口电路利用这种芯片构成的接口电路,在不改变硬件的情况下,可以通过编程改变其功能、工作方式,使用起来更灵活 第9章 微型计算机常用接口技术主要内容并行通信接口串行通信接口定时器/计数器DMA控制器A/D和D/A转换器 DMA控制器主要内容概述 DMA控制器8 2 3 7 A 概述计算机和外设之间数据传送的控制方式程序控制方式(查询或中断方式)外设数据要经过CPU寄存器中转检查是否传送完毕,在程序中控制,由CPU执行修改内存地址,在程序中控制,由CPU执行 DMA方式内存与高速外设直接交换

2、数据,不需CPU干预,减少中间环节内存地址修改,传送结束报告,由硬件完成 DMA方式用硬件控制代替软件控制,大大提高传输速度;同时增加了系统硬件的复杂性及成本 概述 DMA数据传送过程在DMA传送开始之前,用户可以对DMA控制器编程初始化初始化之后,等待外部设备来申请DMA传送CPU DMAC内存系统总线(2) (3) (4) (5) 外 设(1)(6) (4)(7)(1)DREQ(2)HRQ(3)HLDA(4)DACK及读写信号(5)数据传送(6)EOP(7)撤消HRQ 概述 DMA数据传送过程外设向DMA控制器发出DMA传送请求(DREQ) DMAC如果允许外设的请求,进一步向CPU发出总

3、线请求信号HRQ(连接到CPU的HOLD信号) 概述 DMA数据传送过程 CPU在完成当前总线操作后会立即对DMA请求做出响应 CPU将控制总线、数据总线和地址总线浮空(高阻),让出对总线的控制权 CPU将有效的HLDA信号送到DMAC,来通知DMAC,CPU已经放弃了总线的控制权 DMAC接管总线的控制权,成为系统的主控者 概述 DMA数据传送过程 DMAC向外设发出DMA应答信号DACK,通知该外设成为被选中的DMA传送设备同时,向存储器发出地址信号以及向发送存储器和外设读写控制信号,控制数据按照初始化设定的方向实现外设与内存之间大量数据的快速传送 概述 DMA数据传送过程 DMAC将规定

4、的数据字节传送完之后,撤销总线请求信号HRQ;CPU收到此信号,一方面使HLDA无效,使得DMAC脱开三总线,另一方面CPU又重新控制总线。 概述 DMA数据传送过程注意: DMA传送过程中,CPU失去对总线的控制权,数据不会经过CPU在内存与外设之间进行DMA传送期间,DMAC只是输出地址及控制信号,而数据传送是直接在内存和外设端口之间进行的,并不经过DMAC 概述 DMA传送的形式存储器与外设之间两种高速外设之间存储器的两个区域之间对于内存不同区域之间的DMA传送,则应先用一个DMA存储器读周期将数据从内存的源区域读出,存入到DMAC的内部数据暂存器中,再利用一个DMA存储器写周期将该数据

5、写到内存的目的区域中去 概述 DMAC的功能 DMAC是控制存储器和外设之间直接高速传送数据的硬件 DMAC应具备的功能能接受外设的DMA请求信号,并向外设发出DMA响应信号能向CPU发出总线请求信号,当CPU发出总线保持响应信号后,能够接管对总线的控制权能发出地址信息,对存储器寻址并修改地址能向存储器和外设发出读/写控制信号能控制传输的字节数,并判断传送是否结束能发出DMA结束信号,DMA传送结束后,能释放总线,让CPU重新获得总线控制权 概述 DMAC的两种工作状态 DMAC具有接管和控制系统总线的功能,取代CPU成为系统的主控者在取得总线控制权之前,又和其他I/O接口芯片一样,受CPU的

6、控制总线控制权在DMAC与CPU之间的转移 概述 DMAC的两种工作状态被动态(受控者)接受CPU对它的控制和指挥,如同一般I/O芯片,成为系统的受控者对DMAC进行初始化编程从DMAC读取状态等上电、复位时,自动出于被动状态 概述 DMAC的两种工作状态主动态(主控者)取代CPU获得总线控制权,成为系统的主控者向存储器和外设发号施令存储器地址、外设的DACK信号存储器和外设的读写控制信号 DMA控制器8 2 3 7 A 8 2 3 7 A的基本性能通用可编程的DMA控制器 4个独立的DMA通道,每个通道的DMA请求都可以分别禁止和允许每个通道的DMA请求有不同的优先权每个通道一次传送的最大长

7、度可达6 4 KB可以在存储器和外设之间,也可在存储器的两个区域之间进行数据传送有四种工作方式和四种操作类型允许用 来结束DMA传送或者重新初始化 8 2 3 7可以级联,扩展通道数 EOP DMA控制器8 2 3 7 A 8 2 3 7 A的内部结构及引脚 DMA控制器8 2 3 7 A 8 2 3 7 A的内部结构 4个独立的DMA通道包含的寄存器 1 6位基地址寄存器 1 6位当前地址寄存器 1 6位基字节数寄存器 1 6位当前字节数寄存器自动预置:当一个通道设置成自动预置模式,一旦当前字节数计数器内容减至0时,基地址寄存器内容会自动复制到当前地址寄存器中、基字节数寄存器内容会自动复制到

8、当前字节数计数器中 8位模式寄存器 接收并保存来自于CPU的方式控制字,使本通道能够工作于不同的方式下 DMA控制器8 2 3 7 A 8 2 3 7的内部结构 4个独立的DMA通道共用的寄存器 1个1 6位的地址暂存寄存器 1个1 6位的字节数暂存寄存器 1个8位的状态寄存器 1个8位的控制(命令)寄存器 1个8位的暂存寄存器 1个4位的屏蔽寄存器 1个4位的请求寄存器 DMA控制器8 2 3 7 A 8 2 3 7的引脚 8 2 3 7的数据引线,地址引线都为三态,因而可以接收也可以释放总线特点:即可为主控者,又可为被控者,所以一些引脚设置为双向 A0 A3、 、处于主动态时,8 2 3

9、7提供1 6位地址线 DB0 DB7:高8位;A0 A7:低8位 AEN当8 2 3 7工作在主动态时,输出高电平当8 2 3 7工作在被动态是,输出低电平IOW IOR DMA控制器8 2 3 7 A 8 2 3 7的引脚 DMA请求和应答信号 DREQ0 3:外设向8 2 3 7的DMA请求 DACK0 3:8 2 3 7向外设的DMA应答信号 HRQ:8 2 3 7向CPU的DMA请求信号 HLDA:CPU向8 2 3 7的DMA应答信号 HRQ和HLDA为高电平有效 DREQ和DACK的有效电平可由软件设置 DMA控制器8 2 3 7 A 8 2 3 7的引脚读写控制信号 、 :输出信

10、号,控制对存储器的读写 、 :双向信号输入信号:CPU向8 2 3 7写控制字或读8 2 3 7状态输出信号:8 2 3 7控制对外设的读写IOW IORMEMR MEMW DMA控制器8 2 3 7 A 8 2 3 7的引脚数据地址信号 DB0 DB7:既是CPU向8 2 3 7的数据通道(输入或输出);主动状态时为向存储器输出的高8位地址A8 1 5 A0 7:分两部分 A0 3为双向,由CPU输入时选择8 2 3 7的端口输出时A 0 3和A4 7一起输出存储器低8位地址 ADSTB:正脉冲输出,地址选通信号,将DB0 7中的高8位地址信号锁存到外部锁存器中 AEN:高电平输出,地址输出

11、允许,由它把锁存在外部锁存器中的高8位地址送入系统的地址总线,同时禁止其它系统驱动器使用系统总线 :输入信号,片选信号CS DMA控制器8 2 3 7 A 8 2 3 7的引脚其他 :双向,当字节数计数器减为0时,在上输出一个有效的低电平脉冲,表明DMA传送已经结束;也可接收外部的信号,强行结束8 2 3 7的DMA操作或者重新进行8 2 3 7的初始化 CLK:时钟信号输入,对于标准的8 2 3 7,其输入时钟频率为3 MHz READY:输入,高电平表示传送准备好。可用来在DMA传送周期中插入等待状态 RESET:输入,复位信号。芯片复位时,屏蔽寄存器被置1,其他寄存器均清零,8 2 3

12、7工作于空闲周期SIEOP DMA控制器8 2 3 7 A 8 2 3 7的工作方式单字节传送方式每次DMA操作仅传送一个字节的数据,完成一个字节的数传送后,8 2 3 7将当前地址寄存器的内容加1 (或减1 ),并将当前字节数寄存器的内容减1,每传送完这一个字节,DMAC就将总线控制权交回CPU数据块传送在这种传送方式下,DMAC一旦获得总线控制权,便开始连续传送数据。每传送一个字节,自动修改当前地址及当前字节数寄存器的内容,直到将所有规定的字节全部传送完,或收到外部信号 ,DMAC才结束传送,将总线控制权交给CPU 在这种方式下,CPU可能会很长时间不能获得总线的控制权EOP DMA控制器

13、8 2 3 7 A 8 2 3 7的工作方式请求传送方式和数据块连续传送方式的区别是:当DREQ无效时,释放总线。级联方式当要使用的DMA通道数超过4个时,就需要将两片或多片8 2 3 7 A级联起来。级联模式用于8 2 3 7 A的级联 DMA控制器8 2 3 7 A 8 2 3 7的传输类型读操作(DMA读): 存储器 I/O设备写操作(DMA写) : I/O设备 存储器校验产生时序,地址信号;不产生读/写控制信号,并不进行数据传送;外设可利用某些信号进行校验存储器到存储器通道0提供源地址,通道1提供目的地址及字节数传送由设置通道0的软件请求启动,完成一个字节的传送需两个总线周期,及内部暂

14、存器采用数据块传送方式 DMA控制器8 2 3 7 A 8 2 3 7的优先级方式固定优先级 DREQ0优先级最高 DREQ3优先级最低循环优先级通道的优先级随着DMA服务的结束而发生变化已服务过的通道优先级最低,它下一个通道的优先级变成最高任何通道开始DMA服务。其他通道不能打断该服务的进行 DMA控制器8 2 3 7 A 8 2 3 7的编程模式寄存器的格式 每个通道有一个8位的方式寄存器,但是它们占用同一个端口地址,用来存放方式字依靠方式控制字本身的特征位来区分写入不同的通道 DMA控制器8 2 3 7 A 8 2 3 7的编程控制寄存器的格式 DMA控制器8 2 3 7 A 8 2 3

15、 7的编程请求寄存器的格式 DMA请求可以由硬件发出,也可以由软件发出 用于在软件控制下产生一个DMA请求这种软件请求只用于通道工作在数据块传送方式之下 DMA控制器8 2 3 7 A 8 2 3 7的编程屏蔽寄存器的格式用来禁止或允许通道的DMA请求,当屏蔽位置位时,禁止本通道的DREQ进入若通道没有工作在自动预置方式,则当该通道遇到EOP信号时,它所对应的屏蔽位自动置位屏蔽命令有两种形式单个通道屏蔽寄存器 4个通道屏蔽寄存器 DMA控制器8 2 3 7 A 8 2 3 7的编程屏蔽寄存器的格式屏蔽命令有两种形式单通道屏蔽字主屏蔽字 DMA控制器8 2 3 7 A 8 2 3 7的编程状态寄

16、存器的格式存放各通道的状态,CPU读出其内容后,可得知8 2 3 7的工作状况状态位在复位或被读出后,均被清零 DMA控制器8 2 3 7 A 8 2 3 7的编程临时寄存器 在存储器到存储器的传送方式下,临时寄存器保存从源存储单元读出的数据 主清除命令 主清除命令的功能和RESET信号相同 该命令不需要通过数据总线写入控制字,而是通过8 2 3 7 A直接对地址和控制信号译码,来执行各自的功能 DMA控制器8 2 3 7 A 8 2 3 7的编程清除先/后触发器命令先/后触发器命令是用来控制DMA通道中地址寄存器和字节计数器的初值设置的 当此触发器状态为0时,进行低字节操作。一旦低字节读/写

17、操作完成后,该触发会自动置1,再操作一次又会清0该命令不需要通过数据总线写入控制字,而是通过8 2 3 7 A直接对地址和控制信号译码,来执行各自的功能 DMA控制器8 2 3 7 A 8 2 3 7的编程 8 2 3 7内部寄存器寻址及操作 8 2 3 7的编程步骤1 .输出主清除命令2 .写入基地址寄存器3 .写入基字节计数器4 .写入模式寄存器5 .写入屏蔽寄存器6 .写入控制寄存器 7 .写入请求寄存器(根据需要)例9 -1 1 利用通道0,由外设输入3 2 K字节的一个数据块,传送至内存8 0 0 0 H开始的区域 DMA控制器8 2 3 7 A 8 2 3 7的编程初始化编程注意的

18、事项在对8 2 3 7初始化之前,通常必须对8 2 3 7进行复位操作编程开始时,应发送禁止8 2 3 7工作的命令,或将要编程的通道加以屏蔽所有通道的模式寄存器都要加载向基和现行地址寄存器装入低1 6位地址之外,还要向页面寄存器写入高位地址值 8 2 3 7只能输出A0 A1 5 1 6位地址信号,这对于一般8位CPU构成的系统来说是比较方便的而在8 0 8 6 /8 8系统中,系统的寻址范围是1 MB,地址线 有2 0条,即A0 A1 9为了能够在8 0 8 6 /8 8系统中使用8 2 3 7来实现DMA,需要用硬件提供一组4位的页寄存器 DMA控制器8 2 3 7 A 8 2 3 7的

19、时序它具有两种主要的工作状态(或工作周期),即空闲状态和有效状态,每一个状态又是由若干时钟周期所组成的 SI S4SI S0S0 S1 S2 S3SW SWReady ReadyNot ReadyDREQHRQ HLDA块字节单字节空闲状态请求应答状态DMA操作(数据传输)状态 DMA控制器8 2 3 7 A 8 2 3 7的时序 SI状态(空闲状态)当8 2 3 7 A的任一通道都无DMA请求时,则其处于空闲周期或称为SI状态 空闲周期由一系列的时钟周期组成,在空闲周期中的每一个时钟周期 8 2 3 7 A 采样CS片选信号,该信号有效,CPU就要对 8 2 3 7 A 进行读/写操作 8

20、2 3 7 A 还采样通道的请求输入信号DREQ,该信号有效,就进入有效周期 DMA控制器8 2 3 7 A 8 2 3 7的时序 S0状态(请求状态)如果某一通道有DREQ请求,则8 2 3 7 A将驱动HRQ为高电平,向CPU提出DMA请求,8 2 3 7 A进入S0状态,等待CPU交出总线控制权 S0状态是DMA服务的第一个状态,在这个状态下,8 2 3 7已接收了外设的请求,向CPU发出了DMA请求信号HRQ,但尚未收到CPU对DMA请求的应答信号HLDA经过若干个S0状态后,当8 2 3 7收到来自于CPU的HLDA应答信号后,则进入工作周期,或称为有效周期,8 2 3 7由S0状态

21、进入了S1状态,开始DMA传送 DMA控制器8 2 3 7 A 8 2 3 7的时序在内存与外设之间的DMA传送通常由4个时钟周期组成,即S1、S2、S3、S4 S1 : 更新高8位地址,发出AEN,ADSTB信号; S2: 输出1 6位地址和发DACK寻址I/O设备; S3 : 读周期,发出读控制信号,从内存或I/O设备读取的8位数据防到数据总线上; S 4 : 写周期,发出写控制信号,把保持在数据总线上的数据写到内存或I/O设备当外设速度较慢时,可以插入SW等待周期采用扩展写: 同时发出读/写控制信号采用压缩时序: 去掉S3 状态高8位地址未改变时,省去S1状态 DMA控制器8 2 3 7 A接口设计举例从存储器到外设进行数据传送

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!