スーパースカラって何?:Q&Aで学ぶマイコン講座(35)(1/3 ページ)
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「スーパースカラって何?」です。
素朴な疑問から技術トラブルなどマイコンユーザーのあらゆる悩みに対し、マイコンメーカーのエンジニアが回答していく連載「Q&Aで学ぶマイコン講座」。
今回は、初級者から多く寄せられる質問です。
マイコンのカタログや雑誌のアーキテクチャの欄に「スーパースカラ」と書かれていますが、スーパースカラとはどんな方式ですか?スーパースカラとパイプライン処理では、何が違うのでしょうか?スーパースカラの利点、欠点を教えてください。
マイコンの内部で命令を実行する際に、1連の処理を、いくつかのステップに分けて実行する方式があります。図1に、「命令のフェッチ(F)」から「結果の書き込み(E)」を6ステップに分けた例を示します。
各処理に専用のハードウェアを設け、各ハードウェアはひたすら自分の処理だけを行い、その結果を次のハードウェアに渡します。各処理は1クロックサイクルで完了すると、必ず1クロックサイクル毎に、結果が書き込まれます。
実際は、1命令の処理に複数サイクルかかっていても、実使用上、1命令を1サイクルで実行することができます。
これを一般的に「パイプライン処理」と呼びます。
では、このパイプライン処理のハードウェアを2セット以上並べて、同時に2個以上の命令を並列実行したらどうなるでしょうか? もちろん、1個よりも2個、2個よりも3個を並列に実行した方が、命令の処理能力が上がります(図2参照)。
このように、パイプライン処理を複数個並列させて処理する方式を「スーパースカラ」と呼びます。マイコンのサイズそのものは大きくなりますが、高機能を実現できます。
Copyright © ITmedia, Inc. All Rights Reserved.