忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【コンピュータ構成】CPUの歩幅を決める!「単一クロック」と「複数クロック」|情報処理問題1000本ノック

プロセッサが命令を実行するタイミングの制御方式。シンプルだけど無駄が出る方式と、効率的だけど複雑な方式、それぞれのトレードオフを攻略しましょう。

1. 【 問題 】:プロセッサの制御方式

【 問題 】 CPUの命令実行における「単一クロックサイクル方式」と「複数クロックサイクル方式」の比較に関する記述のうち、適切なものはどれでしょうか?

① 単一クロックサイクル方式は、最も処理に時間がかかる命令に合わせて1サイクルの長さを決めるため、単純な命令を実行する際の時間的無駄が大きくなる。
② 複数クロックサイクル方式は、すべての命令を均一に1クロックサイクルで実行するため、制御回路の設計が非常にシンプルになる。
③ 単一クロックサイクル方式は、1つの命令を複数の短いステップに分割して実行するため、クロック周波数を高く設定しやすい。
④ 複数クロックサイクル方式は、複雑な命令であっても必ず1サイクルで完了させるため、ハードウェアの利用効率が最大化される。

2. 正解:

正解: ① 単一クロックサイクル方式は、最も処理に時間がかかる命令に合わせて1サイクルの長さを決めるため、単純な命令を実行する際の時間的無駄が大きくなる。

3. 解説:1歩の長さをどうデザインするか

CPUは「クロック信号」というテンポに合わせて動きます。命令には「すぐ終わるもの(足し算など)」と「時間がかかるもの(メモリへのアクセスなど)」がありますが、これをどう処理するかの違いです。

【2つの方式の特徴とトレードオフ】

■ 単一クロックサイクル方式(シングルサイクル)
仕組み1つの命令を「1クロック」で一気に終わらせます。
デメリット:時計の「カチッ」という1拍の長さを、一番重い(時間のかかる)命令に合わせる必要があります。そのため、一瞬で終わる軽い命令のときも、次の「カチッ」が来るまでCPUが何もせず待つことになり、無駄(隙間時間)が生まれます。
メリット:制御が非常にシンプル。

■ 複数クロックサイクル方式(マルチサイクル)
仕組み:1つの命令を細かく分解し、重さに応じて「2クロック」や「5クロック」のように複数のサイクルをかけて実行します。
メリット:1拍の長さ(サイクルタイム)自体を極限まで短くできるため、軽い命令は短い時間でサクサク終わり、無駄がありません。
デメリット:今どのステップを実行しているかを管理する「制御回路」が複雑になります。
[ 選択肢のひっかけポイント ]
★ ②・④:「すべての命令を1サイクルで実行する」のは単一クロックサイクル方式の説明です。
★ ③:「命令を複数のステップに分割してクロック周波数を高くできる」のは複数クロックサイクル方式のメリットです。

1. 理解のコツ: 「足並みをそろえる遠足」をイメージしてください。歩くのが一番遅い人に合わせて全員の1歩の長さをゆっくりにするのが単一クロック方式です。元気な人はすぐ1歩を踏み出せるのに、全員が揃うまで待つので無駄が生まれます。一方、「軽い命令は1歩」「重い命令は3歩進む」というように、テンポ(クロック)を細かく刻んで個別に合わせるのが複数クロック方式です。
2. 試験対策の視点: 「最も時間のかかる命令に合わせる」「時間的な無駄ができる」というフレーズがあれば単一クロック方式の特徴です。この複数クロック方式をさらに進化させ、前の命令が終わる前に次の命令を重ねて実行していく高度な技術「パイプライン処理」への架け橋となる重要な基本知識です。


4. まとめ

「最遅の命令に合わせるため無駄が出るがシンプルな単一クロック」と、「1サイクルを短くして命令ごとに分割する効率的な複数クロック」。これがプロセッサ制御の2大アプローチです。コンピュータがいかにして無駄を削ぎ落として高速化してきたかの歴史を知る上で、必須の概念です。


PR