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/TMS320F2.8377万D:是否可以同时在通用共享RAM内存中读写?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/585261/ccs-tms320f28377d-is-it-possible-to-read-and-write-in-general-shared-ram-memory-at-the-same-time

部件号:TMS320F2.8377万D

工具/软件:Code Composer Studio

大家好,

我正在使用通用共享RAM内存将数据从CPU1传输到CPU2,我的问题是我是否必须使用某种握手协议(通过IPC) ,或者是否可以在CPU1上读取数据的同时将数据写入CPU2。

非常感谢,

安德烈

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

    你好,Andreu,

    您不需要握手。 CPU1写入时,CPU2可以读取内存。 但是SW需要确保CPU2未读取CPU1更新的数据,因为在这种情况下CPU2可能会获取旧数据(如果这是问题)。

    此致,

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您在CPU1的一个指令中写入单个32位数据,您可以通过CPU2读取它,但如果您写入多个32位数据(例如结构或字符串),则必须等待写入结束
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    [引用]如果您在CPU1的一个指令中写入单个32位数据,您可以通过CPU2读取它,但如果您写入多个32位数据(例如结构或字符串),则必须等待写入结束[/QUOT]

    我不理解你的评论。 您是否遇到过编写结构或字符串方面的问题? 在硬件中,写入单个32位或结构或字符串没有区别。

    此致,

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    CPU通过MOVL指令在单个周期内写入32位数据,
    CPU在多个循环指令(多个MOVL)中写入结构(多个32位数据),