完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
我在做多核的同步的时候,定义了一个int型的flag,并且把它放到了共享存储区中。在core0中将其值改写为1,但在其他核中该值依然是0,并没有随着core0改变。
只是知道用的是CACHE_invL1d之类的函数,但是具体操作不知道。。有没有例子什么的可以借鉴一下 |
|
相关推荐
4个回答
|
|
你应该先使用CACHE_wbL1d()函数进行回写,然后再使用CACHE_invL1d()使其无效。如下
#pragma DATA_SECTION(flag,".MSRAM") #pragma DATA_ALIGN(flag,8) volatile int flag=0 void main [ 这里应该有L1 L2的缓存配置 if ( coreID == 0 ) [ 做完一些初始化以及相应的处理 flag = 1; CACHE_wbL1d ((void*) &flag , 4 , CACHE_WAIT ); ] else [ do[ CACHE_invL1d ((void*) &flag , 4 , CACHE_WAIT ); ]while (flag == 0) ] ] |
|
|
|
zhanan5193 发表于 2018-6-21 04:21 谢谢你,帮大忙了,写得很具体,一目了然 能不能说一下L1L2的cache设置,对这个不熟悉,万分感谢 |
|
|
|
不 知道您说的设置具体是指什么,L1 cache分成L1P, L1Dcache,L2cache 可配,也可全部用作RAM 可以参考CSL中CACHE函数的操作 结合CACHE user guide进行理解 |
|
|
|
liuqin123 发表于 2018-6-21 04:51 我想把L2设置为ram,但是不知道用什么语句,如何用 |
|
|
|
只有小组成员才能发言,加入小组>>
332 浏览 1 评论
528 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
772 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
649 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1124 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
54浏览 29评论
88浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
248浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
196浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
54浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 17:53 , Processed in 0.874415 second(s), Total 86, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号