前回までにCPUの内部構造(その1、その2)を簡単に説明させていただきました。
今回は、CPUの動作周波数についてお伝えしようと思います。
動作周波数という言葉をお聞きになったことがない人のために簡単に説明させていただきます。
動作周波数とは、クロック発振器がCPUを稼働させるクロック信号を1秒間に何回発振するのかを示すものです。
クロック周波数やクロック周期などとも呼ばれる場合もあります。
この説明を聞いてもなかなかイメージできないと思いますので、もう少し詳しく説明させていただきます。
図1は、クロック発振器とCPUを接続したモデルです。
クロック発振器は水晶振動子とも呼ばれ、現代のコンピュータでは欠かすことのできないものとなっています。
このクロック発振器は一定間隔で電圧がHighとLowになるクロック信号を生成します。
クロック信号の間隔が短ければ、1秒間に発振する回数は多くなり、言い換えれば、動作周波数は高くなります。
図1 クロック発振器とCPUを接続したモデル
配線を介して転送されたクロック信号がHighもしくはLowになったタイミングで、CPUは稼働します。
そのため、動作周波数が高ければ(クロック信号の間隔が短ければ)、CPUが高速に稼働します。
もしクロック信号の配線が断線してしまった場合やクロック発振器が故障した場合、CPUは稼働できません。
さて、皆様がお使いになっているパソコンに搭載されているCPUはどの程度の動作周波数で稼働していますでしょうか?
お使いのパソコンの動作周波数を確認してみましょう。
キーボードの「Windowsロゴ」キーを押しながら「Pause」キーを押すと以下のようなウィンドウが表示されます。
図2 Windowsのシステムウィンドウ(Windows 10)
図中の赤い太線で囲まれた部分にお使いのパソコンの動作周波数が記載されています。
筆者のパソコンでは3.4GHzでした。皆様の動作周波数はどれぐらいだったでしょうか?
動作周波数の単位はGHzとなっています。
1GHzならば1秒間に1,000,000,000回(10億回)に及ぶクロック信号を送っていることとなります。
時間で言えば、0.000000001秒(1ナノ秒)という非常に短い間隔で発振されています。
さて、この動作周波数ですが、CPUの登場から2003年まではとんでもないスピードで向上していました。
しかし、それ以降は2016年現在に至るまでほとんど変化していません。
図3は、1978年から2010年までの約30年間に渡る動作周波数の推移を示しています。
図3 動作周波数の推移
(出典:Computer Architecture: A Quantitative Approach※1)
X軸は西暦を示し、Y軸は動作周波数(図中ではClock rateと記載)を示しています。
動作周波数のMHzは1GHzの1000分の1となります。
図中の黒点に付属しているDigital VAXやDigital Alphaなどは当時の代表的なCPUの名前です。
1987年から2003年までの間は年あたり40%も向上していたのです!これは毎年CPUが1.4倍高速になっていったということなのです!
この向上率は、以前お伝えした半導体のプロセスルールの成長が大きく影響しています。
図4は、以前作成したインテル社のプロセスルールの推移と図3の動作周波数の推移を重ねあわせたグラフです。
動作周波数の軸は対数目盛です。
また、参考資料の都合上1993年から2010年までとなっています。
図4 プロセスルールと動作周波数の関係
プロセスルールが小さくなるに連れて、2003年までは動作周波数は向上しています。
しかし、2003年以降、プロセスルールは順調に小さくなっていますが、動作周波数はほとんど向上していません。
図3では動作周波数の向上率は年あたり1%です。
いったい、2003年の時点で何が起こったのでしょう?
この頃からCPUはマルチコア化したのです。
演算するコアを複数搭載することで性能を向上させるように、CPU製造会社は方向転換したのです。
このように方向転換したのは、動作周波数の向上によるCPU全体の性能を向上させることに限界が来たからです。
次回は、この限界、CPU製造会社の方向転換についてお話させていただこうと思います。
※1
 |
【著者】John L. Hennessy, David A. Patterson
【出版社】Morgan Kaufmann
【発行日】2011年9月16日
【ISBN-10】012383872X |