TI中文支持网
TI专业的中文技术问题搜集分享网站

共享内存 变量值刷新方法

 大家好

    我将变量timeSyncMark定义在共享内存区域,它分配到的地址是0X0C1FFFF0

   程序中的定义:

                            #pragma DATA_SECTION (timeSyncMark, ".sync");
                            Uint32 timeSyncMark = 0;

link.cmd文件:

                           SECTIONS
                           {

                          .sync: load >> MSMCSRAM

                           }

问题:

 我在核0中改变timeSyncMark的值之后,期望在其他核内能读到这个变化。但在其他核中,该变量的值并未改变。

是不是因为数据没有从缓存中写回共享内存?该怎么解决?

多谢

James Li2:

应该是没有维护多核的L1D的cache一致性修改这个变量的core要write back timeSyncMark,读取这个变量的core要invalid timeSyncMark

赞(0)
未经允许不得转载:TI中文支持网 » 共享内存 变量值刷新方法
分享到: 更多 (0)