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.

[参考译文] AM2434:在 MAIN 域和 MCU 域上使用 IPC 时发生中断

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1610870/am2434-interrupt-occurence-when-using-ipc-with-main--and-mcu-domain

器件型号: AM2434

您好:  

我们使用的是工业通信 SDK 11、其中包含 MCU-PLUS SDK。

我们也会将 M4F 用于安全应用程序和 R5F 集群。 这也意味着我们使用 IPC RPMessage(因此 IpcNotify 不能)。 现在提出的问题是、中断如何工作?

我找不到任何书面信息、但不知何故、我很确定我与 TI 的一名同事交谈了一句话、那就是、如果将 IPC 数据包发送到内核、所有内核都会中断、而不仅仅是寻址的内核。  
在这个主题中、我们确实想向特定内核本身发送中断、但 TI 指出、这是不可能的、因为所有内核都将获得中断。

那么、IPC 有什么作用呢? 我可以想象、在 R5F 集群内部或至少在 MAIN 域中、如果使用 IPC、所有内核都会收到中断。 这是否也会影响 MCU 域? 还是单独处理?
这一点很重要、因为 M4F 用于安全应用、因此不应该通过来自主域的无限中断来阻止它。  

遗憾的是、SDK 文档中的 IPC 文档没有太多关于这方面的内容。 特定于 SoC。  

您对此有更多的信息吗?

此致

Felix

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

    您好、

    指定的专家不在办公室、请期待收到延迟的回复。

    此致、

    Vaibhav

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

    您好 Felix:

    我找不到任何书面信息、但不知何故、我很确定我与 TI 的同事讨论了该语句、如果将 IPC 数据包发送到内核、所有内核都会中断、而不仅仅是寻址的内核。  
    在这个主题中、我们确实希望自己向特定内核发送中断、但 TI 指出、这是不可能的、因为所有内核都将获得中断。

    以上说法不正确。 在默认 IPC RPMSG 回波示例中、我们确实将 IPC RPMSG 发送到每个内核。 您可以参考此示例。

    或者、您可能想说无法针对单个内核构建 IPC 示例、它必须构建为系统工程。

    要在两个或多个内核之间启用 IPC 或从参与 IPC 的其他内核中移除其他  内核、请参阅【常见问题解答】PROCESSOR-SDK-AM64X:如何仅与两个内核进行 IPC 通信? (例如 R5FSS0-0 和 R5FSS1-1)。 

    此致、

    Tushar  

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

    嗨、Tushar、感谢您的回答。

    我不确定这是否回答了问题。  
    我只讨论 IPC 发生的中断、而不是进一步的 RPMessage 处理。  
    我想说的是:如果一个内核确实发送了 IPC 消息、比方说只有 IpcNotify、那么所有内核都将收到中断(那么所有内核的执行将会被中断) 还是只收到寻址的内核?

    所以我还检查了此处我们可以在 IPC 集成中看到的 TRM:

    似乎至少一个 R5f 内核集群会中断(或者可能没有中断,因为它在末尾与 0-1 区分?)、但其他内核不应该中断、对吧?

    检查 R50_0 的中断路由:

    和 R50_1:

    也表明、这应该是不同的中断。

    嗯、我想我们有一个特别的会议、这就是为什么没有写下任何内容的原因。 我们希望在内核之间路由用户中断、但没有 IPC、目前无法实现这一点、因为这里指出、在本例中、至少所有 R5F 内核都会收到中断、我们无法识别其源。

    但最后只需要回答一个问题:

    如果将 IPC-mailbox 消息发送到另一个 R5F 内核、M4F 也是否会被中断? 还是根本不呢?
    如果没有,那么我们的“问题“是解决的。  

    此致
    Felix

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

    您好 Felix:

    如果将 IPC-Mailbox-message 发送到另一个 R5F 内核、M4F 是否也会被中断? 还是根本不?

    否、如果 M4F 内核未参与 IPC 通信、它不会获得中断。

    即、 如果 IPC 通知 从 R5F0-0 内核发送到 R5F0-1 内核、则只有 R5F0-1 内核将中断。 任何其他内核都不会被中断。  

    此致、

    Tushar

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

    谢谢 Tushar!

    那么它是清楚的:)