最終更新:

RISCとCISCの違いとは?CPUアーキテクチャをやさしく比較


命令の出し方をイメージする
RISC系命令を組み合わせる読み出す計算する書き戻す例:Arm・RISC-VCISC系まとめた命令も用意読み出し・計算などを含む命令もある例:x86
処理の分け方を示す模式図で、実際の命令数や速度の比較ではありません。命令セットと内部実装は別で、速さ・消費電力は製品と処理によります。
ひよこ ひよこ
PCの記事に出てくるRISCとCISCって何?速いCPUを見分ける名前なの?
ペンギン先生 ペンギン先生
CPUの命令セットの設計を説明するときの分類だよ。RISCは比較的単純で扱いやすい命令を組み合わせる考え方、CISCは複数の操作をまとめた複雑な命令も用意する考え方なんだ。命令の総数だけで決まる分類ではないよ。
ひよこ ひよこ
具体的にはどう違うの?
ペンギン先生 ペンギン先生
引っ越しなら、RISCは「持つ」「運ぶ」「置く」と分けるイメージ、CISCは「持って運んで置く」をまとめて指示するイメージだね。ただし比喩なので、実際の命令数や速さを表すものではないよ。
ひよこ ひよこ
どんなCPUがあるの?
ペンギン先生 ペンギン先生
ArmやRISC-VはRISC系、x86はCISC系の例だよ。これはソフトから見える命令の約束の違いで、同じ命令セットでも内部の回路設計は製品ごとに異なるんだ。
ひよこ ひよこ
RISCなら省電力で速いの?
ペンギン先生 ペンギン先生
それだけでは決まらないよ。回路の実装、製造技術、メモリ、処理するプログラムなどに左右される。1命令が必ず1クロックで終わるわけでもないし、RISCとCISCなら性能差がないと一括りにもできないんだ。
ひよこ ひよこ
古いソフトとの互換性は?
ペンギン先生 ペンギン先生
複雑な命令だから互換性があるのではなく、同じ命令の動作を維持する設計が重要だよ。命令セットの対応版や拡張、OSなどの条件もあるので、RISC系でも互換性を維持できるんだ。
ひよこ ひよこ
ペンギン先生 ペンギン先生
RISC-Vは公開された命令セットの仕様で、ISAの利用料は不要だよ。でもCPUそのものではなく、その仕様を使った回路は公開も非公開も選べる。CPUの開発・製造や別のIPの費用まで無料になるわけではないんだ。
ひよこ ひよこ
x86の中身はRISCって聞いたよ?
ペンギン先生 ペンギン先生
x86命令を内部の小さな処理単位であるマイクロオペレーションへ変換する実装があるよ。ただし内部の処理単位と、ソフトに公開するRISCの命令セットは別物。命令セットと実装を分けて考えるのが大切だね。

PC選びでは「動かしたいソフト」から

CPUの商品説明でArmやx86という名前を見たとき、RISC/CISCは命令の約束を知るための背景になります。ただし、それだけを見て速さやバッテリーの持ちを決めることはできません。

初心者が最初に確認したいのは、使いたいアプリがそのOS・CPUに対応するかどうかです。次に、自分が行う処理の測定結果や利用条件を見ます。「命令セット」と「その命令を実行する製品の中身」を分けると、広告の数字も読みやすくなります。

具体的なPCの違いへ進むならArmとx86の比較へ。RISC-Vの「公開されているもの」が何かはRISC-Vで確認できます。

参考資料