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.

[参考译文] MSP430FR2000:禁用 FRAM 缓存

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/873259/msp430fr2000-disable-fram-cache

器件型号:MSP430FR2000

您好!

是否可以禁用 MSP430FR2000 FRAM 缓存?  

如果没有、如何生成能够以一致时序运行的代码、例如延迟?

谢谢、

Kathleen

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

    我想您可以将函数复制到 RAM 并在那里执行它。

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

    只有当启用等待状态以高于 FRAM 支持的速度运行时、高速缓存时序才重要。

    因此、以足够低的时钟速度运行、因此您无需等待状态或使用计时器。

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

    没错。

    澄清:

    无法禁用高速缓存。 高速缓存为4行、每行64位、因此理论上、可以在没有高速缓存命中的情况下执行(即循环、跳跃等必须大于高速缓存)、但这可能很复杂。

    FRAM 的限制为8MHz。 低于该频率时、不需要等待状态、因此执行将取决于 CPU 频率、代码是从 RAM、FRAM 还是高速缓存执行。

    需要高于8MHz 的等待状态。 FRAM 的执行将受到等待状态的限制、而 RAM 和高速缓存可以以最大 CPU 频率运行。

    因此、低于8MHz 运行或在 RAM 中执行关键段可能是最佳选择。

    此致、

    Luis R