雑誌無償購読申込み 最新号 バックナンバー 広告資料請求 EDN Japanについて お問合せ
雑誌無償購読申し込み
メールニュースレター登録
登録内容変更
アナログ IC/ディスクリート
電源/電池/コントローラー
PLD / メモリー
組み込みシステム
コンピュータ&ボード
EDA/IP/CAE/ソフトウェア
電子部品
計測器
ディスプレイ
デジタル家電
通信・ネットワーク
カーエレクトロニクス/産業機器
EDN Japan 記事検索
検索方法の詳細
雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
microprocessorreport

2003年8月号
米ミップス社、ユーザーが仕様を
定義可能なコアを開発(後編)

英アーク社、米テンシリカ社のコアと比較する


 米ミップス・テクノロジーズ社(ミップス社)と英アーク・インターナショナル社(アーク社)、米テンシリカ社が供給している、ユーザーが独自に仕様を定義できるプロセッサー(コンフィギュラブル・プロセッサー)・コアを米マイクロプロセッサー・レポート誌が調査した。今回は2回連載の後半である。仕様の拡張性やソフトウエア開発ツール群の自動化、知的財産権の扱いなどを比較した。 (本誌)

トム R. ハーフヒル
米マイクロプロセッサー・レポート誌* シニア・エディター
Tom R. Halfhill Microprocessor Report Senior Editor

 現在のところCorExtend技術の最も重要な特徴は、ユーザーがミップス社からアーキテクチャー・ライセンスを購入することなしに、カスタマイズした命令をプロセッサー・コアに追加できることである。このほかにもPro Seriesコアは仕様を変更可能なオプションを備えている。しかしそのほとんどは、ミップス社が論理合成可能なプロセッサー・コアを最初に用意した1999年から、ユーザーが利用可能だった。
 Pro Seriesコアは品種によっては、命令キャッシュとデータ・キャッシュの容量とセット・アソシアティビティを設定可能である。乗除算ユニットは高速品と小面積品を選べるし、メモリー管理ユニット(MMU*)はTLB*付きかそうでないかを選択できる。また、オンチップのスクラッチパッドRAMとのインターフェース仕様を設定できる。なおM4Kだけはキャッシュを持たない。その代わり、SRAMインターフェースの仕様を設定可能である。命令用メモリーとデータ用メモリーを分離することも、統合することもできる。またすべてのPro Seriesコアは、ハードウエアによって支援されるマルチタスク処理用のレジスター・バンクを最大4個までサポートする。
Advertisement

 ミップス社は、ユーザーが仕様を設定するときに全体で約40個のオプションを利用できるようにした。ほとんどのオプションはCorExtend技術よりも以前から存在していたが、ミップス社は広く知らせていなかった。例えばマイクロプロセッサーの設計者は、消費電力を減らすために大規模なクロック・ゲーティングを組み込めるし、さらには、トレース兼デバッグ用インターフェースをいくつかの候補から選択できる。
 図3には、ミップス社が用意したグラフィカルなコンフィギュレーション・ツールの入力画面を示した。設計者はチェックボックスをクリックすることによってコアの構成を素早く設定できる。
 アーク社とテンシリカ社は、ミップス社よりも多くの仕様設定オプションを提供している。マイクロアーキテクチャーにおける、ほとんどすべての機能を設計者はカスタマイズできる。性能と設計複雑性、チップ面積、コスト、消費電力のバランスをとるために、数多くの手法を使える。従って、より広い範囲の問題に対し、アーク社とテンシリカ社のコアは対応可能である。
 入出力のオプションを比較しよう。アーク社は設計者に、32ビット幅の入出力バスを4個まで実装することを許している。分離型あるいは統合型の命令メモリーとデータ・メモリーがこれらのバスを介してつながる。テンシリカ社は設計者に入出力バスの幅を32ビット幅、64ビット幅、128ビット幅から選べるようにしている。密結合スクラッチパッドRAMおよび特定用途向け論理回路に接続するローカル・メモリー・インターフェースも設計者はオプションで選択できる。これに対してミップス社のPro Seriesコアは、32ビット幅固定のデータ・バスを1個と、ほとんど使われない32ビット・コプロセッサー・インターフェースを備えているだけである。
 レジスターについて見ると、アーク社のARCtangent-A5コアとテンシリカ社のXtensa Vコアは、32個のコア・レジスターを搭載する。そしてコア・レジスターの数は、ミップス社のコアの2倍に相当する64個に拡張可能である。ARCtangentアーキテクチャーでは、4個のリザーブされたレジスターを除くと32ビット・コア・レジスターはすべて標準命令とカスタム命令の両方で使用できる。この点はミップス社の拡張におけるユーザー定義レジスターとは異なる。Xtensa Vでは、オプションのFPU*(浮動小数点演算ユニット)が32ビット幅のレジスターを16個備えており、オプションのVectraと呼ぶDSP拡張では160ビット幅のレジスターを16個搭載する。
 ARCtangent-A5は特殊なロード/ストア命令を標準命令セット中に用意している。この命令は、オプションの32ビット補助レジスターにアクセスできる。この補助レジスターは32ビット・アドレス空間に配置されている。このため、40億個を超える数の補助レジスターを追加できる。Xtensa Vの拡張でも、ほぼ無限大の数のレジスターを追加可能だ。ただしMIPSコアと同じく、このレジスターは標準命令からは見えない。
 Pro Seriesコアは、異なったタスク間で高速なコンテキスト・スイッチ*を可能にする最大4組のレジスター・バンクをサポートしている。ただし、1個のタスクのために数多くのレジスターを備えていることとは大きく異なる。理論的には、Pro Seriesコアでも1個のタスクが複数のレジスター・バンクにアクセスできる。しかし余分なリソース管理が必要になる。MIPSアーキテクチャーでは、プログラムは同時に32個のレジスターしか参照しないと想定しているからだ。アーク社とテンシリカ社も、設計者に複数のレジスター・バンクを追加することを許している。しかし追加作業はコンフィギュレーション・オプションに比べると簡単ではない。追加のレジスター・ファイルを実装するためのコードをHDLで記述しなければならないからだ。
 ARCtangent-A5とXtensa Vの特徴にはこのほか、優先度を設定可能なユーザー定義の割り込み、オプションのDSP拡張、フレキシブルな命令フォーマットがある。ほとんどのARCtangent-A5命令が条件付きであり、ユーザーが条件コードを定義できる。この条件コードは、標準命令とカスタム命令が認識できる。新しい命令セット・アーキテクチャー「ARCompact ISA」では、設計者は16ビット長あるいは32ビット長のカスタム命令を作れる。これに対し、CorExtendでは設計者に32ビット長命令しか許可していない。メモリー容量が限られる組み込み機器では、これは重要な検討課題となる。
 アーク社とテンシリカ社は共に、定義済み拡張命令のライブラリーを提供している。このライブラリーに格納してある命令の種類は多く、単純なビット操作命令からDES*暗号の高速処理まである。アーク社はさらに進んでおり、USBコアといったコンフィギュラブル周辺IPを販売している。
 もちろん、アーク社とテンシリカ社の製品が熟成されていることはごく当たり前のことだろう。両社はコンフィギュラブル・プロセッサーの事業を何年も手掛けてきたのだから。

自動化ツールはテンシリカ社が優位

 CorExtend技術が抱える欠点はまだある。相対的に開発ツール群の自動化が遅れていることだ。ツールの自動化競争では、ミップス社はアーク社よりも少し遅れている。そして両社とも、テンシリカ社の後塵を拝する。
 ハードウエアの仕様設定用には、設計者がわずかなマウス・クリックでプロセッサー・コアの構成を設定できるコンフィギュレーション・ツールを3社すべてが用意した。しかしソフトウエア開発では、ツールの相違が著しい。ミップス社のプロセッサー・コアだと、カスタム命令を使用するために設計者は組み込み関数とマクロを記述しなければならない。アーク社のコアでも同様の作業を必要とする。ただし「標準拡張」と呼ぶ若干の自動化ツールを組み込んである。テンシリカ社は、ずっと優れた自動化ツールを用意している。
 テンシリカ社が優位な立場を築けたのは、まったくのゼロから開発を始められたことが理由である。アーク社は、従来の設計フローを少しずつ修正することでコンフィギュラブル・プロセッサー技術を開発した。ミップス社も基本的にはアーク社と同じ道をたどってきた。これに対してテンシリカ社は、コンフィギュラブル・プロセッサーを事業主体とする企業として設立された。既存のアーキテクチャーを変更するのではなく、開発ツール・システム全体を開発したのである。それは、ハードウエアの設定に合ったソフトウエア開発ツールを自動的に生成するシステムだった。
 この開発システムは、「Processor Generator(プロセッサー・ジェネレーター)」と呼ばれている(図4)。 Xtensaコアのユーザーは、テンシリカ社のウエブ・サイトにパスワードを入力してログオンすることによってプロセッサー・ジェネレーターにアクセスできる。プロセッサー・ジェネレーターはウエブ・ベースのツールである。Xtensaプロセッサーの仕様をユーザーが選択するために複数のページで構成されている。各ページはチェックボックスとラジオ・ボタン、メニューを備える。わずかな回数のマウス・クリックで、キャッシュやバス、割り込みなどのコアのマイクロアーキテクチャーに関する仕様をユーザーは設定できる。プロセッサー・ジェネレーターは、定義済み命令やVectra DSPユニットのような拡張オプションも提供する。ユーザーが仕様を選択するごとに、プロセッサー・ジェネレーターは現在のプロセッサー仕様によるゲート数とクロック周波数、チップ面積、消費電力量などを見積もり、その値を表示する。
 選択可能なすべての仕様を決定した後に、ユーザーはプロセッサー・ジェネレーターのバック・エンド部分を動作させるボタンをクリックする。テンシリカ社のウエブ・サイトにおいてプロセッサー・ジェネレーターは、ユーザーの仕様に対応したRTL記述のプロセッサー・コア・モデルを生成し、ユーザーのサイトにインターネット経由でモデルを送付する。ハードウエア記述言語はベリログHDLあるいはVHDLを選べる。プロセッサー・コア以外には、事前に設定済みの論理合成用スクリプト、テスト・ベンチ、ソフトウエア開発ツールをインターネット経由で受け取る。ソフトウエア開発ツールは、アセンブラー、C/C++コンパイラー、リンカー、デバッガー、命令セット・シミュレーターで構成される。これらはハードウエア仕様に適合するように調整済みである。
 カスタム命令を作成するためには、Xtensaのユーザーは独自の記述言語「TIE(Tensilica Instruction Extension)」でカスタム論理の機能を記述する必要がある。TIEはベリログHDLに似たハードウエア記述言語である。TIEは特殊なセマンティックスを搭載しており、これはソフトウエア開発ツール群が新しい命令を認識して利用できるように、バック・エンドのプロセッサー・ジェネレーターに自動修正させる。プロセッサー・ジェネレーターはまた、TIEコードをベリログHDLあるいはVHDLのRTL記述に変換し、XtensaコアのRTLモデルと結合する。このためユーザーは、業界標準の論理合成ツールを使い、選択した製造プロセス向けにRTLファイルをコンパイルできる。
 アーク社が提供する設計フローは従来手法に近く、あまり自動化されていない。「ARChitect(アーキテクト)」と呼ぶグラフィカルな設定ツールの画面を図5に示す。このツールはテンシリカ社のプロセッサー・ジェネレーターと似ている。プロセッサー・ジェネレーターと同じような設定を、ARCtangent-A5プロセッサーについてユーザーが実行する。大きな違いは、USBコントローラー・コアのような周辺IPをプロセッサーの仕様設定作業中に組み込めるということである。ユーザーが「Go」ボタンをクリックすると、アーキテクトは既存のベリログHDLファイルあるいはVHDLファイルを組み立てることによってユーザーの仕様に合わせたプロセッサーのRTLモデルを構築する。さらに、事前に設定済みの論理合成用スクリプトとテスト・ベンチを生成する。
 アーク社は最近、アーキテクトを補助する新しいツールを導入した。これは「EIA(Extension Instruction Automation)」ツールと呼ばれる。新しい命令とコア・レジスター、補助レジスター、条件コードを含むカスタム拡張のパッケージをユーザーが作成する作業を支援する。このツールはアーキテクトから利用可能である。EIAツールを利用してパッケージのライブラリーを作成することで、ユーザーは個々のプロジェクトとは独立にカスタム拡張を管理できる。複数のプロジェクトでカスタム拡張を容易に再利用できるようになる。
 テンシリカ社のプロセッサー・ジェネレーターと同様にアーキテクトも、追加命令やDSP拡張のようないくつかの定義済み拡張オプションを用意できる。アーク社は定義済みの追加命令を「標準拡張(standard extension)」と呼んでいる。拡張命令のために通常は必要とされる、アセンブラー用マクロやC/C++コンパイラー用の組み込み関数を記述することなしに、標準拡張を利用できる。アーク社が提供するソフトウエア開発ツール群「メタウエア(MetaWare)」は、アセンブラー、C/C++コンパイラー、リンカー、デバッガーと命令セット・シミュレーターで構成される。同社はまた、サイクル・アキュレートなシミュレーター、信号可視化ツール、コンフィギュラブルなリアルタイムOS、通信プロトコル・スタック、システム・ソフトウエアなども供給中である。これらのソフトウエアはプロセッサーと共に動くように設定されている。
 ユーザー定義命令の設計フローでは、アーク社の場合はテンシリカ社よりも、ミップス社と共通な部分が多い。アーク社のプロセッサー・コアのユーザーは、TIEのような独自の言語ではなく、ベリログHDLあるいはVHDLでカスタム論理を記述する。このRTLコードを、あからじめ定義されたインターフェースにつなぐことによってARCtangent-A5コアと集積する。アーク社のEIAツールはHDLエディターを備える。このツールで作成したカスタム拡張はアーキテクトで利用できる。このため、コアを拡張する作業が容易になる。ソフトウエア開発ツールで新しい命令を利用するためにはプログラマーは以下の作業を実行する必要がある。すなわちアセンブラーのためにマクロを書き、C/C++コンパイラーのために組み込み関数を作成し、ソフトウエア・シミュレーターのためにDLLを記述しなければならない。ミップス社と同様、アーク社はこれらの作業を容易にするためのテンプレートを提供している。
 設計の最後のステップは、アーク社とミップス社、テンシリカ社の3社で違いはほとんどない。ユーザーが選択した製造プロセスに合わせ、業界標準の論理合成ツールでRTLモデルをコンパイルする。3社共、さまざまな製造プロセスに適用可能なことが強みだと吹聴している。

開発ツールを心配しすぎるな

 前述のように、テンシリカ社は最も高いレベルの設計自動化ツールを提供している。ただし同社固有の言語であるTIEをユーザーが学ばなければならない。アーク社は設計自動化では2番手につける。同社はテンシリカ社と似たグラフィカルなコンフィギュレーション・ツールと拡張マネジメント・ツール、標準拡張用の自動化ツール群、そしてユニークな部分としてはプロセッサーの仕様を設定中に周辺IPコアを集積するオプションを提供している。コンフィギュラブル・プロセッサーのベンダーとしては最も新しいミップス社は、3番手である。同社はプロセッサーの仕様設定用にグラフィカルなコンフィギュレーション・ツールを用意した。しかしソフトウエア・ツール群は自動化されていない。周辺IPコアを集積するオプションもない。
 しかし、ASICやシステムLSIなどの開発プロジェクトにとっては、これら3社のソフトウエア開発ツール群における自動化の違いは小さな問題である。カスタム可能なプロセッサーにおける最も重要な仕事は、カスタム命令を認識するようにソフトウエア開発ツールを設定し直すことではない。重要なのは、カスタム命令をゼロから作り上げる作業である。
 まず設計者は、カスタム論理がその余分な設計と検証の作業に見合うような十分な性能向上をもたらすかどうかを見極めなければならない。すなわち通常は、コード・プロファイリングとコード解析に多くの時間を費やすことになる。それは実際、ハードウエアとソフトウエアの分担を決めるプロセスにほかならない。高い性能を要求するアルゴリズムや機能を論理ゲートとソフトウエアの組み合わせで実現する手法は、いくつも存在するからだ。
 次に設計者は、ベリログHDL、VHDLあるいはTIEでカスタム論理を作成し、プロセッサー・コアと結合しなければならない。それから設計全体をテストして検証する必要がある。ソフトウエア開発ツールのコンフィギュレーションという最後のステップは、新しいカスタム命令に関する組み込み関数やDLLを手作業で記述しなければならないとしても、上記の作業に比べれば重要度は低い。
 実際、プロジェクト・リーダーの書いた設計仕様書に従えば、プログラマーは数時間足らずでソフトウエア開発ツールの仕様を設定し直せる。この作業はハードウエア技術者がHDLコードの最初の1行を記述し始める前に実行できるのだ。プログラマーはアプリケーション・ソフトウエアを書き始められるし、続いてテストを開始できる。プロジェクトにおけるハードウエアの開発フローと並行して、シミュレーターでアプリケーションをテスト可能だ。シリコン・チップを製造するための待ち時間を利用すれば、チップが完成する前にソフトウエアの開発は完了するだろう。
 ただし極めて大規模なプロジェクトで数10ものカスタム命令を必要とする場合は、ソフトウエア開発ツールを手作業で設定し直す作業はもっと重要になる。プロジェクトの規模が大きくなるにつれ、誤りの発生が増える。例えば新しい命令の操作をシミュレーターに知らせるDLLが、HDLによる命令の実装と異なっていれば、シミュレーターは正しい結果を生成しない。現在のところ、ほとんどの開発者はカスタマイズ可能なプロセッサーに1ダースを超える命令を加えたりはしない。プロジェクトは管理しやすい状態にある。しかし将来組み込み機器がさらに複雑になってくると、状況が変化するかもしれない。
 今後しばらくの間、プロジェクトが大規模になったときのリスクは、ソフトウエアよりもシリコンの方が大きいだろう。従って開発プロジェクトにとって最も良いコンフィギュラブル・プロセッサーを選択するときに、ツール群の自動化の度合いによって決めてはならない。

知的財産権の扱いが異なる

 アーク社、ミップス社、テンシリカ社のコンフィギュラブル・プロセッサーにおける重要な違いの1つは、技術的な内容ではなく、法的な内容にある。ユーザーが作成したカスタム命令などの拡張を、ユーザーが知的財産権としてどの程度保護できるかだ。
 アーク社とテンシリカ社のユーザーは、作成した拡張を知的財産権として完全に保護できる。それは公表していない拡張でも同様である。実際、アーク社のユーザーである米シスコシステムズ社*は、拡張に関する特許を取得している。
 ミップス社も同様に、サード・パーティーが作成した拡張に関する独自の財産権を尊重すると述べている。ただし同社は、MIPSアーキテクチャーの整合性を保つ権利は行使すると付け加えた。それはほかの企業が、その企業のプロセッサーにおける命令セット・アーキテクチャーのアド・ホック・バージョンを作成するためにCorExtend技術を利用することは、許さないというものである。ミップス社によるとこの防衛策によって、サード・パーティーが開発した命令をMIPS標準の命令セット・アーキテクチャーに取り込めるようになる。ライセンス契約には、ミップス社のためにこの権利を留保した条項がある。ライセンスを購入した企業が拡張の特許を取得したとしてもこの権利は変わらない。
 ミップス社の戦略はアーク社およびテンシリカ社とは違い、露骨である。CorExtend技術を導入した企業の一部は、快く感じていない。ユーザーが開発した拡張をミップス社が標準の命令セット・アーキテクチャーに組み込むことに決めたら、すべての拡張をライセンス導入企業が利用できることになってしまう。ある企業が開発した拡張を競合企業が使えるのである。このため、サード・パーティーが独自技術によるカスタム命令などの拡張を開発する意欲を失わせることになりかねない。
 ミップス社は、アーキテクチャー・ライセンスの契約条項は同様の項目を長期間掲載しており、これが問題となったことはないと述べている。真の狙いはこうだとミップス社は言う。それは反逆的なライセンシーがMIPSアーキテクチャーを「乗っ取る」ような事態を阻止することである。乗っ取りは、MIPSプロセッサーの共同体全体を傷つけかねない。
 しかし、このような事態の発生を想定することは難しい。CorExtendのライセンス契約は、ユーザーがその拡張をミップス社を通さずにサブライセンスすることを禁じているからだ。この制限条項は、ライセンスの導入企業が自社のIC以外に非標準を広めることを十分に阻止できると考えるべきだろう。
 遠い将来には、非標準の命令セット・アーキテクチャー(ISA)によるICチップ(カスタム命令の拡張を含むMIPSコアに基づくチップ)が市場で普及し、ソフトウエア・ベンダーが積極的にサポートする可能性がある。こうなると標準のMIPS ISAに基づくICチップに損害を与えるかもしれない。ただし知る限り、ARCtangentアーキテクチャーまたはXtensaアーキテクチャーが乗っ取られそうになったことは、こういった方法にせよ、別の方法にせよ、これまでにない。もちろんそれは、これらのアーキテクチャーの人気がMIPSアーキテクチャーに比べると低いからかもしれない。過去、米レクスラ社*はMIPS類似のアーキテクチャーをライセンスすることによってミップス社に脅威を与えた。しかし状況は大きく違っていた。レクスラ社は元々、MIPSプロセッサーのライセンシーではなかったからである。
 比較に適切な過去の例は、MIPS16命令サブセットに関する法的な争いであろう。1999年にミップス社は、同社としては最初の論理合成可能なコアを発表したときに、MIPS16命令を含めなかった。すでに多くの組み込み機器開発者が、コード・サイズの圧縮機能を歓迎していたにもかかわらずである。そこに技術的な理由は存在しなかった。結果的にMIPS ISAを分裂させる脅威になったレクスラ社のMIPS類似コアでさえ、MIPS16をサポートしていたのである。
 当時ミップス社は、MIPS16命令を利用させなかったことに関する法律上の問題にはあいまいにしか言及しなかった。ただどうやら、ミップス社とLSIロジック社はこの問題を解決したようだ。最近のMIPSプロセッサー・コアの一部は、MIPS16命令とその拡張版であるMIPS16e命令をサポートしているからだ。
 ミップス社はCorExtendライセンスの条件下でサード・パーティーの拡張を標準ISAに吸収することによって、将来におけるISAの分裂という事態を回避できるだろう。アーキテクチャー・ライセンスの導入企業と同様にCorExtendライセンスの導入企業もこの条件を許容することは、ミップス社の正しさを示すことになるかもしれない。しかしライセンシーがカスタム命令に固有のIPを使う妨げにはならないとしても、サード・パーティーが開発した拡張を自由に取引する市場が花と開くことを難しくする。CorExtendのライセンス契約では、ミップス社の許可なしにライセンシーがその拡張を他社へ直接ライセンス供与することを禁じているからだ。この条項はライセンシーがアーキテクチャーを分裂させる可能性を排除するものの、アーク社とテンシリカ社に対するミップス社の優位性を弱めることになる。それは、サード・パーティーによるサポートを呼び込める人気の高いプロセッサー・アーキテクチャーという優位性である。
 アーク社は数年前、サード・パーティーがARCtangentプロセッサー向けのIPを開発し、販売する意欲を高めることを試みた。それはウエブ・ブラウザーやパソコン用ソフトウエアなどのプラグイン・ソフトウエア・モジュールと似たビジネス・モデルである。意欲を高める「えさ」は、特別に安価な設計ライセンスであった。設計ライセンスは文書類と技術サポートを含んでいた。アーク社にとって不幸なことに、少数のサード・パーティーがえさに食い付いたに過ぎなかった。おそらく、ARCtangentプロセッサー専用IPという相当に小さな市場規模が、IPの開発費用に見合わなかったのだろう。テンシリカ社もこの問題に直面している。
 MIPSアーキテクチャーは、アーク社とテンシリカ社のアーキテクチャーに比べるとずっと広く普及している。MIPSプロセッサー用拡張をサード・パーティーが活発に取引する市場の成立を想像することは容易である。しかしサード・パーティーが固有のIPを完全には保護できず、ミップス社を介さないとIPをライセンスできないとしたら、市場はそれほど広がらないだろう。
 CorExtendを取り巻く法的な囲いは、ミップス社の最優先事項はMIPSアーキテクチャーに対する完全な支配の維持にあることを示している。一部のサード・パーティーの開発意欲を削いだとしてもである。それは事業戦略における厳しい決定であり、どちらにしても論争を免れない。ミップス社はこの点に関し、アーク社およびテンシリカ社とは異なる道筋を選んだのである。

CorExtendの将来を考える

 アーク社とテンシリカ社が長年続けてきた努力を、ミップス社が一夜にして再現すると期待する者はいない。マイクロプロセッサーをカスタマイズするシステムを構築することは、ユーザーにRTLモデルの修正を許可することよりもはるかに多くの作業を要求する。それが、最近登場したオープン・ソースやライセンス無償のプロセッサー・コアがアーク社とテンシリカ社の地位をあまり脅かせなかった理由である。ただしCorExtend機能は、競合他社のすべての機能を取り込めなかったとしても、ミップス社の当初の目的は達成している。それは拡張可能な命令セットという重要な柔軟性を、広く普及しているプロセッサー・アーキテクチャーに装備させることである。
 次のCorExtendはどうなるだろうか。はっきり見えているのは、グラフィカルな仕様設定ツールで指定できるオプションを増やすことである。入出力バスと割り込みの仕様がカスタマイズできれば素晴らしい。定義済みの命令ライブラリーもあるとうれしい。プロセッサーの設計者がしばしば遭遇する業務を簡単にしてくれるからだ。アーク社とテンシリカ社が提供している機能と同じ、コンフィギュラブルなDSP拡張も欲しい。おそらく、レクスラ社の開発成果物からミップス社は回収できるだろう。
 ツール群を生成するときの自動化の度合いを高めることは、テンシリカ社に対する効果的な対抗策となるだろう。テンシリカ社はこの特徴を販売に活用しているからだ。ただしミップス社は、法的な障害に直面するかもしれない。テンシリカ社は最近、カスタマイズされたプロセッサーとプロセッサーに適合するソフトウエア開発ツール群を自動的に生成するシステムの米国特許を2件、取得したからだ。これらの特許の請求範囲は広く、テンシリカ社はミップス社による将来のオプションを制限できる。
 アーク社が取得した特許の請求範囲も同様に、ミップス社にとっては厄介な存在だと判明している。アーク社は少なくとも3件の国際特許を保有し、さらに世界各地域で39件の特許を出願中である。出願中の特許は今後1年以内に成立し始める。ただし現在までのCorExtendは、アーク社とテンシリカ社の特許に加え、われわれが把握している出願中の特許には抵触していないように見える。
 CorExtend技術は、コンフィギュラブル・プロセッサー技術が成熟してきた証拠である。アーク社とテンシリカ社が道を切り開いた。そしてミップス社のような既存の企業が注目するようになった。やがては英アーム社も後に続くだろう。ハードウエアをソフトウエアと同じくらいに柔らかくすることの利点は、もはや無視できない大きさになっている。
(C2003:In-Stat/MDR)END

用語解説 / 会社情報
【米マイクロプロセッサー・レポート誌】
リード・エレクトロニクス・グループの米In-Stat/MDR社が発行するマイクロプロセッサー技術専門誌。ホームページ・アドレスは下記の通り。
http://www.mpronline.com
▲本文へ戻る
【MMU】
memory management unit
メモリー管理ユニット
▲本文へ戻る
【TLB】
translation look-aside buffer
▲本文へ戻る
【FPU】
floating-point processing unit
浮動小数点演算ユニット
▲本文へ戻る
【コンテキスト・スイッチ】
context switching
割り込みやプロセスの切り換えに伴い、プロセスに付随する情報(コンテキスト)を入れ換える処理のこと。
▲本文へ戻る
【DES】
Data Encryption Standard
1997年に米連邦政府が標準方式として採用した暗号アルゴリズム。
▲本文へ戻る
【米シスコシステムズ社】
Cisco Systems, Inc.
同社のホームページ・アドレスは下記の通り。
http://www.cisco.com/
▲本文へ戻る
【米レクスラ社】
Lexra, Inc.
32ビットRISCプロセッサー・コアの開発企業。ミップス社と特許侵害で係争したが、2001年12月に和解した。現在は事業を休止している。
▲本文へ戻る
雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
Reed Electronics Group
Electronic BUSINESS Japan | Design News Japan | Semiconductor INTERNATIONAL | DETAIL JAPAN
EDN Japanについて | 広告掲載について | サイトマップ | お問合せ
 Copyright (C) 2000-2006 Reed Business Infomation Japan K.K. 
個人情報に関する方針 | 著作権・リンクについて | 会社情報