(57)【要約】  演算部は、複数の演算器を備え、複数の演算器の構成を記述した構成情報と構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する。状態管理部は、現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を演算部に対して指定すると共に、次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を出力する。判断部は、状態管理部から出力された論理状態番号に基づいて、次に移行すべき状態に対応する構成情報が演算部に保持されているか否か判断する。書換部は、次に移行すべき状態に対応する構成情報が演算部に保持されていないと判断されたら、その構成情報と、その構成情報の物理構成番号とを対応付けて演算部に記録する。
2010087098.tif 000002
【特許請求の範囲】
【請求項１】
複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部と、
現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を出力する状態管理部と、
前記状態管理部から出力された前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する判断部と、
前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する書換部と、を有する並列演算装置。
【請求項２】
前記状態管理部は、前記論理状態番号と共に、前記次に移行すべき状態の物理状態番号を出力し、
前記判断部は、前記演算部に保持されている構成情報に関する物理状態番号と論理状態番号との対応関係を保持状態番号対応テーブルとして保持しており、該保持状態番号対応テーブルにおいて、前記状態管理部から出力された物理状態番号に対応する論理状態番号と、前記状態管理部から出力された論理状態番号とを比較することによって、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する、請求項１に記載の並列演算装置。
【請求項３】
前記書換部は、前記構成情報と前記物理構成番号とを前記演算部に記録するとき、それに伴って前記保持状態番号対応テーブルを更新する、請求項２に記載の並列演算装置。
【請求項４】
前記状態管理部は、前記論理状態番号と共に、前記次に移行すべき状態の物理状態番号を出力し、
前記判断部は、前記状態管理部から出力された物理状態番号から、前記演算部に保持されている構成情報に関する論理状態番号を算出し、算出した該論理状態番号と、前記状態管理部から出力された論理状態番号とを比較することによって、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する、請求項１に記載の並列演算装置。
【請求項５】
前記判断部は、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断したら前記演算部を一時的に停止し、
前記書換部は、前記演算部が一時的に停止している間に前記構成情報と該構成情報の物理構成番号とを前記演算部に記録する、請求項１から４のいずれか１項に記載の並列演算装置。
【請求項６】
前記状態管理部は、現在の状態の物理状態番号と次に移行すべき状態の物理構成番号および論理状態番号とを対応付けた物理状態遷移テーブルを保持しており、該物理状態遷移テーブルに基づいて、前記演算部に対して指定する前記物理構成番号と、出力する前記論理状態番号を決定する、
請求項１から５のいずれか１項に記載の並列演算装置。
【請求項７】
前記書換部は、前記構成情報と前記物理構成番号とを前記演算部に記録するとき、それに伴って前記物理状態遷移テーブルを更新する、請求項６に記載の並列演算装置。
【請求項８】
複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部と、現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態を論理物理割当済オブジェクトコード内で一意に特定する論理状態番号を出力する状態管理部と、前記状態管理部から出力された前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する判断部と、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する書換部と、を有する並列演算装置と、
前記並列演算装置に前記論理物理割当済オブジェクトコードを提供する情報処理装置と、を有し、
前記情報処理装置は、前記論理状態番号と前記構成情報とを対応づけた論理構成情報テーブルと、前記論理状態番号と少なくとも前記物理構成番号とを対応付けた論理物理対応テーブルと、現在の論理状態番号と次の物理構成番号および論理状態番号とを対応付けた論理物理割当済オブジェクトコードと、を生成し、
前記並列演算装置の前記状態管理部は、前記論理物理割当済オブジェクトコードを用いて、前記次に移行すべき状態に対応する前記物理構成番号および前記論理状態番号を定め、
前記並列演算装置の前記書換部は、論理構成情報テーブルおよび前記論理物理対応テーブルを用いて、前記演算部に記録する、該構成情報と、該構成情報の物理構成番号とを定める、
情報処理システム。
【請求項９】
前記論理物理割当済オブジェクトコードには、更に、次の物理状態番号が記録されており、
前記状態管理部は、前記論理状態番号と共に、前記次に移行すべき状態の物理状態番号を出力し、
前記判断部は、前記演算部に保持されている構成情報に関する物理状態番号と論理状態番号との対応関係を保持状態番号対応テーブルとして保持しており、該保持状態番号対応テーブルにおいて、前記状態管理部から出力された物理状態番号に対応する論理状態番号と、前記状態管理部から出力された論理状態番号とを比較することによって、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する、請求項８に記載の情報処理システム。
【請求項１０】
前記書換部は、前記構成情報と前記物理構成番号とを前記演算部に記録するとき、それに伴って前記保持状態番号対応テーブルを更新する、請求項９に記載の情報処理システム。
【請求項１１】
前記論理物理割当済オブジェクトコードには、更に、次の物理状態番号が記録されており、
前記状態管理部は、前記論理状態番号と共に、前記次に移行すべき状態の物理状態番号を出力し、
前記判断部は、前記状態管理部から出力された物理状態番号から、前記演算部に保持されている構成情報に関する論理状態番号を算出し、算出した該論理状態番号と、前記状態管理部から出力された論理状態番号とを比較することによって、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する、請求項８に記載の情報処理システム。
【請求項１２】
前記判断部は、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断したら前記演算部を一時的に停止し、
前記書換部は、前記演算部が一時的に停止している間に前記構成情報と該構成情報の物理構成番号とを前記演算部に記録する、請求項８から１１のいずれか１項に記載の情報処理システム。
【請求項１３】
前記状態管理部は、現在の状態の物理状態番号と次に移行すべき状態の物理構成番号および論理状態番号とを対応付けた物理状態遷移テーブルを保持しており、該物理状態遷移テーブルに基づいて、前記演算部に対して指定する前記物理構成番号と、出力する前記論理状態番号を決定する、
請求項８から１２のいずれか１項に記載の情報処理システム。
【請求項１４】
前記書換部は、前記構成情報と前記物理構成番号とを前記演算部に記録するとき、それに伴って前記物理状態遷移テーブルを更新する、請求項１３に記載の情報処理システム。
【請求項１５】
複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部を備えた並列演算装置において処理を実行するための並列演算方法であって、
現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を求め、
求めた前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断し、
前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する、並列演算方法。
【請求項１６】
複数の演算器を備えた演算部で処理を実行する並列演算装置に用いるオブジェクトコードを生成する情報処理装置であって、
前記並列演算装置の各状態を示す状態番号と前記演算部の各構成を示す構成番号とを対応付けた構成番号対応テーブルと、前記構成番号と該構成番号毎の前記演算部の構成を記述した構成情報とを対応付けた構成情報テーブルと、現在の状態番号と少なくとも次の構成番号とを対応付けた状態遷移テーブルと、を入力する入力手段と、
前記状態番号を物理状態番号として該物理状態番号を一意に特定する論理状態番号を定め、前記構成番号を物理構成番号として該物理構成番号を一意に特定する論理構成番号を定め、前記論理状態番号と前記構成情報とを対応づけた論理構成情報テーブルと、前記論理状態番号と少なくとも前記物理構成番号とを対応付けた論理物理対応テーブルと、現在の論理状態番号と少なくとも次の物理構成番号および論理状態番号とを対応付けた論理物理割当済オブジェクトコードと、を生成する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の演算器の接続構成を変更しながら並列処理を実行する並列演算装置に関する。
【背景技術】
【０００２】
所望の処理を実現するプロセッサユニットとしてＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が知られている。またその中で、小型化および高性能化を目的とした、複数のプロセッサをアレイ状に並べたアレイ型プロセッサで構成される並列演算装置が知られている（下記の文献１〜６参照）。これらの文献に記載された背景技術を以降、第１の背景技術と称す。【０００３】
また、第１の背景技術による並列演算装置で動作するプログラム（オブジェクトコードとも言う）を生成する技術は下記の文献７に記載されている。このプログラム生成技術を以降、第２の背景技術と称す。【０００４】
第１の背景技術の並列演算装置はオブジェクトコードに基づいて処理を実行する。そのオブジェクトコードは、処理対象となるデータに応じて生成された１つ以上の構成情報を含んでいる。構成情報は、並列演算装置内に仮想的に回路を構成するための情報であり、並列演算装置において並列処理を実現する個々の演算器に対して発行される演算命令と、各演算器間の接続関係を示す情報とからなる。【０００５】
各構成情報は、並列演算装置のメモリに格納され、番号（以降、構成番号と称す）で識別される。並列演算装置内では、指定された構成情報に応じて仮想的な回路が構成され、その回路によって処理が実行される。【０００６】
第１の背景技術では、その構成番号を直接指定して処理を実行するという手法が採用されている。例えば、構成番号がメモリのアドレスであり、そのアドレスが指定される。【０００７】
また、第１の背景技術では、現在の並列演算装置の状態が、現在実行している構成情報に対応している。並列演算装置に格納されている各構成番号に対応した状態番号が定義されており、この状態番号で現在実行している構成情報が管理される。【０００８】
また、第１の背景技術では、状態遷移テーブルを用いて、次に遷移する状態番号および構成番号を選択するという手法が用いられている。【０００９】
状態遷移テーブルには、現在実行している構成情報を示す状態番号（以降、現状態番号と称す）と、現状態番号に対応する構成情報によって実現された回路による演算結果として生成されるイベント信号とに対応付けて、次に選択すべき状態番号および構成番号が規定されている。この状態遷移テーブルを参照することにより、現状態番号およびイベント信号から、次に選択すべき状態番号および構成番号を選択することができる。【００１０】
オブジェクトコードは、並列演算装置にて所望の処理を実行するために必要な複数の構成情報と、この状態遷移テーブルで構成される。【００１１】
通常、構成番号はオブジェクトコード毎に定められているので、複数のオブジェクトを１つの第１の背景技術の並列演算装置に搭載しようとすると、それらのオブジェクトコードの構成番号が重なることがあるが、構成番号が重なったままでは構成情報を一意に特定できない。【００１２】
複数のオブジェクトコードを１つのオブジェクトコードに生成し直せば重複を回避できる。しかし、複数のオブジェクトコードを構成番号が重複しないように１つのオブジェクトコードにすると、生成されたオブジェクトコードにおける構成番号の数は、各オブジェクトの構成番号の数の合計となる。【００１３】
第１の背景技術による並列演算装置では、その並列演算装置に格納された各構成情報は、構成番号を直接指定することで選択されるので、並列演算装置に保持することができる数を超える数の構成情報を用いるような大規模なオブジェクトコードを実現できなくなる。【００１４】
これに対して、下記の文献８に開示された技術を用いた並列演算装置が本出願人により提案されている。この技術を以降、第３の背景技術と称す。【００１５】
第３の背景技術の並列演算装置は、構成番号を直接ではなく間接的に指定する手法を用いている。ここでは、直接指定する場合の番号を物理番号と称し、その物理番号を間接的に指定するための番号を論理番号と称することにする。第３の背景技術では、構成番号を論理番号で指定するものとし、その論理番号を物理番号に変換して構成情報の特定に用いる。【００１６】
具体的には、オブジェクトコードに含まれる番号が論理番号であり、並列演算装置内の管理される番号が物理番号である。さらに言えば、オブジェクトコードに含まれる構成番号が論理構成番号である。また、例えば、現在実行している構成情報の構成番号のような、並列演算装置内で管理している構成番号が物理構成番号である。【００１７】
第３の背景技術では、論理構成番号を物理構成番号に変換する手段を並列演算装置に備えることで、論理番号によって、並列演算装置に保持することができる数を超える数の構成情報を指定することを可能とする。その結果、並列演算装置に大規模なオブジェクトコードを用いることが可能となる。【００１８】
（文献）
文献１：  特許３５７６８３７号公報
文献２：  特許第３４４４２１６号公報
文献３：  特許第３２６９５２６号公報
文献４：  特許第３６１６５１８号公報
文献５：  特許第３６７４５１５号公報
文献６：  特許第３５２８９２２号公報
文献７：  特許第３９２１３６７号公報
文献８：  国際公開ＷＯ２００７／１１４０５９Ａ１
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、第３の背景技術の並列演算装置において、論理構成番号を物理構成番号に変換する手段（以降、構成番号変換部という）を実現するには、ＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）のような特殊なメモリが必要とされる。【００２０】
一般的なメモリは、メモリのアドレスを入力として、そのアドレスに対応するデータを出力する。これに対し、ＣＡＭと呼ばれるメモリは、データを入力とし、それに対応するアドレスを出力するものである。【００２１】
構成番号変換部は論理番号を物理番号に変換するが、論理番号をアドレスとし、物理番号をデータとして一般的なメモリを用いて実現しようとすると、メモリのエントリ数によって論理番号の数の上限が決まってしまう。その結果、そのエントリ数を越えるような論理番号をオブジェクトコードに使うことができなくなってしまう。そのため、上述したように構成番号変換部には特殊なメモリを使う必要があった。【００２２】
しかしながら、このような特殊なメモリは、一般的なメモリに比べて動作遅延が大きい。その結果、第３の背景技術による並列演算装置では、構成番号変換部での動作遅延を考慮してクロックサイクルを長くするため、並列演算装置の高速化が制限されていた。【００２３】
本発明の目的は、大規模なオブジェクトコードを用いることができ、かつ高速動作が可能な並列演算を実現することである。
【課題を解決するための手段】
【００２４】
上記目的を達成するために、本発明の並列演算装置は、
複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部と、
現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を出力する状態管理部と、
前記状態管理部から出力された前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する判断部と、
前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する書換部と、を有している。【００２５】
本発明の情報処理システムは、
複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部と、現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態を論理物理割当済オブジェクトコード内で一意に特定する論理状態番号を出力する状態管理部と、前記状態管理部から出力された前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する判断部と、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する書換部と、を有する並列演算装置と、
前記並列演算装置に前記論理物理割当済オブジェクトコードを提供する情報処理装置と、を有し、
前記情報処理装置は、前記論理状態番号と前記構成情報とを対応づけた論理構成情報テーブルと、前記論理状態番号と少なくとも前記物理構成番号とを対応付けた論理物理対応テーブルと、現在の論理状態番号と次の物理構成番号および論理状態番号とを対応付けた論理物理割当済オブジェクトコードと、を生成し、
前記並列演算装置の前記状態管理部は、前記論理物理割当済オブジェクトコードを用いて、前記次に移行すべき状態に対応する前記物理構成番号および前記論理状態番号を定め、
前記並列演算装置の前記書換部は、論理構成情報テーブルおよび前記論理物理対応テーブルを用いて、前記演算部に記録する、該構成情報と、該構成情報の物理構成番号とを定める。【００２６】
本発明の並列演算方法は、複数の演算器を備え、該複数の演算器の構成を記述した構成情報と該構成情報を示す物理構成番号とを対応付けて保持し、指定された物理構成番号に対応する構成で演算を実行する演算部を備えた並列演算装置において処理を実行するための並列演算方法であって、
現在の状態を表す論理状態番号に基づいて、次に移行すべき状態に対応する物理構成番号を前記演算部に対して指定すると共に、該次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を求め、
求めた前記論理状態番号に基づいて、前記次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断し、
前記次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断されたら、該構成情報と、該構成情報の物理構成番号とを対応付けて前記演算部に記録する、方法である。
【図面の簡単な説明】
【００２７】
【図１】第１の実施形態による並列演算装置の構成を示すブロック図である。
【図２】第２の実施形態による並列演算装置の構成例を示すブロック図である。
【図３】論理物理割当済オブジェクトコードの内容の一例を示す図である。
【図４】第３の実施形態による情報処理システムの構成例を示すブロック図である。
【図５】情報処理装置２２０のハードウェア構成の一例を示す図である。
【図６】第４の実施形態による並列演算装置の判断部１５０´の構成を示すブロック図である。
【図７】データ供給装置２１０から供給される論理物理割当前オブジェクトコードの一例を示す図である。
【図８】図７の論理物理割当前オブジェクトコードによる状態遷移を示す図である。
【図９】データ供給装置２１０から供給される論理物理対応情報の一例を示す図である。
【図１０Ａ】論理物理割当済オブジェクトコードにおける論理状態遷移テーブルを示す図である。
【図１０Ｂ】論理物理割当済オブジェクトコードにおける論理物理対応テーブルを示す図である。
【図１１】図１０Ｂの論理物理割当済オブジェクトコードのうち、論理状態０から論理状態１まで実行した直後の並列演算装置１００の状態を示す図である。
【図１２】図１１の次のクロックサイクルでの並列演算装置１００の状態を示す図である。
【図１３】書換部１６０が動作した後の並列演算装置１００の状態を示す図である。
【図１４】本実施例の並列演算装置１００の動作を示すタイミングチャートである。
【発明を実施するための形態】
【００２８】
本発明の実施形態について図面を参照して詳細に説明する。
【００２９】
（第１の実施形態）
第１の実施形態では本発明を用いた基本的な構成の並列演算装置を例示する。
【００３０】
図１は、第１の実施形態による並列演算装置の構成を示すブロック図である。図１を参照すると、並列演算装置１０は、演算部１３、状態管理部１４、判断部１５、および書換部１６を有している。並列演算装置１０にはオブジェクトコード出力装置２０からオブジェクトコードが与えられる。並列演算装置１０は与えられたオブジェクトコードに従って処理を実行する。
【００３１】
演算部１３は、アレイ状に配置された複数の演算器を備え、それらの演算器で、演算器間の接続を変更しながら処理を実行する演算部である。演算部１３は、それら複数の演算器の接続構成を示す構成情報と、その構成情報を特定する物理構成番号とを対応付けて保持しておき、物理構成番号が指定されると、その物理構成番号に対応する接続構成で演算器を接続する。
【００３２】
なお、演算部１３は、オブジェクトコードに含まれる全ての構成情報を保持するのではなく、その中の少なくとも一部を保持する。次に移行すべき状態の構成情報を保持してないときには、書換部１６０から構成情報の書き換えが行われる。
【００３３】
状態管理部１４は、オブジェクトコードに従って演算部１３の状態遷移を管理する管理部である。状態管理部１４は、オブジェクトコードに従って、また現在の状態に基づいて、次に移行すべき状態を決定する。そして、状態管理部１４は、次に移行すべき状態に対応する物理構成番号を演算部１３に対して指定すると共に、次に移行すべき状態をオブジェクトコード内で一意に特定する論理状態番号を判断部１５に出力する。
【００３４】
例えば、状態管理部１４は、オブジェクトコードから生成される、現在の状態の物理状態番号と次に移行すべき状態の物理構成番号および論理状態番号とを対応付けた物理状態遷移テーブルを保持しており、その物理状態遷移テーブルに基づいて、演算部１３に対して指定する物理構成番号と、判断部１５に出力する論理状態番号を決定すればよい。
【００３５】
判断部１５は、状態管理部１４から出力された論理状態番号に基づいて、次に移行すべき状態に対応する構成情報が演算部１３に保持されているか否か判断する。判断方法としては様々な方法に考えられる。
【００３６】
例えば、判断に必要な情報を予め保持しておく方法が考えられる。その場合、状態管理部１４が、論理状態番号と共に、次に移行すべき状態の物理状態番号を出力することにしてもよい。そして、判断部１５は、演算部１３に保持されている構成情報に関する物理状態番号と論理状態番号との対応関係を保持状態番号対応テーブルとして保持しておいてもよい。判断部１５は、その保持状態番号対応テーブルにおいて、状態管理部１４から出力された物理状態番号に対応する論理状態番号と、状態管理部１４から出力された論理状態番号とを比較することによって、次に移行すべき状態に対応する構成情報が演算部に保持されているか否か判断する。それらの論理状態番号が一致すれば、次に移行すべき状態に対応する構成情報が演算部１３に保持されていると判断できる。
【００３７】
また例えば、演算を用いて判断する方法も考えられる。その場合、例えば、状態管理部１４は、論理状態番号と共に、次に移行すべき状態の物理状態番号を出力することにしてもよい。そして、判断部１５は、状態管理部１４から出力された物理状態番号から、演算部１３に保持されている構成情報に関する論理状態番号を算出してもよい。判断部１５は、算出した論理状態番号と、状態管理部１４から出力された論理状態番号とを比較することによって、次に移行すべき状態に対応する構成情報が前記演算部に保持されているか否か判断する。
【００３８】
更に例えば、判断に必要な情報を予め保持しておく方法と、演算を用いて判断する方法とを組み合わせた方法も考えられる。
【００３９】
書換部１６は、次に移行すべき状態に対応する構成情報が演算部１３に保持されていないと判断部１５が判断したら、その構成情報と、その構成情報の物理構成番号とが含まれるように、演算部１３の構成情報を書き換える。
【００４０】
なお、判断部１５による判断の結果次第で、状態管理部１４から与えられている物理構成情報を用いて演算部１３が即座に処理を開始できるか、処理の前に、演算部１３に保持されている構成情報を書き換えるかが決まる。例えば、判断部１５は、次に移行すべき状態に対応する構成情報が前記演算部に保持されていないと判断したら演算部１３を一時的に停止する。そして、書換部１６が、演算部１３が一時的に停止している間に、構成情報とその構成情報の物理構成番号とを演算部１３に記録する。そのため、判断部１５による判断は、できるだけ短時間で完了する方法が好ましい。
【００４１】
以上説明したように、本実施形態によれば、状態管理部１４は次に移行すべき状態に対応する物理構成番号と論理状態番号の両方を出力する。そして、演算部１３は、状態管理部１４から、次に移行すべき状態に対応する物理構成番号を指定されるので、必要な構成情報が演算部１３に保持されていれば、即座に次の処理を実行することができる。また、判断部１が、状態管理部１４からの論理状態番号を用いて、次に移行すべき状態に対応する構成情報が演算部１３に保持されているか否か判断し、それが保持されていなければ、書換部１６が書き込むので、論理番号を用いた大規模なオブジェクトコードを利用することができる。その結果、本実施形態によれば、大規模なオブジェクトコードを用いることができ、かつ高速動作が可能な並列演算装置を提供することができる。
【００４２】
なお、本実施形態の並列演算装置１０に用いるためのオブジェクトコードを、情報処理装置で構成されたオブジェクトコード出力装置で生成することにしてもよい。その場合、オブジェクトコード出力装置２０は、並列演算装置１０の複数の演算器の接続構成を示す構成情報と、並列演算装置１０が各部の処理に利用するための情報を含む各種テーブルとを含んだオブジェクトコードを生成する。
【００４３】
例えば、オブジェクトコードには、構成情報に１対１で対応する論理状態番号と並列演算装置１０内で構成情報を特定するための物理構成番号とを対応付けた論理物理対応テーブルが含まれていればよい。書換部１６は、演算部１３に書き込もうとする構成情報に１対１で対応する論理状態番号に対応づけられた物理構成番号を論理物理対応テーブルから取得すればよい。
【００４４】
（第２の実施形態）
第２の実施形態では、より具体的な並列演算装置を例示する。
【００４５】
図２は、第２の実施形態による並列演算装置の構成例を示すブロック図である。図２に示すように、並列演算装置１００は、オブジェクトコード入力部１１０、オブジェクトコード記憶部１２０、演算部１３０、状態管理部１４０、判断部１５０、書換部１６０、およびデータ入出力部１７０を備えている。
【００４６】
オブジェクトコード入力部１１０は、動作に必要な論理物理割当済オブジェクトコードを外部から受け付ける。オブジェクトコード記憶部１２０は、入力された論理物理割当済オブジェクトコードを保持する。
【００４７】
状態管理部１４０は、演算部１３０の構成をクロックサイクル毎に指定する。演算部１３０は、クロックサイクル毎に所望の回路を構成して処理を実行する。データ入出力部１７０は、演算部１３０が処理を実行する際に外部回路（不図示）に処理データを出力し、また外部回路から処理データを入力する。
【００４８】
判断部１５０は、所望の回路を構成するための構成情報が演算部１３０に存在するかどうかを判断する。書換部１６０は、必要な構成情報が演算部１３０に存在しないと判断部１５０によって判断されたら、オブジェクト記憶部１２０から必要な構成情報を取り込み、演算部１３０の構成情報を書き換える。
【００４９】
オブジェクトコード記憶部１２０で保持している論理物理割当済オブジェクトコードは、並列演算装置１００が所望の動作を行うための情報である。図３は、論理物理割当済オブジェクトコードの内容の一例を示す図である。図３を参照すると、論理物理割当済オブジェクトコードは、論理状態遷移テーブル１２１、論理構成情報テーブル１２２、および論理物理対応テーブル１２３で構成される。
【００５０】
論理状態遷移テーブル１２１は、現論理状態番号に対応する、次論理状態番号、次物理状態番号、および次物理構成番号を、イベント毎に表したテーブルである。現論理状態番号は、現在の動作状態を大域的に表す番号である。ここで大域的に表すとは、オブジェクトコード全体の中で特定するという意味である。次論理状態番号は、次の動作状態を大域的に表す番号である。次物理状態番号は、演算部１３０の物理構成情報テーブルにおいて次論理状態番号に一意に対応する番号である。次物理構成番号は、演算部１３０の物理構成情報テーブルにおいて次論理状態番号に一意に対応する番号である。
【００５１】
論理構成情報テーブル１２２は、論理状態遷移テーブル１２１で用いられている論理状態番号に対応する構成情報を表すテーブルである。
【００５２】
論理物理対応テーブル１２３は、論理状態遷移テーブル１２１で用いられている論理状態番号に対応する物理状態番号および物理構成番号を表すテーブルである。
【００５３】
以下、各部の詳細について説明する。
【００５４】
演算部１３０は、複数の演算器１３１と、演算器１３１の接続を切り換える相互接続部１３２と、物理構成情報テーブル保持記憶装置１３３と、現物理構成番号保持記憶装置１３４と、を有する。
【００５５】
物理構成情報テーブル保持記憶装置１３３は物理構成情報テーブルを保持する。物理構成情報テーブルは、演算器１３１に対する演算命令及び相互接続部１３２の接続情報を含む少なくとも一つの構成情報を、現物理構成番号保持記憶装置１３４から与えられる構成番号で指定する。
【００５６】
現物理構成番号保持記憶装置１３４は、現在の並列演算装置１００の動作状態を局所的に表す物理構成番号を保持する。ここで局所的に表すとは、演算器１３０の中で特定するという意味である。
【００５７】
そして、演算部１３０は、クロックサイクル毎に演算器１３１及び相互接続部１３２で所望の回路を実現して演算を実行し、演算結果を表すイベント信号を状態管理部１４０に出力する。
【００５８】
状態管理部１４０は、現物理状態番号保持記憶装置１４１と、物理状態遷移テーブル保持記憶装置１４２と、を有する。
【００５９】
現物理状態番号保持記憶装置１４１は、現在の並列演算装置１００の動作状態を局所的な状態番号（物理状態番号）として保持している。
【００６０】
物理状態遷移テーブル保持記憶装置１４２は物理状態遷移テーブルを保持する。物理状態遷移テーブルは、現物理状態番号保持記憶装置１４１から与えられる物理状態番号と、演算部１３０から与えられるイベント信号の番号とに基づいて、次の動作状態を大域的に表す次論理状態番号と、次論理状態番号に一意に対応する次物理状態番号と、次論理状態番号に一意に対応する構成情報を指定するための次物理構成番号とを出力する。
【００６１】
そして、状態管理部１４０は、クロックサイクル毎に動作する。クロックサイクル毎の動作において、状態管理部１４０は、演算部１３０から与えられるイベント信号に応じて、次論理状態番号と次物理状態番号と次物理構成番号とを生成する。さらに、状態管理部１４０は、現物理状態番号保持記憶装置１４１の内容を次物理状態番号で更新し、現物理構成番号保持記憶装置１３４の内容を次物理構成番号で更新する。さらに、状態管理部１４０は、次物理状態番号及び次論理状態番号を判断部１５０に出力する。
【００６２】
判断部１５０は、保持状態番号対応テーブル記憶装置１５１と、比較器１５２と、書換要求制御部１５３と、比較器１５２の動作タイミングを１クロックサイクルだけ遅延させるためのレジスタ１５４、１５５と、を有する。
【００６３】
保持状態番号対応テーブル記憶装置１５１は、演算部１３０の物理構成情報テーブル保持記憶装置１３３で現在保持している構成情報を表す物理状態番号とそれに対応する論理状態番号の組を保持する。
【００６４】
比較器１５２は、状態管理部１４０から与えられる物理状態番号及び論理状態番号が保持状態番号対応テーブル記憶装置１５１内に存在するかどうかを判断する。
【００６５】
書換要求制御部１５３は、それらの状態番号が存在しないと判断すると比較器１５２により判断されると、書換部１６０に対して、その存在しなかった論理状態番号とともに書換要求を発行する。また、それと共に、書換要求制御部１５３は、書換部１６０から書換終了通知が発行されるまで、演算部１３０及び状態管理部１４０の動作を一時的に停止させる。
【００６６】
書換部１６０は、判断部１５０から受信した書換要求および論理状態番号に基づいて、下記の（１）〜（４）の手順で物理状態遷移テーブル保持記憶装置１４２の一部と、物理構成情報テーブル保持記憶装置１３３の一部と、保持状態番号対応テーブル記憶装置１５１の一部を書き換える。
【００６７】
（１）  入力された論理状態番号から、オブジェクトコード記憶部１２０に保持されている論理物理対応テーブル１２３を参照して、物理状態番号と物理構成番号を得る。
【００６８】
（２）  入力された論理状態番号に対応する状態遷移情報を、オブジェクトコード記憶部１２０に保持されている論理状態遷移テーブル１２１から取得し、（１）で取得した物理状態番号に対応する物理状態遷移テーブル保持記憶装置１４２のエントリを更新する。論理状態番号に対応する状態遷移情報とは、その論理状態番号の状態を含む状態遷移を示す情報である。
【００６９】
（３）  入力された論理状態番号に対応する構成情報を、オブジェクトコード記憶部１２０に保持されている論理構成情報テーブル１２２から取得し、（１）で取得した物理構成番号に対応する物理構成情報テーブル保持記憶装置１３３のエントリを更新する。
【００７０】
（４）  入力された論理状態番号と（１）で取得した物理状態番号との組で、対応する保持状態番号対応テーブル記憶装置１５１のエントリを更新する。
【００７１】
（第３の実施形態）
第３の実施形態では並列演算装置１００を含む情報処理システムを例示する。
【００７２】
図４は、第３の実施形態による情報処理システムの構成例を示すブロック図である。図４に示すように、情報処理システム２００は、データ供給装置２１０、情報処理装置２２０、オブジェクトコード供給装置２３０、並列演算装置１００、および外部入出力装置２４０を備えている。並列演算装置１００は第２の実施形態のものと同じものである。
【００７３】
情報処理装置２２０は、データ入力部２２１と、オブジェクトコード変換部２２２と、データ出力部２２３とを備えている。
【００７４】
データ入力部２２１は、外部からデータの入力を受け付ける。ここでは論理物理割当前オブジェクトコードと論理物理対応情報が入力される。論理物理割当前オブジェクトコードは、図３に示した論理物理割当前オブジェクトコードを生成するもととなるオブジェクトコードである。つまり、本実施形態の情報処理装置２２０は、論理物理割当前オブジェクトコードを論理物理割当済オブジェクトコードに変換する装置である。
【００７５】
論理物理割当前オブジェクトコードは、具体例として、上述した第２の背景技術で生成されるオブジェクトコードである。この論理物理割当前オブジェクトコードは、第１の背景技術の並列演算装置の状態管理部に設定される状態遷移テーブルと、第１の背景技術の並列演算装置の演算部に設定される構成情報テーブルと、で構成される。
【００７６】
オブジェクトコード変換部２２２は、データ入力部２２１に入力された論理物理割当前オブジェクトコードと論理物理対応情報から、論理物理割当済オブジェクトコードを生成する。
【００７７】
具体例としては、データ入力部２２１へは、構成番号対応テーブルと、構成情報テーブルと、状態遷移テーブルとが入力される。構成番号対応テーブルでは、並列演算装置１００の各状態を示す状態番号と演算部１３０の各構成を示す構成番号とが対応付けられている。構成情報テーブルでは、構成番号とその構成番号毎の演算部１３０の構成を記述した構成情報とが対応付けられている。状態遷移テーブルでは、現在の状態番号と少なくとも次の構成番号とが対応付けられている。
【００７８】
オブジェクトコード変換部２２２は、入力された状態番号を物理状態番号としてその物理状態番号を一意に特定する論理状態番号を定める。また、オブジェクトコード変換部２２２は、入力された構成番号を物理構成番号としてその物理構成番号を一意に特定する論理構成番号を定める。続いて、オブジェクトコード変換部２２２は、論理状態番号と構成情報とを対応づけた論理構成情報テーブルと、論理状態番号と少なくとも物理構成番号とを対応付けた論理物理対応テーブルと、現在の論理状態番号と少なくとも次の物理構成番号および論理状態番号とを対応付けた論理物理割当済オブジェクトコードと、を生成する。
【００７９】
データ出力部２２３は、オブジェクトコード変換部２２２で生成された論理物理割当済オブジェクトコード等を外部に出力する。
【００８０】
図５は、情報処理装置２２０のハードウェア構成の一例を示す図である。情報処理装置２２０は、ＣＰＵ６０１、バスライン６２０を介してＣＰＵ６０１に接続されたＲＡＭ６０２、ＲＯＭ６０３、ＨＤＤ６０４、ＦＤ６１１が交換自在に装填されるＦＤＤ（ＦＤ  Ｄｒｉｖｅ）６０６、ＣＤ−ＲＯＭ６１２が交換自在に装填されるＣＤドライブ６０７、ディスプレイ６０８、キーボード６０９、マウス６１０、Ｉ／Ｆユニット６０５等を備えたコンピュータで実現できる。
【００８１】
図５に示した構成の情報処理装置２２０では、ＲＡＭ６０２、ＲＯＭ６０３、ＨＤＤ６０４、ＦＤ６１１、ＣＤ−ＲＯＭ６１２等が記録媒体に相当し、これらの少なくとも１つに、ＣＰＵ６０１で実行するためのプログラムや各種データが格納されている。
【００８２】
例えば、ＣＰＵ６０１に各種の処理を実行させるためのプログラムは、当初はＦＤ６１１あるいはＣＤ−ＲＯＭ６１２等の記録媒体に格納されている。そのプログラムは、実行前にＨＤＤ６０４にインストールされ、情報処理装置２２０の起動時にＲＡＭ６０２に複写されてＣＰＵ６０１に読み出される。
【００８３】
このようにＣＰＵ６０１がプログラムを読み出して各種の処理を実行することにより、本実施形態の情報処理装置２２０は、図４に示したデータ入力部２２１、オブジェクトコード変換部２２２、およびデータ出力部２２３として動作する。
【００８４】
データ供給装置２１０は、例えば論理物理割当前オブジェクトコード及び論理物理対応情報が格納されたＦＤ６１１であり、これらのデータを情報処理装置２２０に供給する。
【００８５】
情報処理装置２２０のデータ入力部２２１は、ＲＡＭ６０２に格納されたプログラムにしたがってＣＰＵ６０１によりＦＤＤ６０６を制御することで実現される。データ入力部２２１は、データ供給装置２１０に格納された論理物理割当前オブジェクトコード及び論理物理対応情報を取得する。
【００８６】
オブジェクトコード変換部２２２は、プログラムにしたがってＣＰＵ６０１が処理を実行することで実現される。オブジェクトコード変換部２２２は、データ入力部１２１で取得された論理物理割当前オブジェクトコード及び論理物理対応情報を論理物理割当済オブジェクトコードに変換する。
【００８７】
データ出力部２２３は、プログラムにしたがってＣＰＵ６０１がＩ／Ｆユニット６０５のデータ出力を制御することで実現される。データ出力部２２３は、オブジェクトコード変換部２２２で得られた論理物理割当済オブジェクトコードをオブジェクトコード供給装置２３０に出力する。
【００８８】
オブジェクトコード供給装置２３０は、データ出力部２２３のＩ／Ｆユニット６０５と並列演算装置１００とを接続するコネクタ（不図示）等に相当し、情報処理装置２２０から出力される論理物理割当済オブジェクトコードを並列演算装置１００に供給する。
【００８９】
本実施形態の情報処理装置２２０に入力される論理物理対応情報は、論理物理割当前オブジェクトコードの状態番号である論理状態番号を、並列演算装置１００の物理状態遷移テーブル保持記憶装置１４２で保持されるエントリ番号を表す物理状態番号と、物理構成情報テーブル保持記憶装置１３３で保持されるエントリ番号を表す物理構成番号と、に一意に対応させる情報である。
【００９０】
オブジェクトコード変換部２２２は、以下に示すような（１）〜（２）の工程で論理物理割当前オブジェクトコードと論理物理対応情報を、論理物理割当済オブジェクトコードに変換する。
【００９１】
（１）  論理物理対応情報を参照して、論理物理割当前オブジェクトコードの状態遷移テーブルにおいて、各論理状態番号のエントリにおける全てのイベント信号についての遷移先に、その論理状態番号に対応する次物理状態番号を追加する。
【００９２】
（２）  論理物理対応情報を参照して、論理物理割当前オブジェクトコードの状態遷移テーブルにおいて、各論理状態番号のエントリにおける全てのイベント信号についての遷移先に、その論理状態番号に対応する次物理構成番号を追加する。
【００９３】
（第４の実施形態）
第４の実施形態では、次に移行すべき状態に対応する構成情報が保持されているか否かの判断を演算によって行う並列演算装置を例示する。第４の実施形態の並列演算装置は、第１の実施形態における判断部１５０に相当する判断部が演算による判断を行う点で第２の実施形態のものと異なる。
【００９４】
図６は、第４の実施形態による並列演算装置の判断部１５０´の構成を示すブロック図である。図６を参照すると、判断部１５０′は、図２における保持状態番号対応テーブル記憶装置１５１と比較器１５２の代わりに、論理物理状態番号比較部１５６を備える。
【００９５】
本実施形態では、論理物理割当済オブジェクトコードにおける論理状態番号と物理状態番号とが、論理状態番号に対して所定の演算を行うことで物理状態番号が算出されるという関係にあるものとする。所定の演算は任意であり、例えば、四則演算、ビットシフト、論理和、論理積、または論理否定、あるいはそれらの任意の組合せなどとすればよい。
【００９６】
論理物理状態番号比較部１５６は、状態管理部１４０から論理状態番号と物理状態番号とを与えられるので、与えられる論理状態番号に対して所定の演算を行って得られた物理状態番号と、与えられた物理状態番号とを比較する。その比較結果が、その物理状態番号に対応する構成情報が演算部１３０に保持されているか否かの判断結果となる。論理物理状態番号比較部１５６は、その比較結果を書換要求制御部１５３に出力する。
【００９７】
（実施例）
第３の実施形態に示した情報処理システムにおける情報処理装置２２０および並列演算装置１００の具体的な実施例について説明する。
【００９８】
図７は、データ供給装置２１０から供給される論理物理割当前オブジェクトコードの一例を示す図である。図８は、図７の論理物理割当前オブジェクトコードによる状態遷移を示す図である。図９は、データ供給装置２１０から供給される論理物理対応情報の一例を示す図である。
【００９９】
図７に示すように、論理物理割当前オブジェクトコードは、状態遷移テーブルと、構成番号対応テーブルと、構成情報テーブルで構成される。また、図９に示すように、論理物理対応情報は、論理物理状態番号対応情報と、論理物理構成番号対応情報で構成される。
【０１００】
情報処理装置２２０は、これら論理物理割当前オブジェクトコードおよび論理物理対応情報から、並列演算装置１００で使用される論理物理割当済オブジェクトコードにおける論理状態遷移テーブル及び論理物理対応テーブルを生成する。図１０Ａは、論理物理割当済オブジェクトコードにおける論理状態遷移テーブルを示す図である。図１０Ｂは、論理物理割当済オブジェクトコードにおける論理物理対応テーブルを示す図である。
【０１０１】
情報処理装置２２０は、図１０Ａの論理状態遷移テーブルの現論理状態番号０のエントリを以下の（１）〜（３）のようにして生成する。
【０１０２】
（１）  論理物理割当前オブジェクトコードの状態遷移テーブルの現状態番号０のイベント０のエントリの次状態番号は１である。そのため、情報処理装置２２０は、論理状態遷移テーブルの現論理状態番号０のイベント０のエントリの次論理状態番号を１に設定する。
【０１０３】
（２）  論理物理割当前オブジェクトコードの状態遷移テーブルの現状態番号０のイベント０のエントリの次状態番号は１であり、論理物理状態番号対応情報の論理状態番号１のエントリの物理状態番号は１である。そのため、情報処理装置２２０は、論理状態遷移テーブルの現論理状態番号０のイベント０のエントリの次物理状態番号を１に設定する。
【０１０４】
（３）  論理物理割当前オブジェクトコードの状態遷移テーブルの現状態番号０のイベント０のエントリの次構成番号は０であり、論理物理構成番号対応情報の論理構成番号０のエントリの物理構成番号は０である。そのため、情報処理装置２２０は、論理状態遷移テーブルの現論理状態番号０のイベント０のエントリの次物理構成番号を０に設定する。
【０１０５】
以上の処理を、全ての現論理状態番号と全てのイベント番号のエントリについて行うことにより論理状態遷移テーブルが生成される。
【０１０６】
情報処理装置２２０は、図１０Ｂの論理物理対応テーブルの論理状態番号１のエントリを以下の（１）〜（２）のようにして生成する。
【０１０７】
（１）  論理物理状態番号対応情報の論理状態番号１のエントリの物理状態番号は１である。そのため、情報処理装置２２０は、論理物理対応テーブルの論理状態番号１のエントリの物理状態番号を１に設定する。
【０１０８】
（２）  論理物理割当前オブジェクトコードの構成番号対応テーブルの現状態番号１のエントリの構成番号は０であり、論理物理構成番号対応情報の論理構成番号０のエントリの物理構成番号は０である。そのため、情報処理装置２２０は、論理物理対応テーブルの論理状態番号１のエントリの物理構成番号を０に設定する。
【０１０９】
以上の処理を、全ての論理状態番号のエントリについて行うことにより論理物理対応テーブルが生成される。
【０１１０】
並列演算装置１００で実行される論理物理割当済オブジェクトコードは、上述したようにして生成した論理状態遷移テーブルおよび論理物理対応テーブルと、論理物理割当前オブジェクトコードに含まれている論理構成情報テーブルとで構成される。
【０１１１】
次に、並列演算装置１００が論理物理割当済オブジェクトコードをで実行する様子について説明する。
【０１１２】
図１１は、図１０Ｂの論理物理割当済オブジェクトコードのうち、論理状態０から論理状態１まで実行した直後の並列演算装置１００の状態を示す図である。演算部１３０からはイベント０が出力されているとする。
【０１１３】
オブジェクトコード記憶部１２０には、論理物理割当済オブジェクトコードの全体が格納されている。
【０１１４】
保持状態番号対応テーブル記憶装置１５１には、論理状態番号０及び１が格納され、また、それに対応する物理状態番号０及び１が格納されている。
【０１１５】
物理状態遷移テーブル保持記憶装置１４２には、物理状態番号０及び１のエントリが格納されている。
【０１１６】
物理構成情報テーブル保持記憶装置１３３には、物理構成番号０のエントリが格納されている。
【０１１７】
そして、上述したように、図１１は論理状態０と論理状態１を実行した直後であるため、現物理状態番号記憶装置１４１には１が格納され、現物理論理番号記憶装置１３４には０が格納されている。
【０１１８】
このとき、状態管理部１４０から出力される次論理状態番号は２であり、次物理状態番号は０であり、次物理構成番号は０である。したがって、次のクロックサイクルでは、現物理状態番号保持記憶装置１４１と現物理構成番号保持記憶装置１３４はそれぞれ０と０に更新される。
【０１１９】
図１２は、図１１の次のクロックサイクルでの並列演算装置１００の状態を示す図である。図１２の現物理状態番号保持記憶装置１４１は０を保持し、現物理構成番号保持記憶装置１３４は０を保持している。そのため、演算器１３１及び相互接続部１３２は演算Ａの回路を構成して演算を実行する。
【０１２０】
しかし、判断部１５０の保持状態番号テーブル記憶装置の物理状態番号０のエントリは０であり、記憶装置１５５で保持している論理状態番号２とは異なるので、比較器１５２は不一致を出力する。不一致が入力された書換要求制御部１５３は、停止信号を演算部１３０と状態管理部１４０に出力することにより演算と状態遷移を一時停止させ、更に、書換部１６０に対して、不一致である論理状態番号２とともに書換要求を出力する。
【０１２１】
書換部１６０は、その書換要求と論理状態番号２を受け取り、オブジェクトコード記憶部１２０に格納されている論理状態遷移テーブル１２１の現論理状態番号２のエントリを取得する。続いて、書換部１６０は、オブジェクトコード記憶部１２０に格納されている論理物理対応テーブル１２３を参照することにより、論理状態番号２に対応する物理状態番号０を取得し、物理状態遷移テーブル保持記憶装置１４２の現物理状態番号０のエントリに先程取得したエントリを上書きする。
【０１２２】
また、書換部１６０は、オブジェクトコード記憶部１２０に格納されている論理構成情報テーブル１２２の論理状態番号２の構成情報を取得する。続いて、書換部１６０は、オブジェクトコード記憶部１２０に格納されている論理物理対応テーブルを参照することにより、論理状態番号２に対応する物理構成番号０を取得し、物理構成情報テーブル保持記憶装置１３３の物理構成番号０の構成情報に先程取得した構成情報を上書きする。
【０１２３】
また、書換部１６０は、オブジェクトコード記憶部１２０に格納されている論理物理対応テーブル１２３を参照することにより、論理状態番号２に対応する物理状態番号０を取得し、保持状態番号対応テーブル記憶装置１５１の物理状態番号０に対応する論理状態番号に２を上書きする。
【０１２４】
書換部１６０は、物理状態遷移テーブル保持記憶装置１４２、物理構成情報テーブル保持記憶装置１３３及び保持状態番号対応テーブル記憶装置１５１の書換えを終了すると、書換完了通知を書換要求制御部１５３に通知する。
【０１２５】
書換要求制御部１５３は、書換完了通知を受け取ると、演算部１３０と状態管理部１４０に出力していた停止信号を無効にすることにより、並列演算装置１００の演算と状態遷移を再開させる。
【０１２６】
図１３は、書換部１６０が動作した後の並列演算装置１００の状態を示す図である。図１３において、テーブルのハッチングされているエントリが参照され、更新されたエントリである。ここで、物理構成情報テーブル保持記憶装置１３３は、更新後も同じ内容であるため、必ずしも上書きしなくてもよい。
【０１２７】
以上のような動作を繰り返すことで、並列演算装置１００はオブジェクトコード記憶部１２０に格納されている論理物理割当済オブジェクトコードを順次実行する。
【０１２８】
図１４は、本実施例の並列演算装置１００の動作を示すタイミングチャートである。
【０１２９】
並列演算装置１００にて状態の遷移が発生すると、現物理状態番号保持記憶装置１４１に保持されている現物理状態番号と、現物理構成番号保持記憶装置１３４に保持されている現物理構成番号が更新される。
【０１３０】
物理構成情報テーブル保持記憶装置１３３は現物理状態番号に対応した構成情報を演算器１３１及び相互演算部１３２に出力する。演算器１３１及び相互演算部１３２は、入力された構成情報したがって回路を構成して演算を行い、演算結果の一部であるイベント信号を状態管理部１４０へ出力する。
【０１３１】
状態管理部１４０は、入力されたイベント信号と現物理状態番号に基づいて、次物理状態番号及び次物理構成番号を出力する。それらが次のクロックサイクルにて並列演算装置１００が遷移すべき状態となる。
【０１３２】
このとき、判断部１５０は、１つ前のクロックサイクルで保持した物理状態番号及び論理状態番号と、保持状態番号対応テーブル記憶装置１５１で保持しているそれらとが不一致であった場合、並列演算装置１００の演算と状態遷移を停止させる。
【０１３３】
以上説明したように、上述した各実施形態による並列演算装置１００は、論理物理対応情報を用いて、論理構成番号で、並列演算装置１００の物理構成番号を間接的に指定することができる。そのため、並列演算装置１００に複数のオブジェクトコードを搭載する場合でも物理構成番号が重なることが無い。そして、それらの構成番号が重ならないように複数のオブジェクトコードを１つのオブジェクトコードに変換する必要も無い。
【０１３４】
また、各実施形態による並列演算装置１００は、物理構成番号を論理構成番号で間接的に指定することができるため、並列演算装置１００で保持可能な構成情報の数を越えるような大規模なオブジェクトコードを実行することができる。
【０１３５】
また、第２の実施形態による並列演算装置１００は、判断部１５０がテーブルを参照して論理状態番号が一致なのか不一致なのかを判断するので、ＣＡＭ等の特殊なメモリを用いて論理番号から物理番号に変換する構成が必要なく、回路規模および動作遅延を小さくすることができる。
【０１３６】
また、第３の実施形態による並列演算装置１００は、判断部１５０が演算によって論理状態番号が一致なのか不一致なのかを判断するので、回路規模と動作遅延をより小さくすることができる。
【０１３７】
また、各実施形態の情報処理装置２００は、論理物理割当前オブジェクトコードに対して論理物理対応情報を付加することにより、並列演算装置１００が効率よく動作するための論理物理割当済オブジェクトコードを生成することができる。
【０１３８】
なお、本発明のデータ処理システムが備える各部は、その機能を実現するように形成されていればよい。例えば、所定の機能を実現する専用のハードウェア、プログラムにしたがって処理を実行することで所定の機能を実現するデータ処理装置、プログラムによりデータ処理装置の内部で実現される所定の機能、及びこれらの組み合わせ等が許容される。また、本発明のデータ処理システムが備える各部は、個々に独立した存在である必要もなく、ある部分が他の部分の一部であってもよい。
【０１３９】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細は本願発明のスコープ内で当業者が理解し得る様々な変更が可能である。
【０１４０】
この出願は、２００９年１月３０日に出願された日本出願特願２００９−０１９５６１を基礎として優先権の利益を主張するものであり、その開示の全てを引用によってここに取り込む。
【図１】
2010087098.tif 000003
【図２】
2010087098.tif 000004
【図３】
2010087098.tif 000005
【図４】
2010087098.tif 000006
【図５】
2010087098.tif 000007
【図６】
2010087098.tif 000008
【図７】
2010087098.tif 000009
【図８】
2010087098.tif 000010
【図９】
2010087098.tif 000011
【図１０Ａ】
2010087098.tif 000012
【図１０Ｂ】
2010087098.tif 000013
【図１１】
2010087098.tif 000014
【図１２】
2010087098.tif 000015
【図１３】
2010087098.tif 000016
【図１４】
2010087098.tif 000017
【国際調査報告】
2010087098.tif 000018
2010087098.tif 000019