(57)【要約】【課題】データの転送効率を向上出来るプロセッサシステム及びデータ転送方法を提供すること。【解決手段】第１画像データを保持するメモリ装置１４と、前記メモリ装置１４から前記第１画像データを読み出し、前記第１画像データに含まれる複数のピクセルの集合であるピクセル群ＭＢ単位で画像処理を行う複数の第１プロセッサ１２と、複数の前記第１プロセッサ１２の動作を制御する第２プロセッサ１１とを具備し、前記メモリ装置１４は、前記第１プロセッサ１２へ入力すべき前記第１画像データと、前記第１プロセッサ１２における前記処理の結果得られる第２画像データとを保持し、前記第１画像データと第２画像データの少なくともいずれかの輝度成分Ｙを連続したアドレスで保持し、且つ各々の前記ピクセル群ＭＢに含まれる前記輝度成分Ｙを連続したアドレスで保持する。【選択図】      図１
2007293533.tif 000002
【特許請求の範囲】
【請求項１】
第１画像データを保持するメモリ装置と、
前記メモリ装置から前記第１画像データを読み出し、前記第１画像データに含まれる複数のピクセルの集合であるピクセル群単位で画像処理を行う複数の第１プロセッサと、
複数の前記第１プロセッサの動作を制御する第２プロセッサと
を具備し、前記メモリ装置は、前記第１プロセッサへ入力すべき前記第１画像データと、前記第１プロセッサにおける前記画像処理の結果得られる第２画像データとを保持し、前記第１画像データと第２画像データの少なくともいずれかの輝度成分を連続したアドレスで保持し、且つ各々の前記ピクセル群に含まれる前記輝度成分を連続したアドレスで保持する
ことを特徴とするプロセッサシステム。
【請求項２】
前記第１、第２画像データのいずれか一方は符号化された画像データであり、
前記第１画像データが符号化された画像データである場合に、前記第１プロセッサは、前記メモリ装置から読み出した前記第１画像データを復号化して前記第２画像データを生成し、且つ前記メモリ装置は、前記第２画像データの輝度成分を連続したアドレスで保持し、且つ各々の前記ピクセル群に含まれる前記輝度成分を連続したアドレスで保持し、
前記第１画像データが符号化されていない画像データである場合に、前記第１プロセッサは、前記メモリ装置から読み出した前記第１画像データを符号化して前記第２画像データを生成し、前記メモリ装置は、前記第１画像データの輝度成分を連続したアドレスで保持し、且つ各々の前記ピクセル群に含まれる前記輝度成分を連続したアドレスで保持する
ことを特徴とする請求項１記載のプロセッサシステム。
【請求項３】
前記第１プロセッサは、前記第１、第２画像データの少なくともいずれかの一部を保持可能なローカルメモリ装置と、
前記メモリ装置と前記ローカルメモリ装置との間で、ダイレクト・メモリ・アクセスにより前記第１、第２画像データの少なくともいずれかを転送する転送装置と、
前記ローカルメモリ装置に転送された前記第１、第２画像データの少なくともいずれかを用いて、前記画像処理を行う制御部と
を備えることを特徴とする請求項１記載のプロセッサシステム。
【請求項４】
前記転送装置は、前記ピクセル群単位よりも小さいデータサイズにより前記第１、第２画像データの少なくともいずれかを転送する
ことを特徴とする請求項３記載のプロセッサシステム。
【請求項５】
複数のピクセルの集合であるピクセル群を複数含む画像データを保持するメインメモリと、各々がローカルメモリを備えた複数の第１プロセッサと、複数の前記第１プロセッサの動作を制御する第２プロセッサとを備えたプロセッサシステムにおけるデータ転送方法であって、
前記第１プロセッサにおいて前記ピクセル群単位で前記画像データを復号化することにより得られた輝度成分を、前記ローカルメモリから前記メインメモリへ転送するステップと、
前記第１プロセッサにおいて前記ピクセル群単位で前記画像データを復号化することにより得られた色差成分を、前記メインメモリにおいて前記輝度成分が格納される領域と離隔した領域に格納されるように、前記ローカルメモリから前記メインメモリへ転送するステップと
を具備し、前記輝度成分は前記メインメモリにおいて連続したアドレスで保持され、且つ各々の前記ピクセル群に含まれる前記輝度成分は、前記メインメモリにおいて連続したアドレスで保持される
ことを特徴とするデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プロセッサシステム及びデータ転送方法に関する。特に、複数のプロセッサによりメインメモリが共有されたプロセッサシステムにおける、プロセッサとメインメモリとの間のデータ転送方法に関するものである。
【背景技術】
【０００２】
従来、メインプロセッサと、このメインプロセッサに従属して動作する複数のコプロセッサとを備えたプロセッサシステムが知られている。また、このようなシステムにおいて、あるピクセルの集合毎に処理を行い、画像データの復号化を行った際に、画像データの輝度成分及び色差成分をピクセルの集合毎にメインメモリに保持させる構成が知られている（例えば特許文献１、２参照）
しかしながら上記従来のシステムであると、データの転送時に無駄が発生し、データの転送効率が悪化するという問題があった。
【特許文献１】特開２００６−６５８６４号公報
【特許文献２】特開２００６−６７２４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
この発明は、データの転送効率を向上出来るプロセッサシステム及びデータ転送方法を提供する。
【課題を解決するための手段】
【０００４】
この発明の一態様に係るプロセッサシステムは、第１画像データを保持するメモリ装置と、前記メモリ装置から前記第１画像データを読み出し、前記第１画像データに含まれる複数のピクセルの集合であるピクセル群単位で画像処理を行う複数の第１プロセッサと、複数の前記第１プロセッサの動作を制御する第２プロセッサとを具備し、前記メモリ装置は、前記第１プロセッサへ入力すべき前記第１画像データと、前記第１プロセッサにおける前記処理の結果得られる第２画像データとを保持し、前記第１画像データと第２画像データの少なくともいずれかの輝度成分を連続したアドレスで保持し、且つ各々の前記ピクセル群に含まれる前記輝度成分を連続したアドレスで保持する。
【０００５】
またこの発明の一態様に係るデータ転送方法は、複数のピクセルの集合であるピクセル群を複数含む画像データを保持するメインメモリと、各々がローカルメモリを備えた複数の第１プロセッサと、複数の前記第１プロセッサの動作を制御する第２プロセッサとを備えたプロセッサシステムにおけるデータ転送方法であって、前記第１プロセッサにおいて前記ピクセル群単位で前記画像データを復号化することにより得られた輝度成分を、前記ローカルメモリから前記メインメモリへ転送するステップと、前記第１プロセッサにおいて前記ピクセル群単位で前記画像データを復号化することにより得られた色差成分を、前記メインメモリにおいて前記輝度成分が格納される領域と離隔した領域に格納されるように、前記ローカルメモリから前記メインメモリへ転送するステップとを具備し、前記輝度成分は前記メインメモリにおいて連続したアドレスで保持され、且つ各々の前記ピクセル群に含まれる前記輝度成分は、前記メインメモリにおいて連続したアドレスで保持される。
【発明の効果】
【０００６】
この発明によれば、データの転送効率を向上出来るプロセッサシステム及びデータ転送方法を提供出来る。
【発明を実施するための最良の形態】
【０００７】
以下、この発明の実施形態を図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００８】
この発明の実施形態に係るプロセッサシステム及びデータ転送方法について、図１を用いて説明する。図１は、本実施形態に係る計算機システムのブロック図である。本実施形態に係る計算機システムは、動画の入出力を備えたデジタル動画処理システムであり、汎用の計算機として利用できるほか、さまざまな電子機器用の組込みシステムとして利用できる。
【０００９】
図示するように計算機システム１０は、マスタープロセッサユニット（ＭＰＵ：Master Processor Unit）１１、複数のバーサタイルプロセッサユニット（ＶＰＵ：Versatile Processing Unit）１２、接続装置１３、メインメモリ１４、入出力制御装置１５、及び入出力デバイス１６を備えている。
【００１０】
ＭＰＵ１１は、計算機システム１０の動作を制御するメインプロセッサである。オペレーティングシステム（ＯＳ：Operating System）は、主にＭＰＵ１１によって実行される。ＯＳの一部の機能は、ＶＰＵ１２や入出力装置１５で分担して実行することもできる。
【００１１】
ＶＰＵ１２の各々は、ＭＰＵ１１の管理の下で各種の処理を実行するプロセッサである。ＭＰＵ１１は、複数のＶＰＵ１２に処理を振り分けて並列に実行させるための制御を行う。これにより高速で効率よい処理の実行を行うことができる。
【００１２】
メインメモリ１４は、ＭＰＵ１１、複数のＶＰＵ１２、及び入出力装置１５によって共有される記憶装置（共有メモリ）である。メインメモリ１４は、ＯＳ及びアプリケーションプログラム、並びに入出力制御装置１５から入力された動画像データを保持する。
【００１３】
入出力制御装置１５には、１つ或いは複数の入出力デバイス（入出力装置）１６が接続される。入出力制御装置１５はブリッジとも呼ばれる。そして入出力制御装置１５は入出力デバイス１６の動作を制御する。
【００１４】
接続装置１３は、上記のＭＰＵ１１、ＶＰＵ１２、メインメモリ１４、及び入出力装置１５を相互に接続する。
【００１５】
なお、図１の構成では、ＭＰＵ１１が１つ、ＶＰＵ１２が４つ、メモリ１４が１つ、入出力制御装置が１つの場合を例に挙げている。しかしＶＰＵ１２を始め、これらの回路ブロックの個数は制限されない。また、ＭＰＵ１１が複数ある構成や、ＭＰＵ１１を有しない構成も可能である。ＭＰＵ１１を有しない構成の場合、ＭＰＵ１１の行う処理は、いずれかのＶＰＵ１２が担当する。つまり、仮想的なＭＰＵ１１の役割をＶＰＵが兼ねる。
【００１６】
次に、図１を用いてＭＰＵ１１及びＶＰＵ１２の構成について説明する。  
ＭＰＵ１１は、処理ユニット２１およびメモリ管理ユニット２２を備えている。メモリ管理ユニット２２はキャッシュメモリを備えており、メインメモリ１４からキャッシュメモリへのデータの読み出し、キャッシュメモリからメインメモリ１４へのデータの書き込み、及び仮想記憶管理を行う。処理ユニット２１は、メモリ管理ユニット２２のキャッシュメモリに保持されるデータを用いて処理を行う。
【００１７】
ＶＰＵ２２は、処理ユニット３１、ローカルストレージ（ローカルメモリ）３２、及びメモリコントローラ３３を備えている。ローカルストレージ３２は、データ保持可能なメモリ装置である。メモリコントローラ３３は、ローカルストレージ３２とメインメモリ１４との間をダイレクト・メモリ・アクセス（ＤＭＡ：Direct Memory Access）転送によってデータ転送するＤＭＡコントローラとして機能する。メモリコントローラ３３は、ＭＰＵ１１の備えるメモリ管理ユニット２２と同様の仮想記憶管理機能を有している。
【００１８】
各ＶＰＵ１２の処理ユニット３１は、当該ＶＰＵ１２内部のローカルストレージ３２に対して直接アクセスすることができる。そして処理ユニット３１は、ローカルストレージ３２を主記憶として使用する。すなわち、処理ユニット３１はメインメモリ１４に対して直接的にアクセスするのではなく、メモリコントローラ３３に指示することにより、メインメモリ１４の内容をローカルストレージ３２に転送して読み出し、またローカルストレージ３２の内容をメインメモリ１４に転送して書き込む。
【００１９】
なお、ハードウェアの実装上の都合から、ＤＭＡによるデータの転送は１２８バイト及びその整数倍を単位としておこなわれる。例えば、メインメモリ１４からあるＶＰＵ１２のローカルストレージ３２に１バイトのデータを転送する場合は、次のようにしてデータがＶＰＵ１２へ転送される。すなわち、メインメモリ１４のアドレスを先頭から１２８バイト毎に区切り、該当するデータが存在する区間の１２８バイトを、ＶＰＵ１２のメモリコントローラ３３が読み出す。そしてメモリコントローラ３３は、読み出した１２８バイトのデータのうち、必要な１バイトを取り出してローカルストレージ３２に保存する。また、２バイト以上のデータを転送する際に、転送元のデータが１２８バイトで区切った区間のうち複数の区間にまたがる場合には、データがまたがる全ての区間のデータがメモリコントローラ３３へ転送される。
【００２０】
なおＭＰＵ１１は、制御レジスタなどのハードウェア機構によって、各ＶＰＵ１２の管理を行う。ＶＰＵ１２の管理とは、例えばＶＰＵ１２の備えるレジスタに対するデータの読み出し／書き込みや、各ＶＰＵ１２のプログラムの実行開始／停止などである。また、ＭＰＵ１１とＶＰＵ１２の間、あるいはＶＰＵ１２と他のＶＰＵ１２の間の通信や同期は、メールボックスやイベントフラグなどのハードウェア機構によって行うことができる。
【００２１】
上記構成の計算機システム１０の動作について、入出力デバイス１６から入力されたＭＰＥＧ（Moving Picture Experts Group）−２形式の動画像をＨ．２６４形式に変換する場合を例に挙げて、以下説明する。なお、ＭＰＥＧ−２及びＨ．２６４とは、動画像を圧縮して符号化する規格の名称である。勿論、この変換処理は計算機システム１０の行う処理の一例に過ぎない。
【００２２】
上記変換システムを実現する際に用いるプログラムの構成を図２に示す。図２はＭＰＥＧ−２からＨ．２６４への変換プログラムの構成を示す概念図である。図示するようにプログラム４０は、制御プログラム４１、ＭＰＥＧ−２デコードプログラム４２、及びＨ．２６４エンコードプログラム４３を含む。制御プログラム４１はＭＰＵ１１上で動作する。ＭＰＥＧ−２デコードプログラム４２及びＨ．２６４エンコードプログラム４３は１つ若しくは複数のＶＰＵ１２上で動作する。ＭＰＥＧ−２デコードプログラム４２は、ＭＰＥＧ−２形式により圧縮符号化された動画像データをデコードして映像を得るためのプログラムである。またＨ．２６４エンコードプログラム４３は、デコードして得られた映像をＨ．２６４形式により圧縮符号化するためのプログラムである。
【００２３】
図３は、制御プログラム４１、ＭＰＥＧ−２デコードプログラム４２、及びＨ．２６４エンコードプログラム４３による処理の流れを示すタイミングチャートである。図中において、図面が記載された紙面における上から下に向かって時間が流れる様子を示している。
【００２４】
まず時刻ｔ１において、例えばＭＰＵ１１が制御プログラム４１を実行する。制御プログラム４１に基づいてＭＰＵ１１は、ＭＰＥＧ−２で符号化された動画像データを入出力制御装置１５から接続装置１３を経由して読み取る。そして、読み取った動画像データを１フレーム毎のデータに分割し、メインメモリ１４に保存する。フレーム（frame）とは、動画像データを構成する個々の時間における１枚の画像のことである。
【００２５】
次に時刻ｔ２において、制御プログラム４１に基ついてＭＰＵ１１は、ＭＰＥＧ−２デコードプログラム４２の実行を命令する。ＭＰＥＧ−２デコードプログラム４２は、例えば各ＶＰＵ１２において実行される。するとＭＰＥＧ−２デコードプログラム４２に基づいてＶＰＵ１２におけるメモリコントローラ３３は、メインメモリ１４からローカルストレージ３２へＤＭＡによりデータを読み込む。そして処理ユニット３１が、ローカルストレージ３２に読み込んだデータをデコード（復号）して、ローカルストレージ３２に格納する。その後、メモリコントローラ３３は、デコード結果をローカルストレージ３２からメインメモリ１４にＤＭＡにより書き込む。
【００２６】
この際、ローカルストレージ３２のメモリ容量は、１フレーム分のデータサイズより小さい。すなわち、ローカルストレージ３２には１フレーム分のデータ全てを保持させることが出来ない。従って、メインメモリ１４からローカルストレージ３２へＭＰＥＧ−２のデータの一部を読み込み、１部分の画像デコード結果をローカルストレージ３２からメインメモリ１４へ転送し、これを繰り返すことで、１フレーム分のデータのデコードを行う。ＭＰＥＧ−２デコードプログラム４２は、１フレーム分のＭＰＥＧ−２データのデコードが終了すると、制御プログラム４１にデコード終了の情報を送信する。
【００２７】
時刻ｔ３においてＭＰＥＧ−２デコードプログラム４２からデコード終了の情報を受信したＭＰＵ１１は、時刻ｔ４において、制御プログラム４１に基づいてＨ．２６４エンコードプログラム４３の実行を命令する。Ｈ．２６４エンコードプログラム４３は、例えば各ＶＰＵ１２において実行される。
【００２８】
Ｈ．２６４エンコードプログラム４３に基づいてＶＰＵ１２におけるメモリコントローラ３３は、ＭＰＥＧ−２のデコード結果をメインメモリ１４からローカルストレージ３２に読み込む。そして処理ユニット３１が、Ｈ．２６４形式にエンコード（符号化）し、エンコード結果をローカルストレージ３２に格納する。その後メモリコントローラ３３が、ローカルストレージ３２からメインメモリ１４にＤＭＡを用いて転送する。この際、デコード時と同様に、１フレーム分すべての情報をローカルストレージ３２に保持することができないので、入力の情報・出力の情報ともに、小さな単位でＤＭＡを行い、Ｈ．２６４エンコードの処理を行う。
【００２９】
時刻ｔ５においてエンコード処理が終了すると、ＶＰＵ１２はＨ．２６４エンコードプログラム４３に基づいて、ＭＰＵ１１に対してエンコード終了の情報を送信する。エンコード終了の情報を受信したＭＰＵ１１は、制御プログラム４１に基づいて、Ｈ．２６４エンコードプログラム４３によるエンコード結果をメインメモリ１４から入出力デバイス１６へ、入出力制御装置１５を経由して出力する。
【００３０】
なお、ＭＰＥＧ−２デコードプログラム４２を実行するＶＰＵ１２が、制御プログラム４１を実行するＭＰＵ１１に対して送信するデータに、ＭＰＥＧ−２形式のデコード処理過程で得られるデータを追加情報として含めても良い。この場合、ＶＰＵ１２はこの追加情報を利用してＨ．２６４エンコードプログラム４３を実行することが出来、Ｈ．２６４形式のエンコード処理を高速に行うことが可能である。
【００３１】
次に、上記計算機システム１０において、デコードして得られた動画像データ（フレーム画像データ）をメインメモリへ格納させる際の詳細について説明する。図４は、デコードして得られた１枚のフレームの模式図である。図示するように、１枚のフレームは（Ｓ×Ｔ）個（Ｓ、Ｔは自然数）のピクセルの集合によって描画される。例えばＳ＝４８０、Ｔ＝７２０等である。
【００３２】
フレーム画像データは、輝度成分Ｙ、色差成分Ｕ、及び色差成分Ｖとして取り扱われる。図５は、１枚のフレームの模式図であり、特に輝度成分Ｙについて示している。輝度成分Ｙはピクセル毎に与えられるデータであり、当該ピクセルの輝度に関する情報である。以下、輝度成分ＹをＹ（ｉ、ｊ）と呼ぶことがある。ｉはフレーム中の縦方向の位置を示し、フレームの上から下に向かって１〜Ｓのいずれかの値を取る。ｊはフレーム中の横方向の位置を示し、フレームの左から右に向かって１〜Ｔのいずれかの値を取る。従って、フレームの最も左上の輝度成分ＹはＹ（１，１）であり、最も右下の輝度成分ＹはＹ（Ｓ，Ｔ）となる。
【００３３】
色差成分Ｕ、Ｖは色に関する情報であり、隣接するピクセル間における赤色成分と緑色成分の差分を示す情報である。色差成分Ｖは、隣接するピクセル間における青色成分と緑色成分の差分を示す情報である。そして色差成分Ｕ、Ｖは、４つのピクセル毎に与えられる。すなわち、隣接する４ピクセル間の色の差分情報を示す。従って、色差成分Ｕ、Ｖの成分数は、輝度成分Ｙの総成分数の１／４である。図６及び図７は１枚のフレームの模式図であり、それぞれ色差成分Ｕ、Ｖについて示している。以下、色差成分ＵをＵ（ｋ、ｌ）と呼ぶことがある。ｋはフレーム中の縦方向の位置を示し、フレームの上から下に向かって１〜（Ｓ／２）のいずれかの値を取る。ｌはフレーム中の横方向の位置を示し、フレームの左から右に向かって１〜（Ｔ／２）のいずれかの値を取る。従って、フレームの最も左上の色差成分ＵはＵ（１，１）であり、最も右下の色差成分ＵはＵ（Ｓ／２，Ｔ／２）となる。色差成分Ｖも同様である。なお、輝度成分Ｙの縦方向及び横方向の成分数は、常に１６の倍数である。これはＭＰＥＧ−２のデコード処理が、輝度成分Ｙは（１６×１６）ピクセル単位、色差成分Ｕ、Ｖは（８×８）ピクセル単位で行われるためである。この単位を、以下ではマクロブロックＭＢと呼ぶ。なお、一つの輝度成分Ｙ、色差成分Ｕ、Ｖは、それぞれ１バイトのデータ量を有する。従って、一つのマクロブロックＭＢに含まれる輝度成分Ｙのデータ量の総和は２５６バイトである。
【００３４】
マクロブロックについて図８を用いて説明する。図８は１枚のフレームの模式図であり、マクロブロックについて示している。図示するように、１枚のフレームには（Ｍ×Ｎ）個のマクロブロックＭＢが含まれており、各マクロブロックＭＢは（１６×１６）個のピクセルを含んでいる。以下、マクロブロックＭＢをＭＢ（ｍ、ｎ）と呼ぶことがある。ｍはフレーム中の縦方向の位置を示し、フレームの上から下に向かって１〜（Ｓ／１６）のいずれかの値を取る。ｎはフレーム中の横方向の位置を示し、フレームの左から右に向かって１〜（Ｔ／１６）のいずれかの値を取る。従って、フレームの最も左上のマクロブロックＭＢはＭＢ（１，１）であり、最も右下のマクロブロックＭＢはＭＢ（Ｍ，Ｎ）となる。
【００３５】
図９はマクロブロックＭＢ（１，１）の模式図であり、特に輝度成分Ｙについて示している。前述の通り、１つのマクロブロックＭＢには（１６×１６）個のピクセルを含んでいる。従って、輝度成分Ｙの成分数も（１６×１６）個であり、縦方向にはＹ（１、ｊ）〜Ｙ（１６、ｊ）、横方向にはＹ（ｉ、１）〜Ｙ（ｉ、１６）が含まれる。
【００３６】
図１０はマクロブロックＭＢ（１，１）の模式図であり、特に色差成分Ｕについて示している。色差成分Ｕの成分数は（８×８）個であり、縦方向にはＵ（１、ｌ）〜Ｕ（８、ｌ）、横方向にはＵ（ｋ、１）〜Ｕ（ｋ、８）が含まれる。色差成分Ｖも同様である。
【００３７】
図１１は、マクロブロックＭＢ（１，１）に縦方向で隣接するマクロブロックＭＢ（２，１）の模式図であり、特に輝度成分Ｙについて示している。マクロブロックＭＢ（１，１）とマクロブロックＭＢ（２，１）に含まれるピクセルの位置は、横方向に関しては同一である。従って、マクロブロックＭＢ（２，１）に含まれる輝度成分Ｙは、縦方向にはＹ（１７、ｊ）〜Ｙ（３２、ｊ）、横方向にはＹ（ｉ、１）〜Ｙ（ｉ、１６）である。
【００３８】
図１２は、マクロブロックＭＢ（１，１）に横方向で隣接するマクロブロックＭＢ（１，２）の模式図であり、特に輝度成分Ｙについて示している。マクロブロックＭＢ（１，１）とマクロブロックＭＢ（１，２）に含まれるピクセルの位置は、縦方向に関しては同一である。従って、マクロブロックＭＢ（１，２）に含まれる輝度成分Ｙは、縦方向にはＹ（１、ｊ）〜Ｙ（１６、ｊ）、横方向にはＹ（ｉ、１７）〜Ｙ（ｉ、３２）である。
【００３９】
図１３はメインメモリ１４のメモリ空間の模式図であり、デコードして得られたフレーム画像データをＶＰＵ１２が如何にしてメインメモリ１４に格納するかを示す図である。
【００４０】
図示するように、メインメモリ１４には、各マクロブロックＭＢの輝度成分Ｙが連続したアドレスでまとめて配置され、次に色差成分Ｕ、Ｖが連続したアドレスでまとめて配置される。
【００４１】
輝度成分Ｙ及び色差成分Ｕ、Ｖは、フレームの最も左上に位置するマクロブロックＭＢ（１，１）から、縦方向に順番にメインメモリ１４に格納される。そして最も下のマクロブロック（Ｍ，１）まで格納されると、次に横方向の位置がずれたマクロブロックＭＢ（１，２）から、縦方向に順番にメインメモリ１４に格納される。すなわち、まずマクロブロックＭＢ（１，１）からマクロブロックＭＢ（Ｍ，１）が順番にメインメモリ１４に格納され、次にマクロブロック（１，２）からマクロブロックＭＢ（Ｍ，２）が順番にメインメモリ１４に格納され、最後にマクロブロック（１、Ｎ）からマクロブロックＭＢ（Ｍ，Ｎ）が順番にメインメモリ１４に格納される。
【００４２】
各マクロブロックＭＢに含まれる輝度成分Ｙのメインメモリ１４中における配置について図１４を用いて説明する。図１４はメインメモリ１４のメモリ空間の模式図であり、マクロブロックＭＢ（１，１）〜ＭＢ（Ｍ，１）及びマクロブロックＭＢ（１，２）〜ＭＢ（Ｍ，２）の輝度成分Ｙが保持される領域について示している。
【００４３】
図示するように、まずマクロブロックＭＢ（１，１）における１行目のピクセルの輝度成分Ｙ（１，１）〜Ｙ（１，１６）が格納される。続いてマクロブロックＭＢ（１，１）における２行目のピクセルの輝度成分Ｙ（２，１）〜Ｙ（２，１６）が格納される。引き続き、３行目から１６行目の輝度成分Ｙが格納される。
【００４４】
次にマクロブロックＭＢ（２，１）における１行目のピクセルの輝度成分Ｙ（１７，１）〜Ｙ（１７，１６）が格納され、引き続き２行目から１６行目の輝度成分Ｙが格納される。
【００４５】
このようにしてマクロブロックＭＢ（Ｍ，１）までの輝度成分Ｙが順次メインメモリ１４に格納されると、次にマクロブロックＭＢ（１，２）における１行目のピクセルの輝度成分Ｙ（１，１７）〜Ｙ（１，３２）が格納される。以下、マクロブロックＭＢ（１，２）と横方向の位置が同一であるマクロブロックＭＢ（２，２）〜ＭＢ（Ｍ，２）が順次格納される。
【００４６】
次に、各マクロブロックＭＢに含まれる色差成分Ｕ、Ｖのメインメモリ１４中における配置について図１５を用いて説明する。図１５はメインメモリ１４のメモリ空間の模式図であり、マクロブロックＭＢ（１，１）〜ＭＢ（Ｍ，１）の色差成分Ｕ、Ｖが保持される領域について示している。
【００４７】
図示するように、まずマクロブロックＭＢ（１，１）における１行目の色差成分Ｕ（１，１）〜Ｕ（１，８）が格納され、更に色差成分Ｖ（１，１）〜Ｖ（１，８）が格納される。続いてマクロブロックＭＢ（１，１）における２行目の色差成分Ｕ（２，１）〜Ｕ（２，８）が格納され、更に色差成分Ｖ（２，１）〜Ｖ（２，８）が格納される。引き続き、３行目から８行目の色差成分Ｕ、Ｖが格納される。
【００４８】
上記のようなデータのメモリ配置を、フレーム内における輝度成分配置により説明する。図１６は１枚のフレームの模式図であり、特に輝度成分Ｙについて示している。図示するように、フレームの横方向が、マクロブロックの横幅と同一である１６バイトの複数の矩形の領域ＡＡ１に分割される。そして各領域ＡＡ１内において、横方向に順番に輝度成分がメインメモリ１４へ格納される。すなわち、領域ＡＡ１内において最も左上の領域から横方向に順番に輝度成分がメインメモリ１４へ格納され、領域の端部まで格納されると、次の行について同様にして輝度成分がメインメモリ１４へ格納される。当該領域ＡＡ１における全ての輝度成分がメインメモリ１４へ格納されると、次に横方向で隣接する領域ＡＡ１について同様の方法により輝度成分がメインメモリ１４へ格納される。
【００４９】
図１７は色差成分Ｕ、Ｖの場合について示している。図示するように、フレームの横方向が、マクロブロックの横幅と同一である８バイトの複数の矩形の領域ＡＡ２（色差成分Ｕについて）、ＡＡ３（色差成分Ｖについて）に分割される。そして各領域ＡＡ１、ＡＡ２内において、横方向に順番にメインメモリ１４へ格納される。すなわち、領域ＡＡ１内において最も左上の領域から右方向に向かって色差成分Ｕがメインメモリ１４へ格納され、領域ＡＡ１の端部まで格納されると、次に領域ＡＡ２内において最も左上の色差成分Ｖからメインメモリ１４へ格納される。領域ＡＡ２において領域の端部まで色差成分Ｖの格納が終了すると、同様の方法により次の行の色差成分Ｕ、Ｖがメインメモリ１４へ格納される。当該領域ＡＡ１、ＡＡ２における全ての色差成分Ｕ、Ｖのメインメモリ１４への格納が終了すると、次に横方向で隣接する領域ＡＡ１、ＡＡ２について同様の方法により色差成分Ｕ、Ｖのメインメモリ１４への格納が行われる。
【００５０】
以上のようにして、ＭＰＥＧ−２形式の画像データが、輝度成分と色差成分とが分離されるようにして、メインメモリに格納される。その後、Ｈ．２６４エンコードプログラム４３に基づいて、ＶＰＵ１２の各々がＨ．２６４形式によるエンコード処理を行う。すなわち、輝度成分と色差成分とが分離されるようにして格納された画像データをメインメモリ１４から読み出し、Ｈ．２６４形式にエンコードする。そして、メモリコントローラ３３が、処理ユニット３１におけるエンコード結果をメインメモリ１４に格納する。
【００５１】
以上のように、この発明の実施形態に係る計算機システムであると、データの転送効率を向上出来る。以下、本効果について説明する。  
図１８はフレームの模式図であり、ラスタスキャン順にデータをメインメモリに保持させる様子を示している。図示するように、フレーム内においてフレームの左端上部からスキャンを開始し、フレームの右端まで連続してスキャンを行った後、次の行について同様にスキャンを行う。すなわち、フレームの左端から右端に達するまで順番にデータがメインメモリに保持される。従って、Ｔ＝７２０の場合には、横方向の位置が同一で、縦方向が隣接するピクセルの輝度成分のメインメモリにおけるアドレスは、７２０バイト異なる。
【００５２】
以上のようなデータのメモリ格納方法を用いた場合に、１つのマクロブロックの輝度成分Ｙをメインメモリから読み出す際の様子を図１９に示す。図１９はフレームの模式図である。  
前述の通り、ＤＭＡ転送を行う場合には、その転送データの単位は一定値に制限されるのが通常であり、例えば１２８バイトである。そのため、ラスタスキャン順にデータをメモリに格納する方法であると、１つのマクロブロックＭＢの輝度成分Ｙを読み出すには、ＤＭＡ転送を１６回行い、合計で２０４８バイトのデータを転送する必要がある。その理由は次の通りである。
【００５３】
１度のＤＭＡ転送によりメインメモリ１４から読み出されるデータは、メインメモリ１４においてアドレスが連続した１２８バイトのデータである。すると、上記方法であると、フレームの左端から右端までの１行分の輝度成分Ｙが、連続したアドレスでメインメモリに保持される。従って図１９に示すように、１度のＤＭＡ転送によりデータをメインメモリからＶＰＵへ転送したとしても、そのうち必要なデータは、最大でも１６バイトに過ぎない。その他の１１２バイトは不要なデータである。つまりＶＰＵ内のローカルメモリは、１度のＤＭＡ転送ではマクロブロックＭＢのうちの１行分のデータしか取得することが出来ない。従って、マクロブロックＭＢにおける１６行分のデータを取得するには、最低でも１６回のＤＭＡ転送を行わなくてはならない。すると、１度のＤＭＡ転送で転送されるデータサイズは１２８バイトであるから、１つのマクロブロックＭＢのデータを転送する際には、１２８バイト×１６回＝２０４８バイトのデータを転送しなければならない。すなわち、２０４８−１２８＝１９２０バイトのデータは無駄に転送されることになる。
【００５４】
また、輝度成分Ｙだけでなく色差成分Ｕ、Ｖについても同様のことが当てはまる。多くの場合、ＭＰＥＧ−２やＨ．２６４ではそのアルゴリズムの関係から、色差成分Ｕ、色差成分Ｖは、おなじ座標のマクロブロックの成分を同時に利用する。すると、ラスタスキャン順での配置の場合、まず色差成分Ｕの１マクロブロックの成分をメインメモリからローカルストレージに転送するのに８回のＤＭＡ転送が必要である。また同様に色差成分Ｖの１マクロブロックの成分をメインメモリからローカルストレージに転送するのに８回のＤＭＡ転送が必要となる。従って、必要な１２８バイトのデータを取得するために、合計２０４８バイトのデータを転送する必要がある。このように既存手法であると、ＤＭＡ転送を行う際に、必要なデータ量よりも多くのデータを転送する。従って、バスの帯域を圧迫し、プログラムの実行速度が低下するという問題があった。
【００５５】
しかし本実施形態に係る構成であると、図１３乃至図１７を用いて説明したように、メインメモリ１４への輝度成分Ｙ及び色差成分Ｕの格納は、１マクロブロック単位に行を変えて行われる。すなわち、メインメモリ１４には１マクロブロック分の２５６バイトのデータが、連続したアドレスで配置される。従って、１マクロブロック分の成分をメインメモリ１４からローカルストレージ３２へＤＭＡ転送する際の転送効率が向上する。この点について、図２０を用いて説明する。図２０はフレームの模式図であり、１つのマクロブロックの輝度成分Ｙをメインメモリから読み出す際の様子を示している。
【００５６】
前述の通り、マクロブロックＭＢの輝度成分は、メインメモリ１４において連続したアドレスで配置されている。従って、図示するように、ある１つのマクロブロックＭＢの成分をメインメモリ１４からローカルストレージ３２へ読み出す場合、当該マクロブロックＭＢの最も左上の成分を先頭アドレスとすることで、図示する領域Ａのデータを１回のＤＭＡ転送によりローカルストレージ３２に読み出すことが出来る。また、次に領域Ａの最終アドレスの次のアドレスを先頭アドレスとすることで、図示する領域Ｂのデータを１回のＤＭＡ転送で読み出すことが出来る。すなわち、既存のラスタスキャン順による配置では１６回のＤＭＡ転送が必要であったのに対し、本実施形態に係る方法であると２回のＤＭＡ転送を行えば十分であり、回数を１／８に減らすことが出来る。更に本実施形態であると、無駄なデータの転送を避けられる。すなわち、２回のＤＭＡ転送により転送される２５６バイトのデータは、全てが必要なマクロブロックＭＢの輝度成分である。従って、既存のラスタスキャンの場合に比べて、接続装置１３を通過するデータ量は２５６／２０４８＝１／８となる。その結果、ＤＭＡ転送による転送量を削減することが出来、バスの帯域圧迫を抑制出来る。色差成分Ｕ、Ｖについても同様である。
【００５７】
なお、上記説明は１２８バイト単位でＤＭＡ転送を行う場合であるが、２５６バイト単位でＤＭＡ転送を行う場合には、領域Ａ、Ｂは連続したアドレスでメインメモリ１４に格納されているから、１度のＤＭＡ転送のみで済む。
【００５８】
図２１は別の例について示している。図２１はフレームの模式図であり、読み出すべき（１６×１６）個の輝度成分Ｙが、複数のマクロブロックＭＢにまたがるデータの場合を示している。
【００５９】
図示するように、読み出すべき（１６×１６）個の輝度成分Ｙが複数のマクロブロックＭＢにまたがって存在する場合には、各々が１２８バイトである４つの領域Ａ、Ｂ、Ｃ、Ｄにおける輝度成分Ｙを読み出せば良い。この場合、ＤＭＡ転送されるデータ量は１２８バイト×４＝５１２バイトであり、そのうちの２５６バイトは無駄なデータであるが、その量は既存手法に比べて圧倒的に少なく済む。すなわち、１回目の転送により領域Ａ、Ｂのデータを転送し、次の転送により領域Ｃ、Ｄのデータを転送すれば良い（２５６バイト単位でのＤＭＡ転送）。
【００６０】
特に、本実施形態は動き予測に関する処理において効果的である。動き予測とは、連続する２つのフレームにまたがるデータ圧縮に関するものである。すなわち、２つの連続するフレームをデルタ解析してフレーム間で各エリアが変化したか、どのように移動したかを判断する。ある画像エリアが１つの前のフレームと同一であれば、そのフレームと同じように表示すれば良い。また、画像エリアがいずれかの方向へ移動した場合には、表示すべき画像は１つの前のフレームと同一であり、それを特定の方向へある量だけ動かせば良い。これは、ＶＰＵ１１において動きベクトル（ＭＶ：Motion Vector）を生成することによって行われる。このように、動きベクトルを求めることにより、冗長なデータを大幅に削減出来る。
【００６１】
動き予測を行うためにＶＰＵ１１は、現在のフレームに時間的に近いフレーム（例えば直前のフレーム、２つ前のフレーム、または２つ後のフレームなど）と現在のフレームとの間で、マクロブロック単位によるテンプレートマッチングを行う。図２２は、２つのフレーム間で物体（object）が移動する様子を示している。例えば時刻ｔ１（フレーム１）において表示されていた物体が、時刻ｔ２（フレーム２）において図示するような動きベクトルＭＶにより示されるように移動したとする。この動きベクトルＭＶを生成する際に、メインメモリ１４から直前の時刻におけるマクロブロックＭＢを読み出す必要がある。この点、本実施形態であると、マクロブロックＭＢのデータを効率的に読み出すことが出来るため、動き補償に関する処理を効率化出来る。
【００６２】
また、ＭＰＥＧ−２、Ｈ．２６４は共に１６ピクセル×１６ピクセルのサイズのマクロブロックを利用しているため、本実施形態を用いることによる計算量の増加は少ない。
【００６３】
更に本実施形態では、ＭＰＥＧ−２とＨ．２６４を利用しているためマクロブロックサイズの横幅である１６ピクセルで折り返すようにしている。しかし、動画の符号化方式によってマクロブロックは一定ではない。従って、折り返すピクセル数は１６ピクセルに制限せず、動画の符号化方式によって最適なピクセル数で折り返すことができる。
【００６４】
更に本実施形態では、ＭＰＥＧ−２、Ｈ．２６４は共に入出力のデータ形式がＹ：Ｕ：Ｖ＝４：２：０形式を利用しているため、色差成分Ｕと色差成分Ｖを８ピクセルずつ結合することにより１６ピクセルとして、この１６ピクセル毎に折り返している。しかし、画素データの形式はＹ：Ｕ：Ｖ＝４：２：０に限定しない。たとえば、色差成分Ｕ、Ｖの横幅及び縦幅が共にＹ：Ｕ：Ｖ＝４：２：０形式の２倍となるＹ：Ｕ：Ｖ＝４：４：４形式の動画データを保持しても良い。この場合には、色差成分Ｕ、Ｖは共に、輝度成分Ｙと同じ形式で保持することで、効率的に画素データへアクセスができる。また、全ての成分の縦幅、横幅が等しく、赤色成分Ｒ、緑色成分Ｇ、青色成分Ｂで動画データを表現するＲＧＢ形式を利用する場合は、それぞれを輝度成分Ｙと同じ形式で保持することで、効率的に画素データへアクセスができる。
【００６５】
また、上記実施形態では、ＭＰＥＧ−２デコード及びＨ．２６４エンコードの場合を例に挙げて説明したが、圧縮符号化形式は特に限定されない。あるピクセルの集合で画像を処理する（メモリから読み出す）圧縮符号化形式全般に、本実施形態は適用可能である。更に上記実施形態は、ＭＰＥＧ−２形式のデータをデコードした後、Ｈ．２６４形式にエンコードする場合を例に説明したが、例えばＭＰＥＧ−２形式のデータをデコードするだけの処理の場合、またはＨ．２６４形式にエンコードするのみの処理の場合にも適用出来ることは言うまでもない。
【００６６】
更に上記実施形態では、画像の符号化及び復号化の単位であるマクロブロック単位でアドレスが連続するように、データがメインメモリ１４に格納される場合を例に挙げて説明した。しかし、マクロブロックは単位の一例に過ぎず、画像処理に使用する処理単位であれば限定されるものではない。例えばＭＰＥＧ−２形式のデータをデコードした画像データに対して使用されるデブロッキングフィルタ（Deblocking filter）やデリンギングフィルタ（Deringing filter）で使用する単位であっても良い。デブロッキングフィルタとは次のようなものである。異なるマクロブロック間では、互いのピクセル情報が圧縮スキームに考慮されない。従って、隣接するブロック間において、ピクセルの輝度につきアーティファクトが生じる場合がある。これは通常ブロックノイズ（block noise）と呼ばれている。そこで、隣接するマクロブロックの境界を挟んで隣接する複数のピクセル群を用いてフィルタリング処理を行うことでブロックノイズを除去するのがデブロッキングフィルタである。この際のフィルタリング処理に用いるピクセル群を、上記マクロブロックに代えても良い。また、画像には高周波成分に起因するリンギングノイズ（ringing noise）が発生することがある。この場合、ノイズが発生した領域を含む複数のピクセル群につきフィルタリングを行い、画像を平滑化する処理が行われる。これがデリンギングフィルタである。従って、上記マクロブロックの代わりに、デリンギングフィルタにおけるフィルタリング処理に用いられるピクセル群を単位としても良い。また、上実施形態は、画像の符号化及び復号化の場合に限定されるものではなく、複数のピクセルを含む処理単位による画像処理一般に適用出来る。また、上記実施形態における計算機システムに入力される、または出力される画像データは、符号化されていない画像データであっても良い。
【００６７】
また、上記実施形態に係る方法によってメインメモリに格納した映像を出力デバイスに再生する場合には、図１８に示すようなデータの配列に配置し直すことが望ましい。この処理は、計算機システム１０内に新たに設けたデバイスに行わせても良いし、ＶＰＵ１１が行っても良いし、または出力デバイスが行っても良い。
【００６８】
本実施形態では、フレームをマクロブロックと同一の幅の矩形の領域に区切るだけでなく、図１３に示すように輝度成分Ｙと色差成分Ｕ、Ｖとを分離してメインメモリ１４に保持させている。つまり、まず全てのマクロブロックについての輝度成分Ｙをメインメモリ１４に保持させ、この領域とは異なる領域に色差成分Ｕ、Ｖを保持させる。通常の画像処理においては、色差成分Ｕ、Ｖは使用せずに輝度成分Ｙのみを使用する場合も多い。従って、輝度成分Ｙと色差成分Ｕ、Ｖとを混在させずに完全に分離することにより、データ転送をより効率的に行うことが可能となる。仮に、フレームを矩形の領域に区切って、輝度成分Ｙと色差成分Ｕ、Ｖとを混在させてメインメモリに保持させたとすると、図２１に示すマクロブロックを読み出す場合には、領域Ａ、Ｂ、Ｃ、Ｄについての４回のデータ転送が必要である。従って、各領域Ａ、Ｂ、Ｃ、Ｄの先頭アドレスを計算しなければならず、本実施形態に係る方法に比べて２倍のデータ転送回数及びアドレス計算回数が必要となる。
【００６９】
このように、輝度成分Ｙと色差成分Ｕ、Ｖとを分離するための処理について図２３を用いて説明する。図２３はＭＰＥＧ−２デコードプログラム４２におけるデコード及びデータ転送方法のフローチャートである。Ｈ．２６４の場合も同様である。
【００７０】
図示するように、まずｍ＝１、ｎ＝１とされる（ステップＳ１）。すなわち、マクロブロックＭＢ（１、１）が選択される。そして、各ＶＰＵ１２はマクロブロック単位でデコード処理を行う（ステップＳ２）。そして、メモリコントローラ３３がＤＭＡにより輝度成分Ｙをメインメモリ１４へ転送することにより、輝度成分Ｙがメインメモリ１４へ格納される（ステップＳ３）。更に、メモリコントローラ３３は色差成分Ｕ、ＶをＤＭＡによりメインメモリ１４へ転送する（ステップＳ４）。ｎがＮに達していなければ（ステップＳ５、ＮＯ）、すなわち、フレームにおける右端に位置するマクロブロックのデコードが完了していなければ、ｎ＝ｎ＋Δｎとして（ステップＳ６）、右方向で隣接するマクロブロックについてステップＳ２〜Ｓ４の処理を繰り返す。
【００７１】
ｎ＝Ｎであれば（ステップＳ５、ＹＥＳ）、次にｍがＭに達しているか否かを判定する。ｍがＭに達していなければ（ステップＳ７、ＮＯ）、すなわち、フレームにおける下端に位置するマクロブロックのデコードが完了していなければ、ｍ＝ｍ＋Δｍとして（ステップＳ８）、下方向で隣接するマクロブロックについてステップＳ２〜Ｓ６の処理を繰り返す。
【００７２】
ステップＳ３において、同一行のマクロブロックをメインメモリ１４に格納する際には、マクロブロックのサイズが２５６バイトであった場合、（２５６×Ｍ）バイト間隔で輝度成分Ｙを格納する。またステップＳ４において同一行のマクロブロックをメインメモリ１４に格納する際には、ＭＢ（１、１）の輝度成分Ｙが格納される先頭アドレスから、少なくとも（２５６×Ｍ）×Ｎバイト先の領域に、色差成分Ｕ、Ｖを格納する。この点についてまず図２４に示す。図２４は、ｍ＝１、ｎ＝１〜ＮのマクロブロックＭＢ（１，１）〜ＭＢ（１，Ｎ）をメインメモリ１４に格納する際の、メインメモリ１４のメモリ空間とフレームとを示す模式図である。
【００７３】
図示するように、マクロブロックＭＢ（１，１）、ＭＢ（１，２）、…ＭＢ（１，Ｎ）の輝度成分は、メインメモリ１４において（２５６×Ｍ）バイト間隔で格納される。またマクロブロックＭＢ（１，１）の色差成分Ｕ、Ｖは、マクロブロックＭＢ（１，１）の輝度成分Ｙの先頭アドレスから（（２５６×Ｍ）×Ｎ）バイト先の領域に格納される。なお、色差成分Ｕ、Ｖは（１２８×Ｍ）バイト間隔で格納される。
【００７４】
図２５は、ｍ＝２、ｎ＝１〜ＮのマクロブロックＭＢ（２，１）〜ＭＢ（２，Ｎ）をメインメモリ１４に格納する際の、メインメモリ１４のメモリ空間とフレームとを示す模式図である。図示するように、マクロブロックＭＢ（２，１）の輝度成分は、マクロブロックＭＢ（１，１）が格納された領域にアドレスが連続するようにしてメインメモリ１４に格納される。そしてマクロブロックＭＢ（２，１）、ＭＢ（２，２）、…ＭＢ（２，Ｎ）の輝度成分Ｙは、メインメモリ１４において（２５６×Ｍ）バイト間隔で格納される。またマクロブロックＭＢ（２，１）の色差成分Ｕ、Ｖは、マクロブロックＭＢ（１，１）の色差成分Ｕ、Ｖが格納された領域にアドレスが連続するようにしてメインメモリ１４に格納される。すなわち、マクロブロックＭＢ（２，１）の色差成分Ｕ、Ｖは、マクロブロックＭＢ（２，１）の輝度成分Ｙの先頭アドレスから（（２５６×Ｍ）×Ｎ）バイト先の領域に格納される。  
以上のようにして各成分をメインメモリ１４に格納することにより、図１３に示すようなデータ配置が可能となる。
【００７５】
上記のように、この発明の実施形態によれば、複数のプロセッサコアでメインメモリを共有しており、且つメインメモリとローカルな記憶領域の間をデータ転送する際の転送サイズに制限があるプロセッサシステムを用いた動画処理システムにおいて、動画の各フレームの画像データを縦方向に分割して保持する動画データ保持方式を利用することで、メインメモリとローカルな記憶領域の間のデータ転送するための転送量と転送回数を削減出来る。
【００７６】
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。
【図面の簡単な説明】
【００７７】
【図１】この発明の実施形態に係る計算機システムのブロック図。
【図２】この発明の実施形態に係る計算機システムにおいて実行されるプログラムの概念図。
【図３】この発明の実施形態に係る計算機システムにおいて実行されるプログラムのタイミングチャート。
【図４】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図。
【図５】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に輝度成分について示す図。
【図６】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に色差成分について示す図。
【図７】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に色差成分について示す図。
【図８】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特にマクロブロックについて示す図。
【図９】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に１つのマクロブロックの輝度成分について示す図。
【図１０】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に１つのマクロブロックの色差成分について示す図。
【図１１】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に１つのマクロブロックの輝度成分について示す図。
【図１２】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、特に１つのマクロブロックの輝度成分について示す図。
【図１３】この発明の実施形態に係る計算機システムの備えるメインメモリのメモリ空間の概念図であり、マクロブロックを格納する様子を示す図。
【図１４】この発明の実施形態に係る計算機システムの備えるメインメモリのメモリ空間の概念図であり、輝度成分を格納する様子を示す図。
【図１５】この発明の実施形態に係る計算機システムの備えるメインメモリのメモリ空間の概念図であり、色差成分を格納する様子を示す図。
【図１６】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、輝度成分についてラスタスキャンの様子を示す図。
【図１７】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、色差成分についてラスタスキャンの様子を示す図。
【図１８】フレームの模式図であり、従来のラスタスキャンの様子を示す図。
【図１９】フレームの模式図であり、従来のラスタスキャン順にデータを格納した場合のデータの読み出しの様子を示す図。
【図２０】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、メインメモリからデータを読み出す際の様子を示す図。
【図２１】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、メインメモリからデータを読み出す際の様子を示す図。
【図２２】この発明の実施形態に係る計算機システムにおいて処理されるフレームの模式図であり、動きベクトルを示す図。
【図２３】この発明の実施形態に係る計算機システムにおけるデータ転送方法のフローチャート。
【図２４】この発明の実施形態に係る計算機システムの保持するメインメモリのメモリ空間と、フレームを示す模式図であり、特に１行目のマクロブロックのデータをメインメモリに格納する様子を示す図。
【図２５】この発明の実施形態に係る計算機システムの保持するメインメモリのメモリ空間と、フレームを示す模式図であり、特に２行目のマクロブロックのデータをメインメモリに格納する様子を示す図。
【符号の説明】
【００７８】
１０…計算機システム、１１…マスタープロセッサユニット、１２…バーサタイルプロセッサユニット、１３…接続装置、１４…メインメモリ、１５…入出力制御装置、１６…入出力デバイス、２１、３１…処理ユニット、２２…メモリ管理ユニット、３２…ローカルストレージ、３３…メモリコントローラ、４０…プログラム、４１…制御プログラム、４２…ＭＰＥＧ−２デコードプログラム、４３…Ｈ．２６４エンコードプログラム
【図１】
2007293533.tif 000003
【図２】
2007293533.tif 000004
【図３】
2007293533.tif 000005
【図４】
2007293533.tif 000006
【図５】
2007293533.tif 000007
【図６】
2007293533.tif 000008
【図７】
2007293533.tif 000009
【図８】
2007293533.tif 000010
【図９】
2007293533.tif 000011
【図１０】
2007293533.tif 000012
【図１１】
2007293533.tif 000013
【図１２】
2007293533.tif 000014
【図１３】
2007293533.tif 000015
【図１４】
2007293533.tif 000016
【図１５】
2007293533.tif 000017
【図１６】
2007293533.tif 000018
【図１７】
2007293533.tif 000019
【図１８】
2007293533.tif 000020
【図１９】
2007293533.tif 000021
【図２０】
2007293533.tif 000022
【図２１】
2007293533.tif 000023
【図２２】
2007293533.tif 000024
【図２３】
2007293533.tif 000025
【図２４】
2007293533.tif 000026
【図２５】
2007293533.tif 000027