第2回 Coreマイクロアーキテクチャ [前編]:新約・見てわかる パソコン解体新書(2/4 ページ)

» 2006年11月01日 10時00分 公開
[大島篤(文とイラスト),ITmedia]

パイプラインを理解しよう

 CPUの回路は、複数の回路ブロックを直列につないだパイプラインと呼ばれる構造をとっています。

 いま、メモリから足し算の命令がCPUに読み込まれたとしましょう。すると、CPUの内部ではパイプラインの先頭に命令が投入されて、命令がパイプラインの中を流れながらいろいろな処理が行われ、最後に計算結果の値がパイプラインから出てくるのです。

 このページでは、次の4つのことを図解します。

1.パイプラインの基本的な働き

2.パイプラインの段数を増やすと動作周波数を上げられる理由

3.条件分岐命令とプログラムの流れ

4.パイプラインの段数が増えた場合のデメリット


 

1.パイプラインの基本的な働き

 単純なCPUでは、1つの命令が、フェッチ、デコード、実行、ライトバックの4つのステージを通って実行されます。それぞれのステージでは、1つの命令の処理が終わったら、休むことなく次の命令の処理にとりかかります。

 それぞれのステージの回路が1クロックで処理を終えるとすると、1つの命令の実行には4クロックかかることになります。しかし、パイプラインは流れ作業で命令を実行することに注意してください。もしあなたがパイプラインの出口付近に立っていれば、1クロックごとに1命令の実行が完了してパイプラインから命令の処理結果が流れてくるところを目撃できるでしょう。


 

2.スーパーパイプライン

 作業を細分化して、パイプラインのステージ数を増やしたのがスーパーパイプラインです。各ステージの処理時間が短くなるため、より高い周波数のクロックでの動作が可能であり、結果として処理スピードが向上します。

 Pentium 4では、パイプラインを20〜30ステージに細分化することで、3GHz以上の高クロック動作を実現しました。


 

3.分岐命令

 あらゆる種類のプログラムは、多数の命令を組み合わせて作られています。1+1を計算するような、非常に単純なプログラムであれば、数個の命令を直線的に並べるだけでできます。この場合は、すべての命令がパイプラインを滞りなく流れて行き、計算の答えが求まります。

 しかし、ちょっとしたプログラムであれば、計算途中の状況に応じてプログラムの流れを変更する、条件分岐命令を数多く含んでいます。PCのプログラムが、高度で知的な処理を行えるのは、分岐命令のおかげです。

 条件分岐命令にもいくつかの種類がありますが、たとえばjzという命令は、「直前に実行した演算の結果が0ならば、プログラムの流れを変えて別のアドレスにジャンプする。演算の結果が0でない場合はジャンプしない(後続の命令の実行に進む)」という働きをします。

 プログラムにもよりますが、平均して10命令に1つ以上の条件分岐命令が含まれると言われます。


 

4.分岐ミスとペナルティ

 実行中のプログラムに条件分岐命令が出てくると、そこからプログラムの流れは2つに分かれます。どちらに進むかは、条件分岐命令の処理がパイプラインの最後まで来ないと決まりません。それまで続く命令の処理を止めておくのはもったいないので、分岐しそうな方向を予想して、そちらの命令をパイプラインに投入して処理を進めてしまいます。Pentiumシリーズには、こうした分岐予測機能が実装されています。分岐予測機能により、分岐先の確定に先行して命令を実行することを投機実行といいます。

 分岐予測の仕組みは単純で、各分岐命令について過去数回の分岐履歴を記録します。たとえば過去4回続けて分岐が発生していれば、次も分岐する可能性が非常に高いというわけです。

 Pentium 4の分岐予測の的中率は、実に95%以上と言われますが、5%程度は外れるわけです。予想が外れた場合は、処理を進めていたパイプライン上にある命令をすべてフラッシュ(破棄)して、正しい分岐先から命令の処理をやり直します。

 下図ではパイプラインのステージ数を8個で描いています。分岐ミスが判明してから、7クロックの間はパイプラインから処理結果が出てきません。CPUの外からは、7クロックの間CPUの動作が停止したように見えるでしょう。これが分岐予測ミスに伴うペナルティです。このペナルティは、パイプラインのステージ数が多いほど重くなります。


Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年09月27日 更新
  1. GeForce RTX 5080は30万円超えの空気感――GPU高騰の裏で見つけた7割引の水冷パーツと8万円台の小型PC (2026年09月26日)
  2. 実売3万9800円でノートPCを3画面化! ソースネクストのデュアル拡張ディスプレイ「DGP-DMD1401」を試す (2026年09月25日)
  3. “Vision Pro級”のMR体験が約100gの軽量グラスで? 最新の「Meta VR Glasses」を試して分かった圧倒的な快適性 (2026年09月25日)
  4. AndroidとChromeOSが融合した次世代PC「Googlebook」の実機を見てきた ――AI統合で何が変わるのか? (2026年09月25日)
  5. 新型「Mac mini」「Mac Studio」徹底レビュー! ローカルAIはついに“実用域”へ エージェントAIに事務仕事を任せて分かった驚異の進化 (2026年09月22日)
  6. 12インチ「Surface Pro」と13インチ「Surface Laptop」に個人向けの第2世代が登場 Snapdragon X2 Plus搭載でメモリは最大24GBに (2026年09月24日)
  7. AnthropicがAIモデル「Claude Opus 5.5」を発表/OpenAIもAIモデル「GPT-6 Sol」「GPT-6 Luna」を投入 (2026年09月27日)
  8. 「これはわれわれにとってのTGSだ」 ロジクールGが年に一度の旗艦イベント「Logicool G PLAY Tokyo 2026」を開催 熱気あふれる会場を現地レポート (2026年09月25日)
  9. “AIスマホ”としての個性がより鮮明に 望遠カメラ刷新&AI処理が飛躍した「Pixel 11 Pro」 の実力とベンチマーク結果を検証 (2026年09月24日)
  10. 増えすぎたリモコンを1台に集約できる「SwitchBot 学習リモコン」がセールで14%オフの5990円に (2026年09月25日)
最新トピックスPR

過去記事カレンダー