メディア

CISCとRISC、何が違う?Q&Aで学ぶマイコン講座(1)(2/3 ページ)

» 2014年04月07日 08時30分 公開
[菅井 賢STマイクロエレクトロニクス]

CISCとは

 マイコンはCISCマイコンの概念からスタートしているといえます。

 1970年頃に、マイコンはコンピュータと半導体ICを結合して、コンパクトなコンピュータとして誕生しました。そして、1970年代後半の電卓全盛期に、いかに性能が高く、便利な電卓をつくるかという課題の下に、さまざまなメーカーが計算効率の良いマイコンを競って開発しました。

命令のフォーマットや実行時間は、各社の各命令によって異なります。とにかく1命令で、できるだけの処理を行うというものです(詳しくは「CISCの特徴」の章で詳しく説明します)。

 マイコンが生まれてから、各メーカの開発者は、1命令にいかに効率良く仕事をさせるかを目指して、開発してきました。しかし、1980年頃に、その概念をまったく覆すマイコンの方式が発表されました。それがRISCマイコンです。

RISCとは

 複雑な命令を実行すると、命令の実行時間は短時間というわけにはいきません。また、マイコンの内部の論理回路も複雑になります。それだったら、逆に、“命令は簡単だが、高速で複数の命令を組み合わせて実行させたら、CISCマイコンよりも効率の良い演算ができるのではないだろうか?”という概念で考え出されたのがRISCマイコンです。

 RISCはスタンフォード大学、カリフォルニア大学バークレー校の研究課程で生まれました。PattersonとDitzelによって発表されたマイコンの方式です。 それまでのマイコンでは1つの命令に複雑な仕事を多くさせて、全体の効率を上げるという考えしか存在しなかったので、マイコン関係者に大きな驚きを与えました。

 RISCでは、命令の長さを固定にして、パイプラインという概念を採用しました。パイプライン処理は、色々な処理を段階に分割し、部分的に並列処理を行うものです。見かけ上、1クロック1命令実行を実現することができます。

 ARM社のCortex-M3で採用している3段パイプラインを示します。「命令のフェッチ」「命令のデコード(解読・翻訳)」「演算して結果の書き込み」の3つのステップから構成されています。各処理は独立したハードウェアで実行され、1サイクル1回の処理を行います。実際に1命令を実行するのに3サイクルかかるのですが、1サイクル毎に1つの結果を得られますので、実質は1命令1サイクルで実行されることになります。

 CISCの場合、命令長が固定でなく、実行時間も命令毎に異なるので、1命令1サイクルの演算結果を得ることができなくなります。

【図1】3段パイプラインの例

 その他にも命令を高速で実行するための新しい手法が取り入れられています(詳しくは「RISCの特徴」の章で説明します)。

CISCの特徴

(1)命令フォーマットと命令サイズに決まりがない

 各命令は仕様によって、最も適した命令のフォーマットとサイズに設計されます。そのために、各命令で実行時間が異なります。1命令ごとに処理能力を追求していますので、命令長は決まった形でなくても良いわけです(この場合、パイプライン処理では効率が悪くなります)。

(2)命令のデコードをはマイクロROM方式

 マイクロROM方式はランダム論理方式より処理速度はかかりますが、論理規模を小さくできるとともに、比較的複雑な処理が可能です。

(3)1命令は複数クロックサイクル処理

 1つの命令は複数のクロックで処理されます。数サイクルかかっても、複雑な処理の結果が1度に出れば、結果的に効率の良い処理になります。

RISCの特徴

(1)固定長命令サイズ

 1命令の高速処理、すなわち1命令1サイクルを実現するためにパイプライン処理を採用しているので、命令サイズは固定になっています。

(2)命令デコードはランダム論理方式

 1命令の担っている処理が複雑ではないのですが、高速処理が必要なので、ランダム論理が採用されています。マイクロROM方式では非効率になります。

(3)単一クロック処理

 パイプライン処理を採用しますので、単一クロックで処理を行います。

(4)パイプライン処理

 前述したように、パイプライン処理を採用して、1命令1クロックで命令を実行します。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.