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.

[参考译文] CCS/TM4C123GH6PM:闪存中的动态存储器分配

Guru**** 2468610 points
Other Parts Discussed in Thread: TM4C123GH6PM

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/676726/ccs-tm4c123gh6pm-dynamic-memory-allocation-in-flash

器件型号:TM4C123GH6PM

工具/软件:Code Composer Studio

您好!

TM4C123GH6PM 具有256KB 闪存和32KB SRAM、我之所以提到这一点是因为我正在使用可能不适合 RAM 的大型数据集。

我知道它可以使用"section"来完成、但矩阵在代码中的任何位置都是动态声明的、 是否有方法可以将数据存储在闪存中并在需要时访问代码中的数据?

谢谢、

Nihit

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果矩阵在运行时更改它们的值、则不能将它们存储在闪存中。 堆和堆栈需要位于 SRAM 中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这些矩阵将为只读、您能简要介绍一下如何将这些矩阵存储在闪存中吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请参阅 www.ti.com/.../spnu151r.pdf 中 C 编译器用户指南中的#pragma SET_DATA_SECTION 用法。
    定义段名后、即可将段映射到链接器文件中的 RAM。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如您所述、当部署时、MCU 的闪存存储器将同时放置"高&慢需求"。

    不是具有大幅增加 SRAM 的器件、还是您当前选择的器件、而是具有"外部" SRAM 的增强器件、更好地满足您的要求?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不想通过连接外部 SRAM 来花费更多资源、而是更喜欢使用闪存、因为我的应用程序是只读的、Charles 我将查看文档并返回给您。
    非常感谢大家的帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您的是"一次性或(非常)几次闪存加载"、并且您的应用能够承受"相当长的持续时间"-这是相当复杂的多部件闪存编程过程所要求的-那么我(可能)同意。

    小型- SPI、四位访问-闪存存在-完全符合此类要求-也许是出于(好的)原因...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这种方法不起作用、要将任何闪存值更改为1位、需要擦除1KB、然后对闪存进行编程、以将位设置为零。 但是、在闪存老化之前、可以擦除多少次是有限制的。 TM4C123GH6PM 数据表的第531页有一节关于闪存编程的内容、我知道如果将来有人在同一问题上需要帮助、我应该在这里提到。

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

    [引用 user="nihit Bhavsar"]此方法不起作用、要将任何闪存值更改为1位、需要擦除1KB、然后对闪存进行编程、以将位设置为零。 但是、在闪存老化之前、可以擦除多少次是有限制的。[/引述]

    确实!    这就是为什么-这里有一  个-建议"使用高级、"专用"的外部串行闪存-这证明了它具有高度优势 (即、速度更快、更易于使用、并且更加稳健!)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    目的是在廉价的独立器件上实现这种高带宽算法。
    感谢大家的帮助和支持!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    编辑:高带宽、高内存