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.

[参考译文] RTOS/AM5728:EtherCAT 主站中的 OCMC RAM 定义

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/822672/rtos-am5728-ocmc-ram-definition-in-ethercat-master

器件型号:AM5728
主题中讨论的其他器件:TIDEP0079SYSBIOS

工具/软件:TI-RTOS

大家好、TI 专家、

我们的客户向我们发送了有关"如何添加 OCMC_RAM2的新存储器区域"的问题

通过使用 TI-RTOS (PROCESSOR-SDK-RTOS-AM57X)、在以下位置实现 EtherCAT 主站参考设计(TIDEP0079)。

http://www.ti.com/lit/ug/tidubz1b/tidubz1b.pdf

 

他们希望为程序添加其他内存区域到 OCMC_RAM2。

但以下 CCS 项目已针对 DDR 存储器区域中的 EC-主程序进行配置。

(我们还添加了测试 TMDXIDK5728-CCS 项目作为参考。)

https://www.acontis.com/en/ethercat-for-ti-processors.html

 

问题:

-您能告诉我们如何为新程序添加 OCMC_RAM2的新内存区域吗?

 

此致、

e2e.ti.com/.../0537.EcMasterDemoICSS.zip

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

    您好、Matusan-San、我明天将检查这个问题。 很抱歉耽误你的时间。  

    与此同时、有一个简单的问题、想法是通过 CCS 更改平台定义? (类似于我对 http://www.ti.com/lit/an/sprac45a/sprac45a.pdf 第4章所做的操作)或这是其他操作?

    谢谢、

    Paula

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

    您好!

    非常感谢您的善意。

    非常感谢您的帮助。

     

    我们通过"CCS-Menu->Project->RTSC-Tools->Platform->Edit/View"检查了"RTSC"配置

    请参阅以下 pdf (第4章)的指南。

    http://www.ti.com/lit/an/sprac45a/sprac45a.pdf

     

    但它似乎只配置了一个存储器域、例如代码存储器的 EXT_RAM、如下所示。

    他们希望为程序添加其他内存区域到 OCMC_RAM2。

     

    我们正在等待您的检查结果、包括"如何为代码内存配置 EXT_MEM 和 OCMC_RAM2域"

     

    此致、

     

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

    您好、Matusan-San、是否打算将关键代码移至更靠近 CPU 的位置? 如果是、您可以修改 TI 的链接器模板(*。xdt)文件。  先前共享的无 DDR 应用手册(第4.2.2节)探讨了类似的方法。  

    您还可以在 CCS 工程*。cfg 文件中使用 Program.sectMap[]移动段。    有关更多详细信息、请参阅 www.sanb.design.ti.com/.../index.html 主要思路是、您可以"显式"将某些段放置在不同的存储器段中。 "未明确定义"的任何内容都将进入代码存储器(在本例中为 EXT_RAM)。

    最后、如果目的是增加存储器的大小、也在 TI 的链接器中、您可以执行以下操作:

    部分{

                   .text:> EXT_RAM | OCMC_RAM2

    它将首先将.text 放入 DDR 中,如果/当它填满,则会“溢出”到 OCMCRAM 中。

    希望这对您有所帮助。 谢谢、

    Paula

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

    您好!

    非常感谢您的详细解释。

    非常感谢您的帮助。

     

    我们按照以下步骤、使用 TI-sample 项目"UART_BasicExample_idkAM572x_armExampleProject"、根据您的建议检查了"sectMap"行为。

     

    1:将"__attribute__((section("main_sect"))"添加到 main();

    2:添加"Program.sectMap["MAIN_SECT"]="OCMC_RAM2";"并生成。

    3:我们发现它似乎可以从 OCMC_RAM2 (0x40400000)正常运行。

      (我们还附上了相关的 pdf 和 CCS 项目作为参考)。

     

    问题:

    这是正确的方法吗?

     

    如果有任何通知或意见要向客户发送答案、请告诉我们。

     

    此致、

    e2e.ti.com/.../sectmap.pdf

    e2e.ti.com/.../UART_5F00_BasicExample_5F00_idkAM572x_5F00_armExampleProject.zip

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

    MatusAN-San、检查共享 UART 示例*。map 对我来说很好。 现在、您在 OCMC_RAM2中有 MAIN_sect、在 DDR 中有其他*。text (SYSBIOS)。 良好的概念证明=)感谢大家分享这一点。

    Paula

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

    您好!

    非常感谢您的善意。

    非常感谢您的帮助。

    我会将答案发送给客户。

     

    此致、