(57)【要約】【課題】データ転送の際に効率良くアクセスする。【解決手段】書き込みアドレス生成部１１は、外部から入力される書き込みマクロブロック位置情報２０４、アドレスオフセット２０５及びフレームサイズ２０６に基づき、書き込みデータ２０８の所定個のマクロブロックをＳＤＲＡＭ２のあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、ＳＤＲＡＭ２の同一バンクの同一ローアドレス又は異なるバンクに格納するように配置して、ＳＤＲＡＭ２のバンク、ロウアドレス及びカラムアドレスからなる書き込みアドレス２０７を生成する。【選択図】図１
2008146235.tif 000002
【特許請求の範囲】
【請求項１】
画像フレームを格納するフレームメモリとして、同期型ダイナミックラムを用いる画像処理装置において、
外部から入力される書き込みマクロブロック位置情報、アドレスオフセット及びフレームサイズに基づき、書き込みデータの所定個のマクロブロックを上記同期型ダイナミックラムのあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、上記同期型ダイナミックラムの同一バンクの同一ローアドレス又は異なるバンクに格納するように配置して、上記同期型ダイナミックラムのバンク、ロウアドレス及びカラムアドレスからなる書き込みアドレスを生成する書き込みアドレス生成部を備えたことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像フレームを格納するフレームメモリとして、同期型ダイナミックラム（ＳＤＲＡＭ：Synchronous Dynamic Random Access Memory)を用いる画像処理装置に関するものである。
【背景技術】
【０００２】
例えばＭＰＥＧ（Moving Picture Experts Group）等の動画像符号化方式の画像処理装置では、２次元の画像データを１６画素×１６画素や８画素×８画素といったマクロブロック（ＭＢ）と呼ばれる細かいブロックに分割して、このマクロブロック単位に処理を行う。また、通常表示や参照を行うために、画像フレームを一旦ＳＤＲＡＭ等のフレームメモリに格納する。
【０００３】
上記参照とは動き補償予測（ＭＣ；Motion Compensation）のことであり、動きベクトル情報に基づき時間的に先行して符号化又は復号されフレームメモリに格納された画像データから参照データを読み出し、現画像データとの差分を取ったり加算を行ったりする。このとき、動きベクトルの内容によっては、複数のマクロブロックに跨る領域を読み出す必要がある。
【０００４】
一方、ＳＤＲＡＭは、発行された複数のコマンドにより指定された２次元のアドレスに基づき、設定されたバースト長の領域に対してデータの書き込み／読み出しを行う記憶装置であり、１つの２次元のアドレス空間を並列にアクセス可能なバンクとすると、近年は複数のバンクを有するものが主流である。アクセス方法としては、バンク毎にプリチャージコマンド（プリチャージ付リード／ライトコマンドで代用される場合がある）、アクティブコマンド、リード／ライトコマンドの順にコマンドを発行してデータの読み出し／書き込みを行う。このとき、各コマンド間は一定の時間間隔が必要である。
【０００５】
連続して異なるアドレスに対してアクセスする場合には、同一バンクの同一ロウアドレス内であれば、リード／ライトアドレスだけを繰り返し発行するだけで良い。しかし、同一バンク内の異なるロウアドレスにアクセスする場合は、間にプリチャージコマンドとアクティブコマンドを発行しなければならず、余分なアクセスサイクルが生じてしまう。
【０００６】
また、同一ローアドレスの異なるバンクに対してアクセスを行う場合には、間にアクティブコマンドのみ発行するだけで良く、プリチャージコマンドを発行しなくても良い。さらに、複数のバンクは並列にアクセスできるので、コマンド間の隙間のサイクルにアクティブコマンドを発行することができれば、余分なアクセスサイクルが発生しない。
【０００７】
しかし、コマンドを発行したいサイクルに既に別なコマンドが埋まっており、コマンドの発行を遅らせなければならない場合等のように、うまくコマンド間の隙間に埋められない場合や、コマンド間隔の制約によっては余分なアクセスサイクルが発生する。このコマンド間隔がクロック１サイクルを超えると、間に１サイクル以上の余分なサイクルが生じる。例えば、クロック１サイクルが５ｎｓｅｃで、コマンド間隔の制約が６ｎｓｅｃとすると、コマンド間はクロック１サイクル空ける必要がある。
【０００８】
上記のように、余分なアクセスサイクルが発生しないようなフレームメモリマッピングがいくつか開示されている。例えば特許文献１や特許文献２では、上下左右に隣接するマクロブロックを異なるバンクになるよう配置することによって、データ転送の際に効率良くアクセスすることが可能なフレームメモリのマッピング方法が提案されている。
【０００９】
【特許文献１】特開平１０−１９１２３６号公報（段落００１８）
【特許文献２】特開平８−１８６８２６号公報（段落００１７）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従来の画像処理装置は以上のように構成され、主に２バンクのＳＤＲＡＭを対象としたフレームメモリのマッピングであり、スキャン中に同一バンクを連続的に異なるロウアドレスに対してアクセスする場合には、余分なアクセスサイクルが残っていたり、この余分なアクセスサイクルを省略するために、異なるバンクに対してアクセスを行う場合には、水平方向の順序が逆になりアドレス発生回路が複雑になるという課題があった。
【００１１】
しかし、近年のＳＤＲＡＭのバンク数は４が主流であり、上記特許文献１や上記特許文献２のようにバンク数が２の場合には、マッピングを工夫しても、同一バンクの異なるロウアドレスに対する連続アクセスを解消することはできず、データ転送の効率を低下させてしまうという課題があった。
【００１２】
この発明は上記のような課題を解決するためになされたもので、ＳＤＲＡＭのマクロブロック境界を跨いでアクセスする際に、同一バンクの異なるロウアドレスをアクセスすることがないように、フレームメモリのマッピングを行うことにより、データ転送の際に効率良くアクセスすることが可能な画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【００１３】
この発明に係る画像処理装置は、画像フレームを格納するフレームメモリとして、同期型ダイナミックラムを用いるものにおいて、外部から入力される書き込みマクロブロック位置情報、アドレスオフセット及びフレームサイズに基づき、書き込みデータの所定個のマクロブロックを上記同期型ダイナミックラムのあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、上記同期型ダイナミックラムの同一バンクの同一ローアドレス又は異なるバンクに格納するように配置して、上記同期型ダイナミックラムのバンク、ロウアドレス及びカラムアドレスからなる書き込みアドレスを生成する書き込みアドレス生成部を備えたものである。
【発明の効果】
【００１４】
この発明により、データ転送の際に効率良くアクセスすることができるという効果が得られる。
【発明を実施するための最良の形態】
【００１５】
実施の形態１．
図１はこの発明の実施の形態１による画像処理装置の構成を示すブロック図である。この画像処理装置はＳＤＲＡＭインタフェース部（ＳＤＲＡＭ  Ｉ／Ｆ部）１とＳＤＲＡＭ２を備えている。また、ＳＤＲＡＭインタフェース部１は、書き込みアドレス生成部１１、書き込みバッファ１２、読み出しアドレス生成部１３及び読み出しバッファ１４を備え、書き込みアドレス生成部１１は制御部１１１及びアドレス演算部１１２を備え、読み出しアドレス生成部１３は制御部１３１及びアドレス演算部１３２を備えている。
なお、この実施の形態１ではＳＤＲＡＭ２のバンク数を４とする。
【００１６】
書き込みアドレス生成部１１は外部からの指示を受けてＳＤＲＡＭ２の書き込みアドレス２０７を生成し書き込みコマンド２０３を出力する。
書き込みアドレス生成部１１の制御部１１１は、外部からの起動信号２０１を受けて、書き込みアドレス生成指示２０２をアドレス演算部１１２に出力すると共に、書き込みコマンド２０３をＳＤＲＡＭ２に出力する。
【００１７】
書き込みアドレス生成部１１のアドレス演算部１１２は、制御部１１１からの書き込みアドレス生成指示２０２を受けて、外部から入力される書き込みマクロブロック位置情報２０４、ＳＤＲＡＭ２に格納する領域の先頭アドレスを示すアドレスオフセット２０５及びフレームサイズ２０６に基づき、書き込みデータの所定個のマクロブロックをＳＤＲＡＭ２のあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、ＳＤＲＡＭ２の同一バンクの同一ローアドレス又は異なるバンクに格納するように配置して、ＳＤＲＡＭ２のバンク、ロウアドレス及びカラムアドレスからなる書き込みアドレス２０７を生成してＳＤＲＡＭ２に出力する。
このとき、アドレス演算部１１２は、書き込みマクロブロック位置情報２０４をもとに水平方向及び垂直方向の２次元アドレスを生成し、フレームサイズ２０６を使用して、生成した２次元アドレスをＳＤＲＡＭ２のマッピングに変換し、アドレスオフセット２０５を加算して書き込みアドレス２０７を生成する。
【００１８】
書き込みバッファ１２は、外部から入力されＳＤＲＡＭ２に書き込む１マクロブロック分の書き込みデータ（復号データ）２０８を水平パッキングされた状態で一時的に保持し、制御部１１１の指示に基づき、書き込みアドレス生成部１１から出力される書き込みコマンド２０３及び書き込みアドレス２０７に同期して、保持している書き込みデータ２０８をＳＤＲＡＭ２に出力する。
【００１９】
読み出しアドレス生成部１３は外部からの指示を受けてＳＤＲＡＭ２の読み出しアドレス２１６を生成し読み出しコマンド２１３を出力する。
読み出しアドレス生成部１３の制御部１３１は、外部からの起動信号２１１を受けて、読み出しアドレス生成指示２１２をアドレス演算部１３２に出力すると共に、読み出しコマンド２１３をＳＤＲＡＭ２に出力する。
【００２０】
読み出しアドレス生成部１３のアドレス演算部１３２は、制御部１３１からの読み出しアドレス生成指示２１２を受けて、外部から入力される読み出しマクロブロック位置情報２１４、動きベクトル情報２１５、アドレスオフセット２０５及びフレームサイズ２０６に基づき、ＳＤＲＡＭ２のバンク、ロウアドレス及びカラムアドレスからなる読み出しアドレス２１６を生成してＳＤＲＡＭ２に出力する。このとき、アドレス演算部１３２は、読み出しマクロブロック位置情報２１４に動きベクトル情報２１５を加算して、水平方向及び垂直方向の２次元アドレスを生成し、フレームサイズ２０６を使用して、生成した２次元アドレスをＳＤＲＡＭ２のマッピングに変換し、アドレスオフセット２０５を加算して読み出しアドレス２１６を生成する。
【００２１】
読み出しバッファ１４は、読み出しアドレス生成部１３から出力される読み出しコマンド２１３及び読み出しアドレス２１６に基づきＳＤＲＡＭ２から読み出された読み出しデータ（参照データ）２１７を水平パッキングされた状態で一時的に保持し、制御部１３１の指示に基づき保持している読み出しデータ２１７を外部に出力する。
【００２２】
この実施の形態１では、ＳＤＲＡＭ２のカラムアドレス幅を５１２、データのｂｉｔ幅を３２ｂｉｔとする。１フレームの水平方向の画素数は輝度データが１９２０画素、色差データは９６０画素とし、１マクロブロックの大きさは輝度データが１６画素×１６ライン、色差データが８画素×８ラインとする。１画素のｂｉｔ幅を８ｂｉｔとし、輝度データは水平方向４画素を、色差データはＣｂ，Ｃｒ２成分それぞれ水平２画素の合計４画素をパッキングして１アドレスに格納する。従って、色差データはＣｂ，Ｃｒ２成分をまとめて、１マクロブロックを１６画素×８ラインで扱う。
【００２３】
まずＳＤＲＡＭ２にデータを書き込む場合について説明する。
図２は書き込みデータ２０８における輝度データのＳＤＲＡＭ２へのフレームマッピング例を輝度マクロブロック単位で示す図である。図２では、輝度マクロブロック（輝度ＭＢ）を１６画素×１６ラインとし、画像空間上の輝度マクロブロックに割り当てられたＳＤＲＡＭ２のバンクＡ，Ｂ，Ｃ，Ｄと、ＳＤＲＡＭ２の各バンクＡ，Ｂ，Ｃ，Ｄのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックを示している。
【００２４】
図２に示すように、８個の輝度マクロブロックを同一バンクの１ロウアドレスの中に格納するように配置し、この８個の輝度マクロブロックを単位として、画像空間上の水平方向の輝度マクロブロックを２つのバンクに交互に格納するように配置し、画像空間上の垂直方向の偶数マクロブロックライン（０，２，４・・・）の輝度マクロブロックにはバンクＡ及びバンクＢを割り当て、奇数マクロブロックライン（１，３，５・・・）の輝度マクロブロックにはバンクＣ及びバンクＤを割り当てている。
【００２５】
図２では、例えば、輝度ＭＢ（０−０）から輝度ＭＢ（０−７）までをバンクＡに格納するように配置し、輝度ＭＢ（０−８）から輝度ＭＢ（０−１５）までをバンクＢに格納するように配置し、輝度ＭＢ（１−０）から輝度ＭＢ（１−７）までをバンクＣに格納するように配置し、輝度ＭＢ（１−８）から輝度ＭＢ（１−１５）までをバンクＤに格納するように配置する。
【００２６】
図３は図２に示すＳＤＲＡＭ２のバンクＡのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図であり、図４は図２に示すＳＤＲＡＭ２のバンクＢのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図であり、図５は図２に示すＳＤＲＡＭ２のバンクＣのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図であり、図６は図２に示すＳＤＲＡＭ２のバンクＤのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図である。
【００２７】
例えば、図３及び図４に示すように、図２の画像空間上の０マクロブロックラインにおける輝度ＭＢ（０−０）から輝度ＭＢ（０−１１９）は、バンクＡ及びバンクＢに８個の輝度マクロブロック単位で交互に格納するように配置し、図５及び図６に示すように、図２の画像空間上の１マクロブロックラインにおける輝度ＭＢ（１−０）から輝度ＭＢ（１−１１９）は、バンクＣ及びバンクＤに８個の輝度マクロブロック単位で交互に格納するように配置する。
【００２８】
図７は書き込みデータ２０８における色差データのＳＤＲＡＭ２へのフレームマッピング例を色差マクロブロック単位で示す図である。図７では、色差マクロブロックを８画素×８ラインとし、画像空間上の色差マクロブロックに割り当てられたＳＤＲＡＭ２のバンクＡ，Ｂ，Ｃ，Ｄと、ＳＤＲＡＭ２の各バンクＡ，Ｂ，Ｃ，Ｄのメモリ空間上のカラムアドレスとロウアドレスに配置された色差マクロブロックを示している。
【００２９】
図７に示すように、１６個の色差マクロブロックを同一バンクの１ロウアドレスの中に格納するように配置し、この１６個の色差マクロブロックを単位として、画像空間上の水平方向の色差マクロブロックを２つのバンクに交互に格納するように配置し、画像空間上の垂直方向の偶数マクロブロックライン（０，２，４・・・）の色差マクロブロックにはバンクＡ及びバンクＢを割り当て、奇数マクロブロックライン（１，３，５・・・）の色差マクロブロックにはバンクＣ及びバンクＤを割り当てている。
【００３０】
図７では、例えば、色差ＭＢ（０−０）から色差ＭＢ（０−１５）までをバンクＡに格納するように配置し、色差ＭＢ（０−１６）から色差ＭＢ（０−３１）までをバンクＢに格納するように配置し、色差ＭＢ（１−０）から色差ＭＢ（１−１５）までをバンクＣに格納するように配置し、色差ＭＢ（１−１６）から色差ＭＢ（１−３１）までをバンクＤに格納するように配置する。
【００３１】
このようにして、例えば、図７の画像空間上の０マクロブロックラインにおける色差ＭＢ（０−０）から色差ＭＢ（０−１１９）は、バンクＡ及びバンクＢに１６個の色差マクロブロック単位で交互に格納するように配置し、図７の画像空間上の１マクロブロックラインにおける色差ＭＢ（１−０）から色差ＭＢ（１−１１９）は、バンクＣ及びバンクＤに１６個の色差マクロブロック単位で交互に格納するように配置する。
【００３２】
図８は図２の画像空間上及びメモリ空間上の輝度マクロブロックのフレームマッピング例を画素単位で示す図である。図８に示すように、画像空間上の１ライン目（Ｌ０）から１６ライン目（Ｌ１５）までをＳＤＲＡＭ２のメモリ空間に順番に格納し、１個の輝度マクロブロックで６４アドレスを使用する。
【００３３】
図９は図７の画像空間上及びメモリ空間上の色差マクロブロックのフレームマッピング例を画素単位で示す図である。図９に示すように、画像空間上の１ライン目（Ｌ０）から８ライン目（Ｌ７）までをＳＤＲＡＭ２のメモリ空間に順番に格納し、１個の色差マクロブロックで３２アドレスを使用する。
【００３４】
なお、図２に示す輝度マクロブロック（輝度ＭＢ）のフレームマッピング例では、同一ロウアドレスの領域を横８ＭＢ×縦１ＭＢとしているが、同一ロウアドレスの領域を例えば横４ＭＢ×縦２ＭＢとしても良い。また、図７に示す色差マクロブロック（色差ＭＢ）のフレームマッピング例では、同一ロウアドレスの領域を横１６ＭＢ×縦１ＭＢとしているが、同一ロウアドレスの領域を例えば横８ＭＢ×縦２ＭＢとしても良い。
【００３５】
この図２から図９に示すフレームマッピングは図１に示す書き込みアドレス生成部１１のアドレス演算部１１２により行われる。すなわち、アドレス演算部１１２は、外部から入力される書き込みマクロブロック位置情報２０４、アドレスオフセット２０５及びフレームサイズ２０６に基づき、書き込みデータの所定個のマクロブロックをＳＤＲＡＭ２のあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、ＳＤＲＡＭ２の同一バンクの同一ローアドレス又は異なるバンクに格納するように配置する。
【００３６】
次にＳＤＲＡＭ２に格納されているデータを読み出す場合について説明する。
図１０は図２に示す画像空間上の輝度マクロブロックのフレームマッピング例の一部分を拡大した図であり、ここでは、図２に示すバンクＡに配置された輝度ＭＢ（０−７）、バンクＢに配置された輝度ＭＢ（０−８）、バンクＣに配置された輝度ＭＢ（１−７）、バンクＤに配置された輝度ＭＢ（１−８）の部分を示している。
ここで、図１０に示すように、バンクＡ，Ｂ，Ｃ，Ｄに跨った１７画素×９ラインの動き補償に使用する領域の輝度データを読み出すためにアクセスする場合を考える。
【００３７】
図１０に示すような１７画素×９ラインという領域に対するアクセスは、ＭＰＥＧ−２のフィールド予測に代表されるような動き補償でよく行われる。また、本例では使用するＳＤＲＡＭをクロックの立ち上がりと立ち下りの両方に同期してデータを転送するＤＤＲ（ダブルデータレート）−ＳＤＲＡＭとする。ＤＤＲ−ＳＤＲＡＭでは必然的に偶数アドレス分のデータにアクセスすることになり、さらに、水平４画素パッキングを行っているので、実際にアクセスする領域は図１０の斜線の部分の２４画素×９ラインとなる。
【００３８】
図１１は図１０に示す２４画素×９ラインのアクセス方法とデータの読み出しのタイミングチャートを示す図であり、図１１ではアクセス方法としてＰ，Ｑ，Ｒの三つの方法を示し、アクセス方法ＰではバンクＡ→バンクＣ→バンクＢ→バンクＤの順にアクセスし、アクセス方法ＱではバンクＡ→バンクＣ→バンクＢ→バンクＤの順にアクセスし、アクセス方法ＲではバンクＡ，Ｂ，Ｃ，Ｄ全体にわたり１ラインずつアクセスするものとする。なお、図１１に示すタイミングチャートにおいて、「ＰＡＬＬ」は全てのバンクＡ，Ｂ，Ｃ，Ｄをプリチャージさせるコマンドを示し、「ＡＣＴ＃（＃はバンクＡ，Ｂ．Ｃ，Ｄのいずれか）」は各バンクをアクティブにするコマンドを示し、「ＲＤ＃（＃はバンクＡ，Ｂ．Ｃ，Ｄのいずれか）」は各バンクのデータを読み出すコマンドを示している。
【００３９】
また、図１１に示すタイミングチャートでは、ＳＤＲＡＭ２のＡＣ特性（動的特性）によるコマンド間隔を次のように設定する。同一バンクにおけるプリチャージ−アクティブ間を３サイクル、同一バンクにおけるアクティブ−読み出し間隔を３サイクル、アクティブ−アクティブ間隔を２サイクル、同一バンクにおけるアクティブ−プリチャージ間隔を７サイクルとする。また、ＣＡＳレイテンシ（Column Address Strobe Latency)を２サイクルとし、バースト長を４サイクルとする。図１１のタイミングチャートに示すように、アクセス方法Ｐ，Ｑ，Ｒとも、同一バンクの異なるロウアドレスへのアクセスによるプリチャージコマンドを発行する必要がないために、約３５サイクルで転送が終了している。
【００４０】
図１１に示すアクセスは、図１の読み出しアドレス生成部１３のアドレス演算部１３２によりアドレスにより行われる。すなわち、アドレス演算部１３２は、制御部１３１からの読み出しアドレス生成指示２１２を受けて、外部から入力される読み出しマクロブロック位置情報２１４、動きベクトル情報２１５、アドレスオフセット２０５及びフレームサイズ２０６に基づき、ＳＤＲＡＭ２のバンク、ロウアドレス及びカラムアドレスからなる読み出しアドレス２１６を生成してＳＤＲＡＭ２に出力する。
【００４１】
図１２は図１０に示す輝度マクロブロックのフレームマッピング例を従来のフレームマッピング例に置き換えた図である。図１２では、図１０に示すバンクＣがバンクＢに置き換えられ、図１０に示すバンクＤがバンクＡに置き換えられている。
【００４２】
図１３は図１２に示す２４画素×９ラインのアクセス方法におけるデータの読み出しのタイミングチャートを示す図であり、図１３のアクセス方法としては、図１１に示すアクセス方法Ｐ，Ｑ，Ｒと同じである。また、コマンド間隔は図１１に示すタイミングチャートの場合と同じである。図１３のタイミングチャートに示すように、アクセス方法Ｐ，Ｑ，Ｒとも、同一バンクの異なるロウアドレスへのアクセスによりプリチャージコマンドを発行せざるを得ないため、転送が４０サイクル以上かかっている。
【００４３】
図１４は従来のフレームマッピング例でも特許文献２のようにロウアドレスが変わった場合にバンクも異なるようにアクセスするアクセス方法Ｓの場合のタイミングチャートを示す図である。なお、コマンド間隔は図１１に示すタイミングチャートの場合と同じである。図１４に示すように、アクセス方法Ｓとして、バンクＡ→バンクＢ→バンクＡ→バンクＢの順にアクセスしている。図１４のタイミングチャートに示すように、コマンド間隔の制約により、転送が４０サイクル以上かかっている。
【００４４】
このように、この実施の形態１では、書き込みデータの所定個のマクロブロックをＳＤＲＡＭ２のあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、ＳＤＲＡＭ２の同一バンクの同一ローアドレス又は異なるバンクに格納するように配置することにより、マクロブロックの境界を跨ぐような領域に対してアクセスを行う場合、従来例に比べて余分なサイクルが少なくなり、効率の良いアクセスが可能である。
【００４５】
次に１フレームを２フィールドに分割した場合のマクロブロックのＳＤＲＡＭ２の各バンクのメモリ空間へのフィールドマッピングについて説明する。
図１５は１フレームを２フィールドに分割した場合の書き込みデータ２０８における輝度データのＳＤＲＡＭ２へのフィールドマッピング例を輝度マクロブロック単位で示す図である。図１５では、輝度マクロブロック（輝度ＭＢ）を１６画素×８ラインとし、画像空間上の輝度マクロブロックに割り当てられたＳＤＲＡＭ２のバンクＡ，Ｂ，Ｃ，Ｄと、ＳＤＲＡＭ２の各バンクＡ，Ｂ，Ｃ，Ｄのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックを示している。
【００４６】
図１５に示すように、１６個の輝度マクロブロックを同一バンクの１ロウアドレスの中に格納するように配置し、この１６個の輝度マクロブロックを単位として、画像空間上の水平方向の輝度マクロブロックを２つのバンクに交互に格納するように配置し、画像空間上の垂直方向の偶数マクロブロックライン（０，２，４・・・）の輝度マクロブロックにはバンクＡ及びバンクＢを割り当て、奇数マクロブロックライン（１，３，５・・・）の輝度マクロブロックにはバンクＣ及びバンクＤを割り当てている。
【００４７】
図１５では、例えば、輝度ＭＢ（０−０）から輝度ＭＢ（０−１５）までをバンクＡに格納するように配置し、輝度ＭＢ（０−１６）から輝度ＭＢ（０−３１）までをバンクＢに格納するように配置し、輝度ＭＢ（１−０）から輝度ＭＢ（１−１５）までをバンクＣに格納するように配置し、輝度ＭＢ（１−１６）から輝度ＭＢ（１−３１）までをバンクＤに格納するように配置する。
【００４８】
このようにして、例えば、図１５の画像空間上の０マクロブロックラインにおける輝度ＭＢ（０−０）から輝度ＭＢ（０−１１９）は、バンクＡ及びバンクＢに１６個の輝度マクロブロック単位で交互に格納するように配置し、図１５の画像空間上の１マクロブロックラインにおける輝度ＭＢ（１−０）から輝度ＭＢ（１−１１９）は、バンクＣ及びバンクＤに１６個の輝度マクロブロック単位で交互に格納するように配置する。
【００４９】
図１６は１フレームを２フィールドに分割した場合の書き込みデータ２０８における色差データのＳＤＲＡＭ２へのフィールドマッピング例を色差マクロブロック単位で示す図である。図１６では、色差マクロブロックを８画素×４ラインとし、画像空間上の色差マクロブロックに割り当てられたＳＤＲＡＭ２のバンクＡ，Ｂ，Ｃ，Ｄと、ＳＤＲＡＭ２の各バンクＡ，Ｂ，Ｃ，Ｄのメモリ空間上のカラムアドレスとロウアドレスに配置された色差マクロブロックを示している。
【００５０】
図１６に示すように、３２個の色差マクロブロックを同一バンクの１ロウアドレスの中に格納するように配置し、この３２個の色差マクロブロックを単位として、画像空間上の水平方向の色差マクロブロックを２つのバンクに交互に格納するように配置し、画像空間上の垂直方向の偶数マクロブロックライン（０，２，４・・・）の色差マクロブロックにはバンクＡ及びバンクＢを割り当て、奇数マクロブロックライン（１，３，５・・・）の色差マクロブロックにはバンクＣ及びバンクＤを割り当てている。
【００５１】
図１６では、例えば、色差ＭＢ（０−０）から色差ＭＢ（０−３１）までをバンクＡに格納するように配置し、色差ＭＢ（０−３２）から色差ＭＢ（０−６３）までをバンクＢに格納するように配置し、色差ＭＢ（１−０）から色差ＭＢ（１−３１）までをバンクＣに格納するように配置し、色差ＭＢ（１−３２）から色差ＭＢ（１−６３）までをバンクＤに格納するように配置する。
【００５２】
このようにして、例えば、図１６の画像空間上の０マクロブロックラインにおける色差ＭＢ（０−０）から色差ＭＢ（０−１１９）は、バンクＡ及びバンクＢに３２個の色差マクロブロック単位で交互に格納するように配置し、図１６の画像空間上の１マクロブロックラインにおける色差ＭＢ（１−０）から色差ＭＢ（１−１１９）は、バンクＣ及びバンクＤに３２個の色差マクロブロック単位で交互に格納するように配置する。
【００５３】
図１７は図１５の画像空間上及びメモリ空間上の輝度マクロブロックのフィールドマッピング例を画素単位で示す図である。図１７に示すように、画像空間上の１ライン目（Ｌ０）から８ライン目（Ｌ７）までをＳＤＲＡＭ２のメモリ空間に順番に格納し、１個の輝度マクロブロックで３２アドレスを使用する。
【００５４】
図１８は図１６の画像空間上及びメモリ空間上の色差マクロブロックのフィールドマッピング例を画素単位で示す図である。図１８に示すように、画像空間上の１ライン目（Ｌ０）から４ライン目（Ｌ３）までをＳＤＲＡＭ２のメモリ空間に順番に格納し、１個の色差マクロブロックで１６アドレスを使用する。
【００５５】
以上のように、この実施の形態１によれば、書き込みアドレス生成部１１のアドレス演算部１１２が、外部から入力される書き込みマクロブロック位置情報２０４、アドレスオフセット２０５及びフレームサイズ２０６に基づき、書き込みデータの所定個のマクロブロックをＳＤＲＡＭ２のあるバンクの同一ローアドレスに格納し、画像空間上のあるマクロブロックと斜め方向を含めた隣接するマクロブロックとが、ＳＤＲＡＭ２の同一バンクの同一ローアドレス又は異なるバンクに格納するように配置することにより、データ転送の際に効率良くアクセスすることができるという効果が得られる。
【図面の簡単な説明】
【００５６】
【図１】この発明の実施の形態１による画像処理装置の構成を示すブロック図である。
【図２】この発明の実施の形態１による画像処理装置において書き込みデータにおける輝度データのＳＤＲＡＭへのフレームマッピング例を輝度マクロブロック単位で示す図である。
【図３】この発明の実施の形態１による画像処理装置において図２に示すＳＤＲＡＭのバンクＡのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図である。
【図４】この発明の実施の形態１による画像処理装置において図２に示すＳＤＲＡＭのバンクＢのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図である。
【図５】この発明の実施の形態１による画像処理装置において図２に示すＳＤＲＡＭのバンクＣのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図である。
【図６】この発明の実施の形態１による画像処理装置において図２に示すＳＤＲＡＭのバンクＤのメモリ空間上のカラムアドレスとロウアドレスに配置された輝度マクロブロックの詳細を示す図である。
【図７】この発明の実施の形態１による画像処理装置において書き込みデータにおける色差データのＳＤＲＡＭへのフレームマッピング例を色差マクロブロック単位で示す図である。
【図８】この発明の実施の形態１による画像処理装置において図２の画像空間上及びメモリ空間上の輝度マクロブロックのフレームマッピング例を画素単位で示す図である。
【図９】この発明の実施の形態１による画像処理装置において図７の画像空間上及びメモリ空間上の色差マクロブロックのフレームマッピング例を画素単位で示す図である。
【図１０】この発明の実施の形態１による画像処理装置において図２に示す画像空間上の輝度マクロブロックのフレームマッピング例の一部分を拡大した図である。
【図１１】この発明の実施の形態１による画像処理装置において図１０に示す２４画素×９ラインのアクセス方法とデータの読み出しのタイミングチャートを示す図である。
【図１２】図１０に示す輝度マクロブロックのフレームマッピング例を従来のフレームマッピング例に置き換えた図である。
【図１３】図１２に示す２４画素×９ラインのアクセス方法におけるデータの読み出しのタイミングチャートを示す図である。
【図１４】従来のフレームマッピング例でも特許文献２のようにロウアドレスが変わった場合にバンクも異なるようにアクセスするアクセス方法Ｓの場合のタイミングチャートを示す図である。
【図１５】この発明の実施の形態１による画像処理装置において１フレームを２フィールドに分割した場合の書き込みデータにおける輝度データのＳＤＲＡＭへのフィールドマッピング例を輝度マクロブロック単位で示す図である。
【図１６】この発明の実施の形態１による画像処理装置において１フレームを２フィールドに分割した場合の書き込みデータにおける色差データのＳＤＲＡＭへのフィールドマッピング例を色差マクロブロック単位で示す図である。
【図１７】この発明の実施の形態１による画像処理装置において図１５の画像空間上及びメモリ空間上の輝度マクロブロックのフィールドマッピング例を画素単位で示す図である。
【図１８】この発明の実施の形態１による画像処理装置において図１６の画像空間上及びメモリ空間上の色差マクロブロックのフィールドマッピング例を画素単位で示す図である。
【符号の説明】
【００５７】
１  ＳＤＲＡＭインタフェース部（ＳＤＲＡＭ  Ｉ／Ｆ部）、２  ＳＤＲＡＭ、１１  書き込みアドレス生成部、１２  書き込みバッファ、１３  読み出しアドレス生成部、１４  読み出しバッファ、１１１  制御部、１１２  アドレス演算部、１３１  制御部、１３２  アドレス演算部、２０１  起動信号、２０２  書き込みアドレス生成指示、２０３  書き込みコマンド、２０４  マクロブロック位置情報、２０５  アドレスオフセット、２０６  フレームサイズ、２０７  書き込みアドレス、２０８  書き込みデータ、２１１  起動信号、２１２  読み出しアドレス生成指示、２１３  読み出しコマンド、２１４  読み出しマクロブロック位置情報、２１５  動きベクトル情報、２１６  読み出しアドレス、２１７  読み出しデータ。
【図１】
2008146235.tif 000003
【図２】
2008146235.tif 000004
【図３】
2008146235.tif 000005
【図４】
2008146235.tif 000006
【図５】
2008146235.tif 000007
【図６】
2008146235.tif 000008
【図７】
2008146235.tif 000009
【図８】
2008146235.tif 000010
【図９】
2008146235.tif 000011
【図１０】
2008146235.tif 000012
【図１１】
2008146235.tif 000013
【図１２】
2008146235.tif 000014
【図１３】
2008146235.tif 000015
【図１４】
2008146235.tif 000016
【図１５】
2008146235.tif 000017
【図１６】
2008146235.tif 000018
【図１７】
2008146235.tif 000019
【図１８】
2008146235.tif 000020