【手続補正書】
【提出日】平成15年11月27日(2003.11.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
適応計算集積回路であって、
複数の異質計算要素と、第１の固定構造を有する前記複数の異質計算要素の第１の計算要素と、第２の固定構造を有する前記複数の異質計算要素の第２の計算要素、を含み、前記第１の固定構造は前記第２の固定構造とは異なり、
前記複数の異質計算要素に結合した相互接続ネットワークであって、第１の構成情報に応答して、前記複数の異質計算要素を複数の機能モードの第１の機能モードのために構成することができ、第２の構成情報に応答して、前記複数の異質計算要素を前記複数の機能モードの第２の機能モードのために再構成することができ、前記第１の機能モードが前記第２の機能モードとは異なる、相互接続ネットワーク、を含む適応計算集積回路。
【請求項２】
請求項１に記載の適応計算集積回路において、上記第１の固定構造および上記第２の固定構造は複数の特定構造から選択され、前記複数の特定構造は、以下の対応する機能のうち少なくとも２つを含む：メモリ、加算、乗算、複合乗算、減算、構成、再構成、制御、入力、出力、およびフィールド・プログラマビリティ、ことを特徴とする、上記適応計算集積回路。
【請求項３】
請求項１に記載の適応計算集積回路において、上記複数の機能モードは、以下の機能モードのうち少なくとも２つを含む：線形アルゴリズム演算、非線形アルゴリズム演算、有限状態機械動作、メモリ動作、およびビット・レベル操作、ことを特徴とする、上記適応計算集積回路。
【請求項４】
請求項１に記載の適応計算集積回路において、上記相互接続ネットワークは、データおよび制御情報を上記複数の異質計算要素間および中で再構成可能に経路指定することを特徴とする、上記適応計算集積回路。
【請求項５】
請求項１に記載の適応計算集積回路であって、さらに、
上記複数の異質計算要素および上記相互接続ネットワークに結合した制御装置であって、上記複数の異質計算要素の上記第１の機能モードのための上記構成、および、上記複数の異質計算要素の上記第２の機能モードのための上記再構成を指示しスケジュールすることができる制御装置を含むことを特徴とする、上記適応計算集積回路。
【請求項６】
請求項５に記載の適応計算集積回路において、上記制御装置はさらに、上記複数の異質計算要素の上記構成および再構成を、対応するデータとタイミングをとりスケジュールすることができることを特徴とする、上記適応計算集積回路。
【請求項７】
請求項１に記載の適応計算集積回路であって、さらに、
上記複数の異質計算要素および上記相互接続ネットワークに結合したメモリであって、上記第１の構成情報および上記第２の構成情報を記憶することができるメモリを含むことを特徴とする、上記適応計算集積回路。
【請求項８】
請求項１に記載の適応計算集積回路において、上記複数の異質計算要素は、複数の適応および異質の計算装置を形成するよう構成され、前記複数の異質計算装置の各計算装置はさらに、
上記複数の異質計算要素に結合した計算装置制御装置であって、複数の構成情報に応答して複数の制御ビットを生成する計算装置制御装置と、
複数の入力マルチプレクサであって、前記複数の制御ビットに応答して、入力情報の受信のために上記相互接続ネットワークから１つの入力線を選択する複数の入力マルチプレクサと、
複数の出力デマルチプレクサであって、前記複数の制御ビットに応答して、出力情報の転送のために上記相互接続ネットワークから複数の出力線を選択する複数の出力デマルチプレクサ、を含むことを特徴とする、上記適応計算集積回路。
【請求項９】
請求項１に記載の適応計算集積回路において、上記適応計算集積回路は複数の操作モードを有する移動端末内に実現され、前記移動端末の前記複数の操作モードは以下のモードのうち少なくとも２つを含む：移動通信、パーソナル・デジタル・アシスタンス、マルチメディア受信、移動パケット・ベース通信、およびポケットベル・サービス、ことを特徴とする、上記適応計算集積回路。
【請求項１０】
請求項１に記載の装置を操作する方法であって、
第１の構成情報に応答して、相互接続ネットワークを通して複数の機能モードの上記第１の機能モードのために上記複数の異質計算要素を構成し、上記複数の異質計算要素は、第１の固定構造を有する第１の計算要素と、第２の固定構造を有する第２の計算要素を有し、前記第１の固定構造は前記第２の固定構造とは異なり、
第２の構成情報に応答して、前記相互接続ネットワークを通して前記複数の機能モードの上記第２の機能モードのために上記複数の異質計算要素を再構成し、上記第１の機能モードは上記第２の機能モードとは異なる、ことを備えた装置を操作する方法。
【請求項１１】
適応計算集積回路であって、
複数の再構成可能マトリックスであって、複数の異質計算装置を含み、各前記異質計算装置は、複数の固定計算要素の複数の構成の選択された構成から形成され、前記複数の固定計算装置の第１の計算要素は第１の構造を有し、前記複数の固定計算装置の第２の計算要素は第２の構造を有し、前記第１の構造は前記第２の構造とは異なり、前記複数の異質計算装置は相互接続ネットワークに結合し、構成情報に応答して再構成可能である、複数の再構成可能マトリックスと、
前記複数の再構成可能マトリックスに結合したマトリックス相互接続ネットワークであって、複数の操作モードのために前記構成情報に応答して、前記複数の再構成可能マトリックスを再構成することができる相互接続ネットワーク、を含む適応計算集積回路。
【請求項１２】
請求項１１に記載の適応計算集積回路において、上記複数の異質計算装置の各計算装置は選択的に再構成可能であり、複数のアルゴリズムの特定のアルゴリズムを実行することができることを特徴とする、上記適応計算集積回路。
【請求項１３】
請求項１１に記載の適応計算集積回路であって、さらに、
上記複数の再構成可能マトリックスに結合した制御装置であって、上記構成情報を上記再構成可能マトリックスおよび上記マトリックス相互接続ネットワークに提供することができる制御装置を含むことを特徴とする、上記適応計算集積回路。
【請求項１４】
請求項１１に記載の適応計算集積回路において、上記第１の構造および上記第２の構造は複数の特定構造から選択され、前記複数の特定構造は以下の対応する機能のうち少なくとも２つを含み：メモリ、加算、乗算、複合乗算、減算、構成、再構成、制御、入力、出力、およびフィールド・プログラマビリティ、上記複数の操作モードは以下の操作モードのうち少なくとも２つを含む：線形アルゴリズム演算、非線形アルゴリズム演算、有限状態機械動作、メモリ動作、およびビット・レベル操作、ことを特徴とする、上記適応計算集積回路。
【請求項１５】
適応計算集積回路であって、
複数の異質計算要素であって、第１の固定構造を有する前記複数の異質計算要素の第１の計算要素と、第２の固定構造を有する前記複数の異質計算要素の第２の計算要素を含み、前記第１の固定構造は前記第２の固定構造とは異なり、前記複数の固定構造は以下の対応する機能のうち少なくとも２つを含む：メモリ、加算、乗算、複合乗算、減算、構成、再構成、制御、入力、出力、およびフィールド・プログラマビリティ、複数の異質計算要素と、
前記複数の異質計算要素に結合した相互接続ネットワークであって、第１の構成情報に応答して、前記複数の異質計算要素を複数の機能モードの第１の機能モードのために構成することができ、第２の構成情報に応答して、前記複数の異質計算要素を前記複数の機能モードの第２の機能モードのために再構成することができ、前記第１の機能モードは前記第２の機能モードとは異なり、前記複数の機能モードは以下の機能モードのうち少なくとも２つを含む：線形アルゴリズム演算、非線形アルゴリズム演算、有限状態機械動作、メモリ動作、およびビット・レベル操作、相互接続ネットワーク、を含む上記適応計算集積回路。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
従来技術からの重要な相違として、ＡＣＥ１００は、再構成可能マトリックス１５０、制御装置１２０、およびメモリ１４０あるいは他の入力／出力（“Ｉ／Ｏ”）機能の間そしてそれらの中の信号および他の伝送のために、従来の（そして通常別々の）データ、ダイレクト・メモリ・アクセス（ＤＭＡ）、ランダム・アクセス、構成および命令バスを使用しない。その代わり、データ、制御、および構成情報は、これらのマトリックス１５０要素の間そしてそれらの中で、マトリックス相互接続ネットワーク１１０を使用して伝送される。マトリックス相互接続ネットワーク１１０は、以下により詳細に説明されるように、制御装置１２０およびメモリ１４０として構成されたマトリックス１５０を含む、再構成可能マトリックス１５０間および中の任意の接続を提供するために、リアルタイムで構成および再構成することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
メモリ１４０として機能するよう構成されたマトリックス１５０は、固定記憶要素の（後述の）計算要素を使用して、任意の望ましいあるいは好ましい方法で実現することができ、ＡＣＥ１００内に含まれるようにしてもよいし、他のＩＣ内あるいはＩＣの一部分に組込まれるようにすることもできる。好ましい実施例において、メモリ１４０はＡＣＥ１００内に含まれ、小消費電力ランダム・アクセス・メモリ（ＲＡＭ）である計算要素から成ることが好ましいが、フラッシュ、ＤＲＡＭ、ＳＲＡＭ、ＭＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、あるいはＥ2ＰＲＯＭのような任意の他の形式のメモリの計算要素で形成されてもよい。好ましい実施例において、メモリ１４０は、個別に図示されていないが、ＤＭＡエンジンを含むことが望ましい。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
次に、本発明はまた、１つの事実上連続する情報ストリームにおけるデータおよび構成（あるいは他の制御）情報の密結合（あるいは固く組合うこと）を使用する。このデータおよび構成情報の結合あるいは混合は、“シルバーウェア”・モジュールと呼ばれ、関連する別の特許出願の主題である。しかし、本発明の目的のためには、このようにデータおよび構成情報を１つの情報（あるいはビット）ストリームに結合することは、従来技術のハードウェア相互結合の（しばしば使用されない）多重、重ね型のネットワークを必要としないで、ＡＣＥ１００のリアルタイム再構成可能性を可能にするのに役立つことに留意するのみで十分である。例えば、類似するものとして、特定の第１の期間における計算要素の特定の第１の構成は、この第１の期間の間あるいはその後に対応するアルゴリズムを実行するためのハードウェアとして、同じアルゴリズムを実行することのできるソフトウェアにおけるサブルーチンを“呼び出している”のと類似のハードウェアとして見なすあるいは概念化することができる。その結果、一旦構成情報に指示されるように、計算要素２５０の構成が起こると（つまり決まった場所にあると）、アルゴリズムにおいて使用されるデータは、シルバーウェア・モジュールの一部としてすぐに使用可能となる。同じ計算要素はそれから、第２の構成情報に指示されるように第２の期間のために再構成され、またすぐに使用可能となるデータを使用して第２の異なるアルゴリズムを実行することができる。構成された計算要素２５０においてデータが即座に使用可能になることは、記憶アドレスを決定しアドレスされたレジスタから記憶されたデータを取出すソフトウェアの複数の個別のステップに類似する１つあるいは２つのクロック・サイクル・ハードウェアを提供する。このことは、構成された計算要素が、従来のマイクロプロセッサあるいはＤＳＰにおけるサブルーチンとして呼び出されたならば、実行のために桁違いにより多くのクロック・サイクルを必要とするかもしれないアルゴリズムを、比較的少ないクロック・サイクルで実行することができるので、さらなる付加的効率をもたらす。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
再び図１を参照すると、制御装置１２０（有限状態機械として構成されているマトリックス（ＫＡＲＣ）１５０Ａおよびマトリックス（ＭＡＲＣ）１５０Ｂであることが望ましい）の機能は、（１）シルバーウェア・モジュール、つまり、情報の単一のストリーム内のデータおよび構成情報の密結合に関して、（２）複数の可能性のある動作モードに関して、（３）再構成可能マトリックス１５０に関して、そして、（４）図３に示される再構成可能計算装置２００および計算要素１５０に関して説明することができる。上記のように、シルバーウェア・モジュールを通して、ＡＣＥ１００は、新しい技術基準へのアップグレードあるいは移動通信装置への音楽機能の追加のようなまったく新しい機能の追加のような、新しいあるいは付加的機能を実行するために、構成あるいは再構成することができる。このようなシルバーウェア・モジュールは、メモリ１４０のマトリックス１５０内に記憶することもでき、あるいは、外部（配線されたあるいは無線の）資源から、例えばマトリックス相互接続ネットワーク１１０を通して入力することもできる。好ましい実施例において、複数のマトリックス１５０のうち１つは、安全保護目的のために、このようなモジュールを解読しその妥当性を検査するよう構成される。次に、現在あるＡＣＥ１００資源の任意の構成あるいは再構成に先立ち、制御装置１２０はマトリックス（ＫＡＲＣ）１５０Ａを通して、音楽機能の追加が既存の移動通信機能に悪影響を与えていないかどうかというような、どんな既存の機能にも悪影響を与えずに構成あるいは再構成を行うことができるかどうかを調査し検査する。好ましい実施例において、このような構成あるいは再構成に対するシステム要求は、この評価機能を実行する際にマトリックス（ＫＡＲＣ）１５０Ａによって使用されるように、シルバーウェア・モジュール内に含まれる。構成あるいは再構成をこのような悪影響を起こさずに行える場合、シルバーウェア・モジュールは、メモリ１４０のマトリックス１５０にロードされることが許可され、マトリックス（ＫＡＲＣ）１５０Ａはメモリ１４０のマトリックス１５０Ｃおよび１５０Ｄ内のＤＭＡエンジン（あるいは、従来のメモリの他の独立型ＤＭＡエンジン）を作動する。構成あるいは再構成がこのような悪影響を及ぼすあるいは及ぼす可能性がある場合、マトリックス（ＫＡＲＣ）１５０Ａは、新しいモジュールがＡＣＥ１００内に組込まれることを許可しない。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
好ましい実施例において、多様な入力および出力線２８１および２９１の選択、および相互接続（２１０、２２０および２４０）を通した多様な接続の生成は、以下に説明するように、計算装置制御装置２５５からの制御ビット２６５の制御の下にある。これらの制御ビット２６５に基づき、多様な、入力イネーブル２５１、入力選択２５２、出力選択２５３、ＭＵＸ選択２５４、ＤＥＭＵＸイネーブル２５６、ＤＥＭＵＸ選択２５７、およびＤＥＭＵＸ出力選択２５８のいずれかを活動化あるいは非活動化することができる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
例示的計算装置２００は、各計算要素２５０、相互接続（２１０、２２０および２４０）、および他の要素（上記）がクロック・サイクル毎に行うことに対して、制御ビット２６５を通して制御を行う計算装置制御装置２５５を含む。個別に示されてはいないが、相互接続（２１０、２２０および２４０）を通して、多様な制御ビット２６５は必要に応じて、多様な入力イネーブル２５１、入力選択２５２、出力選択２５３、ＭＵＸ選択２５４、ＤＥＭＵＸイネーブル２５６、ＤＥＭＵＸ選択２５７、およびＤＥＭＵＸ出力選択２５８のような、計算装置２００の多様な部分に分配される。ＣＵ制御装置２５５はまた、制御（あるいは構成）情報の受信および状態情報の伝送のために、１つ以上の回線２９５を含む。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
本発明の他の利点は、この分野の技術者にはさらに明らかであろう。移動通信に対しては、例えば、１つあるいは２つのアルゴリズム要素のためのハードウェア加速は通常、多くの（通常６４以上）のチャネルを扱う基盤的基地局に制限されていた。このような加速は、複数のチャネルにわたり、チャネル毎の性能がよくなり電力が節約され、その結果かなり性能がよくなり電力が節約されるので、費用が正当であるとされるであろう。このような複数チャネル性能および電力節約は、単一の動作チャネル移動端末（あるいは移動装置）において従来技術のハードウェア加速を使用しては実現されない。しかし対照的に、本発明を使用すると、同じＩＣ領域が複数のアルゴリズム・タスクを加速するために構成および再構成され、各次のアルゴリズム要素のために新しいハードウェア加速器を効果的に生成あるいは実現させるので、費用の正当化が容易に可能であり、性能がよくなり電力が節約される。