JP2010519796A - データ・チャネル情報のプログラム可能なパターンに基づく解凍及び圧縮 - Google Patents

データ・チャネル情報のプログラム可能なパターンに基づく解凍及び圧縮 Download PDF

Info

Publication number
JP2010519796A
JP2010519796A JP2009549280A JP2009549280A JP2010519796A JP 2010519796 A JP2010519796 A JP 2010519796A JP 2009549280 A JP2009549280 A JP 2009549280A JP 2009549280 A JP2009549280 A JP 2009549280A JP 2010519796 A JP2010519796 A JP 2010519796A
Authority
JP
Japan
Prior art keywords
pattern
data component
pattern information
component
output data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009549280A
Other languages
English (en)
Other versions
JP5666137B2 (ja
Inventor
ウェイブリュー、スティーブン・トッド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2010519796A publication Critical patent/JP2010519796A/ja
Application granted granted Critical
Publication of JP5666137B2 publication Critical patent/JP5666137B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)
  • Processing Of Color Television Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

一般に、本開示は静止画像、ビデオ、及びオーディオ成分データを含めて、データ・チャネル情報のプログラム可能で、パターンに基づく解凍及び圧縮するための様々な技術を述べる。一つのデバイス例は複数の処理パイプラインを持つプログラム可能なプロセッサーを含む。そのプロセッサーは複数の入力データ成分のパターンを指定するパターン情報、一つ以上の入力データ成分と関連する複数のパターン要素を含むパターン情報、及び静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分群から選択される各入力データ成分を受取るように構成される。例えば、入力データ成分は色チャネルのような、ピクセル・データ成分を含む。プロセッサーはさらに選択された各入力データ成分をプロセッサーの処理パイプラインへパターン情報に従った提供するように構成される。

Description

[関連する出願]
本出願は2007年2月9日出願の米国特許出願仮番号第60/889,229号、及び同じく2007年2月14日出願の米国特許出願仮番号第60/889,229号の両者の便益を要求するもので、各々の全内容は引例によってここに組込まれている。
[技術分野]
本出願は画像、オーディオ、及び/またはビデオ・データの処理に関係し、そして特に、様々なフォーマット及びパターンで蓄えられた画像、オーディオ、及び/またはビデオ・データの処理に関係する。
[背景]
グラフィックス及び画像デバイスは、例えば、ビデオ・ゲーム、グラフィックス・プログラム、コンピューター援用設計(computer-aided design:CAD)アプリケーション、シミュレーション及び視覚化ツール、画像化、等々といった様々なアプリケーションについて2次元及び3次元画像を提供するために広く使用されている。オーディオ・デバイスは音響(sound)を提供し、もしくはさらに可能性として音声(speech)を処理するためにこれらのデバイスと共に使用される。
これらのデバイスに使用されるグラフィックス・プロセッサー、ディスプレイ・プロセッサー、オーディオ・プロセッサー、またはマルチメディア・プロセッサーはデータの並行処理及び/またはベクトル処理を行うように構成される。SIMD(単一命令、複合データ)拡張性を持つ、あるいは持たない一般用CPU(中央制御ユニット)はデータを処理するように構成される。ベクトル処理では、単一命令は複合データ項目を同時に操作する。並行処理では、命令は一つのデータ項目を一度に操作する。グラフィックス処理の分野では、プロセッサーは大抵ピクセル・データに命令を実行する。ピクセル・データは特定の色空間おけるピクセルの色、及び大抵は、表示、印刷、及び/または記憶されるピクセルの透明度(アルファ)を含めて、ピクセルの様々な属性を記述する。
とりわけ、ピクセル・データについて一般の色空間はRGB(赤-緑-青)、YUV(輝度-青輝度差-赤輝度差)、YC(輝度-青色差-赤色差)、及びCMYK(シアン-マゼンタ-黄-黒)を含む。色空間は一般的に単一の値として色を表すのではなく、色を色成分の要素としても知られる、多チャネルの情報によって表す。一例として、RGB色空間は特定のピクセルについて赤、緑及び青成分をそれぞれ記述する三つのチャネルを含む。同様に、YCは特定のピクセルについて輝度、青色差、及び赤色差値を記述する。ある高次の色空間はまたある場合に、そしてある技法によって実施される。例えば、あるプリンターは6色または8色のインクを使用し、それは動作を行うために異なる6または8色チャネルを必要とする。
ピクセル・データを処理するプロセッサーは一般的に並行処理を用いてそのようにする。従って、各チャネルのピクセル・データは一般的に異なる処理パイプラインにおいて別々に処理される。しかしながら、そのような多チャネル・ピクセル・データがメモリーまたは他のデバイスに記憶されるパターンはアプリケーションによって変化する。
[概要]
一般に、本開示は静止画像、ビデオ、及びオーディオ成分データを含めて、データ・チャネル情報のランタイム、プログラム可能な、パターンに基づく解凍(unpacking)及び圧縮(packing)に関する様々な技術を述べる。ピクセル・データ成分のような受信データ成分のパターンを示す情報はプロセッサーまたはソフトウェア・モジュールに提供される。このパターン情報に基づいて、解凍エンジンはそれらの選択された処理パイプラインにデータ成分を提供することができる。圧縮エンジンはまたデータ成分がそれぞれの処理パイプラインによって処理されたのち出力データ成分を順序付けするために利用される。さらに、圧縮エンジンは処理されたデータ成分を圧縮するときどのようなパターンを使用するかを示す情報を提供される。そのような方法で、解凍及び/または圧縮エンジンは特定のアプリケーションに適したパターンへデータ成分を配置するために情報を提供される。一例として、ピクセル・データが処理の後で直ちに表示されるならば、ディスプレイのフレーム・バッファーの予測データ配置を示すパターン情報を圧縮エンジンに提供することはしばしば有益である。解凍及び/または圧縮エンジンはハードウェアにおいて実施されるが、ソフトウェアにおいても実施される。多くの場合、例えばより大きなデータを持つ、パターン情報によって指定された入力または出力データ成分は繰り返す。
一つの形態では、方法は複数の入力データ成分を指定するパターン情報を受取ることを含み、そこではパターン情報は一つ以上の入力データ成分と各々関連する複数のパターン要素を含み、そして入力データ成分は静止画像データ成分、ビデオ・データ成分、及び/またはオーディオ・データ成分を含む。その方法はさらにパターン情報に従って各入力データ成分を選択された処理パイプラインへ提供することを含む。
一つの形態では、デバイスは複数の処理パイプラインを持つプログラム可能なプロセッサーを含む。そのプロセッサーは複数の入力データ成分のパターンを指定するパターン情報を受取るように構成され、そこではパターン情報は一つ以上の入力データ成分と各々関連する複数のパターン要素を含み、そして入力データ成分は静止画像データ成分、ビデオ・データ成分、及び/またはオーディオ・データ成分を含む。例えば、入力データ成分は色チャネルのようなピクセル・データ成分を含む。そのプロセッサーはさらにパターン情報に従って各入力データ成分を選択された処理パイプラインへ提供するように構成される。
一つの形態では、方法は複数の処理パイプラインによって処理された複数の出力データ成分のパターンを指定するパターン情報を受取ることを含み、そこではパターン情報は一つ以上の出力データ成分と各々関連する複数のパターン要素を含み、そして出力データ成分は静止画像データ成分、ビデオ・データ成分、及び/またはオーディオ・データ成分を含む。その方法はさらに選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理することを含む。
一つの形態では、デバイスは複数の処理パイプラインを持つプログラム可能なプロセッサーを含む。そのプロセッサーは複数の処理パイプラインによって処理された複数の出力データ成分のパターンを指定するパターン情報を受取るように構成され、そこではパターン情報は一つ以上の出力データ成分と各々関連する複数のパターン要素を含み、そして出力データ成分は静止画像データ成分、ビデオ・データ成分、及び/またはオーディオ・データ成分を含む。そのプロセッサーはさらに選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理するように構成される。
一つ以上の形態の詳細は下記の付随の図面及び説明において示される。他の特徴、目的、及び利点はその説明と図面から、そして請求項から明白になるであろう。
本開示に従って、パターンに基づくデータ・チャネル情報の解凍及び圧縮を実施するために使用されるデバイスを例示するブロック図である。 本開示に従って、パターンに基づくデータ・チャネル情報の解凍及び圧縮を実施するために使用されるプログラム可能なディスプレイ・プロセッサーを持つデバイス例を例示するブロック図である。 本開示に従って、図2Aに示したディスプレイ・プロセッサーの追加詳細を例示するブロック図である。 本開示に従って、図2Bに示した処理パイプラインの追加詳細を例示するブロック図である。 本開示に従って、パターンに基づくデータ・チャネル情報の解凍及び圧縮を提供するために図2Aに示したデバイスによって実施されるソフトウェア処理パイプラインのブロック図である。 本開示に従って、図2Aに示した処理パイプラインによって実施される方法のフローチャートである。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例、そしてまたパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例及びパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用されるパターン例及びパターン情報の例を例示する追加図である。 本開示に従って、パターン例を指定する、さもなくば説明するために図2Aに示したディスプレイ・プロセッサーによって使用される別のパターン情報の例を例示する追加図である。 本開示に従って、多チャネル・オーディオ・データのパターン例を指定する、さもなくば説明するために図1に示したプロセッサーによって使用されるパターン情報の例を例示する図である。 本開示に従って、多チャネル・オーディオ・データのパターン例を指定する、さもなくば説明するために図1に示したプロセッサーによって使用されるパターン情報の例を例示する図である。
[詳細な説明]
図1は一つの形態に従って、パターンに基づくデータ・チャネル情報の解凍及び圧縮を実施するために使用されるデバイスを例示するブロック図である。デバイス100はスタンド-アロン・デバイスであるか、もしくはさらに大きなシステムの一部である。一つの形態では、デバイス100は無線通信デバイス(例えば、無線電話器)を含み、またはディジタル・カメラまたは他のビデオ・デバイスの一部である。一つの形態では、デバイス100は一以上の集積回路、またはチップに含まれる。
デバイス100は様々な異なるデータ形式及びフォーマットを処理することができる。例えば、デバイス100は下記でさらに詳しく述べるように静止画像データ、オーディオ・データ、ビデオ・データ、または他のマルチメディア・データを処理する。本開示を通して使用されるように、オーディオ・データは音響データ及び/または音声データを含む。デバイス100はプログラム可能なプロセッサー106を含む。プロセッサー106は複数の処理パイプラインを有する。一つの形態では、プロセッサー106はスカラーまたはベクトル・プロセッサーである。一つの形態では、プロセッサー106はディスプレイ・プロセッサー、グラフィックス・プロセッサー、画像処理プロセッサー、オーディオ・プロセッサー、ビデオ・プロセッサー、または他の形のマルチメディア・プロセッサーである。一つの形態では、プロセッサー106はベースバンド・プロセッサーまたはベクトル・スイズル実施のためのDSP(ディジタル信号プロセッサー)である。
デバイス100はピクセル・データの色成分のパターンのようなデータ成分の順序またはフォーマットを記述するためにハードウェアにダウンロードされるソフトウェア・プログラム可能なパターンを利用する。パターンが付加されるか、もしくは更新されるときはいつでも、新しい、もしくは更新されたパターンを実行することを望むデバイス100上で動くアプリケーションのソフトウェア・ドライバーは更新することができる。そのような方法では、デバイス100のハードウェアは新しい、或いは更新されたパターンに対応するために必ずしも変える必要があるとは限らない。デバイス100の中でプログラム可能なパターンを使用することによって、デバイス100に対応するデータ・パターンの数に理論上の限界はない。さらに、デバイス100は入来データ及び出力データを処理するために異なるパターンに対応する。
一つの形態では、プロセッサー106は複数の入力データ成分のパターンを指定するパターン情報を受取るように構成される。これらの入力データ成分は静止画像データ成分、ビデオ・データ成分、及び/またはオーディオ・データ成分を含む。例えば、入力データ成分は色チャネルのようなピクセル・データ成分を含む。プロセッサー106はさらに下記でさらに詳しく述べるように、パターン情報に従ってプロセッサー106の選択された処理パイプラインにおいて各入力データ成分を処理するように構成される。一つの形態では、プロセッサー106は更新された、もしくは新しいパターンについてデバイス100のパターン情報処理能力を更新するためにパターン情報またはパターン定義を受取ることができる。この形態では、デバイス100はプロセッサー106によって対応できるいくつかのパターンの形式において柔軟性が付加される。パターン及び関連するパターン情報はデバイス100によって実施されるソフトウェアによって設定可能である。一つの形態では、デバイス100上で動くソフトウェア・アプリケーションは新しいパターンを定義することができ、そしてこれらのパターンに関連するパターン情報をプロセッサー106にダウンロードすることができる。
デバイス100はグラフィックス・アプリケーション、画像アプリケーション、オーディオ・アプリケーション、ビデオ・アプリケーション、または他のマルチメディア・アプリケーションといった、様々な異なるアプリケーションを実行することができる。例えば、デバイス100は画像アプリケーション、オーディオ・アプリケーション、ビデオ・ゲーム・アプリケーション、ビデオ・アプリケーション、ディジタル・カメラ・アプリケーション、即時通信アプリケーション、モバイル・アプリケーション、またはオーディオまたはビデオ・ストリーミング・アプリケーションのために使用される。図1では、プロセッサー106は処理システム102の一部である。処理システム102はさらに一つ以上のエンジン108A〜108N(まとめて、108)及び一つ以上のメモリー・モジュール110A〜110N(まとめて、110)を含む。エンジン108はグラフィックス、オーディオ、及び/またはビデオ・エンジンを含む。プロセッサー106はエンジン108及びメモリー・モジュール110の両方に連結され、そして両者と情報を交換する。エンジン108は一つ以上のプロセッサーを含み、そしてメモリー・モジュール110はプロセッサー106及びエンジン108によって使用のデータ及び命令を記憶するために一つ以上のキャッシュを含む。
一つの形態によれば、主メモリー104はメモリー・モジュール110に対してさらに大きな、遅いメモリーである。一つの形態では、主メモリー104は処理システム102に関して外付けされている。主メモリー104はそのとき一つ以上のメモリー・モジュール110に搭載できるデータ及び命令を記憶する。
デバイス100はまた一つ以上の出力デバイス112A〜112N(まとめて、112)を含む。一つの形態では、出力デバイス112はLCD(液晶表示)または他の形のディスプレイ・デバイスといった、ディスプレイ・デバイスを含む。一つの形態では、出力デバイス112は画像データを具体的な形で提供することができるプリンターまたは他のデバイスを含む。多くの異なる形の出力デバイス112はデバイス200の中で使用される。
デバイス100の動作の間、プロセッサー106は結果として出力データを生成する 一つ以上の命令を実行するために入力データを使用することができる。プロセッサー106は実行の命令を一つ以上のエンジン108、一つ以上のメモリー・モジュール110、または主メモリー104から受取る。さらに、プロセッサー106は命令実行の間に使用される入力データを一つ以上のエンジン108、一つ以上のメモリー・モジュール110、または主メモリー104から受取る。入力データは一つ以上の入力データ成分を含む。例えば、入力データがピクセル・データであるならば、入力データ成分は色チャネルのようなピクセル・データ成分を含むであろう。
プロセッサー106はデータ源に応じて、様々な異なるフォーマット、またはパターンを持つ入力データ及び入力データ成分を受取る。例えば、エンジン108は様々な異なるフォーマットの入力データを提供し、そしてメモリー・モジュール110及び/または主メモリー104は、同様に、様々な異なるフォーマットでデータを記憶する。多くの場合、プロセッサー106によって受取られた入力データはデータ成分の圧縮された群として到来する。圧縮群の中の入力データ成分はデータ成分がデータ源によって(例えば、一つ以上のエンジン108、一つ以上のメモリー・モジュール110、または主メモリー104によって)配置された方法に従って特定のパターンで配置される。例えば、データ成分は圧縮群の中でインタリーブされたパターンで配置され、そこではデータ成分は反復的方法で混ぜられる。代りに、データ成分は異なるパターン、例えば、平面パターンを用いて配置され、そこでは同様の形式のデータ成分がグループ化される。
プロセッサー106は様々な異なるフォーマットを持つ入力データ成分を処理することができる。一つの形態では、プロセッサー106は一つ以上のエンジン108及び/または一つ以上のメモリー・モジュール110からパターン情報を受取るように構成される。パターン情報はプロセッサー106によって同じく受取られる複数の入力データ成分のパターンを指定する。例えば、プロセッサー106はエンジン108Aによってプロセッサー106に提供される入力データ成分のパターンを指定するパターン情報をエンジン108Aから受取る。プロセッサー106はパターン情報に従ってプロセッサー106の選択された処理パイプラインにおいて各入力データ成分を処理するように構成される。入力データ成分のパターンを知ることによって、プロセッサー106は一以上のその処理パイプラインを選択することができ、そして選択されたパイプラインにおける各入力データ成分をパターン情報に従って処理することができる。
一つの形態ではプロセッサー106の処理パイプラインは入力データ成分を処理し、そして出力データ成分を生成する。プロセッサー106は、この形態において、さらに処理パイプラインによって処理される出力データ成分のパターンを指定する追加パターン情報を受取るように構成される。プロセッサー106は追加のパターン情報を一つ以上のエンジン108及び/または一つ以上のメモリー・モジュール110から受取る。プロセッサー106は選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理するように構成される。一つの形態では、プロセッサー106は出力データ成分を一つ以上の出力デバイス112、主メモリー104、一つ以上のメモリー・モジュール110 、及び/または記憶または他の使用のために一つ以上のエンジン108に提供する。
追加のパターン情報は一つ以上の出力デバイス112及び/または出力のための(例えば、さらなる処理、ディスプレイ、及び/または印刷のための)出力データ成分を受取る一つ以上のエンジン108によって期待されるデータ成分のパターンを指定する。そのような方法で、プロセッサー106は静止画像データ、オーディオ・データ、ビデオ・データ、または他のマルチメディア・データのデータ成分(例えば、入力データ成分、出力データ成分)の順序付けを指定するパターン情報を処理することができる。プロセッサー106は使用されるパターンの所定の数に制限されない。その代りに、プロセッサー106は任意の数の異なるプログラム可能なパターンのデータを処理する。さらに、プロセッサー106は任意のハードウェア変更を必ずしも必要とせずに新しい、もしくは更新されたパターンを使用してデータを処理することができる。その代りに、プロセッサー106はパターン情報において指定されたパターンに基づいて入来及び送出データ成分をいかに処理するかを決定するためにパターン情報を使用する。これはプロセッサー106によって実施されるパターン処理に多くの柔軟性を提供する。
図2Aは一つの形態に従ってプログラム可能なディスプレイ・プロセッサー206を含むデバイス例200を例示するブロック図である。この形態では、図2Aに示したデバイス200は図1に示したデバイス100の例示例であり、そしてまたデバイス100と同様に、パターンに基づくデータ・チャネル情報の解凍及び圧縮を実施することができる。デバイス200は処理システム202、主メモリー204、及び一つ以上の出力デバイス212A〜212N(まとめて、212)を含む。
プログラム可能なディスプレイ・プロセッサー206はデバイス200の処理システム202の中に含まれる。一つの形態では、ディスプレイ・プロセッサー206はディスプレイのためのピクセル・データを処理する。就中、そのような処理は回転、基準化(scaling)、透明度、及び被覆を含む。処理システム202はさらに一つ以上のエンジン208を含み、それは制御プロセッサー209、グラフィックス・プロセッサー211、オーディオ・プロセッサー213、及びビデオ・プロセッサー215を含む。一つの形態では、処理システム202は制御プロセッサー209、グラフィックス・プロセッサー211、オーディオ・プロセッサー213、及びビデオ・プロセッサー215の少なくとも一つを含む。処理システム202はさらにキャッシュ・メモリー210を含む。
ディスプレイ・プロセッサー206は処理パイプライン222(図2Bに示される)を含む。プロセッサー206は入力ピクセル・データ成分のパターンを指定するパターン情報を受取るようにに構成される。プロセッサー206はこのパターン情報を一つ以上のエンジン208、キャッシュ・メモリー210、またはメモリー204から受取る。プロセッサー206はさらにパイプライン222内の選択された処理パイプラインにおいて各入力ピクセル・データ成分をパターン情報に従って処理するように構成される。
プロセッサー206はさらにパイプライン222によって処理される出力ピクセル・のデータ成分のパターンを指定する追加パターン情報を受取るように構成される。プロセッサー206はこの追加パターン情報を一つ以上のエンジン208、キャッシュ・メモリー210、またはメモリー204から受取る。プロセッサー206はそのとき各出力ピクセル・データ成分を選択された処理パイプラインから一つ以上の出力デバイス212へ追加パターン情報に従って提供するように構成される。この方法で、プロセッサー206はこれらのパターンを記述するパターン情報へアクセスすることによって様々な異なるパターンのデータ成分を動的及び適応的に処理することができる。プロセッサー206は様々な源からパターン情報を受取り、そしてプロセッサー206によって処理されるデータ成分のパターンはプロセッサー206に任意のハードウェア変更を必要とすることなく更新、もしくは付加される。その結果、プロセッサー206は所定数のデータ・パターンを処理することを制限されないが、デバイス200上で動くソフトウェア・アプリケーションによって定義される様々な異なるパターンを扱うことがいくぶんできる。
図2Bは一つの形態に従ってディスプレイ・プロセッサー206の追加の詳細を例示するブロック図である。この形態では、プロセッサー206は命令制御器(command controller)220、レジスター221、処理パイプライン222、出力デバイス部224A〜224N(まとめて、224)及びバッファー226を含む。プロセッサー206は、一つの形態によると、データ成分の並行処理のために処理パイプライン222を使用する。データ成分が画像データのピクセル・データ成分から成るとき、処理パイプライン222は並行して働く3個以上のパイプラインを含む。ある場合には、ピクセル・データがアルファ・チャネル(RGBアルファのような) を含むとき、またはCMYK色空間に関しては4パイプラインが利用される。一般に、処理パイプライン222は各々がデータ・チャネルのデータ成分を処理することができる一つ以上のパイプラインを含む。一つの形態では、処理パイプライン222は並行して命令を実行することができる個々の実行ユニットを含む。
一つの形態では、処理パイプライン222は画像データの成分のような、データ成分に対して操作を実行する。データが画像データであるとき、処理パイプライン222は回転操作または基準化操作のような、ピクセル・データ成分に対して操作を行う。ピクセル・データ成分はメモリー204(図2A)、キャッシュ・メモリー210から、もしくは一つ以上のエンジン208(示されない)から受取られる。
命令制御器220は、一つの形態によると、プロセッサー206による実行のための命令を受取る。命令制御器220はまたプロセッサー206によって受取られ、且つ/またはアクセスされるピクセル・データのようなデータを表す情報を受取る。一つの形態では、これらの命令及び情報は制御プロセッサー209によって提供される。一つの形態では、これらの命令及び情報は一つ以上のエンジン208、メモリー204、またはキャッシュ・メモリー210から提供される。
出力デバイス部224は、一つの形態によると、(パイプライン222によって処理されたピクセル・データのフレームのような)完成されたフレームをディスプレイのような、一つ以上の出力デバイスに届ける。プロセッサー206は一つ以上の出力デバイス部224を含む。出力デバイス部224は一つ以上の出力デバイス212が同期化を必要とする物理標的である状況において大抵使用される。例えば、出力デバイス部224Aはテレビ出力のために使用され、一方、出力デバイス部224NはRGB方式のLED標的を扱う。例えば、出力デバイス部224は画像乱れ(tearing)を防ぐためにパイプライン222によって造出されたフレームの出力を標的ディスプレイ(出力デバイス212の一つ)の垂直リフレッッシュ・タイミングに同期させる。代りに、同期化があまり重要ではないとき、処理パイプライン222は完成されたフレームを一つ以上の出力デバイスに直接送る。
図2Bの例では、プロセッサー206はまた一つ以上のバッファー226を含む。一つの形態では、処理パイプライン222は内部画像バッファリングのためにバッファー226を使用する。例えば、バッファー226は「iBufs」といった、内部バッファーを含む。バッファー226内の一つ以上の内部バッファーは出力デバイス212A〜212Nごとに提供される。一つの形態では、バッファー226内の内部バッファーはそのとき、例えば、一つ以上の出力デバイス212に引渡されるフレームを構成するために連続して、リング-バッファー様式で使用される。
一つの形態では、プロセッサー206はまた一つ以上のレジスター221を含む。プロセッサー206は処理パイプライン222内で命令実行の間に使用のためにレジスター221内のデータを記憶する。一つの形態では、プロセッサー206はまたパイプライン222における入力データ成分を処理するために、もしくはパイプライン222からの出力データ成分を処理するために受取られたパターン情報と共に使用されるレジスター221内の情報を記憶する。この形態では、プロセッサー206が一つ以上の画像の画像データを処理するとき、データ・フォーマット及びパターンに関するある情報は実質的に一定のままである。そのような場合には、プロセッサー206は実質的に一定のままにあるレジスター221内のあるフォーマットもしくはパターン情報を記憶する。プロセッサー206が一つ以上のエンジン208、メモリー204、または画像データのデータ成分の特定の群に関係するキャッシュ・メモリーから動的パターン情報を受取るとき、プロセッサー206はデータ成分の処理を管理するためにレジスター221に記憶されたフォーマットまたはパターン情報と共にこの受取られた情報を使用する。様々な例は下記でさらに詳しく述べる。
図2Cは、一つの形態に従って、処理パイプライン222の追加の詳細を例示するブロック図である。この形態では、処理パイプライン222は解凍エンジン230、並行処理パイプライン232A〜232N(まとめて、232)、及び圧縮エンジンを含む。パイプライン232は、一つの形態に従って、並行して命令を実行することができる。図2Cに示したように、各パイプライン232A〜232Nは実行ユニットを含む。
図2Cの例では、解凍エンジン230は画像データを処理するとき入力ピクセル・データ成分228を受取る。解凍エンジン230はまた入力ピクセル・データ成分228のパターンを指定するパターン情報238を、直接または命令制御器220を通して、受取ることができる。一つの形態では、このパターン情報238はエンジン208の一つによって実行されたユーザー・アプリケーションによって指定され、そしてそのアプリケーションのソフトウェア・ドライバーを通してプロセッサー206に提供される。パターン情報238に基づいて、解凍エンジン230はパターン情報238によって指定されたパターンに基づいて一群の指定された入力ピクセル・データ成分228を解凍し、そしてそれらの選択された処理パイプライン232A〜232Nにおいてピクセル・データの解凍入力ピクセル・データ成分228A〜228Nを処理する。一つの形態では、各ピクセル・データ成分228A〜228Nは選択されたパイプライン232A〜232Nにおいて処理される。この形態では、パイプライン232は並行して入力データ成分228A〜228Nを処理することができる。例えば、入力ピクセル・データ成分228がRGB色空間のピクセル色成分を含むならば、ピクセル・データ成分228は3成分228A、228B、及び228Cを含む。この例では、パイプライン232Aはデータ成分228Aを処理し、パイプライン232Bはデータ成分228Bを処理し、そしてパイプライン232Cはデータ成分228Cを処理する。
一つの形態では、一つ以上出力デバイス部224(図2B)は解凍エンジ230に類似した解凍エンジンを含む。この形態では、一つ以上の出力デバイス部224で使用される解凍エンジンはそのような成分を処理する前に処理パイプライン222によって一つ以上に出力デバイス212へ提供されたデータ成分を解凍するために使用される。
各パイプライン232A〜232Nは命令239を実行しているときそれぞれの入力データ成分228A〜228Nを使用する。命令239は、一つの形態によると、一つ以上のエンジン208、メモリー204、またはキャッシュ・メモリー210によって提供され、そして命令制御器220によって装荷される。命令実行の結果、パイプライン232A〜232Nは出力ピクセル・データ成分236A〜236Nを生成、または造出する。
圧縮エンジン234は出力ピクセル・データ成分236A〜236Nがそれらのそれぞれのパイプライン232A〜232Nによって処理された後でそれらを特定のパターンへ再順序付けする。圧縮エンジン234は処理された出力ピクセル・データ成分236A〜236Nの一群を圧縮するためにどのようなパターンを使用するかを示すパターン情報240を提供される。一つの形態では、圧縮エンジン234は一群の出力データ成分236A〜236Nをパターン情報によって記述されたパターンに基づく圧縮データ成分236の配列に圧縮する。圧縮エンジン234は処理されたピクセル・データ成分236A〜236Nの一群を特定のアプリケーション、もしくは一つ以上の出力デバイス212に適した出力ピクセル・データ成分236内の任意の指定パターンに配置するためにパターン情報240を提供される。一つの例として、出力ピクセル・データ成分236が処理の後で直ちに表示されるならば、ディスプレイ(それは出力デバイス212の一つであろう)のフレーム・バッファーの予想データ配置を示すパターン情報240を圧縮エンジン234に提供することは有益である。
パターン情報240はパターン情報238とは異なり、そして区別される。一つの形態では、圧縮エンジン234は一つ以上のエンジン208、主メモリー204、またはキャッシュ・メモリー210からパターン情報240を受取る。
圧縮エンジン234及び解凍エンジン230は様々な異なるパターンに基づいてデータ成分を圧縮し、そして解凍する。解凍エンジン230は一群の入力データ成分228を任意の順序またはパターン情報238によって指定される配置を使用してデータ成分228A〜228Nへ解凍することができる。同様に、圧縮エンジン234は一群の出力データ成分236A〜236Nを任意の順序またはパターン情報240によって指定される配置を使用して圧縮データ成分236へ圧縮することができる。
任意の形式のパターンはパターン情報238または240によって指定される。例えば、パターン情報238または240はインタリーブ・パターン(例えば、RGBアルファ・フォーマットについてRGBARGBARGBARGBA)、平面パターン(例えば、RRRR、GGGG、BBBB、およびAAAA)、部分的インタリーブ・パターン ( 例えば、RRGGBBAARRGGBBAAA)を指定し、ここでRは赤データを表し、Gは緑データを表し、Bは青データを表し、そしてAはアルファ(透明度)データを表す。
パターン情報238または240によって指定された疑似平面パターンは、一つの形態に従って、色チャネルが副標本化されるときYCに使用される。このパターンでは、全ての輝度標本は平面パターンと同様に共に記憶される。しかしながら、二つの色チャネルはインタリーブ・パターンと同様に混ぜられる。アルファは、使用されるならば、輝度のように扱われる。疑似平面パターンは輝度及び色ストリームを相対的に同期を保つためにビデオ・ハードウェアで使用される。これらは単にパターン情報238または240によって指定されるパターンの形式及び種類の二、三の限定されない例である。
図3は、一つの形態に従って、デバイス200によって実施されるソフトウェア処理パイプラインのブロック図である。この形態では、処理パイプライン322は直接ハードウェアではなく、ソフトウェア・アプリケーション内で実施され、且つSIMDベクトル拡張によるか、もしくはSIMDベクトル拡張なしで一般用CPUによって実施されるモジュールである。このソフトウェア・モジュールは主メモリー204及び/またはキャッシュ・メモリー210に記憶されるプログラム命令を含む。そのソフトウェアは、一つの形態によると、ディスプレイ・プロセッサー206によって実行されるか、または一つ以上のエンジン208によって実行される。そのソフトウェアが実行されるとき、それは図2Cの例に示した処理パイプライン222によって提供された機能性と類似するソフトウェア処理パイプライン322の機能性を提供する。プロセッサー206または一つ以上のエンジン208は、いくつかの形態では、一般用CPUを含む。
図3では、ソフトウェア処理パイプライン322のモジュールは解凍エンジン330、パイプライン342A〜342N、及び圧縮エンジン334を含む。解凍エンジン330は入力ピクセル・データ成分328及びパターン情報338を受取り、それは一つ以上のソフトウェア・アプリケーションから提供される。解凍エンジン330はパターン情報338によって指定された一群の入力ピクセル・データ成分を個々のデータ成分328A〜328Nに解凍し、そして選択されたパイプライン342A〜342N(まとめて、342)において解凍データ成分328A〜328Nを処理する。各パイプライン328A〜328Nは出力データ成分336A〜336Nを生成、もしくは造出するためにデータ成分328A〜328Nの一つを処理することができ、それはそのとき圧縮エンジン334へ提供される。
圧縮エンジン334はパターン情報340を受取り、それは一つ以上のソフトウェア・アプリケーションによって提供される。圧縮エンジン334は圧縮エンジン334が一群の出力データ成分336A〜336Nを一群の出力ピクセル・データ成分336に配置するために使用するパターンを指定する。これらのデータ成分336はそのとき、出力として、一つ以上のソフトウェア・アプリケーションに提供される。
図4は、一つの形態に従って、ディスプレイ・プロセッサー206によって実行される方法のフロー・チャートである。図4の例では、その方法は動作400、402、404、406、408、及び410を含む。
図4に示したように、処理パイプライン222(図2C)内の解凍エンジン230はピクセル・データ色成分のような複数の入力データ成分228を受取る(400)。解凍エンジン230はさらに入力データ成分228のパターンを指定する第一のパターン情報238を受取る(402)。解凍エンジン230はそのとき一群の入力データ成分228を解凍し、そして各解凍成分228A〜228Nを選択された処理パイプライン232A〜232Nへパターン情報238内に含まれるパターン要素に従って提供する(404)。一つの形態では、パターン情報238は、下記でさらに詳しく述べるように、一つ以上の入力データ成分に各々関連する複数のパターン要素を含む。
解凍データ成分228A〜228Nは出力データ成分236A〜236Nを生成するために選択されたパイプライン232A〜232Nにおいて命令実行の間に処理される(406)。これらの出力データ成分236A〜236Nは圧縮エンジン234に提供される。圧縮エンジン234はそのとき出力データ成分236A〜236Nのパターンを指定する第二のパターン情報240を受取る(408)。圧縮エンジン234は一群の出力データ成分236A〜236Nをパターン情報240内に含まれるパターン要素に従ってデータ成分236に圧縮する(410)。
図5A〜5Cは、一つの形態に従って、パターン例500及びパターン500を説明するために使用さるパターン情報502及び504の例を例示する図である。この形態では、パターン情報例502及び/または504はパターン情報238として解凍エンジン230(図2C)に提供されるか、またはパターン情報240として圧縮エンジン234に提供される。
パターン例500は図5Aに示される。この例では、パターン500はRGB色空間内で多数のピクセル色データ成分のパターンを定義する。パターン500は4ピクセルに関連する12個の色データ成分の平面パターン・フォーマットを定義する。パターン500は4個のピクセルP0〜P3について一つ、4個のR(赤)データ成分RP0、RP1、RP2、RP3で始まる。パターン500はそのあと各ピクセルP0〜P3について一つ、4個のG(緑)データ成分GP0、GP1、GP2、GP3を指定する。最後に、パターン500は各ピクセルP0〜P3について一つ、4個のB(青)データ成分BP0、BP1、BP2、BP3を指定する。
一つの形態例では、解凍エンジン230によって受取られる入力ピクセル・データ成分228(図2C)、または圧縮エンジン234によって受取られる出力ピクセル・データ成分236はパターン500によって指定されたフォーマットを持つ。この場合には、図5Bに示したパターン情報502または図5Cに示したパターン情報504はパターン500を指定するために提供される。
パターン情報502は各個々のデータ成分について多数の成分を含む。使用される成分識別子例(1=赤、0=緑、2=青)は図5Bに示されている。勿論、任意の形の成分識別子も使用される。パターン情報502の中の各個別の成分識別子(もしくは、パターン情報502の代表テーブルの各列)は、一つの形態によれば、パターン情報502のパターン要素に対応する。図5Bでは、各パターン要素は一つの色データ成分と関連する。この形態では、解凍エンジン(例えば、解凍エンジン230)または圧縮エンジン(例えば、圧縮エンジン234)は順次、要素ごと(または列ごと)の様式でパターン情報502のパターン要素を処理する。パターン情報502は4個の赤成分、続いて4個の緑成分、続いて4個の青成分のパターンを指定するために12個の異なるパターン要素を使用し、それはパターン500の配列である。この様式では、パターン情報502はパターン500を指定するために使用される情報の一つの例である。解凍エンジン230または圧縮エンジン234がパターン情報502の各パターン要素を処理するとき、一つの形態によると、それはパターン情報502によって指定されたパターンを使用して連続原理に基づいて追加データ要素を処理するためにパターン情報中のパターン要素の各々に処理を繰返す。
図5Cはパターン500を指定するために使用されるパターン情報504の別の例を例示する。パターン情報504はラン-レングス情報を含む。ラン-レングスはパターン内で順次に配置されるいくつかの同じ形式のデータ成分(例えば、赤色成分)を記述する。この形態では、各パターン要素はラン-レングス及び成分識別子を含む。従って、パターン情報504は4個の赤成分、続いて4個の緑成分、続いて4個の青成分のパターンを指定するためにただ3個の異なるパターン要素(図5Cでは列として表される)を使用する。この例において、個々のパターン要素が1より大きいラン-レングスを持つとき、パターン要素は多数のデータ成分(例えば、多数の赤データ成分)と関連し、ここでは関連するデータ成分の数はパターン要素のラン-レングスの値に等しい。ラン-レングス値は、一つの形態によると、2ビットの二進値表現として提供される。この形態では、4のラン-レングスは3の2ビット値(即ち、二進値「11」)によって表される。(1のラン-レングスは2ビットの二進値「01」で表され、2のラン-レングスは2ビットの二進値「00」で表され、そして3のラン-レングスは2ビットの二進値「10」で表される。)
図5B〜5Cに示した成分識別子及びラン-レングスの値は単に典型的なものである。これらの値は様々なフォーマットを用いて表され、もしくは記憶される。例えば、いくつかのシナリオにおいて、各パターン要素は1-バイトのフィールドを含み、そこでは所定のビット値は成分識別子及びラン-レングス値と関連する。様々な異なるフォーマットがパターン要素を表すときに使用される。さらに、パターン情報502及びパターン情報504は一つ以上のパターン要素を含む。いくつかの場合には、デバイス200はパターン情報内に含まれるパターン要素の数(例えば、16個のパターン要素)を制限するが、他の場合には、そのような制限は存在しない。
図6A〜6Dは、一つの形態に従って、パターン例600及びパターン600を記述するために使用されるパターン情報602、604、及び606の例を例示する図である。パターン情報602、604、及び/または606は解凍エンジン230に提供されるパターン情報238内に、或いは圧縮エンジン234に提供されるパターン情報240内に含まれる。いくつかの事例では、ピクセル・データ成分のような、データ成分は水平列、またはライン・フォーマットよりも、タイル張り(tiled)、またはブロック・フォーマット(block format)で処理、或いは記憶される。従って、これらの場合には、プロセッサー206はこのフォーマットを持つ入力データ成分を受取る。図6Aはそのようなタイル張り、またはブロック配列のデータ成分を定義するパターン例である。この例では、パターン600は2ブロック×2ブロック・タイルのデータ成分を定義する。4ブロックの各々はあるピクセルの3整列RGB色成分に対応する。従って、左上のブロックはピクセル0の3整列データ成分(RP0P0P0)を含み、右上のブロックはピクセル1の3整列データ成分(RP1P1P1)を含み、左下のブロックはピクセルの整列データ成分(RP2P2P2)を含み、そして右下のブロックはピクセル3の3整列データ成分(RP3P3P3)を含む。
図6Bは図6Aに示したパターン600を指定、もしくは記述するために使用されるパターン情報の第一の例を示す。図6Bの例では、パターン情報602は3個の異なるパターン要素を含む(それは、例示のために、図6Bに示したパターン602のテーブル表現の中で列としてさらに示される)。各パターン要素は前に述べた成分識別子及びラン-レングスを持つ。パターン600のタイル張りフォーマットを指定するのを助けるために、しかしながら、各パターン要素はさらに「パッチ(patch)」高さ(P)及び「パッチ」幅(P)を含む。パッチ高さは(パターン600における)タイルの垂直ブロックの数を指定し、そしてパッチ幅はタイルの水平ブロックの数を指定する。従って、パターン600は2ブロック×2ブロックのタイルを含むので、パッチ高さ及びパッチ幅は各パターン要素について各々2として指定される。
各パターン要素に指定されたラン-レングスは4である。(前に論じたように、ラン-レングス値は、一つの形態によると、2-ビットの二進表現として提供され、そこでは4のラン-レングスは二進数「11」として表される。)パッチ高さ及びパッチ幅が各々パターン要素について2に等しく、そしてラン-レングスが4に等しいとき、プロセッサー206はデータ成分のパターン600を指定するためにパターン602を使用することができる。プロセッサー206は各ピクセルの一つの赤データ成分がタイルの各ブロック内に含まれることを決定するため、パターン情報602(P=2、P=2、ラン-レングス=4、成分ID=1)において第一のパターン要素を処理するために解凍エンジン230または圧縮エンジン234を使用する。同様に、プロセッサー206は各ピクセルの一つの緑データ成分及び 一つの青データ成分がまたタイルの各ブロック内に含まれることを決定するために第二及び第三のパターン要素を処理する。
図6Cは追加情報がプロセッサー206によって使用されるとき、パターン600を指定するために使用されるパターン情報604の第二の例を示す。この形態では、パターン情報604内のパターン要素は成分識別子及びラン-レングスのみを含む。しかしながら、プロセッサー206はパターン、例えば、パターン600(それは処理パイプライン222内でデータ成分を処理しているとき使用される)を指定するとき一つ以上のレジスター221(図2B)内に記憶された追加情報と共にパターン情報604を使用する。図6Cの例では、パッチ高さ及びパッチ幅値は一つ以上のレジスター221内に記憶される。
ある場合には、パッチ高さ及びパッチ幅値のような、追加の情報はそれらの値が多数のデータ成分の処理の間に実質的に一定のままにあるときレジスター221に記憶される。現在の例では、データ成分が2ブロック×2ブロックのタイル張り配置においてプロセッサー206によって連続して受取られ、或いはプロセッサー206から出力されるならば、2のパッチ高さ及びパッチ幅値は実質的に一定のままであるであろう。この場合には、これらの値はレジスター221に記憶される。その結果、パターン情報604内の各パターン要素のサイズは低減される。
図6Dは図6Aに示したパターン情報600を指定、さもなくば記述するために使用されるパターン情報606の第三の例を示す。パターン情報606は3個のパターン要素を含む。各パターン要素は、図6Bに示したパターン要素と同様に、成分識別子、ラン-レングス、パッチ高さ、及びパッチ幅を含む。その上、けれども、図6Dにおけるパターン情報606のパターン要素はまた水平走査順序(S)及び垂直走査順序(S)を含む。S及びSの値はパターン600のタイル内の個々のブロックの水平及び垂直走査順序を指定する。一つの形態では、これらの値はブール値であり、その例は図6Dに示される。Sがゼロに等しければ、水平走査順序は左から右への走査順序を指定する。Sが1に等しければ、水平走査順序は右から左への走査順序を指定する。Sがゼロに等しければ、垂直走査順序は上から下への走査順序を指定する。Sが1に等しければ、垂直走査順序は下から上への走査順序を指定する。
したがって、パターン情報606内のパターン要素は各パターン要素についてゼロのS及びS値を使用することによってパターン600を記述する。しかしながら、各個々のパターン要素はS及びSの値を指定することが図6Dの例から理解することができる。その結果、各パターン要素はデータ成分のパターンを指定、もしくは記述するとき、水平走査順序及び垂直走査順序の任意の値を指定する。
その上、パターン情報606のパターン要素はピクセル当たりビット(bits-per-pixel)(Bpp)値を含む。この値は各パターン要素に関連する成分のピクセル当たりのビットの数を表す。ピクセル当たりのビットの数はその成分の色解像度または深さに関係する。図6Dの例では、赤-緑-青色空間の各成分はピクセル当たり8ビットのBpp値を持つ。しかしながら、Bppの他の様々な値はパターン情報606内で使用される。例えば、赤色成分は5のBpp値を持ち、緑色成分は6のBpp値を持ち、そして青色成分は5のBpp値を持つ。これらのような異なる様々な値はパターン情報606内で使用される。
一つの形態では、多数のデータ成分を処理しているときS及びSの値が実質的に一定のままであれば、これらの値はパターン情報606の中に含まれるよりは、プロセッサー206のレジスター221に記憶される。この形態では、解凍エンジン230及び/または圧縮エンジン234(図2C)はレジスター221からS及びSの値にアクセスし、そして入力データ成分または出力データ成分を処理するために受取パターン情報と共にこれらの値を使用する。同様に、多数のデータ成分を処理しているときBpp値が実質的に一定のままであれば、これらの値はまたパターン情報606の中に含まれるよりは、プロセッサー206のレジスター221に記憶される。
図7A〜7Bは、一つの形態に従って、パターン例700及びパターン700を記述するために使用されるパターン情報702の例を例示する図である。パターン情報702は、一つの形態によると、解凍エンジン230に提供されるパターン情報238(図2C)内に、もしくは圧縮エンジン234に提供されるパターン情報240内に含まれる。図7のパターン例700はアルファ(透明度)を使用するYC色空間内のピクセル色成分データの4ブロック×4ブロックのタイルである。各ブロックは一つ以上の個々のピクセルの多数のピクセル色データ成分(即ち、一つ以上の16個で表されるピクセルP0〜P15)を含む。このパターン700から判るように、タイル内の各ブロックは一つのY及び 一つのアルファ色データ成分を含む。しかしながら、各ブロックはさらにCまたはCデータ成分のいずれか及びその水平の隣を含むが、両方は含まない。パターン700から判るように、C及びCのデータ成分、各ペアのピクセルのデータ成分は、タイル内で左から右及び上から下への走査を仮定すると、一つのブロックから次のブロックへ交互に変わる。
パターン700は422H(H2V21)副標本化器(sub-sampler)によって利用される指定されたタイル内の色データ成分のフォーマットを定義する。422H副標本化(sub-sampling)では、Y及びアルファ成分は各ピクセルについて一度標本化され、それはY及びアルファ成分がパターン700においてタイルの各ブロック内に含まれる理由である。422H副標本化では、しかしながら、C及びC成分はピクセルのペアごとにただ一度だけ標本化される。従って、パターン700では、上記で単に述べたように、C及びC成分は他の全てのブロックごとに交互に入れ替わる。422H副標本化が処理パイプライン222の外部で行われるときプロセッサー206はパターン700に適合するデータ成分(例えば、図2Cに示した入力データ成分228及び/または出力データ成分236)を処理する。422H<_>444再標本化器(re-samplers)は解凍エンジン230及び/または圧縮エンジン234に連結され動作可能である。一つの形態では、これらの再標本化器はプロセッサー206、一つ以上のエンジン208、または一つ以上の出力デバイス212内に含まれる。一つの形態では、超標本化器(super-sampler)(または高位標本化器(upsampler))は解凍エンジン230と連結され、そして副標本化器は圧縮エンジン234と連結される。422H副標本化器はテレビジョン及びJPEG(合同写真専門家グループ)アプリケーションにしばしば使用される。
一つの形態では、他の様々な副標本化器が422H副標本化器に代わって、或いはそれに加えて、デバイス200内で利用される。例えば、二、三挙げると、422V(H1V2)副標本化器(しばしばJPEGアプリケーションで使用される)、420副標本化器(しばしばJPEG、MPEG、またはカメラ・アプリケーションで使用される)、及び411副標本化器が使用される。プロセッサー206に提供されるパターン情報はこれらの型式の副標本化器によって処理されるピクセル・データ成分に使用される様々なパターンを指定するために特別仕立てされ、或いは適応化される。
図7Bは、一つの形態に従って、パターン700を指定し、さもなくば記述するために使用されるパターン情報702の例を示す。パターン情報702は4個のパターン要素を含む。各パターン要素は成分識別子(その例は図7BのYCアルファ色空間について示される)、ラン-レングス、パッチ高さ、及びパッチ幅を含む。パターン要素はさらに、しかしながら、垂直副標本化値(Vss)及び水平副標本化値(Hss)を含む。一つの形態では、識別されたデータ成分に関する1のHss値はこれらのデータ成分がタイル張りパターン700内の水平方向の他の全てのブロックについて存在することを示す。この形態では、識別されたデータ成分に関する1のVss値はこれらのデータ成分がタイル張りパターン700内の垂直方向の他の全てのブロックについて存在することを示す。ゼロのHss及びVss値は、一つの形態によると、データ成分が水平方向及び垂直方向を持つ全てのブロックについてそれぞれ存在することを示す。
図7Bに示したパターン情報702の例では、C及びCデータ成分に対応するパターン要素は1のHss値を持ち、これらのデータ成分がタイル張りパターン700内の水平方向の他の全てのブロックについて存在することを示す。これらのデータ成分が他の全てのブロックについて存在すると仮定すると、これらのパターン要素のラン-レングスは8に等しい。これらのパターン要素のパッチ高さ及びパッチ幅値は各々4に等しく、パターン700が4ブロック×4ブロックのタイルであることを示す。
Y(輝度)及びアルファ・データ成分に対応するパターン要素は4のパッチ高さ及びパッチ幅値を持つ。これらのパターン要素は16に等しいラン-レングスを持っているが、ゼロのVss及びHss値を持つので、Y及びアルファ・データ成分はタイル張りパターン700の各ブロック内に含まれる。従って、 一つの形態によると、パターン情報702におけるパターン要素はパターン700内の成分の配置を記述する。
この例では、Vss及びHssの値は二進値であり、そこではゼロの値は副標本化を示さず、そして1の値は垂直もしくは水平方向のどちらかにおける他の全てのブロックのデータ成分の副標本化または間隔を示す。しかしながら、 一つの形態では、Vss及びHssの値は1及びゼロの二進値に制限されない。この形態では、Vss及びHssの値は特定のパターン要素について特定の標本化値を指定する。その上、Vss及びHssの値は多数のデータ成分の処理の間実質的に一定のままであることは可能である。この場合、一つの形態によると、これらの値はパターン情報702の各パターン要素内に含まれるのではなく、プロセッサー206のレジスター221内に記憶される。この形態では、解凍エンジン230及び/または圧縮エンジン234(図2C)はレジスター221からVss及びHssの値にアクセスし、そして入力データ成分または出力データ成分を処理するために受取られたパターン情報と共にこれらの値を使用する。
図8は、一つの形態に従って、タイル張りパターンを指定し、さもなくば記述するために使用されるパターン情報800の別の例を例示する図である。この形態にでは、そのパターンはパターン700(図7A)と類似し、YC及びアルファ成分を含むが、8ブロック×8ブロックのタイル張りパターンあることが仮定される。その結果、パターン情報800の中の各パターン要素は8のパッチ高さ及び8のパッチ幅を含む。パターン情報800によって指定されたパターンはパターン700と類似の配置を持ち、その中でY及びアルファ成分は各ブロックに提供されるが、C及びCは(左から右及び上から下の走査順序を使用して)水平方向のブロック間で交互に変わる。従って、Y及びアルファ成分と関連するパターン情報800のパターン要素は各々64のラン-レングス、ゼロのVss値、及びゼロのHss値を含む。C及びC成分と関連するパターン情報800のパターン要素は各々32のラン-レングス、ゼロのVss値、及び1のHss値を含む。
図9A〜9Bは、一つの形態に従って、多チャネル・オーディオのパターン例を指定し、さもなくば記述するために図1に示したプロセッサー106によって使用されるパターン情報900及び902の例を例示する図である。前に述べたように、プログラム可能なプロセッサー106はパターン情報によって指定されるパターンを持つデータ成分を処理することができる。この形態では、プロセッサー106は多チャネル・オーディオ・データの一部であるオーディオ・データ成分を処理することができる。この多チャネル・オーディオ・データは音響データまたは音声(スピーチ)データを含む。
図9A〜9Bの例では、プロセッサー106は多チャネル音響データを処理することが仮定される。オーディオ・データ成分は前部左(front-left)チャネル、前部中央(front-center)チャネル、前部右(front-right)チャネル、後部左(rear-left)チャネル、後部中央(rear-center)チャネル、後部右(rear-right)チャネル、及びサブ-ウーファー・チャネルに関連するチャネル・データを含む。他の様々な形のオーディオ・チャネルもまた使用される。
図9Aはこれらの様々なオーディオ・チャネルに関連する成分識別子の例を示す。パターン情報900は各パターン要素の成分識別子のみを含む。従って、パターン情報900では、各パターン要素は関連する成分識別子によって指定されたオーディオ・データ成分の一つと関連している。この例では、パターン情報900によって指定されたパターンは次のオーディオ・データ成分:前部左データ成分、前部中央データ成分、前部右データ成分、後部左データ成分、後部中央データ成分、後部右データ成分、及びサブ-ウーファー・データ成分のパターンである。これらのデータ成分の各々は、一つの形態によると、多チャネル・オーディオ・データ・ストリームの一部である。パターン情報900はこれらのデータ成分について7個のパターン要素を含む。一旦、プロセッサー106がデータ成分処理の最初の繰返しにおいてこれらの7個のパターン要素の各々を処理したならば、プロセッサー106はパターン情報900によって指定されたパターンを使用してオーディオ・データ成分を連続して扱うためにその処理を繰返す。この例では、そのパターンはオーディオ・データ成分のインタリーブ・パターンである。一つの形態では、プロセッサー106は圧縮エンジン及び解凍エンジンを含む。これらのエンジンの一つまたは双方は図9Aに示したパターン情報900を利用する。
図9Bはプロセッサー106によって使用されるパターン情報902の別の例を提供する。パターン情報902によって指定されたパターンはパターン情報900によって指定されたパターンとは異なる。パターン情報902によって指定されたパターンはそのパターンは平面-形式のパターンである。パターン情報902の各パターン要素は成分識別子及びラン-レングスを含む。図9の例では、各パターン要素は4のラン-レングスを持つ。従って、パターン情報902によって指定されたパターンは4個の前面左データ成分、続いて4個の前面中央データ成分、続いて4個の前面右データ成分、続いて4個の後部左データ成分、続いて4個の後部中央データ成分、続いて4個の後部右データ成分、続いて4個のサブ-ウーファー・データ成分を繰返し様式で含む。パターン情報900及び902の例から判るように、プロセッサー106は多チャネル・オーディオ・データのラン-タイム、プログラム可能なパターンをいくつでも処理し、多くの柔軟性をデバイス100に提供することができる。他の形態では、その上、プロセッサー106は同様にプログラム可能なパターンを使用して多チャネル・ビデオ・データ(ビデオ・データ成分)を処理することができる。
この開示において述べた技術は一般用マイクロプロセッサー、ディジタル信号プロセッサー(DSP)、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲートアレイ(FPGA)、または他の同等の論理デバイス内で実施される。従って、ここに使用される用語「プロセッサー」または「制御器(コントローラ)」は前述の構造もしくはこの中に述べた技術の実施に適した他の任意の構造を云う。
ここに述べた構成部品及び技術はハードウェア、ソフトウェア、ファームウェア、またはそれの任意の組合せにおいて実施される。モジュールまたは構成部品として述べたいくつかの特徴は集積化論理デバイスにおいて共にまたは個別であるが相互動作可能な論理デバイスとして別々に実施される。様々な形態において、そのような構成部品は少なくとも一部において一つ以上の集積回路デバイス として形成され、それは集積回路チップまたはチップセットといった集積回路デバイスとしてまとめて呼ばれる。そのような回路構成は単一集積回路チップ・デバイスにおいて、または多数の相互動作可能な集積回路チップ・デバイスにおいて提供され、そして画像、ディスプレイ、オーディオ、または他のマルチメディア・アプリケーション及びデバイスのあらゆる種類において使用される。いくつかの形態において、例えば、そのような構成部品は携帯無線通信デバイスのようなモバイル・デバイスの一部を形成する。
ソフトウェアで実施されれば、その技術は、一つ以上のプロセッサーによって実行されるとき、前述の一つ以上の方法を実行する命令を含むコンピューター可読媒体によって少なくとも一部実現される。コンピューター可読媒体はコンピューター・プログラム製品の一部を形成し、それはパッケージ資料を含む。コンピューター可読媒体は同期式ダイナミック・ランダム・アクセス・メモリー (SDRAM)のようなランダム・アクセス・メモリー(RAM)、読出し専用メモリー(ROM)、不揮発性ランダム・アクセス・メモリー(NVRAM)、電気消去可能読出し専用メモリー(EEPROM)、FLASHメモリー、磁気または光データ記憶媒体を含む。
その技術は、その上、もしくは代わりに、命令またはデータ構造の形でコードを搬送、または通信し、そして一つ以上のプロセッサーによってアクセスされ、読出され、且つ/または実行されるコンピューター可読通信媒体によって少なくとも一部実現される。任意の関係が適切にコンピューター可読媒体に名付けられる。例えば、そのソフトウェアがウェブサイト、サーバー、または他の遠隔源から同軸ケーブル、光ファイバー・ケーブル、ディジタル加入者回線(DSL)、または赤外線、高周波、及びマイクロ波といった無線技術を使用して伝送されるならば、同軸ケーブル、光ファイバー・ケーブル、撚り対線、DSL、または赤外線、高周波、及びマイクロ波といった無線技術は媒体の定義に含まれる。前述の組合せはまたコンピューター可読媒体の範囲内に含まれるべきである。利用される任意のソフトウェアは一つ以上のDSP、一般用マイクロプロセッサー、ASIC、FPGA、または、他の同等の集積化または個別の論理回路構成といった、一つ以上のプロセッサーによって実行される。
様々な開示の形態が述べられたきた。これら及び他の形態は次の請求項の範囲内にある。

Claims (91)

  1. 複数の入力データ成分のパターンを指定するパターン情報を受取ること、ここでパターン情報は一つ以上の入力データ成分に各々関連する複数のパターン要素を含み、そして各入力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される;及び
    選択された処理パイプラインへパターン情報に従って各入力データ成分を提供すること
    を含む方法。
  2. 選択された処理パイプラインへパターン情報に従って各入力データ成分を提供することはプログラム可能なプロセッサー内の選択された処理パイプラインに各入力データ成分を提供することである、請求項1記載の方法。
  3. 複数の処理パイプラインによって処理される複数の出力データ成分の第二のパターンを指定する追加パターン情報を受取ること、ここで追加パターン情報は一つ以上の出力データ成分と各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る第二の成分グループから選択される;及び
    選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理すること
    をさらに含む、請求項1記載の方法。
  4. 選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理することは選択された処理パイプラインから出力デバイスへの各出力データ成分を追加パターン情報に従って処理することを含む、請求項3記載の方法。
  5. 追加のパターン情報によって指定された第二のパターンに基づいて出力データ成分をデータ成分の配列に圧縮することをさらに含み、そして選択された処理パイプラインから出力デバイスへの各出力データ成分を追加パターン情報に従って処理することは配列におけるデータ成分を出力デバイスへ提供することを含む、請求項3記載の方法。
  6. 出力データ成分を出力デバイスに提供する前に処理パイプラインからの出力データ成分をバッファーに記憶させることをさらに含む、請求項3記載の方法。
  7. パターン情報によって指定されたパターンに基づいて一群の入力データ成分を解凍データ成分に解凍することをさらに含み、そして選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供することは解凍データ成分を複数の処理パイプラインへ提供することを含む、請求項1記載の方法。
  8. 入力データ成分はピクセル・データ成分を含む、請求項1記載の方法。
  9. 入力データ成分は多チャネル・オーディオ・データ成分を含む、請求項1記載の方法。
  10. 各パターン要素は関連する一つ以上の入力データ成分について成分識別子を含む、請求項1記載の方法。
  11. 各パターン要素はさらにパターン要素と関連する一つ以上の入力データ成分の数を指定するラン-レングスを含む、請求項10記載の方法。
  12. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項11記載の方法。
  13. 入力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取ることをさらに含み、そして選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供することは選択された処理パイプラインへ各入力データ成分をパターン情報及び追加情報に従って提供することを含む、請求項1記載の方法。
  14. 追加情報を受取ることは一つ以上のレジスターから追加情報を受取ることを含む、請求項13記載の方法。
  15. 複数の処理パイプラインを持つプログラム可能なプロセッサーを具備し、
    そのプロセッサーは複数の入力データ成分のパターンを指定するパターン情報、一つ以上の入力データ成分に関連する複数のパターン要素を含むパターン情報、及び静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分群から選択された入力データ成分を受取るように構成され、そして
    そのプロセッサーはさらに選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供するように構成される、
    デバイス。
  16. プロセッサーは処理パイプラインによって処理される複数の出力データ成分の第二のパターンを指定する追加パターン情報、一つ以上の出力データ成分に各々関連する複数のパターン要素を含む追加パターン情報、及び静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る第二の成分群から選択される各出力データ成分を受取るように構成される:そして
    そのプロセッサーはさらに選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理するように構成される、
    請求項15記載のデバイス。
  17. 出力デバイスをさらに具備し、プロセッサーは選択された処理パイプラインから出力デバイスへ各出力データ成分を追加パターン情報に従って提供するように構成される、請求項16記載のデバイス。
  18. 追加パターン情報によって指定された第二のパターンに基づいて出力データ成分をデータ成分の配列に圧縮するように構成された圧縮エンジンをさらに具備し、その圧縮エンジンはさらに配列のデータ成分を出力デバイスに提供するように構成される、請求項17記載のデバイス。
  19. バッファーをさらに具備し、圧縮エンジンはデータ成分を出力デバイスに提供する前にバッファー内に配列のデータ成分を記憶させるように構成される、請求項18記載のデバイス。
  20. パターン情報によって指定されたパターンに基づいて一群の入力データ成分を解凍データ成分へ解凍するために構成された解凍エンジンをさらに具備し、解凍エンジンはさらに解凍データ成分を処理パイプラインに提供するように構成される、請求項15記載のデバイス。
  21. 各パターン要素は関連する一つ以上の入力データ成分の成分識別子を含む、請求項15記載のデバイス。
  22. 各パターン要素はさらにパターン要素と関連する一つ以上の入力データ成分の数を指定するラン-レングスをさらに含む、請求項21記載のデバイス。
  23. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項22記載のデバイス。
  24. 一つ以上のレジスターをさらに具備し、プロセッサーは一つ以上のレジスターに記憶された追加情報を受取り、且つ入力データ成分のパターンを指定するためにパターン情報と共に追加情報を使用するように構成される、請求項15記載のデバイス。
  25. プロセッサーはディスプレイ・プロセッサーを具備する、請求項15記載のデバイス。
  26. デバイスは携帯無線通信デバイスを具備する、請求項15記載のデバイス。
  27. デバイスは一つ以上の集積回路デバイスを具備する、請求項15記載のデバイス。
  28. プログラム可能なプロセッサーに:
    複数の入力データ成分のパターンを指定するパターン情報を受取らせる(ここでパターン情報は一つ以上の入力データ成分に各々関連する複数のパターン要素を含み、そして各入力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される);そして
    選択された処理パイプラインへパターン情報に従って各入力データ成分を提供させる
    命令を含むコンピューター可読媒体。
  29. プロセッサーに:
    複数の処理パイプラインによって処理される複数の出力データ成分の第二のパターンを指定する追加パターン情報を受取らせる(ここで追加パターン情報は一つ以上の出力データ成分と各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る第二の成分グループから選択される);そして
    選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理させる
    命令を含む、請求項28記載のコンピューター可読媒体。
  30. プロセッサーに選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理させるための命令はプロセッサーに選択された処理パイプラインから出力デバイスへ各出力データ成分を追加パターン情報に従って提供させるための命令を含む、請求項29記載のコンピューター可読媒体。
  31. プロセッサーに追加のパターン情報によって指定された第二のパターンに基づいて出力データ成分をデータ成分の配列に圧縮させるための命令をさらに含み、そしてプロセッサーに選択された処理パイプラインから出力デバイスへの各出力データ成分を追加パターン情報に従って処理させるための命令はプロセッサーに配列におけるデータ成分を出力デバイスへ提供させるための命令を含む、請求項29記載のコンピューター可読媒体。
  32. プロセッサーに出力データ成分を出力デバイスに提供する前に処理パイプラインからの出力データ成分をバッファーに記憶させるための命令をさらに含む、請求項29記載のコンピューター可読媒体。
  33. プロセッサーにパターン情報によって指定されたパターンに基づいて一群の入力データ成分を解凍データ成分に解凍させるための命令をさらに含み、そしてプロセッサーに選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供させるための命令はプロセッサーに解凍データ成分を複数の処理パイプラインへ提供させるための命令を含む、請求項28記載のコンピューター可読媒体。
  34. 入力データ成分はピクセル・データ成分を含む、請求項28記載のコンピューター可読媒体。
  35. 入力データ成分は多チャネル・オーディオ・データ成分を含む、請求項28記載のコンピューター可読媒体。
  36. 各パターン要素は関連の一つ以上の入力データ成分の成分識別子を含む、請求項28記載のコンピューター可読媒体。
  37. 各パターン要素はさらにパターン要素と関連する一つ以上の入力データ成分の数を指定するランレングスを含む、請求項36記載のコンピューター可読媒体。
  38. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項37記載のコンピューター可読媒体。
  39. プロセッサーに入力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取らせるための命令をさらに含み、そしてプロセッサーに選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供させるための命令はプロセッサーに選択された処理パイプラインへ各入力データ成分をパターン情報及び追加情報に従って提供させるための命令を含む、請求項28記載のコンピューター可読媒体。
  40. プロセッサーに追加情報を受取らせるための命令はプロセッサーに一つ以上のレジスターから追加情報を受取らせるための命令を含む、請求項39記載のコンピューター可読媒体。
  41. 複数の入力データ成分のパターンを指定するパターン情報を受取るための手段(ここでパターン情報は一つ以上の入力データ成分に各々関連する複数のパターン要素を含み、そして各入力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される);及び
    選択された処理パイプラインへパターン情報に従って各入力データ成分を提供するための手段
    を具備するデバイス。
  42. 複数の処理パイプラインによって処理される複数の出力データ成分の第二のパターンを指定する追加パターン情報を受取るための手段(ここで追加パターン情報は一つ以上の出力データ成分と各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る第二の成分グループから選択される);及び
    選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理するための手段
    をさらに具備する、請求項41記載のデバイス。
  43. 選択された処理パイプラインからの各出力データ成分を追加パターン情報に従って処理するための手段は選択された処理パイプラインから出力デバイスへの各出力データ成分を追加パターン情報に従って処理するための手段を含む、請求項42記載のデバイス。
  44. 追加のパターン情報によって指定された第二のパターンに基づいて出力データ成分をデータ成分の配列に圧縮するための手段をさらに具備し、そして選択された処理パイプラインから出力デバイスへの各出力データ成分を追加パターン情報に従って処理するための手段は配列におけるデータ成分を出力デバイスへ提供するための手段を含む、請求項42記載のデバイス。
  45. 出力データ成分を出力デバイスに提供する前に処理パイプラインからの出力データ成分をバッファーに記憶させるための手段をさらに具備する、請求項42記載のデバイス。
  46. パターン情報によって指定されたパターンに基づいて一群の入力データ成分を解凍データ成分に解凍するための手段をさらに具備し、そして選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供するための手段は解凍データ成分を複数の処理パイプラインへ提供するための手段を含む、請求項41記載のデバイス。
  47. 入力データ成分はピクセル・データ成分を含む、請求項41記載のデバイス。
  48. 入力データ成分は多チャネル・オーディオ・データ成分を含む、請求項41記載のデバイス。
  49. 各パターン要素は関連する一つ以上の入力データ成分の成分識別子を含む、請求項41記載のデバイス。
  50. 各パターン要素はさらパターン要素と関連する一つ以上の入力データ成分の数を指定するラン-レングスを含む、請求項49記載のデバイス。
  51. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項50記載のデバイス。
  52. 入力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取るための手段をさらに含み、そして選択された処理パイプラインへ各入力データ成分をパターン情報に従って提供するための手段は選択された処理パイプラインへ各入力データ成分をパターン情報及び追加情報に従って提供するための手段を含む、請求項41記載のデバイス。
  53. 追加情報を受取るための手段は一つ以上のレジスターから追加情報を受取るための手段を含む、請求項41記載のデバイス。
  54. 複数の処理パイプラインによって処理される複数の出力データ成分のパターンを指定するパターン情報を受取ること(そこではパターン情報は一つ以上の出力データ成分に各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される);及び
    選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理すること
    を含む方法。
  55. 選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理することは選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供することを含む、請求項54記載の方法。
  56. パターン情報によって指定されたパターンに基づいて出力データ成分をデータ成分の配列に圧縮することをさらに含み、そして選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供することは配列におけるデータ成分を出力デバイスへ提供することを含む、請求項54記載の方法。
  57. 出力データ成分はピクセル・データ成分を含む、請求項54記載の方法。
  58. 出力データ成分は多チャネル・オーディオ・データ成分を含む、請求項54記載の方法。
  59. 各パターン要素は関連する一つ以上の出力データ成分の成分識別子を含む、請求項54記載の方法。
  60. 各パターン要素はさらにパターン要素と関連する一つ以上の出力データ成分の数を指定するラン-レングスを含む、請求項59記載の方法。
  61. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項60記載の方法。
  62. 処理パイプラインによって処理される出力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取ることをさらに含み、そして選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理することは選択された処理パイプラインからの各出力データ成分をパターン情報及び追加情報に従って処理することを含む、請求項54記載の方法。
  63. 複数の処理パイプラインを持つプログラム可能なプロセッサーを具備し、
    そのプロセッサーは処理パイプラインによって処理される複数の出力データ成分のパターンを指定するパターン情報、一つ以上の出力データ成分と各々関連する複数のパターン要素を含むパターン情報、及び静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分群から選択された各出力データ成分を受取るように構成される、そして
    そのプロセッサーはさらにそのプロセッサーの選択された処理パイプラインからの出力データ成分をパターン情報に従って処理するように構成される、
    デバイス。
  64. 出力デバイスをさらに具備し、プロセッサーは選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供するように構成される、請求項63記載のデバイス。
  65. パターン情報によって指定されたパターンに基づいて出力データ成分をデータ成分の配列に圧縮し、且つ配列におけるデータ成分を提供するように構成される、請求項64記載のデバイス。
  66. 出力データ成分はピクセル・データ成分を含む、請求項63記載のデバイス。
  67. 出力データ成分は多チャネル・オーディオ・データ成分を含む、請求項63記載のデバイス。
  68. 各パターン要素は関連する一つ以上出力データ成分の成分識別子を含む、請求項63記載のデバイス。
  69. 各パターン要素はさらにパターン要素と関連する一つ以上の出力データ成分の数を指定するラン-レングスを含む、請求項68記載のデバイス。
  70. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項69記載のデバイス。
  71. プロセッサーはさらに処理パイプラインによって処理される出力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取るように構成され、そしてそのプロセッサーは選択された処理パイプラインからの各出力データ成分をパターン情報及び追加情報に従って処理するように構成される、請求項63記載のデバイス。
  72. デバイスは携帯無線通信デバイスを含む、請求項63記載のデバイス。
  73. デバイスが一つ以上の集積回路デバイスを含む、請求項63記載のデバイス。
  74. プログラム可能なプロセッサーに:
    複数の処理パイプラインによって処理される複数の出力データ成分のパターンを指定するパターン情報を受取らせる(そこではパターン情報は一つ以上の出力データ成分に各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される);及び
    選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理させる
    命令を含むコンピューター可読媒体。
  75. プロセッサーに選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理させるための命令は選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供させるための命令を含む、請求項74記載のコンピューター可読媒体。
  76. プロセッサーにパターン情報によって指定されたパターンに基づいて出力データ成分をデータ成分の配列に圧縮させるための命令をさらに含み、そしてプロセッサーに選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供させるための命令はプロセッサーに配列におけるデータ成分を出力デバイスへ提供させるための命令を含む、請求項74記載のコンピューター可読媒体。
  77. 出力データ成分はピクセル・データ成分を含む、請求項74記載のコンピューター可読媒体。
  78. 出力データ成分は多チャネル・オーディオ・データ成分を含む、請求項74記載のコンピューター可読媒体。
  79. 各パターン要素は関連する一つ以上の出力データ成分の成分識別子を含む、請求項74記載のコンピューター可読媒体。
  80. 各パターン要素はさらにパターン要素と関連する一つ以上の出力データ成分の数を指定するラン-レングスを含む、請求項79記載のコンピューター可読媒体。
  81. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項80記載のコンピューター可読媒体。
  82. プロセッサーに処理パイプラインによって処理される出力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取らせるための命令をさらに含み、そしてプロセッサーに選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理させるための命令は選択された処理パイプラインからの各出力データ成分をパターン情報及び追加情報に従って処理させるための命令を含む、請求項74記載のコンピューター可読媒体。
  83. 複数の処理パイプラインによって処理される複数の出力データ成分のパターンを指定するパターン情報を受取るための手段(そこではパターン情報は一つ以上の出力データ成分に各々関連する複数のパターン要素を含み、そして各出力データ成分は静止画像データ成分、オーディオ・データ成分、及びビデオ・データ成分から成る成分グループから選択される);及び
    選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理するための手段
    を具備するデバイス。
  84. 選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理するための手段は選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供するための手段を含む、請求項83記載のデバイス。
  85. パターン情報によって指定されたパターンに基づいて出力データ成分をデータ成分の配列に圧縮するための手段をさらに具備し、そして選択された処理パイプラインから出力デバイスへ各出力データ成分をパターン情報に従って提供するための手段は配列におけるデータ成分を出力デバイスへ提供するための手段を含む、請求項83記載のデバイス。
  86. 出力データ成分はピクセル・データ成分を含む、請求項83記載のデバイス。
  87. 出力データ成分は多チャネル・オーディオ・データ成分を含む、請求項83記載のデバイス。
  88. 各パターン要素は関連する一つ以上の出力データ成分の成分識別子を含む、請求項83記載のデバイス。
  89. 各パターン要素はさらにパターン要素と関連する一つ以上の出力データ成分の数を指定するラン-レングスを含む、請求項88記載のデバイス。
  90. パターン情報によって指定されたパターンはタイル張りパターンを含み、パターン情報の各パターン要素はさらにパッチ高さ、パッチ幅、垂直走査順序、水平走査順序、ピクセル当たりのビット値、垂直副標本化値、及び水平副標本化値の少なくとも一つを含む、そして:
    パッチ高さはタイル張りパターンのブロック高さを指定する、
    パッチ幅はタイル張りパターンのブロック幅を指定する、
    垂直走査順序は垂直方向のタイル張りパターンのブロック走査順序を指定する、
    水平走査順序は水平方向のタイル張りパターンのブロック走査順序を指定する、
    ピクセル当たりのビット値はピクセル当たりのビットの数を指定する、
    垂直副標本化値は垂直方向のタイル張りパターンのブロック副標本化値を指定する、そして
    水平副標本化値は水平方向のタイル張りパターンのブロック副標本化値を指定する、
    請求項89記載のデバイス。
  91. 処理パイプラインによって処理される出力データ成分のパターンを指定するためにパターン情報と共に使用される追加情報を受取るための手段をさらに具備し、そして選択された処理パイプラインからの各出力データ成分をパターン情報に従って処理するための手段は選択された処理パイプラインからの各出力データ成分をパターン情報及び追加情報に従って処理するための手段を含む、請求項83記載のデバイス。
JP2009549280A 2007-02-09 2008-02-08 データ・チャネル情報のプログラム可能なパターンに基づく解凍及び圧縮 Expired - Fee Related JP5666137B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US88922907P 2007-02-09 2007-02-09
US60/889,229 2007-02-09
US88989607P 2007-02-14 2007-02-14
US60/889,896 2007-02-14
US12/027,823 US8565519B2 (en) 2007-02-09 2008-02-07 Programmable pattern-based unpacking and packing of data channel information
US12/027,823 2008-02-07
PCT/US2008/053511 WO2008098224A2 (en) 2007-02-09 2008-02-08 Programmable pattern-based unpacking and packing of data channel information

Publications (2)

Publication Number Publication Date
JP2010519796A true JP2010519796A (ja) 2010-06-03
JP5666137B2 JP5666137B2 (ja) 2015-02-12

Family

ID=39682455

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009549280A Expired - Fee Related JP5666137B2 (ja) 2007-02-09 2008-02-08 データ・チャネル情報のプログラム可能なパターンに基づく解凍及び圧縮

Country Status (8)

Country Link
US (1) US8565519B2 (ja)
EP (1) EP2119245B1 (ja)
JP (1) JP5666137B2 (ja)
KR (1) KR101121941B1 (ja)
CN (1) CN101606392B (ja)
CA (1) CA2675579C (ja)
TW (1) TW200841237A (ja)
WO (1) WO2008098224A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110659005A (zh) * 2018-06-29 2020-01-07 Arm有限公司 数据处理系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090015850A1 (en) * 2007-07-13 2009-01-15 Kenneth Edward Smith Rapid loading of interleaved RGB data into SSE registers
US8515052B2 (en) 2007-12-17 2013-08-20 Wai Wu Parallel signal processing system and method
US8194977B2 (en) * 2008-12-09 2012-06-05 Microsoft Corporation Remote desktop protocol compression acceleration using single instruction, multiple dispatch instructions
EP2480964A1 (en) * 2009-09-25 2012-08-01 OCE-Technologies B.V. Method of creating a printable raster image file
US20180150990A1 (en) * 2015-07-17 2018-05-31 Mitsubishi Electric Corporation Animation display apparatus and animation display method
CN109062502A (zh) * 2018-07-10 2018-12-21 郑州云海信息技术有限公司 一种数据压缩方法、装置、设备及计算机可读存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08235346A (ja) * 1995-03-01 1996-09-13 Fuji Xerox Co Ltd 画像処理装置
JPH10501107A (ja) * 1994-06-03 1998-01-27 イーデーテー インテルナツィオナール ディギタール テクノロギース ドイッチュラント ゲーエムベーハー ビデオ映像復号化装置及び方法
JPH118853A (ja) * 1998-06-19 1999-01-12 Mega Chips:Kk 画像圧縮伸張装置
JP2001306532A (ja) * 2000-04-19 2001-11-02 Internatl Business Mach Corp <Ibm> データ処理装置およびマルチプロセッサ装置
JP2002290970A (ja) * 2001-03-26 2002-10-04 Mitsubishi Electric Corp 動画像復号装置
US6693643B1 (en) * 2001-12-31 2004-02-17 Apple Computer, Inc. Method and apparatus for color space conversion
JP2005174298A (ja) * 2003-12-09 2005-06-30 Arm Ltd “ベクトル×スカラ”演算
JP2005259178A (ja) * 2000-04-19 2005-09-22 Canon Inc 画像処理装置及び画像処理方法
JP2006260477A (ja) * 2005-03-18 2006-09-28 Fuji Xerox Co Ltd パイプライン画像処理装置、画像処理方法及びプログラム

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452235A (en) * 1993-11-01 1995-09-19 Intel Corp. Planar/packed video data FIFO memory device
US5671440A (en) * 1994-08-08 1997-09-23 Eastman Kodak Company Color image data reorientation and format conversion system
US5805173A (en) * 1995-10-02 1998-09-08 Brooktree Corporation System and method for capturing and transferring selected portions of a video stream in a computer system
US5949410A (en) * 1996-10-18 1999-09-07 Samsung Electronics Company, Ltd. Apparatus and method for synchronizing audio and video frames in an MPEG presentation system
US6172990B1 (en) * 1997-06-19 2001-01-09 Xaqti Corporation Media access control micro-RISC stream processor and method for implementing the same
JP3809719B2 (ja) * 1998-01-05 2006-08-16 ソニー株式会社 ディジタルビデオ信号処理装置および方法、ディジタルビデオ信号再生装置、復号装置および方法、ならびに、再生装置および方法
GB2342013B (en) * 1998-09-23 2003-06-25 Sony Uk Ltd Multiplexing digital signals
TW444495B (en) 1998-10-15 2001-07-01 Winbond Electronics Corp Digital video process method and multi-purpose data process method
AUPQ289099A0 (en) * 1999-09-16 1999-10-07 Silverbrook Research Pty Ltd Method and apparatus for manipulating a bayer image
ES2172293T3 (es) * 1999-06-30 2002-09-16 Cit Alcatel Un metodo para generar celulas atm para aplicaciones de baja velocidad de bits.
US7194752B1 (en) * 1999-10-19 2007-03-20 Iceberg Industries, Llc Method and apparatus for automatically recognizing input audio and/or video streams
US6408376B1 (en) * 1999-10-25 2002-06-18 Intel Corporation Method and apparatus for instruction set architecture to perform primary and shadow digital signal processing sub-instructions simultaneously
TW452708B (en) 1999-11-24 2001-09-01 Winbond Electronics Corp Architecture for fast compression of 2-dimensional image data
US6708217B1 (en) * 2000-01-05 2004-03-16 International Business Machines Corporation Method and system for receiving and demultiplexing multi-modal document content
US6807620B1 (en) * 2000-02-11 2004-10-19 Sony Computer Entertainment Inc. Game system with graphics processor
JP2001231036A (ja) 2000-02-17 2001-08-24 Sony Corp データ・パケット処理方法
TW508940B (en) 2000-03-28 2002-11-01 Omnivision Tech Inc Method and apparatus for color image date processing and compression
JP3740379B2 (ja) 2000-04-19 2006-02-01 キヤノン株式会社 画像処理装置及び画像処理方法
US6883084B1 (en) * 2001-07-25 2005-04-19 University Of New Mexico Reconfigurable data path processor
US20030037085A1 (en) * 2001-08-20 2003-02-20 Sandbote Sam B. Field processing unit
US7362383B2 (en) * 2001-08-31 2008-04-22 Thomson Licensing System, method and apparatus for utilizing a single video input of an electronic audio/visual signal receiver as an input for multiple video signal formats
WO2004056082A2 (en) * 2002-11-27 2004-07-01 Rgb Media, Inc. Method and apparatus for time-multiplexed processing of multiple digital video programs
US7424597B2 (en) * 2003-03-31 2008-09-09 Hewlett-Packard Development Company, L.P. Variable reordering (Mux) instructions for parallel table lookups from registers
US7236998B2 (en) * 2003-09-25 2007-06-26 International Business Machines Corporation System and method for solving a large system of dense linear equations
US20050125363A1 (en) * 2003-10-16 2005-06-09 Wilson Charles E. System and method for authorizing transactions
WO2005101849A1 (ja) * 2004-04-09 2005-10-27 Nokia Corporation 圧縮画像データファイルの作成方法、画像データ圧縮装置及び撮影装置
EP1751938A1 (en) * 2004-06-04 2007-02-14 Qualcomm Incorporated High data rate interface apparatus and method
KR20050117826A (ko) * 2004-06-11 2005-12-15 삼성전자주식회사 디지털 오디오 방송에서 인터랙티브 정보를 포함하는슬라이드 쇼 제공방법, 처리장치 및 dab 수신장치
US20060083194A1 (en) * 2004-10-19 2006-04-20 Ardian Dhrimaj System and method rendering audio/image data on remote devices
JP2006277903A (ja) * 2005-03-30 2006-10-12 Hitachi Global Storage Technologies Netherlands Bv 符号化装置、及び復号装置
US20070011364A1 (en) * 2005-07-05 2007-01-11 Arm Limited Direct memory access controller supporting non-contiguous addressing and data reformatting
CN101218830B (zh) * 2005-07-22 2011-10-12 三菱电机株式会社 图像编码装置和方法、以及图像解码装置和方法
JP2007058541A (ja) * 2005-08-24 2007-03-08 Matsushita Electric Ind Co Ltd プロセッサ、処理方法及び処理プログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10501107A (ja) * 1994-06-03 1998-01-27 イーデーテー インテルナツィオナール ディギタール テクノロギース ドイッチュラント ゲーエムベーハー ビデオ映像復号化装置及び方法
JPH08235346A (ja) * 1995-03-01 1996-09-13 Fuji Xerox Co Ltd 画像処理装置
JPH118853A (ja) * 1998-06-19 1999-01-12 Mega Chips:Kk 画像圧縮伸張装置
JP2001306532A (ja) * 2000-04-19 2001-11-02 Internatl Business Mach Corp <Ibm> データ処理装置およびマルチプロセッサ装置
JP2005259178A (ja) * 2000-04-19 2005-09-22 Canon Inc 画像処理装置及び画像処理方法
JP2002290970A (ja) * 2001-03-26 2002-10-04 Mitsubishi Electric Corp 動画像復号装置
US6693643B1 (en) * 2001-12-31 2004-02-17 Apple Computer, Inc. Method and apparatus for color space conversion
JP2005174298A (ja) * 2003-12-09 2005-06-30 Arm Ltd “ベクトル×スカラ”演算
JP2006260477A (ja) * 2005-03-18 2006-09-28 Fuji Xerox Co Ltd パイプライン画像処理装置、画像処理方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110659005A (zh) * 2018-06-29 2020-01-07 Arm有限公司 数据处理系统
CN110659005B (zh) * 2018-06-29 2024-05-14 Arm有限公司 操作数据处理系统和方法、显示装置以及计算机可读介质

Also Published As

Publication number Publication date
WO2008098224A2 (en) 2008-08-14
TW200841237A (en) 2008-10-16
CN101606392A (zh) 2009-12-16
WO2008098224A3 (en) 2008-12-11
CA2675579C (en) 2011-09-20
EP2119245B1 (en) 2017-09-20
KR20090115137A (ko) 2009-11-04
US20080193050A1 (en) 2008-08-14
CN101606392B (zh) 2012-01-04
EP2119245A2 (en) 2009-11-18
JP5666137B2 (ja) 2015-02-12
KR101121941B1 (ko) 2012-03-13
US8565519B2 (en) 2013-10-22
CA2675579A1 (en) 2008-08-14

Similar Documents

Publication Publication Date Title
US8619085B2 (en) Method and system for compressing tile lists used for 3D rendering
US9058685B2 (en) Method and system for controlling a 3D processor using a control list in memory
JP2010519796A (ja) データ・チャネル情報のプログラム可能なパターンに基づく解凍及び圧縮
CN101123723A (zh) 基于图形处理器的数字视频解码方法
US5872965A (en) System and method for performing multiway branches using a visual instruction set
JP2006014341A (ja) Mcuバッファを用いて画像データを格納するための方法及び装置
US20110249744A1 (en) Method and System for Video Processing Utilizing N Scalar Cores and a Single Vector Core
US11805278B2 (en) Image compression
US6967659B1 (en) Circuitry and systems for performing two-dimensional motion compensation using a three-dimensional pipeline and methods of operating the same
CN1235483A (zh) 预测滤波器
KR101709822B1 (ko) 부호화된 텍셀 블록에서 동작할 수 있는 복호 시스템 및 방법
US20120218292A1 (en) System and method for multistage optimized jpeg output
KR100818034B1 (ko) 데이터 전송 방법, 회로 장치 및 데이터 전송 장치
US20080278606A9 (en) Image compositing
WO2009092020A1 (en) Multi-format support for surface creation in a graphics processing system
TW201010410A (en) Video processing
EP0928114A1 (en) Video data decoding apparatus
TW202215373A (zh) 圖像空間函數傳輸

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121221

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130104

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130304

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130311

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140212

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140408

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141210

R150 Certificate of patent or registration of utility model

Ref document number: 5666137

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees