The present disclosure relates to image correction for light emissive visual display technology, and particularly to organic light emitting device (OLED) degradation compensation systems and methods for correcting images of active matrix organic light emitting diode device (AMOLED) displays.
According to a first aspect, there is provided a method of compensating for degradation in pixels of a display panel module mounted in a host device, each pixel including a light-emitting device, the method comprising: during operation of the display panel module, sampling grey level data of image data for each pixel, and sampling temperature data corresponding to each pixel; determining an updated correction factor for each pixel as a function of the grey level data and the temperature data for each pixel; and applying the correction factor for each pixel to the image data for the pixel, generating corrected image data for display by the display panel module.
Some embodiments further provide for storing the updated correction factor in non-volatile memory either in the host device or the display panel module. In some embodiments, the updated correction factor is stored in the non-volatile memory each time the updated correction factor is determined. In some embodiments, the updated correction factor is stored in the non-volatile memory immediately prior to shut-down of the host device.
Some embodiments further provide for storing the updated correction factor for each sub-pixel in volatile memory either in the host device or the display panel module. In some embodiments, the updated correction factor for each sub-pixel is stored in a look-up table in volatile memory.
In some embodiments, the updated correction factor for each sub-pixel is further determined as a function of a sampling time period.
In some embodiments, the updated correction factor for each sub-pixel is determined as a sum of a product of a first function of the sampled grey level data, a second function of a sampling time period, and a third function of the sampled temperature data of each sub-pixel.
In some embodiments, the updated correction factor for each sub-pixel is determined with use of a look-up table, the sampled grey level data, a sampling time period, and the sampled temperature data.
According to another aspect there is provided a device comprising: a display panel module; an image data block; a host processing unit; and a compensation block.
The display panel module comprises: a display panel including a plurality of pixels, each pixel including a light-emitting device; a display processing unit; display non-volatile memory; and display volatile memory.
The image data block is for providing image data to the display panel.
The host processing unit includes: host non-volatile memory; and host volatile memory.
The host processing unit is configured for: storing, for each pixel, a correction factor representing a degradation of the pixel in the host non-volatile memory; during operation of the display panel, sampling grey level data of the image data received from the image block for each pixel, and temperature data corresponding to the pixel received from the display panel; and determining an updated correction factor for each pixel as a function of the sampled grey level data and temperature data for each pixel.
The compensation block is for applying the updated correction factor for each pixel to the image data for the pixel received from the image data block, and generating corrected image data for display by the display panel.
In some embodiments, the host non-volatile memory or the display non-volatile memory is further for storing the updated correction factor. In some embodiments, the host non-volatile memory or the display non-volatile memory is further for storing the updated correction factor each time the updated correction factor is determined. In some embodiments, the host non-volatile memory or the display non-volatile memory is further for storing the updated correction factor immediately prior to shut-down of the host device.
Some embodiments further provide for a host volatile memory or a display volatile memory for storing the updated correction factor for each sub-pixel. In some embodiments, the updated correction factor for each sub-pixel is stored in a look-up table in the host volatile memory or the display volatile memory.
In some embodiments, the processing unit determines the updated correction factor for each sub-pixel according to an OLED degradation model.
In some embodiments, the processing unit further determines the updated correction factor for each sub-pixel as a function of a sampling time period.
In some embodiments, the processing unit determines the updated correction factor for each sub-pixel as a sum of a product of a first function of the sampled grey level data, a second function of a sampling time period, and a third function of the sampled temperature data of each sub-pixel.
In some embodiments, the processing unit determines the updated correction factor for each sub-pixel with use of a look-up table, the sampled grey level data, a sampling time period, and the sampled temperature data.
In some embodiments, wherein the processing unit comprises a graphics processing unit (GPU) or a central processing unit (CPU) of the host device.
The foregoing and additional aspects and embodiments of the present disclosure will be apparent to those of ordinary skill in the art in view of the detailed description of various embodiments and/or aspects, which is made with reference to the drawings, a brief description of which is provided next.
The foregoing and other advantages of the disclosure will become apparent upon reading the following detailed description and upon reference to the drawings.
While the present disclosure is susceptible to various modifications and alternative forms, specific embodiments or implementations have been shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the disclosure is not intended to be limited to the particular forms disclosed. Rather, the disclosure is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of an invention as defined by the appended claims.
An OLED device is a Light Emitting Diode (LED) in which the emissive electroluminescent layer is a film of organic compound that emits light in response to an electric current. This layer of organic layers is situated between two electrodes; typically, at least one of these electrodes is transparent. Compared to conventional Liquid Crystal Displays (LCDs), Active Matrix Organic Light Emitting Device (AMOLED) displays offer lower power consumption, manufacturing flexibility, faster response time, larger viewing angles, higher contrast, lighter weight and amenability to flexible substrates. An AMOLED display works without a backlight because it emits visible light and each pixel consists of different colored OLEDs emitting light independently. The OLED panel can display deep black level and can be thinner than an LCD display.
Typically, LED and AMOLED displays require some form of image correction post fabrication. All LED and AMOLED displays, regardless of backplane technology, exhibit differences in luminance on a pixel to pixel basis, primarily as a result of process or construction inequalities, or from aging caused by operational use over time. Luminance non-uniformities in a display may also arise from natural differences in chemistry and performance from the LED and OLED materials themselves. These non-uniformities must be managed by the LED and AMOLED display electronics in order for the display device to attain commercially acceptable levels of performance for mass-market use.
To facilitate image correction, for a given display after singularization, methods such In-Pixel Compensation (IPC) or electrical measurement or a combination of both IPC compensation and electrical measurement, may also be used to acquire the correction data. The correction data is then stored on a Non-Volatile Memory (NVM) chip inside the display system and final product as initial correction data for later processing and updating as and when further degradation occurs.
While the embodiments described herein will be in the context of AMOLED displays it should be understood that the degradation correction systems and methods described herein are applicable to any other display comprising pixels which undergo degradation similar to that of OLEDs described below.
It should be understood that the embodiments described herein pertain to systems and methods of image correction and degradation compensation and do not limit the display technology underlying their operation and the operation of the displays in which they are implemented. The systems and methods described herein are applicable to any number of various types and implementations of various visual display technologies.
The display panel 120 includes an array of pixels 110 (only one explicitly shown) arranged in rows and columns. Each of the pixels 110 is individually programmable to emit light with individually programmable luminance values. The controller 102 receives digital data indicative of information to be displayed on the display panel 120. The controller 102 sends signals 132 to the data driver 104 and scheduling signals 134 to the address driver 108 to drive the pixels 110 in the display panel 120 to display the information indicated. The plurality of pixels 110 of the display panel 120 thus comprise a display array or display screen adapted to dynamically display information according to the input digital data received by the controller 102. The display screen and various subsets of its pixels define “display areas” which may be used for monitoring and managing display brightness. The display screen can display images and streams of video information from data received by the controller 102. The supply voltage 114 provides a constant power voltage or can serve as an adjustable voltage supply that is controlled by signals from the controller 102. The display system 150 can also incorporate features from a current source or sink (not shown) to provide biasing currents to the pixels 110 in the display panel 120 to thereby decrease programming time for the pixels 110.
For illustrative purposes, only one pixel 110 is explicitly shown in the display system 150 in
The pixel 110 is operated by a driving circuit or pixel circuit that generally includes a driving transistor and a light emitting device. Hereinafter the pixel 110 may refer to the pixel circuit. The light emitting device can optionally be an organic light emitting diode, but implementations of the present disclosure apply to pixel circuits having other electroluminescence devices which may be subject to similar degradation, including current-driven light emitting devices. The driving transistor in the pixel 110 can optionally be an n-type or p-type amorphous silicon thin-film transistor, but implementations of the present disclosure are not limited to pixel circuits having a particular polarity of transistor or only to pixel circuits having thin-film transistors. The pixel circuit 110 can also include a storage capacitor for storing programming information and allowing the pixel circuit 110 to drive the light emitting device after being addressed. Thus, the display panel 120 can be an active matrix display array.
As illustrated in
With reference to the pixel 110 of the display panel 120, the select line 124 is provided by the address driver 108, and can be utilized to enable, for example, a programming operation of the pixel 110 by activating a switch or transistor to allow the data line 122 to program the pixel 110. The data line 122 conveys programming information from the data driver 104 to the pixel 110. For example, the data line 122 can be utilized to apply a programming voltage or a programming current to the pixel 110 in order to program the pixel 110 to emit a desired amount of luminance. The programming voltage (or programming current) supplied by the data driver 104 via the data line 122 is a voltage (or current) appropriate to cause the pixel 110 to emit light with a desired amount of luminance according to the digital data received by the controller 102. The programming voltage (or programming current) can be applied to the pixel 110 during a programming operation of the pixel 110 so as to charge a storage device within the pixel 110, such as a storage capacitor, thereby enabling the pixel 110 to emit light with the desired amount of luminance during an emission operation following the programming operation. For example, the storage device in the pixel 110 can be charged during a programming operation to apply a voltage to one or more of a gate or a source terminal of the driving transistor during the emission operation, thereby causing the driving transistor to convey the driving current through the light emitting device according to the voltage stored on the storage device.
Generally, in the pixel 110, the driving current that is conveyed through the light emitting device by the driving transistor during the emission operation of the pixel 110 is a current that is supplied by the first supply line 126 and is drained to a second supply line 127. The first supply line 126 and the second supply line 127 are coupled to the supply voltage 114. The first supply line 126 can provide a positive supply voltage (e.g., the voltage commonly referred to in circuit design as “Vdd”) and the second supply line 127 can provide a negative supply voltage (e.g., the voltage commonly referred to in circuit design as “Vss”). Implementations of the present disclosure can be realized where one or the other of the supply lines (e.g., the supply line 127) is fixed at a ground voltage or at another reference voltage.
The display system 150 also includes a monitoring system 112. With reference again to the pixel 110 of the display panel 120, the monitor line 128 connects the pixel 110 to the monitoring system 112. The monitoring system 12 can be integrated with the data driver 104, or can be a separate stand-alone system. In particular, the monitoring system 112 can optionally be implemented by monitoring the current and/or voltage of the data line 122 during a monitoring operation of the pixel 110, and the monitor line 128 can be entirely omitted. The monitor line 128 allows the monitoring system 112 to measure a current or voltage associated with the pixel 110 and thereby extract information indicative of a degradation or aging of the pixel 110 or indicative of a temperature of the pixel 110. In some embodiments, display panel 120 includes temperature sensing circuitry devoted to sensing temperature implemented in the pixels 110. In some embodiments the temperature sensing circuitry of the display panel 120 measures temperature on a pixel-by-pixel basis, while in others it determines coarse local temperatures for a number of display areas, while in others, it determines a single global temperature of the display panel 120. In other embodiments, the pixels 110 comprise circuitry which participates in both sensing temperature and driving the pixels. For example, the monitoring system 112 can extract, via the monitor line 128, a current flowing through the driving transistor within the pixel 110 and thereby determine, based on the measured current and based on the voltages applied to the driving transistor during the measurement, a threshold voltage of the driving transistor or a shift thereof.
The controller 102 and memory 106 together or also in combination with a correction block (not shown in
Referring to
The compensation system 200 includes the OLED display 210 which is to be corrected, and a central or graphics processing unit 216, as well as an image data block 212 which generates or receives the images to be displayed, and a non-volatile memory (NVM) 214 such as NAND flash memory. NVM 214 may be implemented in the non-volatile memory of a host device, in which the correction system 200 is implemented. The central or graphics processing unit 216 can comprise, for example, a CPU or a GPU of the host device or system in which the OLED display 210 is implemented. Such a host device or system could be, for example, a mobile device, phone, laptop, tablet, desktop, or TV. In another case, the processing unit 216 can be part of the display system and/or the controller 102 illustrated in
The processing unit 216 includes SRAM memory 220 as well as a number of functional blocks which may be implemented with software, firmware, or specialized hardware of the processing unit 216. These include a sampler 226, a correction block 218, and a correction factor determination unit 221 which includes a correction factor lookup unit 224 and a correction factor calculation unit 222. As illustrated in
Image data 230 which is generated or received at the image data block 212 and comprise images intended for display on the OLED display 210, are processed by the correction block 218 of the processing unit 216 utilizing correction factors 238 (described below) to generate corrected image data 244 for display by the OLED display 210. The corrected image data 244 compensates for OLED degradation of the sub-pixels of the OLED display 210.
Correction factors k for each sub-pixel of the OLED display 210 are stored in persistent storage such as non-volatile memory 214 in order to keep record of the degradation of the OLED display 210 over successive power up and shut down of the host device or system in which the compensation system 200 is implemented. In some embodiments, correction factors k are stored for each and every subpixel in a lookup table. This lookup table is stored in SRAM 220 of the processing unit 216 while the correction system 200 is in operation, and is also stored in the NVM 214 for persistent storage while correction system 200 is powered down. On power-up, the previously stored correction factors k are loaded from the NVM 214 to the SRAM 220 as starting k values which are periodically updated. In some embodiments, the device or system starts with correction factors k prepopulated from the factory in the NVM 214.
In order to track OLED degradation of each sub-pixel of the OLED display 210 in accordance with the model described below, while in operation, and sampler 226 of the processing unit 216 periodically samples grey scale or grey level data of the image data 230 from the image data block 212 intended for the sub-pixels of the OLED display 210. The sampler 226 also has access to temperature data (T) 234 originating from the OLED display 210 which it periodically samples. In some embodiments, this temperature data is provided for each and every subpixel, while in other embodiments the same temperature data (T) 226 applies to a plurality of the sub-pixels in each display area or, in the case where the temperature data (T) 234 is a single global temperature, applies to all of the sub-pixels. The sampler 226 provides sampled grey level and temperature data (sampled data 246) to the correction factor determination unit 221 which performs the necessary calculations to generate the correction factor k including integration or summation according to the model described below.
Once provided with the sampled data 248, the correction factor calculation unit 222 calculates the new correction factor k by obtaining the currently stored k factor and adding to it according to the model. As described below, the calculation of the new correction factor k depends upon the grey level data (GL), temperature data (T), and time (t), the last of which the correction factor calculation unit has independent access to. In some embodiments, the currently stored k factor for a particular sub-pixel is obtained from the look up table in SRAM 220 using the correction factor look-up unit 224. Once the new correction factor k is determined it is stored in SRAM 220, and also stored in NVM 214. In some embodiments, any updates to the correction factors in SRAM 220 is mirrored in the NVM 214 in order to keep the persistent correction factors current. In other embodiments the NVM 214 is updated with the current correction factors in SRAM 220 immediately prior to the host device or system being powered down.
The correction block 218 utilizes the correction factors k for every sub-pixel in its correction of the image data 230 into corrected image data 244 provided to the OLED display 210. In some embodiments the correction block 218 utilizes the correction factor look-up unit 224 to fetch the current correction factor k 238 for the sub-pixel whose data it is currently correcting. In other embodiments, the current correction factors are directly obtained from SRAM 220.
In an alternative embodiment, illustrated in
Image data 230 which is generated or received at the image data block 212 and comprise images intended for display on the OLED display 210, are processed by the correction block 318 of the OLED display 210 utilizing correction factors 238 (described below) to generate corrected image data 244 for display by the OLED display 210. The corrected image data 244 compensates for OLED degradation of the sub-pixels of the OLED display 210.
Correction factors k for each sub-pixel of the OLED display 210 are stored in persistent storage such as non-volatile memory 106 or 214 in order to keep record of the degradation of the OLED display 210 over successive power up and shut down of the host device or system in which the compensation system 300 is implemented. In some embodiments, correction factors k are stored for each and every subpixel in a lookup table. This lookup table may be stored in SRAM 220 of the processing unit 216 and/or SRAM 320 of the OLED display 210 while the correction system 300 is in operation, and is also stored in the NVM 214 for persistent storage while correction system 300 or the OLED display 210 is powered down. On power-up, the previously stored correction factors k are loaded from the NVM 214 to the SRAM 220 and/or the SRAM 320 as starting k values which are periodically updated. In some embodiments, the device or system starts with correction factors k prepopulated from the factory in the NVM 214.
In order to track OLED degradation of each sub-pixel of the OLED display 210 in accordance with the model described below, while in operation, and sampler 226 of the processing unit 216 periodically samples grey scale or grey level data of the image data 230 from the image data block 212 intended for the sub-pixels of the OLED display 210. The sampler 226 also has access to temperature data (T) 234 originating from the OLED display 210 which it periodically samples. In some embodiments, this temperature data is provided for each and every subpixel, while in other embodiments the same temperature data (T) 226 applies to a plurality of the sub-pixels in each display area or, in the case where the temperature data (T) 234 is a single global temperature, applies to all of the sub-pixels. The sampler 226 provides sampled grey level and temperature data (sampled data 246) to the correction factor determination unit 221 which performs the necessary calculations to generate the correction factor k including integration or summation according to the model described below.
Once provided with the sampled data 248, the correction factor calculation unit 222 calculates the new correction factor k by obtaining the currently stored k factor and adding to it according to the model. As described below, the calculation of the new correction factor k depends upon the grey level data (GL), temperature data (T), and time (t), the last of which the correction factor calculation unit has independent access to. In some embodiments, the currently stored k factor for a particular sub-pixel is obtained from the look up table in the SRAM 220 and/or the SRAM 320 using the correction factor look-up unit 224. Once the new correction factor k is determined it is stored in SRAM 320, and also stored in NVM 214. In some embodiments, any updates to the correction factors in SRAM 220 and/or 320 is mirrored in the NVM 214 in order to keep the persistent correction factors current. In other embodiments the NVM 214 is updated with the current correction factors in SRAM 220 and/or 320 immediately prior to the host device or system being powered down.
The correction block 318 utilizes the correction factors k for every sub-pixel in its correction of the image data 230 into corrected image data 244 provided to the OLED display 150. In some embodiments the correction block 318 utilizes the correction factor look-up unit 224 to fetch the current correction factor k 238 for the sub-pixel whose data it is currently correcting. In other embodiments, the current correction factors are directly obtained from the SRAM 220 or the SRAM 320.
In some embodiments the correction block 218 or 318 utilizes the correction factor multiplicatively to generate the corrected image data 244. In some embodiments the corrected grey level for each sub-pixel in the corrected image data 244 is generated by the correction block 218 or 318, by multiplying the original grey level for each sub-pixel in the image data 230 by a function of the corresponding correction factor k of the sub-pixel. In some embodiments this function is non-linear.
In some embodiments, the correction factor look-up unit 224 includes functionality to look-up additional look-up tables for optimizing the calculation of the correction factors according to the model. In these embodiments, the functional dependence of the correction factor k upon the sampled data (grey level GL, temperature T, as well as time t) are stored in a look-up table to reduce processing computation of the correction factors k. In such an embodiment, the correction factor calculation unit 222 uses the correction factor look-up unit and the sampled grey level and temperature data, and its own tracking of time, to fetch the values of F1, F2, and F3 (see below) from which it calculates the value of correction factor k, or to directly fetch the correction factor k.
In some embodiments, the frequency of access of the correction factors k by the correction block 218 or 318 exceeds the frequency of calculation and update of the correction factors k by the sampler 226 working in tandem with the correction factor determination unit 221. In such embodiments, the correction block 218 or 318 accesses the current correction factor k each time it is needed independently of when the correction factors are updated by the correction factor determination unit 221.
The correction factor determination unit 221 determines the correction factor k, according to an OLED degradation correction model in which the correction factor k is proportional to the overall sum of stress energy that an OLED endures during the time period from ti to tn as follows:
k∝E
OLED (1)
Here, the OLED energy EOLED is the accumulation of the product of the OLED voltage, VOLED, and the OLED driving current, IOLED:
E
OLED=∫t
As illustrated in formula (2), POLED represents the instantaneous power of the OLED and T represents the operating temperature of the OLED.
The OLED voltage VOLED can vary during the period as can the magnitude of the driving current IOLED. An empirical model of equation (2) is provided such that the correction factor k is proportional to the accumulated stress Grey Level (GL) and time with mathematical functions as follows:
k∝F(GL,t,T) (3)
k∝ΣF
1(GL)×F2(t)×F3(T) (4)
Where, F1(GL), F2 (t) and F3 (T) represent the function of OLED driving current, the function of time and the function of temperature in which an OLED is operating respectively. In some embodiments, F1(GL) is of the form A*(GL)γ, for example, where γ is the intensity gamma curve for the OLED display, while in others F1(GL) is a polynomial of GL. In some embodiments, F2(t) is a polynomial of t. In some embodiments, F3(T) is of the form C*T/T0, in others a polynomial of T, and in others a polynomial of [−C*exp(1/T−1/T0)] where T0 is a predetermined reference temperature.
In embodiments which utilize a look-up table for computation of the correction factor k or each of F1, F2, and F3, the correction factor calculation unit 222 utilizes the correction factor look-up unit 224 to fetch the relevant value using GL, t, and T In other embodiments, the value of k is computed by integration or summation along with calculations of the product of the appropriate functional forms of F1, F2, and F3.
Although the algorithms or processes described above have been described separately, it should be understood that any two or more of the algorithms or processes disclosed herein can be combined in any combination. Any of the methods, algorithms, implementations, or procedures described herein can include machine-readable instructions for execution by: (a) a processor, (b) a controller, and/or (c) any other suitable processing device. Any algorithm, software, or method disclosed herein can be embodied in software stored on a non-transitory tangible medium such as, for example, a flash memory, a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), or other memory devices, but persons of ordinary skill in the art will readily appreciate that the entire algorithm and/or parts thereof could alternatively be executed by a device other than a controller and/or embodied in firmware or dedicated hardware in a well-known manner (e.g., it may be implemented by an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Also, some or all of the machine-readable instructions represented in process described herein can be implemented manually as opposed to automatically by a controller, processor, or similar computing device or machine. Further, although specific algorithms or processes have been described, persons of ordinary skill in the art will readily appreciate that many other methods of implementing the example machine readable instructions may alternatively be used. For example, the order of execution of the steps may be changed, and/or some of the blocks described may be changed, eliminated, or combined.
It should be noted that the algorithms illustrated and discussed herein as having various modules which perform particular functions and interact with one another. It should be understood that these modules are merely segregated based on their function for the sake of description and represent computer hardware and/or executable software code which is stored on a computer-readable medium for execution on appropriate computing hardware. The various functions of the different modules and units can be combined or segregated as hardware and/or software stored on a non-transitory computer-readable medium as above as modules in any manner, and can be used separately or in combination.
While particular implementations and applications of the present disclosure have been illustrated and described, it is to be understood that the present disclosure is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations can be apparent from the foregoing descriptions without departing from the spirit and scope of an invention as defined in the appended claims.
This application is a continuation-in-part of and claims priority to U.S. patent application Ser. No. 16/515,211, filed Jul. 18, 2019, which claims priority from U.S. Patent Application 62/700,415 filed Jul. 19, 2018. This application also claim priority from U.S. Patent Application 62/890,173 filed Aug. 22, 2019.
Number | Date | Country | |
---|---|---|---|
62700415 | Jul 2018 | US | |
62890173 | Aug 2019 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17592554 | Feb 2022 | US |
Child | 18201224 | US | |
Parent | 16567374 | Sep 2019 | US |
Child | 17592554 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16515211 | Jul 2019 | US |
Child | 16567374 | US |