工具与软件:
您好!
我需要将数据从 msram 传输到 PRU DRAM 或 PRU 共享 DRAM 或反之。 后台、我对 pru0进行了编程、将其用作 RGMII 驱动器、以 1Gbps 的速率进行发送和接收。 我需要在300Bytes 附近发射、而 RGMII 只需大约3us。 我进行了一些测量以确定采用哪种方法将数据从 PRU DRAM 获取到 msram、反之亦然。

PruIcss_writeMemory 根据数据量而定、最慢、不能用于我的用途。
使用 memcpy 将数据直接从 r5f 存储器复制到 PRU DRAM 的速度为4us、~300字节也较慢。
我使用了 udma_memcpy_interrupt 示例并针对两个测量对其进行了修改。 对于 DMA 来说、这两者看起来都很慢。 这或许可以改善吗?
我发现的快速方法是让 PRU 处理副本。 为此、我使用 lbbo msram -> sbco DRAM 和 lbco DRAM -> sbbo msram。
另一个耗时因素是 PRU 和 r5f 之间的中断。 r5f 到 PRU 中断大约需要200ns、Pru 到 r5f 大约需要890ns。
下一张图显示了将数据从 r5f 复制到 msram ->将中断发送到 PRU -> PRU 将数据从 msram 复制到 DRAM 的时间。 另一种方法是: 
与 RGMII 的3us 相结合、读取数据大约为6.5us、写入大约为5.5us。 我需要每个时间都接近4us。 是否有办法更快地从 msram 获取数据到 PRU DRAM?
谢谢。此致
卢卡斯