# Patent

## Title
Dynamic update of display pixels

## Abstract

A system and method of driving images on displays includes receiving image content in a processing unit. When a peak data condition is identified, pixel rows of at least one display are updated in a non-sequential order in response to identifying the peak data condition.

## Background
TECHNICAL FIELD
This disclosure relates generally to updating display pixels. In particular but not exclusively, this disclosure relates to updating display pixels in a multi-panel display.
BACKGROUND INFORMATION
Large displays can be prohibitively expensive as the cost to manufacture display panels rises exponentially with display area. This exponential rise in cost arises from the increased complexity of large monolithic displays, the decrease in yields associated with large displays (a greater number of components must be defect free for large displays), and increased shipping, delivery, and setup costs. Tiling smaller display panels to form larger multi-panel displays can help reduce many of the costs associated with large monolithic displays.
FIG. 1 shows a block diagram illustration of a conventional multi-panel display system 100 that includes display panels 101A-D arranged as multi-panel display 150. The four smaller display panels 101A-D may be conventional flat panel televisions or monitors. The individual images displayed by each display panels 101A-D may constitute a sub-portion of the larger overall-image collectively displayed by multi-panel display 150. Each display panel includes a timing controller (“TCON”) 109 coupled to receive image content from CPU/GPU 103 and coupled to control driver 111 to drive pixel region 115. CPU/GPU 103 reads media 102 and prepares the image content in media 102 to be displayed on multi-panel display 150. Media 102 may be an optical disc or be streaming content received from a remote server.
Tiling smaller display panels 101 to form a multi-panel display can come with additional challenges. When the smaller display panels 101 are high-resolution, the multi-panel display 150 displays a very large overall-image that is even higher resolution (e.g. 5-100 megapixels or more). Updating the high resolution overall-image(s) at a given refresh rate (e.g. 30 frames per second) on multi-panel display 150 can create processing throughput issues for CPU/GPU 103, TCONs 109, and drivers 111 that drive the pixel regions 115 because the hardware uses the conventional raster scanning that updates the entire complement of pixels on multi-panel display 150.
Building hardware to drive higher resolution images at video frame rates onto multi-panel display 150 using raster scanning would likely require power hungry processing hardware that would be relatively expensive. Therefore, when a peak data condition occurs in the driving hardware while processing the image content (e.g. during a scene change), a conventional approach is to reduce the frame rate to allow the driving hardware to catch up. However, the conventional approaches to dealing with a peak data condition are often noticed by viewers of multi-panel display 150 as they see image artifacts in the overall-image displayed by multi-panel display 150. One example of an image artifact that may be seen by viewers during a peak data condition is known as “image shearing,” as the timing or rendering between display panels 101 is out of sync.



BRIEF DESCRIPTION OF THE DRAWINGS
Non-limiting and non-exhaustive embodiments of the invention are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified.
FIG. 1 shows a block diagram illustration of a conventional multi-panel display system that includes display panels arranged as a multi-panel display.
FIG. 2 shows a block diagram illustration of a multi-panel display system that includes a multi-panel display that includes display panels with a display driving unit, in accordance with an embodiment of the disclosure.
FIG. 3 illustrates an example display driving unit including peak data logic and a scrambler, in accordance with an embodiment of the disclosure.
FIG. 4 illustrates an example display driving unit including prioritizer logic, in accordance with an embodiment of the disclosure.
FIG. 5 illustrates a flow chart of a process of driving displays during a peak data condition, in accordance with an embodiment of the disclosure.



DETAILED DESCRIPTION
Embodiments of a system and method for driving display panels are described herein. In the following description, numerous specific details are set forth to provide a thorough understanding of the embodiments. One skilled in the relevant art will recognize, however, that the techniques described herein can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring certain aspects.
Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
FIG. 2 shows a block diagram illustration of a multi-panel display system 200 that includes a multi-panel display 250 including display panels 201A-D with display driving units 235A-D, in accordance with an embodiment of the disclosure. In FIG. 2, display panels 201 are arranged so that the individual images displayed by each display panels 201A-D may constitute a sub-portion of the larger overall-image collectively displayed by multi-panel display 250. Each display panel 201 includes a corresponding display driving unit 235 coupled to receive image content via a video line 213 from CPU/GPU 203. Each display driving unit 235A-D is coupled to drive its corresponding pixel region 215A-D. For example, display panel 201A includes display driving unit 235A and pixel region 215A, while display panel 201B includes display driving unit 235B and pixel region 215B. Pixel regions 215 may be part of a liquid-crystal-display (“LCD”) having its pixels arranged in rows and columns. Of course, other display technologies may be utilized.
CPU/GPU 203 reads image media 102 and prepares the image content in media 102 to be displayed on multi-panel display 250. CPU/GPU 203 may include a processor, a Field Programmable Gate Array (“FPGA”) or other logic. CPU/GPU 203 may also include a memory to store instructions and data.
FIG. 3 illustrates an example display driving unit 335 including peak data logic 332 and a scrambler 333, in accordance with an embodiment of the disclosure. Display driving unit 335 also includes TCON processing unit 331 and pixel driving circuitry 345. TCON processing unit 331 is coupled to receive image content from video line 213. Pixel driving circuitry 345 is coupled to selectively drive rows of pixel region 215, in FIG. 3. In other embodiments, pixel driving circuitry 345 is coupled to selectively drive columns of pixel region 215. In one embodiment, TCON processing unit 331, peak data logic 332, and scrambler 333 are disposed within a single integrated circuit. In one embodiment, TCON processing unit 331, peak data logic 332, and scrambler 333 are included in a micro-processor or FPGA.
In FIG. 3, peak data logic 332 is coupled to receive the image content from video line 213. In the illustrated embodiment, peak data logic 332 is configured to analyze the image content to determine whether there is (or will be) a peak data condition in processing the image content. One example of a peak data condition is when the hardware driving multi-panel display 250 is not capable of updating the display panels 201A-D at the desired frame rate when, for example, every pixel changes in the next scene and especially when the computation of this pixelated data is computationally complicated and time consuming. A peak data condition may occur when there is rapid change (e.g. a scene change) in overall-image displayed by multi-panel display 250. If peak data logic 332 determines there is a peak data condition, it will output an enable signal 337 to enable scrambling circuitry 333, which is coupled between TCON processing unit 331 and pixel driving circuitry 345. Scrambling circuitry 333 is coupled to receive enable signal 337 from peak data logic 332. In response to scrambling circuitry 333 receiving enable signal 337, it will cause the pixel rows of pixel region 215 (via pixel driving circuitry 345) to be driven in a non-sequential order. When scrambler 333 does not receive enable signal 337, it may cause pixel rows of pixel region 215 (via pixel driving circuitry 345) to be updated in a raster scanning algorithm, which updates the pixel rows sequentially, row-by-row.
In FIG. 3, peak data logic 332 is located on-board the display panel 201. However, it is appreciated that in some embodiments, peak data logic 332 may be located within CPU/GPU 203 and enable signal 337 may be sent over video line 213 as a digital or analog signal. In this alternative configuration, scrambling circuitry 333 may be coupled to video line 213 to receive the enable signal 337.
When scrambling circuitry 333 causes the pixels rows of pixel region 215 to be driven in a non-sequential order, it helps reduce or even eliminate a shearing image artifact that would be perceivable during a peak data condition if conventional raster scanning updated the pixel rows sequentially, row by row. In conventional raster scanning, the rows are updated sequentially (e.g. row 1, row 2, row 3, row 4 . . . ). Updating the pixel rows non-sequentially may reduce or eliminate a shearing image artifact perceived by a viewer, but at the same time, introducing spatial or temporal noise in the image. However, spatial or temporal noise (at certain frequencies) may be less noticeable or more pleasing to the eye of viewers when compared to shearing artifacts since images with shearing often include defined lines which the human eye detects easily. In one embodiment, updating the pixel rows in a non-sequential order may include updating pixel rows in a “snow pattern” that introduces pixel noise into the display image. In one embodiment the pixels rows are updated randomly.
FIG. 4 illustrates an example display driving unit 435 that includes prioritizer logic 438, in accordance with an embodiment of the disclosure. Display driving unit 435 also includes TCON processing unit 431 and pixel driving circuitry 445. TCON processing unit 431 is coupled to receive image content from video line 213. Pixel driving circuitry 445 is coupled to selectively drive rows of pixel region 215, in FIG. 4. In other embodiments, pixel driving circuitry 445 is coupled to selectively drive columns of pixel region 215. In one embodiment, TCON processing unit 431 and prioritizer logic 438 are disposed within a single integrated circuit. In one embodiment, TCON processing unit 431 and prioritizer logic 438 are included in a micro-processor or FPGA.
In FIG. 4, prioritizer logic 438 is coupled to receive imaging data (priority input 453) from imaging module 475. In embodiments where prioritizer logic 438 is coupled to receive imaging data from imaging module 475, prioritizer logic 438 is not necessarily coupled to receive image content from video line 213. When prioritizer logic 438 is coupled to video line 213, it may analyze the image content to identify a peak data condition. Alternatively, prioritizer logic 438 may receive a digital signal from video line 213 that a peak data condition has been identified by CPU/GPU 203.
Imaging module 475 may include a CMOS image sensor positioned to image viewers of pixel region 215 and/or multi-panel display 250. Prioritizer logic 438 may analyze the imaging data for eye-tracking information to identify visual zones of interest in the image content and correspond that visual zone of interest with a portion of pixel region 215. If a viewer is focusing or following a specific portion of the screen, prioritizer logic 438 may prioritize updating pixel rows that are displaying the portion of the pixel region 215 that corresponds with the visual zone of interest. As an example, a viewer or viewers of a sporting event may be consistently focusing on a ball or puck as it moves around the display(s). The imaging module may capture an image or a series of images of the viewer(s) and their eyes to allow prioritizer logic 438 to identify a visual zone of interest and prioritize updating pixel rows that correspond with that visual zone of interest. In a case with multiple viewers, prioritizer logic 438 may average the viewer's gaze in identifying the visual zone of interest. In one example, the prioritizer logic 438 prioritizes updating pixel rows corresponding to the last identified visual zone of interest on the assumption that the current visual zone of interest (where the viewer's eyes are looking) will be in the same portion of the pixel array as the last identified visual zone of interest.
In an embodiment where imaging module 475 is not included, prioritizer logic 438 receives the image content from video line 213 as input data. Prioritizer logic 438 may analyze the image content for pixel areas that include visual zones of interest. As an example, prioritizer logic 438 may perform contrast analysis of a frame in the image content. The contrast analysis may indicate focused portions of the frame, which would be visual zone(s) of interest. Prioritizer logic 438 can control TCON processing unit 431 (via priority signal 437) to prioritize generating the timing and control signals for the portions of the image that corresponds with the focused portions. TCON processing unit 431 then sends pixel driving circuitry 445 TCON data 436, which will cause pixel driving circuitry 445 to selectively update the rows of pixels that correspond with the focused portions of the frame. After the focused portions of the frame are updated, the unfocused portions of the frame may then be updated randomly, or not updated for that particular frame. Often times in films/movies, the camera focuses on a subject (e.g. a person's face) in the foreground, while the background is out of focus. In this case, prioritizing updating the pixel rows (or columns) that include the in-focus subject preserves the integrity of the portion of the image where artifacts would be most noticed by a viewer. Additionally, although the out-of-focus portion of the image may have pixel noise in it because those pixel rows were updated randomly (or perhaps not updated at all in some frames) the viewer is less likely to notice pixel noise in out-of-focus portions of the image.
Embodiments where some pixels (e.g. out-of-focus pixels) are not updated in every frame have the potential advantage of saving power because refreshing each pixel row at each refresh interval draws significant power.
In FIG. 4, prioritizer logic 438 is located on-board the display panel 201. However, it is appreciated that in some embodiments, prioritizer logic 438 may be located within CPU/GPU 203 and priority signal 437 may be sent over video line 213 as a digital signal or analog signal. In this alternative configuration, imaging module 475 may be coupled to provide priority input 453 to CPU/GPU 203. In embodiments where prioritizer logic 438 is located on-board CPU/GPU 203, CPU/GPU 203 may analyze image content from media 102 and only send TCON processing unit 431 data (over video line 213) for the pixels in pixel region 215 that are changing and need to be updated. This can dramatically reduce the power used by displays 201 to refresh pixel region 215. In addition, it reduces the amount of data needed to be sent over video lines 213, which reduces bottlenecking.
In some embodiments, media 102 may be accessible for pre-analysis of the image content to identify the visual zones of interest prior to actually rendering the content to the display. This may allow CPU/GPU 203 to compare frames in a video sequence to adjacent frames to identify the pixels that are actually changing. Then CPU/GPU 203 can only send data that corresponds with refreshing those pixels to TCON processing 431.
FIG. 5 illustrates a flow chart of a process 500 of driving displays during a peak data condition, in accordance with an embodiment of the disclosure. The order in which some or all of the process blocks appear in process 500 should not be deemed limiting. Rather, one of ordinary skill in the art having the benefit of the present disclosure will understand that some of the process blocks may be executed in a variety of orders not illustrated, or even in parallel.
In process block 505, image content is received in a processing unit. In process block 510, a determination is made as to whether a peak data condition is present. The peak data condition may be identified or determined by CPU/GPU 203, peak data logic 332, or prioritizer logic 438, depending on the embodiment. If the peak data condition is not present, process 500 proceeds to process block 515 where pixel rows in a pixel region (e.g. pixel region 215) of at least one of the display panels in a multi-panel display are raster scan updated in a sequential order. After process block 515, process 500 returns to process block 510. If the peak data condition is present, process 500 proceeds to process block 520 where the pixel rows of at least one of the display panels in the multi-panel display is updated in a non-sequential order. In one embodiment, updating the pixel rows in a non-sequential order includes updating the pixel rows in a random order. After process block 520, process 500 returns to process block 510.
It is understood that although many of the embodiment are described in the context of being used with display panels arranged as a multi-panel display, the individual display panels may be sold individually to allow the buyer to decide how many panels will be part of her multi-panel display. It is appreciated that although the illustrated multi-panel display 250 is a 2×2 matrix of display panels 201, the embodiment of this disclosure can be applied to larger (e.g. 3×3 or 4×3 matrix of display panels 201) multi-panel displays. It is also appreciated that some embodiments may lend themselves to be used on individual display panels that are viewed as individual display panels rather than as multi-panel displays.
The processes explained above are described in terms of computer software and hardware. The techniques described may constitute machine-executable instructions embodied within a tangible or non-transitory machine (e.g., computer) readable storage medium, that when executed by a machine will cause the machine to perform the operations described. Additionally, the processes may be embodied within hardware, such as an application specific integrated circuit (“ASIC”) or otherwise.
A tangible non-transitory machine-readable storage medium includes any mechanism that provides (i.e., stores) information in a form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.). For example, a machine-readable storage medium includes recordable/non-recordable media (e.g., read only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory devices, etc.).
The above description of illustrated embodiments of the invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes, various modifications are possible within the scope of the invention, as those skilled in the relevant art will recognize.
These modifications can be made to the invention in light of the above detailed description. The terms used in the following claims should not be construed to limit the invention to the specific embodiments disclosed in the specification. Rather, the scope of the invention is to be determined entirely by the following claims, which are to be construed in accordance with established doctrines of claim interpretation.

## Claims

1. A method of driving images on a multi-panel display, the method comprising:
receiving image content in a processing unit;
analyzing whether a peak data condition is occurring in processing the image content, wherein the peak data condition occurs when the multi-panel display is unable to update the multi-panel display at a current frame rate;
raster scan updating pixels of displays in the multi-panel display to display the image content when the peak data condition is not occurring, wherein raster scan updating the pixels includes refreshing pixel rows in a sequential order;
updating the pixel rows of at least one of the displays in the multi-panel display in a non-sequential order when the peak data condition is occurring; and
transitioning between updating the pixels rows in the sequential order and updating the pixel rows in the non-sequential order in response to determining whether the multi-panel display is able or unable to update the multi-panel display at the current frame rate.

2. The method of claim 1, wherein the non-sequential order includes randomizing an update order of the pixel rows.

3. The method of claim 1 further comprising analyzing the image content for pixel areas that include visual zones of interest, wherein the non-sequential order includes prioritizing updating the pixel rows that will display the visual zones of interests in the image content.

4. The method of claim 3, wherein analyzing the image content for pixel areas that include the visual zones of interest includes performing contrast analysis of the image content to identify focused portions of images in the image content as the visual zones of interest.

5. The method of claim 1 further comprising:
receiving imaging data from an imaging module, wherein the imaging module is configured to capture an image to generate the imaging data;
analyzing the imaging data for eye-tracking information; and
identifying visual zones of interest in the image content based on the eye-tracking information, wherein the non-sequential order includes prioritizing updating the pixel rows that will display the visual zones of interests in the image content.

6. The method of claim 1, wherein the processing unit includes a graphics processing unit (“GPU”).

7. A multi-panel display system comprising:
an array of pixel regions, wherein each pixel region in the array includes pixels arranged in pixel rows and pixel columns;
an array of display driving units corresponding to the array of pixel regions; and
a non-transitory machine-accessible storage medium that provides instructions that, when executed by the multi-panel display system, will cause the multi-panel display system to perform operations comprising:
receiving image content in a processing unit;
raster scan updating the pixel regions to display the image content, wherein raster scan updating the pixel regions includes refreshing the pixel rows in a sequential order;
identifying a peak data condition in the image content, wherein the peak data condition occurs when the multi-panel display system is unable to update the multi-panel display system at a current frame rate;
updating the pixel rows of at least one of the pixel regions in a non-sequential order in response to identifying the peak data condition; and
transitioning between updating the pixels rows in the sequential order and updating the pixel rows in the non-sequential order in response to determining whether the multi-panel display is able or unable to update the multi-panel display at the current frame rate.

8. The multi-panel display system of claim 7, wherein the non-sequential order includes randomizing a refresh order of the pixel rows.

9. The multi-panel display system of claim 7, with further instructions stored in the non-transitory machine-accessible storage medium, that when executed by the multi-panel display system, will cause the multi-panel display system to perform further operations comprising:
analyzing the image content for pixel areas that include visual zones of interest, wherein the non-sequential order includes prioritizing updating the pixel rows that will display the visual zones of interests in the image content.

10. The multi-panel display system of claim 9, wherein analyzing the image content for pixel areas that include visual zones of interest includes performing contrast analysis of the image content to identify focused portions of images in the image content as the visual zones of interest.

11. The multi-panel display system of claim 7, with further instructions stored in the non-transitory machine-accessible storage medium, that when executed by the multi-panel display system, will cause the multi-panel display system to perform further operations comprising:
receiving imaging data from an imaging module;
analyzing the imaging data for eye-tracking information; and
identifying visual zones of interest in the image content based on the eye-tracking information, wherein the non-sequential order includes prioritizing updating the pixel rows that will display the visual zones of interests of the image content.

12. The multi-panel display system of claim 7, wherein the processing unit includes a graphics processing unit (“GPU”).

13. A display system comprising:
a pixel region including pixels arranged in pixel rows and pixel columns;
prioritizer logic coupled to receive input data and configured to analyze the input data to determine visual zones of interest in image content received by the display system, wherein the visual zones of interest in the image content includes one or more in-focus portions of image frames of the image content and wherein the in-focus portions are less than full portions of the image frames; and
pixel driving circuitry coupled to drive the pixel region to display the image content, wherein the pixel driving circuitry prioritizes refreshing certain pixel rows that correspond to the visual zones of interest in the image content over unfocused portions of the image frames.

14. The display system of claim 13 further comprising:
an imaging module for capturing imaging data and coupled to send the imaging data to the prioritizer logic as the input data, wherein analyzing the input data to determine the visual zones of interest includes analyzing the imaging data for eye-tracking information and identifying the visual zones of interest in the image content based on the eye-tracking information.

15. The display system of claim 13, wherein the prioritizer logic is coupled to receive the image content as the input data, and wherein analyzing the input data to determine the visual zones of interest includes performing contrast analysis of the image content to identify the focused portions.

16. The display system of claim 13 further comprising:
timing and controller processing logic coupled to receive priority data from the prioritizer logic and configured to output timing and controller data for driving the pixel region, in response to the priority data.