KR101260426B1 - 프레임 데이터 정렬 방법 및 시스템 - Google Patents

프레임 데이터 정렬 방법 및 시스템 Download PDF

Info

Publication number
KR101260426B1
KR101260426B1 KR1020100134783A KR20100134783A KR101260426B1 KR 101260426 B1 KR101260426 B1 KR 101260426B1 KR 1020100134783 A KR1020100134783 A KR 1020100134783A KR 20100134783 A KR20100134783 A KR 20100134783A KR 101260426 B1 KR101260426 B1 KR 101260426B1
Authority
KR
South Korea
Prior art keywords
frame
source
display
frames
buffer
Prior art date
Application number
KR1020100134783A
Other languages
English (en)
Other versions
KR20110079521A (ko
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 인텔 코포레이션
Publication of KR20110079521A publication Critical patent/KR20110079521A/ko
Application granted granted Critical
Publication of KR101260426B1 publication Critical patent/KR101260426B1/ko

Links

Images

Classifications

    • 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

Abstract

디스플레이 동작이 다음 소스로부터의 프레임을 출력하고자 하는 것일 때에 현 소스와 다음 소스 간의 경계가 정렬되도록 다수의 소스로부터의 프레임들의 개시를 동기화시키는데 사용될 수 있는 기술들이 개시된다. 또한, 정렬이 달성된 후에라도 제 1 소스로부터의 프레임을 디스플레이하는 동작으로부터 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 때에 발생하는 가시적인 글리치를 상기 제 2 소스로부터 디스플레이될 프레임들이 제 1 소스로부터 디스플레이된 프레임과 실질적으로 유사하다면 전환함으로써 억제하는 기술들이 개시된다.

Description

프레임 데이터 정렬 방법 및 시스템{TECHNIQUES FOR ALIGNING FRAME DATA}
본 발명은 전반적으로 화상을 디스플레이하는 분야에 관한 것이며, 특히 그래픽 엔진으로부터 수신된 데이터를 정렬하는 분야에 관한 것이다.
액정 디스플레이(LCD)와 같은 디스플레이 장치는 화소들의 행렬로 구성된 그리드를 이용하여 화상을 디스플레이한다. 이러한 디스플레이 장치는 전기 신호를 수신하여 그리드 상의 특정 위치에 화소 속성(pixel attribute)을 디스플레이한다. 이러한 디스플레이 장치의 타이밍과 디스플레이용 신호를 공급하는 그래픽 엔진의 타이밍을 서로 동기화시키는 것이 중요한 이슈가 되고 있다. 통상적으로는, 타이밍 신호가 생성되고, 그리드 상에 화소를 디스플레이하는 타이밍을 그래픽 엔진으로부터 수신된 신호의 타이밍에 동기화시킨다. 가령, VSYNC(vertical synch pulse)가 사용되어서 하나의 화면 리프레시의 종료와 다음 화면 리프레시의 개시를 서로 동기화시킨다. 또한, HSYNC(horizontal synch pulse)가 사용되어서 열 포인터(column pointer)를 디스플레이 에지 부분(display edge)으로 리셋한다.
디스플레이가 그래픽 엔진과 같은 외부 소스로부터 대신에 프레임 버퍼로부터의 하나 이상의 프레임을 렌더링하는 경우에 프레임 버퍼가 사용될 수 있다. 몇몇 경우에, 디스플레이는 프레임 버퍼로부터의 프레임을 디스플레이하는 동작을 그래픽 엔진으로부터의 프레임을 디스플레이하는 동작으로 전환한다. 그래픽 엔진으로부터의 프레임과 프레임 버퍼로부터의 프레임 사이의 정렬이 그래픽 엔진으로부터의 프레임을 디스플레이하기 전에 발생하는 것이 바람직하다. 또한, 프레임 버퍼로부터의 프레임을 디스플레이하는 동작에서 그래픽 엔진으로부터의 프레임을 디스플레이하는 동작으로 변경할 때, 아티팩트 또는 부분적 화면 랜더링과 같은 원하지 않는 화상 결함이 발생하지 않는 것이 바람직하다.
이하, 본 발명의 예시적인 실시예들이 본 발명을 한정하지 않는 예시적인 방식으로 첨부 도면을 참조하여 설명될 것이며, 다음의 첨부 도면에서는 유사한 참조 부호는 유사한 구성 요소를 나타낸다.
도 1은 디스플레이 인터페이스로부터의 프레임을 출력하는 동작과 프레임 버퍼로부터의 프레임을 출력하는 동작 간에 전환될 수 있는 디스플레이를 갖는 시스템의 블록도이다.
도 2는 프레임 버퍼로부터의 프레임들이 디스플레이 인터페이스로부터의 프레임들보다 긴 수직 블랭킹 영역을 갖는 경우에 소스로부터의 프레임들을 프레임 버퍼로부터의 프레임에 맞추어 정렬시키는 실시예를 나타낸다.
도 3은 프레임 버퍼로부터의 프레임들이 소스로부터의 프레임들보다 짧은 수직 블랭킹 영역을 갖는 경우에 소스로부터의 프레임들을 프레임 버퍼로부터의 프레임에 맞추어 정렬시키는 실시예를 나타낸다.
도 4는 프레임 버퍼로부터의 프레임을 소스로부터의 프레임에 맞추어 정렬하는 실시예를 나타낸다.
도 5는 SRD_ON이 비활성 상태로 된 후에 소스 프레임 신호 SOURCE_VDE의 제 1 하강 에지 후에 바로 소스로부터의 프레임들이 디스플레이로 전송되는 실시예를 나타내고 있다.
도 6A 및 도 6B는 동기화를 달성하기 위해서 소스 비콘 신호의 사용을 나타내고 있다.
도 7은 프레임 버퍼로부터의 프레임과 그래픽 엔진, 디스플레이 인터페이스 또는 다른 소스로부터의 프레임을 정렬시키기 위해서 수직 블랭킹 간격을 변화시키는데 사용될 수 있는 예시적인 시스템을 도시하고 있다.
도 8은 프레임 버퍼로부터의 프레임이 그래픽 엔진으로부터의 프레임과 서로 정렬되지 않는 상황을 나타낸다.
도 9는 신호 RX Frame n+1의 활성 상태로의 전이가 신호 TX Frame n+1이 활성 상태로 변할 때의 Synch Up Time 윈도우 내에서 발생하는 실례를 도시하고 있다.
도 10은 제 1 소스로부터의 프레임을 디스플레이하는 동작을 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 시점을 결정할 때 사용될 수 있는 프로세스의 예시적인 흐름도이다.
도 11은 국부적 리프레시 모드에서 스트리밍 모드로의 전이와 관련된 타이밍 신호 및 상태의 실례를 나타내고 있다.
도 12는 본 발명의 일 실시예에 따른 시스템을 나타내고 있다.
본 명세서 전반에 걸쳐서 사용되는 "일 실시예(one embodiment)" 또는 "실시예(an embodiment)"라는 기재는 이러한 실시예와 관련되어서 기술되는 특별한 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함됨을 의미한다. 따라서, 본 명세서의 다양한 구절에서 "일 실시예" 또는 "실시예"라는 기재가 등장할 경우에 이러한 실시예들이 반드시 모두 동일한 실시예를 말하는 것은 아니다. 또한, 그러한 특별한 특징, 구조 또는 특성은 하나 이상의 실시예들에서 조합될 수도 있다.
제 1 소스로부터의 프레임을 출력하는 동작으로부터 제 2 소스로부터의 프레임을 출력하는 동작으로 전환할 때에, 제 2 소스로부터의 프레임은 제 1 소스로부터 출력된 프레임과 크게 상이할 수 있다. 본 발명의 다양한 실시예들에서는, 프레임 정렬이 달성된 후에라도 제 1 소스로부터의 프레임을 디스플레이하는 동작으로부터 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 때에 발생하는 가시적인 글리치(visible glitch)가 상기 제 2 소스로부터 디스플레이될 프레임들이 제 1 소스로부터 디스플레이된 프레임과 실질적으로 유사하다면 전환됨으로써 억제되고 있다. 가령, 제 1 프레임 소스는 메모리 버퍼이고 제 2 프레임 소스는 그래픽 엔진 또는 비디오 카메라와 같은 영상 소스로부터의 프레임 스트림일 수 있다. 제 1 소스로부터의 프레임을 제 2 소스로부터의 프레임에 대해서 타이밍 정렬을 한 후에, 제 2 소스가 업데이트된 화상을 포함하고 있는가가 판정된다. 만일 어떠한 업데이트된 화상도 가용하지 않고 타이밍 정렬은 존재한다면, 제 2 소스로부터의 프레임들이 디스플레이되기 위해서 제공된다. 데이터의 각 프레임은 화소에 상응하는 화면을 나타낸다.
도 1은 디스플레이 인터페이스로부터의 프레임을 출력하는 동작과 프레임 버퍼로부터의 프레임을 출력하는 동작 간에 전환되는 디스플레이를 갖는 시스템의 블록도이다. 프레임 버퍼(102)는 단일 포트 RAM일 수 있으며 이와 달리 다른 타입의 메모리로서 구현될 수 있다. 이 프레임 버퍼는 자신으로의 기록 및 자신으로부터의 판독이 동시에 가능하게 한다. 그러나, 이러한 판독 및 기록은 반드시 동시적인 필요는 없다. 프레임이 판독되는 동안에 기록될 수 있다. 이는 가령 타임 멀티플렉스 방식으로 이루어진다.
멀티플렉서(MUX)(104)는 프레임 버퍼(102) 또는 수신기(106)를 통해서 수신되는 호스트 디바이스로부터의 화상을 디스플레이(미도시)에 제공한다. 수신기(106)는 VESA(Video Electronics Standards Association) DisplayPort Standard, version 1, Revision 1a (2008) 및 이의 개정판들과 호환될 수 있다. 판독 FIFO 및 레이트 변환기(Read FIFO and Rate Converter)(108)는 프레임 버퍼(102)로부터의 화상 또는 영상을 MUX(104)에 제공한다. RX 데이터는 (가령, 도시되지 않은 호스트 그래픽 엔진, 칩세트 또는 PCH(Platform Controller Hub)로부터 라우팅된) 디스플레이 인터페이스로부터의 데이터를 식별한다. 타이밍 생성기(110)는 MUX(104)가 상기 RX 데이터로부터의 화상 또는 영상 신호를 출력할지 아니면 프레임 버퍼(102)로부터의 화상 또는 영상 신호를 출력할지를 제어한다.
이 시스템이 저전력 상태에 있을 때에는, 디스플레이 인터페이스는 비활성화되고 디스플레이 화상은 프레임 버퍼(102) 내의 데이터로 리프레시된다. 디스플레이 인터페이스로부터 수신된 화상들이 변경되기 시작하거나 다른 조건들이 만족되면, 이 시스템은 고전력 상태로 들어간다. 이어서, 디스플레이 인터페이스는 다시 활성화되고 디스플레이 화상은 디스플레이 인터페이스로부터의 데이터에 기초하여 리프레시되거나 디스플레이 화상이 디스플레이 인터페이스로부터의 데이터에 기초하여 리프레시되는 다른 조건들이 존재하게 된다. MUX(104)는 프레임 버퍼(102)와 디스플레이 인터페이스 중 하나를 선택하여 디스플레이 화상을 리프레시한다. 이렇게 저전력 상태와 고전력 상태 간의 전이가 어떠한 시간에도 발생할 수 있도록 하기 위해서, 프레임 버퍼(102)와 디스플레이 인터페이스를 통해서 디스플레이를 구동하는 그래픽 엔진 간의 전환이 어떠한 관찰 가능한 아티팩트도 디스플레이 상에 없이 발생할 필요가 있다. 이러한 아티팩트를 감소시키기 위해서, 프레임 버퍼(102)로부터의 프레임이 디스플레이 인터페이스로부터의 프레임과 정렬될 필요가 있다. 또한, 프레임 버퍼(102)로부터의 프레임을 디스플레이 인터페이스로부터의 프레임에 대해서 정렬한 후에, 그래픽 엔진이 업데이트된 화상을 포함하고 있는지의 여부가 판정된다.
다양한 실시예에서, 디스플레이 엔진, 소프트웨어 또는 그래픽 디스플레이 드라이버가 프레임 버퍼로부터의 프레임이 아니라 그래픽 엔진으로부터의 프레임의 디스플레이를 허용할 시점을 결정한다. 그래픽 디스플레이 드라이버는 그래픽 엔진, 디스플레이 해상도 및 컬러 맵핑(color mapping)을 구성한다. 운영 체제는 그래픽 드라이버를 사용하여 그래픽 엔진과 통신할 수 있다.
아래의 표 1은 제 1 프레임 소스에서 제 2 프레임 소스로 변경하는데 사용될 수 있는 다양한 실시예들의 특성을 요약하고 있다.
표 1
Figure 112010085793412-pat00001
여기서, VT는 라인 카운트 값으로 환산했을 때에 소스 프레임 길이이며, N은 라인 카운트 값으로 환산했을 때에 디스플레이 인터페이스로부터의 프레임들의 수직 블랭킹 영역(vertical blanking region)과 프레임 버퍼로부터의 프레임들의 수직 블랭킹 영역 간의 차를 나타낸다. VT는 시간으로 환산하여 표현될 수도 있다.
각 경우에, MUX로부터의 출력은 대략적으로 프레임 버퍼로부터의 프레임의 수직 블랭킹 영역과 그래픽 엔진으로부터의 프레임의 수직 블랭킹 영역 간의 정렬 시에 전환될 수 있다. 신호 TCON_VDE는 디스플레이의 프레임 버퍼로부터의 디스플레이를 수직으로 활성화하는 것을 나타낸다. 이 신호 TCON_VDE가 활성 상태에 있을 때에, 데이터는 디스플레이를 위해서 가용한 상태에 있다. 그러나, 신호 TCON_VDE가 비활성 상태에 있을 때에, 수직 블랭킹 영역이 발생하고 있는 중이다. 신호 SOURCE_VDE는 디스플레이 인터페이스로부터의 디스플레이를 수직으로 활성화하는 것을 나타낸다. 이 신호 SOURCE_VDE가 활성 상태에 있을 때에, 디스플레이 인터페이스로부터의 데이터가 디스플레이를 위해서 가용한 상태에 있다. 그러나, 신호 SOURCE_VDE가 비활성 상태에 있을 때에, 수직 블랭킹 영역이 디스플레이 인터페이스로부터의 프레임에 대해서 발생하고 있는 중이다.
비활성 상태로 들어가는 신호 SRD_ON은 디스플레이 인터페이스 상의 다음 수직 활성 영역의 개시와 함께 시작되는 디스플레이 인터페이스로부터의 데이터에 대해서 디스플레이가 구동될 예정이며 그래픽 엔진으로부터의 프레임이 정렬이 발생할 때까지 버퍼 내에 저장되고 디스플레이를 위해서 버퍼로부터 판독될 수 있음을 나타낸다. 정렬이 발생한 후에는, 디스플레이를 위해서는 프레임 버퍼로부터가 아니라 디스플레이 인터페이스로부터 프레임들이 직접 제공된다.
MUX가 디스플레이 인터페이스로부터의 프레임들을 출력하면, 프레임 버퍼에 대한 전력은 감소한다. 가령, 이렇게 프레임 버퍼(102)의 전력을 감소시키는 것은 프레임 버퍼(102)의 클록 게이팅 구성 요소(clock gating component) 또는 파워 게이팅 구성 요소(power gating component) 및 타이밍 동기화기, 메모리 제어기 및 중재기, 타이밍 생성기(110), 기록 어드레스 및 제어 수단, 판독 어드레스 및 제어 수단, 기록 FIFO 및 레이트 변환기 및 판독 FIFO 및 레이트 제어기(108)와 같은 다른 구성 요소들과 결부된다.
신호 SRD_STATUS는 MUX로부터의 출력이 전환되게 한다. 이 신호 SRD_STATUS가 활성 상태에 있을 때에는, 데이터는 프레임 버퍼로부터 출력되지만 신호 SRD_STATUS가 비활성 상태에 있게 되면 디스플레이 인터페이스로부터의 데이터가 출력된다. 비활성 상태로 진입하려는 신호 SRD_STATUS는 정렬이 발생했으며 MUX가 프레임 버퍼로부터가 아니라 디스플레이 인터페이스로부터의 출력 영상 스트림을 제공할 수 있음을 나타낸다.
TCON_VDE 및 SOURCE_VDE가 활성 상태에 있으면 프레임의 일부가 각기 프레임 버퍼 및 디스플레이 인터페이스로부터 판독될 수 있게 가용하다. TCON_VDE의 하강 에지 및 SOURCE_VDE의 하강 에지는 각기 프레임 버퍼 및 디스플레이 인터페이스로부터의 프레임에 대해서 수직 블랭킹 간격이 개시됨을 나타낸다. 다양한 실시예들에서, 신호 SRD_STATUS는 SOURCE_VDE의 하강 에지가 TCON 프레임 타이밍에 기초하는 타임 윈도우 내에 존재할 때에 비활성 상태로 전이된다. 다른 실시예에서는, TCON 프레임 타이밍에 기초하는 타이밍 시점이 SOURCE_VDE 타이밍에 기초하는 타임 윈도우 내에 존재할 때에 상기 SRD_STATUS 신호는 비활성 상태로 전이된다. 신호 SOURCE_VDE의 바로 다음의 상승 에지와 함께 시작하는 프레임은 디스플레이되기 위해서 MUX로부터 출력된다.
가령, 상기 타임 윈도우는 최소 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 TCON_VDE의 하강 에지로부터 어느 정도 시간이 지연된 후에 활성 상태로 될 수 있다. 상기 타임 윈도우는 플리커를 피하는 것과 같이 디스플레이 품질을 유지하면서 최대 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 활성 상태로부터 어느 정도 시간이 지연된 후에 비활성 상태로 될 수 있다. 실시예들에 따라서는, TCON_VDE 및 SOURCE_VDE 간의 원하는 위상 차를 달성하는 것과 같은, 타임 윈도우 기간을 확립하는 다른 요인들이 존재할 수 있다.
도 2는 프레임 버퍼로부터의 프레임들이 디스플레이 인터페이스로부터의 프레임들보다 긴 수직 블랭킹 영역을 갖는 경우에 소스로부터의 프레임들을 프레임 버퍼로부터의 프레임에 맞추어 정렬시키는 실시예를 나타낸다. 상기 표 1에서, 이 실시예는 "TCON 타이밍이 후행함"으로 표시되어 있다. 신호 SRD_ON가 비활성 상태로 진입할 때에, 프레임 버퍼는 프레임을 판독하고 있는 중이다. 디스플레이 인터페이스로부터의 다음 프레임들 F1, F2가 프레임 버퍼 내에 기록되고 디스플레이되기 위해서 프레임 버퍼로부터 판독된다. 가령, 디스플레이 인터페이스와 같은 소스로부터 제공된 프레임에 대한 수직 블랭킹 간격은 프레임 버퍼로부터 제공된 프레임에 대한 수직 블랭킹 간격보다 짧기 때문에, 프레임 버퍼로부터의 프레임은 각 프레임 주기에 걸쳐서 상기 소스로부터의 각 프레임에 대해서 N 개의 라인을 더 획득하게 된다.
도 2에서 원형으로 표시된 영역에서는, 소스 프레임의 수직 블랭킹 영역의 개시와 프레임 버퍼 프레임의 수직 블랭킹 영역의 개시가 서로 간의 소정의 타임 윈도우 내에서 존재하게 된다. 이러한 이벤트의 경우에 신호 SRD_STATUS는 비활성 상태로 전이된다. 신호 SOURCE_VDE의 다음 상승 에지에서는, MUX는 그래픽 엔진으로부터의 프레임 F4를 출력한다.
이 경우의 타임 윈도우는 최소 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 TCON_VDE의 하강 에지로부터 어느 정도 지연 후에 시작된다. 상기 타임 윈도우는 (1) 디스플레이 품질을 유지하면서 최대 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않고 (2) 프레임 버퍼로부터의 프레임을 판독하는 동작이 아직 시작되지 않도록, 활성 상태로부터 어느 정도 시간이 지연된 후에 비활성 상태로 될 수 있다.
이러한 정렬 결과 중 하나는 프레임 버퍼 내의 프레임 F3가 프레임 버퍼 내에는 저장되었을 지라도 생략되고 디스플레이되지 않는다는 것이다.
도 2의 실례의 경우에, 록킹(lock)을 달성하기 위한 최대 시간은 VT/N일 수 있으며 여기서 VT는 소스 프레임 크기이며 N은 그래픽 엔진으로부터의 프레임의 수직 블랭킹 영역과 프레임 버퍼로부터의 프레임의 수직 블랭킹 영역 간의 차를 라인 수의 값으로 환산하거나 시간 값으로 환산한 값이다. SRD_ON이 비활성 상태일 때에 SOURCE_VDE의 제 1 프레임이 TCON_VDE와 정렬되었다면 최소 록킹 시간은 제로 프레임일 수 있다.
도 3은 프레임 버퍼로부터의 프레임들이 소스로부터의 프레임들보다 짧은 수직 블랭킹 영역을 갖는 경우에 소스로부터의 프레임들을 프레임 버퍼로부터의 프레임에 맞추어 정렬시키는 실시예를 나타낸다. 상기 표 1에서, 이 실시예는 "TCON 타이밍이 선행함"으로 표시되어 있다. 가령, 디스플레이 인터페이스와 같은 소스로부터 제공된 프레임에 대한 수직 블랭킹 간격은 프레임 버퍼로부터 제공된 프레임에 대한 수직 블랭킹 간격보다 길기 때문에, 소스로부터의 프레임은 각 프레임 주기에 걸쳐서 상기 프레임 버퍼로부터의 각 프레임에 대해서 N 개의 라인을 더 획득하게 된다. 도 2의 실시예에서는, 신호 SRD_ON이 비활성 상태로 된 후에, 소스로부터의 프레임들은 소스 프레임의 수직 블랭킹 영역의 개시와 프레임 버퍼의 프레임의 수직 블랭킹 영역의 개시가 서로 간의 소정의 타임 윈도우 내에 존재할 때까지 프레임 버퍼 내에 저장되고 프레임 버퍼로부터 판독된다.
도 3에서 원형으로 표시된 영역에서는, 소스 프레임의 수직 블랭킹 영역의 개시와 프레임 버퍼의 프레임의 수직 블랭킹 영역의 개시가 서로 간의 소정의 타임 윈도우 내에 존재한다. 이러한 이벤트의 경우에 신호 SRD_STATUS는 비활성 상태로 전이된다. 신호 SOURCE_VDE의 다음 상승 에지에서는, 디스플레이는 프레임 버퍼로부터의 프레임과 반대되는 소스 프레임을 출력한다. 본 실례에서, 신호 SRD_ON이 비활성 상태가 된 후에 프레임 버퍼 내에 저장된 디스플레이 인터페이스로부터의 모든 프레임들이 디스플레이되기 위해서 판독되었기에 어떠한 프레임들도 생략되지 않는다.
예컨대, 타임 윈도우는 최소 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 TCON_VDE의 하강 에지 이전의 시간에 시작될 수 있고, 타임 윈도우는 (1) 최대 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않고 (2) 프레임 버퍼로부터의 프레임을 판독하는 동작이 아직 시작되지 않도록, 활성 상태로부터 어느 정도 시간이 지연된 후에야 비활성 상태로 될 수 있다.
도 3의 실례의 경우에, 록킹을 달성하기 위한 최대 시간은 VT/N일 수 있으며 여기서 VT는 소스 프레임 크기이며 N은 그래픽 엔진으로부터의 프레임의 수직 블랭킹 영역과 프레임 버퍼로부터의 프레임의 수직 블랭킹 영역 간의 차를 라인 수의 값으로 환산하거나 시간 값으로 환산한 값이다. SRD_ON이 비활성 상태일 때에 SOURCE_VDE의 제 1 프레임이 TCON_VDE와 정렬되었다면 최소 록킹 시간은 제로 프레임일 수 있다.
본 발명의 또 다른 실시예에서, 도 2 또는 도 3에 각기 개시된 후행 정렬 모드(lag alignment mode) 또는 선행 정렬 모드(lead alignment mode)가 사용되어서, 프레임 버퍼로부터가 아니라 그래픽 엔진으로부터의 프레임을 디스플레이하기 위해서 출력할 시점을 결정한다. 상기 표 1에서, 본 실시예는 "적응형 TCON 동기화"로 표시되어 있다. 디스플레이 인터페이스 데이터를 디스플레이하는 것을 표시하도록 SRD_ON 신호가 비활성 상태로 된 후에 바로, 소스 프레임 및 디스플레이 인터페이스 프레임의 수직 블랭킹이 검사된다.
타이밍 제어기 또는 다른 로직이 신호 SRD_ON이 비활성 상태로 된 후에 측정된 SOURCE_VDE 오프셋을 비교하는데 사용될 수 있는 임계치 P를 결정한다. SOURCE_VDE 오프셋은 프레임 버퍼의 프레임의 수직 블랭크의 제 1 하강 에지와 소스 프레임의 수직 블랭크의 제 1 하강 에지 간에 측정될 수 있다. 임계치 P는 다음의 등식을 사용하여 결정될 수 있다.
P = N1 * VT/(N1+N2)
여기서 N1 및 N2는 제조자에 의해서 특정되는 값이며, VT는 소스 프레임 시간(길이)이다.
타이밍 제어기는 N1 값 및 N2 값으로 프로그램되며, 여기서 N1는 프레임 버퍼로부터의 프레임이 디스플레이 인터페이스로부터의 프레임에 대해서 후행하는 정도의 프로그램된 한계치를 나타내고, N2는 프레임 버퍼로부터의 프레임이 디스플레이 인터페이스로부터의 프레임에 대해서 선행하는 정도의 프로그램된 한계치를 나타낸다.
후행 정렬 기술을 사용할지 아니면 선행 정렬 기술을 사용할 지의 여부를 판정하는 것은 다음과 같은 사항에 의해서 이루어진다.
만약 초기 SOURCE_VDE 오프셋이 임계치 P 이하이면, 도 2에 도시된 바와 같은 후행 정렬 기술을 사용하고, 만약 초기 SOURCE_VDE 오프셋이 임계치 P를 초과하면, 도 3에 도시된 바와 같은 선행 정렬 기술을 사용한다.
대부분의 패널의 경우에 있어서 N1이 N2보다 매우 크기 때문에, 최대 록킹 시간은 VT/N보다 매우 크다.
도 4는 프레임 버퍼로부터의 프레임을 소스로부터의 프레임에 맞추어 정렬하는 실시예를 나타낸다. 상기 표 1에서, 본 실시예는 "연속 캡처(continuous capture)"로 표시되어 있다. 본 실시예에서, 정렬이 발생한 후에도, 소스 프레임은 프레임 버퍼 내에 기록되고(SOURCE_VDE) 프레임 버퍼로부터 판독된다(TCON_VDE). 정렬이 발생하기 전에는, 프레임 버퍼로부터의 프레임에 대한 수직 블랭킹 간격이 소스로부터의 프레임에 대한 수직 블랭킹 간격보다 길다. 다른 실시예에서, 프레임 버퍼로부터의 프레임의 수직 블랭킹 영역은 소스 프레임의 수직 블랭킹 영역보다 N 라인만큼 더 길 수 있다.
SRD_ON이 비활성 상태에 있으면, 디스플레이 인터페이스로부터의 프레임들은 프레임 버퍼 내에 기록되지만 디스플레이할 데이터는 프레임 버퍼로부터 계속 판독된다. 이러한 방식으로, 디스플레이 인터페이스로부터의 각 프레임은 먼저 프레임 버퍼에 기록되고 이어서 프레임 버퍼로부터 판독되어서 디스플레이로 전송된다. 도 4에서 점선 사각형으로 표시된 바와 같이, 소스 프레임의 수직 블랭킹 영역의 개시와 프레임 버퍼 프레임의 수직 블랭킹 영역의 개시는 서로 간의 소정의 타임 윈도우 내에 존재한다.
소스 프레임의 수직 블랭킹 영역이 시작되면(즉, 신호 SOURCE_VDE가 비활성 상태로 진행되면), SRD_STATUS 신호가 비활성 상태로 된다. 프레임은 프레임 버퍼로부터 계속 판독되지만 신호 TCON_VDE의 바로 다음의 활성 상태 후에는 수직 블랭킹 영역은 소스 프레임 SOURCE_VDE의 수직 블랭킹 영역과 정합하도록 설정된다.
가령, 이 연속 캡처에 기초하여 TCON 타이밍이 후행하는 경우에는, 최소 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 TCON_VDE의 하강 에지 후의 어느 정도의 시간이 지연되어서야 상기 타임 윈도우는 시작될 수 있고, 디스플레이 품질이 유지되면서 최대 수직 블랭크 디스플레이 사양이 TCON 프레임에 대해서 위배되지 않도록 활성 상태로부터 어느 정도의 시간이 지나서야 상기 타임 윈도우는 비활성 상태로 될 수 있다. 이러한 타임 윈도우는 TCON_VDE와 SOURCE_VDE 간에 어느 정도의 최소 위상 차가 유지되도록 구성될 수도 있다.
록킹을 달성하기 위한 최대 시간은 VT/N일 수 있으며 여기서 VT는 소스 프레임 크기이며 N은 소스 버퍼 프레임의 수직 블랭킹 영역과 프레임 버퍼 프레임의 수직 블랭킹 영역 간의 라인 수의 차이다. 제 1 SOURCE_VDE가 TCON_VDE와 정렬되었다면 최소 록킹 시간은 제로 프레임일 수 있다.
도 5는 SRD_ON이 비활성 상태로 된 후에 소스 프레임 신호 SOURCE_VDE의 제 1 하강 에지 후에 바로 소스로부터의 프레임들이 디스플레이로 전송되는 실시예를 나타내고 있다. 상기 표 1에서, 본 실시예는 "TCON 타이밍 리셋"으로 표시되어 있다. 일 가능한 시나리오는 데이터 버퍼로부터의 프레임이 소스 프레임 신호 SOURCE_VDE의 제 1 하강 에지에서 디스플레이되기 위해서 완전하게 판독되지 않을 수도 있다는 것이다. 소스 프레임 신호 SOURCE_VDE의 제 1 하강 에지 동안 판독된 프레임은 도 5에서 "짧은 프레임(short frame)"으로 표시되어 있다. 이 짧은 프레임은 프레임 버퍼로부터의 프레임의 전체가 디스플레이되기 위해서 판독되지 않았음을 나타낸다. 가령, 프레임 내의 화소들의 첫 번째 반절 부분이 디스플레이된다면, 디스플레이되는 나머지 반절 부분은 이전에 전송된 프레임 버퍼로부터의 두 번째 반절 부분에 해당하게 된다. 이로써 나머지 반절 부분의 디스플레이는 쇠퇴하게 되어 이 나머지 반절 부분 상의 이미지 품질 저하가 눈에 보이게 될 수 있다.
TCON_VDE의 수직 블랭킹 영역 동안에 제 1 소스 프레임 신호 SOURCE_VDE가 비활성 상태로 전이되면, 상기와 같은 짧은 프레임들은 발생하지 않을 수 있다.
본 실시예에서, 최대 록킹 시간은 제로일 수 있다. 그러나, 시각적 아티팩트가 상기 짧은 프레임으로부터 기인될 수 있다.
도 6A 및 도 6B는 프레임 버퍼로부터의 프레임과 소스로부터의 프레임 간의 동기화를 유지하기 위해서 소스가 동기화 신호를 주기적으로 제공하는 실례들을 나타내고 있다. 상기 표 1에서, 이러한 실례들은 "소스 비콘(source beacon)"으로 표시되어 있다. 도 6A에서, 신호 SOURCE_BEACON은 수직 블랭킹 영역의 종료를 표시하는 한편, 도 6B에서는 신호 SOURCE_BEACON의 상승 또는 하강 에지는 수직 블랭킹 영역의 개시를 나타낸다. 신호 SOURCE_BEACON는 다양한 형태를 취할 수 있으며 임의의 타이밍 시점을 표시할 수 있다. 디스플레이가 소스로부터가 아니라 프레임 버퍼로부터의 프레임을 디스플레이할 때에도, 타이밍 생성기 로직은 본 신호 SOURCE_BEACON을 사용하여 프레임들 간의 동기화를 유지할 수 있다. 따라서, 프레임 버퍼로부터의 프레임을 디스플레이하는 동작으로부터 소스로부터의 프레임을 디스플레이하는 동작으로 디스플레이 사항이 변경될 때에, 이 프레임들은 서로 동기화되며 디스플레이 인터페이스로부터의 프레임의 디스플레이하는 동작은 소스로부터의 바로 다음의 프레임 상에서 발생할 수 있다.
도 7은 프레임 버퍼로부터의 프레임과 그래픽 엔진, 디스플레이 인터페이스 또는 다른 소스로부터의 프레임 간을 서로 정렬시키기 위해서 수직 블랭킹 간격을 변화시키는데 사용될 수 있는 예시적인 시스템을 도시하고 있다. 도 7의 시스템은 도 1의 타이밍 생성기 및 타이밍 동기화기의 일부로서 구현될 수 있다. 이 시스템은 프레임 버퍼로부터의 프레임을 판독하는 동작을 제어하고 프레임 버퍼로부터의 프레임을 판독하는 동작에서 그래픽 엔진, 디스플레이 인터페이스 또는 다른 소스로부터의 프레임을 프레임 버퍼 내로 기록하는 동작으로 반복적으로 전이시키는데 사용된다.
도 7의 시스템은 프레임 버퍼로부터의 프레임의 활성 상태의 개시와 디스플레이 인터페이스와 같은 소스로부터의 프레임의 활성 상태의 개시가 서로 간의 허용 가능한 시간 영역 내에서 발생하는지의 여부를 판정하는데 사용될 수 있다. 만일 프레임 버퍼로부터의 프레임의 활성 상태의 개시와 디스플레이 인터페이스와 같은 소스로부터의 프레임의 활성 상태의 개시가 서로 간의 허용 가능한 시간 영역 내에서 발생하면, 소스로부터의 프레임이 디스플레이되기 위해서 출력될 수 있다. TCON VBI가 소스 VBI보다 큰 타이밍 후행 모드에서는, 도 7의 시스템은 디스플레이 인터페이스로부터의 프레임을 출력할 시점을 결정하는데 사용될 수 있다. 도 7의 시스템은 디스플레이 인터페이스로부터의 프레임들의 스트리밍 또는 연속 캡처(continuous capture)가 발생하는지의 여부를 결정하는데 사용될 수 있다.
몇몇 실시예에서, 패널의 리프레시 레이트는 저하될 수 있으며, 따라서 프레임 버퍼로부터 판독된 프레임의 수직 블랭킹 간격 동안에 추가 라인들이 부가될 수 있다. 가령, 리프레시 레이트가 통상적으로 60 Hz이면, 리프레시 레이트는 57 Hz 등으로 저하될 수 있다. 따라서, 시간에 상응하는 추가 화소 라인들이 수직 블랭킹 간격에 부가될 수 있다.
라인 카운터(702)는 프레임 버퍼로부터 판독되고 디스플레이를 위해서 전송되는 프레임 내의 라인들의 개수를 카운트한다. 사전 규정된 개수의 라인들이 카운트된 후에, 라인 카운터(702)는 신호 Synch Up Time 활성 상태로 변경한다. 신호 Synch Up Time는 이전에 기술한 바와 같은 타임 윈도우에 대응하며, 이 타임 윈도우 내에서 동기화가 발생하게 된다. 신호 Synch Now는 신호 SOURCE_VDE로부터 생성되고 동기화가 발생할 수 있는 소스 프레임 내의 타임 포인트를 표시한다. 신호 Synch Up Time이 이미 활성 상태에 있는 동안에 신호 Synch Now가 활성 상태로 들어가면, 라인 카운터(702)는 자신의 라인 카운트를 리셋한다. 이렇게 라인 카운트를 리셋함으로써 프레임 버퍼로부터의 프레임의 수직 블랭킹 간격이 감소하고 프레임 버퍼로부터의 프레임이 그래픽 엔진(또는 다른 소스)으로부터의 프레임과 거의 동일한 시간에 제공되게 된다. 특히, 파라미터 Back Porch Width는 라인 카운터의 리셋 동작 발생에 기초하여 프레임의 수직 블랭킹 간격을 감소시키도록 변화된다.
V Synch Width, Front Porch Width 및 Back Porch Width와 같은 파라미터들은 특정 라인 카운트 또는 경과 시간에 기초하고 있다.
도 7의 시스템의 동작이 도 8 및 도 9를 참조하여 설명될 것이다. 도 8은 도 7의 시스템이 프레임 버퍼로부터의 프레임을 그래픽 엔진 또는 다른 소스로부터의 프레임에 맞추어서 아직 동기화시키지 않은 상황을 나타낸다. 도 9는 도 7의 시스템이 프레임 버퍼로부터의 프레임을 그래픽 엔진 또는 다른 소스로부터의 프레임에 맞추어서 동기화시킨 상황을 나타낸다.
먼저, 도 8에서는, 활성 상태에 있는 신호 RX Frame n은 프레임 버퍼로 기록될 데이터가 디스플레이 인터페이스로부터 입수 가능함을 나타낸다. 신호 RX Frame n이 비활성 상태로 전이되면, 신호 RX V Synch가 기록 포인터를 프레임 버퍼 내의 제 1 화소로 리셋하도록 토글(toggle)한다. 신호 TX Frame n이 활성 상태이면, 디스플레이되기 위해서 프레임이 프레임 버퍼로부터 판독된다. 신호 TX Frame n이 비활성 상태가 되면, 판독 포인터를 프레임 버퍼의 개시 부분으로 리셋시키도록 신호 TX V Synch가 토글한다. 프론트 포치 윈도우(front porch window)는 TX Frame n 신호 판독을 완료하는 시점과 신호 TX V Synch가 활성 상태로 되는 개시 시점 간의 시간이다.
타이밍 생성기(704, 도 7 참조)는 신호 TX V Synch, 신호 TX DE 및 신호 TX H Synch를 생성한다. 신호 Reset이 사용되어서 DE 타이밍의 선두 에지를 임의의 소망하는 개시 시점으로 설정한다. 이는 TX 타이밍을 RX 타이밍에 동기화시키는데 사용된다.
이러한 예시적인 실시예에서, 신호 Synch Now는 RX Frame n+1의 제 1 라인을 프레임 버퍼에 기록한 후에 활성 상태로 전이된다. 일반적으로, 신호 Synch Now는 RX 프레임의 제 1 라인 이외의 라인들을 기록하는 것을 표시하는데 사용될 수 있다. TX 프레임의 활성 부분과 TX 프레임에 대한 최소 수직 백 포치 시간(minimum vertical back porch time)의 결합에 대응하는 시간의 경과를 라인 카운터(702)가 카운트한 후에 신호 Synch Up Time은 활성 상태로 변경된다. TX 프레임의 수직 블랭킹 간격이 만료되거나 리셋 신호가 라인 카운터를 클리어(clear)하면 신호 Synch Up Time은 비활성 상태로 된다. 신호 Synch Up Time가 비활성 상태로 되면, TX Frame n+1이 판독된다. 그러나, 신호 Synch Up Time가 아직 활성 상태에 있지 않을 때에는 신호 Synch Now가 활성 상태로 된다. 따라서, 신호 TX Frame n+1의 수직 블랭킹 간격은 신호 RX Frame n+1과의 정렬을 달성하도록 단축되지 않는다.
가령, 1280 * 800 화소 해상 능력을 갖는 화면의 경우에, 신호 Synch Up Time은 라인 카운터(702, 도 7 참조)가 821 개의 수평 라인들이 카운트되었음을 검출하면 활성 상태로 전이된다. 821 개의 라인을 카운팅하는 바는 프레임의 활성 부분과 TX 프레임에 대한 최소 백 포치 시간의 결합에 대응하는 시간의 경과에 대응한다.
신호 TX Data는 타이밍 생성기(704)가 데이터 인에이블 신호(TX DE)를 다음 화소 클록 동안에 생성하게 한다(도 7에서는 TX DE 신호에 대응함). 이로써, TX Frame n+1이 프레임 버퍼의 시작 부분으로부터 판독된다.
도 9는 신호 TX Frame n+1이 활성 상태로 전이되기 바로 이전에 신호 RX Frame n+1이 Synch Up Time 윈도우 내에서 활성 상태로 전이되는 실례를 도시하고 있다. 신호 Synch Now는 RX Frame n+1의 제 1 라인(또는 다른 라인)을 프레임 버퍼에 기록하는 동작의 종료 이후에 생성된다. 이 신호는 프레임 판독 포인터가 프레임 기록 포인터 뒤에서 후행하게 한다. 신호 Synch Up Time이 이미 활성 상태에 있는 동안에 신호 Synch Now가 활성 상태로 되면, 신호 Reset(도 7 참조)이 활성 상태로 된다. 활성 상태로 된 신호 Reset로 인해서, 타이밍 생성기(704)는 프레임 RX Frame n+1를 프레임 버퍼에 기록한 후에 프레임 버퍼로부터 수신된 프레임 TX Frame n+1 중에서 대략 하나의 라인을 판독함으로써 수직 블랭킹 간격을 단축시킨다. 다른 실시예에서, 하나 이상의 라인 차가 구현될 수 있다. 이로써, 프레임 판독 포인터는 프레임 기록 포인터를 후행하게 된다. 또한, 신호 Synch Up Time이 이미 활성 상태에 있을 동안에 신호 Synch Now가 활성 상태로 되면, 신호 LOCK가 비활성 상태에서 활성 상태로 전이되는데, 이 신호는 TX 프레임이 현재 RF 프레임에 록킹되어 있음을 나타낸다. 동기화 후에는, 상기 연속 캡처 실례에서와 같이, 프레임 버퍼로부터의 프레임(TX 프레임)의 수직 블랭킹 간격은 디스플레이 인터페이스로부터의 프레임(RX 프레임)의 수직 블랭킹 간격과 동일하게 되는데, 그 이유는 LOCK 신호가 활성 상태로 된 후에 매 프레임마다 Reset 신호가 발생했기 때문이다.
도 7의 시스템은 TCON VBI가 소스 VBI보다 작게 되는 타이밍 선행 모드에서도 프레임 버퍼로부터의 프레임을 디스플레이 인터페이스와 같은 소스로부터의 프레임과 동기화시키는데 사용될 수 있다. TCON 프레임 버퍼로부터의 프레임의 VBI는 동기화 시점이 타임 윈도우 내에 존재하고 다음 SOURCE_VDE의 상승 에지 이전에 전환이 발생할 때에 해당 프레임에 대한 최대 VBI까지 증가될 수 있다. 이와 달리, 동기화 시점은 타임 윈도우 내에 존재하며, 전환이 동기화 시점에 발생할 수 있다.
도 10은 제 1 소스로부터의 프레임을 디스플레이하는 동작을 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 시점을 결정하는데 사용되는 프로세스의 예시적인 흐름도이다. 제 1 소스는 프레임 버퍼이며 제 2 소스는 그래픽 엔진으로부터 프레임을 수신하는 디스플레이 인터페이스일 수 있다. 도 10의 프로세스는 TCON에 대해 대향하여 있는 호스트 시스템에 의해서 수행될 수 있다.
단계(1002)에서는, 상이한 소스들로부터의 프레임들이 정렬된다. 가령, 조기에 개시된 기술들이 사용되어서 디스플레이할 제 2 소스로부터의 프레임들을 제공할 시점이 결정된다. 정렬은 다양한 조건 하에서 발생할 수 있다. 가령, 제 1 소스로부터의 프레임의 종료가 제 2 소스로부터의 프레임의 종료의 타임 윈도우 내에서 발생하면, 제 2 소스로부터의 프레임의 다음 개시 시에, 제 2 소스로부터의 프레임이 디스플레이되기 위해서 제공될 수 있다. 다른 실례에서는, 제 1 소스 및 제 2 소스로부터의 프레임들이 프레임 버퍼 내에 저장되고 제 1 소스로부터의 프레임의 종료가 제 2 소스로부터의 프레임의 종료의 타임 윈도우 내에서 발생하면, 제 1 소스로부터의 다음 프레임 후에, 제 1 소스로부터의 프레임들 간의 수직 블랭킹 간격이 제 2 소스로부터의 프레임들 간의 수직 블랭킹 간격과 정합하도록 설정된다. 또 다른 실례에서, 제 1 소스로부터의 프레임의 전체 부분이 디스플레이되기 위해서 완전하게 제공되었는지의 여부와 상관없이, 제 2 소스로부터의 프레임 및 수직 블랭킹 간격이 즉각적으로 출력된다.
단계(1004)에서, 정렬이 이루어졌는지의 여부가 판정된다. 정렬이 이루어졌으면, 단계(1006)가 단계(1004)를 따른다. 정렬이 이루어지지 않았다면, 단계(1004)가 단계(1006)를 따른다. 프로세서 상에서 동작하는 디스플레이 드라이버는 디스플레이 패널과 연관된 상태 레지스터를 판독하여 타이밍 정렬이 발생했는지를 판정한다. 상태 레지스터는 디스플레이 패널의 메모리 또는 호스트 시스템의 메모리 내에 위치한다. 디스플레이포트(DisplayPort) 사양이 디스플레이 패널에 대한 인터페이스로서 사용되면, 상태 레지스터는 디스플레이 패널의 메모리 내에 위치한다.
단계(1006)에서, 자가 리프레시 디스플레이 모드로 재진입할지의 여부가 판정된다. 자가 리프레시 디스플레이 모드는 프레임 버퍼로부터의 화상을 반복적으로 디스플레이는 것과 관련된다. 다른 영상 소스가 분리되거나 정적 화상을 제공할 때에 자가 리프레시 디스플레이 모드가 사용될 수 있다. 본 출원과 공동 계류 중이며 2008년 11월 18일자에 출원되고 변호사 참조 번호 P27581이며 발명자가 Kaw, Calyer, Ranganathan 및 Biswal인 미국 특허 출원 제12/313,257 "TECHNIQUES TO CONTROL OF SELF REFRESH DISPLAY FUNCTIONALITY"에서 개시된 기술들이 사용되어서 자가 리프레시 디스플레이 모드로 재진입할 지의 여부가 판정될 수 있다. 단계(1006) 이후에, 단계(1004)가 수행된다.
도시되지는 않았지만, 몇몇 실시예에서, 단계(1006)와 단계(1008) 간에, 정렬이 여전히 유지되고 있는지의 여부가 검사된다. 이러한 검사는 제 1 소스로부터의 프레임의 수직 블랭킹 영역의 개시가 제 2 소스로부터의 프레임의 수직 블랭킹 영역의 개시의 타임 윈도우 내에서 발생하는지의 여부를 판정함으로써 수행된다. 이러한 검사 단계는 제 1 소스와 제 2 소스들로부터의 프레임들의 수직 블랭킹 영역들의 길이가 서로 대략 동일한지의 여부를 판정하는 단계를 포함한다. 단계(1002)에서 정렬에 이른 상태들이 여전히 존재하는지의 여부를 판정하는 검사가 달리 수행될 수도 있다.
제 2 소스로부터의 프레임들은 제 1 소스에 저장되고 디스플레이되기 위해서 출력된다. 가령, 디스플레이 인터페이스로부터의 프레임은 해당 프레임 버퍼에 대한 타이밍 제어기의 타이밍에 따라서 상기 프레임 버퍼 내에 저장되고 이 프레임 버퍼로부터 판독된다. 그러나, 프레임 버퍼로부터의 프레임을 출력하는 동작으로부터 디스플레이 인터페이스로부터의 프레임을 출력하는 동작으로 전환할 때에, 디스플레이 인터페이스로부터의 프레임의 내용이 프레임 버퍼로부터 출력된 프레임의 내용과 크게 다를 수 있다. 단계(1008)가 수행되어서, 정렬이 이루어졌을지라도 제 1 소스로부터의 프레임을 디스플레이하는 동작에서 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 때에 발생하게 되는 가시적인 글리치를 억제시킨다. 전술한 바와 같이, 제 1 소스로부터의 프레임을 디스플레이하는 동작에서 제 2 소스로부터의 프레임을 디스플레이하는 동작으로 전환할 때에 상기 제 1 소스와 제 2 소스로부터의 프레임들을 서로 정렬시키면 가시적 불연속성이 제거될 수 있다. 단계(1008)에서, (제 1 소스 대신에) 제 2 소스로부터의 직접적인 출력을 허용한 후에 제공될 수 있는 제 2 소스로부터의 하나 이상의 프레임이 제 1 소스로부터의 화상과 유사한지의 여부가 평가된다. 따라서, 화면상에서의 가시적 글리치 또는 급격한 변화는 제 2 소스로부터의 하나 이상의 프레임이 제 1 소스로부터의 하나 이상의 프레임과 유사하면 제 2 소스로부터의 직접적 출력으로 전환됨으로써 억제될 수 있다. 도 1에서, MUX(104)는 제 2 소스로부터의 프레임들을 직접적으로 출력하는 동작으로부터 전환된다.
도 10으로 돌아가서, 단계(1008)에서, 임의의 새로운 화상이 제 2 소스로부터 입수 가능한지의 여부가 판정된다. 새로운 화상이 상기 제 2 소스로부터 입수 가능한지의 여부를 판정할 수 있는 다양한 방식들이 존재한다. 가령, 그래픽 엔진이 백 버퍼(back buffer)를 사용하여 그래픽 엔진에 의해서 현재 처리된 화상 컨텐츠를 저장하고 프론트 버퍼(front buffer)를 사용하여 디스플레이하기 위해서 가용될 수 있는 화상 컨텐츠를 저장한다. 그래픽 엔진은 디스플레이할 화상이 가용하게 되면 그 지정 버퍼를 백 버퍼에서 프론트 버퍼로 변경하고 이와 달리 프론트 버퍼에서 백 버퍼로 그 지정 버퍼를 변경할 수도 있다. 그래픽 엔진이 그 지정 버퍼를 변경하면, 프론트 버퍼가 업데이트되고 디스플레이될 새로운 화상이 가용 상태에 있게 된다. 어떠한 프론트 버퍼도 업데이트되지 않으면, 디스플레이 인터페이스로부터의 화상은 프레임 버퍼로부터의 화상과 유사한 것으로 간주된다. 그래서, 몇몇 경우에서는, 지정 버퍼의 변경은 새로운 화상이 그래픽 엔진에 의해서 랜더링되었음을 나타낸다.
몇몇 경우에, 단계(1008)에서, 수정된 그래픽 드라이버가 화상 처리를 요청하는 임의의 인스트럭션을 트랩핑한다(trapping). 이 그래픽 드라이버는 운영 체제와 그래픽 처리 유닛 간에 존재한다. 이 드라이버는 직사각형 드로잉 명령(draw rectangle command) 또는 다른 화상에 대한 랜더링을 지시하는 다른 명령과 같은 소정의 능동 명령을 트랩핑한다. 인스트럭션을 트랩핑하는 바는 그래픽 드라이버가 소정의 기능 호출을 식별하는 것과 소정의 기능이 호출되었음을 레지스터 내에서 표시하는 것을 포함한다. 레지스터가 비어 있으면, 제 2 소스로부터 어떠한 새로운 화상도 제공되지 않으며 디스플레이 인터페이스로부터의 화상은 프레임 버퍼로부터의 화상과 유사하다고 간주된다.
몇몇 경우에, 단계(1008)에서, 그래픽 처리 하드웨어가 화상 랜더링을 실행하기 위해서 마이크로 레벨의 인스트럭션들이 저장된 명령 큐(command queue)를 사용한다. 만일 이 명령 큐가 비어 있으면, 제 2 소스로부터 어떠한 새로운 화상도 제공되지 않으며 디스플레이 인터페이스로부터의 화상은 프레임 버퍼로부터의 화상과 유사하다고 간주된다.
몇몇 경우에, 단계(1008)에서, 그래픽 처리 유닛은 처리된 화상 결과를 메모리 내의 어드레스 범위 내에 기록한다. 그래픽 드라이버 또는 다른 로직이 어드레스 범위 내로 임의의 기록이 수행되었는지의 여부를 판정할 수 있다. 어떠한 기록도 수행되지 않았다면, 제 2 소스로부터 어떠한 새로운 화상도 제공되지 않으며 디스플레이 인터페이스로부터의 화상은 프레임 버퍼로부터의 화상과 유사하다고 간주된다.
몇몇 경우에, 단계(1008)에서, 그래픽 드라이버는 중앙 처리 유닛에 지시하거나 그래픽 처리 유닛의 범용 컴퓨팅 명령들을 실행하여 제 1 소스로부터의 프레임과 제 2 소스로부터의 프레임을 서로 영역 대 영역으로 비교한다. 이 비교 결과에 기초하여 새로운 프레임이 상기 제 2 소스로부터 입수 가능한지의 여부가 판정된다. 이로써, 프레임 버퍼로부터 즉각적으로 출력된 프레임(프레임 1)이 프레임 1에 바로 후행하는 디스플레이 인터페이스부터의 프레임(프레임 2)과 상이한 정도를 평가할 수 있다. 만일 프레임 1과 프레임 2가 유사하면, 디스플레이 인터페이스로부터의 화상은 프레임 버퍼로부터의 화상과 유사하다고 간주된다.
그래픽 엔진에 의해서 새로운 화상이 랜더링되었는지의 여부를 판정하는 것은 즉각적인 판정에 해당하거나 타임 윈도우에 걸쳐서 상태를 검사하면서 수행될 수도 있다. 가령, 타임 윈도우는 수직 블랭킹 간격의 폭일 수 있다.
새로운 화상이 제 2 소스로부터 입수 가능하면, 단계(1006)는 단계(1008)를 따른다. 새로운 화상이 제 2 소스로부터 입수 가능하지 않다면, 단계(1010)가 단계(1008)를 따른다. 단계(1010)가 단계(1008)를 따르게 되면 제 1 소스로부터가 아니라 제 2 소스로부터의 프레임을 출력하는 것이 허용된다.
단계(1010)에서, 제 1 소스로부터의 프레임의 디스플레이 동작이 제 2 소스로부터의 프레임의 디스플레이 동작으로 전환된다. 몇몇 경우에, 타이밍 제어기의 멀티플렉서(가령, 도 1의 MUX(104))가 제 2 소스로부터의 프레임이 출력되는 것을 허용하도록 구성된다. 타이밍 정렬이 이루어지고 제 2 소스로부터 디스플레이될 화상이 프레임 버퍼로부터 즉시 판독된 화상과 유사할 때까지 제 2 소스로부터의 프레임들은 프레임 버퍼 내에 기록되고 프레임 버퍼로부터 판독될 수 있다.
몇몇 경우에, 그래픽 엔진에 의해서 구동되는 전용 제어 라인이 MUX로 하여금 제 1 소스로부터의 프레임을 출력하는 동작을 제 2 소스로부터의 프레임을 출력하는 동작으로 전환하게 하거나 이와 반대로 전환하게 할 수 있다. 이 전용 제어 라인은 유선일 수 있다.
몇몇 경우에, 그래픽 엔진이 AUX 채널을 통해서 메시지를 전송하거나 디스플레이포트(DisplayPort) 인터페이스의 제 2 차 데이터 패킷을 전송하여 디스플레이로 하여금 제 1 소스로부터의 프레임을 출력하는 동작을 제 2 소스로부터의 프레임을 출력하는 동작으로 전환하게 하거나 이와 반대로 전환하게 할 수 있다.
또한, 단계(1010)에서, 프레임 버퍼의 전력 다운이 허용되고 위상 동기 루프 및 플립 플롭과 같은 클록 관련 회로에 대한 클록 게이팅 동작(즉, 클록 신호를 제공하지 않는 동작)이 허용된다. 또한, 도 1에 도시된 바와 같은 타이밍 동기화기, 메모리 제어기 및 중재기, 타이밍 생성기(110), 기록 어드레스 및 제어 수단, 판독 어드레스 및 제어 수단, 기록 FIFO 및 레이트 변환기 및 판독 FIFO 및 레이트 변환기(108)로부터 바이어스 전압 및 전류를 제거하는 동작인 전력 게이팅 동작이 허용된다.
도 11은 국부적 리프레시 모드에서 스트리밍 모드로의 전이와 관련된 타이밍 신호 및 상태의 실례를 나타내고 있다. 단계(1102)에서, 제 2 소스는 디스플레이할 화상을 업데이트하는 것을 일시 중단한다. 이로써, 국부적 리프레시 동작 모드에 진입한다. 국부적 리프레시 동작은 프레임 버퍼 내에 국부적으로 저장된 화상을 반복적으로 디스플레이하는 것을 포함한다. 도 11에서 "타이밍 정렬"이 비활성 상태로 들어가면 디스플레이 장치의 타이밍이 사용되어서 제 2 소스의 타이밍과는 반대되는 방식으로 국부적 화상이 생성된다. 국부적 리프레시 모드로 들어가기 이전에 있어서의 "메모리 기록"은 제 1 소스로부터의 화상들이 프레임 버퍼 내에 저장됨을 나타낸다. 국부적 리프레시 모드에 진입한 후에, 프레임 버퍼는 그 내부로 기록되지 않는다. 단계(1102) 후에 있어서의 "메모리 판독"은 프레임 버퍼 내에 국부적으로 저장된 화상이 디스플레이되기 위해서 판독됨을 나타낸다.
단계(1104)에서, 국부적 리프레시 동작 모드가 사라지고 스트리밍 모드가 진행된다. 그 이유는 제 2 소스가 업데이트된 화상을 제공했기 때문이다. 이때에 "메모리 기록"은 프레임 버퍼가 제 2 소스로부터의 화상을 저장했음을 나타낸다. 또한, "메모리 판독"은 프레임 버퍼 내에 국부적으로 저장된 화상이 판독되어서 디스플레이됨을 나타낸다. 스트리밍 모드에 진입한 후에, 제 2 소스로부터의 화상들이 제 2 소스의 타이밍과는 반대되는 디스플레이 장치의 타이밍에 따라서 프레임 버퍼 내에 저장되고 프레임 버퍼로부터 판독된다.
단계(1106)에서, 제 2 소스로부터의 프레임들은 디스플레이되기 위해서 직접적으로 출력되고, 디스플레이할 프레임을 출력하는데 있어서 프레임 버퍼는 사용되지 않는다. "타이밍 정렬"이 활성 상태로 진입하는 바는 제 1 소스(즉, 프레임 버퍼)로부터 출력된 프레임의 에지와 제 2 소스로부터 출력된 프레임의 에지 간에 정렬이 발생하였음을 나타낸다. 또한, 도 10의 단계(1008)에 기초하여, 프레임 버퍼로부터 판독된 화상은 제 2 소스로부터의 화상과 유사하다. 따라서, 제 2 소스로부터의 프레임을 바로 출력하는 동작으로 전환할 때에 가시적 글리치 또는 급격한 변화는 눈에 보이지 않을 수 있게 된다. "메모리 기록"은 프레임 버퍼가 제 2 소스로부터의 프레임을 저장하는 것을 중단하고 있음을 나타낸다. "메모리 판독"은 프레임 버퍼로부터 어떠한 프레임도 후속으로 판독하지 않음을 나타낸다.
도 12는 본 발명의 일 실시예에 따른 시스템(1200)을 도시하고 있다. 이 시스템(1200)은 호스트 시스템(1202) 및 타겟 디바이스(1250)와 같은 소스 디바이스를 포함한다. 호스트 시스템(1202)은 다수의 코어를 갖는 프로세서(1210), 호스트 메모리(1212), 칩세트(1205), 저장 장치(1214) 및 그래픽 서브시스템(1215)을 포함한다. 칩세트(1205)는 호스트 시스템(1202) 내의 디바이스들을 서로 통신 가능하게 연결시킨다. 그래픽 서브시스템(1215)은 비디오 및 오디오 신호를 처리한다. 호스트 시스템(1202)은 다른 디바이스와의 통신을 위해서 하나 이상의 안테나(미도시) 및 이 안테나에 접속된 무선 네트워크 인터페이스(미도시) 또는 유선 네트워크 인터페이스(미도시)를 더 포함한다.
몇몇 실시예에서, 프로세서(1210)는 적어도 본 출원과 공동 계류 중이며 2008년 11월 18일자에 출원되고 변호사 참조 번호 P27581이며 발명자가 Kaw, Calyer, Ranganathan 및 Biswal인 미국 특허 출원 제12/313,257 "TECHNIQUES TO CONTROL OF SELF REFRESH DISPLAY FUNCTIONALITY"에서 개시된 방식으로 타겟 디바이스(1050)의 프레임 버퍼의 전력을 다운시킬 시점을 결정한다.
가령, 호스트 시스템(1202)은 이미지 캡처 명령 및 구성 요소 전력 다운 명령을 인터페이스(1245)를 사용하여 전송된 연장 패킷들을 사용하여 타겟 디바이스(1050)에 전송한다. 인터페이스(1245)는 모두가 VESA(Video Electronics Standards Association) DisplayPort Standard, version 1, Revision 1a (2008)에 개시되어 있는 Main Link 및 AUX 채널을 포함한다. 다양한 실시예에서, 호스트 시스템(1202)(가령, 그래픽 서브시스템(1215))은 적어도 본 출원과 공동 계류 중이며 2008년 9월 29일자에 출원되고 변호사 참조 번호 P27579이며 발명자가 Kaw, Vasquez 및 Kardach인 미국 특허 출원 제12/286,192 "PROTOCOL EXTENSIONS IN A DISPLAY PORT COMPATIBLE INTERFACE"에서 개시된 방식으로 타겟 디바이스(1250)로의 통신 사항을 형성 및 전송한다.
타겟 디바이스(1250)는 시각적 컨텐츠를 디스플레이하거나 오디오 컨텐츠를 방송할 수 있는 디스플레이 장치일 수 있다. 타겟 디바이스(1250)는 프레임 버퍼 또는 다른 소스로부터의 프레임을 디스플레이하기 위해서 도 1의 시스템을 포함할 수 있다. 가령, 타겟 디바이스(1250)는 화소의 기록 동작을 제어하는 타이밍 제어기(TCON) 및 타겟 디바이스(1250)의 동작을 지시하는 레지스터와 같은 제어 로직을 포함한다.
본 명세서에서 기술된 그래픽 및/또는 영상 처리 기술은 다양한 하드웨어 아키텍처로 구현될 수 있다. 가령, 그래픽 및/또는 영상 처리 기능이 칩세트 내에 통합될 수 있다. 이와 달리, 별도의 그래픽 및/또는 영상 처리 프로세서가 사용될 수도 있다. 또는, 그래픽 및/또는 영상 처리 기능은 다중 코어 프로세서를 포함하는 범용 프로세서에 의해서 구현될 수도 있다. 또는, 그래픽 및/또는 영상 처리 기능은 디스플레이 기능을 구비한 휴대용 컴퓨터 또는 이동 전화와 같은 소비자 가전 장치에서 구현될 수도 있다.
본 발명의 다양한 실시예들은 마더보드를 사용하여 상호 접속된 하나 이상의 마이크로칩 또는 집적 회로, 하드웨어 로직, 메모리 디바이스에 의해서 저장되고 마이크로프로세서에 의해서 실행되는 소프트웨어, 펌웨어, ASIC(application specific integrated circuit) 또는 FPGA(field programmable gate array)로서 구현되거나 이들의 임의의 조합에 의해서 구현될 수 있다. 용어 "로직"은 예를 들자면 소프트웨어, 하드웨어, 또는 이들의 조합을 포함한다.
본 발명의 실시예들은 가령 컴퓨터, 컴퓨터들로 구성된 네트워크 또는 다른 전자 장치들과 같은 하나 이상의 머신에 의해서 실행되어서 이 머신으로 하여금 본 발명의 실시예들에 따른 동작들을 수행하게 하는 머신 실행가능한 인스트럭션들을 그 상에 저장하고 있는 하나 이상의 머신 판독가능한 매체를 포함하는 컴퓨터 프로그램 제품으로서 제공될 수도 있다. 머신 판독가능한 매체는 다음으로 한정되지는 않지만 플로피 디스크, 광 디스크, CD-ROM, 자기 광학 디스크, ROM, RAM, EPROM, EEPROM, 자기 또는 광학 카드, 플래시 메모리 또는 머신 실행가능한 인스트럭션을 저장하기에 적합한 다른 타입의 매체 또는 머신 판독가능한 매체를 포함한다.
도면 및 전술한 설명 부분은 본 발명의 다양한 실례들을 제공하고 있다. 본 명세서에서 여러 구성 요소들이 다수의 개별적 기능 항목으로 도시되었지만, 단일 기능 요소로 통합될 수 있음을 본 기술 분야의 당업자는 잘 이해하고 있을 것이다. 또한, 어떠한 구성 요소들은 다수의 기능 요소들로 분할될 수도 있다. 일 실시예에 속한 구성 요소들은 다른 실시예에 부가될 수도 있다. 가령, 본 명세서에서 개시된 프로세스의 순서들이 변경될 수 있으며 본 명세서에서 개시된 바로 한정되지는 않는다. 또한, 임의의 흐름도의 단계들 또는 동작들은 반드시 도시된 순서대로 구현될 필요는 없다. 또한, 도시된 동작들 모두가 반드시 수행될 필요는 없다. 또한, 다른 동작들에 의존하지 않고 있는 동작들은 그러한 다른 동작들과는 병렬로 수행될 수 있다. 그러나, 본 발명의 범위는 본 명세서에 개시된 실례들로 한정되지는 않는다. 이보다는, 본 명세서에서 명시적으로 개시되었는지의 여부와는 상관없이 구조, 크기, 사용 물질에서의 차이와 같은 수많은 변경이 가능하다. 본 발명의 범위는 최소한 다음의 청구 범위에 의해서 제공된 바와 같이 넓게 해석되어야 한다.

Claims (18)

  1. 컴퓨터로 구현되는 방법으로서,
    제 1 소스로부터의 프레임이 제 2 소스로부터의 프레임과 타이밍 정렬되었는지의 여부를 판정하는 단계와,
    상기 제 2 소스로부터의 프레임을 상기 제 1 소스에 기록하는 단계와,
    상기 제 1 소스로부터의 프레임을 디스플레이하기 위해서 제공하는 단계와,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계와,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사하며 상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 타이밍 정렬되었다고 판정되면, 상기 제 2 소스로부터의 프레임의 디스플레이를 선택적으로 허용하는 단계를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 제 1 소스는 디스플레이의 프레임 버퍼를 포함하고,
    상기 제 2 소스는 디스플레이 인터페이스를 포함하는
    방법.
  3. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는, 상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 타이밍 정렬된 후에 임의의 그래픽 엔진 버퍼 업데이트(graphics engine buffer update)가 발생했는지의 여부를 판정하는 단계를 포함하는
    방법.
  4. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는, 상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 타이밍 정렬된 후에 임의의 드로잉 호출(draw call)이 발행되었는지의 여부를 판정하는 단계를 포함하는
    방법.
  5. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는, 상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 타이밍 정렬된 후에 임의의 화상을 메모리 내의 어드레스 블록에 기록하였는지의 여부를 판정하는 단계를 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는 상기 제 1 소스로부터의 프레임의 수직 또는 수평 블랭킹(blanking) 간격 동안 발생하는
    방법.
  7. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는 디스플레이 장치에서 발생하는
    방법.
  8. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 단계는 그래픽 엔진에서 발생하는
    방법.
  9. 제 1 항에 있어서,
    상기 제 1 소스로부터의 프레임이 상기 제 2 소스로부터의 프레임과 타이밍 정렬되었는지의 여부를 판정하는 단계는, 상기 제 1 소스로부터의 프레임의 수직 블랭킹 간격의 개시가 상기 제 2 소스로부터의 프레임의 수직 블랭킹 간격의 윈도우 내에서 발생하였는지의 여부를 판정하는 단계를 포함하는
    방법.
  10. 시스템으로서,
    그래픽 엔진과 메모리를 포함하는 호스트 시스템과,
    프레임 버퍼와,
    상기 프레임 버퍼와 통신 가능하게 접속된 디스플레이와,
    상기 그래픽 엔진을 상기 디스플레이에 통신 가능하게 접속시키는 디스플레이 인터페이스와,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 타이밍 정렬되었는지의 여부를 판정하는 로직과,
    상기 그래픽 엔진으로부터의 프레임을 상기 프레임 버퍼에 기록하는 로직과,
    디스플레이하기 위해서 상기 프레임 버퍼로부터의 프레임을 제공하는 로직과,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 로직과,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 실질적으로 유사하며 상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 타이밍 정렬되었다고 판정되면, 상기 그래픽 엔진으로부터의 프레임의 디스플레이를 선택적으로 허용하는 로직을 포함하는
    시스템.
  11. 제 10 항에 있어서,
    상기 디스플레이 인터페이스는 적어도 디스플레이포트(DisplayPort) 사양과 호환되는
    시스템.
  12. 제 10 항에 있어서,
    상기 디스플레이 인터페이스는 무선 네트워크 인터페이스를 포함하는
    시스템.
  13. 제 10 항에 있어서,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 실질적으로 유사한지의 여부를 판정하는 로직은,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 타이밍 정렬된 후에 임의의 그래픽 엔진 버퍼 업데이트가 발생하였는지의 여부와,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 타이밍 정렬된 후에 임의의 드로잉 호출이 발행되었는지의 여부와,
    상기 프레임 버퍼로부터의 프레임이 상기 그래픽 엔진으로부터의 프레임과 타이밍 정렬된 후에 임의의 화상이 메모리 내의 어드레스 블록에 기록되었는지의 여부 중 적어도 하나를 판정하는
    시스템.
  14. 삭제
  15. 삭제
  16. 제 10 항에 있어서,
    상기 호스트 시스템에 통신 가능하게 접속되어 영상을 수신하고 영상을 상기 메모리에 저장하는 무선 네트워크 인터페이스를 더 포함하는
    시스템.
  17. 제 10 항에 있어서,
    상기 디스플레이는 상기 그래픽 엔진으로부터의 프레임의 디스플레이를 선택적으로 허용하는 로직을 포함하는
    시스템.
  18. 제 10 항에 있어서,
    상기 호스트 시스템은 상기 그래픽 엔진으로부터의 프레임의 디스플레이를 선택적으로 허용하는 로직을 포함하는
    시스템.
KR1020100134783A 2009-12-30 2010-12-24 프레임 데이터 정렬 방법 및 시스템 KR101260426B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/655,389 US8643658B2 (en) 2009-12-30 2009-12-30 Techniques for aligning frame data
US12/655,389 2009-12-30

Publications (2)

Publication Number Publication Date
KR20110079521A KR20110079521A (ko) 2011-07-07
KR101260426B1 true KR101260426B1 (ko) 2013-05-07

Family

ID=44186963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100134783A KR101260426B1 (ko) 2009-12-30 2010-12-24 프레임 데이터 정렬 방법 및 시스템

Country Status (4)

Country Link
US (1) US8643658B2 (ko)
KR (1) KR101260426B1 (ko)
CN (2) CN103730103B (ko)
TW (1) TWI419145B (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4581012B2 (ja) * 2008-12-15 2010-11-17 株式会社東芝 電子機器、及び表示制御方法
KR20100104804A (ko) * 2009-03-19 2010-09-29 삼성전자주식회사 Ddi, ddi 제공방법 및 상기 ddi를 포함하는 데이터 처리 장치
JP5793869B2 (ja) * 2010-03-05 2015-10-14 株式会社リコー 伝送管理システム、伝送管理方法、及び伝送管理プログラム
US9361824B2 (en) * 2010-03-12 2016-06-07 Via Technologies, Inc. Graphics display systems and methods
US8730251B2 (en) * 2010-06-07 2014-05-20 Apple Inc. Switching video streams for a display without a visible interruption
US9052902B2 (en) * 2010-09-24 2015-06-09 Intel Corporation Techniques to transmit commands to a target device to reduce power consumption
US20120147020A1 (en) * 2010-12-13 2012-06-14 Ati Technologies Ulc Method and apparatus for providing indication of a static frame
CN102625110B (zh) * 2012-03-30 2014-08-20 天津天地伟业物联网技术有限公司 视频数据的缓存系统及缓存方法
US9183618B2 (en) * 2012-05-09 2015-11-10 Nokia Technologies Oy Method, apparatus and computer program product for alignment of frames
US9135672B2 (en) 2013-05-08 2015-09-15 Himax Technologies Limited Display system and data transmission method thereof
TWI493537B (zh) * 2013-06-05 2015-07-21 Himax Tech Ltd 顯示系統及其資料傳遞方法
TWI514358B (zh) * 2013-08-23 2015-12-21 Himax Tech Ltd 顯示系統及其資料傳遞方法
US9377845B2 (en) * 2014-05-09 2016-06-28 Lenovo (Singapore) Pte. Ltd. Frame buffer power management
US10482568B2 (en) * 2014-05-28 2019-11-19 Sony Corporation Information processor and information processing method
TWI549105B (zh) * 2014-09-03 2016-09-11 友達光電股份有限公司 具動態調整輸出之顯示驅動方法及其顯示裝置
US10074203B2 (en) 2014-12-23 2018-09-11 Synaptics Incorporated Overlay for display self refresh
CN105208467B (zh) * 2015-08-20 2018-05-29 电子科技大学 宽带接入网系统的帧对齐装置
CN105704445B (zh) * 2016-01-19 2018-12-07 浙江大华技术股份有限公司 一种摄像机的升级方法
CN109697964B (zh) * 2017-10-23 2021-04-23 奇景光电股份有限公司 时序控制器装置及其垂直起始脉冲产生方法
US10665210B2 (en) * 2017-12-29 2020-05-26 Intel Corporation Extending asynchronous frame updates with full frame and partial frame notifications
US10891887B2 (en) * 2018-09-28 2021-01-12 Intel Corporation Frame-level resynchronization between a display panel and a display source device for full and partial frame updates
TWI707339B (zh) * 2019-08-27 2020-10-11 瑞昱半導體股份有限公司 影像處理電路以及影像處理方法
WO2021258274A1 (en) * 2020-06-23 2021-12-30 Qualcomm Incorporated Power demand reduction for image generation for displays
US20220189435A1 (en) * 2020-12-15 2022-06-16 Intel Corporation Runtime switchable graphics with a smart multiplexer

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166340A (ja) 1997-08-20 1999-03-09 Sega Enterp Ltd 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5027212A (en) * 1989-12-06 1991-06-25 Videologic Limited Computer based video/graphics display system
US5821924A (en) * 1992-09-04 1998-10-13 Elonex I.P. Holdings, Ltd. Computer peripherals low-power-consumption standby system
TW243523B (en) 1993-04-26 1995-03-21 Motorola Inc Method and apparatus for minimizing mean calculation rate for an active addressed display
EP0734011A3 (en) * 1995-03-21 1999-01-20 Sun Microsystems, Inc. Field synchronization of independent frame buffers
US6331856B1 (en) * 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US5909225A (en) * 1997-05-30 1999-06-01 Hewlett-Packard Co. Frame buffer cache for graphics applications
US6657634B1 (en) * 1999-02-25 2003-12-02 Ati International Srl Dynamic graphics and/or video memory power reducing circuit and method
JP2001016222A (ja) 1999-06-30 2001-01-19 Toshiba Corp ネットワークシステム、電子機器及び電源制御方法
JP2001016221A (ja) 1999-06-30 2001-01-19 Toshiba Corp ネットワークシステム、電子機器及び電源制御方法
US6967659B1 (en) * 2000-08-25 2005-11-22 Advanced Micro Devices, Inc. Circuitry and systems for performing two-dimensional motion compensation using a three-dimensional pipeline and methods of operating the same
EP1262939B1 (en) * 2001-05-31 2012-02-01 Nokia Corporation Method and apparatus for updating a frame buffer with reduced power consumption
US6966009B1 (en) * 2001-08-28 2005-11-15 Tellabs Operations, Inc. System and method for aligning data in a network environment
US7558264B1 (en) * 2001-09-28 2009-07-07 Emc Corporation Packet classification in a storage system
US7017053B2 (en) * 2002-01-04 2006-03-21 Ati Technologies, Inc. System for reduced power consumption by monitoring video content and method thereof
US6894692B2 (en) * 2002-06-11 2005-05-17 Hewlett-Packard Development Company, L.P. System and method for sychronizing video data streams
JP3783686B2 (ja) * 2003-01-31 2006-06-07 セイコーエプソン株式会社 表示ドライバ、表示装置及び表示駆動方法
US7268755B2 (en) * 2003-03-25 2007-09-11 Intel Corporation Architecture for smart LCD panel interface
FI114882B (fi) 2003-04-30 2005-01-14 Nokia Corp Kuvakehysten päivityksen synkronointi
US8059673B2 (en) * 2003-05-01 2011-11-15 Genesis Microchip Inc. Dynamic resource re-allocation in a packet based video display interface
US7839860B2 (en) * 2003-05-01 2010-11-23 Genesis Microchip Inc. Packet based video display interface
KR100559025B1 (ko) * 2003-05-30 2006-03-10 엘지전자 주식회사 홈 네트워크 관리 시스템
JP2005027120A (ja) 2003-07-03 2005-01-27 Olympus Corp 双方向データ通信システム
US7535478B2 (en) * 2003-12-24 2009-05-19 Intel Corporation Method and apparatus to communicate graphics overlay information to display modules
JP2006047412A (ja) 2004-07-30 2006-02-16 Sanyo Electric Co Ltd インターフェース装置及び同期調整方法
JP2006268738A (ja) 2005-03-25 2006-10-05 Sanyo Electric Co Ltd 情報処理装置、修正プログラム生成方法および修正プログラム生成プログラム
US7813831B2 (en) * 2005-06-09 2010-10-12 Whirlpool Corporation Software architecture system and method for operating an appliance in multiple operating modes
US7397478B2 (en) 2005-09-29 2008-07-08 Intel Corporation Various apparatuses and methods for switching between buffers using a video frame buffer flip queue
JP4581955B2 (ja) * 2005-10-04 2010-11-17 ソニー株式会社 コンテンツ伝送装置及びコンテンツ伝送方法、並びにコンピュータ・プログラム
JP4640824B2 (ja) * 2006-01-30 2011-03-02 富士通株式会社 通信環境の測定方法、受信装置、及びコンピュータプログラム
JP2007286351A (ja) * 2006-04-17 2007-11-01 Funai Electric Co Ltd 液晶表示装置及び表示装置
US8004535B2 (en) * 2006-06-01 2011-08-23 Qualcomm Incorporated Apparatus and method for selectively double buffering portions of displayable content
KR100786509B1 (ko) 2006-06-08 2007-12-17 삼성에스디아이 주식회사 유기전계발광표시장치 및 그의 구동방법
US8576204B2 (en) 2006-08-10 2013-11-05 Intel Corporation Method and apparatus for synchronizing display streams
US20080055318A1 (en) * 2006-08-31 2008-03-06 Glen David I J Dynamic frame rate adjustment
JP2008084366A (ja) 2006-09-26 2008-04-10 Sharp Corp 情報処理装置及び録画システム
JP4176122B2 (ja) 2006-10-24 2008-11-05 株式会社東芝 サーバ端末、画面共有方法およびプログラム
US20080143695A1 (en) * 2006-12-19 2008-06-19 Dale Juenemann Low power static image display self-refresh
US7917784B2 (en) * 2007-01-07 2011-03-29 Apple Inc. Methods and systems for power management in a data processing system
JP2008182524A (ja) 2007-01-25 2008-08-07 Funai Electric Co Ltd 映像音声システム
TWI354981B (en) * 2007-01-29 2011-12-21 Qisda Corp Method and related device of increasing efficiency
KR20080090784A (ko) * 2007-04-06 2008-10-09 엘지전자 주식회사 전자 프로그램 정보 제어 방법 및 수신 장치
US20090079746A1 (en) * 2007-09-20 2009-03-26 Apple Inc. Switching between graphics sources to facilitate power management and/or security
US8767952B2 (en) * 2007-12-17 2014-07-01 Broadcom Corporation Method and system for utilizing a single connection for efficient delivery of power and multimedia information
CN101971617B (zh) * 2007-12-20 2015-12-02 Ati技术无限责任公司 具有视频来源装置与视频接收装置的系统中的调整视频处理
WO2010147276A1 (en) * 2009-06-16 2010-12-23 Lg Electronics Inc. Method of controlling devices and tuner device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166340A (ja) 1997-08-20 1999-03-09 Sega Enterp Ltd 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体

Also Published As

Publication number Publication date
CN103730103A (zh) 2014-04-16
KR20110079521A (ko) 2011-07-07
TWI419145B (zh) 2013-12-11
US8643658B2 (en) 2014-02-04
TW201140555A (en) 2011-11-16
CN103730103B (zh) 2016-06-29
CN102117594A (zh) 2011-07-06
CN102117594B (zh) 2014-02-12
US20110157202A1 (en) 2011-06-30

Similar Documents

Publication Publication Date Title
KR101260426B1 (ko) 프레임 데이터 정렬 방법 및 시스템
KR101229590B1 (ko) 프레임 데이터 정렬 방법, 시스템, 디스플레이 장치
US10798334B2 (en) Image processing system, image display method, display device and storage medium
US9786255B2 (en) Dynamic frame repetition in a variable refresh rate system
US20100315427A1 (en) Multiple graphics processing unit display synchronization system and method
JP2013054356A (ja) ディスプレイドライバーとその動作方法、ホストの動作方法、イメージ処理システム、携帯用通信装置、及びアプリケーションホストプロセッサの動作方法
EP3869493A1 (en) Dynamic frame rate adjustment mechanism
US20130335309A1 (en) Electronic devices configured for adapting display behavior
US20110043514A1 (en) Method and apparatus for multiple display synchronization
US10055809B2 (en) Systems and methods for time shifting tasks
EP2936296A1 (en) Automated measurement of differential latency between displays
US8194065B1 (en) Hardware system and method for changing a display refresh rate
US10070018B2 (en) Device for vertical and horizontal synchronization in display system
US9087473B1 (en) System, method, and computer program product for changing a display refresh rate in an active period
US7170469B2 (en) Method and apparatus for image frame synchronization
US7830450B2 (en) Frame synchronization method and device utilizing frame buffer
US9070198B2 (en) Methods and systems to reduce display artifacts when changing display clock rate
JP2008276132A (ja) ドットクロック発生回路、半導体装置及びドットクロック発生方法
CN112188137B (zh) 基于fpga的高帧频逐行图像转换至标清pal隔行图像实现方法
CN114217752A (zh) 多屏同步显示的控制方法、装置、电子设备和存储介质
CN115151886A (zh) 基于帧更新延迟dsi时钟改变以提供更平滑的用户界面体验
US20110292292A1 (en) Method and apparatus for displaying video data
US9082199B1 (en) Video processing architecture
JP3459608B2 (ja) 画素対応表示装置
KR20070089272A (ko) 카메라의 영상 처리 장치 및 그 클록 운영 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190328

Year of fee payment: 7