转载: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204hc/CIHJFGFE.html
http://www.softwarehistory.net/h/Cortex_M3_DefinGuide/29.php
4.11.9. DBG、DMB、DSB 和 ISB
调试指令、数据内存屏障指令、数据同步屏障指令和指令同步屏障指令。
语法
DBG{cond} {#option}
DMB{cond} {option}
DSB{cond} {option}
ISB{cond} {option}
其中:
cond
是一个可选的条件代码(请参阅条件执行)。
option
对提示操作的可选限制。
用法
这些是提示指令。 是否实现这些指令是可选的。 只要其中任何一个指令未实现,则与 NOP 效果相同。
DBG
调试提示可向调试系统及其相关系统发送提示。 有关这些系统如何使用此指令的信息,请参这些系统的文档。
DMB
数据内存屏障可作为内存屏障使用。 它可确保会先检测到程序中位于 DMB 指令前的所有显式内存访问指令,然后再检测到程序中位于 DMB 指令后的显式内存访问指令。它不影响其他指令在处理器上的执行顺序。
option 的允许值为:
SY
完整的系统DMB 操作。 这是缺省情况,可以省略。
DSB
数据同步屏障是一种特殊类型的内存屏障。 只有当此指令执行完毕后,才会执行程序中位于此指令后的指令。 当满足以下条件时,此指令才会完成:
位于此指令前的所