欢迎来到天天文库
浏览记录
ID:59199822
大小:421.00 KB
页数:44页
时间:2020-09-26
《第13讲第7章嵌入式系统DMA控制 ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《嵌入式系统原理与开发》第14讲南京大学计算机系俞建新主讲2008年春季2008年11月20日1南京大学计算机系第7章中断、DMA和时间管理本章主要介绍以下内容:嵌入式中断控制器嵌入式DMA控制器嵌入式时钟电源管理器嵌入式实时时钟嵌入式脉宽调制定时器7.2嵌入式系统DMA控制在嵌入式系统I/O操作中,中断方式(包括查询方式)是广泛使用的操作方式。其特点是需要通过CPU执行ISR来控制整个数据的传送,输入输出都要以CPU的寄存器为中转站。以中断方式数据传输为例,每一次响应中断,CPU都要保护主程序断点的工作现场,而后执行ISR。数
2、据传输操作完毕后,还要恢复断点处的工作现场。因此在某些高频度I/O操作的嵌入式应用场合,执行中断方式的输入输出会导致系统频繁切换工作现场,CPU运行效率不高。DMA方式特点DMA方式是高速I/O接口方式,其特点有两个:一是它可以不通过CPU直接完成输入输出设备与存储器间的数据交换,在数据传送期间不会影响CPU的其它工作;二是CPU带宽可以与总线带宽一样,延时仅依赖于硬件,能提高系统中数据的传输速率。显然利用这种方式不但数据传送速度快,而且CPU具有了同时进行多种实时操作的能力,增强了系统的实时性。DMAC控制DMA传输在DMA传
3、输方式下,外设通过DMA控制器(DMAC)向CPU提出接管总线控制权的总线使用请求。CPU在当前总线周期结束后,响应DMA请求,把总线控制权交给DMA控制器。于是在DMAC的控制下,外设和存储器挪用CPU的一个总线周期,直接进行数据交换,而无需CPU进行数据传输控制干预。DMA传输结束后,再将总线使用权交换给CPU。32位嵌入式处理器都具有DMA功能在高速大数据量传输场合,DMA方式由于系统开销少,传输效率,比中断方式优越。因此,现代通用计算机都具备DMA传输功能。例如,PC机的芯片组中包含有8237A芯片,它是DMA控制器,可
4、以控制4个DMA通道。然而,嵌入式系统并非都拥有DMA功能。8位嵌入式处理器一般不具备DMA数据传输功能。16位和32位嵌入式处理器一般都具有DMA功能。例如:ARM、68K、PowerPC和MIPS处理器。几款主流嵌入式处理器的DMA控制器简表DMA控制器属性80186S3C44B0XS3C2410XPXA255PXA270BF533MPC850DMA通道数44416321216数据线宽88/16/328/16/328/16/328/16/32161/8/16/32控制寄存器/每通道5/通道7/通道9/通道4/通道4/通道嵌
5、入式DMA控制器内建在芯片内部DMA控制包括DMA通道初始化、DMA数据传输、DMA结束时的中断服务例程处理。对于通用计算机而言,DMA控制逻辑由CPU和DMA控制接口逻辑芯片共同组成。嵌入式系统的DMA控制器内建在处理器芯片内部。将DMA方式应用于嵌入式系统要考虑到与一般微机系统不同的应用特点,它对可靠性、成本、体积、功耗等有更严格的要求。因此,在进行含有高速数据处理的嵌入式开发时,需要精心地选择处理器。现在学习S3C44B0X处理器的DMA控制器。S3C44B0X的DMA控制器(简称DMAC)拥有4个通道,其中有两个通道称为
6、ZDMA,另外两个通道称为BDMA。7.2.1S3C44B0X的DMA控制器ZDMA通道称为通用DMA三星公司的数据手册上用这个称呼实际上是通用DMA,GeneralDMA,它被连到SSB(三星系统总线,SamsungSystemBus)总线上。BDMA通道称为桥DMABridgeDMA,是SSB和SPB(三星外设总线,SamsungPeripheralBus)之间的接口层,相当于一个桥。ZDMA和BDMA都可以由指令启动,也可以有内部外设和外部请求引脚来请求启动。S3C44B0X的DMA通道ZDMA通道用于在存储器到存储器、存
7、储器到I/O存储器(固定目的存储位置)、I/O装置到存储器之间传输数据。BDMA通道只能在连到SPB(三星外设总线)上的I/O外设(如UART,IIS和SIO)与存储器之间传输数据。ZDMA通道的特点S3C44B0X的ZDMA控制器框图S3C44B0X的ZDMA通道有一个4字的FIFO缓冲来支持4字突发DMA传输,而BDMA不支持突发DMA传输。BDMA不支持4字突发DMA传输的原因是它没有临时缓存,而且连接在SPB上的外设速度较慢。因此存储器之间的传输数据最好使用ZDMA通道。ZDMA通道的用途S3C44B0X的BDMA控制器
8、框图有四类外部DMA请求/应答模式。它们是握手模式、单步模式、连续模式和手动模式。这些模式都定义了DMA请求和应答信号是怎样和这些模式相互关联的。虽然ZDMA和BDMA都可以支持外部的触发操作,但是这些模式只适用于ZDMA,不适用于BDMA。我们介绍其中的握手模
此文档下载收益归作者所有