KR20170113011A - Apparatus and method of using a slice update map - Google Patents
Apparatus and method of using a slice update map Download PDFInfo
- Publication number
- KR20170113011A KR20170113011A KR1020170003051A KR20170003051A KR20170113011A KR 20170113011 A KR20170113011 A KR 20170113011A KR 1020170003051 A KR1020170003051 A KR 1020170003051A KR 20170003051 A KR20170003051 A KR 20170003051A KR 20170113011 A KR20170113011 A KR 20170113011A
- Authority
- KR
- South Korea
- Prior art keywords
- display
- slice
- data
- update
- sub
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 54
- 230000008859 change Effects 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 claims description 16
- 230000006872 improvement Effects 0.000 claims description 8
- 238000002156 mixing Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 238000005192 partition Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- WVMLRRRARMANTD-FHLIZLRMSA-N ram-316 Chemical compound C1=CCC[C@@]2(O)[C@H]3CC4=CC=C(OC)C(O)=C4[C@]21CCN3C WVMLRRRARMANTD-FHLIZLRMSA-N 0.000 description 1
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
- 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
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
-
- 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
- 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/028—Generation of voltages supplied to electrode drivers in a matrix display other than LCD
-
- 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/16—Use of wireless transmission of display information
Abstract
본 개시의 기술적 사상에 따른 전자 장치는, 복수의 슬라이스를 포함하는 프레임 데이터에서 데이터 변화가 있는 적어도 하나의 업데이트 슬라이스의 위치를 나타내는 슬라이스 업데이트 맵을 생성하는 프로세서; 및 상기 슬라이스 업데이트 맵에 기초하여, 상기 프레임 데이터가 저장된 메모리로부터 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출하여 디스플레이 구동부로 전송하는 디스플레이 컨트롤러를 포함한다.An electronic device according to the technical idea of the present disclosure includes a processor for generating a slice update map indicating the location of at least one update slice with a data change in frame data comprising a plurality of slices; And a display controller for extracting frame data of the at least one update slice from the memory in which the frame data is stored based on the slice update map and transmitting the frame data to the display driver.
Description
본 개시의 기술적 사상은 전자 장치, 전자 장치 제어 방법, 디스플레이 구동 장치, 및 디스플레이 구동 방법에 관한 것이다.Technical aspects of the present disclosure relate to an electronic device, an electronic device control method, a display driving device, and a display driving method.
디스플레이 패널을 구동하는 디스플레이 구동부는, 외부 장치 또는 다른 프로세서로부터 디스플레이 데이터를 수신하여, 디스플레이 패널에 디스플레이 데이터를 표시한다. 디스플레이 구동부는, 디스플레이 패널에 표시되는 영상이 변경될 때마다 업데이트된 디스플레이 데이터를 수신하여 디스플레이 패널의 표시 영상을 업데이트한다. 예를 들면, 디스플레이 구동부는 소정의 프레임 레이트로 디스플레이 패널의 영상을 업데이트할 수 있다. 그런데 디스플레이 데이터를 업데이트를 위해 디스플레이 구동부로 디스플레이 데이터를 전달할 때, 전력 소모가 발생하여, 전자 장치의 전력 소모를 증가시키는 문제가 있다. 더욱이 최근 UHD(ultra high definition) 등 고해상도를 지원하는 전자 장치 및 디스플레이 패널이 널리 보급됨에 따라, 디스플레이 데이터의 업데이트로 인한 전력 소모가 점차 증가하는 문제가 있다.The display driver for driving the display panel receives the display data from the external device or another processor, and displays the display data on the display panel. The display driver updates the display image of the display panel by receiving the updated display data whenever the image displayed on the display panel is changed. For example, the display driver may update the image of the display panel at a predetermined frame rate. However, when the display data is transferred to the display driver for updating the display data, there is a problem of power consumption, which increases power consumption of the electronic device. Furthermore, recently, electronic devices and display panels supporting high resolution such as ultra high definition (UHD) have become widespread, and power consumption due to updating of display data gradually increases.
개시된 실시 예들은, 디스플레이 데이터의 업데이트를 위한 데이터 스트림의 용량을 감소시켜, 전력 소비를 감소시키기 위한 것이다.The disclosed embodiments are intended to reduce the capacity of the data stream for updating the display data, thereby reducing power consumption.
본 개시의 기술적 사상에 따른 전자 장치는, 복수의 슬라이스를 포함하는 프레임 데이터에서 데이터 변화가 있는 적어도 하나의 업데이트 슬라이스의 위치를 나타내는 슬라이스 업데이트 맵을 생성하는 프로세서; 및 상기 슬라이스 업데이트 맵에 기초하여, 상기 프레임 데이터가 저장된 메모리로부터 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출하여 디스플레이 구동부로 전송하는 디스플레이 컨트롤러를 포함한다.An electronic device according to the technical idea of the present disclosure includes a processor for generating a slice update map indicating the location of at least one update slice with a data change in frame data comprising a plurality of slices; And a display controller for extracting frame data of the at least one update slice from the memory in which the frame data is stored based on the slice update map and transmitting the frame data to the display driver.
본 개시의 기술적 사상에 따른 전자 장치 제어 방법은, 복수의 슬라이스를 포함하는 프레임 데이터에서 데이터 변화가 있는 적어도 하나의 업데이트 슬라이스의 위치를 나타내는 슬라이스 업데이트 맵을 생성하는 단계; 및 상기 슬라이스 업데이트 맵에 기초하여, 상기 프레임 데이터가 저장된 메모리로부터 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출하여 디스플레이 구동부로 전송하는 단계를 포함한다.According to a technical idea of the present disclosure, an electronic device control method includes: generating a slice update map indicating a position of at least one update slice with a data change in frame data including a plurality of slices; And extracting frame data of the at least one update slice from a memory in which the frame data is stored, based on the slice update map, and transmitting the frame data to the display driver.
본 개시의 기술적 사상에 따른 디스플레이 구동 장치는, 데이터 변화가 있는 적어도 하나의 서브 블록에 대해, 서브 블록 단위로, 업데이트 서브 블록의 시작 점의 위치, 업데이트 서브 블록의 끝 점의 위치, 및 디스플레이 데이터를 포함하는 직렬 전송 신호를 수신하는 수신부; 디스플레이 데이터를 저장하고, 상기 수신된 적어도 하나의 서브 블록에 대한 디스플레이 데이터를 이용하여, 상기 저장된 디스플레이 데이터를 업데이트하는 프레임 메모리; 및 상기 디스플레이 데이터를 디스플레이 패널로 출력하는 처리부를 포함한다.The display driving apparatus according to the technical idea of the present disclosure is characterized in that, for at least one sub-block with a data change, the position of the start point of the updated sub-block, the position of the end point of the updated sub- A receiving unit receiving the serial transmission signal including the serial transmission signal; A frame memory for storing display data and updating the stored display data using display data for the received at least one sub-block; And a processor for outputting the display data to a display panel.
본 개시의 기술적 사상에 따른 디스플레이 구동 방법은, 데이터 변화가 있는 적어도 하나의 서브 블록에 대해, 서브 블록 단위로, 업데이트 서브 블록의 시작 점의 위치, 업데이트 서브 블록의 끝 점의 위치, 및 디스플레이 데이터를 포함하는 직렬 전송 신호를 수신하는 단계; 상기 수신된 적어도 하나의 서브 블록에 대한 디스플레이 데이터를 이용하여 프레임 메모리에 저장된 상기 디스플레이 데이터를 업데이트하는 단계; 및 상기 디스플레이 데이터를 디스플레이 패널로 출력하는 단계를 포함한다.The display driving method according to the technical idea of the present disclosure is characterized in that, for at least one sub-block with a data change, the position of the start point of the updated sub-block, the position of the end point of the updated sub- The method comprising: receiving a serial transmission signal; Updating the display data stored in the frame memory using display data for the received at least one sub-block; And outputting the display data to a display panel.
개시된 실시 예들에 따르면, 디스플레이 데이터의 업데이트를 위한 데이터 스트림의 용량을 감소시켜, 전력 소비를 감소시킬 수 있는 효과가 있다.According to the disclosed embodiments, it is possible to reduce the capacity of the data stream for updating the display data, thereby reducing power consumption.
도 1은 일 실시 예에 따른 전자 장치(100a)의 구조를 나타낸 블록도이다.
도 2는 일 실시 예에 따른 프레임 데이터를 나타낸 도면이다.
도 3은 일 실시 예에 따른 전자 장치(100b), 디스플레이 구동부(310a), 및 디스플레이 패널(320)을 나타낸 도면이다.
도 4는 일 실시 예에 따른 디스플레이 컨트롤러(120a) 및 DRAM(338)을 나타낸 도면이다.
도 5는 일 실시 예에 따라, DMA(402)가 DRAM(338)으로부터 프레임 데이터를 읽어오는 순서를 나타낸 도면이다.
도 6은 일 실시 예에 따라 전자 장치(100b)로부터 디스플레이 컨트롤러(310a)로 전달되는 데이터 스트림을 나타낸 도면이다.
도 7은 일 실시 예에 따라 디스플레이 컨트롤러(120)에서 업데이트 슬라이스를 가져오는 동작을 설명하기 위한 도면이다.
도 8a 및 도 8b는 서브 블록에 대한 정보를 나타내는 도면이다.
도 9는 일 실시 예에 따라 디스플레이 컨트롤러(120)로부터 디스플레이 구동부로 전달되는 데이터 스트림의 구조를 나타낸 도면이다.
도 10a 및 도 10b는 일 실시 예에 따라 테어링 현상을 방지하는 방법을 설명하기 위한 도면이다.
도 11a 및 도 11b는 일 실시 예에 따라 테어링 현상을 방지하는 방법을 설명하기 위한 도면이다.
도 12a 및 도 12b는 일 실시 예에 따라 서브 블록을 정의하는 방식을 설명하는 도면이다.
도 13a 및 도 13b는 일 실시 예에 따라 슬라이스를 설정하는 방식을 설명하기 위한 도면이다.
도 14는 일 실시 예에 따른 GUI 화면을 나타낸 도면이다.
도 15는 일 실시 예에 따른 전자 장치 제어 방법을 나타낸 흐름도이다.
도 16은 일 실시 예에 따른 디스플레이 구동 장치(310b)의 구조를 나타낸 블록도이다.
도 17은 일 실시 예에 따른 디스플레이 구동 방법을 설명한 흐름도이다.1 is a block diagram showing the structure of an
2 is a diagram illustrating frame data according to an embodiment.
3 is a diagram illustrating an
4 is a diagram illustrating a
5 is a diagram showing a sequence in which the
FIG. 6 is a diagram illustrating a data stream transferred from the
7 is a diagram for explaining an operation of fetching an update slice in the
8A and 8B are views showing information on sub-blocks.
9 is a diagram illustrating a structure of a data stream transmitted from a
10A and 10B are views for explaining a method for preventing a tearing phenomenon according to an embodiment.
11A and 11B are views for explaining a method of preventing a tearing phenomenon according to an embodiment.
12A and 12B are diagrams illustrating a method of defining sub-blocks according to an embodiment.
13A and 13B are views for explaining a method of setting a slice according to an embodiment.
FIG. 14 is a diagram illustrating a GUI screen according to an embodiment.
15 is a flowchart illustrating an electronic device control method according to an embodiment.
16 is a block diagram showing a structure of a
17 is a flowchart illustrating a display driving method according to an embodiment.
이하, 첨부한 도면을 참조하여 본 개시의 실시 예에 대해 상세히 설명한다. Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
도 1은 일 실시 예에 따른 전자 장치(100a)의 구조를 나타낸 블록도이다.1 is a block diagram showing the structure of an
일 실시 예에 따른 전자 장치(100a)는 프로세서(110) 및 디스플레이 컨트롤러(120)를 포함한다.The
전자 장치(100a)는 적어도 하나의 프로세서를 구비한 장치로서, 디스플레이 패널을 구비한 장치이거나, 디스플레이 장치와 연결된 장치일 수 있다. 전자 장치(100a)는 예를 들면, 랩탑 컴퓨터, 스마트폰, 웨어러블 장치, 태블릿 컴퓨터, 휴대용 단말, 데스크톱 등 다양한 형태로 구현될 수 있다.The
프로세서(110)는 전자 장치(100a)의 전반적인 동작을 제어한다. 프로세서(110)는 전자 장치(100a)의 각 구성요소들에 제어 신호를 전송하여 전자 장치(100a)의 각 구성요소들을 제어한다. 또한, 프로세서(110)는 운영 체제(OS, operating system), 애플리케이션 등을 실행하여 전자 장치(100a)의 다양한 기능들을 수행하고 제어할 수 있다. The
프로세서(110)는 CPU(central processing unit), Host CPU, 마이크로프로세서(microprocessor), AP(application processor) 등 다양한 형태 또는 명칭의 프로세서 또는 이들의 조합으로 구현될 수 있다. 또한 프로세서(110)는 하나 또는 그 이상의 프로세서의 조합으로 구현될 수 있다.The
본 실시 예에 따른 프로세서(110)는 프레임 데이터를 생성하고, 프레임 데이터에서 데이터 변화가 있는 업데이트 슬라이스의 위치를 나타내는 슬라이스 업데이트 맵을 생성한다. 업데이트 슬라이스는, 프레임이 변함에 따라 한 픽셀이라도 데이터 변화가 있는 슬라이스를 의미한다. 프레임 데이터는 실시 예에 따라, 소정의 프레임 레이트로 생성되거나, 화면 변화가 발생할 때 생성될 수 있다. 일 실시 예에 따른 프레임 데이터는 복수의 슬라이스를 포함하고, 슬라이스 업데이트 맵은 이전 프레임 데이터와 비교하였을 때, 데이터 변화가 있는 적어도 하나의 업데이트 슬라이스의 위치를 나타낸다. 복수의 슬라이스는 이미지 프레임 영역을 동일한 크기의 사각형으로 나누어 정의될 수 있다.The
슬라이스 업데이트 맵은 예를 들면, 업데이트 슬라이스의 위치를 순차적으로 나열한 형태를 가질 수 있다. 예를 들면, 슬라이스 업데이트 맵은 '1101, 1101, 1101, 0101, 0101, 0101...'과 같은 비트 스트림을 가질 수 있다. UHD(3840*2160)의 경우, 슬라이스 업데이트 맵에 최대 560 비트가 요구될 수 있다.The slice update map may have a form in which, for example, the positions of update slices are sequentially arranged. For example, the slice update map may have a bit stream such as '1101, 1101, 1101, 0101, 0101, 0101 ...'. For UHD (3840 * 2160), a maximum of 560 bits may be required for the slice update map.
디스플레이 컨트롤러(120)는 디스플레이 데이터를 생성하여, 디스플레이 패널을 제어하는 디스플레이 구동부로 디스플레이 데이터를 출력한다. The
개시된 실시 예들에 따른 디스플레이 컨트롤러(120)는 프로세서(110)로부터 슬라이스 업데이트 맵을 수신하고, 슬라이스 업데이트 맵에 기초하여 메모리로부터 업데이트 슬라이스의 프레임 데이터를 추출한다. 즉, 디스플레이 컨트롤러(120)는 한 프레임에 대해 모든 픽셀의 프레임 데이터를 메모리로부터 가져오지 않고, 업데이트 슬라이스의 프레임 데이터만을 가져온다. 본 실시 예에 따르면, 디스플레이 컨트롤러(120)가 업데이트 슬라이스의 프레임 데이터만을 메모리로부터 추출함으로써, 메모리와 디스플레이 컨트롤러(120a) 간의 데이터 스트림의 용량을 감소시켜, 전력 소모를 감소시키는 효과가 있다. 일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 영상 처리를 위해 업데이트 슬라이스의 주변의 프레임 데이터도 메모리로부터 함께 가져올 수 있다.The
일 실시 예에 따르면, 디스플레이 컨트롤러(120a)는 슬라이스 단위로 프레임 데이터를 메모리로부터 가져온다. 즉, 디스플레이 컨트롤러(120a)는 하나의업데이트 슬라이스의 프레임 데이터를 메모리로부터 가져와 처리하고, 다음 업데이트 슬라이스의 프레임 데이터를 처리하는 식으로 동작할 수 있다. 디스플레이 컨트롤러(120a)는 모든 프레임에 대해 업데이트 슬라이스에 대한 처리가 끝날 때까지, 업데이트 슬라이스에 대한 처리를 수행할 수 있다.According to one embodiment, the
또한, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스의 프레임 데이터를 디스플레이 구동부로 전송한다. 일 실시 예에 따르면, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스에 대해 소정의 영상 처리를 수행하고, 소정의 압축 형식에 따라 데이터를 압축하여 디스플레이 컨트롤러(120a)로 디스플레이 데이터를 전송한다. 또한, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스에 대한 정보를 디스플레이 구동부로 함께 전달할 수 있다. 예를 들면, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스의 폭, 높이, 및 크기에 대한 정보를 업데이트 디스플레이 데이터와 함께 디스플레이 컨트롤러(120a)로 전송할 수 있다. Also, the
도 2는 일 실시 예에 따른 프레임 데이터를 나타낸 도면이다.2 is a diagram illustrating frame data according to an embodiment.
일 실시 예에 따르면, 프레임 데이터는 도 2에 도시된 바와 같이 동일한 크기의 복수의 슬라이스로 분할될 수 있다. 각 슬라이스는 소정의 폭(W) 및 높이(H)를 가질 수 있다. 예를 들면, 1440 * 2560의 해상도를 갖는 프레임 데이터가, 360 * 160의 해상도의 슬라이스로 분할될 수 있다. 이러한 경우 슬라이스의 폭(W)은 360, 높이(H)는 160으로 정의된다.According to one embodiment, the frame data may be divided into a plurality of slices of the same size as shown in Fig. Each slice may have a predetermined width (W) and a height (H). For example, frame data having a resolution of 1440 * 2560 can be divided into slices having a resolution of 360 * 160. In this case, the width (W) of the slice is defined as 360, and the height (H) is defined as 160.
일 실시 예에 따르면, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스들을 서브 블록으로 분할하고, 서브 블록 단위로 디스플레이 데이터를 디스플레이 구동부로 전송할 수 있다. 예를 들면, 도 2에 도시된 바와 같이 일부 슬라이스의 데이터만 프레임이 변함에 따라 변화된 경우, 디스플레이 컨트롤러(120a)는 업데이트 슬라이스들을 슬라이스 0, 1, 4, 5, 8, 및 9를 포함하는 서브 블록 1(SUBBLOCK 1), 슬라이스 13, 17, 21, 및 25를 포함하는 서브 블록 2(SUBBLOCK 2), 슬라이스 3, 7, 11, 15, 19, 23, 27, 31, 35, 및 39를 포함하는 서브 블록 3(SUBBLOCK 3), 및 슬라이스 48, 49, 50, 52, 53, 54, 56, 57, 및 58을 포함하는 서브 블록 4(SUBBLOCK 4)로 나눌 수 있다. 각 서브 블록은 사각형 모양을 갖도록 정의될 수 있다.According to one embodiment, the
디스플레이 컨트롤러(120a)는 서브 블록 단위로 디스플레이 데이터를 전송하는 경우, 디스플레이 데이터와 함께, 서브 블록에 대한 정보를 디스플레이 구동부로 전송한다. 일 실시 예에 따르면, 서브 블록에 대한 정보는, 서브 블록의 시작점의 위치 및 끝점의 위치일 수 있다. 다른 실시 예에 따르면, 서브 블록에 대한 정보는, 서브 블록의 폭, 높이, 시작점의 위치일 수 있다. 시작 점의 위치 및 끝점의 위치는 예를 들면 픽셀의 좌표로 나타낼 수 있다. When the
일 실시 예에 따르면, 디스플레이 컨트롤러(120a)는, 서브 블록 단위로, 서브 블록에 대한 정보 및 디스플레이 데이터를 직렬 전송 할 수 있다. 예를 들면, 디스플레이 컨트롤러(120a)는 서브 블록에 대한 정보 및 디스플레이 데이터를 MIPI(Mobile Inudstry Processor Interface) 얼라이언스에 따라 디스플레이 구동부로 직렬 전송할 수 있다. 또한, 디스플레이 컨트롤러(120a)는 각 서브 블록에 대한 디스플레이 데이터를 DSC(Display Stream compression) 스탠다드에 따라 압축하여 디스플레이 구동부로 전송할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 각 서브 블록의 데이터는, 래스터 스캔(rater scan) 방식으로 배열되어 압축되고 전송될 수 있다. 또한, 일 실시 예에 따르면, 각 서브 블록의 데이터는, 슬라이스 단위로 배열되어 압축되고 전송될 수 있다.According to one embodiment, the data of each sub-block may be arranged and compressed and transmitted in a raster scan manner. Further, according to an embodiment, data of each sub-block may be arranged and compressed in units of slices.
다른 실시 예에 따르면, 디스플레이 컨트롤러(120a)는, 슬라이스 단위로 디스플레이 데이터를 전송할 수 있다. 디스플레이 컨트롤러(120a)는 적어도 하나의 업데이트 슬라이스에 대해, 슬라이스 단위로, 업데이트 슬라이스에 대한 정보 및 디스플레이 데이터를 디스플레이 컨트롤러(120a)로 전송할 수 있다. 일 실시 예에 따르면, 업데이트 슬라이스에 대한 정보는 슬라이스 폭, 슬라이스 높이, 및 슬라이스 업데이트 맵일 수 있다.According to another embodiment, the
디스플레이 컨트롤러(120)는 디스플레이 데이터를 프레임 내에서 래스터 스캔 순서로 전달할 수 있다. 또한 DSC로 인코딩된 스트림에서 복수의 부분 윈도우들을 지원하고, MIPI DCS(Display Command Set) 스탠다드에 부합하도록, 디스플레이 컨트롤러(120)는 디스플레이 데이터를 서브 블록 순서 또는 슬라이스 순서로 디스플레이 구동부로 전송할 수 있다. 단, 디스플레이 컨트롤러(120)에서 디스플레이 구동부로 전송하는 데이터 스트림의 형식은 DSC 압축으로 제한되지 않으며, 서브 블록 단위 또는 슬라이스 단위로 데이터를 압축할 때 다양한 종류의 압축 형식이 이용될 수 있다. The
도 3은 일 실시 예에 따른 전자 장치(100b), 디스플레이 구동부(310a), 및 디스플레이 패널(320)을 나타낸 도면이다.3 is a diagram illustrating an
일 실시 예에 따르면, 전자 장치(100b)는 디스플레이 데이터를 생성하여 디스플레이 구동부(310a)로 전달하고, 디스플레이 구동부(310a)는 디스플레이 데이터를 디스플레이 패널(320)로 전송한다. 전자 장치(100b), 디스플레이 구동부(310a), 및 디스플레이 패널(320)은 하나의 패키징으로 구비되거나, 별개의 패키징으로 구비될 수 있다.According to one embodiment, the
전자 장치(100b)는 호스트 CPU(HOST CPU, 110a), 카메라(332), 코덱(334), GPU(Graphic processing unit, 336), 디스플레이 컨트롤러(120a), 및 DRAM(dynamic random access memory, 338)를 포함할 수 있다. 호스트 CPU(110b)는 도 1의 프로세서(110a)에 대응될 수 있다.The
호스트 CPU(110a)는 전자 장치(100b)의 전반적인 동작을 제어한다. 호스트 CPU(110a)는 운영 체제, 애플리케이션 등 다양한 프로그램을 실행하여, 전자 장치(100b)의 다양한 기능을 제어할 수 있다. 전자 장치(100b)는 저장 매체에 저장된 프로그램 코드를 실행하여 다양한 기능을 실행하고 제어할 수 있다. 예를 들면, 비휘발성 저장매체(미도시)에 저장된 프로그램 코드를 DRAM(338)을 통해 불러들여, 프로그램을 실행할 수 있다. 일 실시 예에 따르면, 호스트 CPU(110a)는 프로그램 또는 기능 등을 실행하는 컨트롤 모드와, 정지 영상 또는 동영상을 포함하는 영상 컨텐츠를 재생하는 비디오 모드로 동작할 수 있다.The host CPU 110a controls the overall operation of the
호스트 CPU(110a)는 카메라(332)를 이용하여 촬영 기능을 수행할 수 있다. 또한 호스트 CPU(110a)는 코덱(334)을 이용하여 영상 컨텐츠 파일을 디코딩하여 재생하거나, 촬영 영상을 인코딩하여 영상 컨텐츠 파일을 생성할 수 있다. 이와 같이 호스트 CPU(110a)는 전자 장치(100a)에 구비된 다양한 하드웨어 유닛 및 소프트웨어 유닛을 제어하여 다양한 기능을 실행할 수 있다.The host CPU 110a can perform the photographing function using the
호스트 CPU(110b)는 프로그램을 실행하는 동안, GUI(Graphic user interface) 화면을 생성하고, 생성된 GUI 화면을 디스플레이 패널(320)을 통해 출력할 수 있다. 호스트 CPU(110b)는 컨트롤 모드에서 이러한 GUI 화면을 프레임 데이터로 출력하여, DRAM(338)에 저장할 수 있다.The
또한, 호스트 CPU(110b)는 GPU(336)를 이용하여 영상 컨텐츠를 재생할 수 있다. 호스트 CPU(110b) 또는 GPU(336)는 재생 화면을 생성하여, 프레임 데이터로서 DRAM(338)에 저장한다.In addition, the
호스트 CPU(110b)는 프레임 데이터를 생성하면서 슬라이스 업데이트 맵을 생성하고, 슬라이스 업데이트 맵을 디스플레이 컨트롤러(120a)로 출력한다. 또한, 호스트 CPU는 슬라이스의 폭 및 높이에 대한 정보를 디스플레이 컨트롤러(120a)로 출력한다. The
디스플레이 컨트롤러(120a)는 슬라이스 업데이트 맵을 이용하여, 업데이트된 프레임 데이터를 DRAM(338)으로부터 추출한다. 예를 들면, 0 내지 19번의 슬라이스가 있는 프레임 데이터 중, 1, 2, 4, 및 5번 슬라이스의 데이터가 변경된 경우, 디스플레이 컨트롤러(120a)는 슬라이스 업데이트 맵에 기초하여, 1, 2, 4, 및 5번 슬라이스에 해당하는 프레임 데이터를 DRAM(338)으로부터 가져온다.The
개시된 실시 예들은 프레임이 바뀔 때마다 DRAM(338)으로부터 전체 프레임 데이터를 모두 가져오는 구성에 비해, DRAM(338)으로부터 디스플레이 컨트롤러(120a)로 전송되는 데이터 스트림의 용량을 현저하게 감소시켜, 전력 소모를 감소시킬 수 있다. GUI 화면은 일반적으로 소정의 템플릿 내에 필요한 정보들이 표시되고, 프로그램의 동작에 따라 화면의 일부만 변화되는 경우가 많다. 따라서 슬라이스 업데이트 맵을 이용하는 구성에 의해, GUI 화면의 프레임 업데이트 시 발생하는 전력 소모가 현저하게 감소될 수 있다.The disclosed embodiments significantly reduce the capacity of the data stream transmitted from the
또한, 개시된 실시 예들에 따르면, 프레임 처리 동안에, 호스트 CPU(110a)에서 실행되는 소프트웨어의 개입이 필요 없다. 프레임이 시작되면, 하드웨어, 즉 디스플레이 컨트롤러(310a)가 프레임이 끝날 때까지 자동으로 다음 슬라이스 정보를 산출하고 다음 슬라이스를 처리할 수 있다.Also, according to the disclosed embodiments, there is no need for intervention of software running on the host CPU 110a during frame processing. When the frame starts, the hardware, i.e., the
디스플레이 구동부(310a)는 전자 장치(100b)로부터 디스플레이 데이터를 수신하여 저장 및 디코딩하고, 디스플레이 데이터를 디스플레이 패널(320)로 출력한다. 디스플레이 구동부(310a)는 예를 들면 DDI(Device driver interface)의 형태로 구현될 수 있다.The
일 실시 예에 따른 디스플레이 구동부(310a)는 DPHY(312), GRAM(Graphic RAM, 316), 및 DSC 디코더(Display Stream Compression Decoder, 314)를 포함한다. The
DPHY(312)는 전자 장치(100b)로부터 디스플레이 데이터를 수신한다. 전자 장치(100b)의 디스플레이 컨트롤러(120a)는 MIPI DCS(Mobile Industry Processor Interface Display Command Set) 스탠다드에 따라 업데이트 서브 블록 또는 업데이트 슬라이스에 대한 정보, 및 디스플레이 데이터를 압축하여 디스플레이 구동부(310a)의 DPHY(312)로 전송한다. DPHY(312)는 MIPI DCS에 따른 데이터 스트림을 수신하여 GRAM(316)에 저장한다. GRAM(316)은 디스플레이 데이터를 프레임 단위로 저장한다. GRAM(316)은 DSC 형식으로 압축된 형태로 디스플레이 데이터를 저장할 수 있다. DSC 디코더(314)는 소정의 타이밍에 따라 GRAM(316)으로부터 디스플레이 데이터를 읽어서, DSC 형식으로 압축된 디스플레이 데이터를 디코딩하고, 디코딩된 디스플레이 데이터를 디스플레이 패널(320)로 전송한다.The
디스플레이 패널(320)은 디스플레이 구동부(310a)로부터 출력된 디스플레이 데이터를 표시한다. 디스플레이 패널(320)은 래스터 스캔 방식으로 업데이트될 수 있다. 디스플레이 패널(320)은 예를 들면, 액정 표시 패널, OLED(Organic light emitting diode) 패널, 전기 영동 디스플레이 패널 등의 형태로 구현될 수 있다.The
도 4는 일 실시 예에 따른 디스플레이 컨트롤러(120a) 및 DRAM(338)을 나타낸 도면이다.4 is a diagram illustrating a
일 실시 예에 따른 디스플레이 컨트롤러(120a)는, DMA(Direct memory access, 402), 픽셀 처리부(404), 블렌딩부(406), DSC 인코더(408), DSIM(Display Serial Interface Master, 410), 및 DPHY(412)를 포함한다.The
DMA(402)는 호스트 CPU(110b)로부터 슬라이스 업데이트 맵을 수신하고, 슬라이스 업데이트 맵에 기초하여, DRAM(338)으로부터 업데이트 슬라이스의 프레임 데이터를 수신한다. DMA(402)는 업데이트 슬라이스 맵에 기초하여, DRAM(338)에 대한 액세스 주소 및 전송 픽셀의 개수를 결정할 수 있다. The
도 5는 일 실시 예에 따라, DMA(402)가 DRAM(338)으로부터 프레임 데이터를 읽어오는 순서를 나타낸 도면이다.5 is a diagram showing a sequence in which the
DMA(402)는 예를 들면 도 5에 도시된 바와 같이 슬라이스 단위로 픽셀 데이터를 DRAM(338)으로부터 가져오고, 각 슬라이스에 대해 래스터 스캔 순서로 픽셀 데이터를 가져오도록, DRAM(338)에 액세스할 수 있다. DMA(402)는 업데이트 슬라이스의 프레임 데이터를 픽셀 처리부(404)로 전달한다. The
다시 도 4를 참조하면, 픽셀 처리부(404)는 프레임 데이터에 대해, 색좌표 변환 처리, 화질 개선(enhancement) 처리 등을 수행한다. 예를 들면, 픽셀 처리부(404)는 프레임 데이터를 YUU 색좌표로부터 RGB 색좌표로 변환할 수 있다. 또한 픽셀 처리부(404)는 프레임 데이터의 채도, 색상, 컨트라스트 등을 조절하여 화질 개선 처리를 수행할 수 있다.Referring again to FIG. 4, the
블렌딩부(406)는 픽셀 처리부(404)에서 색좌표 변환 처리, 화질 개선 처리가 수행된 프레임 데이터를 블렌딩한다.The
DSC 인코더(408)는 블렌딩부(406)로부터 출력된 프레임 데이터를 DSC 스탠다드에 따라 인코딩한다. 도 4에서는 프레임 데이터가 DSC 스탠다드에 따라 인코딩 되는 실시 예를 개시하지만, DSC 스탠다드 이외에도 다양한 인코딩 방식이 프레임 데이터를 인코딩하기 위해 이용될 수 있다. The
일 실시 예에 따르면, 디스플레이 컨트롤러(120a)는 서브 블록 단위로 업데이트된 슬라이스의 프레임 데이터를 압축하여, 디스플레이 구동부(310a)로 전송한다. 이를 위해, DSC 인코더(408)는 적어도 하나의 업데이트 슬라이스를 서브 블록 단위로 나누고, 서브 블록 단위로 업데이트된 프레임 데이터를 DSC 스탠다드에 따라 인코딩할 수 있다.According to one embodiment, the
다른 실시 예에 따르면, 디스플레이 컨트롤러(120a)는 슬라이스 단위로 업데이트된 슬라이스의 프레임 데이터를 압축하여, 디스플레이 구동부(310a)로 전송한다. 이를 위해, DSC 인코더(408)는 슬라이스 단위로 업데이트된 프레임 데이터를 DSC 스탠다드에 따라 인코딩할 수 있다.According to another embodiment, the
DSIM(410)은 DSC 인코더(408)로부터 출력된 프레임 데이터를 이용하여, 디스플레이 구동부(310a)로 전송할 데이터 스트림을 생성한다. 일 실시 예에 따르면, DSIM(410)은 MIPI DCS의 형태로 데이터 스트림을 생성할 수 있다. 예를 들면, DSIM(410)은 서브 블록 또는 슬라이스 단위로, 서브 블록 또는 슬라이스에 대한 정보 및 디스플레이 데이터를 DPHY(412)로 출력할 수 있다.The
DPHY(412)는 DSIM(410)으로부터 수신된 서브 블록 또는 슬라이스에 대한 정보 및 디스플레이 데이터를 디스플레이 구동부(310a)로 전송한다. 일 실시 예에 따르면, DPHY(412)는 MIPI DCS 데이터 스트림을 디스플레이 구동부로(310a)로 직렬 전송할 수 있다.The
직렬 통신의 사용되는 계층형 통신 구조(이하, 프로토콜 스택(protocol stack)라고도 지칭한다)는 최하위 레이어로서 물리적 레이어를 포함하는 다수의 레이어들로 구성될 수 있다. 이러한 물리적 레이어의 예시로서, M-PHY, UniPro(Unified Protocol), PCI 익스프레서, 초고속 USB(Universal Serial Bus), 하이퍼트랜스포트(HyperTransport), RapidIO, 인피니밴드(InfiniBand) 및 직렬 ATA(Serial ATA) 등이 있다. 특히, M-PHY 및 UniPro는 모바일 전자 기기 등에서의 사용을 지원하기 위한 저전력 소모의 특징을 가지고 있으며, 양자 모두 MIPI(Mobile Inudstry Processor Interface) 얼라이언스에서 표준화되어 있다. 또한, M-PHY(이하에서, MIPI M-PHY라고 지칭할 수도 있다) 및 UniPro는 JEDEC에서 표준화되어 있는 UFS(Universal Flash Storage) 인터페이스에 채용되고 있다.A used hierarchical communication structure of serial communication (hereinafter also referred to as a protocol stack) may be composed of a plurality of layers including a physical layer as a lowest layer. Examples of such physical layers include, but are not limited to, M-PHY, UniPro (Unified Protocol), PCI Express, High Speed Universal Serial Bus, HyperTransport, RapidIO, InfiniBand, and Serial ATA ). In particular, M-PHY and UniPro have low power consumption features to support their use in mobile electronic devices, both of which are standardized in the Mobile Inudstry Processor Interface (MIPI) alliance. In addition, M-PHY (hereinafter, may be referred to as MIPI M-PHY) and UniPro are employed in a UFS (Universal Flash Storage) interface standardized by JEDEC.
도 6은 일 실시 예에 따라 전자 장치(100b)로부터 디스플레이 컨트롤러(310a)로 전달되는 데이터 스트림을 나타낸 도면이다.FIG. 6 is a diagram illustrating a data stream transferred from the
일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 서브 블록 단위로 디스플레이 데이터를 전달한다. 서브 블록은 실시 예에 따라 다양한 규칙으로 정의될 수 있다. 일 실시 예에 따르면, 도 6의 602 데이터 스트림과 같이, 업데이트 슬라이스를 소정 개수로 분할하여 서브 블록을 정의하고, 각 서브 블록의 픽셀 데이터를 래스터 스캔 순서에 따라 디스플레이 구동부(310a)로 전송한다. 다른 실시 예에 따르면, 디스플레이 컨트롤러(120)는 604 데이터 스트림과 같이 첫 업데이트 슬라이스(슬라이스 1)는 하나의 슬라이스로 서브 블록을 구성하고, 다음 업데이트 슬라이스(슬라이스 2, 3)는 소정 개수로 슬라이스를 묶어서 서브 블록을 정의할 수 있다. 또 다른 실시 예에 따르면, 디스플레이 컨트롤러(120)는 606 데이터 스트림과 같이, 공간적으로 인접한 업데이트 슬라이스들(슬라이스 2, 3)을 모두 하나의 서브 블록으로 묶을 수 있다.According to one embodiment, the
다른 실시 예에 따르면, 디스플레이 컨트롤러(120)는 608 데이터 스트림과 같이, 슬라이스 단위로 디스플레이 데이터를 디스플레이 구동부(310a)로 전송할 수 있다. 본 실시 예에 따르면, 디스플레이 컨트롤러(120)는 각 슬라이스 단위마다, 슬라이스 위치에 대한 정보 및 해당 슬라이스의 프레임 데이터를 포함하는 데이터 스트림을 생성하여, 슬라이스 순서에 따라 순차적으로 디스플레이 구동부(310a)로 전송할 수 있다. 디스플레이 컨트롤러(130)는 데이터 스트림을 생성할 때, 래스터 스캔의 순서에 따라 슬라이스의 순서를 결정할 수 있다. 또한 디스플레이 구동부(310a)는 각 슬라이스에 대해서, 래스터 스캔의 순서에 따라 픽셀 데이터를 전송할 수 있다. 예를 들면, 디스플레이 컨트롤러(120)로부터 디스플레이 구동부(310a)로 디스플레이 데이터를 전송할 때, 슬라이스 1에 대해, 슬라이스 1의 위치에 대한 정보를 전송한 후에, 래스터 스캔 순서에 따라 픽셀 데이터가 전송되고, 슬라이스 2에 대해, 슬라이스 2의 위치에 대한 정보를 전송한 후에, 래스터 스캔 순서에 따라 픽셀 데이터가 전송될 수 있다. 슬라이스 단위의 디스플레이 데이터의 전송은, 모든 업데이트 슬라이스에 대해 수행될 수 있다.According to another embodiment, the
도 7은 일 실시 예에 따라 디스플레이 컨트롤러(120)에서 업데이트 슬라이스를 가져오는 동작을 설명하기 위한 도면이다.7 is a diagram for explaining an operation of fetching an update slice in the
디스플레이 컨트롤러(120)에서 화질 개선 처리가 각 파티션의 로컬 정보(예를 들면, 휘도 평균값)을 산출하고, 이러한 정보가 디스플레이 컨트롤러(120)의 화질 개선부가 다음 프레임을 처리할 때 이용되는 경우, 부분 윈도우 업데이트를 지원하기 위해, 화질 개선부는 공간적인 위치 정보를 필요로 하고, 대응하는 파티션에 대한 로컬 평균을 산출해야 한다. 만약 화질 개선부의 파티션이 슬라이스 경계와 정렬될 수 없다면, 화질 개선부의 계산은 복잡한 산술적인 계산을 요구하게 된다. 복수의 부분 업데이트를 지원하기 위해, DQE(Descriptor queue element) 엔진은 소프트웨어 개입 없이 로컬 평균 정보를 처리해야 하고, 알고리즘은 하드웨어 구성에 대한 슬라이스 경계와 화질 개선부의 파티션 경계를 정렬하도록 변화될 필요가 있다. 일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 DRAM(338)으로부터 프레임 데이터를 가져올 때, 화질 개선 처리를 위해 업데이트 슬라이스의 픽셀 데이터와 함께 추가적인 주변 필셀들을 가져온다. 예를 들면, 슬라이스 5가 업데이트 슬라이스인 경우, 디스플레이 컨트롤러(120)는 슬라이스 5를 포함하는 화질 개선부의 파티션(702)에 해당하는 픽셀 데이터를 DRAM(338)으로부터 가져온다.When the image quality improvement processing in the
탭 필터(tap filter)가 소스 이미지의 해상도를 변경하기 위해 픽셀 처리부 내에서 이용된다면, 일 실시 예에 따른 디스플레이 컨트롤러(120)는 DRAM(338)으로부터 프레임 데이터를 가져올 때, 탭 필터링을 위해 업데이트 슬라이스의 픽셀 데이터와 함께 추가적인 주변 픽셀들을 가져온다. 예를 들면, 슬라이스 5의 업데이트를 위해, 702 영역의 픽셀들이 탭 필터링 처리에 필요할 수 있다. 이러한 경우, 슬라이스 업데이트 맵, 스케일 비율, 스케일러 위상, 탭 필터링을 위한 오버랩핑, 및 현재 슬라이스의 경계 정보에 기초하여, 디스플레이 컨트롤러(120)의 DMA는 시작 주소, 및 현재 슬라이스에 대해 요구되는 픽셀 개수를 산출하고, 그 결과에 따라 DRAM으로부터 픽셀 데이터를 가져올 수 있다.If the tap filter is used within the pixel processing section to change the resolution of the source image, the
도 8a 및 도 8b는 서브 블록에 대한 정보를 나타내는 도면이다.8A and 8B are views showing information on sub-blocks.
일 실시 예에 따르면, 서브 블록에 대한 정보는, 서브 블록의 시작 점의 위치 및 끝 점의 위치를 포함한다.According to one embodiment, the information on the sub-block includes the position of the start point of the sub-block and the position of the end point.
MIPI DCS에 따라 DSIM을 통해 비디오 데이터를 전송하는 경우, 다음의 명령어 세트가 이용될 수 있다. 일 실시 예에 따르면, DSIM은 MIPI DCS의 CASET 영역에 서브 블록의 시작 점의 컬럼 주소(column address) 및 서브 블록의 끝 점의 컬럼 주소를 기록한다. 예를 들면, 도 8a에 도시된 바와 같이 서브 블록의 시작 점의 컬럼 주소인 SC[15:0], 및 끝 점의 컬럼 주소인 EC[15:0]가 CASET 영역에 기록될 수 있다. 또한, DSIM은 MIPI DCS의 PASET 영역에 서브 블록의 시작 점의 페이지 주소(page address) 및 서브 블록의 끝 점의 페이지 주소를 기록한다. 페이지는 컬럼과 직교하는 행(row)을 의미한다. 예를 들면, 도 8b에 도시된 바와 같이, 서브 블록의 시작 점의 페이지 주소인 SP[15:0], 및 끝 점의 페이지 주소인 EP[15:0]가 PASET 영역에 기록될 수 있다.When transmitting video data via DSIM according to MIPI DCS, the following instruction set can be used. According to one embodiment, the DSIM records the column address of the start point of the subblock and the column address of the end point of the subblock in the CASET field of the MIPI DCS. For example, as shown in FIG. 8A, the column address SC [15: 0] of the start point of the sub-block and the column address EC [15: 0] of the end point can be recorded in the CASET area. In addition, the DSIM records the page address of the start point of the subblock and the page address of the end point of the subblock in the PASET area of the MIPI DCS. A page is a row that is orthogonal to a column. For example, as shown in FIG. 8B, the page address SP [15: 0] of the start point of the sub-block and the page address EP [15: 0] of the end point may be recorded in the PASET area.
도 9는 일 실시 예에 따라 디스플레이 컨트롤러(120)로부터 디스플레이 구동부로 전달되는 데이터 스트림의 구조를 나타낸 도면이다.9 is a diagram illustrating a structure of a data stream transmitted from a
일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 도 9에 도시된 바와 같이 MIPI DCS 형식으로 데이터 스트림을 생성할 수 있다. MIPI DCS는 전자 장치 및 디스플레이 장치에서 데이터 스트림을 전송할 때 널리 이용되는 방식 중 하나이다. 따라서 본 실시 예는, 기존의 전자 장치 및 디스플레이 장치와 호환성이 우수한 장점이 있다.According to one embodiment, the
MIPI DCS 형식은 도 9에 도시된 바와 같이, CASET, PASET, 2Ch, Image, 3Ch, Image 영역이 순차적으로 배열된 직렬 전송 방식이다. 일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 CASET 및 PASET 영역에 서브 블록 또는 슬라이스에 대한 정보를 기록하고, Image 영역들에 서브 블록 또는 슬라이스에 대응하는 디스플레이 데이터를 기록할 수 있다. The MIPI DCS format is a serial transmission scheme in which CASET, PASET, 2Ch, Image, 3Ch, and Image areas are sequentially arranged as shown in FIG. According to one embodiment, the
서브 블록 단위로 디스플레이 데이터를 전송하는 경우, MIPI DCS 형식에 따른 데이터 스트림은, 서브 블록 단위(SUBBLOCK A, SUBBLOCK B)로 순차적으로 직렬 전송될 수 있다. 슬라이스 단위로 디스플레이 데이터를 전송하는 경우, MIPI DCS 형식에 따른 데이터 스트림은, 슬라이스 단위(SLICE N, SLICE M)로 순차적으로 직렬 전송될 수 있다.When the display data is transmitted in units of sub-blocks, the data stream according to the MIPI DCS format can be sequentially transmitted serially to sub-block units (SUBBLOCK A and SUBBLOCK B). When the display data is transmitted in slice units, the data streams according to the MIPI DCS format can be serially serially transmitted in slice units (SLICE N, SLICE M).
앞서 도 8a 및 도 8b를 이용하여 설명한 바와 같이, 서브 블록 단위로 디스플레이 데이터를 전송하는 경우, CASET 영역에 서브 블록의 시작 점의 컬럼 주소 및 끝 점의 컬럼 주소가 기록되고, PASET 영역에 서브 블록의 시작 점의 페이지 주소 및 끝 점의 페이지 주소가 기록될 수 있다. 슬라이스 단위로 디스플레이 데이터를 전송하는 경우, CASET 영역에 슬라이스의 시작 점의 컬럼 주소 및 끝 점의 컬럼 주소가 기록되고, PASET 영역에 슬라이스의 시작 점의 페이지 주소 및 끝 점의 페이지 주소가 기록될 수 있다. 8A and 8B, when the display data is transmitted in units of subblocks, the column address of the start point of the subblock and the column address of the end point are recorded in the CASET area, and the column address of the end point of the subblock is recorded in the PASET area. The page address of the start point and the page address of the end point may be recorded. When the display data is transmitted in slice units, the column address of the start point of the slice and the column address of the end point are recorded in the CASET area, and the page address of the start point of the slice and the page address of the end point of the slice are recorded in the PASET area have.
2Ch 영역 및 3Ch 영역에는 GRAM 기록 커맨드가 기록된다. 2Ch 영역에는 앞선 CASET 및 PASET에 의해 특정된 픽셀 위치에서 GRAM에 디스플레이 데이터를 기록하는 write_memory_start 명령이 기록된다. 3Ch 영역에는 이전 write_memory_start 또는 write_memory_continue 명령을 뒤따르는 픽셀 위치로부터 GRAM에 디스플레이 데이터를 기록하는 write_memory_continue 명령이 기록된다. 디스플레이 구동부의 DPHY는 2Ch 영역을 뒤따르는 Image 영역의 데이터를 CASET 및 PASET에 의해 특정된 위치에 기록하고, 3Ch 영역을 뒤따르는 Image 영역의 데이터를 이전 CASET 및 PASET에 의해 특정된 영역을 뒤따르는 픽셀 위치로부터 기록한다. 본 실시 예에 따르면, 복수의 부분 윈도우가 MIPI 부합 방식으로 지원될 수 있다.In the 2Ch area and 3Ch area, a GRAM write command is recorded. In the 2Ch area, a write_memory_start command for recording the display data in the GRAM is recorded at the pixel position specified by the preceding CASET and PASET. In the 3Ch area, a write_memory_continue command is written to write the display data to the GRAM from the pixel position following the previous write_memory_start or write_memory_continue command. The DPHY of the display driving unit records the data of the Image area following the 2Ch area at the position specified by the CASET and PASET and stores the data of the Image area following the 3Ch area as the pixel following the area specified by the previous CASET and PASET Record from location. According to the present embodiment, a plurality of partial windows can be supported in a MIPI conforming manner.
그러나 현재의 DSIM은 CASET, PASET, 2Ch, 및 3Ch 명령을 전송하는데 있어서 한계가 있다. 현재의 DSIM은 DSIM 프레임의 종료가 선언된 후에만 이러한 명령들을 전송할 수 있다. 본 실시 예에 따른 DSIM은, 슬라이스 단위로 CASET, PASET, 및 데이터를 배치하고, 각 슬라이스 데이터가 슬라이스 업데이트 맵(SFR) 및 슬라이스 해상도 정보(PPS, Picture Parameter Set)를 이용하여 DECON으로부터 전달될 때 자동으로 PHY를 통해 전달한다. However, the current DSIM has limitations in transmitting CASET, PASET, 2Ch, and 3Ch commands. The current DSIM can send these commands only after the DSIM frame is declared to be terminated. DSIM according to the present embodiment arranges CASET, PASET, and data in slice units, and when each slice data is transferred from DECON using a slice update map (SFR) and slice resolution information (PPS) Automatically forward through PHY.
일 실시 예에 따르면, 도 9에 도시된 바와 같이, 프레임이 시작될 때마다, TE 신호가 삽입된다. DDI가 래스터 스캔 순서로 비디오 데이터를 처리하고 디스플레이 컨트롤러(120)가 슬라이스 기반 순서로 데이터를 전송할 때, 슬라이스 데이터의 특정 부분은 예상 시간보다 늦게 전송되거나 빨리 전송될 수 있다. 이와 같이, 다른 타임 프레임의 데이터가 동일 시간 프레임에 디스플레이 되는 현상을 테어링 현상(Tearing problem)이라고 한다. 디스플레이 구동부는 단일 버퍼 구조를 채용하기 때문에, 전자 장치로부터 GRAM으로 데이터 기록이 예상 시간보다 느리거나 빠를 때, 테어링 현상이 발생한다.According to one embodiment, a TE signal is inserted every time a frame is started, as shown in Fig. When the DDI processes the video data in raster scan order and the
도 10a 및 도 10b는 일 실시 예에 따라 테어링 현상을 방지하는 방법을 설명하기 위한 도면이다.10A and 10B are views for explaining a method for preventing a tearing phenomenon according to an embodiment.
도 10a 및 도 10b의 A는 슬라이스 업데이트 맵을 이용하지 않는 경우에 디스플레이 구동부에서 GRAM에 데이터를 기록하는 동작을 나타내는 기록 곡선이고, A1, A2, A3는 슬라이스 업데이트 맵을 이용하여 서브 블록 단위 또는 슬라이스 단위로 업데이트 슬라이스의 디스플레이 데이터를 전송하는 경우의 GRAM에 데이터 기록 동작을 나타내는 기록 곡선이고, R은 디스플레이 패널에 디스플레이 데이터가 표시되는 동작을 나타내는 디스플레이 곡선이다. 슬라이스 업데이트 맵을 이용하지 않는 경우, 각 픽셀에 대한 디스플레이 데이터가 래스터 스캔 순서에 따라 A 곡선과 같이 기록되기 때문에 테어링 현상이 발생하지 않는다. 그런데 슬라이스 업데이트 맵을 이용하는 경우, 업데이트 슬라이스의 배치 때문에, 도 10a에 도시된 바와 같이, 디스플레이 패널에 디스플레이 데이터가 표시되는 타이밍까지 해당 위치의 디스플레이 데이터가 업데이트되지 않는 경우가 발생할 수 있다(A3 곡선). 일 실시 예에 따르면, 도 10b에 도시된 바와 같이, 디스플레이 컨트롤러(120)는 프레임의 시작마다 TE 신호를 삽입하고, TE 신호의 타이밍을 슬라이스 높이만큼 앞당겨, 슬라이스 데이터가 예상 시간보다 늦게 전송되어 발생하는 테어링 현상을 방지할 수 있다. 도 10b를 참조하면, TE 신호의 타이밍을 앞당김으로 인해, 디스플레이 데이터의 기록 타이밍이 전체적으로 슬라이스 높이만큼 앞당겨져, 테어링 현상이 나타나지 않는다. TE 신호의 타이밍을 앞당기는 시간 길이는 실시 예에 따라 다양하게 결정될 수 있다.10A and 10B are recording curves showing the operation of writing data to the GRAM in the display driver when the slice update map is not used, and A1, A2, and A3 are recording curves in units of subblocks or slices Is a recording curve indicating a data recording operation in the GRAM when the display data of the update slice is transmitted in units of R, and R is a display curve indicating an operation in which display data is displayed on the display panel. When the slice update map is not used, the display data for each pixel is recorded as the curve A according to the raster scan order, so that the tearing phenomenon does not occur. In the case of using the slice update map, however, due to the arrangement of the update slice, the display data at the corresponding position may not be updated until the display data is displayed on the display panel as shown in Fig. 10A (curve A3) . 10B, the
도 11a 및 도 11b는 일 실시 예에 따라 테어링 현상을 방지하는 방법을 설명하기 위한 도면이다.11A and 11B are views for explaining a method of preventing a tearing phenomenon according to an embodiment.
도 11a 및 도 11b의 A4, A5, A5-1은 슬라이스 업데이트 맵을 이용하여 서브 블록 단위 또는 슬라이스 단위로 업데이트 슬라이스의 디스플레이 데이터를 전송하는 경우의 GRAM에 데이터 기록 동작을 나타내는 기록 곡선이고, R은 디스플레이 패널에 디스플레이 데이터가 표시되는 동작을 나타내는 디스플레이 곡선이다. A4는 n번째 프레임의 기록 곡선이고, A5 및 A5-1은 n+1번째 프레임의 기록 곡선이고, R은 n번째 프레임의 디스플레이 곡선이다.A4, A5, and A5-1 in Figs. 11A and 11B are recording curves representing data recording operations in the GRAM when the display data of the update slice is transmitted on a subblock-by-slice or slice-by-slice basis using the slice update map, And a display curve indicating an operation in which display data is displayed on the display panel. A4 is a recording curve of the n-th frame, A5 and A5-1 are recording curves of the (n + 1) th frame, and R is the display curve of the n-th frame.
만약 디스플레이 데이터가 예상 시간보다 빠르게 GRAM에 기록되어, 기록 곡선이 디스플레이 곡선을 앞지르는 경우, 테어링 현상이 나타난다. 예를 들면, 도 11a에 도시된 바와 같이 n+1번째 프레임의 기록 곡선인 A5곡선이 n번째 프레임의 디스플레이 곡선을 앞지르는 경우 테어링 현상이 발생한다. 예를 들면, TE 신호 타이밍을 앞당기고 최하단의 슬라이스를 갖는 부분 윈도우를 전송하는 경우에도 테어링 현상이 발생할 수 있다. 이러한 경우, 현재 프레임의 디스플레이를 종료하기 전에, 다음 프레임의 부분 윈도우 데이터가 GRAM에 기록될 수 있다. 이러한 종류의 테어링을 방지하기 위해, 디스플레이 구동부(310a)의 DSC 디코더(314)은 예상 시간보다 빨리 슬라이스를 전송하지 않도록 출력 시간을 제어할 수 있다. 예를 들면, 도 11b에 도시된 바와 같이, 디스플레이 컨트롤러(120)가 타이머를 구비하여, 타이밍을 체크하다가, 디스플레이 데이터가 예상 시간보다 앞서서 디스플레이 구동부로 출력되는 경우, 디스플레이 데이터의 전송을 홀딩하고, 예상 시간이 되면 디스플레이 구동부로 디스플레이 데이터를 출력할 있다.If the display data is written to the GRAM sooner than the expected time, and the recording curve exceeds the display curve, a tearing phenomenon appears. For example, as shown in FIG. 11A, a tearing phenomenon occurs when the A5 curve, which is the recording curve of the (n + 1) th frame, exceeds the display curve of the nth frame. For example, the TE signal timing is advanced and the tearing phenomenon may occur even when a partial window having a slice at the lowest stage is transmitted. In this case, the partial window data of the next frame may be written to the GRAM before the display of the current frame is ended. In order to prevent this kind of tearing, the
도 12a 및 도 12b는 일 실시 예에 따라 서브 블록을 정의하는 방식을 설명하는 도면이다.12A and 12B are diagrams illustrating a method of defining sub-blocks according to an embodiment.
일 실시 예에 따르면, 디스플레이 컨트롤러(120)는 서브 블록이 가능한 긴 가로 폭을 갖도록 서브 블록을 정의하여, 테어링 현상을 방지할 수 있다. 도 12a 및 12b에 도시된 바와 같은 업데이트 슬라이스 배치를 갖는 경우를 예로 들어 설명한다. 디스플레이 컨트롤러(120)는 도 12a에 도시된 바와 같이 슬라이스 0, 1, 4, 5, 8, 9, 12, 및 13으로 이루어진 서브 블록 1210, 및 슬라이스 17, 21, 25, 29로 이루어진 서브 블록 1212를 설정할 수 있다. 다른 예로서 디스플레이 컨트롤러(120)는 도 12b에 도시된 바와 같이 슬라이스 0, 4, 8, 및 12로 이루어진 서브 블록 1220, 및 슬라이스 1, 5, 9, 13, 17, 21, 25, 및 29로 이루어진 서브 블록 1222를 설정할 수 있다. 그런데 디스플레이 패널이 래스터 스캔 방식으로 업데이트 되는 경우, 프레임의 윗쪽에 배치된 픽셀들이 먼저 업데이트 되기 때문에, 업데이트 슬라이스를 디스플레이 구동부로 전달할 때도 윗쪽에 배치된 픽셀들이 먼저 전달된다면 테어링 현상을 방지할 수 있다. 일 실시 예에 따른 디스플레이 컨트롤러(120)는 래스터 스캔 방식에 따라 디스플레이 패널이 업데이트될 때, 먼저 액세스되는 픽셀을 먼저 디스플레이 구동부로 전달하도록, 서브 블록의 폭을 가능한 넓게 설정하여, 테어링 현상을 방지하는 효과가 있다.According to an exemplary embodiment, the
도 13a 및 도 13b는 일 실시 예에 따라 슬라이스를 설정하는 방식을 설명하기 위한 도면이다.13A and 13B are views for explaining a method of setting a slice according to an embodiment.
일 실시 예에 따르면, 프로세서(110)는 DSC 슬라이스를 GPU 업데이트 유닛에 정렬시킬 수 있다. 또한, 프로세서(110)는 업데이트 슬라이스 개수를 감소시키도록 슬라이스를 설정할 수 있다. 도 13a와 같이, 데이터 변화가 있는 업데이트 영역(Tile, 1310)이 한 슬라이스 내에 배치되는 경우, 업데이트 슬라이스는 1개이므로, 디스플레이 컨트롤러(120)는 단 한 개의 슬라이스의 디스플레이 데이터만을 처리하고 디스플레이 구동부로 전송하면 된다. 다른 예로서 도 13b와 같이, 데이터 변화가 있는 업데이트 영역(Tile, 1320)이 네 개의 슬라이스에 걸쳐 있는 경우, 업데이트 영역(1320)의 크기는 도 13a에 도시된 업데이트 영역(1310)과 비슷한데도 불구하고, 네 개의 업데이트 슬라이스의 디스플레이 데이터를 처리하여 디스플레이 컨트롤러(120)로부터 데이터 구동부로 전송해야 한다. 일 실시 예에 따르면, 프로세서(110)는 업데이트 영역의 위치 및 면적에 기초하여, 업데이트 슬라이스 개수를 감소시키도록 슬라이스를 정의할 수 있다. 예를 들면, 프로세서(110)는 도 13b와 같이 슬라이스를 정의하는 대신, 도 13a와 같이 슬라이스를 정의할 수 있다.According to one embodiment, the
또한, 일 실시 예에 따르면, 프로세서(110)에서 슬라이스를 정의할 때, 업데이트 슬라이스의 용량을 감소시키기 위해, 슬라이스 사이즈를 작게 설정할 수 있다. 예를 들면, 스탠다드에서 정의하는 한 슬라이스당 15000 픽셀을 만족하도록 슬라이스의 픽셀 개수를 최소화하여 슬라이스를 설정할 수 있다.Also, according to one embodiment, when defining a slice in the
도 14는 일 실시 예에 따른 GUI 화면을 나타낸 도면이다.FIG. 14 is a diagram illustrating a GUI screen according to an embodiment.
도 14는 MMS(Multimedia Messaging Service) 애플리케이션의 화면을 나타낸다. 만약 모든 업데이트 영역을 포함하는 하나의 박스를 정의하여 업데이트 하는 방식을 이용한다면, 사용자가 메시지 윈도우에 글자를 타이핑할 때, 오직 1410 영역과 일부 다른 영역(1420) 만이 업데이트 되더라도, 해당 프레임의 전체 업데이트 영역을 포함하는 사각형 영역(1430)이 업데이트 되어야 한다. 이러한 사각형 영역(1430)은 일부 다른 업데이트 영역(1420)으로 인해 1410 영역보다 과도하게 크게 설정될 수 있다. 본 실시 예에 따르면, 복수의 부분 업데이트 방식을 이용함에 의해, 각 부분 업데이트 영역들(1410, 1420)에 대해 개별적으로 데이터 스트림 전송 처리를 할 수 있다. 이러한 구성에 의해, 본 실시 예는 업데이트 되지 않은 영역에 대한 불필요한 데이터 전송을 감소시켜, 전력 소모를 현저하게 감소시킬 수 있는 효과가 있다.14 shows a screen of an MMS (Multimedia Messaging Service) application. If a method of defining and updating one box including all the update areas is used, even when only the 1410 area and some
도 15는 일 실시 예에 따른 전자 장치 제어 방법을 나타낸 흐름도이다.15 is a flowchart illustrating an electronic device control method according to an embodiment.
개시된 실시 예들에 따른 전자 장치 제어 방법은, 프로세서 및 메모리를 포함하는 다양한 전자 장치에 의해 수행될 수 있다. 본 개시에서는 도 1 및 도 3에 개시된 실시 예에 따른 전자 장치에서 전자 장치 제어 방법을 수행하는 실시 예를 중심으로 설명하지만, 본 개시의 실시 예들이 이러한 실시 예로 한정되는 것은 아니다. 또한, 도 1 내지 14를 이용하여 설명한 전자 장치에 대한 실시 예들은 전자 장치 제어 방법들에 적용될 수 있고, 전자 장치 제어 방법에 대한 실시 예들은 전자 장치에 대한 실시 예들에 적용될 수 있다.The electronic device control method according to the disclosed embodiments can be performed by various electronic devices including a processor and a memory. Although the present disclosure focuses on an embodiment of performing an electronic device control method in an electronic device according to the embodiment disclosed in Figs. 1 and 3, the embodiments of the present disclosure are not limited to such an embodiment. In addition, embodiments of the electronic device described with reference to Figs. 1 to 14 can be applied to electronic device control methods, and embodiments of the electronic device control method can be applied to embodiments for an electronic device.
우선 전자 장치는 복수의 슬라이스를 포함하는 프레임 데이터에서 데이터 변화가 있는 적어도 하나의 업데이트 슬라이스의 위치를 나타내는 슬라이스 업데이트 맵을 생성한다(S1502). 전자 장치는 슬라이스 업데이트 맵의 각 슬라이스의 높이 및 폭에 대한 정보를 함께 생성할 수 있다.First, the electronic device generates a slice update map indicating the position of at least one update slice having a data change in frame data including a plurality of slices (S1502). The electronic device may generate information about the height and width of each slice of the slice update map.
다음으로 전자 장치는 슬라이스 업데이트 맵에 기초하여, 프레임 데이터가 저장된 메모리로부터 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출한다(S1504). 전자 장치는 업데이트 슬라이스 맵에 기초하여, 메모리 액세스 주소를 결정하고, 업데이트 슬라이스에 해당하는 프레임 데이터를 추출한다.Next, the electronic device extracts frame data of at least one update slice from the memory where the frame data is stored, based on the slice update map (S1504). The electronic device determines the memory access address based on the update slice map and extracts the frame data corresponding to the update slice.
다음으로 전자 장치는 추출된 업데이트 슬라이스의 프레임 데이터를 디스플레이 구동부로 전송한다(S1506). 일 실시 예에 따르면, 전자 장치는 추출된 프레임 데이터에 대한 영상 처리를 수행하고, 직렬 전송을 위한 데이터 스트림을 생성하여 생성된 데이터 스트림을 디스플레이 구동부로 전송한다. 디스플레이 구동부로 전송되는 데이터 스트림은 MIPI DCS 형식으로 생성될 수 있다. 또한 데이터 스트림은 서브 블록 또는 슬라이스 단위로 직렬 전송될 수 있다.Next, the electronic device transmits the frame data of the extracted update slice to the display driver (S1506). According to one embodiment, the electronic device performs image processing on the extracted frame data, generates a data stream for serial transmission, and transmits the generated data stream to a display driver. The data stream transmitted to the display driver may be generated in the MIPI DCS format. The data stream may also be serially transmitted on a subblock or slice basis.
도 16은 일 실시 예에 따른 디스플레이 구동 장치(310b)의 구조를 나타낸 블록도이다.16 is a block diagram showing a structure of a
일 실시 예에 따르면 디스플레이 구동 장치(310b)는 전자 장치(100b)에 일체로 구비될 수 있다. 다른 실시 예에 따르면, 디스플레이 구동 장치(310b)는 전자 장치와 별개로 구비된 디스플레이 장치에 디스플레이 패널과 함께 구비될 수 있다. 디스플레이 구동 장치(310b)는 DDI라고도 불리는 유닛으로, 디스플레이 패널에 디스플레이 데이터를 제공하고, 디스플레이 패널을 구동한다. 도 16에서는 디스플레이 구동 장치(310b)가 도 1에 도시된 전자 장치(100a)와 연결된 실시 예를 중심으로 설명하지만, 본 개시의 실시 예가 이에 한정되는 것은 아니다.According to one embodiment, the
일 실시 예에 따른 디스플레이 구동 장치(310b)는 수신부(1610), 처리부(1620), 및 프레임 메모리(1630)를 포함한다.The
수신부(1610)는 전자 장치(100a)로부터 디스플레이 데이터를 전송하는 데이터 스트림을 수신한다. 일 실시 예에 따르면, 수신부(1610)는 서브 블록 단위 또는 슬라이스 단위로 직렬 전송되는 데이터 스트림을 수신한다. Receiving
일 실시 예에 따르면, 수신부(1610)는 MIPI DCS 데이터 스트림을 수신한다. 수신부(1610)는 예를 들면 도 3에 도시된 바와 같이, MIPI 얼라이언스에 따른 DPHY일 수 있다. 본 실시 예에 따르면, 수신부(1610)는 MIPI DCS 데이터 스트림의 CASET 및 PASET에 정의된 주소에 따라, 2Ch 및 3Ch 영역에 기재된 명령을 실행하여 프레임 메모리(1630)에 저장된 디스플레이 데이터를 업데이트할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 수신부(1610)는 서브 블록 단위로 업데이트 서브 블록의 디스플레이 데이터를 수신하고, 디스플레이 데이터와 함께 서브 블록의 시작 점의 위치에 대한 정보와 끝 점의 위치에 대한 정보를 수신한다. 또한 수신부(1610)는 서브 블록의 시작 점의 위치에 대한 정보와 끝 점의 위치에 대한 정보를 이용하여, 프레임 메모리(1630)에서 서브 블록의 위치에 대응하는 주소에 액세스하여 디스플레이 데이터를 업데이트한다.According to one embodiment, the receiving
프레임 메모리(1630)는 디스플레이 데이터를 저장한다. 일 실시 예에 따르면, 프레임 메모리(1630)는 한 프레임의 디스플레이 데이터를 저장할 수 있다. 따라서 프레임 메모리(1630)에 예상 시간보다 디스플레이 데이터가 빠르게 기록되거나 늦게 기록되면, 테어링 현상이 발생할 수 있다. 프레임 메모리는 앞서 도 3에서 설명한 실시 예와 같이 GRAM의 형태로 구현될 수 있다. 일 실시 예에 따르면, 프레임 메모리는 DSC 스탠다드에 따라 인코딩된 형태로 디스플레이 데이터를 저장할 수 있다.The
처리부(1620)는 디스플레이 구동 장치(310b)의 전반적인 동작을 제어한다. 일 실시 예에 따르면, 디스플레이 구동 장치(310b)는 DSC 스탠다드에 따라 인코딩된 디스플레이 데이터를 디코딩하여, 디스플레이 패널로 출력할 수 있다.The
도 17은 일 실시 예에 따른 디스플레이 구동 방법을 설명한 흐름도이다.17 is a flowchart illustrating a display driving method according to an embodiment.
개시된 실시 예들에 따른 디스플레이 구동 방법은, 프로세서 및 메모리를 포함하는 다양한 전자 장치에 의해 수행될 수 있다. 본 개시에서는 도 3 및 도 16에 개시된 실시 예에 따른 디스플레이 구동부 또는 디스플레이 구동 장치에서 디스플레이 구동 방법을 수행하는 실시 예를 중심으로 설명하지만, 본 개시의 실시 예들이 이러한 실시 예로 한정되는 것은 아니다. 또한, 도 1 내지 16을 이용하여 설명한 디스플레이 구동부 및 디스플레이 구동 장치에 대한 실시 예들은 디스플레이 구동 방법들에 적용될 수 있고, 디스플레이 구동 방법에 대한 실시 예들은 디스플레이 구동부 또는 디스플레이 구동 장치에 대한 실시 예들에 적용될 수 있다.The display driving method according to the disclosed embodiments can be performed by various electronic devices including a processor and a memory. In this disclosure, the display driving method or the display driving method according to the embodiment disclosed in FIGS. 3 and 16 will be described. However, the embodiments of the present disclosure are not limited to these embodiments. In addition, the embodiments of the display driver and the display driver described with reference to Figs. 1 to 16 can be applied to the display driving methods, and the embodiments of the display driving method can be applied to the embodiments of the display driver or the display driver .
디스플레이 구동 장치는 데이터 변화가 있는 적어도 하나의 서브 블록에 대해, 서브 블록 단위로, 업데이트 서브 블록의 시작 점의 위치, 업데이트 서브 블록의 끝 점의 위치, 및 디스플레이 데이터를 포함하는 직렬 전송 신호를 수신한다(S1702). 앞서 설명한 바와 같이, 직렬 전송 신호는 서브 블록 단위로 직렬 전송될 수 있고, MIPI DCS 데이터 스트림일 수 있다.The display driving device receives, in units of subblocks, at least one subblock having a data change, the serial transmission signal including the position of the start point of the updated subblock, the position of the end point of the updated subblock, (S1702). As described above, the serial transmission signal can be transmitted serially in units of subblocks, and can be a MIPI DCS data stream.
다음으로 디스플레이 구동 장치는 수신된 적어도 하나의 서브 블록에 대한 디스플레이 데이터를 이용하여 프레임 메모리에 저장된 디스플레이 데이터를 업데이트한다(S1704). 디스플레이 구동 장치는 업데이트 서브 블록의 시작 점의 위치, 끝 점의 위치에 대한 정보를 이용하여, 프레임 메모리에서 업데이트 서브 블록의 디스플레이 데이터를 업데이트할 수 있다.Next, the display driver updates the display data stored in the frame memory using the display data of at least one sub-block received (S1704). The display driving apparatus can update the display data of the updated sub-block in the frame memory by using information on the position of the start point and the end point of the update sub-block.
다음으로 디스플레이 구동 장치는 프레임 메모리에 저장된 디스플레이 데이터를 디스플레이 패널로 출력한다(S1706). 일 실시 예에 따르면 프레임 메모리에 디스플레이 데이터가 DSC 스탠다드에 따라 인코딩된 상태로 저장되고, 디스플레이 구동 장치는 소정의 타이밍에 따라 디스플레이 데이터를 디코딩하여 디스플레이 패널로 출력할 수 있다.Next, the display driving apparatus outputs the display data stored in the frame memory to the display panel (S1706). According to one embodiment, the display data is stored in the frame memory in a state encoded in accordance with the DSC standard, and the display driving apparatus can decode the display data at a predetermined timing and output the decoded display data to the display panel.
이상에서와 같이 도면과 명세서에서 예시적인 실시 예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시 예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, exemplary embodiments have been disclosed in the drawings and specification. Although the embodiments have been described herein with reference to specific terms, it should be understood that they have been used only for the purpose of describing the technical idea of the present disclosure and not for limiting the scope of the present disclosure as defined in the claims . Therefore, those skilled in the art will appreciate that various modifications and equivalent embodiments are possible without departing from the scope of the present invention. Accordingly, the true scope of protection of the present disclosure should be determined by the technical idea of the appended claims.
Claims (20)
상기 슬라이스 업데이트 맵에 기초하여, 상기 프레임 데이터가 저장된 메모리로부터 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출하여 디스플레이 구동부로 전송하는 디스플레이 컨트롤러를 포함하는 전자 장치.A processor for generating a slice update map indicating the location of at least one update slice with a data change in frame data comprising a plurality of slices; And
And a display controller for extracting frame data of the at least one update slice from a memory in which the frame data is stored based on the slice update map and transmitting the extracted frame data to the display driver.
상기 프로세서는, 상기 슬라이스 업데이트 맵, 슬라이스 폭, 및 슬라이스 높이에 대한 정보를 상기 디스플레이 컨트롤러로 출력하는, 전자 장치.The method according to claim 1,
Wherein the processor outputs information on the slice update map, slice width, and slice height to the display controller.
상기 디스플레이 컨트롤러는, 상기 슬라이스 업데이트 맵에 기초하여, 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터에 대해 색좌표 변환, 화질 개선 처리, 및 블렌딩 중 적어도 하나의 처리를 수행하는, 전자 장치.The method according to claim 1,
Wherein the display controller performs at least one of processing of converting color coordinates, image quality improvement processing, and blending on frame data of the at least one update slice based on the slice update map.
상기 디스플레이 컨트롤러는, 상기 적어도 하나의 업데이트 슬라이스를 적어도 하나의 서브 블록으로 분할하고, 서브 블록 단위로, 서브 블록의 위치에 대한 정보 및 디스플레이 데이터를 상기 디스플레이 구동부로 전송하고,
상기 적어도 하나의 서브 블록은, 업데이트 슬라이스로 이루어진 사각형 모양을 갖도록 정의되는, 전자 장치.The method according to claim 1,
The display controller divides the at least one update slice into at least one sub-block, transmits information on the position of the sub-block and display data to the display driver in units of sub-blocks,
Wherein the at least one sub-block is defined to have a rectangular shape comprising update slices.
상기 디스플레이 컨트롤러는, 디스플레이 데이터를 서브 블록 단위로 상기 디스플레이 구동부로 직렬 전송하는, 전자 장치.5. The method of claim 4,
Wherein the display controller serially transmits display data to the display driver in units of subblocks.
상기 디스플레이 컨트롤러는, 상기 적어도 하나의 서브 블록에 대해, 서브 블록 단위로, 서브 블록의 시작 점의 위치, 서브 블록의 끝 점의 위치, 및 디스플레이 데이터를 포함하는 직렬 전송 신호를 상기 디스플레이 구동부로 전송하는, 전자 장치.5. The method of claim 4,
The display controller transmits, to the display driver, a serial transmission signal including a position of a start point of a sub-block, a position of an end point of the sub-block, and display data in units of sub-blocks for the at least one sub-block Electronic device.
상기 디스플레이 컨터롤러는, 슬라이스 폭 및 높이에 대한 정보를 상기 디스플레이 구동부로 전송하고, 슬라이스 단위로, 슬라이스 위치에 대한 정보 및 디스플레이 데이터를 상기 디스플레이 구동부로 전송하는, 전자 장치.The method according to claim 1,
Wherein the display controller transmits information on the slice width and height to the display driver and transmits information on the slice position and display data to the display driver on a slice basis.
상기 디스플레이 컨트롤러는, 프레임이 전환될 때마다 프레임의 시작을 알리는 TE 신호를 상기 디스플레이 구동부로 전송하는, 전자 장치.The method according to claim 1,
Wherein the display controller transmits a TE signal to the display driver notifying the start of a frame each time a frame is switched.
상기 디스플레이 컨트롤러는, 상기 TE 신호를 프레임 전환 시점보다 적어도 하나의 슬라이스 높이만큼 앞당겨서 상기 디스플레이 구동부로 전송하는, 전자 장치.9. The method of claim 8,
Wherein the display controller transmits the TE signal to the display driver by advancing at least one slice height from the frame switching point.
상기 디스플레이 컨트롤러는, 상기 적어도 하나의 업데이트 슬라이스의 디스플레이 데이터의 전송 시점이 예측 시간보다 빠른 경우, 디스플레이 데이터의 전송을 홀딩(holding)하는, 전자 장치.The method according to claim 1,
Wherein the display controller holds a transmission of display data when a transmission time of display data of the at least one update slice is faster than a predicted time.
상기 디스플레이 컨트롤러는, 상기 적어도 하나의 업데이트 슬라이스를 적어도 하나의 서브 블록으로 분할하고, 서브 블록 단위로 상기 디스플레이 데이터를 상기 디스플레이 구동부로 전송하고,
상기 디스플레이 구동부는 래스터 스캔(raster scan) 방식으로 영상을 표시하고,
상기 서브 블록은 가로 길이가 가능한 길게 설정되도록 정의되는, 전자 장치.The method according to claim 1,
Wherein the display controller divides the at least one update slice into at least one sub-block, transmits the display data to the display driver in units of sub-blocks,
The display driver displays an image in a raster scan mode,
Wherein the sub-block is defined such that the transverse length is set as long as possible.
상기 디스플레이 구동부는, 프레임 단위로 디스플레이 데이터를 저장하는 프레임 메모리를 포함하는, 전자 장치.The method according to claim 1,
Wherein the display driver includes a frame memory for storing display data on a frame-by-frame basis.
상기 프로세서는, 프레임 데이터에서 데이터 변화가 있는 위치에 기초하여 업데이트 슬라이스 개수를 감소시키도록 상기 복수의 슬라이스를 설정하는, 전자 장치.The method according to claim 1,
Wherein the processor sets the plurality of slices to reduce the number of update slices based on the location of the data change in the frame data.
상기 디스플레이 컨트롤러는 슬라이스 단위 또는 복수의 슬라이스를 포함하는 서브 블록 단위로, MIPI(Mobile Industry Processor Interface) 얼라이언스 방식에 따라 상기 디스플레이 데이터를 상기 디스플레이 구동부로 전송하는, 전자 장치.The method according to claim 1,
Wherein the display controller transmits the display data to the display driver in units of slices or a sub-block including a plurality of slices in accordance with a Mobile Industry Processor Interface (MIPI) alliance method.
상기 슬라이스 업데이트 맵에 기초하여, 상기 프레임 데이터가 저장된 메모리로부터 상기 적어도 하나의 업데이트 슬라이스의 프레임 데이터를 추출하여 디스플레이 구동부로 전송하는 단계를 포함하는 전자 장치 제어 방법.Generating a slice update map indicating a location of at least one update slice with a data change in frame data comprising a plurality of slices; And
Extracting frame data of the at least one update slice from a memory in which the frame data is stored based on the slice update map, and transmitting the extracted frame data to the display driver.
상기 슬라이스 업데이트 맵, 슬라이스 폭, 및 슬라이스 높이에 대한 정보를 상기 디스플레이 컨트롤러로 출력하는 단계를 더 포함하는, 전자 장치 제어 방법.16. The method of claim 15,
And outputting information on the slice update map, slice width, and slice height to the display controller.
디스플레이 데이터를 저장하고, 상기 수신된 적어도 하나의 서브 블록에 대한 디스플레이 데이터를 이용하여, 상기 저장된 디스플레이 데이터를 업데이트하는 프레임 메모리; 및
상기 디스플레이 데이터를 디스플레이 패널로 출력하는 처리부를 포함하는 디스플레이 구동 장치.A receiving unit for receiving, in units of sub-blocks, at least one sub-block with a data change, the serial transmission signal including the position of the start point of the updated sub-block, the position of the end point of the updated sub-block, and display data;
A frame memory for storing display data and updating the stored display data using display data for the received at least one sub-block; And
And a processing unit for outputting the display data to a display panel.
상기 직렬 전송 신호는, 프레임 전환 시 삽입되는 TE 신호 및 적어도 하나의 업데이트 서브 블록 유닛을 포함하고,
각각의 상기 적어도 하나의 업데이트 서브 블록 유닛은, 업데이트 서브 블록의 시작 점의 위치, 업데이트 서브 블록의 끝 점의 위치, 및 디스플레이 데이터를 포함하는, 디스플레이 구동 장치.18. The method of claim 17,
Wherein the serial transmission signal includes a TE signal inserted at frame switching and at least one update subblock unit,
Wherein each of said at least one update subblock unit comprises a position of a start point of an update subblock, a position of an end point of an update subblock, and display data.
상기 처리부는, 현재 주사 중인 프레임에서 수신된 서브 블록에 해당하는 영역의 영상 주사가 완료되지 않은 경우, 상기 수신된 서브 블록에 해당하는 영역의 영상 주사가 완료될 때까지 상기 프레임 메모리에서 상기 수신된 서브 블록의 업데이트를 지연시키는, 디스플레이 구동 장치.18. The method of claim 17,
Wherein when the image scanning of the area corresponding to the sub-block received in the frame currently being scanned is not completed, the processing unit performs the image scanning in the frame memory until the image scanning of the area corresponding to the received sub- Blocks the update of the sub-blocks.
상기 수신된 적어도 하나의 서브 블록에 대한 디스플레이 데이터를 이용하여 프레임 메모리에 저장된 상기 디스플레이 데이터를 업데이트하는 단계; 및
상기 디스플레이 데이터를 디스플레이 패널로 출력하는 단계를 포함하는 디스플레이 구동 방법.Receiving a serial transmission signal including at least one sub-block with a data change in units of sub-blocks, the position of the start point of the updated sub-block, the position of the end point of the updated sub-block, and the display data;
Updating the display data stored in the frame memory using display data for the received at least one sub-block; And
And outputting the display data to a display panel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/473,071 US10446071B2 (en) | 2016-03-31 | 2017-03-29 | Device and method of using slice update map |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662315939P | 2016-03-31 | 2016-03-31 | |
US62/315,939 | 2016-03-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170113011A true KR20170113011A (en) | 2017-10-12 |
KR102619668B1 KR102619668B1 (en) | 2023-12-29 |
Family
ID=60141194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170003051A KR102619668B1 (en) | 2016-03-31 | 2017-01-09 | Apparatus and method of using a slice update map |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102619668B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022191409A1 (en) * | 2021-03-12 | 2022-09-15 | 삼성전자 주식회사 | Electronic device and control method therefor |
KR20220129573A (en) * | 2020-01-08 | 2022-09-23 | 컴파운드 포토닉스 유.에스. 코퍼레이션 | Systems and methods for updating an image displayed on a display device |
US11514831B2 (en) | 2018-02-23 | 2022-11-29 | Samsung Electronics Co., Ltd. | Electronic device and method for controlling storage of content displayed on display panel |
KR20220158820A (en) * | 2020-04-08 | 2022-12-01 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Liquid crystal-on-silicon loading device, liquid-crystal-on-silicon component, and liquid-crystal-on-silicon modulation method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130133370A (en) * | 2012-05-29 | 2013-12-09 | 주식회사 코아로직 | Method and apparatus for image processing |
KR20140113219A (en) * | 2013-03-15 | 2014-09-24 | 삼성전자주식회사 | System on chip and method of operating display system having the same |
US20140362098A1 (en) * | 2013-06-10 | 2014-12-11 | Sharp Laboratories Of America, Inc. | Display stream compression |
KR20160031374A (en) * | 2014-09-12 | 2016-03-22 | 삼성전자주식회사 | SoC device, display driver and SoC system comprising the same |
-
2017
- 2017-01-09 KR KR1020170003051A patent/KR102619668B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130133370A (en) * | 2012-05-29 | 2013-12-09 | 주식회사 코아로직 | Method and apparatus for image processing |
KR20140113219A (en) * | 2013-03-15 | 2014-09-24 | 삼성전자주식회사 | System on chip and method of operating display system having the same |
US20140362098A1 (en) * | 2013-06-10 | 2014-12-11 | Sharp Laboratories Of America, Inc. | Display stream compression |
KR20160031374A (en) * | 2014-09-12 | 2016-03-22 | 삼성전자주식회사 | SoC device, display driver and SoC system comprising the same |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11514831B2 (en) | 2018-02-23 | 2022-11-29 | Samsung Electronics Co., Ltd. | Electronic device and method for controlling storage of content displayed on display panel |
KR20220129573A (en) * | 2020-01-08 | 2022-09-23 | 컴파운드 포토닉스 유.에스. 코퍼레이션 | Systems and methods for updating an image displayed on a display device |
KR20220158820A (en) * | 2020-04-08 | 2022-12-01 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Liquid crystal-on-silicon loading device, liquid-crystal-on-silicon component, and liquid-crystal-on-silicon modulation method |
WO2022191409A1 (en) * | 2021-03-12 | 2022-09-15 | 삼성전자 주식회사 | Electronic device and control method therefor |
Also Published As
Publication number | Publication date |
---|---|
KR102619668B1 (en) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6560367B2 (en) | Partial Decoding for Arbitrary View Angle and Line Buffer Reduction of Virtual Reality Video | |
WO2014199618A1 (en) | Electronic device and method for video decoding | |
KR102619668B1 (en) | Apparatus and method of using a slice update map | |
US20170221182A1 (en) | Image transformation | |
KR102336179B1 (en) | Video data processing system | |
CN105278904B (en) | Data processing system, method of operating a display controller in a data processing system | |
US10446071B2 (en) | Device and method of using slice update map | |
JP4609568B2 (en) | Data processing apparatus, data processing method, and data processing system | |
US20110010472A1 (en) | Graphic accelerator and graphic accelerating method | |
US20100128045A1 (en) | Display control apparatus, display control method, and program therefor | |
CN102572207A (en) | Color space transformation method suitable for joint photographic experts group (JPEG) image | |
CN110351562A (en) | A kind of 10 bit YUV image storage formats | |
CN107154246B (en) | Data processing system and method of operating a data processing system | |
US9888250B2 (en) | Techniques for image bitstream processing | |
JP2008228242A (en) | Video reproducing device | |
CN110930480B (en) | Method for directly rendering startup animation video of liquid crystal instrument | |
CN114697555A (en) | Image processing method, device, equipment and storage medium | |
KR102247741B1 (en) | An image processor, a method of operating the image processor, and an application processor including the image processor | |
US20060098031A1 (en) | System and method for effectively performing image rotation procedures in a compressed domain | |
US20060170708A1 (en) | Circuits for processing encoded image data using reduced external memory access and methods of operating the same | |
US20040213467A1 (en) | Image processing apparatus | |
JPH0488749A (en) | Picture processor | |
US11863786B2 (en) | Method of transporting a framebuffer | |
WO2023087827A1 (en) | Rendering method and apparatus | |
JP2001195569A (en) | Image data compression and control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |