JP3307856B2 - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JP3307856B2
JP3307856B2 JP21183897A JP21183897A JP3307856B2 JP 3307856 B2 JP3307856 B2 JP 3307856B2 JP 21183897 A JP21183897 A JP 21183897A JP 21183897 A JP21183897 A JP 21183897A JP 3307856 B2 JP3307856 B2 JP 3307856B2
Authority
JP
Japan
Prior art keywords
slot
field
memory
data
image processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP21183897A
Other languages
English (en)
Other versions
JPH10117356A (ja
Inventor
彰啓 渡部
英司 宮越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP21183897A priority Critical patent/JP3307856B2/ja
Publication of JPH10117356A publication Critical patent/JPH10117356A/ja
Application granted granted Critical
Publication of JP3307856B2 publication Critical patent/JP3307856B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像情報のデコー
ド処理に好適に使用される画像処理装置に関するもので
ある。
【0002】
【従来の技術】動画像データの圧縮及び伸張に関する国
際標準として、ISO/IECのワーキング・グループ
の名をとって一般にMPEG(Moving Picture Image C
odingExperts Group )と呼ばれる国際標準が知られて
いる。動画像データを再生するためのMPEGデコーダ
は、可変長復号器(Variable Length Decoder :VL
D)と、逆量子化器(Inverse Quantizer :IQ)と、
逆離散コサイン変換器(Inverse Discrete Cosine Tran
sformer :IDCT)と、動き補償器(Motion Compens
ator:MC)とで構成されたデータ処理部を主な構成要
素とする。MPEGデコーダは、動き補償や、インター
レース変換のために複数フレーム分のメモリをも必要と
する。
【0003】MPEGは、動き補償の参照用に時間的に
前の画像と、後の画像との2フレームを使用することが
大きな特徴となっている。一方、もし全ての画像に動き
補償を用いるとエラーの伝搬や、特殊再生などの問題が
あるため、I(Intra-coded)ピクチャ、P(Predictiv
e-coded)ピクチャ及びB(Bidirectionally predictiv
e-coded)ピクチャが導入されている。Iピクチャ、す
なわちコーディングタイプIのピクチャは、全く他の画
像を参照しない。Pピクチャ、すなわちコーディングタ
イプPのピクチャは、時間的に前のフレームからの動き
補償のみを行なう。Bピクチャ、すなわちコーディング
タイプBのピクチャは、時間的に前のフレームと、後の
フレームとから双方向の動き補償を行なう。Bピクチャ
は、他のフレームのデコードの際の参照フレームとして
使用されることはない。
【0004】それぞれのコーディングタイプの予測の様
子について説明する。I0,P3,B1,B2の順で入
力ピクチャのビットストリームがMPEGデコーダに与
えられるものとする。P3はI0から動き補償され、B
1はI0及びP3から動き補償され、B2はI0及びP
3から動き補償される。表示は、I0,B1,B2,P
3の順番でなされる。このようにMPEGデコーダで
は、デコードの順番と表示の順番とが一致していないた
め、MPEGデコーダの中で順番を変化させる必要があ
る。また、B1,B2のデコードにはI0,P3の画像
2フレームのデータが必要となるため、動き補償の参照
用として画像2フレーム分のフレームメモリが必要とな
る。このため、MPEGデコーダは、動き補償の参照用
に2フレームを必要とする。
【0005】次に、MPEGの画素単位でのデコードの
順番と、画像出力される際の画素単位での順番について
説明する。テレビジョンなどでは、最初は偶数ラインの
み出力し、次に奇数ラインのみを出力するというように
1ライン飛ばしで左上から右下という順番で画素の出力
が行なわれる。この偶数ラインのみの部分をトップフィ
ールド、奇数ラインのみをボトムフィールドと呼ぶ。イ
ンターレース出力は、まずトップフィールドを左上から
右下の順番で出力し、次にボトムフィールドを左上から
右下の順番で出力するものであるということができる。
【0006】画像データは2次元であり、空間的に近い
位置のデータは相関が高いと考えられるが、インターレ
ース出力の場合、例えばトップフィールドのある1ライ
ンを考えると、その1ライン上はボトムフィールドに属
することになる。つまり、1ライン上の画素は、空間的
には非常に近いが、時間的には離れていることになる。
そこで、もし動きが激しい場合は1ライン上よりも時間
的に近い2ライン上との相関の方が高い場合がありう
る。このような場合を想定して、MPEGでは画素単位
のデコードの順番としては大きく分けて、フレーム構造
と、フィールド構造との2種類の順番がある。
【0007】また、MPEGでは16×16画素を1つ
のマクロブロックと呼ばれる基本単位としてデコードを
行なうようになっている。マクロブロックは左から右と
いう順番でデコードされていくが、ここで例えば画像の
一番上部の1ラインの一番右の画素は、その画面の一番
右のマクロブロックの中に含まれている。一方、一番右
のマクロブロックのデコードが終了すると、結果として
16ラインのデータがデコードされていることになる。
よって、MPEGでは、16ライン分のデータは、ほぼ
同時にデコードが終了する。
【0008】フレーム構造の場合には、画像1フレーム
のデータがそのまま縦16画素、横16画素のマクロブ
ロックを構成して、そのマクロブロック毎にデコードさ
れていく。よって、トップフィールドとボトムフィール
ドとがほぼ同時にデコードされる。したがって、画像出
力の順序とはまったく一致しないため、順序変換が必要
となる。
【0009】フィールド構造の場合には、画像フレーム
をトップフィールドとボトムフィールドとに分割し、そ
れぞれのフィールドで縦16画素、横16画素のマクロ
ブロックを構成し、そのマクロブロック毎にデコードさ
れていく。この場合、1マクロブロックは、トップフィ
ールドのみ、あるいはボトムフィールドのみであり、ト
ップフィールドのデータを全てデコードした後にボトム
フィールドのデータがデコードされる。この場合は画像
出力とおおむね一致する順番になっているが、デコード
の順序は、マクロブロック単位で行なわれるので、画像
出力の順序と完全には一致していない。
【0010】画像出力は、トップフィールド、ボトムフ
ィールドの順番で行なわれる。トップフィールドの最終
8ラインを出力開始する時点に注目すると、この最終8
ライン出力開始前には、その画像フレームの最後の16
ライン分のマクロブロックのデコードを終了していなけ
ればならない。なぜなら、最終8ラインの中の最も右の
16画素は、その画像の一番最後のマクロブロックをデ
コードして始めて値が確定するからである。よって、上
記の時点にはボトムフィールド、トップフィールドとも
デコードが完了していなければならない。一方、この時
点以降には、トップフィールド8ラインと、ボトムフィ
ールド全てを順に出力していかなければならないが、こ
のデータは既にデコードされている。よって、このトッ
プフィールド8ラインと、ボトムフィールドのデータ全
てとをフレームメモリに記憶しておかなければ、データ
が出力される前に消えてしまい、画像出力がなされなく
なってしまう。つまり、ボトムフィールドのデータ全て
とトップフィールドの8ライン分とのデータ量を記憶す
るだけの約半フレームの容量を持つフレームメモリが必
要となる。
【0011】以上まとめると、動き補償を行なうために
2フレーム分のメモリを必要とし、更にBピクチャのイ
ンターレース変換を行なうために約半フレーム分のメモ
リを必要とする。つまり、計約2.5フレーム分のメモ
リが最低限必要となる。
【0012】石渡俊一ほか「MPEG2デコーダLSI
の開発−−効率的なメモリ割り当て」,1994年電子
情報通信学会春季大会講演論文集,C−659,199
4年3月には、Bピクチャのインターレース変換用に
1.5フレーム分のメモリを使用するMPEGデコーダ
の例が記載されている。また、高畠明彦ほか「MPEG
2ビデオデコーダLSIにおけるDRAMインターフェ
ース」,1995年電子情報通信学会総合大会講演論文
集,C−586,1995年3月には、Bピクチャのイ
ンターレース変換用に1フレーム分のメモリを使用する
MPEGデコーダの例が記載されている。
【0013】
【発明が解決しようとする課題】上記従来の両MPEG
デコーダは、Bピクチャのインターレース変換用に1.
0〜1.5フレーム分のメモリを必要とするため、MP
EGデコーダがコスト高になるという問題があった。上
記のとおり原理的にはインターレース変換用に約半フレ
ーム分のメモリで十分であることを考えると、改善の余
地がある。
【0014】本発明の目的は、MPEGデコーダが有す
るフレームメモリの容量を削減し、かつ該フレームメモ
リを効率的に利用することにある。
【0015】
【課題を解決するための手段】上記目的を達成するため
に、本発明では次の点に着目した。すなわち、Bピクチ
ャは画像出力を終えるともう使用されることはないとい
う点と、現在デコード中のマクロブロックの領域がいつ
出力されるかを入力ピクチャの付加情報の部分(ヘッ
ダ)の解析によって予測できるという点とに着目したも
のである。
【0016】具体的には、本発明は、フレームメモリを
備えた画像処理装置において、前記フレームメモリは、
各々画像半フレーム分の容量を有する5個のブロック
と、該5個のブロックの各々より小さい容量を有する1
個の付加ブロックとで構成され、一旦、前記5個のブロ
ックの中から選択された4個のブロックは動き補償の参
照用のためのI及び/又はPピクチャの格納に用いら
れ、残り1個のブロックと前記付加ブロックとでBピク
チャのインターレース変換に用いられる1個のデータメ
モリを構成し、その後、前記Bピクチャ用のデータメモ
リは前記4個のブロック内の1個のブロックと前記付加
ブロックとで再構成され、かつ、前記5個のブロックの
各々と前記付加ブロックとは各々を識別するスロット番
号を付与された複数個のスロットにそれぞれ分割され、
更に、スロット番号を記憶するためのスロット管理メモ
リと、前記スロット管理メモリに記憶されたスロット番
号を用いて前記データメモリの読み書きを制御するため
のコントローラとを備え、前記コントローラは、前記デ
ータメモリの読み出しのために、前記データメモリの書
き込みの際に用いたスロット番号を前記スロット管理メ
モリに書き込むこととしたものである。
【0017】
【発明の実施の形態】以下、動画像データのリアルタイ
ム再生処理を実現するためのMPEGデコーダの具体例
について、図面を参照しながら説明する。
【0018】図1は、本発明に係るMPEGデコーダの
構成例を示している。図1のMPEGデコーダ10は、
約2.5フレーム分の画像データを記憶するためのフレ
ームメモリ11と、入力ビットストリームINを解析す
るためのビットストリーム解析部12と、画像出力信号
OUT及び割り込み信号INTRを供給するための画像
出力部13と、割り込み信号INTRに応答してビット
ストリーム解析部12へ起動信号INITを供給するた
めの制御部14とから構成されている。図1において、
15はデータバス、16はアドレスバス、17はレジス
タバスである。ビットストリーム解析部12は、入力ビ
ットストリームINの中のヘッダ部を解析する機能に加
えて、マクロブロックをデコードし、その結果をフレー
ムメモリ11に書き込む機能を有する。これら2つの機
能は、制御部14からの起動信号INITによって起動
される。フレームメモリ11は、動き補償の参照用の画
像の格納とインターレース変換とのために用いられるも
のである。画像出力部13は、リコンストラクトされた
画像データをフレームメモリ11から読み出し、インタ
ーレース順の画像出力信号OUTを供給する。この画像
出力信号OUTをディスプレイにつなげることによっ
て、デコードされた動画を見ることができる。また、画
像出力部13は出力のタイミングに合わせて割り込み信
号INTRを制御部14へ送る。制御部14は、レジス
タバス17を通じてビットストリーム解析部12及び画
像出力部13の各々の内部レジスタを読み出したり、各
内部レジスタへ値を設定したりすることができる。
【0019】図2はフレームメモリ11の概略構成を、
図3及び図4はその詳細構成をそれぞれ示している。フ
レームメモリ11は、図2に示すように、0から4まで
のフィールド番号が付けられた5個のブロック20,2
1,22,23,24と、1個の付加ブロック25とで
構成されている。1個のブロック20は、図3に示すよ
うに、0からN−1までのスロット番号が付けられたN
個のスロットで構成されている。ここに、NはMPEG
デコーダ10がデコードを行なう画像サイズに依存して
いる量であり、例えばNTSC(National Television
System Committee )の画像ではNが30となる。各ス
ロットは、画像8ライン分の記憶容量を持っている。つ
まり、1個のブロック20は、240ライン分のデー
タ、すなわちNTSCの画像1フィールド(半フレー
ム)分のデータを記憶することができる。他の4個のブ
ロック21,22,23,24も、各々N個のスロット
で構成されている。付加ブロック25は、図4に示すよ
うに、NからN+2までのスロット番号が付けられた3
個の付加スロットで構成されている。
【0020】フレームメモリ11は、スロットを単位と
して管理される。この管理単位である1スロット(8ラ
イン)は、マクロブロックの縦サイズ(16ライン)の
半分であり、フレーム構造、フィールド構造の両方に対
応するために最適な単位である。具体的には、フィール
ド番号とスロット番号とで1個のスロットが指定され
る。例えば、ブロック20の中の第1番目のスロット
は、フィールド番号0、スロット番号0で指定される。
付加ブロック25の中の第1番目のスロットは、フィー
ルド番号0、スロット番号Nで指定される。付加ブロッ
ク25の中の同スロットをフィールド番号1、スロット
番号Nで指定することもできる。
【0021】5個のブロック20,21,22,23,
24のうちの4個のブロックは動き補償の参照用の画像
の格納に用いられ、残り1個のブロックと付加ブロック
25とはBピクチャのインターレース変換に用いられ
る。以下の説明では、Bピクチャのために使用されるス
ロットの数すなわちN+3をSnと表記する。例えば、
Iピクチャのトップフィールドがフィールド番号0の番
号0からN−1までのスロットに、該Iピクチャのボト
ムフィールドがフィールド番号1の番号0からN−1ま
でのスロットに、Pピクチャのトップフィールドがフィ
ールド番号2の番号0からN−1までのスロットに、該
Pピクチャのボトムフィールドがフィールド番号3の番
号0からN−1までのスロットにそれぞれ格納される。
この際、トップフィールドが格納されているフィールド
のスロット0には該トップフィールドの最初の8ライン
が、スロット1には次の8ラインがというように順に格
納される。Bピクチャは、例えばフィールド番号4の番
号0からSn−1までのスロットに格納される。この
際、NからN+2までのスロット番号が付けられた3個
の付加スロットが使用される。ただし、どのスロットが
トップフィールドを格納しているかといったことは、フ
レーム構造であるかフィールド構造であるかという画像
のストラクチャに応じて変化する。なお、初期状態で
は、フレームメモリ11の各フィールドにデフォルトの
画像データが既に書き込まれているものとする。例え
ば、黒に相当するようなデータが書き込まれている。デ
コード結果の画像が出力されるまでは、デフォルト画像
が出力される。
【0022】図5は、図1中のビットストリーム解析部
12の内部構成を示している。ビットストリーム解析部
12は、ヘッダ解析部31と、VLD(可変長復号器)
32と、IQ(逆量子化器)33と、IDCT(逆離散
コサイン変換器)34と、MC(動き補償器)35と、
内部レジスタ36とで構成されている。内部レジスタ3
6は10個のレジスタ、すなわち、 コーディングタイプレジスタ CTYR ストラクチャレジスタ STRR トップ用前方参照フィールドレジスタ T_FRFR ボトム用前方参照フィールドレジスタ B_FRFR トップ用後方参照フィールドレジスタ T_BRFR ボトム用後方参照フィールドレジスタ B_BRFR トップ用書き込みフィールドレジスタ T_WFDR ボトム用書き込みフィールドレジスタ B_WFDR 第1の書き込みスロットレジスタ WSR1 第2の書き込みスロットレジスタ WSR2 を備えている。コーディングタイプレジスタCTYR
は、入力画像のコーディングタイプを格納するためのレ
ジスタである。ストラクチャレジスタSTRRは、入力
画像の構造がフレーム構造であるかフィールド構造であ
るかを示すレジスタである。4個の参照フィールドレジ
スタT_FRFR,B_FRFR,T_BRFR,B_
BRFRは、フレームメモリ11の中の動き補償の参照
用の画像の格納位置を示すフィールド番号を指定するた
めのレジスタである。2個の書き込みフィールドレジス
タT_WFDR,B_WFDRは、フレームメモリ11
の中の書き込みフィールドの番号を指定するためのレジ
スタである。第1及び第2の書き込みスロットレジスタ
WSR1,WSR2は、フレームメモリ11の中の書き
込みスロットの番号を指定するためのレジスタである。
【0023】制御部14からの起動信号INITによっ
て、ヘッダ解析部31又はVLD32が起動する。ヘッ
ダ解析部31は、起動すると入力ビットストリームIN
の中の画像ヘッダ情報をデコードし、内部レジスタ36
の中のコーディングタイプレジスタCTYRに画像のコ
ーディングタイプを、ストラクチャレジスタSTRRに
画像の構造をそれぞれ書き込む。VLD32が起動する
と、VLD32の出力を受けてIQ33、IDCT34
及びMC35が順に起動され、16ライン分の画像デー
タのデコード結果がデータバス15を介してフレームメ
モリ11に書き込まれる。この16ライン分というの
は、横720画素の場合には45マクロブロックに相当
する。このなかで、MC35は、動き補償を行ない最終
的な画像データを作成し、かつ再構成されたデータをフ
レームメモリ11に書き込む役割を持っている。VLD
32は、動き補償のため、動きベクトルMVをMC35
へ送る。なお、フレームメモリ11のスロットは、アド
レスバス16の上のアドレスによって特定される。
【0024】ビットストリーム解析部12の中でメモリ
管理に関係する部分はMC35のみである。MC35
は、動き補償のために予測用の画像がフレームメモリ1
1のどの位置に格納されているかを知らなければならな
い。そのため、トップ用前方参照フィールドレジスタT
_FRFR、ボトム用前方参照フィールドレジスタB_
FRFR、トップ用後方参照フィールドレジスタT_B
RFR、ボトム用後方参照フィールドレジスタB_BR
FRを使用する。ここで、例えば前方参照のためのデー
タのうちのトップフィールド部分は、トップ用前方参照
フィールドレジスタT_FRFRで指定された番号のフ
ィールドのスロット0からスロットN−1に格納されて
いる。
【0025】再構成した画像データを書き込むスロット
を決定するためには、トップ用書き込みフィールドレジ
スタT_WFDRと、ボトム用書き込みフィールドレジ
スタB_WFDRと、第1の書き込みスロットレジスタ
WSR1と、第2の書き込みスロットレジスタWSR2
と、ストラクチャレジスタSTRRとを使用する。具体
的には、次のようにして書き込み位置を決定する。フレ
ーム構造の場合には、トップ用書き込みフィールドレジ
スタT_WFDRのフィールド番号と第1の書き込みス
ロットレジスタWSR1のスロット番号とで指定された
スロットにトップ8ライン分を、ボトム用書き込みフィ
ールドレジスタB_WFDRのフィールド番号と第2の
書き込みスロットレジスタWSR2のスロット番号とで
指定されたスロットにボトム8ライン分をそれぞれ書き
込む。フィールド構造の場合には、トップフィールド
(最初の半フレーム)については、トップ用書き込みフ
ィールドレジスタT_WFDRのフィールド番号と第1
の書き込みスロットレジスタWSR1のスロット番号と
で指定されたスロットに上部8ライン分を、トップ用書
き込みフィールドレジスタT_WFDRのフィールド番
号と第2の書き込みスロットレジスタWSR2のスロッ
ト番号とで指定されたスロットに下部8ライン分をそれ
ぞれ書き込む。また、ボトムフィールド(次の半フレー
ム)については、ボトム用書き込みフィールドレジスタ
B_WFDRのフィールド番号と第1の書き込みスロッ
トレジスタWSR1のスロット番号とで指定されたスロ
ットに上部8ライン分を、ボトム用書き込みフィールド
レジスタB_WFDRのフィールド番号と第2の書き込
みスロットレジスタWSR2のスロット番号とで指定さ
れたスロットに下部8ライン分をそれぞれ書き込む。以
上のとおり、トップフィールドとボトムフィールドとが
1つのスロット中に混在することはないようになってい
る。なお、内部レジスタ36の中のメモリ管理に関係す
るレジスタは、レジスタバス17を介して制御部14に
より設定される。
【0026】図6は、図1中の画像出力部13の内部構
成を示している。画像出力部13は、タイミング発生部
41と、読み出し部42と、内部レジスタ43とで構成
されている。内部レジスタ43は4個のレジスタ、すな
わち、 読み出しフィールドレジスタ RFDR 読み出しスロットレジスタ RSLR 出力ロウレジスタ ORWR 出力パリティレジスタ OPYR を備えている。読み出しフィールドレジスタRFDR
は、フレームメモリ11の中の読み出しフィールドの番
号を指定するためのレジスタである。読み出しスロット
レジスタRSLRは、フレームメモリ11の中の読み出
しスロットの番号を指定するためのレジスタである。出
力ロウレジスタORWRは、現在出力中のラインが1フ
ィールド中のどの位置であるかを示すレジスタである。
出力パリティレジスタOPYRは、現在トップフィール
ドとボトムフィールドとのどちらを出力しているかを示
すレジスタである。
【0027】図7は、画像出力部13の概略動作を示し
ている。出力の1サイクルは、垂直帰線区間(VB)、
トップフィールド出力期間、垂直帰線区間及びボトムフ
ィールド出力期間から構成されている。例えばNTSC
の場合には、1秒間に30サイクルの出力がなされる。
タイミング発生部41は、画像出力部13が一定周期で
動作するためのタイミング信号TMNGを生成し、かつ
画面出力の8ライン毎に割り込み信号INTRを制御部
14へ送る。割り込み信号INTRは、図7(a)に示
すように、各フィールドの出力開始時に1回発生し、そ
の後8ライン出力終了毎に発生する。読み出し部42
は、タイミング発生部41で発生されたタイミング信号
TMNGに同期して、指定されたスロットをスキャン順
に読み出して画像出力信号OUTを供給する。読み出し
スロットは、内部レジスタ43の中の読み出しフィール
ドレジスタRFDRと読み出しスロットレジスタRSL
Rとの組で指定される。これらの読み出しスロット設定
用のレジスタは、割り込み発生時に制御部14がレジス
タバス17を介して設定を行なう。更に、タイミング発
生部41は、内部レジスタ43の中の出力ロウレジスタ
ORWRと出力パリティレジスタOPYRとを次のよう
に変化させる。すなわち、出力パリティレジスタOPY
Rの値は、図7(b)に示すように、各フィールドの出
力開始の割り込みの直前に、次にトップフィールドを出
力する状態であれば“0”となり、次にボトムフィール
ドを出力する状態であれば“1”となる。出力ロウレジ
スタORWRの値は、図7(c)に示すように、出力開
始の割り込みの直前に“0”となり、以下8ライン終了
の割り込みの直前に1ずつ増加する。
【0028】図8は、図1中の制御部14の内部構成を
示すブロック図である。制御部14は、コントローラ5
1と、ワークメモリ52と、プログラムメモリ53とで
構成されている。ワークメモリ52は、スロット管理メ
モリSCMと、12個のワークすなわち、 トップ用前方参照フィールドワーク T_FRFW ボトム用前方参照フィールドワーク B_FRFW トップ用後方参照フィールドワーク T_BRFW ボトム用後方参照フィールドワーク B_BRFW デコードロウ番号ワーク DRNW デコードタイプワーク DTYW 出力タイプワーク OTYW デコードストラクチャワーク DSTW トップ用出力フィールドワーク T_OFDW ボトム用出力フィールドワーク B_OFDW 書き込みスロット用ポインタ WSLP 読み出しスロット用ポインタ RSLP とを備えている。4個の参照フィールドワークT_FR
FW,B_FRFW,T_BRFW,B_BRFWは、
各々ビットストリーム解析部12の中の4個の参照フィ
ールドレジスタT_FRFR,B_FRFR,T_BR
FR,B_BRFRに対応するワークであって、フレー
ムメモリ11の中の動き補償の参照用の画像の格納位置
を示すフィールド番号を指定するものである。デコード
ロウ番号ワークDRNWは、1フレーム中のどの部分ま
でデコードが行なわれたかを示すロウ番号を格納するた
めのワークであって、例えば最初の16ラインのデコー
ド中は0、次の16ラインのデコード中は1というよう
にロウ番号が増加していく。デコードタイプワークDT
YWは、現在デコード中の画像のコーディングタイプを
示すワークである。出力タイプワークOTYWは、現在
出力中の画像のコーディングタイプがBであるかどうか
を示すワークであって、コーディングタイプBとそれ以
外とではメモリ管理方式が異なるためにその識別のため
に用いられる。デコードストラクチャワークDSTW
は、現在デコード中の画像の構造がフレーム構造である
かフィールド構造であるかを示すワークであって、書き
込みスロットの設定や、スロット管理メモリSCMへの
アクセスに影響を与える。2個の出力フィールドワーク
T_OFDW,B_OFDWは、出力画像のフィールド
番号を示すワークである。書き込みスロット用ポインタ
WSLP及び読み出しスロット用ポインタRSLPは、
後述のようにコーディングタイプBの場合のメモリ管理
に用いられるワークであって、スロット管理メモリSC
Mの中のワードを示すアドレスを常に保持している。
【0029】ワークメモリ52の中のスロット管理メモ
リSCMのアドレス0からSn−1までの各ワードに
は、0からSn−1まで順に1づつ増加する初期値が格
納される。これらの初期値は、最初に到来するコーディ
ングタイプBの画像をデコードする際に使用される書き
込みスロットの番号を順次指定した値である。ワークメ
モリ52の中の10個のワークは、 T_FRFW=0 B_FRFW=1 T_BRFW=2 B_BRFW=3 DTYW=I OTYW=IP T_OFDW=0 B_OFDW=1 WSLP=0 RSLP=Sn のように初期化される。
【0030】コントローラ51は、プログラムメモリ5
3に書かれている命令INSTを順に実行する。まず、
コントローラ51は通常ルーチンを実行する。これによ
り、ビットストリーム解析部12の中の内部レジスタ3
6の設定がなされる。画像出力部13から割り込み信号
INTRが送られると、コントローラ51は割り込み処
理ルーチンに移行する。これにより、画像出力部13の
中の内部レジスタ43の設定がなされるようになってい
る。
【0031】制御部14は、通常ルーチンの実行によ
り、ビットストリーム解析部12を制御する。詳細に
は、下記の手順1.1から手順1.14までが実行され
る。
【0032】手順1.1: ヘッダ解析部31を起動す
る。これに応答して、ヘッダ解析部31は、内部レジス
タ36の中のコーディングタイプレジスタCTYR及び
ストラクチャレジスタSTRRにそれぞれ値を設定す
る。
【0033】手順1.2: コーディングタイプレジス
タCTYRの値をデコードタイプワークDTYWに書き
込む。
【0034】手順1.3: ストラクチャレジスタST
RRの値をデコードストラクチャワークDSTWに書き
込む。
【0035】手順1.4: デコードタイプワークDT
YWが“I”又は“P”であり、かつ出力タイプワーク
OTYWが“IP”であるならば、各々書き込みフィー
ルドを指定するための第1及び第2のフィールド番号を
次のようにして決定する。すなわち、まず、4個の参照
フィールドワークT_FRFW,B_FRFW,T_B
RFW,B_BRFWのいずれにも含まれていないフィ
ールドの番号を選択する。例えば、これらのワークに
0、1、2、3という値が入っていれば4を選択し、ま
た2、3、4、0という値が入っていれば1を選択す
る。そして、選択したフィールドの番号を第1のフィー
ルド番号とする。また、トップ用前方参照フィールドワ
ークT_FRFWの値を第2のフィールド番号とする。
【0036】手順1.5: デコードタイプワークDT
YWが“I”又は“P”であり、かつ出力タイプワーク
OTYWが“B”であるならば、トップ用前方参照フィ
ールドワークT_FRFWの値を第1のフィールド番号
とし、ボトム用前方参照フィールドワークB_FRFW
の値を第2のフィールド番号とする。
【0037】手順1.6: デコードタイプワークDT
YWが“I”又は“P”であるならば、4個の参照フィ
ールドワークT_FRFW,B_FRFW,T_BRF
W,B_BRFWを更新する。具体的には、トップ用後
方参照フィールドワークT_BRFWの値をトップ用前
方参照フィールドワークT_FRFWに、ボトム用後方
参照フィールドワークB_BRFWの値をボトム用前方
参照フィールドワークB_FRFWに、上記決定された
第1のフィールド番号をトップ用後方参照フィールドワ
ークT_BRFWに、上記決定された第2のフィールド
番号をボトム用後方参照フィールドワークB_BRFW
にそれぞれ書き込む。
【0038】手順1.7: ビットストリーム解析部1
2の内部レジスタ36に動き補償の参照用のフィールド
を設定する。具体的には、トップ用前方参照フィールド
ワークT_FRFWの値をトップ用前方参照フィールド
レジスタT_FRFRに、ボトム用前方参照フィールド
ワークB_FRFWの値をボトム用前方参照フィールド
レジスタB_FRFRに、トップ用後方参照フィールド
ワークT_BRFWの値をトップ用後方参照フィールド
レジスタT_BRFRに、ボトム用後方参照フィールド
ワークB_BRFWの値をボトム用後方参照フィールド
レジスタB_BRFRにそれぞれ書き込む。
【0039】手順1.8: ビットストリーム解析部1
2の内部レジスタ36に書き込み用のフィールドを設定
する。具体的には、デコードタイプワークDTYWが
“I”又は“P”である場合には、トップ用後方参照フ
ィールドレジスタT_BRFRの値をトップ用書き込み
フィールドレジスタT_WFDRに、ボトム用後方参照
フィールドレジスタB_BRFRの値をボトム用書き込
みフィールドレジスタB_WFDRにそれぞれ書き込
む。デコードタイプワークDTYWが“B”である場合
には、4個の参照フィールドレジスタT_FRFR,B
_FRFR,T_BRFR,B_BRFRのいずれにも
含まれていないフィールドの番号を選択し、該選択した
フィールドの番号をトップ用書き込みフィールドレジス
タT_WFDR及びボトム用書き込みフィールドレジス
タB_WFDRに書き込む。
【0040】手順1.9: デコードロウ番号ワークD
RNWに“0”を書き込む。
【0041】手順1.10: 書き込みスロットを設定
する。なお、この書き込みスロット設定手順の詳細につ
いては後述する。
【0042】手順1.11: 16ライン分のマクロブ
ロックのデコードをビットストリーム解析部12に行な
わせる。
【0043】手順1.12: 1フレームのデコードが
終了すれば、手順1.1へ戻る。
【0044】手順1.13: デコードロウ番号ワーク
DRNWを1だけ増加させる。
【0045】手順1.14: 次の16ライン分のマク
ロブロックのデコードを行なうように、手順1.10へ
戻る。
【0046】さて、制御部14は、割り込み処理ルーチ
ンの実行により、画像出力部13を制御する。具体的に
は、まず出力画像がBピクチャであるかどうかを判定
し、読み出しフィールド番号を決定し、次にスロット番
号を決定するといった動作を行なう。Iピクチャ又はP
ピクチャのデコード中であれば、それより前にデコード
された画像を出力すればよく、これはちょうど前方参照
に用いられている画像である。Bピクチャは、そのデコ
ードの開始から半フレーム遅れで出力される。よって、
次のフレームを出力する際にBピクチャのデコード中で
あれば、該Bピクチャを出力すればよい。詳細には、割
り込みの発生毎に下記の手順2.1から手順2.6まで
が実行される。
【0047】手順2.1: 出力ロウレジスタORWR
が“0”であり、かつ出力パリティレジスタOPYRが
“0(トップフィールドの出力開始)”であるならば、
デコードタイプワークDTYWの値を出力タイプワーク
OTYWに書き込む。出力タイプワークOTYWは、次
に出力すべき画像のコーディングタイプがBであるかB
でないかを意味している。具体的には、デコードタイプ
ワークDTYWが“I”又は“P”である場合には出力
タイプワークOTYWに“IP”が、デコードタイプワ
ークDTYWが“B”である場合には出力タイプワーク
OTYWに“B”がそれぞれ書き込まれる。
【0048】手順2.2: 出力ロウレジスタORWR
が“0”であり、出力パリティレジスタOPYRが“0
(トップフィールドの出力開始)”であり、かつ出力タ
イプワークOTYWが“IP”であるならば、トップ用
前方参照フィールドワークT_FRFWの値をトップ用
出力フィールドワークT_OFDWに、ボトム用前方参
照フィールドワークB_FRFWの値をボトム用出力フ
ィールドワークB_OFDWにそれぞれ書き込む。この
とき、前方参照用の画像は、それ以前にデコードされた
Iピクチャ又はPピクチャである。よって、Iピクチャ
又はPピクチャのデコード中には、それ以前にデコード
された画像が出力されることになる。
【0049】手順2.3: 出力ロウレジスタORWR
が“0”であり、出力パリティレジスタOPYRが“0
(トップフィールドの出力開始)”であり、かつ出力タ
イプワークOTYWが“B”であるならば、4個の参照
フィールドワークT_FRFW,B_FRFW,T_B
RFW,B_BRFWのいずれにも含まれていないフィ
ールドを選択し、該選択したフィールドの番号をトップ
用出力フィールドワークT_OFDW及びボトム用出力
フィールドワークB_OFDWに書き込む。フレームメ
モリ11の中のコーディングタイプBの画像が書き込ま
れているフィールドは、前方予測用及び後方予測用フィ
ールドのどちらでもないはずである。
【0050】手順2.4: 既に決定されたトップ用出
力フィールドワークT_OFDW及びボトム用フィール
ドワークB_OFDWの値を画像出力部13に設定す
る。具体的には、出力パリティレジスタOPYRが“0
(トップフィールドを次に出力する)”であるならば、
トップ用出力フィールドワークT_OFDWのフィール
ド番号を画像出力部13の読み出しフィールドレジスタ
RFDRに設定する。また、出力パリティレジスタOP
YRが“1(ボトムフィールドを次に出力する)”であ
るならば、ボトム用出力フィールドワークB_OFDW
のフィールド番号を画像出力部13の読み出しフィール
ドレジスタRFDRに設定する。
【0051】手順2.5: 読み出しスロットを設定す
る。なお、この読み出しスロット設定手順の詳細につい
ては後述する。
【0052】手順2.6: 割り込み処理を終了する。
【0053】さて、図9は、図1のMPEGデコーダ1
0の概略動作、すなわち書き込みフィールド及び読み出
しフィールドの取り扱いの例を示している。図9では、
I0,P1,P4,B2,B3,P5の順で入力ビット
ストリームINがビットストリーム解析部12に与えら
れるものとしている。なお、I0やP4という表現は、
最初のI,P,Bという記号でコーディングタイプを表
し、次の数字で表示(出力)の順番を表している。
【0054】ピクチャI0のデコード期間すなわち期間
1の開始時点では、出力タイプワークOTYWの値が
“IP”である。したがって、期間1では、手順1.4
及び手順1.6に従ってかつ期間0の初期値に基づい
て、4個の参照フィールドワークT_FRFW,B_F
RFW,T_BRFW,B_BRFWの値が各々2、
3、4、0に更新される。そして、トップ用後方参照フ
ィールドワークT_BRFWの値すなわち4がトップ用
書き込みフィールドの番号とされ、かつボトム用後方参
照フィールドワークB_BRFWの値すなわち0がボト
ム用書き込みフィールドの番号とされる。したがって、
フレームメモリ11の中のフィールド4及び0に、ピク
チャI0が書き込まれる。
【0055】ピクチャP1のデコード期間すなわち期間
2では、手順1.4及び手順1.6に従って4個の参照
フィールドワークT_FRFW,B_FRFW,T_B
RFW,B_BRFWの値が各々4、0、1、2に更新
される。そして、トップ用後方参照フィールドワークT
_BRFWの値すなわち1がトップ用書き込みフィール
ドの番号とされ、かつボトム用後方参照フィールドワー
クB_BRFWの値すなわち2がボトム用書き込みフィ
ールドの番号とされる。したがって、フィールド4及び
0の中のピクチャI0を前方参照することによって動き
補償されたピクチャP1が、フィールド1及び2に書き
込まれる。
【0056】ピクチャP4のデコード期間すなわち期間
3では、手順1.4及び手順1.6に従って4個の参照
フィールドワークT_FRFW,B_FRFW,T_B
RFW,B_BRFWの値が各々1、2、3、4に更新
される。そして、トップ用後方参照フィールドワークT
_BRFWの値すなわち3がトップ用書き込みフィール
ドの番号とされ、かつボトム用後方参照フィールドワー
クB_BRFWの値すなわち4がボトム用書き込みフィ
ールドの番号とされる。したがって、フィールド1及び
2の中のピクチャP1を前方参照することによって動き
補償されたピクチャP4が、フィールド3及び4に書き
込まれる。
【0057】ピクチャB2のデコード期間すなわち期間
4では、4個の参照フィールドワークT_FRFW,B
_FRFW,T_BRFW,B_BRFWの更新が行な
われない。そして、該4個の参照フィールドワークのい
ずれにも含まれていないフィールドの番号すなわち0
が、トップ用及びボトム用の書き込みフィールドの番号
とされる。したがって、フレームメモリ11の中のフィ
ールド0及び3個の付加スロットに、動き補償されたピ
クチャB2が書き込まれる。この際、フィールド1及び
2の中のピクチャP1が前方参照され、フィールド3及
び4の中のピクチャP4が後方参照される。
【0058】ピクチャB3のデコード期間すなわち期間
5でも、4個の参照フィールドワークT_FRFW,B
_FRFW,T_BRFW,B_BRFWの更新が行な
われない。そして、該4個の参照フィールドワークのい
ずれにも含まれていないフィールドの番号すなわち0
が、トップ用及びボトム用の書き込みフィールドの番号
とされる。したがって、動き補償されたピクチャB3が
フィールド0及び3個の付加スロットに書き込まれる。
この際、フィールド1及び2の中のピクチャP1が前方
参照され、フィールド3及び4の中のピクチャP4が後
方参照される。
【0059】ピクチャP5のデコード期間すなわち期間
6の開始時点では、出力タイプワークOTYWの値が
“B”である。したがって、期間6では、手順1.5及
び手順1.6に従って4個の参照フィールドワークT_
FRFW,B_FRFW,T_BRFW,B_BRFW
の値が各々3、4、1、2に更新される。そして、トッ
プ用後方参照フィールドワークT_BRFWの値すなわ
ち1がトップ用書き込みフィールドの番号とされ、かつ
ボトム用後方参照フィールドワークB_BRFWの値す
なわち2がボトム用書き込みフィールドの番号とされ
る。したがって、動き補償されたピクチャP5がフィー
ルド1及び2に書き込まれる。この際、フィールド3及
び4の中のピクチャP4が前方参照される。
【0060】一方、図7(b)で説明したように、画像
出力部13の中の出力パリティレジスタOPYRの値
は、各フィールドの出力開始の割り込みの直前に、次に
トップフィールドを出力する状態であれば“0”とな
り、次にボトムフィールドを出力する状態であれば
“1”となる。つまり、トップフィールドの出力開始時
点で出力パリティレジスタOPYRの値が“1”から
“0”に変化する。図9は、この出力パリティレジスタ
OPYRの“1”から“0”への変化に同期してトップ
用出力フィールドワークT_OFDW及びボトム用出力
フィールドワークB_OFDWが更新されることを示し
ている。
【0061】具体的に説明すると、期間2の後半の開始
時点で、手順2.2に従って2個の前方参照フィールド
ワークT_FRFW,B_FRFWの値を用いて、2個
の出力フィールドワークT_OFDW,B_OFDWの
値が各々4、0に更新される。したがって、フレームメ
モリ11の中のフィールド4に格納されていたピクチャ
I0のトップフィールドが期間2の後半に、フィールド
0に格納されていたピクチャI0のボトムフィールドが
期間3の前半にそれぞれ出力される。
【0062】期間3の後半の開始時点では、手順2.2
に従って2個の出力フィールドワークT_OFDW,B
_OFDWの値が各々1,2に更新される。したがっ
て、フィールド1に格納されていたピクチャP1のトッ
プフィールドが期間3の後半に、フィールド2に格納さ
れていたピクチャP1のボトムフィールドが期間4の前
半にそれぞれ出力される。
【0063】期間4の後半の開始時点では、手順2.3
に従って4個の参照フィールドワークT_FRFW,B
_FRFW,T_BRFW,B_BRFWのいずれにも
含まれていないフィールドの番号すなわち0が、2個の
出力フィールドワークT_OFDW,B_OFDWに書
き込まれる。したがって、ピクチャB2のデコード開始
から半フレーム遅れでピクチャB2の出力が開始し、ピ
クチャB2のトップフィールドが期間4の後半に、ピク
チャB2のボトムフィールドが期間5の前半にそれぞれ
出力される。
【0064】期間5の後半の開始時点でも、手順2.3
に従って4個の参照フィールドワークT_FRFW,B
_FRFW,T_BRFW,B_BRFWのいずれにも
含まれていないフィールドの番号すなわち0が、2個の
出力フィールドワークT_OFDW,B_OFDWに書
き込まれる。したがって、ピクチャB3のデコード開始
から半フレーム遅れでピクチャB3の出力が開始し、ピ
クチャB3のトップフィールドが期間5の後半に、ピク
チャB3のボトムフィールドが期間6の前半にそれぞれ
出力される。
【0065】期間6の後半の開始時点では、手順2.2
に従って2個の前方参照フィールドワークT_FRF
W,B_FRFWの値を用いて、2個の出力フィールド
ワークT_OFDW,B_OFDWの値が各々3、4に
更新される。したがって、フィールド3に格納されてい
たピクチャP4のトップフィールドが期間6の後半に、
フィールド4に格納されていたピクチャP4のボトムフ
ィールドが次の期間の前半にそれぞれ出力される。
【0066】以上のとおり、図9によれば、I0,P
1,B2,B3,P4の順で出力画像が得られる。ま
た、図9によれば、期間2の後半においてフィールド4
からピクチャI0のトップフィールドが読み出された直
後に、期間3の前半において該フィールド4にピクチャ
P4のボトムフィールドが書き込まれていることが分
る。つまり、フレームメモリ11の中のフィールドの効
率利用がなされている。なお、期間4の後半の開始時点
から期間5の後半の終了時点までは、コーディングタイ
プBの画像についてフィールド0及び3個の付加スロッ
トへの書き込みと読み出しとが同時に行なわれている
が、次に説明するスロット管理により問題が生じないよ
うになっている。
【0067】ここで、手順1.10に係る書き込みスロ
ット設定手順の詳細について説明する。大まかに言え
ば、制御部14は、ビットストリーム解析部12の中の
第1及び第2の書き込みスロットレジスタWSR1,W
SR2の設定を行なった後、一定の条件が整うまで待
つ。
【0068】まず、第1及び第2の書き込みスロットレ
ジスタWSR1,WSR2の設定について説明する。デ
コードタイプワークDTYWが“I”又は“P”であ
り、かつデコードストラクチャワークDSTWがフレー
ム構造を指示しているならば、デコードロウ番号ワーク
DRNWの値を第1及び第2の書き込みスロットレジス
タWSR1,WSR2に書き込む。デコードタイプワー
クDTYWが“I”又は“P”であり、かつデコードス
トラクチャワークDSTWがフィールド構造を指示して
いるならば、[デコードロウ番号ワークDRNWの値]
×2を第1の書き込みスロットレジスタWSR1に、
[デコードロウ番号ワークDRNWの値]×2+1を第
2の書き込みスロットレジスタWSR2にそれぞれ書き
込む。ただし、DRNW×2≧Nならば、DRNW×2
がDRNW×2−Nに、DRNW×2+1がDRNW×
2+1−Nにそれぞれ変更される。以上の設定により、
デコードタイプワークDTYWが“I”又は“P”であ
る場合には、フレーム構造であるとフィールド構造であ
るとを問わず、トップフィールドはトップ用書き込みフ
ィールドレジスタT_WFDRで指示されるフィールド
へ、ボトムフィールドはボトム用書き込みフィールドレ
ジスタB_WFDRで指示されるフィールドへそれぞれ
書き込まれることになる。それぞれのフィールド内で
は、最初の8ラインがスロット0に、次の8ラインがス
ロット1にというように書き込まれる。
【0069】デコードタイプワークDTYWが“B”で
あるならば、制御部14は、次の手順3.1から手順
3.7までを実行することによって、第1及び第2の書
き込みスロットレジスタWSR1,WSR2を設定す
る。
【0070】手順3.1: スロット管理メモリSCM
の中の、書き込みスロット用ポインタWSLPで指示さ
れたアドレスのワードから、第1のスロット番号Xを取
り出す。
【0071】手順3.2: スロット管理メモリSCM
の中の、次アドレスのワードから第2のスロット番号Y
を取り出す。
【0072】手順3.3: 第1のスロット番号Xを第
1の書き込みスロットレジスタWSR1に書き込む。
【0073】手順3.4: 第2のスロット番号Yを第
2の書き込みスロットレジスタWSR2に書き込む。
【0074】手順3.5: 読み出しスロットレジスタ
RSLRの設定準備のために、スロット管理メモリSC
Mの中に第1のスロット番号Xを書き込む。具体的に
は、デコードストラクチャワークDSTWがフレーム構
造を指示している場合には、スロット管理メモリSCM
の中の[書き込みスロット用ポインタWSLPの値]+
Sn−[デコードロウ番号ワークDRNWの値]で指示
されたアドレスのワードに、第1のスロット番号Xを書
き込む。デコードストラクチャワークDSTWがフィー
ルド構造を指示している場合には、スロット管理メモリ
SCMの中の[書き込みスロット用ポインタWSLPの
値]+Snで指示されたアドレスのワードに、第1のス
ロット番号Xを書き込む。
【0075】手順3.6: 同じく読み出しスロットレ
ジスタRSLRの設定準備のために、スロット管理メモ
リSCMの中に第2のスロット番号Yを書き込む。具体
的には、デコードストラクチャワークDSTWがフレー
ム構造を指示している場合には、スロット管理メモリS
CMの中の[書き込みスロット用ポインタWSLPの
値]+Sn−[デコードロウ番号ワークDRNWの値]
+Nで指示されたアドレスのワードに、第2のスロット
番号Yを書き込む。デコードストラクチャワークDST
Wがフィールド構造を指示している場合には、スロット
管理メモリSCMの中の[書き込みスロット用ポインタ
WSLPの値]+Sn+1で指示されたアドレスのワー
ドに、第2のスロット番号Yを書き込む。
【0076】手順3.7: 書き込みスロット用ポイン
タWSLPを2だけ増加させる。
【0077】さて、制御部14は、ビットストリーム解
析部12の中の第1及び第2の書き込みスロットレジス
タWSR1,WSR2の設定を行なった後、次の条件1
から条件4までのうちのいずれかの条件が満たされるま
で待つ。これは、あるスロットからデータが読み出され
るより前にそのスロットへ書き込みを行なうことがない
ようにするために必要である。
【0078】条件1: デコードタイプワークDTYW
が“I”又は“P”であり、トップ用出力フィールドワ
ークT_OFDWの値がトップ用後方参照フィールドワ
ークT_BRFWの値と異なり、かつボトム用出力フィ
ールドワークB_OFDWの値がボトム用後方参照フィ
ールドワークB_BRFWの値と異なること。この条件
が満たされる場合には、書き込みを行なおうとしている
フィールドの出力が既に終了しているため、そのフィー
ルドへの書き込みを行なうことができる。
【0079】条件2: デコードタイプワークDTYW
が“I”又は“P”であり、デコードストラクチャワー
クDSTWがフレーム構造を指示しており、かつ出力ロ
ウレジスタORWRの値がデコードロウ番号ワークDR
NWの値より大きいこと。この条件が満たされる場合に
は、出力ロウレジスタORWRの値よりも小さい番号を
有するスロットが出力済みなので、書き込みを行なえ
る。
【0080】条件3: デコードタイプワークDTYW
が“I”又は“P”であり、デコードストラクチャワー
クDSTWがフィールド構造を指示しており、かつトッ
プフィールドのデコード期間であること。コーディング
タイプI又はPのデコードを行なう場合、少なくとも1
フィールドは使用可能である。トップフィールドは該使
用可能なフィールドに書き込まれるので、書き込みを行
なえる。
【0081】条件4: デコードタイプワークDTYW
が“B”であり、かつ読み出しスロット用ポインタRS
LPの値が書き込みスロット用ポインタWSLPの値以
上であること。スロット管理メモリSCMの中の読み出
しスロット用ポインタRSLPで指示されたアドレスに
格納されているスロット番号は、後に説明するように現
在出力中のスロットの番号である。よって、該番号より
小さい番号を有するスロットは既に読み出されているは
ずであるから、書き込みを行なえる。
【0082】次に、手順2.5に係る読み出しスロット
設定手順の詳細について説明する。出力タイプワークO
TYWが“IP”であるならば、制御部14は、画像出
力部13の中の読み出しスロットレジスタRSLRに同
画像出力部13の出力ロウレジスタORWRの値を設定
するだけでよい。コーディングタイプI又はPの画像の
出力時には、読み出しフィールド中の読み出しスロット
の番号が0から順に1づつ増えていけばよい。ところ
で、出力ロウレジスタORWRの中の出力ロウ番号も0
から順に1づつ増えていく。したがって、読み出しスロ
ットレジスタRSLRに出力ロウレジスタORWRの値
を設定すればよい。
【0083】出力タイプワークOTYWが“B”である
ならば、制御部14は、次の手順4.1から手順4.3
までの単純な処理を実行することによって、読み出しス
ロットレジスタRSLRを設定する。これは、上記手順
3.5及び手順3.6に示した準備処理の成果である。
なお、読み出しスロット用ポインタRSLPは、8ライ
ン出力毎に1ずつ増加する。
【0084】手順4.1: スロット管理メモリSCM
の中の読み出しスロット用ポインタRSLPで指示され
たアドレスのワードからスロット番号Zを取り出す。
【0085】手順4.2: 読み出しスロットレジスタ
RSLRにスロット番号Zを書き込む。
【0086】手順4.3: 読み出しスロット用ポイン
タRSLPを1だけ増加させる。
【0087】さて、図10〜図17は、図1のMPEG
デコーダ10の詳細動作例を示している。図10〜図1
5は各種レジスタの更新過程を、図16及び図17はス
ロット管理メモリSCMの更新過程をそれぞれ示す図で
ある。図10〜図17では、図9の場合と同様に、I
0,P1,P4,B2,B3,P5の順で入力ビットス
トリームINがビットストリーム解析部12に与えられ
るものとしている。このうち、ピクチャP1,P4,B
2,P5はフレーム構造を有し、ピクチャI0,B3は
フィールド構造を有するものとする。また、説明の簡略
化のために、N=6かつSn=9とする。更に、16ラ
インのデコードに16ライン出力分の時間がかかり、し
かも垂直帰線区間にはデコードを行なわないものとす
る。
【0088】図10〜図15において、0から71まで
番号付けられた各期間は画像の8ライン出力期間に対応
しており、出力(表示)はI0,P1,B2,B3,P
4の順でなされる。各フレームのデコード開始時点は、
トップフィールド(OPYR=0)の最後の8ラインの
出力開始時点である。デコードストラクチャワークDS
TWの欄の“FR”はフレーム構造を、“FD”はフィ
ールド構造をそれぞれ表している。ここで、図12中の
期間24に注目すると、ボトム用書き込みフィールドレ
ジスタB_WFDRの値及び読み出しフィールドレジス
タRFDRの値がいずれも4である。つまり、フィール
ド4へのデータ書き込みと同時に該フィールド4からの
データ読み出しが生じている。しかしながら、期間24
では読み出しスロットレジスタRSLRの値が既に5に
達しており、第1及び第2の書き込みスロットレジスタ
WSR1,WSR2の値がいずれも0であるので、全く
問題を生じない。また、期間43から期間59までは、
トップ用書き込みフィールドレジスタT_WFDRの
値、ボトム用書き込みフィールドレジスタB_WFDR
の値及び読み出しフィールドレジスタRFDRの値がい
ずれも0である。つまり、コーディングタイプBの画像
についてフィールド0及び3個の付加スロットへの書き
込みと読み出しとが同時に行なわれている。しかしなが
ら、期間43から期間59までのいずれの期間でも第1
の書き込みスロットレジスタWSR1の値と、第2の書
き込みスロットレジスタWSR2の値と、読み出しスロ
ットレジスタRSLRの値とが互いに異なるので、全く
問題を生じない。
【0089】図16及び図17は、デコードタイプワー
クDTYWが“B”である場合の書き込みスロット設定
手順(手順3.1〜手順3.7)と、出力タイプワーク
OTYWが“B”である場合の読み出しスロット設定手
順(手順4.1〜手順4.3)とに係るスロット管理メ
モリSCMの更新過程を示している。図16及び図17
において、各行はスロット管理メモリSCMのワードを
表し、各列は画像の8ライン出力期間に対応している。
スロット管理メモリSCMのアドレス0から8までの各
ワードには、図16中の左端の列に示されるように、0
から8まで順に1づつ増加する初期値が格納される。書
き込みスロット用ポインタWSLPの初期値は0であ
り、読み出しスロット用ポインタRSLPの初期値は9
である。なお、スロット管理メモリSCMは20ワード
の容量を有するものとする。
【0090】図16中の左から2番目及び3番目の列
は、フレーム構造を有するピクチャB2の最初の16ラ
インのデコード期間、すなわち図13中の期間36及び
期間37に対応するものである。これらの期間では、ス
ロット管理メモリSCMの中の書き込みスロット用ポイ
ンタWSLPで指示されたアドレス(アドレス0)のワ
ードからスロット番号0が取り出され、次アドレス(ア
ドレス1)のワードからスロット番号1が取り出され
て、第1の書き込みスロットレジスタWSR1にスロッ
ト番号0が、第2の書き込みスロットレジスタWSR2
にスロット番号1がそれぞれ書き込まれる。この際、手
順3.5及び手順3.6に従って、読み出しスロットレ
ジスタRSLRの設定準備のために、スロット管理メモ
リSCMの中のアドレス9のワードにスロット番号0
が、アドレス15のワードにスロット番号1がそれぞれ
書き込まれる。そして、書き込みスロット用ポインタW
SLPが2だけ増加する。
【0091】図16中の左から9番目の列は、ピクチャ
B2のトップフィールドの最初の8ラインの出力期間、
すなわち図13中の期間43に対応するものである。こ
の期間では、スロット管理メモリSCMの中の読み出し
スロット用ポインタRSLPで指示されたアドレス(ア
ドレス9)のワードからスロット番号0が取り出され
て、読み出しスロットレジスタRSLRにスロット番号
0が書き込まれる。このスロット番号0は、半フレーム
期間だけ前にスロット管理メモリSCMの中に書き込ま
れた番号である。そして、読み出しスロット用ポインタ
RSLPが1だけ増加する。
【0092】図16中の左から14番目及び15番目の
列は、フィールド構造を有するピクチャB3の最初の1
6ラインのデコード期間、すなわち図14中の期間48
及び期間49に対応するものである。これらの期間で
は、スロット管理メモリSCMの中の書き込みスロット
用ポインタWSLPで指示されたアドレス(アドレス1
2)のワードからスロット番号6が取り出され、次アド
レス(アドレス13)のワードからスロット番号8が取
り出されて、第1の書き込みスロットレジスタWSR1
にスロット番号6が、第2の書き込みスロットレジスタ
WSR2にスロット番号8がそれぞれ書き込まれる。こ
の際、手順3.5及び手順3.6に従って、読み出しス
ロットレジスタRSLRの設定準備のために、スロット
管理メモリSCMの中のアドレス1のワードにスロット
番号6が、アドレス2のワードにスロット番号8がそれ
ぞれ書き込まれる。そして、書き込みスロット用ポイン
タWSLPが2だけ増加する。
【0093】図17中の左から5番目の列は、ピクチャ
B3のトップフィールドの最初の8ラインの出力期間、
すなわち図14中の期間55に対応するものである。こ
の期間では、スロット管理メモリSCMの中の読み出し
スロット用ポインタRSLPで指示されたアドレス(ア
ドレス1)のワードからスロット番号6が取り出され
て、読み出しスロットレジスタRSLRにスロット番号
6が書き込まれる。このスロット番号6は、半フレーム
期間だけ前にスロット管理メモリSCMの中に書き込ま
れた番号である。そして、読み出しスロット用ポインタ
RSLPが1だけ増加する。
【0094】さて、図16及び図17では、いずれの期
間でも、符号“W”が付されたワード(書き込みスロッ
トの設定に用いられる2ワード)のアドレスよりも、符
号“R”が付されたワード(読み出しスロットの設定に
用いられる1ワード)のアドレスの方が常に大きくなっ
ている。したがって、書き込み対象のスロットは読み出
しが終ったスロットであることが保証されている。ま
た、仮に高速デコードが達成されて、16ラインの出力
期間に比べて16ラインのデコード期間の方が短くなっ
たとしても、上記条件4が満たされるまで制御部14が
待つこととしているので、問題は生じない。
【0095】以上説明してきたとおり、図1のMPEG
デコーダ10によれば、垂直帰線区間では入力ビットス
トリームINのデコードを行なわないとの条件下で、各
々1フィールド分の容量を持つ5個のメモリブロック2
0,21,22,23,24のうちの1個と、3個の付
加スロット25とでBピクチャのインターレース変換を
実現できるので、フレームメモリ11の容量が約2.5
フレーム分の容量にまで削減される。
【0096】なお、付加スロットの数は低減可能であ
る。図18は、N+2個のスロットでBピクチャのイン
ターレース変換を実現した場合を表している(N=
6)。ただし、図18中の右から5番目の列は、他の列
に比べて2倍のデコード速度を要求している。図19
は、N+1個のスロットでBピクチャのインターレース
変換を実現した場合を表している(N=6)。ただし、
図19中の右から5番目の列は、水平帰線期間内に16
ライン分のデコードが完了すべきことを要求している。
したがって、N+3個のスロットでBピクチャのインタ
ーレース変換を実現すればよく、その場合でも16Mビ
ットの記憶容量を有する1個のメモリチップでMPEG
2に必要な全てのメモリ機能を実現できる。
【0097】
【発明の効果】以上説明してきたとおり、請求項1の発
明によれば、フレームメモリ中の5個のブロックから選
択された4個のブロックを動き補償の参照用の画像の格
納に用いることとし、残り1個のブロックと付加ブロッ
クとによりBピクチャのインターレース変換に用いられ
る1個のデータメモリを構成することとしたので、約
2.5フレーム分のメモリで、Bピクチャのインターレ
ース変換のみならず全てのタイプのピクチャの動き補償
をも実現できる。しかも、I及び/又はPピクチャが3
つ以上連続した場合に、Bピクチャのためにデータメモ
リを使用しないため、該データメモリの一部を構成する
1個のブロックをI及び/又はPピクチャの格納用に利
用できる利点がある。また、5個のブロックのうちの1
個のブロックと付加ブロックとで構成されたデータメモ
リの読み出しのために、該データメモリの書き込みの際
に用いたスロット番号をスロット管理メモリに書き込ん
でおくこととしたので、データメモリが正しいスロット
順で読み出されるように、該データメモリの書き込みの
際にスロット管理メモリの内容を更新することができ
る。
【0098】また、請求項2の発明によれば、Bピクチ
ャの格納用データメモリ中のあるスロットの読み出しが
行なわれた直後に該スロットの書き込みが行なわれるよ
うにすることで、約半フレーム分のメモリでBピクチャ
のインターレース変換を実現 できる。
【0099】また、請求項の発明によれば、データメ
モリの各スロットの容量を8ライン分の容量としたの
で、フレーム構造及びフィールド構造の双方に対するデ
ータメモリからの読み出しを考慮して該データメモリに
画像データを書き込むことができる。
【0100】また、請求項の発明によれば、2つのス
ロット番号を用いてデータメモリの書き込みを制御する
ことにより、デコードの処理毎に対処できる。
【0101】また、請求項及びの発明によれば、読
み出しスロット用ポインタがトップフィールドのデータ
の読み出しからボトムフィールドのデータの読み出しま
でに変化する分だけ、2つのスロット番号を離してスロ
ット管理メモリに書き込むこととしたので、フレーム構
造の場合において読み出しスロット用ポインタの制御を
簡単な構成で実現できる。
【0102】また、請求項及びの発明によれば、読
み出しスロット用ポインタが各フィールドの8ラインの
うちの上半分データ及び下半分データを連続して読み出
せるように、各々2つのスロット番号をスロット管理メ
モリに書き込むこととしたので、フィールド構造の場合
の読み出しスロット用ポインタの制御を簡単な構成で実
現できる。
【0103】また、請求項の発明によれば、書き込み
スロット用ポインタの値が常に読み出しスロット用ポイ
ンタの値より小さくなるようにコントローラが制御する
こととしたので、データメモリ中のあるスロットからデ
ータが読み出されるより前にそのスロットへ書き込みを
行なうことがなくなる。
【図面の簡単な説明】
【図1】本発明に係るMPEGデコーダの具体例を示す
ブロック図である。
【図2】図1中のフレームメモリの内部構成を示す概念
図である。
【図3】図2中の1個のメモリブロックの内部構成を示
す概念図である。
【図4】図2中の付加メモリブロックの内部構成を示す
概念図である。
【図5】図1中のビットストリーム解析部の内部構成を
示すブロック図である。
【図6】図1中の画像出力部の内部構成を示すブロック
図である。
【図7】図1中の画像出力部の概略動作を示す図であ
る。
【図8】図1中の制御部の内部構成を示すブロック図で
ある。
【図9】図1のMPEGデコーダの概略動作例を示す図
である。
【図10】図1のMPEGデコーダの詳細動作例を示す
図である。
【図11】図10に続く図である。
【図12】図11に続く図である。
【図13】図12に続く図である。
【図14】図13に続く図である。
【図15】図14に続く図である。
【図16】図8中のスロット管理メモリの更新過程の例
を示す図である。
【図17】図16に続く図である。
【図18】図2中の付加ブロックが2個の付加スロット
で構成された場合の図16に相当する図である。
【図19】図2中の付加ブロックが1個の付加スロット
で構成された場合の図16に相当する図である。
【符号の説明】
10 MPEGデコーダ 11 フレームメモリ 12 ビットストリーム解析部 13 画像出力部 14 制御部 20〜24 1フィールド分のメモリブロック 25 3スロット分の付加ブロック 51 コントローラ 52 ワークメモリ RSLP 読み出しスロット用ポインタ SCM スロット管理メモリ WSLP 書き込みスロット用ポインタ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平8−107482(JP,A) 特開 平8−18953(JP,A) 特開 平7−184165(JP,A) 特開 昭61−43885(JP,A) 特開 平7−23399(JP,A) 石渡、北垣、出村、大友、道中、大 藤,MPEG2デコーダLSIの開発− 効率的なメモリ割り当て,1994年電子情 報通信学会春季大会講演論文集,日本, 1994年3月10日,分冊5,p.227 高畠、浦本、田中、吉本,MPEG2 ビデオデコーダLSIにおけるDRAM インターフェース,1995年電子情報通信 学会総合大会講演論文集 エレクトロニ クス2,日本,1995年3月10日,p. 179 (58)調査した分野(Int.Cl.7,DB名) H04N 7/24 - 7/68 JICSTファイル(JOIS)

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】 フレームメモリを備えた画像処理装置で
    あって、 前記フレームメモリは、各々画像半フレーム分の容量を
    有する5個のブロックと、該5個のブロックの各々より
    小さい容量を有する1個の付加ブロックとで構成され、 一旦、前記5個のブロックの中から選択された4個のブ
    ロックは、動き補償の参照用のためのI及び/又はPピ
    クチャの格納に用いられ、残り1個のブロックと前記付
    加ブロックとでBピクチャのインターレース変換に用い
    られる1個のデータメモリを構成し、 その後、前記Bピクチャ用のデータメモリは前記4個の
    ブロック内の1個のブロックと前記付加ブロックとで再
    構成され、かつ、 前記5個のブロックの各々と前記付加ブロックとは、各
    々を識別するスロット番号を付与された複数個のスロッ
    トにそれぞれ分割され、 更に、スロット番号を記憶するためのスロット管理メモ
    リと、 前記スロット管理メモリに記憶されたスロット番号を用
    いて前記データメモリの読み書きを制御するためのコン
    トローラとを備え、 前記コントローラは、前記データメモリの読み出しのた
    めに、前記データメモリの書き込みの際に用いたスロッ
    ト番号を前記スロット管理メモリに書き込むことを特徴
    とする画像処理装置。
  2. 【請求項2】 請求項記載の画像処理装置において、 前記データメモリの書き込みの際に用いられるスロット
    番号の前記スロット管理メモリ中の記憶位置を指定する
    ための書き込みスロット用ポインタと、 前記データメモリの読み出しの際に用いられるスロット
    番号の前記スロット管理メモリ中の記憶位置を指定する
    ための読み出しスロット用ポインタとを更に備え、 前記書き込みスロット用ポインタ及び前記読み出しスロ
    ット用ポインタは、前記データメモリ中のあるスロット
    の読み出しが行なわれた直後に該スロットの書き込みが
    行なわれるように更新されることを特徴とする画像処理
    装置。
  3. 【請求項3】 請求項記載の画像処理装置において、 前記データメモリの各スロットは、8ライン分の容量を
    有することを特徴とする画像処理装置。
  4. 【請求項4】 請求項記載の画像処理装置において、 前記コントローラは、2つのスロット番号を用いて前記
    データメモリの書き込みを制御することを特徴とする画
    像処理装置。
  5. 【請求項5】 請求項記載の画像処理装置において、 前記コントローラは、前記Bピクチャがフレーム構造を
    有する場合には、前記Bピクチャを構成するトップフィ
    ールド及びボトムフィールドの各々の8ラインがそれぞ
    れ前記データメモリに書き込まれるように、2つのスロ
    ット番号を用いて前記データメモリの書き込みを制御す
    ることを特徴とする画像処理装置。
  6. 【請求項6】 請求項記載の画像処理装置において、 前記コントローラは、読み出しスロット用ポインタが前
    記トップフィールドのデータの読み出しから前記ボトム
    フィールドのデータの読み出しまでに変化する分だけ、
    前記2つのスロット番号を離して前記スロット管理メモ
    リに書き込むことを特徴とする画像処理装置。
  7. 【請求項7】 請求項記載の画像処理装置において、 前記コントローラは、前記Bピクチャがフィールド構造
    を有する場合には、前記Bピクチャを構成する各フィー
    ルドの8ラインのうちの上半分及び下半分データがそれ
    ぞれ前記データメモリに書き込まれるように、2つのス
    ロット番号を用いて前記データメモリの書き込みを制御
    することを特徴とする画像処理装置。
  8. 【請求項8】 請求項記載の画像処理装置において、 前記コントローラは、読み出しスロット用ポインタが前
    上半分データ及び下半分データを連続して読み出せる
    ように、各々2つのスロット番号を前記スロット管理メ
    モリに書き込むことを特徴とする画像処理装置。
  9. 【請求項9】 請求項記載の画像処理装置において、 前記データメモリの書き込みの際に用いられるスロット
    番号の前記スロット管理メモリ中の記憶位置を指定する
    ための書き込みスロット用ポインタと、 前記データメモリの読み出しの際に用いられるスロット
    番号の前記スロット管理メモリ中の記憶位置を指定する
    ための読み出しスロット用ポインタとを更に備え、 前記コントローラは、前記書き込みスロット用ポインタ
    の値が常に前記読み出しスロット用ポインタの値より小
    さくなるように制御することを特徴とする画像処理装
    置。
JP21183897A 1996-08-22 1997-08-06 画像処理装置 Expired - Fee Related JP3307856B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21183897A JP3307856B2 (ja) 1996-08-22 1997-08-06 画像処理装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-220888 1996-08-22
JP22088896 1996-08-22
JP21183897A JP3307856B2 (ja) 1996-08-22 1997-08-06 画像処理装置

Publications (2)

Publication Number Publication Date
JPH10117356A JPH10117356A (ja) 1998-05-06
JP3307856B2 true JP3307856B2 (ja) 2002-07-24

Family

ID=26518874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21183897A Expired - Fee Related JP3307856B2 (ja) 1996-08-22 1997-08-06 画像処理装置

Country Status (1)

Country Link
JP (1) JP3307856B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1383339A1 (en) 2002-07-15 2004-01-21 Matsushita Electric Industrial Co., Ltd. Memory management method for video sequence motion estimation and compensation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
石渡、北垣、出村、大友、道中、大藤,MPEG2デコーダLSIの開発−効率的なメモリ割り当て,1994年電子情報通信学会春季大会講演論文集,日本,1994年3月10日,分冊5,p.227
高畠、浦本、田中、吉本,MPEG2ビデオデコーダLSIにおけるDRAMインターフェース,1995年電子情報通信学会総合大会講演論文集 エレクトロニクス2,日本,1995年3月10日,p.179

Also Published As

Publication number Publication date
JPH10117356A (ja) 1998-05-06

Similar Documents

Publication Publication Date Title
US5841475A (en) Image decoding with dedicated bidirectional picture storage and reduced memory requirements
US5729303A (en) Memory control system and picture decoder using the same
JPH08123953A (ja) 画像処理装置
US5736944A (en) Image decoding apparatus
US5754243A (en) Letter-box transformation device
JP3141772B2 (ja) Mpeg復号化器及びその復号化方法
EP0602642A2 (en) Moving picture decoding system
KR100472564B1 (ko) 화상처리장치
JP2000106677A (ja) 圧縮ストリーム復号装置および圧縮ストリーム復号方法
EP1147671A1 (en) Method and apparatus for performing motion compensation in a texture mapping engine
JPH0759096A (ja) ビデオエンコーダ及びデコーダ
US6064803A (en) Image information decoder with a reduced capacity frame memory
JP3871348B2 (ja) 画像信号復号化装置及び画像信号復号化方法
JPH10304354A (ja) 動画像復号方法及び動画像復号装置
JP3307856B2 (ja) 画像処理装置
JPH1155676A (ja) 同期型メモリを用いた動画像データ符号化装置
JPH0865686A (ja) 画像復号化装置
JPH0730903A (ja) 画像処理用メモリ集積回路
US5754238A (en) Picture signal decoding method and apparatus thereof
JP3307822B2 (ja) 画像処理装置
US20030123555A1 (en) Video decoding system and memory interface apparatus
US5946036A (en) Image decoding using read/write memory control based on display region setting
KR100269426B1 (ko) 개선된프레임메모리를갖는움직임보상장치
JP3262464B2 (ja) 画像復号化装置
Wang et al. SDRAM bus schedule of HDTV video decoder

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020423

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090517

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100517

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110517

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110517

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120517

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees