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.

[参考译文] TMS570LC4357:TMS570LC4357:在单端口存储器上执行 PBIST 会触发预取中止2.

Guru**** 2427060 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1121908/tms570lc4357-tms570lc4357-execution-of-pbist-on-single-port-memory-triggers-prefetch-abort-2

器件型号:TMS570LC4357

各位专家、您好!

由于该线程已锁定: https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1110910/tms570lc4357-execution-of-pbist-on-single-port-memory-triggers-prefetch-abort

我们仍会获得上一帖子中所述的预取中止。
(Q1)您是否有任何建议可以对其进行调试、或者有什么类似的建议?

谢谢、此致、
最大

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

    尊敬的 Max:

    当取指令导致错误时、会发生预取中止(PABT)异常。 当发生预取中止时、处理器会将预取指令标记为无效、但在执行指令之前不会接收到异常。

    可以通过读取指令故障状态寄存器(IFSR)、指令故障地址寄存器(IFAR)和辅助指令故障状态寄存器(AIFSR)来分析预取中止的原因。  

    IFAR 包含 CPU 试图从中提取指令的地址。 IFAR 的内容对于预取中止始终有效、因为所有预取中止都是同步的。

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

    PBIST 测试是在启动还是运行期间执行的?

    PBIST 测试是一个破坏性测试、其中 SRAM 或高速缓存将受测试矢量的影响。 由于测试、SRAM 和缓存中的应用程序数据或指令将丢失。  

    是否可以在启用缓存之前执行 SRAM PBIST?

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

    您好 QJ、

    我们没有使用高速缓存。 但堆栈的丢失似乎是问题所在。 我们当前正在尝试在 PBIST 完成后触发 CPU 复位、如果这不起作用、我们必须在汇编器中执行该测试、以便在启动期间及早运行。

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

    尊敬的 Max:

    PBIST 期间的预取是否被求解?

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

    您好 QJ、

    我们通过在 PBIST 运行期间轮询 MSTDONE 和 RTI 计数器位时避免使用任何函数来实现 PBIST。 测试完成后、我们立即触发 CPU 复位。 通过这种方式、堆栈被重新初始化、并且我们在从 PBIST 函数返回时避免了预取中止。

    它看起来工作正常、但尚未经过全面测试。