チップ設計の「オープンソース化」が、ハードウェア開発に革新をもたらす

オープンソースのチップアーキテクチャー「RISC-V」が注目されている。 あらゆるメーカーが開発に利用できる共通言語の役割を果たすもので、企業のニーズに合わせた特殊な用途のチップをつくりやすくなるメリットがある。ソフトウェアに押し寄せたようなオープンソース化の波が押し寄せれば、コンピューターチップの設計に大きな変革をもたらす可能性も見えてきた。
チップ設計の「オープンソース化」が、ハードウェア開発に革新をもたらす
RISC-Vは、ソフトウェアの世界にLinuxがもたらしたような大きい変化を、チップ業界にもたらす可能性がある。IMAGE BY EMILY WAITE

オープンソースの隆盛は、企業のソフトウェア開発のあり方を変化させている。

フェイスブックやツイッター、それにヤフーの社員たちは、オープンソースのビッグデータ処理ツール「Apache Hadoop(アパッチ・ハドゥープ)」に初期から協力してきた。アップルとグーグルの関係が悪化したあとでも両社の開発者たちは、知名度は低いが重要性の高いオープンソースのコンパイラー基盤「LLVM」の開発に共同で取り組んでいる。マイクロソフトは、Windowsと競合するOSであるにもかかわらず、Linuxを活用し、またその活動に貢献している。

とはいえ、こうした企業は慈善のためにオープンソースを採用しているわけではない。フェイスブックがHadoopの利用を始めたのは、成長を続ける同社のニーズに合った商用ソフトウェアがなかったからだ。

Hadoopはオープンソースであるため、フェイスブックはこれをカスタマイズして機能を強化することで、自社の問題を解決できた。さらにはその改変に関する情報が公開されたため、ほかのユーザーが改良を加え、Hadoopはフェイスブックにとってもほかの企業にとっても優れたツールになったのだ。

企業やプログラマーは自由に入手できるコードを共同で開発することで、リソースを共有し共通の問題を解決したり、一からすべてをつくる手間を回避したりできる。各社がこうしたオープンソースのツールを使って開発する製品やサーヴィスは互いに競合しているが、オープンソース以外の方法では開発できなかったかもしれないものだ。

しかし、ハードウェアの分野ではオープンソース革命がなかなか起こらない。この数年間でオープンソースのガジェットや回路基板がいくつか登場しているが、どれもオープンソースのソフトウェアを使ってノートパソコンやサーヴァーを稼働させているに過ぎず、内部の仕組みは非公開になっている。

だが、とあるオープンソースのチップアーキテクチャーが、こうした状況を変えることになるかもしれない。その名は「RISC-V」という。

チップメーカーのNVIDIAとストレージ企業のウエスタンデジタルは、自社の主要製品にRISC-Vチップを採用する計画を明らかにしている。また、グーグルやテスラ、それにチップ大手のIBM、サムスン、クアルコムといった企業が、RISC-V財団に参加している。RISC-Vがオープンソースとして登場した初めてのチップアーキテクチャーというわけではないが、学術分野以外の人たちからこれほど多くの関心を集めたのは、RISC-Vが初めてだ。

「共通言語」となるアーキテクチャー

コンピューターアーキテクチャーの第一人者で、RISC-V財団の副理事長を務めるデヴィッド・パターソンは、いまより高速で効率性と安全性に優れたチップがRISC-Vから生まれることを期待している。そうなれば、ほぼすべてのコンピューターとスマートフォンのチップが影響を受けるとされている非常に深刻な脆弱性「Spectre」[日本語版記事]のような厄介な問題を、チップメーカーが協力して解決できるようになるだろう。

パターソンは、「企業が専有するアーキテクチャーの問題点は、設計を改良するならインテルやAMD、ARMといった企業に勤めていなければならないことです」と述べる。「Spectreは、コンピューターアーキテクチャーにおける困難な課題です。すべての人が解決に向けて取り組む必要があります」

RISC-Vはチップ全体の設計を定義するものではない。これはいわゆる「命令セットアーキテクチャー」と呼ばれるものであり、ハードウェアとソフトウェアが互いにやり取りするために使用する「ヴォキャブラリー」なのだとパターソンは説明する。

つまりRISC-Vは、あらゆるチップメーカーがチップの開発に利用できる共通言語なのだ。RISC-Vでは基本の命令セットを利用できるほか、チップ固有のニーズに合わせてオプションの命令を追加できる。

「RISC」は「Reduced Instruction Set Computer」(縮小命令セットコンピューター)の略で、最小限の単純な語彙を使用してチップを設計する手法を指す。パターソンは、1980年代初頭にカリフォルニア大学バークレー校で生まれたこの設計手法の開発に携わった人物であり、RISCという言葉の生みの親でもある。

関連記事コンピューター科学の栄誉「チューリング賞」が、RISCの概念を広めた2人組に贈られる理由

もっとも、初期のRISCは完全な命令セットを定義したものではなかった。しかし2010年、バークレー校に所属するある研究グループが独自のRISC命令セットを開発し、授業で使用した。これが継続的なプロジェクトに発展し、テクノロジー業界の注目を集めることになる。そこで研究グループはRISC財団を設立して、このプロジェクトを管理することにしたのである。

独自チップの需要は拡大

パターソンは、RISC-Vが役立つのは、インテルなどが開発している汎用CPUではなく、特殊な用途のチップ開発だと考えている。用途が限定されたチップは目新しいものではなく、例えばNVIDIAは1990年代から画像処理専用のチップを発売している。

だが、専用チップというアイデアが注目を浴び始めたのは数年前だ。きっかけは各社がこぞって人工知能(AI)の活用に乗り出し、クルマからバービー人形まで、あらゆる製品に高度なコンピューティング能力を搭載しようとしたことだった。

例えばグーグルは、ディープラーニング専用チップ「Tensor Processing Units(TPU)」[日本語版記事]を自社のデータセンターで利用している。また、自社製のスマートフォン「Pixel 2」のカメラに、画像処理用のカスタムチップ「Pixel Visual Core」[日本語版記事]を搭載している。

Linuxと比べれば、話がよりわかりやすくなるだろう。LinuxカーネルはOSの中核をなす部分で、キーボード、マウス、タッチスクリーンなどから入力された情報をソフトウェアが理解できる形式に変換する。「Red Hat Enterprise Linux」、スマートフォン向けの「Android」、PC向けの「Chrome」といったOSはすべて、Linuxカーネルがその心臓部を構成している。

こうしたOSは用途がそれぞれ異なるが、同じカーネルが使われているのだ。おかげでグーグルやRed Hatは、さまざまなハードウェアをサポートするために必要な作業を、自社だけで行う負担から解放されている。同じことがRISC-V命令セットを基盤として独自のチップを開発する企業にも当てはまる可能性がある。

チップメーカーの場合は、ARMやシノプシス(どちらもRISC-V財団に加盟していない)といった企業から、命令セットやチップ設計をライセンス提供してもらうことで、時間を節約したり共通の基盤を利用したりすることが可能だ。実際、多くのメーカーがそうしている。

ARMの設計はさまざまなスマートフォンで利用されているが、ARMベースのチップを開発するメーカーは、ライセンス料を支払ってARMの知的財産を利用しているのである。だが、RISC-Vは無料のオープンソースなので、企業はライセンス料を支払うことなく、RISC-Vベースのチップを独自に開発できる。

ニーズに合ったチップを開発しやすい

しかし、RISC-Vの重要な点は、チップのライセンス料を節約できることだけではない。これはオープンソースのソフトウェアが、マイクロソフトのWindowsやオラクルのデータベースに支払われるライセンス料を節約するためだけに使われているわけではないのと同じことだ。

RISC-Vの本当のメリットは、企業が独自のニーズに合ったチップを開発しやすいことにある。ウエスタンデジタルの最高技術責任者(CTO)であるマーティン・フィンクによれば、同社はRISC-Vを基盤として利用し、動画の再生や写真の編集といったさまざまな用途に合わせて命令セットをカスタマイズしているという。

フィンクはRISC-Vチップが自社製品に使われているARMやシノプシスのチップを置き換える存在になるのではなく、補完する存在になると考えている。従来の設計で十分対応できるのであれば、新しいチップを開発する必要は特にない。しかし、ARMなどのチップは、顧客が設計を変更できる範囲を制限しているため、ウエスタンデジタルはもっと柔軟性の高いチップを必要としたのだ。

ARMの広報を担当するフィル・ヒューズによれば、ARMが他社による設計変更に制限を設けているのは、断片化(フラグメンテーション)を避けるためだという。開発者は、自分のアプリケーションがどのARMデヴァイスでも正しく動作することを期待している。変更を認めたことによって互換性が失われれば、さまざまな関係者にとってまずい状況がもたらされる可能性がある。

ウエスタンデジタルのようにカスタマイズ性の高いソリューションを求めている企業にとっては、RISC-Vアーキテクチャーが役に立つ可能性がある。この点は、ARMのヒューズも認めている。半導体業界アナリストであるリンリー・グウェナップも、カスタムソリューションを必要とするニッチな用途には、RISC-Vが非常に適しているという考え方に同意する。

サポートが不十分になるリスクもあるが…

だが、RISC-Vのエコシステムには、大手企業が提供しているようなサポートやテスト環境が不足していることをグウェナップは指摘する。「RISC-Vが無料のオープンソースとして提供されているのは素晴らしいことです。しかし、ARMやシノプシスが提供しているような包括的なサーヴィスを利用できるわけではありません」

同じことがオープンソースのソフトウェアでも、しばしば問題となっている。Linuxはひとりの開発者が趣味で始めたプロジェクトだったが、Red Hatなどの企業がすぐに商用サポートを提供したため、大規模な企業でも利用できるものになった。同じようにHadoopも、Cloudera、Hortonworks、MapR Technologiesといった企業がサポートを手がけている。

RISC-Vの場合は、バークレー校の教授でRISC-Vプロジェクトの責任者を務めるクルステ・アサノヴィッチがSiFiveという会社を設立し、この不足を補おうとしている。同社はRISC-Vチップの設計と販売を手がけながら、ほかの企業にライセンスやサポートを提供している。

RISC-Vは十分に普及していないかもしれないが、すでにとある状況が確認されるようになっている。それは、チップメーカーが「シェアすること」を学び始めたということだ。


RELATED ARTICLES

TEXT BY KLINT FINLEY

TRANSLATION BY TAKU SATO/GALILEO