動作モードとクロックの供給


【動作モード】

PICの動作モードには、クロックの供給方法によって下記3種類の
動作モードがあります。

(1) Runモード
  通常の実行状態で、すべての機能が動作可能な状態です。

(2) Dozeモード
  すべての機能が実行可能な状態は同じですが、CPUと周辺モジュール
  が異なるクロック周波数で動作するモードです。
  CPUだけ低い周波数で動作させることで消費電流を削減できます。

(3) Idleモード
  周辺モジュールにはクロックが供給されて動作可能な状態ですが、
  CPUへのクロック供給が断たれて停止状態です。
  周辺からの割り込みでウェイクアップして動作を開始します。

【Runモード】

クロック供給が下図のように全部の範囲に供給されています。
すべての機能が動作可能ですが、消費電流は最大となります。


【Dozeモード】

下図のようにすべてにクロックは供給されますが、CPUと周辺では異なる
クロックが供給されます。
CPUとメモリへのクロックは分周器(Postscaler)で低くされてから供給され
ますので、CPU命令実行動作が遅くなります。
しかしその分消費電流は少なくなります。
したがって、特に急ぐ機能がない場合には有効な手段となります。
Runモード時の消費電流の35%〜75%程度まで削減することができます。


【Idleモード】

このモードでは周辺モジュールへは通常通りのクロックが供給されますが
CPUへのクロック供給は停止します。
したがって命令実行ができませんから、機能は停止します。しかし周辺
モジュールへのクロックは継続されていますから、タイマやUART受信などの
動作はそのまま継続し、割り込み発生によりCPUがウェイクアップして
動作が再開されます。
CPUが停止することでかなりの消費電流を削減することができます。
DMA機能があるPICの場合には、DMA動作も継続します。
したがって、周辺モジュールの動作に関連するイベントが発生しなければ
特に実行する機能がないような場合に有効な手段となります。
Runモード時の25%くらいまで削減することができます。