JP2024054180A - 仮想、拡張、および複合現実システムおよび方法 - Google Patents
仮想、拡張、および複合現実システムおよび方法 Download PDFInfo
- Publication number
- JP2024054180A JP2024054180A JP2024014022A JP2024014022A JP2024054180A JP 2024054180 A JP2024054180 A JP 2024054180A JP 2024014022 A JP2024014022 A JP 2024014022A JP 2024014022 A JP2024014022 A JP 2024014022A JP 2024054180 A JP2024054180 A JP 2024054180A
- Authority
- JP
- Japan
- Prior art keywords
- gpu
- data
- partial
- image data
- frame
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 243
- 230000003190 augmentative effect Effects 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 50
- 230000015654 memory Effects 0.000 claims description 78
- 230000006870 function Effects 0.000 claims description 77
- 238000012545 processing Methods 0.000 claims description 41
- 230000011218 segmentation Effects 0.000 claims description 39
- 230000006835 compression Effects 0.000 claims description 17
- 238000007906 compression Methods 0.000 claims description 17
- 238000012546 transfer Methods 0.000 claims description 5
- 238000003384 imaging method Methods 0.000 abstract description 5
- 238000012800 visualization Methods 0.000 abstract description 2
- 230000036961 partial effect Effects 0.000 description 268
- 230000011664 signaling Effects 0.000 description 32
- 210000001508 eye Anatomy 0.000 description 30
- 239000000872 buffer Substances 0.000 description 25
- 230000003287 optical effect Effects 0.000 description 21
- 238000012856 packing Methods 0.000 description 16
- 238000009877 rendering Methods 0.000 description 16
- 210000003128 head Anatomy 0.000 description 15
- 230000007704 transition Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 11
- 238000002156 mixing Methods 0.000 description 10
- 238000009826 distribution Methods 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 7
- 230000001427 coherent effect Effects 0.000 description 7
- 230000004075 alteration Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 239000000835 fiber Substances 0.000 description 5
- 230000000873 masking effect Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000004308 accommodation Effects 0.000 description 2
- 239000004020 conductor Substances 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000010339 dilation Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 210000000613 ear canal Anatomy 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000008521 reorganization Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000002618 waking effect Effects 0.000 description 2
- 241000256837 Apidae Species 0.000 description 1
- 101000805129 Homo sapiens Protein DPCD Proteins 0.000 description 1
- 102100037836 Protein DPCD Human genes 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007727 cost benefit analysis Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 210000000857 visual cortex Anatomy 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3265—Power saving in display device
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B27/0172—Head mounted characterised by optical features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0132—Head-up displays characterised by optical features comprising binocular systems
- G02B2027/0134—Head-up displays characterised by optical features comprising binocular systems of stereoscopic type
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0138—Head-up displays characterised by optical features comprising image capture systems, e.g. camera
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/014—Head-up displays characterised by optical features comprising information/image processing systems
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0179—Display position adjusting means not related to the information to be displayed
- G02B2027/0185—Displaying image at variable distance
-
- 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
- G09G2330/022—Power management, e.g. power saving in absence of operation, e.g. no data being entered during a predetermined time
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/04—Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/10—Use of a protocol of communication by packets in interfaces along the display data pipeline
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Optics & Photonics (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
- Power Sources (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】仮想現実、拡張現実、および複合現実結像、可視化、およびディスプレイシステムおよび方法を提供すること。【解決手段】仮想(VR)、拡張(AR)又は複合現実(MR)システム800における方法は、GPU802が、画像データの不在を決定/検出するステップと、GPUの一部/コンポーネント/機能をシャットダウンするステップと、GPUとディスプレイブリッジ(DB)806との間の通信リンクをシャットダウンするステップと、DBの一部/コンポーネント/機能をシャットダウンするステップと、DBと左右ディスプレイパネル812との間のMIPIリンク816をシャットダウンするステップと、ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップを含む。【選択図】図8
Description
(著作権表示)
本特許文書の開示の一部は、著作権保護を受けるべき資料を含有する。本著作権所有者は、本特許文書または本特許開示を誰が複写しても、それが特許商標局の特許ファイルまたは記録に現れる通りである限りでは異議はないが、その他の場合には、いかなる著作権も全て保有する。
本特許文書の開示の一部は、著作権保護を受けるべき資料を含有する。本著作権所有者は、本特許文書または本特許開示を誰が複写しても、それが特許商標局の特許ファイルまたは記録に現れる通りである限りでは異議はないが、その他の場合には、いかなる著作権も全て保有する。
本開示は、仮想現実、拡張現実、および複合現実結像、可視化、およびディスプレイシステムおよび方法に関する。
現代のコンピューティングおよびディスプレイ技術は、仮想現実(VR)、拡張現実(AR)、および複合現実(MR)システムの開発を促進している。VRシステムは、ユーザが体験するためのシミュレートされた環境を作成する。これは、頭部搭載型ディスプレイを通して、コンピュータ生成画像をユーザに提示することによって行われることができる。本画像は、感覚体験を作成し、これは、ユーザをシミュレートされた環境内に没入させる。VRシナリオは、典型的には、実際の実世界画像も含むのではなく、コンピュータ生成画像の提示のみを伴う。
ARシステムは、概して、実世界環境をシミュレートされた要素で補完する。例えば、ARシステムは、ユーザに、頭部搭載型ディスプレイを介して、周囲実世界環境のビューを提供してもよい。しかしながら、コンピュータ生成画像もまた、ディスプレイ上に提示され、実世界環境を向上させることができる。本コンピュータ生成画像は、実世界環境にコンテキスト的に関連する、要素を含むことができる。そのような要素は、シミュレートされたテキスト、画像、オブジェクト等を含むことができる。MRシステムはまた、シミュレートされたオブジェクトを実世界環境の中に導入するが、これらのオブジェクトは、典型的には、ARシステムにおけるものを上回る相互作用の程度を特徴とする。シミュレートされた要素は、多くの場合、リアルタイムで双方向性であることができる。
図1は、例示的AR/MR場面1を描写し、ユーザには、人々、木々、背景における建物、およびコンクリートプラットフォーム20を特徴とする、実世界公園設定6が見える。これらのアイテムに加え、コンピュータ生成画像もまた、ユーザに提示される。コンピュータ生成画像は、例えば、実世界プラットフォーム20上に立っているロボット像10と、マルハナバチの擬人化のように見える、飛んでいる漫画のようなアバタキャラクタ12とを含むことができるが、これらの要素12、10は、実際には、実世界環境内に存在しない。
種々の光学システムは、VR、AR、またはMRシナリオを表示するために、画像を種々の深度で生成する。ヒトの視知覚系は、複雑であって、他の仮想または実世界画像要素の中に仮想画像要素の快適で、自然な感覚で、豊かな提示を促進する、VR/AR/MR技術を生産することは、困難である。例えば、画像データが表示される方法を制御するための制御データを提供するための技法、画像データ内の光学歪曲を補正するための技法、およびユーザの頭部姿勢に基づいて画像データをワーピングさせるための技法を含む、そのようなシステムにおいて画像データを処理するための改良された技法が、必要とされる。VR/AR/MR技術はまた、サイズおよび可搬性問題点、バッテリ寿命問題点、システム過熱問題点、および電力効率的画像レンダリングの重要性を高める、他のシステムおよび光学課題を有する。改良された技法が、これらの問題点に対処するために必要とされる。本明細書に説明されるシステムおよび方法は、これらおよび他の課題に対処するように構成される。
必要とされるものは、旧来の技法および/または他の検討されるアプローチを改良するための技法または複数の技法である。本背景節に説明されるアプローチのうちのいくつかは、追求され得るアプローチであるが、必ずしも、以前に想起または追求されているアプローチではない。
一実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、画像データの不在を決定/検出するステップを含む。本方法はまた、GPUの一部/コンポーネント/機能をシャットダウンするステップを含む。本方法はさらに、GPUとDBとの間の通信リンクをシャットダウンするステップを含む。さらに、本方法は、DBの一部/コンポーネント/機能をシャットダウンするステップを含む。加えて、本方法は、DBとディスプレイパネルとの間の通信リンクをシャットダウンするステップを含む。本方法はさらにまた、ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップを含む。
1つ以上の実施形態では、本方法は、フレームデータを再編成し、転送時間を低減させるステップを含む。本方法はまた、GPU DPポートが、カスタムSTPメッセージをDBに送信するステップを含んでもよい。本方法はまた、GPUが、STPメッセージをDB AUSメッセージに送信するステップを含んでもよい。GPUの一部/コンポーネント/機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択されてもよい。DBの一部/コンポーネント/機能は、メモリ書込であってもよい。ディスプレイパネルの一部/コンポーネント/機能は、ビデオRAMおよびMIPI受信機から成る群から選択されてもよい。
1つ以上の実施形態では、本方法は、GPUが、ウェイクアップ信号をDBに送信するステップを含む。GPUは、AUX通信リンクを介して、ウェイクアップ信号を送信してもよい。本方法はまた、GPUが、ウェイクアップ信号をGPUとDBとの間の通信リンクに送信するステップを含んでもよい。GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能は、非同期して、シャットダウンされてもよい。本方法はまた、DBが、内蔵ライン制御メッセージをディスプレイパネルに送信するステップを含んでもよい。
別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、画像データのフレームを受信するステップを含む。本方法はまた、GPUが、前の画像データのフレームから変化している、画像データのフレーム内の複数の領域/部分/セクション/タイルを識別するステップを含む。本方法はさらに、GPUが、複数の領域/部分/セクション/タイルのうちの少なくともいくつかをデータのフレームの開始に移動させ、画像データの並べ替えられたフレームを形成するステップを含む。さらに、本方法は、GPUが、画像データの並べ替えられたフレームをDBに送信するステップを含む。加えて、本方法は、GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、およびディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップを含む。
1つ以上の実施形態では、本方法は、GPUが、画像データの並べ替えられたフレームをDBに送信前に、画像データの並べ替えられたフレームを圧縮するステップを含む。画像データの並べ替えられたフレームは、画像データのフレームより小さくてもよい。本方法はまた、DBが、画像データの並べ替えられたフレームをバッファ内に記憶するステップを含んでもよい。
1つ以上の実施形態では、本方法は、画像データの並べ替えられたフレームのサイズを決定するステップを含む。本方法はさらに、画像データの並べ替えられたフレームが、所定の最大サイズより小さいときのみ、GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップを含む。
1つ以上の実施形態では、本方法は、GPUが、画像データの並べ替えられたフレームをDBに送信後、STPメッセージをDBに送信するステップを含む。本方法はさらに、GPUが、SDPを介して、STPメッセージをDBに送信するステップを含んでもよい。
1つ以上の実施形態では、GPUの一部/コンポーネント/機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択される。DBの一部/コンポーネント/機能は、メモリ書込であってもよい。ディスプレイパネルの一部/コンポーネント/機能は、ビデオRAMおよびMIPI受信機から成る群から選択されてもよい。
1つ以上の実施形態では、本方法は、GPUが、ウェイクアップ信号をDBに送信するステップを含む。GPUは、AUX通信リンクを介して、ウェイクアップ信号を送信してもよい。GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能は、非同期して、シャットダウンされてもよい。
1つ以上の実施形態では、本方法は、DBが、画像データの並べ替えられたフレームからの画像データのフレームを再構成するステップを含む。本方法はさらに、画像データのフレーム内の複数の領域/部分/セクション/タイル内にない、画像データのフレームの部分を背景色に設定するステップを含んでもよい。本方法はまた、DBが、画像データの並べ替えられたフレームと画像データの前のフレームを混成するステップを含んでもよい。本方法はさらに、DBが、画像データの並べ替えられたフレームと更新された中心窩化領域に関連する画像データを混成するステップを含んでもよい。本方法はまた、DBが、画像データの前のフレームを、画像データの並べ替えられたフレームとそれを混成する前に、マスクするステップを含んでもよい。
1つ以上の実施形態では、本方法は、DBが、画像データの並べ替えられたフレームをスケーリングするステップを含む。本方法はさらに、DBが、スケーリング係数をGPUから受信するステップと、DBが、スケーリング係数を使用して、画像データの並べ替えられたフレームをスケーリングするステップとを含んでもよい。スケーリングは、中心窩化動作の一部であってもよい。本方法はまた、DBが、ある機能を画像データ上で実施するステップを含んでもよく、機能は、ワーピング、ピクセル化された調光、オクルージョン、色収差補正、フレームレート、および拡張から成る群から選択される。本方法はさらに、GPUの一部/コンポーネント/機能をシャットダウンする前に、画像データの並べ替えられたフレームをFIFOメモリ内に記憶するステップを含んでもよい。本方法はまた、DBが、内蔵ライン制御メッセージをディスプレイパネルに送信するステップを含んでもよい。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールドおよび第2の部分的な第1のカラーフィールドに分割するステップを含む。本方法はまた、GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールドおよび第2の部分的な第2のカラーフィールドに分割するステップを含む。本方法はさらに、GPUが、第1の部分的な第1のカラーフィールドをDBに送信するステップを含む。さらに、本方法は、GPUが、第1の部分的な第1のカラーフィールドを送信後、第1の部分的な第2のカラーフィールドをDBに送信するステップを含む。加えて、本方法は、GPUが、第1の部分的な第2のカラーフィールドを送信後、第2の部分的な第1のカラーフィールドをDBに送信するステップを含む。本方法はまた、GPUが、第2の部分的な第1のカラーフィールドを送信後、第2の部分的な第2のカラーフィールドをDBに送信するステップを含む。
1つ以上の実施形態では、本方法は、GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールドおよび第2の部分的な第3のカラーフィールドに分割するステップを含む。本方法はまた、GPUが、第1の部分的な第2のカラーフィールドを送信後、かつ第2の部分的な第1のカラーフィールドを送信前に、第1の部分的な第3のカラーフィールドをDBに送信するステップを含んでもよい。本方法はさらに、GPUが、第2の部分的な第2のカラーフィールドを送信後、第2の部分的な第3のカラーフィールドをDBに送信するステップを含んでもよい。本方法はまた、GPUが、第1の部分的な第1および第2のカラーフィールドおよび第2の部分的な第1および第2のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして送信するステップを含んでもよい。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールド、第2の部分的な第1のカラーフィールド、および第3の部分的な第1のカラーフィールドに分割するステップを含む。本方法はまた、GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールド、第2の部分的な第2のカラーフィールド、および第3の部分的な第2のカラーフィールドに分割するステップを含む。本方法はさらに、GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールド、第2の部分的な第3のカラーフィールド、および第3の部分的な第3のカラーフィールドに分割するステップを含む。さらに、本方法は、GPUが、第1の部分的な第1のカラーフィールドをDBに送信するステップを含む。加えて、本方法は、GPUが、第1の部分的な第1のカラーフィールドを送信後、第1の部分的な第2のカラーフィールドをDBに送信するステップを含む。本方法はまた、GPUが、第1の部分的な第2のカラーフィールドを送信後、第1の部分的な第3のカラーフィールドをDBに送信するステップを含む。本方法はさらに、GPUが、第1の部分的な第3のカラーフィールドを送信後、第2の部分的な第1のカラーフィールドをDBに送信するステップを含む。さらに、本方法は、GPUが、第2の部分的な第1のカラーフィールドを送信後、第2の部分的な第2のカラーフィールドをDBに送信するステップを含む。加えて、本方法は、GPUが、第2の部分的な第2のカラーフィールドを送信後、第2の部分的な第3のカラーフィールドをDBに送信するステップを含む。本方法はまた、GPUが、第2の部分的な第3のカラーフィールドを送信後、第3の部分的な第1のカラーフィールドをDBに送信するステップを含む。本方法はさらに、GPUが、第3の部分的な第1のカラーフィールドを送信後、第3の部分的な第2のカラーフィールドをDBに送信するステップを含む。さらに、本方法は、GPUが、第3の部分的な第2のカラーフィールドを送信後、第3の部分的な第3のカラーフィールドをDBに送信するステップを含む。
1つ以上の実施形態では、本方法は、GPUが、第1の部分的な第1、第2、および第3のカラーフィールド、第2の部分的な第1、第2、および第3のカラーフィールド、および第3の部分的な第1、第2、および第3のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして送信するステップを含む。
1つ以上の実施形態では、本方法は、GPUが、第1の姿勢データをDBに送信するステップと、DBが、第1の姿勢データを使用して、第1の部分的な第1のカラーフィールドをワーピングさせるステップとを含む。本方法はまた、第1の姿勢データを送信後、第2の姿勢データをDBに送信するステップと、DBが、第2の姿勢データを使用して、第1の部分的な第2のカラーフィールドをワーピングさせるステップを含む。本方法はさらに、第2の姿勢データを送信後、第3の姿勢データをDBに送信するステップと、DBが、第3の姿勢データを使用して、第1の部分的な第3のカラーフィールドをワーピングさせるステップとを含む。さらに、本方法は、第3の姿勢データを送信後、第4の姿勢データをDBに送信するステップと、DBが、第4の姿勢データを使用して、第2の部分的な第1のカラーフィールドをワーピングさせるステップとを含む。加えて、本方法は、第4の姿勢データを送信後、第5の姿勢データをDBに送信するステップと、DBが、第5の姿勢データを使用して、第2の部分的な第2のカラーフィールドをワーピングさせるステップとを含む。本方法はまた、第5の姿勢データを送信後、第6の姿勢データをDBに送信するステップと、DBが、第6の姿勢データを使用して、第2の部分的な第3のカラーフィールドをワーピングさせるステップとを含む。本方法はさらに、第6の姿勢データを送信後、第7の姿勢データをDBに送信するステップと、DBが、第7の姿勢データを使用して、第3の部分的な第1のカラーフィールドをワーピングさせるステップとを含む。さらに、本方法は、第7の姿勢データを送信後、第8の姿勢データをDBに送信するステップと、DBが、第8の姿勢データを使用して、第3の部分的な第2のカラーフィールドをワーピングさせるステップとを含む。加えて、本方法は、第8の姿勢データを送信後、第9の姿勢データをDBに送信するステップと、DBが、第9の姿勢データを使用して、第3の部分的な第3のカラーフィールドをワーピングさせるステップとを含む。
1つ以上の実施形態では、GPUは、AUX通信リンクを通して、第1、第2、第3、第4、第5、第6、第7、第8、および第9の姿勢データのうちの少なくとも1つをDBに送信する。DBは、第1の部分的な第1のカラーフィールド、第2の部分的な第1のカラーフィールド、第3の部分的な第1のカラーフィールド、第1の部分的な第2のカラーフィールド、第2の部分的な第2のカラーフィールド、第3の部分的な第2のカラーフィールド、第1の部分的な第3のカラーフィールド、第2の部分的な第3のカラーフィールド、第3の部分的な第3のカラーフィールドのそれぞれを、2回ワーピングしてもよい。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおいて使用するためのデータフォーマットは、第1のシグナリング行を含む。データフォーマットはまた、複数の第1のカラーフィールド行を含む。データフォーマットはさらに、第2のシグナリング行を含む。さらに、データフォーマットは、複数の第2のカラーフィールド行を含む。加えて、データフォーマットは、第3のシグナリング行を含む。データフォーマットはまた、複数の第3のカラーフィールド行を含む。
1つ以上の実施形態では、第1のシグナリング行は、複数の第1のカラーフィールド行のためのある数のアクティブ行を含む。アクティブ行は、画像フレーム間で変化してもよい。第2のシグナリング行は、複数の第2のカラーフィールド行のためのある数のアクティブ行を含んでもよい。第3のシグナリング行は、複数の第3のカラーフィールド行のためのある数のアクティブ行を含んでもよい。第1のシグナリング行は、複数の第1のカラーフィールド行の開始位置を含んでもよい。第2のシグナリング行は、複数の第2のカラーフィールド行の開始位置を含んでもよい。第3のシグナリング行は、複数の第3のカラーフィールド行の開始位置を含んでもよい。第1、第2、および第3のカラーフィールド行は、色情報を伴わずに、強度情報を含んでもよい。第1、第2、および第3のシグナリング行は、強度情報を伴わずに、色情報を含んでもよい。第1、第2、および第3のシグナリング行および複数の第1、第2、および第3のカラーフィールド行は、複数の第1、第2、および第3のカラーフィールド行に対応する画像が表示されるより高速のレートで読み取られてもよい。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、ユーザの焦点の面積を検出するステップを含む。本方法はまた、GPUが、焦点の面積の外側の仮想画像をより低い分解能でレンダリングするステップを含む。本方法はさらに、GPUが、焦点の面積の内側の仮想画像をより高い分解能でレンダリングするステップを含む。さらに、本方法は、GPUが、焦点の面積の外側および内側のレンダリングされた仮想画像を1つ以上のDBに送信するステップを含む。加えて、本方法は、1つ以上のDBが、焦点の面積の外側および内側のレンダリングされた仮想画像をマージし、画像データのフレームを生成するステップを含む。
1つ以上の実施形態では、本方法は、GPUが、焦点の面積の外側のレンダリングされた仮想画像を第1のDBに送信するステップと、GPUが、焦点の面積の内側のレンダリングされた仮想画像を第2のDBに送信するステップと、第1および/または第2のDBが、焦点の面積の外側および内側のレンダリングされた仮想画像をマージし、画像データのフレームを生成するステップとを含む。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、FOV内のユーザの手を検出するステップを含む。本方法はまた、GPUが、ユーザの手の場所に対応する、マスクを生成するステップを含む。本方法はさらに、GPUが、マスクおよび画像データのフレームをDBに送信するステップを含む。さらに、本方法は、DBが、マスクを使用して、画像データのフレームを修正するステップを含む。
1つ以上の実施形態では、マスクは、深度マスクである。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、第1のカラーフィールド画像データをDBに、第2のカラーフィールド画像データをDBに、および第3のカラーフィールド画像データをDBに送信するステップを含む。本方法はまた、GPUが、第1の姿勢データをDBに送信するステップと、DBが、第1の姿勢データを使用して、第1のカラーフィールド画像データをワーピングさせ、ワーピングされた第1のカラーフィールド画像データを生成するステップとを含む。本方法はさらに、GPUが、第1の姿勢データを送信後、第2の姿勢データをDBに送信するステップと、DBが、第2の姿勢データを使用して、第2のカラーフィールド画像データをワーピングさせ、ワーピングされた第2のカラーフィールド画像データを生成するステップとを含む。さらに、本方法は、GPUが、第2の姿勢データを送信後、第3の姿勢データをDBに送信するステップと、DBが、第3の姿勢データを使用して、第3のカラーフィールド画像データをワーピングさせ、ワーピングされた第3のカラーフィールド画像データを生成するステップとを含む。
1つ以上の実施形態では、本方法は、GPUが、パケット姿勢データをDBに送信するステップを含み、DBが、第1の姿勢データを使用して、第1のカラーフィールド画像データをワーピングさせるステップは、DBが、第1の姿勢デルタをパケット姿勢および第1の姿勢データから計算するステップを含む。本方法はさらに、DBが、DBがワーピングされた第1のカラーフィールド画像データを生成直後、ワーピングされた第1のカラーフィールド画像データに対応する、第1のカラーフィールド画像の表示を命令するステップを含んでもよい。本方法はまた、DBが、ある機能を第1、第2、および第3のカラーフィールド画像データ上で実施するステップを含んでもよく、機能は、プロジェクタライトフィールド歪曲補償、ピクセル化された調光、オクルージョン、色収差補正、フレームレート、および拡張から成る群から選択される。
1つ以上の実施形態では、本方法は、GPUが、第3の姿勢データを送信後、第4の姿勢データをDBに送信するステップを含む。本方法はまた、DBが第4の姿勢データを使用して、第1のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第1のカラーフィールド画像データを生成するステップを含む。本方法はさらに、GPUが、第4の姿勢データを送信後、第5の姿勢データをDBに送信するステップを含む。さらに、本方法は、DBが、第5の姿勢データを使用して、第2のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第2のカラーフィールド画像データを生成するステップを含む。加えて、本方法は、GPUが、第5の姿勢データを送信後、第6の姿勢データをDBに送信するステップを含む。本方法はまた、DBが、第6の姿勢データを使用して、第3のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第3のカラーフィールド画像データを生成するステップを含む。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、画像データのフレームを取得するステップを含む。本方法はまた、GPUが、画像データのフレームのあるセクションを識別するステップを含む。本方法はさらに、直接メモリアクセスコントローラが、画像データのさらなる処理を伴わずに、画像データのフレームの識別されたセクションをDBに送信するステップを含む。
1つ以上の実施形態では、画像データのフレームのセクションは、非黒色画像データの行である。本方法はまた、GPUの一部/コンポーネント/機能、DMAの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、および/またはディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップを含んでもよい。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、第1のフィールドを、第1の部分的な第1のフィールド、第2の部分的な第1のフィールド、および第3の部分的な第1のフィールドに分割するステップを含む。本方法はまた、GPUが、第2のフィールドを、第1の部分的な第2のフィールド、第2の部分的な第2のフィールド、および第3の部分的な第2のフィールドに分割するステップを含む。本方法はさらに、GPUが、第3のフィールドを、第1の部分的な第3のフィールド、第2の部分的な第3のフィールド、および第3の部分的な第3のフィールドに分割するステップを含む。さらに、本方法は、GPUが、第1の部分的な第1のフィールドをDBに送信するステップを含む。加えて、本方法は、GPUが、第1の部分的な第1のフィールドを送信後、第1の部分的な第2のフィールドをDBに送信するステップを含む。本方法はまた、GPUが、第1の部分的な第2のフィールドを送信後、第1の部分的な第3のフィールドをDBに送信するステップを含む。本方法はさらに、GPUが、第1の部分的な第3のフィールドを送信後、第2の部分的な第1のフィールドをDBに送信するステップを含む。さらに、本方法は、GPUが、第2の部分的な第1のフィールドを送信後、第2の部分的な第2のフィールドをDBに送信するステップを含む。加えて、本方法は、GPUが、第2の部分的な第2のフィールドを送信後、第2の部分的な第3のフィールドをDBに送信するステップを含む。本方法はまた、GPUが、第2の部分的な第3のフィールドを送信後、第3の部分的な第1のフィールドをDBに送信するステップを含む。本方法はさらに、GPUが、第3の部分的な第1のフィールドを送信後、第3の部分的な第2のフィールドをDBに送信するステップを含む。さらに、本方法は、GPUが、第3の部分的な第2のフィールドを送信後、第3の部分的な第3のフィールドをDBに送信するステップを含む。
1つ以上の実施形態では、本方法は、GPUが、第1の姿勢データをDBに送信するステップと、DBが、第1の姿勢データを使用して、第1の部分的な第1のフィールドをワーピングさせるステップとを含む。本方法はまた、第1の姿勢データを送信後、第2の姿勢データをDBに送信するステップと、DBが、第2の姿勢データを使用して、第1の部分的な第2のフィールドをワーピングさせるステップを含む。本方法はさらに、第2の姿勢データを送信後、第3の姿勢データをDBに送信するステップと、DBが、第3の姿勢データを使用して、第1の部分的な第3のフィールドをワーピングさせるステップとを含む。さらに、本方法は、第3の姿勢データを送信後、第4の姿勢データをDBに送信するステップと、DBが、第4の姿勢データを使用して、第2の部分的な第1のフィールドをワーピングさせるステップとを含む。加えて、本方法は、第4の姿勢データを送信後、第5の姿勢データをDBに送信するステップと、DBが、第5の姿勢データを使用して、第2の部分的な第2のフィールドをワーピングさせるステップとを含む。本方法はまた、第5の姿勢データを送信後、第6の姿勢データをDBに送信するステップと、DBが、第6の姿勢データを使用して、第2の部分的な第3のフィールドをワーピングさせるステップとを含む。本方法はさらに、第6の姿勢データを送信後、第7の姿勢データをDBに送信するステップと、DBが、第7の姿勢データを使用して、第3の部分的な第1のフィールドをワーピングさせるステップとを含む。さらに、本方法は、第7の姿勢データを送信後、第8の姿勢データをDBに送信するステップと、DBが、第8の姿勢データを使用して、第3の部分的な第2のフィールドをワーピングさせるステップとを含む。加えて、本方法は、第8の姿勢データを送信後、第9の姿勢データをDBに送信するステップと、DBが、第9の姿勢データを使用して、第3の部分的な第3のフィールドをワーピングさせるステップとを含む。
さらに別の実施形態では、仮想、拡張、または複合現実システムにおける方法は、GPUが、画像データのフレームを取得するステップを含む。本方法はまた、GPUが、視野内のオクルージョンに関連する、オクルージョンデータを取得するステップであって、データは、深度マップデータを含む、ステップを含む。本方法はさらに、GPUが、画像データのフレームおよびオクルージョンデータをDBに送信するステップを含む。さらに、本方法は、DBが、オクルージョンデータを使用した表示の前に、画像データのフレームをマスクするステップを含む。
本発明は、例えば、以下を提供する。
(項目1)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データの不在を決定/検出することと、
前記GPUの一部/コンポーネント/機能をシャットダウンすることと、
前記GPUとDBとの間の通信リンクをシャットダウンすることと、
前記DBの一部/コンポーネント/機能をシャットダウンすることと、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすることと、
前記ディスプレイパネルの一部/コンポーネント/機能をシャットダウンすることと
を含む、方法。
(項目2)
フレームデータを再編成し、転送時間を低減させることをさらに含む、項目1に記載の方法。
(項目3)
前記GPU DPポートが、カスタムSTPメッセージを前記DBに送信することをさらに含む、項目1に記載の方法。
(項目4)
前記GPUが、前記STPメッセージを前記DB AUXメッセージに送信することをさらに含む、項目3に記載の方法。
(項目5)
前記GPUの一部/コンポーネント/機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択される、項目1に記載の方法。
(項目6)
前記DBの一部/コンポーネント/機能は、メモリ書込である、項目1に記載の方法。(項目7)
前記ディスプレイパネルの一部/コンポーネント/機能は、ビデオRAMおよびMIPI受信機から成る群から選択される、項目1に記載の方法。
(項目8)
前記GPUが、ウェイクアップ信号を前記DBに送信することをさらに含む、項目1に記載の方法。
(項目9)
前記GPUは、AUX通信リンクを介して、前記ウェイクアップ信号を送信する、項目8に記載の方法。
(項目10)
前記GPUが、ウェイクアップ信号を前記GPUとDBとの間の通信リンクに送信することをさらに含む、項目1に記載の方法。
(項目11)
前記GPUの一部/コンポーネント/機能、前記GPUとDBとの間の通信リンク、前記DBの一部/コンポーネント/機能、前記DBとディスプレイパネルとの間の通信リンク、前記ディスプレイパネルの一部/コンポーネント/機能は、非同期して、シャットダウンされる、項目1に記載の方法。
(項目12)
前記DBが、内蔵ライン制御メッセージを前記ディスプレイパネルに送信することをさらに含む、項目1に記載の方法。
(項目13)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールドおよび第2の部分的な第1のカラーフィールドに分割することと、
前記GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールドおよび第2の部分的な第2のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドを送信後、前記第1の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のカラーフィールドを送信後、前記第2の部分的な第2のカラーフィールドを前記DBに送信することと
を含む、方法。
(項目14)
前記GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールドおよび第2の部分的な第3のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、かつ前記第2の部分的な第1のカラーフィールドを送信前に、前記第1の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第3のカラーフィールドを前記DBに送信することと
をさらに含む、項目13に記載の方法。
(項目15)
前記GPUが、前記第1の部分的な第1および第2のカラーフィールドおよび前記第2の部分的な第1および第2のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして、送信することをさらに含む、項目13に記載の方法。
(項目16)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールド、第2の部分的な第1のカラーフィールド、および第3の部分的な第1のカラーフィールドに分割することと、
前記GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールド、第2の部分的な第2のカラーフィールド、および第3の部分的な第2のカラーフィールドに分割することと、
前記GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールド、第2の部分的な第3のカラーフィールド、および第3の部分的な第3のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドを送信後、前記第1の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、前記第1の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第3のカラーフィールドを送信後、前記第2の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のカラーフィールドを送信後、前記第2の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第3のカラーフィールドを送信後、前記第3の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第1のカラーフィールドを送信後、前記第3の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第2のカラーフィールドを送信後、前記第3の部分的な第3のカラーフィールドを前記DBに送信することと
を含む、方法。
(項目17)
前記GPUが、前記第1の部分的な第1、第2、および第3のカラーフィールド、前記第2の部分的な第1、第2、および第3のカラーフィールド、および前記第3の部分的な第1、第2、および第3のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして送信することをさらに含む、項目16に記載の方法。
(項目18)
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信す
ることと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のカラーフィールドをワーピングさせることと、
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のカラーフィールドをワーピングさせることと、
前記GPUが、前記第6の姿勢データを送信後、第7の姿勢データを前記DBに送信することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第7の姿勢データを送信後、第8の姿勢データを前記DBに送信することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第8の姿勢データを送信後、第9の姿勢データを前記DBに送信することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のカラーフィールドをワーピングさせることと
をさらに含む、項目16に記載の方法。
(項目19)
前記方法は、更新されたワーピングを用いて、ゼロ待ち時間の出現を伴って、フレームレート拡張を実施する、項目18に記載の方法。
(項目20)
前記第1から第9の姿勢データのうちの少なくとも1つを調節し、持続ワーピングを実施することをさらに含む、項目18に記載の方法。
(項目21)
前記DBが、第1の姿勢データを計算することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第1の姿勢データを計算後、第2の姿勢データを計算することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第2の姿勢データを計算後、第3の姿勢データを計算することと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のカラーフィールドをワーピングさせることと、
前記DBが、前記第3の姿勢データを計算後、第4の姿勢データを計算することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第4の姿勢データを計算後、第5の姿勢データを計算することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第5の姿勢データを計算後、第6の姿勢データを計算することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のカラーフィールドをワーピングさせることと、
前記DBが、前記第6の姿勢データを計算後、第7の姿勢データを計算することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第7の姿勢データを計算後、第8の姿勢データを計算することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第8の姿勢データを計算後、第9の姿勢データを計算することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のカラーフィールドをワーピングさせることと
をさらに含む、項目16に記載の方法。
(項目22)
前記GPUは、AUX通信リンクを通して、前記第1、第2、第3、第4、第5、第6、第7、第8、および第9の姿勢データのうちの少なくとも1つを前記DBに送信する、項目18に記載の方法。
(項目23)
前記DBは、前記第1の部分的な第1のカラーフィールド、前記第2の部分的な第1のカラーフィールド、前記第3の部分的な第1のカラーフィールド、前記第1の部分的な第2のカラーフィールド、前記第2の部分的な第2のカラーフィールド、前記第3の部分的な第2のカラーフィールド、前記第1の部分的な第3のカラーフィールド、前記第2の部分的な第3のカラーフィールド、前記第3の部分的な第3のカラーフィールドのそれぞれを、2回ワーピングさせる、項目18に記載の方法。
(項目24)
仮想、拡張、または複合現実システムにおいて使用するためのデータフォーマットであって、
第1のシグナリング行と、
複数の第1のカラーフィールド行と、
第2のシグナリング行と、
複数の第2のカラーフィールド行と、
第3のシグナリング行と、
複数の第3のカラーフィールド行と
を備える、データフォーマット。
(項目25)
前記第1のシグナリング行は、前記複数の第1のカラーフィールド行のためのある数のアクティブ行を含む、項目24に記載のデータフォーマット。
(項目26)
前記アクティブ行は、画像フレーム間で変化する、項目24に記載のデータフォーマット。
(項目27)
前記第1、第2、および第3のシグナリング行および前記複数の第1、第2、および第3のカラーフィールド行は、前記複数の第1、第2、および第3のカラーフィールド行に対応する画像が表示されるより高速のレートで読み取られる、項目24に記載のデータフォーマット。
(項目28)
前記第2のシグナリング行は、前記複数の第2のカラーフィールド行のためのある数のアクティブ行を含む、項目24に記載のデータフォーマット。
(項目29)
前記第3のシグナリング行は、前記複数の第3のカラーフィールド行のためのある数の
アクティブ行を含む、項目24に記載のデータフォーマット。
(項目30)
前記第1のシグナリング行は、前記複数の第1のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目31)
前記第2のシグナリング行は、前記複数の第2のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目32)
前記第3のシグナリング行は、前記複数の第3のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目33)
前記第1、第2、および第3のカラーフィールド行は、色情報を伴わずに、強度情報を含む、項目24に記載のデータフォーマット。
(項目34)
前記第1、第2、および第3のシグナリング行は、強度情報を伴わずに、色情報を含む、項目33に記載のデータフォーマット。
(項目35)
仮想、拡張、または複合現実システムにおける方法であって、
ユーザの焦点の面積を検出することと、
GPUが、前記焦点の面積の外側の仮想画像をより低い分解能でレンダリングすることと、
前記GPUが、前記焦点の面積の内側の仮想画像をより高い分解能でレンダリングすることと、
前記GPUが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像を1つ以上のDBに送信することと、
前記1つ以上のDBが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像をマージし、画像データのフレームを生成することと
を含む、方法。
(項目36)
前記GPUが、前記焦点の面積の外側の前記レンダリングされた仮想画像を第1のDBに送信することと、
前記GPUが、前記焦点の面積の内側の前記レンダリングされた仮想画像を第2のDBに送信することと、
前記第1および/または第2のDBが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像をマージし、画像データのフレームを生成することと
をさらに含む、項目35に記載の方法。
(項目37)
仮想、拡張、または複合現実システムにおける方法であって、
FOV内のユーザの手を検出することと、
GPUが、前記ユーザの手の場所に対応するマスクを生成することと、
前記GPUが、前記マスクおよび画像データのフレームをDBに送信することと、
前記DBが、前記マスクを使用して、前記画像データのフレームを修正することと
を含む、方法。
(項目38)
前記マスクは、深度マスクである、項目37に記載の方法。
(項目39)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールド画像データをDBに送信することと、
前記GPUが、第2のカラーフィールド画像データを前記DBに送信することと、
前記GPUが、第3のカラーフィールド画像データを前記DBに送信することと、
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせ、ワーピングされた第1のカラーフィールド画像データを生成することと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第2のカラーフィールド画像データをワーピングさせ、ワーピングされた第2のカラーフィールド画像データを生成することと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信することと、
前記DBが、前記第3の姿勢データを使用して、前記第3のカラーフィールド画像データをワーピングさせ、ワーピングされた第3のカラーフィールド画像データを生成することと
を含む、方法。
(項目40)
前記DBが、機能を前記第1、第2、および第3のカラーフィールド画像データ上で実施することをさらに含み、前記機能は、プロジェクタライトフィールド歪曲補償、ピクセル化された調光、オクルージョン、色収差補正、フレームレート、および拡張から成る群から選択される、項目39に記載の方法。
(項目41)
前記GPUが、パケット姿勢データを前記DBに送信することをさらに含み、
前記DBが、前記第1の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせることは、前記DBが、第1の姿勢デルタを前記パケット姿勢および前記第1の姿勢データから計算することを含む、項目39に記載の方法。
(項目42)
前記DBが、前記DBが前記ワーピングされた第1のカラーフィールド画像データを生成直後、前記ワーピングされた第1のカラーフィールド画像データに対応する、第1のカラーフィールド画像の表示を命令することをさらに含む、項目39に記載の方法。
(項目43)
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが前記第4の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第1のカラーフィールド画像データを生成することと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第2のカラーフィールド画像データを生成することと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第3のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第3のカラーフィールド画像データを生成することと
をさらに含む、項目39に記載の方法。
(項目44)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを取得することと、
前記GPUが、前記画像データのフレームのセクションを識別することと、
直接メモリアクセスコントローラが、前記画像データのさらなる処理を伴わずに、前記画像データのフレームの識別されたセクションをDBに送信することと
を含む、方法。
(項目45)
前記画像データのフレームのセクションは、非黒色画像データの行である、項目44に記載の方法。
(項目46)
前記GPUの一部/コンポーネント/機能をシャットダウンすること、
前記DMAの一部/コンポーネント/機能をシャットダウンすること、
前記GPUとDBとの間の通信リンクをシャットダウンすること、
前記DBの一部/コンポーネント/機能をシャットダウンすること、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすること、および/または
前記ディスプレイパネルの一部/コンポーネント/機能をシャットダウンすること
をさらに含む、項目44に記載の方法。
(項目47)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のフィールドを、第1の部分的な第1のフィールド、第2の部分的な第1のフィールド、および第3の部分的な第1のフィールドに分割することと、
前記GPUが、第2のフィールドを、第1の部分的な第2のフィールド、第2の部分的な第2のフィールド、および第3の部分的な第2のフィールドに分割することと、
前記GPUが、第3のフィールドを、第1の部分的な第3のフィールド、第2の部分的な第3のフィールド、および第3の部分的な第3のフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のフィールドを送信後、前記第1の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のフィールドを送信後、前記第1の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第3のフィールドを送信後、前記第2の部分的な第1のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のフィールドを送信後、前記第2の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のフィールドを送信後、前記第2の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第3のフィールドを送信後、前記第3の部分的な第1のフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第1のフィールドを送信後、前記第3の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第2のフィールドを送信後、前記第3の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信することと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のフィールド
をワーピングさせることと、
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のフィールドをワーピングさせることと、
前記GPUが、前記第6の姿勢データを送信後、第7の姿勢データを前記DBに送信することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第7の姿勢データを送信後、第8の姿勢データを前記DBに送信することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第8の姿勢データを送信後、第9の姿勢データを前記DBに送信することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のフィールドをワーピングさせることと
を含む、方法。
(項目48)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを取得することと、
前記GPUが、視野内のオクルージョンに関連するオクルージョンデータを取得することであって、前記データは、深度マップデータを含む、ことと、
前記GPUが、前記画像データのフレームおよび前記オクルージョンデータをDBに送信することと、
前記DBが、前記オクルージョンデータを使用した表示の前に、前記画像データのフレームをマスクすることと
を含む、方法。
本発明は、例えば、以下を提供する。
(項目1)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データの不在を決定/検出することと、
前記GPUの一部/コンポーネント/機能をシャットダウンすることと、
前記GPUとDBとの間の通信リンクをシャットダウンすることと、
前記DBの一部/コンポーネント/機能をシャットダウンすることと、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすることと、
前記ディスプレイパネルの一部/コンポーネント/機能をシャットダウンすることと
を含む、方法。
(項目2)
フレームデータを再編成し、転送時間を低減させることをさらに含む、項目1に記載の方法。
(項目3)
前記GPU DPポートが、カスタムSTPメッセージを前記DBに送信することをさらに含む、項目1に記載の方法。
(項目4)
前記GPUが、前記STPメッセージを前記DB AUXメッセージに送信することをさらに含む、項目3に記載の方法。
(項目5)
前記GPUの一部/コンポーネント/機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択される、項目1に記載の方法。
(項目6)
前記DBの一部/コンポーネント/機能は、メモリ書込である、項目1に記載の方法。(項目7)
前記ディスプレイパネルの一部/コンポーネント/機能は、ビデオRAMおよびMIPI受信機から成る群から選択される、項目1に記載の方法。
(項目8)
前記GPUが、ウェイクアップ信号を前記DBに送信することをさらに含む、項目1に記載の方法。
(項目9)
前記GPUは、AUX通信リンクを介して、前記ウェイクアップ信号を送信する、項目8に記載の方法。
(項目10)
前記GPUが、ウェイクアップ信号を前記GPUとDBとの間の通信リンクに送信することをさらに含む、項目1に記載の方法。
(項目11)
前記GPUの一部/コンポーネント/機能、前記GPUとDBとの間の通信リンク、前記DBの一部/コンポーネント/機能、前記DBとディスプレイパネルとの間の通信リンク、前記ディスプレイパネルの一部/コンポーネント/機能は、非同期して、シャットダウンされる、項目1に記載の方法。
(項目12)
前記DBが、内蔵ライン制御メッセージを前記ディスプレイパネルに送信することをさらに含む、項目1に記載の方法。
(項目13)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールドおよび第2の部分的な第1のカラーフィールドに分割することと、
前記GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールドおよび第2の部分的な第2のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドを送信後、前記第1の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のカラーフィールドを送信後、前記第2の部分的な第2のカラーフィールドを前記DBに送信することと
を含む、方法。
(項目14)
前記GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールドおよび第2の部分的な第3のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、かつ前記第2の部分的な第1のカラーフィールドを送信前に、前記第1の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第3のカラーフィールドを前記DBに送信することと
をさらに含む、項目13に記載の方法。
(項目15)
前記GPUが、前記第1の部分的な第1および第2のカラーフィールドおよび前記第2の部分的な第1および第2のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして、送信することをさらに含む、項目13に記載の方法。
(項目16)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールドを、第1の部分的な第1のカラーフィールド、第2の部分的な第1のカラーフィールド、および第3の部分的な第1のカラーフィールドに分割することと、
前記GPUが、第2のカラーフィールドを、第1の部分的な第2のカラーフィールド、第2の部分的な第2のカラーフィールド、および第3の部分的な第2のカラーフィールドに分割することと、
前記GPUが、第3のカラーフィールドを、第1の部分的な第3のカラーフィールド、第2の部分的な第3のカラーフィールド、および第3の部分的な第3のカラーフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のカラーフィールドを送信後、前記第1の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のカラーフィールドを送信後、前記第1の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第3のカラーフィールドを送信後、前記第2の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のカラーフィールドを送信後、前記第2の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のカラーフィールドを送信後、前記第2の部分的な第3のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第3のカラーフィールドを送信後、前記第3の部分的な第1のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第1のカラーフィールドを送信後、前記第3の部分的な第2のカラーフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第2のカラーフィールドを送信後、前記第3の部分的な第3のカラーフィールドを前記DBに送信することと
を含む、方法。
(項目17)
前記GPUが、前記第1の部分的な第1、第2、および第3のカラーフィールド、前記第2の部分的な第1、第2、および第3のカラーフィールド、および前記第3の部分的な第1、第2、および第3のカラーフィールドを、単一の垂直にエンコーディングされたデータセットとして送信することをさらに含む、項目16に記載の方法。
(項目18)
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信す
ることと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のカラーフィールドをワーピングさせることと、
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のカラーフィールドをワーピングさせることと、
前記GPUが、前記第6の姿勢データを送信後、第7の姿勢データを前記DBに送信することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のカラーフィールドをワーピングさせることと、
前記GPUが、前記第7の姿勢データを送信後、第8の姿勢データを前記DBに送信することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のカラーフィールドをワーピングさせることと、
前記GPUが、前記第8の姿勢データを送信後、第9の姿勢データを前記DBに送信することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のカラーフィールドをワーピングさせることと
をさらに含む、項目16に記載の方法。
(項目19)
前記方法は、更新されたワーピングを用いて、ゼロ待ち時間の出現を伴って、フレームレート拡張を実施する、項目18に記載の方法。
(項目20)
前記第1から第9の姿勢データのうちの少なくとも1つを調節し、持続ワーピングを実施することをさらに含む、項目18に記載の方法。
(項目21)
前記DBが、第1の姿勢データを計算することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第1の姿勢データを計算後、第2の姿勢データを計算することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第2の姿勢データを計算後、第3の姿勢データを計算することと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のカラーフィールドをワーピングさせることと、
前記DBが、前記第3の姿勢データを計算後、第4の姿勢データを計算することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第4の姿勢データを計算後、第5の姿勢データを計算することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第5の姿勢データを計算後、第6の姿勢データを計算することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のカラーフィールドをワーピングさせることと、
前記DBが、前記第6の姿勢データを計算後、第7の姿勢データを計算することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のカラーフィールドをワーピングさせることと、
前記DBが、前記第7の姿勢データを計算後、第8の姿勢データを計算することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のカラーフィールドをワーピングさせることと、
前記DBが、前記第8の姿勢データを計算後、第9の姿勢データを計算することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のカラーフィールドをワーピングさせることと
をさらに含む、項目16に記載の方法。
(項目22)
前記GPUは、AUX通信リンクを通して、前記第1、第2、第3、第4、第5、第6、第7、第8、および第9の姿勢データのうちの少なくとも1つを前記DBに送信する、項目18に記載の方法。
(項目23)
前記DBは、前記第1の部分的な第1のカラーフィールド、前記第2の部分的な第1のカラーフィールド、前記第3の部分的な第1のカラーフィールド、前記第1の部分的な第2のカラーフィールド、前記第2の部分的な第2のカラーフィールド、前記第3の部分的な第2のカラーフィールド、前記第1の部分的な第3のカラーフィールド、前記第2の部分的な第3のカラーフィールド、前記第3の部分的な第3のカラーフィールドのそれぞれを、2回ワーピングさせる、項目18に記載の方法。
(項目24)
仮想、拡張、または複合現実システムにおいて使用するためのデータフォーマットであって、
第1のシグナリング行と、
複数の第1のカラーフィールド行と、
第2のシグナリング行と、
複数の第2のカラーフィールド行と、
第3のシグナリング行と、
複数の第3のカラーフィールド行と
を備える、データフォーマット。
(項目25)
前記第1のシグナリング行は、前記複数の第1のカラーフィールド行のためのある数のアクティブ行を含む、項目24に記載のデータフォーマット。
(項目26)
前記アクティブ行は、画像フレーム間で変化する、項目24に記載のデータフォーマット。
(項目27)
前記第1、第2、および第3のシグナリング行および前記複数の第1、第2、および第3のカラーフィールド行は、前記複数の第1、第2、および第3のカラーフィールド行に対応する画像が表示されるより高速のレートで読み取られる、項目24に記載のデータフォーマット。
(項目28)
前記第2のシグナリング行は、前記複数の第2のカラーフィールド行のためのある数のアクティブ行を含む、項目24に記載のデータフォーマット。
(項目29)
前記第3のシグナリング行は、前記複数の第3のカラーフィールド行のためのある数の
アクティブ行を含む、項目24に記載のデータフォーマット。
(項目30)
前記第1のシグナリング行は、前記複数の第1のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目31)
前記第2のシグナリング行は、前記複数の第2のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目32)
前記第3のシグナリング行は、前記複数の第3のカラーフィールド行の開始位置を含む、項目24に記載のデータフォーマット。
(項目33)
前記第1、第2、および第3のカラーフィールド行は、色情報を伴わずに、強度情報を含む、項目24に記載のデータフォーマット。
(項目34)
前記第1、第2、および第3のシグナリング行は、強度情報を伴わずに、色情報を含む、項目33に記載のデータフォーマット。
(項目35)
仮想、拡張、または複合現実システムにおける方法であって、
ユーザの焦点の面積を検出することと、
GPUが、前記焦点の面積の外側の仮想画像をより低い分解能でレンダリングすることと、
前記GPUが、前記焦点の面積の内側の仮想画像をより高い分解能でレンダリングすることと、
前記GPUが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像を1つ以上のDBに送信することと、
前記1つ以上のDBが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像をマージし、画像データのフレームを生成することと
を含む、方法。
(項目36)
前記GPUが、前記焦点の面積の外側の前記レンダリングされた仮想画像を第1のDBに送信することと、
前記GPUが、前記焦点の面積の内側の前記レンダリングされた仮想画像を第2のDBに送信することと、
前記第1および/または第2のDBが、前記焦点の面積の外側および内側の前記レンダリングされた仮想画像をマージし、画像データのフレームを生成することと
をさらに含む、項目35に記載の方法。
(項目37)
仮想、拡張、または複合現実システムにおける方法であって、
FOV内のユーザの手を検出することと、
GPUが、前記ユーザの手の場所に対応するマスクを生成することと、
前記GPUが、前記マスクおよび画像データのフレームをDBに送信することと、
前記DBが、前記マスクを使用して、前記画像データのフレームを修正することと
を含む、方法。
(項目38)
前記マスクは、深度マスクである、項目37に記載の方法。
(項目39)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のカラーフィールド画像データをDBに送信することと、
前記GPUが、第2のカラーフィールド画像データを前記DBに送信することと、
前記GPUが、第3のカラーフィールド画像データを前記DBに送信することと、
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせ、ワーピングされた第1のカラーフィールド画像データを生成することと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第2のカラーフィールド画像データをワーピングさせ、ワーピングされた第2のカラーフィールド画像データを生成することと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信することと、
前記DBが、前記第3の姿勢データを使用して、前記第3のカラーフィールド画像データをワーピングさせ、ワーピングされた第3のカラーフィールド画像データを生成することと
を含む、方法。
(項目40)
前記DBが、機能を前記第1、第2、および第3のカラーフィールド画像データ上で実施することをさらに含み、前記機能は、プロジェクタライトフィールド歪曲補償、ピクセル化された調光、オクルージョン、色収差補正、フレームレート、および拡張から成る群から選択される、項目39に記載の方法。
(項目41)
前記GPUが、パケット姿勢データを前記DBに送信することをさらに含み、
前記DBが、前記第1の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせることは、前記DBが、第1の姿勢デルタを前記パケット姿勢および前記第1の姿勢データから計算することを含む、項目39に記載の方法。
(項目42)
前記DBが、前記DBが前記ワーピングされた第1のカラーフィールド画像データを生成直後、前記ワーピングされた第1のカラーフィールド画像データに対応する、第1のカラーフィールド画像の表示を命令することをさらに含む、項目39に記載の方法。
(項目43)
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが前記第4の姿勢データを使用して、前記第1のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第1のカラーフィールド画像データを生成することと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第2のカラーフィールド画像データを生成することと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第3のカラーフィールド画像データをワーピングさせ、第2のワーピングされた第3のカラーフィールド画像データを生成することと
をさらに含む、項目39に記載の方法。
(項目44)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを取得することと、
前記GPUが、前記画像データのフレームのセクションを識別することと、
直接メモリアクセスコントローラが、前記画像データのさらなる処理を伴わずに、前記画像データのフレームの識別されたセクションをDBに送信することと
を含む、方法。
(項目45)
前記画像データのフレームのセクションは、非黒色画像データの行である、項目44に記載の方法。
(項目46)
前記GPUの一部/コンポーネント/機能をシャットダウンすること、
前記DMAの一部/コンポーネント/機能をシャットダウンすること、
前記GPUとDBとの間の通信リンクをシャットダウンすること、
前記DBの一部/コンポーネント/機能をシャットダウンすること、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすること、および/または
前記ディスプレイパネルの一部/コンポーネント/機能をシャットダウンすること
をさらに含む、項目44に記載の方法。
(項目47)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、第1のフィールドを、第1の部分的な第1のフィールド、第2の部分的な第1のフィールド、および第3の部分的な第1のフィールドに分割することと、
前記GPUが、第2のフィールドを、第1の部分的な第2のフィールド、第2の部分的な第2のフィールド、および第3の部分的な第2のフィールドに分割することと、
前記GPUが、第3のフィールドを、第1の部分的な第3のフィールド、第2の部分的な第3のフィールド、および第3の部分的な第3のフィールドに分割することと、
前記GPUが、前記第1の部分的な第1のフィールドをDBに送信することと、
前記GPUが、前記第1の部分的な第1のフィールドを送信後、前記第1の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第2のフィールドを送信後、前記第1の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、前記第1の部分的な第3のフィールドを送信後、前記第2の部分的な第1のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第1のフィールドを送信後、前記第2の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第2のフィールドを送信後、前記第2の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、前記第2の部分的な第3のフィールドを送信後、前記第3の部分的な第1のフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第1のフィールドを送信後、前記第3の部分的な第2のフィールドを前記DBに送信することと、
前記GPUが、前記第3の部分的な第2のフィールドを送信後、前記第3の部分的な第3のフィールドを前記DBに送信することと、
前記GPUが、第1の姿勢データを前記DBに送信することと、
前記DBが、前記第1の姿勢データを使用して、前記第1の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第1の姿勢データを送信後、第2の姿勢データを前記DBに送信することと、
前記DBが、前記第2の姿勢データを使用して、前記第1の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第2の姿勢データを送信後、第3の姿勢データを前記DBに送信することと、
前記DBが、前記第3の姿勢データを使用して、前記第1の部分的な第3のフィールド
をワーピングさせることと、
前記GPUが、前記第3の姿勢データを送信後、第4の姿勢データを前記DBに送信することと、
前記DBが、前記第4の姿勢データを使用して、前記第2の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第4の姿勢データを送信後、第5の姿勢データを前記DBに送信することと、
前記DBが、前記第5の姿勢データを使用して、前記第2の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第5の姿勢データを送信後、第6の姿勢データを前記DBに送信することと、
前記DBが、前記第6の姿勢データを使用して、前記第2の部分的な第3のフィールドをワーピングさせることと、
前記GPUが、前記第6の姿勢データを送信後、第7の姿勢データを前記DBに送信することと、
前記DBが、前記第7の姿勢データを使用して、前記第3の部分的な第1のフィールドをワーピングさせることと、
前記GPUが、前記第7の姿勢データを送信後、第8の姿勢データを前記DBに送信することと、
前記DBが、前記第8の姿勢データを使用して、前記第3の部分的な第2のフィールドをワーピングさせることと、
前記GPUが、前記第8の姿勢データを送信後、第9の姿勢データを前記DBに送信することと、
前記DBが、前記第9の姿勢データを使用して、前記第3の部分的な第3のフィールドをワーピングさせることと
を含む、方法。
(項目48)
仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを取得することと、
前記GPUが、視野内のオクルージョンに関連するオクルージョンデータを取得することであって、前記データは、深度マップデータを含む、ことと、
前記GPUが、前記画像データのフレームおよび前記オクルージョンデータをDBに送信することと、
前記DBが、前記オクルージョンデータを使用した表示の前に、前記画像データのフレームをマスクすることと
を含む、方法。
下記に説明される図面は、例証目的のためだけのものである。図面は、本開示の範囲を限定することを意図するものではない。図面は、本開示の種々の実施形態の設計および有用性を図示する。図は、正確な縮尺で描かれておらず、類似構造または機能の要素は、図全体を通して類似参照番号によって表されることに留意されたい。本開示の種々の実施形態の前述および他の利点および目的を得る方法をより深く理解するために、本開示のより詳細な説明が、付随の図面に図示されるその具体的実施形態を参照することによって与えられるであろう。これらの図面は、本開示の典型的実施形態のみを描写し、したがって、その範囲の限定として見なされないことを理解した上で、本開示は、付随の図面の使用を通して付加的具体性および詳細とともに記載および説明されるであろう。
本開示の種々の実施形態は、単一実施形態または複数の実施形態における、VR/AR/MRのためのシステム、方法、および製造品を対象とする。本開示の他の目的、特徴、および利点は、詳細な説明、図、および請求項に説明される。
ここで、種々の実施形態が、当業者が本開示を実践することを可能にするように、例証的実施例として提供される、図面を参照して詳細に説明されるであろう。留意すべきこととして、以下の図および実施例は、本開示の範囲を限定することを意味するものではない。本開示のある要素が、公知のコンポーネント(または方法またはプロセス)を使用して部分的または完全に実装され得る場合、本開示の理解のために必要なそのような公知のコンポーネント(または方法またはプロセス)のそれらの部分のみが、説明され、そのような公知のコンポーネント(または方法またはプロセス)の他の部分の詳細な説明は、本開示を曖昧にしないように、省略されるであろう。さらに、種々の実施形態は、例証として本明細書に参照されるコンポーネントの現在および将来的公知の均等物を包含する。
本開示による、実施形態は、多くの場合、既製のコンポーネントおよびカスタムコンポーネントの組み合わせに依拠する、VR/AR/MRシステムの実装の問題に対処する。ある場合には、既製のコンポーネントは、展開されるべきVR/AR/MRシステムのある所望の側面を実装するために必要とされる、特徴または性能特性の全てを保有していない。いくつかの実施形態は、展開されるべきVR/AR/MRシステムの所望の特徴または性能特性に適応させるために、能力を追加し、および/またはリソースを別の目的のために再利用するためのアプローチを対象とする。付随の図および本明細書の議論は、VR/AR/MRシステムのための例示的環境、システム、方法、およびコンピュータプログラム製品を提示する。
頭部搭載型視聴覚ディスプレイシステムおよび電力管理システムは、AR/MRシステムから独立して実装され得るが、下記のいくつかの実施形態は、例証目的のみのために、AR/MRシステムに関連して説明される。本明細書に説明される電力管理システムはまた、VRシステムでも類似様式で使用され得る。
(問題およびソリューションの概要)
(問題およびソリューションの概要)
VR/AR/MRシステムは、サイズおよび可搬性問題点、バッテリ寿命問題点、システム過熱問題点、処理電力、メモリ、帯域幅、データソース、コンポーネント待ち時間、およびVR/AR/MRシステム性能に悪影響を及ぼし得る、他のシステムおよび光学課題等の限界を有する。これらの限界は、電力効率的画像レンダリングの重要性を高める。
例えば、いくつかのウェアラブルでは、画像パイプライン内の種々のコンポーネント(例えば、GPU、ディスプレイブリッジ、ディスプレイパネル等)は、システムリソース(例えば、処理電力、メモリ、帯域幅、バッテリ寿命)の有意な部分を消費する。さらに、これらのシステムリソース需要は、サイズおよび可搬性問題点およびシステム過熱問題点につながり得る。さらに、コンポーネント待ち時間問題点もまた、VR/AR/MRシステム性能に影響を及ぼし得る。例えば、レンダリングされた画像データの最終ワーピングとワーピングされた画像データに対応する画像の表示との間のシステム待ち時間は、アーチファクトをもたらし得る。
種々の実施形態による、電力管理システムは、深度平面または深度平面内のカラーフィールドの非アクティブ化、時間ドメイン電力管理、離散結像モード、低電力深度平面切替、より低い電力の短待ち時間スタンバイ/ウェイクアップ、より低い電力側チャネル、複数のコンポーネント低電力モード、および光源および/またはSLMへの電力の低減等の特徴を含む。
本明細書に説明される実施形態は、種々のVR/AR/MRシステムと併用するための電力管理システムおよび方法を含む。これらの電力管理システムおよび方法は、画像パイプラインによって消費されるシステムリソースを低減させ、それによって、上記に説明される問題点の多くに対処する。本明細書に説明される実施形態はまた、種々のVR/AR/MRシステムと併用するための仮想画像ワーピングシステムおよび方法を含む。これらの仮想画像ワーピングシステムおよび方法は、上記に説明される問題点のうちのいくつかに対処する。
(例証的VR、AR、および/またはMRシステム)
(例証的VR、AR、および/またはMRシステム)
続く説明は、種々の電力管理システムの実施形態が実践され得る、例証的VR、AR、および/またはMRシステムに関する。しかしながら、実施形態はまた、他のタイプのディスプレイシステム(他のタイプのVR、AR、および/またはMRシステムを含む)における用途にも適しており、したがって、実施形態は、本明細書に開示される例証的システムのみに限定されないことを理解されたい。
本明細書に開示されるVR/AR/MRシステムは、コンピュータ生成画像(ビデオ/画像データ)をユーザに提示する、ディスプレイを含むことができる。いくつかの実施形態では、ディスプレイシステムは、装着可能であって、これは、有利なこととして、より没入型のVR/AR/MR体験を提供し得る。VR、AR、および/またはMR仮想画像システム100の種々のコンポーネントは、図2-5に描写される。仮想画像生成システム100は、エンドユーザ50によって装着される、フレーム構造102と、ディスプレイサブシステム110がエンドユーザ50の眼の正面に位置付けられるように、フレーム構造102によって担持される、ディスプレイサブシステム110と、スピーカ106がエンドユーザ50の外耳道に隣接して位置付けられる(随意に、別のスピーカ(図示せず)が、エンドユーザ50の他方の外耳道に隣接して位置付けられ、ステレオ/調節可能音制御を提供する)ように、フレーム構造102によって担持される、スピーカ106とを含む。ディスプレイサブシステム110は、エンドユーザ50の眼に、高レベルの画質および3次元知覚を伴い、かつ2次元コンテンツを提示することも可能である、物理的現実に対する拡張として快適に知覚され得る、光パターンを提示するように設計される。ディスプレイサブシステム110は、単一コヒーレント場面の知覚を提供する、フレームのシーケンスを、高周波数で提示する。
図示される実施形態では、ディスプレイサブシステム110は、「光学シースルー」ディスプレイを採用し、それを通してユーザは、透明(または半透明)要素を介して、直接、実オブジェクトからの光を視認することができる。透明要素は、多くの場合、「コンバイナ」と称され、ディスプレイからの光を実世界のユーザのビューにわたって重畳する。この目的を達成するために、ディスプレイサブシステム110は、部分的に透明なディスプレイを含む。いくつかの実施形態では、透明ディスプレイは、電子的に制御されてもよい。いくつかの実施形態では、透明ディスプレイは、セグメント化された調光を含み、透明ディスプレイの1つ以上の部分の透明度を制御してもよい。いくつかの実施形態では、透明ディスプレイは、大域的調光を含み、透明ディスプレイの全体の透明度を制御してもよい。ディスプレイは、周囲環境からの直接光が、ディスプレイを通して、エンドユーザ50の眼に透過されるように、エンドユーザ50の眼と周囲環境との間のエンドユーザ50の視野内に位置付けられる。
図示される実施形態では、画像投影アセンブリは、光を部分的に透明なディスプレイに提供し、それによって、周囲環境からの直接光と組み合わせられ、ディスプレイからユーザの眼50に透過される。投影サブシステムは、光ファイバ走査ベースの投影デバイスであってもよく、ディスプレイは、その中に投影サブシステムからの走査される光が、例えば、無限遠(例えば、腕の長さ)より近い単一光学視認距離における画像、複数の離散光学視認距離または焦点平面における画像、および/または立体3Dオブジェクトを表すために複数の視認距離または焦点平面にスタックされた画像層を生産するように投入される、導波管ベースのディスプレイであってもよい。ライトフィールド内のこれらの層は、ヒト副視覚系に持続的に現れるようにともに十分に近接してスタックされてもよい(すなわち、1つの層が隣接する層の乱信号円錐域内にある)。加えて、または代替として、ピクチャ要素が、2つ以上の層を横断して混成され、それらの層が、より疎らにスタックされる(すなわち、1つの層が隣接する層の乱信号円錐域の外側にある)場合でも、ライトフィールド内の層間の遷移の知覚される連続性を増加させてもよい。ディスプレイサブシステム110は、単眼または両眼用であってもよい。
仮想画像生成システム100はまた、エンドユーザ50の頭部54の位置および移動および/またはエンドユーザ50の眼位置および眼球間距離を検出するためにフレーム構造102に搭載される、1つ以上のセンサ(図示せず)を含んでもよい。そのようなセンサは、画像捕捉デバイス(カメラ等)、マイクロホン、慣性測定ユニット、加速度計、コンパス、GPSユニット、無線デバイス、および/またはジャイロスコープを含んでもよい。これらのセンサの多くは、その上にそれらが添着されるフレーム102が、ひいては、ユーザの頭部、眼、および耳に実質的に固定されるという仮定に基づいて動作する。
仮想画像生成システム100はまた、ユーザ配向検出モジュールを含んでもよい。ユーザ配向モジュールは、エンドユーザ50の頭部54の瞬間位置を検出し(例えば、フレーム102に結合されるセンサを介して)、センサから受信された位置データに基づいて、エンドユーザ50の頭部54の位置を予測してもよい。エンドユーザ50の頭部54の瞬間位置を検出することは、エンドユーザ50が見ている、具体的実際のオブジェクトの決定を促進し、それによって、その実際のオブジェクトに関連して生成されるべき具体的仮想オブジェクトのインジケーションを提供し、その中に仮想オブジェクトが表示されるべき位置のインジケーションをさらに提供する。ユーザ配向モジュールはまた、センサから受信された追跡データに基づいて、エンドユーザ50の眼を追跡してもよい。
仮想画像生成システム100はまた、多種多様な形態のいずれかをとり得る、制御サブシステムを含んでもよい。制御サブシステムは、いくつかのコントローラ、例えば、1つ以上のマイクロコントローラ、マイクロプロセッサまたは中央処理ユニット(CPU)、デジタル信号プロセッサ、グラフィック処理ユニット(GPU)、特定用途向け集積回路(ASIC)等の他の集積回路コントローラ、ディスプレイブリッジチップ、ディスプレイコントローラ、プログラマブルゲートアレイ(PGA)、例えば、フィールドPGA(FPGA)、および/またはプログラマブル論理コントローラ(PLU)を含む。
仮想画像生成システム100の制御サブシステムは、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、1つ以上のフレームバッファ、および3次元場面データを記憶するための3次元データベースを含んでもよい。CPUは、全体的動作を制御してもよい一方、GPUは、3次元データベース内に記憶される3次元データからフレームをレンダリングし(すなわち、3次元場面を2次元画像に変換し)、これらのフレームをフレームバッファ内に記憶してもよい。1つ以上の付加的集積回路は、フレームバッファの中へのフレームの読込およびそこからの読出およびディスプレイサブシステム110の画像投影アセンブリの動作を制御してもよい。
仮想画像生成システム100の種々の処理コンポーネントは、分散型サブシステム内に物理的に含有されてもよい。例えば、図2-5に図示されるように、仮想画像生成システム100は、有線導線または無線コネクティビティ136等によって、ローカルディスプレイブリッジ142、ディスプレイサブシステム110、およびセンサに動作可能に結合される、ローカル処理およびデータモジュール130を含んでもよい。ローカル処理およびデータモジュール130は、フレーム構造102(図2)に固定して取り付けられる、ヘルメットまたは帽子56(図3)に固定して取り付けられる、エンドユーザ50の胴体58に除去可能に取り付けられる(図4)、またはベルト結合式構成においてエンドユーザ50の腰部60に除去可能に取り付けられる(図5)等、種々の構成において搭載されてもよい。仮想画像生成システム100はまた、これらの遠隔モジュール132、134が、相互に動作可能に結合され、ローカル処理およびデータモジュール130およびローカルディスプレイブリッジ142へのリソースとして利用可能であるように、有線導線または無線コネクティビティ138、140等によって、ローカル処理およびデータモジュール130およびローカルディスプレイブリッジ142に動作可能に結合される、遠隔処理モジュール132および遠隔データリポジトリ134を含んでもよい。
ローカル処理およびデータモジュール130およびローカルディスプレイブリッジ142はそれぞれ、電力効率的プロセッサまたはコントローラおよびフラッシュメモリ等のデジタルメモリを含んでもよく、その両方とも、可能性として処理または読出後に、ディスプレイサブシステム110への通過のために、センサから捕捉された、および/または遠隔処理モジュール132および/または遠隔データリポジトリ134を使用して入手および/または処理された、データの処理、キャッシュ、および記憶を補助するために利用されてもよい。遠隔処理モジュール132は、データおよび/または画像情報を分析および処理するように構成される、1つ以上の比較的に強力なプロセッサまたはコントローラを含んでもよい。遠隔データリポジトリ134は、比較的に大規模デジタルデータ記憶設備を含んでもよく、これは、インターネットまたは「クラウド」リソース構成における他のネットワーキング構成を通して利用可能であってもよい。いくつかの実施形態では、全てのデータが、記憶され、全ての算出が、ローカル処理およびデータモジュール130およびローカルディスプレイブリッジ142において実施され、任意の遠隔モジュールからの完全に自律的な使用を可能にする。
上記に説明される種々のコンポーネント間の結合136、138、140は、ワイヤまたは光学連通を提供するための1つ以上の有線インターフェースまたはポート、または無線通信を提供するためのRF、マイクロ波、およびIR等を介した1つ以上の無線インターフェースまたはポートを含んでもよい。いくつかの実装では、全ての通信は、有線であってもよい一方、他の実装では、全ての通信は、無線であってもよい。なおもさらなる実装では、有線および無線通信の選択肢は、図2-5に図示されるものと異なり得る。したがって、有線または無線通信の特定の選択肢は、限定と見なされるべきではない。
いくつかの実施形態では、ユーザ配向モジュールは、ローカル処理およびデータモジュール130および/またはローカルディスプレイブリッジ142内に含有される一方、CPUおよびGPUは、遠隔処理モジュール内に含有される。代替実施形態では、CPU、GPU、またはその一部は、ローカル処理およびデータモジュール130および/またはローカルディスプレイブリッジ142内に含有されてもよい。3Dデータベースは、遠隔データリポジトリ134と関連付けられる、またはローカルで配置されることができる。
いくつかのVR、AR、および/またはMRシステムは、個別の深度平面から生じるように現れる画像を生成するための深度平面情報を内蔵する、複数の体積位相ホログラム、表面レリーフホログラム、または光誘導光学要素を使用する。換言すると、回折パターンまたは回折光学要素(「DOE」)が、コリメートされた光(略平面波面を伴う光ビーム)が、LOEに沿って実質的に全内部反射されるにつれて、複数の場所において回折パターンと交差し、ユーザの眼に向かって出射するように、光誘導光学要素(「LOE」、例えば、平面導波管)内に内蔵される、またはその上にインプリント/エンボス加工されてもよい。DOEは、特定の深度平面から生じるように現れるように、それを通してLOEから出射する光が輻輳されるように構成される。コリメートされた光は、光学集光レンズ(「集光器」)を使用して生成されてもよい。
例えば、第1のLOEは、光学無限遠深度平面(0ジオプタ)から生じるように現れる、コリメートされた光を眼に送達するように構成されてもよい。別のLOEは、2メートルの距離(1/2ジオプタ)から生じるように現れる、コリメートされた光を送達するように構成されてもよい。さらに別のLOEは、1メートルの距離(1ジオプタ)から生じるように現れる、コリメートされた光を送達するように構成されてもよい。スタックされたLOEアセンブリを使用することによって、複数の深度平面が、作成され得、各LOEは、特定の深度平面から生じるように現れる、画像を表示するように構成されることを理解されたい。スタックは、任意の数のLOEを含んでもよいことを理解されたい。しかしながら、少なくともN個のスタックされたLOEが、N個の深度平面を生成するために要求される。さらに、N、2N、または3N個のスタックされたLOEが、RGBカラー画像をN個の深度平面に生成するために使用されてもよい。
3-D仮想コンテンツをユーザに提示するために、VR、AR、および/またはMRシステムは、Z方向に(すなわち、ユーザの眼から離れるように直交して)種々の深度平面から生じるように現れるように、仮想コンテンツの画像をユーザの眼の中に投影する。換言すると、仮想コンテンツは、XおよびY方向(すなわち、ユーザの眼の中心視軸に直交する2D平面)において変化し得るだけではなく、また、ユーザが、オブジェクトが、非常に近接して、または無限距離に、またはその間の任意の距離にあるように知覚し得るように、Z方向においても変化するように現れ得る。他の実施形態では、ユーザは、複数のオブジェクトを、同時に、異なる深度平面において知覚し得る。例えば、ユーザには、仮想ドラゴンが、無限遠から現れ、ユーザに向かって走って来るように見え得る。代替として、ユーザには、同時に、ユーザから3メートル離れた距離における仮想鳥と、ユーザから腕の長さ(約1メートル)における仮想コーヒーカップとが見え得る。
多平面焦点システムは、画像をユーザの眼からZ方向における個別の固定距離に位置する複数の深度平面のいくつかまたは全て上に投影することによって、可変深度の知覚を作成する。ここで図6を参照すると、多平面焦点システムは、フレームを固定された深度平面150(例えば、図6に示される6つの深度平面150)に表示し得ることを理解されたい。MRシステムは、任意の数の深度平面150を含むことができるが、1つの例示的多平面焦点システムは、6つの固定された深度平面150をZ方向に有する。仮想コンテンツを6つの深度平面150のうちの1つ以上のものに生成する際、3-D知覚が、ユーザがユーザの眼から可変距離における1つ以上の仮想オブジェクトを知覚するように作成される。ヒトの眼は、遠く離れてあるように現れるオブジェクトより距離がより近いオブジェクトに敏感であることを前提として、より多くの深度平面150が、図6に示されるように、眼のより近くに生成される。他の実施形態では、深度平面150は、相互から離れるように等距離に設置されてもよい。
深度平面位置150は、メートル単位で測定される焦点距離の逆数に等しい屈折力の単位である、ジオプタ単位で測定されてもよい。例えば、いくつかの実施形態では、深度平面1は、1/3ジオプタ離れてもよく、深度平面2は、0.3ジオプタ離れてもよく、深度平面3は、0.2ジオプタ離れてもよく、深度平面4は、0.15ジオプタ離れてもよく、深度平面5は、0.1ジオプタ離れてもよく、深度平面6は、無限遠(すなわち、0ジオプタ離れる)を表し得る。他の実施形態は、深度平面150を他の距離/ジオプタに生成してもよいことを理解されたい。したがって、仮想コンテンツを方略的に設置された深度平面150に生成する際、ユーザは、仮想オブジェクトを3次元で知覚することが可能である。例えば、ユーザは、別の仮想オブジェクトが深度平面6における無限遠に現れる間、第1の仮想オブジェクトが深度平面1内に表示されるとき、それを近くにあると知覚し得る。代替として、仮想オブジェクトは、最初に、深度平面6に、次いで、深度平面5に、そして、仮想オブジェクトがユーザの非常に近く現れるまでそのように続くように表示されてもよい。上記の実施例は、例証目的のために有意に簡略化されていることを理解されたい。別の実施形態では、全6つの深度平面は、ユーザから離れるように特定の焦点距離上に集中されてもよい。例えば、表示されるべき仮想コンテンツが、ユーザから0.5メートル離れたコーヒーカップである場合、全6つの深度平面は、コーヒーカップの種々の断面において生成され、ユーザに、コーヒーカップの高粒度の3-Dビューを与え得る。
いくつかの実施形態では、VR、AR、および/またはMRシステムは、多平面焦点システムとして機能し得る。換言すると、全6つのLOEは、光源が画像情報をLOE1、次いで、LOE2、次いで、LOE3等に急速に伝達する状態において、6つの固定された深度平面から生じるように現れる画像が、高速で連続して生成されるように、同時に照明されてもよい。例えば、光学無限遠における空の画像を備える、所望の画像の一部が、時間1において投入されてもよく、光のコリメーションを留保するLOE(例えば、図6からの深度平面6)が、利用されてもよい。次いで、より近い木の枝の画像が、時間2において投入されてもよく、10メートル離れて深度平面から生じるように現れる画像を作成するように構成される、LOE(例えば、図6からの深度平面5)が、利用されてもよい。次いで、ペンの画像が、時間3において投入されてもよく、1メートル離れて深度平面から生じるように現れる画像を作成するように構成される、LOEが、利用されてもよい。本タイプのパラダイムは、ユーザの眼および脳(例えば、視覚野)が入力を同一画像の全ての部分であると知覚するように、高速時間シーケンシャル方式で繰り返されることができる。
VR、AR、および/またはMRシステムは、Z軸(すなわち、深度平面)に沿って種々の場所から生じるように現れ、3-D体験/シナリオのための画像を生成する、画像を投影してもよい(すなわち、光ビームを発散または収束させることによって)。本願で使用されるように、光ビームは、限定ではないが、光源から照射される光エネルギー(可視および不可視光エネルギーを含む)の指向性投影を含む。種々の深度平面から生じるように現れる画像を生成することは、その画像のためのユーザの眼の輻輳・開散運動および遠近調節に一致し、輻輳・開散運動-遠近調節競合を最小限にまたは排除する。
ここで図7を参照すると、ARまたはMRシステム700(以降、「システム700」と称される)の例示的実施形態が、図示される。システム700は、スタックされた光誘導光学要素(以降、「LOE790」と称される)を使用する。システム700は、概して、1つ以上の画像生成プロセッサ710と、1つ以上の光源720と、1つ以上のコントローラ/ディスプレイブリッジ(DB)730と、1つ以上の空間光変調器(SLM)740と、複数の平面焦点システムとして機能する、スタックされたLOE790の1つ以上のセットとを含む。システム700はまた、眼追跡サブシステム750を含んでもよい。
画像生成プロセッサ710は、ユーザに表示されるための仮想コンテンツを生成するように構成される。画像生成プロセッサ710は、仮想コンテンツと関連付けられる画像またはビデオを、ユーザに3Dで投影され得る、フォーマットに変換してもよい。例えば、3Dコンテンツを生成する際、仮想コンテンツは、特定の画像の一部が、特定の深度平面に表示される一方、その他が、他の深度平面に表示されるように、フォーマットされる必要があり得る。一実施形態では、画像は全て、特定の深度平面に生成されてもよい。別の実施形態では、画像生成プロセッサ710は、ともに視認されると、仮想コンテンツが、コヒーレントかつ快適にユーザの眼に現れるように、若干異なる画像を右および左眼に提供するようにプログラムされてもよい。
画像生成プロセッサ710はさらに、メモリ712と、GPU714と、CPU716と、画像生成および処理のための他の回路網とを含んでもよい。画像生成プロセッサ710は、所望の仮想コンテンツがシステム700のユーザに提示されるようにプログラムされてもよい。いくつかの実施形態では、画像生成プロセッサ710は、システム700内に格納されてもよいことを理解されたい。他の実施形態では、画像生成プロセッサ710および他の回路網は、システム700に結合される、ベルトパック内に格納されてもよい。いくつかの実施形態では、画像生成プロセッサ710またはその1つ以上のコンポーネントは、ローカル処理およびデータモジュール(例えば、ローカル処理およびデータモジュール130)の一部であってもよい。上記に述べられたように、ローカル処理およびデータモジュール130は、フレーム構造102に固定して取り付けられる(図2)、ヘルメットまたは帽子56に固定して取り付けられる(図3)、エンドユーザ50の胴体58に除去可能に取り付けられる(図4)、またはベルト結合式構成においてエンドユーザ50の腰部60に除去可能に取り付けられる(図5)等、種々の構成で搭載されてもよい。
画像生成プロセッサ710は、所望の仮想コンテンツと関連付けられる光を投影する、光源720と、1つ以上の空間光変調器740とに動作可能に結合される。光源720は、コンパクトであって、高分解能を有する。光源720は、コントローラ/DB730に動作可能に結合される。光源720は、種々の幾何学的構成で配置される、色特有LEDおよびレーザを含んでもよい。代替として、光源720は、同様の色のLEDまたはレーザを含んでもよく、1つずつ、ディスプレイの視野の具体的領域にリンクされる。別の実施形態では、光源720は、放出面積および位置のセグメント化のためのマスクオーバーレイを伴う、白熱灯または蛍光灯等の広面積エミッタを含んでもよい。光源720は、図2Bでは、直接、システム700に接続されるが、光源720は、光ファイバ(図示せず)を介して、システム700に接続されてもよい。システム700はまた、光源720からの光をコリメートするように構成される、集光器(図示せず)を含んでもよい。
SLM740は、種々の例示的実施形態では、反射性(例えば、LCOS、FLCOS、DLP DMD、またはMEMSミラーシステム)、透過性(例えば、LCD)、または発光性(例えば、FSDまたはOLED)であってもよい。SLM740のタイプ(例えば、速さ、サイズ等)は、3D知覚の作成を改良するように選択されることができる。より高いリフレッシュレートで動作する、DLP DMDは、定常システム700の中に容易に組み込まれ得るが、ウェアラブルシステム700は、より小さいサイズおよび電力のDLPを使用してもよい。DLPの電力は、3D深度平面/焦点面が作成される方法を変化させる。画像生成プロセッサ710は、SLM740に動作可能に結合され、これは、光源720からの光を所望の仮想コンテンツでエンコーディングする。光源720からの光は、SLM740から反射する、そこから放出される、またはそれを通して通過するとき、画像情報でエンコーディングされてもよい。
SLM740からの光は、SLM740によって1つの深度平面および/または色のための画像データでエンコーディングされた光ビームが、事実上、ユーザの眼への送達のために、単一LOE790に沿って伝搬されるように、LOE790に指向される。各LOE790は、所望の深度平面またはFOV角位置から生じるように現れる、画像またはサブ画像を、ユーザの網膜上に投影するように構成される。光源720およびLOE790は、したがって、空間内の種々の深度平面または位置から生じるように現れる、(同期して、コントローラ/DB730の制御下、SLM740によってエンコーディングされた)画像を選択的に投影することができる。画像を、光源720およびLOE790のそれぞれを使用して、十分に高フレームレート(例えば、60Hzの有効完全ボリュームフレームレートでの6つの深度平面に関して360Hz)で順次投影することによって、システム700は、同時に3D画像内に存在するように現れる、仮想オブジェクトの3D画像を種々の深度平面に生成することができる。
コントローラ/DB730は、画像生成プロセッサ710、光源720、およびSLM740と通信し、それに動作可能に結合され、SLM740に、光源720からの光ビームを画像生成プロセッサ710からの適切な画像情報でエンコーディングするように命令することによって、画像の同期表示を協調させる。システムは、画像生成プロセッサ710を含むが、コントローラ/DB730が、いくつかの実施形態ではまた、例えば、メモリ712、GPU714、および/またはCPU716のプロセスを含む、少なくともいくつかの画像生成プロセスを実施してもよい。いくつかの実施形態では、コントローラ/DB730は、例えば、メモリ712、GPU714、および/またはCPU716等の画像生成プロセッサ710に示される、1つ以上のコンポーネントを含んでもよい。
システム700はまた、ユーザの眼を追跡し、ユーザの焦点を決定するように構成される、随意の眼追跡サブシステム750を含む。一実施形態では、システム700は、画像が、ユーザの焦点/遠近調節と一致する、所望の深度平面に生成されるように、眼追跡サブシステム750からの入力に基づいて、LOE790のサブセットを照明するように構成される。例えば、ユーザの眼が、相互に平行である場合、システム700は、画像が光学無限遠から生じるように現れるように、コリメートされた光をユーザの眼に送達するように構成される、LOE790を照明してもよい。別の実施例では、眼追跡サブシステム750が、ユーザの焦点が、1メートル離れていることを決定する場合、ほぼその範囲内に集束するように構成される、LOE790が、代わりに、照明されてもよい。
図8は、いくつかの実施形態による、VR/AR/MRシステム800の画像生成コンポーネントを図式的に描写する。VR/AR/MRシステム800は、ディスプレイポート(DP)ソース804を有し、DPリンク810を介して、DPシンク808を有する、ディスプレイブリッジ(DB)806に結合される、グラフィック処理ユニット(GPU)802を含む。GPU802は、VR/AR/MRシステム800のベルトパック内に位置してもよく、DB806は、VR/AR/MRシステム800のウェアラブルコンポーネント内に位置してもよく、DPリンク810は、光ファイバ系リンクであってもよい。いくつかの実施形態では、DPリンク810は、PCIEリンクまたは他の、例えば、専有の高速リンクであってもよい。いくつかの実施形態では、GPU802およびDB806は両方とも、VR/AR/MRシステム800のベルトパック内にあってもよい。いくつかの実施形態では、GPU802およびDB806は両方とも、VR/AR/MRシステム800のウェアラブルコンポーネント内にあってもよい。いくつかの実施形態では、DB806は、GPU802を含んでもよい。DB806はまた、4つのMIPIリンク816を介して、左および右ディスプレイパネル812および左および右ライトフィールドチップ814に結合される。いくつかの実施形態では、MIPIリンク816は、DPリンク、PCIEリンク、または他の、例えば、専有高速リンクであってもよい。これらの実施形態では、DB806、左および右ディスプレイパネル812、および左および右フィールドチップ814は、リンクのための適切なポートを含んでもよい。DB806はまた、MIPIリンク816およびI2CまたはSPIコネクタ820(DB806内のMIPI/I2C822またはSPI受信機824に結合される)を介して、ウェアラブルプロセッサ818に結合されてもよい。システム800内の(すなわち、DB806と、左および右ディスプレイパネル812、左および右ライトフィールドチップ814、およびウェアラブルプロセッサ818との間の)MIPIリンク816は、送信および受信コンポーネント内のMIPI伝送機832およびMIPI受信機824に結合される。MIPIリンク816は、1つ以上のデータレーン(例えば、4つのビデオデータレーン)と、クロックレーンとを含んでもよい。DB806はまた、メモリ826(例えば、スタックされた低電力DDRメモリまたは内蔵DRAM)と、メモリ828(例えば、スタックされたフラッシュメモリ)とを含む。左および右ディスプレイパネル812はまた、個別の左および右解凍エンジン830を含む。いくつかの実施形態では、DB806は、ピクセル操作のためのビデオプロセッサ(例えば、ピクセルエンジン)を含んでもよい。ビデオプロセッサは、一次パネル(例えば、左および右パネル812および/または左および右ライトフィールドチップ814)のために、データストリーム(例えば、GPU802からのビデオストリーム)を通して受信されたデータをカスタマイズする。
図8Aは、いくつかの実施形態による、VR/AR/MRシステム800’の画像生成コンポーネントを図式的に描写する。図8Aに描写されるVR/AR/MRシステム800’は、図8に描写されるVR/AR/MRシステム800のコンポーネントの多くを含む。VR/AR/MRシステム800’は、ディスプレイポート(DP)ソース804を有し、DPリンク810を介して、DPシンク808を有する、ディスプレイブリッジ(DB)806’に結合される、グラフィック処理ユニット(GPU)802を含む。DB806’はまた、4つのMIPIリンク816を介して、左および右ディスプレイパネル812’および左および右ライトフィールドチップ814’に結合される。いくつかの実施形態では、DB806’は、SPIおよび/またはI2Cコネクタを介して、左および右ディスプレイパネル812’および左および右ライトフィールドチップ814’に結合されてもよい。加えて、DB806’はさらに、左および右バス(例えば、I2Cバス)836を介して、左および右LED/レーザドライバ834に結合される。左および右バス836はまた、DB806’および左および右LED/レーザドライバ834の両方を左および右ディスプレイパネル812’に結合する。DB806’はまた、DB806’内のMIPI受信機824、I2C受信機822、またはSPI受信機840に結合され得る、MIPIリンク816、I2Cコネクタ820、および/またはSPIコネクタ838を介して、ウェアラブルプロセッサ818’に結合されてもよい。DB806’はまた、メモリ826(例えば、内蔵SRAM)と、メモリ828(例えば、スタックされたクワッドSPIフラッシュメモリ)とを含む。
上記に説明されるMIPIリンク816は、双方向性能力(例えば、左および右ディスプレイパネル812、812’からの読取データ、確認応答、および/または誤差情報をDB806、806’に返すため)を有してもよい。MIPIリンク816のレーン0は、DB806、806’への伝送のために使用されてもよい一方、他のレーンは、一方向性であってもよい。MIPIリンク816は、低電力伝送モードの間、DB806、806’が、左および右ディスプレイパネル812、812’から汎用読取を開始するために、DB806、806’への伝送のために使用されてもよい。
図9は、いくつかの実施形態による、VR/AR/MRシステムと併用するためのDB900を図式的に描写する。DB900は、画像データの1つ以上のストリームを受信するように構成される、DP受信機902を含む。DP受信機902は、DSCデコーダ904、DDRコントローラ906、ピクセルエンジン908、出力FIFO一次および二次ストリーム910、およびピクセル分布一次および二次パネル(「ピクセル分布モジュール」)912に通信可能に結合され、これは、ひいては、4つのMIPIチャネル914に通信可能に結合される。DB900はまた、MIPI受信機916と、メモリ918(例えば、低電力DDRスタックダイ)と、CPUモジュール920と、RGB/グレースケールセグメント化ブロック922とを含み、これは全て、DDRコントローラ906に通信可能に結合される。RGB/グレースケールセグメント化ブロック922は、本明細書に説明されるように、DSCデコーダ904からのデータを受信し、出力をメモリ918’に送信する。DB900は、2つのビデオストリームを処理するように構成される。第1のビデオストリーム924は、DSCデコーダ904およびRGB/グレースケールセグメント化ブロック922によって処理され、次いで、メモリ918への書込のために、DDRコントローラ906に送信される。第2のビデオストリーム926は、メモリ918への書込のために、直接、DP受信機902からDDRコントローラ906に送信される。
図9Aは、いくつかの実施形態による、VR/AR/MRシステムと併用するためのDB900’を図式的に描写する。図9Aに描写される、DB900’は、図9に描写されるDB900のコンポーネントの多くを含む。DB900’は、画像データの1つ以上のストリームを受信するように構成される、DP受信機902を含む。DP受信機902は、DSCデコーダ904、ピクセルエンジン908、出力FIFO一次および二次ストリーム910、およびピクセル分布一次および二次パネル912に通信可能に結合され、これは、ひいては、4つのMIPIチャネル914に通信可能に結合される。DB900’はまた、MIPI受信機916と、RGB/グレースケールセグメント化ブロック922とを含み、その両方とも、メモリ918’(例えば、SRAM)に結合される。RGB/グレースケールセグメント化ブロック922は、本明細書に説明されるように、DSCデコーダ904からのデータを受信し、出力をメモリ918’に送信する。DB900’はさらに、メモリ918’に結合される、スプラッシュスクリーン解凍器928を含む。DB900’は、2つのビデオストリームを処理するように構成される。第1のビデオストリーム924は、DSCデコーダ904およびRGB/グレースケールセグメント化ブロック922によって処理され、次いで、メモリ918’に書き込まれる。第2のビデオストリーム926は、直接、DP受信機902から送信され、メモリ918’に書き込まれる。
図10は、いくつかの実施形態による、DBと併用するためのピクセルエンジン1000を図式的に描写する。ピクセルエンジン1000は、カラーフィールドのためのコードを実行し、入力パラメータに基づいて、表示のためのピクセルを生成する、コア1002を含む。ピクセルエンジン1000は、カラーフィールドに関する情報をメモリ(例えば、低電力DDR)から読み取り、ピクセルを生成する(例えば、一度に1つの出力ライン)。コア1002は、プログラム可能であって、SRAMと、命令RAMとを含んでもよい。コア1002はまた、AXI通信チャネル1004(例えば、メモリと通信するため)と、一対のFIFO出力1006(例えば、ディスプレイおよびライトフィールドチップと通信するため)と、二次データパケット/補助データ先入れ先出し(SDP/AUXFIFO)入力1008(例えば、DPソースと通信するため)と、処理するためのピクセルデータを含有するように密結合されたSRAM1010の二重バンクとを有してもよい。いくつかの実施形態では、ピクセルエンジン1000は、光学系およびプロジェクタに関連する光学歪曲を補償するステップ、持続ワーピング再投影、フレームレート拡張、動的オクルージョン、セグメント化された中心窩化混成、ピクセル化された調光制御、ピクセル色収差補正、部分的表示サポート、カスタム暗化および部分暗化モード、コンテンツ折畳解除、およびベクトルエンジンを使用した、例えば、カスタム命令を用いた多くの他のAR/VRアルゴリズムを実施するステップに関与してもよい。いくつかの実施形態では、ピクセルエンジン1000は、頭部姿勢更新を、直接、DB(例えば、DB806)に通信可能に結合されるセンサまたはウェアラブルプロセッサ818によって提供されるセンサデータから計算する。
図10Aは、いくつかの実施形態による、DBと併用するためのピクセルエンジン1000’を図式的に描写する。ピクセルエンジン1000’は、カラーフィールドのためのコードを実行し、入力パラメータに基づいて、表示のためのピクセルを生成する、コア1002’を含む。ピクセルエンジン1000’は、カラーフィールドに関する情報をメモリ(例えば、低電力DDRまたはSRAM)から読み取り、ピクセル(例えば、一度に1つの出力ライン)を生成する。コア1002’は、プログラム可能であって、SRAMと、命令RAMとを含んでもよい。コア1002’はまた、AXI通信チャネル1004’(例えば、メモリと通信するため)と、一対のFIFO出力1006’(例えば、ディスプレイおよびライトフィールドチップと通信するため)と、二次データパケット/補助データ先入れ先出し(SDP/AUXFIFO)入力1008’(例えば、DPソースと通信するため)と、処理するためのピクセルデータを含有するように密結合されたSRAM1010’の二重バンクとを有してもよい。密結合されたSRAM1010’は、システム内の他のメモリと通信する必要性を低減させる。さらに、コア1002’は、SRAMコントローラおよびHSYNC/VSYNC/走査ラインインタラプト1014への接続1012を有してもよい(例えば、ピクセルセグメント化ブロックからの入力を受信するため)。さらに、コア1002’は、APBレジスタバンクと、APB/AXIスレーブポート1018と、SPI/I2Cマスタポートとを含んでもよい。APB/AXIスレーブポート1018は、ファームウェアをフラッシュメモリからDBにコピーするために使用されてもよい。
いくつかの実施形態では、ピクセルエンジン1000’は、光学系およびプロジェクタに関連する光学歪曲を補償するステップ、持続ワーピング再投影、フレームレート拡張、動的オクルージョン、セグメント化された中心窩化混成、ピクセル化された調光制御、ピクセル色収差補正、部分的表示サポート、カスタム暗化および部分暗化モード、コンテンツ折畳解除、およびベクトルエンジンを使用した、例えば、カスタム命令を用いた多くの他のAR/VRアルゴリズムを実施するステップに関与してもよい。いくつかの実施形態では、ピクセルエンジン1000’は、頭部姿勢更新を、直接、DB(例えば、DB806)に通信可能に結合されるセンサまたはウェアラブルプロセッサ818によって提供されるセンサデータから計算する。
図11は、いくつかの実施形態による、VR/AR/MRシステムと併用するためのディスプレイパネル1100を図式的に描写する。ディスプレイパネル1100は、内蔵ラインデコーダ1104、部分的画面リフレッシュ論理1106、種々のバッファ1108、種々のガンマ補正モジュール1110、およびディスプレイメモリ1112に通信可能に結合される、MIPI受信機1102を含む。MIPI受信機1102は、MIPI DSI-2インターフェース、DPリンクインターフェース、および/または1つ以上のデータレーン(例えば、4つのビデオデータレーン)および1つのクロックレーンを伴う、他の、例えば、専有シリアルリンクと動作するように構成されてもよい。MIPI受信機1102は、同期イベントを伴うバーストモード、クロック/レーンデスキューイング、およびレジスタを介した分解能/タイミングの手動構成を含む、種々の特徴を有してもよい。内蔵ラインデコーダ1104は、フレームデータの第1のラインを読み取り、その中に内蔵されるデータを抽出するように構成されてもよい。内蔵データは、フレームのための動作モードおよびフォーマットを定義し得る。部分的画面リフレッシュ論理1104は、2つのモード、すなわち、ブランク画面および部分的表示(両方とも下記に説明される)で動作するように構成されてもよい。バッファ1108は、1つのカラーフィールドの最大待ち時間を有し得る。ガンマ補正モジュール1110は、ガンマテーブルをサポートし、8ビット入力ビデオを10ビット出力に変換し得る。ディスプレイパネル1100は、テーブル/オフセット同期モジュールと、シーケンサテーブルとを含んでもよい。
(画像データフォーマット)
(セグメント化されたカラーシーケンシャルフォーマット)
(画像データフォーマット)
(セグメント化されたカラーシーケンシャルフォーマット)
図12は、DPポート(例えば、図8および8AにおけるDP SRC804およびDPシンク808参照)によって支持され得る、2つの入力データフォーマットを図式的に描写する。上のデータフォーマット1200は、RGB24ビット色(フィールドあたり8ビット)であって、下のデータフォーマット1202は、RGB30ビット色(フィールドあたり10ビット)である。入力データは、ディスプレイストリーム圧縮(DSC)で圧縮されていてもよい。DPポートはまた、シーケンシャルグレースケールデータフォーマット(下記に説明される)をサポートしてもよい。
図13は、いくつかの実施形態による、VR/AR/MRシステムと併用するためのカラー画像データフォーマットを図式的に描写する。本カラー画像データフォーマットでは、典型的には、3つの原色フィールド1302、1304、1306に編成される、カラー画像データ(例えば、24ビットまたは30ビットRGBデータ)は、3つの画像1312、1314、1316に再編成される。3つの画像1312、1314、1316はそれぞれ、3分の1ずつ分割され、各3分の1は、部分的カラーフィールド(例えば、1312R、1312G、1312B)を含む。
(カラーシーケンシャルグレースケールフォーマット)
(カラーシーケンシャルグレースケールフォーマット)
カラー画像データは、GPU内で生成され、3つの画像1312、1314、1316に再編成される。3つの画像1312、1314、1316は、DPを介して、GPUから、DBに送信されることができる。3つの画像1312、1314、1316へのカラー画像データの再編成は、各カラーフィールド(例えば、部分的カラーフィールド1312R、1312G、1312B)の部分が、画像パイプライン内でより早くDBに到着する結果をもたらす。画像データへの本より早いアクセスは、DBが、再編成されたカラー画像データを伴わずに、画像パイプ内より早く画像データに作用を開始することを可能にし得る。
図14は、3つの部分的カラーフィールドに再編成されている、カラー画像1402を図式的に描写する。加えて、3つの部分的カラーフィールドは、3つのシーケンシャルグレースケール画像1422、1424、1426に変換されている。3つのシーケンシャルグレースケール画像1422、1424、1426の位置は、各部分的フィールドの色をエンコーディングするために使用される。カラーフィールドをグレースケールに変換することは、GPUからDBに伝送されるデータの量を低減させ得る。グレースケールへの変換は、GPUまたはDBにおいて生じ得る。
(カラーセグメント化)
(カラーセグメント化)
図15は、いくつかの実施形態による、例えば、カラー画像データが、さらなる処理のために、GPUからDBに送信される、VR/AR/MRシステムと併用するためのDB内のカラー画像データのカラーセグメント化を図式的に描写する。DBが、カラーシーケンシャルグレースケールフォーマットを示す、レジスタを受信すると、DBは、本明細書に説明されるように、パッキングされたカラー画像データをカラーシーケンシャルグレースケールデータに変換する。DBは、カラー画像データ1502を、GPUから、DPを通して、受信する。次いで、DBは、随意に、カラー画像データ1502を3つのフィールド1512、1514、1516にセグメント化する。3つのフィールド1512、1514、1516は、カラーシーケンシャルグレースケールフォーマットへのさらなる処理のために、メモリ、例えば、DDR二重バッファメモリ内に記憶される。本セグメント化は、カラー画像データストリームが受信されるにつれて、リアルタイムで生じ得る。カラー画像データ1502ストリームを受信する、レジスタはまた、画像データが記憶されるであろうメモリ(例えば、低電力DDR)内のアドレスを示してもよい。
図15Aは、いくつかの実施形態による、例えば、カラー画像データが、さらなる処理のために、GPUからDBに送信される、VR/AR/MRシステムと併用するためのDB内のカラー画像データのカラーセグメント化を図式的に描写する。DBが、カラーシーケンシャルグレースケールフォーマットを示す、レジスタを受信すると、DBは、本明細書に説明されるように、パッキングされたカラー画像データをカラーシーケンシャルグレースケールデータに変換する。DBは、カラー画像データ1502を、GPUから、DPを通して、受信する。次いで、DBまたは随意のセグメント化ハードウェアブロック1520は、カラー画像データ1502を3つのフィールド1522、1524、1526にセグメント化する。3つのフィールド1522、1524、1526は、9つの出力バッファ(BUF0-BUF8)内に記憶される。3つのフィールド1522、1524、1526が記憶される、バッファのサブセットは、偶数フレーム(すなわち、ゼロ、2、4、6、…)と奇数フレーム(すなわち、1、3、5、7、…)との間で変動する。セグメント化ブロック1520またはDBからの着信メッセージは、セグメント化ブロック出力のための現在アクティブなバッファ状態を示す。セグメント化ブロック1520は、カラー画像データ1502を3つの原色グレースケールフィールド(すなわち、赤色、緑色、青色)に分離する。本セグメント化は、カラー画像データ1502ストリームが受信されるにつれて、リアルタイムで生じ得る。
セグメント化ブロック1520が、無効にされると、カラー画像データ1502は、図15Bに示されるように、到着の時間に合致する数値順序を使用して、RGBパッキングモードにおいて、9つの出力バッファ(BUF0-BUF8)にコピーされる。本モードでは、9つの出力バッファ(BUF0-BUF8)は、セグメント化が存在しないため、順序通りとなる。
カラー画像データ1502が、未加工8ビットの形態にあるとき、セグメント化ブロック1520は、セグメントデータを記憶する前に、色成分毎に最小有効ビット内に2つの余剰ゼロビットを追加することによって、オンザフライで、ピクセルを未加工10ビットに変換してもよい。セグメント化が有効にされない場合でも、カラー画像データ1502は、システム一貫性のために、未加工10ビットフォーマットで記憶され得る。
図15Cは、カラー画像データ1502を記憶するための「RGB30」データフォーマットを図式的に描写する。図15Dは、128ビット整合データとしてSRAM内に記憶される、1,440ピクセル×1,440ピクセルの入力ディスプレイパネル分解能を図式的に描写する。各左および右のセグメント化された色は、8バイトのパディングを伴う、1,800バイトを含む。図15Dにおけるデータフォーマットを使用して、セグメント化ブロック1520は、9つのバッファ毎の開始アドレスが、常時、128ビット整合されるであろうと仮定することができる。図15Eは、128ビット整合データとしてSRAM内に記憶される、512ピクセル×512ピクセルの入力ディスプレイパネル分解能を図式的に描写する。各左および右のセグメント化された色は、1,168バイトのパディングを伴う、640バイトを含む。したがって、カラー画像データ1502は、依然として、128ビット整合データとしてSRAM内に記憶されることができる。図15Fは、128ビット整合データとしてSRAM内に記憶される、特殊画像(例えば、スプラッシュスクリーン)のための512ピクセル×512ピクセルの入力ディスプレイパネル分解能を図式的に描写する。本特定の実施形態では、左パネルは、512色のピクセルを有するが、右パネルは、全て黒色に設定される、512ピクセルを有する。図15Eに示されるように、各左および右のセグメント化された「色」は、1,168バイトのパディングを伴う、640バイトを含む。したがって、カラー画像データ1502は、依然として、128ビット整合データとしてSRAM内に記憶されることができる。1,440ピクセル×1,440ピクセルおよび512ピクセル×512ピクセル分解能が、説明されているが、類似データフォーマットも、異なる分解能を有するカラー画像データ1502を記憶するために使用されることができる。
図15Gは、フレームのカラーセグメント化後のデータ構造を図式的に描写する。図15Gに示されるデータ構造は、パディングを含まず、したがって、データ構造は、固定された宛先ピッチを有する。すなわち、1つの行から次の行までのバイトアドレス距離は、固定数のバイトを有する。
各カラーフィールドは、3つの別個のバッファを要求し、各バッファは、カラーフィールド画像の3分の1を保持する。3によって均一に除算可能ではない行の数を有する、ディスプレイ分解能に関して、バッファは、バッファの数が3によって均一に除算可能であるように、1つまたは2つの付加的行を含むことができる。余剰行/バッファが、画像メタデータを記憶するために使用されることができる。
(マルチストリームモード)
(マルチストリームモード)
上記の図9および9Aに示されるように、DB900、900’は、マルチストリームモードをサポートしてもよく、画像データは、2つのストリーム924、926を含む。いくつかの実施形態では、ビデオストリーム1 924は、表示のための画像データを含んでもよく、ビデオストリーム2 926は、表示のための画像データを含まず、むしろ、例えば、1つ以上のライトフィールドチップ(例えば、図8および8Aにおける左および右ライトフィールドチップ814)のための構成データを含んでもよい。いくつかの実施形態では、ビデオストリーム2 926はまた、ライトフィールドチップによる使用のために、ピクセルエンジン908によって分離される、ライトフィールドパネルデータを含んでもよい。図9および9Aに示されるように、本構成データは、DDRコントローラ906、メモリ918、918’、ピクセルエンジン908、およびピクセル分布モジュール912に通信され、それによって使用されてもよい。いくつかの実施形態では、構成データは、パネル分解能、ライトフィールドコントローラデータ、ワーピングデータ、歪曲データ、オクルージョンデータ、中心窩化領域データ、ブリッジ制御データ、および同等物を含むことができる。
ビデオストリーム1 924およびビデオストリーム2 926は、同期されてもよい。ビデオストリーム2 926は、フレーム毎に部分的ラインをサポートしてもよい。部分的ラインは、ビデオストリーム1 924およびビデオストリーム2 926のタイミングの定義を促進する。部分的ラインは、ブランキングセクションの終了に配置されてもよい。DBは、ビデオストリーム2 926のためのMIPI出力を生成し、メモリ918、918’内の間隔を促進するように構成されてもよい。完全暗化モード(本明細書に説明される)では、ビデオストリーム2 926は、DPソースによって伝送されないであろう。部分暗化モード(本明細書に説明される)では、DBは、ビデオストリーム1 924のための出力を生成し、ビデオストリーム2 926が伝送されるまで、リンクをアクティブに保つように構成されてもよい。ビデオストリーム2 926は、Vブランキング毎に1回、ライン位相を偏移させ、2つのストリーム924、926の同期を促進してもよい。
図16は、二次ディスプレイストリーム1600(例えば、ビデオストリーム2 926)およびDBを通したそのフローを図式的に描写する。二次ディスプレイストリーム1600は、左および右ライトフィールドプロセッサを制御するためのライトフィールドプロセッサデータ1602と、他のカスタムデータ1604とを含む。ライトフィールドプロセッサデータ1602およびカスタムデータ1604は、プログラマブル行1606によって分離される。DBは、カスタムデータ1604が、メモリ、例えば、メモリ1608(例えば、低電力DDRメモリ)内に記憶され、ライトフィールドプロセッサデータ1602が、ピクセルエンジン1610および出力FIFOメモリ1612を通して、ピクセル分布1614(例えば、ピクセル分布モジュール912)に送信されるように、プログラマブル行1606によって分離されるデータを***させる。ピクセル分布1614では、ライトフィールドプロセッサデータ1602は、ディスプレイパネル(図示せず)への通信のために、MIPIリンクに送信される前に、左および右チャネルに***される。カスタムデータ1604が、特定のフレームのために存在する場合、出力MIPIタイミングは、カスタムデータ1604に適応し、それによって、ライトフィールドプロセッサデータ1602の分解能を低減させるように調節されてもよい。
二次ディスプレイストリーム1600入力分解能と対応するMIPI出力分解能との間には、何ら関係が存在しなくてもよい。二次ディスプレイストリーム1600に対応する、メモリ918、918’内の場所は、新しいフレームに関する情報が、前のフレームに関する情報を削除せずに書き込まれ得るように、二重バッファされてもよい。二次ディスプレイストリーム1600のためのメモリ918、918’の二重バッファは、選択的にアクティブ化されてもよい。
いくつかの実施形態では、二次ディスプレイストリーム(例えば、ビデオストリーム2
926)は、必要よりも大きい場合がある。その結果、DBは、ディスプレイへの伝送のために、二次ディスプレイストリームを圧縮してもよい。図16Aは、二次ディスプレイストリーム1600’(例えば、ビデオストリーム2 926)およびDBを通したそのフローを図式的に描写する。二次ディスプレイストリーム1600’は、カスタムデータ1604’を有する、ライトフィールドプロセッサデータ1602’を含む。ライトフィールドプロセッサデータ1602’は、メモリ1608’(例えば、SRAM)内に記憶されてもよく、そこからライトフィールドプロセッサデータ1602’は、ピクセルエンジン1610’、出力FIFOメモリ1612’、およびピクセル分布1614’(例えば、ピクセル分布モジュール912)を通して送信される。ピクセルエンジン1610’は、メモリ1608’から、出力に従って、ライトフィールドプロセッサデータ1602’内のサブピクセルのみをコピーしてもよい。二次ディスプレイストリーム1600内のデータ***動作を図16Aに描写される二次ディスプレイストリーム1600’から除去することは、ハードウェア設計を簡略化するが、複雑性をピクセルエンジン1610’ファームウェア設計に追加する。ビデオストリーム2 926のMIPI出力のための最終分解能は、固定されなくてもよい。
(二次データパケット(SDP))
926)は、必要よりも大きい場合がある。その結果、DBは、ディスプレイへの伝送のために、二次ディスプレイストリームを圧縮してもよい。図16Aは、二次ディスプレイストリーム1600’(例えば、ビデオストリーム2 926)およびDBを通したそのフローを図式的に描写する。二次ディスプレイストリーム1600’は、カスタムデータ1604’を有する、ライトフィールドプロセッサデータ1602’を含む。ライトフィールドプロセッサデータ1602’は、メモリ1608’(例えば、SRAM)内に記憶されてもよく、そこからライトフィールドプロセッサデータ1602’は、ピクセルエンジン1610’、出力FIFOメモリ1612’、およびピクセル分布1614’(例えば、ピクセル分布モジュール912)を通して送信される。ピクセルエンジン1610’は、メモリ1608’から、出力に従って、ライトフィールドプロセッサデータ1602’内のサブピクセルのみをコピーしてもよい。二次ディスプレイストリーム1600内のデータ***動作を図16Aに描写される二次ディスプレイストリーム1600’から除去することは、ハードウェア設計を簡略化するが、複雑性をピクセルエンジン1610’ファームウェア設計に追加する。ビデオストリーム2 926のMIPI出力のための最終分解能は、固定されなくてもよい。
(二次データパケット(SDP))
表示のための画像データに加え、ビデオストリーム1はまた、GPUからDBへの1つ以上のSDPメッセージを含む。VESAパケットフォーマットを使用する、いくつかの実施形態では、SDPメッセージは、表示のための任意のビデオ画像データが通信される前に、垂直ブランキングの間、ビデオ画像データ内でエンコーディングされてもよい。SDPメッセージはまた、水平ブランキングの間、ビデオ画像データ内でエンコーディングされてもよい。SDPメッセージは、DBによって受信され、バッファ内に記憶される(例えば、ピクセルエンジンによるアクセスのために)。SDPメッセージは、姿勢データ更新を含んでもよい。
図17は、いくつかの実施形態による、エンコーディングされた複数のSDPメッセージをその中に有する、大連鎖VSC_EXT_VESAパケット1700を図式的に描写する。SDPメッセージの最大2つのKBが、その比較的に大サイズに起因して、パケット1700の垂直ブランキングセグメント1702に内蔵されてもよい。他方では、水平ブランキングセグメント1704のより比較的に小さいサイズは、より小さいSDPメッセージのみを促進する。図17は、3つの連鎖パケットに分化され得る、6つの水平ブランキングパケットを描写する。連鎖パケットの使用は、若干より大きいSDPメッセージを可能にする。より小さいSDPメッセージを伴う、実施形態では、連鎖は、要求されない。
図17Aは、垂直ブランキングと関連付けられる、VSC_EXT_VESA SDPメッセージ1750を図式的に描写する。VSC_EXT_VESA SDPメッセージ1750は、ビデオストリーム1 924内にのみ含まれてもよい。したがって、VSC_EXT_VESA SDPメッセージ1750は、ビデオストリーム1および2の両方に関する情報を含んでもよい。いくつかの実施形態では、VSC_EXT_VESA SDPメッセージ1750は、ヘッダ1752(20バイト)と、メインDP制御ブロック1754(5バイト)と、ビデオストリーム1および2 1756、1758に関する部分的MSA情報(それぞれ、18バイト)と、専有データブロック1760(可変サイズ、例えば、173バイト)とを含む。
図17Bは、水平ブランキングと関連付けられる、水平ブランキングSDPメッセージ1770を図式的に描写する。いくつかの実施形態では、水平ブランキングSDPメッセージ1770は、ヘッダ1772(4バイト)と、タイムスタンプ1774(4バイト)と、専有データブロック1776(28バイト)とを含む。
(SDPおよびAUXメッセージFIFOメモリ)
(SDPおよびAUXメッセージFIFOメモリ)
図18は、いくつかの実施形態による、DB内のSDPメッセージおよび補助(AUX)チャネルメッセージからのデータのフローを図式的に描写する。DPは、電力を節約するためにシャットダウンされ得るため(下記に説明される)、種々の構成データは、AUXチャネルを介して、通信されてもよい。構成データは、AUXチャネルを介して、レジスタ書込を使用して、通信されてもよい。いくつかの実施形態では、AUXチャネルは、DPとともに、構成データを通信するために使用される。
図18は、DP受信機からのSDPメッセージ1802およびAUXチャネル1804からの構成データを描写する。SDPおよびAUXメッセージ1802、1804は、FIFOメモリ1806上に記憶される。FIFOメモリ1806から、SDPおよびAUXメッセージ1802、1804は、ピクセルエンジン1808に送信され、それによって使用されることができる。
(出力ビデオストリーム圧縮)
(出力ビデオストリーム圧縮)
ディスプレイパネルのための構成データは、直接、コントローラからディスプレイパネルに最も効率的に通信される。DBが、CPUとディスプレイパネルとの間に介在される、VR/AR/MRシステムでは、構成データは、内蔵信号として、ビデオストリーム内でディスプレイパネルに送信されることができる。
図19は、構成データを含む、内蔵信号1904でインターリーブされた、ピクセルデータ1902を伴う、ビデオストリーム1900を図式的に描写する。内蔵信号1904は、ビデオストリーム1900内の任意の場所に配置されることができる(例えば、開始、中央、終了)。内蔵信号1904はまた、完全または部分的行であることができる。
DBは、AUXチャネルレジスタ書込、SDPメタデータ、およびビデオストリーム2のカスタムデータセクションから、構成データを受信することができる。ピクセルエンジンは、構成データを受信し、特定のディスプレイパネルに関連する構成データを伴う、内蔵信号を含む、出力MIPIストリームを生成するであろう。MIPIストリームの出力タイミングは、内蔵シグナリングに一致するように拡張されてもよい。
(完全暗化低電力モード)
(完全暗化低電力モード)
いくつかの実施形態では、特定のVR/AR/MRユーザ姿勢/視野に関しては、仮想画像データが存在しないであろう。したがって、GPU出力は、黒色/完全暗化に対して送信されるであろう。GPUが、完全暗化フレームを検出するとき、ビデオストリーム1
924のための画像パイプラインをシャットダウンすることは、システム電力を節約するであろう。電力節約のソースは、限定ではないが、DPリンク、DPソースプロセッサ、DPソースメモリ、DP光学リンク、GPU圧縮、DB解凍、DBカラーセグメント化、DBメモリ書込、ピクセルエンジンメモリ読取、ピクセル処理、MIPI伝送機、MIPI受信機、ディスプレイパネルメモリ読取および書込等を含む。ビデオストリーム1 924およびそのディスプレイパネルをオフにすることは、電力を保存するであろう。いくつかの実施形態では、ライトフィールドチップは、以前に受信されたデータから動作し続けるであろう。
924のための画像パイプラインをシャットダウンすることは、システム電力を節約するであろう。電力節約のソースは、限定ではないが、DPリンク、DPソースプロセッサ、DPソースメモリ、DP光学リンク、GPU圧縮、DB解凍、DBカラーセグメント化、DBメモリ書込、ピクセルエンジンメモリ読取、ピクセル処理、MIPI伝送機、MIPI受信機、ディスプレイパネルメモリ読取および書込等を含む。ビデオストリーム1 924およびそのディスプレイパネルをオフにすることは、電力を保存するであろう。いくつかの実施形態では、ライトフィールドチップは、以前に受信されたデータから動作し続けるであろう。
GPUが、完全暗化フレームを検出すると、GPUは、DPソースMCUに通知する(例えば、「STP」SDPメッセージまたはメインDPリンク上のk-コード電力低下シーケンスを介して)。いくつかの実施形態では、GPU合成器は、垂直ブランクSDPメッセージを作成し、書き込み、完全暗化モードを開始する。DPソースMCUは、次いで、完全暗化フレームのメモリ転送をDPソースパイプラインにバイパスし、DPソースパイプラインコンポーネント(例えば、DSCエンコーダ)の大部分を低電力モードに設置する。DPソースMCUは、種々のレジスタを無効にし、ディスプレイブリッジおよびディスプレイ等の結像パイプラインの下流コンポーネントをシャットダウンする。
GPUは、垂直ブランキングの間、SDPメッセージをDBに送信することによって、完全暗化モードを開始してもよい。DP受信機は、SDPメッセージをデコーディングし、それ自体を完全暗化低電力モードに置く。DP受信機はまた、メッセージを送信し、ピクセルエンジンを完全暗化低電力モードに設置する。LP11モードに設置されるであろう、MIPIデータレーンを含む、結像パイプラインの種々の他のコンポーネントもまた、完全暗化低電力モードに設置される。DPソースCPUは、DPの物理的コンポーネントをシャットダウンするであろう。ディスプレイは、アクティブラインの数をゼロに設定することによって、シャットダウンされてもよい。ディスプレイは、黒色/自己リフレッシュモードに移行してもよい。DPシンクブリッジは、垂直ブランクSDPメッセージを受信後、ウェイクアップ信号を受信するまで、ソースによって送信される任意のデータを考慮しなくてもよい。画像パイプラインの種々のコンポーネントは、前の非暗化画像が、パイプラインを通して処理され、表示されるにつれて、非同期して、シャットダウンされる。いくつかの実施形態では、非フレームデータが、必要とされる限り、DPポートを含む、ディスプレイパイプラインは、シャットダウンモードのままであろう。
GPUが、完全暗化フレーム後、非完全暗化フレームを検出すると、GPUは、ウェイクアップシーケンスを開始する。いくつかの実施形態では、DPソースMCUは、DP伝送機および受信機に電源投入してもよい。GPU合成器は、垂直ブランクSDPメッセージを作成し、書き込み、部分的暗化または通常モードのいずれかを開始してもよい。次いで、DPソースMCUは、AUXチャネルを介して、ウェイクアップメッセージを送信してもよい。ディスプレイは、アクティブラインの数を非ゼロ値に設定することによって、ウェイクアップしてもよい。随意の高速リンク訓練が、生じてもよい。いくつかの実施形態では、高速リンク訓練は、DB上に記憶されてもよく、記憶された高速リンク訓練は、高速ウェイクアップのために使用されてもよい。
図32は、いくつかの実施形態による、完全暗化モード3200に移行し、それを持続する、ディスプレイシステムのMIPIタイミングを図式的に描写する。システムは、3210において、完全暗化モードに移行する。いくつかの実施形態では、ディスプレイパネルは、実際には、自己リフレッシュに作用しているが、黒色ピクセルのみを表示する。したがって、完全暗化モードからの電力節約の有意な部分は、MIPI受信機、メモリ、DB、光源、および光ファイバ系コネクタのシャットダウンに由来する。
図33は、いくつかの実施形態による、ディスプレイシステムの完全暗化モード3300への移行、その持続、およびその終了を図式的に描写する。図33は、DBからのMIPIデータ3310およびディスプレイ(例えば、LCOS)出力ビデオ3320を経時的に描写する。MIPIデータ3310は、フレーム3 3312において、通常モードから完全暗化に遷移する。ビデオデータは、完全暗化(すなわち、ブランクまたはゼロ)であるが、MIPIデータ3310は、システムを完全暗化モードに設置するための内蔵制御ラインを含む、完全暗化3312の1つのフレームを含む。内蔵制御ラインの受信に応答して、ディスプレイ出力ビデオ3320は、フレーム3 3322において、完全暗化フレームを表示する。システムは、次いで、ビデオデータによって要求されるような可変数のフレームにわたって、完全暗化モードを持続する。MIPIデータ3310のフレームN 3314では、MIPIデータは、通常モードに戻り、それによって、システムをウェイクアップさせる。しかしながら、ディスプレイは、もはやDB MIPI出力と同期されないため、ディスプレイは、最後の黒色フレーム3324を表示することによって、通常モードの第1のフレームを考慮しない。N+1フレーム3326から開始して、ディスプレイ出力ビデオは、ウェイクアップし、同期し、通常モードで動作する。
図34は、いくつかの実施形態による、パネル自己リフレッシュ3400のためのディスプレイシステムの完全暗化モードへの移行、その持続、およびその終了を図式的に描写する。図34は、DBからのMIPIデータ3410およびディスプレイ(例えば、LCOS)出力ビデオ3420を経時的に描写する。MIPIデータ3410は、フレーム3
3412において、パネル自己リフレッシュを開始する。フレーム3 3412MIPIデータ3410は、パネル自己リフレッシュのためのインジケータ3430を含む。パネル自己リフレッシュインジケータの受信に応答して、パネルは、MIPIデータ3410をその中の1つ以上のバッファに記憶する。ディスプレイ出力ビデオ3420は、パネル自己リフレッシュが完了するまで、MIPIデータ3410のフレーム3 3412に対応する、フレーム3422を示す。パネル自己リフレッシュの間、SRAMバッファは、ビデオデータがディスプレイパネル内のバッファ内に記憶されるため、シャットダウンされることができる。MIPIデータ3410のフレームN 3414では、MIPIデータは、通常モードに戻り、それによって、システムをウェイクアップする。しかしながら、ディスプレイは、もはやDB MIPI出力と同期されないため、ディスプレイは、第3のフレーム3424の最後のコピーを表示することによって、通常モードの第1のフレームを考慮しない。N+1フレーム3426から開始して、ディスプレイ出力ビデオは、ウェイクアップし、同期し、通常モードで動作する。ディスプレイパネル自己リフレッシュは、その間、コンテンツが、大抵、定常である、スプラッシュスクリーンの表示の間に生じてもよい。
(部分暗化低電力モード)
3412において、パネル自己リフレッシュを開始する。フレーム3 3412MIPIデータ3410は、パネル自己リフレッシュのためのインジケータ3430を含む。パネル自己リフレッシュインジケータの受信に応答して、パネルは、MIPIデータ3410をその中の1つ以上のバッファに記憶する。ディスプレイ出力ビデオ3420は、パネル自己リフレッシュが完了するまで、MIPIデータ3410のフレーム3 3412に対応する、フレーム3422を示す。パネル自己リフレッシュの間、SRAMバッファは、ビデオデータがディスプレイパネル内のバッファ内に記憶されるため、シャットダウンされることができる。MIPIデータ3410のフレームN 3414では、MIPIデータは、通常モードに戻り、それによって、システムをウェイクアップする。しかしながら、ディスプレイは、もはやDB MIPI出力と同期されないため、ディスプレイは、第3のフレーム3424の最後のコピーを表示することによって、通常モードの第1のフレームを考慮しない。N+1フレーム3426から開始して、ディスプレイ出力ビデオは、ウェイクアップし、同期し、通常モードで動作する。ディスプレイパネル自己リフレッシュは、その間、コンテンツが、大抵、定常である、スプラッシュスクリーンの表示の間に生じてもよい。
(部分暗化低電力モード)
部分暗化低電力モードのためのトリガは、特定のVR/AR/MRユーザ姿勢/視野内の閾値量の非黒色コンテンツの存在である。図20は、コンテンツが画面2000の上部2002にのみ配置される、第1の部分暗化低電力モードを描写する。そのようなコンテンツの実施例は、ステータスバー、バッテリ充電レベル、音量設定等を含む。本モードにおけるDPソースは、SDPメッセージ内に規定された所定の数の行後、電力低下シーケンス(完全暗化低電力モードに関して上記に説明されたものに類似する)を開始するであろう。SDPメッセージは、第1の部分暗化低電力モードと、フレーム内のアクティブな行の数とを示してもよい。本第1の部分暗化低電力モードは、メモリへのDB書込、メモリからのピクセルエンジンフェッチ、ピクセルエンジン処理、MIPI出力等の量を低減させることによって、電力を保存することができる。
図21は、コンテンツが画面2100の上部2102および中央2104に配置される、第2の部分暗化低電力モードを描写する。本第2の部分暗化低電力モードでは、GPUは、図22に示されるように、出力データを再編成し、アクティブ行の数を最小限にしてもよい。図22では、図21における画面2100の中央2104におけるコンテンツは、画面2200の上部2202におけるコンテンツに隣接するように変位された画像データ2204’として移動されている。画像データを再編成することは、アクティブ行の数を低減させ(図22Aに描写される)、それによって、ディスプレイパイプラインコンポーネントの全体的電力消費を低減させる。
上部画像データ2202および変位された画像データ2204’が、画像パイプラインを通して前進した後、画像パイプラインのコンポーネントは、本明細書に説明されるように、部分暗化低電力モードに置かれ、電力を保存する。DB内のピクセルエンジンは、画像データのセグメント化を実施し、SDPからのデータ構成を使用して、変位された画像データ2204’を再マッピングし、図21に示されるソース画像2100を再形成する。アクティブ行の数を低減させること(図22A参照)は、DPリンクのより早いシャットダウンを促進する。
図23は、コンテンツが画面2300の中央2304にのみ配置される、第3の部分暗化低電力モードを描写する。図21および22に示されるモードのように、GPUは、図24および24Aに示されるように、画面2400の上部に変位された画像データ2404’としてそれを移動させることによって、中央データ2304を再編成してもよい。
変位された画像データ2404’が、画像パイプラインを通して前進した後、画像パイプラインのコンポーネントは、本明細書に説明されるように、部分暗化低電力モードに置かれ、電力を保存する。DB内のピクセルエンジンは、画像データのセグメント化を実施し、SDPからの構成データを使用して、変位された画像データ2404’を再マッピングし、図23に示されるソース画像2300を再形成する。
図20-24に描写され、上記に説明される、3つの部分暗化低電力モードでは、SDPメッセージは、DP受信機に、アクティブ行の数において、両モードについて知らせる。これは、DP受信機が、アクティブ行がGPUからDBに通信された後、シャットダウンすることを可能にする。圧縮が有効にされる、実施形態では、圧縮は、随意に、アクティブ行の数に応じて、無効にされてもよい。例えば、最小セットの行が、圧縮を有効にするために要求されてもよい、または圧縮は、電力効率を改良するために、単に、VESA
DSCスライスの数を変動させて、常時、有効にされてもよい。
DSCスライスの数を変動させて、常時、有効にされてもよい。
他の実施形態では、図22-24に描写され、上記に説明される、水平パッキングは、垂直パッキングと置換される、または組み合わせられてもよい。いくつかの実施形態では、図22-24は、いくつかのモードを図示するが、単一ストリーム上の1つ以上の別個の領域が、データレートを低減させるように圧密化されてもよい。いくつかの実施形態では、別個の領域の数は、他の制約に基づいて、実装をより実践的にするように限定されてもよい。
図24Bは、いくつかの実施形態による、部分暗化モード2450に移行し、それを持続する、ディスプレイシステムのMIPIタイミングを図式的に描写する。システムは、フレーム内の非黒色主題が表示された後、2452において、部分暗化モードに移行する。いくつかの実施形態では、ディスプレイパネルは、実際には、自己リフレッシュに作用しているが、黒色ピクセルのみを表示する。したがって、完全暗化モードからの電力節約の有意な部分は、MIPI受信機、メモリ、DB、光源、および光ファイバ系コネクタのシャットダウンに由来する。部分暗化モード2450は、ビデオストリーム1 924にのみ作用し得る。したがって、ビデオストリーム2 926が、部分暗化モード2450によって影響されることはあり得ない。
(部分的画面リフレッシュモードのためのカスタムパッキング)
(部分的画面リフレッシュモードのためのカスタムパッキング)
AR/MRモードでは、潜在的に、実世界からの光に対する修正を表さない、多数の黒色ピクセルが存在する。しかしながら、黒色ピクセルおよび対応する非黒色ピクセルは、単純水平または垂直パッキングが扱いにくいような複雑なパターンで配列され得る。
部分的画面リフレッシュモードのためのカスタムパッキングでは、GPUは、前のフレームから現在レンダリングされているフレームに変化している、領域/部分/セクション/タイル(例えば、スクエア形状のタイル)のみが、DPを介して、GPUからDBに送信されるように、画像データを再編成してもよい。SDPメッセージは、部分的画面リフレッシュモードのためのカスタムパッキングが有効にされたこと、FOV内の種々の変化されたタイルの場所等を示す、情報を含んでもよい。DBは、FOV内の種々の変化されたタイルの場所を使用して、種々の変化されたタイルを出力バッファ内の適切な場所に記憶することができる。
図25に示されるように、GPUは、それらが最小数の行の画像データを形成するように、変化されたタイルをパッキングするであろう。ソースフレーム2502は、種々の黒色ピクセルと、非黒色ピクセルとを含む、仮想画像を示す。ソースフレーム2502を送信することは、ある数(例えば、960個)の行がGPUからDBに送信されることを要求するであろう。折畳されたフレーム2504は、変化された画像データを含む、タイルが、ここで、折畳されたフレーム2504の上部にパッキングされることを示す。折畳されたフレーム2504を送信することは、より少ない数(例えば、160個)の行がGPUからDPに送信されることを要求するであろう。圧縮されたフレーム2506は、折畳されたフレーム2504の上部におけるタイルが、偶数のより少ない行に圧縮されていることを示す。圧縮されたフレーム2506を送信することは、偶数のより小さい数(例えば、80個)の行がGPUからDPに送信されることを要求するであろう。タイルの折畳および圧縮されたフレーム2506を形成するための結果として生じる折畳されたフレーム2504の圧縮は、画像パイプラインの種々のコンポーネントが、フレーム転送/レンダリングインターバルの早期にシャットダウンされ、電力節約を増加させることを可能にする(本明細書に説明されるように)。
本明細書に説明されるように、圧縮されたフレーム2506が、送信および処理された後、GPUは、メインDPリンク上でのk-コード電力低下シーケンスまたはDPCD電力状態コマンドを送信することによって、種々の画像パイプラインコンポーネントのシャットダウンを開始してもよい。シャットダウンは、DPの電力低下を含んでもよい。DPリンクを含む、画像パイプラインコンポーネントの電力低下は、GPUによって、AUXチャネルを介してシグナリングされてもよい。ウェイクアップの間、GPUは、DPリンクドライバに電源投入し、随意に、高速リンク訓練パターンを使用して、リンクを訓練する。
GPUは、ウェイクアップ時間と、コンポーネントシャットダウンからの電力節約対ウェイクアップ時の電力使用量のコスト利点分析とに基づいて、伝送される行の数が、閾値より小さい場合のみ、画像パイプラインコンポーネントに、シャットダウンを指示するであろう。巡回冗長検査(CRC)が、部分的画面リフレッシュモードのためのカスタムパッキングを使用して転送/レンダリングされたフレームの終了時に実施される場合とそうではない場合がある。CRC情報は、AUXチャネルを介して送信されてもよい。
(カスタム部分表示モード/カスタム暗化モード)
(カスタム部分表示モード/カスタム暗化モード)
部分的画面リフレッシュモードのためのカスタムパッキングは、2つの動作モードを有する。カスタム部分表示モードでは、変化されたタイルは、GPUからDBに送信され、ディスプレイパネルによって表示される。
カスタム暗化モードでは、SDPメッセージは、具体的背景色(大部分の場合、黒色)を含む。コンテンツに伴う変化タイルに属さない、視野の任意の領域は、具体的背景色に設定される。カスタム暗化モードは、画像全体が、変化するが、少量のタイルのみが、コンテンツを含有するとき、有効にされることができる。換言すると、以前に画像データを含有していた多くのタイルが、現在のフレームでは、黒色に変換されている。最初に、コンテンツを伴わない領域を黒色に設定することによって、実際のコンテンツを伴うタイルのみが、GPUからDBに送信され、それによって、より早いコンポーネントシャットダウンを伴って、画像パイプ内の電力を節約するであろう。SDPメッセージはまた、暗化または背景タイルの数を含んでもよい。
(混成およびスケーリングのためのカスタムパッキング)
(混成およびスケーリングのためのカスタムパッキング)
マルチストリーム実装が、サポートされない場合、カスタムパッキングモードが、タイルを送信し、前のフレームからのタイルと混成されてもよい(それにわたってコピーされるのではなく)。スクエアまたはラジオ混成質量が、出力のために新しいおよび前のタイルを混成するために、DB上に事前にプログラムされてもよい。
タイルはまた、出力フレームバッファにコピーされる前に、スケーリングされてもよい。SDPメッセージは、タイルをスケーリングする際に使用するためのスケーリング係数を含んでもよい。いくつかの実施形態では、本アプローチは、中心窩化実装のために使用されてもよい。
(カスタムピクセル操作およびレート変換)
(カスタムピクセル操作およびレート変換)
ピクセルエンジンは、画像データをワーピングさせ、画像データがレンダリングされた後であるが、画像データに基づく画像がユーザに表示される前に、ユーザ姿勢変化(例えば、高速頭部回転)から生じるアーチファクトを最小限にすることができる。
レート変換を伴わない、カスタムピクセルワーピングの一実施形態では、GPUは、フレームの開始時に、SDPをDBに送信する。SDPは、圧縮有効/無効、カスタムパッキング有効/無効、カスタムグレースケールモード有効/無効、パケット姿勢等の情報を含有する。GPUはまた、画像データをDBに送信する。圧縮が、有効にされる場合、DBは、適切なアルゴリズムを使用して、画像データを解凍する。画像データが、カラーセグメント化を要求する場合、DBは、カラーセグメント化を実施し、結果をメモリ内に記憶する。ピクセルエンジンは、AUXレジスタ書込、SDPメッセージを介して、または第2のビデオストリームの一部として、構成データを受信する。いくつかの実施形態では、構成データは、更新された頭部姿勢情報を含んでもよい。いくつかの実施形態では、DBは、DBが頭部姿勢更新を生成するために、更新された情報をウェアラブルプロセッサ(例えば、IMUデータ)から受信してもよい。いくつかの実施形態では、IMUは、DBブリッジSPIポートに接続されてもよく、DBは、直接、IMUから、未加工IMUサンプルにアクセスしてもよい。構成データは、メッセージFIFOメモリ内に記憶されてもよい。ピクセルエンジンは、フィールドデータを低電力DDRから読み取り、必要な変換を実施し、出力ピクセルを提供し、ディスプレイパネルを駆動する。DBは、次いで、サポートされるカラーフィールド毎に、上記に説明されるステップを繰り返す。全てのカラーフィールドが、処理された後、DBは、次のフレームに進む。
図26Aは、いくつかの実施形態による、レート変換が有効にされないときの、DBへの入力およびそこからの出力(すなわち、ビデオストリーム1 924内の画像データに関連する)を示す。入力画像データが、カラーシーケンシャルモードにおいてフォーマットされなかったため、DBは、画像データ2602をセグメント化し、画像データの第1の出力フレーム「DP出力フレーム0」2604をディスプレイパネルに送信する前に、画像データの第1の完全フレーム(「DP入力フレーム0」)2602を受信しなければならない。同様に、DBは、第2の出力フレーム2608をディスプレイパネルに送信し得る前に、画像データの第2の完全フレーム2606全体を受信しなければならない。これは、各画像データの受信と、ディスプレイパネルへの対応する出力フレームの送信との間に、8.33msの待ち時間をもたらす。本遅延は、非理想的である。
図26Bは、いくつかの実施形態による、レート変換が有効にされないときの、DBへの入力およびそこからの出力(すなわち、ビデオストリーム1 924内の画像データに関連する)を示す。入力画像データは、カラーシーケンシャルモードでフォーマットされたため、第1のカラーフィールド(例えば、赤色)画像データ2602Rは、画像フレームの終了にかなり先立って受信される。故に、第1のカラーフィールド2604Rに対応する、出力フレーム画像データは、画像パイプライン内でより早く、ディスプレイパネルに送信されることができる。グレースケールカラーセグメント化モードを使用して、待ち時間は、8.33msから2.78msに低減されることができる。
(レート上方変換)
(レート上方変換)
図26Cは、いくつかの実施形態による、レート変換が有効にされるときの、DBへの入力およびそこからの出力(すなわち、ビデオストリーム1 924内の画像データに関連する)を示す。DBは、画像データを60Hzで受信するが、画像データを120Hzで出力する。いくつかの実施形態では、DBは、画像データを45Hzで受信するが、画像データを90Hzで出力する。画像データ周波数にかかわらず、出力画像データは、フレームレートを2倍にする。図26Cに描写される実施形態では、入力画像データは、図26Aに描写される実施形態のように、カラーシーケンシャルモードでフォーマットされなかった。故に、DBによる画像データのフレームの受信2602と、DBによる画像データのフレームの送信2604との間には、8.33msの待ち時間が存在する。本レート上方変換画像パイプラインにおける差異は、画像データの出力フレーム2604が、速さを2倍にし、有効リフレッシュレートを、60Hzから、120Hzに2倍にする、各カラーフィールドを含み、ピクセルエンジンが、各フィールドが、着信画像をワーピングさせ、2つの出力フレームのそれぞれに関してゼロ待ち時間の効果を有するために、頭部姿勢を更新するであろうことである。図26Cに描写されるパイプラインはまた、画像データのフレームを順次受信するステップの間に、DPオフセグメント2610を含み、電力を節約する。GPUをより低いリフレッシュレート(例えば、60Hz)で起動させることもまた、電力を節約する。圧縮が、待ち時間を低減させるために使用されることができる。
(ワーピングを用いたレート上方変換)
(ワーピングを用いたレート上方変換)
図26Dは、いくつかの実施形態による、レート変換およびワーピングが有効にされるときの、DBへの入力およびそこからの出力(すなわち、ビデオストリーム1 924内の画像データに関連する)を示す。図26Dに描写される画像パイプラインは、図26Cに描写される画像パイプラインに類似する。差異は、図26Dがまた、SDPおよびAUXメッセージがGPUからDB内のピクセルエンジンに送信されていることを示すことである。SDPおよびAUXメッセージは、より正確な画像レンダリングのために、レンダリングされた画像データをワーピングさせるために使用され得る、現在の姿勢情報を含む。現在の姿勢情報は、1,000Hzで起動している、IMUによって提供されてもよい。DBは、ワーピングにおいて使用するために、パケット姿勢および現在の姿勢から、姿勢デルタを算出する。現在の姿勢情報の受信とレンダリングされた画像データのワーピングとの間の時間を最小限にすることは、正確度を増加させる。AUXチャネルが、DPが電力低下されるとき、SDPチャネルの代わりに使用される。図26Dに描写されるワーピングはまた、SDP/AUXメッセージ内の歪曲情報を使用して、光学スタック内の種々のコンポーネントの物理的歪曲に対処することができる。
上記の画像パイプラインの全てにおいて、並行した入力の受信、処理、および出力の伝送は、入力と表示との間の待ち時間および画像パイプライン内の遅延を最小限にする。
合成ビデオストリーム2 926は、解凍されたRGB888パッキングデータストリームであり得る。故に、ビデオストリーム2 926のためのレート変換は、2回のフレームレート上方変換のために、データストリームを複製するという単純なものであり得る。
(部分暗化追跡マスク)
(部分暗化追跡マスク)
いくつかの実施形態では、GPUは、各フレームをタイルのグループ(例えば、行)にセグメント化し、タイルの特定のグループ(例えば、行)が非黒色コンテンツを有するかどうかを示す、マスクを生成してもよい。GPUは、マスクを使用して、レンダリング出力を画像パイプラインの下流コンポーネントに生成してもよい。新しいマスクは、新しいフレーム毎に生成されてもよい。画像パイプラインコンポーネントは、動的回路ネットワーク(DCN)によって、通信可能に結合されてもよい。
一実施形態では、フレームは、1,760行のピクセルを有してもよく、タイルの各行は、16行のピクセルを有してもよい。本実施形態では、110ビットが、各フレーム内の110個のタイル行の黒色/非黒色ステータスを記憶するために使用されてもよい。全て黒色のタイル行に対応するビットは、ゼロに設定されることができ、非黒色タイル行に対応するビットは、1に設定されることができる。ビットは、ゼロにデフォルト設定され、タイル行が非黒色であるとき、1に設定されてもよい。GPUまたは別の画像パイプラインコンポーネントは、これらのビット内の情報を使用して、DCN上に送信されるべき非黒色タイル行を選択する。GPUまたは別の画像パイプラインコンポーネントは、これらのビット内の情報を使用して、本明細書に説明されるように、非黒色タイル行をパッキングおよびパッキング解除してもよい。
本明細書に説明されるように、非黒色タイル行のみを送信し、これらの行をパッキングすることは、限定ではないが、以下を含む、電力最適化を実装する機会を増加させる。
・ディスプレイポートリンク電力を低減させる(例えば、行を送信しない、または行のサブセットのみ)
・DPソースプロセッサメモリ帯域幅および電力を低減させる(例えば、DCNが全ての黒色ピクセルをDRAMからフェッチする必要はなく、これは、DRAM帯域幅、DRAM電力、およびDCN電力を保存する)
・DSCが完全フレームをDPソース上で圧縮する必要性を排除する
・DSCへのDPシンクブリッジが完全フレームを解凍する必要性を排除する
・DPシンクブリッジデバイスが完全フレームのカラーセグメント化を実施する必要性を排除する
・DPシンクブリッジデバイスが完全フレームをLPDDRに書き込む必要性を排除し、電力を節約する
・ピクセルエンジンブロックは、完全フレームをLPDDRからフェッチする必要はなく、電力を節約するであろう
・ピクセルエンジンは、ピクセル処理を完全フレーム上で実施する必要はなく、電力を節約するであろう
・低減されたシグナリングを用いて、パネルへのMIPI-TX電力を低減させる
・パネル内のMIPI-RX電力を低減させる
・データを記憶し、またはそのSRAMから読み出す必要がないように防止し、部分的黒色画面をサポートすることによって、パネル電力を低減させる
・ディスプレイポートリンク電力を低減させる(例えば、行を送信しない、または行のサブセットのみ)
・DPソースプロセッサメモリ帯域幅および電力を低減させる(例えば、DCNが全ての黒色ピクセルをDRAMからフェッチする必要はなく、これは、DRAM帯域幅、DRAM電力、およびDCN電力を保存する)
・DSCが完全フレームをDPソース上で圧縮する必要性を排除する
・DSCへのDPシンクブリッジが完全フレームを解凍する必要性を排除する
・DPシンクブリッジデバイスが完全フレームのカラーセグメント化を実施する必要性を排除する
・DPシンクブリッジデバイスが完全フレームをLPDDRに書き込む必要性を排除し、電力を節約する
・ピクセルエンジンブロックは、完全フレームをLPDDRからフェッチする必要はなく、電力を節約するであろう
・ピクセルエンジンは、ピクセル処理を完全フレーム上で実施する必要はなく、電力を節約するであろう
・低減されたシグナリングを用いて、パネルへのMIPI-TX電力を低減させる
・パネル内のMIPI-RX電力を低減させる
・データを記憶し、またはそのSRAMから読み出す必要がないように防止し、部分的黒色画面をサポートすることによって、パネル電力を低減させる
DCNは、直接メモリアクセスコントローラ(DMA)を含み、任意のプロセッサを伴うことなく、非黒色行をDCNの中にフェッチしてもよい。DMAは、マスクを読み取り、非黒色行を識別してもよい。非黒色行は、再編成または再構成(例えば、折畳または圧密化)せずに、DCNおよびDPを介して、ディスプレイエンジンに送信され、電力を保存し得る。
本明細書に説明されるように、非黒色行が、フレームの有意な部分を形成する場合、フレームの再構成または部分暗化モードは、電力を保存し得ない。そのようなフレームは、直接、DCNを介して、DPシンクブリッジに送信され得る。
(付加的側面)
(付加的側面)
請求される発明に加え、非限定的実施例として、本発明のさらなる実施形態または側面が、本明細書に説明される。
1.仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを受信するステップと、
GPUが、前の画像データのフレームから変化している、画像データのフレーム内の複数の領域/部分/セクション/タイルを識別するステップと、
GPUが、複数の領域/部分/セクション/タイルのうちの少なくともいくつかをデータのフレームの開始に移動させ、画像データの並べ替えられたフレームを形成するステップと、
GPUが、画像データの並べ替えられたフレームをDBに送信するステップと、
GPUの一部/コンポーネント/機能をシャットダウンするステップと、
GPUとDBとの間の通信リンクをシャットダウンするステップと、
DBの一部/コンポーネント/機能をシャットダウンするステップと、
DBとディスプレイパネルとの間の通信リンクをシャットダウンするステップと、
ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップと、
を含む、方法。
GPUが、画像データのフレームを受信するステップと、
GPUが、前の画像データのフレームから変化している、画像データのフレーム内の複数の領域/部分/セクション/タイルを識別するステップと、
GPUが、複数の領域/部分/セクション/タイルのうちの少なくともいくつかをデータのフレームの開始に移動させ、画像データの並べ替えられたフレームを形成するステップと、
GPUが、画像データの並べ替えられたフレームをDBに送信するステップと、
GPUの一部/コンポーネント/機能をシャットダウンするステップと、
GPUとDBとの間の通信リンクをシャットダウンするステップと、
DBの一部/コンポーネント/機能をシャットダウンするステップと、
DBとディスプレイパネルとの間の通信リンクをシャットダウンするステップと、
ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップと、
を含む、方法。
2.GPUが、画像データの並べ替えられたフレームをDBに送信前に、画像データの並べ替えられたフレームを圧縮するステップをさらに含む、側面1に記載の方法。
3.画像データの並べ替えられたフレームは、画像データのフレームより小さい、側面1に記載の方法。
4.DBが、画像データの並べ替えられたフレームをバッファ内に記憶するステップをさらに含む、側面1に記載の方法。
5.画像データの並べ替えられたフレームのサイズを決定するステップと、
画像データの並べ替えられたフレームが、所定の最大サイズより小さいときのみ、GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップと、
をさらに含む、側面1に記載の方法。
画像データの並べ替えられたフレームが、所定の最大サイズより小さいときのみ、GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能をシャットダウンするステップと、
をさらに含む、側面1に記載の方法。
6.GPUが、画像データの並べ替えられたフレームをDBに送信後、STPメッセージをDBに送信するステップをさらに含む、側面1に記載の方法。
7.GPUが、SDPを介して、STPメッセージをDBに送信するステップをさらに含む、側面6に記載の方法。
8.GPUの一部/コンポーネント/機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択される、側面1に記載の方法。
9.DBの一部/コンポーネント/機能は、メモリ書込である、側面1に記載の方法。
10.ディスプレイパネルの一部/コンポーネント/機能は、ビデオRAMおよびMIPI受信機から成る群から選択される、側面1に記載の方法。
11.GPUが、ウェイクアップ信号をDBに送信するステップをさらに含む、側面1に記載の方法。
12.GPUは、AUX通信リンクを介して、ウェイクアップ信号を送信する、側面11に記載の方法。
13.GPUの一部/コンポーネント/機能、GPUとDBとの間の通信リンク、DBの一部/コンポーネント/機能、DBとディスプレイパネルとの間の通信リンク、ディスプレイパネルの一部/コンポーネント/機能は、非同期して、シャットダウンされる、側面1に記載の方法。
14.DBが、画像データのフレームを画像データの並べ替えられたフレームから再構成するステップをさらに含む、側面1に記載の方法。
15.画像データのフレーム内の複数の領域/部分/セクション/タイル内にない、画像データのフレームの部分を、背景色に設定するステップをさらに含む、側面1に記載の方法。
16.DBが、画像データの並べ替えられたフレームと前の画像データのフレームを混成するステップをさらに含む、側面1に記載の方法。
17.DBが、前の画像データのフレームを、画像データの並べ替えられたフレームとそれを混成する前に、マスクするステップをさらに含む、側面16に記載の方法。
18.DBが、画像データの並べ替えられたフレームと更新された中心窩化領域に関連する画像データを混成するステップをさらに含む、側面1に記載の方法。
19.DBが、画像データの並べ替えられたフレームをスケーリングするステップをさらに含む、側面1に記載の方法。
20.DBが、スケーリング係数をGPUから受信するステップと、
DBが、スケーリング係数を使用して、画像データの並べ替えられたフレームをスケーリングするステップと、
をさらに含む、側面18に記載の方法。
DBが、スケーリング係数を使用して、画像データの並べ替えられたフレームをスケーリングするステップと、
をさらに含む、側面18に記載の方法。
21.スケーリングは、中心窩化動作の一部である、側面18に記載の方法。
22.DBが、ある機能を画像データ上で実施するステップであって、機能は、ワーピング、ピクセル化された調光、オクルージョン、色収差補正、フレームレート、および拡張から成る群から選択される、ステップをさらに含む、側面1に記載の方法。
23.GPUの一部/コンポーネント/機能をシャットダウンする前に、画像データの並べ替えられたフレームをFIFOメモリ内に記憶するステップをさらに含む、側面1に記載の方法。
24.DBが、内蔵ライン制御メッセージをディスプレイパネルに送信するステップをさらに含む、側面1に記載の方法。
(MIPI出力データ構成)
(MIPI出力データ構成)
本明細書に説明されるように、DBは、GPUから受信された画像データを処理し、ユーザへの表示のために、処理された画像データをディスプレイパネルに送信する。グレースケールフォーマットでは、ディスプレイパネルは、カラーシーケンシャル表示のために、全ての赤色ピクセルの後に、全ての緑色ピクセル、次いで、全ての青色ピクセルが続く、MIPIリンクフォーマットを通して、画像データを受信し、そうでなければ標準的パッキングされたRGBが、使用される。Y×Xのディスプレイ分解能と仮定して、MIPI受信機からの出力タイミングは、Y/3×3Xとなるであろう。各行は、色の3分の1のみが送信されているため、ピクセルの3分の1を有するであろうが、行の数は、3倍になるであろう。また、シグナリングのための付加的24行およびVSA、VBP、およびVFPのための3行は、5,307行をもたらす。
図27は、いくつかの実施形態による、サンプルMIPI受信機出力データ2700を描写する。出力データ2700は、VSYNC開始パケット2702を含み、その後、第1のブランキングパケット/VBP2704が続き、その後、ピクセルエンジン2706によって生成された画像データが続き、その後、第2のブランキングパケット/VFP2708およびEOTパケット2710が続く。
図28に示されるように、ピクセルエンジンによって生成された画像データ2706は、HSYNC開始パケット2812から成り、その後、第1のブランキングパケット/HBP2814が続き、その後、1行の画像データおよび/または長パケットフォーマット2816における内蔵シグナリングデータが続き、その後、第2のブランキングパケット/HFP2818が続く。
図29は、圧縮が使用されないときの、いくつかの実施形態による、分化された赤色、緑色、および青色ピクセル行を伴う、ビデオフレームに対応する、サンプルMIPI受信機出力データ2900を描写する。各カラーフィールドは、各行内に480ピクセルを伴う、1,760個の個々の行を含む。出力データ2900は、VSYNC開始パケット2902を含み、その後、第1のブランキングパケット/VBP2904が続き、その後、ピクセルエンジン2906によって生成された画像データが続き、その後、第2のブランキングパケット/VFP2908およびEOTパケット2910が続く。ピクセルエンジン2906によって生成された画像データは、HSYNC開始パケット2912から成り、その後、第1のブランキングパケット/HBP2914が続き、その後、1行の画像データおよび/または長パケットフォーマット2916における内蔵シグナリングデータが続き、その後、第2のブランキングパケット/HFP2918が続く。画像データ2916は、第1のシグナリング行2920を含み、その後、第1のカラー(赤色)フィールド行2922が続き、その後、第2のシグナリング行2924が続き、その後、第2のカラー(緑色)フィールド行2926が続き、その後、第3のシグナリング行2928が続き、その後、第3のカラー(青色)フィールド行2930が続く。
(完全暗化低電力モード)
(完全暗化低電力モード)
完全暗化低電力モード(上記に説明される)では、DBは、ディスプレイパネルに、図30に示されるように、第1のシグナリング行3020を使用して、その低電力モードへの移行を通信するであろう。低電力モードへの移行が、通信された後、DBは、低電力モード(LP11)に移行するであろう。ディスプレイパネルはまた、MIPI受信機をLP11モードに設置することによって、電力を保存し、任意の情報をパネルビデオRAM内に記憶せず、任意の情報をパネルビデオRAMから読み出さないであろう。
図38は、完全暗化低電力モードを開始するためにDBに通信される、画像フレームデータ3030のMIPIタイミングを図式的に描写する。本明細書に説明されるように、画像フレームデータ3030は、通常画像モードのものに類似する。例外は、GPUが、垂直ブランクSDPメッセージを画像フレームデータ3030内に書き込み、完全暗化モードを開始することである。
(部分暗化低電力モード)
(部分暗化低電力モード)
種々の部分暗化低電力モード(上記に説明される)では、DBは、図31に示されるように、カラーフィールド行3122、3126、3130に先行する、対応するシグナリング行3120、3124、3128内のカラーフィールド毎に、部分暗化低電力モードのパラメータ(例えば、低電力モード有効およびアクティブ行の数)を通信するであろう。部分暗化低電力モードのためのフレームのタイミングは、図29に描写されるカラーフィールドディスプレイに関するものに類似するが、例外は、カラーフィールドあたり画像データを含有する1,760行のプログラム可能変数割合のみが、MIPIリンクを通して、DBからディスプレイパネルに送信されることである。画像データを含有する、行が、受信された後、MIPIリンクは、全ての黒色行の間、低電力またはLP11モードに置かれ、電力を保存し、各フィールドに先立って、LP11を終了する。
図31Aは、本明細書に説明されるもの等のいくつかの実施形態による、部分暗化低電力モードで動作するDBの2つのサイクルのためのMIPIタイミング3150を図式的に描写する。3152では、フレームNの表示の間、ピクセルエンジンは、フレームN+1のための上位ワイヤ内のアクティブ行の数ために適切な値を設定する。3154では、フレームNの表示の間、DB MIPIシステムは、フレームN+1のためのそれらのワイヤをフェッチおよびラッチする。同様に、3156では、フレームN+1の表示の間、ピクセルエンジンは、フレームN+2のための上位ワイヤ内のアクティブ行の数のための適切な値を設定する。3158では、フレームN+1の表示の間、DB MIPIシステムは、フレームN+2のためのそれらのワイヤをフェッチおよびラッチする。
図31Bは、いくつかの実施形態による、部分暗化低電力モードから完全暗化低電力に移行するDBの2つのサイクルのためのMIPIタイミング3150を図式的に描写する。3162では、フレームNの表示の間、ピクセルエンジンは、フレームN+1のための上位ワイヤ内の完全暗化(すなわち、ゼロ)に対応するアクティブ行の数のための値を設定する。3164では、フレームNの表示の間、DB MIPIシステムは、フレームN+1のためのそれらのワイヤをフェッチおよびラッチする。ワイヤ内の完全暗化値に起因して、フレームN+1は、完全に暗化される。
図35は、上記に説明されるもの等のいくつかの実施形態による、部分暗化低電力モードで動作するDBの2つのサイクルのためのMIPIタイミング3500を図式的に描写する。各サイクル/フレームでは、DBが低電力モードで動作している、部分が存在する。本時間の間、DPは、オフにされ、それに応答して、光ファイバ系コネクタもまた、オフにされる。全てのサイクル/フレームの間、DBのこれらの2つのコンポーネントをオフにすることは、システム電力を節約する。いくつかの実施形態では、サイクル/フレームの低電力部分は、サイクルの約半分である。DBのコンポーネントをシャットダウンするための可能性として考えられる理由は、限定ではないが、以下を含む。
1)正常ディスプレイサブシステムがシャットダウンする
2)正常ディスプレイサブシステムが低電力モードに移行する
3)アクティブラインがディスプレイフレーム毎に送信された後、電力の節約が、ラインがシャットダウンされることを要求する、正常動作の間
4)本明細書に説明されるであろうように、要求されたアクティブラインが送信された後の部分暗化モードの間
5)本明細書に説明されるように、完全暗化モードに移行するため
6)本明細書に説明されるように、フレーム繰り返しモードに移行するため
(スケーリングを用いた低減された分解能レンダリング(セクション毎中心窩化レンダリング))
1)正常ディスプレイサブシステムがシャットダウンする
2)正常ディスプレイサブシステムが低電力モードに移行する
3)アクティブラインがディスプレイフレーム毎に送信された後、電力の節約が、ラインがシャットダウンされることを要求する、正常動作の間
4)本明細書に説明されるであろうように、要求されたアクティブラインが送信された後の部分暗化モードの間
5)本明細書に説明されるように、完全暗化モードに移行するため
6)本明細書に説明されるように、フレーム繰り返しモードに移行するため
(スケーリングを用いた低減された分解能レンダリング(セクション毎中心窩化レンダリング))
いくつかの実施形態では、VR/AR/MRシステムは、ユーザの焦点の面積に対応する仮想画像をより高い分解能でレンダリングする一方、背景仮想画像をより低い分解能でレンダリングするために、セクション毎中心窩化レンダリングを使用して、電力を保存することができる。セクション毎中心窩化レンダリングを使用することは、GPU算出およびシステムの電力使用量を低減させ得る。ウェアラブル上のDBは、ピクセルエンジンおよび最新眼追跡データを使用して、表示のために、背景および中心窩化コンテンツをより高い分解能でマージする。セクション毎中心窩化レンダリングは、マルチストリーム実装のために最適化される。そのような実装では、各ストリームは、その独自の画像パイプラインと、DBとを有する。代替として、カスタムパッキングが、マルチストリーム実装が利用不可能である場合、複数のストリームが、VESA SSTモードでは、単一ビデオストリームを共有するように、使用されることができる。
(動的オクルージョン)
(動的オクルージョン)
いくつかの実施形態では、VR/AR/MRシステムは、例えば、可能性として考えられるパイプライン内の最終段階において、オクルードされる仮想コンテンツを画像パイプラインから排除することによって、電力を保存することができる。DBは、ウェアラブルからの深度マップを使用して、必要に応じて、仮想コンテンツをマスクすることができる(例えば、高速で移動する手によるオクルージョンのため)。DPは、表示の直前に、仮想コンテンツをマスクし、GPU上でのマスクと比較して、待ち時間を低減させることができる。GPUは、依然として、オクルージョンをコンテンツ上で実施するが、パイプライン待ち時間に起因して、全てのものをオクルードすることが不可能である場合がある。レンダリングされたコンテンツは、GPUからDBに送信され、そこで、例えば、3ms以下の待ち時間で、深度マップを使用してマスクされ、表示のために、ディスプレイパネルに送信される。
(解凍された高帯域幅データ)
(解凍された高帯域幅データ)
解凍された高帯域幅データは、種々のチャネル(例えば、VESA規格のMST)を使用して、GPUからDBに送信されることができる。本解凍された高帯域幅データは、オクルージョン、セグメント化された調光、制御、幾何学的歪曲LUT、中心窩化において使用するための組み合わせられたストリームの一部として、送信されることができる。いくつかの実施形態では、第1のビデオストリームは、一次パネルのための圧縮された画像データを伝送するために使用されることができ、第2のビデオストリームは、解凍された高帯域幅データを伝送するために使用されることができる。MIPIプリエンファシスサポートが内蔵されたDBは、RX EQ問題点およびディスプレイとDBとの間のより大きい距離を補償する。
(オフセットを伴った前のフレームの繰り返し)
(オフセットを伴った前のフレームの繰り返し)
いくつかの実施形態では、画像コンテンツは、ユーザの頭部が若干移動するにつれて、フレーム毎に変化せず、むしろ、いくつかのピクセルを上または下に偏移させる。GPUに全てのピクセルを再び引き出すようにタスクを課すのではなく、オフセットを伴って前のフレームを繰り返すモードは、GPUが、コンテンツを移動させるために、再レンダリングをバイパスし、すでにDBメモリ上に記憶されている、オフセット値を使用して単純変換を実施することを可能にする。本モードでは、GPUは、頭部姿勢更新のみを使用して、オフセット値を計算し、それによって、あまり多くのデータがウェアラブルに転送されないため、有意なGPU電力およびDP電力およびファイバ光学系チャネル電力を節約し得る(すなわち、頭部姿勢更新)。
(黒色部分マスク)
(黒色部分マスク)
図36Aは、いくつかの実施形態による、ARビュー3600を描写する。グラフィカルユーザインターフェース3610は、ARシステムが動作するにつれて、変化し得る。しかしながら、グラフィカルユーザインターフェース3610の外側のフレームの部分は、典型的には、変化せず、したがって、フレーム3620の黒色/無光部分としてレンダリングされるであろう(図36B参照)。図36Bに示されるフレーム3620の黒色部分は、いくつかの実施形態では、フレーム毎に同一のままであろう。故に、DBは、フレーム3620の黒色部分をフェッチしない、またはそれに作用(例えば、ワーピング)しないであろう。フレーム3620の黒色部分から作製されるマスクを使用して、GPUは、DPを経由してDBに送信される、行あたりの開始列/終了列対を生成してもよい。それに応答して、DBは、行あたりの開始列と終了列との間の画像情報のみをメモリからフェッチするであろう。本技法は、インターリーブ分割多重アクセス(IDMA)アクティブ時間を実質的に低減させ、これは、DBが低電力モードに移行し得る前の時間を低減させる。
本開示のある側面、利点、および特徴が、本明細書に説明される。必ずしも、全てのそのような利点が、任意の本開示の特定の実施形態に従って達成され得るわけではないことを理解されたい。したがって、本開示は、必ずしも、本明細書に教示または提案され得るような他の利点を達成せずに、本明細書に教示されるような1つの利点または利点のグループを達成または最適化するように、具現化される、または行われてもよい。
実施形態は、付随の図面に関連して説明されている。しかしながら、図は、正確な縮尺で描かれていないことを理解されたい。距離、角度等は、単に、例証的であって、必ずしも、図示されるデバイスの実際の寸法およびレイアウトと正確な関係を持つわけではない。加えて、前述の実施形態は、当業者が、本明細書に説明されるデバイス、システム、方法、および同等物を作製および使用することを可能にするために、詳細なレベルで説明されている。様々な変形例も、可能性として考えられる。コンポーネント、要素、および/またはステップは、改変される、追加される、除去される、または再配列されてもよい。
本明細書に説明されるデバイスおよび方法は、有利なこととして、少なくとも部分的に、例えば、コンピュータソフトウェア、ハードウェア、ファームウェア、またはソフトウェア、ハードウェア、およびファームウェアの任意の組み合わせを使用して、実装されることができる。ソフトウェアモジュールは、本明細書に説明される機能を実施するために、コンピュータのメモリ内に記憶される、コンピュータ実行可能コードを含むことができる。いくつかの実施形態では、コンピュータ実行可能コードは、1つ以上の汎用コンピュータによって実行される。しかしながら、当業者は、本開示に照らして、汎用コンピュータ上で実行されるためのソフトウェアを使用して実装され得る、任意のモジュールもまた、ハードウェア、ソフトウェア、またはファームウェアの異なる組み合わせを使用して、実装されることができることを理解するであろう。例えば、そのようなモジュールは、集積回路の組み合わせを使用して、ハードウェア内に完全に実装されることができる。代替として、または加えて、そのようなモジュールは、完全または部分的に、汎用コンピュータによってではなく、本明細書に説明される特定の機能を実施するように設計される、特殊コンピュータを使用して、実装されることができる。加えて、少なくとも部分的に、コンピュータソフトウェアによって行われる、または行われ得る、方法が、説明される場合、そのような方法は、コンピュータまたは他の処理デバイスによって読み取られると、その方法を行わせる、非一過性コンピュータ可読媒体上に提供され得ることを理解されたい。
ある実施形態は、明示的に説明されているが、他の実施形態も、本開示に基づいて、当業者に明白となるであろう。
本明細書に説明される種々のプロセッサおよび他の電子コンポーネントは、光を投影するための任意の光学システムと併用するために好適である。本明細書に説明される種々のプロセッサおよび他の電子コンポーネントはまた、音声コマンドを受信するための任意のオーディオシステムと併用するために好適である。
本開示の種々の例示的実施形態が、本明細書に説明される。これらの実施例は、非限定的意味で参照される。それらは、本開示のより広く適用可能な側面を例証するために提供される。種々の変更が、説明される本開示に行われてもよく、本開示の真の精神および範囲から逸脱することなく、均等物が代用されてもよい。加えて、多くの修正が、特定の状況、材料、組成物、プロセス、プロセス作用、またはステップを本開示の目的、精神、または範囲に適合させるために行われてもよい。さらに、当業者によって理解されるであろうように、本明細書で説明および図示される個々の変形例はそれぞれ、本開示の範囲または精神から逸脱することなく、他のいくつかの実施形態のうちのいずれかの特徴から容易に分離され得るか、またはそれらと組み合わせられ得る、離散コンポーネントおよび特徴を有する。全てのそのような修正は、本開示と関連付けられる請求項の範囲内であることが意図される。
本開示は、主題デバイスを使用して実施され得る方法を含む。本方法は、そのような好適なデバイスを提供する行為を含んでもよい。そのような提供は、エンドユーザによって実施されてもよい。換言すると、「提供する」行為は、単に、エンドユーザが、本主題の方法において必要なデバイスを取得する、それにアクセスする、それに接近する、それを位置付ける、それを設定する、それをアクティブ化する、それに電源を入れる、または別様にそれを提供するように作用することを要求する。本明細書に列挙される方法は、論理的に可能な列挙されたイベントの任意の順序およびイベントの記載された順番で行なわれてもよい。
本開示の例示的側面が、材料選択および製造に関する詳細とともに、上記に記載されている。本開示の他の詳細に関して、これらは、上記で参照された特許および出版物に関連して理解され、概して、当業者によって公知である、または理解され得る。同じことが、一般または論理的に採用されるような付加的な行為の観点から、本開示の方法ベースの側面に関しても当てはまり得る。
加えて、本開示は、種々の特徴を随意的に組み込む、いくつかの実施例を参照して説明されているが、本開示は、本開示の各変形例に関して検討されるように説明および指示されるものに限定されるものではない。種々の変更が、説明される本開示に行われてもよく、均等物(本明細書に列挙されるか、またはある程度の簡潔目的のために含まれないかどうかにかかわらず)が、本開示の真の精神および範囲から逸脱することなく代用されてもよい。加えて、値の範囲が提供される場合、その範囲の上限と下限との間の全ての介在値および任意の他の述べられた値または述べられた範囲内の介在値が、本開示内に包含されるものと理解されたい。
また、説明される変形例の任意の随意的な特徴は、独立して、または本明細書に説明される特徴のうちの任意の1つ以上のものと組み合わせて、記載および請求され得ることが検討される。単数形項目の言及は、存在する複数の同一項目が存在する可能性を含む。より具体的には、本明細書および本明細書に関連付けられた請求項で使用されるように、単数形「a」、「an」、「said」、および「the」は、別様に具体的に述べられない限り、複数の言及を含む。換言すると、冠詞の使用は、上記の説明および本開示と関連付けられる請求項における本主題の項目のうちの「少なくとも1つ」を可能にする。さらに、そのような請求項は、任意の随意の要素を除外するように起草され得ることに留意されたい。したがって、本文言は、請求項の要素の列挙と関連する「単に」、「のみ」、および同等物等の排他的専門用語の使用、または「消極的」限定の使用のための先行詞としての役割を果たすことが意図される。
そのような排他的用語を使用しなければ、本開示と関連付けられる請求項における用語「~を備える」は、所与の数の要素がそのような請求項で列挙されるにかかわらず、任意の付加的要素の包含を可能にするものとする、または特徴の追加は、そのような請求項に記載される要素の性質を変換すると見なされ得る。本明細書で具体的に定義される場合を除いて、本明細書で使用される全ての技術および科学用語は、請求項の正当性を維持しながら、可能な限り広い一般的に理解されている意味を与えられるべきである。
本開示の範疇は、提供される実施例および/または本主題の明細書に限定されるものではなく、むしろ、本開示と関連付けられる請求項の用語の範囲のみによって限定されるものとする。
前述の明細書では、本開示は、その具体的実施形態を参照して説明された。しかしながら、種々の修正および変更が、本開示のより広範な精神および範囲から逸脱することなく、そこに成され得ることは明白となるであろう。例えば、前述のプロセスフローは、プロセスアクションの特定の順序を参照して説明される。しかしながら、説明されるプロセスアクションの多くの順序は、本開示の範囲または動作に影響を及ぼすことなく、変更されてもよい。明細書および図面は、故に、限定的意味ではなく、例証的であると見なされるものとする。
Claims (15)
- 仮想、拡張、または複合現実システムにおける方法であって、
GPUが、仮想画像を有しない完全暗化フレームの形態の仮想画像データの不在を決定または検出することと、
前記GPUの一部、コンポーネント、または機能をシャットダウンすることと、
前記GPUとDBとの間の通信リンクをシャットダウンすることと、
前記DBの一部、コンポーネント、または機能をシャットダウンすることと、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすることと、
前記ディスプレイパネルの一部、コンポーネント、または機能をシャットダウンすることと
を含む方法。 - フレームデータを再編成し、転送時間を低減させることをさらに含む、請求項1に記載の方法。
- 前記GPUが、STPメッセージを前記DBに送信することをさらに含む、請求項1に記載の方法。
- 前記GPUが、補助チャネルを介して通信されるAUXメッセージを介して前記STPメッセージを前記DBに送信することをさらに含む、請求項3に記載の方法。
- 前記GPUの一部、コンポーネント、または機能をシャットダウンすることは、前記GPU全体をシャットダウンすることを含まず、前記GPUの前記一部、コンポーネント、または機能は、メモリ読取、圧縮、およびカラーセグメント化から成る群から選択される、請求項1に記載の方法。
- 前記DBの前記一部、コンポーネント、または機能は、メモリ書込である、請求項1に記載の方法。
- 前記ディスプレイパネルの前記一部、コンポーネント、または機能は、ビデオRAMおよびMIPI受信機から成る群から選択される、請求項1に記載の方法。
- 前記GPUが、ウェイクアップ信号を前記DBに送信することをさらに含む、請求項1に記載の方法。
- 前記GPUは、AUX通信リンクを介して、前記ウェイクアップ信号を送信する、請求項8に記載の方法。
- 前記GPUが、ウェイクアップ信号を前記GPUとDBとの間の前記通信リンクに送信することをさらに含む、請求項1に記載の方法。
- 前記GPUの前記一部、コンポーネント、または機能、前記GPUとDBとの間の前記通信リンク、前記DBの前記一部、コンポーネント、または機能、前記DBとディスプレイパネルとの間の前記通信リンク、前記ディスプレイパネルの前記一部、コンポーネント、または機能は、非同期して、シャットダウンされる、請求項1に記載の方法。
- 前記DBが、内蔵ライン制御メッセージを前記ディスプレイパネルに送信することをさらに含む、請求項1に記載の方法。
- 仮想、拡張、または複合現実システムにおける方法であって、
GPUが、画像データのフレームを取得することと、
前記GPUが、前記画像データのフレームのセクションを識別することと、
直接メモリアクセスコントローラが、前記画像データのさらなる処理を伴わずに、前記画像データのフレームの前記識別されたセクションをDBに送信することと、
前記GPUが、仮想画像を有しない完全暗化フレームの形態の仮想画像データの不在を決定または検出することと、
前記GPUの一部、コンポーネント、または機能をシャットダウンすることと、
前記DMAの一部、コンポーネント、または機能をシャットダウンすることと、
前記GPUとDBとの間の通信リンクをシャットダウンすることと、
前記DBの一部、コンポーネント、または機能をシャットダウンすることと、
前記DBとディスプレイパネルとの間の通信リンクをシャットダウンすることと、
前記ディスプレイパネルの一部、コンポーネント、または機能をシャットダウンすることと
を含む方法。 - 前記画像データのフレームの前記セクションは、非黒色画像データの行である、請求項13に記載の方法。
- 前記GPUが、ウェイクアップ信号を前記DBに送信すること
をさらに含む、請求項13に記載の方法
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962794324P | 2019-01-18 | 2019-01-18 | |
US62/794,324 | 2019-01-18 | ||
PCT/US2020/014163 WO2020150649A1 (en) | 2019-01-18 | 2020-01-17 | Virtual, augmented, and mixed reality systems and methods |
JP2021541273A JP7431244B2 (ja) | 2019-01-18 | 2020-01-17 | 仮想、拡張、および複合現実システムおよび方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021541273A Division JP7431244B2 (ja) | 2019-01-18 | 2020-01-17 | 仮想、拡張、および複合現実システムおよび方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024054180A true JP2024054180A (ja) | 2024-04-16 |
Family
ID=71610085
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021541273A Active JP7431244B2 (ja) | 2019-01-18 | 2020-01-17 | 仮想、拡張、および複合現実システムおよび方法 |
JP2024014022A Pending JP2024054180A (ja) | 2019-01-18 | 2024-02-01 | 仮想、拡張、および複合現実システムおよび方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021541273A Active JP7431244B2 (ja) | 2019-01-18 | 2020-01-17 | 仮想、拡張、および複合現実システムおよび方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11217025B2 (ja) |
EP (1) | EP3912012A4 (ja) |
JP (2) | JP7431244B2 (ja) |
CN (2) | CN115100020A (ja) |
WO (1) | WO2020150649A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10863183B2 (en) * | 2019-06-27 | 2020-12-08 | Intel Corporation | Dynamic caching of a video stream |
US11537854B2 (en) * | 2019-11-08 | 2022-12-27 | Meta Platforms Technologies, Llc | Pipeline with processor including neural network for rendering artificial reality |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63240288A (ja) * | 1987-03-27 | 1988-10-05 | Mitsubishi Electric Corp | カラ−画像伝送装置 |
JPH01141495A (ja) * | 1987-11-27 | 1989-06-02 | Matsushita Electric Ind Co Ltd | カラー画像の符号化方法 |
US6253261B1 (en) * | 1998-10-21 | 2001-06-26 | 3Dlabs Inc., Ltd. | System and method for direct memory access in a computer system |
JP2000197604A (ja) * | 1998-10-28 | 2000-07-18 | Olympus Optical Co Ltd | 内視鏡装置 |
JP2002232725A (ja) * | 2001-02-06 | 2002-08-16 | Sharp Corp | カラーファクシミリ装置 |
JP2003158632A (ja) * | 2001-11-21 | 2003-05-30 | Oki Data Corp | 画像処理方法とこれを実行するための画像処理装置および画像処理システム |
US7614011B2 (en) * | 2004-10-21 | 2009-11-03 | International Business Machines Corporation | Apparatus and method for display power saving |
US20120224062A1 (en) | 2009-08-07 | 2012-09-06 | Light Blue Optics Ltd | Head up displays |
JP4818450B1 (ja) * | 2010-06-30 | 2011-11-16 | 株式会社東芝 | グラフィクスプロセッシングユニットおよび情報処理装置 |
US9165537B2 (en) * | 2011-07-18 | 2015-10-20 | Nvidia Corporation | Method and apparatus for performing burst refresh of a self-refreshing display device |
US10761582B2 (en) * | 2011-08-22 | 2020-09-01 | Nvidia Corporation | Method and apparatus to optimize system battery-life for static and semi-static image viewing usage models |
US9183803B2 (en) * | 2011-10-26 | 2015-11-10 | Samsung Display Co., Ltd. | Display device and driving method thereof |
US9069166B2 (en) * | 2012-02-29 | 2015-06-30 | Recon Instruments Inc. | Gaze detecting heads-up display systems |
US8761448B1 (en) * | 2012-12-13 | 2014-06-24 | Intel Corporation | Gesture pre-processing of video stream using a markered region |
US9947071B2 (en) * | 2014-06-27 | 2018-04-17 | Samsung Electronics Co., Ltd. | Texture pipeline with online variable rate dictionary compression |
US9952652B2 (en) | 2014-12-04 | 2018-04-24 | Htc Corporation | Virtual reality system and method for controlling operation modes of virtual reality system |
US9978180B2 (en) * | 2016-01-25 | 2018-05-22 | Microsoft Technology Licensing, Llc | Frame projection for augmented reality environments |
US10120187B2 (en) * | 2016-02-18 | 2018-11-06 | Nvidia Corporation | Sub-frame scanout for latency reduction in virtual reality applications |
KR102556320B1 (ko) * | 2016-03-04 | 2023-07-14 | 매직 립, 인코포레이티드 | Ar/vr 디스플레이 시스템들에서의 전류 드레인 감소 |
US10447896B2 (en) * | 2016-05-27 | 2019-10-15 | Electronics For Imaging, Inc. | Interactive three-dimensional (3D) color histograms |
CA3034384A1 (en) * | 2016-08-22 | 2018-03-01 | Magic Leap, Inc. | Virtual, augmented, and mixed reality systems and methods |
US10176561B2 (en) * | 2017-01-27 | 2019-01-08 | Microsoft Technology Licensing, Llc | Content-adaptive adjustments to tone mapping operations for high dynamic range content |
US10761591B2 (en) * | 2017-04-01 | 2020-09-01 | Intel Corporation | Shutting down GPU components in response to unchanged scene detection |
US10424084B2 (en) * | 2017-04-28 | 2019-09-24 | Adobe Inc. | Digital content rendering that supports alpha is shape (AIS) as part of knockout groups |
-
2020
- 2020-01-17 WO PCT/US2020/014163 patent/WO2020150649A1/en unknown
- 2020-01-17 EP EP20741190.1A patent/EP3912012A4/en active Pending
- 2020-01-17 US US16/746,393 patent/US11217025B2/en active Active
- 2020-01-17 JP JP2021541273A patent/JP7431244B2/ja active Active
- 2020-01-17 CN CN202210677884.9A patent/CN115100020A/zh active Pending
- 2020-01-17 CN CN202080009565.XA patent/CN113330478B/zh active Active
-
2021
- 2021-11-30 US US17/538,103 patent/US12002167B2/en active Active
-
2024
- 2024-02-01 JP JP2024014022A patent/JP2024054180A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2022517274A (ja) | 2022-03-07 |
EP3912012A4 (en) | 2022-03-09 |
CN113330478B (zh) | 2022-07-05 |
WO2020150649A1 (en) | 2020-07-23 |
US20200234501A1 (en) | 2020-07-23 |
US11217025B2 (en) | 2022-01-04 |
US20220092863A1 (en) | 2022-03-24 |
EP3912012A1 (en) | 2021-11-24 |
JP7431244B2 (ja) | 2024-02-14 |
CN115100020A (zh) | 2022-09-23 |
US12002167B2 (en) | 2024-06-04 |
CN113330478A (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11823360B2 (en) | Virtual, augmented, and mixed reality systems and methods | |
JP2024054180A (ja) | 仮想、拡張、および複合現実システムおよび方法 | |
CN112912823A (zh) | 生成和修改增强现实或虚拟现实场景中对象的表示 | |
AU2023201212B2 (en) | Virtual, augmented, and mixed reality systems and methods | |
JP7506126B2 (ja) | 仮想現実、拡張現実、および複合現実システムおよび方法 | |
NZ791444A (en) | Virtual, augmented, and mixed reality systems and methods | |
NZ791441A (en) | Virtual, augmented, and mixed reality systems and methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240201 |