下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、dsp中dma操作的无阻塞请求实现dma在应用中至关重要,本文给出了dma操作非堵塞的哀求办法,针对tms320c620x,实现了与csl中dat接口全都的驱动模块qdat,并指出了edma相关的高级特征。在dsp中,dma控制器实际是一个外设,与其他集成的串口、主机接口、片外内存接口等都在系统外设上,也与其他外设一样有一组相关的控制/状态/数据寄存器,cpu可以拜访。十分重要的一点是,dma通道能够用于内存之间的数据传送。这里内存都是统一编址的,包括:片上内存,程序和数据分立;接在emif上的片外内存,如sdram;外设的寄存器也都是内存映射的(memory-mapped),所以dma通道也
2、可以用于外设和内存之间,举行外设数据接收与发送。在dsp的处理模型中,全部数据应位于片上供cpu处理,不鼓舞cpu挺直拜访片外数据,由于cpu拜访片外资源的时光较长,周期数也不确定,对于实时性和确定性不利。片上内存有时也能够配置成为缓存(cache),缓存控制器会按照一定策略、用法dma方式切换片外的数据进出缓存,终于使得用户能够在片上拜访数据,这个过程对用户是透亮的。正由于缓存的机制是透亮的,所以也是很难控制的。比如,一段调用频率很高的代码很可能被不常用的部分清出缓存,由于它们映射相同,但随后又很快被调入,这样会造成局部的效率降低。所以,假如能够明确把握程序流或数据流的运转特征,不用法缓存模
3、式,用户通过dma举行自定义的调度,可能提高效率。有的处理器不具备缓存控制器,不支持片上内存作为缓存,如c6205的片上数据内存就不能够配置为缓存,所以主动用法dma移动数据不行避开。dsp的dma功能普通也都较为强大,ti c6000系列的dma通道支持1d-1d、1d-2d、2d-1d以及常用的2d-2d数据传送,对dma的合理用法可能替代相当的编程效果,如排序、采样或裁剪。ti的csl(chip support library,芯片支持库)对于用法dma给出了很好的支持,有特地的dma模块,便于对dma的各个寄存器举行控制。还有一个dat模块,用法dma举行内存数据传送,函数dat_co
4、py()和dat_fill()就像常用的内存操作memcpy()、memset()一样,只需要在api接口指出源地址、目的地址和长度,或者其他的维数属性等即可,不需要再去管详细的寄存器,十分便利。视频处理实例分析dat模块易用,但由于是在csl中,所以只能将dma控制器挺直的功能表达出来。对于灰度图像处理(先不考虑将算法处理后的结果传回片外的状况),在下面的处理框架中,每次dma执行操作时,cpu在前台还可以做算法处理任务。.task=dat_copy(.);/启动头一个dat任务.while(not_finished)dat_wait(task); /本次task完成task=dat_cop
5、y(.); /启动下一次的dmapingpong_alg_process(.); /对本次传送的数据处理当视频为4:2:0 yuv图像(planar模式)序列,需要处理某一区域时,事实上是在相同时机处理y、u、v三块数据,通常它们并不延续,也就是说,将会同时用法三个dma操作。这里可能可以同时启动多条dma通道,但有一些限制:1. 有的处理器支持同时启动的dma通道数有限,有些dsp有4条通道,但寄存器集只能完整地支持两条;2. 因为分享总线和某些接口,同时工作的dma通道数过多将可能增强拜访矛盾,降低系统性能;3. 有时多条通道又必需同时用法,比如系统视频、音频采集进入的数据必需占用自立的通
6、道。所以,上面的任务能够尽量用法一个dma通道完成,不失普通性,dat模块的全部操作事实上是在一条打开的通道上完成的。那么,对于yuv图像,处理程序框架类似上面,可能如下,.tasky = dat_copy(.);tasku = dat_copy(.);taskv = dat_copy(.);.while(not_finished)dat_wait(tasky);dat_wait(tasku);dat_wait(taskv);tasky = dat_copy(.);tasku = dat_copy(.);taskv = dat_copy(.);yuv_pingpong_process(.);这
7、时问题浮现了:c620x的dma通道一次只能接受一个传送哀求,也就是说,每次哀求必需等到该通道空闲时才可能真正提交上去,这样tasky和tasku在后台操作时,前台无法举行tasku和taskv的启动,即事实上前台没有什么处理任务可做,铺张了效率。而这三个dat任务绑定在一起,启动时机很难拆开。明显,假如能够允许dma哀求延续地提交,将提高效率。dma通道哀求非堵塞提交的办法把dma通道看作一个单处理单元,每个dma操作作为一个任务,这就形成了一个单处理多任务的模型,任务调度就是fifo。不妨定义:1. dma通道哀求上下文是一个数据结构,它包含启动一次dma传送所需要设定的寄存器参数集合,如
8、源、目的、长度、index寄存器(维数)等等;2. dma通道哀求上下文队列,一个dma哀求上下文的队列用以缓存dma哀求;dma通道的用法和哀求非堵塞的提交应有以下两条原则:a. 应用程序的用法dma通道的办法:提交dma通道哀求(无堵塞),获得此次任务的id;在需要用法某任务的目标内存时,应检查该id任务状态直到完成;假如完成,即可举行相应的处理。b. 无堵塞提交dma通道哀求的实现:标记此次dma传送任务正在举行;假如dma通道空闲,设置寄存器启动dma操作,标记dma通道正在工作;假如dma通道正在工作,则将此次dma哀求插入上下文队列。3. dma中断服务程序(注:dat模块不用法i
9、sr,只是查询对应标记,确定dma传送是否完成):标记此次dma传送任务完成;假如dma哀求上下文队列为空,标记dma通道空闲;假如dma哀求上下文队列非空,则从队列中取出头一个dma哀求上下文,用以设置相应的寄存器启动dma操作。qdat:一个非堵塞的dma模块实现在ti c620x dsp上,一个非堵塞的dma模块qdat按照以上原理得以实现。qdat的api与dat模块的基本全都,优点是用法上述的yuv图像处理应用程序中,不会发生dma哀求堵塞;qdat与dat模块功能相像,但属于驱动程序层次的实现,基于:csl的dma模块;csl的irq模块;以及dsp/bios的que模块。不过实现
10、非常简便、轻快。该模块自立于应用和算法,已经在基于ti c620x dsp上的多个项目中用法,效果非常抱负,特殊是由于qdat任务中的dma操作经过了串行化,也大大降低了在emif上拜访内存时的矛盾。emda的先进特征这些项目向新的ti dm642媒体处理器上移植时,以上的操作将利用edma的先进特征, 由于ti c6x1x 和 c64x dsp开头用法edma,值得注重的是,edma通道控制器(edmacc)有特地的pram(parameter ram)来缓存dma哀求参数,edma大事参数表中有标记以及link address,用来指示本次dma传送结束后, 是否有新的dma哀求参数需要重载入操作寄存器; 假如有,link address所指就是新的参数在pram的位置。 明显由于这样的链表机制,用法该通道延续两次传送之间无需中断处理程序(cpu)介入队列管理,效率将提高。 对于常见的内存数据传送,如dat操作普通用法qdma, 它由cpu挺直将传送哀求(tr)提交给传送控制器(edmatc),tc中有四个优先级队列,每个tr都将进入其对应(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深夜活动策划方案范文(3篇)
- 2026及未来5年中国钴合金行业市场现状调查及未来趋势研判报告
- 淘宝新品活动方案策划(3篇)
- 高端活动报名方案策划(3篇)
- 中医护理经络学习与实践
- 妇产科护理效果评价
- 口腔技能教学评价术语模型构建
- 变暖背景下虫媒传染病的卫生应急响应策略
- 2026秋招:万丰奥特真题及答案
- 三公开两承诺一监督制度
- 福建省龙岩市2025-2026学年高二上学期期末教学质量检查语文试卷(含答案)
- 2026年物流师物流管理与供应链优化模拟试题
- 2026春统编版小学道德与法治二年级下册每课教学设计(含目录)新教材
- 2025~2026学年江苏省南京市七年级上学期期末数学模拟试卷
- 工业机器人设备营销课件
- 2025版《中国胰腺癌整合诊治指南》
- 2025年中国科协所属单位招聘笔试真题
- 烹饪(中西式面点)专业工学一体化人才培养方案(五年制高级工)
- CCC知识培训-课件
- 小企业会计准则科目表
- GB/T 8165-2008不锈钢复合钢板和钢带
评论
0/150
提交评论