JP2009177833A - Video memory management for mpeg video decoding/display system - Google Patents

Video memory management for mpeg video decoding/display system Download PDF

Info

Publication number
JP2009177833A
JP2009177833A JP2009075365A JP2009075365A JP2009177833A JP 2009177833 A JP2009177833 A JP 2009177833A JP 2009075365 A JP2009075365 A JP 2009075365A JP 2009075365 A JP2009075365 A JP 2009075365A JP 2009177833 A JP2009177833 A JP 2009177833A
Authority
JP
Japan
Prior art keywords
memory
video
data
display
video memory
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.)
Pending
Application number
JP2009075365A
Other languages
Japanese (ja)
Inventor
Aharon Gill
ギル,アハロン
Elan Rosenthal
ローゼンタール,エラン
Miri Fraenkel
フランケル,ミリ
Ram Ofir
オフィール,ラム
David Anisman
アニスマン,デビッド
Alon Ironi
アイロニ,アロン
Paul R Goldberg
アール. ゴールドバーグ,パール
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.)
Zoran Corp
Original Assignee
Zoran Corp
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 Zoran Corp filed Critical Zoran Corp
Priority to JP2009075365A priority Critical patent/JP2009177833A/en
Publication of JP2009177833A publication Critical patent/JP2009177833A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a video memory management system for decoding/displaying a video bit stream which represents a video image and displays the video image. <P>SOLUTION: A FlexiRam design and a divided memory manager design are combined. A first FlexiRam 1370a is disposed between a first memory manager 1310a and a first memory 1330a. A second FlexiRam 1380a is disposed between a second memory manager 1320a and a second memory 1340a. A FlexiRam technology is used to compress/decompress all stored video memory data. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、MPEG("Moving Picture Experts Groups" )復号・表示システムに関し、より詳細には、ビデオイメージの復号・表示用のMPEG復号・表示システムで必要とされるビデオメモリサイズの減少に関する。   The present invention relates to MPEG ("Moving Picture Experts Groups") decoding and display systems, and more particularly to reducing the video memory size required in MPEG decoding and display systems for decoding and displaying video images.

1980年代末期、モーションビデオおよびそれに関連する音声を第1世代CD−ROM上に1.4Mビット/秒で載せる必要が生じた。この目的のため、1980年代末期および1990年代初頭、ISO(「国際標準化機構」)MPEG委員会は、ビデオおよび2チャンネルステレオ音声のためのデジタル圧縮規格を開発した。この規格は、通称MPEG−1、公式にはISO11172として知られている。   In the late 1980's, it became necessary to load motion video and related audio on a first generation CD-ROM at 1.4 Mbit / s. To this end, in the late 1980s and early 1990s, the ISO (“International Organization for Standardization”) MPEG committee developed a digital compression standard for video and two-channel stereo audio. This standard is commonly known as MPEG-1, officially known as ISO11172.

MPEG−1に続き、衛星、カセットテープ、放送およびCATVなどの伝送媒体用のエンターテインメントテレビを圧縮する必要が生じた。従って、フル解像度の標準解像度テレビ(SDTV)画像または高品位テレビ(HDTV)画像用のデジタル圧縮方法を利用可能にするため、ISOは通称MPEG−2、公式にはISO13818として知られる第2の規格を開発した。MPEG−2を最適化するために選ばれたビットレートは、SDTVについては4Mビット/秒および9Mビット/秒、HDTVについては20Mビット/秒であった。   Following MPEG-1, there has been a need to compress entertainment television for transmission media such as satellite, cassette tape, broadcast and CATV. Therefore, in order to make available a digital compression method for full resolution standard definition television (SDTV) or high definition television (HDTV) images, ISO is a second standard known as MPEG-2, officially known as ISO 13818. Developed. The bit rates chosen to optimize MPEG-2 were 4 Mbit / sec and 9 Mbit / sec for SDTV and 20 Mbit / sec for HDTV.

MPEG−1規格もMPEG−2規格も、どの符号化方法を使用するか、符号化プロセス、または符号器の詳細について規定していない。これらの規格は、復号器へのデータ入力を表現するためのフォーマット、およびこれらのデータを解釈するためのルールセットを規定しているのみである。データを表すためのこれらのフォーマットは、構文と呼ばれ、ビットストリームと称される種々の有効なデータストリームを構築するのに用いることができる。データを解釈するためのルールは、復号意味論と呼ばれる。復号意味論の順序集合は、復号プロセスと呼ばれる。   Neither the MPEG-1 nor the MPEG-2 standard defines which encoding method to use, the encoding process, or details of the encoder. These standards only specify a format for representing the data input to the decoder and a rule set for interpreting these data. These formats for representing data are called syntaxes and can be used to construct various valid data streams called bitstreams. The rules for interpreting the data are called decoding semantics. The ordered set of decoding semantics is called the decoding process.

MPEG構文は、空間的冗長性と時間的冗長性の両方を利用する種々の符号化方法をサポートしている。空間的冗長性は、8×8画素ブロックのブロックベースの離散コサイン変換(「DCT」)符号化を用いて利用され、その後に量子化、ジグザグスキャン、および0量子化されたインデックスおよびこれらインデックスの振幅の可変長符号化が行なわれる。DCT係数の知覚的重み付け量子化を可能にする量子化行列は、知覚的に無関係の情報を捨てるために用いることができ、従って、符号化効率がさらに向上する。一方、時間的冗長性は、動き補償予測、順方向予測、逆方向予測および双方向予測を用いて利用される。   The MPEG syntax supports a variety of encoding methods that utilize both spatial and temporal redundancy. Spatial redundancy is exploited using block-based discrete cosine transform (“DCT”) coding of 8 × 8 pixel blocks, followed by quantization, zigzag scanning, and zero-quantized indices and their indices. A variable length encoding of the amplitude is performed. A quantization matrix that allows perceptual weighted quantization of DCT coefficients can be used to discard perceptually irrelevant information, thus further improving coding efficiency. On the other hand, temporal redundancy is used by using motion compensation prediction, forward prediction, backward prediction, and bidirectional prediction.

MPEGは2タイプのビデオデータ圧縮方法、すなわちフレーム内符号化およびフレーム間符号化を提供する。
フレーム内符号化は、空間的冗長性を利用するためのものである。対話的要件の多くは、フレーム内符号化のみで満たし得る。しかしながら、低ビットレートのいくつかのビデオ信号において、フレーム内符号化のみで達成できる画像品質は十分ではない。
MPEG provides two types of video data compression methods: intraframe coding and interframe coding.
Intraframe coding is for using spatial redundancy. Many of the interactive requirements can be met with intraframe coding alone. However, for some video signals with low bit rates, the image quality that can be achieved with only intra-frame coding is not sufficient.

従って、時間的冗長は、予測エラーと呼ばれるフレーム間差信号を計算するMPEGアルゴリズムにより利用される。予測エラーの計算において、動き補償の技術は、動きについての予測を補正するために使用される。H. 261におけるように、マクロブロック(MB)アプローチは、MPEGにおける動き補償に採用されている。前方向予測と呼ばれる一方向の運動評価において、符号化しようとするピクチャ内の目標MBは、参照ピクチャと呼ばれる過去のピクチャ内の同サイズの移動されたマクロブロックのセットと突き合わせられる。H. 261におけるように、目標マクロブロックに最もよく一致する参照ピクチャ内のマクロブロックが予測MBとして用いられる。予測エラーは、次に目標マクロブロックと予測マクロブロックとの差として計算される。   Therefore, temporal redundancy is utilized by the MPEG algorithm that calculates the interframe difference signal called the prediction error. In calculating prediction errors, motion compensation techniques are used to correct predictions for motion. As in H.261, the macroblock (MB) approach has been adopted for motion compensation in MPEG. In a one-way motion estimation called forward prediction, the target MB in the picture to be encoded is matched with a set of moved macroblocks of the same size in past pictures called reference pictures. As in H.261, the macroblock in the reference picture that best matches the target macroblock is used as the prediction MB. The prediction error is then calculated as the difference between the target macroblock and the prediction macroblock.

I.ピクチャバッファサイズ
(1)2つの参照フレーム
要約すれば、MPEG−2はビデオピクチャを3タイプのピクチャ(すなわち、イントラ「I」、予測「P」および双方向予測「B」)に分割する。定義により、Iピクチャ内のすべてのマクロブロックは、(ベースラインJPEGピクチャのように)符号化イントラでなければならない。さらに、Pピクチャ内のマクロブロックはイントラあるいは非イントラとして符号化し得る。Pピクチャの非イントラ符号化の間に、Pピクチャは、前に再構築されたピクチャから一時的に予測され、それにより直前のIまたはPピクチャについて符号化される。最後に、B(すなわち双方向的予測)ピクチャ内のマクロブロックは、独立して、イントラあるいは順方向予測、逆方向予測または順方向および逆方向(補間)予測などの非イントラとして選択され得る。Bピクチャの非イントラ符号化の間に、ピクチャは、直後のIまたはPピクチャだけでなく、直前のIまたはPピクチャを基準として符号化される。符号化順序について、Pピクチャは因果的であるのに対し、Bピクチャは因果的ではなく、予測用に偶然に符号化された2つの包囲するピクチャを使う。圧縮効率について、Iピクチャは効率が最も低く、Pピクチャは多少よく、Bピクチャは最も効率的である。
I. Picture Buffer Size (1) Two Reference Frames In summary, MPEG-2 divides a video picture into three types of pictures (ie, intra “I”, prediction “P”, and bi-directional prediction “B”). By definition, all macroblocks in an I picture must be coded intra (like a baseline JPEG picture). Furthermore, the macroblocks in the P picture can be encoded as intra or non-intra. During non-intra coding of a P picture, the P picture is temporarily predicted from a previously reconstructed picture, thereby coding for the immediately preceding I or P picture. Finally, macroblocks within a B (ie bi-directional prediction) picture may be independently selected as non-intra, such as intra or forward prediction, reverse prediction or forward and reverse (interpolated) prediction. During non-intra coding of a B picture, the picture is coded with reference to the immediately preceding I or P picture as well as the immediately following I or P picture. In terms of coding order, P pictures are causal, while B pictures are not causal and use two surrounding pictures that were accidentally coded for prediction. Regarding the compression efficiency, the I picture has the lowest efficiency, the P picture is somewhat better, and the B picture is the most efficient.

すべてのマクロブロックヘッダーは、マクロブロックタイプと呼ばれる要素を含み、これはスイッチのようにこれらのモードをオンおよびオフにできる。マクロブロック(または、MPEG−2におけるようなモーションタイプ)タイプは、ことによると、ビデオ構文全体の中で単独で最も強力な要素である。ピクチャタイプ(I、PおよびB)は、単に、意味論の範囲を広げてマクロブロックモードを可能にする。   Every macroblock header contains an element called a macroblock type, which can turn these modes on and off like a switch. The macroblock (or motion type as in MPEG-2) type is perhaps the single most powerful element in the overall video syntax. Picture types (I, P and B) simply extend the scope of semantics to allow macroblock mode.

ピクチャのシーケンスは、I、PおよびBピクチャのほとんどどのようなパターンからでも成り得る。固定パターン(例えば、IBBPBBPBBPBBPBB)を持つことは工業的には一般的であるけれども、より進化した符号器は、よりグローバルな特徴の文脈中のローカルなシーケンスの特徴に従って3つのピクチャタイプの配置を最適化することを試みる。   A sequence of pictures can consist of almost any pattern of I, P and B pictures. Although having a fixed pattern (eg, IBBPBBPBBPBBPBB) is common in the industry, more advanced encoders optimize the placement of three picture types according to local sequence features in the context of more global features Try to make it.

前に説明したように、Bピクチャを再構築するためには復号器は2つの参照フレーム(すなわち、2つのPフレーム、PおよびIフレーム各1つ、または2つのIフレーム)を必要とするので、ビデオ復号・表示システムは、2つの参照フレームを格納するために、ビデオメモリの少なくとも2つのフレームを割り当てなければならない。   As previously explained, in order to reconstruct a B picture, the decoder requires two reference frames (ie, two P frames, one P and I frame each, or two I frames). The video decoding and display system must allocate at least two frames of video memory in order to store two reference frames.

(2)2つの半フレーム
(i)インターレースビデオ
さらに、MPEG−2は、フレームがプログレッシブに符号化、またはインターレースされ「プログレッシブフレーム」変数により信号で伝えられ得ることを定義する。
プログレッシブフレームは、フィルムから組織されたビデオ材料のための論理選択であり、そこではすべての「画素」が統合、すなわちほとんど同じ瞬間にキャプチャされる。ピクチャ上の場面の光学的イメージは、1度に1ラインが、左から右そして上から下へ走査される。垂直方向に表し得る細部は、走査線数により制限される。従って、ラスタ走査低下の結果として、垂直解像度の細部のいくらかが失われる。同様に、各走査線のサンプリングのため、水平方向の細部のいくらかが失われる。
(2) Two half-frames (i) Interlaced video In addition, MPEG-2 defines that a frame can be progressively encoded or interlaced and signaled by a “progressive frame” variable.
Progressive frames are a logical choice for video material organized from film, where all “pixels” are integrated, that is, captured almost at the same moment. The optical image of the scene on the picture is scanned one line at a time, left to right and top to bottom. The details that can be represented in the vertical direction are limited by the number of scan lines. Thus, some of the details of the vertical resolution are lost as a result of raster scan degradation. Similarly, because of the sampling of each scan line, some of the horizontal details are lost.

走査線の選択は、帯域幅、フリッカおよび解像度の矛盾した要件間のトレードオフを伴う。インターレースフレーム走査は、異なる時間にサンプリングされた2つのフィールドのラインで構成されたフレームを用いてこれらのトレードオフを達成しようとし、2つのフィールドのラインはインターリーブされており、それにより、フレームの2つの連続するラインは交互のフィールドに属する。これは空間的および時間的解像度における垂直−時間的トレードオフである。   Scan line selection involves a trade-off between inconsistent requirements of bandwidth, flicker and resolution. Interlaced frame scans attempt to achieve these trade-offs using frames composed of two field lines sampled at different times, and the two field lines are interleaved, so that Two consecutive lines belong to alternating fields. This is a vertical-temporal tradeoff in spatial and temporal resolution.

インターレースされたピクチャのために、MPEG−2は2つの「ピクチャ構造」の選択を提供する。「フィールドピクチャ」では、各々がマクロブロックに分割されて、かつ別々に符号化される個々のフィールドから構成される。他方、「フレームピクチャ」で、各インターレースされたフィールドペアは、1つのフレームに共にインターリーブされ、そのフレームは次にマクロブロックに分割され、符号化される。MPEG−2は、インターレースされたビデオが交互のトップおよびボトムフィールドとして表示されることを必要とする。しかしながら、フレーム内では、トップまたはボトムフィールドの一方が、一時的に最初に符号化され、フレームの第1フィールドピクチャとして送られる。フレーム構造の選択は、MPEG−2パラメータの1つにより示される。   For interlaced pictures, MPEG-2 offers a choice of two “picture structures”. A “field picture” is made up of individual fields that are each divided into macroblocks and encoded separately. On the other hand, in a “frame picture”, each interlaced field pair is interleaved together into one frame, which is then divided into macroblocks and encoded. MPEG-2 requires interlaced video to be displayed as alternating top and bottom fields. However, within a frame, one of the top or bottom fields is temporarily encoded first and sent as the first field picture of the frame. The selection of the frame structure is indicated by one of the MPEG-2 parameters.

インターレースされたフレームピクチャを処理する従来の復号・表示システムにおいて、たとえトップフィールドおよびボトムフィールドのために再構築された両方のデータが復号器により同時に生成されたとしても、ボトムフィールドはトップフィールドの表示完了後にやっと表示されるか、あるいは逆の場合も同じである。ボトムフィールド表示において、この遅延のため、遅延したものについてボトムフィールドを格納するために、1フィールド(半フレーム)サイズのバッファが必要である。付加的な1フィールド(半フレーム)のこの付加的なビデオメモリ要件が、2つの参照フレーム(すなわち、Iおよび/またはPフレーム)を格納するために必要な2つのフレームの前述した要件に加えられることに留意されたい。   In conventional decoding and display systems that process interlaced frame pictures, the bottom field is a representation of the top field, even if both data reconstructed for the top field and the bottom field are generated simultaneously by the decoder. It will only be displayed after completion, or vice versa. Due to this delay in bottom field display, a buffer of one field (half frame) size is required to store the bottom field for the delayed one. This additional video memory requirement of an additional field (half frame) is in addition to the aforementioned requirement of two frames required to store two reference frames (ie, I and / or P frames). Please note that.

(ii)3:2プルダウン
リピート・ファースト・フィールドは、現在のフレームからのフィールドまたはフレームが、フレームレート変換の目的のために繰り返されるべきである(30Hz表示対24Hz符号化の以下の例のように)ことを信号で伝えるために、MPEG−2に導入された。平均して、24フレーム/秒符号化シーケンスにおいて、1つおきの符号化されたフレームは、リピート・ファースト・フィールドフラッグを信号で伝える。従って、24フレーム/秒(または48フィールド/秒)符号化シーケンスは、30フレーム/秒(60フィールド/秒)表示シーケンスになる。このプロセスは数十年来、3:2プルダウンとして知られている。テレビ出現以来、NTSCディスプレイ上で見られたほとんどの映画は、この方法で表示されてきた。MPEG−2フォーマットにおいて、リピート・ファースト・フィールドフラッグはあらゆるフレーム構造化ピクチャにおいて独立して決定されるので、実際のパターンは不規則となり得る(それは、文字どおり1つ置きのフレームである必要はない)。
(Ii) 3: 2 pulldown The repeat first field should be repeated for the purpose of frame rate conversion, or a field or frame from the current frame (as in the following example of 30 Hz display vs. 24 Hz encoding) Introduced in MPEG-2 to signal. On average, in a 24 frame / second encoded sequence, every other encoded frame signals a repeat first field flag. Thus, a 24 frame / second (or 48 field / second) encoded sequence becomes a 30 frame / second (60 field / second) display sequence. This process has been known as 3: 2 pulldown for decades. Since the advent of television, most movies seen on NTSC displays have been displayed this way. In MPEG-2 format, the repeat first field flag is determined independently in every frame-structured picture, so the actual pattern can be irregular (it doesn't have to be every other frame literally) .

MPEG−2ビデオについて、ビデオディスプレイおよびメモリコントローラは、復号されたビデオデータと共に来るフラッグをチェックすることにより、いつ3:2プルダウンを実行するかを自身で決定しなければならない。MPEG−2は、フレームまたはフィールドが繰り返されるべきかどうかを明示的に記述する2つのフラッグ(リピート・ファースト・フィールドおよびトップ・フィールド・ファースト)を提供する。プログレッシブシーケンスにおいて、フレームは2〜3回繰り返され得る。一方、シンプルおよびメインプロファイルは、繰り返されたフィールドにのみ限定される。さらに、リピート・ファースト・フィールドは、プログレッシブフレーム構造化ピクチャにおいてのみ信号で伝えられ得る(値=1)ということは一般的な構文上の制限である。   For MPEG-2 video, the video display and memory controller must determine by itself when to perform 3: 2 pulldown by checking the flag that comes with the decoded video data. MPEG-2 provides two flags (repeat first field and top field first) that explicitly describe whether a frame or field should be repeated. In a progressive sequence, a frame can be repeated 2-3 times. On the other hand, simple and main profiles are limited to repeated fields only. Furthermore, it is a general syntactic limitation that the repeat first field can be signaled only in progressive frame structured pictures (value = 1).

例えば、最も一般的なシナリオでは、1つのフィルムシーケンスは毎秒24フレームを含む。しかしながら、シーケンスヘッダー中のフレームレートエレメントは、30フレーム/秒を示す。平均して、1つおきの符号化されたフレームは、フレームレートを24Hzから30Hzまで水増しするために、リピートフィールド(リピート・ファースト・フィールド=1)の信号を送る。すなわち、(24符号化フレーム/秒)*(2フィールド/符号化フレーム)*(5表示フィールド/4符号化フィールド)=60表示フィールド/秒=30表示フレーム/秒。   For example, in the most common scenario, one film sequence includes 24 frames per second. However, the frame rate element in the sequence header indicates 30 frames / second. On average, every other encoded frame sends a repeat field (repeat first field = 1) signal to pad the frame rate from 24 Hz to 30 Hz. That is, (24 encoded frames / second) * (2 fields / encoded frames) * (5 display fields / 4 encoded fields) = 60 display fields / second = 30 display frames / second.

3:2プルダウン能力を有するシステムについて、ビデオメモリの別の余分な1フィールド(半フレーム)が、最初に表示されたフィールドを後に繰り返す目的で格納するために必要とされる(3:2プルダウンプロトコルによる)。なぜならば、最初に表示されたフィールドは、第2フィールドの表示終了後に表示用に再度必要とされるからである。この要件を説明すると、復号中にトップフィールドが表示されると、次にボトムフィールドはトップフィールドの表示完了に続いて表示される。しかしながら、このトップフィールドは、システムがボトムフィールド表示を終了した後に再び表示用に必要とされる(すなわち、3:2プルダウン)。トップフィールドは、2つの異なる瞬間(すなわち、ボトムフィールド表示の前後)に表示用に必要とされるので、トップフィールドを格納するためにビデオメモリの別の半フレーム(1フィールド)が必要になる。2つの参照フレームを格納するのに必要な前述した2.5フレームに、インターレースされたピクチャを表示するためにの半フレームを加えて、MPEG−2ビデオピクチャを表示するために、従来システムは合計3フレームのビデオメモリを必要とする。   For systems with 3: 2 pull-down capability, another extra field (half frame) of video memory is needed to store the first displayed field for later repetition (3: 2 pull-down protocol). by). This is because the first displayed field is needed again for display after the second field is displayed. To explain this requirement, if a top field is displayed during decoding, then the bottom field is displayed following the completion of the display of the top field. However, this top field is needed for display again after the system finishes the bottom field display (ie, 3: 2 pulldown). Since the top field is required for display at two different moments (ie before and after the bottom field display), another half frame (one field) of video memory is required to store the top field. In order to display an MPEG-2 video picture, the conventional system adds up the aforementioned 2.5 frames needed to store two reference frames plus a half frame to display an interlaced picture. Requires 3 frames of video memory.

(iii)静止フレーム
いくつかの新設計のMPEG−2ビデオ復号・表示システムでは、現在表示中のフレームを利用者が静止させることもできる。「静止フレーム」条件下では、ビデオ復号・表示システムは、利用者からさらに指示があるまで現在表示中のピクチャを繰り返し表示する。停止中はそれ以上の復号および3:2プルダウンが必要とされないので、前述した2つの半フレーム(すなわち、インターレースされたピクチャの表示と3:2プルダウン用)は要求されない。しかしながら、表示中のフリーズされたフレームがプログレッシブBフレームであれば、Bフレーム全体がビデオシステム中に格納される必要があるので、現在表示中のBフレームを格納するために、ビデオメモリの余分なフレームが必要である。フリーズされたフレームがIまたはPフレームであれば、余分なビデオメモリが全く必要とされないことは真実である。なぜなら、これら2つの参照フレームはすでにビデオメモリ中に(順方向予測フレームおよび逆方向予測フレームとして)格納されているからである。しかしながら、通常Bフレームは参照用にビデオメモリ中に格納されないので、ビデオメモリの余分なフレームがBフレーム表示用に必要である。従って、Bフレームピクチャの正確なイメージを表示するためには、参照フレームを格納するために必要な2つのフレームに加え、ビデオメモリの別のフルフレームが必要である。
(Iii) Still Frames In some newly designed MPEG-2 video decoding and display systems, the user can also freeze the currently displayed frame. Under the “still frame” condition, the video decoding / display system repeatedly displays the currently displayed picture until further instruction from the user. Since no further decoding and 3: 2 pulldown are required during the pause, the two half-frames described above (ie, display of interlaced pictures and 3: 2 pulldown) are not required. However, if the frozen frame being displayed is a progressive B frame, the entire B frame needs to be stored in the video system, so extra memory in the video memory is needed to store the currently displayed B frame. A frame is needed. It is true that no extra video memory is required if the frozen frame is an I or P frame. This is because these two reference frames are already stored in the video memory (as a forward prediction frame and a backward prediction frame). However, normally B frames are not stored in the video memory for reference, so an extra frame of video memory is needed for B frame display. Thus, in order to display an accurate image of a B-frame picture, in addition to the two frames required to store the reference frame, another full frame of video memory is required.

II.従来のビデオ復号・表示システムが直面する問題
MPEG−2メインプロファイル・メインレベルシステムは、CCIR601パラメータにおいてサンプリング限界(NTSCについては720×480×30Hz、PALについては720×576×24Hz)を有すると規定されている。用語「プロファイル」は、MPEGにおいて使われる構文(すなわち、アルゴリズム)を限定するために用いられ、用語「レベル」は、符号化パラメータ(サンプルレート、フレーム寸法、符号化されたビットレート等)を限定するために用いられる。それと共に、ビデオメインプロファイル・メインレベルは、複雑さを1994VLSI技術の実現可能な制限で標準化し、それでもやはり大半のアプリケーションの要求を満たす。
II. Problems faced by conventional video decoding and display systems The MPEG-2 main profile main level system specifies that it has a sampling limit (720 x 480 x 30 Hz for NTSC and 720 x 576 x 24 Hz for PAL) in CCIR601 parameters Has been. The term “profile” is used to limit the syntax (ie, algorithm) used in MPEG, and the term “level” limits the encoding parameters (sample rate, frame size, encoded bit rate, etc.). Used to do. Along with that, the video main profile main level standardizes complexity with the feasible limitations of 1994 VLSI technology and still meets the requirements of most applications.

CCIR601レートビデオについて、PAL/SECAM復号・表示システムに必要な3フレームが、復号器のビデオメモリ要件を、通常の16Mビット(2Mバイト)限界を越えて、32−Mビットの次のレベルのメモリデザインへと押しやる。このメモリ制約は、1997年7月8日に登録され、本願と同じ譲受人に譲渡されたCismasによる米国特許第5,646,693号(特許文献1)で論じられている。この特許は、その全体が本願明細書において参照により援用されている。従来技術においてよく立証されてきたように、ビデオメモリを16−Mビット以上に増大させると、メモリコントローラのデザインを複雑にし、また別の16Mビットビデオメモリの製造費用が加わることになる。   For CCIR 601 rate video, the 3 frames required for the PAL / SECAM decoding and display system exceed the decoder's video memory requirements beyond the normal 16 Mbit (2 Mbyte) limit and 32-Mbit next level memory Push to design. This memory constraint is discussed in US Pat. No. 5,646,693 by Cismas, registered on July 8, 1997 and assigned to the same assignee as the present application. This patent is hereby incorporated by reference in its entirety. As has been well documented in the prior art, increasing video memory beyond 16-Mbits complicates the design of the memory controller and adds to the cost of manufacturing another 16Mbit video memory.

特許文献1は、サイズが通常のビデオメモリ要件よりも小さい(すなわち、メモリの3フレーム)フレームバッファを用いて、MPEGビデオの復号・表示を行なうシステムおよび方法を開示している。復号・表示の間、特許文献1のシステムは、完全な第2のフィールドを格納する代わりに、第1のフィールドが表示されつつある時は、第2のフィールドの一部のみを格納する。表示のために第2のフィールドが必要になると、復号器は、第2のフィールドの足りない部分を再度復号して、第2のフィールド表示用の残りのデータを生成する。第2のフィールドを表示するために、最初に表示されたフィールドについて割り当てられた同じ格納場所を再度利用することによって、復号・表示システムは、メモリの半フレームまでの節約をする(パーティションの数による)。しかしながら、表示中のビデオメモリ不足の問題を特許文献1のシステムがたとえ解決したとしても、特許文献1のシステムは、第2のフィールドの足りない部分を2度目に復号するための付加的な復号パワーを必要とする。従って、ビデオメモリの要件を低減する一方で、第2の復号段階を無くすという特許文献1と同じ目的を達成できる新しいビデオメモリ管理システムが望まれている。   Patent Document 1 discloses a system and method for decoding and displaying MPEG video using a frame buffer that is smaller in size than normal video memory requirements (ie, three frames of memory). During decoding and display, the system of Patent Document 1 stores only a part of the second field when the first field is being displayed, instead of storing the complete second field. When the second field is required for display, the decoder again decodes the missing portion of the second field to generate the remaining data for the second field display. By reusing the same storage location allocated for the first displayed field to display the second field, the decoding and display system saves up to half a frame of memory (depending on the number of partitions). ). However, even if the system of Patent Document 1 solves the problem of video memory shortage during display, the system of Patent Document 1 performs additional decoding for decoding the missing part of the second field for the second time. Requires power. Therefore, a new video memory management system is desired that can achieve the same purpose as that of US Pat.

本発明の付加的な目的および利点は、以下の説明中で述べられ、またその説明からある程度明らかになるか、あるいは本発明の実施により学ばれ得る。本発明の目的および利点は、特に特許請求の範囲において指摘される手段および組合せによって実現および達成され得る。   Additional objects and advantages of the invention will be set forth in the description which follows, and in part will be apparent from the description, or may be learned by practice of the invention. The objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.

米国特許第5,646,693号US Pat. No. 5,646,693

本発明は、圧縮されたビデオデータのビットストリームの復号・表示に用いられるビデオメモリを取り扱うための改良されたビデオメモリコントロールシステムに向けられている。詳細には、本発明は、圧縮されたビデオデータのビットストリームの受信、圧縮されたビデオデータの復号、およびその中に含まれているイメージの表示のためのビデオメモリ管理システムに向けられている。   The present invention is directed to an improved video memory control system for handling video memory used for decoding and displaying a bit stream of compressed video data. In particular, the present invention is directed to a video memory management system for receiving a bitstream of compressed video data, decoding the compressed video data, and displaying the images contained therein. .

このメモリ管理システムの1つの側面は、ビデオメモリ管理を取り扱うためのモジュール式メモリ管理システムまたは装置を提供することである。より詳細には、本発明のビデオ復号・表示システムは、2つの別個のメモリマネージャを有する分割メモリマネージャから成る。これらのメモリマネージャの各々は、特定のメモリ管理機能を取り扱う。メモリ管理機能を種々のメモリマネージャ間で分けることにより、ビデオデータの復号・表示はより効率的に実行できる。   One aspect of this memory management system is to provide a modular memory management system or apparatus for handling video memory management. More particularly, the video decoding and display system of the present invention consists of a split memory manager having two separate memory managers. Each of these memory managers handles a specific memory management function. By dividing the memory management function among the various memory managers, decoding and display of video data can be performed more efficiently.

本発明の別の側面は、ビデオメモリの斬新な処理および取り扱方法を提供することで、これによりMPEG−2データストリームの効率的な取り扱い方法が提供される。特に、セグメント化された再利用可能なビデオメモリ管理システムが開示されている。   Another aspect of the present invention provides a novel method for processing and handling video memory, thereby providing an efficient method for handling MPEG-2 data streams. In particular, a segmented reusable video memory management system is disclosed.

本発明の別の側面は、ビデオ復号・表示システムに必要とされるビデオメモリのサイズをさらに減らすことが可能なフレーム内ビデオデータ圧縮システムを提供することである。   Another aspect of the present invention is to provide an intra-frame video data compression system that can further reduce the size of video memory required for video decoding and display systems.

添付図面は、本願明細書中に含まれかつその一部を構成しており、本発明の好ましい実施態様を例示するもので、前述した全般的説明および以下に示される好ましい実施態様の詳細な説明と共に、本発明の原理の説明を助けるものである。   The accompanying drawings are included in and constitute a part of this specification and exemplify the preferred embodiments of the present invention, the general description given above and the detailed description of the preferred embodiments given below. At the same time, it helps to explain the principle of the present invention.

従来のビデオ復号・表示システムを示す。1 shows a conventional video decoding / display system. 本発明の分割メモリマネージャデザインの好ましい実施態様を示す。2 illustrates a preferred embodiment of the split memory manager design of the present invention. 本発明の分割メモリマネージャデザインの別の好ましい実施態様を示す。4 illustrates another preferred embodiment of the split memory manager design of the present invention. 表示セグメントリストとメモリセグメントリストとを用いた、ビデオメモリを間接的にアドレスする方法を示す。A method for indirectly addressing video memory using a display segment list and a memory segment list is shown. メモリセグメントリストの詳細を示す。Details of the memory segment list are shown. 表示セグメントリストの詳細を示す。The details of the display segment list are shown. (a)フレームピクチャフォーマットおよび(b)フィールドピクチャフォーマットのための表示セグメントリスト上の2つの書き込みポインタおよび読み取りポインタの位置決めを示す。FIG. 4 shows the positioning of two write pointers and a read pointer on the display segment list for (a) frame picture format and (b) field picture format. セグメント化された再利用可能なビデオメモリデザインの詳細を示すブロック図である(本発明者によりローリングメモリデザインと名付けられている)。FIG. 2 is a block diagram showing details of a segmented reusable video memory design (named by the inventor as a rolling memory design). 各ピクチャについての表示セグメントリストの初期化の詳細を示す。Details of initialization of the display segment list for each picture are shown. 各マクロブロック行の復号されたビデオデータのビデオメモリへの書き込みを示す。Fig. 4 shows the writing of the decoded video data of each macroblock row into the video memory. 表示セグメントリストの更新の詳細を示す。Details of updating the display segment list are shown. FlexiRamデザインの3つの好ましい実施態様を示す。3 shows three preferred embodiments of the FlexiRam design. FlexiRamデザインの別の3つの好ましい実施態様のうちの1つを示す。Fig. 4 shows one of three other preferred embodiments of the FlexiRam design. FlexiRamデザインの別の3つの好ましい実施態様のうちの1つを示す。Fig. 4 shows one of three other preferred embodiments of the FlexiRam design. FlexiRamデザインの別の3つの好ましい実施態様のうちの1つを示す。Fig. 4 shows one of three other preferred embodiments of the FlexiRam design. ビデオデータ圧縮・復元の段階を示すブロック図である。It is a block diagram which shows the step of video data compression and decompression | restoration. 圧縮および復元の種々の段階の間のカルテットのビデオデータフォーマットを示す。Fig. 4 shows a quartet video data format during various stages of compression and decompression.

本発明は、いくつかの好ましい実施態様について説明される。好ましい実施態様は、ビデオデータの取り扱いおよび処理のための装置および方法である。以下の本発明の3つの側面が詳細に論じられる。すなわち、(1)分割ビデオメモリマネージャ、(2)セグメント化再利用可能メモリデザイン(本発明者により「ローリングメモリデザイン」と名付けられている)、および(3)方法および用途を考慮しないシンプル固定低ビットレート補助圧縮技術(本発明者により「FlexiRam」と名付けられている)である。本発明のこれら3つの側面すべては、ビデオメモリデータの効率的取り扱いについて開示され、単独のビデオ復号・表示システムにおいて実行できる。   The invention will be described with reference to several preferred embodiments. The preferred embodiment is an apparatus and method for handling and processing video data. The following three aspects of the present invention are discussed in detail. (2) segmented reusable memory design (named by the inventor as “rolling memory design”), and (3) simple fixed low without considering method and application. Bit rate assisted compression technology (named "FlexiRam" by the inventor). All three aspects of the present invention are disclosed for efficient handling of video memory data and can be implemented in a single video decoding and display system.

1.分割ビデオメモリマネージャ
図1は、従来のビデオ復号・表示システムを示すもので、復号器110、メモリマネージャ120、ビデオメモリ130、および表示サブシステム140から成っている。符号化されたビデオデータの連続したビットストリームは、復号および表示のため復号器110に供給される。ビデオデータの連続したビットストリームは、全体的なシステムデザインに応じて、一定または可変ビットレートで供給される。復号器110はビットストリームを復元し、次に復元されたデータをメモリマネージャ120に供給する。メモリマネージャ120は、復元されたビデオデータをビデオメモリ130中に格納し、そのビデオデータを表示サブシステム140に供給する役割を果たしている。
1. Divided Video Memory Manager FIG. 1 illustrates a conventional video decoding and display system, which comprises a decoder 110, a memory manager 120, a video memory 130, and a display subsystem 140. A continuous bit stream of encoded video data is provided to decoder 110 for decoding and display. A continuous bit stream of video data is supplied at a constant or variable bit rate, depending on the overall system design. Decoder 110 restores the bitstream and then provides the restored data to memory manager 120. The memory manager 120 serves to store the restored video data in the video memory 130 and supply the video data to the display subsystem 140.

ビデオメモリ130は基本的に、2つの主要な機能を果たしている。すなわち、第1に、これはビデオデータの入り来るビットストリームの復号と復号されたビデオイメージの表示との間で異なる処理測度を緩衝するためのビデオデータバッファとして働く。ビデオイメージ表示のいかなる中断も防止するため、復号器110は、表示サブシステム140からの要求よりも速くビデオデータを復元することが一般に要求される。第2に、ビデオメモリ130は、参照フレームデータ(すなわち、IおよびPフレーム)を格納し、データの入り来るビットストリームからビデオイメージを再構築するために復号器110に提供することが必要である。従って、図1に示すように、復号器110とメモリマネージャ120との間のデータバスは双方向であり、それにより復元されたデータは、メモリマネージャ120へおよびそこから流れている。   The video memory 130 basically performs two main functions. That is, first, it serves as a video data buffer to buffer different processing measures between decoding the incoming bitstream of video data and displaying the decoded video image. In order to prevent any interruption of the video image display, the decoder 110 is generally required to recover the video data faster than the request from the display subsystem 140. Second, video memory 130 needs to store reference frame data (ie, I and P frames) and provide to decoder 110 to reconstruct the video image from the incoming bitstream of data. . Thus, as shown in FIG. 1, the data bus between the decoder 110 and the memory manager 120 is bi-directional so that the recovered data flows to and from the memory manager 120.

図2は、本発明により開示される斬新な分割メモリマネージャデザインを説明するものである。図1に示すような従来のシングルメモリマネージャデザインの代わりに、本発明のメモリマネージャは2つの別個のメモリマネージャから成っている。すなわち、第1メモリマネージャ210と第2メモリマネージャ220である。各メモリマネージャはビデオメモリ(すなわち、第1メモリ230および第2メモリ240)に連結されている。   FIG. 2 illustrates the novel partitioned memory manager design disclosed by the present invention. Instead of the conventional single memory manager design as shown in FIG. 1, the memory manager of the present invention consists of two separate memory managers. That is, the first memory manager 210 and the second memory manager 220. Each memory manager is coupled to a video memory (ie, first memory 230 and second memory 240).

前の段落で論じたように、基本的に、ビデオメモリに格納される2つのビデオデータグループがある。参照フレームデータ(すなわち、IおよびPフレーム)と、双方向フレームデータ(すなわち、Bフレーム)である。ビデオデータのこれら2つのグループは、復号および表示両方において異なって処理されるので、ビデオデータのこれら2つのグループ間のビデオメモリの取り扱いはまったく異なる。   As discussed in the previous paragraph, there are basically two groups of video data stored in video memory. Reference frame data (ie, I and P frames) and bidirectional frame data (ie, B frames). Since these two groups of video data are handled differently in both decoding and display, the handling of video memory between these two groups of video data is quite different.

本発明の好ましい実施態様において、第1メモリマネージャ210および結合第1メモリ230は、参照フレーム(すなわち、IおよびPフレーム)を取り扱いかつ格納するために割り当てられるのに対し、第2メモリマネージャ220および結合第2メモリ240は、双方向フレーム(すなわち、Bフレーム)データを取り扱いかつ格納するために割り当てられる。ビデオメモリコントローラを2つの分離された別個のメモリコントローラに分割することにより、各種類のビデオデータを取り扱うのに最も効率的なメモリ管理および/または圧縮方法を実行するために、2つのコントローラの各々を特別にデザインできる。従来のメモリマネージャを2つの別個のマネージャに分割することにより、従来のビデオ復号・表示システムに優る、ビデオデータをより効率的に取り扱うことができる一方で、単純なシステムデザインを有するという利点が本発明によりもたらされる。   In a preferred embodiment of the present invention, the first memory manager 210 and the combined first memory 230 are allocated to handle and store reference frames (ie, I and P frames), whereas the second memory manager 220 and The combined second memory 240 is allocated to handle and store bi-directional frame (ie, B frame) data. By dividing the video memory controller into two separate and separate memory controllers, each of the two controllers is implemented to perform the most efficient memory management and / or compression method for handling each type of video data. Can be specially designed. By dividing the conventional memory manager into two separate managers, video data can be handled more efficiently than conventional video decoding and display systems, while having the advantage of having a simple system design. Invented by the invention.

例えば、特許文献1が開示したビデオメモリ管理システムにおいて、メモリ管理方法はBフレームに向けられる。分割メモリマネージャデザインを用いた好ましい実施態様において、第1メモリマネージャ210または310および付属する第1メモリ230または330が従来のビデオメモリ管理機能を実行するのに対して、第2メモリマネージャ220または320および付属する第2メモリ240または340のみが特許文献1のメモリ管理技術を実行するようにデザインすることができる。従って、個々の種類のビデオデータ用に特定のビデオメモリ管理技術をカスタマイズできるという本発明の能力は、従来デザインに優るより大きなデザイン柔軟性をビデオシステム設計者にもたらす。   For example, in the video memory management system disclosed in Patent Document 1, the memory management method is directed to the B frame. In a preferred embodiment using a split memory manager design, the first memory manager 210 or 310 and the attached first memory 230 or 330 perform conventional video memory management functions, whereas the second memory manager 220 or 320. And only the attached second memory 240 or 340 can be designed to perform the memory management technique of US Pat. Thus, the ability of the present invention to customize specific video memory management techniques for individual types of video data provides video system designers with greater design flexibility over conventional designs.

さらに、別の好ましい実施態様において、本発明は3つのメモリマネージャから成る。第1メモリマネージャはIフレームを取り扱う。第2マネージャはPフレームを取り扱う。さらに、第3メモリマネージャはBフレームのみを取り扱う。
別の好ましい実施態様において、本発明は3つメモリマネージャから成る。3つのメモリマネージャの各々は、3つの色成分(例えば、Y、U、およびV)の1つを取り扱う。
Furthermore, in another preferred embodiment, the present invention comprises three memory managers. The first memory manager handles I frames. The second manager handles P frames. Furthermore, the third memory manager handles only B frames.
In another preferred embodiment, the present invention comprises three memory managers. Each of the three memory managers handles one of the three color components (eg, Y, U, and V).

多数のメモリマネージャを有するさらなる好ましい実施態様において、メモリマネージャの各々は、ビデオデータのタイプ(例えば、色成分)および/またはグループ(例えば、参照フレームまたは双方向フレーム)の異なる組合せを取り扱うことができる。例えば、好ましい実施態様において、ビデオ復号・表示システムは、Iピクチャ用のYクロマ成分を取り扱うための第1メモリマネージャ、Bピクチャ用のUおよびVクロマ成分を取り扱うための第2メモリマネージャ、IおよびPピクチャ用のUおよびVクロマ成分を取り扱うための第3メモリマネージャ、および残りのビデオデータを取り扱うための第4メモリマネージャから成る。4つのメモリマネージャの各々は、異なるメモリ管理技術を利用できる。
本発明の分割メモリマネージャデザインによりもたらされるデザイン柔軟性はほとんど無制限なので、ビデオデータの特定の種類または定義に適合するように、個々のメモリマネージャをカスタマイズし得る。
In a further preferred embodiment having multiple memory managers, each of the memory managers can handle different combinations of video data types (eg, color components) and / or groups (eg, reference frames or bi-directional frames). . For example, in a preferred embodiment, the video decoding and display system includes a first memory manager for handling Y chroma components for I pictures, a second memory manager for handling U and V chroma components for B pictures, I and It consists of a third memory manager for handling U and V chroma components for P pictures and a fourth memory manager for handling the remaining video data. Each of the four memory managers can utilize a different memory management technique.
Since the design flexibility provided by the split memory manager design of the present invention is almost unlimited, individual memory managers can be customized to suit a particular type or definition of video data.

図3は、本発明の別の好ましい実施態様を示すものである。MPEG−2のメインプロファイル・メインレベルの定義の下では、リピート・ファースト・フィールドは、PAL規格についてのBフレームについては許されない。従って、MPEG−2メインプロファイル・メインレベルPALシステムについてデザインされた好ましい実施態様において、リピート・ファースト・フィールドは第2メモリマネージャ320に供給される必要はない。なぜならば、第2メモリマネージャ320はBフレームピクチャのみを処理するからである。しかしながら、トップ・フィールド・ファースト信号は、インターレースされたピクチャを取り扱うための第1メモリマネージャ310および第2メモリマネージャ320の両方にとり依然として必要である。   FIG. 3 shows another preferred embodiment of the present invention. Under the MPEG-2 main profile main level definition, the repeat first field is not allowed for B frames for the PAL standard. Thus, in a preferred embodiment designed for an MPEG-2 main profile main level PAL system, the repeat first field need not be provided to the second memory manager 320. This is because the second memory manager 320 processes only B frame pictures. However, the top field first signal is still needed for both the first memory manager 310 and the second memory manager 320 for handling interlaced pictures.

2.セグメント化された再利用可能なビデオメモリデザイン
本発明の別の側面は、フィールドピクチャおよびフレームピクチャ両方を取り扱うことができるビデオ復号・表示システムのためのビデオメモリ割り当てを取り扱う方法に向けられている。
前に説明したように、MPEG−2は、インターレースされたピクチャに対し2つのピクチャ構造の選択を提供する。フィールドピクチャは、各々がマクロブロックに分割され、個別に符号化された個々のフィールドから成る。一方、フレームピクチャでは、インターレースされた各フィールドペアは一緒に1つのフレームにインターリーブされ、そのフレームは次にマクロブロックに分割され、符号化される。MPEG−2は、インターレースされたビデオが交互のトップおよびボトムフィールドとして表示されることを必要とする。しかしながら、フレーム内では、トップまたはボトムフィールドの一方が一時的に先に符号化され、あらかじめ定められた定義に従ってフレームの第1フィールドピクチャとして送られ得る。2つのピクチャ構造についての復号されたデータのシーケンスにおける違いのため、これらの2つのフォーマットにより定義されたビデオデータの読み取りおよび書き込みは、異なる2つの順番で実行される。
2. Segmented Reusable Video Memory Design Another aspect of the present invention is directed to a method of handling video memory allocation for a video decoding and display system capable of handling both field pictures and frame pictures.
As previously described, MPEG-2 provides a choice of two picture structures for interlaced pictures. A field picture consists of individual fields, each divided into macroblocks and individually encoded. On the other hand, in a frame picture, each interlaced field pair is interleaved together into one frame, which is then divided into macroblocks and encoded. MPEG-2 requires interlaced video to be displayed as alternating top and bottom fields. However, within a frame, one of the top or bottom fields can be temporarily encoded first and sent as the first field picture of the frame according to a predefined definition. Due to differences in the sequence of decoded data for the two picture structures, the reading and writing of the video data defined by these two formats is performed in two different orders.

図4は、本発明の好ましい実施態様を説明するものである。図に示されるように、ビデオメモリ410は多数のメモリセグメントに区切られている。メモリセグメントの各々は、2つのフィールドのうちの1つのビデオデータの8本の連続するラインを格納することができる。メモリマネージャは、2つのリスト、MS(メモリセグメント)420およびDS(表示セグメント)430を作り出しかつ維持する。各メモリセグメントは、メモリセグメントリスト420のエントリを介して、表示セグメントリスト430のエントリにより間接的にアドレス指定される。MSリスト420は、ビデオメモリセグメントと同数のエントリを有し、MSリストの各エントリは1つのメモリセグメントに対応している。好ましい実施態様において、MSリスト420は、48個のメモリセグメントをビデオメモリ410中にアドレスするための48個のエントリを有している。PALのケースについて、ビデオメモリ中の48個のメモリセグメントがフレームの2/3に対応している。MSリスト420の各エントリは、ビデオメモリ410中のメモリセグメントの第1セルアドレスを定義する20ビットアドレスを含んでいる。これらのアドレスは、システム設計に応じて、静的または動的とし得る。例えば、MPEG−2ビデオデータの復号・表示用に特にデザインされた専用システムにおいて、システムオーバーヘッドを減らすため、アドレスは、好ましくは静的であって動的ではない。しかしながら、MPEG−1およびMPEG−2ビデオデータ両方を表示可能なシステムのような多目的デジタル式復号・表示システムにおいて、これらのアドレスは、種々のビデオメモリ管理方法に対処できるように、好ましくは動的に維持される。   FIG. 4 illustrates a preferred embodiment of the present invention. As shown, the video memory 410 is partitioned into a number of memory segments. Each of the memory segments can store eight consecutive lines of video data in one of two fields. The memory manager creates and maintains two lists, MS (memory segment) 420 and DS (display segment) 430. Each memory segment is indirectly addressed by an entry in the display segment list 430 via an entry in the memory segment list 420. The MS list 420 has as many entries as video memory segments, and each entry in the MS list corresponds to one memory segment. In the preferred embodiment, MS list 420 has 48 entries for addressing 48 memory segments into video memory 410. For the PAL case, 48 memory segments in the video memory correspond to 2/3 of the frame. Each entry in the MS list 420 includes a 20-bit address that defines the first cell address of a memory segment in the video memory 410. These addresses may be static or dynamic depending on the system design. For example, in a dedicated system specifically designed for decoding and displaying MPEG-2 video data, the addresses are preferably static and not dynamic to reduce system overhead. However, in a multi-purpose digital decoding and display system, such as a system capable of displaying both MPEG-1 and MPEG-2 video data, these addresses are preferably dynamic so as to accommodate various video memory management methods. Maintained.

図4に示されるような好ましい実施態様において、DSリスト430は、表示スクリーンへビデオメモリ410をマッピングする。表示スクリーンは多数のセグメントに論理的に分割されており、DSリスト430の各エントリは表示スクリーンの1つのセグメントに対応している。好ましい実施態様において、DSリスト430は72個のエントリを含み、1つが各表示セグメントに対応している。72という数が選ばれたのは、PALフォーマットにおいて、576本のラインが表示され、かつ各セグメントなビデオデータの8本のラインを含んでいるからである。従って、数72=576/8が選択される。   In the preferred embodiment as shown in FIG. 4, the DS list 430 maps the video memory 410 to the display screen. The display screen is logically divided into a number of segments, and each entry in the DS list 430 corresponds to one segment of the display screen. In the preferred embodiment, the DS list 430 includes 72 entries, one corresponding to each display segment. The number 72 was chosen because 576 lines are displayed in the PAL format and contain 8 lines of video data for each segment. Therefore, the number 72 = 576/8 is selected.

図4と図5に示されるように、MSリスト420の各エントリは、ビデオメモリの特定のメモリセグメントがビジーであるかどうかを示すために、1つの付加的なビジービット510(「ビジービット」)を含んでいる。具体的には、あるメモリセグメントに書き込まれてそれが表示されなければ、それはビジーとして示される。同様に、ビジーでないメモリセグメントとは、そのメモリセグメントが表示されたが、新しいデータはなんらその中に含まれていないことを意味する。本発明にとり、ビジービット510を用いることは非常に重要である。なぜならば、MSリスト420中の各エントリ上のビジービット510のスイッチングは、ビデオメモリ410中の論理的スライディングウインドウを定義することと特徴付け得るからである。データがビデオメモリセグメントに書き込みされおよびそこから読み出された時にビジービット510を「オン」および「オフ」に設定することにより、論理的スライディングウインドウは、ビジービットが「オン」のMSリスト中の対応するエントリを有するすべてのメモリセグメントとして定義される。さらに、論理的スライディングウインドウは、図7に示されるように、2つのDS書き込みポインタ(すなわち、710および720、または730および740)および読み取りポインタ(すなわち、750または760)のインクリメントおよび更新によっても維持される。   As shown in FIGS. 4 and 5, each entry in the MS list 420 has one additional busy bit 510 (“busy bit”) to indicate whether a particular memory segment of video memory is busy. ) Is included. Specifically, if it is written to a memory segment and it is not displayed, it is indicated as busy. Similarly, a non-busy memory segment means that the memory segment has been displayed but no new data is contained therein. For the present invention, it is very important to use the busy bit 510. This is because the switching of the busy bit 510 on each entry in the MS list 420 can be characterized as defining a logical sliding window in the video memory 410. By setting the busy bit 510 "on" and "off" when data is written to and read from the video memory segment, the logical sliding window is in the MS list with the busy bit "on". Defined as all memory segments with corresponding entries. In addition, the logical sliding window is also maintained by incrementing and updating the two DS write pointers (ie, 710 and 720, or 730 and 740) and the read pointer (ie, 750 or 760), as shown in FIG. Is done.

ビデオメモリ410中のメモリセグメントおよびMSリスト420中のエントリの物理的位置が、DSリスト430中のエントリのように連続して割り当てられなくても、論理的スライディングウインドウは、DSリスト430中の連続しているエントリにより定義される。ビデオメモリ410中のメモリセグメントにより多くの復号データが格納された後に論理的スライディングウインドウはサイズが増大するのに対し、ビデオメモリ410中のメモリセグメントから復号データが読み出された後では、サイズが減少する。さらに、ビデオデータがビデオメモリから読み出されおよびそれに書き込まれると、論理的スライディングウインドウは位置がシフトする(すなわち、DSリスト430下方へ)。本発明のキーコンセプトは、表示スクリーンの一部に対応する論理的に連続するメモリスペースを定義できることあり、対応する復号されたビデオデータは、たとえそのビデオデータが物理的ビデオメモリにランダムに格納されることがあったとしても、現在ビデオメモリに書き込まれており、かつ表示されていない。本発明の利点は、物理的ビデオメモリのサイズをフルピクチャより小さくできることである。理論上は、物理的メモリサイズはフルピクチャの格納に必要なサイズの半分(すなわち、フレームの半分)まで小さくし得る。   Even though the memory segment in the video memory 410 and the physical location of the entries in the MS list 420 are not assigned consecutively as the entries in the DS list 430, the logical sliding window is contiguous in the DS list 430. It is defined by the entry. The logical sliding window increases in size after more decoded data is stored in the memory segment in the video memory 410, whereas after the decoded data is read from the memory segment in the video memory 410, the size increases. Decrease. Furthermore, as video data is read from and written to video memory, the logical sliding window shifts in position (ie, down the DS list 430). The key concept of the present invention is that a logically contiguous memory space corresponding to a portion of the display screen can be defined, and the corresponding decoded video data is stored randomly in physical video memory. If present, it is currently written to video memory and is not displayed. An advantage of the present invention is that the size of the physical video memory can be made smaller than a full picture. In theory, the physical memory size can be as small as half the size required to store a full picture (ie half a frame).

図4は、本発明の好ましい実施態様により用いられる間接的アドレッシングスキームを示すものである。DSリスト430の各エントリは、MSリスト420の1つのエントリを指すインデックスを格納するのに対し、MSリスト420の各エントリは、ビデオメモリ410のメモリセグメントのアドレスを格納する。   FIG. 4 illustrates the indirect addressing scheme used by the preferred embodiment of the present invention. Each entry in the DS list 430 stores an index that points to one entry in the MS list 420, whereas each entry in the MS list 420 stores the address of a memory segment in the video memory 410.

好ましい実施態様において、本発明のビデオ復号・表示システムは、フレームピクチャフォーマットおよびフィールドピクチャフォーマット両方におけるインターレースされたピクチャを取り扱う。従って、図6に示されるように、DSリスト430は、論理的に2つの部分に区切られる。すなわち、トップフィールドに対応するトップポーション610およびボトムフィールドに対応するボトムポーション620である。0から35まで索引を付けられたエントリはトップフィールドに属し、36から71まで索引を付けられたエントリはボトムフィールドに属する。DSリスト430を対応するビデオメモリセグメント420に一致させるため、DSリスト430の各エントリは、MSリスト420への6ビットインデックス(0から47)を含む。従って、DSリスト430の各エントリはMSリスト420のエントリを参照し、かつビデオメモリの1つのセグメントに間接的にアドレスする(図4参照)。   In a preferred embodiment, the video decoding and display system of the present invention handles interlaced pictures in both frame picture format and field picture format. Accordingly, as shown in FIG. 6, the DS list 430 is logically divided into two parts. That is, the top portion 610 corresponding to the top field and the bottom portion 620 corresponding to the bottom field. Entries indexed from 0 to 35 belong to the top field, and entries indexed from 36 to 71 belong to the bottom field. In order to match the DS list 430 to the corresponding video memory segment 420, each entry in the DS list 430 includes a 6-bit index (0 to 47) into the MS list 420. Thus, each entry in the DS list 430 refers to an entry in the MS list 420 and indirectly addresses one segment of video memory (see FIG. 4).

図7に示されるように、好ましい実施態様において、DSリスト430用に3つのポインタが維持される。すなわち、読み取り・表示用の読み取りポインタ(すなわち、750または760)1つ、およびビデオメモリ書き込み用の書き込みポインタ(すなわち、710、720または730、740)2つである。
フィールドピクチャおよびフレームピクチャについて、これら3つのDSポインタは異なる位置に割り当てられる。
As shown in FIG. 7, in the preferred embodiment, three pointers are maintained for the DS list 430. That is, one read pointer (ie, 750 or 760) for reading and displaying, and two write pointers (ie, 710, 720 or 730, 740) for writing video memory.
For field pictures and frame pictures, these three DS pointers are assigned to different positions.

図7(a)は、ビデオシステムがフレームピクチャを取り扱っている時のこれら3つのポインタの位置を示すものである。データが2つのフィールド間でインターリーブ的に復号される、フレームピクチャ用ビデオデータのビットストリームを取り扱うため、2つの書き込みポインタ710、720は、間に36のインタバルを有する2つのDSエントリを指すように設定され、それにより、2つの書き込みポインタの各々は、異なるフィールド中の同じオフセット位置にあるエントリを指している(すなわち、トップフィールドおよびボトムフィールド)。さらに、読み取りポインタ750は、次に表示されるべきDSリスト430のエントリを指している。フレームピクチャのトップフィールドおよびボトムフィールド両方に対応するため、論理的スライディングウインドウは、論理的トップウインドウおよび論理的ボトムウインドウからさらに成っている。論理的トップウインドウは、トップウインドウ内にスライディングウインドウを定義し、これはビデオメモリ中のメモリセグメントに間接的にアドレッシングしているDSリストのトップポーション中の連続するエントリにより示され、このメモリセグメントは書き込まれたがまだ表示されていないものである。同様に、論理的ボトムウインドウは、スライディングウインドウをボトムフィールド中に定義し、これはビデオメモリ中のメモリセグメントに間接的にアドレッシングしているDSリストのボトムポーション中の連続するエントリにより示され、このメモリセグメントは書き込まれたがまだ表示されていないものである。   FIG. 7 (a) shows the positions of these three pointers when the video system is handling frame pictures. To handle a bitstream of video data for frame picture where data is interleaved between two fields, the two write pointers 710, 720 point to two DS entries with 36 intervals in between Set so that each of the two write pointers points to an entry at the same offset position in a different field (ie, top field and bottom field). Further, the read pointer 750 points to the entry of the DS list 430 to be displayed next. To accommodate both the top and bottom fields of the frame picture, the logical sliding window further comprises a logical top window and a logical bottom window. The logical top window defines a sliding window within the top window, which is indicated by successive entries in the top portion of the DS list that indirectly address the memory segment in the video memory, which memory segment is It has been written but not yet displayed. Similarly, a logical bottom window defines a sliding window in the bottom field, which is indicated by successive entries in the bottom portion of the DS list that indirectly address memory segments in video memory, A memory segment has been written but not yet displayed.

図7(b)は、ビデオ復号・表示システムがフィールドピクチャを取り扱っている時のこれらのポインタの位置を示すものである。フィールドピクチャのビデオデータは復号器により逐次復号および供給されるので、2つの書き込みポインタは730、740は、それらの間に1の固定インタバルを有するように設定されている。さらに、読み取りポインタ760は、次に表示されるべきDSリスト430のエントリを指している。フィールドピクチャ中では、ビデオデータは逐次復号および供給され、フレームピクチャにおけるように、論理的スライディングウインドウを論理的トップおよびボトムウインドウにさらに分割する必要は全く無い。従って、前の段落において論じられたような論理的スライディングウインドウが維持される。   FIG. 7B shows the positions of these pointers when the video decoding / display system is handling field pictures. Since the video data of the field picture is sequentially decoded and supplied by the decoder, the two write pointers 730, 740 are set to have a fixed interval of 1 between them. Further, the read pointer 760 points to an entry of the DS list 430 to be displayed next. In field pictures, the video data is decoded and supplied sequentially, and there is no need to further divide the logical sliding window into logical top and bottom windows as in frame pictures. Thus, a logical sliding window as discussed in the previous paragraph is maintained.

図8は、本発明のためのフローチャートを示すものである。
最初に、ビデオ復号・表示システムの初期化中に、MSエントリのすべてのビジービットは、メモリマネージャによりNOTビジー(すなわち、MSエントリの全ビジービットを論理0にセットする)初期化される(段階810)。
メモリマネージャが、符号化されたビデオデータの入り来るストリーム中に新しいピクチャを検出すると、図9に示されるように、メモリマネージャはDSリスト430を初期化する(段階820)。
FIG. 8 shows a flowchart for the present invention.
First, during initialization of the video decoding and display system, all busy bits of the MS entry are initialized by the memory manager to NOT busy (ie, set all busy bits of the MS entry to logic 0) (stage). 810).
When the memory manager detects a new picture in the incoming stream of encoded video data, the memory manager initializes the DS list 430, as shown in FIG. 9 (stage 820).

図9は、各ピクチャについてDSリスト430を初期化する段階を詳しく示すものである(段階820)。最初に、メモリコントローラが入り来るビットストリーム中のピクチャのフォーマットをチェックし、ピクチャ構造パラメータ値をチェックすることによりそのピクチャがフィールドピクチャかフレームピクチャかを決定する(段階910)。   FIG. 9 shows in detail the step of initializing the DS list 430 for each picture (step 820). Initially, the memory controller checks the format of the picture in the incoming bitstream and determines whether the picture is a field picture or a frame picture by checking the picture structure parameter value (step 910).

ビデオデータがフレームピクチャフォーマットであれば、メモリコントローラは次にトップ・フィールド・ファースト変数をチェックしてフラッグが立てられているどうかを決定する(段階930)。トップフィールドが最初に復号される必要があれば、DS読み取りポインタ750は36に初期化され、第1DS書き込みポインタ710は0にセットされ、第2DS書き込みポインタ720は36にセットされる(段階960)。一方、ボトムフィールドが最初に復号される必要があれば、DS読み取りポインタ750は0にセットされ、第1DS書き込みポインタ710は0にセットされ、第2DS書き込みポインタ720は36にセットされる(段階970)。   If the video data is in frame picture format, the memory controller next checks the top field first variable to determine if the flag is set (step 930). If the top field needs to be decoded first, the DS read pointer 750 is initialized to 36, the first DS write pointer 710 is set to 0, and the second DS write pointer 720 is set to 36 (stage 960). . On the other hand, if the bottom field needs to be decoded first, the DS read pointer 750 is set to 0, the first DS write pointer 710 is set to 0, and the second DS write pointer 720 is set to 36 (step 970). ).

図9に示されるように、ビデオデータがフィールドピクチャフォーマットであれば、メモリコントローラはピクチャ構造パラメータをチェックして、入り来るビデオデータがトップフィールドピクチャかボトムフィールドピクチャかを決定する(段階920)。トップフィールドが復号される必要があれば、3つのDSポインタは以下の通りセットされる。すなわち、DS読み取りポインタ760は36にセットされ、第1DS書き込みポインタ730は0にセットされ、第2DS書き込みポインタ740は1にセットされる(段階940)。一方、ボトムフィールドが復号される必要があれば、DS読み取りポインタ760は0にセットされ、第1DS書き込みポインタ730は36にセットされ、第2DS書き込みポインタ740は37にセットされる(段階950)。   As shown in FIG. 9, if the video data is in a field picture format, the memory controller checks a picture structure parameter to determine whether the incoming video data is a top field picture or a bottom field picture (step 920). If the top field needs to be decoded, the three DS pointers are set as follows: That is, the DS read pointer 760 is set to 36, the first DS write pointer 730 is set to 0, and the second DS write pointer 740 is set to 1 (step 940). On the other hand, if the bottom field needs to be decoded, the DS read pointer 760 is set to 0, the first DS write pointer 730 is set to 36, and the second DS write pointer 740 is set to 37 (step 950).

図8に示されるように、DSリストが初期化された後、メモリマネージャは、MSリスト420をスキャンして、MSリスト420のエントリのビジービット510をチェックすることにより、ビデオメモリ410中の利用可能なスペースを調べる(段階830)。メモリマネージャは、MSリスト420をインデックス0からインデックス47まで順番にスキャンし、ビジービット510がセットされていない最初の2つのエントリを見つける。そのような「ビジーでない」セグメントが全く無いか、あるいはそのようなセグメントが1つしか無いのであれば、条件が満たされるまで復号は停止される。復号器はそれにより、2つの「ビジーでない」ビデオメモリセグメントを待つ待機ステージに入る。ビデオメモリセグメント中のデータが読み出されかつ表示されると、メモリマネージャは、メモリセグメントの対応するビジービット510を論理0にセットすることにより、新たに復号されたビデオデータを格納するためにメモリセグメントを解放する。   As shown in FIG. 8, after the DS list is initialized, the memory manager scans the MS list 420 and checks the busy bit 510 of the entry in the MS list 420 to use it in the video memory 410. Check for possible space (stage 830). The memory manager scans the MS list 420 in order from index 0 to index 47 and finds the first two entries that do not have the busy bit 510 set. If there is no such “not busy” segment, or if there is only one such segment, decoding is stopped until the condition is met. The decoder thereby enters a wait stage waiting for two “not busy” video memory segments. Once the data in the video memory segment has been read and displayed, the memory manager sets the corresponding busy bit 510 of the memory segment to logic 0 to store the newly decoded video data. Free the segment.

2つのビジーでないメモリセグメントが見つかった時は、第1DS書き込みポインタ(すなわち、710または720)により指し示されるDSリスト430に、第1の利用可能メモリセグメントのMSインデックス420(すなわち、0、1、2、…または47)が書き込まれ、第2DS書き込みポインタ(すなわち、720または740)により指し示されるDSエントリに第2の利用可能メモリセグメントが書き込まれる、それにより2つのDS書き込みポインタは、ビデオメモリ410中の2つの「ビジーでない」メモリセグメントに間接的にアドレスしている。   When two non-busy memory segments are found, the DS list 430 pointed to by the first DS write pointer (ie, 710 or 720) will have the MS index 420 of the first available memory segment (ie, 0, 1,. 2,... Or 47) is written and the second available memory segment is written to the DS entry pointed to by the second DS write pointer (ie, 720 or 740), so that the two DS write pointers are Two “non-busy” memory segments in 410 are indirectly addressed.

DSエントリが更新された後、復号器はビデオデータの16本のラインを含む新しいマクロブロック行を復号する(段階830)。
ビデオデータのマクロブロック行が復号された後、メモリマネージャは、復号されたビデオデータを段階840においてビデオメモリに保存する。図10は段階840の詳細を示すものである。
After the DS entry has been updated, the decoder decodes a new macroblock row containing 16 lines of video data (stage 830).
After the macroblock row of video data is decoded, the memory manager stores the decoded video data in video memory at step 840. FIG. 10 shows details of step 840.

図10に示されるように、ピクチャがフィールドピクチャであれば、メモリマネージャは、各マクロブロック行のトップ8ラインのビデオデータを、第1DS書き込みポインタ730により間接的にアドレスされたMSセグメントのエントリによりアドレスされたメモリセグメントに書き込む(段階1030)。次にメモリマネージャは、各マクロブロック行のボトム8ラインのビデオデータを、第2DS書き込みポインタ740により間接的にアドレスされたMSセグメントのエントリによりアドレスされたメモリセグメントへ書き込む(段階1030)。   As shown in FIG. 10, if the picture is a field picture, the memory manager uses the MS segment entry indirectly addressed by the first DS write pointer 730 to store the top 8 lines of video data in each macroblock row. Write to the addressed memory segment (step 1030). The memory manager then writes the bottom eight lines of video data for each macroblock row to the memory segment addressed by the MS segment entry indirectly addressed by the second DS write pointer 740 (step 1030).

一方、ピクチャがフレームピクチャであれば、復号器が入り来るビットストリームのビデオデータのライン16本(すなわち、1マクロブロック行)を復号した後、メモリマネージャは、現在復号しているフレームのトップフィールドに対応するビデオデータのライン8本を、第1DS書き込みポインタ710により間接的にアドレスされた第1MSセグメントのエントリによりアドレスされたメモリセグメントへ書き込む。次にメモリマネージャは、現在復号中のフレームのボトムフィールドに対応するビデオデータのライン8本を、第2DS書き込みポインタ720により間接的にアドレスされた第2MSセグメントのエントリによりアドレスされたメモリセグメントへ書き込む(段階1020)。
図8に示されるように、対応するメモリセグメントへのビデオデータの書き込みに続き、DSポインタ(すなわち、710、720、および750または730、740、および760)が次に、図11に示されるような段階(段階860)により更新される。
On the other hand, if the picture is a frame picture, after the decoder decodes the 16 lines of video data of the incoming bitstream (ie, one macroblock row), the memory manager will return the top field of the currently decoded frame. Are written into the memory segment addressed by the first MS segment entry indirectly addressed by the first DS write pointer 710. The memory manager then writes the eight lines of video data corresponding to the bottom field of the currently decoded frame to the memory segment addressed by the second MS segment entry indirectly addressed by the second DS write pointer 720. (Step 1020).
As shown in FIG. 8, following the writing of the video data to the corresponding memory segment, the DS pointer (ie, 710, 720, and 750 or 730, 740, and 760) is then as shown in FIG. It is updated by a different stage (stage 860).

図11は、DSポインタ(すなわち、710、720、および750または730、740、および760)の更新操作(段階860)の詳細を示すものである。メモリマネージャは最初に、ビデオデータがフィールドピクチャフォーマットであるかフレームピクチャフォーマットであるかをチェックし(段階1110)、次にそれに応じてメモリマネージャが2つのDS書き込みポインタを更新する(段階1120および1130)。   FIG. 11 shows details of the update operation (stage 860) of the DS pointer (ie, 710, 720, and 750 or 730, 740, and 760). The memory manager first checks whether the video data is in field picture format or frame picture format (stage 1110), and then the memory manager updates the two DS write pointers accordingly (stages 1120 and 1130). ).

ビデオデータがフレームピクチャフォーマットであれば、2つのDS書き込みポインタ710、720のどちらも1進められる(段階1120)。一方、ビデオデータがフィールドピクチャフォーマットであれば、2つのDS書き込みポインタ730、740のどちらも2進められる(段階1130)。
DSポインタが更新された後、メモリマネージャは、現在のピクチャ用にそれ以上入り来るビデオデータがあるかどうかをチェックする。入り来るビデオビットストリームがまだあるならば、その操作は、図8に示されるようなMSリストスキャニング段階に戻る(段階870)。
If the video data is a frame picture format, both of the two DS write pointers 710 and 720 are advanced by 1 (step 1120). On the other hand, if the video data is in the field picture format, both of the two DS write pointers 730 and 740 are advanced by 2 (step 1130).
After the DS pointer is updated, the memory manager checks whether there is more incoming video data for the current picture. If there is still an incoming video bitstream, the operation returns to the MS list scanning stage as shown in FIG. 8 (stage 870).

現在のピクチャ用の入り来るビットストリームが終結すれば、次にビデオシステムは、さらに復号・表示されるピクチャがさらにあるかどうかをチェックする(段階880)。復号・表示のために入り来るピクチャがさらにあれば、全体の操作は段階820に戻る。全体の操作は、表示用に入り来るピクチャがもはやなくなれば完了する(段階890)。   If the incoming bitstream for the current picture ends, the video system then checks whether there are more pictures to be decoded and displayed (step 880). If there are more incoming pictures for decoding and display, the overall operation returns to step 820. The entire operation is completed when there are no more incoming pictures for display (step 890).

システムが表示用に付加的なビデオデータを必要とする時は、データの次のライン8本が、DS読み取りポインタ(すなわち、750または760)によりアドレスされたMSインデックスを用いて、ビデオメモリ410のメモリセグメントから取り出される。MSリストエントリ中に格納されているアドレスは、ビデオメモリ410から次に表示されるメモリセグメントの位置を特定するのに用いられる。表示用に特定のメモリセグメントが読み出された後、そのMSエントリ420のビジービット510は非ビジーにセットされ、DS読み出しポインタは次に1増大される(72を法として)。ポインタが71に達した後、DS読み取りポインタは「0」位置にリセットされる。   When the system needs additional video data for display, the next 8 lines of data are stored in the video memory 410 using the MS index addressed by the DS read pointer (ie, 750 or 760). Retrieved from memory segment. The address stored in the MS list entry is used to locate the next memory segment to be displayed from the video memory 410. After a particular memory segment is read for display, the busy bit 510 of that MS entry 420 is set to non-busy and the DS read pointer is then incremented by 1 (modulo 72). After the pointer reaches 71, the DS read pointer is reset to the “0” position.

本発明の1実施態様において、メモリコントローラが、前述した「間接的アドレッシング」スキームを処理するのに十分な速度を有していなければ、DSリスト430のエントリは6ビットから26ビットに増大され、それにより、メモリセグメントのアドレスがMSエントリ中で選択されると、それはMSリスト420インデックスと共にDSエントリにコピーされる。メモリセグメントのアドレスをMSリスト420エントリと共にDSリストに書き込むことにより、アドレッシングおよびMSリスト420からのデータ取り出しの余分な段階が回避できる。   In one embodiment of the invention, if the memory controller is not fast enough to handle the “indirect addressing” scheme described above, the DS list 430 entry is increased from 6 bits to 26 bits; Thereby, when the address of the memory segment is selected in the MS entry, it is copied to the DS entry along with the MS list 420 index. By writing the address of the memory segment to the DS list along with the MS list 420 entry, an extra step of addressing and retrieving data from the MS list 420 can be avoided.

3.FLEXIRAMデザイン
本発明の別の側面は、フレーム内ビデオメモリ圧縮/復元方法に向けられている。
本発明において、ビデオデータは、ビデオメモリに格納される前に、損失性または非損失性に圧縮され、圧縮されたデータは、それがビデオメモリから読み出される時に復元される。このビデオデータ圧縮・復元装置は、本発明者らにより「FlexiRam」と名付けられている。
3. FLEXIRAM Design Another aspect of the present invention is directed to an intra-frame video memory compression / decompression method.
In the present invention, the video data is compressed lossy or lossless before being stored in the video memory, and the compressed data is decompressed when it is read from the video memory. This video data compression / decompression apparatus is named “FlexiRam” by the present inventors.

図12は、本発明の3つの異なる実施態様を示す。
図12(a)に示されるような好ましい実施態様において、本発明のFlexiRam1220aは、メモリマネージャ1210aに組み込まれており、ビデオデータのすべての圧縮および復元はメモリマネージャ1210a内で実行される。この実施態様の利点は、ビデオメモリ1230aのための特別なハードウェア要件が全く無いことおよびビデオデータの圧縮および復元のどちらもビデオメモリ1230aに対してトランスペアレントであることである。
FIG. 12 shows three different embodiments of the present invention.
In a preferred embodiment as shown in FIG. 12 (a), the FlexiRam 1220a of the present invention is incorporated into the memory manager 1210a, and all compression and decompression of video data is performed within the memory manager 1210a. The advantage of this embodiment is that there are no special hardware requirements for video memory 1230a and that both compression and decompression of video data are transparent to video memory 1230a.

図12(b)は本発明の別の好ましい実施態様を示すもので、FlexiRam1220bは、メモリマネージャ1210bおよびビデオメモリ1230bの両方から分離されている。この実施態様の利点は、ビデオ復号・表示システム全体の実質的な修正なしで本発明の実行が可能なことである。   FIG. 12 (b) illustrates another preferred embodiment of the present invention, where FlexiRam 1220b is separate from both memory manager 1210b and video memory 1230b. An advantage of this embodiment is that the present invention can be implemented without substantial modification of the entire video decoding and display system.

図12(c)は本発明の別の実施態様を示すもので、FlexiRam1220cはビデオメモリ1230cに組み入れられている。この実施態様の利点は、データ圧縮および復元の操作全体がメモリマネージャ1210cに対してトランスペアレントであり、メモリマネージャ1210cに対しオーバーヘッドが全く付加されないことである。   FIG. 12 (c) shows another embodiment of the present invention, where the FlexiRam 1220c is incorporated into the video memory 1230c. The advantage of this embodiment is that the entire data compression and decompression operation is transparent to the memory manager 1210c and does not add any overhead to the memory manager 1210c.

本発明がすべてのピクチャタイプ(I、PおよびB)で作用し、かつどのようなタイプのピクチャに対しても限定されないことは留意すべきである。従って、所望されれば、本発明は、分割メモリマネージャデザインにおいて、(a)第2メモリマネージャ240、あるいは(b)第1メモリマネージャ230と第2メモリマネージャ240両方を用いて実行し得る(図2参照)。   It should be noted that the present invention works with all picture types (I, P and B) and is not limited to any type of picture. Thus, if desired, the present invention can be implemented in a split memory manager design using (a) the second memory manager 240 or (b) both the first memory manager 230 and the second memory manager 240 (FIG. 2).

図13a、13bおよび13cは、FlexiRamデザインと分割メモリマネージャデザインとを組み合せた、本発明の3つの異なる実施態様を示すものである。図13aは、本発明の2つの好ましい実施態様の1つを示す。この実施態様において、2つのFlexiRam圧縮器/復号器が用いられる。第1FlexiRam1370aは、第1メモリマネージャ1310aと第1メモリ1330aとの間に置かれている。第2FlexiRam1380aは、第2メモリマネージャ1320aと第2メモリ1340aとの間に置かれ、FlexiRam技術を用いて、格納されたすべてのビデオメモリデータが圧縮・復元される。図13bは、本発明の別の実施態様を示すものである。FlexiRam1370bは、第2メモリマネージャ1320bと第2メモリ1340bとの間に置かれ、双方向フレーム(すなわち、B)のためのビデオデータのみが、ビデオメモリに格納される時に圧縮される。最後に、図13cは本発明のさらに別の実施態様を示すものである。FlexiRam1370cは、第1メモリマネージャ1310cと第1メモリ1330cとの間に置かれ、予測フレーム(すなわち、2I;1Iおよび1P;または2P)用ビデオデータのみが、ビデオメモリに格納される時に圧縮される。本発明はメモリマネージャの数を2または3に限定するものではないことに留意すべきである。メモリマネージャは、ビデオデータの種々のタイプおよび/またはグループを処理するため、多数(すなわち、3を超える)の別個のメモリマネージャに分割し得る。   Figures 13a, 13b and 13c illustrate three different embodiments of the present invention combining a FlexiRam design and a split memory manager design. FIG. 13a shows one of two preferred embodiments of the present invention. In this embodiment, two FlexiRam compressor / decoders are used. The first FlexiRam 1370a is placed between the first memory manager 1310a and the first memory 1330a. The second FlexiRam 1380a is placed between the second memory manager 1320a and the second memory 1340a, and all stored video memory data is compressed and decompressed using the FlexiRam technology. FIG. 13b shows another embodiment of the present invention. FlexiRam 1370b is placed between the second memory manager 1320b and the second memory 1340b, and only the video data for the bi-directional frame (ie, B) is compressed when stored in the video memory. Finally, FIG. 13c shows yet another embodiment of the present invention. The FlexiRam 1370c is placed between the first memory manager 1310c and the first memory 1330c, and only the video data for the prediction frame (ie, 2I; 1I and 1P; or 2P) is compressed when stored in the video memory. . It should be noted that the present invention does not limit the number of memory managers to two or three. The memory manager may be divided into a number (ie, more than 3) separate memory managers to handle various types and / or groups of video data.

特定のシステムについてどの実施態様を実施すべきかを考慮する場合に最も重要な因子は、利用可能なビデオメモリ量、利用可能な処理速度、および所望の画質等である
例えば、前述した実施態様に加え、FlexiRamデザインは、3つの色成分すべて、あるいは2つのクロマ色成分のみの圧縮および復元に適用できる。
The most important factors when considering which embodiment to implement for a particular system are the amount of video memory available, the available processing speed, the desired image quality, etc. For example, in addition to the embodiments described above The FlexiRam design can be applied to compression and decompression of all three color components or only two chroma color components.

デザインは、前に開示されたすべての実施態様および側面を組み合せることによりさらに改善し得る。例えば、1つの実施態様において、Bピクチャ中のUおよびV色成分のみがFlexiRamデザインにより圧縮される。あるいは、別の実施態様において、2つのピクチャグループ(すなわち、参照フレーム、または双方向フレーム)すべてについての3つの色成分すべてが、FlexiRamデザインにより圧縮される。   The design can be further improved by combining all previously disclosed embodiments and aspects. For example, in one embodiment, only the U and V color components in a B picture are compressed with the FlexiRam design. Alternatively, in another embodiment, all three color components for all two picture groups (ie, reference frames or bi-directional frames) are compressed by the FlexiRam design.

分割メモリマネージャ、FlexiRam、および原色の分割を組み合せる上での本発明のデザイン柔軟性により、種々のビデオシステム要件、ビデオメモリサイズ、および所望の画質等に応じて、システムデザイナーが最も適切かつ効果的な組み合わせを選択できるようになるという、デザイン自由度におけるたいへんな利点がもたらされる。   The design flexibility of the present invention in combining split memory manager, FlexiRam, and primary color splits makes system designers most appropriate and effective according to various video system requirements, video memory size, desired image quality, etc. This gives you a great advantage in design freedom, allowing you to choose the right combination.

図14は、FlexiRamデザインの好ましい実施態様の概要を示すものである。図に示されるように、データ圧縮は2つの段階から成る。すなわち、(1)エラー拡散(段階1410)、および(2)カルテットあたり1画素切り捨て(段階1420)である。   FIG. 14 outlines a preferred embodiment of the FlexiRam design. As shown in the figure, data compression consists of two stages. That is, (1) error diffusion (stage 1410) and (2) truncation of one pixel per quartet (stage 1420).

最初、ビデオデータがエラー拡散アルゴリズムに従って圧縮される(段階1410)。好ましい実施態様において、基本的圧縮単位は、4つの連続した水平画素を含む「カルテット」と定義される。エラー拡散圧縮段階(段階1410)は、カルテットの各画素を個別に圧縮する。1ビットエラー拡散アルゴリズムを用いることにより、本来32ビット(4画素*8ビット/画素)を有する画素のカルテットは、28ビットに圧縮される(4画素*7ビット/画素)。本発明は1ビットエラー拡散アルゴリズムに限定されるものではなく、多ビットエラー拡散アルゴリズムも同様に、ただし知覚可能な画質低下のトレードオフを伴って実施し得ることに留意すべきである。   Initially, the video data is compressed according to an error diffusion algorithm (stage 1410). In a preferred embodiment, a basic compression unit is defined as a “quartet” that includes four consecutive horizontal pixels. The error diffusion compression stage (stage 1410) compresses each pixel of the quartet individually. By using the 1-bit error diffusion algorithm, the quartet of pixels originally having 32 bits (4 pixels * 8 bits / pixel) is compressed to 28 bits (4 pixels * 7 bits / pixel). It should be noted that the present invention is not limited to a 1-bit error diffusion algorithm and that a multi-bit error diffusion algorithm can be implemented as well, but with a perceptible image quality degradation tradeoff.

ビデオデータ圧縮の第2段階は、「カルテットあたり1画素切り捨て」である(段階1420)。カルテットあたり1画素切り捨てアルゴリズムは、4つの7ビット画素のカルテットを24ビットカルテットに圧縮するものである。データ圧縮器は、切り捨てされるカルテットの最良の画素を計算し、再構築記述子(「RD」)としてカルテットの最後の3ビットに再構築方法を格納する。この圧縮段階の後、画素の圧縮されたカルテットは24ビットを有する(3画素*7ビット/画素+3ビットRD)。このカルテットあたり1画素切り捨ての詳細なアルゴリズムは後述する。
ビデオデータがビデオメモリから必要とされる時は、FlexiRamは、メモリから読み出された圧縮データに復元を実行する。復元段階は、図14に示される圧縮段階の逆である。
The second stage of video data compression is “1 pixel truncation per quartet” (stage 1420). The one-pixel truncation algorithm per quartet compresses four 7-bit pixel quartets into a 24-bit quartet. The data compressor calculates the best pixel of the quartet to be truncated and stores the reconstruction method in the last 3 bits of the quartet as a reconstruction descriptor (“RD”). After this compression stage, the compressed quartet of pixels has 24 bits (3 pixels * 7 bits / pixel + 3 bits RD). A detailed algorithm for truncating one pixel per quartet will be described later.
When video data is needed from the video memory, FlexiRam performs decompression on the compressed data read from the memory. The decompression stage is the reverse of the compression stage shown in FIG.

最初に、1つの画素が、カルテットあたり1画素再構築アルゴリズムにより24ビットカルテットに加え戻されるが、このアルゴリズムはカルテットあたり1画素切り捨てアルゴリズムの逆である(段階1430)。この復元段階は、カルテットを表す24ビットの最後の3ビットとして格納されたRDにより供給された再構築方法に従って、7ビットの切り捨てられた画素を再構築する。この復元段階(段階1430)の後、カルテットは再形成されて、4つの7ビット画素を持つ。好ましい再構築アルゴリズムは後に詳述する。   Initially, one pixel is added back to the 24-bit quartet by the 1-pixel reconstruction algorithm per quartet, which is the inverse of the 1-pixel truncation algorithm per quartet (stage 1430). This restoration phase reconstructs the 7-bit truncated pixel according to the reconstruction method supplied by the RD stored as the last 3 bits of 24 bits representing the quartet. After this restoration stage (stage 1430), the quartet is reshaped and has four 7-bit pixels. A preferred reconstruction algorithm will be described in detail later.

次に、各7ビット画素に「0」が連接され、圧縮前の4つの8ビット画素カルテットに戻る(段階1440)。この復元段階(段階1440)は、すべての画素に最も有意でないビットとして「0」を1つ連接して4つの8ビット画素を再形成する。
図15は、圧縮・復元段階における種々のプロセス中のビデオデータのカルテット(すなわち、4つの8ビット画素)のデータフォーマットを示すものである。
Next, “0” is connected to each 7-bit pixel, and the process returns to the four 8-bit pixel quartets before compression (step 1440). This restoration step (step 1440) reconstructs four 8-bit pixels by concatenating one “0” as the least significant bit for all pixels.
FIG. 15 shows the data format of the quartet of video data (ie, four 8-bit pixels) during various processes in the compression / decompression stage.

最初、カルテット1510の各8ビット画素が、エラー拡散アルゴリズム1520を用いて個別に圧縮される。中間的な圧縮データは、4つの7ビット画素1530から成る。次に、これら4つの7ビット画素1530は、カルテットあたり1画素切り捨てアルゴリズム1540によりさらに圧縮される。最終的な圧縮データは、3つの7ビット画素1551と1つの3ビットRD1552とから成る。圧縮されたデータの全長は24ビットである。
ビデオデータがビデオメモリから必要とされる時は、圧縮されたデータは以下の2つの連続的段階により復元される。
Initially, each 8-bit pixel of quartet 1510 is individually compressed using error diffusion algorithm 1520. Intermediate compressed data consists of four 7-bit pixels 1530. These four 7-bit pixels 1530 are then further compressed by a 1 pixel truncation algorithm 1540 per quartet. The final compressed data consists of three 7-bit pixels 1551 and one 3-bit RD1552. The total length of the compressed data is 24 bits.
When video data is needed from the video memory, the compressed data is decompressed in two successive stages:

最初、1つの付加的画素が、カルテットあたり1画素再構築アルゴリズム1560に従って生成される。このアルゴリズムは、24ビット圧縮データ1550の3ビットRD1552に基づくカルテットあたり1画素切り捨てアルゴリズム1540の逆である。中間的な復元データ1570は4つの7ビット画素から成る。次に、4つの7ビット画素の各々が、最も有意でないビット1580としての「0」と連接され、圧縮前の4つの8ビット画素が再形成される。
エラー拡散およびカルテットあたり1画素切り捨てアルゴリズムの詳細は以下で説明する。
Initially, one additional pixel is generated according to a one pixel reconstruction algorithm 1560 per quartet. This algorithm is the inverse of the 1 pixel truncation algorithm 1540 based on 3-bit RD1552 of 24-bit compressed data 1550. Intermediate restoration data 1570 consists of four 7-bit pixels. Next, each of the four 7-bit pixels is concatenated with “0” as the least significant bit 1580 to recreate the four 8-bit pixels before compression.
Details of the error diffusion and truncation of one pixel per quartet algorithm are described below.

A.エラー拡散
この圧縮段階に様々なエラー拡散アルゴリズムが使用し得ることは留意すべきである。以下に開示される好ましい実施態様は、1ビットエラー拡散アルゴリズムを利用している。しかしながら、本発明は、エラー拡散処理に用いられるどのような特定のアルゴリズムにも限定されない。さらに、前に論じたように、より多くの画質劣化が許されるならば、複数のビット(1を超える)がエラー拡散アルゴリズムにより除去され得る。従って、以下の特定の1ビットエラー拡散アルゴリズムは、説明目的だけのために開示されている。
A. Error diffusion It should be noted that various error diffusion algorithms can be used for this compression stage. The preferred embodiment disclosed below utilizes a 1-bit error diffusion algorithm. However, the present invention is not limited to any particular algorithm used for error diffusion processing. Further, as discussed previously, multiple bits (greater than 1) can be removed by an error diffusion algorithm if more image quality degradation is allowed. Accordingly, the following specific 1-bit error diffusion algorithms are disclosed for illustrative purposes only.

本発明のこの好ましい実施態様において、エラー拡散(ED)アルゴリズムはピクチャ中のすべてのラインに独立して作用する。ラインの最初では、「e」と表示された1ビットレジスターが1にセットされる。「e」は、現在走っているエラーを格納し、画素ベースで更新される。1ビットEDアルゴリズムは、以下の2つの方程式により説明される。
out (j)=2*floor[(Iin(j)+e(j))/2]
ただし、Iin(j)=255およびe(j)=1であれば、Iout(j)=255
e(j+1)=Iin(j)+e(j)+Iout (j)
式中、
j:行中の現在の画素のインデックス
in(j):画素の本来の値
out (j):画素の新しい値(ED後)
e(j):画素jの時間におけるエラーアキュムレータ
floor(x):x以下で最も近い整数
out (j)が計算された後、Iout (j)の最も有意でないビットが切り捨てられ、このアルゴリズムにより8ビット画素が7ビット画素へ量子化される一方で、擬似的輪郭効果が除去される。
In this preferred embodiment of the invention, the error diffusion (ED) algorithm operates independently on every line in the picture. At the beginning of the line, a 1-bit register labeled “e” is set to 1. “E” stores the currently running error and is updated on a pixel basis. The 1-bit ED algorithm is described by the following two equations.
I out (j) = 2 * floor [(I in (j) + e (j)) / 2]
However, if I in (j) = 255 and e (j) = 1, Iout (j) = 255
e (j + 1) = I in (j) + e (j) + I out (j)
Where
j: Index of current pixel in row I in (j): Original value of pixel I out (j): New value of pixel (after ED)
e (j): Error accumulator at pixel j time floor (x): After calculating the closest integer I out (j) less than or equal to x, the least significant bit of I out (j) is truncated, and this algorithm Quantizes 8-bit pixels to 7-bit pixels while removing pseudo contour effects.

このアルゴリズムは例えば以下のように説明し得る。すなわち、1つのケースにおいて、Iin(j)が182、2進数10010111であり、e(j)が1であると仮定すると、
out (j)=2*floor((10010111+1/2)
=2*floor(10011000/2)
=2*floor01001100
=1001100
e(j+1)=10010111+1−1001100
=0
最も有意でないビットを切り捨てることにより、格納された量子化画素は=100110である。
This algorithm can be described, for example, as follows. That is, in one case, assuming that I in (j) is 182, binary 10010111 and e (j) is 1,
I out (j) = 2 * floor ((10010111 + 1/2)
= 2 * floor (10011000/2)
= 2 * floor01001100
= 1001100
e (j + 1) = 10010111 + 1-1001100
= 0
By truncating the least significant bit, the stored quantized pixel is = 100110.

「e」値は次に、ラインの終わりに伝播される。本発明のEDアルゴリズムがラスタ構造に作用し、ピクチャがブロック構造のメモリに書き込まれるので、e(j)をブロックラインの終わりに格納することが必要である。この値は、EDが同じライン(これは次のブロックに属している)中の次の画素と続いている時に、使われる。従って、8ビットラッチが、すべての「中断」ブロックに使用されなければならない。(eは0または1にしかなれないので、すべての中断ラインあたり1ビットで十分である)。   The “e” value is then propagated to the end of the line. Since the ED algorithm of the present invention operates on the raster structure and the picture is written into the block structure memory, it is necessary to store e (j) at the end of the block line. This value is used when the ED continues with the next pixel in the same line (which belongs to the next block). Therefore, an 8-bit latch must be used for all “interrupt” blocks. (Because e can only be 0 or 1, 1 bit is sufficient for every break line).

復元段階1580は、前述した圧縮段階の逆である。好ましい実施態様において、データは、「0」と共にあらゆる画素に連接され、4つの8ビット画素を再形成する。
各7ビット画素は次に最も有意でないビットとして「0」が連接される。例えば、「1101101」は「11011010」に再形成される。従って、結果として得られるデータは、オリジナルな未圧縮データと同様に4つの8ビット画素である。
The decompression stage 1580 is the reverse of the compression stage described above. In the preferred embodiment, the data is concatenated to every pixel with a “0” to recreate four 8-bit pixels.
Each 7-bit pixel is then concatenated with “0” as the least significant bit. For example, “1101101” is reformed to “11011010”. Thus, the resulting data is four 8-bit pixels, similar to the original uncompressed data.

データが、1ビットエラー拡散アルゴリズムを用いて圧縮された後、4ビットが切り捨てられ、それにより4つの8ビット画素を有するカルテットが4つの7ビット画素に圧縮される。4つの8ビット画素を有するカルテットを4つの6ビット画素に圧縮できる「2」ビットエラー拡散アルゴリズムを実行することにより、より高い圧縮率が達成できることは真実である。2ビットエラー拡散アルゴリズムを用いた時の圧縮率は、24/32×100%(すなわち、75%)である。しかしながら、2ビットエラー拡散技術を用いた圧縮および復元後に知覚可能な画質劣化があることが見出される。従って、2ビットエラー圧縮技術を用いる代わりに、本発明では2段階の圧縮/復元プロセス、すなわち(1)1ビットエラー拡散、および(2)カルテットあたり1画素切り捨てを開示している。たとえ2つの技術の圧縮率が同一(すなわち、75%)であっても、本発明として開示される2段階圧縮/復元プロセスの結果得られる画質は、2ビットエラー拡散技術に対し知覚可能な改善をもたらす。   After the data is compressed using a 1-bit error diffusion algorithm, 4 bits are truncated, thereby compressing a quartet having 4 8-bit pixels into 4 7-bit pixels. It is true that a higher compression ratio can be achieved by executing a “2” bit error diffusion algorithm that can compress a quartet having four 8-bit pixels into four 6-bit pixels. The compression ratio when using the 2-bit error diffusion algorithm is 24/32 × 100% (ie, 75%). However, it is found that there is perceptible image quality degradation after compression and decompression using a 2-bit error diffusion technique. Thus, instead of using a 2-bit error compression technique, the present invention discloses a two-stage compression / decompression process: (1) 1-bit error diffusion, and (2) 1 pixel truncation per quartet. Even if the two techniques have the same compression ratio (ie, 75%), the resulting image quality of the two-stage compression / decompression process disclosed in the present invention is a perceptible improvement over the two-bit error diffusion technique. Bring.

B.1カルテットあたり1画素切り捨て
本発明の好ましい実施態様の第2圧縮段階は、カルテットあたり1画素切り捨てである。カルテットあたり1画素切り捨てアルゴリズム1540は、4つの7ビット画素を3つの7ビット画素プラス3ビット再構築記述子(「RD」)(すなわち、総計で24ビット)に圧縮するものである。
B. One pixel truncation per quartet The second compression stage of the preferred embodiment of the present invention is one pixel truncation per quartet. The one pixel truncation algorithm 1540 compresses four 7-bit pixels into three 7-bit pixels plus a 3-bit reconstruction descriptor (“RD”) (ie, a total of 24 bits).

ビデオメモリ中に格納される画素数を減らすため、種々の画素切り捨てアルゴリズムが使用し得ることに留意すべきである。本発明は、圧縮および復元プロセス中に用いられるどのような特定の画素切り捨てアルゴリズムおよび方程式にも限定されない。さらに、多画素(1を超える)は、画質劣化とのトレードオフで切り捨てられ得る。以下のカルテットあたり1画素切り捨ては、メモリ節約と画質への知覚可能な影響がほとんど無いという最良のバランスを備えた、本発明の好ましい実施態様として開示される。   It should be noted that various pixel truncation algorithms can be used to reduce the number of pixels stored in the video memory. The present invention is not limited to any particular pixel truncation algorithm and equation used during the compression and decompression process. Furthermore, multiple pixels (greater than 1) can be truncated at a trade-off with image quality degradation. The following truncation of one pixel per quartet is disclosed as a preferred embodiment of the present invention with the best balance of memory savings and little perceptible impact on image quality.

好ましい実施態様において、カルテットの4画素は各々P0、P1、P2、またはP3と連続的に名付けられる。画素P1およびP2は、切り捨てられる2つの候補である。このアルゴリズムは、(1)どちらの画素が切捨てにより適しているか、および(2)切り捨てられた画素を推定するために、復元においてどのような再構築方法を用いるべきかを予測する。各候補について5つの再構築方法が考えらえる。すなわち、
1.左隣りのものをコピーする。
2.右隣りのものをコピーする。
3.左隣りのものと右隣りのものを平均する。
4.左隣りのものの1/4と右隣りのものの3/4を合計する。
5.左隣りのものの3/4と右隣りのものの1/4を合計する。
In the preferred embodiment, the four pixels of the quartet are each named consecutively as P0, P1, P2, or P3. Pixels P1 and P2 are two candidates to be truncated. The algorithm predicts (1) which pixels are more suitable for truncation, and (2) what reconstruction method should be used in the reconstruction to estimate the truncated pixels. There are five possible reconstruction methods for each candidate. That is,
1. Copy the one on the left.
2. Copy the right neighbor.
3. Average the left neighbor and the right neighbor.
4). Add 1/4 of the left neighbor and 3/4 of the right neighbor.
5. Add 3/4 of the left neighbor and 1/4 of the right neighbor.

理論的には、P1を切り捨ててP2のコピーによりそれを推定することと、P2を切り捨ててP1のコピーによりそれを推定することとは等価である。従って、2つの候補(すなわち、P1およびP2)について、考えられる推定量は9つ(10ではない)しかない。さらに、カルテットから1画素を切り捨てた後、残る3画素を表すために21ビットが残されることになる。好ましい実施態様において、各カルテットについての最終的な圧縮データの目標サイズは24ビットである(25%圧縮)。このことは、選択され推定量を記述するために3ビットのみが割り当てられ得ることを意味し、従って、実際は8つの推定量のみが考慮し得る。考慮から省略される推定量は、左隣りのものの3/4と右隣りのものの1/4によりP2を再構築することである。この特定の推定量を省略する理由は、MPEGピクチャの統計学により、これが最善のものとして選ばれることが最も少ないとことが示されるからである(4つの1/4、3/4推定量の中で選択は恣意的である)。   Theoretically, truncating P1 and estimating it with a copy of P2 is equivalent to truncating P2 and estimating it with a copy of P1. Thus, for two candidates (ie, P1 and P2), there are only 9 (not 10) possible estimators. Further, after truncating one pixel from the quartet, 21 bits are left to represent the remaining three pixels. In the preferred embodiment, the final compressed data target size for each quartet is 24 bits (25% compression). This means that only 3 bits can be assigned to describe the estimator that is selected, so in practice only 8 estimators can be considered. The estimator omitted from consideration is to reconstruct P2 by 3/4 of the left neighbor and 1/4 of the right neighbor. The reason for omitting this particular estimator is that the statistics of the MPEG picture show that it is least likely to be chosen as the best (four quarter, three quarter estimators). The choice is arbitrary.)

最初に、8つの推定量が計算される。
0 1=P0(Pk j はk法を用いたPiの推定量を表す)
0 1=P2
2 1=0.5P0+0.5P2
3 1=0.25P0+0.75P2
4 1=0.75P0+0.25P2
1 2=P3
2 2=0.5P1+0.5P3
3 2=0.25P1+0.75P3
Initially, eight estimators are calculated.
P 0 1 = P0 (P k j represents the estimated amount of Pi using the k method)
P 0 1 = P2
P 2 1 = 0.5P0 + 0.5P2
P 3 1 = 0.25P0 + 0.75P2
P 4 1 = 0.75P0 + 0.25P2
P 1 2 = P3
P 2 2 = 0.5P1 + 0.5P3
P 3 2 = 0.25P1 + 0.75P3

すべての推定量について、推定誤差の絶対値は、Ek i=|Pk i−Pi|と定義される。最小誤差は、mini,k{Ek l}である。1を超える最小誤差があれば、選択は恣意的である。(決定は実行のために未決のままにされる)。最後に、最小誤差に従って、Pjiminが切り捨てられ、3ビットの再構築記述子(RD)が設定されて選択された推定量、Pkmin iminが示される。3ビットRDは、残る3つの7ビット画素に連接され、一緒になって24ビットの圧縮されたカルテットを形成する。連接方法は実行のために未決のままにされる。 For all estimators, the absolute value of the estimation error is defined as E k i = | P k i −Pi |. The minimum error is min i, k {E k l }. If there is a minimum error greater than 1, the selection is arbitrary. (The decision is left pending for execution). Finally, Pj imin is truncated according to the minimum error, and a 3-bit reconstruction descriptor (RD) is set to indicate the selected estimator, P kmin imin . The 3-bit RD is concatenated with the remaining three 7-bit pixels and together forms a 24-bit compressed quartet. The articulation method is left pending for execution.

圧縮されたデータの復元は、単純に圧縮アルゴリズムの逆である。欠けている7ビットの切り捨てられた画素は、(1)再構築にどの画素(すなわち、P1またはP2)を、および(2)再構築にどの再構築方法を選択するかのために各カルテットの最後にあるRDを用いて再構築される。   The decompression of compressed data is simply the reverse of the compression algorithm. The missing 7-bit truncated pixels are: (1) which pixel (ie, P1 or P2) to reconstruct, and (2) which reconstruction method to select for reconstruction. It is reconstructed using the last RD.

図15に示されるように、データ圧縮器は、RDの3ビットにより提供される再構築方法を得る。次に、再構築のための画素(P1またはP2)が決定され、前述した8つの方程式の逆に従って、画素再構築が実行される。   As shown in FIG. 15, the data compressor obtains the reconstruction method provided by 3 bits of RD. Next, the pixel for reconstruction (P1 or P2) is determined and pixel reconstruction is performed according to the inverse of the eight equations described above.

本発明が、(1)エラー拡散、および(2)画素切り捨てのビデオデータ圧縮段階において用いられるどのような特定の方法および方程式にも限定されないことは指摘されるべきである。本発明として開示されたFlexiRamデザインの重要な特徴は、これら2つのデータ圧縮/復元段階の特定のシーケンスである。すなわち、ビデオデータは最初に、エラー拡散アルゴリズムを用いて画素あたりのビット数を減らして圧縮される。次に、中間的な圧縮ビデオデータは、特定の画素グループから1つの画素を切り捨てる画素切り捨てアルゴリズムを用いてさらに圧縮される。前に論じたように、復元プロセスはまさに圧縮プロセスの逆である。   It should be pointed out that the present invention is not limited to any particular method and equation used in the video data compression stage of (1) error diffusion and (2) pixel truncation. An important feature of the FlexiRam design disclosed as the present invention is the specific sequence of these two data compression / decompression stages. That is, the video data is first compressed using an error diffusion algorithm with a reduced number of bits per pixel. The intermediate compressed video data is then further compressed using a pixel truncation algorithm that truncates one pixel from a particular group of pixels. As discussed previously, the decompression process is just the opposite of the compression process.

本発明が前述した好ましい特定の実施態様と共にされる一方で、説明および実施例は例示を意図するものであって、かつ本発明の範囲を限定するものではなく、それは添付の特許請求の範囲により規定されるものであるということは理解されるべきである。   While the invention is described in conjunction with the preferred specific embodiments described above, the description and examples are intended to be illustrative and not limiting the scope of the invention, which is defined by the appended claims. It should be understood that it is specified.

Claims (31)

符号化されたビデオイメージを表すデータのビットストリームを復号・表示する方法であって、
参照フレームデータおよび双方向フレームデータを供給するために前記データのビットストリームを復号するステップと、
前記参照フレームデータを第1ビデオメモリに格納するステップと、
前記双方向フレームデータを第2ビデオメモリに格納するステップと、
前記第1ビデオメモリから前記参照フレームデータを取り出すステップと、
前記第2ビデオメモリから前記双方向フレームデータを取り出すステップと、
前記双方向フレームデータおよび前記参照フレームデータからのビデオイメージを表示するステップと、
からなる方法。
A method for decoding and displaying a bitstream of data representing an encoded video image, comprising:
Decoding a bitstream of the data to provide reference frame data and bi-directional frame data;
Storing the reference frame data in a first video memory;
Storing the bidirectional frame data in a second video memory;
Retrieving the reference frame data from the first video memory;
Retrieving the bidirectional frame data from the second video memory;
Displaying a video image from the bi-directional frame data and the reference frame data;
A method consisting of:
請求項1記載の方法において、
前記第2ビデオメモリの記憶容量は、1つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さい方法。
The method of claim 1, wherein
A method in which the storage capacity of the second video memory is smaller than a storage capacity sufficient to store decoded video image information for one complete frame.
請求項1記載の方法において、
前記第1ビデオメモリの記憶容量は、2つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分である方法。
The method of claim 1, wherein
The method wherein the storage capacity of the first video memory is sufficient to store decoded video image information for two complete frames.
請求項1記載の方法において、
前記第1ビデオメモリの記憶容量は、2つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であり、前記第2ビデオメモリの記憶容量は、1つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さい方法。
The method of claim 1, wherein
The storage capacity of the first video memory is sufficient to store decoded video image information for two complete frames, and the storage capacity of the second video memory is decoded for one complete frame. Less than enough storage capacity to store the recorded video image information.
請求項1記載の方法において、
前記双方向フレームデータを第2ビデオメモリに格納するステップは、前記双方向フレームデータを前記第2メモリに格納する前に圧縮するステップとからさらになり、前記第2ビデオメモリから前記双方向フレームデータを取り出すステップは、前記圧縮された双方向フレームデータを復元するステップとからさらになる方法。
The method of claim 1, wherein
The step of storing the bi-directional frame data in the second video memory further comprises a step of compressing the bi-directional frame data before storing in the second memory, and the bi-directional frame data from the second video memory. Extracting the compressed bi-directional frame data further comprises the step of:
ビデオ復号・表示システムであって、
第1の数のメモリセグメントに区切られたビデオメモリと、
第2の数の表示セグメントに区切られた表示ピクチャであって、各表示セグメントは、表示セグメントリスト中のエントリに対応し、第2の数は第1の数よりも大きい表示ピクチャと、
論理的スライディングウインドウを維持するメモリマネージャであって、前記論理的スライディングウインドウは、第3の数の表示セグメントリストエントリからなり、論理的スライディングウインドウ中の第3の数の表示セグメントリストエントリは、ビデオメモリ中の第1の数のメモリセグメント以下となるように維持され、前記論理的スライディングウインドウ中の各表示セグメントエントリは、書き込まれているがまだ表示されていないビデオデータを有するメモリセグメントを参照するメモリマネージャと、
からなるシステム。
A video decoding and display system,
A video memory partitioned into a first number of memory segments;
A display picture partitioned into a second number of display segments, each display segment corresponding to an entry in the display segment list, wherein the second number is a display picture greater than the first number;
A memory manager that maintains a logical sliding window, the logical sliding window comprising a third number of display segment list entries, wherein the third number of display segment list entries in the logical sliding window is a video Each display segment entry in the logical sliding window refers to a memory segment having video data that has been written but not yet displayed, and is maintained below a first number of memory segments in memory. A memory manager;
A system consisting of
請求項6記載のシステムにおいて、
前記表示ピクチャは、Bピクチャであるシステム。
The system of claim 6, wherein
The system in which the display picture is a B picture.
請求項6記載のシステムにおいて、
前記表示ピクチャは、Iピクチャであるシステム。
The system of claim 6, wherein
The system in which the display picture is an I picture.
請求項6記載のシステムにおいて、
前記表示ピクチャは、Pピクチャであるシステム。
The system of claim 6, wherein
The system in which the display picture is a P picture.
請求項6記載のシステムにおいて、
前記メモリマネージャは、対応するメモリセグメントが前記ビデオメモリから読み出された後に表示セグメントエントリを論理的スライディングウインドウから解放するシステム。
The system of claim 6, wherein
The memory manager releases a display segment entry from a logical sliding window after a corresponding memory segment is read from the video memory.
請求項6記載のシステムにおいて、
前記メモリマネージャは、対応するメモリセグメントが書き込まれた後に表示セグメントエントリを論理的スライディングウインドウに付加するシステム。
The system of claim 6, wherein
The memory manager adds a display segment entry to a logical sliding window after a corresponding memory segment is written.
請求項6記載のシステムにおいて、
前記メモリマネージャは、メモリセグメントがビデオメモリから読み出された後に前記メモリセグメントを論理的スライディングウインドウから解放し、かつメモリセグメントが書き込まれた後に前記メモリセグメントを論理的スライディングウインドウに付加するシステム。
The system of claim 6, wherein
The memory manager releases the memory segment from the logical sliding window after the memory segment is read from the video memory, and adds the memory segment to the logical sliding window after the memory segment is written.
請求項6記載のシステムにおいて、
前記論理的スライディングウインドウは、インターレースされたピクチャのトップフィールドに対応する論理的トップウインドウと、前記インターレースされたピクチャのボトムフィールドに対応する論理的ボトムウインドウとからなるシステム。
The system of claim 6, wherein
The logical sliding window comprises a logical top window corresponding to a top field of an interlaced picture and a logical bottom window corresponding to a bottom field of the interlaced picture.
請求項6記載のシステムにおいて、
前記ビデオメモリマネージャは、フィールドピクチャおよびフレームピクチャ両方を取り扱うシステム。
The system of claim 6, wherein
The video memory manager is a system that handles both field pictures and frame pictures.
ビデオ復号・表示システムであって、
多数のメモリセグメントに区切られたビデオメモリと、
多数のエントリを有するメモリセグメントリストであって、前記メモリセグメントリストの各エントリは、ビデオメモリ中のメモリセグメントに対応し、かつ対応するメモリセグメントが書き込まれているが読み出されてはいないかどうかを示すビジーインジケータからなる、メモリセグメントリストと、
多数の表示セグメントに区切られた表示ピクチャと、
多数のエントリを有する表示セグメントリストであって、表示セグメントリストの各エントリは、表示ピクチャ中の表示セグメントに対応し、かつメモリセグメントリスト中のエントリを指すインデックスからなり、前記表示セグメントリストは、トップポーションとボトムポーションとからなり、前記トップポーションとボトムポーションの各々は、前記表示セグメントリストの多数のエントリの半分からなる、表示セグメントリストと、
前記表示セグメントリストのエントリを指す読み取りポインタであって、前記メモリセグメントは、次に表示されるべきビデオデータを格納している読み取りポインタにより指された表示セグメントリストのエントリにより参照される、読み取りポインタと、
前記表示セグメントリストの2つの異なるエントリを指す第1書き込みポインタおよび第2書き込みポインタであって、前記表示ピクチャはフィールドピクチャフォーマットであり、前記第1書き込みポインタは表示セグメントリストのトップポーション中のエントリを指すのに対して前記第2書き込みポインタは表示セグメントリストのボトムポーション中のエントリを指し、かつ表示ピクチャがフレームピクチャフォーマットであれば、第1書き込みポインタおよび第2書き込みポインタはその間に1の固定間隔を有する、第1書き込みポインタおよび第2書き込みポインタと、
からなるシステム。
A video decoding and display system,
Video memory divided into a number of memory segments;
A memory segment list having a number of entries, each entry of the memory segment list corresponding to a memory segment in the video memory and whether the corresponding memory segment is written but not read A memory segment list consisting of busy indicators indicating
A display picture divided into a number of display segments;
A display segment list having a number of entries, each entry of the display segment list comprising an index corresponding to a display segment in a display picture and pointing to an entry in the memory segment list, the display segment list comprising: A display segment list comprising a portion and a bottom portion, each of the top and bottom portions comprising half of a number of entries in the display segment list;
A read pointer pointing to an entry in the display segment list, wherein the memory segment is referenced by an entry in the display segment list pointed to by a read pointer storing video data to be displayed next When,
A first write pointer and a second write pointer pointing to two different entries of the display segment list, wherein the display picture is in a field picture format, and the first write pointer points to an entry in the top portion of the display segment list On the other hand, the second write pointer points to an entry in the bottom portion of the display segment list, and if the display picture is a frame picture format, the first write pointer and the second write pointer are 1 fixed interval therebetween. A first write pointer and a second write pointer,
A system consisting of
ビデオイメージを表示するシステムであって、
ビデオメモリと、
前記ビデオイメージを表すビデオデータのビットストリームを受信するメモリマネージャと、
前記ビデオイメージを表示するために、前記メモリマネージャに連結された表示サブシステムと、
前記メモリマネージャおよびビデオメモリに連結され、前記ビデオメモリ中に格納されるべき前記ビデオデータを圧縮するデータ圧縮器と、
前記メモリマネージャおよびビデオメモリに連結され、前記メモリマネージャのために、前記ビデオメモリから読み出された前記圧縮ビデオデータを復元するデータ復元器と、 からなるシステム。
A system for displaying a video image,
Video memory,
A memory manager for receiving a bitstream of video data representing the video image;
A display subsystem coupled to the memory manager for displaying the video image;
A data compressor coupled to the memory manager and video memory for compressing the video data to be stored in the video memory;
And a data decompressor coupled to the memory manager and a video memory, for restoring the compressed video data read from the video memory for the memory manager.
請求項16記載のシステムにおいて、
前記データ圧縮器は、損失性であるシステム。
The system of claim 16, wherein
The data compressor is a lossy system.
請求項16記載のシステムにおいて、
前記データ圧縮器は、非損失性であるシステム。
The system of claim 16, wherein
The data compressor is a lossless system.
請求項16記載のシステムにおいて、
前記データ圧縮器は、前記ビデオデータを圧縮するエラー拡散機構および画素切り捨て機構からなるシステム。
The system of claim 16, wherein
The data compressor includes an error diffusion mechanism and a pixel truncation mechanism for compressing the video data.
請求項19記載のシステムにおいて、
前記データ復元器は、前記ビデオメモリ中に格納されている前記圧縮されたビデオデータを復元する画素再構築機構およびビット接合機構からなるシステム。
The system of claim 19, wherein
The data decompressor comprises a pixel reconstruction mechanism and a bit joining mechanism for restoring the compressed video data stored in the video memory.
請求項16記載のシステムにおいて、
前記データ圧縮器は、前記ビデオデータを圧縮するエラー拡散機構および画素切り捨て機構からなり、前記データ復元器は、前記ビデオメモリ中に格納されている前記圧縮されたビデオデータを復元する画素再構築機構およびビット接合機構からなるシステム。
The system of claim 16, wherein
The data compressor includes an error diffusion mechanism and a pixel truncation mechanism for compressing the video data, and the data decompressor reconstructs the compressed video data stored in the video memory. And a system consisting of a bit joining mechanism.
請求項21記載のシステムにおいて、
前記エラー拡散機構は1ビットエラー拡散機構であり、前記画素切り捨て機構はカルテットあたり1画素切り捨て機構であり、前記画素再構築機構はカルテットあたり1画素再構築機構であり、前記ビット接合機構はゼロ接合機構であるシステム。
The system of claim 21, wherein
The error diffusion mechanism is a 1-bit error diffusion mechanism, the pixel truncation mechanism is a 1-pixel truncation mechanism per quartet, the pixel reconstruction mechanism is a 1-pixel reconstruction mechanism per quartet, and the bit junction mechanism is a zero junction A system that is a mechanism.
ビデオイメージの復号・表示方法であって、
前記ビデオイメージを表す符号化されたビデオデータのビットストリームを復号するステップと、
復号されたビデオデータをメモリマネージャに供給するステップと、
復号されたビデオデータを圧縮するステップと、
圧縮されたビデオデータをビデオメモリに格納するステップと、
前記圧縮されたビデオデータをビデオメモリから読み取るステップと、
前記ビデオイメージを表示する表示サブシステムのために圧縮されたビデオデータを復元するステップと、
からなる方法。
A method of decoding and displaying a video image,
Decoding a bitstream of encoded video data representing the video image;
Providing the decoded video data to a memory manager;
Compressing the decoded video data;
Storing the compressed video data in a video memory;
Reading the compressed video data from a video memory;
Decompressing compressed video data for a display subsystem displaying the video image;
A method consisting of:
請求項23記載の方法において、
前記復号されたビデオデータを圧縮するステップは、損失性である方法。
24. The method of claim 23.
The method of compressing the decoded video data is lossy.
請求項23記載の方法において、
前記復号されたビデオデータを圧縮するステップは、非損失性である方法。
24. The method of claim 23.
The method of compressing the decoded video data is lossless.
請求項23記載の方法において、
前記復号されたビデオデータを圧縮するステップは、エラー拡散段階および画素切り捨て段階からなり、前記圧縮されたビデオデータを復元するステップは、画素再構築段階およびビット接合段階からなる方法。
24. The method of claim 23.
The method of compressing the decoded video data comprises an error diffusion stage and a pixel truncation stage, and the step of restoring the compressed video data comprises a pixel reconstruction stage and a bit joining stage.
符号化されたビデオイメージを表すデータのビットストリームを復号・表示するシステムであって、
前記データのビットストリームを復号する復号器であって、復号されたデータが参照フレームデータおよび双方向フレームデータからなる、複合器と、
前記復号器に連結され、前記参照フレームデータを取り扱う第1ビデオメモリマネージャと、
前記参照フレームデータを格納するために、前記第1ビデオメモリマネージャに連結された第1ビデオメモリと、
前記復号器に連結され、前記双方向フレームデータを取り扱う第2ビデオメモリマネージャと、
前記双方向フレームデータを格納するために、前記第2ビデオメモリマネージャに連結された第2ビデオメモリと、
前記ビデオイメージを表示するために、前記第1ビデオメモリマネージャおよび前記第2ビデオメモリマネージャに連結された表示サブシステムと、
からなるシステム。
A system for decoding and displaying a bitstream of data representing an encoded video image,
A decoder for decoding a bitstream of the data, wherein the decoded data comprises reference frame data and bidirectional frame data;
A first video memory manager coupled to the decoder and handling the reference frame data;
A first video memory coupled to the first video memory manager for storing the reference frame data;
A second video memory manager coupled to the decoder and handling the bidirectional frame data;
A second video memory coupled to the second video memory manager for storing the bi-directional frame data;
A display subsystem coupled to the first video memory manager and the second video memory manager for displaying the video image;
A system consisting of
請求項27記載のシステムにおいて、
前記第2ビデオメモリの記憶容量は、1つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さいシステム。
28. The system of claim 27.
A system in which the storage capacity of the second video memory is smaller than a storage capacity sufficient to store decoded video image information for one complete frame.
請求項27記載のシステムにおいて、
前記第1ビデオメモリの記憶容量は、2つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であるシステム。
28. The system of claim 27.
A system wherein the storage capacity of the first video memory is sufficient to store decoded video image information for two complete frames.
請求項27記載のシステムにおいて、
前記第1ビデオメモリの記憶容量は、2つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であり、前記第2ビデオメモリの記憶容量は、1つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さいシステム。
28. The system of claim 27.
The storage capacity of the first video memory is sufficient to store decoded video image information for two complete frames, and the storage capacity of the second video memory is decoded for one complete frame. System smaller than sufficient storage capacity to store the recorded video image information.
請求項27記載のシステムにおいて、
前記第2ビデオメモリマネージャおよび前記第2ビデオメモリに連結され、前記第2ビデオメモリ中に格納されるべき前記双方向フレームデータを圧縮するデータ圧縮器と、
前記第2ビデオメモリマネージャおよび前記第2ビデオメモリに連結され、前記第2ビデオメモリから読み出された圧縮された双方向フレームデータを復元するデータ復元器と、
からさらになるシステム。
28. The system of claim 27.
A data compressor coupled to the second video memory manager and the second video memory for compressing the bi-directional frame data to be stored in the second video memory;
A data decompressor coupled to the second video memory manager and the second video memory, for restoring compressed bi-directional frame data read from the second video memory;
A system that further consists of.
JP2009075365A 2009-03-26 2009-03-26 Video memory management for mpeg video decoding/display system Pending JP2009177833A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009075365A JP2009177833A (en) 2009-03-26 2009-03-26 Video memory management for mpeg video decoding/display system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009075365A JP2009177833A (en) 2009-03-26 2009-03-26 Video memory management for mpeg video decoding/display system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000591813A Division JP4486755B2 (en) 1998-12-23 1998-12-23 Video memory management for MPEG video decoding and display system

Publications (1)

Publication Number Publication Date
JP2009177833A true JP2009177833A (en) 2009-08-06

Family

ID=41032361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009075365A Pending JP2009177833A (en) 2009-03-26 2009-03-26 Video memory management for mpeg video decoding/display system

Country Status (1)

Country Link
JP (1) JP2009177833A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9268525B2 (en) 2012-09-06 2016-02-23 Samsung Electronics Co., Ltd. Bit stream processing device for pipe-lined decoding and multimedia device including the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH104550A (en) * 1995-12-04 1998-01-06 Sgs Thomson Microelettronica Spa Mpeg-2 decoding method and mpeg-2 video decoder
JPH1023403A (en) * 1996-06-28 1998-01-23 Hitachi Ltd Device for decoding and displaying encoded picture data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH104550A (en) * 1995-12-04 1998-01-06 Sgs Thomson Microelettronica Spa Mpeg-2 decoding method and mpeg-2 video decoder
JPH1023403A (en) * 1996-06-28 1998-01-23 Hitachi Ltd Device for decoding and displaying encoded picture data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9268525B2 (en) 2012-09-06 2016-02-23 Samsung Electronics Co., Ltd. Bit stream processing device for pipe-lined decoding and multimedia device including the same

Similar Documents

Publication Publication Date Title
US6198773B1 (en) Video memory management for MPEG video decode and display system
JP4083832B2 (en) MPEG compatible decoder in a system for processing information representing an image
TWI444048B (en) Fragmented reference in temporal compression for video coding
RU2409005C2 (en) Method of scalable coding and decoding of video signal
JP4491349B2 (en) Intra-coding method and apparatus for video data
US6473558B1 (en) System and method for MPEG reverse play through dynamic assignment of anchor frames
US6301304B1 (en) Architecture and method for inverse quantization of discrete cosine transform coefficients in MPEG decoders
US20070030911A1 (en) Method and apparatus for skipping pictures
WO2017133315A1 (en) Lossless compression method and system appled to video hard decoding
JP2000224591A (en) Overall video decoding system, frame buffer, coding stream processing method, frame buffer assignment method and storage medium
US20130021350A1 (en) Apparatus and method for decoding using coefficient compression
KR19980042224A (en) MPEG decoder system and method with integrated memory for transport, decryption, system controller functions
US5739862A (en) Reverse playback of MPEG video
JP2012502592A (en) Decoding system and method using parallel processing
JP2007524309A (en) Video decoding method
JP2008537427A (en) Efficient video decoding accelerator
JP2010516138A (en) Method and system for encoding a video signal, encoded video signal, and method and system for decoding a video signal
US5761423A (en) Scalable picture storage access architecture for video decoding
US7436889B2 (en) Methods and systems for reducing requantization-originated generational error in predictive video streams using motion compensation
JP4486755B2 (en) Video memory management for MPEG video decoding and display system
US20040057522A1 (en) MPEG video bitstream decoder system and method
JP2001103521A (en) Method for recognizing progressive or interlace contents in video sequence
JP2009177833A (en) Video memory management for mpeg video decoding/display system
US20110051815A1 (en) Method and apparatus for encoding data and method and apparatus for decoding data
US6144323A (en) Method and apparatus for decoding video data

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120626

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121120