完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-25 15:08 编辑
请问当定义多核共享的变量的时候 是否要定义成Volatile变量 多核共享的Volatile变量 是否仍然要求程序员维护cache的一致性? |
|
相关推荐
5个回答
|
|
您好,
对于多核同步的标志位之类变量使用volatile,并且需要定义在noncache避免维护cache一致性; 但是对于普通的多核共享数据可以定义为非volatile,根据需要可以定义在noncache or cache段。 |
|
|
|
zbb9612 发表于 2018-6-25 05:48 Hi Andy! 我指的就是多核同步标志位变量 应该放在共享内存中 你说的noncache是指的哪级哪段内存呢? 怎样指定到noncache or cache 谢谢! |
|
|
|
YZDIC 发表于 2018-6-25 05:59 您好, 将所标志位所存放的地址空间配置为noncache属性即可,可以调用CSL函数进行配置,具体可以参考csl cache相关文件。 |
|
|
|
Thanks。如果不设置noncache,只要维护一致性也可以吧。 |
|
|
|
zbb9612 发表于 2018-6-25 05:48 Andy Yin你好,我也遇到多核同步问题,具体描述:每个核完成类似的任务,但是核之间无数据交流,唯一需要通信的是一个核间同步标志如:flag(长度为3,分别控制3个核).我是这样做的:在核0中对变量初始化,并完成一定的任务,同时对flag赋初值。然后核1,2,3根据flag的值判断是否在相应的核里面执行自己的任务。我将flag所在存储空间定义为noncacheable,且将flag声明为volatile变量。但是核1,2,3就是不能正确的完成任务,请指点一下,不胜感激 |
|
|
|
只有小组成员才能发言,加入小组>>
336 浏览 1 评论
529 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
774 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
651 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1130 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
56浏览 29评论
127浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
251浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
200浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
56浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 23:29 , Processed in 0.593566 second(s), Total 52, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号