令和7年度 秋期 午前 問23
ハードウェア
最初の割込みが発生するまでの時間
16 ビットのダウンカウンターを用い,カウンターの値が 0 になると割込みを発生するハードウェアタイマーがある。カウンターに初期値として 10 進数の 150 をセットしてタイマーをスタートすると,最初の割込みが発生するまでの時間は何マイクロ秒か。ここで,タイマーの入力クロック周波数は 16 MHz を 32 分周したものとする。
- ア0.3
- イ2
- ウ150
- エ300
答えと解説を見る
✓ これが正解エ300
解説
分周後の1周期2マイクロ秒を150倍で300です。
この設問は、上位から与えられたクロックを分周してからカウンターに入れ、初期値の分だけ減らしたときに、最初の割込みが発生するまでの時間を求めさせています。ですから、選び方の軸は、分周を反映して1カウントぶんの時間を出せているかという一点で見分けます。手順は3段で組み立てます。まず、元のクロック周波数を分周比で割り、実際にカウンターへ入る周波数を出します。次に、その周波数の逆数を取って1カウントぶんの周期を出します。最後に、初期値の回数だけ周期を掛け合わせ、値がゼロに到達するまでの時間を求めます。実際に数値を入れると、分周後の周波数は500キロヘルツ、1周期は2マイクロ秒、150回ぶんの積は300マイクロ秒に落ち着きます。単位換算を1段でも省くと桁の異なる誤答に当たるので、3段を順に踏むのが要点です。
ほかの選択肢はなぜ違うのか
- ア0.3:0.3という値は、時間の単位を最後にミリ秒とマイクロ秒で取り違えたときに出てくる形の答えです。300マイクロ秒はそのまま0.3ミリ秒と等しいので、単位を書き換えるだけで見た目が変わって見えてしまう典型的な誤答にあたります。
- イ2:2という値は、分周を反映した1カウントぶんの周期そのものを、初期値による掛け合わせを行う前に置いた形の答えです。カウンターがゼロに到達するまでに何回の減算が必要かを反映していないため、時間の量として不足しています。
- ウ150:150という値は、周期を掛ける段を省き、カウンターの初期値の数字をそのまま答えに置いた形です。周波数や分周比の情報を使っていないので、単位を持つ時間の量として意味を持たない答えの形になっています。
出典:令和7年度 秋期 応用情報技術者試験 午前 問23
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)