US20150049098A1 - Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method - Google Patents
Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method Download PDFInfo
- Publication number
- US20150049098A1 US20150049098A1 US14/335,956 US201414335956A US2015049098A1 US 20150049098 A1 US20150049098 A1 US 20150049098A1 US 201414335956 A US201414335956 A US 201414335956A US 2015049098 A1 US2015049098 A1 US 2015049098A1
- Authority
- US
- United States
- Prior art keywords
- pixel
- display
- compression unit
- compression
- compressed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
- G09G3/2092—Details of a display terminals using a flat panel, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G3/2096—Details of the interface to the display terminal specific for a flat panel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/02—Addressing, scanning or driving the display screen or processing steps related thereto
- G09G2310/0202—Addressing of scan or signal lines
- G09G2310/0218—Addressing of scan or signal lines with collection of electrodes in groups for n-dimensional addressing
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/02—Addressing, scanning or driving the display screen or processing steps related thereto
- G09G2310/0264—Details of driving circuits
- G09G2310/027—Details of drivers for data electrodes, the drivers handling digital grey scale data, e.g. use of D/A converters
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/02—Addressing, scanning or driving the display screen or processing steps related thereto
- G09G2310/0264—Details of driving circuits
- G09G2310/0297—Special arrangements with multiplexing or demultiplexing of display data in the drivers for data electrodes, in a pre-processing circuitry delivering display data to said drivers or in the matrix panel, e.g. multiplexing plural data signals to one D/A converter or demultiplexing the D/A converter output to multiple columns
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2330/00—Aspects of power supply; Aspects of display protection and defect management
- G09G2330/02—Details of power systems and of start or stop of display operation
- G09G2330/021—Power management, e.g. power saving
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/02—Handling of images in compressed format, e.g. JPEG, MPEG
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/14—Solving problems related to the presentation of information to be displayed
- G09G2340/145—Solving problems related to the presentation of information to be displayed related to small screens
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/16—Determination of a pixel data signal depending on the signal applied in the previous frame
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2350/00—Solving problems of bandwidth in display systems
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/08—Power processing, i.e. workload management for processors involved in display operations, such as CPUs or GPUs
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/04—Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/08—Details of image data interface between the display device controller and the data line driver circuit
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/10—Use of a protocol of communication by packets in interfaces along the display data pipeline
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
Definitions
- the disclosed embodiments of the present invention relate to transmitting and receiving data over a display interface, and more particularly, to a data processing apparatus for transmitting/receiving compressed pixel data groups of a picture via multiple display ports of a display interface and a related data processing method.
- a display interface is disposed between a first chip and a second chip to transmit display data from the first chip to the second chip for further processing.
- the first chip may be a host application processor
- the second chip may be a driver integrated circuit (IC).
- the display data may be single view data for two-dimensional (2D) display or multiple view data for three-dimensional (3D) display.
- 2D/3D display with higher resolution can be realized.
- the display data transmitted over the display interface would have a larger data size/data rate, which increases the power consumption of the display interface inevitably.
- the host application processor and the driver IC are both located at a portable device (e.g., a smartphone) powered by a battery device, the battery life is shortened due to the increased power consumption of the display interface.
- a portable device e.g., a smartphone
- the battery life is shortened due to the increased power consumption of the display interface.
- a data processing apparatus for transmitting/receiving compressed pixel data groups of a picture via multiple display ports of a display interface and a related data processing method are proposed.
- an exemplary data processing apparatus includes a compression circuit, a rate controller and an output interface.
- the compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture.
- the rate controller is configured to apply bit-rate control to each compression operation, wherein the rate controller adjusts the bit-rate control according to a position of each pixel boundary between different pixel groups.
- the output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing apparatus includes a compression circuit and an output interface.
- the compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group.
- the output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing apparatus includes a compression circuit and an output interface.
- the compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels.
- the output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing apparatus includes an input interface and a de-compressor.
- the input interface is configured to receive an input bitstream from a display port of a display interface, and un-pack the input bitstream into a compressed pixel data group of a picture.
- the de-compressor is configured to de-compress the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region driven by the data processing apparatus, wherein the target display region corresponds to a portion of the picture.
- an exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture; performing bit-rate control which is adjusted according to a position of each pixel boundary between different pixel groups; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- an exemplary data processing method includes: receiving an input bitstream from a display port of a display interface, and un-packing the input bitstream into a compressed pixel data group of a picture; and de-compressing the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region to be driven, wherein the target display region corresponds to a portion of the picture.
- FIG. 1 is a block diagram illustrating a data processing system according to an embodiment of the present invention.
- FIG. 2 is a diagram of an application processor shown in FIG. 1 according to an embodiment of the present invention.
- FIG. 3 is a diagram of one of driver ICs shown in FIG. 1 according to an embodiment of the present invention.
- FIG. 4 is a diagram illustrating a rate control mechanism according to an embodiment of the present invention.
- FIG. 5 is a diagram illustrating a position-aware rate control mechanism according to an embodiment of the present invention.
- FIG. 6 is a flowchart illustrating a control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention.
- FIG. 7 is a diagram illustrating a modified compression mechanism according to an embodiment of the present invention.
- FIG. 8 is a flowchart illustrating another control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention.
- FIG. 9 is a diagram illustrating a pixel data splitting operation performed by a mapper based on another pixel data grouping design.
- FIG. 10 is a flowchart illustrating yet another control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention.
- the present invention proposes applying data compression to a display data and then transmitting a compressed display data over a display interface.
- the data size/data rate of the compressed display data is smaller than that of the original un-compressed display data, the power consumption of the display interface is reduced correspondingly.
- the display interface is required to use a plurality of display ports for compressed data transmission, the pixel data of one picture may be split into a plurality of pixel data groups, the pixel data groups may be compressed into a plurality of compressed pixel data groups, and the compressed pixel data groups may be transmitted via the display ports respectively.
- the present invention further proposes an image quality improvement scheme which is capable of making a reconstructed picture have better image quality on each pixel boundary of de-compressed pixel data groups, where each de-compressed pixel data group is obtained based on a de-compression result of one compressed pixel data group transmitted via one display port. Further details will be described as below.
- FIG. 1 is a block diagram illustrating a data processing system according to an embodiment of the present invention.
- the data processing system 100 includes a plurality of data processing apparatuses such as one application processor (AP) 102 and a plurality of driver integrated circuits (ICs) 104 _ 1 - 104 _N.
- the driver ICs 104 _ 1 - 104 _N serve as display drivers of a display panel 106 , where the number of driver ICs 104 _ 1 - 104 _N depends on the actual driving requirement of the display panel 106 .
- the display panel 106 may be a high-definition (HD) panel (e.g., 1080P panel) or an ultra-high definition (UHD) panel (e.g., 4K2K panel).
- a display screen 107 of the display panel 106 may be divided into a plurality of display regions R 1 -R N , and each of the display regions R 1 -R N is driven by one of the driver ICs 104 _ 1 - 104 _N.
- each of the driver ICs 104 _ 1 - 104 _N is only responsible of driving a portion of the display screen 107 , and therefore does not need to transmit all display data of a complete picture to the display panel 106 .
- the application processor 102 and the driver ICs 104 _ 1 - 104 _N may be implemented in different chips, and the application processor 102 may communicate with the driver ICs 104 _ 1 - 104 _N via a plurality of display ports P 1 -P N of a display interface 103 , respectively.
- the display interface 103 may be a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
- DSI display serial interface
- MIPI Mobile Industry Processor Interface
- eDP embedded display port
- VESA Video Electronics Standards Association
- Each of the driver ICs 104 _ 1 - 104 _N receives partial compressed display data of one picture IMG from the application processor 102 , and generates partial de-compressed display data to one display region of the display screen 107 .
- the application processor 102 is coupled between an external data source (not shown) and the display interface 103 , and supports compressed data transmission.
- the application processor 102 receives the input display data from the external data source (e.g., a camera sensor, a memory card or a wireless receiver), generates a plurality of partial compressed display data, and transmits the partial compressed display data to the driver ICs 104 _ 1 - 104 _N via display ports P 1 -P N of the display interface 103 , where the input display data may be image data or video data that includes pixel data DI of a plurality of pixels of one picture IMG to be displayed on the display panel 106 .
- the external data source e.g., a camera sensor, a memory card or a wireless receiver
- FIG. 2 is a diagram of the application processor 102 shown in FIG. 1 according to an embodiment of the present invention.
- the application processor 102 includes a display controller 111 , an output interface 112 and a processing circuit 113 .
- the processing circuit 113 includes circuit elements required for processing the pixel data DI of the picture IMG to generate a plurality of compressed pixel data groups D 1 ′-D N ′.
- the processing circuit 113 has a compression circuit 114 , a rate controller 115 , and other circuitry 116 .
- the processing circuit 113 includes a mapper 114 and a plurality of compressors 118 _ 1 - 118 _N.
- the other circuitry 116 may have a display processor, additional image processing element(s), etc.
- the display processor may perform image processing operations, including scaling, rotating, etc.
- the input display data provided by an external data source may be bypassed or processed by the additional image processing element(s) located before the display processor to generate a source display data, and then the display processor may process the source display data to generate the pixel data DI to the mapper 117 .
- the pixel data DI to be processed by the mapper 117 may be directly provided from the data source or indirectly obtained from the input display data provided by the data source.
- the present invention has no limitation on the source of the pixel data DI.
- the mapper 114 acts as a splitter, and is configured to receive the pixel data DI of one picture IMG and split the pixel data DI of one picture IMG into a plurality of pixel data groups D 1 -D N according to a pixel data group setting DG SET .
- the display controller 111 is configured to control the operation of the processing circuit 113 .
- the width of the picture IMG is W
- the height of the picture IMG is H.
- each of the image partitions A 1 -A N may have a resolution of (W/N) ⁇ H. It should be noted that this is for illustrative purposes only. In an alternative design, the display regions R 1 -R N may have different sizes, and the image partitions A 1 -A N may have different resolutions. Moreover, the horizontal display region partitioning applied to the display screen 107 and the horizontal image partitioning applied to the picture IMG are not meant to be limitations of the present invention.
- the vertical display region partitioning may be applied to the display screen 107 , thus resulting in multiple display regions arranged vertically in the display screen 107 ; and the vertical image partitioning may be applied to the picture IMG, thus resulting in multiple image partitions arranged vertically in the picture IMG. Since the display regions R 1 -R N will be used to display image contents of a plurality of image partitions in the same picture respectively, the pixel data grouping setting DG SET corresponding to the exemplary arrangement of the image partitions A 1 -A N shown in FIG. 1 may be decided by the display controller 111 .
- the pixel data grouping setting DG SET defines selection of non-overlapped pixels for generating each pixel data group. Hence, any pixel included in one pixel group is excluded from other pixel groups.
- the mapper 117 regards all pixels belonging to one image partition as one pixel group, and only gathers pixel data of the pixel group as one pixel data group.
- the pixel data group D 1 only includes pixel data of one pixel group including all pixels belonging to the image partition A 1
- the pixel data group D N only includes pixel data of another pixel group including all pixels belonging to the image partition A N .
- the compressors 118 _ 1 - 118 _N compress the pixel data groups D 1 -D N to generate compressed pixel data groups D 1 ′-D N ′, respectively.
- the rate controller 115 is configured to apply bit rate control to each of the compressors 118 _ 1 - 118 _N for controlling a bit budget allocation per compression unit. In this way, each of the compressed pixel data groups D 1 ′-D N ′ is generated at a desired bit rate.
- compression operations performed by the compressors 118 _ 1 - 118 _N are independent of each other, thus enabling rate control with data parallelism.
- the output interface 112 is configured to refer to the transmission protocol of the display interface 103 to pack/packetize the compressed pixel data groups D 1 ′-D N ′ into a plurality of output bitstreams BS 1 -BS N , respectively; and transmit the output bitstreams BS 1 -BS N to the driver ICs 104 _ 1 - 104 _N via a plurality of display ports P 1 -P N of the display interface 103 , respectively.
- the driver IC When the application processor 102 transmits one partial compressed display data (e.g., one of compressed pixel data groups D 1 ′-D N ′) to one driver IC, the driver IC receives the partial compressed display data from one display port of the display interface 103 , and de-compress the partial compressed display data to generate one partial de-compressed display data (e.g., one of de-compressed pixel data groups D 1 ′′-D N ′′) for driving a portion of the display screen 107 .
- Each of the driver ICs 104 _ 1 - 104 _N communicates with the application processor 102 via the display interface 103 , and may have the same circuit configuration. For clarity and simplicity, only one of the driver ICs 104 _ 1 - 104 _N is detailed as below.
- FIG. 3 is a diagram illustrating the driver IC 104 _ 1 shown in FIG. 1 according to an embodiment of the present invention.
- the driver IC 104 _ 1 is coupled between the display interface 103 and the display port P 1 of the display panel 106 , and supports compressed data reception.
- the driver IC 104 _ 1 includes a driver IC controller 121 , an input interface 122 and a processing circuit 123 .
- the input interface 122 is configured to receive an input bitstream (i.e., the bitstream BS 1 transmitted via display port P 1 ), and un-pack/un-packetize the input bitstream into a compressed pixel data group of one picture (e.g., compressed pixel data group D 1 ′ packed in the bitstream BS 1 ). It should be noted that, if there is no error introduced during the data transmission, the compressed pixel data group un-packed/un-packetized from the input interface 122 should be identical to the compressed pixel data groups D 1 ′ received by the output interface 112 .
- the driver IC controller 121 is configured to control the operation of the processing circuit 123 .
- the processing circuit 123 may include circuit elements required for driving one display region R 1 of the display panel 106 .
- the processing circuit 123 has one de-compressor 124 and other circuitry 125 .
- the other circuitry 125 may have a display buffer, additional image processing element(s), etc.
- the de-compressor 124 generates a de-compressed pixel data group D 1 ′′ based on a de-compression result of the compressed pixel data group un-packed/un-packetized from the input interface 122 , where the partial display data to be displayed on the display region R 1 of the display screen 107 is derived from the de-compressed pixel data group D 1 ′′.
- the de-compressor 124 directly obtains the de-compressed pixel data group D 1 ′′ by de-compressing the compressed pixel data group un-packed/un-packetized from the input interface 122 .
- the pixel data splitting operation performed by the mapper 117 shown in FIG. 2 is to generate multiple pixel data groups that will undergo rate-controlled compression independently for compressed data transmission over multiple display ports P 1 -P N of the display interface 103 .
- pixel data of adjacent pixel lines e.g., pixel rows or pixel columns
- the rate control generally optimizes the bit rate in terms of pixel context rather than pixel positions.
- the pixel boundary may introduce artifacts since the rate control is not aware of the boundary position.
- the mapper 117 gathers pixel data of all pixels belonging to one image partition as one pixel data group only.
- the rate control applied to the pixel data group of the image partition A 1 is independent of the rate control applied to the pixel data group of the image partition A 2
- the rate control applied to the pixel data group of the image partition A N-1 is independent of the rate control applied to the pixel data group of the image partition A N .
- FIG. 4 is a diagram illustrating a rate control mechanism according to an embodiment of the present invention.
- the mapper 117 splits one pixel line (e.g., one pixel row in this example shown in FIG. 4 ) composed of pixels P 1 -P W into a plurality of pixel sections S 1 -S N each having multiple pixels.
- the pixel sections S 1 -S N correspond to the image partitions A 1 -A N , respectively.
- the pixel P I may be part of a compression unit with one bit budget allocation
- the pixel P I+1 may be part of another compression unit with a different bit budget allocation
- the pixel P L may be part of a compression unit with one bit budget allocation
- the pixel P L+1 may be part of another compression unit with a different bit budget allocation.
- the difference between the bit budget allocations of compression units on opposite of a pixel boundary may be large.
- the rate controller 115 may allocate bit rates un-evenly on the pixel boundary, thus resulting in degraded image quality on the pixel boundary in a reconstructed picture.
- the present invention therefore proposes a position-aware rate control mechanism which optimizes the bit budget allocation in terms of pixel positions.
- FIG. 5 is a diagram illustrating a position-aware rate control mechanism according to an embodiment of the present invention.
- compression units CU 1 and CU 2 on one side of a pixel boundary and compression units CU 3 and CU 4 on the other side of the pixel boundary.
- the compression units CU 1 and CU 2 belong to one pixel group PG 1 , and the compression unit CU 1 is nearer to the pixel boundary than the compression unit CU 2 .
- the compression units CU 3 and CU 4 belong to another pixel group PG 2 , and the compression unit CU 3 is nearer to the pixel boundary than the compression unit CU 4 .
- the pixel data of pixels in the pixel group PG 1 may be compressed into one compressed pixel data group D 1 ′ (or D N-1 ′), and the pixel data of pixels in the pixel group PG 2 may be compressed into another compressed pixel data group D 2 ′ (or D N ′).
- each of the compression units CU 1 -CU 4 may include 4 ⁇ 2 pixels, and the compression units CU 1 -CU 4 may be horizontally or vertically adjacent in one picture.
- the rate controller 115 may be configured to adjust the bit-rate control (i.e., bit budget allocation) according to a position of each pixel boundary between different pixel groups.
- the rate controller 115 increases an original bit budget BBori_CU 1 assigned to the compression unit CU 1 by an adjustment value ⁇ 1 ( ⁇ 1>0) to thereby determine a final bit budget BBtar_CU 1 , and decreases an original bit budget BBori_CU 2 assigned to the compression unit CU 2 by the adjustment value ⁇ 1 to thereby determine a final bit budget BBtar_CU 2 .
- the rate controller 115 increases an original bit budget BBori_CU 3 assigned to the compression unit CU 3 by an adjustment value ⁇ 2 ( ⁇ 2>0) to thereby determine a final bit budget BBtar_CU 3 , and decreases an original bit budget BBori_CU 4 assigned to the compression unit CU 4 by the adjustment value ⁇ 2 to thereby determine a final bit budget BBtar_CU 4 .
- the adjustment value ⁇ 2 may be equal to or different from the adjustment value ⁇ 1, depending upon actual design consideration. Since the proposed position-aware rate control tends to set a larger bit budget near the pixel boundary, the artifacts on the pixel boundary can be reduced. In this way, the image quality around the pixel boundary in a reconstructed picture can be improved.
- FIG. 6 is a flowchart illustrating a control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown in FIG. 6 .
- the exemplary control and data flow may be briefly summarized by following steps.
- Step 602 Split pixel data of a plurality of pixels of one picture into a plurality of pixel data groups.
- Step 604 Apply rate control to each of a plurality of compressors according to pixel boundary positions.
- Step 606 Generate a plurality of compressed pixel data groups by using the compressors to compress the pixel data groups, respectively.
- Step 608 Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 610 Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 612 Receive an input bitstream from the display interface.
- Step 614 Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 616 Generate a de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- steps 602 - 610 are performed by the application processor (AP) 102
- steps 612 - 616 are performed by one of the driver ICs 104 _ 1 - 104 _N.
- AP application processor
- steps 612 - 616 are performed by one of the driver ICs 104 _ 1 - 104 _N.
- the rate control applied to the pixel section S 1 of a pixel line is independent of the rate control applied to the pixel section S 2 of the same pixel line.
- the pixel section S 1 is compressed in an order from P 1 to P I
- the pixel section S 2 is compressed in an order from P I+1 to P J .
- the pixel section S N-1 is compressed in an order from P K+1 to P L
- the pixel section S N is compressed in an order from P L+1 to P W .
- each pixel section located at the same pixel line is compressed in the same compression order, as shown in FIG. 4 .
- the bit budget allocation condition for the pixel P I (which is the last compressed pixel in the pixel section S 1 ) may be different from the bit budget allocation condition for the pixel P I+1 (which is the first compressed pixel in the pixel section S 2 ); and the bit budget allocation condition for the pixel P L (which is the last compressed pixel in the pixel section S N-1 ) may be different from the bit budget allocation condition for the pixel P L+1 (which is the first compressed pixel in the pixel section S N ).
- the present invention further proposes a modified compression mechanism with compression orders set based on pixel boundary positions.
- FIG. 7 is a diagram illustrating a modified compression mechanism according to an embodiment of the present invention.
- compression units CU 1 and CU 2 on one side of a pixel boundary and compression units CU 3 and CU 4 on the other side of the pixel boundary.
- the compression units CU 1 and CU 2 belong to one pixel group PG 1 , and the compression unit CU 1 is nearer to the pixel boundary than the compression unit CU 2 .
- the compression units CU 3 and CU 4 belong to another pixel group PG 2 , and the compression unit CU 3 is nearer to the pixel boundary than the compression unit CU 4 .
- the pixel data of pixels in the pixel group PG 1 may be compressed into one compressed pixel data group D 1 ′ (or D N-1 ′), and the pixel data of pixels in the pixel group PG 2 may be compressed into another compressed pixel data group D 2 ′ (or D N ′).
- each of the compression units CU 1 -CU 4 may include 4 ⁇ 2 pixels, and the compression units CU 1 -CU 4 may be horizontally or vertically adjacent in a picture.
- each of the compressors 115 _ 1 and 115 _ 2 may be configured to set a compression order according to a position of each pixel boundary between different pixel groups. For example, the compressor 118 _ 1 compresses the compression unit CU 1 prior to compressing the compression unit CU 2 , and the compressor 118 _ 2 compresses the compression unit CU 3 prior to compressing the compression unit CU 4 . In other words, two adjacent pixel sections located at the same pixel line are compressed in opposite compression orders. Since the modified compression scheme starts the compression from compression units near the pixel boundary between adjacent pixel groups, the bit budget allocation conditions near the pixel boundary may be more similar. In this way, the image quality around the pixel boundary in a reconstructed picture can be improved.
- FIG. 8 is a flowchart illustrating another control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown in FIG. 8 .
- the exemplary control and data flow may be briefly summarized by following steps.
- Step 802 Split pixel data of a plurality of pixels of one picture into a plurality of pixel data groups.
- Step 804 Apply rate control to each of a plurality of compressors.
- Step 806 Generate a plurality of compressed pixel data groups by using the compressors to compress the pixel data groups according to compression orders set based on pixel boundary positions.
- Step 808 Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 810 Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 812 Receive an input bitstream from the display interface.
- Step 814 Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 816 Generate a de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- steps 802 - 810 are performed by the application processor (AP) 102
- steps 812 - 816 are performed by one of the driver ICs 104 _ 1 - 104 _N.
- AP application processor
- steps 812 - 816 are performed by one of the driver ICs 104 _ 1 - 104 _N.
- the pixel data grouping setting DG SET defines selection of non-overlapped pixels for generating each pixel data group.
- the pixel data grouping setting DG SET may define selection of overlapped pixels for generating each pixel data group.
- some pixels included in one pixel group are also included in another pixel group.
- FIG. 9 is a diagram illustrating a pixel data splitting operation performed by a mapper based on another pixel data grouping design.
- the mapper 117 gathers pixel data of a pixel group as one pixel data group, where the pixel group includes all pixels belonging to one image partition and some pixels belonging to adjacent image partition(s). Hence, as shown in FIG.
- the pixel data group D 1 is composed of pixel data of a pixel group PG 1 including all pixels belonging to the image partition A 1 and pixel data of some pixels belonging to one adjacent image partition A 2 ;
- the pixel data group D 2 is composed of pixel data of a pixel group PG 2 including all pixels belonging to the image partition A 2 and pixel data of some pixels belonging to two adjacent image partitions A 1 and A 3 ;
- the pixel data group D N-1 is composed of pixel data of a pixel group PG N-1 including all pixels belonging to the image partition A N-1 and pixel data of some pixels belonging to two adjacent image partitions A N-1 and A N ;
- the pixel data group D N is composed of pixel data of a pixel group PG N including all pixels belonging to the image partition A N and pixel data of some pixels belonging to one adjacent image partition A N-1 .
- the pixel group includes pixels inside an image partition to be displayed on a designated display region, and further includes pixels outside the image partition to be displayed on the designated display region.
- the pixel group PG 1 includes pixels of a portion of the image partition A 2 that will not be displayed on the display region R 1
- the pixel group PG 2 includes pixels of a portion of the image partition A 1 and pixels of a portion of the image partition A 3 that will not be displayed on the display region R 2
- the pixel group PG N-1 includes pixels of a portion of the image partition A N-2 and pixels of a portion of the image partition A N that will not be displayed on the display region R N-1
- the pixel group PG N includes pixels of a portion of the image partition A N-1 that will not be displayed on the display region R N .
- the compressors 118 _ 1 - 118 _N compress the pixel data groups D 1 -D N corresponding to the pixel groups PG 1 -PG N having overlapped pixels, and accordingly generate the compressed pixel data groups D 1 ′-D N ′.
- each of the pixel data groups D 1 -D N is compressed in the same compression order (e.g., an order from a left-most pixel in a pixel section of a pixel line to a right-most pixel in the same pixel section).
- the desired pixels (i.e., pixels needed to be displayed) in the pixel group are on one side of a pixel boundary, and additional pixels (i.e., overlapped pixels) in the pixel group are on the other side of the pixel boundary.
- the bit rate control applied to compression of the pixel group may lend the bit budget from the overlapped pixels to assign a larger bit budget to desired pixels near the pixel boundary. In this way, when reconstructed image partitions are displayed on the display regions R 1 -R N , the artifacts on the pixel boundaries can be reduced.
- the de-compressor 124 shown in FIG. 3 is configured to obtain a preliminary de-compressed pixel data group by de-compressing the compressed pixel data group un-packed from the input interface 122 , and discards a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region (e.g., R 1 ) to be driven by the driver IC (e.g., 104 _ 1 ) to generate the de-compressed pixel data group (e.g., D 1 ′′).
- a target display region e.g., R 1
- the driver IC e.g., 104 _ 1
- FIG. 10 is a flowchart illustrating yet another control and data flow of the data processing system shown in FIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown in FIG. 10 .
- the exemplary control and data flow may be briefly summarized by following steps.
- Step 1002 Split a plurality of pixels of one picture into a plurality of pixel groups with overlapped pixels.
- Step 1004 Apply rate control to each of a plurality of compressors.
- Step 1006 Generate a plurality of compressed pixel data groups by using the compressors to compress a plurality of pixel data groups corresponding to the pixel groups.
- Step 1008 Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 1010 Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 1012 Receive an input bitstream from the display interface.
- Step 1014 Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 1016 Generate a preliminary de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- Step 1018 Discard a portion of the preliminary de-compressed pixel data that corresponds to pixels beyond a target display region to be driven by the driver IC.
- steps 1002 - 1010 are performed by the application processor (AP) 102
- steps 1012 - 1018 are performed by one of the driver ICs 104 _ 1 - 104 _N.
- AP application processor
- steps 1012 - 1018 are performed by one of the driver ICs 104 _ 1 - 104 _N.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Abstract
A data processing apparatus includes a compression circuit, a rate controller, and an output interface. The compression circuit generates a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture. The rate controller applies bit-rate control to each compression operation, wherein the rate controller adjusts the bit-rate control according to a position of each pixel boundary between different pixel groups. The output interface outputs the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
Description
- This application claims the benefit of U.S. provisional application No. 61/865,345, filed on Aug. 13, 2013 and incorporated herein by reference.
- The disclosed embodiments of the present invention relate to transmitting and receiving data over a display interface, and more particularly, to a data processing apparatus for transmitting/receiving compressed pixel data groups of a picture via multiple display ports of a display interface and a related data processing method.
- A display interface is disposed between a first chip and a second chip to transmit display data from the first chip to the second chip for further processing. For example, the first chip may be a host application processor, and the second chip may be a driver integrated circuit (IC). The display data may be single view data for two-dimensional (2D) display or multiple view data for three-dimensional (3D) display. When a display panel supports a higher display resolution, 2D/3D display with higher resolution can be realized. Hence, the display data transmitted over the display interface would have a larger data size/data rate, which increases the power consumption of the display interface inevitably. If the host application processor and the driver IC are both located at a portable device (e.g., a smartphone) powered by a battery device, the battery life is shortened due to the increased power consumption of the display interface. Thus, there is a need for an innovative design which can effectively reduce the power consumption of the display interface.
- In accordance with exemplary embodiments of the present invention, a data processing apparatus for transmitting/receiving compressed pixel data groups of a picture via multiple display ports of a display interface and a related data processing method are proposed.
- According to a first aspect of the present invention, an exemplary data processing apparatus is disclosed. The exemplary data processing apparatus includes a compression circuit, a rate controller and an output interface. The compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture. The rate controller is configured to apply bit-rate control to each compression operation, wherein the rate controller adjusts the bit-rate control according to a position of each pixel boundary between different pixel groups. The output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to a second aspect of the present invention, an exemplary data processing apparatus is disclosed. The exemplary data processing apparatus includes a compression circuit and an output interface. The compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group. The output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to a third aspect of the present invention, an exemplary data processing apparatus is disclosed. The exemplary data processing apparatus includes a compression circuit and an output interface. The compression circuit is configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels. The output interface is configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to a fourth aspect of the present invention, an exemplary data processing apparatus is disclosed. The exemplary data processing apparatus includes an input interface and a de-compressor. The input interface is configured to receive an input bitstream from a display port of a display interface, and un-pack the input bitstream into a compressed pixel data group of a picture. The de-compressor is configured to de-compress the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region driven by the data processing apparatus, wherein the target display region corresponds to a portion of the picture.
- According to a fifth aspect of the present invention, an exemplary data processing method is disclosed. The exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture; performing bit-rate control which is adjusted according to a position of each pixel boundary between different pixel groups; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to a sixth aspect of the present invention, an exemplary data processing method is disclosed. The exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to a seventh aspect of the present invention, an exemplary data processing method is disclosed. The exemplary data processing method includes: generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels; and outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
- According to an eighth aspect of the present invention, an exemplary data processing method is disclosed. The exemplary data processing method includes: receiving an input bitstream from a display port of a display interface, and un-packing the input bitstream into a compressed pixel data group of a picture; and de-compressing the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region to be driven, wherein the target display region corresponds to a portion of the picture.
- These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
-
FIG. 1 is a block diagram illustrating a data processing system according to an embodiment of the present invention. -
FIG. 2 is a diagram of an application processor shown inFIG. 1 according to an embodiment of the present invention. -
FIG. 3 is a diagram of one of driver ICs shown inFIG. 1 according to an embodiment of the present invention. -
FIG. 4 is a diagram illustrating a rate control mechanism according to an embodiment of the present invention. -
FIG. 5 is a diagram illustrating a position-aware rate control mechanism according to an embodiment of the present invention. -
FIG. 6 is a flowchart illustrating a control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. -
FIG. 7 is a diagram illustrating a modified compression mechanism according to an embodiment of the present invention. -
FIG. 8 is a flowchart illustrating another control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. -
FIG. 9 is a diagram illustrating a pixel data splitting operation performed by a mapper based on another pixel data grouping design. -
FIG. 10 is a flowchart illustrating yet another control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. - Certain terms are used throughout the description and following claims to refer to particular components. As one skilled in the art will appreciate, manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following description and in the claims, the terms “include” and “comprise” are used in an open-ended fashion, and thus should be interpreted to mean “include, but not limited to . . . ”. Also, the term “couple” is intended to mean either an indirect or direct electrical connection. Accordingly, if one device is coupled to another device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.
- The present invention proposes applying data compression to a display data and then transmitting a compressed display data over a display interface. As the data size/data rate of the compressed display data is smaller than that of the original un-compressed display data, the power consumption of the display interface is reduced correspondingly. When the display interface is required to use a plurality of display ports for compressed data transmission, the pixel data of one picture may be split into a plurality of pixel data groups, the pixel data groups may be compressed into a plurality of compressed pixel data groups, and the compressed pixel data groups may be transmitted via the display ports respectively. The present invention further proposes an image quality improvement scheme which is capable of making a reconstructed picture have better image quality on each pixel boundary of de-compressed pixel data groups, where each de-compressed pixel data group is obtained based on a de-compression result of one compressed pixel data group transmitted via one display port. Further details will be described as below.
-
FIG. 1 is a block diagram illustrating a data processing system according to an embodiment of the present invention. Thedata processing system 100 includes a plurality of data processing apparatuses such as one application processor (AP) 102 and a plurality of driver integrated circuits (ICs) 104_1-104_N. The driver ICs 104_1-104_N serve as display drivers of adisplay panel 106, where the number of driver ICs 104_1-104_N depends on the actual driving requirement of thedisplay panel 106. For example, thedisplay panel 106 may be a high-definition (HD) panel (e.g., 1080P panel) or an ultra-high definition (UHD) panel (e.g., 4K2K panel). To alleviate the bandwidth and fan-out requirement between the display driver and the display panel, adisplay screen 107 of thedisplay panel 106 may be divided into a plurality of display regions R1-RN, and each of the display regions R1-RN is driven by one of the driver ICs 104_1-104_N. In other words, each of the driver ICs 104_1-104_N is only responsible of driving a portion of thedisplay screen 107, and therefore does not need to transmit all display data of a complete picture to thedisplay panel 106. - The
application processor 102 and the driver ICs 104_1-104_N may be implemented in different chips, and theapplication processor 102 may communicate with the driver ICs 104_1-104_N via a plurality of display ports P1-PN of adisplay interface 103, respectively. In this embodiment, thedisplay interface 103 may be a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA). Each of the driver ICs 104_1-104_N receives partial compressed display data of one picture IMG from theapplication processor 102, and generates partial de-compressed display data to one display region of thedisplay screen 107. - The
application processor 102 is coupled between an external data source (not shown) and thedisplay interface 103, and supports compressed data transmission. Theapplication processor 102 receives the input display data from the external data source (e.g., a camera sensor, a memory card or a wireless receiver), generates a plurality of partial compressed display data, and transmits the partial compressed display data to the driver ICs 104_1-104_N via display ports P1-PN of thedisplay interface 103, where the input display data may be image data or video data that includes pixel data DI of a plurality of pixels of one picture IMG to be displayed on thedisplay panel 106. - Please refer to
FIG. 2 , which is a diagram of theapplication processor 102 shown inFIG. 1 according to an embodiment of the present invention. Theapplication processor 102 includes adisplay controller 111, anoutput interface 112 and aprocessing circuit 113. Theprocessing circuit 113 includes circuit elements required for processing the pixel data DI of the picture IMG to generate a plurality of compressed pixel data groups D1′-DN′. For example, theprocessing circuit 113 has acompression circuit 114, arate controller 115, andother circuitry 116. Theprocessing circuit 113 includes amapper 114 and a plurality of compressors 118_1-118_N. Theother circuitry 116 may have a display processor, additional image processing element(s), etc. The display processor may perform image processing operations, including scaling, rotating, etc. For example, the input display data provided by an external data source (not shown) may be bypassed or processed by the additional image processing element(s) located before the display processor to generate a source display data, and then the display processor may process the source display data to generate the pixel data DI to themapper 117. In other words, the pixel data DI to be processed by themapper 117 may be directly provided from the data source or indirectly obtained from the input display data provided by the data source. The present invention has no limitation on the source of the pixel data DI. - The
mapper 114 acts as a splitter, and is configured to receive the pixel data DI of one picture IMG and split the pixel data DI of one picture IMG into a plurality of pixel data groups D1-DN according to a pixel data group setting DGSET. Thedisplay controller 111 is configured to control the operation of theprocessing circuit 113. As can be seen fromFIG. 1 , there are N driver ICs 104_1-104_N coupled to thesame application processor 102; and there are N display regions R1-RN driven by the N driver ICs 104_1-104_N, respectively. As shown inFIG. 1 , the width of the picture IMG is W, and the height of the picture IMG is H. Supposing that the display regions R1-RN have the same size, each of the image partitions A1-AN may have a resolution of (W/N)×H. It should be noted that this is for illustrative purposes only. In an alternative design, the display regions R1-RN may have different sizes, and the image partitions A1-AN may have different resolutions. Moreover, the horizontal display region partitioning applied to thedisplay screen 107 and the horizontal image partitioning applied to the picture IMG are not meant to be limitations of the present invention. In an alternative design, the vertical display region partitioning may be applied to thedisplay screen 107, thus resulting in multiple display regions arranged vertically in thedisplay screen 107; and the vertical image partitioning may be applied to the picture IMG, thus resulting in multiple image partitions arranged vertically in the picture IMG. Since the display regions R1-RN will be used to display image contents of a plurality of image partitions in the same picture respectively, the pixel data grouping setting DGSET corresponding to the exemplary arrangement of the image partitions A1-AN shown inFIG. 1 may be decided by thedisplay controller 111. - In an exemplary pixel data grouping design, the pixel data grouping setting DGSET defines selection of non-overlapped pixels for generating each pixel data group. Hence, any pixel included in one pixel group is excluded from other pixel groups. For example, based on the pixel data grouping setting DGSET, the
mapper 117 regards all pixels belonging to one image partition as one pixel group, and only gathers pixel data of the pixel group as one pixel data group. Hence, the pixel data group D1 only includes pixel data of one pixel group including all pixels belonging to the image partition A1, and the pixel data group DN only includes pixel data of another pixel group including all pixels belonging to the image partition AN. - The compressors 118_1-118_N compress the pixel data groups D1-DN to generate compressed pixel data groups D1′-DN′, respectively. The
rate controller 115 is configured to apply bit rate control to each of the compressors 118_1-118_N for controlling a bit budget allocation per compression unit. In this way, each of the compressed pixel data groups D1′-DN′ is generated at a desired bit rate. In this embodiment, compression operations performed by the compressors 118_1-118_N are independent of each other, thus enabling rate control with data parallelism. - The
output interface 112 is configured to refer to the transmission protocol of thedisplay interface 103 to pack/packetize the compressed pixel data groups D1′-DN′ into a plurality of output bitstreams BS1-BSN, respectively; and transmit the output bitstreams BS1-BSN to the driver ICs 104_1-104_N via a plurality of display ports P1-PN of thedisplay interface 103, respectively. - When the
application processor 102 transmits one partial compressed display data (e.g., one of compressed pixel data groups D1′-DN′) to one driver IC, the driver IC receives the partial compressed display data from one display port of thedisplay interface 103, and de-compress the partial compressed display data to generate one partial de-compressed display data (e.g., one of de-compressed pixel data groups D1″-DN″) for driving a portion of thedisplay screen 107. Each of the driver ICs 104_1-104_N communicates with theapplication processor 102 via thedisplay interface 103, and may have the same circuit configuration. For clarity and simplicity, only one of the driver ICs 104_1-104_N is detailed as below. - Please refer to
FIG. 3 , which is a diagram illustrating the driver IC 104_1 shown inFIG. 1 according to an embodiment of the present invention. The driver IC 104_1 is coupled between thedisplay interface 103 and the display port P1 of thedisplay panel 106, and supports compressed data reception. In this embodiment, the driver IC 104_1 includes adriver IC controller 121, aninput interface 122 and aprocessing circuit 123. Theinput interface 122 is configured to receive an input bitstream (i.e., the bitstream BS1 transmitted via display port P1), and un-pack/un-packetize the input bitstream into a compressed pixel data group of one picture (e.g., compressed pixel data group D1′ packed in the bitstream BS1). It should be noted that, if there is no error introduced during the data transmission, the compressed pixel data group un-packed/un-packetized from theinput interface 122 should be identical to the compressed pixel data groups D1′ received by theoutput interface 112. - The
driver IC controller 121 is configured to control the operation of theprocessing circuit 123. Theprocessing circuit 123 may include circuit elements required for driving one display region R1 of thedisplay panel 106. For example, theprocessing circuit 123 has onede-compressor 124 andother circuitry 125. Theother circuitry 125 may have a display buffer, additional image processing element(s), etc. The de-compressor 124 generates a de-compressed pixel data group D1″ based on a de-compression result of the compressed pixel data group un-packed/un-packetized from theinput interface 122, where the partial display data to be displayed on the display region R1 of thedisplay screen 107 is derived from the de-compressed pixel data group D1″. When the pixel data grouping design mentioned above is employed by theapplication processor 102, the de-compressor 124 directly obtains the de-compressed pixel data group D1″ by de-compressing the compressed pixel data group un-packed/un-packetized from theinput interface 122. - The pixel data splitting operation performed by the
mapper 117 shown inFIG. 2 is to generate multiple pixel data groups that will undergo rate-controlled compression independently for compressed data transmission over multiple display ports P1-PN of thedisplay interface 103. However, it is possible that pixel data of adjacent pixel lines (e.g., pixel rows or pixel columns) in the original picture are categorized into different pixel data groups. The rate control generally optimizes the bit rate in terms of pixel context rather than pixel positions. The pixel boundary may introduce artifacts since the rate control is not aware of the boundary position. - Consider a case where the pixel data grouping setting DGSET defines selection of non-overlapped pixels for generating each pixel data group. Thus, the
mapper 117 gathers pixel data of all pixels belonging to one image partition as one pixel data group only. The rate control applied to the pixel data group of the image partition A1 is independent of the rate control applied to the pixel data group of the image partition A2, and the rate control applied to the pixel data group of the image partition AN-1 is independent of the rate control applied to the pixel data group of the image partition AN. Please refer toFIG. 4 , which is a diagram illustrating a rate control mechanism according to an embodiment of the present invention. Based on the pixel data grouping setting DGSET, themapper 117 splits one pixel line (e.g., one pixel row in this example shown inFIG. 4 ) composed of pixels P1-PW into a plurality of pixel sections S1-SN each having multiple pixels. The pixel sections S1-SN correspond to the image partitions A1-AN, respectively. The pixel section S1 is compressed in an order from P1 to PI, where I=W/N; the pixel section S2 is compressed in an order from PI+1 to PJ, where J=2×(W/N); the pixel section SN-1 is compressed in an order from PK+1 to PL, where K=(N−2)×(W/N) and L=(N−1)×(W/N); and the pixel section SN is compressed in an order from PL+1 to PW. Concerning the pixels PI and PI+1 on opposite sides of a pixel boundary between pixel sections S1 and S2, the pixel PI may be part of a compression unit with one bit budget allocation, and the pixel PI+1 may be part of another compression unit with a different bit budget allocation. Similarly, concerning the pixels PL and PL+1 on opposite sides of a pixel boundary between pixel sections SN-1 and SN, the pixel PL may be part of a compression unit with one bit budget allocation, and the pixel PL+1 may be part of another compression unit with a different bit budget allocation. The difference between the bit budget allocations of compression units on opposite of a pixel boundary may be large. As a result, therate controller 115 may allocate bit rates un-evenly on the pixel boundary, thus resulting in degraded image quality on the pixel boundary in a reconstructed picture. To avoid or mitigate the image quality degradation caused by artifacts on the pixel boundary, the present invention therefore proposes a position-aware rate control mechanism which optimizes the bit budget allocation in terms of pixel positions. -
FIG. 5 is a diagram illustrating a position-aware rate control mechanism according to an embodiment of the present invention. As shown inFIG. 5 , there are compression units CU1 and CU2 on one side of a pixel boundary and compression units CU3 and CU4 on the other side of the pixel boundary. The compression units CU1 and CU2 belong to one pixel group PG1, and the compression unit CU1 is nearer to the pixel boundary than the compression unit CU2. The compression units CU3 and CU4 belong to another pixel group PG2, and the compression unit CU3 is nearer to the pixel boundary than the compression unit CU4. For example, the pixel data of pixels in the pixel group PG1 may be compressed into one compressed pixel data group D1′ (or DN-1′), and the pixel data of pixels in the pixel group PG2 may be compressed into another compressed pixel data group D2′ (or DN′). In one exemplary embodiment, each of the compression units CU1-CU4 may include 4×2 pixels, and the compression units CU1-CU4 may be horizontally or vertically adjacent in one picture. When the position-aware rate control mechanism is activated, therate controller 115 may be configured to adjust the bit-rate control (i.e., bit budget allocation) according to a position of each pixel boundary between different pixel groups. For example, therate controller 115 increases an original bit budget BBori_CU1 assigned to the compression unit CU1 by an adjustment value Δ1 (Δ1>0) to thereby determine a final bit budget BBtar_CU1, and decreases an original bit budget BBori_CU2 assigned to the compression unit CU2 by the adjustment value Δ1 to thereby determine a final bit budget BBtar_CU2. In addition, therate controller 115 increases an original bit budget BBori_CU3 assigned to the compression unit CU3 by an adjustment value Δ2 (Δ2>0) to thereby determine a final bit budget BBtar_CU3, and decreases an original bit budget BBori_CU4 assigned to the compression unit CU4 by the adjustment value Δ2 to thereby determine a final bit budget BBtar_CU4. The adjustment value Δ2 may be equal to or different from the adjustment value Δ1, depending upon actual design consideration. Since the proposed position-aware rate control tends to set a larger bit budget near the pixel boundary, the artifacts on the pixel boundary can be reduced. In this way, the image quality around the pixel boundary in a reconstructed picture can be improved. -
FIG. 6 is a flowchart illustrating a control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown inFIG. 6 . The exemplary control and data flow may be briefly summarized by following steps. - Step 602: Split pixel data of a plurality of pixels of one picture into a plurality of pixel data groups.
- Step 604: Apply rate control to each of a plurality of compressors according to pixel boundary positions.
- Step 606: Generate a plurality of compressed pixel data groups by using the compressors to compress the pixel data groups, respectively.
- Step 608: Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 610: Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 612: Receive an input bitstream from the display interface.
- Step 614: Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 616: Generate a de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- It should be noted that steps 602-610 are performed by the application processor (AP) 102, and steps 612-616 are performed by one of the driver ICs 104_1-104_N. As a person skilled in the art can readily understand details of each step shown in
FIG. 6 after reading above paragraphs, further description is omitted here for brevity. - As can be seen from
FIG. 4 , the rate control applied to the pixel section S1 of a pixel line (e.g., pixel row or pixel column) is independent of the rate control applied to the pixel section S2 of the same pixel line. The pixel section S1 is compressed in an order from P1 to PI, and the pixel section S2 is compressed in an order from PI+1 to PJ. The pixel section SN-1 is compressed in an order from PK+1 to PL, and the pixel section SN is compressed in an order from PL+1 to PW. In other words, each pixel section located at the same pixel line is compressed in the same compression order, as shown inFIG. 4 . As a result, the bit budget allocation condition for the pixel PI (which is the last compressed pixel in the pixel section S1) may be different from the bit budget allocation condition for the pixel PI+1 (which is the first compressed pixel in the pixel section S2); and the bit budget allocation condition for the pixel PL (which is the last compressed pixel in the pixel section SN-1) may be different from the bit budget allocation condition for the pixel PL+1 (which is the first compressed pixel in the pixel section SN). To avoid or reduce artifacts on the pixel boundary, the present invention further proposes a modified compression mechanism with compression orders set based on pixel boundary positions. - Please refer to
FIG. 7 , which is a diagram illustrating a modified compression mechanism according to an embodiment of the present invention. As shown inFIG. 7 , there are compression units CU1 and CU2 on one side of a pixel boundary and compression units CU3 and CU4 on the other side of the pixel boundary. The compression units CU1 and CU2 belong to one pixel group PG1, and the compression unit CU1 is nearer to the pixel boundary than the compression unit CU2. The compression units CU3 and CU4 belong to another pixel group PG2, and the compression unit CU3 is nearer to the pixel boundary than the compression unit CU4. For example, the pixel data of pixels in the pixel group PG1 may be compressed into one compressed pixel data group D1′ (or DN-1′), and the pixel data of pixels in the pixel group PG2 may be compressed into another compressed pixel data group D2′ (or DN′). - In one exemplary embodiment, each of the compression units CU1-CU4 may include 4×2 pixels, and the compression units CU1-CU4 may be horizontally or vertically adjacent in a picture. When the modified compression mechanism is activated, each of the compressors 115_1 and 115_2 may be configured to set a compression order according to a position of each pixel boundary between different pixel groups. For example, the compressor 118_1 compresses the compression unit CU1 prior to compressing the compression unit CU2, and the compressor 118_2 compresses the compression unit CU3 prior to compressing the compression unit CU4. In other words, two adjacent pixel sections located at the same pixel line are compressed in opposite compression orders. Since the modified compression scheme starts the compression from compression units near the pixel boundary between adjacent pixel groups, the bit budget allocation conditions near the pixel boundary may be more similar. In this way, the image quality around the pixel boundary in a reconstructed picture can be improved.
-
FIG. 8 is a flowchart illustrating another control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown inFIG. 8 . The exemplary control and data flow may be briefly summarized by following steps. - Step 802: Split pixel data of a plurality of pixels of one picture into a plurality of pixel data groups.
- Step 804: Apply rate control to each of a plurality of compressors.
- Step 806: Generate a plurality of compressed pixel data groups by using the compressors to compress the pixel data groups according to compression orders set based on pixel boundary positions.
- Step 808: Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 810: Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 812: Receive an input bitstream from the display interface.
- Step 814: Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 816: Generate a de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- It should be noted that steps 802-810 are performed by the application processor (AP) 102, and steps 812-816 are performed by one of the driver ICs 104_1-104_N. As a person skilled in the art can readily understand details of each step shown in
FIG. 8 after reading above paragraphs, further description is omitted here for brevity. - In above embodiments, the pixel data grouping setting DGSET defines selection of non-overlapped pixels for generating each pixel data group. In another pixel data grouping design, the pixel data grouping setting DGSET may define selection of overlapped pixels for generating each pixel data group. Hence, some pixels included in one pixel group are also included in another pixel group. Please refer to
FIG. 9 , which is a diagram illustrating a pixel data splitting operation performed by a mapper based on another pixel data grouping design. In this embodiment, based on the pixel data grouping setting DGSET that supports selection of overlapped pixels, themapper 117 gathers pixel data of a pixel group as one pixel data group, where the pixel group includes all pixels belonging to one image partition and some pixels belonging to adjacent image partition(s). Hence, as shown inFIG. 9 , the pixel data group D1 is composed of pixel data of a pixel group PG1 including all pixels belonging to the image partition A1 and pixel data of some pixels belonging to one adjacent image partition A2; the pixel data group D2 is composed of pixel data of a pixel group PG2 including all pixels belonging to the image partition A2 and pixel data of some pixels belonging to two adjacent image partitions A1 and A3; the pixel data group DN-1 is composed of pixel data of a pixel group PGN-1 including all pixels belonging to the image partition AN-1 and pixel data of some pixels belonging to two adjacent image partitions AN-1 and AN; and the pixel data group DN is composed of pixel data of a pixel group PGN including all pixels belonging to the image partition AN and pixel data of some pixels belonging to one adjacent image partition AN-1. - As can be seen in
FIG. 9 , two adjacent pixel groups have overlapped pixels, where the number of overlapped pixels may be programmable. In addition, concerning each of the pixel groups, the pixel group includes pixels inside an image partition to be displayed on a designated display region, and further includes pixels outside the image partition to be displayed on the designated display region. For example, the pixel group PG1 includes pixels of a portion of the image partition A2 that will not be displayed on the display region R1, the pixel group PG2 includes pixels of a portion of the image partition A1 and pixels of a portion of the image partition A3 that will not be displayed on the display region R2, the pixel group PGN-1 includes pixels of a portion of the image partition AN-2 and pixels of a portion of the image partition AN that will not be displayed on the display region RN-1, and the pixel group PGN includes pixels of a portion of the image partition AN-1 that will not be displayed on the display region RN. - The compressors 118_1-118_N compress the pixel data groups D1-DN corresponding to the pixel groups PG1-PGN having overlapped pixels, and accordingly generate the compressed pixel data groups D1′-DN′. In this embodiment, each of the pixel data groups D1-DN is compressed in the same compression order (e.g., an order from a left-most pixel in a pixel section of a pixel line to a right-most pixel in the same pixel section). The desired pixels (i.e., pixels needed to be displayed) in the pixel group are on one side of a pixel boundary, and additional pixels (i.e., overlapped pixels) in the pixel group are on the other side of the pixel boundary. Hence, the bit rate control applied to compression of the pixel group may lend the bit budget from the overlapped pixels to assign a larger bit budget to desired pixels near the pixel boundary. In this way, when reconstructed image partitions are displayed on the display regions R1-RN, the artifacts on the pixel boundaries can be reduced.
- When the aforementioned pixel data grouping design that supports selection of overlapped pixels is employed by the
application processor 102, the de-compressor 124 shown inFIG. 3 is configured to obtain a preliminary de-compressed pixel data group by de-compressing the compressed pixel data group un-packed from theinput interface 122, and discards a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region (e.g., R1) to be driven by the driver IC (e.g., 104_1) to generate the de-compressed pixel data group (e.g., D1″). -
FIG. 10 is a flowchart illustrating yet another control and data flow of the data processing system shown inFIG. 1 according to an embodiment of the present invention. Provided that the result is substantially the same, the steps are not required to be executed in the exact order shown inFIG. 10 . The exemplary control and data flow may be briefly summarized by following steps. - Step 1002: Split a plurality of pixels of one picture into a plurality of pixel groups with overlapped pixels.
- Step 1004: Apply rate control to each of a plurality of compressors.
- Step 1006: Generate a plurality of compressed pixel data groups by using the compressors to compress a plurality of pixel data groups corresponding to the pixel groups.
- Step 1008: Pack/packetize the compressed pixel data groups into a plurality of output bitstreams, respectively.
- Step 1010: Transmit the output bitstreams via a plurality of display ports of a display interface, respectively.
- Step 1012: Receive an input bitstream from the display interface.
- Step 1014: Un-pack/un-packetize the input bitstream into a compressed data group.
- Step 1016: Generate a preliminary de-compressed pixel data group by using a de-compressor to de-compress the compressed pixel data group.
- Step 1018: Discard a portion of the preliminary de-compressed pixel data that corresponds to pixels beyond a target display region to be driven by the driver IC.
- It should be noted that steps 1002-1010 are performed by the application processor (AP) 102, and steps 1012-1018 are performed by one of the driver ICs 104_1-104_N. As a person skilled in the art can readily understand details of each step shown in
FIG. 10 after reading above paragraphs, further description is omitted here for brevity. - Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
Claims (20)
1. A data processing apparatus, comprising:
a compression circuit, configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture;
a rate controller, configured to apply bit-rate control to each compression operation, wherein the rate controller adjusts the bit-rate control according to a position of each pixel boundary between different pixel groups; and
an output interface, configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
2. The data processing apparatus of claim 1 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
3. The data processing apparatus of claim 1 , wherein concerning a specific pixel boundary between a first pixel group and a second pixel group, the rate controller is configured to increase an original bit budget assigned to a first compression unit by an adjustment value and decrease an original bit budget assigned to a second compression unit by the adjustment value; the first compression unit and the second compression unit are adjacent compression units in any of the first pixel group and the second pixel group; and the first compression unit is nearer to the specific pixel boundary than the second compression unit.
4. A data processing apparatus, comprising:
a compression circuit, configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group; and
an output interface, configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
5. The data processing apparatus of claim 4 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
6. The data processing apparatus of claim 4 , wherein the compression circuit is configured to compress a first compression unit prior to compressing a second compression unit, and compress a third compression unit prior to compressing a fourth compression unit; the first compression unit and the second compression unit are adjacent compression units in the pixel group, and the first compression unit is nearer to the pixel boundary than the second compression unit; and the third compression unit and the fourth second compression unit are adjacent compression units in the adjacent pixel group, and the third compression unit is nearer to the pixel boundary than the fourth compression unit.
7. A data processing apparatus, comprising:
a compression circuit, configured to generate a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels; and
an output interface, configured to output the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
8. The data processing apparatus of claim 7 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
9. A data processing apparatus, comprising:
an input interface, configured to receive an input bitstream from a display port of a display interface, and un-pack the input bitstream into a compressed pixel data group of a picture; and
a de-compressor, configured to de-compress the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region driven by the data processing apparatus, wherein the target display region corresponds to a portion of the picture.
10. The data processing apparatus of claim 9 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
11. A data processing method, comprising:
generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture;
performing bit-rate control which is adjusted according to a position of each pixel boundary between different pixel groups; and
outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
12. The data processing method of claim 11 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
13. The data processing method of claim 11 , wherein concerning a specific pixel boundary between a first pixel group and a second pixel group, the bit-rate control increases an original bit budget assigned to a first compression unit by an adjustment value and decreases an original bit budget assigned to a second compression unit by the adjustment value; the first compression unit and the second compression unit are adjacent compression units in any of the first pixel group and the second pixel group; and the first compression unit is nearer to the specific pixel boundary than the second compression unit.
14. A data processing method, comprising:
generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group according to a compression order, wherein the pixel group includes a portion of a plurality of pixels in a picture, and the compression order is set according to a position of a pixel boundary between the pixel group and an adjacent pixel group; and
outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
15. The data processing method of claim 14 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
16. The data processing method of claim 14 , wherein the step of generating the compressed pixel data groups comprises:
compressing a first compression unit prior to compressing a second compression unit; and
compressing a third compression unit prior to compressing a fourth compression unit;
wherein the first compression unit and the second compression unit are adjacent compression units in the pixel group, and the first compression unit is nearer to the pixel boundary than the second compression unit; and the third compression unit and the fourth second compression unit are adjacent compression units in the adjacent pixel group, and the third compression unit is nearer to the pixel boundary than the fourth compression unit.
17. A data processing method, comprising:
generating a plurality of compressed pixel data groups, each derived from applying a compression operation to pixel data of a pixel group, wherein the pixel group includes a portion of a plurality of pixels in a picture, and at least two pixel groups have overlapped pixels; and
outputting the compressed pixel data groups via a plurality of display ports of a display interface, respectively.
18. The data processing method of claim 17 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
19. A data processing method, comprising:
receiving an input bitstream from a display port of a display interface, and un-packing the input bitstream into a compressed pixel data group of a picture; and
de-compressing the compressed pixel data group to generate a preliminary de-compressed pixel data group, and discard a portion of the preliminary de-compressed pixel data group that corresponds to pixels beyond a target display region to be driven, wherein the target display region corresponds to a portion of the picture.
20. The data processing method of claim 19 , wherein the display interface is a display serial interface (DSI) standardized by a Mobile Industry Processor Interface (MIPI) or an embedded display port (eDP) standardized by a Video Electronics Standards Association (VESA).
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/335,956 US20150049098A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method |
CN201410369089.9A CN104378615A (en) | 2013-08-13 | 2014-07-30 | Data processing device and related data processing method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361865345P | 2013-08-13 | 2013-08-13 | |
US14/335,956 US20150049098A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150049098A1 true US20150049098A1 (en) | 2015-02-19 |
Family
ID=52466526
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/335,956 Abandoned US20150049098A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method |
US14/337,198 Abandoned US20150049099A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving compressed pixel data groups of picture over display interface and related data processing method |
US14/335,955 Abandoned US20150049105A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving indication information of pixel data grouping setting via display interface and related data processing method |
US14/335,950 Active 2035-01-02 US9875723B2 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving randomly accessible compressed pixel data groups over display interface and related data processing method |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/337,198 Abandoned US20150049099A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving compressed pixel data groups of picture over display interface and related data processing method |
US14/335,955 Abandoned US20150049105A1 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving indication information of pixel data grouping setting via display interface and related data processing method |
US14/335,950 Active 2035-01-02 US9875723B2 (en) | 2013-08-13 | 2014-07-21 | Data processing apparatus for transmitting/receiving randomly accessible compressed pixel data groups over display interface and related data processing method |
Country Status (2)
Country | Link |
---|---|
US (4) | US20150049098A1 (en) |
CN (4) | CN104376830B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111295887A (en) * | 2017-11-10 | 2020-06-16 | 索尼半导体解决方案公司 | Transmitting apparatus and method with region-of-interest mode selection |
CN117008863A (en) * | 2023-09-28 | 2023-11-07 | 之江实验室 | LOFAR long data processing and displaying method and device |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9787995B2 (en) * | 2014-05-06 | 2017-10-10 | Novatek Microelectronics Corp. | Source driver, driving circuit and display apparatus |
US10262624B2 (en) * | 2014-12-29 | 2019-04-16 | Synaptics Incorporated | Separating a compressed stream into multiple streams |
US10417771B2 (en) * | 2015-05-14 | 2019-09-17 | Intel Corporation | Fast MRF energy optimization for solving scene labeling problems |
KR102261962B1 (en) * | 2015-07-21 | 2021-06-07 | 삼성전자주식회사 | Display Driver, Display Device and System including The Same |
KR102294669B1 (en) * | 2015-08-12 | 2021-08-27 | 삼성전자 주식회사 | Electronic device for compressing data and method thereof |
CN105208312A (en) * | 2015-09-17 | 2015-12-30 | 武汉精测电子技术股份有限公司 | MIPI signal generation method and device supporting compression mode |
EP3403256A4 (en) * | 2016-01-13 | 2019-05-22 | Shenzhen Yunyinggu Technology Co., Ltd. | Display device and pixel circuit thereof |
WO2017154563A1 (en) * | 2016-03-07 | 2017-09-14 | ソニー株式会社 | Encoding device and encoding method |
US10062143B2 (en) * | 2016-09-12 | 2018-08-28 | Advanced Micro Devices, Inc. | Method and apparatus for compressing randomly accessed data |
US20180300840A1 (en) * | 2017-04-17 | 2018-10-18 | Joydeep Ray | Display link compression by render engine |
CN111553473B (en) * | 2017-07-05 | 2023-10-13 | 上海寒武纪信息科技有限公司 | Data redundancy method and neural network processor for executing the same |
KR102641559B1 (en) * | 2017-11-10 | 2024-02-28 | 소니 세미컨덕터 솔루션즈 가부시키가이샤 | transmitting device |
CN108519807A (en) * | 2018-03-23 | 2018-09-11 | 维沃移动通信有限公司 | A kind of application processor and mobile terminal |
US11513732B2 (en) | 2020-08-13 | 2022-11-29 | Raytheon Company | Fast data compression for systems with large dynamic ranges or other systems |
CN112988673B (en) * | 2021-02-22 | 2023-02-28 | 山东英信计算机技术有限公司 | Method and equipment for processing data overflow in decompression process |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040228534A1 (en) * | 2003-03-31 | 2004-11-18 | Hiroyuki Sakuyama | Image compression method capable of reducing tile boundary distortion |
US20080199091A1 (en) * | 2007-02-21 | 2008-08-21 | Microsoft Corporation | Signaling and uses of windowing information for images |
US20080284621A1 (en) * | 2007-05-14 | 2008-11-20 | Wael William Diab | Method and system for keyboard, sound and mouse (ksm) over lan a/v bridging and a/v bridging extensions for graphics thin client applications |
US20090002507A1 (en) * | 2004-07-13 | 2009-01-01 | Takahiro Fukuhara | Image Pickup Device, Integrated Circuit if Image Pickup Element, and Image Pickup Result Processing Method |
US20130010864A1 (en) * | 2011-07-05 | 2013-01-10 | Qualcomm Incorporated | Image data compression |
US20140362098A1 (en) * | 2013-06-10 | 2014-12-11 | Sharp Laboratories Of America, Inc. | Display stream compression |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2288520B (en) | 1994-03-24 | 1998-10-14 | Discovision Ass | Pipeline |
US5668948A (en) | 1994-09-08 | 1997-09-16 | International Business Machines Corporation | Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports |
JPH08116534A (en) | 1994-10-18 | 1996-05-07 | Seiko Epson Corp | Image data coder, its method, image data encoder and its method |
JPH10304356A (en) | 1997-04-23 | 1998-11-13 | Nikon Corp | Parallel picture compression processor |
US6259733B1 (en) | 1998-06-16 | 2001-07-10 | General Instrument Corporation | Pre-processing of bit rate allocation in a multi-channel video encoder |
GB0125173D0 (en) | 2001-10-19 | 2001-12-12 | Koninkl Philips Electronics Nv | Display driver and driving method |
US8893207B2 (en) | 2002-12-10 | 2014-11-18 | Ol2, Inc. | System and method for compressing streaming interactive video |
KR100578913B1 (en) | 2003-11-27 | 2006-05-11 | 삼성에스디아이 주식회사 | Display device using demultiplexer and driving method thereof |
CN101820537B (en) | 2004-04-23 | 2013-04-03 | 住友电气工业株式会社 | Moving picture data encoding method, terminal device, and bi-directional interactive system |
KR20060007765A (en) | 2004-07-21 | 2006-01-26 | 삼성전자주식회사 | Method and apparatus for compressing/decompressing image |
WO2006066062A2 (en) | 2004-12-16 | 2006-06-22 | Slattery, James, M. | Display and weighted dot rendering method |
JP2007013534A (en) | 2005-06-30 | 2007-01-18 | Fujitsu Ten Ltd | Video signal processing method and multiview display |
CN101411199A (en) | 2006-03-28 | 2009-04-15 | 三星电子株式会社 | Method, medium, and system encoding and/or decoding an image |
US8724698B2 (en) * | 2007-04-13 | 2014-05-13 | Apple Inc. | Method and system for video rate control |
KR101375662B1 (en) * | 2007-08-06 | 2014-03-18 | 삼성전자주식회사 | Method and apparatus for image data compression |
JPWO2009063554A1 (en) * | 2007-11-13 | 2011-03-31 | 富士通株式会社 | Encoding device and decoding device |
JP5035910B2 (en) | 2008-06-27 | 2012-09-26 | ソニー株式会社 | Image processing apparatus, image processing method, and program |
US8705879B2 (en) * | 2009-04-01 | 2014-04-22 | Microsoft Corporation | Image compression acceleration using multiple processors |
EP2420068A4 (en) | 2009-04-13 | 2012-08-08 | Reald Inc | Encoding, decoding, and distributing enhanced resolution stereoscopic video |
JP5375372B2 (en) | 2009-07-01 | 2013-12-25 | ヤマハ株式会社 | Compression encoding apparatus and decoding apparatus |
WO2011013192A1 (en) * | 2009-07-27 | 2011-02-03 | 株式会社東芝 | Image encoding method and image decoding method |
US8768140B2 (en) | 2010-02-15 | 2014-07-01 | Panasonic Corporation | Data processing unit and data encoding device |
US20110310955A1 (en) * | 2010-06-22 | 2011-12-22 | Lei Zhang | Method and system for repetition based adaptive video compression |
US20120106650A1 (en) * | 2010-08-24 | 2012-05-03 | Siegman Craig S | Method and System for Block and DVC Compression |
KR20120052739A (en) | 2010-11-16 | 2012-05-24 | 삼성전자주식회사 | Display driving device and method for compressing and decompressing image data in the same |
US10244239B2 (en) * | 2010-12-28 | 2019-03-26 | Dolby Laboratories Licensing Corporation | Parameter set for picture segmentation |
JP2012160985A (en) * | 2011-02-02 | 2012-08-23 | Fuji Xerox Co Ltd | Information processor and information processing program |
CN102196268B (en) | 2011-05-06 | 2013-03-20 | 华为数字技术(成都)有限公司 | Method, device and system for processing multimedia data |
US20140086309A1 (en) | 2011-06-16 | 2014-03-27 | Freescale Semiconductor, Inc. | Method and device for encoding and decoding an image |
KR101885341B1 (en) * | 2011-10-20 | 2018-08-07 | 삼성전자 주식회사 | Display driver and method of operating image data processing device |
US9124895B2 (en) * | 2011-11-04 | 2015-09-01 | Qualcomm Incorporated | Video coding with network abstraction layer units that include multiple encoded picture partitions |
CN102801981B (en) | 2012-08-30 | 2015-04-22 | 西安空间无线电技术研究所 | Multipath compressed kernel parallel encoding control method on basis of JPEG-LS (Joint Pho-tographic Experts Group-Lossless Standard) algorithm |
US9161039B2 (en) * | 2012-09-24 | 2015-10-13 | Qualcomm Incorporated | Bitstream properties in video coding |
MX341067B (en) * | 2012-09-26 | 2016-08-05 | Panasonic Ip Corp America | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device. |
US9286022B2 (en) * | 2013-03-12 | 2016-03-15 | Displaylink (Uk) Limited | Processing of display data in a display system |
US9460525B2 (en) * | 2013-04-03 | 2016-10-04 | Vivante Corporation | Tile-based compression and decompression for graphic applications |
-
2014
- 2014-07-21 US US14/335,956 patent/US20150049098A1/en not_active Abandoned
- 2014-07-21 US US14/337,198 patent/US20150049099A1/en not_active Abandoned
- 2014-07-21 US US14/335,955 patent/US20150049105A1/en not_active Abandoned
- 2014-07-21 US US14/335,950 patent/US9875723B2/en active Active
- 2014-07-25 CN CN201410357200.2A patent/CN104376830B/en active Active
- 2014-07-29 CN CN201410366268.7A patent/CN104376831B/en active Active
- 2014-07-29 CN CN201410365752.8A patent/CN104378614B/en active Active
- 2014-07-30 CN CN201410369089.9A patent/CN104378615A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040228534A1 (en) * | 2003-03-31 | 2004-11-18 | Hiroyuki Sakuyama | Image compression method capable of reducing tile boundary distortion |
US20090002507A1 (en) * | 2004-07-13 | 2009-01-01 | Takahiro Fukuhara | Image Pickup Device, Integrated Circuit if Image Pickup Element, and Image Pickup Result Processing Method |
US20080199091A1 (en) * | 2007-02-21 | 2008-08-21 | Microsoft Corporation | Signaling and uses of windowing information for images |
US20080284621A1 (en) * | 2007-05-14 | 2008-11-20 | Wael William Diab | Method and system for keyboard, sound and mouse (ksm) over lan a/v bridging and a/v bridging extensions for graphics thin client applications |
US20130010864A1 (en) * | 2011-07-05 | 2013-01-10 | Qualcomm Incorporated | Image data compression |
US20140362098A1 (en) * | 2013-06-10 | 2014-12-11 | Sharp Laboratories Of America, Inc. | Display stream compression |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111295887A (en) * | 2017-11-10 | 2020-06-16 | 索尼半导体解决方案公司 | Transmitting apparatus and method with region-of-interest mode selection |
CN117008863A (en) * | 2023-09-28 | 2023-11-07 | 之江实验室 | LOFAR long data processing and displaying method and device |
Also Published As
Publication number | Publication date |
---|---|
CN104378614A (en) | 2015-02-25 |
CN104378615A (en) | 2015-02-25 |
CN104376830B (en) | 2017-06-09 |
CN104376830A (en) | 2015-02-25 |
US20150049099A1 (en) | 2015-02-19 |
CN104376831B (en) | 2017-07-21 |
US9875723B2 (en) | 2018-01-23 |
CN104378614B (en) | 2017-08-01 |
CN104376831A (en) | 2015-02-25 |
US20150049105A1 (en) | 2015-02-19 |
US20150049097A1 (en) | 2015-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150049098A1 (en) | Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple display ports of display interface and related data processing method | |
US20160234456A1 (en) | Data processing apparatus for transmitting/receiving compressed pixel data groups via multiple camera ports of camera interface and related data processing method | |
US10242641B2 (en) | Data processing apparatus capable of performing optimized compression for compressed data transmission over multiple display ports of display interface and related data processing method | |
US10200603B2 (en) | Data processing system for transmitting compressed multimedia data over camera interface | |
US10038904B2 (en) | Method and apparatus for controlling transmission of compressed picture according to transmission synchronization events | |
KR102294830B1 (en) | Display drive device and method of operating image data processing device | |
US20140098893A1 (en) | Data processing apparatus for configuring display interface based on compression characteristic of compressed display data and related data processing method | |
AU2014339383A1 (en) | Method and apparatus for controlling transmission of compressed picture according to transmission synchronization events | |
US10089947B2 (en) | Source driver, driving circuit and display apparatus | |
WO2014056391A1 (en) | Data processing apparatus for configuring display interface based on compression characteristic of compressed display data and related data processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MEDIATEK INC., TAIWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JU, CHI-CHENG;LIU, TSU-MING;REEL/FRAME:033348/0133 Effective date: 20140711 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |