(57)【特許請求の範囲】
【請求項１】
複数の処理ユニットと、
前記複数の処理ユニットのそれぞれに含まれる複数のサブユニットと、
前記複数の処理ユニットのそれぞれに対応して設けられ、前記処理ユニット間で、前記処理ユニットが出力する処理結果を転送する複数の転送モジュールと、
前記複数の処理ユニットのそれぞれに対応して設けられ、対応する前記処理ユニット内の前記複数のサブユニットと、該処理ユニットに対応する前記転送モジュールと、をリング状に接続する複数の第１のリングバスと、
前記複数の転送モジュールをリング状に接続する第２のリングバスと、を備え、
前記第１のリングバスは、転送方向が互いに反対である第１方向のリングバスと第２方向のリングバスとで構成される、双方向のリングバスであり、
前記サブユニットは、前記第１のリングバスを使用してデータを転送する場合には、前記第１方向のリングバスを使用し、
前記転送モジュールは、前記第２のリングバスを経由して受け取った前記処理結果を、前記第１のリングバスを使用して転送する場合には、前記第２方向のリングバスを使用する、
処理装置。
【請求項２】
前記複数の処理ユニットのそれぞれは、動画像の符号化処理及び復号処理を行う動画像処理ユニットである、請求項１に記載の処理装置。
【請求項３】
前記複数の処理ユニットによる前記処理結果を格納する１つのラインメモリをさらに備え、
前記複数の転送モジュールのそれぞれは、前記処理ユニット間で前記処理結果を転送し、
前記複数の転送モジュールのうちの１つの転送モジュールは、前記ラインメモリへの前記処理結果の読み書きを制御する、請求項２に記載の処理装置。
【請求項４】
前記複数の処理ユニットのそれぞれに対応して設けられ、対応する処理ユニットによる前記処理結果を格納する複数のラインメモリをさらに備え、
前記複数の転送モジュールのそれぞれは、対応するラインメモリにおける前記処理結果の読み書きを制御する、請求項２に記載の処理装置。
【請求項５】
前記複数の処理ユニットには、互いに異なる符号化処理又は復号処理が割り当てられる、請求項４に記載の処理装置。
【請求項６】
前記複数の処理ユニットには、互いに同一の符号化処理又は復号処理が割り当てられる、請求項４に記載の処理装置。
【請求項７】
前記複数の処理ユニットの前記処理結果を比較し、比較結果に基づいて、前記複数の処理ユニットの故障を検出する故障検出部をさらに備える、請求項６に記載の処理装置。
【請求項８】
前記複数の処理ユニットのそれぞれに対応して設けられ、対応する処理ユニットへ供給する動画像を格納する動画像メモリにおける動画像の読み書きを制御する複数のメモリコントローラと、
前記複数の処理ユニットのそれぞれに対応して設けられ、対応する処理ユニットのバスに対するインタフェースとなる複数のダイレクトメモリアクセスコントローラと、をさらに備える、請求項２に記載の処理装置。
【請求項９】
前記複数の処理ユニットのそれぞれは、前記サブユニットとして複数のプロセッサを備えるプロセッサグループである、請求項１に記載の処理装置。
【請求項１０】
前記複数の転送モジュールのそれぞれは、前記複数のプロセッサのうちの１つである、請求項９に記載の処理装置。
【請求項１１】
前記複数の処理ユニットは、第１の処理ユニットと、第２の処理ユニットと、第３の処理ユニットと、を備え、
前記故障検出部は、前記第１の処理ユニットの処理結果である第１の処理結果と、前記第２の処理ユニットの処理結果である第２の処理結果と、前記第３の処理ユニットの処理結果である第３の処理結果と、を比較し、
前記第１の処理結果と前記第２の処理結果が、前記第３の処理結果と異なる場合、前記故障検出部は、前記第３の処理ユニットが故障していると判定し、
前記複数の処理ユニットは、前記第１の処理結果と前記第２の処理結果を、前記複数の処理ユニットの処理結果とする、請求項７に記載の処理装置。
【請求項１２】
前記複数の処理ユニットは、第１の処理ユニットと、第２の処理ユニットと、を備え、
前記複数の転送モジュールは、前記第１の処理ユニットに対応して設けられる第１の転送モジュールと、前記第２の処理ユニットに対応して設けられる第２の転送モジュールとを、備え、
前記第１の処理ユニットは、第１の処理結果を出力し、前記第２の処理ユニットは、第２の処理結果を出力し、
前記第１の処理ユニットは、前記第１の処理結果を前記第１の転送モジュールに転送し、
前記第１の転送モジュールは、前記第２のリングバスを経由して、前記第１の処理結果を前記第２の転送モジュールに転送し、
前記第２の転送モジュールは、前記第１の処理結果を、前記第１のリングバスを経由して、前記第２の処理ユニットの前記サブユニットに転送する、請求項１に記載の処理装置。
【請求項１３】
前記第１の処理ユニットと、前記第２の処理ユニットとは、動画像の符号化処理及び復号処理を行う動画像処理ユニットであり、
前記第１の処理ユニットと、前記第２の処理ユニットとは、ライン単位に分割された画像を並列処理し、
前記第２の処理ユニットは、前記第１の処理ユニットが出力する前記第１の処理結果に基づいて、前記第２の処理結果を出力する、請求項１２に記載の処理装置。
【請求項１４】
前記複数の転送モジュールは、前記複数の処理ユニットと分離して設けられる、請求項１に記載の処理装置。
【請求項１５】
複数の処理ユニットを備える処理装置の制御方法であって、
前記複数の処理ユニットのそれぞれに、複数のサブユニットを設け、
前記複数の処理ユニットのそれぞれに対応して、前記処理ユニット間で、前記処理ユニットが出力する処理結果を転送する複数の転送モジュールを設け、
前記複数の処理ユニット毎に、前記処理ユニット内の前記複数のサブユニットと、前記処理ユニットに対応して設けた前記転送モジュールと、を第１のリングバスによってリング状に接続し、
前記複数の転送モジュールを第２のリングバスによってリング状に接続し、
前記第１のリングバスは、転送方向が互いに反対である第１方向のリングバスと第２方向のリングバスとで構成される、双方向のリングバスであり、
前記サブユニットは、前記第１のリングバスを使用してデータを転送する場合には、前記第１方向のリングバスを使用し、
前記転送モジュールは、前記第２のリングバスを経由して受け取った前記処理結果を、前記第１のリングバスを使用して転送する場合には、前記第２方向のリングバスを使用する、
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置に関し、例えば、複数の処理ユニットを備える処理装置に好適に利用できるものである。
【背景技術】
【０００２】
処理装置の処理性能を向上させる手法の１つに並列処理がある。処理装置において、並列処理を実現する場合、例えば、並列処理が可能な複数の処理ユニットを設ける（例えば、特許文献１，２参照）。以下、特許文献１，２に記載の技術について説明する。
【０００３】
まず、特許文献１に記載の技術について図１４を参照して説明する。図１４は、特許文献１の図１に示された構成に相当する動画像処理装置のブロック構成例を示す図である。図１４に示される動画像処理装置は、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１という２つの動画像処理ユニットを備える。Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１は、複数の機能サブユニットを含む。図１４では、機能サブユニットとして、可変長処理部（ＶＬＣ：Variable Length Coding）６０１０と、周波数変換部（ＴＲＦ：Transform）６０１１と、動き補償処理部（ＭＣ：Motion Compensation）６０１２と、が含まれる。Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１はさらに、複数の機能サブユニットのそれぞれに接続される複数の入出力インタフェース（ＩＯ：Input-Output）６０５を含む。Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１は、入出力インタフェース６０５を介して、同一のリングバスによってリング状に接続される。Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０の末端の入出力インタフェース６０５は、Ｃｏｄｅｃ＿ＥＬ＿１  ６０１−１の先端の入出力インタフェース６０５に接続される。また、図１４に示される動画像処理装置はさらに、ＬＭ（Line Memory）６０２と、ＤＭＡＣ（Direct Memory Access Controller）６０３と、Ｍｅｍ＿Ｃｎｔ６０４と、を備える。ＤＭＡＣ６０３は、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１へビットストリームを転送するダイレクトメモリアクセスコントローラである。Ｍｅｍ＿Ｃｎｔ６０４は、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０及びＣｏｄｅｃ＿ＥＬ＿１  ６０１−１へマクロブロック（ＭＢ：Macro Block）データを供給するコントローラである。ＬＭ６０２は、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０による処理結果等を格納するラインメモリである。
【０００４】
次に、特許文献２に記載の技術について図１５を参照して説明する。図１５は、特許文献２の図２に示された構成に相当する並列処理装置のブロック構成例を示す図である。図１５に示される並列処理装置は、複数の処理手段（ＰＥ：Processing Element）７００をリング状に接続したパイプライン型リングバス７０１を１つの層とし、この層を複数層備える。図１５に示される並列処理装置はさらに、各層の第１列のＰＥ７００との間でパケットの授受を行うパケット制御装置７０３を備える。各層の第２列〜第４列の各ＰＥ７００は、１つ下の層のＰＥ７００とリングバス７０２によって順次接続され、自層の上の層のＰＥ７００の出力を自層のパイプライン型リングバス７０１に取り込む機能を持つ。このように、各層を順次接続することにより、パケット制御装置７０３を介することなく、あるパイプライン型リングバス７０１から他のパイプライン型リングバス７０１にパケットが流れる。これにより、パケット制御装置７０３の負担が軽減される。また、ある層の第１列のＰＥ７００のキューが込み合っている場合、他の層からパケットを流すことも可能である。例えば、パケット制御装置７０３は、ＰＥ（３，４）にパケットを流す場合、ＰＥ（３，１）、ＰＥ（３，２）、ＰＥ（３，３）、ＰＥ（３，４）の太線矢印の経路でパケットを流すことが可能である。また、パケット制御装置７０３は、ＰＥ（３，１）のキューが込み合っている場合は、ＰＥ（１，１）、ＰＥ（１，２）、ＰＥ（２，２）、ＰＥ（２，３）、ＰＥ（３，３）、ＰＥ（３，４）の太線矢印の経路でパケットを流すことも可能である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−４２５７１号公報
【特許文献２】特開平５−１８１８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１，２に記載の技術においては、以下の課題がある。
まず、特許文献１に記載の技術の課題について図１４を参照して説明する。図１４に示される動画像処理装置は、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０とＣｏｄｅｃ＿ＥＬ＿１  ６０１−１とが同一のリングバスによってリング状に接続されている。そのため、例えば、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０内の機能サブユニットが、Ｃｏｄｅｃ＿ＥＬ＿１  ６０１−１を跨いで、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０の異なる機能サブユニットへデータを転送する場合、転送経路が長くなるという問題がある。例えば、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０内のＴＲＦ６０１１が、同じくＣｏｄｅｃ＿ＥＬ＿０  ６０１−０内のＶＬＣ６０１０へデータを転送する場合を考える。この場合、データは、Ｃｏｄｅｃ＿ＥＬ＿１  ６０１−１およびＬＭ６０２を通過しなければならず、転送経路が長くなる。また、この場合、Ｃｏｄｅｃ＿ＥＬ＿１  ６０１−１には、Ｃｏｄｅｃ＿ＥＬ＿０  ６０１−０のデータが流れることになる。そのため、他方のＣｏｄｅｃ＿ＥＬ＿０  ６０１−０のデータが原因で、Ｃｏｄｅｃ＿ＥＬ＿１  ６０１−１のバストラフィックが増加するという問題がある。
【０００７】
次に、特許文献２に記載の技術の課題について図１５を参照して説明する。図１５に示される並列処理装置は、複数のＰＥ７００をリング状に接続したパイプライン型リングバス７０１を１つの層とし、この層を複数層備えている。このように、パイプライン型リングバス７０１を複数層設けることで、特許文献１に記載の技術の問題であった、リングバスの転送経路が長くなるという問題の対策は図られている。しかし、パイプライン型リングバス７０１上には、自層のＰＥ７００宛ではないパケットが流れてしまう。そのため、他層のパケットが原因でバストラフィックが増加するという、特許文献１に記載の技術の問題は解決されないままである。
【０００８】
以下では、上述した課題を含む複数の課題のうち少なくとも１つの解決に寄与することが可能な複数の実施形態が説明される。上述の課題は、本明細書に開示される実施形態が達成しようとする複数の課題の１つに過ぎないことに留意されるべきである。その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
一実施の形態によれば、処理装置において、複数の処理ユニットのそれぞれに対応して、処理ユニット間でデータを転送する複数の転送モジュールを設ける。そして、複数の処理ユニット毎に、処理ユニット内のサブユニットと、処理ユニットに対応して設けた転送モジュールと、を第１のリングバスによってリング状に接続する。さらに、複数の転送モジュールを第２のリングバスによってリング状に接続する。
【発明の効果】
【００１０】
前記一実施の形態によれば、上述した課題の解決に貢献することができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態１の動画像符号化復号装置のブロック構成例を示す図である。
【図２】実施形態１の動画像符号化復号装置における並列処理の例を示す図である。
【図３】実施形態１の動画像処理ユニット内の機能サブユニットの例を示す図である。
【図４】従来技術において、同一の動画像処理ユニット内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。
【図５】実施形態１において、同一の動画像処理ユニット内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。
【図６】実施形態１において、異なる動画像処理ユニット内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。
【図７】実施形態１の動画像符号化復号装置の変形例のブロック構成例を示す図である。
【図８】実施形態２の動画像符号化復号装置のブロック構成例を示す図である。
【図９】実施形態２の動画像符号化復号装置の変形例のブロック構成例を示す図である。
【図１０】実施形態２の動画像符号化復号装置の変形例における故障検出処理の例を示す図である。
【図１１】実施形態２の動画像符号化復号装置の変形例における故障検出処理の例を示す図である。
【図１２】実施形態３のコアプロセッサのブロック構成例を示す図である。
【図１３】実施形態１〜３を概念的に示した処理装置のブロック構成例を示す図である。
【図１４】特許文献１の構成に相当する動画像処理装置のブロック構成例を示す図である。
【図１５】特許文献２の構成に相当する並列処理装置のブロック構成例を示す図である。
【発明を実施するための形態】
【００１２】
以下では、具体的な実施形態について、図面を参照しながら詳細に説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００１３】
（１）実施形態１
（１−１）実施形態１の構成
本実施形態は、処理装置が動画像符号化復号装置である場合の例である。この動画像符号化復号装置は、処理ユニットとしての動画像処理ユニットを複数備える。
図１は、本実施形態の動画像符号化復号装置のブロック構成例を示す図である。本実施形態の動画像符号化復号装置は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１という２つの動画像処理ユニットを備える。なお、動画像処理ユニットの個数は、複数であれば良く、図１のように２つには限定されない。
【００１４】
図２は、本実施形態の動画像符号化復号装置における並列処理の例を示す図である。本実施形態の動画像符号化復号装置は、例えば、図２に示されるような符号化対象画像２００の符号化処理及び復号処理を行う。その際、符号化対象画像２００を、Ｘ（Ｘは１以上の自然数）＋１個の並列処理領域０〜Ｘに分割し、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１が各並列処理領域０〜Ｘを並列に処理する。例えば、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０は、０番目の並列処理領域０、２番目の並列処理領域２といった偶数番目の並列処理領域をシーケンシャルに処理することが考えられる。その一方で、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１は、１番目の並列処理領域１、３番目の並列処理領域３といった奇数番目の並列処理領域をシーケンシャルに処理することが考えられる。図２においては、Ｈ．２６５のような規格を想定し、コーディングツリーブロック（ＣＴＢ：Coding Tree Block）２０１のライン単位で並列処理領域に分割している。しかし、並列処理領域の分割方法は問わない。例えば、Ｈ．２６４のような規格ではマクロブロック（ＭＢ）のライン単位で並列処理領域に分割することも考えられる。また、各並列処理領域０〜Ｘにおいては、ＣＴＢ  ２０１の単位で、処理方向２０２に沿って符号化処理及び復号処理が行われる。
【００１５】
図３は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０内の機能サブユニットの例を示す図である。Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０は、図３に示されるような複数の機能サブユニットを含む。図３の例では、機能サブユニットとして、図１４と同様に、可変長処理部（ＶＬＣ）１０１０、動き補償処理部（ＭＣ）１０１３、及び周波数変換部（ＴＲＦ）１０１４を含む。図３の例ではさらに、機能サブユニットとして、整数画素精度動き予測処理部（ＣＭＥ：Coarse Motion Estimation）１０１１、小数画素精度動き予測処理部（ＦＭＥ：Fine Motion Estimation）１０１２、及びデブロッキングフィルタ処理部（ＤＥＢ：DEBlocking）１０１５を含む。また、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０は、複数の機能サブユニットのそれぞれに接続される複数の入出力インタフェース（ＩＯ）１１３をさらに含み、複数の入出力インタフェース１１３は第１のリングバス１１１−０によってリング状に接続される。なお、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１も、図３と同様の構成であるとする。
【００１６】
図１に戻ると、本実施形態の動画像符号化復号装置はさらに、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０に対応して、Ｃｔｒｌ＿０  １０３−０、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０、ＬＭＣ（Line Memory Controller）１０５、及びＤＭＡＣ＿０  １０４−０を備える。また、本実施形態の動画像符号化復号装置はさらに、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１に対応して、Ｃｔｒｌ＿１  １０３−１、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１、ＬＣＢ（Line Control Block）１０６、及びＤＭＡＣ＿１  １０４−１を備える。また、本実施形態の動画像符号化復号装置はさらに、Ｌｉｎｅ  ＭＥＭ１０７、Ｃｔｒｌ＿Ｃｍｎ１０８、マスタバス１０９、バス１１０を備える。
【００１７】
Ｍｅｍ＿Ｃｎｔ＿０  １０２−０は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０へ供給する動画像データを格納する動画像メモリ（不図示）における動画像データの読み書きを制御するコントローラである。Ｍｅｍ＿Ｃｎｔ＿１  １０２−１は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１へ供給する動画像データを格納する動画像メモリ（不図示）における動画像データの読み書きを制御するコントローラである。Ｌｉｎｅ  ＭＥＭ１０７は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果等を格納するラインメモリ（Line Memory）であり、ＲＡＭ（Random Access Memory）等で構成される。ＬＭＣ１０５は、Ｌｉｎｅ  ＭＥＭ１０７における処理結果等の読み書きを制御するモジュールである。例えば、ＬＭＣ１０５は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果をＬｉｎｅ  ＭＥＭ１０７に書き込む。また、ＬＭＣ１０５は、ＬＣＢ１０６から、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果を受信して、Ｌｉｎｅ  ＭＥＭ１０７に書き込む。また、ＬＭＣ１０５は、Ｌｉｎｅ  ＭＥＭ１０７からＣｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果を読み出して、ＬＣＢ１０６に転送する。また、ＬＭＣ１０５は、Ｌｉｎｅ  ＭＥＭ１０７から、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果を読み出して、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０に転送する。ＬＣＢ１０６は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１のデータをＣｏｄｅｃ＿ＥＬ＿０  １０１−０のＬＭＣ１０５へ転送するモジュールである。例えば、ＬＣＢ１０６は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果をＬＭＣ１０５に転送する。また、ＬＣＢ１０６は、ＬＭＣ１０５から、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果を受信して、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１に転送する。ＤＭＡＣ＿０  １０４−０は、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０及びＣｏｄｅｃ＿ＥＬ＿０  １０１−０などのマスタバス１０９に対するバスＩＦとなるコントローラである。ＤＭＡＣ＿１  １０４−１は、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１などのマスタバス１０９に対するバスＩＦとなるコントローラである。Ｃｔｒｌ＿０  １０３−０は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０、ＬＭＣ１０５、ＤＭＡＣ＿０  １０４−０などの動作を制御するコントローラである。Ｃｔｒｌ＿１  １０３−１は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１、ＬＣＢ１０６、ＤＭＡＣ＿１  １０４−１などの動作を制御するコントローラである。Ｃｔｒｌ＿Ｃｍｎ１０８は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１の全体の制御を行うコントローラである。マスタバス１０９は、ＤＭＡＣ＿０  １０４−０及びＤＭＡＣ＿１  １０４−１が接続されるバスである。バス１１０は、Ｃｔｒｌ＿０  １０３−０及びＣｔｒｌ＿１  １０３−１にレジスタ設定を行うバスである。マスタバス１０９及びバス１１０は同一のバスでも構わない。また、図１では、ＤＭＡＣ＿０  １０４−０及びＤＭＡＣ＿１  １０４−１は、同一のマスタバス１０９に接続されているが、それぞれ別のバスに接続されるような構成でも構わない。
【００１８】
本実施形態の動画像符号化復号装置においては、Ｃｔｒｌ＿０  １０３−０、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０内の機能サブユニット、ＬＭＣ１０５、及びＤＭＡＣ＿０  １０４−０は、第１のリングバス１１１−０によってリング状に接続されている。また同様に、Ｃｔｒｌ＿１  １０３−１、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１内の機能サブユニット、ＬＣＢ１０６、及びＤＭＡＣ＿１  １０４−１は、第１のリングバス１１１−１によってリング状に接続されている。第１のリングバス１１１−０，１１１−１は、転送方向が互いに反対の右回り及び左回りである２つのリングバスで構成される、双方向のリングバスである。さらに、ＬＣＢ１０６及びＬＭＣ１０５は、第１のリングバス１１１−０，１１１−１とは別のリングバスである、第２のリングバス１１２によってリング状に接続されている。
【００１９】
なお、本実施形態においては、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１に複数の機能サブユニットが含まれる例を示したが、必ずしもこのような階層構造を取る必要はない。また、機能サブユニットは、図３に限定されるものではなく、動画像の符号化処理及び復号処理を行う機能を実現するものであれば、機能サブユニットの個数、種類は問わない。また、Ｃｔｒｌ＿ｍ（ｍ＝０，１）  １０３−ｍ、Ｍｅｍ＿Ｃｎｔ＿ｍ  １０２−ｍ、Ｃｏｄｅｃ＿ＥＬ＿ｍ  １０１−ｍ内の機能サブユニット、ＬＭＣ１０５（又はＬＣＢ１０６）、及びＤＭＡＣ＿ｍ  １０４−ｍは、本実施形態と異なる接続順であっても構わないし、動画像の符号化処理及び復号処理を行う機能を実現するものであれば、異なるモジュールで構成されても構わない。
【００２０】
（１−２）実施形態１の動作
以下、本実施形態の動画像符号化復号装置における転送経路を、従来技術の動画像符号化復号装置における転送経路と対比して説明する。
図４は、従来技術の動画像符号化復号装置における、同一のＣｏｄｅｃ＿ＥＬ内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。図４に示される従来技術の動画像符号化復号装置は、特許文献１に記載の技術のように、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０とＣｏｄｅｃ＿ＥＬ＿１  １０１−１とが同一のリングバスによってリング状に接続されている点で、本実施形態とは異なる。また、図４において、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１には、０番目のＳｕｂ＿Ｕｎｉｔ＿１０  １０１６からＮ（Ｎは１以上の自然数）番目のＳｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７までのＮ＋１個の機能サブユニットが含まれる。ここで、例えば、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１内のＳｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７から、同じくＣｏｄｅｃ＿ＥＬ＿１  １０１−１のＳｕｂ＿Ｕｎｉｔ＿１０  １０１６へデータを転送する場合を考える。従来技術においては、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０とＣｏｄｅｃ＿ＥＬ＿１  １０１−１とが同一のリングバスによってリング状に接続されている。そのため、データは、ＬＣＢ１０６、ＤＭＡＣ＿１  １０４−１、Ｃｔｒｌ＿０  １０３−０、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０内の機能サブユニット、ＬＭＣ１０５、ＤＭＡＣ＿０  １０４−０、Ｃｔｒｌ＿１  １０３−１、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１という転送経路Ｐ１を経由して、Ｓｕｂ＿Ｕｎｉｔ＿１０  １０１６へ転送される。そのため、データは、非常に長い経路を転送されることになる。また、Ｃｔｒｌ＿０  １０３−０、Ｍｅｍ＿Ｃｎｔ＿０  １０２−０、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０、ＬＭＣ１０５、ＤＭＡＣ＿０  １０４−０には、他方の動画像処理ユニットであるＣｏｄｅｃ＿ＥＬ＿１  １０１−１のデータが流れることになるため、バストラフィックが増加してしまうことになる。
【００２１】
図５及び図６は、本実施形態の動画像符号化復号装置における転送経路の例を示す図である。本実施形態においては、第１のリングバス１１１−０，１１１−１は、右回りと左回りの２つのリングバスを持つ、双方向のリングバスである。双方向のリングバスの使用方法は様々な方法が考えられる。本実施形態においては、Ｃｏｄｅｃ＿ＥＬ内の機能サブユニットが第１のリングバスを使用してデータを転送する場合は、右回りのリングバスを使用し、ＬＭＣ１０５又はＬＣＢ１０６が第２のリングバス１１２を経由して受け取ったデータを第１のリングバスを使用して転送する場合は、左回りのリングバスを使用するものとする。
【００２２】
図５は、同一のＣｏｄｅｃ＿ＥＬ内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。前述の場合と同様に、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１内のＳｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７から、同じくＣｏｄｅｃ＿ＥＬ＿１  １０１−１内のＳｕｂ＿Ｕｎｉｔ＿１０  １０１６へデータを転送する場合を考える。本実施形態においては、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１内の機能サブユニットは、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０とは独立に設けた第１のリングバス１１１−１によってリング状に接続されている。また、Ｓｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７は、第１のリングバス１１１−１の右回りのバスを使用してデータを転送する。そのため、データは、ＬＣＢ１０６、ＤＭＡＣ＿１  １０４−１、Ｃｔｒｌ＿１  １０３−１、Ｍｅｍ＿Ｃｎｔ＿１  １０２−１という転送経路Ｐ２を経由して、Ｓｕｂ＿Ｕｎｉｔ＿１０  １０１６へ転送される。そのため、従来技術と比較して、転送経路を短くすることが可能である。また、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０側には、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１のデータが流れないため、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１のデータが原因でＣｏｄｅｃ＿ＥＬ＿０  １０１−０側のバストラフィックが増加することがない。
【００２３】
図６は、異なるＣｏｄｅｃ＿ＥＬ内の機能サブユニット間でデータを転送する場合の転送経路の例を示す図である。例えば、図２で示される符号化対象画像２００に対して動画像の符号化処理または復号処理を行う場合、上側の並列処理領域の処理結果を下側の並列処理領域の処理で参照する場合がある。このため、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１とＣｏｄｅｃ＿ＥＬ＿０  １０１−０の間を跨った転送が発生する。例えば、Ｌｉｎｅ  ＭＥＭ１０７内のデータの転送などが該当する。そのため、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１及びＣｏｄｅｃ＿ＥＬ＿０  １０１−０をそれぞれ別々の第１のリングバス１１１−０，１１１−１で接続しただけでは、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１とＣｏｄｅｃ＿ＥＬ＿０  １０１−０間での転送を行うことができない。そのため、ＬＣＢ１０６とＬＭＣ１０５とを第２のリングバス１１２によって接続する。これにより、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１とＣｏｄｅｃ＿ＥＬ＿０  １０１−０間の転送が可能になる。ここでは、図６のように、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１内のＳｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７から、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０内のＳｕｂ＿Ｕｎｉｔ＿０Ｎ  １０１８へデータを転送する場合を考える。この場合、データは、ＬＣＢ１０６、ＬＭＣ１０５という転送経路Ｐ３を経由して、Ｓｕｂ＿Ｕｎｉｔ＿０Ｎ  １０１８へ転送される。第２のリングバス１１２を経由することにより、Ｓｕｂ＿Ｕｎｉｔ＿０Ｎ  １０１８へのデータの転送が可能になる。Ｓｕｂ＿Ｕｎｉｔ＿１Ｎ  １０１７は、第１のリングバス１１１−１の右回りのリングバスを使用してＬＣＢ１０６へデータを転送する。ＬＣＢ１０６は、第２のリングバス１１２を使用してＬＭＣ１０５へデータを転送する。ＬＭＣ１０５は、第２のリングバス１１２を経由してデータを受け取ったため、前述の通り、第１のリングバス１１１−０の左回りのリングバスを使用してＳｕｂ＿Ｕｎｉｔ＿０Ｎ  １０１８へデータを転送する。
【００２４】
（１−３）実施形態１の効果
特許文献１に記載の技術においては、複数の動画像処理ユニットが同一のリングバスでリング状に接続されていた。そのため、他方の動画像処理ユニットを跨いだ転送が発生し、転送経路が長くなるという問題があった。また、他方の動画像処理ユニットのデータが原因でバストラフィックが増加するという問題があった。これに対して本実施形態においては、動画像処理ユニット毎に独立に設けたリングバス（第１のリングバス）によって、動画像処理ユニット内の機能サブユニットをリング状に接続した。また、動画像処理ユニット間は別のリングバス（第２のリングバス）によってリング状に接続した。これにより、動画像処理ユニット内の転送は第１のリングバスを使用して行い、動画像処理ユニット間の転送は第２のリングバスを使用して行う構成とした。そのため、他方の動画像処理ユニットを跨いだ転送が発生しないため、転送経路を短くすることが可能となる。同時に、他方の動画像処理ユニットのバストラフィックが増加することもない。
【００２５】
また、特許文献１に記載の技術においては、動画像データを格納する動画像メモリの共有による小規模化のために、動画像メモリにおける動画像データの読み書きを制御するメモリコントローラであるＭｅｍ＿Ｃｎｔや外部バスとのバスＩＦであるＤＭＡＣは、複数の動画像処理ユニットに対して１つの構成であった。これに対して本実施形態においては、動画像メモリの共有による小規模化よりも構成可変容易性を重視して、Ｍｅｍ＿ＣｎｔやＤＭＡＣを動画像処理ユニット毎に配置して、各動画像処理ユニットのリングバス（第１のリングバス）に接続する構成とした。さらに、ＬＭＣ、ＬＣＢは、第１のリングバスとは別のリングバス（第２のリングバス）によって接続する構成とした。そのため、動画像処理ユニットの拡張の際は、Ｃｔｒｌ＿Ｃｍｎの拡張と第２のリングバスの接続変更のみを行えばよい。これにより、特許文献１に記載の技術と比較して、動画像処理ユニットの拡張をより容易に行うことが可能である。
【００２６】
また、特許文献２に記載の技術においては、各層の複数列（第２列〜第４列）分の各ＰＥを、他層のＰＥに接続していた。そのため、配線性の悪化、面積増加を招くという問題があった。これに対して本実施形態においては、ＬＭＣ、ＬＣＢのみをリングバス（第２のリングバス）によって接続する構成とした。これにより、特許文献２に記載の技術と比較して、配線性の悪化、面積増加を招くことがない。
【００２７】
（１−４）実施形態１の変形例
図７は、本実施形態の動画像符号化復号装置の変形例のブロック構成例を示す図である。図１に示される動画像符号化復号装置においては、第１のリングバス１１１−０，１１１−１を、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１毎に独立に設けたため、特許文献１に記載の技術と比較して、転送経路を短くすることができる。また、特許文献１には、転送経路を短くする手法として、リングバス上のデータの転送方向を逆方向に変更するという手法が記載されている。しかし、本実施形態においては、上述のように転送経路を短くできるため、データの転送方向を変更するという手法は必要ない。したがって、第１のリングバス１１１−０，１１１−１は、双方向のリングバスとする必要はなく、単方向のリングバスで構成することも可能になる。
【００２８】
そこで、本変形例においては、双方向のリングバスであった第１のリングバス１１４−０，１１４−１の代わりに、転送方向が単方向のリングバスである第１のリングバス１１４−０，１１４−１を設けている。なお、図７においては、第１のリングバス１１４−０，１１４−１が右回りのリングバスである例を示すが、これに限定するものではない。
なお、本変形例においては、第１のリングバス１１４−０，１１４−１は、単方向のリングバスで構成されている。そのため、全てのデータが右回りに転送される。これ以外の動作は実施形態１と同様である。
【００２９】
本変形例においては、図１に示される構成と比較して、第１のリングバスを双方向のリングバスから単方向のリングバスに変更しているため、内部バスを１本減らすことが可能となる。これにより、さらなる回路規模の削減、配線性の向上を図ることができる。この効果は、内部バスに使用されているビットが多いほど顕著になる。
【００３０】
（２）実施形態２
（２−１）実施形態２の構成
本実施形態は、実施形態１の動画像符号化復号装置の変形例である。
図８は、本実施形態の動画像符号化復号装置のブロック構成例を示す図である。本実施形態の動画像符号化復号装置は、図７に示される実施形態２と比較して、ＬＭＣ１０５、ＬＣＢ１０６をＬＣＢ／ＬＭＣ１１５−０，１１５−１に置き換えた点と、Ｌｉｎｅ  ＭＥＭ１１６を追加した点と、が異なり、その他の構成は実施形態１と同様である。なお、図８においては、図７に示される単方向の第１のリングバス１１４−０，１１４−１を用いたが、図１に示される双方向の第１のリングバス１１１−０，１１１−１でも良い。
【００３１】
実施形態１においては、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１のそれぞれに、別の機能を持つＬＭＣ１０５、ＬＣＢ１０６を配置していた。これに対して本実施形態においては、ＬＭＣ１０５、ＬＣＢ１０６を、ＬＣＢ及びＬＭＣ両方の機能を有するモジュールであるＬＣＢ／ＬＭＣ１１５−０，１１５−１に置き換える構成とした。また、実施形態１においては、ＬＭＣ１０５のみにＬｉｎｅ  ＭＥＭ１０７が接続されていた。これに対して本実施形態においては、両方のＬＣＢ／ＬＭＣ１１５−０，１１５−１にそれぞれＬｉｎｅ  ＭＥＭ１０７，１１６が接続される構成とした。また、本実施形態においては、Ｌｉｎｅ  ＭＥＭ１０７は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果等を格納し、Ｌｉｎｅ  ＭＥＭ１１６は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果等を格納する。ＬＣＢ／ＬＭＣ１１５−０は、Ｌｉｎｅ  ＭＥＭ１０７における処理結果等の読み書きの制御等を行うモジュールである。例えば、ＬＣＢ／ＬＭＣ１１５−０は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果をＬｉｎｅ  ＭＥＭ１０７に書き込む。また、ＬＣＢ／ＬＭＣ１１５−０は、Ｌｉｎｅ  ＭＥＭ１０７から、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果を読み出して、ＬＣＢ／ＬＭＣ１１５−１，またはＣｏｄｅｃ＿ＥＬ＿０  １０１−０に転送する。また、ＬＣＢ／ＬＭＣ１１５−０は、ＬＣＢ／ＬＭＣ１１５−１から、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果を受信して、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０に転送する。ＬＣＢ／ＬＭＣ１１５−１は、Ｌｉｎｅ  ＭＥＭ１１６における処理結果等の読み書きの制御等を行うモジュールである。例えば、ＬＣＢ／ＬＭＣ１１５−１は、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果をＬｉｎｅ  ＭＥＭ１１６に書き込む。また、ＬＣＢ／ＬＭＣ１１５−１は、Ｌｉｎｅ  ＭＥＭ１１６から、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１による処理結果を読み出して、ＬＣＢ／ＬＭＣ１１５−０，またはＣｏｄｅｃ＿ＥＬ＿１  １０１−１に転送する。また、ＬＣＢ／ＬＭＣ１１５−１は、ＬＣＢ／ＬＭＣ１１５−０から、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０による処理結果を受信して、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１に転送する。
【００３２】
（２−２）実施形態２の動作
本実施形態においては、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１のそれぞれが、ＬＣＢ／ＬＭＣ及びＬｉｎｅ  ＭＥＭを備えている。そのため、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１を独立に動作させることが可能である。これにより、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１が、互いに別々の符号化処理又は復号処理を行うことも可能となる。例えば、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０が復号処理を行い、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１が符号化処理を行うことが可能となる。また、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１が互いに別々の画像の符号化処理を行うことや，互いに別々の画像の複合処理を行うことも可能となる。もちろん、前述の実施形態１，２と同様に、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１が、同じ画像の異なる並列処理領域の符号化処理及び復号処理を並列に行うことも可能である。
【００３３】
（２−３）実施形態２の効果
本実施形態の効果は実施形態１と同様である。ただし、本実施形態において、複数の動画像処理ユニットに別々の符号化処理又は復号処理を割り当てる場合、以下の点で優位である。
・動画像処理ユニット間の干渉による性能低下が無い。本実施形態においても、前述の実施形態１と同様に、他方の動画像処理ユニットを跨いだデータの転送は発生しない。そのため、複数の動画像処理ユニットに別々の処理を割り当てた場合、動画像処理ユニット間の干渉による性能低下は一切発生しない。
・Ｍｅｍ＿Ｃｎｔ、ＤＭＡＣの制御が容易である。特許文献１に記載の技術においては、Ｍｅｍ＿Ｃｎｔ、ＤＭＡＣは、複数の動画像処理ユニットに対して１つの構成であるため、制御が煩雑になる。これに対して本実施形態においては、Ｍｅｍ＿Ｃｎｔ、ＤＭＡＣは、Ｃｏｄｅｃ＿ＥＬ１つに対して１つの構成である。そのため、Ｍｅｍ＿Ｃｎｔ、ＤＭＡＣは、独立に制御することが可能であるため、制御が容易となる。
・リセット、クロック停止の制御が容易である。特許文献１に記載の技術においては、Ｍｅｍ＿Ｃｎｔ、ＤＭＡＣは、複数の動画像処ユニットに対して１つの構成であることや、他方の動画像処理ユニットを跨いだ転送が発生することから、リセットやクロック停止の制御が難しい。これに対して本実施形態においては、複数の動画像処理ユニットに別々の処理を割り当てた場合、動画像処理ユニット間は互いに干渉しないため、リセットやクロック停止の制御を容易に行うことが可能である。
【００３４】
（２−４）実施形態２の変形例
本実施形態によれば、複数のＣｏｄｅｃ＿ＥＬを独立に動作させることが可能である。そのため、複数のＣｏｄｅｃ＿ＥＬに同一の符号化処理又は復号処理を割り当て、その処理結果を比較することで、Ｃｏｄｅｃ＿ＥＬの故障検出を行うことが可能である。
【００３５】
図９は、本実施形態の動画像符号化復号装置の変形例のブロック構成例を示す図である。本変形例は、図８に示された構成に対して、Ｍ（Ｍは１以上の自然数）＋１個の動画像処理ユニット（Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０〜Ｃｏｄｅｃ＿ＥＬ＿Ｍ  １０１−Ｍ）を設け、故障検出部１１７を追加したものに相当する。なお、図９においては、図８に示された構成要素のうちＣｏｄｅｃ＿ＥＬ以外の構成要素は全て省略している。
【００３６】
故障検出部１１７は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０〜Ｃｏｄｅｃ＿ＥＬ＿Ｍ  １０１−Ｍの処理結果を比較し、その比較結果を基に、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０〜Ｃｏｄｅｃ＿ＥＬ＿Ｍ  １０１−Ｍの故障を検出する。
【００３７】
以下、本変形例における故障検出処理を説明する。
図１０は、Ｍ＝１とし、２つのＣｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１で故障検出を行った場合の例である。Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１の処理結果を、それぞれ結果０、結果１とする。故障検出部１１７は、結果０、結果１を比較した結果、両者が一致した場合、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１は故障していないと判定することができる。一方、故障検出部１１７は、結果０、結果１を比較した結果、両者が不一致となった場合、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０又はＣｏｄｅｃ＿ＥＬ＿１  １０１−１のどちらかが故障していると判定することができる。
【００３８】
図１１は、Ｍ＝２とし、３つのＣｏｄｅｃ＿ＥＬ＿０  １０１−０、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１、及びＣｏｄｅｃ＿ＥＬ＿２  １０１−２で故障検出を行った場合の例である。Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０、Ｃｏｄｅｃ＿ＥＬ＿１  １０１−１、及びＣｏｄｅｃ＿ＥＬ＿２  １０１−２の処理結果を、それぞれ結果０、結果１、結果２とする。故障検出部１１７は、結果０、結果１、結果２を比較した結果、例えば、結果０と結果１とが一致し、結果２のみ不一致となったとする。この場合、故障検出部１１７は、Ｃｏｄｅｃ＿ＥＬ＿２  １０１−２が故障していると判定することができる。さらにこの場合は、故障検出部１１７は、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１は故障していないと判定することができる。そのため、Ｃｏｄｅｃ＿ＥＬ＿０  １０１−０及びＣｏｄｅｃ＿ＥＬ＿１  １０１−１の処理結果である結果０及び結果１は、その後の処理において使用可能である。
【００３９】
（３）実施形態３
本実施形態は、処理装置がコアプロセッサである場合の例である。このコアプロセッサは、処理ユニットとしてのプロセッサグループを複数備える。
図１２は、本実施形態のコアプロセッサのブロック構成例を示す図である。本実施形態のコアプロセッサは、Ｍ（Ｍは１以上の自然数）＋１個のプロセッサグループであるＰｒｏｃｅｓｓｏｒ＿Ｇｒ＿０  ３０１−０〜Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿Ｍ  ３０１−Ｍを備える。各プロセッサグループには、Ｎ（Ｎは１以上の自然数）個のプロセッサＰｍ＿ｎ（ｍ＝０，...，Ｍ。ｎ＝０，...，Ｎ−１）３０１０と、他のプロセッサグループへのデータの転送を行う転送モジュールとしての１つのプロセッサＰｍ＿Ｎ（ｍ＝０，...，Ｍ）  ３０１１と、が含まれる。
【００４０】
本実施形態のコアプロセッサにおいては、Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿０  ３０１−０内のプロセッサＰ０＿ｎ  ３０１０及びＰ０＿Ｎ  ３０１１は、第１のリングバス３０２−０によってリング状に接続されている。また同様に、Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿１  ３０１−１内のプロセッサＰ１＿ｎ  ３０１０及びＰ１＿Ｎ  ３０１１は、第１のリングバス３０２−１によってリング状に接続されている。また同様に、Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿Ｍ  ３０１−Ｍ内のプロセッサＰＭ＿ｎ  ３０１０及びＰＭ＿Ｎ  ３０１１は、第１のリングバス３０２−Ｍによってリング状に接続されている。さらに、各プロセッサグループ間のプロセッサＰｍ＿Ｎ  ３０１１は、第１のリングバス３０２−０〜３０２−Ｍとは別のリングバスである、第２のリングバス３０３によってリング状に接続されている。
【００４１】
特許文献２に記載の技術においては、自層のＰＥ宛ではないパケットが、リングバス７０１上を流れるため、他層のパケットが原因でバストラフィックが増加するという問題があった。これに対して本実施形態においては、密な連携が必要なプロセッサグループ内のプロセッサ、例えば、Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿０  ３０１−０内のプロセッサＰ０＿０，Ｐ０＿１，Ｐ０＿２，...，Ｐ０＿Ｎ間の通信は、第１のリングバス３０２−０を使用して行われる。また、プロセッサグループ間の通信は、第２のリングバス３０３を使用して行われる。これにより、他のプロセッサグループのデータがリングバス（第１のリングバス）上を流れることが無くなるため、他のプロセッサグループのデータが原因でバストラフィックが増加することがない。
【００４２】
また、特許文献２に記載の技術においては、各層の複数列（第２列〜第４列）分の各ＰＥを、他層のＰＥに接続する構成であった。これに対して本実施形態においては、Ｐｍ＿ｎ  ３０１１のみをリングバス（第２のリングバス）によって接続する構成とした。そのため、特許文献２に記載の技術と比較して、配線性の悪化、面積増加を招くことがない。
【００４３】
（４）実施形態１〜３の概念
図１３は、前述の実施の形態１〜３を概念的に示した処理装置のブロック構成例を示す図である。図１３に示される処理装置は、Ｍ（Ｍは１以上の自然数）＋１個の処理ユニット４０１−０〜４０１−Ｍと、Ｍ＋１個の転送モジュール４０２−０〜４０２−Ｍと、Ｍ＋１個の第１のリングバス４０３−０〜４０３−Ｍと、第２のリングバス４０４と、を備える。
【００４４】
処理ユニット４０１−０〜４０１−Ｍは、互いに並列に処理可能な処理ユニットであり、Ｎ個（Ｎは１以上の自然数）のサブユニット４０１０を含んでいる。処理ユニット４０１−０〜４０１−Ｍは、動画像処理ユニットであるＣｏｄｅｃ＿ＥＬ＿０  １０１−０〜Ｃｏｄｅｃ＿ＥＬ＿Ｍ  １０１−Ｍ及びプロセッサグループであるＰｒｏｃｅｓｓｏｒ＿Ｇｒ＿０  ３０１−０〜Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿Ｍ  ３０１−Ｍに対応する。また、サブユニット４０１０は、可変長処理部（ＶＬＣ）１０１０、整数画素精度動き予測処理部（ＣＭＥ）１０１１、小数画素精度動き予測処理部（ＦＭＥ）１０１２、動き補償処理部（ＭＣ）１０１３、及び周波数変換部（ＴＲＦ）１０１４、デブロッキングフィルタ処理部（ＤＥＢ）１０１５に対応する。また、サブユニット４０１０は、プロセッサＰｍ＿ｎ（ｍ＝０，...，Ｍ。ｎ＝０，...，Ｎ−１）３０１０及びプロセッサＰｍ＿Ｎ（ｍ＝０，...，Ｍ）  ３０１１に対応する。
【００４５】
転送モジュール４０２−０〜４０２−Ｍは、処理ユニット４０１−０〜４０１−Ｍのそれぞれに対応して設けられ、処理ユニット４０１−０〜４０１−Ｍ間のデータ転送を行うモジュールである。転送モジュール４０２−０〜４０２−Ｍは、ＬＭＣ１０５、ＬＣＢ１０６、ＬＣＢ／ＬＭＣ１１５−０，１１５−１、及びプロセッサＰｍ＿Ｎ（ｍ＝０，...，Ｍ）  ３０１１に対応する。なお、図１３においては、転送モジュール４０２−０〜４０２−Ｍは、対応する処理ユニット４０１の外部に設けられているが、対応する処理ユニット４０１の内部に設けても良い。
【００４６】
第１のリングバス４０３−０〜４０３−Ｍは、処理ユニット４０１−０〜４０１−Ｍのそれぞれに対応して設けられ、対応する処理ユニット４０１内のサブユニット４０１０と、その処理ユニット４０１に対応する転送モジュール４０２と、をリング状に接続するリングバスである。第１のリングバス４０３−０〜４０３−Ｍは、第１のリングバス１１１−０，１１１−１，１１４−０，１１４−１，３０２−０〜３０２−Ｍに対応する。なお、図１３においては、第１のリングバス４０３−０〜４０３−Ｍは、右回りの単方向のリングバスとして示されているが、左回りの単方向のリングバスとしても良いし、右回り及び左回りの２つのリングバスを持つ、双方向のリングバスとしても良い。
【００４７】
第２のリングバス４０４は、転送モジュール４０２−０〜４０２−Ｍをリング状に接続するリングバスである。第２のリングバス４０４は、第２のリングバス１１２，３０３に対応する。
【００４８】
図１３に示される処理装置においては、処理ユニット毎に独立に設けた第１のリングバスによって、処理ユニット内のサブユニットをリング状に接続する構成とした。また、処理ユニット間は、第１のリングバスとは別の第２のリングバスによってリング状に接続する構成とした。そのため、処理ユニット内の転送は第１のリングバスを使用して行われ、処理ユニット間の転送は第２のリングバスを使用して行われる構成となる。
これにより、データの転送を行う場合に、他の処理ユニットを跨いだ転送が発生しないため、転送経路を短くすることが可能となる。また、ある処理ユニットの第１のリングバスに他の処理ユニットのデータが流れることがないため、他の処理ユニットのデータが原因でバストラフィックが増加することもない。また、他の処理ユニットと接続するのは、転送モジュールのみであるため、配線性の悪化、面積増加を招くことがない。
【００４９】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【００５０】
１０１−０  動画像処理ユニット（Ｃｏｄｅｃ＿ＥＬ＿０）
１０１−１  動画像処理ユニット（Ｃｏｄｅｃ＿ＥＬ＿１）
１０１０  可変長処理部（ＶＬＣ）
１０１１  整数画素精度動き予測処理部（ＣＭＥ）
１０１２  小数画素精度動き予測処理部（ＦＭＥ）
１０１３  動き補償処理部（ＭＣ）
１０１４  周波数変換部（ＴＲＦ）
１０１５  デブロッキングフィルタ処理部（ＤＥＢ）
１０２−０  メモリコントローラ（Ｍｅｍ＿Ｃｎｔ＿０）
１０２−１  メモリコントローラ（Ｍｅｍ＿Ｃｎｔ＿１）
１０３−０  コントローラ（Ｃｔｒｌ＿０）
１０３−１  コントローラ（Ｃｔｒｌ＿１）
１０４−０  ダイレクトメモリアクセスコントローラ（ＤＭＡＣ＿０）
１０４−１  ダイレクトメモリアクセスコントローラ（ＤＭＡＣ＿１）
１０５  ラインメモリコントローラ（ＬＭＣ）
１０６  ラインコントロールブロック（ＬＣＢ）
１０７  ラインメモリ（Ｌｉｎｅ  ＭＥＭ）
１０８  コントローラ（Ｃｔｒｌ＿Ｃｍｎ）
１０９  マスタバス
１１０  バス
１１１−０，１１１−１  第１のリングバス
１１２  第２のリングバス
１１３  入出力インタフェース（ＩＯ）
１１４−０，１１４−１  第１のリングバス
１１５−０，１１５−１  ＬＣＢ／ＬＭＣ
１１６  ラインメモリ（Ｌｉｎｅ  ＭＥＭ）
１１７  故障検出部
２００  符号化対象画像
２０１  ＣＴＢ
２０２  処理方向
３０１−０〜３０１−Ｍ  プロセッサグループ（Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿０〜Ｐｒｏｃｅｓｓｏｒ＿Ｇｒ＿Ｍ）
３０１０  プロセッサ
３０１１  プロセッサ（転送モジュール）
３０２−０〜３０２−Ｍ  第１のリングバス
３０３  第２のリングバス
４０１−０〜４０１−Ｍ  処理ユニット
４０２−０〜４０２−Ｍ  転送モジュール
４０３−０〜４０３−Ｍ  第１のリングバス
４０４  第２のリングバス
Ｐ１，Ｐ２，Ｐ３  転送経路
【図１】
0006454577.tif 000002
【図２】
0006454577.tif 000003
【図３】
0006454577.tif 000004
【図４】
0006454577.tif 000005
【図５】
0006454577.tif 000006
【図６】
0006454577.tif 000007
【図７】
0006454577.tif 000008
【図８】
0006454577.tif 000009
【図９】
0006454577.tif 000010
【図１０】
0006454577.tif 000011
【図１１】
0006454577.tif 000012
【図１２】
0006454577.tif 000013
【図１３】
0006454577.tif 000014
【図１４】
0006454577.tif 000015
【図１５】
0006454577.tif 000016