(57)【特許請求の範囲】
【請求項１】
複数の演算器及び演算器の接続を切り換える相互接続部を備え、前記演算器に対する演算命令及び前記演算器の接続関係を示す情報を含む少なくとも一つの構成情報から成るオブジェクトコードにしたがって各種の処理を実行するための回路を変更することが可能なデータ処理装置であって、
現在の動作状態、次に遷移する状態の候補群及び前記演算器から発行されるイベント信号に基づき、次の動作状態で用いる構成情報の、前記オブジェクトコードに含まれる各構成情報の相互関係の情報である論理番号を決定する状態管理部と、
前記論理番号を、対応する前記構成情報が実際に保存された位置を示す実番号に変換するための変換情報を備え、前記状態管理部で決定した論理番号に対応する実番号を出力する構成番号変換部と、
前記構成情報が格納され、前記構成番号変換部から出力された実番号に対応する構成情報を前記演算器及び前記相互接続部へ通知する構成情報記憶部と、
前記演算器及び前記相互接続部と前記状態管理部との間に挿入される、前記状態管理部で制御可能な状態の遷移よりも規模の小さい状態の遷移を制御する補助制御部と、
を有するデータ処理装置。
【請求項２】
前記状態管理部で決定した論理番号に対応する実番号が無い場合、該実番号に対応する構成情報を前記構成情報記憶部に書き込むと共に、次に遷移する状態以降の状態で必要となる構成情報を予測する書換決定部を有する請求項１記載のデータ処理装置。
【請求項３】
前記状態管理部で決定した論理番号に対応する実番号が無い場合、該実番号に対応する構成情報を前記構成情報記憶部に書き込み、前記構成番号変換部が備える、前記論理番号から対応する実番号に変換するための変換情報を書き換える構成書換部を有する請求項１記載のデータ処理装置。
【請求項４】
前記構成情報が格納される、データ処理装置から独立した記憶手段を備え、
前記構成書換部は、
前記状態管理部で決定した論理番号に対応する実番号が無い場合、該実番号に対応する構成情報を前記記憶手段から読み出す請求項３記載のデータ処理装置。
【請求項５】
前記構成書換部は、
前記状態管理部で決定した論理番号に対応する実番号が無い場合、該実番号に対応する構成情報と共に、次に遷移する状態以降の状態で必要となる構成情報も併せて前記構成情報記憶部に書き込む請求項３または４記載のデータ処理装置。
【請求項６】
前記補助制御部は、
前記状態管理部で制御する状態遷移の場合、前記演算器の動作を停止させ、
前記構成情報記憶部から前記実番号に対応する構成情報が出力されると、前記演算器の動作を再開させる請求項３から５のいずれか１項記載のデータ処理装置。
【請求項７】
前記補助制御部は、
前記演算器へのクロックの供給を止めることで前記演算器の動作を停止させる請求項６記載のデータ処理装置。
【請求項８】
前記補助制御部は、
前記演算器が備える記憶素子の書き換えを禁止することで前記演算器の動作を停止させる請求項６または７記載のデータ処理装置。
【請求項９】
前記補助制御部は、
前記演算器と外部とデータを送受信するための外部ポートからのデータ入力を止めることで前記演算器の動作を停止させる請求項６から８のいずれか１項記載のデータ処理装置。
【請求項１０】
前記補助制御部がハードワイヤードで形成された請求項６から９のいずれか１項記載のデータ処理装置。
【請求項１１】
前記補助制御部がロジックアレイで形成された請求項５から９のいずれか１項記載のデータ処理装置。
【請求項１２】
前記構成書換部は、
次に遷移する状態以降の状態で必要となる構成情報として、前記演算部が要求した論理番号に対応する実番号が無い場合、該実番号に対応する構成情報を前記構成情報記憶部に書き込む請求項５から１１のいずれか１項記載のデータ処理装置。
【請求項１３】
前記構成書換部は、
次に遷移する状態以降の状態で必要となる構成情報として、前記演算部が要求した論理番号に対応する構成情報を前記構成情報記憶部に書き込む請求項５から１１のいずれか１項記載のデータ処理装置。
【請求項１４】
前記状態管理部は、
前記補助制御部で制御を開始する状態を指定する請求項１から１３のいずれか１項記載のデータ処理装置。
【請求項１５】
前記演算器はプロセッサエレメントであり、
前記相互接続部にスイッチを含む請求項１から１４のいずれか１項記載のデータ処理装置。
【請求項１６】
前記演算器及び前記相互接続部がロジックアレイで形成された請求項１から１５のいずれか１項記載のデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の処理を実行する回路の変更が可能な再構成デバイスから成るデータ処理装置に関する。
【背景技術】
【０００２】
情報処理装置は、その利用範囲が広がり、より高度な演算処理あるいは画像や動画のように大量のデータを高速に処理する能力が要求されている。このような要求を満たすための手法として、従来、ホストプロセッサとは別に特定の演算や処理を専用に実行するＤＳＰ（Digital  Signal  Processor）やＡＳＩＣ（Application  Specific  Integrated  Circuit）等を備え、ＣＰＵ等のホストプロセッサの処理負荷を軽減することで情報処理装置としての処理能力を向上させた構成が知られている。【０００３】
しかしながら、近年の情報処理装置は、これら画像、動画、音声、音楽等のマルチメディアデータに対して様々な規格の圧縮／伸長処理や演算処理等が必要になり、またインターネット等のネットワークを介して各種データを送受信するための通信処理にも様々なプロトコルが用いられるようになってきている。さらに、ネットワーク上で送受信される情報の安全性が問題となっているため、情報セキュリティのための暗号化処理やそれを解読するための復号処理等も必要となる。そのため、これらの処理に合わせて多数のＤＳＰやＡＳＩＣ等を設けていたのでは、情報処理装置の回路規模やコストが膨大なものとなってしまう。【０００４】
そこで、情報処理装置にＦＰＧＡ（Field  Programmable  Gate  Array）やＣＰＬＤ（Complex  Programmable  Logic  Device）あるいはＤＲＰ（Dynamically  Reconfigurable  Processor）等の再構成デバイスから成るデータ処理装置を備え、必要に応じてデータ処理装置内のプログラムを書き換えて処理を実行させることにより、情報処理装置のスループットを向上させると共に、コストを低減しつつ様々な処理要求への対応を可能にした構成が知られている。【０００５】
再構成デバイスは、内部にプログラム（オブジェクトコード）を格納するための内部メモリを備え、ＣＰＵ等の制御により外部メモリに格納されたオブジェクトコードを内部メモリへロードし、ロードしたオブジェクトコードにしたがって内部に回路を構成し、該回路により入力されたデータに対して処理を実行する。【０００６】
なお、ＤＲＰについては、例えば特許文献１（特開２０００−１３８５７９号公報）、特許文献２（特開２０００−２２４０２５号公報）、特許文献３（特開２０００−２３２３５４号公報）、特許文献４（特開２０００−２３２１６２号公報）、特許文献５（特開２００３−０７６６６８号公報）、特許文献６（特開２００３−０９９４０９号公報）及び非特許文献１（Hideharu  Amano,  Akiya  Jouraku,  Kenichiro  Anjo,  "A  Dynamically  Adaptive  Hardware  on  Dynamically  Reconfigurable  Processor",  IEICE  Transactions,  Vol.  E86-B,  No.12,  pp.  3385-3391,  2003.）にその詳細が記載されている。ＤＲＰは、演算処理を実行する演算部と、演算部の動作を制御する制御部とを備えた構成である。演算部は、小規模の複数の演算器とそれらの接続を切り替える相互接続部とを備え、各演算器及び相互接続部に対する命令コードを切り換えることで各種の処理を実現する。【０００７】
ＤＲＰで実行可能な処理には様々な種類があり、例えば処理の途中でメモリから他のデータを読み出し、それらのデータを用いて処理を続行する場合もある。ＤＲＰは、内部メモリを備えているが、その記憶容量は限定されていることが多い。したがって、ＤＲＰによる処理では、処理途中で大きな記憶容量を必要とするテーブルやデータを参照する際に、それらが格納されたメモリへアクセスする必要がある。そのための処理方法については、例えば特許文献７（特開２００５−２２２１４１号公報）及び特許文献８（特開２００５−２２２１４２号公報）に記載されている。【０００８】
上記した従来のデータ処理装置では、処理対象となるデータに応じて生成された１つ以上の構成情報から成るオブジェクトコードに基づき処理を実行する場合、データ処理装置に格納された構成情報の位置を直接指定しつつ、処理を実行する手法が採られている。【０００９】
ここで、構成情報とは、ある時点における演算器に対する演算命令、相互接続部における各演算器の接続関係を示す情報、イベント信号とそれに対応して次に選択すべき構成情報の関係を示す情報等を備えた、データ処理装置内に仮想的に回路を構成するために必要な情報である。オブジェクトコードは、所望の処理を実行するために必要な構成情報の集まりを指す。【００１０】
しかしながら、このような方法では、データ処置装置に複数のオブジェクトコードを搭載すると、それらのオブジェクトコードが備える構成情報の格納位置が重なる場合は、それらが重ならないようにオブジェクトコードを合成し直す必要がある。【００１１】
また、データ処理装置に複数のオブジェクトコード、あるいは大規模なオブジェクトコードを搭載した結果、データ処理装置で保持可能な構成情報数を超えると、データ処理装置では、動作の停止、保持しているオブジェクトコードの入れ替え、再始動等の一連の処理を実行する必要がある。この動作のために外部にＭＰＵ等の処理装置が必要となる。その際、従来のデータ処理装置では、オブジェクトコードの合成時に決定した場所にしか構成情報を搭載できないため、同じ機能のコードから成る構成情報であっても、違う場所に搭載する場合は同じ機能のコードから成る構成情報を複数用意する必要がある。その場合、構成情報の共有化ができないため、データ処置装置で同じ構成情報を複数保持したり、同じ構成情報を再度書き換える等の処理が発生するため、処理が遅くなる問題があった。
【発明の開示】
【００１２】
そこで、本発明は、構成情報の格納先の制限を無くすと共に構成情報の共有化が可能なデータ処理装置を提供することを目的とする。
【００１３】
上記目的を達成するため本発明では、データ処理装置に、現在の動作状態、次に遷移する状態の候補群及び演算器から発行されるイベント信号に基づき、次の動作状態で用いる構成情報の、オブジェクトコードに含まれる各構成情報の相互関係の情報である論理番号を決定する状態管理部と、論理番号を、対応する構成情報が実際に保存された位置を示す実番号に変換するための変換情報を備え、状態管理部で決定した論理番号に対応する実番号を出力する構成番号変換部と、構成情報が格納され、構成番号変換部から出力された実番号に対応する構成情報を演算器及び相互接続部へ通知する構成情報記憶部とを有する。
【００１４】
このような構成では、オブジェクトコードに含まれる構成情報を論理番号で表せば、複数のオブジェクトコードに含まれる構成情報の論理番号が重なっていても、構成番号変換部により対応する実番号にそれぞれ変換されるため、構成情報の格納先の実質的な制限が無くなる。また、オブジェクトコードに含まれる構成情報を論理番号で表せば、複数のオブジェクトコードで同一の構成情報を持つ場合でも、特定の実番号にその構成情報を割り当てれば各オブジェクトコード間でその構成情報を共有できる。したがって、複数のオブジェクトコードで同一の構成情報を指定できるため、構成情報の格納先の制限が無くなり、構成情報の共有化も可能になる。
【図面の簡単な説明】
【００１５】
【図１】図１は本発明のデータ処理装置の第１の実施の形態の構成を示すブロック図である。
【図２】図２は本発明のデータ処理装置の第２の実施の形態の構成を示すブロック図である。
【図３】図３は本発明のデータ処理装置の第３の実施の形態の構成を示すブロック図である。
【図４】図４は本発明のデータ処理装置の第４の実施の形態の構成を示すブロック図である。
【図５】図５は本発明のデータ処理装置の第５の実施の形態の構成を示すブロック図である。
【図６】図６は本発明のデータ処理装置の第６の実施の形態の構成を示すブロック図である。
【図７】図７は本発明のデータ処理装置の第７の実施の形態の構成を示すブロック図である。
【図８】図８は本発明のデータ処理装置の第８の実施の形態の構成を示すブロック図である。
【図９】図９は本発明のデータ処理装置の第１実施例の構成を示すブロック図である。
【図１０】図１０は図９に示したデータ処理装置で処理するオブジェクトコードの一例を示す状態遷移図である。
【図１１】図１１は図９に示したデータ処理装置で用いる変換表の一例を示す模式図である。
【図１２】図１２は本発明のデータ処理装置の第２実施例の構成を示すブロック図である。
【図１３】図１３は図１２に示したデータ処理装置で処理するオブジェクトコードの一例を示す状態遷移図である。
【図１４】図１４は図１２に示したデータ処理装置で用いる変換表の一例を示す模式図である。
【図１５】図１５は図１２に示した補助制御部で保存される状態遷移図の一例を示す模式図である。
【図１６】図１６は図１２に示した状態遷移管理部で保存される状態遷移図の一例を示す模式図である。
【図１７】図１７は図１２に示した構成書換部による構成情報の書き換え後に補助制御部で保持する状態遷移図の一例を示す模式図である。
【図１８】図１８は図１２に示した構成書換部による構成情報の書き換え後に構成番号変換部で保持する変換表の一例を示す模式図である。
【図１９】図１９は本発明のデータ処理装置の第３実施例の構成を示すブロック図である。
【図２０】図２０は図１９に示したデータ処理装置の状態遷移管理部で処理するオブジェクトコードの一例を示す状態遷移図である。
【図２１】図２１は図１９に示した状態のさらに内部で状態が遷移する様子を示す状態遷移図である。
【図２２】図２２は図１９に示したデータ処理装置で用いる変換表の一例を示す模式図である。
【図２３ａ】図２３ａは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｂ】図２３ｂは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｃ】図２３ｃは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｄ】図２３ｄは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｅ】図２３ｅは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｆ】図２３ｆは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｇ】図２３ｇは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｈ】図２３ｈは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【図２３ｉ】図２３ｉは図１９に示した構成書換部による構成情報の書き換え後に状態管理部及び構成番号変換部で保持する変換表の一例を示す模式図である。
【発明を実施するための最良の形態】
【００１６】
次に本発明について図面を参照して説明する。
（第１の実施の形態）
図１は本発明のデータ処理装置の第１の実施の形態の構成を示すブロック図である。【００１７】
第１の実施の形態のデータ処理装置は、制御部１と演算部２とを有する構成である。【００１８】
制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３及び構成書込部１４を備え、演算部２は相互接続部２２により接続される複数の演算器２１を備えている。【００１９】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。【００２０】
論理番号はオブジェクトコードに含まれる各構成情報の相互関係の情報を示し、構成情報が実際に構成情報記憶部１３に保存された位置を実番号とする。【００２１】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換し、該構成情報の実番号を構成情報記憶部１３に通知する（構成指定）。【００２２】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２の命令群と遷移先候補群との構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２で指定された実番号に対応する構成情報を、演算器２１、相互接続部２２及び状態管理部１１へそれぞれ通知する。【００２３】
構成書込部１４はデータ処理装置の起動時に構成情報記憶部１３に構成情報を書き込む。【００２４】
演算器２１は順次遷移する複数の動作状態毎に構成情報記憶部１３から指定される構成情報にしたがって演算処理を実行する。【００２５】
相互接続部２２は構成情報記憶部１３から通知された構成情報に基づき複数の演算器２１の接続関係を切り換える。演算部２からは演算結果に応じたイベント信号が状態管理部１１に発行される。【００２６】
なお、上記各構成要素は、それぞれ図１に示す機能単位で独立して備える必要はない。例えば、任意の構成要素が他の構成要素に含まれていてもよく、任意の構成要素が複数の部品で構成されていてもよい。例えば、構成情報記憶部１３を分割し、分割後の構成情報記憶部１３を、状態管理部１１、演算器２１及び相互接続部２２内にそれぞれ備える構成であってもよい。また、上記各構成要素は、その全てを１つの装置内に備える必要はない。例えば、構成書込部１４を、外部に備える他の装置やＭＰＵ等で実現してもよい。【００２７】
構成情報には、ある時点における演算器２１に対する演算命令、相互接続部２２における各演算器２１の接続関係を示す情報、イベント信号とそれに対応して次に選択すべき構成情報の論理番号の関係を示す情報を含んでいる。【００２８】
演算器２１は、いわゆる算術演算器（ＡＬＵ）等を１つだけ備えた構成、複数種類の演算器やレジスタ等の記憶素子を組み合わせた構成も含まれる。【００２９】
状態管理部１１は、現在の状態とイベント信号とに基づき次に遷移すべき状態を決定することができればどのような構成であってもよい。状態管理部１１は、例えば各状態間の遷移関係を示す対応表を備えた構成が考えられる。【００３０】
また、構成番号変換部１２は、状態管理部１１から指定された構成情報の論理番号を実番号に変換できればどのような構成であってもよく、例えば論理番号と実番号の対応関係を示す対応表を備えた構成、あるいは論理番号と実番号の相対値を基準に論理番号から実番号へ変換する機構を備えた構成等が考えられる。ここでは、構成番号変換部１２が実施する論理番号から実番号へ変換するための処理で必要な上記対応表や相対値等を変換情報と総称する。【００３１】
以上の各構成要素に対する要件は、第１の実施の形態だけでなく、以下に記載する第２の実施の形態〜第４の実施の形態でも適用できる。【００３２】
本実施形態のデータ処理装置によれば、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する構成番号変換部１２を備えることで、複数のオブジェクトコードを格納する場合でも、構成情報の格納先が制約されることや同一の構成情報を生成する必要がない。この効果は特に複数のオブジェクトコードを同時に格納するときに顕著である。
（第２の実施の形態）
図２は本発明のデータ処理装置の第２の実施の形態の構成を示すブロック図である。【００３３】
第２の実施の形態のデータ処理装置は、第１の実施の形態で示した構成書込部１４に代えて構成書換部１５を備え、構成番号変換部１２から構成書換部１５に対する信号経路が加わっている点で第１の実施の形態と異なっている。【００３４】
第２の実施の形態のデータ処理装置は、第１の実施の形態と同様に、制御部１及び演算部２を有する構成である。【００３５】
制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３及び構成書換部１５を備え、演算部２は相互接続部２２により接続される複数の演算器２１を備えている。【００３６】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。【００３７】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合はその実番号を指定し、構成情報記憶部１３に保存されていない場合は構成書換部１５に対して書き換え要求を発行する。【００３８】
構成書換部１５は、データ処理装置の初動時に構成情報記憶部１３に構成情報を書き込む。また、構成番号変換部１２から書き換え要求が発行されると、構成情報記憶部１３に保存された構成情報のうち、現時点で不要な構成情報を書き換え要求時に指定された構成情報に書き換える。また、構成書換部１５は、構成番号変換部１２の論理番号から実番号への変換処理に必要な変換情報を更新する。不要な構成情報の選択には、例えばLeast  Recently  Used（ＬＲＵ）法等の周知の方法を用いればよい。【００３９】
構成書換部１５は、基本的に書き換え要求に対して要求された構成情報を１つだけ書き換えるが、要求された構成情報と共にそれ以降に使用する構成情報も併せて書き換えてもよい。【００４０】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２に対する命令群と遷移先候補群を示す構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２により指定された実番号に対応する構成情報を演算器２１、相互接続部２２及び状態管理部１１にそれぞれ通知する。【００４１】
演算器２１は順次遷移する複数の動作状態毎に構成情報記憶部１３から通知された構成情報にしたがって演算処理を実行する。相互接続部２２は構成情報記憶部１３から通知された構成情報に基づき演算器２１の接続関係を切り換える。演算器２１及び相互接続部２２からは、演算結果に応じたイベント信号が状態管理部１１に発行される。【００４２】
本実施形態のデータ処理装置によれば、複数のオブジェクトコードを格納する場合でも、構成情報の格納先が制約されることや、同一の構成情報を生成する必要がない。この効果は特に複数のオブジェクトコードを同時に格納するときに顕著である。【００４３】
また、構成書換部を備えることで、保持可能なメモリ容量を超える構成情報から成るオブジェクトコードの運用が可能となる。【００４４】
(第３の実施の形態)
図３は本発明のデータ処理装置の第３の実施の形態の構成を示すブロック図である。【００４５】
第３の実施の形態のデータ処理装置は、演算部２に補助制御部２３を備えた点で第２の実施の形態と異なっている。補助制御部２３は、例えばハードワイヤードやロジックアレイ等を用いて実現される。【００４６】
第３の実施の形態のデータ処理装置は、第２の実施の形態と同様に、制御部１及び演算部２を有する構成である。制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３及び構成書換部１５を備え、演算部２は相互接続部２２により接続される複数の演算器２１と補助制御部２３とを備えている。【００４７】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。【００４８】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、その実番号を指定する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００４９】
構成書換部１５は、データ処理装置の初動時に構成情報記憶部１３に構成情報を書き込む。また、構成番号変換部１２から書き換え要求が発行されると、構成情報記憶部１３に保存された構成情報のうち、現時点で不要な構成情報を、書き換え要求時に指定された構成情報に書き換える。また、構成書換部１５は、構成番号変換部１２の論理番号から実番号への変換処理に必要な変換情報を更新する。不要な構成情報の選択には、例えばLeast  Recently  Used（ＬＲＵ）法等の周知の方法を用いればよい。【００５０】
構成書換部１５は、基本的に書き換え要求に対して要求された構成情報を１つだけ書き換えるが、要求された構成情報と共にそれ以降に使用する構成情報も併せて書き換えてもよい。【００５１】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２に対する命令群と遷移先候補群を示す構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２により指定された実番号に対応する構成情報を演算器２１、相互接続部２２及び状態管理部１１にそれぞれ通知する。【００５２】
演算器２１は順次遷移する複数の動作状態毎に構成情報記憶部１３から通知された構成情報にしたがって演算処理を実行する。相互接続部２２は構成情報記憶部１３から通知された構成情報に基づき演算器２１の接続関係を切り換える。演算器２１及び相互接続部２２からは、演算結果に応じたイベント信号が補助制御部２３に発行される。【００５３】
本実施形態の演算器２１及び相互接続部２２は、補助制御部２３からの停止信号にしたがって動作を停止し、再開信号にしたがって動作を再開する機能を備えている。この機能は、例えばクロックを停止する手段、演算器２１が備える記憶手段の更新を停止する等、見かけ上の動作を停止させる手段を用いて実現すればよい。電力低減の観点では前者が優れ、実装の容易さでは後者が優れている。なお、データ処理装置が外部メモリ等の記憶手段とデータを送受信しつつ処理を実行する場合、演算器２１は外部ポートを経由してデータの入出力を行う。この外部ポートからのデータ入力動作も補助制御部２３からの信号にしたがって動作の停止／再開が制御される（図３には図示せず）。【００５４】
補助制御部２３は、演算部２内に在って小規模な状態遷移の制御を受け持つ、制御部１と同様の機能を備えた回路である。補助制御部２３は、演算器２１及び相互接続部２２からイベント信号を受け取ると、該イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲内である場合は演算器２１及び相互接続部２２が遷移すべき次の状態に対応する構成情報を指定する。一方、イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲を超える場合は、制御部１へ該イベント信号を送出し、制御部１の管轄下による状態遷移を要求する。このとき、余分な演算を実行しないように演算器２１及び相互接続部２２に停止信号を送出して動作を停止させる。また、補助制御部２３は、構成情報記憶部１３から指定される構成情報を受け取ると、演算器２１及び相互接続部２２に該構成情報を指定する。その後、再開信号を演算器２１及び相互接続部２２に送出して動作を再開させる。【００５５】
本実施形態のデータ処理装置によれば、補助制御部２３が受け持つ小規模な状態遷移を実行している間は動作遷移が演算部２内で完結するため、従来のデータ処理装置に比べて高速な動作が可能である。また、制御部１による大規模な状態遷移を必要とする場合は演算部２の不要な動作を停止させることで電力消費を低減できる。【００５６】
さらに、本実施形態のデータ処理装置によれば、第２の実施の形態と同様に、複数のオブジェクトコードを格納する場合でも、構成情報の格納先が制約されることや同一の構成情報を生成する必要がない。この効果は特に複数のオブジェクトコードを同時に格納するときに顕著である。【００５７】
また、構成書換部を備えることで、保持可能なメモリ容量を超える構成情報から成るオブジェクトコードの運用が可能となる。
(第４の実施の形態)
図４は本発明のデータ処理装置の第４の実施の形態の構成を示すブロック図である。【００５８】
第４の実施の形態のデータ処理装置は、２組の制御部１（図４では１１、１２）及び演算部２（図４では２１、２２）を備え、それら２組の制御部１及び演算部２により構成書換部１５を共有する構成である。なお、制御部１及び演算部２は２組に限定されるものではなく何組であってもよい。また、共有される構成書換部１５も１つである必要はなく、いくつであってもよい。【００５９】
本実施形態のデータ処理装置が備える構成書換部１５は、複数の構成番号変換部から同時に発行された要求のうち、いずれか１つに対応するための調停機能を備えている。すなわち、いずれか１つの構成番号変換部からの書き換え要求の対応中に他の構成番号変換部から構成情報の書き換え要求が発行された場合、構成書換部１５の調停機能により先行して発行された書き換え要求の処理が終了するまで、他の構成番号変換部を備える制御部１及び演算部２の組の処理を待機させる。【００６０】
その他の制御部１及び演算部２の構成及び動作は第２の実施の形態または第３の実施の形態で示したデータ処理装置と同様であるため、その説明は省略する。【００６１】
本実施形態のデータ処理装置によれば、構成番号変換部からの構成情報の書き換え要求が少ない場合、本実施形態の構成を採用することで構成書換部１５を共有できるため、データ処理装置の実装面積を低減できる。
(第５の実施の形態)
図５は本発明のデータ処理装置の第５の実施の形態の構成を示すブロック図である。【００６２】
第５の実施の形態のデータ処理装置は、演算部２から構成番号変換部１２へ信号を送信するための信号経路を備えた点で第３の実施の形態と異なっている。【００６３】
第５の実施の形態のデータ処理装置は、第３の実施の形態と同様に制御部１及び演算部２を有する構成である。制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３及び構成書換部１５を備え、演算部２は相互接続部２２により接続される複数の演算器２１と補助制御部２３とを備えている。【００６４】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。【００６５】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、その実番号を指定する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００６６】
また、構成番号変換部１２は、演算部２から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、新たに構成情報を書き換える必要がないため演算部２の要求に対する処理を終了する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００６７】
構成書換部１５は、データ処理装置の初動時に構成情報記憶部１３に構成情報を書き込む。また、構成番号変換部１２から書き換え要求が発行されると、構成情報記憶部１３に保存された構成情報のうち、現時点で不要な構成情報を、書き換え要求時に指定された構成情報に書き換える。また、構成書換部１５は、構成番号変換部１２の論理番号から実番号への変換処理に必要な変換情報を更新する。不要な構成情報の選択には、例えばLeast  Recently  Used（ＬＲＵ）法等の周知の方法を用いればよい。【００６８】
構成書換部１５は、基本的に書き換え要求に対して要求された構成情報を１つだけ書き換えるが、要求された構成情報と共にそれ以降に使用する構成情報も併せて書き換えてもよい。【００６９】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２に対する命令群と遷移先候補群を示す構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２により指定された実番号に対応する構成情報を演算器２１、相互接続部２２及び状態管理部１１へ通知する。【００７０】
演算器２１は順次遷移する複数の動作状態毎に構成情報記憶部１３から通知された構成情報にしたがって演算処理を実行する。相互接続部２２は構成情報記憶部１３から通知された構成情報に基づき演算器２１の接続関係を切り換える。演算器２１及び相互接続部２２からは、演算結果に応じたイベント信号が補助制御部２３に発行される。【００７１】
本実施形態の演算器は、必要な構成情報を構成情報記憶部１３に格納するよう要求するための信号（プリロード要求）を構成番号変換部１２に発行する。この信号は、オブジェクトコード生成時に、該オブジェクトコードに含まれる解析情報に基づく演算によって生成される。【００７２】
本実施形態の演算器２１及び相互接続部２２は、補助制御部２３からの停止信号にしたがって動作を停止し、再開信号にしたがって動作を再開する機能を備えている。この機能は、例えばクロックを停止する手段、演算器２１が備える記憶手段の更新を停止する等、見かけ上の動作を停止させる手段を用いて実現すればよい。電力低減の観点では前者が優れ、実装の容易さでは後者が優れている。なお、データ処理装置が外部メモリ等の記憶手段とデータを送受信しつつ処理を実行する場合、演算器２１は外部ポートを経由してデータの入出力を行う。この外部ポートからのデータ入力動作も補助制御部２３からの信号にしたがって動作の停止／再開が制御される（図５には図示せず）。【００７３】
補助制御部２３は、演算部２内に在って小規模な状態遷移の制御を受け持つ、制御部１と同様の機能を備えた回路である。補助制御部２３は、演算器２１及び相互接続部２２からイベント信号を受け取ると、該イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲内である場合は演算器２１及び相互接続部２２が遷移すべき次の状態に対応する構成情報を指定する。一方、イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲を超える場合は、制御部１へ該イベント信号を送出し、制御部１の管轄下による状態遷移を要求する。このとき、余分な演算を実行しないように演算器２１及び相互接続部２２に停止信号を送出して動作を停止させる。また、補助制御部２３は、構成情報記憶部１３から指定される構成情報を受け取ると、演算器２１及び相互接続部２２に該構成情報を指定する。その後、再開信号を演算器２１及び相互接続部２２に送出して動作を再開させる。【００７４】
本実施形態のデータ処理装置によれば、演算部から適切なプリロード要求が発行されれば、予め構成情報記憶部１３に必要な構成情報を書き込むことができるため、状態遷移の段階で構成書換部１５による書き込み処理を待つ時間が低減し、実処理時間が増えて処理性能が向上する。
(第６の実施の形態)
図６は本発明のデータ処理装置の第６の実施の形態の構成を示すブロック図である。【００７５】
第６の実施の形態のデータ処理装置は、構成書換部１５の機能の一部を実現する書換決定部１６を備えた点で第５の実施の形態と異なっている。【００７６】
第６の実施の形態のデータ処理装置は、第５の実施の形態と同様に、制御部１及び演算部２を有する構成である。制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３、構成書換部１５及び書換決定部１６を備え、演算部２は相互接続部２２により接続される複数の演算器２１と補助制御部２３とを備えている。【００７７】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。【００７８】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、その実番号を指定する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００７９】
また、構成番号変換部１２は、演算部２から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、新たに構成情報を書き換える必要がないため演算部２の要求に対する処理を終了する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００８０】
構成書換部１５は、データ処理装置の初動時に構成情報記憶部１３に構成情報を書き込む。また、構成番号変換部１２または書換決定部１６から書き換え要求が発行されると、構成情報記憶部１３に保存された構成情報のうち、現時点で不要な構成情報を、書き換え要求時に指定された構成情報に書き換える。また、構成書換部１５は、構成番号変換部１２の論理番号から実番号への変換処理に必要な変換情報を更新する。不要な構成情報の選択には、例えばLeast  Recently  Used（ＬＲＵ）法等の周知の方法を用いればよい。【００８１】
構成書換部１５は、書き換え要求に対して要求された構成情報を１つだけ書き換える。書き換え要求が構成番号変換部１２及び書換決定部１６から同時に出された場合は、構成番号変換部１２の要求を優先する。このとき、要求元に対して要求を受け付けたか否かを返送する。【００８２】
書換決定部１６は、構成番号変換部１２、構成情報記憶部１３及び構成書換部１５の状態、過去の状態遷移履歴を基にして、次に遷移する状態の構成情報の書き換えを決定し、構成書換部１５に構成情報の書き換えを要求する。要求が受け付けられなかった場合は、その理由となる他の要求を勘案して新たな要求を構成書換部１５に出す。これにより、第１の実施の形態〜第５の実施の形態では構成書換部１５が実行していた、要求された構成情報及び現在の状態以降に使用する構成情報の書き換えを要求する機能を書換決定部１６にて実現する。【００８３】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２に対する命令群と遷移先候補群を示す構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２により指定された実番号に対応する構成情報を演算器２１、相互接続部２２及び状態管理部１１にそれぞれ通知する。【００８４】
演算器２１は順次遷移する複数の動作状態毎に構成情報記憶部１３から通知された構成情報にしたがって演算処理を実行する。相互接続部２２は構成情報記憶部１３から通知された構成情報に基づき演算器２１の接続関係を切り換える。演算器２１及び相互接続部２２からは、演算結果に応じたイベント信号が補助制御部２３に発行される。また、演算器２１及び相互接続部２２からは、演算結果に応じた構成要求信号（プリロード要求）が構成番号変換部１２に発行される。【００８５】
本実施形態の演算器２１及び相互接続部２２は、補助制御部２３からの停止信号にしたがって動作を停止し、再開信号にしたがって動作を再開する機能を備えている。この機能は、例えばクロックを停止する手段、演算器２１が備える記憶手段の更新を停止する等、見かけ上の動作を停止させる手段を用いて実現すればよい。電力低減の観点では前者が優れ、実装の容易さでは後者が優れている。なお、データ処理装置が外部メモリ等の記憶手段とデータを送受信しつつ処理を実行する場合、演算器２１は外部ポートを経由してデータの入出力を行う。この外部ポートからのデータ入力動作も補助制御部２３からの信号にしたがって動作の停止／再開が制御される（図６には図示せず）。【００８６】
補助制御部２３は、演算部２内に在って小規模な状態遷移の制御を受け持つ、制御部１と同様の機能を備えた回路である。補助制御部２３は、演算器２１及び相互接続部２２からイベント信号を受け取ると、該イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲内である場合は演算器２１及び相互接続部２２が遷移すべき次の状態に対応する構成情報を指定する。一方、イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲を超える場合は、制御部１へ該イベント信号を送出し、制御部１の管轄下による状態遷移を要求する。このとき、余分な演算を実行しないように演算器２１及び相互接続部２２に停止信号を送出して動作を停止させる。また、補助制御部２３は、構成情報記憶部１３から指定される構成情報を受け取ると、演算器２１及び相互接続部２２に該構成情報を指定する。その後、再開信号を演算器２１及び相互接続部２２に送出して動作を再開させる。【００８７】
本実施形態のデータ処理装置によれば、書換決定部１６から適切なプリロード要求が発行されれば、予め構成情報記憶部１３に必要な構成情報を書き込むことができるため、状態遷移の段階で構成書換部１５による書き込み処理を待つ時間が低減し、実処理時間が増えて処理性能が向上する。書換決定部１６は、書き換えを要求する構成情報を決定するためにＭＰＵ等の処理装置を必要とするが、構成書換部１５は要求された構成情報を構成情報記憶部１３へ書き込む処理のみ実行すればよく、第２、第３の実施の形態に比べて実装面積を低減できるため、制御部の機能を一つのチップに搭載することが可能になる。
(第７の実施の形態)
図７は本発明のデータ処理装置の第７の実施の形態の構成を示すブロック図である。【００８８】
第７の実施の形態のデータ処理装置は、状態管理部１１から補助制御部２３へ処理開始する内部状態を指定するための信号経路を備えた点で第６の実施の形態と異なっている。【００８９】
第７の実施の形態のデータ処理装置は、第６の実施の形態と同様に、制御部１及び演算部２を有する構成である。制御部１は、状態管理部１１、構成番号変換部１２、構成情報記憶部１３、構成書換部１５及び書換決定部１６を備え、演算部２は相互接続部２２により接続される複数の演算器２１と補助制御部２３とを備えている。【００９０】
状態管理部１１は、構成情報に含まれる現在の動作状態及び次に遷移する状態の候補群（遷移先候補群）と、演算部２からのイベント信号とにより、次の動作状態で使用する構成情報の論理番号を決定し、該論理番号を構成番号変換部１２へ通知する。また、状態管理部１１は、補助制御部２３が実行すべき、次の動作状態において処理を開始する内部状態番号を決定し、決定した内部状態番号を補助制御部２３へ通知する。【００９１】
構成番号変換部１２は、状態管理部１１から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、その実番号を指定する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００９２】
また、構成番号変換部１２は、演算部２から通知された構成情報の論理番号を、構成情報記憶部１３に保存された、対応する構成情報の実番号に変換する。このとき、次の構成情報が構成情報記憶部１３に保存されている場合は、新たに構成情報を書き換える必要がないため演算部２からの要求（プリロード要求）に対する処理を終了する。次の構成情報が構成情報記憶部１３に保存されていない場合、構成番号変換部１２は構成書換部１５に対して書き換え要求を発行する。【００９３】
構成書換部１５は、データ処理装置の初動時に構成情報記憶部１３に構成情報を書き込む。また、構成番号変換部１２または書換決定部１６から書き換え要求が発行されると、構成情報記憶部１３に保存された構成情報のうち、現時点で不要な構成情報を、書き換え要求時に指定された構成情報に書き換える。また、構成書換部１５は、構成番号変換部１２の論理番号から実番号への変換処理に必要な変換情報を更新する。不要な構成情報の選択には、例えばLeast  Recently  Used（ＬＲＵ）法等の周知の方法を用いればよい。【００９４】
構成書換部１５は、書き換え要求に対して要求された構成情報を１つだけ書き換える。書き換え要求が構成番号変換部１２及び書換決定部１６から同時に出された場合は、構成番号変換部１２の要求を優先する。このとき、要求元に対して要求を受け付けたか否かを返送する。【００９５】
書換決定部１６は、構成番号変換部１２、構成情報記憶部１３及び構成書換部１５の状態を基にして、次の状態で使用する構成情報の書き換えを決定し、構成書換部１５に書き換えを要求する。構成書換部１５にて該要求が受け付けられなかった場合、書換決定部１６は、その理由となる他の要求を勘案して新たな要求を構成書換部１５に出す。これにより、第１の実施の形態〜第５の実施の形態では構成書換部１５が実行していた、要求された構成情報及び現在の状態以降に使用する構成情報の書き換えを要求する機能を書換決定部１６にて実現する。【００９６】
構成情報記憶部１３は、動作状態毎の演算器２１及び相互接続部２２に対する命令群と遷移先候補群を示す構成情報の組み合わせであるオブジェクトコードを保持し、構成番号変換部１２によって指定された実番号に対応する構成情報を演算器２１、相互接続部２２及び状態管理部１１へ通知する。【００９７】
演算器２１は、順次遷移する複数の動作状態毎に構成情報記憶部１３から通知された構成情報にしたがって演算処理を実行する。相互接続部２２は構成情報記憶部１３から通知された構成情報に基づいて演算器２１の接続関係を切り換える。演算器２１及び相互接続部２２からは、演算結果に応じたイベント信号が補助制御部２３に発行される。また、演算器２１及び相互接続部２２からは、演算結果に応じた構成要求信号が構成番号変換部１２に発行される。【００９８】
本実施形態の演算器２１及び相互接続部２２は、補助制御部２３からの停止信号にしたがって動作を停止し、再開信号にしたがって動作を再開する機能を備えている。この機能は、例えばクロックを停止する手段、演算器２１が備える記憶手段の更新を停止する等、見かけ上の動作を停止させる手段を用いて実現すればよい。電力低減の観点では前者が優れ、実装の容易さでは後者が優れている。なお、データ処理装置が外部メモリ等の記憶手段とデータを送受信しつつ処理を実行する場合、演算器２１は外部ポートを経由してデータの入出力を行う。この外部ポートからのデータ入力動作も補助制御部２３からの信号にしたがって動作の停止／再開が制御される（図７には図示せず）。【００９９】
補助制御部２３は、演算部２内に在って小規模な状態遷移の制御を受け持つ、制御部１と同様の機能を備えた回路である。補助制御部２３は、演算器２１及び相互接続部２２からイベント信号を受け取ると、該イベント信号に基づいて次に遷移する状態が補助制御部２３の制御範囲内である場合は演算器２１及び相互接続部２２が遷移すべき次の状態に対応する構成情報を指定する。一方、イベント信号に基づき次に遷移する状態が補助制御部２３の制御範囲を超える場合は、制御部１へ該イベント信号を送出し、制御部１の管轄下による状態遷移を要求する。このとき、余分な演算を実行しないように演算器２１及び相互接続部２２に停止信号を送出して動作を停止させる。また、補助制御部２３は、構成情報記憶部１３から指定される構成情報を受け取ると、演算器２１及び相互接続部２２に該構成情報を指定する。その後、状態管理部１１に指定された、動作を開始する内部状態番号の状態とした後に、再開信号を演算器２１及び相互接続部２２に送出して動作を再開させる。【０１００】
本実施形態のデータ処理装置によれば、状態遷移時に制御部１によって補助制御部２３で処理を開始する状態を指定できる。その結果、全体の状態数を低減できる。【０１０１】
第１の実施の形態〜第６の実施の形態では、予め決められた内部状態からしか処理を開始できなかった。すなわち、分岐先の数だけ論理番号が必要であった。そのため、分岐が多い状態遷移をもつオブジェクトコードの場合、構成情報数が多くなり、書き換え回数が多くなる可能性があったが、第７の実施の形態はこの問題を解決できる。但し、ハードウェアリソースを低減したい場合は第６の実施の形態までの構成を採用すればよい。
(第８の実施の形態)
図８は本発明のデータ処理装置の第８の実施の形態の構成を示すブロック図である。【０１０２】
第８の実施の形態のデータ処理装置は、２組の制御部１（図８では１１、１２）及び演算部２（図８では２１、２２）を備え、それら２組の制御部１及び演算部２により書換決定部１６を共有する構成である。なお、制御部１及び演算部２は２組に限定されるものではなく何組であってもよい。また、共有される書換決定部１６も１つである必要はなく、いくつであってもよい。【０１０３】
本実施形態のデータ処理装置が備える書換決定部１６は、複数の制御部１を監視し、各々の構成書換部に対して書き換えを要求する。いずれかの組の構成書換部に対しての書き換え要求を発行したとき、発行先の構成書換部が構成を書き換えている場合は、それに続く新たな要求を続けて出す必要はない。そこで他方の構成書換部に対する要求を生成して出力する。【０１０４】
その他の制御部１及び演算部２の構成及び動作は第６の実施の形態または第７の実施の形態で示したデータ処理装置と同様であるため、その説明は省略する。【０１０５】
本実施形態のデータ処理装置によれば、複数の制御部１及び演算部２にて書換決定部１６を共有するため、データ処理装置の実装面積を低減できる。
【実施例】
【０１０６】
次に本発明のデータ処理装置の実施例について図面を用いて説明する。【０１０７】
（第１実施例）
第１実施例は上記特許文献１〜６に記載のデータ処理装置に本発明の第１の実施の形態を適用した例である。【０１０８】
図９は本発明のデータ処理装置の第１実施例の構成を示すブロック図である。【０１０９】
本実施例の演算部４は、レジスタファイル（ＲＦＵ）、ＡＬＵ、データ処理演算器（ＤＭＵ）を備えた複数のプロセッサエレメント（ＰＥ）を有し、各プロセッサエレメントが配線及びスイッチ（ＳＷ）により相互に接続される構成である。このような構成では、ＲＦＵ、ＦＦＵ、ＡＬＵ及びＤＭＵ等を備える各プロセッサエレメントが、第１の実施の形態で示した演算器となる。なお、演算部４は、上記プロセッサエレメントに限らず、例えばロジックアレイを用いて形成してもよい。【０１１０】
また、本実施例の制御部は、状態管理部３１、構成番号変換部３２、構成書込部３４を備えたＤＲＰの状態遷移管理部（ＳＴＣ）３に相当する。上記複数のプロセッサエレメントと状態遷移管理部の組をタイルと称す。【０１１１】
本実施例では、各プロセッサエレメンや状態遷移管理部内に分割して配置されたメモリ（以下、構成情報メモリと称す）が構成情報記憶部となる。【０１１２】
以下、図１０に示すように、２つのオブジェクトコードＡ、Ｂにしたがって処理を実行する場合を例にして本実施例のデータ処理装置の動作について説明する。【０１１３】
本実施例では、データ処理装置（ＤＲＰ）が備える命令メモリにて８種類の構成情報が保持できるものとし、データ処理装置は、起動時に外部から準備要求を受信すると、構成書込部３４により対応する構成情報を取得し、オブジェクトコードＡがプロセッサエレメントが備える命令メモリの実番号「０」〜「３」に書き込まれ、オブジェクトコードＢがプロセッサエレメントが備える命令メモリの実番号「４」〜「７」に書き込まれるものとする。次に、構成書込部３４は、状態遷移管理部（制御部）３の状態管理部３１の状態遷移表と、構成番号変換部３２が備える、上記変換情報として用いられる変換表とを、図１１に示すように更新して書き込みを終了する。【０１１４】
構成番号変換部３２は、外部から処理の実行要求を受信すると、初期状態として指定された実番号の構成情報を取得し、プロセッサエレメント群に初期状態の構成情報を指定し、プロセッサエレメント群に処理を開始させる。以上の動作の後、データ処理装置は定常動作に移行する。【０１１５】
構成書込部３４は、外部からオブジェクトコードＡの実行要求を受信すると、構成番号変換部３２にオブジェクトコードＡの変換表を選択するよう通知する。このとき、開始状態をオブジェクトコードＡの初期状態である論理番号「０」とする。【０１１６】
構成番号変換部３２は、現在選択されているオブジェクトコードＡの変換表を用いて論理番号「０」を実番号「０」に変換し、命令メモリのポインタ、状態管理部３１の現状態の実番号として演算部４へ通知する。【０１１７】
演算部４の各プロセッサエレメントには現状態の構成情報が通知され、各プロセッサエレメントの動作とスイッチ（相互接続部）の接続が決定する。その結果、各プロセッサエレメントにて所定の演算が実行される。【０１１８】
プロセッサエレメント群から演算結果がイベント信号として状態遷移管理部３に通知されると、状態遷移管理部３は、そのイベント信号に対応する状態遷移表を参照して次の状態に遷移する。ここでは、現在の実番号とイベント信号に対応する次の状態の論理番号が判別できるため、その論理番号を構成番号変換部３２へ通知する。【０１１９】
構成番号変換部３２は、現在選択されているオブジェクトコードＡの変換表を用いて論理番号を実番号に変換し、プロセッサエレメントが備える命令メモリのポインタ、状態管理部３１の現状態の実番号として演算部４へ通知する。【０１２０】
以上の処理をオブジェクトコードＡの処理が終了するまで繰り返し実行する。【０１２１】
次に、外部からオブジェクトコードＢの実行要求があると、構成書込部３４は、構成番号変換部３２にオブジェクトコードＢの変換表を選択するように指示する。このとき、開始状態をオブジェクトコードＢの初期状態である論理番号「０」とする。【０１２２】
構成番号変換部３２は、現在選択されているオブジェクトコードＢの変換表を用いて論理番号「０」を実番号「４」に変換し、命令メモリのポインタ、状態管理部３１の現状態の実番号として演算部４へ通知する。【０１２３】
以下の動作はオブジェクトコードＡに対する処理と同様である。【０１２４】
本実施例では、オブジェクトコードＡ、Ｂで指定される構成情報の論理番号はそれぞれ「０」〜「３」であるが、オブジェクトコードＡ、Ｂが同時に格納されていても、外部からの要求に応じてどちらを実行する場合でも、構成番号変換部３２にて必要な構成情報の実番号が選択される。そのため、オブジェクトコードの再合成は不要となり、また配置の制約を受けることがない。したがって、オブジェクトコードを合成し直すこと無しにオブジェクトコードを自由な配置で搭載できる。また、オブジェクトコード相互の干渉についても考慮する必要が無い。【０１２５】
（第２実施例）
第２実施例は上記特許文献１〜６に記載のデータ処理装置に本発明の第３の実施の形態を適用した例である。【０１２６】
図１２は本発明のデータ処理装置の第２実施例の構成を示すブロック図である。【０１２７】
本実施例の演算部４は、レジスタファイル（ＲＦＵ）、ＡＬＵ、データ処理演算器（ＤＭＵ）を備えた複数のプロセッサエレメント（ＰＥ）を有し、各プロセッサエレメントが配線及びスイッチ（ＳＷ）により相互に接続される構成である。このような構成では、ＲＦＵ、ＦＦＵ、ＡＬＵ及びＤＭＵ等を備える各プロセッサエレメントが、第３の実施の形態で示した演算器となる。なお、演算部４は、上記プロセッサエレメントに限らず、例えばロジックアレイを用いて形成してもよい。【０１２８】
また、本実施例の制御部３は、状態管理部３１、構成番号変換部３２、構成書換部３５を備えたＤＲＰの状態遷移管理部（ＳＴＣ）に相当する。【０１２９】
補助制御部（ＭＳＴＣ）４２は、制御部３と同様に状態管理部４３及び構成番号変換部（不図示）を備えている。但し、補助制御部４２は保持できる状態数が制御部（状態遷移管理部）３に比べて少ない構成とする。なお、補助制御部４２は、構成情報の実番号のみ用いて状態の遷移を制御する場合、構成番号変換部を備える必要はない。本実施例では、上記プロセッサエレメント４１群、補助制御部４２及び制御部３の組をタイルと称す。【０１３０】
本実施例では、各プロセッサエレメント４１及び補助制御部４２内に分割して配置されたメモリ（以下、構成情報メモリと称す）が構成情報記憶部となる。【０１３１】
また、本実施例では、外部にオブジェクトコードが格納された外部メモリ（記憶手段）６を備え、構成書換部３５を用いて該外部メモリ６からオブジェクトコードを取得できるものとする。【０１３２】
データ処理装置の起動時、構成書換部３５は、外部からの準備要求にしたがって予め設定されたオブジェクトコードの構成情報を取得し、構成情報メモリに保存する。そして、制御部３及び補助制御部４２の各状態管理部の状態遷移図と構成番号変換部３２が備える、上記変換情報として用いられる変換表を更新して書き換えを終了する。この書き換え終了を受けて構成番号変換部３２は、変換表を参照して初期状態のオブジェクトコードの各構成情報の実番号を取得して補助制御部４２へ通知する。【０１３３】
補助制御部４２は、取得した実番号に基づきプロセッサエレメント４１群に対する初期状態の構成情報を指定する。そして、ライトイネーブル（ＷＥ）キャンセル信号の発行を停止し、プロセッサエレメント４１群に処理を開始させる。【０１３４】
以上の動作の後、データ処理装置は定常動作に移行する。【０１３５】
以下、図１３に示す状態遷移を実現するオブジェクトコードにしたがって処理を実行する場合を例にして、本実施例のデータ処理装置の定常動作について説明する。【０１３６】
本実施例では、データ処理装置（ＤＲＰ）が備える命令メモリにて８種類の構成情報が保持できるものとし、図１４に示すように、プロセッサエレメント４１が備える命令メモリの実番号「０」から「５」が他のオブジェクトコードで使用され、実番号「６」と「７」に論理番号「０」と「１」の構成情報が保持されているものとする。また、各構成情報には補助制御部４２の制御により状態遷移する複数の状態を備えているものとする。以下、論理番号「ｘ」の構成情報に含まれる、補助制御部４２により制御される状態の番号（以下、内部状態番号と称す）を「ｙ」とした場合、該状態をｘ−ｙと表記する。【０１３７】
ここでは、補助制御部４２に図１５に示す論理番号「０」と「１」の状態遷移図が保存され、制御部３の状態管理部３１に図１６に示す論理番号間の状態遷移図が保存されているものとする。【０１３８】
以下、外部メモリに論理番号「２」と「３」の状態遷移図が保存され、論理番号「０」の構成情報に含まれる内部状態番号「２」（状態０−２）から処理を実行する場合を考える。このとき、演算部４の各プロセッサエレメント４１に現状態の構成情報が通知され、各プロセッサエレメント４１の動作とスイッチの接続関係が決定する。その結果、各プロセッサエレメント４１で所定の演算が実行される。【０１３９】
演算結果がイベント信号として補助制御部４２に通知されると、補助制御部４２はそのイベント信号に対応する状態遷移図に基づき次の状態への遷移を制御する。ここでは、補助制御部４２で制御可能な小規模な状態遷移（状態０−２から状態０−３への遷移）であるため、構成番号変換部３２はプロセッサエレメント４１群に内部状態番号「３」を指定する。【０１４０】
次のクロックにおいて、各プロセッサエレメントの演算結果により状態０−３から状態１−１へ遷移するイベント信号Ａが発行された場合、補助制御部４２では状態０−３から他の論理番号へ遷移することしか分からない。そのため、補助制御部４２は、まずプロセッサエレメント４１群の動作を停止させるためにＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により保持データの更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０１４１】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に制御部３にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「６」とイベント信号Ａとに基づき次に遷移する状態の論理番号「１」を決定し、構成番号変換部３２へ送出する。【０１４２】
構成番号変換部３２は、変換表を用いて論理番号を実番号に変換する。ここでは、次の状態の構成情報が構成情報メモリで保持されているため変換に成功し、得られた実番号「７」を補助制御部４２及び状態管理部３１へ送信する。【０１４３】
補助制御部４２は、構成情報の実番号「７」を受け取ると、プロセッサエレメント４１群に対して次の状態の構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止し、プロセッサエレメント４１群に動作を再開させる。【０１４４】
次に、各プロセッサエレメント４１による演算の結果、状態１−４から状態２−１へ遷移するイベント信号Ａが発行された場合、補助制御部４２では制御できない大規模な状態遷移であるため、補助制御部４２は、プロセッサエレメント４１群に動作を停止させるためのＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により、内容更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０１４５】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態管理部３１にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「７」とイベント信号Ａとに基づき次の状態の論理番号「２」を決定し、構成番号変換部３２へ通知する。【０１４６】
構成番号変換部３２は、変換表を用いて論理番号「２」を実番号に変換する。ここでは、次の状態の構成情報が構成情報メモリに保持されていないため、変換表には対応する実番号が無く、実番号への変換に失敗する。その場合、構成番号変換部３２は構成書換部３５に対して論理番号「２」の構成情報の書き換えを要求する。【０１４７】
構成書換部３５は、内部に各オブジェクトコードに含まれる全ての構成情報を持つ構成番号変換表を備え、該構成番号変換表に基づき対応する構成情報を選択し、構成情報メモリの書き換え対象を決定する。ここでは、直近で再利用する可能性が低い、論理番号「０」または「１」が書き込まれた部位を除く、実番号「０」から「５」を書き換え対象とする。【０１４８】
構成書換部３５は、要求された論理番号「２」の構成情報を実番号「０」の構成情報メモリに書き込み、補助制御部４２の状態管理部４３が備える状態遷移図を更新する。そして、構成番号変換部３２の変換表を更新して書き換え処理を終了する。この更新後の補助制御部４２の状態管理部４３が保持する状態遷移図を図１７に示し、書き換え後の変換表を図１８に示す。【０１４９】
構成番号変換部３２は、この書き換え終了を受けて、再度、変換表を参照し、次の状態の実番号「０」を取得して補助制御部４２と状態管理部３１に通知する。【０１５０】
補助制御部４２は、プロセッサエレメント４１群に次の状態の実番号「０」に対応する構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止してプロセッサエレメント４１群に動作を再開させる。【０１５１】
上記処理の繰り返しにより処理対象のデータに対する演算処理を実行する。【０１５２】
なお、ここでは、論理番号「２」の次の遷移先は論理番号「３」のみであるため、以降の状態で必要となる論理番号が明確に判別できる。このような場合、プロセッサエレメント４１群が論理番号「２」を処理している間に論理番号「３」の構成情報を構成情報メモリに書き込めば、状態２−４から状態３−１へ遷移させるためのイベント信号Ａが伝達されたとき、構成情報メモリには既に対応する構成情報が書き込まれているため、構成番号変換部３２は直ちに遷移先の実番号を決定して補助制御部４２へ通知できる。【０１５３】
このように、ある状態Ａにおいて、次の遷移先が他の状態Ｂのみであることが分かっている場合は、状態Ａの構成情報を書き込む際に状態Ｂの構成情報も併せて書き込んでおけば論理番号から実番号の変換時に失敗することがないため、処理手順が低減して処理が高速になる。なお、構成情報メモリの記憶容量が十分に大きい場合は、次の遷移先候補の全ての構成情報を構成情報メモリに書き込んでおいてもよい。【０１５４】
また、図１３に示す例では、状態０−３から論理番号が変わる遷移として、状態１−１と状態２−１とがあるが、これらは演算部４から異なるイベント信号を発行することで遷移先を区別することができる。【０１５５】
また、上記説明では論理番号が変わる状態遷移（状態遷移管理部の管理下での状態遷移）では必ず内部状態番号「１」に遷移する例を示しているが、このように論理番号が変わる際に必ず内部状態番号「１」に遷移する場合は、状態管理部３１で論理番号毎の内部状態番号を知る必要はない。ここで、論理番号が変わる際に任意の内部状態番号へ遷移できる構成とすることも可能である。【０１５６】
本実施例のように、外部の記憶手段にオブジェクトコードの各構成情報を格納しておき、構成書換部により必要に応じて構成情報メモリの内容を書き換えることで、データ処理装置は、その構成情報メモリの記憶容量を超える構成情報にしたがって処理を実行することが可能となる。【０１５７】
そのため、小規模なデータ処理装置で大規模なオブジェクトコードを実行することができ、従来よりもチップ面積を小さくできるためチップコストが低減する。【０１５８】
（第３実施例）
第３実施例は上記特許文献１〜６に記載のデータ処理装置に本発明の第７の実施の形態を適用した例である。【０１５９】
図１９は本発明のデータ処理装置の第３実施例の構成を示すブロック図である。【０１６０】
本実施例の演算部４は、レジスタファイル（ＲＦＵ）、ＡＬＵ、データ処理演算器（ＤＭＵ）を備えた複数のプロセッサエレメント（ＰＥ）有し、各プロセッサエレメントが配線及びスイッチ（ＳＷ）により相互に接続される構成である。このような構成では、ＲＦＵ、ＦＦＵ、ＡＬＵ及びＤＭＵ等を備える各プロセッサエレメントが、第７の実施の形態で示した演算器となる。なお、演算部４は、上記プロセッサエレメントに限らず、例えばロジックアレイを用いて構成してもよい。【０１６１】
また、本実施例の制御部３は、状態管理部３１、構成番号変換部３２、構成書換部３５を備えたＤＲＰの状態遷移管理部（ＳＴＣ）に相当する。【０１６２】
また、本実施例では、構成番号変換部３２及び構成書換部３５の状態を参照して現在の状態以降の状態遷移で必要となる構成情報を予測し、構成情報記憶部内の構成情報の書き換えを決定する書換決定部３６を備える。【０１６３】
補助制御部（ＭＳＴＣ）４２は、制御部３と同様に状態管理部４３及び構成番号変換部（不図示）を備えている。但し、補助制御部４２は保持できる状態数が制御部（状態遷移管理部）３に比べて少ない構成とする。なお、補助制御部４２は、構成情報の実番号のみを用いて状態の遷移を制御する場合、構成番号変換部を備える必要はない。本実施例では、上記プロセッサエレメント４１群、補助制御部４２及び状態遷移管理部３の組をタイルと称す。【０１６４】
本実施例では、各プロセッサエレメント４１及び補助制御部４２内に分割して配置されたメモリ（以下、構成情報メモリと称す）が構成情報記憶部となる。また、本実施例では、外部にオブジェクトコードが格納された外部メモリ（記憶手段）６を備え、構成書換部３５を用いて該外部メモリ６からオブジェクトコードを取得できるものとする。【０１６５】
データ処理装置の起動時、構成書換部３５は、外部からの準備要求にしたがって予め設定されたオブジェクトコードの構成情報を取得して構成情報メモリに保存する。そして、制御部３及び補助制御部４２の各状態管理部の状態遷移図と構成番号変換部３２が備える、上記変換情報として用いられる変換表を更新して書き換えを終了する。この書き換え終了を受けて構成番号変換部３２は、変換表を参照して初期状態のオブジェクトコードの各構成情報の実番号を取得して補助制御部４２へ通知する。なお、構成書換部３５が動作を開始するきっかけは外部からの準備要求である必要はなく、起動と同時に所定の動作を実行してもよい。【０１６６】
補助制御部４２は、取得した実番号に基づきプロセッサエレメント４１群に対する初期状態の構成情報を指定する。そして、ライトイネーブル（ＷＥ）キャンセル信号の発行を停止し、プロセッサエレメント４１群に処理を開始させる。【０１６７】
以上の動作の後、データ処理装置は定常動作に移行する。【０１６８】
以下、図２０及び図２１に示す状態遷移を実現するオブジェクトコードにしたがって処理を実行する場合を例にして、本実施例のデータ処理装置の定常動作について説明する。【０１６９】
図２０及び図２１に示す状態遷移は、２種類のパケットが到着し、その種別に応じて順次処理する動作を仮定している。論理番号「０」は入力待ち、論理番号「３」は２種類に共通する動作としている。図２０は状態管理部３１で扱う状態遷移図を示し、図２１は図２０に示した状態遷移の要部の内部状態を示している。【０１７０】
本実施例では、データ処理装置（ＤＲＰ）が備える命令メモリにて８種類の構成情報が保持できるものとし、図２２に示すように実番号０に論理番号０の構成情報が保持されているものとする。また、各構成情報は補助制御部４２の制御により状態遷移する複数の状態を備えているものとする。以下、論理番号「ｘ」の構成情報に含まれる、補助制御部４２により制御される状態の番号（以下、内部状態番号と称す）を「ｙ」とした場合、該状態をｘ−ｙと表記する。【０１７１】
ここでは、補助制御部４２に図２１の最上部に示す論理番号「０」の状態遷移図が保存され、状態遷移管理部３の状態管理部３１に図２０に示す論理番号間の状態遷移図が保存されているものとする。【０１７２】
以下、外部メモリに全ての論理番号の状態遷移図が保存され、論理番号「０」の構成情報に含まれる内部状態番号「１」（状態０−１）から処理を実行する場合を考える。【０１７３】
このとき、演算部４の各プロセッサエレメント４１に現状態の構成情報が通知され、各プロセッサエレメント４１の動作とスイッチの接続関係が決定する。その結果、各プロセッサエレメント４１で所定の演算が実行される。【０１７４】
演算結果がイベント信号として補助制御部４２に通知されると、補助制御部４２はそのイベント信号に対応する状態遷移図に基づき次の状態への遷移を制御する。ここでは、補助制御部４２で制御可能な小規模な状態遷移（状態は０−１から状態０−２への遷移）であるため、構成番号変換部３２はプロセッサエレメント４１群に内部状態番号「２」を指定する。【０１７５】
次のクロックでも同様にイベント信号が補助制御部４２に通知され、状態０−２から状態０−３へ遷移する。【０１７６】
次に、各プロセッサエレメント４１による演算の結果、状態０−３から状態１−１へ遷移させるためのイベント信号Ａが発行された場合、補助制御部４２では制御できない大規模な状態遷移であるため、補助制御部４２は、プロセッサエレメント４１群に動作を停止させるためのＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により、内容更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０１７７】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態管理部３１にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「０」とイベント信号Ａとに基づき次の状態の論理番号「１」を決定し、構成番号変換部３２へ通知する。また、状態管理部３１は、次の状態の内部状態番号「１」を決定し、補助制御部４２へ通知する。【０１７８】
構成番号変換部３２は、変換表を用いて論理番号「１」を実番号に変換する。ここでは、次の状態の構成情報が構成情報メモリに保持されていないため、変換表には対応する実番号が無く、実番号への変換に失敗する。その場合、構成番号変換部３２は構成書換部３５に対して論理番号「１」の構成情報の書き換えを要求する。【０１７９】
構成書換部３５は、内部に各オブジェクトコードに含まれる全ての構成情報を持つ構成番号変換表を備え、該構成番号変換表に基づき対応する構成情報を選択し、構成情報メモリの書き換え対象を決定する。ここでは、論理番号「０」が書き込まれた部位を除く、実番号「１」から「７」を書き換え対象とする。【０１８０】
構成書換部３５は、構成番号変換部３２が備える変換表の更新を行い、要求された論理番号「１」の構成情報を実番号「１」の構成情報メモリに書き込み、補助制御部４２の状態管理部４３が備える状態遷移図を更新する。そして、構成番号変換部３２が備える変換表の書き込み完了フラグを更新して書き換え処理を終了する。【０１８１】
構成番号変換部３２は、この書き換え終了を受けて、再度、変換表を参照し、次の状態の実番号「１」を取得して補助制御部４２及び状態管理部３１に通知する。【０１８２】
補助制御部４２は、プロセッサエレメント４１群に次の状態の実番号「１」、その内部番号「１」に対応する構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止してプロセッサエレメント４１群に動作を再開させる。【０１８３】
論理番号「１」からは論理番号「２」にしか遷移しない。これは図２０に示した状態遷移図より明らかである。論理番号「１」への移行指示を示す情報を受け取った書換決定部３６は、状態遷移図を解析することで論理番号「２」の構成情報を構成書換部３５に要求する。本実施例では、論理番号「１」でプロセッサエレメント４１群が動作しているうちに、構成書換部３５が論理番号「２」の構成を書き込み始める。この構成情報の書き込みを開始したときの変換表を図２３（ａ）に示す。ここでは、論理番号「１」の状態遷移が長大であり、論理番号「１」を処理している途中で構成書換部３５による論理番号「２」の構成情報の書き込みが終了するものとする。構成情報の書き込み終了が書換決定部３６に通知されると、ここでは論理番号「２」から論理番号「３」にしか遷移しないため、書換決定部３６は論理番号「３」の構成情報を構成書換部３５に要求する。【０１８４】
ここで、論理番号「１」における処理が終了し、状態１−４から状態２−１へ遷移させるためのイベント信号Ａが発行された場合、補助制御部４２では状態１−４から他の論理番号への遷移しか分からない。そのため、補助制御部４２は、まずプロセッサエレメント４１群の動作を停止させるためにＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により保持データの更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０１８５】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態遷移管理部３にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「１」とイベント信号Ａとに基づき次に遷移する論理番号「２」を決定し、構成番号変換部３２へ送出する。また、次に遷移する論理番号「２」の内部状態番号「１」を決定し、補助制御部４２へ通知する。【０１８６】
構成番号変換部３２は、変換表を用いて論理番号を実番号に変換する。ここでは、次に遷移する論理番号「２」の構成情報の書き込みが終了して書き込み完了フラグが立っているため、実番号への変換に成功する。構成番号変換部３２は、得られた実番号「２」を補助制御部４２及び状態管理部３１へ送信する。【０１８７】
補助制御部４２は、構成情報の実番号「２」と内部状態番号「１」を受け取ると、プロセッサエレメント４１群に対して次の状態の構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止し、プロセッサエレメント４１群に動作を再開させる。【０１８８】
図２０に示すように、論理番号「３」からの遷移先は、論理番号「４」と論理番号「１１」の二つが存在するが、例えば論理番号「２」から遷移してきた場合は論理番号「４」にしか遷移せず、論理番号「１０」から遷移してきた場合は論理番号「１１」にしか遷移しないように設定できる。このような遷移先の指定は、状態遷移図だけでは実現できないが、オブジェクトコードの合成段階で設定することが可能である。ここでは、オブジェクトコードの合成段階で遷移先を指定するものとする。具体的には、論理番号「３」に遷移してきたとき、それまでの処理に応じて次の遷移先のプリロード要求を構成番号変換部３２に出力する処理をプロセッサエレメント４１で実行するように、オブジェクトコードを合成すればよい。なお、このようなプリロード要求は、論理番号「３」に到達した時点ではなく、論理番号「２」または「１０」に到達した時点、あるいはそれ以前の論理番号に到達した時点で出力してもよい。論理番号「３」の内部状態の遷移に時間を要する場合は論理番号「３」の到達時で十分であり、論理番号「３」から他の論理番号への遷移に要する時間が短い場合は、論理番号「３」に到達する以前にプリロード要求を出力すればよい。【０１８９】
論理番号「２」から論理番号「３」に遷移し、論理番号「３」における状態遷移が開始されると、先述したプロセッサエレメント４１から論理番号「４」のプリロード要求が構成番号変換部３２に出力される。【０１９０】
構成番号変換部３２は、変換表を用いて論理番号「４」を実番号に変換する。ここでは、次の状態の構成情報が構成情報メモリに保持されていないため、変換表に対応する実番号が無く、実番号への変換に失敗する。その場合、構成番号変換部３２は構成書換部３５に対して論理番号「４」の構成情報の書き換えを要求する。【０１９１】
構成書換部３５は、内部に各オブジェクトコードに含まれる全ての状態の構成情報を持つ構成番号変換表を備え、該構成番号変換表に基づき対応する構成情報を選択し、構成情報メモリの書き換え対象を決定する。ここでは、構成情報が書き込まれていない部位である、実番号「４」から「７」を書き換え対象とする。【０１９２】
構成書換部３５は、構成番号変換部３２が備える変換表を更新し、書き換えを要求された論理番号「４」の構成情報を実番号「４」の構成情報メモリに書き込み、補助制御部４２の状態管理部４３が備える状態遷移図を更新する。そして、構成番号変換部３２が備える変換表の書き込み完了フラグを更新して書き換え処理を終了する。この書き換え後の変換表を図２３（ｂ）に示す。【０１９３】
構成番号変換部３２は、この書き換え終了を受けてプリロード要求に対する処理を完了する。この処理は状態遷移ではないため構成通知は行わない。【０１９４】
ここで、論理番号「４」の処理にあまり時間がかからず、プリロード要求に対する書き換え中に状態３−４から状態４−１へ遷移させるためのイベント信号Ａが発行されると、補助制御部４２では状態３−４から他の論理番号への遷移しか分からない。そのため、補助制御部４２は、まずプロセッサエレメント４１群の動作を停止させるためにＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により保持データの更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０１９５】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態遷移管理部３にイベント信号を送出する。状態遷移管理部の状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「１」とイベント信号Ａとに基づき次に遷移する状態の論理番号「４」を決定し、構成番号変換部３２へ送出する。また、次の状態の内部状態番号「１」を決定し、補助制御部４２へ通知する。【０１９６】
構成番号変換部３２は、変換表を用いて論理番号を実番号に変換する。ここでは、次の状態の構成情報がプリロード要求によって構成情報メモリに書き込み途中にあるため、構成番号変換部３２は、番号変換には成功するが、書き込みの完了フラグを待って得られた実番号「４」を補助制御部４２及び状態管理部３１へ送信する。【０１９７】
補助制御部４２は、構成情報の実番号「２」と内部番号「１」を受け取ると、プロセッサエレメント４１群に対して次の状態の構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止し、プロセッサエレメント４１群に処理動作を再開させる。【０１９８】
以下、論理番号「８」の構成情報を書換決定部３６が要求する場合を考える。このときの変換表を図２３（ｃ）に示す。書換決定部３６による論理番号「８」の要求に対し、構成書換部３５が構成情報を書き込む際、構成情報メモリには８個の構成情報が既に書き込まれており、論理番号「８」の構成情報を書き込むには、いずれかの構成情報を消去しなければならない。ここで消去する論理番号の決定には様々な手法が考えられるが、ここでは構成情報が存在する論理番号のうち、現在実行中の論理番号から最も遠い遷移先である論理番号の構成情報を消去する。現在実行中の論理番号が「５」である場合、構成書換部３５は、実番号「４」に書き込まれている論理番号「４」の構成情報を消去し、代わりに論理番号「８」の構成情報を書き込む。この構成情報の書き込み処理を開始したときの変換表を図２３（ｄ）に示す。【０１９９】
さらに処理が進み、最初に到着したパケット（第１のパケット）に対する処理が終了して論理番号「０」に戻った場合を考える。このときの変換表を図２３（ｅ）に示す。ここで、次に到着したパケット（第２のパケット）が最初に到着したパケットと同じものであり、論理番号「１」に遷移した場合、書換決定部３６は、既に論理番号「３」までは構成情報が存在するため、論理番号「４」の構成要求を構成書換部３５に発行する。【０２００】
構成書換部３５は、論理番号「１」から最も遠い遷移先である論理番号「０」の構成情報を消去し、論理番号「４」の構成情報を書き込む。この場合、論理番号「４」の構成情報は、最初に書き込まれた実番号と異なる実番号に格納されるが、本発明ではその差異で発生する問題を論理番号から実番号へ変換する処理を備えることで解消している。論理番号「２」に遷移したときの変換表を図２３（ｆ）に示す。構成書換部３５は、論理番号「２」に遷移したとき、論理番号「１」の構成情報を消去し、代わりに論理番号「０」の構成情報を書き込む。【０２０１】
以降、同様にして第２のパケットに対する処理が終了し、論理番号「０」に戻った場合を考える。このときの変換表を図２３（ｇ）に示す。第２のパケットの次に到着したパケット（第３のパケット）は、第１、第２のパケットと異なる種類のパケットであり、各プロセッサエレメント４１による演算の結果、状態０−３から状態９−１へ遷移させるためのイベント信号Ｂが発行されると、補助制御部４２では制御できない大規模な状態遷移であるため、補助制御部４２は、プロセッサエレメント４１群に動作を停止させるためのＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により、内容更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０２０２】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態管理部３１にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「０」とイベント信号Ｂとに基づき次の状態の論理番号「９」を決定し、構成番号変換部３２へ通知する。また、次の状態の内部番号「１」を決定し、補助制御部４２へ通知する。【０２０３】
構成番号変換部３２は、変換表を用いて論理番号「９」を実番号に変換する。ここでは、次の状態の構成情報が構成情報メモリに保持されていないため、変換表には対応する実番号が無く、実番号への変換に失敗する。その場合、構成番号変換部３２は構成書換部３５に対して論理番号「９」の構成情報の書き換えを要求する。【０２０４】
構成書換部３５は、各オブジェクトコードに含まれる全ての構成情報を持つ構成番号変換表を備え、該構成番号変換表に基づいて対応する構成情報を選択し、構成情報メモリの書き換え対象を決定する。ここでは、論理番号「０」が書き込まれた部分を除く、実番号「１」から「７」を書き換え対象とする。その中で、論理番号「９」から最も遠い論理番号「２」が書き込まれている実番号「２」を書き換え対象に決定する。【０２０５】
構成書換部３５は、構成番号変換部３２が備える変換表を更新し、要求された論理番号「９」の構成情報を実番号「２」の構成情報メモリに書き込み、補助制御部４２の状態管理部の状態遷移図を更新する。そして、構成番号変換部３２が備える変換表の書き込み完了フラグを更新して書き換え処理を終了する。【０２０６】
構成番号変換部３２は、この書き換え終了を受けて、再度、変換表を参照し、次の状態の実番号「２」を取得して補助制御部４２と状態管理部３１に通知する。【０２０７】
補助制御部４２は、プロセッサエレメント４１群に次の状態の実番号「２」、その内部番号「１」に対応する構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止してプロセッサエレメント４１群に動作を再開させる。このときの変換表を図２３（ｈ）に示す。【０２０８】
書換決定部３６は、論理番号「９」が遷移先であると知った時点で、その次に必要となる論理番号「１０」を決定し、構成書換部３５に要求を出す。構成書換部３５は論理番号「９」の構成情報の書き込みが終了すると、論理番号「１０」の構成情報の書き込みを開始する。【０２０９】
続いて、各プロセッサエレメント４１による演算の結果、状態９−１から状態１０−２へ遷移させるためのイベント信号Ｂが発行された場合、補助制御部４２では制御できない大規模な状態遷移であるため、補助制御部４２は、プロセッサエレメント４１群に処理を停止させるためのＷＥキャンセル信号を発行する。プロセッサエレメント４１のレジスタはこの信号により、内容更新を受け付けなくなる。また、外部ポートからのデータ入力動作も停止する。【０２１０】
補助制御部４２は、ＷＥキャンセル信号の発行と同時に状態管理部３１にイベント信号を送出する。状態管理部３１は、補助制御部４２からイベント信号を受け取ると、状態遷移図を基に作成された変換表にしたがって、現在の実番号「２」とイベント信号Ｂとに基づき次の状態の論理番号「１０」を決定し、構成番号変換部３２へ通知する。また、次の状態の内部番号「２」を決定し、補助制御部４２へ通知する。【０２１１】
構成番号変換部３２は、変換表を用いて論理番号を実番号に変換する。ここでは、次の状態の構成情報がプリロード要求により構成情報メモリに書き込み中であるため、番号変換には成功するが、書き込み完了フラグを待って得られた実番号「０」を補助制御部４２及び状態管理部３１へ送信する。【０２１２】
補助制御部４２は、構成情報の実番号「０」と内部番号「２」とを受け取ると、プロセッサエレメント４１群に対して次の状態の構成情報を指定する。そして、ＷＥキャンセル信号の発行を停止し、プロセッサエレメント４１群に処理を再開させる。このときの変換表を図２３（ｉ）に示す。【０２１３】
なお、２種類のパケットの到着順に何らかの法則性がある場合、書換決定部３６は、その履歴を利用して、論理番号「０」からの遷移先を予測し、論理番号「１」または論理番号「９」の構成情報を要求してもよい。また、２種類のパケットの到着順に法則性が無く、どちらのパケットも同じ程度到着する場合、書換決定部３６は、論理番号「１」及び論理番号「９」の構成情報をそれぞれ要求してもよい。このような処理を実行すると、論理番号「０」からの遷移時に構成情報の書き換え終了を待つ必要が無いため、処理の待機時間が低減して処理性能が向上する。【０２１４】
上記処理の繰り返しにより処理対象のデータに対する演算処理を実行する。【０２１５】
なお、図２１に示した状態遷移例では、状態０−３から論理番号が変わる遷移として、状態１−１と状態９−１があるが、これらは演算部４から異なるイベント信号を発行することで遷移先を区別することも可能である。【０２１６】
また、例えば状態９−１から状態１０−２への遷移と、状態９−３から状態１０−１への遷移とは、どちらも論理番号「９」から論理番号「１０」への遷移であるが、このような場合も演算部４から異なるイベント信号を発行することで遷移先の内部番号を区別することが可能であり、任意の内部番号へ遷移することも可能である。【０２１７】
また、上記説明では論理番号が変わる状態遷移時（状態遷移管理部の管理下の状態遷移）に必ずしも内部状態番号「１」に遷移しない例を示しているが、論理番号が変わる状態遷移時に内部状態番号「１」に必ず遷移させたい場合は論理番号「１０」の内部状態を２つに分割すればよい。その場合、論理番号「９」に状態１０−１を含めることが望ましいが、そのようにできない場合は構成情報数が増えることになる。【０２１８】
本実施例のように、外部の記憶手段にオブジェクトコードの各構成情報を格納しておき、構成書換部により必要に応じて構成情報メモリの内容を書き換えることで、データ処理装置は、その構成情報メモリの記憶容量を超える構成情報にしたがって処理を実行することが可能となる。【０２１９】
そのため、小規模なデータ処理装置で大規模なオブジェクトコードを実行することが可能であり、従来よりもチップ面積を小さくできるためにチップコストが低減する。【０２２０】
さらに、必要な構成情報を前もって書き換えることにより、処理における待ち時間が低減して処理性能が向上する。
【図１】
0005131188.tif 000002
【図２】
0005131188.tif 000003
【図３】
0005131188.tif 000004
【図４】
0005131188.tif 000005
【図５】
0005131188.tif 000006
【図６】
0005131188.tif 000007
【図７】
0005131188.tif 000008
【図８】
0005131188.tif 000009
【図９】
0005131188.tif 000010
【図１０】
0005131188.tif 000011
【図１１】
0005131188.tif 000012
【図１２】
0005131188.tif 000013
【図１３】
0005131188.tif 000014
【図１４】
0005131188.tif 000015
【図１５】
0005131188.tif 000016
【図１６】
0005131188.tif 000017
【図１７】
0005131188.tif 000018
【図１８】
0005131188.tif 000019
【図１９】
0005131188.tif 000020
【図２０】
0005131188.tif 000021
【図２１】
0005131188.tif 000022
【図２２】
0005131188.tif 000023
【図２３ａ】
0005131188.tif 000024
【図２３ｂ】
0005131188.tif 000025
【図２３ｃ】
0005131188.tif 000026
【図２３ｄ】
0005131188.tif 000027
【図２３ｅ】
0005131188.tif 000028
【図２３ｆ】
0005131188.tif 000029
【図２３ｇ】
0005131188.tif 000030
【図２３ｈ】
0005131188.tif 000031
【図２３ｉ】
0005131188.tif 000032