JP2004029783A - 画素データをメモリから取出す方法及び装置 - Google Patents
画素データをメモリから取出す方法及び装置 Download PDFInfo
- Publication number
- JP2004029783A JP2004029783A JP2003158189A JP2003158189A JP2004029783A JP 2004029783 A JP2004029783 A JP 2004029783A JP 2003158189 A JP2003158189 A JP 2003158189A JP 2003158189 A JP2003158189 A JP 2003158189A JP 2004029783 A JP2004029783 A JP 2004029783A
- Authority
- JP
- Japan
- Prior art keywords
- data
- line
- odd
- segment
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/391—Resolution modifying circuits, e.g. variable screen formats
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0247—Flicker reduction other than flicker reduction circuits used for single beam cathode-ray tubes
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2330/00—Aspects of power supply; Aspects of display protection and defect management
- G09G2330/02—Details of power systems and of start or stop of display operation
- G09G2330/021—Power management, e.g. power saving
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/02—Graphics controller able to handle multiple formats, e.g. input or output formats
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Transforming Electric Information Into Light Information (AREA)
Abstract
【課題】画素データをメモリから取出す方法及び装置
【解決手段】インタレース走査によって表示装置に表示するデータを用意するグラフィックスコントローラが提供される。グラフィックスコントローラはメモリ及びビデオデータの受信に適合させたラインバッファを備え、ラインバッファと通信するデータ配列回路を有する。データ配列回路は受信したビデオデータを偶数セグメントと対応する奇数セグメントとしてメモリに格納するために受信データを処理し、偶数セグメントは偶数フィールドの線からのデータに関連付けられ、奇数セグメントは奇数フィールドの線からのデータに関連付けられ、一対の偶数セグメント及び奇数セグメントが1画素のデータを定義する。メモリへの1回のメモリアクセスで偶数セグメント及び対応する奇数セグメントを検索する1つのパイプバッファを有する。
【選択図】 図2
【解決手段】インタレース走査によって表示装置に表示するデータを用意するグラフィックスコントローラが提供される。グラフィックスコントローラはメモリ及びビデオデータの受信に適合させたラインバッファを備え、ラインバッファと通信するデータ配列回路を有する。データ配列回路は受信したビデオデータを偶数セグメントと対応する奇数セグメントとしてメモリに格納するために受信データを処理し、偶数セグメントは偶数フィールドの線からのデータに関連付けられ、奇数セグメントは奇数フィールドの線からのデータに関連付けられ、一対の偶数セグメント及び奇数セグメントが1画素のデータを定義する。メモリへの1回のメモリアクセスで偶数セグメント及び対応する奇数セグメントを検索する1つのパイプバッファを有する。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は一般的に画像表示システムに関し、より具体的にはインタレース走査によって表示画面に表示する画像データを格納し取出す方法及び装置に関する。
【0002】
【従来の技術】
テレビは家庭における娯楽の中心になっている。またテレビの機能も常に増え続けている。最近、コンピュータとテレビとの境界がはっきりしなくなるにつれ、テレビはコンピュータの特性をより備えるようになり、逆にコンピュータもテレビの特性をより備えるようになってきている。加えてテレビはアナログ処理からデジタル処理に移行しつつある。両デバイスが互いに近似するにつれ、そのシステムに対する要求は増加してきている。このようにより多くのデータがシステムによって処理され、システムメモリへの要求も増加してくると、画像が損なわれるのを防ぐためにより高い帯域が必要となる。さらにテレビ装置における表示品質及び解像度は常に向上しており、これがさらなる処理要求をシステムに課している。
【0003】
テレビの表示画面上に提示される画像は、明るい帯域と暗い帯域に分離されることなく、全体に均一な明るさを確保するためにインタレース走査が用いられる。すなわち、各静止画は、交互に配置された2つの走査によって構成される。例えば偶数番目の線が走査され、その後に奇数番目の線が走査されることで1フレーム分のデータを定義する偶数番・奇数番のすべての線が完全に走査される。
【0004】
隣接する走査線で色が急変すると、テレビ画面で表示した際にフリッカーが発生する。すなわち全国テレビジョン方式委員会(NTSC)のモニタ画面の場合、より輝度の高い画素又は水平方向の画素群が、その上下でより輝度の低い画素と隣接するとフリッカーを発生する。フリッカーは人の目に良くないと同時に表示品質を悪くする。テレビの場合は、帯域幅の問題から、フレーム繰返し率を2分の1に減らして、一垂直走査毎に半分の線を走査するインタレース走査が採用されている。従って、各フレームは、2回の垂直走査により、偶数番目と奇数番目の線が交互のフィールドに分けて走査される。
【0005】
図1は画像データをテレビのメモリに格納するシステムの概略図である。画像データは、データと相互に作用するソフトウェアが使い易いように偶数線と奇数線が交互にメモリ100に格納される。奇数線のデータと偶数線のデータには、それぞれ別々のメモリアクセスが必要となる。つまり偶数線のデータを取出して偶数バッファ102に入れるために1回のメモリアクセスを行ない、奇数線のデータを取出して奇数バッファ104に入れるためにもう一回メモリアクセスが行なわれる。その後、偶数線及び奇数線はフリッカーフィルタ106により平均化され、最終的に1つの線として表示装置108に出力される。このように、表示データの1画素を出力するためには、偶数線と奇数線のデータを2つのバッファ各々から取得し平均するという、2回のメモリアクセスが必要となる。
【0006】
他のデバイスもメモリを使用する場合、バッファからの複数回の取出しは、メモリの負担を大きくする。そうなるとデータ要求についていくためには、メモリは高帯域幅が必要となる。メモリがデータの要求に対応できなくなると、その結果、表示装置上に損なわれた画面である不可解な表示、つまり破損画像が生成される。さらにテレビ装置において視聴者が利用できる機能がさらに強化され、同時にテレビメーカーが高品位テレビを採用するようになるとメモリへの要求はさらに大きなものになる。従って、このような要求に対応するためには、画像破損を避けるためのメモリ容量の増加や電力消費の増加というように対応コストが発生することになる。
【0007】
【特許文献1】
米国特許第6,067,120号明細書
【特許文献2】
米国特許第6,081,303号明細書
【0008】
【発明が解決しようとする課題】
従って画像の品質を維持しながらメモリの負担を軽減し、インタレース走査によって表示を出力するシステム用の装置及び方法を提供するためには、従来技術の問題を解決する必要がある。
【0009】
【課題を解決するための手段】
概して本発明は、メモリにデータを格納しそこから取出す方法及びその方法を実行するグラフィックスコントローラを提供することによって上記の用件を満たすものである。本発明はプロセスとして、システムとして、あるいはデバイスとして、といったように様々な方法で実施することができる。以下に本発明の創意に富んだ実施例をいくつか説明する。
【0010】
1つの実施例では、インタレース走査により表示装置に提示されるデータを用意するグラフィックスコントローラが提供される。グラフィックスコントローラは、メモリ及びビデオデータの受信に適合するラインバッファを有する。ラインバッファと通信するデータ配列回路も有する。データ配列回路は、受信データを偶数セグメント及び対応する奇数セグメントとしてメモリに格納するために受信ビデオデータを処理するように構成される。偶数セグメントは偶数フィールドの線のデータに関連付けされ、奇数セグメントは奇数フィールドの線のデータに関連付けされる。偶数セグメント及び対応する奇数セグメントは1画素分のデータを定義する。メモリに1回アクセスすることで、偶数セグメント及び対応する奇数セグメントを検索するように構成されたパイプバッファを1つ有する。
【0011】
別の実施例では、表示装置上でインタレース画像の表示を可能にする装置が提供される。同装置は、中央演算装置(CPU)及びバスを有する。画像データを受信するように構成されたグラフィックスコントローラも有する。グラフィックスコントローラはバス経由でCPUと通信する。グラフィックスコントローラはメモリ及び画像データを処理するデータ配列回路を備えており、これにより画像データは偶数セグメント及び対応する奇数セグメントとしてメモリに格納される。ここで偶数セグメント及び対応する奇数セグメントで1画素分のデータが定義される。メモリに1回アクセスすることで偶数セグメント及び対応する奇数セグメントを検索するように構成されたパイプバッファを1つ有する。
【0012】
また別の実施例では、インタレース走査に対応するよう構成された表示画面に画像データを表示する方法が提供される。この方法は画像データを交互に偶数セグメント及び奇数セグメントとしてメモリに格納することから開始される。交互する偶数・奇数セグメントの各ペアで、少なくとも1つの画素が定義される。次に偶数セグメント及び奇数セグメントがともにメモリへの1回のアクセスで検索される。その後その偶数セグメント及び奇数セグメントで定義された画素はインタレース走査に対応するよう構成された表示画面に送信され表示される。
【0013】
さらに別の実施例では、フレームの偶数フィールド及び奇数フィールドからのインタレース画像データを格納する方法が提供される。この方法はビデオソースから画像データを受信することから始まる。次に画像データは偶数セグメント及び奇数セグメントのペアとしてメモリに格納される。偶数セグメントは偶数線に対応し、奇数セグメントは奇数線に対応する。偶数線と奇数線は互いに隣接しており、その関連付けされた偶数及び奇数セグメントで少なくとも1つの画素が定義される。
【0014】
本発明の他の特徴及び利点は以下の詳細な説明及びそれに伴い本発明の原理を例示する添付図面で明らかにされる。
【0015】
【発明の実施の形態】
インタレース走査で提示される画像データにおいて、画像データを効率的に格納し、メモリの負担を増やすことなく画像データを迅速に取出すことを可能にする装置及び方法に関する発明が説明される。以下の説明から本発明は以下の具体的な内容の一部あるいはすべてがなくても実施することができることは当業者であれば明らかであろう。また本発明を不必要に不明確にしないよう、公知の処理操作は詳しく説明していない。
【0016】
本発明の実施例はインタレース走査によって画像を表示するように構成されたシステムに、画素データをメモリから取出す装置及び方法を提供するものである。受信されたビデオデータは、インタレース走査用1フレーム分のデータとして交互する偶数線及び奇数線のセグメントとして格納される。1実施例においては、ある偶数線の16ビットのセグメントと対応する奇数線の16ビットのセグメントがペアとしてメモリに格納される。この偶数線及び奇数線は、1フレームのデータにおいて隣接する線である。受信されたビデオデータを交互に偶数セグメント及び奇数セグメントとして格納することによって、表示パイプによる1回のメモリアクセスで1画素分のデータを取出すことができる。すなわち本発明の1実施例においては、32ビットのバスを経由して1回のメモリアクセスをすることにより、16ビットの偶数セグメント及び16ビットの奇数セグメントを取得する。その結果表示パイプのメモリに対する負担は相当軽減される。
【0017】
図2はインタレース走査により表示装置に提示されるデータを用意するように構成された本発明の1実施例におけるグラフィックスコントローラの概略図である。中央演算装置(CPU)112は、バス114経由でグラフィックスコントローラ116と通信する。ビデオソース130は、グラフィックスコントローラ116が処理し表示装置128に表示されるビデオ画像データを供給する。1実施例では、CPU112の指示に従い、ビデオ画像が外部ソースからグラフィックスコントローラ116に供給される。別の実施例では、ビデオ画像が有線テレビあるいは衛星のソースなどからライブで直接グラフィックスコントローラ116に供給される。グラフィックスコントローラ116は、32ビットバス経由でランダムアクセスメモリ(RAM)122と通信する1つのラインバッファ118を備えている。RAM122をバッファ118に接続するバスは、32ビットのバスサイズに限定されるものではなく、適切であればどのようなバスサイズでも良い。データ配列回路120はバッファ118と通信する。データ配列回路は以下により詳しく説明される通りビデオデータを処理し、データを交互に偶数セグメントそして奇数セグメントとしてRAM122に格納できるよう構成されている。1実施例では、偶数セグメント及び奇数セグメントが各々16ビットのセグメントで、組み合わせたセグメントサイズが32ビットとなる。偶数セグメントは偶数線に対応し、奇数セグメントは奇数線に対応する。ここで偶数セグメントと奇数セグメントの各ペアは、各々隣接する偶数線及び奇数線に対応する。従って偶数セグメント及び奇数セグメントの各ペアは1画素分のデータを定義する。ビデオ画像データを16ビットの偶数と奇数の交互するデータ量として格納することによって、1つのパイプバッファ124が1回のメモリアクセスで1画素分のデータを取出すことが可能になる。つまり32ビットの取出し1回で偶数及び奇数の画素データが取得される。1つのパイプバッファ124が取出した偶数及び奇数の画素データはフリッカーフィルタ126に転送される。公知のように、フリッカーフィルタ126は、表示線間のコントラストを滑らかにするために、隣接する線のデータを平均することによってインタレース走査によるフリッカーを軽減する。引き続いてフリッカーフィルタのデータはテレビ(TV)の表示画面などのインタレース走査により画像を表示する表示画面に表示されるために表示装置128に出力される。
【0018】
図2において、CPU112は、ビデオソース130からビデオデータをバス114経由でグラッフィクスコントローラ116に送信する命令するコードを備えたデジタルシグナルプロセッサ(DSP)であっても良いことは当業者であれば理解しよう。さらにCPU112は、内蔵システムの1つの要素であっても良い。1実施例では、バッファ118は、線1本分の偶数データ又は奇数データを保持するサイズになっている。バッファ118は、受信するビデオ画像データを格納し、そのデータをRAM122に転送するためにラッチ、フリップフロップなどの適当な記憶回路を備えている。データ配列回路は、受信したビデオデータをバッファ118に移し、適切な偶数セグメント及び奇数セグメントをRAM122に転送するために論理ゲート、カウンタ、コンパレータ、レジスタなどの回路を備えている。1実施例では、バッファ118は、ビデオソース130から受信するビデオデータの線を1つ格納するのに適した複数のクロックドラッチあるいはフリップフロップからなるシフトレジスタである。ビデオソース130から受信されるビデオデータはインタレースの形で入る。すなわち受信ビデオデータは、隣接する偶数線及び奇数線で送信される。
【0019】
図3は図2におけるグラフィックスコントローラで、ビデオ画像データが、格納されたテレビ(TV)コンテンツから供給される場合の概略図である。格納されたTVコンテンツ132は、デジタルテレビあるいは高品位テレビに関連した適当なTVコンテンツであれば何でも良い。例えば格納されたTVコンテンツは、デジタルビデオレコーダに関連するようなハードドライブに格納されたデータでも良い。図2と同様に、CPU112は、格納されたTVコンテンツ132をグラフィックスコントローラ116に送り込む。グラフィックスコントローラ116は、格納されたTVデータを図2で説明したように処理する。すなわち、TVデータを交互する偶数セグメント及び奇数セグメントのペアとしてRAM122に格納することによって、1つのパイプバッファ124が1回の取出しで1画素分のデータを取得することができる。従来は32ビット画素のデータを出力するためには2回の取出しが必要であったのに対し、このように32ビットの画素データを出力するためにRAM122へのメモリアクセスは1回しか必要としないので、1つのパイプバッファ124のRAM122への負担は約50%軽減される。
【0020】
図4Aは、受信したビデオ画像を本発明の1実施例におけるグラッフィックスコントローラのメモリに交互に偶数セグメント及び奇数セグメントとして格納した場合の概略図である。CPU112は、32ビットのバス経由でビデオ画像データをグラフィックスコントローラ116に送り込む。インタレースのビデオ画像データはラインバッファ118に入力される。図中示されるように、ラインバッファ118は、フリップフロップ119などの1列の記憶回路を備えるシフトレジスタで、デジタルデータが順に右へシフトすることを可能にする。1実施例では、ラインバッファ118におけるフリップフロップ119の数は、表示装置128用の線1本分のデータを保持するに適した数である。ラインバッファ118の適切なサイズは色々である。例えば表示装置128が表示する各水平走査線1本に480の画素を有するテレビ画面の場合は、ラインバッファ118は480の画素(線1本分)を保持できるだけのフリップフロップ119を備えることになる。上述の通り、データ配列回路120は、バッファ118で受信するビデオデータを、交互に偶数セグメント及び奇数セグメントとしてRAM122に格納するためのハード的にコード化された命令を備えている。データ配列回路120については図4Bでさらに詳しく説明する。1実施例では、一旦受信ビデオデータの線1本分が完全にラインバッファ118に入ると、最初の偶数セグメントは最初の奇数セグメントとともにラインバッファ118からRAM122にシフトされる。この偶数セグメント及び奇数セグメントは、インタレースデータの隣接する線に対応している。この作業は受信ビデオデータの各線に対し繰り返される。
【0021】
さらに図4Aにおいて、RAM122は交互する偶数セグメント及び奇数セグメントの16ビットデータとしてそのデータを格納していることを示している。1実施例として、交互する16ビットの偶数セグメントと奇数セグメントの各ペアが1画素を定義している。すなわち偶数の16ビットデータ122Aとこれに対応する奇数の16ビットデータ122Bで1つの画素を定義している。図中RAM122に格納されるデータは、偶数データの後に奇数データが続くように示されているが、各画素を定義するパターンが知られている限りRAM122におけるデータの順は重要でないことは当業者であれば理解できよう。図4Aでは偶数データが偶数線を表し、対応する奇数データは隣接する奇数線を表しているが、1画素のデータを定義するものであれば別のパターンで格納してもよい。例えば、2本の線ではなく3本の隣接する線のセグメントの平均が使用される場合は、交互する偶数及び奇数のセグメントは10ビットのセグメントとなる。すなわちRAM122には、交互する偶数セグメント及び奇数セグメントからなる3つのデータが格納される。この場合、32ビットの取出しを1回行なうと、1画素のデータ取出しに2ビットの無効データが含まれることになる。偶数データ及び奇数データの交互するセグメントを格納するパターンは、バッファ118が少なくともある一定のサイズであることを必要とすることは当業者には明らかであろう。例示的な目的から、図4Aは交互の偶数及び奇数セグメントを論理的な配列で表示している。RAM122におけるデータの物理的配列は論理的配列と異なり得ることは当業者に明らかであろう。
【0022】
図4Bは、交互の偶数セグメント及び奇数セグメントをメモリに格納するように構成された本発明の1実施例におけるグラッフィックスコントローラのデータ配列回路の要素を示す概略図である。CPUデータ117は、ラインバッファ118で受信される。データ配列回路120は、CPUデータが偶数セグメント及び奇数セグメントとしてメモリに格納できるようにCPUデータ117を処理する。CPUデータ117がグラフィックスコントローラに受信されながらデータはラインバッファ118に配列される。1実施例では、ラインバッファ118はシフトレジスタである。シフトレジスタにシフトイネーブル信号が通信されると、さらにデータが入るとデータをシフトするようにシフトレジスタが指示を受ける。1実施例では、シフトイネーブル信号がラインバッファ118の各ラッチあるいはフリップフロップに送信される。従って、シフトイネーブル信号がハイでアクティブの場合、シフトイネーブルがクロックサイクルにおいてハイの場合は、すべてのラッチあるいはフリップフロップがシフトされる。しかしシフトイネーブル信号がローの場合はクロックサイクル中には何も起こらない。
【0023】
CPUの制御信号はデコード論理で翻訳される。デコード論理は当然CPUの種類に依存する。デコード論理とは、例えばRAM122のようなメモリにデータを書き込んだり読み出したしたりするためのアドレスを提供するものである。例えばワード線及びビット線のアドレスをデコード論理により提供することができる。1実施例では、制御信号に書込み信号、バイトイネーブル信号、チップセレクト(CS)信号及びバッファイネーブル信号が含まれる。1実施例において、デコード論理はグラッフィクスコントローラのRAM122インタフェースに所在していることは当業者には明らかであろう。
【0024】
図4Bにおけるラインバッファカウンタ150は、ラインバッファ118の受信したデータを数える。すなわち新しいデータがラインバッファ118にシフトする毎にラインバッファカウンタ150が増分する。上述の通り、インタレース走査の場合、1フレームのデータは複数の偶数線及び奇数線からなる。線長は例えばラインバッファ長レジスタ(RegLineBufferLength)158などのレジスタに記憶される。ラインバッファカウンタ150は、データをコンパレータ154に出力する。コンパレータ154は、ラインバッファカウンタ150からのデータをRegLineBufferLength 158からの線長と比較して、ラインバッファ118が1本の線で一杯になったかどうかを判断する。一旦ラインバッファ118が1本分の線データで一杯になると、コンパレータ154はラインバッファカウンタ150にリセット信号を出力し、ラインバッファカウンタは、ラインバッファから次のデータを受信すると、次の線データとしてそのデータのカウントを始める。
【0025】
さらに図4Bにおいて、ラインバッファカウンタ150に加えコンパレータ154からラインカウンタ152にも信号が出力される。ラインカウンタ152はフレームの線数を数え、ラインバッファ118がフレームの最初の線で埋められている最中にメモリ122への書込みを防ぐ。コンパレータ156は、ラインカウンタ152からの出力を比較してラインカウンタがゼロであるか、すなわちラインバッファ118が最初の線を受信しているかを判断する。このようにラインカウンタ152がゼロの場合、ラインバッファ118にフレームの最初の線が埋められている最中はメモリへの書込みは許可されない。1実施例では、ANDゲート162がチップセレクト(CS)信号をローで出力しメモリへの書込みを防止している。ラインカウンタ152が増分すると、つまりラインバッファ118に1線分のデータが埋まり終わると、メモリへの書込みが許可される。すなわち一旦ラインカウンタ152がゼロから増分するとコンパレータ156からの出力はハイになり、ANDゲート162への入力がハイとなることでANDゲート162の出力もハイとなる。その後CPUの各書込みでは、CPUからのデータ及びラインバッファ118からのデータがメモリに書き込まれる。言うまでもなく、交互の偶数セグメント及び奇数セグメントといったCPUからのデータ及びラインバッファ118からの書込みデータの機構は、データのフリッカーをフィルタリングする方法に依存する。データのフリッカーをフィルタリングする代表的な方法については図8A−8Cで検討する。上記説明では信号がハイでアクティブであるが、信号がローでアクティブとなるように回路を設計することもできることは当業者には明らかであろう。ここで1実施例において、データの奇数セグメント及び偶数セグメントがメモリ122に書き込まれ交互するペアとして格納されているのは、図8A及び8Bに示すフリッカーをフィルタする機構に対応するためである。
【0026】
図5は、本発明の1実施例において、データを交互の偶数セグメント及び奇数セグメントとしてメモリに書き込む処理を示す概略図である。CPUデータ134はラインバッファ118に書き込まれる。上述のように、ラインバッファ118はシフトレジスタの役割を果たす。すなわちE0ないしEnで表される最初の線データの各偶数セグメントがラインバッファ118に受信されると、ラインバッファ内の各セグメントは位置を1つ分だけ右にシフトする。1実施例では、ラインバッファ118が画像データのインタレース走査線の1本分に対応するセグメント数を保持できるサイズになっている。1実施例では、E0134aの中身がメモリ122に書き込まれるようになっている。対応する奇数セグメントのデータO0は、メモリ122内でE0134aとペアになる。E0134aがラインバッファ118の外にシフトされると、E1136aが位置を1つ分右にシフトするということを当業者は理解するであろう。次にE1136aがメモリ122に書き込まれる。同様に偶数セグメントE1136aに対応する奇数セグメントO1136bがメモリ122に書き込まれる。この処理はインタレース画像の偶数線及び奇数線で表される各画素が、偶数データ及び奇数データの交互するセグメントとしてメモリ122に配列されるまで続けられる。ここでデータ配列回路は偶数セグメント及び奇数セグメントを交互にペアとしてメモリに配列することを可能にしており、各ペアはインタレース走査の隣接する線からのデータを表している。図6Bでさらに詳しく説明するが、2本以上の隣接する線のデータを交互のセグメントとして、各セグメントの組み合わせが画像画面に表示される1画素分のデータとなるようにメモリに配列することができる。
【0027】
図6Aは本発明の1実施例により、データを偶数及び奇数データの交互するセグメントとしてメモリに書き込む処理を示した図である。例示的に、A1〜A4は偶数線のセグメントを表し、B1〜B4は奇数線のセグメントを表すとする。放映データや格納されたテレビコンテンツなどのビデオソースから、偶数線の各セグメントがバッファ118aに配列される。セグメントA1がメモリ122に書き込まれ、奇数セグメントB1がラインバッファ118bのように配列されるように、残りのセグメント(A2−A4)は右にシフトする。そして奇数セグメントB1もメモリに書き込まれる。ここでセグメントA1及びセグメントB1は1回の32ビットの書込み、すなわち1回のメモリアクセスでメモリ122に書き込まれる。さらに奇数セグメントB1は対応する偶数セグメントA1と対になる。ここでセグメントA1及びB1はインタレース走査の隣接する線からのセグメントである。次に偶数セグメントA2がメモリ122に書き込まれ、奇数セグメントB2がラインバッファ118cのように配列されるように、残りのセグメント(A3、A4、B1)は右にシフトする。そして奇数セグメントB2もメモリに書き込まれる。この処理は、偶数線の各セグメントA1〜A4と対応する奇数線のセグメントB1〜B4がメモリ122内で関連付けられるまで上述の如く継続される。この処理はインタレース走査のフレームを構成する偶数線及び奇数線に対し繰り返される。ここでラインバッファ118a、118b及び118cは、図5のラインバッファ118がそれぞれ異なる時間帯で異なるセグメントをラインバッファ118に格納している状態を示している。
【0028】
図6Bは、本発明の1実施例である、3本の連続する線からのセグメントがメモリに格納された状態を示した図である。この場合、セグメントA1〜A4及びB1〜B4がラインバッファ118aに受信される。セグメントA1はメモリ122内でセグメントB1及びC1と組合わされ、セグメントA1,B1及びC1で定義される3つが1画素分のデータを定義する。より具体的には、ラインバッファ118a は、セグメントC1を受信すると、ラインバッファ118bに示すようにシフトする。そしてセグメントA2及びB2がメモリ122に書込まれる。次にセグメントC2を受信すると、ラインバッファ118cに示すように、セグメントC2は、A2及びB2といっしょに配置される。ここでセグメントA1、セグメントB1及びセグメントC1は1回の32ビットの書込み、すなわち1回のメモリアクセスでメモリ122に書き込まれる。3本の連続走査線から対応するデータセグメントの交互の3つのデータセットを作成する処理は、インタレース走査のフレームを構成する線に対し繰り返される。1実施例では、セグメントA1,B1及びC1が各々10ビットのサイズで、合計30ビットのビットサイズとなっている。従ってメモリ122から32ビットの取出しを1回行なうと、その内2ビットは有効なデータではないので、この無効データは無視される。上述の通りラインバッファ118a、118b及び118cは図5のラインバッファ118がそれぞれ異なる時間帯において異なるセグメントをラインバッファ118に格納した状態を示している。すなわちラインバッファ118a、118b及び118cは、ラインバッファ118がデータを受信する間の異なった構成のスナップショットである。さらに、図6A及び図6Bで説明した実施例は、2本あるいは3本より多い連続する線からセグメントを処理するために適応できる。ラインバッファ118のサイズはセグメントがメモリに格納されるパターン、すなわち2つか、3つか、等々によって異なるということを当業者は理解するであろう。
【0029】
図7Aは本発明の1実施例により、1画素分のデータを取得するための1回のメモリアクセスの実行を示した概略図である。ここで偶数セグメント及び対応する奇数セグメントは図4、図5、図6Aで説明した通り、メモリ122に格納され、それにより表示パイプ124が1回のメモリアクセスで1画素分のデータを取出すことが可能になる。つまり表示パイプ124とメモリ122との間の32ビットバスを介して、1回のメモリアクセスで1画素分のデータを取出す。すなわち、偶数セグメント及び奇数セグメントのデータを交互にメモリに格納することによって、複数回のメモリアクセスではなく1回のメモリアクセスで1画素分のデータの取出しが可能になる。表示パイプ124は、フリッカーフィルタ126と通信している。フリッカーフィルタ126は、インタレース走査画像に係わるフリッカーを最小限にするために、対応する偶数セグメント及び奇数セグメントを平均するものであることは当業者であれば理解するであろう。フィルタを通過した画素データはその後表示画面128に表示される。1実施例では、表示画面128は、例えばテレビ画面など、インタレース走査を表示するよう構成されている。
【0030】
図7Bは、図7Aの1本の表示パイプに対し、フリッカーフィルタに2本の表示パイプが供給された場合の構成である。ここでも1回のメモリアクセスで1画素分のデータを取出している。しかし、1回のメモリアクセスによって偶数セグメントは表示パイプ124aに誘導され、奇数セグメントは表示パイプ124bに誘導される。対応する偶数セグメント及び奇数セグメントは、16ビットのバスを経由してフリッカーフィルタ126に入力される。フリッカーフィルタ126は、図7Aで説明した通り、データを平均化する。平均化されたデータは続いて表示画面128で表示される。ここで1回の取出しで1画素分のデータが取得できるので、メモリ122に対する表示パイプ124の負担が軽減される。
【0031】
図8Aは、本発明の1実施例において、インタレース走査によって表示される画像データに対してフリッカーをフィルタリングする方法を示した概略図である。フリッカーをフィルタリングするとは、インタレース走査の隣接線間のコントラストが原因となるフリッカーを軽減するものであることは当業者であれば理解するであろう。偶数フィールドの線(フィールド0)は線0から始まり、線の各ペアを平均化する。例えば、線0と線1が平均されて偶数フィールドの最初の線が生成され、次に線2と線3が平均されて偶数フィールドの2番目の線が生成され、・・・以下同様である。奇数フィールドの線(フィールド1)は線1から始まり、線の各対を平均化する。例えば、線1と線2が平均され奇数フィールドの最初の線が生成され、次に線3と4が平均され奇数フィールドの2番目の線が生成され、・・・以下同様である。このようにフィールド0における最初の表示線は線0の情報を含んでいるが、フィールド1における最初の表示線は線0の情報を含んでいない。本発明の1実施例では、図4Bにおけるデータ配列回路が上記説明のフリッカーをフィルタする方法に対応するよう構成されている。
【0032】
図8Bは、本発明の1実施例における、インタレース走査によって表示される画像に対するフリッカーをフィルタリングする別のアルゴリズムを示した概略図である。この場合、フリッカーをフィルタリングする方法は同量の情報を含む偶数フィールドと奇数フィールドから線を生成する。具体的には偶数フィールドは奇数フィールドとともにフレームの線0から始まり、各ペアとなる線を平均化する。例えば線ゼロと線1が平均され偶数フィールド及び奇数フィールドの最初の線を定義する。同様に線2と線3が平均され偶数フィールド及び奇数フィールドの2番目の線を定義する。以下同様である。従って偶数フィールド及び奇数フィールド双方における最初の表示線は同量の情報を含むことになる。フィルタリングされた偶数線とフィルタリングされた奇数線を同一にすることにより、インタレース方式で表示されるフリッカーの無い画像が表示画面向けに生成される。
【0033】
図8Cは、本発明の1実施例において、インタレース方式で表示するコンピュータ生成画像の偶数フィールド線及び奇数フィールド線のフリッカーをフィルタリングするさらに別の方法を示す概略図である。この場合、偶数線及び奇数線を生成するために複数線の重み付け平均が使用される。例えば、最初の偶数フィールド線は線0と線1の重み付き平均である。すなわち線ゼロのデータを2倍にして線1のデータに加え、合計を3で割って最初の偶数フィールド線を得る。図で示される通り2番目の偶数フィールド線は線2を2回数えて線1、2及び3の重み付き平均を計算している。奇数フィールド線も同様に計算されるが、最初の奇数フィールド線は最初の線3本の重み付き平均を取る。以下同様である。結果として得られるフィルタされた偶数フィールド線及び奇数フィールド線の組み合わせで表示されたインタレース画像は、複数線の重み付き平均により際立った変化及びコントラストが和らげられる。フリッカーフィルタリングのアルゴリズムは多種あり、本発明は図8A−8Cについて説明したフリッカーフィルタリングのアルゴリズムに限定されるものではない。各々異なるフリッカーフィルタリングのアルゴリズムは異なる方法で画素データを平均化するが、偶数セグメントと奇数セグメントを交互にメモリに格納することによって、フリッカーフィルタへのデータの供給が1回のメモリアクセスで可能になる。
【0034】
図9は、本発明の1実施例において、インタレース走査に対応する表示画面に画像データを表示するための操作方法を示すフローチャートである。この方法は操作140から始まり、メモリ内の画像データが、交互する偶数セグメント及び奇数セグメントとして格納される。ここでは各偶数セグメントと奇数セグメントのペアが画素を定義している。例えば、偶数セグメントと奇数セグメントがともに16ビットセグメントであれば、図4及び図5で説明した通り、偶数セグメントと奇数セグメントのペアは32ビットの画素を定義することになる。1実施例では、データ配列回路によって交互する偶数セグメント及び奇数セグメントのペアをグラフィックスコントローラのメモリに格納することが可能になっている。図9における方法の操作を実行するのに適したグラッフィックスコントローラは図2及び図3で説明した。次に操作142に進み、データの偶数セグメント及び奇数セグメントがともに1回のメモリアクセスで検索される。すなわち図7A及び図7Bについて言えば、1つあるいは複数の表示パイプから、1回の取出しで偶数セグメント及び奇数セグメントのデータが取得される。ここで偶数セグメントのデータ及び奇数セグメントのデータは各々互いに隣接する偶数線及び奇数線に対応するものである。より具体的には、データをフィルタリングしてフリッカーを最小限にする又は実質的に除去するために、偶数セグメント及び奇数セグメントは同様に互いに隣接する画像データに対応している。
【0035】
図9の方法は次に操作144に進み、1回のメモリアクセスで検索した偶数セグメント及び奇数セグメントのペアで定義される画素が送信されインタレース走査に対応する表示画面で表示される。1実施例では、偶数セグメント及び奇数セグメントのペアが、表示のために送信される前にフリッカーのフィルタリングがされる。加えて、フリッカーフィルタリングの機構は、図8A−8Cで説明した通り、フレームの複数線の対応セグメントの平均を含むこともできる。同様に画素は2本より多い隣接線からのデータで定義することもできる。例えば前述のように、3本の連続する線からのセグメントを使用して画素を定義することもできる。図2−図4A及び図5は、メモリに格納された画像データの交互する一対あるいは3つを論理的に表したものである。
【0036】
【発明の効果】
要約すると、上記の実施例は1画素のデータを定義する偶数セグメント及び奇数セグメントを1回のメモリアクセスで取出し、インタレース走査として表示することを可能にする。セグメントを交互に格納することにより偶数セグメント及び奇数セグメントがともにフリッカーフィルタに供給され平均化されるようにデータを取り込むことができる。
【0037】
上述の発明は表示画面に画像を表示するためにインタレース走査を使用する表示システムであればどのようなものにおいても実施できる。上記実施例に留意しつつ、本発明はコンピュータシステムに格納されたデータにかかわる各種のコンピュータに実行される操作を使用することができることを理解することが必要である。これらの操作は物理的な量を物理的に処理する必要のあるものである。必須ではないが通常これらの量は格納、転送、組み合わせ、比較、及びその他処理可能な電気あるいは磁気信号の形を取る。さらに実施される処理はしばしば作成、識別、判断、あるいは比較といった用語で引き合いにされる。
【0038】
本発明はコンピュータの読み取り可能な媒体上におけるコンピュータの読み取り可能なコードとして実施することもできる。コンピュータの読み取り可能媒体とは後でコンピュータシステムが読み取りできるデータを記憶することのできるデータ記憶媒体であれば何でも良い。コンピュータが読み取りできる媒体の例としてはハードドライブ、ネットワーク上の記憶装置(NAS=network attachedstorage)、読み出し専用メモリ、ランダムアクセスメモリ、CD−ROM,CD−R,CD−RW,磁気テープ、及びその他光学的、非光学的データ記憶装置が含まれる。コンピュータが読み取りできる媒体はネットワークで連結されたコンピュータシステムに分散されることも可能で、この場合はコンピュータが読み取りできるコードは分散された形で格納され実施される。
【0039】
上述の発明は明快に理解できるようかなり詳細に説明されているが、添付クレームの範囲内でいくらかの変更及び修正を実施できることは上述の説明からも明らかであろう。従って本実施例は例示的とみなされ、限定するものではない。本発明は本明細書内に述べられた内容に限定されるものではなく、添付クレームの範囲内及び同等のものにおいて修正することができる。
【図面の簡単な説明】
【図1】画像データをメモリに格納する従来のシステム。
【図2】本発明の1つの実施例によるグラフィックスコントローラの概略図。
【図3】図2のグラフィックスコントローラに、ビデオ画像データが供給された場合の概略図。
【図4】A 受信したビデオ画像をグラッフィックスコントローラのメモリに交互に偶数セグメント、奇数セグメントとして格納した場合の概略図。
B グラッフィックスコントローラのデータ配列回路の要素を示す概略図。
【図5】データを偶数セグメント、奇数セグメントとしてメモリに書き込む処理を示す概略図。
【図6】A データを偶数・奇数データの交互するセグメントとしてメモリに書き込む処理を示す図。
B 3本の連続する線のセグメントがメモリに格納された状態を示す図。
【図7】A 1画素分のデータ1回のメモリアクセスで実行する場合の概略図。
B フリッカーフィルタに2本の表示パイプが供給された場合の概略図。
【図8】A 画像データがインタレース走査によって提示されるようにフリッカーをフィルタする方法を示す概略図。
B 別のフリッカーフィルタ用アルゴリズムを示す概略図。
C インタレースの形で提示するコンピュータ生成画像の偶数、奇数フィールド線のフリッカーをフィルタする別の方法を示す概略図。
【図9】インタレース走査に対応する構成の表示画面に画像データを提示するための操作方法を示すフローチャート。
【符号の説明】
100 メモリ
102 偶数バッファ
104 奇数バッファ
106、126 フリッカーフィルタ
108、128 表示装置
112 CPU
114 バス
116 グラフィックスコントローラ
117 CPUデータ
118 ラインバッファ
119 フリップフロップ
120 データ配列回路
122 RAM
124 パイプバッファ
130 ビデオソース
132 TVコンテンツ
150 ラインバッファカウンタ
152 ラインカウンタ
154、156 コンパレータ
158 ラインバッファ長レジスタ
162 ANDゲート
【発明の属する技術分野】
本発明は一般的に画像表示システムに関し、より具体的にはインタレース走査によって表示画面に表示する画像データを格納し取出す方法及び装置に関する。
【0002】
【従来の技術】
テレビは家庭における娯楽の中心になっている。またテレビの機能も常に増え続けている。最近、コンピュータとテレビとの境界がはっきりしなくなるにつれ、テレビはコンピュータの特性をより備えるようになり、逆にコンピュータもテレビの特性をより備えるようになってきている。加えてテレビはアナログ処理からデジタル処理に移行しつつある。両デバイスが互いに近似するにつれ、そのシステムに対する要求は増加してきている。このようにより多くのデータがシステムによって処理され、システムメモリへの要求も増加してくると、画像が損なわれるのを防ぐためにより高い帯域が必要となる。さらにテレビ装置における表示品質及び解像度は常に向上しており、これがさらなる処理要求をシステムに課している。
【0003】
テレビの表示画面上に提示される画像は、明るい帯域と暗い帯域に分離されることなく、全体に均一な明るさを確保するためにインタレース走査が用いられる。すなわち、各静止画は、交互に配置された2つの走査によって構成される。例えば偶数番目の線が走査され、その後に奇数番目の線が走査されることで1フレーム分のデータを定義する偶数番・奇数番のすべての線が完全に走査される。
【0004】
隣接する走査線で色が急変すると、テレビ画面で表示した際にフリッカーが発生する。すなわち全国テレビジョン方式委員会(NTSC)のモニタ画面の場合、より輝度の高い画素又は水平方向の画素群が、その上下でより輝度の低い画素と隣接するとフリッカーを発生する。フリッカーは人の目に良くないと同時に表示品質を悪くする。テレビの場合は、帯域幅の問題から、フレーム繰返し率を2分の1に減らして、一垂直走査毎に半分の線を走査するインタレース走査が採用されている。従って、各フレームは、2回の垂直走査により、偶数番目と奇数番目の線が交互のフィールドに分けて走査される。
【0005】
図1は画像データをテレビのメモリに格納するシステムの概略図である。画像データは、データと相互に作用するソフトウェアが使い易いように偶数線と奇数線が交互にメモリ100に格納される。奇数線のデータと偶数線のデータには、それぞれ別々のメモリアクセスが必要となる。つまり偶数線のデータを取出して偶数バッファ102に入れるために1回のメモリアクセスを行ない、奇数線のデータを取出して奇数バッファ104に入れるためにもう一回メモリアクセスが行なわれる。その後、偶数線及び奇数線はフリッカーフィルタ106により平均化され、最終的に1つの線として表示装置108に出力される。このように、表示データの1画素を出力するためには、偶数線と奇数線のデータを2つのバッファ各々から取得し平均するという、2回のメモリアクセスが必要となる。
【0006】
他のデバイスもメモリを使用する場合、バッファからの複数回の取出しは、メモリの負担を大きくする。そうなるとデータ要求についていくためには、メモリは高帯域幅が必要となる。メモリがデータの要求に対応できなくなると、その結果、表示装置上に損なわれた画面である不可解な表示、つまり破損画像が生成される。さらにテレビ装置において視聴者が利用できる機能がさらに強化され、同時にテレビメーカーが高品位テレビを採用するようになるとメモリへの要求はさらに大きなものになる。従って、このような要求に対応するためには、画像破損を避けるためのメモリ容量の増加や電力消費の増加というように対応コストが発生することになる。
【0007】
【特許文献1】
米国特許第6,067,120号明細書
【特許文献2】
米国特許第6,081,303号明細書
【0008】
【発明が解決しようとする課題】
従って画像の品質を維持しながらメモリの負担を軽減し、インタレース走査によって表示を出力するシステム用の装置及び方法を提供するためには、従来技術の問題を解決する必要がある。
【0009】
【課題を解決するための手段】
概して本発明は、メモリにデータを格納しそこから取出す方法及びその方法を実行するグラフィックスコントローラを提供することによって上記の用件を満たすものである。本発明はプロセスとして、システムとして、あるいはデバイスとして、といったように様々な方法で実施することができる。以下に本発明の創意に富んだ実施例をいくつか説明する。
【0010】
1つの実施例では、インタレース走査により表示装置に提示されるデータを用意するグラフィックスコントローラが提供される。グラフィックスコントローラは、メモリ及びビデオデータの受信に適合するラインバッファを有する。ラインバッファと通信するデータ配列回路も有する。データ配列回路は、受信データを偶数セグメント及び対応する奇数セグメントとしてメモリに格納するために受信ビデオデータを処理するように構成される。偶数セグメントは偶数フィールドの線のデータに関連付けされ、奇数セグメントは奇数フィールドの線のデータに関連付けされる。偶数セグメント及び対応する奇数セグメントは1画素分のデータを定義する。メモリに1回アクセスすることで、偶数セグメント及び対応する奇数セグメントを検索するように構成されたパイプバッファを1つ有する。
【0011】
別の実施例では、表示装置上でインタレース画像の表示を可能にする装置が提供される。同装置は、中央演算装置(CPU)及びバスを有する。画像データを受信するように構成されたグラフィックスコントローラも有する。グラフィックスコントローラはバス経由でCPUと通信する。グラフィックスコントローラはメモリ及び画像データを処理するデータ配列回路を備えており、これにより画像データは偶数セグメント及び対応する奇数セグメントとしてメモリに格納される。ここで偶数セグメント及び対応する奇数セグメントで1画素分のデータが定義される。メモリに1回アクセスすることで偶数セグメント及び対応する奇数セグメントを検索するように構成されたパイプバッファを1つ有する。
【0012】
また別の実施例では、インタレース走査に対応するよう構成された表示画面に画像データを表示する方法が提供される。この方法は画像データを交互に偶数セグメント及び奇数セグメントとしてメモリに格納することから開始される。交互する偶数・奇数セグメントの各ペアで、少なくとも1つの画素が定義される。次に偶数セグメント及び奇数セグメントがともにメモリへの1回のアクセスで検索される。その後その偶数セグメント及び奇数セグメントで定義された画素はインタレース走査に対応するよう構成された表示画面に送信され表示される。
【0013】
さらに別の実施例では、フレームの偶数フィールド及び奇数フィールドからのインタレース画像データを格納する方法が提供される。この方法はビデオソースから画像データを受信することから始まる。次に画像データは偶数セグメント及び奇数セグメントのペアとしてメモリに格納される。偶数セグメントは偶数線に対応し、奇数セグメントは奇数線に対応する。偶数線と奇数線は互いに隣接しており、その関連付けされた偶数及び奇数セグメントで少なくとも1つの画素が定義される。
【0014】
本発明の他の特徴及び利点は以下の詳細な説明及びそれに伴い本発明の原理を例示する添付図面で明らかにされる。
【0015】
【発明の実施の形態】
インタレース走査で提示される画像データにおいて、画像データを効率的に格納し、メモリの負担を増やすことなく画像データを迅速に取出すことを可能にする装置及び方法に関する発明が説明される。以下の説明から本発明は以下の具体的な内容の一部あるいはすべてがなくても実施することができることは当業者であれば明らかであろう。また本発明を不必要に不明確にしないよう、公知の処理操作は詳しく説明していない。
【0016】
本発明の実施例はインタレース走査によって画像を表示するように構成されたシステムに、画素データをメモリから取出す装置及び方法を提供するものである。受信されたビデオデータは、インタレース走査用1フレーム分のデータとして交互する偶数線及び奇数線のセグメントとして格納される。1実施例においては、ある偶数線の16ビットのセグメントと対応する奇数線の16ビットのセグメントがペアとしてメモリに格納される。この偶数線及び奇数線は、1フレームのデータにおいて隣接する線である。受信されたビデオデータを交互に偶数セグメント及び奇数セグメントとして格納することによって、表示パイプによる1回のメモリアクセスで1画素分のデータを取出すことができる。すなわち本発明の1実施例においては、32ビットのバスを経由して1回のメモリアクセスをすることにより、16ビットの偶数セグメント及び16ビットの奇数セグメントを取得する。その結果表示パイプのメモリに対する負担は相当軽減される。
【0017】
図2はインタレース走査により表示装置に提示されるデータを用意するように構成された本発明の1実施例におけるグラフィックスコントローラの概略図である。中央演算装置(CPU)112は、バス114経由でグラフィックスコントローラ116と通信する。ビデオソース130は、グラフィックスコントローラ116が処理し表示装置128に表示されるビデオ画像データを供給する。1実施例では、CPU112の指示に従い、ビデオ画像が外部ソースからグラフィックスコントローラ116に供給される。別の実施例では、ビデオ画像が有線テレビあるいは衛星のソースなどからライブで直接グラフィックスコントローラ116に供給される。グラフィックスコントローラ116は、32ビットバス経由でランダムアクセスメモリ(RAM)122と通信する1つのラインバッファ118を備えている。RAM122をバッファ118に接続するバスは、32ビットのバスサイズに限定されるものではなく、適切であればどのようなバスサイズでも良い。データ配列回路120はバッファ118と通信する。データ配列回路は以下により詳しく説明される通りビデオデータを処理し、データを交互に偶数セグメントそして奇数セグメントとしてRAM122に格納できるよう構成されている。1実施例では、偶数セグメント及び奇数セグメントが各々16ビットのセグメントで、組み合わせたセグメントサイズが32ビットとなる。偶数セグメントは偶数線に対応し、奇数セグメントは奇数線に対応する。ここで偶数セグメントと奇数セグメントの各ペアは、各々隣接する偶数線及び奇数線に対応する。従って偶数セグメント及び奇数セグメントの各ペアは1画素分のデータを定義する。ビデオ画像データを16ビットの偶数と奇数の交互するデータ量として格納することによって、1つのパイプバッファ124が1回のメモリアクセスで1画素分のデータを取出すことが可能になる。つまり32ビットの取出し1回で偶数及び奇数の画素データが取得される。1つのパイプバッファ124が取出した偶数及び奇数の画素データはフリッカーフィルタ126に転送される。公知のように、フリッカーフィルタ126は、表示線間のコントラストを滑らかにするために、隣接する線のデータを平均することによってインタレース走査によるフリッカーを軽減する。引き続いてフリッカーフィルタのデータはテレビ(TV)の表示画面などのインタレース走査により画像を表示する表示画面に表示されるために表示装置128に出力される。
【0018】
図2において、CPU112は、ビデオソース130からビデオデータをバス114経由でグラッフィクスコントローラ116に送信する命令するコードを備えたデジタルシグナルプロセッサ(DSP)であっても良いことは当業者であれば理解しよう。さらにCPU112は、内蔵システムの1つの要素であっても良い。1実施例では、バッファ118は、線1本分の偶数データ又は奇数データを保持するサイズになっている。バッファ118は、受信するビデオ画像データを格納し、そのデータをRAM122に転送するためにラッチ、フリップフロップなどの適当な記憶回路を備えている。データ配列回路は、受信したビデオデータをバッファ118に移し、適切な偶数セグメント及び奇数セグメントをRAM122に転送するために論理ゲート、カウンタ、コンパレータ、レジスタなどの回路を備えている。1実施例では、バッファ118は、ビデオソース130から受信するビデオデータの線を1つ格納するのに適した複数のクロックドラッチあるいはフリップフロップからなるシフトレジスタである。ビデオソース130から受信されるビデオデータはインタレースの形で入る。すなわち受信ビデオデータは、隣接する偶数線及び奇数線で送信される。
【0019】
図3は図2におけるグラフィックスコントローラで、ビデオ画像データが、格納されたテレビ(TV)コンテンツから供給される場合の概略図である。格納されたTVコンテンツ132は、デジタルテレビあるいは高品位テレビに関連した適当なTVコンテンツであれば何でも良い。例えば格納されたTVコンテンツは、デジタルビデオレコーダに関連するようなハードドライブに格納されたデータでも良い。図2と同様に、CPU112は、格納されたTVコンテンツ132をグラフィックスコントローラ116に送り込む。グラフィックスコントローラ116は、格納されたTVデータを図2で説明したように処理する。すなわち、TVデータを交互する偶数セグメント及び奇数セグメントのペアとしてRAM122に格納することによって、1つのパイプバッファ124が1回の取出しで1画素分のデータを取得することができる。従来は32ビット画素のデータを出力するためには2回の取出しが必要であったのに対し、このように32ビットの画素データを出力するためにRAM122へのメモリアクセスは1回しか必要としないので、1つのパイプバッファ124のRAM122への負担は約50%軽減される。
【0020】
図4Aは、受信したビデオ画像を本発明の1実施例におけるグラッフィックスコントローラのメモリに交互に偶数セグメント及び奇数セグメントとして格納した場合の概略図である。CPU112は、32ビットのバス経由でビデオ画像データをグラフィックスコントローラ116に送り込む。インタレースのビデオ画像データはラインバッファ118に入力される。図中示されるように、ラインバッファ118は、フリップフロップ119などの1列の記憶回路を備えるシフトレジスタで、デジタルデータが順に右へシフトすることを可能にする。1実施例では、ラインバッファ118におけるフリップフロップ119の数は、表示装置128用の線1本分のデータを保持するに適した数である。ラインバッファ118の適切なサイズは色々である。例えば表示装置128が表示する各水平走査線1本に480の画素を有するテレビ画面の場合は、ラインバッファ118は480の画素(線1本分)を保持できるだけのフリップフロップ119を備えることになる。上述の通り、データ配列回路120は、バッファ118で受信するビデオデータを、交互に偶数セグメント及び奇数セグメントとしてRAM122に格納するためのハード的にコード化された命令を備えている。データ配列回路120については図4Bでさらに詳しく説明する。1実施例では、一旦受信ビデオデータの線1本分が完全にラインバッファ118に入ると、最初の偶数セグメントは最初の奇数セグメントとともにラインバッファ118からRAM122にシフトされる。この偶数セグメント及び奇数セグメントは、インタレースデータの隣接する線に対応している。この作業は受信ビデオデータの各線に対し繰り返される。
【0021】
さらに図4Aにおいて、RAM122は交互する偶数セグメント及び奇数セグメントの16ビットデータとしてそのデータを格納していることを示している。1実施例として、交互する16ビットの偶数セグメントと奇数セグメントの各ペアが1画素を定義している。すなわち偶数の16ビットデータ122Aとこれに対応する奇数の16ビットデータ122Bで1つの画素を定義している。図中RAM122に格納されるデータは、偶数データの後に奇数データが続くように示されているが、各画素を定義するパターンが知られている限りRAM122におけるデータの順は重要でないことは当業者であれば理解できよう。図4Aでは偶数データが偶数線を表し、対応する奇数データは隣接する奇数線を表しているが、1画素のデータを定義するものであれば別のパターンで格納してもよい。例えば、2本の線ではなく3本の隣接する線のセグメントの平均が使用される場合は、交互する偶数及び奇数のセグメントは10ビットのセグメントとなる。すなわちRAM122には、交互する偶数セグメント及び奇数セグメントからなる3つのデータが格納される。この場合、32ビットの取出しを1回行なうと、1画素のデータ取出しに2ビットの無効データが含まれることになる。偶数データ及び奇数データの交互するセグメントを格納するパターンは、バッファ118が少なくともある一定のサイズであることを必要とすることは当業者には明らかであろう。例示的な目的から、図4Aは交互の偶数及び奇数セグメントを論理的な配列で表示している。RAM122におけるデータの物理的配列は論理的配列と異なり得ることは当業者に明らかであろう。
【0022】
図4Bは、交互の偶数セグメント及び奇数セグメントをメモリに格納するように構成された本発明の1実施例におけるグラッフィックスコントローラのデータ配列回路の要素を示す概略図である。CPUデータ117は、ラインバッファ118で受信される。データ配列回路120は、CPUデータが偶数セグメント及び奇数セグメントとしてメモリに格納できるようにCPUデータ117を処理する。CPUデータ117がグラフィックスコントローラに受信されながらデータはラインバッファ118に配列される。1実施例では、ラインバッファ118はシフトレジスタである。シフトレジスタにシフトイネーブル信号が通信されると、さらにデータが入るとデータをシフトするようにシフトレジスタが指示を受ける。1実施例では、シフトイネーブル信号がラインバッファ118の各ラッチあるいはフリップフロップに送信される。従って、シフトイネーブル信号がハイでアクティブの場合、シフトイネーブルがクロックサイクルにおいてハイの場合は、すべてのラッチあるいはフリップフロップがシフトされる。しかしシフトイネーブル信号がローの場合はクロックサイクル中には何も起こらない。
【0023】
CPUの制御信号はデコード論理で翻訳される。デコード論理は当然CPUの種類に依存する。デコード論理とは、例えばRAM122のようなメモリにデータを書き込んだり読み出したしたりするためのアドレスを提供するものである。例えばワード線及びビット線のアドレスをデコード論理により提供することができる。1実施例では、制御信号に書込み信号、バイトイネーブル信号、チップセレクト(CS)信号及びバッファイネーブル信号が含まれる。1実施例において、デコード論理はグラッフィクスコントローラのRAM122インタフェースに所在していることは当業者には明らかであろう。
【0024】
図4Bにおけるラインバッファカウンタ150は、ラインバッファ118の受信したデータを数える。すなわち新しいデータがラインバッファ118にシフトする毎にラインバッファカウンタ150が増分する。上述の通り、インタレース走査の場合、1フレームのデータは複数の偶数線及び奇数線からなる。線長は例えばラインバッファ長レジスタ(RegLineBufferLength)158などのレジスタに記憶される。ラインバッファカウンタ150は、データをコンパレータ154に出力する。コンパレータ154は、ラインバッファカウンタ150からのデータをRegLineBufferLength 158からの線長と比較して、ラインバッファ118が1本の線で一杯になったかどうかを判断する。一旦ラインバッファ118が1本分の線データで一杯になると、コンパレータ154はラインバッファカウンタ150にリセット信号を出力し、ラインバッファカウンタは、ラインバッファから次のデータを受信すると、次の線データとしてそのデータのカウントを始める。
【0025】
さらに図4Bにおいて、ラインバッファカウンタ150に加えコンパレータ154からラインカウンタ152にも信号が出力される。ラインカウンタ152はフレームの線数を数え、ラインバッファ118がフレームの最初の線で埋められている最中にメモリ122への書込みを防ぐ。コンパレータ156は、ラインカウンタ152からの出力を比較してラインカウンタがゼロであるか、すなわちラインバッファ118が最初の線を受信しているかを判断する。このようにラインカウンタ152がゼロの場合、ラインバッファ118にフレームの最初の線が埋められている最中はメモリへの書込みは許可されない。1実施例では、ANDゲート162がチップセレクト(CS)信号をローで出力しメモリへの書込みを防止している。ラインカウンタ152が増分すると、つまりラインバッファ118に1線分のデータが埋まり終わると、メモリへの書込みが許可される。すなわち一旦ラインカウンタ152がゼロから増分するとコンパレータ156からの出力はハイになり、ANDゲート162への入力がハイとなることでANDゲート162の出力もハイとなる。その後CPUの各書込みでは、CPUからのデータ及びラインバッファ118からのデータがメモリに書き込まれる。言うまでもなく、交互の偶数セグメント及び奇数セグメントといったCPUからのデータ及びラインバッファ118からの書込みデータの機構は、データのフリッカーをフィルタリングする方法に依存する。データのフリッカーをフィルタリングする代表的な方法については図8A−8Cで検討する。上記説明では信号がハイでアクティブであるが、信号がローでアクティブとなるように回路を設計することもできることは当業者には明らかであろう。ここで1実施例において、データの奇数セグメント及び偶数セグメントがメモリ122に書き込まれ交互するペアとして格納されているのは、図8A及び8Bに示すフリッカーをフィルタする機構に対応するためである。
【0026】
図5は、本発明の1実施例において、データを交互の偶数セグメント及び奇数セグメントとしてメモリに書き込む処理を示す概略図である。CPUデータ134はラインバッファ118に書き込まれる。上述のように、ラインバッファ118はシフトレジスタの役割を果たす。すなわちE0ないしEnで表される最初の線データの各偶数セグメントがラインバッファ118に受信されると、ラインバッファ内の各セグメントは位置を1つ分だけ右にシフトする。1実施例では、ラインバッファ118が画像データのインタレース走査線の1本分に対応するセグメント数を保持できるサイズになっている。1実施例では、E0134aの中身がメモリ122に書き込まれるようになっている。対応する奇数セグメントのデータO0は、メモリ122内でE0134aとペアになる。E0134aがラインバッファ118の外にシフトされると、E1136aが位置を1つ分右にシフトするということを当業者は理解するであろう。次にE1136aがメモリ122に書き込まれる。同様に偶数セグメントE1136aに対応する奇数セグメントO1136bがメモリ122に書き込まれる。この処理はインタレース画像の偶数線及び奇数線で表される各画素が、偶数データ及び奇数データの交互するセグメントとしてメモリ122に配列されるまで続けられる。ここでデータ配列回路は偶数セグメント及び奇数セグメントを交互にペアとしてメモリに配列することを可能にしており、各ペアはインタレース走査の隣接する線からのデータを表している。図6Bでさらに詳しく説明するが、2本以上の隣接する線のデータを交互のセグメントとして、各セグメントの組み合わせが画像画面に表示される1画素分のデータとなるようにメモリに配列することができる。
【0027】
図6Aは本発明の1実施例により、データを偶数及び奇数データの交互するセグメントとしてメモリに書き込む処理を示した図である。例示的に、A1〜A4は偶数線のセグメントを表し、B1〜B4は奇数線のセグメントを表すとする。放映データや格納されたテレビコンテンツなどのビデオソースから、偶数線の各セグメントがバッファ118aに配列される。セグメントA1がメモリ122に書き込まれ、奇数セグメントB1がラインバッファ118bのように配列されるように、残りのセグメント(A2−A4)は右にシフトする。そして奇数セグメントB1もメモリに書き込まれる。ここでセグメントA1及びセグメントB1は1回の32ビットの書込み、すなわち1回のメモリアクセスでメモリ122に書き込まれる。さらに奇数セグメントB1は対応する偶数セグメントA1と対になる。ここでセグメントA1及びB1はインタレース走査の隣接する線からのセグメントである。次に偶数セグメントA2がメモリ122に書き込まれ、奇数セグメントB2がラインバッファ118cのように配列されるように、残りのセグメント(A3、A4、B1)は右にシフトする。そして奇数セグメントB2もメモリに書き込まれる。この処理は、偶数線の各セグメントA1〜A4と対応する奇数線のセグメントB1〜B4がメモリ122内で関連付けられるまで上述の如く継続される。この処理はインタレース走査のフレームを構成する偶数線及び奇数線に対し繰り返される。ここでラインバッファ118a、118b及び118cは、図5のラインバッファ118がそれぞれ異なる時間帯で異なるセグメントをラインバッファ118に格納している状態を示している。
【0028】
図6Bは、本発明の1実施例である、3本の連続する線からのセグメントがメモリに格納された状態を示した図である。この場合、セグメントA1〜A4及びB1〜B4がラインバッファ118aに受信される。セグメントA1はメモリ122内でセグメントB1及びC1と組合わされ、セグメントA1,B1及びC1で定義される3つが1画素分のデータを定義する。より具体的には、ラインバッファ118a は、セグメントC1を受信すると、ラインバッファ118bに示すようにシフトする。そしてセグメントA2及びB2がメモリ122に書込まれる。次にセグメントC2を受信すると、ラインバッファ118cに示すように、セグメントC2は、A2及びB2といっしょに配置される。ここでセグメントA1、セグメントB1及びセグメントC1は1回の32ビットの書込み、すなわち1回のメモリアクセスでメモリ122に書き込まれる。3本の連続走査線から対応するデータセグメントの交互の3つのデータセットを作成する処理は、インタレース走査のフレームを構成する線に対し繰り返される。1実施例では、セグメントA1,B1及びC1が各々10ビットのサイズで、合計30ビットのビットサイズとなっている。従ってメモリ122から32ビットの取出しを1回行なうと、その内2ビットは有効なデータではないので、この無効データは無視される。上述の通りラインバッファ118a、118b及び118cは図5のラインバッファ118がそれぞれ異なる時間帯において異なるセグメントをラインバッファ118に格納した状態を示している。すなわちラインバッファ118a、118b及び118cは、ラインバッファ118がデータを受信する間の異なった構成のスナップショットである。さらに、図6A及び図6Bで説明した実施例は、2本あるいは3本より多い連続する線からセグメントを処理するために適応できる。ラインバッファ118のサイズはセグメントがメモリに格納されるパターン、すなわち2つか、3つか、等々によって異なるということを当業者は理解するであろう。
【0029】
図7Aは本発明の1実施例により、1画素分のデータを取得するための1回のメモリアクセスの実行を示した概略図である。ここで偶数セグメント及び対応する奇数セグメントは図4、図5、図6Aで説明した通り、メモリ122に格納され、それにより表示パイプ124が1回のメモリアクセスで1画素分のデータを取出すことが可能になる。つまり表示パイプ124とメモリ122との間の32ビットバスを介して、1回のメモリアクセスで1画素分のデータを取出す。すなわち、偶数セグメント及び奇数セグメントのデータを交互にメモリに格納することによって、複数回のメモリアクセスではなく1回のメモリアクセスで1画素分のデータの取出しが可能になる。表示パイプ124は、フリッカーフィルタ126と通信している。フリッカーフィルタ126は、インタレース走査画像に係わるフリッカーを最小限にするために、対応する偶数セグメント及び奇数セグメントを平均するものであることは当業者であれば理解するであろう。フィルタを通過した画素データはその後表示画面128に表示される。1実施例では、表示画面128は、例えばテレビ画面など、インタレース走査を表示するよう構成されている。
【0030】
図7Bは、図7Aの1本の表示パイプに対し、フリッカーフィルタに2本の表示パイプが供給された場合の構成である。ここでも1回のメモリアクセスで1画素分のデータを取出している。しかし、1回のメモリアクセスによって偶数セグメントは表示パイプ124aに誘導され、奇数セグメントは表示パイプ124bに誘導される。対応する偶数セグメント及び奇数セグメントは、16ビットのバスを経由してフリッカーフィルタ126に入力される。フリッカーフィルタ126は、図7Aで説明した通り、データを平均化する。平均化されたデータは続いて表示画面128で表示される。ここで1回の取出しで1画素分のデータが取得できるので、メモリ122に対する表示パイプ124の負担が軽減される。
【0031】
図8Aは、本発明の1実施例において、インタレース走査によって表示される画像データに対してフリッカーをフィルタリングする方法を示した概略図である。フリッカーをフィルタリングするとは、インタレース走査の隣接線間のコントラストが原因となるフリッカーを軽減するものであることは当業者であれば理解するであろう。偶数フィールドの線(フィールド0)は線0から始まり、線の各ペアを平均化する。例えば、線0と線1が平均されて偶数フィールドの最初の線が生成され、次に線2と線3が平均されて偶数フィールドの2番目の線が生成され、・・・以下同様である。奇数フィールドの線(フィールド1)は線1から始まり、線の各対を平均化する。例えば、線1と線2が平均され奇数フィールドの最初の線が生成され、次に線3と4が平均され奇数フィールドの2番目の線が生成され、・・・以下同様である。このようにフィールド0における最初の表示線は線0の情報を含んでいるが、フィールド1における最初の表示線は線0の情報を含んでいない。本発明の1実施例では、図4Bにおけるデータ配列回路が上記説明のフリッカーをフィルタする方法に対応するよう構成されている。
【0032】
図8Bは、本発明の1実施例における、インタレース走査によって表示される画像に対するフリッカーをフィルタリングする別のアルゴリズムを示した概略図である。この場合、フリッカーをフィルタリングする方法は同量の情報を含む偶数フィールドと奇数フィールドから線を生成する。具体的には偶数フィールドは奇数フィールドとともにフレームの線0から始まり、各ペアとなる線を平均化する。例えば線ゼロと線1が平均され偶数フィールド及び奇数フィールドの最初の線を定義する。同様に線2と線3が平均され偶数フィールド及び奇数フィールドの2番目の線を定義する。以下同様である。従って偶数フィールド及び奇数フィールド双方における最初の表示線は同量の情報を含むことになる。フィルタリングされた偶数線とフィルタリングされた奇数線を同一にすることにより、インタレース方式で表示されるフリッカーの無い画像が表示画面向けに生成される。
【0033】
図8Cは、本発明の1実施例において、インタレース方式で表示するコンピュータ生成画像の偶数フィールド線及び奇数フィールド線のフリッカーをフィルタリングするさらに別の方法を示す概略図である。この場合、偶数線及び奇数線を生成するために複数線の重み付け平均が使用される。例えば、最初の偶数フィールド線は線0と線1の重み付き平均である。すなわち線ゼロのデータを2倍にして線1のデータに加え、合計を3で割って最初の偶数フィールド線を得る。図で示される通り2番目の偶数フィールド線は線2を2回数えて線1、2及び3の重み付き平均を計算している。奇数フィールド線も同様に計算されるが、最初の奇数フィールド線は最初の線3本の重み付き平均を取る。以下同様である。結果として得られるフィルタされた偶数フィールド線及び奇数フィールド線の組み合わせで表示されたインタレース画像は、複数線の重み付き平均により際立った変化及びコントラストが和らげられる。フリッカーフィルタリングのアルゴリズムは多種あり、本発明は図8A−8Cについて説明したフリッカーフィルタリングのアルゴリズムに限定されるものではない。各々異なるフリッカーフィルタリングのアルゴリズムは異なる方法で画素データを平均化するが、偶数セグメントと奇数セグメントを交互にメモリに格納することによって、フリッカーフィルタへのデータの供給が1回のメモリアクセスで可能になる。
【0034】
図9は、本発明の1実施例において、インタレース走査に対応する表示画面に画像データを表示するための操作方法を示すフローチャートである。この方法は操作140から始まり、メモリ内の画像データが、交互する偶数セグメント及び奇数セグメントとして格納される。ここでは各偶数セグメントと奇数セグメントのペアが画素を定義している。例えば、偶数セグメントと奇数セグメントがともに16ビットセグメントであれば、図4及び図5で説明した通り、偶数セグメントと奇数セグメントのペアは32ビットの画素を定義することになる。1実施例では、データ配列回路によって交互する偶数セグメント及び奇数セグメントのペアをグラフィックスコントローラのメモリに格納することが可能になっている。図9における方法の操作を実行するのに適したグラッフィックスコントローラは図2及び図3で説明した。次に操作142に進み、データの偶数セグメント及び奇数セグメントがともに1回のメモリアクセスで検索される。すなわち図7A及び図7Bについて言えば、1つあるいは複数の表示パイプから、1回の取出しで偶数セグメント及び奇数セグメントのデータが取得される。ここで偶数セグメントのデータ及び奇数セグメントのデータは各々互いに隣接する偶数線及び奇数線に対応するものである。より具体的には、データをフィルタリングしてフリッカーを最小限にする又は実質的に除去するために、偶数セグメント及び奇数セグメントは同様に互いに隣接する画像データに対応している。
【0035】
図9の方法は次に操作144に進み、1回のメモリアクセスで検索した偶数セグメント及び奇数セグメントのペアで定義される画素が送信されインタレース走査に対応する表示画面で表示される。1実施例では、偶数セグメント及び奇数セグメントのペアが、表示のために送信される前にフリッカーのフィルタリングがされる。加えて、フリッカーフィルタリングの機構は、図8A−8Cで説明した通り、フレームの複数線の対応セグメントの平均を含むこともできる。同様に画素は2本より多い隣接線からのデータで定義することもできる。例えば前述のように、3本の連続する線からのセグメントを使用して画素を定義することもできる。図2−図4A及び図5は、メモリに格納された画像データの交互する一対あるいは3つを論理的に表したものである。
【0036】
【発明の効果】
要約すると、上記の実施例は1画素のデータを定義する偶数セグメント及び奇数セグメントを1回のメモリアクセスで取出し、インタレース走査として表示することを可能にする。セグメントを交互に格納することにより偶数セグメント及び奇数セグメントがともにフリッカーフィルタに供給され平均化されるようにデータを取り込むことができる。
【0037】
上述の発明は表示画面に画像を表示するためにインタレース走査を使用する表示システムであればどのようなものにおいても実施できる。上記実施例に留意しつつ、本発明はコンピュータシステムに格納されたデータにかかわる各種のコンピュータに実行される操作を使用することができることを理解することが必要である。これらの操作は物理的な量を物理的に処理する必要のあるものである。必須ではないが通常これらの量は格納、転送、組み合わせ、比較、及びその他処理可能な電気あるいは磁気信号の形を取る。さらに実施される処理はしばしば作成、識別、判断、あるいは比較といった用語で引き合いにされる。
【0038】
本発明はコンピュータの読み取り可能な媒体上におけるコンピュータの読み取り可能なコードとして実施することもできる。コンピュータの読み取り可能媒体とは後でコンピュータシステムが読み取りできるデータを記憶することのできるデータ記憶媒体であれば何でも良い。コンピュータが読み取りできる媒体の例としてはハードドライブ、ネットワーク上の記憶装置(NAS=network attachedstorage)、読み出し専用メモリ、ランダムアクセスメモリ、CD−ROM,CD−R,CD−RW,磁気テープ、及びその他光学的、非光学的データ記憶装置が含まれる。コンピュータが読み取りできる媒体はネットワークで連結されたコンピュータシステムに分散されることも可能で、この場合はコンピュータが読み取りできるコードは分散された形で格納され実施される。
【0039】
上述の発明は明快に理解できるようかなり詳細に説明されているが、添付クレームの範囲内でいくらかの変更及び修正を実施できることは上述の説明からも明らかであろう。従って本実施例は例示的とみなされ、限定するものではない。本発明は本明細書内に述べられた内容に限定されるものではなく、添付クレームの範囲内及び同等のものにおいて修正することができる。
【図面の簡単な説明】
【図1】画像データをメモリに格納する従来のシステム。
【図2】本発明の1つの実施例によるグラフィックスコントローラの概略図。
【図3】図2のグラフィックスコントローラに、ビデオ画像データが供給された場合の概略図。
【図4】A 受信したビデオ画像をグラッフィックスコントローラのメモリに交互に偶数セグメント、奇数セグメントとして格納した場合の概略図。
B グラッフィックスコントローラのデータ配列回路の要素を示す概略図。
【図5】データを偶数セグメント、奇数セグメントとしてメモリに書き込む処理を示す概略図。
【図6】A データを偶数・奇数データの交互するセグメントとしてメモリに書き込む処理を示す図。
B 3本の連続する線のセグメントがメモリに格納された状態を示す図。
【図7】A 1画素分のデータ1回のメモリアクセスで実行する場合の概略図。
B フリッカーフィルタに2本の表示パイプが供給された場合の概略図。
【図8】A 画像データがインタレース走査によって提示されるようにフリッカーをフィルタする方法を示す概略図。
B 別のフリッカーフィルタ用アルゴリズムを示す概略図。
C インタレースの形で提示するコンピュータ生成画像の偶数、奇数フィールド線のフリッカーをフィルタする別の方法を示す概略図。
【図9】インタレース走査に対応する構成の表示画面に画像データを提示するための操作方法を示すフローチャート。
【符号の説明】
100 メモリ
102 偶数バッファ
104 奇数バッファ
106、126 フリッカーフィルタ
108、128 表示装置
112 CPU
114 バス
116 グラフィックスコントローラ
117 CPUデータ
118 ラインバッファ
119 フリップフロップ
120 データ配列回路
122 RAM
124 パイプバッファ
130 ビデオソース
132 TVコンテンツ
150 ラインバッファカウンタ
152 ラインカウンタ
154、156 コンパレータ
158 ラインバッファ長レジスタ
162 ANDゲート
Claims (29)
- インタレース走査で表示装置に表示するデータを用意するグラフィックスコントローラで、
メモリと、
ビデオデータを受信するラインバッファと、
前記ラインバッファと通信すると共に、受信されたビデオデータを偶数セグメントは偶数フィールドの線のデータに関連付け、奇数セグメントは奇数フィールドの線のデータに関連付け、偶数セグメントと対応する奇数セグメントが少なくとも1画素分のデータを定義する偶数セグメントと対応する奇数セグメントとして受信データをメモリに格納可能に処理する配列回路と、
前記偶数セグメントと対応する奇数セグメントを前記メモリへの1回のメモリアクセスで検索する1つのパイプバッファと、
からなることを特徴とするグラフィックスコントローラ。 - 前記データ配列回路はラインバッファカウンタ及びラインカウンタを備え、前記ラインバッファカウンタは前記ラインバッファが線1つ全体のデータを受信することをモニタし、前記ラインカウンタはフレームの線数を数えることを特徴とする請求項1に記載のグラッフィクスコントローラ。
- メモリへの書込みが許可されるかを判断するために、前記ラインカウンタがラインカウンタコンパレータに信号を出力することを特徴とする請求項2に記載のグラフィックスコントローラ。
- 前記ラインバッファカウンタがラインバッファカウンタコンパレータに信号を出力し、前記ラインバッファカウンタコンパレータは1本の線全体を受信すると前記ラインバッファカウンタをリセットする共に、前記ラインカウンタを増分させる信号を出力することを特徴とする請求項2に記載のグラフィックスコントローラ。
- 前記ラインバッファがフレームの最初の線で埋められている間、前記データ配列回路がメモリへの書込みを防止することを特徴とする請求項1に記載のグラフィックスコントローラ。
- 前記ラインバッファが複数の記憶回路を有するシフトレジスタであることを特徴とする請求項1に記載のグラフィックスコントローラ。
- 前記複数の記憶回路がクロックドラッチであることを特徴とする請求項6に記載のグラフィックスコントローラ。
- 前記ラインバッファに含まれるクロックドラッチの数は、インタレースビデオデータの線1本分を格納するのに充分な数であることを特徴とする請求項7に記載のグラフィックスコントローラ。
- 1本のパイプバッファからの出力を受信するように構成されたフリッカーフィルタをさらに備えることを特徴とする請求項1に記載のグラフィックスコントローラ。
- 表示画面にインタレース画像の表示を可能にする装置で、中央演算装置(CPU)と、
バスと、
前記バスを介して前記CPUと通信し、画像データを受信するグラフィックスコントローラとを有し、当該コントローラは、
メモリと、
画像データの偶数セグメント及びそれに対応する奇数セグメントが、少なくともデータの1画素を定義する偶数セグメント及びそれに対応する奇数セグメントとしてメモリに格納可能に画像データを処理するデータ配列回路と、
メモリへの1回のメモリアクセスで前記偶数セグメント及びそれに対応する奇数セグメントを検索する1本のパイプバッファとからなることを特徴とする装置。 - ラインバッファがフレームの最初の線で埋められている間は、前記データ配列回路が前記メモリへの書込みを防止することを特徴とする請求項10に記載の装置。
- 前記データ配列回路がさらに、第1コンパレータと通信するラインバッファカウンタと、第2コンパレータと通信するラインカウンタとを備えることを特徴とする請求項10に記載の装置。
- 前記第1コンパレータが、前記ラインバッファカウンタへのリセット信号と共に前記ラインカウンタへの増分信号を送信することを特徴とする請求項12に記載の装置。
- 前記第2コンパレータがANDゲートに信号を送ると共に当該ANDゲートへの信号がメモリへの書込みを許可するかどうかを決めることを特徴とする請求項12に記載の装置。
- 前記グラフィックスコントローラがさらにラインバッファを備えることを特徴とする請求項10に記載の装置。
- 前記ラインバッファがシフトレジスタであることを特徴とする請求項15に記載の装置。
- 前記ラインバッファが複数のフリップフロップ回路を備え、この複数のフリップフロップ回路がインタレースビデオのデータの線1本を格納するのに充分であることを特徴とする請求項15に記載の装置。
- 前記グラフィックスコントローラがさらにフリッカーフィルタを備え、このフリッカーフィルタが偶数セグメント及びそれに対応する奇数セグメントを平均してフリッカーを軽減することを特徴とする請求項9に記載の装置。
- インタレース走査に対応する表示画面に画像データを表示する方法で、
交互する偶数セグメント及び奇数セグメントの各対が1画素を定義する交互する偶数セグメント及び奇数セグメントの画像データとしてメモリに格納されるステップと、
前記偶数セグメントと奇数セグメントの対のデータが、1回のメモリアクセスで検索されるステップと、
前記偶数セグメント及び奇数セグメントで定義された画素をインタレース走査に対応する表示画面に表示するために送信するステップと、
からなることを特徴とする方法。 - 前記表示画面がテレビ画面であることを特徴とする請求項19に記載の方法。
- 前記画像データを交互の偶数セグメント及び奇数セグメントとして格納する方法操作がさらに、
ラインバッファが受信する画像データの線数を追跡するステップと
データを受信している前記ラインバッファが線1本分のデータを受信するまでメモリへの書込みを遅らせるステップとからなることを特徴とする請求項19に記載の方法。 - 偶数セグメント及び奇数セグメントで定義される画素のフリッカーを軽減するステップをさらに有することを特徴とする請求項19に記載の方法。
- 前記偶数セグメント及び奇数セグメントで定義される画素のフリッカーを軽減する方法操作がさらに、画像データの隣接する偶数セグメント及び奇数セグメントを平均するステップを含むことを特徴とする請求項22に記載の方法。
- 前記表示画面がテレビである請求項19に記載の方法。
- フレームが偶数フィールド及び奇数フィールドからなるインタレース画像を格納する方法で、
ビデオソースから画像データを受信するステップと、
前記画像データを、互いに隣接する偶数線及び奇数線とそれぞれ対応する偶数セグメント及び奇数セグメントの一対としてメモリに格納するステップとを有し、
前記関連付けられた偶数セグメント及び奇数セグメントは1つの画素を定義することを特徴とする方法。 - さらに、前記受信された画像データのフレームの線を数えるステップと、
前記フレームの最初の線をいつ受信したかを判断するステップと、
1回のメモリアクセスで少なくとも1画素分のデータを取出すステップと、
その少なくとも1画素分のデータをフリッカーフィルタに提供するステップとを有することを特徴とする請求項25に記載の方法。 - 偶数及び奇数セグメントの対として前記画像データを格納する処理が、フレームの線の1本が完全にラインバッファに受信されたことに反応して開始されることを特徴とする請求項26に記載の方法。
- 前記フリッカーフィルタが、画像データの隣接する偶数セグメント及び奇数セグメントを平均することを特徴とする請求項26に記載の方法。
- 前記フレームの最初の線がいつ受信されたかを判断する処理が、さらにフレームの最初の線が受信されている間はフレームの2番目の線が受信されるまでメモリへの書込みを遅らせることを特徴とする請求項26に記載の方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/161,965 US6919902B2 (en) | 2002-06-03 | 2002-06-03 | Method and apparatus for fetching pixel data from memory |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004029783A true JP2004029783A (ja) | 2004-01-29 |
JP2004029783A5 JP2004029783A5 (ja) | 2007-01-25 |
JP3903960B2 JP3903960B2 (ja) | 2007-04-11 |
Family
ID=29583524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003158189A Expired - Fee Related JP3903960B2 (ja) | 2002-06-03 | 2003-06-03 | 画素データをメモリから取出すグラフィックスコントローラ及び装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6919902B2 (ja) |
JP (1) | JP3903960B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9396706B2 (en) | 2012-06-29 | 2016-07-19 | Samsung Display Co., Ltd. | Memory, memory addressing method, and display device including the memory |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4710252B2 (ja) * | 2004-05-28 | 2011-06-29 | コニカミノルタホールディングス株式会社 | 画像表示装置、画像表示方法及び画像表示プログラム |
KR100624311B1 (ko) * | 2004-08-30 | 2006-09-19 | 삼성에스디아이 주식회사 | 프레임 메모리 제어 방법 및 그것을 이용한 표시 장치 |
US20070041662A1 (en) * | 2005-08-22 | 2007-02-22 | Eric Jeffrey | Efficient scaling of image data |
CN100442264C (zh) * | 2005-10-14 | 2008-12-10 | 威盛电子股份有限公司 | 封包处理系统与方法 |
JP4910576B2 (ja) * | 2006-09-04 | 2012-04-04 | 富士通株式会社 | 動画像処理装置 |
US20080055327A1 (en) * | 2006-09-06 | 2008-03-06 | Barinder Singh Rai | Highly Efficient Display FIFO |
US8669993B2 (en) * | 2010-01-11 | 2014-03-11 | Apple Inc. | User interface unit for fetching only active regions of a frame |
US10885883B2 (en) | 2017-01-25 | 2021-01-05 | Apple Inc. | Electronic device with foveated display system |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5173774A (en) | 1990-12-18 | 1992-12-22 | Zenith Electronics Corporation | Dual purpose HDTV/NTSC receiver |
JPH04296173A (ja) | 1991-03-25 | 1992-10-20 | Fuji Photo Film Co Ltd | インタレース方式におけるモニタのフリッカ防止方法および装置 |
US5585824A (en) | 1991-07-22 | 1996-12-17 | Silicon Graphics, Inc. | Graphics memory apparatus and method |
JP2585957B2 (ja) * | 1992-08-18 | 1997-02-26 | 富士通株式会社 | ビデオデータ変換処理装置とビデオデータ変換装置を有する情報処理装置 |
US5537563A (en) * | 1993-02-16 | 1996-07-16 | Texas Instruments Incorporated | Devices, systems and methods for accessing data using a gun preferred data organization |
US5561777A (en) | 1993-08-30 | 1996-10-01 | Xerox Corporation | Process for sequentially reading a page from an image memory in either of two directions |
US5963192A (en) | 1996-10-11 | 1999-10-05 | Silicon Motion, Inc. | Apparatus and method for flicker reduction and over/underscan |
US6041361A (en) * | 1996-10-31 | 2000-03-21 | Sensormatic Electronics Corporation | Digital video recorder providing separate pipelining for odd and even fields from a single camera |
KR100217279B1 (ko) | 1997-06-20 | 1999-09-01 | 전주범 | Pdp-tv시스템의 계조처리를 위한 메인클럭 분리적용 방법. |
US5963262A (en) | 1997-06-30 | 1999-10-05 | Cirrus Logic, Inc. | System and method for scaling images and reducing flicker in interlaced television images converted from non-interlaced computer graphics data |
JP3322613B2 (ja) | 1997-08-27 | 2002-09-09 | シャープ株式会社 | 映像信号変換器 |
US6272497B1 (en) | 1998-06-26 | 2001-08-07 | Lsi Logic Corporation | Vertical filter architecture using interleaved memory for storage of pixel data |
KR100631496B1 (ko) | 2000-01-12 | 2006-10-09 | 엘지전자 주식회사 | 디인터레이싱 장치 |
-
2002
- 2002-06-03 US US10/161,965 patent/US6919902B2/en not_active Expired - Fee Related
-
2003
- 2003-06-03 JP JP2003158189A patent/JP3903960B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9396706B2 (en) | 2012-06-29 | 2016-07-19 | Samsung Display Co., Ltd. | Memory, memory addressing method, and display device including the memory |
Also Published As
Publication number | Publication date |
---|---|
JP3903960B2 (ja) | 2007-04-11 |
US6919902B2 (en) | 2005-07-19 |
US20030222882A1 (en) | 2003-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7986326B1 (en) | Interactive set-top box having a unified memory architecture | |
JP5008826B2 (ja) | 高精細度デインタレース/フレーム倍増回路およびその方法 | |
US8830403B1 (en) | Image processing device and image processing method | |
US5982425A (en) | Method and apparatus for draining video data from a planarized video buffer | |
CN102714753A (zh) | 简约信道格式的多信道信号的传输与检测 | |
CN110431616B (zh) | 图片帧显示设备和显示方法 | |
JP3903960B2 (ja) | 画素データをメモリから取出すグラフィックスコントローラ及び装置 | |
US6392712B1 (en) | Synchronizing interlaced and progressive video signals | |
EP0298243B1 (en) | A computer video demultiplexer | |
JP3141772B2 (ja) | Mpeg復号化器及びその復号化方法 | |
US7218676B2 (en) | Method and a decoder for decoding MPEG video | |
US6717989B1 (en) | Video decoding apparatus and method for a shared display memory system | |
CN116112627B (zh) | 一种视频帧率自适应变换的方法和电路 | |
US7034887B2 (en) | Method and apparatus for flicker filtering interlaced display data | |
CN110351562A (zh) | 一种10比特yuv图像存储格式 | |
JP4781688B2 (ja) | 映像信号伝送方法及び映像信号伝送装置 | |
JP2001111968A (ja) | フレームレート変換装置 | |
KR20030019244A (ko) | 인터레이스된 비디오신호로부터 비디오 정지 프레임 및비디오 캡처 특징을 제공하기 위한 방법 및 장치 | |
TW202002604A (zh) | 影像處理方法及電子設備 | |
US20110026603A1 (en) | Method and apparatus of using system memory for 3d comb filtering for video decoding | |
JP3992269B2 (ja) | 画像処理装置及び方法 | |
KR100641865B1 (ko) | 수직 또는 수평 영상의 자동 디스플레이 장치 및 그디스플레이 방법 | |
JP3879219B2 (ja) | ディジタル動画像の転送方式 | |
JP2002229933A (ja) | 映像データ変換装置、映像処理システムおよび映像データ変換方法 | |
JP3611815B2 (ja) | ビデオデバイス |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061130 |
|
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: 20061219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070101 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |