完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-25 15:46 编辑
大家好: 我在用6678进行多核同步,在共享内存里开一个8个的数组,每个元素对应一个核,主核对应的元素置0使能从核开始运行,从核之前一直轮询主核对应的元素,全部从核对应的元素置0使能主核开始运行,主核之前轮询。可是从核如果一个一个运行就可以,如果一起运行的话,就不能使对应元素值置0,貌似死置完零又被置1了,因为我有语句: while(Mark[core_num]) [ Mark[core_num] = 0; Cache_wb(&Mark[core_num], 4, Cache_Type_ALL, TRUE); ] 之后就一直停在: while(Mark[0]) [ Cache_inv(&Mark[0], 32, Cache_Type_ALL, TRUE); asm (" NOP 9"); asm (" NOP 9"); asm (" NOP 9"); asm (" NOP 9"); asm (" NOP 9"); ] 主核的程序是: printf("使能从核运行2n"); Mark[0] = 0; Cache_wbInv(&Mark[0], 4, Cache_Type_ALL, TRUE); platform_delay(30); printf("等待从核运行完成2n"); while(Mark[1]|Mark[2]|Mark[3]|Mark[4]|Mark[5]|Mark[6]|Mark[7]) [ Cache_inv(&Mark[1], 28, Cache_Type_ALL, TRUE); ] 主核停在了轮询上,应该不存在cache 一致性的问题,我每次都writeback和invalide了。最后看共享内存里面,除了Mark[7] = 0,其他的都是1,不知道为啥,很纠结!请专家不吝赐教!跪谢! |
|
相关推荐
1 条评论
|
|
只有小组成员才能发言,加入小组>>
574 浏览 1 评论
408 浏览 1 评论
609 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
866 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
695 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
162浏览 29评论
1081浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
306浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
267浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
118浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-25 08:39 , Processed in 0.889884 second(s), Total 89, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号