機械がプログラムされるとき、プログラマーはある特定の原始命令または機械命令を使用します。これらは一般にコンピューターの命令セットとして知られています。
比較表
比較基準 | RISC | CISC |
---|---|---|
を強調する | ソフトウェア | ハードウェア |
含む | シングルクロック | マルチクロック |
命令セットサイズ | 小さい | 大 |
命令フォーマット | 固定(32ビット)フォーマット | さまざまなフォーマット(各命令16〜64ビット) |
使用されているアドレッシングモード | 3-5に限定 | 12〜24歳 |
使用汎用レジスタ | 32-192 | 8〜24 |
メモリ推論 | 登録する | メモリからメモリへ |
キャッシュ設計 | データキャッシュと命令キャッシュを分割します。 | 命令とデータ用の統合キャッシュ。 |
クロックレート | 50〜150 MHz | 33〜50 MHz |
命令あたりのサイクル数 | すべての命令に対してシングルサイクル、平均CPI <1.5。 | 2〜15のCPI |
CPU制御 | 制御メモリなしで直結。 | 制御メモリ(ROM)を使用してマイクロコード化されています。 |
RISCの定義
縮小命令セットコンピュータ(RISC)命令セットは通常100未満の命令を保持し、固定命令フォーマット(32ビット)を使用する。 単純なアドレッシングモードはほとんどありません。 レジスタベースの命令が使用され、これは、レジスタ間メカニズムが使用されることを意味する。 LOAD / STOREは、メモリにアクセスするための唯一の独立した命令です。
コンテキスト切り替えの速度を上げるために、大きなレジスタファイルが使用されます。 命令セットが単純なため、プロセッサ全体を単一のVLSIチップに実装することができました。 追加の利点は、利用可能なRISC /スーパースカラプロセッサの高いMIPS定格を左右する、より高いクロックレート、より低いCPIです。
CISCの定義
複合命令セットコンピュータ(CISC)の命令セットには、およそ120から350の命令が含まれています。 それは、可変命令/データフォーマットを使用するが、少数の汎用レジスタ、すなわち8〜24を使用する。 大きな命令セットの理由は、可変フォーマット命令の使用です。 膨大な数のアドレス指定モードを使用して、多数のメモリ参照操作が実行されます。
CISCアーキテクチャは、ハードウェア/ファームウェアでHLLステートメントを直接採用しています。 ユニファイドキャッシュは、データと命令の両方を含み、共通パスを使用する従来のCISCアーキテクチャで使用されています。
RISCとCISCの主な違い
- RISCでは命令セットサイズが小さく、CISCでは命令セットサイズが大きい。
- RISCは固定フォーマット(32ビット)とほとんどの場合レジスタベースの命令を使用しますが、CISCは1命令あたり16〜64ビットの可変フォーマット範囲を使用します。
- RISCは単一クロックおよび限定アドレッシングモード(すなわち3〜5)を使用する。 一方、CISCはマルチクロック12から24アドレッシングモードを使用します。
- RISCが使用する汎用レジスターの数は32から192の範囲です。 それどころか、CISCアーキテクチャは8〜24のGPRを使用します。
- レジスタ間メモリメカニズムは、独立したLOAD命令とSTORE命令でRISCで使用されます。 対照的に、CISCは操作を実行するためにメモリ間メカニズムを使用し、さらにLOAD命令とSTORE命令を組み込んでいます。
- RISCは分割データと命令キャッシュの設計をしています。 これとは対照的に、CISCではデータと命令に統合キャッシュを使用していますが、最新の設計では分割キャッシュも使用しています。
- RISCのほとんどのCPU制御は制御メモリを持たずにハードワイヤードです。 逆に、CISCはマイクロコード化されて制御メモリ(ROM)を使用しますが、最近のCISCもハードワイヤード制御を使用します。
結論
CISC命令は複雑で、RISCよりも遅くなる傾向がありますが、少ない命令で少ないサイクル数を使用します。