(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-18
(45)【発行日】2024-10-28
(54)【発明の名称】可変リフレッシュレートをサポートするディスプレイシステムのための短縮された垂直ブランキング領域
(51)【国際特許分類】
G09G 3/20 20060101AFI20241021BHJP
G09G 5/00 20060101ALI20241021BHJP
【FI】
G09G3/20 650J
G09G5/00 555D
G09G5/00 520V
(21)【出願番号】P 2023518251
(86)(22)【出願日】2021-09-23
(86)【国際出願番号】 IB2021058694
(87)【国際公開番号】W WO2022064423
(87)【国際公開日】2022-03-31
【審査請求日】2024-09-04
(32)【優先日】2020-09-24
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】508301087
【氏名又は名称】エーティーアイ・テクノロジーズ・ユーエルシー
【氏名又は名称原語表記】ATI TECHNOLOGIES ULC
【住所又は居所原語表記】One Commerce Valley Drive East, Markham, Ontario, L3T 7X6 Canada
(74)【代理人】
【識別番号】100108833
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100111615
【氏名又は名称】佐野 良太
(74)【代理人】
【識別番号】100162156
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】デイビッド アイ. ジェイ. グレン
【審査官】中村 直行
(56)【参考文献】
【文献】特開2021-078045(JP,A)
【文献】特開2018-028559(JP,A)
【文献】米国特許出願公開第2008/0100598(US,A1)
【文献】米国特許出願公開第2008/0055318(US,A1)
【文献】米国特許出願公開第2012/0169930(US,A1)
【文献】国際公開第2012/079148(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 3/00 - 5/42
H04N 5/66
(57)【特許請求の範囲】
【請求項1】
装置であって、
タイミング基準と、
前記タイミング基準に基づいて、可変リフレッシュレートをサポートするディスプレイシステムにフレームを提供するように構成された少なくとも1つのプロセッサと、を備え、
前記フレームは、第1の持続時間を有する
垂直ブランキング期間に対応する垂直ブランキング領域を含み、
前記少なくとも1つのプロセッサは、少なくとも1つの後続フレームの前記垂直ブランキング期間中に少なくとも1つのプロセッサ、前記ディスプレイシステム又はこれらの両方によって実行される動作の動作持続時間が前記第1の持続時間を超えたことを検出するように構成されており、
前記少なくとも1つのプロセッサは、
前記動作持続時間が前記第1の持続時間を超えたのを検出したことに応じて、前記第1の持続時間を第2の持続時間に増加させるように構成されている、
装置。
【請求項2】
前記垂直ブランキング
期間の前記第1の持続時間は、前記ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間である、
請求項1の装置。
【請求項3】
前記少なくとも1つのプロセッサは、前記フレームのアクティブ領域
に対応するアクティブ期間の持続時間及び前記フレームの画素クロックレート
の持続時間を維持しながら、前記第1の持続時間を前記第2の持続時間に増加させるように構成されている、
請求項1又は2の装置。
【請求項4】
前記少なくとも1つの後続フレームの前記垂直ブランキング
期間中
に実行される動作は、前記ディスプレイシステムの電力状態を変更すること、又は、前記ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを含む、
請求項1~3の何れかの装置。
【請求項5】
前記少なくとも1つのプロセッサは、前記動作が完了したという指標を受信するまで、前記ディスプレイシステムにフレームを表示する要求を送信するのを延期するように構成されている、
請求項1~4の何れかの装置。
【請求項6】
前記少なくとも1つのプロセッサは、前記少なくとも1つのプロセッサが前記ディスプレイシステムに接続されていることに応じて、前記ディスプレイシステムが可変リフレッシュレートをサポートするかどうかを決定するように構成されている、
請求項
1~5の何れかの装置。
【請求項7】
前記少なくとも1つのプロセッサは、前記ディスプレイシステムが可変リフレッシュレートをサポートするかどうかに基づいて、前記垂直ブランキング
期間の持続時間に対する変更を選択的に有効又は無効にするように構成されている、
請求項
6の装置。
【請求項8】
方法であって、
第1の持続時間を有する
垂直ブランキング期間に対応する垂直ブランキング領域を含むフレームを生成することと、
可変リフレッシュレートをサポートするディスプレイシステムに前記フレームを提供することと、
少なくとも1つの後続フレームの前記垂直ブランキング
期間中に
少なくとも1つのプロセッサ、前記ディスプレイシステム
又はこれらの両方によって実行される動作
の動作持続時間が前記第1の持続時間を超えたことを検出することと、
前記動作持続時間が前記第1の持続時間を超えたのを検出したことに応じて、前記第1の持続時間を第2の持続時間に増加させることと、を含む、
方法。
【請求項9】
前記垂直ブランキング
期間の前記第1の持続時間は、前記ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間である、
請求項
8の方法。
【請求項10】
前記第1の持続時間を増加させることは、前記フレームのアクティブ領域
に対応するアクティブ期間の持続時間及び前記フレームの画素クロックレート
の持続時間を維持しながら、前記第1の持続時間を前記第2の持続時間に増加させることを含む、
請求項
8又は9の方法。
【請求項11】
前記動作が完了したという指標を受信するまで、前記ディスプレイシステムにフレームを表示する要求を送信するのを延期することを更に含む、
請求項
8~10の何れかの方法。
【請求項12】
前記動作が完了したという指標を受信したことに応じて、前記第2の持続時間を減少させることを更に含む、
請求項
11の方法。
【請求項13】
前記少なくとも1つのプロセッサが前記ディスプレイシステムに接続されていることに応じて、前記ディスプレイシステムが可変リフレッシュレートをサポートするかどうかを決定することを更に含む、
請求項
8~12の何れかの方法。
【請求項14】
可変リフレッシュレートをサポートするディスプレイシステムであって、
前記ディスプレイシステムは、
タイミング基準と、
ディスプレイスクリーンに結合するように構成されたディスプレイインターフェースと、
前記タイミング基準及び前記ディスプレイインターフェースに結合され、前記タイミング基準に基づいて、第1の持続時間を有する垂直ブランキング期間に対応する垂直ブランキング領域を含むフレームを前記ディスプレイインターフェースに提示するように構成されたディスプレイコントローラと、を備え、
少なくとも1つの後続フレームの前記垂直ブランキング期間中に実行される動作の動作持続時間が前記第1の持続時間を超えたことを示す情報に応じて、前記第1の持続時間が第2の持続時間に増加される、
ディスプレイシステム。
【請求項15】
前記垂直ブランキング期間の前記第1の持続時間は、前記ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間である、
請求項14のディスプレイシステム。
【請求項16】
前記第1の持続時間は、前記フレームのアクティブ領域に対応するアクティブ期間の持続時間及び前記フレームの画素クロックレートの持続時間を維持しながら、前記第2の持続時間に増加される、
請求項14又は15のディスプレイシステム。
【請求項17】
方法であって、
可変リフレッシュレートをサポートするディスプレイシステムにおいてディスプレイスクリーンに提示されるフレームを受信することであって、前記フレームは、第1の持続時間を有する垂直ブランキング期間に対応する垂直ブランキング領域を含む、ことと、
少なくとも1つの後続フレームの前記垂直ブランキング期間中に前記ディスプレイシステムによって実行される動作を示す情報を送信することであって、前記動作は、前記第1の持続時間を超える動作持続時間を有する、ことと、
前記情報を送信したことに応じて、前記第1の持続時間よりも長い前記垂直ブランキング期間の第2の持続時間を有するフレームを受信することと、
前記第2の持続時間を有する受信されたフレームの前記垂直ブランキング期間中に前記動作を実行することと、を含む、
方法。
【請求項18】
前記垂直ブランキング期間の前記第1の持続時間は、前記ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間である、
請求項17の方法。
【請求項19】
前記動作は、前記ディスプレイシステムの電力状態を変更すること、又は、前記ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを含む、
請求項17又は18の方法。
【請求項20】
前記動作が完了したという指標を送信することを更に含む、
請求項17~19の何れかの方法。
【発明の詳細な説明】
【背景技術】
【0001】
ディスプレイシステムは、グラフィックス処理ユニット(Graphics Processing Unit、GPU)等のプロセッサによってレンダリングされ、フレームのストリームでディスプレイシステムに提供されるビデオを表示するスクリーンを含む。ディスプレイビデオタイミングは、フレームレート(又はリフレッシュレート)、フレーム内のライン当たりの画素数(HTotal)、フレーム当たりのライン数(VTotal)、並びに、リフレッシュレート、ライン当たりの画素数及びフレーム当たりのライン数の積に等しい画素クロックレート(PClk)によって決定される。ライン当たりの画素数は、画像を生成するために使用される画素値を含む水平アクティブ領域と、デジタルオーディオ又はメタデータ等の他の情報を伝達する水平ブランキング領域と、を含む。したがって、ライン当たりの総画素数は、水平アクティブ領域の画素と水平ブランキング領域の画素との合計に等しい。フレーム当たりのライン数は、画素値を含む垂直アクティブ領域と、デジタルオーディオ又はメタデータ等の他の情報を伝達する垂直ブランキング領域と、を含む。したがって、フレーム当たりのラインの総数は、垂直アクティブ領域のラインと垂直ブランキング領域のラインとの合計に等しい。例えば、高精細度フレームは、画素の値を含む1080本のアクティブ垂直線と、45本の垂直ブランキング線と、を使用して画像を表すことができる。フレームのラインレートは、画素クロックレートをライン当たりの画素数で除算したものとして定義され、又は、同等に、リフレッシュレートとフレーム当たりのライン数との積として定義される。
【発明の概要】
【課題を解決するための手段】
【0002】
一態様によれば、装置は、タイミング基準と、タイミング基準に基づいて、可変リフレッシュレートをサポートするディスプレイシステムにフレームを提供するように構成された少なくとも1つのプロセッサと、を含み、フレームは、第1の持続時間を有する垂直ブランキング領域を備え、少なくとも1つのプロセッサは、少なくとも1つの後続フレームの垂直ブランキング領域中にディスプレイシステムによって実行される動作を示す情報を受信したことに応じて、第1の持続時間を第2の持続時間に増加させるように構成されている。
【0003】
いくつかの実施形態では、垂直ブランキング領域の第1の持続時間は、ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間であり、少なくとも1つのプロセッサは、フレームのアクティブ領域の持続時間及びフレームの画素クロックレートを維持しながら、第1の持続時間を第2の持続時間に増加させるように構成されており、少なくとも1つの後続フレームの垂直ブランキング領域中にディスプレイシステムによって実行される動作は、ディスプレイシステムの電力状態を変更すること、又は、ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを含み、少なくとも1つのプロセッサは、動作が完了したという指標を受信するまで、ディスプレイシステムにフレームを表示する要求を送信することを延期するように構成されており、少なくとも1つのプロセッサは、動作が完了したという指標を受信することに応じて、第2の持続時間を減少させるように構成されており、少なくとも1つのプロセッサは、ディスプレイシステムに接続されている少なくとも1つのプロセッサに応答して、ディスプレイシステムが可変リフレッシュレートをサポートするかどうかを決定するように構成されており、及び/又は、少なくとも1つのプロセッサは、ディスプレイシステムが可変リフレッシュレートをサポートするかどうかに基づいて、垂直ブランキング領域の持続時間に対する変更を選択的に有効又は無効にするように構成されている。
【0004】
別の態様によれば、方法は、第1の持続時間を有する垂直ブランキング領域を備えるフレームを生成することと、可変リフレッシュレートをサポートするディスプレイシステムにフレームを提供することと、少なくとも1つの後続フレームの垂直ブランキング領域中にディスプレイシステムによって実行される動作を示す情報を受信することと、情報を受信することに応じて第1の持続時間を第2の持続時間に増加させることと、を含む。
【0005】
いくつかの実施形態では、垂直ブランキング領域の第1の持続時間は、ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間であり、第1の持続時間を増加させることは、フレームのアクティブ領域の持続時間及びフレームの画素クロックレートを維持しながら、第1の持続時間を第2の持続時間に増加させることを含み、ディスプレイシステムによって実行される動作を示す情報を受信することは、ディスプレイシステムの電力状態を変更すること、又は、ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを示す情報を受信することを含み、方法は、動作が完了したという指標を受信するまで、ディスプレイシステムにフレームを表示する要求を送信することを延期することと、動作が完了したという指標を受信することに応じて第2の持続時間を減少させることと、を更に含み、方法は、ディスプレイシステムに接続されている少なくとも1つのプロセッサに応答して、ディスプレイシステムが可変リフレッシュレートをサポートするかどうかを決定することを含み、及び/又は、方法は、ディスプレイシステムが可変リフレッシュレートをサポートするかどうかに基づいて、垂直ブランキング領域の持続時間の変更を選択的に有効又は無効にすることを更に含む。
【0006】
更に別の態様では、可変リフレッシュレートをサポートするディスプレイシステムは、タイミング基準と、ディスプレイスクリーンに結合するように構成されたディスプレイインターフェースと、タイミング基準及びディスプレイインターフェースに結合され、タイミング基準に基づいて、第1の持続時間を有する垂直ブランキング領域を備えるフレームをディスプレイインターフェースに提示するように構成されたディスプレイコントローラと、を含み、第1の持続時間は、少なくとも1つの後続フレームの垂直ブランキング領域中にディスプレイシステムによって実行される動作を示す情報をディスプレイシステムが送信することに応じて、第2の持続時間に増加される。
【0007】
いくつかの実施形態では、垂直ブランキング領域の第1の持続時間は、ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間であり、第1の持続時間は、フレームのアクティブ領域の持続時間及びフレームの画素クロックレートを維持しながら、第2の持続時間に増加され、動作は、ディスプレイシステムの電力状態を変更すること、又は、ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを含み、ディスプレイシステムは、動作が完了したという指標を送信するように構成されており、及び/又は、第2の持続時間は、動作が完了したという指標を送信することに応じて減少される。
【0008】
更に別の態様では、方法は、可変リフレッシュレートをサポートするディスプレイシステムにおいてディスプレイスクリーン上に提示するためのフレームを受信することであって、フレームが第1の持続時間を有する垂直ブランキング領域を含む、ことと、少なくとも1つの後続フレームの垂直ブランキング領域中にディスプレイシステムによって実行される動作を示す情報を送信することと、情報を送信することに応じて、第1の持続時間よりも長い垂直ブランキング領域のための第2の持続時間を有するフレームを受信することと、第2の持続時間を有する受信されたフレームの垂直ブランキング領域中に動作を実行することと、を含む。
【0009】
いくつかの実施形態では、垂直ブランキング領域の第1の持続時間は、ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間であり、動作は、ディスプレイシステムの電力状態を変更すること、又は、ディスプレイシステムのクロック周波数を調整することのうち少なくとも1つを含み、方法は、動作が完了したという指標を送信することを更に含み、及び/又は、第2の持続時間は、動作が完了したという指標を送信することに応じて減少される。
【0010】
本開示は、添付の図面を参照することによってより良好に理解され、その多くの特徴及び利点が当業者に明らかになる。異なる図面における同じ符号の使用は、類似又は同一のアイテムを示す。
【図面の簡単な説明】
【0011】
【
図1】いくつかの実施形態による、可変リフレッシュレートをサポートするディスプレイシステムに提供されるフレームのための垂直ブランキング領域を選択的に短縮する処理システムのブロック図である。
【
図2】いくつかの実施形態による、GPUによって生成され、ディスプレイシステムに提供されるフレームのブロック図である。
【
図3】いくつかの実施形態による、短縮された又は可変垂直ブランキング領域を選択的に有効にする方法のフロー図である。
【
図4】いくつかの実施形態による、ソースプロセッサによって生成され、ディスプレイシステムに提供されるフレーム内の垂直ブランキング領域の持続時間を修正する方法のフロー図である。
【発明を実施するための形態】
【0012】
フレーム内の垂直ブランキング領域の最小持続時間は、プロセッサ(GPU等)及びディスプレイシステムにおいて実装される規格によって決定される。例えば、調和ビデオタイミング(Harmonized Video Timing、HVT)規格は、垂直ブランキング時間の最小持続時間を約300マイクロ秒(μs)に設定し、調整ビデオタイミング(Coordinated Video Timing、CVT)規格は、垂直ブランキング時間の最小持続時間を460μsに設定している。ビデオゲーム等のアプリケーションによって使用されるフレームリフレッシュレートは、アプリケーションのグラフィックス要件が増加し続けるにつれて、120Hz程度の周波数から240Hz、480Hz、及び、恐らくそれより高い周波数に増加してきた。その結果、垂直ブランキング領域のために確保される各フレームのパーセンテージは、フレームの持続時間が減少するにつれて増加し、これは、アクティブ領域のサイズ、例えば、フレーム当たりの画素数が同じままであるので、ラインレート及び画素レートの増加を必要とする。例えば、480Hzにおいて、フレームの持続時間は2.08マイクロ秒であり、垂直ブランキング領域によって消費されるフレームのパーセンテージは、HVTにおける300μsの垂直ブランキング領域については14.4%であり、CVTにおける460μsの垂直ブランキング領域については22.1%である。垂直ブランキング領域によって消費されるフレームのパーセンテージを低減し、ライン及び画素レートを改善するために、いくつかのディスプレイは、より短い非標準化垂直ブランキング領域、例えば、100又は150μsを実装する。
【0013】
プロセッサは、アクティブ領域及びブランキング領域において異なるタスクを実行する。水平及び垂直アクティブ領域を処理している間、プロセッサは、1つ以上のメモリインターフェース及びデータファブリックインターフェースを介してメモリから画像を表示するために使用されるデータにアクセスする。対照的に、いくつか又は全ての垂直ブランキング領域において、メモリ/ファブリックインターフェースを介してデータが転送されない期間があり得る。プロセッサは、クロック速度を変更すること、インターフェースによって使用されるクロックを再訓練すること、プロセッサの電力状態を変更すること等の他の動作、並びに、メモリアクセス/ファブリック配信においてギャップを必要とする他の動作であって、メモリ読み取り及びファブリックトラフィックにおいて中断を引き起こし得る他の動作を実行するために、垂直ブランキング領域における表示処理においてこれらのギャップを利用することができる。例えば、メモリインターフェースによって使用されるクロックは、HVT及びCVTによって定義される最小垂直ブランキング時間に、高周波数/高電力状態から低周波数/低電力状態への遷移に応じて再訓練され得る。しかしながら、プロセッサが典型的に垂直ブランキング領域において実行する動作は、短縮された持続時間の垂直ブランキング領域内で完了することが困難(又は不可能)である。例えば、メモリインターフェースを駆動するクロックは、100μsでは再訓練できない。
【0014】
図1~
図4は、可変リフレッシュレートを実装するディスプレイシステムに対してより短い垂直ブランキング領域の使用を制約することによって、電力状態の変更及びクロック周波数の調整等の他の動作を実行するプロセッサの能力も維持しながら、ほとんどのフレームについて垂直ブランキング領域によって消費されるフレームの割合を低減するための技術を開示する。ディスプレイシステムのいくつかの実施形態は、ソース、例えば、プロセッサが複雑なゲームコンテンツをレンダリングしている場合に生成される不規則な負荷に関連付けられたフレームから受信される可変フレームレートにディスプレイリフレッシュレートを動的に適合させるために、可変リフレッシュレートを実装する。リフレッシュレートは、アクティブ領域のサイズ及び画素クロックレートを維持しながら、フレームの垂直ブランキング領域を変更することによって変更される。動作において、プロセッサは、最初に、100μs又は150μs等の短縮された持続時間の垂直ブランキング領域を有するフレームを提供している。プロセッサは、例えば、電力状態の変更又はクロック周波数の調整等の動作が1つ以上の後続フレームにおいて実行されるべきである(又は実行される)ことを示すシグナリングに応じて、垂直ブランキング領域の持続時間を増加させる。いくつかの実施形態では、プロセッサは、トリガ動作が完了するまで、フレームを表示するための要求を送信することを延期し、それによって、フレームの垂直ブランキング領域の持続時間を増加させる。動作を完了するための時間を提供するようにフレームレートを変更することは、ディスプレイシステムがプロセッサのフレームレートの変更を補償するために可変リフレッシュレートを実装することが要求されるため、スタッタリング等の視覚的アーチファクトを引き起こさない。更なる時間が必要とされない場合、後続フレームは、最小垂直ブランキング領域に戻る。
【0015】
図1は、いくつかの実施形態による、可変リフレッシュレートをサポートするディスプレイシステムに提供されるフレームのための垂直ブランキング領域を選択的に短縮する処理システム100のブロック図である。処理システム100は、ダイナミックランダムアクセスメモリ(Dynamic Random-Access Memory、DRAM)等の非一時的なコンピュータ可読記憶媒体を使用して実装されるシステムメモリ105又は他の記憶構成要素を含むか、それらへのアクセスを有する。しかしながら、メモリ105のいくつかの実施形態は、スタティックRAM(Static RAM、SRAM)、不揮発性RAM等を含む他のタイプのメモリを使用して実装される。また、処理システム100は、メモリ105等のように、処理システム100において実装されるエンティティ間の通信をサポートするためのバス110を含む。処理システム100のいくつかの実施形態は、他のバス、ブリッジ、スイッチ、ルータ等を含むが、これらは明確にするために
図1に示されていない。
【0016】
処理システム100は、少なくとも1つの中央処理装置(Central Processing Unit、CPU)115を含む。CPU115のいくつかの実施形態は、同時に又は並列に命令を実行する複数の処理要素(明確化のために
図1に示さず)を含む。処理要素は、プロセッサコア、計算ユニット、又は、他の用語として呼ばれる。また、CPU115は、バス110に接続され、バス110を介してメモリ105と通信する。CPU115は、メモリ105に記憶されたプログラムコード120等の命令を実行し、CPU115は、実行された命令の結果等の情報をメモリ105に記憶する。また、CPU115は、ドローコールを発行することによって、グラフィック処理を開始することができる。
【0017】
入力/出力(Input/Output、I/O)エンジン125は、ディスプレイシステム130と関連付けられた入力又は出力動作、並びに、キーボード、マウス、プリンタ、外部ディスク等の処理システム100の他の要素を扱う。I/Oエンジン125は、I/Oエンジン125がメモリ105、CPU115、又は、バス110に接続される他のエンティティと通信するように、バス110に結合される。図示した実施形態では、I/Oエンジン125は、コンパクトディスク(Compact Disk、CD)、デジタルビデオディスク(Digital Video Disc、DVD)等の非一時的なコンピュータ可読記憶媒体を使用して実装される、外部記憶構成要素135に記憶された情報を読み取る。また、I/Oエンジン125は、CPU115による処理の結果等の情報を外部記憶構成要素135に書き込む。
【0018】
ディスプレイシステム130は、ディスプレイシステム130が最大リフレッシュレートまでの範囲内のリフレッシュレートでフレームを提示することができるように、可変リフレッシュレートをサポートする。例えば、ディスプレイシステム130は、24Hz、25Hz、30Hz、50Hz、60Hz、100Hz、120Hzのリフレッシュレートをサポートすることができる。可変リフレッシュレートは、可変垂直ブランキング領域に対応し、可変垂直ブランキング領域は、ディスプレイシステム130の最大リフレッシュレートに対応する最小垂直ブランキング領域から始まる範囲内にある。いくつかの実施形態では、リフレッシュレートは、その強化拡張ディスプレイ識別データ(Enhanced Extended Display Identification Data、E-EDID)についてディスプレイシステム130にクエリを行い、E-EDID応答からリフレッシュレートを決定することによって決定される。
【0019】
処理システム100は、ディスプレイシステム130による提示のために画像をレンダリングする少なくとも1つのGPU140を含む。例えば、GPU140は、オブジェクトをレンダリングして、ディスプレイシステム130に提供される画素の値を生成し、このディスプレイシステムは、画素値を使用して、レンダリングされたオブジェクトを表す画像を表示する。GPU140は、命令を同時に又は並列に実行する計算ユニットのアレイ142等の1つ以上の処理要素を含む。GPU140のいくつかの実施形態は、汎用コンピューティングのために使用される。図示した実施形態では、GPU140は、バス110を介してメモリ105(及びバス110に接続された他のエンティティ)と通信する。しかしながら、GPU140のいくつかの実施形態は、直接接続で、又は、他のバス、ブリッジ、スイッチ、ルータ等を介して、メモリ105と通信する。GPU140は、メモリ105に記憶された命令を実行し、GPU140は、実行された命令の結果等の情報をメモリ105に記憶する。例えば、メモリ105は、GPU140によって実行されるプログラムコードを表す命令のコピー145を記憶する。GPU140は、タイミング基準144も含む。
【0020】
GPU140は、ディスプレイシステム130に提供されるフレームのストリームを生成する。GPU140は、ディスプレイシステム130によってサポートされる可変リフレッシュレートに一致するように、異なるリフレッシュレートでフレームをレンダリングする。例えば、GPU140は、ディスプレイシステム130が50Hzでフレームを提示していると決定したことに応じて、フレームをレンダリングし、それらを50Hzでディスプレイシステム130に提供する。別の例では、GPU140は、ディスプレイシステム130が60Hzでフレームを提示していると決定したことに応じて、フレームをレンダリングし、それらを60Hzでディスプレイシステムに提供する。ディスプレイシステム130のいくつかの実施形態は、GPU140から受信されたストリーム内のフレームを記憶するバッファ150を含む。また、ディスプレイシステム130は、バッファ150からフレーム内の画素値を読み出し、その値を使用してスクリーン154に画像を表示する(又はスクリーンに画像を提示する)ディスプレイコントローラ152を含む。ディスプレイコントローラ152は、スクリーン154に結合するように構成されたディスプレイインターフェース153(HDMI又はディスプレイポート(DisplayPort)インターフェース等)を介してフレームを提供する。また、ディスプレイシステム130は、通常動作中にGPUタイミング基準144に同期されるタイミング基準156を含む。タイミング基準156のいくつかの実施形態は、本明細書で説明されるように、ディスプレイシステム130のためのタイミング及び同期動作も実行する、例えば、特定用途向け集積回路(Application-Specific Integrated Circuit、ASIC)又は他の回路として、タイミングコントローラ(Timing Controller、TCON)チップ157内に実装される。
【0021】
GPU140によって生成され、ディスプレイシステム130によって表示されるフレームは、フレーム内のライン当たりの画素数(HTotal)、フレーム当たりのライン数(VTotal)、並びに、リフレッシュレート、ライン当たりの画素数及びフレーム当たりのライン数の積に等しい画素クロックレート(PClk)によって特徴付けられる。いくつかの実施形態では、GPU140は、ディスプレイシステム130が可変リフレッシュレートをサポートする場合、(垂直ブランキング領域の短縮された持続時間に対応する)比較的高いリフレッシュレートでディスプレイシステム130にフレームを提供する。いくつかの実施形態では、垂直ブランキング領域の初期持続時間は、ディスプレイシステムによってサポートされる最大リフレッシュレートに対応する最小持続時間である。垂直ブランキング領域の短縮された持続時間は、ディスプレイシステム130においていくつかの必要な動作を実行するのに不十分である可能性が高い。この結果、ディスプレイシステム130がこれらの動作のうち1つ以上を実行しようとする場合、ディスプレイシステム130は、ディスプレイシステム130が1つ以上の後続フレームの垂直ブランキング領域において動作を実行しようとすることを示す情報を送信する。情報を受信したことに応じて、GPU140は、後続フレームにおける垂直ブランキング領域の持続時間を増加させることによって、フレームのリフレッシュレートを変更する。また、GPU140は、ディスプレイシステム130が動作の実行を完了し、もはや垂直ブランキング領域の持続時間の増加を必要としないという指標を受信したことに応じて、垂直ブランキング領域の持続時間を減少させることによって、フレームのリフレッシュレートを増加させることができる。
【0022】
図2は、いくつかの実施形態による、GPUによって生成され、ディスプレイシステムに提供されるフレーム200のブロック図である。フレーム200は、
図1に示すGPU140のいくつかの実施形態によって生成され(例えば、レンダリングされ)、
図1に示すディスプレイシステム130のいくつかの実施形態によって表示又は提示される。
【0023】
フレーム200は、画素202(明確にするために符号によって1つのみ示される)のライン201(明確にするために符号によって1つのみ示される)に分割される。各ライン201は、ライン当たり205個の画素(HTotal)を含む。ライン当たりの画素数205は、画像を生成するために使用される画素値を含む水平アクティブ領域210(白抜きのボックスによって示される)と、デジタルオーディオ又はメタデータ等の他の情報を伝達する水平ブランキング領域215(斜線のボックスによって示される)と、を含む。また、フレーム200は、フレーム当たりのライン数220(VTotal)を含む。フレーム当たりのライン数220は、画素値を含む垂直アクティブ領域225(白抜きのボックスによって示される)と、デジタルオーディオ又はメタデータ等の他の情報を伝達する垂直ブランキング領域230(斜線のボックスによって示される)と、を含む。したがって、フレーム当たりのラインの総数220は、垂直アクティブ領域225内のラインと垂直ブランキング領域230内のラインとの合計に等しい。例えば、高精細度フレームは、画素の値を含む1080本のアクティブ垂直線と、45本の垂直ブランキング線と、を使用して画像を表すことができる。
【0024】
GPUは、リフレッシュレートでフレーム200を提供する(ディスプレイシステムは、フレーム200を提示する)。したがって、フレーム200は、リフレッシュレートと、ライン当たりの画素数205と、フレーム当たりのライン数220と、の積に等しい画素クロックレート(PClk)によって特徴付けられる。フレーム200のラインレートは、画素クロックレートを1ライン当たりの画素数205で除算したものとして定義され、又は、同等に、リフレッシュレートと1フレーム当たりのライン数220との積として定義される。本明細書で説明するように、GPUは、フレーム200を提示しているディスプレイシステムにおける要件に基づいて、垂直ブランキング領域230の持続時間を変更する。GPUは、最初に、GPU及びディスプレイシステムにおいて実装される1つ以上の規格によって決定される垂直ブランキング領域230の最小持続時間等のように、(より高いリフレッシュレートに対応する)短縮された持続時間の垂直ブランキング領域230を有するフレームを生成する。GPUは、例えば、垂直ブランキング領域230において1つ以上の動作を実行するために、ディスプレイシステムがより長い持続時間を必要とするという指標に応じて、垂直ブランキング領域230の持続時間を増加させることができる。
【0025】
図3は、いくつかの実施形態による、短縮された又は可変垂直ブランキング領域を選択的に有効にする方法300のフロー図である。方法300は、
図1に示す処理システム100のいくつかの実施形態で実施される。
【0026】
ブロック305において、ソースプロセッサ(GPU等)がディスプレイシステムに関連付けられる。本明細書で使用される場合、「関連付ける」という用語は、ディスプレイシステムの1つ以上の特性に基づいて決定されるパラメータを使用してフレームをレンダリングし、ディスプレイシステムに提供するようにソースプロセッサを構成する(又はソースプロセッサを構成させる)情報をソースプロセッサに提供することを指す。いくつかの実施形態では、ソースプロセッサ及びディスプレイシステムは、ソースプロセッサとディスプレイプロセッサとの間に物理的な(例えば、有線又は無線)接続を形成することによって関連付けられる。次いで、物理接続は、デバイス間で情報を伝達するために使用され、例えば、ソースプロセッサは、そのE-EDIDについてディスプレイシステムに問い合わせ、ディスプレイシステムから受信されたE-EDID応答内の情報に基づいて構成パラメータを生成することができる。いくつかの実施形態では、ソースプロセッサは、ソースプロセッサとディスプレイシステムとを必ずしも接続することなくソースプロセッサに提供されるディスプレイシステムの特性に基づいて構成されている。例えば、ディスプレイシステムの特性をソースプロセッサに提供することができ、ソースプロセッサは、ソースプロセッサとディスプレイシステムとを接続する前に、特性に基づいて構成することができる。
【0027】
決定ブロック310において、ソースプロセッサは、ディスプレイシステムが短い(又は可変)垂直ブランキング領域及び可変リフレッシュレートをサポートするかどうかを決定する。いくつかの実施形態において、この決定は、ディスプレイシステムからのE-EDID応答において受信された情報に基づいて行われる。ディスプレイシステムが短い(又は可変)垂直ブランキング領域及び可変リフレッシュレートをサポートする場合、方法300はブロック315に進む。ディスプレイシステムが短い(又は可変)垂直ブランキング領域及び可変リフレッシュレートをサポートしない場合、方法はブロック320に進む。
【0028】
ブロック315において、ディスプレイシステムは、短い垂直ブランキング領域及び可変リフレッシュレートをサポートし、これは、ディスプレイシステムが、電力最適化を含む特徴をサポートするようにディスプレイシステムを構成するために使用されるより長い垂直ブランキング領域に遷移することを可能にする。したがって、ブロック315において、電力最適化の使用が可能にされる。いくつかの実施形態では、ソースプロセッサは、ほとんどの場合、比較的短い持続時間の垂直ブランキング領域を使用して、比較的高いリフレッシュレートでフレームをレンダリング及び提供するように構成されている。しかしながら、電力最適化等の追加の特徴によって利用される垂直ブランキング領域のより長い持続時間に対する要求を示すシグナリングをディスプレイシステムから受信したことに応じて、ソースプロセッサは、例えば、持続時間を増加させることによって、垂直ブランキング領域の持続時間を変更するように構成されている。
【0029】
ブロック320において、ディスプレイシステムは、短い垂直ブランキング領域及び可変リフレッシュレートをサポートしない。その場合、ディスプレイシステムは、電力最適化を含む特徴をサポートするようにディスプレイシステムを構成するために使用されるより長い垂直ブランキング領域に遷移することができない。したがって、ブロック320において、電力最適化等の追加の特徴の使用が無効にされる。代わりに、ソースプロセッサは、ディスプレイシステムによってサポートされるリフレッシュレートに対応する垂直ブランキング領域の固定持続時間を使用する。
【0030】
図4は、いくつかの実施形態による、ソースプロセッサによって生成され、ディスプレイシステムに提供されるフレーム内の垂直ブランキング領域の持続時間を変更する方法400のフロー図である。方法400は、
図1に示す処理システム100のいくつかの実施形態で実施される。
【0031】
ブロック405において、ソースプロセッサは、短縮された垂直ブランキング領域を有するフレームをレンダリングしており、レンダリングされたフレームをスクリーンに表示するためにディスプレイシステムに提供している。
【0032】
決定ブロック410において、ソースプロセッサは、ディスプレイシステムがより長い垂直ブランキング領域を必要とするかどうかを決定する。ディスプレイシステムのいくつかの実施形態は、例えば、ディスプレイシステムにおいて1つ以上の動作を実行するための追加の時間を提供するために、より長い垂直ブランキング領域に対する指標又は要求を提供する。より長い垂直ブランキング領域が要求されている場合、方法400はブロック415に進む。そうでない場合、方法400はブロック405に戻る。
【0033】
ブロック415において、ソースプロセッサは、垂直ブランキング領域を増加させ、増加された垂直ブランキング領域を用いてフレームのレンダリングを開始する。フレームは、ディスプレイシステムに提供され、ディスプレイシステムは、フレームのアクティブ領域内の情報に基づいて画像を表示し、垂直ブランキング領域と同時に1つ以上の動作を実行する。いくつかの実施形態では、ソースプロセッサは、ディスプレイシステムが1つ以上の動作の実行を完了したことを示すまで、ディスプレイシステムにフレームを表示する要求を送信することを延期し、それによって、フレームの垂直ブランキング領域の持続時間を増加させる。
【0034】
決定ブロック420において、ソースプロセッサは、ディスプレイシステムが依然としてより長い垂直ブランキング領域を必要とするかどうかを決定する。ディスプレイシステムのいくつかの実施形態は、ディスプレイシステムがもはやより長い垂直ブランキング領域を必要としないことを示す、1つ以上の動作が完了したという指標を提供する。動作が完了したためにディスプレイシステムがもはやより長い垂直ブランキング領域を必要としない場合、方法400はブロック405に進み、ソースプロセッサは、垂直ブランキング領域の持続時間を短縮する。動作が完了していないためにディスプレイシステムが依然としてより長い垂直ブランキング領域を必要とする場合、方法400はブロック415に進む。
【0035】
コンピュータ可読記憶媒体は、命令及び/又はデータをコンピュータシステムに提供するために、使用中にコンピュータシステムによってアクセス可能な任意の非一時的な記憶媒体又は非一時的な記憶媒体の組み合わせを含む。このような記憶媒体には、限定されないが、光学媒体(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク)、磁気媒体(例えば、フロッピー(登録商標)ディスク、磁気テープ、磁気ハードドライブ)、揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)若しくはキャッシュ)、不揮発性メモリ(例えば、読取専用メモリ(ROM)若しくはフラッシュメモリ)、又は、微小電気機械システム(MEMS)ベースの記憶媒体が含まれ得る。コンピュータ可読記憶媒体(例えば、システムRAM又はROM)はコンピューティングシステムに内蔵されてもよいし、コンピュータ可読記憶媒体(例えば、磁気ハードドライブ)はコンピューティングシステムに固定的に取り付けられてもよいし、コンピュータ可読記憶媒体(例えば、光学ディスク又はユニバーサルシリアルバス(USB)ベースのフラッシュメモリ)はコンピューティングシステムに着脱可能に取り付けられてもよいし、コンピュータ可読記憶媒体(例えば、ネットワークアクセス可能ストレージ(NAS))は有線又は無線ネットワークを介してコンピュータシステムに結合されてもよい。
【0036】
いくつかの実施形態では、上述した技術の特定の態様は、ソフトウェアを実行する処理システムの1つ以上のプロセッサによって実装される。ソフトウェアは、非一時的なコンピュータ可読記憶媒体に記憶されるか、別の方法で明確に具体化された実行可能命令の1つ以上のセットを含む。ソフトウェアは、命令及び特定のデータを含んでもよく、当該命令及び特定のデータは、1つ以上のプロセッサによって実行されると、上述した技術の1つ以上の態様を実行するように1つ以上のプロセッサを操作する。非一時的なコンピュータ可読記憶媒体は、例えば、磁気又は光ディスク記憶デバイス、フラッシュメモリ等のソリッドステート記憶デバイス、キャッシュ、ランダムアクセスメモリ(RAM)、又は、他の不揮発性メモリデバイス(単数又は複数)等を含み得る。非一時的なコンピュータ可読記憶媒体に記憶された実行可能命令は、ソースコード、アセンブリ言語コード、オブジェクトコード、又は、1つ以上のプロセッサによって解釈され若しくは別の方法で実行可能な他の命令形式で実装可能である。
【0037】
上述したものに加えて、概要説明において説明した全てのアクティビティ又は要素が必要とされているわけではなく、特定のアクティビティ又はデバイスの一部が必要とされない場合があり、1つ以上のさらなるアクティビティが実行される場合があり、1つ以上のさらなる要素が含まれる場合があることに留意されたい。さらに、アクティビティが列挙された順序は、必ずしもそれらが実行される順序ではない。また、概念は、特定の実施形態を参照して説明された。しかしながら、当業者であれば、特許請求の範囲に記載されているような本発明の範囲から逸脱することなく、様々な変更及び変形を行うことができるのを理解するであろう。したがって、明細書及び図面は、限定的な意味ではなく例示的な意味で考慮されるべきであり、これらの変更形態の全ては、本発明の範囲内に含まれることが意図される。
【0038】
利益、他の利点及び問題に対する解決手段を、特定の実施形態に関して上述した。しかし、利益、利点、問題に対する解決手段、及び、何かしらの利益、利点若しくは解決手段が発生又は顕在化する可能性のある特徴は、何れか若しくは全ての請求項に重要な、必須の、又は、不可欠な特徴と解釈されない。さらに、開示された発明は、本明細書の教示の利益を有する当業者には明らかな方法であって、異なっているが同様の方法で修正され実施され得ることから、上述した特定の実施形態は例示にすぎない。添付の特許請求の範囲に記載されている以外に本明細書に示されている構成又は設計の詳細については限定がない。したがって、上述した特定の実施形態は、変更又は修正されてもよく、かかる変更形態の全ては、開示された発明の範囲内にあると考えられることが明らかである。したがって、ここで要求される保護は、添付の特許請求の範囲に記載されている。