The present description relates generally to electronic device displays, and more particularly, but not exclusively, to split-screen driving of electronic device displays.
Electronic devices such as computers, media players, cellular telephones, set-top boxes, and other electronic equipment are often provided with displays for displaying visual information. Displays such as organic light-emitting diode (OLED) displays and liquid crystal displays (LCDs) are commonly provided in portable electronic devices and typically include an array of display pixels arranged in pixel rows and pixel columns. These displays are typically used to display a single image, multiple images, or a stream of images, such as a video stream, to be viewed by both eyes of the viewer.
Image and video content is also sometimes generated for separate viewing by the user's left and right eyes. For example, a movie theater can provide polarized or colored glasses or goggles to patrons that visually separate two concurrent (and commonly overlapping) images that, due to the separation of the viewer's eyes, add three-dimensional depth to the displayed concurrent images. This depth can be used to provide virtual reality (VR) content in which a three-dimensional computer-generated immersive environment is created for the user and/or to provide augmented reality (AR) content in which computer-generated content is added to a direct or camera-generated view of the real-world environment surrounding the user.
AR and VR content can also be provided with dedicated AR/VR devices that often include two separate displays, one for each eye of the users, and that mask out all other visual input to the user's eyes.
However, it can be difficult to provide this type of content on a multi-function device such as a smartphone or a tablet, without generating visible artifacts such as motion blur, luminance offsets, or other effects which can be unpleasant or even dizzying to a viewer.
Certain features of the subject technology are set forth in the appended claims. However, for purpose of explanation, several embodiments of the subject technology are set forth in the following figures.
The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configurations in which the subject technology may be practiced. The appended drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details for the purpose of providing a thorough understanding of the subject technology. However, it will be clear and apparent to those skilled in the art that the subject technology is not limited to the specific details set forth herein and may be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form in order to avoid obscuring the concepts of the subject technology.
The subject disclosure provides control circuitry for electronic device displays such as organic light-emitting diode (OLED) displays, liquid crystal displays (LCDs), plasma displays, or displays based on other display technologies. In accordance with various aspects, the electronic device displays are gate-in-panel (GIP) displays in which control circuitry for operating the pixels of the display is disposed on the same substrate (panel) on which the pixels are formed (e.g., using thin-film transistor components on the substrate).
Displays as described herein may be included in electronic devices such as cellular telephones, media players, computers, set-top boxes, wireless access points, and other electronic equipment that may include displays. Displays are used to present visual information and status data and/or may be used to gather user input data. A display includes an array of display pixels. The array of display pixels is disposed in an active area of the display. The array of display pixels is arranged in pixel rows and pixel columns. Each display pixel may include one or more colored subpixels for displaying color images.
In some display modes, the entire display is operated to display an image (or string of image frames such as video frames) that are each intended to be viewed by both eyes of a viewer of the display. However, in some operating modes, the display is operated for split viewing of the display, in which a first portion (e.g., half) of the display is used to display content for the left eye of the viewer and a second portion (e.g., another half) of the display is used to display content for the right eye of the viewer.
For example, three-dimensional (3D) movie content, Augmented Reality (AR) applications that overlay virtual objects on a direct or camera view of the real-world environment, and Virtual Reality (VR) applications that generate three-dimensional virtual environments that are explorable by the user may utilize a split-screen view in which a first portion (e.g., half) of the display is used to display content for the left eye of the viewer and a second portion (e.g., another half) of the display is used to display content for the right eye of the viewer.
However, for some LCD and OLED displays (e.g., in a smartphone or tablet), visible artifacts can arise, particularly in a split-screen mode of operation. For example, motion blur can occur for fast-moving display objects. Moreover, common smartphone or tablet displays operate rows of pixels in a sequential manner from the top to the bottom of a pixel array, which can cause a visible systematic luminance offset for the left and right portions of the display in a split-screen mode of operation (e.g., due to a liquid crystal response delay in LCD displays). This can be particularly problematic if backlight strobing or pulsing is implemented to reduce motion blur.
In accordance with various aspects of the subject technology, display driver systems and methods are provided for split-screen driving of rows of display pixels, which can compensate and/or prevent the above-noted artifacts.
An illustrative electronic device having a display is shown in
Display 110 may be a touch screen that incorporates capacitive touch electrodes or other touch sensor components or may be a display that is not touch-sensitive. Display 110 includes display pixels formed from light-emitting diodes (LEDs), organic light-emitting diodes (OLEDs), plasma cells, electrophoretic display elements, electrowetting display elements, liquid crystal display (LCD) components, or other suitable display pixel structures. Arrangements in which display 110 is formed using OLED display pixels and GIP control circuitry are sometimes described herein as an example. This is, however, merely illustrative. In various implementations, any suitable type of display pixel technology may be used in forming display 110 if desired.
Housing 106, which may sometimes be referred to as a case, may be formed of plastic, glass, ceramics, fiber composites, metal (e.g., stainless steel, aluminum, etc.), other suitable materials, or a combination of any two or more of these materials.
The configuration of electronic device 100 of
For example, in some implementations, housing 106 may be formed using a unibody configuration in which some or all of housing 106 is machined or molded as a single structure or may be formed using multiple structures (e.g., an internal frame structure, one or more structures that form exterior housing surfaces, etc.). Although housing 106 of
In some implementations, electronic device 100 is provided in the form of a computer integrated into a computer monitor. Display 110 may be mounted on a front surface of housing 106 and a stand may be provided to support housing (e.g., on a desktop).
Using the data lines D and gate lines G, display pixels 206 may be operated to display images on display 110 for a user. In some implementations, gate driver circuitry 204 may be implemented using thin-film transistor circuitry on a display substrate such as a glass or plastic display substrate or may be implemented using integrated circuits that are mounted on the display substrate or attached to the display substrate by a flexible printed circuit or other connecting layer. For example, gate driver circuitry 204 may include a plurality of gate-in-panel (GIP) driver circuits directly formed on the display panel substrate (e.g., each configured to provide a gate signal along a corresponding one of signal gate lines G for a corresponding row of display pixels 206. In some implementations, column driver circuitry 202 may be implemented using one or more column driver integrated circuits that are mounted on the display substrate or using column driver circuits mounted on other substrates.
Device 100 may include system circuitry 208. System circuitry 208 may include one or more different types of storage such as hard disk drive storage, nonvolatile memory (e.g., flash memory or other electrically-programmable-read-only memory), volatile memory (e.g., static or dynamic random-access-memory), magnetic or optical storage, permanent or removable storage and/or other non-transitory storage media configure to store static data, dynamic data, and/or computer readable instructions for processing circuitry in system circuitry 208. Processing circuitry in system circuitry 208 may be used in controlling the operation of device 100. Processing circuitry in system circuitry 208 may sometimes be referred to herein as system circuitry or a system-on-chip (SOC) for device 100.
The processing circuitry may be based on a processor such as a microprocessor and other suitable integrated circuits, multi-core processors, one or more application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs) that execute sequences of instructions or code, as examples. In one suitable arrangement, system circuitry 208 may be used to run software for device 100, such as internet browsing applications, email applications, media playback applications, operating system functions, software for capturing and processing images, augmented reality (AR) applications, virtual reality (VR) applications, three-dimensional (3D) video applications, etc.
During operation of device 100, system circuitry 208 may generate or receive data that is to be displayed on display 110. This display data may be processed, scaled, modified, and/or provided to display control circuitry such as graphics processing unit (GPU) 212. For example display frames, including display pixel values (e.g., each corresponding to a grey level) for display using pixels 206 (e.g., colored subpixels such as red, green, and blue subpixels) may be provided from system circuitry 208 to GPU 212. GPU 212 may process the display frames and provide processed display frames to timing controller integrated circuit 210.
Timing controller 210 provides digital display data (e.g., the digital pixel values each corresponding to a grey level for display) to column driver circuitry 202. Column driver circuitry 202 may receive the digital display data from timing controller 210. Using digital-to-analog converter circuitry within column driver circuitry 202, column driver circuitry 202 may provide corresponding analog output signals on the data lines D running along the columns of display pixels 206 of array 200.
Graphics processing unit 212 and timing controller 210 may sometimes collectively be referred to herein as display control circuitry 214. Display control circuitry 214 may be used in controlling the operation of display 110. Display control circuitry 214 may sometimes be referred to herein as a display driver, a display controller, a display driver integrated circuit (IC), or a driver IC. Graphics processing unit 212 and timing controller 210 may be formed in a common package (e.g., an SOC package) or may be implemented separately (e.g., as separate integrated circuits). In some implementations, timing controller 210 may be implemented separately as a display driver, a display controller, a display driver integrated circuit (IC), or a driver IC that receives processed display data from graphics processing unit 212. Accordingly, in some implementations, graphics processing unit 212 may be considered to be part of the system circuitry (e.g., together with system circuitry 208) that provides display data to the display control circuitry (e.g., implemented as timing controller 210, gate drivers 204, and/or column drivers 202). Although a signal gate line G and a single data line D for each pixel 206 are illustrated in
As shown in
As indicated by arrows 400 and 402, in the split-screen mode, the pixel rows 308 of right portion 200R and left portion 200L, for a single display frame, are alternatingly operated so that the outermost pixel row 308 of the pixels rows of right portion 200R (e.g., on the right side of center 309) is operated first, a centermost pixel row 308 of the pixels rows of left portion 200L (e.g., on the left side of, and adjacent to, center 309) is operated second, and, immediately after the centermost pixel row 308 of the pixels rows of left portion 200L, a pixel row 308 that is adjacent to the outermost pixel row of the pixels rows of right portion 200R is operated. This alternating pattern may be repeated until the outermost pixel row 308 of left portion 200L is operated to display the last row of display pixels of left-eye content 406L, to perform a right-to-left alternating pixel row operation.
Further details of the sequential full-screen and right-to-left split screen operations illustrated in
As shown in
In another example, an outside-in alternating row operation may be performed for the split-screen mode in which alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating pixel row 1 (e.g., the outermost pixel row 308 of the pixels rows of right portion 200R) first, operating pixel row N (e.g., the outermost pixel row 308 of the pixels rows of left portion 200L) second (e.g., immediately after row 1), and (immediately after row N) operating pixel row 2 (adjacent to row 1). This alternating pattern (e.g., pixel rows 1, N, 2, N−1, 3, N−2 . . . ) may be repeated until row N/2+1 (e.g., the centermost pixel row 308 of left portion 200L) is operated.
In another example, an inside-out alternating row operation may be performed for the split-screen mode in which alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating pixel row N/2 (e.g., the centermost pixel row 308 of the pixels rows of right portion 200R) first, operating pixel row N/2+1 (e.g., the centermost pixel row 308 of the pixels rows of left portion 200L) second (e.g., immediately after row N/2), and (e.g., immediately after row N/2+1) operating pixel row N/2−1 (adjacent to row N/2). This alternating pattern (e.g., pixel rows N/2, N/2+1, N/2−1, N/2+2, N/2−2 . . . ) may be repeated until row N (e.g., the outermost pixel row 308 of left portion 200L) is operated.
In order to facilitate a seamless switch between full-screen and split-screen modes of operation as described herein, display 110 may be provided with mode control circuitry coupled between row control circuitry for pixel rows on opposing sides (e.g., pixel rows in left and right portions 206L and 206R) of the pixel array. For example,
In the example of
In the example, of
As shown in
As shown in
In the configuration shown in
However, as shown in
As shown in
In the full-screen mode of
In contrast,
In the examples described above in connection with
For example,
For example, similar to the operations described above in connection with
As shown in
The enable signal SSM_En may be triggered to switch the display to a split-screen mode of operation or to a full-screen mode of operation responsive to a change in display content (e.g., a change to AR or VR content from video or still image content, or vice versa), responsive to a change in device orientation or position (e.g., based on a rotation of the device from a top-up orientation to a side-up orientation or based on a detection of proximity to a user's eyes or a VR or AR device), or responsive to a user request to switch modes (as examples).
In the depicted example flow diagram, at block 1500, all of the pixel rows 308 of the array 200 are sequentially operated to display an image frame in a first mode of operation for the display. The first mode of operation may be a full-screen mode of operation.
At block 1501, the process may also include switching the display from the first mode of operation to a second mode of operation (e.g., by providing an enable signal to a multiplexer such as multiplexer 702 of the display). In the first mode of operation, an output terminal of a gate-in-panel driver 700 for a centermost pixel row (e.g., pixel row N/2) of the pixels rows on the first side is coupled, via the multiplexer 702, to an input terminal of a gate-in-panel driver 700 for a centermost pixel row (e.g., pixel row N/2+1) of the pixels rows on the second side. Switching the display from the first mode of operation to the second mode of operation may include, with the multiplexer and responsive to the enable signal, decoupling the output terminal of the gate-in-panel driver for the centermost pixel row 308 of the pixels rows on the first side from the input terminal of a gate-in-panel driver 700 for the centermost pixel row 308 of the pixels rows on the second side. Switching the display from the first mode of operation to the second mode of operation may also include, with the multiplexer 702 and responsive to the enable signal, coupling a start signal line such as start signal line 708 to the input terminal of a gate-in-panel driver 700 for the centermost pixel row 308 of the pixels rows on the second side.
At block 1502, the pixels rows on the first side and the pixel rows on the second side of the display are alternatingly operated (e.g., individually or in groups 1200) to display an additional image frame in a second mode of operation for the display. The second mode of operation may be a split-screen mode of operation. The split-screen mode of operation may be a virtual-reality mode of operation or an augmented-reality mode of operation.
In one example, alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating an outermost pixel row of the pixels rows on the first side, operating (immediately after the outermost pixel row of the pixels rows on the first side) a centermost pixel row of the pixels rows on the second side, and operating (immediately after the centermost pixel row of the pixels rows on the second side) a pixel row that is adjacent to the outermost pixel row of the pixels rows on the first side.
In another example, alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating an outermost pixel row of the pixels rows on the first side, operating (immediately after the outermost pixel row of the pixels rows on the first side) an outermost pixel row of the pixels rows on the second side, and operating (immediately after the outermost pixel row of the pixels rows on the second side) a pixel row that is adjacent to the outermost pixel row of the pixels rows on the first side.
In another example, alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating a centermost pixel row of the pixels rows on the first side, operating (immediately after the centermost pixel row of the pixels rows on the first side) a centermost pixel row of the pixels rows on the second side, and operating (immediately after the centermost pixel row of the pixels rows on the second side) a pixel row that is adjacent to the centermost pixel row of the pixels rows on the first side.
In another example, alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display includes operating an outermost group of the pixels rows on the first side, operating (immediately after the outermost group of the pixels rows on the first side) a centermost group of the pixels rows on the second side, and operating (immediately after the centermost group of the pixels rows on the second side) a group of pixel rows that is adjacent to the outermost group of the pixels rows on the first side. The outermost group of the pixels rows on the first side, the centermost group of the pixels rows on the second side, and the group of pixel rows that is adjacent to the outermost group of the pixels rows on the first side may each include two pixel rows, four pixel rows, eight pixel rows, or another number of pixel rows.
In accordance with various aspects of the subject disclosure, electronic device having a display is provided, the display including a display driver and a display panel. The display panel includes an array of display pixels arranged in pixel rows and pixel columns, a gate-in-panel driver for each pixel row, and a multiplexer coupled between an output terminal of a first one of the gate-in-panel drivers and an input terminal of a second one of the gate-in-panel drivers.
In accordance with other aspects of the subject disclosure, method of operating a display for an electronic device is provided. The display includes an array of display pixels, the array including pixel rows on a first side of a center of the array and pixel rows on a second side of the center of the array. The method includes sequentially operating all of the pixel rows of the array to display an image frame in a first mode of operation for the display. The method also includes alternatingly operating the pixels rows on the first side and the pixel rows on the second side of the display to display an additional image frame in a second mode of operation for the display.
In accordance with other aspects of the subject disclosure, an electronic device with a display is provided, the display including an array of display pixels including pixel rows on a first side of a center of the array, and pixel rows on a second side of the center of the array. The display further includes display control circuitry configured to sequentially operate all of the pixel rows of the array to display an image frame in a first mode of operation for the display. The display control circuitry is further configured to alternatingly operate the pixels rows on the first side and the pixel rows on the second side of the display to display an additional image frame in a second mode of operation for the display.
Various functions described above can be implemented in digital electronic circuitry, in computer software, firmware or hardware. The techniques can be implemented using one or more computer program products. Programmable processors and computers can be included in or packaged as mobile devices. The processes and logic flows can be performed by one or more programmable processors and by one or more programmable logic circuitry. General and special purpose computing devices and storage devices can be interconnected through communication networks.
Some implementations include electronic components, such as microprocessors, storage and memory that store computer program instructions in a machine-readable or computer-readable medium (alternatively referred to as computer-readable storage media, machine-readable media, or machine-readable storage media). Some examples of such computer-readable media include RAM, ROM, read-only compact discs (CD-ROM), recordable compact discs (CD-R), rewritable compact discs (CD-RW), read-only digital versatile discs (e.g., DVD-ROM, dual-layer DVD-ROM), a variety of recordable/rewritable DVDs (e.g., DVD-RAM, DVD-RW, DVD+RW, etc.), flash memory (e.g., SD cards, mini-SD cards, micro-SD cards, etc.), magnetic and/or solid state hard drives, ultra density optical discs, any other optical or magnetic media, and floppy disks. The computer-readable media can store a computer program that is executable by at least one processing unit and includes sets of instructions for performing various operations. Examples of computer programs or computer code include machine code, such as is produced by a compiler, and files including higher-level code that are executed by a computer, an electronic component, or a microprocessor using an interpreter.
While the above discussion primarily refers to microprocessor or multi-core processors that execute software, some implementations are performed by one or more integrated circuits, such as application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs). In some implementations, such integrated circuits execute instructions that are stored on the circuit itself.
As used in this specification and any claims of this application, the terms “computer”, “processor”, and “memory” all refer to electronic or other technological devices. These terms exclude people or groups of people. For the purposes of the specification, the terms “display” or “displaying” means displaying on an electronic device. As used in this specification and any claims of this application, the terms “computer readable medium” and “computer readable media” are entirely restricted to tangible, physical objects that store information in a form that is readable by a computer. These terms exclude any wireless signals, wired download signals, and any other ephemeral signals.
To provide for interaction with a user, implementations of the subject matter described in this specification can be implemented on a computer having a display device as described herein for displaying information to the user and a keyboard and a pointing device, such as a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.
Many of the above-described features and applications are implemented as software processes that are specified as a set of instructions recorded on a computer readable storage medium (also referred to as computer readable medium). When these instructions are executed by one or more processing unit(s) (e.g., one or more processors, cores of processors, or other processing units), they cause the processing unit(s) to perform the actions indicated in the instructions. Examples of computer readable media include, but are not limited to, CD-ROMs, flash drives, RAM chips, hard drives, EPROMs, etc. The computer readable media does not include carrier waves and electronic signals passing wirelessly or over wired connections.
In this specification, the term “software” is meant to include firmware residing in read-only memory or applications stored in magnetic storage, which can be read into memory for processing by a processor. Also, in some implementations, multiple software aspects of the subject disclosure can be implemented as sub-parts of a larger program while remaining distinct software aspects of the subject disclosure. In some implementations, multiple software aspects can also be implemented as separate programs. Finally, any combination of separate programs that together implement a software aspect described here is within the scope of the subject disclosure. In some implementations, the software programs, when installed to operate on one or more electronic systems, define one or more specific machine implementations that execute and perform the operations of the software programs.
A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
It is understood that any specific order or hierarchy of blocks in the processes disclosed is an illustration of example approaches. Based upon design preferences, it is understood that the specific order or hierarchy of blocks in the processes may be rearranged, or that all illustrated blocks be performed. Some of the blocks may be performed simultaneously. For example, in certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but are to be accorded the full scope consistent with the language claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. Pronouns in the masculine (e.g., his) include the feminine and neuter gender (e.g., her and its) and vice versa. Headings and subheadings, if any, are used for convenience only and do not limit the subject disclosure.
The predicate words “configured to”, “operable to”, and “programmed to” do not imply any particular tangible or intangible modification of a subject, but, rather, are intended to be used interchangeably. For example, a processor configured to monitor and control an operation or a component may also mean the processor being programmed to monitor and control the operation or the processor being operable to monitor and control the operation. Likewise, a processor configured to execute code can be construed as a processor programmed to execute code or operable to execute code
A phrase such as an “aspect” does not imply that such aspect is essential to the subject technology or that such aspect applies to all configurations of the subject technology. A disclosure relating to an aspect may apply to all configurations, or one or more configurations. A phrase such as an aspect may refer to one or more aspects and vice versa. A phrase such as a “configuration” does not imply that such configuration is essential to the subject technology or that such configuration applies to all configurations of the subject technology. A disclosure relating to a configuration may apply to all configurations, or one or more configurations. A phrase such as a configuration may refer to one or more configurations and vice versa.
The word “example” is used herein to mean “serving as an example or illustration.” Any aspect or design described herein as “example” is not necessarily to be construed as preferred or advantageous over other aspects or design
All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. § 112, sixth paragraph, unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.” Furthermore, to the extent that the term “include,” “have,” or the like is used in the description or the claims, such term is intended to be inclusive in a manner similar to the term “comprise” as “comprise” is interpreted when employed as a transitional word in a claim.
This application claims the benefit of priority of U.S. Provisional Application No. 62/694,915 filed Jul. 6, 2018 which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
20060227090 | Ishii | Oct 2006 | A1 |
20150170598 | Jeon et al. | Jun 2015 | A1 |
20170330503 | Yang et al. | Nov 2017 | A1 |
20180144679 | Lee et al. | May 2018 | A1 |
20180158396 | Lee | Jun 2018 | A1 |
20180197482 | Choi | Jul 2018 | A1 |
20180286315 | Zhang | Oct 2018 | A1 |
20190019466 | Tsunashima | Jan 2019 | A1 |
Number | Date | Country | |
---|---|---|---|
62694915 | Jul 2018 | US |