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.

[参考译文] OMAPL137-HT:启动裸机应用澄清

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/943863/omapl137-ht-boot-bare-metal-application-clarification

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

您好!

OMAPL137-HT 处理器是我的项目的唯一选择-有源器件和额定高温(175C)。

有关引导裸机应用程序的文档不是很清楚或冲突。

我能够使用 SPI0、ARM 上的应用程序或 DSP 进行引导、但不能同时使用这两种引导方式:ASIgen 或 HexAIS_OMAP-L137和 SFH_OMAP-L137.exe。

例如、尝试在 SPI0、DSP 上的闪烁 LED 和 ARM 上的超术语上引导。

我尝试成功使用 HexASI、并仅将 UBL (在 DSP 上)、闪烁 LED (在 DSP 上)和串行应用(在 ARM 上)组合在一起。 我已将 UBL 和闪烁 LED 置于 DSP 上的同一应用程序中,UBL 仅启用 ARM (device_enable_arm ();)。 我使用生成的 bin 使用 sfh_OMAP-L137.exe 并使用-flash_noubll 选项写入 SPI0。 写入闪存后、电路板引导、但只有 DSP 工作(闪烁 LED)。 我刚刚开始使用 OMAP-137 EVM、Rev H (Digital Spectrum)。 我猜此时应用(DSP-ARM)会重叠一些存储器。

我需要对这一问题作出澄清,分步程序是理想的。

谢谢、

Marius Raducanu

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

    Marius、

    我们确实提供了辅助引导加载程序应用程序以供参考、它将使用在 C674x 内核上运行的 SBL 在 OMAPL137上加载和运行 DSP 和 ARM 内核。 您可以在此处查看有关如何测试此设置的文档:

    https://software-dl.ti.com/processor-sdk-rtos/esd/docs/06_03_00_106/rtos/index_Foundational_Components.html#omapl137-omapl138-c6748

     

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

    Rahul、

    感谢快速响应。

    我还在研究文档、也许这就是为什么我找不到在 OMAPL137上启动两个内核的解决方案-每个内核都有自己的应用程序。 我已经学习了"OMAP-L137引导加载程序":

    其中提到:"我是否需要次级引导加载程序(UBL)?[编辑]

    在较旧的器件上需要次级引导加载程序 AKA 用户引导加载程序(UBL)、其中引导加载程序无法解析 AIS 文件。 通过将 AISgen 工具与 OMAP-L137引导加载程序结合使用、以前由 UBL 执行的大部分功能都可以由引导加载程序完成。"

    我想这是一个旧文档、而不是新文档、Processor SDK RTOS。

    在您发送的链接中、介绍了如何仅使用 SPI 闪存引导一个应用。 也许第二个应用程序是 SBL/MLO 的一部分、但我在文档中看不到/理解这一点。

    谢谢、

    Marius Raducanu

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

    OMAPL137-HT 是一款具有很大潜力的处理器、适用于高温应用。 即使价格为550美元、对于额定温度为175C 的控制系统而言、也是一个不错的选择。

    遗憾的是、我仍然无法使评估板从 SPI0引导、这是两个简单的应用:一个在 DSP 中将一些字符放入串行、另一个在 ARM 中闪烁 LED。

    我可以使用电路板仿真器在 DSP 和 ARM 中运行/放置这些应用、并同时运行它们。 我可以从 SPI0引导每个应用、但不能同时引导。 我认为、如果我想在 ARM 中采集数据并在 DSP 中处理数据(FFT)、这一点至关重要。

    文档很差、我找不到一个示例、说明如何同时从 SPI0引导这些最小的应用程序。

    如果没有人能提供帮助、我将开始更详细地研究文档、并最终发布我的调查结果。

    我的计划是使用文档中的 OMAPL137-ARM-LED.zip、该文档在 DSP 上有一个应用程序启动 ARM (闪烁 LED)、然后进入无限循环。 我将尝试更改 DSP、而不是进入无限循环执行其他操作(将字符发送到串行)。

    此致、

    Marius Raducanu

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

    我尝试通过两种方式从 SPI 引导:

    1 -使用最新的 Processor SDK RTOS 06_03_00_106:

    A–我根据文档创建了 SPI_FLASH_writer.out、MLO 和应用程序:

    C:\ti\pdk_omapl137_1_0_11\packages/ti\boot\sbl\tools\flashWriter\spi\bin\evmOMAPL137\spi_flash_writer.out

    C:\ti\pdk_omapl137_1_0_11\packages/ti\boot\sbl\binary\evmOMAPL137\spi\bin\mLO

    C:\ti\pdk_omapl137_1_0_11\packages\MyExampleProjectsDSP\GPIO_LedBlink_evmOMAPL137_c674xTestProject\Debug\app

    B–复制了与 SPI_FLASH_writer.out 位于同一文件夹中的 MLO 和 app。

    C–在 CCS8中运行 SPI_FLASH_writer.out。

    D-在 Hyperterminal 中出现此错误:

    *** PDK SPI 闪存写入器***

    正在打开 SPI 句柄...

          SPI 初始化失败!

     

    2–使用 Davinci-PSP-SDK-03.20.00.14.tgz、我成功地将 u-boot 放入闪存(SPI0):

    在 CCS8中一次对所有三个文件运行一个 spiflash_writer.out (ARM):

    dsp-spi-ais.bin (“dspais”)、ubl-spi.bin (“armubl”)、u-boot.bin (“uboot”)–文件已验证,全部匹配。

    我在 Hyperterminal (I2C 非 SPI0)中看到 u-boot 提示符:

    U-Boot 2009.11 (2010年10月5日- 15:34:39)

    I2C:  就绪

    DRAM:64 MB

    ***警告- CRC 错误,使用默认环境

    IN:  串行

    OUT:  串行

    ERR:  串行

    ARM 时钟:300000000 Hz

    NET:  检测到多个 PHY。

     

    按任意键停止自动引导:0

    0:0处的4096 KiB W25X32现在是当前器件

    bootm 命令的映像格式错误

    错误:无法获取内核映像! –不是 SPI0引导问题、因为它尝试从 I2C 而非 SPI 引导

    U-Boot >

     

    3–使用 DaVinci-PSP-SDK-03.20.00.14.tgz、我尝试用我的应用程序(在 ARM 中使用双 LED)替换 u-boot:

    遇到此错误:

    使用 TI UBL 进行引导

    器件 OPP (300MHz、1.2V)

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

    我尝试在 CCS 中使用 SPI_flsh_write.out 在闪存中写入 MLO 和 app、但未成功(根据  Processor SDK RTOS 06_03_00_106文档)。 遇到此错误:

    *** PDK SPI 闪存写入器***

    正在打开 SPI 句柄...

          SPI 初始化失败!

    C:\ti\pdk_omapl137_1_0_11\packages/ti\boot\sbl\tools\flashWriter\spi\bin\evmOMAPL137\spi_flash_writer.out

    C:\ti\pdk_omapl137_1_0_11\packages/ti\boot\sbl\binary\evmOMAPL137\spi\bin\mLO

    C:\ti\pdk_omapl137_1_0_11\packages\MyExampleProjectsDSP\GPIO_LedBlink_evmOMAPL137_c674xTestProject\Debug\app

    我能够使用另一个闪存写入器(spiflash_writer.out -来自 Davinci-PSP-SDK-03.20.00.14.tgz)在地址0 (MLO)和80000 (app)处写入闪存。

    启动后、我在 Hyperterminal 中遇到此错误:

    **** PDK SBL ****
    SBL 修订版本:01.00.09.02 (2020年9月30日- 17:12:59)
    开始解析用户应用程序
    单个图像标题中的幻数无效
    正在跳转到用户应用程序...

    该应用程序来自:

    C:\ti\pdk_omapl137_1_0_11\packages\MyExampleProjectsDSP\GPIO_LedBlink_evmOMAPL137_c674xTestProject\Debug\app

    TI 是否仍然支持该处理器(OMAPL137BPTPH)?

    我可以从 DigiKey (558.6美元)购买该产品、并且"器件状态"仍处于活动状态。

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

    我已经检查了应用文件的标题、它具有幻数:

    4D 53 54 52 01 20 20 20 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4D 45 4e 44  

    我的结论是、闪存中的0x80000=524288偏移(MLO 偏移=0、APP 偏移量为0x80000)在 MLO 中不正确。

    有人可以确认这一点吗?

    谢谢

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

    另请参阅:OMAPL137-HT:从闪存引导问题

      使用 W25Q32JVSFIQ-ND (DigiKey)替换 OMAP-L137评估板上的闪存存储器后、我能够使用 PDK 中的 SPI_FLASH_writer 将 MLO 和 app 写入闪存。

    评估。 电路板具有不适用于任何 PDK 的 W25x32闪存。 我必须花太多的时间来解决这个问题。 如果 TI 提供一个较小的源文件(许多难以确定的定义)、每个处理器都有其自己的源文件、则会更好-调试将更容易。

    在下一步中、我将修改源代码以使评估板与其他闪存配合使用-我需要一个、额定温度至少为175C。

    此致、

    Marius Raducanu