(57)【要約】【課題】ＭＰＥＧデコーダを備え、全高解像度デコーディングおよびディスプレイのみならず、低コストの低解像度ディスプレイ用にも使用可能であるテレビジョン受像機を実現する。【解決手段】ＭＰＥＧデコーダ１０〜３３は、水平ディテール削減（２９）とデータ再圧縮（３０）を選択的に採用する制御可能なデュアルモード・データ削減ネットワークを、デコーダと、表示されるイメージ情報（２７）が得られるデコーダ・フレーム・メモリ２０との間に使用している。データ削減量は、ディスプレイ・デバイスの解像度に従って、例えば、高精細解像度に等しく、またはそれ以下に製作者によって選択される。また、フレーム・メモリ・サイズも、ディスプレイ・デバイスの解像度に従って製作者によって選択される。【選択図】図１
2007097208.tif 000002
【特許請求の範囲】
【請求項１】
高精細イメージ情報を含んでいるＭＰＥＧ符号化入力信号を処理するシステムにおいて、
前記ＭＰＥＧ符号化信号をデコードするＭＰＥＧ互換の第１信号プロセッサと、
前記第１信号プロセッサからのデコードされた信号に応答して、変換されたバージョンのデコードされた信号を出力する第２信号プロセッサと、
メモリと、
前記変換された信号を前記メモリへ伝達する適応インタフェース・ネットワークであって、該インタフェースは該変換されたデータを受信する入力パスと、適応ビット幅をもち、該変換されたデータを該メモリへ伝達する出力パスとを有している適応インタフェース・ネットワークと
を備えたことを特徴とする装置。
【請求項２】
あらかじめ決められたイメージ解像度をもち、前記メモリから読み出された情報を表示するディスプレイ・デバイスを備え、
前記適応ビット幅は前記ディスプレイ・デバイスの前記解像度に従って決定されることを特徴とする請求項１に記載の装置。
【請求項３】
前記第１信号プロセッサは集積回路に置かれ、
前記メモリは集積回路の外部に置かれることを特徴とする請求項１に記載の装置。
【請求項４】
前記インタフェースの前記出力パスは前記集積回路の外部に置かれたデータ・バスであり、
前記インタフェースの前記入力パスは前記集積回路の内部に置かれたデータ・バスであり、
前記インタフェースは前記内部データ・バスのビット幅とは異なるビット幅を含んでいる前記出力パスのデータ・ビット幅を適応的に選択するよう構成されることを特徴とする請求項３に記載の装置。
【請求項５】
前記出力パスは前記内部データ・バスのビット幅より小さいビット幅を含むことを特徴とする請求項４に記載の装置。
【請求項６】
前記インタフェースは前記集積回路に置かれたマルチプレクサであることを特徴とする請求項３に記載の装置。
【請求項７】
前記第２信号プロセッサはデュアル動作モードのデータ削減ネットワークを含み、
前記インタフェースはデータを前記データ削減ネットワークから前記メモリへ伝達することを特徴とする請求項１に記載の装置。
【請求項８】
前記データ削減ネットワークは水平データ・デシメーション・ネットワークが上位であるデータ・コンプレッサを含むことを特徴とする請求項７に記載の装置。
【請求項９】
高精細イメージを表す情報を含んでいる入力ＭＰＥＧ符号化信号を処理する方法であって、
前記ＭＰＥＧ符号化信号をデコードしてデコードされたＭＰＥＧデータを得るステップと、
前記ＭＰＥＧデータを変換して変換されたデータを得るステップと、
前記変換されたデータを受信する入力パスと、前記変換されたデータを前記メモリへ伝達する出力パスとを介して前記変換されたデータを前記メモリへ伝達するステップ
を含む、前記変換されたデータをメモリにストアするステップと、
前記ストアされたデータを、あらかじめ決められた解像度をもつディスプレイ・デバイスにより表示するステップと
を備え、
前記出力パスは前記ディスプレイ・デバイスの前記解像度に従って決定されるデータ・ビット幅を示すことを特徴とする方法。
【請求項１０】
高精細イメージを表す情報を含んでいる入力ＭＰＥＧ符号化信号を処理する方法であって、
前記入力信号を圧縮解除して圧縮解除された信号を得るステップと、
再圧縮されるデータを受信する入力パスと、前記再圧縮されるデータを前記メモリへ伝達する出力パスとを介して前記再圧縮されるデータを前記メモリへ適応的に伝達するステップ
を含む、前記再圧縮されるデータをメモリにストアするステップと、
前記ストアされるデータをディスプレイ・デバイス上に表示するステップと
を含む、前記圧縮解除された信号をイメージの動きに関して処理することにより変換された信号を得るステップと
を備え、前記出力パスは前記ディスプレイ・デバイスの前記解像度に従って決定される適応データ・ビット幅を示すことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、高精細テレビジョン(high definition television - ＨＤＴＶ）信号をディジタル方式で処理するテレビジョン受像機に関し、より詳細には、ＨＤＴＶ受像機および低コストＨＤＴＶ受像機に関連してＭＰＥＧ互換のデコーダ(MPEG compatible decoder) で使用されるメモリ管理システムに関する。
【背景技術】
【０００２】
ディジタル技術の急速な進歩に伴って、高精細テレビジョン（ＨＤＴＶ）などの種々の分野におけるディジタル・イメージ信号処理も同じように進歩を遂げている。これに関連して開発されたものとして、ＭＰＥＧ(Motion Picture Experts Group)信号圧縮規格（ISO/IEC 13818-2 ，１９９４年５月１０日）がある。この広く受け入れられているイメージ処理標準は、ＨＤＴＶシステムを含む衛星、ケーブルおよび地上放送システムで使用すると特に魅力的であることが知られている。
【０００３】
最近、米国においてグランド・アライアンス(Grand Alliance ) ＨＤＴＶシステムとして提案されているディジタルＨＤＴＶ地上放送システムでは、ＭＰＥＧ−２圧縮標準を使用してデータ圧縮された高精細（high definition - ＨＤ）プログラム・マテリアルのディジタル放送の標準が定義されている。このグランド・アライアンスＨＤＴＶシステムについて、例えば、1994 Proceedings of the National Association of Broadcasters, 48th Annual Broadcast Engineering Conference Proceedings, March 20-24,1994に記載されている。ＭＰＥＧ−２規格(standard)では、ＨＤイメージを圧縮解除(decompress)してテレビジョン受像機内などのディスプレイ・デバイスにより再生するために必要な手順が定義されている。ＭＰＥＧデコーダが、地上放送規格に定義されているＨＤイメージを正しくデコード（復号）するためには、約８０メガビット（Ｍｂ) のメモリが必要である。コンシューマ受像機では約９６Ｍｂのメモリが必要である。
【０００４】
ＨＤ放送規格では、ライン当り１９２０ピクセル（水平）×１０８０ライン（垂直）までのイメージ解像度が規定されている。しかし、ＨＤ信号の受像機によっては、経済上の理由から、このような高い分解能を有するイメージの細部までを解像することができないディスプレイ・デバイスを採用しているものがある。また、低コスト受像機によっては、その解像能力(resolution capability) がフルＨＤ解像度(full HD resolution)よりも大幅に低いものや、その解像能力が従来の標準精細（ＳＤ) テレビジョン受像機のそれに近いもの、つまり、７２０ピクセル×４８０ラインであるものがある。ＭＰＥＧ圧縮規格のメイン・プロファイル(main profile)には、受信された高解像度ＨＤ圧縮データストリームから全高解像度ＨＤイメージより低い解像度でデコードするための、コスト節減(cost saving) 型規定は含まれていない。たとえディスプレイ・デバイスの水平および垂直解像度が高精細信号ソースから得られるものの半分だけである場合でも、ＭＰＥＧ規格に従って正しくデコードするためには全８０メガビットのメモリを必要とするのが通常である。
【０００５】
【非特許文献１】Ang、外，「Video Compression Makes Big Gains」，IEEE Spectrum，１９９１年１０月
【発明の開示】
【発明が解決しようとする課題】
【０００６】
テレビジョン信号受像機に見られるようなＭＰＥＧビデオ信号デコーダでは、ＭＰＥＧ符号化ディジタル・データストリームは公知のようにＩ、ＰおよびＢイメージ・フレームを表しているので、これをデコードするためには一般に２イメージ・フレーム以上のメモリが必要になる。ＭＰＥＧデータストリームをデコードするためには、３フレームのメモリが必要になるのが一般である。２フレームのメモリはレファレンスＩまたはＰフレーム・データをストアするために必要であり、１フレームのメモリはＢフレーム・データをストアするために使用されている。現在では、必要とされるメモリ量のコストは重要である。メモリを節減し、その管理を慎重に行う必要性は、特に経済的なビデオおよびテレビジョン・コンシューマ・プロダクトにおいては、かかるプロダクトのコストを妥当なレベルに抑える上で重要である。
【課題を解決するための手段】
【０００７】
本発明の原理によれば、本発明は、低コストの高精細システムなどのコンシューマ・プロダクト、特に、ＭＰＥＧ互換デコーダを使用するプロダクトに必要なメモリ量を節減し、その管理を慎重に行うことが望ましいとの認識に基づいている。この点に関してさらに、本発明は、ＭＰＥＧデコーダが全高精細ディスプレイ・システムで使用されるとは限らないとの認識、ならびに、ＭＰＥＧデコーダによっては、低コストで、低精細であっても、完全なＭＰＥＧデコーディングでない復号処理を許容し得る応用分野があるとの認識に基づいている。
【０００８】
本発明によるシステムでは、メモリには、ＭＰＥＧデコーダによって処理された情報がストアされ、そして、あらかじめ決めたイメージ解像度をもつディスプレイ・デバイスには、メモリから得られたイメージ情報が表示される。ＭＰＥＧデコーダは、データ削減情報(data reduced information) をメモリへ送るためのデータ削減ネットワーク(data reduction network)を含んでいる。上記データ削減ネットワークから得られるデータ削減量は、関連するイメージ・ディスプレイ・デバイスのイメージ解像度の関数になっている。
【０００９】
開示されている本発明の実施の形態では、ＭＰＥＧデコーダを備えたテレビジョン受像機は、全高精細デコーディングおよびとディスプレイを行う場合にも、低コストの低精細ディスプレイを行う場合にも、設定可能になっている。ＭＰＥＧデコーダは、プログラマブル・デュアルモード・データ削減ネットワークを使用し、デコーダと、表示されるイメージ情報が得られるデコーダ・フレーム・メモリとの間で水平ディテール削減とデータ再圧縮(data re-compression) を選択的に採用するようになっている。データ削減量は、受像機メーカが選定した関連イメージ・ディスプレイ・デバイスのイメージ解像度の関数になっている。フレーム・メモリも、ディスプレイ・デバイスの解像度と互換性をもつようにメーカによって選択される。メモリがデコーダの外部に置かれているときは、メモリ・ユニットのサイズは、システムの所期のイメージ解像度と互換性をもつように適切に選択することが可能である。
【発明を実施するための最良の形態】
【００１０】
図１は、テレビジョン受像機に見られるようなディジタル・ビデオ信号プロセッサのうち、入力された高精細ビデオ信号を処理する部分を示す図である。このプロセッサは集積回路に含まれ、アナログ・チャネルを介して標準精細(standard definition) ビデオ信号を受信し、処理する機能を備えている。このビデオ・プロセッサは、ブロック１０，１２，１４，１６，１８，２０および２２で構成された従来のＭＰＥＧデコーダを含んでいる。ＭＰＥＧエンコーダとデコーダは、例えば、非特許文献１により説明されている。
【００１１】
図１のシステムは、ＭＰＥＧ符号化圧縮データ(MPEG coded compressed data)の制御されたデータストリーム(controlled data stream) を、その前に置かれた入力プロセッサ、例えば、入力信号を復調したあとでデータ・パケットを分離するトランスポート・デコーダから、受信する。この例では、受信される入力データストリームは、米国の高精細地上テレビジョン放送システムのためのグランド・アライアンス仕様規格に規定されている高精細イメージ・マテリアル（１９２０×１０８８）を表している。入力データストリームは、８×８ピクセル（画素）を表すデータ・ブロックの形式になっている。このデータは、圧縮された符号化イントラフレーム（intraframe：フレーム内）情報とインタフレーム（interframe：フレーム間）情報を表している。イントラフレーム情報は、Ｉフレーム・アンカ・フレームを含んでいる。インタフレーム情報は、隣接ピクチャ・フレーム間のイメージ差分(image difference)を表す予測動き符号化残余イメージ情報(predictive motion coded residual image information)を含んでいる。インタフレーム動き符号化(motion coding) は、処理しようとする現ブロックと先行再構築イメージ(prior reconstructed image) 内のブロックとの間のオフセットを表す動きベクトル(motion vector) を生成することにより行われる。現ブロックと先行ブロックとの間の最良一致(best match)を表す動きベクトルは符号化され、伝送される。また、各動き補償(motion compensated)８×８ブロックと先行再構築ブロックの間との差分（残余）は伝送される前に、ＤＣＴ変換され、量子化され、可変長符号化される。この動き補償符号化プロセスは、非特許文献１の論文を含む、種々の出版物に詳しく説明されている。
【００１２】
ＭＰＥＧデコーダは、低減メモリ動作モード(reduced memory operating modes)を呈する。この動作モードは、高精細イメージ・シーケンスを低コスト受像機でデコードするとき必要になるメモリ量を大幅に節減することができる。後述するように、これらのモードでは、メモリにストアされるビデオ・フレームを圧縮し、デコーダ・ループ内でピクセル・データを選択的に水平方向にフィルタリングし、デシメート(decimate)することが行われる。例えば、あるモードでは、システムはアンカ・フレームの圧縮を行う。別のモードでは、システムはローパス・フィルタリングとダウンサンプリングによって水平方向ディテールを低減したあとで圧縮を行う。ブロック圧縮はデシメーションなしで使用できるが、水平デシメーションをデシメーションなしで行うことはこのシステムでは望ましくない。圧縮(compression) とデシメーション(decimation)どちらによる場合もメモリを２のファクタだけ低減するが、圧縮によった方が水平デシメーションによるよりも良好なピクチャが得られる。デコーダ・ループ内でどの処理を行っても（例えば、圧縮とデシメーション）、アーティファクト(artifacts) が発生する。デシメーションは圧縮の前に行うことが望ましいが、システムによっては、圧縮をデシメーションの前に行うことが望ましい場合もある。
【００１３】
入力された圧縮ピクセル・データ・ブロックは、ユニット１２によって可変長復号(variable length decoded) される前に、ユニット１０によってバッファされる。バッファ１０は、メインレベルのメイン・プロファイルＭＰＥＧデータストリームの場合には、記憶容量が１．７５メガビットになっている。ユニット１２からのデコードされた圧縮データ(decoded compressed data) は加算器１８の一方の入力に印加される前に、逆量子化ユニット１４と逆(inverse) 離散コサイン変換(discrete cosine transformation - ＤＣＴ）ユニット１６によって圧縮解除(decompress)される。注目すべきは、ユニット１６は全逆ＤＣＴ処理を行っていることである。どのＤＣＴ係数も破棄されないようにしたのは、本願の発明者はそのようにすることは、例えば、ＤＣＴ計算負荷量を軽減するためにはフィルタリング手法として望ましくないと判断したためである。フィルタリングはデシメーションの前に行うこと（図１０に示すように）が望ましい。ＤＣＴ係数を除去(drop)することは、水平方向および垂直方向のデシメーションと同じであるが、これは圧縮を粗雑化したもので(crude form of compression) 、フィルタリングとは等価ではないため、フィルタリングを正しく行うことは困難または不可能である。
【００１４】
逆量子化器(inverse quantizer) １４の量子化ステップ・サイズは、データフローがスムーズ化されることを保証するために、バッファ１０からの信号によって制御される。デコードされた動きベクトルは、後に説明するように、デコーダ１２から動き補償ユニット２２へ送られる。また、デコーダ１２は公知のように、インタフレーム／イントラフレーム・モード選択制御信号を出力する。なお、これは図面を簡単にするために図示されていない。ユニット１２，１４および１６によって行われるオペレーションは、送信側のエンコーダによって行われる対応するオペレーションの逆である。図１のＭＰＥＧデコーダは、受信したイメージを公知のＭＰＥＧ処理手法を用いて再構成する。この処理手法については、以下に簡単に説明する。
【００１５】
再構築されたピクセル・ブロックは、ユニット１６からの残余イメージ・データと動き補償ユニット２２の出力から得た予測イメージ・データとを、ビデオ・フレーム・メモリ２０の内容に基づいて加算することにより、加算器１８の出力から得られる。ピクセル・ブロックのフレーム全体が処理されると、その結果として得られた再構築イメージはフレーム・メモリ２０にストアされる。インタフレーム・モードでは、デコーダ１２から得た動きベクトルは、予測ブロック(predicted blocks)のロケーションをユニット２２から得るために使用される。
【００１６】
加算器１８、メモリ２０および動き補償ユニット２２を必要とするイメージ再構築プロセスは、ブロック・ベースのコンプレッサ３０および水平ディテールを低減するピクセル・デシメーション・ユニット２９を使用すると、必要なメモリ量を大幅に低減するという利点が得られる。フレーム・メモリ２０のサイズは、ユニット３０によって行われる圧縮と、ユニット２９によって行われるピクセル・デシメーションとの関数として、２５％、５０％またはそれ以上低減することができる。ユニット３２と３３はそれぞれ、ユニット３０と２９によって行われる機能とは逆のことを行う。ユニット２９と３０の詳細は、以降の図を参照して説明する。
【００１７】
本願の発明者は、ＭＰＥＧデコーダが高精細信号を処理するのに適している場合であっても、実際には、すべての応用分野でＭＰＥＧデコーダが全高精細ディスプレイ・システムで使用されるとは限らないことを認識した。このようなデコーダ回路において、ある種の低コストの応用分野では、完全なＭＰＥＧデコーディングより低いレベルのデコーディングを許容する。
【００１８】
この実施の形態では、ビデオ・フレーム・メモリ２０は、図１に示すようにＭＰＥＧデコーダを含んでいる集積回路および関連するエレメント１０〜３４の外部に置かれている。ＭＰＥＧデコーダ集積回路に実装されていない、ある種のエレメントはディスプレイ・プロセッサ２６に含まれることができる。このような外部メモリ・デバイスを使用すると、受像機メーカは、受像機が高精細データストリームを受信するとき、受像機の使用目的が、例えば、全高精細ディスプレイ用である場合も、低精細ディスプレイ用である場合も、その使用目的に合った経済的サイズのメモリ・デバイスを選択することができる。ＭＰＥＧデコーディングにはでは大量のメモリが使用されるのが通常であるので、実際問題としては、メモリをデコーダ集積回路の外部に置いておく必要があるのが現状である。技術がさらに進歩すれば、メモリをＭＰＥＧデコーダ・エレメントと同じ集積回路上に置くことが可能になるはずである。しかし、外部メモリ・デバイスを使用すると、メーカは、以下に説明するように、ディスプレイ解像度に合ったメモリ・サイズを自由に選択することができる。
【００１９】
実際には、受像機を、拡張機能を備えた高価なプレミアム付きモデルとして設定するか、あるいは機能の少ないより経済的なモデルとして構成するかは、受像機メーカが決定することである。関心のある機能の１つは、表示されるイメージの解像度である。低コストの受像機において、コストの低減化に役立つ要因としては、高価でない解像度を下げたディスプレイ・デバイス、ＭＰＥＧデコーダに関連するメモリ量などがある。
【００２０】
本発明の原理によれば、ＭＰＥＧデコーダに関連する回路は、ＨＤディスプレイが望まれているときでも、またＨＤディスプレイ解像度が経済的理由やその他の理由から必要でないときでも、受信された高精細データストリームを、低減メモリを使用してデコード化することを可能にしている。低コスト受像機モデルの場合、メーカは低減デコーダ・メモリまたは低解像度イメージ・ディスプレイ、またはその両方を経済的措置として採用するのが一般的である。本発明によれば、１つのＭＰＥＧデコーダ構成（つまり、単一の集積回路設計）を２つ以上の受像機構成で使用できるので、コストを大幅に節減することができる。
【００２１】
以下では、本発明の理解を容易にするために、いくつかの実例を参照して説明する。１９２０×１０８８の高精細（ＨＤ）イメージ・シーケンスの通常のＭＰＥＧデコードディングでは、少なくとも８０メガビットのメモリが必要である。これは、フォワード（順方向）・アンカ・フレーム、バックワード（逆方向）・アンカ・フレーム、および表示されるデコードされたフレームをストアするために必要になるもので、そのうち８メガビットは圧縮データ・ビット・バッファ用である。８０メガビットのメモリ・システムを構築するためには、１６メガビット・メモリ・デバイスが５個必要になるので、実際にはこれは困難である。ここで、各メガビットは２２０、すなわち、１，０４８，５７６ビットを表している。メモリの大部分はイメージ・データをストアするために使用され、圧縮ビデオ・ビットストリーム・データをストアするために必要なメモリ量は少量である。
【００２２】
この例では、必要とされるメモリ量は、コンプレッサ(compressor)がデータを２５％圧縮するときは６４メガビットに低下する。また、必要とされるメモリ量は、データが５０％圧縮されるときはさらに経済的な４８メガビットまで低下する。２５％圧縮ファクタはフルＨＤイメージ・ディスプレイの場合であり、これは圧縮を行わない全ＭＰＥＧデコードディングと実質上区別できない。５０％の圧縮のときは、訓練を受けた観察者ならば、かろうじて目立つアーティファクトに気づくはずであろう。どちらの場合も、デコードされたイメージ・シーケンスは１９２０×１０８８のフルＨＤ解像度でフルＨＤ解像度イメージ・ディスプレイ・デバイスにより表示される。
【００２３】
しかし、ケースによっては、受像機モデルがフルＨＤ解像能力より劣った高価でないディスプレイ・デバイスを使用するときのように、フルＨＤイメージ解像度が必要でない場合もある。そのような場合に望ましいことは、ＨＤ情報を受信し、フルＨＤ解像度イメージを表示することなくデコードすることである。そのような受像機では、デシメータ(decimator) ２９とコンプレッサ３０を一緒に使用することにより、デコーダに必要なメモリ量を大幅に低減することができる。例えば、デシメータ２９はデータを２のファクタだけ水平方向にデシメートすることができ、コンプレッサ３０はデシメートされたデータを５０％だけ圧縮することができる。この結果、デコーダに必要なメモリ量は３２メガビットまで大幅に低減されることになる。このケースでは、表示されるイメージの解像度は９６０×１０８８であるので、これは１Ｈまたは２Ｈ受像機のどちらの応用にも充分である。従って、フルＨＤイメージ・データストリームをデコードする能力をもつ低コスト受像機は、わずか３２メガビットのＭＰＥＧデコーダ・メモリを使用するだけで構築することができる。
【００２４】
ここで開示しているシステムには、低減メモリを２モードで動作させることができるという利点がある。第１のモードでは、上述したようにユニット３０を使用してアンカ・フレーム（ＩフレームおよびＰフレーム）の圧縮が行われる。第２のモードでは、水平ディテール解像度低減がユニット２９によって行われるので、デコーダに必要なメモリ量が低減化される。ユニット２９は、水平ローパス・フィルタリングの後に、２のファクタだけ水平ピクセルをデシメート（ダウンサンプル）する。垂直ディテール低減はこの実施の形態では採用しない。受信された高精細入力情報のデコーディングをユニット３０から得られる圧縮と結合すると、大幅に低減されたデコーダ・メモリでデコーディングを達成することができる。
【００２５】
ここで説明しているシステムは、単一のＭＰＥＧデコーダが異なるメモリ量を使用して異なるイメージ解像度または品質をもつ高精細データストリームをデコードすることを可能にするものであるが、これは、上述したコンプレッサ３０とデシメータ２９をマルチプレクサ／デマルチプレクサ３１と併用することによって容易にしている。ユニット３１はデコーダとメモリ間の適応インタフェースとして動作する。内部メモリ・データ・バスとメモリ・インタフェース３１の入力との間は、図１２に示すように１９２ビット幅になっている。バスの幅とバスの動作周波数により、全高精細ＭＰＥＧデコーディングで利用できるバンド幅が決まる。このデータ・バス幅は現存テクノロジの能力範囲内であるので、バスに必要な動作速度は従来の４０ＭＨｚになっている。この例では、マルチプレクサ３１の出力とメモリ２０とを結ぶ双方向外部メモリ・バスで利用できるビット幅は９６ビットであるが、プログラマブル・ビット幅として９６，６４，４８またはそれ以下のどれがデータ用に使用されるかは、上述したように受像機の動作構成によって決まる。
【００２６】
外部メモリ・バスと内部メモリ・バスとの間のインタフェースは、マルチプレクサ３１を使用して内部メモリ・バスから外部メモリ・バスへ変換することにより行われる。メモリ２０へのアクセスは１９２ビットの整数倍として定義されている。前述したように、異なるレベルのイメージ品質に対する受像機の構成に応じて、コンプレッサ３０からメモリ２０に書き込まれるデータはユニット３１によって１９２ビットから外部メモリ・バスのターゲット幅（９６，６４，４８、または３２ビット）にデマルチプレクスされる。メモリ２０からデコンプレッサ３２に読み出されるデータは、ユニット３１によって外部バス幅から１９２ビットの内部バス幅にマルチプレクスされる。
【００２７】
表示されるイメージの関連解像度をサポートするために必要になるシステムのバンド幅の量は、受像機の構成に応じて変化する。バンド幅は、データ・パス幅を広くすると大きくなる。従って、システム構成とイメージ解像度が異なれば、必要になるメモリ・データ・パスの幅も異なることになる。内部メモリ・バスのデータ・パスは（外部）メモリ・パスのデータ・パスの整数倍であるので、内部メモリ・パスのクロック・レートは常に外部メモリ・パスのクロック・レートより低くなっている。内部データ・ワードは常に整数個の外部データ・ワードから作ることができる。同様に、整数個の外部データ・ワードは内部データ・ワードから生成することができる。
【００２８】
図１２を参照すると、ユニット２９〜３４は、ＭＰＥＧデコーダが高精細受像機に置かれているかどうか、あるいは若干低解像度の受像機に置かれているかどうかに応じて、ローカル・マイクロプロセッサによって制御される。マイクロプロセッサは、ユニット３０によって行われる圧縮量を決定し、そして、デシメータ２９を動作させるかどうか（データをダウンサンプルするために）、あるいはバイパスさせるかどうか（ダウンサンプリングしないでデータを加算器１８からコンプレッサ３０に送るために）を決定するようにプログラムされている。また、マイクロプロセッサは、特定の受像機構成用に必要なメモリ・データ・パス幅、例えば、９６，６４またはそれ以下のビット幅パスを、利用可能な９６ビット幅メモリ・パスから選択するようにマルチプレクサ３１に指示する。このシステムは、適切なソフトウェア制御メカニズムを使用してデシメーションと圧縮機能を動作禁止またはバイパスさせることにより、メモリを削減することなく全高精細ＭＰＥＧデコーディングを行うことができる。
【００２９】
図２は、メモリ・デバイス２０の必要メモリ量が低減化される様子を示したものである。説明を簡単にするために、以下では、ユニット３０が単独で圧縮を行う場合について説明する。図２に示すように、左側のメモリ・マップは全サイズ・メモリにおけるピクセル・ブロックのマッピングを示している。右側のマップは、ユニット３０で圧縮されたブロックをストアするために、５０％低減化されたメモリがどのように使用されるかを示している。図３に示す圧縮ネットワークの以下の説明で明らかにされるように、各ブロック（例えば、ブロックＣ）は、全サイズ・メモリの場合に通常必要になるスペースの５０％またはそれ以下に収まるように保証されている。つまり、ユニット３０により得られる圧縮は、５０％またはそれ以上である。この例では、圧縮後に残っている未使用メモリ・スペースは未使用のまま残されているので、どのブロックのデータの場合も、その開始位置は既知のロケーション、つまり、開始アドレスになっている。
【００３０】
全サイズ・メモリでは、ビデオ・フレーム・ピクセルとメモリ・ピクセル・アドレスとの間のマッピングは固定されているため、どの特定ピクセルも、その所在を突き止めて、アクセスすることができる。低減サイズのメモリでは、マッピングはピクセル単位になっていない。その代わりに、ピクセル・ブロックがメモリにマッピングされている。ある特定ブロック内からの特定ピクセルが必要になったときは、ブロック全体のデータをアクセスする必要が起こる。ＭＰＥＧデコーディングで必要とされないメモリ・スペースは、例えば、オンスクリーン・ディスプレイ、マイクロプロセッサＲＡＭ、トランスポート・バッファや他の特殊バッファなどの他の目的に利用可能である。
【００３１】
再び図１に戻って説明すると、データをメモリ２０にストアする前にコンプレッサ３０を使用するためには、動き補償処理ループ内のユニット２２の前にデータを圧縮解除(decompressed)する必要がある。これは、ブロック・ベースのデコンプレッサ３２がコンプレッサ３０のオペレーションとは逆のことを行うことにより達成される。ブロック・ベースのディスプレイ・デコンプレッサ３４はユニット３２と同様であり、ストアされたピクセル・ブロックを圧縮解除してからディスプレイ・プロセッサ２６へ送る。プロセッサ２６は、例えば、ＮＴＳＣ符号化ネットワーク、ピクセル・データを表示するように条件付ける回路、およびビデオ信号をイメージ再生デバイス２７、例えば、キネスコープへ出力するディスプレイ・ドライバ・ネットワークを含むことが可能である。同様に、ダウンサンプル・ユニット２９がメモリ２０の前に動作可能にされたときは、メモリ２０からのデータは動き補償処理ループ内のユニット２２の前にアップサンプルされる。これは、水平アップサンプリング・ユニット３３が、ユニット２９のオペレーションとは逆のことを行うことにより達成される。ディスプレイ・デバイス２７は全高精細イメージ解像度をもつことができる。逆に、全高精細より低いイメージ解像度をもつ安価なイメージ・ディスプレイ・デバイスはより経済的な受像機設計で使用することも可能であり、その場合には、データ削減ネットワーク２９，３０は前述したようにプログラムされ、メモリ２０のサイズは前述したように選定される。
【００３２】
Ｉフレームのようなストアされたアンカ・フレームからのデータは、入力された圧縮データストリームに入って受信された動きベクトルに従って、ランダム形式でアクセスされるのが一般的である。ブロック・ベースの圧縮方式(scheme)によると、フレーム・メモリからのピクセル・データのアクセス可能性が妥当な程度に保たれる。８×８ピクセル・ブロックは、ここで開示されている圧縮方式を使用すると、良好に動作することが判明した。ピクセル・ブロックを大きくすると、複雑な圧縮手法の使用が可能になるが、ピクセルのアクセス可能性が低下するという犠牲が伴う。ブロックを小さくすると、ピクセルをアクセスするときのきめ細かさが向上するが、圧縮のためのオプションが少なくなるという犠牲を伴う。量子化(quantization)と変換(transformation)を含む、種々のタイプの圧縮を使用すると、特定システムの要求条件に応じてコンプレッサ３０の機能を実行することができる。
【００３３】
使用されるタイプの圧縮はある種の特性を具備していることが望ましいが、必ずしもそうである必要はない。各ブロックはあらかじめ決めた量（システムによっては、それ以上の量）だけ圧縮されることが好ましく、そうすれば、図２に示すメモリ・マッピングを参照して説明したように、各圧縮ブロックのロケーションが容易に決定される。各ブロックは他のブロックから独立して圧縮／圧縮解除される(compressed/decompressed) べきである。そのようにすれば、どのブロックも、他のブロックを読み出すことなくアクセスされることができる。理想的には、圧縮／伸縮解除プロセス(compression/decompression process) は無損失であることが好ましいが、これはどのサイズのブロックでも保証されるとは限らない。いずれの場合も、圧縮／圧縮解除プロセスは再生イメージの中に不快なアーティファクトを発生することがあってはならない。
【００３４】
コンプレッサ３０で使用するのに適した種々の圧縮手法の１つを示したのが図３である。この圧縮手法では、可変圧縮ネットワークを固定圧縮ネットワークと並列に使用している。これらの圧縮ネットワークは、同一ピクセル・ブロックに対して同時に作用する。可変圧縮ネットワークには、無損失またはほぼ無損失であるという利点があるので、より望ましい圧縮ネットワークである。可変圧縮ネットワークがあらかじめ決めた所期のデータ圧縮量を得るのに成功しなかったときは、固定圧縮ネットワークの出力が代わりに使用される。固定圧縮ネットワークからも所期の圧縮量が得られるが、このネットワークには損失が多いという欠点がある。
【００３５】
図３に示すように、ソース１８（図１）からのデータは並列の独立データ圧縮パス３１４と３２０を含むデータ圧縮ネットワークの入力端３１２に入力される。パス３１４は実質上無損失のパスであり、圧縮データをマルチプクレクサ（ＭＵＸ）３２５の信号入力端の一方とビット・カウンタ３１８に出力する可変圧縮プロセッサ３１６を含んでいる。カウンタ３１８はユニット３１６によって圧縮された各データ・ブロックのビット・カウントをモニタし、スイッチング制御信号をＭＵＸ３２５の制御入力に出力する。圧縮パス３１４の詳細は図４を参照して以下に説明する。パス３２０は損失の多いパスであり、その詳細を図５に示すように、固定圧縮プロセッサ３２２を含んでいる。ユニット３２２からの圧縮出力データはＭＵＸ３２５の他方の信号入力に供給される。ＭＵＸ３２５は、パス３１４からの圧縮データまたはパス３２０からの圧縮データのどちらかを圧縮ネットワークの出力端３２８に出力する。なお、これについては、以下に詳しく説明する。出力された圧縮データは、図１のフレーム・メモリ２０へ送られる。
【００３６】
ブロック・ベースの圧縮ネットワーク３１４，３２０は各ピクセル・ブロックを独立して圧縮し、あらかじめ決めた圧縮ファクタまたはそれ以上だけ各ブロックが圧縮されることを本質的に保証する。圧縮パス３１４と圧縮パス３２０の出力のどちらかが選択されてメモリ２０に入力され、満足なイメージ品質と所期の圧縮ファクタ、例えば、２５％または５０％が得られるようにする。５０％より大きい圧縮ファクタを使用することも可能である。しかし、圧縮ファクタが５０％を越えないようにすると、良好な結果が得られることが確認されている。圧縮ファクタが２５％のときは、かかる圧縮を行わない従来のデコーダ処理と比べて本質的にトランスペアレント(transparent) 、すなわち利用者に存在が意識されないものである。圧縮が５０％のときは、その結果はトランスペアレントについては劣るが、目に見える結果は受容し得るものであり、圧縮とメモリ低減を行わない従来のデコーダ処理と比べて大きな違いがあるとは考えられない。
【００３７】
圧縮ネットワークのマルチパス性質(nature)により、高いイメージ品質が得られるだけでなく、少なくとも固定圧縮ファクタが得られるという保証がある。可変圧縮パス３１４は無損失または無損失に近い圧縮を行うが、このパス３１４から得られる出力ビットの数は可変である。パス３１４からの圧縮ブロック出力ビットの数はカウンタ31８によってモニタされる。圧縮ブロック・ビットの数が、あらかじめ決めたファクタと関連づけられた、あらかじめ決めたターゲット・ビット・カウントと等しいかそれ以下であれば、パス３１４からの圧縮データ出力がＭＵＸ３２５によって選択され、メモリ２０へ送られる。そうでなければ、固定コンプレッサ３２２からの圧縮ブロック出力が使用される。固定コンプレッサ３２２は損失の多い圧縮ルーチンを量子化と共に使用して、固定ターゲットビット出力を作り出す。圧縮解除を容易にするために、圧縮ブロック毎に、各圧縮ネットワークは通知情報(signaling information) をデータストリームの中に挿入し、ブロックで行われた圧縮のタイプを知らせるようになっている。この通知情報は１または２以上のビットにして、各圧縮データ・ブロックの先頭、例えば、ヘッダに挿入することが可能である。この通知ビットは圧縮解除ネットワーク３２および３４（図１）によって検出され、その通知ビットに関連したブロックを圧縮するために使用された圧縮とは逆のことを行う。ヘッダには、量子化制御情報などの他の制御情報を入れることもできる。
【００３８】
可変圧縮はイメージのスムーズなエリアで使用することが好ましく、そうすれば周囲を取り巻く不快なアーティファクトが防止される。これらのエリアでは、可変コンプレッサ３１６は量子化をほとんど、あるいはまったく使用せず、実質的に無損失のプロセスであるので、イメージ品質は高品質になることが本質的に保証される。一方、固定コンプレッサ３２２は顕著なディテール情報を含んでいるイメージ・エリアで使用することができる。これらのエリアでの量子化ノイズはそれほど目立った誤差を引き起こすおそれがないので、パス３２０で固定圧縮を受けるイメージ・エリアの目につく品質は良好になる可能性が大である。しかし、可変圧縮と固定圧縮をこのように使い分けることは多くのシステムでは利点があるとしても、必ずしもそうする必要はない。これら２つの圧縮ブロックのどちらを使用するかの選択は、単に可変コンプレッサ３１６からの圧縮ブロックのビット・カウントに基づいて行われる。コンプレッサ３１６が所期の圧縮まで達したことをビット・カウントが示していれば、それが使用される。そうでなければ、コンプレッサ３２２が使用される。
【００３９】
圧縮ネットワーク３１４，３２０によって行われるブロック・ベースの圧縮はブロック毎に独立して行われるので、デコーダは他のブロックに関する情報を必要としないで各ブロックをデコードすることができる。各ブロックはあらかじめ決めた圧縮ファクタだけ圧縮されるので、各ブロックの最初のピクセルのメモリ・アドレスは前もって分かっている。従って、各ブロックは他のブロックに関する情報がなくても、メモリからアクセスすることができる。この点に関して注目すべきことは、ブロック毎にエリアがメモリに予約されている(reserved)ことである。圧縮が５０％の場合には、各予約エリアはオリジナル・ブロックの半分のサイズになっている。従って、各圧縮ブロックについては、ビットがカウントされ、そして必要ならばコンプレッサ３２２の出力が使用されるという事実によって、そのブロック用に予約されたメモリ・エリアに収まるようになっている。望ましい方のコンプレッサ３１６がターゲット圧縮量以上に達成することに成功すると、そのコンプレッサ３１６の出力が使用され、予約メモリ・スペースのいくつかは圧縮ブロック・データで使用されないことになる。つまり、各圧縮ブロックはあらかじめ決めた開始アドレスからその予約メモリ・エリアに収められていき、そのブロック用に予約された最後のアドレスの手前のアドレスまで収められることになる。このプロセスは図２を参照して説明した通りである。
【００４０】
圧縮効率を向上することと、ピクセル・ブロックの各ピクセルへのアクセスを容易化することは相互に矛盾するとしても、ブロック・ベースの圧縮に望まれていることは、これらの２つを同時に達成できることである。つまり、圧縮効率を向上するためには、ブロック・サイズを大きくする必要があり、他方、ピクセルへのアクセスを容易にするためには、ブロック・サイズを小さくする必要がある。これらの２つの特性は、ピクセル・ブロック・サイズを８×８ピクセルおよび１６×４ピクセルにすると、実質的に達成されることが判明した。ブロックは、前述したように、ユニット１０において、必要とされるＮ×Ｎピクセル・サイズに形成される。
【００４１】
この例では、各フィールド・ベースのピクセル・ブロックは図６に示すように左から右へ下方に向かってラスタ方式でスキャンされる。このスキャニングは、それぞれ図４と図５に示すように、遅延素子４５２〜４５６および遅延素子５５２〜５５６を使用したユニット３１６および３３２の両方で行われる。これについては以下に説明する。可変圧縮ネットワークは図４に示されている。このネットワークは適応予測(adaptive prediction) を行うＤＰＣＭループを使用しており、公知の手法を用いて差分信号（残余）を出力する。この差分は可変長符号化され、その結果の符号化差分ビット数がモニタされ、所期の圧縮ファクタが現ブロックで達成されたかどうかが示される。
【００４２】
図４に示すように、差分ネットワーク４４２は、ユニット４４２の非反転入力端（＋）に印加された入力ピクセル値とユニット４４２の反転入力端（−）に印加された予測ピクセル値との差分（残余）を表す出力を発生する。予測値(predicted value) は、差分器(differencer) ４４２、可変長コーダ（符号化器）４４４、このユニット４４４で行われる符号化オペレーションとは逆のことを行う可変長デコーダ（復号器）４４６を含んでいるＤＰＣＭ処理ループを使用して得られる。可変長コーダ４４４は、高解像度量子化器（オプション）とエントロピ・エンコーダ（例えば、ハフマン(Huffman) ・コーダ）を含むことができ、無損失の圧縮または無損失に近い圧縮を行うことができる。可変長デコーダ４４６は、逆量子化器とエントロピ・デコーダを含んでいる。ユニット４４６からの逆デコードされた出力は、予測器 (predictor)４５０および関連したピクセル遅延素子４５２，４５４，４５６を含んでいる予測ネットワークからの出力と、ユニット４４８で加算される。これらの遅延素子からは、それぞれ１，７，１ピクセルの遅延が得られる。ユニット４５０からの予測ピクセル値出力は、加算器４４８および差分器４４２の入力に印加される。
【００４３】
図７は、ＤＰＣＭネットワークの予測処理および符号化オペレーションに関連した４個のピクセルＡ、Ｂ、ＣおよびＸ（予測されるピクセル）から成るグループの構成例を示す図である。このピクセル・グループは図６に示すピクセル・ブロックでも参照されている。この例において、ピクセルＢはピクセルＣに対して１ピクセル・インターバルだけ遅延され、ピクセルＡはピクセルＢに対して７ピクセル・インターバルだけ遅延され、ピクセルＸはピクセルＡに対して１ピクセル・インターバルだけ遅延されている。ＤＰＣＭ予測プロセスは周知であるが、後に説明することにする。可変長コーダ４４４の出力からの圧縮ピクセル・データは、図３のＭＵＸ３２５へ送られる前に、ユニット４６０によってバッファされる。バッファ４６０は、可変長圧縮プロセスの出力をブロック全体が処理されるまでストアしており、その処理が完了した時点で、ターゲット圧縮ファクタまで達したかどうか決定される。
【００４４】
コーダ４４４からの各圧縮ブロック出力のビット・カウントは、ビット・カウンタ４１８によってモニタされる。このカウンタは、いくつかの公知手法のどれによっても実現することが可能である。各ピクセル・ブロックが可変長圧縮されると、カウンタ４１８は、圧縮ビット・カウントがあらかじめ決めたしきい値にあるか、それ以下であれば、可変コンプレッサによってが所期の圧縮量までに達したか、あるいはそれを越えたことを知らせる制御信号を出力する。この制御信号はＭＵＸ３２５のスイッチング制御入力端に印加され、これを受けて、ＭＵＸ３２５は可変長コンプレッサからの出力を利用(utilization) ネットワークへ送る。そうでなければ、固定長コンプレッサからの圧縮ブロック出力（同一ピクセル・ブロックのために）が利用ネットワークへ送られる。
【００４５】
固定長圧縮ネットワークは図５に示されている。このネットワークも、可変長コンプレッサの場合と同じように、適応予測付きのＤＰＣＭループを使用する。図５に示すように、エレメント５４８，５５０，５５２，５５４および５５６は図４の対応するエレメントと同じ機能を実行する。差分ネットワーク５４２は図４のユニット４４２と同じ目的に使用され、残余ピクセル値を出力するが、以下に述べるように、使用される背景が若干異なっている。
【００４６】
固定長圧縮ネットワークは、ＤＰＣＭ処理の結果としてユニット５４２の出力端から得られた差分（残余）ピクセル値を非線形的に量子化する。ユニット５４２の非反転入力端（＋）には、６４ピクセル遅延素子５５５によって６４ピクセル・インターバルだけ遅延された入力ピクセル値が入力される。ユニット５４２の反転入力端（−）には、予測器５５０からの予測ピクセル値が入力される。ユニット５４２からの残余ピクセル値出力は、ユニット５５６および５５８によってそれぞれ量子化および逆量子化される。ユニット５５６から得られる量子化は固定されており、所期の固定データ圧縮量を保証する。例えば、８ビット・データ・ワードを５０％圧縮する場合は、ユニット５５６は最後の最下位４ビットを除去する。固定圧縮量は所期の圧縮量より少なくはない。ユニット５５６と５５８は、各ピクセル・ブロックの最小および最大ピクセル値を決定する最小値／最大値（Ｍｉｎ／Ｍａｘ）比較ネットワーク５６０の制御の下で動作する。
【００４７】
量子化器５５６は、固定量子化器ルール(fixed quantizer rule)を使用するように構成することも可能である。しかし、処理されるブロックに関連する最小および最大ピクセル値に従って量子化器ルールを適応するようにした方が効率的である。最小値／最大値比較ネットワーク５６０はこれらの値を決定する。エレメント５５５は、検査される所定のブロックの６４ピクセルすべての最小値と最大値に必要とされるタイム・ディレイを行ってから、そのブロックの最初のピクセルが処理されるようにする。
【００４８】
図３に戻って説明すると、コンプレッサ３２２は固有の遅延をもっていないが、最小値／最大値比較器５６０と遅延素子５５５の組み合わせ（図５）により、コンプレッサ３２２は１ブロック遅延を呈し、これは可変圧縮パスが示す１ブロック遅延に一致している。固定長圧縮ネットワークは各８×８ピクセル・ブロックの６４ピクセル値の各々を２回評価し、そのブロックの最小および最大ピクセル値を決定する。このプロセスは、エレメント５５５から得られる６４ピクセル（１ブロック）遅延によって容易化される。最小値と最大値は、処理されるブロック毎に使用される非線形量子化ルールの中から適応的に選択するために使用される。各ブロックを２回評価するために必要な２パス・アプローチによると、可変コンプレッサが所期の圧縮を達したかどうかを決定するとき可変圧縮パスのバッファ４６０によって１ブロックのレイテンシ（待ち時間）が生じるので、システムに別のレイテンシが付加されることはない。
【００４９】
上述したように、コンプレッサ３１６と３２２が並列に配置され、そして、固定コンプレッサが最小値／最大値比較を採用しているときは、コンプレッサ３２２に１ブロックの遅延がある。可変コンプレッサ３１６は固有の１ブロック遅延を持っていないので、ビット・バッファ４６０は１ブロック時間だけ長くビットを保持してコンプレッサ３２２の出力を待っている。固定圧縮器３２２が最小値／最大値比較を採用していなければ、コンプレッサ３２２は１ブロック遅延を示さない。可変コンプレッサ３１６はバッファ４６０に起因する固有の１ブロック遅延を示さない。バッファ４６０は、可変圧縮出力と固定圧縮出力のどちらを使用するかの決定が行われるまで、コンプレッサ３１６のビットをストアしている。ビット・カウンタ３１８は、可変および固定圧縮ネットワークが並列に配置されているとき、どちらの出力を使用するかを決定する。
【００５０】
しかし、コンプレッサ３１６および３２２は、図８に示すように、並列に配置されている必要はない。その場合には、コンプレッサ３１６が最初にピクセル・ブロックを処理し、これと同時に、最小値／最大値比較ユニット５６０が前述したように、ブロックの最小および最大ピクセル値を決定する。１ブロック遅延のあと、コンプレッサ３１６がターゲット圧縮を達成したかどうかが判断され、これにより、固定コンプレッサ３２２がそのブロックを処理する必要があるかどうかが判断される。可変コンプレッサ３１６がターゲット圧縮ファクタを達成していれば、可変圧縮ブロックをフレーム・メモリに出力する。そうでなければ、ユニット３２２がそのブロックを圧縮する。コンプレッサ３１６および３２２は類似のアーキテクチャと機能エレメントを含んでいるので、このような構成(implementation)にすると、ユニット３１６で可変長圧縮を行うとき使用される類似エレメントを、ユニット３２２で固定長圧縮を行うときにも使用できるという利点がある。
【００５１】
図５に示した量子化器５５６に関して、量子化器ルールを適応的に変更することは本質的なことではない。単純な線形量子化を採用することも可能である。最小／最大ピクセル値に従って量子化器ルールを適応させると、損失量が低減される。各ブロックは、最小および最大ピクセル値を求めるために一回スキャンされる。これらの値が分かると、最初の（残余）値が量子化される前に適切な量子化器ルールが選択される。エレメント５５５は量子化器ルールが設定されるまで最初のピクセルを遅延し、このルールは逆量子化器５５８でも使用される。これを行うためには、通知ビット(signaling bit)をデータストリームに追加して、どの量子化器ルールが使用されているかを圧縮解除機能に知らせる必要がある。
【００５２】
量子化器は一種のルックアップ・テーブルと考えることができるので、ユニット５４２からの出力ビットはアドレスを表している。量子化器５５６は、５０％圧縮の場合には、４ビット・データを出力する。量子化器５５６の出力は、ユニット５４２の出力に近似させるためにユニット５５８によって使用されるインデックスである。この場合には、ユニット５５８への入力が４ビット・データだけであると、可能とされるデータの組合せは１６だけであるのに対し、ユニット５４２から得られる出力は２５６個まで可能であるので、損失が起こるおそれがある。図５に示した固定圧縮ネットワークは、出力バッファを必要としない。
【００５３】
この実施の形態では、同じＤＰＣＭ予測符号化プロセスが図４および図５の圧縮ネットワークによって採用されている。符号化すべき現ピクセルは、デコンプレッサ３２および３４（図１）に知らされている、以前に符号化されたピクセルを使用して、予測される。予測プロセスを、図７を参照して説明する。ここで、ピクセルＸは予測符号化されるピクセル値である。ピクセルＡ、ＢおよびＣは以前に予測符号化されており、圧縮解除セクションに知らされている。Ｘ、Ｘｐｒｅｄの予測は、次の疑似コードに従ってＡ、ＢおよびＣを使用して行われる。この疑似コードは使用されるアルゴリズムを示している。
【００５４】
if      （｜Ａ−Ｃ｜＜ｅ１ ＆＆｜Ｂ−Ｃ｜＞ｅ２ ），Ｘｐｒｅｄ＝Ｂ
else if （｜Ｂ−Ｃ｜＜ｅ１ ＆＆｜Ａ−Ｃ｜＞ｅ２ ），Ｘｐｒｅｄ＝Ａ
else                                               Ｘｐｒｅｄ＝（Ａ＋Ｂ）／２
ここで、値ｅ１とｅ２は定数であり、あらかじめ決めたしきい値を表している。このアルゴリズムは、処理されるブロックの第１行または第１列に置かれていないピクセルについてだけ使用される。いくつかの例外があるが、これは次のように処理される。ブロック内の最初のピクセルは、他のブロックを参照することなく非常にきめ細かく符号化され、第１行のピクセルはピクセル値Ａを予測値(predictor) として使用し、第１列のピクセルはピクセル値Ｂを予測値として使用する。基本的には、このアルゴリズムはエッジを見つけることを試みる。第１のケースでは、ピクセルＣおよびＢの間とピクセルＡおよびＸの間に垂直エッジがあることが示される。従って、Ｂは最良予測値である。第２のケースでは、ＡおよびＣの間とＢおよびＸの間に水平エッジがあることが示される。従って、Ａは最良予測値である。第３のケースでは、明白なエッジは見つからない。このケースでは、ＡとＢは共に等しく良好な予測値であるので、その平均値が使用される。
【００５５】
図１のシステムでは、ユニット２９により得られる水平ディテール低減は、メモリ２０にストアされるピクセル値の数を減少することによって、デコーダの必要メモリ量をさらに低減する。ユニット２９は水平空間ローパス・フィルタ処理と、その後に行われる２：１水平デシメーション（ダウンサンプリング）を採用し、これらを行ってからデータをメモリ２０へ送っている。ユニット３２による圧縮解除のあと、メモリ２０からのイメージ情報の解像度は、ピクセル反復アップサンプリング・プロセスを使用してユニット３３により再構築される。このアップサンプリング・プロセスがディスプレイ・デコンプレッサ３４とディスプレイ・プロセッサ２６（図１）の間で必要とされないのは、プロセッサ２６が必要な水平サンプル・レート変換を行うためである。デコンプレッサ３４およびプロセッサ２６は、低コスト受像機ではアップ・サンプリングを行わないと予想されるが、その理由は、そのような受像機ではディスプレイ解像度が低いためである。そのような場合には、メモリ低減デコードされたフレームは、標準精細ディスプレイよりも解像度が高くなっている。例えば、１９２０×１０８８ピクセル・ビデオ・シーケンスを７２０×４８０ピクセル・ディスプレイ・デバイス上にデコードして表示するためには、フレーム・メモリにストアされたイメージは解像度が９６０×１０８８であることが必要がある（２のファクタで水平デシメートする必要がある）。従って、デコンプレッサ３４はイメージをアップ・サンプリングする必要がないが、ディスプレイ・プロセッサ２６は９６０×１０８８の解像度イメージを表示に適した７２０×４８０にダウンサンプリングする必要がある。
【００５６】
図９と図１０は、それぞれピクセル・デシメーション・プロセスとアップサンプリング・プロセスに関連するエレメントの一般的構成を示している。ユニット２９において、オリジナル・ピクセルはまず偶数次ローパス・フィルタ(even order low pass filter)１０１０によってローパス・フィルタされてから２によってデシメートされるので、１つおきのピクセル値(every other pixel value) がユニット１０１２によって除去される。これらのピクセルはメモリ２０にストアされる。そのあと、メモリ２０からのピクセル・データは公知の手法を用いてアップサンプリング・ユニット３３のエレメント１０１４によって反復される。ユニット２９がバイパスされたときは、ユニット１０１０への入力はマイクロプロセッサの制御下でユニット２９の出力へ直接的に送り直される。このスイッチングは種々の公知手法で実現することができる。
【００５７】
なお、ユニット２９は、水平デシメーションと垂直デシメーションの両方ではなく、水平デシメーションだけをデコーディング・ループ内で使用する。水平デシメーションを単独で使用すると、インタレース（飛越し）ビデオ・フィールドを垂直デシメートにより生じるアーティファクトが除去されるという利点がある。水平デシメーション・プロセスによると、デコーダ・ループを複数回パスするので、空間シフト(spatial shift) が生じることがなく、また品質低下が生じることもほとんどあるいはまったくない。この利点は、デシメーションの前に偶数次ローパス・フィルタ１０１０（図１０）を使用することにより、また、単純ピクセル反復プロセスをアップ変換メカニズムとして使用することにより、得られる。３つ以上のタップをもつ偶数次フィルタは、マクロブロック境界を横切る。つまり、この種のローパス・フィルタはイントラ・マクロブロック処理に限定されない。この結果、真の水平空間ローパス・フィルタリングが得られる。アップ変換プロセスで使用される単純ピクセル反復オペレーションは、インタポレータ(interpolator)としては周波数応答が劣っているのが一般的である。しかし、周波数応答の低下が起こるのは、最初にループをパスするときである。複数パスでは、ピクセル反復プロセスに起因して起こる付加損失は軽微である。
【００５８】
この例では、フィルタ１０１０は８タップ対称ＦＩＲフィルタである。このフィルタは水平空間領域で動作し、ブロック境界にまたがってフィルタリングする。８タップ・フィルタは図９に示すように、出力ピクセルの相対位置を入力に対してサンプル周期の１／２だけシフトする働きをする。また、図９に示すように、ピクセル反復アップ・サンプリングは、ダウンサンプルされたアップサンプルされたピクセルをオリジナル・ピクセルに対して同じ空間位置に保つ働きをする。
【００５９】
デコーダ・ループを通過するパスの数（この例では、２）はＩまたはＰアンカ・フレーム間のＢフレームの数によって決まる。デシメーション・フィルタ１０１２は２タップ・フィルタにすることも可能である。その場合は、入力ピクセルａおよびｂに対して、フィルタ出力は（ａ＋ｂ）／２となり、デシメーションは１つおきのピクセルを除去(drop)することにより行われる。このフィルタはブロック境界を横切らず、実現が容易であり、水平デシメーションを行うのに適している。
【００６０】
ピクセル反復アップ変換が使用されるのは、ピクセル反復アップサンプリングが平均化デシメーション・フィルタと結合されているとき、ピクセルは複数パス・デシメーションとアップサンプリング・プロセスの間、不変に保たれるからである。従って、デコーダ・ループを通過する後続のパスでは、ピクセル値は変更されない。具体的に説明すると、ループを通過する最初のパスでは、一対のピクセルを単純に平均化することによりローパス・フィルタリングが行われ、そのあとでデシメーションとピクセル反復が行われる。しかし、第２パスでは、ローパス・フィルタ（２ピクセルを平均化する）は一対の反復ピクセルを平均化する。これにより同一ピクセルが得られ、これは順番に再び反復される。アップ・サンプリングは重要な動き補償ループで行われるので、オペレーションが単純で高速化されていることが好ましい。
【００６１】
図１１を参照するに、ディスプレイ・プロセッサ２６は並列ＦＩＦＯバッファ１１１０，１１１２を備えたディスプレイ・バッファ・ネットワークおよびマルチプレクサ１１１４を介して、入力データをデコンプレッサ３４から受信する。図１１に示すように、ブロック２０，３４および２６は、図１に同一番号を付けて示されているブロックに対応している。前述したブロック・ベースの圧縮／圧縮解除オペレーションは、ＭＰＥＧデコードディングをサポートするために必要なメモリ・アクセスに適しており、ディスプレイ処理をサポートするためにディスプレイ・バッファ・ネットワークによって補足されている。このディスプレイ・バッファ・ネットワークは１６イメージ・ラインをホールドし、これらは８ライン・バッファ１１１０と１１１２間で分割される。ディスプレイ処理のための未圧縮データはマルチプレクサ１１１４経由でバッファの一方から読み出され、その間に、他方のバッファにはユニット３４からの圧縮解除データが満たされていく。この例では、バッファ１１１０と１１１２はメモリ・ユニット２０に置かれている。
【００６２】
図１２は、テレビジョン受像機における実用ディジタル信号処理システムの場合の図１と同じ構成を示したものである。図を簡略化するために、図には余計な部分は省略されている。例えば、種々のエレメントに関連するＦＩＦＯ入力バッファおよび出力バッファ、リード／ライト・コントロール、クロック・ジェネレータ・ネットワーク、拡張データ・アウト(extended data out) タイプまたは同期（ＳＤＲＡＭ）タイプにすることができる外部メモリとのインタフェースを行うための制御信号は図示されていない。
図１２において、図１と共通するエレメントには同じ参照番号を付してある。図１２に示すエレメントは、エレメント２９〜３４を除き、SGS-Thomson Microelectronics社から市販されているSTi 3500A MPEG-2/CCIR 600 ビデオ・デコーダ集積回路に実装されているエレメントと同じものである。動きプロセッサ２２は同じくSGS-Thomson Microelectronics社から市販されているSTi 3220 Motion Estimator Processor （動き予測プロセッサ）集積回路を採用することができる。簡単に説明すると、図１２のシステムは、さらに、マイクロプロセッサ１２２０、バス・インタフェース・ユニット１１２２および内部制御バス１２１４に結合されているコントローラ１２２６を搭載している。この例では、マイクロプロセッサ１２２０はＭＰＥＧデコーダを実装している集積回路の外部に置かれている。１９２ビット幅の内部メモリ・バス１２１０はデコーダ１２、コンプレッサ３０、デコンプレッサ３２，３４およびマルチプレクサ・インタフェース３１を介した外部フレーム・メモリ２０である。これは上述した通りである。ユニット３０，３２および３４は圧縮および圧縮解除ファクタ制御信号をイネーブルおよびバイパス制御信号と一緒にコントローラ１２２６経由でマイクロプロセッサ１２２０から受信する。ユニット２９と３３は、同様に、イネーブルおよびパイパス制御信号を受信する。マイクロプロセッサ１２２０はＭＰＥＧデコーディングとディスプレイ処理のためにメモリ２０をフレーム・ストレージ、バッファ、およびオンスクリーン・ディスプレイ・ビット・マップ・セクションに分割する。ローカル・メモリ制御ユニット１２３４も実装されており、これはRequest 入力を受信し、Acknowledge 出力をメモリAddress 出力、Read Enable (Rｅｎ) およびWrite Enable (Wｅｎ)出力と一緒に出力する。ユニット１２３４は、リアルタイム・アドレス、および、メモリ２０を制御するための制御信号を生成する。出力クロック信号CLKｏｕｔはローカル・クロック・ジェネレータ（図示せず）からの入力クロック信号CLKｉｎに応答して出される。マイクロプロセッサ１２２０は出力メモリ・データ・バスの適切な幅を選択するようにマルチプレクサ３１を制御するために受像機メーカによってプログラムされている。また、メモリ２０はＭＰＥＧデコーディングとディスプレイ処理のためのビット・バッファ、ビデオ・フレーム・ストア・セクション、フレーム・ストレージ・バッファ、およびオンスクリーン・ディスプレイ・マップに分割されている。
【００６３】
ディスプレイ・プロセッサ２６は、デコードされたイメージ・フォーマットをイメージ再生デバイスによる表示に適した、あらかじめ決めた共通フォーマットに変換するために必要になる水平および垂直リサンプリング(resampling)・フィルタも備えている。例えば、本システムは５２５ライン・インタレース、１１２５ライン・インタレースまたは７２０ライン順次走査(progressive scan)などのフォーマットに対応するイメージ・シーケンスを受信し、デコードすることができる。テレビジョン受像機はすべての受信フォーマットに対して共通ディスプレイ・フォーマットを使用することが可能である。
【００６４】
外部インタフェース・ネットワーク１２２２は、ＭＰＥＧデコーダによって処理される入力圧縮ビデオ・データのほかに、制御情報と構成情報(configuration information) をＭＰＥＧデコーダと外部プロセッサ１２２０との間に伝達する。ＭＰＥＧデコーダ・システムはマイクロプロセッサ１２２０のコプロセッサに似た働きをする。例えば、マイクロプロセッサ１２２０は、デコードされるフレーム毎にデコード・コマンドをＭＰＥＧデコーダに対して出力する。デコーダが関連したヘッダ情報を見つけると、これはマイクロプロセッサ１２２０によって読み取られる。この情報を使用して、マイクロプロセッサ１２２０は、例えば、フレーム・タイプ、量子化マトリックスなどに関するデコーダ構成のためのデータを出力し、そのあとでデコーダは適切なデコード・コマンドを出す。ＭＰＥＧデコーダがこのように動作することに関する詳細情報は、上記のSGS-Thomson STi 3500A および３２２０集積回路デバイスの技術仕様書に記載されている。
【００６５】
受像機メーカによってプログラムされたモード制御データはマイクロプロセッサ１２２０からメモリ・コントローラ１２３４へ送られ、ＭＵＸ３１のオペレーションを制御し、ユニット３０および３２の圧縮／圧縮解除係数を設定し、さらに、メーカが選定したディスプレイ・デバイスの解像度に基づいた必要に応じて、圧縮／圧縮解除ユニットおよびデシメーション／アップサンプリング・ユニットをバイパスさせる。
【００６６】
これまでに説明してきたシステムは、例えば、地上放送、ケーブルおよび衛星伝送システムと関連づけられているような、様々なディジタル・データ処理機構(schemes) の分野でＭＰＥＧ仕様のすべてのプロファイルとすべてのレベルで使用することができる。コンプレッサ３０は、図３および図８に示すように、デュアル圧縮ネットワークを採用すると好ましいが、他の圧縮機構を使用することも可能であり、また、システムを単純化するために、圧縮ネットワークの一方を省略することも可能である。
【００６７】
これまでに説明してきたデータ削減およびメモリ管理システムは他の形態にすることも可能である。例えば、外部メモリ・パスのデータ・ビット幅を一定にし、メモリ・サイズが変わっても不変にすることができる。例えば、システム設計を単純化するために、固定の６４ビット幅データ・パスはメモリ構成に関係なく、外部フレーム・メモリとデコーダの間で使用することが可能である。その場合にはＭＵＸ３１は不要になる。
【図面の簡単な説明】
【００６８】
【図１】テレビジョン信号受像機のうち、本発明の原理に従って構成されたＭＰＥＧデコーダを採用している部分を示すブロック図である。
【図２】メモリ・マッピング手順を示す図である。
【図３】図１に示したＭＰＥＧデコーダで使用するのに適した圧縮ネットワークを示すブロック図である。
【図４】図３に示したネットワークの詳細を示す図である。
【図５】図３に示したネットワークの詳細を示す図である。
【図６】図４および図５に示したネットワークのオペレーションを理解する上で役立つピクセル構成を示す図である。
【図７】図４および図５に示したネットワークのオペレーションを理解する上で役立つピクセル構成を示す図である。
【図８】その他のデュアル通路圧縮ネットワークを示す図である。
【図９】ピクセル・デシメーションとアップサンプリングを説明した図である。
【図１０】図９に示したプロセスを実行するための装置を示すブロック図である。
【図１１】メモリからディスプレイ・プロセッサへ送られるピクセルをディスプレイ・バッファリングする様子を示すブロック図である。
【図１２】単純化された実用受像機における図１の構成を示す図である。
【符号の説明】
【００６９】
１０  バッファ
１２  デコーダ
１４  逆量子化器
１６  逆離散コサイン変換（ＤＣＴ）器
１８  加算器
２０  ビデオ・フレーム・メモリ
２２  動き補償ユニット
２６  ディスプレイ・プロセッサ
２７  ディスプレイ・デバイス
２９  水平ＬＰＦおよびデシメータ
３０  コンプレッサ
３１  マルチプレクサ／デマルチプレクサ
３２  デコンプレッサ
３３  水平アップサンプリング・ユニット
３４  デコンプレッサ
【図１】
2007097208.tif 000003
【図２】
2007097208.tif 000004
【図３】
2007097208.tif 000005
【図４】
2007097208.tif 000006
【図５】
2007097208.tif 000007
【図６】
2007097208.tif 000008
【図７】
2007097208.tif 000009
【図８】
2007097208.tif 000010
【図９】
2007097208.tif 000011
【図１０】
2007097208.tif 000012
【図１１】
2007097208.tif 000013
【図１２】
2007097208.tif 000014