programing:arm-programing:arm-dmb-dsb-isb
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| programing:arm-programing:arm-dmb-dsb-isb [2018/10/03 01:03] – 作成 yoko | programing:arm-programing:arm-dmb-dsb-isb [2020/03/18 23:32] (現在) – yoko | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ARMは記述した順番に命令実行されない | ARMは記述した順番に命令実行されない | ||
| =============================== | =============================== | ||
| - | ARMマイコンでは、命令実行の効率化をする為にCPU内部ハードウェアレベルで、命令実行の入れ替えを行って効率化している。 | + | ARMマイコンでは、命令実行を効率化する為にCPU内部ハードウェアレベルで、命令実行の入れ替えを行っている。 |
| 従って、命令を記述した順番に命令実行やデータアクセスが必ずしも実行されない。特に、IOレジスタ操作などで実行順番が重要な場合には注意が必要。 | 従って、命令を記述した順番に命令実行やデータアクセスが必ずしも実行されない。特に、IOレジスタ操作などで実行順番が重要な場合には注意が必要。 | ||
| 行 58: | 行 58: | ||
| </ | </ | ||
| - | - EWARMでは、`__DSB()` `__ISB()` などのようにコンパイラ組み込み関数を利用しても記述できる。 | + | - EWARMでは、`__DSB()` `__ISB()` などのようにコンパイラ組み込み関数を利用しても記述できる。(`# |
| 補足 | 補足 | ||
| ---- | ---- | ||
| - I/ | - I/ | ||
| + | |||
| + | 参考 | ||
| + | ---- | ||
| + | |||
| + | 1. [[wpjp> | ||
| + | 2. [[http:// | ||
| + | 3. [[https:// | ||
| + | 4. [[https:// | ||
programing/arm-programing/arm-dmb-dsb-isb.1538528605.txt.gz · 最終更新: by yoko
