CPUとは何かについて解説していきます。Central Processing Unit(中央演算処理装置)の略でプロセッサと呼ばれることもあります。少し難しく言うとCPUの役割は命令/データの読み込み・解読・演算・出力です。オフィス使用、Youtubeの動画視聴、ゲームプレイなどパソコンで行うことは命令やデータの読み込みから始まっています。パソコンは何でも数値(2進数)で表すということを覚えておいてください。命令・データ・出力結果は数値です。文字も内部的には数値として扱われます。
パソコンの頭脳として大活躍
CPUは、パソコンの頭脳として大活躍です。あなたがキーボードで文字を入力すると画面にその文字が映し出されます。これもCPUがメモリから受け取った命令を元に解読・演算・出力を行っているからです。オフィスソフトを使う時もゲームをする時もCPUが様々な命令を処理しているのです。ヒトの脳と異なるのは、コンピューター(CPU)自身が自発的に行動することはできない点にあります。CPUがCPUとしての役割を果たせるのはあなた自身がキーボードに文字を入力したり、アプリケーションを開いたりすることで間接的に命令を出しているためです。CPUと似たパーツに”GPU”があります。GPUは、Graphics Processing Uniteのことで画像処理・映像処理に特化したプロセッサーです。CPUはより汎用的なプロセッサーと言えますね。
CPUの内部構造
CPUの内部は制御装置と演算装置の2つに分かれています。
制御装置
- プログラムカウンタ
ある命令実行後次に実行すべき命令が格納されたアドレスを記憶しておくためのものです。逐次制御計数器とも呼ばれます。
- 命令レジスタ
取り出した命令を実行するために一時的に記憶しておくレジスタです。
- インデックスレジスタ
ベースレジスタのアドレスと命令が指定するアドレスの間の相対的なアドレス差を格納します。
- 基底アドレスレジスタ
基底アドレスはメモリアドレスを計算する際に基準となるアドレスでそのためのレジスタとなります。
- デコーダ
命令レジスタに取り出された命令を解読して、実行できるように制御信号を出力します。
演算装置
- 算術論理演算装置(ALU)
データに対して四則演算や論理演算を行う装置です。加算器や補数器などの演算回路を活用します。CPUの根幹部分です。
- 各種レジスタ
演算に必要なデータを一時的に保存しておく小型の高速メモリ記憶領域です。レジスタはRAMなど他のメモリよりも高速で高効率です。
- アキュムレーター
演算の対象となる数や演算結果を保持するためのレジスタで累積器とも呼ばれます。
CPUの役割
CPUの主な役割は命令の読み込み・解読・演算・出力の4つです。読み込みと解読を担当するのが制御装置で、演算と出力が演算装置の役割です。これらの処理を瞬時に行っています。CPUがどのようなことをしているのかをイメージすることは難しいですね。
命令の読み込み(フェッチ)
まずはメモリから命令を読み込みます。その際にメモリコントローラー(LSI:高密度集積回路)がCPUとメモリの橋渡し役となります。メモリコントローラーがメモリの制御を行います。具体的にはRAMのデータの読み書きやDRAMのリフレッシュです。最近のCPUはこのメモリコントローラーと一体化して効率的になっています。元々はマザーボード搭載のチップセットに組み込まれていました。チップセットを介するとCPUとメモリのやり取りにおいてレイテンシー(遅延)発生します。処理速度が遅くなってしまうということです。効率化のために統合メモリコントローラーが採用されるようになったという経緯があります。
命令の解読(デコード)
次に命令の解読(デコード)を行います。デコードによって命令がどのような演算を行うのかという制御情報に置き換えられます。制御情報とは、演算ユニットの動作などの制御するための情報です。命令やデータは0と1で表されます。
命令の実行(演算)
ようやく命令の実行(演算)を行う段階となります。制御情報を元にデータの演算を実行します。データはメモリコントローラー経由でCPUに送られます。データはレスターと呼ばれるところに格納されます。複数のレジスターがあり、どのレジスターを使うかは命令で指定されます。コンピューターが行う演算には四則演算以外にも論理演算などがあります。論理演算とは「AND演算」・「OR演算」・「XOR演算」・「NOT演算」のことです。様々な演算を通してCPUがコンピューターとしての役割を実現しています。
結果の格納(出力)
演算結果がレジスターに書き込まれ、メモリに出力されます。命令やデータと同様に出力結果も0と1で出力されます。これらの一連の流れがCPUの役割となります。
CPUの進化
2024年1月に発売されたCore i7-14700と2012年4月に発売されたCore i7-3770のスペックを比較しました。12年で大きくスペックが引き上げられていることがわかります。CPUの技術進化の上でプロセスが果たす役割は大きいです。22nmから10nmへと微細化が進みました。プロセスが微細化されるとクロック周波数向上・省電力化・製造コストの低下・機能追加などが行いやすくなります。CPU性能を引き上げる上でプロセスの微細化は必須と言えるでしょう。
CPUコアが4コアから20コアへと増えているのもプロセスの微細化による恩恵です。スレッド数も8から28へと大幅に増えました。従来のコア相当であるPコア(Performance Core)に加えてバックグラウンドでの作業などを担当するEコア(Efficient Core)も追加されています。クロック周波数を見ても定格クロックこそ引き下げられているものの最大クロックは5.40GHzへと40%近くも高いです。
L2キャッシュ・L3キャッシュも大容量が当たり前になっています。対応メモリもより高速なDDR5・DDR4をサポートしています。内蔵GPUについても大幅にグラフィックス処理性能が向上しています。ただし、ゲームをプレイするには外付けのグラフィックボードが必要であることは変わりません。MSRP(定価)が$106高くなっていますが、インフレなど情勢を考えれば納得できると思います。
CPUのスペックを解説
現行モデルで代表的なCPUであるIntel Core i7-14700KとRyzen 7 7800X3Dのスペックをまとめました。一覧だとどこを見ればいいのかわかりにくいかもしれません。CPUのスペックについて一つずつ見ていきましょう。世代・コア/スレッド・クロック周波数・キャッシュは特に重要なポイントとなります。
世代(アーキテクチャ)
世代はそのCPUの新しさを表します。基本的に世代が新しい方が高性能です。世代と合わせてプロセスも確認しておくと良いですね。プロセスは小さい方がパフォーマンス・省電力性・コストなどの観点から有利です。Intel第14世代Core iシリーズは10nmプロセスを採用しています。一方で、Ryzen 7000シリーズではCPUダイとI/Oダイを組み合わせたチップレット技術を採用しています。それぞれ5nm・6nmプロセスを採用しています。チップレット技術を含めてプロセスはRyzen 7000シリーズの方が進んでいると言えます。
コア・スレッド
コアとはCPU内部にある演算装置のことです。最近は複数のコアを搭載したCPUが一般的です。8コアというのも珍しくなくなりました。8コアと4コアのCPUを比べると8コアのCPUの方が処理速度が2倍速いです。作業を4人で行うよりも8人で行う方が早く完了しますね。スレッドとは同時に処理できる命令数です。通常1コア1命令ですが、負荷の軽い命令であれば1コア2命令まで実行可能です。人が両手で作業を行うイメージです。これをハイパースレッディング(AMD:SMT)と呼びます。動画編集やエンコードなどはマルチコアを活かしやすいです。
クロック周波数
クロック周波数もCPUのスペックにおいて重要なポイントです。クロック周波数とは、振動の周波数を指しています。1秒間の振動回数(動作)で単位はHz(ヘルツ)です。パソコンは「0」と「1」の数字で処理を行います。つまり、電気OFF=0(電荷なし)で、電気ON=1(電荷あり)です。クロック周波数はこの処理回数を表していると考えてよいでしょう。Core i7-14700Kで言えば1秒間に最大56億回も処理しているということです。
キャッシュ
キャッシュはCPUがメモリとやり取りを行う上で重要な役割を果たします。一度利用したデータをCPU内部(キャッシュ)に保存して作業の効率化を行っています。CPUコアに近い順にL1キャッシュ、L2キャッシュ、L3キャッシュとあります。L1キャッシュは最も高速ですが、トランジスタが限定されていて容量は控え目です。L2キャッシュ→L3キャッシュと進むに連れて速度は遅くなりますが、容量は大きくなります。キャッシュ容量が多い方がより高いパフォーマンスを期待できます。
対応メモリ
CPUが対応しているメモリを使用する必要があります。世代によって対応規格や速度が変わります。Core i7-14700KではDDR5・DDR4の2種類のメモリをサポートしています。Ryzen 7 7800X3DはDDR5メモリのみのサポートとなります。
対応ソケット
ソケットとはCPUを取り付けるための規格のことです。CPUに合ったソケットを持つマザーボードを選択する必要があります。最新のIntel第14世代はLGA1700です。Intel製CPUの場合おおよそ2世代でソケットが変わります。アップグレードをする際は注意が必要です。AMDは現行のRyzen 7000シリーズになってAM5へと変わりました。それ以前のモデルはAM4ソケットで統一されています。Intel製CPUと比べてソケットの種類が少なくわかりやすいです。
消費電力(TDP)
同じ世代なら性能が高い方が消費電力は高い傾向にあります。最近はベースとなるPBP(TDP)に加えて最大ターボパワーとしてMTP(PL2)も規定されています。通常の運用であればPBPだけを見ておけば良いです。電力制限を解除した場合はMTPが参考となります。