Cortex-M3のテイルバイティングと後期割り込み割り込み到着

【噛み]が中断
特定の例外に応答して、プロセッサ、及び他の異常があれば、それらはない十分に高い優先度である場合、それらはブロックされます。

そうする際、現在の異常な戻り、異常のハンドルから吊り下げシステム、または最初POP、POP、再度コンテンツ処理プッシュバック場合は、無駄なCPU時間の実施後。このように、のCortex-M3は、これらのレジスタをPOPが、時間のかかる排除するために、以前の異常が良い結果PUSH、POPやPUSH操作を持って使用し続けないであろう。

この方法では、PUSH / POP操作の唯一の実装前後に、前に尾の後に例外のように外を見て。図に示すように、したがって、2つの間の「時間間隔」は、多くの異常な狭く:

従来の比較処理(ARM7)が遮断されます。

[ブレイク]のように後半
のCortex-M3は、に対処するための別のメカニズムがある割り込み、それがある、優先順位の役割を強調し、「遅刻を例外処理します。」

Cortex-M3の異常応答シーケンスのペアは、早い段階にとどまっているとき:スタックの段階、さらに他のサービスプログラムを実行します。この時点で優先度の高い珍しい要求を受けた場合は、このプッシュは行うには、優先順位の高い割り込みなっています。スタックした後、それが優先順位の高い例外サービスプログラムを実行します。後半けれども、しかし高いため、優先度の可視、優先度の高い例外サービスプログラムが最初に処理することができるように、優先度の低い異常スタッキングは、スタックの優先順位の高い異常になっています。
初期#1に応答して低優先度が異常である場合、例えば、高い優先度があれば、描画が完了した後に行われる、アプローチプロセスを「後期壊す」ことができるように手遅れではないとして異常#2、#2を検出しましたISR#2。示されているように:

場合、例外#2遅すぎる、ISRが実行されたように、命令#1、より多くの時間とスタック領域のプロセッサ32個の追加バイトを必要とする従来のプリエンプションプレス工程、。ISR#2が終了した後、「テールかむブレイク」によってISR#1の実行を開始します。

 


   参照からの引用:

"のCortex-MコアレクチャーシリーズとSTM32- 2チュートリアル.PDF"

"ARMのCortex-M3決定的なガイドの.pdf"

 

おすすめ

転載: www.cnblogs.com/utank/p/11325455.html