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.

[参考译文] AWRL6844:如何将 TCM (矢量表)重新映射到 AWRL6844上的0x00000000?

Guru**** 2451970 points
Other Parts Discussed in Thread: AWRL6844EVM

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1515779/awrl6844-how-to-remap-tcm-vector-table-to-0x00000000-on-awrl6844

器件型号:AWRL6844

工具/软件:

您好:

我正在使用 Lauterbach 调试器在 SOP_Mode4 (调试/开发模式)中使用 AWRL6844EVM。

我的调试脚本同时连接到 HSM ARM-CM4和 APPSS ARM Cortex-R5F 内核。

我正在将我的.elf文件加载到APP_CPU_TCMA_A AT 地址0x00018000、并且我的矢量表位于该地址()0x00018000

由于 ARMv7-R (Cortex-R5F )不支持 VBAR 寄存器、因此它需要将异常矢量表放在0x00000000

是否有方法可以0x00000000在此设置中将 TCMA 区域重新映射到以正确使用矢量表?

提前感谢!

此致、
Stefan

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

    嗨、Stefan、

    感谢您的到来。 我将在今天晚些时候再研究这一点、然后返回给您。

    此致、

    Kristien

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

    您好 Kristien、

    可以将带有 data.load.ELF 的矢量表写入地址0x00000000。 到目前为止、一切都按预期运行。

    但是、根据 APPSS Cortex R5F 存储器映射、地址0x00000000实际上属于 APP_CPU_ROM_A、即 ROM 区域。 因此、在没有闪存工具的情况下、应该无法直接写入访问。

    因此、我假设重映射发生在开发或调试模式下、在这种情况下、0x00000000指向可写存储器(例如 RAM)。 但是、目前我不知道哪个物理内存实际映射到该地址。


    BR
    Stefan

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

    嗨、Stefan、

    很高兴您能够重新映射矢量表。 地址0x00000000最初属于 APP_CPU_ROM、但在 ROM 引导加载程序期间、这会被 APP_CPU_TCMA RAM 优先、因此访问0x00000000会映射到  APP_CPU_TCMA、而不是 ROM。 您可以查看我们示例工程的链接器文件、例如毫米波演示( \examples\mmw_demo\mmwave_demo\xwrL684x-evm\r5fss0-0_freertos\ti-arm-clang\linker.cmd)。

    希望这对您有所帮助、但如果您有任何其他问题、请告诉我。

    谢谢、

    Kristien