首页 嵌入式课件第14讲_第7章嵌入式系统DMA控制 44页1

嵌入式课件第14讲_第7章嵌入式系统DMA控制 44页1

举报
开通vip

嵌入式课件第14讲_第7章嵌入式系统DMA控制 44页1第7章中断、DMA和时间管理本章主要介绍以下内容:嵌入式中断控制器嵌入式DMA控制器嵌入式时钟电源管理器嵌入式实时时钟嵌入式脉宽调制定时器7.2嵌入式系统DMA控制在嵌入式系统I/O操作中,中断方式(包括查询方式)是广泛使用的操作方式。其特点是需要通过CPU执行ISR来控制整个数据的传送,输入输出都要以CPU的寄存器为中转站。以中断方式数据传输为例,每一次响应中断,CPU都要保护主程序断点的工作现场,而后执行ISR。数据传输操作完毕后,还要恢复断点处的工作现场。因此在某些高频度I/O操作的嵌入式应用场合,执行中断方...

嵌入式课件第14讲_第7章嵌入式系统DMA控制 44页1
第7章中断、DMA和时间管理本章主要介绍以下 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 :嵌入式中断控制器嵌入式DMA控制器嵌入式时钟电源管理器嵌入式实时时钟嵌入式脉宽调制定时器7.2嵌入式系统DMA控制在嵌入式系统I/O操作中,中断方式(包括查询方式)是广泛使用的操作方式。其特点是需要通过CPU执行ISR来控制整个数据的传送,输入输出都要以CPU的寄存器为中转站。以中断方式数据传输为例,每一次响应中断,CPU都要保护主程序断点的工作现场,而后执行ISR。数据传输操作完毕后,还要恢复断点处的工作现场。因此在某些高频度I/O操作的嵌入式应用场合,执行中断方式的输入输出会导致系统频繁切换工作现场,CPU运行效率不高。DMA方式特点DMA方式是高速I/O接口方式,其特点有两个:一是它可以不通过CPU直接完成输入输出设备与存储器间的数据交换,在数据传送期间不会影响CPU的其它工作;二是CPU带宽可以与总线带宽一样,延时仅依赖于硬件,能提高系统中数据的传输速率。显然利用这种方式不但数据传送速度快,而且CPU具有了同时进行多种实时操作的能力,增强了系统的实时性。DMAC控制DMA传输在DMA传输方式下,外设通过DMA控制器(DMAC)向CPU提出接管总线控制权的总线使用请求。CPU在当前总线周期结束后,响应DMA请求,把总线控制权交给DMA控制器。于是在DMAC的控制下,外设和存储器挪用CPU的一个总线周期,直接进行数据交换,而无需CPU进行数据传输控制干预。DMA传输结束后,再将总线使用权交换给CPU。32位嵌入式处理器都具有DMA功能在高速大数据量传输场合,DMA方式由于系统开销少,传输效率,比中断方式优越。因此,现代通用计算机都具备DMA传输功能。例如,PC机的芯片组中包含有8237A芯片,它是DMA控制器,可以控制4个DMA通道。然而,嵌入式系统并非都拥有DMA功能。8位嵌入式处理器一般不具备DMA数据传输功能。16位和32位嵌入式处理器一般都具有DMA功能。例如:ARM、68K、PowerPC和MIPS处理器。几款主流嵌入式处理器的DMA控制器简 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 4/通道4/通道9/通道7/通道5/通道控制寄存器/每通道1/8/16/32168/16/328/16/328/16/328/16/328数据线宽16123216444DMA通道数MPC850BF533PXA270PXA255S3C2410XS3C44B0X80186DMA控制器属性嵌入式DMA控制器内建在芯片内部DMA控制包括DMA通道初始化、DMA数据传输、DMA结束时的中断服务例程处理。对于通用计算机而言,DMA控制逻辑由CPU和DMA控制接口逻辑芯片共同组成。嵌入式系统的DMA控制器内建在处理器芯片内部。将DMA方式应用于嵌入式系统要考虑到与一般微机系统不同的应用特点,它对可靠性、成本、体积、功耗等有更严格的要求。因此,在进行含有高速数据处理的嵌入式开发时,需要精心地选择处理器。现在学习S3C44B0X处理器的DMA控制器。S3C44B0X的DMA控制器(简称DMAC)拥有4个通道,其中有两个通道称为ZDMA,另外两个通道称为BDMA。7.2.1S3C44B0X的DMA控制器ZDMA通道称为通用DMA三星公司的数据手册上用这个称呼实际上是通用DMA,GeneralDMA,它被连到SSB(三星系统总线,SamsungSystemBus)总线上。BDMA通道称为桥DMABridgeDMA,是SSB和SPB(三星外设总线,SamsungPeripheralBus)之间的接口层,相当于一个桥。ZDMA和BDMA都可以由指令启动,也可以有内部外设和外部请求引脚来请求启动。S3C44B0X的DMA通道ZDMA通道用于在存储器到存储器、存储器到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控制器框图有四类外部DMA请求/应答模式。它们是握手模式、单步模式、连续模式和手动模式。这些模式都定义了DMA请求和应答信号是怎样和这些模式相互关联的。虽然ZDMA和BDMA都可以支持外部的触发操作,但是这些模式只适用于ZDMA,不适用于BDMA。我们介绍其中的握手模式和单步模式。外部DMA请求/应答模式在握手模式下,DMA控制器对一个单独的DMA请求产生一个单独的DMA应答信息。图7-5示出了DMA操作的握手模式。在这样的DMA操作期间,读写周期不可分割。因此,总线控制器不向其他的总线拥有者分配总线的使用权。由nXDREQ(外部DMA请求引脚)产生的DMA请求表示需要传输一个字节、半个字或一个字。而握手模式需要DMA为每一个数据传输发送请求。在激活nXDACK后,nXDREQ信号就可以被释放了,在此之后nXDACK失活后还可以再次发送请求。握手模式S3C44B0X处理器DMA请求应答时序图单步模式是指有两个DMA应答周期分别指示DMA的读周期和写周期。因为总线的使用权可以在读写期间转交给其它的总线拥有者,单步模式通常用在测试和调试的应用中。单步模式当DMA请求信号变为低电平后,如果不存在其它更高优先级的总线请求,总线控制器以降低总线应答信号电平的方式,指示为DMA操作分配总线。在第一个DMA应答信号的低电压期间应该是一个DMA读操作周期。在读操作周期之后,DMA应答信号电平将重新升高,指示读操作周期的结束。同时,如果此时请求信号仍然是低电压状态的话,就会在DMA应答信号上升沿触发下一个DMA写周期。如果当应答信号升高后,请求信号也在高电平状态,则下一个写周期就会被延迟,直到一个新的DMA请求信号被激活。单步模式(续)S3C44B0X的DMA传输模式有三种:单元传输模式、块传输模式和飞速(On-The-Fly)模式。现在分别说明。单元传输模式对每一个DMA请求响应一对DMA读/写周期。DMA传输模式块传输模式的工作原理如下:在连续地执行4字节的DMA读周期之后再连续地进行4字节的DMA写周期。如果使用块传输模式,则传输的数据大小应该是16字节的倍数。换句话说,最小的传输尺寸是16个字节,也就是4个字。因为DMA计数器定义了以字节作为基本单元计数,按照计数定义16个字节DMA传输就是4个字节传输。如果传输的数据大小或DMA计数不是16的倍数(比如16、32、48、64等等),DMA就不能够传输完整的数据。假设要传输100字节(DMA计数是100),6×16=96字节可以被传输,剩下的4字节不能被传输。因为DMA操作将在96个字节传输完成之后停止。当程序员选用块传输DMA模式时应当意识到这个特点。块传输模式飞速模式的工作原理如下:ZDMA具有飞速(On-the-fly)读写模式。该模式的最大特性是读写周期并行(不可分割),其具体含义是当DMA读/写数据时,一个固定地址外部设备会根据DMA的应答信号(nXDACK0/1)写/读数据。然而在非飞速模式下,DMA通道在写数据之前要读数据。如果外部设备能够支持飞速模式,则数据传输速率将会提高一倍。外部设备能够支持飞速模式的标志是能够根据DMA应答信号读写数据。飞速模式飞速模式的特点ZDMA独有ZDMA与传统DMA的最大不同点。借助飞速模式ZDMA可以减少在外部存储器和外部可寻址的外设之间DMA操作的周期数。S3C44B0X一共有4个DMA通道,所以有4个通道属性寄存器。其中ZDCON0和ZDCON1是ZDMA通道的两个属性控制器,BDCON0和BDCON1是BDMA的两个属性控制器。7.2.2S3C44B0X的DMAC相关控制寄存器S3C44B0X处理器DMA通道属性控制寄存器一览表0x00BDMA1通道属性寄存器R/W0x01F80020BDCON10x00BDMA0通道属性寄存器R/W0x01F80000BDCON0BDMA0x00ZDMA1通道属性寄存器R/W0x01E80020ZDCON10x00ZDMA0通道属性寄存器R/W0x01E80000ZDCON0ZDMA初值描述读写属性地址寄存器标识符类别ZDMA通道属性寄存器的控制位定义00软件命令00:没有命令。在写01,10,11后,CMD位被自动清除,nXDREQ允许01:由软件启动DMA操作,软件启动功能可以用在连续模式下。10:停止DMA操作,但nXDREQ仍允许11:取消DMA操作[1:0]CMD00忽略/允许外部DMA请求(nXDREQ)00:允许Other:禁止[3:2]QDS00DMA通道的状态(只读)00:就绪01:未中止计数10:中止计数11:不可用在DMA的传输计数开始之前,STE处于准备好状态[5:4]STE00保留[7:6]INT初始值描述位ZDCONn不论是ZDMA通道还是BDMA通道,每个通道都有6个传输控制寄存器。每个通道的6个传输控制寄存器分别是:⒈初始源地址寄存器,⒉初始目标地址寄存器,⒊初始传输控制和传输字节/半字/字计数控制器,⒋当前源地址寄存器,⒌当前目标地址寄存器,⒍当前传输控制和传输字节/半字/字计数控制器。DMA通道具有6个传输控制寄存器DMA传输控制寄存器的初值与属性24个DMA传输控制寄存器的初值全部为0x0。其中的12个初始控制寄存器的读写属性是可读可写,另外12个当前控制寄存器是只读属性。现在给出一个在S3C44B0X处理器开发板上实现的DMA传输范例程序。μCOS-II操作系统支持下运行采用中断结束方式。7.2.3DMA应用程序举例Cache无效地址当S3C44B0X处理器处于DMA传输时,内存读写不受CPU控制,此时CPU无法维护Cache的一致性,所以需要将目的地址空间设为Cache无效地址。在S3C44B0X中最小的Cache无效地址为4KB(称为块),所以不需要低12位地址,为此执行目标地址右移12位。Cache无效目的地址空间确定之后,该存储区的数据不被Cache映射,从而满足了Cache数据的一致性。两个Cache无效区S3C44B0X的Cache无效区可以有两个,分别是Cache无效区0和Cache无效区1。这两个无效区的起始地址和结束地址分别由NCACHBE0和NCACHBE1寄存器加以控制。本范例程序使用NCACHBE0寄存器控制目标数据块的Cache无效区起始地址和结束地址。主体函数dma_copy的最前面几行完成该Cache无效区的设定。参看程序清单7-8,教材第239页注意:在ARM300-S实验平台有两种DMA实验代码,它们的功能一样,都是完成内存数据块的拷贝传送。但是DMA结束方式不同:一种是中断结束方式,另外一种是查询结束方式。DMA应用程序的范例代码详解S3C44B0处理器DMA程序注释-1Main函数清单S3C44B0处理器DMA程序注释-2dma_copy函数清单S3C44B0处理器DMA程序注释-3//中断处理函数voidhandler(void){chard[21];inti;LCD_printf("\n");for(i=0;i<=strlen(des);i+=20){strcpy(d,des+i,20);d[20]='\0';LCD_printf("%s\n",d);}free(des);}S3C44B0处理器DMA程序注释-4Cache无效访问区控制寄存器S3C44B0处理器DMA程序注释-5ZDISRC0控制寄存器功能与位定义S3C44B0处理器DMA程序注释-6ZDIDES0控制寄存器功能与位定义S3C44B0处理器DMA程序注释-7填入ZDICNT0的数值:101001011100{20个0}填入ZDICNT0[bit20]的数值=1;enableDMAS3C44B0处理器DMA程序注释-8将0x05=0b00000101写入ZDCON0课堂演示使用ARM300-S实验平台演示DMA实验程序用DMA完成内存数据块(96个字符)的拷贝传送阅读源代码观看实验效果1,查询结束方式2,中断结束方式第14讲重点嵌入式DMA控制器的基本特点S3C44B0X的DMA通道S3C44B0X的DMA控制器S3C44B0X教学实验平台上的DMA应用程序举例第14讲复习题、思考题对于嵌入式系统并非都拥有DMA功能,请你给出支持这个观点的例子或者反驳这个观点的例子。S3C44B0X拥有什么样的DMA通道?试描述S3C44B0X的DMA通道特性。在S3C44B0X上传输数据应该使用哪一种DMA通道?S3C44B0X的DMA通道有哪几种外部DMA请求/应答模式?S3C44B0X的DMA传输模式有哪三种?为什么在DMA传输时要将目标地址设为Cache无效地址?
本文档为【嵌入式课件第14讲_第7章嵌入式系统DMA控制 44页1】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥25.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
正方体
暂无简介~
格式:ppt
大小:389KB
软件:PowerPoint
页数:42
分类:
上传时间:2022-05-11
浏览量:3