多核心MCU是怎么编程的?
张静茹2015/03/26软件综合 IP:北京
r_3053701.jpg
像是多核心Cortex-A8 A9 这样的CPU跑裸机的话多个核心是怎么编程的?
还有像是不对称多核心 一个arm内核 一个dsp内核这种是怎么编程的?

[修改于 9年1个月前 - 2015/03/26 19:51:46]

来自:计算机科学 / 软件综合
10
1
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
smith
9年1个月前 IP:广东
759014
两个不一样,多核对称架构的必须上系统,否则自己写作业系统(难度极大),所以基本上都是用linux/WindowsRT,
由操作系统进行调度。应用要用到多核的话只需要优化程序为多线程应用即可了,对应用程序来说是透明可移植的。

非对称多核芯片,两个CPU进行通信使用MessageBox,可以理解为一个硬件FIFO,向这个地址写入固定的command,另一个CPU去读取command处理,所以通常大的CPU跑的是linux系统,另一个CPU是裸机或运行很小的系统,开发环境和交叉编译工具也是独立的。通常的做法是为这个小的cpu写一个driver,初始化的时候加载固件,然后通过ioctl给调用driver发command让小的cpu干活。

非对称的多核的芯片开发需要很多的硬件资料,一般是SOC原厂负责开发
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
张静茹作者
9年1个月前 IP:北京
759021
引用 smith:
两个不一样,多核对称架构的必须上系统,否则自己写作业系统(难度极大),所以基本上都是用linux/WindowsRT,
由操作系统进行调度。应用要用到多核的话只需要优化程序为多线程应用即可了,对应用程序来说是透明可移植的。

非对称多...
1,如果像是多核心A9这样的cpu非要裸机的话,只能用一个核心吗?
2.如果是跑操作系统,多个核心是怎么调度的?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
smith
9年1个月前 IP:广东
759025
引用 张静茹:
1,如果像是多核心A9这样的cpu非要裸机的话,只能用一个核心吗?
2.如果是跑操作系统,多个核心是怎么调度的?
1.可以,实际上uboot里面就是这么干的,不过这样运行的就没有多核的优势了。
2.多核调度依赖SMP算法,linux的代码在linux/arch/arm/smp.c里面,多核调度还是在基本的时间片调度上面加的,这部分搜索linux的文档可以查看,不过不同的厂商会开发自己cpu-hotplug模块(CPU开关核算法),基本上还是依赖于当前系统的CPU、IO负载来决定是否开关核,这对功耗很重要
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
张静茹作者
9年1个月前 IP:北京
759028
引用 smith:
1.可以,实际上uboot里面就是这么干的,不过这样运行的就没有多核的优势了。
2.多核调度依赖SMP算法,linux的代码在linux/arch/arm/smp.c里面,多核调度还是在基本的时间片调度上面加的,这部分搜索linux的文档...
听君一席话,非常感谢!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
smith
9年1个月前 IP:广东
759045
引用 张静茹:
听君一席话,非常感谢!
我主要还是搞Android系统框架的多,内核只是略知一二,内核的学问很大
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
hackerboygn
9年1个月前 IP:美国
759056
自古2L出真相
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
mass_lynnxy
9年1个月前 IP:四川
759127
2楼不是沙发吗?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
chenhello
9年1个月前 IP:湖南
759156
学习了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yanli12321
9年1个月前 IP:浙江
759170
学习了。。。。。表示正在攒钱买cyclone V的开发板,玩玩嵌入ARM的FPGA
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
潜伏
9年1个月前 IP:浙江
759187
学习了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
张静茹
进士 学者 机友 笔友
文章
138
回复
1857
学术分
1
2010/12/30注册,2个月1天前活动
暂无简介
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}