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.

[参考译文] AM2431:XIP 存储器映射写入(MRAM)

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1173000/am2431-xip-memory-map-write-mram

器件型号:AM2431

您好!

我对 OSPI XIP 模式下的写入有疑问。 (不是从器件运行代码、而是数据)

当使用 OSPI 波特图加载程序时、可以将 OSPI 器件配置为 XIP 模式以进行存储器映射读取。

我了解由于闪存存储限制、SPI 闪存中无法进行存储器映射写入。(擦除、页写入)

SPI MRAM/FRAM 没有这些写入限制。

 在这种情况下、是否可以使用存储器映射进行写入?

此致、

Tom

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

     

    我无法理解这个问题。  

    [引用 userid="84314" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1173000/am2431-xip-memory-map-write-mram "]我了解到由于闪存存储限制、在 SPI 闪存中无法进行存储器映射写入。(擦除、页写入)[/quot]

    没错。 即使存储器是 XIP、您也需要使用 FlashAPI 来擦除/编程、这与写入 RAM 不同。

    但是、如果您不是从 XIP 执行代码、它只是具有外部 闪存的另一个器件。

    [引用 userid="84314" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1173000/am2431-xip-memory-map-write-mram ]SPI MRAM/FRAM 没有这些写入限制。

    AM243x 中没有 MRAM/FRAM 功能。 有关这方面的更多详细信息、请联系 TI 的销售和营销团队。

    此致、
    Aakash

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

    Everspin 具有支持 XIP 的 QSPI MRAM。 (MR10Q010)

    由于它是随机存取存储器、我想知道您是否可以通过写入0x60000000指针来写入器件。  

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

     

    我们已请专题专家就此发表评论。 此时他不在、因此请等待一些延迟回复。

    此致、
    Aakash

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

    您好、Tom、

    如果存储器器件支持带 XIP 的 QSPI、那么我不明白为什么在这种情况下它不起作用。 请查看我们的 TRM、更具体地说是第 12.3.2.4.9节 OSPI 直接访问控制器(DAC)。  直接访问控制器可被用于访问和执行来自外部闪存存储器的代码。

    如前所述、AM243x 没有 MRAM/FRAM 功能、因此请记住、您将受到特定于闪存的 API 的限制。

    最棒的

    Daniel

    TRM 链接: AM64x /AM243x 处理器器件版本2.0德州仪器(TI)产品系列(TI.com)

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

    Daniel、您好!

    我能在任何地方找到哪些 SPI 命令代码和协议(4S-4S-4S)吗? 用于存储器映射模式下的读取/写入?

    此致、

    Tom

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

    您好、Tom、

    DAC 仍将在 SPI 控制器协议下运行。 您必须确保所使用的闪存存储器具有以您希望在中运行的相同 OSPI 协议运行的命令。 这还取决于您是使用 SDR 通信还是 DDR 通信。  

    表12-3304.  TRM 的读写指令配置显示了软件应如何针对所选的特定读写指令配置 OSPI 模块。 掌握了这些信息后、您现在必须在闪存的数据表中找到相应的信息。 例如、在 W25Q64JV QSPI 存储器(W25Q64JV 数据表(mouser.cn)上、详细信息按以下方式呈现:

    希望这对您有所帮助、如果您有任何其他具体问题、请随时发布。

    最棒的

    Daniel

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

    Daniel、您好!

    那么、如果我理解正确的话、DAC 正在使用闪存 API、它是驱动程序配置吗?

    我唯一的问题是 擦除/块是如何处理的。

    它是否执行块/扇区擦除?

    如果可以、是否可以禁用此功能?

    此致、

    Tom

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

    其工作方式是、在直接访问模式下、CPU 或 DMA 访问存储器地址、但器件仍使用 OSPI 控制器将该信息写入闪存器件、因为 OSPI 存储器和 MCU 器件之间没有并行通信线路。 DAC (存储器映射模式)只是提供了一种更简单的外部闪存通信方式

    一个单独的软件控制器(Stig -软件触发的指令发生器)实际上负责执行擦除功能。 通过 设置向闪存器件发出的命令、使用 OSPI_FLASH_CMD_CTRL_REG 寄存器来控制 Stig。 这是一个通用控制器、可用于执行闪存器件通过扩展 SPI 协议支持的任何指令。  TRM 的第12.3.2.4.11节 OSPI 软件触发指令生成器(Stig)对此进行了详细介绍。

    因此、您可以使用正确的指令和  OSPI_FLASH_CMD_CTRL_REG  寄存器发出块和扇区擦除。

    [引用 userid="84314" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1173000/am2431-xip-memory-map-write-mram/4437493 #4437493"]如果是,是否可以禁用此功能?

    您是禁用块擦除吗? 请记住、在写入相同空间之前擦除存储器空间是大多数闪存中的一项要求。 如果不调用指令、则足以阻止其执行

    最棒的

    Daniel