JP2014142938A - ピクセルキャッシュ及びピクセルキャッシュの動作方法 - Google Patents

ピクセルキャッシュ及びピクセルキャッシュの動作方法 Download PDF

Info

Publication number
JP2014142938A
JP2014142938A JP2014010581A JP2014010581A JP2014142938A JP 2014142938 A JP2014142938 A JP 2014142938A JP 2014010581 A JP2014010581 A JP 2014010581A JP 2014010581 A JP2014010581 A JP 2014010581A JP 2014142938 A JP2014142938 A JP 2014142938A
Authority
JP
Japan
Prior art keywords
image
image plane
data
request
pixel cache
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
JP2014010581A
Other languages
English (en)
Inventor
Young-Jin Chung
永 振 鄭
Jinhong Oh
鎮 鴻 呉
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2014142938A publication Critical patent/JP2014142938A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/30Providing cache or TLB in specific location of a processing system
    • G06F2212/302In image processor or graphics adapter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/455Image or video data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Image Processing (AREA)

Abstract

【課題】イメージデータの管理に最適化したピクセルキャッシュを提供する。
【解決手段】本発明の動作方法は、メインメモリに格納されたイメージのイメージプレーンのデータを複数のラインフィルユニットのうちの一つのラインフィルユニットに格納する段階と、ラインフィルユニットに格納されたイメージプレーンのデータをイメージプロセッシング装置に出力する段階で構成される。ラインフィルユニットはピクセルキャッシュで一時に格納されて出力されるデータの処理単位である。イメージプレーンは、複数の行方向のピクセルと、複数の列方向のピクセルとを含み、ラインフィルユニットのサイズと同じサイズを有する。
【選択図】 図2

Description

本発明は、半導体装置に係り、より詳細には、ピクセルキャッシュ、及びピクセルキャッシュの動作方法に関する。
イメージプロセッシング装置は、カメラによって撮影されたイメージを用いて、様々な演算動作を実行する。イメージプロセッシング装置は、撮影されたイメージに対するノイズの減少、安定化、動きの追跡、動きの補償など、様々な演算を実行する。イメージプロセッシング装置が実行する演算動作の種類と複雑さとが増加し、イメージプロセッシング装置の演算動作をサポートするための様々な研究が進められている。
イメージプロセッシング装置の演算動作をサポートするための研究の一つは、ピクセルキャッシュに関するものである。ピクセルキャッシュは、イメージプロセッシング装置に内蔵されるキャッシュメモリであり得る。ピクセルキャッシュはメインメモリに格納されたイメージのデータをフェッチして格納することができる。イメージプロセッシング装置は、要求されるイメージのデータがピクセルキャッシュに格納された場合、メインメモリをアクセスせずに、ピクセルキャッシュをアクセスすることによってデータを取得することができる。
米国特許第8400460号公報
本発明の目的は、イメージデータの管理に最適化したピクセルキャッシュ、及びピクセルキャッシュの動作方法を提供することにある。
メインメモリに格納されたイメージをフェッチするように構成される本発明の実施形態によるピクセルキャッシュの動作方法は、前記メインメモリに格納されたイメージのイメージプレーンのデータを複数のラインフィル(Linefill)ユニットのうちの一つのラインフィルユニットに格納する段階と、前記ラインフィルユニットに格納された前記イメージプレーンのデータをイメージプロセッシング装置に出力する段階とを含み、前記ラインフィルユニットは、前記ピクセルキャッシュで一時に格納されて出力されるデータの処理単位であり、前記イメージプレーンは、複数の行方向のピクセルと、複数の列方向のピクセルとを含み、前記ラインフィルユニットのサイズと同じサイズを有する。
実施形態として、前記イメージプレーンは、前記メインメモリで互いに不連続なアドレスを有する少なくとも2つの部分から前記一つのラインフィルユニットにフェッチされ、前記少なくとも二つの部分は、互いに不連続なアドレスを有し、前記少なくとも2つの部分の各々は、少なくとも2つの連続したアドレスを有する。
実施形態として、前記出力する段階は、前記イメージプロセッシング装置からイメージプレーンのデータの要請を受信する段階と、前記要請がヒットの場合、前記要請に対応するイメージプレーンのデータを出力し、前記要請がヒットでなければ、前記メインメモリから前記要請に対応するイメージプレーンのデータをフェッチして出力する段階とを含み、前記要請に対応するイメージプレーンのデータが前記複数のラインフィルユニットのうちの一つに格納されていれば、ヒットとして判定する。
実施形態として、前記出力する段階は、前記イメージプロセッシング装置から複数のイメージプレーンのデータの要請を受信する段階と、前記複数のイメージプレーンのうちヒットであるイメージプレーンのデータを出力し、前記複数のイメージプレーンのうちヒットでないイメージプレーンのデータをフェッチして出力する段階とを含み、前記複数のイメージプレーンのうち前記複数のラインフィルユニットに格納されたイメージプレーンは、ヒットとして判定する。
実施形態として、前記複数のイメージプレーンは、前記イメージ上ですぐに隣接する。
実施形態として、前記要請は、前記複数のイメージプレーンと連関した基準点のアドレス及び前記基準点からの行方向の距離を含む。
実施形態として、前記要請は、前記複数のイメージプレーンと連関した基準点のアドレス及び前記基準点からの列方向の距離を含む。
実施形態として、前記要請は、前記複数のイメージプレーンと連関した基準点のアドレス及び前記基準点からの行方向の距離及び列方向の距離を含む。
実施形態として、前記要請は、前記複数のイメージプレーンと連関した基準点のアドレス及び第2基準点のアドレスを含む。
実施形態として、前記格納する段階の前に、前記ラインフィルユニットのサイズを調節する段階をさらに含む。
実施形態として、前記格納する段階の前に、前記複数のラインフィルユニットを第1ラインフィルユニットと第2ラインフィルユニットに分割する段階をさらに含む。
実施形態として、前記格納する段階は、第1イメージのイメージプレーンのデータを前記第1ラインフィルユニットのうちの一つの第1ラインフィルユニットに格納する段階と、第2イメージのイメージプレーンのデータを前記第2ラインフィルユニットのうちの一つの第2ラインフィルユニットに格納する段階とを含み、前記第1ラインフィルユニットに格納する段階と前記第2ラインフィルユニットに格納する段階は、同時に実行される。
実施形態として、前記出力する段階は、前記イメージプロセッシング装置からイメージプレーンのデータの要請を受信する段階と、前記要請がヒットの場合、前記要請に対応するイメージプレーンのデータを出力し、前記要請がヒットでなければ、前記メインメモリから前記要請に対応するイメージプレーンのデータをフェッチすると共に、前記イメージプロセッシング装置から第2イメージプレーンのデータの要請を受信する段階とを含み、前記要請に対応するイメージプレーンのデータが前記複数のラインフィルユニットのうちの一つに格納されていれば、ヒットとして判定する。
本発明の実施形態によるピクセルキャッシュは、複数のウェイを含み、各ウェイは、データを格納するように構成される複数のラインフィルユニットを含むデータメモリと、前記複数のウェイに各々対応する複数のタグウェイを含み、各タグウェイは各ウェイの複数のラインフィルユニットに各々対応する複数のタグラインを含むタグメモリと、外部のメインメモリに格納されたイメージのイメージプレーンを要請するように構成されるミス制御部とを含み、前記メインメモリから受信されたイメージプレーンのデータは、前記データメモリの一つのラインフィルユニットに格納され、前記メインメモリから受信されたイメージプレーンのアドレスの情報は、前記タグメモリの1つのタグラインに格納され、前記ラインフィルユニットは、前記ピクセルキャッシュで一時に格納されて出力されるデータの処理単位であり、前記イメージプレーンは、複数の行方向のピクセル及び複数の列方向のピクセルを含み、前記ラインフィルユニットのサイズと同じサイズを有する。
実施形態として、前記ラインフィルユニットのサイズに対する情報を格納するように構成されるレジスタをさらに含み、前記レジスタに格納された情報によって、前記ラインフィルユニットのサイズが調節される。
実施形態として、前記ラインフィルユニットのサイズが増加する時、前記タグメモリの互いに異なるウェイの複数のラインフィルユニットが一つのラインフィルユニットとして用いられる。
実施形態として、同時に処理されるイメージの数に対する情報を格納するように構成されるレジスタをさらに含み、前記ミス制御部は、前記イメージの数に対応するイメージプレーンを前記メインメモリに同時に要請する。
実施形態として、前記複数のウェイは、前記イメージの数に対応する複数のグループにグループ化し、前記複数のグループは、前記イメージの各々に割り当てられる。
実施形態として、外部のイメージプロセッシング装置からイメージプレーンの要請を受信し、前記タグメモリを検索して前記要請されたイメージプレーンが、前記データメモリに存在するか否かを判別するように構成されるヒット及びミス判断部と、前記ヒット及びミス判別部によってミスとして判別されたイメージプレーンの要請を格納するように構成されるレジスタとをさらに含み、前記ミス制御部は、前記レジスタに格納されたイメージプレーンの要請に応じて前記メインメモリにイメージプレーンを要請し、前記ヒット及びミス判別部はミスとして判別されたイメージプレーンの要請が前記レジスタに格納された後、次のイメージプレーンの要請を受信し、前記次のイメージプレーンの要請が前記データメモリに存在するか否かを判別する。
実施形態として、前記ミス制御部が、前記メインメモリにイメージプレーンを要請する間、前記ヒット及びミス判別部によってヒットとして判別されたイメージプレーンの要請を格納するように構成される第2レジスタをさらに含む。
本発明の実施形態によるイメージプロセッシング装置は、ピクセルキャッシュと、前記ピクセルキャッシュにイメージプレーンを要請し、前記ピクセルキャッシュから受信されるイメージプレーンに基づいてイメージ処理を実行するように構成される処理部とを含み、前記ピクセルキャッシュは、複数のウェイを含み、各ウェイは、データを格納するように構成される複数のラインフィルユニットを含むデータメモリと、前記複数のウェイに各々対応する複数のタグウェイを含み、各タグウェイは、前記複数のラインフィルユニットに各々対応し、タグを格納するように構成される複数のタグラインを含むタグメモリと、前記処理部の要請に応じて、外部のメインメモリに格納されたイメージのイメージプレーンを要請するように構成されるミス制御部とを含み、前記メインメモリから受信されたイメージプレーンのデータは、前記データメモリの一つのラインフィルユニットに格納され、前記メインメモリから受信されたイメージプレーンのアドレス情報は、前記タグメモリの一つのタグラインに格納され、前記ラインフィルユニットは、前記ピクセルキャッシュで一時に格納されて出力されるデータの処理単位であり、前記イメージプレーンは、複数の行方向のピクセル及び複数の列方向のピクセルを含み、前記ラインフィルユニットのサイズと同じサイズを有する。
本発明の実施形態によれば、ピクセルキャッシュは、複数の行方向のピクセル及び複数の列方向のピクセルを含むイメージプレーンの単位でデータをフェッチする。したがって、空間的局所性を有するイメージデータの管理に最適化したピクセルキャッシュ、ピクセルキャッシュの動作方法、そしてピクセルキャッシュを含むイメージプロセッシング装置を提供する。
本発明の実施形態によるモバイル装置を示すブロック図。 本発明の実施形態によるピクセルキャッシュの動作方法を示すフローチャート。 ピクセルキャッシュがメインメモリに格納されたイメージのデータをフェッチする第1例を示す図。 ピクセルキャッシュがメインメモリに格納されたイメージのデータをフェッチする第2例を示す図。 本発明の第1実施形態によるピクセルキャッシュを示すブロック図。 図5のピクセルキャッシュの動作方法の第1例を示すフローチャート。 イメージプレーン及び要請されたデータの例を示す図。 図5のピクセルキャッシュの動作方法の第2例を示すフローチャート。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第1例を示す図。 図9の要請に応じてピクセルキャッシュが要請されたデータRDを出力する例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第2例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第3の例を示す図。 図12の要請に応じてピクセルキャッシュが要請されたデータを出力する例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第4例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第5例を示す図。 図15の要請に応じてピクセルキャッシュが要請されたデータを出力する例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第6例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第7例を示す図。 ピクセルキャッシュが複数のイメージプレーンの要請を受信する方法の第8例を示す図。 本発明の第2実施形態によるピクセルキャッシュを示すブロック図。 図20のピクセルキャッシュの動作方法を示すフローチャート。 ラインフィルユニットのサイズが制御されることによって、データメモリが管理される例を示す図。 マスタ装置の演算ユニットサイズ及びそれによるラインフィルユニットのサイズを示すテーブル。 本発明の第3実施形態によるピクセルキャッシュを示すブロック図。 図24のピクセルキャッシュの動作方法を示すフローチャート。 本発明の第4実施形態によるピクセルキャッシュを示すブロック図。 図26のピクセルキャッシュの動作方法を示すフローチャート。 図26のピクセルキャッシュの動作方法をより詳細に示すフローチャート。 本発明の第5実施形態によるピクセルキャッシュを示すブロック図。 本発明の第6実施形態によるピクセルキャッシュを示すブロック図。
以下、本発明の属する技術の分野における通常の知識を持つ者が、本発明の技術的思想を容易に実施できるように、本発明の実施形態を添付図面を参照して説明する。
図1は、本発明の実施形態によるモバイル装置1000を示すブロック図である。図1を参照すると、モバイル装置1000は、システムバス1100と、アプリケーションプロセッサ1200と、メインメモリ1300と、モデム1400と、ユーザインターフェース1500と、ストレージ1600とを含む。
システムバス1100は、モバイル装置1000の構成要素の間にチャンネルを提供する。
アプリケーションプロセッサ1200は、モバイル装置1000のメインプロセッサであり得る。アプリケーションプロセッサ1200は、モバイル装置1000の構成要素を制御し、運用システム及びアプリケーションを実行し、論理演算を実行することができる。アプリケーションプロセッサ1200は、システムオンチップ(SoC、System−on−Chip)であり得る。
アプリケーションプロセッサ1200は、内部バス1210と、コアプロセッサ1220と、デジタル信号プロセッサ1230と、ダイレクトメモリアクセス1240と、メモリコントローラ1250と、イメージプロセッシング装置1260とを含んでいる。
内部バス1210は、アプリケーションプロセッサ1200の構成要素の間にチャンネルを提供する。
コアプロセッサ1220は、アプリケーションプロセッサ1200の構成要素を制御し、様々な論理演算を実行することができる。
デジタル信号プロセッサ1230は、予め決められた演算を高速に実行し、コアプロセッサ1220を補助することができる。
ダイレクトメモリアクセス1240は、コアプロセッサ1220のプログラムにより、メモリコントローラ1250を通じてメインメモリ1300をアクセスすることができる。
メモリコントローラ1250は、アプリケーションプロセッサ1200がメインメモリ1300又はストレージ1600をアクセスするように、インターフェースを提供する。
イメージプロセッシング装置1260は、イメージデータに対する演算を実行して、コアプロセッサ1220を補助することができる。イメージプロセッシング装置1260は、動作検出部1261と、動作補償部1263と、ピクセルキャッシュ1265とを含んでいる。
動作検出部1261は、イメージ又は連続する複数のイメージデータに基づいて、イメージに存在する目標対象の動きを測定することができる。動作検出部1261は、動作検出に必要なイメージのデータをピクセルキャッシュ1265に要請することができる。
動作補償部1263は、動作検出部1261によって測定された動きに基づいて、イメージを補正することができる。例えば、動作補償部1263は、測定された動きを反映して、イメージのノイズ、にじみなどを補償することができる。動作補償部1263は、動作補償に必要なイメージデータをピクセルキャッシュ1265に要請することができる。
ピクセルキャッシュ1265は、メインメモリ1300に格納されたイメージデータをフェッチ(fetch)するように構成される。動作検出部1261、又は動作補償部1263によって要請されたイメージデータがピクセルキャッシュ1265に格納されている時、ピクセルキャッシュ1265は、格納されたデータを出力することができる。動作検出部1261、又は動作補償部1263によって要請されたイメージのデータがピクセルキャッシュ1265に格納されていない場合、ピクセルキャッシュ1265は、要請されたデータをメインメモリ1300からフェッチし、フェッチされたデータを出力することができる。
例示的に、ピクセルキャッシュ1265は、イメージプロセッシング装置1260だけでなく、アプリケーションプロセッサ1200の他の構成要素によって要求されるイメージのデータをフェッチして出力するように構成することができる。ピクセルキャッシュ1265の位置は、イメージプロセッシング装置1260の内部に限定されず、アプリケーションプロセッサ1200の他の構成要素の内部に、又は他の構成要素と独立した位置に提供することができる。
例示的に、コアプロセッサ1220、デジタル信号プロセッサ1230、ダイレクトメモリアクセス1240、メモリコントローラ1250、イメージプロセッシング装置1260は、IP(Intellectual Properties)に提供できる。
メインメモリ1300は、モバイル装置1000の動作メモリであり得る。メインメモリ1300は、DRAM、SRAM、PRAM、MRAM、RRAM(登録商標)、FRAM(登録商標)などのランダムアクセスメモリのうちの少なくとも一つを含むことができる。
モデム1400は、外部装置と有線又は無線チャネルを通じて通信することができる。モデム1400は、LTE、CDMA、GSM(登録商標)、WiFi、WiMax、NFC、Bluetooth(登録商標)、RFIDなどの様々な通信方法に基づいて、外部装置と通信を行うことができる。
ユーザインターフェース1500は、ユーザと信号を交換することができる。ユーザインターフェース1500は、カメラ、マイク、キーボード、マウス、タッチパッド、タッチパネル、タッチスクリーン、ボタン、スイッチなどの入力インターフェースを含むことができる。ユーザインターフェース1500は、ディスプレイ装置、スピーカ、ランプ、モータなどのユーザ出力インターフェースを含むことができる。ディスプレイ装置は、LCD、AMOLED表示装置、ビームプロジェクタなどを含むことができる。
ストレージ1600は、モバイル装置1000で長期的な保存を必要とするデータを格納することができる。ストレージ1600は、フラッシュメモリ、MRAM、PRAM、RRAM、FRAM、ハードディスクドライブなどの不揮発性メモリのうちの少なくとも一つを含むことができる。
図2は、本発明の実施形態によるピクセルキャッシュ1265の動作方法を示すフローチャートである。図1及び図2を参照すると、S10段階において、イメージプレーンのデータがピクセルキャッシュ1265の一つのラインフィルユニット(Linefill unit)に格納される。
S20段階において、1つのラインフィルユニットに格納されたイメージプレーンのデータが出力される。イメージプレーンのデータは、イメージプロセッシング装置1260又はアプリケーションプロセッサ1200の他の構成要素に出力することができる。
イメージプレーンはメインメモリ1300に格納されたイメージの一部であり得る。イメージプレーンは、複数の行のピクセル及び複数の列のピクセルを含む2次元データであり得る。
ラインフィルユニットはピクセルキャッシュ1265で一時に格納されて出力されるデータの処理単位であり得る。
動作検出部1261、又は動作補償部1263のようにイメージを処理するユニットは、2次元イメージに基づいて演算を実行する。本発明の実施形態によれば、ピクセルキャッシュ1265は、メインメモリ1300に格納されたイメージの一部を一時に格納するか、又は出力する。イメージの一部は、複数の行のピクセルと複数の列のピクセルとを含む2次元データである。したがって、ピクセルキャッシュ1265の一つのラインフィルユニットに格納されたデータが動作検出部1261、又は動作補償部1263で要求される2次元イメージとマッチされ、ピクセルキャッシュ1265をアクセスする回数が減少するようになる。
図3は、ピクセルキャッシュ1265がメインメモリ1300に格納されたイメージのデータをフェッチする第1例を示す。図1及び図3を参照すると、イメージ、イメージが格納されたメインメモリ1300、そしてメインメモリに格納されたイメージの一部を格納するピクセルキャッシュ1265を示す。
イメージは複数のピクセルを含むことができる。複数のピクセルは、各々対応するデータD01〜D32を有することができる。例示的なイメージを図3に示すが、イメージのサイズは限定されない。
メインメモリ1300の格納領域は、メモリアドレスMAにより識別される。メインメモリ1300は、イメージに示された矢印の方向によって、ピクセルのデータを順にメモリアドレスに対応する格納領域に格納することができる。例示的に、メモリアドレス0000〜0007に対応するメインメモリ1300の格納領域は、イメージの1番目の行のデータD01〜D08を格納することができる。メモリアドレス0008〜000Fに対応するメインメモリ1300の格納領域は、イメージの2番目の行のデータD09〜D16を格納することができる。メモリアドレス0010〜0017に対応するメインメモリ1300の格納領域は、イメージの3番目の行のデータD17〜D24を格納することができる。メモリアドレス0018〜001Fに対応するメインメモリ1300の格納領域は、イメージの4番目の行のデータD25〜D32を格納することができる。メインメモリ1300は、線形タイプ(Linear type)でイメージを格納することができる。
メインメモリ1300は、複数のグループに分割することができる。各グループは、順次なアドレスに対応する格納領域を含むことができる。メインメモリ1300の複数のグループに各々互いに異なるタグTが割り当てられる。例えば、メモリアドレス0000〜000Fに対応する格納領域が1つのグループを形成し、タグ00を割り当てることができる。メモリアドレス0010〜001Fに対応する格納領域が、他の1つのグループを形成し、タグ01を割り当てることができる。メインメモリ1300のグループの数は限定されない。
メインメモリ1300の各グループは、複数のサブグループに分割される。各サブグループは、順次なアドレスに対応する格納領域を含むことができる。各グループのサブグループに各々互いに異なるラインインデックスLIが割り当てられる。例えば、メモリアドレス0000〜000Fに対応するグループで、メモリアドレス0000〜0003に対応するサブグループにラインインデックス00が割り当てられ、メモリアドレス0004〜0007に対応するサブグループにラインインデックス01が割り当てられ、メモリアドレス0008〜000Bに対応するサブグループにラインインデックス02が割り当てられ、メモリアドレス000C〜000Fに対応するサブグループにラインインデックス03が割り当てられる。メモリアドレス0010〜001Fに対応するグループで、メモリアドレス0010〜0013に対応するサブグループにラインインデックス00が割り当てられ、メモリアドレス0014〜0017に対応するサブグループにラインインデックス01が割り当てられ、メモリアドレス0018〜001Bに対応するサブグループにラインインデックス02が割り当てられ、メモリアドレス001C〜001Fに対応するサブグループにラインインデックス03が割り当てられる。メインメモリ1300の各グループのサブグループの数は限定されない。
一つのラインインデックスLIは、ピクセルキャッシュ1265のデータの入出力の単位に対応することができる。ピクセルキャッシュ1265は、メインメモリ1300の一つのラインインデックスLIに対応するデータをメインメモリ1300から一時にフェッチし、一つのラインインデックスLIに対応するデータを一時に出力することができる。
ピクセルキャッシュ1265は、複数のウェイW1〜W2を含むことができる。一つのウェイはメインメモリ1300の1つのグループに対応することができる。各ウェイは、複数のラインフィルユニット(Linefill units)を含む。ラインフィルユニットは、メインメモリ1300の各グループのサブグループに各々対応することができる。
メインメモリ1300に格納されたイメージのデータは、タグT及びラインインデックスLIに基づいて、ピクセルキャッシュ1265にフェッチすることができる。例えば、ピクセルキャッシュ1265は、選択されたデータのラインインデックスLIを参照して、選択したデータが格納されるウェイを選択することができる。ピクセルキャッシュ1265は、選択されたデータのラインインデックスLIに対応するラインフィルユニットが空のウェイを選択することができる。選択されたデータは、選択されたウェイで、選択されたデータのラインインデックスLIに対応する位置のラインフィルユニットに格納することができる。この時、選択されたデータのタグTをピクセルキャッシュ1265に共に格納することができる。
例示的に、イメージのデータD01〜D04は、タグ00及びラインインデックス00を有する。データD01〜D04は、ウェイW1のラインインデックス00に対応する位置、すなわち、1番目のラインフィールドユニットに格納することができる。イメージのデータD05〜D08は、タグ00及びラインインデックス01を有する。データD05〜D08は、ウェイW1の2行目のラインフィルユニットに格納することができる。
イメージのデータD17〜D20は、タグ01及びラインインデックス00を有する。データD17〜D20は、ウェイW2のラインインデックス00に対応する位置、すなわち、1番目のラインフィールドユニットに格納することができる。イメージのデータD21〜D24は、タグ01及びラインインデックス01を有する。データD21〜D24は、ウェイW2の2行目のラインフィルユニットに格納することができる。
イメージデータの要請を受信すると、ピクセルキャッシュ1265は、要請されたメインメモリ1300のアドレスからタグT及びラインインデックスLIを抽出することができる。抽出されたタグT及びラインインデックスLIに対応するデータが格納されていれば、ピクセルキャッシュ1265は、ヒットとして判定し、要請されたデータを出力することができる。抽出されたタグT及びラインインデックスLIに対応するデータが格納されていなければ、ピクセルキャッシュ1265は、ミスとして判定し、要請されたデータをメインメモリ1300からフェッチすることができる。フェッチされたデータは、ピクセルキャッシュ1265に格納され、要請に応じて出力することができる。
図3に示すように、ピクセルキャッシュ1265の一つのラインフィルユニットは、イメージの一つの行又は一つの行の一部のデータを格納することができる。
図4は、ピクセルキャッシュ1265がメインメモリ1300に格納されたイメージのデータをフェッチする第2例を示す。図1及び図4を参照すると、イメージ、イメージが格納されたメインメモリ1300、そしてメインメモリに格納されたイメージの一部を格納するピクセルキャッシュ1265を示す。
図4を図3と比較すると、メインメモリ1300の各グループの各サブグループは、不連続なアドレスを含むことができる。例えば、メモリアドレス0000〜000Fに対応するグループにおいて、メモリアドレス0000、0001、0008、0009に対応するサブグループにラインインデックス00が割り当てられ、メモリアドレス0002、0003、000A、000Bに対応するサブグループにラインインデックス01が割り当てられ、メモリアドレス0004、0005、000C、000Dに対応するサブグループにラインインデックス02が割り当てられ、メモリアドレス0006、0007、000E、000Fに対応するサブグループにラインインデックス03が割り当てられる。
メモリアドレス0010〜001Fに対応するグループにおいて、メモリアドレス0010、0011、0018、0019に対応するサブグループにラインインデックス00が割り当てられ、メモリアドレス0012、0013、001A、001Bに対応するサブグループにラインインデックス01が割り当てられ、メモリアドレス0014、0015、001C、001Dに対応するサブグループにラインインデックス02が割り当てられ、メモリアドレス0016、0017、001E、001Fに対応するサブグループにラインインデックス03が割り当てられる。
イメージのデータD01、D02、D09、D10は、タグ00及びラインインデックス00を有する。データD01、D02、D09、D10は、ウェイW1のラインインデックス00に対応する位置、すなわち、1番目のラインフィールドユニットに格納することができる。イメージのデータD03、D04、D11、D12は、タグ00及びラインインデックス01を有する。データD03、D04、D11、D12は、ウェイW1の2番目のラインフィルユニットに格納することができる。
イメージのデータD17、D18、D25、D26は、タグ01及びラインインデックス00を有する。データD17、D18、D25、D26は、ウェイW2のラインインデックス00に対応する位置、すなわち、1番目のラインフィールドユニットに格納することができる。イメージのデータD19、D20、D27、D28は、タグ01及びラインインデックス01を有する。データD19、D20、D27、D28は、ウェイW2の2行目のラインフィルユニットに格納することができる。
図4に示すように、ピクセルキャッシュ1265の一つのラインフィルユニットは、イメージの複数の行方向のピクセルと、複数の列方向のピクセルとを含むデータを格納することができる。ピクセルキャッシュ1265の一つのラインフィルユニットに格納される2次元イメージのデータは、イメージプレーン(image plane)であり得る。
イメージプロセッシング装置1260は、ピクセルキャッシュ1265に格納されたデータに基づいて、様々な演算処理を実行する。イメージプロセッシング装置1260の演算動作は、空間的局所性(spartial locality)を有する。例えば、イメージプロセッシング装置1260で実行される演算の動作は、2次元イメージに基づいて実行される。イメージプロセッシング装置1260は、受信されたイメージ内の2次元領域を互いに比較したり、連続して受信されたイメージの中から2次元領域を互いに比較することができる。
図3に示すように、ピクセルキャッシュ1265がイメージの一つの行又は一つの行の一部のデータを格納するように構成されれば、イメージプロセッシング装置1260は演算動作を実行する時にピクセルキャッシュ1265を複数回アクセスしなければならない。これによって、ピクセルキャッシュ1265は、メインメモリ1300を複数回アクセスすることができる。
一方、図4に示すように、ピクセルキャッシュ1265がイメージプレーンを格納するように構成されれば、イメージプロセッシング装置1260が演算処理を実行する時、ピクセルキャッシュ1265をアクセスする回数が減少する。特に、ピクセルキャッシュ1265が格納するイメージプレーンがイメージプロセッシング装置1260で必要とする2次元イメージと一致した場合、イメージプロセッシング装置1260は、ピクセルキャッシュ1265を1回アクセスすることにより、演算処理を実行することができる。本発明の実施形態によるピクセルキャッシュ1265は、一つのラインフィルユニットにイメージプレーンを格納するように構成される。したがって、空間的局所性を有するイメージデータの管理に最適化したピクセルキャッシュ、ピクセルキャッシュの動作方法、及びピクセルキャッシュを含むイメージプロセッシング装置を提供する。
図5は、本発明の第1実施形態によるピクセルキャッシュ1265を示すブロック図である。図1、図4及び図5を参照すると、ピクセルキャッシュ1265は、データメモリDMと、タグメモリTMと、マルチプレクサ部MU1〜MU4と、比較部CUと、ヒット及びミス判別部HMDUと、置換部RMUと、ステートマシンSMと、ミス制御部MCUと、ラインフィル制御部LCUと、ラインフィルバッファLBとを含む。
ピクセルキャッシュ1265は、マスタから要請REQ1を受信することができる。ピクセルキャッシュ1265は、イメージプロセッシング装置1260又はイメージプロセッシング装置1260の外部のアプリケーションプロセッサ1200から要請REQ1を受信することができる。要請REQ1に応答して、ピクセルキャッシュ1265は、マスタにデータD1を出力することができる。ピクセルキャッシュ1265は、データD1の有効性を示す情報(例えば、データD1が有効な区間又はクロックを示すストローブ信号)を信号S1としてマスタに出力することができる。
要請REQ1に応答して、ピクセルキャッシュ1265は、メインメモリ1300に要請REQ2を伝送することができる。ピクセルキャッシュ1265は、メインメモリ1300からデータD2を受信し、データD2と連関した信号S2を受信することができる。信号S2は、データD2の有効性を示す情報(例えば、データD2が有効な区間又はクロックを示すストローブ信号)であり得る。
データメモリDMは、複数のウェイW1〜Wnを含んでいる。各ウェイは、複数のラインフィルユニットを含んでいる。一つのラインフィルユニットは、一つのイメージプレーンを格納することができる。
タグメモリTMは、複数のタグウェイTW1〜TWnを含んでいる。複数のタグウェイTW1〜TWnは、複数のウェイW1〜Wnに各々対応する。各タグウェイは、複数のタグラインを含む。1つのタグウェイは、データメモリDMの対応するラインフィルユニットに格納されたデータのタグTを格納することができる。1つのタグウェイは、データメモリDMの対応するラインフィルユニットに格納されたデータが有効なデータであるか否かを示す有効性情報Vをさらに格納することができる。
マルチプレクサ部MU1は、複数のマルチプレクサM1〜Mnを含んでいる。複数のマルチプレクサM1〜Mnは、複数のタグウェイTW1〜TWnに各々対応する。マルチプレクサ部MU1は、マスタからの要請REQ1に応答して、複数のタグウェイTW1〜TWnのタグラインを選択することができる。例えば、要請REQ1が特定のラインインデックスLIを示す時、複数のマルチプレクサM1〜Mnの各々は、対応するタグウェイから要請されたラインインデックスLIを選択することができる。例えば、要請REQ1がラインインデックス00を示す時、マルチプレクサM1〜Mnは、タグウェイTW1〜TWnのラインインデックス00に対応する位置のタグを出力することができる。
比較部CUは、複数の比較器CP1〜CPnを含んでいる。複数の比較器CP1〜CPnは、複数のマルチプレクサM1〜Mnに各々対応する。比較器CP1〜CPnは、複数のマルチプレクサM1〜Mnからタグを受信することができる。比較器CP1〜CPnは、要請REQ1が示すタグTをマルチプレクサM1〜Mnから出力されたタグと比較することができる。
ヒット及びミス判別部HMDUは、比較部CUから比較の結果を受信することができる。比較の結果に基づいて、ヒット及びミス判別部HMDUは、ヒット及びミス情報HMIを出力する。要請REQ1を示すタグTがタグメモリTMに格納されていると判断されれば、ヒット及びミス判別部HMDUはヒットを示すヒット及びミス情報HMIを出力することができる。要請REQ1を示すタグTがタグメモリTMに格納されていないと判断されれば、ヒット及びミス判別部HMDUは、ミスを示すヒット及びミス情報HMIを出力することができる。
すなわち、要請REQ1に対応するイメージプレーンがピクセルキャッシュ1265に格納されている場合、ヒット及びミス判別部HMDUはヒットを判定することができる。要請REQ1に対応するイメージプレーンのピクセルキャッシュ1265に格納されていない場合、ヒット及びミス判別部HMDUはミスを判定することができる。ヒット及びミス情報HMIは、ヒットが発生したタグウェイに対する情報を含むことができる。
置換管理部RMUは、タグメモリTMを管理することができる。置換管理部RMUは、タグメモリTMに格納された有効性情報Vを管理し、有効性情報Vに応じてタグメモリTMを管理することができる。例えば、置換管理部RMUは、有効性情報Vが無効であることを示すタグラインを削除することができる。置換管理部RMUは、有効性情報Vが有効であることを示すタグラインをLRU(Least Recently Used)方式に基づいて、削除することができる。
マルチプレクサ部MU2は、ヒット及びミス情報HMIに基づいて動作することができる。ヒット及びミス情報HMIがヒットを示す時、マルチプレクサ部MU2は、要請REQ1に含まれたラインインデックスLIをデータメモリDMに伝達することができる。マルチプレクサ部MU2は、ヒット及びミス情報HMIに含まれたウェイ情報をデータメモリDMに伝達することができる。マルチプレクサ部MU2から伝達されるラインインデックスLI及びウェイ情報に基づいて、データメモリDMのラインフィルユニットに格納されたイメージプレーンを読み出すことができる。データメモリDMで読み出されたイメージプレーンは、マルチプレクサ部MU4に出力することができる。
ステートマシンSMは、ピクセルキャッシュ1265のすべての動作を制御することができる。ステートマシンSMは、要請REQ1、ヒット及びミス情報HMIなどの様々な信号に基づいて、ピクセルキャッシュ1265の動作を制御することができる。データメモリDMから読み出されたイメージプレーンが出力される時、ステートマシンSMは、データメモリDMから読み出されたイメージプレーンの有効性を示す情報を出力することができる。有効性を示す情報は、マルチプレクサ部MU3に出力することができる。
ミス制御部MCUは、ヒット及びミス情報HMIに基づいて動作する。ヒット及びミス情報HMIがミスを示す時、ミス制御部MCUは、要請REQ1に含まれたアドレスに応じて、メインメモリ1300の要請REQ1を伝送することができる。ミス制御部MCUは、要請REQ1によって要請されるイメージプレーンをメインメモリ1300に要請することができる。ミス制御部MCUは、メインメモリ1300から信号S2を受信し、信号S2に基づいて、イメージプレーンを格納するようにラインフィル制御部LCU又はラインフィルバッファLBを制御することができる。
ラインフィル制御部LCUは、ラインフィルバッファLBの動作を制御することができる。ラインフィル制御部LCUは、メインメモリ1300から受信されるイメージプレーンのデータD2を格納するようにラインフィルバッファLBを制御することができる。ラインフィル制御部LCUは、ラインフィルバッファLBに格納されたイメージプレーンをデータメモリDMに出力するようにラインフィルバッファLBを制御することができる。データメモリDMに伝達されたイメージプレーンをデータメモリDMの一つのラインフィルユニットに格納することができる。この時、要請REQ1に含まれたタグT及びラインインデックスLIに応じて、タグメモリTMを更新することができる。例えば、イメージプレーンは、格納されたデータメモリDMのラインフィルユニットに対応するタグラインにタグTを格納することができる。
ラインフィル制御部LCUは、ラインフィルバッファLBに格納されたイメージプレーンのマルチプレクサ部MU4に出力されるようにラインフィルバッファLBを制御することができる。ラインフィル制御部LCUは、ラインフィルバッファLBから出力されるイメージプレーンの有効性に関する情報をマルチプレクサ部MU3に出力することができる。
マルチプレクサ部MU3は、ステートマシンSM又はラインフィル制御部LCUから有効性に関する情報を受信する。マルチプレクサ部MU3は、ヒットが発生した時にステートマシンSMから出力される有効性に関する情報を選択することができる。マルチプレクサ部MU3は、ミスが発生した時にラインフィル制御部LCUから出力される有効性に関する情報を選択することができる。マルチプレクサ部MU3は、選択された情報を信号S1に出力することができる。簡略な説明のために、図5に示さないが、マルチプレクサ部MU3は、ヒット及びミス情報HMIに応答して動作することができる。
マルチプレクサ部MU4は、データメモリDM、又はラインフィルバッファLBからイメージプレーンを受信する。マルチプレクサ部MU4は、ヒットが発生した時に、データメモリDMから出力されるイメージプレーンを選択することができる。マルチプレクサ部MU4は、ミスが発生した時にラインフィルバッファLBから出力されるイメージプレーンを受信することができる。マルチプレクサ部MU4は、選択されたイメージプレーンをデータD1に出力することができる。簡略な説明のために、図5に示さないが、マルチプレクサ部MU4は、ヒット及びミス情報HMIに応答して動作することができる。
ピクセルキャッシュ1265は、複数の行方向のピクセルと、複数の列方向のピクセルとを含むイメージプレーンを一つのラインフィルユニットに格納する。要請されたイメージプレーンが、データメモリDMに格納されている時、ピクセルキャッシュ1265は、データメモリDMに格納されたイメージプレーンを出力する。要請されたイメージプレーンが、データメモリDMに格納されていない場合、ピクセルキャッシュ1265は、メインメモリ1300にイメージプレーンを要請してフェッチする。ピクセルキャッシュ1265は、フェッチされたイメージプレーンをデータメモリDMに格納し、出力する。フェッチされたイメージプレーンの格納及び出力は、同時に実行することができる。
図6は、図5のピクセルキャッシュ1265の動作方法の第1例を示すフローチャートである。図1、図4、図5及び図6を参照すると、S110段階において、要請REQ1を受信する。要請REQ1は、必要なイメージプレーンに対する情報(例えば、アドレス)を含むことができる。受信されたアドレスから、タグT及びラインインデックスLIを抽出することができる。
S120段階において、ヒットであるか否かを判別する。ヒット及びミス判別部HMDUは、要請REQ1に含まれたタグT及びラインインデックスLIに基づいて、要請されたイメージプレーンが、データメモリDMに格納されているか否かを判別することができる。要請されたイメージプレーンが格納されていれば、ヒットとして判別する。要請されたイメージプレーンが格納されていなければ、ミスとして判別する。
ヒットとして判別されれば、S130段階において、要請されたイメージプレーンを出力する。ミスとして判別されれば、S140段階において、要請されたイメージプレーンをメインメモリ1300からフェッチする。S150段階において、イメージプレーンのラインフィルユニットに格納されて出力される。
図7は、イメージプレーンIP、及び要請されたデータRDの例を示す。図7を参照すると、要請されたデータRDを一つのイメージプレーンIPに含むことができる。ピクセルキャッシュ1265は、要請されたデータRDを含むイメージプレーンIPの要請を受信し、イメージプレーンIPを出力することができる。ピクセルキャッシュ1265は、要請されたデータRDの要請を受信し、イメージプレーンIPを出力することができる。ピクセルキャッシュ1265は、要請されたデータRDの要請を受信し、イメージプレーンIPのうち要請されたデータRDに対応する部分を出力することができる。
図8は、図5のピクセルキャッシュ1265の動作方法の第2例を示すフローチャートである。図1、図4、図5及び図8を参照すると、S210段階において、要請REQ1を受信する。要請REQ1は、必要な複数のイメージプレーンに関する情報(例えば、アドレス)を含むことができる。受信されたアドレスから、複数のイメージプレーンのタグT及びラインインデックスLIを抽出することができる。
S220段階において、1番目のイメージプレーンを選択する。S230段階において、ヒットが発生したか否かを判別する。ヒットが発生すれば、S240段階において要請されたイメージプレーンを出力する。その後、S270段階を実行する。ヒットが発生しなければ、S250段階を実行する。
S250段階において、要請されたイメージプレーンをメインメモリ1300からフェッチする。S260段階において、フェッチしたイメージプレーンをデータメモリDMに格納し、フェッチしたイメージプレーンを出力する。
S270段階において、出力されたイメージプレーンが最後のイメージプレーンであるか否かを判断する。出力されたイメージプレーンが最後のイメージプレーンであれば、動作は終了する。出力されたイメージプレーンが最後のイメージプレーンでなければ、S280段階で次のイメージプレーンを選択し、S230段階を再び実行する。
図8を参照して説明したように、本発明の実施形態によってイメージプレーンをラインフィルユニットに格納するように構成されるピクセルキャッシュ1265は、複数のイメージプレーンの要請を一時に受信し、受信された要請に応じて複数のイメージプレーンを順に出力することができる。
図9は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第1例を示す。図5及び図9を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
ピクセルキャッシュ1265に対する要請REQ1は、要請されたデータRDの基準点RPのアドレス及び基準点RPからの要請されたデータRDの行方向の長さOFF_Xに対する情報を含むことができる。基準点RPは、要請されたデータRDのアドレスのうち最も低いアドレスに対応する位置であり得る。基準点RPは、要請されたデータRDの左上端の位置であり得る。
図10は、図9の要請に応じてピクセルキャッシュ1265が要請されたデータRDを出力する例を示す。図5、図9及び図10を参照すると、ピクセルキャッシュ1265は、少なくとも2つの方法で要請されたデータRDを出力することができる。
第1の例として、ピクセルキャッシュ1265は、行単位でイメージプレーンを出力することができる。一つの行のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の行のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の行のイメージプレーンIP_1b〜IP_1e、2番目の行のイメージプレーンIP_2b〜IP_2e、3番目の行のイメージプレーンIP_3b〜IP_3e、及び4番目の行のイメージプレーンIP_4b〜IP_4eを順に出力することができる。
第2の例として、ピクセルキャッシュ1265は、列単位でイメージプレーンを出力することができる。一つの列のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の列のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の列のイメージプレーンIP_1b〜IP_4b、2番目の列のイメージプレーンIP_1c〜IP_4c、3番目の列のイメージプレーンIP_1d〜IP_4d、及び4番目の列のイメージプレーンIP_1e〜IP_4eを順に出力することができる。
要請REQ1が基準点RPのアドレスと行方向の距離OFF_Xを含む場合、ピクセルキャッシュ1265から出力されるデータCDは、要請されたデータRDだけでなく、要請されたデータRDに属していないイメージプレーンをさらに含むことができる。要請REQ1を伝送したマスタ(イメージプロセッシング装置1260又はアプリケーションプロセッサ1200、(図1参照)の他の構成要素)は、ピクセルキャッシュ1265から受信されるイメージプレーンCDのうち要請されたデータRDに対応する部分のみを選択して演算を実行することができる。
別の例として、要請REQ1に応答して、ピクセルキャッシュ1265は、要請されたデータRDに対応するデータのみを出力することができる。例えば、1番目の行のイメージプレーン1b〜1eにおいて、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。同様に、4番目の列のイメージプレーン4b〜4e、1番目の列のイメージプレーン1b〜4b、及び4番目の列のイメージプレーン1e〜4eにおいて、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。
イメージを処理するマスタは、空間的局所性(spartial locality)に基づいて2次元イメージを求めることができる。本発明の実施形態によるピクセルキャッシュ1265が適用されれば、一回の要請REQ1を通じて、ピクセルキャッシュ1265の複数のラインフィルユニットに対応する複数のイメージプレーンを要請することができる。したがって、ピクセルキャッシュ1265に対するアクセス回数が減少し、ピクセルキャッシュ1265を含むイメージプロセッシング装置1260又はアプリケーションプロセッサ1200の動作性能は向上する。
図9及び図10を参照して説明した要請方式は、複数のイメージプレーンを要請する場合に限定されない。例えば、図7を参照して説明したように、要請されたデータRDが一つのイメージプレーン内に属する場合にも、要請REQ1は、基準点RPのアドレス及び行方向の距離OFF_Xを含むことができる。図9及び図10を参照して説明した要請方式は、要請されるデータRDのサイズに関係なく、適用可能である。したがって、マスタが必要とする要請されたデータRDのサイズが可変する場合にも、同じ方法で要請を伝送することができる。
図11は、ピクセルキャッシュ1265が、複数のイメージプレーンの要請を受信する方法の第2例を示す。図5及び図11を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
図9に示した実施形態とは異なり、図11に示した実施形態による要請REQ1は、基準点RPが属するイメージプレーンIP_1bのアドレス及び行方向の長さOFF_Xに対する情報を含むことができる。行方向の長さOFF_Xは、要請されたデータRDが含まれたイメージプレーンの行方向の長さを含むことができる。
基準点RPが属したイメージプレーンIP_1bのアドレスは、該当イメージプレーンIP_1bのアドレスのうち最も低いアドレスであり得る。基準点RPが属したイメージプレーンIP_1bのアドレスは、基準点RPが属したイメージプレーンIP_1bの左上端のアドレスであり得る。
図11に示した方法によって要請REQ1が伝送されれば、ピクセルキャッシュ1265は、図10に示した方法によってイメージプレーンを出力することができる。
図12は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第3例を示す。図5及び図12を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
ピクセルキャッシュ1265に対する要請REQ1は、要請されたデータRDの基準点RPのアドレス及び基準点RPからの要請されたデータRDの列方向の長さOFF_Yに対する情報を含むことができる。基準点RPは、要請されたデータRDのアドレスのうち最も低いアドレスに対応する位置であり得る。基準点RPは、要請されたデータRDの左上の位置であり得る。
図13は、図12の要請に応じてピクセルキャッシュ1265が要請されたデータRDを出力する例を示す。図5、図12及び図13を参照すると、ピクセルキャッシュ1265は、少なくとも2つの方法で要請されたデータRDを出力することができる。
第1の例として、ピクセルキャッシュ1265は、行単位でイメージプレーンを出力することができる。一つの行のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の行のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の行のイメージプレーン1b〜1h、2番目の行のイメージプレーン2b〜2h、3番目の行のイメージプレーン3b〜3h、及び4番目の行のイメージプレーン4b〜4hを順に出力することができる。
第2の例として、ピクセルキャッシュ1265は、列単位でイメージプレーンを出力することができる。一つの列のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の列のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の列のイメージプレーン1b〜3b、2番目の列のイメージプレーン1c〜3c、3番目の列のイメージプレーン1d〜3d、4番目の列のイメージプレーン1e〜3e、5番目の列のイメージプレーン1f〜3f、6番目の列のイメージプレーン1g〜3g、及び7番目の列のイメージプレーン1h〜4hを順に出力することができる。
要請REQ1が基準点RPのアドレス及び列方向の距離OFF_Yを含む場合、ピクセルキャッシュ1265から出力されるデータCDは、要請されたデータRDだけでなく、要請されたデータRDに属していないイメージプレーンをさらに含むことができる。要請REQ1を伝送したマスタ(イメージプロセッシング装置1260又はアプリケーションプロセッサ1200、(図1参照)の他の構成要素)は、ピクセルキャッシュ1265から受信されるイメージプレーンCDのうち要請されたデータRDに対応する部分のみを選択して演算を実行することができる。
別の例として、要請REQ1に応答して、ピクセルキャッシュ1265は、要請されたデータRDに対応するデータのみを出力することができる。例えば、1番目の行のイメージプレーン1b〜1hで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。同様に、3番目の行のイメージプレーン3b〜3h、1番目の列のイメージプレーン1b〜3b、及び7番目の列のイメージプレーン1h〜3hで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。
イメージを処理するマスタは、空間的局所性(spartial locality)に基づいて2次元イメージを求めることができる。本発明の実施形態によるピクセルキャッシュ1265が適用されれば、一回の要請REQ1を通じて、ピクセルキャッシュ1265の複数のラインフィルユニットに対応する複数のイメージプレーンを要請することができる。したがって、ピクセルキャッシュ1265へのアクセス回数が減少し、ピクセルキャッシュ1265を含むイメージプロセッシング装置1260又はアプリケーションプロセッサ1200の動作性能は向上する。
図12及び図13を参照して説明した要請方式は、複数のイメージプレーンを要請した場合に限定されない。例えば、図7を参照して説明したように、要請されたデータRDが一つのイメージプレーン内に属している場合にも、要請REQ1は、基準点RPのアドレス及び列方向の距離OFF_Yを含むことができる。すなわち、図12及び図13を参照して説明した要請方式は、要請されたデータRDのサイズに関係なく適用することができる。したがって、マスタが必要とする要請されたデータRDのサイズが可変する場合にも、同じ方法で要請を伝送することができる。
図14は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第4例を示す。図5及び図14を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
図12に示した実施形態と異なり、図14に示した実施形態による要請REQ1は、基準点RPが属したイメージプレーンIP_1bのアドレス及び列方向の長さOFF_Yに対する情報を含むことができる。列方向の長さOFF_Yは、要請されたデータRDが属したイメージプレーンの列方向の長さを含むことができる。
基準点RPが属したイメージプレーンIP_1bのアドレスは、該当イメージプレーンIP_1bのアドレスのうち最も低いアドレスであり得る。基準点RPが属したイメージプレーンIP_1bのアドレスは、基準点RPが属したイメージプレーンIP_1bの左上端のアドレスであり得る。
図14に示した方法によって要請REQ1が伝送されれば、ピクセルキャッシュ1265は、図13に示した方法によってイメージプレーンを出力することができる。
図15は、ピクセルキャッシュ1265が、複数のイメージプレーンの要請を受信する方法の第5例を示す。図5及び図15を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
ピクセルキャッシュ1265に対する要請REQ1は、要請されたデータRDの基準点RPのアドレス、基準点RPからの要請されたデータRDの行方向の長さOFF_Xに対する情報、そして基準点RPからの要請されたデータRDの列方向の長さOFF_Yに対する情報を含むことができる。基準点RPは、要請されたデータRDのアドレスのうち最も低いアドレスに対応する位置であり得る。基準点RPは、要請されたデータRDの左上端の位置であり得る。
図16は、図15の要請に応じてピクセルキャッシュ1265が要請されたデータRDを出力する例を示す。図5、図15及び図16を参照すると、ピクセルキャッシュ1265は、少なくとも2つの方法で要請されたデータRDを出力することができる。
第1の例として、ピクセルキャッシュ1265は、行単位でイメージプレーンを出力することができる。一つの行のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の行のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の行のイメージプレーン1b〜1d、2番目の行のイメージプレーン2b〜2d、及び3番目の行のイメージプレーン3b〜3dを順に出力することができる。
第2の例として、ピクセルキャッシュ1265は、列単位でイメージプレーンを出力することができる。一つの列のイメージプレーンが出力された後、ピクセルキャッシュ1265は、次の列のイメージプレーンを出力することができる。例示的に、ピクセルキャッシュ1265は、1番目の列のイメージプレーン1b〜3b、2番目の列のイメージプレーン1c〜3c、3番目の列のイメージプレーン1d〜3dを順に出力することができる。
要請REQ1が基準点RPのアドレス、行方向の距離OFF_X及び列方向の距離OFF_Yを含む場合、ピクセルキャッシュ1265から出力されるデータCDは、要請されたデータRDに対応するイメージプレーンを含むことができる。要請REQ1を伝送したマスタ(イメージプロセッシング装置1260又はアプリケーションプロセッサ1200(図1参照)の他の構成要素)は、ピクセルキャッシュ1265から受信されるイメージプレーンのうち要請されたデータRDに対応する部分のみを選択して演算を実行することができる。
別の例として、要請REQ1に応答して、ピクセルキャッシュ1265は、要請されたデータRDに対応するデータのみを出力することができる。例えば、1番目の行のイメージプレーン1b〜1dで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。同様に、3番目の行のイメージプレーン3b〜3c、1番目の列のイメージプレーン1b〜3b、及び4番目の列のイメージプレーン1e〜3eで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。
イメージを処理するマスタは、空間的局所性(spartial locality)に基づいて2次元イメージを求めることができる。本発明の実施形態によるピクセルキャッシュ1265が適用されれば、一回の要請REQ1を通じて、ピクセルキャッシュ1265の複数のラインフィルユニットに対応する複数のイメージプレーンを要請することができる。したがって、ピクセルキャッシュ1265へのアクセス回数が減少し、ピクセルキャッシュ1265を含むイメージプロセッシング装置1260又はアプリケーションプロセッサ1200の動作性能は向上する。
図15及び図16を参照して説明した要請方式は、複数のイメージプレーンを要請した場合に限定されない。例えば、図7を参照して説明したように、要請されたデータRDが一つのイメージプレーン内に属した場合にも、要請REQ1は、基準点RPのアドレス、行方向の距離OFF_X及び列方向の距離OFF_Yを含むことができる。すなわち、図15及び図16を参照して説明した要請方式は、要請されるデータRDのサイズに関係なく適用することができる。したがって、マスタが必要とする要請されたデータRDのサイズが可変する場合にも、同じ方法で要請を伝送することができる。
図17は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第6例を示す。図5及び図17を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
図15に示した実施形態と異なり、図17に示した実施形態による要請REQ1は、基準点RPが属したイメージプレーンIP_1bのアドレス、行方向の長さOFF_X及び列方向の長さOFF_Yに対する情報を含むことができる。行方向の長さOFF_Xは、要請されたデータRDが含まれたイメージプレーンの行方向の長さを含むことができる。列方向の長さOFF_Yは、要請されたデータRDが含まれたイメージプレーンの列方向の長さを含むことができる。
基準点RPが属したイメージプレーンIP_1bのアドレスは、該当イメージプレーンIP_1bのアドレスのうち最も低いアドレスであり得る。基準点RPが属したイメージプレーンIP_1bのアドレスは、基準点RPが属したイメージプレーンIP_1bの左上端のアドレスであり得る。
図17に示した方法によって要請REQ1が伝送されれば、ピクセルキャッシュ1265は、図15に示した方法によってイメージプレーンを出力することができる。
図18は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第7例を示す。図5及び図18を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
ピクセルキャッシュ1265の要請REQ1は、要請されたデータRDの基準点RPのアドレス及び第2基準点RP2のアドレスを含むことができる。基準点RPは、要請されたデータRDのアドレスのうち最も低いアドレスに対応する位置であり得る。基準点RPは、要請されたデータRDの左上端の位置であり得る。第2基準点RP2は、要請されたデータRDのアドレスのうち最も高いアドレスに対応する位置であり得る。第2基準点RP2は、要請されたデータRDの右下端の位置であり得る。
図18に示した方法によって要請REQ1が伝送されれば、ピクセルキャッシュ1265は、図15に示した方法によってイメージプレーンを出力することができる。
要請REQ1が基準点RPのアドレス及び第2基準点RP2のアドレスを含む場合、ピクセルキャッシュ1265から出力されるデータCDは、要請されたデータRDに対応するイメージプレーンを含むことができる。要請REQ1を伝送したマスタ(イメージプロセッシング装置1260又はアプリケーションプロセッサ1200、(図1参照)の他の構成要素)は、ピクセルキャッシュ1265から受信されるイメージプレーンのうち要請されたデータRDに対応する部分のみを選択して演算を実行することができる。
別の例として、要請REQ1に応答して、ピクセルキャッシュ1265は、要請されたデータRDに対応するデータのみを出力することができる。例えば、1番目の行のイメージプレーン1b〜1dで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。同様に、3番目の行のイメージプレーン3b〜3c、1番目の列のイメージプレーン1b〜3b、及び4番目の列のイメージプレーン1e〜3eで、全体のデータの代わりに要請されたデータRDに対応する部分のみを出力することができる。
イメージを処理するマスタは、空間的局所性(spartial locality)に基づいて2次元イメージを求めることができる。本発明の実施形態によるピクセルキャッシュ1265が適用されれば、一回の要請REQ1を通じて、ピクセルキャッシュ1265の複数のラインフィルユニットに対応する複数のイメージプレーンを要請することができる。したがって、ピクセルキャッシュ1265へのアクセス回数が減少し、ピクセルキャッシュ1265を含むイメージプロセッシング装置1260又はアプリケーションプロセッサ1200の動作性能は向上する。
図18を参照して説明した要請方式は、複数のイメージプレーンを要請する場合に限定されない。例えば、図7を参照して説明したように、要請されたデータRDが一つのイメージプレーンに属している場合にも、要請REQ1は、基準点RPのアドレス及び第2基準点RP2のアドレスを含むことができる。すなわち、図18を参照して説明した要請方式は、要請されたデータRDのサイズに関係なく適用することができる。したがって、マスタが必要とする要請されたデータRDのサイズが可変する場合にも、同じ方法で要請を伝送することができる。
図19は、ピクセルキャッシュ1265が複数のイメージプレーンの要請を受信する方法の第8例を示す。図5及び図19を参照すると、行1〜4と列a〜hに沿って配置されたイメージプレーンIPが含まれたイメージを示す。要請されたデータRDは、行1〜3と列b〜eに沿って配置されたイメージプレーンに対応することができる。
図18に示した実施形態と異なり、図19に示した実施形態による要請REQ1は、基準点RPが属したイメージプレーンIP_1bのアドレス及び第2基準点RP2が属したイメージプレーンIP_3eのアドレスを含むことができる。基準点RPが属したイメージプレーンIP_1bのアドレスは、該当イメージプレーンIP_1bのアドレスのうち最も低いアドレスであり得る。基準点RPが属したイメージプレーンIP_1bのアドレスは、基準点RPが属したイメージプレーンIP_1bの左上端のアドレスであり得る。第2基準点RP2が属したイメージプレーンIP_3eのアドレスは、イメージプレーンIP_3eのアドレスのうち最も低いアドレスであり得る。第2基準点RP2が属したイメージプレーンIP_3eのアドレスは、第2基準点RP2が属したイメージプレーンIP_3eの左上端のアドレスであり得る。
図19に示した方法によって要請REQ1が伝送されれば、ピクセルキャッシュ1265は、図15に示した方法によってイメージプレーンを出力することができる。
図9〜図19において、ピクセルキャッシュ1265が受信する要請の実施形態を説明した。ピクセルキャッシュ1265は、マスタから図9〜図19を参照して説明した方法のうちの一つによる要請を受信することができる。ピクセルキャッシュ1265のマスタ(例えば、イメージプロセッシング装置1260又はアプリケーションプロセッサ1200の他の構成要素のうち少なくとも一つ)は、図9〜図19を参照して説明した実施形態のうちの一つによってピクセルキャッシュ1265に要請を伝送することができる。別の例として、ピクセルキャッシュ1265のマスタの要請を、図9〜図19を参照して説明した実施形態のうちの一つによる要請に変換する変換部をアプリケーションプロセッサ1200、イメージプロセッシング装置1260、又はピクセルキャッシュ1265に備えることができる。
図20は、本発明の第2実施形態によるピクセルキャッシュ1265aを示すブロック図である。図1、図4及び図20を参照すると、ピクセルキャッシュ1265aは、データメモリDMと、タグメモリTMと、マルチプレクサ部MU1〜MU4と、比較部CUと、ヒット及びミス判別部HMDUと、置換部RMUと、ステートマシンSMと、ミス制御部MCUと、ラインフィル制御部LCUと、ラインフィルバッファLBと、特殊機能レジスタSFRとを含む。図5のピクセルキャッシュ1265と比較すると、ピクセルキャッシュ1265aは、特殊機能レジスタSFRをさらに含んでいる。
特殊機能レジスタSFRは、ピクセルキャッシュ1265aの動作に必要な様々な情報を格納することができる。特殊機能レジスタSFRは、ピクセルキャッシュ1265aの外部装置によってプログラムされるか、又はピクセルキャッシュ1265aのユーザによって設定される。特殊機能レジスタSFRは、サイズ情報SIを格納することができる。
サイズ情報SIは、ピクセルキャッシュ1265aのラインフィルユニットのサイズに関する情報を示すことができる。ピクセルキャッシュ1265aは、ラインフィルユニットのサイズをサイズ情報SIに対応するサイズに管理することができる。
例えば、ステートマシンSMは、特殊機能レジスタSFRからサイズ情報SIを受信し、受信されたサイズ情報SIに基づいて、ピクセルキャッシュ1265aを制御することができる。ステートマシンSMは、サイズ情報SIに対応するサイズを有するイメージプレーンのデータを格納するように、データメモリDMを制御することができる。ステートマシンSMは、サイズ情報SIに対応するサイズを有するイメージプレーンのタグ情報を格納するようにタグメモリTMを制御することができる。ステートマシンSMは、サイズ情報SIに対応するイメージプレーンをフェッチ及び出力するように、ピクセルキャッシュ1265aの構成要素を制御することができる。
ミス制御部MCUは、サイズ情報SIに対応するサイズを有するイメージプレーンをメインメモリ1300に要請することができる。
ラインフィル制御部LCUは、サイズ情報SIに対応するサイズを有するイメージプレーンを格納するようにラインフィルバッファLBを制御することができる。
図21は、図20のピクセルキャッシュ1265aの動作方法を示すフローチャートである。図20及び図21を参照すると、S310段階において、サイズ調節要請を受信する。例えば、ピクセルキャッシュ1265aは、特殊機能レジスタSFRにサイズ情報SIがプログラムされるか、又はサイズ情報SIが設定されることを認識することができる。例えば、ピクセルキャッシュ1265aを含むシステムオンチップ又はモバイル装置に電源が供給されれば、ピクセルキャッシュ1265aをアクセスするマスタ装置がピクセルキャッシュ1265aにサイズ情報SIを伝送することができる。マスタ装置は、マスタ装置が使用するイメージプレーンのサイズをサイズ情報SIでピクセルキャッシュ1265aに伝送することができる。
S320段階において、ラインフィルユニットのサイズを調節する。ピクセルキャッシュ1265aは、特殊機能レジスタSFRに格納されたサイズ情報SIに基づいて、ラインフィルユニットのサイズを調整することができる。
S330段階において、ラインフィルユニットの調節されたサイズによってデータをフェッチする。ピクセルキャッシュ1265aは、ラインフィルユニットの調節されたサイズによって、メインメモリ1300からデータをフェッチすることができる。ピクセルキャッシュ1265aは、フェッチされたデータを出力することができる。
図22は、ラインフィルユニットのサイズが制御されることによって、データメモリDMが管理される例を示す。例示的に、ラインフィルユニットのサイズが倍増した場合の例を図22に示す。図20及び図22を参照すると、データメモリDMの複数のウェイがグループ化して1つの仮想ウェイを形成することができる。例えば、ウェイW1、W2が一つの仮想ウェイVW1を形成することができ、ウェイW3、W4が、他の一つの仮想ウェイを形成することができる。仮想ウェイVW1を形成するウェイW1の一つのラインフィルユニットとウェイW2の一つのラインフィルユニットは、一つのラインフィルユニットに管理することができる。
ラインフィルユニットのサイズが可変する例は、図22に示した例に限定されない。例えば、各ウェイの各ラインフィルユニットが分割され、複数のラインフィルユニットに管理することができる。
図23は、マスタ装置の演算ユニットのサイズ及びそれによるラインフィルユニットのサイズを示すテーブルである。図23を参照すると、ピクセルキャッシュ1265aをアクセスするマスタ装置の演算ユニットサイズが16×16の場合、ピクセルキャッシュ1265aのラインフィルユニットのサイズは16×4とすることができる。この時、マスタ装置は、一回の演算を実行するために、ピクセルキャッシュ1265aに4回のアクセス要請を伝送する。バースト長は1であり得る。
マスタ装置の演算ユニットのサイズが32×32の場合、ピクセルキャッシュ1265aのラインフィルユニットのサイズは32×4に調節することができる。この時、マスタ装置は、一回の演算を実行するために、ピクセルキャッシュ1265aに4回のアクセス要請を伝送する。バースト長は2であり得る。
マスタ装置の演算ユニットのサイズが64×64の場合、ピクセルキャッシュ1265aのラインフィルユニットのサイズは64×4に調節することができる。この時、マスタ装置は、一回の演算を実行するために、ピクセルキャッシュ1265aに4回のアクセス要請を伝送する。バースト長は4であり得る。
上述のように、ピクセルキャッシュ1265aのラインフィルユニットのサイズがマスタ装置の演算ユニットのサイズに応じて可変すれば、マスタ装置の演算ユニットのサイズが変化しても、マスタ装置がピクセルキャッシュ1265aをアクセスする回数は、増加しない。したがって、ピクセルキャッシュ1265a及びピクセルキャッシュを含むモバイル装置の動作性能が向上する。
図24は、本発明の第3実施形態によるピクセルキャッシュ1265bを示すブロック図である。図1、図4及び図24を参照すると、ピクセルキャッシュ1265bは、データメモリDMと、タグメモリTMと、マルチプレクサ部MU1〜MU4と、比較部CUと、ヒット及びミス判別部HMDUと、置換部RMUと、ステートマシンSMと、ミス制御部MCUと、ラインフィル制御部LCUと、ラインフィルバッファLBと、特殊機能レジスタSFRとを含む。図5のピクセルキャッシュ1265と比較すると、ピクセルキャッシュ1265bは、特殊機能レジスタSFRをさらに含んでいる。
特殊機能レジスタSFRは、ピクセルキャッシュ1265bの動作に必要な様々な情報を格納することができる。特殊機能レジスタSFRは、ピクセルキャッシュ1265bの外部装置によってプログラムされるか、又はピクセルキャッシュ1265bのユーザによって設定される。特殊機能レジスタSFRは、多重情報MIを格納することができる。
多重情報MIは、ピクセルキャッシュ1265bが同時に処理できるイメージプレーンの数を示す。多重情報MIは、ピクセルキャッシュ1265bが同時に処理できる要請REQの数を示す。例示的に、同時に2つの要請REQ1、REQ2を処理することができるピクセルキャッシュ1265bの例を図24に示す。
ピクセルキャッシュ1265bの各構成要素は、第1要請REQ1及び第2要請REQ2を各々処理するように分割することができる。例えば、タグメモリTMのタグウェイTW1a〜TWna、マルチプレクサ部MU1のマルチプレクサM1a〜Mna、比較部CUの比較器CP1a〜CPna、ヒット及びミス判別部HMDUa、置換部RMUa、マルチプレクサ部MU2a、マルチプレクサ部MU3a、マルチプレクサ部MU4a、ステートマシンSMa、ミス制御部MCUa、ラインフィル制御部LCUa、及びラインフィルバッファLBaは、第1要請REQ1に応答して動作することができる。これらは、第1要請REQ1に対応してヒット及びミス信号HMIaを発生し、メインメモリ1300に要請REQ2aを伝送し、メインメモリ1300からデータD2a及び信号S2aを受信し、データD1a及び信号S1aを出力することができる。
タグメモリTMのタグウェイTW1b〜TWnb、マルチプレクサ部MU1のマルチプレクサM1b〜Mnb、比較部CUの比較器CP1b〜CPnb、ヒット及びミス判別部HMDUb、置換部RMUb、マルチプレクサ部MU2b、マルチプレクサ部MU3b、マルチプレクサ部MU4b、ステートマシンSMb、ミス制御部MCUb、ラインフィル制御部LCUb、及びラインフィルバッファLBbは、第2要請REQ2に応答して動作することができる。これらは第2要請REQ2に対応してヒット及びミス信号HMIbを発生し、メインメモリ1300に要請REQ2bを伝送し、メインメモリ1300からデータD2b及び信号S2bを受信し、データD1b及び信号S1bを出力することができる。
データメモリDMは、多重情報MIによって複数のグループに分割することができる。各グループは、1つの要請に対応するイメージプレーンを格納することができる。例示的に、図24に示すように、データメモリDMの複数のウェイW1〜Wnは、複数のグループを形成することができる。データメモリDMの各ウェイは、複数のグループを形成するように分割することができる。データメモリDMの各ラインフィルユニットは、複数のグループを形成するように分割することができる。
例示的に、データメモリDMと同様に、タグメモリTM、マルチプレクサ部MU1、比較部CUは、多重情報MIに応答して複数の要請REQ1、REQ2を処理するように分割することができる。別の例として、タグメモリTMのタグウェイTW1b〜TWnb、マルチプレクサ部MU1のマルチプレクサM1b〜Mnb、比較部CUの比較器CP1b〜CPnbは、多重情報MIに応答して活性化又は非活性化することができる。
ヒット及びミス判別部HMDUb、置換部RMUb、マルチプレクサ部MU2b、マルチプレクサ部MU3b、マルチプレクサ部MU4b、ステートマシンSMb、ミス制御部MCUb、ラインフィル制御部LCUb、及びラインフィルバッファLBbは、多重情報MIに応答して活性化又は非活性化することができる。
図25は、図24のピクセルキャッシュ1265bの動作方法を示すフローチャートである。図24と図25を参照すると、S410段階において、分割要請を受信する。分割要請は、ピクセルキャッシュ1265bが同時に複数の要請を処理できるように分割するかを示す要請であり得る。例えば、ピクセルキャッシュ1265bは、特殊機能レジスタSFRに多重情報MIがプログラムされるか、又は多重情報MIが構成されることを認識することができる。例えば、ピクセルキャッシュ1265bを含むシステムオンチップ又はモバイル装置に電源が供給される時、ピクセルキャッシュ1265bをアクセスするマスタ装置がピクセルキャッシュ1265bに多重情報MIを伝送することができる。
S420段階において、分割の要請によって、少なくとも2つのキャッシュ領域が割り当てられる。ピクセルキャッシュ1265bは、多重情報MIによって、データメモリDMを少なくとも2つの領域に分割することができる。
S430段階において、分割されたキャッシュ領域によって、少なくとも2つのイメージプレーンのデータが同時にフェッチされる。
図26は、本発明の第4の実施形態によるピクセルキャッシュ1265cを示すブロック図である。図1、図4及び図26を参照すると、ピクセルキャッシュ1265cは、データメモリDMと、タグメモリTMと、マルチプレクサ部MU1〜MU4と、比較部CUと、ヒット及びミス判別部HMDUと、置換部RMUと、ステートマシンSMと、ミス制御部MCUと、ラインフィル制御部LCUと、ラインフィルバッファLBと、ミス比較器MCPと、ミスレジスタMFFと、ヒットアンダーミスレジスタHUMFFとを含む。図5のピクセルキャッシュ1265と比較すると、ピクセルキャッシュ1265cは、ミス比較器MCP、ミスレジスタMFF、及びヒットアンダーミスレジスタHUMFFをさらに含んでいる。
ミスレジスタMFFは、ヒット及びミス情報HMIに応答して、要請REQ1に含まれたアドレスを格納することができる。例えば、ヒット及びミス情報HMIがミスを示す時、ミスレジスタMFFは、要請REQ1に含まれたアドレスを格納することができる。ミスレジスタMFFは、複数のフリップフロップを含むことができる。
ミス比較器MCPは、ヒット及びミス情報HMIに応答して、要請REQ1に含まれたアドレスとミスレジスタMFFに格納されたレジスタとを比較することができる。例えば、ミス比較器MCPは、ヒット及びミス情報HMIがミスを示す時、比較を実行することができる。
ヒットアンダーミスレジスタHUMFFは、ヒット及びミス情報HMIに応答して、要請REQ1に含まれたアドレスを格納することができる。例えば、ピクセルキャッシュ1265cがイメージプレーンのフェッチを実行中であるか、又はミスレジスタMFFにアドレスが格納されており、ヒット及びミス情報HMIがヒットを示す時、ヒットアンダーミスレジスタHUMFFは、要請REQ1に含まれたアドレスを格納することができる。ヒットアンダーミスレジスタHUMFFは、複数のフリップフロップを含むことができる。
ピクセルキャッシュ1265cは、ノンブロッキング(non−blocking)キャッシュであり得る。要請REQ1がミスとして判定される時、要請REQ1に含まれたアドレスは、ミスレジスタMFFに格納することができる。ミスとして判定されたアドレスがミスレジスタMFFに格納された後、ピクセルキャッシュ1265cは、次の要請REQ1を受信すると同時に、ミスとして判定されたアドレスに対応するイメージプレーンをフェッチすることができる。例えば、ミス制御部MCUは、ミスレジスタMFFに格納されたアドレスに基づいて、要請REQ2を出力することができる。
ミス制御部MCUによってイメージプレーンをフェッチする間、次の要請REQ1を処理することができる。次の要請REQ1がヒットである場合、次の要請REQ1に含まれたアドレスは、ヒットアンダーミスレジスタHUMFFに格納することができる。次の要請REQ1がミスである場合、次の要請REQ1に含まれたアドレスは、ミスレジスタMFFに格納することができる。ミスレジスタMFFに格納されたアドレスに対応するイメージプレーンはミス制御部MCUによってフェッチされる。ヒットアンダーミスレジスタHUMFFに格納されたアドレスに対応するイメージプレーンは、データメモリDMから出力することができる。
ミスとして判定されたアドレスがミスレジスタMFFに既に格納されている場合、該当アドレスはミスフリップフロップに追加に格納されていない。このような判定は、ミス比較器MCPによって行うことができる。
図27は、図26のピクセルキャッシュ1265cの動作方法を示すフローチャートである。図26と図27を参照すると、S510段階において、ピクセルキャッシュ1265cは、要請REQ1を受信する。
S520段階において、要請REQ1がヒットであるか否かを判別する。受信された要請REQ1がヒットであれば、S540段階において、要請されたデータを出力する。受信された要請REQ1がミスであれば、S530段階において、要請されたデータをフェッチし、次の要請REQ1を受信する。要請されたデータのフェッチ及び次の要請REQ1の受信は同時に行うことができる。
図28は、図26のピクセルキャッシュ1265cの動作方法をより詳細に示すフローチャートである。図26と図28を参照すると、S610段階において、要請REQ1を受信する。
S620段階において、受信された要請REQ1がヒットであるか否かを判別する。受信された要請REQ1がミスであれば、S625段階において、受信された要請REQ1をミスレジスタMFFに格納する。その後、S650段階が実行される。受信された要請REQ1がヒットであれば、S630段階が実行される。
S630段階において、ミスの状況であるか否かを判断する。例えば、ミスが発生してデータのフェッチが実行されている状態で、ヒットが発生したか否かを判別する。ミスの状況でなければ、すなわち、ミスレジスタMFFに格納された要請が存在せず、イメージプレーンのフェッチが実行していない状態でヒットが発生した場合、S635段階が実行される。S635段階において、要請されたイメージプレーンが出力される。要請されたデータは、データメモリDMから出力することができる。例えば、要請REQ1がマルチプレクサ部MU2を通じてデータメモリDMに伝達され、データメモリDMから要請されたイメージプレーンを出力することができる。
ミスの状況であれば、すなわち、ミスレジスタMFFに格納された要請が存在するか、又はイメージプレーンのフェッチが実行されている状況でヒットが発生すれば、受信された要請REQ1をヒットアンダーミスレジスタHUMFFに格納する。
S650段階において、イメージプレーンのフェッチが実行中であるか否かを判別する。イメージプレーンのフェッチが実行されていれば、ミスレジスタMFF、又はヒットアンダーミスレジスタHUMFFに格納された要請によるフェッチを実行することができる。したがって、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請を参照せずに、S610段階で、次の要請REQ1が処理される。
イメージプレーンのフェッチが実行されていなければ、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請によるフェッチを実行することができる。S660段階において、格納されたシーケンスが存在するか否かを判別する。シーケンスは、外部から受信されてミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請のシーケンスであり得る。シーケンスは、格納された要請の順序に関する情報を含むことができる。ステートマシンSMがシーケンスを管理することができる。
格納されたシーケンスが存在しなければ、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請が存在しない。したがって、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請を参照せずに、S610段階で、次の要請REQ1が処理される。
格納されたシーケンスが存在すれば、S670段階において、現在のシーケンスがヒットアンダーミスレジスタHUMFFに対応するか否かを判別する。現在のシーケンスがヒットアンダーミスレジスタHUMFFに対応する場合、S635段階で要請されたイメージプレーンが出力され、S610段階で、次の要請が処理される。
現在のシーケンスがヒットアンダーミスレジスタHUMFFに対応しない場合、S680段階で、ミスレジスタMFFに格納された要請によってフェッチが開始される。
S610段階〜S680段階は、ピクセルキャッシュ1265cに電源が供給される間続いて行うことができる。
要約すると、S610段階〜S640段階を通じて、受信された要請REQ1の処理が実行される。ミスとして判断された要請REQ1は、ミスレジスタMFFに格納される。ヒットアンダーミスとして判別された要請REQ1は、ヒットアンダーミスレジスタHUMFFに格納される。純粋なヒットとして判別された要請REQ1はイメージプレーンを出力させる。受信された要請REQ1がミスとして判別されても、ピクセルキャッシュ1265cは、受信された要請REQ1をミスレジスタMFFに格納し、次の要請を連続して処理することができる。
S650段階〜S680段階において、ミスの状況に対する処理が実行される。イメージプレーンのフェッチが実行されていない時、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請のうち、シーケンスに対応する要請によってイメージプレーンのフェッチが実行される。一つのイメージプレーンのフェッチが終了すると、次のシーケンスの要請によってイメージプレーンのフェッチが実行される。
すなわち、S610段階〜S640段階で、イメージプレーンを出力したり、ミスレジスタMFFの要請REQ1を格納したり、ヒットアンダーミスレジスタHUMFFの要請REQ1を格納する動作が実行される。S610段階〜S640段階は、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFをバッファとして使用して、要請REQ1をリアルタイムで接受する動作であり得る。
S650段階〜S680段階において、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請によってイメージプレーンのフェッチが実行される。フェッチされたイメージプレーンは出力され、フェッチされたイメージプレーンに対応する要請はミスレジスタMFF又はヒットアンダーミスレジスタHUMFFから削除される。S650段階〜S680段階は、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFに格納された要請を実行して、ミスレジスタMFF又はヒットアンダーミスレジスタHUMFFを空ける動作であり得る。
図28において、S610段階〜S680段階は、一つの方法で実行されるものとして示している。しかし、本発明の技術的思想はこれに限定されない。例えば、S610段階〜S640段階が外部から受信された要請REQ1を処理する1つの方法であり、S650段階〜S680段階がレジスタに格納された要請を処理する他の一つの方法であり得る。この方法は、互いに独立して実行することができる。
図29は、本発明の第5実施形態によるピクセルキャッシュ1265dを示すブロック図である。例示的に、ピクセルキャッシュ1265dは、図5、図20、図24、及び図26に示したピクセルキャッシュ1265、1265a、1265b、1265cの組み合わせた形態を有することができる。ピクセルキャッシュ1265dは、一つのラインフィルユニットにイメージプレーンを格納することができる。イメージプレーン又はラインフィルユニットのサイズは、特殊機能レジスタSFRに格納されたサイズ情報SIによって調節することができる。ピクセルキャッシュ1265dは、多重情報MIに対応する数の要請REQ1a、REQ1bを同時に処理することができる。ピクセルキャッシュ1265dは、ノンブロッキングキャッシュであり得る。
図29に示すように、図5、図20、図24、及び図26に示したピクセルキャッシュ1265、1265a、1265b、1265cのうち少なくとも2つのピクセルキャッシュを組み合わせて使用することができる。
例示的に、ピクセルキャッシュ1265dは、多重情報MIによって、複数の要請REQ1、REQ2を同時に処理するように設定される時、各要請に対応するイメージプレーン(又はラインフィルユニット)のサイズは、サイズ情報SIに応じて個別に設定することができる。
図30は、本発明の第6実施形態によるピクセルキャッシュ1265eを示すブロック図である。図29のピクセルキャッシュ1265dと比較すると、ピクセルキャッシュ1265eは、マルチプレクサ部MU5、MU6をさらに含んでいる。マルチプレクサ部MU5、MU6は、モード情報MIに応答して動作することができる。
モード情報MIに応答して、ミス比較器MCP1b〜MCPkb及びミスレジスタMFFbが活性化するか否か、データメモリDMbが活性化するか否かを決定することができる。例示的に、データメモリDMbが非活性化する場合に、データメモリDMbは、データメモリDMaの一部として管理することができる。
サイズ制御部SCUは、サイズ情報SIによってピクセルキャッシュ1265eのラインフィルユニットのサイズを管理することができる。
例示的に、サイズ情報SI及びモード情報MIは、ピクセルキャッシュ1265eの外部から受信することができる。すなわち、サイズ情報SI及びモード情報MIを格納する特殊機能レジスタSFRは、ピクセルキャッシュ1265eの外部に提供することができる。
ミス制御部MCUa、MCUbの各々は、外部チャネルと通信するインターフェイス、読み出しステートマシン、多重実行制御を含む。読み出しステートマシンは、メインメモリ1300(図1参照)に読み出し要請REQ2a、REQ2bを伝送することができる。多重実行制御は、イメージプレーンをフェッチする周期を制御することができる。例えば、ミスが複数回発生する場合、複数回のイメージプレーンのフェッチが要請される。複数回のイメージプレーンのフェッチが短い時間の間に集中的に発生すれば、メインメモリ1300でボトルネック(bottle neck)現象が発生することがある。多重実行制御は、イメージプレーンのフェッチが実行される周期又は頻度を調整して、メインメモリ1300でボトルネック現象が発生することを防止することができる。
本発明の技術的思想がイメージプロセッシング装置を参照して説明された。しかし、本発明の技術的思想にしたがうイメージプロセッシング装置は、グラフィックプロセッシングユニットGPU、ビデオコーデック、ディスプレーコントローラ,イメージ信号プロセッサISP等のような多様なイメージプロセッシングハードウェアの中で少なくとも1つを包含することができる。即ち、本発明の技術的思想にしたがうピクセルキャッシュは、グラフィックプロセッシングユニットGPU、ビデオコーデック、ディスプレーコントローラ、イメージ信号プロセッサISP等のような多様なイメージプロセッシングハードウェアの中で少なくとも1つの構成要素として提供され得る。
本発明の詳細な説明では具体的な実施形態について説明したが、本発明の範囲と技術的思想から逸脱しない範囲内で様々な変形が可能である。したがって、本発明の範囲は、上述の実施形態に限定されず、後述する特許請求の範囲だけでなく、本発明の特許請求の範囲と均等なものにより定められなければならない。
1000・・・モバイル装置
1100・・・システムバス
1200・・・アプリケーションプロセッサ
1300・・・メインメモリ
1400・・・モデム
1500・・・ユーザインターフェース
1600・・・ストレージ
1210・・・内部バス
1220・・・コアプロセッサ
1230・・・デジタル信号プロセッサ
1240・・・ダイレクトメモリアクセス
1250・・・メモリコントローラ
1260・・・イメージプロセッシング装置
1261・・・動作検出部
1263・・・動作補償部
1265・・・ピクセルキャッシュ
DM・・・データメモリ
TM・・・タグメモリ
MU1〜MU6・・・マルチプレクサ部
CU・・・比較部
HMDU・・・ヒット及びミス判別部
RMU・・・置換部
SM・・・ステートマシン
MCU・・・ミス制御部
LCU・・・ラインフィル制御部
LB・・・ラインフィルバッファ
SFR・・・特殊機能レジスタ
MFF・・・ミスレジスタ
MCP・・・ミス比較器
HUMFF・・・ヒットアンダーミスレジスタ
SI・・・サイズ情報
MI・・・多重情報

Claims (10)

  1. メインメモリに格納されたイメージをフェッチするように構成されるピクセルキャッシュの動作方法において、
    前記メインメモリに格納されたイメージのイメージプレーンのデータを複数のラインフィルユニットのうちの一つのラインフィルユニットに格納する段階と、
    前記ラインフィルユニットに格納された前記イメージプレーンのデータをイメージプロセッシング装置に出力する段階とを含み、
    前記ラインフィルユニットは、前記ピクセルキャッシュで一時に格納されて出力されるデータの処理単位であり、
    前記イメージプレーンは、複数の行方向のピクセルと、複数の列方向のピクセルとを含み、前記ラインフィルユニットのサイズと同じサイズを有することを特徴とする動作方法。
  2. 前記イメージプレーンは、前記メインメモリで互いに不連続なアドレスを有する少なくとも2部分から前記一つのラインフィルユニットにフェッチされ、
    前記少なくとも2部分の各々は、少なくとも2つの連続したアドレスを有することを特徴とする請求項1に記載の動作方法。
  3. 前記出力する段階は、
    前記イメージプロセッシング装置からイメージプレーンのデータの要請を受信する段階と、
    前記要請がヒットの場合、前記要請に対応するイメージプレーンのデータを出力し、前記要請がヒットでなければ、前記メインメモリから前記要請に対応するイメージプレーンのデータをフェッチして出力する段階とを含み、
    前記要請に対応するイメージプレーンのデータが前記複数のラインフィルユニットのうちの一つに格納されていれば、ヒットとして判定されることを特徴とする請求項1に記載の動作方法。
  4. 前記出力する段階は、
    前記イメージプロセッシング装置から複数のイメージプレーンのデータの要請を受信する段階と、
    前記複数のイメージプレーンのうちヒットであるイメージプレーンのデータを出力し、前記複数のイメージプレーンのうちヒットでないイメージプレーンのデータをフェッチして出力する段階とを含み、
    前記複数のイメージプレーンのうち前記複数のラインフィルユニットに格納されたイメージプレーンはヒットとして判定されることを特徴とする請求項1に記載の動作方法。
  5. 前記格納する段階の前に、前記ラインフィルユニットのサイズを調節する段階をさらに含むことを特徴とする請求項1に記載の動作方法。
  6. 前記格納する段階の前に、前記複数のラインフィルユニットを第1ラインフィルユニット及び第2ラインフィルユニットに分割する段階をさらに含むことを特徴とする請求項1に記載の動作方法、
  7. 前記格納する段階は、
    第1イメージのイメージプレーンのデータを前記第1ラインフィルユニットのうちの一つの第1ラインフィルユニットに格納する段階と、
    第2イメージのイメージプレーンのデータを前記第2ラインフィルユニットのうちの一つの第2ラインフィルユニットに格納する段階とを含み、
    前記第1ラインフィルユニットに格納する段階及び前記第2ラインフィルユニットに格納する段階は同時に実行されることを特徴とする請求項6に記載の動作方法。
  8. 前記出力する段階は、
    前記イメージプロセッシング装置からイメージプレーンのデータの要請を受信する段階と、
    前記要請がヒットであれば、前記要請に対応するイメージプレーンのデータを出力し、前記要請がヒットでなければ、前記メインメモリから前記要請に対応するイメージプレーンのデータをフェッチすると共に、前記イメージプロセッシング装置から第2イメージプレーンのデータの要請を受信する段階とを含み、
    前記要請に対応するイメージプレーンのデータが前記複数のラインフィルユニットのうちの一つに格納されていれば、ヒットとして判定されることを特徴とする請求項1に記載の動作方法。
  9. 複数のウェイを含み、各ウェイは、データを格納するように構成される複数のラインフィルユニットを格納するデータメモリと、
    前記複数のウェイに各々対応する複数のタグウェイを含み、各タグウェイは各ウェイの複数のラインフィルユニットに各々対応する複数のタグラインを含むタグメモリと、
    外部のメインメモリに格納されたイメージのイメージプレーンを要請するように構成されるミス制御部とを含み、
    前記メインメモリから受信されたイメージプレーンのデータは、前記データメモリの一つのラインフィルユニットに格納され、前記メインメモリから受信されたイメージプレーンのアドレスの情報は、前記タグメモリの1つのタグラインに格納され、
    前記ラインフィルユニットは、前記ピクセルキャッシュで一時に格納されて出力されるデータの処理単位であり、
    前記イメージプレーンは、複数の行方向のピクセル及び複数の列方向のピクセルを含み、前記ラインフィルユニットのサイズと同じサイズを有することを特徴とするピクセルキャッシュ。
  10. 前記ラインフィルユニットのサイズに対する情報を格納するように構成されるレジスタをさらに含み、
    前記レジスタに格納される情報に基づいて、前記ラインフィルユニットのサイズが調整されることを特徴とする請求項9に記載のピクセルキャッシュ。
JP2014010581A 2013-01-24 2014-01-23 ピクセルキャッシュ及びピクセルキャッシュの動作方法 Pending JP2014142938A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0008117 2013-01-24
KR1020130008117A KR20140095296A (ko) 2013-01-24 2013-01-24 픽셀 캐시 및 픽셀 캐시의 동작 방법

Publications (1)

Publication Number Publication Date
JP2014142938A true JP2014142938A (ja) 2014-08-07

Family

ID=50287493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014010581A Pending JP2014142938A (ja) 2013-01-24 2014-01-23 ピクセルキャッシュ及びピクセルキャッシュの動作方法

Country Status (5)

Country Link
US (1) US20140204108A1 (ja)
JP (1) JP2014142938A (ja)
KR (1) KR20140095296A (ja)
CN (1) CN103971327A (ja)
GB (1) GB2513216A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102491651B1 (ko) * 2015-12-14 2023-01-26 삼성전자주식회사 비휘발성 메모리 모듈, 그것을 포함하는 컴퓨팅 시스템, 및 그것의 동작 방법
US10181176B2 (en) * 2016-03-04 2019-01-15 Samsung Electronics Co., Ltd. Efficient low-power texture cache architecture
CN116881180A (zh) * 2017-05-19 2023-10-13 莫维迪乌斯有限公司 用于当取回像素核时降低存储器延迟的方法、系统和设备
KR101952827B1 (ko) * 2018-06-29 2019-02-27 주식회사 맴레이 메모리 제어 장치 및 이를 포함하는 메모리 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6011565A (en) * 1998-04-09 2000-01-04 S3 Incorporated Non-stalled requesting texture cache
US7050063B1 (en) * 1999-02-11 2006-05-23 Intel Corporation 3-D rendering texture caching scheme
US20060026376A1 (en) * 2002-10-16 2006-02-02 Microsoft Corporation Retrieving graphics from slow retrieval storage devices
US7737985B2 (en) * 2006-11-09 2010-06-15 Qualcomm Incorporated Pixel cache for 3D graphics circuitry
US8780128B2 (en) * 2007-12-17 2014-07-15 Nvidia Corporation Contiguously packed data

Also Published As

Publication number Publication date
KR20140095296A (ko) 2014-08-01
GB201401195D0 (en) 2014-03-12
US20140204108A1 (en) 2014-07-24
CN103971327A (zh) 2014-08-06
GB2513216A (en) 2014-10-22

Similar Documents

Publication Publication Date Title
US10545672B2 (en) Method for accessing extended memory, device, and system
US9830264B2 (en) Cache memory system and operating method for the same
US10067872B2 (en) Memory speculation for multiple memories
JP5663009B2 (ja) 原画像をワープまたは回転させて表示する装置、その方法、そのコンピュータプログラムおよびそれを記録した記録媒体
US10257456B2 (en) Hardware friendly virtual frame buffer
US9563562B2 (en) Page crossing prefetches
KR20170103649A (ko) 버퍼를 이용하여 텍스처 데이터에 액세스하는 방법 및 장치
JP4451717B2 (ja) 情報処理装置および情報処理方法
JP2014142938A (ja) ピクセルキャッシュ及びピクセルキャッシュの動作方法
WO2018211122A1 (en) Methods, systems and apparatus to reduce memory latency when fetching pixel kernels
US11016802B2 (en) Techniques for ordering atomic operations
CN113711166B (zh) 语义增强的人工现实体验
JP5569312B2 (ja) メモリアクセス判定回路、メモリアクセス判定方法、キャッシュ制御装置および電子機器
JP5849724B2 (ja) 映像取得装置及び方法
US8332568B2 (en) Memory access determination circuit, memory access determination method and electronic device
JPWO2011161723A1 (ja) 描画装置および描画方法
EP3321793A1 (en) Method and system for real-time slide displaying of scanned image
US9299126B2 (en) Image processing apparatus and a method of storing encoded data blocks generated by such an image processing apparatus
JP2010134584A (ja) メモリ管理装置、メモリ管理方法およびプログラム
JP5662702B2 (ja) 画像処理装置、画像処理方法
US20120327096A1 (en) Image generating device
WO2020239211A1 (en) Electronic device and method of operating such an electronic device
JP4409561B2 (ja) イベント通知方法および情報処理装置ならびにプロセッサ
JP2009003632A (ja) 画像処理システム
WO2020211935A1 (en) An electronic device and a method of operating such the electronic device

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20161222

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20161228