命令セットまたは命令セットアーキテクチャは、データ操作を処理するためにコンピュータをガイドするコマンドをコンピュータに提供するコンピュータの構造です。命令セットは、命令、アドレッシングモード、ネイティブデータ型、レジスタ、割り込み、例外処理、およびメモリアーキテクチャで構成されています。命令セットは、インタプリタを使用してソフトウェアでエミュレートするか、プロセッサのハードウェアに組み込むことができます。命令セットアーキテクチャは、ソフトウェアとハードウェアの境界と見なすことができます。 マイクロコントローラの分類 マイクロプロセッサは、RISCおよびCISC命令セットアーキテクチャに基づいて実行できます。
プロセッサの命令セット
命令セットは、プロセッサでサポートされている操作、プロセッサのストレージメカニズム、プログラムをプロセッサにコンパイルする方法など、プロセッサの機能を指定します。
RISCおよびCISCとは何ですか?
ザ・ RISCとCISC 次のように拡張できます。
RISCは、縮小命令セットコンピュータを表します。
CISCは、Complex Instruction SetComputerを表します。
RISC(縮小命令セットコンピュータ)アーキテクチャ
RISCアーキテクチャ
ザ・ マイクロコントローラアーキテクチャ 小さく高度に最適化された命令セットを利用するものは、縮小命令セットコンピュータと呼ばれるか、単にRISCと呼ばれます。これは、LOAD / STOREアーキテクチャとも呼ばれます。
1970年代後半から1980年代初頭にかけて、RISCプロジェクトは主にスタンフォード、カリフォルニア大学バークレー校、IBMから開発されました。 IBM研究チームのJohnCokeは、CISCよりも高速に計算を処理するために必要な命令の数を減らすことによってRISCを開発しました。 RISCアーキテクチャは高速であり、RISCアーキテクチャの製造に必要なチップもCISCアーキテクチャと比較して安価です。
RISCアーキテクチャの典型的な機能
- RISCのパイプライン技術は、CPU上のすべての命令が最適化されるように、命令の複数の部分またはステージを同時に実行します。したがって、RISCプロセッサには1サイクルの命令ごとのクロックがあり、これは1サイクル実行と呼ばれます。
- それは最適化します レジスターの使用法 RISC内のレジスタの数が増え、メモリ内の相互作用の数が増えるのを防ぐことができます。
- 単純なアドレッシングモード、複雑なアドレッシングでも算術演算を使用して実行できます AND / OR論理演算 。
- 同一の汎用レジスタを使用することでコンパイラの設計を簡素化し、任意のレジスタを任意のコンテキストで使用できるようにします。
- レジスタを効率的に使用し、パイプラインの使用を最適化するには、必要な命令セットを減らす必要があります。
- オペコードに使用されるビット数が削減されます。
- 一般に、RISCには32個以上のレジスタがあります。
RISCプロセッサアーキテクチャの利点
- RISCの命令セットが少ないため、高級言語コンパイラーはより効率的なコードを生成できます。
- RISCにより、上のスペースを自由に使用できます マイクロプロセッサ その単純さのために。
- 多くのRISCプロセッサは、スタックを使用する代わりに、レジスタを使用して引数を渡し、ローカル変数を保持します。
- RISC関数は少数のパラメーターのみを使用し、RISCプロセッサーは呼び出し命令を使用できないため、パイプライン化が容易な固定長命令を使用します。
- 操作の速度を最大化し、実行時間を最小化することができます。
- 非常に少ない数の命令フォーマット(4つ未満)、いくつかの数の命令(約150)、およびいくつかのアドレッシングモード(4つ未満)が必要です。
RISCプロセッサアーキテクチャの欠点
- 命令の長さが長くなると、命令ごとの文字サイクルが原因で、RISCプロセッサの実行が複雑になります。
- RISCプロセッサのパフォーマンスは主にコンパイラまたはプログラマに依存します。CISCコードをRISCコードに変換する際にコンパイラの知識が主要な役割を果たすため、生成されるコードの品質はコンパイラに依存します。
- CISCコードをRISCコードに再スケジュールすると、コード拡張と呼ばれ、サイズが大きくなります。また、このコード拡張の品質は、コンパイラとマシンの命令セットに依存します。
- RISCプロセッサの第1レベルのキャッシュは、RISCの欠点でもあり、これらのプロセッサはチップ自体に大きなメモリキャッシュを備えています。指示を与えるために、彼らは非常に必要です 高速メモリシステム 。
CISC(Complex Instruction Set Computer)アーキテクチャ
CISCプロセッサアーキテクチャの主な目的は、より少ない数の組立ラインを使用してタスクを完了することです。この目的のために、プロセッサは一連の操作を実行するように構築されています。複雑な命令はMULTとも呼ばれ、動作します メモリバンク コンパイラに保存およびロード機能を実行させることなく、コンピュータを直接実行します。
CISCアーキテクチャ
“車用マイナスイオン発生器 ”
CISCアーキテクチャの機能
- コンピュータアーキテクチャを簡素化するために、CISCはマイクロプログラミングをサポートしています。
- CISCには、高水準言語の設計と実装を容易にする、より多くの事前定義された命令があります。
- CISCは、より少ない数のレジスタとより多くのアドレッシングモード(通常は5〜20)で構成されます。
- CISCプロセッサは、命令の実行にさまざまなサイクルタイム(マルチクロックサイクル)を要します。
- CISCの複雑な命令セットのため、パイプライン化手法は非常に困難です。
- CISCは、より多くの命令で構成され、通常は100から250です。
- 特別な指示が使用されることはめったにありません。
- メモリ内のオペランドは、命令によって操作されます。
CISCアーキテクチャの利点
- 各機械語命令はマイクロコード命令にグループ化され、それに応じて実行され、マイクロコード実装と呼ばれるメインプロセッサのメモリに組み込まれて保存されます。
- マイクロコードメモリはメインメモリよりも高速であるため、ハードワイヤード実装に比べて大幅な速度低下なしにマイクロコード命令セットを実装できます。
- マイクロプログラムの設計を変更することにより、まったく新しい命令セットを処理できます。
- CISC、プログラムを実装するために必要な命令の数は、豊富な命令セットを構築することによって減らすことができ、遅いメインメモリをより効率的に使用するようにすることもできます。
- 以前のすべての命令で構成される命令のスーパーセットがあるため、これによりマイクロコーディングが容易になります。
CISCの欠点
- 異なる命令にかかるクロック時間は異なります-これにより-マシンのパフォーマンスが低下します。
- プロセッサの新しいバージョンがすべて以前の世代のサブセットで構成されているため、命令セットの複雑さとチップハードウェアが増加します。
- 頻繁に使用されない特殊な命令が多数存在する場合でも、通常のプログラミングイベントでは既存の命令の20%しか使用されません。
- 条件コードは、この設定に時間がかかる各命令の副作用としてCISC命令によって設定されます。また、後続の命令が条件コードビットを変更すると、コンパイラはこれが発生する前に条件コードビットを調べる必要があります。
RISC対CISC
- RISC内の不要なコードを削除することで、プログラマーは無駄なサイクルを防ぐことができますが、CISCコードを使用すると、CISCの非効率性のために、無駄なサイクルが発生します。
- RISCでは、各命令は小さなタスクを実行することを目的としているため、複雑なタスクを実行するには、複数の小さな命令が一緒に使用されますが、CISCを使用して同じタスクを実行するために必要な命令はわずかです。複雑なタスクを実行できるため、命令は高言語コードに似ているためです。
- CISCは通常、コンピューターに使用され、RISCはスマートフォン、タブレット、その他の電子機器に使用されます。
次の図は、RISCとCISCのその他の違いを示しています
RISC対CISC
したがって、この記事では、RISCおよびCISCプロセッサアーキテクチャの長所と短所のRISCおよびCISCアーキテクチャの機能、およびRISCアーキテクチャとCISCアーキテクチャの違いについて簡単に説明します。 RISCおよびCISCアーキテクチャの詳細については、以下にコメントしてクエリを投稿してください。
写真クレジット:
- プロセッサの命令セット arstechnica
- RISCアーキテクチャ lsi-コンテスト
- RISCとCISC csarassignment