JPH07131785A - ビデオ適用用の脱圧縮プロセサ - Google Patents
ビデオ適用用の脱圧縮プロセサInfo
- Publication number
- JPH07131785A JPH07131785A JP4055338A JP5533892A JPH07131785A JP H07131785 A JPH07131785 A JP H07131785A JP 4055338 A JP4055338 A JP 4055338A JP 5533892 A JP5533892 A JP 5533892A JP H07131785 A JPH07131785 A JP H07131785A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- bits
- vector
- address
- data
- 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
Links
- 230000006837 decompression Effects 0.000 title description 45
- 239000013598 vector Substances 0.000 claims description 129
- 238000000034 method Methods 0.000 claims description 94
- 238000013507 mapping Methods 0.000 claims description 27
- 230000007704 transition Effects 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 13
- 238000012952 Resampling Methods 0.000 claims description 7
- 230000000630 rising effect Effects 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 7
- 238000012360 testing method Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000010387 memory retrieval Effects 0.000 claims 3
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 8
- 230000009466 transformation Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 39
- 238000007906 compression Methods 0.000 description 21
- 230000006835 compression Effects 0.000 description 21
- 230000003111 delayed effect Effects 0.000 description 9
- 238000013139 quantization Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 240000007320 Pinus strobus Species 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013144 data compression Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 235000005282 vitamin D3 Nutrition 0.000 description 2
- 239000011647 vitamin D3 Substances 0.000 description 2
- XUNKPNYCNUKOAU-VXJRNSOOSA-N (2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-[[(2s)-2-amino-5-(diaminomethylideneamino)pentanoyl]amino]-5-(diaminomethylideneamino)pentanoyl]amino]-5-(diaminomethylideneamino)pentanoyl]amino]-5-(diaminomethylideneamino)pentanoyl]a Chemical compound NC(N)=NCCC[C@H](N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(=O)N[C@@H](CCCN=C(N)N)C(O)=O XUNKPNYCNUKOAU-VXJRNSOOSA-N 0.000 description 1
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 1
- 101100247319 Drosophila melanogaster Ras64B gene Proteins 0.000 description 1
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 1
- 101150019218 RAS2 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
- H03M7/425—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/439—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using cascaded computational arrangements for performing a single operation, e.g. filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
- H04N5/60—Receiver circuitry for the reception of television signals according to analogue transmission standards for the sound signals
- H04N5/602—Receiver circuitry for the reception of television signals according to analogue transmission standards for the sound signals for digital sound signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/907—Television signal recording using static stores, e.g. storage tubes or semiconductor memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/015—High-definition television systems
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/02—Handling of images in compressed format, e.g. JPEG, MPEG
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/21—Circuitry for suppressing or minimising disturbance, e.g. moiré or halo
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Spectroscopy & Molecular Physics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
フレーム内及びフレーム間でコード化された圧縮ビデオ
データをデコードするための方法及び装置が提供されて
いる。本発明の一実施例においては、プロセサ201を
有する脱圧縮装置200が設けられており、それはグロ
ーバルバス205を有しており、グローバルバス205
を介して、デコーダコプロセサ202と、逆離散余弦変
換コプロセサ203と運動補償コプロセサ204とが通
信を行なう。本発明に基づくこの脱圧縮装置は、ホスト
バス206を介してホストコンピュータと通信を行ない
且つメモリバス208を介して外部のダイナミックラン
ダムアクセスメモリと通信を行なう。本発明脱圧縮装置
におけるプロセサ201は、複数個のデータレジスタ及
び制御レジスタを読取り且つそれに書込みを行なうこと
により該デコーダ、IDCT及び運動補償コプロセサに
対しての全体的な制御を与え、その各レジスタは該デコ
ーダ、IDCT及び運動補償コプロセサの一つと関連し
ている。
データをデコードするための方法及び装置が提供されて
いる。本発明の一実施例においては、プロセサ201を
有する脱圧縮装置200が設けられており、それはグロ
ーバルバス205を有しており、グローバルバス205
を介して、デコーダコプロセサ202と、逆離散余弦変
換コプロセサ203と運動補償コプロセサ204とが通
信を行なう。本発明に基づくこの脱圧縮装置は、ホスト
バス206を介してホストコンピュータと通信を行ない
且つメモリバス208を介して外部のダイナミックラン
ダムアクセスメモリと通信を行なう。本発明脱圧縮装置
におけるプロセサ201は、複数個のデータレジスタ及
び制御レジスタを読取り且つそれに書込みを行なうこと
により該デコーダ、IDCT及び運動補償コプロセサに
対しての全体的な制御を与え、その各レジスタは該デコ
ーダ、IDCT及び運動補償コプロセサの一つと関連し
ている。
Description
【0001】
【産業上の利用分野】本発明はデジタル信号処理の技術
分野に関するものであって、更に詳細には、デジタルビ
デオ信号の処理技術に関するものである。
分野に関するものであって、更に詳細には、デジタルビ
デオ信号の処理技術に関するものである。
【0002】
【従来の技術】モーションピクチャ即ち映画乃至は動画
は連続的な運動の錯覚を起こさせるために毎秒30個の
フレーム即ちこまで供給される。各画像は数千個の画素
から構成されているので、たとえ短い運動シーケンスで
あってもそれを格納するのに必要な記憶容量は巨大なも
のである。一層高いデフィニション即ち品質のものが所
望されるので、各画像における画素数は増加するものと
予測される。幸運なことに、人間の視覚システムの特別
の特性を利用して、知覚された画像品質を損なうことな
しに非常に高いデータ圧縮を達成するために損失性圧縮
技術が開発されている。損失性圧縮技術は、ターゲット
の画像品質を得るために必要でない情報を廃棄する。し
かしながら、脱圧縮プロセサは、実時間で格納した運動
シーケンスの全ての画素を再生することが必要とされ
る。
は連続的な運動の錯覚を起こさせるために毎秒30個の
フレーム即ちこまで供給される。各画像は数千個の画素
から構成されているので、たとえ短い運動シーケンスで
あってもそれを格納するのに必要な記憶容量は巨大なも
のである。一層高いデフィニション即ち品質のものが所
望されるので、各画像における画素数は増加するものと
予測される。幸運なことに、人間の視覚システムの特別
の特性を利用して、知覚された画像品質を損なうことな
しに非常に高いデータ圧縮を達成するために損失性圧縮
技術が開発されている。損失性圧縮技術は、ターゲット
の画像品質を得るために必要でない情報を廃棄する。し
かしながら、脱圧縮プロセサは、実時間で格納した運動
シーケンスの全ての画素を再生することが必要とされ
る。
【0003】映画専門家グループ(MPEG)という名
称の団体は、圧縮及び脱圧縮装置の間で適合性を達成す
るための標準(以下、「MPEG標準」と呼称する)を
提供することが委託されている。この標準は、格納媒体
に対するビデオ信号のコード化デジタル表示及びデコー
ド方法の両方を特定している。この表示方法は、通常速
度のプレイバック、及びカラー映画のその他の上映モー
ド及び静止画像の再生をサポートしている。この標準
は、一般的な525及び625ラインのテレビ、パソコ
ン及びワークステーションのディスプレイフォーマット
をカバーしている。このMPEG標準は、例えばコンパ
クトディスク、デジタルオーディオテープ又は磁気ハー
ドディスクなどのような最大で1.5Mbits/秒の
連続的な転送率を支持する装置に対して意図されてい
る。このMPEG標準は、24Hzと30Hzの間のレ
ートで約288×352個の画素の画像フレームの各々
をサポートすることが意図されている。
称の団体は、圧縮及び脱圧縮装置の間で適合性を達成す
るための標準(以下、「MPEG標準」と呼称する)を
提供することが委託されている。この標準は、格納媒体
に対するビデオ信号のコード化デジタル表示及びデコー
ド方法の両方を特定している。この表示方法は、通常速
度のプレイバック、及びカラー映画のその他の上映モー
ド及び静止画像の再生をサポートしている。この標準
は、一般的な525及び625ラインのテレビ、パソコ
ン及びワークステーションのディスプレイフォーマット
をカバーしている。このMPEG標準は、例えばコンパ
クトディスク、デジタルオーディオテープ又は磁気ハー
ドディスクなどのような最大で1.5Mbits/秒の
連続的な転送率を支持する装置に対して意図されてい
る。このMPEG標準は、24Hzと30Hzの間のレ
ートで約288×352個の画素の画像フレームの各々
をサポートすることが意図されている。
【0004】このMPEG標準の下では、画像フレーム
は一連の「マクロブロックスライス」(MBS)に分割
され、各MBSは各々が16×16個の画素をカバーす
る多数の画像エリア(「マクロブロック」と呼ばれる)
を有している。これらの画像エリアの各々は、一つ又は
それ以上の8×8マトリクスによって表現され、該マト
リクスの要素は空間的ルミナンス及びクロミナンス値で
ある。マクロブロックの一つの表示方法(4:2:2)
においては、ルミナンス値(Yタイプ)は16×16画
素の画像エリア(四つの8×8「Y」マトリクスにおい
て)における全ての画素に対して与えられており、且つ
各々が同一の16×16画像エリアをカバーするU及び
V(即ち、ブルー及びレッドクロミナンス)タイプのク
ロミナンス値はそれぞれ二つの8×8「U」及び二つの
8×8「V」マトリクス内に与えられている。即ち、各
8×8U又はVマトリクスは8×16画素のエリア(区
域)をカバーする。別の表示方法(4:2:0)におい
ては、16×16画素の画像エリアにおける全ての画素
に対してルミナンス値が与えられており、且つU及びV
タイプの各々に対する一つの8×8マトリクスが、16
×16画素の画像エリアのクロミナンス値を表わすため
に与えられている。2×2コンフィギュレーション(形
態)における4個の隣接する画素からなる一つのグルー
プは「クワッド(quad)画素」と呼ばれ、従って該
マクロブロックは、8×8コンフィギュレーションにお
いて64個のクワッド画素から構成されているものと考
えることも可能である。
は一連の「マクロブロックスライス」(MBS)に分割
され、各MBSは各々が16×16個の画素をカバーす
る多数の画像エリア(「マクロブロック」と呼ばれる)
を有している。これらの画像エリアの各々は、一つ又は
それ以上の8×8マトリクスによって表現され、該マト
リクスの要素は空間的ルミナンス及びクロミナンス値で
ある。マクロブロックの一つの表示方法(4:2:2)
においては、ルミナンス値(Yタイプ)は16×16画
素の画像エリア(四つの8×8「Y」マトリクスにおい
て)における全ての画素に対して与えられており、且つ
各々が同一の16×16画像エリアをカバーするU及び
V(即ち、ブルー及びレッドクロミナンス)タイプのク
ロミナンス値はそれぞれ二つの8×8「U」及び二つの
8×8「V」マトリクス内に与えられている。即ち、各
8×8U又はVマトリクスは8×16画素のエリア(区
域)をカバーする。別の表示方法(4:2:0)におい
ては、16×16画素の画像エリアにおける全ての画素
に対してルミナンス値が与えられており、且つU及びV
タイプの各々に対する一つの8×8マトリクスが、16
×16画素の画像エリアのクロミナンス値を表わすため
に与えられている。2×2コンフィギュレーション(形
態)における4個の隣接する画素からなる一つのグルー
プは「クワッド(quad)画素」と呼ばれ、従って該
マクロブロックは、8×8コンフィギュレーションにお
いて64個のクワッド画素から構成されているものと考
えることも可能である。
【0005】MPEGスタンダード(標準)は、図1に
示した圧縮及び脱圧縮のモデルを採用している。図1に
示した如く、フレーム間の冗長(ブロック101により
示してある)が最初にカラー映画フレームから除去され
る。フレーム間冗長性除去を達成するために、各フレー
ムはコーディングの目的のために「内部型」、「予測
型」又は「内挿型」の何れかに指定される。内部型フレ
ームは最も稀に与えられるものであり、予測型フレーム
は内部型フレームよりもより頻繁に与えられ、且つその
他の残りの全てのフレームは内挿型フレームである。内
部型フレーム(「I画像」)における全ての画素の値は
独立的に与えられる。予測型フレーム(「P画像」)に
おいては、最後のI画像又はP画像から画素値における
増分的変化のみがコード化される。内挿型フレーム
(「B画像」)においては、画素値は前のフレームと後
のフレームの両方に関してコード化される。注意すべき
ことであるが、MPEGスタンダードはフレームを厳格
な時間的シーケンスにおいて格納することを必要とする
ものではなく、予測型フレームがコード化される内部型
フレームを、その予測型フレームよりも時間において速
いか又は遅いの何れかの画像シーケンスにおいて与える
ことが可能である。予測型及び内挿型フレームを使用し
てフレームを増分的にコード化することにより、ほとん
どのフレーム間冗長性を除去することが可能であり、そ
の結果格納容量において著しい節約が行なわれる。マク
ロブロック全体の運動を、画素レベルにおいてではなく
運動ベクトルによりコード化することが可能であり、そ
れによりさらなるデータ圧縮を与えることが可能であ
る。
示した圧縮及び脱圧縮のモデルを採用している。図1に
示した如く、フレーム間の冗長(ブロック101により
示してある)が最初にカラー映画フレームから除去され
る。フレーム間冗長性除去を達成するために、各フレー
ムはコーディングの目的のために「内部型」、「予測
型」又は「内挿型」の何れかに指定される。内部型フレ
ームは最も稀に与えられるものであり、予測型フレーム
は内部型フレームよりもより頻繁に与えられ、且つその
他の残りの全てのフレームは内挿型フレームである。内
部型フレーム(「I画像」)における全ての画素の値は
独立的に与えられる。予測型フレーム(「P画像」)に
おいては、最後のI画像又はP画像から画素値における
増分的変化のみがコード化される。内挿型フレーム
(「B画像」)においては、画素値は前のフレームと後
のフレームの両方に関してコード化される。注意すべき
ことであるが、MPEGスタンダードはフレームを厳格
な時間的シーケンスにおいて格納することを必要とする
ものではなく、予測型フレームがコード化される内部型
フレームを、その予測型フレームよりも時間において速
いか又は遅いの何れかの画像シーケンスにおいて与える
ことが可能である。予測型及び内挿型フレームを使用し
てフレームを増分的にコード化することにより、ほとん
どのフレーム間冗長性を除去することが可能であり、そ
の結果格納容量において著しい節約が行なわれる。マク
ロブロック全体の運動を、画素レベルにおいてではなく
運動ベクトルによりコード化することが可能であり、そ
れによりさらなるデータ圧縮を与えることが可能であ
る。
【0006】MPEGスタンダードの下での圧縮におけ
る次のステップはフレーム内冗長性の除去である。図1
のブロック102により表わされる1番目のステップに
おいて、二次元離散余弦変換(DCT)が8×8値のマ
トリクスの各々に関して実施され、空間的ルミナンス又
はクロミナンス値を周波数ドメイン内にマッピングす
る。
る次のステップはフレーム内冗長性の除去である。図1
のブロック102により表わされる1番目のステップに
おいて、二次元離散余弦変換(DCT)が8×8値のマ
トリクスの各々に関して実施され、空間的ルミナンス又
はクロミナンス値を周波数ドメイン内にマッピングす
る。
【0007】次に、図1のブロック103により表わさ
れる如く、「量子化」と呼ばれる処理が、そのクロミナ
ンス又はルミナンスタイプ及びその周波数に従って8×
8マトリクスの各要素に重み付けを行なう。I画像にお
いては、この量子化重み付けは、人間の目が感じること
のない多数の高周波数成分へ還元することを意図してい
る。ほとんど一層高い周波数成分を含有するP及びB画
像においては、重みは視覚的な知覚に関連したものでは
ない。8×8マトリクス内に多数のゼロ要素を形成して
おり、従って、各マトリクスは、情報を損失することな
しに、「DC」値及びゼロでない「AC」値の交互の対
及び該ゼロでない値に追従するゼロ要素の長さの順番の
付けられたリストとして表示することが可能である。該
リストは、該マトリクスがあたかもジグザグ態様で読取
られたかのように該マトリクスの要素を提供するように
(即ち、マトリクスAの要素がA00,A01,A1
0,A02,A11,A20などの順番で読取られてい
る)順番が付けられている。この表示方法は、ゼロ要素
は個別的に表示されないので空間上の効率がよい。
れる如く、「量子化」と呼ばれる処理が、そのクロミナ
ンス又はルミナンスタイプ及びその周波数に従って8×
8マトリクスの各要素に重み付けを行なう。I画像にお
いては、この量子化重み付けは、人間の目が感じること
のない多数の高周波数成分へ還元することを意図してい
る。ほとんど一層高い周波数成分を含有するP及びB画
像においては、重みは視覚的な知覚に関連したものでは
ない。8×8マトリクス内に多数のゼロ要素を形成して
おり、従って、各マトリクスは、情報を損失することな
しに、「DC」値及びゼロでない「AC」値の交互の対
及び該ゼロでない値に追従するゼロ要素の長さの順番の
付けられたリストとして表示することが可能である。該
リストは、該マトリクスがあたかもジグザグ態様で読取
られたかのように該マトリクスの要素を提供するように
(即ち、マトリクスAの要素がA00,A01,A1
0,A02,A11,A20などの順番で読取られてい
る)順番が付けられている。この表示方法は、ゼロ要素
は個別的に表示されないので空間上の効率がよい。
【0008】最後に、図1におけるブロック104によ
り表わされるエントロピーエンコーディング方法を使用
して、DCブロック係数及び可変長コードを使用するA
C値ラン長対の表示を更に圧縮する。エントロピーエン
コーディング方法の下では、より頻繁に発生する記号は
より短いコードで表わされている。従って、その際に、
格納空間におけるさらなる効率が達成されている。
り表わされるエントロピーエンコーディング方法を使用
して、DCブロック係数及び可変長コードを使用するA
C値ラン長対の表示を更に圧縮する。エントロピーエン
コーディング方法の下では、より頻繁に発生する記号は
より短いコードで表わされている。従って、その際に、
格納空間におけるさらなる効率が達成されている。
【0009】MPEGの下での脱圧縮は図1においてブ
ロック105−108により示されている。脱圧縮にお
いては、エントロピーエンコーディング、量子化及びD
CTの処理は、ブロック105−107においてそれぞ
れ示される如く、逆にされている。「絶対的画素発生」
(ブロック108)と呼ばれる最終的ステップは、プレ
イモード(前進、逆進、スローモーションなど)、及び
使用されるディスプレイの物理的寸法及び属性に従って
再生のための実際の画素を提供する。
ロック105−108により示されている。脱圧縮にお
いては、エントロピーエンコーディング、量子化及びD
CTの処理は、ブロック105−107においてそれぞ
れ示される如く、逆にされている。「絶対的画素発生」
(ブロック108)と呼ばれる最終的ステップは、プレ
イモード(前進、逆進、スローモーションなど)、及び
使用されるディスプレイの物理的寸法及び属性に従って
再生のための実際の画素を提供する。
【0010】更に、MPEGスタンダードは非インター
レース型ビデオ信号に対してのみ与えられているので、
従来のNTSC又はPALテレビ上で出力動画を表示す
るためには、脱圧縮器が従来のインターレース型フィー
ルドで出力ビデオ信号を供給せねばならない。インター
レースされたテレビ信号用の脱圧縮に関するガイドライ
ンは、MPEGスタンダードに対する拡張として提案さ
れている。この拡張されたスタンダードは、国際ラジオ
諮問委員会(CCIR)レコメンデーション601(C
CIR−601)と適合性を有している。一つの画像か
ら一つのフレームの二つのインターレースされたフィー
ルドへ変換するプロセスは、MPEGの出版物「動画用
のコーディング及び1.5Mbit/sでのデジタル格
納媒体に対する関連したオーディオ(Coding f
or Moving Pictures and As
sociated Audio for Digita
lStorage Medium at 1.5Mbi
t/s)」のアネックスCにおいて説明されている。
レース型ビデオ信号に対してのみ与えられているので、
従来のNTSC又はPALテレビ上で出力動画を表示す
るためには、脱圧縮器が従来のインターレース型フィー
ルドで出力ビデオ信号を供給せねばならない。インター
レースされたテレビ信号用の脱圧縮に関するガイドライ
ンは、MPEGスタンダードに対する拡張として提案さ
れている。この拡張されたスタンダードは、国際ラジオ
諮問委員会(CCIR)レコメンデーション601(C
CIR−601)と適合性を有している。一つの画像か
ら一つのフレームの二つのインターレースされたフィー
ルドへ変換するプロセスは、MPEGの出版物「動画用
のコーディング及び1.5Mbit/sでのデジタル格
納媒体に対する関連したオーディオ(Coding f
or Moving Pictures and As
sociated Audio for Digita
lStorage Medium at 1.5Mbi
t/s)」のアネックスCにおいて説明されている。
【0011】例えば上述したMPEGスタンダードに関
して説明したような圧縮及び脱圧縮におけるステップ
は、非常に計算が大変であり、この様な計算方法が実際
的なものであり且つ広く受入れられるためには、脱圧縮
プロセサは、実時間で脱圧縮を提供し、且つ今日のコン
ピュータ又は集積回路技術を使用して経済的に実現する
ことが可能であるように設計されねばならない。
して説明したような圧縮及び脱圧縮におけるステップ
は、非常に計算が大変であり、この様な計算方法が実際
的なものであり且つ広く受入れられるためには、脱圧縮
プロセサは、実時間で脱圧縮を提供し、且つ今日のコン
ピュータ又は集積回路技術を使用して経済的に実現する
ことが可能であるように設計されねばならない。
【0012】
【課題を解決するための手段】本発明によれば、フレー
ム内及びフレーム間のコード化圧縮ビデオデータをデコ
ードするための方法及び装置が提供されている。本発明
の1実施形態においては、脱圧縮装置が、プロセサと、
デコーダコプロセサと、逆離散余弦変換コプロセサと、
運動補償コプロセサと、通信用のグローバルバスとを有
している。本発明に基づく脱圧縮装置は、ホストバスを
介してホストコンピュータと通信することが可能であ
り、且つメモリバスを介して外部のダイナミックランダ
ムアクセスメモリ(DRAM)と通信を行なうことが可
能である。
ム内及びフレーム間のコード化圧縮ビデオデータをデコ
ードするための方法及び装置が提供されている。本発明
の1実施形態においては、脱圧縮装置が、プロセサと、
デコーダコプロセサと、逆離散余弦変換コプロセサと、
運動補償コプロセサと、通信用のグローバルバスとを有
している。本発明に基づく脱圧縮装置は、ホストバスを
介してホストコンピュータと通信することが可能であ
り、且つメモリバスを介して外部のダイナミックランダ
ムアクセスメモリ(DRAM)と通信を行なうことが可
能である。
【0013】本発明の脱圧縮装置内のプロセサは、デコ
ーダ、IDCT及び運動補償コプロセサのうちの一つに
関連する複数個のデータ及び制御レジスタの読取り及び
書込みを行なうことによりデコーダ、IDCT及び運動
補償コプロセサに対して全体的な制御を与える。
ーダ、IDCT及び運動補償コプロセサのうちの一つに
関連する複数個のデータ及び制御レジスタの読取り及び
書込みを行なうことによりデコーダ、IDCT及び運動
補償コプロセサに対して全体的な制御を与える。
【0014】本発明の1実施形態においては、二次元デ
ィスプレイ空間をディスプレイ空間のX及びYベクトル
を直線的なDRAMアドレス内に埋め込むことにより外
部DRAMの直線的アドレス空間内にマップさせる。更
に、本発明に基づくX及びYベクトルのマッピングは、
マクロブロックの画素を一つのDRAMメモリページ内
に格納することを可能とし、従ってマクロブロックに対
するアクセスはDRAMページへのページモードアクセ
スの下で効率的に達成することが可能である。1実施形
態においては、CAS信号のタイミングは、クロック信
号の下降エッジを遅延させることにより充足される。C
AS信号を出力ピンからチップ内へループバックさせる
ことにより、外部DRAMからのデータの到着のタイミ
ングをよりよく制御することが可能である。一つのアド
レスビットに対し特別の制御を与えることにより、4個
の画素のデータを2×2画素(「クワッド画素」)形態
又は4×1画素(「スキャン」)形態で一度に得ること
が可能である。
ィスプレイ空間をディスプレイ空間のX及びYベクトル
を直線的なDRAMアドレス内に埋め込むことにより外
部DRAMの直線的アドレス空間内にマップさせる。更
に、本発明に基づくX及びYベクトルのマッピングは、
マクロブロックの画素を一つのDRAMメモリページ内
に格納することを可能とし、従ってマクロブロックに対
するアクセスはDRAMページへのページモードアクセ
スの下で効率的に達成することが可能である。1実施形
態においては、CAS信号のタイミングは、クロック信
号の下降エッジを遅延させることにより充足される。C
AS信号を出力ピンからチップ内へループバックさせる
ことにより、外部DRAMからのデータの到着のタイミ
ングをよりよく制御することが可能である。一つのアド
レスビットに対し特別の制御を与えることにより、4個
の画素のデータを2×2画素(「クワッド画素」)形態
又は4×1画素(「スキャン」)形態で一度に得ること
が可能である。
【0015】本発明の一実施例においては、上述した脱
圧縮装置を4個有するHDTV脱圧縮装置及び方法が、
高品質テレビ(HDTV)信号をデコードするために提
供されている。このHDTV脱圧縮装置においては、各
脱圧縮装置が、2個の240×1088画素画像エリア
へのアクセスでもって480×1088画素の画像エリ
アをデコードする。15進除数を使用する方法がHDT
V脱圧縮装置内に設けられており、DRAM物理的アド
レス空間を効率的に使用してディスプレイ空間を外部D
RAM内にマッピングする。
圧縮装置を4個有するHDTV脱圧縮装置及び方法が、
高品質テレビ(HDTV)信号をデコードするために提
供されている。このHDTV脱圧縮装置においては、各
脱圧縮装置が、2個の240×1088画素画像エリア
へのアクセスでもって480×1088画素の画像エリ
アをデコードする。15進除数を使用する方法がHDT
V脱圧縮装置内に設けられており、DRAM物理的アド
レス空間を効率的に使用してディスプレイ空間を外部D
RAM内にマッピングする。
【0016】本発明の一実施例においては、複数個のデ
コードテーブルを有するデコーダ論理装置及び方法が、
コード化されたビデオデータをデコードするために、デ
コーダコプロセサ内に設けられている。デコードされる
べき各コード化されたデータは、全てのデコードテーブ
ルへ供給される。デコードされたデータは、全てのデコ
ードされたテーブルの出力データの中から有限のステー
トマシンにより選択される。
コードテーブルを有するデコーダ論理装置及び方法が、
コード化されたビデオデータをデコードするために、デ
コーダコプロセサ内に設けられている。デコードされる
べき各コード化されたデータは、全てのデコードテーブ
ルへ供給される。デコードされたデータは、全てのデコ
ードされたテーブルの出力データの中から有限のステー
トマシンにより選択される。
【0017】本発明の一実施例においては、脱圧縮装置
のプロセサは、三進演算及びゼロ化、否定又は予め計算
した定数を不変のままとさせることの何れかを使用する
ことにより得られる修正したオペランドの和へ計算を還
元させることにより積を計算するコストを最小とするた
めの装置及び方法が設けられている。
のプロセサは、三進演算及びゼロ化、否定又は予め計算
した定数を不変のままとさせることの何れかを使用する
ことにより得られる修正したオペランドの和へ計算を還
元させることにより積を計算するコストを最小とするた
めの装置及び方法が設けられている。
【0018】本発明の一実施例においては、ブロックメ
モリ装置及び方法が、二重バッファ動作を必要とするこ
となしに、8×8画素ブロックが受取られる場合に16
×16画素の画像エリアを同時的に列毎に出力させるこ
とが可能であるように、16×16画素の画像エリアに
おいて8×8画素ブロックを列毎に受取るために設けら
れている。
モリ装置及び方法が、二重バッファ動作を必要とするこ
となしに、8×8画素ブロックが受取られる場合に16
×16画素の画像エリアを同時的に列毎に出力させるこ
とが可能であるように、16×16画素の画像エリアに
おいて8×8画素ブロックを列毎に受取るために設けら
れている。
【0019】本発明の一実施例においては、運動ベクト
ルを使用してフレーム間のコード化したビデオデータを
内挿するために運動補償装置及び方法が設けられてい
る。運動補償装置は、垂直方向及び水平方向の両方にお
いて画素データを再サンプルするためのフィルタと、予
測メモリ装置と、重み付けをした加算器装置とを有して
いる。本発明の一実施例においては、重み付けをした加
算器装置及び方法は、複数個のマルチプレクサ及びマル
チ入力加算器を使用して二つの値の双一次内挿を実施す
るために設けられている。
ルを使用してフレーム間のコード化したビデオデータを
内挿するために運動補償装置及び方法が設けられてい
る。運動補償装置は、垂直方向及び水平方向の両方にお
いて画素データを再サンプルするためのフィルタと、予
測メモリ装置と、重み付けをした加算器装置とを有して
いる。本発明の一実施例においては、重み付けをした加
算器装置及び方法は、複数個のマルチプレクサ及びマル
チ入力加算器を使用して二つの値の双一次内挿を実施す
るために設けられている。
【0020】本発明の一実施例においては、16×16
画素の画像エリアのアクセス期間中に横断するDRAM
ページ境界の数を最小とさせ、その際にページアクセス
モードの下でのDRAMの初期的アクセスに関連するオ
ーバーヘッドコストを減少させることによりメモリアク
セスの効率を増加させるために、16×16画素の画像
エリアを二つの部分でアクセスするための装置及び方法
が提供されている。
画素の画像エリアのアクセス期間中に横断するDRAM
ページ境界の数を最小とさせ、その際にページアクセス
モードの下でのDRAMの初期的アクセスに関連するオ
ーバーヘッドコストを減少させることによりメモリアク
セスの効率を増加させるために、16×16画素の画像
エリアを二つの部分でアクセスするための装置及び方法
が提供されている。
【0021】
【実施例】図2はビデオ脱圧縮回路200における本発
明の一実施例を示している。本発明のこの実施例は、カ
リフォルニア州サンノゼのシ−キューブ・マイクロシス
テムズ社から市販されているCL950 MPEGビデ
オ脱圧縮プロセサ(「CL950チップ」)に設けられ
ている。図2に示した如く、ビデオ脱圧縮回路200
は、プロセサ201と、デコーダコプロセサ202と、
IDCTコプロセサ203と、運動補償コプロセサ20
4とを有しており、それらはグローバルバス205によ
り接続されている。ビデオ脱圧縮回路200は四つのイ
ンターフェース、即ち49ビットホストバス206、1
0ビットコードバス207、82ビットメモリバス20
8、15ビットビデオバス209を有している。
明の一実施例を示している。本発明のこの実施例は、カ
リフォルニア州サンノゼのシ−キューブ・マイクロシス
テムズ社から市販されているCL950 MPEGビデ
オ脱圧縮プロセサ(「CL950チップ」)に設けられ
ている。図2に示した如く、ビデオ脱圧縮回路200
は、プロセサ201と、デコーダコプロセサ202と、
IDCTコプロセサ203と、運動補償コプロセサ20
4とを有しており、それらはグローバルバス205によ
り接続されている。ビデオ脱圧縮回路200は四つのイ
ンターフェース、即ち49ビットホストバス206、1
0ビットコードバス207、82ビットメモリバス20
8、15ビットビデオバス209を有している。
【0022】グローバルバス205は、プロセサ201
とコプロセサ202−204との間での通信のための通
路を与えている。該グローバルバスは、32ビットデー
タバスと7ビットアドレスバスとを有しており、該7ビ
ットアドレスバスの最小桁ビットは、その7ビットアド
レスが読取りアドレスであるか書込みアドレスであるか
を表わしている。コプロセサ202−204内の選択さ
れたモジュールは、各々、四つのコプロセサアドレス、
即ち「読取りデータ」アドレス(ベースアドレス)、
「書込みデータ」アドレス(ベース+1アドレス)、
「読取り制御」アドレス(ベース+2アドレス)及び
「書込み制御」アドレス(ベース+3アドレス)が割当
てられている。更に、プロセサ201は、プロセサ20
1内の32個のレジスタの読取り及び書込みを行なうた
めに64個のアドレスが割当てられている。以下に説明
する如く、プロセサ201は、各モジュールの制御及び
データアドレスの読取り及び書込みによりコプロセサ2
02−204内のモジュールの動作をモニタし且つ制御
する。
とコプロセサ202−204との間での通信のための通
路を与えている。該グローバルバスは、32ビットデー
タバスと7ビットアドレスバスとを有しており、該7ビ
ットアドレスバスの最小桁ビットは、その7ビットアド
レスが読取りアドレスであるか書込みアドレスであるか
を表わしている。コプロセサ202−204内の選択さ
れたモジュールは、各々、四つのコプロセサアドレス、
即ち「読取りデータ」アドレス(ベースアドレス)、
「書込みデータ」アドレス(ベース+1アドレス)、
「読取り制御」アドレス(ベース+2アドレス)及び
「書込み制御」アドレス(ベース+3アドレス)が割当
てられている。更に、プロセサ201は、プロセサ20
1内の32個のレジスタの読取り及び書込みを行なうた
めに64個のアドレスが割当てられている。以下に説明
する如く、プロセサ201は、各モジュールの制御及び
データアドレスの読取り及び書込みによりコプロセサ2
02−204内のモジュールの動作をモニタし且つ制御
する。
【0023】ホストバス206は、例えばANSI/I
EEEスタンダード1196−1987(「NuBu
s」スタンダード)などのような標準的な通信プロトコ
ルを使用するホストコンピュータと通信を行なう。使用
するホストコンピュータ及び通信プロトコルのタイプ
は、本発明にとって特に重要なものではない。この実施
例においては、ホストバス206は、データ入力及び出
力のために双方向32ビットバスを有すると共に、「ホ
ストリクエスト」(Hreq)及び「読取り/書込み」
(Hwrite)信号を包含する8ビットアドレスバス
を有しており、更に4制御入力及び出力ピン、ホストク
ロックピン、グローバルクロックピン、リセットピン、
インタラプトピン、テストピンを有している。ホストバ
ス206はグローバルバスへアクセスを与えるモジュー
ルである。グローバルバス205の7ビットアドレスバ
スは、ホストバス206の7ビットアドレスバスに対応
している。
EEEスタンダード1196−1987(「NuBu
s」スタンダード)などのような標準的な通信プロトコ
ルを使用するホストコンピュータと通信を行なう。使用
するホストコンピュータ及び通信プロトコルのタイプ
は、本発明にとって特に重要なものではない。この実施
例においては、ホストバス206は、データ入力及び出
力のために双方向32ビットバスを有すると共に、「ホ
ストリクエスト」(Hreq)及び「読取り/書込み」
(Hwrite)信号を包含する8ビットアドレスバス
を有しており、更に4制御入力及び出力ピン、ホストク
ロックピン、グローバルクロックピン、リセットピン、
インタラプトピン、テストピンを有している。ホストバ
ス206はグローバルバスへアクセスを与えるモジュー
ルである。グローバルバス205の7ビットアドレスバ
スは、ホストバス206の7ビットアドレスバスに対応
している。
【0024】コードバス207は、バイトストリームC
BUS[7:0]における圧縮ビデオデータ(「cod
e(コード)」)の到着を表わす1ビット「code
valid(コード有効)」(CVALID)信号を受
取り、且つコードバス207が次のバイトのコードに対
する準備ができている場合には「ready(レデ
ィ)」(CRDY)を供給する。
BUS[7:0]における圧縮ビデオデータ(「cod
e(コード)」)の到着を表わす1ビット「code
valid(コード有効)」(CVALID)信号を受
取り、且つコードバス207が次のバイトのコードに対
する準備ができている場合には「ready(レデ
ィ)」(CRDY)を供給する。
【0025】メモリバス208は、回路200外部の最
大で3個のバンクのダイナミックランダムアクセスメモ
リ(DRAM)へ接続する。メモリバス208は、双方
向64ビットデータバス(208b)mdata[6
3:0]及びバスmaddr[9:1]及びリードma
ddr0H及びmaddr0Lからなる列アドレス及び
行アドレスをマルチプレクス即ち多重化するための11
ビットアドレスバス(208a)を有している。メモリ
アドレスバス208a内のビットの行アドレス及び列ア
ドレスへのマッピングについては後に説明する。メモリ
バス208は、以下に詳細に説明する高速のページモー
ド下で外部DRAMへアクセスすることが可能である。
3個の1ビット「行アドレスストローブ」(RAS
[1:0],RAS2)信号及び1ビット「列アドレス
ストローブ」(CAS)信号が供給される。このCAS
信号は、「data ready(データレディ)」
(NCASIN)信号としてループバックされる。クロ
ックのスキュー及び例えば出力負荷などのようなその他
のファクタのために、列アドレスストローブ信号が実際
に外部DRAMに何時到達するかということを制御する
ことは非常に困難であり、従って、外部DRAMから何
時データが準備されているかを制御することは困難であ
る。しかしながら、出力ピン上にCAS信号をループバ
ックさせることにより、この実施例では、CAS信号が
外部DRAMにおいてアサート即ち活性化される時間を
モニタすることが可能である。従って、何時外部DRA
Mが列アドレス信号を受取るかということに関する不確
実性が除去されており、従ってCAS信号のアサートか
ら特定した時間内におけるデータの到着時間が分かる。
読取り又は書込み動作は、2ビットの書込みイネーブル
信号(MWE[1:0])により表わされる。
大で3個のバンクのダイナミックランダムアクセスメモ
リ(DRAM)へ接続する。メモリバス208は、双方
向64ビットデータバス(208b)mdata[6
3:0]及びバスmaddr[9:1]及びリードma
ddr0H及びmaddr0Lからなる列アドレス及び
行アドレスをマルチプレクス即ち多重化するための11
ビットアドレスバス(208a)を有している。メモリ
アドレスバス208a内のビットの行アドレス及び列ア
ドレスへのマッピングについては後に説明する。メモリ
バス208は、以下に詳細に説明する高速のページモー
ド下で外部DRAMへアクセスすることが可能である。
3個の1ビット「行アドレスストローブ」(RAS
[1:0],RAS2)信号及び1ビット「列アドレス
ストローブ」(CAS)信号が供給される。このCAS
信号は、「data ready(データレディ)」
(NCASIN)信号としてループバックされる。クロ
ックのスキュー及び例えば出力負荷などのようなその他
のファクタのために、列アドレスストローブ信号が実際
に外部DRAMに何時到達するかということを制御する
ことは非常に困難であり、従って、外部DRAMから何
時データが準備されているかを制御することは困難であ
る。しかしながら、出力ピン上にCAS信号をループバ
ックさせることにより、この実施例では、CAS信号が
外部DRAMにおいてアサート即ち活性化される時間を
モニタすることが可能である。従って、何時外部DRA
Mが列アドレス信号を受取るかということに関する不確
実性が除去されており、従ってCAS信号のアサートか
ら特定した時間内におけるデータの到着時間が分かる。
読取り又は書込み動作は、2ビットの書込みイネーブル
信号(MWE[1:0])により表わされる。
【0026】ビデオバス209は、ビデオクロックと同
期して動作するCCIR−601フォーマットにおける
バイト直列バスである。本実施例は、インターレース型
及び非インターレース型の両方の適用をサポートしてい
る。ビデオバス209は8ビットデータバス(VBUS
[7:0])を有している。フレームの開始を表わすV
SYNC信号は、出力信号としてビデオバス209によ
り発生させることが可能であり、又はビデオバス209
への入力信号として外部ディスプレイ装置により供給す
ることが可能である。信号VPOPは、外部ディスプレ
イ装置が次のクロック期間において1バイトのビデオデ
ータを転送することを要求する場合に、ビデオバス20
9へ供給される。更に、本実施例においては、例えば、
RGBタイプのディスプレイへの直接的な出力をサポー
トするためにVBUS[7:0]を拡張する場合などの
ような将来の改良のために5個のピンが予約されてい
る。プロセサ201は32ビットプロセサユニットであ
って、それはコプロセサ202−204に対して全体的
な制御を与え、外部メモリシステムへのアクセスを制御
し、且つ一般的に例外及び低周波数タスクを取扱う。デ
コーダ202は、可変長エントロピーコード化コードの
バイトストリームをコードバス206から受取るコプロ
セサである。デコーダ202は、このエントロピーコー
ド化コードのデコーディング及び脱量子化を行なう。デ
コードされたコードは、8×8二次元逆離散余弦変換を
使用して、周波数空間からディスプレイ空間へマッピン
グされるべきIDCTユニット203へ供給される。運
動補償コプロセサ204は、運動ベクトル及び過去及び
/又は将来のフレームからP画像及びB画像を再生す
る。
期して動作するCCIR−601フォーマットにおける
バイト直列バスである。本実施例は、インターレース型
及び非インターレース型の両方の適用をサポートしてい
る。ビデオバス209は8ビットデータバス(VBUS
[7:0])を有している。フレームの開始を表わすV
SYNC信号は、出力信号としてビデオバス209によ
り発生させることが可能であり、又はビデオバス209
への入力信号として外部ディスプレイ装置により供給す
ることが可能である。信号VPOPは、外部ディスプレ
イ装置が次のクロック期間において1バイトのビデオデ
ータを転送することを要求する場合に、ビデオバス20
9へ供給される。更に、本実施例においては、例えば、
RGBタイプのディスプレイへの直接的な出力をサポー
トするためにVBUS[7:0]を拡張する場合などの
ような将来の改良のために5個のピンが予約されてい
る。プロセサ201は32ビットプロセサユニットであ
って、それはコプロセサ202−204に対して全体的
な制御を与え、外部メモリシステムへのアクセスを制御
し、且つ一般的に例外及び低周波数タスクを取扱う。デ
コーダ202は、可変長エントロピーコード化コードの
バイトストリームをコードバス206から受取るコプロ
セサである。デコーダ202は、このエントロピーコー
ド化コードのデコーディング及び脱量子化を行なう。デ
コードされたコードは、8×8二次元逆離散余弦変換を
使用して、周波数空間からディスプレイ空間へマッピン
グされるべきIDCTユニット203へ供給される。運
動補償コプロセサ204は、運動ベクトル及び過去及び
/又は将来のフレームからP画像及びB画像を再生す
る。
【0027】図3は、図2の回路200のより詳細なブ
ロック図であり、プロセサ201及びコプロセサ202
−204内の機能的ブロックを示している。図3に示し
た如く、プロセサ201は、64×32ビット命令メモ
リ301、32個の汎用32ビットレジスタからなるレ
ジスタファイル302、ALU303、DRAMアドレ
ス発生ユニット304aと「パッド及びFF」即ちグロ
ーバルバスインターフェースユニット304bの両方を
有するDRAM制御器ユニット304を有している。
ロック図であり、プロセサ201及びコプロセサ202
−204内の機能的ブロックを示している。図3に示し
た如く、プロセサ201は、64×32ビット命令メモ
リ301、32個の汎用32ビットレジスタからなるレ
ジスタファイル302、ALU303、DRAMアドレ
ス発生ユニット304aと「パッド及びFF」即ちグロ
ーバルバスインターフェースユニット304bの両方を
有するDRAM制御器ユニット304を有している。
【0028】デコーダコプロセサ202は図3に示して
あり、32×32ビットコードメモリユニット305、
32×32ビットデコードメモリユニット306、デコ
ード論理ユニット307、ジグザグ論理ユニット30
8、128×8ビットジグザグメモリ309、2×64
×8ビット量子化器メモリ310、量子化器論理ユニッ
ト311を有している。IDCTコプロセサ203は、
変換論理ユニット312及び変換メモリ313を有して
いる。運動補償ユニット204は、ブロックメモリユニ
ット314、画素フィルタユニット316、重み付き加
算器/ALUユニット315、128×16ビット及び
64×16ビットメモリから構成される画素乃至は予測
メモリ317、64×32ビットビデオメモリ319、
水平再サンプル回路318を有している。
あり、32×32ビットコードメモリユニット305、
32×32ビットデコードメモリユニット306、デコ
ード論理ユニット307、ジグザグ論理ユニット30
8、128×8ビットジグザグメモリ309、2×64
×8ビット量子化器メモリ310、量子化器論理ユニッ
ト311を有している。IDCTコプロセサ203は、
変換論理ユニット312及び変換メモリ313を有して
いる。運動補償ユニット204は、ブロックメモリユニ
ット314、画素フィルタユニット316、重み付き加
算器/ALUユニット315、128×16ビット及び
64×16ビットメモリから構成される画素乃至は予測
メモリ317、64×32ビットビデオメモリ319、
水平再サンプル回路318を有している。
【0029】プロセサ201 上述した如く、プロセサ201は、コプロセサ202−
204の動作及び外部DRAMへのアクセスを包含し
て、回路200の全体的な動作を制御する。プロセサ2
01の命令は、図4に示した一般的なフォーマットを有
している。
204の動作及び外部DRAMへのアクセスを包含し
て、回路200の全体的な動作を制御する。プロセサ2
01の命令は、図4に示した一般的なフォーマットを有
している。
【0030】図4に示した如く、プロセサ201の命令
内のオペコードフィールド(「op」及び「opc」フ
ィールドの組合わせ)は、5ビットから構成されてお
り、そのうちの2ビットフィールド「op」は「主要動
作」を表わし、それは演算動作、シフト動作、ロード動
作又は格納動作の何れかである。典型的な命令は、二つ
のオペランドの供給源「A」及び「B」を特定し且つそ
の結果を宛て先レジスタ「C」に供給する。プロセサ2
01の命令は、2ビットフィールド「SRC」におい
て、「A」オペランドの供給源(発信元)タイプを特定
し、それはレジスタであるか、5ビットの直接的な値で
あるか、又は14ビットの直接的な値の何れかとするこ
とが可能である。プロセサ201の命令の「B」供給源
乃至は発信元は常に5ビットレジスタであり、グローバ
ルにアドレス可能なレジスタ(後述)又はレジスタファ
イル302内の局所的なレジスタを包含している。ビッ
ト「d」は、その宛て先がレジスタファイル302内の
局所的レジスタであるか、又はグローバルにアドレス可
能なレジスタであるかを特定する。プロセサ201にお
ける命令の実行は、所定数のフラッグをセットし、該フ
ラッグは次の命令によってテストされ、分岐条件が充足
されるか否かを決定する。テストされるべき条件は、4
ビット分岐制御フィールド「br」内において特定され
る。分岐条件のテストが成功すると、制御が5ビットジ
ャンプターゲットフィールド「J」において特定されて
いるレジスタ内に収容されているアドレスの命令へ転送
される。「A」供給源が14ビットの直接的値を特定す
る場合には、「br」、「J」及び「A」フィールドは
使用可能ではない。
内のオペコードフィールド(「op」及び「opc」フ
ィールドの組合わせ)は、5ビットから構成されてお
り、そのうちの2ビットフィールド「op」は「主要動
作」を表わし、それは演算動作、シフト動作、ロード動
作又は格納動作の何れかである。典型的な命令は、二つ
のオペランドの供給源「A」及び「B」を特定し且つそ
の結果を宛て先レジスタ「C」に供給する。プロセサ2
01の命令は、2ビットフィールド「SRC」におい
て、「A」オペランドの供給源(発信元)タイプを特定
し、それはレジスタであるか、5ビットの直接的な値で
あるか、又は14ビットの直接的な値の何れかとするこ
とが可能である。プロセサ201の命令の「B」供給源
乃至は発信元は常に5ビットレジスタであり、グローバ
ルにアドレス可能なレジスタ(後述)又はレジスタファ
イル302内の局所的なレジスタを包含している。ビッ
ト「d」は、その宛て先がレジスタファイル302内の
局所的レジスタであるか、又はグローバルにアドレス可
能なレジスタであるかを特定する。プロセサ201にお
ける命令の実行は、所定数のフラッグをセットし、該フ
ラッグは次の命令によってテストされ、分岐条件が充足
されるか否かを決定する。テストされるべき条件は、4
ビット分岐制御フィールド「br」内において特定され
る。分岐条件のテストが成功すると、制御が5ビットジ
ャンプターゲットフィールド「J」において特定されて
いるレジスタ内に収容されているアドレスの命令へ転送
される。「A」供給源が14ビットの直接的値を特定す
る場合には、「br」、「J」及び「A」フィールドは
使用可能ではない。
【0031】命令を実行する前に、該命令は32ワード
命令キャッシュを包含する64×32ビット命令メモリ
301内にロードされねばならない。この命令キャッシ
ュは、DRAMからの32個の命令からなる一つのブロ
ックを保持し、且つキャッシュ管理のため及びコプロセ
サ202−204のインタラプトに応答するため(後
述)に供給された32個の常駐命令を保持している。該
命令はパイプラインでフェッチされる。性能を増加させ
るために、次の逐次的な命令及び潜在的な分岐ターゲッ
トにおける命令の両方がフェッチされる。
命令キャッシュを包含する64×32ビット命令メモリ
301内にロードされねばならない。この命令キャッシ
ュは、DRAMからの32個の命令からなる一つのブロ
ックを保持し、且つキャッシュ管理のため及びコプロセ
サ202−204のインタラプトに応答するため(後
述)に供給された32個の常駐命令を保持している。該
命令はパイプラインでフェッチされる。性能を増加させ
るために、次の逐次的な命令及び潜在的な分岐ターゲッ
トにおける命令の両方がフェッチされる。
【0032】32個の汎用レジスタがレジスタファイル
302内に設けられている。レジスタファイル302
は、2個の読取りポート及び1個の書込みポートが設け
られており、2個の供給源オペランドのフェッチ動作を
可能とし且つ上述した命令フォーマットにおいて要求さ
れている場合にはその結果を宛て先レジスタ内に書込む
ことを可能としている。同一のレジスタに対しての同時
的な読取り及び書込みのためにバイパスマルチプレクサ
が設けられている。
302内に設けられている。レジスタファイル302
は、2個の読取りポート及び1個の書込みポートが設け
られており、2個の供給源オペランドのフェッチ動作を
可能とし且つ上述した命令フォーマットにおいて要求さ
れている場合にはその結果を宛て先レジスタ内に書込む
ことを可能としている。同一のレジスタに対しての同時
的な読取り及び書込みのためにバイパスマルチプレクサ
が設けられている。
【0033】プロセサ201の各命令は一つのクロック
サイクルで実行され、オーバーヘッド又はストールサイ
クルを排除している。メモリロード命令においては、3
2ビット又は64ビットの何れかのデータがロードされ
るかに依存して、宛て先レジスタがアップデートされる
前に付加的に一つ又は二つのサイクルが必要とされる場
合がある。特別のDRAMページアクセス方法が使用さ
れるので(後述)、同一の行内のDRAM位置への相継
ぐアクセスは、一つ置きの命令で開始させることが可能
である。新たな行への初期的なアクセスの場合には、ア
クセス時間は4乃至6個のクロックサイクルとすること
が可能である。この期間は、4番目の命令の実行を所要
数のサイクルだけストール即ち停止させることによりユ
ーザから隠されている。従って、4個の命令のロード命
令待ち時間が維持される。
サイクルで実行され、オーバーヘッド又はストールサイ
クルを排除している。メモリロード命令においては、3
2ビット又は64ビットの何れかのデータがロードされ
るかに依存して、宛て先レジスタがアップデートされる
前に付加的に一つ又は二つのサイクルが必要とされる場
合がある。特別のDRAMページアクセス方法が使用さ
れるので(後述)、同一の行内のDRAM位置への相継
ぐアクセスは、一つ置きの命令で開始させることが可能
である。新たな行への初期的なアクセスの場合には、ア
クセス時間は4乃至6個のクロックサイクルとすること
が可能である。この期間は、4番目の命令の実行を所要
数のサイクルだけストール即ち停止させることによりユ
ーザから隠されている。従って、4個の命令のロード命
令待ち時間が維持される。
【0034】特定された分岐条件が存在しない(即ち、
「branch never(分岐なし)」条件)の場
合のある時間に関して重要な命令においては、特別回路
へ制御信号を供給することにより性能を向上させるため
にフィールド「J」(分岐ターゲットアドレス)が使用
される。これらの制御信号は、例えばRASプレーチャ
ージ、ビデオラインアクセス、メモリリフレッシュ、運
動補償型基準ブロックのアドレスを計算する場合に使用
される特別動作などのような動作を特定する。これらの
特別の動作は、運動補償コプロセサ204に関連して以
下に説明する。上述した如く、プロセサ201は、グロ
ーバルバス205を介してコプロセサ202−204の
各々におけるモジュールの制御レジスタ及びデータレジ
スタ内に書込むことによりコプロセサ202−204の
各々における動作を制御する。グローバルにアドレス可
能なレジスタは、ホストバス205内のhCntlレジ
スタ、プロセサ201内のiCntl及びiDataレ
ジスタ、コードメモリユニット305と関連したcCn
tlレジスタ、デコードメモリ306と関連したdCn
tlレジスタ、デコード論理307と関連したkCnt
l,dData0,dData1,dDiag,dMV
1,dMV2レジスタ、画素フィルタユニット316と
関連したfCntlレジスタ、IDCTユニット203
と関連したsCntl及びtCntlレジスタ、ジグザ
グユニット308と関連したzCtlレジスタ、ブロッ
クメモリユニット314と関連したbCntlレジス
タ、量子化ユニット311と関連したqCntlレジス
タ、画素メモリ317と関連したpCntlレジスタ、
ビデオメモリ318と関連したvCntlレジスタ、メ
モリ制御器304と関連したmCntlレジスタであ
る。
「branch never(分岐なし)」条件)の場
合のある時間に関して重要な命令においては、特別回路
へ制御信号を供給することにより性能を向上させるため
にフィールド「J」(分岐ターゲットアドレス)が使用
される。これらの制御信号は、例えばRASプレーチャ
ージ、ビデオラインアクセス、メモリリフレッシュ、運
動補償型基準ブロックのアドレスを計算する場合に使用
される特別動作などのような動作を特定する。これらの
特別の動作は、運動補償コプロセサ204に関連して以
下に説明する。上述した如く、プロセサ201は、グロ
ーバルバス205を介してコプロセサ202−204の
各々におけるモジュールの制御レジスタ及びデータレジ
スタ内に書込むことによりコプロセサ202−204の
各々における動作を制御する。グローバルにアドレス可
能なレジスタは、ホストバス205内のhCntlレジ
スタ、プロセサ201内のiCntl及びiDataレ
ジスタ、コードメモリユニット305と関連したcCn
tlレジスタ、デコードメモリ306と関連したdCn
tlレジスタ、デコード論理307と関連したkCnt
l,dData0,dData1,dDiag,dMV
1,dMV2レジスタ、画素フィルタユニット316と
関連したfCntlレジスタ、IDCTユニット203
と関連したsCntl及びtCntlレジスタ、ジグザ
グユニット308と関連したzCtlレジスタ、ブロッ
クメモリユニット314と関連したbCntlレジス
タ、量子化ユニット311と関連したqCntlレジス
タ、画素メモリ317と関連したpCntlレジスタ、
ビデオメモリ318と関連したvCntlレジスタ、メ
モリ制御器304と関連したmCntlレジスタであ
る。
【0035】本発明の制御方法の下においては、各コプ
ロセサは、プロセサ201による初期化の後に、有限ス
テートマシンにより内部的に制御される。プロセサ20
1のコプロセサ202−204の各々の制御は、他の制
御プロセスと並列的に稼動される独立的なプロセスであ
る。これらの制御プロセスのうちの四つは、コード入
力、脱圧縮(コード入力及び脱圧縮の両方のタスクはデ
コーダコプロセサ202へ指向されている)、運動補償
及びビデオ出力タスク(運動補償及びビデオ出力の両方
は運動補償コプロセサ204へ指向されている)であ
る。これらのタスクは、(a)ビデオ出力、(b)コー
ド入力、(c)脱圧縮、(d)運動補償の順番で、外部
DRAMへのアクセスの優先度が与えられている。幾つ
かのモジュールはリセットの後に初期化され、且つ幾つ
かのレジスタは全てのフレームの後にアップデートされ
る。運動補償コプロセサ204内のフィルタ制御レジス
タは全てのマクロブロック毎に一度アップデートされ
る。
ロセサは、プロセサ201による初期化の後に、有限ス
テートマシンにより内部的に制御される。プロセサ20
1のコプロセサ202−204の各々の制御は、他の制
御プロセスと並列的に稼動される独立的なプロセスであ
る。これらの制御プロセスのうちの四つは、コード入
力、脱圧縮(コード入力及び脱圧縮の両方のタスクはデ
コーダコプロセサ202へ指向されている)、運動補償
及びビデオ出力タスク(運動補償及びビデオ出力の両方
は運動補償コプロセサ204へ指向されている)であ
る。これらのタスクは、(a)ビデオ出力、(b)コー
ド入力、(c)脱圧縮、(d)運動補償の順番で、外部
DRAMへのアクセスの優先度が与えられている。幾つ
かのモジュールはリセットの後に初期化され、且つ幾つ
かのレジスタは全てのフレームの後にアップデートされ
る。運動補償コプロセサ204内のフィルタ制御レジス
タは全てのマクロブロック毎に一度アップデートされ
る。
【0036】プロセサ201は、ホストコンピュータ又
はモジュールの外部DRAMへのアクセスを援助する。
例えば、デコードメモリ306などのようなモジュール
は、その先入れ先出しメモリ(FIFO)の一部をスタ
ティックランダムアクセスメモリ(SRAM)において
オンチップで実行し、且つそのFIFOを外部DRAM
内にオーバーフローさせる。外部DRAM内へ及びそれ
からデータを移動させるプロセスはプロセサ201によ
り援助される。図5は外部DRAM内のデータがプロセ
サ201の援助を受けて制御レジスタ507を持ったモ
ジュール内のSRAM501内にロードされる構成を示
している。この構成は、プロセサ201がコプロセサ2
02−204に対して全体的な制御を与える態様を概略
的に示したものである。図5に示される如く、モジュー
ルにはベースアドレスが割当てられており、それはモジ
ュール内の特定されたレジスタ内又はそのアドレスが制
御レジスタ507において特定された(前の「書込み制
御」アクセスにより配置された)SRAM位置における
データを読取るための「読取りデータ」アドレス、特定
されたデータレジスタ又は制御レジスタにおいて特定さ
れたSRAM位置内へ書込むための「書込みデータ」ア
ドレス(ベース+1)、制御レジスタ507内への書込
みのための「書込み制御」アドレス(ベース+3)及び
制御レジスタ507を読取るための「読取り制御」アド
レス(ベース+2)である。この場合には、制御レジス
タは、更に、SRAMアドレスを特定するためのフィー
ルドを収容している。データレジスタ及び制御レジスタ
はグローバルバス205上で読取り可能及び書込み可能
であり、それはグローバルアドレスバス205a及びグ
ローバルデータバス205bを有している。プロセサ2
01が該モジュールにより外部DRAMメモリへのアク
セスを援助する一例として、FIFOのSRAM部分に
おける所定のレベルの「充満度」に到達すると、該モジ
ュールの制御レジスタ507内にビットをセットするこ
とにより、該モジュールによるインタラプト要求がプロ
セサ201へ送給される。プロセサ201は、制御レジ
スタ507内のモジュールの「run flag」をク
リアすることにより応答する。インタラプトに応答する
場合には、プロセサ201はモジュールの制御レジスタ
の現在の状態を読取り且つ格納する。転送されるべきデ
ータの量及び外部DRAMへ転送されるべきデータのS
RAM501内における位置の開始アドレスが制御レジ
スタ507内に書込まれる。プロセサ201内のメモリ
制御器304が、データを外部DRAM内の対応する位
置へ転送するためにセットアップされる。データがSR
AM501からデータレジスタ503内へ読取られ、グ
ローバルデータバス205上へ読取られ、次いでメモリ
バス208(64ビット幅)を介して外部DRAM内へ
転送される。各32ビットデータが転送されると、制御
レジスタ507内のデータカウントがデクリメントされ
且つ全てのワードが転送された後に、インクリメンタ回
路505によってSRAMアドレスがそれと対応してイ
ンクリメントされる。最後に、データカウントがゼロに
到達すると、プロセサ201が該モジュールの制御レジ
スタ507の状態を回復させ、ランフラッグ(run
flag)をセットする。
はモジュールの外部DRAMへのアクセスを援助する。
例えば、デコードメモリ306などのようなモジュール
は、その先入れ先出しメモリ(FIFO)の一部をスタ
ティックランダムアクセスメモリ(SRAM)において
オンチップで実行し、且つそのFIFOを外部DRAM
内にオーバーフローさせる。外部DRAM内へ及びそれ
からデータを移動させるプロセスはプロセサ201によ
り援助される。図5は外部DRAM内のデータがプロセ
サ201の援助を受けて制御レジスタ507を持ったモ
ジュール内のSRAM501内にロードされる構成を示
している。この構成は、プロセサ201がコプロセサ2
02−204に対して全体的な制御を与える態様を概略
的に示したものである。図5に示される如く、モジュー
ルにはベースアドレスが割当てられており、それはモジ
ュール内の特定されたレジスタ内又はそのアドレスが制
御レジスタ507において特定された(前の「書込み制
御」アクセスにより配置された)SRAM位置における
データを読取るための「読取りデータ」アドレス、特定
されたデータレジスタ又は制御レジスタにおいて特定さ
れたSRAM位置内へ書込むための「書込みデータ」ア
ドレス(ベース+1)、制御レジスタ507内への書込
みのための「書込み制御」アドレス(ベース+3)及び
制御レジスタ507を読取るための「読取り制御」アド
レス(ベース+2)である。この場合には、制御レジス
タは、更に、SRAMアドレスを特定するためのフィー
ルドを収容している。データレジスタ及び制御レジスタ
はグローバルバス205上で読取り可能及び書込み可能
であり、それはグローバルアドレスバス205a及びグ
ローバルデータバス205bを有している。プロセサ2
01が該モジュールにより外部DRAMメモリへのアク
セスを援助する一例として、FIFOのSRAM部分に
おける所定のレベルの「充満度」に到達すると、該モジ
ュールの制御レジスタ507内にビットをセットするこ
とにより、該モジュールによるインタラプト要求がプロ
セサ201へ送給される。プロセサ201は、制御レジ
スタ507内のモジュールの「run flag」をク
リアすることにより応答する。インタラプトに応答する
場合には、プロセサ201はモジュールの制御レジスタ
の現在の状態を読取り且つ格納する。転送されるべきデ
ータの量及び外部DRAMへ転送されるべきデータのS
RAM501内における位置の開始アドレスが制御レジ
スタ507内に書込まれる。プロセサ201内のメモリ
制御器304が、データを外部DRAM内の対応する位
置へ転送するためにセットアップされる。データがSR
AM501からデータレジスタ503内へ読取られ、グ
ローバルデータバス205上へ読取られ、次いでメモリ
バス208(64ビット幅)を介して外部DRAM内へ
転送される。各32ビットデータが転送されると、制御
レジスタ507内のデータカウントがデクリメントされ
且つ全てのワードが転送された後に、インクリメンタ回
路505によってSRAMアドレスがそれと対応してイ
ンクリメントされる。最後に、データカウントがゼロに
到達すると、プロセサ201が該モジュールの制御レジ
スタ507の状態を回復させ、ランフラッグ(run
flag)をセットする。
【0037】プロセサ201は、更に、グローバルバス
205の割当てのためのアービトレーション(仲裁)ユ
ニット(不図示)を有している。グローバルバス205
は、四つの「クライエント」のうちの一つへ割当てるこ
とが可能である。尚、該「クライエント」は、(a)ロ
ード命令の完了(外部DRAMから読取られたデータの
宛て先レジスタ又はSRAM位置内への格納)、(b)
命令ユニットのアドレスステージ(64ビット「sto
re double(二重格納)」のため)、(c)ホ
ストバスインターフェース、(d)命令ユニットの実行
フェーズである。命令実行は、何らかのホストバスサイ
クル及びメモリアクセス競合の場合にストール即ち停止
される。
205の割当てのためのアービトレーション(仲裁)ユ
ニット(不図示)を有している。グローバルバス205
は、四つの「クライエント」のうちの一つへ割当てるこ
とが可能である。尚、該「クライエント」は、(a)ロ
ード命令の完了(外部DRAMから読取られたデータの
宛て先レジスタ又はSRAM位置内への格納)、(b)
命令ユニットのアドレスステージ(64ビット「sto
re double(二重格納)」のため)、(c)ホ
ストバスインターフェース、(d)命令ユニットの実行
フェーズである。命令実行は、何らかのホストバスサイ
クル及びメモリアクセス競合の場合にストール即ち停止
される。
【0038】プロセサ201は、そのほとんどの時間を
マクロブロックスライス(即ち、MPEGスタンダード
において定義されている1グループのマクロブロック)
のデコーディングを制御するタスクを実行することに費
やする。このマスターブロックスライスファームウエア
は、同時に、インタラプトファームウエアを有する命令
メモリ301内に嵌込むことが可能である。マクロブロ
ックスライス作業の実行と実行の間において、マクロブ
ロックスライスファームウエアは、例えばシーケンス初
期化、画像初期化、エラー処理などのような一層高いレ
ベルのルーチンの実行に対して場所をあけるためにスワ
ップアウト即ち交換的に外に出される。ALU303
は、入力マルチプレクサ、入力コンプリメンタ、32ビ
ット加算器及び論理ユニット、32ビットバレルシフタ
を有している。これらの回路は、当該技術分野において
公知であり、従ってそれらの詳細な説明は割愛する。
マクロブロックスライス(即ち、MPEGスタンダード
において定義されている1グループのマクロブロック)
のデコーディングを制御するタスクを実行することに費
やする。このマスターブロックスライスファームウエア
は、同時に、インタラプトファームウエアを有する命令
メモリ301内に嵌込むことが可能である。マクロブロ
ックスライス作業の実行と実行の間において、マクロブ
ロックスライスファームウエアは、例えばシーケンス初
期化、画像初期化、エラー処理などのような一層高いレ
ベルのルーチンの実行に対して場所をあけるためにスワ
ップアウト即ち交換的に外に出される。ALU303
は、入力マルチプレクサ、入力コンプリメンタ、32ビ
ット加算器及び論理ユニット、32ビットバレルシフタ
を有している。これらの回路は、当該技術分野において
公知であり、従ってそれらの詳細な説明は割愛する。
【0039】DRAM制御器 DRAM制御器304は、HDTV(「高品質TV」)
及び非HDTVモードをサポートしている。非HDTV
は、「エンハンスト品質TV」(EDTV)に対するサ
ポートを有している。非HDTVモードにおいて、メモ
リ制御器304は3個のバンクのDRAMを直接的にサ
ポートし、従来のDRAM制御信号RAS(行アドレス
ストローブ)、CAS(列アドレスストローブ)及びW
E(書込みイネーブル)を供給する。HDTVモードに
おいては、RAS信号が外部回路により発生される。D
RAM制御器304は、更に、リフレッシュサイクルを
与える。DRAM制御器304は、機能的ユニット「d
g_ms」(ステートマシン)、「dg_ma」(アドレ
スブロック)、「dg_mr」(リフレッシュブロッ
ク)及び「dg_mc」(制御論理ブロック)を有して
いる。
及び非HDTVモードをサポートしている。非HDTV
は、「エンハンスト品質TV」(EDTV)に対するサ
ポートを有している。非HDTVモードにおいて、メモ
リ制御器304は3個のバンクのDRAMを直接的にサ
ポートし、従来のDRAM制御信号RAS(行アドレス
ストローブ)、CAS(列アドレスストローブ)及びW
E(書込みイネーブル)を供給する。HDTVモードに
おいては、RAS信号が外部回路により発生される。D
RAM制御器304は、更に、リフレッシュサイクルを
与える。DRAM制御器304は、機能的ユニット「d
g_ms」(ステートマシン)、「dg_ma」(アドレ
スブロック)、「dg_mr」(リフレッシュブロッ
ク)及び「dg_mc」(制御論理ブロック)を有して
いる。
【0040】外部DRAMメモリは、レートバッファ
(「コードバッファ」とも呼ばれる)、基準フレーム及
びデコードされた現在のフレームを収納している。コー
ドバッファはFIFOリングであり、それはデコーディ
ング前の圧縮データを保持している。内部コード型フレ
ームは、典型的に、予測型又は内挿型フレームよりも3
乃至17倍多いデータを使用する。従って、圧縮データ
が一定の割合で到達する場合には、レートバッファが、
予測型又は内挿型フレームがデコードされる場合に、デ
ータを蓄積し、且つ内部コード型フレームがデコードさ
れる場合にデータを空にさせる。
(「コードバッファ」とも呼ばれる)、基準フレーム及
びデコードされた現在のフレームを収納している。コー
ドバッファはFIFOリングであり、それはデコーディ
ング前の圧縮データを保持している。内部コード型フレ
ームは、典型的に、予測型又は内挿型フレームよりも3
乃至17倍多いデータを使用する。従って、圧縮データ
が一定の割合で到達する場合には、レートバッファが、
予測型又は内挿型フレームがデコードされる場合に、デ
ータを蓄積し、且つ内部コード型フレームがデコードさ
れる場合にデータを空にさせる。
【0041】MPEGスタンダードを実現するために、
本実施例は、外部DRAM内に二つの基準フレームを保
持している。DRAMは、更に、現在デコード中のフレ
ームの全て又は一部を保持することが可能である。例え
ば外部フレームバッファが存在している場合などのよう
に、各マクロブロックは、それが処理された後に出力す
ることが可能である場合には、現在のフレームは格納す
る必要はない。別の場合においては、一ラインの画素
が、それがデコードされるや否やディスプレイ即ち表示
され且つ一度のみ表示される場合には、DRAMは二行
のマクロブロックを保持することが必要であるに過ぎな
い。しかしながら、入力コードがインターレースされて
おらず且つ出力信号がインターレースされている場合に
は、最大で完全なフレームの格納が必要とされる。
本実施例は、外部DRAM内に二つの基準フレームを保
持している。DRAMは、更に、現在デコード中のフレ
ームの全て又は一部を保持することが可能である。例え
ば外部フレームバッファが存在している場合などのよう
に、各マクロブロックは、それが処理された後に出力す
ることが可能である場合には、現在のフレームは格納す
る必要はない。別の場合においては、一ラインの画素
が、それがデコードされるや否やディスプレイ即ち表示
され且つ一度のみ表示される場合には、DRAMは二行
のマクロブロックを保持することが必要であるに過ぎな
い。しかしながら、入力コードがインターレースされて
おらず且つ出力信号がインターレースされている場合に
は、最大で完全なフレームの格納が必要とされる。
【0042】非HDTVモード 本実施例は、行及び列アドレス入力に対して異なった接
続を使用する256K×16ビット、256K×4ビッ
ト又は64K×16ビットDRAMチップをサポートし
ている。表1は、これらのサポートされたDRAMチッ
プに対するピン接続を示している。外部DRAMにおい
て使用される特定のチップに拘らず、外部DRAMは、
24ビットアドレス空間(E[23:0])を持ったバ
イトアドレス可能なメモリとして考えることが可能であ
る。図3に示した実施例においては、非HDTVモード
において、各メモリワードは64ビット幅であり、該メ
モリを256K×64ビット又は64K×64ビットと
して組織することを可能としている。256K×64ビ
ット形態においては、ビットE[22:21]が三つの
メモリバンクのうちの一つを選択し、且つビットE[2
0:3]が、外部DRAM(表2参照)の実現において
使用されているチップに従って行及び列アドレスとして
供給される。64K×64ビット形態においては、ビッ
トE[22:19]がメモリバンクを選択し、且つビッ
トE[18:3]が行及び列アドレスを選択する。
続を使用する256K×16ビット、256K×4ビッ
ト又は64K×16ビットDRAMチップをサポートし
ている。表1は、これらのサポートされたDRAMチッ
プに対するピン接続を示している。外部DRAMにおい
て使用される特定のチップに拘らず、外部DRAMは、
24ビットアドレス空間(E[23:0])を持ったバ
イトアドレス可能なメモリとして考えることが可能であ
る。図3に示した実施例においては、非HDTVモード
において、各メモリワードは64ビット幅であり、該メ
モリを256K×64ビット又は64K×64ビットと
して組織することを可能としている。256K×64ビ
ット形態においては、ビットE[22:21]が三つの
メモリバンクのうちの一つを選択し、且つビットE[2
0:3]が、外部DRAM(表2参照)の実現において
使用されているチップに従って行及び列アドレスとして
供給される。64K×64ビット形態においては、ビッ
トE[22:19]がメモリバンクを選択し、且つビッ
トE[18:3]が行及び列アドレスを選択する。
【0043】 表1 maddr 出力 9 8 7 6 5 4 OL/OH 3 2 1 列アドレスとして出力 10 11 10 9 8 7 6 5 4 3 されるアドレスビット 行アドレスとして出力 11 20 19 18 17 16 15 14 13 12 されるアドレスビット 256K×4列アドレ C C C C C C C C C ス用に使用されるビット 256K×4行アドレ R R R R R R R R R ス用に使用されるビット 256K×16列アドレ C C C C C C C C ス用に使用されるビット 256K×16行アドレ R R R R R R R R R R ス用に使用されるビット 64K×16列アドレ C C C C C C C C ス用に使用されるビット 64K×16行アドレ R R R R R R R R ス用に使用されるビット 図6は、本実施例のグローバルバス及びメモリバスイン
ターフェースユニット304bの概略図である。図6に
示した如く、メモリデータバス208bは二つの32ビ
ットバスmdata[63:32](バス601)及び
mdata[31:0](バス602a及び602bを
有するバス602)を有しており、それらは、それぞ
れ、「高位」及び「低位」32ビットバスと呼称され
る。低位32ビットバスは、更に、16ビット演算用に
二つの16ビットバスに分割することが可能である。レ
ジスタ603a,603b,603cは、32ビットグ
ローバルバス205上にロードするために、バス208
b(バス601及び602)上を外部DRAMから64
ビットデータをラッチする。データの流れの他方の方向
においては、レジスタ606a,606b,606c
は、グローバルバス205から64ビットメモリデータ
バス208bへの32ビットデータをラッチする。64
ビットデータが二つのクロック期間を介してグローバル
バス205から到達するので、最初の(高位)32ビッ
トは一時的にレジスタ608内に格納される。これらの
32個のビットは、次いで、下位の32個のビットと同
時に、それぞれ、レジスタ606a,606b,606
c内に書込まれ、同時的にメモリバス208b上に出力
される。マルチプレクサ607a,607b,607c
は、レジスタ608をバイパスし且つホストデータバス
612から32ビットデータをメモリデータバス208
bの高位32ビット又は低位32ビットの何れかへチャ
ンネルさせる(マルチプレクサ611を介して)するた
めに使用することが可能である。バス208b上の外部
DRAMからの各データは64ビット幅であり且つグロ
ーバルバス205は32ビット幅であるので、「dat
a ready(データレディ)」信号MCASINが
受取られると、64ビットデータは、最初に、レジスタ
603a,603b,603c内にロードされる。レジ
スタ603a内の高位の32ビットデータは、グローバ
ルバス205へ送給され、一方レジスタ603b及び6
03c内の32ビットデータは、次のクロック期間にお
いてグローバルバス205へ出力するために、レジスタ
609内に一時的に格納される。下位の32ビットデー
タをレジスタ603b及び603c内に滞留させたまま
とする代わりにレジスタ609内に格納することは、メ
モリ読取り要求が一つ置きのクロック期間で送給される
バーストモードにおいて動作している場合に、対応する
「列アドレスストローブ」信号(MCAS)が送給され
るのと同一のクロック期間中に信号MCASINが受取
られる場合に、次のクロック期間においてバス602a
及び602b上に到達する次のデータにより上書きされ
ることを回避するために必要である。
ターフェースユニット304bの概略図である。図6に
示した如く、メモリデータバス208bは二つの32ビ
ットバスmdata[63:32](バス601)及び
mdata[31:0](バス602a及び602bを
有するバス602)を有しており、それらは、それぞ
れ、「高位」及び「低位」32ビットバスと呼称され
る。低位32ビットバスは、更に、16ビット演算用に
二つの16ビットバスに分割することが可能である。レ
ジスタ603a,603b,603cは、32ビットグ
ローバルバス205上にロードするために、バス208
b(バス601及び602)上を外部DRAMから64
ビットデータをラッチする。データの流れの他方の方向
においては、レジスタ606a,606b,606c
は、グローバルバス205から64ビットメモリデータ
バス208bへの32ビットデータをラッチする。64
ビットデータが二つのクロック期間を介してグローバル
バス205から到達するので、最初の(高位)32ビッ
トは一時的にレジスタ608内に格納される。これらの
32個のビットは、次いで、下位の32個のビットと同
時に、それぞれ、レジスタ606a,606b,606
c内に書込まれ、同時的にメモリバス208b上に出力
される。マルチプレクサ607a,607b,607c
は、レジスタ608をバイパスし且つホストデータバス
612から32ビットデータをメモリデータバス208
bの高位32ビット又は低位32ビットの何れかへチャ
ンネルさせる(マルチプレクサ611を介して)するた
めに使用することが可能である。バス208b上の外部
DRAMからの各データは64ビット幅であり且つグロ
ーバルバス205は32ビット幅であるので、「dat
a ready(データレディ)」信号MCASINが
受取られると、64ビットデータは、最初に、レジスタ
603a,603b,603c内にロードされる。レジ
スタ603a内の高位の32ビットデータは、グローバ
ルバス205へ送給され、一方レジスタ603b及び6
03c内の32ビットデータは、次のクロック期間にお
いてグローバルバス205へ出力するために、レジスタ
609内に一時的に格納される。下位の32ビットデー
タをレジスタ603b及び603c内に滞留させたまま
とする代わりにレジスタ609内に格納することは、メ
モリ読取り要求が一つ置きのクロック期間で送給される
バーストモードにおいて動作している場合に、対応する
「列アドレスストローブ」信号(MCAS)が送給され
るのと同一のクロック期間中に信号MCASINが受取
られる場合に、次のクロック期間においてバス602a
及び602b上に到達する次のデータにより上書きされ
ることを回避するために必要である。
【0044】一つ置きのクロック期間でメモリ要求を開
始するために、ページアクセスモードが使用される。図
7aは、従来のページアクセスモードに対するデータ及
び制御信号を示している。図7aに示した如く、RAS
信号は時間t0において論理低状態へ移行し、その行ア
ドレスがレディ即ち準備できていることを表わす。次い
で、CAS信号が時間t2において論理低状態へ移行
し、列ストローブアドレスがレディであることを表わ
す。初期的な読取りアクセスは時間t3において完了
し、その場合に、読取られたデータ(信号「ReadD
ata」で表わしてある)がDRAMから到達する。ペ
ージモードの下においては、初期的なアクセスの後の2
番目の読取りは、RAS信号が低状態にある間に、CA
Sを再度高状態とし且つ列アドレスのみを供給すること
により時間t3において開始させることが可能である。
その後に、2番目の読取りアクセスは時間t5において
完了し、その時に、2番目のデータがDRAMから到着
する。3番目の読取りアクセスも、同様に、時間t5に
おいて再度CASを論理高状態とさせることにより開始
させることが可能である。
始するために、ページアクセスモードが使用される。図
7aは、従来のページアクセスモードに対するデータ及
び制御信号を示している。図7aに示した如く、RAS
信号は時間t0において論理低状態へ移行し、その行ア
ドレスがレディ即ち準備できていることを表わす。次い
で、CAS信号が時間t2において論理低状態へ移行
し、列ストローブアドレスがレディであることを表わ
す。初期的な読取りアクセスは時間t3において完了
し、その場合に、読取られたデータ(信号「ReadD
ata」で表わしてある)がDRAMから到達する。ペ
ージモードの下においては、初期的なアクセスの後の2
番目の読取りは、RAS信号が低状態にある間に、CA
Sを再度高状態とし且つ列アドレスのみを供給すること
により時間t3において開始させることが可能である。
その後に、2番目の読取りアクセスは時間t5において
完了し、その時に、2番目のデータがDRAMから到着
する。3番目の読取りアクセスも、同様に、時間t5に
おいて再度CASを論理高状態とさせることにより開始
させることが可能である。
【0045】ほとんどの市販されているDRAM部品は
「CAS低」及び「CAS高」の異なる保持時間を必要
とするので(例えば、55nsの最小ページモードサイ
クルを有するある80nsDRAMの場合、CAS低及
びCAS高に対する最小の保持時間はそれぞれ10ns
及び30nsである)、図7aのページモードアクセス
を実行するための便利なタイミング構成は、CAS信号
の上昇エッジ及び下降エッジをグローバルクロックと同
期させることによるものであり、従って、1番目のクロ
ック期間において、CAS信号は、グローバルクロック
が高である期間中、高であり、且つクロックが低状態へ
変化する場合にCAS低へ状態を変化させる。次のクロ
ック期間において、CASは低状態に止どまる。45−
55デューティサイクルクロックの場合、このタイミン
グ構成は、1.55クロック期間がCAS低保持時間条
件を満足するのに十分に長いものでなければならず、且
つ0.45クロック期間がCAS高時間条件を満足する
のに十分長いものでなければならないことを必要とす
る。この構成の下においては、CAS高保持時間の場
合、製造プロセスにおける変動に起因するタイミング変
動に対して許容されるマージンは非常に小さい。例え
ば、上述したタイミング構成が、36MHzの45−5
5デューティサイクルグローバルクロックを有する(2
7.8ns/クロック期間)本実施例において使用する
場合には、上述した80nsDRAM用のCAS高時間
は充足されない。なぜならば、該グローバルクロックは
単に12.5nsのみに対する論理高期間を有するもの
であり、且つCAS信号に対する遷移時間は2.5ns
よりも大きくなることはできず、CAS高保持時間条件
を満足させるのに10ns未満のものを残すのみであ
る。一つの解決方法は、CAS高保持時間条件を満足す
るためにグローバルクロック期間を延長させることであ
る。しかしながら、この方法は非常に浪費が多い。
「CAS低」及び「CAS高」の異なる保持時間を必要
とするので(例えば、55nsの最小ページモードサイ
クルを有するある80nsDRAMの場合、CAS低及
びCAS高に対する最小の保持時間はそれぞれ10ns
及び30nsである)、図7aのページモードアクセス
を実行するための便利なタイミング構成は、CAS信号
の上昇エッジ及び下降エッジをグローバルクロックと同
期させることによるものであり、従って、1番目のクロ
ック期間において、CAS信号は、グローバルクロック
が高である期間中、高であり、且つクロックが低状態へ
変化する場合にCAS低へ状態を変化させる。次のクロ
ック期間において、CASは低状態に止どまる。45−
55デューティサイクルクロックの場合、このタイミン
グ構成は、1.55クロック期間がCAS低保持時間条
件を満足するのに十分に長いものでなければならず、且
つ0.45クロック期間がCAS高時間条件を満足する
のに十分長いものでなければならないことを必要とす
る。この構成の下においては、CAS高保持時間の場
合、製造プロセスにおける変動に起因するタイミング変
動に対して許容されるマージンは非常に小さい。例え
ば、上述したタイミング構成が、36MHzの45−5
5デューティサイクルグローバルクロックを有する(2
7.8ns/クロック期間)本実施例において使用する
場合には、上述した80nsDRAM用のCAS高時間
は充足されない。なぜならば、該グローバルクロックは
単に12.5nsのみに対する論理高期間を有するもの
であり、且つCAS信号に対する遷移時間は2.5ns
よりも大きくなることはできず、CAS高保持時間条件
を満足させるのに10ns未満のものを残すのみであ
る。一つの解決方法は、CAS高保持時間条件を満足す
るためにグローバルクロック期間を延長させることであ
る。しかしながら、この方法は非常に浪費が多い。
【0046】CAS低時間においてマージンが存在して
いる(例えば、上述した80nsDRAMにおいては、
最小のCAS高時間が30nsであり且つ1.55クロ
ック期間が40.3nsである)、上述したCAS高保
持時間問題は、より長いグローバルクロック期間を必要
とすることなしに、CAS信号の高から低への遷移を遅
延させることにより解消させることが可能である。図7
bは、1番目のクロック期間(t0とt2との間)にお
けるt1においてグローバルクロックが論理低状態をと
った後にCAS信号が時間期間tdだけ遅延される状態
を示している。遅延されたCAS信号は、図7cに示し
た回路700により発生させることが可能である。図7
cにおいて、グローバルクロック信号はリード704上
に供給され、それは、多数の直列的に接続された遅延要
素701.1乃至701.nへ供給される。エッジ検知
器702は、グローバルクロックが遷移する場合に、そ
の遷移が論理高から論理低へのものであるか又は論理低
から論理高への遷移であるか否かを検知する。エッジ検
知器702が論理低から論理高への遷移を検知すると、
制御信号がリード705を介して送給されてマルチプレ
クサ703をセットしそのクロック信号を選択する。そ
うでない場合には、リード705上の制御信号が遅延要
素701.1乃至701.nのうちの遅延された出力信
号のうちの一つを選択するためにマルチプレクサ703
をセットする。リード705内の制御信号は、ユーザパ
ラメータに従って遅延の量を選択する。CAS信号は、
次のクロック期間中、論理低状態に保持される。その他
の回路要素を使用することが可能ではあるが、本実施例
においては、各遅延要素は3入力NORゲートである。
ディスプレイの二次元空間は24ビットの直線的アドレ
ス空間へマップされる。スクリーン空間からDRAMア
ドレス空間へのこの様なマッピングの一つを図8aに示
してある。垂直方向において互いに隣接する二つの画素
のルミナンス及びクロミナンスデータは4:2:2及び
4:2:0の両方のフォーマットに対して32ビット
(YYUV)で表現することが可能であるので、本実施
例においては32ビットの半分のワードにおいて二つの
画素を格納することが可能である。本実施例において
は、24ビットアドレス空間を使用して、210(X)×
213(Y)画素画像エリアの二次元スクリーン空間を表
わす。図8aはこの二次元スクリーン空間のDRAMの
バイトアドレス空間E[23:0]へのマッピングを示
している。図8aに示した如く、YベクトルY[13:
0]はE[23:15,5:2,0]で表わすことが可
能であり、且つXベクトルX[10:0]はE[14:
6,1,0]で表わすことが可能である。ビットE
[0]は、必要である場合に、サブ画素空間を表わすた
めに使用することが可能である。この表現方法は、ビッ
トE[8:1]がマクロブロック内部の二次元空間を表
現することを可能とし、その場合に、ビットE[8:
6,1]及びビットE[5:2]はそれぞれx及びyベ
クトルとして使用される。このマクロブロック空間にお
いて、アドレス(E[8:6],E[5:3])は64
個のクワッドペル(quad pel)のうちの一つを
特定し、ビット(E[1],E[2])は該クワッドペ
ル内の4個の画素のうちの一つを特定する。
いる(例えば、上述した80nsDRAMにおいては、
最小のCAS高時間が30nsであり且つ1.55クロ
ック期間が40.3nsである)、上述したCAS高保
持時間問題は、より長いグローバルクロック期間を必要
とすることなしに、CAS信号の高から低への遷移を遅
延させることにより解消させることが可能である。図7
bは、1番目のクロック期間(t0とt2との間)にお
けるt1においてグローバルクロックが論理低状態をと
った後にCAS信号が時間期間tdだけ遅延される状態
を示している。遅延されたCAS信号は、図7cに示し
た回路700により発生させることが可能である。図7
cにおいて、グローバルクロック信号はリード704上
に供給され、それは、多数の直列的に接続された遅延要
素701.1乃至701.nへ供給される。エッジ検知
器702は、グローバルクロックが遷移する場合に、そ
の遷移が論理高から論理低へのものであるか又は論理低
から論理高への遷移であるか否かを検知する。エッジ検
知器702が論理低から論理高への遷移を検知すると、
制御信号がリード705を介して送給されてマルチプレ
クサ703をセットしそのクロック信号を選択する。そ
うでない場合には、リード705上の制御信号が遅延要
素701.1乃至701.nのうちの遅延された出力信
号のうちの一つを選択するためにマルチプレクサ703
をセットする。リード705内の制御信号は、ユーザパ
ラメータに従って遅延の量を選択する。CAS信号は、
次のクロック期間中、論理低状態に保持される。その他
の回路要素を使用することが可能ではあるが、本実施例
においては、各遅延要素は3入力NORゲートである。
ディスプレイの二次元空間は24ビットの直線的アドレ
ス空間へマップされる。スクリーン空間からDRAMア
ドレス空間へのこの様なマッピングの一つを図8aに示
してある。垂直方向において互いに隣接する二つの画素
のルミナンス及びクロミナンスデータは4:2:2及び
4:2:0の両方のフォーマットに対して32ビット
(YYUV)で表現することが可能であるので、本実施
例においては32ビットの半分のワードにおいて二つの
画素を格納することが可能である。本実施例において
は、24ビットアドレス空間を使用して、210(X)×
213(Y)画素画像エリアの二次元スクリーン空間を表
わす。図8aはこの二次元スクリーン空間のDRAMの
バイトアドレス空間E[23:0]へのマッピングを示
している。図8aに示した如く、YベクトルY[13:
0]はE[23:15,5:2,0]で表わすことが可
能であり、且つXベクトルX[10:0]はE[14:
6,1,0]で表わすことが可能である。ビットE
[0]は、必要である場合に、サブ画素空間を表わすた
めに使用することが可能である。この表現方法は、ビッ
トE[8:1]がマクロブロック内部の二次元空間を表
現することを可能とし、その場合に、ビットE[8:
6,1]及びビットE[5:2]はそれぞれx及びyベ
クトルとして使用される。このマクロブロック空間にお
いて、アドレス(E[8:6],E[5:3])は64
個のクワッドペル(quad pel)のうちの一つを
特定し、ビット(E[1],E[2])は該クワッドペ
ル内の4個の画素のうちの一つを特定する。
【0047】この実施例においては、メモリ制御器30
4のアドレス発生ユニット304aは、プロセサ201
から、バイトアドレスE[23:0]を受取る。上述し
た表1に示した如く、メモリアドレスバス208bのビ
ット(maddr[9:1],maddr0H,mad
dr0L)は、行アドレスを与えるための(E[1
1],E[20:16],E[14:12],E[1
5],E[15])及び列アドレスを与えるための(E
[10],E[11:17],E[6:3],E
[6],E[6])により与えられる。画素は、図8b
に示したバイトアドレスにおいてDRAM内に格納され
る。「ロードダブル(load double)」(L
DDA)命令が実行されると、64ビットワード内の4
個の画素がDRAMメモリからフェッチされる。本実施
例においては、二つのモードの画素アクセスが許容され
ている。「クワッドピクセル(quad pixe
l)」又は「スキャン(scan)」モードの何れが選
択されているかに依存して、これら4個の画素は、クワ
ッドピクセル(2×2)か又は同一の水平方向のスキャ
ンライン(「スキャンオーダー(scan orde
r)」)内の4個の画素の何れかに対応している。この
様なアクセスを可能とするために、クワッドピクセル即
ちクワッド画素は以下の規則に従ってメモリデータバス
208bを介してDRAM内に格納されねばならない。
4のアドレス発生ユニット304aは、プロセサ201
から、バイトアドレスE[23:0]を受取る。上述し
た表1に示した如く、メモリアドレスバス208bのビ
ット(maddr[9:1],maddr0H,mad
dr0L)は、行アドレスを与えるための(E[1
1],E[20:16],E[14:12],E[1
5],E[15])及び列アドレスを与えるための(E
[10],E[11:17],E[6:3],E
[6],E[6])により与えられる。画素は、図8b
に示したバイトアドレスにおいてDRAM内に格納され
る。「ロードダブル(load double)」(L
DDA)命令が実行されると、64ビットワード内の4
個の画素がDRAMメモリからフェッチされる。本実施
例においては、二つのモードの画素アクセスが許容され
ている。「クワッドピクセル(quad pixe
l)」又は「スキャン(scan)」モードの何れが選
択されているかに依存して、これら4個の画素は、クワ
ッドピクセル(2×2)か又は同一の水平方向のスキャ
ンライン(「スキャンオーダー(scan orde
r)」)内の4個の画素の何れかに対応している。この
様なアクセスを可能とするために、クワッドピクセル即
ちクワッド画素は以下の規則に従ってメモリデータバス
208bを介してDRAM内に格納されねばならない。
【0048】 address(E[6:3]) mdata[63:32] mdata[31:0 ]0XXX UT VT YT YT UB VB YB YB 1XXX UB VB YB YB UT VT YT YT 尚、「T」はクワッド画素のトップの2個の画素に対応
するデータを示しており、且つ「B」は、該クワッド画
素の底部の2個の画素に対応するデータを示している。
ビットE[6]のパリティに従って交互にトップの画素
とボトム(底部)の画素を格納すること(即ち、8個の
列アドレス毎にトップとボトムの画素の格納順序を変更
すること)は、四つのトップ又は四つのボトムの画素
(即ち、同一の水平ライン上の4個の画素)の何れかを
同時的にフェッチすることを可能とする。スキャンオー
ダー即ち走査順番において画素をフェッチするこの能力
は、出力するために画素をビデオメモリ318へ供給す
る場合に能率的である。一方、クワッド画素の順番で画
素をフェッチする能力は、運動補償における再サンプリ
ングステップを容易とさせる(以下に説明する)。
するデータを示しており、且つ「B」は、該クワッド画
素の底部の2個の画素に対応するデータを示している。
ビットE[6]のパリティに従って交互にトップの画素
とボトム(底部)の画素を格納すること(即ち、8個の
列アドレス毎にトップとボトムの画素の格納順序を変更
すること)は、四つのトップ又は四つのボトムの画素
(即ち、同一の水平ライン上の4個の画素)の何れかを
同時的にフェッチすることを可能とする。スキャンオー
ダー即ち走査順番において画素をフェッチするこの能力
は、出力するために画素をビデオメモリ318へ供給す
る場合に能率的である。一方、クワッド画素の順番で画
素をフェッチする能力は、運動補償における再サンプリ
ングステップを容易とさせる(以下に説明する)。
【0049】クワッド画素をフェッチするためには、m
addr0H及びmaddr0Lは各々E[6]の値が
与えられ、従ってmdata[63:31]においてフ
ェッチされた高位の32ビットの半分のワードのワード
アドレス(即ち、E[23:3])は、mdata[3
1:0]においてフェッチされた下位32ビットの半分
のワードのワードアドレスと同一である。しかしなが
ら、スキャンモードでフェッチングを行なう場合には、
外部DRAMへワード列アドレスを供給する場合に以下
の規則に従って行なわれる。
addr0H及びmaddr0Lは各々E[6]の値が
与えられ、従ってmdata[63:31]においてフ
ェッチされた高位の32ビットの半分のワードのワード
アドレス(即ち、E[23:3])は、mdata[3
1:0]においてフェッチされた下位32ビットの半分
のワードのワードアドレスと同一である。しかしなが
ら、スキャンモードでフェッチングを行なう場合には、
外部DRAMへワード列アドレスを供給する場合に以下
の規則に従って行なわれる。
【0050】 maddr0H maddr0L 偶数スキャン(i.e.,E[6]=0) 0 1 奇数スキャン(i.e.,E[6]=1) 1 0 mdata[63:32]によってフェッチされた高位
の32ビットの半分のワードに対する列ワードアドレス
が(maddr[9:4],maddr0H,madd
r[3:1])により特定され且つmdata[31:
0]においてフェッチされる下位32ビットの半分のワ
ードに対する列ワードアドレスが(maddr[9:
4],maddr0L,maddr[3:1])により
特定されるということを思い出すと、mdata[6
3:0]の高位32ビット及び低位32ビットの列ワー
ドアドレスは、スキャンモードアクセスの下では8個の
列ワードアドレスだけオフセットされている。各列内に
は8個のクワッド画素が存在しているので、スキャンモ
ードの下でフェッチされた画素は隣接するクワッド画素
である。該画素は、上に特定した如く、E[6]のパリ
ティに従って格納されるので、フェッチされる画素は、
両方とも各クワッド画素のトップの画素であるか又は両
方とも各クワッド画素のボトムの画素の何れかである。
の32ビットの半分のワードに対する列ワードアドレス
が(maddr[9:4],maddr0H,madd
r[3:1])により特定され且つmdata[31:
0]においてフェッチされる下位32ビットの半分のワ
ードに対する列ワードアドレスが(maddr[9:
4],maddr0L,maddr[3:1])により
特定されるということを思い出すと、mdata[6
3:0]の高位32ビット及び低位32ビットの列ワー
ドアドレスは、スキャンモードアクセスの下では8個の
列ワードアドレスだけオフセットされている。各列内に
は8個のクワッド画素が存在しているので、スキャンモ
ードの下でフェッチされた画素は隣接するクワッド画素
である。該画素は、上に特定した如く、E[6]のパリ
ティに従って格納されるので、フェッチされる画素は、
両方とも各クワッド画素のトップの画素であるか又は両
方とも各クワッド画素のボトムの画素の何れかである。
【0051】この実施例においては、DRAMアドレス
のビットE[6]をデコードするために別の論理回路が
設けられている。一つの具体的構成例を図8dに示して
ある。図8dにおいては、信号「スキャン(sca
n)」はスキャンモードの場合論理高状態にあり且つク
ワッド画素モードの場合論理低状態にあり、且つ信号
「ワードオーダー(word order)」は、クワ
ッド画素モードにおいて、トップの画素が、メモリデー
タバスmdata[63:0]の高位の32ビットの半
分のワード(ワードオーダー(word order)
=0)か又は低位の32ビットの半分のワード(ワード
オーダー=1)の何れかにおいて見出だされるかを表わ
す。
のビットE[6]をデコードするために別の論理回路が
設けられている。一つの具体的構成例を図8dに示して
ある。図8dにおいては、信号「スキャン(sca
n)」はスキャンモードの場合論理高状態にあり且つク
ワッド画素モードの場合論理低状態にあり、且つ信号
「ワードオーダー(word order)」は、クワ
ッド画素モードにおいて、トップの画素が、メモリデー
タバスmdata[63:0]の高位の32ビットの半
分のワード(ワードオーダー(word order)
=0)か又は低位の32ビットの半分のワード(ワード
オーダー=1)の何れかにおいて見出だされるかを表わ
す。
【0052】HDTVモード HDTV適用は、図9aに示した如く、図2のビデオ脱
圧縮回路200を4個使用して本発明によりサポートさ
れている。図9aにおいては、4個のビデオ圧縮回路2
00,200a,200dが8個のメモリバンク901
a−901hが設けられている。ビデオ圧縮回路200
a−200dの各々は、存在する場合に、その左側及び
右側の隣にあるものの各々からの1個のメモリバンクに
加えて、2個のメモリバンクと通信を行なう。HDTV
においては、ディスプレイ空間は1920×1080個
の画素である。
圧縮回路200を4個使用して本発明によりサポートさ
れている。図9aにおいては、4個のビデオ圧縮回路2
00,200a,200dが8個のメモリバンク901
a−901hが設けられている。ビデオ圧縮回路200
a−200dの各々は、存在する場合に、その左側及び
右側の隣にあるものの各々からの1個のメモリバンクに
加えて、2個のメモリバンクと通信を行なう。HDTV
においては、ディスプレイ空間は1920×1080個
の画素である。
【0053】本実施例においては、HDTVディスプレ
イ空間は、480×1080個の画素の四つの垂直のセ
クションに分割されており、各セクションは2個のメモ
リバンク内に収容されている。図9bは4個のビデオ脱
圧縮回路200a−200dのうちの一つに対するディ
スプレイ空間920を示している。図9bに示した如
く、これら四つのビデオ脱圧縮回路200a−200d
の各々により得られるディスプレイ空間は960×10
80個の画素からなるディスプレイエリア(区域)であ
り、その中で、中間の480×960個の画素画像エリ
アがビデオ脱圧縮回路自身のメモリバンク921及び9
22内に格納され、且つその中間の480×1080画
素画像エリアの両側における二つの240×480画素
画像エリアはそれぞれ左側及び右側のその隣のメモリバ
ンク923及び924内に格納される。ビデオ圧縮回路
200a及び200d(図9a)の各々は、ディスプレ
イ空間へマップされることのない240×1080画素
画像エリアを有している。なぜならば、ビデオ圧縮回路
200a及び200dの各々は単に一つの隣のものを有
するに過ぎないからである。隣のメモリバンクへのアク
セスは、運動補償が垂直のセクションの境界を超えての
アクセスを必要とする場合にのみ必要である。運動ベク
トルは範囲が制限されているので、同一のメモリバンク
が二つ以上のビデオ圧縮回路によりアクセスされること
から発生する問題は、ビデオ脱圧縮回路200a−20
0dがロックステップで垂直セクションをデコードする
ことを必要とすることにより回避することが可能であ
る。この様な同期は、ビデオ脱圧縮回路200a−20
0dのVSYNCピンを共通結合することにより与える
ことが可能である。
イ空間は、480×1080個の画素の四つの垂直のセ
クションに分割されており、各セクションは2個のメモ
リバンク内に収容されている。図9bは4個のビデオ脱
圧縮回路200a−200dのうちの一つに対するディ
スプレイ空間920を示している。図9bに示した如
く、これら四つのビデオ脱圧縮回路200a−200d
の各々により得られるディスプレイ空間は960×10
80個の画素からなるディスプレイエリア(区域)であ
り、その中で、中間の480×960個の画素画像エリ
アがビデオ脱圧縮回路自身のメモリバンク921及び9
22内に格納され、且つその中間の480×1080画
素画像エリアの両側における二つの240×480画素
画像エリアはそれぞれ左側及び右側のその隣のメモリバ
ンク923及び924内に格納される。ビデオ圧縮回路
200a及び200d(図9a)の各々は、ディスプレ
イ空間へマップされることのない240×1080画素
画像エリアを有している。なぜならば、ビデオ圧縮回路
200a及び200dの各々は単に一つの隣のものを有
するに過ぎないからである。隣のメモリバンクへのアク
セスは、運動補償が垂直のセクションの境界を超えての
アクセスを必要とする場合にのみ必要である。運動ベク
トルは範囲が制限されているので、同一のメモリバンク
が二つ以上のビデオ圧縮回路によりアクセスされること
から発生する問題は、ビデオ脱圧縮回路200a−20
0dがロックステップで垂直セクションをデコードする
ことを必要とすることにより回避することが可能であ
る。この様な同期は、ビデオ脱圧縮回路200a−20
0dのVSYNCピンを共通結合することにより与える
ことが可能である。
【0054】更に、基準マクロブロックは18×18画
素画像エリアをフェッチする必要があり、且つ4個の8
×8クワッド画素マクロブロックは、典型的に、DRA
Mメモリの一つのページ内に格納されるので、基準マク
ロブロックの位置に依存して、マクロブロックフェッチ
は1−4DRAMページ境界を横断する場合がある。図
9dは二つの基準ブロック981及び986に対するD
RAMページ境界クロッシング即ち横断又は交差の数を
示している。図9dにおいて、基準マクロブロック98
1は二つのDRAMページ990及び991に亘ってい
る。DRAMページ990は、4個の8×8クワッド画
素画像エリア982−985を格納する。この基準ブロ
ック981をフェッチすることは、DRAMページ99
0及び991の間のDRAMページ境界をクロス即ち横
断又は交差することを必要とする。しかしながら、基準
ブロック986は4個のDRAMページ990,99
1,992,993に亘っており、基準マクロブロック
986全体のフェッチ動作を完了するためには四つのD
RAMページ境界のクロッシング即ち横断乃至は交差を
必要としている。従って、本発明によれば、各ビデオ脱
圧縮回路200a−200dの間でのロックステップ関
係を維持するために、各ページモードアクセスは、単に
8×8クワッド画素画像エリアのフェッチングに制限さ
れており、従って、クロス即ち横断又は交差されること
を必要とされるDRAMページ境界の数に拘らず、フェ
ッチされた各基準ブロックに対して四つのページモード
アクセスサイクルが必要とされる。この様に、各ビデオ
脱圧縮回路200a−200dにより処理される画素の
数は同一であるので、ロックステップ関係は常に維持さ
れる。
素画像エリアをフェッチする必要があり、且つ4個の8
×8クワッド画素マクロブロックは、典型的に、DRA
Mメモリの一つのページ内に格納されるので、基準マク
ロブロックの位置に依存して、マクロブロックフェッチ
は1−4DRAMページ境界を横断する場合がある。図
9dは二つの基準ブロック981及び986に対するD
RAMページ境界クロッシング即ち横断又は交差の数を
示している。図9dにおいて、基準マクロブロック98
1は二つのDRAMページ990及び991に亘ってい
る。DRAMページ990は、4個の8×8クワッド画
素画像エリア982−985を格納する。この基準ブロ
ック981をフェッチすることは、DRAMページ99
0及び991の間のDRAMページ境界をクロス即ち横
断又は交差することを必要とする。しかしながら、基準
ブロック986は4個のDRAMページ990,99
1,992,993に亘っており、基準マクロブロック
986全体のフェッチ動作を完了するためには四つのD
RAMページ境界のクロッシング即ち横断乃至は交差を
必要としている。従って、本発明によれば、各ビデオ脱
圧縮回路200a−200dの間でのロックステップ関
係を維持するために、各ページモードアクセスは、単に
8×8クワッド画素画像エリアのフェッチングに制限さ
れており、従って、クロス即ち横断又は交差されること
を必要とされるDRAMページ境界の数に拘らず、フェ
ッチされた各基準ブロックに対して四つのページモード
アクセスサイクルが必要とされる。この様に、各ビデオ
脱圧縮回路200a−200dにより処理される画素の
数は同一であるので、ロックステップ関係は常に維持さ
れる。
【0055】HDTVモードの下においては、DRAM
バイトアドレスの直線的な物理的アドレス空間上へのマ
ッピングは、上述した非HDTVモードの下でのマッピ
ングとは異なっている。各垂直セクションの寸法はx方
向において2の指数ではなく且つ各セクションは最大で
3個のビデオ圧縮回路により別々に処理されるので、例
えば非HDTVモードにおいて使用されているような
(DRAMバイトアドレスE[23:0]のビットパタ
ーンを再配置することにより得られる物理的アドレス)
直線的な物理的アドレス空間へバイトアドレス空間をマ
ッピングすることは非効率的なものとなる。例えば、こ
の様なディスプレイ空間の割当ては、ビデオ圧縮回路2
00a−200cの各々が256画素×1080画素の
画像エリアを処理することとなり、且つビデオ圧縮回路
200dが192×1080画素画像エリアを処理する
こととなる。ビデオ脱圧縮回路200a−200dがロ
ックステップでデコードするという要件と結合されて、
HDTVモードの下での脱圧縮の速度は劣化される。な
ぜならば、ロードの分布が不均一であるので、待機サイ
クルがしばしば発生するからである。従って、各ビデオ
圧縮回路200上でのロード即ち負荷、従ってそれと関
連するメモリバンクもバランスされているようにマッピ
ングされることが所望される。
バイトアドレスの直線的な物理的アドレス空間上へのマ
ッピングは、上述した非HDTVモードの下でのマッピ
ングとは異なっている。各垂直セクションの寸法はx方
向において2の指数ではなく且つ各セクションは最大で
3個のビデオ圧縮回路により別々に処理されるので、例
えば非HDTVモードにおいて使用されているような
(DRAMバイトアドレスE[23:0]のビットパタ
ーンを再配置することにより得られる物理的アドレス)
直線的な物理的アドレス空間へバイトアドレス空間をマ
ッピングすることは非効率的なものとなる。例えば、こ
の様なディスプレイ空間の割当ては、ビデオ圧縮回路2
00a−200cの各々が256画素×1080画素の
画像エリアを処理することとなり、且つビデオ圧縮回路
200dが192×1080画素画像エリアを処理する
こととなる。ビデオ脱圧縮回路200a−200dがロ
ックステップでデコードするという要件と結合されて、
HDTVモードの下での脱圧縮の速度は劣化される。な
ぜならば、ロードの分布が不均一であるので、待機サイ
クルがしばしば発生するからである。従って、各ビデオ
圧縮回路200上でのロード即ち負荷、従ってそれと関
連するメモリバンクもバランスされているようにマッピ
ングされることが所望される。
【0056】本発明によれば、DRAMバイトアドレス
空間から物理的アドレス空間へのマッピング方法は、ビ
デオ脱圧縮回路200a−200dの間でディスプレイ
空間を均等に分割させるものである。更に、本発明のマ
ッピングは、直線的な物理的アドレス空間内に、ディス
プレイ空間内の画素に対応することのない位置をほとん
ど残すことはない。本発明は、幾分かの複雑性が加味さ
れているが、直線的な物理的アドレス空間内のこの様な
ギャップを最小としている。しかしながら、メモリが決
してアクセスされることのない位置を持つことに起因す
る浪費を除去することが望ましい。図9cはこのDRA
Mバイトアドレス空間E[23:0]の物理的メモリア
ドレス空間へのマッピングを示したブロック図である。
空間から物理的アドレス空間へのマッピング方法は、ビ
デオ脱圧縮回路200a−200dの間でディスプレイ
空間を均等に分割させるものである。更に、本発明のマ
ッピングは、直線的な物理的アドレス空間内に、ディス
プレイ空間内の画素に対応することのない位置をほとん
ど残すことはない。本発明は、幾分かの複雑性が加味さ
れているが、直線的な物理的アドレス空間内のこの様な
ギャップを最小としている。しかしながら、メモリが決
してアクセスされることのない位置を持つことに起因す
る浪費を除去することが望ましい。図9cはこのDRA
Mバイトアドレス空間E[23:0]の物理的メモリア
ドレス空間へのマッピングを示したブロック図である。
【0057】本発明の構成によれば、DRAMバイトア
ドレスE[23:0]のビットE[23:3]が、直線
的な物理的アドレス空間の行及び列アドレス内にマッピ
ングされる。ディスプレイアドレス空間(X,Yベクト
ル)も参考のために図9c内に与えてある。直線的な物
理的アドレス空間は、バンクb[1:0]、行row
[9:0]及び列col[9:0]アドレスによって特
定されるものと仮定する。非HDTVモードにおける如
く、選択されたDRAMタイプのタイプに依存して、こ
れらのビットの全てが接続されるわけではない。マクロ
ブロック内のクワッド画素のアドレスに対応するビット
E[8:3]は、列アドレスビットcol[5:0]へ
直接的に与えられる。Xベクトルにより特定される「ス
トリップ(strip)」(「ストリップ(stri
p)」は、ディスプレイ空間の水平方向範囲に亘っての
1個のマクロブロック高画像エリアである)内のマクロ
ブロックを特定するビットE[14:9]は、ビデオ脱
圧縮回路によりアクセス可能な4個のメモリバンクにお
ける60個のマクロブロックのうちの一つの中にマッピ
ングされる。このマッピングは、ブロック931によっ
て示されている割算器(分割器)により実施され、E
[14:9]の値を15で割算し、従ってその余りは、
マルチプレクサ932を介して、行アドレスビットro
w[3:0]として供給され、且つその商はバンクアド
レスビットb[1:0]として供給される。この方法
は、同一のメモリバンク内の同一の行アドレスにマクロ
ブロックの要素を格納することを可能とし、その際に該
マクロブロックの要素へのページモードアクセスを可能
としている。更に、割算の結果はDRAMアドレスの行
及びバンク部分にのみ影響を与え、列アドレスに影響を
与えることはない。その結果、その割算を行なうために
必要とされるエキストラな計算時間は、高速のページモ
ードアクセスに影響を与えるような臨界的なものではな
い。
ドレスE[23:0]のビットE[23:3]が、直線
的な物理的アドレス空間の行及び列アドレス内にマッピ
ングされる。ディスプレイアドレス空間(X,Yベクト
ル)も参考のために図9c内に与えてある。直線的な物
理的アドレス空間は、バンクb[1:0]、行row
[9:0]及び列col[9:0]アドレスによって特
定されるものと仮定する。非HDTVモードにおける如
く、選択されたDRAMタイプのタイプに依存して、こ
れらのビットの全てが接続されるわけではない。マクロ
ブロック内のクワッド画素のアドレスに対応するビット
E[8:3]は、列アドレスビットcol[5:0]へ
直接的に与えられる。Xベクトルにより特定される「ス
トリップ(strip)」(「ストリップ(stri
p)」は、ディスプレイ空間の水平方向範囲に亘っての
1個のマクロブロック高画像エリアである)内のマクロ
ブロックを特定するビットE[14:9]は、ビデオ脱
圧縮回路によりアクセス可能な4個のメモリバンクにお
ける60個のマクロブロックのうちの一つの中にマッピ
ングされる。このマッピングは、ブロック931によっ
て示されている割算器(分割器)により実施され、E
[14:9]の値を15で割算し、従ってその余りは、
マルチプレクサ932を介して、行アドレスビットro
w[3:0]として供給され、且つその商はバンクアド
レスビットb[1:0]として供給される。この方法
は、同一のメモリバンク内の同一の行アドレスにマクロ
ブロックの要素を格納することを可能とし、その際に該
マクロブロックの要素へのページモードアクセスを可能
としている。更に、割算の結果はDRAMアドレスの行
及びバンク部分にのみ影響を与え、列アドレスに影響を
与えることはない。その結果、その割算を行なうために
必要とされるエキストラな計算時間は、高速のページモ
ードアクセスに影響を与えるような臨界的なものではな
い。
【0058】上述した割算方法は0と14との間の余り
を発生するので、ビットrow[3:0]内の15(′
FH)の値を発生させることは不可能であり、従って物
理的アドレス空間内にギャップを残存させる。本発明に
よれば、この様なギャップは高位のYベクトルに対応す
るマクロブロックストリップをそれらの中にマッピング
することにより充填される。ディスプレイ空間のトップ
即ち上部からカウントして1024本のライン(Y≦1
024)において、ビットE[23]の値はゼロであ
り、ビットE[22:15]は、それぞれ、マルチプレ
クサ933−936を介して、ビット(row[9:
8]、col[7:6]、row[7:4])内の値と
してそれぞれ供給される。しかしながら、ビットE[2
3]が1に等しく且つE[19]=0であり、1024
と1088との間のYベクトルに対応しているので、値
15はマルチプレクサ932により強制的にrow
[4:0]内に供給され、且つ割算器931により供給
される余りroutは行アドレスrow[7:4]とし
てマルチプレクサ933及び935により供給され、且
つビットE[18:15]は、マルチプレクサ934及
び936を介して、それぞれ、ビット(row[9:
8]、col[7:6])として供給される。従って、
ビットE[22:19]は、物理的アドレス空間のro
w[3:0]内の値15により表わされるギャップ内に
マッピングされる。
を発生するので、ビットrow[3:0]内の15(′
FH)の値を発生させることは不可能であり、従って物
理的アドレス空間内にギャップを残存させる。本発明に
よれば、この様なギャップは高位のYベクトルに対応す
るマクロブロックストリップをそれらの中にマッピング
することにより充填される。ディスプレイ空間のトップ
即ち上部からカウントして1024本のライン(Y≦1
024)において、ビットE[23]の値はゼロであ
り、ビットE[22:15]は、それぞれ、マルチプレ
クサ933−936を介して、ビット(row[9:
8]、col[7:6]、row[7:4])内の値と
してそれぞれ供給される。しかしながら、ビットE[2
3]が1に等しく且つE[19]=0であり、1024
と1088との間のYベクトルに対応しているので、値
15はマルチプレクサ932により強制的にrow
[4:0]内に供給され、且つ割算器931により供給
される余りroutは行アドレスrow[7:4]とし
てマルチプレクサ933及び935により供給され、且
つビットE[18:15]は、マルチプレクサ934及
び936を介して、それぞれ、ビット(row[9:
8]、col[7:6])として供給される。従って、
ビットE[22:19]は、物理的アドレス空間のro
w[3:0]内の値15により表わされるギャップ内に
マッピングされる。
【0059】このアプローチは、ビットE[23]及び
E[19]が両方とも1である場合に、更に1ステップ
取られる。その場合には、15の値がマルチプレクサ9
32及び935により両方の行アドレスビットrow
[7:4]及びrow[3:0]内に供給され、且つD
RAMバイトアドレスビットE[18:15]の値が、
マルチプレクサ934及び936を介して、それぞれ、
ビット(row[9:8]及びcol[7:6])へ供
給され、これらのDRAMバイトアドレスを、物理的ア
ドレスのrow[7:0]内の値′FFHに対応するギ
ャップ内へマッピングする。
E[19]が両方とも1である場合に、更に1ステップ
取られる。その場合には、15の値がマルチプレクサ9
32及び935により両方の行アドレスビットrow
[7:4]及びrow[3:0]内に供給され、且つD
RAMバイトアドレスビットE[18:15]の値が、
マルチプレクサ934及び936を介して、それぞれ、
ビット(row[9:8]及びcol[7:6])へ供
給され、これらのDRAMバイトアドレスを、物理的ア
ドレスのrow[7:0]内の値′FFHに対応するギ
ャップ内へマッピングする。
【0060】図9eは、図9cのブロック図に関連して
上述したマッピングの構成を実現するための回路であ
る。図9c及び図9e内の対応する構成には対応する参
照番号が付してある。注意すべきことであるが、マルチ
プレクサ932及び935は、図9eにおいては、OR
ゲートにより実現されている。なぜならば、制御(例え
ば、マルチプレクサ/ORゲート932内のビットE
[23])が1である場合には、所望の出力ビットは全
て1だからである。更に、図9cにより示される概念
は、E[23]、E[19]及びE[18]が全て1で
ある場合の状態に対応して、ORゲート937内におい
て更にもう1ステップ取られる。ORゲート937は、
一行のメモリのさらなる1/16内へのマッピングを与
える。
上述したマッピングの構成を実現するための回路であ
る。図9c及び図9e内の対応する構成には対応する参
照番号が付してある。注意すべきことであるが、マルチ
プレクサ932及び935は、図9eにおいては、OR
ゲートにより実現されている。なぜならば、制御(例え
ば、マルチプレクサ/ORゲート932内のビットE
[23])が1である場合には、所望の出力ビットは全
て1だからである。更に、図9cにより示される概念
は、E[23]、E[19]及びE[18]が全て1で
ある場合の状態に対応して、ORゲート937内におい
て更にもう1ステップ取られる。ORゲート937は、
一行のメモリのさらなる1/16内へのマッピングを与
える。
【0061】図9fは、上述した如く1024における
又はそれを超えた値を持ったYベクトルに対してのE
[23:0]の物理的アドレス空間へのマッピングを影
線を付けた区域で示してある。従って、1920個の画
素×1080個の画素のアドレス空間は、8個のバンク
の256K×64物理的アドレス空間へマッピングされ
る。各プロセサは、960×1080画素を4個のバン
クの256K×64ビットメモリ内へマッピングする。
又はそれを超えた値を持ったYベクトルに対してのE
[23:0]の物理的アドレス空間へのマッピングを影
線を付けた区域で示してある。従って、1920個の画
素×1080個の画素のアドレス空間は、8個のバンク
の256K×64物理的アドレス空間へマッピングされ
る。各プロセサは、960×1080画素を4個のバン
クの256K×64ビットメモリ内へマッピングする。
【0062】デコーダコプロセサ202 図3を参照すると、デコーダ202は、コードメモリ3
05、デコードメモリ306、デコード論理307、ジ
グザグ論理ユニット308、ジグザグメモリ309、量
子化ユニット311、量子化メモリ310を有してい
る。ジグザグ論理ユニット308、ジグザグメモリ30
9、量子化ユニット311、量子化メモリ310は、以
下の2件の米国特許出願のうちの何れかに開示される構
成により実現することが可能である。即ち、(a)「離
散余弦変換及びコーディング技術を使用したビデオデー
タの圧縮及び脱圧縮用システム(System for
Compression and Decompre
ssion of Video Data Using
Discrete Cosine Transfor
m and Coding Technique
s)」、という発明の名称でA. Balkanski
et al.が発明者であり、1990年3月14日
に出願され出願番号が07/492,242号でありシ
ー−キューブマイクロシステムズ社に譲渡されている特
許出願、及び(b)「離散余弦変換及びコーディング技
術を使用したビデオデータの圧縮及び脱圧縮用システム
(Systemfor Compression an
d Decompression of Video
Data Using Discrete Cosin
e Transform and Coding Te
chniques)」という発明の名称で、A. Ba
lkanski et al.が発明者であり、199
0年8月23日に出願された出願番号が07/572,
198号でありシー−キューブマイクロシステムズ社に
譲渡されている米国特許出願である。
05、デコードメモリ306、デコード論理307、ジ
グザグ論理ユニット308、ジグザグメモリ309、量
子化ユニット311、量子化メモリ310を有してい
る。ジグザグ論理ユニット308、ジグザグメモリ30
9、量子化ユニット311、量子化メモリ310は、以
下の2件の米国特許出願のうちの何れかに開示される構
成により実現することが可能である。即ち、(a)「離
散余弦変換及びコーディング技術を使用したビデオデー
タの圧縮及び脱圧縮用システム(System for
Compression and Decompre
ssion of Video Data Using
Discrete Cosine Transfor
m and Coding Technique
s)」、という発明の名称でA. Balkanski
et al.が発明者であり、1990年3月14日
に出願され出願番号が07/492,242号でありシ
ー−キューブマイクロシステムズ社に譲渡されている特
許出願、及び(b)「離散余弦変換及びコーディング技
術を使用したビデオデータの圧縮及び脱圧縮用システム
(Systemfor Compression an
d Decompression of Video
Data Using Discrete Cosin
e Transform and Coding Te
chniques)」という発明の名称で、A. Ba
lkanski et al.が発明者であり、199
0年8月23日に出願された出願番号が07/572,
198号でありシー−キューブマイクロシステムズ社に
譲渡されている米国特許出願である。
【0063】コードメモリ305及びデコーダメモリ3
06は、外部DRAM内にオーバーフローするFIFO
メモリを構成している。コード化されたデータがコード
バス207上に到着すると、それらはFIFO内に押込
められる。コードメモリ305内のコード化データは、
一度に64バイトずつ転送され、インタラプト機構を使
用してプロセサ201により援助される。該コード化デ
ータは、デコーディングのために、デコーダ論理ユニッ
ト307へ供給される。デコーダ論理ユニット307
は、それが次のコード化データを受取る準備がされてい
る場合に、即ちレディである場合に、「ポップ(po
p)」要求を発生する。本実施例の一つのモードにおい
ては、コードメモリ305及びデコーダメモリ306が
一体的に接続されている。このモードにおいては、FI
FOメモリのどの部分も外部DRAM内に存在すること
はない。低レベルコード化データストリームは可変長コ
ードから構成されている。
06は、外部DRAM内にオーバーフローするFIFO
メモリを構成している。コード化されたデータがコード
バス207上に到着すると、それらはFIFO内に押込
められる。コードメモリ305内のコード化データは、
一度に64バイトずつ転送され、インタラプト機構を使
用してプロセサ201により援助される。該コード化デ
ータは、デコーディングのために、デコーダ論理ユニッ
ト307へ供給される。デコーダ論理ユニット307
は、それが次のコード化データを受取る準備がされてい
る場合に、即ちレディである場合に、「ポップ(po
p)」要求を発生する。本実施例の一つのモードにおい
ては、コードメモリ305及びデコーダメモリ306が
一体的に接続されている。このモードにおいては、FI
FOメモリのどの部分も外部DRAM内に存在すること
はない。低レベルコード化データストリームは可変長コ
ードから構成されている。
【0064】デコード論理ユニット 図10aは、デコーダ論理ユニット307の構成を示し
た概略図である。図10aに示した如く、コード化デー
タストリームはレジスタ1002bへ供給され、それ
は、マルチプレクサ1001の出力データか又はレジス
タ1002b自身の出力データの何れかを入力データと
して選択的に受取る。マルチプレクサ1001は、二つ
の32ビットバス、即ちグローバルバス205及びデコ
ードメモリ306の出力バスの間で選択を行なう。レジ
スタ1002bの出力データは、バレルシフタ1003
の低位32ビット入力バスのみならず、レジスタ100
2aへ供給される。レジスタ1002aは、入力データ
として、バレルシフタ1003の高位32ビット入力デ
ータとして供給される、レジスタ1002a自身の出力
データか又はレジスタ1002bの出力データの何れか
を受取る。レジスタ1002b及び1002aは、それ
ぞれ、バレルシフタ1003内へデータを入力するため
の「フロント」及び「バック」レジスタを形成してい
る。
た概略図である。図10aに示した如く、コード化デー
タストリームはレジスタ1002bへ供給され、それ
は、マルチプレクサ1001の出力データか又はレジス
タ1002b自身の出力データの何れかを入力データと
して選択的に受取る。マルチプレクサ1001は、二つ
の32ビットバス、即ちグローバルバス205及びデコ
ードメモリ306の出力バスの間で選択を行なう。レジ
スタ1002bの出力データは、バレルシフタ1003
の低位32ビット入力バスのみならず、レジスタ100
2aへ供給される。レジスタ1002aは、入力データ
として、バレルシフタ1003の高位32ビット入力デ
ータとして供給される、レジスタ1002a自身の出力
データか又はレジスタ1002bの出力データの何れか
を受取る。レジスタ1002b及び1002aは、それ
ぞれ、バレルシフタ1003内へデータを入力するため
の「フロント」及び「バック」レジスタを形成してい
る。
【0065】有限ステートマシン1017により表わさ
れるコード化データストリームのパーサ(pease
r)は、デコーダ論理ユニット307へ制御を与えるた
めにMPEGスタンダードに従って構成されている。デ
コーダ論理ユニット307は、マクロブロックレベルの
可変長コードをデコードする。プロセサ201内のファ
ームウエアは高レベルコード化データ(例えば、ピクチ
ャーレベル)をデコードする。図10bは、マクロブロ
ックレベル可変コードのパーサを示したシンタックスス
テートマシンである。従って、例えばフレーム距離及び
フレームタイプなどのような高レベルからのデータはプ
ロセサ201からデコーダ307への入力として供給さ
れる。図10aに示した如く、以下のデコードテーブル
ユニットにより七つのタイプの可変コードがデコーダ論
理ユニット307においてデコードされる。即ち、該デ
コードテーブルユニットとは、mba(マクロブロック
アドレス)ユニット1006、mtype(マクロブロ
ックタイプ)ユニット1007、mv(運動ベクトルV
成分)デコードユニット1008、mr(運動ベクトル
r成分)デコードユニット1009、cbp(コード化
ブロックパターン)デコードユニット1011、DCデ
コードユニット1010、ACデコードユニット101
2である。最後の二つのデコードユニット(即ち、10
10及び1012)は、ブロックレベルデータ、即ちD
CT係数をデコードする。各デコードテーブルユニット
は、バレルシフタ1003の13ビット出力バスd_m
bを検査し、且つデコードされた可変コードの値及び長
さを供給する。cbpユニット1011及びACデコー
ドユニット1012内のテーブルの寸法はその他のデコ
ードテーブルユニット内のテーブルよりも大きいので、
これらの二つのテーブルデコードユニット1011及び
1012の各々は、2ステップデコードプロセスの最初
のステップとして、6ビットリードオンリーメモリアド
レスをリードオンリーメモリcbpROM1013及び
ACROM1014のそれぞれへ供給する。cbpRO
M1013は、バレルシフタ1003の13ビット出力
バスd_mbからデコードされたcbp可変長コードの
長さ及び所要のcbp値を出力する。同様に、ACRO
M1014の出力データは、ACレベルユニット101
6内のラン長及びACレベル値を派生するために使用さ
れる。DC_level信号もAC_levelユニット
1016へ供給されて、DC_level及びAC_le
velが出力に対して同一のデータストリーム内で多重
化することを可能としている。図10a内においてはA
Cデコードユニット1012の外側に示されているが、
以下の説明においてACデコードユニットに言及する場
合には、ACROM1014及びACデコードユニット
1016は、ACデコードユニット1012内に設けら
れているものと考える。同様に、cbpユニット101
1はcbpROM1013を有している。
れるコード化データストリームのパーサ(pease
r)は、デコーダ論理ユニット307へ制御を与えるた
めにMPEGスタンダードに従って構成されている。デ
コーダ論理ユニット307は、マクロブロックレベルの
可変長コードをデコードする。プロセサ201内のファ
ームウエアは高レベルコード化データ(例えば、ピクチ
ャーレベル)をデコードする。図10bは、マクロブロ
ックレベル可変コードのパーサを示したシンタックスス
テートマシンである。従って、例えばフレーム距離及び
フレームタイプなどのような高レベルからのデータはプ
ロセサ201からデコーダ307への入力として供給さ
れる。図10aに示した如く、以下のデコードテーブル
ユニットにより七つのタイプの可変コードがデコーダ論
理ユニット307においてデコードされる。即ち、該デ
コードテーブルユニットとは、mba(マクロブロック
アドレス)ユニット1006、mtype(マクロブロ
ックタイプ)ユニット1007、mv(運動ベクトルV
成分)デコードユニット1008、mr(運動ベクトル
r成分)デコードユニット1009、cbp(コード化
ブロックパターン)デコードユニット1011、DCデ
コードユニット1010、ACデコードユニット101
2である。最後の二つのデコードユニット(即ち、10
10及び1012)は、ブロックレベルデータ、即ちD
CT係数をデコードする。各デコードテーブルユニット
は、バレルシフタ1003の13ビット出力バスd_m
bを検査し、且つデコードされた可変コードの値及び長
さを供給する。cbpユニット1011及びACデコー
ドユニット1012内のテーブルの寸法はその他のデコ
ードテーブルユニット内のテーブルよりも大きいので、
これらの二つのテーブルデコードユニット1011及び
1012の各々は、2ステップデコードプロセスの最初
のステップとして、6ビットリードオンリーメモリアド
レスをリードオンリーメモリcbpROM1013及び
ACROM1014のそれぞれへ供給する。cbpRO
M1013は、バレルシフタ1003の13ビット出力
バスd_mbからデコードされたcbp可変長コードの
長さ及び所要のcbp値を出力する。同様に、ACRO
M1014の出力データは、ACレベルユニット101
6内のラン長及びACレベル値を派生するために使用さ
れる。DC_level信号もAC_levelユニット
1016へ供給されて、DC_level及びAC_le
velが出力に対して同一のデータストリーム内で多重
化することを可能としている。図10a内においてはA
Cデコードユニット1012の外側に示されているが、
以下の説明においてACデコードユニットに言及する場
合には、ACROM1014及びACデコードユニット
1016は、ACデコードユニット1012内に設けら
れているものと考える。同様に、cbpユニット101
1はcbpROM1013を有している。
【0066】有限ステートマシン1017は、シンタッ
クスステート(構文状態)を追従し且つマルチプレクサ
ユニット1018へ制御信号を供給して、デコードテー
ブルユニット1006−1012の出力データの中から
選択し且つデコードされた可変長コードの長さ及び出力
データの一つを適宜の宛て先へ転送する。例えば、DC
_decodeユニット1010は、DC値の大きさ及
び符号を表わす値を供給する。これらの符号及び値は、
次いで、DC_levelユニット1004内において
使用されて、可変長コードに従ってDC_level差
を抽出する。デコードされた可変長コードの長さはアキ
ュムレータ1022へ供給され、該アキュムレータはフ
ロント(前方)及びバック(後方)レジスタ1002a
及び1002b内のデコードされたビットの数を追従す
る。デコードメモリ306から次の32ビットデータを
獲得し且つ必要な場合にレジスタ1002bからの32
ビットデータをレジスタ1002aへ転送するためにポ
ップ要求が発生される。
クスステート(構文状態)を追従し且つマルチプレクサ
ユニット1018へ制御信号を供給して、デコードテー
ブルユニット1006−1012の出力データの中から
選択し且つデコードされた可変長コードの長さ及び出力
データの一つを適宜の宛て先へ転送する。例えば、DC
_decodeユニット1010は、DC値の大きさ及
び符号を表わす値を供給する。これらの符号及び値は、
次いで、DC_levelユニット1004内において
使用されて、可変長コードに従ってDC_level差
を抽出する。デコードされた可変長コードの長さはアキ
ュムレータ1022へ供給され、該アキュムレータはフ
ロント(前方)及びバック(後方)レジスタ1002a
及び1002b内のデコードされたビットの数を追従す
る。デコードメモリ306から次の32ビットデータを
獲得し且つ必要な場合にレジスタ1002bからの32
ビットデータをレジスタ1002aへ転送するためにポ
ップ要求が発生される。
【0067】変換係数がコード化されるブロックを表わ
すデコードされたcbp値は、マクロブロックの残部を
デコードする場合のシーケンス動作のために使用され
る。このシーケンス動作は、block_count/
cbpユニット1015により与えられる。「coef
f−count(係数−カウント)」ユニット1019
は、デコードされたブロックデータストリーム内の63
個のAC係数及び1個のDC係数のシーケンスをカウン
トするために与えられる。従って、デコーダコプロセサ
202は、IDCTユニット203にとって適した形態
でビットストリームを供給する。アンパッカ(unpa
cker)ユニット1026は、ラン長をゼロのストリ
ングに拡張させる。
すデコードされたcbp値は、マクロブロックの残部を
デコードする場合のシーケンス動作のために使用され
る。このシーケンス動作は、block_count/
cbpユニット1015により与えられる。「coef
f−count(係数−カウント)」ユニット1019
は、デコードされたブロックデータストリーム内の63
個のAC係数及び1個のDC係数のシーケンスをカウン
トするために与えられる。従って、デコーダコプロセサ
202は、IDCTユニット203にとって適した形態
でビットストリームを供給する。アンパッカ(unpa
cker)ユニット1026は、ラン長をゼロのストリ
ングに拡張させる。
【0068】各運動ベクトルの「V」及び「r」成分
は、mv及びmrユニット1008及び1009により
デコードされ、且つ以下に説明するmv処理ユニット1
020へ供給される。mv処理ユニット1020は、運
動補償コプロセサ204において使用される差動運動ベ
クトルフォーマットで運動ベクトルを供給する。
は、mv及びmrユニット1008及び1009により
デコードされ、且つ以下に説明するmv処理ユニット1
020へ供給される。mv処理ユニット1020は、運
動補償コプロセサ204において使用される差動運動ベ
クトルフォーマットで運動ベクトルを供給する。
【0069】図10cは、本実施例における運動ベクト
ルのデータ表示方法を示している。図10cに示した如
く、運動ベクトルは、(D[11:6],D[28:2
7])により与えられる8ビット水平成分X[7:
0]、画像データがインターレースされている場合に
(D[31:29],D[5:4],D[26:2
4])により与えられ且つ画像データが非インターレー
ス型である場合には(D[31:29],D[5:
3],D[25:24])により与えられる8ビット垂
直成分Y[7:0]を有する32ビットデータワードD
[31:0]内に格納される。D[3]は、インターレ
ースのフィールドを表わすパリティビットである。D
[0]は有効運動ベクトルを表わす。
ルのデータ表示方法を示している。図10cに示した如
く、運動ベクトルは、(D[11:6],D[28:2
7])により与えられる8ビット水平成分X[7:
0]、画像データがインターレースされている場合に
(D[31:29],D[5:4],D[26:2
4])により与えられ且つ画像データが非インターレー
ス型である場合には(D[31:29],D[5:
3],D[25:24])により与えられる8ビット垂
直成分Y[7:0]を有する32ビットデータワードD
[31:0]内に格納される。D[3]は、インターレ
ースのフィールドを表わすパリティビットである。D
[0]は有効運動ベクトルを表わす。
【0070】モーションベクトル即ち運動ベクトルは一
つのグループのマクロブロック内で異なってコード化さ
れており、全ての前方又は後方運動ベクトルは、同一の
タイプの前の運動ベクトルと相対的にコード化されてい
る。各運動ベクトルは、−16fと15fとの間の範囲
を有しており、尚fは「フレーム距離」であり、それは
MPEGシンタックスに従って画像グループのヘッダ内
に設けられている。運動ベクトルは二つの部分でコード
化されており、即ちV及びr成分(以下に説明する)
は、それぞれ、mvデコードユニット1008及びmr
デコードユニット1009によりデコードされる。デコ
ードされた運動ベクトルは次式に従って再生される。
つのグループのマクロブロック内で異なってコード化さ
れており、全ての前方又は後方運動ベクトルは、同一の
タイプの前の運動ベクトルと相対的にコード化されてい
る。各運動ベクトルは、−16fと15fとの間の範囲
を有しており、尚fは「フレーム距離」であり、それは
MPEGシンタックスに従って画像グループのヘッダ内
に設けられている。運動ベクトルは二つの部分でコード
化されており、即ちV及びr成分(以下に説明する)
は、それぞれ、mvデコードユニット1008及びmr
デコードユニット1009によりデコードされる。デコ
ードされた運動ベクトルは次式に従って再生される。
【0071】 m=p+s*[f*(V−1)+1+r] 尚、s:運動ベクトルの符号、f:フレーム距離、p:
前の運動ベクトル、V及びr:運動ベクトルの二つのコ
ード化された成分、であるが、m<−16f又はm>1
5fの場合には、 m=p+s*[f*(V−1)+1+r]+s*(31f+1) である。
前の運動ベクトル、V及びr:運動ベクトルの二つのコ
ード化された成分、であるが、m<−16f又はm>1
5fの場合には、 m=p+s*[f*(V−1)+1+r]+s*(31f+1) である。
【0072】図10dはデコードされたV及びr成分か
ら運動ベクトルを再生するための、mv処理ユニット1
020内に設けられている回路1050の概略図であ
る。図10dに示した如く、3ビット値として与えられ
るフレーム距離fは、mvデコードユニット1008か
らの4ビットのデコードされた値(V−1)により乗算
器1051内において乗算される。この実施例において
は、使用されるフレーム距離fは1と8との間である。
フレーム距離fとV成分との乗算における8ビットの結
果は、加算器1052により、mrデコードユニット1
009からの3ビットのr値へ加算され、加算器105
2のキャリーインビットがセットされる。次いで、加算
器1052におけるこの加算の8ビットの結果が、運動
ベクトルの符号(mvデコードユニット1008により
与えられる)が正であるか又は負であるかに従って、加
算器1053内の同一のタイプの前の運動ベクトルpへ
加算されるか又はそれから減算される。前の運動ベクト
ルpは4×8ビット運動ベクトルレジスタファイル10
61内に格納されている。レジスタ1061は、前の前
方及び後方運動ベクトルのX及びY成分(各8ビット)
を有している。
ら運動ベクトルを再生するための、mv処理ユニット1
020内に設けられている回路1050の概略図であ
る。図10dに示した如く、3ビット値として与えられ
るフレーム距離fは、mvデコードユニット1008か
らの4ビットのデコードされた値(V−1)により乗算
器1051内において乗算される。この実施例において
は、使用されるフレーム距離fは1と8との間である。
フレーム距離fとV成分との乗算における8ビットの結
果は、加算器1052により、mrデコードユニット1
009からの3ビットのr値へ加算され、加算器105
2のキャリーインビットがセットされる。次いで、加算
器1052におけるこの加算の8ビットの結果が、運動
ベクトルの符号(mvデコードユニット1008により
与えられる)が正であるか又は負であるかに従って、加
算器1053内の同一のタイプの前の運動ベクトルpへ
加算されるか又はそれから減算される。前の運動ベクト
ルpは4×8ビット運動ベクトルレジスタファイル10
61内に格納されている。レジスタ1061は、前の前
方及び後方運動ベクトルのX及びY成分(各8ビット)
を有している。
【0073】加算器1053の9ビットの符号付き出力
データtは、tが[−16f,15f]の範囲内にあれ
ば、結果として得られる現在の運動ベクトルである。そ
うでない場合には、調節を行なうことが必要である。t
が所要の範囲内にあるか否かをテストするために、tが
正である場合には、tが加算器1055内において−1
5fへ加算され、そうでない場合には、tが加算器10
55内において−16fへ加算される。tの値が所要の
範囲内でない場合には、tに対する調節は、tの値に8
ビット値31f+1を加算することにより加算器106
0において行なわれる。排他的ORゲート1062の出
力により表わされる如く、所要の条件が発生する場合に
は、ANDゲート1057及び1056により調節がイ
ネーブルされる。次いで、新たな運動ベクトルmが運動
ベクトルレジスタファイル1061内に格納され、最後
の運動ベクトルpを置き換える。
データtは、tが[−16f,15f]の範囲内にあれ
ば、結果として得られる現在の運動ベクトルである。そ
うでない場合には、調節を行なうことが必要である。t
が所要の範囲内にあるか否かをテストするために、tが
正である場合には、tが加算器1055内において−1
5fへ加算され、そうでない場合には、tが加算器10
55内において−16fへ加算される。tの値が所要の
範囲内でない場合には、tに対する調節は、tの値に8
ビット値31f+1を加算することにより加算器106
0において行なわれる。排他的ORゲート1062の出
力により表わされる如く、所要の条件が発生する場合に
は、ANDゲート1057及び1056により調節がイ
ネーブルされる。次いで、新たな運動ベクトルmが運動
ベクトルレジスタファイル1061内に格納され、最後
の運動ベクトルpを置き換える。
【0074】IDCT 上述した如く、量子化器311からの脱量子化したDC
T係数は、行又は列の順番で8×8画素ブロックでID
CTユニット203へ供給され且つ変換メモリ313
(図3)内に格納される。二次元逆離散余弦変換が、最
初に8個の係数の各行に関して8点IDCTを実施し、
次いで8個の係数の各列に関して8点IDCTを実施し
そのブロックに関する二次元IDCTを完了することに
より各8×8画素ブロックに関して実施される。クリッ
ピングの後、IDCT係数は各々9ビットで表わされ、
且つその範囲は−256と255との間である。
T係数は、行又は列の順番で8×8画素ブロックでID
CTユニット203へ供給され且つ変換メモリ313
(図3)内に格納される。二次元逆離散余弦変換が、最
初に8個の係数の各行に関して8点IDCTを実施し、
次いで8個の係数の各列に関して8点IDCTを実施し
そのブロックに関する二次元IDCTを完了することに
より各8×8画素ブロックに関して実施される。クリッ
ピングの後、IDCT係数は各々9ビットで表わされ、
且つその範囲は−256と255との間である。
【0075】前述した米国特許出願第07/492,2
42号及び第07/572,198号は、本実施例のI
DCTコプロセサ203において使用するのに適してお
り且つ実際に使用されているIDCTを実施する構成を
記載している。
42号及び第07/572,198号は、本実施例のI
DCTコプロセサ203において使用するのに適してお
り且つ実際に使用されているIDCTを実施する構成を
記載している。
【0076】運動補償コプロセサ204 運動補償コプロセサ204は、前の内部型又は予測型画
像から構成した基準フレーム及び運動ベクトルを使用し
て予測型及び内挿型画像を再生する。運動補償は、運動
補償タスクにより、プロセサ205内のファームウエア
により指示される。プロセサ205内の運動補償タスク
は五つのフェーズ即ち相で動作する。1番目及び2番目
のフェーズは、それぞれ、外部DRAMから画素メモリ
317内へ前の予測型又は内部型フレーム(前方運動ベ
クトル)内の運動補償型基準マクロブロックの上位部分
及び下位部分をフェッチする。次いで、3番目及び4番
目のフェーズにおいて、次の予測型又は内部型フレーム
(後方運動ベクトル)からの基準マクロブロックの上位
部分及び下位部分が、外部DRAMから画素メモリ31
7内へフェッチされ且つ1番目及び2番目のフェーズに
おいてフェッチされた前のフレームのマクロブロックと
内挿される。最後のフェーズにおいては、現在のマクロ
ブロックがブロックメモリ314からフェッチされ且つ
画素メモリ内のマクロブロックへ加算される。
像から構成した基準フレーム及び運動ベクトルを使用し
て予測型及び内挿型画像を再生する。運動補償は、運動
補償タスクにより、プロセサ205内のファームウエア
により指示される。プロセサ205内の運動補償タスク
は五つのフェーズ即ち相で動作する。1番目及び2番目
のフェーズは、それぞれ、外部DRAMから画素メモリ
317内へ前の予測型又は内部型フレーム(前方運動ベ
クトル)内の運動補償型基準マクロブロックの上位部分
及び下位部分をフェッチする。次いで、3番目及び4番
目のフェーズにおいて、次の予測型又は内部型フレーム
(後方運動ベクトル)からの基準マクロブロックの上位
部分及び下位部分が、外部DRAMから画素メモリ31
7内へフェッチされ且つ1番目及び2番目のフェーズに
おいてフェッチされた前のフレームのマクロブロックと
内挿される。最後のフェーズにおいては、現在のマクロ
ブロックがブロックメモリ314からフェッチされ且つ
画素メモリ内のマクロブロックへ加算される。
【0077】運動補償された基準マクロブロックのアド
レスを計算するために、運動ベクトル内のY成分の高位
4ビット(Y[7:4])は、スクリーンの幅により乗
算されねばならない。この乗算を容易とするために、上
述した如く、プロセサ205の命令セット内の「ジャン
プターゲット(jump target)」フィールド
のデコーディングが、「ブランチネバー(branch
never)」条件(即ち、分岐なし)が特定されて
いる場合に、修正される。次のセクションは、Y運動ベ
クトルの高位4ビットに対してのスクリーンの幅の乗算
を容易とするために構成されたジャンプターゲットフィ
ールドにおける四つの命令MV_LOAD,MV1,M
V2,MV3について説明している。
レスを計算するために、運動ベクトル内のY成分の高位
4ビット(Y[7:4])は、スクリーンの幅により乗
算されねばならない。この乗算を容易とするために、上
述した如く、プロセサ205の命令セット内の「ジャン
プターゲット(jump target)」フィールド
のデコーディングが、「ブランチネバー(branch
never)」条件(即ち、分岐なし)が特定されて
いる場合に、修正される。次のセクションは、Y運動ベ
クトルの高位4ビットに対してのスクリーンの幅の乗算
を容易とするために構成されたジャンプターゲットフィ
ールドにおける四つの命令MV_LOAD,MV1,M
V2,MV3について説明している。
【0078】特別命令 2の補数表示においては、一度に1ビットずつ実行され
る4ビットによる乗算は、四つの加算演算を必要とす
る。しかしながら、1ビット乗算が三進(基数3)演算
で実施される場合には、三つの加算演算のみが必要であ
るに過ぎない。運動ベクトルのY成分の四つのビット
は、−8から7の範囲の値を有しており、3個の三進デ
ジット(各三進デジットは三つの値、即ち−1,0,1
のうちの一つを取ることが可能である)により表わすこ
とが可能である。運動ベクトルの三進デジット乗算は、
以下の式により理解することが可能である(4ビット値
Valが三進デジットD9 ,D3 ,D1 によって表わさ
れており、尚Val=D9 *9+D3 *3+D1 )。
る4ビットによる乗算は、四つの加算演算を必要とす
る。しかしながら、1ビット乗算が三進(基数3)演算
で実施される場合には、三つの加算演算のみが必要であ
るに過ぎない。運動ベクトルのY成分の四つのビット
は、−8から7の範囲の値を有しており、3個の三進デ
ジット(各三進デジットは三つの値、即ち−1,0,1
のうちの一つを取ることが可能である)により表わすこ
とが可能である。運動ベクトルの三進デジット乗算は、
以下の式により理解することが可能である(4ビット値
Valが三進デジットD9 ,D3 ,D1 によって表わさ
れており、尚Val=D9 *9+D3 *3+D1 )。
【0079】 base+width*Val=BASE+WIDTH*D9 *9+ WIDTH*D3 *3+ Width*D1 =Base+(Width*9)*D9 + (Width*3)*D3 + Width*D1 −1,0又は1で乗算することは、それぞれ、その値を
否定するか、ゼロとさせるか又はその値を不変のままと
させるので、それらは実行するのには比較的容易な演算
である。即ち、乗算をオペランドフェッチフェーズで行
なう場合には、即ちフェッチングステップが(widt
h*9),(width*3)又はwidthの予め計
算したオペランドを否定するか、ゼロとさせるか又は不
変のままとするかの何れかである場合には、上述した計
算は三つの加算ステップで実現することが可能である。
従って、上述したアドレス計算は、以下のコードセグメ
ントで実施することが可能である(特に、ADD命令に
より)。
否定するか、ゼロとさせるか又はその値を不変のままと
させるので、それらは実行するのには比較的容易な演算
である。即ち、乗算をオペランドフェッチフェーズで行
なう場合には、即ちフェッチングステップが(widt
h*9),(width*3)又はwidthの予め計
算したオペランドを否定するか、ゼロとさせるか又は不
変のままとするかの何れかである場合には、上述した計
算は三つの加算ステップで実現することが可能である。
従って、上述したアドレス計算は、以下のコードセグメ
ントで実施することが可能である(特に、ADD命令に
より)。
【0080】 <任意の命令> BN MVLOAD /*「ブランチネバー」(bran ch never)」を特定し且つ Y_motionベクトルの3進デ ジットをセットアップ*/ NOOP BN MV1 /*mv乗算の1番目のフェーズを セットアップ*/ ADD ADDR, BN MV2 /*3進デジット修正した「wid width, th」をADDRの内容へ加算し且 ADDR つ2番目のフェーズをセットアップ */ ADD ADDR, BN MV3 /*3進デジット修正した「wid width3, th3」をADDRの内容へ加算し ADDR 且つ3番目のフェーズをセットアッ プ*/ ADD ADDR, /*3進デジット修正した「wid width9, th9」を加算し且つ終了*/ ADDR 理解される如く、特別命令MVLOAD,MV1,MV
2,MV3は、直接的な命令ではなくそれに続く命令の
実行を修正する。図11aは、命令MV1,MV2,M
V3を使用して特別運動ベクトル計算の三つのフェーズ
を実施するための制御信号「0」、「−」、「*」を供
給するための回路を示している。制御信号「0」は、
「width」(「width3」又は「width
9」)オペランドがゼロとされるべきであるか否かを表
わし、制御信号「−」は「width」オペランドが否
定されるべきであるか否かを表わす。尚、「0」及び
「−」は両方とも同時にアサートさせることはできな
い。「*」制御信号は、更に、以下に説明するある条件
下において、適宜の「width9」、「width
3」又は「width」の値が別のレジスタからフェッ
チされるべきであることを特定する。
2,MV3は、直接的な命令ではなくそれに続く命令の
実行を修正する。図11aは、命令MV1,MV2,M
V3を使用して特別運動ベクトル計算の三つのフェーズ
を実施するための制御信号「0」、「−」、「*」を供
給するための回路を示している。制御信号「0」は、
「width」(「width3」又は「width
9」)オペランドがゼロとされるべきであるか否かを表
わし、制御信号「−」は「width」オペランドが否
定されるべきであるか否かを表わす。尚、「0」及び
「−」は両方とも同時にアサートさせることはできな
い。「*」制御信号は、更に、以下に説明するある条件
下において、適宜の「width9」、「width
3」又は「width」の値が別のレジスタからフェッ
チされるべきであることを特定する。
【0081】図11aに示した如く、デコード回路11
01は、現在の命令において、「ブランチネバー(br
anch never)」条件と次の命令の修正のため
の特別命令MVLOAD,MV1,MV2,MV3のう
ちの一つの両方を検知する。MVLOADが検知される
と(制御信号MVSEL=00)、ALU303の出力
バスの高位4ビット(Y[7:4])がレジスタMVY
H内にラッチされる。MV1,MV2,MV3の何れか
(MVSEL=01,10又は11)が検知されると、
制御信号MVSELは、レジスタMVYHの内容と共
に、3ビット値を有するテーブル1103内にインデッ
クスする。各3ビット値内の三つのビットは、それぞ
れ、「0」、「−」、「*」制御信号の値である。
01は、現在の命令において、「ブランチネバー(br
anch never)」条件と次の命令の修正のため
の特別命令MVLOAD,MV1,MV2,MV3のう
ちの一つの両方を検知する。MVLOADが検知される
と(制御信号MVSEL=00)、ALU303の出力
バスの高位4ビット(Y[7:4])がレジスタMVY
H内にラッチされる。MV1,MV2,MV3の何れか
(MVSEL=01,10又は11)が検知されると、
制御信号MVSELは、レジスタMVYHの内容と共
に、3ビット値を有するテーブル1103内にインデッ
クスする。各3ビット値内の三つのビットは、それぞ
れ、「0」、「−」、「*」制御信号の値である。
【0082】好適実施例においては、運動ベクトルの計
算が、オーバーフロー回路1104及び排他的ORゲー
ト1106により表わされる如く、現在のマクロブロッ
クを超えたアドレスを発生する場合には、「*」制御信
号がANDゲート1107により伝搬される。「*」制
御信号については以下に説明する。
算が、オーバーフロー回路1104及び排他的ORゲー
ト1106により表わされる如く、現在のマクロブロッ
クを超えたアドレスを発生する場合には、「*」制御信
号がANDゲート1107により伝搬される。「*」制
御信号については以下に説明する。
【0083】「0」、「−」及び「*」制御信号は、オ
ペランド修正を行なうためにレジスタ1105により伝
搬される。テーブル1103の内容はテーブル1150
内に表として示してある。好適実施例においては、フィ
ールド又はフレーム内のマクロブロックは、メモリ内に
隣接して格納することは不可能である。この条件は、マ
クロブロックの隣接するスライスが「ギャップ」により
分離されてバッファ内に格納される場合、又はリングバ
ッファ内に格納される場合(両方の条件を図11bに示
してある)、発生する。オーバーフロー回路1104及
び排他的ORゲート1106により検知される如く、現
在のマクロブロックスライスの外側に現在の運動ベクト
ルが到達すると、「*」制御信号が、オペランドフェッ
チを、別のレジスタへ指向させる(物理的には、この別
のレジスタも、図3のレジスタファイル302内のレジ
スタであるが、特定したレジスタより一つ大きなアドレ
スを有している)。この別のレジスタの内容は、ギャッ
プの寸法により増大されたフェッチすべきwidth即
ち幅の値である。
ペランド修正を行なうためにレジスタ1105により伝
搬される。テーブル1103の内容はテーブル1150
内に表として示してある。好適実施例においては、フィ
ールド又はフレーム内のマクロブロックは、メモリ内に
隣接して格納することは不可能である。この条件は、マ
クロブロックの隣接するスライスが「ギャップ」により
分離されてバッファ内に格納される場合、又はリングバ
ッファ内に格納される場合(両方の条件を図11bに示
してある)、発生する。オーバーフロー回路1104及
び排他的ORゲート1106により検知される如く、現
在のマクロブロックスライスの外側に現在の運動ベクト
ルが到達すると、「*」制御信号が、オペランドフェッ
チを、別のレジスタへ指向させる(物理的には、この別
のレジスタも、図3のレジスタファイル302内のレジ
スタであるが、特定したレジスタより一つ大きなアドレ
スを有している)。この別のレジスタの内容は、ギャッ
プの寸法により増大されたフェッチすべきwidth即
ち幅の値である。
【0084】ブロックメモリ ブロックメモリユニット314は、各マクロブロックの
データを格納し且つ再順番付けを行なう。データは、一
つのルミナンス(Y)又はクロミナンス(U又はV)タ
イプの8×8画素ブロックに到達する。しかしながら、
ビデオ出力の目的のためには、該ピクセルは、二つのY
画素と同一の画像エリア内のU及びV画素とから構成さ
れる画素対で与えられる。データは、クロック周期当り
二つのバイトが転送される4クロックバーストで、平均
的に、クロック当り一つのバイトがIDCTコプロセサ
203から到着する。本実施例においては、3個のバン
クのSRAMが与えられている。バンク0は128×1
6ビットであり、四つのブロックのYデータを有するべ
く設計されており、且つバンクBANK1及びBANK
2は各々64×8ビットであり、それらは一ブロックの
U又はVデータを格納するために設計されている。
データを格納し且つ再順番付けを行なう。データは、一
つのルミナンス(Y)又はクロミナンス(U又はV)タ
イプの8×8画素ブロックに到達する。しかしながら、
ビデオ出力の目的のためには、該ピクセルは、二つのY
画素と同一の画像エリア内のU及びV画素とから構成さ
れる画素対で与えられる。データは、クロック周期当り
二つのバイトが転送される4クロックバーストで、平均
的に、クロック当り一つのバイトがIDCTコプロセサ
203から到着する。本実施例においては、3個のバン
クのSRAMが与えられている。バンク0は128×1
6ビットであり、四つのブロックのYデータを有するべ
く設計されており、且つバンクBANK1及びBANK
2は各々64×8ビットであり、それらは一ブロックの
U又はVデータを格納するために設計されている。
【0085】本実施例においては、現在のマクロブロッ
クのデータが到達し且つブロックメモリ314内に書込
まれると、前のマクロブロックのデータが読出される。
本発明によれば、ブロックメモリユニット314は、以
下に説明する四つのパターンのサイクルで書込まれ且つ
読出される。この4パターン構成の下では、現在のマク
ロブロック内のデータは、常に、最後のマクロブロック
のデータが既に読取られた位置内に書込まれる。従っ
て、最後のデータが読出される前にメモリ位置内への書
込みを防止するためのダブルバッファリングはこの構成
の下では必要ではない。その結果、メモリ条件において
50%の減少が達成されている。
クのデータが到達し且つブロックメモリ314内に書込
まれると、前のマクロブロックのデータが読出される。
本発明によれば、ブロックメモリユニット314は、以
下に説明する四つのパターンのサイクルで書込まれ且つ
読出される。この4パターン構成の下では、現在のマク
ロブロック内のデータは、常に、最後のマクロブロック
のデータが既に読取られた位置内に書込まれる。従っ
て、最後のデータが読出される前にメモリ位置内への書
込みを防止するためのダブルバッファリングはこの構成
の下では必要ではない。その結果、メモリ条件において
50%の減少が達成されている。
【0086】図12a乃至図12dは、本発明に基づく
メモリアクセスパターンを示している。図12a乃至図
12dの各々において、各縦列00−17(オクタル)
は、8×8画素ブロックの一つの列を表わしており、各
列は2個の画素×8個の画素の画像エリアである。これ
らの縦列の番号は、画素がIDCTコプロセサ203か
ら受取られる順番を表わしている(即ち、4クロック期
間バーストを介してクロック周期当り2個のバイトで受
取られる)。
メモリアクセスパターンを示している。図12a乃至図
12dの各々において、各縦列00−17(オクタル)
は、8×8画素ブロックの一つの列を表わしており、各
列は2個の画素×8個の画素の画像エリアである。これ
らの縦列の番号は、画素がIDCTコプロセサ203か
ら受取られる順番を表わしている(即ち、4クロック期
間バーストを介してクロック周期当り2個のバイトで受
取られる)。
【0087】図12aは、「pattern(パター
ン)0」アクセスパターンを示している。第一象限内の
列01−04は、Yデータの最初の8×8画素ブロック
を表わしている。同様に、他の三つのYブロックは、列
04−07,10−13,14−17によって表わされ
る。パターン0において、縦列は、逐次的なメモリアド
レスに格納されている(各列は8個の16ビットワード
だけオフセットされており、従って8番目のワードを特
定するアドレスビットにおいて逐次的である)。しかし
ながら、パターン0の下で書込まれたマクロブロック
は、16×16画素マクロブロックが列の順番で読出さ
れることが可能であるためには、00,10,01,1
1,...,07,17の順番に読取られねばならな
い。従って、パターン0データが読出される場合に、入
力データ(「パターン1」)は、パターン0によって空
とされた位置を占有すべく指向される。例えば、読出さ
れるべき最初の四つのパターン0列は00,10,0
1,11であり、それらは、それぞれ、次のマクロブロ
ック(「パターン1」)の列00,01,02,03に
よって置換される。
ン)0」アクセスパターンを示している。第一象限内の
列01−04は、Yデータの最初の8×8画素ブロック
を表わしている。同様に、他の三つのYブロックは、列
04−07,10−13,14−17によって表わされ
る。パターン0において、縦列は、逐次的なメモリアド
レスに格納されている(各列は8個の16ビットワード
だけオフセットされており、従って8番目のワードを特
定するアドレスビットにおいて逐次的である)。しかし
ながら、パターン0の下で書込まれたマクロブロック
は、16×16画素マクロブロックが列の順番で読出さ
れることが可能であるためには、00,10,01,1
1,...,07,17の順番に読取られねばならな
い。従って、パターン0データが読出される場合に、入
力データ(「パターン1」)は、パターン0によって空
とされた位置を占有すべく指向される。例えば、読出さ
れるべき最初の四つのパターン0列は00,10,0
1,11であり、それらは、それぞれ、次のマクロブロ
ック(「パターン1」)の列00,01,02,03に
よって置換される。
【0088】パターン1の列の分布を図12bに示して
ある。パターン0の列における如く、パターン1の列が
完全に書込まれた後には、パターン1の列は00,1
0,01,11,02,12,...,07,17の順
番で読取られ、且つ、それぞれ、次のマクロブロックの
(「パターン2」)列00,01,02,0
3,...,16,17によって置換される。パターン
2は図12cに示してある。同様に、パターン2の列
は、図12dに示した次のマクロブロック(「パターン
3」)の列に対して譲歩する。パターン3の列は、パタ
ーン0の列が書込まれた順番に読取られる。従って、こ
の様なメモリアクセスパターンは、パターン0−3のサ
イクルにおいて無限に継続することが可能である。なぜ
ならば、メモリアクセスパターン0−3の各々におい
て、それが書込まれる前に全てのメモリ位置が読取ら
れ、ブロックメモリユニット314は、1個のマクロブ
ロックの寸法であることが必要であるに過ぎず、且つ再
順番付けはダブルバッファリング即ち二重バッファ動作
なしで達成されるからである。
ある。パターン0の列における如く、パターン1の列が
完全に書込まれた後には、パターン1の列は00,1
0,01,11,02,12,...,07,17の順
番で読取られ、且つ、それぞれ、次のマクロブロックの
(「パターン2」)列00,01,02,0
3,...,16,17によって置換される。パターン
2は図12cに示してある。同様に、パターン2の列
は、図12dに示した次のマクロブロック(「パターン
3」)の列に対して譲歩する。パターン3の列は、パタ
ーン0の列が書込まれた順番に読取られる。従って、こ
の様なメモリアクセスパターンは、パターン0−3のサ
イクルにおいて無限に継続することが可能である。なぜ
ならば、メモリアクセスパターン0−3の各々におい
て、それが書込まれる前に全てのメモリ位置が読取ら
れ、ブロックメモリユニット314は、1個のマクロブ
ロックの寸法であることが必要であるに過ぎず、且つ再
順番付けはダブルバッファリング即ち二重バッファ動作
なしで達成されるからである。
【0089】メモリアクセスパターン0−3に対するメ
モリアドレスは、パターン0アクセス期間中に逐次的な
順番でカウントし、パターン1アクセス期間中には
(0,8,1,9,2,10,3,11,4,12,
5,13,6,14,7,15)の順番で、パターン2
アクセス期間中には(0,4,8,12,1,5,9,
13,2,6,10,14,3,7,13,17)の順
番で、且つパターン3アクセス期間中は(0,2,4,
6,8,10,12,14,1,5,3,7,11,1
5)の順番でカウントすることにより発生させることが
可能である。パターン0,1,2,3におけるカウント
は、4ビットカウンタにより発生させることが可能であ
り、そのカウンタは、(1)メモリアクセスパターン
0,1,2又は3の何れが所望されているかに従って、
ラップアラウンドの態様で0,1,2又は3ビットの四
つのカウントビットを左側へ回転させ、(2)その回転
した位置において該4ビットカウンタを1だけインクリ
メントさせ、且つ(3)ステップ(1)において回転さ
せたビット数だけ右へ回転させることにより(即ち、元
のビット位置へ復帰させる)カウントを行なう。
モリアドレスは、パターン0アクセス期間中に逐次的な
順番でカウントし、パターン1アクセス期間中には
(0,8,1,9,2,10,3,11,4,12,
5,13,6,14,7,15)の順番で、パターン2
アクセス期間中には(0,4,8,12,1,5,9,
13,2,6,10,14,3,7,13,17)の順
番で、且つパターン3アクセス期間中は(0,2,4,
6,8,10,12,14,1,5,3,7,11,1
5)の順番でカウントすることにより発生させることが
可能である。パターン0,1,2,3におけるカウント
は、4ビットカウンタにより発生させることが可能であ
り、そのカウンタは、(1)メモリアクセスパターン
0,1,2又は3の何れが所望されているかに従って、
ラップアラウンドの態様で0,1,2又は3ビットの四
つのカウントビットを左側へ回転させ、(2)その回転
した位置において該4ビットカウンタを1だけインクリ
メントさせ、且つ(3)ステップ(1)において回転さ
せたビット数だけ右へ回転させることにより(即ち、元
のビット位置へ復帰させる)カウントを行なう。
【0090】図12fは、ビット回転機能を実施するた
めのカウンタ1274を示している。図12fに示した
如く、画素アドレス又は画素カウントの四つのビット
が、カウンタ1274への入力データとして、4ビット
バス1272内に供給される。2ビット制御が、パター
ン0−3の各々に対するカウントを発生すべくカウンタ
1274に指示する。該4ビット出力バス1273は回
転された4ビットのビットパターンを与える。メモリア
クセスパターン0,1,2に対応するカウントのビット
パターンを図12eに示してある。
めのカウンタ1274を示している。図12fに示した
如く、画素アドレス又は画素カウントの四つのビット
が、カウンタ1274への入力データとして、4ビット
バス1272内に供給される。2ビット制御が、パター
ン0−3の各々に対するカウントを発生すべくカウンタ
1274に指示する。該4ビット出力バス1273は回
転された4ビットのビットパターンを与える。メモリア
クセスパターン0,1,2に対応するカウントのビット
パターンを図12eに示してある。
【0091】運動補償 運動補償機能は、この実施例においては、画素フィルタ
ユニット316、予測又は画素メモリユニット317及
び重み付け加算器又はALUユニット315において実
現されている。運動補償ユニット315−317を介し
てのデータの流れ経路を図13aに示してある。
ユニット316、予測又は画素メモリユニット317及
び重み付け加算器又はALUユニット315において実
現されている。運動補償ユニット315−317を介し
てのデータの流れ経路を図13aに示してある。
【0092】上述した如く、運動補償動作の1番目及び
2番目のフェーズにおいて、前方基準フレームのマクロ
ブロックの1番目及び2番目の部分がDRAMからフェ
ッチされ、クロック周期当り2個のY画素及び2個のク
ロミナンス画素の割合でグローバルバス205を介して
供給され、且つ画素メモリ317内に配置される。非イ
ンターレース型4:2:0モードにおいては、クロミナ
ンスデータはY方向においてサブサンプル即ち副次的に
サンプルされるので、新たなクロミナンスデータは一つ
置きのクロック周期毎に到着する(新たなクロミナンス
データが供給されない場合のクロック周期において到着
する二つのクロミナンス値は前の二つのクロミナンス値
の複製である)。このマクロブロックを外部DRAMか
らフェッチする場合に、プロセサ205はマクロブロッ
クアドレスの計算における一次の運動補償を与え、それ
は、上述した特別命令MVLOAD,MV1,MV2,
MV3に関連して説明した態様で計算される。画素フィ
ルタ316は、運動ベクトルのX及びY成分の低位ビッ
トX[1:0]及びY[1:0]を使用して、半分の画
素又は4分の1の画素の位置に対してフェッチした画素
の再サンプリングを与える。
2番目のフェーズにおいて、前方基準フレームのマクロ
ブロックの1番目及び2番目の部分がDRAMからフェ
ッチされ、クロック周期当り2個のY画素及び2個のク
ロミナンス画素の割合でグローバルバス205を介して
供給され、且つ画素メモリ317内に配置される。非イ
ンターレース型4:2:0モードにおいては、クロミナ
ンスデータはY方向においてサブサンプル即ち副次的に
サンプルされるので、新たなクロミナンスデータは一つ
置きのクロック周期毎に到着する(新たなクロミナンス
データが供給されない場合のクロック周期において到着
する二つのクロミナンス値は前の二つのクロミナンス値
の複製である)。このマクロブロックを外部DRAMか
らフェッチする場合に、プロセサ205はマクロブロッ
クアドレスの計算における一次の運動補償を与え、それ
は、上述した特別命令MVLOAD,MV1,MV2,
MV3に関連して説明した態様で計算される。画素フィ
ルタ316は、運動ベクトルのX及びY成分の低位ビッ
トX[1:0]及びY[1:0]を使用して、半分の画
素又は4分の1の画素の位置に対してフェッチした画素
の再サンプリングを与える。
【0093】運動補償の3番目及び4番目のフェーズに
おいて、後方基準フレームにおけるマクロブロックが、
前方基準フレームからのマクロブロックと同様の態様で
フェッチされ、且つ同様に、画素フィルタ316内に再
サンプルされる。後方基準フレームからのマクロブロッ
クの画素が再サンプルされると、それらは重み付けされ
た加算器へ転送され、1番目及び2番目のフェーズにお
いてフェッチされた前方基準フレームからのマクロブロ
ック内の対応する画素と線形的に結合して、現在のマク
ロブロックの内挿された予測の画素を形成する。次い
で、この内挿された予測の画素は画素メモリ317内に
戻されて格納される。最後のフェーズにおいて、脱圧縮
されたデータのマクロブロックがブロックメモリユニッ
ト314から受取られ且つ内挿された予測マクロブロッ
クと加算されて現在のマクロブロックの最終的な値を形
成する。次いで、この現在のマクロブロックがビデオ出
力のために外部DRAM内に書き戻される。画素フィル
タユニット316は2×2再サンプラである。図13b
は、画素フィルタユニット316の2×2再サンプラを
実施する回路の概略図である。図13bに示した如く、
画素フィルタユニット316は、水平フィルタ316a
と垂直フィルタ316bとを有している。水平フィルタ
316aは、16×32ビット列メモリ1301、入力
ラッチ1303、マルチプレクサ1302a及び130
2b、出力ラッチ1305及び加算器1304を有して
いる。マルチプレクサ1302a及び1302bは、加
算器1304と共に、重み付けされた加算器を形成して
いる(以後、これらを全体として重み付け加算器130
4として呼称する)。重み付け加算器1304は、その
二つの入力データa及びbに1:0、1/2:1/2又
は0:1の重み付けを結果として得られる和に与えるこ
とが可能である。垂直フィルタユニット316bは、2
×8×36ビット行メモリユニット1306と、マルチ
プレクサ1308a,1308b,1308cと、加算
器1309と、出力レジスタ1310とを有している。
行メモリユニット1306は、更に、二つのプレーン1
306a及び1306bに分割させることが可能であ
り、各プレーンは8×36ビットとして構成されてい
る。又、マルチプレクサ1308a−c及び加算器13
09は重み付けされた加算器を形成している(以後、こ
れら全体を重み付けされた加算器1309として呼称す
る)。重み付けされた加算器1309は、その二つの入
力データa及びbの1:0,1/2:1/2,3/4:
1/4,1/4:3/4又は0:1の重みを与えること
が可能であり、それらは、現在の画素対及び前の行にお
ける画素対か又は直前の行の上の行内の画素対から選択
される。
おいて、後方基準フレームにおけるマクロブロックが、
前方基準フレームからのマクロブロックと同様の態様で
フェッチされ、且つ同様に、画素フィルタ316内に再
サンプルされる。後方基準フレームからのマクロブロッ
クの画素が再サンプルされると、それらは重み付けされ
た加算器へ転送され、1番目及び2番目のフェーズにお
いてフェッチされた前方基準フレームからのマクロブロ
ック内の対応する画素と線形的に結合して、現在のマク
ロブロックの内挿された予測の画素を形成する。次い
で、この内挿された予測の画素は画素メモリ317内に
戻されて格納される。最後のフェーズにおいて、脱圧縮
されたデータのマクロブロックがブロックメモリユニッ
ト314から受取られ且つ内挿された予測マクロブロッ
クと加算されて現在のマクロブロックの最終的な値を形
成する。次いで、この現在のマクロブロックがビデオ出
力のために外部DRAM内に書き戻される。画素フィル
タユニット316は2×2再サンプラである。図13b
は、画素フィルタユニット316の2×2再サンプラを
実施する回路の概略図である。図13bに示した如く、
画素フィルタユニット316は、水平フィルタ316a
と垂直フィルタ316bとを有している。水平フィルタ
316aは、16×32ビット列メモリ1301、入力
ラッチ1303、マルチプレクサ1302a及び130
2b、出力ラッチ1305及び加算器1304を有して
いる。マルチプレクサ1302a及び1302bは、加
算器1304と共に、重み付けされた加算器を形成して
いる(以後、これらを全体として重み付け加算器130
4として呼称する)。重み付け加算器1304は、その
二つの入力データa及びbに1:0、1/2:1/2又
は0:1の重み付けを結果として得られる和に与えるこ
とが可能である。垂直フィルタユニット316bは、2
×8×36ビット行メモリユニット1306と、マルチ
プレクサ1308a,1308b,1308cと、加算
器1309と、出力レジスタ1310とを有している。
行メモリユニット1306は、更に、二つのプレーン1
306a及び1306bに分割させることが可能であ
り、各プレーンは8×36ビットとして構成されてい
る。又、マルチプレクサ1308a−c及び加算器13
09は重み付けされた加算器を形成している(以後、こ
れら全体を重み付けされた加算器1309として呼称す
る)。重み付けされた加算器1309は、その二つの入
力データa及びbの1:0,1/2:1/2,3/4:
1/4,1/4:3/4又は0:1の重みを与えること
が可能であり、それらは、現在の画素対及び前の行にお
ける画素対か又は直前の行の上の行内の画素対から選択
される。
【0094】全てのクロック周期において、画素対が列
の順番で(各列は、2×18グループの画素である。な
ぜならば、基準マクロブロックは、画素フィルタ316
内での再サンプリングに対する完全な前後関係を与える
ために18×18画素画像エリアを必要としているから
である)グローバルバス205上に到着し且つ入力ラッ
チ1303内にラッチされる。各対の画素は運動ベクト
ルのY成分におけるビットY[5:2]により特定され
る16×32ビット列メモリ1301の16個の位置の
うちの一つの中に格納される。新たな列の画素対が列メ
モリ1301に到着すると、前の列内の対応する位置に
おける画素対が読出される。現在の画素対及び前の列か
らの対応する画素対が重み付けされた加算器1304に
おいて結合され、尚各画素対に与えられる重みは運動ベ
クトルのX成分の下位の二つのビット(即ち、X[1:
0])により決定される。この重み付けされた加算の結
果は入力画素対の間に位置された新たな画素対である
(即ち、水平方向に再サンプルされる)。次いで、この
新たな画素対(9ビット精度)は、垂直フィルタユニッ
ト316bへ転送されるべくレジスタ1305内にラッ
チされる。従って、列メモリ1301は2タップフィル
タの遅延要素として作用する。水平フィルタ316aの
出力データは、各マクロブロック内の1番目の列のデー
タが画素フィルタ316に入力される時間期間中に廃棄
される。
の順番で(各列は、2×18グループの画素である。な
ぜならば、基準マクロブロックは、画素フィルタ316
内での再サンプリングに対する完全な前後関係を与える
ために18×18画素画像エリアを必要としているから
である)グローバルバス205上に到着し且つ入力ラッ
チ1303内にラッチされる。各対の画素は運動ベクト
ルのY成分におけるビットY[5:2]により特定され
る16×32ビット列メモリ1301の16個の位置の
うちの一つの中に格納される。新たな列の画素対が列メ
モリ1301に到着すると、前の列内の対応する位置に
おける画素対が読出される。現在の画素対及び前の列か
らの対応する画素対が重み付けされた加算器1304に
おいて結合され、尚各画素対に与えられる重みは運動ベ
クトルのX成分の下位の二つのビット(即ち、X[1:
0])により決定される。この重み付けされた加算の結
果は入力画素対の間に位置された新たな画素対である
(即ち、水平方向に再サンプルされる)。次いで、この
新たな画素対(9ビット精度)は、垂直フィルタユニッ
ト316bへ転送されるべくレジスタ1305内にラッ
チされる。従って、列メモリ1301は2タップフィル
タの遅延要素として作用する。水平フィルタ316aの
出力データは、各マクロブロック内の1番目の列のデー
タが画素フィルタ316に入力される時間期間中に廃棄
される。
【0095】行メモリ1306は、マクロブロックの垂
直再サンプリングを与える。行メモリ1306は、各々
が8個の36ビットワードを保持する二つのプレーン1
306a及び1306bとして構成されている。1番目
のプレーン1306aは、列当り一つの画素対を有して
おり、最も最近の画素対は現在の画素対の前の列内に存
在している。2番目のプレーン1306bも列当り一つ
の画素対を有しており、現在の画素対の前の列内には2
番目に最も最近の画素対が存在している。現在の画素対
が到着すると、メモリプレーン1306a及び1306
bの各々は、同一の列内の画素対に対して読取られる。
新たな画素対が、現在の画素対と同一の列内の最も最近
の画素対(一つのクロック周期遅延されている)か又は
同一の列内の2番目に最も最近の画素対(二つのクロッ
ク周期遅延されている)の何れかとの重み付けされた和
として重み付けされた加算器1309により与えられ
る。現在の画素対及び選択された前の画素対へ与えられ
るべき重みは運動ベクトル内のY成分の下位の二つのビ
ット(Y[1:0])により特定される。インターレー
ス型モードにおいては、現在の画素対の再サンプリング
が、二つのクロック周期遅延された画素対に関して行な
われる。次いで、この新たな対の画素は、重み付けされ
た加算器315を介して、画素メモリユニット317へ
転送するために、レジスタ1310内にラッチされる。
直再サンプリングを与える。行メモリ1306は、各々
が8個の36ビットワードを保持する二つのプレーン1
306a及び1306bとして構成されている。1番目
のプレーン1306aは、列当り一つの画素対を有して
おり、最も最近の画素対は現在の画素対の前の列内に存
在している。2番目のプレーン1306bも列当り一つ
の画素対を有しており、現在の画素対の前の列内には2
番目に最も最近の画素対が存在している。現在の画素対
が到着すると、メモリプレーン1306a及び1306
bの各々は、同一の列内の画素対に対して読取られる。
新たな画素対が、現在の画素対と同一の列内の最も最近
の画素対(一つのクロック周期遅延されている)か又は
同一の列内の2番目に最も最近の画素対(二つのクロッ
ク周期遅延されている)の何れかとの重み付けされた和
として重み付けされた加算器1309により与えられ
る。現在の画素対及び選択された前の画素対へ与えられ
るべき重みは運動ベクトル内のY成分の下位の二つのビ
ット(Y[1:0])により特定される。インターレー
ス型モードにおいては、現在の画素対の再サンプリング
が、二つのクロック周期遅延された画素対に関して行な
われる。次いで、この新たな対の画素は、重み付けされ
た加算器315を介して、画素メモリユニット317へ
転送するために、レジスタ1310内にラッチされる。
【0096】運動ベクトルは、外部DRAMのページ境
界に整合されていない予測型マクロブロックを供給する
ことが可能である。該画素は列順番でフェッチされ且つ
マクロブロックの一行の画素内には16個の画素が存在
しているので、マクロブロックをフェッチすることは、
潜在的に、DRAMのページ境界を16回クロッシング
即ち横断することを必要とする。図13cはDRAMペ
ージ境界に整合されていない予測型マクロブロックを発
生する運動ベクトルmv1を示している。DRAMペー
ジへの初期的なアクセスは6個乃至は7個のクロック周
期を必要とし且つ爾後の同一のページへのアクセスは一
つ置きのクロック周期でページモードで達成することが
可能であるということに注意すると、16個のDRAM
ページクロッシング即ち横断を減少させることが可能で
ある場合には顕著な効率を達成することが可能である。
本発明によれば、マクロブロックを二つの部分でフェッ
チすることによりこの様な効率が達成されている。この
方法は図13dに示してある。
界に整合されていない予測型マクロブロックを供給する
ことが可能である。該画素は列順番でフェッチされ且つ
マクロブロックの一行の画素内には16個の画素が存在
しているので、マクロブロックをフェッチすることは、
潜在的に、DRAMのページ境界を16回クロッシング
即ち横断することを必要とする。図13cはDRAMペ
ージ境界に整合されていない予測型マクロブロックを発
生する運動ベクトルmv1を示している。DRAMペー
ジへの初期的なアクセスは6個乃至は7個のクロック周
期を必要とし且つ爾後の同一のページへのアクセスは一
つ置きのクロック周期でページモードで達成することが
可能であるということに注意すると、16個のDRAM
ページクロッシング即ち横断を減少させることが可能で
ある場合には顕著な効率を達成することが可能である。
本発明によれば、マクロブロックを二つの部分でフェッ
チすることによりこの様な効率が達成されている。この
方法は図13dに示してある。
【0097】図13dに示した方法によれば、マクロブ
ロックは二つの部分でフェッチされる。運動補償の1番
目のフェーズにおいて(そのマクロブロックが後方基準
フレームに関してコード化されている場合には3番目の
フェーズ)、水平DRAM境界より上のマクロブロック
の部分が列の順番でフェッチされる。しかしながら、D
RAM境界が各列において到達すると、その列の次の画
素対をフェッチするためにDRAM境界をクロッシング
即ち横断する代わりに、次の列の最初の画素対がフェッ
チされる。DRAM境界より上の最後の二つの画素対
は、運動補償の次のフェーズまで、画素フィルタユニッ
ト316の行メモリ内に止どまることが可能である。1
番目のフェーズは、全ての列において水平境界より上の
マクロブロックの部分がフェッチされると完了する。
ロックは二つの部分でフェッチされる。運動補償の1番
目のフェーズにおいて(そのマクロブロックが後方基準
フレームに関してコード化されている場合には3番目の
フェーズ)、水平DRAM境界より上のマクロブロック
の部分が列の順番でフェッチされる。しかしながら、D
RAM境界が各列において到達すると、その列の次の画
素対をフェッチするためにDRAM境界をクロッシング
即ち横断する代わりに、次の列の最初の画素対がフェッ
チされる。DRAM境界より上の最後の二つの画素対
は、運動補償の次のフェーズまで、画素フィルタユニッ
ト316の行メモリ内に止どまることが可能である。1
番目のフェーズは、全ての列において水平境界より上の
マクロブロックの部分がフェッチされると完了する。
【0098】2番目のフェーズ(そのマクロブロックが
後方基準フレームに関してコード化されている場合には
4番目のフェーズ)においては、そのマクロブロックの
2番目の部分(即ち、水平DRAMページ境界より下側
のマクロブロックの部分)がフェッチされ、それは、1
番目の列におけるDRAMページ境界下側の最初の画素
対で開始される。1番目の列内の残りの画素対がフェッ
チされた後に、2番目の列の残りの画素対がフェッチさ
れ、以下同様に行なわれる。この2番目のフェーズは、
全ての列におけるDRAMページ境界下側の全ての残り
の画素対がフェッチされた時に完了する。図13dは、
マクロブロックアクセスの1番目(水平DRAMページ
境界の上側)及び2番目(水平DRAMページ境界の下
側)の部分に対するメモリアクセスパターンを示してお
り、且つ特に、マクロブロックの2番目の部分における
画素対のちょうど半分がフェッチされた2番目のフェー
ズの期間における状態を示している。図13dに示した
如く、行メモリユニット1306は、マクロブロックの
最後の三つの列の各々に対して、1番目のフェーズの期
間中にフェッチされた列内の水平DRAMページ境界の
上側の最後の二つの画素対(影線を付けたブロック13
61で示してある)を有している。図13dは、更に、
行メモリユニット1306が、最初の四つの列に対し
て、各列内の水平DRAMページ境界下側の最後の二つ
の画素対(影線を付けたブロック1362で示してあ
る)を有する状態を示している。図13dにおいて、マ
クロブロックの5番目の列に対して、行メモリユニット
1306の現在の内容は、現在の画素対の前に受取られ
た二つの最も最近の画素対である。従って、水平ページ
境界に関して二つの部分でマクロブロックをフェッチす
ることにより、単に二つの初期的なアクセス時間が必要
とされるだけであり、その際にフェッチされるマクロブ
ロック当りのメモリアクセス時間を著しく節約すること
を可能としている。
後方基準フレームに関してコード化されている場合には
4番目のフェーズ)においては、そのマクロブロックの
2番目の部分(即ち、水平DRAMページ境界より下側
のマクロブロックの部分)がフェッチされ、それは、1
番目の列におけるDRAMページ境界下側の最初の画素
対で開始される。1番目の列内の残りの画素対がフェッ
チされた後に、2番目の列の残りの画素対がフェッチさ
れ、以下同様に行なわれる。この2番目のフェーズは、
全ての列におけるDRAMページ境界下側の全ての残り
の画素対がフェッチされた時に完了する。図13dは、
マクロブロックアクセスの1番目(水平DRAMページ
境界の上側)及び2番目(水平DRAMページ境界の下
側)の部分に対するメモリアクセスパターンを示してお
り、且つ特に、マクロブロックの2番目の部分における
画素対のちょうど半分がフェッチされた2番目のフェー
ズの期間における状態を示している。図13dに示した
如く、行メモリユニット1306は、マクロブロックの
最後の三つの列の各々に対して、1番目のフェーズの期
間中にフェッチされた列内の水平DRAMページ境界の
上側の最後の二つの画素対(影線を付けたブロック13
61で示してある)を有している。図13dは、更に、
行メモリユニット1306が、最初の四つの列に対し
て、各列内の水平DRAMページ境界下側の最後の二つ
の画素対(影線を付けたブロック1362で示してあ
る)を有する状態を示している。図13dにおいて、マ
クロブロックの5番目の列に対して、行メモリユニット
1306の現在の内容は、現在の画素対の前に受取られ
た二つの最も最近の画素対である。従って、水平ページ
境界に関して二つの部分でマクロブロックをフェッチす
ることにより、単に二つの初期的なアクセス時間が必要
とされるだけであり、その際にフェッチされるマクロブ
ロック当りのメモリアクセス時間を著しく節約すること
を可能としている。
【0099】重み付けされた加算器316は、二つの対
の画素(a,b)の双一次内挿器であり、(w*a+
(16−w)*p+8)/16を持った出力データを供
給する。3番目のオペランド「8」は四捨五入の目的の
ために与えられる。回路1400は図14に示してあ
り、この双一次内挿器を構成している。図14に示した
如く、回路1400は五入力加算器1401及び5個の
マルチプレクサ1402a−eを有している。各マルチ
プレクサ1402a−eは、その入力端子における二つ
の入力データA及びBの一つを選択することに加えて、
重みの2を底とする対数(log2 w)に等しいビット
数入力データを左へシフトさせることにより、該マルチ
プレクサ上に表わされる重みを出力データへ与える。例
えば、マルチプレクサ1402aは、5ビット制御値
w′[4:0]のビット3が1である場合に、32ビッ
トのA入力データを3ビット(log2 8)へ選択し左
側へシフトさせる。制御器w′は、0≦w<16に対す
るwと等しく且つw=16である場合には31に等し
い。その様にシフトさせることにより、マルチプレクサ
1402aは、加算器1401の加算演算期間中にA入
力データへ8の重みを与え、且つB入力データへ0の重
みを与える。逆に、制御値w′のビット4が0である場
合には、32ビットのB入力データには8の重みが与え
られ、且つマルチプレクサ1402aのA入力データに
は0の重みが与えられる。
の画素(a,b)の双一次内挿器であり、(w*a+
(16−w)*p+8)/16を持った出力データを供
給する。3番目のオペランド「8」は四捨五入の目的の
ために与えられる。回路1400は図14に示してあ
り、この双一次内挿器を構成している。図14に示した
如く、回路1400は五入力加算器1401及び5個の
マルチプレクサ1402a−eを有している。各マルチ
プレクサ1402a−eは、その入力端子における二つ
の入力データA及びBの一つを選択することに加えて、
重みの2を底とする対数(log2 w)に等しいビット
数入力データを左へシフトさせることにより、該マルチ
プレクサ上に表わされる重みを出力データへ与える。例
えば、マルチプレクサ1402aは、5ビット制御値
w′[4:0]のビット3が1である場合に、32ビッ
トのA入力データを3ビット(log2 8)へ選択し左
側へシフトさせる。制御器w′は、0≦w<16に対す
るwと等しく且つw=16である場合には31に等し
い。その様にシフトさせることにより、マルチプレクサ
1402aは、加算器1401の加算演算期間中にA入
力データへ8の重みを与え、且つB入力データへ0の重
みを与える。逆に、制御値w′のビット4が0である場
合には、32ビットのB入力データには8の重みが与え
られ、且つマルチプレクサ1402aのA入力データに
は0の重みが与えられる。
【0100】マルチプレクサ1402b−eの演算は同
様であり、選択された入力データへそれぞれ割当てられ
る4:2:1及び1の重みは、制御値w′のビット2,
1,0及び4により制御される。マルチプレクサ140
2a−eの各々は指定された重みをA入力データ又はB
入力データの何れかに与えるので、全てのマルチプレク
サ1402a−eによりA入力データへ与えられる全重
みは、使用可能な全重み(即ち、16)−Bデータへ与
えられる全重みに等しいものでなければならない。従っ
て、その結果得られる重み付けされた和は、四捨五入を
行なう前に、w*a+(16−w)*b/16に等しく
なければならない。最後の16による割算は、その結果
得られる和を右へ4ビットシフトさせることにより達成
される。全ての重みがA入力データへ割当てられる特別
の場合が存在している。その場合には、w=16であ
り、5ビット制御値w′には値31が与えられ、そのこ
とは各マルチプレクサ14a−dがA入力データを選択
することを可能とする。
様であり、選択された入力データへそれぞれ割当てられ
る4:2:1及び1の重みは、制御値w′のビット2,
1,0及び4により制御される。マルチプレクサ140
2a−eの各々は指定された重みをA入力データ又はB
入力データの何れかに与えるので、全てのマルチプレク
サ1402a−eによりA入力データへ与えられる全重
みは、使用可能な全重み(即ち、16)−Bデータへ与
えられる全重みに等しいものでなければならない。従っ
て、その結果得られる重み付けされた和は、四捨五入を
行なう前に、w*a+(16−w)*b/16に等しく
なければならない。最後の16による割算は、その結果
得られる和を右へ4ビットシフトさせることにより達成
される。全ての重みがA入力データへ割当てられる特別
の場合が存在している。その場合には、w=16であ
り、5ビット制御値w′には値31が与えられ、そのこ
とは各マルチプレクサ14a−dがA入力データを選択
することを可能とする。
【0101】ビデオ出力 ビデオ出力ユニットは、ビデオ出力を格納するための6
4×32ビットビデオメモリ319(図3)を有してい
る。ビデオデータは、ディスプレイ内の水平ラインの順
番で出力される。従って、画素データが、上述した如き
スキャンフォーマットで外部DRAMのビデオメモリか
らフェッチされる。該データフォーマットは、CCIR
601スタンダード(Cb YCr Y、即ちUYVY)に
従う。水平の再サンプラ318が、双一次フィルタを使
用して2の係数により水平方向に内挿するために設けら
れている。
4×32ビットビデオメモリ319(図3)を有してい
る。ビデオデータは、ディスプレイ内の水平ラインの順
番で出力される。従って、画素データが、上述した如き
スキャンフォーマットで外部DRAMのビデオメモリか
らフェッチされる。該データフォーマットは、CCIR
601スタンダード(Cb YCr Y、即ちUYVY)に
従う。水平の再サンプラ318が、双一次フィルタを使
用して2の係数により水平方向に内挿するために設けら
れている。
【0102】以上、本発明の具体的実施の態様について
詳細に説明したが、本発明は、これら具体例にのみ限定
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論であ
る。
詳細に説明したが、本発明は、これら具体例にのみ限定
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論であ
る。
【図1】 MPEGスタンダードの下での圧縮及び脱圧
縮プロセスのモデルを示した概略図。
縮プロセスのモデルを示した概略図。
【図2】 ビデオ脱圧縮回路200における本発明の一
実施例を示したブロック図。
実施例を示したブロック図。
【図3】 図2に示したビデオ圧縮回路のより詳細なブ
ロック図。
ロック図。
【図4】 図2のビデオ脱圧縮回路200内のプロセサ
201の命令フォーマットを示した説明図。
201の命令フォーマットを示した説明図。
【図5】 SRAM及び制御レジスタを持ったコプロセ
サモジュールにおける外部DRAMへの及びそれからの
データの運動を示した説明図。
サモジュールにおける外部DRAMへの及びそれからの
データの運動を示した説明図。
【図6】 図3のメモリ制御器304内のメモリデータ
バス208bとグローバルバス205との間のインター
フェースを示した概略図。
バス208bとグローバルバス205との間のインター
フェースを示した概略図。
【図7a】 従来のダイナミックランダムアクセスメモ
リへのページモードアクセスの制御信号及びデータ信号
を示した説明図。
リへのページモードアクセスの制御信号及びデータ信号
を示した説明図。
【図7b】 本発明に基づくCAS高条件を充足するた
めの遅延されたCAS下降エッジを示した説明図。
めの遅延されたCAS下降エッジを示した説明図。
【図7c】 本発明に基づく遅延されたCAS信号を実
現するための回路700を示した概略図。
現するための回路700を示した概略図。
【図8a】 二次元ディスプレイ空間の外部DRAMの
24ビット直線アドレス空間へのマッピングを示した説
明図。
24ビット直線アドレス空間へのマッピングを示した説
明図。
【図8b】 16×16画素マクロブロックのバイトア
ドレス(下位9ビット)を示した説明図。
ドレス(下位9ビット)を示した説明図。
【図8c】 クワッド画素モード又はスキャンモードで
メモリをアクセスすることを可能とするためにバイトア
ドレス内にビットE[6]に対しての制御論理を実現す
る論理回路を示した概略図。
メモリをアクセスすることを可能とするためにバイトア
ドレス内にビットE[6]に対しての制御論理を実現す
る論理回路を示した概略図。
【図9a】 本発明に基づいてHDTVモードの下での
四つのビデオ脱圧縮回路の一つにより見られるディスプ
レイ空間を示した概略図。
四つのビデオ脱圧縮回路の一つにより見られるディスプ
レイ空間を示した概略図。
【図9b】 HDTVモードの下で直線的な物理的アド
レス空間及びディスプレイ空間の両方を示した概略図。
レス空間及びディスプレイ空間の両方を示した概略図。
【図9c】 DRAMバイトアドレスの直線的な物理的
アドレス空間へのマッピングを実施する回路の機能的ブ
ロック図。
アドレス空間へのマッピングを実施する回路の機能的ブ
ロック図。
【図9d】 基準マクロブロック981及び986のフ
ェッチ動作が、それぞれ、一つ及び四つのDRAMペー
ジ境界のクロッシング即ち横断を必要とすることを示し
た説明図。
ェッチ動作が、それぞれ、一つ及び四つのDRAMペー
ジ境界のクロッシング即ち横断を必要とすることを示し
た説明図。
【図9e】 図9cに示したマッピング構成を実現した
回路を示した概略図。
回路を示した概略図。
【図9f】 HDTVモードの下でDRAMバイトアド
レス空間を物理的DRAMアドレス空間へマッピングす
る状態を示した概略図。
レス空間を物理的DRAMアドレス空間へマッピングす
る状態を示した概略図。
【図10a】 図2に示したビデオ脱圧縮回路200の
デコーダ論理ユニット307を示した概略図。
デコーダ論理ユニット307を示した概略図。
【図10b】 マクロブロックレベル可変長コードのパ
ース動作を示したシンタックスステートマシンの概略
図。
ース動作を示したシンタックスステートマシンの概略
図。
【図10c】 本発明に基づく差分運動ベクトルのデー
タ表示を示した概略図。
タ表示を示した概略図。
【図10d】 デコードされたV及びr成分から運動ベ
クトルを再生するための回路1000を示した概略図。
クトルを再生するための回路1000を示した概略図。
【図11a】 運動ベクトルのY成分とスクリーン幅と
を乗算するために制御信号を発生する回路1200を示
した概略図。
を乗算するために制御信号を発生する回路1200を示
した概略図。
【図11b】 ビデオメモリの非隣接型バッファ及びリ
ングバッファ具体例を示した概略図。
ングバッファ具体例を示した概略図。
【図12a】 ブロックメモリ314のバンク0におけ
るメモリアクセスの一つのパターンを示した概略図。
るメモリアクセスの一つのパターンを示した概略図。
【図12b】 ブロックメモリ314のバンク0におけ
るメモリアクセスの一つのパターンを示した概略図。
るメモリアクセスの一つのパターンを示した概略図。
【図12c】 ブロックメモリ314のバンク0におけ
るメモリアクセスの一つのパターンを示した概略図。
るメモリアクセスの一つのパターンを示した概略図。
【図12d】 ブロックメモリ314のバンク0におけ
るメモリアクセスの一つのパターンを示した概略図。
るメモリアクセスの一つのパターンを示した概略図。
【図12e】 図12a乃至dの四つのメモリアクセス
パターン0−3の各々におけるブロックメモリ314の
バンク0へアクセスするために発生されたアドレスビッ
トパターンを示した概略図。
パターン0−3の各々におけるブロックメモリ314の
バンク0へアクセスするために発生されたアドレスビッ
トパターンを示した概略図。
【図12f】 本発明のメモリアクセスパターン0−3
を実現するためのアドレスを発生するカウンタを示した
概略図。
を実現するためのアドレスを発生するカウンタを示した
概略図。
【図13a】 運動補償ユニット315−317を介し
てのデータ流れ経路を示した概略図。
てのデータ流れ経路を示した概略図。
【図13b】 画素フィルタユニット316の概略図。
【図13c】 DRAMページ境界に亘る外部DRAM
内のエリア内にマップする予測器マクロブロックを発生
させる運動ベクトルmv1を示した概略図。
内のエリア内にマップする予測器マクロブロックを発生
させる運動ベクトルmv1を示した概略図。
【図13d】 マクロブロックの画素がフェッチされる
場合の二部分メモリアクセス及び行メモリ1306の内
容を示した概略図。
場合の二部分メモリアクセス及び行メモリ1306の内
容を示した概略図。
【図14】 本実施例の重み付けされた加算器316に
おける双一次内挿器を実現するための回路1400を示
した概略図。
おける双一次内挿器を実現するための回路1400を示
した概略図。
200 ビデオ脱圧縮回路 201 プロセサ 202 デコーダコプロセサ 203 IDCT(逆離散余弦変換)コプロセサ 204 運動補償コプロセサ 205 グローバルバス 206 ホストバス 207 コードバス 208 メモリバス 209 ビデオバス
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H03M 7/30 A 8842−5J 8420−5L G06F 15/66 330 A (72)発明者 デイビッド イー. ガルビ アメリカ合衆国, カリフォルニア 94087, サニーベル, ミル クリーク レーン 590, ナンバー 303 (72)発明者 フランク エイチ. リャオ アメリカ合衆国, カリフォルニア 94087, サニーベル, ケナード ウエ イ 1655 (72)発明者 イボンヌ シー. ツェ アメリカ合衆国, カリフォルニア 94555, フリモント, ザナデュ テラ ス 34236
Claims (60)
- 【請求項1】 コード化した圧縮ビデオ信号を脱圧縮す
る装置において、バスが設けられており、メモリから圧
縮されたビデオ信号を検索し且つ前記圧縮されたビデオ
信号を前記バス上へ供給する手段が設けられており、前
記バスから受取った圧縮ビデオ信号をデコードし且つ前
記デコードしたビデオ信号を前記バス上へ供給する手段
が設けられており、前記バスから前記デコードしたビデ
オ信号を受取り前記デコードしたビデオ信号に関して逆
離散余弦変換を実施し且つ前記変換したビデオ信号を前
記バス上へ供給する手段が設けられており、前記バスか
ら変換されたビデオ信号を受取り前記変換されたビデオ
信号を出力データ信号として供給する手段が設けられて
いることを特徴とする装置。 - 【請求項2】 請求項1において、前記メモリ検索手
段、前記デコード手段、前記変換手段及び前記出力手段
がプロセサにより制御されることを特徴とする装置。 - 【請求項3】 請求項2において、前記メモリ検索手
段、前記デコード手段及び前記変換手段の各々が前記プ
ロセサによりアクセスされる制御及びデータレジスタを
有することを特徴とする装置。 - 【請求項4】 請求項1において、前記メモリ検索手段
が、更に、外部供給源から前記コード化された圧縮ビデ
オ信号を受取り且つ前記コード化された圧縮ビデオ信号
を前記バス上へ供給する手段と、前記バスからの前記コ
ード化された圧縮ビデオ信号を受取り且つ前記コード化
された圧縮ビデオ信号を前記メモリ内に格納する手段と
を有することを特徴とする装置。 - 【請求項5】 請求項1において、前記コード化した圧
縮ビデオ信号はフレーム間及びフレーム内の両方でコー
ド化されており、且つ前記デコード手段がフレーム間の
コード化画像を再生するための運動ベクトルを与えるこ
とを特徴とする装置。 - 【請求項6】 請求項5において、更に、前記運動ベク
トルを受取り且つ前記フレーム間のコード化画像を再生
する手段が設けられていることを特徴とする装置。 - 【請求項7】 請求項1において、更に、ホストコンピ
ュータと通信するためにホストバスが設けられているこ
とを特徴とする装置。 - 【請求項8】 x及びyベクトル(x,y)により表現
される二次元空間をページ型メモリシステムの直線上の
アドレス空間内にマッピングする方法において、ベクト
ルxの二次元的表現を高位ビットxh及び低位ビットx
lへ分割し、ベクトルyの二次元的表現を高位ビットy
hと低位ビットylとに分割し、尚、その場合に、xl
及びylのビットを結合することにより表現可能なメモ
リアドレスの数は前記メモリの1ページ未満であり、前
記ページ型メモリシステムのメモリアドレスとして前記
xh及びyhビットから派生される高位ビットと前記x
l及びylビットから派生される低位ビットとを有する
アドレスを供給する、上記各ステップを有することを特
徴とする方法。 - 【請求項9】 請求項8において、前記二次元空間がビ
デオディスプレイ空間であり、且つ前記xl及びylビ
ットを結合することにより表現することが可能なアドレ
スの数がビデオデータのマクロブロック内の画素数未満
でないことを特徴とする方法。 - 【請求項10】 x及びyベクトル(x,y)により表
現される二次元空間をページ型メモリシステムの直線的
なアドレス空間内にマッピングする方法において、前記
ページ型メモリシステムはワードで組織化されており且
つ各ワードは個別的にアドレス可能な第一部分及び第二
部分を有するものであって、ベクトルyの二進表現にお
いてビットyuを指定し、ベクトルxの二進表現におい
てビットxeを指定し、(i)xe及びyuの値がそれ
ぞれ1及び0である前記第一部分ベクトル及びxe及び
yuの値が0及び1であるベクトルのメモリアドレス及
び(ii)xe及びyuの値が両方とも1である前記第
二部分ベクトル及びxe及びyuの値が両方とも0であ
るベクトルのメモリアドレス内にマッピングする、上記
各ステップを有することを特徴とする方法。 - 【請求項11】 請求項10において、前記ページ型メ
モリシステムが第一モード及び第二モードのうちの一つ
のモードにおいてアドレス可能であり、前記第一モー
ド、前記第一及び前記第二部分が、前記yuビットにお
いてのみ異なるメモリアドレスを有しており、且つ前記
第二モード、前記第一及び第二部分が前記xeビットに
おいてのみ異なるメモリアドレスを有することを特徴と
する方法。 - 【請求項12】 m×n画素の画像エリアを処理する装
置において、2r個のメモリバンクが設けられており、
各メモリバンクは前記画像エリア内のm/2r × n
個の画素からなるオーバーラップしていない一つのグル
ープ内の画素の値を格納しており、各々が前記2r個の
メモリバンクの四つにアクセスすることが可能なr個の
プロセサが設けられており、前記プロセサは前記4個の
メモリバンクのうちの二つと関連する画素の処理を司ど
ることを特徴とする装置。 - 【請求項13】 請求項12において、各プロセサが2
個の隣のプロセサと関連しており、各隣のプロセサは前
記r個のプロセサのうちの一つであり、前記四つのメモ
リバンクが2m/r × n個の画素の隣接する画像エ
リアと関連しており、前記プロセサが前記2m/r ×
n個の画素の画像エリアの中間部分と関連している2
個のメモリバンク内の画素の処理を司どり、前記各隣の
プロセサは前記2m/r × n画像エリアの各側部上
の二つのグループのm/2r× n画素のうちの一つの
グループの処理を司どることを特徴とする装置。 - 【請求項14】 ビットストリーム内に埋め込まれてい
る可変長コードをデコードする装置において、各可変コ
ードは複数個のコードタイプのうちの一つであり、前記
ビットストリームから一連のビットを抽出する手段が設
けられており、各々が一つのコードタイプと関連してお
り前記一連のビットを受取り前記一連のビットから可変
長コードをデコードし前記デコードされた可変長コード
の長さ及びデコードされたデータを供給する複数個の論
理回路が設けられており、シンタックスステートマシン
に従ってコードタイプを識別する手段が設けられてお
り、前記識別されたコードタイプに従って前記デコード
されたデータから一つのデータを選択する手段が設けら
れており、前記デコードされた可変コードの長さに等し
いビット数前記ビットストリームを前進させる手段が設
けられていることを特徴とする装置。 - 【請求項15】 アキュムレータを使用してb*cの式
を計算する方法において、dn-1 ,...,d2 ,d
1 ,d0 のデジッドを有する三進表示法(1,0,−
1)でcを表現し、b*3i の形態を持ったbの倍数を
計算し、尚i=0,1,2,...,n−1であり且つ
bの各倍数をレジスタ内に格納し、且つi=0,1,
2,...,n−1として、各iに対して、di =1で
ある場合にb*3i に対応するレジスタの内容、di =
0である場合に値0、及びb*3i に対応するレジスタ
の否定された内容を前記アキュムレータへ加算する、上
記各ステップを有することを特徴とする方法。 - 【請求項16】 請求項15において、前記式がインデ
ックスモード下でメモリアドレスを計算し、更に、本方
法が、前記第一レジスタの内容とb*cとの和が所定値
を超えるか否かを表わす信号に従って選択される前記第
一及び第二レジスタのうちの一つの内容である値を前記
アキュムレータへ加算するステップを有していることを
特徴とする方法。 - 【請求項17】 直線的なアドレス空間の状態に組織化
された4n2 個のワードを収容するメモリにおいてn2
個のワードを読取り及び書込みを行なう方法において、
カウンタにより発生されたメモリアドレスに従ってメモ
リ位置内に前記4n2 個のワードのうちの最初のn2 個
のワードを書込み、前記メモリアドレスは初期的にはベ
ースアドレスであり前記最初のn2 個のワードの各々が
書込まれた後にインクリメントされるものであって、カ
ウンタにより発生されたメモリアドレスに従って前記4
n2 個のワードのうちの前記最初のn2 個のワードをメ
モリ位置から読取ると共に同時的に前記4n2 個のワー
ドのうちの2番目のn2個のワードを該メモリ位置に書
込み、尚前記メモリアドレスは初期的には前記ベースア
ドレスであり且つ後に、(a)前記カウンタ内の内容の
4個のビットを1ビットだけ回転させ、(b)前記回転
された4個のビットを1だけインクリメントさせ、且つ
(c)前記4個のビットを(a)における前記回転と反
対方向に1ビットだけ回転させることにより得られるも
のであり、前記カウンタにより発生されるメモリアドレ
スに従って前記4n2 個のワードのうちの前記2番目の
n2個のワードをメモリ位置から読取ると共に同時的に
前記4n2 個のワードのうちの3番目のn2 個のワード
を該メモリ位置へ書込み、尚前記メモリアドレスは初期
的に前記ベースアドレスであり且つ後に(a)前記カウ
ンタ内の内容のうちの4個のビットを2ビットだけ回転
させ、(b)前記回転された4個のビットを1だけイン
クリメントさせ、且つ(c)前記4個のビットを(a)
における前記回転と反対方向に2ビットだけ回転させる
ことにより得られるものであって、前記カウンタにより
発生されたメモリアドレスに従って前記4n2 個のワー
ドのうちの前記3番目のn2 個のワードをメモリ位置か
ら読取ると共に同時的に前記4n2 個のワードのうちの
4番目のn2 個のワードを該メモリ位置に書込み、尚前
記メモリアドレスは初期的には前記ベースアドレスであ
り且つ後に(a)前記カウンタ内の内容のうちの4個の
ビットを3ビットだけ回転させ、(b)前記回転した4
個のビットを1だけインクリメントし、且つ(c)前記
4個のビットを(a)における前記回転と反対方向に3
ビットだけ回転させることにより得られるものであり、
前記4番目のn2 個のワードの各々が書込まれた後にイ
ンクリメントされるカウンタにより発生されるメモリア
ドレスに従ってメモリ位置から前記4n2 個のワードの
うちの前記4番目のn2 個のワードを読取り、尚前記メ
モリアドレスが初期的には前記ベースアドレスであるこ
とを特徴とする方法。 - 【請求項18】 基準ビデオデータに関してコード化さ
れた運動ベクトル(x,y)を使用してフレーム間コー
ド化された現在のビデオデータにおいて運動補償を与え
る装置において、前記現在のビデオデータを受取る手段
が設けられており、前記基準ビデオデータを受取る手段
が設けられており、前記ビデオデータをx及びy方向に
おいて再度サンプリングするためのフィルタが設けられ
ており、前記基準ビデオデータを内挿し且つ前記内挿し
た基準ビデオデータを前記デコードしたデータと加算す
るための重み付き加算器が設けられており、前記加算さ
れたビデオデータを収容する画素メモリが設けられてい
ることを特徴とする装置。 - 【請求項19】 請求項18において、前記フィルタ
が、更に、水平方向において再度サンプリングするため
の2タップフィルタが設けられており、垂直方向におい
て再度サンプリングするための3タップフィルタが設け
られていることを特徴とする装置。 - 【請求項20】 請求項18において、前記運動ベクト
ルが第一及び第二部分を有しており、前記第一部分は再
度サンプリングのために前記フィルタへ供給され、本装
置は、更に、前記基準データのスクリーン位置と前記運
動ベクトルの前記第二部分によりオフセットされている
前記現在のビデオデータのスクリーン位置との和を計算
する手段が設けられていることを特徴とする装置。 - 【請求項21】 二つの値の双一次内挿を行なう装置に
おいて、前記内挿はc=w*a+((2n-1 )−w)*
bの形であり且つnは整数であって且つ0≦w<2n-1
であり、w=2n-1 である場合に2n −1の値を持った
w′[0:n−1]であり且つそうでない場合にはwの
信号を発生する手段が設けられており、入力データとし
て前記a及びbの値を持ったマルチプレクサM0 が設け
られており、前記マルチプレクサM0 は出力データとし
てw′[0]=1である場合に入力データaを且つそう
でない場合には入力データbを選択し、入力データとし
て前記a及びbの値を持ったマルチプレクサM1 が設け
られており、前記マルチプレクサM1 は出力データとし
てw′[1]=1である場合には入力データaを且つそ
うでない場合には入力データbを選択し、n−2個のマ
ルチプレクサM2,M3 ,...,Mn-1 が設けられて
おり、その各々は入力データとして前記a及びbの値を
有しており、i=2,...,n−1としてマルチプレ
クサMi はw′[i]が1である場合に入力データaを
選択し且つそうでない場合には入力データbを選択し、
且つ出力データとしてi−1ビットだけシフトされた前
記選択されたデータを供給し、前記選択されたデータを
加算する手段が設けられていることを特徴とする装置。 - 【請求項22】 ページモードアクセスが可能なメモリ
の第一及び第二ページ内に格納されているn×nマトリ
クスにおいて列毎に要素を処理する方法において、尚前
記処理は入力データとして同一列内の2個の隣り合う要
素を必要とするものであって、前記n×nマトリクスを
列毎に処理し、その際に前記第二ページにおけるアドレ
スを持った最初の要素において各列で停止し且つ前記第
一ページ内のアドレスを持った前記列内の最後の要素を
格納し、前記第二ページ内の前記n×nマトリクスの要
素を列毎に処理し、その際に各列において前記第一要素
から開始し且つ前記格納した最後の要素を使用する、上
記各ステップを有することを特徴とする方法。 - 【請求項23】 コード化された圧縮ビデオ信号を脱圧
縮する方法において、バスを与え、メモリから圧縮ビデ
オ信号を検索し且つ前記圧縮ビデオ信号を前記バス上へ
供給する手段を与え、前記バスから受取った圧縮ビデオ
信号をデコードし且つ前記デコードしたビデオ信号を前
記バス上へ供給する手段を与え、前記バスから前記デコ
ードしたビデオ信号を受取り前記デコードしたビデオ信
号に関して逆離散余弦変換を実施し且つ前記バス上に前
記変換したビデオ信号を供給する手段を与え、前記バス
から前記変換したビデオ信号を受取り前記変換したビデ
オ信号を出力データ信号として供給する手段を与える、
上記各ステップを有することを特徴とする方法。 - 【請求項24】 請求項23において、前記メモリ検索
手段、前記デコード手段、前記変換手段及び前記出力手
段がプロセサにより制御されることを特徴とする方法。 - 【請求項25】 請求項24において、前記メモリ検索
手段、前記デコード手段及び前記変換手段の各々が前記
プロセサによりアクセスされる制御及びデータレジスタ
を有していることを特徴とする方法。 - 【請求項26】 請求項23において、前記メモリ検索
手段を与えるステップが、前記コード化された圧縮ビデ
オ信号を外部供給源から受取り且つ前記コード化された
圧縮ビデオ信号を前記バスへ供給する手段を与え、且つ
前記コード化された圧縮ビデオ信号を前記バスから受取
り且つ前記コード化された圧縮ビデオ信号を前記メモリ
内に格納する手段を与える、上記各ステップを有するこ
とを特徴とする方法。 - 【請求項27】 請求項23において、前記コード化さ
れた圧縮ビデオ信号がフレーム間及びフレーム内の両方
においてコード化されており、且つ前記デコード手段が
フレーム間コード化画像を再生するための運動ベクトル
を与えることを特徴とする方法。 - 【請求項28】 請求項27において、更に、前記運動
ベクトルを受取り且つ前記フレーム間コード化画像を再
生する手段を与えるステップを有することを特徴とする
方法。 - 【請求項29】 請求項23において、更に、ホストコ
ンピュータと通信するためのホストバスを与えるステッ
プを有することを特徴とする方法。 - 【請求項30】 x及びyベクトル(x,y)により表
わされる二次元空間をページ型メモリシステムの直線的
アドレス空間へマッピングする装置において、ベクトル
xの二進表示を高位ビットxh及び低位ビットxlへ分
割する手段が設けられており、ベクトルyの二進表示を
高位ビットyhと低位ビットylとに分割する手段が設
けられており、尚xl及びylのビットを結合すること
により表現可能なメモリアドレスの数は前記メモリの1
ページ未満であり、前記xh及びyhビットから派生さ
れる高位ビットと前記xl及びylビットから派生され
る低位ビットとを持ったアドレスを前記ページ型メモリ
システムのメモリアドレスとして供給する手段が設けら
れていることを特徴とする装置。 - 【請求項31】 請求項30において、前記二次元空間
がビデオディスプレイ空間であり、且つ前記xl及びy
lビットを組合わせることにより表現可能なアドレスの
数はビデオデータのマクロブロック内の画素数未満でな
いことを特徴とする装置。 - 【請求項32】 x及びyベクトル(x,y)により表
わされる二次元空間をページ型メモリシステムの直線的
なアドレス空間へマッピングする装置において、前記ペ
ージ型メモリシステムはワードで組織化されており、各
ワードは個別的にアドレス可能な第一及び第二部分を有
しており、ベクトルyの二進表示においてビットyuを
指定する手段が設けられており、ベクトルxの二進表示
においてビットxeを指定する手段が設けられており、
(i)それぞれ1及び0であるxe及びyuの値を持っ
たベクトル及び0及び1であるxe及びyuの値を持っ
たベクトルを前記第一部分のメモリアドレス内に且つ
(ii)両方とも1であるxe及びyuの値を持ったベ
クトル及び両方とも0であるxe及びyuの値を持った
ベクトルを前記第二部分のメモリアドレス内にマッピン
グする手段が設けられていることを特徴とする装置。 - 【請求項33】 請求項32において、前記ページ型メ
モリシステムが第一及び第二モードのうちの一つでアド
レス可能であり、前記第一モード、前記第一及び前記第
二部分が前記yuビットにおいてのみ異なるメモリアド
レスを有しており、且つ前記第二モード、前記第一及び
第二部分が前記xeビットにおいてのみ異なるメモリア
ドレスを有していることを特徴とする装置。 - 【請求項34】 m×n個の画素の画像エリアを処理す
る方法において、2r個のメモリバンクを与え、尚各メ
モリバンクは前記画像エリア内のm/2r× n個の画
素からなるオーバーラップすることのない一つのグルー
プ内の画素の値を格納するものであって、各々が前記2
r個のメモリバンクの四つにアクセスすることが可能な
r個のプロセサを与え、尚前記プロセサは前記4個のメ
モリバンクのうちの二つに関連する画素の処理を司ど
る、上記各ステップを有することを特徴とする方法。 - 【請求項35】 請求項34において、前記プロセスを
与えるステップが、更に、各プロセサを二つの隣のプロ
セサと関連させるステップを有しており、各隣のプロセ
サは前記r個のプロセサのうちの一つであり、前記4個
のメモリバンクは2m/r × n個のピクセルからな
る隣接した画像エリアと関連しており、前記プロセサは
前記2m/r × n個の画素の画像エリアの中間部分
と関連した二つのメモリバンク内の画素の処理を司ど
り、且つ前記隣のプロセサは各々前記2m/r × n
の画像エリアの各側部におけるm/2r × n個の画
素からなる二つのグループのうちの一つの処理を司どる
ことを特徴とする方法。 - 【請求項36】 ビットストリーム内に埋め込まれた可
変長コードをデコードする方法において、尚各可変コー
ドは複数個のコードタイプのうちの一つであって、前記
ビットストリームから一連のビットを抽出し、各々が一
つのコードタイプと関連しており前記一連のビットを受
取り前記一連のビットから可変長コードをデコードし且
つ前記デコードされた可変長コードの長さ及びデコード
されたデータを供給する複数個の論理回路を与え、シン
タックスステートマシンに従ってコードタイプを識別
し、前記識別されたコードタイプに従って前記デコード
したデータから一つのデータを選択し、前記デコードさ
れた可変コードの長さに等しいビット数前記ビットスト
リームを前進させる、上記各ステップを有することを特
徴とする方法。 - 【請求項37】 アキュムレータを使用してa+b*c
の式を計算する装置において、cをdn-1 ,...,d
2 ,d1 ,d0 のデジッドを持った三進表示法(1,
0,−1)で表現する手段が設けられており、i=0,
1,2,...,n−1としてb*3i の形態を持った
bの倍数を計算し且つbの各倍数をレジスタ内に格納す
る手段が設けられており、i=0,1,2,...,n
−1として各iに対して、di =1である場合にb*3
i に対応するレジスタの内容、di =0である場合に値
0、及びb*3i に対応するレジスタの否定した値を加
算する手段が設けられていることを特徴とする装置。 - 【請求項38】 請求項37において、前記式はインデ
ックスモード下でメモリアドレスを計算し、更に、前記
第一レジスタの内容とb*cの和が所定値を超えるか否
かを表わす信号に従って選択される第一又は第二レジス
タのうちの一つの内容である値aを前記アキュムレータ
へ加算する手段が設けられていることを特徴とする装
置。 - 【請求項39】 直線的アドレス空間に組織されている
4n2 個のワードを収容するメモリにおいてn2 個のワ
ードの読取り及び書込みを行なう装置において、カウン
タにより発生されたメモリアドレスに従ってメモリ位置
内に前記4n2 個のワードのうちの最初のn2 個のワー
ドを書込む手段が設けられており、前記メモリアドレス
は初期的にはベースアドレスであり前記1番目のn2 個
のワードの各々を書込んだ後にインクリメントされ、カ
ウンタにより発生されるメモリアドレスに従って前記4
n2 個のワードのうちの前記1番目のn2 個のワードを
メモリ位置から読取ると共に前記4n2 個のワードのう
ちの2番目のn2 個のワードを該メモリ位置に書込む手
段が設けられており、前記メモリアドレスは初期的には
前記ベースアドレスであり且つ後に(a)前記カウンタ
内の内容のうちの4ビットを1ビットだけ回転させ、
(b)前記回転した4ビットを1だけインクリメントさ
せ、且つ(c)(a)における前記回転と反対方向に1
ビットだけ前記4個のビットを回転させることにより得
られ、前記カウンタにより発生されるメモリアドレスに
従って前記4n2 個のワードのうちの前記2番目のn2
個のワードをメモリ位置に書込むと共に前記4n2 個の
ワードのうちの3番目のn2 個のワードを同時的に該メ
モリ位置に書込む手段が設けられており、前記メモリア
ドレスは初期的には前記ベースアドレスであり且つ後に
(a)前記カウンタ内の内容のうちの4個のビットを2
ビットだけ回転させ、(b)前記回転した4ビットを1
だけインクリメントし且つ(c)前記4ビットを(a)
における前記回転と反対方向に2ビットだけ回転させる
ことにより得られ、前記カウンタにより発生されるメモ
リアドレスに従って前記4n2 個のワードのうちの前記
3番目のn2 個のワードをメモリ位置から読取ると共に
前記4n2 個のワードのうちの4番目のn2 個のワード
を該メモリ位置に同時的に書込む手段が設けられてお
り、前記メモリアドレスは初期的には前記ベースアドレ
スであり且つ後に(a)前記カウンタ内の内容のうちの
4ビットを3ビットだけ回転させ、(b)前記回転した
4ビットを1だけインクリメントし、且つ(c)前記4
ビットを(a)における前記回転と反対方向に3ビット
だけ回転させることにより得られ、前記4番目のn2 個
のワードの各々を書込んだ後にインクリメントされるカ
ウンタにより発生されるメモリアドレスに従って前記4
n2 個のワードのうちの前記4番目のn2個のワードを
前記メモリ位置から読取る手段が設けられており、前記
メモリアドレスは初期的には前記ベースアドレスである
ことを特徴とする装置。 - 【請求項40】 基準ビデオデータに関してコード化さ
れた運動ベクトル(x,y)を使用してフレーム間コー
ド化された現在のビデオデータにおいて運動補償を与え
る方法において、前記現在のビデオデータを受取り、前
記基準ビデオデータを受取り、x及びy方向において前
記ビデオデータを再度サンプリングするためのフィルタ
を与え、前記基準ビデオデータを内挿し且つ前記内挿し
た基準ビデオデータを前記デコードしたデータと加算す
るための重み付け加算器を与え、前記加算したビデオデ
ータを収容するための画素メモリを与える、上記各ステ
ップを有することを特徴とする方法。 - 【請求項41】 請求項40において、前記フィルタを
与えるステップが、更に、水平方向において再度サンプ
リングを行なうための2タップフィルタを与え、且つ垂
直方向において再度サンプリングを行なうために3タッ
プフィルタを与える、上記各ステップを有することを特
徴とする方法。 - 【請求項42】 請求項40において、前記運動ベクト
ルが第一及び第二部分を有しており、前記第一部分が再
度サンプリングを行なうために前記フィルタへ与えられ
ており、更に、前記基準データのスクリーン位置と前記
運動ベクトルの前記第二部分によりオフセットされてい
る前記現在のビデオデータのスクリーン位置との和を計
算する手段が設けられていることを特徴とする方法。 - 【請求項43】 二つの値の双一次内挿を行なう方法に
おいて、前記内挿はc=w*a+((2n-1 )−w)*
bの形態であり且つnは整数であり且つ0≦w<2n-1
であって、w=2n-1 である場合に2n −1の値を持っ
たw′[0:n−1]及びそうでない場合にはwの信号
を発生し、入力データとして前記a及びbの値を持った
マルチプレクサM0 を与え、尚前記マルチプレクサM0
は出力データとしてw′[0]=1である場合に入力デ
ータaを及びそうでない場合には入力データbを選択
し、入力データとして前記a及びbの値を持ったマルチ
プレクサM1 を与え、前記マルチプレクサM1 は出力デ
ータとしてw′[1]=1である場合に入力データaを
及びそうでない場合には入力データbを選択し、各々が
入力データとして前記a及びbの値を持ったn−2個の
マルチプレクサM2,M3 ,...,Mn-1 を与え、尚
i=2,...,n−1としてマルチプレクサMi が
w′[i]が1である場合に入力データaを選択し且つ
そうでない場合には入力データbを選択し且つ出力デー
タとしてi−1ビットだけシフトされた前記選択された
データを供給し、且つ前記選択したデータを加算する、
上記各ステップを有することを特徴とする方法。 - 【請求項44】 ページモードアクセスが可能なメモリ
の第一及び第二ページ内に格納されているn×nマトリ
クスにおいて列毎に要素を処理する装置において、前記
処理は入力データとして同一列内の二つの隣の要素を必
要としており、前記n×nマトリクスを列毎に処理し前
記第二ページにおけるアドレスを持った第一要素におい
て各列において停止し且つ前記第一ページ内のアドレス
を持った最後の要素を格納する手段が設けられており、
前記第二ページ内の前記n×nマトリクスの前記要素を
列毎に処理し各列において前記第一要素で開始し且つ前
記格納した最後の要素を使用する手段が設けられている
ことを特徴とする装置。 - 【請求項45】 クロック信号を使用するダイナミック
ランダムアクセスメモリにおけるCAS低及びCAS高
時間を充足する装置において、前記クロック信号の上昇
エッジ及び下降エッジを検知する手段が設けられてお
り、前記検知手段が前記クロック信号における前記上昇
エッジを検知する実質的直後に前記CAS信号に上昇エ
ッジ遷移を与え且つ前記検知手段が前記クロック信号に
おける下降エッジ遷移を検知する場合には実質的な遅延
の後に前記CAS信号に下降エッジ遷移を与える手段が
設けられていることを特徴とする装置。 - 【請求項46】 請求項45において、前記CASを与
える手段が、各々が遅延の後に前記クロック信号におけ
る遷移を表わす信号を供給する複数個の遅延要素と、前
記遅延要素の一つの出力信号を選択するためのマルチプ
レクサ手段とを有することを特徴とする装置。 - 【請求項47】 請求項46において、前記CASを与
える手段が、少なくとも1個のクロック周期の間前記C
AS信号の前記下降エッジ遷移の後に前記CAS信号を
論理低状態に維持することを特徴とする装置。 - 【請求項48】 クロック信号を使用するダイナミック
ランダムアクセスメモリにおけるCAS低及びCAS高
時間を充足する方法において、前記クロック信号の上昇
エッジ及び下降エッジを検知し、且つ前記クロック信号
における前記上昇エッジが検知される実質的に直後に前
記CAS信号内に上昇エッジ遷移を与え且つ前記クロッ
ク信号内の前記下降エッジ遷移が検知される場合に実質
的遅延の後に前記CAS信号内に下降エッジ遷移を与え
る、上記各ステップを有することを特徴とする方法。 - 【請求項49】 請求項48において、前記CAS信号
を与えるステップが、各々が遅延の後に前記クロック信
号における遷移を表わす信号を供給する複数個の遅延要
素を与え、且つ前記遅延要素のうちの一つの出力信号を
選択する上記各ステップを有することを特徴とする方
法。 - 【請求項50】 請求項49において、前記CAS信号
を与えるステップが、更に、前記CAS信号の前記下降
エッジ遷移の後少なくとも1クロック期間の間前記CA
S信号を低論理状態に維持するステップを有することを
特徴とする方法。 - 【請求項51】 ベクトルX,Yによりアドレス可能な
二次元ディスプレイ空間をメモリシステムの直線的な物
理的アドレス空間上へマッピングする方法において、前
記Xベクトルのビットを高位ベクトルXh及び低位ベク
トルXlへ分割し、nを整数として整数2n −1により
前記Xlベクトルを算術的に分割して商及び0と2n −
2との間の余りを得、前記ベクトルXhのビットと、前
記ベクトルYと、前記商と前記余りとを結合して前記ア
ドレス空間内のアドレスを形成する、上記各ステップを
有することを特徴とする方法。 - 【請求項52】 請求項51において、前記結合するス
テップが、前記Yベクトルの大きさをテストし、前記Y
ベクトルが所定値未満である場合には前記ベクトルXh
のビットと前記ベクトルYと前記商と前記余りとを結合
して前記アドレス空間内のアドレスを形成し、且つ前記
Yベクトルが前記所定値未満でない場合には以下のステ
ップを実施し、即ち前記ベクトルYのビットを高位ベク
トルYhと低位ベクトルYlとに分割し、尚前記ベクト
ルYhは前記ベクトルXlと同一のビット数であり、且
つ前記ベクトルYlと前記ベクトルXhと前記商と前記
余りと前記値2n −1のビットを結合して前記アドレス
空間内のアドレスを形成する、 上記各ステップを有することを特徴とする方法。 - 【請求項53】 ベクトルX,Yによりアドレス可能な
二次元ディスプレイ空間をメモリシステムの直線的な物
理的アドレス空間上へマッピングする装置において、前
記Xベクトルのビットを高位ベクトルXhと低位ベクト
ルXlとに分割する手段が設けられており、nを整数と
して商と0及び2n −2との間の余りを得るために前記
Xlベクトルを整数2n −1だけ算術的に割算する手段
が設けられており、前記アドレス空間内のアドレスを形
成するために前記ベクトルXhと前記ベクトルYと前記
商と前記余りのビットを結合する手段が設けられている
ことを特徴とする装置。 - 【請求項54】 請求項53において、前記結合する手
段が、前記Yベクトルの大きさをテストする手段と、前
記Yベクトルが所定値未満である場合に前記アドレス空
間内のアドレスを形成するために前記ベクトルXhと前
記ベクトルYと前記商と前記余りのビットを結合する手
段と、前記Yベクトルが前記所定値未満でない場合に前
記ベクトルYhが前記ベクトルXlと同一のビット数で
あり前記ベクトルYのビットを高位ベクトルYhと低位
ベクトルYlとに分割する手段と、前記アドレス空間内
のアドレスを形成するために前記ベクトルYlと前記ベ
クトルXhと前記商と前記余りと前記値2n −1のビッ
トを結合させる手段とを有することを特徴とする装置。 - 【請求項55】 オフチップのダイナミックランダムア
クセスメモリ(DRAM)からデータを受取る集積回路
チップにおいて、前記DRAMは入力端子上をCAS信
号を受取り、前記DRAMからのデータの到着を正確に
計時する方法において、論理状態遷移を検知する手段を
与え、前記検知手段に接続された入力ピンを与え、前記
入力ピンを前記DRAMの前記CAS信号端子と接続
し、前記CAS信号上での論理状態遷移を検知し、前記
論理状態遷移を検知した後所定の時間において前記デー
タを受取る、上記各ステップを有することを特徴とする
方法。 - 【請求項56】 オフチップのダイナミックランダムア
クメモリ(DRAM)からデータを受取る装置におい
て、前記DRAMは入力端子においてCAS信号を受取
り、論理状態遷移を検知する手段が設けられており、前
記検知手段及び前記DRAMの前記CAS信号端子へ接
続して入力ピンが設けられており、且つ前記論理状態遷
移を検知した後所定時間において前記データを受取る手
段が設けられていることを特徴とする装置。 - 【請求項57】 請求項12において、前記r個のプロ
セサの各々がロックステップで前記隣接する画像エリア
を処理することを特徴とする装置。 - 【請求項58】 請求項57において、各隣接する画像
エリアが同数の固定寸法画像エリアに分割されており、
各プロセサは、更に、前記固定寸法のエリアの各々へア
クセスするために必要とされる時間が実質的に一定であ
ることを確保する手段を有することを特徴とする装置。 - 【請求項59】 請求項34において、更に、前記r個
のプロセサの各々がロックステップで前記隣接する画像
エリアを処理することを確保するステップを有すること
を特徴とする方法。 - 【請求項60】 請求項59において、各隣接する画像
エリアは同数の固定寸法画像エリアへ分割されており、
更に、前記固定寸法エリアの各々へアクセスするために
必要とされる時間が実質的に一定であることを確保する
ステップを有することを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US66981891A | 1991-03-15 | 1991-03-15 | |
US669818 | 1991-03-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07131785A true JPH07131785A (ja) | 1995-05-19 |
Family
ID=24687870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4055338A Pending JPH07131785A (ja) | 1991-03-15 | 1992-03-13 | ビデオ適用用の脱圧縮プロセサ |
Country Status (5)
Country | Link |
---|---|
US (2) | US5379356A (ja) |
EP (1) | EP0503956A3 (ja) |
JP (1) | JPH07131785A (ja) |
CA (1) | CA2062200A1 (ja) |
DE (1) | DE503956T1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007536807A (ja) * | 2004-05-04 | 2007-12-13 | クゥアルコム・インコーポレイテッド | 時間的なスケーラビリティのために2方向予測されたフレームを組み立てるための方法及び装置 |
USRE48845E1 (en) | 2002-04-01 | 2021-12-07 | Broadcom Corporation | Video decoding system supporting multiple standards |
Families Citing this family (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9405914D0 (en) | 1994-03-24 | 1994-05-11 | Discovision Ass | Video decompression |
US5379351A (en) * | 1992-02-19 | 1995-01-03 | Integrated Information Technology, Inc. | Video compression/decompression processing and processors |
US5355450A (en) | 1992-04-10 | 1994-10-11 | Avid Technology, Inc. | Media composer with adjustable source material compression |
AU3274593A (en) * | 1991-12-13 | 1993-07-19 | Avid Technology, Inc. | Quantization table adjustment |
US6965644B2 (en) * | 1992-02-19 | 2005-11-15 | 8×8, Inc. | Programmable architecture and methods for motion estimation |
US5642437A (en) * | 1992-02-22 | 1997-06-24 | Texas Instruments Incorporated | System decoder circuit with temporary bit storage and method of operation |
US5842033A (en) | 1992-06-30 | 1998-11-24 | Discovision Associates | Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system |
US5821885A (en) * | 1994-07-29 | 1998-10-13 | Discovision Associates | Video decompression |
DE69229338T2 (de) | 1992-06-30 | 1999-12-16 | Discovision Associates, Irvine | Datenpipelinesystem |
US6263422B1 (en) | 1992-06-30 | 2001-07-17 | Discovision Associates | Pipeline processing machine with interactive stages operable in response to tokens and system and methods relating thereto |
JP3443880B2 (ja) * | 1992-09-18 | 2003-09-08 | ソニー株式会社 | ビデオ信号符号化方法及び復号化方法 |
US5379070A (en) * | 1992-10-02 | 1995-01-03 | Zoran Corporation | Parallel encoding/decoding of DCT compression/decompression algorithms |
US5404437A (en) * | 1992-11-10 | 1995-04-04 | Sigma Designs, Inc. | Mixing of computer graphics and animation sequences |
JPH06189292A (ja) * | 1992-12-15 | 1994-07-08 | Sony Corp | 動画像復号装置 |
JP3381077B2 (ja) * | 1992-12-04 | 2003-02-24 | ソニー株式会社 | 動画像復号装置 |
JP2503853B2 (ja) * | 1992-12-16 | 1996-06-05 | 日本電気株式会社 | 動画像復号システム |
US7558324B2 (en) | 1993-01-18 | 2009-07-07 | Sony Corporation | Apparatus for encoding and decoding header data in picture signal transmission |
US7075991B1 (en) | 1993-01-18 | 2006-07-11 | Sony Corporation | Apparatus for encoding and decoding header data in picture signal transmission |
FR2707780B1 (fr) * | 1993-03-19 | 1997-05-09 | Mitsubishi Electric Corp | Appareil et procédé de traitement de données d'image capables de traiter des données d'image à vitesse élevée. |
JPH07240844A (ja) * | 1993-03-19 | 1995-09-12 | Mitsubishi Electric Corp | 画像データ処理装置および画像データ処理方法 |
DE69416372T2 (de) * | 1993-03-31 | 1999-08-26 | Sony Corp. | Signalprozessor |
JPH08511385A (ja) * | 1993-04-16 | 1996-11-26 | データ トランスレイション,インコーポレイテッド | 可変量子化を用いた適応型画像圧縮 |
AU683056B2 (en) * | 1993-04-16 | 1997-10-30 | Media 100 Inc. | Adaptive video decompression |
FR2705805B1 (fr) * | 1993-05-27 | 1996-06-28 | Sgs Thomson Microelectronics | Système de traitement d'images. |
JPH0723389A (ja) * | 1993-06-28 | 1995-01-24 | Toshiba Corp | 画像処理装置 |
JPH0746628A (ja) * | 1993-06-29 | 1995-02-14 | Toshiba Corp | 画像信号符号化装置及び画像信号復号化装置 |
US5598514A (en) * | 1993-08-09 | 1997-01-28 | C-Cube Microsystems | Structure and method for a multistandard video encoder/decoder |
EP0671816B1 (en) * | 1993-09-28 | 2000-03-29 | Sony Corporation | Encoding/decoding device with all odd or all even value rounding |
US5398072A (en) * | 1993-10-25 | 1995-03-14 | Lsi Logic Corporation | Management of channel buffer in video decoders |
JPH07143488A (ja) * | 1993-11-19 | 1995-06-02 | Fujitsu Ltd | 画像データ復号化方法および装置 |
US5577191A (en) * | 1994-02-17 | 1996-11-19 | Minerva Systems, Inc. | System and method for digital video editing and publishing, using intraframe-only video data in intermediate steps |
US5598576A (en) * | 1994-03-30 | 1997-01-28 | Sigma Designs, Incorporated | Audio output device having digital signal processor for responding to commands issued by processor by emulating designated functions according to common command interface |
US5515107A (en) * | 1994-03-30 | 1996-05-07 | Sigma Designs, Incorporated | Method of encoding a stream of motion picture data |
JPH07298272A (ja) * | 1994-04-28 | 1995-11-10 | Canon Inc | 映像符号化装置 |
US5557538A (en) * | 1994-05-18 | 1996-09-17 | Zoran Microelectronics Ltd. | MPEG decoder |
US5838996A (en) * | 1994-05-31 | 1998-11-17 | International Business Machines Corporation | System for determining presence of hardware decompression, selectively enabling hardware-based and software-based decompression, and conditioning the hardware when hardware decompression is available |
US5528309A (en) | 1994-06-28 | 1996-06-18 | Sigma Designs, Incorporated | Analog video chromakey mixer |
TW245871B (en) * | 1994-08-15 | 1995-04-21 | Gen Instrument Corp | Method and apparatus for efficient addressing of dram in a video decompression processor |
US5598352A (en) * | 1994-09-30 | 1997-01-28 | Cirrus Logic, Inc. | Method and apparatus for audio and video synchronizing in MPEG playback systems |
US5838380A (en) * | 1994-09-30 | 1998-11-17 | Cirrus Logic, Inc. | Memory controller for decoding a compressed/encoded video data frame |
US5815634A (en) * | 1994-09-30 | 1998-09-29 | Cirrus Logic, Inc. | Stream synchronization method and apparatus for MPEG playback system |
US5594660A (en) * | 1994-09-30 | 1997-01-14 | Cirrus Logic, Inc. | Programmable audio-video synchronization method and apparatus for multimedia systems |
US5526472A (en) * | 1994-10-07 | 1996-06-11 | International Business Machines Corporation | Method and system for representing a bit pattern for utilization in linear or circular shift operation |
JPH08123953A (ja) * | 1994-10-21 | 1996-05-17 | Mitsubishi Electric Corp | 画像処理装置 |
EP0710033A3 (en) * | 1994-10-28 | 1999-06-09 | Matsushita Electric Industrial Co., Ltd. | MPEG video decoder having a high bandwidth memory |
US5920352A (en) * | 1994-10-28 | 1999-07-06 | Matsushita Electric Industrial Co., Ltd. | Image memory storage system and method for a block oriented image processing system |
US5623311A (en) * | 1994-10-28 | 1997-04-22 | Matsushita Electric Corporation Of America | MPEG video decoder having a high bandwidth memory |
US5638128A (en) * | 1994-11-08 | 1997-06-10 | General Instrument Corporation Of Delaware | Pixel interpolation filters for video decompression processor |
DE4441295A1 (de) * | 1994-11-21 | 1996-05-23 | Sican Gmbh | Verfahren und Schaltungsanordnung zur Adressierung von Komponenten blockweise organisierter digitaler Bilddaten in einem Speicher mit Page-Adressierung |
TW293227B (ja) * | 1994-11-24 | 1996-12-11 | Victor Company Of Japan | |
US6009202A (en) * | 1994-12-28 | 1999-12-28 | Kabushiki Kaisha Toshiba | Image information encoding/decoding system |
US5721720A (en) * | 1994-12-28 | 1998-02-24 | Kabushiki Kaisha Toshiba | Optical recording medium recording pixel data as a compressed unit data block |
US5790881A (en) * | 1995-02-07 | 1998-08-04 | Sigma Designs, Inc. | Computer system including coprocessor devices simulating memory interfaces |
JP3732867B2 (ja) * | 1995-03-09 | 2006-01-11 | 株式会社ルネサステクノロジ | 画像伸張装置 |
WO1996033575A1 (en) * | 1995-04-18 | 1996-10-24 | Advanced Micro Devices, Inc. | Video decoder using block oriented data structures |
US5812791A (en) * | 1995-05-10 | 1998-09-22 | Cagent Technologies, Inc. | Multiple sequence MPEG decoder |
US5774206A (en) * | 1995-05-10 | 1998-06-30 | Cagent Technologies, Inc. | Process for controlling an MPEG decoder |
WO1996036178A1 (en) * | 1995-05-10 | 1996-11-14 | Cagent Technologies, Inc. | Multiple sequence mpeg decoder and process for controlling same |
US5778102A (en) * | 1995-05-17 | 1998-07-07 | The Regents Of The University Of California, Office Of Technology Transfer | Compression embedding |
FR2735258B1 (fr) * | 1995-06-09 | 1997-09-05 | Sgs Thomson Microelectronics | Dispositif de decodage d'un flux de donnees |
WO1996042072A1 (en) * | 1995-06-12 | 1996-12-27 | S3, Incorporated | Mpeg video decoder |
US5778096A (en) * | 1995-06-12 | 1998-07-07 | S3, Incorporated | Decompression of MPEG compressed data in a computer system |
US5818967A (en) * | 1995-06-12 | 1998-10-06 | S3, Incorporated | Video decoder engine |
US5774676A (en) * | 1995-10-03 | 1998-06-30 | S3, Incorporated | Method and apparatus for decompression of MPEG compressed data in a computer system |
FR2737073B1 (fr) * | 1995-07-17 | 1997-09-26 | Comatlas | Procede et module de controle et de gestion de la reception de signaux numeriques a commandes independantes du canal de transmission |
KR100203243B1 (ko) * | 1995-07-31 | 1999-06-15 | 윤종용 | 에스디알에이엠에 프레임의 영상신호를 기록하는 방법 |
JPH11510620A (ja) * | 1995-08-08 | 1999-09-14 | シーラス ロジック,インコーポレイテッド | 統合されたシステム/フレームバッファメモリ及びシステム、ならびにそれらの使用方法 |
US5910909A (en) * | 1995-08-28 | 1999-06-08 | C-Cube Microsystems, Inc. | Non-linear digital filters for interlaced video signals and method thereof |
US5701263A (en) * | 1995-08-28 | 1997-12-23 | Hyundai Electronics America | Inverse discrete cosine transform processor for VLSI implementation |
GB2306829A (en) * | 1995-10-20 | 1997-05-07 | Amstrad Plc | Digital video decoding apparatus |
KR100230251B1 (ko) * | 1995-12-13 | 1999-11-15 | 윤종용 | 동영상 부호화장치에 있어서 신호처리방법 및 회로 |
US5719511A (en) * | 1996-01-31 | 1998-02-17 | Sigma Designs, Inc. | Circuit for generating an output signal synchronized to an input signal |
JP3686155B2 (ja) * | 1996-03-21 | 2005-08-24 | 株式会社ルネサステクノロジ | 画像復号装置 |
US6020924A (en) * | 1996-04-12 | 2000-02-01 | Samsung Electronics Co., Ltd. | Reduced memory size set top box which stores frames and associated motion vectors which indicate which block or blocks are to be retrieved from memory |
US5818468A (en) * | 1996-06-04 | 1998-10-06 | Sigma Designs, Inc. | Decoding video signals at high speed using a memory buffer |
US6128726A (en) * | 1996-06-04 | 2000-10-03 | Sigma Designs, Inc. | Accurate high speed digital signal processor |
CN1162010C (zh) * | 1996-08-29 | 2004-08-11 | 松下电器产业株式会社 | 图象译码设备和图象存储器 |
US6002441A (en) * | 1996-10-28 | 1999-12-14 | National Semiconductor Corporation | Audio/video subprocessor method and structure |
JPH10143131A (ja) * | 1996-11-06 | 1998-05-29 | Toshiba Corp | 復号画像表示装置とその表示メモリ制御方法 |
US6005624A (en) * | 1996-12-20 | 1999-12-21 | Lsi Logic Corporation | System and method for performing motion compensation using a skewed tile storage format for improved efficiency |
US5974184A (en) * | 1997-03-07 | 1999-10-26 | General Instrument Corporation | Intra-macroblock DC and AC coefficient prediction for interlaced digital video |
WO1998044745A1 (en) * | 1997-03-31 | 1998-10-08 | Sharp Kabushiki Kaisha | Apparatus and method for simultaneous video decompression |
CN1156171C (zh) | 1997-04-07 | 2004-06-30 | 松下电器产业株式会社 | 提高处理效率的图象声音处理装置 |
US6111913A (en) * | 1997-05-20 | 2000-08-29 | International Business Machines Corporation | Macroblock bit regulation schemes for video encoder |
US6088047A (en) * | 1997-12-30 | 2000-07-11 | Sony Corporation | Motion compensated digital video decoding with buffered picture storage memory map |
US6215822B1 (en) | 1997-12-30 | 2001-04-10 | Sony Corporation | Motion compensated digital video decoding and buffer memory addressing therefor |
AU9388298A (en) * | 1997-09-19 | 1999-04-12 | Sony Electronics Inc. | Motion compensated digital video decoding with buffered picture storage memory map |
US6184936B1 (en) | 1997-10-06 | 2001-02-06 | Sigma Designs, Inc. | Multi-function USB capture chip using bufferless data compression |
GB2332344A (en) * | 1997-12-09 | 1999-06-16 | Sony Uk Ltd | Set top box integrated circuit |
US6215824B1 (en) | 1998-05-01 | 2001-04-10 | Boom Corporation | Transcoding method for digital video networking |
US6477706B1 (en) | 1998-05-01 | 2002-11-05 | Cogent Technology, Inc. | Cable television system using transcoding method |
US6226328B1 (en) | 1998-05-01 | 2001-05-01 | Boom Corporation | Transcoding apparatus for digital video networking |
US6298087B1 (en) | 1998-08-31 | 2001-10-02 | Sony Corporation | System and method for decoding a variable length code digital signal |
US6549652B1 (en) | 1998-09-11 | 2003-04-15 | Cirrus Logic, Inc. | Method and apparatus for reducing noise during lossy transformation processes |
US7158681B2 (en) * | 1998-10-01 | 2007-01-02 | Cirrus Logic, Inc. | Feedback scheme for video compression system |
US6310978B1 (en) | 1998-10-01 | 2001-10-30 | Sharewave, Inc. | Method and apparatus for digital data compression |
US6263019B1 (en) * | 1998-10-09 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Variable rate MPEG-2 video syntax processor |
US6263023B1 (en) | 1998-10-15 | 2001-07-17 | International Business Machines Corporation | High definition television decoder |
US6624761B2 (en) | 1998-12-11 | 2003-09-23 | Realtime Data, Llc | Content independent data compression method and system |
US6690834B1 (en) | 1999-01-22 | 2004-02-10 | Sigma Designs, Inc. | Compression of pixel data |
US6356589B1 (en) | 1999-01-28 | 2002-03-12 | International Business Machines Corporation | Sharing reference data between multiple encoders parallel encoding a sequence of video frames |
US6601104B1 (en) | 1999-03-11 | 2003-07-29 | Realtime Data Llc | System and methods for accelerated data storage and retrieval |
US6262594B1 (en) | 1999-11-05 | 2001-07-17 | Ati International, Srl | Apparatus and method for configurable use of groups of pads of a system on chip |
US20010047473A1 (en) | 2000-02-03 | 2001-11-29 | Realtime Data, Llc | Systems and methods for computer initialization |
US8692695B2 (en) | 2000-10-03 | 2014-04-08 | Realtime Data, Llc | Methods for encoding and decoding data |
US9143546B2 (en) | 2000-10-03 | 2015-09-22 | Realtime Data Llc | System and method for data feed acceleration and encryption |
US7386046B2 (en) | 2001-02-13 | 2008-06-10 | Realtime Data Llc | Bandwidth sensitive data compression and decompression |
US6919592B2 (en) * | 2001-07-25 | 2005-07-19 | Nantero, Inc. | Electromechanical memory array using nanotube ribbons and method for making same |
US7259410B2 (en) * | 2001-07-25 | 2007-08-21 | Nantero, Inc. | Devices having horizontally-disposed nanofabric articles and methods of making the same |
US6574130B2 (en) | 2001-07-25 | 2003-06-03 | Nantero, Inc. | Hybrid circuit having nanotube electromechanical memory |
US6924538B2 (en) * | 2001-07-25 | 2005-08-02 | Nantero, Inc. | Devices having vertically-disposed nanofabric articles and methods of making the same |
US6835591B2 (en) * | 2001-07-25 | 2004-12-28 | Nantero, Inc. | Methods of nanotube films and articles |
US6911682B2 (en) | 2001-12-28 | 2005-06-28 | Nantero, Inc. | Electromechanical three-trace junction devices |
US7566478B2 (en) * | 2001-07-25 | 2009-07-28 | Nantero, Inc. | Methods of making carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US6643165B2 (en) | 2001-07-25 | 2003-11-04 | Nantero, Inc. | Electromechanical memory having cell selection circuitry constructed with nanotube technology |
US6706402B2 (en) * | 2001-07-25 | 2004-03-16 | Nantero, Inc. | Nanotube films and articles |
EP1286549A3 (en) * | 2001-08-21 | 2003-04-02 | Canal+ Technologies Société Anonyme | Receiver/decoder and module for use with a receiver/decoder |
US6784028B2 (en) | 2001-12-28 | 2004-08-31 | Nantero, Inc. | Methods of making electromechanical three-trace junction devices |
US7176505B2 (en) | 2001-12-28 | 2007-02-13 | Nantero, Inc. | Electromechanical three-trace junction devices |
TW561328B (en) * | 2002-03-06 | 2003-11-11 | Via Tech Inc | Static-state timing analysis method of multi-clocks |
US7034897B2 (en) * | 2002-04-01 | 2006-04-25 | Broadcom Corporation | Method of operating a video decoding system |
US8401084B2 (en) * | 2002-04-01 | 2013-03-19 | Broadcom Corporation | System and method for multi-row decoding of video with dependent rows |
US7335395B2 (en) * | 2002-04-23 | 2008-02-26 | Nantero, Inc. | Methods of using pre-formed nanotubes to make carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US7560136B2 (en) * | 2003-01-13 | 2009-07-14 | Nantero, Inc. | Methods of using thin metal layers to make carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US7415161B2 (en) * | 2004-03-25 | 2008-08-19 | Faraday Technology Corp. | Method and related processing circuits for reducing memory accessing while performing de/compressing of multimedia files |
KR100695141B1 (ko) * | 2005-02-15 | 2007-03-14 | 삼성전자주식회사 | 영상처리시스템에 있어서 메모리 억세스장치 및 방법, 데이터 기록장치 및 방법과 데이터 독출장치 및 방법 |
KR101127221B1 (ko) * | 2005-07-15 | 2012-03-29 | 삼성전자주식회사 | 주파수 공간에서 컬러 성분간 예측을 이용한 컬러영상부호화/복호화 방법 및 장치 |
KR101138393B1 (ko) * | 2005-07-15 | 2012-04-26 | 삼성전자주식회사 | 부호화 모드에 따른 컬러 성분간 예측을 이용한 컬러 영상및 비디오 부호화/복호화 방법 및 장치 |
US8127058B1 (en) * | 2008-07-29 | 2012-02-28 | Marvell International Ltd. | System and method of video decoding using hybrid buffer |
US9348751B2 (en) * | 2009-09-25 | 2016-05-24 | Nvidia Corporation | System and methods for distributing a power-of-two virtual memory page across a non-power-of two number of DRAM partitions |
US8218621B2 (en) * | 2010-01-26 | 2012-07-10 | Himax Media Solutions, Inc. | Data-mapping method and cache system for use in a motion compensation system |
US8359453B2 (en) | 2010-09-13 | 2013-01-22 | International Business Machines Corporation | Real address accessing in a coprocessor executing on behalf of an unprivileged process |
CN104011655B (zh) | 2011-12-30 | 2017-12-12 | 英特尔公司 | 管芯上/管芯外存储器管理 |
US10001993B2 (en) | 2013-08-08 | 2018-06-19 | Linear Algebra Technologies Limited | Variable-length instruction buffer management |
US11768689B2 (en) | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
US10283091B2 (en) * | 2014-10-13 | 2019-05-07 | Microsoft Technology Licensing, Llc | Buffer optimization |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4546451A (en) * | 1982-02-12 | 1985-10-08 | Metheus Corporation | Raster graphics display refresh memory architecture offering rapid access speed |
DE3486494T2 (de) * | 1983-12-26 | 2004-03-18 | Hitachi, Ltd. | Graphisches Musterverarbeitungsgerät |
US4748511A (en) * | 1984-06-07 | 1988-05-31 | Raytel Systems Corporation | Teleradiology system |
JPS61130985A (ja) * | 1984-11-21 | 1986-06-18 | テクトロニツクス・インコーポレイテツド | 多ビツト・ピクセル・データ蓄積装置 |
US4703349A (en) * | 1985-03-19 | 1987-10-27 | Picturetel Corporation | Method and apparatus for multi-dimensional signal processing using a Short-Space Fourier transform |
US4677483A (en) * | 1985-09-27 | 1987-06-30 | Rca Corporation | Interpolation filter with motion compensation |
FR2589020B1 (fr) * | 1985-10-22 | 1987-11-20 | Eude Gerard | Procede de codage hybride par transformation pour la transmission de signaux d'image |
GB2199678B (en) * | 1987-01-13 | 1990-11-14 | Ferranti Plc | Pixel memory arrangement for information display system |
DE3854337T2 (de) * | 1987-06-09 | 1996-02-01 | Sony Corp | Bewegungskompensierte Interpolation von digitalen Fernsehbildern. |
EP0298166B1 (en) | 1987-07-08 | 1992-09-23 | International Business Machines Corporation | Data processing machine for automatically changing data formats |
US4897717A (en) * | 1988-03-30 | 1990-01-30 | Starsignal, Inc. | Computer-based video compression system |
GB2231748B (en) * | 1989-04-27 | 1993-08-18 | Sony Corp | Motion dependent video signal processing |
GB2231743B (en) * | 1989-04-27 | 1993-10-20 | Sony Corp | Motion dependent video signal processing |
US5057918A (en) * | 1989-09-15 | 1991-10-15 | U.S. Philips Corporation | Arrangement for encoding two-dimensional information, grouped in periodical information clusters using motion vector processing in a hybrid DPCM encoder |
US4969040A (en) * | 1989-10-26 | 1990-11-06 | Bell Communications Research, Inc. | Apparatus and method for differential sub-band coding of video signals |
US4974078A (en) * | 1989-11-13 | 1990-11-27 | Eastman Kodak Company | Digital compression method and system with improved coding efficiency |
US5239654A (en) * | 1989-11-17 | 1993-08-24 | Texas Instruments Incorporated | Dual mode SIMD/MIMD processor providing reuse of MIMD instruction memories as data memories when operating in SIMD mode |
FR2657978A1 (fr) * | 1990-02-02 | 1991-08-09 | Philips Electronique Lab | Procede de stockage en memoire pour le traitement d'images, et dispositif pour la mise en óoeuvre du procede. |
US5253078A (en) | 1990-03-14 | 1993-10-12 | C-Cube Microsystems, Inc. | System for compression and decompression of video data using discrete cosine transform and coding techniques |
US5136371A (en) * | 1990-03-15 | 1992-08-04 | Thomson Consumer Electronics, Inc. | Digital image coding using random scanning |
US5293480A (en) * | 1990-08-06 | 1994-03-08 | At&T Bell Laboratories | High resolution graphics system architecture |
US5353119A (en) * | 1990-11-15 | 1994-10-04 | Sony United Kingdom Limited | Format conversion of digital video signals, integration of digital video signals into photographic film material and the like, associated signal processing, and motion compensated interpolation of images |
US5388207A (en) * | 1991-11-25 | 1995-02-07 | Industrial Technology Research Institute | Architecutre for a window-based graphics system |
-
1992
- 1992-03-03 CA CA002062200A patent/CA2062200A1/en not_active Abandoned
- 1992-03-13 DE DE0503956T patent/DE503956T1/de active Pending
- 1992-03-13 EP EP19920302172 patent/EP0503956A3/en not_active Ceased
- 1992-03-13 JP JP4055338A patent/JPH07131785A/ja active Pending
-
1993
- 1993-04-13 US US08/046,474 patent/US5379356A/en not_active Expired - Lifetime
-
1994
- 1994-08-26 US US08/296,943 patent/US5608888A/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE48845E1 (en) | 2002-04-01 | 2021-12-07 | Broadcom Corporation | Video decoding system supporting multiple standards |
JP2007536807A (ja) * | 2004-05-04 | 2007-12-13 | クゥアルコム・インコーポレイテッド | 時間的なスケーラビリティのために2方向予測されたフレームを組み立てるための方法及び装置 |
JP4805915B2 (ja) * | 2004-05-04 | 2011-11-02 | クゥアルコム・インコーポレイテッド | 時間的なスケーラビリティのために2方向予測されたフレームを組み立てるための方法及び装置 |
US8320464B2 (en) | 2004-05-04 | 2012-11-27 | Qualcomm Incorporated | Method and apparatus to construct bi-directional predicted frames for temporal scalability |
Also Published As
Publication number | Publication date |
---|---|
DE503956T1 (de) | 1994-07-28 |
EP0503956A2 (en) | 1992-09-16 |
EP0503956A3 (en) | 1993-09-15 |
CA2062200A1 (en) | 1992-09-16 |
US5379356A (en) | 1995-01-03 |
US5608888A (en) | 1997-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5608888A (en) | Method and apparatus for mapping data of a 2-dimensional space from a linearly addressed memory system | |
US5815646A (en) | Decompression processor for video applications | |
US5870497A (en) | Decoder for compressed video signals | |
US5900865A (en) | Method and circuit for fetching a 2-D reference picture area from an external memory | |
US6141721A (en) | Method of asynchronous memory access | |
EP0572263A2 (en) | Variable length code decoder for video decompression operations | |
US6122442A (en) | Structure and method for motion estimation of a digital image by matching derived scores | |
US5812791A (en) | Multiple sequence MPEG decoder | |
US5329318A (en) | Method for optimizing image motion estimation | |
US5386233A (en) | Method for efficient memory use | |
US6157740A (en) | Compression/decompression engine for enhanced memory storage in MPEG decoder | |
US5469208A (en) | Dequantization using decrements and multiply | |
WO1994026066A1 (en) | Video interface unit | |
US5809174A (en) | Decompression processor for video applications | |
US5528528A (en) | Method, apparatus, and system for transforming signals | |
US5844609A (en) | Decoder and method for decoding of coded picture-, video- and film information | |
US5774676A (en) | Method and apparatus for decompression of MPEG compressed data in a computer system | |
Li et al. | Architecture and bus-arbitration schemes for MPEG-2 video decoder | |
US5781134A (en) | System for variable length code data stream position arrangement | |
US5910909A (en) | Non-linear digital filters for interlaced video signals and method thereof | |
US5426462A (en) | Apparatus for encoding signals using a configurable transform circuit | |
Sima et al. | Color space conversion for MPEG decoding on FPGA-augmented trimedia processor | |
US20060022987A1 (en) | Method and apparatus for arranging block-interleaved image data for efficient access | |
US6614437B1 (en) | Apparatus and method for efficient memory utilization in an electronic system | |
KR100270798B1 (ko) | 복수의 mpeg 오디오 및 비디오 신호를 디코딩하기 위한 시스템 |