【每日话题】单核 MCU 迁移到多核 MCU:分享挑战与应对之策赢百枚家园币
[其它产品/技术]
【每日话题】单核 MCU 迁移到多核 MCU:分享挑战与应对之策赢百枚家园币
[复制链接]
5558|95
手机看帖扫描二维码随时随地手机跟帖
21小跑堂
当前离线
关注TA
发消息
2244
主题8115
帖子2万
积分
管理员
积分25989
在线时间9032 小时
精华20
注册时间2011-8-17
最后登录2025-6-6
打赏180262.40受赏4610.68
电梯直达
楼主
21小跑堂|
楼主
|
2024-12-20 14:50
|
只看该作者
|倒序浏览
|阅读模式
MCU, 分享, 挑战, 迁移, 每日话题, 代码
#每日话题#
多核MCU能够同时执行多个任务,显著提高系统的处理能力。这对于需要实时响应的应用(如汽车控制系统和工业自动化)尤为重要。
但如果要将你的设计从单核MCU迁移到多核MCU上,势必面临着代码迁移带来大量代码重构、以及多核系统的调试、系统应用之间的通信等问题。
你是否有将单核开发迁移到多核MCU上的经验和心得? 如何更快速高效实现代码迁移和新的应用构建?
话题奖励:
1、凡有效参与话题讨论的回帖者均可获得100家园币奖励——已于2025.1.9 14:55前发放完成
2、抽取2位发表优质回贴的友友奖励500家园币——感谢大家的热情参与,此次大家都比较真诚的回复分享,所以跑堂决定增加6个奖励名额!恭喜:@6552918 @穿西装的强子 @licaijunzhuce @sujingliang @leihaozhuce @电子烂人 @地瓜patch @dirtwillfly
活动时间:2024.12.20——2024.12.31
禁止使用AI生成内容参与话题讨论
本主题由 21小跑堂 于 2025-1-9 14:59 添加图标 开奖
使用特权
评论回复
赏
标题置顶
标题高亮
共4人点赞
tpgf
当前在线
关注TA
发消息
2257
主题1万
帖子5万
积分
版主
积分50627
在线时间13373 小时
精华1
注册时间2016-3-16
最后登录2025-6-9
打赏14.90受赏1828.80
沙发
tpgf|
|
2024-12-20 15:52
|
只看该作者
如果应用不需要高并发或高性能计算,那么使用多核MCU可能是过度设计
使用特权
评论回复
赏
共2人点赞
labasi
当前离线
关注TA
发消息
52
主题3414
帖子1万
积分
资深工程师
资深工程师, 积分 10365, 距离下一级还需 9635 积分
资深工程师, 积分 10365, 距离下一级还需 9635 积分
积分10365
在线时间76 小时
精华0
注册时间2018-6-11
最后登录2025-5-26
板凳
labasi|
|
2024-12-20 15:53
|
只看该作者
同构MCU包含两个相同的CPU,适合并行或冗余运行;异构MCU包含不同类型的处理器,适合特定计算密集型操作
使用特权
评论回复
赏
共2人点赞
木野臻
当前离线
关注TA
发消息
19
主题1078
帖子3217
积分
版主
积分3217
在线时间3267 小时
精华0
注册时间2014-4-18
最后登录2025-6-8
打赏0.00受赏1850.00
地板
木野臻|
|
2024-12-20 16:54
|
只看该作者
复杂性增加,多核编程相比单核编程更加复杂,需要处理更多的同步和互斥问题。开发人员需要更加谨慎地设计代码,以避免潜在的并发错误。单核开发迁移到多核MCU上是一个需要仔细规划和执行的过程。通过充分的前期准备、代码迁移与优化、调试与测试以及持续的学习与改进,可以成功地实现这一迁移并充分利用多核MCU的性能优势。
使用特权
评论回复
赏
共1人点赞
王栋春
当前在线
关注TA
发消息
4279
主题2万
帖子8万
积分
版主
积分81568
在线时间11861 小时
精华376
注册时间2013-11-24
最后登录2025-6-9
打赏11.11受赏2278.03
5楼
王栋春|
|
2024-12-20 17:02
|
只看该作者
如果将单核MCU系统的程序搬到多核系统中的话,本人通常会将单核原有程序专门放置于多核系统中一个固定区域,这种操作的好处有两点:首先是可以为日后的修改和补充等操作带来便利;第二点就是这样可以避免原有程序同其它程序间的纠缠,避免不必要的故障现象出现。当然如果单核系统的程序在移入多核系统时要和新程序兼容运行,本人多会把原有程序做成一个嵌套。
使用特权
评论回复
赏
共1人点赞
2218120025
当前离线
关注TA
发消息
13
主题105
帖子315
积分
资深技术员
资深技术员, 积分 315, 距离下一级还需 185 积分
资深技术员, 积分 315, 距离下一级还需 185 积分
积分315
在线时间335 小时
精华0
注册时间2020-6-21
最后登录2025-6-8
打赏0.00受赏42.00
6楼
2218120025|
|
2024-12-20 17:07
|
只看该作者
有没有可能只需底层驱动进行修改,应用层不动也可以移植成功。
使用特权
评论回复
赏
点赞共0人点赞
仗剑天涯1412
当前离线
关注TA
发消息
7
主题106
帖子328
积分
资深技术员
资深技术员, 积分 328, 距离下一级还需 172 积分
资深技术员, 积分 328, 距离下一级还需 172 积分
积分328
在线时间372 小时
精华0
注册时间2024-9-24
最后登录2025-6-8
打赏0.00受赏227.00
7楼
仗剑天涯1412|
|
2024-12-20 17:09
|
只看该作者
平时用rtos做开发,虽然也是分时完成的。但是如果移植到多核的话会相对容易些
使用特权
评论回复
赏
点赞共0人点赞
740071911
当前离线
关注TA
发消息
47
主题879
帖子2653
积分
初级工程师
初级工程师, 积分 2653, 距离下一级还需 347 积分
初级工程师, 积分 2653, 距离下一级还需 347 积分
积分2653
在线时间1038 小时
精华0
注册时间2016-1-13
最后登录2025-6-7
打赏10.10受赏291.88
8楼
740071911|
|
2024-12-20 17:17
|
只看该作者
应该就是两个mcu集成到一块封装上吧
使用特权
评论回复
赏
点赞共0人点赞
ming899
当前离线
关注TA
发消息
1
主题88
帖子281
积分
中级技术员
中级技术员, 积分 281, 距离下一级还需 19 积分
中级技术员, 积分 281, 距离下一级还需 19 积分
积分281
在线时间156 小时
精华0
注册时间2009-5-1
最后登录2025-6-6
打赏0.00受赏59.00
9楼
ming899|
|
2024-12-20 17:17
|
只看该作者
多核意味着多线程,对层逻辑管控更苛刻,特别是逻辑嵌套和中断嵌套的管理,状态机理论要熟悉才行。
使用特权
评论回复
赏
点赞共0人点赞
WK520077778
当前离线
关注TA
发消息
39
主题761
帖子2290
积分
初级工程师
初级工程师, 积分 2290, 距离下一级还需 710 积分
初级工程师, 积分 2290, 距离下一级还需 710 积分
积分2290
在线时间1095 小时
精华0
注册时间2020-8-27
最后登录2025-6-8
打赏9.90受赏1155.80
10楼
WK520077778|
|
2024-12-20 17:20
|
只看该作者
在车用mcu例子中,单核处理器控制电机在硬件设计,代码编辑和系统架构方面成本较低,结构简单相应快因此效率较高,根据需求和功能应用方面,双核或多核mcu相对复杂,适合多任务并行处理,在自动驾驶中地盘控制,域控和电源控制,云通信等。在单核向多核移植过程中,底层逻辑不会改变,应随着功能性拓展修改应用层代码。同系列mcu的系统平台下,一般单核向多核升级问题较小,多核降级到单核问题相对多,
使用特权
评论回复
赏
点赞共0人点赞
lulugl
当前离线
关注TA
发消息
177
主题810
帖子2590
积分
初级工程师
初级工程师, 积分 2590, 距离下一级还需 410 积分
初级工程师, 积分 2590, 距离下一级还需 410 积分
积分2590
在线时间763 小时
精华5
注册时间2015-8-6
最后登录2025-6-8
打赏0.00受赏465.00
11楼
lulugl|
|
2024-12-20 17:35
|
只看该作者
多核开发与单核也差不多,只是需要处理核与核之间的通信就好了。
使用特权
评论回复
赏
点赞共0人点赞
6552918
当前离线
关注TA
发消息
102
主题1284
帖子3969
积分
中级工程师
中级工程师, 积分 3969, 距离下一级还需 1031 积分
中级工程师, 积分 3969, 距离下一级还需 1031 积分
积分3969
在线时间2040 小时
精华3
注册时间2008-6-13
最后登录2025-6-8
打赏0.00受赏803.80
12楼
6552918|
|
2024-12-20 17:38
|
只看该作者
在当下这么卷的MCU行业,各家除了在外设上创新外,也都不约而同的在向多核方向发力,有做同构多核的,有做异构双核的,有做大小核高低性能搭配的,有做ARM和risc-v搭配的,各种方案层出不穷。但更多是还是大小核高低性能搭配的,以便实现1+1>2的效果,以实现降本增效的效果。在多核方案中比较难的是内核间通信问题,在裸机使用和RTOS使用上都有些问题需要注意,厂家和各RTOS都注意到了先关问题,都给出了相应的解决方案。比较遗憾的是我也只听过相关的介绍,没有实际使用的经验,希望以后会用到,再发表踩坑经验吧。
使用特权
评论回复
赏
共1人点赞
a20091818
当前离线
关注TA
发消息
5
主题181
帖子547
积分
高级技术员
高级技术员, 积分 547, 距离下一级还需 453 积分
高级技术员, 积分 547, 距离下一级还需 453 积分
积分547
在线时间120 小时
精华0
注册时间2013-10-30
最后登录2025-5-30
打赏0.00受赏159.00
13楼
a20091818|
|
2024-12-20 17:39
|
只看该作者
平时用rtos做开发,虽然也是分时完成的。但是如果移植到多核的话会相对容易些
使用特权
评论回复
赏
共1人点赞
suncat0504
当前离线
关注TA
发消息
158
主题4432
帖子1万
积分
资深工程师
资深工程师, 积分 13371, 距离下一级还需 6629 积分
资深工程师, 积分 13371, 距离下一级还需 6629 积分
积分13371
在线时间1486 小时
精华4
注册时间2018-6-18
最后登录2025-6-8
打赏0.00受赏1641.00
14楼
suncat0504|
|
2024-12-20 19:35
|
只看该作者
不了解多核的内部资源分配,把单核程序改成多核程序,会有难度吧?是不是要先学习内部框架、资源分配,在充分理解的基础上改造,更可靠?
使用特权
评论回复
赏
共2人点赞
田舍郎
当前离线
关注TA
发消息
85
主题1989
帖子5957
积分
高级工程师
高级工程师, 积分 5957, 距离下一级还需 2043 积分
高级工程师, 积分 5957, 距离下一级还需 2043 积分
积分5957
在线时间938 小时
精华0
注册时间2013-5-27
最后登录2025-6-8
打赏0.00受赏1079.00
15楼
田舍郎|
|
2024-12-20 21:21
|
只看该作者
和操作系统好有一比,一个核处理一个任务,任务间通讯,同步,交互,协作。
使用特权
评论回复
赏
共2人点赞
地瓜patch
当前离线
关注TA
发消息
1613
主题1万
帖子4万
积分
版主
积分43649
在线时间4555 小时
精华12
注册时间2005-10-24
最后登录2025-6-8
打赏31.11受赏5079.18
16楼
地瓜patch|
|
2024-12-20 21:26
|
只看该作者
大型设备功能复杂,需要多个MCU实现不同功能,这样多个MCU也就是实际上的多核。多个MCU间一般是主从式结构,应答式通讯,或者中断触发。实现信息交互,他们之间有通讯协议。想必多核也是这样的原理吧。或者大差不差。单核移植到多核,应该不叫移植,重新开发。
使用特权
评论回复
赏
共3人点赞
dian988
当前离线
关注TA
发消息
0
主题14
帖子52
积分
初级技术员
初级技术员, 积分 52, 距离下一级还需 48 积分
初级技术员, 积分 52, 距离下一级还需 48 积分
积分52
在线时间26 小时
精华0
注册时间2022-10-18
最后登录2025-3-18
打赏0.00受赏30.00
17楼
dian988|
|
2024-12-20 23:10
|
只看该作者
铝电解电容的容值误差在20%左右,那么瓷片电容,铝电容,独石电容的哪种电容误差最下?能到达多少?
使用特权
评论回复
赏
点赞共0人点赞
zhoupxa
当前离线
关注TA
发消息
38
主题693
帖子2126
积分
初级工程师
初级工程师, 积分 2126, 距离下一级还需 874 积分
初级工程师, 积分 2126, 距离下一级还需 874 积分
积分2126
在线时间1026 小时
精华0
注册时间2004-9-30
最后登录2025-6-8
打赏11.11受赏244.00
18楼
zhoupxa|
|
2024-12-20 23:24
|
只看该作者
多核MCU对于使用单核MCU、执行重负荷的多任务处理的应用无疑是一种“土枪换**”式的跨越式解决方案,有助于大幅提升系统性能,期望多核MCU厂商能够提供高效、易用的软件开发工具,以降低开发难度,提高开发效率
使用特权
评论回复
赏
共1人点赞
dyx8899
当前离线
关注TA
发消息
3
主题455
帖子1369
积分
助理工程师
助理工程师, 积分 1369, 距离下一级还需 631 积分
助理工程师, 积分 1369, 距离下一级还需 631 积分
积分1369
在线时间424 小时
精华0
注册时间2022-7-28
最后登录2025-6-8
打赏0.00受赏108.00
19楼
dyx8899|
|
2024-12-21 01:02
|
只看该作者
可不可以将多核看成是具有中断优先级的多个进程来对待?如果可以,那么可以构建处理框架,让多个核心组合协调起来,我就把它看成一个个线程,分工合作,该调用的时候就调用,每个核心专心处理分内的事!我想这是不是一种思路?
使用特权
评论回复
赏
点赞共0人点赞
dirtwillfly
当前离线
关注TA
发消息
1186
主题3万
帖子11万
积分
版主
积分111440
在线时间6842 小时
精华24
注册时间2010-2-9
最后登录2025-6-8
打赏173.86受赏592.98
20楼
dirtwillfly|
|
2024-12-21 08:38
|
只看该作者
如果之前熟悉RTOS的话,使用多核很容易啊。完全没有难度。
单核迁移到多核,实时性会更好,关键的逻辑使用单独的核来执行,效果会更好。比如无刷电机的控制,foc用一个核,通讯及其他逻辑用一个核
使用特权
评论回复
赏
共1人点赞
腾讯为什么也做操作系统?