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.

[参考译文] TMS570LS1114:EMIF SDRAM 接口 CPU 写入带宽

Guru**** 2393165 points
Other Parts Discussed in Thread: TMS570LS1114

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1078995/tms570ls1114-emif-sdram-interface-cpu-write-bandwidth

部件号:TMS570LS1114
“线程”中讨论的其它部件:测试HALCOGEN

尊敬的 TI 专家:


我们正在尝试通过 EMIF 模块在定制板上连接 ISSI IS42S16100H-7TLI。

我们正在使用 PLL1 (180 MHz)和 EMIF (90 MHz)操作 CPU。 在连续写入 SDRAM 的过程中,我们注意到每秒只有第三个单元被正确写入一次。 当我们将 CPU 频率降低到90 MHz,使 f_cpu = f_EMIF = 90 MHz 时,连续写入 SDRAM 的工作几乎达到100%。 读取操作似乎独立于频率设置。

测试代码:

__attribute__((section(".farbss"))) volatile uint16_t sdram_far[100] = { 0 };  // test array in sdram
/**
 * main.c
 */
int main(void)
{
    uint16_t sdram_read[100] = { 0 };
    // write to sdram far memory
    for(uint16_t i = 0; i < 100; i++)
    {
        sdram_far[i] = i;
    }

    // reading from sdram
    for(uint16_t i = 0; i < 100; i++)
    {
        sdram_read[i] = sdram_far[i];
    }
}

案例1:F_CPU = 180 MHz,F_EMIF = 90 MHz                     案例2:F_CPU = F_EMIF = 90 MHz (仅忽略单元格3的写入)
                                             

壁龛中的定时设置:


我们怀疑,在案例1中,我们的 EMIF 带宽过大。 那么,当 f_CPU > f_EMIF 时,如何从软件端连续访问 SDRAM 内存? TMS570LS1114是否有我们可以遵循的应用说明?

我们正在开展一个大型客户项目,我们非常感谢您的帮助。


此致
大卫

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

     大卫,你好。

    如果 EMIF 时钟和 SDRAM 定时参数编程正确,CPU 速度不应影响 SDRAM 读/写。