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.

[参考译文] TMS570LS0714:F021操作将在允许 FIQ 中断的情况下中止预取

Guru**** 2457760 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/642138/tms570ls0714-f021-operation-will-abort-prefetch-while-allow-fiq-interrupt

器件型号:TMS570LS0714

您好!

我的客户在使用 FEE 时遇到问题。

如果 FEE 操作期间(使用 F021库)同时允许 FIQ 和 IRQ、则将导致中止预取结果。

查看 CP15指令地址、它会进入保留的存储器。

我研究了 E2E 上的帖子、并通过链接获取类似的问题

https://e2e.ti.com/support/microcontrollers/hercules/f/312/p/188798/926522?tisearch=e2e-quicksearch

文章中的结论是、F021库不支持 FIQ、因为它不能用作硬件矢量中断。

然后我尝试将所有中断设置 为 IRQ、问题得到解决。 这似乎是同一个问题。

但是、由于该帖子是几年前发布的、并且 F021版本提到了 v1.51。 我使用的是最新版本2.1.1。 新版本是否可以支持 FIQ? 只需与您确认。

Vivian

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

    我认为这一限制仍然是收费要求的一部分、因为 FIQ 支持更多地是与闪存状态机相关的硬件问题。 我正在复制我们的软件销售线索、以便他可以确认我的答案、或者根据需要重定向/更正。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vivian:

    FEE 操作发生在专用的组7中、FIQ 处理程序放置在组0中。 只有当 CPU 访问发生在闪存操作的同一个存储块时、才会出现中断停止、如果它们发生在两个不同的存储块、则不会出现问题。  

    只要 CPU 不直接访问 Bank7 (仅通过 FEE API)、就不会出现问题。  

    引用的论坛帖子不讨论组7、它是组0中的闪存操作、其中放置了 FIQ 处理程序/中断矢量表。  

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

    谢谢、客户正在等待回答、然后决定是否使用外部 EEPROM。

    Vivian  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Vivian:
    您引用的线程正在讨论在擦除闪存的组0时使用 FIQ 的问题。 TI FEE 不会擦除组0、因此问题不同。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Bob:

    但它看起来非常相似、您有什么建议吗? 谢谢!

    Vivian

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