(57)【要約】【課題】電力消費を低減しつつ、構成情報の切り替えによる処理性能低下も低減可能なアレイ型演算装置を提供する。【解決手段】電源供給を制御可能な第１の領域と電源が常時供給される第２の領域とを含むアレイ型演算装置において、第１の領域に配置され、それぞれが複数の演算要素と該複数の演算要素の接続を制御するルータとを含む複数の演算手段と、第２の領域に配置され、複数の演算手段の中の１以上の演算手段に構成情報を供給する構成情報供給手段と、第２の領域に配置され、複数の演算手段に対する電源供給を制御する電源供給制御手段と、を有し、構成情報供給手段は、外部から構成情報を受信し該構成情報を保持可能に構成された保持手段と、保持手段により保持された構成情報の中から１つの構成情報を選択する選択手段と、選択手段により選択された構成情報を該構成情報が利用される１以上の演算手段に供給する供給手段と、を有する。【選択図】図１
2014157508.tif 000002
【特許請求の範囲】
【請求項１】
電源供給を制御可能な第１の領域と電源が常時供給される第２の領域とを含むアレイ型演算装置であって、
前記第１の領域に配置され、それぞれが複数の演算要素と該複数の演算要素の接続を制御するルータとを含む複数の演算手段と、
前記第２の領域に配置され、前記複数の演算手段の中の１以上の演算手段に構成情報を供給する構成情報供給手段と、
前記第２の領域に配置され、前記複数の演算手段に対する電源供給を制御する電源供給制御手段と、
を有し、
前記構成情報供給手段は、
外部から構成情報を受信し該構成情報を保持可能に構成された保持手段と、
前記保持手段により保持された構成情報の中から１つの構成情報を選択する選択手段と、
前記選択手段により選択された構成情報を該構成情報が利用される１以上の演算手段に供給する供給手段と、
を有し、
前記アレイ型演算装置における処理を第１の構成情報を用いた処理から第２の構成情報と用いた処理に切り替える場合、前記保持手段は、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報を外部から受信して保持し、前記電源供給制御手段は、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報で使用される１以上の演算手段に電源が安定して供給されるように電源供給を制御し、前記選択手段は、前記第１の構成情報を用いた処理の完了に応じて前記第２の構成情報を選択する、
ことを特徴とするアレイ型演算装置。
【請求項２】
前記電源供給制御手段は、前記第１の構成情報を用いた処理の完了に応じて、前記第１の構成情報を用いた処理で使用されかつ前記第２の構成情報を用いた処理で使用されない１以上の演算手段に対する電源供給を制御する
ことを特徴とする請求項１に記載のアレイ型演算装置。
【請求項３】
前記構成情報供給手段は、複数の演算手段に対して１つ設けられる
ことを特徴とする請求項２に記載のアレイ型演算装置。
【請求項４】
前記構成情報供給手段は、１つの演算手段に対して１つ設けられる
ことを特徴とする請求項２に記載のアレイ型演算装置。
【請求項５】
前記電源供給制御手段による電源供給の制御は、電源電圧の制御と電源の供給・遮断制御とを含む
ことを特徴とする請求項１乃至４の何れか一項に記載のアレイ型演算装置。
【請求項６】
前記保持手段は、シフトレジスタにより構成される
ことを特徴とする請求項１乃至５の何れか一項に記載のアレイ型演算装置。
【請求項７】
前記演算手段は、該演算手段に対して電源供給が遮断されている間、構成情報を退避して保持する退避手段を有している
ことを特徴とする請求項１乃至６の何れか一項に記載のアレイ型演算装置。
【請求項８】
前記退避手段は、リテンションレジスタにより構成される
ことを特徴とする請求項７に記載のアレイ型演算装置。
【請求項９】
設定データに応じた処理をそれぞれ割り当て可能な複数の演算要素と、
前記設定データに応じた接続環境を当該複数の演算手段に提供する接続要素と、
前記複数の演算要素において第１設定データに応じた処理が完了したことを検出し、検出に応じて第２設定データを前記演算要素および接続要素に供給する供給手段と、
前記複数の演算要素と前記接続要素とを含む演算部と、前記供給手段を含む制御部と、に供給する電源の電圧を制御する制御手段と、
を有することを特徴とする演算装置。
【請求項１０】
前記制御手段は、演算部へ供給する電源の電圧の遮断制御と供給制御が可能である
ことを特徴とする請求項９に記載の演算装置。
【請求項１１】
前記供給手段を、前記制御手段により制御される領域毎に備える
ことを特徴とする請求項９に記載の演算装置。
【請求項１２】
前記複数の演算要素と前記接続要素とを含む演算部は、前記制御手段からの電源の供給が無い場合に前記第１設定データを退避する退避手段を有する
ことを特徴とする請求項９に記載の演算装置。
【請求項１３】
前記供給手段は、前記設定データを複数保持し、第１設定データに応じた処理が完了したことを検出し、検出に応じて前記制御手段による第２設定データを供給する時間を変更する
ことを特徴とする請求項１２に記載の演算装置。
【請求項１４】
請求項１乃至８の何れか一項に記載のアレイ型演算装置と、
構成情報を前記保持手段に送信する送信手段と、
前記複数の演算手段による処理の実行状態を検出する検出手段と、
前記検出手段による前記第１の構成情報を用いた処理が終了に応じて、前記第２の構成情報の選択を指示する信号を前記選択手段に送信する選択制御手段と、
を有することを特徴とする情報処理システム。
【請求項１５】
電源供給を制御可能な第１の領域と電源が常時供給される第２の領域とを含むアレイ型演算装置の制御方法であって、前記アレイ型演算装置は、前記第１の領域に配置され、それぞれが複数の演算要素と該複数の演算要素の接続を制御するルータとを含む複数の演算手段と、前記第２の領域に配置され、前記複数の演算手段の中の１以上の演算手段に構成情報を供給する構成情報供給手段と、前記第２の領域に配置され、前記複数の演算手段に対する電源供給を制御する電源供給制御手段と、を有し、
前記構成情報供給手段は、外部から構成情報を受信し該構成情報を保持可能に構成された保持手段と、前記保持手段により保持された構成情報の中から１つの構成情報を選択する選択手段と、前記選択手段により選択された構成情報を該構成情報が利用される１以上の演算手段に供給する供給手段と、を有し、
前記制御方法は、前記アレイ型演算装置における処理を第１の構成情報を用いた処理から第２の構成情報と用いた処理に切り替える場合、
前記保持手段が、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報を外部から受信して保持するステップと、
前記電源供給制御手段が、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報で使用される１以上の演算手段に電源が安定して供給されるように電源供給を制御するステップと、
前記選択手段が、前記第１の構成情報を用いた処理の完了に応じて前記第２の構成情報を選択するステップと、
を含むことを特徴とするアレイ型演算装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の演算要素で構成され複数の異なる処理を実行することが可能なアレイ型演算装置における電力制御技術に関するものである。
【背景技術】
【０００２】
半導体製造技術の進歩による素子の微細化に伴い、大規模集積回路（ＬＳＩ）の規模はさらに増大し、搭載されるトランジスタ数も飛躍的に増大してきている。そして、単一チップで多用途に対応可能なＬＳＩが望まれている。特に、多様な製品に対応可能なように、ＬＳＩに対して、高性能化、低消費電力、機能変更の柔軟性が求められている。
【０００３】
近年、高性能化、低消費電力、機能変更の柔軟性といった要望を実現するため、動的再構成可能なプロセッサであるアレイ型演算装置が注目されている。アレイ型演算装置は、ＣＰＵ、ＤＳＰ、ＡＬＵ等の演算要素（以下ＰＥと呼ぶ）と、ＰＥ間の接続を制御するルータとで主に構成される。ＰＥの処理内容およびルータの接続は、構成情報と呼ばれる設定データを当該ＰＥ及びルータに設定する事で変更可能となっている。つまり、アレイ型演算装置は、データ処理内容に応じて構成情報を動的に変更することで、機能変更に柔軟に対応する事が出来、かつ、ＰＥ数を増やす事で簡単に高性能化することが出来るという利点がある。
【０００４】
ただし、アレイ型演算装置に搭載するＰＥ数を増やすことによって、処理性能を向上させることが出来るが、同時に、消費電力が増大してしまうという問題がある。そこで、アレイ型演算装置内部に電源のＯＮ／ＯＦＦを切替可能な領域（電源遮断領域）を設け、当該領域への電源供給をＯＦＦすることで電源消費を低減する技術がある。また、特許文献１では、演算器アレイの動作の停止・再開を行う技術を開示している。具体的には、リコンフィギュラブル演算器アレイの動作の停止時に、外部から供給されるデータを一時的に格納し、動作の再開時に格納されたデータを当該リコンフィギュラブル演算器アレイの供給するバッファ回路を使用する技術を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２４４２３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、アレイ型演算装置において電源遮断領域を設けた場合、構成情報の転送経路である構成情報転送バスへの電源供給が遮断されると構成情報の書き込みを行うことができない。そのため、構成情報の書き換え時には、構成情報転送バスへの電源供給を行う必要があり、処理を行うＰＥが存在しない領域に対しても電源供給を行わなければならないという問題があった。上述の特許文献１に記載の技術は、演算器アレイの動作の停止・再開を行うのみであるため、この問題には対処することができない。さらに、ＰＥ数の増加に伴い構成情報の書き換え時間が長くなってきている、構成情報が頻繁に切り替わった場合、電源復帰後の構成情報の書き換え時間による性能低下が無視できない時間となる。
【課題を解決するための手段】
【０００７】
上述の問題点を解決するため、本発明のアレイ型演算装置は以下の構成を備える。すなわち、電源供給を制御可能な第１の領域と電源が常時供給される第２の領域とを含むアレイ型演算装置において、前記第１の領域に配置され、それぞれが複数の演算要素と該複数の演算要素の接続を制御するルータとを含む複数の演算手段と、前記第２の領域に配置され、前記複数の演算手段の中の１以上の演算手段に構成情報を供給する構成情報供給手段と、前記第２の領域に配置され、前記複数の演算手段に対する電源供給を制御する電源供給制御手段と、を有し、前記構成情報供給手段は、外部から構成情報を受信し該構成情報を保持可能に構成された保持手段と、前記保持手段により保持された構成情報の中から１つの構成情報を選択する選択手段と、前記選択手段により選択された構成情報を該構成情報が利用される１以上の演算手段に供給する供給手段と、を有し、前記アレイ型演算装置における処理を第１の構成情報を用いた処理から第２の構成情報と用いた処理に切り替える場合、前記保持手段は、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報を外部から受信して保持し、前記電源供給制御手段は、前記第１の構成情報を用いた処理が完了する前に前記第２の構成情報で使用される１以上の演算手段に電源が安定して供給されるように電源供給を制御し、前記選択手段は、前記第１の構成情報を用いた処理の完了に応じて前記第２の構成情報を選択する。
【発明の効果】
【０００８】
本発明によれば、演算装置において電力消費を低減しつつ、構成情報の切り替えによる処理性能低下を低減する技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態に係るアレイ型演算装置の内部構成を示すブロック図である。
【図２】供給部の詳細を示す図である。
【図３】供給部の詳細の他の例を示す図である。
【図４】供給部で使用される各種テーブルを例示的に示す図である。
【図５】第１実施形態に係るアレイ型演算装置におけるＰＳＯ領域と供給部の関係を示すブロック図である。
【図６】各構成情報を用いた処理で使用されるＰＳＯ領域を示す図である。
【図７】各ＰＳＯ領域における電圧−時間関係を例示的に示す図である。
【図８】第２実施形態に係るアレイ型演算装置におけるＰＳＯ領域と供給部の関係を示すブロック図である。
【図９】供給部の内部構成を示す図である。
【図１０】供給部における構成情報の保持制御を説明するフローチャートである。
【図１１】第３実施形態に係るアレイ型演算装置の内部構成を示すブロック図である。
【図１２】ルータ、ＰＥにおける構成情報の退避動作を説明するフローチャートである。
【図１３】アレイ型演算装置を含むシステムの全体構成を示す図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１１】
（第１実施形態）
本発明に係るアレイ型演算装置の第１実施形態として、利用する演算要素を動的に変更するアレイ型演算装置を例に挙げて以下に説明する。特に、アレイ型演算装置において電源遮断領域（Power Shut Off（ＰＳＯ）領域）を配置する場合においても、構成情報の書き換え（第１設定データから第２設定データへの書き換え）を好適に実行可能とする構成について説明する。
【００１２】
＜アレイ型演算装置の構成＞
図１は、第１実施形態に係るアレイ型演算装置の内部構成を示すブロック図である。アレイ型演算装置は電源の遮断が可能に構成されたＰＳＯ領域（第１の領域）１０１と、電源が常時供給される領域（第２の領域）で構成される。ＰＳＯ領域１０１は、電源供給のＯＮ／ＯＦＦが切替制御の対象となる領域である。ＰＳＯ領域１０１は内部に後述するルータ１０９、ＰＥ１１０、ネットワーク信号線１０６が配置される。ここでは、ＰＳＯ領域１０１へ配置されない要素は、常時電源が供給される領域に配置されるものとする。
【００１３】
電源制御部１０２（電源供給制御手段）は、ＰＳＯ領域１０１に供給する電源のＯＮ／ＯＦＦ切替を制御する。構成情報転送バス１０３は、Ｖａｌｉｄ信号と構成情報信号の２つを転送するバスである。構成情報は構成情報信号を用いてシリアル転送され、構成情報の転送制御は、Ｖａｌｉｄ信号と後述するＢｕｓｙ信号を用いて行う。前述のＶａｌｉｄ信号は構成情報信号に有効な値が設定されている場合、前述の構成情報信号と同期してアサートされる。なお、電源供給の制御として、電源の供給・遮断制御の他、電源電圧の制御を行うよう構成しても良い。
【００１４】
Ｂｕｓｙ信号１１２は、後述する構成情報供給部１０４が構成情報を受け取れない場合に出力する信号であり、構成情報の転送制御に使用される。Ｂｕｓｙ信号１１２がアサートされている間、システムは構成情報転送バス１０３に同じ構成情報を出力し続けるか、Ｂｕｓｙ信号１１２がデアサートされるまで構成情報を送信しないものとする。ここでは、構成情報転送にＶａｌｉｄ信号とＢｕｓｙ信号及び構成情報信号で構成されるバスを用いるよう説明したが、バス構造はこれに限定されるものではなく、他の様々な形態のバス構造が利用可能である。
【００１５】
構成情報供給部１０４（以下、供給部１０４と呼ぶ）は処理に必要な構成情報をルータ（接続要素）およびＰＥへ供給する。供給部１０４は、構成情報転送バス１０３から受信した構成情報を複数保持し、後述するトリガ信号のアサート時にＰＥまたはＰＥ間を接続するネットワーク信号へ出力する構成情報の切替制御を行う。
【００１６】
切替指示信号１０５は、構成情報の切替指示を行うトリガとなる信号である。具体的には、システムは、処理終了を検知すると、切替指示信号１０５をアサートする。切替指示信号１０５がアサートされると、供給部１０４は、出力する構成情報を切り替える。ここでは、切替指示信号１０５は処理終了時にアサートされると説明したが、処理終了時に限定されるものではなく、次の処理開始前であれば別のタイミングでアサートしても良い。  
【００１７】
ネットワーク信号線１０６は、異なるルータ間およびルータとＰＥとの間でデータの送受信が可能となるように相互接続された信号線である。処理に必要なデータは、入力データバス１０７を介して入力される。また、ルータ１０９で転送制御されたデータは出力データバス１０８を介して出力される。ルータ１０９は、供給部１０４から出力された構成情報に応じて、ネットワーク信号線１０６、入力データバス１０７、出力データバス１０８のデータ転送経路を決める。演算要素１１０はデータ処理を実行する要素であり、ＡＬＵ、ＣＰＵ、ＤＳＰなどのプロセッサエレメント（ＰＥ）により構成され、供給部１０４から出力され書き込まれた構成情報に応じて演算内容を変更する。
【００１８】
供給部１０４は、信号線１１１を介してルータ１０９または演算要素１１０へ構成情報を伝達する。なお、ここでは、ルータ１０９及び演算要素１１０は、それぞれ、所定の供給部１０４と接続されるものとする。
【００１９】
＜アレイ型演算装置における供給部の構成＞
図２は、第１実施形態に係るアレイ型演算装置の供給部１０４の詳細を示す図である。また、図３は、供給部１０４の詳細の他の例を示す図である。なお、図２及び図３においては、図１と共通の要素には同一番号を付し、説明を省略する。
【００２０】
図２において、２０１は構成情報保持部であり、構成情報転送バス１０３から受信した構成情報を複数保持する。図２において、構成情報転送バス１０３は複数の構成情報信号を転送する機能部である。構成情報保持部２０１は構成情報信号毎にシフトレジスタ２２０、２２１、２２２を有する。ここで、シフトレジスタ２２０、２２１、２２２は、それぞれ入力取り込みとホールドの両動作が可能なフリッププロップで構成される。入力取り込みとホールド制御は、後述する２０２から出力された制御信号２０９、２１０、２１１に基づいて行う。
【００２１】
なお、構成情報転送バス１０３が複数の構成情報信号を転送する場合、構成情報はシステムから構成情報信号毎にインタリーブしながら送信されるものとする。例えば、３つの構成情報信号（ａ、ｂ、ｃ）を転送する場合、システムは構成情報毎にａ→ｂ→ｃ→ａ→ｂ→ｃと順々にパスを変えながら構成情報を送付するものとする。また、図２において、構成情報転送バス１０３から３つの構成情報信号が入力される例を用いたが、入力される構成情報信号の個数はこれに限定されるものではない。また、シフトレジスタに書き込まれている構成情報と同一の構成情報を再利用する場合、シフトレジスタに保持されている構成情報を別のシフトレジスタにコピーする事で構成情報の再利用を行ってもよい。
【００２２】
制御部２０２は、供給部１０４全体を制御する機能部であり、シフトレジスタ２２０、２２１、２２２の受信制御信号２０９、２１０、２１１の生成、Ｂｕｓｙ信号１１２の生成、制御信号２１５の生成を行う。
【００２３】
制御部２０２は、構成情報転送バス１０３のＶａｌｉｄ信号がアサートされると、有効な構成情報が送信されていると判断し、Ｖａｌｉｄ信号に同期して受信制御信号２０９をアサートする。受信制御信号２０９がアサート中、制御部２０２は、構成情報転送バス１０３から入力される信号をシフト動作により後段へ伝搬する。受信制御信号２０９がデアサートされている間、シフトレジスタ２２０は構成情報を保持し続ける。受信制御信号２１０、２１１はそれぞれシフトレジスタ２２１、２２２に対して受信制御信号２０９と同様の役割を持つ。
【００２４】
Ｂｕｓｙ信号１１２は、構成情報を受信できない場合にアサートされる信号である。具体的には、Ｂｕｓｙ信号１１２は、シフトレジスタ２２０、２２１、２２２全てに有効な情報が保持されている時にアサートされ、シフトレジスタ２２０、２２１、２２２に構成情報を書き込み可能な空きが発生するとデアサートされる。
【００２５】
制御信号２１５は、出力する構成情報を選択する為の信号である。ここでは、制御信号２１５は、シフトレジスタ２２０、２２１、２２２が保持する有効な構成情報の中で、処理に必要な構成情報を選択する信号である。切替指示信号１０５がアサートされる毎に、次の処理に必要な構成情報を選択する。例えば、シフトレジスタ２２０、２２１、２２２の全てに有効な構成情報が保持されており、シフトレジスタ２２２、２２０、２２１の構成情報を順に使用する場合、制御信号２１５はシフトレジスタ２２２の構成情報を選択するための信号を出力する。次に、１０５がアサートされると、制御信号２１５は２２２から２２０を選択する信号に切り替わる。更に１０５がアサートされると、制御信号２１５は２２０から２２１を選択する信号に切り替わる。
【００２６】
構成情報２１２、２１３、２１４は、それぞれ、シフトレジスタ２２０、２２１、２２２から出力される構成情報である。選択回路２１６は、制御信号２１５の値に応じて３つの構成情報２１２、２１３、２１４の何れか一つを選択する。選択回路２１６で選択された構成情報は信号線１１１を介して出力される。
【００２７】
供給部１０４の詳細の他の例を示す図３は、構成情報転送バス１０３が１つの構成情報信号を転送するよう構成される場合の構成を示している。選択回路３０５および選択回路３０５の選択を制御する制御信号３０４を用いる点が図２の構成と異なる。構成情報保持部２０１の構成は図２と同様であるため説明は省略する。
【００２８】
構成情報転送バス１０３は、供給部１０４へ１つの構成情報信号を入力した後、複数の経路に分割され、構成情報信号はシフトレジスタ２２０、２２１、２２２へ出力される。シフトレジスタ２２０、２２１、２２２における構成情報信号の受信制御は、図２と同様に制御部２０２から出力される制御信号２０９、２１０、２１１で行われる。ここでは、受信制御信号２０９、２１０、２１１は、構成情報転送バス１０３から入力した構成情報を、シフトレジスタ２２０、２２１、２２２へ順番にインタリーブしながら受信するように制御するものとする。例えば、構成情報を５回入力する場合、受信制御信号２０９、２１０、２１１は、シフトレジスタ２２０→２２１→２２２→２２０→２２１の順に構成情報を受信するように制御する。
【００２９】
制御信号３０４は、後述する選択回路３０５から出力する信号を選択する制御信号であり、制御信号２０９、２１０、２１１で受信指示されているシフトレジスタの値を選択回路３０５で選択するための制御信号を生成する。選択回路３０５はシフトレジスタ２２０、２２１、２２２が受信したデータを選択する選択回路であり、レジスタ２２０、２２１、２２２から出力される信号は選択回路３０５により１つに選択される。
【００３０】
なお、図３においては、３本のシフトレジスタ２２０、２２１、２２２を有する構成としているが、シフトレジスタは３本に限定されるものではなく、シフトレジスタは任意の本数で実現可能である。また、ここでは複数のシフトレジスタを用いて構成情報を保持する例について説明したが、構成情報を保持する方法はこの方法に限定されるものではない。例えば、構成情報を複数の信号線を用いて並列に受信し、受信した構成情報を自動アドレスカウントアップや自動ポインタインクリメント等を利用するアドレス発生器を用いて保持するよう制御してもよい。また、シフトレジスタをデイジーチェーン方式で１本に接続し構成情報を保持してもよいし、構成情報をレジスタファイルやＳＲＡＭに保持しても良い。
【００３１】
＜アレイ型演算装置を含むシステム全体の構成＞
図１３は、アレイ型演算装置を含む情報処理システムの全体構成を示す図である。ＣＰＵ１３０１は装置全体の制御を司る機能部である。ＲＯＭ１３０２は、ブートプログラムなどを記憶する機能部であり、ＲＡＭ１３０３はＣＰＵ１３０１のワークエリア、あるいは、オペレーティングシステム（ＯＳ）、アプリケーションを格納する機能部である。
【００３２】
ハードディスクドライブ（ＨＤＤ）１３０４は、ＯＳ、構成情報を作成するためのアプリケーション、ならびに、様々なデータを格納する。キーボード１３０５及びマウス１３０６はユーザインタフェースとして機能する。
【００３３】
表示制御部１３０７は、内部にビデオメモリ及び表示コントローラを内蔵するであり、表示装置１３０８へ映像信号を送信し様々な画面の表示を制御する。インタフェース（Ｉ／Ｆ）１３０９は各種外部デバイスと接続し通信するための機能部である。
【００３４】
情報処理装置１００は、上述のアレイ型演算装置に相当し、情報処理装置１００内部のレジスタはＣＰＵ１３０１から書き込み、及び読み出しが可能な領域に配置され、ＣＰＵ１３０１により構成情報が書きこまれる。また、情報処理装置１００は、ＲＡＭ１３０３へのアクセス（読み出し／書き込み）が可能であり、構成情報で設定されたアドレスに応じてＲＡＭ１３０３から入力データのロード及び処理結果のストアを行う。
【００３５】
システムに電源が投入されると、ＣＰＵ１３０１はＲＯＭ１３０２に格納されたブートプログラムを実行し、ＨＤＤ１３０４に格納されたＯＳをＲＡＭにロードする。その後、ＣＰＵ１３０１が構成情報を作成するアプリケーションを起動することで、ＣＰＵ１３０１が構成情報を作成する装置として機能することになる。
【００３６】
例えば、ＣＰＵ１３０１は情報処理装置１００の処理に必要な入力データをＲＡＭ１３０３の所定のアドレスへ配置する。次に、ＣＰＵ１３０１は作成した構成情報を情報処理装置１００の内部レジスタへ書き込むことでアレイ型演算装置を用いた処理を実行する。また、第１実施形態において、ＣＰＵ１３０１は、情報処理装置１００で処理しているタスクの実行状態を監視し、切替指示信号１０５のアサート制御（選択制御手段）も行う。  
【００３７】
＜構成情報の保持制御及び切替制御＞
図４は、供給部で使用される各種テーブルを例示的に示す図である。テーブル４００ａ〜４００ｄを用いた構成情報の保持制御と構成情報の切替制御の方法を説明する。なお、図４においては、テーブルに記載されている論理値は、全て正論理で記載している。そのため、以下の説明においてアサートは”１”に対応し、デアサートは”０”に対応する。  
【００３８】
テーブル４００ａは、入力された構成情報を書き込むシフトレジスタを指定するためのＷｒｉｔｅ＿Ｐｏｉｎｔｅｒ生成テーブルである。第１カラムは、構成情報転送バス１０３から入力された構成情報が、シフトレジスタ内の全レジスタに値が設定された際にアサートされる信号（以下、Ｃｏｎｆｉｇ＿ｅｎ信号と呼ぶ）の値を示している。Ｃｏｎｆｉｇ＿ｅｎ信号は、シフトレジスタの全レジスタに構成情報が設定されると１クロックサイクルだけアサートされた後、デアサートされるパルス信号である。
【００３９】
第２カラム（現Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒ）は、入力された構成情報を書込むシフトレジスタ番号（以下、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒと呼ぶ）である。ここでは、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒが”００”の場合はシフトレジスタ２２０が、”０１”の場合はシフトレジスタ２２１が、”１０”の場合はシフトレジスタ２２２が書込み対象として選定され、構成情報転送バス１０３からの構成情報が書き込まれる。
【００４０】
第３カラム（次Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒ）は、Ｃｏｎｆｉｇ＿ｅｎ信号がアサート時の、次クロックでのＷｒｉｔｅ＿Ｐｏｉｎｔｅｒの値を示している。Ｃｏｎｆｉｇ＿ｅｎ信号がアサートされた次クロックでＷｒｉｔｅ＿Ｐｏｉｎｔｅｒ値はインクリメントされる。
【００４１】
テーブル４００ｂは、シフトレジスタ２２０、２２１、２２２に対する受信制御信号２０９、２１０、２１１の生成を規定するテーブルである。テーブル４００ｂにおいて、第１カラムは、構成情報転送バス１０３から受信したＶａｌｉｄ信号の値を示している。第２カラムは、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒの値を示している。第３カラムは、第１カラムと第２カラムの条件が満たされた場合にアサートされる信号を示している。
【００４２】
Ｖａｌｉｄ信号が”０”の場合、２０９、２１０、２１１は全てデアサートされる。Ｖａｌｉｄ信号が”１”、かつ、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒが”００”の場合、受信制御信号２０９がアサートされる。Ｖａｌｉｄ信号が”１”、かつ、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒが”０１”の場合、受信制御信号２１０がアサートされる。Ｖａｌｉｄ信号が”１”、かつ、Ｗｒｉｔｅ＿Ｐｏｉｎｔｅｒが”１０”の場合、受信制御信号２１１がアサートされる。
【００４３】
このように構成されたテーブル４００ａ及びテーブル４００ｂを使用することにより、入力された構成情報を、各シフトレジスタに順次インタリーブしながら書き込み制御可能となる。
【００４４】
テーブル４００ｃは、シフトレジスタ２２０、２２１、２２２に構成情報を書き込み可能な空きがあるかどうかを管理し、Ｂｕｓｙ信号１１２の生成に利用する為のテーブルである。テーブル４００ｃにおいて、第１カラムは、テーブル４００ａで説明したＣｏｎｆｉｇ＿ｅｎ信号の値である。第２カラムは、切替指示信号１０５の値を示している。
【００４５】
第３カラム（現Ｃｏｎｆｉｇ＿Ｃｏｕｎｔ）は、シフトレジスタに現在保持されている有効な構成情報の個数（以下、Ｃｏｎｆｉｇ＿Ｃｏｕｎｔと呼ぶ）を示している。第４カラム（次Ｃｏｎｆｉｇ＿Ｃｏｕｎｔ）は、Ｃｏｎｆｉｇ＿ｅｎ信号または切替指示信号１０５がアサートされた時の次クロックサイクルでのＣｏｎｆｉｇ＿Ｃｏｕｎｔの値を示している。
【００４６】
テーブル４００ｃにおいて、Ｃｏｎｆｉｇ＿Ｃｏｕｎｔの値は、Ｃｏｎｆｉｇ＿ｅｎ信号がアサートされると次クロックで値をインクリメントし、切替指示信号１０５がアサートされると次クロックで値をデクリメントする。Ｃｏｎｆｉｇ＿ｅｎと切替指示信号１０５がテーブル４００ｃに記載されている以外の組み合わせの時、Ｃｏｎｆｉｇ＿Ｃｏｕｎｔの値は変化しない。ここでは、構成情報を保持可能なシフトレジスタ数が”３”であるため、Ｃｏｎｆｉｇ＿Ｃｏｕｎｔが”１１”の時、Ｂｕｓｙ信号１１２がアサートされる。Ｃｏｎｆｉｇ＿Ｃｏｕｎｔが”１１”以外の場合、Ｂｕｓｙ信号１１２はデアサートされる。
【００４７】
テーブル４００ｄは、シフトレジスタ２２０、２２１、２２２に設定されている構成情報を選択する制御信号２１５を生成する為のテーブルである。テーブル４００ｄにおいて、第１カラムは、切替指示信号１０５の値を示している。第２カラム（現Ｒｅａｄ＿Ｐｏｉｎｔｅｒ）は、現在選択するシフトレジスタを指し示す信号（以下、Ｒｅａｄ＿Ｐｏｉｎｔｅｒと呼ぶ）である。ここでは、Ｒｅａｄ＿Ｐｏｉｎｔｅｒが”００”の場合は２０９が、”０１”の場合は２１０が、”１０”の場合は２１１を選択する制御信号２１５が生成され、信号線１１１を介して出力される。第３カラム（次Ｒｅａｄ＿Ｐｏｉｎｔｅｒ）は、切替指示信号１０５がアサートされた次のクロックサイクルでのＲｅａｄ＿Ｐｏｉｎｔｅｒの値を示している。
【００４８】
なお、ここでは、切替指示信号１０５がアサートされるとＲｅａｄ＿Ｐｏｉｎｔｅｒをインクリメントし、Ｒｅａｄ＿Ｐｏｉｎｔｅｒの値が”１０”の時は”００”に戻る事を示している。ここでは、入力された構成情報はシフトレジスタ２２０から２２２へとインタリーブしながら順次書き込まれる。そのため、シフトレジスタ２２０から２２２へとインタリーブしながら構成情報の読み出しを行う事で、構成情報を正しく読み出すことが可能となる。
【００４９】
以上に説明したテーブル４００ｃ及び４００ｄを用いることで、シフトレジスタ２２０、２２１、２２２に複数の構成情報が保持されている時、切替指示信号１０５がアサートされた次のクロックサイクルで構成情報を切り替えることが可能となる。すなわち、構成情報の書き込み制御、バスの通信制御、読み出し制御を実現することができる。
【００５０】
＜アレイ型演算装置における構成情報の切替動作例＞
第１実施形態に係るアレイ型演算装置において、ある一連の処理を実行すべく複数の構成情報を順次切り替える例について以下に説明する。ここでは、ある一連の処理として互いに異なる５個の構成情報（図６）を用いた処理を例に挙げて説明する。
【００５１】
図５は、第１実施形態に係るアレイ型演算装置におけるＰＳＯ領域（演算部）と供給部の関係を示すブロック図である。図５においては、４つのＰＳＯ領域５０１、５０２、５０３、５０４（１以上の演算手段）が配置されている。以下、ＰＳＯ領域５０１をドメインＡ、ＰＳＯ領域５０２をドメインＢ、ＰＳＯ領域５０３をドメインＣ、ＰＳＯ領域５０４をドメインＤと呼ぶ。
【００５２】
各ＰＳＯ領域は、内部にルータとＰＥを複数含んでいる。ここでは、ドメインＡの領域内に含まれるルータとＰＥの合算数が１５０個であるとする。同様に、ドメインＢにおけるルータとＰＥの合算数は８０個、ドメインＣにおけるルータとＰＥの合算数は１２０個、ドメインＤにおけるルータとＰＥの合算数は２００個であるとする。また、供給部１０４は、システム内で１つ存在し、信号線１１１を経由して構成情報をドメインＡ、ドメインＢ、ドメインＣ、ドメインＤへ供給するものとする。
【００５３】
また、ルータ及びＰＥの構成情報は、要素毎に４ビットの構成情報を設定する必要があるものとする。そのため、ドメインＡは６００（＝１５０×４）ビット、ドメインＢは３２０（＝８０×４）ビット、ドメインＣは４８０（＝１２０×４）ビット、ドメインＤは８００（＝２００×４）ビットの構成情報が必要となる。
【００５４】
ここでは、供給部１０４は、構成情報をシフトレジスタで保持する方式を用いるものとする。従って、複数構成情報を保持する場合、１つの構成情報につき２２００（＝６００＋３２０＋４８０＋８００）ビットのシフトレジスタが必要となる。ここでは、１つの構成情報（２２００ビットの情報）をシフトレジスタへ書き込む際の書き込み時間は、２２００クロックサイクル時間であるとする。
【００５５】
図６は、各構成情報を用いた処理で使用されるＰＳＯ領域を示す図である。行６０１は、構成情報１とＰＳＯ領域の関係を示しており、構成情報１の処理時にドメインＡ、ドメインＢ、ドメインＣの３つのＰＳＯ領域のそれぞれに含まれるルータ及びＰＥを使用する事を示している。同様に、行６０２は構成情報２とＰＳＯ領域の関係を示しており、構成情報２の処理時にドメインＡ、ドメインＣの２つのＰＳＯ領域のそれぞれに含まれるルータ及びＰＥを使用する。
【００５６】
同様に、行６０３は構成情報３とＰＳＯ領域の関係を示しており、構成情報３の処理時にドメインＡ、ドメインＢ、ドメインＣ、ドメインＤの４つのＰＳＯ領域のそれぞれに含まれるルータ及びＰＥを使用する。行６０４は構成情報４とＰＳＯ領域の関係を示しており、構成情報４の処理時にドメインＤのＰＳＯ領域に含まれるルータ及びＰＥを使用する。６０５は、構成情報５とＰＳＯ領域の関係を示しており、構成情報５の処理時にドメインＢ、ドメインＣ、ドメインＤのＰＳＯ領域に含まれるルータ及びＰＥを使用する。
【００５７】
第１実施形態における構成情報書き換えの際の実行条件を以下に説明する。なお、ＰＳＯ領域の電源復帰タイミング及び電源復帰領域の制御は図１３に示すシステムのＣＰＵ１３０１で制御する。
・アレイ型演算装置の構成を、構成情報１→構成情報２→構成情報３→構成情報４→構成情報５の順番で書き換え遷移させる。
・ドメインＡ、ドメインＢ、ドメインＣ、ドメインＤは、それぞれ、電源遮断された状態から電源復帰を行い電源安定状態に移行するのに要する時間は６０００クロックサイクルである。電源復帰のための処理は、次に使用する構成情報が確定した時点で実行開始するものとする。また、電源復帰のための処理の対象となる領域は、現在実行中の構成情報と次に使用する構成情報との差分から導出するものとする。つまり、電源復帰のための処理は、現在実行中の構成情報で未使用であり、かつ、次に使用する構成情報で使用される領域に対して実行される。
・構成情報１を用いたデータ処理時間は１００００クロックサイクルである。同様に、構成情報２を用いたデータ処理時間は１８０００クロックサイクル、構成情報３を用いたデータ処理時間は１００００クロックサイクル、構成情報４を用いたデータ処理時間は２６０００クロックサイクル、構成情報５を用いたデータ処理時間は１２０００クロックサイクル、である。
【００５８】
図７は、各ＰＳＯ領域における電圧−時間関係を例示的に示す図である。なお、図７において、縦軸は電圧値を示し、横軸はクロック経過時間を示している。なお、図７においては、上から、ドメインＡ、ドメインＢ、ドメインＣ、ドメインＤのそれぞれにおける電圧値とクロック経過時間の関係が示されている。なお、初期状態（時刻＝０）において各ＰＳＯ領域は電源ＯＦＦの状態となっている。
【００５９】
時刻７０１は構成情報１が確定する時刻を示している。同様に、時刻７０２は構成情報２が確定する時刻、時刻７０３は構成情報３が確定する時刻、時刻７０４は構成情報４が確定する時刻、時刻７０５は構成情報５が確定する時刻である。
【００６０】
すなわち、構成情報１はシステム初期状態から８０００クロックサイクル経過後に確定するものとする。また、構成情報２はシステム初期状態から１８０００クロックサイクル経過後に確定する。同様に、構成情報３はシステム初期状態から３４０００クロックサイクル経過後、構成情報４はシステム初期状態から４６０００クロックサイクル経過後、構成情報５はシステム初期状態から６２０００クロックサイクル経過後、にそれぞれ確定する。
【００６１】
時刻７０１で構成情報１が確定後、システムは構成情報１の処理に必要なＰＳＯ領域ドメインＡ、ドメインＢ、ドメインＣの電源をＯＮ状態に切り替え制御を開始すると共に、供給部１０４への構成情報の送信を開始する。上述したように、構成情報を供給部１０４のシフトレジスタへ書き込むのに要する時間は２２００クロックサイクルであり、電源が電源遮断された状態から電源安定状態に移行する際に要する時間は６０００クロックサイクルである。そのためドメインＡ、ドメインＢ、ドメインＣの電源が安定する前にシフトレジスタへの構成情報の書込みは完了することになる。時刻７０６はドメインＡ、ドメインＢ、ドメインＣの電源が安定した時刻を示しており、時刻７０６の直後から構成情報１を用いた処理が開始される。
【００６２】
構成情報１（第１の構成情報）の次に使用される構成情報である構成情報２（第２の構成情報）は、電源が安定した時刻７０６から４０００クロックサイクル後の時刻７０２に確定する。構成情報１を用いたデータ処理時間は１００００クロックサイクルであるため、構成情報１を用いたデータ処理時間内に、供給部１０４内部のシフトレジスタへの構成情報２の書き込みが完了する。シフトレジスタは、書き込まれた構成情報を、当該構成情報が使用されることになる時刻まで保持する。
【００６３】
時刻７０７は構成情報１を用いた処理が終了する時刻を示している。時刻７０７で構成情報１の処理が終了すると同時に、切替指示信号１０５がアサートされ、信号線１１１から出力される構成情報は、構成情報１から構成情報２へと即座に切り替わり、構成情報２を用いた処理が開始される。また、時刻７０７では、構成情報２で使用されないドメインＢの電源をＯＦＦにする。
【００６４】
構成情報２の次に使用される構成情報である構成情報３は、時刻７０７から１００００クロックサイクル後の時刻７０３に確定する。構成情報２を用いたデータ処理時間は１８０００クロックサイクルであるため、構成情報２を用いたデータ処理時間内に、供給部１０４内部のシフトレジスタへの構成情報３の書き込みが完了する。また、時刻７０３では、構成情報２で新たに使用されるドメインＢ、ドメインＤの電源をＯＮにする制御を開始する。
【００６５】
時刻７０８は構成情報２を用いた処理が終了する時刻を示している。時刻７０８で構成情報２の処理が終了すると、切替指示信号１０５がアサートされ、信号線１１１から出力される構成情報は、構成情報２から構成情報３へと即座に切り替わり、構成情報３を用いた処理が開始される。
【００６６】
構成情報３の次に使用される構成情報である構成情報４は、時刻７０８から４０００クロックサイクル後の時刻７０４に確定する。構成情報３を用いたデータ処理時間は１００００クロックサイクルであるため、構成情報３を用いたデータ処理時間内に、供給部１０４内部のシフトレジスタへの構成情報４の書き込みが完了する。
【００６７】
時刻７０９は構成情報３を用いた処理が終了する時刻を示している。時刻７０９で構成情報３の処理が終了すると、切替指示信号１０５がアサートされ、信号線１１１から出力される構成情報は、構成情報３から構成情報４へと即座に切り替わり、構成情報４を用いた処理が開始される。また、時刻７０９では、構成情報４で使用されないドメインＡ、ドメインＢ、ドメインＣの電源をＯＦＦにする。
【００６８】
構成情報４の次に使用される構成情報である構成情報５は、時刻７０９から１００００クロックサイクル後の時刻７０５に確定する。構成情報４を用いたデータ処理時間は１６０００クロックサイクルであるため、構成情報４を用いたデータ処理時間内に、供給部１０４内部のシフトレジスタへの構成情報５の書き込みが完了する。また、時刻７０５では、構成情報５で新たに使用されるドメインＢ、ドメインＣの電源をＯＮにする制御を開始する。
【００６９】
時刻７１０は構成情報４を用いた処理が終了する時刻を示している。時刻７１０で構成情報４の処理が終了すると、切替指示信号１０５がアサートされ、信号線１１１から出力される構成情報は、構成情報４から構成情報５へと即座に切り替わり、構成情報５を用いた処理が開始される。そして、システム初期状態から６２０００クロックサイクル経過後、構成情報５を用いた処理が終了し、一連の処理が終了する。この時点で、例えば、ドメインＢ、ドメインＣ、ドメインＤの電源をＯＦＦにし、初期状態に戻る。
【００７０】
以上説明したとおり、第１実施形態に係るアレイ型演算装置によれば、常時電源が供給される領域に、ＰＥ及びルータ構成情報を供給する供給部１０４を配置する。これにより、各ＰＳＯ領域への電源供給の状態に依存せず、後続の処理に使用する構成情報を書き込むことが可能となる。特に、供給部１０４において、現在使用している構成情報及び次に使用する構成情報の両方を保持する構成とすることにより、より高速に構成情報の切り替えを行うことが可能となる。
【００７１】
（第２実施形態）
第２実施形態では、ＰＳＯ領域毎に供給部を配置する例について説明する。なお、以下の説明においては、第１実施形態における要素と共通の要素には同一番号を付し詳細な説明を省略する。
【００７２】
＜アレイ型演算装置の構成＞
図８は、第２実施形態に係るアレイ型演算装置におけるＰＳＯ領域と供給部の関係を示すブロック図である。図８においては、４つのＰＳＯ領域８０５、８０６、８０７、８０８が配置されている。以下、ＰＳＯ領域８０５をドメインＡ、ＰＳＯ領域８０６をドメインＢ、ＰＳＯ領域８０７をドメインＣ、ＰＳＯ領域８０８をドメインＤと呼ぶ。
【００７３】
供給部８０１は、ドメインＡへ供給する構成情報を保持しドメインＡへ構成情報を供給する機能部である。同様に、供給部８０２はドメインＢへ供給する構成情報を、供給部８０３はドメインＣへ供給する構成情報を、供給部８０４はドメインＤへ供給する構成情報を、それぞれ保持する供給部である。
【００７４】
バス８１０、８１１、８１２は構成情報を対応するアドレスの情報と共に転送するバスである。ここで、アドレスとは、バス制御部あるいは供給部を識別する情報である。バス８１０は供給部８０１及び供給部８０３の双方へ構成情報を転送する。バス８１１は、供給部８０１から出力（転送）された構成情報を、供給部８０２及び供給部８０３の双方へ転送する。バス８１２は、供給部８０２または供給部８０４または供給部８０３から出力（転送）された構成情報を、後続の供給部（不図示）に転送する。なお、供給部８０２および供給部８０４および供給部８０３に接続される後続の供給部が存在しない場合、バス８１２は必要では無い。切替指示信号１０５は、供給部８０１、供給部８０２、供給部８０３、供給部８０４の各々に入力される。切替指示信号１０５がアサートされると、供給部８０１〜８０４の各々は、対応するＰＳＯ領域へ出力する構成情報を切り替える。
【００７５】
なお、ここでは、１つのＰＳＯ領域に対し１つの供給部を配置する例を示しているが、１対１である必要はなく、複数のＰＳＯ領域に対して１つの供給部を配置する構成としてもよい。
【００７６】
＜アレイ型演算装置の構成における供給部の構成＞
図９は、供給部の内部構成を示す図である。バス制御部９０１は、構成情報転送バス８１０および８１１のバス制御と、後述する構成情報保持部９０２への構成情報の書き込み指示を行う機能部である。
【００７７】
信号９０５は、バス制御部９０１から構成情報保持部９０２へ構成情報を送信するための信号であり、構成情報転送バス８１０で受信した構成情報を送信する。信号９０３は、バス制御部９０１から構成情報保持部９０２へ送信する構成情報書込みイネーブル信号であり、信号９０５で送信される構成情報と同期してアサートされる。
【００７８】
構成情報保持部９０２は、内部に複数の構成情報を保持可能なレジスタまたはＳＲＡＭを持ち、構成情報書き込みイネーブル信号９０３がアサートされた時、信号９０５に含まれる構成情報を保持する。構成情報保持部９０２は、現在の処理に必要な構成情報を信号線１１１を介して出力し、切替指示信号１０５がアサートされると次の処理に必要な構成情報を信号線１１１を介して対応するＰＳＯ領域のルータ及びＰＥに出力する。
【００７９】
Ｂｕｓｙ信号９０４は、構成情報保持部９０２からバス制御部９０１へ送信される信号であり、構成情報保持部９０２で構成情報を保持するためのレジスタまたはＳＲＡＭが”Ｆｕｌｌ”となっている間アサートされる。
【００８０】
＜供給部における構成情報の保持制御の流れ＞
図１０は、供給部における構成情報の保持制御を説明するフローチャートである。
【００８１】
ステップＳ１００１では、バス制御部９０１は、構成情報転送バス８１０から送信される構成情報のリクエストを検知する。バス制御部９０１はリクエストを検知するとステップＳ１００２の処理へ進む。
【００８２】
ステップＳ１００２では、バス制御部９０１は、Ｓ１００１で検知したリクエストのアドレスに基づいて、対応する構成情報を受信するか否かを判定する。ここでは、構成情報保持部９０２で保持すべき構成情報、あるいは、構成情報転送バス８１１の先に接続されている他の供給部で保持すべき構成情報である場合に、対応する構成情報を受信すると判定しステップＳ１００３へ進む。一方、構成情報保持部９０２で保持すべき構成情報でも、構成情報転送バス８１１の先に接続されている他の供給部で保持すべき構成情報でもない場合には、対応する構成情報を受信すると判定し処理を終了する。
【００８３】
ステップＳ１００３では、バス制御部９０１は、Ｂｕｓｙ信号９０４がアサートされているか否かを判定する。アサートされていない場合は、ステップＳ１００４へ進み、アサートされている場合はＢｕｓｙ信号がデアサートされるまでＳ１００３の判定を繰り返す。
【００８４】
ステップＳ１００４では、バス制御部９０１は、構成情報転送バス８１０から送信された構成情報を受信し、構成情報転送バス８１０からの送信リクエストを完了させる。バス制御部９０１は、リクエストを完了させるとステップＳ１００５の処理へ進む。
【００８５】
ステップＳ１００５では、バス制御部９０１は、受信した構成情報が、構成情報保持部９０２で保持すべき構成情報かどうかを判定する。構成情報保持部９０２で保持すべき構成情報である場合はステップＳ１００６へ進み、そうでない場合（つまり、他の供給部で保持すべき構成情報である場合）はステップＳ１００７へ進む。
【００８６】
ステップＳ１００６では、バス制御部９０１は、Ｓ１００４で受信した構成情報を構成情報保持部９０２へ保持する。受信した構成情報を信号９０５を介して送信するのと同期して信号９０３をアサートすることで、構成情報保持部９０２へ構成情報の書き込みを行う。
【００８７】
ステップＳ１００７では、バス制御部９０１は、Ｓ１００４で受信した構成情報を構成情報転送バス８１１に転送する。具体的には、バス制御部９０１は、構成情報転送バス８１１を介して構成情報の転送リクエストを送信する。構成情報転送バス８１１の先に接続された供給部のバス制御部が上述のフローを実行することで、各供給部における構成情報の保持が可能となる。
【００８８】
以上説明したように、第２実施形態によれば、ＰＳＯ領域毎に供給部を配置する例について説明した。このような構成とすることにより、ＬＳＩのレイアウト時における配線性の最適化を容易にすることが可能となる。
【００８９】
例えば、ＬＳＩのレイアウト時において、供給部８０１とＰＳＯ領域８０５とを近接かつ並列に配置する事で、供給部８０１とＰＳＯ領域８０５とを接続する信号線１１１の配線長が最短となるようにレイアウト可能となり、チップ面積が削減可能となる。また、各ＰＳＯ領域の間を通過する信号は、切替指示信号１０５と構成情報転送バス８１１による信号だけとなり、ＰＳＯ領域間の配線領域を小さくでき、更にチップ面積の削減が可能となる。
【００９０】
（第３実施形態）
第３実施形態では、ルータ及びＰＥが配置されたＰＳＯ領域への電源がＯＮからＯＦＦへ遷移した際、当該ルータ及びＰＥが自身に供給されている構成情報をリテンションレジスタに退避する構成について説明する。
【００９１】
＜アレイ型演算装置の構成＞
図１１は、第３実施形態に係るアレイ型演算装置の内部構成を示すブロック図である。ルータ１０９及びＰＥ１１０は、それぞれ、供給部１０４から出力された構成情報を保持するレジスタ１１０１と共に当該レジスタ１１０１に対応するリテンションレジスタ１１０２を含んでいる。なお、図１１は、動作の説明に必要な個数のルータ１０９、ＰＥ１１０が示されているのみであり、図１１に記載される個数に限定されるものではない。
【００９２】
リテンションレジスタ１１０２は、対応するレジスタ１１０１が電源ＯＮからＯＦＦ状態へ遷移すると、レジスタ１１０１に保持されている値を自動で保持する。また、レジスタ１１０１の電源がＯＦＦからＯＮ状態に遷移すると、保持している値をレジスタ１１０１に自動で書き戻す。電源ＯＮ／ＯＦＦ切替指示信号１１０３は電源制御部１０２から供給部１０４へ出力される信号であり、レジスタ１１０１の電源状態の検知に使用される信号である。
【００９３】
信号１１０４は、レジスタ１１０１が供給部１０４から出力された構成情報をラッチする際に用いる信号である。レジスタ１１０１は、信号１１０４がアサートされている間、信号線１１１から入力される値をラッチし、信号１１０４がデアサートされている間は値を保持する。供給部１０４は、出力した構成情報がレジスタ１１０１に保持された後、供給部１０４内に保持されている１１０１に出力した構成情報を無効にし、他の構成情報を保持可能な領域として構成する。
【００９４】
＜アレイ型演算装置における構成情報書込み処理の流れ＞
図１２は、ルータ、ＰＥにおける構成情報の退避動作を説明するフローチャートである。なお、図１２に示す動作は、システム初期化後に供給部１０４へ最初の構成情報の書き込みが行われた時と、切替指示信号１０５がアサートされた時に実行されるものとする。  
【００９５】
ステップＳ１２０１では、供給部１０４は、内部に構成情報を保持しているかどうかを判定する。保持している場合はステップＳ１２０２へ進み、保持していない場合は処理を終了する。
【００９６】
ステップＳ１２０２では、供給部１０４は、電源ＯＮ／ＯＦＦ切替指示信号１１０３を参照して、ＰＳＯ領域１０１の電源がＯＮ状態か否かを判定する。電源ＯＮと判定した場合はステップＳ１２０３へ進み、電源ＯＦＦと判定した場合はステップＳ１２０４へ進む。
【００９７】
ステップＳ１２０３では、供給部１０４は、ＰＳＯ領域１０１内のルータ１０９及びＰＥ１１０に構成情報を出力する。具体的には、供給部１０４は、信号線１１１を介して構成情報を出力すると共に、信号１１０４をアサートする。信号１１０４は、信号線１１１においてマルチサイクルパスが存在する場合、データ到達に必要なクロックサイクル期間アサートされる。
【００９８】
ステップＳ１２０４では、供給部１０４は、ＰＳＯ領域の電源がＯＦＦ状態からＯＮ状態へ遷移完了した事を判定する。ＯＮ状態への遷移が完了した場合はステップＳ１２０５へ進み、ＯＮ状態への遷移が完了しない場合は、遷移するまで待ち続ける。なお、電源がＯＦＦ状態からＯＮ状態への遷移完了は、例えば、電源ＯＮ／ＯＦＦ切替指示信号１１０３のＨｉｇｈ、Ｌｏｗ切り替わりを、微分回路等を用いて判定をすることにより検出可能である。
【００９９】
ステップＳ１２０５では、供給部１０４は、ＰＳＯ領域１０１内のルータ１０９及びＰＥ１１０に構成情報を出力する。具体的には、供給部１０４は、信号線１１１を介して構成情報を出力すると共に、信号１１０４をアサートする。信号１１０４は、ＰＳＯ領域１０１の電源が安定しレジスタ１１０１が構成情報をラッチ可能になるまでの期間アサートされる。
【０１００】
ステップＳ１２０６では、供給部１０４は、信号１１０４をデアサートすると共に、信号線１１１と介して出力している供給部１０４内部の構成情報を無効にする。
【０１０１】
以上説明したように、ルータ及びＰＥの内部に構成情報を保持するリテンションレジスタを設けることにより、当該ルータ及びＰＥへの電源供給が遮断されている期間、設定された構成情報をリテンションレジスタに退避することが可能となる。それにより、電源供給が再開された際、リテンションレジスタからルータ及びＰＥ内に構成情報を書き戻す事ができ、電源復帰後の処理をさらに高速化できる。
【０１０２】
なお、第３実施形態において、構成情報の保持及び書き戻しにリテンションレジスタを用いたが、常時電源がＯＮ状態である領域に構成情報を退避し、電源復帰後に構成情報の書き戻しを行っても良い。また、上述の実施形態ではアレイ型演算装置について説明したが、複数の接続要素に設定データを設定することによって複数の演算要素間の接続環境を提供できる演算装置であれば、本願発明を適用できる。
【図１】
2014157508.tif 000003
【図２】
2014157508.tif 000004
【図３】
2014157508.tif 000005
【図４】
2014157508.tif 000006
【図５】
2014157508.tif 000007
【図６】
2014157508.tif 000008
【図７】
2014157508.tif 000009
【図８】
2014157508.tif 000010
【図９】
2014157508.tif 000011
【図１０】
2014157508.tif 000012
【図１１】
2014157508.tif 000013
【図１２】
2014157508.tif 000014
【図１３】
2014157508.tif 000015