英飞凌
直播中

刘满贵

7年用户 1460经验值
私信 关注

FX3的多重DMA可处理的最大带宽是多少?

假设有 2 个插座,FX3 的多重 DMA 可处理的最大带宽是多少? 我正试图通过使用 2 个插座和 3 个 16KB 缓冲区的多 DMA 设置来流式传输未压缩的 1080p60 视频,但遇到了 DMA_RDY 在 FPGA 视频数据写入时不能及时断言的问题。 我可以毫无问题地运行 1080p30。 如果我将缓冲区增加到 32KB,我就可以毫无问题地传输 1080p60 的数据流。

回帖(1)

刘艳

2024-7-3 16:57:25
FX3的最大DMA带宽取决于多个因素,包括时钟速度、DMA通道数和使用的DMA模式。FX3的最大理论DMA带宽为1.25GB/s,但实际带宽可能会因系统配置和使用模式而有所不同。
假设您有两个FX3插座,最大DMA带宽将翻倍,达到2.5GB/s。然而,这仍然是理论上的,实际带宽可能会因DMA设置和系统配置而有所不同。
关于DMA_RDY问题,当DMA引擎无法跟上数据速率时,它可能无法及时断言。增加缓冲区大小可以帮助缓解这个问题,因为它为DMA引擎提供了更多的数据来处理,减少了数据丢失或溢出的风险。
您所描述的增加缓冲区大小到32KB并能够无问题地流式传输1080p60视频表明DMA引擎正在努力跟上较小缓冲区的数据速率。增加缓冲区大小可以帮助解决这个问题,但可能不是最佳解决方案。
您可以尝试的其他解决方案包括:
1.增加DMA传输大小:通过增加DMA传输大小,您可以减少所需的DMA传输次数,这可以帮助提高性能并减少DMA_RDY问题。
2.优化数据路径:确保数据路径针对最低延迟和最大吞吐量进行了优化。这可能涉及调整管道深度、缓冲区大小和其他参数。
3.使用BRAM:如果可用,您可以使用块RAM(BRAM)在FPGA中存储视频数据,这可以帮助减少数据丢失或溢出的风险。
4.调整时钟频率:如果可能,增加FX3或FPGA的时钟频率可以帮助提高DMA引擎的性能并减少DMA_RDY问题。
总的来说,DMA_RDY问题可能是由多种因素引起的,可能需要多种方法来解决。通过优化DMA设置、数据路径和时钟频率,您应该能够提高性能并减少DMA_RDY问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分