JP2008502975A - データ処理装置 - Google Patents

データ処理装置 Download PDF

Info

Publication number
JP2008502975A
JP2008502975A JP2007516101A JP2007516101A JP2008502975A JP 2008502975 A JP2008502975 A JP 2008502975A JP 2007516101 A JP2007516101 A JP 2007516101A JP 2007516101 A JP2007516101 A JP 2007516101A JP 2008502975 A JP2008502975 A JP 2008502975A
Authority
JP
Japan
Prior art keywords
data
bit
bits
result value
data bits
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
JP2007516101A
Other languages
English (en)
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
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 Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2008502975A publication Critical patent/JP2008502975A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/30018Bit or string instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/762Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data having at least two separately controlled rearrangement levels, e.g. multistage interconnection networks
    • 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/30029Logical and Boolean instructions, e.g. XOR, NOT
    • 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/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • G06F5/015Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/16Multiplexed systems, i.e. using two or more similar devices which are alternately accessed for enqueue and dequeue operations, e.g. ping-pong buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/768Data position reversal, e.g. bit reversal, byte swapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • H04B1/667Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission using a division in frequency subbands
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • 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/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Executing Machine-Instructions (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

4バイト1a〜1dを含む32ビットなどの値からデータを抽出するため、ビットプレーン抽出処理を有するプログラマブルデータ処理装置が記載される。各バイト1a〜1dは、8ビット(それぞれa〜a、b〜b、c〜c及びd〜d)を有する。ビットプレーン抽出処理は、引数により示される第2ビット(a,b,c,d)などの上記バイトのそれぞれから1つのビットを選択的に抽出する。当該処理は、ビット(a,b,c,d)を連結し、結果値5を返すことを伴う。データ処理の適用に応じて、この結果値は結果値7を提供するためビット反転されるかもしれない(例えば、ビット反転がエンディアンスを処理するため、又は他の理由のため必要とされる場合)。ビットプレーン抽出処理は、映像データの処理における「SAD」などのデータ処理演算における前処理演算として利用可能である。

Description

本発明は、プログラマブルデータ処理装置に関し、より詳細には、映像データなどのデータを処理するためのビットプレーン抽出処理を有するプログラマブルデータ処理装置に関する。
映像領域において、画素は典型的には1以上のデータバイトにより表される。例えば、MPEG映像符号化に使用されるデフォルトフォーマットでは、画素は、それのルミナンスコンポーネントを1バイトとしてセーブすることにより格納される。当該画素のクロミナンス部分は、2バイトとして格納されるが、これらの値は、同時に複数の画素に共有される。ルミナンス部分が考えられる場合、例えば、当該バイトは、8ビットから構成され、「ビットプレーン」と呼ばれる。
MPEG映像符号化の主要な部分は、ビットプレーンベースにより実行される際に大変効率的に計算可能な動き推定から構成される。ビットプレーンベースにより実行されるとき、「SAD(Sum−of−Absolute−Differences)」演算は、排他的論理和演算しか伴わず、その後に結果となる値のビットがカウントされる。これはしばしば、DSPプロセッサにおける単一の命令としてサポートされる。前処理ステップ中に、映像ストリームからビットプレーンが抽出される必要がある。このような前処理ステップは、例えば、4つのパックドバイト(packed byte)を含む32ビットの値の各バイトから特定のビットを抽出することを伴うかもしれない。ビットプレーン抽出を実行するため、ソフトウェアにおける処理は、4ビットの結果値rを取得するため、以下の処理(擬似的なCにより示される)を伴う。
結果r=bpext(x,y)
ただし、
x=4つのパックドバイトを含む32ビット値
y=抽出対象となるビットを参照する0〜7の整数
ビットプレーン抽出処理は、以下の処理を有するかもしれない。
Figure 2008502975
ここで、上に示されるビットプレーン抽出処理が図1を参照してより詳細に説明される。まず、ステップ101において、抽出対象となるビットがすべて同じ位置となるように、値xがyポジションだけシフトされる(すなわち、“y”は抽出対象となるビットを表す数値である)。その後、ステップ103において、AND演算を利用して、1ビットが抽出される(例えば、第1ビットについて、t0&0x00000001など)。第nビットが抽出されるまで(本例では、“n”は4である)、その他のバイトから関連するビットを抽出するため、当該処理がステップ105から107まで繰り返される。ステップ109において、抽出されたビットは、ターゲットビット位置(終了結果のビットの最終的なポジションに対応する)にシフトされ、ステップ111において論理和がとられる。
画素データは、「ビッグエンディアン(big endian)」形式又は「リトルエンディアン(little endian)」形式により構成されてもよい。ビッグエンディアン形式では、バイトは最上位優先により構成され、リトルエンディアン形式では、バイトは最下位バイト優先により構成され、従って、画素データのエンディアンに応じて、又は他の理由のため、結果ビットを反転することが望ましいかもしれない。
ビット反転方法の一例が以下に示される。
Figure 2008502975
上に示された命令コードは、各ビットを選択肢、それらを各自の反転位置にシフトするものであり、これにより、ビット0はビット3となり((r&1)<<3)、ビット1はビット2となる((r&2)<<1)などされ、これらのビットが再び論理和演算される。
上記例は、パックドデータから1つのビットのみを選択する方法を示していることに留意されたい。しかしながら、例えば、バイト又はデータ要素毎に2ビットを選択し、これらのビットを8ビットの結果値に連結するなど、複数のビットが抽出可能である。
プログラマブルデータプロセッサ上で上述したビットプレーン抽出処理を実行するため、ビットプレーン抽出処理は複数の(非専用的な)処理の実行を伴うことが理解されるであろう。これは、パフォーマンスと電力消費の2つの点に関する不都合を有する。
従って、本発明の課題は、上述した不都合を有しないビットプレーン抽出処理を有するプログラマブルデータ処理装置を提供することである。
本発明の第1の特徴によると、各データ要素が複数のデータビットを有する複数のデータ要素を有するパックドデータビットに対してビットプレーン抽出処理を実行するタスクを含むデータ処理のためのプログラマブルデータ処理装置であって、
前記データ要素のそれぞれからデータビットを選択的に抽出する抽出手段と、
結果値を提供するため、前記抽出されたデータビットを連結する連結手段と、
を有し、
前記結果値は、当該プログラマブルデータ処理装置によりさらに処理される、
ことを特徴とする装置が提供される。
本発明の他の特徴によると、各データ要素が複数のデータビットを有する複数のデータ要素を有するパックドデータビットに対してプログラマブルデータ処理装置においてビットプレーン抽出処理を実行する方法であって、各データ要素からデータビットを選択的に抽出する専用のハードウェア手段を設けるステップと、前記プログラマブルデータ処理装置によるさらなる処理のため、結果値を提供するよう前記抽出されたデータビットを連結するステップとを有することを特徴とする方法が提供される。
本発明によると、ビットプレーン抽出処理を実行するため、専用のハードウェアが設けられる。
図2aを参照するに、4つのバイト又はデータ要素1a〜1dなどを含む32パックドデータビットの値を考える。各バイト1a〜1dは、8ビット(それぞれa〜a、b〜b、c〜c及びd〜d)を有する。ビットプレーン抽出処理は、引数により示される第2ビット(a,b,c,d)などの上記バイトのそれぞれから1つのビットを選択的に抽出する。当該処理は、ビット(a,b,c,d)を連結し、4ビット結果値5(rと呼ばれる第1ビット、第2ビットrなどを有する)を返すことを伴う。処理されるデータがビット反転を必要としない場合、結果値5は、r=a、r=b、r=c、r=dとなる。
図2bは、結果がビット反転される必要がある場合、これにより抽出されるデータビットが結果値7において反転され、r=d、r=c、r=b、r=aとなる同様のビットプレーン抽出装置を示す。すなわち、図2aに示される実施例では、ビットプレーン抽出処理は、結果値5にビット反転を提供せず、図2bでは、ビットプレーン抽出処理は、結果値7にビット反転を提供する。
上に示されるように、ビット反転されない結果値(すなわち、図2aに示されるような)、又はビット反転される結果値(図2bに示されるような)を提供するようハードウェアを構成することが可能である。上述のように、結果のビット反転は、いくつかの理由のため実行することが可能であり、そのうちの1つはエンディアンを扱うためであるかもしれない。
あるいは、結果を通常又はビット反転形式により選択的に提供するようハードウェアを構成することが可能である。例えば、ビット反転はパラメータとして設定可能であり、これにより、装置はその適用において以降に説明されるように、結果5又はビット反転された結果7を返すことが可能である。パラメータは、結果のビット反転が特定の適用について要求されているか否かに応じて、ソフトウェアにより制御されてもよいし、あるいは、ハードウェアにおいて予め構成されてもよい。
図3は、ビットプレーン抽出処理が低コストによりハードウェアによりどのように実現可能であるかより詳細に示す。例えば、この処理は、単なる3レベルの深さの乗算器により完全に実現可能である。
図3において、参照を容易にするため、図2a及び2bに示されるバイトの1つ(1a)からビットを抽出する乗算器構成が示される。その他のバイトのそれぞれについて、同様の構成が提供される。乗算器の第1レベル31は8ビットを4ビットに減らし(すなわち、nからn/2)、乗算器の第2レベル33はこれら4ビットを2ビットに減らし、第3レベルの乗算器35がこれら2ビットを1ビットに減らす。このようにして、ビットa〜aから何れかのビットaが抽出可能である。同様にして、バイト1bからビットbを、バイト1cからビットcを、バイト1dからビットdを抽出するのに乗算器を使用することが可能である。
図4は、両方の選択肢を処理するためにハードウェアを設けることによって、結果のビット反転を処理する方法を示す。図4において、抽出されたビットa、b、c及びdが、乗算器41a〜41dのセットにわたされる。この結果値は、ビット反転の要否に応じて、制御信号“c”により制御可能である。
図5において、乗算器41aの1つがより詳細に示される。制御信号“c”がハイに設定されると、抽出されたビットa、b、c及びdは、r=d、r=c、r=b及びr=aとなるように反転され、これにより、結果値7が構成される。このようにして、例えば、エンディアンについて訂正するためなど、所望されるときにビット反転を提供するため、さらなるハードウェア及びパラメータ“c”を利用することが可能である。
上述されるように、パラメータ“c”は、特定のデータ処理の適用に応じて、ソフトウェアにより制御可能であり(従って、ビット反転が動的に制御可能である)、あるいはハードウェアにより設定することも可能である。
上述した本発明が従来技術より効率的なビットプレーン抽出処理及び装置を提供することは理解されるであろう。パフォーマンスの向上に加えて、ビットプレーン抽出方法及び装置はまた、従来技術により実行される処理より少ない電力しか消費しない。
実際的には、複数の結果が単一の32ビット値に合成される。例えば、1つの結果が4ビットに対応する場合、8つの結果が32ビットに合成可能である。このとき、このような値の2つの間のSADは、2つの32ビット値の排他的論理和をとり、結果の“1”のビットをカウントすることにより計算することが可能である。従来技術によると、結果の合成は前の結果のシフトと、現在の結果をこの値に論理和することを伴うであろう。
ソフトウェアを利用して、これは以下の処理を伴う。
Figure 2008502975
ただし、
x:4つのパックドバイトを含む32ビット値
y:抽出対象となるビットを参照する0〜7の整数
z:前の結果を含む32ビット値
しかしながら、本発明の他の特徴によると、図6は、当該処理が上述したソフトウェアを利用するのではなく、1つの処理を利用してハードウェアにより実行されることを可能にする構成を示す。
上述した本発明は、SAD演算の前処理ステップにおいて利用可能なビットプレーン抽出手段を有するプログラマブルデータ処理装置を提供する。しかしながら、本発明は、この利用に限定されるものでないということが留意され、ビットプレーン抽出処理が、1以上のビットが複数バイトから抽出される必要がある他のデータ処理演算に利用可能であるということは理解されるであろう。さらに、このデータビットは、例えば、画像データがコンポーネント毎に12ビットにより表される場合、必ずしも異なるバイトから抽出される必要はない。
本発明が4ビットを抽出することに関して説明されたが、64ビットなどより広いデータパスによるプロセッサについて、当該命令が一度に8ビットを抽出するよう拡張可能であるということに留意されたい。
また、好適な実施例はいくつかの乗算器の使用を示しているが、同一の機能を提供する他の論理回路もまた利用可能であるということは理解されるであろう。
また、上述の実施例は本発明を限定するものでなく、説明するためのものであり、当業者は添付した請求項により規定されるような本発明の範囲から逸脱することなく、他の多数の実施例を構成可能であるということに留意すべきである。請求項において、括弧内に置かれる参照記号は、請求項を限定するものとして解釈されるべきでない。「有する」などの用語は、請求項又は明細書全体に列挙された以外の要素又はステップの存在を排除するものでない。要素の単数形による表現は、そのような要素の複数形による表現を排除するものでなく、その反対も同様である。本発明は、複数の要素を有するハードウェアを利用して、また適切にプログラムされたコンピュータを利用して実現可能である。複数の手段を列挙した請求項では、これらの手段のいくつかは1つの同一のハードウェアアイテムにより実現されるかもしれない。ある手段が互いに異なる従属クレームに記載されているという事実は、これらの手段の組み合わせが効果的に利用可能でないことを示すものではない。
図1は、従来技術によるビットプレーン抽出処理を示す。 図2a及び2bは、本発明によるそれぞれ結果をビット反転する、又はしないビットプレーン抽出処理を示す。 図3は、図1のビットプレーン抽出処理が乗算器を利用してハードウェアによりどのように実現できるかの一例を示す。 図4は、結果をビット反転する本発明のさらなる特徴を示す。 図5は、図4の乗算器のさらなる詳細を示す。 図6は、本発明のさらなる特徴を示す。

Claims (11)

  1. 各データ要素が複数のデータビットを有する複数のデータ要素を有するパックドデータビットに対してビットプレーン抽出処理を実行するタスクを含むデータ処理のためのプログラマブルデータ処理装置であって、
    前記データ要素のそれぞれからデータビットを選択的に抽出する抽出手段と、
    結果値を提供するため、前記抽出されたデータビットを連結する連結手段と、
    を有し、
    前記結果値は、当該プログラマブルデータ処理装置によりさらに処理される、
    ことを特徴とする装置。
  2. 請求項1記載の装置であって、
    前記各データ要素からデータビットを選択的に抽出する抽出手段は、前記データ要素のそれぞれからあるデータビットを選択するよう構成される複数の乗算器を有することを特徴とする装置。
  3. 請求項2記載の装置であって、
    前記乗算器は、各レベルが所望のビットが選択されるまで各データ要素のビット数をnからn/2に選択的に低減する複数のレベルにより構成されることを特徴とする装置。
  4. 請求項1記載の装置であって、
    前記抽出手段は、前記データ要素のそれぞれから複数のデータビットを選択するよう構成されることを特徴とする装置。
  5. 請求項1乃至4何れか一項記載の装置であって、
    各データ要素は、データバイトを有し、
    当該装置は、前記複数のデータバイトのそれぞれから所定のデータビットを抽出するよう構成される、
    ことを特徴とする装置。
  6. 請求項1記載の装置であって、さらに、
    当該プログラマブルデータ処理装置による以降の処理前に、前記結果値のデータビットの順序を反転するビット反転手段を有することを特徴とする装置。
  7. 請求項6記載の装置であって、
    前記ビット順序を反転するビット反転手段は、第1動作モードにおいて、前記結果値を構成する連結されたデータビットが、前記結果値の順序を変更することなく前記乗算器を通過し、第2動作モードにおいて、前記乗算器の通過中に、前記連結されたデータビットの順序が反転されるように構成される乗算器系列を有することを特徴とする装置。
  8. 請求項7記載の装置であって、
    前記動作モードは、パラメータによって制御され、これにより、前記ビット反転手段が、あるデータ処理の適用に応じて動的に制御されることが可能となることを特徴とする装置。
  9. 請求項1記載の装置であって、さらに、
    前記結果値を前の結果値と合成する手段を有することを特徴とする装置。
  10. 各データ要素が複数のデータビットを有する複数のデータ要素を有するパックドデータビットに対してプログラマブルデータ処理装置においてビットプレーン抽出処理を実行する方法であって、
    各データ要素からデータビットを選択的に抽出する専用のハードウェア手段を設けるステップと、
    前記プログラマブルデータ処理装置によるさらなる処理のため、結果値を提供するよう前記抽出されたデータビットを連結するステップと、
    を有することを特徴とする方法。
  11. 請求項10記載の方法であって、さらに、
    前記連結されたデータビットの順序を選択的に反転するステップを有することを特徴とする方法。
JP2007516101A 2004-06-16 2005-06-08 データ処理装置 Pending JP2008502975A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04102749A EP1607858A1 (en) 2004-06-16 2004-06-16 Bit-plane extraction operation
PCT/IB2005/051883 WO2005124534A2 (en) 2004-06-16 2005-06-08 Bit-plane extraction operation

Publications (1)

Publication Number Publication Date
JP2008502975A true JP2008502975A (ja) 2008-01-31

Family

ID=34929207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007516101A Pending JP2008502975A (ja) 2004-06-16 2005-06-08 データ処理装置

Country Status (6)

Country Link
US (1) US9239702B2 (ja)
EP (2) EP1607858A1 (ja)
JP (1) JP2008502975A (ja)
CN (1) CN1969255A (ja)
AT (1) ATE554442T1 (ja)
WO (1) WO2005124534A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016035240A1 (ja) * 2014-09-02 2016-03-10 パナソニックIpマネジメント株式会社 プロセッサ及びデータ並び替え方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57207942A (en) * 1981-06-18 1982-12-20 Toshiba Corp Unpacking circuit
JPS60159935A (ja) * 1984-01-31 1985-08-21 Toshiba Corp 10進デ−タ形式変換回路
JPS6352236A (ja) * 1986-08-21 1988-03-05 Nec Eng Ltd デ−タ変換処理方式
JPS63298623A (ja) * 1987-05-29 1988-12-06 Fujitsu Ltd バレルシフタ
JPH0199123A (ja) * 1987-10-13 1989-04-18 Nec Corp ビットシフト回路
JPH01132135A (ja) * 1987-07-03 1989-05-24 Fujitsu Ltd バレルシフタ
JPH05334042A (ja) * 1992-05-28 1993-12-17 Matsushita Electric Ind Co Ltd バレルシフタ回路
US6317824B1 (en) * 1998-03-27 2001-11-13 Intel Corporation Method and apparatus for performing integer operations in response to a result of a floating point operation

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479166A (en) * 1993-11-30 1995-12-26 Texas Instruments Incorporated Huffman decoding method, circuit and system employing conditional subtraction for conversion of negative numbers
EP0992882A3 (en) * 1998-10-06 2003-03-05 Texas Instruments Inc. Bit field processor
KR100353851B1 (ko) * 2000-07-07 2002-09-28 한국전자통신연구원 파문 스캔 장치 및 그 방법과 그를 이용한 영상코딩/디코딩 장치 및 그 방법
JP2003032496A (ja) * 2001-07-12 2003-01-31 Sanyo Electric Co Ltd 画像符号化装置および方法
US20030156637A1 (en) * 2002-02-15 2003-08-21 Koninklijke Philips Electronics N.V. Memory-bandwidth efficient FGS encoder
FR2842670B1 (fr) * 2002-07-22 2006-03-03 Inst Nat Rech Inf Automat Perfectionnement a la compression de donnees numeriques
JP4169267B2 (ja) * 2003-06-05 2008-10-22 株式会社リコー 画像改ざん検知装置およびその保存データの復元方法
JP4702928B2 (ja) * 2004-03-12 2011-06-15 キヤノン株式会社 動画像符号化装置及び復号装置及びその制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
KR101303375B1 (ko) * 2004-05-13 2013-09-03 코닌클리케 필립스 일렉트로닉스 엔.브이. 값들의 블록들을 인코딩하는 방법 및 디바이스
JP4491777B2 (ja) * 2004-06-04 2010-06-30 富士ゼロックス株式会社 画像表示装置、画像表示方法及びそのプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57207942A (en) * 1981-06-18 1982-12-20 Toshiba Corp Unpacking circuit
JPS60159935A (ja) * 1984-01-31 1985-08-21 Toshiba Corp 10進デ−タ形式変換回路
JPS6352236A (ja) * 1986-08-21 1988-03-05 Nec Eng Ltd デ−タ変換処理方式
JPS63298623A (ja) * 1987-05-29 1988-12-06 Fujitsu Ltd バレルシフタ
JPH01132135A (ja) * 1987-07-03 1989-05-24 Fujitsu Ltd バレルシフタ
JPH0199123A (ja) * 1987-10-13 1989-04-18 Nec Corp ビットシフト回路
JPH05334042A (ja) * 1992-05-28 1993-12-17 Matsushita Electric Ind Co Ltd バレルシフタ回路
US6317824B1 (en) * 1998-03-27 2001-11-13 Intel Corporation Method and apparatus for performing integer operations in response to a result of a floating point operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016035240A1 (ja) * 2014-09-02 2016-03-10 パナソニックIpマネジメント株式会社 プロセッサ及びデータ並び替え方法

Also Published As

Publication number Publication date
EP1761845B1 (en) 2012-04-18
EP1761845A2 (en) 2007-03-14
US9239702B2 (en) 2016-01-19
CN1969255A (zh) 2007-05-23
EP1607858A1 (en) 2005-12-21
WO2005124534A3 (en) 2006-03-16
WO2005124534A2 (en) 2005-12-29
ATE554442T1 (de) 2012-05-15
US20080253442A1 (en) 2008-10-16

Similar Documents

Publication Publication Date Title
US10395381B2 (en) Method to compute sliding window block sum using instruction based selective horizontal addition in vector processor
Peleg et al. Intel MMX for multimedia PCs
KR101834174B1 (ko) 데이터 처리장치 및 방법
JP2000506646A (ja) ブレンド論理を使用して色空間変換を行う方法および装置
US7350058B2 (en) Shift and insert instruction for overwriting a subset of data within a register with a shifted result of another register
US20040193848A1 (en) Computer implemented data parsing for DSP
US5896307A (en) Method for handling an underflow condition in a processor
KR20100108509A (ko) 레지스터 명령 필드를 인코딩하는 방법
US5905661A (en) Method for handling an overflow condition in a processor
JP2013512482A (ja) エンコード済みのテクスチャ要素ブロックについて使用することができるデコーディングシステムおよび方法
US7787021B2 (en) Programmable architecture for flexible camera image pipe processing
JP2008502975A (ja) データ処理装置
WO2019023910A1 (zh) 数据处理方法和设备
US20020136312A1 (en) Data processing apparatus and method for performing an adaptive filter operation on an input data sample
KR101149883B1 (ko) 데이터 처리 장치
JP2002519957A (ja) 符号関数を処理する方法および装置
JP2008071170A (ja) 浮動小数点演算装置とこの装置を用いたレーダ信号処理装置
JP4901891B2 (ja) 画像処理プロセッサ
JP2010079841A (ja) マイクロコンピュータ及びその命令実行方法
US8395630B2 (en) Format conversion apparatus from band interleave format to band separate format
WO2021035715A1 (zh) 数据处理方法和装置
JP3844465B2 (ja) イベント・ベクトル・テーブルのオーバーライド
US20020191845A1 (en) Method and apparatus for improving decompression and color space conversion speed
JP2004165766A (ja) 画像処理方法
JP2003264690A (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091102

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100323