KR20060096108A - 높은 데이터 레이트 인터페이스 - Google Patents

높은 데이터 레이트 인터페이스 Download PDF

Info

Publication number
KR20060096108A
KR20060096108A KR1020067009460A KR20067009460A KR20060096108A KR 20060096108 A KR20060096108 A KR 20060096108A KR 1020067009460 A KR1020067009460 A KR 1020067009460A KR 20067009460 A KR20067009460 A KR 20067009460A KR 20060096108 A KR20060096108 A KR 20060096108A
Authority
KR
South Korea
Prior art keywords
packet
data
client
host
packets
Prior art date
Application number
KR1020067009460A
Other languages
English (en)
Other versions
KR100882164B1 (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 KR20060096108A publication Critical patent/KR20060096108A/ko
Application granted granted Critical
Publication of KR100882164B1 publication Critical patent/KR100882164B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/03Protocol definition or specification 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/10Streamlined, light-weight or high-speed protocols, e.g. express transfer protocol [XTP] or byte stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/323Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the physical layer [OSI layer 1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

미리 선택된 디지털 제어 및 프리젠테이션 데이터를 통신하기 위한 통신 프로토콜을 형성하기 위해, 서로 링크되는 패킷 구조들을 사용하여 통신 경로를 통해 호스트와 클라이언트 사이에 디지털 데이터를 전달하는 데이터 인터페이스가 제공된다. 신호 프로토콜은, 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고, 하나 이상 타입의 데이터 패킷들로 디지털 데이터를 형성하도록 구성되는 링크 제어기들에 의해 사용되며, 하나 이상의 제어기는 호스트 디바이스에 상주하여 통신 경로를 통해 클라이언트에게 커플링된다. 인터페이스는 효율적 비용, 저전력, 양방향의 고속 데이터 전달 메커니즘을 짧은 범위의 "시리얼" 타입 데이터 링크를 통해 제공하며, 착용가능한 마이크로-디스플레이와 같은 디스플레이 소자를 휴대용 컴퓨터 및 무선 통신 디바이스들에 접속하는데 특히 유용한 소형의 커넥터와 얇은 플렉시블 케이블을 사용하여 구현된다.
신호 인터페이스, 통신 프로토콜, 호스트, 클라이언트, 디스플레이

Description

높은 데이터 레이트 인터페이스{HIGH DATA RATE INTERFACE}
관련된 애플리케이션 상호 참조
본 특허 출원은, 2003년 10월 15일 출원되고, 그 양수인에게 양도되었으며, 본 명세서에서 참조로써 명백히 포함되고, 발명의 명칭이 "스위치가능한 차동 임계값 인터페이스 (Switchable Threshold Differential Interface)" 인 가출원 제 60/511,742 호에 대하여 우선권을 주장한다.
배경
I. 분야
이 기재 내용에서의 본 발명의 실시형태는 고 데이터 레이트 (high data rate) 로 호스트 디바이스와 클라이언트 디바이스 사이에 통신하거나 신호를 전달하기 위한 디지털 신호 프로토콜 및 프로세스에 관한 것이다. 더욱 구체적으로, 그 내용은 내부 및 외부 디바이스 애플리케이션을 가지는 저 전력 고 데이터 레이트 전달 메커니즘을 이용하여, 최종 사용자에게 프리젠테이션 또는 디스플레이하기 위해, 호스트 또는 제어기 디바이스로부터 클라이언트 디바이스로 멀티미디어및 다른 타입의 디지털 신호들을 전달하는 기술에 관한 것이다.
II. 배경
컴퓨터, 전자게임 관련 상품과 다양한 비디오기술 (예를 들어, DVD와 고화질 비디오 VCR) 은 지난 수년 동안 현저히 발전해 와서, 일부 텍스트 타입을 포함하는 경우일지라도 아직도 증가하는 고해상도의 비디오, 비디오-온 디멘드, 및 그래픽 이미지의 프리젠테이션을, 그러한 장비의 최종 사용자에게 제공한다. 이러한 진보는 교대로, 고 선명 비디오 모니터, HDTV 모니터, 또는 전문화된 이미지 프로젝션 소자들과 같은 더 높은 해상도의 전자 시청 디바이스의 사용을 요구한다. CD 타입 사운드 재생, DVD 들, 서라운드-사운드 및 연관된 오디오 신호 출력을 가지는 다른 디바이스를 이용하는 경우와 같이, 그러한 비주얼 이미지와 고선명 또는 고품질의 시각 디바이스를 결합하는 것은 최종 사용자를 위해 더욱 현실적이고, 풍부한 컨텐츠, 또는 사실적 멀티미디어 경험을 생성하는데 이용된다. 또한 MP3 플레이어와 같은 대단히 이동하기 쉬우며, 고품질의 사운드 시스템 및 음악 전달 머신은 최종 사용자에게 오직 오디오 프리젠테이션을 위해 개발되었다. 이는 컴퓨터에서 텔레비전 및 심지어 전화까지, 현재 익숙해지고 더 높은 또는 프리미엄 품질 출력을 기대하는 상업적 전자 디바이스의 통상적인 사용자를 위한 증가한 기대를 초래했다.
전자제품을 포함하여 통상적인 비디오 프리센테이션 시나리오에서, 비디오 데이터는 초당 킬로비트의 1 에서 10 정도의, 느리거나 중간으로 가장 잘 지칭되는레이트로 현재 기술을 이용하여 통상적으로 전달된다. 그 후, 이 데이터는 바람직한 시각 디바이스상의 지연된 (늦은) 플레이를 위해 버퍼링 되거나 일시 또는장기 메모리 디바이스에 저장된다. 예를 들어, 모뎀 또는 다른 유형의 인터넷 접속 디바이스를 갖는 컴퓨터에 갖추어진 프로그램을 이용하는 인터넷을 이용하여, 디지털로 이미지를 프리젠테이션함에 있어 유용한 데이터를 수신하거나 송신하기 위해 이미지가 "가로질러" 전달될 수도 있다. 무선 모뎀을 갖춘 휴대용 컴퓨터, 또는 개인 휴대 정보 단말기 (PDA 들), 또는 무선 전화와 같은 무선 디바이스를 이용하여 유사한 전달이 발생할 수 있다.
일단 수신이 된 경우에, 데이터는 재생을 위해 소규모 하드 드라이브와 같은 내부 또는 외부 저장 디바이스를 포함하여, RAM 또는 플래시 메모리와 같은 메모리 소자, 회로 또는 디바이스에 국부적으로 저장된다. 데이터량과 이미지 해상도에 의존하여, 재생이 상대적으로 신속히 시작하거나, 장기간의 지연을 받는다. 즉, 일부 예에서, 이미지 프리젠테이션은 많은 데이터를 요구하지 않는 아주 작거나 저해상도 이미지를 위한 실시간 재생의 임의의 단계를 허락하거나, 또는 버퍼링의 일부 타입을 이용하여, 약간의 지연 후에, 더 많은 자료가 전달되는 동안 일부 자료들이 제공된다. 전달 링크에 방해 또는 사용되는 전달 채널에 연관된 다른 시스템 또는 사용자로부터의 간섭이 없다면, 프리젠테이션이 시작하는 경우에 전달이 시각 디바이스의 최종 사용자에 적당히 투명하다. 물론, 유선 인터넷 접속과 같이, 복수의 사용자가 단독의 통신 경로를 공유하는 경우에, 전달이 방해받거나 희망되는 것보다 느려질 수 있다.
각각의 정지 화상 또는 모션 비디오를 생성시키기 위해 이용된 데이터는 정지 비디오 표준 (JPEG), 동화상 전문가 그룹 (MPEG) 통신 링크를 통해 데이터의 전달을 빠르게 하기 위한 매체, 컴퓨터, 및 통신 산업에서 잘 알려진 표준화 단체 또는 회사에 의해 지정된 것과 같은 여러 잘 알려진 기술들 중 하나를 이용하여 자주 압축된다. 이는 더 작은 비트 넘버를 이용함으로써 전달하는 이미지를 주어진 정보의 총량을 전달하도록 허용한다.
데이터가 메모리, 또는 자기적 또는 광학적 저장 소자와 같은 저장 메커니즘을 갖는 컴퓨터와 같은 "로컬" 디바이스 또는 다른 수신 디바이스에 전달된다면, 결과적인 정보는 압축이 풀리고 (또는 특별한 디코딩 플레이어를 이용하여 플레이 되는), 필요하다면 디코딩되고, 대응하는 이용 가능한 프리젠테이션 해상도와 제어 소자에 기초하여 적절한 프리젠테이션을 위해 준비된다. 예를 들어, X×Y 픽셀에 의한 스크린 해상도의 관점에서, 통상적인 컴퓨터 비디오 해상도는, 소망하는 경우 또는 필요한 경우에 다양한 다른 해상도가 일반적으로 가능할지라도, 통상적으로 480×640 의 낮은 해상도에서부터 600×800 을 거처 1024×1024 까지에 이른다.
이미지 프리젠테이션은 또한 이미지 컨텐츠 및 특정의 미리 규정된 컬러 레벨 또는 깊이 (컬러를 발생시키기 위해 이용된 픽셀 당 비트 수) 및 강도, 및 채택되는 임의의 오버헤딩 된 비트의 관점에서 이미지를 조작하는 주어진 비디오 제어기의 능력에 의해 영향을 받는다. 예를 들어, 통상적인 컴퓨터 프리젠테이션은 다른 값이 마주치게 될지라도, 다양한 컬러 (쉐이드와 색상)를 프리젠테이션하기 위해 8 에서 32 또는 그 이상의, 픽셀 당 비트 수 중 임의의 하나를 예상한다.
상기의 값으로부터, 가장 낮은 해상도외 깊이에서 가장 높은 해상도와 깊이까지 각각 미치는 범위를 통해 2.45 메가비트 (Mb) 에서 약 33.55 Mb 데이터 중 임의의 하나의 전달을 요구하는 주어진 스크린 이미지를 볼 수 있다. 초당 30 프레임의 레이트로 비디오 또는 동작타입 이미지를 보는 경우에, 요구되는 데이터 총 량은 초당 약 73.7 에서 1,006 메가비트 데이터 (Mbps) 이거나, 초당 9.21 에서 125.75 메가바이트 (MBps) 이다. 또한, 멀티미디어 프리젠테이션을 위하는 것과 같은 이미지와 결합하거나, CD 품질의 음악과 같은 고해상도 오디오 프리젠테이션으로 오디오 데이터를 표현하기를 원한다. 인터페이스 명령, 제어 또는 신호를 다루는 추가적인 신호가 또한 채택될 수도 있다. 이들 각각은 전달될 추가적인 훨씬 많은 데이터를 옵션화 한다. 또한, 고해상도 (HD) 텔레비젼 및 무비 기록에 연관된 보다 새로운 송신기술은 훨씬 더 많은 데이터 및 제어정보를 추가할 수도 있다. 최종 사용자에게 고품질 또는 고해상도 이미지 데이터 및 고품질 오디오 정보 또는 데이터 신호를 전달하기를 원하는 임의의 경우에, 고 데이터 전달 레이트 링크가 프리젠테이션 소자와 그러한 데이터 타입을 제공하기 위해 구성된 소스 또는 호스트 디바이스 사이에서 요구된다.
초당 약 115 킬로바이트 (KBps) 또는 920 킬로바이트 (Kbps) 의 데이터 레이트는 현대 시리얼 인터페이스에 의해 일상적으로 다뤄질 수 있다. USB 시리얼 접속과 같은 다른 인터페이스가 12 MBps 만큼 높이 레이트에서 데이서 전달을 수용할 수 있고, 전기 전자 공학 협회 (IEEE) 1394 표준을 이용하여 구성된 것들과 같은 전문화된 고속 전달이 100 에서 400 MBps 의 명령상의 레이트로 발생할 수 있다. 불행하게도 이 레이트는 장래의 무선 데이터 디바이스 및 고해상도, 풍부한 컨텐츠, 이동가능한 비디오 플레이 또는 오디오 디바이스를 구동시키기 위한 출력 신호를 제공하기 위한 다른 서비스와 함께 이용을 위해 고려되는, 상기에서 설명된 요구된 고 데이터 레이트에 미치지 못한다. 이는 비지니스 및 다른 프리 젠테이션을 위한 컴퓨터, 게임 디바이스 등을 포함한다. 또한, 이 인터페이스들은 동작하기 위해 호스트 또는 시스템 및 클라이언트 소프트웨어의 상당한 량의 이용을 요구한다. 이 소프트웨어 프로토콜 스택들은, 특히 모바일 무선 디바이스 또는 전화 애플리케이션이 복잡한 곳에서 바람직하지 않은 많은 양의 오버헤드를 생성한다. 그러한 디바이스는 이미 청구된 연산 능력뿐만 아니라, 심각한 메모리와 소비 전력 제한을 가진다. 또한, 이러한 인터페이스의 일부는 비용 또는 단순히 너무 많은 전력을 소비하는 고도로 미학을 지향하는 모바일 애플리케이션과, 복잡한 커넥터들을 위한 너무 무겁고 불만족스러운 다루기 힘든 케이블을 이용한다.
아날로그 비디오 그래픽 어댑터 (VGA), 디지털 비디오 인터페이스 (DVI) 또는 기가비트 비디오 인터페이스 (GVIF) 인터페이스와 같은 다른 알려진 인터페이스가 있다. 이들 중 처음 2 개는 고 전달 레이트로 데이터를 프로세싱하지만, 또한 무거운 케이블을 채택하고 몇몇의 와트의 많은 전력량을 소비하는 병렬타입 인터페이스이다. 이 특징들의 어느 것도 휴대용 소비자 디바이스로 이용을 위해 수정할 수 없다. 심지어 세 번째 인터페이스는 또한 고 전력을 소비하고 비싸거나 다루기 힘든 커넥터를 이용한다.
상기 인터페이스들의 일부와, 고정된 시설 컴퓨터 장비를 위한 데이터 전달에 연관된 다른 대단히 높은 레이트 시스템/프로토콜 또는 전달 머신에 대하여, 다른 주요 단점이 있다. 원하는 데이터를 수용하기 위해, 전달 레이트는 또한 고 전류 레벨에서 실질적인 파워 및/또는 동작을 요구한다. 이것은 이동성이 대단 히 많은 소비자를 지향한 제품에 대하여 그와 같은 기술의 유용성을 크게 감축시킨다.
일반적으로, 광 섬유 타입 접속 및 전달 소자와 같은 대안들을 이용하여 그러한 데이터 전달 레이트를 수용하기 위해, 또한 진정한 상업적 소비자를 지향한 제품을 위해 요구되는 것보다 훨씬 많은 복잡도와 비용을 소개하는 많은 수의 변환기와 소자를 요구한다. 아직까지 광 시스템의 일반적으로 비싼 본질 외에, 그들 전력 요구량과 복잡도가 경량화, 저 전력, 휴대용 애플리케이션을 위한 일반적인 이용을 방지한다.
휴대용, 무선, 또는 애플리케이션의 산업에서 부족했던 것은 이동성이 대단히 많은 가능한 최종 사용자를 위해 그것이 오디오, 비디오, 또는 기초한 멀티미디어인지 여부에 대한 고품질 프리젠테이션 경험을 제공하는 기술이다. 즉, 휴대용 컴퓨터, 무선 전화, PDA 들, 또는 다른 대단히 이동 가능한 통신 디바이스 또는 장비를 이용하는 경우에, 간단히 이용되는 현재 비디오 및 오디오 프리젠테이션 시스템 또는 디바이스는 요구된 고품질 레벨로 출력을 전달하지 못한다. 종종, 부족한 수신품질은 고품질 프리젠테이션 데이터를 전달하기 위해 필요한 얻을 수 없는 고 데이터 레이트의 결과이다. 이것은 최종 사용자에게 프리젠테이션을 위해 더욱 효율적이고, 진보되고 또는 특징으로 가득찬 외부 디바이스로의 전달과 컴퓨터, 게임 머신, 및 이동 전화와 같은 무선 디바이스와 같은 휴대용 디바이스 내부에서의 호스트와 클라이언트 사이의 전달을 포함한다.
후자의 경우에, 점점 더 고해상도의 내부 비디오 스크린, 및 다른 특별 입력 및/또는 출력 디바이스와 접속을, 소위 제 3 세대 전화로 칭하고 소위 랩탑 컴퓨터로 칭하는 무선 디바이스에 추가함에서 큰 발전이 있었다. 그러나, 호스트 및/또는 다양한 다른 제어 소자와 출력 구성요소가 상주하는 주요 하우징 (housing) 으로 비디오 스크린 또는 다른 소자들을 장착하거나 접속하는 회전하거나 미끄러지는 힌지 (hinge) 또는 힌지 유사한 구조를 가로지르는 버팀목을 포함할 수도 있는 내부 데이터 버스 및 접속이 있다. 일 예로서 무선 전화를 말하자면, 요구된 처리량을 달성하기 위해 90 개 또는 그 이상의 도전체까지 요구할 수 있는 선행 기술을 이용하여 고 처리량 데이터 전달 인터페이스를 구성하는 것은 어렵다. 이것은 극복하여야 할 많은 제조상의 엄청난 가격과 신뢰성의 난제들을 제공한다.
또한, 이러한 이슈 및 사양은, 일예로서 통신 또는 컴퓨팅 유형의 디바이스가 향상된 데이터 용량, 인터넷 및 데이터 전달 접속 또는 빌트 인 (built in) 엔터테인먼트를 제공하기 위해, 편의시설 및 다른 고객 디바이스에 추가되는, 고정 위치의 설비상에서 관측된다. 또 다른 예는 개별적인 비디오 및 오디오 프리젠테이션 스크린이 의자 등받이에 설치되는 비행기 및 버스일 것이다. 그러나, 이러한 상태에서, 시각적 스크린 또는 오디오 출력으로부터 떨어져 위치하고, 프리젠테이션 정보를 위한 상호접속 링크 또는 채널을 갖는 주 스토리지, 프로세싱 또는 통신 제어 소자를 갖는 것이 종종 더욱 편리하고, 효율적이며 용이하게 서비스할 수 있다. 이러한 링크는 전술한 바와 같이, 희망하는 쓰루풋을 달성하기 위하여 상당한 양의 데이터를 다룰 필요가 있을 것이다.
따라서, 새로운 전달 머신은 최종 사용자에게 출력을 제공하는 소자 또는 클 라이언트 디바이스 및 데이터를 제공하는 호스트 디바이스 사이에 데이터 처리량을 증가시킬 필요가 있다.
출원인은 현재 허여되고 본 발명의 양수인에게 양도되며, 본 명세서에서 참조로써 포함되고, 양자 모두 발명의 명칭이 "고 데이터 레이트 신호 전달을 위한 통신 프로토콜 및 인터페이스의 생성 및 구현" 인 미국 특허 출원 제 10/020,520 및 제 10/236,657 에서 그러한 새로운 전달 머신을 제안했다. 또한, 발명의 명칭이 "더 높은 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현 (Generating and Implementing a Signal Protocol and Interface for Higher Data Rates)" 인 출원 제 10/860,116 호 가 있다. 이 애플리케이션에서 설명된 기술들은 많은 량의 데이터를 고속도 데이터 신호로의 전달 레이트를 크게 개선할 수 있다. 그러나, 꾸준히 증가한 데이터 레이트를 위한 요구가, 특히 비디오 프리젠테이션에 연관된 것처럼, 성장하는 것을 지속한다. 디지털 신호 기술에서의 다른 지속적인 개발과 함께, 훨씬 빠른 전달 레이트, 개선된 통신 링크 효율성, 및 더욱 파워풀한 통신 링크를 위해 아직도 노력할 필요가 있다. 그러므로, 호스트와 클라이언트 디바이스 사이에 데이터 처리량을 증가시킬 필요가 있는 새롭거나 개선된 전달 메커니즘을 개발하기 위한 계속적인 필요성이 있다.
요약
당해 기술분야에서의 기존의 상기 단점 및 다른 단점들은 본 발명의 실시형태에 의해 다루어지며, 본 실시형태에서는 고속의 데이터 전달 레이트로 호스트 디바이스와 수신자 클라이언트 디바이스 사이에 데이터를 전달하기 위한 새로운 프로 토콜과 데이터 전달 수단, 방법 및 머신들이 개발되었다.
본 발명의 실시형태는 호스트와 클라이언트 디바이스 사이에 소정의 디지털 데이터 세트와 프리젠테이션 데이터를 통신시키기 위한 통신 프로토콜을 형성하기 위해 다수의 패킷 구조 시리즈 (series) 를 이용하는 통신 경로 (path) 를 통해, 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하기 위한 이동 데이터 디지털 인터페이스 (MDDI) 에 관한 것이다. 신호 통신 프로토콜 또는 링크 층은 호스트 또는 클라이언트 링크 제어기의 물리층에 의해 이용된다. 호스트 디바이스에 상주하는 하나 이상의 링크 제어기는 통신 경로 또는 링크를 통해 클라이언트 디바이스에 커플링하고, 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성된다. 인터페이스는 공통의 전반적인 하우징 또는 지지구조 내에 상주할 수 있는 호스트 및 클라이언트 사이에 정보의 양 방향 전달을 제공한다.
구현예는 디지털 CMOS 칩상에서 용이하게 실현될 수 있는 차동 드라이버와 수신기들을 제외하고는 일반적으로 실제로 모두 디지털이며, 6 개 정도의 약간의 신호를 요구하며, 시스템 설계자에게 편리한 거의 모든 데이터 레이트에서 동작한다. 단순한 물리적 및 링크층 프로토콜은 그것을 통합하기 용이하게 하고, 이 단순함이 더해진 휴지 상태는 프로토콜 시스템이 매우 낮은 시스템 전력 소비를 가지게 한다.
이용과 수용에 도움이 되기 위해, 표준 전지 전압을 이용하여 인터페이스를 통해 전력 디스플레이를 가능하게 하는 동안 인터페이스가 디바이스의 비용을 아주 약간만 증가시키고, 감출수 있는 (pocketable) 형태-팩터를 가지는 디바이스를 수용할 수 있다. 인터페이스는 HDTV 를 넘는 해상도를 지지하기 위해 스케일링할 수 있고, 디스플레이 디바이스에 동시발생의 스테레오 비디오와 7.1 오디오를 지지하고, 어떠한 스크린 영역에 조건적인 업데이트를 수행하고, 쌍방에 다중 데이터 타입을 지지한다.
본 발명의 실시형태의 또 다른 양태에서, 최소한 하나의 클라이언트 링크 제어기, 또는 클라이언트 수신기는 클라이언트 디바이스에 배치되고, 통신 경로 또는 링크를 통해 호스트 디바이스에 커플링된다. 클라이언트 제어기는 또한 통신 프로토콜을 형성하는 패킷을 생성하고 송신하고 수신하며, 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷 타입으로 형성하도록 구성된다. 일반적으로 호스트 또는 링크 제어기는 명령 또는 신호 준비와 요청 프로세싱의 특정 타입에서 이용되는 데이터 패킷을 프로세싱하기 위한 상태 머신을 채택하지만, 느린 범용 프로세서를 이용할 수 있어, 통신 프로토콜에서 이용되는 데이터 및 덜 복잡한 패킷의 일부를 조작한다. 클라이언트 수신기가 통신 경로에 커플링된 하나 이상의 차동 라인 수신기를 구비하고, 호스트 제어기는 하나 이상의 차동 라인 드라이버를 구비한다.
패킷은 상이한 가변적 길이들을 가지는 소정 개수의 패킷으로 미리 규정된 고정 길이를 가지는, 클라이언트 디바이스와 호스트 사이에 통신되는 미디어 프레임내에서 함께 그룹화된다. 패킷은 각각 패킷 길이 필드 (field), 패킷 데이 터 필드와 사이클릭 리던던시 확인 필드를 포함한다. 서브 프레임 헤더 패킷은 호스트 링크 디바이스로부터 다른 패킷의 시작부분에 배치되거나 전달된다. 하나 이상의 비디오 스트림 타입 패킷과 오디오 스트림 타입 패킷은 클라이언트 디바이스 사용자에게 프리젠테이션을 위해 순방향 링크를 통해 호스트로부터 클라이언트로 비디오 타입 데이터와 오디오 타입 데이터를 각각 전달하는 통신 프로토콜에 의해 이용된다. 하나 이상의 역방향 링크 캡슐화 타입 패킷은 클라이언트 디바이스로부터 호스트 링크 제어기로 데이터를 전달하는 통신 프로토콜에 의해 이용된다. 일부 실시형태에서의 전달은 하나 이상의 MDDI 디바이스를 가지는 내부 제어기로부터 비디오 스크린으로 데이터의 전달을 포함한다. 다른 실시형태는 내부 사운드 시스템으로의 전달을 포함하고, 조이스틱 및 복잡한 키보드를 포함하는 다양한 입력 디바이스로부터 호스트 디바이스로 전달한다.
필러 (filler) 타입 패킷은 호스트 링크 제어기에 의해 생성되어 데이터를 가지지 않는 순방향 링크 전송 주기를 점유한다. 다수의 다른 패킷들은 통신 프로토콜에 의해 이용되어 비디오 정보를 전달한다. 그러한 패킷은 컬러 맵, 비트 블록 전달, 비트맵 영역 필, 비트맵 패턴 필 및 타입 패킷을 인에이블하는 투명 컬러를 포함한다. 사용자 정의된 스트림 타입 패킷은 통신 프로토콜에 의해 이용되어 인터페이스 사용자 정의 데이터를 전달한다. 키보드 데이터 및 포인팅 디바이스 데이터 타입 프로토콜은 통신 프로토콜에 의해 이용되어 상기 클라이언트 디바이스에 연관된 사용자 입력 다바이스로 또는 그로부터 전달한다. 링크 셧다운 타입 패킷은 통신 프로토콜에 의해 이용되어 상기 통신 경로를 통해 각 방향의 데이터의 전달을 종결시킨다.
통신 경로는 일반적으로 4 개 이상의 도전체들 및 실드 (shield) 시리즈를 가지는 케이블을 포함하거나 채택한다. 또한, 인쇄된 배선 또는 도전체가 원하는 바대로, 플렉시블한 기판에 상주하는 일부와 함께 이용될 수 있다.
호스트 링크 제어기는 상기 인터페이스를 통해 어느 타입의 데이터 및 데이터 레이트를 상기 클라이언트가 수용할 수 있는지를 결정하기 위해 클라이언트 디바이스로부터 디스플레이 용량 정보를 요구한다. 클라이언트 링크 제어기는 하나 이상의 클라이언트 용량 타입 패킷을 이용하여 호스트 링크로 디스플레이 또는 프리젠테이션 용량을 통신한다. 다수의 전달 모드는, 각각 주어진 시간 주기를 통해 병렬로 데이터의 상이한 최대 개수의 비트 전달을 허용하고 각각 호스트 링크 제어기와 클라이언트 링크 제어기 사이의 협상에 의해 선택가능한 통신 프로토콜에 의해 이용된다. 이 전달 모드는 데이터의 전달동안 동적으로 조정되고, 동일한 모드가 순방향 링크에서 이용되는 바와 같이 역방향 링크상에서 이용될 필요는 없다.
본 발명의 일부 실시형태의 다른 양태에서, 호스트 디바이스는 무선 전화, 무선 PDA, 또는 그안에 배치된 무선 모뎀을 가지는 휴대용 컴퓨터와 같은 무선 통신 디바이스를 포함한다. 통상적인 클라이언트 디바이스는 마이크로 디스플레이 디바이스 및/또는 휴대용 오디오 프리젠테이션 시스템과 같은 휴대용 비디오 디스플레이를 포함한다. 또한, 호스트는 클라이언트 디바이스 사용자에게 프리젠테이션되기 위해 전달되는 멀티미디어 데이터 또는 프리젠테이션을 저장하는 저장 수단 또는 소자들을 이용할 수도 있다.
일부 실시형태들의 또 다른 양태에서, 호스트 디바이스는 무선 전화, 무선 PDA, 또는 휴대용 컴퓨터와 같은 무선 통신 디바이스와 같은 휴대용 전자 디바이스내에 상주하는 후술된 바와 같은 드라이버를 갖는 통신 링크 제어 디바이스 또는 제어기를 포함한다. 이 구성에서의 통상적인 클라이언트 디바이스는 호스트에 커플링하고 동일한 디바이스내에 상주하며, 이동전화 및/또는 휴대용 오디오 프리젠테이션 시스템을 위한 고해상도 스크린과 같은 내부의 비디오 디스플레이에 커플링되거나, 몇몇 다른 타입의 입력 시스템 또는 디바이스 내에 존재하는 모듈 또는 집적 회로 또는 클라이언트 회로를 포함한다.
도면의 간단한 설명
본 발명의 여러 실시형태의 동작 및 구조뿐만 아니라, 본 발명의 더 많은 특징과 장점이 첨부된 도면을 참조하여 이하 상세히 설명된다. 도면에서, 동일한 참조 번호는 일반적으로 일치하는, 기능적으로 유사한, 및/또는 구조적으로 유사한 소자 또는 프로세싱 단계를 나타내고, 도면에서 처음 나타나는 구성 요소는 참조 번호에서 가장 왼쪽 자리로 표시된다.
도 1a 는 휴대용 컴퓨터 또는 다른 데이터 프로세싱 디바이스와 결합된 마이크로디스플레이 디바이스 또는 프로젝터의 이용을 포함하여 본 발명의 실시형태가 동작할 수도 있는 기본 환경을 나타낸다.
도 1b 는 무선 트랜시버와 결합하여 이용되는 오디오 프리젠테이션 소자 및 마이크로 디스플레이 디바이스 또는 프로젝터의 이용을 포함하여 본 발명의 실시형 태가 동작할 수도 있는 기본 환경을 나타낸다.
도 1c 는 휴대용 컴퓨터에서 이용되는 내부 디스플레이 또는 오디오 프리젠테이션 디바이스의 이용을 포함하여, 본 발명의 실시형태가 동작할 수도 있는 기본 환경을 나타낸다.
도 1d 는 무선 트랜시버에서 이용되는 내부 디스플레이 또는 오디오 프리젠테이션 소자의 이용을 포함하여, 본 발명의 실시형태가 동작할 수도 있는 기본 환경을 나타낸다.
도 2 는 호스트와 클라이언트 상호연결로 이동 디지털 데이터 인터페이스의 전체적인 개념을 나타낸다.
도 3 은 클라이언트 디바이스로부터 호스트 디바이스에 데이터 전달을 실현하기 위한 유용한 패킷의 구조를 나타낸다.
도 4 는 MDDI 링크 제어기와 타입 1 인터페이스를 위해 물리적 데이터 링크 도전체들을 통해 호스트와 클라이언트 사이에 전달된 신호의 타입의 이용을 나타낸다.
도 5 는 MDDI 링크 제어기와 타입 2, 3 및 타입 4 인터페이스를 위해 물리적 데이터 링크 도전체들을 통해 호스트와 클라이언트 사이에 전달된 신호의 타입의 이용을 나타낸다.
도 6 은 인터페이스 프로토콜을 구현시키기 위해 이용된 서브-프레임과 프레임의 구조를 나타낸다.
도 7 은 인터페이스 프로토콜을 구현시키기 위해 이용된 패킷의 일반적인 구 조를 나타낸다.
도 8 은 서브 프레임 헤더 패킷의 포맷을 나타낸다.
도 9 는 필러 패킷의 포맷과 컨텐츠를 나타낸다.
도 10 은 비디오 스트림 패킷의 포맷을 나타낸다.
도 11a-11e 는 도 10 에서 이용되는 비디오 데이터 포맷 디스크립터를 위한 포맷과 컨텐츠를 나타낸다.
도 12 는 데이터를 위한 패킹되고 패킹되지 않은 포맷의 이용을 나타낸다.
도 13 은 오디오 스트림 패킷의 포맷을 나타낸다.
도 14 는 데이터를 위한 바이트 정렬되고 패킹된 PCM 포맷의 이용을 나타낸다.
도 15 는 사용자 정의된 패킷의 포맷을 나타낸다.
도 16 은 컬러 맵 패킷의 포맷을 나타낸다.
도 17 은 역방향 링크 캡슐화된 패킷의 포맷을 나타낸다.
도 18 은 클라이언트 용량 패킷의 포맷을 나타낸다.
도 19 는 키보드 데이터 패킷의 포맷을 나타낸다.
도 20 은 포인팅 디바이스 데이터 패킷의 포맷을 나타낸다.
도 21 은 링크 셧다운 패킷의 포맷을 나타낸다.
도 22 는 클라이언트 요청 및 상태 패킷의 포맷을 나타낸다.
도 23 은 비트 블록 전달 패킷의 포맷을 나타낸다.
도 24 는 비트맵 영역 필 패킷의 포맷을 나타낸다.
도 25 는 비트맵 패턴 필 패킷의 포맷을 나타낸다.
도 26 은 통신 링크 데이터 채널 디바이스 패킷의 포맷을 나타낸다.
도 27 은 인터페이스 타입 핸드오프 (Handoff) 요청 패킷의 포맷을 나타낸다.
도 28 은 인터페이스 타입 확인 응답 패킷의 포맷을 나타낸다.
도 29 는 수행 타입 핸드오프 패킷의 포맷을 나타낸다.
도 30 은 순방향 오디오 채널 인에이블 패킷의 포맷을 나타낸다.
도 31 은 역방향 오디오 샘플 레이트 패킷의 포맷을 나타낸다.
도 32 는 디지털 컨텐츠 보호 오버헤드 패킷의 포맷을 나타낸다.
도 33 은 투명 컬러 인에이블 패킷의 포맷을 나타낸다.
도 34 는 라운드 트립 지연 측정 패킷의 포맷을 나타낸다.
도 35 는 라운드 트립 지연 측정 패킷 동안 이벤트의 타이밍을 나타낸다.
도 36 은 본 발명의 구현을 위해 유용한 체커 (checker) 및 CRC 생성기의 간단한 구현을 나타낸다.
도 37a 는 데이터 패킷을 전송할 경우에, 도 36 의 장치를 위한 CRC 신호의 타이밍을 나타낸다.
도 37b 는 데이터 패킷을 수신하는 경우에, 도 36 의 장치를 위한 CRC 신호의 타이밍을 나타낸다.
도 38 은 접속없이 통상적인 서비스 요청을 위한 프로세싱 단계를 나타낸다.
도 39 는 링크 스타트와 경쟁하면서 링크 리스타트 시퀀스가 시작한 이후 주 장된 통상적인 서비스 요구를 위한 프로세싱 단계를 나타낸다.
도 40 은 DATA-STB 이용하여 어떻게 데이터 시퀀스가 송신될 수 있는지를 나타낸다.
도 41 은 호스트에서의 입력 데이터로부터 DATA 와 STB 신호를 발생시키고 그 후, 클라이언트에서 데이터를 복구하기 위한 유용한 회로도를 나타낸다.
도 42 는 드라이버와 일 실시형태를 구현시키기 위한 유용한 레지스터를 종결시키는 것을 나타낸다.
도 43 은 그와 같은 서비스를 제공하기 위해 호스트로부터 그리고 호스트에 의해 서비스를 보안화하기 위해 클라이언트에 의해 이용된 단계와 신호 레벨을 나타낸다.
도 44 는 DATA0, 다른 데이터 라인 (DataX), 및 스트로브 라인 (Stb) 상의 변이 사이에 관련된 스페이싱을 나타낸다.
도 45 는 패킷을 전달시킨 후 호스트가 호스트 드라이버를 디스에이블할 경우에 발생할 수 있는 응답에서의 지연의 존재를 나타낸다.
도 46 은 호스트가 호스트 드라이버가 패킷을 전달시킬 수 있게 할 경우에, 발생할 수 있는 응답에서의 지연의 존재를 나타낸다.
도 47 은 전달되는 데이터의 타이밍과 스트로브 펄스의 선두와 추적 에지사이에 호스트 수신 입력에서의 관계를 나타낸다.
도 48 은 역 데이터 타이밍에 의해 개발된 스위칭 특성 및 대응한 클라이언트 출력 지연을 나타낸다.
도 49 는 상태 머신을 이용하여 동기화가 구현될 수 있는 조건 및 프로세싱 단계의 고 레벨도를 나타낸다.
도 50 은 MDDI 를 이용하는 시스템에서 순방향 또는 역방향 경로상에서 신호 프로세싱을 위해 직면한 지연의 통상적인 량을 나타낸다.
도 51 은 경계의 (marginal) 라운드 트립 지연 측정을 나타낸다.
도 52 는 역방향 링크 데이터 전달 레이트 변화를 나타낸다.
도 53 은 역방향 레이트 디바이저값 대 순방향 링크 데이터 레이트의 값의 그래프적인 도면을 나타낸다.
도 54a 와 54b 는 인터페이스의 작동에서 취해지는 단계를 나타낸다.
도 55 는 인터페이스 장치 프로세싱 패킷의 개관을 나타낸다.
도 56 은 순방향 링크 패킷의 포맷을 나타낸다.
도 57 은 타입-1 링크 인터페이스에서의 전달 지연 및 스큐에 대한 통상적인 값을 나타낸다.
도 58 은 인터페이스를 통하여 예시적인 신호 프로세싱을 위한 타입-1 링크상의 데이터, Stb 와 클록 복구 타이밍을 나타낸다.
도 59 는 타입-2, 타입-3 또는 타입-4 링크 인터페이스에서의 전달 지연 및 스크루의 통상적인 값을 나타낸다.
도 60a, 60b, 및 60c 는 각각 서로 이상적이고 이르고 늦음에 관하여 2 개의 데이터 신호 및 MDDI Stb 의 타이밍에 대한 다른 가능성을 나타낸다.
도 61 은 타입-1/타입-2 인터페이스로 이용된 인터페이스 핀 지정 예시적인 커넥터를 나타낸다.
도 62a 와 62b 는 타입-1 과 타입-2 인터페이스 모두 각각을 위한 가능한 MDDI_Data 및 MDDI_Stb 파형을 나타낸다.
도 63 은 상태 머신을 이용하여 동기화가 구현될 수 있는 또 다른 신호 프로세싱 및 조건들의 고 레벨도를 나타낸다.
도 64 는 클록 사이클 시리즈 사이의 예시적인 관련 타이밍과 다양한 역방향 링크 패킷 비트의 타이밍, 및 디바이저 값을 나타낸다.
도 65 는 예시적인 에러 코드 전달 프로세싱을 나타낸다.
도 66 은 에러 코드 전달 프로세싱을 위한 유용한 장치를 나타낸다.
도 67a 는 코드 다중 부여를 위한 에러 코드 전달 프로세싱을 나타낸다.
도 67b 는 코드 수신을 위한 에러 코드 전달 프로세싱 단계를 나타낸다.
도 68a 가 시작된 호스트를 웨이크 업 하기 위한 프로세싱 단계를 나타낸다.
도 68b 가 시작된 클라이언트를 웨이크업 하기 위한 프로세싱 단계를 나타낸다.
도 68c 경쟁으로 시작된 호스트와 클라이언트를 웨이크업하기 위한 프로세싱 단계를 나타낸다.
도 69 는 요청 VCP 피처 패킷의 포맷을 설명한다.
도 70 은 VCP 피처 응답 패킷의 포맷을 나타낸다.
도 71 은 VCP 피처 응답 리스트의 포맷을 나타낸다.
도 72 는 VCP 피처 패킷 세트의 포맷을 나타낸다.
도 73 은 요청 유효 파라미터 패킷의 포맷을 나타낸다.
도 74 는 유효 파라미터 응답 패킷의 포맷을 나타낸다.
도 75 는 알파 - 커서 이미지 용량 패킷의 포맷을 나타낸다.
도 76 은 알파 - 커서 투명성 맵 패킷의 포맷을 나타낸다.
도 77 은 알파 - 커서 이미지 오프셋 패킷의 포맷을 나타낸다.
도 78 은 알파 - 커서 비디오 스트림 패킷의 포맷을 나타낸다.
도 79 는 스케일링된 비디오 스트림 성능 패킷의 포맷을 나타낸다.
도 80 은 스케일링된 비디오 스트림 셋업 패킷의 포맷을 나타낸다.
도 81 은 스케일링된 비디오 스트림 확인 응답 패킷의 포맷을 나타낸다.
도 82 는 스케일링된 비디오 스트림 패킷의 포맷을 나타낸다.
도 83 은 요청 특정 상태 패킷의 포맷을 나타낸다.
도 84 는 유효 상태 응답 리스트 패킷의 포맷을 설명한다.
도 85a 는 패킷 프로세싱 지연 파라미터 패킷의 포맷을 설명한다.
도 85b 는 지연 파라미터 리스트 항목의 포맷을 나타낸다.
도 86 은 개인 디스플레이 용량 패킷의 포맷을 나타낸다.
도 87a 는 클라이언트 에러 보고 패킷의 포맷을 나타낸다.
도 87b 는 에러 보고 리스트 항목의 포맷을 나타낸다.
도 88 은 클라이언트 식별 패킷의 포맷을 나타낸다.
도 89 는 교대 디스플레이 용량 패킷의 포맷을 나타낸다.
도 90 은 레지스터 엑세스 패킷의 포맷을 설명한다.
도 91a 내지 91c 는 가시적 결함을 감축시키기 위해 2 개의 디스플레이 버퍼의 이용을 나타낸다.
도 92 는 이미지 전달보다 빠른 디스플레이 리프레시를 가지는 2 개의 버퍼를 나타낸다.
도 93 은 이미지 전달보다 느린 디스플레이 리프레시를 가지는 2 개의 버퍼를 나타낸다.
도 94 는 이미지 전달보다 훨씬 빠른 리프레시를 가지는 2 개의 버퍼를 나타낸다.
도 95 는 이미지 전달보다 빠른 리프레시를 가지는 3 개의 버퍼를 나타낸다.
도 96 은 이미지 전달보다 느린 디스플레이 리프레시를 가지는 2 개의 버퍼를 나타낸다.
도 97 은 이미지 전달보다 빠른 리프레시를 가지는 1 개의 버퍼를 나타낸다.
도 98 은 데이지 (daisy) 체인 및 허브를 통해 호스트 - 클라이언트 접속을 나타낸다.
도 99 는 허브와 데이지 체인의 결합을 통해 접속된 클라이언트 디바이스를 나타낸다.
도 100 은 컬러 맵을 나타낸다.
도 101 은 누설 전류 분석을 나타낸다.
실시형태의 상세한 설명
I. 개요
본 발명의 일반적인 목적은 이하 설명한 바와 같이, 이동 디스플레이 디지털 인터페이스 (MDDI) 를 제공하고, 이 MDDI 는 데이터 링크 또는 채널의 "순차적인" 타입을 이용하여 디스플레이 소자와 같은 클라이언트 디바이스와 호스트 디바이스 사이에 짧은 범위 통신 링크를 통해 고 또는 매우 고 스피드 데이터 전달을 인에이블하는 비용 효율적이고, 낮은 전력 소모적인 전달 메커니즘을 초래하거나 제공한다. 이 메커니즘은 내부 (하우징 또는 지지 프레임에) 디스플레이 소자 또는 중앙 제어기로의 입력 디바이스, 또는 휴대용 컴퓨터, 무선 통신 디바이스, 또는 엔터테인먼트 디바이스에 착용가능한 마이크로 디스플레이 (고글 또는 프로젝터) 와 같은 외부 디스플레이 소자 또는 디바이스에서 특히 유용한 얇은 가용성 케이블과 소형 커넥터로 구현됨에 전념한다.
모바일 및 디스플레이라는 용어는 프로토콜 명칭과 연관되지만, 인터페이스 및 프로토콜 분야에 종사하는 당업자에 의해 용이하게 이해되는 표준명을 갖는다는 점에서 단지 편의적이다. 그러나, 이하의 실시형태들을 검토한 후에는, 관련된 다수의 논-모바일 (non-mobile) 및 논-디스플레이 (non-display) 애플리케이션이 이러한 프로토콜의 애플리케이션 및 이에 따른 인터페이스 구조로부터 이익을 얻고, MDDI 라벨은 본 발명 또는 그 다양한 실시형태들의 본질 및 유용성을 한정하는 것으로 의도되지 않는다는 것을 용이하게 이해할 것이다.
본 발명의 실시형태의 장점은 복잡성이 낮고, 비용이 적으며, 고 신뢰도를 가지며, 사용자 환경에 잘 맞고, 대단한 가요성을 가지면서 대단히 견고한 데이터 전송을 위해 기술이 제공되는 것이다.
본 발명의 실시형태는 일반적으로 오디오, 비디오, 또는 다중매체 애플리케이션과 같은 많은 양의 데이터를, 그러한 데이터가 생성되거나 저장되는 호스트 또는 소스 디바이스로부터 클라이언트 디스플레이 또는 프리젠테이션 디바이스로 고 레이트로 통신하거나 전달하는 다양한 상황에서 이용될 수 있다. 아래 설명된 통상적인 애플리케이션은 휴대용 컴퓨터 또는 무선 전화 또는 모뎀으로부터 작은 프로젝션 렌즈 및 스크린을 포함하는 고글 또는 헬멧의 형태에서과 같은 착용가능한 마이크로 디스플레이 애플리케이션 또는 작은 비디오 스크린과 같은 비주얼 디스플레이 디바이스로의, 또는 그러한 성분 내에서 호스트로부터 클라이언트 디바이스로의 데이터의 전달이다. 즉, 클라이언트를 채택한 다양한 내부 또는 외부 입력 디바이스로부터 내부적으로 위치한 (동일한 디바이스 하우징 또는 지지 구조내에 배치된) 호스트로뿐만 아니라, 프로세서로부터 내부 스크린 또는 다른 프리젠테이션 소자로의 데이터의 전달이다.
MDDI 의 특성 또는 속성은 그들이 특정한 디스플레이 또는 프리젠테이션 기술과 관계없도록 된다. 이것은 그 데이터의 내부 구조와 그것이 구현하는 데이터 또는 명령의 기능적 양태와 관계없이 고 레이트로 데이터를 전달하기 위한 고도로 플렉시블 (flexible) 한 메커니즘이다. 이것은, 전달되는 데이터 패킷들의 타이밍이 임의의 디바이스에 대한 고유한 디스플레이 요구와 같은 특정 클라이언트 디바이스의 특성 (idiosyncrasies) 에 적합하도록 또는, 일부 A-V 시스템에 대한 또는 죠이 스틱, 접촉 패드 등과 같은 임의의 입력 디바이스에 대해 결합된 오디오와 비디오 요건을 충족하도록 조정되게 한다. 인터페이스는 선택된 프로 토콜이 따르게 되는 한, 바로 그 디스플레이 요소 또는 클라이언트 디바이스 어그노스틱 (agnostic) 이다. 또한, 집합적인 시리얼 링크 데이터 또는 데이터 레이트가 통신 시스템 또는 호스트 디바이스 설계자가 비용, 전력 소비량, 클라이언트 디바이스 복잡도, 및 클라이언트 디바이스 업데이트 레이트를 최적화하도록 허용한 크기의 여러 순서상에서 가변할 수 있다.
데이터 인터페이스는 주로 "유선의" 신호 링크 또는 작은 케이블을 통해 대량의 고 레이트 데이터를 전달시킴에 있어서의 이용을 위해 제공된다. 그러나, 일부 애플리케이션이 광학 기반 링크를 포함하여, 인터페이스 프로토콜을 위해 개발된 데이터 구조 및 동일한 패킷을 이용하도록 구성되고 낮은 충분한 전력 소모 또는 실용적인 채로 남아 있기 위한 복잡도로 전달의 바람직한 레벨을 견딜 수 있는 경우에 무선 링크 또한 이용할 수도 있다.
II. 환경
통상적인 어플리케이션이 랩탑 컴퓨터 (100) 및 무선 전화 또는 PDA 디바이스 (102) 가 각각 오디오 재생산 시스템 (108 및 112) 을 따라 디스플레이 디바이스 (104 및 106) 를 갖는 도시된 통신 데이터인 도 1a 및 1b 에서 보여질 수 있다. 또한, 도 1a 는 더 큰 디스플레이 또는 스크린 (114) 또는 명확성을 위해 오직 하나의 도에 도시되지만, 무선 디바이스 (102) 에 또한 접속가능한 이미지 프로젝터 (116) 에의 잠재적 접속을 도시한다. 무선 디바이스는 수신 데이터가 될 수 있거나, 무선 디바이스의 최종 사용자에 의해 보고 및/또는 듣기 위한 보다 늦은 프리젠테이션을 위한 메모리 소자 또는 디바이스에서 미리 저장된 임의의 다중매체 타입 데이터의 량을 가질 수 있다. 통상적인 무선 디바이스가 대부분의 시간 동안 음성 및 간단한 텍스트 통신을 위해 이용됐고, 디바이스 (102) 사용자로 정보를 통신하기 위해 다소 작은 디스플레이 스크린 및 간단한 오디오 시스템 (스피커) 을 가진다.
컴퓨터 (100) 는 많은 더 큰 스크린, 그러나 여전히 부적당한 외부 사운드 방식을 가지고, 고화질 텔레비전 또는 영화 스크린과 같은 여전히 다른 멀티미디어 프리젠테이션 디바이스에 못 미친다. 컴퓨터 (100) 가 프로세서의 설명을 위해 이용되고 다른 타입의 프로세서들, 대화형 비디오 게임 또는 소비전자제품이 본 발명으로 또한 이용될 수 있다. 컴퓨터 (100) 는 무선 모뎀 또는 다른 무선 통신을 위해 디바이스에 설치된 것을 채택할 수 있지만, 이에 또는 이에 의해 한정되지 않으며, 또는 원하는대로 케이블 또는 무선 링크를 이용하여 그러한 디바이스에 접속될 수 있다.
이것은 더욱 복잡하거나 "부유한" 데이터의 프리젠테이션을 유용하고 즐거운 경험보다 덜하게 만든다. 따라서, 산업은 다른 메커니즘 및 디바이스를 개발하여 최종 사용자에게 정보를 제공하고 요구된 즐거움 또는 긍정적인 경험의 최소한의 레벨을 제공한다.
전술된 바와 같이, 디바이스 (100) 의 최종 사용자에게 정보를 제공하기 위해 여러 타입의 디스플레이 디바이스가 개발되어 왔거나 개발되고 있다. 예를 들어, 하나 이상의 회사는 디바이스 사용자의 눈앞에 이미지를 프로젝션시켜서 가상 디스플레이를 제공하는 착용가능한 고글의 개발된 세트를 가진다. 정확히 배치된 그러한 디바이스는 사용자 눈에 의해 지각된 바와 같은 가상 이미지를 "프로젝트" 시키고, 이는 가상 출력을 제공하는 소자보다 훨씬 크다. 즉, 대단히 작은 프로젝션 소자는 사용자의 눈(들) 이 통상적인 LCD 스크린 또는 기타 등등으로 가능한 것보다 훨씬 큰 스케일상에서 이미지를 "본다". 더 큰 스크린 이미지의 사용은 또한 사용자에게 더욱 한정된 LCD 스크린 디스플레이들로 가능한 것보다 훨씬 고해상도 이미지를 허용한다. 다른 디스플레이 디바이스는 작은 LCD 스크린 또는 다양한 평면 패널 디스플레이 소자, 프로젝션 렌즈 및 표면상, 및 기타 등등 상에서 이미지를 프로젝팅하기 위한 디스플레이 드라이버를 포함할 수 있지만, 이에 한정되지 않는다.
또 다른 사용자, 또는 어딘가 다른 곳에 신호를 전달하거나 그들을 저장하는 또 다른 디바이스를 위한 무선 디바이스 (102) 또는 컴퓨터 (100) 의 사용자에 접속되거나 또는 연관된 추가적인 소자들이 있을 수도 있다. 예를 들어, 데이터는 플레시 메모리, 예를 들어, 기록가능한 (writeable) CD 매체를 이용하는 광학 형태, 또는 자기적 테이프 리코더 및 나중의 이용을 위한 유사한 디바이스 안에서와 같은 자기적 매체상에서 저장될 수도 있다.
또한, 무선 디바이스들 및 컴퓨터들은 현재 다른 진보된 사운드 디코더 및 시스템뿐만 아니라 내장된 MP3 음악 디코딩 용량을 가진다. 휴대용 컴퓨터는 일반적인 규칙으로서 CD 및 DVD 재생 용량을 이용하고, 일부는 미리 기록된 오디오 파일을 수신하기 위해 작은 전용의 플레시 메모리를 가진다. 그러한 용량을 가지는 이슈는 디지털 음악 파일이 대단히 상승된 피처 리치 (rich) 경험을 약속하지 만, 이는 디코딩 및 재생이 페이스를 유지할 수 있는 경우에서만이다. 디지털 비디오 파일에 대하여도 마찬가지이다.
사운드 재생을 돕기 위해, 서브우퍼 (sub-woofers), 또는 전방 및 배면 사운드 프로젝션을 위한 "서라운드-사운드" 스피커와 같은 추가적인 소자들에 의해 또한 동행될 수도 있다. 동시에, 스피커 또는 이어폰 (108) 은 도 1b 의 마이크로 디스플레이 디바이스 (106) 의 메커니즘 또는 지지 프레임에 내장된 바와 같이 나타내진다. 알려진 바와 같이, 다른 오디오 또는 사운드 재생 소자가 전력 증폭 또는 사운드 형성 디바이스를 포함하여 이용될 수 있다.
어떠한 경우에도, 전술한 바와 같이, 데이터 소스로부터 최종 사용자에게 하나 이상의 통신 링크 (110) 를 통해 고 품질 또는 고해상도 이미지 데이터 및 고품질의 오디오 정보 또는 데이터 신호를 전달하고자 하는 경우에, 고 데이터 레이트가 요구된다. 즉, 전달 링크 (110) 는 일찍 설명한 바와 같이 현재의 전달 매체가 전형적으로 요구되는 고 데이터 레이트를 달성하지 않기 때문에 통신에서 잠재적인 병목이고, 시스템 수행을 한정한다. 전술한 바와 같이 예를 들어, 30 fps 의 데이터 레이트로 24-32 픽셀당 비트수의 컬러 깊이와 함께 1024×1024 픽셀과 같은 더 높은 이미지 해상도를 위해, 데이터 레이트는 755 Mbps 이상의 엑세스에서의 레이트를 달성할 수 있다. 또한, 그러한 이미지는 더욱 수량 또는 데이터 및 데이터 레이트를 증가시키면서, 대화형 게임 또는 통신, 또는 다양한 명령, 제어, 또는 신호를 다루는 잠재적으로 추가적인 신호 및 오디오 데이터를 포함하는 다중매체 프리젠테이션의 일환으로 제공될 수도 있다.
데이터 링크를 설치하기 위해 요구된 소수의 케이블 또는 상호연결이 디스플레이와 연관된 이동 디바이스가 사용자에게 더 용이하고, 더 많은 사용자 베이스에 의해 더욱 채택되리라는 것을 의미함이 또한 명백하다. 이것은 특히 다중 매체 디바이스가 일반적으로 완전한 오디오-비주얼 경험을 정립하는데 사용될 때 사실이고, 디스플레이와 음성 출력 디바이스의 품질 레벨이 증가함에 따라 특히 그러하다.
비디오 스크린 및 다른 출력 또는 입력 디바이스에서 많은 상기 및 다른 개선들에 관련된 또 다른 애플리케이션은 도 1c 및 1d 에서 보여질 수 있고, 도 1c 및 1d 에서 휴대용 또는 랩탑 컴퓨터 (130) 및 무선 전화 또는 PDA 디바이스 (140) 가 각각 오디오 재생 시스템 (136 및 146) 을 따라 "내부" 디스플레이 디바이스 (134 및 144) 를 갖는 도시된 통신 데이터이다.
도 1c 및 1d 에서, 전체적인 전자 디바이스 또는 제품의 작은 컷-어웨이 (cut-away) 가 이용되어, 오늘날 전자 산업에 걸쳐 이용된 일부 알려진 타입의 회전접합을 가로질러, 대응하는 클라이언트를 갖는 비디오 디스플레이 소자 또는 스크린에 이들을 접속하는 일반화된 통신 링크, 여기서는 138 및 148 를 갖는 디바이스의 하나의 부분에서 하나 이상의 내부 호스트 및 제어기의 위치를 도시한다. 이러한 전달에 포함된 데이터량이 링크 (138 및 148) 를 포함하는 많은 도전체의 넘버를 요구하는 것을 볼 수 있다. 그러한 통신 링크는 그러한 데이터를 전달하기 위해 이용가능한 병렬 또는 다른 알려진 인터페이스 기술의 타입 때문에 그러한 디바이스상에서 진보된 컬러 및 그래픽 인터페이스를 이용하기 위해 오늘날의 성장하는 필요를 만족시키기 위해 90 개 이상의 도전체를 달성하고 있다.
불행하게도, 더 높은 데이터 레이트는 데이터를 전달시키기 위해 이용 가능한 현재 기술을 초과한다. 단위 시간당 전달될 필요가 있는 데이터의 원료량의 관점과, 신뢰할 수 있는 비용 효율적인 물리적 전달 메커니즘의 제조의 관점에서 모두 그렇다.
필요한 것은 프리젠테이션 소자와 일관되게 (더) 낮은 전력, 경량, 및 가능한한 간단하고 경제적인 선로화 구조를 허락하는 데이터 링크 또는 통신 경로를 위해 더 높은 레이트로 데이터를 전달하기 위한 기술, 구성, 수단 또는 방법이다. 애플리케이션은 이동, 휴대용, 또는 고정된 위치의 디바이스의 배열이 데이터를 바람직한 저소비전력, 및 복잡성을 유지하면서, 대단히 고 데이터 레이트로 바람직한 디스플레이, 마이크로 디스플레이, 또는 오디오 전달 소자로 전달하도록 허용하는 이러한 및 다른 목적을 달성하기 위해 새로운 기술, 또는 방법 및 장치를 개발했다.
III. 고 레이트 디지털 데이터 인터페이스 아키텍쳐
새로운 인터페이스 디바이스를 생성하고 효율적으로 이용하기 위해, 저출력 신호를 이용하여 고 데이터 전달 레이트를 제공하는 신호 프로토콜 및 시스템 구조가 공식화되었다. 프로토콜은 패킷 및 공통 프레임 구조, 또는 함께 연결된 구조들에 기초하여 인터페이스상에 부과된 동작 구조 또는 명령을 따라 미리 선택된 데이터 세트 또는 데이터 타입을 통신시키기 위한 프로토콜을 형성한다.
A. 개요
다른 출력 및 입력 디바이스가 고려된다 할지라도, 전형적으로 일부 타입의 디스플레이 디바이스가 되는 클라이언트와 함께, MDDI 에 의한 또는 MDDI 를 통해 통신하는 디바이스는 호스트 및 클라이언트라고 칭해진다. 데이터는 호스트로부터 디스플레이로 순방향 (순방향 트래픽 또는 링크로 칭하는) 으로 이동하고, 데이터는 클라이언트로부터 호스트로, 호스트에 의해 인에이블되는 바와 같이 역방향 (역방향 트랙픽 또는 링크) 으로 이동한다. 이것은 도 2 에서 기본 구조로 설명된다. 도 2 에서, 호스트 (202) 는 순방향 링크 (208) 및 역방향 링크 (210) 를 포함하는 것처럼 설명되는 양방향 통신 채널 (206) 을 이용하여 클라이언트 (204) 에 접속된다. 그러나, 이들 채널은 데이터 전달이 순방향 또는 역방향 링크 동작사이에 효과적으로 스위칭되는 공통 도전체 세트에 의해 형성된다. 이는 이동 전자 디바이스에 대한 바와 같이 저출력 환경에서 고속 데이터 전달에 현재의 접근법에 부딪친 여러 가지 문제점의 하나를 말함으로써 바로 도전체의 매우 축소된 넘버를 허용한다.
어떤 다른 곳에 설명된 바와 같이, 호스트는 본 발명을 이용하는 데서 이익을 얻을 수 있는 디바이스의 여러 타입의 하나를 포함한다. 예를 들어, 호스트 (202) 는 핸드헬드, 랩탑, 또는 유사한 이동 연산 디바이스의 형태의 휴대용 컴퓨터일 수 있다. 또한, 호스트 (202) 는 개인 휴대용 정보 단말기 (PDA), 페이징 디바이스, 또는 많은 무선 전화 또는 모뎀 중 하나일 수 있다. 또한, 호스트 (202) 는 휴대용 DVD 또는 CD 플레이어, 또는 게임 플레잉 디바이스와 같은 휴대용 엔터테인먼트 또는 프리젠테이션 디바이스일 수 있다.
또한, 호스트 디바이스 또는 제어 소자로서 호스트는 이를 위해 고속 통신 링크가 클라이언트와 함께 바라게 된 여러 다른 널리 이용되거나 계획된 상업제품에서 상주될 수 있다. 예를 들어, 호스트는 비디오 리코딩 디바이스로부터 개선된 응답을 위한 저장 기본을 둔 클라이언트, 또는 프리젠테이션을 위한 고해상도의 더 큰 스크린으로 고 데이터 레이트로 데이터를 전달하는데 이용된다. 탑승한 재고품 리스트 또는 연산 시스템 및/또는 다른 가정용 디바이스에 대한 블루투스 접속을 통합시키는 냉장고와 같은 전자제품이 인터넷 또는 블루투스 접속 모드에서 동작하는 경우에 개선된 스크린 표시 용량을 가질 수 있거나, 전자 컴퓨터 또는 제어 시스템 (호스트) 이 캐비넷에 어떤 다른 곳에 상주하는 동안 실내 디스플레이 (클라이언트) 와 키패드 또는 스캐너 (클라이언트) 를 위한 와이어링 (wiring) 필요를 감소시켰다. 일반적으로, 당업자는 새롭게 추가되거나 기존의 커넥터 또는 케이블에 이용 가능한 도전체의 제한된 개수를 이용하여 정보의 고 데이터 레이트 전달로 오래된 디바이스를 개량하는 능력뿐만 아니라 이 인터페이스로부터 이익을 얻을 수도 있는 폭 넓은 여러 현대의 전자 디바이스 및 애플리케이션을 이해한다.
동시에, 클라이언트 (204) 는 최종 사용자에게 정보를 주거나, 호스트에게 사용자로부터의 정보를 주기 위한 유용한 다양한 디바이스를 포함할 수 있다. 예를 들어, 고글 또는 안경에 통합된 마이크로 디스플레이, 모자 또는 헬맷에 내장된 프로젝션, 윈도우 또는 윈드실드 (windshield) 에서와 같은 운송수단에 내장된 작은 스크린 또는 심지어 홀로그래픽 소자, 또는 고품질의 사운드 또는 음악을 제 공하기 위한 사운드 시스템이 있다. 다른 프리젠테이션 디바이스는 미팅, 또는 무비 및 텔레비젼 이미지를 위한 정보를 제공하는데 이용되는 프로젝터 또는 프로젝션 디바이스를 포함한다. 또 다른 실시형태는 접촉 패드 또는 민감한 디바이스의 이용, 음성 인식 입력 디바이스, 보안 스캐너 및 사용자로부터의 터치 또는 사운드보다 작은 실제의 "입력" 을 가지는 디바이스 또는 시스템 사용자로부터 상당한 량의 정보를 전달시키는 것이 요구될 수도 있는 기타 등등이다. 또한, 컴퓨터 및 자동차 키트 또는 데스크탑 키트용 도킹 (docking) 스테이션과 무선전화용 홀더는 최종 사용자 또는 다른 디바이스 및 장비로의 인터페이스 디바이스로서 기능할 수도 있으며, 특히 고속 네트워크가 연관된 분야에서, 데이터의 전달을 지원하기 위하여 클라이언트 (마이스 (mice) 와 같은 출력 또는 입력 디바이스) 또는 호스트를 사용할 수도 있다.
그러나, 당업자는 본 발명이 이러한 디바이스에 한정되지 않으며, 시장에서 및 저장 및 전달의 관점에서 또는 재생에 있는 프리젠테이션의 관점에서, 고품질의 이미지 및 사운드를 최종 사용자에게 제공하기 위해 의도된 이용을 위한 많은 다른 디바이스가 있다는 것을 용이하게 인식한다. 본 발명은 다양한 소자 또는 디바이스 사이에 데이터 처리량을 증가시킴에 있어 유용하여 원하는 사용자 경험을 현실화하기 위해 필요한 고 데이터 레이트를 수용한다.
독창적인 MDD 인터페이스 및 통신 신호 프로토콜은, (외부 모드라 하는) 외부 요소, 디바이스 또는 장비로의 또는 이를 위한 접속만을 위해서가 아니라, 신뢰도를 향상시키고, 이러한 접속의 비용 또는 복잡도와 관련된 전력과 제어 사양 또 는 제한 사항을 감소시키기 위하여, (예를 들어) 호스트 프로세서, 제어기 또는 회로 소자와 (외부 모드라 하는) 디바이스 또는 디바이스 하우징 또는 구조물 내의 디스플레이 사이의 상호접속을 간단화하는데 이용될 수도 있다.
이 인터페이스 구조에 의해 이용된 각각의 신호 쌍 위의 집합적인 직렬 링크 데이터 레이트가 시스템 또는 디바이스 설계자가 용이하게 소정의 애플리케이션 또는 목적을 위한 비용, 전력, 구현 복잡도 및 디스플레이 업데이트 레이트를 최적화하도록 허용하는 크기의 많은 순서 위에서 가변할 수 있다. MDDI 의 속성은 디스플레이 또는 다른 프리젠테이션 디바이스 (타겟 클라이언트) 기술과 관계없다. 인터페이스를 통하여 전달된 데이터 패킷의 타이밍은 오디오-비디오 시스템의 결합된 타이밍 요구 사항 또는 디스플레이 디바이스, 사운드 시스템, 메모리 및 제어 요소와 같은 특별한 클라이언트의 특징에 적응시키기 위해 용이하게 조절될 수 있다. 이것은 매우 작은 전력소모를 가지는 시스템을 갖게 할 수 있지만, 적어도 얼마간의 레벨에서의 MDDI를 이용하기 위해 프레임 버퍼를 갖는 다양한 클라이언트의 사양은 아니다.
B. 인터페이스 타입
MDD 인터페이스는 통신과 컴퓨터 산업에서 발견된 인터페이스의 4 및 어쩌면 그 이상의 다소 특징적인 물리적 타입을 다루는 것으로서 고려된다. 이것들이 타입-1, 타입-2, 타입-3 및 타입-4 로서 단순하게 식별되지만, 다른 식별 또는 지정들이 그들이 사용되는 애플리케이션 또는 연관된 산업에 따라 당업자에 의해 적용될 수도 있다. 예컨대, 단순한 오디오 시스템은 보다 복잡한 멀티미디어 시 스템보다 더 적은 접속을 사용하고, "채널" 등과 같은 특징을 다르게 참조할 수도 있다.
타입-1 인터페이스가 그것을 이동 전화 또는 무선 전화, PDA (휴대용 단말기), 전자게임, 및 CD 플레이어 또는 MP3 플레이어와 같은 휴대용 미디어 플레이어, 및 유사한 디바이스 또는 전자 소비자 기술의 비슷한 타입에 이용된 디바이스에 적합할 수 있는 6-와이어, 또는 다른 타입의 도전체 또는 도전성 요소, 인터페이스로서 구성된다. 일 실시형태에서, 인터페이스가 디스플레이가 신속히 업데이트되도록 요구하지 않고, 내장된 MDDI 링크 제어기를 구비하지 않는 랩탑, 노트북 또는 데스크톱 개인용 컴퓨터, 및 유사한 디바이스 또는 애플리케이션에 더 적합한 8-와이어 (도전체) 인터페이스로서 구성될 수 있다. 이 인터페이스 타입이 또한 추가적인 2-와이어 유니버셜 시리얼 버스 (USB) 인터페이스를 이용하여 구별할 수 있으며, 대부분의 개인용 컴퓨터에 현재 운용 체계 또는 발견된 소프트웨어 지원을 수용함에 있어 매우 유용하다.
타입-2, 타입-3, 및 타입-4 인터페이스는 고성능 클라이언트 또는 디바이스에게 적합하고, 데이터 신호에 적절한 차폐와 저손실 전달을 제공하기 위한 추가적인 트위스트-쌍 타입 도전체와 훨씬 더 복잡한 선로화를 사용한다.
타입-1 인터페이스는 디스플레이, 오디오, 제어와 제한된 신호 정보를 포함할 수 있는 신호를 통과시키고, 일반적으로 고해상 풀-레이트 비디오 데이터를 요구하지 않는 이동 클라이언트 또는 클라이언트 디바이스용으로 통상적으로 사용된다. 타입-1 인터페이스는 30 fps 플러스 5.1 채널 오디오에서 용이하게 SVGA 해상도를 지원할 수 있고, 최소 구성에서 총 3개만의 와이어 쌍, 즉, 2 쌍의 데이터 송신 및 한 쌍의 전력 전송을 이용할 것이다. 이러한 타입의 인터페이스는 USB 호스트가 접속 및 신호 전송을 위한 그와 같은 디바이스 내에서 통상적으로 이용될 수 없는 이동 무선 디바이스와 같은, 디바이스용으로 주로 의도된다. 이 구조에서, 이동 무선 디바이스가 MDDI 호스트 디바이스이고, 프리젠테이션, 디스플레이 또는 재생을 위해 클라이언트 (순방향 트래픽 또는 링크) 에게 데이터를 전송하는 호스트로부터 통신 링크를 제어하는 "마스터" 로서 동작한다.
이 인터페이스에서, 호스트는 특정 지속 기간에 대하여 버스 (링크) 를 인수하고 역방향 패킷으로서 데이터를 호스트로 전송하는 것을 허용하는 클라이언트에게 특별한 명령 또는 패킷 타입을 전송함으로써 클라이언트 (역방향 트래픽 또는 링크) 로부터 호스트에서 통신 테이터의 수신을 가능하게 한다. 이것이 도 3에서 설명되고, 패킷 캡슐화 (아래에서 설명됨) 라고 언급된 패킷 타입이, 역방향 링크를 생성시키면서, 전달 링크 위에서 역방향 패킷의 전달을 수용하기 위해 이용된다. 데이터를 위한 클라이언트를 폴링하기 위해 호스트용으로 배정된 시간 간격은 호스트에 의해 미리 결정되고, 각각의 특정 애플리케이션의 요구사항에 기초한다. 이러한 타입의 반 이중 양-방향 (half-duplex bi-directional) 데이터 전달은 정보 또는 클라이언트로부터의 데이터 전달을 위해 USB 포트가 이용되지 않아서 특히 유용하다.
HDTV 타입 또는 유사한 고해상도가 가능한 고성능 디스플레이는 풀-모션 비디오를 지원하기 위해 약 1.5 Gbps 레이트 데이터 스트림을 요구한다. 타입-2 인터페이스가 병렬로 2 비트를 전송, 타입-3 이 병렬로 4 비트를 전송하며, 타입-4 인터페이스가 병렬로 8 비트를 전달하여 고속의 데이터 레이트를 지원한다. 타입-2 와 타입-3 이 타입-1 과 동일한 케이블과 커넥터를 사용하지만, 휴대용 디바이스 상의 더 높은 성능 비디오 애플리케이션을 지원하기 위해 2배 및 4배의 데이터 레이트로 동작할 수 있다. 타입-4 인터페이스는 매우 높은 성능 클라이언트 또는 디스플레이용으로 적합하여, 추가적인 쌍꼬임선 데이터 (twisted-pair) 신호를 포함하는 조금 더 큰 케이블을 요구한다.
MDDI에 의해 이용된 프로토콜은 이용될 수 있는 가장 높은 데이터 레이트가 무엇인지를 교섭하여, 각각의 타입-1, -2, -3 또는 -4 호스트가 임의의 타입-1, -2, -3 또는 -4 클라이언트와 일반적으로 통신하도록 허용한다. 가장 작은 가능한 디바이스로서 언급될 수도 있는 디바이스의 용량성 또는 가능한 피처가 링크의 성능을 설정하기 위해 사용된다. 규칙으로서, 호스트와 클라이언트 모두가 타입-2, 타입-3, 또는 타입-4 인터페이스를 이용할 수 있는 시스템에서 조차도, 호스트와 클라이언트 모두는 타입-1 인터페이스로서 동작을 개시한다. 이 때, 호스트는 타겟 클라이언트의 용량을 결정하고, 특정 애플리케이션에 적당한, 타입-2, 타입-3 또는 타입-4 모드 중 하나에 핸드오프 또는 재구성 작동을 교섭한다.
일반적으로, 그것이 (아래에서 상세하게 설명될) 적절한 링크 레이어 프로토콜을 이용하고, 예를 들면 더 높은 해상도 디스플레이 컨텐츠 (content) 에 대하여 더 높은 속도 전달을 지원하기 위해 더 빠른 모드로 스텝업하거나 전력을 줄이기 위해 더 느린 모드로 일반적으로 임의의 시간에 동작을 스텝다운 또는 다시 재구성 하기 위한 호스트용으로 가능하다. 예를 들면, 시스템이 배터리와 같은 전원에서 AC 전원으로 스위치할 때, 또는 디스플레이 미디어 소스를 더 낮거나 더 높은 해상도 포맷으로 스위칭할 때 호스트는 인터페이스 타입을 변경할 수도 있고, 또는 이러한 조건, 또는 다른 조건이나 이벤트의 조합이 인터페이스 타입 또는 전달 모드를 변경하기 위한 기초로서 고려될 수도 있다.
또한, 한 방향에 있는 일 모드와 또 다른 방향에 있는 또 다른 모드를 이용함으로써 데이터를 통신하기 위한 시스템용으로 가능하다. 예를 들어, 타입 4 인터페이스 모드가 고속으로 디스플레이로 데이터를 전달하기 위해 이용될 수 있고, 반면에 타입 1 모드가 키보드 또는 포인팅 디바이스와 같은 주변 디바이스로부터 호스트 디바이스로 데이터를 전달할 때 이용된다. 당업자들은 호스트와 클라이언트가 상이한 레이트로 아웃고잉 데이터를 통신할 수도 있다는 것을 알게 될 것이다.
종종, MDDI 프로토콜의 사용자가 "외부" 모드와 "내부" 모드 사이에서 구별할 수도 있다. 외부 모드는 호스트로부터 약 2 미터까지 떨어져 있는 외부의 클라이언트 디바이스로 하나의 디바이스 내의 호스트를 연결시키기 위해 프로토콜 및 인터페이스의 사용을 설명한다. 또한 이 상황에서, 호스트는 양쪽 디바이스가 용이하게 모바일 환경에서 동작할 수 있도록 외부 클라이언트에게 전력을 보낼 수도 있다. 호스트가 예를 들면, 공통 하우징 또는 지지 프레임 또는 어떤 종류의 구조 내인, 동일한 디바이스 내에 포함되는 클라이언트에 연결될 때, 내부 모드를 기술한다. 그 예는 클라이언트가 디스플레이 또는 디스플레이 드라이버, 또는 키패드 또는 터치-패드와 같은 입력 디바이스 또는 사운드 시스템이고, 호스트가 중심 제어기, 그래픽 엔진, 또는 CPU 엘리먼트인 무선 전화 또는 다른 무선 디바이스, 또는 휴대용 컴퓨터 또는 게임 디바이스 내의 애플리케이션일 것이다. 클라이언트가 외부 모드 애플리케이션에 대비하여 내부 모드 애플리케이션에서 호스트에 훨씬 더 가깝게 위치하기 때문에, 일반적으로 그와 같은 구조에 있는 클라이언트에 대한 전력 연결용으로 설명될 어떤 요구사항도 없다.
C. 물리적 인터페이스 구조
호스트와 클라이언트 디바이스 사이에서 통신을 확립하기 위한 디바이스 또는 링크 제어기의 일반적인 배치가 도 4 및 도 5 에서 도시된다. 도 4 및 도 5 에서, MDDI 링크 제어기 (402 및 502) 가 호스트 디바이스 (202) 내에 설치되어 도시되고, MDDI 링크 제어기 (404 및 504) 가 클라이언트 디바이스 (204) 내에 설치되어 도시된다. 또한, 호스트 (202) 가 일련의 도전체를 포함하는 양방향 통신 채널 (406) 을 이용하여 클라이언트 (204) 와 연결된다. 아래에 설명된 것처럼, 호스트와 클라이언트 제어기 모두는 호스트 제어기 (드라이버) 또는 클라이언트 제어기 (수신기) 중 하나에 응답하도록 설정되고, 적응되거나 프로그램될 수 있는 단일 회로 설계를 이용하는 집적 회로로서 제조될 수 있다. 이것은 단일 회로 디바이스의 더 큰 스케일 제조이기 때문에 더 낮은 비용으로 제공된다.
도 5에서, MDDI 링크 제어기 (502) 가 호스트 디바이스 (202') 내에 설치되어 도시되고, MDDI 링크 제어기 (504) 가 클라이언트 디바이스 (204') 내에 설치되어 도시된다. 또한, 호스트 (202') 가 일련의 도전체를 포함하는 양방향 커뮤 니케이션 채널 (506) 을 이용하여 클라이언트 (204') 와 연결된다. 아래에 설명된 것처럼, 호스트와 클라이언트 링크 제어기 모두 단일 회로 설계를 이용하여 제조될 수 있다.
또한, MDDI 링크 위로, 디스플레이 디바이스와 같은 클라이언트와 호스트 사이에서 통과하는 신호들 또는 사용된 물리적 도전체들이 도 4 및 도 5에서 보여진다. 도 4 및 도 5 에서 도시된 바와 같이, MDDI 를 통하여 데이터를 전송하기 위한 주 경로 또는 메커니즘은 MDDI_DataO+/- 및 MDDI_Stb+/-로서 식별된 데이터 신호를 이용한다. 각각의 신호들은 케이블에서 한 쌍의 상이한 와이어 위로 전달되는 저전압 데이터 신호이다. 인터페이스 위로 전송된 각 비트에 대한 MDDI_Data0 쌍 또는 MDDI_Stb 쌍 중 하나에 대하여 하나의 변이가 있다. 이것은 전류 기반을 두지 않은 전압 기반 전달 메커니즘이어서, 정전류 소비는 거의 0 이다. 호스트는 클라이언트 디스플레이에 MDDI_Stb 신호를 구동시킨다.
데이터가 MDDI_데이터 쌍 위에서 순방향 및 역방향 모두로 흐를 수 있는, 즉, 양-방향 전달 경로일 때, 호스트는 데이터 링크의 마스터 또는 제어기이다. MDDI_Data0 및 MDDI-Stb 신호 경로는 잡음 순도를 극대화하기 위한 차동 모드에서 동작된다. 이러한 라인 위의 신호에 대한 데이터 레이트는 호스트에 의해 보내진 클록의 레이트에 의해 결정되고, 약 1kbps 에서 400 Mbps 이상까지의 범위로 가변한다.
타입-2 인터페이스는 MDDI_Data11+/- 로 언급된, 타입-1 의 인터페이스 이외에 추가적인 데이터 쌍 또는 도전체 또는 경로를 포함한다. 타입-3 인터페이스 는 MDDI_Data2+/-, 및 MDDI_Data3+/- 로 언급된, 타입-2 인터페이스 이외에 두 개의 추가적인 데이터 쌍 또는 신호 경로를 포함한다. 타입-4 인터페이스는 MDDI_data4+/-, MDDI_Data5+/-, MDDI_Data6+/-, 및 MDDI_Data7+/- 로서 언급된, 타입-3 인터페이스 이외의 4개 더 많은 데이터쌍, 신호 경로를 각각 포함한다. 상기 인터페이스 구조의 각각에서, 호스트는 HOST_Pwr 및 HOST_Gnd 로서 지정된 와이어 쌍 또는 신호를 사용하여, 클라이언트 또는 디스플레이에 전력을 보낼 수 있다. 아래에서 추가적으로 설명되는 바와 같이, 인터페이스 "타입" 이 다른 모드에 대하여 가능하거나 존재하는 것보다 더 적은 도전체를 채용하여 사용될 때, 전력 전송은 MDDI_data4+/-, MDDI_Data5+/-, MDDI_Data6+/- 또는 MDDI_Data7+/- 도전체에 대한 몇몇 구조에서 원한다면 적응될 수 있다. 몇몇 애플리케이션은 다를 수도 있다고 할지라도, 이러한 전력 전달은 일반적으로 외부 모드를 위하여 사용되고, 내부 모드를 위하여는 일반적으로 필요하지 않다.
다양한 모드용으로 MDDI 링크 상에 호스트와 클라이언트 (디스플레이) 사이에 통과된 신호의 요약을 인터페이스 타입에 따라서, 아래의 표 1 에 나타낸다.
Figure 112006033870809-PCT00001
또한 호스트로부터의 전달을 위한 HOST_Pwr/Gnd 접속이 외부 모드를 위해 일반적으로 제공된다는 것을 주목한다. 일반적으로 동작의 내부 애플리케이션 또는 모드가 다른 내부 리소스로부터 직접적으로 전력을 끌어쓰는 클라이언트를 갖고, 전력 분산을 제어하기 위해 MDDI 을 이용하지 않는데, 그러한 분배은 당업자에게 명백하기 때문에 여기에서는 추가적으로 상세하게 설명하지 않는다. 그러나, 당업자에게 이해되는 것처럼, 예를 들면 특정 타입의 전력 제어, 동기화 또는 상호연결 편의성을 위해 MDDI 인터페이스를 통하여 전력이 분배되도록 허용하는 것은 확실히 가능하다.
상기 구조와 동작을 구현하기 위해 일반적으로 사용된 케이블은 일반적으로 2 미터 이하인, 명목상 1.5 미터 오더와 비슷하고, 각각이 교대로 다중 가닥 30AWG 와이어인, 3개의 쌍꼬임선 도전체를 포함한다. 호일 차폐 커버링은 추가적인 드레인 와이어로서, 랩핑되거나 랩핑되지 않는다면 3개의 쌍꼬임선 위에 형성된다. 쌍꼬임선과 차폐 드레인 도전체는 클라이언트용 차폐에 접속된 차폐를 가진 클라이언트 커넥터를 종단하고, 당해 기술분야에서 잘 알려진 바와 같이, 전체 케이블을 커버하는 절연층이 있다. 와이어는 HOST_Pwr를 가진 HOST_Gnd ; MDDI_Stb-를 가진 MDDI_stb+ - ; MDDI_ Data0-를 가진 MDDI_Data0+ ; MDDI_Datal- 를 가진 MDDI_Datal+ 등과 같이 쌍이다. 그러나, 소정의 애플리케이션에 따라, 본 발명의 실시형태를 구현하기 위하여, 당해 기술분야에서 이해되는 바와 같이, 다양한 도전체 및 케이블링 (cabling) 이 이용될 수 있다. 예를 들어, 몇몇 애플리케이션에서는 보다 무거운 외부면 코팅 또는 심지어 금속 레이어가 케이블을 보호하는데 이용될 수도 있는 반면, 보다 얇고 평평한, 도전성의 리본타입 구조물이 다른 애플리케이션에 매우 적절할 수도 있다.
D. 데이터 타입과 레이트
전체적인 범위의 사용자 경험과 애플리케이션을 위한 유용한 인터페이스를 성취하기 위해서, 이동 디지털 데이터 인터페이스 (MDDI; Mobile Digital Data Interface) 는 다양한 클라이언트와 디스플레이 정보, 오디오 트랜스듀서, 키보드, 포인팅 디바이스, 및 제어 정보에 따라서, 이동 디스플레이 디바이스에 집적되거나 협력하여 동작하는 다수의 다른 입력 또는 출력 디바이스, 및 그 조합들를 지원하기 위해 제공된다. MDD 인터페이스는 최소의 케이블과 도전체를 사용하여 순방향 또는 역방향 링크 중 하나에서 호스트와 클라이언트 사이를 가로지르는 데이터 스트림의 다양한 잠재적인 타입을 수용할 수 있도록 설계된다. 등시성 스트림과 비동기 스트림 (업데이트) 모두 지원된다. 데이터 타입의 많은 조합은 집결 데이터 레이트가 희망하는 최대 MDDI 링크 레이트보다 적거나 동일하면 가능하고, 채용된 최대 직렬 레이트와 데이터 에어 (air) 의 개수에 의해 제한된다. 이것들은 아래의 표 2 및 표 3에 포함되지만, 나열된 항목에 제한되지는 않는다.
호스트에서 클라이언트로 전달
등시성 비디오 데이터 720×480, 12비트, 30f/s ~124.5Mbps
등시성 스테레오 오디오 데이터 44.1kHz, 16비트, 스테레오 ~ 1.4Mbps
비동기 그래픽 데이터 800×600, 12비트, 10f/s, 스테레오 ~115.2Mbps
비동기 제어 최소 ≪1.0Mbps
클라이언트에서 호스트로 전달
등시성 비디오 데이터 8kHz, 8비트 ≪1.0Mbps
등시성 비디오 데이터 640×480, 12비트, 24f/s ~88.5Mbps
비동기 상태, 사용자 입력, 등 최소 ≪1.0Mbps
인터페이스는 고정된 것이 아니라 확장성이 있어서 장래 시스템 호환성을 위해, 사용자-정의 데이터를 포함하는 다양한 정보 "타입" 의 전달을 지원할 수 있다. 수용될 데이터의 특정 예는 : 풀-모션 비디오, 전체 또는 부분적인 스크린 비트맵 필드 중 하나, 또는 압축 비디오; 전력을 보존하고 구현 비용을 줄이기 위한 낮은 레이트에서 정적 비트맵 ; 다양한 해상도 또는 레이트에서 PCM (펄스부호변조방식) 또는 압축 오디오 데이터 ; 포인팅 디바이스 위치 및 선택, 및 아직 규정되지 않은 용량을 위한 사용자 정의 가능 데이터이다. 그런 데이터는 또한 디바이스 용량을 검출하고 동작 파라미터를 설정하기 위한 제어 또는 상태 정보를 따라 전달될 수도 있다.
본 발명의 실시형태는 데이터 전달에서 사용하기 위한 당해 기술을 진보시키고, 다음의 데이터 전송을 포함하지만, 그에 한정되지는 않는다 ; 영화 보기 (비디오 디스플레이 및 오디오); 제한된 개인용 뷰를 갖는 개인용 컴퓨터를 사용 (그래픽 디스플레이, 종종 비디오와 오디오가 결합됨) ; PC, 콘솔, 또는 개인용 디바이스로 비디오 게임하기 (동작 그래픽 디스플레이, 또는 합성 비디오 및 오디오); 비디오 전화의 형태로 디바이스를 사용하여 인터넷 "서핑" (양방향으로 낮은 레이트의 비디오 및 오디오); 정적인 디지털 사진용 카메라, 또는 디지털 비디오 이미지를 포착하기 위한 캠코더; 비디오 모니터, 키보드, 및 마우스에 연결된 데스크 탑 도킹 스테이션을 가지고 도킹하거나 프리젠테이션하기 위해 프로젝터로 도킹된 PDA 또는 전화 이용; 및 무선 포인팅 디바이스 및 키보드 데이터를 포함하는, 셀 폰, 스마트 폰, 또는 PDA 를 사용하는 생산성 향상 또는 엔터테인먼트용.
아래에서 설명될 고속 데이터 인터페이스는 일반적으로 와이어-라인 또는 케이블 타입 링크로서 구성된 통신 또는 전달 링크 위로 A-V 타입 데이터의 큰 양을 제공하는 것으로 표현된다. 그러나, 데이터 전달의 원하는 레벨을 유지할 수 있다면, 신호 구조, 프로토콜, 타이밍 또는 전송 메커니즘이 광학 또는 무선 매체의 형태로 링크를 제공하기 위해 조절될 수 있다는 것은 아주 분명하다.
MDD 인터페이스 신호는 기본 신호 프로토콜 또는 구조에 공통 프레임 레이트 (CFR) 로 알려진 개념을 사용한다. 공통 프레임 레이트의 이용 이후의 아이디어는 동시 등시성 데이터 스트림을 위한 동기 펄스를 제공하는 것이다. 클라이언트 디바이스는 시간 레퍼런스로서 이 공통 프레임 레이트를 이용할 수 있다. 낮은 CF 레이트는 서브-프레임 헤더를 전송하기 위해 오버헤드를 줄임으로써 채널 효율을 증가시킨다. 또 한편으로는, 높은 CF 레이트는 레이턴시 (latency) 를 줄이고 오디오 샘플을 위한 더 작은 일라스틱 데이터 버퍼를 허용한다. 본 발명의 인터페이스의 CF 레이트는 동적으로 프로그램할 수 있고 특정 애플리케이션에 이용된 등시성 스트림으로 적절한 많은 값 중 하나에서 설정될 수도 있다. 즉, CF 값은 소망하는 대로, 주어진 클라이언트와 호스트 구조에 가장 일치시키도록 선택된다.
일반적으로 공통 프레임 당 요구된 다수의 바이트는 표 4에서 도시되고, 공통 프레임은 헤드-마운트 마이크로-디스플레이에 대한 것과 같은, 애플리케이션으로 가장 유사하게 사용되는 등시성 데이터 스트림에 대하여, 적용가능하거나 프로그램 가능하다.
공통 프레임 레이트 (CFR)=300Hz
X Y 비트 프레임레이트 채널 레이트(Mbps) 바이트/서브-프레임
컴퓨터 게임 720 480 24 30 1 248.832 103680
컴퓨터 그래픽 800 600 24 10 1 115.200 48000
비디오 640 480 12 29.97 또는 30 1 221.184 92160
CD 오디오 1 1 16 44100 2 1.4112 588
음성 1 1 8 8000 1 0.064 26-2/3
서브-프레임 당 바이트의 단편적인 카운트는 단순한 프로그램가능 M/N 카운터 구조를 이용함으로써 용이하게 획득된다. 예를 들어, CF 당 26-2/3 바이트의 카운트는 26 바이트 일 서브-프레임에 후속하는 각 27 바이트 2 프레임을 전달함으로써 구현된다. 더 작은 CF 레이트는 서브-프레임당 바이트의 정수 개수를 만들기 위해 선택될 수도 있다. 그러나 일반적으로 말하면, 하드웨어에서 단순한 M/N 카운터를 구현시키기 위해서 더 큰 오디오 샘플 FIFO 버퍼용으로 사용된 영역보다 본 발명의 실시형태의 일부 또는 모두를 구현하도록 사용된 집적 회로 칩 또는 전자 모듈 내에서 더 적은 영역을 요구해야만 한다.
다른 데이터 전달 레이트와 데이터 타입의 효과 (impact) 를 설명하는 예시적 애플리케이션은 가라오케 (Karaoke) 시스템이다. 가라오케에 대하여, 최종 사용자 또는 사용자가 음악 비디오 프로그램을 따라 노래를 부른다. 노래의 가사가 스크린상의 어딘가, 통상적으로 바닥에 디스플레이되어 사용자는 노래말과 대강의 노래 부를 타이밍을 알게 한다. 이 애플리케이션은 가끔 그래픽 업데이트를 하는 비디오 디스플레이와 사용자 음성 또는 음성들을 스트레오 오디오 스트림과 혼합을 요구한다.
300 Hz의 공통 프레임 레이트를 추정한다면, 각각의 서브-프레임은 클라이언트 디스플레이 디바이스에 대한 순방향 링크 위로 비디오 컨텐츠 92,160 바이트와 오디오 컨텐츠의 588 바이트 (스트레오에서, 147 16-비트 샘플을 근거로 함) 로 구성되고, 음성의 평균 26.67 (26-2/3) 바이트는 마이크에서부터 이동 가라오케 기계까지 반송된다. 비동기 패킷은 가능하다면 헤드 마운트된, 호스트와 디스플레이 사이에 전송된다. 이것은 최대 768 바이트의 그래픽 데이터 (스크린의 1/4 높이), 및 약 200 바이트 (여러 바이트) 의 다방면 (miscellaneous) 제어와 상태 명령을 포함한다.
표 5는 어떻게 데이터가 가라오케 실시예에 대하여 공통 프레임 내에 할당되는지를 도시한다. 사용되어질 총 레이트는 약 279 Mbps 로 선택된다. 280 Mbps 보다 조금 더 높은 레이트는 수시 (occasional) 제어와 상태 메시지의 사용을 허용하는, 전달되어질 서브-프레임당 다른 400 바이트의 데이터를 허용한다.
엘리먼트 레이트 서브-프레임당 오버헤드 바이트 서브-프레임당 미디어 바이트
640×460 픽셀 및 30fps 에서 뮤직 비디오 2*28=56 92160
640×120 픽셀 및 1fps 에서 가사 텍스트 10 서브-프레임, 1/30 초에서 업데이트됨 28 768
44,100 sps에서 CD 오디오, 스트레오, 16-비트 2*16=32 588
8,000 sps 에서 음성, 모노, 8-비트 28+8+8+(4*16)+(3*27)=125 26.67
서브-프레임 헤더 22
총 바이트/CF 263 115815
총레이트 (Mbps) (263+115815)*8*300=278.5872
III. (계속됨) 고속 디지털 데이터 인터페이스 시스템 아키텍쳐
E. 링크 레이어
MDD 인터페이스 고속 시리얼 데이터 신호를 이용하여 전달된 데이터가 차례로 링크되는 시-다중화된 패킷의 스트림을 구성한다. 송신 디바이스가 전송하기 위한 노 데이터 (no data) 를 가질 때 조차도, 일반적으로 MDDI 링크 제어기는 필러 패킷을 자동적으로 전송하여, 패킷의 스트림을 유지한다. 간단한 패킷 구조의 사용은 비디오와 오디오 신호 또는 데이터 스트림용 신뢰할 만한 등시성 타이밍을 보증한다.
패킷의 그룹이 서브프레임이라고 언급된 신호 엘리먼트 또는 구조 내에 포함되고, 서브프레임의 그룹이 미디어 프레임으로 언급된 신호 엘리먼트 또는 구조 내에 포함된다. 그들 각각의 사이즈와 데이터 전달 사용에 따라, 서브-프레임이 하나 이상의 패킷을 포함하고, 미디어 프레임이 하나 이상의 서브-프레임을 포함한다. 여기에서 보여진 실시형태에 채용된 프로토콜에 의해 제공된 가장 큰 서브-프레임이 232-1 또는 4,294,967,295 바이트 순서로 있고, 가장 큰 미디어 프레임 사이즈는 216-1 또는 65,535 서브프레임의 순서로 된다.
특별한 서브-프레임 헤더 패킷은 아래 설명된 것처럼, 각각의 서브-프레임 시작에 나타나는 고유 식별자를 포함한다. 그 식별자는 또한 호스트와 클라이언트 사이의 통신이 시작될 때 클라이언트 디바이스에서 프레임 시간을 획득하기 위해 사용된다. 링크 시간 획득은 더 상세하게 아래에서 설명된다.
통상적으로, 디스플레이 스크린은 풀-모션 비디오가 디스플레이되고 있을 때 미디어 프레임당 한번 업데이트된다. 디스플레이 프레임 레이트는 미디어 프레임 레이트와 동일하다. 링크 프로토콜이 원하는 애플리케이션에 따라, 전체 디스플레이 상에 풀-모션 비디오 또는 정적 이미지에 의해 둘러싸인 풀-모션 비디오 컨텐츠의 작은 영역만을 지원한다. 몇몇의 저전력 이동 애플리케이션에서, 웹 페이지 또는 이메일을 뷰잉하는 것과 같은, 디스플레이 스크린이 종종 업데이트될 필요가 있을 수도 있다. 그 상황에서, 전력 소비를 최소로 하기 위해 단일의 서브-프레임을 송신하는데 유리하고 링크를 셧다운하거나 비활성화한다. 또한 인터페이스는 스테레오 비젼과 같은 효과를 지원하고, 그래픽 기본 연산을 핸들링한다.
서브프레임은 시스템이 주기적 방식에 고-우선 순위 패킷의 송신을 가능하게 하도록 허용한다. 이것은 데이터 버퍼링의 최소량으로 동시 존재하도록 동시 등시성 스트림을 허용한다. 이것은 공통 채널을 본질적으로 공유하도록 다수 데이터 스트림 (비디오, 음성, 제어, 상태, 포인팅 디바이스 데이터 등의 고속 통신) 을 허용하도록 디스플레이 프로세스에 제공하는 하나의 유익한 실시형태이다. 그것은 상대적으로 극소수인 신호를 이용함으로써 정보를 전달한다. 또한, 이는 CRT 모니터 또는 다른 클라이언트-기술-특정 동작을 위한 수평 동기 펄스 및 블랭킹 (blanking) 간격과 같은 디스플레이-기술-특정 동작을 존재할 수 있도록 한다.
F. 링크 제어기
도 4 및 도 5 에서 도시된 MDDI 링크 제어기는 MDDI 데이터와 스트로브 신호를 수신하기 위해 사용된 차동 라인 수신기를 제외하고 완벽한 디지털 구현을 위해 제조되거나 어셈블된다. 그러나, 예를 들면, CMOS 타입 ID 를 만들 때, 차동 라인 드라이버 및 수신기는 링크 제어기로 동일한 디지털 집적 회로에서 구현될 수 있다. 어떤 아날로그 기능 또는 PLL 도 비트 회복 또는 링크 제어용 하드웨어를 구현하기 위해 요구되지 않는다. 호스트 및 클라이언트 링크 제어기는 링크 동기화용 상태 머신을 보유하는 클라이언트 인터페이스를 제외하고, 매우 유사한 기능을 보유한다. 따라서, 본 발명의 실시형태는 전체로서, 링크 제어기를 위한 제조 비용을 줄이는, 호스트 또는 클라이언트 중 하나로서 구성될 수도 있는 단일 제어기 설계 또는 회로를 만들 수 있다는 실제적인 이익을 허용한다.
IV. 인터페이스 링크 프로토콜
A. 프레임 구조
패킷 전달용 순방향 링크 통신을 구현하기 위해 사용된 신호 프로토콜 또는 프레임 구조가 도 6 에서 나타낸다. 도 6에서 도시된 바와 같이, 정보 또는 디지털 데이터는 패킷으로 알려진 엘리먼트로 그룹핑된다. 다수의 패킷은 "서브 프레임" 으로 언급된 것을 형성하기 위해 함께 교대로 그루핑되고, 다수의 서브 프레임은 "미디어" 프레임을 형성하기 위해 함께 교대로 그루핑된다. 프레임 형성과 서브프레임 전달을 제어하기 위해, 각 서브 프레임은 서브 프레임 헤더 패킷 (SHP; Sub-frame Header Packet) 으로 언급된 특별하게 미리 규정된 패킷으로 시작된다.
호스트 디바이스는 주어진 전달용으로 사용되어질 데이터 레이트를 선택한다. 이 레이트는 호스트의 최대 전달 용량 또는 호스트에 의해 소스로부터 검색되어질 데이터와 클라이언트 최대 용량 또는 다른 디바이스로 전달되어질 데이터에 기초된 호스트 디바이스에 의해 동적으로 변경될 수 있다.
MDDI 또는 진보적인 신호 프로토콜을 가지고 동작하기 위해서 설계되거나 동작할 수 있도록 설계된 수신 클라이언트 디바이스가 사용될 수 있는 데이터 타입 및 지원된 피처 뿐만 아니라 최대값, 또는 전류 최대값, 사용할 수 있는 데이터 전달 레이트, 또는 사용되어질 수도 있는 더 느린 최소 레이트 디폴트를 결정하기 위해 호스트에 의해 조회되도록 할 수 있다. 이 정보는 아래에서 추가적으로 설명되는, 디스플레이 용량 패킷 (DCP; Display Capability Packet) 을 사용하여 전달될 수 있다. 클라이언트 디스플레이 디바이스는 미리 선택된 최소 데이터 레이트에서 또는 최소 데이터 레이트 범위 내에서 인터페이스를 사용하는 다른 디바이스와 통신하거나 데이터를 전송할 수 있고, 호스트는 클라이언트 디바이스의 전체적인 용량을 결정하기 위해 이 범위 내에서 데이터 레이트를 이용하는 쿼리를 수행할 것이다.
비트맵의 네이쳐 (nature) 와 클라이언트의 비디오 프레임-레이트 용량을 규정하는 다른 상태 정보는 상태 패킷으로 호스트에 전달할 수 있도록, 호스트가 임의의 시스템 장애 내에서 원하거나 실질적이도록 효율적 또는 최적으로 인터페이스를 구성할 수 있다.
호스트는 현재의 서브 프레임 내에 전달되어질 어떤 데이터 패킷도 없을 때, 또는 호스트가 순방향 링크용으로 선택된 데이터 송신 레이트를 유지하기에 충분한 레이트에서 전달할 수 없을 때, 호스트는 필러 패킷을 전송한다. 각 서브 프레임이 서브 프레임 헤더 패킷을 가지고 개시되기 때문에 이전의 서브 프레임의 종단은 이전의 서브 프레임을 정확하게 채우는 패킷 (최대 유사 필러 패킷) 을 포함한다. 그 자체로 데이터 베어링 패킷을 위한 공간이 부족하기 때문에, 필러 패킷은 서브 프레임에서 또는 다음의 이전 서브 프레임의 종단에서 그리고 서브 프레임 헤더 패킷 전에 가장 유사하게 최종 패킷일 수도 있다. 그 서브 프레임 내에서 송신되어질 각 패킷의 서브 프레임내에 남아 있는 공간이 충분하다는 것을 보증하기 위한 호스트 디바이스 내에서 제어 동작의 테스크이다. 동시에, 호스트 디바이스가 데이터 패킷의 전송을 개시하면, 호스트는 데이터 언더런 조건을 야기시키지 않고 프레임 내에서 그 사이즈의 패킷을 성공적으로 완성시킬 수 있어야만 한다.
실시형태의 일 양태에서, 서브 프레임 송신은 두 가지 모드를 가진다. 일 모드는 라이브 비디오 및 오디오 스트림을 송신하기 위해 사용된, 주기적인 서브 프레임 모드, 또는 주기적인 타이밍 에포크이다. 이 모드에서, 서브 프레임 길이는 논 제로로서 규정된다. 제 2 모드는 새로운 정보가 가능할 때에만 프레임이 클라이언트에게 비트맵 데이터를 제공하도록 사용되는 비동기 또는 비-주기적 모드이다. 이 모드는 서브 프레임 헤더 패킷에서 서브 프레임 길이를 0 으로 설정하여 규정된다. 주기적인 모드를 사용할 때, 서브 프레임 패킷 수신은 클라이언트가 순방향 링크 프레임 구조로 동기화될 때 개시할 수도 있다. 이것은 도 49 또는 도 63 에 대하여, 아래에서 설명된 상태도에 따라 규정된 "인 싱크" 상태에 해당한다. 비동기 비-주기적 서브 프레임 모드에서, 수신은 제 1 서브 프레임 헤더 패킷이 수신된 후에 개시한다.
B. 전체 패킷 구조
본 실시형태에 의해 구현된, 통신 또는 신호 프로토콜 또는 데이터를 전달하는 방법 또는 수단을 형식화하기 위해 사용된 패킷의 포맷 또는 구조가 아래에서 나타내며, 인터페이스가 확장가능하고 추가적인 패킷 구조가 소망하는 경우 추가될 수 있다는 것을 기억해 둔다. 패킷은 인터페이스에서의 그 기능, 즉 전달 또는 연관된 명령, 정보, 값 또는 데이터의 관점에서 상이한 "패킷 타입" 으로 식별 또는 분류된다. 따라서, 각 패킷 타입은 전달되어질 패킷과 데이터를 조작하는 데 사용되는 주어진 패킷에 대하여 미리-규정된 패킷 구조를 나타낸다. 아주 명백하게, 패킷은 미리 선택된 길이를 가질 수도 있고 또는 각 기능에 따라 가변적으로 또는 동적으로 변경할 수 있는 길이를 갖는다. 또한 패킷은 동일한 기능이 여전히 실현됨에도 불구하고 상이한 이름을 포함할 수 있고, 프로토콜이 표준으로 수용되는 동안 변경될 때 발생한다. 다양한 패킷에서 사용된 바이트 또는 바이트 값은 무부호 정수인 멀티 비트 (8- 또는 16- 비트) 로 형성된다. "타입" 지정자와 함께 채용된 패킷의 요약은 타입 순으로 나열되고, 표 6-1 내지 표 6-4 에 도시된다.
각 표는 용이한 설명과 이해를 위해 전체적인 패킷 구조 내에서 패킷의 일반적인 "타입" 을 나타낸다. 이러한 그룹화에 의해 본 발명에 대하여 암시되고 표현된 어떤 제한이나 다른 효과는 없으며, 패킷은 소망하는 경우 많은 다른 방식으로 정리될 수 있다. 패킷의 전달이 유효라고 간주되는 경향도 지적한다.
링크 제어 패킷
패킷명 패킷 타입 순방향에서 유효 역방향에서 유효
서브-프레임 헤더 패킷 15359 x
필러 패킷 0 x x
역방향 링크 캡슐화 패킷 65 x
링크 셧다운 패킷 69 x
인터페이스 타입 핸드오프 요청 패킷 75 x
인터페이스 타입 확인 응답 패킷 76 x
수행 타입 핸드오프 패킷 77 x
순방향 오디오 채널 인에이블 패킷 78 x
라운드 트립 지연 측정 패킷 82 x
순방향 링크 스큐 (skew) 교정 패킷 83 x
기본 미디어 스트림 패킷
패킷명 패킷 타입 순방향에서 유효 역방향에서 유효
비디오 스트림 패킷 16 x x
오디오 스트림 패킷 32 x x
예약 스트림 패킷 1-15,18-31,33-55 x x
사용자-정의 스트림 패킷 56-63 x x
컬러 맵 패킷 64 x x
역방향 오디오 샘플 레이트 패킷 79 x
투명 컬러 인에이블 패킷 81 x
클라이언트 상태 및 제어 패킷
패킷명 패킷 타입 순방향에서 유효 역방향에서 유효
클라이언트 용량 패킷 66 x
키보드 데이터 패킷 67 x x
포인팅 디바이스 데이터 패킷 68 x x
클라이언트 요청 및 상태 패킷 70 x
디지털 컨텐츠 보호 오버헤드 패킷 80 x x
요청 VCP 피처 패킷 128 x
VCP 피처 응답 패킷 129 x
셋 VCP 피처 패킷 130 x
요청 유효 파라미터 패킷 131 x
유효 파라미터 응답 패킷 132 x
요청 특정 상태 패킷 138 x
유효 상태 응답 리스트 패킷 139 x
패킷 프로세싱 지연 파라미터 패킷 140 x
개인 디스플레이 용량 패킷 141 x
디스플레이 에러 보고 패킷 142 x
스케일링된 비디오 스트림 용량 패킷 143 x
디스플레이 식별 패킷 144 x
교대 디스플레이 용량 패킷 145 x
레지스터 액세스 패킷 146 x x
진보된 그래픽 및 디스플레이 패킷
패킷명 패킷타입 순방향에서 유효 역방향에서 유효
비트 블록 전달 패킷 71 x
비트맵 영역 필 패킷 72 x
비트맵 패턴 필 패킷 73 x
판독 프레임 버퍼 패킷 74 x
알파-커서 이미지 용량 패킷 133 x
알파-커서 전달 맵 오프셋 패킷 134 x
알파-커서 이미지 오프셋 패킷 135 x
알파-커서 비디오 스트림 패킷 17 x
스케일링된 비디오 스트림 용량 패킷 143 x
스케일링된 비디오 스트림 셋업 패킷 136 x
스케일링된 비디오 스트림 확인 응답 패킷 137 x
스케일링된 비디오 스트림 패킷 18 x
이 텍스트 내에 다른 설명으로부터 명백한 것은 역 캡슐화 패킷, 클라이언트 용량 패킷과 클라이언트 요청과 상태 패킷이 또한 각각 매우 중요한 것으로 고려되거나 외부 모드 동작을 위하여 통신 인터페이스의 많은 실시형태에서 요구되는 반면, 내부 모드 동작에 대하여는 옵션적일 수 있거나, 더욱 옵션적으로 고려되는 경향이 있다. 이것은 통신 패킷의 감소된 세트 그리고 제어와 타이밍의 상응한 간단화로 매우 고속에 데이터의 통신을 허용한 MDD 인터페이스 프로토콜의 또 다른 타입을 생성시킨다.
패킷이 공통 기본 구조 또는 패킷 길이 필드, 패킷 타입 필드, 데이터 바이트 및 CRC 필드를 포함하는 최소 필드의 전체적인 세트를 패킷 길이 필드를 포함하도록 하며, 도 7에서 나타낸다. 도 7에 도시된 바와 같이, 패킷 길이 필드가, 패킷 길이 필드와 CRC 필드 사이에 패킷 또는 그것의 길이에 비트의 총 개수를 상세화하는 멀티-비트 또는 바이트 값의 형태로, 정보를 포함한다. 일 실시형태에, 패킷 길이 필드가 16-비트 또는 2-바이트 폭의 무부호 정수를 포함하고, 패킷 길이를 상세화한다. 패킷 타입 필드는 패킷 내에 포함되는 정보의 타입으로 지정한 또 다른 멀티-비트 필드이다. 예시적인 실시형태에, 이것이 16-비트 또는 2바이트 폭의 값인 16-비트 무부호 정수의 형태이고 디스플레이 용량, 핸드오프, 비디오 또는 오디오 스트림, 상태 등과 같은 데이터 형식을 상세화한다.
세번째 필드는 전달되거나 그 패킷의 일부로 호스트와 클라이언트 디바이스 사이에 보내진 비트 또는 데이터를 포함한 데이터 바이트 필드이다. 데이터의 포맷이 전달되어질 데이터의 특정 타입에 따라서 각각의 패킷 타입을 위해 명확하게 규정되고, 그 자체의 포맷 요구사항인 일련의 추가적인 필드 내로 분리될 수 있다. 즉, 각각의 패킷 타입은 이 부분 또는 필드를 위한 한정된 포맷을 가질 것이다. 최종 필드가 데이터 바이트, 패킷 타입, 및 패킷 길이 필드 위에서 계산된 16-비트 순환 중복 검사의 결과를 포함한 CRC 필드이며, 패킷에 정보의 일체성을 확인하기 위해 이용한다. 즉, CRC 필드 자체를 제외하고 전체 패킷 위에서 계산된다. 클라이언트는 일반적으로 검출된 CRC 에러의 총 개수 값을 유지하고, 클라이언트 요청에 있는 호스트와 상태 패킷 (아래에서 추가적으로 도시됨) 로 돌아가서 이 카운트를 리포트한다.
일반적으로, 이러한 필드 폭과 조직이 짝수바이트 경계에 배열된 2-바이트 필드 그리고 4-바이트 경계부에 배열된 4-바이트 필드를 유지하기 위해 설계된다. 이것은 패킷 구조가 대부분의 또는 일반적으로 이용된 프로세서 또는 제어 회로를 위한 마주치게 된 데이터 타입 정렬 법칙을 위반하는 것 없이 호스트와 클라이언트의 메인 메모리 공간에 용이하게 조립되고 호스트와 클라이언트에 관련되도록 허용한다.
패킷의 전달 동안에, 필드가 첫번째 최소 유효 비트 (LSB) 에서 시작하고 최종적으로 전송된 최대 유효 비트 (MSB) 로 송신된다. 2 이상의 바이트 길이인 파라미터가 우선 최소 유효 바이트를 사용하여 송신되고, LSB 가 전송되는 더 짧은 파라미터에 대하여 사용되는 것과 같이, 8 비트 더 큰 파라미터에 대하여 사용된 동일한 비트 송신 패턴을 초래한다. 각 패킷의 데이터 필드는 첫번째로 송신되어 나열된 제 1 필드와 최종적으로 송신되어 서술된 최종 필드를 가지고, 아래의 연속적인 섹션으로 규정되도록 일반적으로 송신된다. MDDI_Data0 신호 경로에 대한 데이터가 타입-1, 타입-2, 타입-3, 또는 타입-4 중 하나로 인터페이스에 대하여 송신된 바이트의 비트 "0" 으로 배열된다.
디스플레이를 위해 데이터를 처리할 때, 픽셀의 어레이에 대한 데이터가 전자 공학 기술에 전통적으로 행해진 것처럼 우선 행, 그리고 나서 열로 송신된다. 즉, 비트맵에서 동일한 행에 보여진 모든 픽셀은 우선 송신된 최 좌측 픽셀과 최 후에 송신된 최우측 픽셀의 순서로 송신된다. 행의 최우측 픽셀이 송신된 후에 시퀀스에서 다음 픽셀이 다음 행의 최좌측 픽셀이다. 픽셀의 행는 다른 구성이 요구에 따라 수용될 수 있을 지라도, 대부분의 디스플레이에 대하여 상부에서 바닥의 순서로 일반적으로 송신된다. 게다가 비트맵을 핸들링함에 있어, 여기에서 따르게 된 종래의 접근방법이 위치 또는 오프셋 "0.0" 으로 비트맵의 좌측 상부 모서리에 분류하는 것에 의해 기준점을 정의한다. 비트맵에서 위치를 규정하거나 결정하기 위해 사용된 X와 Y좌표는 각각 비트맵의 좌측과 바닥에 접근한 것처럼 값을 증가시킨다. 제 1 행 및 제 1 열 (이미지의 좌측 상부 코너) 은 인덱스 값 0 으로 개시한다. 디스플레이 사용자에 의해 보여지는, X 좌표의 크기는 이미지의 우측을 향하여 증가하고 Y 축 크기는 이미지의 바닥을 향해서 증가한다.
디스플레이 윈도우는 비트맵의 가시부이고, 비트맵에서 픽셀부는 물리적 디스플레이 매체에 대하여 사용자에 의해 보여질 수 있다. 그것은 디스플레이 윈도우와 비트맵이 동일한 사이즈인 경우이다. 디스플레이 윈도우의 상부 좌측 코너는 항상 비트맵 픽셀 위치 0,0 을 디스플레이한다. 디스플레이 윈도우의 폭은 비트맵의 X 축에 해당하고, 본 실시형태의 디스플레이 윈도우의 폭은 해당 비트맵의 폭보다 적거나 동일할 것이다. 윈도우의 높이는 비트맵의 Y 축에 해당하고, 본 실시형태의 디스플레이 윈도우의 높이는 해당 비트맵의 높이보다 적거나 동일할 것이다. 디스플레이 윈도우 자체는 비트맵의 가시부로서만 규정되기 때문에 프로토콜로서는 어드레스가능하지 않다.
비트맵과 디스플레이 윈도우 사이의 관계는 컴퓨터, 전자 기술, 인터넷 통신 및 다른 전자관련 기술분야에 잘 알려져 있다. 따라서, 이러한 원리의 추가적인 설명 또는 예시를 여기에서 더 이상 제공하지 않는다.
C. 패킷 정의
1. 서브-프레임 헤더 패킷
서브-프레임 헤더 패킷은 모든 서브-프레임의 첫번째 패킷이고, 도 8에서 나타낸 바와 같이 기본 구조를 가진다. 서브-프레임 헤더 패킷은 호스트-클라이언트 동기화를 위해 사용되고, 모든 클라이언트가 이 패킷을 수신하여 해석하는 동안, 모든 호스트가 이 패킷을 발생시킬 수 있다. 도 8 의 일 실시형태에서 볼 수 있는 바와 같이, 이러한 타입의 패킷이 일반적으로, 패킷 길이, 패킷 타입, 고유 워드, 예약 1 (Reserved 1), 서브-프레임 길이, 프로토콜 버전, 서브-프레임 카운트, 그리고 미디어 프레임 카운트 필드를 갖도록 이 순서로 구조화된다. 일 실시형태에서, 이러한 타입의 패킷이 타입 15359 (Ox3bff 16진수) 패킷으로서 일반적으로 식별되고 패킷 길이 필드를 포함하지 않고, 20 바이트의 미리 선택한 고정 길이를 이용된다.
패킷 타입 영역과 고유 워드 필드는 각각 2 바이트 값 (16-비트 무부호 정수) 을 이용한다. 이러한 2 개 필드의 4-바이트 조합 모두는 양호한 자동 상관으로 32-비트 고유 워드를 형성한다. 일 실시형태에서, 실제 고유 워드가 Ox005a3bff 인, 더 낮은 16비트가 패킷 타입으로서 첫째로 송신되고, 최대 유효 16비트가 후에 전송된다.
예약 1 필드는 장래 사용을 위한 예약 공간인 2 바이트를 포함하고, 0 으로 설정된 비트를 가진 이 시점에서 일반적으로 형성된다. 이 필드의 목적은 후속 2 바이트 필드가 16-비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드가 32-비트 워드 어드레스에 정렬하도록 한다. 최소 유효 바이트는 호스트가 다중 클라이언트 디바이스를 다룰 수 있는지 여부를 나타내기 위해 보류된다. 이러한 바이트에 대한 0 값은 호스트가 단일의 클라이언트 디바이스로만 동작할 수 있다는 것을 나타내기 위해 보류된다.
서브-프레임 길이 영역은 서브-프레임당 바이트 개수를 상세화하는 4 바이트의 정보 또는 값을 포함한다. 일 실시형태에서, 이 필드의 길이는 링크가 유휴 상태로 잠기기 전에 단지 하나의 서브-프레임이 호스트에 의해 송신될 것이라는 것을 나타내기 위해 0 과 동일하게 설정될 것이다. 이 필드에 있는 값이 일 서브-프레임에서 다음 서브-프레임으로 변이될 때 "온 더 플라이" 로 동적으로 변환될 수 있다. 이 용량은 등시성 데이터 스트림을 돌보기 위한 동기 펄스 신호에 작은 타이밍 조정을 만들기 위해 유용하다. 서브-프레임 헤더 패킷의 CRC가 유효하지 않으면, 링크 제어기는 현재 서브-프레임의 길이를 추정하기 위해 이전 최종 성공 서브-프레임 헤더 패킷의 서브-프레임 길이를 이용하여야 한다.
프로토콜 버전 필드는 호스트에 의해 이용된 프로토콜 버전을 상세화하는 2 바이트를 포함한다. 프로토콜 버전 필드는 사용된 프로토콜의 제 1 버전 또는 현재의 버전을 상세화하기 위해 "0" 으로 설정될 수도 있다. 이 값은 새로운 버전이 생성된 것처럼 시간을 변경할 것이고, 몇몇 버전 필드에 대해서는 이미 '1' 값으로 업그레이드되고 있다. 버전 값은 알려진 바와 같이, MDDI 와 같은 인터페이스를 커버하는 승인된 표준 문서에 대한 현재의 버전 넘버를 아마도 따르거나 일반적으로 따를 것이다.
서브-프레임 카운트 필드는 미디어 프레임의 시작 이후로 송신되었던 서브프레임의 수를 가리키는 시리얼 넘버를 상세화하는 2 바이트를 포함한다. 미디어 프레임의 첫번째 서브-프레임은 영의 서브-프레임 카운트를 가진다. 미디어 프레임의 최종 서브-프레임은 n 이 매체-프레임당 서브프레임의 수인 곳에서, n-1의 값을 가진다. 서브-프레임 카운트 필드의 값은, 제로 카운트를 갖는 미디어-프레임의 첫번째 서브 프레임을 제외하고는, 이전 서브-프레임 패킷에서 전송된 서브-프레임 카운트에 1 을 더한 값과 동일하다. 서브-프레임 길이가 영 (비주기 서브-프레임을 가리킴) 과 같이 설정된다면, 서브-프레임 카운트 또한 0 으로 설정되어야만 한다.
미디어 프레임 카운트 필드는 전달되어진 현재의 미디어 항목 또는 데이터의 개시 이후로 송신되어지는 미디어 프레임의 수를 가리키는 시리얼 넘버를 상세화하는 4 바이트 (32-비트 무부호 정수) 를 포함한다. 첫번째 미디어 항목의 미디어-프레임이 0 인 미디어 프레임 카운트를 가진다. 미디어 프레임 카운트는 각각의 미디어 프레임의 첫번째 서브-프레임에 앞서 증가시키고 최대 미디어 프레임 카운트 (예를 들어, 미디어 프레임 번호 232-1 = 4,294,967,295) 가 이용된 후 0 으로 돌아가서 랩핑한다. 미디어 프레임 카운트 값은 종단 애플리케이션의 요구에 일치시키기 위해 호스트에 의해 일반적으로 언제든지 재설정할 수도 있다.
2. 필러 패킷
필러 패킷은, 순방향 또는 역방향 링크 둘 중 하나를 통해 송신될 이용가능한 다른 정보가 없을 경우, 클라이언트 디바이스로 또는 클라이언트 디바이스로부터 전달되는 패킷이다. 필러 패킷은, 요구될 때 다른 패킷을 송신하는데 있어 최소의 신축성을 허용하기 위해 최소 길이를 갖도록 권고한다. 서브-프레임 또는 역방향 링크 캡슐화 패킷 (이하 도시) 의 매우 끝에서, 링크 제어기는, 패킷 무결성을 유지하도록 나머지 공간을 채우기 위해 필러 패킷의 사이즈를 설정한다. 필러 패킷은, 호스트 또는 클라이언트가 송신 또는 변경할 정보를 갖지 않을 경우, 링크 상의 시간을 유지시키는데 유용하다. 모든 호스트 및 클라이언트는 인터페이스의 효율적으로 이용하게 하기 위해 이 패킷을 송신 및 수신할 필요가 있다.
필러 패킷의 포맷 및 컨텐츠의 예시적인 실시형태가 도 9 에 도시된다. 도 9 에 도시된 바와 같이, 패킷의 이 타입은 패킷 길이, 패킷 타입, 필러 바이트 및 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 패킷의 이 타입은 일반적으로, 2-바이트 타입 필드에 나타내진 타입 0 으로서 식별된다. 필러 바이트 필드의 비트 또는 바이트는, 필러 패킷을 원하는 길이가 되도록 모든 0 비트 값의 가변수 (variable number) 를 포함한다. 최소의 필러 패킷은 이 필드에서의 바이트를 포함하지 않는다. 즉, 패킷은 오직, 패킷 길이, 패킷 타입 및 CRC 로 구성된다. CRC 값은 일부 다른 패킷 타입에서 제외될 수도 있는 패킷 길이를 포함하는 패킷의 모든 바이트에 대하여 결정된다.
3. 비디오 스트림 패킷
통상, 디스플레이 디바이스의 직사각형 영역을 업데이트하기 위해 비디오 스트림 패킷은 비디오 데이터를 운반한다. 이 영역의 사이즈는 단일 픽셀만큼 작거나 전체 디스플레이 만큼 클 수도 있다. 스트림을 디스플레이하도록 요구된 모든 콘텍스트 (context) 가 비디오 스트림 패킷내에 포함되기 때문에, 시스템 자원에 의해 제한된, 동시 디스플레이되는 무제한 수의 스트림일 수도 있다. 비디오 스트림 패킷 (비디오 데이터 포맷 디스크립터) 의 일 실시형태의 포맷은 도 10 에 도시된다. 도 10 에 도시된 바와 같이, 일 실시형태에서, 패킷의 이 타입은 패킷 길이 (2 바이트), 패킷 타입, b클라이언트ID, 비디오 데이터 디스크립터, 픽셀 디스플레이 속성, X 좌측 에지, Y 상부 에지, X 우측 에지, Y 하부 에지, X 와 Y 시작, 픽셀 카운트, 파라미터 CRC, 픽셀 데이터 및 픽셀 데이터 CRC 필드를 갖도록 구성된다. 패킷의 이 타입은 일반적으로, 2 바이트-타입 필드에 나타내는 타입 16 으로서 식별된다. 일 실시형태에서, 클라이언트는, RGB, 단색, 및 클라이언트 용량 패킷의 Y Cr Cb 용량 필드를 이용하여 비디오 스트림 패킷을 수신하기 위한 능력을 나타낸다.
일 실시형태에서, b클라이언트ID 필드는 클라이언트ID 를 위해 지정되는 정보의 2 바이트를 포함한다. 이것은 새롭게 개발된 통신 프로토콜이기 때문에, 실제 클라이언트 ID 는 아직 공지되지 않거나 충분히 통신가능하지 않다. 따라서, 당업자에게 명백한 것처럼, ID 값이 삽입되거나 이용될 시간에, 이러한 ID 값이 공지될 때까지, 일반적으로, 이 필드의 비트들은 0 으로 설정된다. 동일한 프로세스가 이하 설명할 클라이언트 ID 필드에 대해서 일반적으로 유효할 것이다.
상술된 공통 프레임 컨셉은 오디오 버퍼 사이즈를 최소화하고 지연을 감소시키기 위한 효과적인 방법이다. 그러나, 비디오 데이터에 대하여, 미디어 프레임내의 다중 비디오 스트림 패킷에 걸쳐 하나의 비디오 프레임의 픽셀을 스프레딩할 필요가 있을 수도 있다. 단일 비디오 스트림 패킷의 픽셀들은 디스플레이 상의 완전한 직사각형 윈도우에 정확하게 대응하지 않을 수도 있다. 초당 30 프레임의 예시적인 비디오 프레임 레이트에 대하여, 미디어-프레임당 10 서브-프레임을 귀착하여, 초당 300 서브-프레임이 존재한다. 각각의 프레임에 픽셀의 480 행 (row) 가 존재하는 경우, 각각의 서브-프레임의 각각의 비디오 스트림 패킷은 픽셀의 48 행을 포함한다. 다른 상황에서, 비디오 스트림 패킷은 정수개의 픽셀의 행를 포함하지 않을 수도 있다. 미디어-프레임당 서브-프레임의 수가 비디오 프레임당 행 (또는 비디오 라인으로도 알려짐) 의 수로 고르게 나눠지지 않는 경우, 이것은 다른 비디오 프레임 사이즈에 대하여 정확하다. 효율적인 동작을 위하여, 일반적으로 각각의 비디오 스트림 패킷은, 정수개의 픽셀의 행를 포함하지 않을지라도, 정수개의 픽셀을 포함해야 한다. 픽셀이 각각, 하나 이상의 바이트이거나, 픽셀이 도 12 에 도시된 바와 같이, 패킷 포맷에 있는 경우, 이것은 중요하다.
상술된 바와 같이, 예시적인 비디오 데이터 디스크립터 필드의 동작을 실현하기 위해 이용된 포맷 및 컨텐츠는 도 11a 내지 도 11e 에 도시된다. 도 11a 내지 도 11d 에서, 비디오 데이터 포맷 디스크립터 필드는 현재의 패킷의 현재의 스트림에 픽셀 데이터의 각각의 픽셀의 포맷을 상세화하는 16-비트 무부호 정수의 형태로 2 바이트를 포함한다. 상이한 비디오 스트림 패킷이 상이한 픽셀 데이터 포맷을 이용하는 것이 가능하며, 즉, 비디오 데이터 포맷 디스크립터의 상이한 값을 이용할 수도 있고, 유사하게, 스트림 (디스플레이 영역) 은 활동중에 그것의 데이터 포맷을 변경시킬 수도 있다. 픽셀 데이터 포맷은 클라이언트 용량 패킷에서 정의된 바와 같이 클라이언트에 대한 하나 이상의 유효한 포맷에 응한다. 비디오 데이터 포맷 디스크립터는, 일정한 포맷이 특정한 비디오 스트림의 수명동안 계속 이용되는 것을 의미하는 것이 아니라 현재의 패킷만을 위한 픽셀 포맷을 정의한다.
도 11a 내지 도 11d 는 비디오 데이터 포맷 디스크립터가 코딩되는 방법을 도시한 것이다. 이들 도면 및 이 실시형태에서 이용되는 바와 같이, 비트 [15:13] 가 도 11a 에 도시된 바와 같이, '000'인 경우, 픽셀당 비트 수가 비디오 데이터 포맷 디스크립터 워드의 비트 0 내지 3 에 의해 정의되는 단색 픽셀의 배열로 비디오 데이터가 구성된다. 일반적으로, 비트 4 내지 11 은 장래의 사용 또는 응용을 위해 예약되고, 이 상황에서는 0 으로 설정된다. 그 대신에, 비트 [15:13] 가, 도 11b 에 도시된 바와 같이, '001' 값인 경우, 각각 컬러 맵 (팔레트) 을 통하여 컬러를 지정하는 컬러 픽셀의 배열로 비디오 데이터는 구성된다. 이 상황에서, 비디오 데이터 포맷 디스크립터 워드의 비트 0 내지 5 는 비트당 픽셀 수를 정의하고, 비트 6 내지 11 은 일반적으로, 장래의 사용 또는 응용을 위해 예약되며 0 으로 설정된다. 비트 [15:13] 가 대신, 도 11c 에 도시된 바와 같이, '010' 인 경우, 적색의 픽셀당 비트 개수가 비트 11 내지 8 에 의해 한정되고, 녹색의 픽셀당 비트 개수가 비트 7 내지 4 에 의해 한정되며, 청색의 픽셀당 비트 개수가 비트 3 내지 0 에 의해 한정되는 컬러 픽셀의 배열로 비디오 데이터가 구성된다. 이 상황에서, 각각의 픽셀의 비트의 총 수는 적색, 녹색 및 청색을 위해 이용된 비트 수의 합이다.
그러나, 비트 [15:13] 가 대신, 도 11d 에 도시된 바와 같이, '011' 값 또는 스트링인 경우, 휘도 (Y) 의 픽셀 당 비트 수가 비트 11 내지 8 에 의해 규정되고, Cb 성분의 비트 수가 비트 7 내지 4 에 의해 규정되며, Cr 성분의 비트 수가 비트 3 내지 0 에 의해 규정되는, 휘도 및 크로미넌스 정보를 갖는 4:2:2 YCbCr 포맷의 비디오 데이터의 배열로 비디오 데이터가 구성된다. 각각의 픽셀의 총 비트 수는 적색, 녹색 및 청색을 위해 이용된 비트 수의 합이다. Cb 및 Cr 성분은 Y 의 레이트의 반으로 송신된다. 또한, 이 패킷의 픽셀 데이터 부분의 비디오 샘플은 다음과 같이, Cbn, Yn, Crn, Yn+1, Cbn+2, Yn+2, Crn+2, Yn+3 으로 구성되며, Cbn 및 Crn 은 Yn 및 Yn+1 과 연관되며, Cbn+2 및 Crn+2 는 Yn+2 및 Yn+3 과 연관된다.
Yn, Yn+1, Yn+2 및 Yn+3 은 좌측으로부터 우측으로의 단일 행의 4 개의 연속적인 픽셀의 휘도 값이다. 비디오 스트림 패킷에 의해 참조된 윈도우의 일 행 (X 우측 에지 - X 좌측 에지 +1) 에 홀수의 픽셀이 존재하는 경우, 각각의 행의 마지막 픽셀에 대응하는 Y 값은 다음의 행의 제 1 픽셀의 Cb 값에 의해 따라가게 되고, Cr 값은 행의 마지막 픽셀을 위해 송신되지 않는다. Y Cb Cr 포맷을 이용하는 윈도우가 픽셀의 짝수인 폭을 갖도록 권고된다. 일 패킷의 픽셀 데이터는 짝수의 픽셀을 포함한다. 픽셀 데이터의 마지막 픽셀이 비디오 스트림 패킷 헤더에 특정된 윈도우의 일 행의 마지막 픽셀에 대응하는 경우, 즉, 픽셀 데이터의 마지막 픽셀의 X 위치가 X 우측 에지인 경우에 홀수 또는 짝수의 픽셀을 포함할 수도 있다.
비트 [15:13] 가 대신, '100' 값인 경우, 픽셀당 비트 수가 비디오 데이터 포맷 디스크립터 워드의 비트 3 내지 0 에 의해 규정되는 베이어 (bayer) 픽셀의 배열로 비디오 데이터가 구성된다. 픽셀 그룹 패턴은 도 11e 에 도시된 바와 같이 비트 5 및 비트 4 에 의해 규정된다. 픽셀 데이터의 순서는 수평 또는 수직일 수도 있고, 행 또는 열 (column) 의 픽셀은 순방향 또는 역방향 순서로 송신될 수도 있으며, 비트 8 내지 비트 6 로 규정된다. 비트 11 내지 비트 9 는 0 으로 설정된다. 베이어 (Bayer) 포맷의 픽셀 그룹 중 4 개 픽셀 그룹은 몇몇 디스플레이 기술에서 종종 단독 필셀이라 하는 것과 유사하다. 그러나, 베이어 포맷의 하나의 픽셀은 픽셀 그룹 모자이크 패턴의 4 개의 컬러 픽셀 중 단지 하나이다.
도면에 도시된 모든 5 개의 포맷에 대하여, "P" 로서 지정된 비트 12 는 픽셀 데이터 샘플이 패킹되는지 여부, 또는 바이트-정렬 픽셀 데이터를 특정한다. 이 필드의 '0' 값은, 픽셀 데이터 필드의 각각의 픽셀이 MDD 인터페이스 바이트 경계로 정렬된 바이트인 것을 나타낸다. '1' 의 값은, 픽셀 데이터의 각각의 픽셀 및 각각의 픽셀 내의 각각의 컬러가 사전 픽셀 또는 비사용 비트를 갖지 않는 픽셀내의 컬러에 대하여 패킹되는 것을 나타낸다. 바이트 정렬과 패킹된 픽셀 데이터 포맷의 차이점이 도 12 에 보다 상세하게 도시되는데, 여기에서 바이트-정렬된 데이터는 그렇지 않은 패킹된 픽셀 포맷과 반대로 데이터 서브-프레임의 미사용 부분을 남길 수도 있다.
특정한 디스플레이 윈도우에 대한 미디어 프레임의 제 1 비디오 스트림 패킷의 제 1 픽셀은 X 좌측 에지 및 Y 상부 에지에 의해 규정된 스트림 윈도우의 상부 좌측 코너에 들어가고, 수신된 다음의 픽셀은 동일한 행의 다음의 픽셀 위치에 배치된다. 미디어 프레임의 이 제 1 패킷에 있어서, 통상적으로, X 개시 값은 X 좌측 에지이고, Y 개시 값은 통상적으로, Y 상부 에지이다. 동일한 스크린 윈도우에 대응하는 다음의 패킷에 있어서, 통상적으로, X 및 Y 개시 값은, 이전의 서브-프레임에 송신되는 비디오 스트림 패킷으로 송신된 마지막 패킷 이후에, 보통 따라오는 스크린 윈도우의 픽셀 위치로 설정된다.
4. 오디오 스트림 패킷
오디오 스트림 패킷은 클라이언트의 오디오 시스템을 통해, 또는 자립형 오디오 프리젠테이션 디바이스를 통해 플레이될 오디오 데이터를 운반한다. 상이한 오디오 데이터 스트림은 사운드 시스템의 분리된 오디오 채널, 예를 들어, 이용될 오디오 시스템의 타입에 따라, 좌측-전면, 우측-전면, 중심, 좌측-후면, 및 우측-후면에 대하여 할당될 수도 있다. 오디오 채널의 풀 컴플리먼트는 향상된 공간 음향 신호 프로세싱을 포함하는 헤드셋에 대하여 제공된다. 클라이언트는 오디오 채널 용량을 이용하는 오디오 스트림 패킷 및 디스플레이 용량 패킷의 오디오 샘플 레이트 필드를 수신하기 위한 능력을 나타낸다. 오디오 스트림 패킷의 포맷은 도 13 에 도시된다.
도 13 에 도시된 바와 같이, 일 실시형태에서 이러한 타입의 패킷은 패킷 길이, 패킷 타입, b클라이언트 ID, 오디오 채널 ID, 예약 1, 오디오 샘플 카운트, 샘플 및 패킹 당 비트, 오디오 샘플 레이트, 파라미터 CRC, 디지털 오디오 데이터 및 오디오 데이터 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 패킷의 이 타입은 통상적으로, 타입 32 패킷으로서 식별된다.
b클라이언트 ID 필드는 이전에 이용된 클라이언트 ID 를 위해 예약된 2 바이트의 정보를 포함한다. 예약 1 필드는 장래의 사용을 위해 예약된 2 바이트를 포함하고, 통상적으로, 0 으로 설정된 모든 비트를 갖는 이 포인트에 구성된다.
샘플 및 패킷당 비트 필드는 오디오 데이터의 패킹 포맷을 특정하는 8-비트 무부호 정수의 형태로 1 바이트를 포함한다. 통상적으로 이용되는 포맷은 비트 4 내지 비트 0 에 대하여 PCM 오디오 샘플당 비트 수를 규정하기 위한 것이다. 또한, 비트 5 는, 디지털 오디오 데이터 샘플이 패킹되는지 여부를 특정한다. 패킹된 샘플들과 바이트-정렬 오디오 샘플들 사이의 차이는 도 14 에 도시되며, 여기에서 10-비트 샘플을 사용하였다. '0' 값은, 디지털 오디오 데이터 필드의 각각의 PCM 오디오 샘플이 MDDI 인터페이스 바이트 경계로 정렬된 바이트인 것을 나타내고, '1' 의 값은, 각각의 연속하는 PCM 오디오 샘플이 이전의 오디오 샘플에 대하여 패킹되는 것을 나타낸다. 통상적으로, 이 비트는, 비트 4 내지 비트 0 (PCM 오디오 샘플 당 비트 수) 에 규정된 값이 8 의 배수가 아닌 경우에만 효과적이다. 비트 7 내지 비트 6 은 장래의 사용을 위해 예약되고 일반적으로, 0 의 값으로 설정된다.
5. 예약 스트림 패킷
일 실시형태에서, 1 내지 15, 18 내지 31, 및 33 내지 55 는 직면하는 다양한 애플리케이션에 대해 소망하는 경우, 패킷 프로토콜의 장래의 버전 또는 변동에 이용하기 위해 규정될 스트림 패킷을 위해 예약된다. 또한, 이것은 다른 기술과 비교되는 기술 및 시스템 구성을 변경시킴에도 불구하고 보다 신축성있고 유용한 MDD 인터페이스를 생성시키는 부분이다.
6. 사용자-규정 스트림 패킷
타입 56 내지 63 으로 알려져 있는 8 개의 데이터 스트림 타입은, MDDI 링크와 함께 이용하기 위한 장비 제조에 의해 규정될 수도 있는 독점의 응용에 이용하기 위해 예약된다. 이들은 사용자-규정 스트림 패킷으로 알려져 있다. 이러한 패킷은 임의의 목적을 위해 이용될 수도 있지만, 호스트 및 클라이언트는, 이러한 이용의 결과가 매우 잘 이해되거나 공지된 상황에서 이러한 패킷만을 이용할 수 있다. 스트림 파라미터 및 이들 패킷 타입에 대한 데이터의 특정한 정의는 이러한 패킷 타입을 구현하거나 그들의 이용을 탐색하는 특정한 장비 제조자 또는 인터페이스 설계자에게 위임된다. 사용자-규정 스트림 패킷의 일부 예시적인 이용은 테스트 파라미터 및 테스트 결과, 팩토리 교정 데이터, 및 독점의 특별한 이용 데이터를 전달하는 것이다. 일 실시형태에서 사용된 사용자-규정 스트림 패킷의 포맷은 도 15 에 도시된다. 도 15 에 도시된 바와 같이, 패킷의 이 타입은 패킷 길이 (2 바이트), 패킷 타입, b클라이언트 ID 넘버, 스트림 파라미터, 파라미터 CRC, 스트림 데이터 및 스트림 데이터 CRC 필드를 갖도록 구성된다.
7. 컬러 맵 패킷
컬러 맵 패킷은 클라이언트에게 컬러를 제공하기 위해 이용된 컬러 맵 참조 표의 컨텐츠를 특정한다. 일부 응용은 단일 패킷으로 송신될 수 있는 데이터의 양 보다 더 큰 컬러 맵을 요구할 수도 있다. 이런 경우에, 각각 하술되는 필드 길이 및 오프셋을 이용함으로써 컬러 맵의 상이한 서브 세트를 갖는 다중 컬러 맵 패킷이 전달될 수도 있다. 일 실시형태의 컬러 맵 패킷의 포맷은 도 16 에 도시된다. 도 16 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트 ID, 컬러 맵 항목 카운트, 컬러 맵 오프셋, 파라미터 CRC, 컬러 맵 데이터, 및 데이터 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 패킷의 이 타입은 일반적으로, 패킷 타입 필드 (2 바이트) 에서 특정된 타입 64 패킷 (비디오 데이터 포맷 및 컬러 맵 패킷) 으로서 식별된다. 클라이언트는 컬러 맵 사이즈를 이용하는 컬러 맵 패킷 및 클라이언트 용량 패킷의 컬러 맵 폭 필드를 수신하기 위한 능력을 나타낸다.
8. 역방향 링크 캡슐화 패킷
예시적인 실시형태에 있어서, 데이터는 역방향 링크 캡슐화 패킷을 이용하는 역방향으로 전달된다. 순방향 링크 패킷은 송신되고 MDDI 링크 동작 (전달 방향) 은 변경되거나 이 패킷의 중앙으로 회전하기 때문에, 패킷은 역방향으로 송신될 수 있다. 일 실시형태의 역방향 링크 캡슐화 패킷의 포맷은 도 17 에 도시된다. 도 17 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트 ID, 역방향 링크 플래그, 역방향 레이트 디바이저, 턴-어라운드 1 길이, 턴-어라운드 2 길이, 파라미터 CRC, 올 제로 1, 턴-어라운드 1, 역방향 데이터 패킷, 턴-어라운드 2 및 올 제로 필드를 갖도록 구성된다. 일 실시형태에서, 통상적으로 이러한 타입의 패킷은 타입 65 패킷으로서 식별된다. 외부 모드에 대하여, 모든 호스는 이 패킷을 생성시키고 데이터를 수신할 수 있어야 하며, 모든 클라이언트는 호스트에게 데이터를 송신하고 수신할 수 있어야 한다. 이 패킷의 구현은 내부 모드에 대하여서는 옵션적이지만, 역방향 링크 캡슐화 패킷은 호스트가 데이터를 클라이언트로부터 수신하는데 이용된다.
MDDI 링크 제어기는 역방향 링크 캡슐화 패킷을 송신하는 동안 특별한 방식으로 작동한다. MDD 인터페이스는 링크의 제어기로서 호스트에 의해 항상 구동되는 스트로브 신호 (strobe signal) 를 갖는다. 역방향 링크 캡슐화 패킷의 턴-어라운드 및 역방향 데이터 패킷 부분의 각각의 비트에 대하여 0을 송신하는 것처럼 호스트는 작동한다. 2번의 턴-어라운드 시간 및 역방향 데이터 패킷을 위해 할당된 시간 동안 각각의 비트 경계에서 호스트는 MDDI_스트로브 신호를 토글링한다. (이것은 올-제로 데이터를 송신하는 동일한 작동기이다.)
호스트는 턴-어라운드 1 에 의해 특정된 시간 주기 동안 자신의 MDDI 데이터 신호 라인 드라이버를 불능으로 만들고, 클라이언트는 턴-어라운드 2 필드에 의해 특정된 시간 주기 다음에 오는 드라이버 리-인에이블 필드 동안 자신의 라인 드라이버를 불능으로 만든다. 클라이언트는 턴-어라운드 길이 파라미터를 판독하고, 턴-어라운드 1 필드의 마지막 비트 직후에, 호스트쪽으로 데이터 신호를 구동한다. 즉, 클라이언트는 이하 및 다른 곳에서의 패킷 컨텐츠 설명에서 특정된 바와 같이 MDDI 스트로브의 일정한 상승 에지 상의 링크로 새로운 데이터를 클로킹한다. 클라이언트는, 패킷을 호스트에게 송신할 수 있는 시간의 길이를 알기 위해 패킷 길이 및 턴-어라운드 길이 파라미터를 이용한다. 클라이언트는 필러 패킷을 송신하거나 호스트에게 송신할 데이터가 없을 경우, 0 상태로 데이터 라인을 구동할 수도 있다. 데이터 라인이 0 으로 구동되는 경우, 호스트는 0 길이 (유효한 길이가 없음) 를 갖는 패킷으로서 이것을 해석하고, 호스트는 현재의 역방향 링크 캡슐화 패킷의 지속 기간 동안 클라이언트로부터 그 이상의 패킷을 허용하지 않는다.
호스트는 올 제로 1 필드 동안 로직-0 (logic-zero) 레벨로 MDDI_데이터 신호를 구동하며, 클라이언트는 턴 어라운드 2 필드의 개시 이전, 즉, 올 제로 2 필드 기간 동안, 하나 이상의 역방향 링크 클록에 대하여 로직-0 레벨로 MDDI 데이터 라인을 구동한다. 이것은 턴 어라운드 1 및 턴 어라운드 2 필드 시간 주기 동안, 데이터 라인을 결정론적인 상태 (deterministic state) 로 유지시킨다. 클라이언트가 송신할 패킷을 더 이상 갖지 않는 경우, 휴지 바이어스 레지스터 (다른 곳에서 설명됨) 가 역방향 데이터 패킷 필드의 나머지, 또는 16 순방향 링크 바이트 또는 그 이상의 지속 기간에 대하여 로직-0 레벨에서 데이터 라인을 유지시키기 때문에 그것들을 로직-0 레벨로 구동한 이후, 데이터 라인을 더 불능으로 만들 수도 있다.
일 실시형태에서, 클라이언트 요청의 역방향 링크 요청 필드 및 상태 패킷은, 클라이언트가 호스트에게 데이터를 되 송신하기 위해 역방향 링크 캡슐화 패킷에서 필요한 바이트의 수를 호스트에게 알려주기 위해 이용될 수도 있다. 호스트는 적어도 역방향 링크 캡슐화 패킷의 바이트 수를 할당함으로써 요청을 허가하려고 한다. 호스트는 서브-프레임에 하나 이상의 역방향 링크 캡슐화 패킷을 송신할 수도 있다. 디스플레이는 거의 모든 시간에 디스플레이 요청 및 상태 패킷을 송신할 수도 있고, 호스트는 하나의 서브-프레임에 요청된 바이트의 총 수로서 역방향 링크 요청 파라미터를 해석한다.
9. 클라이언트 용량 패킷
호스트는, 일반적으로 최적의 원하는 방식으로 호스트-대-클라이언트 링크를 구성하기 위하여 통신하는 클라이언트 (디스플레이) 의 용량을 알 필요가 있다. 디스플레이는, 순방향 링크 동기화가 획득된 이후에 클라이언트 용량 패킷을 호스트에게 송신하도록 권고한다. 역방향 링크 캡슐화 패킷의 역방향 링크 플래그를 이용하는 호스트에 의해 요청될 때 요청되는 이러한 패킷의 송신이 고려된다. 클라이언트 용량 패킷은 클라이언트의 용량을 호스트에게 알려주기 위해 이용된다. 외부 모드에 대하여, 모든 호스트는 이 패킷을 수신할 수 있어야 하고, 모든 클라이언트는 이 인터페이스 및 프로토콜을 완전히 이용하기 위해 이 패킷을 송신할 수 있어야 한다. 이러한 상황에서, 디스플레이, 키보드 또는 다른 입력/출력 디바이스와 같은 클라이언트의 용량이 이미, 단일 성분 또는 일부 타입의 유닛으로의 어셈블리 및 제조의 시간에 호스트에게 잘 규정되고 알려져 있기 때문에, 이 패킷의 구현은 내부 모드에 대하여서는 옵션이다.
일 실시형태의 클라이언트 용량 패킷의 포맷은 도 18 에 도시된다. 도 18 에 도시된 바와 같이, 이러한 실시형태에서 이 타입 패킷은, 패킷 길이, 패킷 타입, 예약 c클라이언트ID, 프로토콜 버전, 최소 프로토콜 버전, 데이터 레이트 용량, 인터페이스 타입 용량, 또 다른 디스플레이의 넘버, 예약 1, 비트맵 폭, 비트맵 높이, 디스플레이 윈도우 폭, 디스플레이 윈도우 높이를 갖도록 구성된다. 컬러맵 사이즈, 컬러맵 RGB 폭, RGB 용량, 단색 용량, 예약 2, Y Cr Cb 용량, 베이어 용량, 알파-커서 이미지 평면, 클라이언트 피처 용량, 최대 비디오 프레임 레이트, 최소 비디오 프레임 레이트, 최소 서브-프레임 레이트, 오디오 버퍼 깊이, 오디오 채널 용량, 오디오 샘플 레이트 용량, 오디오 샘플 해상도, Mic 오디오 샘플 해상도, Mic 샘플 레이트 용량, 키보드 데이터 포맷, 포인팅 디바이스 데이터 포맷, 컨텐츠 보호 타입, Mfr. 이름, 제품 코드, 예약 3, 시리얼 넘버, Mfr. 의 주 (week), Mfr. 의 년 (year) 및 CRC 필드가 있다. 예시적인 실시형태에서, 패킷의 이 타입은 통상적으로, 타입 66 패킷으로서 식별된다.
10. 키보드 데이터 패킷
키보드 데이터 패킷은 클라이언트 디바이스로부터 호스트로 키보드 데이터를 송신하기 위해 이용된다. 무선 (또는 유선) 키보드는, 제한하는 것은 아니지만, 헤드 장착 비디오 디스플레이/오디오 프리젠테이션 디바이스를 포함하는 오디오 디바이스 또는 다양한 디스플레이와 함께 이용될 수도 있다. 키보드 데이터 패킷은, 몇몇 공지된 키보드형 디바이스들 중 하나로부터 호스트로 수신된 키보드 데이터를 대신한다. 이 패킷은 또한, 데이터를 키보드로 송신하기 위한 순방향 링크로 이용될 수 있다. 클라이언트는 클라이언트 용량 패킷의 키보드 데이터 필드를 이용하는 키보드 데이터 패킷을 송신 및 수신하기 위한 능력을 나타낸다.
키보드 데이터 패킷의 포맷은 도 19 에 도시되며, 키보드로부터 또는 키보드를 위한 가변수의 정보의 바이트를 포함한다. 도 19 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, b클라이언트 ID, 키보드 데이터 포맷, 키보드 데이터 및 CRC 필드를 갖도록 구성된다. 여기서, 패킷의 이 타입은, 통상적으로, 타입 67 패킷으로서 식별된다.
b클라이언트 ID 는 전처럼, 예약 필드이고, CRC 는 패킷의 바이트의 전체에 걸쳐 수행된다. 키보드 데이터 포맷 필드는 키보드 데이터 포맷을 설명하는 2 바이트 값을 포함한다. 비트 0 내지 6 은 클라이언트 용량 패킷의 키보드 데이터 포맷 필드와 동일하다. 이 값은 127 이 아니다. 비트 15 내지 비트 7 는 장래의 사용을 위해 예약되고, 따라서, 현재 0으로 설정된다.
11. 포인팅 디바이스 데이터 패킷
포인팅 디바이스 데이터 패킷은, 무선 마우스 또는 다른 포인팅 디바이스로부터 위치 정보를 디스플레이로부터 호스트로 송신하는 방법, 구성 또는 수단으로서 이용된다. 또한, 데이터는 이 패킷을 이용하여 순방향 링크로 포인팅 디바이스로 송신할 수 있다. 포인팅 디바이스 데이터 패킷의 예시적인 포맷은 도 20 에 도시되며, 포인팅 디바이스로부터 또는 포인팅 디바이스를 위한 가변수의 정보의 바이트를 포함한다. 도 20 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, b클라이언트ID, 포인팅 디바이스 포맷, 포인팅 디바이스 데이터, 및 CRC 필드를 갖도록 구성된다. 예시적인 실시형태에서, 패킷의 이 타입은 통상적으로, 1-바이트 타입 필드의 타입 68 패킷으로서 식별된다.
12. 링크 셧다운 패킷
링크 셧다운 패킷은, MDDI 데이터 및 스트로브가 많아지고 저-전력 소비 "휴지" 상태로 들어가는 것을 나타내는 방법 또는 수단으로서, 호스트로부터 클라이언트에게 송신된다. 이 패킷은 링크를 막기 유용하고, 고정 비트맵이 이동 통신 디바이스로부터 디스플레이로 송신된 이후, 또는 당분간 호스트로부터 클라이언트로 전달하기 위한 정보가 더 이상 없을 경우에, 전력을 절약한다. 호스트가 다시 패킷을 송신하는 경우, 정상 동작이 다시 시작된다. 휴지 이후에 송신된 제 1 패킷은 서브-프레임 헤더 패킷이다. 일 실시형태에 대한 클라이언트 상태 패킷의 포맷은 도 21 에 도시된다. 도 21 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, CRC 필드 및 올 제로 필드를 갖도록 구성된다. 일 실시형태에서, 패킷의 이 타입은, 통상적으로, 1-바이트 타입 필드의 타입 69 패킷으로서 식별되고, 3 바이트의 미리-선택된 고정 길이를 이용한다.
저-전력 휴지 상태에서, MDDI_데이터 드라이버는 고-임피던스 상태에서 불능되고, MDDI_데이터 신호는 클라이언트에 의해 과도하게 구동될 수 있는 고-임피던스 바이어스 네트워크를 이용하는 로직-0 상태로 풀링된다. 인터페이스에 의해 이용된 스트로브 신호는 전력 소비를 최소화시키기 위해 휴지 상태에서 로직-0 레벨로 설정된다. 호스트나 클라이언트 둘 중 하나는, 어디서든 기술되는 바와 같이 MDDI 링크로 하여금 휴지 상태로부터 "웨이크업"시킬 수도 있으며, 이것은 본 발명의 이점 및 중요한 진보이다.
13. 클라이언트 요청 및 상태 패킷
호스트는, 통상적으로, 최적의 방식으로 호스트-대-클라이언트 링크를 구성할 수 있도록 클라이언트로부터 최소의 정보를 필요로 한다. 클라이언트는 하나의 클라이언트 요청 및 상태 패킷을 호스트 각각의 서브-프레임으로 송신하도록 권고한다. 클라이언트는 호스트에게 확실하게 전달되는 것을 보장하기 위해 역방향 링크 캡슐화 패킷의 제 1 패킷으로서 이 패킷을 전송해야 한다. 또한, 이러한 패킷의 전달은 역방향 링크 캡슐화 패킷의 역방향 링크 플래그를 이용하는 호스트에 의해 요청받는 경우에 달성된다. 클라이언트 요청 및 상태 패킷은 에러 및 상태를 호스트에 보고하는데 이용된다. 모든 호스트는 이러한 패킷을 수신할 수 있어야 하고, 모든 클라이언트는 적절하게 또는 옵션적으로 MDD 인터페이스 프로토콜을 사용하기 위하여 이러한 패킷을 전송할 수 있어야 한다.
클라이언트 요청 및 상태 패킷의 포맷은 도 22 에 도시된다. 도 22 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, c클라이언트ID, 역방향 링크 요청, 용량 변화, 그래픽 버그 (bug), CRC 에러 카운트 및 CRC 필드를 갖도록 구성된다. 일반적으로, 이러한 타입의 패킷은 1-바이트 타입 필드의 타입 70 패킷으로서 식별되고, 12 바이트의 미리-선택된 고정 길이를 통상적으로 이용한다.
역방향 링크 요청 필드는, 클라이언트가 데이터를 호스트에게 역송신하기 위해 역방향 링크 캡슐화 패킷에서 필요로 하는 바이트의 수를 호스트에게 알려주기 위해 이용될 수도 있다. 호스트는 적어도, 역방향 링크 캡슐화 패킷에서의 바이트의 수를 할당함으로써 요청을 허가한다. 호스트는 데이터를 수용하기 위하여 서브-프레임에 하나 이상의 역방향 링크 캡슐화 패킷을 송신할 수도 있다. 클라이언트는, 언제라도 클라이언트 요청 및 상태 패킷을 송신할 수도 있으며 호스트는 하나의 서브-프레임에서 요청된 바이트의 총 수대로 역방향 링크 요청 파라미터를 해석한다. 역방향 링크 데이터가 호스트로 되 송신되는 방식에 대한 상세한 예 및 부가적인 설명은 이하에 나타내진다.
14. 비트 블록 전달 패킷
비트 블록 전달 패킷은 임의의 방향으로 디스플레이 영역을 스크롤하기 위한 수단을 제공한다. 이 성능을 갖는 디스플레이는 클라이언트 용량 패킷의 디스플레이 피처 용량 표시자 필드의 비트 0 의 용량을 리포팅한다. 일 실시형태에 대한 비트 블록 전달 패킷의 포맷은 도 23 에 도시된다. 도 23 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트ID, 상부 좌측 X 값, 상부 좌측 Y 값, 윈도우 폭, 윈도우 높이, 윈도우 X 이동, 윈도우 Y 이동, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 71 패킷으로서 식별되고, 일 실시형태에서 15 바이트의 미리-선택된 고정 길이를 이용한다.
필드는 이동될 윈도우의 상부 좌측 코너의 좌표의 X 및 Y 값, 이동될 윈도우의 폭 및 높이, 및 윈도우가 수평 및 수직으로 각각 이동될 픽셀의 수를 특정하기 위해 이용된다. 각각, 마지막 2개의 필드에 대한 양의 값은 윈도우를 우측 및 아래로 이동시키고, 음의 값은 좌측 및 위로의 이동을 야기한다.
15. 비트맵 영역 필 패킷
비트맵 영역 필 패킷은 디스플레이의 영역을 단일 컬러로 쉽게 초기화시키기 위한 수단을 제공한다. 이 성능을 갖는 디스플레이는, 클라이언트 용량 패킷의 클라이언트 피처 용량 표시자 필드의 비트 1 의 성능을 리포팅한다. 비트맵 영역 필 패킷의 포맷에 대한 일 실시형태가 도 24 에 도시된다. 도 24 에 도시된 바와 같이, 이 경우에 이러한 타입의 패킷은, 패킷 길이, 패킷 타입, h클라이언트ID, 상부 좌측 X 값, 상부 좌측 Y 값, 윈도우 폭, 윈도우 높이, 데이터 포맷 디스크립터, 픽셀 영역 필 값, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 1-바이트 타입 필드의 타입 72 패킷으로서 식별되고, 17 바이트의 미리-선택된 고정 길이를 이용한다.
16. 비트맵 패턴 필 (fill) 패킷
비트맵 패턴 필 패킷은 디스플레이의 영역을 미리-선택된 패턴으로 쉽게 초기화시키기 위한 수단 또는 구성을 제공한다. 이 성능을 갖는 디스플레이는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 2 의 성능을 보고한다. 수평 또는 수직 패턴 오프셋이 논 (non)-제로가 아니라면, 필 패턴의 상부 좌측 코너는 필링 (filling) 될 윈도우의 상부 좌측 코너와 정렬된다. 필링될 윈도우가 필 패턴 보다 넓거나 높다면, 패턴은 윈도우를 필링하기 위해 여러번 수평 또는 수직으로 반복시킬 수도 있다. 마지막 반복 패턴의 우측 또는 하부가 필요에 따라 절단된다. 윈도우가 필 패턴보다 작다면, 필 패턴의 우측 또는 하부는 윈도에 적합하도록 절단될 수도 있다.
수평 패턴 오프셋이 논-제로라면, 윈도우의 좌측과 좌측에 수평 패턴 오프셋을 더한 것 사이의 픽셀들은 패턴의 최우측 픽셀들로 필링된다. 수평 패턴 오프셋은 패턴 폭보다 작을 것이다. 유사하게, 수직 패턴 오프셋이 논-제로라면, 윈도우의 상부측과 상부측에 수직 패턴 오프셋을 더한 것 사이의 픽셀들은 패턴의 최하부측 픽셀들로 필링된다. 수직 패턴 오프셋은 패턴 높이보다 작을 것이다.
비트맵 패턴 필 패킷의 포맷에 대한 일 실시형태가 도 25 에 도시된다. 도 25 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트ID, 상부 좌측 X 값, 상부 좌측 Y 값, 윈도우 폭, 윈도우 높이, 패턴 폭, 패턴 높이, 수평 패턴 오프셋, 수직 패턴 오프셋, 데이터 포맷 디스크립터, 패턴 CRC 패턴 픽셀 데이터, 및 픽셀 데이터 CRC 필드를 갖도록 구성된다. 몇몇 실시형태에서, 통상적으로 패킷의 이 타입은 1-바이트 타입 필드의 타입 73 패킷으로서 식별된다.
17. 통신 링크 데이터 채널 패킷
통신 링크 데이터 채널 패킷은, PDA 와 같은, 고-레벨 연산 성능을 갖는 클라이언트에 대하여, 셀 폰 또는 무선 데이터 포트 디바이스와 같은 무선 송수신기와 통신하기 위한 구성, 수단 또는 방법을 제공한다. 이 상황에서, MDDI 링크는 이동 디스플레이로 통신 디바이스와 연산 디바이스 사이에 편리한 고속 인터페이스로서 작동하며, 이 패킷은 디바이스를 위해 동작 시스템의 데이터 링크 층으로 데이터를 전달한다. 예를 들어, 웹 브라우저, 이메일 클라이언트, 또는 전체 PDA 가 이동 디스플레이로 내장될 수 있다면 이 패킷이 이용될 수 있다. 이 성능을 갖는 디스플레이는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 3 의 성능을 리포팅한다.
통신 링크 데이터 채널 패킷의 일 실시형태에 대한 포맷은 도 26 에 도시된다. 도 26 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h 클라이언트ID, 파라미터 CRC, 통신 링크 데이터, 및 통신 데이터 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 통상적으로 패킷의 이 타입은 타입 필드의 타입 74 패킷으로서 식별된다.
18. 인터페이스 타입 핸드오프 요청 패킷
인터페이스 타입 핸드오프 요청 패킷은, 호스트가, 현존 또는 현재의 모드로부터 타입-1 (시리얼), 타입-2 (2-비트 병렬), 타입-3 (4-비트 병렬), 또는 타입-4 (8-비트 병렬) 모드로의 클라이언트 또는 디스플레이 시프트를 요청할 수 있게 하는 수단, 방법 또는 구성을 제공한다. 호스트가 특정한 모드를 요청하기 이전에, 클라이언트가 클라이언트 용량 패킷의 디스플레이 피처 용량 표시자 필드의 비트 6 및 비트 7 을 조사함으로써 원하는 모드로 동작할 수 있다는 것을 확인한다. 인터페이스 타입 핸드오프 요청 패킷의 포맷에 대한 일 실시형태가 도 27 에 도시된다. 도 27 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, 인터페이스 타입, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 75 패킷으로서 식별되고, 4 바이트의 미리-선택된 고정 길이를 이용한다.
19. 인터페이스 타입 확인응답 패킷
인터페이스 타입 확인응답 패킷은 클라이언트에 의해 전송되고, 클라이언트가 인터페이스 타입 핸드오프 패킷의 수신을 확인할 수 있도록 하는 수단, 방법 또는 구성을 제공한다. 요청 모드, 타입-1 (시리얼), 타입-1 (2-비트 병렬), 타입-3 (4-비트 병렬), 또는 타입-4 (8-비트 병렬) 모드는 이 패킷의 파라미터로서 호스트에게 역반향된다. 인터페이스 타입 확인응답 패킷에 대한 일 실시형태의 포맷은 도 28 에 도시된다. 도 28 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, c클라이언트ID, 인터페이스 타입, 예약 1 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 76 패킷으로서 식별되고, 4 바이트의 미리-선택된 고정 길이를 이용한다.
20. 수행 타입 핸드오프 패킷
수행 타입 핸드오프 패킷은, 호스트가, 이 패킷에서 특정된 모드로 핸드오프 하도록 클라이언트에 명령하기 위한 수단, 구성 또는 방법이다. 이것은 인터페이스 타입 핸드오프 요청 패킷 및 인터페이스 타입 확인 응답 패킷에 의해 미리 요청되고 확인 응답되는 동일한 모드일 것이다. 호스트 및 클라이언트는, 이 패킷이 송신된 이후에, 모드에 따라 동의하도록 스위칭한다. 모드를 변경시키는 동안, 디스플레이어는 링크 동기화를 잃고 재-획득할 수도 있다. 수행 타입 핸드오프 패킷의 일 실시형태에 대한 포맷은 도 29 에 도시된다. 도 29 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, 예약 1 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 1-바이트 타입 필드의 타입 77 패킷으로서 식별되며, 4 바이트의 미리-선택된 고정 길이를 이용한다.
21. 순방향 오디오 채널 인에이블 패킷
이 패킷은, 호스트로 하여금, 클라이언트의 오디오 채널을 인에이블 또는 디스에이블하게 하는 구성, 방법 또는 수단을 제공한다. 이 성능은, 클라이언트 (예컨대, 디스플레이) 가 호스트에 의해 출력될 오디오가 없을 경우에 전력을 절약하기 위해 오디오 증폭기 또는 유사한 회로 소자를 전력 오프할 수 있기 때문에 유용하다. 이것은, 표시자로서 오디오 스트림의 존재 또는 부재를 암시적으로 간단히 이용하여 구현하기에 상당히 더 어렵다. 디스플레이 시스템이 파워 업되는 경우 디폴트 상태는 모든 오디오 채널이 불가능한 상태이다. 순방향 오디오 채널 인에이블 패킷의 일 실시형태에 대한 포맷은 도 30 에 도시된다. 도 30 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트ID, 오디오 채널 인에이블 마스크 및 CRC 필드를 갖도록 구성된다. 통상적으로, 이러한 타입의 패킷은 1-바이트 타입 필드의 타입 78 패킷으로서 식별되고, 4 바이트의 미리-선택된 고정 길이를 이용한다.
22. 역방향 오디오 샘플 레이트 패킷
이 패킷은 호스트로 하여금 역방향-링크 오디오 채널을 가능 또는 불가능하게 하고, 이 스트림의 오디오 데이터 샘플 레이트를 설정하게 만든다. 호스트는 클라이언트 용량 패킷에서 유효하다고 규정된 샘플 레이트를 선택한다. 호스트가 유효하지 않은 샘플 레이트를 선택하는 경우, 클라이언트는 오디오 스트림을 호스트에게 송신하지 않고, 적절한 에러, 에러값 또는 에러 신호가 클라이언트 에러 보고 패킷의 호스트에게 전송될 수도 있다. 호스트는 샘플 레이트를 255 로 설정함으로써 역방향-링크 오디오 스트림을 불가능하게 할 수도 있다. 클라이언트 시스템이 초기에 파워 업되거나 접속되는 경우 추정된 디폴트 상태는 불가능해진 역방향-링크 오디오 스트림을 갖는 상태이다. 역방향 오디오 샘플 레이트 패킷에 대한 일 실시형태의 포맷은 도 31 에 도시된다. 도 31 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트ID, 오디오 샘플 레이트, 예약 1 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 79 패킷으로서 식별되며, 4 바이트의 미리-선택된 고정 길이를 이용한다.
23. 디지털 컨텐츠 보호 오버헤드 패킷
이 패킷은, 호스트 및 클라이언트로 하여금 이용될 디지털 컨텐츠 보호 방법에 연관된 메시지를 교환시키도록 하는 구성, 방법 또는 수단을 제공한다. 현재, 컨텐츠 보호의 2개의 타입은 디지털 송신 컨텐츠 보호 (DTCP), 또는 고-대역폭 디지털 컨텐츠 보호 시스템 (HDCP) 을 더 대안의 보호 방식 구성을 위해 예약된 방으로 예상된다. 이용될 방법은 이 패킷의 컨텐츠 보호 타입 파라미터에 의해 특정된다. 디지털 컨텐츠 보호 오버헤드 패킷의 일 실시형태에 대한 포맷은 도 32 에 도시된다. 도 32 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, b클라이언트ID, 컨텐츠 보호 타입, 컨텐츠 보호 오버헤드 메시지, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 80 패킷으로서 식별된다.
24. 투명 컬러 인에이블 패킷
투명 컬러 인에이블 패킷은 어떠한 컬러가 디스플레이에서 투명한지를 특정하고, 이미지를 디스플레이하기 위한 투명 컬러의 이용을 인에이블 또는 디스에이블하는데 이용되는 구성, 방법 또는 수단이다. 이 성능을 갖는 디스플레이는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 4 의 성능을 보고한다. 투명 컬러에 대한 값을 갖는 픽셀이 비트맵으로 기록되게 되는 경우, 컬러는 이전 값으로부터 변경되지 않는다. 투명 컬러 인에이블 패킷의 포맷은 도 33 에 도시된다. 도 33 에 도시된 바와 같이, 일 실시형태에서 이러한 타입의 패킷은, 패킷 길이, 패킷 타입, 투명 컬러 인에이블, 예약 1, 알파-커서 식별자, 데이터 포맷 디스크립터, 투명 픽셀 값, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 이러한 타입의 패킷은 1-바이트 필드의 타입 81 패킷으로서 식별되고, 10 바이트의 미리-선택된 고정 길이를 이용한다.
25. 라운드 트립 지연 측정 패킷
라운드 트립 지연 측정 패킷은, 호스트로부터 클라이언트 (디스플레이) 로의 전달 지연 외에 클라이언트 (디스플레이) 로부터 다시 호스트로의 지연을 측정하는데 이용되는 구성, 방법 또는 수단을 제공한다. 본래, 이 측정은 라인 드라이버와 수신기, 및 상호접속 서브-시스템에 존재하는 지연을 포함한다. 이 측정은 일반적으로 상술되었던, 역방향 링크 캡슐화 패킷에서의 턴 어라운드 지연 및 역방향 링크 레이트 디바이저 파라미터를 설정하기 위해 이용된다. 이 패킷은, MDDI 링크가 특정한 응용을 위해 의도된 최대 속도로 실행되는 경우 가장 유용하다. MDDI_Stb 신호는, 다음의 필드, 즉, 올 제로와 가드 시간 양자와, 측정 주기 동안 모든 제로 데이터가 송신되는 대로 작동한다. 이것은, 측정 주기 동안 디스플레이의 주기적인 클록으로서 이용될 수 있기 때문에, MDDI_Stb 로 하여금, 그 데이터 레이트의 반으로 토글링하게 한다.
일 실시형태에서, 클라이언트는 일반적으로 클라이언트 용량 패킷의 클라이언트 피처 용량 표시자 중 비트 18 의 이용을 통해 라운드 트립 지연 측정 패킷을 지원하는 능력을 나타낸다. 모든 클라이언트가 라운드 트립 지연 측정을 지원하는 것이 권고되지만, 호스트가 최대 케이블 지연과 최대 드라이버 및 수신기 지연에 기초한 최악의 경우의 라운드 트립 지연을 인지하는 것이 가능하다. 또한, 이것은 인터페이스가 이용되는 디바이스의 알려진 디자인 요소 (도전체 길이, 회로 타입 및 피처 등) 의 태양이므로, 호스트는 내부 모드에 이용되는 MDDI 링크에 대해 미리 라운드-트립 지연을 인지할 수도 있다.
라운드 트립 지연 측정 패킷의 포맷은 도 34 에 도시된다. 도 34 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트ID, 파라미터 CRC, 가드 시간 1, 측정 주기, 올 제로 및 가드 시간 2 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 타입 82 패킷으로서 식별되고, 159 비트의 미리-선택된 고정 길이를 이용한다.
라운드 트립 지연 측정 패킷 동안 생성하는 이벤트의 시간이 도 35 에 도시된다. 도 35 에서, 호스트는, 올 제로 및 가드 타임 1 필드의 다음에 오는 파라미터 CRC 및 스트로브 정렬 필드의 존재에 의해 도시된, 라운드 트립 지연 측정 패킷을 송신한다. 지연 (3502) 은, 패킷이 클라이언트 디스플레이 디바이스 또는 프로세싱 회로 소자에 도달하기 이전에 생성한다. 디스플레이가 패킷을 수신하는 동시에, 클라이언트에 의해 결정된 것처럼 실제로 측정 주기의 처음 만큼 정확히 0xff, 0xff 및 30 바이트의 0x0 패턴을 송신한다. 클라이언트가 이 시퀀스를 송신하기 시작하는 실제 시간은, 호스트의 뷰 포인트로부터 측정 주기 애초부터 지연된다. 대체로, 이 지연의 양은, 패킷이 라인 드라이버와 수신기, 및 상호접속 서브시스템 케이블, 도전체를 통해 전달하는데 걸리는 시간이다. 유사한 양의 지연 (3504) 은, 패킷을 클라이언트로부터 호스트로 역전달시킨다.
클라이언트로 트래벌싱 (traversing) 하고 클라이언트로부터 트래벌싱하는 신호에 대한 라운드 트립 지연 시간을 정확하게 결정하기 위하여, 호스트는, 0xff, 0xff 및 30 바이트의 0x0 시퀀스의 시작이 도착 후에 검출될 때까지 측정 주기의 개시 이후에 생성하는 순방향 링크 비트 시간 주기의 수를 카운팅한다. 이 정보는 호스트로부터 클라이언트로 통과시키고 다시 되 통과시키기 위해 라운드 트립 신호에 대한 시간 양을 결정하기 위해 이용된다. 그 후, 이 양의 대략 반은, 클라이언트로의 신호의 일방 통로에 대하여 생성된 지연이라고 생각된다.
호스트 및 클라이언트 양자는 MDDI_DATA 라인을 규정된 상태로 유지시키기 위하여, 양 (both) 가드 시간동안 라인을 로직-0 레벨로 구동한다. 양 가드 시간동안의 호스트 및 클라이언트의 인에이블 및 디스에이블 시간은 MDDI_Data 신호가 임의의 유효 라운드-트립 지연 시간동안 유효한 저 레벨인 시간이다.
26. 순방향 링크 스큐 교정 패킷
순방향 링크 스큐 교정 패킷은, 클라이언트 또는 디스플레이로 하여금, MDDI_Stb 신호에 관하여 MDDI_Data 신호의 전달 지연의 차이에 대하여 스스로 교정하게 한다. 지연 스큐 보상 없이, 최대 데이터 레이트는 이들 지연의 잠재적인 최악의 경우의 변동을 고려하도록 통상적으로 제한된다. 통상적으로, 이 패킷은, 순방향 링크 데이터 레이트가 대략 50 Mbps 또는 그 이하의 레이트로 구성되는 경우에만 송신된다. 디스플레이를 교정하기 위해 이 패킷을 송신한 이후, 데이터 레이트는 50Mbps 보다 높게 증대될 수도 있다. 데이터 레이트가 스큐 교정 프로세스 동안 너무 높게 설정되는 경우, 지연 스큐 보상 셋팅으로 하여금 하나 이상의 비트 시간에 의해 제거되게 할 수 있는 비트 주기의 에일리어스 (alias) 를 지연이 동기화하여, 에러의 데이터 클로킹을 야기한다. 인터페이스의 최상의 데이터 레이트 타입 또는 가장 크게 가능한 인터페이스 타입은, 순방향 링크 스큐 교정 패킷을 송신하기 이전에 선택되어, 모든 현존 데이터 비트가 교정된다.
순방향 링크 스큐 교정 패킷의 포맷의 일 실시형태가 도 56 에 도시된다. 도 56 에 도시된 바와 같이, 이러한 타입의 패킷은, 패킷 길이 (2 바이트), 패킷 타입, h클라이언트ID, 파라미터 CRC, 올 제로 교정 데이터 시퀀스, 및 CRC 필드를 갖도록 구성된다. 패킷의 이 타입은, 통상적으로, 타입 필드의 타입 83 패킷으로서 식별되며, 일 실시형태에서 515 의 미리-선택된 길이를 갖는다.
가상 제어 패널
가장 제어 패널 (VCP) 의 이용은, 호스트로 하여금 클라이언트의 일정한 사용자 제어를 설정하게 한다. 이들 파라미터를 호스트에 의해 조정하게 함으로써, 클라이언트의 사용자 인터페이스는, 사용자로 하여금 오디오 볼륨 또는 디스플레이 휘도와 같은 파라미터를 조정하게 하는 스크린이 클라이언트의 하나 이상의 마이크로프로세서에 의해서라기보다 호스트 소프트웨어에 의해 생성될 수 있기 때문에 단순화될 수 있다. 호스트는 클라이언트의 파라미터 설정을 판독하고 각각의 제어를 위해 유효 값의 범위를 결정할 능력 (ability) 을 갖는다. 클라이언트는, 제어 파라미터가 조정될 수 있는 호스트로 되 보고할 성능을 갖는다.
제어 코드 (VCP 코드) 및 일반적으로 특정된 연관 데이터 값은, 클라이언트의 제어 및 설정을 특정하기 위해 이용된다. MDDI 설명서의 VCP 코드는, 패킷 정의에서의 적절한 데이터 필드 정렬을 보존하고, 앞으로, 이 인터페이스에 대하여 고유한 추가 값 또는 장래의 향상을 유지하기 위해 16 비트로 연장된다.
27. 요청 VCP 피처 패킷
요청 VCP 피처 패킷은, 호스트가 특정한 제어 파라미터의 현재의 설정 또는 모든 유효 제어 파라미터를 요청하게 하는 수단, 메커니즘 또는 방법을 제공한다. 통상적으로, 클라이언트는 VCP 피처 응답 패킷의 적절한 정보를 갖는 VCP 패킷에 응답한다. 일 실시형태에서, 클라이언트는 클라이언트 용량 패킷의 디스플레이 피처 용량 표시자 필드의 비트 20 을 이용하여 요청 VCP 피처 패킷을 지원할 능력을 나타낸다.
일 실시형태의 요청 VCP 피처 패킷의 포맷은 도 69 에 도시된다. 도 69 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트 ID, MCCS VCP 코드, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은, 일 실시형태에서 2 바이트 타입 필드에 나타내진 타입 128 로서 식별된다. 패킷 길이 필드를 제외한 패킷의 바이트의 총 수를 특정하는 패킷 길이는 8 바이트의 길이로 패킷의 이 타입에 대하여 통상적으로 고정된다.
h클라이언트ID 필드는 장래의 구현에서 클라이언트ID 로서 사용하기 위해 예약되고, 통상적으로 0 으로 설정된다. MCCS VCP 코드 필드는 MCCS VCP 제어 코드 파라미터를 특정하는 2 바이트의 정보를 포함한다. 0 내지 255 의 범위의 값은, VCP 피처 응답 패킷을 특정한 MCCS 코드에 대응하는 VCP 피처 응답 리스트의 단일 항목으로 반환되게 한다. 65535 (0xffff) 의 MCCS VCP 코드는 클라이언트에 의해 지원된 각각의 제어를 위한 피처 응답 리스트 항목을 포함하는 VCP 피처 응답 리스트로 VCP 피처 응답 패킷을 요청한다. 이 필드를 위한 256 내지 65534 의 값은 장래의 사용을 위해 예약되고 현재 이용되지 않는다.
28. VCP 피처 응답 패킷
VCP 피처 응답 패킷은, 클라이언트에 대하여, 특정한 제어 파라미터 또는 모든 유효 제어 파라미터의 현재의 설정으로 호스트 요청에 응답하는 수단, 메커니즘, 또는 방법을 제공한다. 일반적으로, 클라이언트는 요청 VCP 피처 패킷에 대한 응답에 있어서 VCP 피처 응답 패킷을 송신한다. 이 패킷은 특정한 파라미터의 현재 설정을 결정하고, 특정한 제어를 위한 유효 범위를 결정하며, 특정한 제어가 클라이언트에 의해 지원되는 경우를 결정하거나, 클라이언트에 의해 지원되는 제어의 셋을 결정하기에 유용하다. 클라이언트에 구현되지 않는 특정한 제어를 참조하는 요청 VCP 피처가 송신되는 경우, VCP 피처 응답 패킷은 적절한 에러 코드를 포함하는 구현되지 않은 제어에 응답한 단일 VCP 피처 응답 리스트 항목으로 반환된다. 일 실시형태에서, 클라이언트는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 20 을 이용하여 VCP 피처 응답 패킷을 지원할 능력을 나타낸다.
일 실시형태의 VCP 피처 응답 패킷의 포맷은 도 70 에 도시된다. 도 70 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, c클라이언트 ID, MCCS 버전, 응답 시퀀스 넘버, VCP 피처 응답 리스트, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은 2 바이트 타입 필드에 나타내진 바와 같이, 일 실시형태에서 타입 129 로서 식별된다.
c클라이언트 ID 필드는 클라이언트 ID 를 위해 예약된 정보를 포함한다. 이 필드는 장래의 사용을 위해 예약되고 통상적으로, 0으로 설정된다. MCCS 버전 필드는 클라이언트에 의해 구현되는 VESA MCCS 설명서의 버전을 특정하는 2 바이트의 정보를 포함한다.
2 바이트 응답 시퀀스 넘버 필드는 클라이언트에 의해 반환되는 VCP 피처 응답 패킷의 시퀀스 넘버를 특정하는 정보 또는 데이터를 포함한다. 클라이언트는, 65535 의 MCCS 제어 코드로 요청 VCP 피처 패킷에 응하여 하나 이상의 VCP 피처 응답 패킷을 반환한다. 클라이언트는 다중 VCP 피처 응답 패킷에 걸쳐 피처 응답 리스트를 스프레딩할 수도 있다. 이 경우에, 클라이언트는 각각의 연속적인 패킷에 대하여 시퀀스 넘버를 할당하고, 단일 요청 VCP 피처 패킷에 응하여 송신된 VCP 피처 응답 패킷의 시퀀스 넘버는 0 에서 시작하여 1 씩 증가한다. 마지막 VCP 피처 응답 패킷의 마지막 VCP 피처 리스트 항목은, 패킷이 마지막 하나이고 반환된 패킷의 그룹의 가장 높은 시퀀스 넘버를 포함하는 것을 식별하기 위해 0xffff 와 같은 MCCS VCP 제어 코드 값을 포함한다. 오직 하나의 VCP 피처 응답 패킷이 요청 VCP 피처 패킷에 응하여 송신되는 경우에, 단일 패킷의 응답 시퀀스 넘버는 0 이고 VCP 피처 응답 리스트는 0xffff 와 같은 MCCS VCP 제어 코드를 갖는 리코드 (record) 를 포함한다.
리스트 필드의 피처 수는 이 패킷의 VCP 피처 응답 리스트에 있는 VCP 피처 리스트 항목의 수를 특정하는 2 바이트를 포함하는 반면, VCP 피처 응답 리스트 필드는 하나 이상의 VCP 피처 응답 리스트 항목을 포함하는 한 그룹의 바이트이다. 일 실시형태의 단일 VCP 피처 응답 리스트 항목의 포맷은 도 71 에 도시된다.
도 71 에 도시된 바와 같이, 각각의 VCP 피처 응답 리스트 항목은 길이에 있어서 분명히 12 바이트이며, MCCS VCP 코드, 결과 코드, 최대 값, 및 현재 값 필드를 포함한다. 2-바이트 MCCS VCP 코드 필드는 이 리스트 항목과 연관된 MCCS VCP 제어 코드 파라미터를 특정하는 데이터 또는 정보를 포함한다. 본 실시형태에서, VESA MCCS 설명서 버전 2 및 그 후의 것에 규정된 제어 코드값만이 유효한 것으로 고려된다. 2-바이트 결과 코드 필드는 특정된 MCCS VCP 제어를 고려하는 정보를 위한 요청에 관련된 에러 코드를 특정하는 정보를 포함한다. 이 필드의 '0' 값은, 에러가 존재하지 않는다는 것을 의미하는 반면, '1' 의 값은, 특정한 제어가 클라이언트에 구현되지 않는다는 것을 의미한다. 2 내지 65535 의 이 필드를 위한 부가적인 값은 현재 이용하도록 제한되는 것이 아니라, 장래의 사용 및 당업계에서 계획되는 다른 응용의 구현을 위해 현재 예약된다.
4-바이트의 최대 값 필드는, 특정한 MCCS 제어가 설정될 수 있는 가장 큰 가능한 값을 특정하는 32-비트의 무부호 정수를 포함한다. 요청된 제어가 클라이언트에 구현되지 않는 경우, 이 값을 0 으로 설정된다. 반환된 값이 길이에 있어서 32 비트 (4 바이트) 보다 작은 경우, 그 값은 0 으로 설정된 최상위 (이용되지 않는) 바이트를 갖는 32-비트 정수로 캐스팅된다. 4-바이트 현재 값 필드는, 특정한 MCCS VCP 연속 (C) 또는 불연속 (NC) 제어의 현재 값을 특정하는 정보를 포함한다. 요청된 제어가 클라이언트에 구현되지 않거나 제어가 구현되지만 표 (T) 데이터 타입인 경우, 이 값은 0 으로 설정된다. 반환된 값이 MESA MCCS 설명서마다, 길이에 있어서 32 비트 (4 바이트) 보다 작은 경우, 그 값은 0 으로 설정된 최상위 (이용되지 않는) 바이트를 갖는 32-비트 정수로 캐스팅된다.
29. 셋 VCP 피처 패킷
셋 VCP 피처 패킷은, 호스트를 위해 클라이언트의 연속적이고 불연속적인 제어 모두를 위한 VCP 제어 값을 설정하게 하는 수단, 메커니즘, 또는 방법을 제공한다. 일 실시형태에서, 클라이언트는, 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 20 을 이용하여 셋 VCP 피처 패킷을 지원할 능력을 나타낸다.
일 실시형태의 셋 VCP 피처 패킷의 포맷은 도 72 에 도시된다. 도 72 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트 ID, MCCS VCP 코드, 리스트에서의 값들의 개수, 제어 값 리스트, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 이 패킷의 타입은 2 바이트 타입 필드에 나타내진 바와 같이, 타입 130 으로서 식별되며, 패킷 길이 필드를 제외하고 긴 20 바이트이다.
다시, h클라이언트 ID 필드는 클라이언트 ID 로서 특정하거나 작동하기 위해 2-바이트 값을 이용한다. 이 필드는 장래의 사용을 위해 예약되고 현재 0으로 설정된다. MCCS VCP 코드 필드는 조정될 MCCS VCP 제어 코드 파라미터를 특정하기 위한 2 바이트의 정보 또는 값을 이용한다. 리스트 필드에서의 값의 2-바이트 개수는 제어 값 리스트에 존재하는 16-비트 값의 개수를 특정하는 정보 또는 값을 포함한다. MCCS 제어 코드가 클라이언트에서의 표과 관련이 있지 않은 경우, 제어 값 리스트는 보통, 하나의 항목을 포함한다. 비-표 관련 제어의 경우에, 제어 값 리스트는, 새로운 값을 MCCS VCP 코드 필드에 의해 특정된 제어 파라미터에 기록하도록 특정하는 값을 포함한다. 표-관련 제어에 있어서, 제어 값 리스트에서의 데이터의 포맷은 특정된 MCCS VCP 코드의 파라미터 설명에 의해 특정된다. 하나의 바이트 보다 더 큰 값을 리스트가 포함하는 경우, 어디서든 규정된 방법에 일관된, 최하위 바이트가 먼저 송신된다. 마지막으로, 2 바이트 CRC 필드는 패킷 길이를 포함하는 패킷의 모든 바이트의 16 비트 CRC 를 포함한다.
30. 요청 유효 파라미터 패킷
요청 유효 파라미터 패킷은, 특정 불연속적 (NC) 이거나 표 (T) 제어에 의해 지원된 파라미터의 리스트를 포함하는 유효 파라미터 응답 패킷을 클라이언트가 반환하는 것을 요구하기 위한 유용한 수단 또는 구성으로서 이용된다. 이 패킷은 불연속 제어 또는 클라이언트의 표에 관한 제어만을 특정하고, 모든 제어를 특정하기 위한 65535 (0xffff) 의 MCCS VCP 코드 값을 특정하지 않는다. 비-지원되거나 유효하지 않은 MCCS VCP 코드가 특정되는 경우, 특정한 에러 값은 유효한 파라미터 응답 패킷으로 반환된다. 일 실시형태에서, 클라이언트는 디스플레이 용량 패킷의 클라이언트 피처 용량 필드의 비트 20 을 이용하여 요청 유효 파라미터 패킷을 지원할 능력을 나타낸다.
일 실시형태에서의 요청 유효 파라미터 패킷의 포맷은 도 73 에 도시된다. 도 73 에 도시된 바와 같이, 패킷의 이 타입은, 패킷 길이, 패킷 타입, h클라이언트 ID, MCCS VCP 코드, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은, 일 실시형태에서 2 바이트 타입 필드에 나타내진 타입 131 로서 식별된다.
통상적으로, 2-바이트 패킷 길이 필드에 나타내진 바와 같이, 패킷 길이는, 8의 패킷 길이 필드를 포함하지 않으면서, 패킷에서의 바이트의 총 수를 갖도록 설정된다. 다시, h클라이언트 ID 는 클라이언트 ID 를 특정하지만, 당업자에게 알려진 바와 같이, 현재 장래의 사용을 위해 예약되고, 0 으로 설정된다. 2-바이트 MCCS VCP 코드 필드는 문의될 불연속 MCCS VCP 제어 코드 파라미터를 특정하는 값을 포함한다. 이 필드에서의 값은 클라이언트에 구현되는 불연속 제어에 대응한다. 통상적으로, 값 256 내지 65535 (0xffff) 는 예약되거나 비유효한 것으로서 고려되고, 에러 응답의 비구현된 제어로서 고려된다.
31. 유효 파라미터 응답 패킷
유효 파라미터 응답 패킷은 요청 유효 파라미터 패킷에 응하여 송신된다. 표의 컨텐츠를 반환하는 제어 또는 불연속 MCCS VCP 제어를 위한 유효 설정을 식별하는 수단, 방법, 또는 구성으로서 이용된다. 제어가 클라이언트에서의 표에 관련된다면, VCP 파라미터 응답 리스트는 요청되는 특정한 리스트의 순차적인 표 값을 포함한다. 표의 컨텐츠가 단일 유효 파라미터 응답 패킷에 적합할 수 없는 경우, 순차적인 응답 시퀀스 넘버를 갖는 다중 패킷이 클라이언트에 의해 송신될 수 있다. 일 실시형태에서, 클라이언트는, 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 20 을 이용하여 유효 파라미터 응답 패킷을 지원할 능력을 나타낸다.
호스트는 다음의 방식, 즉, 판독/기록 파라미터, LUT 오프셋, 및 RGB 선택과 같은 필요하거나 원하는 파라미터를 포함하는 셋 VCP 피처 패킷을 호스트가 송신하는 방식; 그 후, 원하는 제어를 특정한 요청 유효 파라미터 패킷이 호스트에 의해 송신되는 방식; 그 후, 클라이언트가 표 데이터를 포함하는 하나 이상의 유효 파라미터 응답 패킷을 반환하는 방식으로 표의 컨텐츠를 요청할 수도 있다. 이런 동작 시퀀스는 MCCS 동작 모델에 기술된 표 판독 기능과 유사한 기능을 수행한다.
특정한 클라이언트 파라미터가 클라이언트에 의해 지원되지 않는 경우, 일 실시형태에서, 이 패킷의 대응 필드는 255 의 값을 포함한다. 클라이언트에서 이용되는 파라미터에 대하여, 대응 필드는 클라이언트에서의 파라미터의 값을 포함한다.
일 실시형태를 위한 유효 파라미터 응답 패킷의 포맷은 도 74 에 도시된다. 도 74 에 도시된 바와 같이, 이 패킷의 타입은, 패킷 길이, 패킷 타입, c클라이언트 ID, MCCS VCP 코드, 응답 코드, 응답 시퀀스 넘버, 리스트에서의 넘버 값, VCP 파라미터 응답 리스트, 및 CRC 필드를 갖도록 구성된다. 통상적으로, 패킷의 이 타입은, 일 실시형태를 위해 2 바이트 타입 필드에 나타내진 바와 같이, 타입 132 로서 식별된다.
c클라이언트 ID 필드는 상술된 바와 같이, 장래의 클라이언트 ID 를 위해 예약되지만, 3-바이트 MCCS VCP 코드 패킷은, 이 패킷에 의해 기술되는 불연속 MCCS VCP 제어 코드 파라미터를 특정한 값을 포함한다. 유효하지 않은 MCCS VCP 제어 코드가 요청 유효 파라미터 패킷에 의해 특정되는 경우, 동일한 유효하지 않은 파라미터 값은 응답 코드 필드에 적절한 값으로 이 필드내에 특정된다. MCCS 제어 코드가 유효하지 않은 경우, VCP 파라미터 응답 리스트는 0 길이를 갖는다.
응답 코드 필드는 특정된 MCCS VCP 제어를 고려하는 정보를 위한 요청에 관련된 응답의 본질 (nature) 을 특정하는 값 또는 정보의 2 바이트를 포함한다. 이 필드의 값이 0 인 경우, 이 데이터 타입을 위해 존재하는 에러가 고려되지 않고, 최상위 응답 시퀀스 넘버를 갖는, 시퀀스의 마지막 유효 파라미터 응답 패킷이 전송된다. 이 필드의 값이 1 인 경우, 제공될 에러가 고려되지 않고, 최상의 시퀀스 넘버를 갖는 다른 유효 파라미터 응답 패킷이 송신된다. 이 필드의 값이 2 인 경우, 클라이언트에 구현될 특정 제어가 고려되지 않는다. 이 필드의 값이 3 인 경우, 특정 제어는 불연속 제어가 아니다 (0 으로부터 최대 값으로 모든 값의 유효 셋을 항상 갖는 연속적인 제어이다.). 4 내지 65535 와 같은 이 필드를 위한 값은 장래의 사용을 위해 예약되고 통상적으로, 이용되지 않는다.
2-바이트 응답 시퀀스 넘버 필드는 클라이언트에 의해 반환되는 유효 파라미터 응답 패킷의 시퀀스 넘버를 특정한다. 클라이언트는 요청 유효 파라미터 패킷에 응하여 하나 이상의 유효 파라미터 응답 패킷을 반환한다. 클라이언트는 다중 유효 파라미터 응답 패킷에 걸쳐 VCP 파라미터 응답 리스트를 스프레딩할 수도 있다. 이 후자의 경우에, 클라이언트는 각각의 연속적인 패킷에 시퀀스 넘버를 할당하고, 시퀀스의 마지막 패킷을 제외하고, 응답 코드를 1 로 설정한다. 시퀀스의 마지막 유효 파라미터 응답 패킷은 최상의 응답 시퀀스 넘버를 갖고 응답 코드는 0 의 값을 포함한다.
리스트 필드의 값의 2-바이트 넘버는 VCP 파라미터 응답 리스트에 존재하는 16-비트 값의 넘버를 특정한다. 응답 코드가 0 이 아닌 경우, 리스트 파라미터의 값의 넘버는 0 이다. VCP 파라미터 응답 리스트 필드는 MCCS 제어 코드 필드에 의해 특정되는 불연속 제어를 위한 유효 값의 셋을 나타내는 0 내지 32760 2-바이트 값의 리스트를 포함한다. 불연속 제어 코드의 규정은 VESA MCCS 설명서에 특정된다. 마지막으로, 이 실시형태에서, CRC 필드는 많은 바이트 중에서도 패킷 길이를 포함하는 패킷에 16 비트 CRC 를 포함한다.
알파-커서 이미지
통신 링크를 통해 데이터를 통신하기 위해, MDD 인터페이스 그리고 관련된 독창적인 프로토콜 및 메커니즘은, 서로 중첩되어 변화하는 투명도를 가질 수 있는 다중 이미지 평면에 대한 지원을 제공한다. 하드웨어 커서는 가변 X-Y 오프셋을 갖는 중첩된 이미지를 이용하여 구현될 수 있다. 알파-커서 기능 및 관련된 프로토콜 지원의 개요는 이하 제공된다. 알파-커서 이미지 패킷을 지원할 수 있는 능력은 알파-커서 이미지 용량 패킷에 정의되며, 이는 요청 특정 상태 패킷에 응답하여 송신된다.
32. 알파-커서 이미지 용량 패킷
알파-커서 이미지 용량 패킷은 클라이언트에서 알파-커서 이미지의 특성 및 관련된 투명성 맵을 정의하기 위해 이용된다. 일 실시형태에서, 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트에서 133 의 파라미터 값을 이용하여, 알파-커서 이미지 용량 패킷을 지원할 수 있는 능력을 나타낸다. 패킷 길이 필드에서 특정된 패킷 길이는 패킷 길이 필드를 포함하지 않고, 일 실시형태에 대하여 20 의 고정값으로 설정된다.
일 실시형태에 대한 알파-커서 이미지 용량 패킷의 포맷은 도 75 에서 나타난다. 도 75 에 도시된 것과 같이, 이러한 형태의 패킷은 패킷 길이, 패킷 타입, c클라이언트 ID, 알파-커서 식별자, 알파-커서 비트맵 폭, 알파-커서 비트맵 높이, RGB 용량, 단색 용량, 예약 1, Y Cr Cb 용량, 투명성 맵 Res., 용량 비트, 및 CRC 필드를 갖도록 구성된다. c클라이언트 ID 필드는 일반적으로 장래의 클라이언트 ID 이용을 위해 예약되고 현재 0 으로 설정된다.
알파 커서 식별자 필드 (2 바이트) 는 특정 알파-커서 평면을 식별하는 값을 포함한다. 클라이언트가 n 알파-커서 이미지 평면을 지원하면, 알파-커서 식별자는 0 내지 n-1 의 유효 범위를 갖는다. 일 실시형태에서, 값 n 은 클라이언트 용량 패킷의 알파-커서 이미지 평면 필드에 의해 특정된다. 클라이언트는 각각의 알파-커서 이미지 평면에 대한 유일한 알파-커서 이미지 용량 패킷을 돌려준다.
2-바이트 알파-커서 비트맵 값은 수많은 픽셀로서 표현되는 알파-커서 비트맵 이미지의 폭을 특정하고, 반면 2-바이트 알파-커서 비트맵 높이 필드 값은 수많은 픽셀로서 표현되는 알파-커서 비트맵 이미지의 높이를 특정한다.
RGB 용량 필드는 RGB 포맷으로 디스플레이 될 수 있는 해상도의 비트 개수를 특정하는 2 바이트를 사용한다. 클라이언트가 RGB 포맷을 이용할 수 없으면, 이 값은 0 이다. RGB 용량 워드는 3 개의 개별 값으로 구성되며, 이는 일 실시형태에서, 비트 3 내지 0 은 각각의 픽셀에 청색 비트의 최대 개수 (청색 강도) 를 정의하고, 비트 7 내지 4 는 각각의 픽셀에 녹색 비트의 최대 개수 (녹색 강도) 를 정의하고, 비트 11 내지 8 은 각각의 픽셀에 적색 비트의 최대 개수 (적색 강도) 를 정의하고, 비트 15 내지 12 는 RGB 용량 정보를 제시함에 있어 장래의 사용을 위해 예약되고 일반적으로 현재는 0 으로 설정되도록, 구현된다.
1-바이트의 단색 용량 필드는 단색 포맷으로 디스플레이 될 수 있는 해상도의 비트 개수를 특정하기 위해 이용된다. 클라이언트가 단색 포맷을 이용할 수 없으면, 이 값은 0 으로 설정된다. 비트 7 내지 4 는 장래의 사용을 위해 예약되고, 이에 따라 일반적으로 0 으로 설정된다. 비트 3 내지 0 은 각각의 픽셀에 존재할 수 있는 그레이 스케일 비트의 최대 개수를 정의한다. 이러한 4 개의 비트는 각각의 픽셀이 1 내지 15 비트로 구성되는 것을 특정하도록 한다. 값이 0 이면, 단색의 포맷은 클라이언트에 의해 지원되지 않는다.
1-바이트의 예약 1 필드는 일반적으로 장래의 사용을 위해 예약된 값을 포함하며, 이 필드의 그런 모든 비트는 0 으로 설정된다. 이는 후속 2-바이트 필드로 하여금 16-비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드로 하여금 32-비트 워드 어드레스에 정렬하게 할 것이다.
2-바이트 Y Cb Cr 용량 필드는 Y Cb Cr 포맷으로 디스플레이 될 수 있는 해상도의 비트 개수를 특정하는 값 또는 정보를 포함한다. 클라이언트가 Y Cr Cb 포맷을 이용할 수 없으면, 이 값은 0 이다. 일반적으로, 일 실시형태에서는, Y Cb Cr 용량 워드는 3 개의 개별 값 : Cr 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 3 내지 0, Cb 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 7 내지 4, Y 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 11 내지 8 으로 구성되며, 비트 15 내지 12 는 Y Cb Cr 용량 정보 또는 값을 제시함에 있어서 장래의 사용을 위해 예약되고 현재는 0 으로 설정된다.
1-바이트 투명성 맵 해상도 필드는 알파-커서 이미지 투명성 맵의 각각의 픽셀 위치에 비트의 개수 (깊이) 를 특정하는 값 또는 정보를 포함한다. 이 값은 1 내지 8 의 범위를 갖는다. 이 값이 0 이면, 투명성 맵은 이 알파-커서 이미지 버퍼 (알파-커서 식별자 필드에 의해 특정된 버퍼) 에 대하여 지원되지 않는다.
1-바이트 용량 비트 필드는 알파-커서 이미지 버퍼와 관련된 용량을 특정하는 플래그 세트를 포함하는 값 또는 정보를 제공한다. 일 실시형태에서, 플래그는, 비트 0 이 패킹된 포맷으로 존재할, 알파-커서 비디오 스트림 패킷의 픽셀 데이터를 선택하기 위해 동작하도록 정의된다. 비트 1 은 알파-커서 투명성 패킷의 투명성 맵 데이터가 패킷 포맷으로 존재하는 것을 보여주기 위해 동작한다. 바이트 정렬되고 패킹된 투명성 맵 데이터의 실시형태는 도 76 에서 나타낸다. 비트 2 는 알파-커서 이미지 평면이 알파-커서 이미지 오프셋 패킷을 이용하여 오프셋 용량을 지원한다는 것을 보여주기 위해 동작한다. 비트 3 은 알파-커서 이미지 평면이 컬러 맵 데이터 포맷을 지원할 수 있다는 것을 보여주기 위해 동작한다. 동일한 컬러 맵 표가 메인 이미지 버퍼 및 스케일링된 비디오 스트림을 위해 이용된 것처럼 알파-커서 이미지 평면을 위해 이용된다. 컬러 맵은 다른 경우에는, 설명된 컬러 맵 패킷을 이용하여 구성된다.
비트 7 내지 4 는 장래의 사용을 위해 예약되며, 이에 따라 일반적으로 0 값 또는 로직 레벨로 설정된다.
33. 알파-커서 투명성 맵 패킷
알파-커서 투명성 맵 패킷은 특정된 알파-커서 이미지 평면에 대한 이미지 투명성 맵의 컨텐츠를 정의한다. 몇몇 애플리케이션은 단일 패킷으로 전송될 수 있는 데이터 량보다 더 큰 투명성 맵을 요구할 수도 있다. 이러한 경우에, 각각이 상이한 서브세트의 투명성 맵을 갖는 다중 알파-커서 투명성 맵 패킷이, 투명성 맵 X 및 Y 스타트 필드를 이용함으로써 송신될 수도 있다. 이러한 필드는 비디오 스트림 패킷의 X 스타트 및 Y 스타트 필드처럼 유사한 방식으로 동작한다. 일 실시형태에서는, 알파-커서 이미지 용량 패킷의 알파-커서 식별자 필드에 의해 특정된 각각의 특정한 알파-커서 평면을 위한 알파-커서 이미지 용량 패킷의 투명성 맵 해상도 필드를 이용하여, 클라이언트가 알파-커서 투명성 맵 패킷을 지원할 수 있는 능력을 나타낸다. 패킷 길이 및 클라이언트 ID 필드는 앞서 상술한 다른 패킷들에 대한 것과 같이 동작한다. 일 실시형태에서, 패킷 타입 필드의 134 값이 알파-커서 투명성 맵 패킷으로서 패킷을 식별하기 위해 이용된다.
일 실시형태에 대한 알파-커서 투명성 맵 패킷의 포맷은 도 76 에서 나타낸다. 도 76 에 도시된 바와 같이, 이러한 형태의 패킷은 패킷 길이, 패킷 타입, h클라이언트 ID, 알파-커서 식별자, 투명성 맵 X 스타트, 투명성 맵 Y 스타트, 투명성 맵 해상도, 예약 1, 파라미터 CRC, 투명성 맵 매체, 및 투명성 맵 데이터 CRC 필드를 갖도록 구성된다.
2-바이트 알파 커서 식별자 필드는 특정한 알파-커서 평면을 식별하는 값을 갖는다. 클라이언트가 n 알파-커서 이미지 평면을 지원하면 알파-커서 식별자는 0 내지 n-1 의 유효 범위를 갖는다.
2-바이트 투명성 맵 X 및 Y 스타트 필드는 각각 절대적인 X 와 Y 좌표를 특정하며, 여기에서 포인트 (투명성 맵 X 스타트, 투명성 맵 Y 스타트) 는 투명성 맵 데이터 필드 아래의 제 1 픽셀이다.
투명성 맵 해상도 필드 (1 바이트) 는, 데이터가 패킹되었는지 아닌지 여부를 특정하는 값 및 투명성 맵의 해상도를 포함한다. 이 필드의 일 실시형태에서는, 비트 3 내지 0 이 모든 투명성 맵 표 항목에 존재하는 해상도의 비트 개수를 정의한다. 유효값은 1 내지 8 비트가 되도록 폭을 특정한다. 값 0 과 9 내지 15 는 무효인 것으로 간주된다. 이 값은 알파-커서 이미지 용량 패킷에서의 투명성 맵 해상도 필드의 클라이언트에 의해 돌려받은 값과 매칭되어야만 한다. 비트 6 내지 4 는 장래의 사용을 위해 예약됨으로써, 일반적으로 이 시점에서 로직 0 으로 설정된다. 이 바이트의 비트 7 은 투명성 맵 데이터가 패킹된 형태 또는 바이트-정렬된 형태인지 아닌지 여부를 특정한다. 비트 7 이 '1' 과 동일하면 투명성 맵 데이터는 패킹된 형태이고, '0' 이면 데이터는 바이트-정렬된 형태이다. 패킹된 투명성 맵 데이터 및 바이트-정렬된 투명성 맵 데이터의 실시예를 나타낸다. 이 비트의 값은 알파-커서 이미지 용량 패킷의 용량 비트 필드의 비트 값 1 에 매칭하여야 한다.
1 바이트의 예약 1 필드는 장래의 사용을 위해 예약되므로, 이 필드의 모든 비트는 일반적으로 로직 0 레벨과 동일하게 설정된다. 이 필드의 일 목적은 모든 후속 2 바이트 필드로 하여금 16-비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드로 하여금 32-비트 워드 어드레스에 정렬하도록 하는 것이다. 파라미터 CRC 필드는 패킷 길이에서부터 예약 1 필드까지 모든 바이트의 16-비트 CRC 를 포함한다. 이 CRC 가 확인에 실패하면, 전체 패킷이 폐기될 것이다.
투명성 맵 데이터 필드를 위해, 각각의 투명성 맵 위치는 폭에서의 1 내지 8 비트이다. 단일의 투명성 맵이 하나의 알파 및 커서 투명성 맵 패킷으로 맞추어지지 않으면, 전체 투명성 맵은 상이한 투명성 맵 데이터를 갖는 다수의 패킷 및 각각의 패킷에서의 투명성 맵 X 와 Y 스타트 값을 송신함으로써 특정될 수도 있다.
2-바이트 투명성 맵 데이터 CRC 필드는 단지 투명성 맵 데이터의 16-비트 CRC 를 포함한다. 이 CRC 가 확인에 실패하면, 투명성 맵 데이터가 여전히 이용될 수는 있지만, CRC 에러 카운트가 증가될 것이다.
34. 알파-커서 이미지 오프셋 패킷
알파-커서 이미지 오프셋 패킷은 메인 디스플레이 이미지의 좌상부 코너로부터 커서의 X 및 Y 오프셋을 특정한다. 알파-커서 이미지 오프셋 패킷의 포맷은 도 77 에 도시된다. 도 77 에 도시된 바와 같이, 일 실시형태에서, 알파-커서 이미지 오프셋 패킷은 패킷 길이, 패킷 타입, h클라이언트 ID, 알파-커서 X 오프셋, 알파-커서 Y 오프셋, 및 CRC 필드로 구성된다. 일 실시형태에서, 클라이언트는 알파-커서 용량 패킷의 알파-커서 식별자 필드에 의해 특정된 각각의 특정한 알파-커서 평면에 대하여, 알파-커서 이미지 용량 패킷의 용량 비트 필드의 비트 2 를 이용하여, 알파-커서 이미지 오프셋 패킷을 지원할 수 있는 능력을 나타낸다. 일 실시형태에서, 2-바이트 패킷 길이 필드에 도시된 바와 같이, 패킷 길이는 10 에 고정된다. 일 실시형태에서, 135 의 패킷 타입이 알파-커서 이미지 오프셋 패킷으로서 패킷을 식별한다.
2-바이트의 알파-커서 X 및 Y 오프셋 필드는 메인 이미지의 좌측 및 상부로부터 커서 이미지의 픽셀들 각각의 최좌측 열 및 상부 행의 수평 및 수직 오프셋을 각각 특정하는 값을 포함한다. 16-비트 무부호 정수를 포함하는 2 바이트의 h클라이언트 ID 는 클라이언트 ID 를 위해 예약된다. 이 필드는 장래의 사용을 위해 예약되고, 일반적으로 로직-0 레벨로 설정되거나 그 비트에 대한 값으로 설정된다.
35. 알파-커서 비디오 스트림 패킷
알파-커서 비디오 스트림 패킷은 알파-커서 이미지 평면의 사각형 영역을 업데이트하기 위해 비디오 데이터를 운반한다. 이 영역의 사이즈는 단일 픽셀만큼 작거나 또는 전체 디스플레이만큼 클 수도 있다. 알파-커서 비디오 스트림 패킷의 포맷은 도 78 에 도시된다. 도 78 에 도시된 바와 같이, 일 실시형태에서, 알파-커서 비디오 스트림 패킷은 패킷 길이, 패킷 타입, b클라이언트 ID, 비디오 포맷 속성, X 좌측 에지, Y 상부 에지, X 우측 에지, Y 하부 에지, X 스타트, Y 스타트, 픽셀 카운트, 파라미터 CRC 픽셀 데이터, 및 픽셀 데이터 CRC 필드로 구성된다. 일 실시형태에서, 클라이언트는 알파-커서 이미지 용량 패킷의 알파-커서 식별자 필드에 의해 특정된 각각의 특정한 알파-커서 평면을 위한 알파-커서 이미지 용량 패킷을 이용함으로써 알파-커서 비디오 스트림 패킷 및 그와 관련된 파라미터를 지원할 수 있는 능력을 나타내며, 그리고 패킷 타입 필트의 17 의 값은 알파-커서 비디오 스트림 패킷이 되는 것과 같이 패킷을 나타내거나 식별한다. h클라이언트 ID 필드 (2 바이트) 는 장래의 사용을 위해 예약되고, 당업계에 알려진 바와 같이 그 사이 0 으로 설정된다.
2-바이트 비디오 데이터 포맷 디스크립터 필드는 현재 패킷의 현재 스트림의 픽셀 데이터에 각각의 픽셀의 포맷을 특정하는 정보 또는 값을 포함한다. 픽셀 데이터 포맷은 알파-커서 이미지 용량 패킷에 정의된 바와 같이 알파-커서 이미지 평면을 위한 유효 포맷 중의 하나 이상에 부합하여야 한다. 비디오 데이터 포맷 디스크립터 필드는 단지 현재 패킷을 위한 픽셀 포맷을 정의하는 값을 포함하고, 일정한 포맷이 특별한 비디오 스트림의 존속기간을 위해 이용되도록 지속할 것을 내포하지는 않는다. 이상의 도 11 은 비디오 데이터 포맷 디스크립터가 어떻게 코딩되는지 설명한다. 포맷이 다음과 같다.
일 실시형태에서, 비트 [15:13] 이 '000' 이면, 비디오 데이터는 픽셀당 비트 개수가 비디오 데이터 포캣 디스크립터 워드의 비트 3 내지 0 에 의해 정의되는 단색 픽셀 어레이로 구성된다. 비트 11 내지 4 는 0 으로 설정된다. 비트 [15:13] 이 '001' 이면, 비디오 데이터는 각각 컬러 맵 (파레트) 을 통한 컬러를 특정하는 컬러 픽셀 어레이로 구성된다. 비디오 데이터 포맷 디스크립터 워드의 비트 5 내지 0 이 픽셀당 비트 개수를 정의하고, 비트 11 내지 6 은 0 으로 설정된다. 비트 [15:13] 이 '010' 이면, 비디오 데이터는 적색의 픽셀당 비트 개수가 비트 11 내지 8 에 의해 정의되고, 녹색의 픽셀당 비트 개수가 비트 7 내지 4 에 의해 정의되고, 청색의 픽셀당 비트 개수가 비트 3 내지 0 에 의해 정의되는, 천연 RGB 포맷에서의 컬러 픽셀 어레이로 구성된다. 각각의 픽셀의 비트의 총 개수는 적색, 녹색, 청색을 위해 이용되는 비트 개수의 합계이다.
비트 [15:13] 가 '011' 이면, 비디오 데이터는 휘도 및 색차 정보를 갖는 4:2:2 Y Cb Cr 포맷의 비디오 데이터의 어레이로 구성된다. 휘도 (Y) 의 픽셀당 비트 개수는 비트 11 내지 8 에 의해 정의되고, Cb 성분의 비트 개수는 비트 7 내지 4 에 의해 정의되고, Cr 성분의 비트 개수는 비트 3 내지 0 에 의해 정의된다. Cb 및 Cr 성분은 Y 로서 절반의 레이트로 송신된다. 이 패킷의 픽셀 데이터 부분의 비디오 샘플은 다음과 같이, Cbn 및 Crn 이 Yn 및 Yn+1 과 관련되고, Cbn+2 및 Crn+2 가 Yn+2 및 Yn+3 와 관련되는 등, Cbn, Yn, Crn, Yn+1, Cbn+2, Yn+2, Crn+2, Yn+3 ... 로 조직될 것이다. Yn, Yn+1, Yn+2, 및 Yn+3 은 좌측에서부터 우측까지 단일 행의 4 개의 연속적인 픽셀의 휘도 값이다. 컬러 성분의 오더링은 마이크로 소프트 UYVY FOURCC 포맷과 동일하다. 비디오 스트림 패킷에 의해 참조된 윈도우의 열에 홀수 넘버의 픽셀 (X 우측 에지 - X 좌측 에지 + 1) 이 있다면, 각각의 열에서의 최종 픽셀에 대응하는 Cb 값은 다음 열의 첫번째 픽셀의 Y 값이 후속하게 될 것이다.
Y Cb Cr 포맷을 이용하는 윈도우는 짝수의 픽셀인 폭을 갖는 것이 바람직하다. 패킷의 픽셀 데이터는 짝수의 픽셀을 포함한다. 픽셀 데이터의 최종 픽셀이 비디오 스트림 패킷 헤더에서 특정된 윈도우에서의 열 중에서 최종 픽셀에 대응될 때, 즉 픽셀 데이터의 최종 픽셀의 X 위치가 X 우측 에지와 동일한 경우에는, 홀수 또는 짝수의 픽셀을 포함할 수도 있다.
5 개의 포맷들 모두에 대하여, 비트 12 (도면에서 "P" 로 지정됨) 는 픽셀 데이터 샘플이 패킹되는지 아닌지 여부를 특정한다. 비트 12 의 값이 '0' 일 때, 각 픽셀 데이터 필드의 각 픽셀 내의 각 픽셀 및 각 컬러는 MDDI 인터페이스 바이트 경계로 바이트-정렬된다. 비트 12 의 값이 '1' 일 때, 픽셀 데이터의 각 픽셀 내의 각 픽셀 및 각 컬러는 픽셀이 사용되지 않은 비트를 남기지 않는 픽셀 내에서 앞에서의 픽셀 또는 컬러와는 반대로 패킹된다.
일 실시형태에서, 픽셀 데이터 속성 필드 (2 바이트) 가 다음과 같이 해석되는 일련의 비트 값을 갖는다. 비트 1 및 0 은 디스플레이 픽셀 데이터가 어떻게 라우팅되는지 선택한다. 비트 값 '11' 에 대하여서는 양쪽 눈에 대하여 또는 양쪽 눈을 위해 데이터가 디스플레이되고, 비트 값 '10' 에 대하여서는 좌측 눈에 대하여서만 데이터가 라우팅되며, 비트 값 '01' 에 대하여서는 우측 눈에서만 데이터가 라우팅된다.
픽셀 데이터 속성 필드의 비트 2 는 픽셀 데이터가 표준 프로그래시브 포맷으로 존재함을 의미하는 '0' 값으로, 픽셀 데이터가 인터레이스 포맷으로 존재하는지 아닌지 여부를 나타내며, 열 넘버 (픽셀 Y 좌표) 는 일 열로부터 다음 열로 나아갈 때 1 씩 증가된다. 이 비트가 '1' 값을 가질 때, 픽셀 데이터는 인터레이스 포맷으로 존재하며, 열 넘버는 일 열로부터 다음 열로 나아갈 때 2 씩 증가된다. 비트 3 은 픽셀 데이터가 교대 픽셀 포맷으로 존재함을 나타낸다. 이는, 비트 2 에 의해 인에이블되는 표준 인터레이스 모드와 유사하지만, 인터레이싱은 수평적이지 않고 수직적이다. 비트 3 이 '0' 일 때, 픽셀 데이터는 표준 프로그래시브 포맷으로 존재하며, 행 넘버 (픽셀 X 좌표) 는 각각의 연속하는 픽셀이 수신될 때 1 씩 증가된다. 비트 3 이 '1' 일 때, 픽셀 데이터는 교대 픽셀 포맷으로 존재하며, 행 넘버는 각 픽셀이 수신될 때 2 씩 증가된다.
픽셀 데이터 속성 필드의 비트 4 는, 무선 전화 또는 심지어 휴대용 컴퓨터와 같은 유사 장치, 또는 상술한 다른 장치를 위한 내부 디스플레이로 또는 디스플레이로부터 데이터가 전달되거나, 또는 장치에 직접 접속되거나 내부에 탑재된 카메라로 또는 카메라로부터 데이터가 전달되는 디스플레이 또는 카메라와 픽셀 데이터가 관련되는지 아닌지 여부를 나타낸다. 비트 4 가 '0' 일 때, 픽셀 데이터는 디스플레이 프레임 버퍼로 또는 버퍼로부터 전달되고 있는 것이다. 비트 4 가 '1' 일 때, 픽셀 데이터는 당업계에 널리 알려진 일부 타입의 카메라 또는 비디오 장치로 또는 장치로부터 전달되고 있는 것이다.
픽셀 데이터 속성 필드의 비트 5 가 MDD 인터페이스의 장래의 사용 또는 응용을 위해 예약되고, 그래서 일반적으로, 0 값, 즉 '0' 과 같이 설정된다.
픽셀 데이터 속성 필드의 비트 7 및 6 은 픽셀 데이터가 기록될 프레임 버퍼를 특정하는 디스플레이 업데이트 비트이다. 더 특정한 효과는 다른 곳에서 설명된다. 비트 값 '01' 에 대하여, 픽셀 데이터는 오프라인 이미지 버퍼에 기록된다. 비트 값 '00' 에 대하여, 픽셀 데이터는 디스플레이를 리프레시하는데 이용되는 이미지 버퍼에 기록된다. 비트 값 '11' 에 대하여, 픽셀 데이터는 모든 이미지 버퍼들에 기록된다. 비트 값들, 즉 비트 조합 '10' 은 무효 값 또는 지정으로서 취급되고, 픽셀 데이터는 무시되어 이미지 버퍼들 중 어디에도 기록되지 않는다. 이 값은 인터페이스의 장래의 응용을 위한 사용을 가질 수도 있다. 픽셀 데이터 속성 필드의 비트 8 내지 15 는 장래의 사용을 위해 예약되고, 따라서 일반적으로 0 으로 설정된다.
일 실시형태에서, 2-바이트 X 스타트 및 Y 스타트 필드는 픽셀 데이터 필드의 첫번째 픽셀을 위한 포인트 (X 스타트, Y 스타트) 의 절대적인 X 및 Y 좌표를 특정한다. 2-바이트 X 좌측 에지와 Y 상부 에지 필드는 픽셀 데이터 필드에 의해 채워진 알파-커서 이미지 윈도우의 좌측 에지의 X 좌표 및 상부 에지의 Y 좌표를 특정하는 반면, X 우측 에지 및 Y 하단 에지 필드는 업데이트 되고 있는 알파-커서 이미지 윈도우의 우측 에지의 X 좌표 및 하부 에지의 Y 좌표를 특정한다.
픽셀 카운트 필드 (2 바이트) 는 픽셀 데이터 필드의 픽셀의 수를 아래에 특정한다. 2-바이트 파라미터 CRC 필드는 패킷 길이로부터 픽셀 카운트까지 모든 바이트들의 CRC 를 포함한다. 이 CRC 가 확인에 실패하면, 전체 패킷은 폐기된다.
픽셀 데이터 필드는 디스플레이될 천연 비디오 정보를 포함하며, 이는 비디오 포맷 디스크립터 필드에 의해 설명된 방법으로 포맷이 지정된다. 데이터는 다른 곳에서 설명된 바와 같이, 한번에 하나의 "행" 으로서 송신된다. 픽셀 데이터 CRC 필드 (2 바이트) 는 단지 픽셀 데이터의 16-비트 CRC를 포함한다. 이 값의 CRC 검증이 실패하면, 픽셀 데이터는 여전히 이용될 수 있지만, CRC 에러 카운트는 증가된다.
스케일링된 비디오 스트림 이미지
MDD 인터페이스 또는 프로토콜 메커니즘, 구성, 수단 또는 방법은 호스트가 원본 이미지보다 크게 또는 작게 스케일링되는 이미지를 클라이언트에게 송신하도록 허용하는 스케일링된 비디오 스트림 이미지에 대한 지원을 제공하고, 스케일링된 이미지가 메인 이미지 버퍼에 카피된다. 스케일링된 비디오 스트림 기능성 및 관련된 프로토콜 지원의 개요가 다른 곳에 제공된다. 스케일링된 비디오 스트림을 지원할 수 있는 능력은 스케일링된 비디오 스트림 용량 패킷 내에서, 또는 패킷에 의해 정의되며, 이는 요청 특정 상태 패킷에 응답하여 송신된다.
36. 스케일링된 비디오 스트림 용량 패킷
스케일링된 비디오 스트림 용량 패킷은 클라이언트에 의해 이용되거나 클라이언트에서의 스케일링된 비디오 스트림 소스 이미지의 특성을 정의한다. 일반적으로, 스케일링된 비디오 스트림 용량 패킷의 포맷은 도 79 에 나타낸다. 도 79 에서 나타낸 것처럼 일 실시형태에서, 스케일링된 비디오 스트림 용량 패킷은 패킷 길이, 패킷 타입, c클라이언트 ID, 최대 스트림 넘버, 소스 최대 X 사이즈, 소스 최대 Y 사이즈, RGB 용량, 단색 용량, 예약 1, Y Cr Cb 용량, 예약 2 (Reserved 2), 및 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 패킷 길이는, 2-바이트 c클라이언트ID 를 위해 예약된, 아니면 0 으로 설정된, c클라이언트ID 필드를 포함하는 길이 필드에 도시된 바와 같이, 고정된 20 바이트가 되도록 선택된다. 일 실시형태에서, 클라이언트는 무효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트의 143 의 파라미터 값을 이용하여, 스케일링된 비디오 스트림 용량 패킷을 지원할 수 있는 능력을 나타낸다.
스트림 필드의 2-바이트 최대 넘버는 한번에 할당될 수 있는 동시발생의 스케일링된 비디오 스트림의 최대 넘버를 식별하기 위한 값을 포함한다. 일 실시형태에서, 클라이언트는 스케일링된 비디오 스트림의 최대 넘버가 이미 배정이 되었다면, 스케일링된 비디오 스트림을 할당하라는 요청을 부인하여야 한다. 스케일링된 비디오 스트림의 최대 넘버보다 작게 할당된다면, 클라이언트는 또한 클라이언트에서의 다른 리소스 제한에 기초하여 할당 요청을 부인할 수도 있다.
소스 최대 X 사이즈 및 Y 사이즈 필드 (2 바이트) 는 픽셀의 개수로서 표현되는 스케일링된 비디오 스트림 소스 이미지의 최대 폭 및 높이를 위한 값을 각각 특정한다.
RGB 용량 필드는 RGB 포맷으로 디스플레이 될 수 있는 해상도의 비트 수를 특정하기 위한 값을 이용한다. 스케일링된 비디오 스트림은 RGB 포맷을 이용할 수 없으면, 이 값은 0 과 동일하게 설정된다. RGB 용량 워드는 3 개의 별도의 무부호 값 : 각각의 픽셀의 청색 비트의 최대 개수 (청색 강도) 를 정의하는 비트 3 내지 0, 각각의 픽셀의 녹색 비트의 최대 개수 (녹색 강도) 를 정의하는 비트 7 내지 4, 각각의 픽셀의 적색 비트의 최대 개수 (적색 강도) 를 정의하는 비트 11 내지 8 으로 구성되는 반면, 비트 15 내지 12 는 장래의 용량 정의에서의 장래의 사용을 위해 예약되고, 일반적으로 0 으로 설정된다.
1-바이트 단색 용량 필드는 단색의 포맷으로 디스플레이 될 수 있는 해상도의 비트 수를 특정하는 값을 포함한다. 스케일링된 비디오 스트림이 단색의 포맷을 이용할 수 없으면, 이 값은 0 이다. 비트 7 내지 4 는 장래의 사용을 위해 예약되며, 따라서 현재 응용에서는, 당업자에게 이해되는 바와 같이, 그것이 시간에 걸쳐 변화될 수도 있다고 하더라도, 영 ('0') 으로 설정되어야 한다. 비트 3 내지 0 은 각각의 픽셀에 존재할 수 있는 그레이 스케일 비트의 최대 개수를 정의한다. 이러한 4 개의 비트는 각각의 픽셀이 1 내지 15 비트로 구성되도록 특정하는 것을 가능하게 한다. 값이 0 이면, 단색의 포맷은 스케일링된 비디오 스트림에 의해 지원되지 않는다.
예약 1 필드 (여기에서 1 바이트) 는 스케일링된 비디오 스트림 패킷 정보 또는 데이터에 관련된 값을 제공하는데 있어서의 장래의 사용을 위해 예약된다. 그러므로, 현재, 이 필드에 있는 모든 비트가 로직 '0' 으로 설정된다. 이 필드의 일 목적은 모든 후속 2-바이트 필드로 하여금 16-비트 워드 어드레스에 정렬하게 하고 4-바이트 필드로 하여금 32-비트 워드 어드레스에 정렬하도록 하는 것이다.
2-바이트 Y Cb Cr 용량 필드는 Y Cb Cr 포맷으로 디스플레이 될 수 있는 해상도의 비트 수를 특정하는 값을 포함한다. 스케일링된 비디오 스트림이 Y Cb Cr 포맷을 이용할 수 없으면, 이 값은 0 이다. Y Cb Cr 용량 워드는 3 개의 별도의 무부호 값 : Cr 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 3 내지 0; Cb 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 7 내지 4; Y 샘플을 특정하는 비트의 최대 개수를 정의하는 비트 11 내지 8 로 구성되고, 비트 15 내지 12 는 장래의 사용을 위해 예약되고 일반적으로 0 으로 설정된다.
1-바이트 용량 비트 필드는 스케일링된 비디오 스트림과 관련된 용량을 특정하는 플래그 세트를 포함한다. 플래그는 다음과 같다. 비트 0 은 패킹된 포맷으로 존재할 수 있는 스케일링된 비디오 스트림 패킷의 픽셀 데이터를 커버하도록 정의된다. 패킹된 픽셀 및 바이트-정렬된 픽셀 데이터의 예를 도 12 에 나타낸다. 비트 1 은 장래의 사용을 위해 예약되고 일반적으로 0 으로 설정된다. 비트 2 는 장래의 사용을 위해 예약되고 0 으로 설정된다. 비트 3 은 컬러 맵 데이터 포맷에서 특정될 수 있는 스케일링된 비디오 스트림을 커버한다. 동일한 컬러 맵 표는 메인 이미지 버퍼 및 알파-커서 이미지 평면을 위해 이용된 것과 같이, 스케일링된 비디오 스트림을 위해 이용된다. 컬러 맵은 다른 곳에서 설명된 컬러 맵 패킷을 이용하여 구성되며, 비트 7 내지 4 는 장래 사용을 위해 예약되고 일반적으로 0 으로 설정된다.
예약 2 필드 (여기에서 1 바이트) 는 스케일링된 비디오 스트림 패킷 정보 또는 데이터에 관련된 값을 제공하는데 있어서의 장래의 사용을 위해 예약된다. 그러므로, 현재, 이 필드에 있는 모든 비트는 로직 '0' 으로 설정된다. 이 필드의 일 목적은 모든 후속 2-바이트 필드로 하여금 16-비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드로 하여금 32-비트 워드 어드레스에 정렬하도록 하는 것이다.
37. 스케일링된 비디오 스트림 셋업 패킷
스케일링된 비디오 스트림 셋업 패킷은 스케일링된 비디오 스트림을 정의하는데 이용되며, 클라이언트는 이미지의 버퍼링 및 스케일링을 위해 내부 저장소를 할당하기 위해 정보를 이용한다. 스트림은, 0 과 동일한 X 이미지 사이즈 및 Y 이미지 사이즈 필드를 가진 이 패킷을 송신함으로서 할당되지 않을 수도 있다. 할당되지 않았던 스케일링된 비디오 스트림은 동일하거나 상이한 스트림 파라미터로 재할당될 수도 있다. 일 실시형태에서, 클라이언트는, 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트의 143 의 파라미터 값을 이용하여, 그리고 스케일링된 비디오 스트림 용량 패킷의 스트림 필드의 최대 개수의 0 이 아닌 값을 이용함으로써, 스케일링된 비디오 스트림 셋업 패킷을 지원할 수 있는 능력을 나타낸다.
스케일링된 비디오 스트림 셋업 패킷의 포맷은 일반적으로 도 80 에 도시된다. 도 80 에서 볼 수 있는 바와 같이, 일 실시형태에서 스케일링된 비디오 스트림 셋업 패킷은 패킷 길이, 패킷 타입, h클라이언트, 스트림 ID, 시각적 데이터 포맷 디스크립터, 픽셀 데이터 속성, X 좌측 에지, Y 상부 에지, X 우측 에지, Y 하부 에지, X 이미지 사이즈, Y 이미지 사이즈 및 CRC 필드를 갖도록 구성된다.
2-바이트 패킷 길이 필드는 패킷 길이 필드를 포함하지 않는 패킷의 총 바이트 넘버를 규정한다. 일 실시형태에서, 이러한 패킷 길이는 24 로 고정된다. 2-바이트 패킷 타입 필드는 스케일링된 비디오 스트림 셋업 패킷으로서 패킷을 식별하기 위해 값 136 을 사용한다. 알려진 바와 같이, 2-바이트 h클라이언트ID 필드는 클라이언트 ID 로서 장래에 사용하기 위해 예약되고, 일시적으로 또는 프로토콜 사용자가 어떤 ID 값이 사용될지를 결정하기까지, 일반적으로 모든 비트가 로직-0 값으로 설정된다.
스트림 ID 필드는 스트림 ID 를 위한 고유 식별자를 특정하는 2 바이트를 사용한다. 이 값은 호스트에 의해 할당되며, 클라이언트 용량 패킷에서 특정되는 0 으로부터 최대 스트림 ID 값 중에 존재해야 한다. 호스트는 각각의 활성 스트림이 고유의 값을 할당받도록, 그리고 더 이상 활성이 아닌 스트림은 할당되지 않거나 재할당되는 것을 보장하도록, 스트림 ID 값을 주의깊게 처리해야 한다.
일 실시형태에서, 비디오 데이터 포맷 디스크립터 필드는, 현재 패킷의 현재 스트림의 픽셀 데이터에 각각의 픽셀의 포맷을 특정하는 2 바이트를 사용한다. 픽셀 데이터 포맷은 알파-커서 이미지 용량 패킷에서 정의되는 것과 같이, 알파-커서 이미지 평면을 위한 유효 포맷 중에서 적어도 하나에 부합하여야 한다. 비디오 데이터 포맷 디스크립터는 단지 현재의 패킷을 위해서만 픽셀을 정의하고, 일정한 포맷이 특별한 비디오 스트림의 존속 기간을 위해 계속하여 이용될 것임을 내포하지는 않는다. 도 11 은 비디오 데이터 포맷 디스크립터가 어떻게 코딩되는지에 대한 일 실시형태를 나타내며, 다른 패킷에 대해 전술한 바와 같다.
2-바이트 픽셀 데이터 속성 필드는 다음과 같이 해석되는 값을 갖는다.
비트 1 및 0 은 픽셀 데이터가 라우팅될 디스플레이를 선택한다.
비트 [1:0] = 11 또는 00 - 데이터가 양쪽 눈에 디스플레이된다.
비트 [1:0] = 10 - 데이터가 단지 좌측 눈에만 라우팅된다.
비트 [1:0] = 01 - 데이터가 단지 우측 눈에만 라우팅된다.
비트 2 는 픽셀 데이터가 인터레이스 (interlace) 포맷으로 존재하는지 여부를 나타낸다. 비트 2 가 0 인 경우에, 픽셀 데이터는 표준 진행 (progressive) 포맷이다. 행 넘버 (픽셀 Y 좌표) 는 하나의 열에서 다음 열로 진행할 때 1 씩 증가한다. 비트 2 가 1 인 경우에, 픽셀 데이터는 인터레이스 포맷이다. 행 넘버 (픽셀 Y 좌표) 는 하나의 열에서 다음 열로 진행할 때, 2 씩 증가한다.
비트 3 은 픽셀 데이터가 교대 픽셀 포맷인지 여부를 나타낸다. 이는 비트 2 에 의해 인에이블되는 표준 인터레이스 모드와 유사하지만 인터레이싱은 수평적이지 않고 수직적이다. 비트 3 은 0 인 경우에, 픽셀 데이터가 표준 진행 포맷으로 존재한다. 열 넘버 (픽셀 X 좌표) 는 연속적인 픽셀 각각이 수신될 때 1 씩 증가한다. 비트 3 은 1 인 경우에, 픽셀 데이터는 교대 픽셀 포맷으로 존재한다. 행 넘버 (픽셀 X 좌표) 는 각 픽셀이 수신될 때 2 씩 증가한다.
픽셀 4 는 픽셀 데이터가 디스플레이 또는 카메라와 관련되는지 여부를 나타낸다. 비트 4 는 0 인 경우에, 픽셀 데이터는 디스플레이 프레임 버퍼로 또는 버퍼로부터의 것이다. 비트 4 는 1 인 경우에, 픽셀 데이터는 카메라로 또는 카메라로부터의 것이다. 비트 5 는 장래의 사용을 위해 예약되며 일반적으로 0 으로 설정된다.
비트 7 및 6 은 픽셀 데이터가 기록될 프레임 버퍼를 특정하는 디스플레이 업데이트 비트이다. 프레임 업데이트 비트의 효과를 더 자세하게 설명한다. 비트 [7:6] 이 '01' 인 경우에, 픽셀 데이터는 오프라인의 이미지 버퍼에 기록된다. 비트 [7:6] 이 '00' 인 경우에, 픽셀 데이터는 디스플레이를 리프레시하는데 이용되는 이미지 버퍼에 기록된다. 비트 [7:6] 이 '11' 인 경우에, 픽셀 데이터는 모든 이미지 버퍼에 기록된다. 비트 [7:6] 이 '10' 인 경우에, 이는 무효값으로서 다루어진다. 이러한 비트들은 장래 사용을 위해 현재로서는 예약된다. 이런 상황에서, 픽셀 데이터는 어떤 이미지 버퍼에도 기록되지 않고 무시될 것이다.
비트 8 내지 15 는 장래의 사용을 위해 예약되고 일반적으로 로직-0 레벨 또는 값으로 설정된다.
2-바이트 X 좌측 에지, Y 상부 에지, X 우측 에지, Y 하부 에지 필드는 각각, 좌측 에지의 X 좌표, 상부 에지의 Y 좌표, 우측 에지의 X 좌표 및 수신지 이미지의 하부 에지를 규정한다. 2-바이트 X 이미지 사이즈 및 Y 이미지 사이즈 필드는 소스 이미지의 폭 및 높이를 각각 규정한다. 또한, CRC 필드는 패킷 길이를 포함하는 패킷에서의 모든 바이트의 CRC 를 포함한다.
38. 스케일링된 비디오 스트림 확인응답 패킷
스케일링된 비디오 스트림 확인응답 패킷은 클라이언트로 하여금 스케일링된 비디오 스트림 셋업 패킷의 수신을 확인응답하게 한다. 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트의 143 의 파라미터 값을 통해, 그리고 스케일링된 비디오 스트림 용량 패킷의 스트림 필드의 최대 넘버의 0 이 아닌 값을 통해 스케일링된 비디오 스트림 확인응답 패킷을 지원할 수 있는 클라이언트의 능력을 나타낼 것이다.
스케일링된 비디오 스트림 확인응답 패킷의 포맷이 일반적으로 도 81 에 도시된다. 도 81 에 도시된 바와 같이, 일 실시형태에서 스케일링된 비디오 스트림 확인응답 패킷은 패킷 길이, 패킷 타입, c클라이언트, 스트림ID, ACK 코드 및 CRC 필드를 갖도록 구성된다. 2-바이트 패킷 길이 필드는, 패킷 길이 필드를 제외하고, 이러한 패킷 타입에 대해 값 10 을 갖는 총 바이트 넘버를 규정하는데 이용되는 반면, 137 의 패킷 타입은 패킷을 스케일링된 비디오 스트림 확인응답 패킷으로서 식별한다.
2-바이트 c클라이언트 ID 필드는 클라이언트 ID 를 위한 장래 사용을 위해 예약되고, 일반적으로 0 으로 설정된다. 2-바이트 스트림 ID 필드는 스트림 ID 에 대한 고유 식별자를 규정한다. 이것은 스케일링된 비디오 스트림 셋업 패킷에서 호스트에 의해 할당된 동일한 값이다.
2-바이트 Ack 코드 필드는 특정 스케일링된 비디오 스트림의 업데이트의 시도의 결과를 설명하는 코드를 포함하는 값을 제공한다. 일 실시형태에서, 코드는 다음과 같이 정의된다.
0 - 스트림 할당 시도는 성공적이다.
1 - 스트림 비할당 시도는 성공적이다.
2 - 이미 할당되었던 스트림 ID 를 할당하기 위한 무효 시도.
3 - 이미 할당되지 않은 스트림 ID 를 할당되지 않게 하기 위한 무효 시도.
4 - 클라이언트가 스케일링된 비디오 스트림을 지원하지 않는다.
5 - 스트림 파라미터는 클라이언트의 용량과 일치되지 않는다.
6 - 클라이언트에 의해 허용된 최대 값보다 더 큰 스트림 ID.
7 - 특정 스트림을 할당하기 위한 클라이언트의 이용가능한 불충분 리소스.
2-바이트 CRC 필드는 패킷 길이를 포함하는 패킷에서 모든 바이트의 CRC 를 포함한다.
39. 스케일링된 비디오 스트림 패킷
스케일링된 비디오 스트림 패킷은 특정한 스케일링된 비디오 스트림과 관련된 픽셀 데이터를 전송하기 위해 이용된다. 이 패킷에 의한 영역 참조의 사이즈는 스케일링된 스트림 셋업 패킷에 의해 정의된다. 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트의 143 의 파라미터 값을 통해, 그리고 스케일링된 비디오 스트림 확인응답 패킷의 Ack 코드 필드의 성공적인 스케일링된 비디오 스트림 할당을 이용하여 스케일링된 비디오 스트림 패킷을 지원할 수 있는 클라이언트의 능력을 나타낼 수 있다.
스케일링된 비디오 스트림 패킷의 일 실시형태의 포맷이 일반적으로 도 82 에 도시된다. 도 82 에 도시된 바와 같이, 스케일링된 비디오 스트림 패킷은 패킷 길이, 패킷 타입, h클라이언트ID, 스트림ID, 파라미터 CRC, 픽셀 카운트, 픽셀 데이터 및 픽셀 데이터 CRC 필드를 갖도록 구성된다. 2-바이트 패킷 타입 필드는 패킷을 스케일링된 비디오 스트림 패킷으로서 식별하기 위하여 값 18 을 이용한다. h클라이언트 ID 필드는 클라이언트 ID 를 위해 예약되고, 일반적으로 0 으로 설정된다. 그 전에, 2-바이트 스트림 ID 필드는 스트림 ID 를 위한 고유 식별자를 규정한다. 이러한 값은 스케일링된 비디오 스트림 셋업 패킷에서 호스트에 의해 규정되고, 스케일링된 비디오 스트림 확인응답 패킷에서 확인된다.
2-바이트 픽셀 카운트 필드는 이하의 픽셀 데이터 필드에서 픽셀의 넘버를 규정한다. 2-바이트 파라미터 CRC 필드는 패킷 길이로부터 픽셀 카운트까지 모든 바이트의 CRC 를 갖는다. 이러한 CRC 가 체크할 수 없다면, 모든 패킷이 폐기된다. 2-바이트 픽셀 데이터 필드는 스케일링되고, 그 후에 디스플레이될 미가공 비디오 정보를 포함한다. 데이터는 비디오 데이터 포맷 디스크립터 필드에 의해 설명된 방식으로 포맷된다. 데이터는 미리 규정된 바와 같이, 한 번에 한 행씩 전송된다.
2-바이트 픽셀 데이터 CRC 필드는 단지 픽셀 데이터의 CRC 를 포함한다. 이러한 CRC 가 체크될 수 없다면, 픽셀 데이터가 여전히 이용될 수 있지만, CRC 에러 카운트는 증가한다.
40. 요청 특정 상태 패킷
요청 특정 상태 패킷은 호스트로 하여금 클라이언트가 이 패킷에 특정된 것과 같이 호스트에 용량 또는 상태 패킷을 송신하기를 요청하는 수단, 메커니즘 또는 방법을 제공한다. 클라이언트는 다음 역방향 링크 캡슐화 패킷에서 특정 타입의 패킷을 반환한다. 클라이언트가 요청 특정한 상태 패킷에 대하여 응답하기 위한 용량을 갖는다면, 클라이언트는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 17을 설정할 것이다. 클라이언트는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 21 을 이용하여 요청 특정 상태 패킷을 지원할 수 있는 능력을 나타낼 수 있다.
요청 특정 상태 패킷의 일 실시형태의 포맷이 일반적으로 도 83 에 도시된다. 도 83 에 도시한 바와 같이, 요청 특정 상태 패킷은 패킷 길이, 패킷 타입, h클라이언트ID, 상태 패킷 ID 및 CRC 필드를 갖도록 구성된다. 패킷 길이 필드는 패킷 길이 필드를 포함하지 않는 패킷에서 바이트의 총 넘버를 특정하고, 이러한 패킷 타입에 대해서는 일반적으로 값 10 으로 고정된다. 패킷 타입 138 은 패킷을 요청 특정 상태 패킷으로서 식별한다. h클라이언트ID 필드 (2 바이트) 는 클라이언트 ID 를 위한 장래의 사용을 위해 예약되고, 현재는 0 으로 설정되는 한편, 2-바이트 상태 패킷 ID 필드는, 클라이언트가 호스트로 전송하려고 하는 용량 또는 상태 패킷의 타입을 특정한다. 통상적인 패킷 타입은 다음과 같다.
66 - 클라이언트 용량 패킷이 클라이언트에 의해 전송된다.
133 - 알파-커서 이미지 용량 패킷이 클라이언트에 의해 전송된다.
139 - 클라이언트가 전송할 수 있는 용량 및 상태 패킷의 정확한 타입을 식별하는 유효 상태 응답 리스트 패킷이 전송된다.
140 - 패킷 프로세싱 지연 파라미터 패킷이 클라이언트에 의해 전송된다.
141- 개인 클라이언트 용량 패킷이 클라이언트에 의해 전송된다.
142 - 클라이언트 에러 보고 패킷이 클라이언트에 의해 전송된다.
143 - 스케일링된 비디오 스트림 용량 패킷이 클라이언트에 의해 전송된다.
144 - 클라이언트 식별 패킷이 클리이언트에 의해 전송된다.
56 내지 63 은 제조자-특정 용량 및 상태 식별자를 위해 이용될 수 있다.
CRC 필드는 패킷 길이를 포함하는 패킷의 모든 바이트의 CRC 를 다시 포함한다.
41. 유효 상태 응답 리스트 패킷
유효 상태 응답 리스트 패킷은 클라이언트가 응답할 용량을 갖는 상태 및 용량 패킷의 리스트를 갖는 구성, 수단 또는 방법을 호스트에게 제공한다. 클라이언트는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 21 을 이용하여 유효 상태 응답 리스트 패킷을 지원할 수 있는 능력을 표시할 수 있다.
유효 상태 응답 리스트 패킷의 일 실시형태의 포맷이 일반적으로 도 84 에 도시된다. 도 84 에 도시한 바와 같이, 유효 상태 응답 리스트 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, 리스트의 값 넘버, 유효 파라미터 응답 리스트 및 CRC 필드를 갖도록 구성된다. 이러한 타입의 패킷에 대한 패킷 길이는 일반적으로 값 10 으로 고정되고, 타입 값 139 는 패킷을 유효 상태 응답 패킷으로서 식별한다. c클라이언트ID 는 클라이언트 ID 로서 장래에 이용하기 위해 예약되고, 일반적으로 0 으로 설정된다. 리스트 필드의 2-바이트 넘버 값은 후속하는 유효 파라미터 응답 리스트에서 항목 넘버를 특정한다.
유효 파라미터 응답 리스트 필드는 클라이언트가 호스트로 송신할 수 있는 용량 또는 상태 패킷의 타입을 특정하는 2 바이트 파라미터의 리스트를 포함한다. 클라이언트가 요청 특정 상태 패킷에 대하여 (디스플레이 용량 패킷의 디스플레이 특성 용량 표시자 필드의 비트 21 을 이용하여) 응답할 수 있음을 나타내면, 적어도 디스플레이 용량 패킷 (패킷 타입 == 66) 및 유효 상태 응답 리스트 패킷 (패킷 타입 ==139) 를 항상 송신할 수 있을 것이다. 이 리스트에 포함될 수도 있는 패킷 타입과 그 의미는 다음과 같다. 일 실시형태를 위한 각각의 할당에 따라, 클라이언트에 의해 전송될 수 있고, 이러한 리스트에 포함될 수도 있는 패킷 타입은 다음과 같다.
66 - 클라이언트 용량 패킷
133 - 알파-커서 이미지 용량 패킷
139 - 클라이언트가 송신할 수 있는 용량 및 상태 패킷의 정확한 타입을 식별하는 유효 상태 응답 리스트 패킷
140 - 패킷 프로세싱 지연 파라미터 패킷
141 - 개인 디스플레이 용량 패킷
142 - 클라이언트 에러 보고 패킷
143 - 스케일링된 비디오 스트림 용량 패킷
144 - 클라이언트 식별 패킷
패킷 타입 56 내지 63 은 제조자-특정 용량 및 상태 식별자를 위해 이용될 수 있다.
CRC 필드는 패킷 길이를 포함하는 패킷의 모든 바이트의 CRC 를 포함한다.
42. 패킷 프로세싱 지연 파라미터 패킷
패킷 프로세싱 지연 파라미터 패킷은 호스트로 하여금 특정 패킷 타입의 수신과 관련된 프로세싱을 완성하기 위해 요구되는 시간을 계산하도록, 파라미터 세트를 제공한다. 호스트에 의해 송신된 일부 명령은 제로 시간에서 클라이언트에 의해 완성될 수 없다. 호스트는 소정의 기능들이 클라이언트에 의해 완성되었는지 여부를 결정하기 위해 클라이언트 요청 및 상태 패킷의 상태 비트를 폴링할 수도 있으며, 또는 호스트는 패킷 프로세싱 지연 파라미터 패킷에서 클라이언트에 의해 돌려받은 파라미터들을 이용하여 완성 시간을 계산할 수도 있다. 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트의 140 의 파라미터 값을 이용하여 패킷 프로세싱 지연 파라미터 패킷을 지원할 수 있는 능력을 나타낼 수 있다.
패킷 프로세싱 지연 파라미터 패킷의 일 실시형태의 포맷이 일반적으로 도 85a 에 도시된다. 도 85a 에 도시된 바와 같이, 패킷 프로세싱 지연 파라미터 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, 리스트 항목의 넘버, 지연 파라미터 리스트 및 CRC 필드를 갖도록 구성된다. 이러한 타입의 패킷에 대한 패킷 길이는 일반적으로 값 10 으로 고정되고, 타입값 140 은 패킷을 패킷 프로세싱 지연 파라미터 패킷으로서 식별한다. c클라이언트 ID 필드는 클라이언트 ID 로서 장래에 사용하기 위해 예약되고, 일반적으로 0 으로 설정된다. 리스트 항목의 2-바이트 넘버는 후속하는 유효 파라미터 응답 리스트에서 항목 넘버를 특정한다.
지연 파라미터 리스트 필드는 하나 이상의 지연 파라미터 리스트 항목을 포함하는 리스트이다. 단독 지연 파라미터 리스트 항목에 대한 일 실시형태의 포맷이 도 85b 에 도시되는데, 여기에서 지연에 대한 패킷 타입, 픽셀 지연, 수평 픽셀 지연, 수직 픽셀 지연 및 고정된 지연 필드가 도시된다.
각각의 지연 파라미터 리스트 항목은 일반적으로 6 바이트 길이가 되도록 제한되고, 다음과 같이 추가적으로 규정된다. 지연 필드에 대한 2-바이트의 패킷 타입은 후속하는 지연 파라미터가 적용되는 패킷 타입을 특정한다. 픽셀 지연 필드 (1 바이트) 는 지연값에 대한 인덱스를 포함한다. 표로부터 판독된 값은 패킷의 수신지 필드이 픽셀의 총 개수로 곱해진다. 픽셀의 총 개수는 패킷에 의해 참조된 비트맵의 수신지 영역의 높이와 폭의 곱이다. 1-바이트의 수평 픽셀 지연 필드는 지연값 표 (DPVL 과 동일한 표) 에 대한 인덱스인 값을 포함한다. 표로부터 판독된 값은 패킷의 수신지 필드의 (픽셀의) 폭으로 곱해진다. 1-바이트의 수직 픽셀 지연 필드는 지연값 표 (일반적으로 DPVL 과 동일한 표를 사용함) 에 대한 인덱스인 값을 포함한다. 표로부터 판독된 값은 패킷의 수신지 필드의 (픽셀의) 높이로 곱해진다.
고정 지연 필드는 지연값 표 (DPVL 과 동일한 표) 에 대한 인덱스로서 1 바이트를 사용한다. 표로부터 판독된 값은 패킷에서 특정된 임의의 파라미터 값과 관련되지 않는 패킷을 프로세싱하는데 요구되는 시간을 표현하는 고정된 지연 파라미터이다. 총 지연, 또는 패킷 프로세싱 완료 시간 지연은 다음의 관계에 따라 결정된다.
지연 = (패킷 프로세싱 지연 (픽셀 지연)·총 픽셀들) +
(패킷 프로세싱 지연 (수평 픽셀 지연)·폭) +
(패킷 프로세싱 지연 (수직 픽셀 지연)·높이) +
패킷 프로세싱 지연 (고정 지연)
몇몇 패킷에 대하여서는, 총 픽셀들, 폭, 또는 높이는 그 파라미터들이 대응하는 패킷에서 참조되지 않았기 때문에 적용되지 않는다. 이러한 경우, 대응하는 픽셀 지연 파라미터는 일반적으로 0 으로 설정된다.
43. 개인 디스플레이 용량 패킷
개인 디스플레이 용량 패킷은, 헤드-마운트 디스플레이 또는 디스플레이 안경과 같은 개인 디스플레이 장치의 용량을 기술하는 파라미터 세트를 제공한다. 이는 호스트로 하여금, 클라이언트의 특정 용량에 따라 디스플레이 정보를 커스터마이즈하는 것을 가능하게 한다. 반면에 클라이언트는, 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트에서 대응되는 파라미터를 이용함으로써 개인 디스플레이 용량 패킷을 전송하는 능력을 나타낸다.
개인 디스플레이 용량 패킷에 대한 일 실시형태의 포맷이 일반적으로 도 86 에 도시된다. 도 86 에 도시한 바와 같이, 개인 디스플레이 용량 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, 서브-픽셀 레이아웃, 픽셀 형태, 뷰의 수평필드, 뷰의 수직필드, 비쥬얼 축 교차, 좌/우측 이미지, 시 쓰루 (See Through), 최대 휘도, 광학적 용량, 최소 IPD, 최대 IPD, 곡률 리스트 필드의 포인트 및 CRC 필드를 갖도록 구성된다. 일 실시형태에서, 패킷 길이 필드값은 68 로 고정된다. 패킷 타입값 141 은 패킷을 개인 디스플레이 용량 패킷으로서 식별한다. c클라이언트ID 필드는 장래 사용을 위해 예약되고, 현재는 일반적으로 0 으로 설정된다.
서브-픽셀 레이아웃 필드는 다음의 값을 이용하여 상부에서 하부로, 좌측에서 우측으로 서브-픽셀의 물리적 레이아웃을 특정한다. 서브 픽셀 레이아웃이 정의되지 않았음을 나타내는 0; 적색, 녹색, 청색 스트립을 나타내는 1; 청색, 녹색, 적색 스트라이프를 나타내는 2; 상부 좌측에 적색, 하부 우측에 청색, 하부 좌측 및 상부 우측에 하나씩으로 두개의 녹색 서브 픽셀의 2 x 2 서브 픽셀 배치를 갖는 쿼드 픽셀 (quad-pixel) 을 나타내는 3; 하부 좌측에 적색, 상부 우측에 청색, 상부 좌측 및 하부 우측에 하나씩으로 두개의 녹색 서브 픽셀의 2 x 2 배치를 갖는 쿼드 픽셀을 나타내는 4; 델타 (트라이어z드) 를 나타내는 5; 적색, 녹색, 및 청색으로 중첩된 모자이크 (예를 들어 필드 시퀀셜 컬러를 갖는 LCOS 디스플레이) 를 나타내는 6; 장래의 사용을 위해 일반적으로 예약된 7 내지 255.
픽셀 형상 필드는, 다음의 값을 이용하여, 특정 구성의 서브 픽셀로 이루어지는 각각의 픽셀의 형상을 특정한다. 서브 픽셀 형상이 정의되지 않음을 나타내는 0; 라운드를 나타내는 1; 정사각형을 나타내는 2; 직사각형을 나타내는 3; 타원형 (oval) 을 나타내는 4; 타원 (elliptical) 을 나타내는 5; 그리고 당업자에게 이해될 수 있는 바와 같이, 원하는 형상을 나타내는데 장래에 이용되도록 예약된 6 내지 255.
1-바이트의 뷰의 수평 필드 (HFOV) 는 0.5 도 증가에서 뷰의 수평 필드를 특정 (예를 들어, HFOV 가 30 도이면, 이 값은 60) 한다. 이 값이 0 이면 HFOV 는 특정되지 않는다.
1-바이트의 뷰의 수직 필드 (VFOV) 는 0.5 도 증가에서 뷰의 수직 필드를 특정 (예를 들어, VFOV 가 30 도이면, 이 값은 60) 한다. 이 값이 0 이면 VFOV 는 특정되지 않는다.
1-바이트의 비주얼 축 교차 (Visual Axis Crossing) 필드는 0.01 디옵터 (1/m) 증가에서 비주얼 축 교차를 특정 (예를 들어, 비주얼 축 교차가 2.22 미터이면, 이 값은 45) 한다. 이 값이 0 이면 비주얼 축 교차는 특정되지 않는다 {주: 이 파라미터의 특정은 대부분의 애플리케이션에서 요구되는 범위에 적합한가?}.
1-바이트의 좌측/우측 이미지 오버랩 필드는 좌측 및 우측 이미지의 오버랩의 퍼센티지를 특정한다. 이미지 오버랩의 허용가능한 퍼센트 범위는 1 내지 100 이다. 101 내지 255 의 값은 유효하지 않으며, 일반적으로 사용되지 않는다. 이 값이 0 이면 이미지 오버랩은 특정되지 않는다.
1-바이트의 시-스루 (See Through) 필드는 이미지의 시-스루 퍼센티지를 특정한다. 시-스루의 허용가능한 퍼센트 범위는 0 내지 100 이다. 101 내지 254 의 값은 유효하지 않으며 이용되지 않을 것이다. 이 값이 255 이면 시-스루 퍼센티지는 특정되지 않는다. 1-바이트의 최대 휘도 필드는 20 니트 (nits) 의 증가에서 최대 밝기를 특정 (예를 들어 최대 밝기가 100 니트이면, 이 값은 5) 한다. 이 값이 0 이면 최대 휘도는 정의되지 않는다.
2-바이트의 광학 용량 플래그 필드는 디스플레이의 광학 용량을 특정하는 다양한 필드를 포함한다. 이러한 비트값은 일반적으로 다음과 같이 할당된다.
비트 15 내지 5 는 장래의 사용을 위해 예약되며, 일반적으로 0 으로 설정된다.
비트 4 는 안경 포커스 조정 (Eye Glass Focus Adjustment) 을 선택하는데, 디스플레이가 안경 포커스 조정을 갖지 않음을 의미하는 '0' 값 및 디스플레이가 안경 포커스 조정을 가짐을 의미하는 '1' 값을 갖는다.
비트 3 내지 2 는 쌍안 기능 (Binocular Function) 을 선택하는데, 0 값은 디스플레이가 쌍안용이며 2 차원 (2D) 이미지만을 디스플레이할 수 있음을 의미하고; 2 값은 디스플레이가 단안용 (monocular) 임을 의미하고; 3 은 장래의 사용을 위해 예약된다.
비트 1 내지 0 은 좌측-우측 필드 곡률 대칭을 선택하는데, 필드 곡률이 규정되지 않음을 의미하는 0 값을 갖는다. 이 필드가 0 이면, A1 내지 E5 로부터의 모든 필드 곡률 값은 포인트 C3 를 제외하고는 0 으로 설정될 것이며, 포인트 C3 는 디스플레이의 초점 거리를 특정하거나 0 으로 설정되어 초점 거리가 특정되지 않았음을 나타낸다. 1 값은 좌측 및 우측 디스플레이가 동일한 대칭을 갖음을 의미하고, 2 값은 좌측 및 우측 디스플레이는 수직 축 상 (열 C) 에 미러링 (mirroring) 됨을 의미하고, 3 은 장래의 사용을 위해 예약된다.
1-바이트의 최소 동공간 거리 (IPD) 필드는 밀리미터 (mm) 로 최소 동공간 (inter-pupillary) 거리를 특정한다. 이 값이 0 이면 최소 동공간 거리는 특정되지 않는다. 1-바이트의 최대 동공간 거리 (IPD) 필드는 밀리미터 (mm) 로 최대 동공간 (inter-pupillary) 거리를 특정한다. 이 값이 0 이면 최대 동공간 거리는 특정되지 않는다.
필드 곡률 리스트의 포인트 필드는 1 내지 65535 의 범위로 천분의 1 디옵터 (1/m) 의 초점 거리를 특정 (예를 들어, 1 은 0.001 디옵터이고 65535 는 65.535 디옵터) 하는 25 개의 2 바이트 파라미터들의 리스트를 포함한다. 필드 곡률 포인트 리스트의 25 구성요소는 아래에 나타난 바와 같이 A1 내지 E5 로 표시되어 있다. 포인트들은 디스플레이의 액티브 영역에 걸쳐 균일하게 분포될 것이다. 열 C 는 디스플레이의 수직 축에 대응하며, 행 3 (row 3) 은 디스플레이의 수평 축에 대응한다. 열 A 및 E 는 디스플레이의 좌측 및 우측 에지에 각각 대응한다. 그리고, 행 1 및 5 는 디스플레이의 상부 및 하부 에지에 각각 대응한다. 리스트에서 25 포인트의 순서는, A1, B1, C1, D1, E1, A2, B2, C2, D2, E2, A3, B3, C3, D3, E3, A4, B4, C4, D4, E4, A5, B5, C5, D5, E5 이다.
Figure 112006033870809-PCT00002
CRC 필드는 패킷 길이를 포함하는 패킷으 모든 바이트의 CRC 를 포함한다.
44. 클라이언트 에러 보고 패킷
클라이언트 에러 보고 패킷은 클라이언트로 하여금 호스트에 동작 에러의 리스트를 제공하는 것을 허용하는 메커니즘 또는 수단으로 작용한다. 클라이언트는, 호스트로부터 특정 명령을 받는 결과로서 그 통상적으로의 동작 중에 넓은 범위의 로류를 검출할 수도 있다. 이러한 에러들의 예는: 클라이언트가 지원하지 않는 모드로 동작하도록 명령받는 것, 클라이언트의 용량의 범위를 초과하거나 넘어서는 특정 파라미터를 포함하는 패킷을 수신하는 것, 부적절한 시퀀스의 모드에 진입하도록 명령받는 것을 포함할 수 있다. 클라이언트 에러 보고 패킷은 통상의 동작에서 에러를 검출하도록 이용될 수 있지만, 시스템 설계자 및 통합자가 호스트 및 클라이언트 시스템의 개발 및 통합에서의 문제를 진단하는데 가장 유용하다. 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트에서 142 의 파라미터 값을 이용하여 클라이언트 에러 보고 패킷을 전송하는 그 능력을 나타낸다.
클라이언트 에러 보고 패킷에 대한 일 실시형태의 포맷이 도 87a 데 일반적으로 도시된다. 도 87a 에 도시된 바와 같이, 클라이언트 에러 보고 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, 리스트 항목의 넘버, 에러 코드 리스트 및 CRC 필드를 갖도록 구성된다. 142 의 패킷 타입값은 패킷을 클라이언트 에러 보고 패킷으로서 식별한다. c클라이언트 ID 필드는 장래 사용을 위해 예약되고, 현재는 일반적으로 0 으로 설정된다. 리스트 항목 필드 (2 바이트) 의 넘버는 후속하는 에러 코드 리스트에서 항목 넘버를 특정한다. 에러 코드 리스트 필드 (여기에서 8 바이트) 는 하나 이상의 에러 보고 리스트 항목을 포함하는 리스트이다. 단독 에러 보고 리스트 항목의 포맷이 도 87b 에 도시된다.
일 실시형태에서, 각각의 에러 보고 리스트 항목은 정확히 4 바이트 길이이며, 일실시형태에서 다음의 구조를 가진다: 보고되는 에러의 타입을 특정하는 2 바이트 디스플레이 에러 코드 필드, 클라이언트 에러 코드 패킷에 의해 정의되는 에러에 관한 상위 레벨 세부 사항을 특정하는 2 바이트 에러 서브 코드 필드. 각각의 클라이언트 에러 코드의 특정 정의는 클라이언트의 제조자에 의해 정의된다. 에러 서브 코드는 매 디스플레이 에러 코드에 대하여 정의될 필요는 없으며, 에러 서브 코드가 정의되지 않은 경우에 대하여, 그 값은 0 이다. 각각의 에러 서브 코드의 특정 정의는 클라이언트의 제조자에 의해 정의된다.
45. 디스플레이 식별 패킷
클라이언트 식별 패킷은, 요청 특정 상태 패킷에 응답하여 클라이언트가 식별 데이터를 반환하는 것을 허용한다. 일실시형태에서, 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트에서 144 의 파라미터값을 이용하여 클라이언트 식별 패킷을 전송하는 능력을 나타낸다. 이 데이터를 클라이언트로부터 판독함으로써 클라이언트 디바이스의 제조자 이름 및 모델 번호를 결정하는 것은 호스트에게 유용하다. 이 정보는, 클라이언트 용량 패킷에 기술되지 않은 특별한 용량을 클라이언트가 갖는지 판단하는데 이용될 수 있다. 클라이언트로부터 식별 정보를 판독하는데에는 잠재적으로 두 가지 방법, 수단, 또는 메커니즘이 있다. 하나는, 베이스 EDID 구조에서와 유사한 필드를 포함하는 클라이언트 용량 패킷의 이용을 통한 것이다. 다른 방법은, 클라이언트 용량 패킷에서 유사한 필드에 비교되는 정보의 더 풍부한 세트를 포함하는 클라이언트 식별 패킷의 이용을 통한 것이다. 이는, 호스트가 3-캐릭터 EISA 코드에 할당되지 않은 제조자를 식별하는 것을 허용하고, 시리얼 넘버가 알파뉴메릭 캐릭터를 포함하는 것을 허용한다.
클라이언트 식별 패킷에 대한 일 실시형태의 포맷이 일반적으로 도 88 에 도시된다. 도 88 에 도시된 바와 같이, 클라이언트 식별 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, Mfr. 의 주, Mfr. 의 년, Mfr. 의 이름의 길이, 제품명 길이, 시리얼 넘버 길이, 제조자명 스트링, 제품명 스트링, 시리얼 넘버 스트링 및 CRC 필드를 갖도록 구성된다.
2 바이트 패킷 타입 필드는 패킷을 클라이언트 식별 패킷으로서 식별하는 값을 포함한다. 이 값은 일실시형태에서는 144 로 설정된다. c클라이언트 ID 필드 (2 바이트) 는 장래의 클라이언트로의 이용을 위해 다시 예약되고, 일반적으로 0 으로 설정된다. CRC 필드 (2 바이트) 는 패킷 길이를 포함하는 모든 바이트의 16 비트 CRC 를 포함한다.
1 바이트 제조의 주 (Week of Manufacture) 필드는 디스플레이의 제조의 위크를 규정하는 값을 포함한다. 적어도 일 실시예에, 이 값이 그것이 클라이언트에 의해 지원된다면 1에서 53의 범위에 들어간다. 이 필드가 클라이언트에 의해 지원되지 않으면, 그것이 일반적으로 영으로 설정된다. 1 바이트의 제조의 연도 (Year of Manufacture) 필드는 클라이언트 (디스플레이) 의 제조 연도를 규정하는 값을 포함한다. 이 값은 출발 지점으로서 1990 년으로부터 오프셋이지만, 다른 것이 연도에 기초로 이용될 수 있다. 1991에서 2245의 범위에 있는 연도는 이 필드에 의해 나타내질 수 있다. 실시예 : 2003 년은 13의 제조 연도 값에 대응한다. 이 필드가 클라이언트에 의해 지원되지 않으면 이는 0 값으로 설정될 것이다.
Mfr 이름의 길이, 제품명 길이, 시리얼 넘버 필드의 길이는, 각각 임의의 널 종단 또는 널 패드 문자를 포함하는 제조사 이름 문자열 필드의 길이, 임의의 널 종단 또는 널 패드 문자를 포함하는 제품명 길이, 및 임의의 널 종단 또는 널 패드 문자를 포함하는 시리얼 넘버 캐릭터라인란의 길이를 특정하는 2 바이트 값을 포함한다.
제조자 이름 스트링열, 제품명 스트링, 및 시리얼 넘버 스트링은 각각 길이 Mfr 이름, 제품명, 및 시리얼 넘버 필드를 특정하는 가변 수의 바이트를 포함하며, 이들은 각각 제조자, 제품명, 및 디스플레이의 알파뉴메릭 시리얼 넘버를 각각 포함한다. 이러한 스트링의 각각은 하나 이상의 널 문자에 의해 종결된다.
46. 교대 디스플레이 용량 패킷
교대 디스플레이 용량 패킷은 MDDI 클라이언트 제어기에 부착된 교대 디스플레이의 용량을 가리킨다. 그것은 요청 특정 상태 패킷에 응하여 보내진다. 프롬프트되면, 클라이언트 디바이스는, 지원되는 각각의 교대 디스플레이에게 교대 디스플레이 용량 패킷을 보낸다. 클라이언트는 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트로 145의 변수 값을 통해 교대 디스플레이 용량 패킷을 보내는 그 능력을 나타낼 수 있다.
내부 모드에서 작동되는 MDDI 시스템에 대하여, MDDI 클라이언트 제어기와 연결된 디스플레이를 2 개 이상 가지는 것은 일반적일 수 있다. 실시예는 플립의 내부에 큰 디스플레이와 외부에 더 작은 디스플레이를 갖는 휴대 전화 단말기이다. 클라이언트 용량 패킷의 교대 디스플레이 수 필드가 이용되어 둘 이상의 디스플레이가 부착되고 교대 디스플레이 용량 패킷이 각각의 교대 디스플레이의 용량을 보고한다고 리포트한다. 비디오 스트림 패킷이 픽셀 데이터 속성에 4 비트를 포함하여, 클라이언트 디바이스에 각각의 교대 디스플레이를 어드레싱한다.
교대 디스플레이 용량 패킷에 대한 일 실시형태의 포맷이 일반적으로 도 89 에 도시된다. 도 89 에 도시된 바와 같이, 교대 디스플레이 용량 패킷은 패킷 길이, 패킷 타입, c클라이언트ID, 교대 디스플레이 넘버, 예약 1, 비트맵 폭, 비트맵 높이, 디스플레이 윈도우 폭, 디스플레이 윈도우 높이, 컬러맵 RGB 폭, RGB 용량, 단색 용량, 예약 2, Y Cb Cr 용량, 디스플레이 피처 용량, 예약 3 및 CRC 필드를 갖도록 구성된다. 145 의 패킷 타입값은 패킷을 교대 디스플레이 용량 패킷으로서 식별한다. c클라이언트ID 필드는 장래 사용을 위해 클라이언트 ID 를 위해 예약되고, 일반적으로 0 으로 설정된다.
교대 디스플레이 넘버 필드는 0에서 15의 범위에 정수로 교대 디스플레이의 식별성을 나타내기 위해 1 바이트를 사용한다. 첫번째 교대 디스플레이는 통상적으로 넘버 0 으로 표시되고, 다른 교대 디스플레이는, 교대 디스플레이 총수에서 1 을 뺀 것을 가장 큰 값으로 하여, 유일한 교대 디스플레이 개수로 식별될 것이다. 교대 디스플레이의 총 개수에서 1 을 뺀 값보다 더 큰 값은 이용되지 않을 것이다. 실시예 : 주 디스플레이와 MDDI 클라이언트를 연결된 콜러-ID 디스플레이를 갖는 휴대 전화 단말기는 하나의 교대 디스플레이를 가지며, 따라서 콜러 ID 디스플레이의 교대 디스플레이 개수가 영이고, 클라이언트 용량 패킷의 교대 디스플레이의 개수 필드는 1 의 값을 갖는다.
예약 1 필드 (1 바이트) 는 장래 사용을 위해 예약된다. 이 필드에 있는 모든 비트는 0 으로 설정된다. 이 필드의 하나의 목적은 모든 후속 2 바이트 필드가 16 비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드가 32-비트 워드 어드레스에 정렬하도록 하는 것이다.
비트맵 폭 필드는 수많은 픽셀로서 나타내진 비트맵의 폭을 특정하는 2 바이트를 사용한다. 비트맵 높이 필드는 수많은 픽셀로서 나타내진 비트맵의 높이를 특정하는 2 바이트를 사용한다. 디스플레이 윈도우 폭 필드는 수많은 픽셀로서 나타내진 디스플레이 윈도우의 폭을 특정하는 2 바이트를 사용한다. 디스플레이 윈도우 높이 필드는 수많은 픽셀로서 나타내진 디스플레이 윈도우의 높이를 특정하는 2 바이트를 사용한다.
컬러 맵 RGB 폭 필드는 컬러맵 (팔레트) 디스플레이 모드에 디스플레이될 수 있는 적색, 녹색, 및 청색 성분의 비트의 수를 특정하는 2 바이트를 사용한다. 각각의 컬러 성분 (적색, 녹색, 및 청색) 에 대하여 최대 8 비트가 이용될 수 있다. 각각의 컬러 성분의 8 비트가 컬러 맵 패킷으로 보내진다 해도, 이 필드에 규정된 각각의 컬러 성분의 최하위 비트의 개수 (the number of least significant bits) 만이 이용된다. 디스플레이 클라이언트가 컬러 맵 (팔레트) 포맷을 이용할 수 없으면 이 값이 영이다. 컬러 맵 RGB 폭 워드는 3 개의 별도의 된 무부호 값으로 구성된다 :
비트 3 내지 0 은 유효한 것으로 고려되는 0 내지 8 의 값을 갖는 각각의 픽셀에서 청색 비트의 최대수를 규정한다. 비트 7 내지 4 는 유효한 것으로 고려되는 0 내지 8 의 값을 갖는 각각의 픽셀에서 녹색 비트의 최대수를 규정한다. 비트 11 내지 8 은 유효한 것으로 고려되는 0 내지 8 의 값을 갖는 각각의 픽셀에서 적색 비트의 최대수를 규정한다. 비트 14 내지 12 는 장래 사용을 위해 예약되고, 일반적으로 0 으로 설정된다. 비트 15 는 컬러맵 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신하는 클라이언트의 능력을 나타내는데 이용된다. 비트 15 가 로직-1 레벨로 설정되는 경우에, 이것은 클라이언트가 컬러맵 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신할 수 있음을 나타낸다. 비트 15 가 로직-1 로 설정된다면, 이것은 클라이언트가 컬러맵 픽셀 데이터를 언패킹된 포맷으로 수신할 수 있음을 나타낸다.
RGB 용량 필드는 RGB 포맷으로 디스플레이될 수 있는 해상도의 비트 수를 특정하기 위하여 2 바이트를 사용한다. 일 실시형태에서, 클라이언트가 RGB 포맷을 사용할 수 없다면, 이 값은 0 과 동일하게 설정된다. RGB 용량 워드는 3 개로 분리된 무부호 값으로 구성된다. 비트 3 내지 0 은 각각의 픽셀에서 청색 (청색 강도) 비트의 최대수를 규정하고, 비트 7 내지 4 는 각각의 픽셀에서 녹색 (녹색 강도) 비트의 최대수를 규정하고, 비트 11 내지 8 은 각각의 픽셀에서 적색 (적색 강도) 비트의 최대수를 규정한다. 비트 14 내지 12 는 장래 사용을 위해 예약되고 0 으로 설정된다. 비트 15 는 RGB 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신하는 클라이언트의 능력을 나타내는데 이용된다. 비트 15 가 로직-1 레벨로 설정되는 경우에, 이것은 클라이언트가 RGB 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신할 수 있음을 나타낸다. 비트 15 가 로직-0 으로 설정된다면, 이것은 클라이언트가 RGB 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
1-바이트의 단색 용량 필드는 단색의 포맷에 디스플레이될 수 있는 해상도 비트수를 특정하는 값 또는 정보를 포함한다. 클라이언트가 단색의 포맷을 이용할 수 없으면 이 값은 0 과 동일하게 설정된다. 비트 6 내지 4는 장래 사용을 위해 예약되고 일반적으로 0 으로 설정된다. 비트 3 내지 0은 각각의 픽셀에 존재할 수 있는 그레이 스케일의 최대 개수의 비트를 규정한다. 이러한 4 비트는 각각의 픽셀가 1에서 15 비트로 구성되는 것을 특정하는 것을 가능하게 한다. 값이 영이면 단색의 포맷이 클라이언트에 의해 지원되지 않는다. 1 로 설정된 경우에, 비트 7 은 클라이언트가 단색 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신할 수 있음을 나타낸다. 비트 7 이 0 으로 설정된다면, 이것은 클라이언트가 단색 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
예약 2 필드는 장래 사용을 위해 예약되는 1 바이트의 광범위 필드리고, 이 필드에 있는 모든 비트는 일반적으로 0 으로 설정된다. 일 실시형태에서, 이 필드의 하나의 목적은 모든 후속 2 바이트 필드가 16 비트 워드 어드레스에 정렬하도록 하고 4-바이트 필드가 32-비트 워드 어드레스에 정렬하도록 하는 것이다.
2-바이트의 Y Cb Cr 용량 필드는 Y Cb Cr 포맷으로 디스플레이될 수 있는 해상도 비트 수를 특정한다. 클라이언트가 Y Cb Cr 포맷을 이용할 수 없으면 이 값이 0 이다. Y Cb Cr 용량 워드는 3 개의 별도의 무부호 값으로 구성된다 :
비트 3 내지 0은 Cb 샘플을 특정하는 최대 비트수를 규정하고,
비트 7 내지 4는 Cr 샘플을 특정하는 최대 비트수를 규정하고,
비트 11 내지 8은 Y 샘플을 특정하는 최대 비트수를 규정하고,
비트 14 내지 12는 장래 사용을 위해 예약되고 0 으로 설정된다.
1 로 설정된 경우에, 비트 15 는 클라이언트가 Y Cb Cr 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신할 수 있음을 나타낸다. 0 으로 설정된 경우에, 비트 15 는 클라이언트가 Y Cb Cr 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
1 바이트의 베이어 (Bayer) 용량 필드는 베이어 포맷으로 전달될 수 있는 해상도의 비트수, 픽셀 그룹 및 픽셀 순서를 특정한다. 클라이언트가 베이어 포맷을 사용할 수 없다면, 이 값은 0 으로 설정된다. 베이어 용량 필드는 다음의 값으로 구성된다. 비트 3 내지 0 은 각각의 픽셀에 존재하는 비트 강도의 최대수를 규정하고, 비트 5 내지 4 는 요구돌 수도 있는 픽셀 그룹 패턴을 규정하고, 비트 8 내지 6 은 요구되는 픽셀 순서를 규정하고, 비트 14 내지 9 는 장래 사용을 위해 예약되고, 0 으로 설정된다. 1 로 설정된 경우에, 비트 15 는 클라이언트가 베이어 픽셀 데이터를 패킹 또는 언패킹된 포맷으로 수신할 수 있음을 나타낸다. 비트 15 가 0 으로 설정된다면, 이것은 클라이언트가 베이어 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
2-바이트의 CRC 필드는 패킷 길이를 포함하여 패킷에 모든 바이트의 16 비트 CRC 를 포함한다.
47. 레지스터 액세스 패킷
레지스터 액세스 패킷은, MDDI 링크의 대향 종단에서 구성 및 상태 레지스터를 액세스하는 수단, 매커니즘, 또는 방법을 갖는 호스트 또는 클라이언트를 제공한다. 이러한 레지스터는 각각의 디스플레이 또는 디바이스 제어기를 위해 유일한 경향이 있다. 이러한 레지스터가 이미 셋팅 구성, 동작 모드를 요구하며, 다른 유용하고 필요한 설정을 갖는 많은 디스플레이에 존재한다. 레지스터 액세스 패킷은, MDDI 링크를 이용하여, MDDI 호스트 또는 클라이언트가 레지스터에 대한 기록과 레지스터를 판독하기 위한 요청을 하는 것을 허용한다. 호스트 또는 클라이언트가 레지스터를 판독하는 것을 요청할 때, 대향 종단은 동일한 패킷 타입으로 레지스터 데이터를 보냄으로써, 또한 판독/기록 정보 필드를 이용하여 이것이 특정의 레지스터로부터 판독된 데이터라는 것을 표시함으로써 응답해야 한다. 레지스터 액세스 패킷은, 1보다 더 큰 레지스터 카운트를 특정함으로써 복수의 레지스터를 판독하고 기록하는 데에 이용될 수 있다. 클라이언트는 클라이언트 용량 패킷의 클라이언트 피처 용량 필드의 비트 22 를 이용하여 레지스터 액세스 패킷을 지원하는 능력을 표시한다.
레지스터 액세스 패킷에 대한 일 실시형태의 포맷이 일반적으로 도 90 에 도시된다. 도 90 에 도시한 바와 같이, 레지스터 액세스 패킷은 패킷 길이, 패킷 타입, b클라이언트ID, 판독/기록 플래크, 레지스터 비트맵, 파라미터 CRC, 레지스터 데이터 리스트 및 레지스터 데이터 CRC 필드를 갖도록 구성된다. 146 의 패킷 타입값은 패킷을 레지스터 액세스 패킷으로서 식별한다. b클라이언트ID 필드는 장래 사용을 위해 예약되고, 현재는 일반적으로 0 으로 설정된다.
2-바이트의 판독/기록 플래그 필드는 기록, 또는 판독, 또는 판독에 대한 응답으로서 특정 패킷을 특정하고, 데이터 값의 카운트를 제공한다.
비트 15 내지 14 는 판독/기록 플래그로서 기능한다. 비트 [15:14] 가 '00' 이라면, 이것은 레지스터 어드레스 필드에 의해 어드레싱되는 레지스터에 기록될 데이터를 포함한다. 특정 레지스터에 기록될 데이터는 레지스터 데이터 리스트 필드에 포함된다. 비트 [15:14] 가 '10' 이라면, 이것은 레지스터 어드레스 필드에 의해 어드레싱된 하나 이상의 레지스터로부터 데이터를 요청하는 것이다. 비트 [15:14] 가 '10' 이라면, 그 패킷은 '10' 으로 설정된 판독/기록 플래그의 15:14 비트를 갖는 레지스터 액세스 패킷에 대한 응답으로 요청된 데이터를 포함한다. 레지스터 어드레스 필드는 첫번째 레지스터 데이터 리스트 항목에 대응하는 레지스터의 어드레스를 포함하고, 레지스터 데이터 리스트 필드는 어드레스 또는 어드레스들로부터 판독되는 데이터를 포함한다. 비트 [15:14] 가 '01' 이라면, 이것은 유효하지 않은 값으로서 다루어지고, 이러한 값은 장래 사용을 위해 예약되며, 사용되지 않는다.
비트 13:0 은 레지스터 데이터 리스트 필드에서 전달될 32-비트 레지스터 데이터 항목의 넘버를 특정하는 14-비트의 무부호 정수를 사용한다. 비트 15:14 가 '00' 과 같다면, 비트 13:0 은 레지스터 어드레스 필드에 의해 특정되는 레지스터에서 레지스터 시작부에 기록될 레지스터 데이터 리스트 필드에 포함된 32-비트 레지스터 데이터 항목의 넘버를 특정한다. 비트 15:14 가 '10' 과 같다면, 비트 13:0 은, 수신 디바이스가 레지스터가 판독되는 요청 디바이스로 전송하는 32-비트 레지스터 데이터 항목의 넘버를 특정한다. 이러한 패킷의 레지스터 데이터 리스트 필드는 어떠한 항목도 포함되지 않고, 길이 0 을 갖는다. 비트 15:14 가 '11' 과 같다면, 비트 13:0 은 레지스터 데이터 리스트 필드에 포함된 레지스터로부터 판독괸 32-비트의 레지스터 데이터 항목의 넘버를 특정한다. 비트 15:14 는 통상적으로 '01' 과 같이 설정되지 않는데, 이것은 유효하지 않은 값으로 고려되며, 그렇지 않다면 장래의 지정 또는 사용을 위해 예약된다.
레지스터 어드레스 필드는 기록 또는 판독될 레지스터 어드레스를 나타내기 위해 4 바이트를 사용한다. 어드레싱이 32 비트보다 작은 어드레싱 레지스터에 대하여, 상위 비트는 0 으로 설정된다.
2-바이트의 파라미터 CRC 필드는 패킷 길이로부터 레지스터 어드레스까지 모든 바이트의 CRC 를 포함한다. 이러한 CRC 가 체크하지 못한다면, 전체 패킷이 폐기된다.
레지스터 데이터 리스트 필드는 클라이언트 레지스터에 기록될 4-바이트 레지스터 데이터 값 또는 클라이언트 디바이스 레지스터로부터 판독되는 값의 리스트를 포함한다.
2-바이트 레지스터 데이터 CRC 필드는 단지 레지스터 데이터 리스트만의 CRC 를 포함한다. 이러한 CRC 가 체크할 수 없다면, 레지스터 데이터는 여전히 사용될 수도 있지만, CRC 에러 카운트는 증가한다.
D. 패킷 CRC
CRC 필드는 패킷의 끝에, 그리고 종종 아주 큰 데이터 필드를 가질 수 있는 패킷들에서 특정의 중대한 파라미터 뒤에 나타나며, 따라서 전달 중에 에러의 가능성이 증대된다. 2 개의 CRC 필드를 갖는 패킷에서, 단지 하나만 이용되는 때 CRC 발생기는 제 1 CRC 뒤에 재시작되어 긴 데이터필드를 따르는 CRC 계산이 패킷의 시작에서 파라미터에 의해 영향을 받지 않는다.
예시적인 실시형태에서, CRC 계산을 위해 이용되는 폴리노미얼 (polynomial) 은 CRC-16, 또는 X16 + X15 + X2 +X0 로 알려진다. 발명의 실시에 유용한 CRC 발생기 및 체커 (3600) 의 샘플 구현이 도 36 에 나타난다. 도 36 에서, CRC 레지스터 (3602) 는 Tx_MDDI_Data_Before_CRC 라인에 입력되는 패킷의 제 1 비트의 전달의 바로 직전에 0x0001 의 값으로 초기화되며, 그 후 패킷의 바이트는 LSB 로 시작되는 레지스터로 먼저 쉬프트된다. 이러한 구성에서 레지스터 비트 개수는, MDDI 에 의해 이용되는 비트 포지션이 아닌, 이용되는 폴리노미얼의 순서에 대응한다. 단일 방향으로 CRC 레지스터를 쉬프트하는 것이 더 효율적이며, 이는 CRC 비트 15 가 MDDI CRC 필드의 비트 포지션 0 에 나타나게 하고, CRC 레지스터 비트 14 가 MDDI CRC 필드 비트 포지션 1 에, 등등으로 MDDI 비트 포지션 14 에 도달할 때까지이다.
예를 들어, 클라이언트 요청 및 상태 패킷에 대한 패킷 컨텐츠가: 0x000c, 0x0046, 0x000, 0x0400, 0x00, 0x00, 0x0000 (또는, 0x0c, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00 과 같은 바이트의 시퀀스로서 나타내어짐) 이며, 멀티플렉서 (3604 및 3606), 및 낸드 게이트 (3608) 의 입력을 이용하여 제출된다면, Tx_MDDI_Data_With_CRC 라인의 생성 CRC 출력은 0xd9aa (또는 0xaa, 0xd9 와 같은 시퀀스로서 나타내어짐) 의 결과를 갖는다.
CRC 발생기 및 체커 (3600) 가 CRC 체커 로서 구성될 때, Rx_MDDI_Data 라인에 수신되는 CRC 는 멀티플렉서 (3604) 및 낸드 게이트 (3608) 에 입력되고, NOR 게이트 (3610), 배타적-OR (XOR) 게이트 (3612), 및 AND 게이트 (3614) 를 이용하여 CRC 레지스터에서 발견된 값과 비트 단위로 비교된다. 어떤 에러가 있으면, AND 게이트 (3614) 에서 출력될 때, 게이트 (3614) 의 출력을 레지스터 (3602) 의 입력으로 연결함으로써 CRC 는 CRC 에러를 포함하는 매 패킷에 대하여 한번 증가된다. 도 36 의 다이어그램에 도시된 예시 회로는 소정의 CHECK_CRC_NOW 윈도우 내에서 2 이상의 CRC 에러 신호를 출력할 수 있다 (도 37B 참조). 따라서, 일반적으로, CRC 에러 카운터는 일반적으로 CHECK_CRC_NOW 가 활성화된 각각의 간격 내에서 제 1 CRC 에러 인스턴스를 카운트하기만 한다. CRC 발생기로서 구성되면, CRC 는, 패킷의 끝과 일치하는 시간에 CRC 레지스터에 기록 (clock out) 된다.
입출력 신호 및 인에이블 신호에 대한 타이밍은 도 37a 및 도 37b 에 도시된다. CRC 의 발생과 데이터 패킷의 송신이, Gen_Reset, Check_CRC_Now, Generate_CRC_Now, 및 Sending_MDDI_Data 신호의 상태 (0 또는 1) 와 함께, 그리고 Tx_MDDI_Data_Before_CRC 및 Tx_MDDI_Data_With_CRC 신호와 함께, 도 37A 에 나타난다. 데이터 패킷의 수신과 CRC 값의 체킹이, Gen_Reset, Check_CRC_Now, Generate_CRC_Now, 및 Sending_MDDI_Data 신호의 상태와 함께, 그리고 Rx_MDDI_Data 및 CRC 에러 신호와 함께, 도 37B 에 나타난다.
E. 패킷 CRC 에 대한 에러 코드 오버로드
호스트와 클라이언트 사이에 데이터 패킷과 CRC 만이 송신될 때마다, 수용 (accommodate) 되는 에러 코드는 없다. 유일한 에러는 동기화의 손실이다. 그렇지 않으면, 양호한 데이터 전달 경로 또는 파이프라인의 부족으로부터 링크가 타임아웃되기를 기다려야 하고, 링크를 리셋하고 진행하여야 한다. 불행히도, 이는 시간 소모적이고 다소 비효율적이다.
일실시형태에서 이용하기 위해, 새로운 기법이 개발되어, 패킷의 CRC부분이 에러 코드 정보를 전달하는데 이용된다. 이는 도 65 에 일반적으로 나타난다. 즉, 통신 프로세싱 또는 링크 내에서 발생할 수 있는 특정의 미리 정의된 에러 또는 결함을 나타내는 데이터 전달을 취급하는 프로세서 또는 디바이스에 의해 하나 이상의 에러 코드들이 발생된다. 에러가 발생하면, 패킷의 CRC 에 대한 비트를 이용하여 적절한 에러 코드가 발생 및 전달된다. 즉, CRC 필드의 값을 모니터하는 에러 모니터 또는 체커에 의해 수신단에서 검출될 수 있는 소망의 에러 코드와 함께, CRC 값이 오버로드 또는 오버라이트된다. 어떠한 이유로 CRC 값이 에러 코드와 매칭하는 경우, 에러의 컴플리먼트 (compliment) 가 전달되어 혼동을 방지한다.
일실시형태에서, 강력한 에러 경고 및 검출 시스템을 제공하기 위해, 에러가 검출된 후에 전달 또는 전송되는 일련의 패킷, 일반적으로는 전부를 이용하여, 에러 코드가 수차례 전달될 수 있다. 이는 시스템으로부터 에러를 발생시키는 조건이 제거되는 포인트까지 발생하며, 당해 포인트에서 다른 값에 의해 오버로딩됨이 없이 정규 CRC 비트가 전달된다.
CRC 값을 오버로딩하는 이 기법은, 여분 비트 또는 필드의 최소량을 이용하면서, 시스템 에러에 더 빠른 응답을 제공한다.
도 66 에 나타난 바와 같이, 이전에 기술되거나 공지된 다른 회로의 부분을 구성할 수 있는 에러 검출기 또는 검출 수단 (6602)을 사용하여 CRC 오버라이팅 메커니즘 또는 장치 (6600) 가 나타내지며, 통신 링크 또는 프로세스 내에서 에러의 발생 또는 존재를 검출한다. 미리 선택된 에러 메시지를 저장하기 위해 룩업 표과 같은 기법을 이용하거나 다른 회로의 일부로 형성될 수 있는 에러 코드 발생기 또는 수단 (6604) 은, 하나 이상의 에러 코드를 발생시켜서, 발생시에 검출된 특정의 소정의 에러 또는 결함들을 나타낸다. 디바이스 (6602 및 6604) 는 요구에 따라 단일 회로 또는 디바이스로, 또는 다른 공지의 프로세서 또는 엘리먼트에 대한 프로그램된 단계들의 시퀀스의 일부로서 형성될 수 있다.
선택된 에러 코드 또는 코드들이 전달되는 CRC 값과 동일한지 알기 위한 확인을위해, CRC 값 비교기 또는 비교 수단 (6606) 이 도시된다. 이러한 경우라면, 원래의 CRC 패턴 또는 값으로 오해되지 않고 검출 스킴을 혼동 또는 복잡화하지 않도록, 에러 코드의 컴플리먼트를 제공하기 위해 코드 컴플리먼트 발생기 또는 발생수단이 제공된다. 에러 코드 선택기 또는 선택 수단 엘리먼트 또는 디바이스 (6610) 는 에러 코드 또는 값을 선택하며, 적절하게 각각의 컴플리먼트를 삽입 또는 오버라이트하는 것이 요구된다. 에러 코드 CRC 오버라이터 또는 오버라이팅 메커니즘 또는 수단 (6612) 은, 수신 디바이스에 소망의 에러 코드를 전달하기 위하여, 삽입될 데이터 스트림, 패킷, 및 소망의 코드를 수신하여 대응되거나 적절한 CRC 값을 오버라이트한다.
언급된 바와 같이, 일련의 패킷을 이용하여 에러 코드는 수차례 전달될 수 있으며, 따라서 오버라이터 (6612) 는, 필요한 만큼 또는 요구되는 만큼 그들의 값을 저장 또는 보유하는데 이용될 수 있는 공지의 저장 위치 또는 이전의 엘리먼트로부터 리콜하거나 프로세스 동안에 코드들의 카피를 유지하기 위하여, 메모리 저장 엘리먼트를 이용할 수도 있다.
도 66 의 오버라이팅 메커니즘의 일반적 프로세싱 구현, 그 세부사항이 도 67a 및 67b 에 나타난다. 도 67a에서, 하나 이상의 에러는 통신 데이터 또는 프로세스의 단계 6702에서 검출되고, 이 조건을 나타내기 위하여 단계 6704에서 에러코드가 선택된다. 동시에, 또는 적절한 시점에서, 대체될 CRC 값이 단계 6706에서 확인되고, 단계 6708에서 요구되는 에러 코드가 비교된다. 이러한 비교의 결과는, 전에 언급된 바와 같이, 소망의 코드 또는 다른 대표적인 값이 주어진 CRC 값과 동일한지 아닌지에 대한 결정이다. 만약 그렇다면, 프로세싱은 단계 6712 로 진행되어, 요구되는 바와 같이 컴플리먼트, 또는 어떤 상황에서는 다른 대표적인 값이 삽입될 코드로서 선택된다. 단계 6710 또는 6714에서 어떤 에러 코드 또는 값이 삽입될지 결정되면, 그 적절한 코드는 삽입을 위해 선택된다. 이러한 단계들은 간단히 나타내기 위해서 분리되어 도시되지만, 일반적으로 단계 6708 결정의 출력에 기초하여 단일 선택을 나타낸다. 마지막으로, 단계 6716에서, 프로세스에 의해 타겟이 되는 패킷들로의 전달을 위해 CRC 장소에서 적절한 값이 오버라이팅된다.
도 67b 에 나타난 바와 같이, 단계 6722에서 패킷 수신측에서 패킷 CRC 값이 모니터링된다. 일반적으로, 일부가 전술된 바와 같이, 데이터 전달에서 에러가 발생하였는지 및 패킷 또는 패킷들의 재전송을 요구할지 않을지 또는 더 이상의 동작을 금지할지 등등에 관하여 결정하기 위해 시스템 내에서 하나 이상의 프로세스에 의해서 CRC 값이 모니터링된다. 그러한 모니터링의 일부로서, 값을 공지의 또는 미리 선택된 에러 코드 또는 대표값과 비교하는데에 또는 에러의 존재를 검출하는데에, 그 정보가 기록될 수 있다. 다른 방법으로는, 개개의 에러 검출 프로세스 및 모니터가 구현될 수 있다. 코드가 존재하는 것으로 나타나면, 단계 6724 에서는 그것이 추출되거나 추가적인 공정을 위해서 기록된다. 단계 6726에서 이것이 실제 코드인지 또는 컴플리먼트인지의 여부를 결정할 수 있고, 추가적인 단계 6728 은 그 값을 소망의 코드값으로 전환하는데 이용된다. 다른 경우에, 결과물인 추출된 코드, 컴플리먼트, 또는 다른 회복된 값들은, 단계 6730에서 전달된 코드로부터 어떤 에러가 발생했는지 검출하는데 사용된다.
V. 링크 휴지
MDDI 링크는 휴지 상태로 신속히 진입할 수 있고 휴지로부터 신속히 깨어날 수 있다. 사용을 위해 매우 신속히 깨어날 수 있으므로, 이러한 응답성은 통신 시스템 또는 디바이스로 하여금 MDDI 링크를 자주 휴지상태로 진입하게 함으로써 전력 소비를 감소시킨다. 일 실시형태에서, 외부 모드로서 클라이언트는 최초 휴지로부터 깨어나고, 1 Mbps 와 일치하는 스트로브 펄스 타이밍에 따라 데이터 레이트로 휴지로부터 깨어나는데, 즉 MDDI_Stb 쌍은 500kHz 에서 토글링해야한다. 클라이언트의 특성이 일단 호스트에 의해 발견되거나 호스트와 통신하게 된다면, 호스트는 클라이언트가 동작할 수 있는 일반적으로 1 Mbps 로부터 최대 레이트에 이르는 임의의 레이트에서 링크를 깨울 수도 있다. 내부 모드 클라이언트는 호스트 및 클라이언트 양자가 동작할 수 있는 임의의 레이트에서 깨어날 수도 있다. 또한, 이것은 일반적으로 내부 모드 클라이언트가 깨어나는 최초에 적용될 수 있다.
일 실시형태에서, 링크가 휴지로부터 깨어나는 때에 호스트 및 클라이언트는 펄스의 시퀀스를 교환한다. 이러한 펄스는 최대 링크 동작 속도에서 신호를 수신하는데 요구되는 차동 수신기로서 전류의 일부만을 소비하는 저속 라인 수신기를 이용하여 검출될 수 있다. 호스트 또는 클라이언트는 링크를 깨울 수 있으므로, 호스트 및 클라이언트가 동시에 깨어나려고 시도한다면, 웨이크-업 (wake-up) 프로토콜은 발생할 수 있는 가능한 경쟁을 다루도록 설계된다.
휴지상태 동안 MDDI_Data 및 MDDI_Stb 차동 드라이버는 디스에이블되고, 차동 쌍 양단의 차동 전압은 0 볼트이다. 휴지로부터의 웨이크-업 동안 펄스의 시퀀스를 검출하는데 이용되는 차동 라인 수신기는 의도적인 전압 오프셋을 갖는다. 일 실시형태에서, 이러한 수신기에서 로직-1 과 로직-0 사이의 임계값은 대략 125 mV 이다. 이것은 링크 웨이크-업 시퀀스동안 로직-0 레벨로서 관측될 구동되지 않은 차동 쌍을 생성한다.
휴지상태로 진입하기 위하여, 호스트는 링크 셧다운 패킷의 CRC 이후에 64 MDDI_Stb 싸이클을 전송한다. 호스트는 CRC 후에 (출력 디스에이블 전파 지연을 포함하는) 16 내지 56 MDDI_Stb 싸이클의 범위의 호스트의 MDDI_DATA0 출력을 디스에이블한다. 호스트는 웨이크-업 시퀀스를 개시하기 전에, 링크 셧다운 패킷의 CRC 후의 64 MDDI_Stb 싸이클을 전송하는 것을 종료한다. 일 실시형태에서, 호스트-개시 웨이크-업은 MDDI_Stb 상에 펄스를 구동하기 전에, MDDI_Data0 가 유효한 로직-1 레벨에 도달한 후에 100 nsec 을 기다려야만 하는 호스트로서 규정된다. 일 실시형태에서, 클라이언트는, 호스트를 깨우려고 MDDI_Data0 를 로직-1 레벨로 구동하기 전에, 링크 셧다운 패킷의 CRC 후의 60 MDDI_Stb 싸이클 이상을 대기한다.
휴지상태로부터 "웨이크-업" 하기 위해, 몇몇 액션 또는 프로세스가 착수된다. 여기에서 디스플레이인 클라이언트가 호스트로부터 데이터 또는 통신, 서비스를 필요로 하는 경우에, 대략 70 내지 1000 μsec 동안 MDDI_Data0 라인을 로직-1 상태로 구동하는 한편, 다른 주기가 바람직하게 사용될 수 있다고 할지라도, MDDI_Stb 는 비활성이고, MDDI_Stb 가 활성이 된 후에 MDDI_Data0 가 (60 내지 80 의 범위에서) 대략 70 MDDI_Stb 싸이클동안 로직-1 레벨로 구동되도록 유지시킨다. 그 후, 클라이언트는 이를 고-임피던스 상태에 둠으로써 MDDI_Data0 드라이버를 디스에이블시킨다.
MDDI_Stb 가 휴지동안 활성이라면, 비록 가능성은 없지만, 클라이언트는 단지 MDDI_Data0 만을 (60 내지 80 의 범위에서) 대략 70 MDDI_Stb 싸이클동안 로직-1 상태로 구동할 수도 있다. 이러한 액션은 호스트로 하여금 순방향 링크 (208) 를 통해 데이터 트래픽을 시작 또는 재시작하게 하고, 그 상태에 대한 클라이언트를 등록하게 한다.
호스트는 요청 펄스의 존재를 검출해야만 하고, MDDI_Data0 를 로직-1 레벨로 (140 내지 160 의 범위에서) 대략 150 MDDI_Stb 싸이클로 구동하고, 로직-0 로 (40 내지 60 의 범위에서) 대략 50 MDDI_Stb 싸이클로 구동하는 개시 시퀀스를 시작한다. 로직-1 상태에 있는 MDDI_Data0 를 70 MDDI_Stb 싸이클보다 오래 검출한다면, 디스플레이는 서비스 요청 펄스를 전송하여서는 않된다. 호스트가 MDDI_Datat0 를 로직-0 레벨로 50 MDDI_Stb 싸이클 주기동안 구동한 후에, 호스트는 링크를 통하여 패킷을 전송하는 것을 개시한다. 전송되는 첫번째 패킷은 서브-프레임 헤더 패킷이다. 휴지 프로세싱 및 개시 시퀀스에 관계된 시간 및 시간 간격의 허용 오차의 선택의 본질을 이하 설명한다 (이하의 도 68a 내지 도 68c 참조).
호스트는 첫번째로 MDDI_Stb 를 인에이블링함으로써 웨이크-업을 개시하고, 동시에 이를 로직-0 레벨로 구동할 수도 있다. MDDI_Stb 는 이하 설명할 바와 같이 펄스가 출력될 때까지 로직-1 레벨로 구동되어서는 안된다. MDDI_Stb 가 로직-0 레벨에 도달한 후에, 호스트는 MDDI_Data0 를 인에이블시키고, 동시에 이것을 로직-1 레벨로 구동한다. MDDI_Data0 는 간격까지 로직-0 레벨로 구동되지 않아야 하는데, MDDI_Data0 는 이하 설명할 바와 같이 MDDI_Data0 펄스의 간격동안 로직-0 레벨로 구동된다. 호스트는 MDDI_Stb 상의 펄스 구동 전에, MDDI_Data0 가 유효한 로직-1 레벨에 도달한 후에 100 nsec 이상을 대기하여야 한다. 최악의 경우의 출력 인에이블 지연을 고려하자면, 이러한 타이밍 관계가 발생한다. 이것은 호스트에 의해 구동되는 MDDI_Data0 상의 로직-1 레벨에 의해 깨워진 이후에 그 MDDI_Stb 수신기를 완전히 인에이블하는 충분한 시간을 갖는다는 것을 실질적으로 보장한다.
충돌이 없는 통상적인 클라이언트 서비스 요청 이벤트 (3800) 에 대한 프로세싱 단계의 예시가 도 38 에 도시되며, 이벤트는 편의상 A, B, C, D, E, F, 및 G 의 문자로 표시된다. 프로세스는, 호스트가 클라이언트로 링크 셧다운 패킷을 보내어 링크가 저전력 휴지 상태로 변이 (transition) 됨을 알리는 포인트 A 에서 시작한다. 다음 단계에서, 포인트 B 에 나타난 바와 같이, MDDI_Data0 드라이버를 디스에이블하고 MDDI_Stb 드라이버를 로직 0 레벨로 설정함으로써 호스트는 저전력 휴지 상태에 진입한다. MDDI_Data0 은 고임피던스 바이어스 네트워크에 의해 로직 0 레벨로 구동된다. 약간의 시간 기간 후에, 포인트 C 에 나타난 바와 같이 MDDI_Data0 을 로직 1 로 구동함으로써 클라이언트는 서비스 요청을 호스트에 보낸다. 고임피던스 바이어스 네트워크를 이용하여 호스트는 계속 로직 0 레벨을 유지하지만, 클라이언트의 드라이버는 라인을 로직 1 레벨로 강제한다. 50 ㎲ 내에, 호스트는 서비스 요청 펄스를 인식하고, 포인트 D 에서 볼 수 있는 바와 같이 그 드라이버를 인에이블하여 MDDI_Data0 에서 로직 1 레벨을 유지한다. 포인트 E 에 나타난 바와 같이, 그러면 클라이언트는 서비스 요청 펄스를 유지하려는 시도를 중단하고, 클라이언트는 그 드라이버를 고임피던스 상태에 위치시킨다. 포인트 F 에 나타난 바와 같이, 호스트는 MDDI_Data0 을 로직 0 레벨로 50 ㎲ 동안 구동하고, 또한 MDDI_Data0 에 로직 0 레벨과 일치하는 방식으로 MDDI_Stb 를 발생시키기 시작한다. MDDI_Data0 을 로직 0 레벨로 유지하고 MDDI_Stb 를 50 ㎲ 동안 구동한 후에, 포인트 G 에 나타난 바와 같이, 호스트는 서브 프레임 헤더 패킷을 전송함으로써 정방향 링크에서 데이터를 송신하기 시작한다.
링크 재시작 시퀀스가 시작되는 도 39 에서 유사한 실시예가 설명되며, 이벤트는 다시 문자 A, B, C, D, E, F, 및 G 로 표시된다. 이는, 클라이언트로부터의 요청 펄스 또는 신호가 서브 프레임 헤더 패킷의 손상 (corrupting) 에 가장 근접하는 최악의 경우 시나리오를 나타낸다. 링크가 저전력 휴지 상태로 변이하리라는 것을 알리기 위해 호스트가 링크 셧다운 패킷을 클라이언트 디바이스에 다시 전송하는 포인트 A 에서 시작한다. 다음 단계에서, 포인트 B 에 나타난 바와 같이, MDDI_Data0 드라이버를 디스에이블하고 MDDI_Stb 드라이버를 로직 0 레벨로 설정함으로써 호스트는 저전력 휴지 상태에 진입한다. 이전과 같이, 고임피던스 바이어스 네트워크에 의해 MDDI_Data0 은 로직 0 레벨로 구동된다. 시간 기간 후에, 포인트 C 에 나타난 바와 같이, MDDI_Data0 을 150 ㎲ 동안 로직 1 로 구동함으로써 호스트는 링크 재시작 시퀀스를 시작한다. 링크 재식작 시퀀스가 시작한 후 50 ㎲ 가 경과하기 전에, 포인트 D 에서 볼 수 있는 바와 같이, 디스플레이는 70 ㎲ 동안 MDDI_Data0 을 유지한다. 이는, 디스플레이가 호스트로부터 서비스를 요청할 필요가 있으며 호스트가 이미 링크 재시작 시퀀스를 시작했음을 인식하지 못하기 때문에 발생한다. 그러면, 포인트 E 에 나타난 바와 같이, 클라이언트는 서비스 요청 펄스를 유지하려는 시도를 중단하며, 클라이언트는 그 드라이버를 고임피던스 상태로 위치시킨다. 호스트는 MDDI_Data0 을 로직 1 레벨로 구동하기를 계속한다. 포인트 F 에 나타난 바와 같이, 호스트는 MDDI_Data0 을 50 ㎲ 동안 로직 0 레벨로 구동하며, 또한 MDDI_Data0 의 로직 0 레벨과 일치하는 방식으로 MDDI_Stb 를 발생시키기 시작한다. MDDI_Data0 을 로직 0 레벨로 유지하고 MDDI_Stb 를 50 ㎲ 동안 구동한 후에, 포인트 G 에 나타난 바와 같이, 서브 프레임 헤더 패킷을 전송함으로써 호스트는 정방향 링크로 데이터를 전송하기 시작한다.
전술한 바와 같이, 관련된 이전의 솔루션은 호스트로 하여금 웨이크업 시퀀스의 일부로서 2 개의 상태를 거치게 함을 알 수 있다. 제 1 상태에 대하여, 호스트는 150 ㎲ 동안 MDDI_Data0 신호를 하이 (high) 로 구동하고, 그 후 MDDI_Stb 라인을 활성화시키는 동안 MDDI_Data0 신호를 50 ㎲ 동안 로우 (low) 로 구동하고, 그 후 MDDI 패킷을 송신하기 시작한다. 이 프로세스는, MDDI 디바이스 및 방법을 이용하여 달성가능한 데이터 레이트의 관점에서 기술의 상태를 전진시키는 데에는 잘 동작한다. 그러나, 전술한 바와 같이, 조건에 대한 감소된 응답 시간의 관점에서의 더 나은 속도와 그 다음 스텝 또는 프로세스를 더 빨리 선택할 수 있게 하는 것은, 프로세스 또는 엘리먼트를 단순화하는 능력이며, 항상 요구되는 것이다.
출원인들은, 호스트가 신호 토글링에 대한 타이밍에 기초하여 클록 사이클을 이용하는 웨이크업 프로세스 및 타이밍에 대한 새로운 진보적인 접근을 찾아냈다. 이 구성에서, 웨이크업 시퀀스의 시작에서 MDDI_Data0 신호를 하이로 구동한 후에 호스트가 0 내지 10 ㎲ 에서 MDDI_Stb 를 토글링하는 것을 시작하며, 신호가 로우로 구동될 때까지 기다리지 않는다. 웨이크업 시퀀스 동안에, MDDI_Data0 신호가 항상 로직 0 레벨에 있는 것처럼 호스트는 MDDI_Stb 를 토글링한다. 이는 효율적으로 클라이언트 측으로부터의 시간 개념을 제거하며, 이 기간 동안 호스트는 최초의 2 개의 상태에 대하여 이전의 150 ㎲ 및 50 ㎲ 로부터 150 클록 사이클 및 50 클록 사이클로 변화한다.
이제 호스트는, 그 데이터 라인을 하이로 구동하고 데이터 라인이 0 이었던 것처럼 10 클록 사이클 내에 스트로브 신호를 전송하기 시작하는 책임을 지게 된다. 호스트가 150 클록 사이클 동안 데이터 라인을 하이로 구동한 후에, 호스트는 스트로브 신호를 전송하는 것을 계속하면서 데이터 라인을 50 클록 사이클 동안 로우로 구동한다. 이 프로세스를 모두 완료한 후에, 호스트는 제 1 서브 프레임 헤더 패킷을 전송하기 시작한다.
클라이언트 측에서, 클라이언트 구현은 이제, 데이터 라인이 먼저 하이 그 다음에 로우인 클록 사이클의 수를 계산하기 위해 발생된 클록을 이용할 수 있다. 하이 상태로 구동되는 데이터 라인에서 발생될 필요가 있는 클록 수는 150 이고, 로우 상태로 구동되는 데이터 라인에서는 50 이다. 이는 적절한 웨이크업 시퀀스에 대하여, 클라이언트는 하이인 데이터 라인의 적어도 150 개의 연속적인 클록 사이클을 카운트할 수 있어야 하고, 후속하여 로우인 데이터 라인의 적어도 50 개 이상을 카운트할 수 있어야 한다는 것을 의미한다. 이러한 두 개의 조건이 충족되면, 클라이언트는 제 1 서브프레임의 고유 워드에 대한 검색을 시작할 수 있다. 클라이언트가 다시 처음의 150 개의 연속적인 하이 상태의 데이터 라인을 찾게 되는 초기 상태로 카운터를 반환하는 기초로서 이 패턴에서 브레이크가 이용된다.
전술한 바와 같이, 휴지로부터의 호스트 기반 웨이크업에 대한 본 발명의 클라이언트 구현은, 클록 레이트가 1 Mbps 에서 시작하도록 강제되지 않는다는 점을 제외하고는 초기 스타트업의 경우와 매우 유사하다. 대신에, 통신 링크가 휴지로 진입할 때 이전의 레이트가 무엇이든지 클록 레이트가 설정되어 계속 (resume) 될 수 있다. 전술한 바와 같이 호스트가 스트로브 신호의 전달을 시작하면, 클라이언트는 적어도 150 개의 하이인 데이터 라인의 연속적인 클록 사이클을 카운트할 수 있어야 하며, 적어도 50 개의 연속적인 로우인 데이터 라인이 뒤따른다. 이러한 두 개의 조건이 충족되면, 클라이언트는 고유 워드의 검색을 시작할 수 있다.
휴지로부터의 클라이언트 기반 웨이크업에 대한 본 발명의 클라이언트 구현은, 클라이언트로 하여금 데이터 라인을 구동하게 함으로써 시작한다는 점을 제외하고는 호스트 기반의 웨이크업과 유사하다. 클라이언트는, 호스트 디바이스를 웨이크업하기 위한 클록없이 비동기적으로 데이터 라인을 구동한다. 일단 데이터 라인이 클라이언트에 의해 하이로 구동된다는 것을 호스트가 인식하면, 그 웨이크업 시퀀스가 시작될 수 있다. 클라이언트는 호스트 시작에 의해 또는 웨이크업 프로세스 중에 발생된 클록 사이클의 수를 카운트할 수 있다. 일단 클라이언트가 하이인 데이터의 70 개의 연속적인 클록 사이클을 카운트하면, 데이터 라인을 하이로 구동하는 것을 멈출 수 있다. 이 시점에서, 호스트는 이미 데이터 라인을 하이로도 구동하고 있어야 한다. 그 후 클라이언트는 하이인 150 개의 클록 사이클에 도달하기 위해 다른 80 개의 하이인 데이터 라인의 연속적인 사이클을 카운트할 수 있어야 하고, 그 후에 로우인 데이터 라인의 50 개의 클록 사이클을 찾을 수 있다. 이러한 세 개의 조건이 충족되면, 클라이언트는 고유 워드를 찾을 수 있다.
웨이크업 프로세스의 이러한 새로운 구현의 장점은 시간 측정 디바이스에 대한 요구를 제거한다는 점이다. 이것이 오실레이터이건, 또는 커패시터 방전 회로이든, 또는 다른 공지의 디바이스가, 클라이언트는 더 이상 시작 조건을 결정하기 위해 그러한 외부 디바이스를 필요로 하지 않는다. 이는 클라이언트 디바이스 보드에 제어기, 카운터 등을 구현할 때 비용과 회로 영역을 절약한다. 이것이 클라이언트에게 이익이 없을 수도 있으나, 호스트에 대하여서는, 코어 회로에 대하여서 초고밀도 로직 (VHDL) 의 관점에서 호스트를 잠재적으로 단순화한다. 호스트 기반의 웨이크업에 대하여 대기하기 위해 코어 엘리먼트에 대하여 실행되는 외부 회로가 없기 때문에, 웨이크업 공지 및 측정 소스로서 데이터 및 스트로브 라인을 이용하는 전력 소비가 낮아질 것이다. 이용된 사이클 수나 클록 주기는 예시적인 것이며, 다른 기간이 이용될 수 있음은 당업자에게 명백하다.
웨이크업 프로세스의 이러한 새로운 구현의 이점은, 이것이 시간 측정 디바이스에 대한 필요를 제거한다는 것이다. 이것이 오실레이터이건, 또는 커패시터 방전 회로이든, 또는 다른 공지의 디바이스이건, 클라이언트는 더 이상 시작 조건을 결정하기 위해 그러한 외부 디바이스를 필요로 하지 않는다. 이는 클라이언트 디바이스 보드에 제어기, 카운터 등을 구현할 때 비용과 회로 영역을 절약한다. 이것이 클라이언트에게 이익이 없을 수도 있으나, 호스트에 대하여서는, 코어 회로에 대하여서 초고밀도 로직 (VHDL) 의 관점에서 호스트를 잠재적으로 단순화한다. 호스트 기반의 웨이크업에 대하여 대기하기 위해 코어 엘리먼트에 대하여 실행되는 외부 회로가 없기 때문에, 웨이크업 공지 및 측정 소스로서 데이터 및 스트로브 라인을 이용하는 전력 소비가 낮아질 것이다.
이러한 새로운 기술의 동작을 명확화하고 설명하기 위해, MDDI_Data0, MDDI_Stb, 및 클록 사이클에 대한 다양한 동작들이 도 68a, 68b, 및 68c 에 나타난다.
통상적인 컨텐션이 없는 호스트-시작 웨이크업에 대한 프로세싱 스텝의 예가 도 68A 에 도시되어 있으며, 이벤트는 편의상 문자 A, B, C, D, E, F, 및 G 로 나타낸다. 프로세스는, 링크가 저전력 휴지 상태로 변이함을 알리기 위해 호스트가 링크 셧다운 패킷을 클라이언트로 전송하는 포인트 A 에서 시작한다. 다음 단계인 포인트 B 에서, 호스트는 약 64 사이클에 대하여 (또는 시스템 설계에서 요구되는 바와 같이) MDDI_Stb 를 토글링하여, MDDI_Stb 를 토글링으로부터 멈추기에 앞서 클라이언트에 의한 프로세싱이 완료되는 것을 허용하며, 이는 클라이언트 디바이스에서 회복된 클록을 정지한다. 또한, 호스트는 MDDI_Data0 을 로직 0 레벨로 초기에 설정하고, 그 후 CRC 뒤에16 내지 48 사이클 (일반적으로 출력 디스에이블 전달 지연을 포함) 의 범위에서 MDDI_Data0 출력을 디스에이블한다. CRC 뒤 48 사이클 정도 뒤에 그리고 다음 스테이지 (C) 앞에, 로우 상태에서 클라이언트에서 MDDI_Data0 및 MDDI_Stb 에 대한 고속 수신기를 위치시키는 것이 바람직하다. 클라이언트는 MDDI_Data0 및 MDDI_Stb 에 대한 그 고속 수신기를, 링크 셧다운 패킷의 CRC 후의, 48번째 MDDI_Stb 싸이클의 상승 에지 후의 임의의 시간에 휴지상태로 둔다. 클라이언트가 MDDI_Data0 및 MDDI_Stb 에 대한 그 고속 수신기를, 링크 셧다운 패킷의 CRC 후의 64 번째 MDDI_Stb 싸이클의 상승 에지 전에 휴지상태로 두는 것이 권고된다.
MDDI_Data0 및 MDDI_Stb 드라이버를 디스에이블시키고 호스트 제어기를 저전력 휴지 상태로 위치시킴으로써, 포인트 또는 단계 C 에서 호스트는 저전력 휴지 상태에 진입한다. 또한, (고임피던스 네트워크 바이어스 네트워크를 이용하여) MDDI_Stb 드라이버를 로직 0 레벨로 설정하거나, 소망하는 경우, 휴지 동안에 토글링을 계속할 수 있다. 또한, 클라이언트는 저전력 레벨 휴지 상태에 있다.
약간의 시간 기간 후에, MDDI_Data0 및 MDDI_Stb 드라이버 출력을 인에이블함으로써 포인트 D 에서 호스트는 링크 재시작 시퀀스를 시작한다. 드라이버들에 대하여 그들 각각의 출력을 완전히 인에이블하는 한, 호스트는 MDDI_Data0 을 로직 1 레벨로 MDDI_Stb 를 로직 0 으로 구동한다. 통상적으로, MDDI_Stb 에 펄스를 구동하기 전에 호스트는 이러한 출력이 원하는 로직 레벨에 도달한 후에 약 200 나노초 동안 대기한다. 이는 클라이언트에게 수신 준비의 시간을 허용한다.
호스트 드라이버가 인에이블되고 MDDI_Data0 이 로직 1 레벨로 구동되면, 포인트 E 에 나타난 바와 같이, 호스트는 150 MDDI_Stb 사이클 동안 MDDI_Stb 를 토글링하기 시작한다. 포인트 F 에 나타난 바와 같이, 호스트는 MDDI_Data0 을 50 사이클 동안 로직 0 레벨로 구동하고, MDDI_Data0 이 40 MDDI_Stb 사이클 동안 로직 0 레벨에 있은 후에 클라이언트는 서브 프레임 헤더 패킷을 찾기 시작한다. 포인트 G 에 나타난 바와 같이 서브프레임 헤더 패킷을 전송함으로써 호스트는 정방향 링크로 데이터를 전송한다.
컨텐션이 없는 통상적인 클라이언트-시작 웨이크업에 대한 프로세싱 단계에 대한 실시예가 도 68b 에 도시되며, 이벤트는 편의상 문자 A, B, C, D, E, F, G, H, 및 I 를 이용하여 나타낸다. 이전과 같이, 호스트는, 링크가 저전력 상태로 변이되는 것을 클라이언트에게 알리는 링크 셧다운 패킷을 전송하는 포인트 A 에서 시작한다.
포인트 B 에서, 호스트는 약 64 사이클에 대하여 (또는 시스템 설계에서 요구되는 바와 같이) MDDI_Stb 를 토글링하여, MDDI_Stb 를 토글링으로부터 멈추기에 앞서 클라이언트에 의한 프로세싱이 완료되는 것을 허용하며, 이는 클라이언트 디바이스에서 회복된 클록을 정지한다. 또한 호스트는 MDDI_Data0 을 로직 0 레벨로 초기에 설정하고, 그 후 CRC 뒤에 16 내지 48 사이클 (일반적으로 출력 디스에이블 전달 지연을 포함) 의 범위에서 MDDI_Data0 출력을 디스에이블한다. CRC 뒤 48 사이클 정도 뒤에 그리고 다음 스테이지 (C) 앞에, 로우 상태에서 클라이언트에서 MDDI_Data0 및 MDDI_Stb 에 대한 고속 수신기를 위치시키는 것이 바람직하다.
MDDI_Data0 및 MDDI_Stb 드라이버를 디스에이블시키고 호스트 제어기를 저전력 휴지 상태로 위치시킴으로써, 포인트 또는 단계 C 에서 호스트는 저전력 휴지 상태에 진입한다. 또한, (고임피던스 네트워크 바이어스 네트워크를 이용하여) MDDI_Stb 드라이버를 로직 0 레벨로 설정하거나, 소망하는 경우, 휴지 동안에 토글링을 계속할 수 있다. 또한, 클라이언트는 저전력 레벨 휴지 상태에 있다.
약간의 시간 기간 후에, MDDI_Stb 수신기를 인에이블하고, 또한 호스트가 그 MDDI_Stb 드라이버를 인에이블 하기 전에 MDDI_Stb 의 수신된 버전의 상태가 클라이언트에서 로직 0 레벨임을 보증하기 위해 MDDI_Stb 수신기에서 오프셋을 인에이블함으로써, 포인트 D 에서 클라이언트는 링크 재시작 시퀀스를 시작한다. 요구에 따라, 클라이언트는, 유효한 차동 신호의 수신을 보증하고 에러있는 신호를 방지하기 위해 수신기의 인에이블에 약간 앞서서 오프셋을 인에이블하는 것이 바람직할 수 있다. 클라이언트는, MDDI_Data0 라인을 로직 1 레벨로 구동함과 동시에 MDDI_Data0 드라이버를 인에이블한다.
1 밀리초 내에, 포인트 E 에서, 호스트는 클라이언트로부터의 서비스 요청 펄스를 인식하고, MDDI_Data0 및 MDDI_Stb 드라이버 출력을 인에이블함으로써 호스트는 링크 재시작 시퀀스를 시작한다. 드라이버들에 대하여 그들 각각의 출력을 완전히 인에이블하는 한, 호스트는 MDDI_Data0 을 로직 1 레벨로 MDDI_Stb 를 로직 0 으로 구동한다. 통상적으로, MDDI_Stb 에 펄스를 구동하기 전에 호스트는 이러한 출력이 원하는 로직 레벨에 도달한 후에 약 200 나노초 동안 대기한다. 이는 클라이언트에게 수신 준비의 시간을 허용한다.
호스트 드라이버가 인에이블되고 MDDI_Data0 이 로직 1 레벨로 구동되면, 포인트 F 에 나타난 바와 같이, 호스트는 150 MDDI_Stb 사이클 동안 MDDI_Stb 에 펄스를 출력하기 시작한다. 클라이언트가 MDDI_Stb 에서 첫 번째 펄스를 인식할 때, 그 MDDI_Stb 수신기에서 오프셋을 디스에이블한다. 클라이언트는 MDDI_Data0 을 로직 1 레벨로 70 MDDI_Stb 사이클 동안 구동하기를 계속하고, 포인트 G 에서 MDDI_Data0 드라이버를 디스에이블한다.
포인트 G 및 H 에서 보는 바와 같이, 호스트는 50 사이클 동안 로직 0 레벨로 MDDI_Data0 을 구동하고, MDDI_Data0 이 40 MDDI_Stb 사이클 동안 로직 0 레벨에 있은 후에 클라이언트는 서브 프레임 헤더 패킷을 찾기 시작한다. 포인트 I 에 나타난 바와 같이, 호스트는, 서브 프레임 헤더 패킷을 전송함으로써 정방향 링크에서 데이터를 전송하기 시작한다.
클라이언트가 링크를 웨이크업하기를 원하고, 클라이언트로부터의 컨텐션이 있는 통상적인 호스트-시작 웨이크업에 대한 프로세싱 단계에 대한 실시예가 도 68c 에 도시된다. 이벤트는 편의상 문자 A, B, C, D, E, F, G, H, 및 I 를 이용하여 나타낸다. 이전과 같이, 호스트는, 링크가 저전력 상태로 변이되는 것을 클라이언트에게 알리는 링크 셧다운 패킷을 전송하는 포인트 A 에서 시작하고, 약 64 사이클 (또는 시스템 설계에서 요구되는 바대로) 동안 MDDI_Stb 가 토글링되는 포인트 B 로 진행하여 클라이언트에 의한 프로세싱이 완료되는 것이 허용되며, 다음으로 포인트 C 에서, MDDI_Data0 및 MDDI_Stb 드라이버를 디스에이블하고 호스트 제어기를 저전력 휴지 상태로 위치시킴으로써, 호스트는 저전력 휴지 상태에 진입한다. 약간의 시간 기간 후에, 포인트 D 에서 MDDI_Data0 및 MDDI_Stb 드라이버 출력을 인에이블함으로써 호스트는 링크 재시작 시퀀스를 시작하고, 포인트 E 에 나타나는 바와 같이, 150 MDDI_Stb 사이클 동안 MDDI_Stb 를 토글링하기 시작한다.
포인트 E 후 70 MDDI_Stb 사이클까지에서, 포인트 F 에서, 클라이언트는 아직 호스트가 MDDI_Data0 을 로직 1 레벨로 구동한다는 것을 인식하지 못하고, 따라서 클라이언트도 MDDI_Data0 을 로직 1 레벨로 구동한다. 이는, 클라이언트가 서비스를 요청하고자 하지만 통신하기를 원하는 호스트가 이미 링크 재시작 시퀀스를 시작했다는 것을 인식하지 못하기 때문에 발생한다. 포인트 G 에서, 클라이언트는 MDDI_Data0 을 구동하기를 중단하고, 그 출력을 디스에이블함으로써 그 드라이버를 고임피던스 상태에 위치시킨다. 호스트는 추가적인 80 사이클 동안 MDDI_Data0 을 로직 1 레벨로 구동하기를 계속한다.
포인트 H 에 나타난 바와 같이, 호스트는 50 사이클 동안 MDDI_Data0 을 로직 0 레벨로 구동하며, MDDI_Data0 이 40 MDDI_Stb 사이클 동안 로직 0 레벨에 있은 후에 클라이언트는 서브 프레임 헤더 패킷을 찾기 시작한다. 포인트 I 에 나타난 바와 같이, 서브 프레임 헤더 패킷을 전송함으로써 호스트는 정방향 링크에 데이터를 전송하기 시작한다.
Ⅵ. 인터페이스 전기적 사양
예시적인 실시형태에서, 영으로의 비복귀 (Non-Return-to-Zero) 포맷의 데이터는 데이터-스트로브 신호 또는 DATA-STB 포맷을 이용하여 인코딩되며, 이는 클록 정보가 데이터 및 스트로브 신호에 삽입되도록 한다. 클록은 복잡한 위상 동기루프 회로 없이 복구될 수 있다. 데이터는 양방향 차동 링크를 통해 전달되며, 상술한 바와 같이 다른 도전체, 인쇄 배선, 또는 전달 소자들이 이용될 수 있지만, 일반적으로 유선 케이블을 이용하여 구현된다. 스트로브 신호 (STB) 는 호스트에 의해서만 구동되는 일방향 링크를 통해 전달된다. 데이터 라인 또는 신호상에 동일하게 유지되는 0 또는 1 의 연속적인 상태가 있는 경우에는 언제나, 스트로브 신호는 값 (0 또는 1) 을 토글링한다.
"1110001011" 과 같은 데이터 시퀀스가 어떻게 DATA-STB 인코딩을 이용하여 송신되는지에 대한 예는 도 40 의 그래프 형태에 도시되어 있다. 도 40 에서, DATA 신호 (4002) 는 신호 타이밍도의 최상단 라인에 도시되어 있으며, STB 신호 (4004) 는 제 2 라인에 도시되어 있으며, 각 시간 (공통 시작점) 이 적절히 배치되어 있다. 시간이 경과함에 따라, DATA 라인 (신호) (4002) 상에 상태 변화가 있을 때, STB 라인 (신호) (4004) 은 이전 상태를 유지하고, 이에 따라, DATA 신호의 첫번째 '1' 상태가 STB 신호에 대한 첫번째 'O' 상태와 상관한다. 그러나, DATA 신호의 상태, 레벨이 변하지 않는 경우, 또는 변하지 않는 때, STB 신호는 DATA 가 다른 '1' 값을 제공하는 도 40 의 경우와 같이, 본 실시예에서 반대 상태 또는 '1' 로 토글링된다. 즉, DATA 와 STB 사이에 하나 그리고 비트 사이클당 오직 하나의 변환이 있다. 따라서, STB 신호는 다시 변환하여, 이번에는 DATA 신호가 '1' 로 유지된 체 '0' 으로 변환하며, DATA 신호가 '0' 으로 레벨을 변경할 때, 이 레벨 또는 값을 유지한다. DATA 신호가 '1' 에 남아있을 때, STB 신호는 반대 상태 또는 본 실시예에서 '1' 로 토글링되고, DATA 신호가 레벨 또는 값을 변경하거나 유지함에 따라 이와 같이 계속된다.
이러한 신호들이 수신되는 순간, 배타적 로직합 로직 (XOR) 동작이 DATA 및 STB 신호에 수행되어 클록 신호 (4006) 를 생성하고, 이는 소망의 데이터 및 스트로브 신호들과 상대적 비교를 위해 타이밍 챠트의 최하단에 도시된다. DATA 및 STB 를 생성하는데 유용한 예시적인 회로는 호스트에서의 입력 데이터로부터 출력 또는 발신하고, 그 후 도 41 에 도시된 바와 같이 클라이언트에서 DATA 및 STB 로부터 데이터를 복구 또는 재포착 (recapturing) 한다.
도 41 에서, 송신부 (4100) 는 원본 DATA 및 STB 신호들을 중간 신호 경로 (4102) 를 통해 생성 및 송신하는데 이용되며, 한편 수신부 (4120) 는 신호를 수신하고 데이터를 복구하는데 이용된다. 도 41 에 도시된 바와 같이, 호스트로부터 클라이언트로 데이터를 송신하기 위해, DATA 신호는 2 개의 D-타입-플립-플롭 회로 소자들 (4104 및 4106) 로, 그 회로를 트리거하기 위한 클록 신호와 함께 입력된다. 그 후, 2 개의 플립-플롭 회로 출력들 (Q) 은 2 개의 차동 라인 드라이버들 (4108 및 4110) 을 이용하여 차동 쌍 MDDI_Data0+, MDDI_Data0- 및 MDDI_Stb+, MDDI_StB- 으로 각각 분리된다(전압 모드). 3-입력 배타적 부정 로직합 (XNOR) 게이트, 회로, 또는 로직 소자 (4112) 는 DATA 및 두 플립-플롭 모두의 출력을 수신하기 위해 연결되며, 제 2 플립-플롭을 위한 데이터 입력을 제공하는 출력을 생성하고, 이는 순차적으로 MDDI_Stb+, MDDI_Stb- 신호들을 생성한다. 편의를 위해, XNOR 게이트는 스트로브를 생성하는 플립-플롭의 Q 출력을 효율적으로 반전하는 것을 나타내도록 위치한 반전 버블 (inversion bubble) 을 가진다.
도 41 의 수신부 (4120) 에서, MDDI_Data0+, MDDI_Data0- 및 MDDI_Stb+, MDDI_Stb- 신호들은 2 개의 차동 라인 수신기들 (4122 및 4124) 각각에 의해 수신되며, 이는 차동 신호들로부터 단일 출력을 생성한다. 그 후, 증폭기들의 출력들은 클록 신호를 생성하는 2-입력 배타적 로직합 (XOR) 게이트, 회로 또는 로직 소자 (4126) 의 입력들 각각으로 입력된다. 클록 신호는 지연 소자 (4132) 를 통해 DATA 신호의 지연된 버젼을 수신하는 2 개의 D-타입-플립-플롭 회로들 (4128 및 4130) 각각을 트리거링하는데 이용되며, 2 개의 D-타입-플립-플롭 회로들 (4128 및 4130) 중 하나 (4128) 는 데이터 '0' 값을 생성하고 다른 하나 (4130) 는 데이터 '1' 값을 생성한다. 또한, 클록은 XOR 로직으로부터 독립적인 출력을 가진다. 클록 정보가 DATA 와 STB 사이에 분산되기 때문에, 어떤 신호도 반 클록 레이트보다 빠르게 상태들 사이에서 변환하지 않는다. 클록은 DATA 및 STB 신호들의 배타적 로직합 프로세싱을 이용하여 재생성되기 때문에, 시스템은 클록이 단일 전용 데이터 라인을 통해 직접 송신되는 경우의 상황과 비교하여, 입력 데이터와 클록 사이의 2 배의 스큐 (skew) 를 허용한다.
MDDI 데이터 쌍, MDDI_Stb+, 및 MDDI_Stb- 신호들은 차동 모드로 동작하여, 잡음의 부정적 영향으로부터의 내성을 최대화한다. 각각의 차동 쌍은 신호를 전달하는데 이용되는 케이블 또는 도전체의 특성 임피던스로 병렬-종단된다. 일반적으로, 모든 병렬-종단은 클라이언트 디바이스 내에 존재한다. 이것은 순방향 트래픽 (호스트로부터 클라이언트로 전송된 데이터) 을 위한 차동 수신기 부근에 있지만, 역방향 트래픽 (클라이언트로부터 호스트로 전송된 데이터) 을 위한 케이블 또는 다른 도전체 또는 전달 소자의 구동 말단에 존재한다. 역방향 트래픽에 대하여, 이러한 신호는 클라이언트에 의해 구동되고, 호스트에서 고 임피던스 수신기에 의해 반사되며, 클라이언트에서 종단된다. 이것은 전류 소모를 증가시킬 수도 있는 더블 종단에 대한 필요성을 회피한다. 또한, 이것은 케이블에서 라운드-트립 지연의 역수보다 큰 데이터 레이트에서 동작한다. MDDI_Stb+ 및 MDDI_Stb- 도전체 또는 신호는 단지 호스트에 의해서만 구동된다.
진보성을 가진 MDD 인터페이스의 부분으로서 신호를 전달하기 위한 드라이버, 수신기 및 종단에 유용한 소자들의 예시적인 구성이 도 42 에 도시된다. 예시적인 인터페이스는, 여기서 1 volt 보다 낮은 전력 스윙 및 낮은 전력 드레인을 이용한 200 mV 의 저전압 센싱을 이용한다. 각각의 신호 쌍의 드라이버는 차동 전류 출력을 갖는다. MDDI 패킷을 수신하는 동안, MDDI_Data 및 MDDI_Stb 쌍은 0 볼트의 임계전압을 갖는 종래의 차동 수신기를 사용한다. 휴지상태에서, 드라이버 출력은 디스에이블되고, 병렬-종단 저항은 각각의 신호 쌍의 전압을 0 볼트로 끌어올린다. 휴지동안 MDDI_Data0 상의 특별한 수신기는 + 125 mV 의 오프셋 입력 임계값을 갖는데, 이것은 휴지 라인 수신기로 하여금 구동되지 않은 신호 쌍을 로직-0 레벨로 해석하게 한다.
데이터 흐름의 방향이 (호스트에서 클라이언트 또는 클라이언트에서 호스트로) 변할 때, 때로는 호스트 또는 클라이언트는 쌍에 대한 유효한 로직-레벨을 보장하기 위해 차동 쌍을 로직-1 레벨로 동시에 구동하거나, 로직-0 레벨로 동시에 구동한다. 출력 전압 범위 및 출력 사양은 동일한 로직 레벨로 구동되는, 동시 구동 출력을 여전히 겪을 것이다. 몇몇 시스템에서, 휴지상태 동안 그리고 링크가 휴지상태로부터 웨이크-업 하는 때에 일정 시간에서의 작은 오프셋 전압을 생성하기 위해 작은 전류를 종단 차동 쌍으로 인가하는 것이 필요할 수도 있다. 이러한 상황에서, 인에블링된 오프셋-전류 바이어스 회로는 이하의 누설을 인가하여야 한다.
·IESE-and-Rx - 내부 ESD 다이오드 및 차동 수신기 입력.
Figure 112006033870809-PCT00003
IESE-and-Rx ≤ 1 μA.
·ITx-Hi-Z - 고-임피던스 상태에서 차동 드라이버 출력
Figure 112006033870809-PCT00004
ITx-Hi-Z ≤ 1 μA.
·Iexternal-ESD - 외부 ESD 보호 다이오드를 통한 누설
Figure 112006033870809-PCT00005
Iexternal-ESD ≤ 3 μA.
이러한 누설 전류의 각각이 도 101 에 도시된다. 풀-업 및 풀-다운 회로는 모든 것이 동시에 발생하는 경우에 전술한 최악의 누설 상황 하에서 초소 차동 전압을 획득해야만 한다. 외부 ESD 보호 다이오드가 없는 내부 모드에서 총 누설은 ≤ 4 μA 이고, 외부 ESD 보호가 있는 외부 모드에서 ≤ 10μA 이다.
차동 라인 드라이버 및 수신기의 전기적 파리미터 및 특성은 표 8 에서 설명된다. 기능적으로, 드라이버는 입력상의 로직 레벨을 긍정 출력으로 전달하고, 입력의 반전값을 부정 출력으로 전달한다. 입력으로부터 출력으로의 지연은 차동적으로 구동되는 차동 라인으로 잘 매칭된다. 대부분의 구현에서, 출력상의 전압 스윙은 전력 소비 및 전자기 방출을 최소화하기 위해 입력상의 스윙에 비해 작다. 표 8 은 최소 전압 스윙이 0.5 V 부근일 것을 제시한다. 그러나, 당업자는 다른 값들이 이용될 수 있음을 알며, 본 발명자는 설계 제한을 고려하여, 몇몇 실시형태에서 더 작은 값을 고려한다.
차동 라인 수신기는 고속 전압 비교기와 동일한 특성을 가진다. 도 41 에서, 버블이 없는 입력은 긍정 입력이며, 버블을 가진 입력은 부정 입력이다. 출력은 (Vinput+) - (Vinput-) 가 0 보다 큰지에 대한 로직값이다. 이를 설명하는 다른 방식은 로직 0 및 1 전압 레벨에서 출력이 잘린 매우 큰 (거의 무한의) 이득을 가진 차동 증폭기이다.
상이한 쌍들 사이의 지연된 스큐는 최고 잠재 속도로 차동 송신 시스템을 동작하기 위해 최소화되어야 한다.
도 42 에서, 호스트 제어기 (4202) 및 클라이언트 또는 디스플레이 제어기 (4204) 가 통신 링크 (4206) 를 통해 패킷들을 송신하는 것으로 도시되어 있다. 호스트 제어기는 송신될 클라이언트 데이터 신호들을 수신할 뿐만 아니라 송신될 호스트 DATA 및 STB 를 수신하기 위해 일련의 3 개의 드라이버 (4210, 4212 및 4214) 을 채택하는 한편, 클라이언트는 3 개의 드라이버 (4230, 4232 및 4234) 를 채용한다. 호스트 DATA (4212) 의 이동을 담당하는 드라이버는 일반적으로 호스트로부터 클라이언트로의 송신이 요구되는 경우에 한하여 통신 링크의 활성화를 허용하도록 하기 위해 인에이블 신호 입력을 채택한다. STB 신호가 데이터의 전달 부분으로서 형성되기 때문에, 그 드라이버 (4212) 를 위해 어떠한 부가적인 인에이블 신호도 채택되지 않는다. 클라이언트 DATA 및 STB 수신기 (4132, 4230) 는, 각각 이들을 가로질러 페이싱된 종단 임피던스 또는 저항 (4218 및 4220) 을 갖는다. 클라이언트 제어기의 드라이버 (4234) 는 클라이언트로부터 호스트로 전송되는 데이터 신호를 준비하는데 이용되는데, 입력측상의 드라이버 (4214) 가 데이터를 프로세싱한다.
특별한 수신기 (드라이버) (4216, 4236) 는 DATA 라인에 결합 또는 접속되고, 다른 부분에서 설명한 휴면 제어의 일부로서, 미리 설명한 125 mV 전압을 생성 또는 사용한다. 이러한 오프셋은 휴면 라인 수신기로 하여금 인가되지 않은 신호 쌍을 로직-0 레벨로서 해석한다.
상술한 드라이버들 및 임피던스들은 별도 구성들 또는 회로 모듈의 부분으로서, 또는 가장 비용적으로 효율적인 인코더 또는 디코더 솔루션으로서 동작하는 주문형 반도체 (ASIC) 로서 형성될 수 있다.
전력이 호스트 디바이스로부터 클라이언트 디바이스, 또는 디스플레이로 MDDI_Pwr 및 MDDI_Gnd 로 표기된 신호들을 이용하여 한 쌍의 도전체를 통해 전달되는 것을 쉽게 알 수 있다. 신호의 HOST_Gnd 부분은 기준 접지, 전압 공급 복귀 경로 또는 클라이언트 디바이스를 위한 신호로서 동작한다. HOST_Pwr 신호는 호스트 디바이스에 의해 구동되는 클라이언트 디바이스 전력 공급기로서 동작한다. 예시적인 구성에서, 낮은 전력 인가에 대하여, 클라이언트 디바이스는 500 mA 까지 끌어올리는 것을 허용한다. MDDI_Pwr 신호는 리튬 이온 타입 배터리 또는 호스트 디바이스에 상주하는 배터리 팩과 같은, 다만 이에 한정되지 않는 이동식 전력원으로부터 제공될 수 있으며, HOST_Gnd 에 대하여 3.2 내지 4.3 볼트까지 분포한다.
Ⅶ. 타이밍 특성
A. 개요
도 43 에 도시된 바와 같이, 본 단계들 및 신호 레벨들이 호스트로부터 서비스를 보안하기 위해 클라이언트에 의해 채택되며, 이러한 서비스를 제공하기 위해 호스트에 의해 채택된다. 도 43 에서, 예시된 신호들의 제 1 부분은 호스트로부터 송신된 링크 셧다운 패킷 (Link Shutdown Packet) 을 도시하고, 그 후 데이터 라인은 고-임피던스 바이어스 회로를 이용하여 로직 0 상태로 구동된다. 어떠한 데이터도 드라이버가 디스에이블된 클라이언트 디스플레이, 또는 호스트에 의해 송신되지 않는다. MDDI_Stb 가 링크 셧다운 패킷 동안 활성화되기 때문에, MDDI_Stb 신호 라인을 위한 일련의 스트로브 펄스는 최하단에서 볼 수 있다. 일단 이 패킷이 종료되고, 호스트가 바이어스 회로를 구동하여 로직을 0 으로 한 체 로직 레벨이 0 으로 변경되는 경우, MDDI_Stb 신호 라인은 또한 로직-0 레벨로 변경한다. 이는 최종 신호 전달 또는 호스트로부터의 서비스의 종료를 나타내며, 과거의 임의의 시간에 발생할 수 있으며, 이전의 서비스 중단 및 서비스 개시 이전의 신호들의 상태를 나타내기 위해 포함된다. 요구되는 경우, 이러한 신호는 이 호스트 디바이스에 의해 수행된 '기지의' 이전 통신 없이 통신 링크를 단지 적절한 상태로 재설정하기 위해 송신될 수 있다.
도 43 에 도시된 바와 같이, 클라이언트로부터의 신호 출력은 초기에 0 의 로직 레벨로 설정된다. 즉, 클라이언트 출력은 높은 임피던스에 있으며, 드라이버는 디스에이블된다. 서비스가 요청될 때, 클라이언트는 그의 드라이버를 인에이블하여 서비스 요청을 호스트로 송신하고, 이는 tservice 라 지정된 시간 주기이며, 이 시간 주기 동안 라인이 로직 1 레벨로 구동된다. 그 후, 호스트가 그 요청을 탐지하기 전에 일정 양의 시간이 지나거나 요구되고, 이는 thost-detect 라 부르며, 이 시간 후 호스트는 신호를 로직 1 레벨로 구동함으로써 링크 시작 시퀀스와 응답한다. 이 시점에서, 클라이언트는 그 요청을 디어서트 (de-assert) 하고, 서비스 요청 드라이버를 디스에이블하여 클라이언트로부터의 출력 라인을 다시 0 로직 레벨로 가도록 한다. 이 시간 동안, MDDI_Stb 신호는 로직 0 레벨에 있다.
호스트는 trestart-high 로 명명된 기간 동안 '1' 레벨에 있는 호스트 데이터 출력을 구동하며, 그 기간 이후 호스트는 로직 레벨을 0 으로 구동하여 trestart-low 로 명명된 기간 동안 MDDI_Stb 를 활성화하며, 그 후 제 1 순방향 트래픽은 서브-프레임 헤더 패킷으로 시작하고, 그 후 순방향 트래픽 패킷이 전달된다. MDDI-Stb 신호는 trestart-low 동안 활성화되며, 뒤이어 서브-프레임 헤더 패킷이 활성화된다.
표 7 및 8 은 전술한 다양한 주기으 길이에 대한 대표 시간들 및 프로세싱 주기와 예시적인 최소 및 최대 데이터 레이트간의 관계를 나타내며, 여기서,
표 8 은 상술한 다양한 기간의 길이에 대한 대표 시간들 및 예시적인 최소 및 최대 데이터 레이트와의 관계을 나타내며, 여기서,
Figure 112006033870809-PCT00006
이며, Link_Data_Rate 는 단독 데이터 쌍의 비트 레이트이다.
최소 타입 최대 단위
tservice 디스플레이 서비스 요청 펄스의 지속시간 60 70 80 μsec
trestart-high 호스트 링크 리스타트 고 펄스의 지속시간 140 150 160 μsec
trestart-low 호스트 링크 리스타트 저 펄스의 지속시간 40 50 60 μsec
tdisplay-detect 디스플레이가 링크 리스타트 시퀀스를 검출하는 시간 1 50 μsec
thost-detect 호스트가 서비스 요청 펄스를 검출하는 시간 1 50 μsec
tst-stb 높은 MDDI_Data0 로부터 MDDI_Stb 로의 토글링 시간 0 10 μsec
1/tbit-min-perf 최소 성능 디바이스에 대한 링크 데이터 레이트 1 1000 kbps
1/tbit-min-perf 최소 성능 디바이스에 대한 링크 데이터 레이트 0.001 1.1 Mbps
1/tbit-max-perf 디바이스에 대한 치대 링크 데이터 레이트 범위, 외부 0.001 400 Mbps
1/tbit-max-perf 디바이스에 대한 치대 링크 데이터 레이트 범위, 내부 550 Mbps
역방향 링크 데이터 레이트 0.0005 50 Mbps
tbit 하나의 순방향 링크 데이터 비트의 주기, 외부 모드 2.5 106 nsec
tbit 하나의 순방향 링크 데이터 비트의 주기, 내부 모드 1.8 106 nsec
파라미터 설명 최소 타입 최대 단위
trestart-high 호스트 링크 리스타트 고펄스의 지속시간 140 150 160 Stb clks
trestart-low 호스트 링크 리스타트 저펄스의 지속시간 50 50 50 Stb clks
tstb-data-enable MDDI_Data0 인에블링된 링크 리스타트 시퀀스에 인에 완전히 인에이블링된 MDDI_Stb 0 μsec
tclient-startup MDDI_Data0 가 로직-고 레벨에 도달한 후에 호스트가 MDDI_Stb 를 로직-0 으로 보유하는 시간 100 nsec
thost-detect 고 MDDI_Data0 로부터 MDDI_Stb 토글링까지의 시간 0 1000 μsec
Tclient-detect 클라이언트가 로직-고 레벨 성능 디바이스에서 MDDI_Data0 를 검출하는 시간 60 80 Stb clks
tstb-startup 호스트가 MDDI_Stb 토글링을 개시하기 전에 호스트가 MDDI_Stb 를 로직-0 에서 보유하는 시간 100 nsec
당업자는 도 41 및 도 42 에 나타난 개별 소자들의 기능이 공지된 것이며, 도 42 의 소자들의 기능은 도 43 의 타이밍도에 의해 확인됨을 안다. 도 42 에 도시된 직렬 종단 및 휴지 저항에 대한 세부사항은, 데이터-스트로브 인코딩 및 그로부터 클록을 복구하는 방법의 설명을 위해 불필요하기 때문에, 도 41 로부터 생략되었다.
B. 데이터-스트로브 타이밍 순방향 링크
호스트 드라이버 출력으로부터 순방향 링크상의 데이터 전달에 대한 스위칭 특성은 표 9 에 나타난다. 표 9 는 특정 신호 전달이 일어나는 데 대한 통상적인 시간에 대하여 요구되는 최소 및 최대를 표 형식으로 제공한다. 예를 들어, 데이터 값 ('0' 또는 '1' 의 출력) 의 시작으로부터 종료까지 변환, ttdd-(호스트-출력) 으로 명명된 DATA0 대 DATA0 변환이 발생하는 데 대한 통상적인 시간의 길이는 ttbit 이며, 최소 시간은 약 ttbit - 0.5 nsec. 이고, 최대는 약 ttbit + 0.5 nsec. 이다. DATA0, 다른 데이터 라인들 (DATAX) 및 스트로브 라인들 (Stb) 상의 변환들 사이의 상대적 공간은, DATA0 대 스트로브, 스트로브대 스트로브, 스트로브대 DATA0, DATA0 대 비-DATA0, 비-DATA0 대 비-DATA0, 비-DATA0 대 스트로브, 및 스트로브대 비-DATA0 변환이 도시된 도 44 에 도시되어 있으며, 이는 ttds-(호스트-출력), ttss-(호스트-출력), ttsd-(호스트-출력), ttddx-(호스트-출력), ttdxdx-(호스트-출력), ttdxs-(호스트-출력), 및 ttsdx-(호스트-출력) 으로 각각 부른다.
Figure 112006033870809-PCT00007
순방향 링크 상의 데이터를 전달하는 동일한 신호를 위한 클라이언트 수신기 입력에 대한 통상적인 MDDI 타이밍 요건들은 표 10 에 나타난다. 동일한 신호들이 설명되었지만 시간이 지연되었기 때문에, 당업자가 아는 바와 같이, 각 표식의 신호 특성 또는 의미를 나타내기 위해 새로운 도면이 필요하지 않다.
Figure 112006033870809-PCT00008
도 45 및 도 46 은 호스트가 호스트 드라이버를 디스에이블하거나 인에이블한 경우에 각각 발생할 수 있는 지연의 존재를 도시한다. 호스트가 역방향 링크 캡슐화 패킷 또는 라운드 트립 지연 측정 패킷과 같은 특정 패킷을 전달하는 경우에, 호스트는 도 45 에 도시된 파라미터 CRC, 스트로브 정렬, 및 올 제로 패킷과 같은 소정 패킷들이 전달된 후 라인 드라이버를 전달이 완료된 때 디스에이블시킨다. 그러나, 도 45 에 도시된 바와 같이, 라인의 상태가 특정 제어 또는 회로 소자들이 존재한 상태로 잠재적으로 활성화되지만, 라인의 상태는 '0' 으로부터 소정의 더 높은 값으로 순간적으로 스위칭될 필요는 없으며, 응답에 대한 호스트 드라이버 디스에이블 기간으로 명명된 기간을 소요한다. 이는 거의 순간적으로 발생하여 이 기간은 0 나노초 (nsec) 의 길이이며, 소망의 최대 기간 길이인 10 nsec. 의 조금 더 긴 기간으로 쉽게 확장될 수 있고, 이는 가드 시간 1 또는 턴 어라운드 1 패킷 기간들 동안 발생한다.
도 46 을 보면, 호스트 드라이버가 역방향 링크 캡슐화 패킷 또는 라운드 트립 지연 측정 패킷과 같은 패킷을 송신하기 위해 인에이블될 때, 신호 레벨 변화가 수행되는 것을 본다. 여기서, 가드 시간 2 또는 턴 어라운드 2 패킷 기간들 후, 호스트 드라이버가 인에이블되어 레벨, 여기서는 '0' 을 구동하기 시작하며, 이 값은 호스트 드라이버 인에이블 지연 기간이라 지칭된 기간에 걸쳐 접근되거나 도달되고, 이는 제 1 패킷이 송신되기 전, 드라이버 리-인에이블 기간 동안 발생한다.
비슷한 프로세스가 클라이언트 디바이스, 여기서는 디스플레이를 위한 드라이버와 신호 전달을 위해 발생한다. 이러한 기간의 길이 및 그들 각각의 관계에 대한 일반지침은 아래 표 9 에 나타난다.
Figure 112006033870809-PCT00009
C. 데이터-스트로브 타이밍 역방향 링크
클라이언트 드라이버 출력으로부터 역방향 링크 상의 데이터를 전달하기 위해 이용되는 데이터 및 스트로브 신호에 대한 스위칭 특성 및 타이밍 관계는 도 47 및 도 48 에 나타난다. 특정 신호 변환을 위한 통상적인 시간은 이하에서 설명된다. 도 47 은 전달된 데이터와 스트로브 펄스의 선두 및 끝단 에지의 타이밍 사이의 호스트 수신기 입력에서의 관계를 설명한다. 즉, 스트로브 신호의 상승 또는 선두 에지에 대한 설정 시간으로 부르는 tsu-sr 및 스트로브 신호의 끝단 또는 하강 에지에 대한 설정 시간으로 부르는 tsu-sf 이다. 이러한 설정 기간에 대한 통상적인 시간 길이는 최소 8 나노초의 단위이다.
도 48 은 스위칭 특성 및 역 데이터 타이밍에 의해 발생된 상응하는 클라이언트 출력 지연을 도시한다. 도 48 에서, 유발된 지연을 고려한, 전달된 데이터와 스트로브 펄스의 선두 및 끝단 에지의 타이밍 사이의 관계를 볼 수 있다. 즉, 스트로브 신호들의 상승 또는 선두 에지와 데이터 (유효) 사이의 전달 지연이라 부르는, tpd-sr, 및 데이터와 스트로브 신호들의 끝단 및 하강 에지 사이의 전달 지연이라 부르는, tpd-sf 이다. 이러한 전달 지연 기간을 위한 시간의 통상적인 최대 길이는 8 나노초 단위이다.
VIII. 링크 제어의 구현 (링크 제어기 동작)
A. 상태 머신 패킷 프로세서
요구되는 경우, 더 낮은 레이트를 이용할 수 있지만, MDDI 링크를 통해 전달되는 패킷은 통상적으로 300 Mbps 또는 400 Mbps와 같이 그 이상 단위의 레이트로 매우 신속히 프로세싱된다. 이러한 타입의 버스 또는 전달 링크 속도는 현재 상업적으로 이용 가능한 (경제적인) 범용 마이크로프로세서 또는 제어를 위한 이와 유사한 것을 위해 너무 크다. 따라서, 이러한 타입의 신호 전달을 성취하기 위한 실질적인 구현은 그들이 의도된, 전달되거나 적절한 시청각의 서브시스템으로 다시 방향이 조절된 패킷을 생성하는 입력 패킷 스트림을 파싱하기 위해 프로그램가능 상태 머신을 이용한다. 그러한 디바이스는 공지된 것이며, 소정의 높은 속도 또는 매우 높은 속도 동작을 획득하기 위한 제한된 수의 동작들, 기능들, 상태들에 일반적으로 지정된 회로들을 이용한다.
범용 제어기, 프로세서 또는 프로세싱 소자는 더 낮은 속도를 요구하는 제어 또는 상태 패킷들과 같은 몇몇 정보를 다루거나 이에 더욱 적절히 응답하는데 이용될 수 있다. 이러한 패킷들 (제어, 상태 또는 다른 소정의 패킷) 이 수신될 때, 상태 머신은 그들을 데이터 버퍼 또는 이와 유사한 프로세싱 소자들을 통해 범용 프로세서로 보내며, 이에 따라 시청각 패킷들이 동작을 위해 그들의 적절한 목적지로 전달되는 동안 그 패킷들은 소정의 결과 (효과) 를 제공하는 것에 응답할 수 있다. 장래에, 마이크로프로세서 또는 다른 범용 제어기, 프로세서, 또는 프로세싱 소자가 더 높은 데이터 레이트 프로세싱 성능을 달성하기 위해 제조되면, 이하에서 설명하는 상태 또는 상태 머신은, 또한 통상적으로 저장 소자 또는 매체에 저장된 프로그램으로서, 그와 같은 디바이스의 소프트웨어 제어를 이용함으로써 구현될 수 있다.
범용 프로세서 기능은, 몇몇 기능들을 수행하거나, 하드웨어 복잡도 및 비용을 감소시키기 위해 컴퓨터에서 볼 수 있는 CPU 의 프로세싱 전력을 활용하는 몇몇 모뎀 또는 그래픽 프로세서와 매우 똑같은 방법으로 프로세싱 전력, 또는 컴퓨터 애플리케이션 내의 마이크로 프로세서 (CPU) 또는 제어기, 프로세서, 디지털 신호 프로세싱 디바이스 (DSP), 전문화된 회로 또는 무선 디바이스에서 볼 수 있는 ASIC 에 이용가능한 과도한 사이클을 이용함으로써 몇몇 실시형태에서 실현될 수 있다. 그러나, 이 사이클 공유 또는 사용이 프로세싱 속도, 타이밍 또는 그와 같은 요소의 전체적인 동작에 부정적인 영향을 줄 수 있고, 많은 애플리케이션에서, 전용 회로 또는 소자가 이 일반적인 프로세싱 공정을 위해 선호한다.
디스플레이 (마이크로디스플레이) 상에 표시되기 위해, 또는 신뢰할 수 있도록 호스트 디바이스에 의해 송신된 모든 패킷을 수신되기 위한 이미지 데이터를 위해, 클라이언트 신호 프로세싱이 순방향 링크 채널 타이밍과 동기화된다. 즉, 클라이언트에 도달된 신호 및 클라이언트 회로들은 적절한 신호 프로세싱이 일어나도록 실질적으로 시간 동기화될 것이 요구된다. 일 실시형태에 있어서, 신호 프로세싱 단계에 의해 달성된 상태의 높은 레벨의 다이어그램 또는 그런 동기화가 구현될 수 있는 방법은 도 49 의 설명에서 제공된다. 도 49 에서, 상태 머신 (4900) 에 대한 가능한 순방향 링크 동기화 "상태" 는 하나의 어싱크 프레임 상태 (4904), 2 개의 획득 싱크 상태 (4902 및 4906), 3 개의 인-싱크 상태들 (4908, 4910, 및 4912) 와 같이 분류되는 것으로 도시된다.
단계 또는 상태 (4902) 를 시작시킴으로써 도시된 바와 같이, 표현 디바이스와 같은 디스플레이 또는 클라이언트가 검출되는 제 1 서브-프레임 헤더 패킷에 미리 선택된 "싱크 없음" 상태 및 고유 워드를 위한 검색에서 시작한다. 이는 싱크 없음 상태가 타입 I 인터페이스가 선택된 최소 통신 설정 또는 "폴백" 설정을 나타내는 것이다. 고유 워드가 검색 동안 발견될 때, 클라이언트는 서브-프레임 길이 영역을 저장시킨다. 제 1 프레임에 프로세싱을 위한 CRC 비트의 어떤 검사도 없거나, 동기화가 획득될 때까지 없다. 이 서브-프레임 길이가 0 이면, 싱크 상태 프로세싱이 동기화가 아직 획득되지 않음을 나타내는 "어싱크 프레임" 으로서 여기서 명명된 상태 (4904) 에 따라서 진행된다. 프로세싱 내의 이 단계는 도 49 에서 마주친 콘드 3 (cond 3) 또는 조건 3 (condition 3) 으로서 명명된다. 반면에, 프레임 길이가 0 보다 더 크면, 싱크 상태 프로세싱은 인터페이스 상태가 "하나의 싱크 프레임 발견" 으로 설정된 상태 (4906) 으로 진행한다. 프로세싱에서 이 단계는 도 49 에서의 마주친 콘드 (encountering cond) 5 또는 조건 5 로 명명된다. 또한, 상태 머신이 0 보다 큰 프레임 길이를 위한 양호한 CRC 판정 및 프레임 헤더 패킷을 보는 경우, 프로세싱은 "하나의 싱크 프레임 발견"으로 진행한다. 이는 도 49 에서 만나는 콘드 6, 또는 조건 6 으로 명명된다.
본 시스템이 "싱크 없음" 이외의 상태에 있는 각 상황에서, 양호한 CRC 결과를 갖는 패킷이 검출된다면, 인터페이스 상태는 "인-싱크" 상태 (4908) 로 변경된다. 프로세싱 공정 내의 이 단계는 도 49 에서 마주친 콘드 1 또는 조건 1 로 명명된다. 한편, 임의의 패킷의 CRC 가 정확하지 않다면, 싱크 상태 프로세싱은 "싱크 프레임 없음" 의 인터페이스 상태 (4902) 로 진행 또는 복귀한다. 프로세싱의 이 부분은 도 49 에서 마주친 콘드 2, 또는 조건 2 로 명명된다.
B. 싱크 획득 시간
인터페이스는 동기화가 분실되고 "싱크 프레임 없음" 상태로 복귀하기 전에 특정 수의 "싱크 에러" 를 허용하도록 구성될 수 있다. 도 49 에서, 상태 머신이 "인-싱크 상태" 에 도달하고 어떠한 에러도 발견되지 않았다면, 이는 연속적으로 콘드 1 결과를 마주치고, "인-싱크 상태" 내에 남아있는다. 그러나, 일단 하나의 콘드 2 결과가 검출된다면, 프로세싱은 "하나의 싱크 에러" 상태 (4910) 로 상태를 변경한다. 이 시점에서, 프로세싱 공정이 또 다른 콘드 1 결과를 탐지하는 결과를 가지는 경우, 상태 머신은 "인 싱크" 상태로 복귀하고, 다시 말하면 이는 다른 콘드 2 결과와 마주치며, "2-싱크-에러" 상태 (4912) 로 이동한다. 다시, 콘드 1 이 발생하는 경우, 프로세싱은 상태 머신을 "인-싱크" 상태로 복구시킨다. 반면에, 또 다른 콘드 2 를 마주치는 경우, 프로세싱은 상태 머신을 "싱크 없음" 상태로 복구시킨다. 또한, 인터페이스가 "링크 셧다운 패킷" 을 마주치는 경우, 이는 링크가 데이터 송신을 종료시키고, 함께 동기화 시킬 것이 없는 "싱크 프레임 없음" 상태로 복구하도록 하며, 이는 도 49 의 상태도에서 만나는 콘드 4, 또는 조건 4 라 부르는 것을 알 것이다.
서브-프레임 내의 몇몇 고정 위치에 나타나는 고유 워드의 반복되는 "잘못된 복사" 가 존재하는 것이 가능함을 알 것이다. 그 상황에서, MDD 인터페이스 프로세싱이 "인 싱크" 상태로 진행하기 위해 프로세싱될 때, 서브-프레임 헤더 패킷상의 CRC 가 또한 유효해야 하기 때문에, 상태 머신은 서브-프레임에 동기화될 가능성이 매우 적다.
호스트는 링크가 셧 다운되기 전에 오직 하나의 서브-프레임만을 송신하는 것을 나타내기 위해 서브-프레임 헤더 패킷 내의 서브-프레임 길이는 0 으로 설정될 수 있으며, MDD 인터페이스는 휴지 상태에 있거나, 휴지 상태로 구성될 수 있다. 이 경우에, 클라이언트는 링크가 유휴 상태로 변환하기 전에 오직 단일 서브-프레임만이 송신되기 때문에 서브-프레임 헤더 패킷을 검출한 후 순방향 링크를 통해 즉시 패킷들을 수신해야만 한다. 보통 또는 통상적인 동작에서, 서브-프레임 길이는 0 이 아니고, 클라이언트는 인터페이스가 도 49 에서 "인-싱크" 상태로서 집합적으로 도시된 이들 상태들 내에 있는 동안, 오직 순방향 링크 패킷만을 프로세싱한다.
호스트가 이미 순방향 링크 데이터 시퀀스를 전송하고 있는 동안, 외부 모드 클라이언트 디바이스가 호스트에 부착될 수도 있다. 이러한 상황에서, 클라이언트는 호스트에 동기화되어야 한다. 디스플레이가 순방향 링크 신호로 동기화하기 위해 요구되는 시간은 서브-프레임 크기 및 순방향 링크 데이터 레이트에 의존하여 가변적이다. 순방향 링크 내의 무작위, 또는 더 무작위의, 데이터의 일부로서 고유 워드의 "잘못된 복사" 를 검출할 가능성은, 서브-프레임 크기가 더 긴 때보다 크다. 동시에, 순방향 링크 데이터 레이트가 느릴 때, 잘못된 검출로부터 회복할 수 있는 능력은 더 작으며, 그렇게 하는데 걸리는 시간은 더 길다.
C. 초기화
상술한 바와 같이, "시작" 시간에, 호스트는 순방향 링크다 최소로 요구되는, 소정의, 1 Mbps 의 데이터 레이트 이하에서 동작하도록 구성하고, 서브-프레임 길이 및 미디어-프레임 레이트가 주어진 애플리케이션에 적절하도록 구성한다. 즉, 순방향 링크 및 역방향 링크 모두 타입-1 인터페이스를 이용하여 동작하기 시작한다. 일반적으로, 이러한 파라미터는, 호스트가 클라이언트 디스플레이를 위한 소정 구성 또는 능력 (또는 다른 타입의 클라이언트 디바이스) 을 결정하는 동안, 일시적으로 이용되려 한다. 호스트는, 디스플레이 또는 클라이언트가 클라이언트 용량 패킷에 응답할 것을 요청하기 위해, 일 (1) 의 값으로 설정된 요청 플래그의 비트 '0' 을 가지는 역방향 링크 캡슐화 패킷에 의해 서브-프레임 헤더 패킷을 순방향 링크를 통해 송신 또는 전달한다. 일단 디스플레이가 순방향 링크 상에서 (와 함께) 동기화를 획득한다면, 이는 클라이언트 용량 패킷 및 클라이언트 요청 및 상태 패킷을 역방향 링크 또는 채널을 통해 송신한다.
호스트는 어떻게 최적 또는 소정 레벨의 성능을 위한 링크를 재구성할지를 결정하기 위해 클라이언트 용량 패킷의 컨텐츠를 시험한다. 호스트는, 호스트 및 클라이언트가 서로 간에 호환되는 버젼의 프로토콜을 이용하는 것을 확인하기 위해 프로토콜 버젼 및 최소 프로토콜 버젼 영역을 시험한다. 일반적으로, 프로토콜 버젼은 호환성이 프로토콜의 다른 요소들이 호환되거나 호환되는 것과 같이 완전히 이해되는 때일 지라도 판정될 수 있도록 클라이언트 용량 패킷의 첫번째 2 개의 파라미터들로서 남아있다.
D. CRC 프로세싱
모든 패킷 타입에 대하여, 패킷 프로세서 상태 머신은 CRC 검사기가 적절히 또는 알맞게 제어되는 것을 확인한다. 또한, 이는 CRC 비교가 하나 이상의 에러로 결론지어질 때, CRC 에러 카운터를 증가시키며, 이는 CRC 카운터를 프로세싱된 각 서브-프레임의 시작시 리셋시킨다.
E. 동기화 검사의 다른 손실량
상술한 일련의 단계들 또는 상태들이 더 높은 데이터 레이트 또는 수율 속도를 생성하기 위해 작용하는 반면, 출원인은 호스트와의 동기화의 손실이 있음을 선언하기 위해 클라이언트가 사용하는 조건들의 변화 또는 다른 배열이 더 높은 데이터 레이트 또는 수율을 획득하도록 효율적으로 이용될 수 있음을 발견하였다. 새로운 진보성을 가진 실시형태는 동일한 기본 구조를 가지나, 상태를 변경하기 위한 조건들이 변경되었다. 또한, 새로운 카운터가 서브-프레임 동기화를 위한 검사를 이루는 것을 원조하기 위해 구현된다. 이러한 단계들 및 조건들은 도 63 과 상대적으로 제공되며, 이는 본 방법 또는 상태 머신의 동작들을 확립하는데 유용한 일련의 조건들 및 상태들을 나타낸다. 명확히 하기 위해, 오직 "싱크 상태들을 획득하는 것" 및 "인 싱크 상태들" 부분만이 도시된다. 또한, 결과적인 상태가 상태 머신 자체가 그러하듯이 실질적으로 동일하기 때문에, 그들은 동일한 번호를 이용한다. 그러나, 상태 (및 상태 머신의 조건) 을 변경하기 위한 조건들이 다소 변하며, 차이를 식별하는 데의 편의로서, 2 개의 도면들 사이에 분명하게 모두 번호 매겼다(1, 2, 3, 4, 5, 및 6 대 61, 62, 63, 64 및 65). 어싱크 프레임 (ASYNC FRAME) 상태는 본 설명에서 고려되지 않기 때문에, 하나의 상태 (4904) 및 조건 (6) 은 본 도면에서 더 이상 이용되지 않는다.
도 63 에서, (디스플레이 또는 표현을 위한) 시스템 또는 클라이언트는 상태 머신 (5000) 가 도 49 에서와 같이 미리 선택된 "싱크 없음" 내에 있는 상태로 시작한다. 싱크 없음 상태 (4902) 로부터의 변경 상태들에 대한 제 1 상태 변경은 싱크 패턴의 발견인 조건 (64) 내에 있다. 또한, 서브-프레임 헤더의 CRC가 이 패킷 상에서 통과하는 것을 가정하여 (조건 61 충족), 패킷 프로세서 상태 머신의 상태는 인-싱크 상태 (4908) 로 변경된다. 싱크 에러, 조건 62 는 상태 머신이 상태 (4910) 및 상태 (4912) 로의 두번째 발생으로 시프팅되도록 한다. 그러나, MDDI 패킷의 임의의 CRC 에러는 상태 머신이 인-싱크 상태 (4908) 에서 하나의 싱크 에러 상태 (4910) 로 이동하는 것을 유도한다. 임의의 MDDI 패킷의 또 다른 CRC 에러는 2 개의 싱크 에러 상태 (4912) 로 이동하는 것을 유도한다. 정확한 CRC 값으로 디코딩된 패킷은 상태 머신이 인-싱크 상태 (4908) 로 복귀하는 것을 유도한다.
변화된 것은 CRC 값 또는 '모든' 패킷에 대한 결정을 이용하는 것이다. 즉, 상태 머신이 단순히 서브-프레임 헤더 패킷들을 관측하는 대신 동기화의 손실을 결정하기 위해 모든 패킷에 대한 CRC 값을 주시하도록 한다. 이 구성 또는 프로세스에서, 동기화의 손실은 고유 워드 및 단지 서브-프레임 CRC 값을 이용하여 결정되지 않는다.
새로운 인터페이스 구현은 MDD 인터페이스 링크가 동기화 에러를 더욱 매우 빠르게 인식하는 것을 허용하며, 이에 따라 그들이 또한 더 빨리 복구하는 것을 회복하도록 한다.
이 시스템을 더 강하게 하기 위해, 클라이언트는 또한 서브-프레임 커운터를 부가하거나, 활용한다. 그 후, 고유 워드가 수신되거나 신호에 발생할 것이 기대되는 시간에 그 고유 워드의 존재를 검사한다. 고유 워드가 정확한 시간에 발생하지 않는 경우, 클라이언크는 동기화 실패가 발생한 것을, 서브-프레임 길이보다 매우 큰 몇몇 (여기서는 3) 패킷 시간 또는 기간을 기다려야 하는 경우보다 매우 빨리 인식할 수 있다. 고유 워드에 대한 검사가 고유 워드가 존재하지 않는 것, 즉 타이밍이 정확하지 않음을 나타내는 경우, 클라이언트는 즉시 동기화의 링크 손실을 선언하고, 싱크 없음 상태로 이동한다. 적절한 고유 워드의 존재에 대한 검사 프로세스는 구요 단어가 정확하지 않음을 말하는 조건 65 (콘드 65) 를 상태 머신에 부가한다. 서브-프레임 패킷이 클라이언트에 수신될 것이 예상되고 매치업되지 않을 경우, 클라이언트는 즉시 상태 (4910) 및 상태 (4912) 를 거쳐 가로지를며 일반적으로 마주치는 다수의 싱크 에러 (조건 62) 를 기다리는 부가적인 시간을 저장하는 싱크 없음 상태 (4902) 로 이동한다.
이 변화는 서브-프레임 길이를 카운트하기 위해 클라이언트 코어 내의 부가적인 카운터 또는 카운팅 기능을 이용한다. 일 실시형태에서, 카운트 다운 기능이 이용되고, 정확하게 프로세싱된 임의의 패킷의 전달은 카운터가 종료된 경우 서브-프레임 고유 워드를 검사하기 위해 중단된다. 또한, 카운터는, 현재 패킷이 검사되는 시점에서, 소정의 최대 또는 특별한 소정값과 비교하는 카운트로, 업 카운트할 수 있다. 이 프로세스는 클라이언트가 비정상적으로 긴 길이를 가지고 클라이언트에 부정확하게 수신된 패킷을 디코딩하는 것으로부터 보호한다. 서브-프레임 길이 카운터가 디코딩된 몇몇 다른 패킷을 중단시키는 것이 요구되는 경우, 어떠한 패킷도 서브-프레임 경계를 가로지지 않기 때문에 동기화 손실은 결정될 수 있다.
IX. 패킷 프로세싱
상태 머신이 수신하는 상술한 각 타입의 패킷에 있어, 그 패킷은 인터페이스 동작을 구현하기 위한 특정 단계 또는 일련의 단계들을 수행한다. 일반적으로, 순방향 링크 패킷은 이하의 표 12 에 나열된 예시적인 프로세싱에 따라 프로세싱된다.
패킷 타입 패킷 프로세서 상태 머신 응답
서브-프레임 헤더 (SH) 양호한 패킷을 확인하고, 서브-프레임 길이 필드를 포착하고, 패킷 파라미터를 범용 프로세서로 송신함.
필터 (F) 데이터를 무시함.
비디오 스트림 (VS) 비디오 데이터 포맷 설명어 및 다른 파라미터를 해석하고, 필요한 경우 패킹된 픽셀을 언패킹하고, 필요한 경우 컬러 맵을 통해 픽셀을 번역하고, 픽셀 데이터를 비트맵 내의 적절한 위치에 기록함.
오디오 스트림 (AS) 오디오 샘플 레이트 설정을 오디오 샘플 클럭 생성기로 전송하고, 특정 사이즈의 오디오 샘플들을 구분하고, 필요한 경우 오디오 샘플을 언패킹하고 오디오 샘플들을 적절한 오디오 샘플 FIFO 에 라우팅함.
컬러 맵 (CM) 컬러 맵 크기 및 오프셋 파라미터를 판독하고, 컬러 맵 데이터를 컬러 맵 메모리 또는 저장 위치에 기록함.
역방향 링크 캡슐화 (REL) 적절한 시간에 역방향으로 패킷 송신을 촉진함. 역방향 링크 플래그가 시험되고, 클라이언트 용량 패킷들이 필요에 따라 송신된다. 또한, 클라이언트 요청 및 상태 패킷들이 적절히 송신된다.
클라이언트 용량 (CC) 호스트에 의해 요청될 때, 이 타입의 패킷을 역방향 링크 캡슐화 패킷의 역방향 링크 플래그 필드를 이용하여 송신됨.
키보드 (K) 이러한 패킷이 존재하고, 이용이 요구되는 경우, 키보드 타입 디바이스와 통신하는 범용 프로세서로 또는 범용 프로세서로부터 이러한 패킷들을 이동시킴.
포인팅 디바이스 (PD) 이러한 패킷이 존재하고, 이용이 요구되는 경우, 포인팅 타입 디바이스와 통신하는 범용 프로세서로 또는 범용 프로세서로부터 이러한 패킷들을 이용시킴.
링크 셧다운 (LS) 사실 링크 셧다운을 기록하고 범용 프로세서에 알림
클라이언트 서비스 요청 및 상태 (CSRS) 이 타입의 패킷을 역방향 링크 캡슐화 패킷의 제 1 패킷으로서 송신함.
비트 블록 전달 (BBT) 비디오 데이터 포맷 설명어와 같은 패킷 파리미터를 해석하고, 어떤 픽셀을 우선 이동할 것인지 결정하고 요구에 따라 비트맵 내의 픽셀들을 이용시킴.
비트맵 영역 필 (BAF) 패킷 파라미터를 해석하고, 요구되는 경우 컬러 맵을 통해 픽셀들을 번역하며, 픽셀 데이터를 비트맵 내의 적절한 위치에 기록함.
비트맵 패턴 필 (BPF) 패킷 파라미터를 해석하고, 요구되는 경우 패킹된 픽셀 데이터를 언패킹하고, 픽셀 데이터를 비트맵 내의 적절한 위치에 기록함.
통신 링크 채널 (CLC) 이 데이터를 직접 법용 프로세서로 송신함.
휴지 동안 클라이언트 서비스 요청 (CSR) 범용 프로세서가 송신 요청의 낮은-레벨 기능들을 제어하며, 링크가 그 링크 자신상에서 재시작하는 컨텐션 (contention) 을 검출.
인터페이스 타입 핸드오프 요청 (ITHR) 및 인터페이스 타입 확인응답 (ITA) 이러한 패킷을 범용 프로세서로 또는 범용 프로세서로부터 이동시킬 수 있음. 이 타입의 패킷을 수신하고 확인응답과의 응답을 공식화하는 로직은 실질적으로 최소이다. 따라서, 이 동작은 또한 패킷 프로세서 상태 머신에 구현될 수 있다. 그 결과적인 핸드오프는 낮은-레벨 물리 계층 동작으로서 발생하며, 범용 프로세서의 기능성 또는 기능화에 영향을 줄 가능성이 작다.
수행 타입 핸드오프 (PTH) 이러한 패킷들상에서 직접 또는 그들을 범용 프로세서로 전달함으로써 동작할 수 있으며, 또한 하드웨어가 모드 변환을 수행하도록 명령함.
X. 역방향 링크 데이터 레이트 감축
호스트 링크 제어기를 위해 이용되는 특정 파라미터가 매우 바람직한 최대 또는 더욱 최적화된 (스케일의) 역방향 링크 데이터 레이트를 획득하기 위해 특정 방식으로 조정되거나 구성될 수 있음이 본 발명자에 의해 관측되었다. 예를 들어, 역방향 링크 캡슐화 패킷의 역방향 데이터 패킷 필드를 전달하는데 이용되는 시간 동안, MDDI_Stb 신호쌍이 순방향 링크 데이터 레이트의 전반으로 주기적 데이터 클록을 생성하기 위해 토글링된다. 이는 호스트 링크 제어기가, 모두 0 을 송신하는 것처럼 MDDI_Data0 신호에 대응하는 MDDI_Stb 신호를 생성하기 때문이다. MDDI_Stb 신호는 호스트로부터, 역방향 데이터가 호스트로 다시 송신되는 디스플레이로부터 역방향 링크 데이터를 전달하기 위한 클록 신호를 생성하는데 이용되는 클라이언트로 전달된다. 신호 전달에서 마주치는 통상적인 지연량 및 MDDI 를 채택하는 시스템에서의 순방향 및 역방향 경로에서의 프로세싱은 도 50 에 도시된다. 도 50 에서, 일련의 지연값 1.5 nsec, 8.0 nsec, 2.5 nsec, 2.0 nsec, 1.0 nsec, 1.5 nsec, 8.0 nsec 및 2.5 nsec 가 Stb+/- 생성, 클라이언트로의 케이블 전달, 클라이언트 수신기, 클록 생성, 신호 클록킹, DataO+/- 생성, 호스트로의 케이블 전달, 및 호스트 수신기단을 위한 프로세싱부 부근에 도시된다.
순방향 링크 데이터 레이트 및 마주치는 신호 프로세싱 지연에 따라, 이 "라운드 트립" 효과 또는 완성될 이벤트들 세트를 위한 MDDI_Stb 신호상의 1 사이클 보다 더 긴 시간을 요구할 수 있으며, 이는 시간 또는 사이클의 바람직하지 않은 양을 소비하는 결과를 낳는다. 이 문제를 회피하기 위해, 역방향 레이트 디바이저는 역방향 링크 상의 1 비트 시간을 MDDI_Stb 신호의 다수의 사이클로 하는 것을 가능하게 한다. 이는 역방향 링크 데이터 레이트가 순방향 링크 레이트보다 작은 것을 의미한다.
인터페이스를 통한 신호 지연의 실제 길이가, 이용된 각각의 특정 호스트-클라이언트 시스템 또는 하드웨어에 따라 다를 수 있다. 요구되지 않을지라도, 일반적으로 각각의 시스템이 시스템 내의 실제 지연을 측정하기 위해 라운드 트립 지연 측정 패킷을 이용함으로써 더욱 잘 수행되도록 되어, 역방향 레이트 디바이저가 최적값으로 설정될 수 있다. 호스트는 보다 간단하지만 보다 늦은 속도에서 동작하는 기본 데이터 샘플링 또는 보다 복잡하지만 보다 높은 역방향 데이터 레이트를 지원하는 진보된 데이터 샘플링을 지원할 수도 있다. 양 방법을 지원하는 클라이언트 용량은 동일한 것으로 고려된다.
라운드 트립 지연은 호스트가 라운드 트립 지연 측정 패킷을 클라이언트로 송신하도록 함으로써 측정될 수 있다. 클라이언트는, 그 패킷 내의 측정 기간 필드라 설명되는 미리 선택된 측정 윈도우 대신 또는 윈도우 동안, 이 패킷들의 시퀀스를 호스트로 다시 송신함으로써 이 패킷에 응답한다. 이 측정의 상세한 타이밍은 상술하였다. 라운드 트립 지연은 역방향 링크 데이터가 안전하게 샘플링될 수 있는 레이트를 결정하는데 이용된다.
라운드 트립 지연 측정은 측정 기간 필드의 시작과 0xff, 0xff, 0x00 응답 시퀀스가 클라이언트로부터 호스트에서 다시 수신되는 시간의 시작 사이에서 발생하는 순방향 링크 데이터 클록 간격들의 수를 결정, 탐지, 카운팅하는 단계로 이루어진다. 클라이언트로부터의 응답이, 측정 카운트가 증가하기 전에 순방향 링크 클록 기간의 작은 부분에서 수신될 수 있는 것이 가능하다. 이 소정되지 않은 값이 역방향 레이트 디바이저를 계산하는데 이용되는 경우, 신뢰할 수 없는 데이터 샘플링으로 인해 역방향 링크 상에 비트 에러가 발생할 수 있다. 이 상황의 실시예가 도 51 에 도시되어 있으며, 여기서 호스트에서의 MDDI_Data 를 나타내는 신호, 호스트에서의 MDDI_Stb 호스트 내의 순방향 링크 데이터 클록, 및 지연 카운트는 도시적 폼으로 도시된다. 도 51 에서, 응답 시퀀스는 지연 카운트가 6 으로부터 7 로 증가시키려 하기 전에 순방향 링크 클록 기간의 부분을 클라이언트로부터 수신한다. 지연이 6 일 것으로 추측되면, 호스트는 비트 변환 직후에 또는 가능하게는 비트 변환 중에 역방향 데이터를 샘플링할 것이다. 이 카운트는 호스트에서의 잘못된 샘플링을 초래할 수 있다. 이러한 이유로, 측정된 지연은 통상적으로 역방향 데이트 디바이저를 계산하는데 이용되기 전에 1 씩 증가해야 한다.
역방향 링크 디바이저는 호스트가 역방향 링크 데이터를 샘플링하기 전에 기다려야 하는 MDDI_Stb 사이클의 수이다. MSSI_Stb 가 순방량 링크 레이트의 절반의 레이트로 사이클되기 때문에, 발생된 라운드 트립 지연 측정은 2 에 의해 나누어져야하며, 그 후 다음 정수로 된다. 식으로 표현하면, 그 관계는:
Figure 112006033870809-PCT00010
이다. 주어진 실시예에서 이는 :
Figure 112006033870809-PCT00011
이다.
본 실시예에서 이용된 라운드 트립 지연 측정이 6 에 반대되게 7 인 경우, 역방향 레이트 디바이저는 또한 4 일 것이다.
역방향 링크 데이터는 호스트에 의해 역방향 링크 클록의 상승 에지에서 샘플링된다. 역방향 링크 클록을 생성하기 위해 호스트와 클라이언트 양측 모두에 카운터 또는 이와 유사한 공지의 회로가 존재한다. 카운터는 역방향 링크 캡슐화 패킷의 역방향 링크 패킷 필드 내의 제 1 비트의 시작에서 역방향 링크 클록의 제 1 상승 에지가 발생하도록 초기화된다. 이는 도 52 에서 이하에 주어진 실시예에 대하여 설명된다. 카운터는 MDDI_Stb 신호의 각 상승 에지에서 증가하고, 카운트를 마칠때까지의 발생한 카운트의 수가 역방향 링크 캡슐화 패킷 내의 역방향 레이트 디바이저 파라미터로 설정된다. MDDI_Stb 신호가 순방향 링크 레이트의 절반에서 토글링하기 때문에, 역방향 링크 레이트는 역방향 레이트 제수에 의해 나누어진 순방향 링크 레이트의 절반이다. 예를 들어, 순방향 링크 레이트가 200 Mbps 이고, 역방향 레이트 디바이저가 4 인 경우, 역방향 링크 데이터 레이트는 :
Figure 112006033870809-PCT00012
와 같이 표현된다.
역방향 링크 캡슐화 패킷 내의 MDDI_Data0 및 MDDI_Stb 신호의 타이밍을 도시하는 실시예는 도 52 에 도시되며, 여기서 설명을 위한 패킷 파라미터들은:
패킷 길이 = 1024 (0x0400) 라운드 트립 1 길이 = 1
패킷 타입 = 65 (0x41) 라운드 트립 2 길이 = 1
역방향 링크 플래그 = 0 역방향 레이트 디바이저 = 2
파라미터 CRC = 0xdb43 모두 0 은 0x00
와 같은 값을 가진다.
패킷 길이와 파라미터 CRC 필드 사이의 패킷 데이터는 :
0x00, 0x04, 0x41, 0x00, 0x02, 0x01, 0x01, 0x43x, 0xdb, 0x00 .. 이다.
클라이언트로부터 복귀한 제 1 역방향 링크 패킷은 패킷 길이 7 및 패킷 타입 70 을 가진 클라이언트 요청 및 상태 패킷이다. 이 패킷은 바이트 값 0x07, 0x00, 0x46,...등등으로 시작한다. 그러나, 오직 제 1 바이트 (0x07) 만이 도 52 에서 볼 수 있다. 이 제 1 역방향 링크 패킷은 실제 역방향 링크 지연을 설명하기 위해 그 도면에서 하나의 역방향 링크 클록 기간 만큼 시간-시프팅된다. 0 의 호스트로부터 클라이어언트로의 라운드 트립 지연을 가진 이상적인 파형이 점선 트레이스로서 도시된다.
파라미터 CRC 필드의 MS 바이트는 전달되고, 패킷 타입에 의해 진행되어, 모두 0 인 필드로 된다. 호스트로부터의 스트로브는 1 로부터 0 으로 스위칭되며, 호스트로부터의 데이터가 레벨을 변경함에 따라 다시 1 로 돌아와, 더 넓은 펄스를 형성한다. 데이터가 0 으로 됨에 따라, 스트로브는 더 높은 레이트로 스위칭되며, 오직 데이터 라인 상의 데이터의 변화만이 정렬 필드의 종단 근방을 변경하는 것을 유도한다. 스트로브는, 연장된 시간 기간에 대하여 데이터 신호의 고정된 0 또는 1 레벨 및 펄스 패턴 (에지) 상에서 하강하는 변환으로 인해 그 도면의 나머지에서 더 높은 레이트로 스위칭된다.
호스트를 위한 역방향 링크 클록은 클록이 역방향 링크 패킷을 수용하기 위해 시작하는 라운드 트립 1 기간의 종료까지 0 에 있다. 그 도면의 하부에 있는 화살표는, 나머지 본 개시로부터 명백한 바와 같이 데이터가 샘플링되는 시점을 나타낸다. 전달된 제 1 바이트의 패킷 필드 (여기서 11000000) 는 라운드 트립 1 이후에 시작하는 것으로 도시되며, 그 라인 레벨은 디스에이블된 호스트 드라이버로부터 안정화된다. 비트 3 에 대하여 보는 바와 같이, 제 1 비트의 이동에서의 지연은 데이터 신호에 대한 점선으로된 라인들에서 볼 수 있다.
도 53 에서, 순방향 링크 데이터 레이트에 기초하여 역방향 레이트 디바이저의 통상적인 값을 관찰할 수 있다. 실제 역방향 레이트 디바이저는 적절한 역방향 링크 동작을 보장하기 위해 라운드 트립 링크 측정의 결과로서 결정된다. 제 1 영역 (5302) 은 안전 동작의 영역에 대응하고, 제 2 영역 (5304) 은 한계 (marginal) 성능의 영역에 대응하며, 한편 제 3 영역 (5306) 은 적절히 기능할 가능성이 적은 설정을 나타낸다.
라운드 트립 지연 측정 및 역방향 레이트 디바이저 설정은 송신 또는 수신된 비트의 수보다는 실제 클록 기간 단위의 관점에서 표현되고 동작하기 때문에, 순방향 또는 역방향 링크 상의 인터페이스 타입 설정들 중 어느것으로 동작하는 동안, 라운드 트립 지연 측정 및 역방향 레이트 디바이저 설정은 동일하다.
XI. 턴-어라운드 및 보호시간
전술한 바와 같이, 역방향 링크 캡슐화 패킷 내의 턴-어라운드 1 필드 및 라운드-트립 지연 측정 패킷 내의 보호시간 1 은, 클라이언트 인터페이스 드라이버가 인에이블되기 전에 인터페이스 드라이버가 디스에이블되게 하는 시간 길이에 대한 값을 지정한다. 턴-어라운드 2 및 보호시간 2 는, 호스트 드라이버가 인에이블되기 전에 클라이언트 드라이버가 디스에이블되게 하는 시간값을 제공한다. 일반적으로, 보호시간 1 필드 및 보호시간 2 필드는, 조정될 의사가 없는 길이에 대한 사전-설정되거나 사전-선택된 값으로 충만된다. 사용되는 인터페이스 하드웨어에 의존하여, 이들 값은 실험적 데이터를 사용하여 전개되고, 어떤 경우에 동작을 개선시키기 위하여 조정될 수도 있다.
수개의 인자들이 턴-어라운드 1 의 길이의 결정에 기여하고, 호스트에서의 MDDI_Data 드라이버의 최대 디스에이블 시간 및 순방향 링크 데이터 레이트가 존재한다. 최대 호스트 드라이버 디스에이블 시간은 표 XI 에 명기되어 있으며, 여기서, 드라이버는 디스에이블에 대하여 최대 약 10nsec 가 걸리고, 인에이블에 대하여 약 2nsec 가 걸림을 나타낸다. 호스트 드라이버가 디스에이블되는데 요구되는 순방향 링크 클록의 최소 개수는 다음의 관계식, 즉,
Figure 112006033870809-PCT00013
에 따라 표현된다.
턴-어라운드 1 의 허용되는 값 범위는 다음의 관계식, 즉,
Figure 112006033870809-PCT00014
에 따라 표현되며, 여기서, Interface Type Factor 는 타입-1 에 대하여 1, 타입 2 에 대하여 2, 타입 3 에 대하여 4, 타입-4 에 대하여 8 이다.
상기로부터 2 개의 식을 조합하면, Interface Type Factor 항이 소거되어, 턴-어라운드 1 은,
Figure 112006033870809-PCT00015
과 같이 정의됨을 알 수 있다.
예를 들어, 1500 Mbps 타입-3 순방향 링크는,
Figure 112006033870809-PCT00016
의 턴-어라운드 1 지연을 이용한다.
라운드-트립 지연이 증가함에 따라, 타이밍 마진은, 호스트가 디스에이블되는 시점으로부터 클라이언트가 인에이블되는 시간까지 개선된다.
턴-어라운드 2 용으로 통상 사용되는 시간 길이를 결정하는 인자는 순방향 링크 데이터 레이트, 디스플레이에서의 MDDI_Data 드라이버의 최대 디스에이블 시간, 및 통신 링크의 라운드-트립 지연이다. 클라이언트 드라이버를 디스에이블시키는데 요구되는 시간의 계산은, 상술한 호스트 드라이버에 대한 것과 본질적으로 동일하며, 다음의 관계식, 즉,
Figure 112006033870809-PCT00017
에 따라 정의되며, 턴-어라운드 2 에 대하여 허용되는 값 범위는,
Figure 112006033870809-PCT00018
으로 표현된다.
예를 들어, 10 개의 순방향 링크 클록의 라운드-트립 지연을 갖는 1500 Mbps 타입-3 순방향 링크는 대략,
Figure 112006033870809-PCT00019
Figure 112006033870809-PCT00020
의 턴-어라운드 2 를 사용한다.
XII. 또 다른 역방향 링크 타이밍
상술한 타이밍 및 보호대역의 사용이 고속 데이터 전달 레이트 인터페이스를 달성하도록 하지만, 본 발명자들은 역방향 타이밍 발견을 변경함으로써, 라운드-트립 시간보다 더 짧은 역방향 비트 길이를 허용하는 기술을 발견하였다.
상술된 바와 같이, 역방향 링크의 타이밍으로의 이전의 접근법은, 제 1 비트가 IO 클록의 상승 에지에서 샘플링될 때까지 역방향 타이밍 패킷의 보호시간 1 의 마지막 비트로부터 클록 사이클의 수가 카운팅되도록 구성된다. 그것은, MDD 인터페이스에 대한 입력 및 출력을 타이밍하는데 사용되는 클록 신호(들)이다. 또한, 역방향 레이트 디바이저 (divisor) 에 대한 계산은,
Figure 112006033870809-PCT00021
에 의해 주어진다.
이것은, 매우 신뢰성있는 역방향 링크를 발생시키는 라운드-트립 지연과 동일한 비트폭을 제공한다. 그러나, 그 역방향 링크는, 본 발명자들이 이용하길 원하는, 더 신속하거나 더 고속의 데이터 전달 레이트로 구동할 수 있도록 도시되어져 있다. 새로운 진보성있는 기술은 인터페이스의 추가적인 능력을 이용하여 더 높은 속도를 달성하게 한다.
이것은 호스트에게, 샘플링이 될 때까지 클록 사이클의 개수를 카운트하게 함으로써 달성되며, 그 호스트는 역방향 타이밍 패킷 동안에 상승 에지 및 하강 에지 모두에서 데이터 라인을 샘플링한다. 이것은 호스트로 하여금 비트가 안정적임을 보장하기 위하여 역방향 비트 내에서 가장 유용하거나 훨씬 최적인 샘플링 포인트를 선택하게 한다. 그것은, 역방향 트래픽 역방향 캡슐화 패킷에 대한 데이터를 샘플링하기 위해 가장 유용하거나 최적인 상승 에지를 찾는 것이다. 최적인 샘플링 포인트는, 첫번째 1 이 상승 에지 또는 하강 에지에서 발견되었는지 여부 및 역방향 링크 디바이저 모두에 의존한다. 새로운 타이밍 방법은 호스트로 하여금 역방향 캡슐화 패킷의 어디에서 샘플링되었는지를 판정하기 위해 역방향 링크 타이밍에 대하여 클라이언트에 의해 송신된 OxFF OxFF OxOO 패턴의 제 1 에지를 오직 탐색하게만 한다.
도달하는 역방향 비트, 및 다양한 역방향 레이트 디바이저를 비트가 탐색하는 방법이, 보호시간 1 의 마지막 비트 이래로 발생된 다수의 클록 사이클과 함께, 도 64 에 도시되어 있다. 도 64 에서, 제 1 에지가 상승 에지와 하강 에지 (상승/하강으로 표시함) 사이에 발생하면, 1 의 역방향 레이트 디바이저에 대한 최적의 샘플링 포인트인 최적의 샘플 포인트는, 그것이 역방향 비트의 주기 내에서 발생하는 오직 상승 에지일 때, 'b' 로 표시된 클록 사이클 에지임을 알 수 있다. 2 의 역방향 레이트 디바이저에 대하여, 최적의 샘플링 포인트는, 사이클 에지 'c' 가 'b' 보다 비트 에지에 더 근접할 때에도, 여전히 클록 사이클 리딩 에지 (leading edge) 'b' 일 가능성이 있다. 4 의 역방향 레이트 디바이저에 대하여, 최적의 샘플링 포인트는, 값이 가능하게 안정화된 역방향 비트의 백 에지 (back edge) 에 더 근접할 때, 클록 사이클 에지 d' 일 가능성이 있다.
그러나, 도 64 를 다시 참조하면, 제 1 에지가 하강 에지와 상승 에지 (하강/상승으로 표시함) 사이에서 발생하면, 1 의 역방향 레이트 디바이저에 대한 최적의 샘플링 포인트는, 그것이 역방향 비트 시간 주기 내의 오직 상승 에지일 때, 샘플링 포인트 클록 사이클 에지 'a' 이다. 2 의 역방향 레이트 디바이저에 대하여, 최적의 샘플링 포인트는 에지 'b' 이며, 4 의 역방향 레이트 디바이저에 대하여, 최적의 샘플링 포인트는 에지 'c' 이다.
역방향 레이트 디바이저가 점점 더 커짐에 따라, 중앙에 가장 근접한 상승 에지여야 하는 경우에, 최적의 샘플링 포인트는 확인 또는 선택하기가 더 용이해 진다.
호스트는 이러한 기술을 이용하여, 타이밍 패킷 데이터의 상승 데이터 에지가 데이터 라인 상에서 관측되기 전에 상승 클록 에지의 개수를 발견할 수 있다. 그 후, 에지가 상승 에지와 하강 에지 사이 또는 하강 에지와 상승 에지 사이에서 발생하는지, 및 역방향 레이트 디바이저가 무엇인지에 기초하여, 얼마나 많은 추가적인 클록 사이클이 다수의 카운터에 추가되는지, 가능하면 중앙에 근접할 때 비트가 항상 샘플링되는지를 판정할 수 있다.
일단 호스트가 클록 사이클의 수를 선택 또는 결정하였으면, 클라이언트와 함께 다양한 역방향 레이트 디바이저를 "탐색" 하여, 특정 역방향 레이트 디바이저가 작동하는지를 결정할 수 있다. 호스트 (및 클라이언트) 는 1 의 디바이저로 시작하고 클라이언트로부터 수신된 역방향 상태 패킷의 CRC 를 확인하여, 이 역방향 레이트 펑션이 적절하게 데이터를 전달하는지를 결정할 수 있다. 만약 CRC 가 손상되면, 샘플링 에러가 발생할 가능성이 있으며, 호스트는 역방향 레이트 디바이저를 증가시키고 상태 패킷을 다시 요청하려 할 수 있다. 제 2 의 요청된 패킷이 손상되면, 디바이저가 다시 증가되고 다시 요청될 수 있다. 만약 이 패킷이 정확하게 디코딩되면, 이 역방향 레이트 디바이저는 모든 추후의 역방향 패킷용으로 이용될 수 있다.
이 방법은, 역방향 타이밍이 초기의 라운드-트립 타이밍 추정치로부터 변경되지 않기 때문에 효과적이고 유용하다. 만약 역방향 링크가 안정적이면, 클라이언트는 역방향 링크 장애가 존재하더라도 순방향 링크 패킷을 계속 디코딩한다. 물론, 이 방법은 완전한 역방향 링크를 보장하지 않기 때문에, 링크에 대한 역방향 링크 디바이저를 설정하는 것은 여전히 호스트의 책임이다. 또한, 디바이저는, IO 클록을 발생시키는데 이용되는 클록의 품질에 주로 의존한다. 만약 그 클록이 상당한 양의 지터를 가지면, 샘플링 에러의 더 큰 확률이 존재한다. 이러한 에러 확률은 라운드-트립 지연에서의 클록 사이클의 양과 함께 증가한다.
이러한 구현은 타입-1 역방향 데이터에 대하여 가장 잘 작동할 것으로 보이지만, 오직 하나의 데이터 쌍을 가장 잘 작동시키는 레이트로 링크를 구동시키기에 잠재적으로 너무 커다란 데이터 라인들 사이의 스큐 (skew) 로 인해 타입-2 내지 타입-4 역방향 데이터에 대하여서는 문제를 제공할 수도 있다. 그러나, 데이터 레이트는, 동작을 위한 타입-2 내지 타입-4 로도 이전의 방법으로 감소될 필요가 없을 수 있다. 또한, 이러한 방법은, 이상적인 또는 최적의 클록 샘플 위치를 선택하기 위해 각각의 데이터 라인에 대하여 복제될 경우에 가장 잘 작동할 수도 있다. 만약 각각의 데이터 쌍에 대하여 동일한 샘플 시간에 있으면, 이 방법은 계속 작동한다. 만약 상이한 샘플 주기에 있으면, 2 개의 상이한 접근법이 사용될 수도 있다. 첫번째 접근법은, 각각의 데이터 쌍에 대하여 동일하지 않더라도, 각각의 데이터 포인트에 대한 원하거나 더 최적인 샘플 위치를 선택하는 것이다. 또한, 호스트는 데이터 쌍의 세트로부터의 모든 비트, 즉, 타입-2 에 대하여 2 비트, 타입-3 에 대하여 4 비트, 및 타입-4 에 대하여 8 비트를 샘플링한 이후에 데이터 스트림을 복원할 수 있다. 다른 옵션은, 각각의 데이터 쌍에 대한 데이터 비트가 동일한 클록 에지에서 샘플링될 수 있도록 호스트가 역방향 레이트 디바이저를 증가시키는 것이다.
XIII. 링크 지연 및 스큐의 효과
MDDI_Data 쌍과 MDDI_Stb 사이의 순방향 링크에 대한 지연 스큐는, 지연 스큐 보상이 사용되지 않으면, 최대 가능한 데이터 레이트를 제한할 수 있다. 타이밍 스큐를 야기하는 지연의 차이는, 아래에서 설명되는 제어기 로직, 라인 드라이버 및 수신기, 그리고 케이블 및 커넥터에 기인한다.
A. 스큐 (MDDI 타입-1) 에 의해 제한되는 링크 타이밍 분석
1. 타입-1 링크의 지연 및 스큐 예
도 41 에 도시된 바와 유사한 통상의 인터페이스 회로가, 타입-1 인터페이스 링크를 수용하기 위해 도 57 에 도시되어 있다. 도 57 에서, 전달 지연 및 스큐에 대한 예시적이거나 통상적인 값이 MDDI 타입-1 순방향 링크의 수개의 프로세싱 또는 인터페이스 스테이지 각각에 대하여 나타나 있다. MDDI_Stb 와 MDDI_Data0 사이의 지연에서의 스큐는 출력 클록의 듀티-사이클이 왜곡되게 한다. 플립-플롭 (5728, 5732) 을 이용한 수신기 플립-플롭 (RXFF) 스테이지의 D 입력에서의 데이터는, 클록 에지 이후에 약간 변경하여 신뢰성있게 샘플링될 수 있게 한다. 그 도면은, 이러한 타이밍 관계를 생성하는데 있어서 2 개의 상이한 문제를 푸는데 이용되는 2 개의 캐스케이드형 지연 라인 (5732a 및 5732b) 을 도시한 것이다. 실제 구현에서, 이들은 단일 지연 엘리먼트로 조합될 수도 있다.
인터페이스를 통한 예시적인 신호 프로세싱에 대한 타입-1 의 데이터, Stb, 및 클록 복원 타이밍은 도 58 에 도시되어 있다.
일반적으로, 현저한 총 지연 스큐는 다음의 스테이지, 즉, 플립-플롭 (5704, 5706) 을 갖는 송신기 플립-플롭 (TXFF); 드라이버 (5708, 5710) 를 갖는 송신기 드라이버 (TXDRVR); 케이블 (5702); 수신기 (5722, 5724) 를 갖는 수신기 라인 수신기 (RXRCVR); 및 수신기 XOR 로직 (RXXOR) 에서의 스큐의 합으로부터 생기거나 발생한다. 지연1 (5732a) 은 다음의 관계식, 즉,
Figure 112006033870809-PCT00022
에 의해 결정되는 RXXOR 스테이지에서의 XOR 게이트 (5736) 의 지연과 일치하거나 그 지연을 초과해야 한다.
이 요건을 만족하여, 수신기 플립-플롭 (5728, 5732) 의 D 입력이 그 클록 입력 전에 변하지 않는 것이 바람직하다. 이것은, RXFF 의 홀드-시간 (hold-time) 이 제로이면 유효하다.
지연2 의 목적 및 기능은 다음의 관계식, 즉,
Figure 112006033870809-PCT00023
에 따라 RXFF 플립-플롭의 홀드-시간을 보상하는 것이다.
다수의 시스템에서, 이것은, 홀드-시간이 제로이기 때문에 제로일 것이며, 물론, 그 경우, 지연2 의 최대 지연 또한 제로일 수 있다.
수신기 XOR 스테이지에서의 스큐에 대한 최악의 기여는, 지연1 은 최대값이며 XOR 게이트로부터 출력된 출력은 다음의 관계식, 즉,
Figure 112006033870809-PCT00024
에 따라 가능하면 조기에 나오는 데이터-레이트/스트로브-얼리 (data-late/strobe-early) 경우에서이다.
이 상황에서, 데이터는 시간에 대하여 매우 근접한 2 개의 비트 주기 (n 및 n+1) 사이에서 변할 수도 있으며, 여기서, 비트 n+1 은 수신기 플립-플롭에 클록킹 (clock) 된다.
MDDI 타입-1 링크의 최대 데이터 레이트 (최소 비트 주기) 는 MDDI 링크에서의 모든 드라이버, 케이블, 및 수신기를 통해 조우되는 최대 스큐 플러스 (+) RXFF 스테이지로의 총 데이터 셋업의 함수이다. RXRCVR 스테이지의 출력까지의 링크에서의 총 데이터 스큐는,
Figure 112006033870809-PCT00025
로서 표현될 수 있으며, 최소 비트 주기는,
Figure 112006033870809-PCT00026
로 주어진다.
도 57 에 도시된 예에서,
Figure 112006033870809-PCT00027
nsec 이며, 최소 비트 주기는,
tBIT-min = 1.4 + 0.3 + 0.2 + 0.5 = 2.4 nsec 또는 대략 416 Mbps 로 표현될 수 있다.
B. MDDI 타입-2, 3, 및 4 에 대한 링크 타이밍 분석
도 41 및 57 에 도시된 바와 유사한 통상의 인터페이스 회로가, 타입-2, 3, 및 4 인터페이스 링크를 수용하기 위해 도 59 에 도시되어 있다. 추가적인 신호 프로세싱을 수용하기 위하여, TXFF (5904), TXDRVR (5908), RXRCVCR (5922) 및 RXFF (5932, 5928, 5930) 에 추가적인 엘리먼트가 사용된다. 도 59 에서, 전달 지연 및 스큐에 대한 예시적이거나 통상적인 값이 MDDI 타입-2 순방향 링크의 수개의 프로세싱 또는 인터페이스 스테이지 각각에 대하여 나타나 있다. 출력 클록의 듀티-사이클에 영향을 주는 MDDI_Stb 와 MDDI_Data0 사이의 지연에서의 스큐에 더하여, 이들 2 개의 신호 모두와 다른 MDDI_Data 신호 사이의 스큐도 존재한다. 플립-플롭 (5928, 5930) 으로 구성된 수신기 플립-플롭 B (RXFFB) 스테이지의 D 입력에서의 데이터는, 클록 에지 이후에 약간 변경되어 신뢰성있게 샘플링될 수 있다. MDDI_Data1 이 MDDI_Stb 또는 MDDI_Data0 보다 더 조기에 도달하면, MDDI_Data1 은 적어도 지연 스큐의 양만큼 샘플링되도록 지연되어야 한다. 이것을 달성하기 위하여, 데이터는 지연 3 지연 라인을 이용하여 지연된다. MDDI_Data1 이 MDDI_Stb 또는 MDDI_Data0 보다 더 늦게 도달하고, 또한, 지연 3 만큼 지연되면, MDDI_Data1 이 변경되는 포인트는 그 다음 클록 에지에 더 근접하게 이동된다. 이 프로세스는 MDDI 타입-2, 3, 또는 4 링크의 데이터 레이트의 상한을 결정한다. 2 개의 데이터 신호와 서로에 대한 MDDI_Stb 의 타이밍 또는 스큐 관계에 대한 어떤 예시적인 상이한 확률이 도 60a, 60b, 및 60c 에 도시되어 있다.
MDDI_DataX 가 가능하면 조기에 도달할 경우에 RXFFB 에서 신뢰성있는 데이터를 샘플링하기 위하여, 지연 3 은 다음의 관계식, 즉,
Figure 112006033870809-PCT00028
에 따라 설정된다.
최대 링크 속도는 최소 허용가능 비트 주기에 의해 결정된다. 이것은 MDDI_DataX 가 가능하면 늦게 도달할 경우에 가장 영향을 받는다. 이 경우, 최소 허용가능 사이클 시간은,
Figure 112006033870809-PCT00029
로 주어진다.
또한, 링크 속도의 상한은,
Figure 112006033870809-PCT00030
이며,
Figure 112006033870809-PCT00031
을 가정한다.
상기 예에서, 최소 비트 주기의 하한은 다음의 관계식, 즉,
tBIT-min(lower-level) = 2·1.4 + 1.5 + 0.5 + 0.1 = 4.8 nsec (이는 약 208 Mbps 임)
으로 주어진다.
이것은, 타입-1 링크로 이용될 수 있는 최대 데이터 레이트보다 훨씬 더 느리다. MDDI 의 자동 지연 스큐 보상 능력은, 그 지연 스큐가 최대 링크 레이트에서 갖는 영향을 현저히 감소시킨다.
XIV. 물리층 상호접속 설명
본 발명에 따른 인터페이스를 구현하는데 유용한 물리 접속은, 호스트 측에서 Hirose Electric Company Ltd. 에 의해 제조된 부분 번호 3260-8S2(01) 및 클라이언트 디바이스 측에서 Hirose Electric Company Ltd. 에 의해 제조된 부분 번호 3240-8P-C 와 같이 상업적으로 이용가능한 부품을 이용하여 실현될 수 있다. 타입-1/타입-2 인터페이스와 이용되는 그러한 커넥터에 대한 예시적인 인터페이스 핀 할당 또는 "핀아웃 (pinout)" 은 표 XIII 에 기입되어 있고 도 61 에 도시되어 있다.
Figure 112006033870809-PCT00032
실드는 호스트 인터페이스에서 HOST_Gnd 에 접속되며, 케이블에서의 실드 드레인 와이어는 클라이언트 커넥터의 실드에 접속된다. 그러나, 실드 및 드레인 와이어는 클라이언트 내부의 회로 그라운드에 접속되지 않는다.
상호접속 엘리먼트 또는 디바이스는, 상대적인 디바이스 사이즈와 비교하여 두드려지거나 미적 감각이 없지 않게, PDA 및 무선 전화, 또는 휴대형 게임 디바이스와 같은 이동 통신 및 컴퓨팅 디바이스와 함께 사용하기에 충분히 작도록 선택 또는 설계된다. 임의의 커넥터 및 케이블링은 통상적인 소비자 환경에서 이용하기에 충분히 내구력이 있어야 하며, 특히, 케이블에 대하여 소형의 사이즈 및 비교적 저렴한 비용을 허용해야 한다. 전달 엘리먼트는, 타입-1 및 타입-2 에 대하여 약 450 Mbps 까지 및 8-비트 병렬 타입-4 버전에 대하여 3.6 Gbps 까지의 전달 레이트를 갖는 차동 NRZ 데이터인 데이터 및 스트로브 신호를 수용해야 한다.
내부 모드 애플리케이션의 경우, 도전체에 대하여 동일한 의미로 커넥터가 사용되지 않거나 그러한 접속 엘리먼트가 극히 소형화되는 경향이 있다. 일 예는, 집적회로를 수용하기 위한 제로 삽입 포스 (zero insertion force) "소켓" 이거나 호스트 또는 클라이언트 디바이스를 하우징하는 엘리먼트이다. 다른 예는, 호스트 및 클라이언트가 다양한 상호접속 도전체로 인쇄 회로 기판 상에 상주하며 집적회로의 상호접속용 도전체 상의 컨택트에 솔더링되는 하우징으로부터 연장하는 "핀" 또는 컨택트를 갖는 것이다.
XV. 동작
본 발명의 실시형태들을 이용하는 인터페이스의 동작 중에 데이터 및 패킷을 프로세싱함에 있어서 개시되는 일반적인 단계의 요약이, 도 55 에서 패킷을 프로세싱하는 인터페이스 디바이스의 개요과 함께, 도 54a 및 도 54b 에 도시되어 있다. 이들 도면에서, 프로세스는, 여기에서 케이블인 통신 경로를 이용하여 클라이언트와 호스트가 접속되어 있는지 여부에 대하여 판정하는 단계 5402 에서 시작한다. 이것은, (USB 인터페이스에 대하여 관측되는 바와 같이) 호스트로의 입력부에서의 커넥터 또는 케이블 또는 신호의 존재를 검출하는 소프트웨어 또는 하드웨어, 또는 다른 공지의 기술을 이용하여 호스트에 의한 주기적인 폴링의 사용을 통하여 발생할 수 있다. 호스트에 접속되는 클라이언트가 없으면, 애플리케이션에 의존하여, 어떠한 소정 길이의 대기 상태에 진입하고, 휴지 모드 (hibernation mode) 로 단순히 진입하거나, 사용자에게 호스트를 재활성화시키도록 액션을 취하도록 요구할 수도 있는 추후 사용을 대기하도록 불활성화시킬 수 있다. 예를 들어, 호스트가 컴퓨터 타입 디바이스 상에 상주할 경우, 사용자는 스크린 아이콘을 클릭하거나, 클라이언트를 검색하도록 호스트 프로세싱을 활성화시키는 프로그램을 요청해야 할 수도 있다. 또한, 호스트 또는 상주 호스트 소프트웨어의 능력 및 구성에 의존하여, USB 타입 접속의 단순한 플러그-인이 호스트 프로세싱을 활성화시킬 수 있다.
일단 클라이언트가 호스트에 접속되거나 호스트가 클라이언트에 접속되거나, 존재하는 것으로서 검출되면, 단계 5404 및 단계 5406 에서, 클라이언트 또는 호스트는 서비스를 요청하는 적절한 패킷을 전송한다. 단계 5404 에서, 클라이언트는 클라이언트 서비스 요청 또는 상태 패킷을 전송할 수 있다. 상술한 바와 같이, 링크는 미리 셧-다운 (shut down) 되거나 휴지 모드일 수 있어서, 이것은 수반되는 통신 링크의 완전한 초기화가 아닐 수도 있다. 일단 통신 링크가 동기화되고, 호스트가 클라이언트와의 통신을 시도하고 있으면, 단계 5408 에서와 같이, 클라이언트 또한 클라이언트 용량 패킷을 호스트에 제공한다. 다음으로, 호스트는, 클라이언트가 수용할 수 있는 전달 레이트를 포함하여 지원의 타입을 결정하기 시작할 수 있다.
또한, 일반적으로, 단계 5410 에서, 호스트 및 클라이언트는 이용될 서비스 모드의 타입 (레이트/속도), 예를 들어, 타입-1, 타입-2 등을 협상한다. 일단 서비스 타입이 확립되면, 호스트는 정보를 전달하기 시작할 수 있다. 또한, 단계 5411 에 도시된 바와 같이, 호스트는 라운드-트립 지연 측정 패킷을 이용하여, 다른 신호 프로세싱과 병렬로 통신 링크의 타이밍을 최적화할 수도 있다.
전술한 바와 같이, 모든 전달은, 단계 5412 에서 전달되는 것으로 나타낸 서브-프레임 헤더 패킷, 이후에, 여기에서 비디오 및 오디오 스트림 패킷인 데이터의 타입, 및 단계 5414 에서 전달되는 것으로 나타낸 필터 패킷으로 시작한다. 오디오 및 비디오 데이터는 미리 준비되거나 패킷에 매핑되며, 필터 패킷들은 필요하거나 원할 경우에 삽입되어, 미디어 프레임에 대하여 원하는 수의 비트를 충만시킨다. 호스트는 순방향 오디오 채널 인에이블 패킷과 같은 패킷을 전송하여 사운드 디바이스를 확성화시킬 수 있다. 또한, 호스트는, 단계 5416 에서, 컬러 맵, 비트 블록 전달 또는 다른 패킷의 전달로서 여기에 나타낸, 상술한 다른 패킷 타입을 이용하여 커맨드 및 정보를 전달할 수 있다. 또한, 호스트 및 클라이언트는 적절한 패킷을 이용하여 키보드 또는 포인팅 디바이스에 관한 데이터를 교환할 수 있다.
동작 동안, 인터페이스 모드의 타입 또는 상이한 데이터 레이트를 원하는 호스트 또는 클라이언트에 유도되는 수개의 상이한 이벤트 중 하나가 발생한다. 예를 들어, 데이터를 통신하는 컴퓨터 또는 다른 디바이스는, 패킷의 준비 또는 프리젠테이션에 있어서 슬로우-다운을 야기하는 프로세싱 데이터의 로딩 조건을 조우할 수 있다. 데이터를 수신하는 클라이언트 디바이스는 전용 AC 전원으로부터 더 제한된 배터리 전원으로 변할 수 있으며, 데이터를 신속하게 전달하거나 커맨드를 용이하게 프로세싱할 수 없거나, 더 제한된 전력 설정 하에 동일한 정도의 해상도 또는 컬러를 이용하지 못할 수도 있다. 다른 방법으로, 어느 하나의 디바이스로 하여금 더 고속의 레이트로 데이터를 전달하게 하여, 제한된 조건이 감소되거나 사라지게 할 수 있다. 이것은 더 바람직하며, 더 고속의 전달 레이트 모드로의 변경이 요청될 수 있다.
이들 또는 다른 타입의 기지(旣知)의 조건들이 발생하거나 변경되면, 호스트 또는 클라이언트는 그 조건을 검출하고 인터페이스 모드의 협상을 시도할 수도 있다. 이것은, 호스트가 다른 모드로의 핸드오프를 요청하는 클라이언트로 인터페이스 타입 핸드오프 요청 패킷을 전송하고 변경이 추구됨을 확인하는 인터페이스 타입 확인응답 패킷을 클라이언트가 전송하며 호스트가 수행 타입 핸드오프 패킷을 전송하여 특정 모드로 변경시키는 단계 5420 에 도시되어 있다.
비록 프로세싱의 특정 오더를 요청하지 않더라도, 그러한 엘리먼트가 호스트 측에 존재할 수도 있지만, 클라이언트 및 호스트는 또한 포인팅 디바이스, 키보드, 또는 클라이언트와 주로 관련된 다른 사용자 타입의 입력 디바이스에 대하여 의도되거나 그 디바이스로부터 수신된 데이터에 관한 패킷들을 교환할 수 있다. 통상적으로, 이들 패킷은, 상태 머신 (5502) 이 아닌 범용 프로세서 타입 엘리먼트를 이용하여 프로세싱된다. 또한, 상술한 커맨드 중 일부는 범용 프로세서 (5504, 5508) 에 의해 프로세싱된다.
데이터 및 커맨드가 호스트와 클라이언트 사이에서 교환된 후, 어떤 포인트에서, 추가적인 데이터가 전달되어야 하는지, 또는 호스트 또는 클라이언트가 그 전달의 서비스를 중단하는지에 관하여 판정된다. 이것은 단계 5422 에 도시되어 있다. 만약 링크가 휴지 상태에 진입하거나 완전히 셧-다운되었으면, 호스트는 링크 셧-다운 패킷을 클라이언트에게 전송하고, 양측은 데이터의 전달을 종료한다.
상기 동작에서 전달되는 패킷들은 호스트 및 클라이언트 제어기에 관하여 미리 설명된 드라이버 및 수신기를 이용하여 전달된다. 도 55 의 개요에 도시된 바와 같이, 이들 라인 드라이버 및 다른 로직 엘리먼트는 상술된 상태 머신 및 범용 프로세서에 접속된다. 또한, 도 55 에서, 상태 머신 (5502) 및 범용 프로세서 (5504 및 5508) 는, 전용 USB 인터페이스, 메모리 엘리먼트, 또는 데이터 소스, 및 비디오 디스플레이 디바이스용 비디오 제어 칩을 포함하지만 이에 제한되지 않는, 인터페이스하는 링크 제어기의 외부에 상주하는 다른 컴포넌트와 같은 도시되지 않은 다른 엘리먼트에 접속될 수도 있다.
프로세서 및 상태 머신은 보호 시간 등에 관련되어 상술된 바와 같은 드라이버의 인에이블 및 디스에이블에 대한 제어를 제공하여, 통신 링크의 효율적인 확립 또는 종료, 및 패킷의 전달을 보장한다.
XVI. 디스플레이 프레임 버퍼
비디오 데이터 버퍼링 요건은 컴퓨팅 그래픽에 비하여 비디오 동화상에 대하여 상이하다. 매우 종종, 픽셀 데이터는 클라이언트의 로컬 프레임 버퍼에 저장되어, 클라이언트 상의 이미지가 국부적으로 리프레시 (refresh) 되게 할 수 있다.
풀-모션 비디오가 디스플레이될 경우 (디스플레이 내의 거의 모든 픽셀이 각각의 미디어 프레임을 변경시킴), 일반적으로, 그 디스플레이 상의 이미지가 제 2 프레임 버퍼로부터 리프레시되는 동안 입력 픽셀 데이터를 하나의 프레임 버퍼에 저장하는 것이 바람직하다. 아래에서 설명되는 바와 같이, 3 개 이상의 디스플레이 버퍼가 가시 (可視) 인공물을 제거하는데 이용될 수도 있다. 하나의 프레임 버퍼에 전체 이미지가 수신되었을 경우, 버퍼의 역할들이 교환될 수 있으며, 새롭게 수신된 이미지는 디스플레이를 리프레시하는데 이용되며, 다른 버퍼는 그 다음 프레임의 이미지로 충만된다. 이러한 개념은, 디스플레이 업데이트 비트를 "01" 로 설정함으로써 픽셀 데이터가 오프라인 이미지 버퍼에 기입되는 도 91a 에 도시되어 있다.
다른 애플리케이션에서, 호스트는 전체 이미지를 반드시 다시 칠할 필요없이 이미지의 오직 작은 부분만을 업데이트하는 것이 필요하다. 이 상황에서는, 도 91b 에 상세히 도시된 바와 같이, 디스플레이를 리프레시하는데 이용되는 버퍼에 새로운 픽셀들을 직접 기입하는 것이 바람직하다.
작은 비디오 윈도우를 갖는 고정된 이미지를 갖는 애플리케이션에서, 도 91c 에 도시된 바와 같이, 고정된 이미지를 양 버퍼에 기입한 후 (디스플레이 업데이트 비트는 "11" 과 같음), 디스플레이 업데이트 비트를 "01" 로 설정함으로써 오프라인 버퍼에 동화상의 픽셀을 기입하는 것이 가장 용이하다.
다음의 법칙은 버퍼 포인터의 유용한 조작을 설명함과 동시에 새로운 정보를 클라이언트에 기입하고 디스플레이를 리프레시한다. 3 개의 버퍼 포인터, 즉, MDDI 링크를 통한 데이터로부터 현재 충만되고 있는 버퍼에 대한 current_fill 포인트, 가장 최근에 충만된 버퍼에 대한 just_filled 포인트, 및 디스플레이를 리프레시하는데 현재 이용되는 버퍼에 대한 being_displayed 포인트가 존재한다. 모든 3 개의 버퍼 포인터는 0 부터 N-1 까지의 값을 포함하며, 여기서, N 은 디스플레이 버퍼의 개수이며, N ≥ 2 이다. 버퍼 포인터에 대한 산술은 mod N 이며, 여기서, N = 3 이고, current_fill = 2 이며, current_fill 의 증가는 current_fill 이 0 으로 설정되게 한다. N = 2 인 간단한 경우에, just_filled 는 항상 current_fill 의 보수이다. 매 MDDI 미디어 프레임 경계 (서브-프레임 카운트 필드를 갖는 서브-프레임 헤더 패킷은 제로와 같음) 에 대하여, 다음의 동작이 특정 순서대로 수행된다, 즉, just_filled 을 current_fill 으로 설정하고 current_fill 를 current_fill+1 과 동일하게 설정한다.
MDDI 비디오 스트림 패킷들은, 디스플레이 업데이트 비트가 '01' 과 같을 경우에 current_fill 에 의해 특정된 버퍼에 픽셀 데이터가 기입되고, 디스플레이 업데이트 비트가 '00' 과 같을 경우에는 just_filled 에 의해 특정된 버퍼에 픽셀 데이터가 기입되며, 디스플레이 업데이트 비트가 '11' 과 같을 경우에는 모든 버퍼에 픽셀 데이터가 기입되는 구조 또는 방법에 따라 버퍼를 업데이트한다. 디스플레이는 being_displayed 포인터에 의해 특정되는 버퍼로부터 리프레시된다. 디스플레이가 하나의 프레임 리프레시 에포크 (refresh epoch) 내의 마지막 픽셀을 리프레시한 후, 및 그 다음 프레임 리프레시 에포크 내의 제 1 픽셀을 리프레시하기 시작하기 전에, 디스플레이 업데이트 프로세스는 being_refreshed 를 just_filled 와 같게 설정하는 동작을 수행한다.
비디오 스트림 패킷은, 픽셀 데이터가 기입될 프레임 버퍼를 특정하는 디스플레이 업데이트 비트의 쌍을 포함한다. 클라이언트 용량 패킷은, 어떤 디스플레이 업데이트 비트의 조합이 클라이언트에서 지원되는지를 나타내는 3 개의 추가적인 비트를 가진다. 다수의 경우, 컴퓨터-생성 이미지는 사용자 입력에 기초하여 증가적으로 업데이트되거나 컴퓨터 네트워크로부터 수신된 데이터로부터 유도될 필요가 있다. 디스플레이 업데이트 비트 조합 "00" 및 "11" 은, 픽셀 데이터를 디스플레이되고 있는 프레임 버퍼 또는 양자의 프레임 버퍼에 기입되게 함으로써 이 동작 모드를 지원한다.
비디오 이미지를 수용할 경우, 도 92 는, 비디오 데이터가 MDDI 링크를 통하여 전송되고 디스플레이 업데이트 비트가 "01" 과 같을 경우에 프레임 버퍼의 쌍을 이용하여 비디오 이미지가 어떻게 디스플레이되는지를 도시한 것이다. 미디어-프레임 경계가 MDDI 링크에서 검출된 후, 프레임이 현재 리프레시되고 있는 리프레시 프로세스가 완료될 경우에, 디스플레이 리프레시 프로세스가 그 다음 프레임 버퍼로부터 리프레시되기 시작한다.
도 92 과 관련된 중요한 가정은, 클라이언트가 프레임 버퍼로부터 픽셀을 판독하여 디스플레이를 리프레시하는 것과 동일한 순서로 (통상, 행 (row) 단위로 판독할 경우에, 스크린의 우하부 코너에 대한 좌측 상부상부) 전송되는 픽셀의 연속적인 스트림으로서 호스트로부터 이미지가 수신된다는 것이다. 이것은, 디스플레이 리프레시 및 이미지 전달 동작이 동일한 프레임 버퍼를 참조하는 경우에 중요한 상세이다.
부분 이미지의 디스플레이를 회피하기 위하여 디스플레이 리프레시 프레임이 이미지 전달보다 더 크게 되는 것이 필요하다. 도 93 은 이미지 분열 (image fragmentation) 이 어떻게 저속 디스플레이 리프레시 레이트로 발생하는지를 나타낸 것으로, 즉, 디스플레이 리프레시가 이미지 전달보다 더 느린 것을 나타낸다.
컴퓨터 그래픽 이미지와 비디오 동화상의 조합을 포함하는 이미지에서, 비디오 픽셀 데이터는 미디어-프레임의 작은 부분을 점유할 수도 있다. 이것은, 디스플레이 리프레시 동작 및 이미지 전달이 동일한 프레임 버퍼를 참조하는 상황에서 중요할 수 있다. 이들 상황은 도 94 에서 그물모양의 음영으로 도시되어 있으며, 여기서, 디스플레이를 리프레시하기 위해 버퍼로부터 판독된 픽셀들은 2 개의 프레임 이전에 버퍼에 기입된 픽셀일 수도 있거나, 동일한 프레임 버퍼에 즉시 기입되는 프레임에 대응할 수도 있다.
도 95 에 도시된 바와 같이, 클라이언트에서의 3 개의 프레임 버퍼의 이용은, 프레임 버퍼로의 액세스를 위한 컨텐츠의 작은 윈도우의 문제를 해결할 것이다.
그러나, 도 96 에 도시된 바와 같이, 디스플레이 리프레시 레이트가 MDDI 링크를 통한 미디어-프레임 레이트보다 더 작으면 여전히 문제가 존재한다.
도 97 에 도시된 바와 같이, 비디오 동영상을 위한 단일 버퍼의 이용은 약간의 문제가 있다. 디스플레이 리프레시가 버퍼로의 이미지 전달보다 더 신속한 경우, 종종 리프레시되는 이미지는 기입되는 프레임의 상부를 나타내며, 이미지의 하부는 이전에 전달된 프레임이다. 디스플레이 리프레시가 이미지 전달보다 더 신속한 경우 (바람직한 전달 모드), 유사한 스플릿 (split) 이미지를 도시한 프레임의 더 빈번한 인스턴스가 존재한다.
XVII. 지연 값 표
패킷 프로세싱 지연 파라미터 패킷은 표-조견 (table-lookup) 함수를 사용하여, 클라이언트에서의 일정한 커맨드를 프로세싱하기 위한 예측 지연을 계산한다. 그 표 내의 값은, 지연 값의 매우 광범위한 다이나믹 레인지를 제공하기 위하여 대수 (logarithm) 적으로 증가한다. 본 발명의 실시형태들을 구현하는데 유용한 지연 값의 예시적인 표는, 대응하는 인덱스 값 대 지연 값을 갖는 아래의 표 XX 에서 발견된다.
Figure 112006033870809-PCT00033
그 지연은, 그 표에서의 인덱스로서 특정 파라미터를 이용하여 표 조견을 수행함으로써 계산된다. 이것은 지연이 PacketProcessingTable(index) 와 동일함을 의미한다. 예를 들어, 지연 파라미터 리스트 항목으로부터의 파라미터 중 하나가 134 와 같은 8-비트 값이면, 그 지연은 16μsec 인 PacketProcessingTable(134) 와 같다. 값 255 는, 커맨드 완료 시간이 계산에 의해 결정될 수 없고 호스트는 디스플레이 요청 및 상태 패킷 내의 그래픽 비지 플래그 (Graphics Busy Flags) 또는 MCCS VCP 제어 파라미터 B7h 를 확인해야 함을 나타낸다.
어떤 경우, 이러한 지연은 수신지 이미지에서의 픽셀의 높이, 폭, 또는 개수와 승산되며 다른 지연을 가산하여 전체 패킷 프로세싱 지연을 계산한다.
XVIII. 다중의 클라이언트 지원
현재의 프로토콜 버전은 다중의 클라이언트 디바이스를 직접 지원하는 것으로 보이지 않는다. 그러나, 대부분의 패킷은, 다중의 클라이언트를 갖는 시스템에서 특정 클라이언트 디바이스를 어드레싱하는데 이용될 수 있는 예약 클라이언트 ID 필드를 포함한다. 현재, 다수의 애플리케이션에 대하여, 이 클라이언트 ID 또는 이들 클라이언트 ID 는 제로로 설정된다. 또한, 서브-프레임 헤더 패킷은, 호스트가 다중의 클라이언트 시스템을 지원하는지 여부를 나타내는 필드를 포함한다. 따라서, 다중의 클라이언트 디바이스는 MDD 인터페이스 또는 프로토콜의 추후 애플리케이션에 접속 및 어드레싱되어, 시스템 설계자로 하여금 다중의 클라이언트 호스트 및 클라이언트와의 추후 호환성에 대하여 계획하도록 지원할 가능성이 있다.
도 98 에 도시한 바와 같이, 또는 도 99 에 도시한 이러한 기술들의 조합을 이용하여, 다중의 클라이언트를 갖는 시스템에서, 클라이언트가 클라이언트의 데이지-체인 (daisy-chain) 을 이용하여 또는 허브를 이용하여 호스트에 접속되는 것이 유용하다.
XVIII. 부록
본 발명의 실시형태에 대한 구성 및 프로토콜을 구현하는데 이용되는 다양한 패킷에 대하여 상술한 포맷, 구조 및 컨텐츠에 더하여, 더 상세한 필드 컨텐츠 또는 동작이 일부 패킷 타입에 대하여 여기에서 제공된다. 당업자로 하여금 다양한 애플리케이션에 대하여 본 발명을 더 용이하게 이해하도록 하고 본 발명을 이용하게 하는 각각의 이용 또는 동작을 더 명백히 하는 것이 여기에 제공되어 있다. 아직 설명되지 않은 오직 몇몇의 필드들이 여기에서 더 설명된다. 또한, 이들 필드는 상술된 실시형태와 관련된 예시적인 정의 및 값으로 제공된다. 그러나, 그러한 값들은 본 발명을 제한하는 것으로 간주하지 말아야 하지만, 인터페이스 및 프로토콜을 구현하기 위해 유용한 하나 이상의 실시형태를 나타내며, 모든 실시형태들이 함께 또는 동시에 실시될 필요는 없다. 당업자에 의한 이해뿐 아니라 데이터의 원하는 프리젠테이션 또는 데이터 레이트 전달 결과를 달성하기 위하여, 다른 값이 다른 실시형태에서 사용될 수 있다.
A. 비디오 스트림 패킷에 대하여
일 실시형태에서, 픽셀 데이터 속성 필드 (2 바이트) 는 다음과 같이 해석되는 일련의 비트 값을 가진다. 비트 1 및 0 은 디스플레이 픽셀 데이터가 어떻게 라우팅되는지를 선택한다. '11' 의 비트 값에 대하여, 데이터는 디스플레이되거나 두 눈에 대한 것이며, 비트 값 '10' 에 대하여, 데이터는 오직 좌측 눈에 대하여 라우팅되며, 비트 값 '01' 에 대하여, 데이터는 오직 우측 눈으로 라우팅되며, '00' 의 비트 값에 대하여, 데이터는 아래에서 설명되는 비트 8 내지 11 에 의해 특정될 수도 있는 또 다른 디스플레이로 라우팅된다.
비트 2 는 픽셀 데이터가 인터레이스 (interlace) 포맷으로 제공되는지 여부를 나타내며, '0' 의 값은 픽셀 데이터가 표준 진행 (progressive) 포맷임을 의미하며, 행 (row) 넘버 (픽셀 Y 좌표) 는 하나의 행으로부터 그 다음 행으로 진행할 경우에 1 만큼 증가됨을 나타낸다. 이 비트가 '1' 의 값을 가질 경우, 픽셀 데이터는 인터레이스 포맷이며, 행 넘버는 하나의 행으로부터 그 다음 행으로 진행할 경우에 2 만큼 증가된다. 비트 3 은 픽셀 데이터가 또 다른 픽셀 포맷임을 나타낸다. 이것은 비트 2 만큼 인에이블되는 표준 인터레이스 모드와 유사하지만, 그 인터레이싱은 수평 대신 수직이다. 비트 3 이 '0' 일 경우, 픽셀 데이터는 표준 진행 포맷이며, 열 넘버 (픽셀 X 좌표) 는 각각의 연속적인 픽셀이 수신됨에 따라 1 만큼 증가된다. 비트 3 이 '1' 일 경우, 픽셀 데이터는 또 다른 픽셀 포맷이며, 열 넘버는 각각의 픽셀이 수신됨에 따라 2 만큼 증가된다.
비트 4 는 픽셀 데이터가 디스플레이 또는 카메라에 관련되는지 여부를 나타내며, 여기서, 데이터는, 무선 전화기 또는 유사한 디바이스 또는 휴대형 컴퓨터 또는 상술한 바와 같은 그러한 다른 디바이스에 대한 내부 디스플레이로 또는 그 내부 디스플레이로부터 전달되거나, 그 데이터는, 디바이스에 내장되거나 직접 커플링된 카메라로 또는 그 카메라로부터 전달된다. 비트 4 가 '0' 일 경우, 픽셀 데이터는 디스플레이 프레임 버퍼로 또는 그 디스플레이 프레임 버퍼로부터 전달되고 있다. 비트 4 가 '1' 일 경우, 픽셀 데이터는 어떤 타입의 카메라 또는 비디오 디바이스로 또는 그로부터 전달되고 있으며, 그러한 디바이스는 당업계에 널리 공지되어 있다.
비트 5 는 픽셀 데이터가 디스플레이 내의 픽셀의 그 다음 연속적인 행을 포함할 경우를 나타내는데 이용된다. 이것은 비트 5 가 '1' 과 같이 설정되는 경우로 간주된다. 비트 15 가 로직-1 레벨로 설정되는 경우에, 이는 이러한 패킷의 픽셀 데이터가 이미지 픽셀의 최후 열임을 나타낸다. 클라이언트 용량 패킷의 클라이언트 피쳐 용량 표시자 필드의 비트 8 은 이러한 피처가 지원되는지 여부를 나타낸다.
비트 7 및 6 은 픽셀 데이터가 기입되는 프레임 버퍼를 특정하는 디스플레이 업데이트 비트이다. 다른 경우에, 더 특정한 효과가 설명된다. '01' 의 비트 값에 대하여, 픽셀 데이터는 오프라인 이미지 버퍼에 기입된다. '00' 의 비트 값에 대하여, 픽셀 데이터는 디스플레이를 리프레시하는데 이용되는 이미지 버퍼에 기입된다. '11' 의 비트 값에 대하여, 픽셀 데이터는 모든 이미지 버퍼에 기입된다. '10' 의 비트 값 또는 조합은 무효한 값 또는 지정으로서 처리되며, 픽셀 데이터는 무시되어 임의의 이미지 버퍼에 기입되지 않는다. 이러한 값은 인터페이스의 추가적인 애플리케이션용으로 사용할 수도 있다.
비트 8 내지 11 은, 픽셀 데이터가 라우팅되는 또 다른 디스플레이 또는 디스플레이 위치를 특정하는 4 비트의 부호없는 정수를 형성한다. 비트 0 및 1 은, 디스플레이 클라이언트가 비트 8 내지 11 을 또 다른 디스플레이 넘버로서 해석하기 위해 00 과 같다. 비트 0 및 1 이 00 과 같지 않으면, 비트 8 내지 11 은 로직-0 으로로 설정된다.
비트 12 내지 14 는 장래 사용을 위해 예약되며, 일반적으로, 로직-0 으로 설정된다. 설명한 바와 같이, 비트 15 는 비트 15 와의 연결에 사용되고,비트 15 를 로직-1 로 설정하는 것은 픽셀 데이터 필드의 픽셀 행이 데이터 프레임에서 픽셀의 최후 행임을 나타낸다. 로직-1 로 설정된 비트 5 를 갖는 다음의 비디오 스트림 패킷은 다음의 비디오 프레임 픽셀의 최초 행에 대응할 것이다.
2-바이트 X 시작 및 Y 시작 필드는 픽셀 데이터 필드 내의 제 1 픽셀에 대한 포인트 (X 시작, Y 시작) 의 절대 X 및 Y 좌표를 특정한다. 2-바이트 X 좌측 에지 및 Y 상부 에지 필드는 픽셀 데이터 필드에 의해 충만되는 스크린 이미지의 좌측 에지의 X 좌표 및 상부 에지의 Y 좌표를 특정하지만, X 우측 에지 및 Y 저부 에지 필드는, 업데이트되는 윈도우의 우측 에지의 X 좌표 및 저부 에지의 Y 좌표를 특정한다.
픽셀 카운트 필드 (2 바이트) 는 아래의 픽셀 데이터 필드 내의 픽셀의 개수를 특정한다.
파라미터 CRC 필드 (2 바이트) 는 패킷 길이로부터 픽셀 카운트까지의 모드 바이트의 CRC 를 포함한다. 만약 이 CRC 가 확인을 실패하면, 전체 패킷은 폐기된다.
픽셀 데이터 필드는 디스플레이되는 원래의 비디오 정보를 포함하며, 이는 비디오 데이터 포맷 설명자 필드에 의해 설명되는 방식으로 포맷된다. 그 데이터는 다른 경우에 설명된 바와 같이 한번에 하나의 "행 (row)" 를 전송받는다. 픽셀 데이터 속성 필드의 비트 5 가 로직 레벨 1 로 설정되는 경우에, 픽셀 데이터 필드는 정확하게 하나의 픽셀 행을 포함하며, 전송되는 최초 픽셀은 최좌측 픽셀에 대응하고, 전송되는 최후 픽셀은 픽셀의 최우측에 대응한다.
픽셀 데이터 CRC 필드 (2 바이트) 는 오직 픽셀 데이터만의 16-비트 CRC 를 포함한다. 만약 이 값의 CRC 검증이 실패하면, 픽셀 데이터가 여전히 사용될 수 있지만, CRC 에러 카운트가 증가된다.
B. 오디오 스트림 패킷에 대하여
일 실시형태에서, 오디오 채널 ID 필드 (1 바이트) 는 8 비트의 부호없는 정수값을 사용하여, 오디오 데이터가 클라이언트 디바이스에 의해 전송되는 특정 오디오 채널을 식별한다. 물리적인 오디오 채널은 0, 1, 2, 3, 4, 5, 6, 또는 7 의 값으로서 이 필드에 의해 물리적인 채널에 특정되거나 매핑되며, 이 값은, 각각, 좌측 전방 채널, 우측 전방 채널, 좌측 후방 채널, 우측 후방 채널, 전방 중앙 채널, 서브-우퍼 채널, 서라운드 좌측 채널, 및 서라운드 우측 채널을 나타낸다. 254 의 오디오 채널 ID 값은 디지털 오디오 샘플의 단일 스트림이 좌측 전방 및 우측 전방 채널 양자로 전송됨을 나타낸다. 이것은, 스테레오 헤드셋이 음성 통신용으로 사용되거나 생산성 개선 애플리케이션 (apps) 이 PDA 에 사용되는 것과 같은 애플리케이션, 또는 단순한 사용자 인터페이스가 경고 톤을 발생시키는 다른 애플리케이션용의 통신을 단순화한다. 8 내지 253, 및 255 범위를 갖는 ID 필드에 대한 값은, 당업자가 알 수 있는 바와 같이, 새로운 설계가 추가적인 지정을 원하는 경우에 이용하기 위해 현재 예약되어 있다.
일반적으로, 예약 1 필드 (1 바이트) 는 추후 사용을 위해 예약되며, 제로로 설정된 이 필드 내의 모든 비트를 가진다. 이 필드의 하나의 기능은 모든 후속적인 2 바이트 필드를 16-비트 워드 어드레스와 정렬하게 하고 4 바이트 필드를 32-비트 워드 어드레스와 정렬하게 하는 것이다.
오디오 샘플 카운트 필드 (2 바이트) 는 이 패킷 내의 오디오 샘플의 개수를 특정한다.
샘플 당 비트 및 패킹 필드는 오디오 데이터의 패킹 포맷을 특정하는 1 바이트를 포함한다. 일 실시형태에서, 통상 채용되는 포맷은 비트 4 내지 0 에 대하여 PCM 오디오 샘플 당 비트의 개수를 정의하는 것이다. 또한, 비트 5 는 디지털 오디오 데이터 샘플이 패킹되는지 여부를 특정한다. 상술한 바와 같이, 도 12 는 패킹된 오디오 샘플과 바이트-정렬된 오디오 샘플 간의 차이를 나타낸 것이다. 비트 5 에 대한 '0' 의 값은 디지털 오디오 데이터 필드 내의 각 PCM 오디오 샘플이 인터페이스 바이트 경계와 바이트-정렬됨을 나타내며, '1' 의 값은 각각의 후속적인 PCM 오디오 샘플이 이전의 오디오 샘플에 대하여 픽-업됨을 나타낸다. 이 비트는, 비트 4 내지 0 에서 정의된 값 (PCM 오디오 샘플 당 비트의 개수) 이 8 의 배수가 아닐 경우에만 효과적이다. 비트 7 내지 6 은 사용을 위해 예약되며, 여기서, 시스템은 추가적인 지정을 원하고 일반적으로 제로의 값에서 설정된다.
오디오 샘플 레이트 필드 (1 바이트) 는 오디오 PCM 샘플 레이트를 특정한다. 채용된 포맷은, 각각, 0 의 값에 대하여 8,000 sps (samples per second) 의 레이트를 나타내며, 1 의 값은 16,000 sps 를 나타내고, 2 의 값은 24,000 sps 를 나타내고, 3 의 값은 32,000 sps 를 나타내고, 4 의 값은 40,000 sps 를 나타내고, 5 의 값은 48,000 sps 를 나타내고, 6 의 값은 11,025 sps 를 나타내고, 7 의 값은 22,050 sps 를 나타내고, 8 의 값은 44,100 sps 를 나타내고, 9 내지 255 의 값은 추후 사용을 위해 예약되어, 현재 제로로 설정된다.
파라미터 CRC 필드 (2 바이트) 는 패킷 길이로부터 오디오 샘플 레이트까지의 모든 바이트의 16-비트 CRC 를 포함한다. 만약 이 CRC 가 적절히 확인하지 못하면, 전체 패킷이 폐기된다. 디지털 오디오 데이터 필드는 플레이될 원래의 오디오 샘플을 포함하며, 통상적으로 부호없는 정수로서의 선형 포맷의 형태이다. 오디오 데이터 CRC 필드 (2 바이트) 는 오디오 데이터 전용의 16-비트 CRC 를 포함한다. 만약 이 CRC 가 확인에 실패하면, 오디오 데이터는 여전히 사용될 수 있지만, CRC 에러 카운트가 증가된다.
C. 사용자-정의 스트림 패킷에 대하여
일 실시형태에서, 2-바이트 스트림 ID 넘버 필드는 특정 사용자-정의 스트림을 식별하는데 이용된다. 통상적으로, 스트림 파라미터 및 스트림 데이터 필드의 컨텐츠는 MDDI 장비 제조자에 의해 정의된다. 2-바이트 스트림 파라미터 CRC 필드는 패킷 길이로부터 오디오 코딩 바이트까지의 스트림 파라미터의 모든 비트의 16-비트 CRC 를 포함한다. 만약 이 CRC 가 확인에 실패하면, 전체 패킷이 폐기된다. 스트림 파라미터 및 스트림 파라미터 CRC 필드 양자는, MDD 인터페이스의 최종 애플리케이션에 의해 필요하지 않으면, 즉, 옵션으로 간주되면 폐기될 수도 있다. 2-바이트 스트림 데이터 CRC 필드는 스트림 데이터 전용의 CRC 를 포함한다. 만약 이 CRC 가 적절히 확인하지 못하면, 애플리케이션의 요건에 의존하여, 스트림 데이터의 사용은 옵션이다. 일반적으로, 양호한 CRC 에 의존하는 스트림 데이터의 사용은, CRC 가 양호한 것으로 확인될 때까지 스트림 데이터가 버퍼링될 것을 요구한다. CRC 에러 카운트는, 그 CRC 가 확인하지 못하면 증가된다.
D. 컬러 맵 패킷에 대하여
이전에 사용된 바와 같이, 2-바이트 h클라이언트 ID 필드는 클라이언트 ID 용으로 예약된 정보 또는 값을 포함한다. 일반적으로, 이 필드는 추후 사용을 위해 예약되기 때문에, 현재의 값은, 그 비트를 '0' 으로 설정함으로써, 제로로 설정된다.
2-바이트 컬러 맵 항목 카운트 필드는 컬러 맵 데이터 필드에 포함되어 있는 3-바이트 컬러 맵 항목, 또는 이 패킷 내의 컬러 맵 데이터에 존재하는 컬러 맵 표 엔트리의 총 수를 특정하기 위한 값을 사용한다. 이 실시형태에서, 컬러 맵 데이터에서의 바이트의 수는 컬러 맵 항목 카운트의 3 배이다. 컬러 맵 항목 카운트는 컬러 맵 데이터를 전송하지 않도록 제로와 같이 설정된다. 만약 컬러 맵 사이즈가 제로이면, 일반적으로, 컬러 맵 오프셋 값은 여전히 전송되지만 디스플레이에 의해 무시된다. 컬러 맵 오프셋 필드 (4 바이트) 는 클라이언트 디바이스에서의 컬러 맵 표의 시작으로부터 이 패킷에서의 컬러 맵 데이터의 오프셋을 특정한다.
2-바이트 파라미터 CRC 필드는 패킷 길이로부터 오디오 코딩 바이트까지의 모든 바이트의 CRC 를 포함한다. 만약 이 CRC 가 확인에 실패하면, 전체 패킷은 폐기된다.
컬러 맵 데이터 필드에 대하여, 각각의 컬러 맵 위치의 폭은 컬러 맵 항목 사이즈 필드에 의해 특정되며, 일 실시형태에서, 제 1 부분은 청색의 크기를 특정하며, 제 2 부분은 녹색의 크기를 특정하며, 제 3 부분은 적색의 크기를 특정한다. 컬러 맵 사이즈 필드는 컬러 맵 데이터 필드에 존재하는 3-바이트 컬러 맵 표 항목의 개수를 특정한다. 만약 단일의 컬러 맵이 하나의 비디오 데이터 포맷 및 컬러 맵 패킷에 적합할 수 없으면, 전체 컬러 맵은 각각의 패킷 내의 상이한 컬러 맵 데이터 및 컬러 맵 오프셋을 갖는 다중의 패킷을 전송함으로써 특정될 수도 있다. 각각의 컬러 맵 데이터 항목에서의 청색, 녹색, 및 적색의 비트 수는 디스플레이 용량 패킷의 컬러 맵 RGB 폭 필드에서 특정되는 것과 동일해야 한다.
2-바이트 컬러 맵 데이터 CRC 필드는 컬러 맵 데이터 전용의 CRC 를 포함한다. 만약 이 CRC 가 확인에 실패하면, 컬러 맵 데이터가 여전히 사용되지만 CRC 에러 카운트는 증가된다.
각각의 컬러 맵 데이터 항목은, 먼저 전송된 각 성분의 LSB (least significant bit) 를 갖는 청색, 녹색, 적색의 순서로 전송되어야 한다. 각각의 컬러 맵 항목의 개별 적색, 녹색 및 청색 성분은 패킹되지 않지만, 각각의 컬러 맵 항목 (청색 성분의 LSB) 은 바이트-정렬되어야 한다. 도 100 은 청색의 6 비트, 녹색의 8 비트, 및 적색의 7 비트를 갖는 컬러 맵 데이터 항목의 일 예를 도시한 것이다. 이 예의 경우, 컬러 맵 패킷에서의 컬러 맵 항목 사이즈는 21 과 같으며, 디스플레이 용량 패킷의 컬러 맵 RGB 폭 필드는 0x0786 과 같다.
E. 역방향 링크 캡슐화 패킷에 대하여
파라미터 CRC 필드 (2 바이트) 는 패킷 길이로부터 턴-어라운드 길이까지의 모든 바이트의 16-비트 CRC 를 포함한다. 이 CRC 가 확인에 실패하면, 전체 패킷은 폐기된다.
일 실시형태에서, 역방향 링크 플래그 필드 (1 바이트) 는 디스플레이로부터 정보를 요청하기 위한 일련의 플래그를 포함한다. 만약 어떤 비트 (예를 들어, 비트 0) 가 로직-1 레벨로 설정되면, 호스트는 클라이언트 용량 패킷을 이용하여 디스플레이로부터 특정 정보를 요청한다. 만약 그 비트가 로직-0 레벨로 설정된다면, 호스트는 클라이언트로부터의 정보를 필요로 하지 않는다. 나머지 비트 (여기에서, 비트 1 내지 7) 는 추후 사용을 위해 예약되며 제로로 설정된다. 그러나, 역방향 링크를 위한 플래그를 설정하도록 요구될 때에 더 많은 비트가 사용될 수 있다.
역방향 레이트 디바이저 필드 (1 바이트) 는 역방향 링크 데이터 클록과 관련하여 발생하는 MDDI_Stb 사이클의 수를 특정한다. 역방향 링크 데이터 클록은 2 배의 역방향 레이트 디바이저로 나누어진 순방향 링크 데이터 클록과 같다. 역방향 링크 데이터 레이트는 역방향 링크 데이터 클록 및 역방향 링크 상의 인터페이스 타입과 관련된다. 일 실시형태에서, 타입-1 인터페이스의 경우, 역방향 데이터 레이트는 역방향 링크 데이터 클록과 동일하며, 타입-2, 타입-3, 및 타입-4 인터페이스의 경우, 역방향 데이터 레이트는, 각각, 역방향 링크 데이터 클록의 2 배, 4배, 및 8 배와 같다.
올 제로 1 필드는, 비트를 로직-0 레벨로 설정함으로써 값에서 0 과 같게 설정되는, 여기서는 8 인 바이트 그룹을 포함하며, 턴-어라운드 1 필드 동안 호스트의 라인 드라이버를 디스에이블링 하기 전에 단지 MDDI_Stb 만을 이용하여 클라이언트로 하여금 클럭 복구 시작하도록 하게 하는데 충분한 시간동안 모든 MDDI_Data 신호들을 로직-0 이 되게 보장하는데 이용된다. 일 실시형태에서, 올 제로1 필드의 길이는 케이블의 라운드-트립 지연에서의 순방향 링크 바이트 전송 횟수 보다 크거나 같다.
턴-어라운드 1 길이 필드 (1 바이트) 는, 제 1 턴-어라운드 주기를 확립하는 턴-어라운드1 에 대하여 할당된 바이트의 총수를 특정한다. 턴-어라운드 길이 1 파라미터에 의해 특정되는 바이트의 수는, 호스트 내의 라인 드라이버가 디스에이블되기 전에, 클라이언트 내의 MDDI_Data 라인 드라이버를 인에이블시키도록 할당된다. 클라이언트는 턴-어라운드 1 의 비트 0 동안에 그 MDDI_Data 라인 드라이버를 인에이블시키며, 호스트는 턴-어라운드 1 의 최후 비트 전에 완전하게 디스에이블되기 위해 그 출력을 디스에이블시킨다. 클라이언트 드라이버의 인에이블링 및 호스트 드라이버 프로세스의 디스에이블링 타이밍은 호스트에서 라인 수신기에 의해 관측되는 턴 어라운드 1 에 걸쳐 하나 또는 양자가 MDDI_Data 신호를 로직-0 레벨로 구동하는 것이다. MDDI_Stb 신호는 MDDI_Data0 가 총 턴 어라운드 1 주기동안 로직-0 레벨인 것처럼 동작한다. 턴-어라운드 1 의 설정데 대한 보다 완전한 설명은 전술하였다.
역방향 데이터 패킷 필드는 클라이언트로부터 호스트로 전달되는 일련의 데이터 패킷을 포함한다. 호스트로 전송할 데이터가 없는 경우에, 클라이언트는 필러 패킷을 전송하거나 MDDI_Data 라인을 로직-0 상태 또는 레벨로 구동할 수도 있다. 일 실시형태에서, MDDI_Data 라인이 0 으로 구동된다면, 호스트는 이것을 (유효한 길이가 아닌) 제로 길이를 갖는 패킷으로서 해석하고, 호스트는 현재 역방향 링크 캡슐화 패킷의 지속시간동안 클라이언트로부터 추가적인 패킷을 수신하지 않을 것이다.
턴-어라운드 2 길이 필드 (1 바이트) 는, 제 2 턴-어라운드 주기를 확립하기 위해 턴-어라운드 2 에 대하여 할당된 바이트의 총수를 특정한다. 턴-어라운드 길이 파라미터에 의해 특정되는 바이트의 수는, 클라이언트 내의 라인 드라이버가 디스에이블되기 전에 호스트 내의 MDDI_Data 라인 드라이버를 인에이블시키도록 할당된다. 호스트는 턴-어라운드 2 에서 최초 바이트의 비트 0 동안 그 MDDI_Data 라인 드라이버를 인에이블시키고, 클라이언트는 턴-어라운드 2 의 최후 비트 전에 일반적으로 완전하게 디스에이블되도록 그 출력을 디스에이블시킨다. 클라이언트 드라이버의 디스에이블 및 호스트 드라이버 프로세스의 인에이블 타이밍은 하나 또는 양자가 MDDI_Data 신호를 로직-0 레벨로 전체적으로 구동하거나, 호스트의 라인 수신기에 의해 관측되는 바와 같이 전체, 턴 어라운드 2 주기동안이다. MDDI_Stb 신호는 실질적으로 전체 턴 어라운드 2 주기동안 MDDI_Data0 이 로직-0 인것 처럼 동작한다. 턴-어라운드 2 의 설정의 설명은 전술하였다.
역방향 데이터 패킷 필드는 클라이언트로부터 호스트로 전달되는 일련의 데이터 패킷을 포함한다. 전술한 바와 같이, 필러 패킷은 다른 패킷 타입에 의해 사용되지 않는 잔여 스페이스를 채우기 위해 전송된다.
올 제로 2 필드는, 비트를 로직-0 레벨로 설정함으로써 제로와 같게 설정하는 바이트 그룹 (본 실시형태에서는 8) 을 포함하며, 턴-어라운드 2 필드에 후속하는 호스트의 라인 드라이버를 인에블링한 후에 MDDI_Data0 및 MDDI_Stb 양자를 이용하여 클라이언트가 복구 클럭을 시작하도록 하는데 충분한 시간동안 모든 MDDI_Data 신호가 로직-0 레벨로 되는 것을 보장하기 위해 사용된다.
F. 클라이언트 용량 패킷에 대하여
일 실시형태에서 설명한 바와 같이, 프로토콜 버전 필드는 클라이언트에 의해 이용되는 프로토콜 버전을 특정하기 위해 2 바이트를 사용한다. 초기 버전은 현재 0과 동일하게 설정되고, 알려진 바대로 새로운 버전이 생성되면서 시간에 따라 변화하는 한편, 최소 프로토콜 버전 필드는 클라이언트가 채택 또는 해석할 수 있는 최소 프로토콜 버전을 특정하기 위해 2 바이트를 사용한다. 이러한 경우에, 0 값 또한 유효한 값이다. 데이터 레이트 용량 필드(2 바이트) 는, 클라이언트가 인터페이스의 순방향 링크 에서 각각의 데이터 쌍에 대해 수신할 수 있는 최대 데이터 레이트를 특정하고, 초당 메가비트 (Mbps) 의 형태로 특정된다. 인터페이스 타입 용량 필드 (1 바이트) 는 순방향 및 역방향 링크 상에서 지원되는 인터페이스 타입을 특정한다. '1' 로 설정된 비트는 특정 인터페이스 타입이 지원됨을 나타내고, '0' 으로 설정된 비트는 특정 타입이 지원되지 않음을 나타낸다. 호스트 및 클라이언트는 순방향 및 역방향 라인상에서 최소한 타입 1 을 지원해야만 한다. 인터페이스 타입의 인접 범위를 지원하는 요건은 없다. 예를 들어, 단지 타입 1 및 타입 3 만을 지원하고 인터페이스에서 타입 3 및 타입 4 를 지원하지 않는 것이 완전하게 유효할 것이다. 또한, 순방 향 및 역방향 링크가 동일한 인터페이스 타입으로 동작할 필요가 없다. 그러나, 링크가 휴지상태로부터 깨어나는 경우에 순방향 및 역방향 링크 양자는 다른 모드가 협상, 선택 또는 호스트 및 클라이언트 양자에 의해 확인응답받을 수 있기 전까지 타입 1 모드에서 동작을 개시해야 할 것이다.
지원되는 인터페이스는 일 실시형태에서, 순방향 링크 상에서 각각 타입 2 (2 비트), 타입 3 (4 비트) 또는 타입 4 (8 비트) 모드 중 하나를 선택하기 위하여 비트 0, 비트 1 또는 비트 2 를 선택하고, 역방향 링크 상에서 각각 타입 2, 타입 3 또는 타입 4 모드 중 하나를 선택하기 위해 비트 3, 비트 4 또는 비트 5 를 선택하고, 비트 6 및 7 을 예약하고 이 때에는 일반적으로 0 으로 설정함으로써 나타내어진다. 여기에서 각각 2 바이트인, 비트맵 폭 및 높이 필드는 비트맵의 폭 및 높이를 각각 픽셀로 특정한다.
단색 용량 필드 (1 바이트) 는 단색 포맷으로 디스플레이될 수 있는 해상도의 비트 개수를 특정하는데 사용된다. 디스플레이가 단색 포맷을 사용할 수 없는 경우 이값은 0 으로 설정된다. 비트 7 내지 4 는 장래의 사용을 위해 예약으로 할당되어 0 으로 설정된다. 비트 3 내지 0 은 각각의 픽셀에 대하여 존재할 수 있는 그레이스케일의 최대 비트 개수를 규정한다. 이들 4 개의 비트는 각각의 픽셀에 대하여 1 내지 15 의 값들을 특정하는 것이 가능하게 한다. 그 값이 0 이면, 단색 포맷은 디스를레이에 의해 지원되지 않는다.
베이어 (Bayer) 용량 필드는 페이어 포맷으로 전달될 수 있는 해상도의 비트수, 픽셀 그룹 및 픽셀 순서를 특정하기 위해 1 바이트를 사용한다. 클라이언트가 베이어 포맷을 사용할 수 없다면 이 값은 0 이다. 베이어 용량 필드는 다음의 값들로 구성되는데, 비트 3 내지 0 은각각의 픽셀에 존재하는 강도 비트의 최대수를 규정하고, 비트 5 내지 4 는 요구되는 픽셀 그룹 패턴을 규정하고, 비트 8 내지 6 은 요구되는 픽셀 순서를 규정하고, 비트 14 내지 9 는 장래 사용을 위해 예약되며 그동안 일반적으로 0 으로 설정된다. 1 로 설정되는 경우에 비트 15 는 클라이언트가 패킹 또는 언패킹된 포맷 중 하나로 베이어 픽셀 데이터를 수신할 수 있음을 나타낸다. 비트 15 가 1 로 설정된다면, 이는 클라이언트가 베이어 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
컬러 맵 용량 필드 (3 바이트) 는 디스플레이에서 컬러 맵 표로 존재하는 표 항목들의 최대 개수를 특정한다. 그 디스플레이가 컬러 맵 포맷을 사용할 수 없는 경우, 이값은 0 으로 설정된다.
RGB 용량 필드 (2 바이트) 는 RGB 포맷으로 디스플레이될 수 있는 해상도의 비트 개수를 특정한다. 디스플레이가 RGB 포맷을 사용할 수 없는 경우, 이값은 0 과 동일하다. RGB 용량 워드는 3 개의 별도의 무 부호 (unsigned) 값들로 이루어지며, 여기서 비트 3 내지 0 은 각각의 픽셀에서 청색의 최대 비트 개수를 규정하고, 비트 7 내지 4 는 녹색의 최대 비트 개수를 규정하며, 비트 11 내지 8 은 적색의 최대 비트 개수를 규정한다. 현재, 비트 14 내지 12 는 장래 사용을 위해 예약으로 남겨져 일반적으로 0 으로 설정된다. 비트 14 내지 12 는 장래 사용을 위해 예약되며 일반적으로 0 으로 설정된다. 1 로 설정된 경우에 비트 15 는 클라이언트가 RGB 데이터를 패킹 또는 언패킹된 포맷 중 하나로 수신할 수 있음을 나타낸다. 비트 15 가 로직-0 레벨로 설정된다면, 이것은 클라이언트가 RGB 픽셀 데이터를 단지 언패킹된 포맷으로만 수신할 수 있음을 나타낸다.
Y Cr Cb 용량 필드 (2 바이트) 는 Y Cr Cb 포맷으로 디스플레이될 수 있는 해상도의 비트 개수를 특정한다. 디스플레이가 Y Cr Cb 포맷을 사용할 수 없는 경우, 이값은 0 과 동일하게 설정된다. Y Cr Cb 용량 워드는 3 개의 별도의 무 부호값들로 이루어지며, 여기서 비트 3 내지 0 은 Cb 샘플에서의 최대 비트 개수를 규정하고, 비트 7 내지 4 는 Cr 샘플에서 최대 비트 개수를 규정하며, 비트 11 내지 8 은 Y 샘플에서 최대 비트 개수를 규정하고, 비트 15 내지 12 는 장래의 사용을 위해 예약되고 현재 0 으로 설정된다.
클라이언트 피처 용량 필드는 지원되는 클라이언트에서 특정 피처를 나타내는 플래그 세트를 포함하는 4 바이트를 사용한다. 1 로 설정된 비트는 용량이 지원됨을 나타내고, 0 으로 설정된 비트는 용량이 지원되지 않음을 나타낸다. 일 실시형태에서, 비트 0 에 대한 값은, 비트맵 블록 전달 패킷 (패킷 타입 71) 이 지원되는지 여부를 나타낸다. 비트 1, 2 및 3 에 대한 값은, 비트 영역 필 패킷 (패킷 타입 72), 비트맵 패턴 필 패킷 (패킷 타입 73) 또는 통신 링크 데이터 채널 패킷 (패킷 타입 74) 가 각각 지원되는지 여부를 나타낸다. 비트 4 에 대한 값은, 하나의 컬러를 투명하게 만드는 용량을 클라이언트가 가지고 있는지 여부를 나타내는 반면, 비트 5 및 6 에 대한 값은, 클라이언트가 패킹된 포맷으로 비디오 데이터 또는 오디오 데이터를 각각 수용할 수 있는지를 나타내고, 비트 7 에 대한 값은, 클라이언트가 카메라로부터 역방향 링크 비디오 스트림을 전송할 수 있는지 여부를 나타낸다. 비트 8 에 대한 값은 클라이언트가 픽셀 데이터의 풀 (full) 라인을 수신하고 비디오 스트림 패킷의 픽셀 데이터 속성 필드의 비트 5 에 의해 특정되는 디스플레이 어드레싱을 무시하는 능력을 가지는지, 그리고 클라이언트가 픽셀 데이터 속성 필드의 비트 15 를 이용하여 프레임 동기 또는 비디오 프레임 데이터의 말단을 검출할 수 있는 여부를 나타낸다.
비트 11 및 12 에 대한 값은, 클라이언트가 각각 포인팅 디바이스와 통신하여 포인팅 디바이스 데이터 패킷을 전송 및 수신할 수 있는지 또는 키보드와 통신하여 키보드 데이터 패킷을 전송 및 수신할 수 있는지를 나타낸다. 비트 13 에 대한 값은 VCP 피처 패킷들 즉, 요청 VCP 피처 패킷, VCP 피처 응답 패킷, 세트 VCP 피처 패킷, 요청 유효 파라미터 패킷 및 유효 파라미터 응답 패킷을 지원함으로써 하나 이상의 오디오 또는 비디오 파라미터들을 설정하는 능력을 가지는지 여부를 나타낸다. 비트 14 에 대한 값은 클라이언트가 픽셀 데이터를 오프라인 디스플레이 프레임 버퍼에 기록할 수 있는 능력을 갖는지 여부를 나타낸다. 이러한 비트가 로직-1 로 설정된다면, 디스플레이 업데이트 비트 (비디오 스트림 패킷의 픽셀 데이터 속성 필드의 비트 7 및 6) 는 값 '01' 로 설정될 수도 있다.
비트 15 에 대한 값은 클라이언트가 픽셀 데이터를 현재 디스플레이 이미지를 리프레쉬하는데 이용되고 있는 디스플레이 프레임 버퍼만으로 기록할 수 있는 능력을 갖는지 여부를 나타낸다. 이러한 비트가 0 으로 설정된다면 디스플레이 업데이트 비트 (비디오 스트림 패킷의 픽셀 데이터 속성 필드의 비트 7 및 6) 는 값 '00' 으로 설정될 수도 있다. 비트 16 에 대한 값은 클라이언트가 픽셀 데이터를 단독 비디오 스트림 패킷으로부터 모든 디스플레이 프레임 버퍼로 기록하는 능력을 갖는지 여부를 나타낸다. 이러한 비트가 1 로 설정된다면 디스플레이 업데이트 비트 (비디오 스트림 패킷의 픽셀 데이터 속성 필드의 비트 7 및 6) 는 값 '11' 로 설정될 수도 있다.
비트 17 에 대한 값은 클라이언트가 요청 특정 상태 패킷에 대해 응답하는 능력을 갖는지 여부를 나타내고, 비트 18 에 대한 값은 클라이언트가 라운드 트립 지연 측정 패킷에 대해 응답하는 능력을 갖는지 여부를 나타내고, 비트 19 에 대한 값은 클라이언트가 순방향 링크 스큐 교정 패킷에 대한 능력을 갖는지 여부를 나타내고, 비트 20 은 클라이언트가 VESA MCCS 가상 제어 패털 (VCP) 패킷에 대해 응답하는 능력을 갖는지 여부를 나타낸다.
비트 21 에 대한 값은 클라이언트가 요청 특정 상태 패킷을 해석하고 유효 상태 응답 리스트 패킷으로 응답하는 능력을 갖는지 여부를 나타낸다. 클라이언트는 다른 곳에서 설명한 바와 같이 유효 상태 응답 리스트 패킷의 유효 파라미터 응답 리스트 필드에서 추가적인 상태를 반환하는 능력을 나타낸다.
비트 22 에 대한 값은 클라이언트가 레지스터 액세스 패킷에 대해 응답하는 능력을 갖는지 여부를 나타낸다. 비트 9 내지 10 그리고, 23 내지 31 은 장래 사용을 위해 또는 시스템 설계자를 위해 유용한 또 다른 지정을 위해 예약되고, 일반적으로 0 과 동일하게 설정된다.
디스플레이 비디오 프레임 레이트 용량 필드 (1 바이트) 는 초당 프레임으로 디스플레이의 최대 비디오 프레임 업데이트 용량을 특정한다. 호스트는 이 필드에서 특정된 값보다 더 느린 레이트로 이미지를 업데이트 하는 것을 선택할 수도 있다.
오디오 버퍼 깊이 필드 (2 바이트) 는 각각의 오디오 스트림에 전용인 디스플레이에서 탄력적 버퍼의 깊이를 특정한다.
오디오 채널 용량 필드 (2 바이트) 는, 오디오 채널이 클라이언트 또는 클라이언트에 접속된 디바이스에 의해 지원되는지를 나타내는 플래그 그룹을 포함한다. 1 로 설정된 비트는, 채널이 지원됨을 나타내고 0 으로 설정된 비트는, 채널이 지원되지 않음을 나타낸다. 일 실시형태에서, 비트 위치는 상이한 채널로 할당되며, 예를 들어 비트 위치 0, 1, 2, 3, 4, 5, 6, 7 및 8 은 좌측 전방, 우측 전방, 좌측 후방, 우측 후방, 전방 센터, 서브-우퍼, 서라운드 좌측, 및 서라운드 우측 채널을 각각 나타낸다. 비트 8 내지 14 는 장래의 사용을 위해 현재 예약되고 일반적으로 0 으로 설정된다. 일 실시형태에서, 비트 15 는 클라이언트가 순방향 오디오 채널 인에이블 패킷에 대한 지원을 제공하는지 여부를 나타내는데 이용된다. 이러한 경우에, 비트 15 는 로직-1 레벨로 설정된다. 그러나, 클라이언트가 순방향 오디오 채널 인에이블 패킷의 결과로서 오디오 채널을 디스에이블할 수 없거나, 클라이언트가 어떠한 오디오 용량도 지원하지 않는다면, 이러한 비트는 로직-0 또는 값으로 설정된다.
순방향 링크에 대하여, 2-바이트 오디오 샘플 용량 필드는 클라이언트 디바이스의 오디오 샘플 레이트 용량을 나타내는 플래그 세트를 포함한다. 비트 위치는 따라서 상이한 레이트로 할당되고, 예를 들어 비트 위치 0, 1, 2, 3, 4, 5, 6, 7 및 8 은 각각 8,000, 16,000, 24,000, 32,000, 40,000, 48,000, 11,025, 22,050 및 44,100 의 초당 샘플 (SPS) 로 할당되며, 비트 9 내지 15 는 소망하는 경우 장래의 사용을 위해 또는 다른 레이트 사용을 위해 예약으로 남겨지며 따라서 이들은 현재 '0' 으로 설정된다. 이들 비트들 중 하나의 비트에 대한 비트 값을 '1' 로 설정하는 것은 특정한 샘플 레이트가 지원됨을 나타내고, 비트를 '0' 으로 설정하는 것은 그 샘플 레이트가 지원되지 않음을 나타낸다.
최소 서브-프레임 레이트 필드 (2 바이트) 는 초당 프레임에서 최소 서브 프레임 레이트를 특정한다. 최소 서브-프레임 레이트는 클라이언트에서 어떤 센서 또는 포인팅 디바이스를 판독에 충분한 클라이언트 상태 업데이트 레이트를 유지한다.
역방향 링크에 대하여, 2-바이트 마이크 샘플 레이트 용량 필드는, 클라이언트 디바이스에서 마이크로폰의 오디오 샘플 레이트 용량을 나타내는 플래그 세트를 포함한다. MDDI 의 목적으로, 클라이언트 디바이스 마이크로폰은 적어도 초당 8,000 샘플 레이트를 최소한 지원하도록 구성된다. 이 필드에 대한 비트 위치는 상이한 레이트로 할당되는데 예를 들어 비트 위치 0, 1, 2, 3, 4, 5, 6, 7 및 8 은 각각 8,000, 16,000, 24,000, 32,000, 40,000, 48,000, 11,025, 22,050 및 44,100 의 초당 샘플 (SPS) 을 나타내는데 사용되고, 비트 9 내지 15 는 소망하는 바에 따라 장래의 사용을 위해 또는 다른 레이트 사용을 위해 예약되며 따라서 이들은 현재 '0' 으로 설정된다. 이들 비트들 중 하나에 대한 비트값을 '1' 로 설정하는 것은, 특정 샘플 레이트가 지원됨을 나타내고, 비트를 '0' 으로 설정하는 것은 그 샘플 레이트가 지원되지 않음을 나타낸다. 마이크로폰이 접속되지 않은 경우, 마이크 샘플 레이트 용량의 각각은 0 과 동일하게 설정된다.
키보드 데이터 포맷 필드 (여기에서 1 바이트) 는 키보드가 클라이언트 시스템에 접속되는지 여부 및 접속된 키보드 타입을 특정한다. 일 실시형태에서, 비트 6 내지 0 에 의해 설정된 값은 접속된 키보드의 타입을 규정하는데 사용된다. 이러한 값이 제로 (0) 라면, 키보드 타입은 알려지지 않은 것으로 고려된다. 값 1 에 대하여, 키보드 데이터 포맷은 표준 PS-2 스타일이 되게 고려된다. 2 내지 125 의 범위의 값들은 현재 사용되지 않으며, 시스템 설계자 및 인터페이스 인코포레이터 (incorporator) 또는 제품 개발자가 MDD 인터페이스 및 대응하는 클라이언트 또는 호스트와 함께 이용하기 위해 특정 키보드 또는 입력 디바이스를 규정하는데 이용하기 위하여 예약된다. 값 126 은 키보드 데이터 포맷이 사용자-정의인지 여부를 나타내는 한편, 값 127 은 키보드가 이러한 클라이언트에 접속될 수 없는지를 나타낸다. 또한, 비트 7 은 키보드가 클라이언트와 통신할 수 있는지 여부를 나타내는데 이용될 수 있다. 이러한 비트의 의도된 사용은 키보드가 무선 링크를 사용하는 클라이언트와 통신할 수 있을 때를 나타낸다. 비트 6 내지 0 가, 키보드가 클라이언트에 접속될 수 없음을 나타낸다면 비트 7 은 0 으로 설정될 것이다. 따라서, 일 실시형태에서, 비트 7 의 값이 0 인 경우에, 키보드 및 클라이언트는 통신할 수 없는 없으나, 비트 7 의 값이 1 이라면, 키보드 및 클라이언트는 그들이 서로 통신할 수 있음을 확인한다.
포인팅 디바이스 데이터 포맷 필드 (여기에서 1 바이트) 는 포인팅 디바이스가 클라이언트 시스템에 접속되어 있는지 여부 및 접속된 포인팅 디바이스의 타입을 특정한다. 일 실시형태에서, 비트 6 내지 0 에 의해 설정된 값은 접속된 포인팅 디바이스의 타입을 규정하는데 이용된다. 이러한 값이 제로 (0) 라면, 포인팅 디바이스 타입은 알려지지 않은 것으로 고려된다. 값 1 에 대해서, 포인팅 디바이스 데이터 포맷은 표준 PS-2 스타일이 되는 것으로 고려된다. 2 내지 125 의 범위의 값들은 현재 사용되지 않으며, MDD 인터페이스 및 대응하는 클라이언트 또는 호스트와 함께 사용하기 위하여 특정 포인팅 디바이스 또는 입력 디바이스를 규정하는 시스템 설계자 및 인터페이스 인코포레이터 또는 제품 설계자의 사용을 위해 예약된다. 값 126 은 포인티 디바이스 데이터 포맷이 사용자-정의임을 나타내고, 값 127 은 포인팅 디바이스가 이러한 클라이언트에 접속될 수 없음을 나타내는데 이용된다. 또한, 비트 7 은 포인팅 디바이스가 클라이언트와 통신할 수 있는지 여부를 나타내는데 이용될 수 있다. 이러한 비트의 의도된 사용은 언제 키보드가 무선 링크를 이용하여 클라이언트와 통신할 수 있는지를 나타낸다. 비트 6 내지 0 이 포인팅 디바이스가 클라이언트에 접속될 수 없음을 타나낸다면, 비트 7 은 0 으로 설정될 것이다. 따라서, 일 실시형태에서, 비트 7 이 0 인 경우에, 포인팅 디바이스 및 클라이언트는 통신할 수 없지만, 비트 7 에 대한 값이 1 이라면, 포인팅 디바이스 및 클라이언트는 그들이 서로 통신할 수 있음을 확인한다.
컨텐츠 보호 타입 필드 (2 바이트) 는, 디스플레이에 의해 지원되지 않는 디지털 컨텐츠 보호의 타입을 나타내는 플래그 세트를 포함한다. 일반적으로, 비트 위치 0 은 DTCP 가 언제 지원되는지를 나타내는데 사용되고, 비트 위치 1 은 HDCP 가 언제 지원되는지를 나타내는데 사용되며, 비트 2 내지 15 는 소망하는 또는 이용가능한 경우 다른 보호 방식으로 사용하기 위해 예약으로 할당되어 이들은 현재 0 으로 설정된다.
16 비트 값을 형성하는 Mfr 네임-2 바이트는 EISA 3-캐릭터 제조자 ID 를 포함하고, VESA EDID 사양에서와 동일한 방식으로 5-비트 캐릭터로 패킹된다. 캐릭터 'A' 는 00001 바이너리로 표현되고, 캐릭터 'Z' 는 11010 바이너리로 나타내어지며, 'A' 와 'Z' 사이의 모든 문자들은 'A' 와 'Z' 사이의 알파벳 순서에 대응하는 순차적인 바이너리 값들로 표현된다. Mfr 네임 필드의 최상위 비트는 사용되지 않고 언제나 0 이 될 것이다. 예시: 스트링 "XYZ" 에 의해 나타내어지는 제조자는 0x633a 의 Mfr 네임값을 가질 것이다. 이러한 필드가 클라이언트에 의해 지원되지 않는다면, 0 으로 설정될 것이다.
제품 코드-2 바이트는 디스플레이 제조자에 의해 할당되는 제품 코드를 포함한다. 이러한 필드가 클라이언트에 의해 지원되지 않는다면, 클라이언트는 0 으로 설정될 것이다.
예약 4-2 바이트는 장래 사용을 위해 예약된 16 비트 무부호 정수를 포함한다. 이러한 필드의 모드 비트는 0 으로 설정될 것이다. 이러한 필드의 목적은 모든 후속하는 2 바이트 필드로 하여금 16-비트 워드 어드레스로 정렬하게 하고 4-바이트 필드로 하여금 32-비트 워드 어드레스로 정렬하게 하는 것이다.
시리얼 넘버- 4 바이트는 숫자 형식으로 디스플레이의 시리얼 넘버를 특정한다. 이러한 필드가 클라이언트에 의해 지원되지 않는다면, 0 으로 설정될 것이다.
제조의 주-1 바이트는 디스플레이의 제조 주를 규정한다. 이러한 값은 클라이언트에 의해 지원된다면 1 내지 53 의 범위가 될 것이다. 이러한 필드가 클라이언트에 의해 지원되지 않는다면, 0 으로 설정될 것이다.
제조의 년-1 바이트는 디스플레이의 제조 년을 규정한다. 이러한 값은 1990년으로부터의 오프셋이다. 1991 내지 2245 의 년도 범위는 이러한 필드에 의해 표현될 수 있다. 예시: 2003 년은 제조년도 값 13 에 대응한다. 이러한 필드가 클라이언트에 의해 지원되지 않는다면, 0 으로 설정될 것이다.
CRC-2 바이트는 패킷 길이를 포함하는 패킷에서의 모든 바이트의 16-비트 CRC 를 포함한다.
G. 디스플레이 요청 및 상태 패킷들에 대하여
역방향 링크 요청 필드 (3 바이트) 는, 디스플레이가 호스트에게 정보를 전송하기 위해 그 다음의 서브-프레임에서 역방향 링크에 필요로 하는 바이트 개수를 특정한다.
CRC 에러 카운트 필드 (1 바이트) 는, 미디어 프레임의 시작 이후 얼마나 많은 CRC 에러가 발생하였는지를 나타낸다. CRC 카운트는 0 의 서브-프레임 카운트를 가지는 서브-프레임 헤더 패킷이 전송되는 경우 재설정된다. CRC 에러의 실제 개수가 255 를 초과하면, 이값은 일반적으로 255 에서 포화한다.
용량 변화 필드는 디스플레이의 용량에서의 변화를 나타내는데 1 바이트를 사용한다. 이것은, 사용자가 마이크로폰, 키보드 또는 디스플레이와 같은 주변 디바이스에 접속하는 경우 또는 약간 다른 이유 때문에 발생할 수 있다. 비트 [7:0] 가 0 과 동일하면, 최종 클라이언트 용량 패킷이 전송된 이후 그 용량은 변하지 않았다. 그러나, 비트 [7:0] 가 1 에서 255 와 동일한 경우에는, 용량은 변하였다. 클라이언트 용량 패킷은 새로운 디스플레이 특징들을 결정하기 위해 조사된다.
H. 비트 블록 전달 패킷에 대하여
윈도우 상부 좌측 좌표 X 값 및 Y 값 필드는, 이동될 윈도우의 상부 좌측 코너의 좌표 X 및 Y 값을 특정하기 위해 각각 2 바이트를 사용한다. 윈도우 폭 및 높이 필드는 이동될 윈도우의 폭과 높이를 특정하기 위해 각각 2 바이트를 사용한다. 윈도우 X 이동 및 Y 이동 필드는, 윈도우가 수평으로 그리고 수직으로 각각 이동되는 픽셀의 개수를 특정하는데 각각 2 바이트를 사용한다. 통상적으로, X 에 대한 포지티브 값은 윈도우가 우측으로 이동되게 하고 네거티브 값은 좌측으로 이동되게 하며, Y 에 대한 포지티브 값은 윈도우를 하부로 이동되게 하고 네거티브 값은 상부로 이동하게 하도록 이들 좌표들은 구성된다.
I. 비트맵 영역 필 패킷에 대하여
윈도우 상부 좌측 좌표 X 값 및 Y 값 필드는, 채워질 윈도우의 상부 좌측 코너의 좌표 X 및 Y 값을 특정하는데 각각 2 바이트를 사용한다. 윈도우 폭 및 높이 필드 (각각 2 바이트) 는 채워질 윈도우의 폭과 높이를 특정한다. 비디오 데이터 포맷 디스크립터 필드 (2 바이트) 는 픽셀 영역 필 값의 포맷을 특정한다. 그 포맷은 비디오 스트림 패킷에서의 동일 필드와 같다. 픽셀 영역 필 값 필드 (4 바이트) 는 상술된 필드들에 의해 특정된 윈도우 내로 채워질 픽셀 값을 포함한다. 이 픽셀의 포맷은 비디오 데이터 포맷 디스크립터 필드에서 특정된다.
J. 비트맵 패턴 필 패킷에 대하여
윈도우 상부 좌측 좌표 X 값 및 Y 값 필드는, 채워질 윈도우의 상부 좌측 코너의 좌표 X 및 Y 값을 특정하는데 각각 2 바이트를 사용한다. 윈도우 폭 및 높이 필드 (각각 2 바이트) 는 채워질 윈도우의 폭과 높이를 특정한다. 패턴 폭 및 패턴 높이 필드 (각각 2 바이트) 는 각각 필 패턴의 폭과 높이를 특정한다. 수평 패턴 오프셋 필드 (2 바이트) 는 채워질 특정 윈도우의 좌측 에지로부터 픽셀 데이터 패턴의 수평 오프셋을 특정한다. 특정되는 이러한 값은 패턴 폭 필드의 값보다 작을 것이다. 수평 패턴 오프셋 필드 (2 바이트) 는 채워질 특정 윈도우의 상부 에지로부터의 픽셀 데이터 패턴의 수직 오프셋을 특정한다. 특정되는 이러한 값은 패턴 높이 필드의 값보다 작을 것이다.
2-바이트 비디오 데이터 포맷 디스크립터 필드는 픽셀 영역 필 값의 포맷을 특정한다. 도 11 은 비디오 데이터 포맷이 어떻게 코딩되는지를 나타낸다. 포맷은 비디오 스트림 패킷에서의 동일 필드와 같다.
파라미터 CRC 필드 (2 바이트) 는 패킷 길이에서부터 비디오 포맷 디스크립터까지의 모든 바이트의 CRC 를 포함한다. 이 CRC 가 확인하는데 실패하면, 전체 패킷은 버려진다. 패턴 픽셀 데이터 필드는, 비디오 데이터 포맷 디스크립터에 의해 특정된 포맷으로 필 패턴을 특정하는 미가공 비디오 정보를 포함한다. 데이터는 바이트들로 패킹되어지고 (packed) 각 행의 제 1 픽셀은 바이트-정렬될 것이다. 필 패턴 데이터는 동시에 행으로 전달된다. 패턴 픽셀 데이터 CRC 필드 (2 바이트) 는 단지 패턴 픽셀 데이터의 CRC 를 포함한다. CRC 가 확인하는데 실패하면, 패턴 픽셀 데이터는 여전히 사용될 수 있지만 CRC 에러 카운트는 증가된다.
K. 통신 링크 데이터 채널 패킷
파라미터 CRC 필드 (2 바이트) 는 패킷 길이에서부터 패킷 타입까지의 모든 바이트들의 16-비트 CRT 를 포함한다. 이 CRT 가 확인하는데 실패하면, 전체 패킷은 버려진다.
통신 링크 데이터 필드는 통신 채널로부터의 미가공 데이터를 포함한다. 이 데이터는 디스플레이에서의 컴퓨팅 디바이스로 단지 패싱된다.
통신 링크 데이터 CRC 필드 (2 바이트) 는 단지 통신 링크 데이터의 16-비트 CRC 를 포함한다. 이 CRC 가 확인하는데 실패하면, 통신 링크 데이터는 여전히 사용되거나 또는 유용하지만, CRC 에러 카운트는 증가된다.
L. 인터페이스 타입 핸드오프 요청 패킷에 대하여
인터페이스 타입 필드 (1 바이트) 는 사용할 새로운 인터페이스 타입을 특정한다. 이러한 필드의 값은 다음의 방식으로 인터페이스 타입을 특정한다. 트 7 의 값이 '0' 과 동일하면 타입 핸드오프 요청은 순방향 링크에 대한 것이고, '1' 과 동일하면 그 타입 핸드오프 요청은 역방향 링크에 대한 것이다. 비트 6 내지 3 은 장래의 사용을 위해 예약되고 일반적으로 0 으로 설정된다. 비트 2 내지 0 은 사용될 인터페이스 타입을 규정하는데 사용되며, 1 의 값은 핸드오프를 타입-1 모드로, 2 의 값은 핸드오프를 타입-2 모드로, 3 의 값은 핸드오프를 타입-3 모드로, 그리고 4 의 값은 핸드오프를 타입-4 로 의미한다. '0' 및 5 내지 7 의 값은 장래의 다른 모드 또는 모드 조합의 지정을 위해 예약으로 남겨진다.
M. 인터페이스 타입 확인 응답 패킷에 대하여
인터페이스 타입 필드 (1 바이트) 는 사용할 새로운 인터페이스 타입을 확인하는 값을 가진다. 이 필드에 있는 값은 다음과 같은 방법으로 인터페이스 타입을 특정한다. 비트 7 이 '0' 과 동일하면, 타입 핸드오프 요청은 순방향 링크에 대한 것이고, 대신 '1' 과 동일하면, 그 타입 핸드오프 요청은 역방향 링크에 대한 것이다. 비트 6 내지 3 은 소망하는 경우 다른 핸드오프 타입을 지정하는데 사용하기 위해 현재 예약되고 일반적으로 0 으로 설정된다. 그러나, 비트 위치 2 내지 0 은 사용될 인트페이스 타입을 규정하는데 사용되며, '0' 의 값은 네거티브 확인 응답 또는 그 요구된 핸드오프가 수행될 수 없다는 것을 나타내고, '1', '2', '3', 및 '4' 의 값은 각각 핸드오프를 타입-1, 타입-2, 타입-3 및 타입-4 모드로 나타낸다. 5 내지 7 의 값은, 소망하는 경우 다른 모드의 지정을 위해 예약으로 남겨진다.
N. 수행 타입 핸드오프 패킷에 대하여
1-바이트 인터페이스 타입 필드는 사용할 새로운 인터페이스 타입을 나타낸다. 이 필드에서 나타낸 값은, 타입 핸드오프가 순방향 링크 또는 역방향 링크에 대한 것인지 여부를 결정하기 위해 비트 7 의 값을 우선 사용함으로써 인터페이스 타입을 특정한다. '0' 의 값은 타입 핸드오프가 순방향 링크에 대한 것임을 나타내고 '1' 의 값은 타입 핸드오프가 역방향 링크에 대한 것임을 나타낸다. 비트 6 내지 3 은 장래의 사용을 위해 예약되고 일반적으로 0 의 값으로 설정된다. 그러나, 비트 2 내지 0 은 사용될 인터페이스 타입을 규정하는데 사용되고, 1, 2, 3 및 4 의 값은 각각 핸드오프의 사용을 타입-1, 타입-2, 타입-3 및 타입-4 모드로 특정한다. 이들 비트에 대한 0 및 5 내지 7 의 값 사용은 장래의 사용을 위해 예약으로 남겨진다.
O. 순방향 오디오 채널 인에이블 패킷에 대하여
오디오 채널 인에이블 마스크 필드 (1 바이트) 는 클라이언트에서 오디오 채널이 인에이블될 것을 나타내는 플래그 그룹을 포함한다. 1 로 설정된 비트는 대응하는 채널을 인에이블시키고, 0 으로 설정된 비트는 대응하는 채널을 디스에이블시키며, 비트 0 내지 5 는, 좌측 전방, 우측 전방, 좌측 후방, 우측 후방, 전방 센터, 및 서브-우퍼 채널을 각각 담당하는 채널 0 내지 채널 5 를 지정한다. 비트 6 및 7 은 장래의 사용을 위해 예약되고 일반적으로 평균 시간에서 0 과 동일하게 설정된다.
P. 역방향 오디오 샘플 레이트 패킷에 대하여
오디오 샘플 레이트 필드 (1 바이트) 는 디지털 오디오 샘플 레이트를 특정한다. 이 필드에 대한 값은 상이한 레이트로 할당되는데, 0, 1, 2, 3, 4, 5, 6, 7 의 값은 각각 8,000, 16,000, 24,000, 32,000, 40,000, 48,000, 11,025, 22,050 및 44,100 의 초당 샘플 (SPS) 을 지정하는데 사용되고, 비트 9 내지 254 는 소망하는 경우 다른 레이트 사용을 위해 예약으로 할당되어 이들은 현재 '0' 으로 설정된다. 255 의 값은 역방향 링크 오디오 스트림을 디스에이블 하는데 사용된다.
샘플 포맷 필드 (1 바이트) 는 디지털 오디오 샘플의 포맷을 특정한다. 비트 [1:0] 가 '0' 과 동일하면, 디지털 오디오 샘플은 리니어 포맷으로 존재하고, '1' 이면 그 디지털 오디오 샘플은 μ-로우 (μ-Law) 포맷으로 존재하고, 2 와 동일하면 그 디지털 오디오 샘플은 A-로우 (A-Law) 포맷으로 존재한다. 비트 [7:2] 는 소망하는 경우 오디오 포맷을 지정하는데 다른 사용을 위해 예약되고 일반적으로 0과 동일하게 설정된다.
Q. 디지털 컨텐츠 보호 오버헤드 패킷에 대하여
컨텐츠 보호 타입 필드 (1 바이트) 는 사용되는 디지털 컨텐츠 보호 방법을 특정한다. '0' 의 값은 디지털 송신 컨텐츠 보호 (DTCP) 를 나타내고 '1' 의 값은 고 대역 디지털 컨텐츠 보호 시스템 (HDCP) 을 나타낸다. 2 내지 255 의 값은 현재 특정되지는 않지만 소망하는 경우 다른 보호 방식의 사용을 위해 예약으로 남겨진다. 컨텐츠 보호 오버헤드 메시지 필드는 호스트와 클라이언트 사이에서 전송된 컨텐츠 보호 메시지들을 포함하는 가변적 길이의 필드이다.
R. 투명 컬러 인에이블 패킷에 대하여
투명 컬러 인에이블 필드 (1 바이트) 는, 투명 컬러 모드가 인에이블 또는 디스에이블하는 것을 나타낸다. 비트 0 이 0 과 동일하면, 투명 컬러 모드는 디스에이블되고, 1 과 동일하면, 투명 컬러 모드는 인에이블되며 투명 컬러는 다음의 2 개 파라미터로 특정된다. 이 바이트의 비트 1 내지 7 은 장래의 사용을 위해 예약되고 통상적으로 0 과 동일하게 설정된다.
비디오 데이터 포맷 디스크립터 필드 (2 바이트) 는 픽셀 영역 필 값의 포맷을 특정한다. 도 11 은 비디오 데이터 포맷 디스크립터가 어떻게 코딩되는지를 나타낸다. 일반적으로 포맷은 비디오 스트림 패킷에서의 동일 필드와 같다.
픽셀 영역 필 값 필드는 상기에서 특정된 윈도우 내로 채워질 픽셀 값에 할당되는 4 바이트를 사용한다. 이 픽셀의 포맷은 비디오 데이터 포맷 디스크립터 필드에서 특정된다.
S. 라운트 트립 지연 측정 패킷에 대하여
2-바이트 패킷 길이 필드는 패킷 길이 필드를 포함하는 않는 패킷에서 총 바이트 수를 특정하며, 일 실시형태에서 159 의 고정된 길이를 갖도록 선택된다. 2-바이트 패킷 타입 필드는 값 82 로 이러한 패킷 타입을 식별하고, 패킷을 라운드 트립 지연 측정 패킷으로서 식별한다. 이전에 클라이언트 ID 로서 장래 사용을 위해 예약된 h클라이언트ID 는 일반적으로 0 으로 설정된다.
일 실시형태에서, 파라미터 CRC 필드 (2 바이트) 는 패킷 길이에서부터 패킷 타입까지 모든 바이트의 16-비트 CRC 를 포함한다. 이 CRC 가 확인하는데 실패하면, 전체 패킷은 폐기된다.
가드 시간 1 필드 (여기에서 64 바이트) 는 호스트 내의 라인 드라이버가 디스에이블되기 전에, 클라이언트 내의 MDDI_Data 라인 드라이버가 인에이블될 수 있도록 하는데 이용된다. 클라이언트는 가드 시간 1 의 비트 0 동안 그 MDDI_Data 라인 드라이버를 인에이블시키고, 호스트는 가드 시간 1 의 최후 비트 전에 완전하게 디스에이블되도록 그 라인 드라이버를 디스에이블시킨다. 호스트와 클라이언트 양자는 그들이 디스에이블되지 않은 경우에 가드 시간 1 동안 로직-0 레벨을 구동한다. 이러한 필드의 또 다른 목적은, 호스트의 라인 드라이버를 디스에이블하기 전에 단지 MDDI_Stb 를 이용하여 클라이언트가 클럭 신호의 클럭을 복구할 수 있도록 충분한 시간동안 모든 MDDI_Data 신호들이 로직-0 레벨이 되도록 보장하는 것이다.
측정 주기 필드는 클라이언트가 2 바이트의 0xff, 및 순방향 링크에서 사용되는 데이터 레이트의 절반에서 30 바이트의 0x0 으로 응답할 수 있도록 하는데 사용되는 64 바이트 윈도우이다. 이러한 데이터 레이트는 1 의 역방향 링크 레이트 디바이저 (Divisor) 에 대응한다. 클라이언트는 측정 주기의 시작으로 인식하는 시점에 이러한 응답을 즉시 반환한다. 클라이언트로부터의 이러한 응답은 호스트에서의 측정 주기의 최초 비트의 시작 후에 클라이언트에서의 로직 지연과 링크의 라운드 트립 지연을 정확히 더한 값으로 호스트에서 수신될 것이다.
올 제로 1 필드 (2 바이트) 는 호스트 및 클라이언트 내의 MDDI_Data 라인 드라이버로 하여금 오버래핑할 수 있도록 하여 MDDI_Data 가 언제나 구동되도록 하게 하는 제로들을 포함한다. 호스트는 가드 시간 2 의 비트 0 동안 MDDI_Data 라인 드라이버를 인에이블하고, 클라이언트도 또한 측정 주기 말단에서와 같이 신호를 로직-0 레벨로 구동한다.
가드 시간 2 필드의 값 (64 바이트) 은, 라운드 트립 지연이 측정 주기에서 측정될 수 있는 최대량에 있는 경우에, 클라이언트에 의해 구동되는 측정 주기의 오버랩을 허용한다. 클라이언트는 가드 시간 2 의 비트 0 동안 그 라인 드라이버를 디스에이블시키고, 호스트는 가드 시간 2 의 최후 비트 후에 그 라인 드라이버를 즉시 인에이블시킨다. 호스트와 클라이언트 양자는 그들이 디스에이블되지 않은 경우에 가드 시간 2 동안 로직-0 레벨을 구동한다. 이러한 필드의 또 다른 목적은, 클라이언트로 하여금 호스트에 대한 라인 드라이버를 인에이블링한 후에 MDDI_Data0 및 MDDI_Stb 양자를 이용하여 클럭 신호 복구를 시작하게 하는 충분한 시간동안 모든 MDDI_Data 신호들이 로직-0 레벨이 되도록 보장하는 것이다.
T. 순방향 링크 스큐 교정 패킷에 대하여
일 실시형태에서, 파라미터 CRC 필드 (2 바이트) 는 패킷 길이에서부터 패킷 타입까지이 모든 바이트의 16-비트 CRC 를 포함한다. 이 CRC 가 확인하는데 실패하면, 전체 패킷은 버려진다.
교정 데이터 시퀀스 필드는 모든 데이터 주기에서 MDDI_데이터 신호가 토글링하게 초래하는 512 바이트 데이터 시퀀스를 포함한다. 교정 데이터 시퀀스의 프로세싱 동안, MDDI 호스트 제어기는 모든 MDDI_Data 신호를 스트로브 신호화 동일하게 설정한다. 디스플레이 클록 복구 회로는, 교정 데이터 시퀀스 필드가 클라이언트 디스플레이에 의해 수신되는 동안 데이터 클록을 복구하기 위해 MDDI_Stb Xor MDDI-Data 0 보다는 MDDI_Stb 만을 사용하여야 한다. 교정 데이터 시퀀스 필드의 시작에서 MDDI_Stb 신호의 정확한 위상에 의존하여, 일반적으로 교정 데이터 시퀀스는, 패킷이 전송되는 경우 사용되는 인터페이스 타입에 기초하여 다음 중의 하나가 된다.
타입 1 - Oxaa, Oxaa... 또는 Ox55, Ox55...
타입 2 - Oxcc, Oxcc... 또는 Ox33, Ox33...
타입 3 - OxfO, OxfO... 또는 OxOf, OxOf...
타입 4 - Oxff, OxOO, Oxff, OxOO... 또는 OxOO, Oxff, OxOO, Oxff...
타입 1 과 타입 2 양자에 대한 가능한 MDDI_Dara 와 MDDI_Stb 파형의 예가 도 62a 와 도 62b 에 각각 도시된다.
ⅩⅦ. 결론
본 발명의 다양한 실시형태가 상술되었지만, 이들 실시형태는 한정이 아닌 단지 예시로서 제공되었다. 따라서, 본 발명의 범위는 상술한 예시적인 실시형태들 중의 임의의 실시형태로 한정되어서는 안되며, 다음의 청구범위와 그 균등물에 따라서만 정의되어야만 한다.

Claims (70)

  1. 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트 (high rate) 로 디지털 프리젠테이션 (presentation) 데이터를 전달하는 디지털 데이터 인터페이스로서,
    상기 통신 경로를 통해 호스트와 클라이언트 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 통신 프로토콜을 형성하도록 함께 링크되는 복수의 패킷 구조; 및
    상기 통신 경로를 통해 상기 클라인어트에 커플링되는 상기 호스트 디바이스에 상주하고, 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷으로 형성하도록 구성되는 하나 이상의 링크 제어기를 구비하는, 디지털 데이터 인터페이스.
  2. 제 1 항에 있어서,
    상이하고 가변적인 길이를 가지는 소정 개수의 상기 패킷들로 고정 길이를 가지는, 상기 호스트와 상기 클라이언트 사이에서 통신되는 미디어 프레임들 내에서 함께 그룹화되는 상기 패킷들을 더 구비하는, 디지털 데이터 인터페이스.
  3. 제 1 항에 있어서,
    상기 호스트로부터의 패킷들의 전달의 처음에 위치되는 서브-프레임 헤더 패 킷을 더 구비하는, 디지털 데이터 인터페이스.
  4. 제 1 항에 있어서,
    상기 링크 제어기는 호스트 링크 제어기이고,
    상기 통신 경로를 통해 상기 호스트에 커플링되는 상기 클라이언트 디바이스에 상주하고, 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하는 하나 이상의 클라이언트 링크 제어기를 더 구비하는, 디지털 데이터 인터페이스.
  5. 제 1 항에 있어서,
    클라이언트 사용자에게 프리젠테이션을 위해 순방향 링크를 통해 상기 호스트로부터 상기 클라이언트로 데이터를 전달하기 위한, 하나 이상의 오디오 타입 데이터용 오디오 스트림 패킷들과 비디오 타입 데이터용 비디오 스트림 패킷들을 더 구비하는, 디지털 데이터 인터페이스.
  6. 제 2 항에 있어서,
    각각의 모드가, 주어진 시간 주기에 걸쳐 병렬로 데이터의 상이한 최대 개수의 비트의 전달을 허용하고 상기 호스트 링크 드라이버와 클라이언트 링크 드라이버 사이의 협상에 의해 선택가능한, 복수의 전달 모드를 더 구비하고,
    상기 전달 모드들은 데이터의 전달 동안 상기 모드들 사이에서 동적으로 조 정가능한, 디지털 데이터 인터페이스.
  7. 제 1 항에 있어서,
    컬러 맵 패킷 (Color Map Packet), 비트 블록 전달 패킷 (Bit Block Transfer Packet), 비트맵 영역 필 패킷 (Bitmap Area Fill Packet), 비트맵 패턴 필 패킷 (Bitmap Pattern Fill Packet) 및 투명 컬러 인에이블 타입 패킷 (Transpatent Color Enable Type Packet) 의 그룹으로부터 선택된 비디오 정보를 전달하는데 사용가능한 복수의 패킷들을 더 구비하는, 디지털 데이터 인터페이스.
  8. 제 1 항에 있어서,
    데이터를 갖지 않는 순방향 링크 송신의 주기를 점유하도록 상기 호스트에 의해 생성된 필러 타입 패킷들을 더 구비하는, 디지털 데이터 인터페이스.
  9. 제 1 항에 있어서,
    인터페이스-사용자 정의 데이터를 전달하기 위한 사용자-정의 스트림 타입 패킷을 더 구비하는, 디지털 데이터 인터페이스.
  10. 제 1 항에 있어서,
    상기 통신 경로를 통해 어느 하나의 방향으로 데이터의 전달을 종결시키기 위해 상기 클라이언트로 상기 호스트에 의한 송신을 위한 링크 셧다운 타입 패킷을 더 구비하는, 디지털 데이터 인터페이스.
  11. 제 1 항에 있어서,
    상기 클라이언트가 상기 호스트를 휴지 상태로부터 웨이크업 (wake up) 시키는 수단을 더 구비하는, 디지털 데이터 인터페이스.
  12. 사용자에게 프리젠테이션을 위해 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트 (high rate) 로 디지털 데이터를 전달하는 방법으로서,
    복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하고, 미리 규정된 통신 프로토콜을 형성하기 위해 하나 이상의 패킷 구조들을 링크시키는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트와 상기 클라이언트 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 디바이스에 상주하는 하나 이상의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 디바이스에 커플링하는 단계로서, 상기 호스 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는, 상기 커플링하는 단계; 및
    상기 링크 제어기들을 사용하여 상기 통신 경로를 통해 데이터를 패킷들의 형태로 전달하는 단계를 포함하는, 디지털 데이터 전달 방법.
  13. 제 12 항에 있어서,
    상기 호스트와 상기 클라이언트 사이의 통신을 위한 미디어 프레임 내에서 상기 패킷들을 함께 그룹화하는 단계를 더 포함하고, 상기 미디어 프레임들은 상이하고 가변적인 길이를 가지는 소정 개수의 상기 패킷들로 고정 길이를 가지는, 디지털 데이터 전달 방법.
  14. 제 12 항에 있어서,
    상기 호스트로부터 패킷들의 전달을 서브-프레임 헤더 타입 패킷으로 시작하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  15. 제 12 항에 있어서,
    상기 통신 링크를 통해 양방향으로 상기 호스트와 상기 클라이언트 사이에 정보를 전달하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  16. 제 12 항에 있어서,
    상기 통신 경로를 통해 상기 호스트 디바이스에 커플링되는 상기 클라이언트 디바이스에 상주하고, 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수 신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는 하나 이상의 클라이언트 링크 제어기를 더 구비하는, 디지털 데이터 전달 방법.
  17. 제 16 항에 있어서,
    상기 호스트 링크 제어기는 하나 이상의 차동 라인 드라이버를 구비하고,
    상기 클라이언트 링크 제어기는 상기 통신 경로에 커플링되는 하나 이상의 차동 라인 수신기를 구비하는, 디지털 데이터 전달 방법.
  18. 제 12 항에 있어서,
    어떤 타입의 데이터와 데이터 레이트를 상기 클라이언트가 상기 인터페이스를 통해 수용할 수 있는지를 결정하기 위해, 상기 호스트 링크 제어기에 의해 상기 클라이언트로부터의 디스플레이 용량 정보를 요청하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  19. 제 12 항에 있어서,
    상기 통신 경로의 일부로서, 상기 링크 제어기들의 각각에 의해 USB 데이터 인터페이스를 동작시키는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  20. 제 12 항에 있어서,
    상기 패킷들 각각은 패킷 길이, 하나 이상의 패킷 데이터 필드, 및 사이클릭 리던던시 확인 필드 (cyclic redundancy check field) 를 구비하는, 디지털 데이터 전달 방법.
  21. 제 13 항에 있어서,
    각 방향으로의 복수의 전달 모드들 중 하나의 전달 모드 사용을 상기 호스트링크 드라이버와 상기 클라이언트 링크 드라이버 사이에서 협상하는 단계로서, 각각의 전달 모드는 주어진 시간 주기에 걸쳐 병렬로 데이터의 상이한 최대 개수의 비트의 전달을 허용하는, 상기 협상하는 단계; 및
    데이터의 전달 동안 상기 전달 모드들 사이에서 동적으로 조정하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  22. 제 12 항에 있어서,
    컬러 맵 패킷, 비트 블록 전달 패킷, 비트맵 영역 필 패킷, 비트맵 패턴 필 패킷 및 투명 컬러 인에이블 타입 패킷의 그룹으로부터 선택된 비디오 정보를 전달하기 위해 복수의 패킷들 중 하나의 패킷을 사용하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  23. 제 12 항에 있어서,
    데이터를 갖지 않는 순방향 링크 송신의 주기를 점유하도록 상기 호스트에 의해 필러 타입 패킷들을 생성하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  24. 제 12 항에 있어서,
    상기 클라이언트로 상기 호스트에 의한 송신을 위해 링크 셧다운 타입 패킷을 사용하여 상기 통신 경로를 통해 어느 하나의 방향으로 데이터의 전달을 종결시키는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  25. 제 12 항에 있어서,
    상기 클라이언트와의 통신에 의해 휴지 상태로부터 상기 호스트를 웨이크업 시키는 단계를 더 포함하는, 디지털 데이터 전달 방법.
  26. 사용자에게 프리젠테이션을 위해 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 디바이스로서,
    복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하여 미리 규정된 통신 프로토콜을 형성하도록 그 하나 이상의 패킷 구조들을 함께 링크시키며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한, 상기 호스트 디바이스에 배치된 하나 이상의 호스트 링크 제어기;
    상기 클라이언트 디바이스에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 커플링하는 하나 이상의 클라이언트 제어기를 구비하고,
    각각의 링크 제어기는, 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는, 디지털 데이터 전달 장치.
  27. 제 26 항에 있어서,
    상기 호스트 제어기는 상태 머신을 구비하는, 디지털 데이터 전달 장치.
  28. 제 26 항에 있어서,
    상기 호스트 제어기는 범용 신호 프로세서를 구비하는, 디지털 데이터 전달 장치.
  29. 제 26 항에 있어서,
    상기 호스트로부터 패킷들의 전달 시작에서 서브-프레임 헤더 타입 패킷을 더 구비하는, 디지털 데이터 전달 장치.
  30. 제 26 항에 있어서,
    상기 링크 제어기들은 상기 통신 링크를 통해 양방향으로 상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에 정보를 전달하도록 구성되는, 디지털 데이터 전달 장치.
  31. 제 30 항에 있어서,
    상기 호스트 제어기는 하나 이상의 차동 라인 드라이버를 구비하고,
    상기 클라이언트 수신기는 상기 통신 경로에 커플링되는 하나 이상의 차동 라인 수신기를 구비하는, 디지털 데이터 전달 장치.
  32. 제 26 항에 있어서,
    클라이언트 사용자에게 프리젠테이션을 위해 상기 호스트로부터 상기 클라이언트로 데이터를 전달하는 경우, 비디오 타입 데이터용 비디오 스트림 타입 패킷들과 오디오 타입용 오디오 스트림 타입 패킷들을 더 구비하는, 디지털 데이터 전달 장치.
  33. 제 26 항에 있어서,
    상기 클라이언트로부터 상기 호스트로 데이터를 전달하기 위한 하나 이상의 역방향 링크 캡슐화 타입 패킷들을 더 구비하는, 디지털 데이터 전달 장치.
  34. 제 33 항에 있어서,
    클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 디스플레이 또는 프리젠테이션 용량들을 통신하기 위한 하나 이상의 디스플레이 용량 타입 패킷을 더 구비하는, 디지털 데이터 전달 장치.
  35. 제 26 항에 있어서,
    상기 패킷들 각각은 패킷 길이, 하나 이상의 패킷 데이터 필드, 및 사이클릭 리던던시 확인 필드를 구비하는, 디지털 데이터 전달 장치.
  36. 제 26 항에 있어서,
    상기 호스트 링크 제어기 및 클라이언트 링크 제어기는, 각 방향으로의 복수의 전달 모드들 중 하나의 전달 모드를 사용하도록 구성되고, 각각의 전달 모드는 주어진 시간 주기에 걸쳐 병렬로 데이터의 상이한 최대 개수의 비트의 전달을 허용하며 데이터의 전달 동안 상기 전달 모드들 사이에서 동적으로 조정하는 할 수 있는 단계를 더 포함하는, 디지털 데이터 전달 장치.
  37. 제 26 항에 있어서,
    컬러 맵 패킷, 비트 블록 전달 패킷, 비트맵 영역 필 패킷, 비트맵 패턴 필 패킷 및 투명 컬러 인에이블 타입 패킷의 그룹으로부터 선택된 비디오 정보를 전달하기 위한 복수의 패킷들 중 하나 이상의 패킷을 더 구비하는, 디지털 데이터 전달 장치.
  38. 제 26 항에 있어서,
    데이터를 갖지 않는 순방향 링크 송신의 주기를 점유하도록 상기 호스트에 의한 전달을 위한 필러 타입 패킷들을 생성하는 단계를 더 포함하는, 디지털 데이터 전달 장치.
  39. 제 26 항에 있어서,
    상기 호스트 제어기는, 상기 통신 경로를 통해 어느 하나의 방향으로의 데이터의 전달을 종결시키기 위해 상기 클라이언트 수단에게 링크 셧다운 타입 패킷을 송신하도록 구성되는, 디지털 데이터 전달 장치.
  40. 사용자에게 프리젠테이션을 위해, 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 전자 시스템에 사용하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은 컴퓨터 사용가능 매체를 구비하며,
    상기 컴퓨터 사용가능 매체는, 상기 매체에 수록되어 컴퓨터 시스템상에서 애플리케이션 프로그램을 실행시키기 위한 컴퓨터 판독가능 프로그램 코드 수단을 가지고,
    상기 컴퓨터 판독가능 프그램 코드 수단은,
    컴퓨터 시스템으로 하여금 복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하여 미리 규정된 통신 프로토콜을 생성하도록 그 하나의 패킷 구조들을 함께 결합하게 하는 컴퓨터 판독가능 제 1 프로그램 코드 수단;
    상기 컴퓨터 시스템으로 하여금 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하게 하는 컴퓨터 판독가능 제 2 프로그램 코드 수단;
    상기 컴퓨터 시스템으로 하여금, 상기 호스트 디바이스에 배치된 하나 이상의 호스트 링크 제어기를, 상기 통신 경로를 통해 상기 클라이언트 디바이스에 배치된 하나 이상의 클라이언트 제어기에 커플링하게 하는 컴퓨터 판독가능 제 3 프로그램 코드 수단으로서, 상기 링크 제어기들은 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는, 상기 컴퓨터 판독가능 제 3 프로그램 코드 수단; 및
    상기 컴퓨터 시스템으로 하여금 상기 링크 제어기들을 사용하여 상기 통신 경로를 통해 데이터를 패킷 형태로 전달하게 하는 컴퓨터 판독가능 제 4 프로그램 코드 수단을 구비하는, 컴퓨터 프로그램 제품.
  41. 사용자에게 프리젠테이션을 위해 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 장치로서,
    복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하여 미리 규정된 통신 프로토콜을 형성하도록 그 하나 이상의 패킷 구조들을 함께 링크시키는 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 디바이 스와 상기 클라이언트 디바이스 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 수단;
    상기 통신 경로를 통해 2 개 이상의 링크 제어기들을 커플링하는 수단으로서, 상기 호스트와 클라이언트의 각각에서의 링크 제어기 각각은 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는, 상기 커플링하는 수단; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 데이터를 패킷 형태로 전달하는 수단을 구비하는, 디지털 데이터 전달 장치.
  42. 제 41 항에 있어서,
    상기 호스트로부터 패킷들의 전달을 서브-프레임 헤더 타입 패킷으로 시작하는 수단을 더 구비하는, 디지털 데이터 전달 장치.
  43. 제 41 항에 있어서,
    상기 통신 링크를 통해 양방향으로 상기 호스트와 상기 클라이언트 사이에 정보를 전달하는 수단을 더 구비하는, 디지털 데이터 전달 장치.
  44. 제 41 항에 있어서,
    어떤 타입의 데이터와 데이터 레이트를 상기 클라이언트가 상기 인터페이스를 통해 수용할 수 있는지를 결정하기 위해, 상기 호스트 링크 제어기에 의해 상기 클라이언트로부터의 디스플레이 용량 정보를 요청하는 수단을 더 구비하는, 디지털 데이터 전달 장치.
  45. 제 44 항에 있어서,
    하나 이상의 디스플레이 용량 타입 패킷을 사용하여 상기 클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 통신 디스플레이 또는 프리젠테이션 용량을 통신하는 수단을 더 구비하는, 디지털 데이터 전달 장치.
  46. 제 42 항에 있어서,
    각 방향으로의 복수의 전달 모드들 중 하나의 전달 모드 사용을 상기 호스트링크 드라이버와 상기 클라이언트 링크 드라이버 사이에서 협상하는 수단으로서, 각각의 전달 모드는 주어진 시간 주기에 걸쳐 병렬로 데이터의 상이한 최대 개수의 비트의 전달을 허용하는, 상기 수단; 및
    데이터의 전달 동안 상기 전달 모드들 사이에서 동적으로 조정하는 수단을 더 구비하는, 디지털 데이터 전달 장치.
  47. 제 41 항에 있어서,
    컬러 맵 패킷, 비트 블록 전달 패킷, 비트맵 영역 필 패킷, 비트맵 패턴 필 패킷 및 투명 컬러 인에이블 타입 패킷의 그룹으로부터 선택된 비디오 정보를 전달하도록 복수의 패킷들 중 하나 이상의 패킷을 사용하는 수단을 더 구비하는, 디지 털 데이터 전달 장치.
  48. 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 전자 시스템에서의 사용을 위한 프로세서로서,
    복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하고, 미리 규정된 통신 프로토콜을 형성하기 위해 그 하나 이상의 패킷 구조들을 링크시키고;
    디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하며;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하고;
    데이터를 상기 통신 경로를 통해 패킷들의 형태로 전달하도록 구성되는, 프로세서.
  49. 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 전자 시스템에서 동기화를 회득하는데 사용하기 위한 상태 머신으로서,
    하나 이상의 어싱크 프레임 상태 동기화 상태 (Async Frames State synchronization state), 2 이상의 획득 싱크 상태 동기화 상태 (Acquiring Sync State synchronization state) , 및 3 이상의 인-싱크 동기화 상태 (In-Sync State synchronization state) 를 갖도록 구성되는, 상태 머신.
  50. 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 전자 시스템에서 동기화를 회득하는데 사용하기 위한 상태 머신으로서,
    하나 이상의 획득 싱크 상태 동기화 상태, 및 2 이상의 인-싱크 동기화 상태를 갖도록 구성되는, 상태 머신.
  51. 제 50 항에 있어서,
    획득 싱크 상태와 제 1 인-싱크 상태 사이에서 시프팅하기 위한 하나의 조건은 상기 통신 링크에서 동기화 패턴의 존재를 검출하는 것인, 상태 머신.
  52. 제 51 항에 있어서,
    획득 싱크 상태와 제 1 인-싱크 상태 사이에서 시프팅하기 위한 또 다른 하나의 조건은 프레임 경계에서 서브-프레임 헤더 패킷과 양호한 CRC 값의 존재를 검출하는 것인, 상태 머신.
  53. 제 50 항에 있어서,
    제 1 인-싱크 상태와 획득 싱크 상태 사이에서 시프팅하기 위한 하나의 조건은 서브-프레임 경계에서 동기화 패턴의 부존재 또는 불량한 CRC 값의 존재를 검 출하는 것인, 상태 머신.
  54. 제 50 항에 있어서,
    제 1 인-싱크 상태와 제 2 인-싱크 상태 사이에서 시트팅하기 위한 하나의 조건은 서브-프레임 경계에서 동기화 패턴의 부존재 또는 불량한 CRC 값의 존재를 검출하는 것인, 상태 머신.
  55. 제 50 항에 있어서,
    획득 싱크 상태와 제 1 인-싱크 상태 사이에서 시프팅하기 위한 하나의 조건은 통신 링크에서 동기화 패턴의 존재와 양호한 패킷 CRC 값의 존재를 검출하는 것인, 상태 머신.
  56. 제 50 항에 있어서,
    제 1 인-싱크 상태와 획득 싱크 상태 사이에서 시프팅하기 위한 조건은 패킷에서 불량한 CRC 값의 존재를 검출하는, 상태 머신.
  57. 통신 경로를 통해 호스트 디바이스와 클라이언트 디바이스 사이에 고 레이트로 디지털 데이터를 전달하는 전자 시스템에서 동기화를 회득하는데 사용하기 위한 상태 머신으로서,
    하나 이상의 획득 싱크 상태 동기화 상태, 및 2 이상의 인-싱크 동기화 상태 를 갖도록 구성되고,
    제 1 인-싱크 상태와 획득 싱크 상태 사이에서 직접 시프팅하기 위한 조건은일련의 패킷들 중 임의의 패킷에서 불량한 CRC 값의 존재를 검출하는 것인, 상태 머신.
  58. 제 57 항에 있어서,
    제 1 인-싱크 상태와 획득 싱크 상태 사이에서 직접 시프팅하기 위한 조건은고유 워드가 도달 예상되는 시간에서 고유 워드가 언제 발생하지 않는지를 검출하는 것인, 상태 머신.
  59. 제 26 항에 있어서,
    상기 호스트에 의해, 10 클록 사이클 이상 동안 데이터 라인을 하이 상태 (high state) 로 구동하고 그 데이터 라인이 0 인 것처럼 스트로브 신호를 송신하는 것을 시작함으로써 통신 링크를 웨이크업 시키는 단계를 더 포함하는, 데이터 전달 방법.
  60. 제 59 항에 있어서,
    상기 호스트가 150 클록 사이클 동안 데이터 라인을 하이로 구동한 이후 스트로브 신호를 계속해서 전송하고 있는 동안, 상기 호스트에 의해 50 사이클 동안 데이터 라인을 로우로 구동하는 단계를 더 포함하는, 데이터 전달 방법.
  61. 제 59 항에 있어서,
    상기 호스트에 의해 제 1 서브-프레임 헤더 패킷을 송신하는 것을 시작하는 단계를 더 포함하는, 데이터 전달 방법.
  62. 제 60 항에 있어서,
    상기 클라이언트에 의해, 하이인 데이터 라인의 150 이상의 연속 클록 사이클과 후속하는 (followed) 로우인 데이터 라인의 50 이상의 연속 클록 사이클을 카운팅하는 단계를 더 포함하는, 데이터 전달 방법.
  63. 제 62 항에 있어서,
    상기 클라이언트에 의해 제 1 서브-프레임의 고유 워드를 탐색하는 단계를 더 포함하는, 데이터 전달 방법.
  64. 제 60 항에 있어서,
    상기 클라이언트가 하이인 데이터의 70 연속 클록 사이클을 카운팅한 이후 상기 클라이언트에 의해 데이터 라인을 하이로 구동하는 것을 정지하는 단계를 더 포함하는, 데이터 전달 방법.
  65. 제 64 항에 있어서,
    상기 클라이언트에 의해 하이인 데이터 라인의 150 클록 사이클에 도달하도록 하이인 데이터 라인의 다른 80 연속 클록 사이클을 카운팅하고, 로우인 데이터 라인의 50 클록 사이클을 탐색하여, 고유 워드를 탐색하는, 데이터 전달 방법.
  66. 제 26 항에 있어서,
    역방향 타이밍 패킷 동안 상승 및 하강 에지의 양 에지에서 데이터 라인을 샘플링함으로써, 상기 호스트에 의해 클록 사이클이 샘플링될 때까지 발생하는 클록 사이클의 개수를 카운팅하는 단계를 더 포함하는, 데이터 전달 방법.
  67. 통신 링크를 통해 호스트 디바이스와 클라이언트 디바이스 사이에서 CRC 값을 갖는 패킷들의 형태로 디지털 데이터가 전달되는 통신 시스템에서 오류 코드들을 전달하는 방법으로서,
    오류의 존재를 검출하는 단계;
    상기 오류에 대응하는 소정의 오류 코드를 선택하는 단계; 및
    상기 코드로상기 CRC 값을 오버-라이팅하는 단계를 포함하는, 오류 코드 전달 방법.
  68. 제 67 항에 있어서,
    상기 오류가 보정되기 까지 전달되는 패킷들 중 연속적 패킷들에서 상기 CRC 값을 오버라이팅하는 단계를 더 포함하는, 오류 코드 전달 방법.
  69. 사용자에게 프리젠테이션을 위해 통신 경로를 통해 호스트 드라이버와 클라이언트 드라이버 사이에서 고 레이트로 디지털 데이터를 전달하는 방법으로서,
    각각 하나 이상의 CRC 필드를 포함하는 복수의 미리 규정된 패킷 구조들 중 하나 이상의 패킷 구조들을 생성하고, 미리 규정된 통신 프로토콜을 형성하기 위해 그 하나 이상의 패킷 구조들을 함께 링크시키는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 링크를 통해 상기 호스트 디바이스와 클라이언트 디바이스 사이에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 디바이스에 상주하는 하나 이상의 호스트 링크 제어기를, 상기 통신 경로를 통해 상기 클라이언트 디바이스에 커플링하는 단계로서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 생성, 송신 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상 타입의 데이터 패킷들로 형성하도록 구성되는, 커플링하는 단계;
    상기 링크 제어기들을 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전달하는 단계;
    상기 통신 링킁에 대한 오류의 존재를 검출하는 단계를 검출하는 단계; 및
    상기 오류에 대응하는 소정의 오류 코드를 선택하고, 상기 코드로 상기 CRC 값을 오버-라이팅하는 단계를 포함하는, 디지털 데이터 전달 방법.
  70. 제 69 항에 있어서,
    상기 오류가 보정될 때까지 전달되는 패킷들 중 연속적인 패킷들에서 상기 CRC 값을 오버라이팅하는 단계를 더 포함하는, 디지털 데이터 전달 방법.
KR1020067009460A 2003-10-15 2004-10-15 높은 데이터 레이트 인터페이스 KR100882164B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US51174203P 2003-10-15 2003-10-15
US60/511,742 2003-10-15

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020087013185A Division KR20080052699A (ko) 2003-10-15 2004-10-15 높은 데이터 레이트 인터페이스

Publications (2)

Publication Number Publication Date
KR20060096108A true KR20060096108A (ko) 2006-09-06
KR100882164B1 KR100882164B1 (ko) 2009-02-06

Family

ID=34465270

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020087013185A KR20080052699A (ko) 2003-10-15 2004-10-15 높은 데이터 레이트 인터페이스
KR1020067009460A KR100882164B1 (ko) 2003-10-15 2004-10-15 높은 데이터 레이트 인터페이스

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020087013185A KR20080052699A (ko) 2003-10-15 2004-10-15 높은 데이터 레이트 인터페이스

Country Status (10)

Country Link
US (1) US8694652B2 (ko)
EP (3) EP1680904A1 (ko)
JP (5) JP2007509533A (ko)
KR (2) KR20080052699A (ko)
CN (3) CN1894931A (ko)
AU (1) AU2004306903C1 (ko)
CA (1) CA2542649A1 (ko)
IL (1) IL175003A0 (ko)
RU (1) RU2371872C2 (ko)
WO (1) WO2005039148A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100882164B1 (ko) * 2003-10-15 2009-02-06 퀄컴 인코포레이티드 높은 데이터 레이트 인터페이스

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
JP4531560B2 (ja) * 2002-06-21 2010-08-25 トムソン ライセンシング 移動無線相互接続環境における記憶されたビデオストリーミングのための減少するネットワークqos要件
MXPA04012868A (es) * 2002-06-21 2005-04-19 Thomson Licensing Sa Calidad siempre creciente para corriente de video almacenada en un ambiente de interfuncionamiento inalambrico movil.
KR101166734B1 (ko) 2003-06-02 2012-07-19 퀄컴 인코포레이티드 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현
JP2007507918A (ja) 2003-08-13 2007-03-29 クゥアルコム・インコーポレイテッド さらに高速なデータレート用の信号インタフェース
KR100973103B1 (ko) 2003-09-10 2010-08-02 콸콤 인코포레이티드 고속 데이터 인터페이스
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
KR100915250B1 (ko) 2003-11-12 2009-09-03 콸콤 인코포레이티드 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스
WO2005053272A1 (en) 2003-11-25 2005-06-09 Qualcomm Incorporated High data rate interface with improved link synchronization
EP2247070B1 (en) 2003-12-08 2013-09-25 QUALCOMM Incorporated High data rate interface with improved link synchronization
EP1700402A1 (en) * 2003-12-19 2006-09-13 Nokia Corporation Selection of radio resources in a wireless communication device
EP2375676B1 (en) 2004-03-10 2013-06-26 Qualcomm Incorporated High data rate interface apparatus and method
EP1735986B1 (en) 2004-03-17 2013-05-22 Qualcomm, Incorporated High data rate interface apparatus and method
BRPI0509147A (pt) 2004-03-24 2007-09-11 Qualcomm Inc equipamentos e método para interface de alta taxa de dados
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
KR100926658B1 (ko) 2004-06-04 2009-11-17 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8723705B2 (en) 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
WO2006068003A1 (ja) 2004-12-24 2006-06-29 Masahiro Izutsu 携帯情報通信装置、携帯情報通信装置用接続ユニット及び携帯情報通信装置用外部入出力ユニット
KR100685664B1 (ko) * 2005-08-12 2007-02-26 삼성전자주식회사 호스트 및 클라이언트로 구성된 데이터 통신 시스템 및데이터 통신 시스템의 작동 방법
US20070072652A1 (en) * 2005-09-26 2007-03-29 Sheng-Ming Shan Controlling power output of a transceiver
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US8908577B2 (en) * 2005-12-02 2014-12-09 Qualcomm Incorporated Solving IP buffering delays in mobile multimedia applications with translayer optimization
US7950042B2 (en) * 2005-12-16 2011-05-24 Newport Media, Inc. Fast switching between time division multiplexed (TDM) channels
JP5113768B2 (ja) 2006-03-07 2013-01-09 トムソン ライセンシング 先進的な表示のための通信装置およびベース
US8032672B2 (en) 2006-04-14 2011-10-04 Apple Inc. Increased speed of processing of audio samples received over a serial communications link by use of channel map and steering table
US7752647B2 (en) * 2006-07-18 2010-07-06 Via Technologies, Inc. Video data packing
US7930726B2 (en) * 2006-12-01 2011-04-19 Electronics And Telecommunications Research Institute IPTV service system and method for efficient multicast of MPEG-TS
US8462784B2 (en) * 2007-04-27 2013-06-11 Cisco Technology Inc. Security approach for transport equipment
WO2008143870A1 (en) * 2007-05-14 2008-11-27 Kopin Corporation Mobile wireless display for accessing data from a host and method for controlling
US8909296B2 (en) * 2007-05-14 2014-12-09 Kopin Corporation Mobile wireless display software platform for controlling other systems and devices
US8355671B2 (en) * 2008-01-04 2013-01-15 Kopin Corporation Method and apparatus for transporting video signal over Bluetooth wireless interface
WO2009112411A2 (de) * 2008-03-10 2009-09-17 Robert Bosch Gmbh Verfahren und filteranordnung zum filtern von über einen seriellen datenbus eines kommunikationsnetzwerks in einem teilnehmer des netzwerks eingehenden nachrichten
CN102016975A (zh) 2008-03-28 2011-04-13 寇平公司 适合用作移动式互联网装置的具有高分辨率显示器的手持式无线显示装置
US8548070B2 (en) * 2009-11-13 2013-10-01 Panasonic Corporation Driver circuit, receiver circuit, and method of controlling a communications system including the circuits
CN101951304B (zh) 2010-08-31 2012-04-18 华为技术有限公司 微波传输装置
RU2475817C1 (ru) * 2011-12-08 2013-02-20 Учреждение Российской академии наук Научно-исследовательский институт системных исследований РАН (НИИСИ РАН) Устройство буферизации потоков данных, считываемых из озу
JP5849757B2 (ja) 2012-02-17 2016-02-03 セイコーエプソン株式会社 レシーバー回路、通信システム及び電子機器
US8984186B2 (en) * 2012-08-29 2015-03-17 Google Inc. Augmenting capabilities of a host device
TWI505247B (zh) * 2013-09-10 2015-10-21 Himax Tech Ltd 顯示器串列介面的校準系統及方法
CN105471478B (zh) 2015-09-28 2019-01-04 小米科技有限责任公司 报文发送方法、报文接收方法及装置
JP6797579B2 (ja) * 2016-07-04 2020-12-09 キヤノン株式会社 電子機器、電子機器の制御方法及びプログラム
US10659337B2 (en) * 2018-08-28 2020-05-19 Inphi Corporation Retimer data communication modules
US11815976B2 (en) * 2019-05-22 2023-11-14 Qualcomm Incorporated Bandwidth based power management for peripheral component interconnect express devices
CN113824649B (zh) * 2021-09-17 2023-10-27 上海航天计算机技术研究所 面向固定帧长的数据流量控制装置
US11856311B1 (en) * 2022-08-25 2023-12-26 Aspinity, Inc. Motion detection based on analog video stream

Family Cites Families (490)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2052001A (en) 1936-02-17 1936-08-25 Leland H Platt Machine for washing and grading vegetables, fruits or the like
US7274652B1 (en) 2000-06-02 2007-09-25 Conexant, Inc. Dual packet configuration for wireless communications
US3594304A (en) 1970-04-13 1971-07-20 Sun Oil Co Thermal liquefaction of coal
US4042783A (en) 1976-08-11 1977-08-16 International Business Machines Corporation Method and apparatus for byte and frame synchronization on a loop system coupling a CPU channel to bulk storage devices
JPS6013538B2 (ja) 1977-04-22 1985-04-08 日本電気株式会社 可変演算方式
US4393444A (en) 1980-11-06 1983-07-12 Rca Corporation Memory addressing circuit for converting sequential input data to interleaved output data sequence using multiple memories
US4363123A (en) 1980-12-01 1982-12-07 Northern Telecom Limited Method of and apparatus for monitoring digital transmission systems in which line transmission errors are detected
JPS57136833A (en) * 1981-02-17 1982-08-24 Sony Corp Time-division multiplex data transmitting method
JPH0653973B2 (ja) 1984-09-28 1994-07-20 東レ株式会社 異形断面中空糸製造用紡糸口金
US4660096A (en) 1984-12-11 1987-04-21 Rca Corporation Dividing high-resolution-camera video signal response into sub-image blocks individually raster scanned
DE3531809A1 (de) * 1985-09-06 1987-03-26 Kraftwerk Union Ag Katalysatormaterial zur reduktion von stickoxiden
US4720831A (en) 1985-12-02 1988-01-19 Advanced Micro Devices, Inc. CRC calculation machine with concurrent preset and CRC calculation function
US4769761A (en) 1986-10-09 1988-09-06 International Business Machines Corporation Apparatus and method for isolating and predicting errors in a local area network
JPS63226762A (ja) 1987-03-16 1988-09-21 Hitachi Ltd デ−タ処理方式
US4764805A (en) 1987-06-02 1988-08-16 Eastman Kodak Company Image transmission system with line averaging preview mode using two-pass block-edge interpolation
JPS648731U (ko) 1987-07-02 1989-01-18
US4821296A (en) * 1987-08-26 1989-04-11 Bell Communications Research, Inc. Digital phase aligner with outrigger sampling
US5227783A (en) 1987-10-13 1993-07-13 The Regents Of New Mexico State University Telemetry apparatus and method with digital to analog converter internally integrated within C.P.U.
JPH0727571B2 (ja) 1987-10-26 1995-03-29 テクトロニックス・インコーポレイテッド ラスタ走査表示装置及び図形データ転送方法
US5155590A (en) 1990-03-20 1992-10-13 Scientific-Atlanta, Inc. System for data channel level control
US4891805A (en) * 1988-06-13 1990-01-02 Racal Data Communications Inc. Multiplexer with dynamic bandwidth allocation
US5167035A (en) 1988-09-08 1992-11-24 Digital Equipment Corporation Transferring messages between nodes in a network
US5136717A (en) 1988-11-23 1992-08-04 Flavors Technology Inc. Realtime systolic, multiple-instruction, single-data parallel computer system
US5079693A (en) * 1989-02-28 1992-01-07 Integrated Device Technology, Inc. Bidirectional FIFO buffer having reread and rewrite means
US6014705A (en) * 1991-10-01 2000-01-11 Intermec Ip Corp. Modular portable data processing terminal having a higher layer and lower layer partitioned communication protocol stack for use in a radio frequency communications network
US5224213A (en) 1989-09-05 1993-06-29 International Business Machines Corporation Ping-pong data buffer for transferring data from one data bus to another data bus
US5495482A (en) 1989-09-29 1996-02-27 Motorola Inc. Packet transmission system and method utilizing both a data bus and dedicated control lines
US5543939A (en) 1989-12-28 1996-08-06 Massachusetts Institute Of Technology Video telephone systems
US5138616A (en) 1990-03-19 1992-08-11 The United States Of America As Represented By The Secretary Of The Army Continuous on-line link error rate detector utilizing the frame bit error rate
US5111455A (en) 1990-08-24 1992-05-05 Avantek, Inc. Interleaved time-division multiplexor with phase-compensated frequency doublers
US5131012A (en) 1990-09-18 1992-07-14 At&T Bell Laboratories Synchronization for cylic redundancy check based, broadband communications network
GB2249460B (en) 1990-09-19 1994-06-29 Intel Corp Network providing common access to dissimilar hardware interfaces
GB2250668B (en) 1990-11-21 1994-07-20 Apple Computer Tear-free updates of computer graphical output displays
IL100213A (en) 1990-12-07 1995-03-30 Qualcomm Inc Mikrata Kedma phone system and its antenna distribution system
US5359595A (en) 1991-01-09 1994-10-25 Rockwell International Corporation Skywave adaptable network transceiver apparatus and method using a stable probe and traffic protocol
WO1993007691A1 (en) * 1991-10-01 1993-04-15 Norand Corporation A radio frequency local area network
US5345542A (en) 1991-06-27 1994-09-06 At&T Bell Laboratories Proportional replication mapping system
US5231636A (en) 1991-09-13 1993-07-27 National Semiconductor Corporation Asynchronous glitchless digital MUX
US5396636A (en) * 1991-10-21 1995-03-07 International Business Machines Corporation Remote power control via data link
US5751445A (en) 1991-11-11 1998-05-12 Canon Kk Image transmission system and terminal device
CA2064541C (en) 1992-03-31 1998-09-15 Thomas A. Gray Cycling error count for link maintenance
US5331642A (en) 1992-09-01 1994-07-19 International Business Machines Corporation Management of FDDI physical link errors
JP3305769B2 (ja) 1992-09-18 2002-07-24 株式会社東芝 通信装置
JPH06124147A (ja) 1992-10-13 1994-05-06 Sanyo Electric Co Ltd 情報処理装置
GB9222282D0 (en) * 1992-10-22 1992-12-09 Hewlett Packard Co Monitoring network status
US5745523A (en) 1992-10-27 1998-04-28 Ericsson Inc. Multi-mode signal processing
US5513185A (en) * 1992-11-23 1996-04-30 At&T Corp. Method and apparatus for transmission link error rate monitoring
US5867501A (en) * 1992-12-17 1999-02-02 Tandem Computers Incorporated Encoding for communicating data and commands
US5619650A (en) * 1992-12-31 1997-04-08 International Business Machines Corporation Network processor for transforming a message transported from an I/O channel to a network by adding a message identifier and then converting the message
GB9304638D0 (en) * 1993-03-06 1993-04-21 Ncr Int Inc Wireless data communication system having power saving function
JPH06332664A (ja) 1993-03-23 1994-12-02 Toshiba Corp 表示制御システム
US5418452A (en) 1993-03-25 1995-05-23 Fujitsu Limited Apparatus for testing integrated circuits using time division multiplexing
EP0695323A4 (en) 1993-04-16 1996-04-10 Akzo Nobel Nv METAL STABILIZER COMPRISING METAL SOAP AND DISSOLVED METAL PERCHLORATE
JP3197679B2 (ja) 1993-04-30 2001-08-13 富士写真フイルム株式会社 写真撮影システムおよび方法
US5420858A (en) 1993-05-05 1995-05-30 Synoptics Communications, Inc. Method and apparatus for communications from a non-ATM communication medium to an ATM communication medium
US5519830A (en) 1993-06-10 1996-05-21 Adc Telecommunications, Inc. Point-to-multipoint performance monitoring and failure isolation system
JP2768621B2 (ja) 1993-06-25 1998-06-25 沖電気工業株式会社 分散送信される畳み込み符号の復号装置
US5477534A (en) 1993-07-30 1995-12-19 Kyocera Corporation Acoustic echo canceller
US5430486A (en) 1993-08-17 1995-07-04 Rgb Technology High resolution video image transmission and storage
US5426694A (en) 1993-10-08 1995-06-20 Excel, Inc. Telecommunication switch having programmable network protocols and communications services
US5490247A (en) 1993-11-24 1996-02-06 Intel Corporation Video subsystem for computer-based conferencing system
US5510832A (en) * 1993-12-01 1996-04-23 Medi-Vision Technologies, Inc. Synthesized stereoscopic imaging system and method
US5583562A (en) * 1993-12-03 1996-12-10 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including imaging services
US5565957A (en) 1993-12-27 1996-10-15 Nikon Corporation Camera
US5724536A (en) * 1994-01-04 1998-03-03 Intel Corporation Method and apparatus for blocking execution of and storing load operations during their execution
US5844606A (en) 1994-03-03 1998-12-01 Fuji Photo Film Co., Ltd. Videocamera having a multiconnector connectable to a variety of accessories
JP2790034B2 (ja) 1994-03-28 1998-08-27 日本電気株式会社 非運用系メモリ更新方式
US5483185A (en) * 1994-06-09 1996-01-09 Intel Corporation Method and apparatus for dynamically switching between asynchronous signals without generating glitches
JP3329076B2 (ja) 1994-06-27 2002-09-30 ソニー株式会社 ディジタル信号伝送方法、ディジタル信号伝送装置、ディジタル信号受信方法及びディジタル信号受信装置
US5560022A (en) 1994-07-19 1996-09-24 Intel Corporation Power management coordinator system and interface
US5748891A (en) 1994-07-22 1998-05-05 Aether Wire & Location Spread spectrum localizers
KR100370665B1 (ko) 1994-07-25 2004-07-19 지멘스 악티엔게젤샤프트 비디오폰통신의접속및제어방법
US5733131A (en) * 1994-07-29 1998-03-31 Seiko Communications Holding N.V. Education and entertainment device with dynamic configuration and operation
US5664948A (en) 1994-07-29 1997-09-09 Seiko Communications Holding N.V. Delivery of data including preloaded advertising data
JP3592376B2 (ja) 1994-08-10 2004-11-24 株式会社アドバンテスト 時間間隔測定装置
KR100188990B1 (ko) 1994-09-27 1999-06-01 이리마지리 쇼우이치로 데이타 중계 장치 및 이것을 이용한 비디오 게임 장치
GB2296123B (en) * 1994-12-13 1998-08-12 Ibm Midi playback system
US5495469A (en) 1994-12-16 1996-02-27 Chrysler Corporation Communications network, state machine therefor
US5559459A (en) 1994-12-29 1996-09-24 Stratus Computer, Inc. Clock signal generation arrangement including digital noise reduction circuit for reducing noise in a digital clocking signal
FR2729528A1 (fr) 1995-01-13 1996-07-19 Suisse Electronique Microtech Circuit de multiplexage
GB2298109B (en) 1995-02-14 1999-09-01 Nokia Mobile Phones Ltd Data interface
US5530704A (en) 1995-02-16 1996-06-25 Motorola, Inc. Method and apparatus for synchronizing radio ports in a commnuication system
US5646947A (en) 1995-03-27 1997-07-08 Westinghouse Electric Corporation Mobile telephone single channel per carrier superframe lock subsystem
JPH08274799A (ja) 1995-03-29 1996-10-18 Takaoka Electric Mfg Co Ltd 通信制御装置
KR100411372B1 (ko) 1995-04-11 2004-05-06 마츠시타 덴끼 산교 가부시키가이샤 비디오정보조정장치,비디오정보송신장치및비디오정보수신장치
US5521907A (en) 1995-04-25 1996-05-28 Visual Networks, Inc. Method and apparatus for non-intrusive measurement of round trip delay in communications networks
SE506540C2 (sv) 1995-06-13 1998-01-12 Ericsson Telefon Ab L M Synkronisering av överföring av data via en dubbelriktad länk
US5963564A (en) 1995-06-13 1999-10-05 Telefonaktiebolaget Lm Ericsson Synchronizing the transmission of data via a two-way link
JPH096725A (ja) 1995-06-14 1997-01-10 Kofu Nippon Denki Kk 非同期データ転送受信装置
JPH0923243A (ja) 1995-07-10 1997-01-21 Hitachi Ltd 電子紙面情報配信システム
WO1997003508A1 (fr) * 1995-07-13 1997-01-30 Sony Corporation Procede, appareil et systeme de transmission de donnees
JPH0936871A (ja) 1995-07-17 1997-02-07 Sony Corp データ伝送システムおよびデータ伝送方法
US5604450A (en) * 1995-07-27 1997-02-18 Intel Corporation High speed bidirectional signaling scheme
JPH0955667A (ja) * 1995-08-10 1997-02-25 Mitsubishi Electric Corp マルチプレクサ,及びデマルチプレクサ
US5742840A (en) 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
KR100272472B1 (ko) * 1995-09-19 2000-11-15 씨. 필립 채프맨 디지탈 프로그램가능 임계 레벨을 가진 마이크로컨트롤러 재작동 기능
US5748642A (en) 1995-09-25 1998-05-05 Credence Systems Corporation Parallel processing integrated circuit tester
US5550489A (en) 1995-09-29 1996-08-27 Quantum Corporation Secondary clock source for low power, fast response clocking
US5732352A (en) * 1995-09-29 1998-03-24 Motorola, Inc. Method and apparatus for performing handoff in a wireless communication system
US5818255A (en) 1995-09-29 1998-10-06 Xilinx, Inc. Method and circuit for using a function generator of a programmable logic device to implement carry logic functions
US5751951A (en) 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
TW316965B (ko) 1995-10-31 1997-10-01 Cirrus Logic Inc
US5958006A (en) 1995-11-13 1999-09-28 Motorola, Inc. Method and apparatus for communicating summarized data
US7003796B1 (en) * 1995-11-22 2006-02-21 Samsung Information Systems America Method and apparatus for recovering data stream clock
US5844918A (en) 1995-11-28 1998-12-01 Sanyo Electric Co., Ltd. Digital transmission/receiving method, digital communications method, and data receiving apparatus
US5790551A (en) 1995-11-28 1998-08-04 At&T Wireless Services Inc. Packet data transmission using dynamic channel assignment
US6865610B2 (en) * 1995-12-08 2005-03-08 Microsoft Corporation Wire protocol for a media server system
EP0781068A1 (en) 1995-12-20 1997-06-25 International Business Machines Corporation Method and system for adaptive bandwidth allocation in a high speed data network
JP3427149B2 (ja) 1996-01-26 2003-07-14 三菱電機株式会社 符号化信号の復号回路及びその同期制御方法, 同期検出回路及び同期検出方法
US5903281A (en) 1996-03-07 1999-05-11 Powertv, Inc. List controlled video operations
JPH09261232A (ja) 1996-03-19 1997-10-03 Fujitsu Ltd Atm交換機における複数応答通信制御方法
JPH09270951A (ja) 1996-03-29 1997-10-14 Sony Corp 撮像装置
US6243596B1 (en) 1996-04-10 2001-06-05 Lextron Systems, Inc. Method and apparatus for modifying and integrating a cellular phone with the capability to access and browse the internet
US5815507A (en) 1996-04-15 1998-09-29 Motorola, Inc. Error detector circuit for digital receiver using variable threshold based on signal quality
US6130602A (en) 1996-05-13 2000-10-10 Micron Technology, Inc. Radio frequency data communications device
JPH09307457A (ja) 1996-05-14 1997-11-28 Sony Corp パラレルシリアル変換回路
US5982362A (en) 1996-05-30 1999-11-09 Control Technology Corporation Video interface architecture for programmable industrial control systems
US5983261A (en) 1996-07-01 1999-11-09 Apple Computer, Inc. Method and apparatus for allocating bandwidth in teleconferencing applications using bandwidth control
GB9614561D0 (en) 1996-07-11 1996-09-04 4Links Ltd Communication system with improved code
US6298387B1 (en) 1996-07-12 2001-10-02 Philips Electronics North America Corp System for detecting a data packet in a bitstream by storing data from the bitstream in a buffer and comparing data at different locations in the buffer to predetermined data
KR100221028B1 (ko) 1996-07-23 1999-09-15 윤종용 그래픽 가속기 및 이를 이용한 메모리 프리패치 방법
US6185601B1 (en) * 1996-08-02 2001-02-06 Hewlett-Packard Company Dynamic load balancing of a network of client and server computers
US6886035B2 (en) 1996-08-02 2005-04-26 Hewlett-Packard Development Company, L.P. Dynamic load balancing of a network of client and server computer
US5969750A (en) 1996-09-04 1999-10-19 Winbcnd Electronics Corporation Moving picture camera with universal serial bus interface
CA2214743C (en) 1996-09-20 2002-03-05 Ntt Mobile Communications Network Inc. A frame synchronization circuit and communications system
US5990852A (en) 1996-10-31 1999-11-23 Fujitsu Limited Display screen duplication system and method
US5864546A (en) * 1996-11-05 1999-01-26 Worldspace International Network, Inc. System for formatting broadcast data for satellite transmission and radio reception
US6308239B1 (en) 1996-11-07 2001-10-23 Hitachi, Ltd. Interface switching apparatus and switching control method
US6078361A (en) 1996-11-18 2000-06-20 Sage, Inc Video adapter circuit for conversion of an analog video signal to a digital display image
US6002709A (en) 1996-11-21 1999-12-14 Dsp Group, Inc. Verification of PN synchronization in a direct-sequence spread-spectrum digital communications system
KR100211918B1 (ko) 1996-11-30 1999-08-02 김영환 비동기식전송모드셀 경계 식별장치
US5862160A (en) * 1996-12-31 1999-01-19 Ericsson, Inc. Secondary channel for communication networks
JP3390618B2 (ja) 1997-01-13 2003-03-24 三菱電機株式会社 基地局決定装置
US5995512A (en) 1997-01-17 1999-11-30 Delco Electronics Corporation High speed multimedia data network
US6064649A (en) 1997-01-31 2000-05-16 Nec Usa, Inc. Network interface card for wireless asynchronous transfer mode networks
US6081513A (en) 1997-02-10 2000-06-27 At&T Corp. Providing multimedia conferencing services over a wide area network interconnecting nonguaranteed quality of services LANs
EP0859326A3 (en) 1997-02-14 1999-05-12 Canon Kabushiki Kaisha Data transmission apparatus, system and method, and image processing apparatus
JPH10234038A (ja) 1997-02-21 1998-09-02 Hitachi Ltd データ処理装置、データ形式変換装置、データ通信方法及びデータ処理システム
US6359923B1 (en) 1997-12-18 2002-03-19 At&T Wireless Services, Inc. Highly bandwidth efficient communications
US6584144B2 (en) 1997-02-24 2003-06-24 At&T Wireless Services, Inc. Vertical adaptive antenna array for a discrete multitone spread spectrum communications system
DE19733005B4 (de) 1997-03-12 2007-06-21 Storz Endoskop Gmbh Einrichtung zur zentralen Überwachung und/oder Steuerung wenigstens eines Gerätes
US6480521B1 (en) 1997-03-26 2002-11-12 Qualcomm Incorporated Method and apparatus for transmitting high speed data in a spread spectrum communications system
US7143177B1 (en) 1997-03-31 2006-11-28 West Corporation Providing a presentation on a network having a plurality of synchronized media types
US5963557A (en) 1997-04-11 1999-10-05 Eng; John W. High capacity reservation multiple access network with multiple shared unidirectional paths
JPH10312370A (ja) 1997-05-12 1998-11-24 Hitachi Ltd 省電力機能を有するネットワークシステム
US6405111B2 (en) 1997-05-16 2002-06-11 Snap-On Technologies, Inc. System and method for distributed computer automotive service equipment
US5867510A (en) * 1997-05-30 1999-02-02 Motorola, Inc. Method of and apparatus for decoding and processing messages
JP3143079B2 (ja) 1997-05-30 2001-03-07 松下電器産業株式会社 辞書索引作成装置と文書検索装置
KR100550190B1 (ko) * 1997-06-03 2006-04-21 소니 가부시끼 가이샤 휴대용정보처리장치의제어방법,및휴대용정보처리장치
JPH1117710A (ja) 1997-06-20 1999-01-22 Sony Corp シリアルインタフェース回路
US6236647B1 (en) 1998-02-24 2001-05-22 Tantivy Communications, Inc. Dynamic frame size adjustment and selective reject on a multi-link channel to improve effective throughput and bit error rate
JP3184121B2 (ja) 1997-07-10 2001-07-09 日本電気通信システム株式会社 コマンドファイル共有方式
US6314479B1 (en) 1997-08-04 2001-11-06 Compaq Computer Corporation Universal multi-pin plug and display connector for standardizing signals transmitted between a computer and a display for a PC theatre interconnectivity system
US6233550B1 (en) 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
US6288739B1 (en) 1997-09-05 2001-09-11 Intelect Systems Corporation Distributed video communications system
US6574661B1 (en) 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
ATE429080T1 (de) 1997-10-14 2009-05-15 Cypress Semiconductor Corp Digitaler funksendeempfänger
JPH11122234A (ja) 1997-10-16 1999-04-30 Nec Ic Microcomput Syst Ltd 受信データ処理回路
US6894994B1 (en) 1997-11-03 2005-05-17 Qualcomm Incorporated High data rate wireless packet data communications system
US6574211B2 (en) 1997-11-03 2003-06-03 Qualcomm Incorporated Method and apparatus for high rate packet data transmission
TW408315B (en) 1997-11-07 2000-10-11 Sharp Kk Magnetic recording device, magnetic recording and reproducing device, and magnetic recording method
US6246876B1 (en) 1997-11-13 2001-06-12 Telefonaktiebolaget L M Ericsson (Publ) Synchronization messages for hand-off operations
US6091709A (en) 1997-11-25 2000-07-18 International Business Machines Corporation Quality of service management for packet switched networks
JPH11163690A (ja) 1997-11-26 1999-06-18 Toshiba Corp 周波数逓倍回路
US20010012293A1 (en) 1997-12-02 2001-08-09 Lars-Goran Petersen Simultaneous transmission of voice and non-voice data on a single narrowband connection
US6049837A (en) * 1997-12-08 2000-04-11 International Business Machines Corporation Programmable output interface for lower level open system interconnection architecture
US6393008B1 (en) 1997-12-23 2002-05-21 Nokia Movile Phones Ltd. Control structures for contention-based packet data services in wideband CDMA
KR100251963B1 (ko) * 1997-12-31 2000-04-15 윤종용 종합정보통신망과 연동 가능한 비동기전송모드 망 접속영상전화 단말장치
TW459184B (en) 1998-01-23 2001-10-11 Shiu Ming Wei Multimedia message processing system
JPH11225372A (ja) 1998-02-05 1999-08-17 Sanyo Electric Co Ltd 時刻調整方法及びその装置
JPH11225182A (ja) 1998-02-06 1999-08-17 Kokusai Electric Co Ltd 情報表示システム及びその制御方法
DE69842156D1 (de) 1998-02-20 2011-04-14 Puredepth Ltd Mehrschichtige anzeigevorrichtung und verfahren zuevorrichtung
JP3004618B2 (ja) 1998-02-27 2000-01-31 キヤノン株式会社 画像入力装置及び画像入力システム及び画像送受信システム及び画像入力方法及び記憶媒体
JPH11249987A (ja) 1998-03-05 1999-09-17 Nec Corp メッセージ処理装置およびその方法ならびにメッセージ処理制御プログラムを格納した記憶媒体
JP3960752B2 (ja) 1998-03-16 2007-08-15 ジャズィオ・インコーポレーテッド Vlsi(超大規模集積)cmos(相補形金属酸化膜半導体)回路をインタフェースする高速信号
EP0944275B1 (en) 1998-03-19 2005-09-14 Hitachi, Ltd. Broadcast information delivering system
US6243761B1 (en) 1998-03-26 2001-06-05 Digital Equipment Corporation Method for dynamically adjusting multimedia content of a web page by a server in accordance to network path characteristics between client and server
JP3604898B2 (ja) 1998-03-31 2004-12-22 キヤノン株式会社 ネットワークデバイスの管理装置及びその方法、記録媒体
US6199169B1 (en) * 1998-03-31 2001-03-06 Compaq Computer Corporation System and method for synchronizing time across a computer cluster
CN1327630C (zh) 1998-04-01 2007-07-18 松下图像通信系统公司 带有隐式信道探头的多种xDSL调制解调器的启动
US6252888B1 (en) 1998-04-14 2001-06-26 Nortel Networks Corporation Method and apparatus providing network communications between devices using frames with multiple formats
US6101601A (en) 1998-04-20 2000-08-08 International Business Machines Corporation Method and apparatus for hibernation within a distributed data processing system
US6430196B1 (en) 1998-05-01 2002-08-06 Cisco Technology, Inc. Transmitting delay sensitive information over IP over frame relay
KR100413417B1 (ko) 1998-05-04 2004-02-14 엘지전자 주식회사 이동통신시스템에서 단말기의 호 접속 제어 방법.
US6611503B1 (en) 1998-05-22 2003-08-26 Tandberg Telecom As Method and apparatus for multimedia conferencing with dynamic bandwidth allocation
JP3792894B2 (ja) 1998-05-27 2006-07-05 キヤノン株式会社 固体撮像素子及び固体撮像装置
US6043693A (en) 1998-06-01 2000-03-28 3Dfx Interactive, Incorporated Multiplexed synchronization circuits for switching frequency synthesized signals
US6850282B1 (en) * 1998-06-02 2005-02-01 Canon Kabushiki Kaisha Remote control of image sensing apparatus
JP3475081B2 (ja) 1998-06-03 2003-12-08 三洋電機株式会社 立体映像再生方法
JP3937269B2 (ja) 1998-06-04 2007-06-27 ソニー株式会社 情報処理装置および方法、並びに提供媒体
US6092231A (en) 1998-06-12 2000-07-18 Qlogic Corporation Circuit and method for rapid checking of error correction codes using cyclic redundancy check
JP4267092B2 (ja) 1998-07-07 2009-05-27 富士通株式会社 時刻同期方法
US6510503B2 (en) 1998-07-27 2003-01-21 Mosaid Technologies Incorporated High bandwidth memory interface
US6359479B1 (en) * 1998-08-04 2002-03-19 Juniper Networks, Inc. Synchronizing data transfers between two distinct clock domains
US6532506B1 (en) * 1998-08-12 2003-03-11 Intel Corporation Communicating with devices over a bus and negotiating the transfer rate over the same
US6728263B2 (en) 1998-08-18 2004-04-27 Microsoft Corporation Dynamic sizing of data packets
EP1112642A2 (en) 1998-09-11 2001-07-04 Sharewave, Inc. Method and apparatus for controlling communication within a computer network
JP2000188626A (ja) 1998-10-13 2000-07-04 Texas Instr Inc <Ti> 一体のマイクロコントロ―ラ・エミュレ―タを有するリンク/トランザクション層コントロ―ラ
US7180951B2 (en) * 1998-10-30 2007-02-20 Broadcom Corporation Reduction of aggregate EMI emissions of multiple transmitters
WO2000027079A1 (en) 1998-10-30 2000-05-11 Broadcom Corporation Internet gigabit ethernet transmitter architecture
US6421735B1 (en) 1998-10-30 2002-07-16 Advanced Micro Devices, Inc. Apparatus and method for automatically selecting a network port for a home network station
TW466410B (en) 2000-06-16 2001-12-01 Via Tech Inc Cache device inside peripheral component interface chipset and data synchronous method to externals
US6836829B2 (en) 1998-11-20 2004-12-28 Via Technologies, Inc. Peripheral device interface chip cache and data synchronization method
US6545979B1 (en) 1998-11-27 2003-04-08 Alcatel Canada Inc. Round trip delay measurement
US6363439B1 (en) * 1998-12-07 2002-03-26 Compaq Computer Corporation System and method for point-to-point serial communication between a system interface device and a bus interface device in a computer system
KR100315670B1 (ko) 1998-12-07 2001-11-29 윤종용 부호분할다중접속 통신시스템의 단속 송신장치 및 방법
US6791379B1 (en) 1998-12-07 2004-09-14 Broadcom Corporation Low jitter high phase resolution PLL-based timing recovery system
US6252526B1 (en) 1998-12-14 2001-06-26 Seiko Epson Corporation Circuit and method for fast parallel data strobe encoding
US6297684B1 (en) 1998-12-14 2001-10-02 Seiko Epson Corporation Circuit and method for switching between digital signals that have different signal rates
JP3557975B2 (ja) 1998-12-14 2004-08-25 セイコーエプソン株式会社 信号切り替え回路及び信号切り替え方法
JP2000196986A (ja) 1998-12-25 2000-07-14 Olympus Optical Co Ltd 電子的撮像装置
US6950428B1 (en) 1998-12-30 2005-09-27 Hewlett-Packard Development Company, L.P. System and method for configuring adaptive sets of links between routers in a system area network (SAN)
US6549538B1 (en) 1998-12-31 2003-04-15 Compaq Information Technologies Group, L.P. Computer method and apparatus for managing network ports cluster-wide using a lookaside list
US6836469B1 (en) 1999-01-15 2004-12-28 Industrial Technology Research Institute Medium access control protocol for a multi-channel communication system
JP2000216843A (ja) 1999-01-22 2000-08-04 Oki Electric Ind Co Ltd デジタル復調器
US6636508B1 (en) 1999-02-12 2003-10-21 Nortel Networks Limted Network resource conservation system
US6493824B1 (en) 1999-02-19 2002-12-10 Compaq Information Technologies Group, L.P. Secure system for remotely waking a computer in a power-down state
WO2000054177A2 (en) 1999-03-05 2000-09-14 Accenture Llp Method and apparatus for creating an information summary
US6199099B1 (en) 1999-03-05 2001-03-06 Ac Properties B.V. System, method and article of manufacture for a mobile communication network utilizing a distributed communication network
JP4181685B2 (ja) 1999-03-12 2008-11-19 富士通株式会社 電力制御方法及び電子機器並びに記録媒体
US6429867B1 (en) 1999-03-15 2002-08-06 Sun Microsystems, Inc. System and method for generating and playback of three-dimensional movies
US6609167B1 (en) 1999-03-17 2003-08-19 Adaptec, Inc. Host and device serial communication protocols and communication packet formats
US6636922B1 (en) 1999-03-17 2003-10-21 Adaptec, Inc. Methods and apparatus for implementing a host side advanced serial protocol
FI107424B (fi) 1999-03-22 2001-07-31 Nokia Mobile Phones Ltd Menetelmä ja järjestelmä multimediaan liittyvän informaation välittämiseen valmistautumiseksi pakettikytkentäisessä solukkoradioverkossa
JP2000278141A (ja) 1999-03-26 2000-10-06 Mitsubishi Electric Corp マルチプレクサ
KR100350607B1 (ko) 1999-03-31 2002-08-28 삼성전자 주식회사 음성 및 화상 송수신을 위한 휴대용 복합 통신단말기 및 그 동작방법과 통신시스템
US6222677B1 (en) 1999-04-12 2001-04-24 International Business Machines Corporation Compact optical system for use in virtual display applications
JP2000358033A (ja) 1999-06-14 2000-12-26 Canon Inc データ通信システム及びデータ通信方法
US6618360B1 (en) 1999-06-15 2003-09-09 Hewlett-Packard Development Company, L.P. Method for testing data path of peripheral server devices
US6457090B1 (en) 1999-06-30 2002-09-24 Adaptec, Inc. Structure and method for automatic configuration for SCSI Synchronous data transfers
JP2001025010A (ja) 1999-07-09 2001-01-26 Mitsubishi Electric Corp マルチメディア情報通信装置およびその方法
JP2001044960A (ja) 1999-07-28 2001-02-16 Toyo Commun Equip Co Ltd 時分割方向制御インタフェースにおけるエラー試験装置
US6865609B1 (en) * 1999-08-17 2005-03-08 Sharewave, Inc. Multimedia extensions for wireless local area network
US6597197B1 (en) 1999-08-27 2003-07-22 Intel Corporation I2C repeater with voltage translation
KR20010019734A (ko) 1999-08-30 2001-03-15 윤종용 유무선 통신을 이용한 컴퓨터 교육용 시스템
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
JP3116090B1 (ja) 1999-09-17 2000-12-11 郵政省通信総合研究所長 通信システム、送信装置、受信装置、送信方法、受信方法、および、情報記録媒体
JP4207329B2 (ja) * 1999-09-20 2009-01-14 富士通株式会社 フレーム同期回路
US6678751B1 (en) 1999-10-15 2004-01-13 Micro Motion, Inc. System for setting frame and protocol for transmission in a UART device
US6643787B1 (en) 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
US6662322B1 (en) 1999-10-29 2003-12-09 International Business Machines Corporation Systems, methods, and computer program products for controlling the error rate in a communication device by adjusting the distance between signal constellation points
EP1228578A1 (de) 1999-11-11 2002-08-07 Ascom Powerline Communications AG Kommunikationssystem insbesondere für den indoor-bereich
US6438363B1 (en) 1999-11-15 2002-08-20 Lucent Technologies Inc. Wireless modem alignment in a multi-cell environment
AU1580301A (en) 1999-11-16 2001-05-30 Broadcom Corporation Network switch with high-speed serializing/deserializing hazard-free double datarate switching
JP4672224B2 (ja) 1999-11-22 2011-04-20 シーゲイト テクノロジー エルエルシー ピアーツーピアー相互接続診断
WO2001038970A2 (en) 1999-11-22 2001-05-31 Ericsson Inc Buffer memories, methods and systems for buffering having seperate buffer memories for each of a plurality of tasks
TW513636B (en) 2000-06-30 2002-12-11 Via Tech Inc Bus data interface for transmitting data on PCI bus, the structure and the operating method thereof
US6804257B1 (en) 1999-11-25 2004-10-12 International Business Machines Corporation System and method for framing and protecting variable-lenght packet streams
JP4058888B2 (ja) * 1999-11-29 2008-03-12 セイコーエプソン株式会社 Ram内蔵ドライバ並びにそれを用いた表示ユニットおよび電子機器
JP4191869B2 (ja) 1999-12-20 2008-12-03 富士フイルム株式会社 ディジタルカメラを用いたコンピュータシステム
US7373650B1 (en) 2000-02-01 2008-05-13 Scientific-Atlanta, Inc. Apparatuses and methods to enable the simultaneous viewing of multiple television channels and electronic program guide content
US7383350B1 (en) 2000-02-03 2008-06-03 International Business Machines Corporation User input based allocation of bandwidth on a data link
US6778493B1 (en) 2000-02-07 2004-08-17 Sharp Laboratories Of America, Inc. Real-time media content synchronization and transmission in packet network apparatus and method
JP3490368B2 (ja) 2000-02-07 2004-01-26 インターナショナル・ビジネス・マシーンズ・コーポレーション 信号出力装置、ドライバ回路、信号伝送システム、および信号伝送方法
JP2001236304A (ja) 2000-02-21 2001-08-31 Mitsubishi Electric Corp マイクロコンピュータ
JP4449141B2 (ja) 2000-02-22 2010-04-14 ソニー株式会社 電源制御装置、電源制御システム
EP2273812B1 (en) 2000-03-03 2012-07-18 Qualcomm Incorporated Method and apparatus for synchronizing encryption and decryption of a data frame in a communication network
US6477150B1 (en) 2000-03-03 2002-11-05 Qualcomm, Inc. System and method for providing group communication services in an existing communication system
JP2001282714A (ja) 2000-03-30 2001-10-12 Olympus Optical Co Ltd マルチカメラデータ転送方式及びデータ転送方式
JP2001292146A (ja) 2000-04-07 2001-10-19 Sony Corp 電子機器およびディジタルシリアルデータのインタフェース装置のバス初期化フェーズにおける処理方法
US6448721B2 (en) * 2000-04-14 2002-09-10 General Plasma Technologies Llc Cylindrical geometry hall thruster
US6882361B1 (en) 2000-04-19 2005-04-19 Pixelworks, Inc. Imager linked with image processing station
JP2001306428A (ja) 2000-04-25 2001-11-02 Canon Inc ネットワーク機器、ネットワークシステム、通信方法及び記録媒体
JP2001319745A (ja) 2000-05-08 2001-11-16 Honda Tsushin Kogyo Co Ltd 変換用アダプタ
JP2001320280A (ja) 2000-05-10 2001-11-16 Mitsubishi Electric Corp 並列−直列変換回路
US6760722B1 (en) 2000-05-16 2004-07-06 International Business Machines Corporation Computer implemented automated remote support
JP4292685B2 (ja) 2000-05-23 2009-07-08 日本電気株式会社 データ転送システム、データ送受信システム、データ送受信方法、フォーマット変換装置、フォーマット変換方法およびフォーマット変換プログラムを記録したコンピュータ読み取り可能な記録媒体
KR100360622B1 (ko) 2000-06-12 2002-11-13 주식회사 문화방송 엠펙 데이터 프레임과 이를 이용한 송수신 시스템
US6754179B1 (en) 2000-06-13 2004-06-22 Lsi Logic Corporation Real time control of pause frame transmissions for improved bandwidth utilization
US6714233B2 (en) * 2000-06-21 2004-03-30 Seiko Epson Corporation Mobile video telephone system
JP3415567B2 (ja) 2000-06-21 2003-06-09 エヌイーシーマイクロシステム株式会社 Usb転送制御方法およびusbコントローラ
US6999432B2 (en) * 2000-07-13 2006-02-14 Microsoft Corporation Channel and quality of service adaptation for multimedia over wireless networks
US20020080166A1 (en) 2000-08-08 2002-06-27 Sweatt Millard E. Method and system for remote television replay control
ATE271301T1 (de) * 2000-08-09 2004-07-15 Sk Telecom Co Ltd Weiterreichungsverfahren in drahtlosen telekommunikationssystemen mit usts unterstützung
US6784941B1 (en) 2000-08-09 2004-08-31 Sunplus Technology Co., Ltd. Digital camera with video input
US6725412B1 (en) 2000-08-15 2004-04-20 Dolby Laboratories Licensing Corporation Low latency data encoder
JP2002062990A (ja) 2000-08-15 2002-02-28 Fujitsu Media Device Kk インターフェイス装置
GB2366926A (en) 2000-09-06 2002-03-20 Sony Uk Ltd Combining material and data
US6747964B1 (en) 2000-09-15 2004-06-08 Qualcomm Incorporated Method and apparatus for high data rate transmission in a wireless communication system
US7138989B2 (en) 2000-09-15 2006-11-21 Silicon Graphics, Inc. Display capable of displaying images in response to signals of a plurality of signal formats
US7466978B1 (en) 2000-09-18 2008-12-16 International Business Machines Corporation Telephone network node device
JP4146991B2 (ja) * 2000-09-18 2008-09-10 キヤノン株式会社 電子カメラシステム、電子カメラ及び電子カメラシステムの制御方法
US6760882B1 (en) 2000-09-19 2004-07-06 Intel Corporation Mode selection for data transmission in wireless communication channels based on statistical parameters
US6738344B1 (en) 2000-09-27 2004-05-18 Hewlett-Packard Development Company, L.P. Link extenders with link alive propagation
US7336613B2 (en) * 2000-10-17 2008-02-26 Avaya Technology Corp. Method and apparatus for the assessment and optimization of network traffic
US6690655B1 (en) 2000-10-19 2004-02-10 Motorola, Inc. Low-powered communication system and method of operation
US7869067B2 (en) 2000-10-20 2011-01-11 Visioneer, Inc. Combination scanner and image data reader system including image management and software
US7278069B2 (en) 2000-10-31 2007-10-02 Igor Anatolievich Abrosimov Data transmission apparatus for high-speed transmission of digital data and method for automatic skew calibration
US8996698B1 (en) 2000-11-03 2015-03-31 Truphone Limited Cooperative network for mobile internet access
CN1214553C (zh) 2000-11-17 2005-08-10 三星电子株式会社 在窄带时分双工码分多址移动通信系统中测量传播延迟的设备和方法
US7464877B2 (en) * 2003-11-13 2008-12-16 Metrologic Instruments, Inc. Digital imaging-based bar code symbol reading system employing image cropping pattern generator and automatic cropped image processor
FI115802B (fi) 2000-12-04 2005-07-15 Nokia Corp Kuvakehyksien päivittäminen muistillisessa näytössä
GB2397733B (en) 2000-12-06 2004-10-06 Fujitsu Ltd Clock recovery circuitry
US6973039B2 (en) 2000-12-08 2005-12-06 Bbnt Solutions Llc Mechanism for performing energy-based routing in wireless networks
RU2003121400A (ru) 2000-12-15 2005-02-10 Квэлкомм Инкорпорейтед (US) Формирование и реализация протокола обмена данными и интерфейса для пересылки сигналов с высокой скоростью передачи данных
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US7023924B1 (en) 2000-12-28 2006-04-04 Emc Corporation Method of pausing an MPEG coded video stream
JP2002208844A (ja) 2001-01-12 2002-07-26 Nec Eng Ltd グリッチ除去回路
US6947436B2 (en) 2001-02-01 2005-09-20 Motorola, Inc. Method for optimizing forward link data transmission rates in spread-spectrum communications systems
US7301968B2 (en) 2001-03-02 2007-11-27 Pmc-Sierra Israel Ltd. Communication protocol for passive optical network topologies
KR20020071226A (ko) 2001-03-05 2002-09-12 삼성전자 주식회사 이동통신 시스템에서 역방향 링크 송신 제어 장치 및 방법
JP4106226B2 (ja) 2001-03-26 2008-06-25 松下電器産業株式会社 電源制御装置
CN1165141C (zh) 2001-03-27 2004-09-01 华为技术有限公司 路由器接口驱动数据转发过程的方法
JP2002300299A (ja) 2001-03-29 2002-10-11 Shunichi Toyoda 携帯電話材のメモリを利用した情報端末装置による教育システム
CN1159935C (zh) 2001-03-30 2004-07-28 华为技术有限公司 一种提高市区环境下蜂窝移动台定位精度的方法和装置
JP3497834B2 (ja) 2001-03-30 2004-02-16 株式会社東芝 ルートリピータ、usb通信システム、usb通信制御方法
JP2002359774A (ja) 2001-03-30 2002-12-13 Fuji Photo Film Co Ltd 電子カメラ
US20020159458A1 (en) 2001-04-27 2002-10-31 Foster Michael S. Method and system for reserved addressing in a communications network
US6889056B2 (en) 2001-04-30 2005-05-03 Ntt Docomo, Inc. Transmission control scheme
JP3884322B2 (ja) 2001-05-16 2007-02-21 株式会社リコー ネットワークインターフェース
US7392541B2 (en) 2001-05-17 2008-06-24 Vir2Us, Inc. Computer system architecture and method providing operating-system independent virus-, hacker-, and cyber-terror-immune processing environments
AU2002305780A1 (en) 2001-05-29 2002-12-09 Transchip, Inc. Patent application cmos imager for cellular applications and methods of using such
JP2002351689A (ja) 2001-05-30 2002-12-06 Nec Corp データ転送システム
US7191281B2 (en) * 2001-06-13 2007-03-13 Intel Corporation Mobile computer system having a navigation mode to optimize system performance and power management for mobile applications
JP2003006143A (ja) 2001-06-22 2003-01-10 Nec Corp バス共有化システムと装置及び方法
US7165112B2 (en) * 2001-06-22 2007-01-16 Motorola, Inc. Method and apparatus for transmitting data in a communication system
US6745364B2 (en) 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
JP2003046595A (ja) 2001-07-06 2003-02-14 Texas Instruments Inc データ通信の方法および装置
US7051218B1 (en) 2001-07-18 2006-05-23 Advanced Micro Devices, Inc. Message based power management
CN100470654C (zh) 2001-07-23 2009-03-18 松下电器产业株式会社 将信息记录到信息记录介质的装置及方法
WO2003013080A1 (en) * 2001-07-31 2003-02-13 Comverse Ltd. Email protocol for a mobile environment and gateway using same
US7184408B2 (en) * 2001-07-31 2007-02-27 Denton I Claude Method and apparatus for programmable generation of traffic streams
JP2003044184A (ja) 2001-08-01 2003-02-14 Canon Inc データ処理装置及び電力制御方法
GB2415314B (en) 2001-08-08 2006-05-03 Adder Tech Ltd Video switch
US6758678B2 (en) * 2001-08-14 2004-07-06 Disney Enterprises, Inc. Computer enhanced play set and method
JP4733877B2 (ja) 2001-08-15 2011-07-27 富士通セミコンダクター株式会社 半導体装置
JP2003069544A (ja) 2001-08-23 2003-03-07 Hitachi Kokusai Electric Inc 通信制御方法及び通信制御装置
JP4322451B2 (ja) 2001-09-05 2009-09-02 日本電気株式会社 Dspメモリ間あるいはdspメモリとcpu用メモリ(dpram)間データ転送方式
BR0212361A (pt) * 2001-09-06 2006-11-07 Qualcomm Inc geração e implementação de um protocolo de comunicação e interface para transferência de sinais de taxa de dados elevada
US8812706B1 (en) * 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
DE10145722A1 (de) 2001-09-17 2003-04-24 Infineon Technologies Ag Konzept zur sicheren Datenkommunikation zwischen elektronischen Bausteinen
US20030061431A1 (en) * 2001-09-21 2003-03-27 Intel Corporation Multiple channel interface for communications between devices
KR100408299B1 (ko) 2001-09-29 2003-12-01 삼성전자주식회사 모드 판단 장치 및 방법
JP3633538B2 (ja) 2001-10-02 2005-03-30 日本電気株式会社 輻輳制御システム
US7570668B2 (en) 2001-10-03 2009-08-04 Nokia Corporation Data synchronization
EP1309133A1 (de) 2001-10-31 2003-05-07 Siemens Aktiengesellschaft Verfahren, Empfangseinrichtung und Sendeeinrichtung zur Bestimmung des schnellsten Nachrichtenpfades ohne Uhrensynchronisation
US20030125040A1 (en) 2001-11-06 2003-07-03 Walton Jay R. Multiple-access multiple-input multiple-output (MIMO) communication system
US7126945B2 (en) 2001-11-07 2006-10-24 Symbol Technologies, Inc. Power saving function for wireless LANS: methods, system and program products
US20030110234A1 (en) * 2001-11-08 2003-06-12 Lightsurf Technologies, Inc. System and methodology for delivering media to multiple disparate client devices based on their capabilities
US6990549B2 (en) * 2001-11-09 2006-01-24 Texas Instruments Incorporated Low pin count (LPC) I/O bridge
US7536598B2 (en) 2001-11-19 2009-05-19 Vir2Us, Inc. Computer system capable of supporting a plurality of independent computing environments
US6891545B2 (en) 2001-11-20 2005-05-10 Koninklijke Philips Electronics N.V. Color burst queue for a shared memory controller in a color sequential display system
GB2382502B (en) 2001-11-23 2005-10-19 Actix Ltd Network testing systems
JP2003167680A (ja) 2001-11-30 2003-06-13 Hitachi Ltd ディスク装置
US20030112758A1 (en) 2001-12-03 2003-06-19 Pang Jon Laurent Methods and systems for managing variable delays in packet transmission
US7486693B2 (en) 2001-12-14 2009-02-03 General Electric Company Time slot protocol
US6993393B2 (en) * 2001-12-19 2006-01-31 Cardiac Pacemakers, Inc. Telemetry duty cycle management system for an implantable medical device
JP2003198550A (ja) 2001-12-25 2003-07-11 Matsushita Electric Ind Co Ltd 通信装置及び通信方法
KR100428767B1 (ko) 2002-01-11 2004-04-28 삼성전자주식회사 트래픽 정보를 이용한 가입자 라우팅 설정 방법 및 이를위한 기록매체
US20030135863A1 (en) 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Targeted scalable multicast based on client bandwidth or capability
US20030144006A1 (en) 2002-01-25 2003-07-31 Mikael Johansson Methods, systems, and computer program products for determining the location of a mobile terminal based on delays in receiving data packets from transmitters having known locations
US20050120208A1 (en) 2002-01-25 2005-06-02 Albert Dobson Robert W. Data transmission systems
US6690201B1 (en) * 2002-01-28 2004-02-10 Xilinx, Inc. Method and apparatus for locating data transition regions
US7145411B1 (en) 2002-03-18 2006-12-05 Applied Micro Circuits Corporation Flexible differential interconnect cable with isolated high frequency electrical transmission line
US6797891B1 (en) 2002-03-18 2004-09-28 Applied Micro Circuits Corporation Flexible interconnect cable with high frequency electrical transmission line
US7336139B2 (en) * 2002-03-18 2008-02-26 Applied Micro Circuits Corporation Flexible interconnect cable with grounded coplanar waveguide
US6867668B1 (en) * 2002-03-18 2005-03-15 Applied Micro Circuits Corporation High frequency signal transmission from the surface of a circuit substrate to a flexible interconnect cable
US20030185220A1 (en) 2002-03-27 2003-10-02 Moshe Valenci Dynamically loading parsing capabilities
US7425986B2 (en) 2002-03-29 2008-09-16 Canon Kabushiki Kaisha Conversion apparatus for image data delivery
US7310535B1 (en) 2002-03-29 2007-12-18 Good Technology, Inc. Apparatus and method for reducing power consumption in a wireless device
US7430001B2 (en) 2002-04-12 2008-09-30 Canon Kabushiki Kaisha Image sensing system, communication apparatus and image sensing apparatus having remote control function, and their control method
TWI235917B (en) 2002-04-15 2005-07-11 Via Tech Inc High speed data transmitter and transmission method thereof
US7158539B2 (en) * 2002-04-16 2007-01-02 Microsoft Corporation Error resilient windows media audio coding
US7599689B2 (en) 2002-04-22 2009-10-06 Nokia Corporation System and method for bookmarking radio stations and associated internet addresses
JP4029390B2 (ja) 2002-04-23 2008-01-09 ソニー株式会社 情報処理システム、情報処理装置および方法、プログラム格納媒体、並びにプログラム
US7284181B1 (en) 2002-04-24 2007-10-16 Juniper Networks, Inc. Systems and methods for implementing end-to-end checksum
US7206516B2 (en) * 2002-04-30 2007-04-17 Pivotal Decisions Llc Apparatus and method for measuring the dispersion of a fiber span
US7574113B2 (en) 2002-05-06 2009-08-11 Sony Corporation Video and audio data recording apparatus, video and audio data recording method, video and audio data reproducing apparatus, and video and audio data reproducing method
US20050091593A1 (en) 2002-05-10 2005-04-28 General Electric Company Method and system for coordinated transfer of control of a remote controlled locomotive
US6886067B2 (en) 2002-05-23 2005-04-26 Seiko Epson Corporation 32 Bit generic asynchronous bus interface using read/write strobe byte enables
US7036066B2 (en) 2002-05-24 2006-04-25 Sun Microsystems, Inc. Error detection using data block mapping
US7269153B1 (en) 2002-05-24 2007-09-11 Conexant Systems, Inc. Method for minimizing time critical transmit processing for a personal computer implementation of a wireless local area network adapter
US7543326B2 (en) 2002-06-10 2009-06-02 Microsoft Corporation Dynamic rate control
JP2003098583A (ja) 2002-06-10 2003-04-03 Nikon Corp 書換え可能なメモリを使用するカメラ
JP2004021613A (ja) 2002-06-17 2004-01-22 Seiko Epson Corp データ転送制御装置、電子機器及びデータ転送制御方法
EP1376945B1 (en) 2002-06-18 2006-06-07 Matsushita Electric Industrial Co., Ltd. Receiver-based RTT measurement in TCP
KR100469427B1 (ko) 2002-06-24 2005-02-02 엘지전자 주식회사 이동통신 시스템의 동영상 재생 방법
US7486696B2 (en) 2002-06-25 2009-02-03 Avaya, Inc. System and method for providing bandwidth management for VPNs
JP4175838B2 (ja) 2002-07-09 2008-11-05 三菱電機株式会社 待機モード付情報処理装置およびその待機モード開始方法と待機モード解除方法
DE10234991B4 (de) * 2002-07-31 2008-07-31 Advanced Micro Devices, Inc., Sunnyvale Hostcontrollerdiagnose für einen seriellen Bus
US7403511B2 (en) 2002-08-02 2008-07-22 Texas Instruments Incorporated Low power packet detector for low power WLAN devices
US6611221B1 (en) 2002-08-26 2003-08-26 Texas Instruments Incorporated Multi-bit sigma-delta modulator employing dynamic element matching using adaptively randomized data-weighted averaging
WO2004023821A1 (en) * 2002-09-05 2004-03-18 Agency For Science, Technology And Research A method and an apparatus for controlling the rate of a video sequence; a video encoding device
US20040140459A1 (en) 2002-09-13 2004-07-22 Haigh Scott D. Enhanced shadow reduction system and related techniques for digital image capture
US7257087B2 (en) 2002-10-04 2007-08-14 Agilent Technologies, Inc. System and method to calculate round trip delay for real time protocol packet streams
CN1266976C (zh) 2002-10-15 2006-07-26 华为技术有限公司 一种移动台定位方法及其直放站
US20040082383A1 (en) 2002-10-24 2004-04-29 Motorola, Inc Methodology and wireless device for interactive gaming
JP4028356B2 (ja) 2002-10-31 2007-12-26 京セラ株式会社 通信システム、無線通信端末、データ配信装置及び通信方法
US7949777B2 (en) 2002-11-01 2011-05-24 Avid Technology, Inc. Communication protocol for controlling transfer of temporal data over a bus between devices in synchronization with a periodic reference signal
GB0226014D0 (en) 2002-11-08 2002-12-18 Nokia Corp Camera-LSI and information device
US7336667B2 (en) * 2002-11-21 2008-02-26 International Business Machines Corporation Apparatus, method and program product to generate and use CRC in communications network
US7327735B2 (en) * 2002-11-27 2008-02-05 Alcatel Canada Inc. System and method for detecting lost messages transmitted between modules in a communication device
JP3642332B2 (ja) 2002-12-20 2005-04-27 松下電器産業株式会社 折り畳み式携帯電話装置
US7191349B2 (en) 2002-12-26 2007-03-13 Intel Corporation Mechanism for processor power state aware distribution of lowest priority interrupt
US6765506B1 (en) 2003-01-06 2004-07-20 Via Technologies Inc. Scrambler, de-scrambler, and related method
GB2397709B (en) 2003-01-27 2005-12-28 Evangelos Arkas Period-to-digital converter
US7047475B2 (en) 2003-02-04 2006-05-16 Hewlett-Packard Development Company, L.P. CRC encoding scheme for conveying status information
JP4119764B2 (ja) 2003-02-13 2008-07-16 京セラ株式会社 カメラ付き携帯端末
US20040176065A1 (en) 2003-02-20 2004-09-09 Bo Liu Low power operation in a personal area network communication system
US7787886B2 (en) * 2003-02-24 2010-08-31 Invisitrack, Inc. System and method for locating a target using RFID
US6944136B2 (en) 2003-02-28 2005-09-13 On-Demand Technologies, Inc. Two-way audio/video conferencing system
US20040184450A1 (en) 2003-03-19 2004-09-23 Abdu H. Omran Method and system for transport and routing of packets over frame-based networks
JP4112414B2 (ja) 2003-03-28 2008-07-02 京セラ株式会社 携帯端末装置
US7260087B2 (en) 2003-04-02 2007-08-21 Cellco Partnership Implementation methodology for client initiated parameter negotiation for PTT/VoIP type services
JP2004309623A (ja) 2003-04-03 2004-11-04 Konica Minolta Opto Inc 撮像装置及び携帯端末並びに撮像装置製造方法
US7403487B1 (en) 2003-04-10 2008-07-22 At&T Corporation Method and system for dynamically adjusting QOS
JP4288994B2 (ja) * 2003-04-10 2009-07-01 株式会社日立製作所 端末装置、配信サーバ、映像データの受信方法及び映像データの送信方法
JP4505450B2 (ja) * 2003-04-17 2010-07-21 トムソン ライセンシング データ要求送信装置及びプロセス並びに対応するプロダクツ
US20040221315A1 (en) 2003-05-01 2004-11-04 Genesis Microchip Inc. Video interface arranged to provide pixel data independent of a link character clock
US6895410B2 (en) 2003-05-02 2005-05-17 Nokia Corporation Method and apparatus for providing a multimedia data stream
US7477604B2 (en) 2003-05-14 2009-01-13 Ntt Docomo, Inc. Packet communications system
EP1645082A2 (en) 2003-05-28 2006-04-12 Artimi Ltd Ultra-wideband network, device, device controller, method and data packet for establishing a mesh network and forwarding packets on another channel
US7110420B2 (en) 2003-05-30 2006-09-19 North Carolina State University Integrated circuit devices having on-chip adaptive bandwidth buses and related methods
KR101166734B1 (ko) * 2003-06-02 2012-07-19 퀄컴 인코포레이티드 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현
US6975145B1 (en) 2003-06-02 2005-12-13 Xilinx, Inc. Glitchless dynamic multiplexer with synchronous and asynchronous controls
JP4278439B2 (ja) 2003-06-02 2009-06-17 パイオニア株式会社 情報通信装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
US20040260823A1 (en) 2003-06-17 2004-12-23 General Instrument Corporation Simultaneously transporting multiple MPEG-2 transport streams
JP3834819B2 (ja) * 2003-07-17 2006-10-18 船井電機株式会社 プロジェクタ
KR100538226B1 (ko) 2003-07-18 2005-12-21 삼성전자주식회사 복수의 아날로그 입력 신호를 고속으로 처리하는아날로그/디지털 변환 장치 및 이를 이용한 디스플레이 장치
US7526350B2 (en) 2003-08-06 2009-04-28 Creative Technology Ltd Method and device to process digital media streams
JP2007507918A (ja) 2003-08-13 2007-03-29 クゥアルコム・インコーポレイテッド さらに高速なデータレート用の信号インタフェース
KR100973103B1 (ko) * 2003-09-10 2010-08-02 콸콤 인코포레이티드 고속 데이터 인터페이스
US7467202B2 (en) * 2003-09-10 2008-12-16 Fidelis Security Systems High-performance network content analysis platform
US7015838B1 (en) * 2003-09-11 2006-03-21 Xilinx, Inc. Programmable serializing data path
KR20050028396A (ko) 2003-09-17 2005-03-23 삼성전자주식회사 멀티 세션 방식을 이용한 데이터 기록 방법 및 그정보저장매체
JP2005107683A (ja) 2003-09-29 2005-04-21 Sharp Corp 通信コントローラ、通信システム、通信機器、および通信方法
US7315520B2 (en) * 2003-10-08 2008-01-01 Research In Motion Limited Method and apparatus for dynamic packet transport in CDMA2000 networks
AU2004306903C1 (en) * 2003-10-15 2009-01-22 Qualcomm Incorporated High data rate interface
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
KR100915250B1 (ko) 2003-11-12 2009-09-03 콸콤 인코포레이티드 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스
US7219294B2 (en) 2003-11-14 2007-05-15 Intel Corporation Early CRC delivery for partial frame
US7143207B2 (en) 2003-11-14 2006-11-28 Intel Corporation Data accumulation between data path having redrive circuit and memory device
US7447953B2 (en) 2003-11-14 2008-11-04 Intel Corporation Lane testing with variable mapping
WO2005053272A1 (en) 2003-11-25 2005-06-09 Qualcomm Incorporated High data rate interface with improved link synchronization
EP2247070B1 (en) 2003-12-08 2013-09-25 QUALCOMM Incorporated High data rate interface with improved link synchronization
US7451362B2 (en) 2003-12-12 2008-11-11 Broadcom Corporation Method and system for onboard bit error rate (BER) estimation in a port bypass controller
US7340548B2 (en) * 2003-12-17 2008-03-04 Microsoft Corporation On-chip bus
US20050163085A1 (en) 2003-12-24 2005-07-28 International Business Machines Corporation System and method for autonomic wireless presence ping
US7317754B1 (en) * 2004-01-12 2008-01-08 Verizon Services Corp. Rate agile rate-adaptive digital subscriber line
US7158536B2 (en) * 2004-01-28 2007-01-02 Rambus Inc. Adaptive-allocation of I/O bandwidth using a configurable interconnect topology
KR20060128982A (ko) 2004-01-28 2006-12-14 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 디스플레이 방법 및 디스플레이 시스템
US7868890B2 (en) 2004-02-24 2011-01-11 Qualcomm Incorporated Display processor for a wireless device
JP3786120B2 (ja) 2004-03-09 2006-06-14 セイコーエプソン株式会社 データ転送制御装置及び電子機器
EP2375676B1 (en) 2004-03-10 2013-06-26 Qualcomm Incorporated High data rate interface apparatus and method
EP1735986B1 (en) 2004-03-17 2013-05-22 Qualcomm, Incorporated High data rate interface apparatus and method
BRPI0509147A (pt) 2004-03-24 2007-09-11 Qualcomm Inc equipamentos e método para interface de alta taxa de dados
DE102004014973B3 (de) 2004-03-26 2005-11-03 Infineon Technologies Ag Parallel-Seriell-Umsetzer
US20050248685A1 (en) 2004-04-21 2005-11-10 Samsung Electronics Co., Ltd. Multidata processing device and method in a wireless terminal
US20050265333A1 (en) 2004-06-01 2005-12-01 Texas Instruments Incorporated Method for enabling efficient multicast transmission in a packet-based network
US7068230B2 (en) 2004-06-02 2006-06-27 Research In Motion Limited Mobile wireless communications device comprising multi-frequency band antenna and related methods
US8650304B2 (en) * 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
KR100926658B1 (ko) 2004-06-04 2009-11-17 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US20060034301A1 (en) * 2004-06-04 2006-02-16 Anderson Jon J High data rate interface apparatus and method
US7383399B2 (en) * 2004-06-30 2008-06-03 Intel Corporation Method and apparatus for memory compression
US7095435B1 (en) 2004-07-21 2006-08-22 Hartman Richard L Programmable multifunction electronic camera
JP4897679B2 (ja) 2004-07-22 2012-03-14 ユセベ ファルマ ソシエテ アノニム インドロン誘導体、その製造方法及びその使用
CN101041989A (zh) 2004-08-05 2007-09-26 邱则有 一种钢筋砼立体承力结构楼盖
KR100604323B1 (ko) 2004-08-28 2006-07-24 삼성테크윈 주식회사 내장형 카메라 장치 및 이를 구비한 휴대폰
KR100624311B1 (ko) 2004-08-30 2006-09-19 삼성에스디아이 주식회사 프레임 메모리 제어 방법 및 그것을 이용한 표시 장치
KR100595695B1 (ko) 2004-11-13 2006-07-03 엘지전자 주식회사 휴대단말기의 모듈러 장치 및 방법
US7161846B2 (en) * 2004-11-16 2007-01-09 Seiko Epson Corporation Dual-edge triggered multiplexer flip-flop and method
US6990335B1 (en) * 2004-11-18 2006-01-24 Charles G. Shamoon Ubiquitous connectivity and control system for remote locations
SG160337A1 (en) 2004-11-24 2010-04-29 Qualcomm Inc Digital data interface device message format
US20060161691A1 (en) 2004-11-24 2006-07-20 Behnam Katibian Methods and systems for synchronous execution of commands across a communication link
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US7315265B2 (en) * 2004-11-24 2008-01-01 Qualcomm Incorporated Double data rate serial encoder
CA2588702C (en) 2004-11-24 2012-01-03 Qualcomm Incorporated Methods and systems for synchronous execution of commands across a communication link
US8723705B2 (en) * 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
KR100672987B1 (ko) 2004-12-20 2007-01-24 삼성전자주식회사 고속 아날로그 인벨롭 디텍터
JP2006211394A (ja) 2005-01-28 2006-08-10 Toshiba Corp 折り畳み型携帯端末装置
US7412642B2 (en) 2005-03-09 2008-08-12 Sun Microsystems, Inc. System and method for tolerating communication lane failures
JP4428272B2 (ja) 2005-03-28 2010-03-10 セイコーエプソン株式会社 表示ドライバ及び電子機器
US7605837B2 (en) 2005-06-02 2009-10-20 Lao Chan Yuen Display system and method
JP2007012937A (ja) 2005-06-30 2007-01-18 Seiko Epson Corp 表示ドライバ
JP4756950B2 (ja) 2005-08-08 2011-08-24 キヤノン株式会社 撮像装置及びその制御方法
US7302510B2 (en) * 2005-09-29 2007-11-27 International Business Machines Corporation Fair hierarchical arbiter
US9144060B2 (en) 2005-10-27 2015-09-22 Qualcomm Incorporated Resource allocation for shared signaling channels
US20070098002A1 (en) 2005-10-28 2007-05-03 Inventec Corporation Media center operating mode selection control method and system
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US7813451B2 (en) 2006-01-11 2010-10-12 Mobileaccess Networks Ltd. Apparatus and method for frequency shifting of a wireless signal and systems using frequency shifting
US7893990B1 (en) 2006-07-31 2011-02-22 Cisco Technology, Inc. Digital video camera with retractable data connector and resident software application
JP4250648B2 (ja) 2006-09-21 2009-04-08 株式会社東芝 情報処理装置
US8700818B2 (en) 2006-09-29 2014-04-15 Mosaid Technologies Incorporated Packet based ID generation for serially interconnected devices
US7912503B2 (en) * 2007-07-16 2011-03-22 Microsoft Corporation Smart interface system for mobile communications devices
JP2009284281A (ja) 2008-05-23 2009-12-03 Nec Electronics Corp 無線通信機器、及び無線通信状態表示方法
KR200469360Y1 (ko) 2008-12-26 2013-10-11 대성전기공업 주식회사 시트 온도 조절 스위치 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100882164B1 (ko) * 2003-10-15 2009-02-06 퀄컴 인코포레이티드 높은 데이터 레이트 인터페이스

Also Published As

Publication number Publication date
AU2004306903B2 (en) 2008-07-10
JP2012191650A (ja) 2012-10-04
EP2244436A1 (en) 2010-10-27
EP1680904A1 (en) 2006-07-19
JP2007509533A (ja) 2007-04-12
CA2542649A1 (en) 2005-04-28
JP2012227933A (ja) 2012-11-15
EP2244437B1 (en) 2013-09-04
RU2371872C2 (ru) 2009-10-27
IL175003A0 (en) 2006-08-20
JP2010200332A (ja) 2010-09-09
EP2244436B1 (en) 2013-09-25
KR100882164B1 (ko) 2009-02-06
CN102801615A (zh) 2012-11-28
JP5155271B2 (ja) 2013-03-06
US20050125840A1 (en) 2005-06-09
JP5237319B2 (ja) 2013-07-17
EP2244437A1 (en) 2010-10-27
AU2004306903A1 (en) 2005-04-28
WO2005039148A1 (en) 2005-04-28
JP2010011480A (ja) 2010-01-14
AU2004306903C1 (en) 2009-01-22
CN102801595A (zh) 2012-11-28
CN1894931A (zh) 2007-01-10
US8694652B2 (en) 2014-04-08
RU2006116496A (ru) 2007-11-27
KR20080052699A (ko) 2008-06-11

Similar Documents

Publication Publication Date Title
KR100882164B1 (ko) 높은 데이터 레이트 인터페이스
KR100827573B1 (ko) 높은 데이터 레이트 인터페이스
KR101070209B1 (ko) 더 높은 데이터 레이트를 위한 신호 인터페이스
KR100906319B1 (ko) 링크 동기화를 갖는 고 데이터 레이트 인터페이스
JP4782694B2 (ja) 改善されたリンク制御を有する高速データレートインタフェース
KR100919761B1 (ko) 고 데이터 레이트 인터페이스 장치 및 방법
KR101019935B1 (ko) 고 데이터 레이트 인터페이스 장치 및 방법
KR101245962B1 (ko) 고 데이터 레이트 인터페이스 장치 및 방법
JP5129318B2 (ja) 高速データレートインタフェース
KR20080083339A (ko) 고 데이터 레이트 인터페이스 장치 및 방법
KR20060096161A (ko) 향상된 링크 동기화를 제공하는 고속 데이터 레이트인터페이스
KR100882166B1 (ko) 고 데이터 레이트 인터페이스 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121227

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131227

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141230

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee