RISCの生い立ちからRISC-Vまでの遠い道のり
「RISCだったら自分たちで作れるんじゃね?」で始まった、自家製RISCプロセッサの興隆(2/3 ページ)
80186/80188は組み込み業界の方以外にはあまり知られていないが、ベースは8086/8088だ。ただし周辺回路までワンチップ化するとともに、一部80286の命令も取り込んでより高速化した。当時は組み込み向けにx86(というか、IBM PC)をベースにシステムを構築することも多く、その延長でx86でシステムを構築するケースは少なくなかった。
Intelは1987年から2007年までこの80186/80188を供給し続けていたが、何しろコストカットの要求が激しい分野だけに、より安価かつ性能が高い(オリジナルの80186は最大でも25MHz駆動)互換品には確かにマーケットニーズがあった。
これを狙うにあたり、RDCは独自の16bit RISCコアを開発して、ただし命令セットだけは80186互換としたわけだ。昨今のx86というかx64は、8/16/32/64bitが入り混じって命令数がやたらに多くなっているが、8086/80186互換なら8/16bitのみだし、RISC化はそう難しくない。幾つかの命令(例えばメモリアクセスを伴う演算命令とか)に関しては内部で命令変換を掛けただろうとは思うが、おおむねx86命令をそのまま実装できたはずだ。同社はその後、これを高速化した「RD1100」シリーズや、32bit化して486互換とした「RD8600」シリーズなどを発表しているが、これも自社開発のRISCコアならではの製品展開である。
もっとメジャーなところでいえば、開発ボード「Arduino」に採用されたことでおなじみの、米Atmel(現Microchip)のAVRが挙げられよう。もともとはノルウェー工科大学の学生だったアルフ=エーギル・ボーゲン氏とヴェーガル・ヴォロン氏の2人で開発したのがAVRである。AVRは“Alf and Vegard's RISC processor”の略である。もっとも当初はμRISCという名称であり、卒業論文としてこのμRISCの設計を完成させる。2人はその後Nordic VLSIに勤務し、その際に彼らのμRISCはASICの内部で使われたようだ。
Nordic VLSIは現在のNordic Semiconductorの前身で、当時はASICのデザインハウス的な業務が多かった。そもそもNordic VLSI自身がノルウェー工科大出身者によって立ち上げられたベンチャーみたいなもので、なので2人がそこに勤めたのはわりとごく自然な流れだったらしい。
その後、ある程度μRISCにも改良を加えて洗練された辺りで、2人はシリコンバレーに渡り、これを大々的に商品化してくれるメーカーを探す。最終的にAtmelがこれに応じ、μRISCの権利をAtmelが買収。Atmel AVRとして記録的な大ヒットに繋がる商品に仕立て上げた訳だ。
AVRはその後TinyAVRやmegaAVR/XMEGAといった形でラインアップを広げていく。Atmelは1997年にAVR MCUを初めて発売したが、2003年には累計出荷数が5億個に達したというプレスリリースを出している。残念ながら2006年にリリースした32bit版のAVR32は成功したとはいえず、その後Microchipによる買収に伴い事実上消えてしまったが、8bit AVRに関しては現在も生産されているどころか、機能強化されつつ品種が増えている状態である。
現在の組み込み市場における3大8bitアーキテクチャといえば、8051とPIC、それとAVRということになると思う。PICもややRISC風の実装になっているところもあるし、8051はもともとはCISCながら、昨今ではRISCベースの8051が多数存在する。が、AVRは当初からRISCとして設計され、現在も広く使われているアーキテクチャである。
そんなわけで、2000年頃になると「RISCは設計コストを抑えつつ自分の好きな構成にできる、良いアーキテクチャである」という認識が一般的に広まってきたと思う。実際2000年を過ぎた後で新規に設計されたCISCのアーキテクチャは、ルネサス テクノロジ(現ルネサス エレクトロニクス)のRXシリーズくらいしか思いつかない。
前も書いた通り、x86のおかげでCISCとRISCの境目がなくなってしまったという背景はあるが、新規に命令セットから起こすに当たってCISC的な命令セットを用意した最後のプロセッサ、という方が正確だろうか?
「ではRISCにすれば成功するか?」といえばそんなことはない。先もAVR32にちょっと触れたが、プロセッサが完成してもビジネスとして成功するかどうかはまた別の話である。
例えば2000年に、OpenRISCというプロジェクトがスタートした。もともとはOpenCoreという、フリーに使えるさまざまなコア(CPUだけでなくDSPとか、CPUの一部だけとか、メモリコントローラーだったりSoCの一部だったり、と多様な種類がここには含まれる)を提供しようというもので、現時点でも多数のコアがIPの形で提供されている。このOpenCoreの目玉プロジェクトとして始まったのがOpenRISCである。
既にプロジェクトはある程度目標を達成しており、OpenRISC 1000のソースコードはGitHubで公開されている。2017年にはArchitecture Version 1.2が、2019年には同Version 1.3がそれぞれリリースされており、またFPGAへの実装の他、ASICに搭載する形で製造されたチップも存在する。その意味ではプロジェクトの目標である「Open Sourceの形で開発され、ロイヤリティーなしで利用できるRISC CPUを作る」は達成されているのだが、実際には足りてないものが多い。Wishlistを見てみると、
- システム構築ツールが必要
- Webベースのシステム可視化ツールが欲しい
- Package Managerが必要
- FreeBSDへのポーティング
- Linux kernelのVDSO(Virtual Dynamic Shared Object)サポート
- さまざまな言語サポート
- GDBが動くようにしてほしい
- libffi/gobject-introspectionの移植
- 古いバージョンのコアのアップデート
- ツールチェーンの拡充
- 仕様とインプリメントを一致させる(RTLでインプリメントされている関係で、一部一致していない)
といった項目が並んでいる。大半はCPUコアそのものには関係ない、という気もするのだが、逆にいえばこうしたものをきちんと整備しないとそのコアを使ってもらえない、ということでもある。単にCPUコアだけを作ってもダメで、そのCPUコアを利用するためのエコシステム(OSやソフトウェア、Toolchainの対応)まで考えないと、そのコアが成功するのは難しいということである。
これは別にRISCに限った話ではないが、一般論としてこのエコシステムの整備には、CPUコアを作ることそのものの何十倍とか何百倍ものコスト(資金だけでなくマンパワーも含む)が必要になる。だから、それこそ冒頭のAdaptecのPhaseEngineのように、自社だけで使う場合には最低限のツールだけあればよいことになるが、これを広く使えるものにしようとすると、途端に難易度が上がる。
現在も多数のRISCベースのCPU IPが流通しているが、いずれも命令セットが8051互換とかPIC互換とか、既にあるCPUの命令セットをそのまま使えるようにしているのは、要するにソフトウェアエコシステムに関しては既存の8051やらPICやら向けのものがそのまま流用できる、というのが最大の理由である。
これが自動的に、32~64bitのFreeなRISCコアがあまり存在しない理由にもなっている。32/64bitで、既に広く使われている命令セットと言えばx86/68K/ARM/MIPS/PowerPC/SPARC程度に限られる。そしてx86/ARMに関しては、命令セットこそ公開されているものの、これを利用して自身でコアを作ったり出来ないような工夫(その命令セットを利用しようとすると特許に抵触してしまう、など)が施されている関係で、なかなか乗り出せない。
実際2000年にARM命令互換のRISCチップを発表したpicoTurboというベンチャー企業は、直後にARMから特許侵害で訴えられる。最終的にARMは2004年に1180万ドルを支払ってpicoTurboを買収しているという辺り、要するになりふり構わずARMの命令セットを守る気だったことがよく分かる。
Copyright © ITmedia, Inc. All Rights Reserved.
RISCの生い立ちからRISC-Vまでの遠い道のり
IBM Power、MIPS、PA-RISC、SPARC、Alpha、Arm、そしてRISC-V。IT史に詳しい大原雄介さんが、現代のプロセッサにおいて重要なRISCプロセッサの歴史を追っていきます。
この記事の著者
関連記事
こんなメディアも見られています
ITmedia NEWSに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
本日の新着記事
アクセスランキング
-
1
厚労省の調査書類、ヤマトが配送中に紛失 339人分の氏名や給与額など漏えいのおそれ
-
2
個人開発のオンライン将棋「飛角」終了 「ほとんどがBOT対局、人同士が成立しない」状況に
-
3
ソニーミュージックのVTuberプロジェクト「VEE」終了 5年で幕「事業継続困難」
-
4
Grok、Aniと“お別れ” 3Dコンパニオン機能が終了 キャラは開発スタジオの新アプリ「Animates」で継続へ
-
5
Googleマップ、「オンタリオ湖」→「アメリカ湖」に 米国内で表記変更 日本では併記
-
6
参議院サイト、17年ぶり刷新の裏で「制作費26万円」が話題に 落札結果から判明 SNSで驚きの声
-
7
東京23区で「徒歩10分以内」に駅がない地域はどこ? 駅空白地帯マップが話題
-
8
知りたくなかった……「プールに含まれるおしっこの量」の記事がアクセス1位に
-
9
「テスト」「あああああ」誤って本番公開 サンライズ「MAO」公式サイトで
-
10
本来行政がやるべきDXをたった1人で完成 AIが変えた“実行可能な規模” 待機児童問題に一石を投じた「園えらびの手がかり」の例
ITmedia NEWS SNS
インフォメーション
注目情報をチェック
ITmediaNEWSをフォロー
あなたにおすすめの記事PR