タイマ/カウンタとは?たいま/かうんた
タイマ/カウンタとは、クロックまたは外部イベントを計数する周辺回路。設定値との一致で割込みを発生させるコンペアマッチ、外部信号の変化時点のカウンタ値をラッチするインプットキャプチャ、デューティ比を可変にして出力するPWMが主要な機能である。分周器でクロックを落としてから計数するため、必要な計時分解能と最大計時長は分周比とカウンタのビット幅で決まり、この二つがトレードオフになる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
計時をソフトウェアのループ待ちで行うと、CPUを占有するうえに他の割込みが入るたびに時間がずれ、周期の保証ができない。そこで計数専用のハードウェアを置き、一致検出で割込みを上げてCPUを解放する構成が標準になった。分周器が挟まっているのも制約の産物で、システムクロックをそのまま数えると必要な分解能に対してカウンタのビット幅がすぐ足りなくなるためである。結果として分解能と最大計時長のトレードオフが設計者の判断事項になり、試験ではこの設定値計算とオーバフローの扱いが問われる。
具体例
クロック20MHz、分周比1/8なら計数クロックは2.5MHz(0.4μs周期)。1msを作るには2500カウント必要で、0起算のコンペアレジスタには2499を設定する。16ビットカウンタなら最大65536カウント=約26msまでで、それを超える計時はオーバフロー割込みで上位をソフトウェア側に持たせる。ロータリエンコーダのパルスをカウンタで拾い、一定周期のタイマ割込みで差分を取れば回転速度が得られる。
試験での引っ掛け
0起算のため設定値は「必要カウント数−1」で、ここを落とすのが定番。もう一つは分解能と計時長の取り違えで、分周比を大きくすると長く測れる代わりに分解能が粗くなる。またカウンタ値の読み出しは計数中に上位・下位バイトがまたがって更新されうるため、ラッチ機構を使わずに二回に分けて読むと不整合な値を掴む。周期処理をタイマ割込みではなくソフトウェアのループ待ちで作ると、他の割込みで簡単に時間がずれる点も問われる。
関連用語
出た過去問
出典:平成29年度 秋期 応用情報技術者試験 午前 問22(IPA)
組込みシステムにおける、ウォッチドッグタイマの機能はどれか。
正解:あらかじめ設定された一定時間内にタイマがクリアされなかった場合、システム異常とみなしてシステムをリセット又は終了する。
要点:一定時間内にクリアされないと異常とみなしリセットする
ウォッチドッグタイマは、正常動作中のプログラムが定期的にタイマをクリアすることを前提に動作する仕組みである。暴走や停止によって所定時間内にクリアされないと、タイマが満了して異常と判断し、システムのリセットや終了などの復旧処理を起動する。
出典:平成29年度 春期 応用情報技術者試験 午前 問22(IPA)
16ビットのダウンカウンタを用い,カウンタの値が0になると割込みを発生するハードウェアタイマがある。カウンタに初期値として10進数の150をセットしてタイマをス…
正解:300
要点:タイマの割込み周期は分周後のクロック周期×カウント値
入力クロック16MHzを32分周するとカウント用クロックは16÷32=0.5MHz、すなわち周期2マイクロ秒になる。150をセットしたダウンカウンタが0になるまでに150カウント必要なので、2×150=300マイクロ秒後に最初の割込みが発生する。
出典:令和元年度 秋期 応用情報技術者試験 午前 問21(IPA)
組込みシステムにおける、ウォッチドッグタイマの機能はどれか。
正解:あらかじめ設定された一定時間内にタイマがクリアされなかった場合、システム異常とみなしてシステムをリセット又は終了する。
要点:ウォッチドッグタイマは定期クリアの途絶で暴走を検知しリセットする
ウォッチドッグタイマは、正常動作中のプログラムが定期的にタイマをクリア(キック)し続けることを前提に置く監視機構です。暴走やハングでクリアが途絶えると、設定時間の経過でタイマが満了し、異常とみなしてリセットや停止を行います。異常を能動的に検知するのではなく、「生存の合図が来ないこと」で異常を判断する点が特徴です。
出典:令和3年度 秋期 応用情報技術者試験 午前 問21(IPA)
組込みシステムにおける、ウォッチドッグタイマの機能はどれか。
正解:あらかじめ設定された一定時間内にタイマがクリアされなかった場合、システム異常とみなしてシステムをリセット又は終了する。
要点:ウォッチドッグタイマは定期クリアの途絶で暴走を検知する
ウォッチドッグタイマは、正常動作中のプログラムが定期的にタイマをクリア(リフレッシュ)することを前提とした監視機構である。暴走やハングでクリアが行われず設定時間を超過すると、タイムアウトとみなしてシステムをリセットするなどの復旧処理を行う。組込みシステムでプログラム暴走を検知する定番の手段である。
出典:令和7年度 秋期 応用情報技術者試験 午前 問10(IPA)
モーターの軸に装着された回転センサーから出力されるパルスの周期を、1MHzのクロック周波数でカウントアップするタイマーで計測したところ、10,000カウントであ…
正解:50
要点:クロック周期×カウント値が計測時間、1回転のパルス数で割る
1MHzのクロックは1カウント1マイクロ秒なので、10,000カウントは10ミリ秒である。これがパルス1周期の時間に当たる。センサーは1回転につき2パルスを出すので1回転は20ミリ秒となり、1秒あたりの回転数は1÷0.02=50回転となる。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。