JPH08172624A - Mpeg信号復号方法及び装置 - Google Patents

Mpeg信号復号方法及び装置

Info

Publication number
JPH08172624A
JPH08172624A JP7224473A JP22447395A JPH08172624A JP H08172624 A JPH08172624 A JP H08172624A JP 7224473 A JP7224473 A JP 7224473A JP 22447395 A JP22447395 A JP 22447395A JP H08172624 A JPH08172624 A JP H08172624A
Authority
JP
Japan
Prior art keywords
time
data
video
circuit
word
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP7224473A
Other languages
English (en)
Inventor
Adrian P Wise
ピー. ワイズ エイドリアン
Kevin D Dewar
ディ. デュワー ケビン
Anthony Mark Jones
マーク ジョーンズ アンソニー
William Sotheran Martin
ウィリアム ソザーラン マーティン
Colin Smith
スミス コリン
Helen Rosemary Finch
ローズマリー フィンチ ヘレン
Anthony Peter J Claydon
ピーター ジョン クレイドン アンソニー
Donald William W Patterson
ウィリアム ダブリュ. パターソン ドナルド
Barnes Mark
バーンズ マーク
Peter Kuligowski Andrew
ピーター カリゴウスキ アンドリュ
William P Robbins
ピー. ロビンズ ウィリアム
Nicholas Birch
バーチ ニコラス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Discovision Associates
Original Assignee
Discovision Associates
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26305370&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH08172624(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from GB9415413A external-priority patent/GB9415413D0/en
Application filed by Discovision Associates filed Critical Discovision Associates
Publication of JPH08172624A publication Critical patent/JPH08172624A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods 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
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Television Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Television Signal Processing For Recording (AREA)
  • Studio Circuits (AREA)

Abstract

(57)【要約】 【課題】 パイプライン処理マシンとして配置された二
線式インターフェースにより相互接続された複数のステ
ージを用いたMPEGビデオ拡張方法及び装置を提供す
る。 【解決手段】 制御トークン及びデータトークンがトー
クン形式の制御及びデータの両方を担持する単一の二線
式インターフェースに渡される。トークンデコード回路
がステージの内の或るものに配置され、トークンの内の
或るものをそのステージに関係する制御トークンとして
認識し、認識されない制御トークンをパイプラインに沿
って通過させる。再整理処理回路が選択されたステージ
内に配置され、認識された制御トークンに応答し、識別
されたデータトークンを扱うようにそのステージを再構
成する。メモリアドレス指定、共通処理ブロックを用い
たデータ変換、時間同期、非同期バッファリング、ビデ
オ情報の記憶、並列ハフマンデコーダ、等を含むシステ
ムを実動化するために種々の独特が支援サブ・システム
の回路及び処理技術が開示されている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は複数のオーディオ及びビ
デオ信号を復号化する新たな改良システムに関し、特
に、複数のMPEGオーディオ及びビデオ信号を復号化
する新たな改良システムに関する。
【0002】
【従来の技術】本発明の直列パイプライン処理システム
はユニークで特殊な対話型接続トークンをコントロール
トークン及びデータトークンの形式で再構成可能なパイ
プラインプロセッサとして設けられた複数の適応伸張回
路等に転送するために用いられる単一の2線バスを備え
ている。
【0003】米国特許5,111,292号は例えば、
地上伝送用のHDTV(高品位テレビ)信号を符号化/
復号化する装置を開示しており、その装置は伝送用の高
及び低優先チャンネルの間に圧縮したビデオコードワー
ドを分解する優先選択プロセッサを備えている。高品位
ビデオ源信号に応答して圧縮回路は圧縮したビデオデー
タを示す階層コードワードCWと、コードワードCWに
よって表されるデータの種類を定める関連コードワード
Tとを供給する。コードワードCW及びTに応答する優
先選択プロセッサは所定のデータブロックのビット数を
計数し、各チャンネルに備えられるべき各ブロックのビ
ット数を決定する。その後、プロセッサはコードワード
CWを高及び低優先コードワード列に分解する。その高
及び低優先コードワード列は画像再生に対して比較的よ
り重要性の高い及び低い圧縮したビデオデータに各々対
応する。
【0004】米国特許5,122,875号はHDTV
信号を符号化/復号化する装置を開示している。その装
置は高品位ビデオ源信号に応答して圧縮したビデオデー
タを示す階層コードワードCWと、コードワードCWに
よって表されるデータの種類を定める関連コードワード
Tとを供給する圧縮回路を備えている。コードワードC
W及びTに応答する優先選択回路はコードワードCWを
高及び低優先コードワード列に分解する。その高及び低
優先コードワード列は画像再生に対して比較的より重要
性の高い及び低い圧縮したビデオデータに各々対応す
る。高及び低優先コードワード列に応答して転送プロセ
ッサは高及び低優先コードワードの高及び低優先転送ブ
ロックを各々形成する。各転送ブロックはヘッダ、コー
ドワードCW及びエラー検出チェックビットを含む。各
転送ブロックは追加のエラーチェックデータを供給する
前方エラーチェック回路に供給される。その後、高及び
低優先データはモデムに供給され、各伝送用の搬送波に
対して直角振幅変調が施される。
【0005】よって、この技術分野の当業者は従来シス
テムの欠点を取り除く新たな改良したビデオ伸張システ
ムが要求されていることを長く感じていた。本発明はこ
の要求を十分に満たすものである。本発明の実施を明確
にする記載において次の項目は度々用いられ、次の用語
説明によって定義される。 用語説明 ブロック:8行×8列のマトリックス画素、すなわち6
4のDCT(離散コサイン変換)係数(ソース、量子
化、逆量子化)。 色度(成分):ビットストリームの中で定まる形式で主
要な色に関する2つの色差信号のいずれか1つを表わす
マトリックス、ブロック又は信号画素。色差信号に用い
るシンボルはCr及びCbである。 復号化表現:符号化形式で表される如きデータ成分。 復号化ビデオビットストリーム:この明細書で定められ
るような1以上の連続映像の復号化表現。 復号化順:映像が伝送され及び復号化される順番。この
順番は表示順と同一である必要はない。 成分:映像を構成する3つのマトリックス(輝度、及び
2つの色度)のいずれか1つからのマトリックス、ブロ
ック又は信号画素。 圧縮:データ項目を表すために用いられるビット数への
低減。 デコーダ:復号化処理手段の具体例。 復号化(処理):入力復号化ビットストリームを読み取
り復号化した映像又はオーディオサンプルを生成するこ
の明細書で定めた処理手段。 表示順:復号化映像が表示される順番。これは、一般
に、復号化映像がエンコーダの入力で存在した順番と同
一である。 符号化(処理):この明細書で定められたように入力映
像又はオーディオサンプルのストリームを読み取り有効
な復号化ビットストリームを生成するこの明細書には特
定されていない処理手段。 内部(イントラ)復号化:マクロブロック又は映像の復
号化。その復号化はマクロブロック又は映像からだけの
情報を使用する。 輝度(成分):ビットストリームの中で定まる形式で主
要な色に関し信号の単色表現を表わすマトリックス、ブ
ロック又は信号画素。輝度に用いられるシンボルはYで
ある。 マクロブロック:映像の輝度成分の16×16の部分か
ら生じる4つの8×8ブロックの輝度データと、2つ
(4:2:0クロマフォーマット)、4つ(4:2:2
クロマフォーマット)、又は8つ(4:4:4クロマフ
ォーマット)の対応する8×8ブロックの色度データ。
マクロブロックは画素データを述べるために使用された
り、この明細書のこの部分で定めたシンタックス(sy
ntax)のマクロブロックヘッダに定められた画素値
及びその他のデータ成分の復号化表現のために用いられ
る。この分野の当業者にはその使用は文脈から明らかで
ある。 動き補償:画素の予測能力を改良するために動きベクト
ルの使用。予測は予測エラー信号を形成するために用い
られる予め復号化された画素値を含む過去及び/又は未
来の基準映像にオフセットを与えるために動きベクトル
を使用する。 動きベクトル:現在の映像の座標位置から基準映像の座
標にオフセットを与える動き補償のために用いられる2
次元ベクトル。 非内部復号化:マクロブロック又は映像の復号化。その
復号化はそのマクロブロック又は映像からだけでなく他
の時間に生じるマクロブロック及び映像からの情報をも
使用する。 画素;PEL:映像の画素 映像:信号源、復号又は復元した映像データ。信号源又
は復元した映像は輝度信号及び2つの色度信号を表わす
8ビット数の3つの長方形マトリックスからなる。プロ
グレッシィブビデオでは1つの映像は1つのフレームに
等しいが、インターレースビデオでは1つの映像は1つ
のフレーム、すなわち前後関係のフレームの表フィール
ド又は裏フィールドに関連する。 予測:現在復号化されている画素値又はデータ成分の見
込みを与えるために予測器の使用。 再構成可能な処理ステージ(RPS):認識したトーク
ンに応答して様々な動作を行なうためにそれ自身を再構
成する段階。 スライス:連続したマクロブロック。 トークン:制御及び/又はデータ機能用の対話型接続メ
ッセージパッケージの形状の一般的な結合ユニット スタートコード[システム及びビデオ]:単一の符号化
ビットストリームに挿入される32ビットのコード。そ
れらは符号化シンタックスの構成のいくつかを識別する
ことを含む様々な目的で用いられる。 可変長符号化;VLC:頻繁に起きるイベントに短いコ
ードワードを割り当てたまに起きるイベントに長いコー
ドワードを割り当てる符号化の可逆処理。 ビデオ列:1以上の連続映像。
【0006】
【課題を解決するための手段】本発明は様々な制御及び
DATAトークンを有する2線パイプラインシステムに
おける使用に特に適用される新たな改良された方法及び
装置を提供する。システムの主要な成分は、スタート符
号デコーダと、ハフマンデコーダ及びマイクロブログラ
マブル状態マシン(MSM)を含むビデオ分析器と、逆
離散コサイン変換(IDCT)と、連動したアドレス発
生ユニットを有する同期DRAMコントローラと、適正
予測回路と、アップサンプリング及びビデオタイミング
発生を含む表示回路とを含む。
【0007】更に重要なことは、本発明の様々な実施例
は、パイプライン処理機器として配置される2線インタ
ーフェースによって相互接続された複数のステージ
(段)を利用するMPEGビデオ伸張方法及び装置を含
むビデオ復号化システムの様々な態様において更なる改
善のために長く存在した要求を満たす。制御トークン及
びDATAトークンはトークン形式で制御及びデータ両
方を運搬する1つの2線インターフェースを介して供給
する。トークン復号回路は設けられたステージに適切な
制御トークンとして所定のトークンを識別し、パイプラ
インに介して非認識の制御トークンを供給するために所
定のステージに設けられる。再構成処理回路は選択され
たステージに設けられ、識別された制御トークンに応答
して識別したDATAトークンを処理するようなステー
ジを再構成する。独特のサーポート副システム回路及び
処理技術の幅広い変更は、メモリアドレス指定、共通処
理ブロックを用いるデータ変換、時間同期、非同期スイ
ングバッファリング、ビデオ情報の記憶、並列ハフマン
デコーダ等を含んでシステムを実施するために開示され
る。
【0008】例として、また必要に限定するためではな
く、本発明は、様々な特徴の中に、表示時間を決定する
タイムスタンプと、第1の回路内のシステム時間を初期
化するクロック基準と、第1の回路内のシステム時間を
維持するクロック基準との伝達をなす第1時間カウンタ
と、その第1時間カウンタと同期をとった第2の回路内
のクロック基準によって初期化される第2時間カウンタ
とを有して時間の同期をとり、システム時間のローカル
コピーを維持し、タイムスタンプと第2時間カウンタと
を比較することによりシステム時間のローカルコピーと
システム時間との間の表示タイミングエラーを決定する
装置を備えている。それは更に、表示時間を決定するた
めにタイムスタンプと、システムデコーダ内のシステム
時間を初期化するクロック基準と、システムデコーダ内
のシステム時間を維持するクロック基準との伝達をなす
第1時間カウンタと、その第1時間カウンタと同期をと
った第2の回路内のクロック基準によって初期化される
第2時間カウンタとを用いてシステムデコーダ及びビデ
オデコーダとの同期をとり、システム時間のローカルコ
ピーを維持し、タイムスタンプと第2時間カウンタとを
比較することによりシステム時間のローカルコピーとシ
ステム時間との間の表示タイミングエラーを決定する装
置を備えている。
【0009】その他の実施例は、第1の回路内のシステ
ム時間を初期化するクロック基準を用いて第1の回路及
び第2の回路の同期をとる装置を備え、第1回路はシス
テム時間を維持するためのクロック基準との伝達をなす
時間カウンタを有し、その装置は更に、基本ストリーム
時間を与えるために第1の回路内に第1基本ストリーム
タイムカウンタを含む。第1の回路はタイムスタンプを
入力するように適合され、第1の回路は基本ストリーム
時間とタイムスタンプとを加算しシステム時間を減算す
ることにより同期時間を発生する。第2の回路は第1の
回路からの同期時間を入力するように適合され、基本ス
トリーム時間のローカルコピーを与え、かつ同期時間と
基本ストリーム時間のローカルコピーとを比較すること
によりシステム時間とタイムスタンプとの間のタイミン
グエラーを決定する第1基本ストリーム時間カウンタと
同期した第2基本ストリーム時間カウンタを有する。こ
のように、クロック基準信号はタイミングエラーを決定
するために第2の回路に直接供給される必要はない。
【0010】他の実施例においては、第1の回路及び第
2の回路の同期をとる装置は第1の回路内のシステム時
間を初期化するクロック基準を有している。第1の回路
はシステム時間を維持するクロック基準との伝達をなす
時間カウンタと、ビデオ復号時間を与える第1ビデオ時
間カウンタとを有している。その第1の回路はビデオタ
イムスタンプを入力する用に適合され、ビデオ復号時間
をビデオタイムスタンプに加算しシステム時間を減算す
ることにより同期時間を発生する。第2の回路は第1の
回路からの同期時間を入力するように適合され、ビデオ
復号時間のローカルコピーを与え、かつ同期時間とビデ
オ復号時間のローカルコピーとを比較することによりシ
ステム時間とビデオタイムスタンプとの間のタイミング
エラーを決定する第1ビデオ時間カウンタと同期した第
2ビデオ時間カウンタを有する。よって、クロック基準
信号はタイミングエラーを決定するために第2の回路に
直接供給される必要はない。
【0011】本発明は、またパケットヘッダ内にタイム
スタンプを有するビデオデータストリームを備えること
によりタイミング情報を与える方法を含み、そのタイム
スタンプはデータのパケットの内の最初の映像に関して
いる。次のステップにおいて、レジスタはパケットヘッ
ダから取り出されレジスタ内に保持される有効なタイム
スタンプ情報を示すために用いられるフラグを備える。
次に、タイムスタンプはビデオデータストリームから取
り去られてレジスタ内に保持される。次いで、その方法
は映像開始となり、それに続いてフラグ状態をチェック
することによって有効タイムスタンプ情報がレジスタに
含まれるか否かを判別するためレジスタの状態を試験す
る。有効タイムスタンプ情報がレジスタ内に含まれるな
らばタイムスタンプは映像開始に応答して発生され、そ
して、そのタイムスタンプはデータストリーム内に戻さ
れる。
【0012】他の実施例は上記したように、基本ストリ
ーム時間カウンタが16ビットに制限される装置を含
む。同様に、上記したように、基本ストリームデコーダ
内に設けられた第2基本ストリーム時間カウンタが16
ビットに制限される装置が備えられている。更に、上記
したように、同期時間は基本ストリームデコーダを制御
するために16ビットにされる装置が備えられている。
【0013】また、本発明はビデオを復号し、閾値に対
する表示時間エラーを決定する処理を有する。それは更
なる処理を行い、タイムスタンプトークンが示されてい
るか否かを判別し、そのタイムスタンプトークンをビデ
オデータと比較するためにトークン内のビデオデータを
分析し、タイミングエラー量を判別するために比較した
値を発生する。次に、閾値に対して比較されたときに比
較した値がタイミングエラーが示されたときの許容パラ
メータ内にあるか否かが判別され、その比較した値が許
容パラメータ以外にあるときを示す。
【0014】代替実施例はシステムデコーダとビデオデ
コーダとを用いる装置を含む。そのシステムデコーダは
MPEGシステムストリーム及び多重分離ビデオデータ
とそのストリームからのビデオタイムスタンプとを受け
入れるように適合される。そのシステムデコーダはシス
テム時間を示す第1時間カウンタを有する。ビデオデコ
ーダはほぼ一定のレートでビデオデータを受け入れ、か
つ可変レートでそのビデオデータを出力し、ビデオタイ
ムスタンプを供給するビデオデコーダバッファを有す
る。ビデオデータから映像を復号するビデオデコーダは
復号された映像のためのビデオタイムスタンプを適切な
表示時間を決定するように第2時間カウンタと比較す
る。第1の回路にシステム時間(SY)、タイムスタン
プ(TS)及び基本ストリーム時間(ET)を与えるこ
とにより第1の回路と第2の回路との間の時間エラーを
決定し、基本ストリーム時間(ET)、タイムスタンプ
(TS)及びシステム時間(SY)を用いることによっ
て同期時間(X)を得て、式X=ET+TS−SYに応
じて第2の回路に同期時間(X)を与えかつ同期した基
本ストリームタイム(ET2)を発生し、同期した時間
を用いることによって時間エラーを得る方法が備えら
れ、よって、第2の回路にシステム時間を供給すること
なく、式ET2−Xに応じて第1の回路は第2の回路に
同期した時間にすることができる。
【0015】第1の回路と第2の回路との間の時間エラ
ーを決定する他の方法は次のステップを有している。す
なわち、第1の回路にタイムスタンプ(TS)及び初期
時間(IT)を与え、タイムスタンプ(TS)及び初期
時間(IT)を用いることによって同期時間(X)を得
て、式X=TS−1に応じて第2の回路に同期時間
(X)を与えると共に同期した基本ストリーム時間(E
T)を発生し、同期した時間(X)を用いて式ET−X
に応じて時間エラーを得る。このように、第1の回路
は、第2の回路にシステム時間を供給することなく、第
2の回路に同期した時間にすることができる。
【0016】更に、第1の回路と第2の回路との間の時
間エラーを決定する他の方法は次のステップを有してい
る。すなわち、第1の回路にシステム時間(SY)、ビ
デオタイムスタンプ(VTS)及びビデオ復号時間(V
T)を与え、ビデオ復号時間(VT)、ビデオタイムス
タンプ(VTS)及びシステム時間(SY)を用いるこ
とによって同期時間(X)を得て、式X=VT+VTS
−SYに応じて第2の回路へ同期時間(X)を与えると
共に第1の回路内のビデオ復号時間(VT)に同期した
第2の回路内のビデオ復号時間(VT2)を発生し、同
期した時間(X)を用いかつ式VT2−Xに応じて時間
エラーを得る。よって、第1の回路は、第2の回路にシ
ステム時間を供給することなく、第2の回路に同期した
時間にすることができる。
【0017】本発明においては、並列ハフマンデコーダ
ブロックは、ハフマン符号化可変長符号(Huffma
n coded Variable Length C
odes:VLCs)及び固定長符号(Fixed L
ength Codes:FLCs)を復号化し、分析
マイクロプログラマブル状態マシン(Micropro
grammable state machine:M
SM)の制御の元でトークンを介して供給し、高い処理
能力を維持する。
【0018】本発明の実施例においては、符号テーブル
索引技術は動作要求を達成するためハフマン符号を復号
化し、実際に不規則又は非標準である第2のMPEG−
2変換係数テーブルを処理するために用いられる。本発
明の実施は、外部コントローラの助けなく単一のサイク
ル内にストリームからのある非常に複雑な成分を復号化
することを容易にする。そのような複雑な成分の例はエ
スケープ符号化係数(Escape−coded co
efficients)、イントラDC値(Intra
−DC values)及び動きベクトルデルタ(Mo
tion Vector delta)であり、それら
の全ては結合したVLC/FLC成分としてストリーム
内に与えられる。
【0019】VLCを復号化するため入力は、最上位及
び最下位データを処理する2つの入力データレジスタに
先ず読み込まれる。セレクタはROM入力で次のVLC
の始めを割り当てるために用いられる。よって、非常に
早いVLCを復号するためにセレクタはその59ビット
入力の最初の28ビットを出力し、それらの最初の16
ビットはハフマン符号ROM302に供給される。それ
に続くVLCに対してセレクタはここまで符号化された
ビットの合計の計数値に応じた入力を効果的にシフトす
る。その計数値は復号化されるままに、実行合計に各V
LCのサイズを加算することによって保持される。様々
なワード幅は、復号することができる最大符号化サイズ
(28ビットのMPEG−1エスケープ符号化係数)の
結果と、16ビットである最大VLCサイズ(DCT係
数テーブル)とある。
【0020】「テーブル選択」入力はMPEGによって
要求される様々な異なるハフマン符号テーブル間の選択
のために用いられる。ROMはセレクタ/シフタで制御
されるアドレスを有している。ROMはVLCテーブル
索引計算を行い、それに続いてデータ索引動作(ind
ex−to−operation)が復号化データを生
成する。
【0021】索引計算は、与えられたデータを生成する
ハフマン符号を処理するために実行される「ドントケア
(don’t care)」マッチングを有する内容ア
ドレス指定可能メモリ(CAM)の動作でる。索引生成
は(むしろアルゴリズム的に)テーブル索引(ルックア
ップ)方法で行われるので、標準のテーブルを処理する
制限はない。
【0022】本発明において、ROMのアドレスは2つ
のフィールド内にある。大きいフィールドは復号化され
るべきビットパターンであり、小さいフィールドは調べ
られるべきハフマン符号を選択する。完全なMPEG符
号テーブルに加えて、ROMは所定の符号テーブル用に
存在する不当なVLCパターンを識別する入力を有す
る。
【0023】本発明の他の実施例において、プロシージ
ャ (処理)は、可変幅データをアドレス指定するため
に用いられるべき固定ビット数を有し、かつ幅設定フィ
ールド及びアドレスフィールドを有する固定幅を有する
ワードを与えるために用いられる。また、データをアド
レス指定するために用いられるべき固定ビット数を有
し、かつ置換フィールド及びアドレスフィールドを有す
る固定幅ワードを有するメモリをアドレス指定するプロ
シージャと、状態マシン及び演算コアを含んでメモリを
アドレス指定する装置とがある。
【0024】メモリをアドレス指定するプロシージャ
は、可変幅データをアドレス指定するために用いられる
べき所定の固定ビット数を有する固定幅ワードを供給
し、幅設定フィールドと、終端マーカとして作用するた
め少なくとも1ビットを幅設定フィールドに与えるアド
レスフィールドとを備えた固定幅ワードを設定し、デー
タのアドレスを設定する複数のビットからなるアドレス
フィールドを設定し、可変幅データのサイズと反比例し
てアドレスフィールド内のビットサイズを変化させ、可
変幅データのサイズに比例して幅設定フィールド内のビ
ット数を変化させ、可変幅データをアドレス指定する固
定幅ワードを保持する一方、幅設定フィールド及びアド
レスフィールドの幅を変化させることによって特徴づけ
られる。
【0025】メモリをアドレス指定するプロシージャ
は、また、データのアドレスを設定する複数のビットか
らなるアドレスフィールドを設定し、少なくとも1つの
置換ビットからなる可変幅置換フィールドを設定し、そ
の置換フィールドはアドレスフィールドと置換フィール
ドとの間に終端マーカとして作用するために少なくとも
1ビットを有し、分離のアドレス指定源からの置換ビッ
トを示すために置換フィールドを用い、可変幅データを
アドレス指定する固定幅ワードを保持する一方、アドレ
スフィールドの幅と置換フィールドの幅とを逆に変化さ
せる。
【0026】本発明においては、メモリ内の可変幅デー
タをアドレス指定する処理は、所定の幅でかつ部分ワー
ドからなるワードを有するメモリを備え、最下位ビット
調整にアクセスさせるために部分ワードを循環させ、ア
クセスしたワードが部分ワードとして認識されるように
ワードの残り部分を拡張し、ワードの残り部分を元に戻
して部分ワードが元の位置に戻るまでワードを循環させ
ることによって特徴づけられる。
【0027】本発明は、メモリをアドレス指定する方法
及び装置を含み、ワードは可変幅データをアドレス指定
するために用いられるべき固定ビット数を有し、かつ幅
設定フィールド及びアドレスフィールドを有する固定幅
で与えられる。更に、データをアドレス指定するために
用いられるべき固定ビット数を有し、かつ置換フィール
ド及びアドレスフィールドを有する固定幅ワードを有す
るメモリをアドレス指定するプロシージャが用いられ
る。
【0028】本発明は、RAMからそのRAMの所定固
定バースト長Nより少ない数Mのワードをアクセスする
方法であって、そのRAMはRAMからの読み出し及び
RAMへの書き込みを選択的に可能及び不可能にするイ
ネーブルラインを含み、その方法は、RAMから読み出
され又はRAMへ書き込まれるNのワードを配列し、N
より小さいMのワードがRAMから読み出され又はRA
Mへ書き込まれているときを判別し、MのワードがRA
Mから読み出され又はRAMへ書き込まれたときRAM
を不動作にさせることからなる。
【0029】本発明は、2次元の映像と対応したデータ
ワードを記憶し及び読み出すためにダイナミックランダ
ムアクセスメモリ(DRAM)をアクセスする方法であ
って、そのDRAMは2つの分離したバンクを有し、各
バンクはデータワードを読み出す及び書き込むページモ
ードを動作することができ、2次元映像はセルの2次元
グリッドパターンの中に構成され、各セルは画素のMX
Nマトリックスを含み、各セルと対応したワードはバン
クの1ページ以下を占め、その方法は、(a)2のバン
クのうちの特定の1つと対応した全てのデータワードが
その特定のバンクの特定のページについて読み出され及
び書き込まれるように各セルに2のバンクのうちの特定
の1つを割り当て、同一の行又は同一の列のいずれかに
ある隣り合うセルよりも異なるバンクと各セルが対応す
るようにセルへのバンクの割り当てがされており、
(b)画素のマトリックスからなるセルと対応し、2次
元グリッドパターンと位置合わせせず、2次元グリッド
パターン内のセルの画素と位置合わせされたデータワー
ドを読み出し、(c)2次元グリッドパターン内のセル
が位置合わせされていないセルと対応したデータワード
を含むことを識別し、(d)位置合わせされていないセ
ルと対応したデータワードを含むように識別されたグリ
ッドパターンの中のセルの一方と対応するデータワード
をDRAMの第1のバンクから読み出し、(e)位置合
わせされていないセルと対応したデータワードを含むよ
うに識別されたグリッドパターンの中のセルの他方と対
応するデータワードをDRAMの第2のバンクから読み
出し、(f)位置合わせされていないセルと対応したデ
ータワード全てが読み出されるまで(e)及び(f)を
繰り返すことである。
【0030】本発明は、RAMへのバスを接続するRA
Mインターフェースを提供し、分離アドレス発生器はア
ドレスを発生し、RAMインターフェースはRAMをア
ドレス指定するために必要である。そのアドレス発生器
は2線インターフェースを介してRAMインターフェー
スと伝達転送する。本発明はフレーム又はフィールドと
して構成された符号化ビデオデータのバッファリングを
制御する方法を含む。この方法は各入力符号化フレーム
の映像番号を決定し、常に期待の表現番号を決定し、そ
の映像番号がその表現番号以降のとき準備としていずれ
かバッファにマークをつけることを含む。
【0031】よって、デオデータを復号化するシステム
の設計、開発及び利用と関係したことについて、本発明
の様々な特徴によって達成されるように拡張した実施の
ための必要を長く認める。本発明のその他の目的及び利
点は図面と共に必要とされる次の詳細な説明から明らか
になる。
【0032】
【実施例】以下の「本発明の詳細な説明」は次の章を含
んでいる。 1)メモリアドレス指定についての本発明の詳細な説明 固定幅ワード内の可変長フィールド アドレス指定を換えるための可変長フィールドを備えた
固定幅ワードの使用 アドレス置換 固定幅ワードを備えた可変幅データのアドレス指定 マイクロコード化可能な状態マシン構造 演算コア 2)共通処理ブロックを用いたデータ変換の発明の詳細
な説明 発明の理論背景 3)時間同期についての本発明の詳細な説明 4)非同期のスイングバッファリングについての本発明
の詳細な説明 5)ビデオ情報の記憶についての本発明の詳細な説明 6)並列ハフマンデコーダについての本発明の詳細な説
明 ハフマン符号ROM 処理能力の最大化 FLC及びトークン 実施 7)更に詳細な説明 発明の詳細な説明 本発明の最も一般的な特徴の図示の実施例を、特に図面
の図1を参照して説明するが、本発明の好ましい実施例
200からデータの流れは示されている。本発明の実施
例は、様々な制御及びDATAトークンを有する2線パ
イプラインシステムを使用している。そのシステムの主
要な要素はスタートコード検出器201と、ハフマンデ
コーダ203及びマイクロプログラマブル状態マシン
(MSM)204を組み込んだビデオ分析器202と、
逆離散コサイン変換(IDCT)205と、関連アドレ
ス発生ユニット207を備えた同期DRAMコントロー
ラ206と、適切予測回路208と、アップサンプリン
グ210,211及びビデオタイミング生成回路208
を含む表示回路209である。
【0033】本願はDiscovision Asso
ciateによって1994年3月24日に「Vide
o Decompression」という名称の英国特
許出願9405914.4号において開示された技術内
容に類似しており、その英国特許出願は本願において参
照によって特に組み入れられる。上記のことに応じ、本
発明の特定の態様、特徴及びサブシステムの領域は以下
により詳細に言及される。図面では同様の参照符号は様
々な図面中の同様の又は対応する部分を示す。
【0034】メモリアドレス指定についての本発明の詳
細な説明 本発明によるメモリをアドレス指定する方法及び装置を
ここに述べる。特に、本発明は固定幅ワードを備えた可
変幅ビットフィールドを拡張するために提供する。更
に、本発明は固定幅ワードを備えた可変幅データをアド
レス指定する方法を提供する。様々な実施例では可変幅
ビットフィールドはワードに置き換えられるべきビット
を特定するため、又は固定幅ワードを備えた可変幅デー
タをアドレス指定することにおいてワードの不使用部分
を特定するために用いられる。更に、本発明のシステム
は演算コアを有するマイクロコード化可能な状態マシン
を含む。
【0035】マイクロコード化可能な状態マシンは多彩
な及び/又は複雑な計算の必要があるという設計問題を
解決するために用いられる。そのような設計例は、アド
レス発生、ストリーム分解及び符号化、フィルタタップ
係数計算を含んでいる。この点については、アドレス指
定は(1)ワードの可変幅部分をアクセスするために可
変長アドレス、(2)アドレス代用という2つの異なる
特徴を対処しなればならない。本発明においては、64
×32ビット構成を有するRAMは64×32ビット、
128×16ビット、256×8ビット、512×4ビ
ット、1024×2ビット又は2048×1ビット形式
を有する部分ワードにアドレス指定され得る。
【0036】固定幅ワード内の可変長フィールド 多くのアプリケーションでは、置換、可変幅データアド
レス指定、又はワードの他の部分の圧縮等の動作のため
に(フィールドとして知られるべき)ワードの可変部分
を定めることは有用である。ワードの可変部分を定める
従来の方法はワード内のフィールドの幅を特定する追加
のワードを備えることである。本発明ではワード内の情
報を符号化する方法を述べる。本発明の方法は、ワード
の全体の定義でビットを節約すること、符号化したワー
ドの復号化を簡単にすること及び何が符号化されている
かを更に直感的に与えることの利点を有している。更
に、可変幅フィールドがそのワード内で調整される最上
位又は最下位ビットを含むならばこの符号化方法を適用
することができる。
【0037】よって、表1は8ビットのワード内に定め
られ最小位ビット調整される可変幅フィールド(「F」
で示す)の2つの例を示している。「W」はワードの他
のポテンシャルフィールドを記している。
【0038】
【表1】 表2は2進数でフィールドの最大幅を特定するように十
分な追加のビットを用いて表1に示されたフィールドを
符号化する従来の方法を示している。「X」を記したビ
ットは特定されない。すなちわ、それらの値は重要では
ない。この方法はビットの使用において明らかに非効率
であり、更に、本発明より直感的な形ではない。
【0039】
【表2】 本発明による新たな方法は、ワード内のフィールドを定
める。この方法は継続マーカ及び終端マーカを用いるこ
とによりフィールドを定める。そのフィールドはそのフ
ィールドの一端から終端マーカまでに続く継続マーカ列
として特定される。しかしながら、ゼロ長フィールドの
場合には終端マーカはワード端で与えられる。継続マー
カ及び終端マーカの両方とも単一ビットであり、コンプ
リメンタリ(相補的関係)でなければならない。加え
て、フィールドはワードのいずれか端において調整され
なければならない。よって、フィールドを符号化する本
発明の方法は元のワード幅より1ビットだけ余分の幅を
必要とする。
【0040】その新たな方法による表1に示したフィー
ルドの符号化は表3に示したようになる。この例におい
て、継続マーカは「1」であり、終端マーカは「0」で
ある。その例のフィールドは最小位ビット調整される。
【0041】
【表3】 よって、本発明の符号化方法の利点は次の如きである。 1.符号化の必要なビット数が減少する。 2.通常要求される表1,2に示した「フィールド設
定」の「Xを1」とする復号のための要求が2のうち
の1の形に既にある符号化では本来的であるので復号化
処理における簡略化が要求される。 3.定められたフィールドを容易に識別できるように符
号化が直感的である。
【0042】更に、本発明による符号化方法の使用で
は、表3の符号化と同様の表4の符号化のように、終端
マーカと継続マーカとを逆にして用いることができる。
「1」又は「0]の使用は本願において交換して用いる
ことができる。
【0043】
【表4】 上記したように、符号化されたフィールドはワードのい
ずれかの端に調整されなければならない。表5は最上位
で調整されたフィールドを示している。すなわち、それ
は最下位ビットに位置調整されたフィールドと同様に符
号化され、符号化は最上位ビット(以下、MSBと称
す)から最下位ビット(以下、LSBと称す)に向かっ
て最初の終端マーカまでのフィールドにおいて行なわれ
る。表5に示したフィールドの符号化は表6に示されて
いる。
【0044】
【表5】
【0045】
【表6】 更に、ワードの最下位端及び最上位端から同意にフィー
ルドを符号化しても良い。例えば、表7に示した2つの
フィールドは上記したように各フィールド毎に1ビット
の追加で表8に示したように符号化することができる。
【0046】
【表7】
【0047】
【表8】 アドレス置換ための可変長フィールドを備えた固定幅ワ
ードの使用 他の値によってメモリアドレスの部分を置換することが
有益な場合がある。この場合、データに従ったアドレス
を構成することができる。アドレスの部分が何と置換さ
れるのか特定するためにメモリのアドレスに本発明の符
号化方法を適用することができる。最下位ビット調整の
可変長フィールドがアドレスに用いられるならば、置換
フィールドを定めることができる。例えば、12ビット
のアドレス「0baaaaaaaaaaaa」が12ビ
ットの値「0bcccccccccccc」によって5
つが最小位ビット側で置換されるように符号化されるな
らば、その12ビットのアドレス「0baaaaaaa
aaaaa」は「0baaaaaaa011111」と
なり、アドレス「「0baaaaaaaaccccc」
を発生する。表9は12ビットアドレスへの置換のため
の符号化を示している。
【0048】
【表9】 固定幅ワードを備えた可変幅データのアドレス指定 本発明の一実施例はその全幅で又は全幅までの2の幅
にアクセスすることができるメモリのアドレス指定用で
ある(それらの小さいワードは部分ワードと呼ばれ
る)。よって、本発明の可変フィールド符号化がこのメ
モリに対しアドレス指定し、メモリにそれらアドレスの
索引を付けるためにどのように用いられるのかを示す。
【0049】64×32ビットにアクセスするために、
32,16,8,4,2及び1ビットの幅において登録
ファイルは異なるアドレス長を必要とする。すなわち、
この実施例のものは64×32ビット,128×16ビ
ット,256×8ビット,512×4ビット,1024
×2ビット又は2048×1ビットとしてアクセスする
ことができる64×32ビットメモリである。64×3
2ビットの位置のうちの1つをアドレス指定するために
5ビットが必要であり、2048×1ビットの位置のう
ちの1つをアドレス指定するために12ビットが必要で
ある。よって、アドレスは可変長にすることができ、実
際には、アドレスの幅はメモリのアドレスフォーマット
を特定する。アドレスを圧縮しその幅を定める最上位調
整の可変幅フィールドを用いることにより固定ワード幅
内でアドレスを定めることができる。これを表10に示
す。
【0050】
【表10】 アドレスの索引を付けるためには、アドレス置換のため
に上記した同じ方法を用いてその部分を置換することが
できる。アドレスの置換部分(フィールド)については
表10に示したそれらの最初に挿入される最小位ビット
調整の可変長フィールド(継続マーカ「1」、終端マー
カ「0」)によって定めることができる。表11は例と
して8ビットのワードのアドレスを用いて、置換される
べき最小位ビットの数をどのように定めるのか示してい
る。付加される最小位ビットは置換の印(「W」で記し
た)である。置換のため固定幅ワードの通常の場合を図
2に示す。
【0051】
【表11】 実際には、置換コードは既に符号化されたアドレスの最
初に挿入される。この符号化からはイーリガルアドレス
(認められないアドレス)、ほとんど0x0000及び
0x3fffであることがわかる。この場合、「0」は
8ビットより大きな置換を阻止するため下位9ビットに
あり、上位6ビットの「1」は許容アクセス幅を特定す
る。それらのエラーの1つが検出されたならば、アクセ
スは設定されないが、登録ファイルの内容は影響されな
い。
【0052】本発明による、アドレス指定し登録ファイ
ル内の部分ワードをアクセスするシステムについて以下
に示す。従来のメモリ回路は、そのメモリが全幅で常に
アクセスされる必要があるものである。可変幅アクセス
を達成するために、全幅(32ビット)のワードが読み
取られる。全幅のワードはアクセスされる部分ワードが
LSBに調整されるまで循環される。ワードの上位部分
は全幅まで拡張されて出力される。拡張は新たなMSB
又は同様の従来方法として符号絶対値の符号ビットを用
いて0又は1で埋めること、符号拡張を含んでよい。拡
張は演算モードに従っている。部分ワードがメモリに入
力され書き戻されたとき、それは循環した完全なワード
(逆循環されアレイに書き込まれた)に重畳される。図
3は32ビットワードの第4の4ビットワードに4ビッ
トの部分ワードをアクセスするステップを示している。
【0053】図3の1列の213にハッチングで示した
4ビットワード等の部分ワードをアクセス又は読み取る
ために、全幅のワードは2列の214のようにLSBに
部分ワードを位置させるために循環させる必要がある。
3列の215に示したように、4ビットワードは完全な
32ビットワードを作り出すために拡張される。このワ
ードは直ちにアクセスすることができる。
【0054】図3に示したように、書き戻されるため
に、選択された全幅のワードは、2列の214に示した
ワードに重畳されている元の部分ワードの幅に切り詰め
られる。LSBの位置でこれは4列の216に示されて
いる。その結果としてのワードは読み取ったワードの中
の元の位に戻さ、これは5列の217に示されている。
この完全なワードを登録ファイルに書き戻すことができ
る。
【0055】よって、次のリストは図3のステップを簡
単に説明している。 1.完全なワードをメモリから読む。 2.右へ12ビットの循環によりLSBに部分ワードを
置く。 3.完全なワードに拡張し、そして出力へ供給する。 4.入力した部分ワードを(2)からの循環した完全な
ワードに重畳する。 5.左へ12ビットの循環により書き込まれるべき元の
状態に完全なワードを置く。
【0056】上記のアクセスは図4に示したメモリのデ
ータ流れ構造を提案する。構造における番号は上記のリ
ストの番号及び図3の列番号と対応する。メモリアドレ
スは上記の構造を制御するために復号される必要があ
る。アドレスの幅におけるMSBがメモリについて同一
の位置にあることが認識されるべきである。復号したア
ドレスの始めの6ビットは32ビットワードのアドレス
であり、残りはビットアドレスである。よって、(置換
と並行した)復号段は最上位の終端マーカの位置を検出
することによってアドレス幅設定可変フィールドを復号
する。これはアドレスのMSBの位置が調整されること
である(LSBでゼロにシフトする)。始めの6ビット
をメモリの32ビットワードの列アドレスとして直接用
いることができる。下位の5ビットについては(図4か
ら分かるように、)両方のシフタを制御するために用い
ることができる。なぜなら、例えば、元の32ビットア
ドレスは「0b00000」(それらはアドレスがMS
B調整されたときシフトされる)のシフトを常に有して
いるからである。同様に、16ビットアドレスは「0b
x0000」のシフト、すなわち、0又は16ビットシ
フトを有することができ、1ビットアドレスは「0bx
xxxx」のシフト、すなわち、0から31ビットシフ
トを有することができる。拡張器及び入力マルチプレク
サは各々出力ワードをマスクアウトし、適当な位置に入
力ワードを重畳するようにアクセス幅復号によって制御
される。図5に復号のブロック図を示している。幅及び
置換のための2つの可変幅フィールドの復号を並行にか
つ独立して行なうことができることが分かる。
【0057】図2は下位の2列に示されたように可変幅
データのアドレス指定及び置換のために固定幅ワード1
3ビットの長さの例を示している。それの例では、8ビ
ットワードは位置「0b1101ssss」にアドレス
指定され、ここで、「ssss」は他のアドレス源から
置換される。マイクロコード化可能な状態マシン構造 本発明によれば、メモリアドレスへの置換及びメモリの
可変幅アクセスは、図6に示された構成のマイクロコー
ド化可能な状態マシンの動作において共に行なわれる。
その構成は、マイクロコード指令と呼ばれる制御信号の
ワイドワードを介して演算コア219によって制御され
る状態マシン218の1つである。演算コア219は状
態フラグ及びいくつかのデータを順に状態マシン218
へ供給する。
【0058】本発明によれば、状態マシン218はマイ
クロコード指令のリストを備えたメモリを有している。
従来のマイクロコード化可能な状態マシンでは、マイク
ロコード指令のリストを介して進行するか1つの指令か
ら他の指令にジャンプすることが起きる。ジャンプアド
レスは図7に示した形式である。置換された値は図6及
び図8に示したように演算コア219から供給される。
これはマイクロコードプログラム内に「シャンプテーブ
ル」を形成させる。よって、ジャンプが例えば、3ビッ
トの置換でされるならば、演算コアからの値によるジャ
ンプできる8つの連続的な位置がある。すなわち、それ
はプログラマブルジャンプとなる。
【0059】演算コア 演算コア219は、図8に示したように、登録ファイル
(Registerfile)221と呼ばれるメモ
リ、演算及び論理ユニット(ALU)222、入力ポー
ト223及び出力ポート224を備えている。それらの
素子は複数のバス及び複数のマルチプレクサを介して接
続されている。上記したように、それらの素子及びそれ
らの接続をなすマルチプレクサは、状態マシン218か
ら発せられるマイクロコード指令によって制御される。
ALU222及びポート223,224は従来と同様で
あるが、登録ファイル221は、可変幅索引付きのアク
セスを可能にするメモリである。登録ファイル221へ
のアドレスはマイクロコード指令の中に直接符号化され
る。
【0060】登録ファイルへのアドレス指定の方法を用
いることの利点は沢山ある。第一に、アプリケーション
内の位置はメモリの全幅(この場合32ビット)である
必要はない。全幅の位置を用いるために装置の動作に影
響がないが、メモリの位置を非常に無駄に使う。メモリ
の位置数を最小にすることはメモリで使用される領域を
最小にし、よって、登録ファイル内の収納容量を最小に
する。第二に、メモリアクセスの可変幅と組み合わせて
索引を付けることは可変幅の位置の全てのステップを可
能にする。1ビットの場合にこれは長い除算及び乗算の
的確な実行を可能にする。
【0061】よって、まとめとして次のステップを有す
るメモリアドレス指定処理が述べられている。 (1)可変幅データをアドレス指定するために用いられ
るべき所定の固定ビット数を有する固定幅ワードを供給
し、(2)幅設定フィールドと、終端マーカとして作用
するため少なくとも1ビットを幅設定フィールドに与え
るアドレスフィールドとを備えた固定幅ワードを設定
し、(3)データのアドレスを設定する複数のビットか
らなるアドレスフィールドを設定し、(4)可変幅デー
タのサイズと反比例してアドレスフィールド内のビット
サイズを変化させ、可変幅データのサイズに比例して幅
設定フィールド内のビット数を変化させ、可変幅データ
をアドレス指定する固定幅ワードを保持する一方、幅設
定フィールド及びアドレスフィールドの幅を変化させ
る。加えて、次のステップを有するメモリアドレス指定
処理が述べられている。
【0062】(1)データをアドレス指定するために用
いられるべき所定の固定ビット数を有する固定幅ワード
を供給し、(2)アドレスフィールドと置換フィールド
とを備えた固定幅ワードを設定し、(3)データのアド
レスを設定する複数のビットからなるアドレスフィール
ドを設定し、(4)少なくとも1つの置換ビットからな
る可変幅置換フィールドを設定し、(5)その置換フィ
ールドはアドレスフィールドと置換フィールドとの間に
終端マーカとして作用するために少なくとも1ビットを
有し、(6)分離のアドレス指定源からの置換ビットを
示すために置換フィールドを用い、可変幅データをアド
レス指定する固定幅ワードを保持する一方、アドレスフ
ィールドの幅と置換フィールドの幅とを逆に変化させ
る。更に、メモリ内の可変幅データをアドレス指定する
処理は次のステップを有するように述べられている。
【0063】(1)所定の幅でかつ部分ワードからなる
ワードを有するメモリを備え、(2)最下位ビット調整
にアクセスさせるために部分ワードを循環させ、(3)
アクセスしたワードが部分ワードとして認識されるよう
にワードの残り部分を拡張し、(4)ワードの残り部分
を元に戻して部分ワードが元の位置に戻るまでワードを
循環させる。
【0064】共通処理ブロックを用いたデータ変換の発
明の詳細な説明 本発明の実施例は周波数から時間表示に信号を変換する
方法及びその変換を実施するディジタル回路構成に関す
る。情報内容及び変換速度の両方を増加することは電気
通信の分野における共通の目的である。しかしながら、
送信した信号を処理しなければならない送受信端末でハ
ードウエアのように、各通信媒体は送信速度の限界を有
している。例えば、電信キーをたたくことより郵便文書
をタイプし読み取ることの方が速いけれども電信線は一
般に郵便より情報送信では大変に速い媒体である。
【0065】送信した情報を符号化する方法は、情報を
運ぶことができる速度を制限する。例えば、長い電信メ
ッセージは同一の情報内容の簡潔なメッセージより転送
するためには長くかかる。よって、大きな送信及び受信
速度では、できるだけ沢山送信されるようにデータを圧
縮することにより得て、そして高速送信媒体を用いてで
きるだけ速く両端末でデータを処理することができる。
それはシステムにおける障害の減少又は除去を意味す
る。
【0066】大きなデータ量の高速送信を主に行なう1
つの応用はディジタルテレビジョンの分野にある。従来
のテレビジョンシステムはテレビジョン画面に表示され
る各ライン内の画素(ピクセル)の輝度及び色を制御す
るためアナログの無線信号及び電気信号を使用するが、
ディジタルテレビジョン送信システムは各画素毎の輝度
値及び色値に対応する2進数にアナログ信号を変換する
ことにより画像のディジタル的な表現を生成する。最近
のディジタル符号化方式及びハードウエア構成は一般
に、従来のアナログ送信システムより更に高い情報送信
レート可能にする。ディジタルテレビジョンでは、従来
のアナログのものよりもより高解像度でより生に近い画
像を達成することができる。いわゆる高品位テレビジョ
ン(HDTV)システムを含むディジタルテレビジョン
システムは、工業化された世界の大部分では次の10年
間は従来のアナログテレビジョン技術に置き代わること
は予測される。送信及び記憶の両方においてアナログか
らディジタル画像への転換は、アナログオーディオレコ
ードから現在どこにでもあるコンパクトディスクに切り
換えられたことと同様である。
【0067】ディジタル画像技術が一般的に有用となる
ためにディジタル画像を符号化する標準案が採用されて
いる。そのような標準案はJPEG規格として知られ、
静止画用として用いられる。動画用としては2つの標
準、MPEGとH.261とが現在あり、その両方は動
画の連続するフレームの各々においてJPEGと同様の
処理を行なう。JPEGを繰り返し用いること以上の利
点を得るために、MPEG及びH.261は連続するフ
レーム間の差において動作し、その差、すなわちフレー
ム間の動きが小さいという良く知られたことを利用す
る。よって、一連の画面の中の各フレームが一連の画面
の中の最も近いフレームに完全には似ていないような同
等の静止画情報を送信又は記憶することよりむしろその
変化に対応する情報を送信又は記憶することは時間又は
容量を少なくする。
【0068】便宜のために全ての現在の標準は画像又は
絵をタイル又はブロックに分割している。各ブロックは
幅8ピクセルで高さ8ピクセルの画像片からなる。各ピ
クセルはピクセルの「成分」として知られた3つ(又は
それ以上)のディジタル数によって表される。カラー化
されたピクセルを例えば、YUV,YCr,Vb,RG
B等の標準表記を用いて成分に分割する異なる方法は沢
山ある。従来のJPEGのような方法は各成分で分かれ
て作用する。
【0069】目は画像の高い周波数成分(又は縁)に鈍
感であることは良く知られている。最も高い周波数に関
する情報については画質の重大な低下を気付かせること
なく普通全て削除することができる。目が情報の欠落を
分かることなく高周波数情報を除去することにより画像
の中の情報内容を減少させるためには空間情報(例え
ば、輝度の実値)を含む8×8のピクセルブロックは周
波数情報を得るために何らかの方法で変換されなければ
ならない。JPEG、MPEG及びH.261の標準規
格は8×8周波数マトリックスを得るように8×8空間
マトリックスについて動作する公知の離散コサイン変換
(Discrete Cosine Transfor
m)を使用している。
【0070】上記したように、入力データは画像の正方
形のエリアを表している。入力データを周波数表現に変
換する場合に、適用される変換は2次元でなければなら
ないが、そのような2次元変換を効率よく計算すること
は難しい。しかしながら、その公知の離散コサイン変換
(DCT)及びそれに関連した逆DCT(IDCT)は
分離できるという特性を有している。これは一度に8×
8ピクセルブロックの64ピクセル全てに作用する必要
があるということよりむしろ、そのブロックを先ず、列
毎に中間値に変換することができることを意味する。そ
の中間値は最終的な変換した周波数値にコラム毎に変換
される。
【0071】N次(order N)の1次元のDCT
は2つのN×Nのマトリックスを乗算することと同等で
ある。8×8のピクセルブロックについて必要なマトリ
ックス乗算を行なうためには、512回の乗算及び44
8回の加算が要求され、それによって1024回の乗算
及び896回の加算が8×8のピクセルブロックについ
て完全な2次元のDCTを行なうために必要である。そ
れらの演算動作、特に乗算は複雑で遅く、達成できる送
信レートを制限する。それらはDCTを実行するように
用いられるシリコンチップにかなりのスペースを必要と
する。
【0072】DCT処理では要求される計算量を減少さ
せるように再構成することができる。現在、DCTで必
要とされる計算を減少させる方法が2つあり、その両方
とも「2進間引き(binary decimatio
n)」を用いている。その「2進間引き」手段はN×N
の変換よりも2つのN2×N2の変換を用いることによ
り計算することができ、これを準備する間に計算オーバ
ヘッドを加える。8×8変換は512回の乗算及び44
8回の加算を必要とするが、4×4変換は64回の乗算
及び48回の加算を必要とするだけである。2進間引き
は284回の乗算及び352回の加算を節約し、その間
引きを行なう場合に必要なオーバヘッドは計算における
減少に比較して取るに足りない。
【0073】現在、2進間引きの2つの主な方法がEo
ng Gi Lee(「A NewAlgorithm
to Compute the DCT:DCT計算
の新たなアルゴリズム」IEEE Transacti
on on Acoustics, Speech a
nd Signa1 Processing, Vo
l. Assp 32, No 6, p 1243
December 1984)及びWen−Hsiun
g Chen(「A Fast Computatio
nal Algorithm for the DC
T:DCT用の高速計算アルゴリズム」Wen−Hsi
ung Chen, C. Harrison Smi
th, SCPralick, IEEE Trans
action on Communications,
Col. Com 25, No. 9 1004,
September 1977)によって開発され
た。前者(Eong Gi Lee)の方法は逆DCT
の設定において本来の対称を利用し、簡単なコサイン一
致を用いて再帰的(recursive)2進間引き方
法を定める。この前者のアプローチはIDCTに適切な
だけである。
【0074】後者(Wen−Hsiung Chen)
の方法はマトリックスを対角線だけに減少させる再帰的
マトリックス一致を使用する。この方法は対角線マトリ
ックスのための知られた一致を用いてDCTの容易な2
進間引きを与える。両者(Lee及びChen)の方法
の大きな欠点は、乗算及び加算を行なう必要があるとき
に関して不平衡なことである。主に、それらの方法の両
方共に多くの加算に続いて多くの乗算、又はその逆に多
くの乗算に続いて多くの加算を要求する。Lee又はC
henの方法をハードウエアにて行なうときには加算器
及び乗算器のパラレル動作を備えることができない。こ
れは、ハードウエアの最善の活用は全ての加算器及び乗
算器が常に使用されるときであるのでそれらの速度及び
効率を低下させる。
【0075】そのようなDCT及びIDCT動作を行な
う公知の方法及び装置の更なる欠点は、いわゆる正規化
係数を扱うことが通常難しく、公知のアーキテクチャは
全ての乗算器が使用されているとき追加の乗算時間を加
える必要があることである。順及び逆のDCTをビデオ
データに適用する公知の方法は、計算を行なう半導体素
子のレイアウトと関係させる必要がないソフトウエア設
計者にとって非常に簡単で高効率である。しかしなが
ら、そのような方法はディジタルビデオ用で望まれる送
信レートで満足に行なうためには遅過ぎ、又は半導体ア
ーキテクチャ及びハードウエア相互接続において複雑す
ぎる。
【0076】ビデオデータによりDCT及びIDCT動
作を行なう存在する方法及びハードウエア構成の他の欠
点は、それらが数値の浮動小数点内部表示を要求するこ
とである。この欠点を表すため、(たとえあるとして
も)10進小数点の右に数字を含む3桁の数で処理する
ことかできるだけの計算機を有すると仮定する。更に、
その計算機は数12.3と4.56とを加えることにあ
ると仮定する(10進小数点はそれら2つの数値のおけ
る数字の位置に関連して固定されていない。言い換えれ
ば、10進小数点は「浮動」であることができる。)計
算機は答16.86を表すために要求される4つの数字
を記憶することができないので、計算機はその答を3つ
の数字に減少させるなければならない。最も右の「6]
を省略することによりその答を切り詰めて16.8の答
を生じさせるか、3桁の近似値16.9までその答を四
捨五入する必要なハードウエアを有していなければなら
ない。
【0077】非常に簡単な例を示すと、浮動小数点演算
が要求されるならば、正確でなくなることを受け入れる
か、四捨五入誤差を最小にするため非常に複雑で空間を
無駄にする回路を含まなければならない。しかしなが
ら、効率の良い四捨五入回路でさえ、四捨五入又は切り
捨て誤差の累算及び伝播はビデオ信号において受け入れ
ることができない歪みを導く。この問題は、浮動小数点
四捨五入又は切り捨て誤差が加算より乗算で一般的に大
きいのでビデオ信号を処理する方法が多数の乗算を要求
するとき更に大きい。
【0078】より効率的なDCT/IDCT方法及びハ
ードウエア構成は、その方法で使用された数値が固定の
10進小数点で、各数値のフルダイナミックレンジを使
用できるような方法で表わすことができる。そのような
システムにおいては、切り捨て又は四捨五入誤差が除去
されるか、少なくとも大きく減少される。上記の例で
は、ハードウエアが4つの数字を扱うことができるなら
ば、99.99より大きい数は必要とされず、どの数も
第2及び第3位置の間に10進小数点を有し、それでそ
の10進小数点の存在は計算に全く影響を与えない。よ
って、どの数も整数であるかのように演算を実行するこ
とができる。例えば、その答1230+0456=16
86は、「1686」の中の「6」と「8」との間に1
0進小数点を有するべきあることは常に分かるので、1
2.30+4.56=16.86と同じであることは明
かである。その代わりに、数値(定数又はそれ以外)が
同一の範囲内に存在するように選択的に位置どり又は調
整されるならば、その範囲内の各数を1組の整数として
正確にかつ明確に表わすことができる。
【0079】必要とされた乗算器の数を減らす1つの方
法は、異なるソースからの入力データを受け入れること
ができる単一の乗算器を単に備えることである。言い換
えれば、あるアーキテクチャはDCT又はIDCT計算
の異なるステップにおいて要求される乗算を行なう単一
の乗算器を使用する。そのような「クロスバー切換」は
要求される乗算器の数を減少させるけれども、大きく複
雉な乗算器の構成は乗算器への入力の選択、乗算器から
の他の分離、及び選択したソースから乗算器の入力への
適切な信号の切換をそれに代わって含まれなければなら
ないことを意味する。また、追加の大規模の乗算器は共
有の乗算器から適切な後段の回路に多数の入力を切り換
えることが要求される。よって、クロスバー切換又は多
重化は複雑であり、(余分の記憶が必要であるので)一
般的に遅く、価格は最終の半導体実現においてかかる。
【0080】「クロスバー切換」を含む現存アーキテク
チャの他の欠点はそれらが一般用途の乗算器を必要とす
ることである。言い換えれば、現存のシステムは両方の
入力が可変できる乗算器を必要とする。良く知られたよ
うに、ディジタル乗算器の実現では、乗算ワードの現ビ
ットが「1」ならば被乗数の値はその部分結果に加算さ
れ、現ビットが「0」ならばそうされないように加算器
及びシフタの行を一般的に含む。一般用途の乗算器はど
のビットも「1」である場合を処理することができなけ
ればならないので、加算器の列は乗算ワードの各ビット
に備えられる必要がある。
【0081】例として、データワードが8ビット幅で、
5による単一入力を乗算すると仮定する。数5の8ビッ
ト表現は00000101である。言い換えすれば、5
によるディジタル乗算は入力値が左に2位置シフトさせ
(4による乗算に対応する)、そしてそのアップシフト
された値に加算されるような入力値を必要とする。係数
の他の6つの位置は「0」のビット値を有し、それでそ
れらはシフト又は追加のステップを必要としない。
【0082】固定係数の乗算器、すなわちこの場合、5
だけによる乗算をすることができる乗算器は(キャリビ
ットを扱うために必要な回路に無関係なく)乗算を行な
うためには単一のシフタ及び単一の加算器だけを必要と
する。逆に、一般用途の乗算器は8つの位置の6つは決
して使用の必要はないが、8つの位置の各々にシフタ及
び加算器を必要とする。例示のように、係数内の各
「0」に対応する加算器の行を設計者が除去することが
できるので、固定の係数は乗算器を簡略化することがで
き、それによりシリコン領域を少なくすることができ
る。
【0083】IDCT方法において、本発明によれば、
N×N画素ブロックの各N行(row)及びN列(co
lumn)毎の1次元IDCTは間引きされ、1次元I
DCT(1−D IDCTはN−2偶数の画素入力ワー
ド及びN−2奇数画素入力ワードで分離して行なわれ
る。好ましい実施例においては、JPEG規格に応じて
N=8である。2次元IDCTの結果は2つの1次元I
DCT動作を(データの中間の順序を置き換えて)順に
行なうことにより得られる。
【0084】共通の処理ステップにおいて、N=8のた
めには第1対の入力値は乗算のために加算器及び減算器
を出力する必要なく通過される。第2対の入力値の各々
は2つの基準化コサイン値に対応する2つの一定係数値
の各々によって乗算される。他の乗算と1つの減算及び
1つの加算だけはその共通の処理ステップでは要求され
ない。その第2対は偶数又は奇数の結果の値を得るため
第1対の入力値と対(pairwise)で加算され又
は差し引かれる。
【0085】事前共通処理段では、最も低位の奇数入力
ワードは2の平方根によって予め乗算され、その奇数入
力ワードは共通の処理ブロックにおける処理の前にペア
ワイズで合計される。事後共通処理段では、処理した奇
数入力ワードに対応する中間値は奇数の結果値を生成す
るために所定の一定係数によって乗算される。奇数及び
偶数の結果値の計算後、N/2高位出力は偶数の結果値
からの奇数の結果値の簡単な減算によって生成され、N
/2低位出力は奇数の結果値と偶数の結果値との簡単な
加算によって生成される。
【0086】(ビデオ処理システムの送信端における)
DCT及び(本発明の様々な態様の1又はそれ以上を組
み入れている受信端における)IDCTの両方のため
に、その値は簡単な2進右シフトによる2の因数によっ
て下方に故意に調整される。この平衡した上方への調整
は従来の方法において要求される多数の乗算ステップを
除去する。
【0087】本発明の方法における他の態様において
は、一定係数の選択したビット又は中間の結果データワ
ードは「1]又は「0]のいずれかに選択したビットの
所定の設定によって四捨五入又は調整される。画素デー
タの2次元変換は第1の1次元IDCT処理ステップか
らの出力値による第2の同一の1次元動作によって実行
される。
【0088】本発明の他の態様によれば、IDCTシス
テムは事前共通処理回路と、共通処理回路とを含んでお
り、そこにおいて事前共通、共通及び事後共通処理計算
は入力データワードによって行なわれる。管理コントロ
ーラは様々なシステムラッチの読み込みを制御するため
に制御信号を発生する。好ましくは、それは低位出力信
号を生成しラッチするための偶数及び奇数の結果値の直
接加算及び高位出力信号を生成しラッチするための偶数
の結果値からの奇数の結果値の直接減算に事前共通ブロ
ックのラッチを入力させるようにN/2偶数及びN/2
奇数入力ワードのアプリケーションを時系列多重化し、
内部マルチプレクサを連続的に制御することである。
【0089】本発明においては、偶数及び奇数の入力ワ
ードは好ましくは同一の処理ブロックを介して分離した
経路で処理される。入力データワードは好ましくは(必
要ではないが)、厳格に昇順又降順ではなく、むしろデ
ータ通路の効率の良い「バタフライ」構成を可能にする
順でラッチされる。更に、少なくとも共通処理回路はそ
の適当な動作のために要求されるクロックや制御信号を
用いることなく、他の処理ブロックであるように特定の
アプリケーションに従う事前ロジック回路として構成さ
れ得る。
【0090】一般用途の(2つの可変入力を備えた)乗
算器は要求されない。むしろ、一定係数乗算器が好まし
い実施例の中では含まれる。更に、固定少数点整数演算
素子がその本発明の好ましい実施例では含まれ、次の1
又はそれ以上の特徴を有するビデオデータのIDCT変
換を行なう方法及びシステムを提供するように設計する
ことができる。 1.全ての高価な演算動作の連続的使用。 2.IDCTを実現するために必要なシリコン領域を減
少するために、好ましくはアーキテクチャの有効なパイ
プライン処理のために要求されるより多くなく、追加の
記憶素子を必要とする一般用途の乗算器よりむしろ少数
の一定係数乗算器と接続したラッチのような少数の記憶
素子数がある。 3.例えば、公知の「リップル加算器」を用いるならば
各演算動作が複雑な設計を用いる必要がないように動作
は取り決められる。遅延を避けかつより大きなスループ
ット及び効率を可能にするために他の考案がリアレンジ
動作を先にするような方法に動作が構成されるならば、
「分解」又はそれらの回答を生成するために十分の時間
を与える。 4.自然順に結果を生成することができる。 5.高価で複雑なクロスバー切換が要求されない。 6.アーキテクチャは速い動作をサポートすることがで
きる。 7.変換ハードウエアを介したデータの流れを制御する
ために使用される回路を領域内で小さくすることができ
る。
【0091】発明の理論背景 本発明によるIDCTシステムに用いられる信号処理方
法の様々な構成要素の目的及び機能と共に利点の理解の
ためにはそのシステムの理論の根拠を理解することが手
助けとなる。2次元IDCTの分離可能性 N×N画素ブロックの2次元フォーワード離散コサイン
変換の数学的定義は次の通りである。ここで、U(j,
k)は画素絶対値X(m,n)に対応する画素周波数値
である。
【0092】
【式1】 2Nは変換のdcレベルを定め、係数c(j),c
(k)は公知の正規化ファクタである。それに対応する
逆離散コサイン変換(IDCT)の表現は次の通りであ
る。
【0093】
【式2】 フォーワードDCTは周波数表現に(輝度等の特性を直
接表すかMPEG規格内等の差異を表わす)空間値を変
換するために用いられる。逆DCTはその名称に示され
たようにその逆の「方向」の演算動作を行なう。すなわ
ち、IDCTは周波数値を空間値に戻す変換を行なう。
【0094】式2では各コサイン関数は合計符号のいず
れか1にだけに対応していることを表わす。式2は次の
ように書き換えることができる。
【0095】
【式3】 これは第1のIDCT演算の出力を入力として用いて第
2の1次元IDCTによるそのままの標準データの置き
換えの後に続く、k及びnに対応する全ての項の積を行
なう第1の1次元IDCTと等価である。1次元IDCTの定義 1次元のN点のIDCT(ここでnは偶数)は次の式に
よって定義される。
【0096】
【式4】 ここで、y(n)は逆変換関数へのN入力であり、x
(k)はそのN出力である。2次元の場合のように、D
CTの式は合計符号の外の正規化定数と式内で位置を切
り換えるx,yベクトルとを除いて合計符号の元で同一
の構造を有する。1次元IDCTの分解 上記したように、2次元IDCTについては置き換えに
よって分離された1次元IDCTのシーケンスを用いて
計算することができる。一実施例によれば、それら1次
元演算の各々は、要求サイズ及び半導体実現の複雑さを
更に減少させるように開発されるサブプロシージャに順
に分解される。
【0097】係数の正規化 上記したように、IDCTハードウエアの重要な設計目
標は、回路内に備える必要のある乗算器の数の減少であ
る。よって、IDCTにおけるDCTを計算するほとん
どの方法は必要な乗算数の減少を試みることである。し
かしながら、この実施例によれば、全ての入力値は2の
平方根のファクタによって強制的に上方調整される。言
い換えすれば、本発明のこの実施例による方法を用いれ
ば、IDCT表現式Eの右手側は2の平方根によって乗
算される。
【0098】実施例によれば、2つの1次元IDCT演
算動作は最終的な2次元IDCTの結果を生成するよう
に(中間の置き換えと共に)並行して行なわれる。それ
らの1次元演算動作の各々は同一の2の平方根によって
乗算される。中間の置き換えは調整を含んでおらず、並
行した2の平方根による2つの乗算の結果は、最終的な
2次元結果がファクタ(数値)2によって上方調整され
ることである。無調整値を得るためには、回路は2によ
る除算だけを必要とする。その値は全て数値として表さ
れるので、これはデータの簡単な右へのシフトによって
容易に達成することができる。以下に明確にするよう
に、各1次元IDCT段において2の平方根による上方
調整及び最終的な2による下方調整はシステムのハード
ウエア内の加算器、乗算器及びシフタによって達成さ
れ、それによってシステムはそのシステムと接続される
他の装置に調整した入力の必要を求めない。この理由の
ため、そのシステムはJPEG又はMPEG規格に応じ
た動作を行なう他の従来の装置と互換性がある。よっ
て、本発明のこの実施例による正規化は、少なくとも2
つの2乗算演算の平方根に対してIDCT半導体アーキ
テクチャ内のハードウエア乗算器の必要性を除去する。
【0099】以下に詳細に述べるように、各1次元演算
動作で入力データの(2の平方根によって上方調整す
る)単一の追加の乗算ステップは、従来の方法を用いた
とき要求される他の乗算ステップの除去をもたらす。1次元IDCTの高位及び低位出力への分離 表現式EはN/2低位出力(k=0,1,…,N/2−
1)及びN/2高位出力(k=N/2,k=N/2+
1,…,N)に分離して評価することができる。N=8
については、これは先ず、y(0),y(1),y
(2)及びy(3)を計算するために入力を変換し、そ
してy(4),y(5),y(6)及びy(7)を計算
するために入力を変換することを意味している。
【0100】高位出力(k=N/2+1,…,N)のた
めに変数k’=(N−1−k)を導入してそれによりk
が(N/2+1)からNまで変化するようにk’は(N
/2−1)からNまで変化する。それは表現式Eが次の
式5(合計の間隔を除いて式Eと同一式)及び式6に分
割することができることを示している。 低位出力:
【0101】
【式5】 高位出力:
【0102】
【式6】 (全ての高位項でc(n)=1であるのでc(n)はこ
の式表現には含まれない。) 式5及び式6共に、項(−1)が上位のN2出力値で
奇数入力(n odd)の合計符号の元で積の符号を変
えることを除いて、またy項がc(0)=1/21/2
によって乗算されることを除いて、合計符号の元で同一
の構造を有する。
【0103】1次元IDCTの偶数及び奇数出力への分
1次元IDCT表現式4における1つの合計は2つの合
計に分離することができる。2つの合計は偶数入力(N
=8ではy(0),y(2),y(4)及びy(6))
に対する合計と、奇数入力(N=8ではy(1),y
(3),y(5)及びy(7))に対する合計とであ
る。g(k)は偶数入力の部分合計を表わし、h(k)
は奇数入力の部分合計を表わす。よって、
【0104】
【式7】
【0105】
【式8】 N=8では式7及び式8における合計はN={0,1,
2,3}に亘ってとられる。公知のコサインの同一式を
思い起こすと、2cosAcosB=cos(A+B)
+cos(A−B)であり、A=Π(2k+1)/2
N、及びB=Π(2k+1)(2N+1)/2Nと設定
すると、 2cosA=1/{2cos[Π(2k+1)/2
N]}=Ck によって式8の両側を乗算することができる。Ckは合
計のインデェクス(指標)nとは関連がないので、合計
符号内で動かすことができる。y(−1)=0という定
義を仮定し、入力y(7)に対するコサイン関数が0に
等しい。h(k)は次の式に書き換えることができる。
【0106】
【式9】 入力[y(2n+1)=y(2n−1)]は、h(k)
の計算において奇数入力項がN/2の対の入力p(n)
=[y(2n+1)=y(2n−1)]を形成するため
に対にされていることを意味している。N=8に対して
は、p(n)の値は次のようになる。 n p(n) 0 y(−1)+Y(1)=Y(1)Y(−1)=0 定義により 1 y(1)+y(3) 2 y(3)+y(5) 3 y(5)+y(7) h(k)の式9は次のように表わすことができる。
【0107】
【式10】 合計符号の元でコサイン項は(式5と比べて)1次元I
DCTの構造を各々有するg(k)及びh(k)の両方
に対して同一であることに注目されたい。しかしなが
ら、奇数項すなわちh(k)に対するIDCTの結果は
ファクタ Ck=1/{2cos[Π(2k+1)/2N によって乗算される。
【0108】言い換えれば、g(k)は偶数入力y(2
n)で演算動作するn/2−ポイントIDCTであり、
h(k)は[y(2n+1)=y(2n−1)]で演算
動作するn/2−ポイントIDCTであり、ここで、定
義によってy(−1)=0である。次に同一を示す。 yn=y(n); c1=cos(Π8); c2=cos(2Π8)=cos(Π4)=1√2; c3=cos(3Π8); d1=1[2cos(Π1610)]; d3=1[2cos(3Π/16)]; d5=1[2cos(5Π/16)]; d7=1[2cos(97Π/16)] 更に、調整したコサイン係数は次の如くある。 c1s=(√2)cos(Π/8); c3s=(√2)cos(3Π8); コサイン関数の均一性(cos(−φ)=cos
(φ))及び周期性(cos(−φ))Π(−φ)=−
cos(φ)を用いて、式7及び式8はN=8に対して
拡張することができる((O)は1√2である。)
【0109】本発明のこの実施例によれば、全ての値は
DCT及びIDCT演算動作の両方について2のファク
タによって上方調整される。言い換えすれば、その実施
例によれば、g(k)及びh(k)の両方が調整ファク
タによって乗算されるのである。よって、そのg(k)
及びh(k)の表現は次のようになる。
【0110】
【式11】
【0111】
【式12】 c2=cos(Π/4)=1/√2であるので、√2に
よる乗算は調整したc2値=1を与える。この実施例に
よれば、(ビデオ絶対及び周波数値の値の上方調整に対
応する)表現を調整することにより、各々が一般的に有
用な乗算器が必要ないように一定係数である乗算の必要
性及びc3sを除去することができる。これはIDCT
演算動作の半導体の実現において対応するハードウエア
乗算器の必要性を次々に除去する。
【0112】g(k)及びh(k)の構造における類似
点はマトリックス形状においてそれらの式を表わすこと
によって示すことができる。Cを次にように4×4のコ
サイン係数マトリックスで定義する。
【0113】
【式13】
【0114】
【式14】
【0115】
【式15】 ここで、D=diag[d1,d3,d5,d7]=対
角線に沿ったd1,d3,d5及びd7を備えかつ他の
エレメントは0に等しい4×4のマトリックスである。
式14及び式15に示すように、g(k)を得るために
偶数入力で動作するプロシージャとh(k)を得るため
に奇数入力で動作するプロシージャとはコサイン係数マ
トリックスCによる乗算の共通ステップを有する。しか
しながら、h(k)を得るために入力は先ず(定義によ
るy=(−1)を呼び出して)対で合計しなければなら
ない。y=(1)は2によって予め乗算されなければな
らない。Cによる乗算の結果はDにより乗算される必要
がある。
【0116】また、上記したように、そのN−ポイン
ト、1次元IDCT(式4を参照)は(グループ化され
た)N/2奇数及びN/2偶数入力値について(合計符
号の元で)共通のコア動作を各々含む2つのN/2−ポ
イント、1次元IDCTに分離することができる。上記
の表現はこの実施例において実施されるようにIDCT
つぎの簡単な構造を生成する。 低位出力(N=8,出力k{0,1,2,3}):
【0117】
【式16】 高位出力(N=8,出力k{4,5,6,7}):
【0118】
【式17】 g(k)は出力値を直接生成するため偶数入力値で直接
演算動作し、h(k’)は値dl,d3,d5及びd7
による乗算と同様に入力値をグループ化して含んでい
る。通常のように、IDCT回路の設計者はサイズ対速
度、実現した素子数の多さ対減少した相互接続の複雑さ
等のトレードオフの数に直面する。例えば、シリコンチ
ップ上に追加の又は更なる複雑な素子を含むことによる
計算速度を改善することができるが、これは明らかにそ
の具体化を大きく又は更に複雑にしてしまう。また、I
DCTチップで有用である又は望まれることが「ルック
アヘッド(先取り)」加算器等の精密で複雑な設計の使
用を限定又は阻むことになる。
【0119】正確性の標準 全ての計算の限りない精密性及び正確性、その上、無限
の記憶容量及び計算時間を仮定すると、IDCT及びD
CTの変換映像データによって生成される映像は完全に
元の映像を再生する。勿論、そのような完全は存在する
技術を用いて得られない。
【0120】しかしながら、標準化を達成するために、
IDCTシステムは国際電信電話諮問委員会(CCIT
T)によって「CCITT勧告H.261−逆変換正確
仕様の添付1」として出された標準化方法に応じて現在
測定される。このテストは生成されるランダム整数を含
む10000組の8×8のブロックを詳述する。それら
のブロックは10000組の8×8の「基準」IDCT
出力データを生成するため予め設定された正確度を用い
て(予め設定された四捨五入、クリッピング及び演算動
作の先に又はそれに続いて)DCT及びIDCT変換さ
れる。
【0121】IDCTの実行が試験されるとき、そのC
CITTのテストブロックが入力として用いられる。実
際にIDCT変換した出力は公知の「基準」IDCT出
力データと統計的に比較される。最大値は全体として及
び各成分としてブロックのピーク、平均、2乗平均及び
平均値の平均誤差の点からそのIDCTに対して特定さ
れる。更に、そのIDCTは対応する入力ブロックが全
て0を含んでいるならば、全て0出力を生成しなければ
ならない。また、そのIDCTは全ての入力データの符
号が変化されたときには同一の標準と合わなければなら
ない。IDCTの実行は、最大の誤差がテスト中に特定
した最大値を越えないならば、受け入れられるべき正確
性を有するとことである。
【0122】他の公知の標準は(「8×8の離散コサイ
ン変換の実行のためのIEEE標準仕様案」,P118
0/D2,1990年7月18日)及び(「8×8の離
散コサイン変換」,ISO委員会のCD11172−2
案の添付A)における米国電気電子学会(IEEE)の
ものである。それらは上記のCCITTの標準に本質的
に一致している。
【0123】ハードウエアの実現 図9は本発明の一実施例によるIDCT方法のデータの
流れを示す簡略ブロック図である(図示及び以下に説明
するように、ハードウエアの構成は更に小型で効率的に
し得るが)。図9において、Y[0]及びY[4]等の
システムへの入力及びX[3]及びX[6]等のシステ
ムからの出力は単線で伝達されるように示されている。
図9の単線の各々は各入力及び出力と対応する完全に並
行に多くのビットで幅の広いデータワードを伝達するデ
ータバスの形で多くの伝導体を示していることと理解す
べきである。
【0124】図9において、大きな円225及び226
は2入力加算器を示し、その加算器の入力の接続点の小
さい円227は対応する入力ワードの補数が用いられる
ことを示している。そのような補数をとる入力を備えた
加算器は、非補数の入力から補数をとった入力を減算す
る。例えば、上方左の加算器からの出力T0はY[0]
+Y[4]に等しくなるけれども、出力T1の加算器は
値Y+(−1),Y4=Y0−Y4を形成する。よっ
て、1つ補数をとる入力を備えた加算器は差をとる成分
であるということができる。
【0125】また、図9において、一定係数乗算はデー
タ通路に塗りつぶしの三角形230によって示されてい
る。例えば、入力Y1はBOを生成する加算器に入力す
る前に、2の平方根の乗算器を通過する。よって、中間
値T3=Y2 T3=Y2c1s+Y6 c3s及び中
間値B2=pl c3s−p3 c1s=(Y1+Y
3)c3s−(Y5+Y7)c1sである。その示した
加算、減算及び乗算を行なうことにより示した構成はg
(0)〜g(3)のために式11及びh(0)〜h
(3)のために式12を実行することが分かる。
【0126】図9は本発明の重要な利点を示している。
図9に示すように、その構成は4つの主要な領域、すな
わち、対となった入力p(k)を生成し2の平方根によ
って入力y(1)を乗算する事前共通ブロックPREC
(231)、式12のように一定係数dl,d3,d
5,d7の4つ乗算器を含む第1事後共通ブロックPO
STC1(233)、式16及び式17のように低位出
力用としてg0〜g3項とh0〜h3項とを合計し、高
位出力用としてg0〜g3項とh0〜h3項との差を生
成する第2事後共通ブロックPOSTC2(235)、
及び奇数及び偶数データ通路に含まれる共通ブロックC
BLK(232)に分割されている。本発明の実施例に
よる処理回路においては、奇数及び偶数入力に行なう共
通動作は図9に示したような複構成よりもむしろ単一の
構成によって実行される。
【0127】実施例における動作方法及びディジタル構
成を理解するためには、「キャリビット」を理解するこ
とが手助けとなる。簡単な例として、1+1=0のよう
な2つの2進数の加算においては「1」のキャリは正し
い結果「10」(十進数「2」の2進数表示)を生成す
るため次の高位ビットに加算されなければならない。換
言すれば、01+01=00(キャリなしの合計)+1
0(キャリワード)である。「合計」に「キャリワー
ド」を加えて正しい回答00+10=10を得る。
【0128】10進数の例として、数「436」と「8
25]とを加算すると仮定する。手で2つの数を加算す
る共通の手順は通常、次に示す如くである。 1.1の位:「6」と「5」との加算は十の位に「1」
のキャリを有する「1」である。 合計:1、キャリイン:0、キャリアウト:1 2.十の位:「3」と「2」との加算は「5」であり、
前ステップからのキャリ「1」を加算してキャリなく
「6」を与える。
【0129】 合計:5、キャリイン:1、キャリアウト:0 3.百の位:「4」と「8」との加算は千の位に「1」
のキャリを有する「2」であり、前ステップからのキャ
リはない。 合計:2、キャリイン:0、キャリアウト:1 4.千の位:「0」と「0」との加算に百の位からのキ
ャリ「1」を加算して「1」を与える。
【0130】 合計:0、キャリイン:1、キャリアウト:0 回答の「1261」は隣接の低位の位置のキャリアウト
による各位へのキャリインにより同一の位の合計に各位
のキャリイン合計を加算して生成される。(最低位への
キャリインは常に0である。)勿論、問題は十の位から
キャリインがあるか否かを知るまで百の位で「4」と
「8]とを加算することを待つ必要があることである。
これは本質的にこのような動作をする「リップル加算
器」を表わす。リップル加算器は特別な記憶素子を必要
とすることなく「最終の」回答を得るが、他の設計より
遅くなる。
【0131】代替の設計として「キャリセーブ(car
ry−save)」が知られている。各位の2つの数の
合計は部分合計又は結果ワード(この例では0251)
及び異なるワード(1010)でキャリ値を記憶するこ
とにより生成される。その完全な回答は次のステップで
その合計及びキャリワードを「分解する(resolv
ing)」ことによって0251+1010=1261
のように得られる。記憶されている限りの時間にキャリ
ワードを部分結果に加算することができるか否かを判別
するために待つことなく同時に位毎に加算を行なうこと
ができる。
【0132】その解答動作は各計算段で要求される時間
の大きな割合を通常必要とするので、それら動作の速度
アップはその変換サイズにおける比較的小さな増加だけ
を必要とするが、全体の動作速度に重要な影響を与え
る。よって、キャリセーブ乗算器は各行にリップル加算
器を用いることよりも通常速い。しかしながら、乗算器
において各加算のためのキャリワードは記憶されるか次
の加算へ渡す必要があるので時間のおける利点は大変な
複雑さを犠牲にしている。更に、乗算の最終出力を得る
ために、最終部分合計及び最終キャリワードはリップル
加算器に加えることにより求めなければならない。しか
しながら、1つのリップル加算器だけが必要となり、そ
れにより時間節約は実行される必要がある乗算の大きさ
に通常、比例する。更に、キャリワードは加算される他
の数として扱われ、最終の乗算解答が必要となる前のと
きにそれが加算される限りは実際の加算を遅延させるこ
とができる。
【0133】本発明のこの実施例において、遅延解答の
実現は設計を簡単にし、IDCT回路の処理能力を増加
させるために用いられる。また、予め選択したキャリワ
ードのあるビットは、標準テストデータセットによる本
発明のテスト動作の統計的分析に基づくIDCTの結果
で大きな期待で正確性を与えるために解答の前に所定値
に任意的に及び強制的に変えられる。
【0134】図10は本発明の好ましい実施例の構成を
示すブロック図である。この好ましい実施例において、
奇数及び偶数の入力は時間多重化され、共通ブロックC
BLK(232)において分離処理される。この入力は
どちらか一方の順に処理される。図10において、記号
Y[1,0],Y[5,4],Y[3,2]及びY
[7,6」は奇数入力Y1,Y3,Y5,Y7が先ず計
算回路を完全に通過し、偶数入力Y0,Y2,Y4,Y
6が続くことを示すために用いられる。この順は現実施
例にかくことができないものではなく、それでもなお、
以下に説明するように、下流(downstream)
への演算動作は、奇数入力だけについて実行され、奇数
入力値を先ず入力することによりそれら下流への演算動
作を、全ての入力に共通の演算動作が偶数入力について
上流(upstream)へ実行されると同時に行なう
ことができる。これは多数の演算素子が逆にアイドルの
ままである時間を減少させる。
【0135】同様に、記号X[0,7],X[1,
6],X[3,4]及びX[2,5]は低位出力X0,
X1,X2,X3が先ず出力され、それに高位出力X
4,X5,X6,X7が続くことを示すために用いられ
る。図9及び図10に示すように、奇数入力がY1,Y
3,Y5,Y7であるため必要はないが、入力は完全に
初期的には昇順にグループ化される。この順に入力信号
を配置することは図9及び図10に示した簡単な「バタ
フライ」データ通路構成を可能にし、シリコン半導体素
子において本発明の実行における相互接続効率を大きく
増加させる。
【0136】図10に示したように、加算器及び減算器
は「+」(加算器)235、1つの補数入力を有する加
算器「−」(減算器)236又は「±」(加算及び減算
237の間を切り換えることができる分解加算器/減算
器)のいずれかを囲む円によって示される。2つのmビ
ットの入力ワードの共通ブロック232における大部分
の加算器及び乗算器は、加算/減算のキャリビットを含
むmビット又はm−1ビットと並列して結果として生じ
るmビットの部分である。言い換えすれば、共通ブロッ
クCBLK 232における第1の乗算及び減算は、キ
ャリビットの加算が次の処理段まで遅延されるという未
分解の意味である。このステップの利点はそのようなキ
ャリセーブ加算器/減算器がその結果にキャリビットワ
ードの最終の加算を行なう必要がないということであ
る。しかしながら、分解加算器はまた加算器の出力にお
けるバス幅を減少させるために用いられる。
【0137】図10は本発明の好ましい実施例における
1及び2入力のラッチの使用を示している。図10にお
いて、ラッチは長方形238として示されており、事前
共通ブロックPREC 231及び事後共通ブロックP
OSTC 233の両方に用いられる。1入力のラッチ
はラッチg[0,7],g[1,6],g[3,4]及
びg[2,5]とh[0,7],h[1,6],h
[3,4]及びh[2,5]からの各出力に対応する計
算したg(k)及びh(k)である分解加算器/減算器
への入力をラッチすると共に、乗算器D1,D3,D5
及びD7の入力で使用される。そのように、分解加算器
/乗算器は上記の式16及び式17に示した加算又は減
算を行なう。
【0138】上記したように、偶数入力Y0,Y2,Y
4及びY6は共通ブロックCBLKK 232において
処理される前に対にされる必要はない。しかしながら、
奇数入力がそのような対である必要があるだけでなく、
入力Y12は適切な入力値が共通ブロックCBLK 2
32に送られることを確かにするために2の平方根によ
って乗算されなければならない。事前共通ブロックPR
EC 231は各入力値用に2入力乗算(「MUX」)
ラッチC10,C54,C32及びC76を有する。2
入力MUXラッチへの1入力はその結果として未処理の
入力値に直接結合され、他の入力は分解加算器及び入力
Y1用の2の平方根の分解乗算器から入力される。よっ
て、正しい対の又は対でない入力を、それら2つの入力
間の多重化ラッチの単なる切り換えによって共通ブロッ
クCBLK 232に容易に送ることができる。
【0139】図10に示すように、2の平方根の乗算器
D1,D3,D5,D7は好ましくはそれらの出力を定
める。すなわち、完全な合計を生成するためにキャリビ
ットが加算されている結果を生成する。これはその乗算
器からの出力が対応するパラレルデータ通路において未
乗算の入力として同一のバス幅を有することを確かにす
る。
【0140】本発明による共通ブロックCBLK 23
2の好ましい実施例は、Y[1,0]及びY[5,4]
各々についての前方データ通路に「ダミー」減算器24
0を含む。それら素子は2つの入力をパラレル出力とし
て通過するように結合するために動作する(ダミー減算
器の場合、1つの入力の2の補数をとった後)。各場合
において、1つの入力はそれが次の処理段で加算される
キャリビットを含むように処理される。よって、対応す
る加算及び乗算は遅延されるけれども行なわれる。
【0141】この技術はフルスケールの加算器/乗算器
をそれら素子の実現では必要としないので上方の2つの
データ通路に必要なリソースを減少させる。よって、そ
の「結合器(combiners)」は加算器及び乗算
器として動作し、それら素子のために実行させることが
でき、次の加算のための素子への単なる導体として又は
減算のためのインバータ列として実行させることがで
き、それらのいずれも少しもまたは全く追加回路を必要
としない。
【0142】そのような結合器の使用は、共通ブロック
CBLK 232における始めの加算器及び減算器から
の出力が同一の幅を全て有し、底部の2つのデータ通路
にあるキャリセーブ加算器/減算器の出力と一致するこ
と意味している。それらはその2つのデータ通路で共通
ブロックCBLK内のそれに続く分解加算器及び減算器
への入力を生成する。
【0143】上記したように、偶数入力は本発明の好ま
しい実施例において奇数入力と分離して処理される。奇
数入力が先ず処理されるとする。管理制御回路(図10
に図示せず)は奇数入力ワードを事前共通ブロックPR
ECに供給し、対の値p0〜p3(図9を参照、p
(n)の定義)を記憶する多重ラッチC10,C54,
C32,C76の低位入力(図10を参照)を選択す
る。ラッチ1h0,1h1,1h3及び1h2は各々値
H0,H1,H3及びH2をラッチするために活性化さ
れる。
【0144】その管理制御回路は事前共通ブロックPR
EC 231内の2入力多重ラッチC10,C54,C
32,C76の上側入力をラッチし選択し、偶数入力ワ
ードをそれらラッチに供給する。偶数入力はg0〜g3
の値を生成するために用いられるので、管理制御回路は
事後共通ブロックPOSTC 233内のラッチLg0
〜Lg3をg(k)値を記憶するために制御する。
【0145】g(k)及びh(k)値がラッチされる
と、事後共通ブロックPOSTC 233は分解加算器
/減算器を減算モードに切り換えることにより高位信号
X7,X6,X5及びX4を出力する。低位出力信号X
3,X2,X1及びX0は分解加算器/減算器を加算モ
ードに切り換えることにより発生される。出力データに
ついては自然の順を含む任意の順に送ることができる。
【0146】本発明による好ましい多重化の実行は図1
0に非常に簡単な図形として示され、図9に示された非
多重化構成と同一の計算を行なう。しかしながら、共通
ブロックCBLK 232における加算器、減算器及び
乗算器の数は半分に削減され、ダミー加算器/減算器の
使用は高価な演算回路の複雑さを更に減少させる。図1
1は本発明の実施例によるIDCT回路の実際の主成分
及びデータラインを示している。その主成分は事前共通
ブロック回路PREC 231、共通ブロック回路CB
LK 232、及び事後共通ブロック回路POSTC
233を含む。また、そのシステムは入力、タイミン
グ、及び制御信号を事前共通ブロック回路PREC 2
31及び事後共通ブロック回路POSTC 233に直
接又は非直接に供給するコントローラCNTL 241
を含む。
【0147】本発明の好ましい実施例においては、入力
及び出力信号(Y0〜Y7及びX0〜X7)は22ビッ
ト幅である。これが存在する工業標準によって測定され
るように許容できる正確性を確保することができる最小
幅であることをテストは示している。以下に詳細に説明
するように、この最小幅は「1」又は「0」であるべき
選択された演算素子内のあるキャリワードを強制するこ
とにより部分的に得られる。本発明によれば、あるデー
タワードの調整に相当するこのビット操作は公知の入力
テストデータのIDCT変換を用いた後に、IDCTシ
ステムの結果の統計的な分析の結果として行なわれる。
あるビットを所定値に強制することによって、四捨五入
及び切り捨て誤差の影響を減少させることができること
が分かり、それによってIDCTシステムからの空間出
力データが公知の「正しい]空間データから少ない差異
にすることができた。しかしながら、本発明の実施例に
よる回路に用いられる成分は公知の方法を用いて異なる
バス幅に全て適応させることができるので、本発明は他
のデータワード長に同様に適用することができる。
【0148】共に処理される全ての4つの入力は88の
パラレル導体(4×22)を介して事前共通ブロックP
RECに同期して入力されるが、画素ワードは送信デー
タからの時点に1に通常変換される。実施例によれば、
入力データワードは好ましくは1つの22ビット入力バ
スを介して直列に全て搬送され、各入力ワードはデータ
通路内の適切な入力ポイントで順にラッチされる。図1
1に示したように、22ビットの入力データバスはT_
IN[21:0] 242で示されている。
【0149】その図において、以下に説明するように、
多数ビット信号はコロン「:」の左の高位ビットとコロ
ンの右の最下位(LSB)を有するブラケットに示され
る。例えば、入力信号T_IN[21:0]242は0
から21までの番号のビットを有する22ビット幅で
あ。単一のビットは平方ブラケット内の単一番号として
定義され、T_IN[1]は信号T_INの最下位ビッ
トの次のビットを示す。
【0150】本発明の実施例においては、次の制御信号
は事前共通ブロックPREC 231の動作を制御する
ために用いられる。 IN_CLK,OUT_CLK:本発明によれば、その
システムは好ましくは重なり合うことがない2つの位相
クロックを使用する。その信号IN_CLK及びOUT
_CLKは入力、中間及び出力信号の値を保持するラッ
チの列である。
【0151】LATCH10,LATCH54,LAT
CH32,LATCH76:好ましくは、1つの22ビ
ットワードは1度にシステムに入力される。一方、4つ
の入力信号は一度に処理される。各入力信号は3つの他
の入力ワードと処理される前にそのアーキテクチャ内で
適切な位置でラッチされなければならない。それらのラ
ッチ信号は各入力ラッチを作動させるために用いられ
る。例えば、信号LATCH54は先ず入力信号Y5を
ラッチし、その後、次の処理段の間だけ入力信号Y5
(図10を参照)と同一点で事前共通ブロックPREC
231に入力する入力信号Y4をラッチするために用
いられる。
【0152】LATCH:4つの偶数又は奇数入力信号
が事前共通ブロックPREC 231にラッチされる
と、好ましくはラッチのその後の列へ同じ時点でシフト
される。信号LATCHは事前共通ブロックPREC
231内の演算素子によって演算動作される4つの入力
値を保持する入力ラッチの第2列を作動させるために用
いられる。
【0153】SEL_BYP,SEL_P:図10に示
されるように、ラッチC10,C54,C32及びC7
6にラッチされる偶数入力信号は加算器及び2の平方根
の分解乗算器を迂回するようにされるべきである。しか
しながら、奇数入力信号は対の入力p(n)を形成する
ために先ず対にされなければならない。信号Y1は2の
平方根によって乗算される必要がある。制御信号SEL
_Pはその対にされた入力信号を選択するために作用さ
れる。従って、それらの信号は事前共通ブロックPRE
C 231の出力ラッチへ制御信号を通過させるマルチ
プレクサとして動作するゲートを制御するために用いら
れる。
【0154】上記したように、厳格な昇順に入力信号を
配置しないことは高相互接続効率を有する簡単な「バタ
フライ」バス構造をもたらす。また、述べたように、奇
数入力が先ず、事前共通ブロックへグループとして供給
され、それに続いて偶数入力となる。しかしながら、順
番は各奇数又は偶数グループ内で用いられれば良い。す
なわち、入力の順は奇数入力を処理するために分離して
与えられる、又は回路の分離領域内に少なくとも与えら
れる如く適切なラッチ配置を用いることができる。
【0155】管理制御回路は事後共通ブロックPOST
C 233のためにタイミング及び制御信号を発生す
る。それらの制御信号は次の如くである。 EN_BH,EN_GH:図9を再度参照すると、共通
ブロックCBLK_232からの出力は、奇数入力を処
理した後、H0,H1,H3及びH2として示される。
それらの信号は最初の共通ブロックCBLK1 232
内の係数乗算器dl,d3,d7,d5各々に送出され
る。信号EN_BHは係数乗算器において乗算された
後、h0〜h3値を保持するラッチを作動させると共に
g0〜g3値を保持するラッチを作動させるために用い
られる。
【0156】ADD,SUB:図10に示したように、
実施例は低位出力を生成するために合計及び差g(k)
及びh(k)値を求める分解加算器/減算器の1つのバ
ンクを含む。信号ADD,SUBはその分解加算器/減
算器を加算及び減算モード各々に設定するために用いら
れる。 EN_O:この信号は分解加算器/減算器からの結果を
ラッチする出力ラッチを作動させるために用いられる。
【0157】MUX_OUT70,MUX_OUT6
1,MUX_OUT43,MUX_OUT52:本発明
のよれば、システムからの出力データは好ましくは1つ
の22ビット出力バスを介して送出され、それによっ
て、1つの出力値(X0〜X7)だけが一度に送出され
る。それらの信号は4つのラッチされた出力値の最終の
出力ラッチにラッチされるべきものを選択するために順
に作用される。よって、それらの信号は4−1マルチプ
レクサのための制御信号として動作する。
【0158】T_OUT[21:0]:これは事後共通
ブロックPOSTC 233からの22ビットの信号を
示す。 事前共通ブロックPREC 231からの出力信号は共
通ブロックCBLK 232への入力信号を生成させるためにラッチされる。
図11に示されたように、事前共通ブロックPREC
231からの出力信号は4つの22ビットのデータワー
ドCI10[21:0],CI54[21:0],CI
32[21:0],CI76[21:0]として与えら
れ、それは共通ブロックCBLK 232への入力信号
IN[0],IN[1],IN[3],IN[2]とな
る。
【0159】図11に示すように、共通ブロックCBL
K 232からの4つの22ビットの結果は出力信号O
UT0[21:0],OUT1[21:0],OUT3
[21:0],OUT2[21:0]として並列に変換
される。それは、CO70[21:1],CO61[2
1:1],CO43[21:1],CO52[21:
1]として事後共通ブロックPOSTC 233の入力
信号としてラッチされる。
【0160】共通ブロックCBLKのために要求される
制御信号はない。この例のIDCTシステムのユニーク
な構成のため、システム動作の共通ブロックについては
クロック、タイミング又は制御信号を必要とせず純粋な
論理動作として動作することができる。これは更に素子
の複雑さを減少させる。アプリケーション(特に、全て
の必要な演算動作を行なうために十分の時間があるも
の)によっては、事前共通ブロックPREC 231及
び事後共通ブロックPOSTC 233がクロック、タ
イミング又は制御信号なしに動作するように構成しても
良い。
【0161】図12は本発明における事前共通ブロック
PREC 231のブロック図である。この図及びそれ
に続く図において、記号「S1[a],S2[b],
…,SM[Z]」は信号S1,S2,…,SMから選択
したビットa,b,…,zが、信号S1の選択ビット
「a]である最上位ビット(MSB)及び信号SMの選
択ビット「z」である最下位ビット(LSB)と共に同
一のバスを介して並列に転送されることを表している。
ここで、Sは任意の信号表示、a,b,…,zは信号の
バス幅の範囲内の整数である。その選択ビットは個々の
ビットである必要はない。むしろ、全体的又は部分的な
多数ビットワードは他の単一ビット(bits)、或い
は完全な又は部分的な多数ビットワードと共に送出され
ても良い。図において、シンポルSは対応する信号表示
によって置き換えられる。
【0162】例えば、図12において、2の平方根の乗
算器はR2MULの如く示される。この未分解乗算器か
ら出力される「セーブ(save)」又は「未分解合計
(unresolved sum)」は21ビットワー
ドM5S[20:0]として示され、同様に、乗算器R
2MULから出力された「キャリ」は22ビットのワー
ドM5C[20:0]として表され、それはキャリセー
ブ分解加算器M5Aの「b」入力へのバスを介して転送
される(「0」はセーブ出力の最下位21ビットにMS
Bとして挿入される。しかしながら、これは分解加算器
M5Aの「a」入力へ供給される前になされる。これは
記号GND M5S[20:0]で図12には示されて
いる。)言い換えすれば、加算器M5AへのMSB入力
に対応する導体はグランドGNDにそれを接続すること
により強制的に「0」にされる。
【0163】「0」がなぜ「合計」の22番目のビット
として挿入されるかを理解するために、乗算の部分合計
がn場所分の幅をであれば、キャリワードは部分合計に
関して左へ1場所分だけシフトされる。よって、そのキ
ャリワードは最下位位置内の「0](単位位置の中にキ
ャリビットを生成するためこの位置の前には何もないの
で)を有するn+1番目の位置の有効データビットでn
+1場所に拡張される。それらの2つのワードが分解2
進数加算器への入力として用いられるならば、キャリワ
ードのビット(数字)が部分合計の対応するビットと適
切に位置合わせされることを確実にするように注意しな
ければならない。これは十進小数点(例えば、整数演算
における如く)が両ワード内における位置合わせをもっ
て維持されることを確実にする。加算器への入力がn+
1ビット幅とすると、他の入力でキャリワードと位置合
わせされるn+1ビット入力を与えるために「0」を全
てのnビットのポジティブ部分合計ワードの最高位ビッ
トに挿入することができる。
【0164】上記したように、事前共通ブロックPRE
C 231内で与えられた時間で処理される4つの入力
は入力バスT_IN(21:0)を介して転送される。
この入力バスは4つの入力ラッチIN10L,IN54
L,IN34L及びIN76Lの入力に接続される。各
ラッチは、入力クロック信号IN_CLK及び対応する
ラッチ選択信号LATCH10,LATCH54,LA
TCH32,LATCH76が高レベル(high)で
あるときだけ作動可能にされる。よって、ラッチ可能信
号LATCH10,LATCH54,LATCH32,
LATCH76が引き続いて生じることにより4つの入
力をIN_CLK信号の4つの期間内にそれら各入力ラ
ッチにラッチすることができる。この時間の間に、4つ
の入力値を安定化しかつラッチするためにLATCH信
号は入力ラッチIN10L,IN54L,IN34L及
びIN76Lを活性化するように低レベル(又は異なる
位相)にされるべきである。
【0165】本発明に応じたラッチのタイミングの例は
図13に示されている。4つの入力信号が好ましい順に
ラッチされると、それらはラッチL10L,L54L,
L32L,L76Lの第2のバンクへ送られる。それら
ラッチの第2のバンクは、信号OUT_CLK及びLA
TCHが高レベルのときに作動可能にされる。その信号
タイミングは図13に示される。
【0166】本発明のシステムは8つの入力ワード全て
の入力を遅延させる必要はない。全ての偶数又は奇数入
力ワードが入力ラッチIN10L,IN54L,IN3
4L及びIN76Lに受け入れられラッチされると、I
N_CLKの次の立ち上がりエッジで遅延なく他の4つ
の入力信号を受け入れ始めることができるようにその入
力ラッチは解放される。
【0167】図の中で示された様々な成分のために用い
られた2つの数字のサフィクス記号[10,54,3
2,76]は、奇数信号が先ず処理され、その構造内の
その後のパスにおける偶数信号が続くことを示してい
る。上記したように、この順番は本発明においては要求
されず、付加的な順番を用いても良いことはこの分野の
当業者には理解され得る。
【0168】4つの入力信号がラッチL10L,L54
L,L32L,L76Lの第2のバンクに適切な順番で
ラッチされると、対応する値は選択バイパス信号SEL
_BYPの活性化により出力ラッチC10L,C54
L,C32L,C76Lへの入力として供給されるか、
又はそれらは「セレクトp」信号SEL_Pの活性化に
より同一の出力ラッチへ対とされかつ乗算された入力と
して供給される。言い換えれば、全ての信号は事前共通
ブロックPREC 231の出力ラッチC10L,C5
4L,C32L,C76Lへ直接及び非直接的に、演算
素子を介して供給される。しかしながら、適切な値は
「選択バイパス」信号SEL_BYP(偶数入力Y0,
Y2,Y4及びY6用)又は「セレクトp」信号SEL
_P(奇数入力Y1,Y3,Y5及びY7用)の活性化
によりそれらラッチにロードされる。この分野の当業者
には理解され得るであろうが、それら及びその他の制御
信号の所望のタイミング及び順番はコントローラCNT
L241の適切な動作構造及び又は[マイクロ]プログ
ラミングによって公知の方法で容易に達成される。
【0169】ラッチL10Lの出力にて最上位の入力値
は2の平方根の乗算器R2MULへ先ず供給され、そし
て示されたように分解加算器M5Aに供給される。分解
加算器M5Aからの出力は2の平方根によってラッチL
10Lからの出力の分解乗算と等価として示される。そ
の他の3つのラッチL54L,L32L,L76Lから
の出力は、22ビットのランチバスLCH54[21:
0],LCH32[21:0],LCH76[21:
0]を介して直接的に及び分解加算器P2A,P1A及
びP3A各々を介して非直接的に、対応する出力ラッチ
C54L,C32L及びC76L各々に転送される。
【0170】本発明においては、各分解加算器P2A,
P1A,P3Aは2つの入力「a」及び「b]を有して
いる。加算器P2Aについては一方の入力はラッチL3
2Lから入力され、他の入力はラッチL54Lから入力
される。(L54Lにラッチされた)入力値Y5及び
(L32Lにラッチされた)Y3については加算器P2
Aからの出力がY5+Y3に等しく、それは上記したよ
うにp(2)に等しい。従って、その加算器は対の入力
値p(1),p(2)及びp(3)を生成するために奇
数入力を対にする。勿論、L54L,L32L,L76
Lにラッチされた偶数入力信号は分解加算器P2A,P
1A,P3A各々を介して通過するが、その結果として
生じるp「値」は出力ラッチC54L,C32L,C7
6Lへは供給されない。なぜなら、その「選択p」信号
SEL_Pは偶数入力に対しては活性化されないからで
ある。
【0171】入力クロック信号IN_CLKの活性化に
より出力ラッチC10L,C54L,C32L,C76
Lにラッチされる値は、偶数入力Y0,Y2,Y4,Y
6又は奇数入力について対となった入力値P0,P1,
P2,P3に等しくなる。入力Y(1)は値U(−1)
と「対」にされ、それは0になると仮定される。図12
に示されたように、この仮定は値Y1に何も加算しない
ことによって実行される。代わりに、Y1は図9及び図
10に示したように2の平方根によって乗算されるだけ
である。
【0172】図14は本発明における共通ブロックCB
LK 232の好ましいアーキテクチャを示している。
異なるシステムブロック内の様々な乗算及び加算のため
その様々な計算を行なう前にその共通ブロックへの入力
値を下方調整することが必要又は利点となる。これはシ
ステム内の様々な演算素子への対応する入力のために同
一の十進小数点(それは整数演算ために伴う)の位置を
可能にする。
【0173】よって、入力値IN0[21:0]及びI
N1[21:0]はディジタル演算において2ビットの
右シフトに対応する4のファクタによって下方調整され
る。2進数表現において数の符号を(正の値を正に、負
の値を負に)維持するために、最上位ビット(MSB)
はその結果として生じる右シフトしたワードの2つの最
上位ビットに複写される。この処理は「符号拡張(si
gn extention)」として知られている。従
って、入力値IN0は符号拡張で2ビットだけ下方シフ
トされてIN[21],IN0[21],IN0[2
1:2]として示されたシフトした入力値を形成する。
入力値IN1[21:0]は同様に2つの位置だけ符号
拡張される。また、入力IN2はシフトされ、IN2
[21],IN2[21:1]を生成するために拡張さ
れる。それらの1位置のシフトは2のファクタによる切
り捨て除算に対応する。
【0174】図10に示されたように、入力IN2,I
N3はその調整された係数c1s及びc3sによって乗
算される必要があるものである。各入力IN3及びIN
2波調整された係数の各々によって乗算される必要があ
る。図14に示すように、これは4つの一定係数キャリ
セーブ乗算器MUL C1S,MULNC1S,MUL
C3C3,及びMULC2S2によって行なわれる。底
部のIN2用の乗算器は反転乗算器MULNC1Sであ
る。すなわち、その出力は一定値C1Sにより乗算され
る入力の値の負に相当する。よって、C76にラッチさ
れた値は(C3Sによる乗算の後)C32にラッチされ
た値から減算される。反転乗算器MULNC1Sを備え
ることによって、減算は対応する値の負を加えることに
より行なわれ、それは差を生成することと同等である。
これは後段の加算器に同様の回路の使用を可能にする
が、非反転乗算器を使用することはその後に減算器が用
いられることになる。
【0175】本発明の図示した実施例において、4つの
コサイン係数乗算器MUL C1S,MULNC1S,
MULC3C3,及びMULC2S2が含まれる。も
し、構成が信号が乗算器を分離して通過するようにされ
るならば、必要な乗算は2つの乗算器だけ、すなわちc
1s係数用とc3s係数用を用いて行なうことができ
る。
【0176】本発明によれば、乗算器MUL C1S,
MULNC1S,MULC3C3,及びMULC2S2
は好ましくはキャリサーブ形であり、それは2つの出力
ワード、すなわち、ハードウエア乗算器内で行なわれる
多数の行の加算の結果に対応する一方と、生成されるキ
ャリビットに対応する他方とをそれら乗算器が発生する
ことを意味している。乗算器からの出力は2つの4入力
分解加算器BT2,BT3のいずれかへの入力として接
続されている。
【0177】簡単な図示だけのため、乗算器からの5つ
の出力バスは、この分野の当業者には理解できるので、
加算器の対応する入力バスに接続されるように描かれて
おらず省略されている。それらの接続は理解されるべき
であり、同一のラベルを有する各出力及び入力によって
描かれる。従って、乗算器MULC1Sの同一の出力M
1S[20:0]は加算器BT3の入力「sa(sav
e−a)」の低位21ビットに接続される。
【0178】図14に示されたように、加算器BT2及
びBT3への5つの入力は「分割(split)」であ
るように示される。例えば、加算器BT2の「ca」入
力は最下位の21ビットとしての入力であるMC3[2
0:0]の上にIN3[21]を有するように示されて
いる。同様に、同一の加算器の入力「sa]はGND、
M3S[19:0]の上のGNDであると示されてい
る。これは2つの0がこの入力ワードの2つの最上位ビ
ットとして追加されることを意味する。そのような追加
のビットは適切な22ビット幅の入力ワードが適切な符
号を有して生成されることを確実にする。
【0179】キャリセーブ加算器BT2及びBT3は2
つの異なる22ビットの入力のキャリワード及びセーブ
ワードを加算して22ビットの出力セーブワードT3S
[21:0]及び21ビットの出力キャリワードT3C
[21:1]を生成する。よって、各加算器への入力は
88ビット幅であり、各加算器からの出力は43ビット
幅である。図10に示したように、キャリセーブ加算器
BT3からの出力と加算される前に、ラッチC10から
の出力は最上方のデータ通路におけるラッチC54から
の出力と結合される。しかしながら、その「結合(co
mbination)」は上方データ通路におけるそれ
に続く加算器に到達するまでには必要はない。その結
果、図14に示すように、そのシフトされかつ符号拡張
化された入力値IN0は 上方キャリ出力に接続され
る。加算器CS0の上方キャリ入力はそのシフトされか
つ符号拡張化された入力値IN0に接続され、そのシフ
トされかつ符号拡張化された入力値IN1は同一の加算
器の上方セーブ入力として接続される。言い換えれば、
IN0及びIN1は加算器CS0において後で加算され
る。
【0180】よって、図10に示した点で必ず行なわれ
る必要はないが、図10に用いた特定の「ダミー」加算
器/減算器240は、動作が行なわれる必要があること
を示す。同様に、図10に示した下方のダミー減算器2
40はラッチC10の出力から減算されるべきラッチC
54からの出力を必要とする。これはC10からの出力
をC54の出力の補数と加算することと同一である。
【0181】図14を再び参照すると、(図10のラッ
チC54の出力に対応する)入力IN1の補数は22ビ
ットの入力インバータIN1[21:0](それはその
入力の各ビットのビット単位の論理反転を生成する)に
よって行なわれる。IN1値の補数、NIN1[21:
0]は加算器CS1の上方「セーブ」入力に、シフトさ
れかつ符号拡張化されたIN0である対応する上方「キ
ャリ」入力と共に供給される。加算器CS1の上方部分
ではIN0引くIN1に相当する減算が行なわれる。
【0182】図10に示した下方の2つのデータ通路に
おいては、分解減算器が共通ブロックCBLK 232
の出力で上方の2つのデータ通路内に示された分解加算
器の代わりに用いられる。各分解加算器又は減算器は分
解加算器が後段に続くキャリセーブ加算器又は減算器と
等しい。これは図14に示されている。図10に示した
接続構成に従って、減算器CS2及びCS3はそれらの
入力としてIN0〜IN3の処理した値を有する。
【0183】加算器/減算器C20〜CS3の各々から
の22ビットのキャリ及びセーブ出力は、分解加算器R
ES0〜RES3において分割される。この分野の当業
者には分かるように、キャリ及びセーブ出力の分解はデ
ィジタル設計の分野ではよく理解されるので、ここでの
より詳細な説明はしない。図14に示すように、キャリ
セーブ加算器/減算器CS0〜CS3のセーブ出力は対
応する分解加算器RES0〜RES3の「a」入力への
22ビットの入力として直接供給される。
【0184】この分野では良く知られているように、2
進数の2の補数はそのビットの各々を反転し(「1」を
「0」に、又は「0]を「1」に)、「1]を加算する
ことにより生成される。その「1」についてはビット反
転の後に直ちに、又はより遅れて加算することができ
る。キャリワードのLSBは常に「0」であり、それは
キャリワードO0C及び01Cを分解加算器RES0及
びRES1各々に入力されるようにグランドGNDに結
合することによって本発明の実施例では行なわれる。し
かしながら、2の補数をとった値を生成するために減算
器CS2及びCS3のキャリ出力への「1」の加算は、
電圧VDDを供給するためにそれらデータワードO2C
及びO3SのLSBを結び付けることにより実行され、
それによってキャリワードの「0」LSBは、「1」に
よる加算と同等のように「1」に置き代わる。
【0185】上記の理由により、「0」は、(LSBを
グランドGNDに結合することにより)キャリセーブ加
算器CS0及びCS1からの21ビットのキャリワード
にLSBとして付加される。キャリセーブ減算器CS2
及びCS3からのキャリワードのLSBは対応するデー
タラインを供給電圧VDDに結合することにより「1」
に等しく設定される。よって、分解加算器RES0〜R
ES3は加算器/減算器CS0〜CS3からの出力を分
解して22ビットの出力信号OUT0[21:0]〜O
UT3[21:0]を生成する。
【0186】本発明の実施例におけるIDCT回路の2
つの利点については図14に見つけることができる。第
1に、制御又はタイミング信号は共通ブロックCBLK
232では要求されない。むしろ、その共通ブロック
への入力信号はその共通ブロック232内の純粋な論理
演算素子に直ちに供給されて常に処理される。第2に、
データワードの適切な調整によって、整数演算(又は少
なくとも全ての値のために10進小数点を固定する)を
常に用いることができる。これは正確さについて受け入
れ難い犠牲を伴うことなく浮動小数点の素子の複雑さ及
び遅さを回避する。
【0187】本発明の実施例の他の利点は、示したよう
な入力を順番付けることにより、また平衡の間引き方法
を用いることにより本発明によれば、シリコンでの実現
において多数の点で同様の設計構造を用いることができ
ることである。例えば、図14に示したように、一定係
数乗算器MULC1S,MULC3S3,MULC3S
2及びMULNC1S全ては同様の構成を有し、データ
通路において同一の点でデータを受け入れ、それによ
り、4つの全ての乗算器が同時に動作することができ
る。これは「障害(bottlenecks)」を除去
し、半導体実現では二重のパラレル構造の利点を全て得
ることができる。キャリセーブ加算器BT2及びBT3
はそれに続くキャリセーブ加算器及び減算器のように同
様に同時に動作することができる。この設計の対称性及
び多数の素子の効率的な同時利用は本発明の実施例によ
る構成全てにおいて共通である。
【0188】図15は本発明における事後共通ブロック
POSTC 233の好ましい構成を示している。図1
0に示したように、事後共通ブロックPOSTC 23
3の主要な機能は、係数d1,d3,d5及びd7によ
って共通ブロックの出力を乗算することによりh0〜h
3値を生成すること、低位出力を生成するためg(k)
及びh(k)値を加算すること、及び高位出力を生成す
るためh(k)値から対応するg(k)値を減算するこ
とである。図10及び図15両方を参照して、Bhラッ
チが活性化されたとき、すなわち制御回路がEN_BH
信号を高レベルにし、かつ出力クロック信号OUTC_
CLKを高レベルにしたとき、事後共通ブロックPOS
TC 233は共通ブロックCBLK 232からの対
応する出力をラッチBH0L,BH1L,BH3L及び
BH2Lにラッチする。制御回路が信号EN_GH及び
入力クロック信号IN_CLKを高レベルにすることに
よりラッチG0L,G1L,G3L及びG2Lを活性化
したときg(k),g0〜g3値は対応するラッチG0
L,G1L,G3L及びG2Lにラッチされる。
【0189】処理した奇数入力、すなわち値h0〜h3
は、EN_GH及びIN_CLKが高レベルのとき一定
係数乗算器D1MUL,D3MUL,D5MUL及びD
7MULを介してラッチH0L,H1L,H3L及びH
2Lにラッチされる。それらの乗算器はdl,d3,d
5及びd7によって各々乗算される。好ましい実施例に
おいては、それらの一定係数乗算器は設計を簡単にしか
つ計算速度を上昇させるためには好ましくはキャリセー
ブ乗算器である。図15に示すように、その一定係数乗
算器からの「キャリ(c)」は、以下に述べるある変化
を伴って分解加算器H0A,H1A,H3A及びH2A
の一方の入力に接続される。一定係数乗算器からの「セ
ーブ(s)」は、同様に、以下に述べるある強制的な変
化を伴って対応する分解加算器の他方の入力に接続され
る。
【0190】更に、図15に示すように、H0信号のL
SBは好ましくはH0についての対応する「セーブ」出
力を0にセットすることにより「1」に強制的にされ、
第2のビット(H0S[1]に対応する)は「1」にセ
ットされる。一定係数乗算器D3MULのキャリ及びセ
ーブ出力からのデータワードは、同様に分解加算器H1
Aへの入力として処理される。それら処理及び分解加算
器H1Aへの入力の利点。
【0191】本発明によれば、係数乗算器D7MUL及
びD5MULからのキャリ出力の全ての22ビットは対
応する分解加算器H3A及びH2Aの「a」入力に直接
接続される。各乗算器の「セーブ」出力のMSBは対応
するデータラインをグランドGNDに結合することによ
り強制的に「0」にされる。述べたIDCTシステムは
上記のCCITT仕様にたいして試験される。ディジタ
ル加算器及び乗算器の調整及びその他の公知のプロパテ
ィのため正確性は10000サンプルを通常無駄にする
が、「0」又は「1」へ上記の様々なビットを強制的に
することを行ってディジタル変換の期待誤差を減少させ
た。データワードのビット処理の結果として、本発明の
実施例は同等の正確性を生成するためには24ビットが
通常必要であるが、22ビット幅データワードだけを用
いてCCITT規格の元で許容できる正確性を達成し
た。
【0192】正確性の限界や切り捨て及び四捨五入誤差
のため、IDCTシステムでは各データワード毎にいく
らかの不正確が通常ある。しかしながら、データワード
の選択ビットを強制してエラーが全体の結果、統計的に
よく生じるハードウエア内の特定の点で特定のデータワ
ードの中に系統的に生じたことが発見された。ビット強
制は例えば、1以上のキャリビットを選択的に所定値に
強制することにより処理内で適用しても良い。
【0193】本発明においては、ビット強制方法は特定
の値をとるために常に強制されるあるビットと静的であ
る必要はなく、むしろ動的方法が用いられて良い。例え
ば、データワードの選択ビットは、ワードが偶数又は奇
数、正又は負、閾値より上又は下等のいずれかであるか
に従って「1」又は「0」に強制される。通常、単なる
小さな系統的な変化は全ての統計的な動作を改善する必
要がある。従って、本発明の実施例によれば、選択デー
タワード(必要はないが、好ましくは一度に1ビット及
び1ワード)のLSBは「1」又は「0」に強制され
る。CCITTテストが実行され、その実行のためのC
CITT統計値はまとめ得られる。そして、そのビット
は「1」又は「0」の他値に強制され、テストは再実行
される。他のデータワードのLSB(又はLSBs)は
「1」又は「0」に強制され、同様の統計値が得られ
る。様々な強制したワード内の強制したビットの様々な
組み合わせに対する統計値を試験することにより、最良
の統計的な動作を決定することができる。
【0194】しかしながら、この統計的な根拠を置く改
善が必要ないならば、一定係数乗算器D1MUL,D3
MUL,D5MUL及びD7MULからの出力が分解加
算器H0A〜H3Aにおいて従来の方法で分解されても
良い。その対応するラッチH0L〜H3Lの入力の低位
21ビットはそれらの入力のLSBと共にグランドに結
合される。
【0195】Hラッチ(H0L〜H3L)及びGラッチ
(G0L〜G3L)からの出力は分解加算器−乗算器S
70A,S61A,S43A及びS52Aへのa及びb
入力を対で生成する。上記したように、ADD信号が高
レベルのときそれら入力の加算が行われ、減算可能信号
SUBが高レベルのとき「b」入力を「a」入力から減
算することが行われる。上方の2つのラッチ対H0L及
びG0L、H1L及びG1Lの第2ビットは以下に示す
方法において構成を選択することにより処理される。
【0196】分解加算器−乗算器S70A,S61A,
S43A及びS52Aからの出力は結果ラッチR70
L,R61L,R43L及びR2Lにラッチされる。図
15bに示すように、加算器/減算器S70A及びS6
1Aへの入力ワードは、本発明によれば、処理された各
入力ワードの第2ビットを有する。例えば、加算器/減
算器S70Aの「a」入力への入力ワードの第2ビット
はG0[1M],G0[1M],G0[0]である。言
い換えすれば、第2のビットは値G01Mを有するため
にセットされる。加算器/減算器S70A及びS61A
への他の入力の第2のビットは同様に処理される。この
ビット処理は4つの2:1マルチプレクサH01MU
X,G01MUX,H11MUX及びG11MUX(図
15bの右に図示)によって達成される。本発明におい
ては、それらのマルチプレクサはADD及びSUB信号
によって制御される。すなわち、各加算器/減算器S7
0A及びS61Aがセットされたならば(ADDが高レ
ベル)、第2のビット(H01M,G01M,H11M
及びG11M)が1にセットされ、SUB信号が高レベ
ルにセットされたならば、その第2のビットはその実際
のラッチ出力値にセットされる。この方法における個々
のビットの設定は高速動作を容易に行なう。上記したよ
うに、数多くのテスト画素ワードの統計的分析が更に正
確な結果をそれによって得ることを示しているので、そ
の好ましい実施例はビット強制構成を含む。しかしなが
ら、この方法においてより小さいワード幅の利点を与え
るが、第2のビットを処理する必要はない。
【0197】4つの高位又は低位結果は出力ラッチR7
0L,R61L,R43L及びR52Lにラッチされ
る。その結果は多重信号MUX_OUT70,MUX_
OUT61,MUX_OUT43,MUX_OUT52
の制御の元で最終の出力ラッチOUTFに順次ラッチさ
れる。したがって、結果信号が出力される順はラッチに
ラッチされる順を変化させることにより簡単に制御する
ことができる。
【0198】事後共通ブロックPOSTC 233内の
クロック信号と制御信号との間の関係は図13b及び図
13cに示されている。上記したように、2つの1次元
IDCT動作は、2次元IDCTを行なうためにデータ
の間の置き換えで直列的に行なわれる。よって、事後共
通ブロックPOSTC 233からの出力信号は、本発
明の実施例によれば、先ず、RAMメモリ回路等の従来
の記憶ユニットに公知の方法で列方向に(又は行方向
に)記憶され、そして、次の事前共通ブロックへの入力
として供給されるように行方向に(列方向に)記憶ユニ
ットから読み出される。このブロックで上記したように
処理されるために共通ブロックCBLK 232及び事
後共通ブロックPOSTC233においてもである。
【0199】行(列)で記憶させ、列(行)で読み出す
ことは、第2の1次元IDCTの前にデータの置き換え
の必要な動作を行なう。第2のPOSTC 233から
の出力は所望の2次元IDCT結果であり、それを様々
な処理ブロック内で実行された調整シフトをオフセット
するためにシフトすることによる従来の方法において調
整することができる。特に、1つの位置だけの右シフト
は1次元IDCT動作において行なわれる2つの2の平
方根の乗算をオフセットするために必要な2による除算
を行なう。
【0200】アプリケーションに従ってこの第2のID
CT構造(図11に示されたものと好ましくは同一であ
る)は好ましくは分離の半導体である。これは、回路の
単一の実現がリアルタイムで2つの経路を操作すること
ができるように画素クロックレートが十分であるならば
分離した1次元変換が必要ではないが、同一の回路が両
方の変換のために用いられるならば起きる速度の減少を
避ける。
【0201】図16〜図38に示したように、本発明に
よる第2の好ましい実施例は単一の1次元変換を用い
る。この実施例は上記したような画素クロックレートの
低下を必要としない。第1の好ましい実施例において存
在する「分解加算器」は「高速分解加算器」と交換され
ている。図38に示されたようにそれらは「高速分解加
算器」と名称されている。この変換は各データ通路演算
ブロックに対してそのデータ入力に更なる時間を与える
効果を有する。第1の好ましい実施例において存在する
「ラッチ」は2位相の「フリップフロップ」及び「レジ
スタ」に交換されている。
【0202】その存在する1次元IDCTデータ通路パ
イプラインの前後に位置されたラッチィングメモリ素子
は、特に図18に示したように1つのブロックの中に組
み入れられている。よって、第2の好ましい実施例の入
出力にあるメモリ素子の量はT2データの可変量をバッ
ファとするように増加される。図16及び図17に示さ
れたように、2つのデータストリーム、すなわちストリ
ーム「T1」(未処理のデータ)及びストリーム「T
2」(一度1次元IDCTを介し、またTRAM内で置
き換えられているデータ)は、時間多重化方式において
データ通路パイプラインの中に導入される。
【0203】本発明において、各ストリームはデータ通
路パイプラインの中にデータ項目のグループを導くため
にその変化を用いる。そのデータストリームは、図1
7,図18及び図33に示すように、それらがデータ通
路のパイプライン下方に順次送られそのデータ通路の出
力でデインターリーブされるようにインターリーブされ
る。グループは数において変化することができ、例にお
いてはそれらは8ビットである。
【0204】本発明においては、T1は遅らす必要はな
い。T2がT1とインターリーブ(交互配置)の点に到
達したとしても、入力バッファはパイプラインの中にそ
のデータを導入すべきでない。なぜなら、これはT1の
ストリームとぶつかり合い、そして、ストリームT2は
データストリームを遅らせないように余分のバッファリ
ング(蓄え)を備えているからである。しかしながら、
その代わりストリームT1と安全にインターリーブし得
るような時間までにその入力ストリームからのデータが
バッファに保持される。これは図19及び図33に示さ
れおり、そこではストリームT1からのデータは信号
「Latch1(0)〜Latch1(7)」を用いて
ラッチ0〜7において第1の変換の中にロードされてい
る。よって、T2からのデータは図33に示した信号を
用いて図19に示したように「Latch2(0)〜L
atch2(15)」にロードされている。
【0205】インターリーブは「T1 OK2挿入(i
nsert)」及び「T2 OK2挿入」信号によって
制御される。通常の動作の元ではインターリーブはその
信号が高レベルになったとき生じる。しかしながら、
「T2 OK挿入」が高レベルの時にT2用のラッチ内
のデータ量がまだ適切な量に達していないならば、その
ラッチはその機会を失い、データを挿入する次の機会が
生じるまでデータのバッファリングを続けなければなら
ない。
【0206】概要として本発明における上記のバッファ
リングが生じるならば、比較できる「損失(slipp
age)」がT2の出力で生じなければならない。T2
はそのデータ挿入点を失いかつ図19に示したラッチ内
にバッファリングし続ける必要があるときスリップす
る。T2がスリップし、パイプラインの中にデータを導
けないならば、データ通路の出力でそのT2ストリーム
出力内に対応するギャップが存在する。このギャップは
そのT2出力にて余分のバッファリングの使用によって
取り去られる。この処理は可変T2−1次元IDCTと
共に「固定した]T1−1次元IDCT変換を有すると
思われる。ここで、データストリームは同一の演算デー
タ通路パイプライン部分を用いるので時間多重化方式で
インターリーブされる。
【0207】本発明においては、データがT1に入力さ
れないとき「復旧(Recovery)」が起きる。そ
れはT2バッファがT1及びそのデータストリームに追
いつくための機会である。データ無しはIDCTを迂回
するデータタイプであり、図34の「Latch2
[φ]」にデータスパイクとして示されている。これは
結局はT2入力をそのようにし、それはT2のバッファ
リングにその出力で満たすことである。「T2dou
t」信号及び「out」信号がサイクルの数だけギャッ
プされるとき復旧は図33及び図25に示される。その
ギャップはデータストリームを修復するための基準とし
て用いられる。T2用のラッチがそのデータを挿入する
ことを待っていたときそれら2つの信号の間のサイクル
におけるギャップがバッファリングのギャップと同一で
ある。
【0208】POSTC 233内のTRANSFOR
M(変換)に続いて、インターリーブされたストリーム
は図18及び図23に示すように、「T2out」の中
でデインターリーブされる。その「T2out」データ
ストリームは上記したようにそのデータ内にスリップギ
ャップを有している。図17に示したT2out[14
3:φ]は、図17のブロック「IDDPMUX」とし
て示された16:1のマルチプレクサブロックに入力す
る。マルチプレクサブロックは図25に示したように、
出力バッファブロック内の16位置のうちの1位置から
データを選択する。この位置は図29に示した制御ロジ
ックによって選択され、その制御ロジックはその入力に
てT2のバッファアップをするまでそのギャップを使用
する。このギャップは基準として用いられる。マルチプ
レクサブロックからの出力ストリームT2DOUTは修
復されたデータストリームである。
【0209】上記したIDCT構造のために本発明の実
施例で実行される範囲テストにおいては、中間値及び最
終値はCCITT規格に合致する一方、各点で公知の範
囲内に維持される。このため、演算計算においてオーバ
フロー又はアンダーフローの恐れなく少量だけ(例え
ば、所望の値に選択データワードのあるビットを強制す
ることによって)上記したように選択値を「調整する」
ことができた。
【0210】本発明による方法及びシステムは多数の方
法に変更することができる。例えば、加算又は乗算を分
解するために用いる構成は公知の技術を用いて変更する
ことができる。よって、好ましい実施例が分離した分割
加算器でキャリセーブ素子を用いている減算器の分割加
算器を使用することができる。また、本発明の好ましい
実施例はそれらの許容範囲内に全ての値が残ることを確
実にするように様々な点で下方調整を用いる。しかしな
がら、下方調整は、他の予防処置がオーバフロー又はア
ンダーフローを防止するためにとられるので必要ない。
【0211】本発明の一実施例においては、様々なデー
タワードの所定のビットがシステム内で要求されたワー
ド幅を減少させるように処理される。しかしながら、様
々な中間値は勿論ビット処理なく転送されても良い。更
に、データワードだけが本発明の図示した例内ではビッ
ト処理されるが、一定係数のビットを処理し、CCIT
T規格の元ではその結果を評価することができる。その
結果の比較がある場合に、特定のビットを所定の値に強
制することに利点があることを示したならば、対応する
乗算器を実行するために要求されるシリコン領域を更に
減少させるために、それらの係数の2進数表現における
「0」の数を増加させることができる。
【0212】本発明の上記した態様のまとめにおいて
は、次のことが述べられる。第1データストリーム源を
定義する第1のラッチ及び第2データストリーム源を定
義する第2のラッチを有するデータを変換する装置。第
1及び第2ラッチは1つの演算ユニットと通信する。そ
の演算ユニットは置き換えRAMにデータを伝達し、そ
の置き換えRAMはデータを置換し、それを第2ラッチ
に転送する。第2ラッチは調整可能であり、受信及び送
信されているデータの可変レートを調整するためにサイ
ズを変更できる。第2ラッチ及び第1ラッチは演算ユニ
ットに順次第1及び第2データストリームを伝達する。
しかしながら、その第2ラッチの逐次伝達は第1ラッチ
からの伝達を妨害しない。この方法において、共通の演
算ユニットは第1及び第2データストリームのために用
いられる。更に、共通の演算ユニットを使用してデータ
を変換する処理について次に述べる。先ず、第1ラッチ
にデータを読み込みし、所定数のサイクルに到達する
と、演算ユニットにデータを送信し、制御シフトレジス
タの中に第1マーカビットを読み込む。次に、第2ラッ
チにデータを読み込み、その第2ラッチは調整可能であ
り、異なるレートで受信及び送信されているデータの可
変レートを調整するためにサイズを変更できる。次のス
テップは、第1制御シフトレジスタが所定の状態に達
し、かつ第2ラッチが所定データ量で満たされたとき、
第2ラッチ内のデータを演算ユニットに送信することで
ある。次に、第2ラッチが所定データ量で満たされない
ならば、第2ラッチからのデータの送信を防止し、第1
ラッチがデータを受け入れていないとき第2ラッチを複
旧させる。
【0213】時間同期についての本発明の詳細な説明 MPEG−2において、ビデオ及びオーディオデータは
MPEG−2システムストリームにおいて搬送される情
報を用いて同期をとっている。これについて、本質的に
同期を処理する2つの情報タイプ、クロック基準及びタ
イムスタンプがある。クロック基準はデコーダに何番が
時間「今(now)」を表すかを知らせるために用いら
れる。これは、デコーダが現時間が何であるかを常に知
るように規則的な間隔で増加するカウンタを初期化する
ために用いられる。
【0214】タイムスタンプはプログラム(通常、ビデ
オ及びオーディオ)を作成するために用いられるデータ
の流れ(stream)の中に置かれる。ビデオの場
合、タイムスタンプは映像と関連され、(クロック基準
によって初期化されたカウンタによって設定された)何
「時」に映像が表示されるべきかをデコーダに伝達す
る。MPEGにおいて、システムストリームの中へは一
連のクロック基準で多重化される。それらのクロック基
準は「システム時間」を設定する。2つのクロック基準
のタイプ、プログラムクロック基準(PCRs)及びシ
ステムクロック基準(SCRs)である。本発明におい
て、そのクロック基準各々がデコーダによって同一の方
法で使用されるので、PCRs及びSCRsの間の差異
は問題とならない。PCRs及びSCRsは分解能を2
7MHz(又は秒当たり1/27×10e6)に拡張す
る更なるフィールドを有する90MHzの分解能へのタ
イミング情報を有する。クロック基準は「システム時
間」がランダムアクセス又はチャンネル変更の後、再初
期化される順でデータストリームの中に含まれる。よっ
て、タイムスタンプは映像を簡単に復号化できるデコー
ダの仮定モデルを示すことを理解することが重要であ
る。この分野の当業者には理解できるように、実際のデ
コーダはこれをすることができず、映像を表示すべき理
論的時間を変更するステップをとらなければならない。
更に、タイムスタンプ及びクロック基準は表示時に表示
時間及び誤差を決定するために用いられる。この変更は
特定のデコーダのアーキテクチャの詳細に従う。ビデオ
デコーダによって導出される遅延はオーディオデコーダ
における遅延と明確に等しくなければならない。
【0215】MPEGを復号するときには「システム時
間」の概念において不連続が起きる。例えば、編集した
ビットストリームにおいて、各編集点は不連続な時間と
なっている。同様の状態がチャンネル変更でも起きる。
タイムスタンプを用いるとき注意しなればならないこと
は理解できる。なぜなら、その他の体制からクロック基
準によって定義された「システム時間」に関して1の時
間体制において符号化されたタイムスタンプを用いるこ
とは不正確な結果を確実に導くからである。
【0216】図39は基本ストリーム250に中にMP
EGシステムストリームの多重分離を示している。一般
に、ある形式のデータが転送されるものであるが、各基
本ストリームはビデオ又はオーディオデータを通常運
ぶ。各基本ストリームは一連のアクセスユニットの中に
分割される。ビデオの場合、アクセスユニットは映像で
ある。オーディオの場合、オーディオデータの固定サン
プル数である。
【0217】また、システムストリームの中へは一連の
クロック基準で多重化される。それらのクロック基準は
「システム時間」を定義する。本発明によれば、一連の
タイムスタンプ251は各基本ストリームと関連されて
いる。そのタイムスタンプは各基本ストリームに対する
次のアクセスユニットが与えられる「システム時間」を
特定する。それらのタイムスタンプは提示(プレゼンテ
ーション)タイムスタンプ「PTS」として参照され
る。
【0218】ビデオデータの場合に、タイムスタンプの
第2の形式が定義され、デコードタイムスタンプ「DT
S」として参照される。PTSが存在しかつPTS及び
DTSの間に簡単な関係があるときだけDTSは存在す
るので、それら2つのタイムスタンプの間の詳細な差異
は本発明では影響しないので無視することができる。デ
コードタイムスタンプ(DTS)はアクセスユニット
(ビデオの場合の映像)が復号されるべき時間を定義す
る。プレゼンテーションタイムスタンプ(PTS)はア
クセスユニットが与えられるべき(表示されるべき)時
間を定義する。しかしながら、使用されるタイミングモ
デルは、デコーダが非常に高速である仮定モデルに用い
られる。この場合、PTS及びDTSは互いに等しくな
る。
【0219】しかしながら、MPEGビデオの復号にお
いては、複数の映像が記録されている。よって、復号
後、映像は表示される前に所定の期間、例えば、数フレ
ーム時間において記憶装置に保持されている。この期間
の間、例のその映像に連続して復号される他の映像は表
示される。従って、それらの記録された映像について
は、PTS及びDTSの間には差異がある。
【0220】本発明においては適切に時間に同期するた
めにタイムスタンプを使用することが必要である。1つ
の好ましい実施例においては、時間同期回路は映像がそ
れら復号順に生じるときには復号するパイプライン中の
点に位置される。よって、この実施例はDTSを使用す
る。それでも、その回路は、映像が記録された後に生じ
るその復号パイプライン内の点に同様に移動させること
かでき、そのためその映像はそれら表示順に同期回路に
到達する。よって、この分野の当業者には理解できるよ
うに、PTSがこの実施例では用いられる。
【0221】本発明の好ましい実施例においては、タイ
ムスタンプから得られる情報はトークン(token)
によって様々な回路を介して転送される。トークンは一
連の1以上の情報のワードからなる。トークンの最初の
ワードはトークンの種類を識別するコードを含み、よっ
て、情報の種類がそのトークンによって運搬される。現
トークン内に多数のワードがあることを示すために
「1」にセットされる拡張ビットはトークンの各ワード
と関連されている。よって、トークンの最後のワードは
「0」である拡張ワードによって示される。本発明にお
いては、トークンの種類を示す最初のワード内のコード
は、いくつかのコードが(用いられるべき最初のワード
内のビットの残りに他の情報を表させるために)少ビッ
ト数を用いる一方、他のコードは多ビット数であるので
可変ビット数のものでよい。
【0222】トークンは制御又はデータトークンのいず
れかであるとして特徴づけられる。例えば、システムデ
コーダとビデオデコーダとの間のインターフェースでは
2つの種類の情報、すなわち(1)符号化したビデオデ
ータ及び(2)タイムスタンプ情報化ら得られる同期時
間がある。符号化ビデオデータはデータとして見られ、
DATAトークン(例えば、DATA(データ)と呼ば
れるトークン)において運搬される一方、同期時間は制
御情報として見られ、制御トークン(SYNC_TIM
Eと呼ばれる)において運搬される。また、追加の制御
トークンは本発明においては時間から時間へ用いられ
る。例えば、リセット信号と同様にふるまうFLUSH
トークンはエラーのために復号を再度開始する前にビデ
オ復号回路を初期化するために必要とされる。
【0223】本発明においては、2つの回路の時間同期
をとること、特に、2つの回路の第1の回路から第2の
回路へシステム時間を直接伝達することなく時間同期を
とることが1つの好ましい実施例の目的である。本発明
においては、2つの回路の時間同期は、同期した時間カ
ウンタを各回路内に備えることにより第2の回路二シス
テム時間を直接与えることなく達成される。
【0224】本発明は、各回路に基本ストリーム時間カ
ウンタを備えることにより第1の回路から第2の回路へ
システム時間を伝達することなく、システムに2つの回
路の時間同期をとることができるようにする。本発明の
他の目的は、2つの回路の時間同期をとり、第2の回路
へ供給される同期時間を生成するため第1の回路からの
タイムスタンプ情報、システム時間及び基本ストリーム
時間を用いることにより与えられ、第1の回路内の基本
ストリーム時間と同期をとっている第2の回路内の基本
ストリーム時間のコピーと比較されているものにおい
て、もしあるならばプレゼンテーションタイムエラーを
決定することである。本発明のシステムは、システムデ
コーダからビデオデコーダにシステム時間を直接伝送す
ることなく、各回路内に同期した時間カウンタを備える
ことによりビデオデコーダにシステム時間を直接供給す
ることなく、また各回路内にビデオカウンタを備えるこ
とによりシステムデコーダからビデオデコーダにシステ
ム時間を伝送することなく、システムデコーダ及びビデ
オデコーダの時間同期をとることができる。
【0225】本発明はシステムにシステムデコーダ及び
ビデオデコーダの時間同期をとり、ビデオデコーダへ供
給される同期時間を生成するためシステムデコーダから
のタイムスタンプ情報、システム時間及びビデオ復号時
間を用いることにより表示され、システムデコーダ内の
ビデオ復号時間と同期をとっているビデオデコーダ内の
ビデオ復号時間のコピーと比較されている映像におい
て、もしあるならば表示タイムエラーを決定することが
できるようにする。
【0226】本発明においては、タイムスタンプから得
られる情報は上記したように、制御トークンを用いてシ
ステムを介して転送することができる。図40は基本ス
トリームタイムスタンプ管理を行なう本発明の第1の好
ましい実施例を示している。システム時間を示すクロッ
ク基準253はシステムデマルチプレクサ254によっ
て符号化され、システムデコーダ256内のタイムカウ
ンタ255に必要されるように初期的に供給され、90
kHzで増加される。クロック基準の第2のコピーは、
基本ストリームデコーダ257の内側にあり90kHz
で増加されかつシステムデコーダ256内のタイムカウ
ンタ257と同期をとられているタイムカウンタ258
に同時に読み込まれる。
【0227】本発明においては、タイムスタンプ251
は入力データに同一量だけ遅延されるようにシステムデ
マルチプレクサ254から基本ストリームバッファ26
0を介して流れる。タイムスタンプ251は基本ストリ
ームデコーダ257の零無し復号時間のために補償する
ように訂正値を加算される。訂正されたタイムスタンプ
251は、基本ストリームデコーダ257の内側のタイ
ムカウンタ258に保持された時間のコピーと比較さ
れ、復号化された情報が早過ぎ又は遅過ぎのいずれで与
えられるかを判別する。
【0228】上記の実施例は、システムデコーダ内のカ
ウンタが秒当たり90000回変化するので、システム
デコーダ256内においてタイムカウンタ255から基
本ストリームデコーダ257へシステム時間を直接単に
供給するよりも良い。よって、システム時間は全て本質
的に基本ストリームデコーダ257に連続的に供給され
る必要がある。システム時間を連続的に供給することは
専用のピン等を必要とする。システムデコーダ256内
に備えられたタイムカウンタ255及び基本ストリーム
デコーダ252内に備えられたタイムカウンタ256を
用いることにより、システム時間を秒当たり数回だけク
ロック基準の形式で供給することができる。 他の実施
例が図41に示されている。図41に示した実施例は基
本ストリームデコーダ257にクロック基準253が供
給される必要性を避けている。これはシステムデコーダ
256及び基本ストリームデコーダ257の両方におい
て維持されている基本ストリーム時間の情報を有してい
る第2のカウンタ「es_time」262を用いるこ
とにより達成される。2つのes_timeカウンタ2
62及び263は電源投入時に及びチャンネル変更等の
他の時間にリセットされ、そこから自由に動作し続け
る。この実施例は揃った状態でいる2つのes_tim
eカウンタ262及び263に頼っているのでes_t
imeカウンタ262及び263が調子を乱さないこと
確実にするため能力をみることが必要となる。揃った状
態に2つのes_timeカウンタ262及び263を
維持することを確実にする1つの方法は、図41に示し
たように、基本ストリームデコーダ257内のes_t
imeカウンタをリセットするようにシステムデコーダ
内のes_timeカウンタからのキャリを用いること
である。
【0229】更に図41に示したように、システム時間
を示すクロック基準253はシステムデマルチプレクサ
254によって復号され、システムデコーダ256内の
タイムカウンタ255に供給されて90kHzで増加さ
れる。本発明のシステムデコーダ256内のes_ti
meカウンタ262及び本発明の基本ストリームデコー
ダ257内のes_timeカウンタ263は互いに同
期され、90kHzで増加される。また、基本ストリー
ムタイムスタンプはシステムデマルチプレクサ254に
よって復号される。よって、同期値Xは基本ストリーム
タイムスタンプ、タイムカウンタ内に含まれるシステム
時間及びシステムデコーダ256のes_timeカウ
ンタ262内に含まれる基本ストリーム時間を用いて式
3−1に応じて計算される。
【0230】次の式3−1(a〜d)はクロック基準2
53を基本ストリームデコーダ257に供給することを
避ける時間同期のための本発明に応じた1つの方法を示
している。式3−1(a)は時間同期のために要求され
る式である。図41に示したように、基本ストリームデ
コーダ回路にシステム時間を直接供給することが望まれ
ないので、同期時間表現Xは式3−1(b〜d)を用い
てシステムデコーダ256によって発生され、この値は
基本ストリームデコーダに供給される。同期時間Xは基
本ストリームデコーダ257内に設けられたes_ti
meカウンタ263に含まれる基本ストリーム時間と比
較される。従って、その比較結果は復号化情報が早過ぎ
又は遅過ぎのいずれで与えられるか判別するために用い
られ、そして更にシステムの時間同期に用いられる。 式3−1: a)時間同期=(基本ストリームタイムスタンプ−シス
テム時間) b)時間同期=(X−基本ストリーム時間) c)(X−基本ストリーム時間)=(基本ストリームタ
イムスタンプーシステム時間) d)X=(基本ストリームタイムスタンプ−システム時
間+基本ストリーム時間) 本発明においては、同期時間Xは基本ストリームデコー
ダ257の零無し復号時間のために補償すべく訂正値と
加算される。訂正された同期時間は、復号化された情報
が早過ぎ又は遅過ぎのいずれで与えられるかを判別する
ために、基本ストリームデコーダ257の内側に設けら
れたes_timeカウンタ263に含まれる基本スト
リーム時間と比較され、そして更にシステムの時間同期
に用いられる。時間訂正は、同一の結果のために同期時
間Xに加算される代わりに、基本ストリームデコーダ2
57の内側に設けられたes_timeカウンタ263
に含まれる基本ストリーム時間から減算され得る。上記
した実施例は同期時間Xを発生し、情報が早い又は遅い
のいずれで与えられるかを判別する解決例である。上記
のことを達成する他の多くの等価解決方法があることは
当業者には明らかである。
【0231】例えば、図42は本発明に従って、同期時
間Xを決定する代替方法を示している。この構成におい
ては、システムデコーダ256は基本ストリーム時間を
維持しない。その代わり、基本ストリームデコーダ25
7に設けられた基本ストリーム時間カウンタes_ti
me263がゼロにリセットされると直ちにシステム時
間をレジスタinitial_time256に記録す
る。es_time263内の値は、現システム時間と
initial_timeに記録された値との差異であ
るので、システムデコーダ256によって計算すること
ができる。
【0232】次の式3−2(a〜c)は時間同期のため
のこの代替方法を示している。式3−2(a)は基本ス
トリームデコーダ257に設けられたes_time2
63に保持された基本ストリーム時間の値を表す式であ
る。これは、システム時間とinitial_time
レジスタ256に記憶された値との関数として同期時間
Xを求める式3−2(c)を得るために簡単にされてい
る式3−2(b)を与えるように式3−1(d)に代用
されている。 式3−2: a)基本ストリーム時間=システム時間−initia
l_time b)X=(基本ストリームタイムスタンプ−システム時
間+[システム時間−initial_time]) c)X=(基本ストリームタイムスタンプ−initi
al_time) 本発明に従った同期時間Xを得るための2つの解決方法
は示されている。しかしながら、他の多数の同様の解決
方法があることはこの分野の当業者には明らかである。
【0233】図43はビデオタイムスタンプ管理を行な
う本発明の他の実施例を示す。システム時間を示すクロ
ック基準253はシステムデマルチプレクサ254によ
って符号化され、システムデコーダ256内のタイムカ
ウンタ255に必要されるように初期的に供給されれ、
90kHzで増加される。クロック基準の第2のコピー
は、ビデオデコーダ270の内側にあり90kHzで増
加されるタイムカウンタ258に同時に読み込まれ、シ
ステムデコーダ256内のタイムカウンタ255と同期
をとられる。
【0234】ビデオタイムスタンプは、入力ビデオデー
タと同一量だけ遅延されるようにシステムデマルチプレ
クサ254からビデオ復号バッファ271を介して流れ
る。ビデオタイムスタンプはビデオデコーダ270の零
無し復号時間のために補償するように訂正値を加算され
る。その訂正されたビデオタイムスタンプはビデオデコ
ーダ270の内側のタイムカウンタ258の時間のコピ
ーと比較され、復号化された映像が早過ぎ又は遅過ぎの
いずれで与えられるかを判別する。
【0235】図43に示した実施例は、システムデコー
ダ内のカウンタが秒当たり90000回変化するので、
システムデコーダ内においてタイムカウンタからビデオ
デコーダへシステム時間を直接単に供給する処理を改善
する。よって、システム時間は全て本質的にビデオデコ
ーダに連続的に供給される必要がある。システム時間を
連続的に供給することは専用のピン等を必要とする。シ
ステムデコーダ内に備えられたタイムカウンタ及びビデ
オデコーダ内に備えられたタイムカウンタを用いること
により、システム時間を秒当たり数回だけクロック基準
の形式で供給することができる。
【0236】図44を参照すると、システム時間を示す
クロック基準はシステムデマルチプレクザ254によっ
て符号化され、システムデコーダ256内のタイムカウ
ンタ255に供給され、90kHzで増加される。シス
テムデコーダ256内のvid_timeカウンタ27
2及びビデデコーダ270内のvid_timeカウン
タ273は互いに同期をとられ、90kHzで増加され
る。ビデオタイムスタンプは、式3−3に応じて、シス
テムデマルチプレクサ254によって復号化される。よ
って、同期値Xはビデオタイムスタンプと、タイムカウ
ンタ273内に含まれるシステム時間と、システムカウ
ンタ256内のvid_timeカウンタ272に含ま
れるビデオ復号時間とを用いて計算される。
【0237】次の式3−3(a〜d)は、クロック基準
をビデオデコーダ270に供給することを避ける時間同
期のために本発明に応じた1つの方法を示している。式
3−3(a)はタイム同期のために要求される式であ
る。図44に示したように、ビデオデコーダ回路270
にシステム時間を直接供給することが望まれないので、
同期時間表現Xは式3−3(b〜d)を用いてシステム
デコーダ256によって発生され、ビデオデコーダ27
0に供給される。同期時間Xはビデオデコーダ270内
に設けられたvid_timeカウンタ273に含まれ
るビデオ復号時間と比較される。その比較結果は復号化
映像が早過ぎ又は遅過ぎのいずれで表示されるか判別す
るために用いられ、そして更にシステムの時間同期に用
いられる。 式3−3: a)時間同期=(ビデタイムスタンプ−システム時間) b)時間同期=(X−ビデオ復号時間) c)(X−ビデオ復号時間)=(ビデオタイムスタンプ
−システム時間) d)X=(ビデオタイムスタンプ−システム時間+ビデ
オ復号時間) 本発明においては、同期時間Xはビデオデコーダの零無
し復号時間のために補償すべく訂正値と加算される。訂
正された同期時間は、復号化された映像が早過ぎ又は遅
過ぎのいずれで表示されるかを判別するために、ビデオ
デコーダ270の内側に設けられたvid_timeカ
ウンタ273に含まれるビデオ復号時間と比較され、そ
して更にシステムの時間同期に用いられる。時間訂正
は、同一の結果のために同期時間Xに加算される代わり
に、ビデオデコーダ270の内側に設けられたvid_
timeカウンタ273に含まれるビデオ復号時間から
減算され得る。上記した本発明の実施例は同期時間Xを
発生し、映像が早い又は遅いのいずれで表示されるかを
判別する解決例である。しかしながら、上記のことを達
成する他の多くの等価解決方法があることはこの分野の
当業者には明らかである。
【0238】本発明における他の特徴は完全な33ビッ
トのタイムスタンプ数又は42ビットのクロック基準数
を処理する必要がないことである。本発明はビデオデコ
ーダ270で16ビットを扱うことを可能にするためカ
ウンタを16ビットに制限する。一見では16ビットは
90kHz(使用されるべき2/3秒だけ)の分解能で
十分な数の範囲を表わすことができないように見える。
しかしながら、ビデオデコーダ270における時間制御
はフィールド時間にだけ正確であるであるのでそのよう
な高い精度は要求されない(ビデオタイミング発生器V
TGは自由に動作するか、又は復号化されるべきMPE
Gストリームと共に行なうことは何もないものに同期結
合されるので)。よって、それはタイムスタンプ又はプ
レゼンテーション(表示)時間とは関係しない。
【0239】図44及び図45に示したように、同期時
間Xはビデオデコーダ270内のVid_timeカウ
ンタ273は16ビットだけを用いている。これは2つ
のファクタによって可能にされる。先ず、システム時間
とタイムスタンプ(同期時間を得るために用いられる:
式3−3を参照)との間の差異は常に小さくなるべきで
あり、それにより最上位ビットの除去が可能となる。第
二に、最も近いフレーム時間にビデオの表示を制御する
ことができるだけである。よって、最下位ビットは必要
とされず、4ビットだけ右へシフトすることによって除
去される。
【0240】従って、本発明に用いられる時間情報の1
6ビットは約180μs(フィールド時間の約1%)の
精度をもって1.5秒程までのタイミングエラーを処理
することができる。PAL又はSECAM方式のヨーロ
ッパの625ラインのテレビジョンシステムは5625
Hzのクロックの112.5ティク(ticks)であ
り、NTSC方式の525ラインのテレビジョンシステ
ムは93.84ティクである。よって、16ビットを用
いることはフィールド時間の約1%の精度でタイミング
計算を可能にする。
【0241】図46はハードウエアを介してタイムスタ
ンプを移動する本発明に応じた好ましい処理を示してい
る。このハードウエアにおいて情報を伝達する好ましい
方法はトークンであるが、代替方法を用いても良いこと
は明らかである。ハードウエアは2つのモジュールに分
割される。第1のモジュールは、上記したように同期時
間Xを含むトークンSYNC_TIMEを生成する原因
になっており、これは関連したPICTURE_STA
RTトークンの前に起きる。MPEGシステムストリー
ムにおいて、タイムスタンプはパケットヘッダ内にて搬
送され、データパケット内の第1の映像について示す。
そのパケットはビデオデータと共に整っていないので、
一般に、タイムスタンプが示している映像の開始の前
に、以前の映像の終わりがある。
【0242】同期時間情報はマイクロプロセッサインタ
ーフェースを介して又はトークンを用いて本発明の実施
例において供給されるようにしても良い。いずれの場合
も、表12に更に詳細に示したように、同期時間データ
(16ビット)は(アクセスを各バイト個々にさせるた
めに2つの部分に分割された)同期時間レジスタに保持
される。
【0243】
【表12】 本発明において、フラグts_waitingは、有効
な同期時間情報がタイムスタンプレジスタにあるという
事実を示すためにセットされる。データがSYNC_T
IMEトークンを用いて供給されたならば、そのトーク
ンはトークンのストリームから取り去られる。
【0244】PICTURE_STARTトークンが活
性化されるとき同期時間レジスタの状態を示すフラグは
試験される。そのフラグがセットされていなければ、動
作はなく、PICTURE_STARTトークン及び全
てのその後のデータは影響されない。しかしながら、そ
のフラグがセットされているならば、有効な同期時間情
報が利用できることを示し、それでSYNC_TIME
トークンはPICTURE_STARTトークンの前の
データストリームにおいて生成されかつ含まれる。そし
て、そのフラグがクリアされ、同期時間レジスタが次に
生じるタイムスタンプのために利用できるようになる。
【0245】図40に示したように第2のモジュールは
27kHzのクロックで動作する事前調整器(プリスケ
ーラ)と、マイクロプログラマブル状態マシン(MS
M)218と連動される事前調整器278によるクロッ
クで動作するvid_timeカウンタとからなる。図
44及び図46に示したように、4800によってクロ
ックを分割する事前調整器278が備えられている。言
い換えすれば、4800は16を300(27MHz/
90kHz)倍である。図45及び図46に示された4
804.8のオプションは以下に示す。
【0246】NTSC方式のカラーテレビジョンにおい
て、フレームレートは30Hzではなく、実際にはほぼ
29.94Hz(正確には30000/1001Hz)
である。[カラーテレビジョンの出現前には正確に30
Hzが用いられた。]NTSC方式のラインタイム(ラ
インタイムはフレーム時間の1/525である)当たり
クロック周期は正確に1716.27MHzである。米
国テレビジョン規格団体は将来30Hz(HDTVでは
60Hz以上)に戻ることに興味を示している。その結
果、MPEGは正確な30Hzのフレームレートをサポ
ートしている。しかしながら、27KHzのクロック
(ライン当たり1714.29…サイクルである)から
安定した30Hzのテレビジョン信号を発生することは
できないので、MPEGのフレーム形成に30Hzのラ
スタを生成することは困難である。
【0247】1つの可能な解決方法は、27MHzのク
ロックを発生する代わりに27.027MHzのクロッ
クを発生するようにデコーダでクロックレートを変化
(bend)させることである。このクロックは90H
zのクロックを生成するためMPEGのクロック基準を
用いて(300よりむしろ)300.3の分割器で発生
される。この27.027MHzクロックは、27MH
zから29.94Hzのフレームレートを与える同等の
ビデオタイミング回路のクロック動作が正確な30Hz
レートを与えるときである。
【0248】本発明におけるフレーム形成においては、
90kHzは16の更なるファクタによって事前調整さ
れる。よって、300.3×16=4804.8による
27.027MHzのクロックの分割である。vid_
timeカウンタ273(上記した)はビデオ復号時間
を含み、事前調整器278が最終計数値に達する毎に増
加される。そのvid_timeカウンタ273はリセ
ットタイムピンによってリセットされる。
【0249】本発明における事前調整器及びvid_t
imeカウンタについては、他で用いられているレジス
ティブフィードバック(resistive−feed
back)又はウイークフィードバック(weak−f
eedback)よりもα粒子堕落(corrupti
on)に更に抗する完全なクロック動作のフィードバッ
クフリップフロップで実現することができる。時間カウ
ンタ用にクロック動作のフィードバックフリップフロッ
プを用いることは、ビデオ復号デコーダ内の時間カウン
タがシステムデコーダ内の時間カウンタと調子を揃えて
動作することを確実に助ける。
【0250】図47は、MSM218がSYNC_TI
MEトークンを入力したとき行なう処理を示している。
MSM218はビデオ時間カウンタによって示される現
在の時間を読み取り、そしてそれとビデオSYNC_T
IMEトークンによって供給される値とを比較すること
ができる。よって、映像を復号化する状態であるべき時
間と比較したように、現在の時間が早いか遅いかを判別
することができる。
【0251】本発明においては、16ビット符号のタイ
ムスタンプの訂正値は、ビデオSYNC_TIMEトー
クンによって搬送された同期時間Xに加算される。この
訂正値はチップリセットにてMSM218によって0に
リセットされ、動作がないならば、同期時間は変更され
ないで残る。制御マイクロプロセッサは同期時間を修正
するためにts_correctionの中に値を常に
書き込み、ビデオ及びオーディオデコーダを介して差異
を示す遅延を補償する。
【0252】vid_timeカウンタ273内に含ま
れる現ビデオ復号時間は訂正された同期時間から減算さ
れる。値の符号はその誤差(エラー)の方向であり、
(もしあるならば、MSM218によって発生されるエ
ラーコードを決定する。)その誤差の絶対値がとられ、
その結果は、タイミングエラーが許容限界値内にあるか
否かを判別するために閾値と比較される。その名目時間
からフレーム時間をプラス又はマイナスした精度にビデ
オタイミングを制御することができるので(VTG33
3が自由に動作しているので)、この閾値は1つのフレ
ーム時間にてセットされる。
【0253】その誤差がフレーム時間を越えたならば、
訂正値が作成されなければならない。本発明のMSM2
18は適切な時間まで復号を簡単に遅延させることがで
きるので、復号化が早過ぎるならばMSM218はその
状態をそれ自身で訂正することができる。しかしなが
ら、復号化が所望の時間より遅れている場合には符号化
データバッファの出力で映像を確実に除去することがで
きないので、時間訂正は難しい。本来はそのシーケンス
の復号化は中断されており、その状態を訂正する最も確
実な方法は、ランダムアクセス又はチャンネル変更と同
様の方法で復号化処理を再度開始することである。この
処理を容易にするためには、適切なスタートコード又は
FLUSHトークンが活性化されるまで全てのデータを
除去するようにMSM218の制御レジスタをプログラ
ムすることである。更に、エラー「ERR_TOO_E
ARLY」はdisable_too_earlyの設
定とは無関係にスタートアップ(始動)の間発生されな
い。なぜなら、スタートアップの際、第1の映像は早く
あることを期待されるからである。
【0254】表13はMSM218のレジスタがどのよ
うに動作するのか示し、レジスタの中に置かれた動作及
びエラーメッセージ情報の詳細を示している。
【0255】
【表13】 本発明の同期時間処理の結果として、2つのエラーのう
ちの1が発生可能となる。ERR_TOO_EARLY
は、復号化がタイムスタンプによって示される時間より
早くに起きているならば、発生される。ERR_TOO
_EARLYは抑制されるが、ERR_TOO_LAT
Eは全てのエラーがマスクされない限り常に発生され
る。
【0256】まとめにおいて、本発明は、表示時間を決
定するタイムスタンプと、第1の回路内のシステム時間
を初期化するクロック基準と、第1の回路内のシステム
時間を維持するクロック基準との伝達をなす第1時間カ
ウンタと、その第1時間カウンタと同期をとった第2の
回路内のクロック基準によって初期化される第2時間カ
ウンタとを有して時間の同期をとり、システム時間のロ
ーカルコピーを維持し、タイムスタンプと第2時間カウ
ンタとを比較することによりシステム時間のローカルコ
ピーとシステム時間との間の表示タイミングエラーを決
定する装置を備えている。それは更に、表示時間を決定
するためにタイムスタンプと、システムデコーダ内のシ
ステム時間を初期化するクロック基準と、システムデコ
ーダ内のシステム時間を維持するクロック基準との伝達
をなす第1時間カウンタと、その第1時間カウンタと同
期をとった第2の回路内のクロック基準によって初期化
される第2時間カウンタとを用いてシステムデコーダ及
びビデオデコーダとの同期をとり、システム時間のロー
カルコピーを維持し、タイムスタンプと第2時間カウン
タとを比較することによりシステム時間のローカルコピ
ーとシステム時間との間の表示タイミングエラーを決定
する装置を備えている。その他の実施例は、第1の回路
内のシステム時間を初期化するクロック基準を用いて第
1の回路及び第2の回路の同期をとる装置を備え、第1
回路はシステム時間を維持するためのクロック基準との
伝達をなす時間カウンタを有し、基本ストリーム時間を
与えるために第1の回路内に第1基本ストリームタイム
カウンタを含む。第1の回路はタイムスタンプを入力す
るように適合され、第1の回路は基本ストリーム時間と
タイムスタンプとを加算しシステム時間を減算すること
により同期時間を発生する。第2の回路は第1の回路か
らの同期時間を入力するように適合され、基本ストリー
ム時間のローカルコピーを与え、かつ同期時間と基本ス
トリーム時間のローカルコピーとを比較することにより
システム時間とタイムスタンプとの間のタイミングエラ
ーを決定する第1基本ストリーム時間カウンタと同期し
た第2基本ストリーム時間カウンタを有する。このよう
に、クロック基準信号はタイミングエラーを決定するた
めに第2の回路に直接供給される必要はない。他の実施
例においては、第1の回路及び第2の回路の同期をとる
装置は第1の回路内のシステム時間を初期化するクロッ
ク基準を有している。第1の回路はシステム時間を維持
するクロック基準との伝達をなす時間カウンタと、ビデ
オ復号時間を与える第1ビデオ時間カウンタとを有して
いる。その第1の回路はビデオタイムスタンプを入力す
る用に適合され、ビデオ復号時間をビデオタイムスタン
プに加算しシステム時間を減算することにより同期時間
を発生する。第2の回路は第1の回路からの同期時間を
入力するように適合され、ビデオ復号時間のローカルコ
ピーを与え、かつ同期時間とビデオ復号時間のローカル
コピーとを比較することによりシステム時間とビデオタ
イムスタンプとの間のタイミングエラーを決定する第1
ビデオ時間カウンタと同期した第2ビデオ時間カウンタ
を有する。よって、クロック基準信号はタイミングエラ
ーを決定するために第2の回路に直接供給される必要は
ない。本発明は、またパケットヘッダ内にタイムスタン
プを有するビデオデータストリームを備えることにより
タイミング情報を与える方法を含み、そのタイムスタン
プはデータのパケットの内の最初の映像に関している。
次のステップにおいて、レジスタはパケットヘッダから
取り出されレジスタ内に保持される有効なタイムスタン
プ情報を示すために用いられるフラグを備える。次に、
タイムスタンプはビデオデータストリームから取り去ら
れてレジスタ内に保持される。次いで、その方法は映像
開始となり、それに続いてフラグ状態をチェックするこ
とによって有効タイムスタンプ情報がレジスタに含まれ
るか否かを判別するためレジスタの状態を試験する。有
効タイムスタンプ情報がレジスタ内に含まれるならばタ
イムスタンプは映像開始に応答して発生され、そして、
そのタイムスタンプはデータストリーム内に戻される。
他の実施例は上記したように、基本ストリーム時間カウ
ンタが16ビットに制限される装置を含む。同様に、上
記したように、基本ストリームデコーダ内に設けられた
第2基本ストリーム時間カウンタが16ビットに制限さ
れる装置が備えられている。更に、上記したように、同
期時間は基本ストリームデコーダを制御するために16
ビットにされる装置が備えられている。また、本発明は
ビデオを復号し、閾値に対する表示時間エラーを決定す
る処理を有する。それは更なる処理を行い、タイムスタ
ンプトークンが示されているか否かを判別し、そのタイ
ムスタンプトークンをビデオデータと比較するためにト
ークン内のビデオデータを分析し、タイミングエラー量
を判別するために比較した値を発生する。次に、閾値に
対して比較されたときに比較した値がタイミングエラー
が示されたときの許容パラメータ内にあるか否かが判別
され、その比較した値が許容パラメータ以外にあるとき
を示す。代替実施例はシステムデコーダとビデオデコー
ダとを用いる装置を含む。そのシステムデコーダはMP
EGシステムストリーム及び多重分離ビデオデータとそ
のストリームからのビデオタイムスタンプとを受け入れ
るように適合される。そのシステムデコーダはシステム
時間を示す第1時間カウンタを有する。ビデオデコーダ
はほぼ一定のレートでビデオデータを受け入れ、かつ可
変レートでそのビデオデータ出力し、ビデオタイムスタ
ンプを供給するビデオデコーダバッファを有する。ビデ
オデータから映像を復号するビデオデコーダは復号され
た映像のためのビデオタイムスタンプを適切な表示時間
を決定するように第2時間カウンタと比較する。第1の
回路にシステム時間(S Y)、タイムスタンプ(T
S)及び基本ストリーム時間(ET)を与えることによ
り第1の回路と第2の回路との間の時間エラーを決定
し、基本ストリーム時間(ET)、タイムスタンプ(T
S)及びシステム時間(SY)を用いることによって同
期時間(X)を得て、式X=ET+TS−SYに応じて
第2の回路に同期時間(X)を与えかつ同期した基本ス
トリームタイム(ET2)を発生し、同期した時間を用
いることによって時間エラーを得る方法が備えられ、よ
って、第2の回路にシステム時間を供給することなく、
式ET2−Xに応じて第1の回路は第2の回路に同期し
た時間にすることができる。第1の回路と第2の回路と
の間の時間エラーを決定する他の方法は次のステップを
有している。すなわち、第1の回路にタイムスタンプ
(TS)及び初期時間(IT)を与え、タイムスタンプ
(TS)及び初期時間(IT)を用いることによって同
期時間(X)を得て、式X=TS−1に応じて第2の回
路に同期時間(X)を与えると共に同期した基本ストリ
ーム時間(ET)を発生し、同期した時間(X)を用い
て式ET−Xに応じて時間エラーを得る。このように、
第1の回路は、第2の回路にシステム時間を供給するこ
となく、第2の回路に同期した時間にすることができ
る。更に、第1の回路と第2の回路との間の時間エラー
を決定する他の方法は次のステップを有している。すな
わち、第1の回路にシステム時間(SY)、ビデオタイ
ムスタンプ(VTS)及びビデオ復号時間(VT)を与
え、ビデオ復号時間(VT)、ビデオタイムスタンプ
(VTS)及びシステム時間(SY)を用いることによ
って同期時間(X)を得て、式X=VT+VTS−SY
に応じて第2の回路へ同期時間(X)を与えると共に第
1の回路内のビデオ復号時間(VT)に同期した第2の
回路内のビデオ復号時間(VT2)を発生し、同期した
時間(X)を用いかつ式VT2−Xに応じて時間エラー
を得る。よって、第1の回路は、第2の回路にシステム
時間を供給することなく、第2の回路に同期した時間に
することができる。
【0257】非同期スイングバッファリングについての
本発明の詳細な説明 非同期スイングバッファリングについて本発明において
は、2つのバッファが非同期で動作される。一方は書き
込まれ、他方は読み出される。よって、これは、処理能
力の最初のレートを有するデータストリームに対して他
のレートに再同期させるが、一方では所望のレートを維
持させる。本発明において、書き込み制御及び読み出し
制御の両方はそれらが使用しているバッファ転送のため
にその制御がアクセスを待っているのか又はそのバッフ
ァを実際にアクセスしているのかどうかを示す状態指示
器(インジケータ)を有する。各側(サイド)はその他
方の側へバッファを使用していることを示すため単一ビ
ットを転送する。これは非同期回路の2つの側間で同期
をとるために必要な唯一の信号である。
【0258】1つの制御回路は(読み出し又は書き込
み)はバッファへのアクセスを終了したとき本発明は制
御を他方の回路に与える。制御がスイングされた後、2
つの制御回路が同一のバッファを用いることを試みるな
らば、後の制御は待機を開始すことになる。制御回路は
各側が交互にバッファを用いるまで、すなわち他方の側
がスイング状態となるまで待機する。スイングの後、他
方の側に交互にバッファを使用していることを分かるな
らば、待機することなく直ちにアクセスを開始する。こ
のバッファ間で仲裁するシステムは同一のバッファ、こ
の場合バッファ0を用いて両バッファによって始動す
る。読み出し側は待機によって始動され、一方、書き込
み側はいずれのバッファからも読み出すために有効なも
のはないのでアクセスする。
【0259】本発明の一実施例においては、スイングバ
ッファは両側によってアクセスされているバッファに対
応した全ての信号、すなわちイネーブルストローブ、ア
ドレス、及び読み出し又は書き込み側から多重化された
データを有する2つのディスクリートRAMである。こ
の構成は2つのバッファ間において多数の信号をバス転
送する多数の領域を使用することを示している。1つの
構成の中に2つのRAMを結合されることはバス転送す
る領域を沢山を節約する一方、動作を同一標準にしてし
まう。この構成は本発明の第1の実施例のディスクリー
トRAMのうちの1つの2倍のセル行を含む。しかしな
がら、第2の実施例はディスクリートバッファについて
の読み出し及び書き込みが同期して又は非同期で起きて
いるので2つの対のビットラインを持たなければならな
い。アクセスがそのディスクリートRAM用と同一の幅
であるので各行は元々の幅(すなわち、同一のセル数)
である。各対の行は同一の幅であるようにアクセスされ
るが、異なるバッファからそれでそれらは異なる対のビ
ットラインに接続する。同一のアドレスを用いてそれら
対の行は読み出しアドレスに接続された1の行デコーダ
及び書き込みアドレスに接続された1の行デコーダによ
って容易にアクセスされ得る。その読み出し及び書き込
み制御は行デコーダによってアクセスされた対について
衝突が起きないように同一の時間に同一のバッファと決
してアクセスしない。
【0260】各行デコーダが各バッファから行をアクセ
スできる同じ方法で、本発明の構成内の読み出し及び書
き込み回路の両方は各バッファから各対のビットライ
ン、1対に接続する。その読み出し及び書き込みはバッ
ファ各々に多重化され、上記した同一の理由のためそれ
らは衝突しない。図48に示すように、本発明によれ
ば、スイングユニット1はRAM12及び14を有する
スイングバッファ10を含む。また、そのスイングバッ
ファ1はRAM12及び14内の又はからのデータを制
御する書込制御回路及び読出制御回路を含む。読出制御
回路及び書込制御回路はストローブ、データ及びアドレ
ス制御ライン8の使用によりこれを達成している。ライ
ン7及び9は書込制御回路により使用されるRAM及び
読出制御回路により使用されるRAMを示すための制御
ラインである。ライン7は書込制御回路を制御するよう
に機能し、例えば、読出制御回路がRAM12を用いる
とき低レベル、RAM14を用いるとき高レベルにな
る。同様に、ライン9は読出書込制御回路を制御するよ
うに機能し、例えば、書込制御回路がRAM12を用い
るとき低レベル、RAM14を用いるとき高レベルにな
る。
【0261】本発明において、スイングバッファは2つ
のRAMアレイ12及び14を有する。スイングバッフ
ァ10は、装置をメモリの高速アクセスに必要なバンド
幅にすることができるようにするRAM領域に対して非
同期で交互に読み出し及び書込を行なうことができる。
RAM12及び14は次の信号を必要とする。すなわ
ち、書き込みアドレス16、読み出しアドレス18、デ
ータ入力20、データ出力22、読み出し及び書き込み
可能信号(図示せず)である。図49も参照のこと。
【0262】書き込みアドレス及び読み出しアドレス信
号はマルチプレクサ24によって多重化される。RAM
12及び14は従来のセンスにおいて書込回路、行デコ
ーダ及び読出回路と共に動作する。本発明の第1の実施
例においてスイングバッファ10の初期化期間には、R
AM12は、制御回路が書込可能信号をRAM14に切
り換えるまで書き込み状態となる。
【0263】RAMアレイ12は書き込まれると、それ
は読出回路4の制御の元で読み出され始めることにな
る。この時間の間、RAMアレイ14は書き込まれる。
RAMアレイは読出アレイ制御又は書込アレイ制御の元
で動作を始めるときその制御は読み出し又は書き込みが
完了するまで行われて、そして制御は逆に変わる。読み
出し制御回路4が12等のRAMアレイをアクセスし、
書き込み制御回路2が同一のRAMアレイ12をアクセ
スする必要がある状態において、書き込み制御回路は待
機を開始する。
【0264】よって、本発明においては、2つの制御イ
ベントが作成される。書込制御回路又は読出制御回路が
異なるRAMにスイング対応しているときRAMが自由
であり、選択する回路の制御下にないのでそれはRAM
を直ちにアクセスし始めるか、又は待機し始める。始動
の間にはいずれのバッファからも読み出すために有効な
ものはないので読み出し側は書き込み側を参照する。
【0265】本発明の第2の実施例は図50に示されて
いる。統合スイングバッファ50はRAMアレイ14と
結合されたRAMアレイ12の論理サイズを有するRA
Mアレイ32を含む。言い換えすれば、第1及び第2の
実施例両方において同一のRAMの量があるが、第2の
実施例においては結合されている。よって、統合スイン
グバッファは多数のバス領域を節約するという利点を有
する一方、同一のスイングバッファ機能を行なう。
【0266】本発明の第2の実施例において、書込回路
及び読出回路34及び36はスイングバッファ10内に
用いられるものと同様である。しかしながら、それらの
回路は以下に述べる対のビットラインから選択するセレ
クタを含んでいる。同様に、読出アクセス行デコーダ3
8及び書込アクセス行デコーダ40はスイングバッファ
10内に含まれるものと同様である。しかしながら、そ
れらは図51に述べられているように対の行をアクセス
することができる。
【0267】図51に示すように、本発明における統合
スイングバッファ30の特定の構成は詳細に説明されて
いる。個々のセル42は行44に含まれる。読出行デコ
ーダ38及び書込行デコーダ40は対にて行44をアク
セスする。1対の行はアドレスライン16及び18によ
って与えられる同一のアドレスを有する。読出バッファ
ライン52及び書込バッファライン54は対の行42の
うちの1つを選択するための制御情報を与える。バッフ
ァ0ビットライン48及びバッファ1ビットライン50
はセルの交互の行に接続され、また読出及び書込回路3
4及び36に接続されている。アドレス指定の図示にお
いて明確化のために、明斜部はバッファ0の行をアクセ
スする読出行デコーダ38を示し、同様に、暗斜部はバ
ッファ1の行をアクセスする書込行デコーダ40を示し
ている。
【0268】まとめとして、本発明は、少なくとも2つ
のRAMアレイと、RAMアレイ内へのデータ入力を制
御するためRAMアレイとの伝達をとる書込制御回路
と、RAMアレイ内からのデータ出力を制御するためR
AMアレイとの伝達をとる読出制御回路とを有するスイ
ングバッファ装置を備えいている。更に、書込制御回路
及び読出制御回路はRAMアレイの同期した制御を可能
にするために互いに伝達をとる。また、スイングバッフ
ァ装置はRAMアレイと、1対のビットラインを介して
RAMアレイとの伝達をとる書込制御回路と、他の1対
のビットラインを介してRAMアレイとの伝達をとる読
出制御回路と、個々のセルが読み出されるように1対の
行を介してRAMをアクセスする読出行デコーダ及び書
込行デコーダとを有する。また、本発明は少なくとも1
対の行を復号するデコーダを用い、アクセスされるべき
行のうちの1を選択し、読出回路及び書込回路に接続さ
れた少なくとも2対のビットラインを用い、用いられる
その対のビットラインを選択して、RAM内の少なくと
も1対のセルを復号化することにより、RAM非同期で
アクセスする方法を提供する。
【0269】ビデオ情報の記憶についての本発明の詳細
な説明 ビデオ伸張(decompression)システムは
映像情報を復号しかつ表示する3つの基本部分を含む。
そのビデオ伸張システムの3つの主な部分は空間(sp
atial)デコーダと、一時(temporal)デ
コーダと、ビデオフォーマッタとである。本発明は一時
デコーダと、ビデオフォーマッタと、その一時デコーダ
及びビデオフォーマッタがそれぞれの映像バッファ(以
下フレーム記憶バッファ)を管理する方法とを含んでい
る。MPEGシステムにおいて、一時デコーダは2つの
フレーム記憶バッファを含み、ビデオフォーマッタは2
つのフレーム記憶バッファを含んでいる。
【0270】MPEGは3つの異なる種類の映像を使用
する。すなわち、イントラ:Intra(I)、予測:
Predicted(P)、双方向補間:Bidire
ctionally interpolated(B)
である。B映像は他の2つの映像からの予測に基づいて
おり、1の映像は未来からであり、1つは過去からであ
る。I映像については一時デコーダによって更なる複合
化の必要はないが、P及びB映像の復号化において後の
使用のため2つのフレーム記憶バッファのうちの1つに
記憶されなければならない。P映像の復号化は以前に復
号化したP又はI映像から予測を行なう必要がある。そ
の復号化されたP映像はP及びB映像を複合化する際に
使用するためにフレーム記憶バッファに記憶される。B
映像は両方のフレーム記憶バッファから予測することが
できる。しかしながら、B映像はフレーム記憶バッファ
に記憶されない。
【0271】I及びP映像はそれが復号化されるとき一
時デコーダから出力されないことは明らかである。代わ
りに、I及びP映像はフレーム記憶バッファの1つに書
き込まれ、それらはそれに続くP又はI映像が復号化に
達したときだけ読み出される。言い換えれば、一時デコ
ーダは2つのフレーム記憶バッファから前の映像を読み
出して以後のP又はI映像を確実にしている。よって、
一時デコーダのフレーム記憶バッファを読み出す必要が
あるとき本発明における空間デコーダは偽りのI及びP
映像を与えることができる。次々にこの偽りの映像は以
後のビデオの続きが開始するとき読み出される。
【0272】表14に示されるように、映像フレームは
番号順に表示される。
【0273】
【表14】 しかしながら、一時デコーダによってメモリ内に記憶さ
れる必要があるフレーム数を減少させるためには、フレ
ームは異なる順番で送信される。イントラフレーム(I
フレーム)からの分析を開始することは有益である。I
フレームは表示されるべき順番で送信される。次の予測
したフレーム(Pフレーム)、P4が送信される。そし
て、IフレームとP4フレームとの間に表示されるべき
双方向補間したフレーム(Bフレーム)がBe及びB3
によって表されているが、送信される。これは、送信し
たBフレームに前のフレーム(前方予測)又は未来フレ
ーム(後方予測)を参照させるのである。IとP4との
間に表示されるべき全てのBフレームを送信した後、P
7フレームが送信される。次に、P4フレームとP7フ
レームとの間に表示されるべき全てのBフレーム(すな
わちB5及びB6に対応する)が送信される。そして、
次のIフレームI10が送信される。最後に、P7とI
10との間に表示されるべき全てのBフレーム、B8及
びB9フレームが送信される。この送信フレーム順番
は、いつも一時デコーダによってメモリに保持されるべ
き2フレームだけを必要とし、差し込むBフレームを表
示するために次のPフレーム又はIフレームの送信を待
つことをデコーダに要求しない。上記すると共に表14
に示したように、本発明における一時デコーダはMPE
G映像記録を提供するために構成することができる。こ
の映像記録ではP及びI映像の出力はデータストリーム
内の次のP又はI映像が一時デコーダによって復号化さ
れ始まるまで表示される。
【0274】P及びI映像が再配列されるとき所定のト
ークン、すなわちPicture_Start,Pic
ture_Type,及びTemporal_Refe
renceは、その映像が映像バッファに書き込まれる
ようにチップに一時的に記憶される。その映像が表示の
ために読み出されるときそれら記憶されたトークンは得
られる。一時デコーダの出力では新たに復号化したP又
はI映像のDATAトークンが古いP又はI映像のDA
TAトークンと置換され、そして、それらはビデオフォ
ーマッタに送られる。一時デコーダからの出力はトーク
ン化されたマクロブロック形式にされ、ブロックからラ
スタへの変換はない。
【0275】本発明のビデオフォーマッタは2つのフレ
ームストア(framestores)又は映像を記憶
する。ビデオフォーマッタにおいては、3つの映像又は
フレームストアが映像を繰り返したり又はスキップする
ような特徴を達成するために用いられる。ビデオフォー
マッタのオフチップ(off−chip)DRAMは3
つのフレームストアを保持する。ここでの3つのフレー
ムストアの使用はフレームに、復号化ビデオ及び表示の
レートが異なる状態において繰り返し又はスキップのい
ずれかをさせ得るのである。
【0276】全てのI,B及びPフレームはビデオフォ
ーマッタのフレームストアに記憶される。いつも、デー
タが表示されているところからの1つのフレームスト
ア、データが書き込まれているところへの1つのフレー
ムストアがあり、そして、3つのフレームストアを有す
るビデオフォーマッタには他のフレームが第3のフレー
ムストアに記憶される。
【0277】従来例は予測、再配列及びブロックからラ
スタへの変換を全て行い、MPEGは2つのフレームス
トアを有する一時デコーダ及び2つのフレームストアを
有するビデオフォーマッタ、すなわち全部で4つのフレ
ームストアを用いることにより通常処理する。これは本
発明において、単に3つのフレームストアを用いる機構
を共有する1つのフレームストアを用いることによって
達成される。しかしながら、従来例では3つのフレーム
ストアだけでビデオフォーマッタの繰り返し及びスキッ
プ動作を処理することはできない。
【0278】本発明は第1のフレームストアにI映像を
記憶し、第2のフレームストアにP映像を記憶する。ブ
ロックからラスタへの変換を行なう必要性から、Bフレ
ームは第3のフレームストアに以下に示す方法で記憶さ
れる。必要とされる外部DRAMの量を最小にするため
に機構は引き続くBフレームが同一の第3のフレームス
トアを共有するところに用いられる。
【0279】Bフレームが復号化されるとき、それは第
1及び第2のフレームストアを用いる2つの既に復号化
されたI又はPフレームを参照する。復号化されたBフ
レームは第3のフレームストアに書き込まれる。従来例
はフレームストアが完全に満たされる前にラスタを開始
させる。そのラスタは、次のBフレームが前のフレーム
の最初でラスタによって空けられたスペースを埋めるた
めに同一のフレームストアに書き込まれ得るようにフレ
ームストアが満たされる前に開始される。
【0280】フレームストアの一部分が映像データで埋
められ、新たなデータを利用できる記録を保持するため
に、各フレームストアはセクタの中に分離される。本発
明においては、各フレームストアは各々がNセクタから
なる2つのフィールドストアに先ず分離される。ここ
で、Nはフィールド内のブロック列の数である。フィー
ルド映像として符号化されたフレームは簡単である。各
引き続くマクロブロック列は1つのフィールドストア内
に2つのセクタを占める。ライトバック(write
back)がフレーム下まで十分に進むと、ラスタは最
初から各セクタを読み出すことを開始する。第1フレー
ムのライトバックが完了すると、次のフレームの開始部
分がラスタによって左のスペースに書き込まれる。セク
タ各々の状態のチェックは、ラスタが行なわれるセクタ
が十分に満たされ、ライトバックのために要求される2
つのセクタが空であることを確実にする。
【0281】フレーム映像としての符号化されたフレー
ムは更に困難である。フィールド映像とは違って、デー
タのマクロブロック列はそれらがラスタ表示される場合
と同一の順番でDRAMに書き込まれない。フィールド
ストアは並列に書き込まれるが、一方ではそのフィール
ドは順にラスタ表示される。フィールドストア当たり8
セクタを有する映像を考えると、すなわち、フィールド
ストア0は番号0〜7の8セクタからなり、その各々は
1ブロック列を含む(すなわち、その映像の幅による奥
行き8画素)。フィールドストア1は番号8〜15の8
セクタからなり、その各々は1ブロック列を含む(すな
わち、その映像の幅による奥行き8画素)。
【0282】第1のマクロブロック列はフィールドスト
ア0にセクタ0内にライトバックされ、フィールドスト
ア1にセクタ1内に書き込まれる。フィールドストアは
並列に書き込まれ続ける。ある点にて、ラスタはフィー
ルドストア0からのセクタを表示しており、その点はフ
ィールドストア0のラスタがライトバックに追いつかな
いように選択されている点である。しかしながら、第2
のフレームについては第1のフレームと同一の方法でラ
イトバックすることはできない。そのセクタは異なる順
番で書き込まれ、読み出されるので、フレームの開始で
空いている同一の2つのセクタを待つことは、書き込み
及び読み出しが連続的にできないことを意味する。これ
は表示を維持し必要なレートでの復号化を維持するため
に達成されなければならない。
【0283】よって、第2のフレームはラスタによって
既に空となったフレームストアのセクタに書き込まれな
ければならない。これはフレームストアを2に分割する
ことによって実行される。従って、第2のフレームに対
しては半分のフィールドストアの意味が変わる。セクタ
4〜7は第2のフィールドストアの上部となり、セクタ
8〜11は第1のフィールドストアの下部となり、すな
わち、それらは入れ替えられる。第1のマクロブロック
列はセクタ0及び4に書き込まれ、それらが空になる
と、それに続く列で1及び5、そして2及び6、更に3
及び7と書き込みが続く。次の列はセクタ2及び8に書
き込まれ、11及び15まで各々書き込まれる。このメ
モリへの再割り当てはライトバック及びラスタを適切な
レートで継続させることにおいて十分である。
【0284】第3の引き続くBフレームが来るならば、
ライトバック順は第1のフレームに戻る。共有のBフレ
ームストアにおいて、FRAME(第1)映像では:F
IRST映像はセクタ0〜8[第1のマクロブロック列
=2ブロック列]にライトバックされ、よって、1及び
9、2及び10、3及び11、…7及び15である。
【0285】FIRST映像はセクタ0から、そして、
1,2,3,4,5,6,7,8,9,10,11,1
2,13,14,15の順でラスタ表示される。SEC
OND(第2)フレームは、セクタ0及び4,そして、
1及び5,2及び6,3及び7,8及び12,9及び1
3,10及び14,11及び15に書き込まれる。
【0286】SECONDフレームは、セクタ0からそ
して、1,2,3,8,9,10,11,4,5,6,
7,12,13,14,15の順でラスタ表示される。
本発明のにおいては、第2フレーム、第1マクロブロッ
ク列はセクタ0及び1に書き込まれず、それは結局のと
ころラスタによって空にされるべき最初の2つのセクタ
である。代わりに、それはクリアのためセクタ4を待
つ。これは2つの理由のためにされる。第1は、クリア
のためにセクタ4を待つことはもっとも悪い場合の符号
化データの状態においてさえ連続的な復号化及び表示を
維持するシステムの能力に影響を与えないし、また、実
行することは簡単である。第2は、2の乗数でないセク
タ数に分割する映像サイズでは、メモリのセクタについ
て書き込み及び読み出しのシーケンスはたびだひ繰り返
されない(例えば、NTSC方式はフィールド当たり3
0セクタを有し、そのシーケンスは58フレーム毎に繰
り返す)。これはテスト能力及び回復を困難にする。
【0287】本発明に関する実施である限り、個々のセ
クタの状態の記録を維持するよりもむしろ、書き込むべ
き及び読みだすべき次の位置へのポインターをもって、
各半分のフィールドストアはFIFOとして効率的に実
現される。よって、満たされているか空にされている各
FIFOはライトバック及びラスタを各々不可能にす
る。これは各半分のフィールドストアがFIFOのよう
に1つの方向にだけ書き込まれ読み出されるという知識
を利用できる。
【0288】まとめとして、本発明はIフレーム、Pフ
レーム、Bフレーム及びB2フレームの形でビデオ情
報を与え、第1フレームストアにIフレームを記憶さ
せ、第2フレームストアにPフレームを記憶させ、少な
くとも2つのメモリ領域に各々分割されている第1及び
第2フィールドストアを有する第3フレームストアを与
え、第3レジスタにB1フレームを記憶させ、第1又は
第2フィールドストア内のメモリ領域の選択した部分か
らBフレームを読み出し、Bフレームが読み出され
たところのメモリ領域の選択した部分にB2フレームの
部分を書き込みすることによってビデオ情報を記憶する
方法を提供し、それによって減少させた量のメモリをビ
デオ情報を記憶するために用いることができる。
【0289】以下に見いだされる2つのプログラムは本
発明の好ましい実施例に用いられるべき符号を含む。 並列ハフマンデコーダについての本発明の詳細な説明 本発明においては、並列ハフマンデコーダブロックは、
ハフマン符号化可変長符号(Huffman code
d Variable Length Codes:V
LCs)及び固定長符号(FixedLength C
odes:FLCs)を復号化し、分析マイクロプログ
ラマブル状態マシン(Microprogrammab
le state machine:MSM)の制御の
元でトークンを介して供給する。
【0290】本発明の実施例はMPEG−1ハフマン符
号と同様にMPEG−2も処理する。本発明の実施例の
重要な態様は直列デコーダよりむしろ並列デコーダであ
るという事実のため高処理能力を維持することができる
ことである。本発明の実施例はハフマン符号を復号する
ため符号テーブル索引技術を用いる。これはこの動作要
求を達成し、実際に不規則又は非標準である第2のMP
EG−2変換係数テーブルを処理するためにされる。
【0291】更に、本発明の実施例は外部コントローラ
の助けなく単一のサイクル内にストリームからのある非
常に複雑な成分を復号化することができる特徴を有して
いる。そのような複雑な成分の例はエスケープ符号化係
数(Escape−coded coefficien
ts)、イントラDC値(Intra−DC valu
es)及び動きベクトルデルタ(Motion Vec
tordelta)であり、それらの全ては結合したV
LC/FLC成分としてストリーム内に与えられる。
【0292】図52を参照すると、並列ハフマンデコー
ダ300は可変長符号(VLCs)を処理する。FLC
sはデータとFLC長を特定する入力フィールとを生成
するために出力されるセレクタ301を使用する迂回機
構を要求する。よって、ROM302はFLC復号化の
間全く必要とされない。しかしながら、VLCを復号化
するため入力は、図52に示したように、2つの入力デ
ータレジスタ「MSReg」及び「LSReg」に先ず
読み込まれる。名称から分かるように、「早い(ear
lier)」又は最上位データはMSRegに記憶され
る。そのセレクタはROM入力で次のVLCの始めを割
り当てるために用いられる。よって、非常に早いVLC
を復号するためにセレクタはその59ビット入力の最初
の28ビットを出力し、それらの最初の16ビットはハ
フマン符号ROM302に供給される。それに続くVL
Cに対してセレクタはここまで符号化されたビットの合
計の計数値に応じた入力を効果的にシフトする。その計
数値は復号化されるままに、実行合計に各VLCのサイ
ズを加算することによって保持される。様々なワード幅
は、復号することができる最大符号化サイズ(28ビッ
トのMPEG−1エスケープ符号化係数)の結果と、1
6ビットである最大VLCサイズ(DCT係数テーブ
ル)とある。
【0293】「テーブル選択」入力はMPEGによって
要求される様々な異なるハフマン符号テーブル間の選択
のために用いられる。ハフマン符号ROM VLCs全ての復号化のために用いられる本発明の実行
のコアは、図52及び図53に示すように、セレクタ/
シフタ301によってアドレス指定が制御されるROM
302である。ROM302はVLCテーブル索引計算
を行なう動作を有し、復号化データを生成する索引から
データを得る(index−to−data)動作が後
に続く。
【0294】索引計算は、与えられたデータを生成する
ハフマン符号を処理するために実行される「ドントケア
(don’t care:「1」又は「0」のいずれで
も良いビット)」マッチングを有する内容アドレス指定
可能メモリ(CAM)の動作として考えることができ
る。全てのVLC符号テーブルは固定であるので、CA
M−ROMは十分であり、これは図54ないし57に示
したROM AND−プレーン(plane:面)の仕
事である。索引生成は(むしろアルゴリズム的に)テー
ブル索引(ルックアップ)方法で行われるので、標準の
テーブルを処理する制限はない。
【0295】ROM Or−プレーンは「索引」(活性
化したワードライン)を復号化データ及び符号のサイズ
(又は長さ)に変換する。そのデータは復号化出力(エ
ラーチェックを条件として)を形成し、サイズ情報はセ
レクタを制御する計算を実行させるためにフィードバッ
クされ、よって、それに続くサイクルで次のVLCの復
号化を行なうため正しいデータをデコーダROM302
に供給する。
【0296】本発明において、ROM302のアドレス
は2つのフィールド内にある。大きいフィールドは復号
化されるべきビットパターンであり、小さいフィールド
は調べられるべきハフマン符号を選択する。調べなけれ
ばならないビットパターンは最も長いVLC符号に対応
して長く、16ビットであり、テーブル選択の追加の4
ビットがある。よって、合計で20ビットのアドレス空
間(約100万アドレス)があるが、ROM302内に
450入力があるだけである。その違いの理由は「ドン
トケア」ビットの存在のためである。
【0297】VLCsを復号化するためには、AND−
プレーンがVLCビットパターン内の「ドントケア」ビ
ットを復号化することができる必要がある。これは、最
大18ビットより短い全てのVLCsが、そのVLCの
復号化の部分ではない追加のビットに後を続かれている
からである。ワイドアドレスのためAND−プレーンは
事前復号化され(2−>4)、ROM302はこの事前
復号と共に処理する「ドントケア」を結合しなければな
らない。更に、完全なMPEG符号テーブルに加えて、
ROM302は所定の符号テーブル用に存在する不当な
VLCパターンを識別する入力を有する。
【0298】処理能力最大化 サイクル毎に1つの復号化項目の出力を維持するため
に、デコーダ入力を制御する上でいくつかの注意がとら
れている必要があり、特別な処理は「複雑」シンボル
(すなわち、それはFLCs又はVLCsではない)の
ために用いられる必要がある。
【0299】エスケープ符号化係数のピーク処理能力を
維持するために、サイクル当たり少なくとも1つの完全
な符号を入力しなければならない。要求される最大長は
MPEG−1で28ビットであるので、これは(28よ
り大きいその次の実用サイズである)32ビットの入力
ワード幅を課している。普通の変換係数も、それらがレ
ベル値の符号を与える1ビットのFLCがその後に続く
VLCからなり、他の複雑なシンボル(例えば、動きベ
クトル、イントラDC及びエスケープ符号化係数)と同
様に処理されるという点において、「複雑」シンボルで
ある。(分離したサイクルで)FLCがその後に続くV
LCとして係数が復号化され、ROM302に符号ビッ
トを復号化させることの代わりの方法がROMに2つの
大きなテーブルのサイズを2倍にすることであるならば
ピーク処理能力を達成することができない。よって、本
発明においては、1つのサイクルが「最終」の要求結果
を生成することができるように特別な処理は様々なシン
ボルのために用いられる。
【0300】FLC及びトークン FLC処理の基本はFLCの必要な長さでセレクタを制
御すること、ROM302を迂回し正確に選択したFL
Cを単に出力することである。よって、単なるFLCs
は重要な特別なハードウエアなくデコーダによって正し
く自然に処理される。更に、トークンは処理されない
が、デコーダの出力へ直接供給される。
【0301】実施 この章は本発明においてデコーダの実施のいくつかの重
要な特徴を述べる。その実施は図52に示すように、カ
ウンタ303及びセレクタ301を伴うレジスタの構成
と符号ROMとを含む。図53の図はコア成分がどのよ
うに本発明の主たるハフマン復号化コア部分を実施する
ために相互接続されているかを示している。レジスタm
s[31:0]及びls[31:0]は各々MSReg
及びLSRegであり、ブロックphselectはセ
レクタである。カウンタロジック(論理回路)は(様々
な他のロジックと共に)ブロックphselectに含
まれ、カウントラッチはcnt[4:0]と表されてい
る。この図上の他のロジックは処理命令、データ及び命
令の動き、トークン、(ブロックphcopで行なわれ
る)更なる「複雑」シンボルの操作を処理する。
【0302】図54に示した図は本発明に応じたハフマ
ン符号ROM302を実現するために用いられたタイプ
の非常に小さな例のROM設計を示している。このRO
M302の特有の特徴は、可変長ハフマン符号を復号す
る方法を実現するために用いられる事前復号及び「ドン
トケア」処理がAND−プレーン内に置かれたことであ
る。
【0303】図55,図56及び図57、特に図55を
参照すると、「ドントケア」処理を行なうことができる
ROM AND−プレーンの第1の実施例が示されてい
る。この実施例においては、各アドレスライン(a
[3],a[2],a[1],a[0])はその正方向
及び逆方向の両方にAND−プレーンを横切って駆動さ
れる。与えられたアドレスライン上の「1」又は「0」
を復号化するためトランジスタは従来の方法で正又は逆
のアドレスラインのいずれかへ接続される。「ドントケ
ア」(xによって示される)を復号化するためにトラン
ジスタはその正又は逆のラインのいずれにも接続されな
い。
【0304】図56及び図57は復号化ロジック内の最
悪の場合の一連のトランジスタの数を減少させるため事
前符号化を利用する代替の実施例を示している。それら
の例においては、2つのアドレスビットで表すことがで
きる4つの可能な番号の各々について4つのラインのう
ちの1が高レベルに駆動されるような事前復号化におい
て2つのアドレスビットは共に結合される。本発明は2
つビットより多いビットが共に結合されるより高いレベ
ルの事前復号化で同様に動作することはこの分野の当業
者には明らかである。事前復号化において共にグループ
とされた2つのアドレスビットが設定値(1又は0、
「ドントケア」ではない)を有するならば、トランジス
タは従来の方法では適当な事前復号化アドレスラインに
接続される。同様に、そのアドレスビットの1つが「ド
ントケア」を有するならば、トランジスタは以前のよう
に用いられない。しかしながら、アドレスビットの一方
が設定値(1又は0)を有する必要があり他方のアドレ
スビットが「ドントケア」を必要とするならば、事前復
号化の2つのアドレスラインのいすれかが活性状態であ
るとき、選択されるOr−プレーンを横切って駆動され
るワードラインを復号化は要求する。図56に示された
実施例において、これは、符号:001xについての場
合に示したように関連する事前復号化アドレスラインの
各々上の1つに、並列に2つのトランジスタを設けるこ
とによって達成される。図57に示された実施例におい
ては、トランジスタの並列接続を用いることなく要求し
た復号化が達成される。この場合に、2つの分離した復
号はその両方の選択を必要として行なわれる。それら
は、両方の選択が活性ならばワードラインが活性状態と
なるようなワードラインドライバ内のNORゲートを用
いて共に結合される。
【0305】上記の説明は、付随する特徴、目的、及び
効果の全てを有する本発明を作成し実行することはこの
分野の当業者には可能であるように詳細に本発明の様々
な態様の全体コンセプト、システムの実現及び動作を十
分に述べていると確信される。しかしながら、本発明及
び本発明の様々な実施例の特に商業的実施に関しての追
加の詳細をより深く詳細に理解することを容易にするた
めに、これに続いて更なる記述及び説明が提供される。
【0306】この分野の当業者に対しての説明に役立つ
追加の図面は、本発明が機能するような環境の詳細な構
成及び動作に更なる理解を与えるためにこの出願と共に
含まれる。本発明の上記したパイプラインシステムは、
パイプライン処理機器として配置される2線インターフ
ェースによって相互接続された複数のステージ(段)を
利用するMPEGビデオ伸張方法及び装置を含むビデオ
復号化システムの様々な態様において更なる改善のため
に長く存在した要求を満たす。制御トークン及びDAT
Aトークンはトークン形式で制御及びデータ両方を運搬
する1つの2線インターフェースを介して供給する。ト
ークン復号回路は設けられたステージに適切な制御トー
クンとして所定のトークンを識別し、パイプラインに介
して非認識の制御トークンを供給するために所定のステ
ージに設けられる。再構成処理回路は選択されたステー
ジに設けられ、識別された制御トークンに応答して識別
したDATAトークンを処理するようなステージを再構
成する。独特のサポート副システム回路及び処理技術の
幅広い変更は、メモリアドレス指定、共通処理ブロック
を用いるデータ変換、時間同期、非同期スイングバッフ
ァリング、ビデオ情報の記憶、並列ハフマンデコーダ等
を含んでシステムを実施するために開示される。
【0307】本発明の特定の形態は示されかつ述べられ
たが、様々な変更は本発明の精神及び範囲から離れるこ
となくなすことができることは上記のことから明らかで
ある。よって、添付した特許請求の範囲を除いて本発明
は限定されるものではない。以下に述べた本発明のシス
テムのより詳細な説明は、系統化、明確性、及び説明上
の便宜のために以下に記した表題に従って記述されてい
る。 概観... スタートコード検出器... パーサ... 空間処理... 予測... ディスプレイ回路... 並列スタートコード検出器(SCDP)... 入力Fifo... 入力回路... スタートコード... ビットスタッフの除去... サーチ・モード... 非整列スタートコード... オーバーラップスタートコード... 認識されないスタートコード... 拡張及びユーザーデータ... ピクチャ・エンド(PICTURE−END)トークン
の挿入... ストップ・アフターピクチャ(Stop After
picture)割り込み... 全廃棄... アクセスビット... SCDPにより認識されるトークン... SCDPメモリーマップ... 実動化... コード化データバッファ周辺のデータフロー... 動作の理論... 不連続性... スタートアップ... 実施例... ハードウエア... タイムスタンプ情報のMSMハンドリング... スタートアップ... MSMタイムスタンプエラーコード... 30Hzのサポート... 序文... 状態マシン... ジャンプ及びコール... 割り込み及びエラー... ジャンプアドレス... 状態マシン内部の命令... 状態マシンのテスト... 状態マシン・マイクロ符号マップ... 状態マシン・マイクロ符号語... 演算コア... ALU... シフトブロック... キャリーブロック... 条件ブロック... ALUコア... ALU・マイクロ符号語... ALUの使用... レジスタ・ファイル... レジスタ・ファイルアドレス指定... レジスタファイル・レジスタタイプ... レジスタファイル・アドレスマップ... レジスタファイル・マイクロ符号語... トークンポート... トークンポート・マイクロ符号語... マルチプレクサ... UPIメモリーマップ... 序文... インターフェース... 機能の記述... タイミング要件... マイクロプロセッサインターフェースアクセス... 序文... インターフェース... 機能の記述.. 誤りを含んで形成せれたトークン... ジグザグ・スキャンパス... ラスタスキャン順序... マイクロプロセッサインターフェースアクセス... 序文... フレーム内の予測画面... フレームに基づく予測... フィールドに基づく予測(フレーム画面内)... デュアルプライム(フレーム画面内)... フィールド画面内の予測... フィールドに基づく予測... 16×8MC... フィールド画面内デュアルプライム... 全体的組織... 水平アップ・サンプラー... 序文... 4:3アップ・サンプリング... 3:2アップ・サンプリング... 2:1アップ・サンプリング... 境界効果... 出力ペル(pel)の数... 位置信号... 多重化データ... 水平位置合わせ... アップ・サンプリング比... ビデオタイミング発生器... 序文... 水平タイミング... 垂直タイミング−PAL... 垂直タイミング−NTSC... VTG構造... 水平マシン... 垂直マシン... ハード結線された比較器のデザイン... 出力多重化... 境界生成... 垂直境界... UPI制御... 出力マルチプレックス... 概観 この詳細な説明では本発明をチップ全体として扱う。こ
こで図58を参照すると、そこにはシステムの非常に高
水準ブロック図が示されている。以降の節においては、
より詳細なブロック図を提供するために各ブロックが拡
大されている。
【0308】この記述は回路の種々の機能的ブロックの
間のすべてのインターフェースについて正確に文書にし
たものである。これにより、各ブロックは、そのブロッ
クが提供することが期待されるインターフェースの完全
な知識を用いて設計することが可能になる筈である。図
58に示された如く、基本的なシステムの構成部品には
クロック発振器350、スタートコード検出器201、
パーサ202、マイクロプロセッサインターフェース
(MPI)320、メモリ制御サブ・システム352、
空間処理サブ・システム351、予測サブ・システム2
08及びディスプレイ355が含まれる。図58は更に
種々のシステム構成部品の間のインターフェースを図示
している。
【0309】スタートコード検出器 図59は本発明によるシステムの回路の他のブロックと
相互接続されたスタートコード検出器201(SCD)
を示している。SCD201は3つの異なる機能を提供
するものと考えることができる。第1に、SCD201
は専用のPin又はMPI320からのデータを受け取
る入力回路を提供する。第2に、SCD201はデータ
内のスタートコードを検出する。第3に、SCDは入力
データをコード化データバッファ(CDB)321内で
内部的に使用されるフォーマットにアセンブルするのに
必要な回路を提供する。
【0310】パーサ 図60は本発明によるパーサ・サブ・システムを図示し
ている。CDB321のためにフォーマットされたデー
タはアンパックされ、MPI320から命令を受け取る
パーサに渡される。その後、データは2線式インターフ
ェースを介してシステムの残りの部分に伝達される。
【0311】空間処理 図61は空間処理回路の構成部品を図示している。これ
らの構成部品には逆モデラー(Imodel)325、
逆ジグザグ器(IZZ)326及び逆量子化器(Iqu
ant)327及び逆離散コサイン変換器(IDCT)
328が含まれる。データはImode1325を通
り、さらにIZZ326を、次いでIquant327
を、さらにまたIDCT328を通過する。
【0312】ディスプレイ回路 本発明のディスプレイ回路が図62に示されている。こ
のシステムは垂直アップ・サンプラー210、水平スケ
ールサブ・システム331、出力マルチプレクサ332
及びビデオタイミング発生器333を含んでいる。 並列スタートコード検出器(scdp) 本発明によるスタートコード検出器201は、並列スタ
ートコード検出器、即ち、データを並列に通過させるも
のである。このシステムは、先に1994年3月24日
に出願されたイギリス特許出願第9405914.4号
及び1992年6月30日に出願されたEPO出願第9
2306038.8号、(以下「Brolly」と称す
る)に開示されたシステムと同様のものである。しかし
ながら、これら二つのスタートコード検出器の間には幾
つかの主要な差異が存在する。第1には、バイト整列が
仮定されている。本発明においては、スタートコードを
見つけだすためにデータをシフトすることが無いのであ
る。第2に、本発明は主としてMPEGデータに対して
動作する。
【0313】MPEG(1及び2)スタートコードはス
タートコード・プレフィックス(start_code
_prefix)として知られるビットストリームにお
ける唯一のビット(バイトパターン)によって構成され
ている。このパターンは23個のゼロの後に1が一つ有
るものである。このstart_code_prefi
xの直後に続く8ビットはスタートコード・バリュー
(start_code_value)として知られて
いる。これはスタートコードのタイプを表している。本
発明のSCDに到達するスタートコードはバイト整列さ
れていることが必要である。よって、上記のデータは例
えば以下のバイト・シーケンスとして特定される。
【0314】 0x00 0x00 0x01 0xb8 これらがグループ・スタートコード(gourp_st
art code)である。
【0315】入力Fifo 本発明は250Kバイト/秒のピークデータレートのと
きにもコード化データバッファがオーバーフローせず、
入力受け入れ(in_accept)ピンが引き下げら
れることがないように設計されている。従って、入力f
ifoの長さを計算するためには、1)スイングバッフ
ァのための最悪の場合の待ち時間と、2)SCDを通し
た最悪の場合のデータの拡大について知ることが必要で
ある。
【0316】本発明によれば、コード化データクロック
レートで到達する入力データに対して、SCDPはスタ
ートコード毎に二つのストールを生成する(データスト
リームから3バイトが除かれている)。 入力回路 本発明の入力回路はBrollyによって開示されたも
のと全く同一の方法で動作する。しかしながら、それら
の二つの回路の間には2、3の重大な差異が存在する。
第1に、upiはトークンの有効なエンド(それがセッ
トされないかも知れないため)まで待つように作られて
いない。その代わりに、信号イン・トークン(in_t
oken)がローになるまで待つように作られる。第2
に、バイトモードに入る際のDATAレヘッダーの生成
は、いくらかのバイトモードデータがあることに依存す
る。
【0317】スタートコード 本発明においては、MPEGスタートコードはSCDに
よって認識されてトークンに変換される。それらを表1
5に示す。
【0318】
【表15】 ビットスタッフの除去 一つのstart_code_prefixに先行ずる
いかなるゼロビットもスタッフ(詰め物)であり、安全
に除去し得る。本発明において、スタッフの完全なバイ
トのみ除去される。
【0319】例えば、以下に示すバイト・シーケンスに
おいては13のスタッフ・ビットが有り、その内の8個
のみが実際に除去される。 0x20 //5スタッフ・ビット 0x00 //8スタッフ・ビット 0x00 0x00 0x0l // start_code_prefix サーチ・モード 本発明によるサーチ・モード(search_mod
e)は以下の表16に示されている。
【0320】
【表16】 ゼロ以外の何れのサーチ・モードではスタートコードの
所望のクラスが見つかるまで到着するデータの全てが廃
棄される。その時点で、サーチ・モードがゼロにリセッ
トされ、スタートコード・サーチ(start_cod
e_search)割り込みが発生する。新しい制御ビ
ットであるストップ・オンサーチ(stop_on_s
earch)がSCDが割り込み(この割り込みはまた
通常の方法でマスクされるけれども、停止は必須ではな
い)を発生した後に実際に停止するか否かを判別する。
【0321】本発明においては、SCDがFLUSHト
ークンを受け取った場合にもまたsearch_mod
eがゼロにセットされる。しかしながら、FLUSHト
ークンがdiscard_allで終了する場合にはs
earch_modeが完全にリセットされる。即ち、
FLUSHトークン及びdiscard_al1の組み
合わせによってサーチ・モードがリセットされる。
【0322】非整列スタートコード 一つ以上のゼロバイトの連続の後に0x01が続けばス
タートコードである。更に、23個以上のゼロの連きの
後に1が続かなければ非整列スタートコードである。バ
イト整列された環境ではこのことは以下のように解釈さ
れる。もし、ビットスタッフを除去した後に0x01を
受けとらない場合にはスタートコード非整列である。な
お、この宣言は非整列スタートコードの有るもの(スタ
ッフが1バイト以下である場合に関係している)は見落
としていることに注意すべきである。
【0323】本発明のSCDPは、データシートにおい
て非整列スタートコードのどのクラスが検出されるかに
ついて記述する努力をするよりはむしろ、それらを無視
している。換言すれば、スタッフはまだ除去されている
のである。 オーバーラップスタートコード スタートコードの「値]の部分が以降のスタートコード
の「prefix]の部分を形成するようにすることが
可能である。これは一般的に以下の二つの理由により生
起する。1)規格によればシステムレベルのスタートコ
ードはストリーム内のどの位置に生起しても良く、ビデ
オレベルのスタートコードの中に直接生起することも含
まれる。2)エラー。誤りと思われるスタートコードを
すべて最後まで除去し、それによりエラー復旧の可能性
が高まる。
【0324】バイト整列環境においては、本発明によれ
ば、オーバーラッピングスタートが生起するただーつの
方法はピクチャースタート(picture_star
t、値=0x00)が他のスタートコードの部分となる
場合のみである。このやり方で、picture_st
artはデータから除去され、第2のスタートコードが
デコードされる。もし、次にこれがオーバーラップして
いれば、非オーバーラッピングスタートコードが検出さ
れるまで同一の手続きが行われる。
【0325】認識されないスタートコード 本発明において予約値(0xb0、0xb1、0xb
6)、全部のシステムスタートコード(0xb9から0
xff)及びシーケンス・エラーコード(Oxb4)は
それぞれ認識されないスタートコードである。認識され
ないスタートコードを除去した後は、SCDは次の有効
なスタートコードが見つかるまで全ての入力データを廃
棄する。またSCDは認識されないスタート(unre
cognized_start)エラーレジスタをセッ
トし、認識されないスタート(unrecognize
d_start)マスクに依存して割り込みを生成す
る。
【0326】 拡張及びユーザーデータ 本発明において二つのコンフィギュレーションビットが
使用される。 1)Discard_user(又は無し) 2)Discard_extn(MPEG2メイン・プ
ロファイル、メインレベル以上) これらの二つのコンフィギュレーションビットは1にリ
セットされる。
【0327】MPEG2拡張スタートコードは異なって
いる。拡張スタート・バリュー(extension_
start_value)に続く4つのビットは拡張ス
タートコード識別子(extension_start
_code_idntifier)であり、SCDによ
ってデコードされねばならない。4つの新しいトークン
がこれらをフラグするために生成されている。許容され
た拡張コード識別子(extension_start
_code_identifiers)及びそれらのト
ークンを表17に示す。しかしながら、予約された拡張
スタートコード識別子(extension_star
t_codeidentifier)は認識されない。
認識されない拡張スタートコード(extension
_start_codes)は廃棄されるか(Disc
ard_extnに依存)、又は(旧)extensi
on_dataトークンによって置換される。
【0328】
【表17】 ピクチャー ・エンド(PICTURE_END)トー
クンの挿入 現行の標準(MPEGI、2、JPEG、又はH26
1)はいずれも現在の画面を終了する方法について規定
していない。
【0329】しかしながら、本発明においては、SCD
201がイン・ピクチャ(in_picture)と呼
ばれる状態を保持する。この状態はPICTURE
TARTトークンがSCD201によって出力される際
にはいつでもセットされる。構文上においてpictu
re_start(又はFLUSHトークン)より高い
それ以降のスタートコードはPICTURE_ENDト
ークンの生成を起こす。PICTURE_ENDトーク
ンは生成されて新しいスタートコードに関係するいかな
るトークンより前に出力される。状態in_pictu
reはPICTURE_ENDトークンがSCD201
を離れる際にリセットされる。もしSCD201が入力
データストリームでトークンを受け取った場合でも、P
ICTURE_ENDトークンを受け取る場合も含めて
動作は論理的に同一である。要約すれば、PICTUR
E_ENDを生成させる可能性のあるスタートコード
(及びトークン)は、本発明によれば以下の通りであ
る。
【0330】 picture_start_code又はトークン group_start_code又はトークン sequence_start_code又はトークン sequence_end_code又はトークン FLUSHトークン ストップ・アフタ・ピクチャ割り込み ストップ・アフタ・ピクチャ(sap)の特徴は、現在
のシーケンスを終了させる簡潔な方法、例えばチャンネ
ル変更を容易するための本発明の機能である。この機能
をできるだけ自動的に外部のリアルタイムソフトウエア
を必要とすることなく達成ずることが必要である。
【0331】sap制御ビットはフラグ・ピクチャ・エ
ンド(flag_picture_end)と称する。
flag_picture_end、マスク及びエラー
ビットに加えて以下の二つの制御ビットが存在する。 1)after_picture_stop:割り込み
を生成して後にSCDが停止するか否かを決定する。
【0332】2)after_picture_dis
card:このビットはSCDPがflag_pict
ure_end割り込みを生成した後にdiscard
_al1モードに自動的に移行するか否かを決定する。 この方法により、discard_allモードはどの
イベントがそれを呼び出したかについて知る必要がなく
なり、discard_a11モードをそのままにして
瞬時にかつ簡潔にサーチ・モードに移行することが可能
になる。
【0333】本発明に依れば、PICTURE_END
トークンがSCDにより出力される際には常にflag
_picture_endビットが何か動作をなすべき
か否かを決定する。もしflag_picture_e
ndがセットされていれば、PICTURE_ENDの
後にFLUSHが生成され、イベントが生成される。割
り込みはflag_picture_end_mask
に依存し、(割り込みの場合には)ストップはafte
r_picture_stopに依存する。
【0334】一例として、チャンネル変更のためのイベ
ントのシーケンスは以下の如くである。 1)after_picture_stop=0及びa
fter_picture_discard=1でfl
ag_picture_endを セット。
【0335】2) flag_picture_end
_eventに応答。 a)サーチ・モードをシーケンスにセット(一例)。 b)リチューン等。 3) discard_allをFLUSH又はs/w
リセット。 4)SCDPが次のシーケンスの開始をサーチ。
【0336】全廃棄(discard_all) R/W制御ビットのdiscard_allが本発明に
よるSCDPをしてFLUSHトークンまで、それを含
めて全ての入力を廃棄せしめる。このビットはFLUS
Hトークンによって自動的にリセットされ、flag_
picture_end関数によってセットされ得る。
【0337】SCDPによっ認識されるトークン 大概の本発明のSCDPの主要な機能は実際のトークン
生成に関しているが、幾つかのトークンはコード化デー
タポー卜に供給され(又は入力回路を介し)たときにS
CDPによりデコードされ、実行される。これらのトー
クンは表18に示され、定義されている。
【0338】
【表18】 Scdpメモリーマップ 本発明のSCDPのための種々のレジスタ及びそれらの
関連ずるアドレスが表19に記述されている。
【0339】
【表19】 コード化データバッファ回りのデータフロー 本発明は以下の利点を提供する。
【0340】 1) バッファを回転(swing)させる方法。 2) バイトを奇数のビットにパックする必要を回避す
る方法。 3) (長くなる可能性の有る)SCDのバス幅を8ビ
ットまで減少させる。 4) SCDが自身の32ビットデータへのパッキング
を行う。大きなバスを回避するために、SCDのこのビ
ットはDRAM−IFの内部に位置している。本発明に
おいて、これをsccdbinと称する。このモジュー
ルは全てのDATAを32ビット語にパックし、非デー
タトークンの間は推算する。
【0341】5) スイングバッファがそれ自身の計数
及びスイングを行う。バッファはPICTURE_EN
D又はFLUSHトークン(又は信号)に応じてscc
dbinからの信号fill_and_swingに応
じてフラッシュする。 6) ハフマンデコーダの前に位置するアンパックモジ
ュールsccdboutが出力スイングバッファにより
提供されるbuffer_start信号を受け取るま
でFLUSH又はPICTURE_ENDに続く全ての
データを検出する。 序文 この節では本発明によるタイムスタンプ情報の扱いが定
義される。
【0342】動作の理論 MPEG−2ビデオ及びオーディオにおいてはデータは
MPEG−2システムストリームによって運ばれる情報
を使用して同期が敗られる。同期、クロック基準及びタ
イムスタンプを扱う情報には本質的に二つのタイプが有
る。クロック基準はデコーダに「現在」時間を表すため
にどのような数が用いられているかについて知らせるた
めに用いられる。これは、規則的な間隔でインクリメン
トされるカウンタを初期化するために用いられ、それに
よりデコーダは常に現在時刻が何時であるかについての
概念を持つことができる。
【0343】(典型的な例としてビデオ及びオーディ
オ)を形成するために用いられるデータのストリームの
各々についてタイムスタンプが付加されている。ビデオ
の場合、タイムスタンプは画面に関係づけられ、デコー
ダに対して「何時」(クロック基準により初期化された
カウンタにより定義される)画面を表示すべきかを知ら
せる。
【0344】しかしながら、MPEGにおける全ての物
と同様に、状況はこれよりずっと複雑である。クロック
基準には二つのタイプが存在する。プログラムクロック
基準(PCR)と、システムクロック(SCR)であ
る。クロックは90KHzの解像度までの情報を有して
おり、他方おクロックは解像度を27MHZまで拡大す
る追加の情報を有している。クロック基準は「時間」が
ランダムアクセス又はチャンネル変更の後に再度初期化
可能であるようにデータストリーム内にかなりしばしば
含められている。
【0345】タイムスタンプにもまた二つのタイプがあ
る。プレゼンテーションタイムスタンプ(PTS)およ
びデコーダタイムスタンプ(DTS)である。これら
は、並べ替えされねばならないI−ピクチャ及びP−ピ
クチャについてのみ異なっている(B−ピクチャについ
ては同じである)。DTSは画面をいつデコードすべき
かを示す一方、PTSは画面をいつ表示すべきかを示
す。単純な、2−3プルダウン効果の無いフレーム画面
の場合にはI−ピクチャ又はP−ピクチャのDTS及び
PTS間の差異はその画面フレーム期間に続くB−ピク
チャの数より1多くなる。
【0346】理解しておくべき重要な複雑さはDTS及
びPTS画面を瞬時にデコードすることが可能なデコー
ダの仮想的なモデルに関するものであるということであ
る。実際のデコーダはいずれもこのようなことはでき
ず、デコーダが画面を表示すべき理論的な時間を修正す
るためには多くのステップ必要とする(タイムスタンプ
及びクロック基準によって定義される)。このような変
更例はデコーダのアーキテクチャーの詳細に依存する。
明らかに、ビデオデコーダにより生じたいかなる遅延
も、音声デコーダ内の等価な遅延によって整合されねば
ならない。 不連続性 「時間」の概念での不連続性が生じる可能性が有る。例
えば、編集されたビットストリームにおいては各編集点
は不連続な時間を有することになる。同様の状態はチャ
ンネル変更の際にも生起する。一つの時間管理状態でエ
ンコードされたタイムスタンプを他の管理状態からのク
ロック基準によって定義される「時間」に対して用いる
ことは明らかに不正確な結果に到るため、注意しなけれ
ばならない。 スタートアップ スタートアップ(又はチャンネル変更)においては、正
確にデコードを開始するするために二つの潜在的に競合
する要件が存在するため、特別なの問題が生じる。ビデ
オについて考慮すると、システムヘッダーに続くI−ピ
クチャからデコードを始めなければならない(これは全
ての場合に正しくは無いが、概ね正確である)けれど
も、システムについて考慮すると最初にデコードされた
画面をタイムスタンプを担持している必要がある。しか
しながらすべての画面がタイムスタンプを担持していな
ければならないという要件は無く、もしI−ピクチャで
あって、かつタイムスタンプを有する画画を探索しよう
とすれば永遠に待ち続けなければならないかも知れな
い。
【0347】一つのI−ピクチャについて、それに先行
するタイムスタンプを有する画面からタイムスタンプが
どうなっていたであろうかについて計算することを思い
つくかも知れない。残念ながらこの方法は、それらの間
にある画面がフィールド画面であるかフレーム画面であ
るか(そしてrepeat_first_fieldが
セットされているか否か)を判別するためにその中間の
画面を部分的にデコードしなければならないため、実行
することは非常に難しい。このことはデータがコード化
データバッファ内を通過するとともにハフマンデコーダ
により廃棄されることが必要である。
【0348】実施例 図63はタイムスタンプの管理を実現するための第1の
実施例を示している。クロック基準253は本発明のシ
ステム分離器254によってデコードされて、90KH
zでインクリメントされる時間を表すカウンタ255に
送られる。それらはまた、ビデオデコーダ270内に位
置する第2のカウンタ258にもロードされる。
【0349】タイムスタンプはビデオバッファ271を
通過し、ビデオデータと同一の量だけ遅延される。これ
らは次に時間の局所コピーと比較されて画面が早すぎる
か遅すぎるかが判別される。本発明による他の実施例が
図64に示されている。この例はクロック基準253が
ビデオデコーダ270に渡される必要をなくしたもので
ある。このことはビデオデコーダ270及びシステムデ
コーダ256の両方の内に維持される第2のカウンタ
「vid_time」272、273を用いることによ
って行われる。それらは電源オンによりリセットされ、
それ以後フリーランする。この実施例においては二つの
カウンタが調和して動作することが要求されるため、そ
れらの調和がくずれることが無いようにする必要があ
る。このためにはシステム分離器(demux)内のカ
ウンタのキャリー出力をビデオデコーダ(図示の如く)
内のカウンタをリセットするために用いることで達成で
きる。
【0350】この実施例の他の利点としては数の全33
ビットを扱う必要がないことが挙げられる。理想を言え
ばビデオデコーダ270における16ビットの扱いを可
能にするためにカウンタを16ビットに限定することが
必要である。このようにすると、90kHzの解像度で
は不十分な数の範囲ののみ(2/3秒のみ)しか表せな
いように見えるけれども、VTGはフリーランニングす
る(又はデコードされるMPEGストリームとは関係の
無い何かにロックしている)ため、ビデオデコーダにお
いては時間制御はいずれにしてもフィールド時間にのみ
正確であれば良く、その様な高精度は必要としない。
【0351】その結果、デコーダに入るタイムスタンプ
の下位の数ビットは廃棄される可能性があると思われ
る。本発明においては、4つのビットが廃棄される。こ
のことはビデオデコーダ20ビット数の16ビットを使
用することを意味している。解像度は、こうして562
5Hzとなり、11.65秒の時間差を表すことができ
る。
【0352】従って、PALフィールドは5625Hz
のクロックの112.5回となる。NTSCフィールド
93.84回となる。よって、タイミングの計算はまだ
フィールド時間の約1%精度で行うことが可能であり、
本発明にとって充分である。 ハードウエア 図65は本発明によるハードウエアを示している。Br
ollyに開示されたモジュールに加えて二つのモジュ
ールがある。第1のものはスタートコード検出器201
の直後に付加され、トークンの生成を担当する。TIM
E_STAMPトークンがPICTURE_START
トークンの直前に生起する。MPEGシステムストリー
ムにおいて、タイムスタンプはパケットヘッダー内に担
持され、データのパケット内の最初の画面を示してい
る。パケットはビデオデータと整列していないため、一
般に、タイムスタンプが示している画面の開始の前に前
の画面の終端が存在することになる。
【0353】タイムスタンプ情報マイクロプロセッサイ
ンターフェースを介するか又はトークンを用いて本発明
のシステムに供給することができる。どちらの場合に
も、タイムスタンプデータ (16ビット)がレジスタ
に格納される。タイムスタンプ情報がレジスタ内にある
ことを示すためにフラグがセットされる。もしTIME
_STAMPトークンを用いてデータが供給された場合
にはそのトークンはトークンのストリームから除去され
る。
【0354】PICTURE_STARTトークンに遭
遇したときには、レジスタの状態を示すフラグが調べら
れる。もしクリアであれば、何も動作は行われず、PI
CTURE_STARTトークン及び以降の全てのデー
タは影響されない。いっぽう、もしフラグが有効なタイ
ムスタンプ情報がレジスタ内に存在することを示してい
れば、PICTURE_STARTトークンの前にTI
ME_STAMPトークンが生成される。その後、フラ
グはクリアされ、次に生起するタイムスタンプについて
使用可能となる。
【0355】第2のハードウエアモジュールはマイクロ
プログラム可能な状態マシン218に関するものであ
る。これは、単に27MHzデコーダクロックからクロ
ックを受ける一連のカウンタである。第1のカウンタは
クロックを4800(図に示された4804.8のオプ
ションについては後に記述する)で分周するプリスケー
ラである。4800は300(27MHz/90kH
z)を16倍した数である。 第2のカウンタは時間カ
ウンタであり、プリスケーラ278がクロックを出力す
る度にインクリメントされ、reset_timeピン
によってリセットされる。
【0356】この部分のカウンタはその他の部分で使用
される弱フィード・バックラッチに比べて粒子汚れに対
して耐性が大きい完全クロックフィード・バックフリッ
プフロップ(同期の)によって実現される筈である。
(これはBrianの時間カウンタがシステムデコーダ
内のカウンタと調和しない虞れがあるからである。) マイクロプログラマブル状態マシン218は時間カウン
タによって示される現在時刻を読み出し、それをTIM
E_STAMPトークンによって供給される値と比較す
ることが可能である。従って、それが画面をデコードし
ているべき時間に比較して早いか遅いかを確認すること
が可能である。
【0357】タイムスタンプに関するSCD201にお
いて用いられるレジスタは表20に示されている。
【0358】
【表20】 MSMによるタイムスタンプ情報の扱い この節においては、本発明によるMSM218の、TI
ME_STAMPトークンを受け取った際の機能の詳細
について記述する。
【0359】はじめに、16−ビットの符号付きタイム
スタンプ補正がTIME_STAMPトークンによって
担持されるタイムスタンプに付加される。この補正はチ
ップ−リセットの際にMSM218によりリセットさ
れ、もし何も動作が行われない場合にはタイムスタンプ
は変化されない。制御用マイクロプロセッサは、しかし
ながら、タイムスタンプを修正するためにこのレジスタ
にどの様な値をも書き込むことができ、それにより、ビ
デオ及び音声デコーダを通した差分による遅延を補償す
る。
【0360】次に、補正されたタイムスタンプが現在時
刻から減算される。この結果の符号がエラーの方向を与
える(そしてもし有れば、MSM218によって生成さ
れたエラーコードを判別する)。次いで差の絶対値がと
られ、その結果がフレーム時間と比較される。もしその
結果がフレーム時間より小であれば、何も動作は行われ
ない。前に述べたように、VTGがフリーランニングす
るため、時間は公称時間からフレーム時間をプラス・マ
イナスした精度でのみ制御可能である。
【0361】本発明において、もしエラーがフレーム時
間を越えた場合には、何等かの補正が行われなければな
らない。MSM218は復号が早すぎる場合には適切な
時間になるまで単に復号を遅延させることができるた
め、それ自身で状態を補正することができる。しかしな
がら復号が意図された時間より遅い場合には、コード化
データバッファの出力において画面を信頼性をもって廃
棄することはできないため、これはもっと複雑になる。
本質的には、シーケンスの復号は壊れており、状態を補
正する最も信頼できる方法は、ランダムアクセス又はチ
ャンネル変更の場合と同様の方法で復号処理を再スター
トすることである。この手続きを容易化するために、M
SM218の制御レジスタFLUSHトークンに遭遇す
るまで全てのデータを廃棄するようにプログラムしても
良い。 スタートアップ もし本発明によるMSM218が、タイムスタンプをそ
れがスタートアップ状態として認識する時間に受け取っ
た場合には(例えば、リセットの後、SEQUENCE
_ENDトークン又はFLUSHトークンの続きでまだ
PICTURE_STARTの前のとき)、MSM21
8の動作は修正される。もしタイムスタンプが現在時刻
より前に復号が行われていなければならなかったことを
示していれば、上に詳述した方法と同一の方法で状態が
扱われる。しかしながら、もしタイムスタンプが現在時
刻より後に復号が行われるべきことを示している場合
(これはスタートアップの通常の状態である)には、も
しエラーが1フレーム時間より短くてもデコーダは正確
な時間まで待機する。この方法で、公称復号時間を正確
な時間に対してできるだけ正確に設定することができ
る。その後の画面はそれらの公称時間の前あるいは後
に、エラー状態がトリガーされることなしに1フレーム
時間までデコードされる。
【0362】加えて、本発明においてはエラー「ERR
_TOO_EARLY」はdisable_too_e
arlyの設定に拘らずスタートアップの間には生成さ
れない(このエラーでは、復号が早いことが期待される
ため)。 MSMタイムスタンプエラーコード タイムスタンプの処理の結果として、二つのエラーの内
の一つが生成され得る。 復号がタイムスタンプにより
示される時間より早く行われた場合にはERR_TOO
_EARLYが生成される。
【0363】タイムスタンプにより示される時間より遅
く復号が行われた場合にはERR_TOO_LATE.
ERR_TOO_EARLYは抑圧することができる
が、ERR_TOO_LATEは全てのエラーがマスク
されない限り常に生成される。表21は本発明によれる
マイクロプログラマブル状態マシンに関係する種々のタ
イムスタンプレジスタを記述したものである。
【0364】
【表21】 30Hzのサポート 本発明は30Hzフレームレートは正確にははサポート
しない。しかしながら当業者には、本発明はもしクロッ
ク生成回路が適切に変更されれば30Hzデータをデコ
ードすることができることが理解される。この場合に
は、システムは27.027MHzクロックによってク
ロックを供給することで、典型的な「CCIR−60
1」ラスターが正確に30Hzで画面を生成するように
なる。27.027MHzクロックに対応するために
は、それを300.3で分の1に分周して90kHzク
ロック生成しなければならない。本発明においてはこの
値を16を係数として拡大しているため、クロックを4
804.8で分周する必要がある。
【0365】序文 この節では本発明によるマイクロコーディング可能な状
態マシン(MSM)の詳細について記述する。MSMを
構成する目的は、わずかな補正でVLCデコーダ及びア
ドレス発生器などの多くに応用することが可能なマシン
を製造することである。
【0366】本発明のMSMは広い範囲の特徴をサポー
トする汎用的なものである。しかしながらMSMの基礎
を成す構造はモジュラー形式であり、柔軟に構成するこ
とが可能である。よって、当業者には本発明は種々の応
用に使用することが可能であることが理解される。図6
6に示された如く、システムのデザインは二つの区画に
分割される。第1の区画は状態マシン218である。既
にBrollyの出願に開示され、ここに引用として含
める2線式インターフェースによって制御されるデータ
処理パイプラインに渡される命令を生成する。第2の区
画はALU222及びそれに連合するレジスタファイル
221から成る演算コア219である。この演算コア2
19はデータ処理パイプラインの一部である。これは二
つの2線式インターフェース注1による制御に従ってデ
ータ及び命令を受け入れる。それは、一つの2線式イン
ターフエースによる制御に従ってその出力にデータを発
生する。これらの二つの構成部品を組み合わせることに
よって完全なマイクロ符号語(マイクロ・コード・ワー
ド)を定義することが可能になる。 注1 状態マシンはまたアップ・ストリームブロックを
制御する場合には、これらの二つの2線式インターフェ
ースは組合される。
【0367】状態マシン 本発明による状態マシン218は演算コア219に命令
を与える。それはまた命令の進行に従って制御自身に命
令を与える。演算コア219に渡された命令のアドレス
はプログラムカウンタに保持される。プログラムカウン
タは0x00にリセットし、そのアドレス内を連続的に
進む。しかしながら「ジャンプ」または「call」命
令及び/又は「割り込み/エラー」イベントによりプロ
グラムカウンタは再ロード可能であり、従って命令の実
行の順序を変更可能である。
【0368】本発明においては状態マシン218は40
96の命令まで受け入れることが可能である。しかしな
がら、これ以外の量の命令を使用することも可能であ
り、これは限界として作用することを意図するものでは
ないことは当業者に理解される。 ジャンプ及びコール この実動化例において、全ての命令は条件ジャンプ命令
である。条件は全ての命令について評価され、ジャンプ
すべきか(即ち、プログラムカウンタを再ロードすべき
か)否かが決定される。無条件ジャンプ又はジャンプ無
しには二つの条件「真」及び「偽」が設けられている。
残りの条件(合計16)はステータスバス上のテストに
基づいている。もし条件が「真」又は「偽」でなけれ
ば、状態マシン218は演算コア219が命令を実行し
終えて条件に対するテストのためにステータスバスを状
態マシンに戻すまで待つ。これらの条件は以下の表22
に示されている。
【0369】
【表22】 もしコールビットがセットされた命令でジャンプが行わ
れたときには、ジャンプが行われていない次のアドレス
がリターンアドレスとして格納される。よって、これが
ルーチン呼出しの機構を形成する。ルーチンから格納さ
れたアドレスに戻るためには、アドレス0x001にコ
ールが行われる。コールは1コールの深さだけサポート
される。即ち、ただ一つのリターンアドレスのみが格納
され得る。しかしながら、コールからのコールは、誤っ
てはいるけれども、ハードウエア内ではチェックされな
い。 割り込み及びエラー 本発明において、もし割り込み/エラー線がハイである
とサンプルされれば、割り込み/エラーアドレス(アド
レス0x001)への無条件ジャンプが行われる。割り
込み/エラーが無かった場合に取り込まれていたはずの
次のアドレスが格納される。割り込み/エラールーチン
から戻るためには、割り込みアドレス(0x001)へ
のジャンプが行われる。
【0370】本発明による状態マシン218は、割り込
み又はエラールーチンとしての実行のためにハード結線
されている。その違いは割り込みルーチンは実行中は他
の割り込みをマスクするのに対してエラールーチンはマ
スクしないことである。状態マシン218はいまエラー
ピンというよりは割り込みとして配線されている。 ジャンプ・アドレス プログラムカウンタにロードされたアドレスはジャンプ
アドレスである。このアドレスの12ビットはマイクロ
符号フィールドに含められている。これは絶対アドレス
であっても良く、ALU222の出力によってそれを置
換した部分を有するものであっても良い。もしアドレス
を置換すべき場合は、状態マシン218は演算コア21
9が命令を実行し、置換のためにALU222の出力を
状態マシンに供給し終えるまで待つ。
【0371】本発明によるアドレスのフォーマットが表
23「ジャンプ・アドレス置換」に示されている。
「a」で印をしたビットは絶対アドレスビットを示して
いる。下位の残りのアドレスビットが置換される。
「s」で印をした最下位ビットが置換ビットである。
【0372】
【表23】 本発明のアドレス置換の特徴によりジャンプ・テーブル
を構成することが可能になる。 状態マシン内部の命令 ステータス・バスにおいて繰り返し条件付きテストを行
うことが好ましい。これらの命令は状態マシン218の
内部命令であり、演算コア219からの安定したフィー
ド・バックを必要とする。従って、このタイプの命令
は、それらの実行を失敗するであろう演算コア219に
対しては無効であるとマークすることができる。よっ
て、「有効」ビットが演算コア219に対して有効な命
令をマークするために設けられている。 状態マシンテスト 本発明においては状態マシン218の動作を検証するこ
とが可能なように、多数のレジスタがマイクロプロセッ
サバスにアクセス可能である。アクセスは「アクセス」
レジスタを1にセットすることにより可能になり、該レ
ジスタがこの値をリードバックするまでレジスタをポー
リングする。次に、状態マシンは停止し、安全にアクセ
スできる。マシンは、「アクセス」レジスタにゼロを書
き込むことにより再スタートさせることができる。
【0373】マイクロプロセッサはアクセスをもつと
き、それは以下のレジスタに読み出し書き込みが可能で
ある。 −プログラムカウンタ −コール・リターン・アドレス −割り込みリターン・アドレス −割り込みステータス・ビット(即ち、割り込みが進行
中であるか否かを示す) −マイクロ符号の全てのビット 表24はこれらのレジスタの種々のアドレスを示してい
る。
【0374】状態マシン218はまた、マイクロプロセ
ッサイベントを生成することによりそれ自身を停止する
ことができる。イベントのマスクビットがセットされて
いるときにのみ、マシンが停止する。その後、このイベ
ントをサービスする時点では通常の方法でアクセスが得
られる。イベントはリセットアドレス(0x00)への
コールによって生起される。このコールは実際には取り
込まれないが、命令が実行された後に単にイベントを生
成する。しかしながら、それは検査のために、インスト
ラクションROMの出力に残留する。
【0375】本発明の状態マシン218はその命令を通
して単一ステップで進むモードを有している。単一ステ
ップモードはMSSRレジスタのビット0をセットする
ことによって開始される。その後、マシンは各命令の前
に停止する。停止状態は「1」=Stoppedで表さ
れる。その後、実行寸前の命令は命令ROMの出力に位
置し、マイクロプロセッサのアクセスを介して変更可能
である。マシンを再スタートするためには、MSSRレ
ジスタのビット1に「1]を書き込む。これらのビット
レジスタは両方が同期が取られ、従って、それらがアク
セス可能となる前にマイクロプロセッサアクセスが必要
である。 状態マシン・マイクロ符号マップ 表25は本発明の状態マシンのためのマイクロ符号マッ
プを示している。
【0376】
【表25】 状態マシン・マイクロ符号語 同様に、表26は本発明による状態マシン・マイクロ符
号語を示している。
【0377】
【表26】 a=アドレス; s=アドレス置換; c=コール又はジャンプ; condition=ジャンプ条件コード; v=演算コアに有効な命令 演算コア 本発明において、演算コア219がMSM218内にお
ける全てのデータ操作を行う。図67に示された如く、
演算コア219の一般的構成は、利用可能なバスからそ
れらの入力を選択し、出力としてバスを提供する機能的
ブロックを含む。 演算コア219は32ビット幅であ
り、他の実装態様において8、16、24又は32ビッ
トのデータパスを形成することが可能なビットスライス
から構成される。
【0378】図68に図示された如く、本発明の演算コ
ア219は3つの主な機能的ブロック、即ちデータスト
リームと通信するためのトークンポート360、演算
(或いは他の機能)を実行するためのALU222、全
てのレジスタを含むレジスタファイル221を有する。
図68においては全ての出力バスに符号が付けられてい
る。ブロックへの入力はこれらのバスから選択される。
これらのセレクタのサイズ及びそれらの入力は変更可能
であり、マイクロ符号により制御される。 ALU 本発明によるALUブロック222は、演算コアにおけ
る全ての演算及び数の操作を担当する。それは非常に複
雑な演算(循環、乗算、及び除算等)を比較的単純な動
作(即ち、シフト、条件付反転及び加算)等の組み合わ
せにより実行することを可能にする。これらのブロック
の各々について以下に記述する。その後、これらが演算
コア219において、全体として、いかにしてより複雑
な演算を実行するためにもちいられるかについて例が示
されている。 シフトブロック 本発明において、「シフト」ブロックは1つのビットが
左シフト、右シフト、またはシフトしないことを可能に
する。1ビットバスKは、あたかも付加ビットであるか
のようにワード内で回転する。これは表27に示されて
いる。
【0379】
【表27】 もしss=0b01aであれば、「NOP]がALU2
22全体に送信される。これは動作無しであり、最後の
動作から、どの状態フラグが変更され始めることも防止
する。 キャリーブロック キャリーブロックは状態レジスタからキャリービットを
取り込むか又はそれをクリアする。単一ワードの付加及
びその後の動作において、キャリービットはクリアされ
るけれども、複数ワードの動作においては、前の動作に
より生成(そして状態フラグに格納された)されたキャ
リーがキャリーとして使用される。これは表28に示さ
れている
【0380】
【表28】 条件ブロック 本発明によるブロック条件、被加数、ALUコア機能へ
のキャリーが表29に定義されている。
【0381】
【表29】 ALUコア 本発明のALUコア222は2の補数の演算を用いて単
純な論理セット及び演算機能を行う。これらは表30に
定義されている。
【0382】
【表30】 ALUコア222の結果から4つの状態フラグが生成さ
れる(表31参照)。
【0383】これらはレジスタファイル221に格納さ
れ(表36に示された如く)、条件コードと比較するた
めに状態マシン218に送り返される。
【0384】
【表31】 ALUマイクロ符号語 表32がALUマイクロ符号語を示している。
【0385】
【表32】 上において、 ssはシフトブロック制御 iiは条件ブロック制御 ffはALUコア制御 cはキャリーブロック制御である。 ALUの使用 表33は本発明による、ALUの種々の機能のためのビ
ットパターンを示している。
【0386】
【表33】 レジスタファイル 図69は本発明のレジスタファイル221を図示してい
る。レジスタファイル221は64個の32ビット語レ
ジスタを含んでいる。レジスタファイル221は部分ワ
ードをアドレス指定すること、即ち、ファイルは64×
32ビット、128×16ビット、250×8ビット、
512×4ビット、1024×2ビット、又は2048
×1ビットフォーマットとしてアドレス指定することが
できる。アドレスはマイクロ符号から直接的に与えられ
るか、又はアドレスはその一部分を空間レジスタから置
換したものであっても良い。これによりレジスタの指標
付きアクセスが可能になる。
【0387】各命令において、読み出し・修正・書き込
みが単一のレジスタ上で行われる。読み出し・修正・書
き込みにより部分ワードをファイルに書き戻すことが容
易になる。書き込みのソースはそれ自身の独立したマイ
クロ符号を有する外部のマルチプレクサによって決定さ
れる。もし書き込みが要求されない場合には、レジスタ
ファイル221の出力がマルチプレクサによって選択さ
れねばならない。
【0388】部分語(部分ワード)はモードレジスタの
ビット0に応じて符号付き又は符号無しの数として扱わ
れる。もし部分語が負であれば(即ち、そのMSBがセ
ットされていれば)、それはバスの全幅まで符号が拡張
される。これにより演算において部分語を容易に使用す
ることが可能になる。また、本発明のレジスタファイル
221内の3つのロケーションが専用バスに接続されて
いるけれども、尚それらは、他のレジスタファイルのロ
ーケションと共に使用することができるように成されて
いる。これらはA及びBレジスタ、及び図69に示され
たステータスレジスタである。レジスタファイルはま
た、付随するターミナルカウント・レジスタ、定数レジ
スタ及びレジスタファイルのモードを指定するモード・
レジスタとのアドレス置換のためのインデックス・レジ
スタを含んでいる。 レジスタファイル・アドレス指定 本発明によれば、アドレス指定は二つの異なる特徴に対
処する必要がある。語の変化する幅の部分にアクセスす
るための可変長アドレスとアドレス置換である。 部分
語をアドレス指定するためには長いアドレスが必要であ
る。従って、全てのアドレスは可変長であり、以下の如
く符号化される:「a]がアドレスビットであるとき、
アドレスビットの最下位は「S」、置換ビットである。
【0389】
【表34】 アドレス指定は大きなエンディアンである。換言すれ
ば、高位である程、語のより高位の部分が低いアドレス
によってアドレスされる。
【0390】アドレスの部分「a...a」はインデッ
クスレジスタの一つによって置換することができる。表
34に一例として定義された8つのビット語の一つのア
ドレスを用いて、表35は置換すべき最下位ビットの数
をどのようにして定義するかを示している。全ての後端
のゼロは置換される。
【0391】
【表35】 例えば、4ビットを32ビットアドレス内に置換する
と、0b000001aaa01111の形になり、ゼ
ロビットを1ビットアドレスに置換すると0b1aaa
aaaaaaaaa0になる。
【0392】本発明において、置換は二つの8つのビッ
トインデックスレジスタのレジスタファイルマイクロ符
号語において指定される一つから来ている。従って、最
大8つのビットが一つのアドレス内に置換可能であるこ
とが分かる。また、上記の方式よって、0b00000
00000000又は0b1111111111111
1等の不法なアドレスを使用することが可能であること
が分かる。不法なアドレスはアドレスがアクセスされな
い結果となり、レジスタファイルの出力バスの状態が不
明にする。 レジスタファイル・レジスタタイプ 本発明において、複数のレジスタファイル・レジスタタ
イプが存在する。その各々が以下に記述されている。
【0393】・ 独立にバスを有するレジスタ 3つのレジスタ(A、B、及びステータス・レジスタ)
はそれらの専用のバスを有し、またレジスタファイルに
おいて通常の方法でアクセスすることができる。これに
よりレジスタは演算コア219においてより多くの位置
で接続され得ると共にレジスタファイル内の他のレジス
タと平行してアクセスすることが可能になる。独立バス
はアクセスがその全幅、即ち32ビット幅でのみレジス
タにアクセス可能である。
【0394】これらのレジスタにはマイクロ符号ライト
イネーブルは存在しない。これらへの書き込みはそれ自
身のマイクロ符号制御語を有する外部マルチプレクサを
介してのみ可能である。書き込みを阻止するためにそれ
らは、図70に示された如くそれ自身の値を用いて書き
込みされることが必要である。独立バスレジスタがレジ
スタファイル内の如く書き込みされるときには、独立バ
ス書き込みは抑圧される。
【0395】ステータスレジスタは独立バスレジスタと
して実動化される。レジスタのビットは表36に定義さ
れれている。
【0396】
【表36】 ・ インデックス及びターミナル・カウント・レジスタ 二つの8つのビットインデックスレジスタがアドレスへ
の置換のために設けられているこれらの内の一つはマイ
クロ符号の制御に従って、命令毎にインクリメントされ
得る。更に、各々にはターミナル・カウント・レジスタ
が付随している。レジスタインクリメントが渡されたと
きには、そのターミナル・カウントがゼロにリセットさ
れる。
【0397】インデックス・レジスタはY及びZと呼ば
れ、ターミナル・カウント・レジスタU及びVをそれぞ
れ有する。これらの全てはレジスタファイル内でアクセ
スすることができる。インデックスレジスタZはその出
力に接続された予め定義されたデコーダ(今のところ、
この復号は反転である)を有する。モードレジスタ(ビ
ット1)におけるIndex_Modeに応じて、イン
デックスレジスタよりはむしろこのデコーダが、アドレ
ス置換及びレジスタファイルにおけるレジスタZからの
読み出しに用いられる。(Index_Mode=1は
リード・デコード、Index_Mode=0はリード
・カウント) * 定数レジスタ 本発明において、レジスタファイルの32ビットロケー
ションの内の16は予め定義された定数である。これら
は通常のレジスタとして読み出すことが可能である。こ
れらのロケーションへの書き込みは何も効果を生じない
(現実施例の為に選択された定数は0−7であるけれど
も、他の数値の定数を用いても良いことは明かであ
る。) 本発明によるこの定数の実装は、マイクロ符号における
一定のフィールド及び演算コアにおける一定のバスの必
要を無くするものである。しかしながら、これはプログ
ラムにおいて使用可能な定数の数を制限する。(数16
は得ることができる。)これらの定数はその時点毎にプ
ログラムされる。更に、もし必要であれば、しばしば用
いる値はマルチプレクサに結合しておくことが可能であ
る。 レジスタファイル・アドレスマップ 表37は本発明のためのレジスタファイルアドレスマッ
プを示している。
【0398】
【表37】 レジスタファイル・マイクロ符号語 表38は本発明のためのジスタファイル・マイクロ符号
語を示している。
【0399】
【表38】 a= レジスタファイルアドレス全体(常に12ビッ
ト) s= 置換ビット r= 置換のために用いるインデックス・レジスタ;も
しnがそれぞれ0、1であればY,Zインデックス・レ
ジスタを選択する。
【0400】l= rにより指定されるインクリメント
・インデックス・レジスタ トークンポート 本発明のトークンポートは演算コアの
データストリームへの接続であり、2線式インターフェ
ースによる接続である。トークンポート入力におけるデ
ータはトークンポート読み込みサイクルの間にのみ定義
される。従って、それは読み込みサイクルの間にのみ使
用しなければならない。
【0401】もし入力ポートが読み込みサイクルの間に
有効なデータを含まない場合、または書き込みサイクル
の間に出力ポートが受け入れない場合には、演算コアは
停止する。よって、演算コアは何も動作を行わず、マイ
クロ符号語を新しく読み込まず、どのレジスタにも書き
込まないことになる。演算コアはこれらの条件が存在し
ないときにのみ再スタートする。 トークンポート・マイクロ符号語 表39はトークンポート・マイクロ符号語を図示してい
る。
【0402】
【表39】 I= 入力ポートへの読み込み O= 出力ポートからの書き出し マルチプレクサ ブロックのソースの選択はマルチプレクサを用いて実行
される。殆どすべてのバスの組み合わせ(機能的ブロッ
ク例えば、ALUへの入力は記憶ブロック、例えばトー
クンポート又はレジスタファイルからのものであること
の必要を例外として)が許される。
【0403】マルチプレクサは2、4又は8入力の何れ
かである。それらは、従って、マイクロ符号語の1、2
又は3ビットをその入力の選択を制御することのために
それぞれ使用する。 MPIメモリーマップ 表40は本発明によるMSMアドレスマップを示してい
る。
【0404】
【表40】 序文 MPEG符号化の標準(MPEG−1及びMPEG−2
共通)においては量子化された係数は「イベント」とし
てコード化される。各イベントはRUN及びLEVEL
としてコード化される。RUNは与えられたゼロ以外の
係数に先行ずるゼロ係数の数であり、LEVELはその
係数の値である。加えて、一つの特別のイベント、En
d−of−Block、がブロックの残りは全てゼロで
あることを示すために、最後のゼロ以外の係数の後に使
用される。
【0405】例えば、以下の係数のシーケンスを仮定す
ると、 1、−7、0、3、0、0、0、−1、0、0、0、
0、...0(合計64の係数) これらは(RUN、LEVEL)として表される以下の
イベントとしてモデル化される。
【0406】(0、1)(0、−7)(1、3)(3、
−1)(EOB) モデル化処理の逆を実行して64の係数の各々が以降の
処理のための単純な数として表されるようにすることは
逆モデラーの仕事である。 インターフェース 以下の信号ピンが本発明の逆モデラーにデータを転送す
るために使用される。: ・LEVEL [11:0] ・RUN [5:0] ・in_extn ・in_valid ・in_accept トークンはlevel[11:0]バス(下位の8ビッ
ト;level[7:0])上で転送される。
【0407】run[5:0]RUN情報を担う補助の
バスとして動作する。それはDATAトークンのデータ
語における場合を除いて特に意味を持たない。以下の信
号が逆モデラーの出力において使用される。 ・out_data[11:0] ・out_extn ・out_valid ・out_accept 機能の記述 逆モデラーの出力に現れるデータトークにおいて常に6
4の係数が存在するようにDATAトークン内のデータ
は拡張されている。多くの場合、DATAトークンの最
後のデータ語は64番目の係数を生成しない。これはエ
ラーではなく、この時点でEOBまでがビットストリー
ム内にコード化されてしまったためである。従って、こ
の状態においては逆モデラー合計64の係数が出力にお
いて生成されるまでゼロデータトークン語を出力し続け
なければならない。
【0408】特定の状況(例えば、データエラーが生じ
た時など)においては、逆モデラーへの入力におけるデ
ータトークンが64以上の係数を表すことが有る。この
状態において、モデラーは全ての余分のデータを廃棄
し、ちょうど64の係数を含むトークンをその出力に生
成しなければならない。入力に現れるすべての非データ
トークンは、変更無しに逆モデラーの出力に単に転送さ
れる。
【0409】タイミング要件 本発明においてはデータがクロックレートで逆モデラー
を通過することが要求される。Imodelへの入力に
おいてギャップが存在せず、出力に接続された回路がI
modelを停止させることがない(即ち、in_va
lid=1、out_accept=1)状態において
は、新しいデータ語がクロックサイクル毎にImode
lの出力に出現する。しかしながら、この状態において
は、ゼロ以外のRUN(データトークンにおける)は各
入力に対して1以上のデータ語が生成させるため、Im
odelは1クロックサイクル毎に新しいデータをその
入力に受け付けないかもしれないことに注意すべきであ
る。
【0410】マイクロプロセッサ・インターフェースア
クセス 本発明の逆モデラー回路はその通常の動作のモードにお
いてMPIに接続されている必要はない。エラー条件
(係数過多)がマイクロプロセッサ割り込みを生成すべ
きでないことに注意すべきである。それは単に余分のデ
ータを廃棄することにより内部的に処理される。
【0411】しかしながら、ブロックの入力におけるス
ノーパ(テスト)回路のためにはマイクロプロセッサア
クセスが必要とされる。 序文 MPEG符号化の標準において、係数は「ジグザグ」ス
キャンされ、低周波数の係数は高周波数の係数の前に伝
送される。
【0412】本発明による逆ジグザグの機能は、逆モデ
ラーからそれが受け取る係数の一次元ストリームをID
CTによって処理することが可能な係数の二次元アレイ
に変換することである。MPEG−1においては、ただ
一つのスキャンパスが使用されており、これは文字どお
りジグザグ(従って、その名前が)であった。しかしな
がら、MPEG−2は二つのスキャンパスを使用する。
第1のスキャンパスはもともとのMPEG−1パスであ
り、第2のスキャンパスは、著しく大きな垂直周波数構
成部品が存在しがちであるインターレース符号化におい
て使用するために最適化されている。
【0413】明らかにジグザグスキャンの順序で伝送さ
れる係数に加えて、量子化マトリクスも同様にジグザグ
スキャンの順序でダウンロードされる。これはMPEG
−1、H.261及びJPEGにおいて行われている。
その結果、本発明においては量子化器は逆ジグザグ(I
DCTの一部として実現されている)の前に位置してい
る。従って、量子化器はダウンロードされた量子化マト
リクス係数と同一の順序で到着する係数の一次元ストリ
ームに対して動作する。よって、量子化器は単に第1の
係数を第1のマトリクスエレメントに関係づけ、第2の
係数を第2のマトリクスエレメントに関係づけ、以下同
様の動作を行うことが必要である。
【0414】しかしながら、MPEG−2においてはい
ま二つのスキャンパスが有るため、本発明においては新
しいアプローチが行われており、逆ジグザグが逆量子化
器に先行する構成である。係数及びダウンロードされた
マトリクスは両方とも逆スキャンされ、逆量子化器はこ
こでは二次元データに対して動作する。このことは、デ
ータの全ての3つの表現(IZZの出力における二つの
ジグザグスキャンおよびラスタースキャン順序)におい
て、最初の係数は常に最初となり、最後の係数は常に最
後となることによってのみ可能であることに注意すべき
である。第1の係数はDC項であるため、逆量子化器I
quantにおいて特別に扱われる。最後の係数は全て
の他の係数の値の関数としてのミスマッチ制御の結果に
よって修正することが必要になる可能性があるため(故
にそれは最後でなければならない)、特別に扱われる。
残りの62の係数は全て(各々がそれ自身の量子化マト
リクスエレメントを有することを除いて)同一の方法で
扱われる。
【0415】インターフェース 以下の信号が本発明の逆ジグザグの入力において使用さ
れる。 ・in_data[11:0] ・in_extn ・in−valid ・in−accept 以下の信号が逆ジグザグの出力において使用される。
【0416】 ・out_data[11:0] ・out_extn ・in_valid ・out_accept 機能の記述 逆ジグザクIZZは以下のトークンに応答する。
【0417】 ・PICTURE_START ・ALTERNATE_SCAN ・DATA ・QUANT_TABLE 他の全てのトークンはIZZ内を修正されることなく通
過する。
【0418】PICTURE_STARTトークンはI
ZZに対して二つのスキャンパスのどちらが実行されて
いるかを表すその内部のステート(例えば、alter
nate_scan)をゼロ(MPEG−1スキャンを
表す)にリセットさせる。ALTERNATE_SCA
Nはマスク0xfeを伴い値0xe6が割り当てられる
ことが可能なトークンである。ALTERNATE_S
CANトークンは表41に示されている。
【0419】
【表41】 「s」はどのスキャンを以降のデータトークンのために
使用ずべきかを示しており、従って、IZZレジスタ”
alternate_scan”にロードされる。
【0420】DATA(データ)トークンはaIter
nate_scanの設定に拘らずスキャンパスゼロ
(MPEG−1スキャンパス)に従って並べ変えられ
る。alternate_scanはその値がどの様な
値であったとしてもそれを保持していること(即ち、ゼ
ロにセットしてはならない)が必要であり、それによっ
て以降のデータトークンは正確に扱われることに注意す
べきである。
【0421】QUANT_TABLEトークンはalt
ernate_scanの設定に拘らずスキャンパスゼ
ロ(MPEG−1スキャンパス)に従って並べ変えられ
る。alternate_scanはその値がどの様な
値であったとしてもそれを保持していること(即ち、ゼ
ロにセットしてはならない)が必要であり、それによっ
て以降のデータトークンは正確に扱われることに注意す
べきである。誤りを含んで形成されたトークンDATA
及びQUANT_TABLEトークンはどちらも誤りを
含んで形成される可能性が有る。データトークンは、逆
モデラーImodelがそれが正確に形成されているこ
とを確認しているため、正確なものであることは明らか
である。しかしながらQUANT_TABLEについて
はそのような保証は無い。誤りを含んで形成されたQU
ANT_TABLEトークンの処理を実現しなければな
らないため、同様にデータトークンについてもその処理
を実現しなければならない。 本発明によれば、DAT
A及びQUANT_TABLEトークンがIZZへの入
力において出現するときに過度に短いときにも、出力に
おいてトークンは正確な数(64)のデータ語となる結
果でなければならない。これらの語に含まれるデータは
重要ではなく、あそらくトークンの開始以前にリオーダ
リングRAMににたまたま存在していた無用な値とな
る。同様に、長過ぎるDATA及びQUANT_TAB
LEトークンも出力において正確に形成されたトークン
となる必要がある。最初の64係数(マトリクスエレメ
ント)が使用されねばならず、残りは廃棄されねばなら
ない。
【0422】誤りを含んで形成されたトークンに続く、
以降の全ての(正確に形成された)トークンは正しく扱
われねばならない。マイクロプロセッサインターフェー
スエラー(割り込み)が生成されることは要求されな
い。 ラスター・スキャン順序 IZZの出力において、本発明によるDATA及びQU
ANT_TABLEトークンは二次元データを表してい
る。しかしながら係数は実際にはまだ数値の一次元系列
として転送されている。ここで、データを行として転送
するべきかあるいは列として転送するべきかNの問題が
生じる。
【0423】予測回路はペル領域のデータがラスター−
スキャン順序で構成されることを要求する。IDCTが
データを転置するため、IDCTに入るデータは逆の順
序でなければならない。表42にはDATA及びQUA
NT_TABLEトークンのためにIZZの出力に転送
される係数の順序を示されている。
【0424】
【表42】 マイクロプロセッサ・インターフェース・アクセス IZZの通常の機能においてはマイクロプロセッサ・ア
クセスは要求されない。しかしながら、おそらく、リオ
ーダリングRAMをテスト可能にするためにはアクセス
が必要とされる。また、スノーパが必要とされないこと
も予想される。Imodelの開始において一度行うこ
とで両方のブロックのために充分である。
【0425】序文 この節においては、予測について扱う。可能な全ての予
測モードは番号付けされており、その各々には何が行わ
れなければならないかにつて正確に説明するために図面
が設けられている。この節の全体にわたって、半ペル・
フィルタリング等の水平次元に生起する動作について特
別な注意は払われていない。これは、これらの動作はB
rollyにおける対応する動作と同一であるからであ
る。しかしながら、垂直次元においては、インターレー
スされた画面フォーマットであるために事情は大きく異
なっている。 フレーム画面における予測 フレームに基づく予測 このモードにおいては、基準フレームから予測が生成さ
れる。その結果は、二つの基準フィールドが始めに一つ
のフレームに合成され、そのフレームから予測が行われ
るかの如くである。これは正確に、Brollyにおい
て記述された状態であることに注意すべきである。
【0426】半ペル・フィルタリングは垂直方向におい
て行うことができ、これはベクトルの最下位ビットによ
ってトリガーされる。最下位ビットに加えて、次の最上
位ビット(ビット1)は、予測の最上ラインが上端基準
フィールドに由来するのか、あるいは下端基準フィール
ドに由来するのかを決定するものであるから、特に重要
である。
【0427】これによって、4つの場合を考慮せねばな
らず、各々が垂直ベクトルの最下位の二つのビットのバ
イナリー値に依存する。 ベクトル[1]=0、ベクトル[1]=0 図71に示された如く、半ペル・フィルタリングが無い
ため、ちょうど16ライン(クロマについては8)が読
まれ、各基準フィールドから8(4)ラインが読まれ
る。
【0428】ベクトル[1]=0、ベクトル[0]=1 同様に、図72に示された如く、17(9)ラインが読
まれ、9(5)ラインが上部(トップ)基準フィールド
から読まれ、8(4)ラインが下部(ボトム)基準フィ
ールドから読まれる。 ベクトル[1]=1、ベクトル[0]=0 再び、図73に示された如く、ちょうど16(8)ライ
ンが読まれるけれども、ここでは予測の最上ラインが下
部基準フィールドから読まれることに注意すべきであ
る。
【0429】ベクトル[1]=1、ベクトル[0]=1 そして、図74は17(9)ラインが読まれ、8(4)
ラインが上部基準フィールドから読まれ、9(5)ライ
ンが下部基準フィールドから読まれることを示してい
る。よって、ビット1はどちらの基準フィールドが予測
を生成するために読むことが必要な最上ラインを保持し
ているかを示している。加えて、もしビット0がセット
されていれば、それはどちらの基準フィールドが半ペル
・フィルタリングの実行を可能にする余分のラインを有
しているのかを示している。
【0430】両方のフィールドがDRAMから読み出さ
れるまで半ペル予測は実行できないことが明かである。
フィールド・ストアにおけるオフセットを得るために垂
直動きベクトルをスケーリングするときには大きな注意
を払わねばならない。以下の表、表43、がその効果を
表している。
【0431】
【表43】 フィールドに基づく予測(フレーム画面内) このモードにおいて、各フィールドは独立して扱われ
る。別々のベクトルが二つのフィールドの各々に用いら
れる。各ベクトルには予測が上部基準フィールドから行
われるべきか或いは下部基準フィールドから行われるべ
きかを示す追加の単一ビットフラグ(motion_v
ertical_field_select)が関係づ
けられる。ベクトルの最下部ビットはなお半ペル・フィ
ルタリングが必要であることを示しているけれども、ビ
ット1に何にも特別な意味は無い。フィールド・ベクト
ルはフレーム・ベクトルとは別の単位で測るものであ
り、フィールド・ベクトルの値がnである場合には、値
が2nのフレームベクトルと同一の実際の変位(ガラス
上)を表すことになることに注意すべきである。
【0432】この場合、しかしながら、(4つの境界変
数、即ち二つのベクトルの各々のためのmotion_
vertical_field_select及び二つ
のベクトルの各々のためのビット0、が存在するため)
16の場合について考慮しなければならない。描画すべ
き場合が非常に多く存在するため、以下の図では上部フ
ィールドの予測についてのみ扱う。下部フィールドは同
様の方法によって得ることができる。
【0433】図75に図示された如く、motion_
vertical_field_select=0、ベ
クトル[0]=0の場合、8(4)ラインが上部基準フ
ィールドから読み出されて予測の上部フィールドが形成
される。図76はmotion_vertical_f
ield_select=0、ベクトル[0]=1の場
合を示し、9(5)ラインが上部基準ファイルから読み
出されて、次にそれらは半ぺるフィルタリングされて予
測の上部フィールドを形成する。
【0434】同様に、図77はmotion_vert
ical_field_select=1、ベクトル
[0]=0の場合を示している。8(4)ラインが下部
基準フィールドから読み出されて予測の上部フィールド
が形成される。そして、図78はmotion_ver
tical_field_select=1、ベクトル
[0]=1の場合を示している。
【0435】9(5)ラインが下部基準フィールドから
読み出されて、次にそれらは半ペル・フィルタリングさ
れて予測の上部フィールドが形成される。 デュアル・プライム(フレーム画面における) デュアル・プライムは前節のフィールドに基づく予測の
特別な場合である。デュアル・プライムは本質的に、二
つの特徴を組み合わせたものである。
【0436】・4つの独立した(それらは各々が異なる
ベクトルを有するという意味で独立した)フィールド予
測が形成されるという事実にも拘らず、事実上ただ一つ
の動きベクトルが伝送されるための特別なベクトル符号
化方法。こうして、ベクトル・オーバーヘッドが劇的に
減少する。 ・各フィールドに対して、予測情報が基準フィールドの
各々から読み出される。次にこれが平均化されて最終的
な予測が形成される。このことは、別々の前方及び後方
予測が行われて次に平均化されるB−画面の場合に非常
に類似している。 本発明において、ベクトルの復号は
全てパーサ内で実行される。よって、予測回路がデータ
を受け取るとき、実際に4つの別々のベクトルが存在す
る。
【0437】デュアル・プライム平均化はB−フレーム
平均化回路を再使用することにより実行される(デュア
ル・プライムそれ自身はB−フレームにおいて用いるこ
とはできない)。予測回路に関係する唯一の複雑性は、
後方予測(後方ベクトルトークン等を使用した)は前方
基準フィールド(後方基準フィールドに対する)から実
行されねばならないことを示す信号方式に関係してい
る。P−画面は通常、後方予測を要求する事は全く無い
ため、予測回路は、「後方」予測のためにどちらの基準
ストアを使用するかを決めることができるように、画面
タイプ(P又はB)の記録を保持することのみが必要で
ある。 画面フィールド内の予測 フィールドに基づく予測 これは、フレーム画面内のフィールドに基づく予測に非
常に類似しており、motion_vertical_
field_select及び動きベクトルの最下位ビ
ットに依存して4つの場合が存在する。予測は単にデコ
ードされている画面(全上部フィールド又は全下部フィ
ールドの何れかである)のためであるから、形成された
予測内の上部フィールド及び下部フィールドを議論する
ことは実際に適当でないことに注意すべきである。
【0438】図79はmotion_vertical
_field_select=0、ベクトル[0]=0
の場合を示している。16(8)ラインが上部基準フィ
ールドから読み出されて予測が形成される。図80はm
otion_vertical_field_sele
ct=0、ベクトル[0]=1の場合を示している。
【0439】17(9)ラインが上部基準フィールドか
ら読み出され、半ペル・フィルタリングされて予測を得
る。図81はmotion_vertical_fie
ld_select=1、ベクトル[0]=0の場合を
示している。16(8)ラインが下部基準フィールドか
ら読み出されて予測か形成される。
【0440】図82はmotion_vertical
_field_select=0、ベクトル[0]=1
の場合を示している。17(9)ラインが下部基準フィ
ールドから読み出され、半ペル・フィルタリングされて
予測を得る。 16×8MC このモードにおいて、全体のブロックは、一方が他方の
上にある二つの16x8領域に分割されている。各領域
に対して、別々のフィールド・ベクトルが伝達される。
ここでも再び、16の場合を考慮しなければならない
(4つの2進変数、即ち二つのベクトルの各々に対する
motion_vertical_field_sel
ectandと、二つのベクトルの各々に対するビット
0が存在するため)。また再び、図示すべき場合が多す
ぎるため、以下の図では上位の16x8領域についての
み扱う。下位の領域は同様の方法で得ることができる。
【0441】図83はmotion_vertical
_field_select=0、ベクトル[0]=0
の場合を示している。8(4)ラインが上部基準フィー
ルドから読み出されて上位16x8領域の予測が形成さ
れる。図84はmotion_verttical_f
ield_select=0、ベクトル[0]=1の場
合を示している。
【0442】9(5)ラインが上部基準フィールドから
読み出されて半ペル・フィルタリングされ、上位16x
8領域の予測が形成される。図85はmotion_v
ertical_field_select=1、ベク
トル[0]=0の場合を示している。8(4)ラインが
下部基準フィールドから読み出されて上位16x8の予
測が形成される。
【0443】図86はmotion_vertical
_field_select=1、ベクトル[0]=1
の場合を示している。9(5)ラインが下部基準フィー
ルドから読み出されて半ペル・フィルタリングされ上位
16x8の予測が形成される。 フィールド画面におけるデュアルプライム フィールド画面におけるデュアルプライムは単にフィー
ルド画面におけるフィールド予測の特別な場合である。
2つのフィールドベクトルが使用される(一方が上部基
準フィールドを参照し、他方が下部基準フィールドを参
照し、パーサがこれを確認する)。予測の一方が後方予
測を生成するように思われるけれども、これはP−画面
であるから、予測回路はこれを第2の前方予測として解
釈する。その結果の二つの予測はB−フレーム平均化に
おいて用いられたものと同一の回路を用いて平均化され
る。
【0444】全体的組織 図87は、本発明によるディスプレイパイプラインの全
体的組織を示している。データはDRAMインターフェ
ースから単一の多重化インターフェースに到来する。更
に、DRAMインターフェースはデータを正確なバイト
数の上の次の32バイトの境界まで切り上げられたライ
ンとして供給する。しかしながら、ラインの終端に向け
て位置するペルは意図したディスプレイ領域の外側にな
る可能性がある。
【0445】データに加えて、DRAMインターフェー
スは各チャンネル(Y、CrCbして、そのバイトが現
在のディスプレイラインの最後であるか否かを表す1ビ
ットを供給する。更に、データがどのフィールドから来
たものであるかを表すビットが供給される。本発明のデ
ィスプレイパイプライン内の第1のブロックは3つのチ
ャンネルに分かれる。色(Cr及びCb)データは垂直
アップ・サンプラー210に供給される。輝度(Y)デ
ータは、もし必要であれば、FIFO内で遅延される。
【0446】垂直アップ・サンプラー210は色データ
を2:1の割合ででアップ・サンプリングして輝度デー
タと同じ数の色データのラインがあるようにする役割を
担っている。これを行うために垂直アップ・サンプラー
は色データの各ラインを格納し、このライン及び以降の
ラインの間に間挿された出力ペルを生成する。次のディ
スプレイ・パイプライン内のステージは”水平整列器3
70”と表示されている。これは、水平アップ・サンプ
ラー212の部分として実現されており、その役割は、
データを整列させて各ラインの始めにおいて、3つのチ
ャンネルの各々の第1のペルが水平アップ・サンプラー
212に正確に供給されるようにすることである。各ラ
インの終わりにおいては、一般に、各チャンネルは異な
る時間に”データが無くなる”ことが予想される。”水
平整列器”ブロック370は余分のデータを有するチャ
ンネルからのこの余分のデータを廃棄するとともに他の
チャンネルを機能停止させ、3つのチャンネルの全てが
位置合わせされて次のディスプレイラインの開始か可能
な状態にすることが仕事である。
【0447】本発明において、水平アップ・サンプラー
212はデータを水平にアップ・サンプリングしてデー
タを引き延ばし、テレビジョン画面のガラスを埋める。
シリコンの面積を節約するために、3つのチャンネルで
フィルタは共有されている。フィルタの合計の出力速度
は27Mバイト/s(クロックレート)でなければなら
ないため、これを行うことが可能である。データはCC
IR601の順序で多重化され、それにより生成された
データストリームは単純にに最終的なデータストリーム
に多重化される。
【0448】水平アップ・サンプラー212は単にDR
AMインターフェースにより供給される量のデータを取
り込み、それを選択された率でスケーリング(基準化)
することに注意すべきである。一般的に、ラスターにお
ける実際のライン長に対してそれらが生成するデータは
少なすぎるか又は多すぎるかである。これは出力マルチ
プレックスにおいて処理される。また、”水平整列器”
ブロック370は完全なラインに対して各チャンネルの
幾つのペルが要求されるかについては知る必要が無いこ
とに注意すべきである。アップ・サンプリングフィルタ
に対する入力ペル数と出力ペル数の関係は非常に単純で
は無いから、この数を計算することは容易でない。水平
整列器ブロック370は”要求に応じて”単にデータを
その3つのチャンネルの各々の水平アップ・サンプラー
212に供給する。即ち、 水平アップ・サンプラーは
要求された数のペルを要求された順序でその中に”引き
込む。ディスプレイラインの終わりにおいて、チャンネ
ルの一つが最初にデータが無くなり、このことは他のチ
ャンネル(もし有れば)の残りのデータは廃棄されねば
ならないことを示している。
【0449】VTG333は単純にラスターの間カウン
トし、出力マルチプレックス371に供給される一連の
タイミング信号を生成する。これらの信号の幾つかは出
力マルチプレックス371に最終ラスターをどの様にし
て生成するかを報じる内部信号である。他の信号は”外
部”信号、例えば同期及びブランキング信号であり、こ
れらはまた出力マルチプレックス371回路に供給され
てデータと同一のクロック数だけ遅延される。
【0450】出力マルチプレックス371ブロックは幾
つかの役割を有する。これらの内最も興味深いものは、
おそらくデータから二線”インターフェース性”を除去
する作業である。水平アップ・サンプラー212から供
給されたデータは未だ関連するバリッド(妥当)信号を
有している(そして出力マルチプレックスは受け入れ信
号を生成する)。マルチプレックスの出力におけるデー
タは2線式インターフェースを有しておらず、クロック
・サイクル毎に1バイトずつ単純にクロック出力され
る。
【0451】出力マルチプレックス371はまた画面の
回りに境界を描く役割を担っている。上端および左の境
界はVTG333による制御に従って描かれる。VTG
333は単純に出力マルチプレックス371に境界色の
ペルを必要な数だけ生成するように命じる。画面の右及
び下端においては、出力マルチプレックス371はそれ
自身で境界を描く、即ち、マルチプレックス371は画
面データが無くなるためそれを行うべきことを知ってい
るのである。
【0452】ディスプレイパイプライン内の最後のブロ
ックは8ビット−16ビット出力モード変換器372で
ある。これは極く単純にフリップフロップ及びマルチプ
レクサから成る。これは、出力PADそれ自身において
実現することが意図されている。これを行うことによ
り、16ビットバスを引く代わりに単純に8ビットバス
を引くことが可能になる。各々のビットは二つの出力パ
ッドに進む。
【0453】水平アップ・サンプラー 序文 本発明に依れば、水平アップ・サンプラー212はデコ
ードされた画面をディスプレイラスターに適合するよう
に拡大するためにアップ・サンプリング若しくは補間す
る機能を行う。
【0454】本発明のアップ・サンプラー212は以下
の4つのモードで動作することが可能である。 1) 1:1−出力は入力と同一 2) 2:1 3) 3:2 4) 4:3 画面シミュレーションを幾つか行うとともに、考えられ
る実現費用を考慮した後に、補間を行うために三タップ
のフィルタを使用することが決定された。
【0455】このフィルタはフィルタは、フィルタ係数
の異なる組を用いて各連続した出力が生成されるという
意味で多層のフィルタである。位相の数は常にアップ・
サンプリング比の分子に等しい。このようにして、4:
3アップ・サンプラーは4つの位相を有し、各4番目の
出力サンプルが同一のフィルタ係数を用いて生成され
る。
【0456】アップ・サンプラー212はそれが入力デ
ータとして受け入れるより多くの出力データを生成する
ため、新しい入力サンプルが各クロック周期毎に受け入
れられないことは明かである。事実、フィルタが新しい
入力を受け入れない位相の数はアップ・サンプリング比
の分子と分母の差異に等しい。比の各々(1:1を除
く)においてこれは1である。従って、位相の回りの各
完全なサイクルにおいて、その位相の内の一つにおいて
新しい入力データが受け入れられない。この場合、デー
タは前の位相のデータと同一である。フィルタ係数は、
しかしながら、前の位相の係数とは異なっている。 4:3アップ・サンプリング 4:3アップ・サンプリングにおいて、フィルタ係数は
表44に示されており、図88はフィルタの動作を示し
ている。出力ペルは本質的には入力ペルの重み付き平均
として形成される。
【0457】
【表44】 新しい入力データは最終位相(位相3)が計算される前
に受け入れられることに注意すべきである。 3:2アップ・サンプリング 表45は3:2アップ・サンプリングを示しており、図
89はフィルタ動作を図示している。
【0458】
【表45】 2:1 アップ・サンプリング 同様に、表46は2:1アップ・サンプリングを示して
おり、図90はそのフィルタリングを示している。
【0459】
【表46】 位相1はフィルタ係数、128、128、0を有するも
のとしても同様に記述することができることに注意すべ
きである。これは、フィルタ係数が4:3アップ・サン
プラーの位相2のためのフィルタ係数と同一になるとい
う利点がある。これは、しかしながら、”最終の位相を
計算している間に新しい入力が受け入れられないとい
う”規則が成り立たないという不利益がある。 境界の効果 画面の端において、画面領域の外側にあるペルから形成
された出力ぺるを生成する必要が有る。この問題を回避
するために、エッジペルをピクセルごとに繰り返し、フ
ィルタが画面のエッジであることを認識せずに動作可能
であることが必要である。
【0460】三タップフィルタの場合、本発明の場合の
如く、画像の左のちょうど1ペルと右の1ペルを繰り返
す必要が有る。(5タップのフィルタの場合左の2ペル
と右の2ペルを必要とするはずである。)これは図91
に示されている。概念的には、従って、これを実動化し
た装置は二つの箱から形成されていると見なすことがで
きる。
【0461】DRAMインターフェースは常に16ぺル
幅の倍数のデータを供給するため、画面が16ペル幅の
倍数でない場合にはこの構成は真に正しく動作しないこ
とに注意すべきである。しかしながらこの問題が知られ
ているけれども、我々はそれについては何もするつもり
は無い。何れにしても、殆どの画面は16ペル幅の倍数
であり、また何れにしても境界効果により影響されるの
はラインの最も後のペルのみであるからである。
【0462】このことは図92に示されている。 出力ペルの数 本発明において、アップ・サンプラーは、与えられた数
の入力ペルに対して定義された数の出力ペルを生成す
る。このことは、パーサ状態マシンにとって、画面がラ
スターに適合するためにアップ・サンプラーの出力にお
いて幾つのペルが生成されるかを、よって、幾つのペル
を切り落とす(または境界ペルを付加する)必要が有る
かを決定することを可能にするものであり、特に重要で
ある。
【0463】水平アップ・サンプラーからの最初の有効
な出力はアップ・サンプラーに入力される3番目のペル
に応じて行われなければならない(これは三タップのフ
ィルタであるから)。1ペルが繰り返されるため、これ
は第2の実際のペルがアップ・サンプラーに入力された
時である。最後の有効な出力は、最後の(即ち、繰り返
された)入力されたペルに応じて可能な出力サンプルの
全てが生成されたときに起きる必要がある。多相フィル
タの最後の位相が最後から2番目の位相と同一の入力デ
ータを使用して計算されるため、このアップ・サンプラ
ーに入る最後のペルが繰り返される結果、一つまたは2
つの出力ペルが生成される可能性がある。
【0464】もしこれが行われると、アップ・サンプラ
ーは”q”出力サンプルを生成する。 式1. q=N(pDIVM)+(pREMM) ただしN:Mアップ・サンプラーの場合に”p”入力サ
ンプルに応じて。
【0465】例えば、4:3アップ・サンプラーの場合
に、表47を以下の様に書くことができる。
【0466】
【表47】 位置信号 本発明においては、二つの信号がビデオデータとともに
転送される。それらはデータが出力ラスター内の適切な
位置に描かれることを出力マルチプレックスが確認する
ことを可能化する。それらは: ・last_in_line ・field_id last_in_lineは1ペルの間アクティブであ
り、そのペルがスキャンライン内の最後のペルであるこ
とを報知する。
【0467】field_idはデータがどのフィール
ドに属するかを示す。”0”は空間的に上のフィールド
を表し、”1”は空間的に下のフィールドを表す。この
対応関係は境界ライン等の前に成り立ち、デコードされ
た画像に適用されることに注意すべきである。fiel
d_idペルに対して状態が変化するのが早すぎ、即
ち、フィールドの最後から2番目と最後のペルの間で変
化する。これにより、フィールドの最後のペルが次のフ
ィールドの最初のペルを待たずい判別可能になる。しか
しながら、復号がなにかの理由で停止した場合には”次
のフィールド”が存在しないかも知れない。field
_id信号は図93に示されている。
【0468】もし正しいフィールドインジケータが必要
なときには、それはfield_idを1ペルの間遅延
させることによって得ることができる。これらの信号は
ディスプレイパイプライン全体においてデータに平行し
てその動作を行うものであり、多数のフリップフロップ
を節約することになるため、3つの信号(フィールド信
号の最後のペルを許すことになる)ではなく、二つの信
号を用いることが重要である。 多重化データ 位置信号が多重化データに適用される場合には、注意が
必要である。
【0469】データCbYrYの順に多重化されてい
る。本発明において、3つのサンプル(CbY)同
じ時間に存在し、従って、分割不可能にみえる筈であ
る。残りのバイト()は先行する(CbY)ペル
と以降のCbYCr)ペルの間に位置する。その結果、
最後のライン内のバイトはC内の何れかである。
(3:2のアップ・サンプリングはYペルを奇数個生成
するかもしれないことに注意すべきである。)もしライ
ン内の最後のバイトがCであれば、ラインの最初のバ
イトが常にCであるため、マルチプレックス信号に不
連続性が生じることになる: (C) () (C)\(C
) ()(C) 水平位置合わせ アップ・サンプラーの入力において、3つの異なるチャ
ンネルが整列する保証はない。
【0470】整列を行うために、本発明においては、水
平アップ・サンプラーと水平整列ブロックの間で”プロ
トコル”が一致している必要がある。本発明によれば、
プロトコルは以下の様に実行される。 ・水平ブロックは要求に従って水平アップ・サンプラー
にペルを供給する。一つのチャンネルに対してデータが
無くなったときには、水平ブロックはこのことをライン
の最後のペルをマークする信号を使用してフィルタに報
知する。これはペルの繰り返しの場合にのみ起こる。
【0471】・水平アップ・サンプラーは一つのチャン
ネルから一度最後のペルが供給されると、現ラインにお
いてはそのチャンネルから他のペルを要求しないことを
保証している。しかしながらフィルタは動作し続け、デ
ータが無くなったことをフィルタが知るチャンネルから
ペルを要求する直前まで他のチャンネルから必要なペル
を取り込む。フィルタは出力において生成し得る最後の
ペルをライン内の最後としてマークする。この時点で、
それ自身をリセットしてデータの次のラインのために準
備する。
【0472】・水平アップ・サンプラーが、データが既
に尽きたチャンネルに対してフィルタがデータを受け入
れることを見たとき、それはフィルタが次のラインの最
初のペルを求めていることを知る。この時点で、他の二
つのチャンネルの残りのペルは全て廃棄される。これら
のチャンネルの各々に供給される次のペルがラインの最
初のペルとなる。
【0473】二つの別々のブロック(水平整列ブロック
及び水平アップ・サンプラーフィルタ)を考えることが
都合が良いけれども、動作の説明上は、この二つは一体
に実現されることが好ましい。 アップ・サンプリング比 アップ・サンプリング比は2ビットの2進数としてフィ
ルタに供給される。フィルタが賢い方法で動作するため
には、アップ・サンプリング比はフィールド時間毎に一
回アップ・サンプラー自身によってサンプルされること
が必要である。次に、この比を供給する回路は次のフィ
ールドに備えるためにその時のフィールドのどの時点に
おいてもサンプリング比を自由に更新することが可能で
ある。
【0474】この比は各フィールドの最初のぺルが実際
に受け入れられるとともに(前のフィールドの最後のペ
ルの後ではなく)サンプリンッグされねばならない。こ
の方法によって、リット後(又は復号における何らかの
休止の後)の第1のフィールドが正確な比でアップ・サ
ンプリングされる。 ビデオタイミング生成器 序文 この節は本発明によるビデオタイミング発生回路(VT
G333)について記述している。VTGは、種々のア
ナログビデオ同期信号を生成し、ディスプレイシステム
の現在のラスター位置についての知識を保持することが
その第1の役割である。これにより、VTGが、アクテ
ィブビデオ、境界及びブランキングの信号源を出力用に
選択する出力マルチプレクサのための制御信号を提供す
ることが可能になる。アナログ及びディジタル規格の両
方がサポートされており、また二つのフレームサイズ
(PAL及びNTSC)及び付随する同期の作用がセッ
ト・アップの際に選択可能である。境界又は切り落とし
幅はVTGにハードウエア入力をロードするトークンの
中で指定される。 水平タイミング 水平タイミングパラメータが図94に図示されている。
これらは固定のもの(PAL又はNTSCのための)と
可変のもの(即ち、指定することが可能ないかなる境界
又は切り落としに関係するパラメータ)に分かれる。
【0475】表示されているビデオがインターレースさ
れれている性質によって半ラインを基にした計数が必要
とされ、種々のタイミングがラインの各半分に対して別
々に示される。一つのラインは最初のブランキング期間
と、SAVトークンの挿入と、アクティブ期間と、EA
Vトークンの挿入と、後端のブランキング期間によって
構成される。ブランキングラインの間、アクティブ領域
は境界及びデータの代わりに挿入されたブランク値を有
することになる。
【0476】ライン同期パルスは各ライン(HSYN
C)の始めに現れる。ブランキングラインのあるものに
おいては、二つの同期パルスが現れ、一つが最初の半ラ
インの始めに、他方がその後に現れる。これらの幅はど
ちらの垂直領域がアクティブであるか、即ちイコライゼ
ーション(等化)又はセレーション(鋸波化)(フィー
ルド同期)に依存している。
【0477】最初の水平ブランキング期間において、ペ
ルは切り落とし値(もし切り落としビットがセットされ
ているとき)に応じて廃棄され、−120サイクルの固
定期間が先行するラインからRHS切り落としペルを廃
棄するために許されている。次に、現ラインのLHSペ
ルが廃棄され、アクティブ領域の開始までペルが停止状
態とされる。ペルが廃棄されるデータストリームにおい
てギャップが存在しないことが重要であり、そうでなけ
れば歪が生じる。
【0478】しかしながら、もし切り落としビットがセ
ットされていなければ、境界Lの期間の間境界値を挿入
し、画面幅のデータを挿入し、再び境界をアクティブ領
域の終端まで挿入することで境界が構成される。境界R
値を計算する必要がないことに注意すべきである。合計
の水平境界若しくは切り落とし幅はペル内で指定されて
いる。サンプリングの整合性を維持するためにはLHS
境界/切り落とし値は2ペルの倍数でなければならな
い。その結果として、クロックに関しては4の倍数でな
ければならない。これはペルにおける元の合計境界値か
ら再下位2ビットをマスクして除くことによって達成さ
れる。例えば、指定された境界が91ペルであるとする
と、左の境界は88サイクルの長さになり、画面幅は7
20−91)*2サイクルに成る。
【0479】出力(max)に到着するペルのストリー
ムは加算され、32ペルのブロックを与える。この点を
考慮すると、サポートされるべきスケーリング計数と併
せて、一ラインについて受け取るべきペルの最大数は8
32となる。このことは最大切り落とし値は112ペル
であり、LHS及びRHSにおいて112サイクルの切
り落としとなることを意味している。 垂直タイミング−PAL 本発明によるPALに対する垂直タイミングパラメータ
が図95に示されている。二つのフィールドは、やや異
なるタイミングを有するため別々に示されている。アナ
ログパラメータは斜線の領域に示されており、各フィー
ルドに対して同一であり、ディジタルパラメータは波形
によって示されている。簡単の為に、ゼロ−境界の場合
が示されている。もしゼロ以外の垂直境界が指定されて
いれば、境界が境界Tの期間挿入され、画面の高さのデ
ータが挿入され、再び境界がアクティブ領域の終わり
(固定)まで挿入される。境界T及び画面高さは境界L
及び画面幅(水平タイミングおける)と類似した方法で
個々に計算される。また再び、上端の境界が2の倍数で
なければならないため、初期の境界(境界T)は、今回
は半ラインに関して、4の倍数でなければならない。
【0480】MPEGはPALの場合は576ラインの
ビデオを符号化する一方、アナログ規格は525のみを
規定してることに注意すべきである。この差異はフィー
ルド毎に576半ラインを出力するためのデータを選択
する一方、必要な575ラインについてのみアナログブ
ランキング信号を送出することによって調整される。 垂直タイミング−NTSC 次に、本発明によるNTSC垂直タイミングが図96に
図示されている。これは少し複雑ではあるけれども、P
ALタイミングと原理は同様である。MPEGはNTS
Cについては480ラインのビデオを符号化するけれど
も、アナログ規格は483を指定している。このことは
フレーム毎に境界の3ラインを挿入してギャップを埋め
なければならない(フィールド毎に3つの半ライン)こ
とを意味している。加えて、判断による垂直ブランキン
グインジケータ、V、はアクティブなビデオラインの前
にパディングとして追加の境界ラインが挿入されねばな
らないという方法で指定される。前の節で述べたよう
に、既に示されたラインに加えて、ゼロでない垂直境界
が挿入される。更に、垂直切り落としはどちらの規格に
おいても許されないことに注意すべきである。
【0481】現在のところ、ディジタルブランク信号V
に関しては、種々の情報源から矛盾する情報が与えられ
ているためいくらか不確実な点が有る。V及びV’によ
り示され、関係する境界選択信号はそれぞれSB及びS
B’である二つの主タイミングの可能性がある。 VTG構造 本発明のビデオタイミング発生器は水平及び垂直タイミ
ングの領域に対する別々のマシンから構成される。垂直
マシンは水平マシンに対して制御信号を提供し、一方後
者は、垂直カウンタに対して半ライン・インクリメント
信号を与える。 VTGへの入力は: ・クロック及びリセット ・NTSCではなくPAL ・切り落としインジケータを有する水平境界値 ・垂直境界値 出力は: ・水平、垂直及び複合の同期及びブランキング信号s ・境界、ブランキング、データの選択信号 ・切り落としのための廃棄データビット ・SAV及びEAV挿入 ・SAV及びEAVの構成のためのF及びV値 ・SAV/EAV挿入のための2−ビットYUV位置カ
ウンタ ・スタート・アップにおける画面の開始を示すための最
初のラインビット 同期信号を含めて出力はすべてマルチプレクサブロック
に供給され、該同期信号はデータと同期を保つことが可
能である。 水平マシン 水平マシンは本質的には図94に示された如く種々のタ
イミング点の到来を検出するハードウエアを有するカウ
ンタである。カウントはゼロから半ライン長(これはP
AL及びNTSCに対して異なる)に進み、各半ライン
毎に繰り返される。固定されたタイミング点の各々のた
めにハード結線された比較器が存在し、これらは規格に
従って起動される。加えて、境界値(これはフィールド
毎に一度ポーリンされる)のためのレジスタ、画面幅を
決定するためのブランキング減算器、境界値からゼロま
でカウントダウンする補助カウンタが存在する。この処
理は主たる半ラインの生成と平行して行われる。データ
パスは10ビット幅であり、PAL及びNTSCの両方
を実現するためには15のハード結線された比較器が必
要とされる。この実施例の構造は図97において、およ
そのサイズとともに示されている。データパスは360
u×330uであると見積られる。
【0482】データパスに加えて、本発明のVTG内の
殆どの制御ロジックが水平マシンに関係する。これはお
そらく100−200ゲートに達する。 水平マシンの入力は: ・クロック及びリセット ・水平境界値及び切り落としビット ・ライン、等化、又はフィールド同期インジケータ ・NTSCではなくPAL ・垂直ブランク ・垂直境界挿入 水平マシンからの出力は: ・水平複合ブランク ・データ挿入 ・境界挿入 ・ブランク値挿入 ・入力廃棄 ・YUVカウントを有するSAV又はEAV挿入 ・水平同期 ・複合同期 ・ラインのスタート ・半ラインインクリメント 垂直マシン 垂直データパスは水平データパスと本質的に同一の構造
であるが、22のハードウエア比較器(PALに対して
8、NTSCに対して14)を有する。主カウンタが各
半ライン毎にインクリメントし、各半ラインにおいて半
ラインを、また各フィールドにおいて半ラインを交互に
カウントする。これもまた10ビット幅である。
【0483】更に、テストのためには半ラインパルス入
力を他のより頻繁なクロックとた多重化すること好まし
く、これによって垂直マシンを水平マシンとは独立し
て。走らせることが可能である。推測したサイズ360
u×420uである。 垂直マシへの入力は: ・クロック及びリセット ・NTSCではなくPAL ・垂直境界値 ・半ラインインクリメント 垂直マシンからの出力は: ・等化、フィールドまたはライン同期選択 ・垂直ブランク(アナログ) ・垂直同期 ・SAV/EAV構成のためのF、V及びV’ビット ・垂直境界挿入 ・データ挿入 ・ブランク値挿入 ・フレームの開始 ハード結線比較器の設計 本発明において、ハード結線された比較器の設計は、プ
リチャージされるか又はプル・アップを有し、メモリ行
デコーダと同様の形で組織された直列のn型トランジス
タ列に基づいでいる。一般的には、これらの比較器は評
価が与えられた面積において約8uの高さである。 出力マルチプレックス 本発明の出力マルチプレックスは表示のためにデータを
互いに結合する役割を有している。これは、ディスプレ
イパイプラインの先の部分から到達するデータをVTG
から得られたタイミング情報と結合する。
【0484】出力マルチプレックスの他の入力タスクは
2線式インターフェースを除くことである。出力マルチ
プレックスまでの全てのパイプラインステージは2線式
インターフェースを有しており、実際に出力マルチプレ
ックスの入力に到達するデータは常に到着するのが早す
ぎ、acceptをローで受け取るため停止状態にな
る。しかしながら装置の出力においては2線式インター
フェースは無い。
【0485】上述の2線式インターフェースの除去を達
成するために、DRAMインターフェースが水平アップ
・サンプラーの出力に到着するデータを停止させること
がないようにデータの供給の動態を記憶しておくことが
必要である。基本的には、出力マルチプレックスがデー
タのフィールドを出力するか否かの決定をフィールド単
位で行う。出力マルチプレックスは第1のアクティブ・
フィールドのラインの開始に近いある時点で決定を行
う。もしその入力において待ち状態の有効なデータが有
れば(即ち、in_acceptがローであるとき)、
次にそれはデータの出力を開始する。一方、もし、有効
なデータが無ければ(例えば、第1の画面がデコードさ
れる前であれば)画面全体に境界色を描く。
【0486】実際には、出力マルチプレックスはデータ
が正確なフィールドに入力されることを確認しなければ
ならないためこの操作はやや複雑である。即ち、表示が
開始する以前に正確なフィールドに属する有効な待ち状
態のデータがなければならない。もしある時点でデータ
が有効で無くなれば、或る時間において出力マルチプレ
ックスがディスプレイに描画することができる有効なデ
ータを有すると予想し、(これは実際には起きない)、
その後出力マルチプレックスは再び境界色の出力を行
い、この出力はフィールドの残りについで続けられる。 境界の生成 図98は本発明による画面ディスプレイの左右の境界色
の生成を示している。
【0487】図示された如く、VTGは出力マルチプレ
ックス内の境界色選択する信号をアサートすることによ
って画面の左に境界領域を生成する。しかしながら画面
の右側においては、境界色は出力マルチプレックス自身
によって生成される。出力マルチプレックスはこれをデ
ータが”無くなった”ことを認識し、境界色の画面の幅
の残りを示すことで実行する。
【0488】データが”無くなった”ことは二つの可能
な解釈が存在することを理解しなければならない。その
一つは水平アップ・サンプラーからの出力データが有効
でないことである。しかしながら、これはここで意味さ
れていることではない。この場合には、last_in
_line信号によってラインの最後であるとしてマー
クされるペルが出力ストリームに含められた後のデータ
が無くなったことである。図99は画面の切り落としが
起きた場合に等価な動作を示している。
【0489】図示された如く、VTGは出力マルチプレ
ックスに入力ペルを廃棄するように指令する信号をアサ
ートすることにより出力マルチプレックスに画面の左の
ペルを切り落とすことを通知する。これが一度発生する
と、VTGは出力マルチプレックスが残りのペルの出力
を開始すべきであることを通知する。アクティブ・ライ
ンの終わり(即ち、720ペル後)において、VTGは
信号のアサートを止め、出力マルチプレックスはその入
力におけるデータ内の残りのペルを全て廃棄する。一般
に、VTGが切り落としが行われるべきであることを示
す時間とアクティブ・ラインの開始の時間との間には間
隙(時間の)が存在することに注意すベきである。これ
はVTGの設計を顕著に簡略化する。出力マルチプレッ
クスは切り落とし信号がアサートされたときにペルを廃
棄し、アクティブ・ライン期間の開始まで待機する。 出力マルチプレックス 出力マルチプレックスは種々のデータ源の多重化を制御
してCCIR601の8ビット多重化データストリーム
を形成する。
【0490】タイミング(即ち、何がいつ多重化される
か)は主としてVTGによって制御される。 出力マル
チプレックスはより高位の問題を処理する。例えば、復
号の開始時に、表示すべき画面が無い場合には、出力マ
ルチプレックスは画面全体に境界色を描画する。その結
果、最初にデコードされた画面が水平アップ・サンプラ
の出力に到着する。一般的に、これは都合よくフィール
ドの開始においては起きない。出力マルチプレックスは
フィールド時間毎に一度”表示可能な有効なデータが存
在するか”問い合わせる。もし存在していなければ、次
のフィールドが発生するまで待機する(その間の時間に
発生した有効なデータ次のフィールドの開始まで待たね
ばならない。) 出力マルチプレックスはまた、SDRAMインターフェ
ースから到着するデータの正確なフィールドがPAL又
はNTSCラスターの正確なフィールドに描画されるこ
とを確認する。
【0491】これに加えて、データを扱うために、出力
マルチプレックスはピンに出力するための正確な同期及
びブランキング信号を選択する。これにより複合エンコ
ーダ、DAC、等の幅広い装置への容易な接続が可能に
なる。出力マルチプレックスのためのレジスタが表48
に示されている。出力マルチプレックスの制御のための
ビットは表49に図示されている。
【0492】出力マルチプレックスに連結したMPIレ
ジスタの4つのバイトが有る。
【0493】
【表48】
【0494】
【表49】 a.このビットの設定に拘らず、ブランキングの間色デ
ータ(Cb及びCrの両方)は0x80(10進表示で
128)になる。
【0495】ビデオデコーダの仕様及びその特徴 これまでに述べた詳細な説明に加えて、発明を実施する
のに適当なビデオデコーダの好ましい実施例に関して以
下の開示内容が提供されている。 ・MPEG−2MP@ML ・2/3及び1/1プルダウン ・単一の16MビットSDRAM ・ビデオスケーリング ・高解像度MPEG−1 ・SRAMを含むパワー=2.5W ・αビジョン互換 ・自已構成 ・自動エラー封じ込め ・小ボード面積 ・チャンネル変更サポート ・QuietPadTM出力 ・タイム・スタンプ管理 ・オン・チップビデオタイミング発生器 本発明は高集積の、使用が容易がMPEG−2ビデオデ
コーダを含んでいる。それはMPEG−2のメイン・プ
ロファイルの要求の全てをメインレベルで完全にサポー
トしている。
【0496】本発明のシステムはまた自己構成型(単一
のピンでPAL及びNTSC動作の間の選択が行われ
る)であり、多くのアプリケーションにおいて外部のソ
フトウエアのサポート無しでスタートアップ及びビデオ
の復号の維持が可能である。エラー封じ込め及び復旧は
完全に自動的である。より要求の多いアプリケーシンの
場合は外部のマイクロプロセッサ上で走るソフトウエア
によって制御されるアドバンスト機能を用いることがで
きる。
【0497】本発明はそれ自身のマイクロコードをオン
・チップROMに格納しており、これにより復号が開始
可能になる前に外部ROMやダウンロードしたマイクロ
コードを使用する必要を無くしている。図100参照。
以下に述べた本発明のシステムのより詳細な説明は、系
統化、明解性及び説明上の便宜のために以下に記述され
る表題に従って記述されている。 信号..... レジスタマップ..... 電源..... ロジック・レベル..... クロック信号..... リセット信号..... コード化データ・インターフェース信号..... マイクロプロセッサ・インターフェースを介したデータ
の供給..... 入力モードの切り換え..... コード化データ受け入れの速度..... コード化データ・インターフェース・タイミング
.... CDクロック..... ビデオ出力信号..... ビデオ出力制御レジスタ..... 境界、スケーリングおよび切り落とし..... ビデオ出力制御レジスタ..... ビデオ信号タイミング..... MPI信号..... MPIの電気的仕様...... 割り込み..... ページ・レジスタ..... SDRAMインターフェース信号..... SDRAMの構成..... 非JTAGシステムでのJTAGピンの接続..... ザポートされる命令..... 特性..... IEEE1149.1準拠のレベル..... スタートコード検出器レジスタ..... スタートコードの検出..... discard_all機能..... flag_pictureend機能..... start_code_search機能..... SCDの例−チャンネル変更 パーサレジスタ..... エラーコード..... ユーザーデータの扱い システム編成..... 信号及びレジスタ..... 電気的仕様..... コード化データ・インターフェース..... ビデオ出力インターフェース..... マイクロプロセッサ・インターフェース..... 同期DRAMインターフェース..... JTAGインターフェース..... スタートコード検出器..... ビデオ・パーサ..... タイムスタンプ管理..... アドレス発生器の構成..... 機械的情報 この節は本発明によって使用されている全ての信号(ピ
ン)のリストを含んでおり、またマイクロプロセッサ・
インターフェースを介して使用可能な全てのレジスタの
リストを含んでいる。(表50及び51参照)
【0498】
【表50】
【0499】
【表51】 レジスタ・マップ 本発明のレジスタ・マップは領域に分割されている。始
めの32の位置はシステムの通常動作のために要求され
る。アドレスの5ビットのみが存在する。
【0500】次の32の位置のセットは非省略時SDR
AMメモリー・マップを準備するために要求されるアド
レス生成回路における位置である。レジスタ・マップの
残りはテスト及び診断のためにのみ用いられるレジスタ
である。これらはアドレス発生器レジスタの代わりにペ
ージ・インされ得る。表52は本発明のレジスタ・マッ
プを示している。
【0501】
【表52】 *a 通常の動作においては、page_select
は値ゼロを保持しなければならない。この場合には、位
置0x20...0x3fがアドレス生成使用者レジス
タを含むことになる。
【0502】表53はページ選択レジスタを示してい
る。
【0503】
【表53】 表54は割り込みサービス領域を示している。
【0504】
【表54】 表55は本発明の入力回路レジスタを示している。
【0505】
【表55】 表56は本発明のスタートコード検出器を示している
【0506】
【表56】 本発明によれば、表57はタイムスタンプ挿入レジスタ
を示している。
【0507】
【表57】 同様に、表58はビデオパーサレジスタを示している。
【0508】
【表58】 出力制御レジスタは表59に示されている。
【0509】
【表59】 テストレジスタ 完全なレジスタ・マップ表60から表69に示されてい
る。
【0510】
【表60】
【0511】
【表61】
【0512】
【表62】
【0513】
【表63】
【0514】
【表64】
【0515】
【表65】
【0516】
【表66】
【0517】
【表67】
【0518】
【表68】
【0519】
【表69】 電源供給 本発明は本質的には単一の5V電源からの電力で動作す
る。しかしながら同期DRAMとの単純な接続を行うた
めに、3.3V電源もまた提供されている。
【0520】
【表70】 a D[15:0]、DA[11:0]、DCKE、D
CLKOUT、CDLK b ここで一覧表示された値以上の電圧を加えると装置
の永久的な損傷が起きる可能性がある。これは電圧の定
格を示すのみであり、これらの条件、またはこの明細書
の動作についての節に示された以上の他の条件での装置
の機能的動作は含まれない。絶対最大定格条件下に長時
間おくことは信頼性に影響が有り得る。
【0521】
【表71】 ロジック・レベル 本発明によれば3つの異なる信号インターフェースタイ
プが実現されている。標準の(5V)TTLレベルがマ
イクロプロセッッサ・インターフェースにより使用され
る。加えて、5V CMOSレベルがコード化データイ
ンターフェース及びビデオ出力インターフェースによっ
て使用される。3V LVTTLレベルがSDRAMイ
ンターフェースにより使用される。 TTL (5V)レベル
【0522】
【表72】 a 交流入力パラメータは1.4V測定レベルで測定さ
れた。 b I ≦ Ioocmin o c これはインターフェースの定常状態駆動能力であ
り、遷移状態の電流はより大である。 d 信号が送出された(アサートされた)とき開放コレ
クタIRQ出力は100Ωまたはそれ以下のインピーダ
ンスでプルダウンする。 CMOS (5V)レベル CMOS入力に対してはVIHminはVDDのおよそ
70%であり、VILmaxはVDDのおよそ30%で
ある。表73に示された値はVIH及びVILのそれら
の動作の極限に対する値である。
【0523】
【表73】 a ioh ≦ 1mA b IOH ≦ 4mA c IOL ≦ 1mA d IOL ≦bSmA LVTTL(3.3V)レベル
【0524】
【表74】 a 交流入力パラメータはV測定レベルで測定された。 b これはインターフェースの定常状態駆動能力であ
り、遷移状態の電流はずっと大である。 クロック信号 本発明は殆ど全てのオン・チップ機能のために一つのク
ロック(SYSCLOCK)を使用している。このクロ
ックはビデオ出力回路によって使用されるため、VTG
(ビデオ タイミング発生器)が正確な速度で画面を生
成するために27MHzのクロックが使用されることが
前提とされている。
【0525】本発明にコード化データを調和させるため
に第2のクロック(CDCLOCK)を用いても良い。
このクロックはSYSCLOCKに同期され、これによ
って27MHzクロックで動作しない回路(おそらく、
ディスク又はネットワーク・インターフェース回路から
導出されるクロック)からデータをこの装置に転送する
ことが可能になる。
【0526】内部的には、本発明は位相ロックド・ルー
プ(PLL)を用いてSDRAMインターフェースを駆
動するための高速クロックを導出している。このクロッ
クはSDRAMにDCLKOUTとして出力される。均
等なマーク・スペース比を導出するためにオン・チップ
PLLが使用されている。SYSCLOCKのための要
件が図101に示されている。
【0527】
【表75】 a ビデオ規格のライン周波数に適合するためにクロッ
クの許容度及び安定性が充分でなければならないことに
注意すべきである。 リセット信号 本発明は3つのリセット信号を使用する。 、ここで記述された種々の表に示されたリセット状態を
とる。正確なリセットを ックサイクルにわたって出力(ロー)されねばならな
い。
【0528】 響を与えることなくリセットするために用いられる。 る。序文 本発明によれば、コード化データインターフェースは、
コード化ビデオデータをシステムに供給するために使用
可能な専用のピンの組を提供する。或いは、コード化デ
ータはマイクロプロセッサ・インターフェースを介して
書き込まれる。この節は、これらの方法の両方について
記述している。
【0529】もし専用のピンが使用されていれば、コー
ド化データは単純なバイトのストリーム或いはは”トー
クン”として供給される。トークンの場合は他の種類の
情報をコード化データに加えて供給することが可能であ
る。例えば、この機構を用いてタイムスタンプ情報を転
送することができる。もしコード化データのためにマイ
クロブロセッサ・インターフェースが使用されていれ
ば、トークンが常に使用される。更に、これは非常に単
純である。一度”トークン・ヘッド”が書き込まれて以
降のデータがコード化データ(ただ二つのレジスタが書
き込まれることが必要とされる)であることが宣言され
ると、その後、コード化データを単純にレジスタに書き
込むことができる。 コード化データ・インターフェース信号 表76に本発明において用いられるコード化データ・イ
ンターフェース信号が定義されている。
【0530】
【表76】 CDVALID及びCDACCEPTは本発明によれば
データの転送を制御するために用いられる。この種の通
信制御手順は”2線式”インターフェースと称される。
データ転送が行われるためには両方の信号はCDCLO
CKの立ち上がりエッジでハイでなければならない。図
102はデータ(CD[7:0]、CDEXTN及びB
MODE)とCDVALID及びCDACCEPTとの
間の関係を示している。もしデータをコード化データ・
インターフェースピンを介して供給すべき場合には、マ
イクロプロセッサ・インターフェースレジスタ”ena
ble_mpi_input”はゼロ(これがそのリセ
ット状態である)でなければならないことに注意すべき
である。 バイト・モード 本発明においては、もしBMODEがCDCLOCKの
立ち上がりエッジでハイであるとサンプリングされ(更
にCDVALLID及びCDACCEPTが共にハイ)
ていれば、データは単純なコード化データであるとして
扱われる。実際には、データは直ちにDATAに組み入
れられる。この場合には、CDEXTNは無視される。 トークン・モード もしBMODEがCDCLOCKの立ち上がりエッジで
ローであるとサンプリングされれば(またCDVALI
D及びCDACCEPT共にハイであれば)、データは
トークンとして扱われる。トークンは本発明によって、
システム全体においてデータ及び制御信号の流れを制御
するために広く使用される。理論的には、コード化デー
タ入力においてどのようなトークンを供給することも可
能である。 本発明によれば、全てのトークンは、一連
のバイト(CD[7:0])から成り、その各々には拡
張ビット(CDEXTN)が組み合わされている。トー
クンの最初のバイトはトークンによって運ばれる情報の
種類を示している。トークンの最後のバイトはローであ
る拡張ビットによって示される。
【0531】例えば、コード化データはデータトークン
を用いて供給される。これは図103に示されている。
図示された如く、最初のバイトは0x04(それがデー
タトークンであることを示す)である。この情報の後に
はCDEXTNがローであるとサンプルされるまで続く
コード化データのバイトが続く。次にサンプリングされ
るデータは新しいトークンの最初のバイトであると解釈
される。(BMODEが未だローであると仮定する)。
【0532】特に有用な他のトークンはFLUSHトー
クンである。このトークンは”リセット”と同様に作用
し、システムを次のビデオストリームに対して準備させ
るために、一つのビデオストリームの終端の後に用いる
ことができる。FLUSHトークンは図104に示され
ている。 マイクロプロセッサ・インターフェースを介してのデー
タの供給 本発明において、トークンはコード化データ入力レジス
タにアクセスすることによってマイクロプロセッサ・イ
ンターフェース(MPI)を介してシステムに供給され
る。表77がコード化データ入力レジスタを定義してい
る。
【0533】
【表77】 MPIを介したトークンの書き込み 効率的なデータの転送を可能化するために、コード化デ
ータレジスタはメモリーマップ内で二つのバイトにグル
ープ化される。8つのデータビット、coded_da
ta [7:0]、が第1の位置であり、制御レジスタ
s、coded_busy、enable_mpi−i
nput及びcoded_extnが第2の位置であ
る。(表56参照) MPIを介してトークンを入力するように構成した場合
には、coded_data[7:0]に値が書き込ま
れる毎に現在のトークンはcoded_extnの現在
の値によって拡張される。トークンの最後の語がcod
ed_data[7:0]に書き込まれる前にcode
d_extnを0に設定することはソフトウエアの責任
である。
【0534】例えば、データトークンcoded_ex
tnに1を書き込み、次にcoded_data[7:
0]に0x04を書き込むことで開始する。この新しい
データ・トークンの開始は次に、処理のためにシステム
に渡される。coded_data[7:0]に新しい
8ビットの値が書き込まれる毎に、現在のトークンが拡
張される。coded_extnは現在のトークンを終
了するとき(例えば、他のトークンを導入するために)
にのみ再びアクセスする必要が有る。現在のトークンの
最後の語はcoded_extnに0を書き込み、続い
てcoded_data[7:0]に現在のトークンの
最後の語を書き込むことによって表される。更に、co
ded_data[7:0]に書き込む前にはその都度
インターフェースがそれ以上のデータを受け入れる用意
があるかを確かめるためにcoded_busyを調べ
ることが必要である。 入力モードの切り換え 適当な対策が取られるものとして、データ入力モードを
動的に変更することが実際的である。一般的に、モード
を切り換える前に、何れか一つの経路を通してのトーク
ンの転送が完全に終了していなければならない。これら
の切り換えモードは表78に示されている。
【0535】
【表78】 バイトモードで供給される最初のバイトはデータトーク
ンヘッダーがオン・チップで生成されるようにする。バ
イトモードで更に転送されるバイトは入力モードが変更
されるまでこのデータトークンに付加される。MPIレ
ジスタビットcoded_busy及び信号coded
_acceptはどのインターフェースを介してシステ
ムがデータを受け入れようとしているかを示す。これら
の信号をただしく観察すればデータが失われでいないこ
とを確認することができる。 コード化データ受け入れの速度 本発明の入力回路はトークンをスタートコード検出器に
渡す。これは、データトークン内のデータを分析するも
のであり、その通常の処理速度はクロック(CDCLO
CKの)当たり1バイトである。しかしながら追加の処
理サイクルがときどき必要とされる。例えば、スタート
コードがコード化データの中に有ったときである。これ
が起きた時には、CDACCEPTがローになって、デ
ータが受け入れられないことを示す。
【0536】その結果、CDCLOCKはデータのバイ
トがシステム供給されるべき速度より高いクロック周波
数を有する必要が生じる。多くの応用においては、SY
SCLOCK及びCDCLOCKの両方に同一のクロッ
ク(典型的には27MHz)を用いることが適道であ
る。一例が図105に示されている。 コード化データ・インターフェースタイミング 同様に、表79は本発明のためのコード化データ・イン
ターフェースタイミングを示している。
【0537】
【表79】 a 或状況ではこれらのタイミングは観測される必要は
無い。 b 最大信号負荷は20pFである。
【0538】コード化データインターフェースはCMO
Sレベルを使用する。 CDCLOCK コード化データインターフェースを通してのデータの転
送はビデオデコーダクロック(SYSCLOCK)に同
期したCDCLOCKによって制御される。この特徴
は、システムデコーダがビデオクロックとは異なるクロ
ックで動作することを可能にする点で有用である。
【0539】しかしながらCDCLOCKは本発明にお
いてはスタートコード検出器等の回路に内部的にクロッ
クを供給するためにも用いられている。CDCLOCK
は均等なマーク・スペース比を保証する位相ロックルー
プ(PLL)の利益を受けないため、この点又は図10
5に示されたタイミングパラメータ2及び3を保証する
ために外部の回路を用いねばならない。
【0540】CDCLOCK及びSYSCLOCKが同
期している必要のない状況においては、スタートコード
検出器等の内部の回路をCDCLOCKよりはむしろP
LLから駆動する方が便利である。これにより、外部回
路が均等なマーク・スペース比を保証する必要が無くな
る。図106はCDCLOCKの代わりにスタートコー
ド検出器に供給されるべき、PLLによって生成された
均等なマーク・スペース比のクロックを可能にする内部
構成を表している。
【0541】もしun_named_register
がO(リセット条件)であれば、スタートコード検出器
はisPLLからクロックを供給される。この場合に
は、CDCLOCK及びSYSCLOCKの両方が同一
の信号に接続されねばならない。SYSCLOCKのた
めのACタイミングの要件である。もしun_name
d_registerが1であれば、スタートコード検
出器はCDCLOCKを用いてクロックが供給される。
この場合には、CDCLOCKはSYSCLOCKに同
期される。CDCLOCKは図105において指定され
るタイミングに従わねばならない。
【0542】序文 本発明のビデオ出力インターフェースはCCIR勧告6
01及び656に準拠したディジタル出力インターフェ
ースを実現している。全ての同期及びブランキング情報
が特別な符号語(SAV及びEAV)の形で、ビデオ情
報と同一のバイト幅のデータのストリームに含められて
いる。
【0543】加えて、別々の同期及びブランキングピン
が設けられており、システムは広い範囲の装置(ビデオ
DACやNTSCエンコーダ等)に直接接続することが
可能である。これらの信号のタイミングはCCIR勧告
624に準拠したビデオ信号の生成に適している。ビデ
オデータは単一バイト幅のバスにおいて時間多重化され
る。或いは、16ビット出力モードが設けられ、その場
合、輝度データは1バイト幅のバスに出力され、一方二
つの色差異信号は第2のバイト幅のバスにおいて時間多
重化される。 ビデオ出力信号 表80は本発明によるビデオ出力インターフェースのた
めの信号を提供する。
【0544】
【表80】 図107は16ビットモードでの出力タイミングを示し
ている。図108は8ビットモードでの出力タイミング
を示している。 ビデオ出力制御レジスタ 本発明によるビデオ出力制御レジスタは表81に示され
ている。
【0545】
【表81】 a このビットの設定に拘らず、色データ(Cb及びC
rの両方)はブランキングの間0x80(10進表示で
128)となる。 境界、スケーリング及び切り落とし(Croppin
g) 本発明は常に720ペル×480ライン(525ライン
・ラスター)又は576ライン(625ライン・ラスタ
ー)の表示用画面を生成しようとする。本発明はこの領
域を埋めるためにデコードされた画面を自動的にスケー
ル(拡大縮小)する。
【0546】限られた数のスケール率のみがサポートさ
れるため、この領域を常に正確に埋めることは不可能で
ある。もしその結果の画面が小さすぎる場合には、デコ
ードされた画面の回りに境界が描画される。この境界は
デコードされた画面がスクリーンの中央に位置するよう
に決められている。逆に、もしスケーリングの結果、画
面が大きすぎれば、画面は正しく表示されるために切り
落とされる。表示された領域はデコードされた画面の中
央に位置する。この切り落としはデコードされた画面の
およそ10%より多くが切り落とされないように制限さ
れる。もしこの値より多くが失われた場合には、より小
さなスケーリング率が用いられる。
【0547】境界色はレジスタborder_cb_、
dorder_y及びborder_crに書き込むこ
とによって選択される。装置がリセットされた後であっ
て、画面がデコードされる前には、スクリーン全体が境
界色で埋められる。加えて、blank_screen
に書き込むことによってスクリーン全体に境界色を描画
することが可能である。これは、例えば、チャンネル変
更の間にビデオを隠すために使用することができる。 ビデオ出力特性 特性 図109は、本発明によるビデオ出力インターフェース
のタイミングを示している。同様に、表82ビデオ出力
インターフェース・タイミングを示している。
【0548】
【表82】 a 最大信号負荷は50pFである。 b このタイミング・パラメータを満足しない場合は、
単にリセットが発生する ミング・パラメータが観測されないときのメタスタビリ
ティの問題に対する保護を行うオン・チップ同期装置が
設けられている。
【0549】表83はビデオ出力モード信号を定義して
おり、図110がビデオ出力モード信号を示している。
【0550】
【表83】 a もしNTSC/PAL又はV16/8がリセット後
に状態を変化したときには動作は定義されない。 ビデオ信号タイミング 本発明のビデオタイミングは、その結果生じるビデオ出
力が以下のCCIR勧告に準拠するタイミングである。
【0551】 ・CCIR勧告601 ・CCIR勧告656 ・CCIR勧告624 水平タイミング 水平タイミングは図111に示されている。図中の数は
525ラインシステムの場合のSYSCLOCKサイク
ル数である(625ライン・システムの値は括 ライン・システムの場合は66サイクルの間)ローであ
る。
【0552】 システムの場合は738サイクルの間)ローである。 垂直タイミング 垂直タイミングは図112において525ライン(NT
SC)システムについて図示されており、図113にお
いて625ライン(PAL)システムについて図示され
ている。これらの図において、左側下方への数はCCI
R勧告656に従ったライン数を与えるものである。右
側の二つの列はSAV及びEAVコードにおける”F”
及び”V”ビット(CCIR勧告601参照)を与える
ものである。
【0553】太い実線の、黒ラインの中央の小さな数は
デコードされたMPEG画面の論理ライン数を与える。
従って、これらは525ライン(NTSC)システムに
おいて用いられる480ラインに対しては、0から47
9の番号が付けられ、625ライン(PAL)システム
において使用される576ラインに対しては90から5
75の番号が付けられている。 図114は525ライ
ンシステムについての同期のタイミング及びブランキン
グピンを示し、図115は625ラインシステ _not_cs参照)、これら信号の各々の極性は反転
されても良い(cblank_ah、等参照)ことに注
意すべきである。 VTGリセット状態 本発明において、VTGは525ライン(NTSC)シ
ステムに対してはライン4の開始にリセットし、625
ライン(PAL)システムに対してはライン1の開始に
リセットする。
【0554】序文 本発明においては標準バイト幅のマイクロプロセッサ・
インターフェース(MPI)が使用されている。MPI
は種々のデコーダチップクロックと同期して動作する。 MPI信号 表84はMPIインターフェース信号を表している。
【0555】
【表84】 MPIの電気的仕様 DC特性 2.2.1、”TTL(5V)レベル”参照。
【0556】図123及び124はそれぞれMPIの読
み出し及び書き込みタイミングを図示している。 AC特性 表85はMPIのための読み出しタイミングを示してい
る。
【0557】
【表85】 のものである。 b MD[7:0]の各々における最大の負荷50pF
についてアクセス時間が規定されている。負荷が大きけ
ればアクセス時間が増大する。
【0558】同様に、表86はMPIのための書き込み
タイミングを示している。
【0559】
【表86】 である。 割り込み ”イベント”は使用者が観測したいと考えるオン・チッ
プ条件を記述するために用いられる用語である。イベン
トはエラー状態を表示することが可能であるかまたは使
用者ソフトウエアに告知することが可能である。
【0560】各割り込み又は”イベント”に関係して二
つの単一ビットレジスタが存在する。これらは状態イベ
ントレジスタ及び状態マスクレジスタである。 状態イベントレジス夕 状態イベントレジスタは回路内に生じている状態によっ
てその値が1に設定される1ビットの書き込み/読み出
しレジスタである。このレジスタは状態が過渡的にのみ
生じる場合であっても1にセットされる。次に、このレ
ジスタは使用者ソフトウエアがそれをリセットするか又
はチップ全体がリセットされるまで1に設定されたまま
であることが保証される。
【0561】・レジスタは1を書き込むことによってゼ
ロにセットされる。 ・レジスタへのゼロの書き込みはレジスタを変化されな
いままにする。 ・レジスタは、次にこの状態が観測可能になる前に使用
者ソフトウエアによってゼロにセットされねばならな
い。 ・レジスタはリセット時にゼロにリセットされる。 状態マスクレジスタ 状態マスクレジスタは対応する状態イベントレジスタが
セットされた時には割り込み要求の生成を可能にずる1
ビットの読み出し/書き込みレジスタである。もし状態
マスクレジスタに1がセットされたときに状態イベント
が既にセットされていれば、直ちに割り込み要求が発せ
られる。
【0562】・値1が割り込みを可能化する。 ・レジスタはリセット時にゼロにクリアされる。 他に規定されない限り、ブロックは割り込み要求を生成
した後に動作を停止し、状態イベントレジスタ又は条件
マスクレジスタのどちらかがクリアされた後すぐに再ス
タートする。 イベント及びマスクビット 本発明において、イベントビット及びマスクビットは常
にレジスタマップ内の連続したバイト(表55参照)に
おける対応するビット位置に組合わされる。これによ
り、どのイベントが割り込みを生成したかを確かめるた
めに、割り込みサービス・ソフトウエアがマスクレジス
タから読み出された値をイベントレジスタ内の値のため
のマスクとして使用することが可能になる。 チップ・イベント及びマスク 本発明はチップ上のイベントのアクティビティを要約す
る単一の”大域的”イベントビットを有する。チップイ
ベント・レジスタはそれらのマスクビットにおいて1を
有する全てのオン・チップイベントのORを示す。
【0563】チップマスクビットの1はチップが割り込
みを生成すること許す。チップマスクビットの0割り込
み要求を生成するどのオン・チップイベントをも示して
いる。チップイベントに1又は0を書き込んでも何も効
果を生じない。それは全てのイベント(それらのマスク
ビットにおける1でイネーブルされた)がクリアされと
きにのみクリアする。 フ・チップのプル・アップ抵抗を必要とする”オープン
・コレクタ”出力である によってプル・ダウンされる。殆どの応用において、お
よそ4kΩのプル・アップ抵抗が適当である。 ページレジスタ 本発明により必要とされるレジスタアドレス信号の数を
減少させるために、64以上のレジスタをアドレス指定
することを可能にするためにページ・レジスタが用いら
れる。このページ・レジスタは0x1fの位置に有る。
レジスタ位置0x00から0x1fはページ・レジスタ
の内容により影響されず、常にレジスタマップに存在す
る。0x20から0x3fの位置のレジスタはページ・
レジスタに依存している。
【0564】通常の装置動作に要求されるページングさ
れたレジスタは存在しない。ページングされたレジスタ
は、最後に、テストの目的のためにのみ用いられる。本
発明において、ページ・レジスタは値ゼロにリセットさ
れる。使用者は他の値がこのレジスタに書き込まれない
ことを確実にしなければならない。 序文 SDRAMインターフェース信号 表87はSDRAMインターフェース信号を図示してい
る。
【0565】
【表87】 SDRAMの構成 表88はSDRAMの構成を示している。
【0566】
【表88】 構成ゼロ 構成ぜろのSDRAMの接続については図116参照 図117は一つのSDRAMの接続のための構成を図示
している。同様に、図118及び図119は2つ又は3
つのSDRAMの接続の構成をそれぞれ示している。
【0567】序文 本発明によるシステムは、現在IEEE規格1149.
1に採用されているジョイント・テスト・アクション・
グループ(JTAG)の”標準テスト・アクセスポート
及び境界スキャン・アークテクチャ”を完全にサポート
している。全てのJTAGの動作はテスト・アクセスポ
ート(TAP)を介して実行され、後者は5つのピンか
ら構成される。TRESET(テストリセット)ピンが
JTAG回路をリセットし、テストモードにおいて装置
の電源が立ち上がらないことを確実にしている。TCK
(テスト・クロック)ピンが直列テストパターンをTD
I(テストデータ入力)ピンに入力しTDO(テストデ
ータ出力)ピンから出力するためにクロックを供給する
ことに用いられる。更に、JTAG回路の動作モードが
適当なビットシーケンスをTMS(テストモード選択)
ピンにクロックすることによって設定される。
【0568】JTAG規格はチップ製造者の選択に従っ
て追加の特徴を提供することが可能なように拡張可能で
ある。本発明によれば、3つのJTAGの必須の命令を
含む9つのユーザ命令が有る。追加の命令は有る程度の
内部装置のテストを可能にし、追加の外部テストを行う
柔軟性を提供するものである。例えば、単純なJTAG
シーケンスにより全ての装置出力を浮遊させることがで
きる。表89参照。 非JTAGシステムにおけるJTAGピンの接続
【0569】
【表89】 サポートされる命令 この節は本発明のこの実現例でサポートされる命令につ
いて記述している。表90、91、及び92参照。
【0570】
【表90】
【0571】
【表91】 以下の補助JTAG命令はサポートされていない。
【0572】 1) IDCODE 2) RUNBIST
【0573】
【表92】 命令コードの割当 全体で14の定義された命令が存在する。よって、2つ
の割り当られない命令を含む4ビット長の命令レジスタ
が存在する。割り当られない命令はIEEE1149.
1に従ったBYPASS命令のエイリアスである。
【0574】命令及びそれらのコードの完全なリストが
表93に示されている。
【0575】
【表93】 IEEE規則1149.1準拠レベル 以下の点に注意する必要があるけれども、すべての規則
が堅持されている。
【0576】
【表94】 推奨項目
【0577】
【表95】
【0578】
【表96】 許可
【0579】
【表97】 序文 本発明によれば、スタートコード検出器(SCD)は、
コード化データストリーム内のスタートコードを検出す
る役割を担っている。該検出器はこれらをシステムによ
る更に内部の処理のためのトークンに変換する。この処
理に加えて、例えばチャンネル変更をサポートする一連
の特徴が存在する。. スタートコード検出器レジスタ 表98は本発明のスタートコード検出器のためのレジス
タ図示している。
【0580】
【表98】 a イベントビット単純なR/Wレジスタビットでは無
い。 b 全ての割り込みはchip_maskが1に設定さ
れることが条件である。スタートコードの検出 本発明のスタータコード検出器は正確に整列されたスタ
ートコードのみを検出ずる。
【0581】本発明はビデオスタートコードのみを扱
う。認識されないスタートコードは検出され、unre
cognized_start_codeイベントを生
起させる。認識されないスタートコードはシステムスタ
ートコード(0xb9から0xffまでの値)、予約済
みスタートコード(0xb0、0xb1、及び0xb
6)及びsequence_error_code(O
xb4)である。 discard_all機能 discard_all機能はシステムに入る全てのデ
ータを廃棄するために使用することができる。レジスタ
discard_allを1に設定することによってd
iscard_all機能を”手動で”選択することが
できる。しかしながらscdp_accessが最初に
1に設定され、それが1を読み返すまでポーリングされ
ることが必要である。一般的に言って、flag_pi
cture_end機能の一部分として自動的にこのモ
ードに入る動作が典型である。
【0582】本発明においては、discard_al
lに値0が書き込まれるかFLUSHトークンに出合う
かするまでは全てのデータが廃棄され続ける。disc
ard_allをリセットするFLUSHトークンはト
ークンのストリームから削除され、パーサ又は回路の以
降のいかなるブロックにも影響を与えないことに注意す
べきである。 flag_picture_end機能 本発明によれば、flag_picture_end機
能はシステムへのデータのフローを停止させる前に画面
の終了まで待つことによって、復号をきれいに終了させ
ること意図したものである。従って、パーサは不完全な
画面を見ることは無い。
【0583】図120はflag_picture_e
nd機能をフローチャートとして図示している。図示さ
れた如く、画面の終端が検出されたときに割り込み(f
lag_picture_end_event)を生成
することができる。これは割り込みが処理される迄はS
CDのデータの処理を中止させる。或いは、SCDは動
作を続けることが許されても良い。
【0584】もしafter―picture_dis
cardが1に設定されていれば、画面の終端が検出さ
れた後には、全ての以降のデータが廃棄される。これは
チャンネル変更の前に”航行”中の1つのチャンネルか
らの後続データをシステムデマルチプレクサにおいて廃
棄するのに最も有用である。.この実施例において、s
tart_code_search機能がflag_p
icture_end機能に対して優先ずることに注意
すべきである。この方法によって、start_cod
e_searchによって廃棄されているデータが画面
の終端に達したか否かを決定するために調べられること
が無い。 start_code_search機能 本発明において、SCDは特定のタイプのスタートコー
ドをサーチすることに設定可能である。これは例えば、
チャンネル変更後に復号の開始の前にシーケンススター
トコードをサーチするために使用される。
【0585】
【表99】 サーチ・モードに入るためにはstart_code_
searchにゼロ以外の値を書き込む。次にスタート
コード検出器は、表99によって示された適当なスター
トコードをサーチする。全てのデータ及びトークンはサ
ーチが続行している間は廃棄される。適当なスタートコ
ードの一つに遭遇したときにサーチは終了する。sta
rt_code_searchがゼロに設定され、補助
として割り込みが生成されても良い。
【0586】FLUSHトークンは表示されたスタート
コードの内の一つに遭遇したかのようにしてサーチを終
了することに注意すべきである。しかしながらFLUS
Hトークンがdiscard_all機能を終了させて
いる特別な場合には、サーチは終了されない。更にこれ
は、FLUSHトークンに遭遇したときに、disca
rd_allと予め選択されたサーチ・モードとの間で
直接移動することを可能にする。
【0587】図121は本発明によるstart_co
de_search機能をフローチャートとして図示し
ている。 SCDの例−チャンネル変更 本発明におけるSCD機能を使用した一例がチャンネル
変更動作を行う以下の動作シーケンスにおいて示されて
いる。 1) 制御マイクロプロセッサがチャンネル変更の必要
(おそらく、信号遠隔制御ユニットからの信号に応答し
て)を認識する。マイクロプロセッサはSCDのfla
g_picture_end機能を; ・1をfla g_picture_endに、 ・1をafter_picture_discard
に、 ・1をflag_picture_end_mask
に、書き込むことによって使用する。 2) スタートコード検出器が現在の画面の終端を検出
すると、直ちに以降の全てのデータを廃棄し始める。マ
イクロプロセッサには割り込みが行われ、割り込みの原
因はflag_picture_end_eventで
あると決定する。マイクロプロセッサは先ず、 ・3(sequence_startをサーチ)をst
art_code_searchに、次に ・1をflag_picture_end_event
(イベントをクリアするため)に書き込むことによって
新しいチャンネルのためのスタータコード検出器を用意
する。 3) 次に、マイクロプロセッサはチューナを再同調さ
せて新しいチャンネルを選択させる。 4) 旧チャンネルからの最後のデータがシステムに転
送された後に、(そして新しいチャンネルの最初のデー
タの前に)FLUSHトークンが挿入される。(或い
は、値0がdiscard_allに書き込まれる。)
従って、スタートコード検出器はデータ(旧チャンネル
からの)の廃棄を止め、(新しいチャンネルからのデー
タに対して)シーケンススタートコードのサーチを始め
る。 5) 一度シーケンススタートコードが検出されると、
スタートコード検出器はデータの廃棄を止め、通常の復
号に復帰する。
【0588】序文 本発明によれば、ビデオパーサは、ビデオデータストリ
ームの復号を担当する。これはマイクロプログラムされ
たプロセッサとして実現されている。通常のイベントの
進行においては、ビデオパーサと交互作用する必要は殆
ど無く、多くの単純なアプリケーションは単にビデオパ
ーサにそのビデオを復号する処理を行わせるせる。
【0589】しかしながら、ビデオパーサは例えばビッ
トストリームエラー等の通常でないイベントや予期しな
いイベントを検出したときに制御用マイクロプロセッサ
にそれを報知することが可能である。全ての場合におい
て、マイクロコードはエラーから復帰する(そしてエラ
ー隠す)ためのコードを含んでおり、ビットストリーム
エラーを無視しても安全である。 しかしながら、ビッ
トストリームエラーが発生しているという知識は診断の
ために有用である。
【0590】更に、タイムスタンプ管理内のある部分は
パーサのマイクロコード・プロセッサによって処理され
る。これらは第10章において説明されている。 パーサレジスタ パーサによって使用されるレジスタは表100に示され
た如くである。.
【0591】
【表100】 a イベントビットは単純なR/Wレジスタビットであ
る。 b 全ての割り込みはchip_maskが1に設定さ
れることが、必要条件である。 エラーコード パーサがイベント状態を検出したときにはいつもpar
ser_eventをせっていする。もしparser
_maskが1に設定されていれば(ユーザーシステム
がパーサイベントを処理することに関係していることを
表している)、パーサは処理を停止し、(chip_m
askが1に設定されていることを仮定して)割り込み
が生成される。
【0592】割り込みに応答するのに際して制御用マイ
クロプロセッサはイベントの原因を決定するためにpa
rser_error_codeを読まねばならない。
表101はこれに関して定義されたエラーコードの完全
なリストを提供するものである。制御用マイクロプロセ
ッサが適切な方法でイベントに応答した後には、該プロ
セッサは本発明のパーサに処理を再開することを許可し
なければならない。これはparser_eventに
値1を書き込むことによってイベントをクリアすること
によって行われる。
【0593】
【表101】 ユーザーデータの扱い 小量のユーザーデータはパーサから読み出すことができ
る。省略時には、全てのユーザーデータがスタートコー
ド検出器によって廃棄される。これは、システムをその
能力を越えるかもしれない大量のユーザーデータが不適
切に使用されることから保護するためである。
【0594】ユーザーデータがパーサに届くことを許可
するためには、レジスタdiscard_userが0
に設定されねばならない。ビットストリームにおいてユ
ーザーデータに遭遇したときにはいつもデータのバイト
はオン・チップのユーザーデータRAMにおいてバッフ
ァリングされる。このRAMは192バイトのデータが
バッファリングされる空間を有している。ユーザーデー
タの全てのバイトが読まれたとき(或いはRAMが一杯
の時)パーサはイベント(ERR_USER_DAT
A)を生成し、これにより制御用マイクロプロセッサが
RAMからデータを読み出すことが可能になる。
【0595】ユーザーデータRAMが読まれる前に、マ
イクロプロセッサは、先ずparser_access
を1に設定することによってパーサの内部レジスタにア
クセスし、次にこのビットをそれが1を読み返すまでポ
ーリングすることが必要である。ユーザーデータRAM
内のバイト数はparser_statusによって表
示される。ユーザーデータRAMは直接的にアクセスす
ることはできない。その代わりに、user_keyh
ole_addrに読み込まれるアドレス(通常ゼロ)
を書き込むことが必要であり、その後データはuser
_keyhold_dataから読み出される。use
r_keyhole_dataから読み出しが行われる
毎にuser_keyhole_addrが自動的にイ
ンクリメントされるため、ユーザーデータの適切な数の
バイトを非常に迅速に読み出すことができる。
【0596】もしユーザーデータが192バイト以下し
か無ければ、全てのデータは単一のイベントで扱われ
る。もし192バイト以上有れば、最初にERR_US
ER_DATAが生成された時にparser_sta
tusは192バイト含むことになる。イベントがクリ
アされた後(parser_accessにゼロを書き
込み次にparser_eventに1を書き込むこと
により)、マイクロコードは次に何をするかを決める為
にparser_continueに質問する。
【0597】もしparser_continueが1
であれば、パーサはユーザーデータの処理を続ける。ユ
ーザーデータの残りのバイト(或いは次の192バイ
ト)がストリームから構文解析され、処理が繰り返され
る。しかしながら、もしparser_continu
eが0であれば、パーサは残りのユーザーデータを廃棄
し、通常のビデオ復号を進める。parser_con
tinueがゼロであっても、第1のERR_USER
_DATAイベントが常に生成されることに注意すべき
である。 ユーザーデータの量の制限 もしユーザーデータが使用されるべきであるときには、
本発明によってビデオデータのリアルタイムの復号が保
証されるために、これが制限されていることが重要であ
る。制御用マイクロプロセッサの割り込み応答時間及び
システムからデータのバイトを読み出すのに必要とされ
る時間等の多くの外部の制約に依存するためユーザーデ
ータの許容可能な限界を指定することは非常に難しい。
ガイドとして、ユーザーデータの量は、およそ50μ
(割り込み応答時間等を含む)の間にシステムから読み
出されることが保証される量に制限されることが必要で
ある。 ユーザーデータRAM 画面データの復号の間、使用者RAMは他の目的(例え
ば、隠し動きベクトルの格納)等のためのマイクロコー
ド・プロセッサーによって使用される。このことによっ
て、RAM内にデータを放置すること及び後の使用のた
めにそのデータが保存されていると期待することは不可
能である。
【0598】序文 本発明はビデオタイムスタンプの管理を補助する回路を
含んでいる。MPEGシステムストリームパーサに関連
する外部回路がクロック基準(プログラムされたクロッ
ク基準或いはシステムクロック基準等の適当なもの)を
使用した安定した27MHzクロックを獲得しているも
のと仮定する。
【0599】従って、本発明による回路は、音声との同
期を図るためにビデオの復号を適切な時間に開始するよ
うに配慮されており、その後、ビデオタイムスタンプを
監視して継続した同期を確保している。エラーが無けれ
ば、それ以降の補正は必要とされない。クロック基準情
報をビデオデコーダに転送する必要を回避することが好
ましい。ハードウエアは二つの領域に分割されており、
それらはビデオタイムスタンプをロードするためのシス
テムの入力ステージに関連する回路と、ビデオパーサ回
路に関連する実時間カウンタである。 システムの構成 本発明は27MHzのSYSCLOCKから導出された
規則的な間隔で増分されるカウンタを含む。タイムスタ
ンプ管理のためのシステムはシステム外部で維持されて
いるこのカウンタの第2のコピーに(概念上)依存して
いる。これらの二つのカウンタは同一の信号でリセット
されることにより同一の値に初期化される。その後、二
つのカウンタは自走する。
【06000】本発明は”ビデオ時間”と称する内部の
時間カウンタに対してそのタイムスタンプ管理を実行す
る。正確な比較が成されることを保証するために、ビデ
オタイムスタンプはシステムデコーダにより修正され
る。絶対時間を知る必要は無く、単に、画面がデコード
された実際の時間とデコードされるべきであった公称時
間の間の差異で良い。
【0601】以下の式1はビデオ時間カウンタ及び修正
タイムスタンプの間の差異を実際の”時間”(クロック
基準から導出された)とタイムスタンプとの間の差異に
等しく設定することによってこれを表している。式2は
単に修正タイムスタンプを導出するために変数を再構成
したものである。 式1:ビデオ時間−修正タイムスタンプ=タイムスタン
プ−時間 式2:修正タイムスタンプ=ビデオ時間+(タイムスタ
ンプ−時間) 図122は修正タイムスタンプを導出するための一つの
可能な演算の構成を示している。実際は、実際の加算
(及びシフト)は専用のハードウエアの中でよりはむし
ろプロセッサ上で実行される可能性が大である。勿論、
修正タイムスタンプの同一の数値を導出するために多く
の他の方法が存在する。例えば、本発明の タのコピーを持つよりは、単純に”時間”の値を記録す
る方が良いかも知れない。この情報及び”時間”の現在
の値から、常にシステム内のビデオ時間の現在の内容を
推断することが可能である。
【0602】修正タイムスタンプの適切な値を導出する
ことが可能な適当な演算動作の再配置の使用が可能であ
る。図122に示された如く、発明において用いられる
修正タイムスタンプは16ビットのみを使用している。
これは二つの方法で達成される。第1には、時間及びタ
イムスタンプ(修正タイムスタンプを導出するのに使用
されたタイムスタンプ−式2参照)の間の差異は常に小
であるから、より上位のビットを廃棄することができ
る。第2に、本発明はビデオを最も近いフレーム時間に
表示するように制御するのみであるから、より下位のビ
ットもまた必要とされず、4ビットだけ右にシフトする
ことによって廃棄される。
【0603】こうして、時間情報の維持された16ビッ
トは約11.5秒迄のタイミングエラーを約180μs
(フィールド時間の約1%)の精度で扱うことが可能で
ある。
【図面の簡単な説明】
【図1】図1は本発明の好ましい実施例におけるデータ
の流れを示す図である。
【図2】図2は64×32RAM内に8ビットデータを
アドレス指定するために用いられる13ビットのワード
の例を示す図である。
【図3】図3は本発明において登録ファイルの機能的ブ
ロック図である。
【図4】図4は図3に示された登録ファイル内のデータ
の流れを示す図である。
【図5】図5は本発明による登録ファイルアドレス復号
化を示すブロック図である。
【図6】図6は本発明によるマイクロコーダブル状態マ
シンのブロック図である。
【図7】図7はアドレス指定用に用いられ、アドレスフ
ィールド、置換フィールド及び置換ヘッダを有する本発
明による固定幅ワードを示す図である。
【図8】図8は本発明による演算コアの例を示すブロッ
ク図である。
【図9】図9は本発明による入力データでIDCTを行
う方法における基本ステップを示す図である。
【図10】図10は本発明によるIDCTシステムの結
合した簡単な2ステージのアーキテクチャを示すブロッ
ク図である。
【図11】図11は図10に示したIDCTの主要シス
テム成分を備えた集積回路の簡単なブロック図である。
【図12】図12a〜図12bからなる図12は主要シ
ステム成分のうちの1つに相当する事前処理回路のブロ
ック図である。
【図13】図13a〜図13cからなる図13は好まし
い実施例のIDCTシステム内のタイミング及び制御信
号間の関係を示すタイミング図である。
【図14】図14a〜図14bからなる図14はIDC
Tシステム内の共通処理回路を示すブロック図である。
【図15】図15〜図15dからなる図15はシステム
の他の主要成分に対応する事後処理回路を示すブロック
図である。
【図16】図16a〜図16bからなる図16は対のデ
ータストリーム、置換RAM及び改善したバッファを有
するIDCTを示す本発明に応じたブロック図である。
【図17】図17a〜図17fからなる図17は図16
に示した1次元IDCTシステムを詳細に示すブロック
図である。
【図18】図18a〜図18bからなる図18は図17
に示した変換システムを更に大きく詳細に示すブロック
図である。
【図19】図19a〜図19bからなる図19は図18
に示した入力バッファを更に大きく詳細に示すブロック
図である。
【図20】図20a〜図20bからなる図20は本発明
による事前処理回路「PREC」を簡単に示すブロック
図である。
【図21】図21a〜図21bからなる図21はIDC
T内の共通処理回路「CBLK」を示すブロック図であ
る。
【図22】図22a〜図22bからなる図22は事後処
理回路「POSTC」を示すブロック図である。
【図23】図23a〜図23dからなる図23は図22
に示した事後処理回路のその他を示す図である。
【図24】図24は本発明による四捨五入及び飽和ブロ
ックを示すブロック図である。
【図25】図25a〜図25bからなる図25は本発明
における出力バッファを示すブロック図である。
【図26】図26a〜図26bからなる図26は本発明
における制御シフトレジスタを示すブロック図である。
【図27】図27a〜図27cからなる図27は本発明
における制御シフトレジスタ復号を示すブロック図であ
る。
【図28】図28a〜図28cからなる図28は制御シ
フトレジスタ及び入力制御バッファを示す図である。
【図29】図29a−1〜図29fからなる図29はT
2データストリーム用の制御回路を示す図である。
【図30】図30a〜図30dからなる図30はT1用
のカウンタ内のデータを示す図である。
【図31】図31a〜図31eからなる図31は本発明
においてT2データストリーム用のカウンタ内のデータ
を示す図である。
【図32】図32はIDCT及び関連回路を示すブロッ
ク図である。
【図33】図33はT1及びT2データのインターリー
ブを示すタイミング図である。
【図34】図34はT2のスリッページ及び復旧を示す
タイミング図である。
【図35】図35は本発明においてIDCT及び関連回
路のフラッシュ動作を示すタイミング図である。
【図36】図36は本発明によるシステムの始動を示す
図である。
【図37】図37はT1及びT2データをインターリー
ブする早期ステージ内のスリッページ及び復旧を示すタ
イミング図である。
【図38】図38は図16〜図37に示したIDCTシ
ステムの他の好ましい実施例を示す図である。
【図39】図39は本発明によるデータ及びタイムスタ
ンプ情報を含む基本ストリームに多重分離されるMPE
G情報ストリームを示す図である。
【図40】図40は本発明による基本ストリームタイム
スタンプエラー決定及び時間同期システムの第1の実施
例を示す図である。
【図41】図41は本発明による基本ストリームタイム
スタンプエラー決定及び時間同期システムの第2の実施
例を示す図である。
【図42】図42は本発明による基本ストリームタイム
スタンプエラー決定及び時間同期システムの第3の実施
例を示す図である。
【図43】図43は本発明によるビデオタイムスタンプ
エラー決定及び時間同期システムの第1の実施例を示す
図である。
【図44】図44は本発明によるビデオタイムスタンプ
エラー決定及び時間同期システムの第2の実施例を示す
図である。
【図45】図45は図44に示した30Hzで動作する
ビデオタイムスタンプエラー決定及び時間同期システム
の第2の実施例を示す図である。
【図46】図46は本発明のシステムを介して流れるタ
イムスタンプ情報を示す図である。
【図47】図47はマイクロプログラマブル状態マシン
によって処理される同期時間情報を示すブロック図であ
る。
【図48】図48は本発明の第1の好ましい実施例を示
すブロック図である。
【図49】図49は本発明の第1の好ましい実施例を示
す他のブロック図である。
【図50】図50は本発明の第2の好ましい実施例を示
すブロック図である。
【図51】図51は本発明の第2の実施例によって用い
られるアドレス指定方法を詳細に示す図である。
【図52】図52は本発明によるハフマンVLCを復号
化する装置を示すブロック図である。
【図53】図53a〜図53dからなる図53は本発明
による並列ハフマンデコーダの構成を示す概略ブロック
図である。
【図54】図54a〜図54bからなる図54は並列ハ
フマン符号を復号化するために適合されたROMを示す
概略ブロック図である。
【図55】図55は並列ハフマン符号を復号化するため
に適合されたROMの第1の実施例を示す図である。
【図56】図56は並列ハフマン符号を復号化するため
に適合されたROMの第2の実施例を示す図である。
【図57】図57は並列ハフマン符号を復号化するため
に適合されたROMの第3の実施例を示す図である。
【図58】図58は本発明の一実施例の主要システム成
分を示すブロック図である。
【図59】図59は本発明のスタート符号検出器を示す
ブロック図である。
【図60】図60は本発明の分析器を示すブロック図で
ある。
【図61】図61は本発明の空間処理回路の主要成分を
示すブロック図である。
【図62】図62は本発明に応じた表示回路を示すブロ
ック図である。
【図63】図63は本発明に応じたタイムスタンプ管理
の一実施例を示す図である。
【図64】図64は本発明におけるタイムスタンプ管理
の他の実施例を示す図である。
【図65】図65は本発明のシステムのハードウエア成
分を示すブロック図である。
【図66】図66は本発明のマイクロコントローラのシ
ステム成分の概略を示すブロック図である。
【図67】図67は本発明の演算コアを示す簡単な図で
ある。
【図68】図68は本発明のALUを示す図である。
【図69】図69は本発明に応じた登録ファイルを示す
図である。
【図70】図70は本発明において独立のバスレジスタ
への書き込みを示す図である。
【図71】図71はベクトル[1]=0及びベクトル
[0]=0におけるフレームに基づいた予測を示す図で
ある。
【図72】図72はベクトル[1]=0及びベクトル
[0]=1におけるフレームに基づいた予測を示す図で
ある。
【図73】図73はベクトル[1]=1及びベクトル
[0]=0におけるフレームに基づいた予測を示す図で
ある。
【図74】図74はベクトル[1]=1及びベクトル
[0]=1におけるフレームに基づいた予測を示す図で
ある。
【図75】図75はmotion_vertical_
field_select=0及びベクトル[0]=0
におけるフィールドに基づいた予測を示す図である。
【図76】図76はmotion_vertical_
field_select=0及びベクトル[0]=1
におけるフィールドに基づいた予測を示す図である。
【図77】図77はmotion_vertical_
field_select=1及びベクトル[0]=0
におけるフィールドに基づいた予測を簡単に示す図であ
る。
【図78】図78はmotion_vertical_
field_select=1及びベクトル[0]=1
におけるフィールドに基づいた予測を示す図である。
【図79】図79はmotion_vertical_
field_select=0及びベクトル[0]=0
におけるフレーム映像のフィールドに基づいた予測を示
す図である。
【図80】図80はmotion_vertical_
field_select=0及びベクトル[0]=1
におけるフレーム映像のフィールドに基づいた予測を示
す図である。
【図81】図81はmotion_vertical_
field_select=1及びベクトル[O]=0
におけるフレーム映像のフィールドに基づいた予測を示
す図である。
【図82】図82はmotion_vertical_
field_select=1及びベクトル[0]=1
におけるフレーム映橡のフィールドに基づいた予測を示
す図である。
【図83】図83は予測フィルタリングの追加モードを
示す図である。
【図84】図84は他の予測モードを図である。
【図85】図85は本発明による他の予測モードを示す
図である。
【図86】図86は本発明による他の予測モードを示す
図である。
【図87】図87は本発明の表示システムの様々なシス
テム成分の構成を示すブロック図である。
【図88】図88は4:3フィルタリング動作を示す図
である。
【図89】図89は3:2フィルタリング動作を示す図
である。
【図90】図90は本発明の2:1フィルタリング動作
を示す図である。
【図91】図91は本発明において用いられる3つのタ
ップフィルタを示す図である。
【図92】図92は間違った画素の反復を示す図であ
る。
【図93】図93は本発明のfiled_id信号を示
す図である。
【図94】図94は本発明に応じた水平タイミング点
(サイクル)を示す図である。
【図95】図95は本発明に応じたフィールド当たり6
25ラインでPAL垂直タイミングを示す図である。
【図96】図96は本発明に応じたフィールド当たり5
25ラインでNTSC垂直タイミングを示す図である。
【図97】図97は本発明に応じた水平計数機器を示す
図である。
【図98】図98は本発明における境界発生を示す図で
ある。
【図99】図99は本発明に応じた映像切り落としを示
す図である。
【図100】図100はチップとして本発明を示すブロ
ック図である。
【図101】図101は本発明のシステムクロック必要
条件を示す図である。
【図102】図102は本発明に応じた符号化データイ
ンターフェースの2線プロトコルを示す図である。
【図103】図103は本発明のDATAトークンを示
す図である。
【図104】図104は本発明のFLUSHトークンを
示す図である。
【図105】図105は符号化データインターフェース
のタイミングを示す図である。
【図106】図106は本発明に応じた均等でないマー
クースペース空間比CDCLOCKの使用を示す図であ
る。
【図107】図107は本発明における16ビットモー
ドにおける出力タイミングを示す図である。
【図108】図108は本発明における8ビットモード
における出力タイミングを示す図である。
【図109】図109は本発明におけるビデオ出力イン
ターフェースのタイミングを示す図である。
【図110】図110は本発明に応じたビデオ出力モー
ド信号を示す図である。
【図111】図111は本発明における水平タイミング
を示す図である。
【図112】図112a〜図112bからなる図112
は525ラインシステム用の垂直タイミングを示す図で
ある。
【図113】図113a〜図113bからなる図113
は625ラインシステム用の垂直タイミングを示す図で
ある。
【図114】図114は本発明に応じた525ラインシ
ステム用の同期及びブランキング信号を示す図である。
【図115】図115は本発明に応じた625ラインシ
ステム用の同期及びブランキング信号を示す図である。
【図116】図116は本発明における0のSDRAM
接続構成を示す図である。
【図117】図117は本発明における1のSDRAM
接続構成を示す図である。
【図118】図118は本発明における2のSDRAM
接続構成を示す図である。
【図119】図119は本発明における3のSDRAM
接続構成を示す図である。
【図120】図120は本発明に応じたflag_pi
cture_end動作を示すフローチャートである。
【図121】図121は本発明に応じたstart_c
ode_serch動作を示すフローチャートである。
【図122】図122は本発明に応じたタイムスタンプ
変更を示す図である。
【図123】図123はマイクロプロセッサインターフ
ェース用の読出タイミングを示す図である。
【図124】図124はマイクロプロセッサインターフ
ェース用の書込タイミングを示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アンソニー マーク ジョーンズ イギリス国 ブリストル ビーエス17 5 ティピーエイト テンプラーロード 31 (72)発明者 マーティン ウィリアム ソザーラン イギリス国 グロスターシャー ジーエル 11 ジービーディ スティンチコーン ウ ィックレイン ザライディングズ (番地 なし) (72)発明者 コリン スミス イギリス国 ブリストル ビーエス18 4 エックスエフ ビショップサトン パーク スフィールドガーデンズ 34 (72)発明者 ヘレン ローズマリー フィンチ イギリス国 グロスターシャー ジーエル 12 7エヌディ ウットン−アンダー−エ ッジ クーン タイレイ (番地なし) (72)発明者 アンソニー ピーター ジョン クレイド ン イギリス国 エイボン ビーエー2 6ビ ーゼット バース シドニービルディング ズ 14 (72)発明者 ドナルド ウィリアム ダブリュ. パタ ーソン イギリス国 ブリストル ビーエス6 7 ジェイダブリュ レッドランド ブレニム ロード 12 (72)発明者 マーク バーンズ イギリス国 ウィルトシャー エスエヌ14 6エルビー チペンハム マイケル キ ングストンストリート ザクローズ 16 (72)発明者 アンドリュ ピーター カリゴウスキ イギリス国 ブリストル ビーエス8 2 ディピー クリフトン アルマロード 87 ファーストフロアフラット (72)発明者 ウィリアム ピー. ロビンズ イギリス国 グロスターシャー ジーエル 11 5ピーイー カム スプリングヒル 19 (72)発明者 ニコラス バーチ イギリス国 ブリストル ビーエス9 4 ジェイビーヘンリーズ ブローンダウンア ベニュ 71

Claims (29)

    【特許請求の範囲】
  1. 【請求項1】 時間を同期させるための装置であって、 提示時間を決定するタイムスタンプと、 第1の回路内のシステム時間を初期化するためのクロッ
    ク基準と、 第1の回路内のシステム時間を維持するための前記クロ
    ック基準と通信する第1の時間カウンタと、 前記クロック基準により初期化される第2の回路内の前
    記第1の時間カウンタと同期した第2の時間カウンタで
    あり、前記システム時間の局所コピーを維持し、前記タ
    イムスタンプを前記第2の時間カウンタに比較すること
    によって前記システム時間の局所コピーと前記システム
    時間との間の提示時間エラーを決定するための前記第2
    のカウンタとから成ることを特徴とする前記時間同期装
    置。
  2. 【請求項2】 システムデコーダ及びビデオデコーダを
    同期させるための装置であって、 システムデコーダと、 表示時間を決定するタイムスタンプと、 前記システムデコーダ内のシステム時間を初期化するた
    めのクロック基準と、 前記システムデコーダ内のシステム時間を維持するため
    の前記クロック基準と通信する第1の時間カウンタと、 前記第1の時間カウンタに同期した前記ビデオデコーダ
    内の前記クロック基準により初期化される第2の時間カ
    ウンタであり、システム時間の局所コピーを維持し、タ
    イムスタンプを前記第2の時間カウンタに比較すること
    によってシステム時間の前記局所コピー及び前記システ
    ム時間の間の表示タイミングエラーを決定するための第
    2の時間カウンタとから成ることを特徴とする前記同期
    装置。
  3. 【請求項3】 第1の回路及び第2の回路を同期させる
    ための装置であって、 第1の回路内のシステム時間を初期化するためのクロッ
    ク基準であって、システム時間を維持するために前記第
    1の回路は該クロック基準と通信する時間カウンタを有
    している前記クロック基準と、 基本ストリーム時間を提供するための前記第1の回路内
    の第1の基本ストリーム時間カウンタとから成り、 前記第1の回路はタイムスタンプを受け取るように成さ
    れており、また前記第1の回路は基本ストリーム時間を
    前記タイムスタンプに加算しシステム時間を減算するこ
    とにより同期時間を生成するように成されており、 前記第2の回路は前記第1の回路から同期時間を受取る
    ように成されており、前記基本ストリーム時間の局所コ
    ピーを提供し、同期時間を前記基本ストリーム時間の局
    所コピーに比較することにより前記システム時間及び前
    記タイムスタンプの間のタイミングエラーを決定するた
    めの前記第1の基本ストリーム時間カウンタに同期した
    第2の基本ストリーム時間カウンタを有しており、 これによってタイミング・エラーを決定するために前記
    クロック基準信号が前記第2の回路に直接的に渡される
    必要を無くしたことを特徴とする前記同期装置。
  4. 【請求項4】 第1の回路及び第2の回路を同期させる
    ための装置であって、 第1の回路内のシステム時間を初期化するためのクロッ
    ク基準と、 前記第1の回路はシステム時間を維持するために前記ク
    ロック基準と通信する時間カウンタを有しており、 ビデオ復号時間を提供する第1のビデオ時間カウンタと
    から成り、 前記第1の回路はビデオタイムスタンプを受け取り、ビ
    デオ復号時間をビデオタイムスタンプに加算しシステム
    時間を減算することにより同期時間を生成するように成
    されており、 前記第2の回路は前記第1の回路からの同期時間を受取
    るように成されており、ビデオ復号時間の局所コピーを
    設け、前記同期時間を前記ビデオ復号時間の局所コピー
    に比較することにより前記システム時間及び前記ビデオ
    タイムスタンプの間のタイミングエラーを決定するため
    の前記第1のビデオ時間カウンタに同期した第2のビデ
    オ時間カウンタを有しており、 これにより、タイミング・エラーを決定するために前記
    クロック基準信号が前記第2の回路に直接的に渡される
    れる必要を無くしたことを特徴とする前記同期装置。
  5. 【請求項5】 タイミング情報を提供するための方法で
    あって、 パケットヘッダー内に担持されるタイムスタンプであ
    り、データのパケット内の最初の画面を示す前記タイム
    スタンプを有するビデオデータストリームを設け、 前記パケットヘッダーから取り出されてレジスタに配置
    された有効タイムスタンプ情報を示すフラグを有するレ
    ジスタを設け、 前記ビデオデータストリームから前記タイムスタンプを
    除去して前記レジスタに配置し、 画面スタートに遭遇し、有効なタイムスタンプ情報が前
    記レジスタに含まれるか否かをフラグの状態をチェック
    することにより判別するために前記レジスタの状態をそ
    の後に調べることを特徴とする前記タイミング情報検出
    方法。
  6. 【請求項6】 ビデオを復号処理するための方法であっ
    て、 しきい値に対する表示時間エラーを決定し、 その後の処理のためにビデオデータをトークンに構文解
    析し、 タイムスタンプトークンが示されたか否かを判別し、 タイムスタンプトークンをビデオ時間に比較し、 比較値を生成してタイミングエラーの指示を決定し、 タイミングエラーが指示された時にはしきい値と比較し
    た時に比較値が許容可能なパラメータ内にあるか否かを
    判別し、 比較値が許容可能なパラメータ外にあるときにこれを表
    示する各ステップから成ることを特徴とする前記復号処
    理方法。
  7. 【請求項7】 システムデコーダ及びビデオデコーダを
    使用する装置であって、 MPEGシステムストリームを受け入れるように成さ
    れ、ストリームからビデオデータ及びビデオタイムスタ
    ンプを分離するシステムデコーダを有し、 前記システムデコーダはシステム時間を表す第1の時間
    カウンタを有しており、 前記ビデオデータ及び前記ビデオタイムスタンプを受け
    入れるビデオデコーダを有し、 前記ビデオシステムは前記第1の時間カウンタと同期し
    た第2の時間カウンタを有し、 前記ビデオデコーダは前記ビデオデータを実質的に一定
    の速度で受け入れ前記ビデオデータを可変の速度で出力
    し、ビデオタイムスタンプを渡すためのビデオデコーダ
    バッファを有することを特徴とする前記装置。
  8. 【請求項8】 第1の回路及び第2の回路の間のタイミ
    ングエラーを決定するための方法であって、 第1の回路にシステム時間(SY)、タイムスタンプ
    (TS)及び基本ストリーム時間(ET)を提供し、 基本ストリーム時間(ET)、タイムスタンプ(TS)
    及びシステム時間(SY)を使用し、式 X=ET+T
    S−SY に従って同期時間(X)を得て、同期時間
    (X)を第2の回路に提供し、 同期した基本ストリーム時間(ET2)を生成し、 同期時間(X)を用いて式 ET2−X に従ってタイ
    ミングエラーを得る各ステップから成り、 これによりシステム時間を第2の回路にわたすことなし
    に第1の回路が第2の回路に同期可能であることを特徴
    とする前記タイミングエラー決定方法。
  9. 【請求項9】 第1の回路及び第2の回路の間のタイミ
    ングエラーを決定する方法であって、 第1の回路にタイムスタンプ(TS)及び初期時間(I
    T)を提供し、 タイムスタンプ(TS)及び初期時間(IT)を使用し
    て、式X=TS−1に従って同期時間(X)を求め、 同期時間(X)を第2の回路に提供し、 同期した基本ストリーム時間(ET)を生成し、 同期時間(X)を使用し、式 ET−X に従ってタイ
    ミングエラーを生成し、 これにより第1の回路は時間を第2の回路にわたすこと
    無しに第2の回路と時間同期することが可能であること
    を特徴とする前記決定方法。
  10. 【請求項10】 第1の回路及び第2の回路の間のタイ
    ミングエラーを検出するための方法であって、 第1の回路にシステム時間(SY)、ビデオタイムスタ
    ンプ(VTS)及びビデオ復号時間(VT)を提供し、 ビデオタイムスタンプ(VTS)及びシステム時間(S
    Y)を使用して式X=VT+VTS−SYに従ってビデ
    オ復号時間(VT)を得て、 同期時間(X)を第2の回路に提供し、 第1の回路におけるビデオ復号時間(VT)に同期した
    第2の回路におけるビデオ復号時間(VT2)を生成
    し、 同期時間(X)を使用して式VT2−Xに従ってタイミ
    ングエラーを得る各ステップから成り、 これによて、システム時間を第2の回路に渡すこと無し
    に第1の回路が第2の回路に時間同期可能にしたことを
    特徴とする前記検出方法。
  11. 【請求項11】 メモリをアドレス指定する方法であっ
    て、 可変幅データをアドレス指定するために用いられる所定
    の固定ビット数を有する固定幅の語を提供し、 幅定義フィールド及びアドレスフィールドを有する固定
    幅の語を定義し、 幅定義フィールドに終端マーカとして作用する少なくと
    も一つのビットを設け、 アドレスフィールドにデータのアドレスを画定する複数
    のビットを定義し、 アドレスフィールド内のビットのサイズを可変幅データ
    のサイズと逆の関係で変化させ、 幅定義フィールド内のビットの数を可変幅データのサイ
    ズに対して直接の関係で変化させ、 幅定義フィールド及びアドレスフィールドの幅を変化さ
    せる一方、可変幅データをアドレス指定するための固定
    幅語を維持する各ステップから成ることを特徴とする前
    記アドレス指定方法。
  12. 【請求項12】 メモリをアドレス指定する方法であっ
    て、 [データをアドレス指定するために用いるための所定の
    固定数のビットを有する固定幅の語を提供し、 アドレスフィールド及び置換フィールドを有する固定幅
    の語を定義し、 データのアドレスを画定する複数のビットを有するアド
    レスフィールドを定義し、 少なくとも一つの置換ビットを有する可変幅置換フィー
    ルドを定義し、 置換フィールドはアドレスフィールド及び置換フィール
    ドの間の終端マーカとして作用する少なくとも一つのビ
    ットを有しており、 置換フィールドを別個のアドレス指定ソースからの置換
    ビットを示すために使用し、 アドレスフィールドの幅と置換フィールドの幅を逆に変
    化させる一方、可変幅データをアドレス指定するための
    固定幅の語を維持する各ステップから成ることを特徴と
    する前記アドレス指定方法。
  13. 【請求項13】 メモリ内の可変幅データをアドレス指
    定するための方法であって、 所定幅であり部分語から成る語を有するメモリを設け、 アクセスされるべき部分語を少なくとも有効ビット調整
    に回転し、 アクセスされた語が部分語として認識されるように語の
    残りの部分を拡張し、語の残りの部分を復元し、 部分語が元の位置に復元されるまで語を回転する各ステ
    ップから成ることを特徴とする前記アドレス指定方法。
  14. 【請求項14】 セレクタと、 ハフマンコード化データを受取るための一対の入力レジ
    スタであり、その両方が入力を前記セレクタに並列に方
    向付ける前記レジスタと、 前記セレクタ及び他のROM表選択入力からの入力を受
    取るハフマン符号ROMであり、復号データ出力を提供
    する前記ROMとから成る並列ハフマンデコーダ。
  15. 【請求項15】 バスをRAMに接続するためのRAM
    インターフェースであって、 バスから複数のデータ語を受取り、受け取ったデータ語
    をバッファリングする手段と、 前記バスから前記複数のデータ語に付随するアドレスを
    受取る手段と、 RAM内にバッファリングされたデータ語が書き込まれ
    る一連のアドレスであり、該一連のアドレスは受け取っ
    たアドレスから導出される一連のアドレスを生成するた
    めの手段と、 前記バッファリングされたデータ語を生成されたアドレ
    スにおいてRAM内に書き込むための手段とから成るこ
    とを特徴とする前記RAMインターフェース。
  16. 【請求項16】 バスをRAMに接続するためのRAM
    インターフェースであって、 RAM内の所定のアドレスに記憶された複数のデータ語
    と、 バスから前記複数のデータ語に付随するRAMアドレス
    を受け取る手段と、 前記RAM内の前記複数のデータ語をアドレス指定する
    ための一連のRAMアドレスであって、受け取ったアド
    レスから導出される該一連のアドレスを生成するための
    手段と、 前記RAMから読み出されるデータ語をバッファリング
    するための手段と、 前記RAMから前記アドレス生成手段により生成された
    前記一連のRAMアドレスを使用して前記複数のデータ
    語を読み出し、前記データ語を前記バッファ手段に書き
    込む手段とから成ることを特徴とする前記RAMインタ
    ーフェース。
  17. 【請求項17】 フレームとして構成された符号化され
    たビデオデータのバッファリング制御するための方法で
    あって、 フレームの画面番号を判別し、 前記フレームの所望の提示番号を決定し、 前記画面番号が前記所望の提示番号上または以降である
    ときにバッファが使用可能であることをマークする各ス
    テップから成ることを特徴とする前記制御方法。
  18. 【請求項18】 データを変換するための装置であっ
    て、 第1のデータストリーム源を画定する第1のラッチ及び
    第2のデータストリーム源を画定する第2のラッチを有
    し、 前記第1及び前記第2のラッチは演算ユニットと通信
    し、 前記演算ユニットはデータを転置装置に供給し、 前記転置装置は前記データを転置して前記第2のラッチ
    に供給し、 前記第2のラッチはデータを吸収するように配置されて
    おり、 前記第2のラッチ及び前記第1のラッチは前記第1及び
    第2のデータストリームを前記演算ユニットにインター
    リーブした状態で供給し、更に前記インターリーブされ
    た供給において前記第2のラッチは前記第1のラッチか
    らの供給に割り込まないことが画定されており、 これによって前記第1及び前記第2のデータストリーム
    のために共通の演算ユニットが使用されることを特徴と
    する前記データ変換装置。
  19. 【請求項19】 共通の演算ユニットを使用してデータ
    を変換するための処理方法であって、 データを第1のラッチにロードし、所定のサイクル数に
    達したときにはデータを演算ユニットに送出し、第1の
    マーカービットを制御シフトレジスタにロードし、 データを第2のラッチにロードし、第2のラッチはデー
    タを吸収するように成されており、 第1の制御シフトレジスタが所定の状態に達し、第2の
    ラッチが所定の量のデータで満たされたときには第2の
    ラッチ内のデータを演算ユニット送出し、 第2のラッチが所定の量のデータで満たされていなけれ
    ば第2のラッチからデータ送出せず、 第1のラッチがデータを受け取らないときには第2のラ
    ッチを回復させる各ステップから成ることを特徴とする
    前記処理方法。
  20. 【請求項20】 少なくとも2つのメモリアレイと、 前記メモリアレイと通信し前記メモリアレイへのデータ
    入力を制御する書き込み制御回路と、 前記メモリアレイと通信し、前記メモリアレイへのデー
    タ入力を制御する読み出し制御回路と、 前記メモリアレイと通信し、前記メモリアレイからのデ
    ータ出力を制御する制御回路とから成り、 前記書き込み制御回路及び前記読み出し制御回路は前記
    メモリアレイの同期した制御を可能にするため通信する
    ことを特徴とするスイングバッファ装置。
  21. 【請求項21】 メモリ内のセルを同期してアクセスす
    る方法であって、 少なくとも一対のセルを復号するデコーダを使用し、 セルの一つを読み取り、他のセルに書き込む各ステップ
    から成ることを特徴とする前記アクセス方法。
  22. 【請求項22】 ビデオ情報を記憶するための方法であ
    って、 ビデオ情報をIフレーム、Pフレーム、B1フレーム及
    びB2フレームのかたちで提供し、 Iフレームを第1のフレーム記憶装置に記憶し、Pフレ
    ームを第2のフレーム記憶装置に記憶し、第1の及び第
    2のフィールド記憶装置を有する第3の記憶装置を提供
    し、第1及び第2のフィールドはそれぞれ少なくとも2
    つのメモリ領域に分割されており、 メモリ領域の選択された部分からのB1フレームを第1
    または第2のフィールド記憶装置に記憶し、B2フレー
    ムの一部分をメモリ領域のフレームB1が読み出された
    選択された部分に書き込み、 これによってビデオ情報を記憶するためにより少ないメ
    モリを使用することが可能であることを特徴とする前記
    ビデオ情報記憶方法。
  23. 【請求項23】 「無頓着な」処理のためのメモリであ
    って、 一組のメモリアドレスライン、反転アドレスライン及び
    データラインから成り、前記アドレスライン及び反転ア
    ドレスラインはデータ語の形でアドレス指定された情報
    にアクセスするための復号フォーマットに従って接続さ
    れており、データライン上の「無頓着な」アドレス位置
    はアドレスライン及び前記反転アドレスラインとは接続
    されないことを特徴とする前記メモリ。
  24. 【請求項24】 二次元画像に関連するデータ語を記憶
    し、読み出すダイナミック・ランダム・アクセスメモリ
    (DRAM)にアクセスする方法であり、DRAMは二
    つの別個のバンクを有し、各バンクはデータ語を読み出
    し書き込むためにページ・モードで動作可能であり、二
    次元画像はセルの二次元格子パターンとして構成されて
    おり、各セルは画素のMXNマトリクスを含み、各セル
    に関連する語はバンクの1ページまたはそれ以下を占め
    る前記方法であって、 (a)各セルに二つのバンクの内の特定の一つを割当
    て、その特定のセルに関連する全てのデータ語がその特
    定のバンクの特定の1ページから読み出され書き込まれ
    るようにし、セルへのバンクの割当は各セルがそれらも
    同一の行または同一の列にある境界セルとは異なるバン
    クに関係づけられるように成されるステップと、 (b)画素のマトリクスから構成され、二次元格子パタ
    ーンとは整列されていないけれども、二次元格子パター
    ン内のセル内の画素と整列されているセルに関連するデ
    ータ語を読み取るステップとから成ることを特徴とする
    前記アクセス方法。
  25. 【請求項25】 二次元画像に関連するデータ語を記憶
    し読み出すダイナミック・ランダム・アクセスメモリ
    (DRAM)にアクセスする方法であり、DRAMは二
    つの別個のバンクを有し、各バンクはデータ語、各セル
    が画素のM×Nマトリクスを含むセルの二次元格子パタ
    ーン、バンクの1ページまたはそれ以下を占める各セル
    に関連する語を書き込み読み出すためにページ・モード
    で動作可能である前記アクセス方法であって、 (a)各セルに二つのバンクの内の特定の一つを割当
    て、その特定のセルに関連する全てのデータ語がその特
    定のバンクの特定の1ページから読み出され書き込まれ
    るようにし、セルへのバンクの割当はそれらもまた同一
    の行または同一の列にある境界セルとは異なるバンクに
    関連づけられるように行われるステップと、 (b)画素のM×Nマトリクスから構成され、二次元格
    子パターンと整列されていないけれども、二次元格子パ
    ターン内のセル内の画素と整列されているセルに関連す
    るデータ語を読み出すステップとから成ることを特徴と
    する前記アクセス方法。
  26. 【請求項26】 前記DRAMは第1及び第2のバンク
    を含み、非整列セルに関連するデータ語を読み出すステ
    ップ(b)は、 (c)DRAMの第1のバンクから、非整列セルに関連
    するデータ語を含む格子パターン内のセルの一つに関連
    するデータ語を読み出し、 (d)DRAMの第2のバンクから、非整列セルに関連
    するデータ語を含む格子パターン内の他のセルに関連す
    るデータ語を読み出し、 (e)非整列セルに関連するデータ語の全てが読み出さ
    れるまでステップ(c)、(d)を繰り返す各ステップ
    を含むことを特徴とする請求項63に記載の方法。
  27. 【請求項27】 RAMからRAMの所定の固定バース
    ト長Nより小なる数Mの語にアクセスする方法であり、
    RAMはRAMからの読み出しおよびRAMへの書き込
    みを選択的に可能化し不可能化する可能化ラインを含ん
    でいる前記方法であって、 RAMから読み出しまたはRAMに書き込むべきN語を
    指定し、 Nより小なる数Mの語がRAMから読み出されたかまた
    はRAMに書き込まれたことを判別し、 M語がRAMから読み出されたかまたはRAMに書き込
    まれたことが判別されたときにRAMを不可能化する各
    ステップから成ることを特徴とする前記アクセス方法。
  28. 【請求項28】 RAMからRAMの所定の固定バース
    ト長Nより小なる数Mの語を読み出す方法であり、RA
    MはRAMからの読み出しを選択的に可能化しまた不可
    能化する可能化ラインを含んでいる前記読み出し方法で
    あって、 RAMから読み出すべきN語を指定し、 Nより小なるM語がRAMから読み出されたことを判別
    し、 RAMからM語が読み出されたことが判別されたときに
    RAMを不可能化する各ステップから成ることを特徴と
    する前記読み出し方法。
  29. 【請求項29】 所定の固定バースト長Nより小なる数
    Mの語をRAMに書き込む方法であって、RAMはRA
    Mへの書き込みを選択的に可能化しまた不可能化する可
    能化ラインを含む前記書き込み方法であって、 RAMに書き込むべきN語を指定し、 RAMにNより小なるM語が書き込まれたことを判別
    し、 RAMにM語が書き込まれたことが判別されたときにR
    AMを不可能化する各ステップから成ることを特徴とす
    る前記書き込み方法。
JP7224473A 1994-07-29 1995-07-28 Mpeg信号復号方法及び装置 Pending JPH08172624A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB9415413A GB9415413D0 (en) 1994-07-29 1994-07-29 Method and apparatus for video decompression
GB9415413.5 1994-07-29
GB9511569A GB2293076B (en) 1994-07-29 1995-06-07 Time synchronisation in a multiplexed data stream
GB9511569.7 1995-06-07

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2000226091A Division JP2001168728A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置
JP2000226090A Division JP2001094437A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置

Publications (1)

Publication Number Publication Date
JPH08172624A true JPH08172624A (ja) 1996-07-02

Family

ID=26305370

Family Applications (3)

Application Number Title Priority Date Filing Date
JP7224473A Pending JPH08172624A (ja) 1994-07-29 1995-07-28 Mpeg信号復号方法及び装置
JP2000226091A Pending JP2001168728A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置
JP2000226090A Pending JP2001094437A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2000226091A Pending JP2001168728A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置
JP2000226090A Pending JP2001094437A (ja) 1994-07-29 2000-06-21 Mpeg信号復号方法及び装置

Country Status (8)

Country Link
US (16) US5703793A (ja)
EP (8) EP0695095A3 (ja)
JP (3) JPH08172624A (ja)
CN (1) CN1144434A (ja)
AU (3) AU701335C (ja)
CA (1) CA2154962A1 (ja)
MX (1) MXPA99001886A (ja)
SG (1) SG108204A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009099256A (ja) * 2003-07-03 2009-05-07 Panasonic Corp 記録媒体,記録方法
USRE48845E1 (en) 2002-04-01 2021-12-07 Broadcom Corporation Video decoding system supporting multiple standards

Families Citing this family (403)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7168084B1 (en) 1992-12-09 2007-01-23 Sedna Patent Services, Llc Method and apparatus for targeting virtual objects
US9286294B2 (en) 1992-12-09 2016-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content suggestion engine
CA2145365C (en) 1994-03-24 1999-04-27 Anthony M. Jones Method for accessing banks of dram
US5703793A (en) * 1994-07-29 1997-12-30 Discovision Associates Video decompression
DE19524688C1 (de) * 1995-07-06 1997-01-23 Siemens Ag Verfahren zur Dekodierung und Kodierung eines komprimierten Videodatenstroms mit reduziertem Speicherbedarf
JPH09168150A (ja) * 1995-10-09 1997-06-24 Fujitsu Ltd 固定長セル取扱式画像通信方法並びに固定長セル取扱式画像通信用送信装置及び固定長セル取扱式画像通信用受信装置
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
JP3063859B2 (ja) * 1996-01-08 2000-07-12 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン マルチメディア・ファイルを配信する方法およびファイル・サーバ
US6678311B2 (en) 1996-05-28 2004-01-13 Qualcomm Incorporated High data CDMA wireless communication system using variable sized channel codes
JP2888288B2 (ja) * 1996-10-03 1999-05-10 日本電気株式会社 画像符号化装置
EP0837474B1 (en) * 1996-10-17 2005-02-02 STMicroelectronics S.r.l. Method for optimising a memory cell matrix for a semiconductor integrated microcontroller
US5898897A (en) * 1996-10-18 1999-04-27 Samsung Electronics Company, Ltd. Bit stream signal feature detection in a signal processing system
US5889515A (en) * 1996-12-09 1999-03-30 Stmicroelectronics, Inc. Rendering an audio-visual stream synchronized by a software clock in a personal computer
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
JPH10257488A (ja) 1997-03-12 1998-09-25 Oki Data:Kk 画像符号化装置および画像復号化装置
JPH10290464A (ja) * 1997-04-14 1998-10-27 Kokusai Denshin Denwa Co Ltd <Kdd> 符号化モード判定装置
US5883907A (en) * 1997-05-01 1999-03-16 Motorola, Inc. Asymmetrical digital subscriber line (ADSL) block encoder circuit and method of operation
US6101195A (en) * 1997-05-28 2000-08-08 Sarnoff Corporation Timing correction method and apparatus
JPH1172541A (ja) * 1997-06-10 1999-03-16 Altera Corp プログラマブル集積回路を構成する方法、プログラマブル集積回路、jtag回路の使用、およびjtag命令レジスタに入力される命令の使用
US8686549B2 (en) * 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6363511B1 (en) 1998-03-31 2002-03-26 Stmicroelectronics N.V. Device and method for decoding data streams from storage media
US6260169B1 (en) * 1998-03-31 2001-07-10 Stmicroelectronics N.V. Device and method for real time correction of row data from DVD media
US6904174B1 (en) * 1998-12-11 2005-06-07 Intel Corporation Simplified predictive video encoder
US6408029B1 (en) 1998-04-02 2002-06-18 Intel Corporation Method and apparatus for simplifying real-time data encoding
US7046734B2 (en) * 1998-04-02 2006-05-16 Intel Corporation Method and apparatus for performing real-time data encoding
US6279156B1 (en) * 1999-01-26 2001-08-21 Dell Usa, L.P. Method of installing software on and/or testing a computer system
US6370273B1 (en) * 1998-04-10 2002-04-09 Flashpoint Technology, Inc. Method and system for tiled image data decompression
JP3965539B2 (ja) * 1998-04-23 2007-08-29 ソニー株式会社 デジタル画像復号装置及び方法、並びに記録媒体
KR100268480B1 (ko) * 1998-06-05 2000-10-16 윤종용 포맷컨버터 모듈을 갖는 영상표시기기
US6408002B1 (en) * 1998-06-24 2002-06-18 Fujitsu Siemens Computers Llc Torus routing element error handling and self-clearing with missing or extraneous control code feature
US9924234B2 (en) 1998-07-23 2018-03-20 Comcast Ip Holdings I, Llc Data structure and methods for providing an interactive program
BR9912385A (pt) 1998-07-23 2002-01-15 Diva Systems Corp Interface de usuário gerada em um extremo de cabeça, guia de programa interativo, e, processos de geração e distribuição de uma interface de usuário, e de interação com um guia de programa interativo
US6754905B2 (en) 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
PL346276A1 (en) * 1998-08-27 2002-01-28 Ibm System for embedding additional information in video data, and embedding method
US6952823B2 (en) * 1998-09-01 2005-10-04 Pkware, Inc. Software patch generator using compression techniques
US6141743A (en) * 1998-09-17 2000-10-31 Advanced Micro Devices, Inc. Token-based storage for general purpose processing
US6192148B1 (en) * 1998-11-05 2001-02-20 Winbond Electronics Corp. Method for determining to skip macroblocks in encoding video
JP3619456B2 (ja) * 1998-11-26 2005-02-09 松下電器産業株式会社 演算装置およびこれを用いた画像処理装置
KR100668998B1 (ko) * 1998-12-02 2007-01-17 코닌클리케 필립스 일렉트로닉스 엔.브이. 실시간 신호를 발생시키기 위한 시스템과 방법
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US7051309B1 (en) * 1999-02-16 2006-05-23 Crosetto Dario B Implementation of fast data processing with mixed-signal and purely digital 3D-flow processing boars
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6754271B1 (en) 1999-04-15 2004-06-22 Diva Systems Corporation Temporal slice persistence method and apparatus for delivery of interactive program guide
US6904610B1 (en) 1999-04-15 2005-06-07 Sedna Patent Services, Llc Server-centric customized interactive program guide in an interactive television environment
US7096487B1 (en) 1999-10-27 2006-08-22 Sedna Patent Services, Llc Apparatus and method for combining realtime and non-realtime encoded content
US8230411B1 (en) * 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
FI110743B (fi) 1999-06-28 2003-03-14 Valtion Teknillinen Menetelmä ja järjestelmä liike-estimoinnin suorittamiseksi
CN1169374C (zh) 1999-09-21 2004-09-29 皇家菲利浦电子有限公司 时钟恢复
CA2388606C (en) 1999-10-27 2009-12-29 Diva Systems Corporation Picture-in-picture and multiple video streams using slice-based encoding
US6318156B1 (en) * 1999-10-28 2001-11-20 Micro Motion, Inc. Multiphase flow measurement system
US6411301B1 (en) 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6452600B1 (en) 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
FR2801463B1 (fr) 1999-11-23 2002-04-12 St Microelectronics Sa Procede et systeme de traitement d'images numeriques
US6498571B2 (en) 1999-12-09 2002-12-24 Luxxon Corporation Multiple stream variable length encoder and decoder
US8037193B2 (en) * 1999-12-24 2011-10-11 Telstra Corporation Limited Virtual token
US20030191876A1 (en) 2000-02-03 2003-10-09 Fallon James J. Data storewidth accelerator
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
WO2001063940A1 (en) * 2000-02-23 2001-08-30 Koninklijke Philips Electronics N.V. Method, transmitter and transmission system
US20060143180A1 (en) * 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US8959582B2 (en) 2000-03-09 2015-02-17 Pkware, Inc. System and method for manipulating and managing computer archive files
US20060143199A1 (en) * 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US20060143237A1 (en) * 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US20060143253A1 (en) * 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US20050015608A1 (en) * 2003-07-16 2005-01-20 Pkware, Inc. Method for strongly encrypting .ZIP files
US20060143249A1 (en) * 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US6879988B2 (en) * 2000-03-09 2005-04-12 Pkware System and method for manipulating and managing computer archive files
US8230482B2 (en) 2000-03-09 2012-07-24 Pkware, Inc. System and method for manipulating and managing computer archive files
US20060173847A1 (en) * 2000-03-09 2006-08-03 Pkware, Inc. System and method for manipulating and managing computer archive files
US20060155788A1 (en) * 2000-03-09 2006-07-13 Pkware, Inc. System and method for manipulating and managing computer archive files
US7844579B2 (en) * 2000-03-09 2010-11-30 Pkware, Inc. System and method for manipulating and managing computer archive files
FR2806574B1 (fr) * 2000-03-15 2002-05-03 Thomson Multimedia Sa Dispositif de synchronisation d'applications interactives dans un recepteur de television
US6687384B1 (en) * 2000-03-27 2004-02-03 Sarnoff Corporation Method and apparatus for embedding data in encoded digital bitstreams
US6859862B1 (en) 2000-04-07 2005-02-22 Nintendo Co., Ltd. Method and apparatus for software management of on-chip cache
US6857061B1 (en) 2000-04-07 2005-02-15 Nintendo Co., Ltd. Method and apparatus for obtaining a scalar value directly from a vector register
KR100731708B1 (ko) * 2000-05-09 2007-06-25 소니 가부시끼 가이샤 데이터 처리 장치와 데이터 처리 방법, 및 기록 매체
US7395209B1 (en) * 2000-05-12 2008-07-01 Cirrus Logic, Inc. Fixed point audio decoding system and method
US7119813B1 (en) 2000-06-02 2006-10-10 Nintendo Co., Ltd. Variable bit field encoding
US6896159B2 (en) 2000-06-08 2005-05-24 Beverage Works, Inc. Beverage dispensing apparatus having fluid director
US6751525B1 (en) 2000-06-08 2004-06-15 Beverage Works, Inc. Beverage distribution and dispensing system and method
US7083071B1 (en) 2000-06-08 2006-08-01 Beverage Works, Inc. Drink supply canister for beverage dispensing apparatus
US7004355B1 (en) 2000-06-08 2006-02-28 Beverage Works, Inc. Beverage dispensing apparatus having drink supply canister holder
US6799085B1 (en) * 2000-06-08 2004-09-28 Beverage Works, Inc. Appliance supply distribution, dispensing and use system method
US7754025B1 (en) 2000-06-08 2010-07-13 Beverage Works, Inc. Dishwasher having a door supply housing which holds dish washing supply for multiple wash cycles
JP2004506261A (ja) 2000-06-13 2004-02-26 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト パイプラインctプロトコルおよびct通信
US6791555B1 (en) 2000-06-23 2004-09-14 Micron Technology, Inc. Apparatus and method for distributed memory control in a graphics processing system
US7184059B1 (en) 2000-08-23 2007-02-27 Nintendo Co., Ltd. Graphics system with copy out conversions between embedded frame buffer and main memory
US7134960B1 (en) * 2000-08-23 2006-11-14 Nintendo Co., Ltd. External interfaces for a 3D graphics system
US6639595B1 (en) 2000-08-23 2003-10-28 Nintendo Co., Ltd. Achromatic lighting in a graphics system and method
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US7196710B1 (en) 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6999100B1 (en) 2000-08-23 2006-02-14 Nintendo Co., Ltd. Method and apparatus for anti-aliasing in a graphics system
US7061502B1 (en) 2000-08-23 2006-06-13 Nintendo Co., Ltd. Method and apparatus for providing logical combination of N alpha operations within a graphics system
US7002591B1 (en) 2000-08-23 2006-02-21 Nintendo Co., Ltd. Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system
US7538772B1 (en) 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6580430B1 (en) 2000-08-23 2003-06-17 Nintendo Co., Ltd. Method and apparatus for providing improved fog effects in a graphics system
US6664958B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Z-texturing
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US6980218B1 (en) 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US6664962B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Shadow mapping in a low cost graphics system
US7034828B1 (en) 2000-08-23 2006-04-25 Nintendo Co., Ltd. Recirculating shade tree blender for a graphics system
US7576748B2 (en) 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US6937245B1 (en) 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US6867781B1 (en) 2000-08-23 2005-03-15 Nintendo Co., Ltd. Graphics pipeline token synchronization
US6606689B1 (en) 2000-08-23 2003-08-12 Nintendo Co., Ltd. Method and apparatus for pre-caching data in audio memory
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
US6609977B1 (en) 2000-08-23 2003-08-26 Nintendo Co., Ltd. External interfaces for a 3D graphics system
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
US7417568B2 (en) 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
JP3489676B2 (ja) * 2000-10-16 2004-01-26 日本電気株式会社 画像表示装置およびその駆動方法
US6697074B2 (en) 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
US20020073136A1 (en) * 2000-12-07 2002-06-13 Tomoaki Itoh Data reproduction method, data receiving terminal and data receiving method
US6879725B2 (en) * 2001-01-26 2005-04-12 International Business Machine Corporation Method, system, and program for decoding a section from compressed data
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US6901422B1 (en) 2001-03-21 2005-05-31 Apple Computer, Inc. Matrix multiplication in a vector processing system
US6922441B2 (en) * 2001-05-11 2005-07-26 International Business Machines Corporation Method for performing integer divides without propagation of truncation error
US7385949B1 (en) 2001-06-05 2008-06-10 Broadcom Corporation System and method for de-interleaving data in a wireless receiver
KR100410554B1 (ko) * 2001-07-13 2003-12-18 삼성전자주식회사 반도체 메모리 장치에서의 패키지 맵 정보 출력방법 및그에 따른 회로
KR20030010233A (ko) * 2001-07-26 2003-02-05 주식회사 글로네트 다기능 텔레비전 수상기
US20030021486A1 (en) * 2001-07-27 2003-01-30 Tinku Acharya Method and apparatus for image scaling
JP4042364B2 (ja) * 2001-07-27 2008-02-06 日本電気株式会社 アドレス生成回路、選択判断回路
US7908628B2 (en) 2001-08-03 2011-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content coding and formatting
US7793326B2 (en) 2001-08-03 2010-09-07 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7003588B1 (en) 2001-08-22 2006-02-21 Nintendo Co., Ltd. Peripheral devices for a video game system
KR100448282B1 (ko) * 2001-08-30 2004-09-10 주식회사 대우일렉트로닉스 가중치 블록을 이용한 균형 부호화 및 복호화 방법
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
EP1388792A1 (en) * 2001-09-05 2004-02-11 Matsushita Electric Industrial Co., Ltd. Synchronization message processing method
US8686475B2 (en) * 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
JP2003099250A (ja) * 2001-09-20 2003-04-04 Oki Electric Ind Co Ltd レジスタ読み出し回路及びマイクロプロセッサ
US7463544B1 (en) 2001-10-15 2008-12-09 Altera Corporation Device programmable to operate as a multiplexer, demultiplexer, or memory device
EP1413139B1 (en) * 2001-11-22 2011-10-12 Panasonic Corporation Variable length coding method and variable length decoding method
US20030101312A1 (en) * 2001-11-26 2003-05-29 Doan Trung T. Machine state storage apparatus and method
US7089541B2 (en) * 2001-11-30 2006-08-08 Sun Microsystems, Inc. Modular parser architecture with mini parsers
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US6879523B1 (en) * 2001-12-27 2005-04-12 Cypress Semiconductor Corporation Random access memory (RAM) method of operation and device for search engine systems
WO2003060747A2 (de) 2002-01-19 2003-07-24 Pact Xpp Technologies Ag Reconfigurierbarer prozessor
US7113886B2 (en) * 2002-01-23 2006-09-26 Credence Systems Corporation Circuit and method for distributing events in an event stream
US6768684B2 (en) * 2002-01-25 2004-07-27 Sun Microsystems, Inc. System and method for small read only data
DE10208715B4 (de) * 2002-02-28 2004-05-06 Infineon Technologies Ag Latenz-Zeitschalter für ein S-DRAM
US20110161977A1 (en) * 2002-03-21 2011-06-30 Martin Vorbach Method and device for data processing
WO2004088502A2 (de) * 2003-04-04 2004-10-14 Pact Xpp Technologies Ag Verfahren und vorrichtung für die datenverarbeitung
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US8401084B2 (en) * 2002-04-01 2013-03-19 Broadcom Corporation System and method for multi-row decoding of video with dependent rows
JP3783645B2 (ja) * 2002-04-05 2006-06-07 株式会社日立製作所 コントラスト調整方法、コントラスト調整回路及びそれを用いた映像表示装置
KR100495657B1 (ko) * 2002-05-03 2005-06-16 삼성전자주식회사 복수의 통신 모드들을 갖는 집적 회로 장치 및 그것의동작 방법
US7073099B1 (en) 2002-05-30 2006-07-04 Marvell International Ltd. Method and apparatus for improving memory operation and yield
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
FI116813B (fi) * 2002-06-20 2006-02-28 Nokia Corp Menetelmä ja järjestelmä vaihtuvapituisen koodauksen purkamiseksi, ja koodisanojen paikannuslaite
CN1565031B (zh) 2002-06-28 2010-09-29 Lg电子株式会社 一种用于管理多个路径数据的记录和再现的方法及装置
CA2459070C (en) * 2002-06-28 2013-10-22 Lg Electronics Inc. Recording medium having data structure for managing reproduction of multiple playback path video data recorded thereon and recording and reproducing methods and apparatuses
US7200024B2 (en) 2002-08-02 2007-04-03 Micron Technology, Inc. System and method for optically interconnecting memory devices
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US7254331B2 (en) 2002-08-09 2007-08-07 Micron Technology, Inc. System and method for multiple bit optical data transmission in memory systems
US7149874B2 (en) 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
WO2004038599A1 (de) 2002-09-06 2004-05-06 Pact Xpp Technologies Ag Rekonfigurierbare sequenzerstruktur
US7102907B2 (en) 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US7533402B2 (en) 2002-09-30 2009-05-12 Broadcom Corporation Satellite set-top box decoder for simultaneously servicing multiple independent programs for display on independent display device
US7230987B2 (en) * 2002-09-30 2007-06-12 Broadcom Corporation Multiple time-base clock for processing multiple satellite signals
US7336268B1 (en) * 2002-10-30 2008-02-26 National Semiconductor Corporation Point-to-point display system having configurable connections
KR100498233B1 (ko) * 2002-10-31 2005-07-01 한국전자통신연구원 선입선출 메모리 회로 및 그 구현 방법
KR100583570B1 (ko) * 2002-11-22 2006-05-26 엘지전자 주식회사 기록된 다중 재생 경로 비디오 데이터의 재생을 관리하기위한 데이터 구조를 갖는 기록 매체와 그에 따른 기록 및재생 방법 및 장치
AU2003283636A1 (en) * 2002-12-04 2004-06-23 Koninklijke Philips Electronics N.V. Method and apparatus for selecting particular decoder based on bitstream format detection
KR100469278B1 (ko) * 2002-12-26 2005-02-02 엘지전자 주식회사 Dtv 시스템의 디코더 asic
JP3938054B2 (ja) * 2003-01-17 2007-06-27 セイコーエプソン株式会社 画像データ構造を有するデータが記録されたコンピュータ読み取り可能な記憶媒体、画像記録方法、装置及びプログラム
JP4140709B2 (ja) * 2003-02-05 2008-08-27 松下電器産業株式会社 画像信号再生装置および画像信号再生方法
DE10304911B4 (de) * 2003-02-06 2014-10-09 Heinz Lindenmeier Kombinationsantennenanordnung für mehrere Funkdienste für Fahrzeuge
TWI228932B (en) * 2003-02-11 2005-03-01 Ind Tech Res Inst Encoding and decoding method of recording medium
EP1593047A4 (en) * 2003-02-13 2010-06-09 Nokia Corp METHOD OF SIGNALING STREAMING QUALITY ADAPTATION AND CONTROL MCHANISMS IN MULTIMEDIA STREAMING
US7283591B2 (en) * 2003-03-28 2007-10-16 Tarari, Inc. Parallelized dynamic Huffman decoder
US7702878B2 (en) * 2004-03-19 2010-04-20 Broadcom Corporation Method and system for scalable video data width
AU2003241829A1 (en) * 2003-05-28 2005-01-21 Fujitsu Limited Time manager and time management method
US7756288B2 (en) * 2003-05-29 2010-07-13 Jeffrey Lubin Method and apparatus for analog insertion of low frequency watermarks
US7245145B2 (en) 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7107415B2 (en) 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
US7428644B2 (en) 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US20040264564A1 (en) * 2003-06-26 2004-12-30 Senger Michael D. System and method for efficiently using video encoding resources
US7389364B2 (en) 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US10613817B2 (en) 2003-07-28 2020-04-07 Sonos, Inc. Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US8020023B2 (en) 2003-07-28 2011-09-13 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices without a voltage controlled crystal oscillator
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US7210059B2 (en) 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7091967B2 (en) * 2003-09-01 2006-08-15 Realtek Semiconductor Corp. Apparatus and method for image frame synchronization
US7310752B2 (en) 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
KR100532471B1 (ko) * 2003-09-26 2005-12-01 삼성전자주식회사 입출력 데이터 위스 조절이 가능한 메모리 장치 및 그위스 조절 방법
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7234070B2 (en) 2003-10-27 2007-06-19 Micron Technology, Inc. System and method for using a learning sequence to establish communications on a high-speed nonsynchronous interface in the absence of clock forwarding
KR101102639B1 (ko) * 2003-11-12 2012-01-04 파나소닉 주식회사 기록매체, 재생장치 및 방법, 기록방법, 및 컴퓨터-판독가능한 기록매체
US6903668B1 (en) * 2003-11-18 2005-06-07 M-Systems Flash Disk Pioneers Ltd. Decompression accelerator for flash memory
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US6956511B2 (en) * 2004-01-06 2005-10-18 Sharp Laboratories Of America, Inc. Multi-symbol/coefficient decode operation for Huffman codes
US6988237B1 (en) 2004-01-06 2006-01-17 Marvell Semiconductor Israel Ltd. Error-correction memory architecture for testing production errors
KR100640885B1 (ko) * 2004-01-27 2006-11-02 엘지전자 주식회사 듀얼 비디오 디코딩을 위한 비디오 버퍼 제어 장치
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US8023564B2 (en) * 2004-02-04 2011-09-20 Broadcom Corporaiton System and method for providing data starting from start codes aligned with byte boundaries in multiple byte words
US7181584B2 (en) 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7412574B2 (en) 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US20050175027A1 (en) * 2004-02-09 2005-08-11 Phonex Broadband Corporation System and method for requesting and granting access to a network channel
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
KR101138059B1 (ko) * 2004-03-15 2012-04-23 톰슨 라이센싱 효과적인 영상 리샘플링 방법 및 시스템
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7447240B2 (en) 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US7213082B2 (en) 2004-03-29 2007-05-01 Micron Technology, Inc. Memory hub and method for providing memory sequencing hints
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7162567B2 (en) 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US8024055B1 (en) 2004-05-15 2011-09-20 Sonos, Inc. Method and system for controlling amplifiers
US7222213B2 (en) 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US7693797B2 (en) * 2004-06-21 2010-04-06 Nokia Corporation Transaction and payment system security remote authentication/validation of transactions from a transaction provider
US7426651B2 (en) * 2004-07-19 2008-09-16 Sony Corporation System and method for encoding independent clock using communication system reference clock
EP1622009A1 (en) * 2004-07-27 2006-02-01 Texas Instruments Incorporated JSM architecture and systems
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US7132963B2 (en) * 2004-09-13 2006-11-07 Ati Technologies Inc. Methods and apparatus for processing variable length coded data
US20060119557A1 (en) * 2004-12-03 2006-06-08 Toppoly Optoelectronics Corporation System and method for driving an LCD
KR100666880B1 (ko) * 2005-01-14 2007-01-10 삼성전자주식회사 듀얼 비디오 디코딩 시스템 및 방법
US20060176959A1 (en) * 2005-02-07 2006-08-10 Paul Lu Method and system for encoding variable length code (VLC) in a microprocessor
US20060176960A1 (en) * 2005-02-07 2006-08-10 Paul Lu Method and system for decoding variable length code (VLC) in a microprocessor
US7482954B1 (en) * 2005-02-25 2009-01-27 Xilinx, Inc. Bitstream compression for a programmable device
US7483173B2 (en) * 2005-03-10 2009-01-27 Kabushiki Kaisha Toshiba Data processor having a synchronizing function of a plurality of chips
CN100539437C (zh) * 2005-07-29 2009-09-09 上海杰得微电子有限公司 一种音频编解码器的实现方法
GB2431800A (en) * 2005-10-31 2007-05-02 Sony Uk Ltd Interpolation involving motion vectors and mutiple tap spatial filters.
US20070116117A1 (en) * 2005-11-18 2007-05-24 Apple Computer, Inc. Controlling buffer states in video compression coding to enable editing and distributed encoding
US8780997B2 (en) * 2005-11-18 2014-07-15 Apple Inc. Regulation of decode-side processing based on perceptual masking
US8233535B2 (en) 2005-11-18 2012-07-31 Apple Inc. Region-based processing of predicted pixels
US8295343B2 (en) 2005-11-18 2012-10-23 Apple Inc. Video bit rate control method
US8031777B2 (en) * 2005-11-18 2011-10-04 Apple Inc. Multipass video encoding and rate control using subsampling of frames
US20070162531A1 (en) * 2006-01-12 2007-07-12 Bhaskar Kota Flow transform for integrated circuit design and simulation having combined data flow, control flow, and memory flow views
WO2007082730A1 (de) * 2006-01-18 2007-07-26 Pact Xpp Technologies Ag Hardwaredefinitionsverfahren
TWI299133B (en) 2006-01-23 2008-07-21 Realtek Semiconductor Corp Webcasting system and audio regulating methods therefor
TWI305479B (en) * 2006-02-13 2009-01-11 Advanced Semiconductor Eng Method of fabricating substrate with embedded component therein
US8525842B1 (en) * 2006-06-16 2013-09-03 Nvidia Corporation System and method for utilizing semaphores in a graphics pipeline
TWI453751B (zh) * 2006-08-04 2014-09-21 Marvell World Trade Ltd 具有誤差修正功能之完全緩衝式雙直列記憶體模組
KR100792431B1 (ko) * 2006-08-31 2008-01-10 주식회사 하이닉스반도체 반도체 메모리 장치
US12167216B2 (en) 2006-09-12 2024-12-10 Sonos, Inc. Playback device pairing
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US20080103875A1 (en) * 2006-10-31 2008-05-01 Michael Kokernak Methods and systems for an interactive data finder
US7817470B2 (en) * 2006-11-27 2010-10-19 Mosaid Technologies Incorporated Non-volatile memory serial core architecture
JP4453697B2 (ja) * 2006-12-15 2010-04-21 ソニー株式会社 演算処理装置、および演算処理制御方法、並びにコンピュータ・プログラム
US20080167992A1 (en) * 2007-01-05 2008-07-10 Backchannelmedia Inc. Methods and systems for an accountable media advertising application
US8347019B2 (en) * 2007-01-26 2013-01-01 International Business Machines Corporation Structure for hardware assisted bus state transition circuit using content addressable memories
US9597019B2 (en) * 2007-02-09 2017-03-21 Lifescan, Inc. Method of ensuring date and time on a test meter is accurate
KR100839504B1 (ko) * 2007-02-23 2008-06-19 삼성전자주식회사 이미지를 디코딩하는 방법, 이를 수행하는 이미지 디코더및 이를 포함하는 모바일 장치
US20080282072A1 (en) * 2007-05-08 2008-11-13 Leonard Todd E Executing Software Within Real-Time Hardware Constraints Using Functionally Programmable Branch Table
JP5040427B2 (ja) * 2007-05-11 2012-10-03 ソニー株式会社 データ処理方法、データ処理装置、固体撮像装置、撮像装置、電子機器
EP2188979A2 (en) * 2007-09-10 2010-05-26 Nxp B.V. Method and apparatus for motion estimation in video image data
US20090080538A1 (en) * 2007-09-20 2009-03-26 Aten International Co., Ltd. Method and Apparatus for Decoding a Video Signal
KR101372418B1 (ko) * 2007-10-19 2014-03-12 (주)휴맥스 비트스트림 디코딩 장치 및 방법
WO2009062496A1 (de) * 2007-11-17 2009-05-22 Pact Xpp Technologies Ag Rekonfiguri erbare fliesskomma- und bit- ebenen datenverarbeitungseinheit
US7760135B2 (en) * 2007-11-27 2010-07-20 Lockheed Martin Corporation Robust pulse deinterleaving
US20110173596A1 (en) * 2007-11-28 2011-07-14 Martin Vorbach Method for facilitating compilation of high-level code for varying architectures
EP2235627A1 (en) * 2007-12-07 2010-10-06 Krass, Maren Using function calls as compiler directives
US8051455B2 (en) * 2007-12-12 2011-11-01 Backchannelmedia Inc. Systems and methods for providing a token registry and encoder
JP4536109B2 (ja) * 2007-12-26 2010-09-01 富士通株式会社 半導体装置および信号処理方法
CN101593095B (zh) 2008-05-28 2013-03-13 国际商业机器公司 基于流水级的数据处理方法和系统
KR101649493B1 (ko) * 2008-09-18 2016-08-19 삼성전자주식회사 Crc 길이의 가상 확장 방법 및 장치
US20100098074A1 (en) * 2008-10-22 2010-04-22 Backchannelmedia Inc. Systems and methods for providing a network link between broadcast content and content located on a computer network
US9094721B2 (en) 2008-10-22 2015-07-28 Rakuten, Inc. Systems and methods for providing a network link between broadcast content and content located on a computer network
US8160064B2 (en) * 2008-10-22 2012-04-17 Backchannelmedia Inc. Systems and methods for providing a network link between broadcast content and content located on a computer network
KR101590633B1 (ko) * 2008-11-11 2016-02-02 삼성전자주식회사 슬라이스 단위로 분할된 동영상을 처리하는 동영상 부호화/복호화장치 및 동영상 부호화/복호화방법
US7773005B2 (en) * 2008-12-05 2010-08-10 Advanced Micro Devices, Inc. Method and apparatus for decoding variable length data
WO2010086500A1 (en) * 2009-01-28 2010-08-05 Nokia Corporation Method and apparatus for video coding and decoding
US7746109B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for sharing self-timed logic
KR20100136890A (ko) 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
US8423088B2 (en) * 2009-07-22 2013-04-16 Microsoft Corporation Aggregated, interactive communication timeline
BR122022013454B1 (pt) 2009-10-20 2023-05-16 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Codificador de áudio, decodificador de áudio, método para codificar uma informação de áudio, método para decodificar uma informação de áudio que utiliza uma detecção de um grupo de valores espectrais previamente decodificados
US8885663B2 (en) 2009-12-03 2014-11-11 Thomson Licensing Data block processor in a mobile DTV system with diversity
US8595812B2 (en) * 2009-12-18 2013-11-26 Sabre Inc. Tokenized data security
WO2011078002A1 (ja) * 2009-12-22 2011-06-30 ソニー株式会社 画像処理装置および方法、並びにプログラム
AU2011206677B9 (en) 2010-01-12 2014-12-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding and decoding an audio information, and computer program obtaining a context sub-region value on the basis of a norm of previously decoded spectral values
CN102597976B (zh) * 2010-01-19 2015-12-16 拉姆伯斯公司 自适应时分多路复用来自多处理器核芯的存储器引用
KR101676477B1 (ko) * 2010-07-21 2016-11-15 삼성전자주식회사 컨텍스트 기반의 무손실 부호화 장치 및 방법, 그리고 복호화 장치 및 방법
US9319880B2 (en) * 2010-09-15 2016-04-19 Intel Corporation Reformatting data to decrease bandwidth between a video encoder and a buffer
US8402164B1 (en) 2010-10-27 2013-03-19 Xilinx, Inc. Asynchronous communication network and methods of enabling the asynchronous communication of data in an integrated circuit
JP5520391B2 (ja) 2010-12-28 2014-06-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 検索開始点を決定する装置及び方法
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US9325999B2 (en) * 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
JPWO2012124063A1 (ja) * 2011-03-15 2014-07-17 富士通株式会社 半導体記憶装置及び半導体記憶装置の制御方法
US8938312B2 (en) 2011-04-18 2015-01-20 Sonos, Inc. Smart line-in processing
US9172982B1 (en) * 2011-06-06 2015-10-27 Vuemix, Inc. Audio selection from a multi-video environment
US9154813B2 (en) 2011-06-09 2015-10-06 Comcast Cable Communications, Llc Multiple video content in a composite video stream
US9020044B2 (en) * 2011-06-13 2015-04-28 Ati Technologies Ulc Method and apparatus for writing video data in raster order and reading video data in macroblock order
US8767824B2 (en) 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
US9042556B2 (en) 2011-07-19 2015-05-26 Sonos, Inc Shaping sound responsive to speaker orientation
KR101767301B1 (ko) 2011-09-09 2017-08-10 라쿠텐 인코포레이티드 대화형 텔레비전 노출에 대한 소비자 제어를 위한 시스템들 및 방법들
TWI455595B (zh) * 2011-09-29 2014-10-01 Mstar Semiconductor Inc 布林熵解碼器及影像播放系統之布林熵解碼方法
US8824569B2 (en) * 2011-12-07 2014-09-02 International Business Machines Corporation High bandwidth decompression of variable length encoded data streams
CN102413382B (zh) * 2011-12-27 2014-06-11 四川九洲电器集团有限责任公司 一种提高实时视频平滑性的方法
WO2013100986A1 (en) * 2011-12-28 2013-07-04 Intel Corporation Systems and methods for integrated metadata insertion in a video encoding system
JP5422640B2 (ja) * 2011-12-28 2014-02-19 京セラドキュメントソリューションズ株式会社 画像読取装置
US9344292B2 (en) 2011-12-30 2016-05-17 Sonos, Inc. Systems and methods for player setup room names
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
CN104303165A (zh) * 2012-06-04 2015-01-21 惠普发展公司,有限责任合伙企业 管理对存储在输入块中的数据待执行的分析函数
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
KR101835316B1 (ko) 2013-04-02 2018-03-08 주식회사 칩스앤미디어 동영상 처리 방법 및 장치
US9626184B2 (en) * 2013-06-28 2017-04-18 Intel Corporation Processors, methods, systems, and instructions to transcode variable length code points of unicode characters
US9374106B2 (en) 2013-08-28 2016-06-21 International Business Machines Corporation Efficient context save/restore during hardware decompression of DEFLATE encoded data
US8933824B1 (en) 2013-08-28 2015-01-13 International Business Machines Corporation Hardware decompression of deflate encoded data with multiple blocks
WO2015035320A1 (en) * 2013-09-06 2015-03-12 Huawei Technologies Co., Ltd. System and method for an asynchronous processor with a hierarchical token system
US9244516B2 (en) 2013-09-30 2016-01-26 Sonos, Inc. Media playback system using standby mode in a mesh network
US9800640B2 (en) 2013-10-02 2017-10-24 International Business Machines Corporation Differential encoder with look-ahead synchronization
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US10720205B2 (en) * 2014-06-05 2020-07-21 Gsi Technology, Inc. Systems and methods involving multi-bank, dual-pipe memory circuitry
US9407287B2 (en) * 2014-10-21 2016-08-02 Huawei Technologies Co., Ltd. Parallel history search and encoding for dictionary-based compression
CN104486585B (zh) * 2014-12-18 2018-01-05 深圳先进技术研究院 一种基于gis的城市海量监控视频管理方法及系统
US9252805B1 (en) * 2015-03-28 2016-02-02 International Business Machines Corporation Parallel huffman decoder
US9838571B2 (en) 2015-04-10 2017-12-05 Gvbb Holdings S.A.R.L. Precision timing for broadcast network
US9378782B1 (en) * 2015-05-24 2016-06-28 Silicon Laboratories Inc. Apparatus with write-back buffer and associated methods
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
US9484954B1 (en) 2015-09-10 2016-11-01 Intel Corporation Methods and apparatus to parallelize data decompression
US10303422B1 (en) 2016-01-05 2019-05-28 Sonos, Inc. Multiple-device setup
JP2017182854A (ja) * 2016-03-31 2017-10-05 マイクロン テクノロジー, インク. 半導体装置
US10657674B2 (en) * 2016-06-17 2020-05-19 Immersive Robotics Pty Ltd. Image compression method and apparatus
ES2967322T3 (es) * 2016-08-30 2024-04-29 Dolby Laboratories Licensing Corp Remodelación en tiempo real de códec monocapa retrocompatible
JP2018049381A (ja) * 2016-09-20 2018-03-29 東芝メモリ株式会社 メモリ制御回路、メモリシステムおよびプロセッサシステム
US9825649B1 (en) * 2016-09-29 2017-11-21 Intel Corporation Efficient huffman decoder improvements
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name
US10567800B2 (en) 2016-11-29 2020-02-18 Qualcomm Incorporated Transform hardware architecture for video coding
US9819359B1 (en) 2016-12-11 2017-11-14 Microsoft Technology Licensing, Llc Multi-symbol, multi-format, parallel symbol decoder for hardware decompression engines
AU2018218182B2 (en) 2017-02-08 2022-12-15 Immersive Robotics Pty Ltd Antenna control for mobile device communication
US10691361B2 (en) 2017-02-24 2020-06-23 Microsoft Technology Licensing, Llc Multi-format pipelined hardware decompressor
US12096031B2 (en) 2017-06-05 2024-09-17 Immersive Robotics Pty Ltd. Method and apparatus for digital content stream compression and decompression
US10020819B1 (en) * 2017-09-28 2018-07-10 Amazon Technologies, Inc. Speculative data decompression
CN111699693A (zh) 2017-11-21 2020-09-22 因默希弗机器人私人有限公司 用于数字现实的图像压缩
EP3714598A4 (en) 2017-11-21 2021-03-31 Immersive Robotics Pty Ltd SELECTING A FREQUENCY COMPONENT FOR IMAGE COMPRESSION
CN107886081B (zh) * 2017-11-23 2021-02-02 武汉理工大学 双路U-Net深度神经网络矿山井下危险行为智能分级辨识方法
US10409889B2 (en) * 2017-12-18 2019-09-10 Mythic, Inc. Systems and methods for mapping matrix calculations to a matrix multiply accelerator
US10044369B1 (en) * 2018-03-16 2018-08-07 Centri Technology, Inc. Interleaved codes for dynamic sizeable headers
US11152050B2 (en) 2018-06-19 2021-10-19 Micron Technology, Inc. Apparatuses and methods for multiple row hammer refresh address sequences
US12099912B2 (en) 2018-06-22 2024-09-24 Samsung Electronics Co., Ltd. Neural processor
CN112771498B (zh) * 2018-07-05 2024-08-23 米西克有限公司 用于实施智能处理计算架构的系统和方法
CN109104199A (zh) * 2018-08-29 2018-12-28 重庆物奇科技有限公司 基于霍夫曼编码的编码方法、译码方法及应用
CN109120273A (zh) * 2018-08-29 2019-01-01 重庆物奇科技有限公司 基于霍夫曼编码的编码装置、译码装置及系统
US10878534B2 (en) * 2018-11-07 2020-12-29 Kyocera Document Solutions Inc. Apparatuses, processes, and computer program products for image data downscaling
CN109542059B (zh) * 2018-11-19 2022-04-01 国核自仪系统工程有限公司 历史数据压缩装置和方法
WO2020155074A1 (zh) * 2019-01-31 2020-08-06 华为技术有限公司 一种处理装置、方法及相关设备
US11211944B2 (en) 2019-04-17 2021-12-28 Samsung Electronics Co., Ltd. Mixed-precision compression with random access
CN110175185B (zh) * 2019-04-17 2023-04-07 上海天数智芯半导体有限公司 一种基于时序数据分布特征的自适应无损压缩方法
US11671111B2 (en) 2019-04-17 2023-06-06 Samsung Electronics Co., Ltd. Hardware channel-parallel data compression/decompression
US11264096B2 (en) 2019-05-14 2022-03-01 Micron Technology, Inc. Apparatuses, systems, and methods for a content addressable memory cell with latch and comparator circuits
US11158364B2 (en) 2019-05-31 2021-10-26 Micron Technology, Inc. Apparatuses and methods for tracking victim rows
CN110134676B (zh) * 2019-06-03 2021-01-29 西安电子科技大学 一种传感器数据质量的监控方法
US11158373B2 (en) 2019-06-11 2021-10-26 Micron Technology, Inc. Apparatuses, systems, and methods for determining extremum numerical values
US11139015B2 (en) 2019-07-01 2021-10-05 Micron Technology, Inc. Apparatuses and methods for monitoring word line accesses
TWI743774B (zh) * 2019-07-18 2021-10-21 瑞昱半導體股份有限公司 音訊與視訊同步方法與相關的裝置
JP7213771B2 (ja) 2019-07-22 2023-01-27 株式会社ディーアンドエムホールディングス ワイヤレスオーディオシステム、ワイヤレススピーカ、およびワイヤレススピーカのグループ加入方法
US10964378B2 (en) 2019-08-22 2021-03-30 Micron Technology, Inc. Apparatus and method including analog accumulator for determining row access rate and target row address used for refresh operation
US12355984B2 (en) 2019-10-18 2025-07-08 Immersive Robotics Pty Ltd Content compression for network transmission
US10976709B1 (en) * 2020-03-30 2021-04-13 Stmicroelectronics (Research & Development) Limited Latched gray code for ToF applications
US12026546B2 (en) 2020-04-16 2024-07-02 Tom Herbert Parallelism in serial pipeline processing
US12461885B2 (en) 2020-04-16 2025-11-04 Sipanda Inc. Parser instructions for CPUs
KR20230074234A (ko) 2020-09-25 2023-05-26 소노스 인코포레이티드 재생 장치에 대한 지능적 셋업
US11462291B2 (en) 2020-11-23 2022-10-04 Micron Technology, Inc. Apparatuses and methods for tracking word line accesses
US11482275B2 (en) 2021-01-20 2022-10-25 Micron Technology, Inc. Apparatuses and methods for dynamically allocated aggressor detection
US11600314B2 (en) 2021-03-15 2023-03-07 Micron Technology, Inc. Apparatuses and methods for sketch circuits for refresh binning
CN112987616B (zh) * 2021-03-15 2022-03-25 沈阳智谷科技有限公司 一种基于磁变量信号的超高速电子包采集系统与方法
US11664063B2 (en) 2021-08-12 2023-05-30 Micron Technology, Inc. Apparatuses and methods for countering memory attacks
CN113839678B (zh) * 2021-08-31 2023-11-03 山东云海国创云计算装备产业创新中心有限公司 一种哈夫曼解码系统、方法、设备及计算机可读存储介质
CN114138057B (zh) * 2021-11-19 2024-10-11 广西电网有限责任公司 基于agent的智能化时钟对时装置及使用方法
US11688451B2 (en) 2021-11-29 2023-06-27 Micron Technology, Inc. Apparatuses, systems, and methods for main sketch and slim sketch circuit for row address tracking
US12597459B2 (en) 2021-12-29 2026-04-07 Micron Technology, Inc. Apparatuses and methods for row hammer counter mat
US12165687B2 (en) 2021-12-29 2024-12-10 Micron Technology, Inc. Apparatuses and methods for row hammer counter mat
US12592271B2 (en) 2022-12-22 2026-03-31 Micron Technology, Inc. Apparatuses and methods for increased reliability row hammer counts
KR102868996B1 (ko) 2023-01-11 2025-10-13 삼성전자주식회사 압축 데이터 스트림의 디코딩 방법 및 장치
CN116795806A (zh) * 2023-07-14 2023-09-22 上海沄熹科技有限公司 一种混合数据动态调整迷你缓冲编码方法及装置
CN117095628B (zh) * 2023-10-17 2023-12-26 北京数字光芯集成电路设计有限公司 一种基于数字脉宽调制显示的逐行逐位扫描方法及系统
CN119761434B (zh) * 2024-12-10 2026-04-14 电子科技大学 一种神经网络矩阵乘法加速器及其部署方法
CN119540029B (zh) * 2025-01-23 2025-04-22 合肥埃科光电科技股份有限公司 一种像素数据处理方法、系统、电子设备和存储介质

Family Cites Families (339)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US33632A (en) * 1861-11-05 Improved water-closet
GB9405914D0 (en) * 1994-03-24 1994-05-11 Discovision Ass Video decompression
GB1243631A (en) 1967-07-18 1971-08-25 Nat Res Dev Improvements in or relating to elastic encoder storage systems
US3676802A (en) 1971-06-21 1972-07-11 Us Navy Submarine propeller cavitation noise simulator
US3873976A (en) * 1973-07-30 1975-03-25 Burroughs Corp Memory access system
US3875391A (en) * 1973-11-02 1975-04-01 Raytheon Co Pipeline signal processor
US3872430A (en) * 1973-11-23 1975-03-18 Paul Emile Boudreau Method and apparatus of error detection for variable length words using a polynomial code
US3893042A (en) * 1973-12-12 1975-07-01 Us Navy Lock indicator for phase-locked loops
US3962685A (en) 1974-06-03 1976-06-08 General Electric Company Data processing system having pyramidal hierarchy control flow
GB1532275A (en) * 1976-01-28 1978-11-15 Nat Res Dev Apparatus for controlling raster-scan displays
US4125369A (en) * 1977-03-28 1978-11-14 The Dow Chemical Company Permanent topical textile antistats
US4142205A (en) 1976-07-21 1979-02-27 Nippon Electric Co., Ltd. Interframe CODEC for composite color TV signals comprising means for inverting the polarity of carrier chrominance signals in every other frame or line
JPS53114617A (en) * 1977-03-17 1978-10-06 Toshiba Corp Memory unit for picture processing
US4149242A (en) * 1977-05-06 1979-04-10 Bell Telephone Laboratories, Incorporated Data interface apparatus for multiple sequential processors
US4135242A (en) * 1977-11-07 1979-01-16 Ncr Corporation Method and processor having bit-addressable scratch pad memory
US4228497A (en) * 1977-11-17 1980-10-14 Burroughs Corporation Template micromemory structure for a pipelined microprogrammable data processing system
US4215369A (en) * 1977-12-20 1980-07-29 Nippon Electric Company, Ltd. Digital transmission system for television video signals
US4196448A (en) * 1978-05-15 1980-04-01 The United States Of America As Represented By The Secretary Of The Navy TV bandwidth reduction system using a hybrid discrete cosine DPCM
US4225920A (en) * 1978-09-11 1980-09-30 Burroughs Corporation Operator independent template control architecture
US4302775A (en) * 1978-12-15 1981-11-24 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
GB2039106B (en) * 1979-01-02 1983-03-23 Honeywell Inf Systems Number format conversion in computer
JPS6046585B2 (ja) 1979-03-06 1985-10-16 株式会社リコー シリアル・デ−タ伝送方式
US4307447A (en) * 1979-06-19 1981-12-22 Gould Inc. Programmable controller
JPS6010458B2 (ja) * 1979-08-23 1985-03-18 富士通株式会社 フエ−ズ・ロツクド・ル−プ回路
GB2059724B (en) 1979-09-28 1984-04-04 Racal Datacom Ltd Data transmission systems
DE3015125A1 (de) * 1980-04-19 1981-10-22 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur speicherung und darstellung graphischer information
US4334246A (en) * 1980-05-16 1982-06-08 Xerox Corporation Data decompressor circuit
US4467409A (en) * 1980-08-05 1984-08-21 Burroughs Corporation Flexible computer architecture using arrays of standardized microprocessors customized for pipeline and parallel operations
JPS6228086Y2 (ja) * 1980-12-08 1987-07-18
DE3138897C2 (de) * 1981-09-30 1987-01-08 Siemens AG, 1000 Berlin und 8000 München Schaltungsanordnung zum Ausrichten von Speicheroperanden für dezimale und logische Befehle
JPS59126368A (ja) 1983-01-10 1984-07-20 Hitachi Ltd 符号化復号化装置
US4495629A (en) * 1983-01-25 1985-01-22 Storage Technology Partners CMOS scannable latch
JPS59146345A (ja) * 1983-02-10 1984-08-22 Masahiro Sowa コントロ−ルフロ−並列計算機方式
US4799677A (en) * 1983-09-02 1989-01-24 Bally Manufacturing Corporation Video game having video disk read only memory
US4710866A (en) * 1983-09-12 1987-12-01 Motorola, Inc. Method and apparatus for validating prefetched instruction
US4540903A (en) * 1983-10-17 1985-09-10 Storage Technology Partners Scannable asynchronous/synchronous CMOS latch
US4598372A (en) * 1983-12-28 1986-07-01 Motorola, Inc. Apparatus and method of smoothing MAPS compressed image data
US4689823A (en) * 1984-01-04 1987-08-25 Itek Corporation Digital image frame processor
US4747070A (en) * 1984-01-09 1988-05-24 Wang Laboratories, Inc. Reconfigurable memory system
NL8400391A (nl) * 1984-02-08 1985-09-02 Philips Nv Systeem voor het weergeven van een op een schijfvormige registratiedrager opgetekend programma.
US4630198A (en) * 1984-02-21 1986-12-16 Yuan Houng I Intelligent stand-alone printfile buffer with paging control
FR2561011B1 (fr) * 1984-03-09 1986-09-12 Cit Alcatel Processeur de calcul d'une transformee discrete inverse du cosinus
US4580066A (en) * 1984-03-22 1986-04-01 Sperry Corporation Fast scan/set testable latch using two levels of series gating with two current sources
US4885786A (en) * 1984-10-24 1989-12-05 International Business Machines Corporation Method for enlarging an image stored in run representation form
CA1220830A (en) * 1984-12-28 1987-04-21 David S. Drynan Transmitting sequence numbers of information in a packet data transmission system
US4646151A (en) * 1985-02-01 1987-02-24 General Electric Company Television frame synchronizer with independently controllable input/output rates
US4808398A (en) 1985-02-14 1989-02-28 The Dow Chemical Company Narrow size distribution zinc oxide
JPS61194989A (ja) 1985-02-22 1986-08-29 Mitsubishi Electric Corp 静止画伝送装置
US4680581A (en) 1985-03-28 1987-07-14 Honeywell Inc. Local area network special function frames
US5233420A (en) * 1985-04-10 1993-08-03 The United States Of America As Represented By The Secretary Of The Navy Solid state time base corrector (TBC)
JPH0632056B2 (ja) * 1985-05-31 1994-04-27 松下電器産業株式会社 デ−タ処理装置
JPS61276032A (ja) * 1985-05-31 1986-12-06 Matsushita Electric Ind Co Ltd 情報処理装置
US5263135A (en) 1985-07-18 1993-11-16 Canon Kabushiki Kaisha Image processing apparatus
DE3525898A1 (de) * 1985-07-19 1987-01-29 Reinhard Lidzba Verfahren zum komprimieren und dekomprimieren mehrerer strukturverwandter datenfolgen sowie einrichtungen zur durchfuehrung des verfahrens
JP2564805B2 (ja) * 1985-08-08 1996-12-18 日本電気株式会社 情報処理装置
US4720780A (en) * 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
US4692880A (en) * 1985-11-15 1987-09-08 General Electric Company Memory efficient cell texturing for advanced video object generator
JPS62139081A (ja) 1985-12-13 1987-06-22 Canon Inc 合成画像形成方法
US4726019A (en) * 1986-02-28 1988-02-16 American Telephone And Telegraph Company, At&T Bell Laboratories Digital encoder and decoder synchronization in the presence of late arriving packets
US4894823A (en) * 1986-02-28 1990-01-16 American Telephone And Telegraph Company Time stamping for packet system nodes
US5021947A (en) * 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing
US4789927A (en) * 1986-04-07 1988-12-06 Silicon Graphics, Inc. Interleaved pipeline parallel processing architecture
JP2500858B2 (ja) * 1986-04-11 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 拡張ラスタ演算回路を有する表示システム
US4843632A (en) * 1986-05-09 1989-06-27 Prodigy Systems Corporation Compressed image expansion system
FR2599872B1 (fr) * 1986-06-06 1988-07-29 Thomson Csf Dispositifs de calcul de transformees cosinus mono-dimensionnelles, et dispositif de codage et dispositif de decodage d'images comportant de tels dispositifs de calcul
US4829465A (en) * 1986-06-19 1989-05-09 American Telephone And Telegraph Company, At&T Bell Laboratories High speed cosine transform
US4814978A (en) * 1986-07-15 1989-03-21 Dataflow Computer Corporation Dataflow processing element, multiprocessor, and processes
GB8618060D0 (en) 1986-07-24 1986-12-17 Gec Avionics Data processing apparatus
EP0255767A3 (en) 1986-07-31 1990-04-04 AT&T Corp. Selective broadcasting arrangement for local area networks
US4887224A (en) * 1986-08-28 1989-12-12 Canon Kabushiki Kaisha Image data processing apparatus capable of high-speed data encoding and/or decoding
US4910417A (en) * 1986-09-19 1990-03-20 Actel Corporation Universal logic module comprising multiplexers
JP2520404B2 (ja) * 1986-11-10 1996-07-31 日本電気株式会社 圧縮復号化装置
US4811214A (en) * 1986-11-14 1989-03-07 Princeton University Multinode reconfigurable pipeline computer
IT1207346B (it) 1987-01-20 1989-05-17 Cselt Centro Studi Lab Telecom Sformata coseno discreta a coeffi circuito per il calcolo della tra cienti quantizzati di campioni di segnale numerico
DE3886431T2 (de) * 1987-02-26 1994-06-23 Pioneer Electronic Corp Einrichtung zur Wiedergabe von Stehbildern mit einem Audio-Teil.
US4831321A (en) * 1987-03-03 1989-05-16 Robert Cooper Trickle jumping charging device
CA1309519C (en) * 1987-03-17 1992-10-27 Antonio Cantoni Transfer of messages in a multiplexed system
NL8700843A (nl) 1987-04-10 1988-11-01 Philips Nv Televisie-overdrachtsysteem met transformcoding.
US4855947A (en) * 1987-05-27 1989-08-08 Amdahl Corporation Microprogrammable pipeline interlocks based on the validity of pipeline states
DE3718521A1 (de) * 1987-06-03 1988-12-22 Du Pont Deutschland Verfahren zum aufzeichnen von quasihalbtonbildern und vorrichtung zur umwandlung von bildpunkt-tonwertdaten
US4975595A (en) * 1987-06-12 1990-12-04 National Semiconductor Corporation Scannable register/latch circuit
US5297263A (en) 1987-07-17 1994-03-22 Mitsubishi Denki Kabushiki Kaisha Microprocessor with pipeline system having exception processing features
US4875196A (en) * 1987-09-08 1989-10-17 Sharp Microelectronic Technology, Inc. Method of operating data buffer apparatus
JPS6477391A (en) * 1987-09-18 1989-03-23 Victor Company Of Japan System and device for predictive coding
GB8722394D0 (en) * 1987-09-23 1987-10-28 British Telecomm Video coder
US5163132A (en) * 1987-09-24 1992-11-10 Ncr Corporation Integrated controller using alternately filled and emptied buffers for controlling bi-directional data transfer between a processor and a data storage device
EP0309669B1 (de) * 1987-09-30 1992-12-30 Siemens Aktiengesellschaft Verfahren zur szenenmodellgestützten Bilddatenreduktion für digitale Fernsehsignale
US4785349A (en) * 1987-10-05 1988-11-15 Technology Inc. 64 Digital video decompression system
US5122873A (en) * 1987-10-05 1992-06-16 Intel Corporation Method and apparatus for selectively encoding and decoding a digital motion video signal at multiple resolution levels
US4811413A (en) * 1987-10-22 1989-03-07 International Business Machines Corp. System of reconfigurable pipelines of generalized neighborhood function morphic image processors
US4866637A (en) * 1987-10-30 1989-09-12 International Business Machines Corporation Pipelined lighting model processing system for a graphics workstation's shading function
US5134697A (en) * 1987-11-16 1992-07-28 Prime Computer Remote memory-mapped display with interactivity determination
US4823201A (en) * 1987-11-16 1989-04-18 Technology, Inc. 64 Processor for expanding a compressed video signal
US4897803A (en) * 1987-11-23 1990-01-30 Xerox Corporation Address token based image manipulation
NL8702905A (nl) * 1987-12-03 1989-07-03 Philips Nv Werkwijze en inrichting voor het optekenen van informatie, een registratiedrager, een inrichting voor het uitlezen van de opgetekende informatie, alsmede een codeer- en decodeerschakeling voor toepassing in de opteken- en uitleesinrichting.
EP0321628B1 (en) * 1987-12-23 1992-11-04 International Business Machines Corporation Shared memory interface for a data processing system
FR2625340B1 (fr) * 1987-12-23 1990-05-04 Labo Electronique Physique Systeme graphique avec controleur graphique et controleur de dram
US4891784A (en) * 1988-01-08 1990-01-02 Hewlett-Packard Company High capacity tape drive transparently writes and reads large packets of blocked data between interblock gaps
JPH01188951A (ja) * 1988-01-23 1989-07-28 Sharp Corp データフロープログラムの実行制御方式
GB8805742D0 (en) * 1988-03-10 1988-04-07 Emi Plc Thorn Bandwidth reduction system for television signals
US5214770A (en) 1988-04-01 1993-05-25 Digital Equipment Corporation System for flushing instruction-cache only when instruction-cache address and data-cache address are matched and the execution of a return-from-exception-or-interrupt command
US4949280A (en) * 1988-05-10 1990-08-14 Battelle Memorial Institute Parallel processor-based raster graphics system architecture
US5121498A (en) * 1988-05-11 1992-06-09 Massachusetts Institute Of Technology Translator for translating source code for selective unrolling of loops in the source code
JP2600304B2 (ja) * 1988-06-30 1997-04-16 三菱電機株式会社 半導体記憶装置とこれを用いたデータパス
US5200925A (en) * 1988-07-29 1993-04-06 Mitsubishi Denki Kabushiki Kaisha Serial access semiconductor memory device and operating method therefor
US5010401A (en) * 1988-08-11 1991-04-23 Mitsubishi Denki Kabushiki Kaisha Picture coding and decoding apparatus using vector quantization
US4989138A (en) * 1988-09-02 1991-01-29 Tektronix, Inc. Single bus graphics data processing pipeline with decentralized bus arbitration
US4991110A (en) * 1988-09-13 1991-02-05 Silicon Graphics, Inc. Graphics processor with staggered memory timing
DE3832563A1 (de) * 1988-09-24 1990-03-29 Bosch Gmbh Robert Speicheranordnung fuer eine schmalband-bilduebertragungseinrichtung
US4866510A (en) * 1988-09-30 1989-09-12 American Telephone And Telegraph Company Digital video encoder
US5241635A (en) 1988-11-18 1993-08-31 Massachusetts Institute Of Technology Tagged token data processing system with operand matching in activation frames
US5148524A (en) 1988-11-29 1992-09-15 Solbourne Computer, Inc. Dynamic video RAM incorporating on chip vector/image mode line modification
US5161221A (en) * 1988-12-12 1992-11-03 Eastman Kodak Company Multi-memory bank system for receiving continuous serial data stream and monitoring same to control bank switching without interrupting continuous data flow rate
US5091721A (en) * 1988-12-22 1992-02-25 Hughes Aircraft Company Acoustic display generator
GB2226471A (en) 1988-12-23 1990-06-27 Philips Electronic Associated Displaying a stored image in expanded format
SG120852A1 (en) * 1989-02-10 2006-04-26 Canon Kk Apparatus for image reading or processing
US5060242A (en) * 1989-02-24 1991-10-22 General Electric Company Non-destructive lossless image coder
JP2925157B2 (ja) * 1989-02-28 1999-07-28 キヤノン株式会社 データ記憶装置
JP2765918B2 (ja) * 1989-03-06 1998-06-18 株式会社日立製作所 プレゼンテーション装置
JP2766302B2 (ja) * 1989-04-06 1998-06-18 株式会社東芝 可変長符号並列解読方法および装置
JPH02280462A (ja) 1989-04-20 1990-11-16 Fuji Photo Film Co Ltd 画像データ圧縮方法
AU612543B2 (en) * 1989-05-11 1991-07-11 Panasonic Corporation Moving image signal encoding apparatus and decoding apparatus
US5172011A (en) * 1989-06-30 1992-12-15 Digital Equipment Corporation Latch circuit and method with complementary clocking and level sensitive scan capability
US5233690A (en) 1989-07-28 1993-08-03 Texas Instruments Incorporated Video graphics display memory swizzle logic and expansion circuit and method
US5151997A (en) * 1989-08-10 1992-09-29 Apple Computer, Inc. Computer with adaptable video circuitry
US5257350A (en) 1989-08-10 1993-10-26 Apple Computer, Inc. Computer with self configuring video circuitry
US5233545A (en) 1989-09-19 1993-08-03 Hewlett-Packard Company Time interval triggering and hardware histogram generation
US5299025A (en) 1989-10-18 1994-03-29 Ricoh Company, Ltd. Method of coding two-dimensional data by fast cosine transform and method of decoding compressed data by inverse fast cosine transform
US5053985A (en) * 1989-10-19 1991-10-01 Zoran Corporation Recycling dct/idct integrated circuit apparatus using a single multiplier/accumulator and a single random access memory
US5142380A (en) 1989-10-23 1992-08-25 Ricoh Company, Ltd. Image data processing apparatus
US5134487A (en) * 1989-11-06 1992-07-28 Canon Kabushiki Kaisha Using common circuitry for different signals
US5057793A (en) * 1989-11-13 1991-10-15 Cowley Nicholas P Frequency synthesizer PLL having digital and analog phase detectors
US5227863A (en) 1989-11-14 1993-07-13 Intelligent Resources Integrated Systems, Inc. Programmable digital video processing system
US5146326A (en) * 1989-11-14 1992-09-08 Fujitsu Limited Coded picture information decoding apparatus having means for improving picture distortion
US5027212A (en) * 1989-12-06 1991-06-25 Videologic Limited Computer based video/graphics display system
US5003204A (en) * 1989-12-19 1991-03-26 Bull Hn Information Systems Inc. Edge triggered D-type flip-flop scan latch cell with recirculation capability
US5263316A (en) 1989-12-21 1993-11-23 Sundstrand Corporation Turbine engine with airblast injection
US5226131A (en) 1989-12-27 1993-07-06 The United States Of America As Represented By The United States Department Of Energy Sequencing and fan-out mechanism for causing a set of at least two sequential instructions to be performed in a dataflow processing computer
US5287470A (en) 1989-12-28 1994-02-15 Texas Instruments Incorporated Apparatus and method for coupling a multi-lead output bus to interleaved memories, which are addressable in normal and block-write modes
JP2881886B2 (ja) * 1989-12-30 1999-04-12 ソニー株式会社 映像信号符号化方法及びその装置
US5221966A (en) 1990-01-17 1993-06-22 Avesco Plc Video signal production from cinefilm originated material
US5113182B1 (en) 1990-01-19 1995-11-07 Prince Corp Vehicle door locking system detecting that all doors are closed
JP2842913B2 (ja) 1990-01-24 1999-01-06 株式会社日立製作所 ワイドテレビジョン信号処理回路
JP2728760B2 (ja) 1990-02-13 1998-03-18 株式会社東芝 データ伝送装置並びに受信データ処理方法
JPH03248243A (ja) 1990-02-26 1991-11-06 Nec Corp 情報処理装置
US5107345A (en) * 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
US5081450A (en) * 1990-03-09 1992-01-14 International Business Machines Corporation Apparatus and method for compressing and expanding multibit digital pixel data
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
US5191548A (en) 1990-03-14 1993-03-02 C-Cube Microsystems 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
JP2865782B2 (ja) 1990-03-16 1999-03-08 富士通株式会社 非同期伝送用codec装置
US5151875A (en) * 1990-03-16 1992-09-29 C-Cube Microsystems, Inc. MOS array multiplier cell
FR2660138B1 (fr) * 1990-03-26 1992-06-12 France Telecom Cnet Dispositif de codage/decodage de signaux d'image.
EP0453229B1 (en) * 1990-04-17 1997-06-18 Matsushita Electric Industrial Co., Ltd. Method for transmission of variable length code
CA2014734A1 (en) 1990-04-17 1991-10-17 Marvin Simms Autotracking fume extraction exhaust hood
US5319724A (en) * 1990-04-19 1994-06-07 Ricoh Corporation Apparatus and method for compressing still images
US5201056A (en) 1990-05-02 1993-04-06 Motorola, Inc. RISC microprocessor architecture with multi-bit tag extended instructions for selectively attaching tag from either instruction or input data to arithmetic operation output
GB9011700D0 (en) 1990-05-25 1990-07-18 Inmos Ltd Communication interface
US5311309A (en) 1990-06-01 1994-05-10 Thomson Consumer Electronics, Inc. Luminance processing system for compressing and expanding video data
GB9012538D0 (en) * 1990-06-05 1990-07-25 Philips Nv Coding of video signals
US5179372A (en) * 1990-06-19 1993-01-12 International Business Machines Corporation Video Random Access Memory serial port access
US5057917A (en) * 1990-06-20 1991-10-15 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Real-time data compression of broadcast video signals
US5122948A (en) * 1990-06-28 1992-06-16 Allen-Bradley Company, Inc. Remote terminal industrial control communication system
DE69130138T2 (de) * 1990-06-29 1999-05-06 Digital Equipment Corp., Maynard, Mass. Sprungvorhersageeinheit für hochleistungsfähigen Prozessor
JPH0459375A (ja) * 1990-06-29 1992-02-26 Seikosha Co Ltd シリアルプリンタ
EP0466550B1 (en) 1990-06-29 1998-11-18 Digital Equipment Corporation Conversion of internal processor register commands to I/O space address
GB2247138B (en) 1990-06-29 1994-10-12 Digital Equipment Corp System and method for error detection and reducing simultaneous switching noise
US5247612A (en) 1990-06-29 1993-09-21 Radius Inc. Pixel display apparatus and method using a first-in, first-out buffer
US5173695A (en) * 1990-06-29 1992-12-22 Bell Communications Research, Inc. High-speed flexible variable-length-code decoder
FR2664779B1 (fr) 1990-07-13 1993-06-11 Europ Rech Electr Lab Procede de traitement d'un signal video.
IL98700A (en) 1990-07-13 1994-04-12 Minnesota Mining & Mfg A method and device for building a composite figure from several data types
KR100214435B1 (ko) 1990-07-25 1999-08-02 사와무라 시코 동기식 버스트 엑세스 메모리
US5174641A (en) * 1990-07-25 1992-12-29 Massachusetts Institute Of Technology Video encoding method for television applications
US5202847A (en) * 1990-07-31 1993-04-13 Inmos Limited Digital signal processing
US5241658A (en) 1990-08-21 1993-08-31 Apple Computer, Inc. Apparatus for storing information in and deriving information from a frame buffer
US5297271A (en) 1990-09-21 1994-03-22 Chips And Technologies, Inc. Method and apparatus for performing a read-write-modify operation in a VGA compatible controller
US5189526A (en) * 1990-09-21 1993-02-23 Eastman Kodak Company Method and apparatus for performing image compression using discrete cosine transform
US5367636A (en) 1990-09-24 1994-11-22 Ncube Corporation Hypercube processor network in which the processor indentification numbers of two processors connected to each other through port number n, vary only in the nth bit
US5038209A (en) * 1990-09-27 1991-08-06 At&T Bell Laboratories Adaptive buffer/quantizer control for transform video coders
JPH06500655A (ja) 1990-10-03 1994-01-20 スィンキング マシンズ コーポレーション 並列コンピュータ・システム
JPH04142812A (ja) 1990-10-04 1992-05-15 Toshiba Corp 位相同期回路
US5130568A (en) * 1990-11-05 1992-07-14 Vertex Semiconductor Corporation Scannable latch system and method
US5229863A (en) * 1990-12-24 1993-07-20 Xerox Corporation High speed CCITT decompressor
JPH04242860A (ja) 1990-12-28 1992-08-31 Sony Corp 演算装置
US5253053A (en) 1990-12-31 1993-10-12 Apple Computer, Inc. Variable length decoding using lookup tables
US5184124A (en) 1991-01-02 1993-02-02 Next Computer, Inc. Method and apparatus for compressing and storing pixels
GB2252002B (en) * 1991-01-11 1995-01-04 Sony Broadcast & Communication Compression of video signals
JPH04236664A (ja) 1991-01-18 1992-08-25 Sony Corp 演算回路
US5301344A (en) 1991-01-29 1994-04-05 Analogic Corporation Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
US5055841A (en) * 1991-02-01 1991-10-08 Bell Communications Research, Inc. High-speed feedforward variable word length decoder
US5257213A (en) * 1991-02-20 1993-10-26 Samsung Electronics Co., Ltd. Method and circuit for two-dimensional discrete cosine transform
US5111292A (en) * 1991-02-27 1992-05-05 General Electric Company Priority selection apparatus as for a video signal processor
US5122875A (en) * 1991-02-27 1992-06-16 General Electric Company An HDTV compression system
US5168356A (en) * 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
US5333212A (en) 1991-03-04 1994-07-26 Storm Technology Image compression technique with regionally selective compression ratio
CA2062200A1 (en) * 1991-03-15 1992-09-16 Stephen C. Purcell Decompression processor for video applications
US5870497A (en) 1991-03-15 1999-02-09 C-Cube Microsystems Decoder for compressed video signals
US5421028A (en) 1991-03-15 1995-05-30 Hewlett-Packard Company Processing commands and data in a common pipeline path in a high-speed computer graphics system
US5457482A (en) 1991-03-15 1995-10-10 Hewlett Packard Company Method and apparatus for utilizing off-screen memory as a simultaneously displayable channel
JP2866754B2 (ja) 1991-03-27 1999-03-08 三菱電機株式会社 演算処理装置
US5220325A (en) * 1991-03-28 1993-06-15 At&T Bell Laboratories Hierarchical variable length decoder for digital video data
US5203003A (en) 1991-03-28 1993-04-13 Echelon Corporation Computer architecture for conserving power by using shared resources and method for suspending processor execution in pipeline
US5164819A (en) 1991-04-03 1992-11-17 Music John D Method and system for coding and compressing color video signals
US5287193A (en) 1991-04-10 1994-02-15 Industrial Technology Research Institute Parallel processing architecture of run-length codes
US5457780A (en) 1991-04-17 1995-10-10 Shaw; Venson M. System for producing a video-instruction set utilizing a real-time frame differential bit map and microblock subimages
US5182642A (en) 1991-04-19 1993-01-26 General Dynamics Lands Systems Inc. Apparatus and method for the compression and transmission of multiformat data
JP3109854B2 (ja) 1991-04-23 2000-11-20 キヤノン株式会社 画像符号化方法及び装置
US5146325A (en) * 1991-04-29 1992-09-08 Rca Thomson Licensing Corporation Video signal decompression apparatus for independently compressed even and odd field data
US5185819A (en) * 1991-04-29 1993-02-09 General Electric Company Video signal compression apparatus for independently compressing odd and even fields
US5212549A (en) 1991-04-29 1993-05-18 Rca Thomson Licensing Corporation Error concealment apparatus for a compressed video signal processing system
US5263136A (en) 1991-04-30 1993-11-16 Optigraphics Corporation System for managing tiled images using multiple resolutions
JP3532932B2 (ja) 1991-05-20 2004-05-31 モトローラ・インコーポレイテッド 時間重複メモリ・アクセスを有するランダムにアクセス可能なメモリ
US5212742A (en) * 1991-05-24 1993-05-18 Apple Computer, Inc. Method and apparatus for encoding/decoding image data
EP0514663A3 (en) 1991-05-24 1993-07-14 International Business Machines Corporation An apparatus and method for motion video encoding employing an adaptive quantizer
AU657510B2 (en) 1991-05-24 1995-03-16 Apple Inc. Improved image encoding/decoding method and apparatus
AU2158692A (en) 1991-05-24 1993-01-08 British Technology Group Usa, Inc. Optimizing compiler for computers
JPH04354287A (ja) 1991-05-30 1992-12-08 Sony Corp 画像補間回路
JP2569496Y2 (ja) 1991-06-07 1998-04-22 日東工器株式会社 ダイアフラムポンプ
US5228098A (en) * 1991-06-14 1993-07-13 Tektronix, Inc. Adaptive spatio-temporal compression/decompression of video image signals
US5184347A (en) * 1991-07-09 1993-02-02 At&T Bell Laboratories Adaptive synchronization arrangement
US5404550A (en) 1991-07-25 1995-04-04 Tandem Computers Incorporated Method and apparatus for executing tasks by following a linked list of memory packets
US5254991A (en) 1991-07-30 1993-10-19 Lsi Logic Corporation Method and apparatus for decoding Huffman codes
GB2258781B (en) 1991-08-13 1995-05-03 Sony Broadcast & Communication Data compression
US5321806A (en) 1991-08-21 1994-06-14 Digital Equipment Corporation Method and apparatus for transmitting graphics command in a computer graphics system
JP3108479B2 (ja) 1991-08-28 2000-11-13 株式会社リコー 符号化復号化方法およびその装置
US5319460A (en) 1991-08-29 1994-06-07 Canon Kabushiki Kaisha Image signal processing device including frame memory
JP2507204B2 (ja) 1991-08-30 1996-06-12 松下電器産業株式会社 映像信号符号化装置
US5309563A (en) 1991-09-09 1994-05-03 Compaq Computer Corporation Computer implemented method for transferring command messages between a system manager for a computer system and a network operating system associated therewith
US5168375A (en) * 1991-09-18 1992-12-01 Polaroid Corporation Image reconstruction by use of discrete cosine and related transforms
GB2260053B (en) 1991-09-27 1995-03-08 Sony Broadcast & Communication Image signal processing
US5261047A (en) 1991-10-29 1993-11-09 Xerox Corporation Bus arbitration scheme for facilitating operation of a printing apparatus
US5231484A (en) 1991-11-08 1993-07-27 International Business Machines Corporation Motion video compression system with adaptive bit allocation and quantization
US5214507A (en) * 1991-11-08 1993-05-25 At&T Bell Laboratories Video signal quantization for an mpeg like coding environment
US5257223A (en) 1991-11-13 1993-10-26 Hewlett-Packard Company Flip-flop circuit with controllable copying between slave and scan latches
JPH05137131A (ja) * 1991-11-13 1993-06-01 Sony Corp フレーム間動き予測方法
US5227878A (en) * 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
US5237413A (en) 1991-11-19 1993-08-17 Scientific-Atlanta, Inc. Motion filter for digital television system
US5175617A (en) * 1991-12-04 1992-12-29 Vision Applications, Inc. Telephone line picture transmission
US5307180A (en) 1991-12-18 1994-04-26 Xerox Corporation Method and apparatus for controlling the processing of digital image signals
US5241222A (en) * 1991-12-20 1993-08-31 Eastman Kodak Company Dram interface adapter circuit
US5517603A (en) 1991-12-20 1996-05-14 Apple Computer, Inc. Scanline rendering device for generating pixel values for displaying three-dimensional graphical images
US5307449A (en) 1991-12-20 1994-04-26 Apple Computer, Inc. Method and apparatus for simultaneously rendering multiple scanlines
US5237432A (en) 1991-12-23 1993-08-17 Xerox Corporation Image scaling apparatus
US5159449A (en) * 1991-12-26 1992-10-27 Workstation Technologies, Inc. Method and apparatus for data reduction in a video image data reduction system
US5446866A (en) 1992-01-30 1995-08-29 Apple Computer, Inc. Architecture for transferring pixel streams, without control information, in a plurality of formats utilizing addressable source and destination channels associated with the source and destination components
JPH06153069A (ja) * 1992-10-30 1994-05-31 Sony Corp 画像の変換装置、複製装置、再生装置、および表示装置
US5225832A (en) * 1992-02-13 1993-07-06 Industrial Technology Research Institute High speed variable length decoder
US5280349A (en) * 1992-02-13 1994-01-18 Industrial Technology Research Institute HDTV decoder
US5490257A (en) 1992-02-24 1996-02-06 Advanced Micro Devices, Inc. RAM based FIFO memory half-full detection apparatus and method
US5357606A (en) 1992-02-25 1994-10-18 Apple Computer, Inc. Row interleaved frame buffer
JP3323950B2 (ja) 1992-03-17 2002-09-09 サン・マイクロシステムズ・インコーポレーテッド デジタル画像処理システムでidctを実施する方法及びそのためのidctプロセッサ
US5233348A (en) * 1992-03-26 1993-08-03 General Instrument Corporation Variable length code word decoder for use in digital communication systems
US5293229A (en) 1992-03-27 1994-03-08 Matsushita Electric Corporation Of America Apparatus and method for processing groups of fields in a video data compression system
US5333266A (en) 1992-03-27 1994-07-26 International Business Machines Corporation Method and apparatus for message handling in computer systems
US5253058A (en) 1992-04-01 1993-10-12 Bell Communications Research, Inc. Efficient coding scheme for multilevel video transmission
JPH07505514A (ja) 1992-04-01 1995-06-15 インテル コーポレイシヨン 同期フレームを用いてディジタル・ビデオ画像のシーケンスを圧縮および復元するための方法および装置
US5329313A (en) 1992-04-01 1994-07-12 Intel Corporation Method and apparatus for real time compression and decompression of a digital motion video signal using a fixed Huffman table
KR0160610B1 (ko) 1992-04-07 1999-01-15 강진구 가변장부호화에 의한 영상압축방법과 신장방법 및 그 장치
US5287420A (en) 1992-04-08 1994-02-15 Supermac Technology Method for image compression on a personal computer
US5283646A (en) 1992-04-09 1994-02-01 Picturetel Corporation Quantizer control method and apparatus
US5241383A (en) * 1992-05-13 1993-08-31 Bell Communications Research, Inc. Pseudo-constant bit rate video coding with quantization parameter adjustment
GB2267194B (en) 1992-05-13 1995-10-04 Sony Broadcast & Communication Apparatus and method for processing image data
US5369405A (en) 1992-05-19 1994-11-29 Goldstar Co., Ltd. Coefficient generation apparatus for variable length decoder
US5305438A (en) 1992-05-19 1994-04-19 Sony Electronics Inc. Video storage, processing, and distribution system using recording format independent hierarchical storages and processors
CA2096584A1 (en) 1992-05-28 1993-11-29 Frank H. Liao Variable length code decoder for video decompression operations
US5450599A (en) 1992-06-04 1995-09-12 International Business Machines Corporation Sequential pipelined processing for the compression and decompression of image data
US5289577A (en) 1992-06-04 1994-02-22 International Business Machines Incorporated Process-pipeline architecture for image/video processing
KR940010433B1 (ko) * 1992-06-09 1994-10-22 대우전자 주식회사 가변길이 코드 디코딩장치
US5276513A (en) 1992-06-10 1994-01-04 Rca Thomson Licensing Corporation Implementation architecture for performing hierarchical motion analysis of video images in real time
JPH0695986A (ja) 1992-06-19 1994-04-08 Westinghouse Electric Corp <We> リアルタイムデータ・イメージングネットワークシステム及びその操作方法
US5289276A (en) 1992-06-19 1994-02-22 General Electric Company Method and apparatus for conveying compressed video data over a noisy communication channel
US5276681A (en) 1992-06-25 1994-01-04 Starlight Networks Process for fair and prioritized access to limited output buffers in a multi-port switch
SG45281A1 (en) 1992-06-26 1998-01-16 Discovision Ass Method and arrangement for transformation of signals from a frequency to a time domain
DE69229338T2 (de) 1992-06-30 1999-12-16 Discovision Associates, Irvine Datenpipelinesystem
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
US5287182A (en) * 1992-07-02 1994-02-15 At&T Bell Laboratories Timing recovery for variable bit-rate video on asynchronous transfer mode (ATM) networks
US5412782A (en) 1992-07-02 1995-05-02 3Com Corporation Programmed I/O ethernet adapter with early interrupts for accelerating data transfer
US5253055A (en) 1992-07-02 1993-10-12 At&T Bell Laboratories Efficient frequency scalable video encoding with coefficient selection
US5287178A (en) 1992-07-06 1994-02-15 General Electric Company Reset control network for a video signal encoder
US5325092A (en) 1992-07-07 1994-06-28 Ricoh Company, Ltd. Huffman decoder architecture for high speed operation and reduced memory
US5278620A (en) 1992-07-08 1994-01-11 Xerox Corporation Cleaning blade equipped with a vibration sensor
US5231486A (en) 1992-07-27 1993-07-27 General Electric Company Data separation processing in a dual channel digital high definition television system
US5278647A (en) 1992-08-05 1994-01-11 At&T Bell Laboratories Video decoder using adaptive macroblock leak signals
FR2695278B1 (fr) 1992-08-26 1994-10-14 Euro Cp Sarl Procédé d'échange d'informations, en particulier entre équipements d'un local, et unité fonctionnelle et installation s'y rapportant.
US5406279A (en) 1992-09-02 1995-04-11 Cirrus Logic, Inc. General purpose, hash-based technique for single-pass lossless data compression
JP3278756B2 (ja) * 1992-09-10 2002-04-30 日本テキサス・インスツルメンツ株式会社 画像処理方法及び装置
US5301019A (en) 1992-09-17 1994-04-05 Zenith Electronics Corp. Data compression system having perceptually weighted motion vectors
US5351047A (en) 1992-09-21 1994-09-27 Laboratory Automation, Inc. Data decoding method and apparatus
US5294894A (en) 1992-10-02 1994-03-15 Compaq Computer Corporation Method of and apparatus for startup of a digital computer system clock
US5298992A (en) 1992-10-08 1994-03-29 International Business Machines Corporation System and method for frame-differencing based video compression/decompression with forward and reverse playback capability
US5300949A (en) 1992-10-22 1994-04-05 International Business Machines Corporation Scalable digital video decompressor
JPH07506728A (ja) * 1992-10-23 1995-07-27 シャールテック・シュペツィアルマシーネン・ゲーエムベーハー・ウント・コンパニー・カーゲー 骨抜き処理のための装置および方法
US5278520A (en) 1992-10-26 1994-01-11 Codex, Corp. Phase lock detection in a phase lock loop
US5329619A (en) 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5497498A (en) 1992-11-05 1996-03-05 Giga Operations Corporation Video processing module using a second programmable logic device which reconfigures a first programmable logic device for data transformation
JP3007235B2 (ja) 1992-11-10 2000-02-07 富士写真フイルム株式会社 可変長符号の伸長装置および圧縮伸長装置
US5420801A (en) 1992-11-13 1995-05-30 International Business Machines Corporation System and method for synchronization of multimedia streams
US5301272A (en) 1992-11-25 1994-04-05 Intel Corporation Method and apparatus for address space aliasing to identify pixel types
JPH06178274A (ja) * 1992-11-30 1994-06-24 Sony Corp 動画像復号化装置
JP3255308B2 (ja) * 1992-12-18 2002-02-12 ソニー株式会社 データ再生装置
US5517670A (en) 1992-12-30 1996-05-14 International Business Machines Corporation Adaptive data transfer channel employing extended data block capability
JP3257643B2 (ja) * 1993-01-18 2002-02-18 ソニー株式会社 画像符号化装置および画像復号化装置
GB2274956B (en) 1993-02-05 1997-04-02 Sony Broadcast & Communication Image data compression
US5396497A (en) 1993-02-26 1995-03-07 Sony Corporation Synchronization of audio/video information
AU672070B2 (en) 1993-02-26 1996-09-19 Sony Corporation Synchronization of audio/video information
US5298896A (en) 1993-03-15 1994-03-29 Bell Communications Research, Inc. Method and system for high order conditional entropy coding
FR2703535A1 (fr) * 1993-03-31 1994-10-07 Philips Electronique Lab Procédé et dispositif pour décoder des images comprimées.
US5410355A (en) 1993-04-02 1995-04-25 Rca Thomson Licensing Corporation Video signal processor including input codeword buffer for providing stored codewords to codeword priority analysis circuit
US5345408A (en) 1993-04-19 1994-09-06 Gi Corporation Inverse discrete cosine transform processor
US5572691A (en) 1993-04-21 1996-11-05 Gi Corporation Apparatus and method for providing multiple data streams from stored data using dual memory buffers
US5699460A (en) * 1993-04-27 1997-12-16 Array Microsystems Image compression coprocessor with data flow control and multiple processing units
US5486876A (en) 1993-04-27 1996-01-23 Array Microsystems, Inc. Video interface unit for mapping physical image data to logical tiles
US5448310A (en) 1993-04-27 1995-09-05 Array Microsystems, Inc. Motion estimation coprocessor
US5486864A (en) 1993-05-13 1996-01-23 Rca Thomson Licensing Corporation Differential time code method and apparatus as for a compressed video signal
EP0625858B1 (en) 1993-05-19 1998-06-24 Alcatel Video server memory management method
FR2705805B1 (fr) 1993-05-27 1996-06-28 Sgs Thomson Microelectronics Système de traitement d'images.
US5304953A (en) 1993-06-01 1994-04-19 Motorola, Inc. Lock recovery circuit for a phase locked loop
EP0627835B1 (en) 1993-06-03 2001-08-29 International Business Machines Corporation Improved network layer packet structure
US5425061A (en) 1993-06-07 1995-06-13 Texas Instruments Incorporated Method and apparatus for bit stream synchronization
JP2560988B2 (ja) 1993-07-16 1996-12-04 日本電気株式会社 情報処理装置および処理方法
US5577203A (en) 1993-07-29 1996-11-19 Cirrus Logic, Inc. Video processing methods
US5598514A (en) 1993-08-09 1997-01-28 C-Cube Microsystems Structure and method for a multistandard video encoder/decoder
JP3247804B2 (ja) 1993-08-17 2002-01-21 株式会社リコー データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置
US5430485A (en) 1993-09-30 1995-07-04 Thomson Consumer Electronics, Inc. Audio/video synchronization in a digital transmission system
US5568165A (en) 1993-10-22 1996-10-22 Auravision Corporation Video processing technique using multi-buffer video memory
US5398072A (en) 1993-10-25 1995-03-14 Lsi Logic Corporation Management of channel buffer in video decoders
US5452006A (en) 1993-10-25 1995-09-19 Lsi Logic Corporation Two-part synchronization scheme for digital video decoders
US5528238A (en) * 1993-11-24 1996-06-18 Intel Corporation Process, apparatus and system for decoding variable-length encoded signals
US5490247A (en) 1993-11-24 1996-02-06 Intel Corporation Video subsystem for computer-based conferencing system
US5634025A (en) * 1993-12-09 1997-05-27 International Business Machines Corporation Method and system for efficiently fetching variable-width instructions in a data processing system having multiple prefetch units
EP0895167A3 (en) * 1994-03-24 1999-03-10 Discovision Associates Method and apparatus for interfacing with ram
CA2145363C (en) * 1994-03-24 1999-07-13 Anthony Mark Jones Ram interface
US5541595A (en) 1994-05-19 1996-07-30 Matsushita Electric Corporation Of America Variable length code decoder for simultaneous decoding the most significant bits and the least significant bits of a variable length code
US5477263A (en) 1994-05-26 1995-12-19 Bell Atlantic Network Services, Inc. Method and apparatus for video on demand with fast forward, reverse and channel pause
US5495291A (en) 1994-07-22 1996-02-27 Hewlett-Packard Company Decompression system for compressed video data for providing uninterrupted decompressed video data output
US5703793A (en) * 1994-07-29 1997-12-30 Discovision Associates Video decompression
US5559999A (en) 1994-09-09 1996-09-24 Lsi Logic Corporation MPEG decoding system including tag list for associating presentation time stamps with encoded data units
US5566089A (en) 1994-10-26 1996-10-15 General Instrument Corporation Of Delaware Syntax parser for a video decompression processor
US5517250A (en) 1995-02-28 1996-05-14 General Instrument Corporation Of Delaware Acquisition of desired data from a packetized data stream and synchronization thereto

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE48845E1 (en) 2002-04-01 2021-12-07 Broadcom Corporation Video decoding system supporting multiple standards
JP2009099256A (ja) * 2003-07-03 2009-05-07 Panasonic Corp 記録媒体,記録方法
US8280230B2 (en) 2003-07-03 2012-10-02 Panasonic Corporation Recording medium, reproduction apparatus, recording method, integrated circuit, program and reproduction method
US8369690B2 (en) 2003-07-03 2013-02-05 Panasonic Corporation Recording medium, reproduction apparatus, recording method, integrated circuit, program, and reproduction method

Also Published As

Publication number Publication date
EP0891097A3 (en) 2000-01-12
EP0891098A3 (en) 2000-01-12
MXPA99001886A (es) 2004-09-07
US5768629A (en) 1998-06-16
US5740460A (en) 1998-04-14
EP0891098A2 (en) 1999-01-13
US5703793A (en) 1997-12-30
EP0891094A2 (en) 1999-01-13
EP0891097A2 (en) 1999-01-13
EP0891099A3 (en) 2000-01-12
EP0891095A3 (en) 2000-01-12
EP0892556A2 (en) 1999-01-20
CN1144434A (zh) 1997-03-05
US5821885A (en) 1998-10-13
US6217234B1 (en) 2001-04-17
AU2400799A (en) 1999-06-24
JP2001094437A (ja) 2001-04-06
US5995727A (en) 1999-11-30
EP0891096A3 (en) 2000-01-12
US5835792A (en) 1998-11-10
US5801973A (en) 1998-09-01
EP0891096A2 (en) 1999-01-13
EP0891094A3 (en) 2000-01-12
JP2001168728A (ja) 2001-06-22
EP0891095A2 (en) 1999-01-13
US6799246B1 (en) 2004-09-28
CA2154962A1 (en) 1996-01-30
US5828907A (en) 1998-10-27
US5878273A (en) 1999-03-02
US6141721A (en) 2000-10-31
EP0891099A2 (en) 1999-01-13
EP0892556A3 (en) 2000-01-12
US5829007A (en) 1998-10-27
EP0695095A3 (en) 1999-03-17
AU701335B2 (en) 1999-01-28
AU701335C (en) 2001-11-08
AU2501995A (en) 1996-02-08
AU2400499A (en) 1999-06-03
EP0695095A2 (en) 1996-01-31
SG108204A1 (en) 2005-01-28
US5798719A (en) 1998-08-25
US5984512A (en) 1999-11-16
US5963154A (en) 1999-10-05

Similar Documents

Publication Publication Date Title
JPH08172624A (ja) Mpeg信号復号方法及び装置
US6119213A (en) Method for addressing data having variable data width using a fixed number of bits for address and width defining fields
JP3174996B2 (ja) スタートコード検出器
KR100304511B1 (ko) 비디오복원및디코딩시스템
KR100270798B1 (ko) 복수의 mpeg 오디오 및 비디오 신호를 디코딩하기 위한 시스템
HK1009626A (en) Video decompression