(57)【要約】【課題】画像内に縁を組み込むための装置および方法。【解決手段】画像領域内に縁領域を取り込むためのハードウェアで実行される方法が提供される。この方法では縁領域の一部分がメモリに格納される。その後画像領域内のピクセルの相対的位置を判断する。次にピクセルの相対的位置に応じてメモリから画像ピクセルまたは縁領域の部分の各ピクセルがフェッチされる。画像領域内に縁領域を組み込むための装置およびディスプレー・コントローラも説明される。【選択図】  図１
2006003898.tif 000002
【特許請求の範囲】
【請求項１】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
画像領域内のピクセルの相対的位置を計算する操作と、
前記ピクセルの相対的位置に基づき該ピクセルが縁領域内に位置するかを判断する操作と、
前記ピクセルの相対的位置が縁領域内に存在する場合、
縁メモリ・ブロックから縁ピクセルをフェッチするために、縁領域の一部分の回転を定義する命令を計算する操作と、計算された命令に応じて縁メモリから縁ピクセルをフェッチする操作と、
前記ピクセルの相対的位置が画像領域内に存在する場合、主メモリ・ブロックから画像ピクセルをフェッチする操作とを含む方法。
【請求項２】
前記縁ピクセルを縁メモリ領域からフェッチする操作が、
前記ピクセルが縁領域の角部分に存在する場合は計算された命令に従い第１のメモリ・ブロックから角ピクセルをフェッチする操作と、
前記ピクセルが縁領域の側面部分に存在する場合は計算された命令に従い第２のメモリ・ブロックから側面ピクセルをフェッチする操作とを含む請求項１に記載の方法。
【請求項３】
縁領域の角部分が左上の角部分、右上の角部分、左下の角部分、または右下の角部分の１つで定義される請求項２に記載の方法。
【請求項４】
縁領域の側面部分が左側面部分、右側面部分、上端側面部分、または下端側面部分の１つで定義される請求項２に記載の方法。
【請求項５】
前記ピクセルが縁領域に位置するかを判断する操作が、ピクセルの相対的位置を縁領域幅と比較することを含む請求項１に記載の方法。
【請求項６】
回転がゼロ度の回転、９０度の回転、１８０度の回転、または２７０度の回転で定義される請求項１に記載の方法。
【請求項７】
さらに次のピクセルのために各操作を繰り返すことを含む請求項１に記載の方法。
【請求項８】
前記縁ピクセルを縁メモリからフェッチする操作が縁ピクセルが透明の場合主メモリ・ブロックから画像ピクセルをフェッチすることを含む請求項１に記載の方法。
【請求項９】
前記縁ピクセルを縁メモリ・ブロックからフェッチする操作が、
主メモリから画像ピクセルをフェッチする操作と、
縁ピクセルが透明でない場合表示用に縁ピクセルを選択する操作と、
縁ピクセルが透明の場合表示用に画像ピクセルを選択する操作と、
を含む請求項１に記載の方法。
【請求項１０】
画像領域内のピクセルの相対的位置を計算する操作が、
前記ピクセルを水平方向および垂直方向に沿って探知する操作を含む請求項５に記載の方法。
【請求項１１】
ピクセルが縁領域に位置するかを判断する操作が、
水平位置を水平縁幅と比較する操作と、
垂直位置を垂直縁幅と比較する操作とを含む請求項１０に記載の方法。
【請求項１２】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
画像領域内のピクセルの相対的位置を計算する操作と、
前記ピクセルの相対的位置を縁領域幅と比較して該ピクセルが縁領域内に位置するか判断する操作と、
前記ピクセルの相対的位置が縁領域内に存在する場合、
該ピクセルが縁領域の角部分に位置する場合角ピクセルを角メモリ・ブロックからフェッチする操作と、
該ピクセルが縁領域の側面部分に位置する場合側面ピクセルを側面メモリ・ブロックからフェッチする操作と、
前記ピクセルの相対的位置が画像領域内に存在する場合、主メモリ・ブロックから画像ピクセルをフェッチする操作とを含む方法。
【請求項１３】
角ピクセルを角メモリ・ブロックからフェッチする操作が、
角メモリ・ブロックから角ピクセルをフェッチするために、角部分の回転を定義する命令を計算する操作と、
計算された命令に応じて角ピクセルを角メモリ・ブロックからフェッチする操作とを含む請求項１２に記載の方法。
【請求項１４】
側面ピクセルを側面メモリ・ブロックからフェッチする操作が、
側面メモリ・ブロックから側面ピクセルをフェッチし側面部分の回転を定義する命令を計算する操作と、
計算された命令に応じて側面ピクセルを側面メモリ・ブロックからフェッチする操作とを含む請求項１２に記載の方法。
【請求項１５】
縁領域の角部分が左上の角部分、右上の角部分、左下の角部分、または右下の角部分の１つで定義される請求項１２に記載の方法。
【請求項１６】
さらに：
ピクセルが縁領域の左上の角部分に位置する場合左上の角ピクセルを左上の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右上の角部分に位置する場合右上の角ピクセルを右上の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の左下の角部分に位置する場合左下の角ピクセルを左下の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右下の角部分に位置する場合右下の角ピクセルを右下の角メモリ・ブロックからフェッチする操作とを含む請求項１５に記載の方法。
【請求項１７】
縁領域の側面部分が左側面部分、右側面部分、上端側面部分、または下端側面部分の１つで定義される請求項１２に記載の方法。
【請求項１８】
さらに：
ピクセルが縁領域の左側面部分に位置する場合左側面角ピクセルを左側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右側面部分に位置する場合右側面ピクセルを右側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の上端側面部分に位置する場合上端側面ピクセルを上端側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の下端側面部分に位置する場合下端側面ピクセルを下端側面メモリ・ブロックからフェッチする操作とを含む請求項１７に記載の方法。
【請求項１９】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
縁領域の一部分をメモリに格納する操作と、
画像領域内のピクセルの相対的位置を判断する操作と、
前記ピクセルの相対的位置に応じてメモリから画像ピクセルまたは縁領域の一部分の各ピクセルをフェッチする操作とを含む方法。
【請求項２０】
さらに：
縁領域の一部分の各ピクセルをフェッチするために、縁領域の一部分の回転を定義する命令を計算する操作と、
計算された命令に応じて縁領域の一部分の各ピクセルをフェッチする操作とを含む請求項１９に記載の方法。
【請求項２１】
画像領域内に縁領域を組み込むためのディスプレー・コントローラであって、
画像ピクセルを格納するように構成された第１メモリ・ブロックと、角ピクセルを格納するように構成された第２メモリ・ブロックと、側面ピクセルを格納するように構成された第３メモリ・ブロックとを含むメモリと、
画像ピクセル、角ピクセル、または側面ピクセルの１つをフェッチするように構成されたメモリ・コントローラと、
該メモリ・コントローラと通信する主画像フェッチ回路で、
ピクセルの相対的位置を縁領域幅と比較し該ピクセルが縁領域に存在するかを判断する計算するためのロジックと、
第２メモリ・ブロックから角ピクセルをフェッチするロジックと、
第３メモリ・ブロックから側面ピクセルをフェッチするロジックと、
第１メモリ・ブロックから画像ピクセルをフェッチするロジックとを含む、前記主画像フェッチ回路と、
を含むディスプレー・コントローラ。
【請求項２２】
主画像フェッチ回路が：
角ピクセルを第２メモリ・ブロックからフェッチするために、縁領域の角部分の回転を定義する第１命令を計算するロジックと、
側面ピクセルを第３メモリ・ブロックからフェッチするために、縁領域の側面部分の回転を定義する第２命令を計算するロジックを含む請求項２１に記載されるディスプレー・コントローラ。
【請求項２３】
角ピクセルを第２メモリ・ブロックからフェッチするロジックが、
第１メモリ・ブロックから画像ピクセルをフェッチするロジックと、
角ピクセルが透明でない場合表示用に角ピクセルを選択することと、
角ピクセルが透明の場合表示用に画像ピクセルを選択することを含む請求項２１に記載されるディスプレー・コントローラ。
【請求項２４】
画像領域内に縁領域を組み込むための装置であって、
画像領域内のピクセルの相対的位置を計算するための回路構成と、縁メモリ・ブロックから縁ピクセルをフェッチする回路構成と、縁ピクセルを回転させる回路構成と、主画像メモリ・ブロックから画像ピクセルをフェッチする回路構成とを含むディスプレー・コントローラと、
ディスプレー・コントローラと通信する中央演算装置（CPU）と、
ディスプレー・コントローラと通信し、画像領域の表示を可能にするディスプレーとを含む装置。
【請求項２５】
さらにCPUと通信するメモリを含む請求項２４に記載される装置。
【請求項２６】
ディスプレーが液晶ディスプレー（LCD）、薄膜トランジスタ（TFT）ディスプレー、ブラウン管（CRT）モニター、およびテレビを含むグループから選択される請求項２４に記載される装置。
【請求項２７】
縁メモリから縁ピクセルをフェッチする回路構成が、
前記ピクセルが縁領域の角部分に存在する場合は角ピクセルを角メモリ・ブロックからフェッチする回路構成と、
前記ピクセルが縁領域の側面部分に存在する場合は側面ピクセルを側面メモリ・ブロックからフェッチする回路構成を含む請求項２４に記載される装置。
【請求項２８】
縁ピクセルを回転させる回路構成が、
縁領域の部分に相対的に定義される基準点を中心に角ピクセルを回転させる回路構成と、
前記基準点を中心に側面ピクセルを回転させる回路構成を含む請求項２７に記載される装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にコンピュータ・グラフィックスに関するもので、より具体的には画像内に縁を組み込む方法および装置に関する。
【背景技術】
【０００２】
コンピュータ・グラフィックスにおいては通常表示されている画像の周囲に縁を設ける。図1は画像の周囲に縁を施す従来の方法を図示するものである。現在画像106の周囲に縁102を設けるにはグラフィックス・コントローラが画像の寸法に近似するオーバーレイを使用する必要がある。オーバーレイ108は縁102と透明であるようにプログラムされた中央部分104を含む。従って縁102は画像106の一部分の領域を構成するだけであるにもかかわらず、保存されるオーバーレイのピクセル数は画像のピクセル数に等しい。加えてオーバーレイ108内の中央部分104の透明ピクセルを処理するために余分の回路が必要となり、さらに電力と帯域を消費することになる。
【０００３】
その結果小型の携帯デバイスの多くは通常電力、メモリ、および演算能力が限定されているので縁のオーバーレイを処理する場合に問題が有る。これらのデバイスはメモリ、および演算能力が限定されているため、オーバーレイの処理はメモリの限度を超えこれらデバイスのCPUサイクルを支配することがあり、その結果アプリケーションの実行速度が著しく遅くなることになる。
【０００４】
【特許文献１】米国特許第5,815,157号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前記にかんがみ、縁を施すために必要なメモリおよび要求されるCPU処理能力を削減する装置および方法を提供する必要がある。
【課題を解決するための手段】
【０００６】
本発明はおおまかに言えば画像領域内に縁領域を組み込むためのハードウェアで実行される方法および装置を提供することにより上記の要求を満足する。本発明は方法、システム、またはデバイスを含む多数の手段で実行することができることは理解されるであろう。以下に本発明の創意に富んだいくつかの実施形態を説明する。
【０００７】
本発明の第一の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では画像領域内における一つのピクセルの相対的位置がまず計算される。次にそのピクセルの相対的位置によってピクセルが縁領域に位置しているかの判断をする。ピクセルの相対的位置が縁領域内であれば縁メモリ・ブロックから縁ピクセルをフェッチする命令が計算される。命令は縁領域の一部の回転を定義する。ピクセルの相対的位置が画像領域内であれば主メモリ・ブロックから画像ピクセルがフェッチされる。
【０００８】
本発明の第二の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では画像領域内における一つのピクセルの相対的位置がまず計算される。次にピクセルの相対的位置が縁領域の幅と比較され、このピクセルが縁領域に位置しているか判断する。ピクセルの相対的位置が縁領域内であり、縁領域の角部分に位置している場合角ピクセルが角メモリ・ブロックからフェッチされる。さもなければピクセルが縁領域の側面部分に位置している場合は側面ピクセルが側面メモリ・ブロックからフェッチされる。ピクセルの相対的位置が画像領域内であれば主メモリ・ブロックから画像ピクセルがフェッチされる。
【０００９】
本発明の第三の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では縁領域の一部がメモリに格納される。次に画像内のピクセルの相対的位置が判断される。ピクセルの相対的位置に応じて画像ピクセルまたは縁領域の一部の各ピクセルが次にメモリからフェッチされる。
【００１０】
本発明の第四の形態では画像領域内に縁領域を組み込むためのディスプレー・コントローラが提供される。ディスプレー・コントローラはメモリを含んでいる。メモリは画像ピクセルを格納するように構成された第1メモリ・ブロック、角ピクセルを格納するように構成された第2メモリ・ブロック、および側面ピクセルを格納するように構成された第3メモリ・ブロックを含む。ディスプレー・コントローラは画像ピクセル、角ピクセル、または側面ピクセルの一つをフェッチするように構成されたメモリ・コントローラも含んでいる。さらにメモリ・コントローラと通信する主画像フェッチ回路がディスプレー・コントローラに含まれる。主画像フェッチ回路にはピクセルが縁領域にあるか判断するためにピクセルの相対的位置を縁領域幅と比較するロジック、第2メモリ・ブロックから角ピクセルをフェッチするロジック、第3メモリ・ブロックから側面ピクセルをフェッチするロジック、および第1メモリ・ブロックから画像ピクセルをフェッチするロジックが含まれる。
【００１１】
本発明の第五の形態では画像領域内に縁領域を組み込むための装置が提供される。装置にはディスプレー・コントローラが含まれる。ディスプレー・コントローラには画像領域内におけるピクセルの相対的位置を計算する回路構成、縁メモリ・ブロックから縁ピクセルをフェッチする回路構成、および画像ピクセルを主メモリ・ブロックからフェッチする回路構成を含む。装置はさらにディスプレー・コントローラと通信する中央演算装置（CPU）およびディスプレー・コントローラと通信し、それにより画像領域の表示を可能にするディスプレーも含まれる。
【００１２】
発明の他の形態および利点は発明の原理を例示する添付図面と併せて後述の詳細な説明により明らかにされる。
【発明を実施するための最良の形態】
【００１３】
本発明は添付図面と併せて次の詳細な説明により容易に理解される。類似した参考数字は類似した構成要素を表す。
【００１４】
画像領域内に縁領域を組み込むためのハードウェアで実行される方法および装置に関する発明が説明される。本発明はこれらの具体的な詳細の一部またはすべてなしでも実施できるということは当業者に明らかであろう。他面、本発明を不必要に不明瞭にせぬよう周知のプロセス操作は詳細に説明されていない。
【００１５】
ここで説明される実施形態は画像領域内に縁領域を組み込むための装置、ディスプレー・コントローラ、およびハードウェアで実行される方法を提供している。基本的にはオーバーレイ全体を格納する代わりに縁領域をなすオーバーレイ部分のみがメモリに格納される。一実施形態では下記により詳細に説明されるように、主画像フェッチ回路がまずアクセスされ画像領域内におけるピクセルの相対的位置を判断する。ピクセルの相対的位置に応じて画像ピクセルまたは縁領域の部分のピクセルがメモリからフェッチされ、その部分は縁領域の対称性を維持するために回転されることができる。
【００１６】
図２は本発明の一実施形態による角部分および側面部分を有する縁領域を示す。繰り返しパターンを有する対称の縁において縁は縁領域200全体が構成される２つの基本的部分に分解することができる。図２に示すように縁領域200は角部分204と側面部分202を含む。第１の部分（即ち角部分204）は縁領域200の４つの角を定義する。第２の部分（即ち側面部分202）は縁領域200の残部を定義する。一実施形態では縁領域200内の角部分204および側面部分202の位置に応じ角部分および側面部分は対称性を維持するために回転することができる。要するに縁領域200は角部分204および側面部分202の複数の回転コピーから構成することができる。加えて角部分204および側面部分202の形状は図２に示すような「正方形」である必要はなく、例えば長方形、三角形、平行四辺形、等々どのような適当な形状とサイズでも良い。
【００１７】
図３は本発明の一実施形態による、画像領域内に縁領域を組み込むためのハードウェアで実行される方法の高レベル概要を示すフローチャート図である。図３で示すように操作302に始まり、ピクセルの相対的位置が画像領域内で計算される。さらに詳細に下述されるとおり、ピクセルの相対的位置を次に操作304で縁領域幅と比較し、そのピクセルが縁領域内に位置するか判断する。
【００１８】
操作306で示すように、一実施形態ではピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルがフェッチされる。この実施形態で縁領域は角部分および側面部分の２つの明白な部分から得られることが理解される必要がある。
【００１９】
ピクセルの相対的位置が画像領域にある場合は操作308で主メモリから画像ピクセルがフェッチされる。逆にピクセルの相対的位置が縁領域にある場合は操作310で新たに照合が実施されピクセルが縁領域の角部分に位置するか判断する。ピクセルが角部分に位置する場合操作312で角ピクセルが角メモリ・ブロックからフェッチされる。ピクセルが角部分に位置しない場合このピクセルは側面部分に位置することになり、操作314で側面ピクセルが側面メモリ・ブロックからフェッチされる。一実施形態では縁の対称性を維持するため角部分と側面部分が回転される。即ち縁の正確な側面または角に応じ側面または角部分からのピクセルの回収順序が調整される。さらに詳細に下述されるように、角部分および側面部分を回転させる方法の一例は角メモリ・ブロックおよび側面メモリ・ブロックからピクセルをフェッチする順序を計算することである。計算された順序が角部分と側面部分の回転を定義する。言い換えればピクセルがメモリからフェッチされるメモリ・アドレスの順序を変化させることにより角部分と側面部分を回転することができる。
【００２０】
図４は本発明の一実施形態による、画像領域内に縁領域を組み込むための装置の簡略化された概要図である。装置602には適当な種類の演算デバイスが含まれる。例えば装置602は携帯端末、携帯電話、ウェブ・タブレット、ポケット・パソコン、等々であって良い。図４に示すとおり装置602には中央演算装置（CPU）604、メモリ606、ディスプレー・コントローラ608、およびディスプレー610が含まれる。ディスプレー610としては液晶（LCD）ディスプレー、薄膜トランジスタ（TFT）ディスプレー、ブラウン管（CRT）モニター、テレビ、等々が考えられる。メモリ606の例にはスタティック・ランダムアクセスメモリ（SRAM）、ダイナミック・ランダムアクセスメモリ（DRAM）、等々が含まれる。
【００２１】
ディスプレー・コントローラ608はCPU 604、メモリ606、およびディスプレー610と通信する。一実施形態でピクセルはディスプレー・コントローラ608内に含まれるメモリに格納されている。別の実施形態ではCPU 604と通信するメモリ606がピクセルを格納するように構成されることができる。CPU 604、メモリ606、およびディスプレー・コントローラ608は相互接続されているように図示されているが、当業者であればこれらのコンポーネントは各々共通バス経由で通信することもできることを理解するであろう。
【００２２】
画像領域内に縁領域を組み込む上述の機能はディスプレー・コントローラ608に組み入れられている。一実施形態でディスプレー・コントローラ608は画像領域内におけるピクセルの相対的位置を計算する回路構成、角メモリ・ブロックから角ピクセルをフェッチする回路構成、側面メモリ・ブロックから側面ピクセルをフェッチする回路構成、および主メモリ・ブロックから画像ピクセルをフェッチする回路構成を含んでいる。その後ディスプレー・コントローラ608に結合されるディスプレー610が対応する画像ピクセルまたは縁ピクセルを表示する。
【００２３】
ここで説明される機能は適当なハードウェア記述言語（HDL）によりファームウェアに統合することができるということは当業者には明らかであろう。例えばHDL（例、VERILOG）を用いてファームウェアとここに説明される必要な機能を提供するためのロジック・ゲートのレイアウトとを統合し縁領域組込み技術および関連機能のハードウェアによる実行を提供することができる。このように、ここで説明される実施形態はここで説明される機能を達成するのに適していればどのような形またはフォーマットでも良く、ある特定の形またはフォーマットに限定されるものではない。
【００２４】
図５は図４に示される、本発明の一実施形態によるディスプレー・コントローラのより詳細な図式である。図５に示されるようにディスプレー・コントローラ608はメモリ402、メモリ・コントローラ408、主画像フェッチ回路410、およびディスプレー・インタフェース412を含む。メモリ402にはSRAM、DRAM等々適当なメモリが含まれる。一実施形態でメモリ402は主メモリ404、角メモリ405、および側面メモリ407の別個のブロックに分かれている。主メモリ・ブロック404は画像ピクセルを格納し、角メモリ・ブロック405は角ピクセルを、側面メモリ・ブロック407は側面ピクセルを格納する。あるいは別の実施形態ではピクセルがディスプレー・コントローラ608の外部にあるメモリ領域に格納されることができる。ディスプレー・インタフェース412は主画像フェッチ回路410と通信するが、ディスプレーに対するインタフェースを提供する。
【００２５】
一実施形態で主画像フェッチ回路410はピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルをフェッチするロジックを含む。例えば主画像フェッチ回路410はピクセルの相対的位置が縁領域内にありピクセルが縁領域の角部分内にある場合角メモリ・ブロック405から角ピクセルをフェッチするロジックを含んでいる。しかしピクセルの相対的位置が画像領域内にある場合、主画像フェッチ回路410は主メモリ・ブロック404から画像ピクセルをフェッチするロジックを含む。
【００２６】
図６は図５に示される、本発明の一実施形態による主画像フェッチ回路のより詳細なブロック図である。図６で示すとおり主画像フェッチ回路410は水平カウンタ502、垂直カウンタ504、比較回路構成506、回転回路構成512、およびレジスタ510を含む。上述のように主画像フェッチ回路410をアクセスし、あるピクセルが表示用に出力される際そのピクセルの画像領域内における相対的位置を計算する。ピクセルの相対的位置を計算するためにピクセルは一つ以上のカウンタで探知される。一実施形態で主画像フェッチ回路410は水平方向にピクセルの位置を探知する水平カウンタ502と垂直方向にピクセルの位置を探知する垂直カウンタ504とを含んでいる。ディスプレー上の画像は水平方向では左から右へ、垂直方向では上から下へリフレッシュされることが理解されよう。ピクセルの探知において水平カウンタ502および垂直カウンタ504は表示用に次のピクセルに移行する際一個分増分される。例えば最初のピクセルが水平の線に沿って左から右に出力される際当初ゼロの計数値であった水平カウンタ502の数値が一つ増える。このように水平方向に沿った最初のピクセルの相対的位置は１という計数値で識別される。同じ水平の線上における隣のピクセル列に移行する際水平カウンタ502は計数値1から計数値２に増分する。この場合同じ水平の線上における隣のピクセルの相対的位置は２という計数値で識別される。このようにして水平カウンタ502は水平方向に沿った各ピクセルを把握しておく。同様に垂直カウンタ504は画像領域内の次のピクセル行に移行する際上記と同じ方法で各ピクセルを把握しておく。垂直カウンタ504は水平カウンタ502が行の終りに相当する計数に到達することに基づいて増分する。このように垂直カウンタ504は連続する行への移行を捉える。つまり増分する水平カウンタ502と垂直カウンタ504は画像領域内のピクセルの相対的位置、またはＸおよびＹ座標を計算する。さらにカウンタの増分値は1である必要はなく、適当な値（例えば２、３、４、等々）で増分することができる。別の実施形態では主画像フェッチ回路410がピクセルの探知に一つのカウンタを有することができる。この場合各ピクセルが表示される際カウンタは１だけ増分する。従って各ピクセルは固有の計数値で識別される。当業者間では知られているように固有の計数値を画像領域内におけるピクセルのＸおよびＹ座標に変換するために別途の計算が適用される。
【００２７】
主画像フェッチ回路410はピクセルが縁領域に位置するかを判断するためにさらに比較回路構成506とレジスタ510を含む。一実施形態で比較回路構成506はピクセルの相対的位置を縁領域幅508と比較するロジックを含む（例えばコンパレータ）。縁領域幅508は縁領域の厚みを指定する値で、一実施形態ではレジスタ510に格納される。あるいは別の実施形態では縁領域幅508を主画像フェッチ回路410の外に位置する中央レジスタに格納することができる。縁領域は均一でない場合があることを理解されよう。例えば縁領域は垂直方向と水平方向に沿った縁領域の厚みを各々指定する縁領域の別々の異なった垂直縁幅と水平縁幅を有することができる。この実施形態でレジスタ510は垂直縁幅および水平縁幅を指定する２つの値を格納する。
【００２８】
図６に示すとおり主画像フェッチ回路410にはさらに回転回路構成512が含まれる。一実施形態では回転回路構成512に角メモリ・ブロックおよび側面メモリ・ブロックからピクセルをフェッチする順序を計算するロジックが含まれる。計算された順序が角部分および側面部分の回転を定義する。言い換えれば、順序は画像内のピクセル位置とメモリに格納される画像ピクセルのメモリ・アドレスとの計算された関連付けである。例えば図７Ａ−７Ｄは本発明の一実施形態による、角部分702が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図である。図７Ａ−７Ｄは左上の角部分、右上の角部分、左下の角分、および右下の角部分を示している。例示のため角部分702内の各正方形はピクセルを表す。正方形内の各番号（例えば１、２、３、４、等々）はそのピクセルに関連付けされたメモリ・アドレスを表す。メモリ・アドレスは各ピクセルに割り当てられる番号でピクセルが各々メモリに格納されている場所を探知するために使用される。メモリ・アドレスは適当などのようなビット幅でも良い。例えば一実施形態でメモリ・アドレスは８ビット長である。別の実施形態ではメモリ・アドレスが１６ビット長、等々である。
【００２９】
図７Ａ−７Ｄに示すとおり、２５個の正方形（すなわち５ｘ５からなるピクセルのアレー）が角部分702を構成する。各ピクセルはメモリ・アドレス番号に関連付けされている。例えば図７Ａに示すとおりゼロ度の回転の場合角部分402の左上端の角に位置するピクセルはゼロという例示メモリ・アドレスを有し、同じ角部分の右上端の角に位置する別のピクセルは４というメモリ・アドレスを有する。
【００３０】
この場合ピクセルがメモリからフェッチされる特定の順序が角部分702の回転を定義する。すなわち角部分702はピクセルの位置を異なったメモリ・アドレスに関連付けすることによって回転される。例えば図７Ｂは角部分702が右回りに９０度回転し右上の角部分を定義するところを示す。図７Ｄは角部分が１８０度回転し右下の角部分を定義するところを示し、図７Ｃは角部分が２７０度回転し左下の角部分を定義するところを示す。例えばゼロ度の回転で図７Ａに示す角部分702の左上端の角に位置するピクセルはゼロというメモリ・アドレスに関連付けられる。９０度右回りに回転した後図７Ｂで示す角部分702の左上端の角に位置する同じピクセルは２０という別のメモリ・アドレスに関連付けられる。そこでゼロ度の回転で図７Ａに示す角部分702の水平上端の行を構成するピクセルは左から右への順序でメモリ・アドレス０、１、２、３、および４からフェッチされる。角部分702を右回りに９０度回転して右上の角部分を定義するには図７Ｂに示す角部分702の水平上端の行を構成するピクセルは左から右への順序でメモリ・アドレス２０、１５、１０、５、および０からフェッチされる。メモリ内のデータが変わるのではなく、メモリからデータをフェッチする順序が変わるということが理解されよう。参考のため図７Ａ−７Ｄに示す回転は角部分702の中央に位置する基準点を中心としているが、基準点は角部分の内外どこに位置しても良いことが理解されよう。
【００３１】
図８Ａ−８Ｄは本発明の一実施形態による、側面部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図である。側面部分802は縁領域で角部分でない部分を定義する。図８Ａ−８Ｄは上端側面部分、右側面部分、下端側面部分、および左側面部分を示す。この例では５個の正方形（即ち１ｘ５からなるピクセルのアレー）が側面部分802を構成する。図８Ｃは側面部分802が９０度回転し右側面部分を定義するところを示す。図８Ｄは側面部分が１８０度回転し下端側面部分を定義するところを示し、図８Ｂは側面部分が２７０度回転し左側面部分を定義するところを示す。ここでも参考のため、回転は側面部分802の中央に位置する基準点を中心としている。
【００３２】
同様にメモリからピクセルがフェッチされる特定の順序が側面部分802の回転を定義する。例えばゼロ度の回転では図８Ａに示す側面部分802の上端に位置するピクセルはゼロというメモリ・アドレスに関連付けされている。１８０度右回りに回転すると図８Ｄに示す側面部分802の上端に位置する同じピクセルは４という異なったメモリ・アドレスに関連付けされている。
【００３３】
図９は本発明の一実施形態による、図７Ａ−７Ｄに示す角部分および図８Ａ−８Ｄに示す側面部分を含む縁領域を示す。図９に示すとおり縁領域200は図７Ａ−７Ｄおよび図８Ａ−８Ｄに各々示される角部分および側面部分を含む２０ｘ２０ピクセルの画像である。言い換えれば縁領域は角部分と側面部分の複数コピーの合成である。縁領域の対称性を維持するために角部分および側面部分はしかるべく回転される。
【００３４】
上述のように一実施形態では主画像取出し回路にピクセルをメモリからフェッチするメモリ・アドレス順序を作成するロジックが含まれる。この例で主画像取出し回路は図９に示す２０ｘ２０のの最初の行として以下のメモリ・アドレス順序を出す：
｛0,1,2,3,4,0,0,0,0,0,0,0,0,0,0,20,15,10,5,0｝
上記メモリ・アドレス順序は１２の部分、つまり２個の角部分と１０個の側面部分を含む。最初の５個のメモリ・アドレス｛0,1,2,3,4｝は図７Ａに示す左上角部分の上端行に関連付けされている。｛0,0,0,0,0,0,0,0,0,0｝という次の１０個のメモリ・アドレスは図８Ａに示す側面部分の上端にある上端ピクセルの１０個のコピーに関連付けされている。最後の５個のメモリ・アドレス｛20,15,10,5,0｝は図７Ｂに示す右上角部分の上端行に関連付けされている。同様に主画像フェッチ回路は２０ｘ２０画像の各行のピクセルをフェッチする順序を出し、縁領域200を作成する。
【００３５】
図１０は本発明の一実施形態による、明確な角部分および側面部分を有する縁領域を示す。図１０で示すとおり縁領域200は上述のような２つの区別可能な部分ではなく、４つの区別可能な角部分903、904、907、および909、ならびに４つの側面部分902、905、906、および908を含む。各部分は別個のメモリ・ブロックに格納され、適宜にフェッチされる。図２および図１０は縁領域200が各々２つの部分および８つの部分から派生されていることを示す。しかし縁領域200はどのような適当な部分から派生あるいはそれらに分けることが理解されよう。例えば一実施形態では縁領域200が繰り返される１つの部分のみで構成されることができる。さらに各部分の回転は任意である。例えば図１０では各部分に関連する画像が既に回転している可能性もあり同図の各部分を回転する必要がないかもしれない。しかし図９に示す部分は対称性を維持するために回転する必要がある。このように縁領域200はどのような適当な部分に分割することができ、どのような適当数の部分でも必要であれば回転することができる。
【００３６】
本明細書で説明される実施形態は非直線的な縁部を有する縁領域にも対応することができる。非直線的な縁部は基本的に透明ピクセルを含むことで可能になる。非直線的な縁部の場合、縁領域は同領域の可視部分および透明部分を含む縁領域幅で定義される。透明部分は透明なピクセルを含む。透明ピクセルと可視ピクセルを混ぜることにより非直線な縁部を定義することができる。各ピクセルはピットの数で定義され（例えば8、16ビット、等々）、ビット数によりピクセルが透明であるか定義されることは当業者に周知のことである。例えば透明レジスタは特定の8ビット値を有する。あるピクセルの8ビット値が透明レジスタと合致すればこのピクセルは透明である。これは基本色と呼ばれることもある。
【００３７】
図１１は本発明の一実施形態による、非直線的な縁部を組み込むことができるディスプレー・コントローラの詳細な図式である。図５のディスプレー・コントローラと同様、ディスプレー・コントローラ801はメモリ402、メモリ・コントローラ408、主画像フェッチ回路410、およびディスプレー・インタフェース412を含む。しかし図１１のディスプレー・コントローラ801はさらにオーバーレイ画像フェッチ回路808およびオーバーレイ機能モジュール810も含む。図１１に示すとおりディスプレー・コントローラ801に含まれるメモリ402は画像ピクセルを格納する主メモリ・ブロック404および縁領域ピクセルを格納する追加ブロックを有する。各追加ブロックは縁領域の一部分を構成するピクセルを格納するが、メモリ402は縁領域を構成する部分の数に対応してどのような適当な数のブロックにも分割することができることが理解されよう。
【００３８】
主画像フェッチ回路410は上述のとおりピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルをフェッチするためのロジックも含んでいる。しかし本実施形態においてはピクセルが縁領域に位置する場合主画像フェッチ回路410およびオーバーレイ画像フェッチ回路808が同時に各々画像ピクセルと縁ピクセル（例えば角ピクセル、側面ピクセル、等々）をフェッチする。その後縁ピクセルを分析し、縁ピクセルが透明であるか判断する。ここで縁ピクセルの値が上述の透明性を決定する。縁ピクセルが透明でない場合、その縁ピクセルは縁領域内の表示用に選ばれる。縁ピクセルが透明の場合、縁領域内の表示用として代わりに画像ピクセルが選ばれる。
【００３９】
例えば画像領域内のピクセルの相対的位置がまず計算され、次にピクセルが縁領域に位置しているか判断するために相対的位置を縁領域幅と比較する。相対的位置が画像領域に存在する場合、主画像フェッチ回路410は表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。しかしピクセルの相対的位置が縁領域内に存在する場合、主画像フェッチ回路410は主メモリ・ブロック404から画像ピクセルをフェッチする。同時にオーバーレイ画像フェッチ回路808がしかるべきブロックから縁メモリをフェッチする。その後オーバーレイ機能モジュール810が縁ピクセルを分析し、縁ピクセルが透明か判断する。縁ピクセルが透明でない場合オーバーレイ機能モジュール810は縁領域内の表示用に縁ピクセルを選択する。縁ピクセルが透明の場合オーバーレイ機能モジュール810は縁領域内の表示用として代わりに画像ピクセルを選択する。
【００４０】
あるいは本発明の一実施形態による図５のディスプレー・コントローラは非直線的縁部を組み込むように構成することができる。図５に戻り、ピクセルの相対的位置をまず計算し、この相対的位置を縁領域幅と比較してピクセルが縁領域内に位置するか判断する。ピクセルの相対的位置が画像領域に存在する場合は主画像フェッチ回路410が表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。しかしピクセルの相対的位置が縁領域内に存在する場合、主画像フェッチ回路410は角メモリ・ブロック405または側面メモリ407から各々縁ピクセルをまずフェッチする。次に主画像フェッチ回路410は縁ピクセル、すなわち縁ピクセルと結びついた値、を分析して縁ピクセルが透明か判断する。縁ピクセルが透明でない場合、主画像フェッチ回路410は表示用に縁ピクセルをディスプレー・インタフェース412に送る。しかし縁ピクセルが透明の場合、主画像フェッチ回路410は次に表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。
【００４１】
要約すると、上述の発明は画像領域内に縁領域を組み込むために装置、ディスプレー・コントローラ、およびハードウェアで実行する方法を提供する。オーバーレイ全体を格納する従来の方法と比較すると縁領域をなすオーバーレイの部分を格納しそれに従ってピクセルをフェッチすることはメモリの所要量を相当削減する。例えば従来の方法では図９に示す２０ｘ２０の画像はメモリに格納するために４００ピクセルを必要とする。本発明では単に３０ピクセルをメモリに格納すれば良く、メモリ所要量が92.5%の節約になる。１００ｘ１００の画像の場合節約量は99.7%になる。このように画像が大きければ大きいほどメモリ所要量の節約が大きくなる。また透明ピクセルを処理する余分の回路も削除することができる。このようにメモリ所要量を削減し余分の回路を削除すると必要な処理電力および帯域も少なくて済む。その結果電力、メモリ、および計算能力の限られた小型携帯デバイスでも上述の発明を組み込むことにより充分に縁を処理し組み込むことができる。
【００４２】
前記実施形態を考慮すると本発明はコンピュータ・システムに格納されたデータに係わる各種のコンピュータ実行操作を用いることができることが理解されよう。これらの操作は物理量を物理的に操作する必要があるものである。必ずしもではないが、通常これらの量は格納、移転、組み合わせ、比較、およびその他の方法で操作される電気または磁気信号の形を取る。さらに実行される操作はしばしば実現、識別、判断、または比較などの用語で引き合いにされるものである。
【００４３】
ここで説明され、発明の一部をなす操作はいずれも有益なコンピュータ操作である。発明はさらにこれらの操作を実行するためのデバイスまたは装置に関するものである。装置は必要な目的のために特別に構成されることもでき、または汎用コンピュータでコンピュータ内に格納されたコンピュータ・プログラムによって選択的に駆動または構成されたものであっても良い。特に各種汎用コンピュータを本発明の教示に従って書かれたコンピュータ・プログラムといっしょに使用することができ、または必要な操作を実行するより専門的な装置を構成する方がより便利かもしれない。
【００４４】
上記の発明はハンドヘルド・デバイス、マイクロプロセッサ・システム、マイクロプロセッサに基づいたまたはプログラマブルな消費者エレクトロニクス、ミニコンピュータ、メーンフレーム・コンピュータ、その他のコンピュータ・システム・コンフィギュレーションを用いて実施することができる。前記発明は明白な理解のためにかなり詳しく説明されたが、添付請求項の範囲内で一部の変更や改良を実施することができることは明らかであろう。従って本実施形態は例示的とみなされ、限定するものではない。本発明はここに記述される詳細に限定されるものではなく、添付請求項の範囲および同等物の中で変更することができる。請求項において符号および／あるいは工程は請求項で明示的に記述されない限り操作の特定の順序を意味するものではない。
【図面の簡単な説明】
【００４５】
【図１】画像の周囲に縁を施す従来の方法。
【図２】本発明の一実施形態による角部分と側面部分を有する縁領域。
【図３】本発明の一実施形態による、画像領域内に縁領域を組み込むためのハードウェアで実行される方法の高レベル概要を示すフローチャート図。
【図４】本発明の一実施形態による、画像領域内に縁領域を組み込むための装置の簡略化された概要図。
【図５】図４に示される、本発明の一実施形態によるディスプレー・コントローラのより詳細な図式。
【図６】図５に示される、本発明の一実施形態による主画像フェッチ回路のより詳細なブロック図。
【図７】本発明の一実施形態による、角部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図。
【図８】本発明の一実施形態による、側面部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図。
【図９】本発明の一実施形態による、図７Ａ−７Ｄに示す角部分および図８Ａ−８Ｄに示す側面部分を含む縁領域。
【図１０】本発明の一実施形態による、明確な角部分および側面部分を有する縁領域。
【図１１】本発明の一実施形態による、非直線的な縁部を組み込むことができるディスプレー・コントローラの詳細な図式。
【符号の説明】
【００４６】
302  画像領域内のピクセルの相対的位置を計算
304  ピクセルの相対的位置を縁領域幅と比較
306  ピクセルの相対的位置は縁領域の中か？
310  ピクセルは角の位置にあるか？
308  主メモリから画像ピクセルをフェッチする
312  計算された命令に従って角ピクセルをフェッチする
314  計算された命令に従って側面ピクセルをフェッチする
604  CPU
606  メモリ
608  ディスプレー・コントローラ
610  ディスプレー
402  メモリ
404  主メモリ・ブロック
405  角メモリ・ブロック
407  側面メモリ・ブロック
408  メモリ・コントローラ
410  主画像フェッチ回路
412  ディスプレー・インタフェース
410  主画像フェッチ回路
502  水平カウンタ
504  垂直カウンタ
506  比較回路構成
510  レジスタ
508  縁領域幅
512  回転回路構成
402  メモリ
404  主メモリ
408  メモリ・コントローラ
410  主画像フェッチ回路
808  オーバーレイ画像フェッチ回路
810  オーバーレイ機能
412  ディスプレー・インタフェース
【図１】
2006003898.tif 000003
【図２】
2006003898.tif 000004
【図３】
2006003898.tif 000005
【図４】
2006003898.tif 000006
【図５】
2006003898.tif 000007
【図６】
2006003898.tif 000008
【図７】
2006003898.tif 000009
【図８】
2006003898.tif 000010
【図９】
2006003898.tif 000011
【図１０】
2006003898.tif 000012
【図１１】
2006003898.tif 000013