(57)【要約】【課題】マクロブロック当たりの実行サイクルを短縮することのできる、映像処理のためのシステムを提供する。【解決手段】映像処理のためのシステムは、フレームデータを保存するためのフレームメモリと、入力されるデータを保存し、フレームメモリに伝達するための入力ビデオバッファと、複数のマクロブロックを保存するためのマクロブロックバッファと、粗い動き予測のための参照フレームの検索領域を保存するための第１サーチウィンドウバッファと、細かい動き予測のための参照フレームの検索領域を保存するための第２サーチウィンドウバッファと、デブロッキングフィルタを施した結果を保存するためのデブロック化マクロブロックバッファと、入力ビデオバッファ、マクロブロックバッファ、第１サーチウィンドウバッファ、第２サーチウィンドウバッファ、デブロック化マクロブロックバッファ、及びフレームメモリに対する書き込み及び読み出しを行うためのフレームメモリコントローラとを含んでもよい。【選択図】図１
2011120244.tif 000002
【特許請求の範囲】
【請求項１】
フレームデータを保存するためのフレームメモリ（Ｆｒａｍｅ  Ｍｅｍｏｒｙ）と、
入力されるデータを保存し、前記フレームメモリに伝達するための入力ビデオバッファ（Ｉｎｐｕｔ  Ｖｉｄｅｏ  Ｂｕｆｆｅｒ）と、
複数のマクロブロック（Ｍａｃｒｏ  Ｂｌｏｃｋ；ＭＢ）を保存するためのマクロブロックバッファ（ＭＢ  Ｂｕｆｆｅｒ）と、
粗い動き予測（Ｃｏａｒｓｅ  Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ；ＣＭＥ）のための参照フレームの検索領域を保存するための第１サーチウィンドウバッファ（ＳＷＩ  Ｂｕｆｆｅｒ）と、
細かい動き予測（Ｆｉｎｅ  Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ；ＦＭＥ）のための参照フレームの検索領域を保存するための第２サーチウィンドウバッファ（ＳＷＩＩ  Ｂｕｆｆｅｒ）と、
デブロッキングフィルタを施した結果を保存するためのデブロック化マクロブロックバッファ（Ｄｅｂｌｏｃｋｅｄ  ＭＢ  Ｂｕｆｆｅｒ）と、
前記入力ビデオバッファ、マクロブロックバッファ、第１サーチウィンドウバッファ、第２サーチウィンドウバッファ、デブロック化マクロブロックバッファ、及びフレームメモリに対する書き込み及び読み出しを行うためのフレームメモリコントローラ（Ｆｒａｍｅ  Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）と
を含む、映像処理のためのシステム。
【請求項２】
前記フレームメモリは、エスディーラム（ＳＤＲＡＭ）であることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項３】
前記入力ビデオバッファは、前記入力されるデータをフレーム内のマクロブロック数に分けて保存するものであることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項４】
前記マクロブロックバッファは、前記フレームメモリから読み出した複数のマクロブロックを順次保存し、保存された前記各マクロブロックを同時に読み出すことができるものであることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項５】
前記マクロブロックバッファは、複数のメモリで構成され、前記各メモリは、マクロブロックの輝度（ｌｕｍｉｎａｎｃｅ）及び彩度（ｃｈｒｏｍａ）を保存することができるものであることを特徴とする請求項４に記載の映像処理のためのシステム。
【請求項６】
前記第１サーチウィンドウバッファにおける各参照フレームの検索領域は、大きさが可変であることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項７】
前記第１サーチウィンドウバッファにおける各参照フレームの検索領域は、同時に読み出すことができるものであることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項８】
前記第２サーチウィンドウバッファは、前記第１サーチウィンドウバッファ以外の参照フレームの検索領域を保存するものであることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項９】
前記第１サーチウィンドウバッファ以外の参照フレームの検索領域は、粗い動き予測（ＣＭＥ）の結果によって異なるものであることを特徴とする請求項８に記載の映像処理のためのシステム。
【請求項１０】
前記デブロック化マクロブロックバッファで前記デブロッキングフィルタを施した結果は、前記フレームメモリに保存されることを特徴とする請求項１に記載の映像処理のためのシステム。
【請求項１１】
前記フレームメモリコントローラは、マクロブロック単位のデータの書き込み及び読み出しのために構成されたものであることを特徴とする請求項１に記載の映像処理のためのシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像処理のためのシステムに関し、より詳細には、マクロブロック当たりの実行サイクルを短縮することのできる、映像処理のためのシステムに関する。
【背景技術】
【０００２】
一般に、映像処理において、映像符号器は、フレームの多くのデータにより、ＳＤＲＡＭなどのフレームメモリにフレームデータを貯蔵しておき、必要なフレームデータのみを符号器内の特定のバッファに移して処理する。
【０００３】
最近の映像符号化標準技術は、実現時に求められるメモリ帯域幅と演算の複雑度が高いため、リアルタイム応用に適用することが困難である。特に、既存の１／２画素単位より複雑度の高い１／４画素単位の動き予測を行うことから、画素補間方式と動き予測方式によってはフレームメモリから多くのデータを読まなければならない必要性が大きくなっており、映像のサイズが増加するにつれて、フレームメモリと符号器内の特定のバッファ間のデータ伝送速度は符号器の性能に大きな影響を及ぼすようになった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】ＵＳ特許公開公報許  ２００６−０２０９９６０号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、マクロブロック当たりの実行サイクルを短縮することのできる、映像処理のためのシステムを提供することにある。
【課題を解決するための手段】
【０００６】
上記の本発明の目的を達成するために、本発明による映像処理のためのシステムは、フレームデータを保存するためのフレームメモリと、入力されるデータを保存し、前記フレームメモリに伝達するための入力ビデオバッファと、複数のマクロブロック（Ｍａｃｒｏ  Ｂｌｏｃｋ；ＭＢ）を保存するためのマクロブロックバッファ（ＭＢバッファ）と、粗い動き予測（Ｃｏａｒｓｅ  Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ；ＣＭＥ）のための参照フレームの検索領域を保存するための第１サーチウィンドウバッファ（ＳＷＩバッファ）と、細かい動き予測（Ｆｉｎｅ  Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ；ＦＭＥ）のための参照フレームの検索領域を保存するための第２サーチウィンドウバッファ（ＳＷＩＩバッファ）と、デブロッキングフィルタを施した結果を保存するためのデブロック化マクロブロックバッファ（デブロック化ＭＢ（Ｄｅｂｌｏｃｋｅｄ  ＭＢ）バッファ）と、前記入力ビデオバッファ、マクロブロックバッファ、第１サーチウィンドウバッファ、第２サーチウィンドウバッファ、デブロック化マクロブロックバッファ、及びフレームメモリに対する書き込み及び読み出しを行うためのフレームメモリコントローラとを含んでもよい。
【０００７】
ここで、前記フレームメモリは、エスディーラム（ＳＤＲＡＭ）であってもよい。
【０００８】
ここで、前記入力ビデオバッファは、前記入力されるデータをフレーム内のマクロブロック数に分けて保存するものであってもよい。
【０００９】
ここで、前記マクロブロックバッファは、前記フレームメモリから読み出した複数のマクロブロックを順次保存し、保存された前記各マクロブロックを同時に読み出すことができるものであってもよい。
【００１０】
ここで、前記マクロブロックバッファは、複数のメモリで構成され、前記各メモリは、マクロブロックの輝度（ｌｕｍｉｎａｎｃｅ）及び彩度（ｃｈｒｏｍａ）を保存することができるものであってもよい。
【００１１】
ここで、前記第１サーチウィンドウバッファにおける各参照フレームの検索領域は、大きさが可変であってもよい。
【００１２】
ここで、前記第１サーチウィンドウバッファにおける各参照フレームの検索領域は、同時に読み出すことができるものであってもよい。
【００１３】
ここで、前記第２サーチウィンドウバッファは、前記第１サーチウィンドウバッファ以外の参照フレームの検索領域を保存するものであってもよい。
【００１４】
ここで、前記第１サーチウィンドウバッファ以外の参照フレームの検索領域は、粗い動き予測（ＣＭＥ）の結果によって異なるものであってもよい。
【００１５】
ここで、前記デブロック化マクロブロックバッファで前記デブロッキングフィルタを施した結果は、前記フレームメモリに保存されてもよい。
【００１６】
ここで、前記フレームメモリコントローラは、マクロブロック単位のデータの書き込み及び読み出しのために構成されたものであってもよい。
【発明の効果】
【００１７】
このような本発明の映像処理のためのシステムによると、同時に複数のマクロブロックを読み出すことができ、同時に複数の動作を行うことができる。特に、映像処理のためのシステムをパイプラインで構成した場合、映像処理のためのシステムのマクロブロック当たりの実行サイクルを短縮することにより、同時間内に処理できるマクロブロック数を増加させることができる。つまり、より多くのデータを有するマルチメディア映像をリアルタイムで処理することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態による映像処理のためのシステムの構造を説明するための構成図である。
【図２】本発明の一実施形態によるフレームメモリコントローラを説明するためのインタフェース構成図である。
【図３】本発明の一実施形態によるフレームメモリコントローラを説明するためのブロック構成図である。
【図４】本発明の一実施形態による入力ビデオバッファを説明するためのインタフェース構成図である。
【図５】本発明の一実施形態による入力ビデオバッファを説明するためのブロック構成図である。
【図６】本発明の一実施形態によるマクロブロックバッファを説明するためのインタフェース構成図である。
【図７】本発明の一実施形態によるマクロブロックバッファを説明するためのブロック構成図である。
【図８】本発明の一実施形態によるマクロブロックバッファの動作を説明するための例示図である。
【図９】本発明の一実施形態による第１サーチウィンドウバッファを説明するためのインタフェース構成図である。
【図１０】本発明の一実施形態による第１サーチウィンドウバッファを説明するためのブロック構成図である。
【図１１】本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するための例示図である。
【図１２】本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するための他の例示図である。
【図１３】本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するためのさらに他の例示図である。
【図１４】本発明の一実施形態による第２サーチウィンドウバッファを説明するためのインタフェース構成図である。
【図１５】本発明の一実施形態による第２サーチウィンドウバッファを説明するためのブロック構成図である。
【図１６】本発明の一実施形態による第２サーチウィンドウバッファの動作を説明するための例示図である。
【図１７】本発明の一実施形態によるデブロック化マクロブロックバッファを説明するためのインタフェース構成図である。
【図１８】本発明の一実施形態によるデブロック化マクロブロックバッファを説明するためのブロック構成図である。
【図１９】本発明の一実施形態による映像処理のためのシステムの各ステージの動作を説明するための例示図である。
【発明を実施するための形態】
【００１９】
本発明は、様々な変更を加えることができ、様々な実施形態が可能であるが、以下では、特定の実施形態を添付図面を参照して詳細に説明する。
【００２０】
しかしながら、本発明は、特定の実施形態に限定されるものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物ないし代替物を含むものと理解すべきである。
【００２１】
「第１」、「第２」などの用語は、様々な構成要素を説明するために使用されるが、前記構成要素は前記用語により限定されるものではない。前記用語は１つの構成要素を他の構成要素と区別する目的でのみ使用される。例えば、本発明の権利範囲から外れない限り、第１構成要素を第２構成要素と命名してもよく、第２構成要素を第１構成要素と命名してもよい。「及び／又は」という用語は、記載された複数の関連項目の組み合わせ又はいずれかの項目を含む。
【００２２】
ある構成要素が他の構成要素に「連結」又は「接続」されているとは、その他の構成要素に直接的に連結又は接続されている場合だけでなく、中間にさらに他の構成要素が存在する場合も含む。これに対して、ある構成要素が他の構成要素に「直接連結」又は「直接接続」されているとは、中間にさらに他の構成要素が存在しないことを意味する。
【００２３】
本明細書で使用した用語は、単に特定の実施形態を説明するためのものであり、これにより本発明が限定されるものではない。単数の表現は、特に断らない限り、複数の表現も含む。そして、「含む」又は「有する」という用語は、本明細書に記載された特徴、数字、段階、動作、構成要素、部品、又はこれらの組み合わせが存在することを指定しようとするものであり、１つ又はそれ以上の他の特徴、数字、段階、動作、構成要素、部品、又はこれらの組み合わせの存在や付加の可能性を予め排除するものではない。
【００２４】
技術的な用語及び科学的な用語を含めてここで使用される全ての用語は、特に断らない限り、本発明の属する技術の分野における通常の知識を有する者によって一般的に理解されるのと同じ意味を有する。一般的に使用される辞書に定義されているような用語は、関連技術の文脈上の意味と一致する意味を有するものと解釈すべきであり、本明細書に別段の明白な定義がない限り、理想的又は過度に形式的な意味で解釈しない。
【００２５】
以下、添付図面を参照して、本発明の好ましい実施形態をより詳細に説明する。本発明を説明するにあたって、全体的な理解を容易にするために図面において同一の構成要素には同一の符号を付し、同一の構成要素についての重複した説明は省略する。
【００２６】
図１は、本発明の一実施形態による映像処理のためのシステムの構造を説明するための構成図である。
【００２７】
図１を参照すると、本発明の一実施形態による映像処理のためのシステム１００は、フレームデータを保存するためのフレームメモリ１１０と、入力されるデータを保存し、前記フレームメモリに伝達するための入力ビデオバッファ１３０と、複数のマクロブロック（ＭＢ）を保存するためのマクロブロックバッファ（ＭＢバッファ）１４０と、粗い動き予測（ＣＭＥ）のための参照フレームの検索領域を保存するための第１サーチウィンドウバッファ（ＳＷＩバッファ）１５０と、細かい動き予測（ＦＭＥ）のための参照フレームの検索領域を保存するための第２サーチウィンドウバッファ（ＳＷＩＩバッファ）１６０と、デブロッキングフィルタを施した結果を保存するためのデブロック化マクロブロックバッファ（デブロック化ＭＢバッファ）１７０と、前記入力ビデオバッファ、マクロブロックバッファ、第１サーチウィンドウバッファ、第２サーチウィンドウバッファ、デブロック化マクロブロックバッファ、及びフレームメモリに対する書き込み及び読み出しを行うためのフレームメモリコントローラ１２０とを含む。
【００２８】
さらに、映像処理のためのシステム１００は、３つのバス、すなわち読み出しデータバス（Ｒｅａｄ  Ｄａｔａ  Ｂｕｓ）、書き込みデータバス（Ｗｒｉｔｅ  Ｄａｔａ  Ｂｕｓ）、レジスタバス（Ｒｅｇｉｓｔｅｒ  Ｂｕｓ）を含む。
【００２９】
以下、再び図１を参照して、本発明の一実施形態による映像処理のためのシステム１００の動作を説明する。
【００３０】
入力ビデオバッファ１３０を介してフレームメモリ１１０に保存されたフレームデータは、１６ｘ１６のマクロブロック単位で読み出されてマクロブロックバッファ１４０に保存されると共に、前記保存されたマクロブロックは、イントラ予測（Ｉｎｔｒａ  Ｐｒｅｄｉｃｔｉｏｎ；ＩＰＲＥＤ）、粗い動き予測（ＣＭＥ）、及び細かい動き予測（ＦＭＥ）の過程で使用される。
【００３１】
現在のフレームの参照フレーム領域のうち、粗い動き予測（ＣＭＥ）のための参照フレームの検索領域は、第１サーチウィンドウバッファ１５０に保存される。
【００３２】
前記第１サーチウィンドウバッファ１５０に保存された粗い動き予測（ＣＭＥ）のための参照フレームの検索領域、及び前記マクロブロックバッファ１４０に保存されたマクロブロックを使用して、粗い動き予測（ＣＭＥ）では動きベクトル（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ）を出力する。
【００３３】
前記粗い動き予測（ＣＭＥ）により出力された動きベクトルを用いて計算された細かい動き予測（ＦＭＥ）のための参照フレームの検索領域は、第２サーチウィンドウバッファ１６０に保存される。
【００３４】
前記第２サーチウィンドウバッファ１６０に保存された細かい動き予測（ＦＭＥ）のための参照フレームの検索領域、前記第１サーチウィンドウバッファ１５０に保存された粗い動き予測（ＣＭＥ）のための参照フレームの検索領域、及び前記マクロブロックバッファ１４０に保存されたマクロブロック（ＭＢ）を使用して、細かい動き予測（ＦＭＥ）では動きベクトル及び予測されたマクロブロック（Ｐｒｅｄｉｃｔｅｄ  ＭＢ）を出力する。
【００３５】
前記細かい動き予測（ＦＭＥ）により出力された動きベクトル、及び前記マクロブロックバッファ１４０に保存されたマクロブロックを使用して、イントラ予測（ＩＰＲＥＤ）、アダマール変換（Ｈａｄａｍａｒｄ  Ｔｒａｎｓｆｏｒｍ）、離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ；ＤＣＴ）、及び量子化（Ｑｕａｎｔｉｚａｔｉｏｎ）まで行った結果は、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）が行われて圧縮映像に出力される。
【００３６】
量子化まで行った結果は、逆量子化（Ｉｎｖｅｒｓｅ  Ｑｕａｎｔｉｚａｔｉｏｎ）、逆離散コサイン変換（Ｉｎｖｅｒｓｅ  Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ；ＩＤＣＴ）、逆アダマール変換（Ｉｎｖｅｒｓｅ  Ｈａｄａｍａｒｄ  Ｔｒａｎｓｆｏｒｍ）、及びＲＥＣ（Ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ）が行われ、その結果は、デブロッキングフィルタでデブロッキング処理されてデブロック化マクロブロックバッファ１７０に保存される。
【００３７】
前記デブロック化マクロブロックバッファ１７０に保存されたデブロック化マクロブロック（デブロック化ＭＢ）は、フレームメモリ１１０に保存される。
【００３８】
図２は、本発明の一実施形態によるフレームメモリコントローラを説明するためのインタフェース構成図であり、図３は、本発明の一実施形態によるフレームメモリコントローラを説明するためのブロック構成図である。
【００３９】
図２及び図３を並行して参照すると、本発明の一実施形態によるフレームメモリコントローラ１２０は、マクロブロック単位のデータの書き込み及び読み出しのために構成されたものであってもよい。すなわち、フレームメモリコントローラ１２０は、マクロブロックサイズ単位のデータに適した構造で形成され、マクロブロックサイズ単位の書き込み及び読み出しを迅速に行えるように構成されたものであってもよい。
【００４０】
フレームメモリコントローラ１２０は、前記入力ビデオバッファ、マクロブロックバッファ、第１サーチウィンドウバッファ、第２サーチウィンドウバッファ、デブロック化マクロブロックバッファ、及びフレームメモリに対する書き込み及び読み出しを行う。
【００４１】
レジスタバスを介して設定が行われ、設定によって書き込みデータバス及び読み出しデータバスを介してデータの書き込み及び読み出しが行われる。
【００４２】
フレームメモリコントローラ１２０は、フレームメモリとしてエスディーラム（ＳＤＲＡＭ）を使用することができるため、データを伝送する部分の他に、リフレッシュ（Ｒｅｆｒｅｓｈ）、プリチャージ（Ｐｒｅｃｈａｒｇｅ）、及びバンクインターリーブ（Ｂａｎｋ  Ｉｎｔｅｒｌｅａｖｉｎｇ）機能を使うためのＳＤＲＡＭ制御機能、バッファが単にソースメモリ（Ｓｏｕｒｃｅ  Ｍｅｍｏｒｙ）及びデスティネーションメモリ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｍｅｍｏｒｙ）の領域を通知するだけでフレームメモリコントローラが直接メモリ間の伝送を担当するようにしてバッファとフレームメモリ間の伝送機能をなくした直接メモリアクセス機能、並びに映像符号器の特性上マクロブロック単位のデータ伝送を迅速にするための２Ｄ伝送機能をサポートする。
【００４３】
再び図２を参照すると、本発明の一実施形態によるフレームメモリコントローラ１２０のインタフェースは次の通りである。
【００４４】
ＣＬＫＯ、ＣＫＥ、ＣＳ、ＲＡＳ、ＣＡＳ、ＷＥ、ＤＯＥ、ＢＡ［１：０］、Ａ［１２：０］、ＤＱＭ［３：０］、ＤＯＵＴ［３１：０］、ＣＬＫＩ、ＤＩＮ［３１：０］は、ＪＤＥＣ基準のＳＤＲＡＭインタフェースである。ＷＥ＿ＲＥＧ、ＡＤＤＲ＿ＲＥＧ［３１：０］、ＤＡＴＡ＿ＲＥＧ［３１：０］は、フレームメモリコントローラのレジスタインタフェースであって、レジスタバスを介してそれぞれのバッファから信号が伝達される。ＢＵＳＹ、Ｓｅｌｅｃｔ［３：０］、ＷＥ、ＡＤＤＲ［３１：０］、ＲＤＡＴＡ［３１：０］、ＷＤＡＴＡ［３１：０］信号は、それぞれのバッファ内のメモリの書き込み及び読み出しのための信号である。
【００４５】
再び図３を参照すると、本発明の一実施形態によるフレームメモリコントローラ１２０の内部構造は次の通りである。
【００４６】
ＳＤＲＡＭコントローラは、データ伝送と共に、レジスタ値に対応するコマンドを送ってＳＤＲＡＭ制御を行う。
【００４７】
コマンドＦＩＦＯは、レジスタ値に対応するソースアドレス（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）及びデスティネーションアドレス（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）を保存しており、これを順次ＳＤＲＡＭコントローラに送る。
【００４８】
１次コマンドジェネレータ（１Ｄ  Ｃｏｍｍａｎｄ  Ｇｅｎｅｒａｔｏｒ）は、２次コマンドジェネレータ（２Ｄ  Ｃｏｍｍａｎｄ  Ｇｅｎｅｒａｔｏｒ）からソース及びデスティネーションのスタートアドレス（Ｓｔａｒｔ  Ａｄｄｒｅｓｓ）及びエンドアドレス（Ｅｎｄ  Ａｄｄｒｅｓｓ）を受け取り、順次該当ＳＤＲＡＭインタフェース信号を発生する。
【００４９】
２次コマンドジェネレータは、２Ｄブロック伝送モードの場合、様々な１Ｄ伝送のためのスタートアドレス及びエンドアドレスを１次コマンドジェネレータに送る。
【００５０】
周辺インタフェースモジュール（Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ  Ｍｏｄｕｌｅ）は、コマンドＦＩＦＯから受け取った周辺アドレス（Ｐｅｒｉｐｈｅｒａｌ  Ａｄｄｒｅｓｓ）、及びデータＦＩＦＯから受け取ったデータをマスタインタフェースを介してバッファに保存するか、又はマスタインタフェースを介してバッファから受け取ったデータ、及びコマンドＦＩＦＯから受け取ったＳＤＲＡＭインタフェース信号をデータＦＩＦＯに保存する。
【００５１】
データＦＩＦＯは、ＳＤＲＡＭコントローラと周辺インタフェースモジュール間の伝送データ、アドレス、及び制御信号を保存し、ＳＤＲＡＭコントローラ又は周辺インタフェースモジュールから要求されると、これを順次送る。
【００５２】
図４は、本発明の一実施形態による入力ビデオバッファを説明するためのインタフェース構成図であり、図５は、本発明の一実施形態による入力ビデオバッファを説明するためのブロック構成図である。
【００５３】
図４及び図５を並行して参照すると、本発明の一実施形態による入力ビデオバッファ１３０は、入力されるデータを保存し、前記フレームメモリに伝達するためのバッファであって、前記入力されるデータをフレーム内のマクロブロック数に分けて保存するものであってもよい。
【００５４】
入力ビデオバッファ１３０は、入力映像を保存し、保存された映像をフレームメモリコントローラ１２０を介してフレームメモリ１１０に保存する役割を果たす。
【００５５】
ＹＵＶフォーマットの入力映像は、カメラインタフェースを介して映像のサイズと秒当たりのフレーム数に合うように一方的に入る。これをフレームメモリコントローラを介してフレームメモリに直ちに保存する場合、フレームメモリコントローラが他のバッファにより使用中のこともあり、フレームメモリコントローラの状態によっては入力映像を直ちに保存できないことがあるため、入力ビデオバッファのメモリに保存した後、フレーム内のマクロブロック数に分けてフレームメモリコントローラを介してフレームメモリに保存することにより、マクロブロック当たりの処理サイクル数を一定に維持する。
【００５６】
再び図４及び図５を並行して参照すると、本発明の一実施形態による入力ビデオバッファのインタフェース信号は次の通りである。
【００５７】
ＣＩＳ＿ＣＯＮは、カメラの入力を有効なＳＲＡＭ０／ＳＲＡＭ１のメモリにライン単位で保存する。ＳＲＡＭ０とＳＲＡＭ１は、１ラインの輝度（ｌｕｍａ）値及び彩度（ｃｈｒｏｍ）値を保存できるサイズを有する。ＦＭＣ＿ＣＯＮは、ラインが埋められたメモリを読み出し、保存されているラインデータをフレームメモリコントローラの設定によりフレームメモリに送る。
【００５８】
ＶＩＣＬＫ、ＶＩＶＳＹＮＣ、ＶＩＨＳＹＮＣ、ＶＩＹ［７：０］を介してＹＵＶフォーマットの映像が入力され、これは内部メモリに保存される。映像が入力される方式において、フレーム内にライン単位で入力される映像のフォーマットによっては、彩度値が含まれる場合がある。よって、ＳＲＡＭ０／ＳＲＡＭ１は、最大の映像サイズの輝度、彩度の１ラインを保存できるサイズを有し、１つのラインがＳＲＡＭ０に保存された後に次のラインがＳＲＡＭ１に保存される間、ＳＲＡＭ０にあるラインは、ＦＭＣ＿ＣＯＮによりマクロブロック単位のデータがフレームメモリに保存される。
【００５９】
図６は、本発明の一実施形態によるマクロブロックバッファを説明するためのインタフェース構成図であり、図７は、本発明の一実施形態によるマクロブロックバッファを説明するためのブロック構成図である。
【００６０】
図６及び図７を並行して参照すると、本発明の一実施形態によるマクロブロックバッファ１４０は、前記フレームメモリから読み出した複数のマクロブロックを順次保存し、保存された前記各マクロブロックを同時に読み出すことができるものであってもよい。
【００６１】
現在処理中のフレームで順次マクロブロック単位の映像データをフレームメモリ１１０から読み取ると共に、既に読み取ったマクロブロックをＮ個保存しているので、これらのマクロブロックを必要とする内部機能ブロックがそれぞれのマクロブロックを同時に読み取ることができる。
【００６２】
内部にはＮ個で構成されたメモリを有し、１つのメモリは、マクロブロックの輝度、彩度を保存することができ、独立したポートを有し、自身が保存しているマクロブロックのインデックスを有するため、これを必要とする内部ブロックが該当インデックスを見て読み取ることができる。また、多数のブロックが異なるインデックスのマクロブロックを同時に読み取ることができる。
【００６３】
再び図６及び図７を並行して参照すると、本発明の一実施形態によるマクロブロックバッファ１４０のインタフェース信号及び内部ブロックは次の通りである。
【００６４】
内部メモリであるＳＲＡＭはＮ個存在し、ここではＮが４の場合を仮定して動作方式を説明する。ＳＲＡＭ０は、フレームメモリコントローラにより次の粗い動き予測（ＣＭＥ）で使用されるＮ＋１番目のＭＢを保存しており、既にフレームメモリコントローラによりＮ番目のＭＢが保存されたＳＲＡＭ１は、粗い動き予測（ＣＭＥ）により使用され、Ｎ−１番目のＭＢが保存されたＳＲＡＭ２は、イントラ予測（ＩＰＲＥＤ）により使用される。Ｎ−２番目のＭＢが保存されたＳＲＡＭ３は、細かい動き予測（ＦＭＥ）により使用される。
【００６５】
次に、使用しなくなったＮ−２番目のＭＢが保存されているＳＲＡＭ３は、フレームメモリコントローラによりＮ＋２番目のＭＢが保存される。粗い動き予測（ＣＭＥ）は、Ｎ＋１番目のＭＢが保存されていたＳＲＡＭ０を使用する。そして、イントラ予測（ＩＰＲＥＤ）は、Ｎ番目のＭＢが保存されていたＳＲＡＭ１を使用し、細かい動き予測（ＦＭＥ）は、Ｎ−１番目のＭＢが保存されていたＳＲＡＭ２を使用する。
【００６６】
引き続き、フレームメモリコントローラは、次の段階では使用しなくなったＭＢが保存されているＳＲＡＭを探して新しいＭＢを保存する。
【００６７】
図８は、本発明の一実施形態によるマクロブロックバッファの動作を説明するための例示図である。
【００６８】
図８を参照すると、本発明の一実施形態によるマクロブロックバッファ１４０内のＳＲＡＭ０〜３の内部は、ブロックをより効率的に読み取ることができるように構成される。
【００６９】
マクロブロックバッファ１４０内のＳＲＡＭは、Ｂｌｏｃｋ＿ｗ０、Ｂｌｏｃｋ＿ｗ１、Ｂｌｏｃｋ＿ｗ２、Ｂｌｏｃｋ＿ｗ３に分けられ、ＭＢ内のブロックの４ワードを分けて保存している。よって、同時に１つのブロックを読めるようにして、ブロック単位処理を行う機能ブロックが同時に１つのブロックを読んで処理できるようにした。
【００７０】
また、粗い動き予測（ＣＭＥ）の演算特性である既存のＭＢのサイズである１６ｘ１６マトリクスの画素に対する動き予測を行うのではなく、１／２サンプリングを行った８ｘ８マトリクスの画素に対する動き予測を行う。よって、外部メモリから読み取った画素を有効画素と無効画素に分けて物理的に異なるメモリに保存するようにした。
【００７１】
すなわち、ブロック内で同じラインにある４画素のうち、１番目、３番目の画素はｏｄｄメモリに保存し、２番目、４番目の画素はｅｖｅｎメモリに保存する。
【００７２】
粗い動き予測（ＣＭＥ）は、マクロブロックを読み取るとき、Ｂｌｏｃｋ＿ｗ０、Ｂｌｏｃｋ＿ｗ１内のｏｄｄ  ＳＲＡＭのみを使用し、ワード単位で読むときは、Ｂｌｏｃｋ＿ｗ０とＢｌｏｃｋ＿ｗ１に保存されるラインの隣接ブロックの画素までそれぞれ４つの有効画素が得られる。このようにＢｌｏｃｋ＿ｗ０とＢｌｏｃｋ＿ｗ１とから構成しても、イントラ予測（ＩＰＲＥＤ）及び細かい動き予測（ＦＭＥ）でＢｌｏｃｋ＿ｗ０、Ｂｌｏｃｋ＿ｗ１を使用するときにワード単位で読めるように、ｏｄｄ／ｅｖｅｎメモリはハーフワード単位で読まれることができる。
【００７３】
図９は、本発明の一実施形態による第１サーチウィンドウバッファを説明するためのインタフェース構成図であり、図１０は、本発明の一実施形態による第１サーチウィンドウバッファを説明するためのブロック構成図である。
【００７４】
図９及び図１０を並行して参照すると、本発明の一実施形態による第１サーチウィンドウバッファ１５０は、粗い動き予測（ＣＭＥ）のための参照フレームの検索領域を保存するためのものであり、第１サーチウィンドウバッファにおける各参照フレームの検索領域は、大きさが可変であってもよく、第１サーチウィンドウバッファにおける各参照フレームの検索領域は、同時に読み出すことができるものであってもよい。
【００７５】
インター予測（Ｉｎｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ）のためには、以前のフレームの領域を利用して動き予測を行うが、このために、以前のフレームの領域、すなわちサーチウィンドウのうち階層的動き予測の粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を保存し、前記保存された粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を粗い動き予測機能ブロックと細かい動き予測機能ブロックで読み取れるようにする。
【００７６】
再び図９及び図１０を並行して参照すると、本発明の一実施形態による第１サーチウィンドウバッファのインタフェース信号及び内部ブロックは次の通りである。
【００７７】
第１サーチウィンドウバッファ１５０は、Ｎ個のＳＲＡＭが存在し、保存できる粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）の大きさも可変である。
【００７８】
但し、細かい動き予測（ＦＭＥ）の動き推定が様々な段階に分けられている場合、各段階を担当する動き推定ブロックが同時に異なるＭＢの粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を読み取れるように構成される。
【００７９】
動作を説明すると、サーチウィンドウ（ＳＷ）は、４８ｘ４８画素でＭＢの中心でＭＢの９倍サイズとなる場合であり、動き推定は、階層的動き推定を行うので、粗い動き推定と細かい動き推定に分けられ、粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）は、粗い動き推定のための参照フレームのサーチウィンドウを保存する。これに基づいて通常の様々な段階の動き推定を行うインター予測方式などに適用可能である。
【００８０】
図１１は、本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するための例示図であり、図１２は、本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するための他の例示図であり、図１３は、本発明の一実施形態による第１サーチウィンドウバッファの動作を説明するためのさらに他の例示図である。
【００８１】
図１１を参照すると、本発明の一実施形態による第１サーチウィンドウバッファ１５０は、粗い動き予測（ＣＭＥ）のサーチウィンドウ領域を均等に垂直に３等分し、１つの領域のＹのみを１つのバンクに保存するようにする。９個のバンクを有し、フレームメモリコントローラ、粗い動き予測（ＣＭＥ）と細かい動き予測（ＦＭＥ）が同時に互いに単位ＭＢのサーチウィンドウ領域の書き込み及び読み出しを行うことができる。
【００８２】
現在のＭＢの粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）がＮ＋１番目のＳＷ、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷである場合、次のＭＢのＳＷ領域は、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷ、Ｎ＋４番目のＳＷとなる。
【００８３】
最初は、フレームメモリコントローラが３つのＳＷを連続してフレームメモリから読み出し、次に、フレームメモリコントローラが１つのＳＷをフレームメモリから読み出して第１サーチウィンドウバッファ（ＳＷＩバッファ）に書き込むと共に、粗い動き予測（ＣＭＥ）が前の３つのＳＷを読み出し、さらに、フレームメモリコントローラが１つのＳＷをフレームメモリから読み出して第１サーチウィンドウバッファ（ＳＷＩバッファ）に書き込むと共に、粗い動き予測（ＣＭＥ）が前の３つのＳＷを読み出すと共に、細かい動き予測（ＦＭＥ）が前の３つのＳＷを読み出す。
【００８４】
フレームメモリコントローラは、既に先にＮ番目のＳＷのＹをＳＲＡＭ０、ＳＲＡＭ５に読み取る。ＳＲＡＭ０、ＳＲＡＭ５には同じ内容が保存される。このようにＮ＋１番目のＳＷ、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷまでＳＲＡＭ１、ＳＲＡＭ６、ＳＲＡＭ２、ＳＲＡＭ７、ＳＲＡＭ３、ＳＲＡＭ８に保存される。フレームメモリコントローラがＮ＋３番目のＳＷを保存するとき、粗い動き予測（ＣＭＥ）は、Ｎ番目のＳＷ、Ｎ＋１番目のＳＷ、Ｎ＋２番目のＳＷの粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を読むために、ＳＲＡＭ０、ＳＲＡＭ１、ＳＲＡＭ２を読む。
【００８５】
図１２を参照すると、本発明の一実施形態による第１サーチウィンドウバッファ１５０での次の段階の動作を説明すると、フレームメモリコントローラは、Ｎ＋４番目のＳＷをＳＲＡＭ０、ＳＲＡＭ４に保存する。これと同時に粗い動き予測（ＣＭＥ）は、Ｎ＋１番目のＳＷ、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷである粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を読むために、ＳＲＡＭ１、ＳＲＡＭ２、ＳＲＡＭ３を読む。
【００８６】
細かい動き予測（ＦＭＥ）は、細かい動き推定のためのサーチウィンドウの一部を読むために、Ｎ番目のＳＷ、Ｎ＋１番目のＳＷ、Ｎ＋２番目のＳＷを保存しているＳＲＡＭ５、ＳＲＡＭ６、ＳＲＡＭ７を読む。
【００８７】
図１３を参照すると、本発明の一実施形態による第１サーチウィンドウバッファ１５０での次の段階の動作を説明すると、フレームメモリコントローラは、Ｎ＋５番目のＳＷをＳＲＡＭ１、ＳＲＡＭ５に保存する。これと同時に粗い動き予測（ＣＭＥ）は、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷ、Ｎ＋４番目のＳＷである粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を読むために、ＳＲＡＭ２、ＳＲＡＭ３、ＳＲＡＭ４を読む。細かい動き予測（ＦＭＥ）は、細かい動き推定のためのサーチウィンドウの一部を読むために、Ｎ＋１番目のＳＷ、Ｎ＋２番目のＳＷ、Ｎ＋３番目のＳＷを保存しているＳＲＡＭ６、ＳＲＡＭ７、ＳＲＡＭ８を読む。
【００８８】
図１４は、本発明の一実施形態による第２サーチウィンドウバッファを説明するためのインタフェース構成図である。図１５は、本発明の一実施形態による第２サーチウィンドウバッファを説明するためのブロック構成図である。
【００８９】
図１４及び図１５を並行して参照すると、本発明の一実施形態による第２サーチウィンドウバッファ１６０は、細かい動き予測（ＦＭＥ）のための参照フレームの検索領域（ＳＷＩＩ）を保存するためのものであり、第２サーチウィンドウバッファは、前記第１サーチウィンドウバッファ以外の参照フレームの検索領域を保存するものであってもよく、前記第１サーチウィンドウバッファ以外の参照フレームの検索領域は、粗い動き予測（ＣＭＥ）の結果によって異なるものであってもよい。
【００９０】
通常、ハードウェアで設計される映像符号器のインター予測のための動き推定としては、階層的動き推定を行い、階層的動き推定は、大きく粗い動き推定と細かい動き推定に分けられる。
【００９１】
粗い動き推定では、広いサーチウィンドウ領域で大きい動きベクトル間隔で全てのサーチウィンドウ領域を検索して最適な動きベクトルを探し、細かい動き推定では、当該動きベクトルを基準に周辺サーチウィンドウ領域でのみ１／４画素単位までの動き推定を行う。
【００９２】
細かい動き推定で必要とするサーチウィンドウ領域は、多くの部分が粗い動き推定で必要とするサーチウィンドウ領域と重なり、そうでないサーチウィンドウ領域を細かい動き予測（ＦＭＥ）のための参照フレームの検索領域（ＳＷＩＩ）といい、これを保存するために第２サーチウィンドウバッファ（ＳＷＩＩバッファ）を使用する。
【００９３】
よって、第２サーチウィンドウバッファ（ＳＷＩＩバッファ）では、粗い動き推定の結果である動きベクトルを基準に細かい動き予測（ＦＭＥ）のための参照フレームの検索領域（ＳＷＩＩ）をフレームメモリから読み取ると共に、前記保存された細かい動き予測（ＦＭＥ）のための参照フレームの検索領域（ＳＷＩＩ）と第１サーチウィンドウバッファ（ＳＷＩバッファ）を介して読み取った粗い動き予測（ＣＭＥ）のための参照フレームの検索領域（ＳＷＩ）を利用して、細かい動き予測（ＦＭＥ）を行う。
【００９４】
図１６は、本発明の一実施形態による第２サーチウィンドウバッファの動作を説明するための例示図である。
【００９５】
図１６を参照すると、粗い動き予測（ＣＭＥ）は、演算特性である既存のＭＢのサイズである１６ｘ１６マトリクスの画素に対する動き予測を行うのではなく、１／２サンプリングを行った８ｘ８マトリクスの画素に対する動き予測を行うため、サーチウィンドウ領域内のデータもマクロブロックバッファ（ＭＢバッファ）を読む特性にそのままついていく。
【００９６】
よって、第１サーチウィンドウバッファ（ＳＷＩバッファ）のＳＲＡＭは、サーチウィンドウ領域をブロック単位で分けた場合、４つのワードのうち１番目と２番目のみ第１サーチウィンドウバッファ（ＳＷＩバッファ）のＳＲＡＭ内のＢｌｏｃｋ＿ｗ０とＢｌｏｃｋ＿ｗ１に保存される。このうち、ワード内の１番目と３番目の画素はｏｄｄに、２番目と４番目の画素はｅｖｅｎに保存され、粗い動き予測（ＣＭＥ）はｏｄｄのみを読み取る。ｅｖｅｎには細かい動き予測（ＦＭＥ）で使用されるデータが保存される。
【００９７】
第２サーチウィンドウバッファ（ＳＷＩＩバッファ）は、粗い動き予測（ＣＭＥ）の結果に応じて必要なブロックの２番目と４番目のワードを読み取る。それぞれはＢｌｏｃｋ＿ｗ２とＢｌｏｃｋ＿ｗ３に保存される。その他に、細かい動き予測（ＦＭＥ）内でのハーフペル（ｈａｌｆ−ｐｅｌ）演算のためには、サーチウィンドウ領域の他に上下左右に３つの画素を含む領域がさらに必要である。
【００９８】
既に第１サーチウィンドウバッファ（ＳＷＩバッファ）とＢｌｏｃｋ＿ｗ２とＢｌｏｃｋ＿ｗ３に含まれていることもあるが、そうでない場合、含まれていない領域の中で上位のＩｎｔｅｒｐｏｌａｔｉｏｎ＿ｕｐｐｅｒと下位のＩｎｔｅｒｐｏｌａｔｉｏｎ＿ｂｏｔｔｏｍ領域は、Ｉｎｔｅｒｐｏｌａｔｉｏｎ＿ｕｐｐｅｒ＿ｂｏｔｔｏｍに保存され、左右領域の中でＢｌｏｃｋ＿ｗ０とＢｌｏｃｋ＿ｗ１に保存されたラインのような領域は、Ｂｌｏｃｋ＿ｗ０＿ｗ１＿ｉｎｔｅｒｐｏｌに保存される。
【００９９】
図１７は、本発明の一実施形態によるデブロック化マクロブロックバッファを説明するためのインタフェース構成図であり、図１８は、本発明の一実施形態によるデブロック化マクロブロックバッファを説明するためのブロック構成図である。
【０１００】
図１７及び図１８を並行して参照すると、本発明の一実施形態によるデブロック化マクロブロックバッファ１７０は、デブロッキングフィルタを施した結果を保存するためのものであり、前記デブロック化マクロブロックバッファ１７０でデブロッキングフィルタを施した結果は、追加的に前記フレームメモリに保存されてもよい。
【０１０１】
デブロック化マクロブロックバッファ１７０は、イントラ予測又はインター予測で予測されたマクロブロックと符号化中のマクロブロックとの差を変換及び量子化した後にさらに逆変換及び逆量子化した値を用いて復元したマクロブロック（ＭＢ）にＭＢ単位間のブロック現象をなくすためにデブロッキングフィルタを施した結果（デブロック化マクロブロック）を保存すると共に、既に保存されたデブロック化マクロブロックをフレームメモリコントローラを介してフレームメモリに保存する。
【０１０２】
再び図１７及び図１８を並行して参照すると、ＤＢ＿ＣＯＮにより、デブロッキングフィルタを施した結果はＭＢ＿ｎｕｍと共に空いているＳＲＡＭに保存される。そして、ＦＭＣ＿ＣＯＮにより、埋められたＳＲＡＭはフレームメモリコントローラの設定を介してフレームメモリに保存される。
【０１０３】
通常、マクロブロックを保存できるＳＲＡＭはＮ個であり、これはフレームメモリに保存しないデブロック化マクロブロックをＮ個保存できるようにして、Ｎ−１個のＭＢ処理期間を待った後にフレームメモリに保存できるようにする。
【０１０４】
図１９は、本発明の一実施形態による映像処理のためのシステムの各ステージの動作を説明するための例示図である。
【０１０５】
図１９を参照して、パイプラインステージ（Ｐｉｐｅ  Ｌｉｎｅ  Ｓｔａｇｅ）を有する実施形態におけるＭＢ単位処理のためのクロック数を比較する。通常、このような構造で支配的なパイプラインステージを決定する要因は、フレームメモリコントローラにより毎ステージで前記必要なバッファを埋めたり空にしたりする時間である。よって、ＭＢ単位処理のためのクロック数を毎ステージでフレームメモリコントローラによりバッファを埋めるクロック数とみなしてもよい。
【０１０６】
本発明で提案した構造を有しない場合、粗い動き予測（ＣＭＥ）とイントラ予測（ＩＰＲＥＤ）及び細かい動き予測（ＦＭＥ）は、異なるステージで異なる現在のマクロブロック（Ｃｕｒｒｅｎｔ  ＭＢ）を必要とし、同じステージにあるイントラ予測（ＩＰＲＥＤ）と細かい動き予測（ＦＭＥ）が必要とする現在のマクロブロックの有効画素も異なる。
【０１０７】
従って、イントラ予測（ＩＰＲＥＤ）、粗い動き予測（ＣＭＥ）、及び細かい動き予測（ＦＭＥ）のための現在のマクロブロックは、それぞれ保存されていなければならず、全てがそれぞれ必要とする現在のマクロブロックを繰り返してフレームメモリコントローラを介してフレームメモリから読み取らなければならない。
【０１０８】
そして、第２サーチウィンドウバッファ（ＳＷＩＩバッファ）を埋めるときは、第１サーチウィンドウバッファ（ＳＷＩバッファ）の内容を参照しないため、細かい動き予測（ＦＭＥ）のサーチレンジ（Ｓｅａｒｃｈ  Ｒａｎｇｅ）の全てのＹＵＶを保存しなければならない。
【０１０９】
通常、フレームメモリはＳＤＲＡＭとし、７２０ｐや１０８０ｐなどの映像サイズをサポートするために、Ｃａｓ  Ｌａｔｅｎｃｙ  ３、ｔＲＡＣ  ７のパラメータとし、読み出し／書き込みのサイクル測定のためにｔＲＡＣは測定に支配的でないので無視し、単にＣａｓ  Ｌａｔｅｎｃｙ  ３で性能を比較することができる。
【０１１０】
【表１】
2011120244.tif 000003
【０１１１】
上記表１では、各バッファ毎に必要なクロック数とこれによるＭＢ単位処理のためのクロック数とを比較した。
【０１１２】
パイプラインのスループット（Ｃｙｃｌｅ／ＭＢ）は、９８４．３ｃｙｃｌｅであったのが本発明で提案した構造を用いた場合に７２０．９ｃｙｃｌｅとなった。つまり、スループットによるＭＢ単位処理のためのクロック数は、本発明非適用時の７３．２４％となり、約２６．７６％が減少する効果が得られた。
【０１１３】
本発明は、上記実施形態に基づいて説明したが、添付の特許請求の範囲に記載された本発明の思想及び領域から外れない範囲内で、当該技術分野における通常の知識を有する者によって様々な変形及び変更が可能であることは明らかである。
【符号の説明】
【０１１４】
１００  映像処理のためのシステム
１１０  フレームメモリ
１２０  フレームメモリコントローラ
１３０  入力ビデオバッファ
１４０  マクロブロックバッファ
１５０  第１サーチウィンドウバッファ
１６０  第２サーチウィンドウバッファ
１７０  デブロック化マクロブロックバッファ
【図１】
2011120244.tif 000004
【図２】
2011120244.tif 000005
【図３】
2011120244.tif 000006
【図４】
2011120244.tif 000007
【図５】
2011120244.tif 000008
【図６】
2011120244.tif 000009
【図７】
2011120244.tif 000010
【図８】
2011120244.tif 000011
【図９】
2011120244.tif 000012
【図１０】
2011120244.tif 000013
【図１１】
2011120244.tif 000014
【図１２】
2011120244.tif 000015
【図１３】
2011120244.tif 000016
【図１４】
2011120244.tif 000017
【図１５】
2011120244.tif 000018
【図１６】
2011120244.tif 000019
【図１７】
2011120244.tif 000020
【図１８】
2011120244.tif 000021
【図１９】
2011120244.tif 000022