DMA技术及DMA控制器.ppt
《DMA技术及DMA控制器.ppt》由会员分享,可在线阅读,更多相关《DMA技术及DMA控制器.ppt(46页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第11章章 DMA技术与技术与DMA控制器控制器 11.1 DMA技术概述技术概述 11.2 可编程可编程DMA控制器控制器8237A 11.3 DMA技术在微机系统中的应用技术在微机系统中的应用 直接存储器存取直接存储器存取11.1 DMA技术概述技术概述 n1 1、DMA DMA 传送方式的实现方法:传送方式的实现方法:n由专用接口芯片DMA控制器(简称DMAC)控制传送过程;n当外设需传送数据时,通过DMAC向CPU发出总线请求;nCPU发出总线响应信号,释放总线;nDMAC接管总线,控制外设、内存之间进行直接数据传送。nDMAC撤消总线请求;nCPU撤消总线响应,并重新接管总线。DM
2、A技术概述技术概述2 2、DMADMA传送方式的特点传送方式的特点外设和内存之间,直接进行数据传送,不通过CPU,传送效率高。适用于在内存与高速外设、内存两个区域之间,或两个高速外设之间进行大批量数据传送。电路结构复杂,硬件开销较大DMA 传送过程示意图传送过程示意图总线总线响应响应总线总线请求请求CPUDMAC内内 存存外外 设设DMA请求请求DREQDMA响应响应DACK总线总线11.1.1 DMAC的基本功能的基本功能 接收接口往DMA控制器发出DMA请求信号后,DMA控制器能向CPU发出总线请求信号HOLD(高电平)。当CPU向DMA发出响应信号HLDA(高电平)以后,DMA能接管对总
3、线的控制,进入DMA方式。能向地址总线发出内存地址信息,对其进行寻址及修改地址指针。DMAC的基本功能的基本功能能向存储器或I/O接口发相应的读写控制信号。能决定传送字节数,并判断DMA传送是否结束。DMA过程结束,能向CPU发出DMA结束信号,HOLD变低,将总线控制权还给CPU,CPU恢复正常工作。11.1.2 DMAC的一般结构的一般结构 图图9 9.1 1 单单通通道道D DM MA AC C的的一一般般结结构构及及其其与与I I/O O接接口口的的连连接接地址总线地址译码器DMADMA控制器控制器计数结束信号(可作为中断请求信号)字节计数寄存器地址寄存器状态寄存器控制寄存器总线回答总
4、线请求控制总线数据总线外设DMA请求DMA响应中断请求数据输出寄存器数据输入寄存器状态寄存器控制寄存器I/O接口控制总线数据总线地址总线11.1.3 DMAC的工作方式的工作方式 1、单字节传输方式单字节传输方式:在单字节传输方式下,DMA控制器每次请求总线只传送一个字节数据,传送完后即释放总线控制权。2、块块传传输输方方式式(也也称称组组传传输输方方式式):块传输方式是指DMA控制器每次请求总线连续传送一个数据块,待整个数据块全部传送完成后再释放总线控制权。n3、请求传输方式:请求传输方式:此方式与块传输方式基本类似,不同的是每传输完一个字节,DMA控制器都要检测由I/O接口发来的DMA请求
5、信号是否仍然有效,如果该信号仍有效,则继续进行DMA传输;否则,就暂停传输,交还总线控制权给CPU,直至DMA请求信号再次变为有效,数据块传输则从刚才暂停的那一点继续进行下去。11.1.4 DMA操作过程操作过程 (以输入数据块为例)(以输入数据块为例)n若若从从外外设设往往内内存存输输入入一一个个数数据据块块(输输入入过过程程),在在单字节传输方式下,主要工作过程为:单字节传输方式下,主要工作过程为:n 从I/O接口向DMA控制器发送DMA请求信号;n DMA控制器向CPU发总线请求信号,当得到CPU送来的总线允许信号后,DMA控制器获得总线控制权;n DMA控制器将其地址寄存器的内容送到地
6、址总线上;n DMA控制器往I/O接口发送DMA响应信号,并接着发出I/O接口的读信号,使I/O接口把数据送到数据总线上;DMA操作过程操作过程n DMA控制器发出端口读信号和存储器写信号,使数据传送到由地址总线的地址所指向的内存单元;n 地址寄存器加1;n 字节计数器减1;n 如果字节计数寄存器的值不为零,则返回第步,否则进入第步;n DMA控制器释放总线;内存把数据送数据总线内存8086和总线控制逻辑HOLDHLDA发送总线请求控制总线总线允许地址总线数据总线接口 DMA控制器接口准备就绪,发送DMA请求发端口读和内存写信号I/O设备DMA请求得到确认32516489DMA控制器把地址送地
7、址总线撤消总线请求8086收回总线控制权7图图11.2 以以DMA方方式式输输出出一一个个字字节节数数据据的的工工作作过过程程 DMADMA控制器控制器数据数据端口端口状态状态/控制控制端口端口地址寄存器地址寄存器计数器计数器控制控制/状态状态寄存器寄存器C CP PU U存存储储器器HOLDHOLDHLDAHLDA数据缓冲数据缓冲寄存器寄存器DMADMA请求请求触发器触发器输入设备输入设备DMADMA请求请求DMADMA响应响应ReadyReadyDMADMA控制器工作原理图控制器工作原理图1 111.2 可编程可编程DMA控制器控制器8237A n11.2.1 8237A的主要特性的主要特
8、性 n1具有四个独立的DMA通道,每个通道都具有64K的存贮器寻址能力,即一次传送的最大长度为64K字节。n2可实现内存与外设之间的高速大批量数据传送,也可实现内存两个不同区域之间的高速数据传送。n3每个通道的DMA请求均可分别允许或禁止,且四个通道的DMA请求的优先权可由软件设置为固定的或旋转的。8237A的主要特性的主要特性n4具有单字节传送、数据块传送、请求传送和级联传送四种工作方式。n5可用级联方式扩展DMA通道数目。n6DMA传送结束信号可由内部计数产生,也可由外部输入提供。n7单一的+5V电源,40个引脚双列直插式封装。n8采用5MHz时钟,传送速率可达1.6M字节/秒。n9823
9、7可以级连,任意扩展通道数。11.2.2 8237A的工作原理的工作原理 n18237A的编程结构的编程结构 n编程结构见下页图n内部有大量寄存器,内部寄存器的功能、端口地址等信息 参见表11.1.图图11.3 8237 A的的编编程程结结构构 82C37A内部逻辑框图内部逻辑框图表表11.1 8237A内部寄存器的功能、端口地址等信息内部寄存器的功能、端口地址等信息 几点几点说明:说明:n请求触发器每通道一位,四个通道的请求触发器占用同一个端口地址,实际上构成一个4位的寄存器,屏蔽触发器也是一样。n控制寄存器和状态寄存器共用一个端口地址,一个为只读,一个为只写。n写屏蔽字时有两种方式:某一通
10、道的屏蔽字,应写到1010端口;四个通道屏蔽字,则写入1111端口。几点说明:几点说明:n各通道的基地址寄存器和当前地址寄存器的端口地址低四位是:0000 0通道0010 1通道0100 2通道0110 3通道n各通道的基字节数寄存器和当前字节计数器的端口地址低四位是:0001 0通道0011 1通道0101 2通道0111 3通道 几点说明:几点说明:n8237A内有一个先先/后后触触发发器器,占1位,当其为0时对16位寄存器的低8位进行读/写操作,当其为1时,则对高8位进行读/写操作,且每读或写一次,先/后触发器的状态就自动翻转一次。8237A复位后,先/后触发器为0n8237A除可用RE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DMA 技术 控制器
限制150内