Information processing system, controller, and control method

By identifying dynamic regions in EPD devices and using one-bit quantization with error diffusion within these regions, the system addresses the issues of high power consumption and limited rewrite lifetime in EPD devices, enhancing their responsiveness and longevity.

JP7649401B1Active Publication Date: 2025-03-19LENOVO (SINGAPORE) PTE LTD

Patent Information

Application Number
JP2024066942
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-04-17
Publication Date
2025-03-19
Estimated Expiration
2044-04-17

AI Technical Summary

Technical Problem

Electrophoretic Display (EPD) devices face challenges with high power consumption during rewriting and a limited rewrite lifetime, which affects their responsiveness and longevity, especially when displaying content with high gradation bit depth.

Method used

The information processing system includes a host system and a display unit with a controller that drives pixels on an electrophoretic display panel based on quantization values. The system identifies dynamic regions in the display image and quantizes gradation values within these regions using one bit, spreading quantization errors within the dynamic region to reduce unnecessary rewriting.

Benefits of technology

This approach reduces unnecessary rewriting of the display panel, extends the lifetime of the EPD device, and decreases power consumption by limiting quantization error diffusion to dynamic regions only.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007649401000001_ABST
    Figure 0007649401000001_ABST
Patent Text Reader

Abstract

To extend the life span of a display panel by reducing rewriting caused by dithering. [Solution] The display unit comprises a controller and an electrophoretic display panel, and the controller drives pixels arranged on the electrophoretic display panel based on a quantization value indicating the gradation for each pixel, and the host system identifies a dynamic area in which the display content dynamically changes for each element of a display image to be displayed on the display unit, and the controller quantizes the gradation value for each pixel included in the dynamic area by 1 bit to calculate a quantization value, and diffuses the quantization error for each pixel within the dynamic area of ​​the element to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixels, and does not diffuse the quantization error outside the dynamic area.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present application relates to information processing systems, controllers, and control methods, for example, for quantization error diffusion. [Background technology]

[0002] Electrophoretic displays (EPDs) do not consume power while displaying stationary content, and therefore can display various types of information with low power consumption. EPDs are sometimes used to display information that is primarily text. For example, Patent Document 1 describes applications of EPDs to electronic book terminals, electronic medical records, electronic newspapers, and the like. EPDs are also called electric paper displays, electronic ink displays, and the like.

[0003] However, EPDs have a slower response to display changes than other types of display devices, such as liquid crystal displays and organic light-emitting diode displays. The delay in changes tends to be particularly noticeable when expressing gradations with multiple bits. In a typical EPD, the response time for 1-bit gradation, which displays 2 levels of gradation, is about 100 msec, but for 4-bit gradation, which displays 16 levels of gradation, the response time can reach 500 msec. In general, the greater the gradation bit depth of an EPD, the smoother the gradation that can be displayed, but the slower the responsiveness.

[0004] In a 1-bit image, the quantization error of each pixel is diffused to the surrounding pixels by dithering, so that the ratio of bright pixels can be increased in areas with higher brightness in the original image. Dithering visually mitigates quantization errors during low-bit conversion and the phenomenon (tone jump) in which the gradation on the display varies significantly from the original data, making it possible to express multi-bit gradations in a macroscopic and pseudo manner even in a 1-bit image. Diffusion of quantization error is realized by performing a matrix operation on each pixel. The diffusion destination pixels include pixels adjacent in the row and column directions to the pixel of interest that is the object of the operation. In addition, in diffusion of quantization error, the pixel of interest is sequentially changed to an unprocessed adjacent pixel, and the matrix operation is repeated. Therefore, the quantization error generated in one target pixel propagates while accumulating in the direction of the diffusion destination. Diffusion of quantization error requires rewriting of the screen on the display panel because it brings about a change in the quantized gradation. Due to the nature of this dithering, the area that needs to be rewritten is not limited to the pixels where the gradation change actually occurred, but extends to a wide range of pixels to which the quantization error is propagated. On the other hand, if the quantization error is not propagated after the screen is rewritten, the timing of distributing the quantization error will be different between pixels where the gradation has been rewritten and pixels where it has not been rewritten. Therefore, afterimages will remain permanently in the area where the gradation has been rewritten, which may cause the user to feel uncomfortable. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2015-64421 A Summary of the Invention [Problem to be solved by the invention]

[0006] On the other hand, EPDs consume power when rewriting. The power consumption when rewriting can even be greater than that of other types of display devices, such as liquid crystal displays (LCDs) and organic light emitting diode (OLED) displays. EPDs also have a rewrite lifespan. The rewrite lifespan is typically about 10 million times. Assuming continuous operation at 10 frames per second (FPS), the lifespan will be reached in about 278 hours from the start of use. Therefore, it is expected that the period until the lifespan is reached will be extended. [Means for solving the problem]

[0007] The present application has been made to solve the above-mentioned problems, and an information processing system according to one embodiment of the present application comprises a host system and a display unit, the display unit comprises a controller and an electrophoretic display panel, and the controller drives pixels arranged on the electrophoretic display panel based on a quantization value indicating a gradation for each pixel, wherein the host system identifies a dynamic area in which the display content dynamically changes for each element of a display image to be displayed on the display unit, the controller quantizes the gradation value for each pixel included in the dynamic area by 1 bit to calculate a quantization value, diffuses the quantization error for each pixel within the dynamic area of ​​the element to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixels, and does not diffuse the quantization error outside the dynamic area.

[0008] In the above information processing system, the host system may define a display area of ​​a moving image included in the display image as the dynamic area.

[0009] In the above information processing system, the host system may define a display area of ​​an image of an application that is included in the display image and changes as the dynamic area.

[0010] In the above information processing system, the host system may detect edges from the display image, and define an area surrounded by the edges and in which display content changes dynamically as the dynamic area.

[0011] A controller according to a second aspect of the present application is a controller that drives pixels arranged on an electrophoretic display panel based on a quantization value indicating a gradation for each pixel, and quantizes the gradation value for each pixel included in a dynamic area for each element of a display image notified from a host system at a bit depth lower than that of pixels included in a non-dynamic area to calculate a quantization value, diffuses the quantization error for each pixel within the dynamic area of ​​the element to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixel, and does not diffuse the quantization error of the pixel outside the dynamic area.

[0012] A control method according to a third aspect of the present application is a control method in an information processing system comprising a host system and a display unit, the display unit comprising a controller and an electrophoretic display panel, and the controller driving pixels arranged on the electrophoretic display panel based on a quantization value indicating a gradation for each pixel, wherein the host system identifies a dynamic area in which display content dynamically changes for each element of a display image to be displayed on the display unit, the controller quantizes the gradation value for each pixel included in the dynamic area at a bit depth lower than that of pixels included in a non-dynamic area to calculate a quantization value, quantizes the gradation value for each pixel included in the dynamic area at one bit to calculate a quantization value, diffuses quantization error for each pixel within the dynamic area of ​​the element to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixels, and does not diffuse the quantization error outside the dynamic area. Effect of the Invention

[0013] According to the embodiment of the present application, it is possible to extend the period until the end of the life of the display panel by reducing unnecessary rewriting of the display panel due to dithering. Also, by reducing rewriting that consumes power, it is possible to reduce power consumption. [Brief description of the drawings]

[0014] [Figure 1] FIG. 2 is a schematic block diagram illustrating an example of a hardware configuration of the information processing system according to the present embodiment. [Diagram 2] FIG. 2 is a schematic block diagram illustrating an example of a functional configuration of the information processing system according to the present embodiment. [Diagram 3] FIG. 2 is a diagram showing a first example of an image displayed on a display unit. [Figure 4] FIG. 11 is a diagram showing a second example of an image displayed on the display unit. [Diagram 5] FIG. 13 is a diagram showing a third example of an image displayed on the display unit. [Figure 6] FIG. 13 is a diagram showing a first example of a matrix related to dithering. [Figure 7] FIG. 13 is a diagram showing a second example of a matrix related to dithering. [Figure 8] FIG. 13 is a diagram showing a third example of a matrix related to dithering. [Figure 9] FIG. 11 illustrates a first example of diffusion of quantization error. [Figure 10] FIG. 11 illustrates a second example of diffusion of quantization error. [Figure 11] 1 is a diagram illustrating a drive process of the display unit according to the embodiment; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0015] Hereinafter, an embodiment of the present application will be described with reference to the drawings. First, a configuration example of an information processing system S1 according to an embodiment of the present application will be described. Fig. 1 is a schematic block diagram showing a hardware configuration example of the information processing system S1 according to the present embodiment.

[0016] The information processing system S1 includes a host system 10, a display unit 30, and an input device 40. The information processing system S1 may be realized as a single electronic device having the host system 10, the display unit 30, and the input device 40. The information processing system S1 may also be configured such that the host system 10, and one or both of the display unit 30 and the input device 40 are configured separately. The information processing system S1 may be realized as any type of information processing device, such as a personal computer, a tablet terminal, a mobile phone, or an e-book reader. The host system 10 acquires display data showing a display image according to various programs, and outputs the acquired display data to the display unit 30. The host system 10 may monitor an operation signal input from the input device 40 and operate with reference to the input operation signal. In this application, operating based on an operation signal input from the input device 40 may be referred to as "operating according to an operation" or the like.

[0017] The display unit 30 is an EPD (Electric Paper Display) device that displays a display image based on display data input from the host system 10. The EPD device is an electrophoretic display device having pixels that employ an electrophoretic method. A display image, or simply an image, refers to the display content that appears on the screen, i.e., spatial changes in brightness and color. A display image includes elements such as patterns, figures, symbols, characters, or combinations of any or all of these. The display unit 30 has a screen on which pixels are arranged at regular intervals, and displays a display image based on the display data input from the host system 10 on a display medium. The display unit 30 is capable of displaying a display image according to any of a plurality of predetermined drive modes.

[0018] Depending on the driving mode, the bit depth of the gradation value representing the gradation of each pixel differs. The gradation corresponds to the brightness of the pixel, that is, the density or shade. The gradation value is also called a pixel value or a signal value. In particular, the gradation value related to color display is also called a color signal value. The bit depth corresponds to the number of bits that express the gradation value. The larger the bit depth, the wider the range of the gradation value, but the range of the gradation expressed is common. In other words, regardless of the bit depth, the gradation corresponding to the maximum value and the minimum value of the gradation value are respectively common. The larger the bit depth, the smaller the difference in gradation between adjacent gradation values ​​(also called the gradation width). When the bit depth is 1 bit, only two gradations are expressed: the first gradation corresponding to the maximum value (e.g., 1) (e.g., black in the case of monochrome) and the first gradation corresponding to the minimum value (e.g., 0) (e.g., white). However, while the larger the bit depth, the more gradations can be expressed, the lower the responsiveness of the pixel. Driving pixels with a bit depth greater than 2 bits requires a refresh process every predetermined refresh period.

[0019] The input device 40 is capable of accepting a user's operation and generates an operation signal in response to the accepted operation. The input device 40 outputs the generated operation signal to the host system 10. As the input device 40, for example, a general-purpose device such as a touch sensor, a mouse, a keyboard, or a joystick may be used, or a dedicated device such as a button, a knob, or a dial may be used. The touch sensor applied as the input device 40 may be integrated with the EPD panel 34 of the display unit 30 and configured as a touch panel.

[0020] The host system 10 according to the present embodiment specifies, for each element of a display image to be displayed on the display unit 30, an area in which an image constituting the display contents changes steadily over time as a dynamic area. This dynamic area is sometimes called a steady dynamic area. Typical display image elements include, for example, an image (sometimes called an "application image" in this application) obtained by executing an application program (sometimes called an "application" or "app" in this application), an element image constituting the behavior of an OS (Operating System), and various moving images. Element images constituting the behavior of an OS include, for example, screen components such as windows and icons. Screen components are also called UI (User Interface) components. In general, an image is expressed by a distribution of gradation values ​​for each pixel arranged adjacently at different positions, that is, a gradation distribution. The change in the image is expressed by a change in the gradation distribution between frames. The host system 10 notifies the display unit 30 of the display image, its elements, and a dynamic area in which the display contents of each element change dynamically.

[0021] The display unit 30 quantizes the grayscale value in the dynamic region notified by the host system 10 with 1 bit, and quantizes the grayscale value in the non-dynamic region, which is the other region, with a bit depth of 2 bits or more. The display unit 30 displays the display image with a grayscale corresponding to the quantization value obtained by quantization for each pixel. However, when quantizing the grayscale value with 1 bit, the display unit 30 performs a dithering process for each element of the display pixel. Here, the display unit 30 diffuses the quantization error for each pixel in the dynamic region of the element to other unprocessed pixels arranged within a predetermined range from the pixel. The display unit 30 updates the quantization value of the other pixel that is the diffusion destination. However, the display unit 30 does not diffuse the quantization error to other pixels that are arranged outside the dynamic region of the element. Therefore, the quantization error is not propagated outside the dynamic region, and rewriting due to the update of the quantization value does not occur.

[0022] Next, an example of the hardware configuration of the information processing system S1 will be described. The host system 10 includes a processor 12, a main memory 14, a chipset 20, and an auxiliary storage medium 22. The host system 10 controls the overall functions of the information processing system S1.

[0023] The processor 12 controls the overall function of the device including the host system 10. For example, one or more CPUs (Central Processing Units) are applied as the processor 12. The processor 12 executes a predetermined program and cooperates with the main memory 14, the chipset 20, the auxiliary storage medium 22, and some or all of the other hardware to perform the functions of the host system 10. In this application, the processor 12 or other hardware executing processing instructed by instructions written in a program may be referred to as "executing a program" or "running a program."

[0024] The main memory 14 is a writable memory used as a working area for the processor 12, i.e., an area for reading programs to be executed and various setting data, and an area for writing processing data acquired by executing the programs. The main memory 14 is configured to include, for example, a plurality of DRAM (Dynamic Random Access Memory) chips. The programs to be executed include an OS (Operating System), various device drivers for controlling peripheral devices, various services / utilities, application programs (sometimes referred to as "apps" in this application), and the like. The processor 12 and main memory 14 function as a minimum system device that constitutes the host system 10. The host system 10 includes a system device as hardware, and software such as an OS and a schedule task.

[0025] The chipset 20 includes one or more controllers and can be connected to other devices, including the display unit 30, to input and output various data. The chipset 20 is also called a PCH (Platform Controller Hub). The chipset 20 includes one or a combination of bus controllers such as a Universal Serial Bus (USB), an Advanced Technology Attachment (Serial ATA), a Serial Peripheral Interface (SPI) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express bus, and a Low Pin Count (LPC).

[0026] The auxiliary storage medium 22 stores various programs and data. The various programs include, for example, firmware, device drivers, services / utilities, and applications. These programs are executed by the processor 12. The stored data includes data to be processed by the processor 12, and data generated or input by the processing. The auxiliary storage medium 22 includes a nonvolatile memory such as a flash memory. As the auxiliary storage medium 22, a solid state drive (SSD), a hard disk drive (HDD), or the like may be used.

[0027] The display unit 30 includes a timing controller 32 and an EPD panel 34 . Display data is input from the host system 10 to a timing controller (T-CON: Timing Controller) 32 according to an input / output method defined by a predetermined input / output standard. As the input / output method, a method defined by, for example, any of the DP (Display) standard, the MIPI (Mobile Industry Processor Interface) standard, etc. may be used. The timing controller 32 quantizes the gradation value of each pixel indicated by the input display data with a bit depth corresponding to the drive mode, and converts it into a quantized value. The timing controller 32 generates a drive signal indicating the gradation of each pixel in accordance with the display timing of the EPD panel 34 in order to display each pixel with a gradation corresponding to the converted quantized value. The timing controller 32 outputs the generated drive signal to the EPD panel 34. Depending on the drive mode, the timing controller 32 performs a refresh process at a predetermined refresh rate, and sets the gradation value to a predetermined reference value (for example, a minimum value). The timing controller 32 may be equipped with an arithmetic circuit, for example, an ASIC (Application Specific Integrated Circuit) or an FGPA (Field Programmable Gate Array), and may execute a rewritable program to realize its functions, or may be realized by dedicated hardware.

[0028] The EPD (Electric Phoretic Display) panel 34 has a substrate, a plurality of pixels, and a drive circuit. The drive circuit applies a voltage corresponding to a specified gradation to a pixel corresponding to the timing specified by a drive signal input from a timing controller 32. The drive circuit includes, for example, a TTL (Transistor-Transistor Logic) circuit. A plurality of pixels are periodically arranged two-dimensionally on the surface of the substrate. Each pixel expresses a gradation according to the voltage applied from the drive circuit. Each pixel has a pair of electrodes, which are held by sandwiching a solution. Charged particles made of pigment float in the solution. The charged particles move toward an electrode of opposite polarity to themselves according to the applied voltage. This movement brings about a change in gradation.

[0029] Next, an example of the functional configuration of the information processing system S1 will be described below. Fig. 2 is a schematic block diagram showing an example of the functional configuration of the information processing system S1 according to this embodiment. The host system 10 includes an OS processing unit 102, an application execution unit 104, a mode setting unit 106, and a graphics processing unit .

[0030] The OS processing unit 102 executes an OS (Operating System) to provide its functions. In this application, execution of an OS or other program means executing processing instructed by various commands written in the program. Functions of the OS include management of resources used for arithmetic processing, data storage, and the like, and provision of a standard interface for applications and users. The OS processing unit 102 executes, for example, application startup, monitoring of the execution state of applications after startup, setting a display area for application images, priority control for components of a display image, cursor display, and the like.

[0031] The OS processing unit 102 starts an application instructed by an operation signal in response to an operation, and starts the execution of the application. The OS processing unit 102 may start the execution of an application for which the usage environment satisfies a predetermined start condition. For example, the start condition may be that the current time reaches a predetermined start time (start timer). The OS processing unit 102 manages the execution state of the application, and executes processing for a window that contains an application image (sometimes referred to as an "application window" in this application).

[0032] In response to an operation, the OS processing unit 102 performs operations such as designating an application window to be focused on as a display target, changing the size or position on the display image of the application window, erasing, and redisplaying. The OS processing unit 102 prioritizes displaying an application image that was started to be displayed last or was operated last among a plurality of application images. When a certain application image is prioritized for display, the OS processing unit 102 displays the contents of the shared area of ​​the certain application image in a shared area shared with other application images among the certain application images, and discards the contents of the shared area of ​​the other application images without displaying them.

[0033] The OS processing unit 102 executes various screen displays as processing instructed by the OS. Various screen components are used in the screen display. For example, the OS processing unit 102 displays a cursor at a position on a display image instructed in response to an operation. When a position within an application image area is instructed in response to an operation, the OS processing unit 102 executes a function of an application corresponding to the position (e.g., turning on / off a specific function by pressing a button, etc.). When a position outside the application image area is instructed in response to an operation, the OS processing unit 102 realizes a function of other software specific to the OS or related to the OS corresponding to the position (e.g., moving a data file by a drag operation, etc.). The OS processing unit 102 composes a display image to be displayed on the display unit 30 by superimposing an element image provided by an OS-specific or OS-related function and an application image currently being executed at that time with a predetermined priority.

[0034] The application execution unit 104 executes an application whose start has been instructed by the OS processing unit 102. In processing the application, the application execution unit 104 composes a display image to be displayed as a function of the application. For example, in a video playback application, a display image constituting the video whose playback has been instructed is constructed. The constructed display image is accommodated in an application window assigned to the application.

[0035] The mode setting unit 106 identifies a dynamic region for each element of the display image to be displayed on the display unit 30, and separates it from the non-dynamic region, which is the remaining region. The mode setting unit 106 monitors the grayscale distribution in the display image for each frame at different times, or the occurrence of information that may be a factor of the grayscale distribution. The mode setting unit 106 generates a drive command including setting information indicating the portion of the display image that is occupied by the dynamic region for each element. The mode setting unit 106 outputs the generated drive command to the display unit 30. As a result, the image is displayed for the dynamic region using a drive mode different from that for the non-dynamic region. An example of a method for determining a dynamic region will be described later.

[0036] The graphics processing unit 108 recognizes the display unit 30 connected to the host system 10. The graphics processing unit 108 generates display data showing the display image configured by the OS processing unit 102 for each frame. The display image for one frame is expressed by a gradation value for each pixel. The bit depth of the gradation value is, for example, 8 to 10 bits. The graphics processing unit 108 outputs the generated display image to the display unit 30, and causes the display image to be displayed. The function of the graphics processing unit 108 may be realized by executing a graphics driver included with the OS, or may be realized by executing a device driver dedicated to the display unit 30.

[0037] Next, an example of the functional configuration of the timing controller 32 will be described. The timing controller 32 includes a quantization unit 322 , a dithering unit 324 , and a drive signal generation unit 326 .

[0038] The quantization unit 322 has a frame buffer (not shown). The frame buffer temporarily stores display data input from the host system 10, and whenever new display data is input, the stored display data is updated to the new display data. The quantization unit 322 extracts setting information from a drive command input from the host system 10, identifies a dynamic region for each element indicated in the extracted setting information, and identifies a region other than the dynamic region as a non-dynamic region. The quantization unit 322 sets a 1-bit mode as a drive mode for the dynamic region. The 1-bit mode is a mode in which a pixel is driven with a quantized value obtained by quantizing a gradation value by 1 bit. The quantization unit 322 sets a drive mode with a bit depth of 2 bits or more (for example, 4 bits) for the non-dynamic region.

[0039] The quantization unit 322 reads out the grayscale values ​​of the pixels arranged in the dynamic region and the non-dynamic region from the frame buffer at each predetermined read cycle. The read cycle may be set to be shorter as the bit depth is smaller. The quantization unit 322 quantizes the gradation value of each pixel using a bit depth set for the region to which the pixel belongs, and converts it into a quantized value. The quantization unit 322 notifies the dithering unit 324 of the quantization value for each pixel belonging to an area with a bit depth of 1 bit (sometimes referred to as a "1-bit area" in the following description), together with the pre-conversion gradation value and setting information indicating the elements of the display image related to that area.

[0040] For an area where the bit depth is 2 bits or more, the quantization unit 322 notifies the driving signal generation unit 326 of the quantization value for each pixel belonging to that area. This is because dithering is not performed for that area. However, the quantization unit 322 performs a refresh process for the pixels in that area at a predetermined refresh cycle. The refresh cycle may be set to be longer for a driving mode with a larger bit depth. In the refresh process, the quantization unit 322 sets the quantization value for each pixel to a predetermined reference value (for example, a quantization value corresponding to the maximum gradation or the minimum gradation), and then returns it to the original quantization value. Every time the quantization value is changed, the quantization unit 322 notifies the driving signal generation unit 326 of the changed quantization value.

[0041] The dithering unit 324 performs dithering in the 1-bit region set by the quantization unit 322, and spatially distributes the quantization error generated by quantizing the display data. The dithering unit 324 specifies a 1-bit region for each element of the display image based on the setting information notified by the quantization unit 322. For each pixel in the 1-bit region for each element of the display image, the dithering unit 324 calculates the difference between the gradation value before quantization and the quantized value as the quantization error, and distributes the calculated quantization error to unprocessed pixels surrounding it.

[0042] When distributing the quantization error, a matrix operation is repeatedly performed using a distribution matrix having coefficients corresponding to each pixel in each row and column as matrix elements. According to the matrix operation, the quantization error of the target pixel to be calculated is assigned to the unprocessed pixel to which the unprocessed pixel is distributed according to the coefficients determined in the distribution matrix, and is added to the gradation value. Since the target pixel is changed to an unprocessed adjacent pixel every time a matrix operation is performed, the gradation value before quantization in the unprocessed pixel and the quantized value obtained by quantizing the gradation value are not determined until the unprocessed pixel itself becomes the target pixel.

[0043] In this embodiment, in the matrix operation, if another pixel to which the quantization error is to be distributed is outside the dynamic range of the display image element to which the target pixel belongs, the dithering unit 324 does not distribute the quantization error to the other pixel. The dithering unit 324 adopts the quantization value finally obtained for each pixel within the range of the 1-bit region, and updates the original quantization value to the newly adopted quantization value. The dithering unit 324 notifies the drive signal generating unit 326 of the quantization value of each pixel including the updated quantization value. In this way, the dithering unit 324 distributes the quantization error for each 1-bit region included in the elements of a series of spatially connected display images, and the quantization error does not propagate outside the range of the region.

[0044] The drive signal generation unit 326 generates a drive signal having a voltage corresponding to the quantized value of each pixel notified by the quantization unit 322 or the dithering unit 324. The drive signal generation unit 326 outputs a drive signal having a voltage set for each pixel at a different timing for each pixel in a frame period to the EPD panel 34. The voltage set for each pixel is applied to the EPD panel 34, and the pixel is displayed with a grayscale corresponding to the applied voltage.

[0045] Next, an example of an image displayed on the display unit 30 will be described. FIG. 3 illustrates an original image in which the bit depth of the gradation value is 8 bits. FIG. 4 illustrates an example of a quantized image in which the original image in FIG. 3 is quantized by 1 bit. FIG. 5 illustrates an example of a processed image in which the original image in FIG. 3 is dithered and displayed with a bit depth of 1 bit. The quantized image illustrated in FIG. 4 is expressed by simply quantizing the gradation value by 1 bit. In the original image, pixels whose gradation value is equal to or greater than an intermediate value between the maximum and minimum values ​​(for example, 128 for an 8-bit gradation value) have the maximum gradation and are represented by black. In the original image, pixels whose gradation is smaller than a predetermined intermediate value have the minimum gradation and are represented by white. Therefore, in the quantized image illustrated in FIG. 4, the gradation in the original image is lost in a gradation in space, and the facial expression of the person represented in the original image is not fully expressed. In contrast, the processed image illustrated in FIG. 5 is expressed by quantizing the gradation value by 1 bit after dithering the quantization error. With dithering, the density of pixels with maximum gradation is higher in areas with higher gradation values, and the density of pixels with minimum gradation is lower in areas with lower gradation values. The gradation distribution of the entire image is expressed by the spatial distribution of the density of pixels with either maximum or minimum gradation values, so that the facial expression of a person is expressed.

[0046] Next, a matrix operation related to dithering will be described. As described above, according to the matrix operation, the quantization error occurring in the target pixel to be processed is distributed to other unprocessed pixels around the target pixel. In this embodiment, for example, any method such as the Floyd-Steinberg method, the Atkinson method, or the minimum average error method may be adopted. The Floyd-Steinberg method is a method using the Floyd-Steinberg matrix exemplified in FIG. 6. The Atkinson method is a method using the Atkinson matrix exemplified in FIG. 7. The minimum average error method is a method using the matrix exemplified in FIG. 8. Either matrix is ​​used to distribute the quantization error occurring in the target pixel to other unprocessed pixels adjacent to the target pixel.

[0047] For example, in Fig. 6, the * symbol indicates the target pixel. The element values ​​of the elements adjacent to the target pixel on the lower left, directly below, lower right, and right sides indicate coefficients by which the quantization error is multiplied when distributing the quantization error to the corresponding adjacent pixels. Although not shown, the matrix element to the left of the target pixel is set to zero. This indicates that the quantized pixel is not distributed to the pixel to the left of the target pixel. This pixel to the left becomes a processed pixel.

[0048] For example, when applying a Floyd-Steinberg matrix to the quantization error of the target pixel, the dithering unit 324 calculates variance values ​​by multiplying the unprocessed neighboring pixels adjacent to the left diagonally downward, directly below, right diagonally downward, and to the right of the target pixel by 3 / 16, 5 / 16, 1 / 16, and 7 / 16, respectively.The dithering unit 324 then updates the gradation value of each neighboring pixel by adding the calculated variance value.The updated gradation value is quantized when the neighboring pixel becomes the target pixel.

[0049] In dithering, the target pixel serving as the starting point is set to the leftmost column of the top row of the dynamic region. The dithering unit 324 sequentially changes the target pixel to the pixel on the right. If there is no unprocessed pixel on the right in the dynamic region, the dithering unit 324 changes the target pixel to the pixel in the leftmost column of the row below. In this way, the dithering unit 324 changes the target pixel from the left end to the right end for each row, and then changes it to the left end of the row below. If there is no unprocessed pixel in the row below, the dithering unit 324 determines that there is no unprocessed pixel and ends the processing related to that dynamic region. Therefore, the quantization error propagates while being updated as the target pixel moves. Then, the quantization value is changed at the pixel that is the distribution destination due to the distribution of the quantization error. Therefore, if no restriction is imposed on the pixel to which the quantization error is distributed, as illustrated in FIG. 9, the range sa affected by the quantization error generated in the target pixel ps extends to the entire area from the diagonally lower to the lower right end of the target pixel ps.

[0050] However, in this embodiment, the pixels to which the quantization error is dispersed are limited to pixels in a 1-bit region related to the same display image element. In addition, a series of dithering processes is performed for each 1-bit region of each element. Therefore, the quantization error caused by dithering is confined within each 1-bit region. In the example of FIG. 10, the ranges sa1 and sa2 affected by the quantization error with ps1 and ps2 as the target pixels ps1 and ps2, respectively, are included within the ranges of the dynamic regions da1 and da2. For example, the influence of the quantization error in the dynamic region da1 does not extend beyond the range of the dynamic region da1, so that outside the range, the quantization value in the dynamic region da1 is not rewritten. Therefore, by limiting the region where rewriting occurs, the deterioration of pixels and the increase in power consumption due to repeated rewriting are suppressed. In addition, the distribution of the quantization error is spatially discontinuous at the boundaries of the dynamic regions da1 and da2. However, the dynamic regions da1 and da2 represent images different from those around them. This means that the gradation is discontinuous at each boundary. Therefore, even if the quantization error becomes discontinuous at the boundaries between the dynamic areas da1 and da2, the subjective image quality does not decrease.

[0051] Next, a specific example of a method for determining a dynamic region where the display content changes dynamically and constantly for each element of a display image will be described. Elements of a display image that provide a dynamic region include, for example, a moving image, an application window that contains an application image, and an image region surrounded by an edge that forms part of the display screen. The mode setting unit 106 can specify the display area of ​​a moving image that is an element of a display image, for example, by performing the following procedure. An application list indicating a predetermined application is set in the mode setting unit 106 in advance. An application indicating a function of displaying a moving image is set as the predetermined application. The mode setting unit 106 monitors the execution status of the application notified from the OS processing unit 102, and specifies the application being executed. The mode setting unit 106 refers to the application list, and determines whether the specified application being executed corresponds to the predetermined application. The mode setting unit 106 specifies the display area of ​​an image related to an application determined to correspond to the predetermined application from the execution status being monitored. The mode setting unit 106 determines the display area of ​​the specified application as a dynamic area.

[0052] The mode setting unit 106 can specify the display area of ​​the application window to be changed by executing the following procedure. The mode setting unit 106 monitors the execution status of the application notified from the OS processing unit 102 at every predetermined observation period, and specifies the display area of ​​each application being executed. The mode setting unit 106 detects, among the display areas of the specified applications, a display area whose shape, size, or position has changed from the previous observation period until the latest observation period. When the display area is represented by a rectangular application window, it can be specified by the coordinates of one vertex of the display area and the other vertex facing the vertex. These coordinates may be specified by an operation signal input from the input device 40 in response to an operation. Therefore, the mode setting unit 106 can determine whether a change has occurred in the application window depending on whether one or both of the two mutually facing vertices are changed. The mode setting unit 106 determines the display area of ​​the application window in which a change has occurred as a dynamic area.

[0053] The mode setting unit 106 can specify an image area surrounded by an edge by executing the following procedure. The mode setting unit 106 detects edges by executing a known edge detection process on the display image. An edge is a region in which the spatial change in gradation is significantly larger than that of the surrounding regions, and is a series of regions that are spatially adjacent to each other so that the length is larger than the width. The mode setting unit 106 specifies a closed region surrounded by the detected edges in the display image as a candidate region that is a candidate for an image region. One or more candidate regions may be detected in a display image of one frame. When detecting one candidate region, the mode setting unit 106 specifies the detected candidate region as an image region. When detecting multiple candidate regions, the mode setting unit 106 specifies an independent candidate region that does not include other candidate regions as one image region. For a group of multiple candidate regions that have an inclusion relationship, the mode setting unit 106 specifies the largest candidate region that includes all other candidate regions as one image region, and discards all other candidate regions.

[0054] Then, the mode setting unit 106 judges whether each detected image region corresponds to a dynamic region based on the presence or absence of dynamic characteristics of the gradation distribution in the respective image regions. For example, the mode setting unit 106 determines an image region in which the gradation distribution changes at a certain frequency or more during a predetermined period up to that point as a dynamic region. For example, in an image region judged as a dynamic region, if the gradation distribution does not change during the predetermined period up to that point, the mode setting unit 106 judges the image region as a non-dynamic region.

[0055] Next, an example of the drive process of the display unit 30 according to this embodiment will be described. Fig. 11 is a diagram illustrating the drive process of the display unit 30 according to this embodiment. (Step S102) The mode setting unit 106 of the host system 10 specifies a dynamic area for each element of the display image to be displayed on the display unit 30. (Step S104) The mode setting unit 106 notifies the timing controller 32 of the display unit 30 of setting information indicating the dynamic area for each identified element.

[0056] (Step S106) The quantization unit 322 of the timing controller 32 identifies a dynamic region for each element indicated in the setting information notified from the host system 10. The quantization unit 322 determines the drive mode for the identified dynamic region to be 1-bit mode, and determines the drive mode for the other non-dynamic region to be a drive mode with a larger bit depth (e.g., 4-bit mode). (Step S108) The quantization unit 322 quantizes the gradation value at the bit depth of the drive mode determined for each pixel, and notifies the drive signal generation unit 326 of the quantized value obtained by quantization. The dithering unit 324 diffuses the quantization error obtained by quantizing each target pixel with 1 bit in the dynamic region of each element to other unprocessed pixels in the dynamic region, and does not diffuse it outside the dynamic region. The dithering unit 324 notifies the drive signal generation unit 326 of the quantized value updated by diffusing the quantization error. (Step S110) The drive signal generating unit 326 drives the pixel arranged on the EPD panel 34 with a voltage corresponding to the notified quantized value for each pixel, and displays the pixel with the gradation corresponding to the quantized value. Then, the process of FIG. 11 ends.

[0057] As described above, the information processing system S1 according to this embodiment includes the host system 10 and the display unit 30, and the display unit 30 includes a controller (e.g., the timing controller 32) and an electrophoretic display panel (e.g., the EPD panel 34). The controller drives pixels arranged on the electrophoretic display panel based on a quantization value indicating a grayscale for each pixel. The host system 10 specifies a dynamic region in which the display content dynamically changes for each element of a display image to be displayed on the display unit 30, and the controller quantizes the grayscale value for each pixel included in the specified dynamic region by one bit to calculate a quantization value, diffuses the quantization error for each pixel within the dynamic region of the element of the display image to other pixels arranged within a predetermined range from the pixel, updates the quantization value of the other pixels, and does not diffuse the quantization error outside the dynamic region. According to this configuration, the diffusion destination of the quantization error is limited to unprocessed pixels within the dynamic region of each element, and is not diffused outside the dynamic region. Since the update of the quantization value by the diffusion of the quantization error is limited within the dynamic region, the frequency of rewriting can be reduced. Therefore, by reducing the rewriting, the period until the end of the life can be extended. In addition, since the power consumption caused by the rewriting can be suppressed, the power consumption can be reduced.

[0058] This embodiment may also be implemented as follows. The host system 10 may define a display area of ​​a moving image included in the display image as a dynamic area that is an element of the display image. The host system 10 may define a display area of ​​an image of an application that is included in and transitions within the displayed image as a dynamic area that is an element of the displayed image. The host system 10 may detect edges from the display image, and define a region surrounded by the detected edges and in which the display content changes dynamically as a dynamic region that is an element of the display image.

[0059] A controller (e.g., a timing controller 32) that drives pixels arranged on an electrophoretic display panel (e.g., an EPD panel 34) based on a quantization value indicating a gradation for each pixel, quantizing the gradation value for each pixel included in a dynamic area for each element of a display image notified from a host system 10 at a bit depth lower than that of pixels included in a non-dynamic area to calculate a quantization value, diffusing the quantization error for each pixel within the dynamic area of ​​the element to other pixels arranged within a predetermined range from the pixel to update the quantization value of the other pixel, and not diffusing the quantization error of the pixel outside the dynamic area.

[0060] A control method in an information processing system S1 including a host system 10 and a display unit 30, the display unit including a controller (e.g., a timing controller 32) and an electrophoretic display panel (e.g., an EPD panel 34), the controller drives pixels arranged on the electrophoretic display panel based on a quantization value indicating a gray scale for each pixel. The host system 10 specifies a dynamic region where display contents dynamically change for each element of a display image to be displayed on the display unit 30, the controller quantizes the gray scale value for each pixel included in the specified dynamic region with a bit depth lower than that of pixels included in a non-dynamic region to calculate a quantization value, quantizes the gray scale value for each pixel included in the dynamic region with one bit to calculate a quantization value, diffuses a quantization error for each pixel within the dynamic region of the element to other pixels arranged within a predetermined range from the pixel to update the quantization value of the other pixel, and does not diffuse the quantization error outside the dynamic region.

[0061] Although the embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to the above embodiment, and the present invention also includes designs that do not deviate from the gist of the present invention. The configurations described in the above embodiment can be combined in any combination. [Explanation of symbols]

[0062] S1...information processing system, 10...host system, 12...processor, 14...main memory, 20...chipset, 22...auxiliary storage medium, 30...display unit, 32...timing controller, 34...EPD panel, 40...input device, 102...OS processing unit, 104...application execution unit, 106...mode setting unit, 108...graphics processing unit, 322...quantization unit, 324...dithering unit, 326...driving signal generation unit

Claims

1. Equipped with a host system and a display unit, The display unit comprises: A controller and an electrophoretic display panel are provided, The controller: driving pixels arranged on the electrophoretic display panel based on a quantized value indicating a gray scale for each pixel; An information processing system, The host system includes: Detecting edges from a display image to be displayed on the display unit; Detecting an image region bounded by the edge; Identifying the image region in which the gradation distribution changes within a predetermined period up to the present time occur with a certain frequency or more as a dynamic region; The controller: quantizing the gradation value of each pixel included in the dynamic region by 1 bit to calculate a quantized value; Diffusing the quantization error for each pixel in the dynamic region to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixels; not diffusing the quantization error outside the dynamic region; Information processing system.

2. The host system includes: A display area of ​​a moving image included in the display image is defined as a dynamic area in which the display contents change dynamically. The information processing system according to claim 1 .

3. The host system includes: A display area of ​​the image of the application that is included in the display image and changes is defined as a dynamic area in which the display contents change dynamically. The information processing system according to claim 1 .

4. Equipped with a host system and a display unit, The display unit comprises: A controller and an electrophoretic display panel are provided, The controller: driving pixels arranged on the electrophoretic display panel based on a quantized value indicating a gray scale for each pixel; A control method in an information processing system, comprising: The host system includes: Detecting edges from a display image to be displayed on the display unit; Detecting an image region bounded by the edge; Identifying the image region in which the gradation distribution changes within a predetermined period up to the present time occur with a certain frequency or more as a dynamic region; The controller: quantizing the gradation value of each pixel included in the dynamic region at a bit depth lower than that of pixels included in the non-dynamic region to calculate a quantized value; quantizing the gradation value of each pixel included in the dynamic region by 1 bit to calculate a quantized value; Diffusing the quantization error for each pixel in the dynamic region to other pixels arranged within a predetermined range from the pixel in question to update the quantization value of the other pixels; not diffusing the quantization error outside the dynamic region; Control methods.

Citation Information

Patent Citations

  • Liquid crystal display device

    JP2000284755A

  • Image processing system, display control method of the same, program and information storage medium

    JP2013205731A

  • Integrated circuit, display device, electronic device, and display control method

    JP2015057637A

  • Controller, display device, control method and program

    JP2015064421A

  • Display device, display method, and program

    JP2015152608A

Cited By

  • Information processing system, controller, and control method

    JP2025181638A