コンピューターの中心核として存在するCPU(中央演算処理装置)は、コンピューターの
性能を確定させる【チップセット】に次いで重要なパーツです。

CPUはプログラムを解釈・実行してコンピュータ全体の動作を制御しています。

コンピュータの中央演算処理装置と聞くと複雑な処理を行っているように思われるかもしれませんが、実は

  • 四則演算
  • 論理演算
  • 比較演算 等々

の単純な計算処理と基本的なデータの処理しか実行していません。

この記事では、

  • CPUの基礎構造
  • CPUの動作原理
  • CPUの選定時の4つのポイント

それぞれについて説明していきます。

当サイトでは電気工学(エレクトロニックエンジニアリング)・電子工学(エレクトロニクス)・機械工学(メカトロニクス)に関する細かい解説は省略しています。

目次

CPUの基礎構造

CPUの内部は

  • 制御ユニット
  • 演算ユニット
  • レジスタ群
  • クロック

で構成されています。

制御ユニット

制御ユニットの基本的な役割は

  • CPU内の演算ユニットやレジスタの動作
  • メモリ(主記憶装置:以降、メモリと呼ぶ)の読み書き・入出力 等

主記憶装置を制御する部分をメモリーコントローラーと呼びます。

を制御する事です。

制御ユニットの中のデコーダは

  1. 命令レジスタの命令部をデコード(解読)
  2. 演算ユニットの中の演算回路の選択

を行います。

コンピューターは人間が使うn進数法とは違い主に2進数法

  • 文字

などを機械的に電子処理するためCPUにおける演算処理は

  • 0
  • 1

で行われます。

実際の演算処理の大まかな流れは

  1. 2進数の機械語命令がメモリから読み込まれ
  2. デコーダを経て制御情報に変換
  3. 制御情報にに従って演算器が動作
  4. 2進数で表現されたデータで演算
  5. 結果を2進数で出力

というようになります。

出典:Nikkei Business Publications, Inc.

2進数法は端的に言って
通電時を1とし
無通電時0として表現する
スイッチのON/OFFで処理する方法です。

2進数の

  • 0
  • 1

それぞれの区別は、コンデンサの電荷の有無で判断しています。

トランジスタがスイッチの役割を担っており、

  • スイッチをオン -> コンデンサに電荷が貯まる。ある一定値以上に電荷がたまった状態・・・1
  • スイッチをオフ -> コンデンサに電荷が貯まらない・・・0

となります。

プログラムカウンタ

プログラムカウンタ(Program Counter)は、メモリに記憶されたプログラム・データを読み書きする上で、次の「命令」を取り出すアドレスを記憶しておくレジスタになります。

「命令」の実行が終わるとプログラムカウンタの値は自動的にインクリメント(増加)されて,次のアドレスにある「命令」を指すようになります。

ベースレジスタ

ベースレジスタ(Base Register)はメモリに記憶されたプログラム・データを読み書きする上で、基準となるアドレス(一般には、プログラムの先頭アドレス)を保持するためのレジスタになります。

指標レジスタ

指標レジスタ(Index Register)は、メモリに記憶されたプログラム・データを読み書きする上で、基準となるアドレスからの増減値を記憶しておくレジスタになります。

命令レジスタ

命令レジスタ(Instruction Register)とは、メモリから読みだした「命令」を記憶するレジスタになります。

命令レジスタは、

  • 命令部・・・デコーダに渡される
  • アドレス部・・・ベースレジスタ・指標レジスタと共に「命令」を実行する為に必要なデータのレジスタをオペランドアドレスの選択に使用

に分かれています。

オペランドアドレス・・・プログラムの先頭番地からのアドレス

アキュムレータ

アキュムレータ(Accumulator)は、演算ユニットによって利用されるレジスタで、演算対象・演算結果を格納します。

  • A・B・・・入力(オペランド)
  • R・・・演算結果
  • F・・・制御ユニットからの入力
  • D・・・出力ステータス

をそれぞれ表しています。

汎用レジスタ

汎用レジスタ(General Registerは目的の定められていないレジスタです。

通常は演算結果などを記憶するために使われます。

クロック

コンピュータ内にあるCPUを含めた主要装置は、コンピュータ内部の主要装置の動作の同期をとるために、
一定の間隔でパルス(クロック信号)を発生させるクロックジェネレータと呼ばれる電子部品があります。

パルスの速さはクロック周波数と呼ばれています。

周波数・・・電気振動等の現象が、単位時間(ヘルツの場合は1秒)当たりに繰り返される回数のこと

出典:Nikkei Business Publications, Inc.

CPUの基本動作

パソコンを使う際、色々なアプリケーションを利用すると思います。

例えば、オフィス・ワークなら

  • Microsoft社のWord・Excel
  • オープンソース・Libre OfficeのText Document・Spread Sheet

これらアプリケーションが起動する際には、CPUがアプリケーションのプログラムファイルを読み込み・処理しています。

CPUがプログラムファイルを読み込み・処理するまでの一連の流れを

  1. 補助記憶装置からメモリへ格納
  2. フェッチ・デコード
  3. 実行
  4. 結果出力

に分けて説明します。

補助記憶装置からメモリへ格納

プログラムファイルは、CPUに処理・実行させる「命令」の集合体です。

補助記憶装置である

  • HDD(Hard Disk Drive:ハードディスクドライブ)
  • SSD(Solid State Drive:ソリッド・ステート・ドライブ) 等々

に保存されているプログラムファイルをチップセットを通してメモリ上に格納します。

フェッチ・デコード

CPUは、メモリに格納されたプログラムファイルの「命令」を、順番に読み込んで実行しています。

メモリに格納されている「命令」を、

  1. 外部バスインタフェースを通して制御ユニットに読み込む(フェッチ:fetch)
  2. 制御ユニットにあるデコーダー(Decoder)で「命令」が
    • 演算情報なのか
    • 情報処理なのか
    具体的な情報に解読(デコード: Decode)

デコードされた「命令」は「制御情報」になります。

フェッチ:fetch・・・邦訳すると

  • 「取ってくる」
  • 「呼んでくる」

という意味です。

デコード:Decode・・・邦訳すると「復号化」という意味です。

実行

演算ユニットでは

  • 制御ユニットの「制御情報」
  • メモリから外部バスインタフェースを通して読み込まれた演算対象となるデータ

を利用します。

演算ユニットの中には

  • レジスタ・・・演算対象となるデータを格納(レジスタは複数存在)
  • 演算器・・・実際に演算を処理

が存在し、演算ユニットの演算器は「制御情報」の指示に従い、レジスタにあるデータに対し演算を行い、演算結果をレジスタに書き込みます。

結果出力

レジスタに書き込まれた演算結果はメモリに出力されます。

CPUを決める際に関わってくる【4つのポイント】

あなたがCPUを選ぼうとするとき覚えては置かなくてはならない【4つのポイント】があります。

  • クロック数・コア数
  • 対応命令コード
  • 型番
  • ソケット番号・世代

これらはCPU選びで最も重要な要素でこれを意識し忘れると相性問題などの動作不良や組み立て前に
構想していた用途に合わせた性能(スペック)を発揮させることができなくなります。

クロック数・コア数

クロック数は、CPUの1クロック毎秒ごとの処理能力を表します。

単位はGhzが一般的でCPUベンダーの製品データシートに記載される値は最大負荷動作時における
リミッター圏内でもっとも最高の動作周波数が書かれています。

これを給電量などを調整してリミッターを解除し性能を引き上げる行為がオーバークロックになります。

コア数には物理コアと論理コア(仮想コアやスレッド)と呼ばれる2つがあり、物理コアの数が多いと
CPUが抱え込める処理の量が変わり仮想コア数が変わるとハイパースレッディングを用いた複数の作業の
平行処理が行える数が変わってきます。

対応命令コード

対応命令コードとは、CPUが処理できる命令コードの種類を表した情報です。

x86やx64と表記されマシンが実行できるOSのアーキテクチャ(基礎設計構想)が
変わってきます。

現代における一般的なアーキテクチャはx64と言われる64bitOSです。
詳しい理由は以下の記事で解説します。

型番

型番はCPUの種類を理解するためにもっとも必要な情報です。

Intel製CPUには

  • 無印
  • K・・・オーバークロック向け
  • F・・・オンボードグラフィック無し
  • KF・・・オンボードなしオーバークロック向け

の4つがありそれぞれモデルによってCPU字体の性能が変わってきたり、
できることも違ってきます。

ソケット番号・世代

ソケット番号を知ることでマザーボードのCPUソケットを絞ることができます。
例えば、LGA1151であれば・・・

LGA(Land Ggrid Aray Aray)の略称であるためランドと呼ばれるCPUソケット
剣山の数が1151本必要だと言うことが分かります。

突いて世代を型番から読み取ることで必要なチップセットを理解することができ
マザーボードの選定をより早く・より円滑に行うことができます。

例えば、Core i9-14900KFと表記されていた場合、第14世代インテルcore i9プロセッサの
KF(オーバークロッカー向けオンボードなし)モデルと解釈することができます。

人気CPU

人気CPU

2020年6月時点における人気CPUベスト3は

  • Ryzen 5 1600 (AF)
  • Ryzen 3 3300X
  • Ryzen 5 3600

になります。

Ryzen 5 1600 (AF)

スペック
メーカーAMD
プロセッサ名Ryzen 5 1600 (AF)
世代第2世代
ソケット形状Socket AM4
コア数6
クロック周波数3.2GHz
最大動作クロック周波数3.6 GHz
スレッド数12
マルチスレッド
二次キャッシュ3MB
三次キャッシュ16 MB

Ryzen 3 3300X

スペック
メーカーAMD
プロセッサ名Ryzen 3 3300X
世代第3世代
ソケット形状Socket AM4
コア数4
クロック周波数3.8GHz
最大動作クロック周波数4.3 GHz
スレッド数8
マルチスレッド
二次キャッシュ2MB
三次キャッシュ16 MB

Ryzen 5 3600

スペック
メーカーAMD
プロセッサ名Ryzen 5 3600
世代第3世代
ソケット形状Socket AM4
コア数6
クロック周波数3.6GHz
最大動作クロック周波数4.2 GHz
スレッド数12
マルチスレッド
二次キャッシュ3MB
三次キャッシュ32MB

以上、

  • CPUの基礎構造
  • CPUの動作原理
  • CPUを決める際に関わってくる【4つのポイント】

についての解説でした。

この記事が気に入ったら
いいね または フォローしてね!

参考になったらシェア!

この記事を書いた人

爲國 勇芽(魔理沙っち)のアバター 爲國 勇芽(魔理沙っち) 自称:精肉社畜個人投資家自作erブロガーゲーマー

埼玉県在住のスーパーのフリーターをしながらAdsense広告によるマネタイズについて研究しています。

ITの様々なニュースや小技の発信とネット回線を紹介するメディアを運営しながら広告マネタイズのテクニックやアドテクにまつわる情報を発信しています。