(57)【要約】  本発明の１つの実施形態は、ディスプレイをリフレッシュするために使用される、フレーム・バッファ間で切り替えを行うシステムを提供する。オペレーションの間、このシステムは、第１メモリに配置された第１フレーム・バッファからディスプレイをリフレッシュする。ディスプレイのためのフレーム・バッファの切り替えを求める要求を受け取ると、このシステムは、ディスプレイが第２メモリに配置された第２フレーム・バッファからリフレッシュされるように、ディスプレイへのデータ転送を再構成する。
2010540988.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイをリフレッシュするために使用されるフレーム・バッファ間で切り替えを行うための方法であって、
第１メモリに配置された第１フレーム・バッファから前記ディスプレイをリフレッシュするステップと、
前記ディスプレイのためのフレーム・バッファの切り替えを求める要求を受け取るステップと、
前記要求に応答して、前記ディスプレイが第２メモリに配置された第２フレーム・バッファからリフレッシュされるように、前記ディスプレイへのデータ転送を再構成するステップと
を備える方法。
【請求項２】
前記第１メモリは、多数のアプリケーションによってアクセス可能であり、したがって安全ではないメイン・メモリであり、
前記第２メモリはメイン・メモリの外部に配置された安全なフレーム・バッファである請求項１に記載の方法。
【請求項３】
前記ディスプレイが前記第２フレーム・バッファからリフレッシュされるように前記ディスプレイを切り替えるステップは、
前記ディスプレイをリフレッシュするために使用されるデータを、前記データが前記安全ではないメイン・メモリを完全に回避するように転送するステップと、
前記データが前記第２フレーム・バッファに記憶される間、ならびに前記データが前記第２フレーム・バッファへ移行する間および前記データが前記第２フレーム・バッファから移行する間、前記データを暗号化するステップとをさらに伴う請求項２に記載の方法。
【請求項４】
前記フレーム・バッファの切り替えを求める要求を受け取るステップの前に、
前記ディスプレイに関連したデータのためのセキュリティ要件を判定するステップと、
前記判定されたセキュリティ要件に基づいて、前記フレーム・バッファの切り替えを求める要求を生成するステップとをさらに備える請求項１に記載の方法。
【請求項５】
前記フレーム・バッファの切り替えを求める要求を受け取るステップの前に、
前記ディスプレイのためのグラフィック処理負荷のレベルを監視するステップと、
前記グラフィック処理負荷のレベルに基づいて、前記切り替えを求める要求を生成するステップとをさらに備える請求項１に記載の方法。
【請求項６】
前記フレーム・バッファの切り替えを求める要求を受け取るステップの前に、
前記ディスプレイを含むコンピュータ・システム内の温度を測定するステップと、
前記測定された温度に基づいて、前記切り替えを求める要求を生成するステップとをさらに備える請求項１に記載の方法。
【請求項７】
前記ディスプレイが前記第２フレーム・バッファからリフレッシュされるように前記ディスプレイを切り替えるステップは、前記ディスプレイのためのレンダリング・オペレーションを実行するグラフィック処理装置（ＧＰＵ）を切り替えるステップをさらに伴い、
前記ＧＰＵは、前記第１フレーム・バッファにレンダリングする低電力ＧＰＵと、前記第２フレーム・バッファにレンダリングする高電力ＧＰＵとの間で切り替えられる請求項１に記載の方法。
【請求項８】
前記低電力ＧＰＵから前記高電力ＧＰＵへ切り替える前に、前記低電力ＧＰＵの出力ディスプレイ信号と前記高電力ＧＰＵの出力ディスプレイ信号とを実質的に同期させ、それによって前記ディスプレイ上でグラフィック出力を中断させることのないシームレスな移行を促進するステップをさらに備える請求項７に記載の方法。
【請求項９】
前記出力ディスプレイ信号を実質的に同期させるステップは、１つまたは複数のフェーズ・ロック・ループ（ＰＬＬ）を使用するステップを伴う請求項８に記載の方法。
【請求項１０】
前記切り替えるステップは、前記ディスプレイのための帰線消去信号に関連した帰線消去期間の間に起こる請求項１に記載の方法。
【請求項１１】
ディスプレイをリフレッシュするために使用されるフレーム・バッファ間で選択的に切り替えを行う装置であって、
第１メモリに配置された第１フレーム・バッファと、
第２メモリに配置された第２フレーム・バッファと、
前記第１フレーム・バッファまたは前記第２フレーム・バッファのいずれかから選択的に前記ディスプレイをリフレッシュするように構成された１つまたは複数のリフレッシュ回路と、
切り替えを求める要求を受け取ると、前記第１フレーム・バッファと前記第２フレーム・バッファとの間で前記ディスプレイのリフレッシュを切り替えるように構成された切り替えメカニズムと
を備える装置。
【請求項１２】
前記第１メモリは、多数のアプリケーションによってアクセス可能であり、したがって安全ではないメイン・メモリであり、
前記第２メモリはメイン・メモリの外部に配置された安全なフレーム・バッファである請求項１１に記載の装置。
【請求項１３】
前記切り替え回路は、前記安全ではないメイン・メモリを完全に回避するように、前記ディスプレイをリフレッシュするために使用されるデータを導くように構成され、
前記装置は、前記データが前記第２フレーム・バッファに記憶される間、ならびに前記データが前記第２フレーム・バッファから移行する間および前記データが前記第２フレーム・バッファへ移行する間、前記データを暗号化するように構成された暗号化回路をさらに備える請求項１２に記載の装置。
【請求項１４】
前記切り替えメカニズムは、前記ディスプレイに関連したデータのためのセキュリティ要件を判定し、前記判定されたセキュリティ要件に基づいて、フレーム・バッファの切り替えを求める要求を生成するように構成された請求項１１に記載の装置。
【請求項１５】
前記切り替えメカニズムは、前記ディスプレイのためのグラフィック処理負荷のレベルを監視し、前記グラフィック処理負荷のレベルに基づいて、前記切り替えを求める要求を生成するように構成された請求項１１に記載の装置。
【請求項１６】
前記切り替えメカニズムは、前記ディスプレイを含むコンピュータ・システム内の温度を測定し、前記測定された温度に基づいて前記切り替えを求める要求を生成するように構成された請求項１１に記載の装置。
【請求項１７】
前記第１フレーム・バッファと前記第２フレーム・バッファとの間で切り替えを行う間、前記装置は前記ディスプレイのためのレンダリング・オペレーションを実行するグラフィック処理装置（ＧＰＵ）を切り替えるよう構成され、
前記ＧＰＵは、前記第１フレーム・バッファにレンダリングする低電力ＧＰＵから前記第２フレーム・バッファにレンダリングする高電力ＧＰＵへ切り替えられる請求項１１に記載の装置。
【請求項１８】
前記低電力ＧＰＵから前記高電力ＧＰＵへ切り替える前に、前記切り替えメカニズムは、前記低電力ＧＰＵの出力ディスプレイ信号と前記高電力ＧＰＵの出力ディスプレイ信号とを実質的に同期させるように構成され、それによってグラフィック出力を中断させることのないシームレスな移行を促進する請求項１７に記載の装置。
【請求項１９】
前記出力ディスプレイ信号を実質的に同期させるステップは、１つまたは複数のフェーズ・ロック・ループ（ＰＬＬ）を使用するステップを伴う請求項１８に記載の装置。
【請求項２０】
前記切り替えるステップは、前記ディスプレイのための帰線消去信号に関連した帰線消去期間の間に起こる請求項１１に記載の装置。
【請求項２１】
ディスプレイをリフレッシュするために使用されるフレーム・バッファ間で選択的に切り替えを行うコンピュータ・システムであって、
プロセッサと、
前記プロセッサに結合されたメイン・メモリと、
前記メイン・メモリに配置された第１フレーム・バッファと
第２メモリに配置された第２フレーム・バッファと、
前記第１フレーム・バッファまたは前記第２フレーム・バッファのいずれかから選択的に前記ディスプレイをリフレッシュするように構成された１つまたは複数のリフレッシュ回路と、
切り替えを求める要求を受け取ると、前記第１フレーム・バッファと前記第２フレーム・バッファとの間で前記ディスプレイのリフレッシュを切り替えるように構成された切り替えメカニズムとを備えるコンピュータ・システム。
【請求項２２】
第１ディスプレイおよび／または第２ディスプレイを駆動するために、第１グラフィック・プロセッサと第２グラフィック・プロセッサとの間で切り替えを行うコンピュータ・システムであって、
プロセッサと、
メモリと、
前記第１グラフィック・プロセッサと、
前記第２グラフィック・プロセッサと、
前記第１ディスプレイと、
前記第２ディスプレイと、
前記第１グラフィック・プロセッサまたは前記第２グラフィック・プロセッサのいずれかを選択的に前記第１ディスプレイに結合する第１スイッチと、
前記第１グラフィック・プロセッサまたは前記第２グラフィック・プロセッサのいずれかを選択的に前記第２ディスプレイに結合する第２スイッチとを備えるコンピュータ・システム。
【請求項２３】
前記第１グラフィック・プロセッサの出力ディスプレイ信号と前記第２グラフィック・プロセッサの出力ディスプレイ信号とを実質的に同期させるように構成された同期メカニズムをさらに備え、それによってグラフィック出力を中断させることのないシームレスな切り替え過程を促進する請求項２２に記載のコンピュータ・システム。
【請求項２４】
前記第１グラフィック・プロセッサは高電力グラフィック処理装置（ＧＰＵ）であり、
前記第２グラフィック・プロセッサは低電力ＧＰＵである請求項２２に記載のコンピュータ・システム。
【請求項２５】
前記第１ディスプレイは前記コンピュータ・システムに組み込まれた内部ディスプレイであり、
前記第２ディスプレイは前記コンピュータ・システムに結合された外部ディスプレイである請求項２２に記載のコンピュータ・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・システムにおいてグラフィック・ソース間で切り替え（スイッチング）を行うための技法に関する。より詳細には、本発明は、コンピュータ・システムにおいてグラフィック・ソース間で切り替えを行うことによって、電力を削減するため、および／またはセキュリティを改善するための方法および装置に関する。
【背景技術】
【０００２】
コンピューティング技術の急速な進歩は、時に１兆バイトに等しい大きさのデータ・セットで、秒当たり何兆バイトものコンピュータ・オペレーションを実行することを可能にした。これらの進歩は、集積中断のサイズおよび複雑性における指数的増加の大きな原因になっていると考えられる。残念なことに、集積中断のサイズおよび複雑性における増加には、電力消費における同様の増加が伴ってきた。
【０００３】
並行した発展の中で、ブロードバンド・ワイヤレス・ネットワークの急速な拡大は、携帯型コンピュータ・システムの数の劇的な増加を引き起こした。残念なことに、携帯型コンピュータ・システムは通常、それらが利用可能な限られたバッテリ電力のために厳しい電力制約を有する。これらの発展は、電力削減技法に対する大きな要求を作り出した。
【０００４】
３Ｄグラフィック技術の進歩によって、モデム・コンピュータ・システムの大部分は、グラフィック・ディスプレイ・デバイスを駆動するために専用のグラフィック・プロセッサ（しばしばグラフィック処理装置（ＧＰＵ）と呼ばれる）を使用するようになった。残念なことに、今日のＧＰＵは大量の電力を消費し、それが携帯型コンピュータ・システムのバッテリ寿命をひどく短くしており、そのうえ熱放散問題を生じさせる。
【０００５】
グラフィック・ディスプレイが動作している間、例えばユーザがディスプレイ上の文書を読んでいる場合など、ごく僅かなグラフィック処理しか必要とされない場合がしばしばある。残念なことに、既存のグラフィック・プロセッサは、これらの「低活動」期間に電力を節約するために低電力モードに簡単に切り替わることができない。
【０００６】
このような「低活動」期間に電力を節約するための１つの技法は、高電力のグラフィック・ソース（例えば高性能ＧＰＵ）から低電力のグラフィック・ソース（例えば低性能ＧＰＵ）へディスプレイを切り替えることである。理想的には、この切り替えオペレーションはユーザに見えなくなければならず、そのためシステムはグラフィック処理の要求が変わるときに、またはシステムの電力消費を制限する必要性が変わるときに、異なるグラフィック・ソース間で前後にシームレスに切り替わることができる。
【０００７】
１つの既存の技法は、ユーザが低性能のグラフィック・ソースと高性能のグラフィック・ソースとの間で切り替えを行うことができる機械的スイッチを提供する。しかしながら、この力任せの技法は、ユーザが１つのグラフィック・ソースから別のものへ切り替える度にコンピュータ・システムを完全に再初期化することを必要とする。１つのグラフィック・ソースから別のものへ切り替えるためにコンピュータ・システムを再初期化することをユーザに求めることは、単に多くの状況で許容不可能である。初期化過程は、コンピュータ上で行われる可能性のある最も破壊的なオペレーションのうちの１つである。典型的に、ユーザはコンピュータを再初期化する前にすべての自分の仕事を保存しなければならず、このことには多くの時間がかかる可能性がある。さらにまた、ユーザは最初に自分のグラフィック処理の要件が近い将来に高くなるのか、低くなるのかを判定しなければならず、その後システムが再初期化するのを待たなければならず、要件が変わる場合には、その後別の再初期化を待つことになる。
【０００８】
もう１つの問題は、一部のグラフィック・プロセッサが安全ではないメイン・メモリの中に配置されたフレーム・バッファの中に画像をレンダリングするということである。このことは、そのようなグラフィック画像が安全に保存されることを義務付けるデジタル著作権管理（ＤＲＭ）規格に伴う問題を生じさせる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
したがって、電力を削減するため、および／またはセキュリティを提供するために、異なるグラフィック・ソース間で迅速および／またはシームレスな切り替えを促進する方法および装置が必要とされる。
【課題を解決するための手段】
【００１０】
本発明の１つの実施形態は、ディスプレイをリフレッシュするために使用されるフレーム・バッファ間で切り替えを行うシステムを提供する。オペレーションの間、このシステムは第１メモリに配置された第１フレーム・バッファからディスプレイをリフレッシュする。ディスプレイのためのフレーム・バッファの切り替えを求める要求を受け取ると、ディスプレイが第２メモリに配置された第２フレーム・バッファからリフレッシュされるように、システムはディスプレイへのデータ転送を再構成する。
【００１１】
一部の実施形態では、第１メモリは、多数のアプリケーションによってアクセス可能であり、したがって安全ではないメイン・メモリであり、第２メモリは、メイン・メモリの外部に配置された安全なフレーム・バッファである。
【００１２】
一部の実施形態では、ディスプレイを切り替えることは、ディスプレイをリフレッシュするために使用されるデータを、そのデータが安全ではないメイン・メモリを完全に回避するように転送することをさらに伴う。この変形形態では、システムは、データが第２フレーム・バッファに記憶される間、ならびにデータが第２フレーム・バッファへ移行する間およびデータが第２フレーム・バッファから移行する間、データを暗号化する。
【００１３】
一部の実施形態では、フレーム・バッファの切り替えを求める要求を受け取る前に、このシステムはディスプレイに関連したデータのためのセキュリティ要件を判定し、判定されたセキュリティ要件に基づいてフレーム・バッファの切り替えを求める要求を生成する。
【００１４】
一部の実施形態では、フレーム・バッファの切り替えを求める要求を受け取る前に、このシステムはディスプレイのためのグラフィック処理負荷のレベルを監視し、グラフィック処理負荷のレベルに基づいて切り替えを求める要求を生成する。
【００１５】
一部の実施形態では、このシステムはディスプレイを含むコンピュータ・システム内の温度を測定し、測定された温度に基づいて切り替えを求める要求を生成する。
【００１６】
一部の実施形態では、ディスプレイが第２フレーム・バッファからリフレッシュされるようにディスプレイを切り替えることは、ディスプレイのためのレンダリング・オペレーションを実行するグラフィック処理装置（ＧＰＵ）を切り替えることをさらに伴う。一部の実施形態では、このＧＰＵは第１フレーム・バッファにレンダリングする低電力ＧＰＵと第２フレーム・バッファにレンダリングする高電力ＧＰＵとの間で切り替えられる。
【００１７】
一部の実施形態では、低電力ＧＰＵから高電力ＧＰＵに切り替える前に、このシステムは低電力ＧＰＵの出力ディスプレイ信号と高電力ＧＰＵの出力ディスプレイ信号とを実質的に同期させ、それによってディスプレイのグラフィック出力を中断させることのないシームレスな移行を促進する。
【００１８】
一部の実施形態では、出力ディスプレイ信号を実質的に同期させることは、１つまたは複数のフェーズ・ロック・ループ（ＰＬＬ）を使用することを必要とする。
【００１９】
一部の実施形態では、切り替えは、ディスプレイのための垂直帰線消去信号に関連した垂直帰線消去期間の間に起こる。
【００２０】
本発明の別の実施形態は、第１ディスプレイおよび／または第２ディスプレイを駆動するために第１グラフィック・プロセッサと第２グラフィック・プロセッサとの間で切り替えを行うコンピュータ・システムを提供する。このコンピュータ・システムはプロセッサ、メモリ、第１グラフィック・プロセッサ、第２グラフィック・プロセッサ、第１ディスプレイおよび第２ディスプレイを含む。このコンピュータ・システムはまた、第１グラフィック・プロセッサまたは第２グラフィック・プロセッサを選択的に第１ディスプレイに結合する第１スイッチも含む。このコンピュータ・システムはまた、第１グラフィック・プロセッサまたは第２グラフィック・プロセッサを選択的に第２ディスプレイに結合する第２スイッチも含む。
【００２１】
一部の実施形態では、第１ディスプレイはコンピュータ・システムに内蔵された内部ディスプレイであり、第２ディスプレイはコンピュータ・システムに結合された外部ディスプレイである。
【００２２】
一部の実施形態では、第１スイッチと第２スイッチとは、第１グラフィック・プロセッサを第１ディスプレイおよび第２ディスプレイの両方に結合するように、または第２グラフィック・プロセッサを第１ディスプレイおよび第２ディスプレイの両方に結合するように構成される。
【００２３】
一部の実施形態では、第１グラフィック・プロセッサは高電力グラフィック処理装置（ＧＰＵ）であり、第２グラフィック・プロセッサは低電力ＧＰＵである。
【００２４】
一部の実施形態では、このシステムは、第１グラフィック・プロセッサの出力ディスプレイ信号と第２グラフィック・プロセッサの出力ディスプレイ信号とを実質的に同期させ、それによってグラフィック出力を中断させることのない、シームレスな切り替え過程を促進するように構成された同期メカニズムを含む。
【００２５】
一部の実施形態では、この同期メカニズムは、出力ディスプレイ信号を実質的に同期させるために１つまたは複数のフェーズ・ロック・ループ（ＰＬＬ）を使用するように構成される。
【００２６】
一部の実施形態では、第１スイッチと第２スイッチとはマルチプレクサまたはワイヤードＯＲ論理中断を含むことができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態によるコンピュータ・システムを示す図である。
【００２８】
【図２】本発明の実施形態による同一のディスプレイを駆動するために異なるグラフィック・ソース間で切り替えを行うことができるコンピュータ・システムを示す図である。
【００２９】
【図３】本発明の実施形態によるディスプレイを駆動するために第１グラフィック・ソースから第２グラフィック・ソースへ切り替える過程を示す流れ図である。
【００３０】
【図４】本発明の実施形態による出力ディスプレイ信号を同期させることを伴わずに第１グラフィック・ソースから第２グラフィック・ソースへ切り替える過程を示す流れ図である。
【００３１】
【図５Ａ】本発明の実施形態によるグラフィック・ソースによって生成された単一の垂直帰線消去期間（ＶＢＩ）および対応する垂直同期（Ｖ−ｓｙｎｃ）パルスを示す図である。
【００３２】
【図５Ｂ】本発明の実施形態による２つのグラフィック・ソースによって生成された２つの重複するＶＢＩを示す図である。
【００３３】
【図６Ａ】本発明の実施形態による２つのグラフィック・ソースの間でタイミング信号を同期させるための技法を示す概略図である。
【００３４】
【図６Ｂ】本発明の実施形態による２つのグラフィック・ソースの間でタイミング信号を同期させるための別の技法を示す概略図である。
【００３５】
【図７】本発明の実施形態による２つのグラフィック・ソースを含むコンピュータ・システムを示す図である。
【００３６】
【図８】本発明の実施形態による第１グラフィック・ソースから第２グラフィック・ソースへ切り替える過程を示す流れ図である。
【００３７】
【図９】本発明の実施形態による第２グラフィック・ソースから第１グラフィック・ソースへ切り替える過程を示す流れ図である。
【００３８】
【図１０】本発明の実施形態による内部ディスプレイおよび外部ディスプレイを駆動するために異なるグラフィック・ソース間で切り替えを行うことができるコンピュータ・システムを示す図である。
【発明を実施するための形態】
【００３９】
以下の説明は、任意の当業者が本発明を製作し、使用することができるように示されており、特定の応用例およびその必要条件を背景として示されている。開示される実施形態に対する様々な変更形態は、当業者には容易に明らかとなり、本明細書で定義される一般原則は、本発明の精神および範囲から逸脱することなく、その他の実施形態および応用例に適用されることが可能である。したがって、本発明は、示される実施形態に限定されることはなく、特許請求の範囲に一致する最も広範な範囲を与えられるべきである。
【００４０】
この詳細な説明の中で述べられるデータ構造およびコードは、典型的に、コンピュータ・システムによる使用のためにコードおよび／またはデータを記憶することができる任意のデバイスまたは媒体であってよいコンピュータ可読記憶媒体に記憶される。これは限定されないが、揮発性メモリ、不揮発性メモリ、ディスク・ドライブ、磁気テープ、ＣＤ（コンパクト・ディスク）、ＤＶＤ（デジタル多用途ディスクまたはデジタル・ビデオ・ディスク）などの磁気および光記憶デバイス、または現在知られているか、もしくは最近開発されたコンピュータ可読媒体を記憶することができるその他の媒体を含む。
【００４１】
コンピュータ・システム
図１は、本発明の実施形態によるコンピュータ・システム１００を示す。図１に示されているように、コンピュータ・システム１００はプロセッサ１０２を含み、これはブリッジ１０４を通じてメモリ・サブシステム１０６、周辺バス１０８およびグラフィック・プロセッサ１１０に結合されている。ブリッジ１０４は、一般的にコンピューティング・システム１００内の構成要素をまとめて結合するために使用される任意の種類のコア論理装置、ブリッジ・チップ、またはチップセットを含むことができる。本発明の１つの実施形態では、ブリッジ１０４はノースブリッジ・チップである。プロセッサ１０２は、限定されないが、マイクロ・プロセッサ、デジタル信号プロセッサ、デバイス・コントローラまたは機器内のコンピュータ・エンジンを含む任意の種類のプロセッサを含むことができる。
【００４２】
コンピュータ・システム１００のうちの１つまたは複数の構成要素は、離れて配置され、ネットワークを介してアクセスされてもよいということを認識されたい。
【００４３】
プロセッサ１０２は、ブリッジ１０４を通じてメモリ・サブシステム１０６と通信する。メモリ・サブシステム１０６は、高速でプロセッサ１０２によってアクセスされることが可能な１つまたは複数のメモリ・チップを含めて、複数の構成要素を含むことができる。
【００４４】
プロセッサ１０２はまた、ブリッジ１０４および周辺バス１０８を通じて記憶デバイス１１２とも通信する。記憶デバイス１１２は、コンピュータ・システムに結合されることが可能な任意の種類の不揮発性記憶デバイスを含むことができる。記憶デバイス１１２は、限定されないが磁気、光および光磁気記憶デバイスの他に、フラッシュ・メモリおよび／またはバッテリバックアップ・メモリに基づく記憶デバイスを含む。
【００４５】
プロセッサ１０２はさらに、ブリッジ１０４を通じてグラフィック・プロセッサ１１０と通信する。グラフィック・プロセッサ１１０は、信号ソースをディスプレイ１１４に与え、ディスプレイ１１４を駆動する特殊化されたグラフィック・レンダリング・デバイスである。ディスプレイ１１４は、（画像およびテキストを含む）ビジュアル形式で情報をユーザに示すことができる任意の種類のディスプレイ・デバイスを含むことができる。ディスプレイ１１４は、限定されないが、陰極線管（ＣＲＴ）ディスプレイ、発光ダイオード（ＬＥＤ）ディスプレイ、液晶ディスプレイ（ＬＣＤ）、有機ＬＥＤ（ＯＬＥＤ）ディスプレイ、表面電界ディスプレイ（ＳＥＤ）または電子ペーパーを含む。
【００４６】
グラフィック・プロセッサ１１０は、高い性能でライティング、シェーディングおよび変形などの２Ｄと３Ｄの両方のグラフィック・レンダリング・オペレーションを実行する。高い性能を達成するために、グラフィック・プロセッサ１１０は、フレーム・バッファ、テクスチャ、頂点配列および／またはディスプレイ・リストを記憶するために専用のビデオ・メモリ１１６を利用してもよい。
【００４７】
ブリッジ１０４はまた、組み込みグラフィック・プロセッサ１１８も含む。組み込みグラフィック・プロセッサ１１８は典型的に、ほどほどの性能のグラフィック処理を目的として造られており、したがってグラフィック・プロセッサ１１０よりも消費する電力はずっと少ない。図１の中で、組み込みグラフィック・プロセッサ１１８は直接ディスプレイ１１４に結合されておらず、ディスプレイ１１４を駆動することはないことに留意されたい。
【００４８】
本発明は図１に示されたコンピュータ・システム１００を背景として説明されているが、複数のグラフィック・プロセッサをサポートする任意の種類のコンピューティング・デバイス上で一般に動作可能であることに留意されたい。したがって、本発明は図１に示されたコンピュータ・システム１００に限定されるわけではない。
【００４９】
グラフィック・ソース間での選択的切り替え
図２は本発明の実施形態による、同一のディスプレイを駆動するために異なるグラフィック・ソース間で切り替えを行うことができるコンピュータ・システム２００を示す。図２の中では、２つのグラフィック・ソース（グラフィック・プロセッサ２１０および組み込みグラフィック・プロセッサ２１８）が各々独立してディスプレイ２１４を駆動することができるということに留意されたい。しかしながら、所与の時間にディスプレイ２１４をアクティブに駆動するグラフィック・ソースは、２つのグラフィック・ソース間で選択を行うことができる選択デバイス２２０によって判定される。具体的には、コンピュータ・システム２００は、その現在のオペレーション状態に基づいてグラフィック・ソースを選択するために選択デバイス２２０を使用することができる。
【００５０】
より具体的には、グラフィック・プロセッサ２１０からの出力ディスプレイ信号２２２と組み込みグラフィック・プロセッサ２１８からの出力ディスプレイ信号２２４とは、両方とも２対１マルチプレクサ（ＭＵＸ）２２０の入力に結合される。ＭＵＸ２２０の出力はソース選択２２６によって制御され、ソース選択２２６は２つのグラフィック・ソースのうちのどちらがディスプレイ２１４を駆動するのかを判定する。この実施形態では、ソース選択２２６はブリッジ・チップ２０４の出力であり、これはソース選択２２６を生成するための特定の論理を含む。ソース選択２２６はブリッジ２０４以外の論理ブロックによっても作り出されることが可能なことに留意されたい。
【００５１】
選択されたグラフィック・ソースからの出力ディスプレイ信号はその後、ディスプレイ２１４をアクティブに駆動するためにディスプレイ２１４の入力に結合される。選択デバイスはマルチプレクサとして示されているが、単純なワイヤードＯＲ論理中断などの任意のその他の種類の選択デバイスも含むことができる。
【００５２】
本発明の１つの実施形態では、グラフィック・プロセッサ２１０と組み込みグラフィック・プロセッサ２１８とは、それらの出力ディスプレイ信号を同期させることができるように、パス２２８を通じて協調することができる。出力ディスプレイ信号はタイミング信号とデータ信号との両方を含むことができるため、出力ディスプレイ信号を同期させることは、各々のタイミング信号と各々のデータ信号との両方を同期させることを伴ってもよい。パス２２８は、２つのグラフィック・ソースの同期を促進するために、ハードウェアおよび／またはソフトウェアを使用して認識されてもよいことに留意されたい。
【００５３】
本発明の１つの実施形態では、グラフィック・プロセッサ２１０は大量の電力を消費する高性能グラフィック・プロセッサ装置（ＧＰＵ）であり、一方組み込みグラフィック・プロセッサ２１８はより少ない量の電力を消費する低性能ＧＰＵである。この実施形態では、グラフィック処理負荷が軽い場合、システムはディスプレイ２１４を駆動するためにグラフィック・ソースをグラフィック・プロセッサ２１０から組み込みグラフィック・プロセッサ２１８に切り替え、続いてグラフィック・プロセッサ２１０の電力を完全に落とし、それによって電力を節約する。一方、グラフィック処理負荷が再び重くなる場合、システムはグラフィック・ソースを組み込みグラフィック・プロセッサ２１８からグラフィック・プロセッサ２１０に切り替える。
【００５４】
本明細書では、図２に示された独立型グラフィック・プロセッサおよび一体型グラフィック・プロセッサを背景としてグラフィック・プロセッサ間の切り替えを説明してきたが、本発明は適切に構成された場合に各々が独立してディスプレイを駆動することができる２つ以上のグラフィックグラフィック・プロセッサを含むコンピュータ・システムのために一般に機能することが可能であることに留意されたい。さらに、これらの複数のグラフィック・プロセッサは異なる電力消費レベルを含めて、異なるオペレーティング特性を有することが可能である。さらに、複数のグラフィック・プロセッサの各々は独立型グラフィック・プロセッサか、またはチップ内の一体型グラフィック・プロセッサのいずれであることも可能である。したがって、本発明は図２に示されたコンピュータ・システム２００に限定されるわけではない。
【００５５】
上述の異なるグラフィック・ソース間で切り替えを行うための技法は、コンピュータ・システムをシャットダウンすること、またはコンピュータ・システムを再初期化することを必要としない。その結果、この切り替え過程は再初期化が必要とされていた場合にかかる時間よりも、実質的により少ない時間で済む。したがって、本発明は迅速かつ頻繁なグラフィック・プロセッサ間の切り替えを可能にする。
【００５６】
図３は本発明の実施形態による、ディスプレイを駆動するために第１グラフィック・ソースから第２グラフィック・ソースへ切り替えを行う過程を示す流れ図を表す。
【００５７】
オペレーションの間、このシステムは最初に、ディスプレイをアクティブに駆動している第１グラフィック・プロセッサから非アクティブ状態の第２グラフィック・プロセッサへディスプレイのための信号ソースを切り替える要求を受け取る（ステップ３０２）。
【００５８】
この切り替え要求は、グラフィック処理負荷のレベルを認識しているユーザによって生成されることが可能である。代替として、この切り替え要求は、システムによって内部で生成されることが可能である。
【００５９】
本発明の１つの実施形態では、システム・ソフトウェアはグラフィック処理負荷のレベルを継続的に監視する。より具体的には、このシステムは、グラフィック・プロセッサに関連したグラフィック・コマンド・キューの状態に基づいて、グラフィック処理負荷のレベルを判定することができる。例えば、コマンド・キューが大部分空である場合、システムはグラフィック処理負荷が低いとアサートする。一方、コマンド・キューが大部分いっぱいである場合、システムはグラフィック処理負荷が高いとアサートする。
【００６０】
次に、システム・ソフトウェアはグラフィック処理負荷のレベルに基づいて２つのグラフィック・プロセッサのうちの１つを選択し、続いて非アクティブのグラフィック・プロセッサが選択される場合、切り替えを求める要求を生成する。
【００６１】
例えば、第１グラフィック・プロセッサが高い電力を消費する高性能ＧＰＵである場合、システム・ソフトウェアはグラフィック処理負荷レベルの大幅な減少を検出するときに、性能はより低いが、消費する電力もより低い第２グラフィック・プロセッサへの切り替えを求める要求を発行することができる。一方、第１グラフィック・プロセッサがより低い性能で低電力のＧＰＵであれば、システムはシステム・ソフトウェアがグラフィック処理負荷レベルの大幅な減少を検出した場合、高性能で高電力のＧＰＵへの切り替えを求める要求を発行することができる。
【００６２】
グラフィック処理負荷を監視するため、および切り替え要求を自動的に発行するためにシステム・ソフトウェアを使用することは、人間によって開始される要求よりも著しく速く、おそらくはよりエネルギー効率がよいということに留意されたい。さらに、システム・ソフトウェアを使用することは仕事を監視することからユーザを解放する。
【００６３】
次に、切り替え要求に応答して、システムは第２グラフィック・プロセッサをディスプレイの駆動に備えて構成する（ステップ３０４）。本発明の１つの実施形態では、第２グラフィック・プロセッサの構成には以下の（１）現在電力が落とされている場合、プロセッサの電力を上げるステップ、（２）グラフィック・プロセッサを初期化するステップ、および（３）ディスプレイの電力を上げることに備えて出力信号を生成するステップのうちの１つまたは複数が伴ってもよい。
【００６４】
次いでシステムは、ディスプレイを駆動する信号ソースを第１グラフィック・プロセッサから第２グラフィック・プロセッサへ切り替え、これによって第２グラフィック・プロセッサがディスプレイを駆動するようになる（ステップ３０６）。本発明の１つの実施形態では、切り替えには図２のＭＵＸ２２０などの選択デバイスを使用することが伴い、選択デバイスは第１グラフィック・プロセッサをディスプレイから切り離し、第２グラフィック・プロセッサをディスプレイへ結合する。切り替えオペレーションの間、以下でより詳細に説明される異なるタイミング制御が使用されてもよい。一般に、よりスムーズな切り替えの移行を達成することは、より正確なタイミング制御を必要とし、したがって典型的により複雑な切り替え制御メカニズムを必要とする。
【００６５】
第１グラフィック・プロセッサから第２グラフィック・プロセッサに代わると、システムは電力を節約するために第１グラフィック・プロセッサの電力を落としてもよい。上述の切り替え課程は、実施のためにシステム全体を再初期化することを必要としないことに留意されたい。
【００６６】
本明細書ではグラフィック処理負荷に基づいた切り替えを説明してきたが、この切り替え要求は電力状態（例えば、システムはバッテリで動いているのか、または外部の電源で動いているのかどうか、もしくはバッテリが低いのかどうかなど）に基づいて、システムの熱放散を減らす必要性に基づいて、ユーザの嗜好に基づいて、または２つのグラフィック・プロセッサ間で異なる任意の機能または能力に基づいても生成されることが可能なことに留意されたい。
【００６７】
切り替えの間のタイミング
同一のディスプレイ・デバイスを駆動するために異なるグラフィック・プロセッサ間で切り替えを行うことは、実質的にシームレスな移行を確実にするためのグラフィック・プロセッサ間での一定レベルの協調を必要とする。以下で、同期が出力ディスプレイ信号に関与しているかどうかに基づいて、それらを識別することによって、切り替えの間の異なるタイミング技法について論じる。
【００６８】
同期を伴わない切り替え
図４は、本発明の実施形態による、出力ディスプレイ信号を同期させることなく第１グラフィック・ソースから第２グラフィック・ソースへ切り替える過程を示す流れ図を表す。
【００６９】
オペレーションの間、第１グラフィック・プロセッサはディスプレイをフェードアウトさせる（ステップ４０２）。このことは、限定されないが、黒または他の色をスクリーン上に表示すること、バックライトを切ること、またはディスプレイ全体の電力を落とすことを含めて複数の方法で行われることが可能なことに留意されたい。
【００７０】
次に、システムはディスプレイを駆動する信号ソースを第１グラフィック・プロセッサから第２グラフィック・プロセッサに切り替え、第２グラフィック・プロセッサはディスプレイを駆動するように構成されている（ステップ４０４）。より具体的には、この切り替えは、第１グラフィック・プロセッサの出力信号をディスプレイの入力から切り離し、第２グラフィック・プロセッサの出力信号をディスプレイの入力に結合することを伴う。
【００７１】
切り替えを完了すると、第２グラフィック・プロセッサは次いで、必要に応じてディスプレイを初期化する（ステップ４０６）。次に、第２グラフィック・プロセッサはディスプレイ・スクリーンを再描画し、続いてディスプレイ・スクリーンをフェードインさせる（ステップ４０８）。
【００７２】
この実施形態では、２つのグラフィック・ソースは互いに同期することを必要としない。したがって、第２信号ソースは切り替えが起こる前にディスプレイを再描画するように構成されることを必要としない。さらに、第１信号ソースは切り替えを実行する前に、（例えばオペレーションをフェードアウトさせることを通じて）オフにされることが可能である。
【００７３】
同期を伴わない切り替えは単純であるが、ユーザに切り替えに気づかせることがありうる。しかしながら、切り替えが僅かな時間で完了されることができれば、ユーザは切り替えに気づくことさえないということが可能である。代替として、切り替えがよりゆっくりと行われるのであれば、ディスプレイの解像度が変更される場合に例えばフェードアウト／フェードイン効果などの適切な視覚効果を使用することによって、視覚上の中断は減らされることが可能である。一般に、ディスプレイをディスプレイ信号の１つのセットから異なるものへ切り替えることのいかなる望ましくない視覚効果でも、移行の間にディスプレイをフェードアウトさせることによって、同期されないディスプレイ信号のセットは隠されることが可能である。
【００７４】
同期を伴う切り替え
切り替えの前に出力信号を同期させることは、よりスムーズで目立たない、またはディスプレイ上のグラフィック出力を中断させることのないシームレスな切り替え過程でさえも促進する。しかしながら同期は、両方のグラフィック・ソースからの出力ディスプレイ信号が同期されることが可能なように、第２グラフィック・ソースが切り替えの前にディスプレイを駆動することに備えて出力信号の生成を開始することを必要とする。
【００７５】
本発明の１つの実施形態では、２つのグラフィック・ソースからの出力信号を同期させることは、出力信号に埋め込まれたタイミング情報をマッチさせることによって達成されることが可能である。そのようなタイミング情報は、限定されないが、水平同期（Ｈ−ｓｙｎｃ）パルス、垂直同期（Ｖ−ｓｙｎｃ）パルス、水平帰線消去信号および垂直帰線消去信号を含むことができる。特にＶ−ｓｙｎｃパルスは、データの新たなフレームをいつスキャンし始めるべきかを示すことによって、ディスプレイ上の画像リフレッシュを制御する。典型的に、Ｖ−ｓｙｎｃパルスは垂直帰線消去期間（ＶＢＩ）と呼ばれる２つの連続する画像フレームの間の短い時間間隔内に生じ、この間スクリーン上のディスプレイは様々な管理上の目的で一定の状態に保たれる。図５Ａは、本発明の実施形態による、グラフィック・ソースによって作り出される単一のＶＢＩ５０２および対応するＶ−ｓｙｎｃパルス５０４を示す。Ｖ−ｓｙｎｃパルス５０４はＶＢＩ５０２内に入ることに留意されたい。
【００７６】
この実施形態では、コンピュータ・システムは第１グラフィック・ソースの中でいつＶ−ｓｙｎｃパルスが生じるのかについて経過を追い、そのＶ−ｓｙｎｃパルスが第１グラフィック・ソースのものと一列に並ぶまで第２グラフィック・ソースのタイミング・シーケンスを調整する。１つの実施形態では、２つのグラフィック・ソースからのＶ−ｓｙｎｃパルスを整列させることは、第２グラフィック・ソースのタイミング・シーケンスを第１グラフィック・ソースのタイミング・シーケンスと一致させるためにソフトウェアまたはハードウェアのいずれかを使用することを伴う。この整列期間の間、第１グラフィック・ソースはディスプレイを駆動し続ける。Ｖ−ｓｙｎｃパルスが２つのソース間で十分に整列される場合、その後切り替えは次のＶＢＩの間に実行されることが可能である。
【００７７】
図５Ｂは本発明の実施形態による、２つのグラフィック・ソースによって生成されるＶＢＩ５０６およびＶＢＩ５０８の２つの重複するＶＢＩを示す。切り替えは２つのＶＢＩの重複期間５１０内に生じるということに留意されたい。また、切り替え過程は重複期間５１０内で完了されることが可能な場合、ユーザには見えないようになることが可能なことにも留意されたい。さらに、２つのグラフィック・ソース間の実質的な同期は、第２グラフィック・ソースが、ユーザにはディスプレイが変化していないように見えるようにディスプレイを直ちに駆動することを促進する。
【００７８】
しかしながら切り替え過程は、完了するために単一のＶＢＩよりも長い時間がかかるか、または分解するために数フレーム時間をとる可能性がある。この場合、システムは画面を完全に空白にするか、またはフェードアウトさせることによって切り替え効果を隠すことができる。
【００７９】
本発明の別の実施形態では、第２グラフィック・ソースが第１グラフィック・ソースと一列に並ぶようにする代わりに、このシステムは、第２グラフィック・ソースのＶ−ｓｙｎｃ信号を第１グラフィック・ソースのものに対してドリフトさせることができる。タイミング信号におけるそのようなドリフトは、１つまたは複数のタイミング差の結果として生じる可能性がある。例えば、このドリフトは、２つのグラフィック・プロセッサのクロック周波数における僅かな差によって生じる可能性がある。代替として、このドリフトは、２つのグラフィック・プロセッサを僅かに異なるディスプレイ・フレーム速度で動作するようにプログラムすることによって生じる可能性がある。
【００８０】
同期のこの実施形態では、このシステムは２つのソースからの２つのＶ−ｓｙｎｃ信号を監視して、それらがいつ互いに重複するのかを検出することができ、ここでこの監視は、ソフトウェアまたはハードウェアのいずれかによって実行されることが可能である。このことが生じるとき、このシステムは２つの信号が互いにドリフトして離れる前に、１つのグラフィック・ソースから別のものへ切り替えることができる。
【００８１】
ハードウェア・ベースの同期を伴う切り替え
本発明の１つの実施形態では、２つのグラフィック・ソースのディスプレイ出力タイミングが正確に一致することが可能であるように、グラフィック・ソースのうちの１つはさらなるハードウェアを使用して、もう一方のグラフィック・ソースと同期されることが可能である。次いで、次のＶＢＩの間に、ユーザによって気づかれないように切り替えが行われることが可能である。この実施形態では、スムーズな切り替えは、第２グラフィック・ソースのディスプレイ・タイミング・ジェネレータの位相および周波数を調整してディスプレイ出力タイミングを第１グラフィック・ソースのものと一致させるために、さらなるハードウェアを組み込むことによって可能となる。
【００８２】
図６Ａは本発明の実施形態による、２つのグラフィック・ソース間でタイミング信号を同期させるための技法の概略図を表す。図６Ａに示されているように、２つのグラフィック・ソースＡおよびＢは、それぞれタイミング・ジェネレータ６０２およびタイミング・ジェネレータ６０４を備える。タイミング・ジェネレータ６０２は、グラフィック・ソースＡのために出力Ｖ−ＳＹＮＣ６０６の中のＶ−ｓｙｎｃパルスおよび出力ＶＢＩ６０８の中の垂直帰線消去期間を作り出し、一方でタイミング・ジェネレータ６０４は、グラフィック・ソースＢのために出力Ｖ−ＳＹＮＣ６１０の中のＶ−ｓｙｎｃパルスおよび出力ＶＢＩ６１２の中の垂直帰線消去期間を作り出す。
【００８３】
グラフィック・ソースＡおよびＢはまた、それぞれタイミング・ジェネレータ６０２および６０４に周波数基準を与えるために、フェーズ・ロック・ループ（ＰＬＬ）６１４およびＰＬＬ６１６を使用する。より具体的には、ＰＬＬ６１４およびＰＬＬ６１６は左から基準周波数入力ｆAREF６１８およびｆBREF６２０を受け取り、タイミング・ジェネレータ６０２および６０４への入力として基準周波数出力ｆAOUT６２２およびｆBOUT６２４を生成する。ＰＬＬおよび関連した構成要素の機能の詳細な説明は、ＰＬＬについて述べる複数の参考文献の中で見つけることができる(Floyd.M.Gardner、「Charge-Pump Phase-Lock Loops」、IEEE Transactions on Communications、第２８巻１１号、１９８０年１１月を参照されたい）。
【００８４】
周波数合成を目的として、ＰＬＬ６１４はデバイダＭA６２６およびデバイダＮA６２８を備える。同様に、ＰＬＬ６１６はデバイダＭB６３０およびデバイダＮB６３２を備える。ＰＬＬ６１４およびＰＬＬ６１６の出力は、位相が同期される場合に、それぞれ出力周波数ｆAOUT＝ｆAREF×（ＭA／ＮA）およびｆBOUT＝ｆBREF×（ＭB／ＮB）を作り出す。
【００８５】
本発明の１つの実施形態では、周波数スカラー値ＭA、ＭB、ＮA、ＮBはプログラム可能であり、プログラム可能レジスタの中に記憶される。具体的には、スカラーＭA、ＭB、ＮA、ＮBは、マイクロコントローラまたは定形のステートマシンとして、ソフトウェアまたはハードウェアのいずれかに実装されることが可能なコントローラ６３４に結合され、これを通じてプログラム可能である。コントローラ６３４は入力ＲＥＱＳＷ６３６の切り替えを求める要求を受け取り、さらにグラフィック・ソースＡからクロック信号Ｖ−ＳＹＣＮA６０６およびＶＢＩA６０８を、またグラフィック・ソースＢからＶ−ＳＹＮＣB６１０およびＶＢＩB６１２を受け取る。次いでコントローラ６３４は、２つのグラフィック・ソースのＶ−ｓｙｎｃ信号またはＶＢＩ信号のいずれかの間の位相差を測定する。次いでコントローラ６３４は、測定された位相差をフィードバック信号として使用して、関連したＰＬＬのＭおよびＮ値を同時に変更することによって、１つのグラフィック・ソースからのＶ−ｓｙｎｃおよびＶＢＩの位相を、もう一方のグラフィック・ソースに対して調整することができる。
【００８６】
フィードバック・ループを使用して、コントローラ６３４は位相差の測定および調整を継続する。コントローラ６３４は位相差が所定の範囲内にあると判定すると、その後切り替えイネーブルＯＫ２ＳＷＩＴＣＨ６３８を生成する。本発明の１つの実施形態では、ＯＫ２ＳＷＩＴＣＨ６３８は図２のソース選択２２６に結合され、それによってＭＵＸ２２０はソースを操作することができる。
【００８７】
上記の説明は、アクティブのグラフィック・ソースと非アクティブのグラフィック・ソースの両方のクロックを変えることができるということに留意されたい。特に、変更されたＰＬＬスカラー値がアクティブにディスプレイを駆動しているソースに関連している場合、関連した周波数をゆっくりとスムーズに調整するのが望ましい場合がある。また、切り替えを可能にするために完璧なクロック配列を得ることを求めなくてもよいということにも留意されたい。１つの実施形態では、コントローラ６３４は、切り替えオペレーションが目に見える人為結果を引き起こさないように十分な重複が得られるように、ＶＢＩを配列するように構成されることが可能である。コントローラは十分な重複が存在することを検出した場合、同期を完了するためにＯＫ２ＳＷＩＴＣＨ信号をアサートする。
【００８８】
図６Ｂは本発明の実施形態による、２つのグラフィック・ソース間でタイミング信号を同期させるための別の技法の概略図を表す。
【００８９】
この実施形態では、単一のＰＬＬ６４０はグラフィック・ソースＡおよびＢ間でタイミング信号を同期させるために使用される。図６ＡのようなコントローラによるＰＬＬの直接制御は存在しないということに留意されたい。代わりに、ＰＬＬ６４０はタイミング・ジェネレータのうちの１つとともに閉ループを形成する。
【００９０】
図６Ｂに示されているように、タイミング・ジェネレータ６０２および６０４は、それぞれ基準周波数入力ｆREF_A６４２およびｆREF_B６４４を受ける。タイミング・ジェネレータ６０２および６０４からの４つの出力Ｖ−ＳＹＮＣA６０６、ＶＢＩA６０８、Ｖ−ＳＹＮＣB６１０およびＶＢＩB６１２は、その出力にＶ−ＳＹＮＣA６０６およびＶ−ＳＹＮＣB６１０か、またはＶＢＩA６０８およびＶＢＩB６１２のいずれかを選択することができる４対２マルチプレクサＭＵＸ６４６に結合される。その後ＭＵＸ６４６の出力はＰＬＬ６４０の位相ディテクタの入力に結合される。この実施形態では、Ｖ−ｓｙｎｃ信号またはＶＢＩ信号のいずれかが配列のために使用されることが可能であることに留意されたい。
【００９１】
次いで、ＰＬＬ６４０からのＶＣＯ出力は、タイミング・ジェネレータのうちの１つに結合され、そのための入力基準周波数の役割を果たし、それによってそのタイミング・ジェネレータを用いた閉ループを完結する。より具体的には、最初にＰＬＬ６４０からの出力は２つのマルチプレクサＭＵＸ６４８およびＭＵＸ６５０の入力に結合され、ＭＵＸ６４８およびＭＵＸ６５０はそれぞれ、入力として外部クロック信号ＥＸＴＣＬＫ＿Ａ６５２およびＥＸＴＣＬＫ＿Ｂ６５４も受け取る。ＭＵＸ６４８およびＭＵＸ６５０の出力はコントローラ６５６によって制御され、コントローラ６５６は、それぞれのタイミング・ジェネレータのための基準周波数入力として、外部クロック・ソースまたはＰＬＬ出力のいずれかを選択する。コントローラ６５６はＰＬＬ６４０の位相ディテクタから入力を受け取り、その入力に基づいてＰＬＬ６４０がロックされているかどうかを検出するということに留意されたい。
【００９２】
オペレーションの間、グラフィック・ソースＡがアクティブにディスプレイを駆動していると仮定する。一方ＰＬＬ６４０のＶＣＯ出力は、グラフィック・ソースＢのタイミング・ジェネレータ６０４のための基準周波数ｆREF_B６４４として選択される。したがって、ＰＬＬ６４０およびタイミング・ジェネレータ６０４は閉ループを形成し、これが２つのタイミング・ジェネレータからの（Ｖ−ｓｙｎｃまたはＶＢＩのいずれかの）選択されたタイミング信号が同期することを促進する。コントローラ６５６はＰＬＬ６４０が位相同期されたことを検出すると、次いで次の帰線消去期間の間にディスプレイを駆動するグラフィック・ソースをグラフィック・ソースＡからグラフィック・ソースＢに切り替える。より具体的には、後に続く帰線消去期間に、コントローラ６５６はｆREF_B入力をＰＬＬ６４０から外部クロック・ソースＥＸＴＣＬＫ＿Ｂ６５４に切り替える。切り替えの後、ＰＬＬ６４０は次いで、グラフィック・ソースＡを現在アクティブにディスプレイを駆動しているグラフィック・ソースＢにロックするために使用されることが可能である。
【００９３】
切り替えを伴わないグラフィック・プロセッサの選択
本発明の１つの実施形態では、同一のディスプレイ・デバイスを駆動するために２つのグラフィック・プロセッサ間で切り替えを行う代わりに、より低い性能のより低い電力のグラフィック・プロセッサが常にディスプレイを駆動する。この実施形態では、さらなるグラフィック性能が必要とされる場合、より高い性能のプロセッサがグラフィック処理負荷を引き継ぎ、より低い性能のプロセッサによって使用される同一のフレーム・バッファにそのディスプレイ画像をレンダリングする。システムがこのような方法で動作している場合、より性能の低いプロセッサは、純粋にディスプレイ出力デバイスとして機能し、すなわち画像データをフレーム・バッファからディスプレイに転送し、一方でより性能の高いデバイスは、すべてのグラフィック処理を実行する。あまり高い性能が必要とされない場合、より性能の低いデバイスが再びグラフィック処理作業を引き継ぎ、より性能の高いデバイスはそれに応じて電力を落とされることが可能である。
【００９４】
コンピュータ・システム
図７は本発明の実施形態による、２つのグラフィック・プロセッサを含むコンピュータ・システム７００を示す。より具体的には、コンピュータ・システム７００はブリッジ・チップ７０４に結合されたプロセッサ７０２を含む。ブリッジ・チップ７０４はそれ自体でメイン・メモリ７０６、ディスプレイ７１４および周辺バス７０８に結合される。周辺バス７０８は、記憶デバイス７１０にアクセスするために使用されることが可能である。
【００９５】
より性能の低い、低電力のグラフィック・プロセッサ７１２は直接ディスプレイ７１４に結合され、常にそれを駆動することに留意されたい。一方、高性能で高電力のグラフィック・プロセッサ７１６はグラフィック・プロセッサ７１２に結合され、典型的には使用中ではない場合に電力を落とされる。
【００９６】
本発明の１つの実施形態では、グラフィックをそれ自体のフレーム・バッファにレンダリングする代わりに、グラフィック・プロセッサ７１６はグラフィック・プロセッサ７１２のためのフレーム・バッファ７０７に画像を直接レンダリングし、この場合フレーム・バッファ７０７はメイン・メモリ７０６に配置される。この実施形態では、グラフィック・プロセッサ７１２は、継続的にディスプレイ７１４をリフレッシュすることによって、ディスプレイ７１４にグラフィックを表示する役割を果たす。この実施形態では、ディスプレイは同一のグラフィック・プロセッサによって常に駆動され、同一のフレーム・バッファからリフレッシュしているので、切り替えを行うハードウェアが必要とされることはなく、またユーザから隠すためにハードウェアの切り替えを移行することはないことに留意されたい。
【００９７】
代替実施形態では、さらなるグラフィック処理能力またはさらなるセキュリティが必要とされる場合、このシステムはさらなるグラフィック・レンダリング能力を与えるためにグラフィック・プロセッサ７１６の電力を上げる。グラフィック・プロセッサ７１６は、グラフィック・プロセッサ７１６に結合された（または組み込まれた）特殊目的グラフィック・メモリ７２０の中に存在するそのローカル・フレーム・バッファ７２２に画像をレンダリングする。メイン・メモリ７０６は典型的に多くの異なる過程およびアプリケーションの間で共有されることから、特殊目的グラフィック・メモリ７２０はメイン・メモリ７０６よりも安全であることに留意されたい。この実施形態では、グラフィック・プロセッサ７１２は、（そこからディスプレイ７１４をリフレッシュしている）フレーム・バッファを、それ自体のフレーム・バッファ７０７からグラフィック・プロセッサ７１６のフレーム・バッファ７２２に変更しなければならない。ディスプレイ７１４は常に同一のグラフィック・プロセッサによって駆動されるので、切り替えハードウェアが必要とされることはない。しかしながらグラフィック・プロセッサ７１２は、ユーザの目に見える移行を回避するために、適切な時間（例えば垂直帰線消去期間の間など）にフレーム・バッファ間の切り替えを行うようにプログラムされなければならない。
【００９８】
グラフィック・ソース間のスムーズな切り替え
図８は、本発明の実施形態による、第１グラフィック・ソースから第２グラフィック・ソースへ切り替える過程を示す流れ図を表す。この過程の開始時に、（「ＧＰＵ」とも呼ばれる）より低電力の内部グラフィック・プロセッサ７１２はメイン・メモリ７０６の中のフレーム・バッファ７０７にレンダリングを行っており、ディスプレイ７１４はフレーム・バッファ７０７からリフレッシュされている（ステップ８０２）。
【００９９】
次に、このシステムは、より高い性能および／またはより高いセキュリティが必要とされるかどうかを判定する（ステップ８０４）。必要とされない場合、システムはステップ８０２へ戻る。
【０１００】
一方システムが、より高い性能および／またはより高いセキュリティが必要とされると判定した場合、システムは外部の高電力グラフィック・プロセッサ７１６の電力を上げる（ステップ８０６）。次いで、外部高電力グラフィック・プロセッサ７１６は、グラフィック・メモリ７２０の中のフレーム・バッファ７２２に同じ画像をレンダリングする（ステップ８０８）。
【０１０１】
次に、このシステムは垂直帰線消去期間（ＶＢＩ）を待つ（ステップ８１０）。この垂直帰線消去期間の間、内部低電力グラフィック・プロセッサ７１２はそのリフレッシュ・ポインタを、メイン・メモリ７０６の中のフレーム・バッファ７０７からグラフィック・メモリ７２０の中のフレーム・バッファ７２２に切り替える（ステップ８１２）。次に、内部低電力グラフィック・プロセッサ７１２は、そのリフレッシュ回路を除いて電力を落とす（ステップ８１４）。この時点で、切り替え過程は完了する。
【０１０２】
この切り替えはまた、別の方向で起こることも可能である。より具体的には、図９は本発明の実施形態による、第２グラフィック・ソースから第１グラフィック・ソースへ切り替える過程を示す流れ図を表す。この過程の開始時に、高電力内部グラフィック・プロセッサ７１６はグラフィック・メモリ７２０の中のフレーム・バッファ７２２にレンダリングを行っており、ディスプレイ７１４はフレーム・バッファ７２２からリフレッシュされている（ステップ９０２）。
【０１０３】
次に、このシステムは、より低い性能および／またはより低いセキュリティが必要とされるかどうかを判定する（ステップ９０４）。必要とされない場合、システムはステップ９０２へ戻る。
【０１０４】
一方システムが、より低い性能および／またはより低いセキュリティが必要とされると判定した場合、システムは内部低電力グラフィック・プロセッサ７１２の電力を上げる（ステップ９０６）。次いで、低電力グラフィック・プロセッサ７１２は、メイン・メモリ７０６の中のフレーム・バッファ７０７に同じ画像をレンダリングする（ステップ９０８）。次に、このシステムは垂直帰線消去期間を待つ（ステップ９１０）。この垂直帰線消去期間の間、内部低電力グラフィック・プロセッサ７１２はそのリフレッシュ・ポインタを、グラフィック・メモリ７２０の中のフレーム・バッファ７２２からメイン・メモリ７０６の中のフレーム・バッファ７０７に切り替える（ステップ９１２）。次に、高電力グラフィック・プロセッサ７１６は電力を落とす（ステップ９１４）。この時点で、切り替え過程は完了する。
【０１０５】
ソフトウェアが単にディスプレイをフェードアウトさせ、次いでフレーム・バッファの切り替えを行い、その後ディスプレイを再びフェードインすることもまた可能である（かつ、おそらくはずっと簡単である）ということに留意されたい。このことは、ソフトウェアが２つのグラフィック・ソースに、移行の間に同時に同じデータを２つのフレーム・バッファの中に書き込ませなくてもよいので、より簡単である。代わりに、このシステムは１つのソースをシャットダウンし、次いで別のソースを開始して、その後フレーム・バッファを切り替えることができる。
【０１０６】
別の実施形態
図１０は本発明の実施形態による、内部ディスプレイおよび外部ディスプレイの両方を駆動するために異なるグラフィック・ソース間で切り替えを行うことができるコンピュータ・システム１０００を示す。図１０で、２つのグラフィック・プロセッサ（グラフィック・プロセッサ１０１０および組み込みグラフィック・プロセッサ１０１８）は、それぞれ独立して内部ディスプレイ１０１４および外部ディスプレイ１０１５を駆動することができるということに留意されたい。ディスプレイ１０１４をアクティブに駆動するグラフィック・ソースはマルチプレクサ１０２０によって判定され、ディスプレイ１０１５を駆動するグラフィック・ソースはマルチプレクサ１０２１によって判定される。マルチプレクサ１０２０および１０２１は、グラフィック・プロセッサ１０１０と組み込みグラフィック・プロセッサ１０１８との間で選択を行うことができる。
【０１０７】
グラフィック・プロセッサ１０１０からの出力ディスプレイ信号１０２２および組み込みグラフィック・プロセッサ１０１８からの出力ディスプレイ信号１０２４は、マルチプレクサ（ＭＵＸ）１０２０の入力に結合されることに留意されたい。同様に、グラフィック・プロセッサ１０１０からの出力ディスプレイ信号１０２３および組み込みグラフィック・プロセッサ１０１８からの出力ディスプレイ信号１０２５は、ＭＵＸ１０２１の入力に結合される。各グラフィック・プロセッサは、２つのディスプレイを駆動するために別々の出力ディスプレイ信号を有することに留意されたい（これは、２つのディスプレイが異なるディスプレイ信号プロトコルを使用することが可能であり、ピクセル解像度、色深度、色バランス等において一般に異なるためである）。
【０１０８】
ＭＵＸ１０２０の出力はソース選択１０２６によって制御され、ソース選択１０２６は２つのグラフィック・ソースのうちのどちらが内部ディスプレイ１０１４を駆動するべきかを判定する。同様に、ＭＵＸ１０２１の出力はソース選択１０２７よって制御され、ソース選択１０２７は２つのグラフィック・ソースのうちのどちらが外部ディスプレイ１０１５を駆動するのかを判定する。この実施形態では、ソース選択１０２６および１０２７はブリッジ・チップ１００４の出力であり、ブリッジ・チップ１００４は、ソース選択１０２６および１０２７を生成するための回路を含む。ソース選択１０２６および１０２７はまた、ブリッジ１００４の外部に配置された論理ブロックによって作られることも可能であることに留意されたい。
【０１０９】
選択されたグラフィック・ソースからの出力ディスプレイ信号は、ディスプレイ１０１４およびディスプレイ１０１５の入力に結合される。選択デバイスはマルチプレクサとして示されているが、例えば単純なワイヤードＯＲ論理回路など、任意のその他の種類の選択デバイスを含むこともできる。
【０１１０】
本発明の１つの実施形態では、グラフィック・プロセッサ１０１０は大量の電力を消費する高性能グラフィック処理装置（ＧＰＵ）であり、一方組み込みグラフィック・プロセッサ１０１８はより少ない電力を消費する、より低性能のＧＰＵである。この実施形態では、グラフィック処理負荷が軽い場合、システムはディスプレイ１０１４および１０１５を駆動するために、グラフィック・ソースをグラフィック・プロセッサ１０１０から組み込みグラフィック・プロセッサ１０１８に切り替え、続いてグラフィック・プロセッサ１０１０の電力を完全に落とし、それによって電力を節約する。一方、グラフィック処理負荷が再び高くなる場合、システムはグラフィック・ソースを組み込みグラフィック・プロセッサ１０１８からグラフィック・プロセッサ１０１０へ再び切り替える。
【０１１１】
以上の本発明の実施形態の説明は、単に例示および説明を目的として示されてきた。これらは網羅的であること、または本発明を開示された形式に限定することを目的としない。したがって、当業者には多くの修正形態および変形形態が容易に明らかとなろう。さらに、上の開示は本発明を限定することを目的としない。本発明の範囲は、添付の特許請求の範囲によって定義される。
【符号の説明】
【０１１２】
２００  コンピュータ・システム；  
２１０  グラフィック・プロセッサ；  ２１９  組み込みグラフィック・プロセッサ；  
２１４  ディスプレイ；  ２２０  選択デバイス；  
２２２、２２４  出力ディスプレイ信号。
【図１】
2010540988.tif 000003
【図２】
2010540988.tif 000004
【図３】
2010540988.tif 000005
【図４】
2010540988.tif 000006
【図５Ａ】
2010540988.tif 000007
【図５Ｂ】
2010540988.tif 000008
【図６Ａ】
2010540988.tif 000009
【図６Ｂ】
2010540988.tif 000010
【図７】
2010540988.tif 000011
【図８】
2010540988.tif 000012
【図９】
2010540988.tif 000013
【図１０】
2010540988.tif 000014
【手続補正書】
【提出日】平成22年3月24日(2010.3.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ・システムにおいてディスプレイをリフレッシュするために使用されるフレーム・バッファ間で選択的に切り替えを行う装置であって、
第１メモリに配置された第１フレーム・バッファと、
第２メモリに配置された第２フレーム・バッファと、
前記第１フレーム・バッファまたは前記第２フレーム・バッファのいずれかから選択的に前記ディスプレイをリフレッシュするように構成された１つまたは複数のリフレッシュ回路と、
切り替えを求める要求を受け取ると、前記第１フレーム・バッファと前記第２フレーム・バッファとの間で前記ディスプレイのリフレッシュを切り替えるように構成された切り替えメカニズムとを備える装置。
【請求項２】
前記第１メモリは、多数のアプリケーションによってアクセス可能であり、したがって安全ではないメイン・メモリであり、
前記第２メモリはメイン・メモリの外部に配置された安全なフレーム・バッファである請求項１に記載の装置。
【請求項３】
前記切り替え回路は、前記安全ではないメイン・メモリを完全に回避するように、前記ディスプレイをリフレッシュするために使用されるデータを導くように構成され、
前記装置は、前記データが前記第２フレーム・バッファに記憶される間、ならびに前記データが前記第２フレーム・バッファから移行する間および前記データが前記第２フレーム・バッファへ移行する間、前記データを暗号化するように構成された暗号化回路をさらに備える請求項２に記載の装置。
【請求項４】
前記切り替えメカニズムは、前記ディスプレイに関連したデータのためのセキュリティ要件を判定し、前記判定されたセキュリティ要件に基づいて、フレーム・バッファの切り替えを求める要求を生成するように構成された請求項１に記載の装置。
【請求項５】
前記切り替えメカニズムは、前記ディスプレイのためのグラフィック処理負荷のレベルを監視し、前記グラフィック処理負荷のレベルに基づいて、前記切り替えを求める要求を生成するように構成された請求項１に記載の装置。
【請求項６】
前記切り替えメカニズムは、前記ディスプレイを含む装置内の温度を測定し、前記測定された温度に基づいて前記切り替えを求める要求を生成するように構成された請求項１に記載の装置。
【請求項７】
前記第１フレーム・バッファと前記第２フレーム・バッファとの間で切り替えを行う間、前記装置は前記ディスプレイのためのレンダリング・オペレーションを実行するグラフィック処理装置（ＧＰＵ）を切り替えるよう構成され、
前記ＧＰＵは、前記第１フレーム・バッファにレンダリングする低電力ＧＰＵから前記第２フレーム・バッファにレンダリングする高電力ＧＰＵへ切り替えられる請求項１に記載の装置。
【請求項８】
前記低電力ＧＰＵから前記高電力ＧＰＵへ切り替える前に、前記切り替えメカニズムは、前記低電力ＧＰＵの出力ディスプレイ信号と前記高電力ＧＰＵの出力ディスプレイ信号とを実質的に同期させるように構成され、それによってグラフィック出力を中断させることのないシームレスな移行を促進する請求項７に記載の装置。
【請求項９】
前記出力ディスプレイ信号を実質的に同期させるステップは、１つまたは複数のフェーズ・ロック・ループ（ＰＬＬ）を使用するステップを伴う請求項８に記載の装置。
【請求項１０】
前記切り替えるステップは、前記ディスプレイのための帰線消去信号に関連した帰線消去期間の間に起こる請求項１に記載の装置。
【請求項１１】
ディスプレイをリフレッシュするために使用されるフレーム・バッファ間で切り替えを行うための方法であって、
第１メモリに配置された第１フレーム・バッファから前記ディスプレイをリフレッシュするステップと、
前記ディスプレイのためのフレーム・バッファの切り替えを求める要求を受け取るステップと、
前記要求に応答して、前記ディスプレイが第２メモリに配置された第２フレーム・バッファからリフレッシュされるように、前記ディスプレイへのデータ転送を再構成するステップと
を備える方法。
【国際調査報告】
2010540988.tif 000015
2010540988.tif 000016
2010540988.tif 000017