令和5年度第三種電気主任技術者上期試験 機械科目 問182 解説 問18(b) 問18
問18(b) 問 18 図は,マイクロプロセッサの動作クロックを示す。マイクロプロセッサは動作クロックと呼ばれるパルス信号に同期して処理を行う。また,マイクロプロセッサが 1 命令当たりに使用する平均クロック数を CPI と呼ぶ。1 クロックの周期 T[s] をサイクルタイム,1 秒当たりの動作クロック数 f を動作周波数と呼ぶ。信号レベルH 信号レベルL 1 2 3 f-1 f T[s] 1s 次の(a)及び(b)の問に答えよ。(b) CPI=4 のマイクロプロセッサにおいて,1 命令当たりの平均実行時間が 0.02 μs であった。このマイクロプロセッサの動作周波数[MHz]として,正しいものを次の(1)~(5)のうちから一つ選べ。
- (1) 0.012 5
- (2) 0.2
- (3) 12.5
- (4) 200 ✓ 正答
- (5) 12 500
解説
CPIと1命令当たりの平均実行時間の関係から動作周波数を求め、単位をMHzに変換すると200MHzとなり、選択肢(4)が正しいです。
マイクロプロセッサの処理時間に関する概念と関係
マイクロプロセッサは、動作クロックと呼ばれる規則的なパルス信号に同期して内部で処理を実行します。この処理時間を理解するために、いくつかの重要な概念とそれらの関係を把握することが必要です。
サイクルタイム と動作周波数
- サイクルタイム : 1つの動作クロックパルスが完了するまでの時間周期 [s] です。問題文の図では、[s]と示されている1クロック分の区間がこれに該当します。
- 動作周波数 : 1秒間に発生する動作クロックパルスの数 [Hz] です。Hz(ヘルツ)は1秒あたりの回数を意味します。
- これらの間には、サイクルタイム は動作周波数 の逆数であるという関係が成り立ちます。 または
CPI (Cycles Per Instruction)
- CPI: 1つの命令(Instruction)を実行するのに必要な平均クロック数を示します。マイクロプロセッサは、命令の種類や処理内容によって、必要なクロック数が異なりますが、CPIはそれらを平均した値です。
1命令当たりの平均実行時間
- マイクロプロセッサが1つの命令を実行するのにかかる平均時間です。
- この時間は、1命令に必要な平均クロック数(CPI)と、1クロックにかかる時間(サイクルタイム )の積として計算できます。
- 上記の「サイクルタイム と動作周波数 」の関係 をこの式に代入すると、次の関係式が得られます。
- この式は、1命令当たりの平均実行時間 は、CPIを動作周波数 で割ったものであることを示しており、この問題の判断の基礎となります。
設問の条件による動作周波数の計算
CPIと1命令当たりの平均実行時間の関係式 を利用して、設問の条件から動作周波数を求めます。
動作周波数を求めるための式を整理します。 関係式 を、求める値である動作周波数 について解くと、 となります。この式を用いて計算を進めます。
与えられた数値を SI 単位系(国際単位系)に変換します。
- CPI は無次元の数で です。
- 1命令当たりの平均実行時間は です。(マイクロ秒)は 秒を意味するため、秒に変換すると となります。
関係式に数値を代入し、動作周波数 を計算します。
計算で得られた動作周波数 の単位を Hz から MHz に変換します。 問題では動作周波数を [MHz] で求めるよう指示されています。 なので、Hz を MHz に変換するには で割ります。
この計算結果から、マイクロプロセッサの動作周波数は200 MHzとなり、選択肢(4)と一致します。
マイクロプロセッサの動作クロックの波形と、それが繰り返される時間、さらに命令の実行に必要なクロック数を重ねてみると、処理の速さが見えてきます。