ハードウエアにソフトウエアの魂を入れる

新田 泰也(にった やすなり)

(株)コアシステムウェア事業カンパニー営業部

pd@gent担当主任

 

 

プロフィール

 

1971年生まれ。コア学園山ロコンピュータ専門学校卒業。現在までに携わった業務には、LCR カード、多機能電話、PHS対応多機能電話機、SPYDAR 映像サーバー、WING映像サーバー、MICCS マルチメディアChipSet ( ブルガリアや米国HPへの出張を経験)、ハンデイターミナル、各種携帯端末(音声制御を担当)、NTI ドコモとの協業による「pd@gent」(PDA遠隔コントロールツール)の企画・開発・販売などがある。

 

 

エンベテッド・ソフトウエアの開発

エンベデッド・ソフトウエア(組み込みソフトウエア)は、汎用コンピュータやパーソナルコンピュータに搭載されるソフトウエアとは違って、日常、その存在を意識されることは少ない。しかし携帯電話、自動車、カメラ、家電製品などにハードウエアであるマイクロプロセッサーと一体となって、それは組み込まれている。まして単なる家電製品が「デジタル家電」に変貌しつつある現在、このエンベデッド・ソフトウエアの重要性はますます高まっている。

エンベデッド・ソフトウエアは、あくまで「黒衣」であり、必ずしも強力なハードウエアやマイクロプロセッサーを利用できるとは限らない。というよりは非力なマイクロプロセッサーの能力を限界まで引き出すことが求められる。場合によってはOSがなく、エンベデッド・ソフトウエアで直接製品全体を制御する必要がある。またエンベデッド・ソフトウエアではリアルタイムの処理が求められる。そのためにはソフトウエアの知識だけではなく、ハードウエアの知識も当然求められる。

このようにエンベデッド・ソフトウエアの開発には、一般のソフトウエア開発とは異なった、より困難な条件をクリアーする必要がある。それを新田泰也は次のようにいっている。

「たとえばパーソナルコンピュータにくらべて開発環境は非常にプアーです。またLED (発光ダイオード)が二個しかなくても、正常に動いているかどうかを表現しなければなりません」エンベデッド・ソフトウエア開発のやりがいは「ハードウエアというものがあり、それにソフトウエアという魂が入っていって、動き出すところにあります」と新田はいう。

「ハードウエアであるチップを組み合わせてみると、仕様書の通り動かないことが多くあります。マイクロプロセッサーとの相性、また回路の長さなどでノイズが発生します。後は自分の勘で、そのノイズを防いで動くようにしろと、上司からいわれました。だからエンベデッドの世界では『職人さん』が多いのです。すぐ動くと、簡単で面白くありません。なかなか思ったように動かないのを苦労して動かすという手応えが、たとえようもないほど面白いのです」たとえば新田は現在の担当部署に異動する直前まで、携帯電話の音声周りやイルミネーション関連の開発に携わっていた。この携帯電話の開発では、ボタンを押した時に発生する「ポップノイズ」を取り除くのに大変な苦労をした。

「ガリッとかプツッというクリック音がするポップノイズの原因は、電気が入って電気がくわれ、また本来の音を出すために電気が通る、そしてチップに電気が入ってそれが立ち上がること、などから発生します。それを取り除くには血を吐くような大変な苦労がありました。旧型の携帯電話を購入して調べたりもしました。最後に回路図を見て、ポップノイズの発生源を探し出して、やっと品質的に満足なものができました」

 

コンピュータヘの興味

一九七一年、山口市に生まれた新田は、小学生の頃からコンピュータに興味を持っていた。

当時ファミリーコンピュータが全盛の時代であったが、親からは買ってはいけないと厳命されていた。ところが友人がNEC のPC6001というパソコンを持っていた。そこで、それを使わせてもらってプログラミング言語であるベーシックを使ってゲームなどをつくっていた。

「ソフトウエアを入れてやると、何もないところから何かが出てくる。ただのパソコンには魂が入っていない。それに魂を入れていけばいいと思い、ソフトウエアをつくるのが好きになりました」

その後「ソフトウエアで飯を食えたらいい」と考えた新田は、コア学園山ロコンピュータ専門学校へ入学する。当時、山ロコンピュータ専門学校には「マイコン科」という学科があり、そこで新田は学ぶ。ここではマイクロプロセッサーであるZ80を中心にハードウエアとソフトウエアの両方を勉強する。ソフトウエアはそれまで独学してきたがハードウエアを学ぶのは初めてであった。

「学校でオペアンプ(演算増幅器)をつくったりしたので、はんだごてを握ることに恐怖心はなくなりました」

この山ロコンピュータ専門学校でソフトウエアのみならずハードウエアの作製まで学んだことが、その後エンベデッド・ソフトウエアに取り組むことになる新田の原点であろう。また当時学校にはUNIX のワークステーションが備えられており、それを使ってC言語の開発を経験し、ネットワークの面白さも知った。

卒業し、就職にあたって、新田は広島にあるゲーム・ソフトウエア開発の会社を希望したが、賃金などの条件が悪く諦めた。そんな時、先生にコアヘの入社を勧められた。

「先生からコアは面白いから入社試験を受けてみろと勧められて、コアに入社しました。赴任地の希望は山口、広島、大阪だったのですが、東京勤務に決まり、ガクッときました。しかし結果からいうと東京に赴任できて幸運でした。山口や広島では経験できない仕事を東京では経験できました」

 

Javaとの出会い

1998年から2000年にかけて、新田は「その後の人生を変える」ほどのプロジェクトを担当する。それがJavaのチップセットMICCS(Multimedia Intermet Concentric Chip Set)の自社開発である。MICCSはMAGICWAND (魔法の杖)として期待されたJavaが動くエンベデッド用のチップであった。このJavaチップのためにアプリケーションソフトウエアはもちろん、プリンター用、スキャナー用などの各種のドライバーを開発した。

全体で三十人ほどのプロジェクトチームで、新田の役割はプロジェクトチームの管理、プログラミング、全体の評価などであった。

新田自身は1996年頃からJavaを独学で勉強し、その後社内で教えていた。Javは1995年、アメリカのサン・マイクロシステムズ社が開発したプログラミング言語で、ソースコードレベルでは特定OのSに依存することなくプログラムを実行できることに特徴がある。

このJavaは、現在ではもっとも注目されているプログラミング言語であるが、これが開発された翌年から独学で勉強していた新田には、相当先を見る目があったことになる。

しかし、このJavaチップの開発自体は最終的には満足な結果が得られなかった。というのは当時の非力なマイクロプロセッサーでは予定した速度が出なかったからである。そのために自社開発製品でありながらほとんど売れなかった。直接の原因は予定した速度が出せなかったことによるが、根本的にはこのJavaチップで何ができるかが明確でなかったことにあると新田は冷静に分析している。

「技術者は、あれもできる、これもできるというばかりで、このJavaチップで具体的に何ができるかをいえなかったのです」

このJavaチップ開発の後、新田は流通系のハンディターミナル開発に従事したのだが、こでも苦い経験をしている。これは三人のプロジェクトチームだった。電池を長持ちさせるためにマイクロプロセッサーのクロック数を落さざるを得ず、またエンベデッドにもかかわらずJavaをフルに搭載したために、レスポンスが遅くなり、要求された仕様をクリアーできなかったのである。

「リアルタイム性に問題があったのです。設計時点の問題です。後半はドロ沼でした。上司とお客様に謝りに行きました」

結果的に失敗した自社開発のJavaチップではあったが、大きな資産を残したCJDM(Core Java Development Module)というコア独自のJavaの開発技法を得たのである。これは「リンクの概念を捨てて、ソフトウエアのメンテナンスが圧倒的に楽になる手法」である。

これ以外にも、その後同社のエンベデッド系のJavaによる開発では、このプロジェクトの成果が活かされている。

このような失敗を経験した新田は、現在pd@gent(PDA遠隔コントロールツール)の営業を担当しているが、これもMICCS の資産を流用したものだというPHSを装着したPDAを利用して各種ソリューションを実現するpd@gentは、NTTドコモと協業で企画・開発したものであり、このため新田は一時NTTドコモの社員としてその企画や基本設計にまで携わった。そしてNTTドコモ側の社員として、コアにpd@gentの開発を発注した経験をも持つ。

もっとも受注側のコアの課長は上司でありれ何か変な気持ちであったという。

 

ブルガリアヘの出張

また新田にとってもMICCS の開発は貴重な経験であった。

このMICCS の開発には、ブルガリアの技術者が五人ほど参加していた。ところが設計などを考慮せずに開発を行っていたので、それを指導するために新田は1999年6月から1カ月間ブルガリアに出張した。もちろんブルガリアヘの出張は初めてである。最初は担当の課長と日本語のできるブルガリア人女性の三人であったが、二人は先に帰ってしまい新田だけがブルガリアに残された。上司には「できるまで帰ってくるな」といわれたという。

相手は国家公務員である5人のブルガリア人技術者であった。彼らはロケットの制御関連のソフトウエア開発などの経験を持ち、ソフトウエア開発技術のレベルは高かった。しかし、仕様を間違って理解して、そのまま開発してしまうようなことがあったという。

ここで新田は、交渉の技術と管理という二つのことを学んだ。一人残された新田はなんとか通じる英語と図を用いてブルガリア人技術者とコミュニケーションをとった。

「休日にブルガリア人技術者やその家族と旅行などをした際、普段いわないようなプロジェクトの問題点を指摘してくれました。また、管理の難しさもよく分かりました。それまではいわれたものをつくっていれば良かったのですが、それぞれの技術者のスキルのレベルをみて、何時までにできそうだという予定を立てて、それを守らせ、トラブルヘの対応策を学びました」新田はブルガリア人技術者と付き合うなかで、何の料理にもヨーグルトが入っているブルガリア料理や食事の量の多さ、そして昼食にもビールを飲むブルガリア人の暮らしぶりに驚いたらしい。

このブルガリア出張は新田にとって、仕事でも、プライベイトでも忘れられない出来事になった。

 

ハードとソフトの「原理」から始ま

新田は現在の会社において恵まれているという。

「外の会社に出て発注を経験させてもらっただけではなく、技術力や営業的センスも身につけることができました。人生で困った時には必ず師匠が出てきてくれました」

プロジェクト・リーダーとして新田が心がけていることは二つある。

「―つは、社内のモットーにもなっているのですが、シンプルな設計にするということです。

シンプルな設計にすればスピードは速くなり、バグも少なくなります。またメンテナンスも簡爪になります。複雑な設計にしてしまうと、設計した当人がいないと前の資産が活用できなくなります。もう一つは、メンタルケアーを大切にするということです。どうやってメンバーをやる気にさせるかということです。そしてリーダーとしてメンバーを引っ張っていく力をどうつけるか、その上でメンバーの信頼を得ることが必要です」

これはエンベデッド・ソフトウエアだけではなく、一般のソフトウエア開発でも通用しそうである。

情報サービス産業、ソフトウエア産業の未来に関して、新田は次のようなことを語っている。

「IP電話は確かに通話料が安いです。ただ、コンシューマー向けとしては、家に据え置きの固定電話のままでは、そんなに普及しないと思います。今普及している電話は、持ち運びができ、どこでも通話可能な携帯電話です。この携帯電話に代わるものとなる、『通話料が安いモバイル電話』のような形になれば、コンシューマーに広まると思います。現在、法人向けなどで、構内の無線LANとPDAを使ってPDAにIP電話の機能を付加して利用されているものはあります。大変だとは思いますが、これがコンシューマー向けに展開されれば携帯電話のように、爆発的に普及すると思います」

またエンベデッド・ソフトウエア開発の立場から、「エンベデッドが世の中の核になります。というのは、ハードディスクなどの駆動部分は電池を大量に喰いますが、メモリーなどの記憶媒体の価格がもっと下がれば、ハードディスクの代わりにメモリーが広く使われるようになり、MP3プレーヤーのようなエンベデッドの世界に入るわけです。ユビキタス社会が出現するということは、イコール、世の中全体がエンベデッド・ソフトウエア製品に囲まれた社会になるということでもあります」と述べる。

この業界に興味を持つ人へのメッセージとして、新田は次のような言葉で締めくくった。

「原理は何かというところから勉強してほしいです。アセンブラ、メモリー、割り込み、リアルタイムOSなど、ハード、ソフトの原理を知ってほしい。そして、どうしたらハードウエアにソフトウエアの魂が入るかを理解してほしいと思います」

(takashi umezawa)

 

注 所属、役職等は取材時のものである。

 

TOP