工具/软件:TI-RTOS
我使用 EDMA3_LLD 制作了一个小项目。 该项目将数据从 DDR3内存复制到 L2RAM 内存。 但是,不执行复制-内存 L2SRAM 中的阵列为空。 此外、该测试显示复制一个包含128个元素的数组的时间大约为2000个周期! 我使用 CCS 7.3和 EDMA LLD v.2.12.5。
问题可能出在哪呢?
为什么复印速度这么低?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:TI-RTOS
我使用 EDMA3_LLD 制作了一个小项目。 该项目将数据从 DDR3内存复制到 L2RAM 内存。 但是,不执行复制-内存 L2SRAM 中的阵列为空。 此外、该测试显示复制一个包含128个元素的数组的时间大约为2000个周期! 我使用 CCS 7.3和 EDMA LLD v.2.12.5。
问题可能出在哪呢?
为什么复印速度这么低?
您好!
//初始化硬件计时器 TSCL = 0;TSCH = 0; //计算两次调用时钟的开销以获取时序信息 T_start =_itoll (TSCH、TSCL); T_stop =_itoll (TSCH、TSCL); T_开销= t_stop - t_start; T_start =_itoll (TSCH、TSCL); EDMA_RESULT = EDMA3_DRV_enableTransfer (hEDMA、EDMA_Chid、EDMA3_DRV_TRIG_MODE_MANUAL); EDMA_RESULT = EDMA3_DRV_waitAndClearTcc (hEDMA、EDMA_TCC); T_stop =_itoll (TSCH、TSCL); T_opt =(t_stop - t_start)- t_开销;
此时、在1300个周期内复制256个浮点数据样本、每个样本大约5个周期。
总复制速度为4 (字节)/5 (周期)* 1GHz = 800Mb/s 在表15中的文档" C66x KeyStone 器件的吞吐量性能指南"中、声明了速度10664 Mb/s。
为什么我获得如此低的 EDMA 速度?
我制作了一个项目、将浮点格式的2x4096个样本从一个内存区域复制到另一个内存区域、并测量复制速度。 我使用评估板 TMDSEVM6678LE 上的 Blackhawk XDS560v2仿真器运行代码。
通过不同的组合、我得到了以下结果:
|
源 |
目的 |
测得的速度、Mb/s |
文档中的速度、Mb/s |
|
DDR3 |
MSMSRAM |
8000 |
10664 |
|
MSMSRAM |
DDR3 |
9000 |
10664 |
|
DDR3 |
L2 SRAM |
4985. |
10664 |
|
L2 SRAM |
DDR3 |
5033 |
10664 |
我估计复印速度如下:speed[MB/s]=2*4096*sizeof (float)*1000[MHz]/t_opt。
我的项目是 e2e.ti.com/.../EDMA3.zip
为什么结果与文档《C66x KeyStone 器件吞吐量性能指南》中的结果有很大不同?
为什么速度取决于复印的方向?