オープン・ハードウェア・ライセンスは必要か

 Nokiaの研究員Jamey Hicksが、オープンソース・ハードウェア・ライセンス(OSHL)をOpen Source Initiative(OSI)に提出し、承認を求めている。しかし、ハードウェア用のライセンスは本当に必要なのだろうか。必要だとしても、ソフトウェア用のライセンスとどこが違うのだろうか。

 Hicksによると、このライセンスはマサチューセッツ工科大学(MIT)とNokiaが共同で進めている「チップとシステムデザインに関する研究」に伴うものだという。Armoプロジェクトの一環として行われているその研究の中で、MITはBluespecと呼ぶハードウェア記述言語で使われるチップコンポーネントを開発した。Bluespecは、MITの技術を基にBluespec.comが商用化したものだ。実際のチップはほとんど作っておらず、チップを作る基となるASICコンポーネント、つまり「IPブロック」をデザインしているのだという。

 「こうした研究プロジェクトはオープンなイノベーションとして行われているので、一般の場で話しても構わないし、学生や教員がこの研究を基に論文を書くこともできます。しかし、中にはソース・コードを公開した方が有効活用できると思われるものもあります。いろいろな人が利用し、成果を積み上げていくことができるからです。これがソフトウェア・プロジェクトのことであれば、ごく簡単な話です。きわめて広く受け入れられているライセンスがいくつかあり、そのいずれかを選ぶだけのことですから。そこで、ハードウェア・コンポーネントについても、LGPLのようなライセンスを用意して同じことができないだろうかと考えたのです。また、オープンソース・コンポーネントを変更して使用している人はその変更点を公開してほしいとも考えています。現在、このプロジェクトに当初から貢献している人たちが満足でき、こうした目標にも沿うライセンスを探しているところです」

 提案されているライセンスが基にしているのは、Artistic Licenseバージョン2.0だ。Hicksは始め初版を使っていたが、1.0は時代遅れで「曖昧な点」がいくつかあるとAllison Randalに指摘され、バージョン2.0に変更した。

 新しいライセンスでは、「インタープリター、スクリプト、オブジェクト・コードに関する文言」と、変更版とともに標準形式のパッケージでの配布を求める文言が削除されている。

 しかし、ライセンスは提案されたものの、OSIメーリング・リストの反応は芳しくない。よく言っても、気乗り薄といったところだ。多くの人はハードウェア用のライセンスがなぜ必要なのかといぶかっている。

オープンソース・ハードウェア・ライセンスに賛否両論

 たとえば、Phippsは、OSIのライセンスについて意見を交わすリストで次のように論じている。ハードウェアとソフトウェアの区別は「ますます難しく」なっている。また「デザイン・プロセスの最終段階に入るまで」ハードウェアはソフトウェアにほかならない(この部分については別の投稿での発言)。

 そして、UltraSPARCのデザインに使われたハードウェア記述言語Verilogは「間違いなくソフトウェアであり、GPL(OSIがオープンソース・コミュニティーでの使用を承認したフリーソフトウェア・ライセンスなら何でも)を適用するのは100%可能だと思われる」

 「著作権物の使用目的が違うからといって特別な『ハードウェア』ライセンスを許容するなら、ほかの多くの専門的な(私に言わせれば冗長な)分野でも同じことが始まるだろう」

 また、CollabNetのCTO、Brian Behlendorfも、既存のライセンスでハードウェアもカバーできると話す。「確かに多くのOSIライセンスには『ソースコード』という言葉が使われていますが、だからといってソフトウェアにしか適用できないということはありません。ライセンスを書き検討した際に念頭にあったのはソースコードというソフトウェアでしょうが、GPLライセンスの対象にはソースコードだけでなく、文書、UML図、メモ書き、開発者が考え出したお気に入りの冗談の録音といったものも含まれています」

 これに対して、Hicksは、既存ライセンスのいくつかには「明示的にソフトウェア、あるいは、実行時におけるコンポーネントの置換可能性を指す文言が含まれている」という。もっとも、「それが、ライセンスをハードウェアに適用する際に不利になるか有利になるかはわかりませんが」

 「プロジェクトの目標にも依りますが、MIT、BSD、GPL、Eclipse Public License(EPL)、CDDLは使えるかもしれません。しかし、LGPLは、実行時に利用者がオープンソース・コンポーネントを新しいバージョンに置換可能であることを求めていますから、ハードウェアに適用できるとは思えません」

 しかし、ハードウェアに適用可能と思われるライセンスの中には、Hicksのプロジェクトに貢献する人たちの目標すべてに沿うものはないという。「CDDLとEPLは問題なさそうですが、、少なくともMITの目標には合っていません。特許を明示的に許容しているからです。そこで、私たちの目標に非常に近いArtistic License 2.0を基にしたオープンソース・ハードウェア・ライセンスを提案しているのです」

ハードウェアをオープンにするメリット

 OSIがHicksのライセンスあるいはそれに類するものを認めたとして、それは広く使われ、オープンハードウェアがその世界で大歓迎されることになるのだろうか。ほとんどの人にとってチップ製造設備は遠い存在であり、自分でチップデザインを工夫できるだけの専門知識も持ち合わせていないのは明らかだ。ならば、ハードウェア・デザインをオープンソースにすることに、どれほどの意味があるのだろうか。

 オープンソース・ライセンスとされているハードウェア・ライセンスを持ち、他社の利用を認めている企業は少ない。その数少ない企業の一社であるSunは、2006年に、UltraSPARC T1チップ、コード名Niagaraのデザインを公開している。

 Phippsによると、T1のデザインがGPL下で公開されたことにより現実に成果が生まれているという。「実際、賭の要素はありました。……。しかし、従来にはない自由を創り出し、フリーソフトウェア・コミュニティーの技法を成長させていることで、十分なメリットがあったと思います」

 現実の成果の例としては、David MillerがT1にLinuxカーネルのサポートを付け加え、2社がそれを新しいチップのデザインに採用したことを挙げている。

 だが、ハードウェアに関するオープン・コラボレーション・プロセスは、ソフトウェアの場合とまったく同じように機能するわけではないとも指摘する。チップ・デザインが完了してしまえば生産に入ったチップに新しい機能が盛り込まれることはありそうもないからだ。ただし、Sunは、次世代UltraSPARCにそうした変更点を盛り込むことができる。「次に後継チップをデザインするとき、コミュニティーで行われたことから学んだデザイン技法を組み込むことになるでしょう」

 ライセンスを提出している当のHicksも、難しさは認める。「ハードウェア・デザインに近づくほど、貢献してくれる人が少なくなっていきます。私はいろいろなオープンソース・プロジェクトに関わってきました。スクリプトから始まり、ライブラリ、ドライバ、カーネル、ファームウェアと来て、今はハードウェアです。参加できる人、貢献できる人、そのソースコードを使える人は、ハードウェア・デザインに近づくにつれて少なくなっていきます」

 それでも、Hicksは、フィールド・プログラマブル・ゲートアレイ(FPGA)では「経済的な実現性が十分あり」オープンソース・ハードウェア・デザインを使うことは可能だと述べ、オープンハードウェア・デザイナーたちのコミュニティーOPENCORESとOpenSPARCという、現実にオープンハードウェアを利用している例があると指摘する。

 オープンハードウェアはFOSSと同じ道を歩んでいる、Phippsの目にはそう映るものの、オープンハードウェアが主流になるのは「まだまだ先のこと。……。まずは足がかりです」

 しかし、遅々として進まないことを嘆いているのではない。「確かに、工場があればいいのでしょうが、それだけがコードを活用する道ではありません。自由への道を創り出すことは、何であれ、やる価値のあることです」

Linux.com 原文