「CPUのクロック数(周波数)」をシミュレーターで理解しよう!コンピューターの中心はこんな風に動いてます!
PCやスマホなどのコンピューターって不思議ですよね。自由自在に動いてるように見えます。本当に何でも出来てしまう魔法の機械なんです!
そんなコンピューターの中心がCPUです。今回はこのCPUの性能を表す「クロック数(周波数)」について、シミュレーターを用いて解説していきます!
目次
コンピューターの構成要素(おさらい)
前回記事で説明しましたが、今回注目する「主記憶装置」「演算装置」「制御装置」を抜粋して再度軽くおさらいします。
3.記憶装置
これは青色枠で囲った部分です。記憶装置は真ん中の「主記憶装置(メモリ)」と「補助記憶装置(HDD,SSD)」の2つがあります。簡単に人間の例でいうと、主記憶装置が短期記憶で、補助記憶装置は長期記憶になります!
今回はこの主記憶装置部分のみを使用します。
4.演算装置
これはCPU内の機能です。簡単にいうと掛け算とか足し算とか四則演算などを行います。ここがあるからこそ、コンピューターは動けているんですね!
この部分がどうやって作られているかの詳細は、加算器電子回路シミュレーターで解説しています!この動きが理解できれば、コンピューターって何をしてるのかが分かってきますよ!(難しいですが)
5.制御装置
ここもCPU内の機能です。この制御装置がその他の「入力装置」「出力装置」「記憶装置」「演算装置」に指令を出して、コントロールするわけです!コンピューターの総司令官みたいな部分で、中心的な位置にあるわけです!
CPUは「ターン制」で動いている!
まず前提として、CPUはゲームでいう「ターン制」で動いてます。自由に動けるわけでなく、定期的にくる行動開始の合図があったときにのみ動作することが出来るんです!
さらに、各CPU命令は各種「何ターン行動するのに必要か」が決まっています。簡単な命令なら1ターン、複雑な命令なら4ターンという具合です。
とにかく、この「ターン」ありきで、定刻通りに動いているのがCPUなんです!そしてこのターンのタイミングを決めるのがこの後説明する「クロック数」なんです!
CPUの行動ターンはクロック数(周波数)で決まる!
周波数とは
CPUはクロック数(周波数)で行動ターンが決まります。
周波数とは、波でいう「波が1秒間に何単位上下変動したか」を表す単語です。波とは↓のようなものであり、一定間隔で上下しています。このような波がコンピューターの中にあるんです。
波は↓のように一回の上下変動を1セットと数えます。そして、CPUは波が下から上に上がった時に行動できるんです!
この「1秒間に何回行動ターンがくるか」をクロック数(周波数)という言葉で表します。つまり、細かい波であるほど上下に頻繁に振動してクロック数(周波数)が上がり、CPUは頻繁に行動できるということになります!
この辺りの波の概念は「コチラのページ」でシミュレーター用いて詳しく解説していますので、ご参照下さい!
Hz(ヘルツ)はクロック数(周波数)の単位!
クロック数(周波数)を表す時にはHz(ヘルツ)という単位を使います。1秒間に5回上下に振動するなら、5Hzという具合です。
現在はGHzという単位が使われることが多いです。G=ギガで、10億という意味です。つまり、3GHzならば1秒間に30億回もCPUは行動してるんです!すごい速さですよね><
コンピューターは0,1信号の波で管理されている
↑のような波があると説明しましたが、コンピューターの中は0,1のデジタルで管理された世界です。
なので実際は↓のような0と1で上下する信号でクロックが管理されます。考え方は同じで、波が0から1に上昇した瞬間(矢印の位置)でCPUは行動できるんです!
ちなみに、この辺りの制御は「フリップフロップ回路」という電子回路で制御されています。(かなり細かい話ですが、後にシミュレーターで説明する予定です)
「CPUのクロック数(周波数)」をシミュレーターで確認してみよう!
それでは実際に「CPUのクロック数(周波数)」によって動きがどう変わるかシミュレーターで確認してみましょう!
- 今回は「AとBを足した数を、Aに代入する」ことを繰り返す簡単なプログラムの動作例です
- 動きが見やすいように1/10の速度でシミュレートしてます。つまり1Hzなら10秒に一回動作します
- 画面上にクロックの波の状況が、画面下にそれに応じて動くCPU/メモリの様子が表示されています
- ↓のメモリAとメモリBの値を変更して実行ボタンを押すと、コンピューターはプログラム領域から順に命令を取り出して動作し始めます
- スライドバーのクロック数を変えると、波の周波数が変化してコンピューターの動きが変わります。クロック数は動作中でも変更可能です
- 再度実行ボタンを押すと、再度最初から実行できます
* R1,R2,R3はCPU内の置き場所の名前を表しています
メモリA:
メモリB:
「CPUのクロック数(周波数)」シミュレーターの要点解説
以下、↑シミュレーターの動きと要点を解説します。
クロック数に比例して、コンピューターの行動速度は上がる
シミュレーターで、例えば2Hzから4Hzに変えた場合、2倍の速度で数字が足されていくことが分かると思います。周波数が上がり、行動ターンが2倍の頻度でくるので当たり前ですよね!
このように、クロック数(周波数)はCPUあるいはコンピューターの速度を表す需要な概念なんです!
クロック数だけでCPUの性能が決まるわけではない
これは補足になります。4GHzのCPUと3GHzのCPUがあったときに、必ず4GHzのCPUのほうが速くなるわけではありません。
なぜなら、CPUの性能は「どれぐらい1命令を何ターンで処理できるか」でも決まるからです。今まで10ターンかかっていた行動が、1ターンで処理できるようになったら爆速化しますよね!また最近のCPUは複雑で「2つの命令を同時に処理する」という事もするので、周波数が少し遅くても、実際はかなりの性能が出るということがよくある事になってます!
コンピューターはCPUの性能だけで決まるわけでない。むしろその他性能に引きずられる><
今回はCPUのクロック数に焦点をおいて説明をしました。これだけ見ると、クロック数でPCの性能が決まるように見えますが、、、
実際はストレージ(ハードディスク等)やメモリのほうが圧倒的に遅く、それらの速度に引きずられて性能が決まってしまうことも多いです!すごくPCが遅い時は、ハードディスクなどの記憶装置がネックになっている可能性大です><
次回はそのあたりの「メモリやストレージの速度」について解説していきます!CPU/メモリ/ストレージと並列で動いている用に見えますが、実はものすごくスピードに差があるんです!
- CPUは周波数に従い、ターン制で動いている
- この時の周波数をクロック数といい、1秒間に何回動けるかをHzを用いて表す
- クロック数が多いほど、1秒間に動ける回数が上がり、性能が高いといえる(ただしそれだけでCPUの性能は決まらない)
⇒「コンピューター概論」カテゴリ記事一覧
その他関連カテゴリ