2320276_zh-CN

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2320276_zh-CN

2320276_zh-CN

S32K358 多核共享内存

您好,

我目前使用的是 s32k358 多核处理器,我正在尝试使用共享内存进行 IPC。

nirmal_masilamani_0-1771509939378.png

我正在尝试使用 core0status 和 core1status 变量共享 IPC 数据。

但两个变量都声明在同一内存中,因此每个核心都会覆盖其值。

core0status 和 core1status 的地址,在每个内核中互换。

我错过了什么?请参见所附代码。

Re: S32K358 Multicore share memory

嗨,@nirmal_masilamani、

应适当初始化 XRDC,为 CM7_0 分配 DID=0,为 CM7_1 分配 DID=1。请检查 XRDC 功能域分配。您可以参考 RTD 示例:

 

XRDC_Config.png

至于安全文件,您需要申请访问。请参考我之前分享的常见问题。

致以最诚挚的问候,
Julián

Re: S32K358 Multicore share memory

你好@Julián_AragónM、

感谢您的回复。

我已经签署了保密协议,但仍然无法访问安全文件。

另外,我参考了 S32K324 的共享内存程序,但在我的程序中

#define CORE_DOMAIN_ID (IP_XRDC->HWCFG1)在两个内核中始终显示为0。

我错过了什么?

Re: S32K358 Multicore share memory

嗨,@nirmal_masilamani、

还有一个培训演示: S32K3 RTD XRDC、SEMA42、MPU、XBIC 和 INTM 培训演示。不过,它在 S32K3 的安全文件下。如果您没有访问权限,可能需要上传有效的 NDA 并申请访问权限。请参阅安全访问权限常见问题解答|恩智浦半导体。

公开场合有以下两份应用笔记:

虽然模块非常相似,但S32G和S32K设备之间存在一些区别,因此请仔细阅读应用笔记。

致以最诚挚的问候,
Julián

Re: S32K358 Multicore share memory

你好@Julián_AragónM、

感谢您的回复。

共享内存的问题已经按照文件解决了,但我想配置 sema42 驱动程序,该怎么做呢?

我使用的是 s32ds v3.5 RTD 4.0.0。

Re: S32K358 Multicore share memory

嗨,@nirmal_masilamani、

共享变量仅由 CM7_0(启动内核)初始化一次,而不是 CM7_1(二级内核)初始化。Core0 会将带有初始值的共享全局变量的数据从 ROM 复制到 RAM,而 Core1 将忽略数据复制,只在代码中使用它们。

Core0& Core1 之间的链接文件应如下所示:

Julin_AragnM_1-1771523678498.png

我已经给你发了一条私人信息,里面有一些关于 S32K3 双核和内核间内存共享的资料。

致以最诚挚的问候,
Julián

Re: S32K358 Multicore share memory

你好@Julián_AragónM、

我遵循了同样的例子,仍然两个核心都返回 0 作为功能域 ID。

我还需要在核心 2 中启动 sema 吗?

Re: S32K358 Multicore share memory

嗨,@nirmal_masilamani、

很可能是 XRDC 设置不正确。默认情况下,CM7_0 和 CM7_1 的 DID 均为 0。 我已向您发送了有关 XRDC 配置的私人信息。

致以最诚挚的问候,
Julián

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎03-04-2026 05:28 AM
更新者: