Skip to main content

開発ストーリー 第一話

Share:

第一話

RISCマイコン開発の夢かなわず転職思い立つ

1992年の発売以来,急速に市場に普及した日立製作所のRISC型32ビット・マイクロコントローラ「SHマイコン」。1996年には,32ビット・マイクロコントローラの分野で世界シェア2位を獲得した。このSHマイコンの開発を先頭になって進めたのが河崎俊平氏である。彼は,とある学会での発表がキッカケでRISC型マイクロコントローラの開発を夢見るようになる。しかし実際に任されたのは浮動小数点演算コプロセサの開発。希望をくじかれ,いったんは転職を決意する。

図1: SH―1のチップ写真

図1: SH―1のチップ写真
最初に製品化した「SH7032」。
10.78×10.1mm2のチップに59万3000個のトランジスタを集積した。
設計ルールは0.8μmだった

話は1989年にさかのぼる。一人の男が転職を決意しようとしていた。
彼の名前は河崎俊平。日立製作所に勤める技術者である。
彼が選んだのは米Apple Computer,Inc.。
当時,飛ぶ鳥を落とす勢いで成長していたパソコン・メーカである(*注1)。技術者にとっては働きがいのある魅力的な会社だった。このとき河崎氏が転職に踏み切っていれば,「SHマイコン」はこの世に生まれなかったかもしれない。

ページトップに戻る

世界シェア2位を獲得

SHマイコンは日立製作所が1992年に発売した,組み込み用途をねらったRISC型32ビット・マイクロコントローラである(図1)。この分野のマイクロコントローラとしては,むしろ後発に属する製品だった。それにもかかわらず,価格対性能比の高さを売り物にしたSHマイコンの出荷量は着実に伸びた。セガエンタープライゼスの家庭用ゲーム機「セガサターン」やカシオ計算機のディジタル・スチル・カメラ「QV―10」といったヒット商品に搭載されたことも普及に拍車をかけた(図2)。1996年にSHマイコンは,32ビット・マイクロコントローラ市場で2位のシェアを獲得した(図3)(*注2)。いまや日立製作所の半導体事業にとって欠かすことのできない看板製品となっている。
このSHマイコンの開発に中心的な役割を果たしたのが,河崎氏である。「なにがなんでもRISC型のマイクロコントローラを作りたい」という彼の執念がSHマイコンを生んだ

(a)家庭用ゲーム機「セガサターン」

(a)家庭用ゲーム機「セガサターン」

(b)ディジタル・スチル・カメラ「QV─10」

(b)ディジタル・スチル・カメラ「QV─10」

図2: SHマイコンを搭載した装置の例
SHマイコンの出荷量が増えたのは,SHマイコンを搭載するヒット商品の出現によるところが多い。なかでも大きいのがセガ・エンタープライゼスの家庭用ゲーム機「セガサターン」(a)。SH-2を2個,SH-1を1個搭載する。1997年3月までに全世界で756万台が出荷された。SH-1を搭載するカシオ計算機のディジタル・スチル・カメラ「QV-10」もヒット商品の一つである(b)。出荷台数は累計で約25万台。このほかSHマイコンをすでに搭載したり搭載を決めている装置の数は,1996年10月で1000個以上あるという。

ページトップに戻る

衝撃的だったRISCとの出会い

「君のやっている研究はロクでもないね」。
河崎氏がRISC型マイクロコントローラの開発を決意したキッカケはこんなひと言だった。日立製作所に入社して6年目の1986年に,東京の池袋サンシャインシティで開催されたコンピュータ関連の国際学会(*注3)でのできごとである。
河崎氏の発表は,当時開発を進めていたマイクロプロセサ「AI32」(*注4, *注2)に関するものだった。AI32は,CISC型マイクロプロセサと同じ「マイクロコード方式」と呼ぶ構造を採っていた。これに噛み付いたのが,RISCアーキテクチャの基礎を築いた研究者たちである。このなかにはRISC型マイクロプロセサの生みの親といえるDavid A. Patterson氏(*注5)の教え子David R. Ditzel氏(*注6)や,MIPSアーキテクチャを作ったJohn L. Hennessy氏(*注7)といった人々が含まれていた。彼らからみれば,マイクロコード方式のマイクロプロセサはもはや時代の遺物にすぎなかったのだ。マイクロコード方式は,多くの種類の命令に対応するマイクロプロセサの構造を,できるだけ単純にするために考案された。CISC型マイクロプロセサで一般的な手法である。具体的には,命令を「マイクロコード」と呼ぶ内部命令に変換してから実行する。ただし,マイクロコードへの変換に時間がかかるのでマイクロプロセサの動作周波数を上げにくいという欠点がある。
一方,マイクロコードを通常は使わないのがRISC型マイクロプロセサである。構造を単純にすることをねらって,最初から命令の種類を必要最小限に絞り込む。構造が単純なので,動作周波数を高めやすい。
この学会は,河崎氏を「RISC信奉者」に変えた。「時代の趨勢はRISCアーキテクチャに移りつつあることを思い知らされた。それまで自分のやってきた研究と,現実との乖離にやっと気付いた」(河崎氏)。

命令セットは万葉集ではない

「RISC型マイクロコントローラを開発しよう」と決意を新たにした河崎氏。しかし当時はマイクロコントローラといえばCISC型が全盛の時代である。多くの人からは,理解を得ることはできなかった。命令の種類を少なくして,マイクロプロセサの構造を単純にすればトランジスタの数が減る。動作周波数を上げやすくなる。CISCアーキテクチャのように複雑な命令セットは不要だ。こう主張すると,「「おかしなことを言うやつだ」と後ろ指を差されたものだ」と,当時を回想する。
それでも河崎氏はめげない。心はすでにRISC型マイクロコントローラの開発構想にまで飛んでいた。たとえばマイクロコントローラの「顔」ともいえる命令セット。これは是が非でも2~3人といった小人数でまとめようと。
当時日立製作所では,マイクロコントローラの命令セットの仕様策定に20人以上が関わっていた。「「君も3年働いたから,一つぐらい命令を入れてあげよう」といった具合に,各人が提案する命令を寄せ集めて命令セットを決めていた。まるで万葉集」(河崎氏)。この結果,仕様にはあるが,実際はほとんど使わない命令が数多く存在していたという。「大勢で決めれば良いものができるだろう」というこれまでの文化を否定し,命令セットから無用な命令を一掃したい。これが河崎氏の思いだった。

ガマン,ガマンの日々

図3: 出荷量でシェア2位を獲得

図3: 出荷量でシェア2位を獲得
1996年の32ビット/64ビットの
マイクロコントローラの出荷量のシェア。
米Gartner Group,Inc. Dataquestの調べによる。

夢は広がる。しかし,現実はそう甘くなかった。AI32の次に河崎氏が携わることになったのは,浮動小数点演算コプロセサの設計である。マイクロコントローラの担当ではなかった。
河崎氏が開発に取り組んだ浮動小数点演算コプロセサ「GMICRO/FPU」は,TRON仕様に準拠したマイクロプロセサ†に接続して使う専用品である。マイクロコントローラを開発したい河崎氏にとって,浮動小数点コプロセサの設計は,決してやりがいのある仕事ではなかった。しかもTRON仕様のマイクロプロセサの市場自体がしぼみかけていた。「ガマンして働いていた」と当時を振り返る河崎氏。実際,彼に対する周囲の評価も高くなかったようだ。「当時の給料の査定を他人と比べて,あまりの低さにビックリした」(河崎氏)という後日談がある。
GMICRO/FPUの開発は1988年末に終了した。次はぜひともRISC型マイクロコントローラの開発に着手したい。河崎氏は上司に提出する自己申告用紙の「今後の目標」を記入する欄に,「次に担当する製品を明確化したい。RISC型のマイクロプロセサや,組み込み用途向けマイクロコントローラに興味がある」と記した。
朽ち果てるのはイヤだ

しかし河崎氏の願いは,またしてもくじかれた。上司から与えられた次の仕事は,GMICRO/FPUの上位品種の開発。もうたくさんだ。
「このまま朽ち果てるのはイヤだ。これまでの10年間は無駄になるが,プログラマとして一からやり直そう」。そう決意した河崎氏は,密かに転職先を探しはじめる。こうして冒頭のシーンにつながる。
Apple社とは,仕事の内容や給与,勤務地といった具体的な条件についても話を進めていた。プログラミングの勉強もした。河崎氏が当時使っていたノートのあるページには,Macintosh用のプログラムのメモがびっしりと書き込まれている(注8)。
そんなある日のことだった。河崎氏は上司から突然呼び出される。

ページトップに戻る

第二話へ続く

(枝 洋樹)

RISC型32ビット・マイクロコントローラとは

マイクロコントローラは,プログラムを実行するマイクロプロセサ(CPUコア)と周辺回路を1チップに集積したLSIの総称である。周辺回路とは,スイッチ,表示装置といった外部の機器を接続する入出力インタフェース回路や,主記憶などとのやりとりをするメモリ・コントローラ回路などを指す。このほかにRAMやROMなどを内蔵する場合もある。
32ビット・マイクロコントローラの「32ビット」は,一つのレジスタに格納することができるデータの長さを示す。扱えるデータが長いほど,精度の高い演算ができる。レジスタとは,演算に使うデータをCPUコア内に一時的に格納しておくための高速なメモリである。ちなみに,現在最も出荷量が多いのは,8ビット・マイクロコントローラである。
頭につく「RISC型」はCPUコアがRISC(reduced instruction set computer)アーキテクチャを採ることを表す。RISCアーキテクチャは,CISC(complex instruction set computer)アーキテクチャに比べて簡素な命令セットを備えることが特徴である(表A)。一例として,命令の長さが一定(固定長)であることが挙げられる。このため命令を解釈する回路(デコーダと呼ぶ)を単純化できる。CISCアーキテクチャの場合,命令の長さは一定ではない。
もっとも,命令の長さが一定であることによる弊害もある。プログラム・サイズがCISC型のマイクロコントローラに比べて大きくなってしまう。プログラムを格納するROMの容量が増大する。このため,組み込み用途向けのRISC型マイクロコントローラのなかには,CISC型と同じ可変長の命令セットを備えるものもある。たとえばNECのV800シリーズである。

CISC
アーキテクチャ
RISC
アーキテクチャ
命令数 多い 少ない
命令長 可変 固定
構造 複雑 単純
動作周波数 高めにくい 高めやすい
プログラム・サイズ 小さい 大きい

表A: CISCアーキテクチャとRISCアーキテクチャの比較

ページトップに戻る

*注1:
Apple社は1989年に,後に名機と呼ばれるパソコン「Macintosh SE/30」を発売している。アウトライン・フォントを装備したOS「System7.0」を発表したのもこの年である。

*注2:
米Gartner Group,Inc.,Dataquestの調べによる出荷量ベースのシェア。1位はMIPSアーキテクチャだった。

*注3:
学会名は「13th Annual International Symposium on Computer Architecture」。

*注4:
AI32は,AI(Artificial Intelligence)言語処理向けの専用プロセサ。AI言語をコンパイルして生成した中間コードを,マイクロコード方式で直接実行するのが特徴だった。ただし製品化には至らなかった。

*注5:
現在は米University of California at Berkeleyの教授。

*注6:
現在は米Transmeta Corp.の社長兼CEO。

*注7:
現在は米Stanford Universityの教授。

TRON仕様のマイクロプロセサ=東京大学の坂村健助教授(当時)が提唱した32ビット・マイクロプロセサを設計するための規約。命令セットやレジスタ・セット,アドレシング・モードなどを規定している。1988年当時には日立製作所,三菱電機,富士通,東芝が同仕様に準拠したマイクロプロセサを開発していた。

*注8:
河崎氏は,日本語フロント・エンドと日本語アウトライン・フォントの開発に携わろうと思っていた。

参考文献

  1. 宮崎,小林,横田,「新アーキテクチャの32ビットMPU誕生」,『日経エレクトロニクス』,1992年11月23日号,no.568,pp.87―132.
  2. Nojiri,T.,Kawasaki,S. and Sakoda,,K.,“Microprogrammable Processor for Object-Oriented Architecture,”Proceedings of 13th Annual Symposium on Computer Architecture,pp.74―81.,Jun.1986.

開発ストーリーTOPへ

ページトップに戻る


End of content

Back To Top