电子行业综合门户
|
专题
资料库
论坛
问答
视频
企业号
专栏
工具箱
登录
注册
ee
nano
.com
纳米网
电子行业综合门户
全站
热搜:
STM32
RISC-V
自动驾驶
电源设计
AI芯片
在线工具
资料下载
精选专题
直达:
芯片选型
品牌企业号
技术问答
登录
首页
新闻资讯
半导体产业
嵌入式技术
传感器
通信无线
人工智能
物联网
工业控制
汽车电子
电源新能源
医疗电子
显示光电
测试测量
消费电子
数据中心
国际动态
政策法规
技术应用
汽车电子
电路设计
电源管理
嵌入式开发
通信方案
传感器应用
测试测量
显示与人机交互
物联网方案
工业自动化
医疗电子
半导体
芯片新品
产业分析
制造工艺
嵌入式
MCU/MPU
RTOS
开发板
汽车电子
ADAS/自动驾驶
车载网络
新能源汽车
电源技术
DC-DC转换
电池管理
充电技术
人才
人才招聘
更多频道
传感器
通信无线
物联网
人工智能
工业控制
医疗电子
消费电子
数据中心
资料下载
工具箱
精选专题
芯片选型
搜芯片型号、技术文章、Datasheet...
选型
资料
工具
问答
论坛
标签
汇总
首页
论坛
技术交流
STM32H7的双核通信(CM7与CM4...
STM32H7的双核通信(CM7与CM4)共享内存与硬件信号量HSEM死锁排查记录
l
lanmm
2026-10-24 07:57
290
3
在做一个工业伺服通信方案,CM7跑实时EtherCAT协议栈,CM4跑外设采样与PID。两者通过SRAM4(0x38000000)作为共享环形缓冲区,并用HSEM硬件信号量做互斥锁。
压力测试跑到第72小时出现双核互相挂起。最后排查抓到是CM7进HardFault前锁死了HSEM,CM4自旋等待死锁。
想请教大家多核方案都是怎么做异常保底看门狗互锁的?
返回列表
全部回复
3
钠
钠远
2026-10-24 08:57
#2
建议在共享内存头部加入心跳时间戳(Heartbeat),任何一侧超过50ms不刷时间戳,另一侧立即触发强行解锁并保存Dump日志,同时由独立硬件看门狗复位整个芯片。
t
testuser20261
2026-10-24 09:57
#3
另外注意Cache一致性!CM7有D-Cache,如果共享内存映射在可Cache区域,必须用SCB_CleanInvalidateDCache或者在MPU里把该段内存配置为Device/Strongly-Ordered,不然也会读到脏数据导致状态机紊乱。
q
qingzhuxiaobei
2026-10-24 10:57
#4
赞同MPU配置方案。我们直接把SRAM4设为Non-Cacheable + Shareable,虽然读写稍微慢几个周期,但排除了99%的核间同步玄学Bug。
发表回复
登录后即可参与技术帖讨论
立即登录
帖子信息
板块
技术交流
发帖时间
2026-10-24
浏览次数
290
回复次数
3
快速导航
技术交流
新手入门
项目分享
芯片讨论
职业发展
灌水闲聊
全站技术与芯片检索
全站资讯
芯片选型
原厂资料
技术标签
搜索
工程师高频热搜
STM32
RISC-V
自动驾驶
电源设计
AI芯片
碳化硅
车规MCU
氮化镓
高速PCB
电机控制
独占工程工具直达
芯片选型
资料手册
在线工具
ee
nano
全站频道导航
欢迎来到纳米网工程师社区
登录解锁资料下载、在线工具与技术互动
登录
注册
核心工程服务与互动社区
芯片选型
原厂资料库
在线工具箱
精选专题
技术问答
工程师论坛
品牌企业号
技术专栏
视频课程
核心技术与产业频道
新闻资讯
技术应用
半导体
嵌入式
汽车电子
电源技术
人才
纳米网通行证
登录纳米网工程师账号
登录后即可关注技术频道、参与问答评论、免费使用全部在线工程工具与下载原厂资料。
用户名 / 邮箱
登录密码
忘记密码?
30天内自动登录
立即登录
还没有纳米网账号?
免费注册账号