(57)【要約】【課題】  回路規模を増大させることなく、アルゴリズムを効率よく実装することが可能な、プロセッサアレイ構成を提供する。【解決手段】  プロセッサアレイにおける入出力制御手段間の経路の内少なくともひとつを、データ処理フローに合せて、所定の方向に多重に持たせることで、効率よく実装することが可能となる。また、上記所定の方向を多重化する代わりに、その方向とは反対方向の経路を省くことで、回路規模の増大を防ぐことを特徴とする。【選択図】  図１
2012048573.tif 000002
【特許請求の範囲】
【請求項１】
複数の入出力手段と、
複数の処理手段と、
前記複数の入出力手段同士を接続する複数の第１の通信線と、
前記入出力手段と前記処理手段とを相互に接続する複数の第２の通信線と、
所定の方向へデータを伝達する第１の通信線の帯域が他の方向の第１の通信線の帯域と比べて広いことを特徴とするデータ処理装置。
【請求項２】
格子状に配置され、複数の入出力ポートを備える複数の入出力手段と、
前記格子に対応して配置され、複数の入出力ポートを備える複数の処理手段と、
前記入出力手段が、隣接する他の前記入出力手段と
前記複数の入出力ポートを接続する複数のデータ通信手段とを有し、
前記複数のデータ通信手段のうち、少なくとも一つが所定の方向に多重化された構成を持つことを特徴とする信号処理回路。
【請求項３】
前記処理手段が複数の記憶手段を備え、前記処理手段の備える前記複数の入出力ポートから受信するデータを前記記憶手段に並列に書き込む書き込み手段を有することを特徴とする請求項２に記載の信号処理回路。
【請求項４】
前記処理手段が複数の記憶手段を備え、前記記憶手段に書き込まれている複数のデータを前記処理手段の備える前記複数の入出力ポートへ並列に読み出す読み出し手段を更に有することを特徴とする請求項２又は３に記載の信号処理回路。
【請求項５】
前記複数のデータ通信手段のうち、少なくとも一つが物理的に多重化された構成を持つことを特徴とする請求項２乃至４のいずれか１項に記載の信号処理回路。
【請求項６】
前記複数のデータ通信手段のうち、少なくとも一つが複数の前記入出力手段からのデータ通信を共有可能とする構成を持つことを特徴とする請求項２乃至５のいずれか１項に記載の信号処理回路。
【請求項７】
データ入力手段を更に備え、前記データ通信手段のうち、少なくとも一部が前記データ入力手段から前記入出力手段の方向に多重化されていることを特徴とする請求項２乃至６のいずれか１項に記載の信号処理回路。
【請求項８】
前記データ入力手段と異なる入出力手段と接続されているデータ出力手段を更に備え、前記データ通信手段のうち、少なくとも一部が前記入出力手段から前記データ出力手段の方向に多重化されていることを特徴とする請求項７に記載の信号処理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセッサアレイ等の半導体集積回路、又はデータ処理装置に関する。
【背景技術】
【０００２】
特許文献１のように、プロセッサ同士を直接接続し、直接データを通信するプロセッサアレイ構造がある。このような構成では、プロセッサ間のデータ通信のためのデータ入出力処理も各プロセッサが行う必要があった。
【０００３】
そこで、非特許文献１に示すようにデータ演算処理回路とデータ入出力処理回路を設け、演算処理と入出力処理を回路的に分けた構成がある。非特許文献１に代表されるプロセッサアレイ構成を図４に示す。
【０００４】
プロセッシングエレメント４０２は、少なくとも一つ以上の演算器を備えており、データの伝達経路の変更を行うスイッチングエレメント４０１と、双方向のデータの伝達を実現するための信号線４０４ａおよび４０４ｂを介して一対一で接続されている。また、前記スイッチングエレメント４０１は東西南北の他のスイッチングエレメント４０１の其々と双方向のデータの伝達を実現するための信号線４０３ａ、４０３ｂ、４０３ｃ、４０３ｄによって格子状に接続されている。
【０００５】
スイッチングエレメント４０１とプロセッシングエレメント４０２間の経路４０４ａはスイッチングエレメント４０１からプロセッシングエレメント４０２の方向に接続されている。またスイッチングエレメント４０１と演算処理手段４０２間の経路４０４ｂはプロセッシングエレメント４０２からスイッチングエレメント４０１の方向に接続されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第０２５３３２８２号公報
【非特許文献】
【０００７】
【非特許文献１】Ｍ．Ｂ．Ｔａｙｌｏｒ，ｅｔ  ａｌ．，“Ｔｈｅ  ＲＡＷ  Ｍｉｃｒｏｐｒｏｃｅｓｓｏｒ：Ａ  Ｃｏｍｐｕｔａｔｉｏｎａｌ  Ｆａｂｒｉｃ  Ｆｏｒ  Ｓｏｆｔｗａｒｅ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｇｅｎｅｒａｌ−Ｐｕｒｐｏｓｅ  Ｐｒｏｇｒａｍｓ，”ＩＥＥＥ  Ｍｉｃｒｏ，２２（２）：ｐｐ．２５−−３５，Ｍａｒ．２００２
【発明の概要】
【発明が解決しようとする課題】
【０００８】
動的再構成可能プロセッサアレイでは各プロセッサ間の接続を任意に変えられるように、スイッチングエレメント同士は双方向のデータの伝達を実現する１セットの信号線で接続している。ここで、プロセッサアレイにデータを投入する場合、主として入力端から出力端へ処理対象のデータが流れるため、入力端から出力端の方向へ流れるデータ量の方が他の方向へ流れるデータ量よりも大きい。従って、特許文献１などのように単純に各スイッチングエレメント間を双方向に接続するだけではこの点が考慮されておらず、主としてデータが流れる方向と他の方向への信号線を同様に配線しており、回路規模に対するデータの転送効率が良くない。
【０００９】
本発明は、上述した問題点に鑑みてなされたものであり、プロセッサアレイにおいて回路規模に対するデータの転送効率を向上させることを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を決するための本発明に係るデータ処理装置は、複数の入出力手段と、複数の処理手段と、前記複数の入出力手段同士を接続する複数の第１の通信線と、前記入出力手段と前記処理手段とを相互に接続する複数の第２の通信線と、所定の方向へデータを伝達する第１の通信線の帯域が他の方向の第１の通信線の帯域と比べて大きいことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、回路規模を増大させることなく、プロセッサアレイ内のデータの転送効率を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】プロセッサアレイの概略構成を示す図である。
【図２】プロセッシングエレメントとスイッチングエレメントの接続関係を示す図である。
【図３】入出力制御部の接続関係を示す図である。
【図４】従来のプロセッサアレイの概略構成を示す図である。
【図５】プロセッサアレイの動作例を示す図である。
【図６】第一の実施形態におけるデータ通信の手順を示す図である。
【図７】第一の実施形態における動作を示す図である。
【図８】第一の実施形態における、処理内容の例を示す図である。
【図９】第一の実施形態における、他モジュールと接続した場合の実装例を示す図である。
【図１０】第二の実施形態を示す図である。
【図１１】第二の実施形態における入出力制御手段の例を示す図である。
【図１２】第二の実施形態における、動作例を示す図である。
【図１３】第三の実施形態を示す図である。
【図１４】第三の実施形態における、記憶手段の例を示す図である。
【発明を実施するための形態】
【００１３】
（実施形態１）
本実施形態にかかるプロセッサアレイの概略構成を図１に示す。図１には図示していないが、プロセッサアレイの南端にプロセッサアレイにデータを投入する入力端（後述の入力モジュール９０２）があり、プロセッサアレイの北端にプロセッサアレイからのデータを出力する出力端（後述の出力モジュール９０１）がある。そのため、図１プロセッサアレイでは北に流れるデータの量が、南に流れるデータの量よりも大きい。
【００１４】
プロセッサアレイには、８入力８出力の入出力処理手段であるスイッチングエレメント１０１が二次元格子状に配置され、演算処理手段である４入力４出力のプロセッシングエレメント１０２が、スイッチングエレメント１０１の格子内に配置されている。
【００１５】
スイッチングエレメント１０１ａ、１０１ｃ、１０１ｄ、１０１ｆ、１０１ｇ、１０１ｉの８入力８出力は１入力１出力を一組として東西南北の、他の４つのスイッチングエレメント１０１と経路（信号線）１０３ａおよび１０３ｂを介して個別に相互に接続されている。また、北東、南東、南西、北西の、夫々別の４つのプロセッシングエレメントと経路１０４ａおよび１０４ｂを介して双方向に接続されている。スイッチングエレメント１０１ｂ、１０１ｅ、１０１ｈはプロセッシングエレメント１０２との接続に関しては、他のスイッチングエレメント１０１と同様に北東、南東、南西、北西の、夫々別の４つのプロセッシングエレメントと経路１０４ａおよび１０４ｂを介して接続された構成を持つ。他のスイッチングエレメントとの接続に関しては、東西のスイッチングエレメント１０１との接続は１０３ａおよび１０４ｂを介して双方向に接続されている。
【００１６】
しかし、南北にあるスイッチングエレメント１０１との接続に関しては、南方向の経路１０３ｂの変わりに北方向の経路１０４ａにすることで北向きの方向の経路１０３ａが２本ある構成を有する。なお、図１の各経路１０３ａ、１０３ｂ、１０４ａ、１０４ｂの矢印の方向はデータを伝達可能な方向を示しており、１０１ａ〜１０１ｉはそれぞれ同じ構成を有し、１０２ａ〜１０２ｄは、それぞれ同じ構成を持つ。
【００１７】
このように、一方向のみの接続だが物理的に２つの経路１０３を持つ構成をアレイ上に部分的に少なくともひとつ配置する。
【００１８】
ここで、各接続１０３ａ、１０３ｂ、１０４ａ、１０４ｂの通信プロトコルとして、本実施形態ではＶａｌｉｄ信号とＲｅａｄｙ信号による２線式ハンドシェークを用いる。図６は、２線式ハンドシェークを用いてモジュールＡ６０１からモジュールＢ６０２へデータ転送する際にハンドシェークする模式図とタイミングチャートとを示している。モジュールＡ、Ｂともにスイッチングエレメントでもプロセッシングエレメントでもよい。モジュールＡからモジュールＢへデータを転送する際には、モジュールＡからＢへＤａｔａ信号６０３、Ｖａｌｉｄ信号６０４を送信し、一方モジュールＢからＡへＲｅａｄｙ信号６０５を送信する。なお、説明の簡略のため一方向にデータを転送する例を説明しているが、双方向に転送可能にするためには信号線が単純に倍必要になる。
【００１９】
Ｖａｌｉｄ信号６０４はモジュールＡの送信可能状態を示し、Ｒｅａｄｙ信号６０５はモジュールＢのデータ受信可能状態を示す。モジュールＡ６０１のＶａｌｉｄ信号６０４とモジュールＢ６０２からのＲｅａｄｙ信号６０５が両方有効のタイミングでＤＡＴＡ信号６０３がモジュールＡ６０１からモジュールＢ６０２へ送信される。図６のタイミングチャートでは信号がＨｉｇｈの状態で有効Ｌｏｗの状態で無効を示す。なお、図６のタイミングチャートでは６０６ａのタイミングでデータＡが、６０６ｂのタイミングでデータＢが、６０６ｃのタイミングでデータＣ、６０６ｄのタイミングでデータＤがモジュールＡ６０１からモジュールＢ６０２へと転送されている。
【００２０】
次に、プロセッシングエレメントとスイッチングエレメントの接続構成を図２に示す。プロセッシングエレメント１０２は入力ポート２０２ｎｅ、２０２ｎｗ、２０２ｓｗおよび２０２ｓｅ、出力ポート２０３ｎｅ、２０３ｎｗ、２０３ｓｗおよび２０３ｓｅを有している。入力ポート２０２ｎｅ、２０２ｎｗ、２０２ｓｗおよび２０２ｓｅはそれぞれスイッチングエレメント１０１ｂの２０５ｓｗ、１０１ａの２０５ｓｅ、１０１ｄの２０５ｎｅおよび１０１ｅの２０５ｎｗと個別にＮビットのデータ幅（帯域）で接続されている。
【００２１】
また出力ポート２０３ｎｅ、２０３ｎｗ、２０３ｓｗおよび２０３ｓｅはそれぞれスイッチングエレメント１０１ｂの２０４ｓｗ、スイッチングエレメント１０１ａの２０４ｓｅ、スイッチングエレメント１０１ｄの２０４ｎｅおよびスイッチングエレメント１０１ｅの２０４ｎｗと個別にＮビットのデータ幅で接続されている。
【００２２】
プロセッシングエレメント１０２の夫々は４入力４出力ポートを有し、与えられた入力値に対して並列に複数の演算を行い、出力することが可能である。図２ではプロセッシングエレメントの構成例として、４つの演算部２０１を有している構成を示す。上記４つの演算部２０１はそれぞれの入力に対して、独立して並列に動作することで高速な動作速度を実現することが可能となる。なお、演算部は演算器を少なくとも一つ持っている。例えば、加減算器、比較器、乗算器、除算器、論理演算器、セレクタなどの多入力演算器、または、これらの組合せからなる演算器、さらにはこれらと他の演算器の組合せからなる演算器などである。プロセッシングエレメント１０２の演算器の動作は予めプロセッシングエレメント１０２内のレジスタ（不図示）に格納されている設定によって決定された動作を行う。
【００２３】
次に図３にスイッチングエレメント１０１ｅの構成とスイッチングエレメント１０１ｅに接続されている他のスイッチングエレメントおよびプロセッシングエレメントとの接続関係を示す。スイッチングエレメント１０１は入力ポート２０４ｎ、２０４ｓ、２０４ｅ、２０４ｗ、２０４ｎｅ、２０４ｎｗ、２０４ｓｗおよび２０４ｓｅを有している。また同様に、スイッチングエレメント１０１は、出力ポート２０５ｎ、２０５ｓ、２０５ｅ、２０５ｗ、２０５ｎｅ、２０５ｎｗ、２０５ｓｗおよび２０５ｓｅを有している。
【００２４】
スイッチングエレメント１０１ｅの入力ポート２０４ｎｅ、２０４ｎｗ、２０４ｓｗおよび２０４ｓｅはそれぞれ、プロセッシングエレメント１０２ｂの２０３ｓｗ、１０２ａの２０３ｓｅ、１０２ｃの２０３ｎｅ、１０２ｄの２０３ｎｗと接続されている。また、入力ポート２０４ｎ、２０４ｓ、２０４ｅ、２０４ｗはスイッチングエレメント１０１ｈの２０５ｓ、１０１ｈの２０５ｎ、１０１ｄの２０５ｅ、１０１ｆの２０５ｗと夫々接続されている。
【００２５】
スイッチングエレメント１０１ｅの出力ポート２０５ｎｅ、２０５ｎｗ、２０５ｓｗおよび２０５ｓｅはそれぞれ、プロセッシングエレメント１０２ｂの２０２ｓｗ、１０２ａの２０２ｓｅ、１０２ｃの２０２ｎｅ、１０２ｄの２０２ｎｗと接続されている。
【００２６】
また、出力ポート２０５ｎ、２０５ｓ、２０５ｅ、２０５ｗはスイッチングエレメント１０１ｂの２０４ｓ、１０１ｂの２０４ｎ、１０１ｆの２０４ｗ、１０１ｄの２０４ｅと接続されている。
【００２７】
図３に示すスイッチングエレメントは、８入力８出力のクロスバースイッチ（Ｘ−ｂａｒ  Ｓｗｉｔｃｈ）３０１を有している。上記クロスバースイッチ３０１の経路設定は、予め外部から設定され、経路設定された入出力ポートの通信は独立して行われる。
【００２８】
上記構成による動作例を以下に示す。図７に経路７０１、７０２、７０３、７０４、７０５によってデータ転送される場合を考える。経路７０１では、スイッチングエレメント１０１ｇ、１０１ｄ、１０１ａの順にデータが転送される。経路７０２では、スイッチングエレメント１０１ｈ、１０１ｅ、１０１ｂの順にデータが転送される。経路７０３では、スイッチングエレメント１０１ｉ、１０１ｆ、１０１ｃの順にデータが転送される。経路７０４では、スイッチングエレメント１０１ｇ、１０１ｈ、プロセッシングエレメント１０２ｄの順にデータが転送される。経路７０５では、プロセッシングエレメント１０２ｄ、スイッチングエレメント１０１ｅ、１０１ｂの順にデータが転送される。
【００２９】
図５に示した従来例の構成では、プロセッシングエレメント４０２ｄからスイッチングエレメント４０１ｂへ２つのエレメントを介してデータを渡す経路が設定できなかったが、本実施形態では経路７０５が設定できることで２つのエレメントを介してデータの受け渡しができるようになる。
【００３０】
次に、上記に説明したアーキテクチャを実際の画像処理モジュールに適用した例を示す。まず適用するデータフローダイアグラムを図８に示す。図８の例では処理対象のデータである画像中の特徴量と画像の各位置における係数を用いた閾値処理を行っている。
【００３１】
まず８０１ａで異なる特徴量を２つ投入する。また、８０２ａで各特徴量位置に対する閾値を投入する。８０３ａでは投入された特徴量に対して、重み係数を処理する。次に、８０４で係数演算された特徴量と夫々に対応した閾値データを用いて閾値処理する。最後に、８０５ａで閾値処理された特徴量を出力する。図８に示す処理を画像ａに対する処理として、画像ｂ、画像ｃにも同様の処理を並列で行う。（なお、後述の説明では画像ｂ、ｃに対する同様の処理は８０１ｂ，８０１ｃとして表記する。）
【００３２】
次に、前述したデータフローダイアグラムを図９に示す構成のプロセッサアレイに実行させるときの動作を説明する。図９に示すように、入力モジュール（データ入力手段）９０２からプロセッサアレイ部（データ処理装置）へ入力したデータはプロセッサアレイ部で処理され、プロセッサアレイ部から出力モジュール（データ出力手段）９０１へ出力されるように構成されている。なお、入力モジュール９０２からプロセッサアレイ部への信号線９０４とプロセッサアレイ部から出力モジュール９０１への信号線９０３は、入力モジュールから出力モジュールにだけデータを転送可能なように構成されている。
【００３３】
まず、インプットモジュール９０２から経路９０４を介してスイッチングエレメント１０１ｉ、１０１ｊ、１０１ｋ、１０１ｌへ、８０１ａ、ｂ、ｃに相当する６つの特徴量の投入と８０２ａ、ｂ、ｃに相当する閾値の投入を行う。
【００３４】
次に投入された特徴量はプロセッシングエレメント１０２ｄ、１０２ｅ、１０２ｆに転送される。プロセッシングエレメント１０２ｄ、１０２ｅ、１０２ｆの夫々は、２つの特徴量について並列に重み係数処理を行う。次に、プロセッシングエレメント１０２ｄ、１０２ｅ、１０２ｆの夫々は、重み計数処理した特長量を１０１ｅ、１０１ｆ、１０１ｇ、１０１ｈおよび、１０１ａ、１０１ｂ、１０１ｃ、１０１ｄを介してプロセッシングエレメント１０２ａ、１０２ｂ、１０２ｃへ転送する。一方、各特徴量位置に対応した閾値は、スイッチングエレメント１０１ｉ、１０１ｊ、１０１ｋ、１０１ｌから１０１ｅ、１０１ｆ、１０１ｇ、１０１ｈを介して１０２ａ、１０２ｂ、１０２ｃへ転送される。
【００３５】
プロセッシングエレメント１０２ａ、１０２ｂ、１０２ｃでは投入された特徴量に投入された閾値を用いて閾値処理を行い、その結果を、経路９０３を介してアウトプットモジュール９０１へと出力する。
【００３６】
以上のとおり、本実施形態では、プロセッサアレイ部におけるスイッチングエレメント間の経路（通信線）の内、少なくともひとつを、所定の方向（入力モジュールから出力モジュールへの方向）に二重に持たせている（帯域を広くしている）。これにより、プロセッサアレイ部において効率よくデータ転送しながら複数のプロセッシングエレメントによって処理をすることが可能となる。また、上記所定の方向を二重化する代わりに、その方向とは反対方向の経路を省くことで、回路規模を増加させることを防いでいる。
【００３７】
（実施形態２）
本実施形態のプロセッサアレイの概略構成を図１０に示す。本実施形態ではスイッチングエレメント１００１ａ、１００１ｂ、１００１ｃ間はすべて実施形態１で述べた単方向の経路１０３ａを一つのみ用いてデータ転送を行う。
【００３８】
実施形態１との違いは、上記のように、図１０中のスイッチングエレメント１００１ａ、１００１ｂ、１００１ｃ間が１本の経路のみで接続されていることと、各スイッチングエレメント１００１自体にある。スイッチングエレメント１００１ａと１００１ｂ間および１００１ｂと１００１ｃ間の通信に関してのみ、一般的なデータバイパス機構（バーチャルチャネル機構）を付加し、時分割で複数のデータ通信を共有可能な構造とする。
【００３９】
図１１にバーチャルチャネル機構を備えたスイッチングエレメント１００１の構成を示す。入力ポート１１０１は７つあり、入力ポート１１０１ｓは南方向に配置されているスイッチングエレメントに接続されている。これを「１１０１ｓ：南」と表記すると、他の入力ポートは夫々、１１０１ｅ：東、１１０１ｗ：西、１１０１ｎｗ：北西、１１０１ｎｅ：北東、１１０１ｓｗ：南西、１１０１ｓｅ：南東と表記できる。
【００４０】
出力ポート１１０２も７つあり、出力ポート１１０２ｎは北方向に配置されているスイッチングエレメントに接続されている。これを「１１０２ｎ：北」と表記すると、他の出力ポートは夫々、１１０２ｅ：東、１１０２ｗ：西、１１０２ｎｗ：北西、１１０２ｎｅ：北東、１１０２ｓｗ：南西、１１０２ｓｅ：南東と表記できる。
【００４１】
バーチャルチャネル機構はバッファ１１０３、マルチプレクサ１１０４、１１０５を用いて実現される。図１０中の、スイッチングエレメント１００１ａと１００１ｂ間および１００１ｂと１００１ｃ間は、それぞれ、スイッチングエレメント１００１ａの入力ポート１１０１ｓと１００１ｂの出力ポート１１０２ｎ、１００１ｂの入力ポート１１０１ｓと１００１ｃの出力ポート１１０２ｎ、が接続されており、上記経路上にバーチャルチャネル機構が備えてある。上記バーチャルチャネルを備えた経路は、異なる経路からのデータを転送することができる。
【００４２】
異なる経路からのデータが、入力ポート１１０１ｓより入力されてくる場合は、経路ごとに別のバッファ１１０３に格納される。なおマルチプレクサ１１０４、１１０５および、それに接続されているクロスバースイッチ１１０６のポートは時分割的に経路をスイッチングすることで出力先を変えている。上記バーチャルチャネルを備えて経路からクロスバースイッチ１１０６を介して接続されている出力先の経路のうち、一方のデータがストールされている場合であっても他方の経路のデータで通信をすることが可能である。
バーチャルチャネル機構を備える代わりに、バーチャルチャネルで接続されている経路の方向とは逆の方向の経路を取り除くことで回路規模の増大を抑制することができる。
【００４３】
図１０、図１１に示す構成による動作例を図１２に示す。
【００４４】
図１２は経路１２０１、１２０２、１２０３、１２０４、１２０５によってデータ転送される例を示している。経路１２０１では、スイッチングエレメント１０１ｇ、１０１ｄ、１０１ａの順にデータが転送される。経路１２０２では、スイッチングエレメント１０１ｈ、１０１ｅ、１０１ｂの順にデータが転送される。経路１２０３では、スイッチングエレメント１０１ｉ、１０１ｆ、１０１ｃの順にデータが転送される。経路１２０４では、スイッチングエレメント１０１ｇ、１０１ｈ、プロセッシングエレメント１０２ｄの順にデータが転送される。経路１２０５では、プロセッシングエレメント１０２ｄ、スイッチングエレメント１０１ｅ、１０１ｂの順にデータが転送される。
【００４５】
ここでスイッチングエレメント１００１ｂから１００１ａへの転送に関しては経路１２０２と１２０５で同じ経路を使用しているが、これは上述のとおり、スイッチングエレメント１００１ａのバーチャルチャネル機構を利用することで時分割多重的に並列的にデータ転送している。
【００４６】
以上のとおり、本実施形態ではアレイ上の一部のみスイッチングエレメントに限り、入出力ポートの一部にバーチャルチャネル機構を追加することで、回路規模を大幅に増加させることなく、経路自由度を高めることができる。
【００４７】
（実施形態３）
本実施形態では実施形態１および実施形態２におけるプロセッシングエレメント１０２の一部をメモリエレメント１３０１と置き換えた構成を想定している。
【００４８】
本実施形態では実施形態１の図９と対比して以下に説明する。図１３は図９におけるプロセッシングエレメント１０２ｅをメモリエレメント１３０１と置き換えた構成を想定している。
【００４９】
メモリエレメント１３０１の内部構成を図１４に示す。メモリエレメント１３０１は２入力６出力ポートを備えている。１４０１ａ、１４０１ｂは入力ポートで南西方向と南東方向に配置されているスイッチングエレメントに接続されている。１４０２は出力ポートで、１４０２ｎｅ１と１４０２ｎｅ２は北東方向に配置されているスイッチングエレメントに接続され、１４０２ｎｗ１と１４０２ｎｗ２は北西方向に配置されているスイッチングエレメントに接続されている。同様に、１４０２ｓｅは南東方向に配置されているスイッチングエレメントに接続され、１４０２ｓｗは南西方向に配置されているスイッチングエレメントに接続されている。
【００５０】
メモリエレメント１３０１内には１つのメモリコントローラ１４０４および複数（本実施形態では６つ）のメモリ１４０３を備えている。複数の入力データを複数入力ポート１４０１から順次メモリに書込み、複数のメモリ１４０３から複数の出力ポート１４０２へ同時にデータを読み出すことができる。
【００５１】
本実施形態では、データを一度に並列に読書きすることができるため、データ処理のスループットが向上する。
【００５２】
（その他実施形態）
上述の実施形態では、信号処理回路として二次元構成について、説明したが、本発明はこれに限るわけではなく様々な次元構成について適用可能である。例えば、三次元構成について適用した場合、本発明の特徴である、回路規模を増大させることなく、処理の実装効率を向上させることができる。
実施形態では、プロセッシングエレメントとして入力ポート毎に並列動作する演算器を備えた構成を説明したが、本発明はこれに限るわけではなく様々なプロセッサについても適用可能である。例えば、一般的な処理を行うプロセッサを用いることも可能である。
【００５３】
なお、上述の実施形態の説明では説明を簡単にするために方角を用いて構成要素の関係を説明したが、この方角は構成要素の論理的な位置関係を定義するものであって、構成要素の物理的な位置関係を厳密に定義するものではない。例えば、複数のプロセッサを積層するように形成するなどしても、本願発明を適用することは可能である。ただ、スイッチングエレメント間の長さが局所的に極端に長くなってしまうと、局所的に大きな配線遅延が生じるので、スイッチングエレメント間の配線は均等にすることが好ましい。同様に「隣接する」という説明も配線を均等にした場合に論理的に隣接するように表現できるという意味である。
【００５４】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2012048573.tif 000003
【図２】
2012048573.tif 000004
【図３】
2012048573.tif 000005
【図４】
2012048573.tif 000006
【図５】
2012048573.tif 000007
【図６】
2012048573.tif 000008
【図７】
2012048573.tif 000009
【図８】
2012048573.tif 000010
【図９】
2012048573.tif 000011
【図１０】
2012048573.tif 000012
【図１１】
2012048573.tif 000013
【図１２】
2012048573.tif 000014
【図１３】
2012048573.tif 000015
【図１４】
2012048573.tif 000016