"複数のバージョンのファームウェアであってそれぞれが対応する動作コンフィギュレーションを表す複数のバージョンのファームウェアを外部ソースから受信し、複数バージョンの前記ファームウェアをメモリに記憶し、ホストプロセッサからの信号に応答して、選択された1つのバージョンの前記ファームウェアを前記メモリからダウンロードし、対応する前記動作コンフィギュレーションで動作すべくダウンロードされた前記ファームウェアを使用することで自身を構成するように、インターフェースを介して動作し、また工業規格バスへのインターフェースを含み、該工業規格バス上の通信端点として機能するように動作するプログラム論理集積回路であって、プログラムインストラクションを実行することなく各データを処理するように動作する少なくとも1つのハードワイヤパイプラインと、前記ハードワイヤパイプライン回路に結合され、該ハードワイヤパイプラインへデータを転送し又前記ハードワイヤパイプラインからデータが転送されるように動作する通信シェルと、前記工業規格バスへのインターフェースに結合された通信インターフェースであって、工業規格バスを通じて、前記プログラマブル論理集積回路へデータを転送し、また前記プログラマブル論理集積回路からデータが転送されるように通信すべく前記工業規格バスへ向けて前記インターフェースにより動作し、前記通信インターフェースは前記通信シェルを通して各ハードワイヤパイプラインへデータを転送し又各ハードワイヤパイプラインからデータが転送されるように動作する通信インターフェースとを含む、プログラマブル論理集積回路。前記メモリが不揮発性メモリを含む、請求項1に記載のプログラマブ回路。前記メモリが前記プログラマブル論理回路の外部にあるメモリを含む、請求項1に記載のプログラマブル回路。工業規格バスへのインターフェースを含み、該工業規格バス上の通信端点として機能するように動作するプログラム論理集積回路であって、ホストプロセッサからの信号に応答して、複数のバージョンのファームウェアを記憶しているメモリから、第1コンフィギュレーションを表す第1バージョンのファームウェアをダウンロードし、前記第1バージョンのファームウェアで自身を構成し、前記第1コンフィギュレーションで動作し、前記ホストプロセッサからの信号に応答して、前記メモリから第2コンフィギュレーションを表す第2バージョンのファームウェアをダウンロードし、前記第2バージョンのファームウェアを使用して自身を構成し、前記第2コンフィギュレーションで動作し、また、前記第1コンフィギュレーションで動作している間に、工業規格バス及び前記工業規格バスへのインターフェースを介して外部ソースから前記第2バージョンのファームウェアを受信し、前記第1コンフィギュレーションで動作している間に、前記第2バージョンのファームウェアをメモリに記憶し、また前記第2バージョンのファームウェアは前記第1コンフィギュレーションで動作しているときにのみ受信される、プログラマブル論理集積回路。前記メモリが電気的に消去可能でプログラム可能な読み取り専用メモリを含む、請求項4に記載のプログラマブル論理集積回路。前記プログラマブル回路がフィールドプログラマブルゲートアレイを含む、請求項4に記載のプログラマブル論理集積回路。複数のバージョンのファームウェアデータであってそれぞれが前記プログラマブル回路装置の対応するコンフィギュレーションを表す複数バージョンのファームウェアデータを記憶するように動作するメモリと、前記メモリと結合され、パイプラインバス上の通信端点として機能するように動作し、前記パイプラインバスへのインターフェースとを備えるプログラマブル論理集積回路とを含むプログラマブル回路装置であって、前記プログラマブル論理集積回路は、前記メモリから選択された1つの第1バージョンの前記ファームウェアデータをダウンロードし、前記コンフィギュレーションを試験すべく、選択された前記第1バージョンのファームウェアデータに対応する前記コンフィギュレーションで動作し、第1コンフィギュレーションが試験を通過した場合にのみ、前記メモリから選択された1つの第2バージョンの前記ファームウェアデータをダウンロードし選択された第2バージョンの前記ファームウェアデータに対応する前記コンフィギュレーションで動作し、また前記第1コンフィギュレーションで動作している間に、前記パイプラインバス及び前記パイプラインバスへの前記インターフェースを介して、前記選択された第2バージョンのファームウェアデータを外部ソースから受信し、前記第1コンフィギュレーションで動作している間に、前記選択された第2バージョンの前記ファームウェアをメモリに記憶し、また選択された前記第2バージョンのファームウェアは、選択された前記第1バージョンのファームウェアに対応するコンフィギュレーションで動作しているときにのみ受信され又は記憶される、プログラマブル回路装置。前記プログラマブル論理集積回路が、前記第1コンフィギュレーションで動作している間に前記第2ファームウェアをロードするように動作する、請求項7に記載のプログラマブル論理集積回路装置。前記パイプラインバスに結合されたルータを含む、請求項7に記載のプログラマブル回路装置。複数のファームウェアコンフィギュレーションであってそれぞれが対応する動作コンフィギュレーションをそれぞれ表す複数のファームウェアコンフィギュレーションを記憶するように動作するメモリと、前記メモリと結合され、工業規格インターフェースを有する第1プログラマブル論理集積回路と、前記メモリと結合されると共に前記第1プログラマブル回路と結合され、インターフェースを有する第2プログラマブル論理集積回路とを含み、前記第1プログラマブル論理集積回路は、工業規格バス及び前記工業規格インターフェースを介して複数の前記ファームウェアコンフィギュレーションを受信し、前記メモリに複数の前記ファームウェアコンフィギュレーションを記憶するように動作し、前記メモリから、選択された前記第1ファームウェアコンフィギュレーションをダウンロードし、前記コンフィギュレーションを試験すべく、選択された前記ファームウェアコンフィギュレーションに対応した前記動作コンフィギュレーションで動作し、前記第1ファームウェアコンフィギュレーションが試験を通過した場合にのみ、前記メモリから異なる1つの前記第1ファームウェアコンフィギュレーションをダウンロードし、前記異なる第1ファームウェアに対応する前記動作コンフィギュレーションで動作するように動作し、前記第2プログラマブル論理集積回路が、メモリから選択された1つの前記第2ファームウェアコンフィギュレーションをダウンロードし、選択された1つの前記第2ファームウェアコンフィギュレーションに対応する動作コンフィギュレーションで動作し、メモリから異なる1つの前記第2ファームウェアコンフィギュレーションをダウンロードし、異なる前記第2ファームウェアコンフィギュレーションに対応する前記動作コンフィギュレーションで動作し、前記第2プログラマブル集積回路は、プログラムインストラクションを実行せずに各データを処理するように動作する少なくとも1つのハードワイヤパイプラインと、前記ハードワイヤパイプライン結合され、また前記ハードワイヤパイプラインへデータを転送し又前記ハードワイヤパイプラインからデータが転送されるように動作する通信シェルとを有し、前記第1プログラマブル集積回路は、前記工業規格バスについての前記インターフェースに結合された通信インターフェースであって前記工業規格バスを通して前記第1プログラマブル集積回路へデータを転送し又前記第1プログラマブル集積回路からデータが転送されるように工業規格バスへのインターフェースにより通信すべく動作し、前記通信シェルを介して各ハードワイヤパイプラインへデータを転送し又各ハードワイヤパイプラインからデータの転送がされるように動作する通信インターフェースを有する、プログラマブル回路装置。前記第1プログラマブル論理集積回路が、前記第1コンフィギュレーションで動作している間に外部ソースから前記工業規格バスを介して前記異なる第1及び第2ファームウェアコンフィギュレーションを受信し、前記第1コンフィギュレーションで動作している間に前記メモリに前記異なる第1及び第2ファームウェアコンフィギュレーションを記憶するように動作する、請求項10に記載のプログラマブル回路装置。前記第1及び第2プログラマブル論理集積回路が各フィールドプログラマブルゲートアレイを含む、請求項10に記載のプログラマブル回路装置。プロセッサと、前記プロセッサと結合され、標準周辺機器に結合されるべく適合された工業規格バスと、複数のファームウェアコンフィギュレーションを記憶するメモリと、前記メモリに結合され、また前記工業規格バスに直接結合され、このバスを通して前記プロセッサに結合されたプログラマブル論理集積回路とを含む計算マシンであって、前記プログラマブル論理集積回路は前記プログラマブル回路の新しいコンフィギュレーションを表す新しいファームウェアコンフィギュレーションを前記プロセッサから受信し、前記メモリに前記ファームウェアコンフィギュレーションを記憶し、前記プロセッサに応答して前記メモリから前記新しいファームウェアコンフィギュレーションをダウンロードするように動作し、前記プログラマブル論理集積回路が、プログラムインストラクションを実行することなく各ハードワイヤパイプラインが各データを処理するように動作する少なくとも1つのパイプラインと、前記ハードワイヤパイプラインに結合され、前記ハードワイヤパイプラインへデータを転送し又前記ハードワイヤパイプラインからデータが転送されるように動作する通信シェルと、前記工業規格バスへのインターフェースに結合された通信インターフェースであって、前記工業規格バスを通して前記第1プログラマブル集積回路へデータを転送し又前記第1プログラマブル集積回路からデータが転送されるように工業規格バスへのインターフェースにより通信すべく動作し、前記通信シェルを介して各前記ハードワイヤパイプラインへデータを転送し又各前記ハードワイヤパイプラインからデータが転送されるように動作する通信インターフェースとを有する、計算マシン。前記プロセッサが、前記新しいファームウェアコンフィギュレーションを前記プログラマブル論理集積回路に送信する前、前記新しいファームウェアコンフィギュレーションが前記メモリに既に記憶されているかを決定し、前記新しいファームウェアコンフィギュレーションが前記メモリに未だ記憶されていない場合だけ、前記プログラマブル回路に前記新しいファームウェアコンフィギュレーションを送信するように動作する、請求項13に記載の計算マシン。前記プロセッサと結合されると共に、前記新しいファームウェアコンフィギュレーションを記憶するように且つ前記ファームウェアコンフィギュレーションが前記プログラマブル回路用の所望コンフィギュレーションを表していることを示すように動作するコンフィギュレーションレジストリと、前記プロセッサが前記ファームウェアコンフィギュレーションを前記コンフィギュレーションレジストリから前記プログラマブル回路にダウンロードするように動作することとを含む、請求項13に記載の計算マシン。前記プログラマブル論理集積回路がデータに対して動作するように動作するハードウェアに組み込まれたパイプラインを含む、請求項13に記載の計算マシン。プロセッサと、前記プロセッサに結合され、標準周辺機器に結合されるべく適合された工業規格バスと、複数バージョンのファームウェアであってそれぞれがプログラマブル論理集積回路のコンフィギュレーションを表す複数バージョンのファームウェアを記憶するように動作するメモリとを含む計算マシンであって、前記プログラマブル論理集積回路は、前記メモリに結合され、また前記工業規格バスに直接結合され、該バスを通して前記プロセッサに結合され、前記プロセッサからの信号に応答して、前記メモリから選択された1つのバージョンのファームウェアをダウンロードし、ダウンロードされた前記ファームウェアに対応する前記コンフィギュレーションで動作し、前記プロセッサからの信号に応答して、前記メモリから異なるバージョンのファームウェアをダウンロードし、前記異なるバージョンのファームウェアに対応する前記コンフィギュレーションで動作し、また、前記プログラマブル論理集積回路は、プログラムインストラクションを実行することなく各ハードワイヤパイプラインが各データを処理するように動作する少なくとも1つのパイプラインと、前記ハードワイヤパイプラインに結合され、前記ハードワイヤパイプラインへデータを転送し又前記ハードワイヤパイプラインからデータが転送されるように動作する通信シェルと、前記工業規格バスについての前記インターフェースに結合された通信インターフェースであって前記工業規格バスを越えて前記第1プログラマブル集積回路へデータを転送し又前記第1プログラマブル集積回路からデータが転送されるように工業規格バスへのインターフェースにより通信すべく動作し、前記通信シェルを介して各前記ハードワイヤパイプラインへデータを転送し又各前記ハードワイヤパイプラインからデータが転送されるように動作する通信インターフェースとを有する、計算マシン。前記プロセッサが第1試験ポートを含み、前記プログラマブル論理集積回路装置が前記第1試験ポートと結合された第2試験ポートを含み、前記プロセッサが前記第1及び第2の試験ポートを介して前記選択された1バージョンのファームウェアをメモリにロードするように動作する、請求項17に記載の計算マシン。前記プロセッサが第1試験ポートを含み、前記プログラマブル回路装置が前記第1試験ポートと結合された第2試験ポートを含み、前記第1プログラマブル論理集積回路が、前記第1コンフィギュレーションで動作している間に、第1自己試験を実行するように且つ第1自己試験データを前記第1及び第2の試験ポートを介して前記プロセッサに提供するように動作し、前記プログラマブル論理集積回路が、前記選択された1バージョンのファームウェアに対応するコンフィギュレーションで動作している間に、第2自己試験を実行するように且つ第2自己試験データを前記第1及び第2の試験ポートを介して前記プロセッサに提供するように動作し、前記プロセッサが、前記プログラマブル論理集積回路に、自己試験データが前記自己試験の各所定結果を示す場合だけ、前記メモリから前記異なるバージョンのファームウェアをそれぞれダウンロードさせるように動作する、請求項17に記載の計算マシン。前記プロセッサが選択された1つのバージョンの前記ファームウェアを前記第1プログラマブル論理集積回路に送信するように動作し、前記選択された1つのバージョンのファームウェアに対応する前記コンフィギュレーションで動作している間に、前記プログラマブル論理集積回路が前記プロセッサに応じて異なるバージョン前記ファームウェアを前記メモリにロードするように動作する、請求項17に記載の計算マシン。プロセッサと、前記プロセッサに結合され、標準周辺機器に結合されるべく適合された工業規格バスと、コンフィギュレーションをそれぞれ表す複数のファームウェアバージョンを記憶するように動作するメモリと、前記メモリに結合され、また前記工業規格バスに直接接続され、このバスを通して前記プロセッサに接続された第1プログラマブル論理集積回路と、前記メモリ及び前記第1プログラマブル回路に結合され、また前記第1プログラマブル回路を通して前記工業規格バスに接続され、このバスを通して前記プロセッサに接続された第2プログラマブル論理集積回路とを含む計算マシンであって、前記第1プログラマブル論理集積回路が、前記メモリから第1ファームウェアコードをダウンロードし、前記コンフィギュレーションを試験すべく、前記第1ファームウェアコードに対応する第1コンフィギュレーションで動作し、前記プロセッサに応じて前記メモリから第2ファームウェアコードをダウンロードし、前記第2ファームウェアコードに対応する第2コンフィギュレーションで動作するように動作し、前記第2プログラマブル論理集積回路が、前記メモリから第3ファームウェアコードをダウンロードし、前記第3ファームウェアコードに対応した第3コンフィギュレーションで動作し、前記プロセッサに応じて前記メモリから第4ファームウェアコードをダウンロードし、前記第1プログラマブル論理集積回路は、プログラムインストラクションを実行することなく各ハードワイヤパイプラインが各データを処理するように動作する少なくとも1つのパイプラインと、前記ハードワイヤパイプラインに結合され、前記ハードワイヤパイプラインへ又前記ハードワイヤパイプラインからデータが転送されるように動作する通信シェルと、前記工業規格バスへの前記インターフェースに結合された通信インターフェースであって、前記工業規格バスを通して前記第1プログラマブル集積回路へデータを転送し又前記第1プログラマブル集積回路からデータが転送されるように工業規格バスについてのインターフェースにより通信すべく動作し、前記通信シェルを介して各ハードワイヤパイプラインへデータを転送し又各ハードワイヤパイプラインからデータが転送されるように動作する通信インターフェースとを有する、計算マシン。前記第1プログラマブル論理集積回路が、前記第1コンフィギュレーションで動作している間に、第1自己試験を実行するように且つ第1自己試験データを前記プロセッサに提供するように動作し、前記第2プログラマブル論理集積回路が、前記第3コンフィギュレーションで動作している間に、第2自己試験を実行するように且つ第2自己試験データを前記プロセッサに提供するように動作し、前記プロセッサが、前記第1及び第2のプログラマブル回路に、前記第1及び第2の自己試験データが前記第1及び第2の自己試験の各所定結果を示す場合だけ、前記メモリから第2及び第4のファームウェアコードをそれぞれロードさせるように動作する、請求項21に記載の計算マシン。前記プロセッサが前記第2及び第4のファームウェアを前記第1プログラマブル論理集積回路に送信するように動作し、前記第1コンフィギュレーションで動作している間に、前記第1プログラマブル論理集積回路が前記プロセッサに応じて前記第2及び第4のファームウェアを前記メモリにロードするように動作する、請求項21に記載の計算マシン。前記メモリが、前記第1プログラマブル論理集積回路と結合され且つ前記第1及び第2のファームウェアコードを記憶するように動作する第1メモリ区分と、前記第1及び第2のプログラマブル論理集積回路と結合され且つ前記第3及び第4のファームウェアを記憶するように動作する第2メモリ区分と、を含む、請求項21に記載の計算マシン。前記第1及び第2のメモリ区分が第1及び第2集積回路上にそれぞれ配置されている、請求項24に記載の計算マシン。複数のファームウェアコードであってそれぞれがプログラマブル論理集積回路のコンフィギュレーションを表す複数のファームウェアコードをメモリが記憶し、第1コンフィギュレーションを表す第1ファームウェアコードを前記プログラマブル論理集積回路が工業規格バスを通して直接ダウンロードし、前記プログラマブル論理集積回路が前記第1コンフィギュレーションで動作し、ホストプロセッサからの信号に応答して、第2コンフィギュレーションを表す第2ファームウェアを前記プログラマブル回路がダウンロードし、前記第2ファームウェアをダウンロードした後、前記プログラマブル論理集積回路が前記第2コンフィギュレーションで動作する方法であって、前記プログラマブル論理集積回路が前記第1コンフィギュレーションで動作するときにのみ、前記第2コンフィギュレーションを表す前記ファームウェアが記憶される、方法。前記第2ファームウェアをダウンロードすることが、前記第2ファームウェアコードを前記プログラマブル論理集積回路に送信し、前記プログラマブル回路が前記第1コンフィギュレーションで動作している間に、該プログラマブル回路が前記第2ファームウェアコードをメモリからロードし、前記メモリから前記プログラマブル論理集積回路が前記第2ファームウェアコードをダウンロードすることを含む、請求項26に記載の方法。前記第2ファームウェアコードをダウンロードすることが、前記第2ファームウェアコードが前記プログラマブル論理集積回路と結合されたメモリに記憶されているかを決定し、前記第2ファームウェアコードが前記メモリに記憶されていない場合だけ、前記第2ファームウェアを前記プログラマブル論理集積回路に送信し、前記プログラマブル論理集積回路が前記第1コンフィギュレーションで動作している間に、該プログラマブル回路が前記第2ファームウェアコードを前記メモリにロードし、前記メモリから前記プログラマブル回路が前記ファームウェアをダウンロードすることを含む、請求項26に記載の方法。前記第1コンフィギュレーションで前記プログラマブル論理集積回路が動作することは、該プログラマブル論理集積回路を試験することを含み、前記第2ファームウェアコードをダウンロードすることが、前記プログラマブル論理集積回路が前記試験を通過した場合だけ前記第2ファームウェアをダウンロードすることを含む、請求項26に記載の方法。各フェームウェアコードが第1及び第2プログラマブル論理集積回路の1つ用の動作コンフィギュレーションを特徴づける複数のファームウェアコードをメモリが記憶し、ホストプロセッサに応答して、第1及び第2ファームウェアコードの1つを第1及び第2プログラマブル論理集積回路が工業規格バスを通して直接ダウンロードし、前記第1及び第2のプログラマブル論理集積回路が前記第1及び第2のコンフィギュレーションでそれぞれ動作し、ホストプロセッサに応答して、第3及び第4のファームウェアコードを前記第1及び第2のプログラマブル論理集積回路が、前記第1プログラマブル論理集積回路を介して、それぞれダウンロードし、前記第1及び第2のプログラマブル回路が前記第3及び第4のコンフィギュレーションでそれぞれ動作する方法であって、前記第1及び2プログラマブル論理集積回路がそれぞれ前記第1及び第2動作コンフィギュレーションで動作しているときにのみ前記第3及び第4ファームウェアコードが記憶される、方法。前記第1及び第2のプログラマブル回路が前記第1及び第2のコンフィギュレーションで動作することは、前記第1及び第2のプログラマブル論理集積回路を試験することを含み、前記第3及び第4のファームウェアコードを前記第1及び第2のプログラマブル論理集積回路がダウンロードすることは、前記試験が、前記第1プログラマブル論理集積回路が所望通りに機能していることを示す場合だけ、前記第3ファームウェアコードをロードし、前記試験が、前記第2プログラマブル論理集積回路が所望通りに機能していることを示す場合だけ、前記第4ファームウェアコードをロードすることを含む、請求項30に記載の方法。それ故に、プロセッサに基づくマシンの意思決定を為す能力を、ハードウェアに組み込まれたパイプラインに基づくマシンのナンバークランチング速度と組み合わせることを可能とする新しい計算アーキテクチャに対する要望が生じてきている。本発明の実施例に従えば、プログラマブル回路は外部ソースからファームウェアを受信し、そのファームウェアをメモリ内に記憶してから、そのファームウェアをそのメモリからダウンロードする。そうしたプログラマブル回路は、計算マシン等のシステムにプログラマブル回路のコンフィギュレーションを変更させることを可能とし、よってコンフィギュレーションメモリをマニュアルで再プログラムする必要性を削減している。例えば、もしプログラマブル回路がパイプライン加速器の部分であるFPGAであれば、その加速器と結合されたプロセッサはFPGAのコンフィギュレーションを変更できる。より詳細には、プロセッサはコンフィギュレーションレジストリからその変更されたコンフィギュレーションを表すファームウェアを検索して、そのファームウェアをFPGAに送信し、次いで該FPGAがそのファームウェアを、電気的に消去可能でプログラム可能な読み取り専用EEPROM等のメモリ内に記憶する。次に、FPGAはそのメモリからそのコンフィギュレーションレジストリにファームウェアをダウンロードし、こうして変更されたコンフィギュレーションを有するようにそれ自体を効果的に再構成する。図3は、本発明の一実施例に従ったピアベクトルアーキテクチャを有する計算マシン40の概略ブロック線図である。ホストプロセッサ42に加えて、ピアベクトルマシン40はパイプライン加速器44を含み、それがデータ処理の少なくとも一部を実行して、図1の計算マシン10における共同プロセッサ14の列と効果的に置き換わる。それ故に、ホストプロセッサ42及び加速器44又は以下に議論されるようにそのパイプラインユニットはデータベクトルを前後に転送できるピアである。加速器44がプログラム命令を実行しないので、所与のクロック周波数で共同プロセッサの列ができるものよりも著しく高速にデータに対して数学的に集中的な演算を典型的には実行する。結果として、プロセッサ42の意思決定能力と加速器44のナンバークランチング能力とを組み合わせることによって、マシン40はマシン10等の従来の計算マシンと同一の能力を有するが、しばしばそれよりもデータをより高速に処理することができる。更には、以下に議論されるように、加速器44にホストプロセッサ42の通信インターフェースと互換性がある通信インターフェースを設けることが、特にプロセッサの通信インターフェースが工業規格である場合に、マシン40の設計及び変更を補助する。そして、加速器44が1つ或はそれ以上のPLICを含む場合、ホストプロセッサ42は適切なファームウェアをそれらPLICに送信することによって加速器内における物理的な相互接続コネクタをハード的に構成できる。ホストプロセッサ42はピアベクトルマシン40の初期化中にこの方式で加速器44を構成できるばかりではなく、以下に議論されると共に先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に議論されるように、ピアベクトルマシンの動作中に加速器を再構成する能力を有し得る。更には、ピアベクトルマシン40は以下に議論されると共に先行して引用された特許出願におけるような他の長所等をも提供し得る。更に図3で参照されるように、ホストプロセッサ42及びパイプライン加速器44に加えて、ピアベクトル計算マシン40は、プロセッサメモリ46、インターフェースメモリ48、パイプラインバス50、1つ或はそれ以上のファームウェアメモリ52、任意選択的な生データ入力ポート54、処理済みデータ出力ポート58、任意選択的なルータ61、並びに、試験バス63を含む。ホストプロセッサ42は処理ユニット62及びメッセージハンドラー64を含み、プロセッサメモリ46は処理ユニットメモリ66及びハンドラーメモリ68を含み、そのそれぞれがプロセッサユニット及びメッセージハンドラーに対するプログラム及び作業の両メモリとして役立っている。プロセッサメモリ46は、加速器コンフィギュレーションレジストリ70及びメッセージコンフィギュレーションレジストリ72をも含み、それらが、ホストプロセッサ42に加速器44の機能とメッセージハンドラー64が送信及び受信するメッセージのフォーマットと構成させることをそれぞれ可能とするファームウェア及びコンフィギュレーションデータを記憶する。加速器44及びメッセージハンドラー64のコンフィギュレーションは、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に更に議論され、加速器44のコンフィギュレーションも図4乃至図6と連携して以下に更に議論される。パイプライン加速器44は少なくとも1つのPLIC図4上に配置され、プログラム命令を実行することなしに各データを処理するハードウェアに組み込まれたパイプライン741-74nを含む。ファームウェアメモリ52は加速器44に対するファームウェアを記憶する。より詳細には、ファームウェアメモリ52は、図4乃至図6と連携して以下に更に議論されるように、加速器44を構成する複数のPLICに対するファームウェアを記憶する。代替的には、加速器44は少なくとも1つのASIC上に配置され得て、そのASICがひとたび形成されたならば構成不可能である内部相互接続を有し得る。加速器44がPLICを何等含まないこの代替例において、マシン40はファームウェアメモリ52を省略し得る。更には、加速器44が多数パイプライン741-74nを含んで示されているが、ただ1つのパイプラインを含み得る。加えて、図示されていないが、加速器44はディジタル信号プロセッサDSP等の1つ或はそれ以上のプロセッサを含み得る。更には、図示されていないが、加速器44はデータ入力ポート及び/或はデータ出力ポートを含み得る。ピアベクトルマシン40の一般動作は、先行して引用された改善された計算アーキテクチャ、関連システム、並びに、方法と題された特許文献2に議論されており、ホストプロセッサ42の構造及び動作は、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に議論されており、パイプライン加速器44の構造及び動作は、先行して引用された改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4及び多数パイプラインユニットを有するパイプライン加速器、関連計算マシン、並びに、方法と題された特許文献5に議論されている。加速器44を構成するPLICの動作コンフィギュレーションは、先行して引用された改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4や、図4乃至図6と連携して以下に議論されている。図4乃至図6で参照されるように、加速器44PLICをハード的に構成するための技術が議論される。上記に暗に触れているように、PLICのハードコンフィギュレーションはファームウェアによってプログラムされ、PLICの種々の構成要素間での特定の物理的相互接続、即ち、どのようにして一方の論理ブロックが他方の論理ブロックと電気的に接続されているかを示す。これは、既にハード的に構成されたPLICのより高レベルコンフィギュレーションを示すソフトコンフィギュレーションとは対照的である。例えば、ハード的に構成されたPLICはバッファを含み得ると共にレジスタをも含み得て、そのレジスタによって対応するソフトコンフィギュレーションデータを該レジスタにロードすることによって、そのバッファのサイズをソフト的に構成させることができる。加速器44のソフトコンフィギュレーションは、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3及び改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4に更に議論されている。図4は、本発明の実施例に従った図3のパイプライン加速器44のパイプラインユニット78のブロック線図である。ハードウェアに組み込まれたパイプライン741-74n図3はパイプラインユニット78の部分であり、それは、以下に議論されるように、例えば、ハードウェアに組み込まれたパイプラインを制御すると共にそれらにデータを受信、送信、そして記憶させることを可能とする回路を含む。1つのみのパイプラインユニット78が図4に示されているが、加速器44は、先行して引用された多数パイプラインユニットを有するパイプライン加速器、関連計算マシン、並びに、方法と題された特許文献5に議論されたように、多数のパイプラインユニット各々がハードウェアに組み込まれたパイプライン741-74nの内の少なくとも幾つかを含むを含み得る。以下に議論されるように、1つの具現化例において、パイプラインユニット78のハードコンフィギュレーションはファームウェアでプログラム可能である。これは、ファームウェアを単に変更することによって、パイプラインユニット78の機能を変更させることを可能としている。更には、ホストプロセッサ42図3はピアベクトルマシン40図3の初期化中或は再構成中に変更されたファームウェアをパイプラインユニット78に提供でき、よってその変更ファームウェアをパイプラインユニットにマニュアルでロードさせる必要性をなくせる。パイプラインユニット78は、PLIC或はASIC等のパイプライン回路80、ファームウェアメモリ52パイプライン回路がPLICの場合、並びに、データメモリ81を含み、それら全てが回路ボード或はカード83上に配置されることになる。データメモリ81は、先行して引用されたプログラマブル回路、関連計算マシン、並びに、方法と題された米国特許出願第10/684,057号に更に議論され、パイプライン回路80及びファームウェアメモリ52の組み合わせはプログラマブル回路装置を形成する。パイプライン回路80は通信インターフェース82を含み、それが、ホストプロセッサ42図3等のピアとデータメモリ81との間、そして、ピアと、通信シェル84を介したハードウェアに組み込まれたパイプライン741-74n、パイプラインコントローラ86、例外マネージャ88、並びに、コンフィギュレーションマネージャ90等の、パイプライン回路の他の構成要素との間でデータを転送する。パイプライン回路80は工業規格バスインターフェース91及びインターフェース82をインターフェース91と接続する通信バス93をも含み得る。代替的には、インターフェース91の機能は通信インターフェース82内に含まれ得て、バス93は省略され得る。ハードウェアに組み込まれたパイプライン741-74n、コントローラ86、例外マネージャ88、コンフィギュレーションマネージャ90、並びに、バスインターフェース91の構造及び動作は、先行して引用された改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4に議論されている。通信インターフェース82はメッセージハンドラー64図3によって認識されるフォーマットでデータを存在する場合にはバスインターフェース91を介して送受信し、よってピアベクトルマシン40図3の設計及び変更を典型的には補助する。例えば、もしデータフォーマットが高速I/Oフォーマット等の工業規格であれば、ホストプロセッサ42及びパイプラインユニット78の間にカスタムインターフェースを設計する必要がない。更には、パイプラインユニット78に非バスインターフェースの代わりにパイプラインバス50を介してホストプロセッサ42図3等の他のピアと通信させることを可能することによって、パイプラインユニットが追加或は除去されるたびにスクラッチから非バスインターフェースを再設計する代わりに、パイプラインバスにそれらパイプラインユニット又はそれらを保持する回路カードを単に接続或は接続解除することによってパイプラインユニットの数を変更できる。パイプライン回路80がFPGA等のPLICである場合、通信インターフェース82はプログラマブルポート94を含み、それが以下に議論されるようにパイプライン回路にホストプロセッサ42図3からファームウェアメモリ52にファームウェアをロードさせることを可能としている。例えば、もしファームウェアメモリ52がEEPROMであるならば、プログラムサイクル中にファームウェアメモリが必要とするプログラミング信号を、通信インターフェース82は生成し、ポート94は配送する。そうしたプログラミング信号を生成する回路は従来的なものであり、よって更に議論されない。通信インターフェース82の構造及び動作は、先行して引用された改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4に更に議論されている。更に図4で参照されるように、パイプライン回路80は、試験ポート96、パイプライン回路がPLICである場合にハードコンフィギュレーションポート98をも含む。試験バス63と結合された試験ポート96は、ホストプロセッサ42図3に、以下に議論されるように、パイプライン回路80がピアベクトルマシン40図3の初期化中に実行し得る自己試験の結果をモニタさせることを可能とする。製品には、典型的には、パイプライン回路80を伴う試験ポート96を含み、そして典型的には、試験ポートにJTAG等の工業規格試験プロトコルと互換性があるインターフェース不図示を提供する。ハードコンフィギュレーションポート98は、以下に議論されるように、パイプライン回路80にメモリ52からファームウェアをダウンロードすることによってそれ自体を構成させることを可能とする。試験ポート96のように、製品には、典型的には、パイプライン回路80を伴うコンフィギュレーションポート98を含み、そして典型的にはコンフィギュレーションポートに工業規格メモリインターフェースと、メモリ52の所定アドレス範囲からファームウェアを順次ダウンロードする状態マシンと双方とも不図示を提供する。先に議論されると共に以下に更に議論されるように、パイプライン回路80がPLICである場合、ファームウェアメモリ52はパイプライン回路の1組或はそれ以上の組みのハードコンフィギュレーションを表すファームウェアを記憶する。このファームウェアメモリ52は試験ポート104と、プログラミング及びコンフィギュレーションポート106,108とを含む。試験バス63と結合された試験ポート104は、ホストプロセッサ42図3に、以下に議論されるように、ファームウェアメモリ52がピアベクトルマシン40図3の初期化中に実行し得る自己試験の結果をモニタさせることを可能とする。また以下に議論されるように、試験ポート104はホストプロセッサ42にファームウェアをメモリ52にロードさせることを可能とし得る。製品には、典型的には、メモリ52を伴う試験ポート104を含み、そして典型的にはその試験ポートにJTAG等の工業規格試験プロトコルと互換性があるインターフェース不図示を提供する。プログラミングバス110を介して通信インターフェース82のプログラミングポート94と結合されたプログラミングポート106は、以下に議論されるようにパイプライン回路80にファームウェアをメモリ52にロードさせることを可能とする。そして、コンフィギュレーションバス112を介してパイプライン回路80のハードコンフィギュレーションポート98と結合されたハードコンフィギュレーションポート108は、以下に議論されるように、パイプライン回路にメモリ52からファームウェアをダウンロードさせることを可能とする。典型的には、ファームウェアメモリ52はEEPROM等の不揮発性メモリであり、電力が欠如している状態でデータを保持する。結果として、ファームウェアメモリ52はパイプラインユニット78が電力がダウンした後もそのファームウェアを記憶し続ける。更に図4に参照されるように、ファームウェアメモリ52及びデータメモリ81がパイプライン回路80の外部であると説明されているが、何れか一方或は両方のメモリはパイプライン回路に組み込まれ得る。メモリ52がパイプライン回路80の内部に配置されている場合、設計者はそれに対応してプログラミング及びコンフィギュレーションバス110,112の構造を変更する必要があり得る。更には、パイプラインユニット78がコンフィギュレーションバス112から分離したプログラミングバス110を有すると説明されているが、単一バス不図示はプログラミング及びコンフィギュレーションの両バスの機能を実行し得る。代替的には、パイプラインユニット78はこの単一バスの多数例を含み得るか、或は、プログラミング及びコンフィギュレーション112,110の一方或は両方の多数例を含み得る。図5は、本発明の実施例に従った図4のファームウェアメモリ52の論理区画の線図である。メモリ52の区分114はパイプライン回路80図4の初期コンフィギュレーションを表すファームウェアを記憶する。即ち、パイプライン回路80にダウンロードされると、このファームウェアはパイプライン回路に初期コンフィギュレーションを所有させる。初期コンフィギュレーションの1つの具現化例において、パイプライン回路80は図4の通信インターフェース82そしてもし必要があれば工業規格バスインターフェース91と、パイプライン回路及びデータメモリ81の自己試験を実行する自己試験回路不図示とを含む。パイプライン回路80は、次いで、試験バス63或は通信インターフェース82を介して自己試験の結果をホストプロセッサ42図3に提供できる。また初期コンフィギュレーションは、ホストプロセッサ42に変更されたファームウェアを、以下に議論されるように、通信インターフェース82及びプログラミングバス110を介してファームウェアメモリ52にロードさせることを可能としている。メモリ52の区分1161-116iは、各々、パイプライン回路80の各動作コンフィギュレーションを表すファームウェアを記憶する。典型的には、パイプライン回路80は、加速器44図3の初期化の最後に区分1161-116iの内の所定の1つからファームウェアをダウンロードする。以下に議論されるように、パイプライン回路80は特定の区分1161-116nからファームウェアをダウンロードすべく予めプログラムされ得るか、或は、ホストプロセッサ42図3はパイプライン回路に特定の区分からファームウェアをダウンロードするように命令する。典型的には、i個の動作コンフィギュレーションの各々において、パイプライン回路80は図4に示される構成要素例えば、ハードウェアに組み込まれたパイプライン741-74n、コントローラ86を含む。しかし、これらコンフィギュレーションの各々において、パイプライン回路80は典型的には異なるように動作する。例えば、通信インターフェース82は一方のコンフィギュレーションにおいて一方のプロトコルを具現化し、他方のコンフィギュレーションにおいて他方のプロトコルを具現化する。或は、パイプライン741-74nは一方のコンフィギュレーションにおいてデータに対して一方の組の演算を実行し得て、他方のコンフィギュレーションにおいてデータに対して他方の組の演算を実行し得る。任意選択的な区分118は、メモリ52の区分1161-116iに記憶されたファームウェアによってそれぞれ表される動作コンフィギュレーションの記述或は識別表示を記憶する。この記述/識別表示はホストプロセッサ42図3にメモリ52に記憶されたファームウェアを識別させることを可能とする。任意選択的な区分120はパイプラインユニット78図4のプロファイルを記憶する。このプロファイルはパイプラインユニット78のハードウェアレイアウトを充分に記述して、ホストプロセッサ42図3が、それ自体、パイプラインユニット、並びに、ピアベクトルマシン40図3の別のピア不図示を相互通信のために適切に構成するように為す。例えばプロファイルは、パイプラインユニット78が具現化できるデータ演算及び通信プロトコル、データメモリ81のサイズ、区分1161-116iに記憶されたファームウェアによって表される動作コンフィギュレーションもし区分118が省略された場合、並びに、現行において所望された動作コンフィギュレーションを識別し得る。結果として、ピアベクトルマシン40の初期化中にプロファイルを読み取ることによって、ホストプロセッサ42は、パイプラインユニット78と通信すべく、メッセージハンドラー64図3を適切に構成できる。更には、ホストプロセッサ42はパイプライン回路80がダウンロードすべきファームウェアの区分1161-116iを選択し得る。或は、もしこのファームウェアの何れも適合しなければ、ホストプロセッサ42は変更されたファームウェアをメモリ52にロードし得る。この技術はプラグアンドプレイ技術と類似し、それによってコンピュータはそれ自体を構成できて、新しくインストールされたディスクドライブ等の周辺機器と通信する。代替的には、区分120は、ホストプロセッサ42図3に、例えば、加速器コンフィギュレーションレジストリ70図3に記憶されているテーブルからプロファイルを検索させることを可能とするしばしば実行インデックスと呼称されるプロファイル識別子を記憶し得る。典型的には、実行インデックスは数であり、製品の型番号と非常に似ており、ホストプロセッサ42は記憶されたプロファイルと照合することができる。更に別の代替例において、パイプラインユニット78図4はハードウェアに組み込まれた形態でプロファイル識別子を記憶し得て、区分120のプロファイルを故意ではなく上書きし得る機会をなくする。例えば、パイプラインユニット78は、ホストプロセッサ42図3が試験バス63或はパイプラインバス50及びパイプライン回路80図4を介して読み取ることができるハードウェアに組み込まれたレジスタに、そのプロファイル識別子を記憶し得る。このレジスタは、電気機械式スイッチ、ジャンパー、或は、半田付け接続部不図示等で形成され得る。更に図5で参照されるように、ファームウェアメモリ52の任意選択的な区分122は、ファームウェアメモリ52が加速器44の初期化中に実行する自己試験ルーチン等のその他のデータを記憶し得る。図3乃至図5で参照されるように、ピアベクトルマシン40の動作特にホストプロセッサ42、パイプライン回路80、並びに、ファームウェアメモリ52の動作は、本発明の実施例に従って以下に議論される。ピアベクトルマシン40は先ず電源投入されると、ホストプロセッサ42は、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に議論されているようにそれ自体を初期化し、加速器44はそれ自体を部分的に初期化する。より詳細には、この部分的初期化中、パイプライン回路80はメモリ52の区分114から初期コンフィギュレーションファームウェアをダウンロードする。先に議論されたように、初期コンフィギュレーションにおいて、パイプライン回路80は少なくとも通信インターフェース82及び試験回路不図示を含む。パイプライン回路80がその初期コンフィギュレーションで構成された後、試験回路はパイプライン回路及びデータメモリ81の自己試験を実行し、その自己試験の結果を試験ポート96及び試験バス63を介してホストプロセッサ42に提供する。ファームウェアメモリ52も自己試験を実行し得て、図5と連携して先に議論されたように、その結果を試験ポート104及び試験バス63を介してホストプロセッサ42に提供する。次に、ホストプロセッサ42は加速器44の部分的初期化中に例外が生じたかを決定する。例えば、ホストプロセッサ42は試験バス63からの自己試験結果を分析して、パイプライン回路80、データメモリ81、並びに、ファームウェアメモリ52が適切に機能しているかを決定する。もし例外が生じたならば、ホストプロセッサ42はそれを所定方式で取り扱う。例えば、もしホストプロセッサ42がパイプライン回路80から自己試験結果を受信しなければ、試験バス63を介して、初期コンフィギュレーションファームウェアがファームウェアメモリ52の区分114内に記憶されているかを検査し得る。もしその初期コンフィギュレーションファームウェアが記憶されていなければ、ホストプロセッサ42はその初期コンフィギュレーションファームウェアをパイプラインバス50或は試験バス63を介して区分114にロードして、パイプライン回路80にこのファームウェアをダウンロードさせてから、自己試験の結果を分析し得る。例外のホストプロセッサの取り扱いは、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に更に議論されている。もし例外が生じなければ、ホストプロセッサ42はパイプラインユニット78からプロファイル識別子を読み取り、引き続き加速器コンフィギュレーションレジストリ70からパイプラインユニットの対応するプロファイルを獲得する。ファームウェアメモリ52の区分120からの代わりに、レジストリ70からプロファイルを獲得することはしばしばより好ましく、その理由は、もしパイプライン回路80がASICであれば、パイプラインユニット78がファームウェアメモリ等の不揮発性メモリを含まないことがあり得るからである。もしそのプロファイル識別子がパイプライン回路80がASICであることを示せば、ホストプロセッサ42はファームウェアがパイプライン回路にダウンロードされる必要性が何等ないことを決定する。代替的には、ホストプロセッサ42図3はファームウェアメモリ52の区分120からプロファイルを獲得し得る。この代替例において、プロファイル識別子を記憶することはパイプラインユニット78にとって不必要であるが、該パイプラインユニットはそのプロファイルが区分120から故意ではなく削除される場合にプロファイル識別子を記憶し得る。次に、パイプラインユニット78図4に1つのみ示されているの全てからプロファイル識別子を読み取った後、ホストプロセッサ42は加速器44におけるパイプラインユニット78全てのマップを効果的に生成し、そのマップを例えばハンドラーメモリ68内に記憶する。次いで、各パイプラインユニット78に対して、ホストプロセッサ42はプロファイルからパイプライン回路80の所望の動作コンフィギュレーションの識別子を抽出する。加速器44の初期化中に所望の動作コンフィギュレーションを抽出することは、初期化に先行してそのプロファイルを単に更新するによってパイプライン回路80の動作を変更させることを可能とする。次に、ホストプロセッサ42は所望の動作コンフィギュレーションを表すファームウェアがファームウェアメモリ52に記憶されているかを決定する。例えば、ホストプロセッサ42は、プログラミングバス110及びパイプライン回路80が初期コンフィギュレーションにあるので、通信インターフェースが存在するので通信インターフェース82を介してメモリ区分118からそのコンフィギュレーション記述を読み取ることができ、所望のファームウェアが区分1161-116iの何れかに記憶されているかを決定する。代替的には、ホストプロセッサ42は試験バス63及び試験ポート104を介してメモリ52から直にコンフィギュレーション記述を読み取り得る。もし所望の動作コンフィギュレーションを表すファームウェアがファームウェアメモリ52に記憶されていなければ、ホストプロセッサ42は通信インターフェース82、プログラミングポート94,106、並びに、プログラミングバス110を介して加速器コンフィギュレーションレジストリ70からファームウェアメモリの区分1161-116iの内の1つにこのファームウェアをロードする。もしファームウェアがレジストリ70内になければ、ホストプロセッサ42は外部ライブラリ不図示からファームウェアを検索し得るか、或は、例外指標を生成し得て、システム動作不図示がそのファームウェアをレジストリ70にロードし得るように為す。次に、ホストプロセッサ42は、パイプライン回路80にポート108、コンフィギュレーションバス112、並びに、ポート98を介してメモリ52の対応する区分1161-116iから所望のファームウェアをダウンロードさせるように命令する。パイプライン回路80が所望のファームウェアをダウンロードした後、所望の動作コンフィギュレーションとなって、データ処理を始める準備が為される。しかし、パイプライン回路80がその所望動作コンフィギュレーションとなった後でさえ、ホストプロセッサ42は通信インターフェース82或は試験バス63を介して新しいファームウェアをメモリ52の区分1161-116iにロードし得る。例えば、新しいファームウェアをロードすべく、ホストプロセッサ42は先ずパイプライン回路80にメモリ52の区分114からファームウェアを再ロードさせ得て、パイプライン回路が再び初期コンフィギュレーションとなるように為す。次いで、ホストプロセッサ42はパイプラインバス50及び通信インターフェース82を介して新しいファームウェアを区分1161-116iの内の1つにロードする。次に、ホストプロセッサ42はパイプライン回路80にその新しいファームウェアをダウンロードさせて、パイプライン回路がその新しい動作コンフィギュレーションとなるように為す。初期コンフィギュレーションであるときにのみ、パイプライン回路80に新しいファームウェアをメモリ52にロードさせることは、2つの長所をもたらす。第1として、それはパイプライン回路80が動作コンフィギュレーションにある際に該パイプライン回路がメモリ52に記憶されているファームウェアを故意ではなく改変することを防止する。第2として、それは動作コンフィギュレーションに、さもなければファームウェアをメモリ52に書き込むために必要とされる回路用に使用されることになるパイプライン回路80のリソースを利用させることを可能とする。図6は、本発明の別の実施例に従った図3のパイプライン加速器44のパイプラインユニット124のブロック線図である。パイプラインユニット124は、そのパイプラインユニット124が多数のパイプライン回路80ここでは2つのパイプライン回路80a及び80bと、各パイプライン回路に対して1つずつのメモリである多数のファームウェアメモリここでは2つのメモリ52a及び52bと、を含むことを除いて、図4のパイプラインユニット78と類似している。パイプライン回路80a及び80bとファームウェアメモリ52a及び52bとの組み合わせはプログラマブル回路装置を形成する。1つの具現化例において、メモリ52a及び52bの各々は、ファームウェア52bが、パイプラインユニット124のプロファイルを記憶し、さもなければメモリ52aの区分120と重複するような区分120を省略し得ることを除いては、図5に示されるように仕切られる。代替的には、パイプライン回路80a及び80bはメモリ52a及び52bと動作的に類似している各区分を含む単一ファームウェアメモリを共有し得る。パイプライン回路80の数を増大することは、典型的には、ハードウェアに組み込まれたパイプライン741-74nの数nに関する増大を許容し、よってパイプラインユニット78と比較してのパイプラインユニット124の機能に関する増大を許容する。更には、パイプライン回路80a及び80bの何れか一方或は双方はASICであり得て、その場合、対応するファームウェアメモリ又は対応する複数のファームウェアメモリ52は省略し得る。パイプラインユニット124の構造及び動作の更なる詳細は、先行して引用された改善された計算アーキテクチャ用パイプライン加速器、関連システム、並びに、方法と題された特許文献4に議論されている。パイプライン回路80aは試験ポート96a及びハードコンフィギュレーションポート98aを含み、それらが図4の試験ポート96及びハードコンフィギュレーションポート98とそれぞれ類似している。そして図4のパイプライン回路80と同じように、パイプライン回路80aはプログラミングポート94を有する通信インターフェース82を含む。パイプライン回路80bは試験ポート96a及びハードコンフィギュレーションポート98bを含み、それらも図4の試験ポート96及びハードコンフィギュレーションポート98とそれぞれ類似している。そして、ホストプロセッサ42図3が以下に議論されるようにパイプライン回路80aの通信インターフェース82を介してファームウェアメモリ52bをプログラムできるので、パイプライン回路80bはプログラミングポートを含まない。ファームウェアメモリ52aは試験、プログラミング、並びに、ハードコンフィギュレーションポート104a,106a,108aを含み、それらが図4の試験、プログラミング、並びに、ハードコンフィギュレーションポート104,106,108とそれぞれ類似している。試験ポート104aは試験バス63と結合され、プログラミングポート106aはプログラミングバス110を介して通信インターフェース82のプログラミングポート94aと結合され、そしてハードコンフィギュレーションポート108aはコンフィギュレーションバス112aを介してパイプライン回路80aのハードコンフィギュレーションポート98aと結合されている。同様に、ファームウェアメモリ52bは試験、プログラミング、並びに、ハードコンフィギュレーションポート104b,106b,108bを含み、それらが図4の試験、プログラミング、並びに、ハードコンフィギュレーションポート104,106,108とそれぞれ類似している。試験ポート104bは試験バス63と結合され、プログラミングポート106bはプログラミングバス110を介して通信インターフェース82のプログラミングポート94aと結合され、そしてハードコンフィギュレーションポート108bはコンフィギュレーションバス112bを介してパイプライン回路80bのハードコンフィギュレーションポート98bと結合されている。図3、図5、並びに、図6で参照されるように、ピアベクトルマシン40の動作特にホストプロセッサ42、パイプライン回路80a及び80b、ファームウェアメモリ52a及び52bの動作は本発明の実施例に従って以下に議論されている。ピアベクトルマシン40が先ず電源投入されると、ホストプロセッサ42は、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3で議論されたようにそれ自体を初期化し、加速器44はそれ自体を部分的に初期化する。より詳細には、この部分的初期化中、パイプライン回路80a及び80bは、それぞれ、ファームウェアメモリ52a及び52bの区分114a及び114bから初期コンフィギュレーションファームウェアをダウンロードする。それぞれの初期コンフィギュレーションにおいて、パイプライン回路80aは少なくとも通信インターフェース82及び試験回路不図示を含み、パイプライン回路80bは少なくとも試験回路不図示を含む。パイプライン回路80a及び80bがそれらの各初期コンフィギュレーションに構成された後、各パイプライン回路内の試験回路はパイプライン回路の各自己試験を実行しパイプライン回路80a及び80bの一方或は双方の試験回路もデータメモリ81を試験し得て試験ポート96a及び96bのそれぞれと試験バス63とを介してホストプロセッサ42にそれら自己試験の結果を提供する。ファームウェアメモリ52a及び52bも各自己試験を実行し得て、図5と連携されて先に議論されたように、試験ポート104a及び104bのそれぞれと試験バス63とを介してホストプロセッサ42にその結果を提供する。次に、ホストプロセッサ42は加速器44の部分的初期化中に例外が生じたかを決定する。例えば、ホストプロセッサ42は試験バス63からの自己試験結果を分析して、パイプライン回路80a及び80b、データメモリ81、並びに、ファームウェアメモリ52a及び52bが適切に機能しているかを決定する。もし例外が生じたならば、ホストプロセッサ42はそれを所定の方式で取り扱う。例えば、もしホストプロセッサ42がパイプライン回路80aから自己試験結果を受信しなければ、初期コンフィギュレーションファームウェアがファームウェアメモリ52aの区分114aに記憶されているかを試験バス63を介して検査し得る。もし初期コンフィギュレーションファームウェアが記憶されていなければ、ホストプロセッサ42はその初期コンフィギュレーションファームウェアを区分114aにロードして、パイプライン回路80aにそのファームウェアをダウンロードさせてから、自己試験の結果を分析し得る。この例はパイプライン回路50b及びファームウェアメモリ52bにも適用される。例外のホストプロセッサの取り扱いは、先行して引用された改善された計算アーキテクチャを有する計算マシン、関連システム、並びに、方法と題された特許文献3に更に議論されている。もし例外が何等生じなかったならば、ホストプロセッサ42はパイプラインユニット124からプロファイル識別子を読み取り、続いて、図4と連携して先に議論されたように、加速器コンフィギュレーションレジストリ70から或はファームウェアメモリ52aの区分120からパイプラインユニットの対応するプロファイルを獲得する。次に、パイプラインユニット124図4には1つのみ示されているの全てからプロファイル識別子を読み取った後、ホストプロセッサ42は加速器44における全パイプラインユニットのマップを効果的に生成して、そのマップを例えばハンドラーメモリ68に記憶する。次いで、ホストプロセッサ42はプロファイルからパイプライン回路80a及び80bの所望の動作コンフィギュレーションの識別子を抽出する。加速器44の初期化中に所望の動作コンフィギュレーションを抽出することは、そのプロファイルを初期化に先行して単に更新することによってパイプライン回路80a及び/或は80bの動作を変更させることを可能とする。次に、ホストプロセッサ42は所望の動作コンフィギュレーションを表すファームウェアがファームウェアメモリ52a及び52bに記憶されているかを決定する。例えば、ホストプロセッサ42はプログラミングバス110及びパイプライン回路80aが初期コンフィギュレーションであるので、通信インターフェースが存在するので通信インターフェース82を介してメモリ52aのメモリ区分118aからコンフィギュレーション記述を読み取ることができ、所望のファームウェアが区分116a1-116aiの何れかに記憶されていることを決定する。代替的には、ホストプロセッサ42は試験バス63及び試験ポート104aを介してメモリ52aから直にコンフィギュレーション記述を読み取り得る。この例もパイプライン回路50b及びファームウェアメモリ52bに適用される。もし所望の動作コンフィギュレーションの一方或は双方を表すファームウェアがファームウェアメモリ52a及び/或は52bに記憶されていなければ、ホストプロセッサ42は加速器コンフィギュレーションレジストリ70からそのファームウェアを通信インターフェース82、プログラミングポート94,106、並びに、プログラミングバス110を介して適切なファームウェアメモリの区分1161-116iの内の1つにロードする。例えば、もしパイプライン回路80bの所望の動作コンフィギュレーションを表すファームウェアがメモリ52bに記憶されていなければ、ホストプロセッサ42はそのファームウェアをレジストリ70から、インターフェース82、プログラミングポート94,106b、並びに、プログラミングバス110を介して区分116b1-116biの内の1つにロードする。もしファームウェアがレジストリ70になければ、ホストプロセッサ42はそのファームウェアを外部ライブラリ不図示から検索し得るか、或は、例外指標を生成し得て、システムオペレータ不図示がそのファームウェアをレジストリ70にロードし得るように為す。次にホストプロセッサ42は、パイプライン回路80aに、ポート108a、コンフィギュレーションバス112a、並びに、ポート98aを介してメモリ52aの対応する区分116a1-116aiから所望のファームウェアをダウンロードするように命令し、パイプライン回路80bに、ポート108b、コンフィギュレーションバス112b、並びに、ポート98bを介してメモリ52bの対応する区分116b1-116biから所望のファームウェアをダウンロードするように命令する。パイプライン回路80a及び80bが所望のファームウェアをダウンロードした後、それは所望の動作コンフィギュレーションにあって、データ処理を始める準備が為される。しかし、パイプライン回路80a及び80bがそれらの所望の動作コンフィギュレーションになった後でさえ、ホストプロセッサ42は新しいファームウェアを通信インターフェース82或は試験バス63を介して、図4と連携されて先に議論されたものと同様な方式でメモリ52a及び52bの区分1161-116iにロードし得る。先行する議論は当業者が本発明を作製し使用することを可能とすべく提示されている。種々実施例への様々な変更は当業者には容易に明かであろうし、ここでの包括的な原則は本発明の精神及び範囲から逸脱することなしに他の実施例及び適用例に適用され得る。よって、本発明は図示された実施例に限定されることが意図されておらず、ここに開示された原理及び特徴と一貫した最も広い範囲と一致されるべきものである。"