EDMA缓冲区乒乓操作的处理

 

StarterWare音频示例应用程序使用EDMA进行音频数据传输和接收操作。 EDMA传输相关的音频数据缓冲区是:

  • <b>4发送缓冲区</b>- TX buffer-0TX buffer-1TX buffer-2,和一个循环缓冲区。
  • <b>3接收缓冲区</b>-RX buffer-0RX buffer-1,和RX buffer-2

EDMA param集被编程为接收RX缓冲区中的数据并从TX缓冲区发送数据。 当一个RX缓冲区被填满时,内容被复制到TX缓冲区,然后它被发送。 如果没有收到数据,则用于传输的EDMA param集被编程为从循环缓冲器传输,该循环缓冲器是不包含有效音频数据的空缓冲器。

EDMA的参数初始化

McASP发送/接收状态机退出复位之前,EDMA param集被初始化。 RX设置的主param设置为0,为TX设置的主param设置为1.在主param设置过期后,数据发送/接收继续到链接的paRAM集。 由于EDMA将被链接的param设置为主param集并将其用于数据传输,所以被

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]中的代码片段展示了在DSP6678上使用EDMA进行数据传输的部分代码。在这段代码中,首先打开指定的QDMA通道,并将其映射到指定的参数入口。然后获取参数入口句柄,并使用paramSetup信息配置参数入口。最后,使能指定的通道进行数据传输。 引用\[2\]中提到了Parameter RAM(PaRAM),它用于维护通道和重载参数集的参数设置条目。需要将PaRAM写入所需通道和链接参数集的传输上下文。 引用\[3\]中提到了在使用EDMA进行数据传输时可能遇到的缓存一致性问题。由于EDMA是独立于CPU的功能模块,CPU并不知道EDMA在搬运数据。因此,可能会出现缓存中的数据与DDR中的数据不一致的情况。为了解决这个问题,可以使用Cache_Invalid函数将DDR对应的Cache置为无效,或者使用Cache回写函数将Cache中的数据回写到DDR中,以保持DDR和Cache的一致性。 综上所述,DSP6678上的EDMA是一种用于数据传输的功能模块。通过配置参数和映射通道,可以实现高效的数据传输。在使用EDMA时,需要注意缓存一致性问题,以确保数据的正确性。 #### 引用[.reference_title] - *1* [C6678学习-EDMA](https://blog.csdn.net/g360250466/article/details/130473874)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [DSP篇--C6678功能调试系列之EDMA3调试](https://blog.csdn.net/nanke_yh/article/details/128156123)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [TMS320C6678 EDMA传输配置](https://blog.csdn.net/HSU0911/article/details/117984837)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值