KR102263319B1 - Display Controller for improving display noise and System including the same - Google Patents

Display Controller for improving display noise and System including the same Download PDF

Info

Publication number
KR102263319B1
KR102263319B1 KR1020150015449A KR20150015449A KR102263319B1 KR 102263319 B1 KR102263319 B1 KR 102263319B1 KR 1020150015449 A KR1020150015449 A KR 1020150015449A KR 20150015449 A KR20150015449 A KR 20150015449A KR 102263319 B1 KR102263319 B1 KR 102263319B1
Authority
KR
South Korea
Prior art keywords
data
lines
display
display device
controller
Prior art date
Application number
KR1020150015449A
Other languages
Korean (ko)
Other versions
KR20160094175A (en
Inventor
김보영
김민철
박홍식
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150015449A priority Critical patent/KR102263319B1/en
Priority to US15/006,157 priority patent/US10255890B2/en
Priority to TW105102925A priority patent/TWI697888B/en
Priority to CN201610065336.5A priority patent/CN105843567B/en
Publication of KR20160094175A publication Critical patent/KR20160094175A/en
Application granted granted Critical
Publication of KR102263319B1 publication Critical patent/KR102263319B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control 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/2092Details 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/2096Details of the interface to the display terminal specific for a flat panel
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • G09G5/008Clock recovery
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/127Updating a frame memory using a transfer of data from a source area to a destination area
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/04Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/16Use of wireless transmission of display information

Abstract

디스플레이 잡음을 개선하는 디스플레이 컨트롤러 및 상기 디스플레이 컨트롤러를 포함하는 전자 시스템이 개시된다. 본 발명에 따른 디스플레이 컨트롤러는 M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 메모리, 디스플레이 장치로 전송되는 데이터의 사이즈를 가변적으로 조절하는 데이터 사이즈 컨트롤러, 및 상기 메모리로부터 상기 데이터 사이즈에 상응하는 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 구동 회로를 포함한다.A display controller for improving display noise and an electronic system including the display controller are disclosed. The display controller according to the present invention includes a memory for storing frame data including line data of M (an integer greater than or equal to 2), and a data size controller for variably adjusting the size of data transmitted to the display device. and a display driving circuit for reading data corresponding to the data size from the memory and transmitting the data to the display device.

Description

디스플레이 잡음을 개선하는 디스플레이 컨트롤러, 및 상기 디스플레이 컨트롤러를 포함하는 시스템{Display Controller for improving display noise and System including the same}Display Controller for improving display noise and System including the same

본 발명의 개념은 디스플레이 잡음을 개선하는 장치, 및 상기 장치를 포함하는 시스템에 관한 것으로, 보다 상세하게는 MIPI DSI COMMAND MODE인터페이스를 지원하는 디스플레이 장치의 디스플레이 잡음을 개선하기 위한 디스플레이 컨트롤러, 및 이를 포함하는 시스템에 관한 것이다.The concept of the present invention relates to a device for improving display noise, and a system including the device, and more particularly, to a display controller for improving display noise of a display device supporting a MIPI DSI COMMAND MODE interface, and including the same It's about a system that

고 해상도 디스플레이 장치(High resolution display)를 장착한 기기(예컨대, 스마트폰, 태블릿 PC 등)의 사용이 증대되고 있다. 이러한 기기에서는 디스플레이의 품질이 큰 이유가 되고 있다. 따라서, 디스플레이 잡음을 줄이려는 노력들이 지속되고 있다.The use of devices (eg, smart phones, tablet PCs, etc.) equipped with a high resolution display device is increasing. In these devices, the quality of the display is a big reason. Accordingly, efforts are being made to reduce display noise.

한편, 모바일 기기의 시스템 온 칩(SoC)과 디스플레이 장치 간의 데이터 전송 방식으로서, MIPI DSI 전송방식을 이용하는 장치의 사용이 증대되었다. Meanwhile, as a data transmission method between a system-on-chip (SoC) of a mobile device and a display device, the use of a device using the MIPI DSI transmission method has increased.

MIPI DSI 표준은 라인(line) 단위의 이미지 데이터 전송을 기본으로 하고 있으며, 이로 인해 라인 간의 아이들 구간(Idle Period, 또는 Stop State)로 인해 데이터 레인이 정지(스톱)되어 있는 구간이 필연적으로 존재하게 된다. 이러한 경우 디스플레이 패널의 전원 잡음이 MIPI DSI 수신측의 데이터 레인과 연동하여 디스플레이 패널의 출력에 잡음을 만들어 내는 문제점이 있다.The MIPI DSI standard is based on line-unit image data transmission, so there is inevitably a section in which the data lane is stopped due to the idle period (or Stop State) between lines. do. In this case, there is a problem in that the power noise of the display panel generates noise at the output of the display panel in association with the data lane of the MIPI DSI receiving side.

본 발명이 이루고자 하는 기술적인 과제는 디스플레이 잡음을 줄여 디스플레이 품질을 개선하는 디스플레이 컨트롤러 및 이를 포함하는 시스템을 제공하는 것이다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a display controller that improves display quality by reducing display noise and a system including the same.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따르면, 디스플레이 장치를 제어하는 디스플레이 컨트롤러가 제공된다. 상기 디스플레이 컨트롤러는 M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 메모리; 상기 디스플레이 장치로 전송되는 데이터의 사이즈를 가변적으로 조절하는 데이터 사이즈 컨트롤러; 및 상기 메모리로부터 상기 데이터 사이즈에 상응하는 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 구동 회로를 포함한다.According to an embodiment of the present invention for achieving the above technical problem, there is provided a display controller for controlling a display device. The display controller may include: a memory for storing frame data including line data of M (an integer greater than or equal to 2); a data size controller for variably adjusting the size of data transmitted to the display device; and a display driving circuit for reading data corresponding to the data size from the memory and transmitting the data to the display device.

실시예에 따라, 상기 데이터 사이즈 컨트롤러는 최대 라인수를 저장하는 레지스터; 및 상기 최대 라인수를 초과하지 않는 범위에서 랜덤하게 지정 라인수를 가변하는 랜덤 라인 생성기를 포함하며, 상기 디스플레이 구동 회로는 상기 랜덤 라인 생성기의 지정 라인수에 따라 상기 메모리로부터 라인 데이터를 독출하여 상기 디스플레이 장치로 전송할 수 있다. According to an embodiment, the data size controller includes: a register for storing the maximum number of lines; and a random line generator for randomly varying a designated number of lines within a range not exceeding the maximum number of lines, wherein the display driving circuit reads line data from the memory according to the designated number of lines of the random line generator to obtain the can be transmitted to the display device.

실시예에 따라, 상기 디스플레이 구동 회로는 아이들 구간에서는 상기 라인 데이터를 전송하지 않으며, 데이터 전송 구간에서 상기 지정 라인수에 상응하는 라인 데이터를 전송하며, 상기 데이터 전송 구간의 듀레이션은 상기 지정 라인수에 따라 가변될 수 있다.According to an embodiment, the display driving circuit does not transmit the line data in the idle period, and transmits line data corresponding to the specified number of lines in the data transmission period, and the duration of the data transmission period is based on the specified number of lines. may vary accordingly.

실시예에 따라, 상기 레지스터는 모드 설정 신호를 더 저장하며, 상기 모드 설정 신호가 제1값으로 설정된 경우에는 상기 지정 라인수는 가변되고, 상기 모드 설정 신호가 제2값으로 설정된 경우에는 상기 지정 라인수는 고정(fix)될 수 있다.According to an embodiment, the register further stores a mode setting signal, and when the mode setting signal is set to a first value, the number of specified lines is variable, and when the mode setting signal is set to a second value, the specified The number of lines may be fixed.

실시예에 따라, 상기 데이터 사이즈 컨트롤러는 미리 정해진 복수의 난수열(random number sequence)을 저장하는 패턴 저장부; 상기 패턴 저장부에 저장된 상기 복수의 난수열을 이용하여 랜덤 패턴을 생성하는 패턴 생성기; 및 상기 랜덤 패턴에 따라, 상기 데이터의 사이즈를 결정하는 데이터 사이즈 결정부를 포함할 수 있다.According to an embodiment, the data size controller may include: a pattern storage unit configured to store a plurality of predetermined random number sequences; a pattern generator for generating a random pattern by using the plurality of random number sequences stored in the pattern storage unit; and a data size determining unit that determines the size of the data according to the random pattern.

실시예에 따라, 상기 패턴 생성기는 상기 복수의 난수열을 랜덤하게 섞어(shuffle), 상기 랜덤 패턴을 생성할 수 있다.According to an embodiment, the pattern generator may randomly shuffle the plurality of random number sequences to generate the random pattern.

실시예에 따라, 상기 데이터 사이즈 결정부는 모드 설정 신호에 응답하여 상기 데이터의 사이즈를 상기 랜덤 패턴에 따라 가변할 수 있다.In some embodiments, the data size determiner may vary the size of the data according to the random pattern in response to a mode setting signal.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따르면, 디스플레이 장치; 및 상기 디스플레이 장치를 제어하는 디스플레이 컨트롤러를 포함하는 전자 시스템이 제공된다. 상기 디스플레이 컨트롤러는 M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 메모리; 상기 디스플레이 장치로 전송되는 데이터의 사이즈를 가변적으로 조절하는 데이터 사이즈 컨트롤러; 및, 상기 메모리로부터 상기 데이터 사이즈에 상응하는 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 구동 회로를 포함한다.According to an embodiment of the present invention for achieving the above technical problem, a display device; and a display controller configured to control the display device. The display controller may include: a memory for storing frame data including line data of M (an integer greater than or equal to 2); a data size controller for variably adjusting the size of data transmitted to the display device; and a display driving circuit for reading data corresponding to the data size from the memory and transmitting the data to the display device.

실시예에 따라, 상기 데이터 사이즈 컨트롤러는 최대 라인수를 저장하는 레지스터; 및 상기 최대 라인수를 초과하지 않는 범위에서 랜덤하게 지정 라인수를 가변하는 랜덤 라인 생성기를 포함하며, 상기 디스플레이 구동 회로는 상기 랜덤 라인 생성기의 지정 라인수에 따라 상기 메모리로부터 라인 데이터를 독출하여 상기 디스플레이 장치로 전송할 수 있다.According to an embodiment, the data size controller includes: a register for storing the maximum number of lines; and a random line generator for randomly varying a designated number of lines within a range not exceeding the maximum number of lines, wherein the display driving circuit reads line data from the memory according to the designated number of lines of the random line generator to obtain the can be transmitted to the display device.

실시예에 따라, 상기 레지스터는 모드 설정 신호를 더 저장하며, 상기 모드 설정 신호가 제1값으로 설정된 경우에는 상기 지정 라인수는 가변되고, 상기 모드 설정 신호가 제2값으로 설정된 경우에는 상기 지정 라인수는 고정될 수 있다.According to an embodiment, the register further stores a mode setting signal, and when the mode setting signal is set to a first value, the number of specified lines is variable, and when the mode setting signal is set to a second value, the specified The number of lines may be fixed.

상기 모드 설정 신호가 제1값으로 설정된 경우 상기 디스플레이 장치에 발생하는 파워 노이즈는 상기 모드 설정 신호가 제2값으로 설정된 경우에 상기 디스플레이 장치에 발생하는 파워 노이즈 보다 작을 수 있다.When the mode setting signal is set to the first value, power noise generated in the display device may be smaller than power noise generated in the display device when the mode setting signal is set to the second value.

실시예에 따라, 상기 디스플레이 구동 회로는 상기 메모리에 저장된 상기 프레임 데이터를 MIPI®(Mobile Industry Processor Interface) 표준에 따른 신호로 변환하고, 변환된 신호를 상기 디스플레이 장치로 전송할 수 있고, 상기 디스플레이 컨트롤러는 MIPI DSI COMMAND MODE에서 동작할 수 있다.According to an embodiment, the display driving circuit may convert the frame data stored in the memory into a signal according to a MIPI ® (Mobile Industry Processor Interface) standard, and transmit the converted signal to the display device, wherein the display controller includes It can operate in MIPI DSI COMMAND MODE.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따르면, 디스플레이 장치를 제어하는 디스플레이 컨트롤러의 동작 방법에 있어서, M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 단계; 상기 디스플레이 장치로 전송할 라인 데이터의 수를 지정하는 라인수를 가변적으로 조절하는 단계; 및 상기 메모리로부터 상기 가변되는 라인수에 따라 라인 데이터를 독출하여 상기 디스플레이 장치로 전송하는 단계를 포함하는 디스플레이 컨트롤러의 동작 방법이 제공된다. According to an embodiment of the present invention for achieving the above technical problem, in an operating method of a display controller for controlling a display device, frame data including line data of M (an integer greater than or equal to 2) ) to store; variably adjusting the number of lines designating the number of line data to be transmitted to the display device; and reading line data from the memory according to the variable number of lines and transmitting the line data to the display device.

실시예에 따라, 상기 라인수를 가변적으로 조절하는 단계는 상기 프레임 데이터의 전송을 시작하기 전에, 상기 프레임 데이터 전체에 대한 데이터 사이즈 시퀀스를 결정하는 단계를 포함하고, 상기 데이터 사이즈 시퀀스는 복수의 라인수로 구성되는 숫자열일 수 있다.According to an embodiment, the step of variably adjusting the number of lines includes determining a data size sequence for the entire frame data before starting transmission of the frame data, wherein the data size sequence includes a plurality of lines. It may be a numeric string consisting of numbers.

실시예에 따라, 상기 라인수를 가변적으로 조절하는 단계는 매 데이터 전송 구간에 대한 라인수를 결정하는 단계를 포함하고, 상기 디스플레이 장치로 전송하는 단계는 상기 데이터 전송 구간 동안에 상기 결정된 라인수의 라인 데이터를 상기 디스플레이 장치로 전송하는 단계를 포함하며, 상기 데이터 전송 구간과 교대로 반복되는 아이들 구간 동안에는 라인 데이터가 전송되지 않을 수 있다.According to an embodiment, the step of variably adjusting the number of lines includes determining the number of lines for each data transmission section, and the step of transmitting to the display device includes the determined number of lines during the data transmission section. and transmitting data to the display device. Line data may not be transmitted during an idle period alternately repeated with the data transmission period.

상술한 바와 같이, 본 발명의 일 실시예에 따르면, 각 데이터 전송 구간에서 전송되는 라인 데이터의 크기, 즉, 라인수를 가변함으로써, 데이터 전송 구간과 아이들 구간의 간격을 가변하여 디스플레이 장치에서 발생하는 파워 노이즈(Power noise)를 감소시킨다.As described above, according to an embodiment of the present invention, by varying the size, that is, the number of lines, of line data transmitted in each data transmission section, the interval between the data transmission section and the idle section is varied and generated in the display device. Reduces power noise.

이에 따라, 디스플레이 잡음이 줄어들어, 디스플레이 품질 및 디스플레이 장치를 포함하는 기기의 성능이 개선된다.Accordingly, display noise is reduced, and display quality and performance of a device including a display device are improved.

도 1은 MIPI D-PHY 표준에 따른 이미지 데이터의 전송 타이밍도이다.
도 2는 도 1에 도시된 데이터 전송 타이밍에 따른 데이터 레인(data lane)의 신호와 MIPI 클라이언트(예컨대, 디스플레이 장치)에서 발생하는 파워 노이즈를 나타낸다.
도 3은 본 발명의 실시 예에 따른 전자 시스템의 블록도를 나타낸다.
도 4는 도 3에 도시된 SoC의 일 실시예를 나타내는 구성 블럭도이다.
도 5는 도 4에 도시된 디스플레이 컨트롤러의 일 실시예를 나타내는 구성 블록도이다.
도 6은 도 5에 도시된 데이터 사이즈 컨트롤러의 일 실시예를 나타내는 구성 블록도이다.
도 7은 도 5에 도시된 데이터 사이즈 컨트롤러의 다른 실시예를 나타내는 구성 블록도이다.
도 8은 도 7의 패턴 저장부에 저장되는 숫자열 테이블의 일 예를 나타내는 표이다.
도 9는 도 7의 패턴 생성기에서 생성되는 랜덤 패턴의 일 예를 나타내는 표이다.
도 10은 본 발명의 일 실시예에 따른 디스플레이 컨트롤러의 동작 방법을 나타내는 플로우차트이다.
도 11은 본 발명의 다른 실시예에 따른 디스플레이 컨트롤러의 동작 방법을 나타내는 플로우차트이다.
도 12는 도 11에 도시된 랜덤화 단계의 일 실시예를 나타내는 플로우차트이다.
도 13은 본 발명의 일 실시예에 따른 디스플레이 컨트롤러에서 모드 설정 신호에 따른 데이터 전송 타이밍을 비교하여 나타내는 도면이다.
도 14는 본 발명의 다른 실시 예에 따른 전자 시스템의 구성 블록도이다.
1 is a transmission timing diagram of image data according to the MIPI D-PHY standard.
FIG. 2 shows a signal of a data lane according to the data transmission timing shown in FIG. 1 and power noise generated in a MIPI client (eg, a display device).
3 is a block diagram of an electronic system according to an embodiment of the present invention.
FIG. 4 is a configuration block diagram illustrating an embodiment of the SoC shown in FIG. 3 .
FIG. 5 is a configuration block diagram illustrating an embodiment of the display controller shown in FIG. 4 .
6 is a block diagram illustrating an embodiment of the data size controller shown in FIG. 5 .
FIG. 7 is a block diagram showing another embodiment of the data size controller shown in FIG. 5 .
8 is a table illustrating an example of a numeric string table stored in the pattern storage unit of FIG. 7 .
9 is a table illustrating an example of a random pattern generated by the pattern generator of FIG. 7 .
10 is a flowchart illustrating a method of operating a display controller according to an embodiment of the present invention.
11 is a flowchart illustrating a method of operating a display controller according to another embodiment of the present invention.
12 is a flowchart illustrating an embodiment of the randomization step shown in FIG. 11 .
13 is a diagram illustrating comparison of data transmission timing according to a mode setting signal in a display controller according to an embodiment of the present invention.
14 is a block diagram of an electronic system according to another embodiment of the present invention.

본 명세서 또는 출원에 개시되어 있는 본 발명의 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니 된다. Specific structural or functional descriptions of the embodiments of the present invention disclosed in the present specification or application are only exemplified for the purpose of describing the embodiments according to the present invention, and the embodiments according to the present invention may be implemented in various forms. and should not be construed as being limited to the embodiments described in the present specification or application.

본 발명에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Since the embodiment according to the present invention can have various changes and can have various forms, specific embodiments are illustrated in the drawings and described in detail in the present specification or application. However, this is not intended to limit the embodiment according to the concept of the present invention to a specific disclosed form, and should be understood to include all changes, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first and/or second may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one element from another element, for example, without departing from the scope of the present invention, a first element may be called a second element, and similarly The second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. When a component is referred to as being “connected” or “connected” to another component, it is understood that the other component may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is mentioned that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle. Other expressions describing the relationship between elements, such as "between" and "immediately between" or "neighboring to" and "directly adjacent to", etc., should be interpreted similarly.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가가능성을 미리 배제하지 않는 것으로 이해되어야 한다. The terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In this specification, terms such as "comprises" or "have" are intended to designate that the described features, numbers, steps, operations, components, parts, or combinations thereof exist, and include one or more other features or numbers. , it should be understood that it does not preclude the existence or addition of steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as meanings consistent with the context of the related art, and unless explicitly defined in the present specification, they are not to be interpreted in an ideal or excessively formal meaning. .

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. Hereinafter, the present invention will be described in detail by describing preferred embodiments of the present invention with reference to the accompanying drawings. Like reference numerals in each figure indicate like elements.

MIPI®(Mobile Industry Processor Interface)는 프로세서와 주변 장치들 간을 연결하는 시리얼 인터페이스 규격의 하나로서, MIPI 얼라이언스(alliance)에서 제정하는 표준이다. MIPI ® (Mobile Industry Processor Interface) is a standard established by the MIPI Alliance as one of the serial interface standards for connecting a processor and peripheral devices.

MIPI는 두 개의 디스플레이 표준을 지원한다. 하나는 비디오 모드(video mode)이고, 다른 하나는 커맨드 모드(command mode)이다. MIPI supports two display standards. One is a video mode, and the other is a command mode.

도 1은 MIPI D-PHY 표준에 따른 이미지 데이터의 전송 타이밍도이다. 1 is a transmission timing diagram of image data according to the MIPI D-PHY standard.

도 1을 참조하면, MIPI커맨드 모드에서는 MIPI 호스트(예컨대, 디스플레이 컨트롤러)는 라인 단위로 이미지 데이터를 MIPI 클라이언트(예컨대, 디스플레이 장치)로 전송한다. Referring to FIG. 1 , in the MIPI command mode, a MIPI host (eg, a display controller) transmits image data to a MIPI client (eg, a display device) in line units.

도 2는 도 1에 도시된 데이터 전송 타이밍에 따른 데이터 레인(data lane)의 신호와 MIPI 클라이언트(예컨대, 디스플레이 장치)에서 발생하는 파워 노이즈를 나타낸다.FIG. 2 shows a signal of a data lane according to the data transmission timing shown in FIG. 1 and power noise generated in a MIPI client (eg, a display device).

도 1 및 도 2를 참조하면, 데이터 레인의 신호는 이미지 데이터 전송 구간(Trans)과 아이들 구간(Idle)이 규칙적으로 반복될 수 있다. 이에 따라 MIPI 클라이언트(예컨대, 디스플레이 장치)에서 데이터 레인의 신호와 유사한 간격으로 파워 노이즈가 발생할 수 있다. 즉, 도 2에 도시된 바와 같이 아이들 구간(Idle)마다 파워 노이즈가 증가하는 패턴이 발생할 수 있다.1 and 2 , in the signal of the data lane, an image data transmission period Trans and an idle period Idle may be regularly repeated. Accordingly, power noise may be generated in the MIPI client (eg, the display device) at an interval similar to the signal of the data lane. That is, as shown in FIG. 2 , a pattern in which power noise increases every idle period (Idle) may occur.

따라서, 디스플레이 장치에서의 파워 노이즈를 줄여 디스플레이 품질을 개선할 필요가 있다.Accordingly, there is a need to improve display quality by reducing power noise in the display device.

도 3은 본 발명의 실시 예에 따른 반도체 집적회로 장치를 포함하는 전자 시스템의 블록도를 나타낸다. 반도체 집적회로 장치는 시스템 온 칩(SoC; System-on-chip)(10), 또는 어플리케이션 프로세서(AP)로 구현될 수 있다. 도 4는 도 3에 도시된 SoC의 일 실시예를 나타내는 구성 블럭도이다. 3 is a block diagram of an electronic system including a semiconductor integrated circuit device according to an embodiment of the present invention. The semiconductor integrated circuit device may be implemented as a system-on-chip (SoC) 10 or an application processor (AP). FIG. 4 is a configuration block diagram illustrating an embodiment of the SoC shown in FIG. 3 .

도 3 내지 도 4를 참조하면, 전자 시스템(1)은 휴대용 전자 장치로 구현될 수 있다. 상기 휴대용 전자 장치는 랩탑 컴퓨터(laptop computer), 이동 전화기, 스마트 폰(smart phone), 태블릿(tablet) PC, PDA(personal digital assistant), EDA (enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), 모바일 인터넷 장치(mobile internet device(MID), 웨어러블 컴퓨터, 사물 인터넷 (internet of things(IoT)) 장치, 또는 만물 인터넷(internet of everything(IoE)) 장치로 구현될 수 있다.3 to 4 , the electronic system 1 may be implemented as a portable electronic device. The portable electronic device includes a laptop computer, a mobile phone, a smart phone, a tablet PC, a personal digital assistant (PDA), an enterprise digital assistant (EDA), and a digital still camera. , digital video camera, portable multimedia player (PMP), mobile internet device (MID), wearable computer, internet of things (IoT) device, or internet of everything (IoE)) can be implemented as a device.

전자 시스템(1)은 정지 영상 신호(또는 정지 영상) 또는 동영상 신호(또는 동영상)를 디스플레이 패널(25)에서 디스플레이할 수 있다. The electronic system 1 may display a still image signal (or still image) or a moving image signal (or moving image) on the display panel 25 .

디스플레이 장치(20)는 디스플레이 드라이버(21)와 디스플레이 패널(25)을 포함한다. 실시 예에 따라, SoC(10)와 디스플레이 드라이버(21)는 하나의 모듈(module), 하나의 시스템 온 칩(system on chip), 또는 하나의 패키지, 예컨대 멀티-칩 패키지(multi-chip package)로 구현될 수 있다. 다른 실시예에 따라, 디스플레이 드라이버(21)와 디스플레이 패널(25)는 하나의 모듈로 구현될 수 있다.The display device 20 includes a display driver 21 and a display panel 25 . According to an embodiment, the SoC 10 and the display driver 21 may be configured as one module, one system on chip, or one package, for example, a multi-chip package. can be implemented as According to another embodiment, the display driver 21 and the display panel 25 may be implemented as one module.

디스플레이 드라이버(21)는 SoC(10)에서 출력된 신호들에 따라 디스플레이 패널(25)의 동작을 제어한다. 예컨대, 디스플레이 드라이버(21)는 SoC(10)로부터 수신한 이미지 데이터를 선택된 인터페이스를 통하여 출력 영상 신호로서 디스플레이 패널(25)로 전송할 수 있다.The display driver 21 controls the operation of the display panel 25 according to signals output from the SoC 10 . For example, the display driver 21 may transmit image data received from the SoC 10 as an output image signal to the display panel 25 through the selected interface.

디스플레이 패널(25)은 디스플레이 드라이버(21)로부터 출력된 출력 영상 신호를 디스플레이 할 수 있다. 예컨대, 디스플레이 패널(25)은 LCD(liquid crystal display), LED(light emitting diode) 디스플레이, OLED(Organic LED) 디스플레이, 또는 AMOLED(active-matrix OLED) 디스플레이로 구현될 수 있다.The display panel 25 may display an output image signal output from the display driver 21 . For example, the display panel 25 may be implemented as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic LED (OLED) display, or an active-matrix OLED (AMOLED) display.

외부 메모리(30)는 SoC(10)에서 실행되는 프로그램 명령들(program instructions)을 저장한다. 또한, 외부 메모리(30)는 디스플레이 장치(20)에 스틸 이미지들(still images) 또는 무빙 이미지(moving image)를 디스플레이하기 위한 이미지 데이터를 저장할 수 있다. 상기 무빙 이미지는 짧은 시간에 나타나는(presented) 일련의 서로 다른 스틸 이미지들이다. The external memory 30 stores program instructions executed in the SoC 10 . Also, the external memory 30 may store image data for displaying still images or moving images on the display device 20 . The moving image is a series of different still images presented in a short time.

외부 메모리(30)는 휘발성 메모리 또는 불휘발성 메모리일 수 있다. 상기 휘발성 메모리는 DRAM(dynamic random access memory), SRAM(static random access memory), T-RAM(thyristor RAM), Z-RAM(zero capacitor RAM), 또는 TTRAM(Twin Transistor RAM)일 수 있다. 상기 불휘발성 메모리는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시(flash) 메모리, MRAM(Magnetic RAM), PRAM(Phase change RAM), 저항 메모리일 수 있다.The external memory 30 may be a volatile memory or a nonvolatile memory. The volatile memory may be dynamic random access memory (DRAM), static random access memory (SRAM), thyristor RAM (T-RAM), zero capacitor RAM (Z-RAM), or twin transistor RAM (TTRAM). The nonvolatile memory may be an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic RAM (MRAM), a phase change RAM (PRAM), or a resistive memory.

SoC(10)는 외부 메모리(30) 및/또는 디스플레이 장치(20)를 제어한다. 실시 예에 따라 SoC(10)는 집적 회로(integrated circuit(IC)), 프로세서(processor), 어플리케이션 프로세서(application processor), 멀티 미디어 프로세서(multimedia processor), 또는 집적된 멀티 미디어 프로세서(integrated multimedia processor)라고 호칭될 수 있다.The SoC 10 controls the external memory 30 and/or the display device 20 . In some embodiments, the SoC 10 may include an integrated circuit (IC), a processor, an application processor, a multimedia processor, or an integrated multimedia processor. can be called

SoC(10)는 중앙처리장치(central processing unit(CPU); 100), ROM(read only memory; 110), RAM(random access memory; 120), 이미지 처리 프로세서(ISP: image signal processor)(130), 디스플레이 컨트롤러(200), 그래픽 프로세싱 유닛(graphics processing unit(GPU); 150), 메모리 컨트롤러(160), 포스트 프로세서(170), 및 시스템 버스(180)를 포함할 수 있다. SoC(10)는 도시된 구성 요소 이외에 다른 구성 요소들을 더 포함할 수 있다. The SoC 10 includes a central processing unit (CPU) 100 , a read only memory (ROM) 110 , a random access memory (RAM) 120 , and an image signal processor (ISP) 130 . , a display controller 200 , a graphics processing unit (GPU) 150 , a memory controller 160 , a post processor 170 , and a system bus 180 . The SoC 10 may further include other components in addition to the illustrated components.

프로세서(processor)라고도 불릴 수 있는 CPU(100)는 외부 메모리(30)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 예컨대, CPU(100)는 클럭 신호 모듈(미도시)로부터 출력된 동작 클락 신호에 응답하여 상기 프로그램들 및/또는 상기 데이터를 처리 또는 실행할 수 있다.The CPU 100 , which may also be referred to as a processor, may process or execute programs and/or data stored in the external memory 30 . For example, the CPU 100 may process or execute the programs and/or the data in response to an operation clock signal output from a clock signal module (not shown).

CPU(100)는 멀티-코어 프로세서(multi-core processor)로 구현될 수 있다. 상기 멀티-코어 프로세서는 두 개 또는 그 이상의 독립적인 실질적인 프로세서들('코어들(cores)'이라고 불림)을 갖는 하나의 컴퓨팅 컴포넌트(computing component)이고, 상기 프로세서들 각각은 프로그램 명령들(program instructions)을 읽고 실행할 수 있다.The CPU 100 may be implemented as a multi-core processor. The multi-core processor is a computing component having two or more independent substantive processors (referred to as 'cores'), each of which contains program instructions. ) can be read and executed.

CPU(100)는 운영체제(OS; operating system)을 실행한다. 운영체제(OS)는 전자 시스템(1)의 자원(예를 들어, 메모리, 디스플레이 등)을 관리할 수 있다. 운영체제(OS)는 전자 시스템(1)에서 실행되는 어플리케이션들에 자원을 배분할 수 있다. The CPU 100 executes an operating system (OS). The operating system (OS) may manage resources (eg, memory, display, etc.) of the electronic system 1 . The operating system (OS) may allocate resources to applications executed in the electronic system 1 .

ROM(110), RAM(120), 및/또는 외부 메모리(30)에 저장된 프로그램들 및/또는 데이터는 필요에 따라 CPU(100)의 메모리(미도시)에 로드(load)될 수 있다.Programs and/or data stored in the ROM 110 , the RAM 120 , and/or the external memory 30 may be loaded into a memory (not shown) of the CPU 100 as needed.

ROM(110)은 영구적인 프로그램들 및/또는 데이터를 저장할 수 있다. ROM 110 may store persistent programs and/or data.

ROM(110)은 EPROM(erasable programmable read-only memory) 또는 EEPROM (electrically erasable programmable read-only memory)으로 구현될 수 있다.The ROM 110 may be implemented as an erasable programmable read-only memory (EPROM) or an electrically erasable programmable read-only memory (EEPROM).

RAM(120)은 프로그램들, 데이터, 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예컨대, 메모리(110 또는 30)에 저장된 프로그램들 및/또는 데이터는 CPU(100)의 제어에 따라 또는 ROM(110)에 저장된 부팅 코드(booting code)에 따라 RAM(120)에 일시적으로 저장될 수 있다. RAM(120)은 DRAM(dynamic RAM) 또는 SRAM(static RAM)으로 구현될 수 있다.The RAM 120 may temporarily store programs, data, or instructions. For example, programs and/or data stored in the memory 110 or 30 may be temporarily stored in the RAM 120 under the control of the CPU 100 or according to a booting code stored in the ROM 110 . have. The RAM 120 may be implemented as dynamic RAM (DRAM) or static RAM (SRAM).

ISP(130)는 이미지 신호에 대한 각종 처리(processing)를 수행할 수 있다. The ISP 130 may perform various processing on the image signal.

ISP(130)는 이미지 센서(미도시)로부터 입력된 이미지 데이터를 처리할 수 있다. 예컨대, ISP(130)는 이미지 센서로부터 입력된 이미지 데이터의 떨림 보정을 하고, 화이트 밸런스를 맞출 수 있다. The ISP 130 may process image data input from an image sensor (not shown). For example, the ISP 130 may correct the shake of the image data input from the image sensor and adjust the white balance.

또한, ISP(130)는 명도·대비 등의 색 보정, 색조화, 양자화, 다른 색 공간으로의 색 변환 등을 수행할 수 있다. ISP(130)는 영상 처리한 이미지 데이터를 주기적으로 버스(180)를 통해 메모리(30)에 저장할 수 있다.In addition, the ISP 130 may perform color correction such as brightness and contrast, tonalization, quantization, color conversion to another color space, and the like. The ISP 130 may periodically store image-processed image data in the memory 30 through the bus 180 .

GPU(150)는 그래픽 처리와 관련된 프로그램 명령들을 읽고 수행할 수 있다. 예컨대, GPU(150)는 그래픽 관련 도형 처리 등을 고속으로 수행할 수 있다. The GPU 150 may read and execute program commands related to graphic processing. For example, the GPU 150 may perform graphic-related figure processing and the like at high speed.

또한, GPU(150)는 메모리 컨트롤러(160)에 의해 외부 메모리(30)로부터 리드 (read)된 데이터를 디스플레이 디바이스(20)에 적합한 신호로 변환할 수 있다.Also, the GPU 150 may convert data read from the external memory 30 by the memory controller 160 into a signal suitable for the display device 20 .

그래픽 처리를 위해, GPU(150) 외에도 그래픽 엔진(미도시) 또는 그래픽 액셀레이터(Accelerator) 등이 사용될 수 있다. For graphic processing, in addition to the GPU 150 , a graphic engine (not shown) or a graphic accelerator may be used.

포스트 프로세서(post processor, 170)는 이미지나 영상 신호를 출력 장치(예컨대, 디스플레이 장치(20))에 적합한 후처리(post processing)를 수행한다. 포스트 프로세서(170)는, 디스플레이 장치(20)로 출력하기에 적합하도록 이미지의 크기를 확대하거나 축소하거나 또는 이미지를 회전시키는 기능을 수행할 수도 있다.A post processor 170 performs post-processing suitable for an image or video signal to an output device (eg, the display device 20 ). The post processor 170 may perform a function of enlarging or reducing the size of an image or rotating the image to be suitable for output to the display device 20 .

포스트 프로세서(170)는 후처리한 이미지 데이터를 버스(180)를 통해 메모리(30)에 저장하거나, 또는 온-더-플라이(on-the-fly) 방식으로 버스(180)를 통해 직접 디스플레이 컨트롤러(200)로 출력할 수 있다.The post-processor 170 stores the post-processed image data in the memory 30 through the bus 180 or directly through the bus 180 in an on-the-fly manner. (200) can be output.

메모리 컨트롤러(160)는 외부 메모리(30)와 인터페이스한다. 메모리 컨트롤러(160)는 외부 메모리(30)의 동작을 전반적으로 제어하며, 호스트와 외부 메모리(30) 사이의 데이터 교환을 제어한다. 예컨대, 메모리 컨트롤러(160)는 호스트의 요청에 따라 외부 메모리(30)에 데이터를 쓰거나 외부 메모리(30)로부터 데이터를 읽을 수 있다. 여기서, 호스트는 CPU(100), ISP(130), GPU(150), 또는 디스플레이 컨트롤러(200)와 같은 마스터(master) 장치일 수 있다. The memory controller 160 interfaces with the external memory 30 . The memory controller 160 controls the overall operation of the external memory 30 and controls data exchange between the host and the external memory 30 . For example, the memory controller 160 may write data to or read data from the external memory 30 according to a request of the host. Here, the host may be a master device such as the CPU 100 , the ISP 130 , the GPU 150 , or the display controller 200 .

실시예에 따라, 메모리 컨트롤러(160)는 디스플레이 컨트롤러(200)로부터의 이미지 데이터 요청에 따라, 외부 메모리(30)로부터 이미지 데이터를 독출하여 메모리 컨트롤러(160)로 제공할 수 있다.According to an embodiment, the memory controller 160 may read image data from the external memory 30 and provide it to the memory controller 160 according to a request for image data from the display controller 200 .

디스플레이 컨트롤러(200)는 디스플레이 장치(20)의 동작을 제어한다. The display controller 200 controls the operation of the display device 20 .

디스플레이 컨트롤러(200)는 디스플레이 장치(20)를 통해 디스플레이할 이미지 데이터를 시스템 버스(180)를 통하여 수신하고, 이를 디스플레이 장치(20)로 전송하기 위한 신호(예컨대, 인터페이스 규격에 따른 신호)로 변환하여, 상기 디스플레이 장치(20)로 전송한다.The display controller 200 receives image data to be displayed through the display device 20 through the system bus 180 and converts it into a signal (eg, a signal according to the interface standard) for transmission to the display device 20 . Thus, it is transmitted to the display device 20 .

실시예에 따라, 디스플레이 컨트롤러(200)는 MIPI® D-PHY 표준에 따라 디스플레이 장치(20)로 이미지 데이터를 전송할 수 있다.According to an embodiment, the display controller 200 may transmit image data to the display device 20 according to the MIPI ® D-PHY standard.

실시예에 따라, 디스플레이 컨트롤러(200)는 기 설정된 시간 간격으로 메모리 컨트롤러(160)로 프레임 데이터를 요청하여, 프레임 단위로 이미지 데이터를 수신할 수 있다.According to an embodiment, the display controller 200 may request frame data from the memory controller 160 at preset time intervals to receive image data in units of frames.

각 구성 요소(100, 110, 120, 130, 150, 160, 170, 및 200)는 시스템 버스(180)를 통하여 서로 통신할 수 있다. 즉, 시스템 버스(180)는 SoC(10)의 각 구성요소를 연결하여 각 구성요소간 데이터 송수신의 통로 역할을 한다. 또한, 시스템 버스(180)는 각 구성요소간 제어 신호의 전송 통로 역할을 할 수 있다.Each of the components 100 , 110 , 120 , 130 , 150 , 160 , 170 , and 200 may communicate with each other via the system bus 180 . That is, the system bus 180 connects each component of the SoC 10 and serves as a path for data transmission/reception between each component. In addition, the system bus 180 may serve as a transmission path for a control signal between each component.

실시예에 따라, 시스템 버스(180)는 데이터를 전송하는 데이터 버스(도 미도시), 어드레스 신호를 전송하는 어드레스 버스(미도시) 및 제어 신호를 전송하는 제어 버스(미도시)를 포함할 수 있다.According to an embodiment, the system bus 180 may include a data bus (not shown) for transmitting data, an address bus (not shown) for transmitting an address signal, and a control bus (not shown) for transmitting a control signal. have.

실시예에 따라 시스템 버스(180)는 소정의 구성요소들 간의 데이터 통신을 위한 소규모의 버스, 즉, 인터커넥터(interconnector)를 포함할 수 있다.According to an embodiment, the system bus 180 may include a small bus for data communication between predetermined components, that is, an interconnector.

도 5는 도 4에 도시된 디스플레이 컨트롤러의 일 실시예를 나타내는 구성 블록도이다.FIG. 5 is a configuration block diagram illustrating an embodiment of the display controller shown in FIG. 4 .

도 4 내지 도 5를 참조하면, 본 발명의 실시예에 따른 디스플레이 컨트롤러(200)는 데이터 인터페이스(210), 제어 인터페이스(220), 버퍼 메모리(230), 데이터 사이즈 컨트롤러(240), 타이밍 컨트롤러(250), 및 디스플레이 구동 회로(260)를 포함할 수 있다.4 to 5 , the display controller 200 according to an embodiment of the present invention includes a data interface 210 , a control interface 220 , a buffer memory 230 , a data size controller 240 , and a timing controller ( 250 , and a display driving circuit 260 .

데이터 인터페이스(210)는 버스(180)를 통하여 입력 이미지 데이터(Din)를 수신하여 버퍼 메모리(230)에 저장할 수 있다. The data interface 210 may receive the input image data Din through the bus 180 and store it in the buffer memory 230 .

실시예에 따라, 데이터 인터페이스(210)는 기 설정된 시간 간격으로 메모리 컨트롤러(160)로 프레임 데이터를 요청하여, 프레임 단위로 입력 이미지 데이터(Din)를 수신하여 버퍼 메모리(230)에 저장할 수 있다.According to an embodiment, the data interface 210 may request frame data from the memory controller 160 at preset time intervals, receive input image data Din in units of frames, and store the received input image data Din in the buffer memory 230 .

입력 이미지 데이터(Din)의 출처(source)는 다양할 수 있다. 예컨대, 데이터 인터페이스(210)는 CPU(100), 메모리(30), 그래픽 프로세싱 유닛(150) 또는 도시되지 않은 다른 구성요소(예컨대, 스케일러(scaler), 포스트 프로세서(post processor) 등)으로부터 출력된 입력 이미지 데이터(Din)를 데이터 버스를 통하여 수신할 수 있다. The source of the input image data Din may be various. For example, the data interface 210 may be outputted from the CPU 100 , the memory 30 , the graphics processing unit 150 , or other components not shown (eg, a scaler, a post processor, etc.). The input image data Din may be received through a data bus.

이를 위하여, 데이터 인터페이스(210)는 메모리에 억세스하여 입력 이미지 데이터(Din)를 읽어 오기 위한 하나 이상의 DMA(Direct memory access)(미도시)를 포함할 수 있다. 실시예에 따라, 입력 이미지 데이터(Din)는 R, G, B 데이터일 수 있으나, 이에 한정되는 것은 아니다.To this end, the data interface 210 may include one or more direct memory access (DMA) (not shown) for reading the input image data Din by accessing the memory. According to an embodiment, the input image data Din may be R, G, and B data, but is not limited thereto.

데이터 인터페이스(210)는 입력 이미지 데이터(Din)를 버퍼링하여 버퍼 메모리(230)에 저장할 수도 있고, 입력 이미지 데이터(Din)를 처리하여 버퍼 메모리(230)에 저장할 수도 있다.The data interface 210 may buffer the input image data Din and store it in the buffer memory 230 , or process the input image data Din and store it in the buffer memory 230 .

실시예에 따라, 데이터 인터페이스(210)는 둘 이상의 DMA로부터 수신한 입력 이미지 데이터(Din)를 합성(blend 또는 combine)하여 합성된 이미지 데이터(Dp)를 버퍼 메모리(230)에 저장할 수도 있다.According to an embodiment, the data interface 210 may blend or combine input image data Din received from two or more DMAs and store the synthesized image data Dp in the buffer memory 230 .

제어 인터페이스(220)는 디스플레이 컨트롤러(200)의 외부의 다른 구성요소(예컨대, CPU 등)로부터 제어 신호를 수신할 수 있다. 예를 들어, 제어 인터페이스(220)는 CPU(100)로부터 최대 데이터 사이즈, 데이터 사이즈 패턴 및/또는 모드 설정 신호 등의 데이터 사이즈 제어 정보(Scon)를 수신하여 데이터 사이즈 컨트롤러(240)에 저장할 수 있다. The control interface 220 may receive a control signal from another component (eg, CPU, etc.) external to the display controller 200 . For example, the control interface 220 may receive data size control information Scon, such as a maximum data size, a data size pattern, and/or a mode setting signal, from the CPU 100 and store it in the data size controller 240 . .

모드 설정 신호는 본 발명의 실시예에 따른 데이터 사이즈 가변 조절 기능의 인에이블(enable)/디스에이블(disable)를 설정하기 위한 신호이다. 실시예에 따라, 모드 설정 신호가 제1 값일 때는 데이터 사이즈 컨트롤러(240)는 디스플레이 장치로 전송되는 데이터의 사이즈(예컨대, 라인 데이터의 수)가 가변적으로 조절되도록 제어하고, 모드 설정 신호가 제2 값일 때는 데이터 사이즈 컨트롤러(240)는 디스플레이 장치로 전송되는 데이터의 사이즈(예컨대, 라인 데이터의 수)가 고정되도록 제어할 수 있다.The mode setting signal is a signal for setting enable/disable of a data size variable control function according to an embodiment of the present invention. According to an embodiment, when the mode setting signal is the first value, the data size controller 240 controls the size of data (eg, the number of line data) transmitted to the display device to be variably adjusted, and the mode setting signal is the second value. When it is a value, the data size controller 240 may control the size (eg, the number of line data) of data transmitted to the display device to be fixed.

모드 설정 신호는 사용자의 설정에 의해, 또는 미리 정해진 정보에 기초하여 동적으로 설정될 수 있다.The mode setting signal may be set dynamically by a user setting or based on predetermined information.

디스플레이 구동 회로(260)는 버퍼 메모리(230)에 저장된 이미지 데이터를 디스플레이 장치(20)로 전송하기에 적합한 신호(예컨대, 특정 규격에 따른 신호)로 변환하고, 변환된 신호를 디스플레이 장치(20)로 전송한다.The display driving circuit 260 converts the image data stored in the buffer memory 230 into a signal suitable for transmission to the display device 20 (eg, a signal according to a specific standard), and converts the converted signal into the display device 20 . send to

디스플레이 장치(20)로 전송될 이미지 데이터는 복수의 프레임(frame)을 포함할 수 있고, 각 프레임은 복수의 라인 데이터(line data)를 포함할 수 있다. 각 라인 데이터는 복수의 픽셀 데이터(pixel data)를 포함할 수 있다.Image data to be transmitted to the display device 20 may include a plurality of frames, and each frame may include a plurality of line data. Each line data may include a plurality of pixel data.

예를 들어, 디스플레이 패널(25)의 해상도(라인수*픽셀수)가 m*n이라면, 각 프레임은 m개의 라인 데이터를 포함하고, 각 라인 데이터는 n 픽셀 데이터를 포함한다. 실시예에 따라, 각 픽셀 데이터는 R, G, B 데이터로 구성될 수 있다.For example, if the resolution (number of lines*number of pixels) of the display panel 25 is m*n, each frame includes m line data, and each line data includes n pixel data. According to an embodiment, each pixel data may be composed of R, G, and B data.

타이밍 컨트롤러(250)는 디스플레이 컨트롤러(200)의 전반적인 동작 타이밍을 제어하기 위한 제어 신호 및 클럭 신호를 출력할 수 있다.The timing controller 250 may output a control signal and a clock signal for controlling the overall operation timing of the display controller 200 .

실시예에 따라, 타이밍 컨트롤러(250)는 복수의 라인들과 복수의 프레임들로 구성되는 이미지 데이터의 디스플레이를 제어하기 위한 신호들인 비디오 제어 신호들(MIPI DSI COMMAND)을 디스플레이 구동 회로(260)로 제공할 수 있다.According to an exemplary embodiment, the timing controller 250 transmits video control signals MIPI DSI COMMAND, which are signals for controlling display of image data including a plurality of lines and a plurality of frames, to the display driving circuit 260 . can provide

또한, 실시예에 따라, 타이밍 컨트롤러(250)는 디스플레이 구동 회로(260)로 버퍼 메모리(230)로부터 이미지 데이터(Dm)를 입력받기 위해 필요한 입력 클락 신호(미도시) 및 디스플레이 장치(20)로 전송하기 위해 필요한 출력 클락 신호(미도시)를 제공할 수 있다. In addition, according to an embodiment, the timing controller 250 uses an input clock signal (not shown) necessary to receive the image data Dm from the buffer memory 230 to the display driving circuit 260 and the display device 20 . An output clock signal (not shown) required for transmission may be provided.

디스플레이 구동 회로(260)는 데이터 사이즈 컨트롤러(240)에 의해 지정된 데이터 사이즈(CDS)에 따라 버퍼 메모리(230)로부터 이미지 데이터(Dm)를 읽어와서 디스플레이 장치(20)로 전송할 수 있다. The display driving circuit 260 may read the image data Dm from the buffer memory 230 according to the data size CDS specified by the data size controller 240 and transmit the read image data Dm to the display device 20 .

실시예에 따라, 데이터 사이즈 컨트롤러(240)는 디스플레이 장치(20)로 전송되는 데이터의 사이즈(CDS)를 '라인 수'로 지정하고, 디스플레이 구동 회로(260)는 데이터 전송 구간 동안 데이터 사이즈 컨트롤러(240)에 의해 지정된 라인 수(assigned line number)의 라인 데이터를 전송할 수 있다. 이에 따라, 디스플레이 구동 회로(260)는 이미지 데이터를 라인의 정수배 단위로 구분하여 디스플레이 장치(20)로 전송할 수 있다. According to an embodiment, the data size controller 240 designates the size CDS of data transmitted to the display device 20 as the 'number of lines', and the display driving circuit 260 controls the data size controller ( 240) may transmit line data of an assigned line number. Accordingly, the display driving circuit 260 may divide the image data in units of integer multiples of lines and transmit the image data to the display device 20 .

실시예에 따라, 데이터 사이즈 컨트롤러(240)는 하나의 데이터 전송 구간 동안 전송될 데이터의 라인 수를 결정하기 위하여, 소정의 최대 라인수를 초과하지 않는 범위에서, 지정 라인수를 가변할 수 있다.According to an embodiment, in order to determine the number of lines of data to be transmitted during one data transmission period, the data size controller 240 may vary the number of designated lines within a range that does not exceed a predetermined maximum number of lines.

예컨대, 데이터 사이즈 컨트롤러(240)는 각 데이터 전송 구간에 대하여 최대 라인수 이내에서 랜덤하게 또는 의사 랜덤(pseudo random)으로 지정 라인수를 생성할 수 있다. For example, the data size controller 240 may generate a designated number of lines randomly or pseudo-randomly within the maximum number of lines for each data transmission section.

데이터 전송 구간이 아닌 아이들(idle) 구간에서는 이미지 데이터는 전송되지 않는다.Image data is not transmitted in the idle period other than the data transmission period.

디스플레이 구동 회로(260)의 데이터 송신부(TX, 270)는 MIPI 표준에 따라 데이터를 디스플레이 장치(20)의 데이터 수신부(RX, 400)로 전송할 수 있으며, 마스터 장치 또는 호스트 장치라 칭해지기도 한다. 데이터 수신부(400) 역시 MIPI 표준에 따라 데이터 송신부(270)로부터의 데이터를 수신할 수 있으며, 슬래이브 장치 또는 클라이언트 장치라 칭해지기도 한다. The data transmitters TX and 270 of the display driving circuit 260 may transmit data to the data receivers RX and 400 of the display device 20 according to the MIPI standard, and may be referred to as a master device or a host device. The data receiver 400 may also receive data from the data transmitter 270 according to the MIPI standard, and is also referred to as a slave device or a client device.

도 6은 도 5에 도시된 데이터 사이즈 컨트롤러(240)의 일 실시예(240a)를 나타내는 구성 블록도이다. 도 5 및 도 6을 참조하면, 본 발명의 일 실시예에 따른 데이터 사이즈 컨트롤러(240a)는 레지스터(241) 및 랜덤 라인 생성기(random line generator)(243)를 포함할 수 있다.6 is a block diagram illustrating an embodiment 240a of the data size controller 240 shown in FIG. 5 . 5 and 6 , the data size controller 240a according to an embodiment of the present invention may include a register 241 and a random line generator 243 .

레지스터(241)는 제어 인터페이스(220)로부터 랜덤 라인수를 생성하기 위해 필요한 제어 정보(Scon)를 수신하여 저장할 수 있다. The register 241 may receive and store control information Scon necessary for generating the number of random lines from the control interface 220 .

제어 정보(Scon)는 상술한 최대 라인수(ML) 및 모드 설정 신호를 포함할 수 있다. 레지스터(250)는 또한, 디스플레이 패널(25)의 해상도 정보를 저장할 수 있다. The control information Scon may include the above-described maximum number of lines ML and a mode setting signal. The register 250 may also store resolution information of the display panel 25 .

모드 설정 신호 및 최대 라인수(ML)는 사용자나 CPU(100)에 의해 레지스터(250)에 설정될 수 있다. The mode setting signal and the maximum number of lines ML may be set in the register 250 by the user or the CPU 100 .

최대 라인수(ML)는 디스플레이 패널(25)의 해상도 및 버퍼 메모리(230)의 크기 등에 따라 미리 결정되어 레지스터(241)에 저장될 수 있다.The maximum number of lines ML may be predetermined and stored in the register 241 according to the resolution of the display panel 25 and the size of the buffer memory 230 .

실시예에 따라, 모드 설정 신호가 제1값으로 설정되어 있는 상태에서는, 랜덤 라인 생성기(243)는 최대 라인수(ML) 이내에서 랜덤하게 또는 의사 랜덤(pseudo random)으로 지정 라인수를 생성하여 데이터 사이즈(CDS)로 출력할 수 있다. 실시예에 따라, 랜덤 라인 생성기(243)는 난수(random number) 발생 알고리즘 또는 의사 난수(pseudo random number) 발생 알고리즘에 따라 난수를 발생하는 난수 발생기로 구현될 수 있다.According to an embodiment, in a state in which the mode setting signal is set to the first value, the random line generator 243 generates the specified number of lines randomly or pseudo-randomly within the maximum number of lines (ML). It can be output in data size (CDS). According to an embodiment, the random line generator 243 may be implemented as a random number generator that generates a random number according to a random number generation algorithm or a pseudo random number generation algorithm.

예를 들어, 최대 라인수(ML)가 4인 경우, 랜덤 라인 생성기(243)는 하나의 프레임 이미지의 전송을 위해 1 부터 4까지의 라인 수를 순차적으로 랜덤하게 생성하여 데이터 사이즈(CDS, 예컨대, 1, 3, 4, 2, 1, 2, ...)로서 출력할 수 있다. For example, when the maximum number of lines (ML) is 4, the random line generator 243 sequentially randomly generates the number of lines from 1 to 4 for transmission of one frame image, and the data size (CDS, eg, , 1, 3, 4, 2, 1, 2, ...).

그러면, 디스플레이 구동 회로(260)는 데이터 사이즈(CDS, 예컨대, 1, 3, 4, 2, 1, 2, ...)에 따라, 버퍼 메모리(230)로부터 1, 3, 4, 2, 1, 2, ...에 해당하는 라인 데이터를 순차적으로 출력하여 디스플레이 장치(20)로 전송할 수 있다.Then, the display driving circuit 260 receives 1, 3, 4, 2, 1 from the buffer memory 230 according to the data size (CDS, for example, 1, 3, 4, 2, 1, 2, ...). Line data corresponding to , 2, ... may be sequentially output and transmitted to the display device 20 .

모드 설정 신호가 제2값으로 설정되어 있는 상태에서는, 랜덤 라인 생성기(243)는 고정된 라인수를 데이터 사이즈(CDS)로 출력할 수 있다. In a state in which the mode setting signal is set to the second value, the random line generator 243 may output a fixed number of lines as the data size CDS.

실시예에 따라, 제어 인터페이스(220)는 미리 설정된 혹은 소정의 알고리즘에 의해 생성된 숫자열(number sequence) 테이블을 수신하여 레지스터(241)에 저장할 수 있다.According to an embodiment, the control interface 220 may receive a number sequence table generated by a preset or a predetermined algorithm and store it in the register 241 .

도 8은 숫자열 테이블의 일 실시예를 나타내는 표이다. 이를 참조하면, 숫자열 테이블은 복수(2이상)(예컨대, 4)의 숫자열(number sequence) 및 각 숫자열을 지정하기 위한 인덱스(index)를 포함할 수 있다.8 is a table showing an embodiment of a numeric string table. Referring to this, the number sequence table may include a plurality of (2 or more) (eg, 4) number sequences and an index for designating each number sequence.

숫자열은 난수 또는 유사 난수로 구성된 난수열(random number sequence)일 수 있다. 숫자열의 각 숫자는 라인수를 지정하기 위한 값일 수 있다.The number sequence may be a random number sequence composed of random numbers or pseudo-random numbers. Each number in the numeric string may be a value for designating the number of lines.

따라서, 실시예에 따라, 난수열은 복수의 라인수들로 구성된 특정 길이(도 8의 실시예에서는 8)의 숫자열이다. 도 8의 실시예에서는 인덱스 1에 해당하는 난수열은 '111122222'이고, 인덱스 2에 해당하는 난수열은 '11122221'이다.Accordingly, according to an embodiment, the random number sequence is a numeric sequence of a specific length (8 in the embodiment of FIG. 8 ) composed of a plurality of line numbers. In the embodiment of FIG. 8 , the random number sequence corresponding to index 1 is '111122222', and the random number sequence corresponding to index 2 is '11122221'.

랜덤 라인 생성기(243)는 랜덤하게 난수열 인덱스를 생성하고, 레지스터(241)로부터 난수열 인덱스에 해당하는 난수열을 페치(fetch)할 수 있다.The random line generator 243 may randomly generate a random number sequence index and fetch a random number sequence corresponding to the random number sequence index from the register 241 .

랜덤 라인 생성기(243)는 페치한 난수열을 데이터 사이즈(CDS)로서 디스플레이 구동 회로(260)로 제공할 수 있다. 이 경우, 데이터 사이즈(CDS)는 하나의 값이 아니라 복수의 값으로 구성된 시퀀스일 수 있다. 디스플레이 구동 회로(260)는 랜덤 라인 생성기(240)로부터 제공받은 데이터 사이즈 시퀀스(즉, 난수열)에 따라 버퍼 메모리(240)로부터 라인 데이터를 출력하여 디스플레이 장치(20)로 전송한다. The random line generator 243 may provide the fetched random number sequence as a data size CDS to the display driving circuit 260 . In this case, the data size CDS may be a sequence composed of a plurality of values rather than a single value. The display driving circuit 260 outputs line data from the buffer memory 240 according to a data size sequence (ie, a random number sequence) provided from the random line generator 240 , and transmits the line data to the display device 20 .

랜덤 라인 생성기(243)가 하나의 프레임 데이터에 대한 데이터 사이즈 시퀀스를 결정하는 경우, 그 데이터 사이즈 시퀀스의 숫자를 더한 값은 디스플레이 패널(25)의 해상도의 라인수(m)과 동일할 수 있다. When the random line generator 243 determines a data size sequence for one frame data, a value obtained by adding the numbers of the data size sequence may be equal to the number of lines m of the resolution of the display panel 25 .

도 8을 참조하면, 난수열 인덱스가 '1'인 경우 해당 난수열은 '11112222' 이에 따라, 디스플레이 구동 회로(260)는 라인 데이터의 수를 난수열이 지정하는 라인수인 '11112222'에 따라 가변할 수 있다. 예컨대, 디스플레이 구동 회로(260)는 프레임 데이터를 전송함에 있어, 첫 번째부터 네 번째 데이터 전송 구간에서는 각각 하나(1)의 라인 데이터를 전송하고, 다섯 번째부터 여덟 번째 데이터 전송 구간에서는 각각 두(2) 라인 데이터를 전송할 수 있다.Referring to FIG. 8 , when the random number sequence index is '1', the corresponding random number sequence is '11112222'. Accordingly, the display driving circuit 260 sets the number of line data according to '11112222', which is the number of lines designated by the random number sequence. can be variable. For example, in transmitting frame data, the display driving circuit 260 transmits one (1) line data in each of the first to fourth data transmission sections, and two (2) lines in each of the fifth to eighth data transmission sections. ) line data can be transmitted.

다른 예로, 데이터 사이즈 시퀀스(CDS)가 도 8의 난수열 인덱스 3에 해당하는 난수열('11222211')인 경우, 첫 번째 및 두 번째 데이터 전송 구간에서는 각각 하나(1)의 라인 데이터를 전송하고, 세 번째 내지 여섯 번째의 데이터 전송 구간에서는 각각 둘(2)의 라인 데이터를 전송하며, 여덟 번째 데이터 전송 구간에서는 각각 하나(1)의 라인 데이터를 전송할 수 있다.As another example, when the data size sequence (CDS) is a random number sequence ('11222211') corresponding to the random number sequence index 3 of FIG. 8, one (1) line data is transmitted in the first and second data transmission sections, respectively, , in the third to sixth data transmission sections, two (2) lines of data are transmitted, respectively, and in the eighth data transmission section, one (1) line data may be transmitted, respectively.

도 7은 도 5에 도시된 데이터 사이즈 컨트롤러(240)의 다른 실시예(240b)를 나타내는 구성 블록도이다. 도 5 및 도 7을 참조하면, 데이터 사이즈 컨트롤러(240b)는 패턴 저장부(Pattern Storage, 245), 패턴 생성기(Pattern Generator, 247) 및 데이터 사이즈 결정부(Data Size Determiner, 249)를 포함할 수 있다. FIG. 7 is a block diagram showing another embodiment 240b of the data size controller 240 shown in FIG. 5 . 5 and 7 , the data size controller 240b may include a pattern storage unit 245, a pattern generator 247, and a data size determiner 249. have.

패턴 저장부(245)는 상술한 난수열 테이블을 수신하여 저장할 수 있다.The pattern storage unit 245 may receive and store the above-described random number sequence table.

패턴 저장부(245)에 저장되는 난수열 테이블이 도 8과 같다고 가정한다.It is assumed that the random number sequence table stored in the pattern storage unit 245 is the same as in FIG. 8 .

패턴 생성기(247)는 패턴 저장부(245)에 저장된 난수열을 이용하여 랜덤 패턴(RP)을 생성할 수 있다. 실시예에 따라, 패턴 생성기(247)는 패턴 저장부(245)에 저장된 난수열의 인덱스를 랜덤하게 또는 유사 랜덤하게 섞어서(shuffle), 이에 해당하는 랜덤 패턴(RP: random pattern)을 생성할 수 있다. The pattern generator 247 may generate a random pattern RP by using the random number sequence stored in the pattern storage unit 245 . According to an embodiment, the pattern generator 247 may randomly or pseudo-randomly shuffle the indexes of the random number sequence stored in the pattern storage unit 245 to generate a corresponding random pattern (RP). have.

실시예에 따라, 패턴 생성기(247)는 패턴 저장부(245)에 저장된 난수열을 이용(예컨대, 반전, 혹은 쉬프트)하여 새로운 난수열을 생성하고, 새롭게 생성된 난수열을 이용하여 랜덤 패턴(RP)을 출력할 수 있다.According to an embodiment, the pattern generator 247 uses (eg, inverts or shifts) the random number sequence stored in the pattern storage unit 245 to generate a new random number sequence, and uses the newly generated random number sequence to generate a random pattern ( RP) can be printed.

도 9는 패턴 생성기(247)에서 생성되는 랜덤 패턴의 일 예를 나타내는 표이다. 이를 참조하면, 패턴 생성기(247)는 도 8에 도시된 원(original) 난수열을 반전한 난수열에 해당하는 반전 난수열(1', 2', 3', 4')을 생성할 수 있다.9 is a table illustrating an example of a random pattern generated by the pattern generator 247 . Referring to this, the pattern generator 247 may generate inverted random number sequences 1', 2', 3', 4' corresponding to the random number sequence in which the original random number sequence shown in FIG. 8 is inverted. .

도 9를 참조하면, 제1 난수열(1:11112222)의 반전 난수열은 제1 반전 난수열(1':22221111)이고, 제2 난수열(2:11112222)의 반전 난수열은 제2 반전 난수열(2':22211112)이다. Referring to FIG. 9 , the inverted random number sequence of the first random number sequence (1:11112222) is the first inverted random number sequence (1':22221111), and the inverted random number sequence of the second random number sequence (2:11112222) is the second inversion It is a random number sequence (2':22211112).

패턴 생성기(247)는 원 난수열의 인덱스(1, 2, 3, 4)과 반전 난수열의 인덱스(1', 2', 3', 4')를 랜덤하게 섞어 셔플된 인덱스(4,6,1,7,2,5,8,3)를 만들고, 이에 해당하는 랜덤 패턴을 생성할 수 있다.The pattern generator 247 randomly mixes the indices of the original random number sequence (1, 2, 3, 4) and the inverted random number sequence (1', 2', 3', 4') and shuffled indexes (4, 6). ,1,7,2,5,8,3), and a corresponding random pattern can be generated.

데이터 사이즈 결정부(249)는 패턴 생성기(247)로부터 출력되는 랜덤 패턴에 따라 데이터 사이즈(CDS)를 결정하여 출력할 수 있다. The data size determiner 249 may determine and output the data size CDS according to the random pattern output from the pattern generator 247 .

실시예에 따라, 데이터 사이즈 결정부(249)는 모드 설정 신호가 제1값(예컨대, '1')으로 설정된 경우에는, 패턴 생성기(247)로부터 출력되는 랜덤 패턴에 따라 데이터 사이즈(CDS)를 결정하고, 모드 설정 신호가 제2값(예컨대, '0')으로 설정된 경우에는, 고정된 데이터 사이즈(CDS)를 결정할 수 있다.According to an embodiment, when the mode setting signal is set to a first value (eg, '1'), the data size determiner 249 determines the data size CDS according to the random pattern output from the pattern generator 247 . is determined, and when the mode setting signal is set to a second value (eg, '0'), a fixed data size (CDS) may be determined.

모드 설정 신호는 패턴 저장부(245)에 저장될 수도 있고, 별도의 레지스터(미도시)에 저장될 수 있다.The mode setting signal may be stored in the pattern storage unit 245 or in a separate register (not shown).

도 10은 본 발명의 일 실시예에 따른 디스플레이 컨트롤러의 동작 방법을 나타내는 플로우차트이다. 도 10에 도시된 본 발명의 일 실시예에 따른 동작 방법은 도 5에 도시된 디스플레이 컨트롤러(200)에 의해 수행될 수 있다.10 is a flowchart illustrating a method of operating a display controller according to an embodiment of the present invention. The method of operation according to an embodiment of the present invention shown in FIG. 10 may be performed by the display controller 200 shown in FIG. 5 .

도 5 및 도 10을 참조하면, 전송할 프레임 데이터가 있는지를 체크하여(S110), 전송할 프레임 데이터가 있다면, 먼저, 데이터 사이즈 컨트롤러(240)에서 전송할 데이터의 사이즈를 결정한다(S120). 상술한 바와 같이, 데이터 사이즈 컨트롤러(240)는 모드 설정 신호에 따라, 데이터 사이즈(예컨대, 라인수)를 랜덤하게 가변시킬 수도 있고, 또는 데이터 사이즈를 고정시킬 수도 있다. 5 and 10 , it is checked whether there is frame data to be transmitted (S110), and if there is frame data to be transmitted, first, the data size controller 240 determines the size of data to be transmitted (S120). As described above, the data size controller 240 may randomly change the data size (eg, the number of lines) or fix the data size according to the mode setting signal.

다음으로, 결정된 데이터 사이즈에 해당하는 데이터를 버퍼 메모리(230)로부터 읽어와 디스플레이 장치(20)로 전송한다(S130). Next, data corresponding to the determined data size is read from the buffer memory 230 and transmitted to the display device 20 (S130).

S120 단계 및 S130 단계는 프레임 데이터의 전송이 완료될 때까지(S140), 반복 수행될 수 있다. Steps S120 and S130 may be repeatedly performed until transmission of the frame data is completed (S140).

즉, 한 프레임 데이터의 전송을 완료할 때까지(S140), 매번 데이터 사이즈(예컨대, 라인수)를 결정하고(S120), 결정된 데이터 사이즈(예컨대, 라인수)에 해당하는 데이터를 보내는 동작(S130)을 순차적으로 수행할 수 있다.That is, until the transmission of one frame data is completed (S140), the data size (eg, the number of lines) is determined each time (S120), and data corresponding to the determined data size (eg, the number of lines) is transmitted (S130) ) can be performed sequentially.

각 프레임 데이터가 1024개의 라인 데이터를 포함하고, 데이터 사이즈가 가질 수 있는 수는 1, 2, 3 이고, 데이터 사이즈의 평균이 2라고 가정한다면, 하나의 프레임 데이터를 전송하기 위해, S120 단계 및 S130 단계는 평균 512(1024/2)번 수행될 수 있다.Assuming that each frame data includes 1024 lines of data, the number of data sizes can be 1, 2, and 3, and the average of the data sizes is 2, in order to transmit one frame data, steps S120 and S130 A step may be performed on average 512 (1024/2) times.

다른 실시예에서는, 새로운 프레임 데이터의 전송을 시작하기 전에, 랜덤 패턴을 생성하고, 이에 기초하여, 프레임 데이터 전체에 대한 데이터 사이즈 시퀀스를 결정한 후, 결정된 데이터 사이즈 시퀀스에 따라, 데이터를 전송할 수 있다. 이 때, 결정된 데이터 사이즈 시퀀스의 숫자를 더한 값은 디스플레이 패널(25)의 해상도의 라인수(m)과 동일할 수 있다.In another embodiment, before starting transmission of new frame data, a random pattern is generated, a data size sequence for the entire frame data is determined based on this, and then data can be transmitted according to the determined data size sequence. In this case, a value obtained by adding the number of the determined data size sequence may be equal to the number of lines (m) of the resolution of the display panel 25 .

도11는 본 발명의 다른 실시예에 따른 디스플레이 컨트롤러의 동작 방법을 나타내는 플로우차트이다. 도 11에 도시된 본 발명의 일 실시예에 따른 동작 방법은 도 5 및 도 7에 도시된 디스플레이 컨트롤러에 의해 수행될 수 있다.11 is a flowchart illustrating a method of operating a display controller according to another embodiment of the present invention. The method of operation according to an embodiment of the present invention illustrated in FIG. 11 may be performed by the display controller illustrated in FIGS. 5 and 7 .

도 5, 도 7 및 도 11을 참조하면, 먼저, 패턴을 패턴 저장부(도 7의 245)에 저장한다. 여기서 패턴은 상술한 원 난수열(original random number sequence)일 수 있다. 도 11의 실시예에서는, 저장된 패턴은 도 8에 도시된 난수열과 동일한 것으로 가정한다.5, 7, and 11, first, a pattern is stored in the pattern storage unit (245 in FIG. 7). Here, the pattern may be the above-described original random number sequence. 11 , it is assumed that the stored pattern is the same as the random number sequence shown in FIG. 8 .

랜덤 라인 생성 기능이 인에이블되어 있는지 확인한다(S220). 랜덤 라인 생성 기능은 데이터 사이즈 가변 기능의 일 실시예로서, 모드 설정 신호에 따라 선택적으로 인에이블 또는 디스에이블될 수 있다. 따라서, 모드 설정 신호의 값을 체크함으로써, 랜덤 라인 생성 기능이 인에이블되어 있는지 확인할 수 있다.It is checked whether the random line generation function is enabled (S220). The random line generation function is an embodiment of the data size variable function, and may be selectively enabled or disabled according to a mode setting signal. Accordingly, by checking the value of the mode setting signal, it can be checked whether the random line generation function is enabled.

랜덤 라인 생성 기능이 디스에이블된 상태이면, 고정된 라인수를 가지는 고정 패턴을 생성함으로써(S235), 고정된 라인수 단위로 데이터를 전송한다(S270).When the random line generation function is disabled, a fixed pattern having a fixed number of lines is generated (S235), and data is transmitted in units of a fixed number of lines (S270).

랜덤 라인 생성 기능이 인에이블된 상태이면, 라인수를 랜덤하게 가변함으로써, 가변 라인수의 데이터를 전송한다(S230~S270).When the random line generation function is enabled, the data of the variable line number is transmitted by randomly varying the number of lines (S230 to S270).

구체적으로 살펴보면, 전송할 프레임 데이터가 있는지를 체크하여(S230), 전송할 프레임 데이터가 있다면(S230에서 Yes), S210단계에서 저장된 패턴을 랜덤화한다(S240). Specifically, it is checked whether there is frame data to be transmitted (S230), and if there is frame data to be transmitted (Yes in S230), the pattern stored in step S210 is randomized (S240).

도 12는 도 11에 도시된 랜덤화 단계(S240)의 일 실시예를 나타내는 플로우차트이다. 도 12의 랜덤화 단계(S240)는 도 7의 패턴 생성기(247)에 의해 수행될 수 있다. 도 7, 도 11 및 도 12를 참조하면, 랜덤화를 위해 패턴 저장부(도 7의 245)에 기 저장된 패턴(예컨대, 원 난수열)을 독출한다(S310). 다음으로 섞기(shuffle) 기능이 인에이블되어 있는지 확인한다(S320). 12 is a flowchart illustrating an embodiment of the randomization step ( S240 ) shown in FIG. 11 . The randomization step S240 of FIG. 12 may be performed by the pattern generator 247 of FIG. 7 . Referring to FIGS. 7, 11 and 12 , a pattern (eg, an original random number sequence) previously stored in the pattern storage unit ( 245 of FIG. 7 ) is read for randomization ( S310 ). Next, it is checked whether the shuffle function is enabled (S320).

실시예에 따라, 섞기(shuffle) 기능 인에이블 신호는 도 7의 패턴 저장부(245)에 저장될 수도 있고, 별도의 레지스터(미도시)에 저장될 수 있다.According to an embodiment, the shuffle function enable signal may be stored in the pattern storage unit 245 of FIG. 7 or may be stored in a separate register (not shown).

섞기(shuffle) 기능이 인에이블되어 있는 상태이면(S320에서 Yes), 저장된 난수열의 인덱스를 랜덤하게 또는 유사 랜덤하게 섞어서(shuffle)(S330), 도 8에 도시된 바와 같은 랜덤 인덱스를 발생한다(S340). 만약, 섞기(shuffle) 기능이 인에이블되어 있지 않은 상태이면(S320에서 No), 저장된 원 난수열의 인덱스를 섞는 단계(S330)는 생략되고, 원 난수열의 인덱스에 기초하여(예컨대, 원 난수열의 순서대로 또는 역순으로) 랜덤 인덱스를 발생한다(S340).If the shuffle function is enabled (Yes in S320), the stored random number sequence index is randomly or pseudo-randomly shuffled (S330), and a random index as shown in FIG. 8 is generated. (S340). If the shuffle function is not enabled (No in S320), the step (S330) of shuffling the index of the stored original random number sequence is omitted, and based on the index of the original random number sequence (eg, the original random number sequence) A random index is generated (in the order of the sequence or in the reverse order) (S340).

상술한 랜덤화 단계(S240) 수행 후, 랜덤 인덱스에 따라 랜덤 패턴을 얻는다(S250). 그리고, 랜덤 패턴에 기초하여 전송할 데이터의 사이즈를 결정한다(S260). After performing the above-described randomization step (S240), a random pattern is obtained according to the random index (S250). Then, the size of data to be transmitted is determined based on the random pattern (S260).

다음으로, 결정된 데이터 사이즈에 해당하는 데이터를 버퍼 메모리(230)로부터 읽어와 디스플레이 장치로 전송한다(S270). Next, data corresponding to the determined data size is read from the buffer memory 230 and transmitted to the display device (S270).

S270 단계는 프레임 데이터의 전송이 완료될 때까지(S280), 반복 수행될 수 있다. Step S270 may be repeated until transmission of the frame data is completed (S280).

도 11에 도시된 실시예에 따르면, 새로운 프레임 데이터의 전송을 시작하기 전에, 저장된 패턴을 랜덤화하여 랜덤 패턴을 생성하고(S240, S250), 이에 기초하여, 프레임 데이터 전체에 대한 데이터 사이즈 시퀀스를 결정한 후(S260), 결정된 데이터 사이즈 시퀀스에 따라, 가변적인 라인 수를 갖는 데이터를 순차적으로 전송한다(S270). According to the embodiment shown in FIG. 11, before starting the transmission of new frame data, a stored pattern is randomized to generate a random pattern (S240, S250), and based on this, a data size sequence for the entire frame data is generated. After the determination (S260), data having a variable number of lines is sequentially transmitted according to the determined data size sequence (S270).

다른 실시예에 따르면, 한(1) 프레임 데이터의 전송을 완료할 때까지, 매번 데이터 사이즈(예컨대, 라인수)를 결정하고, 결정된 데이터 사이즈(예컨대, 라인수)에 해당하는 데이터를 보내는 동작을 순차적으로 수행할 수 있다.According to another embodiment, the operation of determining a data size (eg, number of lines) each time and transmitting data corresponding to the determined data size (eg, number of lines) is performed until transmission of one (1) frame data is completed. It can be done sequentially.

도 13은 본 발명의 일 실시예에 따른 디스플레이 컨트롤러에서 모드 설정 신호에 따른 데이터 전송 타이밍을 비교하여 나타내는 도면이다. 구체적으로, 도 13의 (a)는 본 발명의 일 실시예에 따른 디스플레이 컨트롤러에서 모드 설정 신호가 제 2값으로 설정된 모드(예컨대, 랜덤 라인 생성 기능이 디스에이블된 상태)에서의 데이터 전송 타이밍도이고, 도 13의 (b)는 본 발명의 일 실시예에 따른 디스플레이 컨트롤러에서 모드 설정 신호가 제 1값으로 설정된 모드(예컨대, 랜덤 라인 생성 기능이 인에이블된 상태)에서의 데이터 전송 타이밍도이다. 13 is a diagram illustrating comparison of data transmission timing according to a mode setting signal in a display controller according to an embodiment of the present invention. Specifically, FIG. 13A is a data transmission timing diagram in a mode in which the mode setting signal is set to a second value (eg, a random line generation function is disabled) in the display controller according to an embodiment of the present invention. and FIG. 13B is a data transmission timing diagram in a mode in which the mode setting signal is set to a first value (eg, a random line generation function is enabled) in the display controller according to an embodiment of the present invention. .

도 13의 (a)를 참조하면, 아이들(idle) 구간(ⓑ, idle period)에서는 데이터는 전송되지 않으며, 아이들(idle) 구간(ⓑ) 사이의 데이터 전송 구간에서는 하나의 라인 데이터(ⓐ)가 전송된다. 도 13의 (a)에 따르면, 각 데이터 전송 구간에서 전송되는 라인수(number of line), 즉 데이터 크기는 고정되어 있다. Referring to (a) of FIG. 13 , no data is transmitted in the idle period ⓑ, and one line data ⓐ is transmitted in the data transmission period between the idle periods ⓑ. is sent According to (a) of FIG. 13 , the number of lines transmitted in each data transmission section, that is, the data size is fixed.

즉, 데이터 전송 구간의 듀레이션(duration)이 고정되어 있다.That is, the duration of the data transmission section is fixed.

따라서, 데이터 전송 구간과 아이들 구간이 동일한 간격으로 반복됨으로써, 도 2에 도시된 바와 같이 수신측(즉, 디스플레이 장치)에서 파워 노이즈(Power noise)가 일정한 간격으로 발생하게 된다. Accordingly, as the data transmission section and the idle section are repeated at the same interval, power noise is generated at the receiving side (ie, the display device) at regular intervals as shown in FIG. 2 .

이에 반해, 도 13의 (b)를 참조하면, 아이들(idle) 구간(ⓑ, idle period)에서는 데이터는 전송되지 않으며, 아이들(idle) 구간(ⓑ) 사이의 데이터 전송 구간에서 전송되는 라인 데이터의 크기, 즉, 라인수는 가변된다.On the other hand, referring to (b) of FIG. 13 , data is not transmitted in the idle period ⓑ, and line data transmitted in the data transmission period between the idle period ⓑ. The size, that is, the number of lines, is variable.

도 13의 (b)에 도시된 바와 같이, 각 데이터 전송 구간에서 하나의 라인 데이터(ⓐ)이 전송될 수도 있고, 두 개의 라인 데이터(ⓒ)가 전송될 수도 있으며 세 개의 라인 데이터가 전송될 수도 있다.As shown in (b) of FIG. 13 , one line data ⓐ may be transmitted, two line data ⓒ may be transmitted, and three line data may be transmitted in each data transmission section. have.

각 데이터 전송 구간에서 전송되는 라인 데이터의 크기, 즉, 라인수는 상술한 바와 같이, 랜덤 라인 생성기(240)에 의해 결정된다. The size of line data, ie, the number of lines, transmitted in each data transmission period is determined by the random line generator 240 as described above.

본 발명의 실시예에 따르면, 데이터 전송 구간의 듀레이션이 가변적이므로, 데이터 전송 구간과 아이들 구간의 간격이 일정하지 않다. 이에 따라, 수신측(즉, 디스플레이 장치)에서 발생하는 파워 노이즈(Power noise)가 감소된다.According to an embodiment of the present invention, since the duration of the data transmission section is variable, the interval between the data transmission section and the idle section is not constant. Accordingly, power noise generated at the receiving side (ie, the display device) is reduced.

예컨대, 디스플레이 컨트롤러가 동일한 프레임 데이터를 디스플레이 장치로 전송하는 것으로 가정할 때, 디스플레이 컨트롤러에서 모드 설정 신호가 제1값으로 설정된 경우, 즉, 라인 데이터의 크기(라인수)가 가변되는 경우에. 상기 디스플레이 장치에서 발생하는 파워 노이즈는, 모드 설정 신호가 제1값으로 설정된 경우, 즉 라인 데이터의 크기(라인수)가 고정인 경우에 상기 디스플레이 장치에 발생하는 파워 노이즈 보다 적다.For example, when it is assumed that the display controller transmits the same frame data to the display device, when the mode setting signal is set to the first value in the display controller, that is, when the size (number of lines) of line data is changed. Power noise generated in the display device is less than power noise generated in the display device when the mode setting signal is set to the first value, that is, when the size (number of lines) of line data is fixed.

따라서, 본 발명의 실시예에 따르면, 디스플레이 장치에서의 디스플레이 잡음이 줄어 들어, 디스플레이 품질 및 디스플레이 장치를 포함하는 기기의 성능이 개선된다.Accordingly, according to an embodiment of the present invention, display noise in a display device is reduced, and thus display quality and performance of a device including the display device are improved.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.The present invention can also be implemented as computer-readable codes on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored.

컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있다.Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage device.

또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.In addition, the computer-readable recording medium is distributed in a computer system connected through a network, so that the computer-readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention pertains.

상기 본 발명의 내용은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.The content of the present invention has been described with reference to the embodiment shown in the drawings, but this is only exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. will be. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the appended claims.

1, 400: 전자 시스템
10: SoC
20: 디스플레이 장치
21: 디스플레이 드라이버
25: 디스플레이 패널
30: 외부 메모리
100: 중앙처리장치(central processing unit(CPU)
110: ROM(read only memory; 110)
120: RAM(random access memory)
130: 이미지 처리 프로세서(ISP: image signal processor)
150: 그래픽 프로세싱 유닛(graphics processing unit(GPU)
160: 메모리 컨트롤러
170: 포스트 프로세서
180: 시스템 버스
200: 디스플레이 컨트롤러
210: 데이터 인터페이스
220: 제어 인터페이스
230: 버퍼 메모리
240, 240a, 240b: 데이터 사이즈 컨트롤러
241: 레지스터
243: 랜덤 라인 생성기(random line generator)
245: 패턴 저장부(Pattern Storage)
247: 패턴 생성기(Pattern Generator)
249: 데이터 사이즈 결정부(Data Size Determiner)
250: 타이밍 컨트롤러
260: 디스플레이 구동 회로
1, 400: electronic system
10: SoC
20: display device
21: display driver
25: display panel
30: external memory
100: central processing unit (CPU)
110: ROM (read only memory; 110)
120: random access memory (RAM)
130: image signal processor (ISP)
150: graphics processing unit (GPU)
160: memory controller
170: post processor
180: system bus
200: display controller
210: data interface
220: control interface
230: buffer memory
240, 240a, 240b: data size controller
241: register
243: random line generator
245: pattern storage (Pattern Storage)
247: Pattern Generator
249: Data Size Determiner (Data Size Determiner)
250: timing controller
260: display driving circuit

Claims (20)

디스플레이 장치를 제어하는 디스플레이 컨트롤러에 있어서,
M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 메모리;
하나의 상기 프레임 데이터를 전송하는 구간은 복수의 전송 구간을 포함하고, 각각의 상기 복수의 전송 구간 동안 상기 디스플레이 장치로 전송되는 데이터의 사이즈를 가변적으로 조절하는 데이터 사이즈 컨트롤러; 및
상기 메모리로부터 상기 데이터 사이즈에 상응하는 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 구동 회로를 포함하는 디스플레이 컨트롤러.
A display controller for controlling a display device, comprising:
a memory for storing frame data including line data of M (an integer greater than or equal to 2);
a data size controller for variably adjusting the size of data transmitted to the display device during each of the plurality of transmission sections, wherein a section for transmitting one of the frame data includes a plurality of transmission sections; and
and a display driving circuit for reading data corresponding to the data size from the memory and transmitting the data to the display device.
제1항에 있어서, 상기 데이터 사이즈 컨트롤러는
최대 라인수를 저장하는 레지스터; 및
상기 최대 라인수를 초과하지 않는 범위에서 랜덤하게 지정 라인수를 가변하는 랜덤 라인 생성기를 포함하며,
상기 디스플레이 구동 회로는 상기 랜덤 라인 생성기의 지정 라인수에 따라 상기 메모리로부터 라인 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 컨트롤러.
The method of claim 1, wherein the data size controller is
register for storing the maximum number of lines; and
and a random line generator that randomly varies the specified number of lines within a range that does not exceed the maximum number of lines,
The display driving circuit reads line data from the memory according to the number of lines specified by the random line generator and transmits the read line data to the display device.
제2항에 있어서, 상기 디스플레이 구동 회로는
아이들 구간에서는 상기 라인 데이터를 전송하지 않으며, 데이터 전송 구간에서 상기 지정 라인수에 상응하는 라인 데이터를 전송하며,
상기 데이터 전송 구간의 듀레이션은 상기 지정 라인수에 따라 가변되는 디스플레이 컨트롤러.
The method of claim 2, wherein the display driving circuit
In the idle section, the line data is not transmitted, and in the data transmission section, line data corresponding to the specified number of lines is transmitted,
The duration of the data transmission section is variable according to the specified number of lines.
제2항에 있어서, 상기 레지스터는
모드 설정 신호를 더 저장하며,
상기 모드 설정 신호가 제1값으로 설정된 경우에는 상기 지정 라인수는 가변되고,
상기 모드 설정 신호가 제2값으로 설정된 경우에는 상기 지정 라인수는 고정(fix)되는 디스플레이 컨트롤러.
3. The method of claim 2, wherein the register is
store more mode setting signals,
When the mode setting signal is set to a first value, the number of designated lines is variable,
When the mode setting signal is set to a second value, the number of designated lines is fixed.
제2항에 있어서, 상기 랜덤 라인 생성기는
난수 발생 알고리즘 또는 의사 난수 발생 알고리즘에 따라 상기 지정 라인수를 발생하는 디스플레이 컨트롤러.
3. The method of claim 2, wherein the random line generator
A display controller that generates the specified number of lines according to a random number generation algorithm or a pseudo-random number generation algorithm.
제1항에 있어서, 상기 데이터 사이즈 컨트롤러는
미리 정해진 복수의 난수열(random number sequence)을 저장하는 패턴 저장부;
상기 패턴 저장부에 저장된 상기 복수의 난수열을 이용하여 랜덤 패턴을 생성하는 패턴 생성기; 및
상기 랜덤 패턴에 따라, 상기 데이터의 사이즈를 결정하는 데이터 사이즈 결정부를 포함하는 디스플레이 컨트롤러.
The method of claim 1, wherein the data size controller is
a pattern storage unit for storing a plurality of predetermined random number sequences;
a pattern generator for generating a random pattern by using the plurality of random number sequences stored in the pattern storage unit; and
and a data size determiner configured to determine a size of the data according to the random pattern.
제6항에 있어서, 상기 패턴 생성기는
상기 복수의 난수열을 랜덤하게 섞어(shuffle), 상기 랜덤 패턴을 생성하는 디스플레이 컨트롤러.
The method of claim 6, wherein the pattern generator
A display controller that randomly shuffles the plurality of random number sequences to generate the random pattern.
제6항에 있어서, 상기 데이터 사이즈 결정부는
모드 설정 신호에 응답하여 상기 데이터의 사이즈를 상기 랜덤 패턴에 따라 가변하는 디스플레이 컨트롤러.
The method of claim 6, wherein the data size determining unit
A display controller that varies the size of the data according to the random pattern in response to a mode setting signal.
제1항에 있어서, 상기 디스플레이 구동 회로는
상기 메모리에 저장된 상기 프레임 데이터를 미리 정해진 표준에 따른 신호로 변환하고, 변환된 신호를 상기 디스플레이 장치로 전송하는 디스플레이 컨트롤러.
According to claim 1, wherein the display driving circuit
The display controller converts the frame data stored in the memory into a signal according to a predetermined standard, and transmits the converted signal to the display device.
제9항에 있어서, 상기 미리 정해진 표준은
MIPI®(Mobile Industry Processor Interface) 이고,
상기 디스플레이 컨트롤러는 MIPI DSI COMMAND MODE에서 동작하는 디스플레이 컨트롤러.
10. The method of claim 9, wherein the predetermined standard is
MIPI ® (Mobile Industry Processor Interface),
The display controller is a display controller operating in MIPI DSI COMMAND MODE.
디스플레이 장치; 및
상기 디스플레이 장치를 제어하는 디스플레이 컨트롤러를 포함하며,
상기 디스플레이 컨트롤러는
M(2 이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 저장하는 메모리;
하나의 상기 프레임 데이터를 전송하는 구간은 복수의 전송 구간을 포함하고, 각각의 상기 복수의 전송 구간 동안 상기 디스플레이 장치로 전송되는 데이터의 사이즈를 가변적으로 조절하는 데이터 사이즈 컨트롤러; 및
상기 메모리로부터 상기 데이터 사이즈에 상응하는 데이터를 독출하여 상기 디스플레이 장치로 전송하는 디스플레이 구동 회로를 포함하는 전자 시스템.
display device; and
a display controller for controlling the display device;
the display controller
a memory for storing frame data including line data of M (an integer greater than or equal to 2);
a data size controller for variably adjusting the size of data transmitted to the display device during each of the plurality of transmission sections, wherein a section for transmitting one of the frame data includes a plurality of transmission sections; and
and a display driving circuit for reading data corresponding to the data size from the memory and transmitting the data to the display device.
제11항에 있어서, 상기 데이터 사이즈 컨트롤러는
최대 라인수를 저장하는 레지스터; 및
상기 최대 라인수를 초과하지 않는 범위에서 랜덤하게 지정 라인수를 가변하는 랜덤 라인 생성기를 포함하며,
상기 디스플레이 구동 회로는 상기 랜덤 라인 생성기의 지정 라인수에 따라 상기 메모리로부터 라인 데이터를 독출하여 상기 디스플레이 장치로 전송하는 전자 시스템.
12. The method of claim 11, wherein the data size controller is
register for storing the maximum number of lines; and
and a random line generator that randomly varies the specified number of lines within a range that does not exceed the maximum number of lines,
The display driving circuit reads line data from the memory according to the number of lines specified by the random line generator and transmits the line data to the display device.
제12항에 있어서, 상기 디스플레이 구동 회로는
아이들 구간에서는 상기 라인 데이터를 전송하지 않으며, 데이터 전송 구간에서 상기 지정 라인수에 상응하는 라인 데이터를 전송하며,
상기 데이터 전송 구간의 듀레이션은 상기 지정 라인수에 따라 가변되는 전자 시스템.
13. The method of claim 12, wherein the display driving circuit
In the idle section, the line data is not transmitted, and in the data transmission section, line data corresponding to the specified number of lines is transmitted,
The duration of the data transmission section is variable according to the number of designated lines.
제12항에 있어서, 상기 레지스터는
모드 설정 신호를 더 저장하며,
상기 모드 설정 신호가 제1값으로 설정된 경우에는 상기 지정 라인수는 가변되고,
상기 모드 설정 신호가 제2값으로 설정된 경우에는 상기 지정 라인수는 고정되는 전자 시스템.
13. The method of claim 12, wherein the register is
store more mode setting signals,
When the mode setting signal is set to a first value, the number of designated lines is variable,
When the mode setting signal is set to a second value, the number of designated lines is fixed.
제14항에 있어서, 상기 모드 설정 신호가 제1값으로 설정된 경우 상기 디스플레이 장치에 발생하는 파워 노이즈는 상기 모드 설정 신호가 제2값으로 설정된 경우에 상기 디스플레이 장치에 발생하는 파워 노이즈 보다 작은 것을 특징으로 하는 전자 시스템.15. The method of claim 14, wherein the power noise generated in the display device when the mode setting signal is set to the first value is smaller than the power noise generated in the display device when the mode setting signal is set to the second value. electronic system with 제11항에 있어서, 상기 데이터 사이즈 컨트롤러는
미리 정해진 복수의 숫자열(number sequence)을 저장하는 패턴 저장부; 및
상기 복수의 숫자열에 기초하여, 상기 데이터의 사이즈를 결정하는 데이터 사이즈 결정부를 포함하는 전자 시스템.
12. The method of claim 11, wherein the data size controller is
a pattern storage unit for storing a plurality of predetermined number sequences; and
and a data size determining unit configured to determine a size of the data based on the plurality of numeric strings.
제16항에 있어서, 상기 데이터 사이즈 컨트롤러는
상기 패턴 저장부에 저장된 상기 복수의 숫자열을 랜덤하게 섞어(shuffle), 랜덤 패턴을 생성하는 패턴 생성기를 더 포함하고,
상기 데이터 사이즈 결정부는
상기 랜덤 패턴에 따라 상기 데이터의 사이즈를 결정하는 전자 시스템.
17. The method of claim 16, wherein the data size controller is
Further comprising a pattern generator that randomly shuffles the plurality of numeric strings stored in the pattern storage unit to generate a random pattern,
The data size determining unit
An electronic system for determining a size of the data according to the random pattern.
제11항에 있어서, 상기 디스플레이 구동 회로는
상기 메모리에 저장된 상기 프레임 데이터를 MIPI®(Mobile Industry Processor Interface) 표준에 따른 신호로 변환하고, 변환된 신호를 상기 디스플레이 장치로 전송하고,
상기 디스플레이 컨트롤러는 MIPI DSI COMMAND MODE에서 동작하는 전자 시스템.
12. The method of claim 11, wherein the display driving circuit
converting the frame data stored in the memory into a signal according to a MIPI ® (Mobile Industry Processor Interface) standard, and transmitting the converted signal to the display device;
The display controller is an electronic system operating in MIPI DSI COMMAND MODE.
디스플레이 장치를 제어하는 디스플레이 컨트롤러의 동작 방법에 있어서,
M(2이상의 정수)의 라인 데이터(line data)를 포함하는 프레임 데이터(frame data)를 메모리에 저장하는 단계;
하나의 상기 프레임 데이터를 전송하는 구간은 복수의 전송 구간을 포함하고, 각각의 상기 복수의 전송 구간 동안 상기 디스플레이 장치로 전송할 라인 데이터의 수를 지정하는 라인수를 가변적으로 조절하는 단계; 및
상기 메모리로부터 상기 가변되는 라인수에 따라 라인 데이터를 독출하여 상기 디스플레이 장치로 전송하는 단계를 포함하는 디스플레이 컨트롤러의 동작 방법.
A method of operating a display controller for controlling a display device, the method comprising:
storing frame data including line data of M (an integer greater than or equal to 2) in a memory;
variably adjusting the number of lines designating the number of line data to be transmitted to the display device during each of the plurality of transmission periods, wherein a period for transmitting one of the frame data includes a plurality of transmission periods; and
and reading line data from the memory according to the variable number of lines and transmitting the line data to the display device.
제19항에 있어서, 상기 라인수를 가변적으로 조절하는 단계는
상기 프레임 데이터의 전송을 시작하기 전에, 상기 하나의 프레임 데이터에 대한 데이터 사이즈 시퀀스를 결정하는 단계를 포함하고,
상기 데이터 사이즈 시퀀스는 복수의 라인수로 구성되는 숫자열이고,
각각의 상기 숫자열은 상기 각각의 복수의 전송 구간에 대응되는 디스플레이 컨트롤러의 동작 방법.
The method of claim 19, wherein the step of variably adjusting the number of lines comprises:
before starting the transmission of the frame data, determining a data size sequence for the one frame data;
The data size sequence is a number string consisting of a plurality of lines,
Each of the numeric strings corresponds to each of the plurality of transmission sections, the operating method of the display controller.
KR1020150015449A 2015-01-30 2015-01-30 Display Controller for improving display noise and System including the same KR102263319B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020150015449A KR102263319B1 (en) 2015-01-30 2015-01-30 Display Controller for improving display noise and System including the same
US15/006,157 US10255890B2 (en) 2015-01-30 2016-01-26 Display controller for reducing display noise and system including the same
TW105102925A TWI697888B (en) 2015-01-30 2016-01-29 Display controller for reducing display noise and system including the same
CN201610065336.5A CN105843567B (en) 2015-01-30 2016-01-29 Display controller for reducing display noise and system including the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150015449A KR102263319B1 (en) 2015-01-30 2015-01-30 Display Controller for improving display noise and System including the same

Publications (2)

Publication Number Publication Date
KR20160094175A KR20160094175A (en) 2016-08-09
KR102263319B1 true KR102263319B1 (en) 2021-06-09

Family

ID=56554604

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150015449A KR102263319B1 (en) 2015-01-30 2015-01-30 Display Controller for improving display noise and System including the same

Country Status (4)

Country Link
US (1) US10255890B2 (en)
KR (1) KR102263319B1 (en)
CN (1) CN105843567B (en)
TW (1) TWI697888B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10333710B2 (en) * 2017-09-12 2019-06-25 Qed-It Systems Ltd. Method and system for determining desired size of private randomness using Tsallis entropy
EP3741082B1 (en) 2018-01-19 2021-12-29 Qed-It Systems Ltd. Proof chaining and decomposition
TWI749442B (en) 2020-01-06 2021-12-11 力晶積成電子製造股份有限公司 Semiconductor package
CN111681689B (en) * 2020-06-30 2022-05-06 芯颖科技有限公司 Storage circuit, driving chip and display device
CN113326016B (en) * 2021-08-04 2021-10-22 卡莱特云科技股份有限公司 Method and device for improving contrast of LED display screen and computer equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100026618A1 (en) * 2008-08-01 2010-02-04 Nec Electronics Corporation Display device and signal driver
US20140098893A1 (en) * 2012-10-09 2014-04-10 Mediatek Inc. Data processing apparatus for configuring display interface based on compression characteristic of compressed display data and related data processing method

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000258750A (en) 1999-03-11 2000-09-22 Toshiba Corp Liquid crystal display device
JP4005014B2 (en) 2003-10-30 2007-11-07 株式会社 日立ディスプレイズ Liquid crystal display
KR101194473B1 (en) 2004-11-16 2012-10-24 엔엑스피 비 브이 Bus communication system
KR100621020B1 (en) * 2004-12-08 2006-09-19 엘지전자 주식회사 Methods and a apparatus of controlling panel display for mobile phone
KR20070119373A (en) 2006-06-15 2007-12-20 삼성전자주식회사 Printed circuit board and liquid crystal display having the same
KR20080074303A (en) * 2007-02-08 2008-08-13 삼성전자주식회사 Driving apparatus and method of display device
KR20090013481A (en) 2007-08-02 2009-02-05 삼성전자주식회사 Source driver circuit and liquid crystal display device having the same
KR20090059217A (en) 2007-12-06 2009-06-11 엘지디스플레이 주식회사 Driving method for liquid crystal display device
EP2105915B1 (en) * 2008-03-24 2012-11-21 Sony Corporation Liquid crystal display device and display control device
JP2009237249A (en) * 2008-03-27 2009-10-15 Hitachi Displays Ltd Display device
TW200943258A (en) 2008-04-03 2009-10-16 Novatek Microelectronics Corp Method and related device for reducing power noise in an LCD device
US8171332B2 (en) 2009-05-12 2012-05-01 Himax Technologies Limited Integrated circuit with reduced electromagnetic interference induced by memory access and method for the same
TWI426499B (en) * 2010-05-20 2014-02-11 Himax Tech Ltd System and method for storing and accessing pixel data in a graphics display device
JP5534968B2 (en) 2010-06-15 2014-07-02 シャープ株式会社 Liquid crystal display device and electronic information device
KR101795744B1 (en) 2011-04-06 2017-11-09 삼성디스플레이 주식회사 Display device and noise reduction method using the same
KR101987243B1 (en) * 2012-02-13 2019-06-11 삼성디스플레이 주식회사 Display device and driving method thereof
JP2013168097A (en) * 2012-02-17 2013-08-29 Japan Display West Co Ltd Display apparatus and display method
US20130222422A1 (en) * 2012-02-29 2013-08-29 Mediatek Inc. Data buffering apparatus capable of alternately transmitting stored partial data of input images merged in one merged image to image/video processing device and related data buffering method
KR102286641B1 (en) * 2014-09-11 2021-08-06 엘지디스플레이 주식회사 Organic Light Emitting Display Compensating For A Luminance Variation Due To The Change With Time Of The Drive Element

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100026618A1 (en) * 2008-08-01 2010-02-04 Nec Electronics Corporation Display device and signal driver
US20140098893A1 (en) * 2012-10-09 2014-04-10 Mediatek Inc. Data processing apparatus for configuring display interface based on compression characteristic of compressed display data and related data processing method

Also Published As

Publication number Publication date
KR20160094175A (en) 2016-08-09
TWI697888B (en) 2020-07-01
CN105843567B (en) 2020-09-11
US10255890B2 (en) 2019-04-09
CN105843567A (en) 2016-08-10
US20160225340A1 (en) 2016-08-04
TW201640487A (en) 2016-11-16

Similar Documents

Publication Publication Date Title
KR102299574B1 (en) Display Controller for improving display noise, Semiconductor Integrated Circuit Device including the same and Method there-of
KR102263319B1 (en) Display Controller for improving display noise and System including the same
US9865231B2 (en) Adaptive image compensation methods and related apparatuses
US10282805B2 (en) Image signal processor and devices including the same
US10438526B2 (en) Display driver, and display device and system including the same
KR20130091167A (en) Soc, operation method thereof, and mobile device having the same
US20120206474A1 (en) Blend Equation
US10402119B2 (en) Data format conversion apparatus and method and buffer chip
US8711173B2 (en) Reproducible dither-noise injection
KR102327334B1 (en) Display controller and Semiconductor Integrated Circuit Device including the same
US20110169847A1 (en) User Interface Unit for Fetching Only Active Regions of a Frame
US10346209B2 (en) Data processing system for effectively managing shared resources
KR102400104B1 (en) Image processing apparatus and Image processing method
KR102433924B1 (en) Display controller and application processor including the same
KR102247741B1 (en) An image processor, a method of operating the image processor, and an application processor including the image processor
KR102287402B1 (en) Bus Interface Device and Semiconductor Integrated Circuit including the same, and Method of operating the same
US20120127187A1 (en) Error Check-Only Mode
US8773455B2 (en) RGB-out dither interface
US20220318955A1 (en) Tone mapping circuit, image sensing device and operation method thereof
JP2011097279A (en) Data processing circuit, integrated circuit apparatus, and electronic equipment
CN117676064A (en) Video signal transmission method, equipment and storage medium based on SPI communication

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant