今回は、コンピューターを構成する5装置の一つであるCPUについて解説します。
コンピューターの5大装置とは?中央処理装置とは、通称CPUと呼ばれるものでコンピューター内での演算処理を行っています。
CPUはCentral Processing Unitの略です。
人間でいうところの頭脳と例えられることが多いです。
CPUの性能を評価するための重要な指標はいくつかありますが、ここでは2つ紹介します。
- クロック周波数
- コア数
コアとは、演算処理を行う部分で、コアの個数が多ければ多いほど複数の作業を得意とします。
また、マルチコアであれば、作業量を複数のコアに分散させることが出来ます。
そのため、1つのコアの作業量をシングルコアよりも削減でき、1コアあたりの発熱量や消費電力を抑えることが出来ます。
仕事をする人の数という風に考えるとわかりやすいと思います。
クロック周波数はGHzで表され、1秒間にどれだけの処理が行えるかを表しています。
そのため、クロック周波数が大きいほど処理速度が速くなりますが、電気使用量が多くなる傾向にあります。
仕事をする人の仕事の速さと考えましょう。
CPUは、プログラムから命令を受け取り、その命令を演算します。
その演算を処理していく仕組みについて確認してきます。
まず、命令語について解説します。
プログラムは、コンピューターに行わせる命令が集まったものです。
そしてプログラム言語で記述された命令は、最終的にコンピューターが理解できる1と0の機械語に変換され、解読・実行されます。
機械語の命令語は、ほとんどの場合が命令部とアドレス部で構成されます。
命令部は、命令や演算を支持する部分です。
アドレス部は、処理対象となるデータの主記憶上のアドレスなどを支持する部分です。
次に、命令語を処理していくレジスタについて解説します。
レジスタとは、CPUに内蔵されている高速な記憶装置のことです。
レジスタには以下のようなものがあり、命令の実行時に使用します。
- 命令レジスタ
- 命令アドレスレジスタ
- 指標レジスタ
- 基底レジスタ
- アキュムレーター
- 汎用レジスタ
実行する命令を格納します。
つぎにじっこうする命令のアドレスを格納します。
プログラムカウンタとも呼ばれます。
基準となるアドレスを格納します。
指標アドレス指定方式で使用します。
基準となるアドレスを格納します。
基底アドレス指定方式で使用します。
演算対象や演算結果を格納します。
累算器とも呼ばれます。
演算対象や演算結果を格納します。
そのほか各種の目的に使用します。
コンピューターが一つの命令を実行するとき、CPUと主記憶の間でいくつかの段階を踏みます。
- 命令の取り出し
- 命令の解読
- 実効アドレス計算
- オペランドの取り出し
- 命令の実行
- 演算結果の格納
命令アドレスレジスタを参照して、命令が格納されている主記憶上のアドレスを取得します。
取得したアドレスから命令を取り出し、命令レジスタに格納します。
要は、主記憶からCPUに命令を読み込みます。
つぎに、読み込んだ命令をCPU内で解読します。
解読は、デコーダで解読され、演算装置に指示を出します。
命令レジスタのアドレス部の値は、アドレスレジスタに送られ、処理対象のデータが格納されているアドレスを計算します。
処理対象のデータを取り出し、演算装置に送ります。
この時点で、命令と対象のデータが取り出せているので、あとは実行します。
最後に演算結果をCPUから主記憶に格納して終了です。
CPUには、データアクセスの速度を向上させるためのキャッシュメモリが搭載されています。
キャッシュメモリは、CPU内部にある高速メモリであり、頻繁に使用されるデータや命令を一時的に保存します。
これにより、CPUがデータを主メモリから直接取得するよりも速くアクセスできるようになります。
キャッシュメモリには、レベル1(L1)、レベル2(L2)、レベル3(L3)といった階層があります。
L1キャッシュは最も高速で小容量、L3キャッシュはL1とL2に比べて遅いですが大容量です。
わたしが使用しているWindowsPCを例にキャッシュメモリを確認してみます。
Ctrl+Shift+Escを同時押しします。
そして、パフォーマンスからCPUを選択します。
キャッシュの大小関係も確認できました。
CPUは、高速で大量の計算を行うため、大量の熱を発生します。
適切な冷却がないと、CPUが過熱し、性能低下やシステムの安定性に影響を与える可能性があります。
冷却方法には、空冷、液冷、さらにはヒートシンクなどがあります。
空冷はファンを使ってCPUを冷却する方法で、液冷は液体を使って熱を分散させる方法です。
ヒートシンクは、熱を効果的に拡散するための金属製の部品で、冷却効率を高めるために使用されます。
仮想化技術は、1つの物理CPUを複数の仮想CPUに分割し、複数のOSやアプリケーションを同時に実行できるようにする技術です。
これにより、システムリソースの利用効率が向上し、柔軟なシステム運用が可能になります。
仮想化は、特にサーバー環境やクラウドコンピューティングで重要な役割を果たします。
ハイパーバイザと呼ばれるソフトウェアが、物理ソースを抽象化し、仮想マシンに対して適切なリソースを割り当てる役割を担います。
CPUのアーキテクチャは、CPUの設計や命令セットを指します。
代表的なアーキテクチャには、x86、x86-64、ARMがあります。
x86アーキテクチャは、主にデスクトップやノートパソコンで使用され、x86-64は64ビット版のx86です。
ARMアーキテクチャは、モバイルデバイスや組み込みシステムで広く使用されており、低消費電力が特徴です。
各アーキテクチャには、それぞれの用途に応じた利点があります。
今回はコンピューターの5台装置の一つであるCPUについて解説しました。
CPUの性能指標や、動作原理、キャッシュメモリなど以外にも、OSなど様々なシステムと密接に連動しているのがCPUです。
このサイトでは、ITに関する記事を投稿しています。
ぜひ他の記事もご覧ください。