这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 行业应用 » 汽车电子 » 【S32K3XX】HSE 通讯 DTCM 使用

共2条 1/1 1 跳转至

【S32K3XX】HSE 通讯 DTCM 使用

高工
2026-04-29 19:38:16     打赏

【简介】

在S32K3 应用核和HSE进行数据交互时通常会使用memory 来进行数据交互。但是使用内存和 HSE 进行交互数据时,M7 core 是支持Cache 特性的而 M0 的HSE core 是不支持cache 特性直接访问物理内存的。如果M7 写入的数据还在cache line 中没有更新到物理内存中,这时使用memory 来通讯就会出现两面看到的内存数据不一致的问题。内存一致性的问题可以通过使用no cachable  属性的memory 通讯来解决,或者直接使用DTCM 来通讯的方式来解决。 DTCM 是M7核心独有的memory 区域HSE核如果访问DTCM?

image.png

以下是上图的HSE访问DTCM 的访问路径M2->S3->AHBS->DTCM

image.png

从上述图可以看出HSE/EMAC/eDMA 通过S3端口通过AHBS连接到CM7内核从而访问DTCM,因为 DTCM 的的地址使用同一个地址每个核使用相同的DTCM地址编码访问DTCM,每个DTCM 的地址均为0x20000000~0x2001FFFF。

image.png

因为每个核心的DTCM 的地址范围都是一样的,HSE 通过AHBS 访问指定的核心的DTCM 的资源,实际是对每个核的DTCM进行地址编码加上对应的offset 的backdoor地址访问DTCM资源。

image.png


有了上述的概念,如果需要和HSE 通过DTCM 来通讯需要把对应的backdoor 地址发送到HSE核,HSE 通过backdoor地址就能访问对应的DTCM的数据,以下代码是CM70 核心和HSE 交互时使用DTCM将DTCM 的backdoor 地址发送给HSE 核心通讯的过程。


image.png


   


           


专家
2026-05-02 08:33:32     打赏
2楼

谢谢分享


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]