戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

エンベデッドシステムスペシャリスト 2011年 午前2 問01


問題文

16ビットのダウンカウントのカウンタを用い、そのカウンタの値が0になると割込みを発生するハードウェアタイマがある。カウンタに初期値として10進数の150をセットしてタイマをスタートすると、最初の割込みが発生するまでの時間は何マイクロ秒か。ここで、タイマクロックは16MHzを32分周したものとする。

選択肢

ア:0.3
イ:2
ウ:150
エ:300(正解)

🔒 解説は解答すると表示されます

ハードウェアタイマの割込み時間【午前2解説】

正解の理由

タイマクロックは、16 MHzのクロックを32分周したものです。
したがって、タイマクロックの周期は次のとおりです。
カウンタは初期値150から1クロックごとに1ずつ減少し、150回後に0になります。よって、最初の割込みが発生するまでの時間は次のとおりです。
したがって、正しい選択肢はエです。

解法ステップ

  1. 分周後のタイマクロック周波数を求めます。
  2. タイマクロックの周期を求めます。
  3. カウンタが0になるまでのクロック数を掛けます。

選択肢別の誤答解説

  • ア:0.3
    300マイクロ秒をミリ秒に換算すると0.3ミリ秒です。選択肢の単位はマイクロ秒なので、単位を取り違えています。
  • イ:2
    2マイクロ秒はタイマクロック1周期の時間です。カウンタが150回カウントする時間を考慮していません。
  • ウ:150
    初期値の150を、そのまま時間として扱っています。カウンタ値にクロック周期を掛ける必要があります。
  • エ:300
    1カウントあたり2マイクロ秒なので、150カウントで300マイクロ秒となります。

よくある誤解

  • 分周すると周波数が高くなる
    分周後の周波数は、元の周波数より低くなります。16 MHzを32分周すると0.5 MHzです。
  • クロック周波数と周期を混同する
    周波数は1秒あたりの回数、周期は1回あたりの時間です。周波数が0.5 MHzなら、周期は2マイクロ秒です。
  • 16ビットという情報を計算に使う
    16ビットはカウンタが扱える値の範囲に関係します。この問題では初期値150のカウント時間を求めるため、ビット数は計算に使いません。

補足コラム

ダウンカウンタは、設定した値からカウントダウンし、0に到達したときに割込みを発生させます。タイマの時間を求める基本式は、次のとおりです。
なお、分周比が大きいほどタイマクロックの周波数は低くなり、1カウントあたりの時間は長くなります。

FAQ

Q. 16 MHzの周期を先に求めてから計算してもよいですか?
A. はい。16 MHzの周期は0.0625マイクロ秒です。32分周すると周期は32倍になり、2マイクロ秒です。
Q. なぜ16ビットの情報が問題文にあるのですか?
A. カウンタのビット数は、設定できる値の範囲を示す情報です。この問題では初期値150を表せるため、割込み時間の計算には影響しません。

関連キーワード: ダウンカウンタ、ハードウェアタイマ、分周、クロック周期、割込み
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?

クイズ画面へ遷移する→

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について