世の中には2種類のCPUがある。 CISCとRISCだ。

「CISCはインテル、RISCはアーム」と暗記しよう

追記: この記事は、AppleがRISC系プロセッサApple SiliconをMacに導入する以前に書かれたものですが、Apple Siliconに関する補足を挿入しました。

CISCとRISCの違いについてざっくり説明する。技術的側面には触れず(私も詳しくないし)、これら2種類のCPUの使用例や今後の展望についてなんとなく解説する。

Photo by Christian Wiediger on Unsplash

CPUとは?

そもそもCPUとは何だっけ?CPU(Central Processing Unit)はコンピュータを構成する部品の一つで、演算を行う場所だ。コンピュータ(computer)とは文字通り計算(compute)するための機械なので、計算を司るCPUはコンピュータを構成する最も重要な部品の一つだ。「プロセッサ」という用語があるが、これはほぼCPUと同義と考えて良い。

複雑な命令と簡単な命令

本題に入ろう。世の中のCPUは「CISC(シスク)」と「RISC(リスク)」の2種類に大別される。この2つの違いを説明すると、CISCは複雑な命令を処理するCPUで、RISCは単純な命令を処理するCPU。ただそれだけ。非常に明快な話だ。

注意すべき点は、複雑な命令を処理できるから難しい演算ができるとか、単純な命令しか処理できないから演算能力が劣るとかいう話ではないということだ。この2者は設計思想の概念であり、どちらが優れているとかどうとかいう問題ではないのだ。(どちらが優れているのかという議論は尽きないのだが、目玉焼きはソースか醤油かのような宗教論争になりがちで、議論の決着はついていない)

CISCは一回の命令で複雑な処理を行えるので、短いプログラムでより多くの処理が行えるという考え方であり、RISCは命令の数を減らすことで一回の処理を単純化してその結果処理速度が高速化されるという考え方だ。

CISCはインテル、RISCはアームと覚える

CISCとRISCではCPUの命令が異なると説明したが、これはCISCとRISCではCPUレベルで互換性がないことを意味する。CPUはコンピュータの中心部なのだから、CPUレベルで互換性がないというのは製品の性質に大きな差異を生むことになる。

CISC入ってる?

CPUといえばある企業を連想するだろう。そう、インテルだ。「インテル入ってる」というCMでお馴染みだが、インテルはCISC型を採用している。パーソナルコンピュータ用のCPUでダントツのシェアを誇るインテルがCISCということは、世の中のパソコンの大半がCISCであることを意味する。基本的にWindowsもMac※もLinuxもCISCだ。

※ 2020年10月 追記
執筆当時の2018年現在では、MacもCISC系プロセッサを採用していましたが、2020年にMacはRISC系プロセッサApple Siliconの導入を開始しました。しかし、Apple Siliconを採用したMac登場したばかりなので依然として世の中の大半のパソコンはCISCと云えます。

ARMなんじゃそれ?

WindowsもMacもCISCなら、もう世の中全部CISCなんじゃないかって?答えはノーだ。パソコン以外にも世の中にはたくさんの電子機器がある。パソコン以外の電子機器というとスマホを真っ先に連想するだろう。それはもちろん正しいが、それだけではなく、冷蔵庫やらプリンターやらカーナビやらありとあらゆる電子機器が存在して、そのほとんどすべてにプロセッサーが入っている。そして、それらのプロセッサーはRISCだ。RISCは低電圧でも動作できるという特徴があるので、バッテリーの小さいスマホや、小型のIoT機器に利用しやすいのだ。

CISCがインテルならば、RISCは英国の半導体企業ARM(アーム)が高いシェアを持つ。インテルのようにテレビCMを打たないので、知名度はあまり高くないが、パソコン用以外のほぼ全てのプロセッサーはARMが設計している。ARMはインテルと異なり、自社で生産を行わない(ファブレス企業)ので、プロセッサーの設計図をファウンドリと呼ばれる半導体生産を行う企業に売るライセンスビジネスで利益を得ている。

※2020年10月追記
Appleが2020年に導入したRISC型プロセッサApple SiliconもARMアーキテクチャを採用しています。以前までMacはCISC型のIntel製CPUを利用していたので、Apple Siliconの導入とは即ち、IntelからARMへの移行(=CISCからRISCへの移行)と云えます。なお、iPhoneのプロセッサは以前からARMアーキテクチャでした。

AppleがMacにARMアーキテクチャを導入した理由の一つとして、カスタマイズ製の高さがあると思います。先に述べたように、ARMは設計図を売ることをビジネスとしているので、AppleはARMから基本的なCPU設計を買い取り、それをもとに自社でカスタマイズしたCPU(これを Apple Siliconと呼んでいる)を作るようになります。これにより、完成したプロセッサを買うことしかできないIntelと比較して、Macに最適化したプロセッサを開発できたり、製品の開発サイクルを自社で決められるなどのメリットが生じます。また、既にiPhoneやiPadでは既にARMが採用されているので、Macにも同種のCPUを導入できれば、iPhone・iPad・Macという主要製品で設計を共通化できるようになります。

ARMの危機はソフトバンクの危機(?)

日本が誇るテック企業、ソフトバンクがARMを買収したので同社は日系企業となった。先述の通り、ARMのCPUはこれからの時代需要増加が見込めるスマホやIoT機器に利用可能なため、ARMが日系企業になったことは日本経済に良い影響をもたらすと期待される。私は企業経営について詳しくないが、買収のニュースを聞いた時にはさすが孫正義と思った。

しかし、ARMに関して不穏な動きがある。RISC-V(リスク・ファイブ)の登場だ。RISC-VはARMと同様にRISC型を採用したCPUの設計図で、ARMとはライバル関係にあるとも云える。RISC-VがARMと決定的に異なるのは
企業ではなく学術機関であるカリフォルニア大学バークレー校が主導しているということ。RISC-Vは非営利のプロジェクトなので、ライセンス料がかからない。このような仕組みをオープン・アーキテクチャという。現在のところRISC-Vは主流とは言えないが、今後経費削減のために多くの半導体製造企業がARMを離れ、RISC-Vを採用すれば、ARMを3.3兆円で買収したソフトバンクはピンチかもしれない。

※ 2020年09月 追記
孫さん、ARM売っちゃいましたね。売却理由はRISC-Vとは関係無いようです。

余談 幻のWindows Phone

ちょっと前にWindowsがスマホ用OSを出していた時期があった。PC用の通常のWindowsはもちろんCISCで動作するのだが、スマホ用Windowsは省電力性のためにRISCで動作するように作られた。Windowsという名称である以上、ユーザーはスマホ版WindowsとPC版Windowsの互換性が完璧であることを期待したが、ここまで述べてきたような理由でこの二者には互換性がなかった。アプリレベルで互換性を保つ努力はなされたが(例えばPCのWordで作成した文章は、多少レイアウトが崩れるがiPhoneやAndroidでも編集できる。Windowsスマホでもこの程度の互換性は保たれた)、Windows PCで動作するソフトウェアがWindowsスマホでも動くということはなかった。だったら既存のAndroidやiOSと変わらないじゃないか。そんなユーザーの不満を抱かせたのかどうかは知らないが、Windows Phoneは失敗に終わった。

※ 2020年12月追記
Appleが新しく導入したRISC系のApple Siliconを搭載したMacは、Intelを搭載したMacと高い互換性を有しているようです。一般的にCPUアーキテクチャを変更した場合は互換性で問題が発生するものですが、Apple Siliconにおいては目立った問題がなく、世の中のテクノロジーに詳しい人達を驚かせています。

CISC、RISCという概念知っているとテック系ニュースを見るのが少し楽しくなるんじゃないかと思う。雑談のネタとしても使えるかもしれない。

この文章ではなるべく話を分かりやすくするために専門用語を一般的な言葉に言い換えたり、適宜、用語の定義を広くしています。RISCとCISCの違いをザックリと理解することを目的とした記事ですので、ご了承ください。

--

--