Adaptive sampling for an age monitoring engine associated with a display
Adaptive sampling of display data frames addresses OLED aging issues by reducing power consumption and resource usage, effectively mitigating 'burn-in' in electronic displays.
Patent Information
- Application Number
- PCT/CN2024/086357
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-07
- Publication Date
- 2025-10-16
AI Technical Summary
Electronic displays, particularly those using organic light emitting diode (OLED) pixel elements, are prone to aging issues like 'burn-in', and existing strategies to enhance robustness often increase size and cost.
Adaptive sampling of display data frames is implemented, adjusting the sampling frequency based on inactivity periods and idle mode triggers to reduce power consumption and resource utilization while monitoring pixel aging.
This approach decreases power consumption and resource usage while effectively addressing pixel aging, reducing the visual impact of wear on OLED displays.
Smart Images

Figure CN2024086357_16102025_PF_FP_ABST
Abstract
Description
ADAPTIVE SAMPLING FOR AN AGE MONITORING ENGINE ASSOCIATED WITH A DISPLAYTECHNICAL FIELD
[0001] Aspects of the present disclosure relate generally to electronic displays, and more particularly, to adaptive sampling for age monitoring associated with an electronic display. Some features may enable reduced power consumption associated with operation of an electronic display.
[0002] DESCRIPTION OF THE RELATED TECHNOLOGY
[0003] As the value and use of information continues to increase, individuals and businesses seek additional ways to process, display, and store information. In addition, the use of information in various locations and desired portability of information is increasing. For this reason, electronic devices increasingly include electronic displays, such as in mobile phones, digital tablets, laptop computers, and other devices.
[0004] Some electronic displays may be subject to certain types of wear caused by operation of pixel elements. For example, some displays that use organic light emitting diode (OLED) pixel elements may be subject to aging, such as “burn in. ” Some manufacturers may use fabrication strategies to make OLED pixel elements more robust to aging. Such strategies may increase size and cost of an electronic display.SUMMARY
[0005] The systems, methods and devices of this disclosure each have several innovative aspects, no single one of which is solely responsible for the desirable attributes disclosed herein.
[0006] One innovative aspect of the subject matter described in this disclosure can be implemented in a method. The method includes obtaining one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The method further includes obtaining, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The method further includes outputting the first frames and the second frames to an age monitoring engine associated with the display.
[0007] Another innovative aspect of the subject matter described in this disclosure can be implemented in an apparatus. The apparatus includes a processing system that includes processor circuitry and memory circuitry that stores code. The processing system is configured to cause the apparatus to obtain one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The processing system is further configured to cause the apparatus to obtain, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The processing system is further configured to cause the apparatus to output the first frames and the second frames to an age monitoring engine associated with the display.
[0008] Another innovative aspect of the subject matter described in this disclosure can be implemented in a multimedia device. The multimedia device includes a display and a processing system that includes processor circuitry and memory circuitry that stores code. The processing system is configured to cause the multimedia device to obtain one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The processing system is further configured to cause the multimedia device to obtain, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The processing system is further configured to cause the multimedia device to output the first frames and the second frames to an age monitoring engine associated with the display.
[0009] Details of one or more implementations of the subject matter described in this disclosure are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages will become apparent from the description, the drawings and the claims. Note that the relative dimensions of the following figures may not be drawn to scale.BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 shows a block diagram of an example system-on-chip (SoC) configured for operating a display.
[0011] Figure 2 shows a system block diagram illustrating an example electronic device incorporating a pixel array display.
[0012] Figure 3 shows a diagram of an example mobile device, such as a mobile phone, including a display.
[0013] Figure 4 shows a diagram of an example headset, such as a virtual reality, mixed reality, or augmented reality headset, that includes a display.
[0014] Figure 5 shows a diagram of an example system that supports age monitoring associated with a display.
[0015] Figure 6 shows a diagram illustrating some example features of the system of Figure 5.
[0016] Figure 7 shows a flow chart of an example process that supports age monitoring associated with a display.
[0017] Like reference numbers and designations in the various drawings indicate like elements.DETAILED DESCRIPTION
[0018] Various aspects relate to generally to aging analysis for a display. Some aspects more specifically relate to aging analysis for a display while also reducing power consumption and increasing user interface (UI) smoothness. In some aspects, a sampling frequency at which frames of display data are stored to a buffer may be adjusted in accordance with a period of inactivity associated with the display. In some examples, the display may include a touchscreen, and the period of inactivity may correspond to a period of touch inactivity during which no touch input is received via the touchscreen. As a duration of the period of inactivity increases, the sampling frequency may be decreased, which may reduce or avoid storing the same or similar frames to the buffer. If a touch event is detected, the sampling frequency may be increased. Contents of the buffer may be provided to an age monitoring engine. The age monitoring engine may determine, calculate, ascertain, obtain, or select, in accordance with the contents of the buffer, one or more pixel compensation values to compensate for aging associated with one or more pixel elements of the display.
[0019] Alternatively, or in addition, contents of the buffer may be provided to the age monitoring engine in accordance with detection of one or more idle mode trigger conditions. For example, the contents of the buffer may be provided to the age monitoring engine in accordance with detection of one or more of a touch idle mode associated with the display or a processor idle mode associated with a central processing unit (CPU) or other processor. Upon detecting the one or more idle mode trigger conditions, the age monitoring engine may be woken (such as from a sleep mode of operation) to perform aging analysis using the contents of the buffer, which may utilize hardware and other device resources.
[0020] Particular implementations of the subject matter described in this disclosure may be implemented to realize one or more of the following potential advantages or benefits. In some aspects, adaptively adjusting a sampling frequency of storing frames of display data to a buffer may decrease an amount of data stored to the buffer, which may decrease a quantity of duplicate frames stored to the buffer. As a result, device resource utilization and device power consumption may be decreased.
[0021] Alternatively, or in addition, by selectively providing contents of the buffer to an age monitoring engine in accordance with detection of one or more idle mode trigger conditions, the age monitoring engine may be woken less frequently as compared to some other techniques, such as a technique that periodically wakes the age monitoring engine to receive buffer contents. Further, aging analysis may be performed while a CPU (or another processor) is idle and while no user input is being received at the display. As a result, potential resource conflicts between the CPU (or other processor) may be avoided while also reducing or avoiding user interference latency that may be caused by concurrent processing of user input and aging analysis.
[0022] Figure 1 shows a block diagram of an example system-on-chip (SoC) configured for operating a display. The SoC 100 may include several components coupled together through a bus 102, which may be a network-on-a-chip (NoC) or a plurality of NOCs interconnecting various components. For example, although Figure 1 illustrates several components coupled to the bus 102, the several components may be coupled to different busses with additional busses connecting the different busses to provide a path for communication between the components.
[0023] One example component in the SoC 100 is a digital signal processor (DSP) 112 for signal processing. The DSP 112 may include hardware customized for performing a limited set of operations on specific kinds of data. For example, a DSP may include transistors coupled together to perform operations on streaming data and use memory architectures and / or access techniques to fetch multiple data or instructions concurrently. Such configurations may allow the DSP 112 to operate on real-time data, such as video data, audio data, image data, or modem data, in a power-efficient manner.
[0024] The SoC 100 also includes a central processing unit (CPU) 104 and a memory 106 storing instructions 108 (such as a memory storing processor-readable code or a non-transitory computer-readable medium storing instructions) that may be executed by a processor of the SoC 100. The CPU 104 may be a single central processing unit (CPU) or a CPU cluster comprising two or more cores such as core 104A. The CPU 104 may include hardware capable of performing generic operations on many kinds of data, such as hardware capable of executing instructions from the Advanced RISC Machines instruction set, such as ARMv8 and ARMv9. For example, a CPU 104 may include transistors coupled together to perform operations for supporting executing an operating system and user applications (such as a camera application, a multimedia application, a gaming application, a productivity application, a messaging application, a videocall application, an audio recording application, a video recording application) . The CPU 104 may execute instructions 108 retrieved from the memory 106. In some implementations, the CPU 104 executing an operating system may coordinate execution of instructions by various components within the SoC 100. For example, the CPU 104 may retrieve instructions 108 from memory 106 and execute the instructions on the DSP 112.
[0025] The SoC 100 may further include a neural signal processor (NSP) 124 for executing machine learning (ML) models relating to multimedia applications. The NSP 124 may include hardware configured to perform and accelerate convolution operations involved in executing machine learning algorithms. For example, the NSP 124 may improve performance when executing predictive models such as artificial neural networks (ANNs) (including multilayer feedforward neural networks (MLFFNN) , the recurrent neural networks (RNN) , and / or the radial basis functions (RBF) ) . The ANN executed by the NSP 124 may access predefined training weights stored in the memory 106 for performing operations on user data.
[0026] The SoC 100 may be coupled to a display 114 for interacting with a user. The display 114 may be controlled by a driver 114A, such as shown in and described with reference to Figure 2, which is another example of a processor. The driver 114A may be an application specific integrated circuit (ASIC) configured to perform methods described according to aspects of this disclosure. In some implementations, the display 114 may be a field sequential display and the driver 114A is configured to apply control signals to the field sequential display to generate the display of individual colors in a sequential manner according to image frames output from the SoC 100 to the display 114. The SoC 100 also may include a graphics processing unit (GPU) 126 for rendering images on the display 114. In some implementations, the CPU 104 may perform rendering to the display 114 without a GPU 126. In some implementations, the GPU 126 may be configured to execute instructions for performing operations unrelated to rendering images, such as for processing large volumes of datasets in parallel.
[0027] Processing algorithms, techniques, and methods that are described herein may be executed by at least one processor of the SoC 100, which may include execution by all steps on one of the processors (such as DSP 112, CPU 104, NSP 124, GPU 126) or may include execution of steps across a combination of one or more of the processors (such as DSP 112, CPU 104, NSP 124, GPU 126, driver 114A) . In some implementations, at least one of the driver 114A, the GPU 126, or the CPU 104 executes instructions to perform various operations described herein. To illustrate, in some implementations, the CPU 104 may include or may execute an adaptive anti-aging engine 110 to perform one or more operations described herein. In some other implementations, operations described with reference to the adaptive anti-aging engine 110 may be performed by one or more other components illustrated in Figure 1, such as one or more of the driver 114A, the GPU 126, or the NSP 124.
[0028] Input / output components may be coupled to the SoC 100 through an input / output (I / O) hub 116. An example of a hub 116 is an interconnect to a peripheral component interconnect express (PCIe) bus. Example components coupled to hub 116 may be components used for interacting with a user, such as a touch screen interface and / or physical buttons. Some components coupled to hub 116 also may include network interfaces for communicating with other devices, including a wide area network (WAN) adaptor (such as WAN adaptor 152) , a local area network (LAN) adaptor (such as LAN adaptor 153) , and / or a personal area network (PAN) adaptor (such as PAN adaptor 154) . A WAN adaptor 152 may be a 4G LTE or a 5G NR wireless network adaptor. A LAN adaptor 153 may be an IEEE 802.11 WiFi wireless network adapter. A PAN adaptor 154 may be a Bluetooth wireless network adaptor. Each of the WAN adaptor 152, LAN adaptor 153, and / or PAN adaptor 154 may be coupled to an antenna that may be shared by each of the adaptors 152, 153, and 154, or coupled to multiple antennas configured for primary and diversity reception and / or configured for receiving specific frequency bands. In some implementations, the WAN adaptor 152, LAN adaptor 153, and / or PAN adaptor 154 may share circuitry, such as portions of a radio frequency front end (RFFE) .
[0029] Audio circuitry 156 may be integrated in SoC 100 as dedicated circuitry for coupling the SoC 100 to a speaker 120 external to the SoC 100, which may be a transducer such as a speaker (either internal to or external to a device incorporating the SoC 100) or headphones. The audio circuitry 156 may include coder / decoder (CODEC) functionality for processing digital audio signals. The audio circuitry 156 may further include one or more amplifiers (such as a class-D amplifier) for driving a transducer coupled to the SoC 100 for outputting sounds generated during execution of applications by the SoC 100.
[0030] The SoC 100 may couple to external devices outside the package of the SoC 100. For example, the SoC 100 may be coupled to a power supply 118, such as a battery or an adaptor to couple the SoC 100 to an energy source. The signal processing described herein may be adapted to and achieve power efficiency to support operation of the SoC 100 from a limited-capacity power supply 118 such as a battery. For example, operations may be performed on a portion of the SoC 100 configured for performing the operation at a lowest power consumption. As another example, operations themselves are performed in a manner that reduces an amount of computations to perform the operation, such that the algorithm is optimized for extending the operational time of a device while powered by a limited-capacity power supply 118. In some implementations, the operations described herein may be configured based on a type of power supply 118 providing energy to the SoC 100. For example, a first set of operations may be executed to perform a function when the power supply 118 is a wall adaptor. As another example, a second set of operations may be executed to perform a function when the power supply 118 is a battery.
[0031] The SoC 100 also may include or be coupled to additional features or components that are not shown in Figure 1. Although components are shown integrated as a single SoC 100, which may include all components built on a single semiconductor die with a common semiconductor substrate, other arrangements of the illustrated blocks different number of dies, substrates, and / or packages may be arranged to accomplish the same functionality described in this disclosure.
[0032] The memory 106 may include a non-transient or non-transitory computer readable medium storing computer-executable instructions as instructions 108 to perform all or a portion of one or more operations described in this disclosure. The instructions 108 may include a multimedia application (or other suitable application such as a messaging application that may display multimedia content or otherwise influence the output of the display 114) to be executed by the SoC 100 that records, processes, or outputs video signals. The instructions 108 also may include other applications or programs executed by the SoC 100, such as an operating system and applications other than for multimedia processing.
[0033] While the SoC 100 is referred to in the examples herein for performing aspects of the present disclosure, some device components may not be shown in Figure 1 to prevent obscuring aspects of the present disclosure. Additionally, other components, numbers of components, or combinations of components may be included in a suitable device for performing aspects of the present disclosure. As such, the present disclosure is not limited to a specific device or configuration of components, including the SoC 100.
[0034] One example driver circuit is shown in Figure 2 and described below. Figure 2 shows a system block diagram 200 illustrating an example electronic device incorporating a pixel array display. The electronic device includes a SoC 100 with one or more processors (such as CPU 104) that may be configured to execute one or more software modules. In addition to executing an operating system, such processors may be configured to execute one or more software applications, including a web browser, a telephone application, an email program, or any other software application. In some examples, the SoC 100 may include the adaptive anti-aging engine 110.
[0035] The CPU 104 can be configured to communicate, such as through a hardware driver, with an array driver 222, which is one nonlimiting example of driver 114A from Figure 1. The array driver 222 can include a row driver circuit 224 and a column driver circuit 226 that provide signals to, such as a display array. Although Figure 2 illustrates a 3×3 pixel array for the sake of clarity, the display array 230 may contain a very large number of pixels, and may have a different number of pixels in rows than in columns, and vice versa. In some implementations, the CPU 104
[0036] Though a series of pixels in an array may be referred to in some instances as “rows” or “columns, ” a person having ordinary skill in the art will readily understand that referring to one direction as a “row” and another as a “column” is arbitrary. Restated, in some orientations, the rows can be considered columns, and the columns considered to be rows. Furthermore, the display elements may be evenly arranged in orthogonal rows and columns (an “array” ) , or arranged in non-linear configurations, for example, having certain positional offsets with respect to one another (a “mosaic” ) . The terms “array” and “mosaic” may refer to either configuration. Thus, although the display is referred to as including an “array” or “mosaic, ” the elements themselves need not be arranged orthogonally to one another, or disposed in an even distribution, in any instance, but may include arrangements having asymmetric shapes and unevenly distributed elements.
[0037] Aspects of the signal processing described in Figure 1 or Figure 2 may be applied in example devices, such as the example devices of Figure 3 or Figure 4. Figure 3 shows a diagram of an example mobile device 302, such as a mobile phone, including a display 304. Additionally, one or more components of the SoC 100 may be integrated in the mobile device 302. For example, the mobile device 302 may include the SoC 100 including the adaptive anti-aging engine 110.
[0038] Figure 4 shows a diagram of an example headset device 402, such as a virtual reality, mixed reality, or augmented reality headset, that includes a display 408. The headset device 402 includes the display 408, microphone (s) 430 and speaker (s) 420. Additionally, components of the SoC 100 and / or driver 114A may be integrated in the headset device 402. To illustrate, the example headset of Figure 4 may include the SoC 100 including the adaptive anti-aging engine 110.
[0039] Aspects of this disclosure are directed to certain implementations; however, the teachings herein can be applied in a multitude of different ways to different devices. The described implementations may be implemented in any device that is configured to display an image, whether in motion (such as video) or stationary (such as still image) , and whether textual, graphical or pictorial. More particularly, it is contemplated that the implementations may be implemented in or associated with a variety of electronic devices such as, but not limited to, mobile telephones, multimedia Internet enabled cellular telephones, mobile television receivers, wireless devices, smartphones, Bluetooth devices, personal data assistants (PDAs) , wireless electronic mail receivers, hand-held or portable computers, netbooks, notebooks, smartbooks, tablets, printers, copiers, scanners, facsimile devices, GPS receivers / navigators, cameras, MP3 players, camcorders, game consoles, wrist watches, clocks, calculators, television monitors, flat panel displays, electronic reading devices (such as e-readers) , computer monitors, auto displays (such as odometer display, etc. ) , cockpit controls and / or displays, camera view displays (such as display of a rear view camera in a vehicle) , electronic photographs, electronic billboards or signs, projectors, architectural structures, microwaves, refrigerators, stereo systems, cassette recorders or players, DVD players, CD players, VCRs, radios, portable memory chips, washers, dryers, washer / dryers, parking meters, packaging (such as MEMS and non-MEMS) , aesthetic structures (such as display of images on a piece of jewelry) and a variety of electromechanical systems devices. The teachings herein also can be used in non-display applications such as, but not limited to, electronic switching devices, radio frequency filters, sensors, accelerometers, gyroscopes, motion-sensing devices, magnetometers, inertial components for consumer electronics, parts of consumer electronics products, varactors, liquid crystal devices, electrophoretic devices, drive schemes, manufacturing processes, and electronic test equipment. Thus, the teachings are not intended to be limited to the implementations depicted solely in the Figures, but instead have wide applicability as will be readily apparent to a person having ordinary skill in the art.
[0040] Figure 5 shows a diagram of an example system 500 that supports age monitoring associated with a display. The system 500 may include the adaptive anti-aging engine 110, an age monitoring engine 570, and a display, such as an organic light emitting diode (OLED) touchscreen display 590. In some examples, the OLED touchscreen display 590 may correspond to the display 114, the display 304, the display 408, or another display.
[0041] In some examples, the adaptive anti-aging engine 110 may include or may access a buffer 560, such as a write buffer or a concurrent write back (CWB) buffer. The buffer 560 may be coupled to or may be accessible by the age monitoring engine 570. In some examples, the age monitoring engine 570 may correspond to a virtual machine (VM) . In some implementations, the age monitoring engine 570 also may be referred to as an anti-aging engine or as an de-burn-in engine.
[0042] The OLED touchscreen display 590 may include a touch panel and OLED pixel elements. To illustrate, the touch panel may include a resistive touch panel, a capacitive touch panel, a surface acoustic wave (SAW) touch panel, or another type of touch panel. In some cases, an OLED pixel element also may be referred to as an organic electroluminescent (EL) diode.
[0043] In some implementations, the system 500 may be included in a computing device, such as a mobile phone or a computer (such as a laptop computer, a tablet computer, or a desktop computer) . Other examples are also within the scope of the disclosure. For example, in some implementations, the system 500 may be included in a vehicle, such as within a vehicle navigation system or a vehicle entertainment system. In another example, the system 500 may be included in a television or in another device.
[0044] During operation, the adaptive anti-aging engine 110 may perform operations associated with data 508. The data 508 may correspond to or may be associated with graphical content 594 presented at the OLED touchscreen display 590. For example, the data 508 may include one or more frames of the graphical content 594, such as a first frame 510a, a second frame 510b, and a third frame 510c. In such examples, presentation of the graphical content 594 at the OLED touchscreen display 590 may include presenting the frames 510a-c. In some implementations, each frame of the data 508 may specify a set of pixel values to be presented via the graphical content 594 at the OLED touchscreen display 590. In some examples, the graphical content 594 may include images or video.
[0045] In some implementations, presentation of graphical content (such as the graphical content 594) at the OLED touchscreen display 590 may cause wear to one or more pixel elements of the OLED touchscreen display 590. For example, in an OLED implementation of the OLED touchscreen display 590, presentation of the graphical content 594 may cause “burn in” to one or more pixel elements of the OLED touchscreen display 590 in some cases.
[0046] To compensate for such wear, the age monitoring engine 570 may monitor at least some frames of the data 508. For example, the adaptive anti-aging engine 110 may store such frames to the buffer 560 as buffered frames 564 and may provide the buffered frames 564 from the buffer 560 to the age monitoring engine 570. The age monitoring engine 570 may receive the buffered frames 564 from the buffer 560 and may determine, calculate, ascertain, obtain, or select one or more pixel compensation values 574 associated with the buffered frames 564. The one or more pixel compensation values 574 may enable the adaptive anti-aging engine 110 to compensate for wear associated with the OLED touchscreen display 590, such as by adjusting color, brightness, or other parameters associated with the graphical content 594 to reduce visual perceivability of the wear.
[0047] In some aspects of the disclosure, frames of the data 508 may be adaptively sampled, such as by adaptively changing a sampling frequency at which frames of the data 508 are recorded to the buffer 560. To illustrate, the adaptive anti-aging engine 110 may select one or more first frames of the data 508 in accordance with a first sampling frequency, such as a default sampling frequency 512. In an illustrative example, the adaptive anti-aging engine 110 may sample the first frame 510a in accordance with the default sampling frequency 512 and may store the first frame 510a to the buffer 560.
[0048] The default sampling frequency 512 may be selected, for example, based on loading a new application or based on a change in graphical content presented at the OLED touchscreen display 590. In such examples, the adaptive anti-aging engine 110 may “default” to the default sampling frequency 512 and may record frames of the data 508 to the buffer 560 in accordance with the default sampling frequency 512. To further illustrate, if the default sampling frequency 512 corresponds to 1 hertz (Hz) , then the adaptive anti-aging engine 110 may store a frame of the data 508 to the buffer 560 once per second. Other examples are also within the scope of the disclosure.
[0049] In some examples, the adaptive anti-aging engine 110 may detect a period of inactivity, such as a period of touch inactivity 534 associated with the OLED touchscreen display 590. For example, the period of touch inactivity 534 may correspond to period during which no touch input is detected at the OLED touchscreen display 590. In some implementations, the adaptive anti-aging engine 110 may receive touch data 530 associated with the OLED touchscreen display 590 and may analyze the touch data 530 to identify the period of touch inactivity 534. As referred to herein, “touch input” may refer to a wide variety of inputs including physical touching via a user fingertip as well as other types of physical touching, such as via a stylus or other device. Further, in some implementations, touch input may be detected without direct physical contact of the OLED touchscreen display 590. For example in some implementations, touch input may be detected using a sensing device (such as ultrasonic transceiver) without physical contact of the OLED touchscreen display 590.
[0050] In some examples, the adaptive anti-aging engine 110 may include or may execute an inactivity timer 520. While no touch input is detected at the OLED touchscreen display 590, the adaptive anti-aging engine 110 may increment a value 524 of the inactivity timer 520. In some examples, if touch input is detected at the OLED touchscreen display 590, the adaptive anti-aging engine 110 may reset the value 524 to an initial value, such as zero or another value. In some other examples, if the value 524 reaches a threshold value 528, the adaptive anti-aging engine 110 may detect the period of touch inactivity 534 associated with the OLED touchscreen display 590. In this case, the adaptive anti-aging engine 110 may detect the period of touch inactivity 534 in accordance with the value 524 of the inactivity timer 520 satisfying the threshold value 528. As a non-limiting illustrative example, the period of touch inactivity 534 may correspond to five seconds, ten seconds, fifteen seconds, or another value. During the period of touch inactivity 534, the adaptive anti-aging engine 110 may sample frames of the data 508 in accordance with the default sampling frequency 512.
[0051] In some implementations, the adaptive anti-aging engine 110 may include a comparator 526 to perform one or more comparison operations described herein, such as comparison of the value 524 to the threshold value 528. The comparator 526 may output a control signal having one of a first value (such as a logic zero value or a logic one value) or a second value (such as a logic one value or a logic zero value) .
[0052] In accordance with detecting the period of touch inactivity 534 associated with the OLED touchscreen display 590, the adaptive anti-aging engine 110 may adaptively change a sampling frequency associated with sampling frames of the data 508 to the buffer 560. For example, in accordance with detecting the period of touch inactivity 534 associated with the OLED touchscreen display 590, the adaptive anti-aging engine 110 may begin storing frames of the data 508 to the buffer 560 in accordance with a second sampling frequency, such as a reduced sampling frequency 516. In an illustrative example, the adaptive anti-aging engine 110 may sample the second frame 510b in accordance with the reduced sampling frequency 516 and may store the second frame 510b to the buffer 560. The reduced sampling frequency 516 may be less than the default sampling frequency 512. To illustrate, if the reduced sampling frequency 516 corresponds to 0.5 hertz (Hz) , then the adaptive anti-aging engine 110 may store a frame of the data 508 to the buffer 560 once every other second. Other examples are also within the scope of the disclosure.
[0053] Further, in some implementations, the adaptive anti-aging engine 110 may iteratively reduce the sampling frequency at which frames of the data 508 are sent to the buffer 560 in accordance with a duration of the period of touch inactivity 534. For example, as the duration of the period of touch inactivity 534 increases (during which time no touch input is received at the OLED touchscreen display 590) , the adaptive anti-aging engine 110 may iteratively decrease the sampling frequency. As an illustrative example, for a first duration, second duration, third duration, and fourth duration of the period of touch inactivity 534, the adaptive anti-aging engine 110 may sample the data 508 in accordance with a sampling frequency of 1 Hz, 0.5 Hz, 0.2 Hz, and 0.1 Hz, respectively. In some examples, the first duration may correspond to 0 to 50 seconds of touch inactivity, 50 to 20 seconds of touch inactivity, 20 to 30 seconds of touch inactivity, and 30 to 40 seconds of touch inactivity. In such examples, the reduced sampling frequency 516 may be included in a set of sampling frequencies each different than the default sampling frequency 512, and the adaptive anti-aging engine 110 may select among the set of sampling frequencies in accordance with the duration of the period of touch inactivity 534.
[0054] In some examples, the adaptive anti-aging engine 110 may detect one or more conditions associated with adjusting the sampling frequency associated with the data 508 to the default sampling frequency 512. In some examples, the one or more conditions may include detecting a touch event 538 at the OLED touchscreen display 590.
[0055] Alternatively, or in addition, the one or more conditions may include detecting a frame geometry change 544 associated with the graphical content 594 that satisfies one or more frame geometry change criteria 548. To illustrate, relatively similar frames of the data 508 may be associated with similar burn-in characteristics and may fail to satisfy the one or more frame geometry change criteria 548. In some such examples, the adaptive anti-aging engine 110 may reduce or avoid instances of sending multiple such similar frames to the buffer 560 by maintaining the reduced sampling frequency 516. In some other cases, the frame geometry change 544 may satisfy the one or more frame geometry change criteria 548. For example, one frame of the data 508 may be associated with a first application, and a subsequent frame of the data 508 may be associated with a second application different than the first application.
[0056] In some implementations, the adaptive anti-aging engine 110 may include a frame geometry change detector 540. The frame geometry change detector 540 may access frames of the data 508 (such as the frames 510a-c) and may compare at least some of the frames to detect the frame geometry change 544. The frame geometry change detector 540 may compare the frame geometry change 544 to the one or more frame geometry change criteria 548 to detect whether the frame geometry change 544 satisfies the one or more frame geometry change criteria 548.
[0057] In an example, the one or more frame geometry change criteria 548 may correspond to a particular quantity of pixels common to multiple frames. In some such examples, a frame geometry change 544 between two frames may satisfy the one or more frame geometry change criteria 548 if the two frames share at least the particular quantity of pixels in common. In some other examples, a frame geometry change 544 between two frames may fail to satisfy the one or more frame geometry change criteria 548 if the two frames do not share at least the particular quantity of pixels in common.
[0058] Accordingly, in some examples, the adaptive anti-aging engine 110 may detect an end of the period of touch inactivity 534 in accordance with detecting either (or both) of the touch event 538 or the frame geometry change 544 satisfying the one or more frame geometry change criteria 548. In accordance with detecting one or more of the touch event 538 or the frame geometry change 544 satisfying the one or more frame geometry change criteria 548, the adaptive anti-aging engine 110 may return to sampling the data 508 according to the default sampling frequency 512 (such as instead of the reduced sampling frequency 516) . In an illustrative example, the adaptive anti-aging engine 110 may sample the third frame 510c in accordance with the default sampling frequency 512 and may store the third frame 510c to the buffer 560. Further, the adaptive anti-aging engine 110 may reset the value 524 of the inactivity timer 520 (such as to zero or another value) .
[0059] In some implementations, the age monitoring engine 570 may receive the buffered frames 564 from the buffer 560. For example, in some implementations, the age monitoring engine 570 may wake from a sleep mode of operation to receive the buffered frames 564. In some examples, the age monitoring engine 570 may operate according to a first mode (such as a sleep mode) and may transition from the first mode to a second mode (such as an active mode) to receive the buffered frames 564. The first mode may be associated with a first power consumption of the age monitoring engine 570 that is less than a second power consumption associated with the second mode. The buffered frames 564 may include, for example, one or more of the frames 510a-c. The age monitoring engine 570 may perform aging analysis based on the buffered frames 564 and may determine, calculate, ascertain, obtain, or select the one or more pixel compensation values 574 based on the aging analysis.
[0060] Accordingly, in some aspects of the disclosure, the system 500 may adaptively change a sampling frequency associated with sending frames of the data 508 to the buffer 560. Alternatively, or in addition, in some aspects of the disclosure, the system 500 may detect one or more idle mode trigger conditions 550 and may send the buffered frames 564 from the buffer 560 to the age monitoring engine 570 in accordance with detecting the one or more idle mode trigger conditions 550.
[0061] To illustrate, in some examples, the one or more idle mode trigger conditions 550 may include a touch idle mode 554 associated with the OLED touchscreen display 590. During the touch idle mode 554, no touch input may be received at the OLED touchscreen display 590 for at least a threshold time interval. In depending on the implementation, the threshold time interval associated with the touch idle mode 554 may correspond to, or may be different than, the period of touch inactivity 534. To illustrate, in some implementations, the threshold time interval associated with the touch idle mode 554 may be five seconds, ten seconds, twenty seconds, or another time interval.
[0062] Alternatively, or in addition, the one or more idle mode trigger conditions 550 may include a processor idle mode 558 associated with a processor, such as any of the CPU 104, the DSP 112, the NSP 124, or the GPU 126 of Figure 1. To illustrate, the processor idle mode 558 may correspond to a time interval during which the processor executes fewer than a threshold quantity of instructions. In another example, the processor idle mode 558 may correspond to a time interval during which the processor operates according to a sleep mode of operation or a reduced power mode of operation.
[0063] Accordingly, in some examples, the adaptive anti-aging engine 110 may provide contents of the buffer 560 (such as the buffered frames 564) from the buffer 560 to the age monitoring engine 570 in accordance with detecting either (or both) of the touch idle mode 554 or the processor idle mode 558. Further, in some examples, the adaptive anti-aging engine 110 may wake the age monitoring engine 570 from a sleep mode of operation in accordance with detecting the one or more idle mode trigger conditions 550 to enable the age monitoring engine 570 to receive the buffered frames 564 (and to determine, calculate, ascertain, obtain, or select the one or more pixel compensation values 574) . Further, although contents of the buffer 560 may be described as including the buffered frames 564, it will be appreciated that other data may be stored to the buffer 560, such as metadata associated with the buffered frames 564, timestamp data associated with the buffered frames 564, other data, or a combination thereof.
[0064] The adaptive anti-aging engine 110 may apply the one or more pixel compensation values 574 to at least one frame of the data 508 to compensate for aging associated with one or more pixel elements of the OLED touchscreen display 590. To illustrate, the one or more pixel compensation values 574 may enable the adaptive anti-aging engine 110 to compensate for wear associated with the OLED touchscreen display 590, such as by adjusting color, brightness, or other parameters associated with the graphical content 594 to reduce visual perceivability of the wear.
[0065] Further, in some implementations, the adaptive anti-aging engine 110 may initiate, perform, or control one or more operations described with reference to Figure 5 by executing a first operating system. In some examples, the first operating system may correspond to a high-level operating system (HLOS) , and the age monitoring engine 570 may correspond to a second operating system different than the first operating system. In some examples, the second operating system may implement the age monitoring engine 570 as a virtual machine (VM) , such as secure VM having exclusive access to contents of the buffer 560 (such as the buffered frames 564) . The age monitoring engine 570 may receive contents of the buffer 560 via a secure writeback operation, which may include or may utilize a frame dump ring buffer queue. The age monitoring engine 570 may analyze the contents of the buffer 560 using one or more components described herein, such as one or more of the bus 102, the CPU 104, the DSP 112, the NSP 124, the GPU 126, or the memory 106 of Figure 1, as illustrative examples. Some illustrative examples that may be associated with the adaptive anti-aging engine 110 and the age monitoring engine 570 are described further with reference to Figure 2.
[0066] Figure 6 shows a diagram illustrating some example features of the system 500 of Figure 5. The example features of Figure 6 may include the adaptive anti-aging engine 110, the age monitoring engine 570, and the OLED touchscreen display 590.
[0067] The adaptive anti-aging engine 110 may include or may be associated with an application 604. For example, the CPU 104 of Figure 1 may execute the application 604 to process the data 508 and to initiate presentation of the graphical content 594 via the OLED touchscreen display 590. The adaptive anti-aging engine 110 also may include or may be associated with one or more of a window manager 608, a hardware user interface (HW UI) 612, a display service 616, a display manager 620, or one or more drivers 630. The display manager 620 may include or may be associated with a de-burn-in service 624 and the buffer 560. In some examples, the window manager 608 may include a user interface management service, and the HW UI 612 may include an operating system user interface rendering service. In some examples, the one or more drivers 630 may include one or more of a direct rendering manager (DRM) driver, a kernel mode setting (KMS) driver, or an operating system kernel display software driver. In some examples, the one or more drivers 630 may include or may correspond to the driver 114A.
[0068] The age monitoring engine 570 may include an aging analyzer 652, a secure database 654, and an aging accumulator 656. The secure database 654 may be coupled to or may be accessible by the aging analyzer 652 and the aging accumulator 656.
[0069] During operation, the adaptive anti-aging engine 110 may provide the buffered frames 564 to the age monitoring engine 570. For example, the adaptive anti-aging engine 110 may provide the buffered frames 564 to the age monitoring engine 570 in accordance with detecting the one or more idle mode trigger conditions 550. In some examples, in accordance with detecting the one or more idle mode trigger conditions 550, the adaptive anti-aging engine 110 may wake the age monitoring engine from a sleep mode to receive the buffered frames 564. In some examples, the age monitoring engine 570 may operate according to a first mode (such as a sleep mode) and may transition from the first mode to a second mode (such as an active mode) to receive the buffered frames 564. The first mode may be associated with a first power consumption of the age monitoring engine 570 that is less than a second power consumption associated with the second mode.
[0070] The age monitoring engine 570 may receive the buffered frames 564 from the buffer 560. In some implementations, the age monitoring engine 570 may input the buffered frames 564 to the aging analyzer 652, and the aging analyzer 652 may perform an aging analysis of the buffered frames 564 and may store a result of the aging analysis to the secure database 654. The aging accumulator 656 may determine, calculate, ascertain, obtain, or select the one or more pixel compensation values 574 based on contents of the secure database 654. For example, the aging accumulator 656 may sum values indicated by contents of the secure database 654 to estimate a cumulative amount of aging associated with one or more pixel elements of the OLED touchscreen display 590 and may generate the one or more pixel compensation values 574 based on the cumulative amount of aging.
[0071] The adaptive anti-aging engine 110 may receive the one or more pixel compensation values 574. In some examples, the display manager 620 may receive the one or more pixel compensation values 574 and may input the one or more pixel compensation values 574 to the de-burn-in service 624. Based on the one or more pixel compensation values 574, the de-burn-in service 624 may compensate for wear associated with the OLED touchscreen display 590, such as by adjusting color, brightness, or other parameters associated with the graphical content 594 to reduce visual perceivability of the wear.
[0072] One or more features described herein may improve performance of an electronic device that uses a display. To illustrate, adaptively adjusting a sampling frequency of storing frames of the data 508 to the buffer 560 may decrease an amount of data stored to the buffer 560, which may decrease a quantity of duplicate frames stored to the buffer 560. As a result, device resource utilization and device power consumption may be decreased.
[0073] Alternatively, or in addition, by selectively providing contents of the buffer 560 to the age monitoring engine 570 in accordance with detection of the one or more idle mode trigger conditions 550, the age monitoring engine 570 may be woken less frequently as compared to some other techniques, such as a technique that periodically wakes the age monitoring engine 570 to receive contents of the buffer 560. Further, aging analysis may be performed while the CPU 104 (or another processor) is idle and while no user input is being received at the OLED touchscreen display 590. As a result, potential resource conflicts between the CPU 104 (or other processor) may be avoided while also reducing or avoiding user interference latency that may be caused by concurrent processing of user input and aging analysis.
[0074] Figure 7 shows a flow chart of an example process 700 that supports age monitoring associated with a display. The operations of the process 700 may be implemented by a device, such as the SoC 100, the mobile device 302, the headset device 402, or the system 500.
[0075] In some examples, in block 702, the device obtains one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. In some examples, the first frames may include frames of the data 508 associated with the graphical content 594 of the OLED touchscreen display 590, such as the first frame 510a. In some examples, the first sampling frequency may correspond to the default sampling frequency 512.
[0076] In some examples, in block 704, the device obtains, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. In some examples, the second frames may include frames of the data 508, such as the second frame 510b. In some examples, the second sampling frequency may correspond to the reduced sampling frequency 516.
[0077] In some examples, in block 706, the device outputs the first frames and the second frames to an age monitoring engine associated with the display. In some examples, the data may be output to the age monitoring engine 570, such as to enable the age monitoring engine 570 to determine, calculate, ascertain, obtain, or select the one or more pixel compensation values 574.
[0078] In a first aspect, a method includes obtaining one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The method further includes obtaining, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The method further includes outputting the first frames and the second frames to an age monitoring engine associated with the display.
[0079] In a second aspect, in combination with the first aspect, the first frames are sampled, in accordance with the first sampling frequency, to a buffer that is accessible to the age monitoring engine, and the second frames are sampled, in accordance with the second sampling frequency, to the buffer.
[0080] In a third aspect, in combination with one or more of the first aspect or the second aspect, the method further includes obtaining, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency. The method further includes resetting a value of an inactivity timer that is associated with the period of inactivity.
[0081] In a fourth aspect, in combination with one or more of the first aspect through the third aspect, the second sampling frequency is included in a set of sampling frequencies each different than the first sampling frequency, and the method further includes selecting among the set of sampling frequencies in accordance with a duration of the period of inactivity.
[0082] In a fifth aspect, in combination with one or more of the first aspect through the fourth aspect, the first frames and the second frames are sent to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.
[0083] In a sixth aspect, in combination with one or more of the first aspect through the fifth aspect, the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.
[0084] In a seventh aspect, in combination with one or more of the first aspect through the sixth aspect, the method further includes receiving, from the age monitoring engine, one or more pixel compensation values associated with the display and applying the one or more pixel compensation values to at least one frame of the data to compensate for aging associated with one or more pixel elements of the display.
[0085] In an eighth aspect, in combination with one or more of the first aspect through the seventh aspect, the display corresponds to an organic light emitting diode (OLED) touchscreen display.
[0086] In a ninth aspect, an apparatus includes a processing system that includes processor circuitry and memory circuitry that stores code. The processing system is configured to cause the apparatus to obtain one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The processing system is further configured to cause the apparatus to obtain, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The processing system is further configured to cause the apparatus to output the first frames and the second frames to an age monitoring engine associated with the display.
[0087] In a tenth aspect, in combination with the ninth aspect, the processing system is further configured to sample the first frames to a buffer in accordance with the first sampling frequency and to sample the second frames to the buffer in accordance with the second sampling frequency.
[0088] In an eleventh aspect, in combination with one or more of the ninth aspect through the tenth aspect, the processing system is further configured to obtain, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency. The processing system is further configured to reset a value of an inactivity timer that is associated with the period of inactivity.
[0089] In a twelfth aspect, in combination with one or more of the ninth aspect through the eleventh aspect, the second sampling frequency is included in a set of sampling frequencies each different than the first sampling frequency, and the processing system is further configured to select among the set of sampling frequencies in accordance with a duration of the period of inactivity.
[0090] In a thirteenth aspect, in combination with one or more of the ninth aspect through the twelfth aspect, the processing system is further configured to send the first frames and the second frames to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.
[0091] In a fourteenth aspect, in combination with one or more of the ninth aspect through the thirteenth aspect, the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.
[0092] In a fifteenth aspect, in combination with one or more of the ninth aspect through the fourteenth aspect, the processing system is further configured to receive, from the age monitoring engine, one or more pixel compensation values associated with the display and to apply the one or more pixel compensation values to at least one frame of the data to compensate for aging associated with one or more pixel elements of the display.
[0093] In a sixteenth aspect, in combination with one or more of the ninth aspect through the fifteenth aspect, the display corresponds to an organic light emitting diode (OLED) touchscreen display.
[0094] In a seventeenth aspect, a multimedia device includes a display and a processing system that includes processor circuitry and memory circuitry that stores code. The processing system is configured to cause the multimedia device to obtain one or more first frames of data associated with graphical content of a display. The first frames are associated with a first sampling frequency. The processing system is further configured to cause the multimedia device to obtain, after a period of inactivity associated with the display, one or more second frames of the data. The second frames are associated with a second sampling frequency that is different than the first sampling frequency. The processing system is further configured to cause the multimedia device to output the first frames and the second frames to an age monitoring engine associated with the display.
[0095] In an eighteenth aspect, in combination with the seventeenth aspect, the processing system is further configured to obtain, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency. The processing system is configured to reset a value of an inactivity timer that is associated with the period of inactivity.
[0096] In a nineteenth aspect, in combination with one or more of the seventeenth aspect through the eighteenth aspect, the processing system is further configured to send the first frames and the second frames to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.
[0097] In a twentieth aspect, in combination with one or more of the seventeenth aspect through the nineteenth aspect, the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.
[0098] In the figures, a single block may be described as performing a function or functions. The function or functions performed by that block may be performed in a single component or across multiple components, and / or may be performed using hardware, software, or a combination of hardware and software. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps are described below generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure. Also, the example devices may include components other than those shown, including well-known components such as a processor, memory, and the like.
[0099] As used herein, the term “determine” or “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, estimating, investigating, looking up (such as via looking up in a table, a database, or another data structure) , inferring, ascertaining, or measuring, among other possibilities. Also, “determining” can include receiving (such as receiving information) , accessing (such as accessing data stored in memory) or transmitting (such as transmitting information) , among other possibilities. Additionally, “determining” can include resolving, selecting, obtaining, choosing, establishing and other such similar actions.
[0100] As used herein, a phrase referring to “at least one of” or “one or more of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover: a, b, c, a-b, a-c, b-c, and a-b-c. As used herein, “or” is intended to be interpreted in the inclusive sense, unless otherwise explicitly indicated. For example, “a or b” may include a only, b only, or a combination of a and b. Furthermore, as used herein, a phrase referring to “a” or “an” element refers to one or more of such elements acting individually or collectively to perform the recited function (s) . Additionally, a “set” refers to one or more items, and a “subset” refers to less than a whole set, but non-empty.
[0101] As used herein, “based on” is intended to be interpreted in the inclusive sense, unless otherwise explicitly indicated. For example, “based on” may be used interchangeably with “based at least in part on, ” “associated with, ” “in association with, ” or “in accordance with” unless otherwise explicitly indicated. Specifically, unless a phrase refers to “based on only ‘a, ’ ” or the equivalent in context, whatever it is that is “based on ‘a, ’ ” or “based at least in part on ‘a, ’ ” may be based on “a” alone or based on a combination of “a” and one or more other factors, conditions, or information.
[0102] The various illustrative components, logic, logical blocks, modules, circuits, operations, and algorithm processes described in connection with the examples disclosed herein may be implemented as electronic hardware, firmware, software, or combinations of hardware, firmware, or software, including the structures disclosed in this specification and the structural equivalents thereof. The interchangeability of hardware, firmware and software has been described generally, in terms of functionality, and illustrated in the various illustrative components, blocks, modules, circuits and processes described above. Whether such functionality is implemented in hardware, firmware or software depends upon the particular application and design constraints imposed on the overall system.
[0103] Various modifications to the examples described in this disclosure may be readily apparent to persons having ordinary skill in the art, and the generic principles defined herein may be applied to other examples without departing from the spirit or scope of this disclosure. Thus, the claims are not intended to be limited to the examples shown herein, but are to be accorded the widest scope consistent with this disclosure, the principles and the novel features disclosed herein.
[0104] Additionally, various features that are described in this specification in the context of separate examples also can be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation also can be implemented in multiple examples separately or in any suitable subcombination. As such, although features may be described above as acting in particular combinations, and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.
[0105] Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Further, the drawings may schematically depict one or more example processes in the form of a flowchart or flow diagram. However, other operations that are not depicted can be incorporated in the example processes that are schematically illustrated. For example, one or more additional operations can be performed before, after, simultaneously, or between any of the illustrated operations. In some circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the examples described above should not be understood as requiring such separation in all examples, 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.
Claims
1.A method, comprising:obtaining one or more first frames of data associated with graphical content of a display, the first frames associated with a first sampling frequency;obtaining, after a period of inactivity associated with the display, one or more second frames of the data, the second frames associated with a second sampling frequency that is different than the first sampling frequency; andoutputting the first frames and the second frames to an age monitoring engine associated with the display.2.The method of claim 1, wherein the first frames are sampled, in accordance with the first sampling frequency, to a buffer that is accessible to the age monitoring engine, and wherein the second frames are sampled, in accordance with the second sampling frequency, to the buffer.3.The method of claim 1, further comprising:obtaining, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency; andresetting a value of an inactivity timer that is associated with the period of inactivity.4.The method of claim 1, wherein the second sampling frequency is included in a set of sampling frequencies each different than the first sampling frequency, and further comprising selecting among the set of sampling frequencies in accordance with a duration of the period of inactivity.5.The method of claim 1, wherein the first frames and the second frames are sent to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.6.The method of claim 5, wherein the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.7.The method of claim 1, further comprising:receiving, from the age monitoring engine, one or more pixel compensation values associated with the display; andapplying the one or more pixel compensation values to at least one frame of the data to compensate for aging associated with one or more pixel elements of the display.8.The method of claim 1, wherein the display corresponds to an organic light emitting diode (OLED) touchscreen display.9.An apparatus, comprising:a processing system that includes processor circuitry and memory circuitry that stores code, the processing system configured to cause the apparatus to:obtain one or more first frames of data associated with graphical content of a display, the first frames associated with a first sampling frequency;obtain, after a period of inactivity associated with the display, one or more second frames of the data, the second frames associated with a second sampling frequency that is different than the first sampling frequency; andoutput the first frames and the second frames to an age monitoring engine associated with the display.10.The apparatus of claim 9, wherein the processing system is further configured to sample the first frames to a buffer in accordance with the first sampling frequency and to sample the second frames to the buffer in accordance with the second sampling frequency.11.The apparatus of claim 9, wherein the processing system is further configured to:obtain, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency; andreset a value of an inactivity timer that is associated with the period of inactivity.12.The apparatus of claim 9, wherein the second sampling frequency is included in a set of sampling frequencies each different than the first sampling frequency, and wherein the processing system is further configured to select among the set of sampling frequencies in accordance with a duration of the period of inactivity.13.The apparatus of claim 9, wherein the processing system is further configured to send the first frames and the second frames to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.14.The apparatus of claim 13, wherein the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.15.The apparatus of claim 9, wherein the processing system is further configured to:receive, from the age monitoring engine, one or more pixel compensation values associated with the display; andapply the one or more pixel compensation values to at least one frame of the data to compensate for aging associated with one or more pixel elements of the display.16.The apparatus of claim 9, wherein the display corresponds to an organic light emitting diode (OLED) touchscreen display.17.A multimedia device, comprising:a display; anda processing system that includes processor circuitry and memory circuitry that stores code, the processing system configured to cause the multimedia device to:obtain one or more first frames of data associated with graphical content of the display, the first frames associated with a first sampling frequency;obtain, after a period of inactivity associated with the display, one or more second frames of the data, the second frames associated with a second sampling frequency that is different than the first sampling frequency; andoutput the first frames and the second frames to an age monitoring engine associated with the display.18.The multimedia device of claim 17, wherein the processing system is further configured to:obtain, in accordance with one or more of a touch event associated with the display or a frame geometry change associated with the graphical content that satisfies one or more frame geometry change criteria, third frames of the data in accordance with the first sampling frequency; andreset a value of an inactivity timer that is associated with the period of inactivity.19.The multimedia device of claim 17, wherein the processing system is further configured to send the first frames and the second frames to the age monitoring engine in accordance with detecting one or more idle mode trigger conditions.20.The multimedia device of claim 19, wherein the one or more idle mode trigger conditions include one or more of a touch idle mode associated with the display or a processor idle mode associated with a processor.
Citation Information
Patent Citations
Wear compensation for a display
US20160379550A1
Electronic device and method for predicting and compensating for burn-in of display
US20230306884A1