JP2008530680A - 読み出し機能及びフェッチ機能を分けることによるデータ処理装置のメモリユニットの性能向上 - Google Patents
読み出し機能及びフェッチ機能を分けることによるデータ処理装置のメモリユニットの性能向上 Download PDFInfo
- Publication number
- JP2008530680A JP2008530680A JP2007554724A JP2007554724A JP2008530680A JP 2008530680 A JP2008530680 A JP 2008530680A JP 2007554724 A JP2007554724 A JP 2007554724A JP 2007554724 A JP2007554724 A JP 2007554724A JP 2008530680 A JP2008530680 A JP 2008530680A
- Authority
- JP
- Japan
- Prior art keywords
- data
- level cache
- memory
- unit
- search range
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 215
- 230000006870 function Effects 0.000 title abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 58
- 238000010586 diagram Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- WYTGDNHDOZPMIW-RCBQFDQVSA-N alstonine Natural products C1=CC2=C3C=CC=CC3=NC2=C2N1C[C@H]1[C@H](C)OC=C(C(=O)OC)[C@H]1C2 WYTGDNHDOZPMIW-RCBQFDQVSA-N 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0261—Improving the quality of display appearance in the context of movement of objects on the screen or movement of the observer relative to the screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/121—Frame memory handling using a cache memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Image Input (AREA)
Abstract
Description
− 前記主要配列を保存する主要メモリを有する主要メモリユニットと、
− 前記主要配列の2次元サブ配列を形成するデータブロックを順次に処理し、前記主要配列の予め設定された数のデータブロック列及びデータブロック行に広がるスライド検索範囲のデータ要素に関する読み出し要求を供給するよう構成される処理ユニットと、
− 前記主要メモリへ接続される高レベルキャッシュメモリを有する高レベルキャッシュユニットであって、
− 前記スライド検索範囲よりも大きい画像のスライド領域を形成するためのデータブロックを前記主要メモリからフェッチし、
− 前記高レベルキャッシュメモリから第1のプレフェッチ・バッファへ前記スライド検索範囲を更新するために必要とされる保存されたスライド領域のデータ要素をプレフェッチして、これらのデータ要素を前記第1のプレフェッチ・バッファの出力で供給するよう構成される高レベルキャッシュユニットと、
− 前記処理ユニットと前記第1のプレフェッチ・バッファとの間に直接的に接続される低レベルキャッシュメモリを有する低レベルキャッシュユニットであって、
− 前記第1のプレフェッチ・バッファの出力で供給される前記データ要素を用いて、前記高レベルキャッシュユニットの前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリにおいて前記スライド検索範囲を保存及び更新し、
− 前記高レベルキャッシュユニットの前記フェッチ及びプレフェッチ動作と同時に前記処理ユニットへ必要とされるデータ要素を選択及び出力するよう構成される低レベルキャッシュユニットと、
を有する。
“データブロック”→“画素ブロック”、
“データ行”→“画素行”、
“データ列”→“画素列”、
“データブロック列”→“画素ブロック列”、
“データブロック行”→“画素ブロック行”。
前記メモリユニットのフレームメモリは、様々なブロックサイズ、例えば、8×8又は16×16の画素で編成され得る。ブロック編成は、低レベルキャッシュの交換方法、即ち、いくつ、どの画素が、処理が続く場合に低レベルキャッシュにロードされる必要があるのかを制御する。
連続する画素ブロックの処理において、前記処理ユニットは、様々な映像処理アルゴリズムにおいて様々な方向及び順序に従い、従って、様々な可能な順序でメモリユニットに保存される映像フレームの画素にアクセスすることができる。走査方向は、上から下、下から上、左から右、又は右から左のいずれか1つである。走査順序は、画素ブロック行ごと若しくは画素ブロック列ごと又は蛇行式(meandering style)のいずれか1つである。
フレームメモリは、様々な色空間又は映像フォーマットで編成され得る。映像フォーマットは、色ごとに8ビット若しくは画素ごとに24ビットを必要とするRGB、又は様々な二段抽出YUVフォーマットのいずれか1つである。これらは、輝度及び色の違いに基づく既知の映像フォーマットである。
よく知られるように、フレーム内の対象間に滑らかな境界を発生させるデータは、画素グリッドよりも細かい精度を必要とする。必要とされるブロックの座標を基に、メモリユニットは、更なる画素とともに適切なブロックを検出して供給するべきである。これは、必要とされるサブピクセル精度を発生させるために、例えばバイリニア補間などの補間の実行を可能にする。
窓サイズは、前記メモリユニットから読み出される領域のサイズを決定するために前記処理ユニットによって使用されるパラメータである。
窓座標は、例えば、現在求められる読み出し窓の左上角を決定するような(X,Y)座標の形式で前記処理ユニットによって与えられる。
− 前記スライド検索範囲よりも大きい前記画像のスライド領域を前記主要メモリから高レベルキャッシュメモリへフェッチして、画素行又は画素列への分配に従って前記スライド領域を前記高レベルキャッシュメモリに保存するステップと、
− 所定の動作順序及び走査方向に従って前記スライド領域を更新するための画素ブロックを前記主要メモリから前記高レベルキャッシュメモリへフェッチして、画素行又は画素列への分配に従って前記高レベルキャッシュメモリに前記画素ブロックを保存するステップと、
− 後のスライド検索範囲の移動において前記検索範囲を更新するために必要とされる前記検索領域の画素を前記高レベルキャッシュメモリから第1のプレフェッチ・バッファへプレフェッチして、前記第1のプレフェッチ・バッファの出力で供給するステップと、
− 前記第1のプレフェッチ・バッファの出力で供給される前記画素を用いて、前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリにおいて前記スライド検索範囲を保存及び更新するステップと、
− 前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリから前記処理ユニットへ必要とされる画素を選択及び出力するステップと、
を有する方法が提供される。
扱われる映像フォーマットの柔軟性を提供しない実施形態で、L0スクラッチパッドの必要とされるメモリサイズは、一般的に、処理される映像フォーマットに依存する。以下の表2は、検索範囲サイズ及びメモリサイズに関して3つの映像フォーマット、即ち、CIF、SDTV、及びHDTVのサイズ要求を簡単に述べる。メモリサイズは、2つの場合、即ち、以下の表で「Y」と呼ばれる8ビットの輝度情報しか搬送しない画素の場合及び、表2でRGBと呼ばれる、全部で24ビットに達する3つの色に関する輝度情報を搬送するカラー画素の場合に関して特定される。
HDTVフォーマットの例に関して、L1スクラッチパッドのメモリサイズは、8×8の画素を含む2000の画素ブロックの全てが保存される必要があるという必要条件によって決定される。24ビットの画素サイズを考えると、L1スクラッチパッドは3Mbitのメモリサイズを有するべきである。
L0スクラッチパッド20の第1のプレフェッチ・バッファ20.1のサイズは、HDTV映像フォーマットの例に関して与えられる以下の指針に従って定められる。検索範囲の高さ、又は、言い換えると、1つの検索範囲列のサイズは、8×8画素を夫々有する9の画素ブロックである。従って、定常状態の間、9の画素ブロックの1つのこのような検索範囲列は、検索範囲を更新するために必要とされる。全ての画素は最大24ビットを有するので、プレフェッチ・バッファ20.1は、9×8×8×24=13824ビット=13.5kbitの大きさを有するべきである。
メモリ帯域幅に関して、通常、処理データ経路並列処理は、画素ブロックの画素行のサイズ、例えば、8×8画素ブロックの場合に8の画素に等しい。これは、一時的なアップコンバージョンや非インタレース走査などのための動作推定のようなブロックに基づく処理アプリケーションの場合に保持する。
Claims (26)
- データ要素の2次元主要配列を処理するデータ処理装置であって、
− 前記主要配列を保存する主要メモリを有する主要メモリユニットと、
− 前記主要配列の2次元サブ配列を形成するデータブロックを順次に処理し、前記主要配列の予め設定された数のデータブロック列及びデータブロック行に広がるスライド検索範囲のデータ要素に関する読み出し要求を供給するよう構成される処理ユニットと、
− 前記主要メモリへ接続される高レベルキャッシュメモリを有する高レベルキャッシュユニットであって、
− 前記スライド検索範囲よりも大きい画像のスライド領域を形成するためのデータブロックを前記主要メモリからフェッチし、
− 前記高レベルキャッシュメモリから第1のプレフェッチ・バッファへ前記スライド検索範囲を更新するために必要とされる保存されたスライド領域のデータ要素をプレフェッチして、これらのデータ要素を前記第1のプレフェッチ・バッファの出力で供給するよう構成される高レベルキャッシュユニットと、
− 前記処理ユニットと前記第1のプレフェッチ・バッファとの間に直接的に接続される低レベルキャッシュメモリを有する低レベルキャッシュユニットであって、
− 前記第1のプレフェッチ・バッファの出力で供給される前記データ要素を用いて、前記高レベルキャッシュユニットの前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリにおいて前記スライド検索範囲を保存及び更新し、
− 前記高レベルキャッシュユニットの前記フェッチ及びプレフェッチ動作と同時に前記処理ユニットへ必要とされるデータ要素を選択及び出力するよう構成される低レベルキャッシュユニットと、
を有するデータ処理装置。 - 前記高レベルキャッシュユニットは、
予め設定された数のビット部分を有し、前記主要配列のフォーマットによって使用されない全てのビット部分へ所定ビット値を割り当てる固定データフォーマットに従って、
その出力部で前記スライド領域のデータ要素を供給するよう構成される、請求項1記載のデータ処理装置。 - 前記第1のプレフェッチ・バッファは、並列な方法で前記低レベルキャッシュメモリへデータを供給するよう構成される、請求項1記載のデータ処理装置。
- 前記第1のプレフェッチ・バッファは、検索範囲の1つのデータブロック列又は1つのデータブロック行を置換するデータ要素を保存するよう構成される、請求項1記載のデータ処理装置。
- 前記低レベルキャッシュユニットは低レベルスクラッチパッドを有する、請求項1記載のデータ処理装置。
- 前記低レベルキャッシュユニットは、先入れ先出し交換方式に従って、前記低レベルスクラッチパッドに保存されるデータ要素を置換するよう構成される、請求項5記載のデータ処理装置。
- 前記低レベルキャッシュメモリは複数のメモリバンクを有し、
前記低レベルキャッシュメモリは、データブロックの連続するデータ行に属するデータ要素を異なるメモリバンクに保存し、並行して前記処理ユニットへ必要とされるデータブロックの複数のデータ行を出力するよう構成される、請求項1記載のデータ処理装置。 - 低レベルキャッシュユニットは、円循環方式で連続するメモリバンク内のアドレス指定可能な場所へ連続するアドレスを割り当てながら、交互的な方法で前記低レベルキャッシュメモリ内の場所をアドレス指定するよう構成される、請求項7記載のデータ処理装置。
- 低レベルキャッシュメモリは複数の行ユニットを有し、夫々の行ユニットは各自の第1のメモリバンク数を有し、夫々のメモリバンクは第2のデータ要素数を保存するアドレス指定可能な場所を有し、
前記低レベルキャッシュユニットは、データブロックの各自のデータ行の、又はデータブロックの各自の交互にされたデータ行の組に属するデータ行の、データ要素を保存するよう構成され、前記メモリバンクの各自のアドレス指定可能な場所は、夫々、連続するデータ要素群が、該群に属する前記各自のデータ行のデータ要素を保存する前記行ユニットの前記メモリバンクに亘って円循環方式で区別されるように、データ行に沿った前記第2の数の連続するデータ要素から成る各自のデータ要素群を保存するよう構成され、
前記低レベルキャッシュユニットは、前記スライド検索範囲の移動時に前記スライド検索範囲から落ちる陳腐化したデータ要素を前記メモリバンクにおいて、前記陳腐化したデータ要素と同じデータ行からの前記検索範囲における新しいデータ要素によって置換することによって前記スライド検索範囲を更新するよう構成され、更に、複数の行ユニットから各自のデータ行に関してデータ要素を並行して取り出して出力するよう構成される、請求項1記載のデータ処理装置。 - 前記高レベルキャッシュユニットは高レベルスクラッチパッドを有する、請求項1記載のデータ処理装置。
- 前記高レベルキャッシュメモリと前記主要メモリとの間に接続され、並列な方法で前記高レベルキャッシュメモリへデータを供給するよう構成される第2のプレフェッチ・バッファを更に有する、請求項1記載のデータ処理装置。
- 前記高レベルキャッシュユニットは、所定の走査順序及び走査方向に従って前記スライド領域を更新するために必要とされる前記主要配列の選択されたデータブロックを、前記主要メモリから前記第2のプレフェッチ・バッファへプレフェッチし、前記高レベルキャッシュメモリにおける前記スライド領域を前記第2のプレフェッチ・バッファの出力で供給されるデータ要素により更新するよう構成される、請求項11記載のデータ処理装置。
- 前記低レベルキャッシュユニットは、窓座標及び窓サイズパラメータを前記処理ユニットから受け取った前記読み出し要求から取り出し、該取り出された窓座標及び窓サイズパラメータに依存して前記処理ユニットへ前記低レベルキャッシュユニットに保存されるデータ要素を供給するよう構成される、請求項1記載のデータ処理装置。
- 当該装置は画像処理装置であって、
前記低レベルキャッシュユニットは、画素データがサブピクセル精度で前記処理ユニットによって処理されるかどうかを、読み出し要求から取り出された前記窓座標から検出し、前記処理ユニットへサブピクセル精度処理のために必要とされる全ての更なる画素を供給するよう構成される、請求項13記載のデータ処理装置。 - 各ブロック行における所定の走査方向は左から右又は右から左であり、あるいは、代替的に、各ブロック列における所定の走査方向は上から下又は下から上であり、
前記高レベルキャッシュユニットは、前記主要配列の新しいデータブロック行又はデータブロック列の始まりでデータブロックを処理するために、前記低レベルキャッシュメモリにおける完全な交換のための各自のスライド検索範囲の全てのデータ要素を、夫々、前記高レベルキャッシュメモリにおいて選択して、前記第1のプレフェッチ・バッファを介して供給するよう構成される、請求項1記載のデータ処理装置。 - 前記高レベルキャッシュユニットは、新しい主要配列の始まりでデータブロックを処理するために、前記低レベルキャッシュメモリにおける完全な交換のための各自のスライド検索範囲の全てのデータ要素を前記主要メモリからフェッチして、前記高レベルキャッシュメモリにおいて選択して、前記第1のプレフェッチ・バッファを介して供給するよう構成される、請求項1記載のデータ処理装置。
- メモリユニットの主要メモリに保存される主要配列の2次元サブ配列を形成するデータブロックを順次に処理して、前記主要配列の予め設定された数のデータブロック列及びデータブロック行に広がるスライド検索範囲のデータブロックに関して前記メモリユニットへ読み出し要求を供給する処理ユニットによりデータ処理装置の前記メモリユニットの動作を制御する方法であって、
− 前記スライド検索範囲よりも大きい前記主要配列のスライド領域を前記主要メモリから高レベルキャッシュメモリへフェッチして、前記スライド領域を前記高レベルキャッシュメモリに保存するステップと、
− 前記スライド領域を更新するためのデータブロックを前記主要メモリから前記高レベルキャッシュメモリへフェッチして、データ行又はデータ列への分配に従って前記高レベルキャッシュメモリに前記データブロックを保存するステップと、
− 後のスライド検索範囲の移動において前記検索範囲を更新するために必要とされる前記検索領域のデータ要素を前記高レベルキャッシュメモリから第1のプレフェッチ・バッファへプレフェッチして、前記第1のプレフェッチ・バッファの出力で供給するステップと、
− 前記第1のプレフェッチ・バッファの出力で供給される前記データ要素を用いて、前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリにおいて前記スライド検索範囲を保存及び更新するステップと、
− 前記フェッチ及びプレフェッチ動作と同時に前記低レベルキャッシュメモリから前記処理ユニットへ必要とされるデータ要素を選択及び出力するステップと、
を有する方法。 - 予め設定された数のビット部分を有し、前記主要配列のフォーマットによって使用されない全てのビット部分へ所定ビット値を割り当てる固定データフォーマットに従って、低レベルキャッシュメモリへ前記スライド領域のデータ要素を供給するステップを有する、請求項17記載の方法。
- データは、並列な方法で前記第1のプレフェッチ・バッファから前記低レベルキャッシュメモリへ供給される、請求項17記載の方法。
- 前記スライド検索範囲の全てのデータ要素は前記低レベルキャッシュメモリで供給され、
前記低レベルキャッシュメモリに保存される選択されたデータ要素は、先入れ先出し交換方式に従って新しいデータ要素により前記スライド検索範囲を更新するために置換される、請求項17記載の方法。 - 前記低レベルキャッシュメモリは複数のメモリバンクを有し、
データブロックの連続するデータ行に属するデータ要素は、異なるメモリバンクに保存され、
必要とされるデータブロックの複数のデータ行は、並行して前記低レベルキャッシュメモリから前記処理ユニットへ出力される、請求項17記載の方法。 - 前記低レベルキャッシュメモリ内の場所は、円循環方式で連続するメモリバンク内のアドレス指定可能な場所へ連続するアドレスを割り当てながら、交互的な方法でアドレス指定される、請求項21記載の方法。
- 所定の走査順序及び走査方向に従って前記スライド領域を更新するために必要とされる前記主要配列の選択されたデータブロックを、前記主要メモリから第2のプレフェッチ・バッファへプレフェッチし、前記高レベルキャッシュメモリにおける前記スライド領域を前記第2のプレフェッチ・バッファの出力で供給されるデータ要素により更新するステップを有する、請求項17記載の方法。
- 窓座標及び窓サイズパラメータを前記処理ユニットから受け取った前記読み出し要求から取り出し、該取り出された窓座標及び窓サイズパラメータに依存して前記処理ユニットへ前記低レベルキャッシュユニットに保存されるデータ要素を供給するステップを有する、請求項17記載の方法。
- 各ブロック行における所定の走査方向は左から右又は右から左であり、あるいは、代替的に、各ブロック列における所定の走査方向は上から下又は下から上である場合に、
前記主要配列の新しいデータブロック行又はデータブロック列の始まりでデータブロックを処理するために、前記低レベルキャッシュメモリにおける完全な交換のための各自のスライド検索範囲の全てのデータ要素を、夫々、前記高レベルキャッシュメモリにおいて選択して、前記第1のプレフェッチ・バッファを介して供給するステップを有する、請求項17記載の方法。 - 新しい主要配列の始まりでデータブロックを処理するために、前記低レベルキャッシュメモリにおける完全な交換のための各自のスライド検索範囲の全てのデータ要素を前記主要メモリからフェッチして、前記高レベルキャッシュメモリにおいて選択して、前記第1のプレフェッチ・バッファを介して供給するステップを有する、請求項17記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05101101 | 2005-02-15 | ||
EP05101101.3 | 2005-02-15 | ||
PCT/IB2006/050461 WO2006087665A2 (en) | 2005-02-15 | 2006-02-13 | Enhancing performance of a memory unit of a data processing device by separating reading and fetching functionalities |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008530680A true JP2008530680A (ja) | 2008-08-07 |
JP4861338B2 JP4861338B2 (ja) | 2012-01-25 |
Family
ID=36685766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007554724A Active JP4861338B2 (ja) | 2005-02-15 | 2006-02-13 | 読み出し機能及びフェッチ機能を分けることによるデータ処理装置のメモリユニットの性能向上 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7797493B2 (ja) |
EP (1) | EP1854011A2 (ja) |
JP (1) | JP4861338B2 (ja) |
CN (1) | CN100527099C (ja) |
WO (1) | WO2006087665A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016502211A (ja) * | 2012-12-27 | 2016-01-21 | インテル・コーポレーション | 画像メモリアクセスの最適化 |
KR101627456B1 (ko) * | 2015-03-16 | 2016-06-07 | 성균관대학교산학협력단 | 그래픽 사용자 인터페이스 품질 개선방법 및 그 방법을 수행하는 프로그램이 저장된 기록매체 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1854011A2 (en) | 2005-02-15 | 2007-11-14 | Koninklijke Philips Electronics N.V. | Enhancing performance of a memory unit of a data processing device by separating reading and fetching functionalities |
KR20090032261A (ko) * | 2007-09-27 | 2009-04-01 | 삼성전자주식회사 | 움직임 추정에 기초하여 움직임 보상을 수행하는 영상 처리장치 및 그 방법 |
US8406314B2 (en) * | 2007-11-28 | 2013-03-26 | Sharp Laboratories Of America, Inc. | Two-dimensional DPCM with PCM escape mode |
CN102542525B (zh) * | 2010-12-13 | 2014-02-12 | 联想(北京)有限公司 | 一种信息处理设备以及信息处理方法 |
KR20120066305A (ko) * | 2010-12-14 | 2012-06-22 | 한국전자통신연구원 | 비디오 움직임 예측 및 보상용 캐싱 장치 및 방법 |
JP2013061846A (ja) * | 2011-09-14 | 2013-04-04 | Sony Corp | 情報処理方法、情報処理システム、情報処理装置、及びプログラム |
JP5973707B2 (ja) * | 2011-10-14 | 2016-08-23 | オリンパス株式会社 | 三次元内視鏡装置 |
US9224186B2 (en) * | 2013-09-27 | 2015-12-29 | Apple Inc. | Memory latency tolerance in block processing pipelines |
US9367467B2 (en) * | 2014-08-22 | 2016-06-14 | Nvidia Corporation | System and method for managing cache replacements |
US9749548B2 (en) | 2015-01-22 | 2017-08-29 | Google Inc. | Virtual linebuffers for image signal processors |
US9978118B1 (en) | 2017-01-25 | 2018-05-22 | Microsoft Technology Licensing, Llc | No miss cache structure for real-time image transformations with data compression |
US10242654B2 (en) * | 2017-01-25 | 2019-03-26 | Microsoft Technology Licensing, Llc | No miss cache structure for real-time image transformations |
US10514753B2 (en) | 2017-03-27 | 2019-12-24 | Microsoft Technology Licensing, Llc | Selectively applying reprojection processing to multi-layer scenes for optimizing late stage reprojection power |
US10410349B2 (en) | 2017-03-27 | 2019-09-10 | Microsoft Technology Licensing, Llc | Selective application of reprojection processing on layer sub-regions for optimizing late stage reprojection power |
US10255891B2 (en) | 2017-04-12 | 2019-04-09 | Microsoft Technology Licensing, Llc | No miss cache structure for real-time image transformations with multiple LSR processing engines |
US10592663B2 (en) * | 2017-12-28 | 2020-03-17 | Intel Corporation | Technologies for USB controller state integrity protection |
US10884938B2 (en) * | 2018-12-13 | 2021-01-05 | International Business Machines Corporation | Method and apparatus for prefetching data items to a cache |
CN109710309B (zh) * | 2018-12-24 | 2021-01-26 | 安谋科技(中国)有限公司 | 减少存储体冲突的方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0291776A (ja) * | 1988-09-29 | 1990-03-30 | Toshiba Corp | 画像処理装置 |
DE69128741T2 (de) | 1990-05-18 | 1998-07-16 | Koninkl Philips Electronics Nv | Mehrstufiger Befehlscachespeicher und Verwendungsverfahren dafür |
JPH07219847A (ja) * | 1994-01-31 | 1995-08-18 | Fujitsu Ltd | 情報処理装置 |
JP3717212B2 (ja) * | 1995-10-27 | 2005-11-16 | 株式会社日立製作所 | 情報処理装置及び情報処理ユニット |
US6091768A (en) * | 1996-02-21 | 2000-07-18 | Bru; Bernard | Device for decoding signals of the MPEG2 type |
JPH09245179A (ja) * | 1996-03-08 | 1997-09-19 | Mitsubishi Electric Corp | コンピュータグラフィックス装置 |
US5912676A (en) * | 1996-06-14 | 1999-06-15 | Lsi Logic Corporation | MPEG decoder frame memory interface which is reconfigurable for different frame store architectures |
US6112293A (en) | 1997-11-17 | 2000-08-29 | Advanced Micro Devices, Inc. | Processor configured to generate lookahead results from operand collapse unit and for inhibiting receipt/execution of the first instruction based on the lookahead result |
US6130680A (en) * | 1997-12-01 | 2000-10-10 | Intel Corporation | Method and apparatus for multi-level demand caching of textures in a graphics display device |
EP0926600B1 (en) | 1997-12-24 | 2003-06-11 | Texas Instruments Inc. | Computer system with processor and memory hierarchy and its operating method |
GB2335126B (en) * | 1998-03-06 | 2002-05-29 | Advanced Risc Mach Ltd | Image data processing apparatus and a method |
US6437789B1 (en) * | 1999-02-19 | 2002-08-20 | Evans & Sutherland Computer Corporation | Multi-level cache controller |
US6466227B1 (en) * | 1999-09-01 | 2002-10-15 | Mitsubishi Electric Research Laboratories, Inc. | Programmable architecture for visualizing sampled and geometry data |
US6957305B2 (en) * | 2002-08-29 | 2005-10-18 | International Business Machines Corporation | Data streaming mechanism in a microprocessor |
US20050262276A1 (en) * | 2004-05-13 | 2005-11-24 | Ittiam Systamc (P) Ltd. | Design method for implementing high memory algorithm on low internal memory processor using a direct memory access (DMA) engine |
CN100403803C (zh) * | 2005-01-19 | 2008-07-16 | 威盛电子股份有限公司 | 具有快取的阶层式搜寻方法与系统 |
WO2006077365A1 (en) * | 2005-01-19 | 2006-07-27 | Biolipox Ab | Indoles useful in the treatment of inflammation |
EP1854011A2 (en) | 2005-02-15 | 2007-11-14 | Koninklijke Philips Electronics N.V. | Enhancing performance of a memory unit of a data processing device by separating reading and fetching functionalities |
-
2006
- 2006-02-13 EP EP06710888A patent/EP1854011A2/en not_active Withdrawn
- 2006-02-13 JP JP2007554724A patent/JP4861338B2/ja active Active
- 2006-02-13 US US11/815,981 patent/US7797493B2/en active Active
- 2006-02-13 CN CNB2006800049295A patent/CN100527099C/zh active Active
- 2006-02-13 WO PCT/IB2006/050461 patent/WO2006087665A2/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016502211A (ja) * | 2012-12-27 | 2016-01-21 | インテル・コーポレーション | 画像メモリアクセスの最適化 |
KR101627456B1 (ko) * | 2015-03-16 | 2016-06-07 | 성균관대학교산학협력단 | 그래픽 사용자 인터페이스 품질 개선방법 및 그 방법을 수행하는 프로그램이 저장된 기록매체 |
Also Published As
Publication number | Publication date |
---|---|
EP1854011A2 (en) | 2007-11-14 |
JP4861338B2 (ja) | 2012-01-25 |
US20080147980A1 (en) | 2008-06-19 |
US7797493B2 (en) | 2010-09-14 |
WO2006087665A3 (en) | 2007-01-18 |
CN100527099C (zh) | 2009-08-12 |
CN101120325A (zh) | 2008-02-06 |
WO2006087665A2 (en) | 2006-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4861338B2 (ja) | 読み出し機能及びフェッチ機能を分けることによるデータ処理装置のメモリユニットの性能向上 | |
US20100088475A1 (en) | Data processing with a plurality of memory banks | |
JP4744510B2 (ja) | データ値の多次元アレイへのパラレルなアクセスを提供するデータ処理装置 | |
US5287487A (en) | Predictive caching method and apparatus for generating a predicted address for a frame buffer | |
KR101386767B1 (ko) | 소스 이미지의 뒤틀린 버전을 표시하는 장치 및 방법 | |
US7835441B2 (en) | Supporting motion vectors outside picture boundaries in motion estimation process | |
CN101147396B (zh) | 使用循环缓存存储器以曲折扫描顺序处理数据阵列的方法和设备 | |
US7580042B2 (en) | Systems and methods for storing and fetching texture data using bank interleaving | |
US6662288B1 (en) | Address generating apparatus and motion vector detector | |
US6741256B2 (en) | Predictive optimizer for DRAM memory | |
US20060250408A1 (en) | Texture cache control using an adaptive missing data table in a multiple cache computer graphics environment | |
EP1721298A2 (en) | Embedded system with 3d graphics core and local pixel buffer | |
US20030122837A1 (en) | Dual memory channel interleaving for graphics and MPEG | |
US6778179B2 (en) | External dirty tag bits for 3D-RAM SRAM | |
US20030231176A1 (en) | Memory access device, semiconductor device, memory access method, computer program and recording medium | |
KR100917749B1 (ko) | 입력 픽셀 스트림 제공 방법 및 회로 | |
KR100637614B1 (ko) | 움직이는 2차원 윈도우로 액세스하는 캐시 | |
EP1575298A1 (en) | Data storage apparatus, data storage control apparatus, data storage control method, and data storage control program | |
US20150278132A1 (en) | System and method for memory access | |
AU748471B2 (en) | Data resampler for data processing system | |
US20050052459A1 (en) | Method and system for rendering macropixels in a graphical image | |
US6903744B2 (en) | Graphics processing system | |
JP2009003632A (ja) | 画像処理システム | |
KR20010032263A (ko) | 데이터처리시스템용 데이터리샘플러 | |
Ng | Dynamic memory mapping for window based display system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110922 |
|
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: 20111011 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111104 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4861338 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141111 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |