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.

[参考译文] FLASHTOOL:使用 sfh_OMAP-L137.exe 对四个映像(DSP UBL、DSP 应用、ARM UBL 和 ARM 应用)进行编程

Guru**** 2988540 points

Other Parts Discussed in Thread: OMAP-L137

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/670225/flashtool-programming-four-images-dsp-ubl-dsp-app-arm-ubl-and-arm-app-using-sfh_omap-l137-exe

器件型号:FLASHTOOL
主题中讨论的其他器件:OMAP-L137

您好!

目前、我们使用的是具有以下选项的 sfh_OMAP-L137.exe 实用程序

sfh_OMAP-L137.exe -p %1 -flash_dsp OMAPL137_DSP_app.bin arm_ubl_spi.bin OMAPL137_ARM_app.bin

我们计划引入 DSP UBL 并使用 SFH_OMAP-L137.exe 加载所有四个映像。

是否有任何规定可以这样做、以便我可以加载 DSP UBL、DSP 应用、ARM UBL 和 ARM 应用?

如果我们更改 SFH 实用程序、请建议这样做。

谢谢、此致

Girish

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

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

    谢谢 Yordan。 我将等待您的回复

    谢谢、此致

    Girish

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

    OMAPL137上的n`t 工具集不支持这种用例、但我们在其他器件上提供了一些工具、您可以参考这些工具的实现。

    首先、可以使用 AISGen 工具将 DSP UBL 和 ARM UBL 组合在一起。 在 AIS Gen 工具中、如果您提供 DSP UBL.out;ARMUBL.out、则该工具会组合映像并提供和 AIS 映像。 当 ROM 加载生成的 AIS 文件时、它将加载两个 OUT 文件、并在您首先指定该文件时将控制权传递给 DSP UBL。 您可以在该部分讨论该技巧、
    processors.wiki.ti.com/.../Boot_Images_for_OMAP-L137

    对于应用程序映像、您可以参考我们在此处提供的次级引导加载程序代码。 在此过程中、我们将 ARM9和 C674x 的应用映像转换为名为 out2rprc 的中间格式、然后使用多核映像创建工具将映像与分配给每个内核的内核 ID 进行组合。 这将需要编辑 UBL 代码、因为您需要一种能够加载 OUT2 rprc 文件并将控制权传递给应用程序的方法。
    processors.wiki.ti.com/.../Processor_SDK_RTOS_BOOT_OMAPL13x

    完成此操作后、您可以将偏移量0x0000处的组合 UBL 和组合应用程序刷写到与当前使用 SFH 工具执行的相同的偏移。

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

    感谢您的回复。 我根据您的回复获得了输入、并确认 AISGEN 工具可以组合2个.out 文件。
    基于此、我们的方法如下。
    由于我们计划具有双引导选项(串行闪存中的备用 DSP 和 ARM 应用映像)
    我们计划做的是
    1.将 DSP UBL 和 DSP 应用程序组合成一个二进制文件(使用 AISGen 工具)。
    将 ARM UBL 作为单独的二进制文件
    ARM 应用映像作为另一个单独的二进制文件。

    加载顺序如下
    1.开机
    2. DSP 启动、DSP ROM 引导加载程序将 DSP UBL 和 DSP 应用程序(单个二进制文件)从串行闪存复制到 L2RAM 并运行
    3. DSP UBL 需要进行一些检查以确认继续执行此 DSP 应用程序或 DSP 应用2 (存储在串行闪存中的其他位置)
    4. DSP UBL 加载并运行适当的 DSP 应用程序映像
    5. DSP 应用程序映像运行并将 ARM UBL 从 SPI 闪存加载到 RAM 中,然后继续执行
    6. ARM UBL 运行并执行一些检查以确认继续并加载适当的 ARM 应用程序映像
    7. DSP 和 ARM 应用程序都运行

    我的问题是如何准确控制和知道串行闪存中 DSP UBL 和 DSP 应用的起始位置、因为这两个应用都作为一个二进制文件加载。
    是否必须通过将已知大小分配给 DSP UBL 来定义 DSP 应用的起始偏移?

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

    我n`t 理解这个问题。 n`t 您将 DSP UBL 和 DSP 应用程序组合成一个二进制文件,那么这两个文件都将由 ROM 引导加载程序加载到内存中,对吧? 组合二进制文件可加载到0x0000处、该地址是 ROM 查找 AIS 映像的地址。 使用串行闪存和加载实用程序、您可以指定-nubll 选项、然后在基址加载 DSPL UBL+ DSP 应用程序映像。

    离线时、您可以从映射文件加载 DSP 应用的入口点、以便 DSP UBL 知道从何处通过控制权来启动 DSP 应用。 请确保 DSP UBL、DSP 应用、ARM UBL 和 ARM 应用没有重叠的存储器区域、否则此启动机制将失败。

    此致、
    Rahul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的。 将 DSP UBL 和 DSP 应用组合成一个二进制文件、然后这两个文件都将由 ROM 引导加载程序加载到存储器中、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Rahul、

    请注意、我们可能无法使用"-noubl"选项并在 基址0x0000"加载 DSPL UBL+ DSP 应用程序映像

    我们应该使用以下选项来支持现有的编程方法

    sfh_OMAP-L137.exe -flash_dsp    

    请确认这是否可接受

    谢谢、此致

    Girish