(57)【特許請求の範囲】
【請求項１】
要求された情報処理サービスを提供するデータ処理システムであって、
情報処理サービスの提供の要求を受け付け、該情報処理サービスの提供に必要な機能をソフトウェア機能とハードウェア機能とに分けるリソースマネージャ装置と、
前記リソースマネージャ装置から前記ソフトウェア機能を割り当てられ、割り当てられたソフトウェア機能をソフトウェアプログラムにしたがって実行可能な１以上のサーバコンピュータと、
それぞれ、再構成可能なハードウェア回路を有し、前記リソースマネージャ装置から前記ハードウェア機能を割り当てられ、割り当てられたハードウェア機能に応じて前記ハードウェア回路を再構成して該ハードウェア回路により前記ハードウェア機能を実行可能な複数のアクセラレータ装置と、
前記リソースマネージャ装置と前記サーバコンピュータと前記複数のアクセラレータ装置とを接続して相互にデータの入出力を可能とする第１の接続部と、
前記リソースマネージャ装置の指示に基づきメッシュ結合、リング結合、全結合、ハイパーキューブ及びバス結合を含む任意のネットワークトポロジを用いて前記複数のアクセラレータ間の接続関係を構築し前記複数のアクセラレータ装置間を接続して前記第１の接続部を介することなく前記複数のアクセラレータ装置間でデータの通信を可能とする第２の接続部と、
を備え、
前記アクセラレータ装置は、
前記第１の接続部に接続して前記サーバコンピュータとのデータの入出力を制御する内部データ入出力制御部と、
外部とのデータの入出力を制御する外部データ入出力制御部と、
再構成可能なハードウェアデバイスとして構成されるタイルブロック部を１または複数備え、前記内部データ入出力制御部及び外部データ入出力制御部に接続する再構成ハードウェア処理部と、
前記第２の接続部と前記再構成ハードウェア処理部との間を接続し、当該アクセラレータ装置とは異なるアクセラレータ装置上の前記タイルブロック部との間でのデータの受け渡しを制御するアクセラレータ間接続入出力制御部と、
を有し、
前記リソースマネージャ装置は、前記ソフトウェア機能を前記サーバコンピュータに実行させ、前記ハードウェア機能を前記アクセラレータ装置に実行させる、データ処理システム。
【請求項２】
前記タイルブロック部は、
再構成可能なハードウェアにおける単位処理回路である１または複数のタイル処理部と、
前記タイル処理部間で再構成可能な接続を形成し前記タイル処理部に対するデータの入出力を制御するタイル制御部と、を有する、請求項１に記載のデータ処理システム。
【請求項３】
複数の前記タイル処理部を備え、要求に応じて前記複数のタイル処理部の再構成と前記複数のタイル処理部間の接続とを行うように構成され、
少なくとも１つの前記タイル処理部は、入力画像または入力映像に対して特徴抽出処理を行って特徴量情報を出力するタイル処理部であり、
少なくとも１つの前記タイル処理部は、前記特徴量情報を入力として物体識別処理を行って識別結果を出力するタイル処理部であり、
前記入力画像または入力映像から物体認識を行う、請求項２に記載のデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システムに関する。
【背景技術】
【０００２】
近年、大量のデータを高速で処理でき、また短時間で大量の演算を実行できるデータ処理システムに対する要望がますます高まっている。
【０００３】
例えば、有線通信または無線通信を介してユーザ（利用者）端末がネットワーク上のサーバまたはデータセンタに接続して利用できるようにする情報通信サービスでは、ユーザ数の増大や取り扱うデータ量の増加に伴って、サーバあるいはデータセンタ側のデータ処理システムにおける処理能力の増強が求められてきている。一般的なデータセンタでは、ネットワークを介して１つまたは複数のサーバコンピュータが接続し、高速かつ大容量の情報処理が行われ、多数のユーザにサービスを提供している。近年、ネットワークの高速・広帯域化に伴い、大容量かつリアルタイム処理が必要なデータが増加してきており、これに対し、データセンタにおける既存のシステムでは、特定のサーバコンピュータに処理負荷が集中することを避けるため、負荷分散機能を持たせて、処理負荷を複数のサーバコンピュータに分散させる方法（スケールアウトの方法）が採用されている（非特許文献１）。複数のサーバコンピュータに負荷を分散させるための最適アルゴリズムについても検討がなされている。しかし、このような既存のシステムではデータ処理をサーバコンピュータ上のソフトウェアで行なっているため、処理の複雑化や処理量の増大により負荷分散させても処理が困難となる問題がある。
【０００４】
そこで、データセンタにおける処理すべき処理量の増加に対する対応方法として、ハードウェア構成によるアクセラレータをサーバコンピュータに接続し、特定の処理をアクセラレータに実行させることにより、サーバコンピュータの処理負荷を低減する方法がある（非特許文献２）。ハードウェアによるアクセラレータは、特定の種類の浮動小数点演算などの特定の処理を実行するのであれば、ソフトウェア処理よりも高速かつ低消費電力である利点を有する。しかしながら、既存のハードウェアアクセラレータは、特定の処理の実行に特化したものであるため汎用性が低く、多種多様の処理の高速化には適してはいない。
【０００５】
データセンタ用途ではなく科学計算用コンピュータシステムとして、複数のサーバコンピュータと複数のアクセラレータを用いたシステムも提案されている（特許文献１）。このような科学計算用コンピュータシステムでは、全てのサーバコンピュータと全てのアクセラレータは、唯一つの科学計算課題の演算処理に利用されるため、複数のユーザからの異なる要求に対して、並列に異なる処理を行うことができない。
【０００６】
映像または画像のリアルタイム処理を行うデータ処理システム、例えば画像処理による物体認識システムは、短時間に大量の演算を処理することが求められるシステムである。監視画像中から不審者を検出したり、前方に存在する歩行者を検出することにより道路を走行中の車両の運転者に対して運転支援を行ったりする場合、画像処理による物体認識の一形態として、入力画像中から自動的に人を検出することが必要となる。そのような画像中における人検出を行うシステムとして、画像におけるＨＯＧ(Histograms of Oriented Gradients)特徴量を抽出し、得られた特徴量情報に対し、機械学習法の一つであるReal AdaBoost識別処理を行い、物体の識別を行うものがある（非特許文献３）。Real AdaBoost識別処理において用いる学習データとして各種のものを用意すれば、人検出だけでなく、画像中における車両検出などを行うことも可能である。しかしながらこの画像認識処理方法では、特徴量数が多いために計算量が膨大となり、複数の映像入力を同時にリアルタイム画像処理して結果を複数同時に出力することが、現在利用可能なデータ処理システムの能力では困難である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−３９７９０号公報
【非特許文献】
【０００８】
【非特許文献１】首藤  一幸、「クラウドコンピューティング  スケールアウトの技術」、情報処理学会誌，Vol. 50, No. 11, pp. 1080-1085,2009年11月
【非特許文献２】松岡  聡、「アクセラレータ，再び  アクセラレータ技術の影と光」、情報処理学会誌，Vol. 50, No. 2, pp. 95-99, 2009年2月
【非特許文献３】松島  千佳，他，「人検出のためのReal AdaBoostに基づくＨＯＧ特徴量の効率的な削減法」，情報処理学会研究報告，Vol. 2009-CVIM-167, No. 32, pp. 1-8, 2009年6月
【発明の概要】
【発明が解決しようとする課題】
【０００９】
大量のデータを高速に処理し、短時間で大量の演算を行うことが可能なデータ処理システムとして、ソフトウェア処理によってデータ処理を行うサーバコンピュータに、専用ハードウェアによる演算処理を可能とするアクセラレータを組み合わせたものがある。しかしながら、これまでのハードウェアによるアクセラレータは特定の処理の実行に特化したものであって汎用性に欠けるという問題点がある。特に、多数のユーザ端末からデータ処理要求を受け付けるデータセンタなどにおいては、サーバコンピュータにアクセラレータを組み合わせて処理能力の向上を図ったとしても、ユーザが要求する処理内容が多種多様であるため、全体としてみたときにアクセラレータでは処理できないデータ処理が増えることとなって、サーバコンピュータの処理負荷軽減につながらないことになる。
【００１０】
画像処理などを行うデータ処理システムにおいても、何を検出するかなどの画像処理の目的や入力画像の性質の違いに応じて、実行しなければならない演算処理が異なってくるので、サーバコンピュータに単にハードウェアアクセラレータを組み合わせだけでは、意図したようには処理能力は向上しない。
【００１１】
本発明の目的は、複雑な画像処理などもリアルタイムで実行可能であって、多数のユーザからの大容量な処理を高速に実行できる、高い汎用性と柔軟性とを有するデータ処理システムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明では、製造後においても任意の時点でその回路構成を変更することができる再構成可能な（リコンフィギャラブルな）デバイスをハードウェア構成のアクセラレータとして使用し、このアクセラレータとサーバコンピュータとを組み合わせることにより、高度の汎用性と柔軟性とを備えつつ、多数のユーザからの要求に応じて大容量のデータ処理を高速に実行できるデータ処理システムを構成する。再構成可能なデバイスとしては、例えば、異なる種類の多数の回路ブロックを備え、回路ブロック間の布線接続関係を外部からの制御信号によって変更可能であって、制御信号に応じて回路ブロック間の接続を構成することによってユーザから要求された処理に適合したハードウェア機能回路として再構成できるものが使用できる。そのような再構成可能なデバイスには、再構成可能なＬＳＩ（大規模集積回路）あるいは再構成可能なプロセッサなどが含まれる。
【００１４】
すなわち本発明のデータ処理システムは、要求された情報処理サービスを提供するデータ処理システムであって、情報処理サービスの提供の要求を受け付け、その情報処理サービスの提供に必要な機能をソフトウェア機能とハードウェア機能とに分けるリソースマネージャ装置と、リソースマネージャ装置からソフトウェア機能を割り当てられ、割り当てられたソフトウェア機能をソフトウェアプログラムにしたがって実行可能な１以上のサーバコンピュータと、それぞれ、再構成可能なハードウェア回路を有し、リソースマネージャ装置からハードウェア機能を割り当てられ、割り当てられたハードウェア機能に応じてハードウェア回路を再構成してそのハードウェア回路によりハードウェア機能を実行可能な本発明の複数のアクセラレータ装置と、リソースマネージャ装置とサーバコンピュータと複数のアクセラレータ装置とを接続して相互にデータの入出力を可能とする第１の接続部と、リソースマネージャ装置の指示に基づきメッシュ結合、リング結合、全結合、ハイパーキューブ及びバス結合を含む任意のネットワークトポロジを用いて前記複数のアクセラレータ間の接続関係を構築し複数のアクセラレータ装置間を接続して第１の接続部を介することなく複数のアクセラレータ装置間でデータの通信を可能とする第２の接続部と、を備え、リソースマネージャ装置は、ソフトウェア機能をサーバコンピュータに実行させ、ハードウェア機能をアクセラレータ装置に実行させる。
【発明の効果】
【００１８】
本発明では、サーバコンピュータによるソフトウェア処理と、再構成可能なハードウェア回路を用いたアクセラレータによるハードウェア処理を組み合わせることにより、負荷の大きい処理はアクセラレータに割り当てることができるため、多数のユーザからの大容量かつリアルタイム処理が必要な処理に対して対応できるようになる。特に、ハードウェアのアクセラレータとして、従来のような機能が固定されたアクセラレータではなく、再構成可能なハードウェア（ＦＰＧＡ等）を用いたものを用いているので、高速での処理が可能であるとともに、高い汎用性・柔軟性を有するデータ処理システムを実現することができる。また、アクセラレータとして、サービス動作中に異なる機能回路をハードウェア上に再構成できるようにすることにより、複数のユーザからの異なる要求に対しても、サービスを止めることなく、高速な処理を並列かつ機能を変更して処理を実行することができるようになる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施形態のデータ処理システムの構成を示すブロック図である。
【図２】図１に示すシステムにおける再構成ハードウェア処理部の構成を示すブロック図である。
【図３】図１に示すシステムにおけるリソースマネージャの構成を示すブロック図である。
【図４】リソースマネージャにおける処理手順を示すフローチャートである。
【図５】本発明の第２の実施形態のデータ処理システムの構成を示すブロック図である。
【図６】図５に示すシステムにおける再構成ハードウェア処理部の構成を示すブロック図である。
【図７】本発明の第３の実施形態でのタイル処理部の一例を示す図である。
【図８】第３の実施形態でのタイル処理部の別の接続例を示す図である。
【図９】第３の実施形態でのタイル処理部のさらに別の接続例を示す図である。
【図１０】第３の実施形態でのタイル処理部のまたさらに別の接続例を示す図である。
【図１１】第３の実施形態を画像処理に適用した具体例を示す図である。
【図１２】本発明の第４の実施形態でのタイル処理部の一例を示す図である。
【図１３】第４の実施形態でのタイル処理部の別の接続例を示す図である。
【図１４】第４の実施形態でのタイル処理部のさらに別の接続例を示す図である。
【図１５】第４の実施形態でのタイル処理部のまたさらに別の接続例を示す図である。
【発明を実施するための形態】
【００２０】
次に、本発明の好ましい実施形態について、図面を参照して説明する。
【００２１】
《第１の実施形態》
図１に示す本発明の第１の実施形態のデータ処理システム２０は、ネットワーク１２に接続するものであって、ユーザ端末１１からネットワーク１２を介して入力するサービス要求に応じてデータ処理を行い、その処理結果をユーザ端末１１に返送するものである。ネットワーク１２には１または複数のユーザ端末１１が接続しており、各ユーザは、それぞれのユーザ端末１１から、同時または別々のタイミングでデータ処理システム２０に対してサービスを要求できるようになっている。
【００２２】
このデータ処理システム２０は、ユーザから要求された処理をソフトウェアにより処理する１または複数のサーバコンピュータ２１と、ユーザから要求された処理をハードウェア回路により処理する１または複数のアクセラレータ２２と、ユーザから要求された処理をサーバコンピュータ２１とアクセラレータ２２とに振り分け、サーバコンピュータ２１及びアクセラレータ２２での処理の実行を制御するリソースマネージャ２３と、サーバコンピュータ２１とアクセラレータ２２とリソースマネージャ２３との間を相互にデータの入出力が可能になるように接続するサーバ・アクセラレータ間接続部２４と、を備えている。アクセラレータ２２はアクセラレータ装置であり、リソースマネージャ２３はリソースマネージャ装置である。サーバコンピュータ２１がソフトウェアを実行することによる処理リソース（処理資源）をソフトウェア（ＳＷ）リソースと呼び、ハードウェア回路として構成されるアクセラレータ２２が有する処理リソースのことをハードウェア（ＨＷ）リソースと呼ぶ。アクセラレータ２２は、再構成可能なデバイスを用いたものであり、ユーザ要求に応じてそのハードウェア機能回路を再構成可能なものである。したがって、データ処理システム２０は、ユーザ端末１１からのサービス要求に対して、サーバコンピュータ２１が有するＳＷリソース及び再構成可能なアクセラレータ２２が有するＨＷリソースを用いて、ユーザに要求されたサービスを提供するシステムである。
【００２３】
アクセラレータ２２は、図２に示すように、内部データ入出力制御部２５、外部データ入出力制御部２６及び再構成ハードウェア処理部２７から構成されるハードウェアであり、再構成ハードウェア処理部２７は、その処理回路の再構成が可能なことを特徴とする。再構成ハードウェア処理部２７は、それぞれが再構成可能なデバイスに相当する１または複数のタイルブロック部３１と、タイルブロック部３１間の接続を行うタイル間接続部３２とを備えている。アクセラレータ２２の詳細については後述する。
【００２４】
次に、リソースマネージャ２３について説明する。
【００２５】
リソースマネージャ２３は、ユーザ端末１１からネットワーク１２を介したサービス要求を受け取り、要求されたサービスの提供に必要な機能を、ソフトウェア（ＳＷ）機能とハードウェア（ＨＷ）機能に分け、それら機能の処理フローを構成し、ＳＷ機能についてはサーバコンピュータ２１上に割り当てて実行させ、ＨＷ機能についてはアクセラレータ２２上に割り当てて実行させ、それらの機能の実行を制御するものである。このようなリソースマネージャ２３は、要求されたサービスの提供に必要な機能をＳＷ機能とＨＷ機能に分けてそれら機能の処理フローを構成する処理フロー制御部４１と、処理フロー制御部４１によって処理フローの管理のために用いられる処理フロー管理ＤＢ（データベース）４２と、外部とのデータ及び情報の入出力を管理する外部データ入出力管理部４３と、ＳＷ機能をサーバコンピュータ２１に割り当てサーバコンピュータ２１でのＳＷ処理を制御するＳＷ処理管理部４４と、ＳＷ処理管理部４４によりサーバコンピュータ２１のＳＷリソースの管理のために用いられるＳＷリソース管理ＤＢ４５と、ＨＷ機能をアクセラレータ２２に割り当てアクセラレータ２２でのＨＷ処理を制御するＨＷ処理管理部４６と、ＨＷ処理管理部４６によりアクセラレータ２２のＨＷリソースの管理のために用いられるＳＷリソース管理ＤＢ４５と、を備えている。データ処理システム２０に、外部からの入力データ（例えばカメラ画像等）が入力されている場合には、その外部データに関する情報は、外部データ入出力管理部４３を介して処理フロー制御部４１に入力し、処理フロー制御部４１において、処理フローを構築する際に用いることができる。
【００２６】
リソースマネージャ２３での動作について説明する。
【００２７】
処理フロー制御部４１は、要求されたサービスの提供に必要な機能をＳＷ機能とＨＷ機能とに分けて処理フローを構築し、処理フロー管理ＤＢ４２を用いて、処理フローの進捗状況をリアルタイムに保持・管理する。このとき、ＳＷ機能は、ＳＷ処理管理部４４を介してサーバコンピュータ２１に割り当てられ、ＨＷ機能は、ＨＷ処理管理部４６を介してアクセラレータ２２に割り当てられる。
【００２８】
ＳＷ処理管理部４４は、サーバコンピュータ２１でのＳＷリソースの利用状況を保持するＳＷリソース管理ＤＢ４５を参照しながら、サーバコンピュータ２１上で空いている最適なＳＷリソースを選出した上で、当該ＳＷ機能をサーバコンピュータ２１上で処理するように（すなわちＳＷ処理）、サーバコンピュータ２１に指示する。同様にＨＷ処理管理部４６は、アクセラレータ２２でのＨＷリソースの利用状況を保持するＨＷリソース管理ＤＢ４７を参照しながら、アクセラレータ２２上で空いている最適なＨＷリソースを選出した上で、当該ＨＷ機能をアクセラレータ上で処理するように（すなわちＨＷ処理）、アクセラレータ２２に指示する。
【００２９】
サーバコンピュータ２１上で指示されたＳＷ処理が完了したら、そのサーバコンピュータ２１はＳＷ処理管理部４４に報告し、アクセラレータ２２上で指示されたＨＷ処理が完了したら、そのアクセラレータ２２はＨＷ処理管理部４６に報告する。このとき、各々の処理結果や処理条件などに関する情報をそれらの管理部４４，４６へ返信することができる。ＳＷ処理管理部４４は、返信された情報に基づきＳＷリソース管理ＤＢ４５を更新するとともに、処理フロー制御部４１に報告する。ＨＷ処理管理部３６も、返信された情報に基づきＨＷリソース管理ＤＢ４７を更新するとともに、処理フロー制御部４１に報告する。処理フロー制御部４１は、返信された情報に基づき、処理フロー管理ＤＢ４２を更新するとともに、処理を次へ進めて再び処理を継続していく。
【００３０】
このデータ処理システムにおいては、リソースマネージャ２３の処理フロー制御にしたがって、サーバコンピュータ２１上でのＳＷ処理結果や処理条件の情報は、そのままサーバコンピュータ２１内で次のＳＷ処理に使うこともできるし、次の処理がＨＷ処理であればアクセラレータ２２に送信してアクセラレータ２２上でのＨＷ処理に使うこともできる。同様に、リソースマネージャ２３の処理フロー制御にしたがって、アクセラレータ２２上でのＨＷ処理結果や処理条件の情報は、そのままアクセラレータ２２内で次のＨＷ処理に使うこともできるし、次の処理がＳＷ処理であればサーバコンピュータ２１に送信しサーバコンピュータ２１上でＳＷ処理に使うこともできる。サーバコンピュータ２１とアクセラレータ２２間で処理を接続する場合には、サーバ・アクセラレータ間接続部２４を介して必要な情報をサーバコンピュータ２１とアクセラレータ２２間で送受信することができる。
【００３１】
リソースマネージャ２３は、ＳＷリソースおよびＨＷリソースの割り当て状況の情報と処理フローの情報とを用いて管理を行うことにより、サーバコンピュータ２１上ではどこのＳＷリソースがどの程度利用されているかを把握でき、またアクセラレータ上２２ではどこのＨＷリソースがどの程度利用されているかを把握できる。したがってリソースマネージャ２３は、ユーザ要求を実行するための機能に関して、一括して効率的な機能の割り当て管理と処理の制御を行うことができる。
【００３２】
図４は、リソースマネージャ２３内における具体的な処理手順を示すフローチャートである。ユーザ要求があると、まずステップ５１において、そのユーザ要求がリソースマネージャ２３に入力され、ステップ５２において、処理フロー制御部４１が、そのユーザ要求によって要求されたサービスの提供に必要な機能をＳＷ機能とＨＷ機能に分け、処理フローを構成する。次に、ステップ５３において、処理フロー制御部４１は、処理フローにしたがい、処理する機能を選定し、ＳＷ機能についてはＳＷ処理管理部４４がサーバコンピュータ２１に割り当て、ＨＷ機能についてはＨＷ処理管理部４６がアクセラレータ２２に割り当てる。その後、ＳＷ機能に関して、ＳＷ処理管理部４４は、ステップ５４において、その割り当てたＳＷ機能をサーバコンピュータ２１に実行させ、ステップ５５において、全てのＳＷ機能の実行が終了したかどうかを判定する。ここで終了している場合には、ステップ５８に移行し、そうでない場合には、ステップ５３に戻る。同様にＨＷ機能に関し、ＨＷ処理管理部４４は、ステップ５６において、その割り当てたＨＷ機能をアクセラレータ２２に実行させ、ステップ５７において、全てのＨＷ機能の実行が終了したかどうかを判定する。ステップ５７において終了している場合には、ステップ５８に移行し、そうでない場合には、ステップ５３に戻る。ステップ５８では、すべてのＳＷ機能及びＨＷ機能について実行が終了したかどうかは判定され、終了している場合には、ステップ５９において終了処理を実行し、そうでない場合にはステップ５３に戻る。
【００３３】
ユーザ要求に対して処理フローを構成する場合、ユーザ要求の内容や条件によっては、すべてをＳＷ機能で実行する場合もあるし、すべてをＨＷ機能で実行する場合もあるし、両方が混在する場合も考えられる。また、混在する場合であっても、複数のＳＷ機能と複数のＨＷ機能が代わる代わる組み合わさる場合もあるし、部分的にＳＷ機能またＨＷ機能のいくつかが並列に処理されたり、少しずれてパイプライン処理されたりすることも容易に考えられる。そこで処理フロー制御部２３は、これらの要件を考慮して、ユーザ要求に対して効率よく処理を実行できるような処理フローを構成する。
【００３４】
以上説明したリソースマネージャ２３は、リソースマネージャ２３に専用のコンピュータを用い、そのコンピュータ上で、コンピュータを上述のようなリソースマネージャとして機能させるためのソフトウェア（リソースマネージャ用ソフトウェア）を実行させることによって実現することができる。あるいは、ユーザ要求の処理を行うサーバコンピュータ上で、リソースマネージャ用ソフトウェアを実行させることによっても実現することができる。
【００３５】
サーバコンピュータ２１は、例えば、ソフトウェア制御による一般的なコンピュータとして実現されるものであり、リソースマネージャ２３によって割り当てられたＳＷ機能を実現可能なソフトウェアプログラムを実行するものである。ソフトウェアによって処理を実行するものであるので、ユーザによる要求サービスの種類や条件に応じて、柔軟にプログラムの内容およびパラメータを変更することができ、これにより、多様な処理の実行が可能である。
【００３６】
サーバコンピュータ２１が複数設けられる場合には、それらはサーバ・アクセラレータ間接続部２４を介していずれもリソースマネージャ２３と接続している。その場合、リソースマネージャ２３は、必要なＳＷ機能を複数のサーバコンピュータ２１に対して割り当てる。リソースマネージャ２３は、サーバ・アクセラレータ間接続部２４を介して各サーバコンピュータ２１での処理状況情報を収集しそれを管理しておくことにより、処理に余裕のあるサーバコンピュータに優先してＳＷ機能を割り当てることもできる。
【００３７】
次に、アクセラレータ２２について説明する。
【００３８】
アクセラレータ２２は、割り当てられたＨＷ機能を実行可能なハードウェア回路が構築され、その構築されたハードウェア回路によってＨＷ機能を実行するものであり、上述したように、内部データ入出力制御部２５と、外部データ入出力制御部２６と、再構成可能なデバイスとして構成される再構成ハードウェア処理部２７と、を備えている。
【００３９】
従来のデータ処理システムにおいては、ハードウェア回路で処理を行う装置（すなわちアクセラレータ）は、一定の予め定められている機能しか実行できなかった。しかしながらこのデータ処理システムでのアクセラレータ２２は、再構成可能な（リコンフィギャラブルな）ハードウェアデバイスを搭載しており、要求に応じて毎回異なる機能を実行するように、ハードウェア回路を“書き換えて”利用することができるようになっている。また、複数のサービス要求に応じて、各々異なる回路をアクセラレータ２２に構成して利用できるとともに、利用しない回路は消去できるので、ハードウェアリソースを効率よく利用することができる。
【００４０】
アクセラレータ２２における書き換えられたハードウェア上で処理を行う際の各種設定パラメータについては、回路自体の変更でも設定変更できる。あるいは、回路の書き換えをせずに、回路上に設定するレジスタ値やメモリ値をリソースマネージャ２３からの制御信号により変更することで、そのパラメータ値の変更をすることもできる。また、アクセラレータ２２を構成する回路上に、物理的なディップスイッチのような変更スイッチを物体として設け、このスイッチにより手動でパラメータを変更することも可能である。
【００４１】
内部データ入出力制御部２５は、サーバコンピュータ２１もしくは他のアクセラレータ２２からのデータを受信したり、また自アクセラレータの再構成ハードウェア処理部２７での処理による結果データを、サーバコンピュータ２１もしくは他のアクセラレータ２２へ送信したりするための入出力を制御する。また内部データ入出力制御部２５は、アクセラレータ２２内の処理パラメータ等を制御するためにリソースマネージャ２３から送信される制御データをアクセラレータ２２内に取り込み、再構成ハードウェア処理部２７を制御し、さらに、介して再構成ハードウェア処理部２７の処理結果に関する情報をサーバ・アクセラレータ間接続部２４をユーザ端末１１側へ送信するために必要な入出力制御も実行する。
【００４２】
このようなアクセラレータ２２を用いることにより、例えば、サーバコンピュータ２１でソフトウェア処理された結果データをアクセラレータ２２に入力してハードウエア処理させたり、アクセラレータ２２でハードウェア処理された結果データをサーバコンピュータ２１へ送ってソフトウェア処理させたり、ユーザからの要求内容（パラメータ条件など）をそのアクセラレータ２２に入力してハードウェアの再構成時に用いたり、アクセラレータ２２からの結果データをユーザ端末に送信したりすることができる。これは、リソースマネージャ２３が構築する処理フローにおいて、ユーザ要求に対して細分化されたＳＷ処理機能とＨＷ処理機能を実行する際にそれらの機能間で入出力の接続関係がある場合には、サーバ・アクセラレータ間接続部２４を介してデータをサーバコンピュータ２１とアクセラレータ２２との間で送受信することを意味する。具体的には、あるＳＷ機能の出力を別のＳＷ機能で入力として用いる場合、あるＨＷ機能の出力を別のＨＷ機能で入力として用いる場合、あるＳＷ機能の出力を別のＨＷ機能で入力として用いる場合、あるＨＷ機能の出力を別のＳＷ機能で入力として用いる場合が考えられる。このようなときにアクセラレータ２２上においてサーバ・アクセラレータ間接続部２４に対してデータを送信・受信するために、内部データ入出力制御部２５を利用する。サーバコンピュータ２１とアクセラレータ２２間のデータ通信については、リソースマネージャ２３が管理して実行することができる。
【００４３】
外部データ入出力制御部２６は、外部から直接このデータ処理システムのアクセラレータ２１に入力する外部データ（例えばカメラ映像データ、音声データ、各種センサデータ等）について、リソースマネージャ２３の指示に基づいて、サーバ・アクセラレータ間接続部２４を介してサーバコンピュータ２１に送ったり、サーバ・アクセラレータ間接続部２４を介して他のアクセラレータ２２に送ったり、自アクセラレータ内の再構成ハードウェア処理部２７に送ったりするための入出力制御を行う。また外部データ入出力制御部２６は、再構成ハードウェア処理部２７で処理された結果データについて、リソースマネージャ２３の指示に基づき、直接外部へ送ったりする場合の入出力制御を行う。外部データの入出力制御の機能は、すべてのアクセラレータ２２が装備していてもよいし、複数のアクセラレータのうち任意の１個または複数個のアクセラレータに装備されていてもよいし、すべてのアクセラレータに装備されていなくてもよく、これらは、実行すべきサービスの内容に応じて変えることができる。
【００４４】
外部からの入力や外部へ出力するデータの例としては、カメラ映像や音声が挙げられる。例えば複数のカメラ映像がこのデータ処理システムに入力する際に、１つまたは複数のアクセラレータ２２に直接接続して入力されることが考えられる。例えば、ユーザが要求する物体（人物、車両などの物体）を入力画像からリアルタイムに検出するような画像認識処理を行う場合を考えると、リソースマネージャ２３がその処理の機能を分割してサーバコンピュータ２１及びアクセラレータ２２に割り振り、サーバコンピュータ２１とアクセラレータ２２内のタイル処理部とにおいてそれぞれ割り当てられた処理を実行し、対象の物体をリアルタイムに検出することが可能になる。検出された結果データは、ユーザ端末１１やネットワーク１２上の他の装置に送ることも可能であるし、また外部データ入出力制御部２６を通して、外部の装置（ディスプレイ、他の処理装置等）へ送ることも可能である。
【００４５】
再構成ハードウェア処理部２７は、図２に示したように、その内部に、１つまたは複数のタイルブロック部３１を有し、各タイルブロック部３１は、タイル間接続部３２を介し、内部データ入出力制御部２５及び外部データ入出力制御部２６に接続している。タイルブロック部３１は、１つまたは複数のタイル処理部３４と、これらのタイル処理部３４をタイルブロック部３１の外部と接続するタイル制御部３３とから構成されている。
【００４６】
具体的な例として、タイルブロック部３１は、再構成可能なＬＳＩ、ＦＰＧＡ（Field Programmable Gate Array）などによって構成できる。また、タイル処理部３４は、ＦＰＧＡ内に実装する単位処理回路すなわち個々の処理回路であり、既存のＩＰ（Intellectual Property）コアや、事前に作成した専用の論理回路ブロックや、メモリ回路ブロックなどとして構成される。またこのとき、アクセラレータ２２は、１個または複数のＦＰＧＡを搭載した１枚のボード（ハードウェア基板）として構成することができ、これらのＦＰＧＡとこれらのＦＰＧＡの相互間を接続する配線部分とが、再構成ハードウェア処理部２７に相当することになる。ＦＰＧＡを搭載したボード上におけるＦＰＧＡ間配線が、タイルブロック部３１を接続するタイル間接続部３２に相当する。タイル間接続部３２は、再構成ハードウェア処理部２７上のすべてのタイルブロック部３１間を任意のネットワークトポロジ（メッシュ結合、リング結合、全結合、バス結合など）で接続できる。あるいは、再構成ハードウェア処理部２７上のすべてのタイル処理部３４の間を任意のネットワークトポロジ（メッシュ結合、リング結合、全結合、バス結合等）で接続してもよい。これらのタイル処理部３４の接続関係は、リソースマネージャ２３の指示に基づいて再構成できる。
【００４７】
《第２の実施形態》
図５に示す本発明の第２の実施形態のデータ処理システムは、図１に示した第１の実施形態のデータ処理システムと同様のものであるが、第１の実施形態のデータ処理システムに対し、アクセラレータ２２の相互間を接続する専用のアクセラレータ間接続部２８を設けたものである。アクセラレータ間接続部２８を設けたことに対応して、各アクセラレータ内２２には、このアクセラレータ間接続部２８と再構成ハードウェア処理部２７との間をつなぐアクセラレータ間接続入出力制御部２９が設けられている。図６に示すように、再構成ハードウェア処理部２７内の各タイルブロック部３１は、タイル間接続部３２を介し、内部データ入出力制御部２５及び外部データ入出力制御部２６に加えてアクセラレータ間接続入出力制御部２９に接続している。
【００４８】
図１に示したシステムにおいても、サーバ・アクセラレータ間接続部２４を経由することにより、異なるアクセラレータ２２上のタイル処理部３４どうしでデータの受け渡しを行うことは可能であるが、このサーバ・アクセラレータ間接続部２４は、複数のサーバコンピュータ２１、リソースマネージャ２３及び複数の外部データ入出力制御部２６が接続され、さらにはネットワーク１２を介して複数のユーザ端末１１が接続されることも可能であり、映像等の高速・大容量のデータの大量の通信に利用され得るものでもあるので、通信のボトルネックになる可能性がある。そこで、第２の実施形態のデータ処理システムでは、アクセラレータ２２間のみを接続する専用のアクセラレータ間接続部２８すなわち専用のネットワークを設けることによって、特に映像等の大容量データの高速処理を行わせる可能性の高いアクセラレータ２２に関し、異なるアクセラレータ２２上のタイル処理部３４間で自由に高速通信接続を行えるようにしている。アクセラレータ間接続部２８での接続方式としては、任意のネットワークトポロジ（メッシュ結合、リング結合、全結合、ハイパーキューブ、または一般的なバス結合等）を用いることができる。アクセラレータ２２間のこれらの接続関係は、リソースマネージャの指示に基づいて構築される。これにより、複数のアクセラレータ２２間にまたがるタイル処理部３４の相互間でも常に高速な通信を保障でき、これらタイル処理部３４間で処理を結合して実行することが可能になる。
【００４９】
《第３の実施形態》
次に、本発明の第３の実施形態を説明する。この第３の実施形態は、第１の実施形態または第２の実施形態のデータ処理システムを用い、外部からの入力データが画像または映像（カメラ映像やストリーミング映像など）であって、映像を画像処理した結果を取得することをユーザから要求された場合の処理に関するものである。
【００５０】
画像処理は、サーバコンピュータ２１上のソフトウェアでも実行することは可能であるが、例えば必要演算量が膨大であるなどの理由によって、ソフトウェアでの処理が困難な場合がある。そのような場合には、ハードウェアのアクセラレータ２２で処理を実行させることにより、目的とする処理を可能にすることができる。ソフトウェアでの処理が困難である具体的な場合としては、例えば、処理対象とする画像の解像度が大きい場合や、要求される画像処理のアルゴリズムが複雑で処理量が大きい場合や、要求される処理時間の制限が短い場合などが挙げられる。
【００５１】
アクセラレータ２２の再構成ハードウェア処理部２７によりこのような画像処理を実行する方法について説明する。
【００５２】
再構成ハードウェア処理部２７内の１個のタイル処理部３４を用いて、図７に示すように、例えば画像を入力し、特徴抽出処理と物体識別処理とを行い、認識された物体情報データを出力することができる。再構成ハードウェア処理部２７内ではタイル処理部３４を相互に接続することが可能であることから、例えば、２つのタイル処理部３４を接続して用い、図８に示すように、前段のタイル処理部（特徴抽出処理タイル処理）では、画像を入力して特徴抽出処理を行い、抽出された特徴量情報を出力する処理を行い、後段のタイル処理部（物体識別処理タイル処理）では、得られた特徴量情報を入力し、物体識別処理を行い、認識された物体情報データを出力することもできる。
【００５３】
図８に示した例において、後段のタイル処理部（物体識別処理タイル）において、物体識別処理のアルゴリズムとして学習に基づく識別処理（ＳＶＭ（サポート・ベクタ・マシン：Support Vector Machine）、AdaBoost（エイダ・ブースト(adaptive boosting)）、部分空間法など）を用いる場合には、事前に学習した学習データが必要になるが、この学習データは物体識別処理タイル内部に保持することが可能である。この場合は、識別処理を効率化高速化できる可能性があるという利点がある。あるいは図９に示すように、物体識別処理タイルとは別個に、学習データ用のタイル処理部（学習データタイル）を設けてこのタイル処理部内に学習データを保持することも可能である。この場合は、同一の学習データタイルを他の処理に対しても同時に利用可能とすることができるという利点がある。
【００５４】
一般に画像処理では、画像を入力し各種フィルタ処理などの前処理を行うことができる。例えば、特徴抽出処理の前に、入力画像に対してフィルタ処理（先鋭化、平滑化、エッジ抽出、ＦＦＴ（高速フーリエ変換；Fast Fourier Transform）等による周波数変換などの処理）を行い、その結果の画像を特徴抽出処理に入力することもできる。これにより、特徴抽出処理や物体識別処理における抽出性能や識別性能を上げることができる可能性がある。また、特徴抽出処理を行うために前処理が必要な場合もある。このような前処理をタイル処理部に実装し、特徴抽出処理タイルの前に接続することにより、処理を連結して実行することができる。
【００５５】
また、画像認識処理（物体識別処理）を行った後、クラスタリング等の後処理を行うことができる。例えば、物体識別処理の後に得られた物体情報データ（物体の座標位置情報など）を入力として、後処理（例えば、物体個数のカウント処理、クラスタリング処理（統合処理）、時間平均処理など）を行うことにより、さらに追加の物体情報データ（物体個数等）を得たり、クラスタリング処理（統合処理）により得られたデータからよりもっともらしい物体情報データ（座標位置）を取得したり、時間平均処理により誤認識した可能性のある物体情報データを減らしたりすることなどが可能であり、これにより物体認識性能を向上させることができる。このような後処理をタイル処理部に実装し、物体識別処理を行うタイル処理部の後に接続することにより、処理を連結して実行できる。
【００５６】
図１０は、上述した前処理タイルを特徴抽出処理タイルの入力側に配置し、後処理タイルを物体識別処理タイルの出力側に配置したものを示している。もちろん、前処理タイルと後処理タイルの一方を設けない構成とすることも可能である。
【００５７】
タイル処理部に各々異なる処理を実装し、それらを連結させることにより、様々な組み合わせの画像処理を行うことが可能である。このようなタイル処理部の連結方法としては、リソースマネージャ２３が、要求されている処理内容に基づいて、タイル処理部間の接続を切り替えたり、新規にタイル処理部を生成したり、不要なタイル処理部を消去または休眠させたりする処理を実行するというものがある。
【００５８】
タイル間の接続を切り替える処理は、タイルブロック部３１内のタイル制御部３３や、タイルブロック部３１間のタイル間接続部３２の設定を変更させることによって行うことができ、これによって、アクセラレータ２２内の任意のタイル間で複数のタイルを接続することができる。アクセラレータ間接続部２８を介すれば、アクセラレータ２２間にまたがる複数の任意のタイル処理部を接続することができるようになる。
【００５９】
タイル処理部を新規生成する処理は、タイルブロック部として例えば再構成可能なデバイスであるＦＰＧＡを用いている場合であれば、ＦＰＧＡが通常備える書き換え機能を用いて、ＦＰＧＡ単位もしくはＦＰＧＡ内の一部の領域を書き換える（書き込む）ことにより容易に行うことができる。不要なタイルを消去させたり休眠させたりすることも、ＦＰＧＡ単位もしくはＦＰＧＡ内の一部の領域を書き換える（書き込む）ことにより容易に行うことができる。
【００６０】
図１１は、具体的に処理を行う例を示している。ここでは、複数の異なる入力映像（入力映像１〜４）をそれぞれ入力（入力１〜４）とし、それぞれの入力映像ごとにアクセラレータ２２上に必要な複数のタイル処理部３４を生成し、画像認識の処理を行う例を説明する。入力１〜３に対しては、入力映像から人物を検出する処理を、入力４に対しては、入力映像から車両（自動車）を検出する処理を行っている。図１１では、各アクセラレータ２２内の複数のタイル処理部３４の各々ごとに、どのような処理を実行するタイルとして用いられているかが示されてる。例えば、図示１番上のアクセラレータ２２では、８個のタイル処理部３４のうち、１個が物体識別処理に、２個が特徴抽出処理に、残りの５個が学習データの保持用に用いられている。そして、入力１に対しては、図示１番上のアクセラレータ内の５個のタイル処理部３４（内訳として「特徴抽出」が１個、「物体識別」が１個、「学習データ」が３個）を用いて処理が実行されている。入力２に対しては、図示１番上のアクセラレータと２番目のアクセラレータにまたがって５個のタイル処理部３４が用いられている。同様に入力３，４についても、それぞれ、アクセラレータ間をまたがって複数のタイル処理部を利用することができる。
【００６１】
また入力１，２のように入力映像における背景部分が異なっている場合であれば、それぞれの背景（すなわち映像の撮影場所）に応じた設定を該当のタイル処理部のパラメータに対して予め行っておくことにより、それぞれの背景に特化して識別性能が高く、かつハードウェアによる高速な認識処理を実行できる。入力映像３では、他の入力映像と比べ、多数の人物がいずれも相対的に小さなサイズで映っている。そこで入力３では、人物を抽出した結果からさらにカウンタ処理により、人物の数を求めて出力したり、人物の大きさが小さいことを認識してその情報を出力したりしている（「出力３」を参照）。また、ここに示した例では、ハードウェアであるアクセラレータ２２を使用して並列処理を行っているので、入力１〜３に対して人物の検出処理をしているときに、同時に、入力４に対しては自動車を検出する処理を行うことができる。
【００６２】
また統合処理やカウンタ処理など、処理の一部をサーバ側で処理させることも可能である。このときは、アクセラレータ２２での処理による結果データ（物体情報データ等）をサーバコンピュータ２１に送信し、サーバコンピュータ２１上でソフトウェアによる処理を行い、結果を出力すればよい。ソフトウェアによる処理はハードウェアによる処理よりも実行時間がかかることから、高速に処理が必要な部分はハードウェアであるアクセラレータ２２に割り当て、処理が遅くても問題にならない場合やソフトウエアでも十分に高速に処理できる簡易な処理などの部分はサーバコンピュータ２１に割り当てることも可能である。
【００６３】
《第４の実施形態》
次に、本発明の第４の実施形態を説明する。この第４の実施形態は、第３の実施形態と同様に、第１の実施形態あるいは第２の実施形態のデータ処理システムを用い、外部からの入力データが画像または映像（カメラ映像やストリーミング映像など）であって、映像を画像処理した結果を取得することをユーザから要求された場合の処理に関するものである。
【００６４】
ここでは、入力映像に対して特徴抽出処理と物体識別処理を行うものとし、特徴抽出処理としてＨＯＧ特徴量を抽出する処理を用い、また物体識別処理としてAdaBoost識別処理（RealAdaBoost識別処理を含む）を行うものとする。すなわち第４の実施形態は、第３の実施形態における特徴抽出処理及び物体識別処理として、それぞれＨＯＧ特徴抽出処理及びAdaBoost識別処理（RealAdaBoost識別処理を含む）を用いるものに相当する。ＨＯＧ特徴抽出は、入力画像（映像）の各画素位置における画素値の勾配方向と勾配強度をベースとした局所特徴量を抽出するものである。ＨＯＧ特徴量は背景、色、照明条件等に対して頑健であるという利点を有し、人物抽出等の物体認識のために使うことができることが知られている。またAdaBoostは、各々異なる特徴に着目した多数の弱い識別器を用意し、それらの多数決（または総和等）により、強い識別器を構成するという手法であり、検出したい物体の形状変化に頑健な学習方式の物体識別処理として使えることが知られている。一般的なAdaBoostアルゴリズムは、多数の弱識別器の出力から多数決により強識別器を作るものであるが、これを改良して、弱識別器の出力を実数値にしてそれらの総和を求めることにより強識別器を作ることにより性能向上を図ったReal AdaBoostアルゴリズム等もある。
【００６５】
第４の実施形態においても、第３の実施形態の場合と同様に、アクセラレータ２２の再構成ハードウェア処理部２７によってこのような画像処理を行うことになる。例えば図１２に示すように、１個のタイル処理部を用いてＨＯＧ特徴抽出処理とAdaBoost識別処理とをまとめてを実行することとして、ＨＯＧ＋AdaBoost処理タイルを生成し、これに入力画像を入力し、この処理タイルから物体情報データを出力するようにすることができる。図１３に示すように、ＨＯＧ特徴抽出処理を実行するＨＯＧ処理タイルとAdaBoost識別処理を実行するAdaBoost処理タイルとを別個に用意し、それらを連結して処理を行わせることもできる。また図１４に示すように、複数の同じ設定（もしくは異なる設定）のAdaBoost処理タイルを用意し、ＨＯＧ処理タイルから出力されるＨＯＧ特徴抽出処理結果をこれら複数のAdaBoost処理タイルに並列に入力させて並列処理を行わせることもできる。反対に、図１５に示すように、ＨＯＧ処理タイルを複数用意してこれたのＨＯＧ処理タイルでＨＯＧ特徴抽出処理を並列に実行させ、それらの結果を単一のAdaBoost処理タイルに入力させることもできる。
【００６６】
図１４及び図１５に示した例に関し、ＨＯＧ特徴抽出処理の負荷が大きい場合に図１５のようにＨＯＧ処理タイルを複数並列に設けてそれらを利用したり、AdaBoost識別処理の負荷が大きい場合に図１４のようにAdaBoost処理タイルを複数並列に設けてそれらを利用したりすることができる。リソースマネージャ２３が、処理負荷のバランスを考慮してこれらの処理タイルを効率よく組み合わせることにより、無駄の少ない効率的なハードウェア処理を実行できる。なお、第３の実施形態の場合であっても、特徴抽出処理タイルを複数並列に設けてそれらを利用したり、あるいは、物体識別処理タイルを複数並列に設けてそれらを利用したりすることによって、ここで述べたものと同様に、効率的な並列処理を行うことができる。
【００６７】
第４の実施形態においても、第３の実施形態の場合と同様に、画像を入力し各種フィルタ処理などの前処理を行うことができる。例えば、ＨＯＧ特徴処理の前に、入力画像に対してフィルタ処理（先鋭化、平滑化、エッジ抽出、ＦＦＴ等による周波数変換などの処理）を行い、その結果の画像をＨＯＧ特徴抽出処理に入力することもできる。これにより、ＨＯＧ特徴抽出処理やAdaBoost物体識別処理における抽出性能や識別性能を向上できる可能性がある。このような前処理をタイル処理部に実装して前処理タイルとし、ＨＯＧ処理タイルの前に接続することにより、処理を連結して実行することもできる。
【００６８】
また、AdaBoost物体識別処理を行った後、クラスタリング等の後処理を行うことができる。例えば、AdaBoost物体識別処理により得られた物体情報データ（物体の座標位置情報など）を入力として、後処理（例えば、物体個数のカウント処理、クラスタリング処理（統合処理）、時間平均処理など）を行うことにより、さらに追加の物体情報データ（物体個数等）を得たり、クラスタリング処理（統合処理）により得られたデータからよりもっともらしい物体情報データ（座標位置）を取得したり、時間平均処理により誤認識した可能性のある物体情報データを減らしたりすることなどが可能であり、これにより、物体認識性能を向上させることができる。このような後処理をタイル処理部に実装して後処理タイルとし、AdaBoost処理タイルの後に接続することにより、処理を連結して実行することができる。もちろんこれら前処理タイルと後処理タイルを両方利用することも容易に可能である。
【００６９】
第４の実施形態でも第３の実施形態と同様に、タイル処理部に各々異なる処理を実装し、それらを連結させることにより、様々な組み合わせの画像処理を行うことが可能であり、タイル処理部の連結方法などに関しても第３の実施形態の場合と同様である。
【００７０】
第４の実施形態での具体的に処理を行う例としては、図１１に示した処理例において特徴抽出処理としてＨＯＧ特徴抽出処理を実行し、物体識別処理としてAdaBoost物体識別処理を実行するようにしたものが挙げられる。この場合、図１１において「特徴抽出」及び「物体識別」とラベル付けされたタイル処理部３４については、それぞれ、ＨＯＧ特徴抽出処理タイル及びAdaBoost物体識別処理タイルとして構成することになる。
【００７１】
第４の実施形態によれば、アクセラレータ２２内の再構成可能な単位処理回路（タイル処理部３４）に、ＨＯＧ特徴抽出処理とReal AdaBoost識別処理の機能を実装することにより、複数の映像入力かつ膨大な計算量であっても、リアルタイム処理ができるようになる。
【符号の説明】
【００７２】
１１    ユーザ端末
１２    ネットワーク
２０    データ処理システム
２１    サーバコンピュータ
２２    アクセラレータ
２３    リソースマネージャ
２４    サーバ・アクセラレータ間接続部
２５    内部データ入出力制御部
２６    外部データ入出力制御部
２７    再構成ハードウェア処理部
２８    アクセラレータ間接続部
２９    アクセラレータ間接続入出力制御部
３１    タイルブロック部
３２    タイル間接続部
３３    タイル制御部
３４    タイル処理部
４１    処理フロー制御部
４２    処理フロー管理ＤＢ（データベース）
４３    外部データ入出力管理部
４４    ＳＷ（ソフトウェア）処理管理部
４５    ＳＷリソース管理ＤＢ
４６    ＨＷ（ハードウェア）処理管理部
４７    ＨＷリソース管理ＤＢ
【図１】
0005653865.tif 000002
【図２】
0005653865.tif 000003
【図３】
0005653865.tif 000004
【図４】
0005653865.tif 000005
【図５】
0005653865.tif 000006
【図６】
0005653865.tif 000007
【図７】
0005653865.tif 000008
【図８】
0005653865.tif 000009
【図９】
0005653865.tif 000010
【図１０】
0005653865.tif 000011
【図１１】
0005653865.tif 000012
【図１２】
0005653865.tif 000013
【図１３】
0005653865.tif 000014
【図１４】
0005653865.tif 000015
【図１５】
0005653865.tif 000016