Nothing Special   »   [go: up one dir, main page]

JP4854746B2 - ベクトルグラフィックハードウエアにおけるバッファ管理 - Google Patents

ベクトルグラフィックハードウエアにおけるバッファ管理 Download PDF

Info

Publication number
JP4854746B2
JP4854746B2 JP2008539463A JP2008539463A JP4854746B2 JP 4854746 B2 JP4854746 B2 JP 4854746B2 JP 2008539463 A JP2008539463 A JP 2008539463A JP 2008539463 A JP2008539463 A JP 2008539463A JP 4854746 B2 JP4854746 B2 JP 4854746B2
Authority
JP
Japan
Prior art keywords
value
counter
memory
store
processor unit
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.)
Active
Application number
JP2008539463A
Other languages
English (en)
Other versions
JP2009516251A (ja
Inventor
ミカ トゥオミ
Original Assignee
アドバンスド マイクロ ディバイセズ インコーポレイテッド
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 アドバンスド マイクロ ディバイセズ インコーポレイテッド filed Critical アドバンスド マイクロ ディバイセズ インコーポレイテッド
Publication of JP2009516251A publication Critical patent/JP2009516251A/ja
Application granted granted Critical
Publication of JP4854746B2 publication Critical patent/JP4854746B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Image Input (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本発明は一般にバッファ管理、特に、ベクトルグラフィックハードウエアでのバッファ管理に関する。
近年、ベクトルグラフィックシステムおよびアルゴリズムがエラーに強く、正確な可視化を達成するために開発され、計算機支援設計(CAD)やグラフィックアプリケーションなどの分野で要求されるソフトウエアアプリケーションに使用されてきた。
ベクトルグラフィックを使用する利点はグラフィックの品質を失うことなく、より大きなグラフ作成が出来るスケーラビリティを含んでいる。
図面または設計図作成におけるベクトルは通常、出発点、方向および長さまたは終点をもっている。
このようにして、1本の線は他の方法のように線の各ピクセルを示すよりは少ない情報を持つベクトルグラフィックを使用して表現できる。
さらに、ベクトルは1本の直線である必要はなく、例えば曲線を定義する追加の情報を含んだ曲線などにも使用できる。
対応するグラフィックアプリケーションの実行中に使用される対応するフォーマット、対応するグラフィック情報を記憶するファイルフォーマット、ベクトルグラフィックの基本および使用されるソフトウエアアプリケーションなどは既知であり、ここでは詳細は説明しない。
さらに、ここに参考文献として組み込まれ、ハードウエアアクセレレート2次元ベクトルおよびラスタグラフィックアプリケーション用のアプリケーションプログラミングインタフェース(API)を含む、2005年7月28日のKhronosグループによるOpenVG1.0標準のようないくつかのグラフィック標準が開発されている。
この標準は複雑な2次元グラフィックアプリケーション用の、デバイスに無関係でベンダーにも偏らないインタフェースを提供する一方で、デバイス製造者が腕時計、マイクロプロセッサベースのデスクトップシステム、サーバマシンなどに渡るデバイス上でハードウエアアクセレレーションを提供することを可能にする。
この標準はラスタ化、多角形の塗りつぶしなどのためにハードウエアおよび/またはソフトウエアドライバによって実現できる一式の関数用のインタフェースを提供する。
この標準には2つの異なった塗りつぶしルールであるノンゼロおよび奇数/偶数ルールが実装されており、標準の72ページに説明されている。
そのような塗りつぶし技術の基本的な原理は多角形の各辺は1つの方向を持っており、塗りつぶし手順が左側から辺に到達すると辺は上へ伸びているのか、下へ伸びているのかを塗りつぶし手順が検出するという事実を使用している。
辺が上へ伸びている場合には1つのカウンタが増加され、辺が下へ伸びている場合にはカウンタは減少される。
カウンタの値はスクリーン上の各ピクセル用のバッファに記憶される。
しかしながら、ピクセルはさらにサブピクセルに分割され、そこではカウンタの値は各サブピクセルの各ライン用に記憶されなければならず、より大きなバッファが必要となる。
上記の技術は例えば製造上の考慮、コスト上の考慮などからバッファサイズを制限する可能性のあるコンパクトなハードウエアの実現などに対して問題を提起する。
例えば、携帯端末装置が解像度176×208ピクセルのディスプレイを持っていたと仮定し、各ピクセルが16×16のサブピクセルに分割され、各ラインに対して8ビットのカウンタが使用されたとすると、585728バイトのバッファが必要となる。
しかしながら、携帯端末装置のグラフィックハードウエアアクセラレータ上に集積化するにはそのようなサイズのバッファは実用的ではないかもしれない。
さらに、例えば通常の製造技術の進展、より大きなグラフィック解像度の必要性などの理由で、グラフィックハードウエアアクセラレータにより多くのメモリを単に追加するだけでは実用的でないかもしれない。
1つの解は上述のバッファの実現のためにデバイスのメインメモリを使用することである。
しかしながら、そのような解はグラフィックアクセラレータとメインメモリ間の限られた帯域幅バス上のトラフィックの増加を生じる。
従って、上述のようにメインメモリとグラフィックアクセラレータ間のバス上のトラフィックを減少させる必要がある。
上記およびその他の問題が本発明の実施例によって取り組まれ、例としてハードウエアで実現されたベクトルグラフィックソリューションが提供されている。
実施例は特に携帯用デバイスアプリケーション、計算容量の少ないデバイスアプリケーション、メモリの少ないデバイスアプリケーションなどの計算機グラフィックアプリケーションなどを含む各種のグラフィックアプリケーションによって使用できる。
従って、本発明の実施例の中で、ベクトルグラフィックスプリミティブなどを処理するためのグラフィックプロセッサ、グラフィックプロセッサユニット、グラフィックプロセッサ用の関数ブロック、グラフィックデバイスなどが提供されている。
実施例は、サブピクセルのサンプリング点の各々に対する塗りつぶしルールの現行の状態を示す値を記憶するためのカウンタを含むことができる。
カウンタの値はメモリに記憶され、そのメモリはグラフィックプロセッサの内部メモリ、または例えばデバイスの通常のメモリである外部メモリでもよい。
実施例はさらに命令およびプリミティブを受取るバスを含むことができる。
メモリが内部メモリである場合、バスは一方向性でメモリが外部メモリである場合、バスはメモリへ要求を伝達するために双方向性である。
従って、メモリは各々のカウンタの値を記憶するために使用される。
実施例は、さらに各ピクセル用の少なくとも1つの指示ビット値を記憶するように取り決められた第1内部バッファを含むことができる。
通常、内部バッファは1ビットまたは2ビットの長さを持つ値を持っている。
しかしながら、必要に応じてこれとは異なったビット長を使用してもよい。
実施例は、さらに指示ビットの値を基にしてメモリからカウンタ値を読み出すか否かを決定するように取り決められた判別ロジックを含むことができる。
第1バッファの指示ビットはカウンタの値が変化しなかったことを示す値を含んでいる。
さらに第1バッファの指示ビットはカウンタの値がメモリから読み出されるべきであることを示す値を含んでおり、そのメモリは上述したように所定の実現形態にしたがって内部にあっても外部にあってもよい。
実施例は、各カウンタ用に制限された値を記憶するように取り決められた第2内部バッファを含むことができ、そして判別ロジックがさらに第2内部バッファからカウンタの値を読み出すか否かを決定するように取り決めることができる。
第1バッファの指示ビットはさらにそこから各カウンタの制限された値を読み出せる第2内部バッファの範囲を示す値を含むことができる。
1つの実施例では多角形をタイルで処理でき、そこでは有利には、使用される内部メモリは全スクリーンに対して割り当てられる必要がなく、スクリーンの一部だけに割り当てられる。
タイルのサイズは32×32ピクセルであり得る。
さらなる実施例では、そのようなサイズは特定の実施形態に依存して選択でき、ハードウエアの当業者によって理解されるように、内部メモリ、内部バッファなど用には各種の他のハードウエアアーキテクチャが使用できる。
有利には、実施例はバスを経由してアドレスされる外部メインメモリよりも高速なグラフィックプロセッサの内部メモリを使用することによってグラフィックアクセラレータと外部メインメモリ間のバスのトラフィックを減少させるために使用できる。
実施例はグラフィックプロセッサ内部の第1バッファおよび第2内部バッファ内のカウンタ情報を含み、有利にはすべてのピクセルごとにメインメモリへアドレスする必要がなく、上述した問題を解決するために通常のアプローチよりも有益で高速な解を結果としてもたらす。
さらに、実施例では、第1バッファおよび第2内部バッファはサイズを減少でき、有利にグラフィックプロセッサの中へのバッファの集積を可能にし、結果として製造コストを最小にしている。
さらに他の側面で、本発明の特徴および利点は本発明を実施することを意図した最良の実施例を含むいくつかの実施例および実施形態を例示する次の詳細な説明から容易に明らかとなる。
本発明はまた他の異なった具体化も可能で、すべては本発明の精神と範囲から逸脱することなく、そのいくつかの詳細は各種観点で修正できる。
従って、図面および説明は制限的ではなく例示的であると見なされるべきである。
本発明の実施例は、一例として図示され、制限条件としてではなく、添付図面において、参照番号に適した同様の構成要素を指示する。
図面を参照すると、特に図1および図2の中で類似の参照番号は、同一または対応する部分を示しており、実施例に従った例としてのグラフィカルデバイスを示している。
ハードウエアの同業者であれば理解できるように、実施例の中で使用されているビット値およびデータタイプの長さは例示の目的で使用されており、例えば対応するグラフィックモジュールなどの全体の設計に従って他の実施例を選択することができる。
一実施例では、例としてのグラフィックモジュールはグラフィックカードなどの一部であればよく、グラフィック処理(プロセッサ)ユニットの一部であればよい。
例えば組込みシステムアプリケーションのような他の例では、グラフィックプロセッサユニットはグラフィックスなどを生成する他の機能を含むことができる。
このようにして、他の実施例による1つのグラフィックプロセッサユニットは実施例の機能に加えて他の機能を含むことができる。
図1で、例としてのグラフィカルデバイス10は例えば、携帯電話、ビデオグラフィックカードなどを含むことができ、従ってこの実施例に関して説明する必要はないが、特定のアプリケーションに使用される他の部品を含むことができる。
例えば、実施例は実施例に関して説明される必要がなく、特定のアプリケーション用に構成できる他の機能回路15を含むことができるグラフィックプロセッサユニット11などの中で実現できる。
実施例は論理回路12(例えば、指示ビット値を基にしてメモリからカウンタ値を読み出すか否かを決定するように構成されている)および内部バッファ13、14によって実現できる。
さらに、図1に示すように、バス17経由で接続された外部メモリ16が使用できる。
しかしながら、例えば実施例がグラフィックプロセッサの内部メモリの中で実現されるならば、外部メモリ16は使用する必要はない。
外部メモリが使用される場合には、図1に示すように、双方向性バス17が提供できる。
そうでない場合は一方向性バスが提供できる。
加えて、グラフィックプロセッサユニット11の他の部品が必要に応じて双方向性または一方向性バスを使用する可能性がある。
実施例はグラフィックイメージを生成するための情報を記憶するために使用される3つの異なったメモリエリアを含むことができる、例としてのアーキテクチャを基にしている。
第1のメモリエリアは、エッジバッファ25と呼ばれ、前述の塗りつぶしオペレーション用の完全な情報を含むことができる。
各ピクセルは、通常各サブピクセルライン上のサンプリング点を持つサブピクセルを含んでいる。
このようにして割り当てられるメモリは各対応するパラメータ用の選択された解像度に依存する。
例えば、現在の携帯電話アプリケーションなどで一般的であるような実際の176×208ピクセルのスクリーン解像度に対して、各ピクセルは16×16のサブピクセルに分割され、各サブピクセルラインが対応する8ビットカウンタを使用する場合、対応するカウンタに対して585,728バイトのメモリ割当てが生じる。
完全な情報が利用できないかも知れないので、複数のカウンタが前述の塗りつぶし技術で使用される。
メモリの対応する585,728バイトは内部または外部メモリとして構成できる。
しかしながら、製造コストなどの理由で、例えばそのようなメモリは内部メモリとしては製造できないかもしれず、その場合には図1に示すように、外部メモリが使用され、必要に応じて各カウンタ値の値を要求するために双方向性バスでアクセスできる。
実施例によれば2つの他のメモリは内部バッファ13と14を含み、各ピクセルまたはサブピクセルに対して塗りつぶしルールに変化がなければ、例えば第1内部バッファ13はタイプバッファ23として構成でき、第2内部バッファ14は制限エッジバッファ24として構成できる。
このようにして、実施例では、有利には外部メモリへの要求は防止、最小化などがなされる。
実施例では、第1内部バッファ13は各ピクセルに対して2ビットの解像度を持つように構成できる。
このようにして、使用されるメモリ割当ては176x208/4バイトで9,152バイトに等しく、完全なエッジバッファ25を実現するために必要なメモリよりかなり少なくなる。
タイプバッファ23に対する例としての値は例えば次のものを含み、かつ示すことができる。
00=情報なし
01=制限エッジバッファ、範囲−1.2
10=制限エッジバッファ、範囲−2.1
11=外部メモリ内のエッジバッファ
例としての値はそこから各ピクセル用の塗りつぶし情報が読み出しできる場所を示している。
例えば、値00は現行のピクセル用に利用できる情報がないことを示すことができ、つまり現行のピクセル上で塗りつぶしルールの状態が変化しないことを意味している。
このようにして、すべてのカウンタがその1つ前のピクセル中の値と同じ値を持っているので、さらなる処理は実行される必要がない。
値01と10は、情報が制限エッジバッファ24であり得る第2内部バッファ14中に記憶されることを示すために使用できる。
対応する範囲の意味は第2内部バッファ14に関してさらに以下で説明する。
値11はカウンタ値が制限エッジバッファ24に記憶できず、むしろ完全エッジバッファ25から読み出せることを示している。
実施例によれば、第1内部バッファ13が最初に処理される。
このようにして、バッファをクリアするために第1内部バッファ13中の各値が00にセットできる。
エッジ情報を計算する間に、例えば情報を他のバッファへ記憶させなければならないときだけ第1内部バッファ13は変更できる。
このようにして、タイプバッファ23が00に設定されているときは、他のバッファの中へ記憶された古くなった情報はアクセスされない。
カウンタはサブピクセルの各ラインに対して割り当てられており、各ピクセルに対して16カウンタあるので、第2内部バッファ14はより多くの情報を含んでいる。
実施例では、第2内部バッファ14中の情報もまた2ビットの長さを持っているがそれは各サブピクセルのサンプリング点に割り当てられている。
このようにして、16×16の解像度を使用した実施形態に対して、各ピクセルは32ビットの情報を持っている。
有利には、32ビット長は単一のダブルワードでカバーできる。
しかしながら、他の実施例では、ハードウエアの当業者が理解できるように特定のアプリケーションに依存して例えば任意の適切な長さを使用できる。
現行の例では、第2内部バッファ14は146,432バイトを使用し、これは完全な情報用に必要な値よりもかなり小さい。
実施例では、値01と10に2つのビット情報が使用できるので、4個の異なった数が表現できる。
加えて、情報に符号を付けることができるので、値01と10に対する可能性としてはそれぞれ−1、+2、および−2、+1を含むことができる。
そのような範囲の選択は、タイプバッファ23の中で示すことができ、大抵の場合、そのような範囲は1個のピクセル内での変化をカバーするには十分であり、有利には完全なエッジバッファ25へのアクセスを減少させる。
一実施例では、範囲はピクセルが異なれば異なることが可能であるが1つのピクセル内では単一の範囲が適用できる。
このようにして、範囲のいずれもが許容できない場合は、タイプバッファ23はカウンタ値が完全エッジバッファ25から読み出せることを示す値に設定できる。
実施例によれば、データ長は特定のアプリケーションに依存して変化できる。
しかしながら、第1内部バッファ13であるタイプバッファ23が1ビットのデータ長を持っている場合はそのような実施形態は第2内部バッファ14を使用する必要がない。
この場合、タイプバッファ23はカウンタ値が外部メモリ16に記憶されているエッジバッファから呼び出されるべきかどうかだけを示す必要がある。
そのような実施形態は可能であるが上述の例の実施形態ほどには効率はよくない。
しかしながら、そのような実施形態は使用される可能性があり、例えば十分な内部メモリを提供することが不可能な場合には望ましい可能性がある。
加えて、1ビットタイプバッファ23用のメモリへの要求は2ビットの実施形態のメモリへの要求の半分である。
図2で例としてのグラフィックデバイス20はグラフィックプロセッサユニット21を含むことができる。
実施例では、スクリーンはタイルで処理でき、そこにおいて有利には、対応するメモリおよび内部バッファは全体のスクリーン解像度のために割り当てられる必要がない。
メモリが外部メモリであれば、それは全体のスクリーンに割当て可能である。
有利には、タイルの実施形態ではメモリサイズを減少する必要があるので、対応するメモリは内部メモリであればよい。
そのような内部メモリは全体のタイル用の完全なエッジバッファ25を記憶するために使用できる。
例えば、32×32ピクセルタイルが使用された場合、完全なエッジバッファ25用に16,384バイトが使用できる。
第1内部バッファ13であるタイプバッファ23が2ビットの値を持っている場合、タイプバッファ23用に256バイトを使用できる。
第2内部バッファ14である制限エッジバッファ24が使用され、各サブピクセルライン用に2ビットの値を持っている場合は、制限エッジバッファ24用に4,096バイトを使用できる。
制限エッジバッファ24が使用されず、タイプバッファ23が1ビットの値を持っている場合は、タイプバッファ23は128バイトだけを使用する必要がある。
有利には、バッファ内の値の解像度を失うことなくタイルサイズを選択することによって、使用されるメモリは調整できる。
タイプバッファ23、エッジバッファ25および可能であれば制限エッジバッファ24がグラフィックプロセッサユニット21の内部に記憶されているときは、バス27は一方向性バスとして構成できる。
バス27はCPU、メインメモリなどの他の構成要素28からの命令およびデータ受信するように構成できる。
論理回路22および他の機能回路26は図1の実施例のように機能できる。
タイルに加えて、さらに他の実施例で、ハードウエアの当業者が理解できるように、スクリーンは部分またはその他の方法に分割できるし、またスキャンラインなどで処理できる。
実施例はグラフィックプロセッサユニットの一部の実施形態として説明されたがハードウエアの当業者が理解できるように、実施例は任意の適切なプロセッサユニットに含めたグラフィックブロックなどとして実現できる。
実施例の新規な側面はロジック22、タイプバッファ23およびエッジバッファ25を含んでいるがさらに制限エッジバッファ24などを含んでよい。
残りの部品、例えばバス27などは特定のホストプロセッサの要求に依存する可能性がある。
有利には、汎用プロセッサ、グラフィックプロセッサなどにおけるバスは通常双方向性であるが、実施例は双方向性バスの使用を必要としない。
タイルの実施例ではプロセッサユニットまたはグラフィックブロック21はスクリーンをタイルごとに処理するように構成できる。
1つのタイルが処理されると、それはさらに使用される必要がなく、廃棄できる。
有利には、個々のタイルメモリはタイプバッファ23をクリアすることによって再使用できる。
現行の処理されているタイルに関するデータだけが知られているので、1つの実施例では例えば隣のタイルに関する情報などをコントロールするための適切なルールが使用できる。
例えば、左から右へ動作する通常の作図プロセスで、現行の処理中のタイルは左隣のタイルの情報を使用でき、情報を右隣のタイルへ渡してよい。
1つの実施例では、完全なイメージの処理は左から開始できる。
このようにして、取り扱われるべき最初のケースは1つの多角形が完全には視野内にはなく、むしろ左側で部分的に出ている状況である。
この状況では、左の境界を越えているエッジの部分は強制的に左の境界にされる。
全体のエッジが最も左のタイルの外側にあれば、全部のエッジがタイルの左境界にされる。
エッジが左境界に強制されると各カウンタは多角形の可視部に正しく描画されたイメージを生成するように変更できる。
そのような強制なしでは、いくつかのカウンタは変更されず、そうするとピクセルの一部が多角形の内部にあると解釈され、一方ピクセルの他の一部が多角形の外部にあると解釈されるという状況が発生する。
塗りつぶしルールは累積的に動作するので、現行の処理カウンタ値より前の同じ水平ライン上のすべてのカウンタ値が知られている必要がある。
このようにして、イメージ外の値は左境界で計算できる。
タイルの実施形態が使用されなくても最も左の境界は同様の方法で計算できる。
最初のタイルが処理されると、第2タイルに影響するデータはハードウエアの当業者が理解できるように各種の方法で第2タイルへ転送される。
例えば、サブピクセルカウンタの値を次のタイルへ渡すためにカウンタを使用できる。
しかしながら、エッジがサブピクセルを通過し、それがピクセルの中であると判断されない場合はこのことが考慮されないと次のピクセルでの結果が正しくなくなる可能性がある。
このようにして、タイルが最も左側のタイルでない場合は、エッジはまた現在処理中のタイルから1ピクセル左で計算できる。
この場合、最も左側のタイルでそうであったようにはエッジは左境界線に強制されない。
同様に、一番右端のタイルへ到達するまで対応する情報は次のタイルへ転送される。
一番右端のタイルでは、前述したように情報は1つ前のタイルから受取られる必要がある。
しかしながら、エッジの残りは視野外なのでそのような情報は転送される必要はない。
一番右端のタイルが処理されたとき、描画は次のタイルラインへ移動し、前述したように一番左側のタイルから開始する。
このプロセスは最後のタイルラインの一番右端のタイルが処理されるまで繰り返される。
この段階で現行の多角形は処理されたと判断され、上記のプロセスはすべての多角形が処理されるまで次の多角形で繰り返される。
実施例はハードウエアの当業者が理解できるように、スクリーンまたはタイル上でヒットしたすべてのエッジを送るように構成されたエッジフィーダ部品からエッジを受取れる。
加えて、ハードウエアの当業者が理解できるように、一番左のタイルまたは完全なスクリーンの実施形態の場合、現行のタイルの左エッジを送ることができる。
実施例は実施例の処理を実行でき、例えばインターネットアクセス、任意の適切な形式(例えば音声、モデムなど)の通信、無線通信メディア、1つまたはそれ以上の無線通信ネットワーク、セル方式通信ネットワーク、G3通信ネットワーク、公衆交換電話網(PSTN)、パケットデータネットワーク(PDN)インターネット、イントラネットそれらの組合せなどを含む1つまたはそれ以上のインタフェースメカニズムで通信でき、例えば任意の適切なサーバ、ワークステーション、PC,ラップトップコンピュータ、PDA、インターネット機器、携帯デバイス、セル方式電話、無線デバイス、他のデバイスなどの任意の適切なデバイスに含むことができる。
実施例は例としての目的だけであり、ハードウエアの当業者が理解できるように実施例を実現するために使用される多くの各種特定のハードウエアが可能であることが理解されるべきである。
例えば、実施例の1つまたはそれ以上の部品の機能は1つまたはそれ以上のハードウエアデバイスを使用して実現できる。
実施例はここに説明された各種プロセスに関連する情報を記憶できる。
この情報はハードディスク、光ディスク、磁気光ディスク、RAMなどの1つまたはそれ以上のメモリに記憶できる。
1つまたはそれ以上のデータベースは本発明の実施例を実現するために使用される情報を記憶できる。
データベースはここにリストされた1つまたはそれ以上のメモリまたは記憶デバイスに含まれるデータ構造(例えばレコード、テーブル、アレイ、フィールド、グラフ、ツリー、リストなど)を使用して組織できる。
実施例に関連して説明されたプロセスはデバイスおよび実施例のサブシステムによって1つまたはそれ以上のデータベースの中に収集され、および/または生成されたデータを記憶するために適切なデータ構造を含むことができる。
実施例のすべてまたは一部はハードウエアの当業者が理解できるように、特定用途向けIC(ASIC)の準備または通常の部品回路の適切なネットワーク接続によって実現できる。
上述のように実施例の部品は本発明の教示による計算機で読み取ることができ、ここで説明されたデータ構造、テーブル、レコードおよび/または他のデータを支持する媒体またはメモリを含むことができる。
計算機で読み取れる媒体は、実行のためにプロセッサへ命令を提供するために関与する任意の適切な媒体を含むことができる。
そのような媒体は、これに限られるものではないが不揮発性媒体、揮発性媒体、伝送媒体などを含むことができる。
不揮発性媒体は、例えば光または磁気ディスク、磁気光ディスクなどを含むことができる。
揮発性媒体は、ダイナミックメモリなどを含むことができる。
伝送媒体は、同軸ケーブル、銅線、光ファイバなどを含むことができる。
伝送媒体は、また無線周波数(RF)通信、赤外(IR)データ通信などで生成される音響、光、電磁波などの形をとることができる。
計算機で読み取れる媒体の通常の形は、例えばフロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の適切な磁気媒体、CD−ROM、CDRW、DVD任意のほかの適切な光媒体、パンチカード、紙テープ、光マークシート、任意の他の適切な孔のパターンまたは他の光で認識可能な印付きの物理媒体、RAM、PROM、EPROM、フラッシュEPROM、任意の他の適切なメモリチップまたはカートリッジ、搬送波または任意の適切な計算機が読める媒体を含むことができる。
本発明はいくつかの実施例と実施形態に関連付けて説明されたが、本発明はそれらに限られるものではなく、むしろ見込みのある請求項の範囲内にある、各種の変形および等価な組合せにわたっている。
本発明の例示的なグラフィック装置を示す図である。 本発明の更に例示的なグラフィック装置を示す図である。

Claims (23)

  1. 基本ベクトルグラフィックス処理に用いるプロセッサユニットであって、
    ピクセルに対するサブピクセルサンプリング点の塗り潰しルールごとに現在の状態を示す値を記憶するように構成されるカウンタと、
    指示およびデータを受け取るためのバスと、
    各ピクセルに対する少なくとも1つの指示ビットの値を記憶するように構成される第1内部バッファと、
    前記指示ビットの値に基づいてメモリから前記カウンタの値を読み出すべきか否かを決定するように構成される判定論理回路と、を備えることを特徴とするプロセッサユニット。
  2. 各カウンタに対する制限された値を記憶するように構成される第2内部バッファをさらに備え、
    前記判定論理回路は、前記第2内部バッファから前記制限されたカウンタの値を読み出すべきか否かを決定するように構成される、ことを特徴とする請求項1に記載のプロセッサユニット。
  3. 前記第1内部バッファの前記指示ビットは、前記カウンタの値が変化しなかったことを示す値を含む、ことを特徴とする請求項2に記載のプロセッサユニット。
  4. 前記第1内部バッファの前記指示ビットは、外部メモリから読み出される前記カウンタの値を示す値を含む、ことを特徴とする請求項2に記載のプロセッサユニット。
  5. 前記第1内部バッファの前記指示ビットは、各カウンタの前記制限された値が読み出される前記第2内部バッファの範囲を示す値を含む、ことを特徴とする請求項2に記載のプロセッサユニット。
  6. 前記メモリは、処理されている各ピクセルに対するカウンタの値を記憶するように構成される外部メモリであり、
    前記バスは、前記外部メモリからカウンタの値を読み出すように構成される双方向バスである、ことを特徴とする請求項1に記載のプロセッサユニット。
  7. 前記メモリは、処理されている各ピクセルに対するカウンタの値を記憶するように構成される内蔵メモリであり、
    前記バスは、指示およびデータを受け取るように構成される単方向バスである、ことを特徴とする請求項1に記載のプロセッサユニット。
  8. メモリは、カウンタを有する各サブピクセルに対する完全なカウンタの値を記憶するように構成される、ことを特徴とする請求項1に記載のプロセッサユニット。
  9. ある部分の完全なカウンタの値を記憶するために配置した内蔵メモリをさらに備える、ことを特徴とする請求項1に記載のプロセッサユニット。
  10. 前記部分は、走査線である、ことを特徴とする請求項9に記載のプロセッサユニット。
  11. 前記部分は、タイルである、ことを特徴とする請求項9に記載のプロセッサユニット。
  12. ディスプレイと、
    基本ベクトルグラフィックス処理に用いるプロセッサユニットと、
    ピクセルに対する各々のサブピクセルサンプリング点の塗り潰しルールごとに現在の状態を示す値を記憶するように構成されるカウンタと、
    指示およびデータを受け取るためのバスと、
    各ピクセルに対する少なくとも1つの指示ビットの値を記憶するように構成される第1内部バッファと、
    データを記憶するためのメモリと、
    前記指示ビットの値に基づいてメモリから前記カウンタの値を読み出すべきか否かを決定するように構成される判定論理回路と、を備えることを特徴とするグラフィック処理装置。
  13. 前記プロセッサユニットは、
    各カウンタに対する制限された値を記憶するように構成される第2内部バッファをさらに備え、
    前記判定論理回路は、前記第2内部バッファから前記制限されたカウンタの値を読み出すべきか否かを決定するように構成される、ことを特徴とする請求項12に記載の携帯端末装置。
  14. 前記第1内部バッファの前記指示ビットは、前記カウンタの値が変化しなかったことを示す値を含む、ことを特徴とする請求項13に記載の携帯端末装置。
  15. 前記第1内部バッファの前記指示ビットは、外部メモリから読み出される前記カウンタの値を示す値を含む、ことを特徴とする請求項13に記載の装置。
  16. 前記第1内部バッファの前記指示ビットは、各カウンタの前記制限された値が読み出される前記第2内部バッファの範囲を示す値を含む、ことを特徴とする請求項13に記載の装置。
  17. 前記メモリは処理されている各ピクセルに対するカウンタの値を記憶するように構成される外部メモリであり、前記バスは、前記外部メモリからカウンタの値を読み出すように構成される双方向バスである、ことを特徴とする請求項12に記載のグラフィック処理装置。
  18. 前記メモリは処理されている各ピクセルに対するカウンタの値を記憶するように構成される内蔵メモリであり、前記バスは指示およびデータを受け取るように構成される単方向バスである、ことを特徴とする請求項12に記載のグラフィック処理装置。
  19. メモリは、カウンタを有する各サブピクセルに対する完全なカウンタの値を記憶するように構成される、ことを特徴とする請求項12に記載の装置。
  20. 前記プロセッサユニットは、ある部分の完全なカウンタの値を記憶するために配置した内蔵メモリをさらに備える、ことを特徴とする請求項12に記載のグラフィック処理装置。
  21. 前記部分は、走査線である、ことを特徴とする請求項20に記載のグラフィック処理装置。
  22. 前記部分は、タイルである、ことを特徴とする請求項20に記載のグラフィック処理装置。
  23. 携帯端末装置を含む、ことを特徴とする請求項12に記載のグラフィック処理装置。
JP2008539463A 2005-11-15 2006-11-15 ベクトルグラフィックハードウエアにおけるバッファ管理 Active JP4854746B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/272,867 US8294731B2 (en) 2005-11-15 2005-11-15 Buffer management in vector graphics hardware
US11/272,867 2005-11-15
PCT/FI2006/000376 WO2007057507A2 (en) 2005-11-15 2006-11-15 Buffer management in vector graphics hardware

Publications (2)

Publication Number Publication Date
JP2009516251A JP2009516251A (ja) 2009-04-16
JP4854746B2 true JP4854746B2 (ja) 2012-01-18

Family

ID=38040311

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008539463A Active JP4854746B2 (ja) 2005-11-15 2006-11-15 ベクトルグラフィックハードウエアにおけるバッファ管理

Country Status (5)

Country Link
US (2) US8294731B2 (ja)
EP (1) EP1958051B1 (ja)
JP (1) JP4854746B2 (ja)
CN (1) CN101356495B (ja)
WO (1) WO2007057507A2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100948510B1 (ko) * 2008-04-21 2010-03-23 주식회사 코아로직 하드웨어 방식의 벡터 그래픽 가속기, 그 가속기를 포함한어플리케이션 프로세서 및 단말기, 및 그 프로세서에서그래픽 가속방법
US8373709B2 (en) 2008-10-03 2013-02-12 Ati Technologies Ulc Multi-processor architecture and method
US8892804B2 (en) * 2008-10-03 2014-11-18 Advanced Micro Devices, Inc. Internal BUS bridge architecture and method in multi-processor systems
US8884957B2 (en) * 2009-09-09 2014-11-11 Advanced Micro Devices, Inc. Tessellation engine and applications thereof
US20120013624A1 (en) * 2010-07-19 2012-01-19 Advanced Micro Devices, Inc. Split Storage of Anti-Aliased Samples

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04125786A (ja) * 1990-09-18 1992-04-27 Dainippon Screen Mfg Co Ltd 画像データ処理方法および装置
JPH04282784A (ja) * 1991-03-12 1992-10-07 Tokyo Electric Co Ltd 図形のクリッピング方法
JP2000137825A (ja) * 1998-09-11 2000-05-16 Canon Inc ラスタ形式のグラフィックオブジェクトを用いたイメ―ジの高速レンダリング方法
JP2003173453A (ja) * 2001-09-26 2003-06-20 Sony Computer Entertainment Inc 描画処理方法及び装置、半導体デバイス、描画処理プログラム及び記録媒体
WO2004086307A1 (en) * 2003-03-25 2004-10-07 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for antialiasing a region of a two-dimensional distance field representing an object

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918626A (en) * 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing
EP0574111B1 (en) * 1992-04-24 1997-10-01 Sony United Kingdom Limited Lighting effects for digital video effects system
US5438656A (en) 1993-06-01 1995-08-01 Ductus, Inc. Raster shape synthesis by direct multi-level filling
KR100295712B1 (ko) * 1994-03-11 2001-11-14 미다라이 후지오 컴퓨터디스플레이시스템컨트롤러
US5940088A (en) * 1995-07-12 1999-08-17 Monolithic System Technology, Inc. Method and structure for data traffic reduction for display refresh
US5929862A (en) * 1996-08-05 1999-07-27 Hewlett-Packard Co. Antialiasing system and method that minimize memory requirements and memory accesses by storing a reduced set of subsample information
US6141020A (en) * 1997-11-12 2000-10-31 S3 Incorporated Opposing directional fill calculators in a graphics processor
US6317525B1 (en) * 1998-02-20 2001-11-13 Ati Technologies, Inc. Method and apparatus for full scene anti-aliasing
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
AU2003900746A0 (en) * 2003-02-17 2003-03-06 Silverbrook Research Pty Ltd Methods, systems and apparatus (NPS041)
US6473522B1 (en) * 2000-03-14 2002-10-29 Intel Corporation Estimating text color and segmentation of images
US6781600B2 (en) 2000-04-14 2004-08-24 Picsel Technologies Limited Shape processor
US6714196B2 (en) 2000-08-18 2004-03-30 Hewlett-Packard Development Company L.P Method and apparatus for tiled polygon traversal
US6870543B1 (en) * 2001-06-06 2005-03-22 Microsoft Corporation Reducing fill and improving quality of interlaced displays using multi-sampling
AUPR860901A0 (en) * 2001-10-31 2001-11-29 Canon Kabushiki Kaisha Activating a filling of a graphical object
US7081903B2 (en) * 2001-12-12 2006-07-25 Hewlett-Packard Development Company, L.P. Efficient movement of fragment stamp
US6999087B2 (en) * 2002-03-12 2006-02-14 Sun Microsystems, Inc. Dynamically adjusting sample density in a graphics system
US7027056B2 (en) 2002-05-10 2006-04-11 Nec Electronics (Europe) Gmbh Graphics engine, and display driver IC and display module incorporating the graphics engine
WO2003096275A2 (en) 2002-05-10 2003-11-20 Nec Electronics Corporation Graphics engine with edge draw unit, and electrical device and memory incorporating the graphics engine
WO2004001709A2 (en) 2002-06-20 2003-12-31 Alberto Baroncelli Vector graphics circuit accelerator for display systems
US6943805B2 (en) 2002-06-28 2005-09-13 Microsoft Corporation Systems and methods for providing image rendering using variable rate source sampling
US7006110B2 (en) 2003-04-15 2006-02-28 Nokia Corporation Determining a coverage mask for a pixel
US7280120B2 (en) * 2003-06-26 2007-10-09 Canon Kabushiki Kaisha Compositing with a sub-pixel mask in graphic object rendering
AU2003903445A0 (en) 2003-06-26 2003-07-17 Canon Kabushiki Kaisha Optimising compositing calculations for a run of pixels
US6919908B2 (en) * 2003-08-06 2005-07-19 Ati Technologies, Inc. Method and apparatus for graphics processing in a handheld device
US6937244B2 (en) * 2003-09-23 2005-08-30 Zhou (Mike) Hong Apparatus and method for reducing the memory traffic of a graphics rendering system
US7583397B2 (en) 2003-09-30 2009-09-01 Canon Kabushiki Kaisha Method for generating a display list
US7173631B2 (en) * 2004-09-23 2007-02-06 Qualcomm Incorporated Flexible antialiasing in embedded devices
US8878851B2 (en) 2004-11-12 2014-11-04 Synchronica Plc Method and system for streaming documents, e-mail attachments and maps to wireless devices
US7126615B2 (en) * 2004-11-12 2006-10-24 Via Technologies, Inc. Color compression using multiple planes in a multi-sample anti-aliasing scheme
GB0426170D0 (en) * 2004-11-29 2004-12-29 Falanx Microsystems As Processing of computer graphics
US7849395B2 (en) * 2004-12-15 2010-12-07 Microsoft Corporation Filter and sort by color

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04125786A (ja) * 1990-09-18 1992-04-27 Dainippon Screen Mfg Co Ltd 画像データ処理方法および装置
JPH04282784A (ja) * 1991-03-12 1992-10-07 Tokyo Electric Co Ltd 図形のクリッピング方法
JP2000137825A (ja) * 1998-09-11 2000-05-16 Canon Inc ラスタ形式のグラフィックオブジェクトを用いたイメ―ジの高速レンダリング方法
JP2003173453A (ja) * 2001-09-26 2003-06-20 Sony Computer Entertainment Inc 描画処理方法及び装置、半導体デバイス、描画処理プログラム及び記録媒体
WO2004086307A1 (en) * 2003-03-25 2004-10-07 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for antialiasing a region of a two-dimensional distance field representing an object

Also Published As

Publication number Publication date
US8390634B2 (en) 2013-03-05
EP1958051A4 (en) 2011-09-21
US20070109309A1 (en) 2007-05-17
WO2007057507A2 (en) 2007-05-24
JP2009516251A (ja) 2009-04-16
CN101356495B (zh) 2012-06-20
WO2007057507A3 (en) 2007-07-19
US8294731B2 (en) 2012-10-23
US20070132775A1 (en) 2007-06-14
EP1958051B1 (en) 2014-01-01
EP1958051A2 (en) 2008-08-20
CN101356495A (zh) 2009-01-28

Similar Documents

Publication Publication Date Title
US7920141B2 (en) Method and apparatus for rasterizer interpolation
US7764833B2 (en) Method and apparatus for anti-aliasing using floating point subpixel color values and compression of same
US7965296B2 (en) Systems and methods for storing texture map data
US7990391B2 (en) Memory system having multiple address allocation formats and method for use thereof
CN111429556B (zh) 图形处理系统中的基于基元块的光栅化
JP4854746B2 (ja) ベクトルグラフィックハードウエアにおけるバッファ管理
JP2012230689A (ja) ピクセルマスクを用いたグラフィックシステム
JP2009099098A (ja) コンピュータグラフィックス描画装置及び描画方法
US7825926B2 (en) Point-based rendering apparatus, method and medium
US20060176310A1 (en) Method and apparatus for de-indexing geometry
US6919908B2 (en) Method and apparatus for graphics processing in a handheld device
US7417630B2 (en) Display controller, display control method, and image display device
WO2013021525A1 (ja) 画像処理装置、画像処理方法、プログラム、及び集積回路
US7483035B2 (en) Texture cache control using a data dependent slot selection scheme
US7348988B2 (en) Texture cache control using an adaptive missing data table in a multiple cache computer graphics environment
KR20060116916A (ko) 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법
US8269769B1 (en) Occlusion prediction compression system and method
CN106658121A (zh) 一种机顶盒显示指纹信息的方法及系统
AU2010241218A1 (en) Method, apparatus and system for associating an intermediate fill with a plurality of objects
CN102074004B (zh) 空间实体遮挡类型的判定方法及装置
US20080165208A1 (en) 3-Dimensional graphic processing apparatus and operating method thereof
US8917956B1 (en) Enhancing spatial resolution of an image
CN111722823A (zh) 自适应屏幕分辨率的方法、装置、存储介质及电子设备
CN118096847B (zh) 纹理采样器和实现纹理反馈的方法
US8698811B1 (en) Nested boustrophedonic patterns for rasterization

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091109

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20101112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110909

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: 20111004

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: 20111025

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4854746

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250