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.

[参考译文] TDA3:DSP &CM4高速缓存使用情况和数据访问时间

Guru**** 2587365 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/585236/tda3-dsp-cm4-cache-usage-and-data-access-time

器件型号:TDA3

各位专家、您好!

请帮助您解决以下问题:

TDA3x 上

启用 DSP L2D 缓存(DSP @ 500 MHz):

1) 1)将值从 L2D 缓存加载到2x32内核寄存器需要多少个 DSP 周期?

2) 2)如果数据已经在高速缓存中、则需要多少个 DSP 周期?

3) 3)如果数据位于内部 RAM 中、则需要多少个 DSP 周期?

4) 4)如果数据在外部 RAM (DDR3/16位)中、则需要多少个 DSP 周期?

CM4高速缓存-类似问题

1) 1)如果数据已经在缓存中、则需要多少个 M4周期?

2) 2)如果数据在内部 RAM 中、则需要多少个 M4周期?

3) 3)如果数据在外部 RAM (DDR3/16位)中、则需要多少个 M4周期?

谢谢、此致、

Gregor

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Gregor、

    我已将您的问题转交给一位专家。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gregor、

    对于 DSP 情况、以下是数字:

    针对 L1D 访问的 DSP 停顿周期:0周期

    L2 SRAM 命中的 DSP 停止周期:5个周期

    L2缓存命中的 DSP 停顿周期:7个周期  

    我在从 DSP MDMA 端口访问延迟的 statcoll 测量中测量了以下数字:

    DDR 访问(响应的平均延迟命令)- 47个 L3周期(266 MHz)、相当于88个 DSP 周期。

    OCMC 访问(响应的平均延迟 命令)- 9 L3周期(266 MHz)相当于17个 DSP 周期。

    注意:访问通常是通过管道传递的。 因此、访问的总时间不是这些周期与要传输的字节数的直接乘法。

    谢谢、此致、

    Piyali

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Piyali、


    非常感谢! CM4是否也有类似的数据?

    谢谢、此致、

    Gregor

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gregor、

    根据之前对 M4执行的 LMBENCH 测试、请在下面找到有关 M4访问延迟的一些数据:

    L1命中延迟为6.30ns。

    L1未命中 L2等于~50ns。

    L3延迟(主存储器)为~1.8us  

    谢谢、此致、

    Piyali

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Piyali、

    非常感谢!

    您还能评论一下速度是用于"首次访问"还是"突发访问"、以及写入操作的访问速度如何?

    非常感谢、致以诚挚的问候、
    Gregor
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gregor、

    我将尝试查看此数据是否已可用。 如果不是、我们需要测量它。 我会尽快回复您。

    谢谢、此致、

    Piyali

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Piyali、

    非常感谢、这将会很棒!

    非常感谢、致以诚挚的问候、
    Gregor
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gregor、

    我测量了 cortex M4的访问延迟、如下所示。 我使用简单的存储器存取和 SysTick 在多次运行时测量该值。

     

    情况

    M4周期数

    时间

    L1命中(读取/写入)

    1

    4.7ns

    L1未命中、L2命中(缓存行读取)

    10.

    47ns

    L1未命中、L2命中(直写)

    5.

    23.5ns

    L1未命中、DDR (高速缓存行读取)

    51.

    239.7ns

    L1未命中、DDR (写入分配+写入)

    52.

    244.4ns

    L2非高速缓存读/写

    5.

    23.5ns

    DDR 非高速缓存读取(单个)

    46.

    16.2ns

    DDR 非高速缓存写入(单个)

    40

    188ns

    请注意、DDR 访问号码的平均情况最好、并且受访问 DDR 的实例的影响–如果您访问的位置位于封闭的页面中、 然后、在实际读取/写入某个位置之前、在预充电、激活该页面等方面会产生大量协议开销。 如果定期刷新计划在这两者之间进行、则会增加更多延迟。 如果您访问已打开页面中的某个位置、则访问延迟将与最佳案例数与平均案例数匹配。

    谢谢、此致、

    Piyali