如果我们使用DSB,是否需要DMB

时间:2014-04-16 09:19:29

标签: arm

DSB是DMB的超集吗?

如果不考虑性能,可以用DSB替换DMB

1 个答案:

答案 0 :(得分:2)

DSBDMB的超集,因此如果性能不是问题,则可以用DSB替换。

来自Cortex-A Series Programmer's Guide

  

数据同步屏障(DSB)

     

此指令强制核心   等待所有未决的显式数据访问在任何之前完成   可以执行附加指令阶段。没有影响   预先获取说明。

     

数据记忆障碍(DMB)

     

此   指令确保所有内存访问之前的程序顺序   在任何显式记忆之前,在系统中观察到屏障   在屏障之后以程序顺序出现的访问。它不是   影响在核心上执行的任何其他指令的顺序,   或取指令。