KR100944843B1 - 높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현 - Google Patents

높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현 Download PDF

Info

Publication number
KR100944843B1
KR100944843B1 KR1020037008002A KR20037008002A KR100944843B1 KR 100944843 B1 KR100944843 B1 KR 100944843B1 KR 1020037008002 A KR1020037008002 A KR 1020037008002A KR 20037008002 A KR20037008002 A KR 20037008002A KR 100944843 B1 KR100944843 B1 KR 100944843B1
Authority
KR
South Korea
Prior art keywords
data
host
communication path
packets
presentation
Prior art date
Application number
KR1020037008002A
Other languages
English (en)
Other versions
KR20030061001A (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 KR20030061001A publication Critical patent/KR20030061001A/ko
Application granted granted Critical
Publication of KR100944843B1 publication Critical patent/KR100944843B1/ko

Links

Images

Classifications

    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • 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/724094Interfacing with a device worn on the user's body to provide access to telephonic functionalities, e.g. accepting a call, reading or composing a message
    • H04M1/724097Worn on the head
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Systems (AREA)
  • Television Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

미리 선택된 디지털 제어 세트 및 프리젠테이션 데이터를 통신하기 위한 통신 프로토콜을 형성하도록 서로 링크된 패킷 구조를 사용하여 통신 경로를 통해 호스트와 클라이언트 간에 디지털 데이터를 전송하기 위한 데이터 인터페이스. 신호 프로토콜은 통신 프로토콜을 형성하는 패킷을 형성하고, 전송하며 수신하기 위해, 그리고 호스트 디바이스 내에 존재하며 통신 경로를 통해 클라이언트에 접속되는 적어도 하나의 데이터 패킷을 사용하여 하나 또는 그이상의 데이터 패킷 타입에서 디지털 뎅이터를 형성하기 위해 구성된 링크 제어기에 의해 사용된다. 인터페이스는 짧은 거리의 "직렬" 타입 데이터 링크를 통해 비용 효율적이며, 저전력이며, 양방향의 고속 데이터 전송 메카니즘을 제공하기 때문에 특히 휴대용 컴퓨터에 장착가능한 마이크로디스플레이 및 무선 통신 디바이스와 같은 디스플레이 엘리먼트를 접속하는데 사용 가능한 소형의 커넥터 및 얇고 유연한 케이블을 구현할 수 있다.

Description

높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현 {GENERATING AND IMPLEMENTING A COMMUNICATION PROTOCOL AND INTERFACE FOR HIGH DATA RATE SIGNAL TRANSFER}
본 발명은 호스트 통신 장치와 클라이언트 오디오/비디오 프리젠테이션 장치 사이의 신호를 높은 데이터 레이트로 통신하는 디지털 신호 프로토콜 및 프로세스에 관한 것이다. 특히, 본 발명은 멀티매체 및 다른 타입의 무선 장치로부터 마이크로-디스플레이 유닛 또는 다른 프리젠테이션 장치로 디지털 신호를 저전력으로 높은 데이터 레이트의 전송 메커니즘을 사용하여 전송하는 기술에 관한 것이다.
컴퓨터, 전자 게임 관련 상품 및 여러 비디오 기술(예를 들면 DVD 및 고화질 VCR)은 심지어 몇몇 타입의 문자를 포함하는 점차적으로 높아지는 고해상 스틸(still), 비디오, 주문형 비디오 및 그래픽 이미지에 대한 프리젠테이션을 이러한 장비의 최종 사용자에게 제공하기 위해 지난 몇 년 동안 상당히 개발되어 왔다. 이러한 개발은 다시 고화질 비디오 모니터, HDTV 모니터 또는 특수 이미지 프로젝션 엘리먼트와 같은 고해상 전자 시청 장치의 사용을 주도해왔다. 이러한 시각 이미지와 CD형 음향 재생, DVD 및 관련 오디오 신호 출력을 가진 다른 장치를 사용할 때와 같은 고화질 또는 고품질 오디오 데이터를 조합하는 것은 더욱 사실적이고, 컨텐츠가 풍부하거나 또는 최종 사용자에 대한 정확한 멀티매체 경험을 형성하는데 사용된다. 추가로, MP3 플레이어와 같은 고이동성의 고품질 음향 시스템 및 음악 전송 메커니즘이 최종 사용자에 대한 오디오 전용 프리젠테이션을 위해 개발되어 왔다.
전형적인 비디오 프리젠테이션 시나리오에서, 비디오 데이터는 전형적으로 1 내지 10 초당 킬로비트 정도의 저속 또는 중속으로 현재의 기술을 사용하여 전송된다. 이러한 데이터는 원하는 시청 장치에서 지연된(이후) 플레이를 위해 일시 또는 장기간 메모리 장치에 버퍼링 또는 저장된다. 예를 들면, 이미지는 이미지를 디지털로 표현하는데 사용 가능한 데이터를 수신 또는 전송하기 위해 모뎀 또는 인터넷 접속 장치를 가진 컴퓨터상에 상주하는 프로그램을 사용하는 인터넷을 "통해" 또는 인터넷을 사용하여 전송된다. 무선 모뎀 또는 무선 개인용 휴대단말(PDA) 또는 무선 전화를 구비한 휴대용 컴퓨터와 같은 무선 장치를 사용하여 유사한 전송이 이루어진다.
일단 데이터가 수신되면, 데이터는 재생을 위해 외부 저장장치를 포함하는 RAM 또는 플래시 메모리와 같은 메모리 엘리먼트, 회로 또는 장치 내에 국부적으로 저장된다. 데이터의 양과 이미지 해상도에 따라, 재생은 비교적 빠르게 시작하거나 또는 장기간 지연을 가지게 된다. 즉, 몇몇 예에서, 이미지 프리젠테이션은 많은 데이터를 요구하지 않는 매우 적은 또는 낮은 해상도 이미지에 대해, 또는 몇몇 타입의 버퍼링을 사용하여 어느 정도의 실시간 재생을 허용하여 약간의 지연 이후 많은 자료는 전송되지만 몇몇 자료들은 프리젠테이션 되도록 한다. 전송 링크에 어떠한 간섭도 없다고 가정하면, 프리젠테이션이 시작되면 전송은 시청 장치의 최종 사용자에게 알맞게 투명하게 된다.
스틸 이미지 또는 모션 비디오를 생성하는데 사용된 데이터는 종종 통신 링크를 통한 데이터 전송을 가속하기 위해 JPEG; Joint Photograph Experts Group, MPEG: Motion Picture Experts Group 및 매체, 컴퓨터 및 통신 산업에서의 다른 공지된 표준 기관 또는 회사에 의해 한정된 바와 같은 여러 공지된 기술중 하나를 사용하여 압축된다. 이는 주어진 양의 정보를 전송하기 위해 적은 수의 비트를 사용함으로써 이미지 또는 데이터가 좀더 빠르게 전송될 수 있도록 한다.
데이터가 컴퓨터 또는 다른 장치와 같은 "국부" 장치로 전송되면, 그 결과 생성된 정보는 압축해제되고(또는 특수 디코딩 플레이어를 사용하여 재생되고) 해당하는 유효 프리젠테이션 해상도 및 제어 엘리먼트에 기초한 적정 프리젠테이션을 위해 준비된다. 예를 들면, 비록 여러 다른 해상도가 원하는 바에 따라 일반적으로 가능하지만, X×Y 픽셀의 스크린 해상도에 관한 전형적인 컴퓨터 비디오 해상도는 전형적으로 480×640, 600×800, 내지 1024×1024만큼 낮은 범위이다.
이미지 프리젠테이션은 또한 이미지 컨텐츠, 소정의 컬러 레벨 또는 색심도(컬러를 발생시키는데 사용된 픽셀당 비트들의 수) 및 명암의 관점에서 이미지를 조정하는 주어진 비디오 제어기의 성능 및 사용되는 추가적인 오버헤드들에 영향을 받는다. 예를 들면, 전형적인 컴퓨터 프리젠테이션은 다른 값이 가능하지만, 여러 컬러(명암 및 색상)를 나타내기 위해 픽셀당 8 내지 32 또는 그 이상의 비트들을 예상할 수 있다.
이상의 값으로부터, 주어진 스크린 이미지가 최저에서 최고의 전형적인 해상도, 심도 범위로 2.45Mb 내지 33.55Mb 정도의 데이터 전송을 요구할 것이다. 비디오 또는 모션형 이미지를 초당 30프레임의 속도로 시청할 때, 요구되는 데이터의 양은 73.7 내지 1,006 초당 메가비트(Mbps)의 데이터 또는 9.21 내지 125.75초당 메가바이트(MBps)이다. 또한, 멀티매체 프리젠테이션 또는 CD 음질 음악과 같은 개별 고해상도 오디오 프리젠테이션으로서 이미지와 함께 오디오 데이터를 제공하길 원할 수도 있다. 대화형 명령, 제어 또는 신호를 다루는 추가의 신호가 사용될 수 있다. 이러한 옵션들 각각은 전달될 더 많은 데이터를 부가한다. 임의의 경우, 풍부한 컨텐츠 환경을 형성하기 위해 최종 사용자에게 고품질 또는 고해상 이미지 데이터 및 고품질 오디오 정보 또는 데이터 신호를 전송하고자 할 때, 프리젠테이션 엘리먼트와 이러한 타입의 데이터를 제공하도록 구성된 소스 또는 호스트 장치 사이에 고속 데이터 전송 링크가 필요하다.
115KBps 또는 920Kbps의 데이터 레이트가 임의의 직렬 인터페이스에 의해 루틴하게 처리된다. USB 직렬 인터페이스와 같은 다른 인터페이스는 12MBps와 같은 높은 속도로 데이터 전송을 수용하고 전기 전자 엔지니어 학회(IEEE) 1394 표준을 사용하여 구성된 것과 같은 특수 고속 전송이 50 내지 100MBps 정도의 속도로 발생할 수 있다. 불행히도, 이러한 속도는 미래의 무선 데이터 장치 및 고해상도, 풍부한 컨텐츠, 휴대용 비디오 디스플레이 또는 오디오 장치를 구동하기 위한 출력 신호를 제공하는 서비스에서 사용하는 것을 고려한 상술한 바람직한 고속 데이터 레이트에 미치지 않는다. 추가로, 이러한 인터페이스는 상당한 양의 호스트 또는 시스템과 동작을 위한 클라이언트 소프트웨어를 사용을 필요로 한다. 이들 소프트웨어 프로토콜 스택은 특히, 이동 무선 장치 또는 전화 애플리케이션에서 바람직하지 않은 양의 오버헤드를 발생한다. 더욱이, 이들 인터페이스의 몇몇은 너무 미적인 부분에만 신경쓴 이동 애플리케이션을 위해 너무 무겁고 만족스럽지 못한 벌크 케이블 및 복잡한 커넥터를 사용하거나 또는 너무 많은 전력을 소비한다.
아날로그 비디오 그래픽 어레이(VGA), 디지털 비디오 대화형(DVI) 또는 기가비트 비디오 인터페이스(GVIF) 인터페이스와 같은 공지된 다른 인터페이스가 있다. 이들중 처음 둘은 높은 전송 레이트로 데이터를 처리하지만 수 와트 정도의 대량의 전력을 소비하며 무거운 케이블을 사용하는 병렬형 인터페이스이다. 이들 특징들중 어느 것도 휴대용 소비자 전자 장치에서 사용할 수 있도록 수정될 수 없다. 심지어 세 번째 인터페이스는 너무 많은 전력을 소비하고 고가 또는 벌크 커넥터를 사용한다.
상기한 인터페이스 중 일부의 경우 및 고정 설치 컴퓨터 장비용 데이터 전송과 관련된 다른 고속 데이터 시스템/프로토콜 또는 전송 메커니즘의 경우, 또다른 중요 단점이 있다. 원하는 데이터 전송 레이트를 수용하기 위해 상당한 양의 전력 및/또는 높은 전류 레벨에서의 동작을 필요로 한다. 이는 이동 소비자 지향 상품에 대한 이러한 기술의 사용 가능성을 매우 감소시킨다.
일반적으로, 광섬유형 접속 및 전송 엘리먼트와 같은 대안을 사용하여 이러한 전송 데이터 레이트를 수용하기 위해, 전적으로 상업용 소비자 지향 상품에 대해 요구되는 것보다 훨씬 더 복잡하고 고가인 다수의 추가의 컨버터 및 엘리먼트를 필요로 한다. 광학 시스템이 고가라는 점은 별론으로 하더라도, 이들의 전력 요구 및 복잡성은 고중량, 저전력 휴대용 애플리케이션에 대한 일반적인 사용을 방지한다.
휴대용 또는 이동 애플리케이션 산업에서 요구되는 것은 오디오, 비디오 또는 멀티매체 기반인지에 따라 최종 이동 사용자에 대해 고품질 프리젠테이션 환경을 제공하기 위한 기술이다. 즉, 휴대용 컴퓨터, 무선 전화, PDA 또는 다른 이동 통신 장치 또는 장비를 사용할 때, 현재 사용되는 비디오 및 오디오 프리젠테이션 시스템 또는 장치는 간단히 원하는 고품질 레벨로 출력을 전달할 수 없다. 종종, 부족한 것으로 인식되는 품질은 고품질 프리젠테이션 데이터를 전송하는데 필요한 높은 데이터 레이트를 얻기가 어렵기 때문이다. 그러므로, 데이터를 제공하는 호스트 장치와 최종 사용자에게 출력을 제공하는 클라이언트 디스플레이 장치 또는 엘리먼트 사이의 스루풋을 증가시킬 필요가 있다.
상기한 문제점 및 다른 문제점이 호스트 장치와 수신 클라이언트 장치 사이에 높은 데이터 레이트로 데이터 전송하기 위한 새로운 프로토콜 및 데이터 전송 메커니즘을 제공하는 본 발명의 실시예에 의해 해결된다.
본 발명의 장점은 매우 융통성이 있으면서도 복잡하지 않고 저비용이 들며 매우 신뢰성이 있고 사용 환경에 매우 적합하고 매우 견고한 데이터 전송을 위한 기술이 제공된다는 것이다.
본 발명에 대한 실시예는 통신 경로를 통해 호스트와 클라이언트 장치 사이에 미리 결정된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 통신 프로토콜을 형성하기 위해 함께 링크된 다수의 또는 직렬 패킷 구조를 사용하는, 통신 경로를 통해 호스트 장치와 클라이언트 장치 사이에 고속으로 디지털 데이터를 전송하기 위한 이동 디지털 데이터 인터페이스(MDDI)에 관한 것이다. 신호 통신 프로토콜 또는 링크들이 호스트 또는 클라이언트 링크 제어기의 물리 계층에 의해 사용된다. 호스트 장치 내에 상주하는 적어도 하나의 링크 제어기가 통신 경로 또는 링크를 통해 클라이언트 장치에 연결되어, 통신 프로토콜을 형성하는 패킷들을 발생시키고 전송시키며 수신하도록 구성되고, 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입으로 형성하도록 구성된다. 호스트 및 클라이언트 사이에 정보의 양방향 전송을 위한 인터페이스가 제공된다.
본 발명의 실시예의 추가의 특징으로, 적어도 하나의 클라이언트 링크 제어기 또는 클라이언트 수신기가 클라이언트 장치 내에 위치하고 통신 경로 또는 링크를 통해 호스트 장치에 연결된다. 클라이언트 링크 제어기는 또한 통신 프로토콜을 형성하는 패킷들을 발생시키고 전송시키며 수신하도록 그리고 하나 이상의 타입의 데이터 패킷으로 디지털 프리젠테이션 데이터를 형성하도록 구성된다. 일반적으로, 호스트 또는 링크 제어기는 명령 또는 소정 타입의 신호 준비에서 사용된 데이터 패킷 처리와 질의 처리를 위해 상태 머신을 사용하지만, 통신 프로토콜 내에서 사용된 데이터 및 몇몇 복잡한 패킷을 조작하기 위해 느린 범용 프로세서를 사용할 수 있다. 호스트 제어기는 하나 이상의 차동 라인 드라이버들을 포함하지만; 클라이언트 수신기는 통신 경로에 연결된 하나 이상의 차동 라인 수신기들을 포함한다.
패킷은 다른 가변 길이를 가진 소정 수의 패킷을 가진 미리 결정된 고정 길이를 가진 호스트와 클라이언트 장치 사이에서 통신되는 매체 프레임들 내에서 함께 그룹화된다. 패킷은 각각 패킷 길이 필드, 하나 이상의 패킷 데이터 필드 및 주기적인 리던던시 체크 필드를 포함한다. 서브-프레임 헤더 패킷은 호스트 링크 제어기로부터 다른 패킷의 전송을 시작할 때 배치된다. 하나 이상의 비디오 스트림 패킷 및 오디오 스트림 패킷은 순방향 링크를 통해 클라이언트 장치 사용자에게로 프리젠테이션하기 위해 각각 비디오형 데이터 및 오디오형 데이터를 전송하기 위한 통신 프로토콜에 의해 사용된다. 하나 이상의 역방향 링크 인캡슐레이션 패킷이 클라이언트 장치로부터 호스트 링크 제어기로 데이터를 전송하기 위해 통신 프로토콜에 의해 사용된다.
채움(filler) 패킷은 데이터를 가지지 않은 순방향 링크 전송의 주기를 점유하기 위해 호스트 링크 제어기에 의해 발생된다. 다수의 다른 패킷이 비디오 정보를 전송하기 위해 통신 프로토콜에 의해 사용된다. 이러한 패킷은 컬러 맵, 비트 블록 전송, 비트맵 영역 채움(fill), 비트맵 패턴 채움 및 투명 컬러 인에이블 패킷을 포함한다. 사용자-정의된 스트림 패킷은 인터페이스-사용자 정의된 데이터를 전송하기 위해 통신 프로토콜에 의해 사용된다. 키보드 데이터 및 포인팅 장치 데이터 타입 패킷은 상기 클라이언트 장치와 관련된 사용자 입력 장치로 또는 입력 장치로부터 데이터를 전송하기 위해 통신 프로토콜에 의해 사용된다. 링크 중단 타입 패킷은 상기 통신 경로를 통한 어느 한 방향으로의 데이터 전송을 종결하는 통신 프로토콜에 의해 사용된다.
통신 경로는 일반적으로 4개 이상의 도체들 및 차폐물로 구성된 시리즈를 가진 케이블을 포함 또는 사용한다. 몇몇 실시예에서, 링크 제어기는 USB 데이터 인터페이스를 포함하고, 케이블은 다른 도체와 함께 USB형 인터페이스를 사용한다. 추가로, 인쇄 와이어 또는 가요성 도체가 원한다면 사용될 수 있다.
호스트 링크 제어기는 클라이언트가 인터페이스를 통해 어떠한 타입의 데이터와 어떤 데이터 레이트를 수용할 수 있는지를 결정하기 위해 클라이언트 장치로부터 디스플레이 성능 정보를 필요로 한다. 클라이언트 링크 제어기는 적어도 하나의 디스플레이 성능형 패킷을 사용하여 호스트 링크 제어기로 디스플레이 또는 프리젠테이션 성능을 통신한다. 다수의 전송 모드가 주어진 기간에 걸쳐 최대수의 데이터 비트들을 병렬로 전송하는 것을 허용하는 통신 프로토콜에 의해 사용되고, 각각의 모드는 호스트와 클라이언트 링크 드라이버의 협의에 의해 선택가능하다. 이들 전송 모드는 데이터 전송 동안 다이나믹하게 조정가능하고, 동일한 모드가 순방향 링크에서 사용되듯이 역방향에서 사용되지 않는다.
본 발명의 몇몇 실시예의 다른 특징으로, 호스트 장치는 무선 전화, 무선 PDA, 또는 내부에 위치하는 무선 모뎀을 가진 휴대용 컴퓨터와 같은 무선 통신 장치를 포함한다. 전형적인 클라이언트 장치는 마이크로-디스플레이 장치와 같은 휴대용 비디오 디스플레이 및/또는 휴대용 오디오 프리젠테이션 시스템을 포함한다. 더욱이, 호스트는 클라이언트 장치 사용자에게 제공되어 전송될 프리젠테이션 또는 멀티매체 데이터를 저장하기 위한 저장 수단 및 엘리먼트를 사용한다.
본 발명의 추가의 특징 및 장점과 본 발명의 여러 실시예의 구조 및 동작이 이하에서 첨부된 도면을 참조하여 상세히 설명된다. 도면에서, 유사 참조 부호는 일반적으로 유사한, 기능적으로 유사한 및/또는 구조적으로 유사한 엘리먼트 또는 처리 단계를 나타내고, 가장먼저 나타난 엘리먼트는 참조부에서 최좌측 숫자에 의 해 표현된다.
도 1a는 휴대용 컴퓨터와 함께 사용되는 마이크로-디스플레이의 사용을 포함하여 동작하는 본 발명의 기본 환경을 도시한다.
도 1b는 무선 수신기와 함께 사용된 마이크로-디스플레이 장치 및 오디오 프리젠테이션 엘리먼트의 사용을 포함하여 동작하는 본 발명의 기본 환경을 도시한다.
도 2는 호스트 및 클라이언트 상호접속을 가진 이동 디지털 데이터 인터페이스의 전체 개념을 도시한다.
도 3은 클라이언트 장치로부터 호스트 장치로의 데이터 전송을 구현하는데 사용된 패킷의 구조를 도시한다.
도 4는 I형 및 U형 인터페이스를 위한 물리적 데이터 링크 도체를 통해 호스트와 클라이언트 사이에 전송된 신호의 타입와 MDDI 링크 제어기의 사용을 도시한다.
도 5는 II, II 및 IV형 인터페이스를 위한 물리적 데이터 링크 도체를 통한 호스트와 클라이언트 사이에 전송된 신호의 타입와 MDDI 링크 제어기의 사용을 도시한다.
도 6은 인터페이스 프로토콜을 구현하기 위해 사용된 프레임과 서브-프레임의 구조를 도시한다.
도 7은 인터페이스 프로토콜을 구현하는데 사용된 패킷의 일반적인 구조를 도시한다.
도 8은 서브-프레임 헤더 패킷의 포맷을 도시한다.
도 9는 채움 패킷의 포맷과 컨텐츠를 도시한다.
도 10은 비디오 스트림 패킷의 포맷을 도시한다.
도 11은 도 10의 비디오 데이터 포맷 서술자에 대한 포맷과 컨텐츠를 도시한다.
도 12는 데이터의 팩킹 및 언팩킹 포맷의 사용을 도시한다.
도 13은 오디오 스트림 패킷의 포맷을 도시한다.
도 14는 데이터에 대한 바이트-정렬된 패킷화된 PCM 포맷의 사용을 도시한다.
도 15는 사용자-정의된 스트림 패킷의 포맷을 도시한다.
도 16은 컬러 맵 패킷의 포맷을 도시한다.
도 17은 역방향 링크 인캡슐레이션 패킷의 포맷을 도시한다.
도 18은 디스플레이 성능 패킷의 포맷을 도시한다.
도 19는 키보드 데이터 패킷의 포맷을 도시한다.
도 20은 포인팅 장치 데이터 패킷의 포맷을 도시한다.
도 21은 링크 중단 패킷의 포맷을 도시한다.
도 22는 디스플레이 요구 및 상태 패킷의 포맷을 도시한다.
도 23은 비트 블록 전송 패킷의 포맷을 도시한다.
도 24는 비트맵 영역 채움 패킷의 포맷을 도시한다.
도 25는 비트맵 패턴 채움 패킷의 포맷을 도시한다.
도 26은 통신 링크 데이터 채널 패킷의 포맷을 도시한다.
도 27은 인터페이스 타입 핸드오프 요청 패킷의 포맷을 도시한다.
도 28은 인터페이스 타입 확인응답 패킷의 포맷을 도시한다.
도 29는 수행 타입 핸드오프 패킷의 포맷을 도시한다.
도 30은 순방향 오디오 채널 인에이블 패킷의 포맷을 도시한다.
도 31은 역방향 오디오 샘플 레이트 패킷의 포맷을 도시한다.
도 32는 디지털 컨텐츠 보호 오버헤드 패킷의 포맷을 도시한다.
도 33은 투명 컬러 인에이블 패킷의 포맷을 도시한다.
도 34는 라운드 트립 지연 특정 패킷의 포맷을 도시한다.
도 35는 라운드 트립 지연 특정 패킷 동안 이벤트 타이밍을 도시한다.
도 36은 본 발명에서 사용된 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은 마진 라운드 트립 지연 특정을 도시한다.
도 52는 역방향 링크 데이터 레이트 변화를 도시한다.
도 53은 역방향 속도 분할기 대 순방향 링크 데이터 레이트의 값에 대한 그래프를 도시한다.
도 54a 및 도 54b는 인터페이스의 동작시 수행된 단계를 도시한다.
도 55는 본 발명의 실시예를 구현하기 위한 드라이버, 수신기, 프로세서 및 상태머신을 전체적으로 도시한다.
Ⅰ. 개요
본 발명의 일반적인 원리에 따르면, "직렬"형 데이터 링크 또는 채널을 사용하여 호스트 장치와 디스플레이 장치 사이에 짧은 거리의 통신 링크를 통해 고속 또는 초고속 데이터 전송을 가능케 하는 비용-효율적이며 저전력을 소비하는 전송 메커니즘을 제공하는 이동 디스플레이 디지털 인터페이스(MDDI)가 제공된다. 이러한 메커니즘은 휴대용 컴퓨터, 무선 통신 장치 또는 엔터테인먼트 장치에 대한 탈착형 마이크로-디스플레이(고글 또는 프로젝터)와 같은 디스플레이 엘리먼트 또는 장치에서 특히 유용한 소형 커넥터 및 얇은 플렉서블 케이블로 구현될 수 있다.
본 발명은 일반적으로 오디오, 비디오 또는 멀티매체 애플리케이션을 위한 대량의 데이터를 데이터가 발생된 또는 저장된 호스트 또는 소스 장치로부터 클라이언트 디스플레이 또는 프리젠테이션으로 고속으로 통신하기 위한 여러 상황에서 사용된다. 이하에서 설명된 전형적인 애플리케이션은 무선 전화 또는 모뎀 또는 휴대용 컴퓨터로부터 작은 비디오 스크린과 같은 가상 디스플레이 장치 또는 작은 투사 렌즈 및 스크린을 포함하는 고글 또는 헬멧의 타입와 같은 탈착형 마이크로-디스플레이 애플리케이션으로 데이터를 전송하는 것이다.
MDDI의 특성 또는 성향은 특정 디스플레이 기술에 무관하다는 것이다. 이는 이러한 데이터의 내부 구조는 물론 데이터 또는 명령의 기능적 특징에 관계없이 고속으로 데이터를 전송하기에 매우 융통성있는 메커니즘이다. 이는 전송될 데이터 패킷의 타이밍을 조정가능하게 되도록 하여 특정 디스플레이 장치의 특징 또는 소정 장치에 대한 고유한 디스플레이 조건에 적응하거나 또는 몇몇 A-V 시스템용으로 조합된 오디오 및 비디오의 요구조건을 충족하도록 한다. 인터페이스는 선택된 프로토콜이 뒤따르는 경우 바로 디스플레이 엘리먼트 또는 클라이언트 장치 불가지론(agnostic)이다. 추가로, 총 직렬 링크 데이터 또는 데이터 레이트는 통신 시스템 또는 호스트 장치 설계자가 비용, 전력 요구조건, 클라이언트 장치 복잡성 및 디스플레이 장치 갱신율을 최적화하도록 하는 키기의 수배에 걸쳐 달라질 수 있다.
데이터 인터페이스는 주로 "유선" 신호 링크 또는 작은 케이블을 통해 대량의 고속 데이터를 전송하는데 사용하기 위해 제공된다. 하지만, 몇몇 애플리케이션에서 광학 기반 링크를 포함하여, 인터페이스 프로토콜에 대해 개발된 동일한 패킷 및 데이터 구조를 사용하도록 구성된 무선 링크를 이용할 수 있으며, 전력 소비 또는 복잡성은 여전히 현실적으로 충분히 낮게 원하는 전송 레벨을 유지할 수 있다.
Ⅱ. 환경
휴대용 또는 랩톱 컴퓨터(100) 및 무선 전화 혹은 PDA 장치(102)가 도시된 도 1a 및 도 1b에 오디오 재생 시스템(108, 110) 및 디스플레이 장치(104)와 각각 데이터를 통신하는 전형적인 애플리케이션이 도시된다. 무선 장치는 데이터를 현재 수신할 수도 있고, 무선 장치의 최종 사용자에 의해 시청 및/또는 청취하기 위한 이후의 프리젠테이션을 위해 메모리 엘리먼트 또는 장치내에 소정량의 멀티매체형 데이터를 이전에 저장할 수도 있다. 전형적인 무선 장치가 대부분의 시간 동안 비디오 및 단순한 문자 통신을 위해 사용되기 때문에, 무선장치는 장치(102) 사용자에게 정보를 통신하기 위해 다소 작은 디스플레이 스크린 및 간단한 오디오 시스템(스피커)을 가진다.
컴퓨터(100)는 훨씬 큰 스크린을 가지는데, 이는 여전히 부적절한 외부 음향 시스템을 가지며, 고화질 텔레비전 또는 영화 스크린과 같은 다른 멀티매체 장치에는 부적합하다. 컴퓨터(100)는 시청목적 및 대화형 비디오 게임과 같은 다른 타입의 프로세서로서 사용되고, 소비자 전자장치가 본 발명에서 사용될 수 있다. 컴퓨터(100)는 무선 모뎀 또는 무선 통신을 위해 장치 내에 내장된 다른 모뎀을 사용하지만 이에 국한되지는 않고, 필요에 따라 케이블 또는 무선 링크를 사용하여 이러한 장치에 연결된다.
이는 복잡하거나 "풍부한" 데이터를 가진 프리젠테이션의 사용을 만족스럽지 못하게 한다. 그러므로, 최종 사용자에게 정보를 제공하고 원하는 최소 레벨의 즐거움 또는 포지티브한 환경을 제공하기 위해 다른 메커니즘 및 장치에 대한 관련 산업이 개발되었다.
이전에 설명된 바와 같이, 여러 타입의 디스플레이 장치가 장치(100)의 최종 사용자에게 정보를 제공하기 위해 현재 개발중이다. 예를 들면, 하나 이상의 회사가 가상 디스플레이를 제공하기 위해 장치 사용자의 눈앞에 이미지를 투사하는 착용성 고글 세트를 개발하였다. 이러한 장치를 정확하게 위치시키면 사용자 눈으로 감지되는 경우 시각적 출력을 제공하는 엘리먼트보다 훨씬 큰 가상 이미지를 효과적으로 "투사"한다. 즉, 매우 작은 투사 엘리먼트가 전형적인 LCD 스크린 등에서 가능한 것보다 훨씬 큰 크기로 사용자의 눈으로 이미지를 "볼 수 있도록 한다". 큰 가상 스크린 이미지의 사용은 한정된 LCD 스크린 디스플레이에서 가능한 훨씬 높은 해상도 이미지를 사용할 수 있도록 한다. 다른 디스플레이 장치는 작은 LCD 스크린 또는 여러 평면 디스플레이 엘리먼트, 투사 렌즈 및 표면 등에 이미지를 투사하는 디스플레이 드라이버를 포함하지만 이에 국한되지는 않는다.
또한 신호를 다른곳에 전송하거나 이를 내부에 저장하는 다른 장치 또는 다른 사용자에게 출력을 제공하기 위해 무선 장치(102) 또는 컴퓨터(100)에 접속되거나 사용과 관련된 추가의 엘리먼트가 있을 수 있다. 예를 들면, 데이터는 이후 사용을 위해 기록가능 CD 매체 또는 자기테이프 기록기 및 유사 장치와 같은 자성 매체를 사용하여 광학 형태로 플래시 메모리에 저장된다.
추가로, 많은 무선 장치 및 컴퓨터가 내장형 MP3 음악 디코딩 성능 및 다른 발전된 음향 디코더와 시스템을 가진다. 휴대용 컴퓨터는 일반적으로 CD 및 DVD 재생 성능을 사용하며, 몇몇은 사전기록된 오디오 파일을 수신하기 위한 작은 전용 플래시 메모리 판독기를 가진다. 이러한 성능을 통해, 디지털 음악 파일은 매우 증가된 특징의 풍부한 경험을 보장하지만, 이는 디코딩 및 재생 프로세스가 유지될 수 있는 경우에만 그러하다. 디지털 비디오 파일에 대해서도 동일하다.
음향 재생을 보조하기 위해, 서브-우퍼 또는 전방과 후방 음향 투사용 "서라운드-음향" 스피커와 같은 추가의 엘리먼트가 부가될 수 있는 외부 스피커(108)가 도 1a에 도시된다. 동시에, 스피커 또는 이어폰(110)이 도 1b의 마이크로-디스플레이 장치(106)의 프레임 또는 메커니즘을 지원하기 위해 내장형으로 표시되어 있다. 공지된, 전력 증폭 또는 음향 성형 장치를 포함하는 다른 오디오 또는 음향 재생 엘리먼트가 사용될 수 있다.
어떠한 경우이든, 상술된 바와 같이, 하나 이상의 통신 링크(112)를 통해 데이터 소스로부터 최종 사용자에게로 고품질 또는 고해상 이미지 데이터와 고품질 오디오 정보 또는 데이터 신호를 전송하길 원한다면, 높은 데이터 레이트가 필요하다. 즉, 전송 링크(112)는 앞에서 설명된 바와 같은 데이터의 통신에서의 잠재적인 장애임이 명백하고, 시스템 성능을 제한하는데, 이는 현재의 전송 메커니즘이 전형적으로 요구되는 높은 데이터 레이트를 달성하지 못하기 때문이다. 예를 들어 상술된 바와 같이, 픽셀당 24-32개 비트의 컬러 폭과 30bps의 데이터 레이트를 가진 1024×1024 픽셀의 높은 이미지 해상도에 대해, 데이터 레이트는 336Mbps 이상을 초과하는 속도에 근접할 수 있다. 추가로, 이러한 이미지는 대화형 게임 혹은 통신, 명령, 제어 또는 신호로 잠재적으로 추가의 신호를 처리하고 오디오 데이터를 포함하는 멀티매체 프리젠테이션의 일부로서 제공되며, 추가로 데이터의 품질 및 데이터 레이트를 증가시킨다.
또한 데이터 링크를 설정하기 위해 적은 케이블 또는 상호연결이 요구될수록 디스플레이와 관련된 이동 장치의 사용이 더 용이하고, 더 많은 사용자에 의해 채택될 확률이 높아질 것이다. 이는 완전한 오디오-가상 환경을 설정하는데 다수의 장치가 공통으로 사용되는 경우, 특히 디스플레이 및 오디오 출력 장치의 품질 레벨이 증가할 때 그러하다.
불행히도, 이러한 높은 데이터 레이트는 데이터를 전달하는데 가용한 현재 기술을 넘어선다. 전송 데이터에 대해 사용 가능한 전류를 초과한다. 필요한 것은 프리젠테이션 엘리먼트와 데이터 소스 사이의 데이터 전송 링크 또는 통신 경로에 대해 저전력, 경량의 간단하고 경제적인 케이블 구조를 가능하게 하며, 고속으로 데이터를 전송하는 기술이다. 출원인들은 이동, 휴대용 또는 심지어 고정 위치 장치가 원하는 디스플레이, 마이크로-디스플레이 또는 오디오 전송 엘리먼트에 매우 높은 데이터 레이트로 데이터를 전송할 수 있으면서도 원하는 저전력 소비 및 복잡성을 유지하도록 하는 목적을 달성하기 위해 새로운 기술 또는 방법과 장치를 개발하여 왔다.
Ⅲ. 고속 디지털 데이터 인터페이스 시스템 구조
새로운 장치 인터페이스를 형성하고 효율적으로 사용하기 위해, 저전력 신호를 사용하여 고속 전송 레이트를 제공하는 신호 프로토콜 및 시스템 구조가 생성되었다. 이러한 프로토콜은 인터페이스에 부과된 명령 또는 동작 구조와 함께 미리 선택된 데이터 세트 또는 데이터 타입를 통신하기 위한 프로토콜을 형성하도록 함께 연결된 패킷 및 명령 프레임 구조에 기초한다.
A. 개요
MDDI 링크를 통해 접속 또는 통신하는 장치는 호스트 및 클라이언트라 불리고, 클라이언트는 전형적으로 임의의 디스플레이 장치이다. 호스트에 의해 인에이블되면, 호스트로부터 디스플레이로의 데이터는 순방향(순방향 트래픽 또는 링크라 불림)으로 이동하고, 디스플레이로부터 호스트로의 데이터는 역방향(역방향 트래픽 또는 링크로 지칭됨)으로 이동한다. 이는 도 2에 도시된 바와 같은 기본 구성으로 도시된다. 도 2에서, 호스트(202)는 순방향 링크(208)와 역방향 링크(210)를 포함하는 것으로 도시되는 양방향 통신 채널(206)을 사용하여 클라이언트(204)로 연결된다. 하지만, 이들 채널은 데이터 전송 순방향 또는 역방향 링크 동작 사이에서 효율적으로 스위칭되는 공통 세트의 도체에 의해 형성된다.
호스트는 본 발명을 사용함으로써 얻을 수 있는 장점을 가지는 여러 타입의 장치중 하나이다. 예를 들면, 호스트(202)는 휴대용, 랩톱 또는 유사 이동 컴퓨팅 장치와 같은 휴대용 컴퓨터일 수 있고, 이는 PDA, 호출 장치 또는 많은 무선 전화 또는 모뎀중 하나일 수 있다. 동시에, 클라이언트(204)는 최종 사용자에게 정보를 제공하기 위해 사용되는 여러 장치를 포함할 수 있다. 예를 들면, 고글 또는 안경에 결합된 마이크로-디스플레이, 모자 또는 헬멧에 장착된 투사 장치, 소형 스크린 또는 심지어 자동차의 창문이나 앞유리에 내장된 홀로그램 엘리먼트, 또는 여러 스피커, 핸드폰 또는 고품질 음향이나 음악을 제공하기 위한 음향 시스템이다. 하지만, 당업자라면 본 발명이 이들 장치에 국한되지 않는다는 것을 쉽게 알 수 있을 것이고, 저장과 전송의 관점에서 또는 재생에서의 프리젠테이션의 관점에서 고품질 이미지와 음향을 최종 사용자에게 제공하기 위한 목적을 위해 시중에 판매되는 다른 많은 장치가 가능하다. 본 발명은 원하는 사용자 환경을 실현하기 위해 필요한 높은 데이터 레이트를 수용하기 위해 여러 장치 사이에 데이터 스루풋을 증가시키는데 사용된다.
B.인터페이스 타입
MDD 인터페이스는 통신 및 컴퓨터 산업에서 발견되는 5개 이상의 별개의 물리적인 타입의 인터페이스를 지칭하는 것으로 고려된다. 이들은 간단히 I형, II형, III형, IV형, 및 U형으로 지칭된다.
I형 인터페이스는 이동 또는 무선 전화, PDA, e-북, 전자 게임 및 CD 플레이어와 같은 휴대용 매체 플레이어 또는 MP3 플레이어 및 전자 소비자 기술의 유사 타입에서의 장치에 적합한 6-와이어(도체) 인터페이스로서 구성된다. U형 인터페이스는 랩톱, 노트북, 또는 데스크톱 개인용 컴퓨터 및 이와 유사한 장치나 애플리케이션에 적합한 8-와이어(도체) 인터페이스로서 구현되고, 이는 디스플레이가 빠르게 갱신될 것을 요구하지 않으며 내장형 MDDI 링크 제어기를 가지지 않는다. 이러한 인터페이스 타입은 추가의 2-와이어 유니버설 시리얼 버스(USB) 인터페이스의 사용에 의해 구별되고, 이는 현재 동작하는 시스템 또는 대부분의 개인용 컴퓨터에서 발견되는 소프트웨어 지원을 수용하는데 사용된다. U형 인터페이스는 디스플레이가 예를 들면 컴퓨터 또는 유사 장치상에서 표준 USB 포트에 연결되는 USB 커넥터를 가지는 USB-전용 모드에서 사용될 수 있다.
II형, III형 및 IV형 인터페이스는 고성능 디스플레이에 적합하고 데이터 신호의 적절한 차폐 및 저손실 전송을 제공하기 위해 추가의 연선형 도체를 가진 더욱 복잡한 배선을 사용한다.
I형 인터페이스는 디스플레이, 오디오, 제어 및 제한된 시그널링 정보를 포함할 수 있고, 전형적으로 고해상도 전속력 비디오 데이터를 필요로 하지 않는 장치에서 사용되는 신호를 전달한다. 이러한 타입의 인터페이스는 주로 이동 무선 장치와 같은 장치를 위해 고안되었고, 여기서 USB 호스트는 전형적으로 신호의 연결 및 전송을 위해 이러한 장치 내에서 사용불가능하다. 이러한 구성에서, 이동 장치는 MDDI 호스트 장치이고, 호스트로부터 통신 링크를 제어하는 "마스터"로서의 역할을 하며, 이는 일반적으로 클라이언트로 디스플레이 데이터를 송신한다(순방향 트래픽 또는 링크).
상기 인터페이스에서, 호스트는 클라이언트가 특정 기간 동안의 버스를 차지하여 역방향 패킷으로서 데이터를 호스트에 전송하도록 하는 특정 명령 또는 패킷 타입을 클라이언트로 전송함으로써 호스트에서 클라이언트로부터(역방향 트래픽 또는 링크)의 통신 데이터의 수신을 인에이블한다. 이것은 도3에 도시되어 있는데, 인캡슐레이션 패킷(이하에서 논의되는)으로 지칭되는 패킷 타입이 역방향 링크가 생성되어 상기 송신 링크 상에서 역방향 패킷들을 전송하는데 적합하게 사용되고 있다. 데이터를 위해 디스플레이를 폴하기 위해 상기 호스트에 할당되는 상기 시간 간격은 상기 호스트에 의해 미리 결정되며, 각 특정 애플리케이션의 요구에 근거한다. 상기 타입의 양방향 1/2-듀플렉스 데이터 전송은 특히 USB 포트가 정보 또는 클라이언트로부터의 데이터를 전송하기에 사용될 수 없는 경우에 바람직하다.
타입-U 인터페이스는 랩탑 및 데스크탑 애플리케이션들에 적절히 사용될 수 있는 신호들을 전송하는데, USB 인터페이스는 광범위한 양의 마더보드들 또는 다른 하드웨어에 의해 그리고 시스템 소프트웨어를 작동함으로써 넓게 지원된다. 추가된 USB 인터페이스의 사용은 "플러그 앤 플레이" 특성과 쉬운 애플리케이션 구성을 가지고 사용될 수 있도록 한다. 또한 USB의 포함은 통상적인 목적의 양방향 명령, 상태, 오디오, 데이터 등의 흐름을 가능하게 하며, 상기 클라이언트 기기를 위한 비디오와 오디오 데이터는 낮은 전력과 높은 속도로 상기 연선을 사용하여 전송될 수 있다. USB 인터페이스를 사용하는 본 발명의 실시예는 하나의 컨덕터 세트 상에서 고속으로 전송될 수 있도록 하며, 사용하지 않는 경우에 차단되어 거의 전력을 소모하지 않는 USB 연결상에서 시그널링 및 제어를 구현한다.
상기 USB 인터페이스는 헌대의 개인 컴퓨터 기기에 대한 광범위한 표준으로 사용되며, USB 인터페이스와 그것의 작동에 대한 상세한 사항은 당업계에 공지되어 있으므로 이하에서는 설명하지 않는다. USB 인터페이스에 대해서, 호스트와 디스플레이 사이의 통신은 범용 직렬 버스 규격 버전 2.0을 따른다. USB가 기본적인 시그널링 채널이고 가능하다면 음성 반환 채널인 타입-U 인터페이스가 사용되는 애플리케이션에서, 호스트가 MDDI 직렬 데이터 신호들을 통해 상기 클라이언트를 폴하는 것은 선택적이다.
HDTV 타입 또는 고해상도가 가능한 고성능 디스플레이는 완전 모션 비디오를 지원하기 위해 1.5Gbps 속도 데이터 스트림을 요구한다. 타입-Ⅱ인터페이스는 병렬로 2비트를 전송함으로써 타입-3는 병렬로 4비트를 지원함으로써, 그리고 타입-4 인터페이스는 병렬로 8비트를 전송함으로써 고속 데이터 속도를 지원한다. MDDI에 사용되는 프로토콜은 무엇이 사용될 수 있는 가장 높은 데이터 속도인지를 협상하여 타입-1, 2, 3, 4 호스트 각각이 어느 일정한 타입 1, 2, 3, 4 클라이언트 또는 디스플레이와 통신할 수 있도록 한다. 최소 가능 기기로 언급될 수 있는 기기의 성능과 가능한 특징들이 상기 링크의 성능을 설정하는데 사용될 수 있다. 일반적으로, 호스트와 클라이언트 모두가 타입-2, 3 또는 4 인터페이스를 사용할 수 있는 시스템에서 조차도, 양쪽은 타입-1 인터페이스로 작동하기 시작한다. 호스트는 다음으로 타켓 클라이언트 또는 디스플레이의 성능을 결정하고 핸드-오프 또는 특정 애플리케이션에 적절한 타입-2, 3, 4 모드로 작동하기 위한 재구성을 협상한다.
일반적으로, 호스트는 적절한 링크-계층 프로토콜을 사용하거나, 일정한 시간에 전력을 절약하기 위해 더 느린 모드로 작동하도록 재구성 또는 스텝 다운하거나 초고속 분해능 디스플레이 컨텐츠와 같은 고속 전송을 지원하기 위해 빠른 모드로 스텝 업될 수 있다. 예를 들어, 디스플레이 시스템이 배터리와 같은 전력 소스로부터 AC 전력으로 스위칭될 때 또는 디스플레이 매체의 소스가 더 낮은 또는 더 높은 분해능 포맷으로 스위칭될 때, 또는 이들의 결합 또는 다른 조건들 또는 이벤트들이 디스플레이 또는 데이터 전송 모드의 변화를 위한 기본으로 고려되는 경우에 호스트는 디스플레이 모드를 변경할 수 있다.
또한, 시스템은 하나의 모드를 사용하여 한 방향으로 통신하고 또 다른 모드를 사용하여 다른 방향으로 통신할 수 있다. 예를 들어, 타입 4 인터페이스 모드는 고속으로 디스플레이하기 위해 데이터를 전송하는데 사용되며, 타입1 또는 타입U 모드는 키보드 또는 프린팅 기기와 같은 주변 기기로부터 호스트 기기로 데이터를 전송하는데 사용된다.
C. 물리적 인터페이스 구조
호스트와 클라이언트 기기 사이의 통신을 설정하는 일반적인 기기 또는 링크의 배치가 도 4와 도 5에 도시되어 있다. 도 4와 도 5에서, MDDI 링크 제어기(402)가 호스트 기기(202)에 장착되어 있는 것으로 도시되어 있으며, MDDI 링크 제어기(404)는 클라이언트 기기(204)에 장착되어 있는 것으로 도시되어 있다. 이전과 같이, 호스트(202)가 직렬 컨덕터를 포함하고 있는 양방향 통신 채널(406)을 사용하여 클라이언트(204)에 연결되어 있다. 이하에서 논의되는 것과 같이, 호스트와 클라이언트 링크 제어기들은 모두 호스트 제어기(드라이버) 또는 클라이언트 제어기(수신기)로서 동작하도록 프로그램되거나 조절되거나 또는 설정될 수 있는 단일 회로 설계를 사용하여 집적회로로 제작될 수 있다. 이것은 단일 회로 설계의 다량 제작으로 기인하여 더 낮은 비용으로 제공될 수 있다.
도 4에서, USB 호스트 기기(408)와 USB 클라이언트 기기(410)은 상기 MDDI의 타입 U 인터페이스 버전의 구현에서 사용되기 위해 도시되어 있다. 상기와 같은 기능들을 구현하는 회로와 기기는 당업계에 공지되어 있으며, 따라서 이하에서는 자세히 설명하지 않는다.
도 5에서, MDDI 링크 제어기(502)는 호스트 기기(202')에 장착되어 있는 것으로 도시되어 있으며, MDDI 링크 제어기(504)는 클라이언트 기기(204')에 장착되어 있는 것으로 도시되어 있다. 이전과 같이, 호스트 기기(202')는 직렬의 컨덕터들을 포함하고 있는 양방향 통신 채널(506)을 사용하여 클라이언트(204')에 연결된다. 이전에 논의한 것과 같이, 호스트와 클라이언트 링크 제어기들 모두는 단일 회로 설계를 사용하여 제작될 수 있다.
MDDI 링크 또는 물리적 컨덕터들 상에서 호스트와 디스플레이 기기와 같은 클라이언트 사이에서 전송되는 신호들이 도 4와 5에 도시되어 있다. 도 4와 5에 도시되어 있는 것과 같이, 상기 MDDI를 통해 데이터를 전송하는 주요 경로 또는 메커니즘은 MDDI_Data0+/-와 MDDI_Stb+/-로 라벨되어 있는 데이터 신호들을 사용한다. 이러한 각각의 데이터 신호들은 케이블의 차동 쌍의 전선을 통해 전송되는 저 전압 데이터 신호들이다. 상기 인터페이스를 통해 전송되는 각 비트에 대해 MDDI_Data0+/- 쌍과 MDDI_Stb 쌍에서 단지 하나의 전이(transition)가 존재한다. 이는 전류 기반이 아니라, 전압 기반 전달 메커니즘이며, 따라서 정적 전류 소비는 거의 제로이다. 호스트는 상기 MDDI_Stb 신호들을 클라이언트 디스플레이로 구동한다.
데이터는 상기 MDDI_Data 쌍에서 순방향 또는 역방향으로 흐를 수 있으며(즉, 양방향 전송 경로), 호스트는 마스터 또는 데이터 링크의 제어기이다. MDDI_Data0와 MDDI_Stb 신호 경로들은 잡음 제거를 최대화하기 위해 차동 모드에서 작동한다. 라인 상에서의 신호를 위한 데이터 속도는 호스트에서 전송된 클락 속도에 의해 결정되며, 1kbps에서 400Mbps 또는 그 이상까지의 범위에서 변화할 수 있다.
타입-2 인터페이스는 MDDI_Data1+/-으로 언급되는, 타입-1에 비해 하나의 추가적인 데이터 쌍 또는 컨덕터 또는 경로를 포함하고 있다. 타입-3 인터페이스는 MDDI_Data2+/-와 MDDI_Data3+/-으로 언급되는, 타입-2 인터페이스에 비해 2개의 추가적인 데이터 쌍 또는 신호 경로를 포함하고 있다. 타입-4 인터페이스는 MDDI_Data4+/-, MDDI_Data5+/-, MDDI_Data6+/- 및 MDDI_Data7+/-으로 각각 언급되는, 타입-3 인터페이스에 비해 4개의 추가적인 데이터 쌍 또는 신호 경로들을 포함하고 있다. 상기 인터페이스 구조 각각에서, 호스트는 연선 또는 MDDI_Pwr과 MDDI_Gnd로 언급되는 신호를 사용하여 전력을 클라이언트 또는 디스플레이로 전송한다.
타입 U 구조만을 위해 사용 가능한 전송 타입은 MDDI USB 접속 또는 신호 경로이다. MDDI USB 접속은 호스트와 클라이언트 디스플레이 사이의 통신을 위한 제2 경로를 포함한다. 특정 애플리케이션에서, 상대적으로 낮은 데이터 속도로 호스트와 클라이언트 사이에서 일정한 정보를 전송하는 것이 바람직하다. USB 전송 링크를 사용하는 것은 기기로 하여금 USB 호스트 또는 MDDI 호환 클라이언트와 통신할 수 있는 제한된 호스트 또는 U 타입 인터페이스를 장착하고 있는 디스플레이를 가지고 있는 MDDI 링크 제어기 없이도 가능하게 한다. USB 인터페이스 상에서 유용하게 디스플레이로 전송될 수 있는 정보는 정적 비트맵, 디지털 오디오 스트림들, 포인팅 기기 데이터, 키보드 데이터 및 제어 및 상황 정보이다. 상기 USB 인터페이스를 통해 지원되는 모든 기능들은 제1 MDDI 고속 직렬 데이터 경로를 사용하여 구현될 수 있다. 상기 정의된 데이터는 USB 타입 인터페이스 상에서 전송될 수 있지만, 백-투-백 패킷 타입의 일련의 데이터를 요구하는 것은 상기 USB 인터페이스에 적용되지 않으며, MDDI 타입 핸드오프를 지원하는 패킷을 사용하지 못한다.
호스트와 클라이언트(디스플레이) 사이에서 MDDI 링크를 통해 전송되는 신호들의 요약이 인터페이스 타입에 따라 테이블 1에 도시되어 있다.
테이블 1
타입-1 MDDI_Pwr/Gnd MDDI_Stb+/- MDDI_Data0+/- 타입-U MDDI_Pwr/Gnd MDDI_Stb+/- MDDI_Data0+/- MDDI_USB+/- 타입-2 MDDI_Pwr/Gnd MDDI_Stb+/- MDDI_Data0+/- MDDI_Data1+/- 타입-3 MDDI_Pwr/Gnd MDDI_Stb+/- MDDI_Data0+/- MDDI_Data1+/- MDDI_Data2+/- MDDI_Data3+/- 타입-4 MDDI_Pwr/Gnd MDDI_Stb+/- MDDI_Data0+/- MDDI_Data1+/- MDDI_Data2+/- MDDI_Data3+/- MDDI_Data4+/- MDDI_Data5+/- MDDI_Data6+/- MDDI_Data7+/-
상기 구조와 작동을 구현하는데 사용되는 일반적인 케이블링은 공칭적으로 1.5미터의 배수이며, 컨덕터의 3개의 연선 쌍을 포함하고 있는데, 각각은 교대로 다중 가닥 30AWG 전선이다. 얇은 막의 보호 커버링이 덮여져 있거나 또는 추가적인 드레인 전선으로서 상기 3개의 연선 쌍 위에 형성되어 있다. 상기 연선 쌍과 보호 드레인 컨덕터는 디스플레이(클라이언트)를 위한 보호막에 연결되어 있는 보호막을 가지고 있는 디스플레이 연결자에서 종료되며, 당업계에서 공지되어 있는 것과 같이 전체 케이블을 커버링하는 인슐레이팅 계층이 존재한다. 상기 전선들은 다음과 같이 쌍이 지워진다: MDDI-Gnd와 MDDI_Pwr; MDDI_Stb+와 MDDI_Stb-; MDDI_Data0+와 MDDI_Data0-; MDDI_Data1+와 MDDI_Data1- 등등. 공칭 케이블의 지름은 공칭 임피던스 85옴±10%와 1000피트 당 공칭 110옴의 DC 저항을 가지고 있는 3.0mm의 배수이다. 신호 전파 속도는 공칭 0.66c이며, 상기 케이블 상에서 최대 지연은 8.0nsec이하이다.
D. 데이터 타입과 속도
사용자 경험과 애플리케이션의 모든 범위를 위한 유용한 케이블을 달성하기 위해, 이동 디지털 데이터 인터페이스(MDDI)는 여러 디스플레이들과 통합될 수 있거나 또는 제어 정보에 의해 이동 디스플레이와 조화되어 작동하는 디스플레이 정보, 오디오 트랜듀서, 키보드, 포인팅 기기 및 다른 입력 기기 및 이들의 조합을 위한 지원을 제공한다. MDDI 인터페이스는 최소한의 케이블 또는 컨덕터를 사용하여 순방향 또는 역방향으로 호스트와 클라이언트 사이에서 전송되는 데이터 스트림의 여러 잠재적인 타입을 수용할 수 있도록 설계되어 있다. 등시성 스트림과 비등시성 스트림 모두가 지원된다. 총 데이터 속도가 최대 바람직한 MDDI 링크 속도이하로 유지되는 한, 많은 데이터 타입들의 조합이 사용될 수 있다. 이것들은 이하의 테이블 2와3에 제시되어 있는 아이템을 포함하지만, 이에 한정되지는 않는다.
테이블2
호스트로부터 클라이언트로 전송
등시성 비디오 데이터 720x480, 12비트,30f/s ~124.5Mbps
등시성 스트레오 오디오 데이터 44.1kHz, 16비트,스트레오 ~ 1.4Mbps
비등시성 그래픽 데이터 800x600, 12비트,10f/s,스트레오 ~ 115.2Mbps
비등시성 제어 최소 <<10Mbps


테이블3
클라이언트에서 호스트로 전송
등시성 음성 데이터 8kHz, 8비트 <<1.0Mbps
등시성 비디오 데이터 640x480, 12비트, 24f/s ~ 88.5Mbps
비등시성 상태, 사용자 입력 등 최소 << 1.0Mbps
상기 인터페이스는 고정되지 않고 연장될 수 있으므로, 미래의 시스템에 사용되도록 사용자 정의된 데이터를 포함하는 여러 "타입" 정보의 전송을 지원할 수 있다. 수용될 수 있는 데이터의 특정 예들은 완전 또는 부분적인 스크린 비트맵 필드의 타입이거나 또는 압축 비디오인 완전 모션 비디오, 전력과 구현 비용을 절감하기 위한 낮은 속도의 정적 비트맵, PCM 또는 여러 분해능과 속도의 압축된 오디오 데이터; 포인팅 기기 위치 및 선택 및 정의할 수 있는 사용자 정의된 데이터이다. 상기와 같은 데이터는 또한 기기 성능을 검색하기 위한 또는 작동 파라미터들을 설정하기 위한 제어 상황 정보와 함께 전송될 수 있다.
본 발명은 영화(비디오 디스플레이 및 오디오)를 감상하거나, 제한된 개인적인 시야(종종 비디오와 오디오와 연결되어 있는 그래픽 디스플레이)를 가지고 있는 개인 컴퓨터를 사용하거나, PC, 콘솔 또는 개인 기기(모션 그래픽 디스플레이 또는 종합 비디오와 오디오)에서 비디오 게임을 하거나, 인터넷을 서핑하거나, 비디오 폰의 타입(양방향 낮은 속도 비디오 및 오디오)로 기기를 사용하거나 정지 디지털 사진을 위한 카메라 또는 디지털 비디오 이미지들을 캡쳐링하기 위한 캠코더 및 셀룰러 전화, 스마트 폰 또는 PDAs를 가지고 하는 엔터테인먼트와 성능 강화를 포함하는 그러나 이에 제한되지 않는 데이터 전송에 사용하는 진보된 기술이다.
이하에서 논의되는 이동 데이터 인터페이스는 전선 또는 케이블 타입의 링크로 구성되어 있는 통신 또는 전송 링크 상에서 많은 양의 A-V 타입의 데이터를 제공하기 위한 것이다. 그러나, 상기 신호 구조, 프로토콜, 타이밍 또는 전송 메커니즘은 바람직한 레벨의 전송을 유지한다면, 광학 또는 무선 매체 타입의 링크로 제공되도록 조절될 수 있다는 것은 자명하다.
MDD 인터페이스 신호들은 기본 신호 프로토콜 또는 구조를 위한 공통 프레임(CF)으로 알려진 개념을 사용한다. 공통 프레임 레이트의 사용을 통해 동시적인 등시성 데이터 스트림에 동기화 펄스를 제공하게 된다. 디스플레이 기기는 상기 공통 프레임 속도를 시간 기준으로 사용할 수 있다. 낮은 CF 속도는 서브-프레임 헤더를 전송하는 오버헤드를 감소시킴으로써 채널 효율성을 증가시킨다. 한편, 높은 CF 속도는 대기시간을 감소시키며 오디오 샘플들을 위한 더 작은 탄력적인 데이터 버퍼를 허용한다. 본 발명 인터페이스의 CF 속도는 능동적으로 프로그램가능하며, 특정 애플리케이션에서 사용되는 등시성 스트림을 위해 적절한 많은 값들 중에서 하나로 설정될 수 있다. 즉, CF 값은 소정의 디스플레이 기기와 호스트 구조에 가장 적합하도록 선택된다.
헤드 장착된 마이크로 디스플레이와 같은 애플리케이션에서 사용될 수 있는 등시성 데이터 스트림을 위한, 조절가능하고 프로그램 가능한 공통 프레임 당 일반적으로 요구되는 바이트의 수가 테이블4에 도시되어 있다.
테이블4
공통 프레임 속도(CFR)=1200Hz
X Y 비트 프레임 속도 채널 속도(Mbps) 바이트/CFR
DVD영화 720 480 12 30 1 124.4 12960
스트레오그래픽 800 600 12 10 2 115.2 12000
캠코더 640 480 12 24 1 88.5 9216
CD 오디오 1 1 16 44100 2 1.4 147
음성 1 1 8 8000 1 0.1 6.7
공통 프레임 당 비트의 분수(fractional)) 카운트는 간단히 프로그램 가능한 M/N 카운터 구조를 사용하여 쉽게 구해질 수 있다. 예를 들어, CF 당 26-2/3 바이트의 카운트는 27바이트의 2개의 프레임을 전송함으로써 구현되는데, 여기서 각각의 프레임에 뒤이어 26바이트의 하나의 프레임이 뒤따른다. 더 작은 CF 속도는 CF 당 정수의 바이트를 생산하기 위해 선택될 수 있다. 그러나, 일반적으로 말해서, 하드웨어에서 간단한 M/N 카운터를 구현하는 것은 큰 오디오 샘플 FIFO 버퍼를 위해 요구되는 영역보다 더 작은, 본 발명의 일부 도는 전부를 구현하는데 사용되는 집적회로 내의 영역을 필요로 한다.
서로 다른 데이터 전송 속도의 효과를 도시하고 있는 예시적인 애플리케이션과 데이터 타입은 가라오케 시스템이다. 가라오케 시스템에서, 시스템 사용자는 음악 비디오 프로그램을 이용하여 노래를 한다. 노래의 가사가 스크린의 하단에 디스플레이되고 따라서 사용자는 부를 노래의 가사와 노래의 타이밍을 알 수 있다. 이러한 애플리케이션은 그래픽이 가끔씩 업데이트되는 비디오 디스플레이와 스트레오 오디오 스트림을 사용자의 음성과 믹스하는 것을 요구한다.
공통 프레임 속도가 300Hz라고 가정하면, 각 CF는 순방향 링크 상에서 디스플레이 기기로의 92,160 바이트의 비디오 켄텐츠와 588바이트의 오디오 켄텐츠(스트레오 147 16비트 샘플들) 으로 구성되어 있으며, 29.67(26-2/3) 바이트의 음성이 마이크로폰에서 이동 가라오케 기계로 반환되어 전송된다. 비등시성 패킷들은 호스트와 디스플레이 사이에서 전송된다. 이것은 적어도 768 바이트의 그래픽 데이터(1/4 높이의 스크린)와 잡다한 제어 및 상황 명령을 위한 2001바이트보다 적은 데이터를 포함하고 있다.
테이블5는 상기 가라오케 예를 위해 공통 프레임 안에서 어떻게 데이터가 할당되는지를 도시하고 있다. 사용되는 전체 속도는 225Mbps로 선택된다. 약간 빠른 226Mbps의 속도는 서브 프레임 당 400바이트의 데이터가 전송될 수 있도록 하며, 그것은 이따금씩의 제어와 상황 메시지의 사용을 가능하게 한다.
테이블 5
구성요소 속도 바이트/CF
640x480 픽셀 및 30fps의 음악 비디오 92160
640x120 픽셀 및 1fps의 가사 768
44,100sps, 스트레오, 16비트의 CD 오디오 588
8000sps, 모노, 8비트의 음성 26.67
서브-프레임 헤더 19
역방향 링크 오버헤드 26.67+2*9+20
전체 바이트/CF 93626.33
전체 속도(Mbps) 224.7032
E.링크 계층
MDD 인터페이스 고속 시리얼 데이터 신호들을 사용하여 전송되는 데이터는 차례로 링크되어 있는 시간 다중 패킷들의 스트림으로 구성되어 있다. 전송장치가 전송할 데이터를 하나도 가지고 있지 않을 때, MDDI 링크 제어기는 자동적으로 채움 패킷을 전송하며, 따라서 패킷들의 스트림을 유지한다. 간단한 패킷 구조의 사용은 비디오와 오디오 신호 또는 데이터 스트림들의 신뢰할 수 있는 등시성 타이밍을 보장한다.
패킷들의 그룹들이 서브 프레임들로 언급되는 신호 구성요소 또는 구조들안에 포함되어 있으며, 서브 프레임들의 그룹들은 매체 프레임으로 언급되는 신호 구성요소들 또는 구조에 포함되어 있다. 서브 프레임은 패킷들의 사이즈와 데이터 전송 사용에 근거하여 하나 이상의 패킷들을 포함하며, 매체 프레임은 하나 이상의 서브 프레임을 포함하여야 한다. 본 발명에 의해 사용되는 프로토콜에 의해 제공되는 가장 큰 서브 프레임은 223-1 또는 4,294,967,295바이트이며, 가장 큰 매체 프레임의 크기는 216-1 또는 65,535 서브 프레임이 된다.
이하에서 논의되는 것과 같이, 특정 헤더 패킷은 각 서브 프레임의 시작부에 있는 고유 식별자를 포함하고 있다. 상기 식별자는 또한 호스트와 클라이언트 사이에서 통신이 시작될 때, 상기 클라이언트 기기에서 프레임 타이밍을 획득하는데 사용된다. 링크 타이밍 획득은 이하 보다 자세히 논의된다.
전형적으로, 완전 모션 비디오가 디스플레이될 때, 디스플레이 스크린은 매체 프레임마다 한번씩 갱신된다. 디스플레이 프레임 속도는 매체 프레임 속도와 동일하다. 링크 프로토콜은 바람직한 애플리케이션에 따라 전체 디스플레이 상에서 또는 정적 이미지에 의해 둘러 쌓여져 있는 완전 모션 비디오 켄텐츠의 작은 부분 상에서 완전 모션 비디오를 지원한다. 웹 페이지나 또는 전자 메일과 같이 낮은 전력을 사용하는 이동 애플리케이션에서, 디스플레이 스크린은 단지 가끔식 갱신될 필요가 있다. 그러한 상황에서, 단일 서브-프레임을 전송하고 전력 소비를 줄이기 위해 상기 링크를 차단하는 것이 바람직하다. 상기 인터페이스는 또한 스트레오 버전과 같은 효과를 지원하고 원(primitive) 그래픽을 처리한다.
서브 프레임은 주기적인 방식으로 높은 우선 순위를 가지고 있는 패킷들의 전송이 가능하도록 하기 위해 존재한다. 이것은 동시에 등시성 스트림이 최소한의 데이터 버퍼링과 함께 존재할 수 있도록 한다. 이는 디스플레이 프로세스에 대해 본 발명이 제공하는 하나의 장점이며, 다수의 데이터 스트림(비디오, 음성, 제어, 상황, 포인팅 기기 등의 고속 통신)이 본질적으로 공통 채널을 공유할 수 있도록 한다. 이는 상대적으로 작은 신호들을 사용하여 정보를 전송한다. 또한, 수평 동기화 펄스와 CRT 모니터를 위한 귀선 소거 기간과 같은 디스플레이 기술 특정 활동이 존재할 수 있도록 한다.
F. 링크 제어기
도 4와 도 5에 도시되어 있는 MDDI 제어기는 MDDI 데이터와 스트로브 신호들을 수신하는데 사용되는 차동 라인 수신기들을 제외하고는 완전한 디지털 구현으로 제작되거나 어셈블링된다. 아날로그 함수들 또는 위상 동기 루프(PLLs)가 상기 링크 제어기를 위한 하드웨어의 구현을 위해 요구되지 않는다. 호스트와 디스플레이 링크 제어기들은 링크 동기화를 위한 상태 머신을 포함하고 있는 디스플레이 인터페이스를 제외하고는 거의 유사한 기능을 포함하고 있다. 따라서, 본 발명은 호스트 또는 클라이언트로 구성될 수 있는 단일 제어기 설계 또는 회로를 생성할 수 있는 장점을 가지고 있으며, 전체적으로 상기 링크 제어기들의 제작 비용을 절감할 수 있다.
Ⅳ. 인터페이스 링크 프로토콜
A. 프레임 구조
패킷 전송을 위한 순방향 링크 통신을 구현하는데 사용되는 단일 프로토콜 또는 프레임 구조가 도 6에 도시되어 있다. 도 6에 도시되어 있는 것과 같이, 정보 또는 디지털 데이터는 패킷으로 공지되어 있는 구성요소들로 그룹된다. 다수의 서브 프레임들은 매체 프레임을 형성하기 위해 그룹된다. 프레임들의 형성과 서브 프레임들의 전송을 제어하기 위해, 각 서브 프레임은 서브-프레임 헤더 패킷(SHP)으로 언급되는 정의된 패킷에서 시작한다.
호스트 기기는 소정의 전송을 위해 사용되는 데이터 속도를 선택한다. 상기 속도는 호스트의 최대 전송 성능 또는 소스로부터 호스트에 의해 검색되는 데이터와 디스플레이 최대 성능 또는 데이터가 전송되는 다른 기기에 근거하여 호스트에 의해 능동적으로 변경될 수 있다.
MDDI 또는 혁신적인 신호 프로토콜과의 동작을 위해 설계되고, 이들과 동작할 수 있는 수신 클라이언트 장치는 사용할 수 있는 최대, 또는 현재 최대, 데이터 전달 레이트를 결정하기 위해서 대기될 수 있고, 또는 사용가능한 데이터 타입들 및 지원되는 특징들뿐만 아니라 보다 낮은 디폴트 최소 레이트가 사용될 수 있다. 상기 정보는 이하에서 보다 자세히 설명되는 것과 같이 디스플레이 성능 패킷(DCP)을 사용하여 전송될 수 있다. 상기 클라이언트 디스플레이 기기는 데이터를 전송하거나 또는 소정의 최소 데이터 속도 또는 최소 데이터 범위 안에서 상기 인터페이스를 사용하여 다른 기기와 통신할 수 있으며, 호스트는 상기 클라이언트 기기의 완전 성능을 결정하기 위해 상기 범위 안에서 데이터 속도를 사용하여 대기열을 수행할 수 있다.
호스트는 현재의 서브 프레임에서 전송되는 데이터 패킷들이 더 이상 존재하지 않을 때 또는 호스트가 상기 순방향 링크의 선택된 데이터 전송 속도에 상응하는 충분한 속도로 전송할 수 없을 때, 채움 패킷들을 전송한다. 각 서브 프레임은 서브-프레임 헤더로 시작하기 때문에, 이전의 서브 프레임의 끝은 이전 서브 프레임을 채우는 패킷(대부분 채움 패킷)들을 포함한다. 데이터를 가지는 패킷들 자체를 위한 공간이 부족한 경우에, 채움 패킷은 서브 프레임에서 마지막 패킷이거나 또는 바로 이전의 서브 프레임의 끝에 그리고 서브-프레임 헤더 패킷 이전에 존재할 것이다. 서브 프레임 안에서 전송되는 각 패킷들이 서브 프레임에 존재하고 있는 충분한 공간을 보장하는 것이 호스트 기기에서의 제어 동작이다. 동시에, 호스트 기기가 데이터 패킷을 전송하기 시작하면, 호스트는 데이터의 언더-런 상태를 발생함이 없이, 프레임내에서 상기 사이즈의 패킷을 성공적으로 완료할 수 있어야 한다.
본 발명의 일 실시예의 일 양상에서, 서브 프레임 전송은 2개의 모드들을 가지고 있다. 하나의 모드는 실시간으로 비디오와 오디오 스트림을 전송하는데 사용되는 주기적 서브 프레임 모드이다. 상기 모드에서, 상기 서브 프레임 길이는 비-제로로 정의된다. 제2 모드는 새로운 정보가 사용될 수 있을 때만, 프레임들이 디스플레이 기기로 비트맵 데이터를 제공하는데 사용되는 비동기식 또는 비주기적 모드이다. 주기적인 모드가 사용될 때, 서브 프레임 수신은 디스플레이가 상기 순방향 링크 프레임 구조와 동기화될 때 개시될 수 있다. 이것은 도 49를 참고로 이하에서 설명되는 상태 다이어그램에 따라 정의된 "동기"상태에 상응한다. 비동기식 비주기 서브 프레임 모드에서, 수신은 제1 서브-프레임 헤더 패킷이 수신된 후에 개시된다.
B. 전체 패킷 구조
본 발명에 의해 구현되는 시그널링 프로토콜을 형성하는데 사용되는 패킷들의 포맷 또는 구조는 이하에서 설명되는데, 상기 인터페이스는 확장될 수 있으며 추가적인 패킷 구조들이 바람직하게는 더해질 수 있다는 점에 유의하라. 상기 패킷들은 인터페이스에서 그들의 기능 즉, 그들이 전달하는 데이터 또는 명령들의 관점에서 서로 다른 "패킷 타입"으로 라벨링되거나 또는 분류된다. 따라서, 각 패킷 타입은 전달되는 패킷들과 데이터를 조작하는데 사용되는 주어진 패킷에 대한 소정의 패킷 구조를 나타낸다. 상기 패킷들은 그들 각각의 기능에 따라, 소정의 길이 또는 가변적으로 또는 능동적으로 변화할 수 있는 길이를 가질 수 있다는 것은 자명하다. 여러 패킷들에 사용되는 바이트 또는 바이트 값은 부호를 갖지 않는 정수인 다수의 비트들(8비트 또는 16비트)로 구성되어 있다. 타입 순서로 제시되는, 패킷들의 타입 정의와 함께 사용되는 패킷들의 요약은 도 6에 도시되어 있다. 패킷 전송이 유효하다고 생각되는 방향이 이들의 타입 U 인터페이스를 위해 사용되는지와 함께 제시된다.
테이블 6
패킷 이름 패킷 타입 유효 방향
순방향 역방향 타입-U
서브프레임 헤더 패킷 255 x x
채움 패킷 0 x x
비디오 스트림 패킷 1 x x x
오디오 스트림 패킷 2 x x x
예비할당된 스트림 패킷 3-55
사용자-정의된 스트림 패킷 56-63 x x x
컬러 맵 패킷 64 x x x
역방향 링크 인캡슐레이션 패킷 65 x
디스플레이 성능 패킷 66 x x
키보드 데이터 패킷 67 x x x
포인팅 기기 데이터 패킷 68 x x x
링크 차단 패킷 69 x
디스플레이 요구 및 상태 패킷 70 x x
비트 블록 전송 패킷 71 x x
비트맵 영역 채움 패킷 72 x x
비트맵 패턴 채움 패킷 73 x x
통신 링크 데이터 채널 패킷 74 x x x
인터페이스 타입 핸드오프 요청 패킷 75 x
인터페이스 타입 확인응답 패킷 76 x
수행 타입 핸드오프 패킷 77 x
순방향 오디오 채널 인에이블 패킷 78 x x
역방향 오디오 샘플 속도 패킷 79 x x
디지털 켄텐츠 보호 오버헤드 패킷 80 x x x
변환 컬러 인에이블 패킷 81 x x
라운드 트립 지연 측정 패킷 82 x
패킷들은 도 7에 도시되어 있는 것과 같이, 일반적인 기본 구조 또는 패킷 길이 필드, 패킷 타입 필드, 데이터 바이트 필드 및 CRC 필드를 포함하고 있는 최소한의 필드의 전체 세트를 가지고 있다. 도 7에 도시되어 있는 것과 같이, 상기 패킷 길이 필드는 상기 패킷의 전체 비트 수를 규정하는, 다수의 비트 또는 바이트 값 타입의 정보 또는 상기 패킷 길이 필드와 상기 CRC 필드 사이의 길이를 포함하고 있다. 바람직한 실시예에서, 상기 패킷 길이 필드는 패킷 길이를 규정하는, 16비트 또는 2바이트 길이의 부호를 갖지 않는 정수를 포함한다. 패킷 타입 필드는 상기 패킷에 포함되어 있는 정보의 타입을 규정하는 또 다른 다수의 비트 필드이다. 본 발명의 바람직한 실시예에서, 이것은 8비트 부호를 갖지 않는 정수 타입의 8비트 또는 1바이트의 범위 값으로 디스플레이 성능, 핸드오프, 비디오 또는 오디오 스트림, 상태 등을 규정한다.
제3 필드는 호스트와 클라이언트 기기 사이에서 전송되거나 전달되는 데이터 또는 비트들을 상기 패킷의 부분으로 포함하고 있다. 데이터의 포맷은 전송되는 특정 데이터 타입에 따라 각 패킷 타입에 대해 규정되며, 자신의 포맷 요구를 각각 가지는 일련의 추가적인 필드들로 분리될 수 있다. 즉, 각 패킷 타입은 이러한 부분 또는 필드에 대한 정의된 포맷을 가질 수 있다. 마지막 필드는 데이터 바이트, 패킷 타입 및 패킷 길이 필드 상에서 계산되는 16비트의 순환 중복 검사 결과를 포함하고 있는 CRC 필드이며, 패킷에서 정보의 완전성을 확인하는데 사용된다. 달리 말하면, 상기 CRC 필드를 제외하고 상기 전체 패킷 상에서 계산된다. 상기 클라이언트는 일반적으로 탐지된 CRC 에러의 전체 카운트를 유지하며, 상기 카운트 결과를 디스플레이 요청 및 상태 패킷에서 호스트에 보고한다(아래 참조).
상기 패킷을 전송하는 동안, 필드들은 최하위 비트(LSB)로 시작하여 최상위 비트(MSB)로 종결되면서 전송이 이뤄진다. 하나 이상의 바이트 길이를 가지고 있는 파라미터들은 최하위 바이트를 사용하여 전송되는데, 상기 LSB가 먼저 전송되는 더 짧은 파라미터를 위해 사용되는 것과 같이, 8비트보다 더 긴 파라미터를 위해 사용되는 동일한 비트 전송 패턴이다. MDDI_data0 신호 경로 상에서의 데이터는 타입-1, 타입2, 타입3 또는 타입4 중 하나의 모드에서 상기 인터페이스 상에서 전송되는 바이트들 중에서 비트 0과 정렬된다.
디스플레이를 위해 데이터를 조절할 때, 전자 업계에서 행해지는 것과 같이, 픽셀 어레이를 위한 데이터는 먼저 행으로 그리고 나서 열로 송신된다. 달리 말하면, 비트 맵의 동일한 행내의 볼 수 있는 모든 픽셀들은 먼저 가장 좌측 픽셀들에서 전송되고 마지막으로 가장 우측 픽셀들이 전송되는 순서로 전송된다. 행의 가장 우측 픽셀들이 전송된 후에, 전송되는 시퀀스 상의 다음 픽셀은 다음 행의 가장 좌측 픽셀이다. 필요에 의해 다른 구조가 적용될 수 있지만, 픽셀들의 행은 일반적으로 대부분의 디스플레이에서 상부에서 하부의 순서로 전송된다. 게다가, 비트맵을 다룰 때, 이하에서 설명되는 종래의 방식은 비트맵의 상부 좌측 코너를 오프셋 "0,0"으로 라벨함으로써 기준을 정의한다. 비트맵에서 위치를 결정하거나 정의하는데 사용되는 X축과 Y축 좌표는 상기 비트맵의 우측 하단으로 접근할수록 증가한다. 1행 1열은 0의 인덱스 값을 가지고 시작한다.
C. 패킷 정의
1. 서브-프레임 헤더 패킷
서브-프레임 헤더 패킷은 모든 서브 프레임의 맨 처음 패킷이며, 도 8에 도시되어 있는 것과 같은 기본적인 구조를 가지고 있다. 도 8에 도시되어 있는 것과 같이, 상기 타입의 패킷은 패킷 길이, 패킷 타입, 고유 워드, 서브 프레임 길이, 프로토콜 버젼, 서브 프레임 카운트 및 매체 프레임 카운트 필드를 가지도록 구성되어 있으며, 일반적으로 상기와 같은 순서로 구성되어 있다. 상기 타입의 패킷은 일반적으로 타입 255패킷으로 식별되며, 17바이트의 소정의 고정된 길이를 사용한다.
상기 패킷 타입 필드가 1바이트 값을 사용하는 반면, 상기 고유 워드 필드는 3바이트 값을 사용한다. 이러한 2개 필드들의 4바이트 조합은 양호한 자기 상관을 가지는 32비트 고유 워드를 형성한다. 상기 고유 워드는 0x005a3bff이며, 하부 8비트들은 패킷 타입으로 먼저 전송되고, 최상위 24비트들은 나중에 전송된다.
상기 서브 프레임 길이 필드는 서브 프레임 당 바이트의 수를 규정하는 4바이트의 정보를 가지고 있다. 상기 필드의 길이는 단지 하나의 서브 프레임만이 상기 링크가 휴지 상태로 차단되기 전에 호스트에 의해 전송될 것이라는 것을 지시하기 위해 0으로 설정될 수 있다. 상기 필드에 있는 값은 하나의 서브 프레임에서 다음으로 전이될 때, 능동적으로 변화될 수 있다. 이러한 성능은 등시성 데이터 스트림을 적용하기 위한 동기화 펄스의 마이너 타이밍 조절을 하기 위해 사용될 수 있다. 만약 서브-프레임 헤더 패킷의 CRC가 유효하지 않으면, 상기 링크 제어기는 현재의 서브 프레임의 길이를 평가하기 위해 이전에 공지된 양호한 서브 프레임의 헤더 패킷의 서브 프레임 길이를 사용할 것이다.
프로토콜 버전 필드는 호스트에 의해 사용되는 프로토콜 버전을 규정하는 2바이트를 포함하고 있다. 상기 프로토콜 버전 필드는 사용되는 처음 또는 현재의 프로토콜 버전을 규정하기 위해 '0'으로 설정된다. 상기 값은 새로운 버전들이 생성될 때 시간적으로 변화할 것이다. 상기 서브 프레임 카운트 필드는 상기 매체 프레임이 시작된 후에 전송되는 서브 프레임의 수를 지시하는 시퀀스 수를 규정하는 2바이트를 포함하고 있다. 상기 매체 프레임의 제1 서브 프레임은 0의 서브 프레임 카운트를 가지고 있다. 상기 매체 프레임의 마지막 서브 프레임은 n-1의 값을 가지고 있는데, 여기서 n은 매체 프레임 당 서브 프레임의 수이다. 만약 상기 서브 프레임의 길이가 0으로 설정된다면, 상기 서브 프레임의 카운트는 또한 0으로 설정되어야 한다는 것에 유의하라.
상기 매체 프레임 카운트 필드는 현재의 매체 아이템 또는 전송되는 데이터 이후에, 전송되는 매체 프레임들의 수를 지시하는 시퀀스 번호를 규정하는 3바이트를 포함하고 있다. 매체 아이템의 처음 매체 프레임은 0의 매체 프레임 카운트를 가지고 있다. 상기 매체 프레임 카운트는 각 매체 프레임의 제1 서브 프레임 바로 앞에서 증가하며, 최대 매체 프레임 카운트(매체 프레임 수 224-1=16,777,215)가 사용된 후에 0으로 돌아온다. 상기 매체 프레임 카운트 값은 죵료 애플리케이션의 요구에 맞추기 위해 호스트에 의해 일반적으로 임의의 시간에서 리셋될 수 있다.
2. 채움 패킷
채움 패킷은 어떠한 정보도 역방향 또는 순방향 링크 상에서 전송될 수 없을 때, 클라이언트 기기로부터 또는 클라이언트 기기로 전송되는 패킷이다. 채움 패킷들은 요구되는 다른 패킷들을 전송하는데 있어서 최대 유연성을 허용하기 위해 최소 길이를 가지고 있을 것이 요구된다. 서브 프레임의 마지막 또는 역방향 링크 인캡슐레이션 패킷(이하를 참조)의 단부에서, 링크 제어기는 완전한 패킷을 유지하기 위해 상기 채움 패킷의 사이즈를 설정하여 잔여 공간을 채운다.
채움 패킷의 포맷과 내용은 도 9에 도시되어 있다. 도 9에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 채움 바이트 및 CRC 필드를 가지도록 구성되어 있다. 상기 타입의 패킷은 일반적으로 타입0으로 식별되는데, 상기 1바이트 타입 필드에서 지시되어 있다. 상기 채움 바이트 필드의 비트 또는 바이트는 상기 채움 패킷이 원하는 길이를 갖을 수 있도록 하기 위해 가변적인 수의, 모두 0의 값을 갖는 비트들이 포함되어 있다. 즉, 상기 패킷은 패킷 길이, 패킷 타입 및 CRC로 구성되어 있으며, 3바이트의 소정의 고정된 길이를 사용한다.
3. 비디오 스트림 패킷
비디오 스트림 패킷들은 디스플레이 기기의 비전형적인 직사각 영역을 불규칙적으로 갱신하기 위한 비디오 데이터를 전송한다. 상기 영역의 크기는 픽셀의 크기만큼 작거나 또는 디스플레이 전체처럼 클 수 있다. 스트림을 디스플레이하여야 하는 모든 켄텐츠는 상기 비디오 스트림 패킷 안에 포함되어 있기 때문에, 시스템 리소스에 의해 제한되며 동시에 거의 제한되어 있지 않은 수의 디스플레이되는 스트림들이 존재한다. 상기 비디오 스트림 패킷의 포맷(비디오 데이터 포맷 기술자)이 도 10에 도시되어 있다. 도 10에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 비디오 데이터 포맷 기술자, 디스플레이 속성들, X축 좌측 에지, Y축 상부 에지, X 축 우측 에지, Y축 하부 에지, X와 Y축의 시작점, 픽셀 카운트, 파라미터 CRC, 픽셀 데이터 및 CRC 필드를 가지도록 구성되어 있다. 이러한 패킷 타입은 일반적으로 타입1로 식별되며, 1바이트 타입 필드에 표시되어 있다.
상술한 공통 프레임 개념은 오디오 버퍼 사이즈를 최소화하고 대기 시간을 줄일 수 있는 효과적인 방법이다. 그러나, 비디오 데이터에 대해서는, 매체 프레임 안에서 다수의 비디오 스트림 패킷들에 걸쳐 하나의 비디오 프레임의 픽셀들을 확장하는 것이 필요하다. 또한, 단일 비디오 스트림 패킷의 픽셀들은 디스플레이의 완전한 직사각 윈도우에 정확하게 상응하지 않는다. 초당 30 프레임의 비디오 프레임 속도의 예에서, 초당 300 서브 프레임이 존재하며, 따라서 매체 프레임 당 10개의 서브 프레임이 존재한다. 만약 각 프레임에서 480행의 픽셀들이 존재하면, 각 서브 프레임의 각 비디오 스트림 패킷은 48 행의 픽셀을 포함할 것이다. 다른 경우에, 상기 비디오 스트림 패킷은 정수의 픽셀 행들이 포함되지 않을 수 있다. 매체 프레임 당 서브 프레임의 수가 비디오 프레임 당 행들의 수로 고르게 나누어지지 않는 다른 비디오 프레임에 대해서도 그러하다. 비록 비디오 스트림 패킷이 정수 행의 픽셀을 포함하지 않더라도, 각 비디오 스트림 패킷은 정수의 픽셀을 포함하여야 한다. 픽셀들이 각각 하나 이상의 바이트이면, 또는 도 12에 도시되어 있는 것과 같이 그것들이 팩킹된 포맷이면, 이것은 중요하다.
상기 설명된 비디오 데이터 기술자 필드의 작동을 실현하는데 사용되는 포맷과 켄텐츠는 도 11a-11d에 도시되어 있다. 도 11a-11d에서, 비디오 데이터 포맷 기술자 필드는 현재 패킷의 현재 스트림에 있는 픽셀 데이터의 각 픽셀의 포맷을 규정하는 16비트의 부호 없는 정수 형태로 2바이트를 포함하고 있다. 서로 다른 스트림들은 서로 다른 픽셀 데이터 포맷들을 사용할 수 있다. 즉, 비디오 데이터 포맷 기술자의 서로 다른 값을 사용할 수 있으며, 유사하게 어느 일정한 스트림은 온더 플라이상(on-the-fly)에서 그것의 데이터 포맷을 변경할 수 있다. 상기 비디오 데이터 포맷 기술자는 현재 패킷에 대한 픽셀 포맷을 정의하는데, 이는 특정 비디오 스트림의 수명 동안에 계속해서 일정한 포맷이 계속 사용될 것임을 의미하지는 않는다.
도 11a에서 도 11d는 비디오 데이터 포맷 기술자가 어떻게 코드 되는지를 설명하고 있다. 상기 도면에서 사용되는 것과 같이, 도 11a에 도시되어 있는 것과 같이, 비트[15:13]이 '000'일 때, 상기 비디오 데이터는 단색 픽셀들의 어레이로 구성되며, 픽셀 당 비트들의 수는 3에서 0비트의 상기 비디오 데이터 포맷 기술자 워드에 의해 정의된다. 상기의 경우에, 비트 11 내지 4는 0으로 설정된다. 도 11b에 도시되어 있는 것과 같이, 비트들[15:13]이 '001'일 때, 상기 비디오 데이터는 각각의 픽셀들이 컬러 맵에서 컬러를 규정하는 컬러 픽셀들의 어레이로 구성되어 있다. 상기 경우에, 상기 비디오 데이터 포맷 기술자 워드의 비트 5 내지 0는 픽셀 당 비트의 수를 정의하며, 비트 11 내지 6은 0으로 설정된다. 도 11c에 도시되어 있는 것과 같이, 비트 [15:13]이 '010'이면, 비디오 데이터는 칼라 필셀들 어레이로 구성되며, 여기서 빨간색의 픽셀 당 비트의 수가 11 내지 8로 규정되며, 녹색의 픽셀 당 비트의 수가 7 내지 4로 규정되며, 파란색의 픽셀 당 비트의 수는 3 내지 0으로 규정된다. 상기 경우에, 각 펙셀에서 비트의 전체 수는 빨간, 녹색 및 파란색을 위해 사용되는 비트 수의 합이다.
그러나, 도 11d에 도시되어 있는 것과 같이, 비트들[15;13]이 '0011'이며, 상기 비디오 데이터는 휘도와 색차 정보를 가지고 있는 4:2:2 포맷의 비디오 데이터 어레이로 구성되며, 여기서 상기 픽셀 당 휘도(Y)의 데이터 비트의 수는 비트 11 내지 8에 의해 정해지며, Cr 구성요소의 비트 수는 비트 7 내지 4에 의해 정해지며, Cb 구성요소의 데이터 비트 수는 비트 3 내지 0에서 정해진다. 각 픽셀에서 전체 비트의 수는 빨간, 녹색 그리고 파란색을 위해 사용되는 비트들의 수의 합이다. Cr과 Cb 구성요소들은 Y의 1/2 속도로 전송된다. 게다가, 패킷의 픽셀 데이터 부분에서 비디오 샘플들은 다음과 같이 구성되어 있다: Yn, Crn, Cbn, Yn+1, Yn+2, Crn+2, Cbn+2, Yn+3...., 여기서 Crn과 Cbn은 Yn및 Yn+1에 관련되어 있으며 Crn+2 과 Cbn+2은 Yn+2및 Yn+3에 관련되어 있다. 만약 홀수의 픽셀들이 현재 스트림의 행(X 우측 에지 - X좌측 에지+1)에 존재하면, 각 행의 마지막 픽셀에 상응하는 상기 Cb 값 이후에 다음 행의 처음 픽셀의 Y 값이 뒤따른다.
도면에 도시되어 있는 모든 4개의 포맷에 대해, "P"로 표시된 비트 (12)는 상기 픽셀 데이터 샘플이 팩킹된 픽셀 데이터 인지 또는 바이트 정렬된 픽셀 데이터인지 여부를 규정한다. 상기 필드에서 '0'의 값은 각 픽셀과 픽셀 데이터 필드의 각 픽셀에 있는 각 컬러가 MDDI 인터페이스 바이트 경계에 의해 정렬되어 있다는 것을 지시한다. "1"의 값은 각 픽셀과 상기 픽셀 데이터의 각 픽셀에 있는 각 컬러가 이전의 픽셀 또는 픽셀 안에 있는 컬러에 대해 팩킹-업되어 사용되지 않는 비트를 남기지 않음을 나타낸다.
특정 디스플레이 윈도우를 위한 제1 비디오 스트림의 제1 픽셀은 X 오프셋과 Y 오프셋에 의해 정의되는 스트림 윈도우의 상부 좌측 코너로 내려가며, 수신된 다음 픽셀은 동일한 행의 다음 픽셀 위치에 놓이게 된다. 상기 작동을 수월히 하기 위해, 디스플레이는 각 활성 비디오 스트림 ID와 관련되어 있는 "다음 픽셀 행과 열" 카운터를 유지한다.
4. 오디오 스트림 패킷
오디오 스트림 패킷들은 디스플레이 오디오 시스템을 통해 또는 독립형 오디오 프리젠테이션 기기를 위해 플레이되는 오디오 데이터를 전송한다. 서로 다른 오디오 데이터 스트림은 사운드 시스템의 분리된 오디오 채널을 위해 할당될 수 있다: 예를 들어, 사용되는 오디오 시스템 타입에 따라 좌측 앞쪽, 우측 앞쪽, 중앙, 우측 뒤쪽, 좌측 뒤쪽. 오디오 채널들의 완전한 보완이 강화된 공간 음향 신호 프로세싱을 포함하는 헤드 세트를 위해 제공된다. 오디오 스트림 패킷들의 포맷이 도 13에 도시되어 있다. 도 13에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 오디오 채널 ID, 오디오 샘플 카운트, 샘플과 팩킹 당 비트, 오디오 샘플 속도, 파라미터 CRC, 디지털 오디오 데이터 및 오디오 데이터 CRC 필드를 포함하도록 구성되어 있다. 이러한 패킷 타입은 일반적으로 타입-2 패킷으로 식별된다.
샘플과 팩킹 필드 당 비트들은 오디오 데이터의 팩킹 포맷을 규정하는 8비트의 부호를 갖지 않는 정수의 타입의 1바이트를 포함한다. 사용되는 상기 포맷은 PCM 오디오 샘플 당 비트의 수를 정의하는 비트(4)에서 비트(0)을 위한 것이다. 비트(5) 는 상기 디지털 오디오 데이터 샘플들이 팩킹되었는지를 규정한다. 상기 팩킹된 샘플과 바이트 정렬된 오디오 샘플들의 차이는 도 14에 도시되어 있다. '0'의 값은 디지털 오디오 데이터 필드의 각 PCM 오디오 샘플이 MDDI 인터페이스 바이트 경계와 정렬됨을 표시하며, '1'의 값은 연속적인 PCM 오디오 샘플이 이전의 오디오 샘플에 반해 팩킹되었음을 표시한다. 상기 비트는 비트(4)에서 비트(0)에서 정의되어 있는 상기 값(PCM 오디오 샘플 당 비트들의 수)들이 8의 배수가 아닐 때에만 유효하다. 비트(7) 내지 비트(6)는 나중의 사용을 위해 예비 할당되며, 일반적으로 0의 값으로 설정된다.
5.비축된 스트림 패킷들
패킷 타입들(3) 내지 (55)는 나중의 버전들 또는 패킷 프로토콜의 변화, 예상되는 여러 애플리케이션에서 사용하기 위해 정의되어 있는 스트림 패킷들을 위해 비축된다. 또한, 다른 기술에 비교되는 시스템 설계가 변화되는 환경에서, 이것은 MDD 인터페이스를 제작하는데 보다 유연하고 유용하게 한다.
6. 사용자-정의된 스트림 패킷들
타입 (56) 내지 (63)으로 공지되어 있는 8개의 데이터 스트림은 MDDI 링크에서 사용하기 위해 장치 제작자에 의해 정의될 수 있는 독점적인 애플리케이션에서 사용되기 위해 비축된다. 이것들은 사용자-정의된 스트림 패킷들로 공지되어 있다. 상기 비디오 스트림 패킷들은 비디오 데이터를 전송하여 디스플레이의 직사각형 영역을 갱신한다. 상기 스트림 파라미터들과 상기 패킷 타입을 위한 데이터의 정의는 이용을 원하는 특정 장치 제작자의 몫이다. 상기 사용자-정의된 스트림 패킷들의 포맷은 도 15에 도시되어 있다. 도 15에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 스트림 ID 수, 스트림 파라미터들, 파라미터 CRC, 스트림 데이터 및 스트림 데이터 CRC 필드를 포함하도록 구성되어 있다.
7. 컬러 맵 패킷들
컬러 맵 패킷들은 디스플레이를 위해 컬러를 나타내기 위해 사용되는 컬러 맵 룩업테이블의 켄텐츠를 규정한다. 일정한 애플리케이션들은 단일 패킷에서 송신될 수 있는 데이터의 양보다 더 많은 컬러 맵을 요구할 수 있다. 상기 경우에, 다수의 컬러 맵 패킷들이 전송될 수 있으며, 각각은 이하에서 설명되는 오프셋과 길이 필드를 사용함으로써 컬러 맵의 서로 다른 서브세트를 가질 수 있다. 상기 컬러 맵 패킷의 포맷은 도 16에 도시되어 있다. 도 16에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 컬러 맵 데이터 사이즈, 컬러 맵 오프셋, 파라미터 CRC, 스트림 데이터 및 스트림 데이터 CRC 필드를 포함하도록 구성되어 있다. 이러한 패킷 타입은 일반적으로 타입64 패킷으로 식별된다.
8. 역방향 링크 인캡슐레이션 패킷들
데이터는 역방향 링크 인캡슐레이션 패킷을 사용하여 역방향으로 전송된다. 순방향 링크 패킷이 전송되며, MDDI 링크 작동(전송 방향)은 변경되거나 또는 상기 패킷의 중간에서 변경 또는 전환되며, 따라서 패킷들은 역방향으로 전송될 수 있다. 역방향 링크 인캐슐레이션 패킷의 포맷은 도 17에 도시되어 있다. 도 17에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 역방향 링크 플래그들, 턴어라운드 길이, 파라미터 CRC, 턴어라운드1, 역방향 데이터 패킷들 및 턴어라운드 2를 포함하도록 구성되어 있다. 이러한 패킷 타입은 일반적으로 타입(65) 패킷으로 식별된다.
MDDI 링크 제어기는 역방향 링크 인캡슐레이션 패킷을 전송하는 동안 특별한 방식으로 작동한다. MDD 인터페이스는 호스트에 의해 항상 구동되는 스트로브 신호를 가지고 있다. 호스트는 턴어라운드 및 역방향 링크 인캐슐레이션 패킷의 역방향 데이터 패킷 부분의 각 비트를 위해 0을 송신하는 것처럼 행동한다. 호스트는 상기 2개의 턴어라운드 시간 동안에 그리고 역방향 데이터 패킷을 위해 할당된 시간동안에 각 비트 경계에서 MDDI-스트로브 신호를 토글한다(이것은 모두 제로의 데이터를 전송하는 것처럼 행동하는 것과 동일하다). 호스트는 턴어라운드1에 의해 규정되어 있는 시간 기간 동안에 그것의 MDDI 데이터 신호 라인 드라이버들을 디스에이블하게 하며, 상기 클라이언트는 그것의 라인 드라이버들을 상기 턴어라운드2 필드에 의해 규정되어 있는 시간 기간 후에 상기 드라이브 재-인에이블 필드 동안에 재-인에이블하게 한다. 디스플레이는 상기 턴어라운드 길이 파라미터를 판독하고 상기 데이터 신호를 상기 턴어라운드1 필드의 마지막 비트 후, 호스트로 구동한다. 디스플레이는 패킷들을 호스트로 전송할 수 있는 시간 길이를 알기 위해 패킷 길이와 턴어라운드 길이 파라미터를 사용한다. 호스트로 전송되는 데이터를 가지고 있지 않을 때, 상기 클라이언트는 채움 패킷들을 전송하거나 상기 데이터 라인들을 제로 상태가 되도록 할 수 있다. 만약 상기 데이터 라인들이 제로로 구동된다면, 호스트는 이것을 제로의 길이를 가지는 패킷으로 해석하며, 호스트는 어느 다른 패킷을 현재의 역방향 링크 인캡슐레이션 패킷 기간 동안에 상기 클라이언트로부터 수신하지 않는다.
디스플레이는 상기 턴어라운드2 필드의 시작 전에, MDDI 데이터 라인들을 적어도 하나의 역방향 링크 클락 기간 동안에 제로 레벨이 되도록 한다. 이것은 상기 턴어라운드2 시간 기간 동안에, 결정론적인 상태로 데이터 라인들을 유지한다. 만약 상기 클라이언트가 전송할 패킷을 더 이상 가지고 있지 않다면, 동면 모드 바이어스 저항기는 상기 역방향 데이터 패킷 필드의 잉여에 대해서는 상기 데이터 라인들을 제로로 유지하기 때문에, 상기 데이터 라인들을 제로 레벨이 되도록 한 후에, 상기 데이터 라인들을 디스에이블할 수 있다.
디스플레이 요구의 역방향 링크 요청 필드와 상태 패킷은 디스플레이가 상기 역방향 링크 인캡슐레이션 패킷에서 데이터를 호스트로 다시 전송하는데 요구되는 바이트의 수를 호스트에 가르쳐 주기 위해 사용된다. 호스트는 상기 역방향 링크 인캡슐레이션 패킷의 적어도 상기 수의 바이트를 할당함으로써 상기 요구를 확인응답하려 한다. 호스트는 서브 프레임에서 하나 이상의 역방향 링크 인캡슐레이션 패킷을 전송할 수 있다. 디스플레이는 거의 언제든지 디스플레이 요구와 상태 패킷을 전송할 수 있으며, 호스트는 상기 역방향 링크 요구 파라미터를 하나의 서브 프레임에서 요구되는 전체 바이트의 수로 해석한다.
9. 디스플레이 성능 패킷들
호스트는 바람직한 방법 또는 최적의 방법으로 호스트 대 디스플레이 링크를 구성하기 위해 통신하는 디스플레이의 성능을 알 필요가 있다. 디스플레이는 순방향 링크 동기화가 이루어진 후에, 호스트로 디스플레이 성능 패킷을 전송할 것을 권유한다. 상기와 같은 패킷의 전송은 상기 역방향 링크 인캡슐레이션 패킷의 상기 역방향 링크 플러그를 이용하는 호스트에 의해 요구될 때, 요구되는 것으로 고려된다. 디스플레이 성능 패킷의 포맷은 도 18에 도시되어 있다. 도 18에 도시되어 있는 것과 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 프로토콜 버전, 최소 프로토콜 버전, 비트맵 폭, 비트맵 높이, 패킷 타입, 성능, 컬러 맵 성능, GBG 성능, Y Cr Cb 성능, 디스플레이 성능 성능, 데이터 속도 성능, 프레임 속도 성능, 오디오 버퍼 깊이, 오디오 스트림 성능, 오디오 속도 성능, 최소 서브 프레임 속도 및 CRC 필드를 포함하도록 구성된다. 이러한 패킷 타입은 일반적으로 타입(66)의 패킷으로 식별된다.
10. 키보드 데이터 패킷들
키보드 데이터 패킷은 키보드 데이터를 상기 클라이언트 기기로부터 호스트로 전송하는데 사용된다. 무선(또는 유선) 키보드는 헤드 장착된 비디오 디스플레이/오디오 프리젠테이션 기기를 포함하는, 그러나 이에 한정되지 않는 여러 디스플레이 또는 오디오 기기와 결합하여 사용될 수 있다. 상기 키보드 데이터 패킷은 공지된 수 개의 키보드와 같은 기기 중 하나로부터 수신된 키보드 데이터를 호스트로 전달한다. 상기 패킷은 또한 순방향 링크 상에서 데이터를 상기 키보드로 전송하는데 사용된다. 키보드 데이터 패킷의 포맷은 도 19에 도시되어 있으며, 키보드로부터 또는 키보드로의 여러 바이트 정보를 포함하고 있다. 도 19에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 키보드 데이터, 및 CRC 필드를 갖도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 67 패킷으로서 식별된다.
11. 포인팅 장치 데이터 패킷들
포인팅 장치 데이터 패킷은 무선 마우스 또는 다른 포인팅 장치로부터의 위치 정보를 디스플레이로부터 호스트로 전송하는데 사용된다. 데이터는 또한 이러한 패킷을 사용하여 순방향 링크상에서 포인팅 장치로 전송될 수 있다. 포인팅 장치 데이터 패킷의 포맷은 도 20에 제시되어 있고, 포인팅 장치로부터 또는 포인팅 장치에 대한 가변수의 정보 바이트들을 포함한다. 도 20에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 포인팅 장치 데이터, 및 CRC 필드를 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드에서 타입 68 패킷으로 식별된다.
12. 링크 차단 패킷
링크 차단 패킷은 호스트로 부터 클라이언트 디스플레이로 전송되어 MDDI 데이터 및 스트로브가 중단되어 저-전력 소비 "동면" 상태로 진행할 것이라는 것을 표시한다. 이러한 패킷은 정적인 비트맵들이 이동통신 장치로부터 디스플레이로 전송된 후에 또는 당분간 호스트로부터 클라이언트로 전송될 정보가 없는 경우에 링크를 차단하고 전력을 보존하는데 사용된다. 정상 동작은 호스트가 다시 패킷을 전송할 때 개시된다. 동면 후에 전송된 제1 패킷은 서브-프레임 헤더 패킷이다. 디스플레이 상태 패킷의 포맷은 도 21에 제시된다. 도 21에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드에서 타입 69 패킷으로서 식별되고 미리-선택된 3 바이트의 고정 길이를 사용한다.
저-전력 동면 상태에서, MDDI_데이터 드라이버는 고 임피던스 상태로 디스에이블되고, MDDI_데이터 신호들은 디스플레이에 의해 오버드라이브될 수 있는 고 임피던스 바이어스 네트워크를 사용하여 로직 제로 상태로 유도된다. 인터페이스에 의해 사용되는 스트로브 신호는 휴면 상태에서 전력 소비를 최소화하기 위해 로직 제로 레벨로 설정된다. 호스트 또는 디스플레이 중 하나는 MDDI 링크가 동면상태로 부터 "웨이크업" 상태가 되도록 할 수 있고, 이는 본원발명의 장점 및 진보된 특징이다.
13. 디스플레이 요청 및 상태 패킷들
최적 방식으로 호스트 대 디스플레이 링크를 구성하기 위해 호스트는 작은 양의 정보를 디스플레이로부터 필요로한다. 디스플레이가 호스트로 각 서브-프레임에서 하나의 디스플레이 상태 패킷을 전송하는 것이 바람직하다. 디스플레이는 호스트로의 신뢰성있는 전송을 보장하기 위해 역방향 링크 인캡슐레이션 패킷에서 제1 패킷으로 이러한 패킷을 전송하여야 한다. 디스플레이 상태 패킷의 포맷은 도 22에 제시되어 있다. 도 22에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 역방향 링크 요청, CRC 에러 카운트, 및 CRC 필드를 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드에서 타입 70 패킷으로 식별되고, 미리-선택된 7 바이트 고정 길이를 사용한다.
역방향 링크 요청 필드는 데이터를 다시 호스트로 전송하기 위해 역방향 링크 인캡슐레이션 패킷에서 디스플레이가 필요로하는 바이트들의 수를 호스트에게 알리기위해 사용될 수 있다. 호스트는 적어도 역방향 링크 인캡슐레이션 패킷에서 적어도 이러한 바이트들의 수를 할당함으로써 요청을 허가하는 것을 시도하여야 한다. 호스트는 데이터를 수용하기 위해 서브-프레임에서 하나 이상의 역방향 링크 인캡슐레이션 패킷을 전송할 수 있다. 디스플레이는 임의의 시간에서 디스플레이 요청 및 상태 패킷을 전송할 수 있고 호스트는 하나의 서브-프레임에서 요청된 바이트들의 총 수로서 역방향 링크 요청 파라미터를 해석할 것이다. 역방향 링크 데이터가 어떻게 호스트로 다시 전송되는가에 대한 추가적인 내용들 및 예들은 하기에서 기술될 것이다.
14. 비트 블록 전송 패킷
비트 블록 전송 패킷은 임의의 방향에서 디스플레이의 영역들을 스크롤하기 위한 수단을 제공한다. 이러한 성능을 갖는 디스플레이들은 디스플레이 성능 패킷의 디스플레이 특징 성능 표시기들의 비트 0에서 성능을 보고할 것이다. 비트 블록 전송 패킷의 포맷은 도 23에서 제시된다. 도 23에서 제시되는 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 좌상 X 값, 좌상 Y 값, 윈도우 폭, 윈도우 높이, 윈도우 X 이동, 윈도우 Y 이동, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 71 패킷으로서 식별되고, 15 바이트의 미리-선택된 고정 길이를 사용한다. 이러한 필드들은 이동할 윈도우의 좌상 코너의 좌표에 대한 X 및 Y 값들, 이동할 윈도우의 폭 및 높이, 그리고 수평 및 수직으로 각각 이동할 윈도우의 픽셀들의 수를 규정하기 위해 사용된다. 후자의 2개 필드들에 대한 양의 값들은 윈도우가 우측 및 하방으로 이동하도록 하여주고, 음의 값들은 좌측 및 상단으로 이동하도록 하여준다.
15. 비트맵 영역 채움(fill) 패킷
비트맵 영역 채움 패킷은 하나의 컬러로 디스플레이 영역을 쉽게 초기화하는 수단을 제공한다. 이러한 성능을 갖는 디스플레이들은 이러한 성능을 디스플레이 성능 패킷의 디스플레이 특징 성능 표시기 필드의 비트 1에서 보고한다. 비트 맵 영역 채움 패킷의 포맷은 도 24에 제시된다. 도 24에서 제시되는 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 좌상 X 값, 좌상 Y 값, 윈도우 폭, 윈도우 높이, 데이터 포맷 서술자, 픽셀 영역 채움 값, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 필드내의 타입 72 패킷으로 식별되고, 17 바이트의 미리-선택된 고정 길이를 사용한다.
16. 비트맵 패턴 채움 패킷
비트맵 패턴 채움 패킷은 미리-선택된 패턴으로 디스플레이의 영역을 쉽게 초기화하도록 하는 수단을 제공한다. 이러한 성능을 갖는 디스플레이들은 이러한 성능을 디스플레이 성능 패킷의 디스플레이 특징 성능 표시기 필드의 비트 2 에서 보고한다. 채움 패턴의 좌상 코너는 채워질 윈도우의 좌상 코너와 정렬된다. 채워질 윈도우가 채움 패턴보다 넓거나 크면, 이러한 패턴은 윈도우를 채우기 위해 수평 또는 수직으로 여러번 반복한다. 최종 반복된 패턴의 우측 또는 바닥(bottom)은 필요에 따라 절단된다. 윈도우가 채움 패턴보다 작으면, 채움 패턴의 우측 또는 바닥은 윈도우를 맞추기 위해 절단된다.
비트맵 패턴 채움 패킷의 포맷은 도 25에 제시된다. 도 25에 제시된바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 좌상 X 값, 좌상 Y 값, 윈도우 폭, 윈도우 높이, 패턴 폭, 패턴 높이, 데이터 포맷 서술자, 파라미터 CRC, 패턴 픽셀 데이터, 및 픽셀 데이터 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드내의 타입 73 패킷으로서 식별된다.
17. 통신 링크 데이터 채널 패킷들
통신 링크 데이터 채널 패킷은 셀룰러 폰 또는 무선 데이터 포트 장치와 같은 무선 트랜시버와 통신하기 위해 PDA와 같은 고-레벨 계산 성능을 구비한 디스플레이용 수단을 제공한다. 이러한 상황에서, MDDI 링크는 이동 디스플레이를 갖는 계산 장치와 통신 장치 사이의 기존 고속 인터페이스와 같이 동작하고, 여기서 이러한 패킷은 상기 장치에 대한 운영 시스템의 데이터 링크층에서 데이터를 전송한다. 예를들어, 이러한 패킷은 웹 브라우저, 이메일 클라이언트, 또는 완전한 PDA가 이동 디스플레이에서 구축되는 경우 사용될 수 있다. 이러한 성능을 갖는 디스플레이들은 이러한 성능을 디스플레이 성능 패킷의 디스플레이 특징 성능 표시기 필드의 비트 3에서 보고한다.
통신 링크 데이터 채널 패킷의 포맷은 도 26에 제시된다. 도 26에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 파라미터 CRC, 통신 링크 데이터, 및 통신 데이터 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 이러한 필드내의 타입 74 패킷으로 식별된다.
18. 인터페이스 타입 핸드오프 요청 패킷들
인터페이스 타입 핸드오프 요청 패킷은 기존 또는 현재 모드로부터 타입-Ⅰ(직렬), 타입-Ⅱ(2-비트 병렬), 타입-Ⅲ(4-비트 병렬), 또는 타입-Ⅳ(8-비트 병렬) 모드들로 클라이언트 또는 디스플레이가 이동할 것을 호스트가 요청하도록 하여준다. 호스트가 특정 모드를 요청하기 전에, 디스플레이 성능 패킷내의 디스플레이 특징 성능 표시기 필드의 비트들 6 및 7을 조사함으로써 디스플레이가 요구되는 모드에서 동작할 수 있는지를 확인하여야 한다. 인터페이스 타입 핸드오프 요청 패킷의 포맷은 도 27에 제시된다. 도 27에 제시된바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 인터페이스 타입, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 75 패킷으로서 식별되고, 미리-선택된 4 바이트의 고정 길이를 사용한다.
19. 인터페이스 타입 확인 패킷들
인터페이스 타입 확인 패킷들은 인터페이스 타입 핸드오프 패킷들의 수신을 확인하기 위해 디스플레이에 의해 전송된다. 요청된 모드, 타입-Ⅰ(직렬), 타입-Ⅱ(2-비트 병렬), 타입-Ⅲ(4-비트 병렬), 또는 타입-Ⅳ(8-비트 병렬) 모드는 이러한 패킷 내에서 파라미터로서 호스트로 다시 전송된다. 인터페이스 타입 확인 패킷의 포맷은 도 28에 제시된다. 도 28에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 인터페이스 타입, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 76 패킷으로 식별되고, 미리-선택된 4 바이트의 고정 길이를 사용한다.
20. 수행 타입 핸드오프 패킷
수행 타입 핸드오프 패킷은 호스트가 디스플레이에게 이러한 패킷 내에서 규정된 모드로 핸드오프하도록 명령하는 수단이다. 이는 인터페이스 핸드오프 요청 패킷 및 인터페이스 타입 확인 패킷에 의해 요청 및 확인된 것과 동일한 모드이다. 호스트 및 디스플레이는 이러한 패킷이 전송된 후에 동의된 모드로 스위치하여야 한다. 디스플레이는 이러한 모드 변경동안 링크 동기를 상실 및 재획득할 수 있다. 수행 타입 핸드오프 패킷의 포맷은 도 29에 제시된다. 도 29에 제시된바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드내의 타입 77 패킷으로 식별되고, 미리-선택된 4 바이트의 고정 길이를 사용한다.
21. 순방향 오디오 채널 인에이블 패킷들
이러한 패킷은 호스트가 디스플레이에서 오디오 채널들을 인에이블 또는 디스에이블하도록 하여준다. 이러한 성능은 호스트에 의해 출력되는 오디오가 존재하지 않는 경우 디스플레이(클라이언트)가 오디오 증폭기 또는 유사한 회로 엘리먼트들을 파워 오프할 수 있게 하는데 유용하다. 이는 표시기로서 오디오 스트림들의 존재 또는 부존재를 사용하여 간단하게 구현하는 것이 보다 어렵다. 디스플레이 시스템이 파워 업 될 때 디폴트 상태는 모든 오디오 채널들이 인에이블되는 것이다. 순방향 오디오 채널 인에이블 패킷의 포맷은 도30에 제시된다. 도30에 제시되는바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 오디오 채널 인에이블 마스크, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 1-바이트 타입 필드에서 타입 78 패킷으로 식별되고, 미리-선택된 4 바이트의 고정 길이를 사용한다.
22. 역방향 오디오 샘플 레이트 패킷들
이러한 패킷은 호스트가 역방항 링크 오디오 채널들을 인에이블 또는 디스에이블 시키고 이러한 스트림의 데이터 샘플 레이트를 설정하도록 하여준다. 호스트는 디스플레이 성능 패킷에서 유효하다고 정의된 샘플 레이트를 선택한다. 호스트가 유효하지 않은 샘플 레이트를 선택하면, 디스플레이는 호스트로 오디오 스트림을 전송하지 않을 것이다. 디스플레이 시스템이 초기에 파워-업되거나 또는 접속시에 가정된 디폴트 상태는 역방향 링크 오디오 스트림이 디스에이블되는 상태이다. 역방향 오디오 샘플 레이트 패킷의 포맷은 도31에 제시된다. 도31에 제시된바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 오디오 샘플 레이트, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 79 패킷을 식별되고, 미리-선택된 4 바이트의 고정 길이를 사용한다.
23. 디지털 컨텐츠 보호 오버헤드 패킷들
이러한 패킷은 호스트 및 디스플레이가 사용되는 디지털 컨텐츠 보호 방법과 관련된 메세지들을 교환하도록 하여준다. 현재, 2개의 컨텐츠 보호 타입들, 즉 장래의 대안적인 보호 방식 지정들을 위해 비축된 고-대역폭 디지털 컨텐츠 보호 시스템(HDCP) 또는 디지털 전송 컨텐츠 보호(DTCP)가 고려된다. 사용되는 방법은 이러한 패킷에서 컨텐츠 보호 타입 파라미터에 의해 규정된다. 이러한 컨텐츠 보호 오버헤드 패킷의 포맷은 도32에서 제시된다. 도32에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 컨텐츠 보호 타입, 컨텐츠 보호 오버헤드 메세지들, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 80 패킷으로 식별된다.
24. 투명 컬러 인에이블 패킷들
투명 컬러 인에이블 패킷은 어떤 컬러가 디스플레이에서 투명한지를 규정하고 이미지들을 디스플레이하기 위한 투명 컬러의 사용을 인에이블 또는 디스에이블하기 위해 사용된다. 이러한 성능을 갖는 디스플레이들은 디스플레이 성능 패킷의 디스플레이 특징 성능 표시기들의 4비트에서 이러한 성능을 보고할 것이다. 투명 컬러에 대한 값을 갖는 픽셀이 비트맵에 기록될 때, 이러한 컬러는 이전 값으로부터 변경되지 않는다. 투명 컬러 인에이블 패킷의 포맷은 도33에 제시된다. 도33에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 투명 컬러 인에이블, 데이터 포맷 서술자, 투명 픽셀 값, 및 CRC 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 1-바이트 타입 필드들에서 타입 81 패킷으로 식별되고, 10 바이트의 미리-선택된 고정 길이를 사용한다.
25. 라운드 트립 지연 측정 패킷들
라운드 트립 지연 측정 패킷은 호스트로부터 클라이언트(디스플레이)로의 지연 및 클라이언트(디스플레이)로부터 호스트로의 지연을 더한 전파 지연값을 측정하는데 사용된다. 이런 측정은 본질적으로 라인 드라이버들, 수신기들, 및 상호접속 서브-시스템에서 존재하는 지연들을 포함한다. 이러한 측정치는 상기에서 일반적으로 기술된 바와 같이 역방향 링크 인캡슐레이션 패킷에서 역방향 링크 레이트 제수(divisor) 파라미터들 및 턴어라운드(turn around) 지연을 설정하는데 사용된다. 이러한 패킷은 MDDI 링크가 특정 애플리케이션에 대해 의도된 최대 속도에서 운영될 때 가장 유용하다. MDDI_Stb 신호는 모든 제로 데이터가 다음 필드들 동안 전송되는 것처럼 작용한다: 모든 제로, 양쪽 보호 시간들, 및 측정 주기. 이는 MDDI_Stb 가 데이트 레이트의 1/2 에서 토글하도록 하여 측정 주기동안 디스플레이에서 주기적 클럭으로 사용될 수 있도록 한다.
라운드 트립 지연 측정 패킷의 포맷은 도34에서 제시된다. 도34에 제시된 바와 같이, 이러한 패킷 타입은 패킷 길이, 패킷 타입, 파라미터 CRC, 스트로브 정렬, 모든 제로, 보호 시간 1, 측정 주기, 보호 시간 2, 및 드라이버 리-인에이블 필드들을 가지도록 구성된다. 이러한 패킷 타입은 일반적으로 타입 82 패킷으로서 식별되고, 535 비트의 미리-선택된 고정 길이를 사용한다.
라운드 트립 지연 측정 패킷 동안 발생하는 이벤트들의 타이밍은 도35에 제시된다. 도35에서, 호스트는 모든 제로 및 보호 시간 1 필드들에 앞서 스트로브 정렬 필드들 및 파라미터 CRC의 존재에 의해 제시되는 라운드 트립 지연 측정 패킷을 전송한다. 지연(3502)은 패킷이 클라이언트 디스플레이 장치 또는 처리 회로에 도달하기 전에 발생한다. 디스플레이가 패킷을 수신하면, 디스플레이에 의해 결정된 측정 주기의 시작에서 실제와 같이 정확하게 O×ff, 0×ff, 0×f 패턴을 전송한다. 디스플레이가 이러한 시퀀스를 전송하기 시작하는 실제 시간은 호스트의 관점으로부터 측정 주기의 시작으로부터 지연된다. 이러한 지연량은 패킷이 라인 드라이버, 수신기, 및 상호접속 시스템을 통해 전파하는데 걸리는 시간이다. 유사한 지연량(3504)이 패턴이 디스플레이로부터 호스트로 다시 전파하는데 발생된다.
클라이언트로 및 클라이언트로부터 신호 횡단에 대한 라운드 트립 지연시간을 정확하게 결정하기 위해, 호스트는 O×ff, 0×ff, 0×f 시퀀스의 시작이 도착시에 검출될 때 까지 측정 주기의 시작 후에 발생하는 비트 시간 주기들의 수를 카운트한다. 이러한 정보는 왕복 신호가 호스트로 부터 클라이언트로 그리고 나서 다시 클라이언트로부터 호스트로 전송하는데 걸리는 시간량을 결정하는데 사용된다. 그리고나서, 이러한 양의 약 1/2은 클라이언트로의 일방향 신호 전송에 대해 발생된 지연으로 간주된다.
디스플레이는 O×ff, 0×ff, 0×f 패턴의 최종 비트를 전송한 바로 직후에 그 라인 드라이버들을 디스에이블시킨다. 보호 시간 2는 호스트가 다음 패킷의 패킷 길이를 전송하기 전에 디스플레이의 라인 드라이버들이 완전히 고-임피던스 상태로 진행하는 시간을 허용한다. 동면 풀-업 및 풀-다운 저항(도 42 참조)들은 MDDI_데이터 신호들이 라인 드라이버들이 호스트 및 디스플레이 모두에서 디스에이블되는 인터벌에서 유효 저 레벨로 유지되도록 하여준다.
D. 패킷 CRC
CRC 필드들은 패킷들의 끝에 그리고 종종 매우 큰 데이터 필드를 가지고 있어서 전송 동안 에러 가능성이 많은 패킷 내의 임의의 보다 중요한 파라미터들의 후에 나타난다. 2개의 CRC 필드들을 갖는 패킷들에서, 하나만이 사용되는 경우, CRC 발생기는 제1 CRC 후에 재 초기화되어 긴 데이터 필드를 뒤따르는 CRC 계산들이 패킷의 시작에서 파라미터들에 의해 영향을 받지 않도록 한다.
본 발명의 실시예에서, CRC 계산을 위해 사용되는 다항식은 CRC-16,또는 X16+X15+X2+X0 로 알려진다. 본원발명을 구현하는데 유용한 CRC 발생기 및 검사기(3600)의 예시적인 구현이 도36에 제시된다. 도36에서, CRC 레지스터(3602)는 Tx_MDDI_Data_Before_CRC 상에서 입력되는 패킷의 제1 비트의 전송 바로 전에 0×0001 값으로 초기화되고, 그리고 나서 패킷의 바이트들은 첫번째 LSB로 시작하는 레지스터내로 시프트된다. 이러한 도에서 레지스터 비트 번호들은 사용되는 다항식의 차수에 상응하고 MDDI에 의해 사용되는 비트 위치들이 아님을 주의하여야 한다. CRC 레지스터를 단일 방향으로 이동시키는 것이 보다 효율적이고, 이는 CRC 비트 15가 MDDI CRC 필드의 비트 위치 0 에 나타나고, CRC 레지스터 비트 14가 MDDI CRC 비트 위치 1에 나타나는 방식으로 MDDI 비트 위치 14가 도달될 때 까지 수행되도록 하여준다.
예로서, 디스플레이 요청 및 상태 패킷들에 대한 패킷 컨텐츠들이 0×07, 0×46, 0×000400, 0×00(또는 0×07, 0×00,0×46, 0×00, 0×04, 0×00, 0×00 과 같이 바이트 시퀀스로서 표현됨)이고, 멀티플렉서들(3604,3606), 및 NAND 게이트(3608)를 사용하여 전송되면, Tx_MDDI_Data_With_CRC 라인 상에서의 결과적인 CRC 출력은 0×0ea1(또는 0×a1, 0×0e 시퀀스로서 표현됨)이다.
CRC 발생기 및 검사기(3600)가 CRC 검사기로 구성될 때, Rx_MDDI_Data 라인에서 수신되는 CRC 는 멀티플렉서(3604) 및 NAND 게이트(3608)로 입력되고, NOR 게이트(3610), 배타적-OR(NOR) 게이트(3612), 및 AND 게이트(3614)를 사용하여 CRC 레지스터에서 발견된 값과 비트 단위로 비교된다. AND 게이트(3614)에 의해 출력될 때, 임의의 에러가 발생하면, CRC 는 게이트(3614)의 출력을 레지스터(3602)의 입력으로 접속시킴으로써 CRC 에러를 포함하는 매 패킷에 대해 한번 증분된다. 도36에 제시된 예시적 회로가 주어진 CHECK_CRC_NOW 윈도우 내에서 하나 이상의 CRC 에러 신호를 출력할 수 있음을 주목하라(도 37b 참조). 따라서 CRC 에러 카운터는 CHECK_CRC_NOW 가 활성인 각 인터벌 내에서 제1 CRC 에러 인스턴스만을 카운트할 것이다. CRC 발생기로서 구현되면, CRC 는 패킷의 끝과 일치하는 시간에서 CRC 레지스터로부터 클럭된다.
입력 및 출력 신호들, 및 인에이블 신호들에 대한 타이밍은 도37a 및 37b에 제시된다. CRC 발생 및 데이터 패킷의 전송은 도37a 에 제시되어 있고, Gen_Reset, Check_CRC_NOW, Generate_CRC_NOW, Sending_MDDI_Data 신호들, Tx_MDDI_Data_Before_CRC 및 Tx_MDDI_Data_With_CRC 신호들에 대한 상태(0,1)을 갖는다. 데이터 패킷의 수신 및 CRC 값에 대한 검사가 도37에 제시되어 있고, Gen_Reset, Check_CRC_Now, Generate_CRC_Now, Sending_MDDI_Data 신호, Rx_MDDI_Data 및 CRC 에러 신호들에 대한 상태를 갖는다.
Ⅴ. 동면으로부터 링크 재시작
호스트는 동면 상태로부터 순방향 링크로 재시작할 때, 대략 150μsec 동안 MDDI_Data 를 로직 1 상태가 되도록 하고 그리고 나서 MDDI_Stb를 활성화시키고 동시에 MDDI_Data를 50μsec 동안 로직 제로 상태가 되도록 하고, 그리고 나서 서브-프레임 헤더 패킷을 전송함으로써 순방향 링크 트래픽을 개시한다. 이는 일반적으로 신호들 사이에 충분한 세틀링 시간을 제공함으로써 서브-프레임 헤더 패킷이 전송되기 전에 버스 접속들이 해결되도록 하여 준다.
클라이언트, 여기서 디스플레이가 호스트로부터 데이터 또는 통신을 필요로할 때, 클라이언트는 비록 다른 주기들이 요구에 따라 사용될 수 있지만 대략 70 μsec 동안 MDDI_Data0 라인을 로직 1 상태가 되도록 하고, 그리고 나서 드라이버를 고 임피던스 상태가 되도록 함으로써 드라이버를 디스에이블 시킨다. 이러한 동작은 호스트가 순방향 링크(208) 상에서 데이터 트래픽을 시작 또는 재시작하도록 하여주고 그리고 그 상태로 클라이언트를 폴링한다. 호스트는 50μsec 이내에서 요청 펄스의 존재를 탐지하여야만 하고, 그리고 나서 MDDI_Data0 를 150μsec 동안 로직 1이 그리고 50μsec 동안 로직 제로가 되도록 하는 스타트업 시퀀스를 시작한다. 디스플레이는 50μsec 이상 동안 로직 1 상태의 MDDI_Data0를 탐지하지 못하면, 서비스 요청을 전송하여서는 안된다. 이러한 시간들의 선택 및 동면 처리 및 스타트업 시퀀스와 관련된 인터벌의 허용한도에 대한 내용은 하기에서 기술될 것이다.
무경쟁을 갖는 일반적인 서비스 요청 이벤트(3800)에 대한 처리 단계들의 예가 도38에 제시되어 있고, 여기서 이벤트들은 문자 A,B,C,D,E,F, 및 G를 사용하여 편의를 위해 라벨링된다. 링크가 저-전력 동면 상태로 전이할 것이라는 것을 알리기 위해 호스트가 링크 차단 패킷을 클라이언트에게 전송할 때, 이러한 처리는 포인트 A 에서 개시된다. 다음 단계에서, 호스트는 포인트 B에 제시된 바와 같이, MDDI_Data0 드라이버를 디스에이블시키고 MDDI_Stb 드라이버를 로직 제로로 설정함으로써 저전력 동면 상태로 진입한다. MDDI_Data0는 고-임피던스 바이어스 네트워크에 의해 제로 레벨이 된다. 약간의 시간 주기 후에, 클라이언트는 포인트 C에 제시된 바와 같이 MDDI_Data0를 로직 1 레벨이 되도록 함으로써 서비스 요청 펄스를 전송한다. 호스트는 여전히 고-임피던스 바이어스 네트워크를 사용하여 제로 레벨을 나타내지만, 클라이언트의 드라이버는 이러한 라인을 로직 1 레벨로 강요한다. 50μsec 내에, 호스트가 서비스 요청 펄스를 인지하고 포인트 D 에 제시된 바와 같이 그 드라이버를 인에이블함으로써 MDDI_Data0 상에 로직 1 레벨을 어써트한다. 그리고 나서 클라이언트는 서비스 요청 펄스를 어스트하는 시도를 중단하고 포인트 E 에 제시된 바와 같이 클라이언트는 그 드라이버를 고-임피던스 상태로 둔다. 호스트는 포인트 F에 제시된 바와 같이, MDDI_Data0를 50μsec 동안 로직 제로 레벨이 되도록 하고 또한 MDDI_Data0 상에 로직 제로 레벨과 일치하는 방식으로 MDDI_Stb를 발생시키는 것을 시작한다. MDDI_Data0를 제로 레벨로 어써트하고 50μsec 동안 MDDI_Stb를 제로 레벨이 되도록 한 후에, 호스트는 포인트 G에 제시된 바와 같이 서브-프레임 헤더 패킷을 전송함으로써 순방향 링크상에서 데이터 전송을 시작한다.
유사한 예가 도39에 제시되어 있고, 여기서 서비스 요청은 링크 재시작 시퀀스가 시작된 후에 어써트되고 이벤트들은 다시 문자 A,B,C,D,E,F,G 를 사용하여 라벨링된다. 이는 클라이언트로부터의 요청 펄스가 손상된 서브-프레임 헤더 패킷에 가장 근접하게 오는 최악의 경우를 나타낸다. 이러한 처리는 링크가 저전력 동면 상태로 전이할 것이라는 것을 알리기 위해 호스트가 링크 차단 패킷을 클라이언트 장치에 다시 전송할 때 포인트 A에서 개시한다. 다음 단계에서, 호스트는 포인트 B에 제시된 바와 같이 MDDI_Data0 드라이버를 디스에이블 시키고 MDDI_Stb 드라이버를 로직 제로로 설정함으로써 저-전력 동면 상태로 들어간다. 이전과 같이, MDDI_Data0 은 고-임피던스 바이어스 네트워크에 의해 제로 레벨이 되도록 한다. 일정 시간 후에, 호스트는 포인트 C에 제시된 바와 같이 150μsec 동안 MDDI_Data0를 로직 1 레벨이 되도록 함으로써 링크 재시작 시퀀스를 개시한다. 링크 재시작 시퀀스가 시작한 후 50μsec 가 경과하기 전에, 디스플레이는 또한 포인트 D에 제시된 바와 같이 70μsec 동안 MDDI_Data0 를 어써트한다. 이는 디스플레이가 호스트로부터 서비스를 요청할 필요성을 가지고 호스트가 이미 링크 재시작 시퀀스를 시작하였다는 것을 인지하지 못하기 때문에 발생한다. 그리고 나서 클라이언트는 서비스 요청 펄스를 어써트하는 시도를 중단하고, 클라이언트는 포인트 E에 제시된 바와 같이 그 드라이버를 고-임피던스 상태로 둔다. 호스트는 포인트 F에 제시된 바와 같이, 50μsec 동안 MDDI_Data0를 로직 제로 레벨이 되도록 하고, 또한 MDDI_Data0 에서 로직 제로 레벨과 일치하는 방식으로 MDDI_Stb 를 발생시키기 시작한다. MDDI_Data0를 제로 레벨로 어써트하고, 50μsec 동안 MDDI_Stb를 제로 레벨이 되도록 한 후에, 호스트는 포인트 G에 제시된 바와 같이 서브-프레임 헤더 패킷을 전송함으로써 순방향 링크상에서 데이터 전송을 시작한다.
Ⅵ. 인터페이스 전기적 내역들
본원발명의 실시예에서, 비제로 복귀(NRZ) 포맷의 데이터는 데이터-스트로브 신호 또는 DATA-STB 포맷을 사용하여 인코딩되고, 이는 클럭 정보가 데이터 및 스토로브 신호들 내에 내장되도록 하여준다. 클럭은 복합 위상 클럭 루프 회로없이 복원될 수 있다. 데이터는 비록 다른 도체들, 프린팅된 와이어들, 또는 전송 엘리먼트들이 사용될 수 있지만, 앞서 언급한 바와 같이 와이어-라인 케이블을 사용하여 일반적으로 구현되는 양-방향성 차동 링크 상에서 전송된다. 스트로브 신호(STB)는 단지 호스트에 의해서만 구동되는 일-방향성 링크 상에서 전송된다. 데이터 라인 또는 신호 상에서 동일하게 유지되는 백 투 백 상태, 0 또는 1이 존재할 때 마다 스트로브 신호는 값(0 또는 1)을 토글한다.
비트 "1110001011"과 같은 데이터 시퀀스가 DATA-STB 인코딩을 사용하여 어떻게 전송될 수 있는지에 대한 예가 도 40에 제시된다. 도 40에서, DATA 신호(4002)는 신호 타이밍 차트의 최상 라인에 제시되고, STB 신호(4004)는 두번째 라인에 제시되며, 매번 적절하게 정렬된다(공통 출발 포인트). 시간이 경과하여, DATA 라인(4002)(신호) 상에 상태 변화가 발생하면, STB 라인(4004)(신호)은 이전 상태를 유지하고, 따라서 DATA 신호의 첫번째 제"1" 상태는 그 출발값인 STB 신호에 대한 첫번째 "0" 상태와 코릴레이트된다. 그러나, DATA 신호의 상태 레벨이 변경되지 않으면, STB 신호는 반대 상태, 또는 현재 예에서 "1"로 토글하고, 도 40의 예에서 처럼 DATA 는 또 다른 '1' 값을 제공한다. 즉, DATA 및 STB 사이에 비트 사이클 당 하나 및 단지 하나의 전이가 항상 존재한다. 따라서, DATA 신호가 '1'에 머무를때 STB 신호는 이번에는 '0'으로 전이하고 DATA 신호가 '0' 레벨로 변경할 때 이러한 레벨 또는 값을 저장한다. DATA 신호가 '1' 에 머무르면, STB 신호는 반대 상태 또는 현재 예에서 '1' 로 토글하고, DATA 신호는 레벨 또는 값들을 변경하거나 저장한다.
이러한 신호들을 수신할 때, 배타적-OR(XOR) 연산이 DATA 및 STB 신호들 상에서 수행되어 클럭 신호(4006)를 발생시키고, 이는 요구되는 데이터 및 스토로브 신호들과의 상대적인 비교를 위해 타이밍 차트의 하단에 제시된다. 호스트에서 입력 데이터로부터 DATA 및 STB 출력들 또는 신호들을 발생시키고, 그리고 나서 클라이언트에서 DATA 및 STB 신호들로부터 데이터를 복원 및 추출하는데 유용한 회로의 예가 도 41에 제시된다.
도 41에서, 전송 부분(4100)은 중개 신호 경로(4102) 상에서 원래의 DATA 및 STB 신호들을 발생 및 전송하는데 사용되고, 수신 부분(4120)은 신호를 수신하고 데이터를 복원하는데 사용된다. 도 41에 제시된 바와 같이, 호스트로부터 클라이언트로 데이터를 전송하기 위해, 데이터 신호는 회로를 트리거하는 클럭 신호와 함께 2개의 D-타입 플립플롭 회로 엘리먼트들(4104 및 4106)로 입력된다. 2개의 플립플롭 회로 출력들(Q)은 그리고 나서 2개의 차동 라인 드라이버들(4108 및 4110)(전압모드)를 사용하여 신호들의 차동 쌍 MDDI_Data0+, MDDI_Data0- 및 MDDI_Stb+, MDDI_Stb- 로 분할된다. 3-입력 배타적-NOR(XNOR) 게이트, 회로 또는 로직 엘리먼트(4112)는 양 플립플롭들의 출력들 및 DATA를 수신하고, MDDI_Stb+, MDDI_Stb- 신호를 발생시키는 제2 플립플롭에 대한 데이터 입력을 제공하는 출력을 발생시키기 위해 접속된다. 편의상, XNOR 게이트는 스트로브를 발생시키는 플립플롭의 Q 출력을 효과적으로 인버팅하고 있음을 표시하기 위해 위치되는 인버젼 버블을 가지고 있다.
도 41의 수신 부분(4120)에서, MDDI_Data0+, MDDI_Data0- 및 MDDI_Stb+, MDDI_Stb- 신호들은 차동 신호들로부터 하나의 출력들을 발생시키는 2개의 차동 라인 수신기들(4122 및 4124) 각각에 의해 수신된다. 그리고 나서 증폭기들의 출력들은 클럭 신호를 발생시키는 2-입력 배타적-OR(XOR) 게이트, 회로, 로직 엘리먼트(4126)의 입력들 각각에 입력된다. 클럭 신호는 지연 엘리먼트(4132)를 통해 DATA 신호의 지연된 버젼을 수신하는 2개의 D-타입 플립플롭 회로들(4128 및 4130) 각각을 트리거하는데 사용되고, 이들 중 하나(4128)는 데이터 '0' 값을 발생시키고 다른 하나(4130)는 데이터 '1'값을 발생시킨다. 클럭은 또한 XOR 로직으로부터 독립 출력을 갖는다. 클럭 정보는 DATA 및 STB 라인들 사이에서 분배되기 때문에, 어떤 신호도 클럭 레이트의 1/2 보다 빨리 상태들 사이에서 전이하지 않는다. 클럭 정보가 DATA 및 STB 신호들의 배타적-OR 처리를 사용하여 재발생되기 때문에, 시스템은 클럭 신호가 하나의 전용 데이터 라인 상에서 직접 전송되는 경우에 비해 입력 데이터 및 클럭 사이의 스큐량의 두배를 효과적으로 허용한다.
MDDI_Data+, MDDI_Data- 및 MDDI_Stb+, MDDI_Stb- 신호들은 잡음의 부정적 영향들로부터 면역성을 최대화하기 위해 차동 모드로 동작된다. 차동 신호 경로의 각 부분은 신호들을 전송하는데 사용되는 케이블 또는 도체의 특성 임피던스의 1/2을 가지고 종단된 소스이다. MDDI_Data+, MDDI_Data- 는 호스트 및 클라이언트의 양단부들에서 종단된 소스이다. 이러한 드라이버들 중 오직 하나만이 주어진 시간에서 동작하기 때문에, 전송링크에 대한 소스에서 항상 종단이 존재한다. MDDI_Stb+, MDDI_Stb- 신호들은 호스트에 의해서 구동된다.
드라이버들, 수신기들, 및 독창적인 MDD 인터페이스의 부분으로서 신호들을 전송하기 위한 종단들을 달성하는데 유용한 엘리먼트들의 예시적인 구성이 도 42에 제시되어 있고, MDDI_Data 및 MDDI_Stb의 대응하는 DC 전기 상세내역들이 테이블 Ⅶ에 제시되어 있다. 이러한 예시적인 인터페이스는 1볼트 전력 스윙보다 작은 여기서 200mV의 저전력 센싱 및 저전력 드레인을 사용한다.
테이블7
파라미터 내용 Min Typ Max 유닛
Rterm 직렬 종단 41.3 42.2 43.0 0hms
Rhibernate 동면 상태 바이어스 종단 8 10 12 K-Ohms
Vhibernate 동면 상태 오픈-회로 전압 1.5 3.3 V
Voutput-range GND에 대한 허용가능한 드라이버 출력 범위 0 2.8 V
VOD+ 드라이버 차동 출력 고전압 0.8 V
VOD- 드라이버 차동 출력 저전압 -0.8 V
VIT+ 수신기 차동 입력 고 임계 전압 100 mV
VIT- 수신기 차동 입력 저 임계 전압 -100 mV
VInput-Range GND에 대한 허용가능한 수신기 입력 전압 범위 0 2.8 V
Iin 입력 누설전류(동면 바이어스 배제) -25 25
차동 라인 드라이버들 및 라인 수신기들의 전기적 파라미터들 및 특성들은 테이블 Ⅷ에 제시되어 있다. 기능적으로, 드라이버는 입력에 대한 로직 레벨을 바로 양의 출력으로 전송하고, 입력의 역을 음의 출력으로 전송한다. 입력으로부터 출력들로의 지연은 차동적으로 구동되는 차동 라인과 잘 매칭된다. 대부분의 구현에서, 출력들에 대한 전압 스윙은 전력 소비 및 전자기적 방사들을 최소화하기 위해 입력에 대한 스윙보다 작다. 테이블 7는 대략 0.8V 의 최소 전압 스윙을 제시한다. 그러나, 다른 값들이 사용될 수 있고, 이는 당업자가 잘 이해할 수 있으며, 본원발명은 설계 제한에 따라 일부 실시예들에서 0.5 또는 0.6V의 작은 값을 고려한다.
차동 라인 수신기들은 고속 전압 비교기와 동일한 특성을 가지고 있다. 도 41에서, 버블이 없는 입력은 양 입력이고 버블을 갖는 입력은 음 입력이다. 출력은 (Vinput+)-(Vinput-)가 제로보다 크면 로직 1 이다. 이를 기술하는 다른 방법은 로직 제로 및 1 전압 레벨들에서 클리핑된 출력을 갖는 매우 큰(실제로 무한대) 이득을 갖는 차동 증폭기이다.
상이한 쌍들 사이의 지연 스큐는 가장 높은 잠재적인 속도에서 차동 전송 시스템을 동작하기 위해 최소화되어야 한다.
도 42에서, 호스트 제어기(4202) 및 클라이언트 또는 디스플레이 제어기(4204)는 통신 링크(4206) 상에서 패킷들을 전송하기 위해 제시된다. 호스트 제어기는 전송될 호스트 DATA 및 STB 신호들을 수신하고 또한 전송될 클라이언트 Data 신호들을 수신하기 위해 일련의 3개의 드라이버들(4210,4212,4214)을 사용한다. 호스트 DATA 통행을 책임지는 드라이버는 호스트로부터 클라이언트로의 전송이 요구될 때에만 통신 링크의 활성을 허용하기 위해 인에이블 신호 입력을 사용한다. STB 신호는 데이터 전송의 부분으로서 형성되기 때문에, 어떠한 추가적인 인에이블 신호도 그 드라이버(4212)를 위해 사용되지 않는다. DATA 및 STB 드라이버들의 각각의 출력들은 종단 임피던스들 또는 저항들(4216a,4216b,4216c,4216d)에 각각 접속된다.
종단 저항(4216a,4216b)은 또한 STB 신호 처리를 위한 클라이언트측 수신기(4220)의 입력에 대한 임피던스로서 동작하고, 추가적인 종단 저항들(4216e,4216f)은 저항(4216c,4216d)과 직렬로 클라이언트 데이터 처리 수신기(4222)의 입력 상에 배치된다. 클라이언트 제어기의 6번째 드라이버(4226)는 클라이언트로부터 호스트로 전송될 데이터 신호들을 준비하기 위해 사용되고, 여기서 드라이버(4214)는 종단 저항(4216c,4216d)을 통해 입력 측에서 처리할 호스트로의 전송을 위한 데이터를 처리한다.
2개의 추가적인 저항들(4218a,4218b)은 동면 제어의 부분으로서 각각 종단 저항들 및 그라운드 및 전압 소스(4220) 사이에 위치된다. 전압 소스는 데이터 흐름을 관리하기 위해 전송 라인들을 이전에 논의된 고 또는 저 레벨이 되도록 하는데 사용된다.
상기 드라이버들 및 임피던스들은 이산 컴포넌트들 또는 보다 비용 효율적인 인코더 또는 디코더 솔루션으로 동작하는 주문형 집적 회로(ASIC)의 부분으로서 형성될 수 있다.
한 쌍의 도체들 상에서 MDDI_Pwr 및 MDDI_Gnd로 라벨링된 신호들을 사용하여 호스트 장치로부터 클라이언트 장치 또는 디스플레이로 전력이 전송되는 것을 쉽게 파악할 수 있다. 신호의 MDDI_Gnd 부분은 기준 그라운드 및 전력 공급 리턴 경로 또는 디스플레이 장치에 대한 신호로서 동작한다. 예시적인 구현에서, 저전력 애플리케이션에 있어서, 디스플레이 장치는 5OOmA 까지 허용된다. MDDI_Pwr 신호는 리튬-이온 타입 배터리 또는 호스트 장치에 위치하는 배터리 팩과 같은 휴대용 전원소스들로부터 제공될 수 있고, MDDI_Gnd에 대한 3.2에서 4.3 볼트의 범위를 갖는다.
Ⅶ. 타이밍 특성
A. 개관
호스트로부터 서비스를 보장하기 위해 클라이언트에 의해 사용되고 이러한 서비스를 제공하기 위해 호스트에 의해 사용되는 단계들 및 신호 레벨들이 도 43에 제시된다. 도 43에서, 제시되는 신호들의 제1 부분은 호스트로부터 전송되는 링크 차단 패킷을 보여주고 데이터 라인은 고-임피던스 바이어스 회로를 사용하여 로직 제로가 된다. 어떠한 데이터도 그 드라이버가 디스에이블된 클라이언트 디스플레이 또는 호스트에 의해 전송되지 않는다. MDDI_Stb 가 링크 차단 패킷 동안 동작하기 때문에, MDDI_Stb 신호 라인에 대한 일련의 스트로브 펄스들이 도면 하단에서 볼수 있다. 이러한 패킷이 종료하고 호스트가 바이어스 회로 및 로직을 제로가 되도록함에 따라 로직 레벨이 제로로 변경되면, MDDI_Stb 신호 라인은 또한 제로 레벨로 변경된다. 이는 호스트로부터 최종 신호 전송 또는 서비스의 종료를 나타내고 과거의 어느 때라도 발생할 수 있고, 서비스 사전 중지 및 서비스 개시에 앞선 신호들의 상태를 보여주기 위해 포함된다. 필요하다면, 신호가 이러한 호스트 장치에 의해 취해진 '알려진' 이전 통신 없이 적절한 상태로 통신 링크를 리셋하기 위해 전송될 수 있다.
도 43에 제시된 바와 같이, 클라이언트로부터의 신호 출력은 초기에 제로 로직 레벨로 설정된다. 즉, 클라이언트 출력은 고 임피던스이고 드라이버는 디스에이블된다. 서비스가 요청될 때, 클라이언트는 그 드라이버를 인에이블시키고 tservice로 지정된 시간 주기 동안 서비스 요청을 호스트로 전송하고, 이 기간 동안 라인은 로직 1 레벨이 되도록 한다. 그리고 나서 임의의 시간이 경과하고 또는 thost-detect로 지정된 호스트가 요청을 탐지하기 전에 임의의 시간이 필요하고, 이 후에 호스트는 신호를 로직 1 레벨이 되도록 함으로써 링크 스타트업 시퀀스를 통해 응답한다. 이 지점에서, 클라이언트는 요청을 디-어써트하고 서비스 요청 드라이버를 디스에이블시켜 클라이언트로부터의 출력 라인은 다시 제로 로직 레벨로 돌아간다. 이러한 시간동안, MDDI_Stb 신호는 로직 제로 레벨이다.
호스트는 trestart-high로 지칭된 시간 동안 호스트 데이터 출력을 '1' 레벨이 되도록 하고, 이 시간 후에 호스트는 로직 레벨을 제로가 되도록 하고 trestrt-low로 지정된 주기 동안 MDDI_Stb를 활성화시키고, 이 시간 후에 제1 순방향 트래픽이 프레임 헤더 패킷을 가지고 시작하며, 그리고 나서 순방향 트래픽 패킷들이 전송된다. MDDI_Stb 신호는 trestrat-low 주기 및 뒤이은 프레임 헤더 패킷 동안 활성이다.
테이블 Ⅷ는 위에서 논의된 다양한 주기들의 길이 및 예시적인 최소 및 최대 데이터 레이트에 대한 관계를 보여주는 시간들을 보여주고, 여기서
tbit=1/(Link_Data_Rate) 이다.
테이블 8
파라미터 내용 Min Typ Max 유닛
tservice 디스플레이 서비스 요청 펄스 듀레이션 60 70 80 μsec
trestrat-high 호스트 링크 재시작 고 펄스 듀레이션 140 150 160 μsec
trestrat-low 호스트 링크 재시작 저 펄스 듀레이션 40 50 60 μsec
tdisplay-detect 디스플레이가 링크 재시작 시퀀스를 탐지하는 시간 1 50 μsec
thost-detect 호스트가 서비스 요청 펄스를 탐지하는 시간 1 50 μsec
1/tbit-min-perf 최소 성능 장치에 대한 링크 데이터 레이트 0.001 1 Mbps
1/tbit-max-perf 장치에 대한 최대 링크 데이터 레이트 범위 0.001 450 Mbps
역 링크 데이터 레이트 0.0005 50 Mbps
tbit 하나의 순방향 링크 데이터 비트의 주기 2.2 106 nsec
당업자는 도 41 및 42에 제시된 개별 엘리먼트들의 기능들을 잘 이해할 수 있고, 도 42에 제시된 엘리먼트들의 기능이 도 43에 제시된 타이밍 다이어그램에 의해 확인된다. 도 42에 제시된 일련의 종단들 및 동면 저항들의 상세한 내용들은 도 41로부터 생략되었고, 이는 데이터-스트로브 인코딩을 수행하고 이로부터 클럭을 복원하는 방법을 기술하는데 이러한 정보가 불필요하기 때문이다.
B. 데이터-스트로브 타이밍 순방향 링크
호스트 드라이버 출력으로부터 순방향 링크 상에서 데이터 전송을 위한 스위칭 특성들이 테이블 Ⅸ에 제시된다. 테이블 Ⅸ는 발생하는 임의의 신호 전이들에 대한 일반적인 시간들에 대한 요구되는 최소 및 최대의 테이블 폼을 나타낸다. 예를 들어, 데이터 값의 시작에서 끝으로('0' 또는 '1'의 출력)발생하는 전이에 대한 일반적인 시간 길이, tdd-(host-output)로 언급되는 Data0 to Data0 전이는 ttbit이고, 최대 시간은 대략 ttbit+0.5nsec 이고 최소 시간은 대략 ttbit-0.5nsec 이다. Data0, 다른 데이터 라인들(DataX), 및 스트로브 라인들(Stb) 에서의 전이들 사이의 상대적인 공간은 도 44에 제시되어 있고, 여기서 Data0 to Strobe, Strobe to Strobe, Strobe to Data0, Data0 to non-Data0, non-Data0 to non-Data0, non-Data0 to Strobe, 및 Strobe to non-Data0 전이들이 제시되고, 이들은 각각 ttds-(host-output), ttss-(host-output), ttsd-(host-output), ttddx-(host-output), ttdxdx-(host-output), ttdxs-(host-output), 및 ttsdx-(host-output) 이다.
테이블 9
파라미터 내용 Min Typ Max 유닛들
tdd-(host-output) Data0 to Data0 전이 ttbit-0.5 ttbit ttbit+0.5 nsec
ttds-(host-output) Data0 to Strobe 전이 ttbit-0.8 ttbit ttbit+0.5 nsec
ttss-(host-output) Strobe to Strobe 전이 ttbit-0.5 ttbit ttbit+0.5 nsec
ttsd-(host-output) Strobe to Data0 전이 ttbit-0.8 ttbit ttbit+0.5 nsec
ttddx-(host-output) Data0 to non-Data0 전이 ttbit-0.? ttbit ttbit+0.5 nsec
ttdxdx-(host-output) non-Data0 to non-Data0 전이 ttbit ttbit+0.5 nsec
ttdxs-(host-output) non-Data0 to Strobe 전이 ttbit-0.? ttbit ttbit+0.5 nsec
tsdx-(host-output) Strobe to non-Data0 전이 ttbit-0.? ttbit ttbit+0.5 nsec
순방향 링크 상에서 데이터를 전송하는 동일한 신호들에 대한 클라이언트 수신기 입력의 일반적인 MDDI 타이밍 요구조건들이 테이블 Ⅹ에 제시되어 있다. 동일한 신호들이 시간만 지연되어 논의되기 때문에, 어떠한 새로운 도면이 각각의 라벨들에 대한 신호 특성들 또는 의미를 기술하는데 필요하지 않고, 이는 당업자가 잘 이해할 수 있을 것이다.
테이블 10
파라미터 내용 Min Typ Max 유닛들
tdd-(display-input) Data0 to Data0 전이 ttbit-0.5 ttbit ttbit+0.5 nsec
ttds-(display-input) Data0 to Strobe 전이 ttbit-0.8 ttbit ttbit+0.5 nsec
ttss-(display-input) Strobe to Strobe 전이 ttbit-0.5 ttbit ttbit+0.5 nsec
ttsd-(display-input) Strobe to Data0 전이 ttbit-0.8 ttbit ttbit+0.5 nsec
ttddx-(host-output) Data0 to non-Data0 전이 ttbit-0.? ttbit ttbit+0.5 nsec
ttdxdx-(host-output) non-Data0 to non-Data0 전이 ttbit ttbit+0.5 nsec
ttdxs-(host-output) non-Data0 to Strobe 전이 ttbit-0.? ttbit ttbit+0.5 nsec
tsdx-(host-output) Strobe to non-Data0 전이 ttbit-0.? ttbit ttbit+0.5 nsec
도 45 및 46은 호스트가 호스트 드라이버를 각각 디스에이블 또는 인에이블 할 때 발생할 수 있는 응답에서의 지연의 존재를 보여주는 도이다. 호스트가 역방향 링크 인캡슐레이션 패킷 또는 라운드 트립 지연 측정 패킷과 같은 임의의 패킷들을 전송하는 경우에, 호스트는 요구되는 패킷들, 예를 들면 도 45에 제시된 파라미터 CRC, 스트로브 정렬, 및 모든 제로 패킷들이 전송된 후에 라인 드라이버들을 디스에이블 시킨다. 그러나, 도 45에 제시되는 것과 같이, 비록 임의의 제어 또는 회로 엘리먼트들을 통해 잠재적으로 달성가능하지만, 도 45에 제시된 바와 같이, 라인의 상태는 반드시 '0'으로부터 요구되는 높은 값으로 즉시 스위칭하지 않고, 응답을 위해 호스트 드라이버 디스에이블 지연 주기로 언급되는 시간이 소요된다. 이는 실제로 즉시 발생하여 이러한 시간 주기는 0nsec 이될 수 있고, 보호 시간 1 또는 턴어라운드 1 패킷 주기 동안 발생하는 요구되는 최대 주기 길이 10nsec를 이용하여 보다 긴 시간 주기로 쉽게 확장될 수 있다.
도 46을 살펴보면, 호스트 드라이버가 역방향 링크 인캡슐레이션 패킷 또는 라운드 트립 지연 측정 패킷과 같은 패킷을 전송하기 위해 인에이블되는 경우 신호 레벨 변경이 제시되어 있다. 여기서, 보호 시간 2 또는 턴어라운드 2 패킷 주기 후에, 호스트 드라이버는 인에이블되고 레벨, 여기서 '0' 이 되도록 하기 시작하고, 이러한 값은 호스트 드라이버 인에이블 지연 주기로 언급되는 시간 주기에 근접 또는 도달하고, 이는 제1 패킷이 전송되기에 앞서 드라이버 리-인에이블 주기 동안 발생한다.
유사한 처리가 드라이버들에 대해 발생하고, 신호는 클라이언트 장치, 여기서는 디스플레이로 전송된다. 이러한 주기들 길이에 대한 일반적인 가이드라인 및 그들 각각의 관계는 하기 테이블 ⅩⅠ에서 제시된다.
테이블 11
내용 Min Max 유닛
호스트 드라이버 디스에이블 지연 0 10 nsec
호스트 드라이버 인에이블 지연 0 2.0 nsec
디스플레이 드라이버 디스에이블 지연 0 10 nsec
디스플레이 드라이버 인에이블 지연 0 2.0 nsec
C. 데이터-스트로브 타이밍 역방향 링크
클라이언트 드라이버 출력으로부터 역방향 링크에서 데이터를 전송하는데 사용되는 데이터 및 스트로브 신호들에 대한 타이밍 관계 및 스위칭 특성들이 도 47 및 48에 제시된다. 임의의 신호에 대한 일반적인 시간들이 아래에서 제시된다. 도 47은 전송되는 데이터의 타이밍 및 스트로브 펄스들의 리딩 및 트레일링 에지들 사이의 호스트 수신기 입력에서 관계를 보여준다. 즉, 스트로브 신호들의 상승 및 리딩 에지에 대한 셋-업 타임으로 언급되는 tsu-sr 및 스트로브 신호들의 트레일링 또는 하강 에지에 대한 셋-업 타임으로 언급되는 tsu-sf 가 제시된다. 이러한 셋-업 주기들에 대한 시간의 일반적인 길이는 8nsec 이다.
도 48은 역방향 데이터 타이밍에 의해 전개되는 대응하는 클라이언트 출력 지연 및 스위칭 특성을 보여주는 도이다. 도 48에서, 전송되는 데이터의 타이밍 및 유도된 지연을 설명하는 스트로브 펄스들의 리딩 및 트레일링 에지들 사이의 관계가 제시된다. 즉, 데이터 및 스트로브 신호들의 상승 또는 리딩 에지 사이의 전파 지연, tpd-sr 및 스트로브 신호들의 트레일링 또는 하강 에지 및 데이터 사이의 전파 지연, tpd-sf 로서 언급된다. 이러한 전파 지연 주기들의 일반적인 길이는 8nsec 이다.
Ⅷ. 링크 제어의 구현(링크 제어기 동작)
A. 상태 머신 패킷 프로세서
MDDI 링크 상에서 전송되는 패킷들은 비록 저속이 필요에 따라 수용가능하지만, 매우 빠른 속도, 일반적으로 300Mbps 또는 그 이상의 속도에서 발송된다. 이러한 버스 또는 전송 링크 속도 타입은 현재 상업적으로 이용가능한 일반적 목적의 마이크로프로세서 등이 제어하기에는 너무 크다. 따라서, 이러한 신호 전송 타입을 달성하기 위한 실제적인 구현은 그들이 의도하는 적절한 오디오-비주얼 서브시스템으로 전송되는 패킷들을 발생시키기 위해 입력 패킷 스트림을 파싱하는 프로그램가능한 상태 머신을 이용한다.
일반적 목적의 제어기들, 프로세서들, 또는 처리 엘리먼트들은 낮은 속도 요구를 갖는 제어 또는 상태 패킷들과 같은 일부 정보를 적절하게 작동시키거나 조작하는데 사용될 수 있다. 이러한 패킷들(제어, 상태, 또는 다른 소정 패킷들)이 수신되는 경우, 상태 머신은 데이터 버퍼 또는 유사한 처리 엘리먼트를 통해 일반적 목적의 프로세서로 전송하여 오디오 및 비주얼 패킷들이 동작을 위해 적절할 도착지로 전송되면서 요구되는 결과(효과)를 제공할 수 있도록 패킷들이 동작될 수 있도록 하여준다.
일반적 목적의 프로세서 기능은 일부 모뎀들 또는 그래픽 프로세서들이 일부 기능들을 수행하고 하드웨어 복잡도 및 비용들을 감소시킬 수 있게 하기 위해 컴퓨터의 CPU 처리 전력을 이용하는 것과 동일한 방식으로 처리 전력, 또는 이용가능한 초과 사이클들, 컴퓨터 애플리케이션의 마이크로프로세서(CPUs), 또는 프로세서, 디지털 신호 프로세서(DSPs), 또는 무선 장치에서 발견되는 ASICs를 이용함으로써 일부 실시예들에서 실현될 수 있다. 그러나, 이는 처리 속도, 타이밍, 이러한 엘리먼트들의 전체 동작에 부정적인 영향을 끼치기 때문에, 많은 애플리케이션들에서 전용 회로들 또는 엘리먼트들이 이러한 일반적인 처리를 위해 선호된다.
이미지 데이터가 디스플레이(마이크로-디스플레이) 상에서 관측될 수 있게하기 위해, 또는 호스트에 의해 전송된 모든 패킷들을 신뢰성있게 수신하기 위해, 디스플레이 신호 처리는 순방향 링크 채널 타이밍과 동기되어야만 한다. 즉, 디스플레이에 도달하는 신호들 및 디스플레이 회로들은 적절한 신호 처리가 이뤄지도록 시간 동기되어야 한다. 이러한 동기가 구현되는 방법 또는 신호 처리 단계들에 의해 달성되는 상태들의 상부 레벨 다이어그램이 도 49에 제시된다. 도 49에서, 상태 머신(4900)에 대해 가능한 순방향 링크 동기화 "상태"는 한 개의 비동기 프레임 상태(4904), 두 개의 동기 포착 상태(4902 및 4906) 및 3개의 내부 동기 상태(4908, 4910, 및 4912)로 분류되어 도시된다.
시작 단계 또는 상태(4902)로 도시된 바와 같이, 디스플레이는 사전 선택된 "비동기" 상태에서 시작하여 검출된 제 1 서브프레임 헤더 패킷에서 고유 워드를 검색한다. 상기 비동기 상태는 I 타입 인터페이스가 선택되는 최소 통신 세팅 또는 "복귀" 세팅을 나타내는 것에 주목하여야 한다. 고유 워드가 검색중에 발견되면, 디스플레이는 서브프레임 길이 필드를 저장한다. 상기 제 1 프레임에서 또는 동기화가 실행될 때가지 처리를 위해 CRC 비트의 검사는 실행되지 않는다. 만약 상기 서브프레임 길이가 0이면, 동기 상태 프로세싱은 동기화가 아직 실행되지 않았음을 가리키는 "비동기 프레임"으로 명명된 단계(4904)의 방법에 따라 진행한다. 상기 프로세싱 단계는 도 49의 cond3, 또는 조건 3으로 명명된다. 그와 달리, 만약 프레임 길이가 0 보다 크면, 동기 상태 프로세싱은 인터페이스 상태가 "한개의 동기 프레임 발견"으로 세팅되는 상태(4906)로 진행한다. 상기 프로세싱 단계는 도 49의 cond5 또는 조건 5로 명명된다. 또한, 만약, 상태 머신이 프레임 헤더 패킷과 0 보다 큰 프레임 길이에 대한 우수 CRC 결정을 인식하면, 프로세싱은 "한개의 동기 프레임 발견"상태로 진행하다. 이는 도 49에서 만나는 cond 6 또는 조건 6으로 명명된다.
시스템이 "비 동기"와는 다른 상태에 있는 각각의 상황에서, 고유 워드가 검출되고, 우수 CRC 결과가 서브프레임 헤더 패킷을 위해 결정되며, 서브프레임길이가 0을 초과하면, 인터페이스 상태는 "내부동기" 상태(4908)로 변경된다. 프로세싱에서 상기 단계는 도 49의 cond1, 또는 조건 1으로 명명된다. 다시 말해서, 만약 서브-프레임 헤더 패킷내의 고유 워드 또는 CRC 중 하나가 정확하지 않다면, 동기 상태 프로세싱은 "비동기 프레임"상태의 인터페이스 상태(4902)로 진행하거나 귀환한다. 상기 프로세싱 부분은 도 49의 상태 다이어그램에서 cond2 또는 조건 2로서 명명된다.
B. 동기 포착 시간
인터페이스는 동기가 손실되고 "비동기 프레임"상태로 복귀하는지를 결정하기 이전에 특정수의 "동기 에러"를 수용하도록 구성될 수 있다. 도 49에서, 상태 머신은 "내부 동기 상태"에 도달하고 에러가 전혀 발견되지 않으면, 연속적으로 cond1 을 충족하며 "내부 동기"상태 내에 있는다. 그러나, cond2 결과가 검출되면, 프로세싱은 상태를 "한개의 동기 에러" 상태(4910)로 변경한다. 상기 지점에서, 만약 프로세싱이 또다른 cond1결과를 검출하면, 상태 머신은 "내부 동기" 상태로 복귀하고 또다른 cond2 결과를 만나면 "두개의 동기 에러"상태(4912)로 이동한다. 다시말해서, 만약 cond1이 발생하면, 프로세싱은 상태 머신을 "내부동기"상태로 복귀시킨다. 또한, 또다른 cond2를 만나면 상태 머신은 "비동기"상태로 복귀한다. "링크 차단 패킷"을 만나는 것은 링크가 데이터 전송을 종료하도록 하는 것이며, 동기화하기 위한 어떤 것도 존재하지 않기 때문에 "비동기 프레임"상태로 복귀하며, 이는 도 49의 상태 다이어그램에서 cond4 또는 조건 4로 명명된다.
서브 프레임내의 임의의 고정된 위치에서 나타날 수 있는 고유 워드의 반복되는 "거짓 카피"가 존재할 수 있음이 이해된다. 상기 상황에서, 서브프레임 헤더 패킷의 CRC는 MDD 인터페이스 처리가 "내부 동기" 상태로 진행하기 위해 처리될 때에도 유효하여야 하기 때문에 상태 머신이 서브프레임에서 동기화 할 가능성이 매우 낮다.
서브프레임 헤더 패킷에서 서브프레임 길이는 링크가 차단되어 MDD 인터페이스가 배치되거나 휴지 동면상태로 구성되기 이전에 호스트가 서브프레임을 전송할것임을 나타내도록 0으로 세팅될 수 있다. 상기 경우에, 디스플레이는 단일 서브프레임이 휴지 상태로의 링크 전이 이전에 전송되어야만 하기 때문에 서브프레임 헤더 패킷을 검출한 이후에 순방향 링크를 통해 패킷을 즉시 수신하여야만 한다. 정규의 또는 일반적인 동작에서, 서브프레임 길이는 0이 아니며 디스플레이는 인터페이스가 도 49에서 "IN_SYNC"로 종합적으로 도시된 상태 내에 존재하는 동안 순방향 링크 패킷을 처리한다.
디스플레이가 순방향 링크 신호를 동기화하기 위해 요구되는 시간은 서브프레임 크기 및 순방향 링크 데이터 레이트에 따라 변화할 수 있다. 순방향 링크에서 랜덤하거나 더 랜덤한 데이터의 일부분으로써 고유 워드의 "거짓 카피"를 검출하는 가능성은 서브프레임 크기가 더 클때 더 높아진다. 동시에, 실패 검출로부터 회복하기 위한 가능성은 더 낮아지며, 순방향 링크 데이터 레이트가 더 늦어질 때 이를 실행하기 위해 걸리는 시간은 더 길어진다.
C. 초기화
전술된 바와 같이, "시작(start up)"시기에서 호스트는 최소 요구되거나 원하는 1Mbps의 데이터 레이트로 동작하거나 그 이하로 동작하도록 구성되며, 주어진 애플리케이션을 위한 서브프레임 길이 및 매체 프레임 레이트를 적절히 구성한다. 즉, 순방향 및 역방향 링크 모두는 타입 I의 인터페이스를 사용하여 동작하기 시작한다. 이러한 파라미터들은 일반적으로 호스트가 클라이언트 디스플레이(또는 다른 장치)를 위한 성능 또는 원하는 구성을 결정하는 동안 일시적으로 사용된다. 호스트는 디스플레이가 디스플레이 성능 패킷에 응답할 것을 요청하기 위하여 일(1)의 값에 세팅된 비트 '0'을 갖는 역방향 링크 인캡슐레이션 패킷에 앞서 순방향 링크를 통해 서브프레임 헤더 패킷을 전송하거나 변환한다. 디스프레이가 순방향 링크상에서(또는 순방향 링크를 통해) 동기화를 획득하면, 역방향 링크 또는 채널을 통해 디스플레이 성능 패킷 및 디스플레이 요청 및 상태 패킷을 전송한다.
호스트는 최적이거나 원하는 레벨의 성능을 위해 링크를 어떻게 구성할 것인지를 결정하도록 디스플레이 성능 패킷의 컨텐츠를 검사한다. 호스트는 호스트와 디스플레이가 서로 호환할 수 있는 프로토콜 버전을 사용하는지를 검증하기 위해 프로토콜 버전 및 최소 프로토콜 버전을 검사한다. 프로토콜 버전은 디스플레이 성능 패킷의 최초 2개의 파라미터로 유지되어 다른 프로토콜 엘리먼트가 호환성이 없거나 호환성이 있는 것으로 완전히 이해될 수 없는 경우에도 호환성이 결정될 수 있다.
D. CRC 프로세싱
모든 패킷 타입에 대하여, 패킷 프로세서 상태 머신은 CRC 검사기가 적절히, 또는 적당하게 제어되도록 보장한다. 패킷 프로세서 상태 머신은 또한 CRC 비교가 하나 또는 그 이상의 에러를 검출하면 CRC 에러 카운트기를 증가시키며, 각각의 서브프레임이 처리되기 시작하는 시점에서 CRC 카운터를 리셋한다.
IX. 패킷 처리
상태 머신이 수신하는 전술된 모든 타입의 패킷에 대하여, 상태머신은 인터페이스의 동작을 실행하기 위한 특정 처리 단계 또는 일련의 단계를 수행한다. 순방향 링크 패킷은 일반적으로 하기의 테이블 XII에 열거된 예시적인 처리에 따라 처리된다.
테이블 12
패킷 타입 패킷 프로세서 상태 머신 응답
서브프레임 헤더(SH) 우수 패킷을 확인하고, 서프프레임 길이 필드를 획득하며, 패킷 파라미터를 범용 프로세서에 전송.
채움(F) 데이터를 무시.
비디오 스트림(VS) 비디오 데이터 포맷 서술자 및 다른 파라미터를 설명하고, 필요시 패킷화된 픽셀 데이터를 해독하여, 필요하다면 컬러맵을 통해 픽셀을 변환시키고 픽셀 데이터를 비트맵내의 적절한 위치에 기록.
오디오 스트림(AS) 오디오 샘플 레이트 세팅을 오디오 샘플 클럭 발생기에 전송하고, 특정 크기의 오디오 샘플로 분할하며, 필요시 오디오 샘플 데이터를 해독하고 오디오 샘플을 적절한 오디오 샘플 FIFO로 라우팅.
컬러 맵(CM) 컬러맵 크기 및 오프셋 파라미터를 판독하여 컬러맵 데이터를 컬러맵 메모리 또는 저장 위치에 기록.
역방향 링크 인캡슐레이션(REL) 호스트에 의한 요청시에 상기 패킷 타입을 역방향 링크 인캡슐레이션 패킷의 역방향 링크 플래그 필드를 사용하여 전송.
디스플레이 성능(DC) 적절한 시간에 역방향에서 패킷을 전송하는 것을 용이하게 함. 역방향 링크 플래그가 검사되고, 디스플레이 성능 패킷이 필요하다면 전송됨. 디스플레이 요청 및 상태 패킷이 적절히 전송됨.
키보드(K) 만약 하나가 존재하면 상기 패킷을 범용 프로세서에 및 범용 프로세서로부터 전달함으로써 키보드 타입의 디바이스와 통신하며, 사용이 지원됨.
포인팅 디바이스(PD) 만약 하나가 존재하면 상기 패킷을 범용 프로세서에 및 범용 프로세서로부터 전달함으로써 포인팅 타입의 디바이스와 통신하며, 사용이 지원됨.
링크 차단(LS) 링크 차단 사실을 기록하고 범용 프로세서에 이를 통지
디스플레이 서비스 요청 및 상태(DSRS) 상기 패킷을 역방향 링크 인캡슐레이션 패킷내의 제 1 패킷으로 전송.
비트 블록 전송(BPT) 비디오 데이터 포맷 서술자와 같은 패킷 파라미터를 해석하여 어떤 픽셀이 먼저 이동할지를 결정하여 필요하다면 픽셀을 비트맵내로 이동.
비트맵 영역 채움(BAF) 패킷 파라미터를 해석하고, 필요하다면 컬러맵을 통해 픽셀을 변환하여 픽셀 데이터를 비트맵내의 적절한 위치에 기록.
비트맵 패턴 채움(BPF) 패킷 파라미터를 해석하고, 필요하다면 패킷화된 픽셀 데이터를 해독하여, 필요하다면 컬러맵을 통해 픽셀을 변환시키고 픽셀 데이터를 비트맵내의 적절한 위치에 기록.
통신 링크 채널(CLC) 상기 데이터를 범용 프로세서에 즉시 전송함.
동면기간 동안 디스플레이 서비스 요청(DSR) 범용 프로세서는 낮은 레벨의 전송 요청 기능을 제어하며 스스로 링크 재시작에서의 경쟁을 검출.
인터페이스 타입 핸드오프 요청(ITHR) 및 인터페이스 타입 확인응답(ITA) 상기 패킷을 범용프로세서에 및 범용프로세서로부터 전달할 수 있음. 상기 타입의 패킷을 수신하고 확인응답에 대한 응답을 형성하기 위한 로직은 실질적으로 최소가 된다. 그러므로, 상기 동작은 또한 패킷 프로세서 상태 머신내에서 실행될 수 있다. 결과적인 핸드오프는 낮은 레벨의 물리계층 동작으로 발생하며, 범용 프로세서의 기능 또는 기능성에 영향을 미치지 않을 수 있다.
수행 타입 핸드오프(PTH) 상기 패킷을 즉시 또는 범용 프로세서에 전송함으로써 작동할 수 있으며, 하드웨어에 모드 변경을 실행할 것을 명령한다.
X. 역방향 링크 데이터 레이트 감소
호스트 링크 제어기를 위해 사용되는 특정 파라미터는 매우 바람직한 최대 또는 최적의 (스케일의) 역방향 링크 데이터 레이트를 얻기 위해 특정 방식으로 조정되거나 구성될 수 있다. 예를 들면, 역방향 링크 인캡슐레이션 패킷의 역방향 데이터 패킷의 역방향 데이터 패킷 필드를 전송하기 위해 사용되는 시간 동안, MDDI_Stb 신호쌍은 순방향 링크 데이터 레이트의 절반으로 주기적인 데이터 클럭을 생성하기 위해 토글(toggle)한다. 이는 호스트 링크 제어기가 모두 0으로 전송중인 것처럼 MDDI_Data0 신호와 일치하는 MDDI_Stb 신호를 발생시키기 때문에 발생한다. MDDI_Stb 신호는 호스트로부터 디스플레이로 전송되고, 디스플레이는 디스플레이로부터 역방향 링크 데이터를 전달하기 위한 클록 신호를 생성하는데 MDDI_stb 신호를 사용하고, 역방향 데이터는 역방향 링크 데이터를 통해 호스트로 다시 전송된다. MDDI를 사용하는 시스템의 순방향 및 역방향 경로에서 신호의 전송 및 처리를 위해 요구되는 일반적인 지연량이 도 50에 도시된다. 도 50에서, 일련의 지연값 1.5nsec., 8.0nsec., 2.5nsec., 2.0nsec., 1.0nsec., 1.5nsec., 8.0nsec., 및 2.5nsec.는 Stb+/-발생, 디스플레이로의 케이블 전송. 디스플레이 수신기, 클럭 발생, 신호 클럭, Data()+/- 발생, 호스트로의 케이블 전송 및 호스트 수신기 단계에 대한 프로세싱 부분에 인접하여 각각 도시된다.
순방향 링크 데이터 레이트 및 만족된 신호 처리 지연에 따라, 상기 "라운드 트립" 결과 또는 종료될 이벤트 세트가 완료되는데 MDDI_Stb 신호에서 한 사이클 이상의 시간이 요구될 수 있고, 이는 바람직하지 못한 시간 또는 사이클양을 소모할 수 있다. 상기 문제를 해결하기 위해, 역방향 레이트 제수는 역방향 링크를 통한 한 비트 시간이 MDDI_Stb 신호의 다양한 사이클을 스팬(span)할 수 있도록 한다. 이는 역방향 링크 데이터 레이트가 순방향 링크 데이터 레이트 미만이라는 것을 의미한다.
삭제
인터페이스를 통한 신호 지연의 실제 길이는 각각의 특정 호스트-클라이언트 시스템 또는 사용중인 하드웨어에 따라 달라질 수 있음에 주목하여야만 한다. 각각의 시스템은 일반적으로 시스템내의 라운드 트립 지연 측정 패킷을 사용함으로써 실제 지연을 측정하는 것을 더 우수하게 수행하여 역방향 레이트 제수가 최적의 값에 세팅될 수 있도록 구성될 수 있다.
라운드 트립 지연은 호스트가 디스플레이에 라운드 트립 지연 측정 패킷을 전송함으로써 측정된다. 디스플레이는 측정 기간 필드라 불리는 패킷내의 미리 선택된 측정 윈도우의 내부 또는 미리 선택된 측정 윈도우 동안에 호스트로 다시 1들로 구성된 시퀀스를 전송함으로써 상기 패킷에 응답한다. 상기 측정의 세부적인 타이밍은 전술되었다. 라운드 트립 지연은 역방향 링크 데이터가 안전하게 샘플링되는 레이트를 결정하기 위해 사용된다.
라운드 트립 지연 측정은 측정 기간 필드의 시작과 0xff, 0xff, 0x00 응답 시퀀스가 호스트에서 디스플레이로 부터 수신되는 시간 기간의 시작 사이에서 발생하는 순방향 링크 데이터 클럭 간격들의 횟수를 결정, 검출, 또는 카운팅하는 것을 포함한다. 디스플레이로부터의 응답은 측정 카운트가 증분되기 이전의 순방향 링크 클럭 기간 도중에 수신될 수 있음을 주목하여야 한다. 만약 변경되지 않은 값이 역방향 레이트 제수를 계산하기 위해 사용된다면, 신뢰할 수 없는 데이터 샘플링 때문에 역방향 링크에서 비트 에러를 야기할 수 있다. 상기 경우의 예가 도 51에 도시되며, 호스트에서 MDDI_Data, 호스트에서 MDDI_Stb, 호스트내의 순방향 링크 데이터 클럭 및 지연 카운트를 나타내는 신호는 도식적인 형태로 설명된다. 도 51에서, 응답 시퀀스는 지연 카운트가 6에서 7로 증가하기 이전의 순방향 링크 클럭 기간 도중에 디스플레이로부터 수신된다. 만약 지연이 6이 될 것으로 추측되면, 호스트는 비트 전이 직후 또는 가능하면 비트 전이 도중에 역방향 데이터를 샘플링할 것이다. 이는 호스트에서 에러있는 샘플링을 발생시킬 수 있다. 이러한 이유로, 측정된 지연은 일반적으로 역방향 레이트 제수를 계산하기 위해 사용되기 이전에 1만큼 증가되어야 한다.
역방향 레이트 제수는 역방향 링크 데이터를 샘플링하기 이전에 호스트가 대기하여야만 하는 MDDI_Stb 사이클의 개수이다. MDDI_Stb는 순방향 링크 레이트의 절반의 레이트로 순환되기 때문에, 정확한 라운드 트립 지연 측정은 2로 나누어져야만 하며, 다음 정수로 올림 되어야만 한다. 공식으로 표현하면, 그 관계식은 다음과 같다:
Figure 112003021259646-pct00001
주어진 예에서 이는 다음과 같이 표현된다:
Figure 112003021259646-pct00002
만약 상기 식에서 사용된 라운드 트립 지연 측정이 6이 아니라 7이더라도, 역방향 레이트 제수는 4가 될 것이다.
역방향 링크 데이터는 역방항 링크 클럭의 상승 에지에서 호스트에 의해 샘플링된다. 카운터 또는 역방향 링크 클럭을 발생시키기 위해 호스트 및 클라이언트(디스플레이) 모두에서 존재하는 유사하게 공지된 회로 또는 디바이스가 존재한다. 카운터는 초기화되어 역방향 링크 클럭의 제 1 상승 에지가 역방향 링크 인캡슐레이션 패킷의 역방향 링크 패킷 필드 내의 제 1 비트 시작시에 발생한다. 이는 하기에 주어지는 예에 대하여 도 52에 도시된다. 카운터는 MDDI_Stb 신호의 각각의 상승에지에서 증가하며, 카운트들이 랩어라운드(wrap around)될 때까지 카운트들의 수는 역방향 링크 인캡슐레이션 패킷의 역방향 레이트 제수 파라미터에 의해 세팅된다. MDDI_Stb 신호는 순방향 링크 레이트의 절반으로 토글하기 때문에, 역방향 링크 레이트는 역방향 레이트 제수로 나뉘어진 순방량 링크 레이트의 절반이 된다. 예를 들면, 만약, 순방향 링크 레이트가 200Mbps이고, 역방향 레이트 제수가 4이면, 역방향 링크 데이터 레이트는 다음과 같이 표현된다.
Figure 112003021259646-pct00003
역방향 링크 인캡슐레이션 패킷내의 MDDI_Data0 및 MDDI_Stb 신호 라인의 타이밍을 도시하는 예가 도 52에서 설명되며, 설명을 위해 사용되는 상기 패킷 파라미터는 다음과 같다:
패킷 길이=1024(0x0400) 턴어라운드 1길이=1
패킷 타입=65(0x41) 턴어라운드 2길이=1
역방향 링크 플래그=0 역방향 레이트 제수=2
파라미터 CRC=0xdb43 모두 0은 0x00
스트로브 정렬은 0x00, 0x00, 0x60
패킷 길이 및 파라미터 CRC 필드 사이의 패킷 데이터는: 0x00, 0x04, 0x41, 0x02, 0x01, 0x01, 0x43, 0xdb, 0x00, 0x00, 0x60, 0x00,...
디스플레이로부터 리턴된 제 1 역방향 링크 패킷은 7의 패킷 길이 및 70의 패킷 타입을 가지는 디스플레이 요청 및 상태 패킷이다. 상기 패킷은 0x07, 0x00, 0x46,...등의 바이트 값으로 시작한다. 그러나, 제 1 바이트(0x07) 만이 도 52에 도시된다. 제 1 역방향 링크 패킷은 실제 역방향 링크 지연을 설명하기 위해 도면에서 거의 1의 역방향 링크 클럭 기간만큼 시간-쉬프트된다. 0의 호스트 대 디스플레이 라운드 트립 지연을 가지는 이상적인 파형이 점선으로 도시된다.
파라미터 CRC 필드의 MS 바이트가 전송되고 뒤이어 스트로브 정렬 바이트가 전송되며, 그리고 나서 모든 0 필드가 전송된다. 호스트로부터의 스트로브는 1에서 0으로 스위칭하고 호스트로부터의 데이터가 폭넓은 펄스를 형성하는 레벨을 변경할 때 다시 1로 돌아간다. 데이터가 0으로 진행하면, 스트로브는 고속으로 스위칭하며, 데이터 라인상의 데이터의 변경은 정렬 필드의 종료 근처에서 변경을 야기한다. 스트로브는 확장된 시간 주기동안 데이터 신호의 고정된 0 또는 1 레벨 때문에 도면의 나머지 부분동안 고속으로 스위칭하며, 펄스 패턴(에지)에서 하강에지로 전이한다.
호스트에 대한 역방향 링크 클럭은 클럭이 역방향 링크 패킷을 수용하기 위해 시작될 때 턴어라운드 1 기간의 종료까지 0이 된다. 도면의 하단 부분의 화살표는 데이터가 샘플링되는 때를 나타낸다. 전송되는 패킷 필드의 제 1 바이트(여기에서는 11000000)는 턴어라운드 1 이후에 시작하며 라인 레벨은 디스에이블되는 호스트 드라이버로부터 안정된다. 제 1 비트의 전달에서의 지연(비트 3으로 제시됨)이 데이터 신호에 대한 점선으로 보여질 수 있다.
도 53에서, 순방향 링크 데이터 레이트에 기초하여 역방향 레이트 제수의 전형적인 값이 관측될 수 있다. 실제의 역방향 레이트 제수는 적절한 역방향 링크 동작을 보장하기 위해 라운드 트립 링크 측정의 결과로써 결정된다. 제 1 영역(5302)은 안전한 동작 영역에 해당하며, 2 영역(5304)은 한계 성능 영역에 해당하며, 제 3 영역(5306)은 적절히 기능할 수 없는 세팅을 나타낸다.
라운드 트립 지연 측정 및 역방향 레이트 제수 세팅은 그들이 전송되거나 수신되는 비트수가 아니라 실제 클럭 기간들의 유니트(unit)의 관점에서 표현되고 동작되기 때문에 순방향 또는 역방향 링크에서 임의의 인터페이스 타입 세팅에서 동작하는 동안 동일하다.
XI. 턴어라운드 및 보호 시간
전술된 바와 같이, 역방향 링크 인캡슐레이션 패킷내의 턴어라운드 1 필드 및 라운드 트립 지연 측정 패킷내의 보호시간 1 필드는 디스플레이 인터페이스 드라이버가 인에이블되기 이전에 호스트 인터페이스 드라이버가 디스에이블될 수 있는 시간 길이에 대한 값을 지정한다. 턴어라운드 2 및 보호시간 2 필드는 호스트 드라이버가 인에이블되기 전에 디스플레이 드라이버가 디스에이블될 수 있는 시간값을 제공한다. 보호시간 1 및 보호시간 2 필드는 일반적으로 조정되지 않을 길이에 대한 사전 세팅 또는 사전 선택된 값으로 채워진다. 사용될 인터페이스 하드웨어에 따라, 상기 값은 경험적인 데이터를 사용하여 전개될 수 있으며, 임의의 경우에 동작을 개선시키기 위해 조정된다.
몇가지 요소가 턴어라운드 1의 길이의 결정에 기여하며, 이러한 요소는 순방향 링크 데이터와 호스트가 MDDI_Data 드라이버의 최대 디스에이블 시간이다. 최대 호스트 드라이버 디스에이블 시간은 테이블 XI에서 설명되며, 드라이버가 디스에이블하기 위해 최대 약 10nsec. 및 약 2nsec. 가 소요됨을 보여준다.. 호스트 드라이버가 디스에이블되기 위해 요구되는 순방향 링크 클럭의 최소 횟수는 다음 관계식에 따라 표현된다:
Figure 112003021259646-pct00004
턴어라운드 1의 허용되는 값의 범위는 다음 관계식에 따라 표현된다:
Figure 112003021259646-pct00005
여기서 인터페이스 타입 인자는 타입 I에 대하여 1이고, 타입 II에 대하여 2이며, 타입 III에 대하여 4이고, 타입 IV에 대하여 8이다.
상기 두개의 등식을 조합하면, 인터페이스 타입 인자 항목이 상쇄되고, 턴어라운드 1은 다음과 같이 정의된다:
Figure 112003021259646-pct00006
예를 들면, 1500Mbps 타입 III의 순방향 링크는 다음의 턴어라운드 1 지연을 사용할 것이다:
Figure 112003021259646-pct00007
라운드 트립 지연이 증가함에 따라, 타이밍 마진은 호스트가 디스에이블되는 시점에서 디스플레이가 인에이블되는 시점으로 개선된다.
일반적으로 턴어라운드 2를 위해 사용되는 시간의 길이를 결정하는 인자는 순방향 링크 데이터 레이트, 디스플레이 내의 MDDI_Data의 최대 디스에이블 시간, 및 통신 링크의 라운드 트립 지연이다. 디스플레이 드라이버를 디스에이블하기 위해 요구되는 시간의 계산은 본질적으로 전술된 호스트 드라이버에 대한 계산과 동일하며, 다음 관계식에 따라 정의된다:
Figure 112003021259646-pct00008
그리고 턴어라운드 2에 대해 허용되는 값의 범위는 다음과 같이 표현된다:
Figure 112003021259646-pct00009
예를 들면, 10개의 순방향 링크 클럭의 라운드 트립 지연을 가지는 1500Mbps 타입 III의 순방향 링크는 다음과 같은 턴어라운드 2 지연을 사용한다:
Figure 112003021259646-pct00010
XII. 물리 계층 상호접속 설명
본발명에 따른 인터페이스를 실행하기 위해 사용할 수 있는 물리적인 연결은 호스트측에서 Hirose Electric Company Ltd에 의해 제작된 부품 번호 3260-8S2(01) 및 디스플레이 디바이스 측면에서 Hirose Electric Company Ltd에 의해 제작된 부품 번호 3240-8P-C와 같은 상업적으로 사용 가능한 부품을 사용하여 구현될 수 있다. 타입 I 인터페이스에서 사용되는 이러한 커넥터들에 대한 예시적인 타입 I 인터페이스 핀의 할당 또는 "핀아웃"이 테이블 XIII에 명시된다.
테이블 13
신호명 핀번호 신호명 핀번호
MDDI_Gnd 1 MDDI_Pwr 2
MDDI_Stb+ 3 MDDI_Stb- 4
MDDI_DAT0+ 5 MDDI_DAT0- 6
MDDI_DAT1+ 7 MDDI_DAT1- 8
실드(Shield)
상호 접속 엘리먼트 또는 디바이스는 관련 디바이스 크기에 비해 너무 크지 않도록 PDA 및 무선 전화기, 또는 휴대용 게임 디바이스와 같은 이동 통신 및 계산 장치에서 사용하기에 충분히 작게 선택되거나 설계된다. 임의의 커넥터 또는 케이블링(cabling)은 일반적인 소비자 환경에서 사용하기에 충분히 내구적이며 특히 캐이블링을 위한 작은 크기 및 상대적으로 저렴한 비용을 고려하여야만 한다. 전송 엘리먼트는 타입 I 및 타입 II에 대해 약 450Mbps 및 8비트 병렬 타입 IV 버전에 대해 3.6Gbps까지의 전송 레이트를 가지는 차분 NRZ 데이터인 데이터 및 스트로브 신호를 수용하여야만 한다.
XIII. 동작
본 발명의 실시예를 사용하는 인터페이스의 동작중에 데이터 및 패킷들을 처리하는데 있어서 취해지는 일반적인 단계의 요악은 도 55에서 패킷을 처리하는 인터페이스 장치의 개관과 함께 도 54a 및 도 54b에 도시된다. 상기 도면에서, 처리는 클라이언트 및 호스트가 통신 경로, 여기에서는 케이블을 사용하여 접속되는지 또는 접속되지 않는지를 결정하는 단계(5402)에서 시작한다. 이는 커호스트(USB 인터페이스에 대해 도시된 것과 같은)의 입력에서의 신호 또는 커넥터 또는 케이블의 존재를 검출하는 호스트, 소프트웨어, 또는 하드웨어에 의한 주기적인 폴링 또는 다른 공지된 기술을 사용하여 발생한다. 만약 클라이언트가 호스트에 접속되어 있지 않으면, 사전결정된 길이의 대기 상태를 간단히 입력하고, 애플리케이션에 따라 동면 모드로 들어가거나 호스트를 재활성화 시키는 동작을 행하기 위해 사용자에게 요구할 수 있는 미래의 사용을 대기하도록 비활성화될 수 있다. 예를 들어, 호스트가 컴퓨터 타입의 디바이스내에 존재할 때, 사용자는 스프린 아이콘을 클릭하거나 클라이언트에 대한 호스트 프로세싱을 활성화시키는 프로그램을 요청할 수 있다. 다시말해서, 타입 U 인터페이스로 사용되는 USB 타입 접속시 간단한 플러그 인은 호스트 프로세싱을 활성화시킬 수 있다.
클라이언트가 호스트에 또는 호스트가 클라이언트에 접속되거나 존재하는 것으로 검출되면, 클라이언트 또는 호스트는 단계(5404 및 5406)에서 서비스를 요청하는 적절한 패킷을 전송한다. 클라이언트는 단계(5404)에서 디스플레이 서비스 요청 또는 상태 패킷 중 하나를 전송할 수 있다. 전술된 바와 같이, 링크는 이미 차단되거나 동면 모드내에 들어갈 수 있기 때문에 뒤이은 통신 링크의 완전한 초기화가 되지 않을 수도 있다. 통신 링크가 동기화되고, 호스트가 클라이언트와 통신을 시도하면, 클라이언트는 단계(5408)에서와 같이 호스트에 디스플레이 성능 패킷을 제공해야만 한다. 호스트는 현재 클라이언트가 수용할 수 있는 전송 레이트를 포함하는 자원 타입 결정을 시작할 수 있다.
일반적으로, 호스트 및 클라이언트는 또한 단계(5410)에서 타입 I, 타입 U, 타입 II등과 같이 사용될 서비스 모드의 타입(레이트/속도)를 협의한다. 서비스 타입가 설정되면, 호스트는 정보 전송을 시작할 수 있다. 또한, 호스트는 단계(5411)에 도시된 바와 같은 다른 신호 처리와 동시에 통신 링크의 타이밍을 최적화하기 위해 라운드 트립 지연 측정 패킷을 사용할 수 있다.
전술된 바와 같이, 모든 전송은 서브프레임 헤더 패킷에서 시작하며(5412), 뒤이어 단계(5414)에서 데이터 타입(여기에서 비디오 및 오디오 스트림 패킷) 및 채움 패킷이 전송된다. 오디오 및 비디오 데이터는 미리 준비되거나 패킷으로 맵핑될 것이며, 채움 패킷은 필요하다면 매체 프레임을 위해 요구되는 비트수를 채우기 위해 삽입된다. 호스트는 사운드 디바이스를 활성화시키기 위해 순방향 오디오 채널 인에이블 패킷과 같은 패킷을 전송할 수 있고, 또한, 호스트는 컬러맵의 전송, 비트 블록 전송 또는 다른 패킷으로 도시된 전술된 다른 패킷 타입을 사용하여 명령 및 정보를 전송할 수 있다(5416). 또한, 호스트 및 클라이언트는 적절한 패킷을 사용하여 키보드 또는 포인팅 디바이스에 관련된 데이터를 교환할 수 있다.
동작중에, 몇가지 서로다른 이벤트 중 하나가 발생하여 호스트 또는 클라이언트가 상이한 데이터 레이트 또는 인터페이스 모드 타입를 요구할 수 있다. 예를 들면, 컴퓨터 또는 데이터를 통신하는 다른 디바이스는 패킷의 준비 또는 프리젠테이션에서 속도를 늦추는 데이터 처리시의 로딩 조건을 직면할 수 있다. 데이터를 수신하는 디스플레이는 전용 AC 전원에서 더 제한된 배터리 전원으로 변경될 수 있으며, 이로 인해 더 신속한 데이터 전송, 즉각적인 명령처리, 또는 동일한 해상도 또는 컬러의 깊이를 제공하지 못하게 된다. 대안적으로, 제한 조건이 해소되어 특정 장치가 더 고속으로 데이터를 전송하게 될 수도 있다. 더 바람직하게, 더 높은 전송 레이트 모드로의 변경 요청이 이뤄질 수 있다.
만약 상기 또는 다른타입의 공지된 조건이 발생하거나 변경되면, 호스트 또는 클라이언트는 상기 발생을 검출하여 인터페이스 모드를 재협의할 수 있다. 이는 단계(5420)에서 도시되며, 호스트는 인터페이스 타입 핸드오프 요청 패킷을 또다른 모드에서 핸드오프를 요청하는 클라이언트에 전송하며, 클라이언트는 변화가 발견되었음을 확인하는 인터페이스 타입 확인응답 패킷을 전송하며, 호스트는 특정 모드에서 변경을 실행하기 위한 수행 타입 핸드오프 패킷을 전송한다.
특정 처리명령을 요구하지 않지만, 클라이언트 및 호스트는 포인팅 장치, 키보드 또는 주로 클라이언트에 관련된 다른 사용자 타입 입력 장치로부터 의도되거나 수신된 데이터에 관련되 패킷을 교환할 수 있고, 상기 엘리먼트는 호스트 측면에서 존재할 수 있다. 상기 패킷은 일반적으로 상태 머신(5502)이 아닌 범용 또는 일반적인 타입의 엘리먼트를 사용하여 처리된다. 또한, 전술된 임의의 명령은 범용 프로세서(5504,5508)에 의해 처리될 것이다.
데이터 및 명령이 호스트 및 클라이언트 사이에서 교환된 이후에, 임의의 지점에서, 추가의 데이터가 전송될 것인지 아니면 호스트 또는 클라이언트가 전송을 서비스하는것을 중지할 것인지에 대한 결정이 이뤄진다. 이는 단계(5422)에 도시된다. 만약 링크가 동면 상태로 들어가거나 완전히 차단되면, 호스트는 클라이언트에 링크 차단 패킷을 전송하고 양쪽 모두는 데이터의 전송을 종료한다.
상기 처리 동작에서 전송되는 패킷은 호스트 및 클라이언트 제어기에 관련하여 전술된 드라이버 및 수신기를 사용하여 전송될 것이다. 상기 라인 드라이버 및 다른 로직 엘리먼트는 도 55의 도면에서 도시된 바와 같이 전술된 상태 머신 및 범용 프로세서에 접속된다. 도 55에서, 상태 머신(5502) 및 범용 프로세서(5504 및 5508)는 링크 제어기의 바깥쪽에 존재하는 전용 USB 인터페이스, 메모리 엘리먼트, 또는 다른 엘리먼트와 같이 도시지지 않은 또는 다른 요소에 추가로 접속될 수 있으며, 이들은 링크 제어기를 통해 데이터 소스 및 시청 디스플레이 장치를 위한 비디오 제어 칩들을 상호교환한다.
프로세서 및 상태 머신은 효율적인 통신 링크의 설정 또는 종료 및 패킷전달을 보장하기 위해 보호 시간 등과 관련된 전술된 드라이버의 인에이블 및 디스에이블에 대한 제어를 제공한다.
XIV. 부록
본 발명의 실시예를 위한 구조 및 프로토콜을 실행하기 위해 사용된 다양한 패킷에 대하여 전술된 포맷, 구조, 및 컨텐츠에 부가하여, 더 상세한 필드 콘텐츠 또는 동작이 임의의 패킷 타입을 위해 제공된다. 이는 당업자가 다양한 애플리케이션을 위한 본 발명의 사용을 더 쉽게 이해하고 실행할 수 있도록 개별적인 사용 또는 동작을 더 명확하게 하기 위해 제공된다. 상기에서 논의되지 않은 약간의 필드가 지금부터 논의된다.
A. 비디오 스트림 패킷에 대하여
디스플레이 성능 필드(1바이트)는 다음과 같이 해석되는 일련의 비트값을 갖는다. 비트 1 및 0은 디스플레이 픽셀 데이터가 라우팅되는 방법을 선택한다. '00' 또는 '11'의 비트값에서 데이터는 양쪽 눈에 대하여 디스플레이 되고, 비트값'10'에서 데이터는 왼쪽눈에서만 라우팅되며, 비트값 '01'에서 데이터는 오른쪽 눈에만 라우팅된다. 비트 2는 픽셀 데이터가 인터레이스 포맷에서 제공되는지 여부를 표시하며, 여기서 '0'은 픽셀 데이터가 표준 프로그레시브 포맷에 존재함을 의미하고, 열번호(픽셀 Y 좌표)는 한 열에서 다음 열로 진행할 때 1만큼 증분된다. 상기 비트가 '1'값을 가질때, 픽셀 데이터는 인터레이스 포맷내에 있으며, 열번호는 한 열에서 다음 열로 진행할 때 2만큼 증분된다. 비트 3은 픽셀 데이터가 교번적인 픽셀 포맷내에 있음을 나타낸다. 이는 비트 2에 의해 인에이블되는 표준 인터레이스 모드와 유사하지만, 인터레이스는 수평적이지 않고 수직적이다. 비트 3이 0일때 픽셀 데이터는 표준 프로그레시브 포맷내에 존재하며, 행번호(픽셀 X 좌표)는 각각의 연속적인 픽셀이 수신될 때마다 1만큼 증분한다. 비트 3이 1일 때 픽셀 데이터는 교번적인 픽셀 포맷내에 있으며, 행번호는 각 픽셀이 수신될 때마다 2만큼 증분된다. 비트 7부터 4까지는 차후 사용을 위해 비축되며 일반적으로 0으로 세팅된다.
2바이트 X 시작 및 Y 시작 필드는 픽셀 데이터 필드 내의 제 1 픽셀에 대한 지점(X시작, Y시작)의 절대 X 및 Y 좌표를 지정한다. 2바이트 X 좌측 에지 및 Y 상부 에지필드는 픽셀 데이터 필드에 의해 채워진 스크린 윈도우의 좌측 에지의 X 좌표 및 상부 에지의 Y 좌표를 지정하는 반면, X 우측 에지 및 Y 하부 에지 필드는 업데이트중인 윈도우의 우측 에지의 X 좌표 및 하부 에지의 Y 좌표를 지정한다.
픽셀 카운트 필드(2바이트)는 하기의 픽셀 데이터 필드에서 픽셀의 개수를 지정한다.
파라미터 CRC 필드(2바이트)는 패킷 길이로부터 픽셀 카운트까지의 모든 바이트의 CRC를 포함한다. 만약 상기 CRC가 검사에 실패하면 전체 패킷은 소거된다.
픽셀 데이터 필드는 디스플레이될 원래의 비디오 정보를 포함하며, 비디오 데이터 포맷 서술자에 의해 설명되는 방식으로 포맷된다. 데이터는 전술된 바와 같이 한 번에 한개의 "열"로 전송된다.
픽셀 데이터 CRC 필드(2바이트)는 16비트 CRC의 픽셀 데이터만을 포함한다. 만약 상기 값에 대한 CRC 검증이 실패하면, 픽셀 데이터는 여전히 사용될 수는 있지만 CRC 에러 카운트는 증분된다.
B. 오디오 스트림 패킷에 대하여
오디오 채널 ID 필드(1바이트)는 오디오 데이터가 클라이언트 디바이스에 의해 전송되는 특정 오디오 채널을 식별한다. 물리적인 오디오 채널은 상기 필드에 의해 0, 1, 2, 3, 4, 5, 6, 또는 7의 값으로 지정되거나 맵핑되며, 상기 0, 1, 2, 3, 4, 5, 6, 또는 7의 값은 좌측 전방, 우측 전방, 좌측 후방, 우측 후방, 전방 중앙, 서브우퍼, 서라운드 좌측 및 서라운드 우측 채널을 각각 나타낸다. 254의 오디오 채널 ID 값은 디지털 오디오 샘플의 단일 스트림이 좌측 전방 및 우측 전방 채널 모두에 전송되는 것을 나타낸다. 이는 스테레오 헤드셋이 음성 통신에서 사용되는 애플리케이션 또는 단일 사용자 인터페이스가 경고음을 발생하는 임의의 애플리케이션을 간략화한다. 8내지 253, 및 255 범위의 ID 필드에 대한 값은 현재 새로운 설계가 추가의 지정을 원하는 경우에 사용하기 위해 비축되어 있다.
오디오 샘플 카운트 필드(2바이트)는 상기 패킷 내의 오디오 샘플의 개수를 지정한다.
샘플 및 팩킹 필드당 비트는 오디오 데이터의 페이싱(pacing) 포맷을 지정하는 1바이트를 포함한다. 일반적으로 사용되는 포맷은 비트 4내지 0이 PCM 오디오 샘플당 비트수를 정의하도록 한다. 비트 5는 디지털 오디오 데이터 샘플이 팩킹되는지를 지정한다. 전술된 바와 같이, 도 12는 팩킹된 오디오 샘플과 바이트 정렬된 오디오 샘플 사이의 차이를 도시한다. 비트 5에 대한 '0'의 값은 디지털 오디오 데이터 필드 내의 각각의 PCM 오디오 샘플이 인터페이스 바이트 경계와 바이트-정렬됨을 나타내고, '1'의 값은 각각의 연속적인 PCM 오디오 샘플이 이전 오디오 샘플에 대해 팩킹됨을 나타낸다. 상기 비트는 비트 4내지 0에서 정의된 값(PCM 오디오 샘플당 비트수)이 8의 배수가 아닐때만 유효하다. 비트 7 내지 6은 상기 시스템 설계가 추가 지정을 원하는 경우에 사용하기 위해 비축되고 일반적으로 0의 값으로 세팅된다.
오디오 샘플 레이트 필드(1바이트)는 오디오 PCM 샘플 레이트를 지정한다. 사용되는 포맷은 0의 값의 경우에 초(sps)당 8000개의 샘플 레이트를 나타내며, 1의 값은 16,000sps., 2의 값은 24,000sps., 3의 값은 32,000sps., 4의 값은 40,000sps., 5의 값은 48,000sps., 6의 값은 11,025sps., 7의 값은 22,050sps., 8의 값은 44,100.sps,를 각각 나타내며, 9내지 15의 값은 차후 사용을 위해 비축되어 0으로 세팅된다.
파라미터 CRC 필드(2바이트)는 패킷 길이로부터 오디오 샘플 레이트까지의 모든 바이트의 16비트 CRC를 포함한다. 만약 상기 CRC가 검사에 실패한다면, 전체 패킷은 소거된다. 디지털 오디오 데이터 필드는 재생될 원래의 오디오 샘플을 포함하며, 보통 부호가 없는 정수와 같이 선형 포맷 타입이다. 오디오 데이터 CRC 필드(2바이트)는 오직 오디오 데이터만의 16 비트 CRC를 포함한다. 만약 상기 CRC가 검사에 실패하면, 오디오 데이터는 여전히 사용될 수 있지만, CRC 에러 카운트는 증분된다.
C. 사용자-정의된 스트림 패킷에 대하여
2바이트 스트림 ID 번호 필드는 특정 비디오 스트림을 식별하기 위해 사용된다. 스트림 파라미터 및 스트림 데이터 필드의 컨텐츠는 MDDI 장치 제작자에 의해 정의된다. 2바이트 스트림 파라미터 CRC 필드는 패킷 길이로부터 오디오 코딩 바이트까지의 스트림 파라미터의 모든 바이트의 16비트 CRC를 포함한다. 만약 CRC가 검사에 실패한다면, 전체 패킷은 소거된다. 2바이트 스트림 데이터 필드는 스트림 데이터의 CRC만을 포함한다. 만약 상기 CRC가 검사에 실패한다면, 스트림 데이터의 사용은 애플리케이션의 요청에 따라 선택적이다. 우수한 CRC에 의존하는 스트림 데이터 사용은 일반적으로 CRC가 우수하게 검증될 때까지 스트림 데이터가 버퍼링될것을 요청한다. 만약 상기 CRC가 검증되지 못하면, CRC 에러 카운트는 증분된다.
D. 컬러맵 패킷에 대하여
컬러맵 데이터 크기 필드(2 바이트)는 상기 패킷 내의 컬러 맵 데이터에서 존재하는 컬러맵 테이블 엔트리의 전체 개수를 지정한다. 컬러 맵 데이터내의 바이트의 수는 컬러맵 크기의 3배이다. 컬러맵 크기는 어떤 맵 데이터도 전송하지 않기위해 0으로 세팅된다. 만약 컬러 맵 크기가 0이면 컬러맵 오프셋값은 여전히 전송되지만 디스플레이에 의해 무시된다. 컬러맵 오프셋 필드(2바이트)는 디스플레이 디바이스내의 컬러맵 테이블의 시작으로부터 상기 패킷에서 컬러 맵 데이터의 오프셋을 지정한다.
2바이트 파라미터 CRC 필드는 패킷 길이로부터 오디오 코딩 바이트까지의 모든 바이트의 CRC를 포함한다. 만약 상기 CRC가 검사에 실패하면, 전체 패킷은 소거된다.
컬러맵 데이터 필드에 대하여 각각의 컬러맵 위치는 3바이트의 값이며 상기 제 1 바이트는 청색 등급을 지정하고, 제 2 바이트는 녹색 등급을 지정하며, 제 3 바이트는 적색 등급을 지정한다. 컬러 맵 사이즈 필드는 컬러 맵 데이터 필드에 존재하는 3바이트 컬러맵 테이블 아이템의 개수를 지정한다. 만약 단일 컬러맵이 한 개의 비디오 데이터 포맷 및 컬러 맵 패킷에 부합하지 않으면, 전체 컬러 맵은각각의 패킷내의 상이한 컬러맵 데이터 및 컬러맵 오프셋을 사용하여 다수의 패킷들을 전송함으로써 지정될 수 있다.
2바이트 컬러맵 데이터 CRC 필드는 컬러맵 데이터만의 CRC를 포함한다. 만약 상기 CRC가 검사에 실패하면, 컬러맵 데이터는 여전히 사용될 수 있지만 CRC 에러 카운트는 증분된다.
E. 역방향 링크 인캡슐레이션 패킷에 대하여
역방향 링크 플래그 필드(1바이트)는 디스플레이로부터 정보를 요청하기 위한 일련의 플래그를 포함한다. 만약 비트(여기에서 비트 0)가 1로 세팅되면 호스트는 디스플레이 성능 패킷을 사용하여 디스플레이로부터 지정된 정보를 요청한다. 만약 비트가 0이면 호스트는 디스플레이로부터의 정보를 요구하지 않는다. 남아있는 비트(여기에서 비트 1부터 7)는 차후 사용을 위해 비축되며 0으로 세팅된다.
역방향 레이트 제수 필드(1바이트)는 역방향 링크 데이터 클럭에 관련하여 발생하는 MDDI_Stb 사이클의 개수를 지정한다. 역방향 링크 데이터 클럭은 역방향 레이트 제수의 두 배로 나뉘는 순방향 링크 데이터 클럭과 동일하다. 역방향 링크 데이터 레이트는 역방향 링크의 역방향 링크 데이터 클럭 및 인터페이스 타입와 관련된다. 타입 I 인터페이스에 대하여 역방향 데이터 레이트는 역방향 링크 데이터 클럭과 동일하며, 타입 II, 타입 III, 및 타입 IV 인터페이스에 대하여 역방향 데이터 레이트는 각각 역방향 링크 데이터 클럭의 2배, 4배 및 8배와 동일하다.
턴어라운드 1 길이 필드(1바이트)는 턴어라운드 1에 할당된 전체 바이트수를 지정한다. 턴어라운드 1의 추천되는 길이는 디스에이블된 출력을 가지기 위해 호스트 내의 MDDI_Data 드라이버에 대해 요구되는 바이트의 개수이다. 이는 전술된 출력 디스에이블 시간, 순방향 링크 데이터 레이트, 및 사용될 순방향 링크 인터페이스 선택에 기초한다. 턴어라운드 1의 세팅에 대한 더 완전한 설명은 상기에서 주어진다.
턴어라운드 2 길이 필드(1바이트)는 턴어라운드에 할당된 총 바이트수를 지정한다. 턴어라운드 2의 추천되는 길이는 라운드 트립 플러스(+) 그들의 출력을 디스에이블하기 위해 디스플레이 내의 MDDI_Data 드라이버에 대해 요구되는 바이트의 개수이다. 턴어라운드 2의 세팅에 대한 설명은 상기에서 주어진다.
파라미터 CRC 필드는 패킷 길이로부터 턴어라운드 길이까지의 모든 바이트의 16비트 CRC를 포함한다. 만약 상기 CRC가 검사에 실패하면 전체 패킷은 소거된다.
스트로브 정렬 필드(3바이트)는 하나의 값을 포함하고, 결과적으로 MDDI_Stb 신호는 모든 0 필드의 최종 비트와 역방향 데이터 패킷 필드의 최초 필드 사이의 비트 경계에 로우에서 하이로의 전이를 제공한다. 이는 MDDI_Stb 신호가 역방향 데이터 패킷 필드에서 바이트 경계에 대해 일관된 방식으로 동작하는 것을 보장한다.
모든 0 필드(1바이트)는 0과 동일하게 세팅되고 모든 MDDI_Data 신호는 제 1 보호 시간 기간 동안 라인 드라이버들을 디스에이블하기 이전에 제로 상태가 되도록 하기 위해 사용된다.
턴어라운드 1 필드는 제 1 턴어라운드 기간을 설정하기 위해 사용된다. 턴어라운드 길이 파라미터에 의해 지정된 바이트 수는 클라이언트(디스플레이)내의 라인 드라이버가 인에이블되기 이전에 호스트 내의 MDDI_Data 라인 드라이버가 디스에이블 하도록 하기 위해 상기 필드에 의해 할당된다. 호스트는 턴어라운드 1의 비트 0동안 MDDI_Data 라인 드라이버들을 디스에이블하고 클라이언트(디스플레이)는 턴러아운드 1의 최종 비트 이후에 즉시 라인 드라이버들을 인에이블한다. MDDI_Stb 신호는 턴어라운드 기간이 모두 0인 것처럼 동작한다.
역방향 데이터 패킷 필드는 클라이언트로부터 호스트로 전송될 일련의 데이터 패킷을 포함한다. 전술된 바와 같이, 채움 패킷은 다른 패킷 타입에 의해 사용되지 않는 남아있는 공간을 채우도록 전송된다.
턴어라운드 2 필드는 제 2 턴어라운드 기간을 설정하기 위해 사용된다. 턴어라운드 길이 파라미터에 의해 지정된 바이트 수는 상기 필드에 의해 할당된다.
드라이버 재인에이블 필드는 모든 MDDI_Data 신호가 다음 패킷의 패킷 길이 필드이전에 다시 인에이블되는 것을 보장하기 위해서 0과 동일한 1바이트를 사용한다.
F. 디스플레이 성능 패킷에 대하여
프로토콜 버전 필드는 클라이언트에 의해 사용되는 프로토콜 버전을 지정하기 위해 2바이트를 사용한다. 초기 버전은 0과 동일하게 세팅되고, 최소 프로토콜 버전 필드는 클라이언트가 사용하거나 해석할 수 있는 최소 프로토콜 버전을 지정하기 위해 2바이트를 사용한다. 디스플레이 데이터 레이트 성능 필드(2바이트)는 디스플레이가 인터페이스의 순방향 링크에서 수신할 수 있는 최대 데이터 레이트를 지정하고, 초당 메가비트(Mbps)의 형태로 지정된다. 인터페이스 타입 성능 필드(1바이트)는 순방향 및 역방향 링크를 통해 지원되는 인터페이스 타입을 지정한다. 이는 순방향 링크를 통한 타입 II, 타입 III 또는 타입 IV 모드 중 하나를 선택하기 위해 비트 0, 비트 1, 또는 비트 2를 선택하고, 역방향 링크를 통한 타입 II, 타입 III, 또는 타입 IV 모드 중 하나를 선택하기 위해 비트 3, 비트 4, 또는 비트 5를 선택함으로써 동시에 지정되며, 비트 6 및 7은 비축되고 0으로 세팅된다. 비트맵 폭 및 높이 필드(2바이트)는 픽셀 내의 비트맵의 폭 및 높이를 지정한다.
단색 성능 필드(1바이트)는 단색 포맷으로 디스플레이 될 수 있는 해상도의 비트수를 지정하기 위해 사용된다. 만약 디스플레이가 단색 포맷을 지원할 수 없다면 상기 값은 0으로 세팅될 것이다. 비트 7부터 4까지는 차후 사용을 위해 비축되며 따라서 0으로 세팅된다. 비트 3부터 0까지는 각각의 픽셀을 위해 존재할 수 있는 그레이 스케일의 최대 비트수를 정의한다. 상기 4개의 비트는 각각의 픽셀에 대하여 1내지 15의 값을 지정할 수 있도록 한다. 만약 상기 값이 0이면 단색 포맷은 디스플레이를 위해 지원되지 않는다.
컬러맵 성능 필드(3바이트)는 디스플레이 내의 컬러맵 테이블에서 존재하는 테이블 아이템의 최대 개수를 지정한다. 만약 디스플레이가 컬러맵 포맷을 사용할 수 없다면 상기 값은 0이 된다.
RGB 성능 필드(2 바이트)는 RGB 포맷에서 디스플레이될 수 있는 해상도의 비트수를 지정한다. 만약 디스플레이가 RGB 포맷을 사용할 수 없다면 상기 값은 0이 된다. RGB 성능 워드는 3가지의 개별적인 부호가 없는 값으로 구성된다: 비트3 부터 0은 청색의 최대 비트수를 정의하며, 비트 7부터 4는 녹색의 최대 비트수를 정의하며, 비트 11부터 8은 각 픽셀에서 적색의 최대 비트수를 정의한다. 현재, 비트 15부터 12는 차후 사용을 위해 비축되며 일반적으로 0으로 세팅된다.
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에 대한 값은 디스플레이가 카메라로부터의 역방향 링크 비디오 스트림을 전송할 수 있는지를 나타낸다. 비트 11및 12의 값은 클라이언트가 포인팅 장치와 통신하여 포인팅 디바이스 데이터 패킷을 송수신할 수 있는 때 또는 클라이언트가 키보드와 통신하여 키보드 데이터 패킷을 송수신 할 수 있을 때를 나타낸다. 비트 13부터 31은 현재 차후 사용 또는 시스템 설계자를 위한 대안적인 지정을 위해 비축되며 일반적으로 0과 동일하게 셋팅된다.
디스플레이 비디오 프레임 레이트 성능 필드(1바이트)는 초당 프레임에서 디스플레이의 최대 비디오 프레임 업데이터 성능을 지정한다. 호스트는 상기 필드에서 지정된 값보다 더 늦은 레이트로 이미지를 업데이트하도록 선택할 수 있다.
오디오 버퍼 깊이 필드(2바이트)는 각각의 오디오 스트림에 지정된 디스플레이 내의 탄성 버퍼의 깊이를 지정한다.
오디오 채널 성능 필드(2 바이트)는 어떤 오디오 채널이 디스플레이(클라이언트)에 의해 지원되는 지를 나타내는 플래그의 그룹을 포함한다. 1로 세팅된 한개의 비트는 채널이 지원되는 것을 나타내며, 0으로 세팅된 한개의 비트는 채널이 지원되지 않는것을 나타낸다. 비트 위치는 서로 다른 채널에 할당되어 비트 위치 0, 1, 2, 3, 4, 5, 6, 및 7은 좌측 전방, 우측 전방, 좌측 후방, 우측 후방, 전방 중앙, 서브우퍼, 서라운드 좌측 및 서라운드 우측 채널을 각각 나타낸다. 비트 8 내지 15는 차후의 사용을 위하여 비축되며, 일반적으로 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는 차후 또는 다른 레이트 사용을 위하여 비축되며, 따라서 비트 9 내지 15는 '0'으로 세팅된다. 이들 비트중 한 비트에 대한 비트값을 1로 세팅하는 것은 특정 샘플 레이트가 지원된다는 것을 나타내며, 비트를 '0'으로 세팅하는 것은 샘플 레이트가 지원되지 않는다는 것을 나타낸다.
최소 서브 프레임 레이트 필드(2바이트)는 초당 최소 서브 프레임 레이트를 지시한다. 최소 서브 프레임 레이트는 디스플레이의 특정 포인팅 장치 또는 센서를 판독하기에 충분한 디스플레이 상태 업데이트 레이트를 유지한다.
역방향 링크에 대한 2-바이트 Mic 샘플 레이트 성능 필드는 클라이언트 장치에서 마이크로폰의 오디오 샘플 레이트 성능을 지시하는 플래그 세트를 포함한다. 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는 필요할때 미리 또는 다른 레이트를 사용하기 위하여 남겨두며, 따라서 비트 9 내지 15는 '0'으로 세팅된다. 이들 비트중 한 비트에 대한 비트값을 '1'로 세팅하는 것은 특정 샘플 레이트가 지원되는 것을 나타내며, 비트를 '0'으로 세팅하는 것은 샘플 레이트가 지원되지 않는 것을 나타낸다. 만일 마이크로폰이 연결되지 않으면, 각각의 Mic 샘플 레이트 성능 비트는 0으로 세팅된다.
컨텐츠 보호 타입 필드(2바이트)는 디스플레이에 의하여 지원되는 디지털 컨텐츠 보호의 타입을 지시하는 플래그 세트를 포함한다. 현재, 비트 위치 0은 DTCP가 지원될때를 지시하기 위하여 사용되며, 비트 위치 1은 HDCP가 지원될때를 지시하기 위하여 사용되며, 비트 위치 2 내지 15는 필요할때 다른 보호 방식에 사용하기 위하여 남겨두며, 이에 따라 비트 위치 2 내지 15는 현재 0으로 세팅된다.
G. 디스플레이 요청 및 상태 패킷에 대하여
역방향 링크 요청 필드(3 바이트)는 정보를 호스트에 전송하기 위하여 다음 서브 프레임의 역방향 링크에서 필요로하는 바이트의 수를 규정한다.
CRC 에러 카운트 필드(1 바이트)는 많은 CRC 에러가 매체 프레임의 시작 이후에 발생하였는지를 표시한다. CRC 카운트는 0의 서브 프레임 카운트를 가진 서브-프레임 헤더 패킷이 전송될때 리셋된다. 만일 실제 CRC 에러의 수가 255를 초과하면, 이 값은 255에서 포화된다.
성능 변화 필드는 디스플레이의 성능변화를 상술하기 위하여 1바이트를 사용한다. 이는 사용자가 마이크로폰, 키보드, 또는 디스플레이와 같은 주변장치에 접속할때 발생할 수 있다. 비트(7:1)가 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-바이트 비디오 데이터 포맷 기술자 필드는 픽셀 영역 채움값의 포맷을 규정한다. 도 11은 비디오 데이터 포맷 기술자가 코딩되는 방법을 설명한다. 포맷은 비디오 스트림 패킷에서와 동일하다.
파라미터 CRC 필드(2바이트)는 패킷 길이로부터 비디오 포맷 기술자까지의 모든 바이트의 CRC를 포함한다. 이러한 CRC가 검증되지 않으면, 전체 패킷이 버려진다. 패턴 픽셀 데이터 필드는 비디오 데이터 포맷 기술자에 의하여 규정된 포맷으로 채움 패턴을 규정하는 원래의 비디오 정보를 포함한다. 데이터는 바이트로 팩킹되며, 각각의 행의 제 1 픽셀은 바이트 정렬된다. 채움 패턴 데이터는 한 번에 한 행씩 전송된다. 패턴 픽셀 데이터 CRC 필드(2바이트)는 단지 패턴 픽셀 데이터의 CRC를 포함한다. 만일 이러한 CRC가 검사에 실패하면, 패턴 픽셀 데이터는 계속해서 사용되나, CRC 에러 카운트는 증가될 것이다.
K. 통신 링크 데이터 채널 패킷
파라미터 CRC 필드(2바이트)는 패킷 길이로부터 패킷 타입까지의 모든 바이트의 16비트 CRC를 포함한다. 만일 이러한 CRC가 검사에 실패하면, 전체 패킷은 버려진다.
통신링크 데이터 필드는 통신 채널로부터의 원 데이터를 포함한다. 이러한 데이터는 단순히 디스플레이의 컴퓨팅 장치로 전달된다. 통신 링크 데이터 CRC 필드(2바이트)는 단지 통신 링크 데이터의 16비트 CRC를 포함한다. 만일 이러한 CRC가 검사에 실패하면, 통신링크 데이터는 계속해서 유용하게 사용되나 CRC 에러 카운트는 증가된다.
L. 인터페이스 타입 핸드오프 요청 패킷에 대하여
인터페이스 타입 필드(1바이트)는 사용할 새로운 인터페이스 타입을 규정한다. 이러한 필드내의 값은 다음과 같은 방식으로 인터페이스 타입을 규정한다. 만일 비트 7의 값이 0이면, 타입 핸드오프 요청은 순방향 링크를 위한 것이며, 만일 비트 7의 값이 1이면, 타입 핸드오프 요청은 역방향 링크를 위한 것이다. 비트 6 내지 3은 미래를 위하여 남겨두며 일반적으로 0으로 세팅된다. 비트 2 내지 0은 사용될 인터페이스 타입을 정의하기 위하여 사용되며, 1의 값은 타입-I 모드로의 핸드오프를 의미하며, 2의 값은 타입-II 모드로의 핸드오프를 의미하며, 3의 값은 타입-III 모드로의 핸드오프를 의미하며, 4의 값은 타입-IV 모드로의 핸드오프를 의미한다. 5내지 7의 값은 필요에 따라 차후의 다른 모드의 지정을 위해 비축된다.
M. 인터페이스 타입 긍정응답 패킷에 대하여
인터페이스 타입 필드(1바이트)는 사용할 새로운 인터페이스 타입을 확인하는 값을 가진다. 이러한 필드내의 값은 다음과 같은 방식으로 인터페이스 타입을 규정한다. 만일 비트 7이 0이라면, 타입 핸드오프 요청은 순방향 링크를 위한 것이며, 만일 비트 7이 1이라면 타입 핸드오프 요청은 역방향 링크를 위한 것이다. 비트 위치 6 내지 3은 필요에 따라 다른 핸드오프 타입을 지정할때 사용하기 위하여 남겨두며, 일반적으로 0으로 세팅된다. 그러나 비트 위치들 2 내지 0은 부정 확인응답, 또는 요청된 핸드오프가 수행될 수 없음을 표시하는 0의 값 및 각각 타입 I,II,III,IV으로의 핸드오프를 표시하는 1,2,3,4 값으로 사용될 인터페이스 타입을 정의하는데 사용된다. 5 내지 7의 값은 필요에 따라 다른 모드 지정을 위하여 비축된다.
N. 수행 타입 핸드오프 패킷에 대하여
1-바이트 인터페이스 타입 필드는 사용할 새로운 인터페이스를 지시한다. 이러한 필드에 존재하는 값은 타입 핸드오프가 순방향 링크를 위한 것인지 또는 역방향 링크를 위한 것인지의 여부를 결정하기 위하여 비트 7의 값을 사용함으로써 인터페이스 타입을 규정한다. '0'의 값은 타입 핸드오프 요청이 순방향 링크임을 지시하며, '1의 값은 타입 핸드오프 요청이 역방향 링크임을 지시한다. 비트 6 내지 3은 차후의 사용을 위하여 남겨두며, 0의 값으로 세팅된다. 그러나, 비트 2 내지 0은 사용될 인터페이스 타입을 한정하기 위하여 사용되며, 값 1, 2, 3, 및 4는 각각 타입-I, 타입-II, 타입-III, 및 타입-IV 모드로의 핸드오프의 사용을 규정한다. 이들 비트에 대한 값 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의 값은 각각 8,000, 16,000, 24,000, 32,000, 40,000, 48,000, 11,025, 22,050, 및 44,100 SPS(초당 샘플)을 지정하기 위하여 사용되며, 9 내지 254의 값은 필요에 따라 차후의 사용을 위하여 남겨두며, 이에 따라 9 내지 254의 값은 '0'으로 세팅된다. 255의 값은 역방향 링크 오디오 스트림을 디스에이블하기 위하여 사용된다.
샘플 포맷 필드(1 바이트)는 디지털 오디오 샘플의 포맷을 규정한다. 비트(1:0)가 0일때 디지털 오디오 샘플은 선형포맷에 있으며, 비트(1:0)가 0일때 디지털 오디오 샘플은 μ-법칙 포맷이며, 비트(1:0)가 1일때 디지털 오디오 샘플은 A-법칙 포맷에 있다. 비트(7:2)는 필요에 따라 오디오 포맷을 지정함에 있어서 다른 사용을 위하여 남겨두며, 일반적으로 0으로 세팅된다.
Q. 디지털 컨텐츠 보호 오버헤드 패킷에 대하여
컨텐츠 보호 타입 필드(1 바이트)는 사용되는 디지털 컨텐츠 보호 방법을 규정한다. 0의 값은 디지털 전송 컨텐츠 보호(DTCP)를 지시하며, 1의 값은 광대역폭 디지털 컨텐츠 보호 시스템(HDCP)을 지시한다. 2 내지 255의 값은 필요에 따라 다른 보호 방식에서 사용하기 위하여 비축된다. 컨텐츠 보호 오버헤드 메시지 필드는 호스트 및 클라이언트 사이에서 전송된 컨텐츠 보호 메시지를 포함하는 가변 길이 필드이다.
R. 투명 컬러 인에이블 패킷에 대하여
투명 컬러 인에이블 필드(1바이트)는 투명 컬러모드가 인에이블되거나 또는 디스에이블될때를 규정한다. 만일 비트 0이 0이라면 투명 컬러 모드는 디스에이블되며, 만일 비트 0이 1이라면 투명 컬러 모드는 인에이블되며 투명컬러는 다음과 같은 두가지 파라미터에 의하여 규정된다. 이러한 바이트의 비트 1 내지 7은 차후의 사용을 위하여 남겨두며 0으로 세팅된다.
비디오 데이터 포맷 기술자 필드(2 바이트)는 픽셀 영역 채움값의 포맷을 규정한다. 도 11은 비디오 데이터 포맷 기술자가 코딩되는 방법을 기술한다. 포맷은 일반적으로 비디오 스트림 패킷에서의 필드와 동일하다.
픽셀 영역 채움값 필드는 앞서 기술된 윈도우내로 채워질 픽셀값을 위하여 할당된 4바이트를 사용한다. 이러한 픽셀의 포맷은 비디오 데이터 포맷 기술자 필드에서 규정된다.
S. 라운드 트립 지연 측정 패킷에 대하여
파라미터 CRC 필드(2바이트)는 패킷 길이에서부터 패킷 타입까지의 모든 바이트의 16-비트 CRC를 포함한다. 만일 이러한 CRC가 검사에 실패하면, 전체 패킷은 버려진다.
스트로브 정렬필드(2 바이트)는 MDDI_Stb 신호가 상기 패킷의 모든 제로 필드의 제 1 비트 바로 전 비트 경계에서 로우에서 하이로 전이를 만들도록 하는 값을 포함한다. 이는 MDDI_Stb가 패킷이 전송되는 임의의 시점에 측정 주기의 바이트 경계에 대해 일관된 동일한 방식으로 동작하는 것을 보장한다.
모든 0필드(1바이트)는 모든 MDDI_데이터 신호가 제 1 보호 시간 동안 라인 드라이버들을 디스에이블 하기전에 제로상태가 되는 것을 보장하기 위해서 제로들을 포함한다.
보호 시간 1 필드(8바이트)는 클라이언트(디스플레이)의 라인 드라이버가 인에이블되기전에 호스트내의 MDDI_데이터 라인 드라이버가 디스에이블되도록 한다. 호스트는 보호 시간 1동안 자신의 MDDI_데이터 라인 드라이버들을 디스에이블하며, 디스플레이는 보호 시간 1의 마지막 비트후에 즉시 자신의 라인 드라이버들을 인에이블한다.
측정 주기 필드는 디스플레이가 순방향 링크상에서 사용되는 데이터 레이트 절반에서 0xff, 0xff, 0x0으로 응답하는 것을 허용하기 위하여 사용되는 512 바이트 윈도우이다. 이러한 데이터 레이트는 1의 역방향 링크 레이트 제수(Divisor)에 대응한다. 디스플레이는 측정주기기간의 초기에 이러한 응답을 즉시 리턴한다. 이러한 응답은 호스트에서의 측정주기의 제 1 비트시작후의 링크의 정확한 라운드 트립 지연 시점에서 호스트에서 수신될 것이다. 디스플레이의 MDDI_데이터 라인 드라이버는 디스플레이로부터의 0xff, 0xff, 0x00 응답 직전 및 응답 직후에 디스플레이된다.
보호 시간 2 필드(8 바이트)의 값은 호스트의 라인 드라이버가 엔이이블되기전에 클라이언트 MDDI_데이터 라인 드라이버가 디스에이블되도록 한다. 보호 시간(2)은 항상 존재하나, 라운드 트립 지연이 측정주기에서 측정될 수 있는 최대 크기에 있을때에만 요구된다. 클라이언트는 보호 시간(2)의 비트 0동안 자신의 라인 드라이버들을 디스에이블하며, 호스트는 보호 시간(2)의 마지막 비트 직후에 라인 드라이버들을 인에이블한다.
드라이버 재 인에이블 필드(1 바이트)는 0으로 세팅되며, 이에 따라 모든 MDDI_데이터 신호가 다음 패킷의 패킷 길이 필드전에 재인에이블된다.
XV. 결론
본 발명의 다양한 실시예가 앞서 기술되었지만 이러한 실시예는 본 발명을 제한하는 것이 아니라 단순히 예로써만 제공된다는 것을 이해하라. 따라서, 본 발명의 권리범위는 앞서 언급한 실시예에 의하여 제한되는 것이 아니라 첨부한 청구범위에 의해서만 제한된다.

Claims (153)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 링크 제어기는 호스트 링크 제어기이며, 상기 장치는 상기 통신 경로를 통해 상기 호스트에 연결된 상기 클라이언트 장치 내에 상주하고 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 클라이언트 링크 제어기를 더 포함하는 디지털 데이터 인터페이스 구축 장치.
  6. 제 5항에 있어서, 상기 호스트 링크 제어기는 하나 이상의 차동 라인 드라이버들을 포함하며, 상기 클라이언트 링크 제어기는 상기 통신 경로에 연결된 하나 이상의 차동 라인 수신기들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  7. 제 5항에 있어서, 상기 다수의 패킷들은 클라이언트 사용자에게 프리젠테이션하기 위하여 상기 호스트로부터 순방향 링크를 통해 상기 클라이언트로 데이터를 전송하기 위한 비디오 타입 데이터용 하나 이상의 비디오 스트림 패킷들 및 오디오 타입 데이터용 오디오 스트림 패킷들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  8. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 다수의 패킷들은 상기 클라이언트가 상기 호스트에 데이터를 전송하기 위한 하나 이상의 역방향 링크 인캡슐레이션 패킷들을 더 포함하는 디지털 데이터 인터페이스 구축 장치.
  9. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 링크 제어기는 상기 클라이언트 장치가 상기 인터페이스를 통해 어떤 타입의 데이터와 어떤 데이터 레이트를 수용할 수 있는지를 결정하기 위하여 상기 클라이언트 장치로부터 디스플레이 성능 정보를 요청하는 디지털 데이터 인터페이스 구축 장치.
  10. 제 9항에 있어서, 클라이언트 링크 제어기는 적어도 하나의 디스플레이 성능 패킷을 사용하여 디스플레이 또는 프리젠테이션 성능들을 상기 호스트 링크 제어기에 통신하는 디지털 데이터 인터페이스 구축 장치.
  11. 제 5항에 있어서, 상기 통신 경로는 일련의 4개 이상의 도체들 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 인터페이스 구축 장치.
  12. 제 5항에 있어서, 상기 호스트 링크 제어기는 상기 통신 경로의 일부분으로써 동작하는 USB 데이터 인터페이스를 포함하는 디지털 데이터 인터페이스 구축 장치.
  13. 제 5항에 있어서, 상기 호스트 장치는 무선 통신 장치를 포함하는 디지털 데이터 인터페이스 구축 장치.
  14. 제 5항에 있어서, 상기 호스트 장치는 그 내부에 배치된 무선 모뎀을 가진 휴대용 컴퓨터를 포함하는 디지털 데이터 인터페이스 구축 장치.
  15. 제 5항에 있어서, 상기 클라이언트 장치는 휴대용 비디오 디스플레이를 포함하는 디지털 데이터 인터페이스 구축 장치.
  16. 제 15항에 있어서, 상기 휴대용 비디오 디스플레이는 마이크로-디스플레이 장치를 포함하는 디지털 데이터 인터페이스 구축 장치.
  17. 제 5항에 있어서, 상기 클라이언트 장치는 휴대용 오디오 프리젠테이션 시스템을 포함하는 디지털 데이터 인터페이스 구축 장치.
  18. 제 5항에 있어서, 상기 호스트는 상기 클라이언트 장치에 전송될 멀티미디어 데이터를 저장하는 수단을 포함하는 디지털 데이터 인터페이스 구축 장치.
  19. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 패킷들은 각각 패킷 길이 필드, 하나 이상의 패킷 데이터 필드들, 및 순환 중복 체크 필드를 포함하는 디지털 데이터 인터페이스 구축 장치.
  20. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 장치는
    각각 주어진 기간에 걸쳐 상이한 최대수의 데이터 비트들을 병렬로 전송할 수 있도록 하는 다수의 전송 모드들을 더 포함하며, 상기 각각의 전송 모드는 호스트 링크 드라이버 및 클라이언트 링크 드라이버 사이의 협의(negotiation)에 의하여 선택가능하며;
    상기 전송 모드들은 데이터 전송 동안 상기 모드들 사이에서 다이나믹하게 조절가능한 디지털 데이터 인터페이스 구축 장치.
  21. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상디 다수의 패킷들은 컬러 맵, 비트 블록 전송, 비트맵 영역 채움, 비트맵 패턴 채움, 및 투명 컬러 인에이블 타입 패킷들의 그룹으로부터 선택된 비디오 정보를 전송하는데 사용 가능한 다수의 패킷들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  22. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상디 다수의 패킷들은 데이터를 가지지 않은 순방향 링크 전송 주기들을 점유하기 위하여 상기 호스트에 의하여 발생된 채움 타입 패킷들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  23. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 다수의 패킷들은 인터페이스-사용자 정의된 데이터를 전송하기 위한 사용자-정의된 스트림 타입 패킷들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  24. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 다수의 패킷들은 상기 클라이언트 장치와 연관된 사용자 입력 장치들로 그리고 상기 사용자 입력 장치들로부터 데이터를 전송하기 위한 키보드 데이터 및 포인팅 장치 데이터 타입 패킷들을 포함하는 디지털 데이터 인터페이스 구축 장치.
  25. 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속(high rate)으로 디지털 프리젠테이션 데이터를 전송하기 위한 디지털 데이터 인터페이스를 구축하기 위한 장치로서,
    상기 통신 경로를 통해 상기 클라이언트에 연결된 상기 호스트 장치 내에 상주하고, 통신 프로토콜을 형성하는 다수의 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 적어도 하나의 링크 제어기를 포함하며,
    상기 다수의 패킷들의 구조들은 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 상기 통신 프로토콜을 형성하기 위해 함께 링크되며,
    상기 다수의 패킷들은 상기 통신 경로를 통한 어느 한 방향으로의 데이터 전송을 종료하기 위하여 상기 호스트에 의하여 상기 클라이언트로 전송되는 링크 중단 타입 패킷을 포함하는 디지털 데이터 인터페이스 구축 장치.
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    상기 통신 경로를 통해 상기 호스트 장치에 상기 클라이언트 장치 내에 상주하는 적어도 하나의 클라이언트 링크 제어기를 연결(couple)하는 단계를 더 포함하며, 상기 적어도 하나의 클라이언트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성되는 디지털 데이터 전송 방법.
  31. 제 30항에 있어서, 상기 호스트 링크 제어기는 하나 이상의 차동 라인 드라이버들을 포함하며, 상기 클라이언트 링크 제어기는 상기 통신 경로에 연결된 하나 이상의 차동 라인 수신기들을 포함하는 디지털 데이터 전송 방법.
  32. 제30항에 있어서,
    비디오 타입 데이터용 하나 이상의 비디오 스트림 타입 패킷들과 오디오 타입 데이터용 오디오 스트림 타입 패킷들을 사용하여 클라이언트 사용자에게 프리젠테이션하기 위하여 상기 호스트로부터 상기 클라이언트로 데이터를 전송하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  33. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    하나 이상의 역방향 링크 인캡슐레이션 타입 패킷들을 사용하여 상기 클라이언트로부터 상기 호스트로 데이터를 전송하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  34. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    상기 클라이언트가 인터페이스를 통해 어떤 타입의 데이터 및 어떤 데이터 레이트를 수용할 수 있는지를 결정하기 위하여 상기 클라이언트로부터의 디스플레이 성능 정보를 호스트 링크 제어기에 의하여 요청하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  35. 제 34항에 있어서, 적어도 하나의 디스플레이 성능 타입 패킷을 사용하여 클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 디스플레이 또는 프리젠테이션 성능을 통신하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  36. 제 30항에 있어서, 상기 통신 경로는 일련의 4개 이상의 도체들 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 전송 방법.
  37. 제 30항에 있어서, 상기 통신 경로의 일부분으로써 상기 링크 제어기들의 각각에 의하여 USB 데이터 인터페이스를 동작시키는 단계를 더 포함하는 디지털 데이터 전송 방법.
  38. 제 30항에 있어서, 상기 호스트는 무선 통신 장치를 포함하는 디지털 데이터 전송 방법.
  39. 제 30항에 있어서, 상기 호스트는 그 내부에 배치된 무선모뎀을 가진 휴대용 컴퓨터를 포함하는 디지털 데이터 전송 방법.
  40. 제 30항에 있어서, 상기 클라이언트 장치는 휴대용 비디오 디스플레이를 포함하는 디지털 데이터 전송 방법.
  41. 제 40항에 있어서, 상기 휴대용 비디오 디스플레이는 마이크로-디스플레이 장치를 포함하는 디지털 데이터 전송 방법.
  42. 제 30항에 있어서, 상기 클라이언트 장치는 휴대용 오디오 프리젠테이션 시스템을 포함하는 디지털 데이터 전송 방법.
  43. 제 30항에 있어서, 상기 호스트에서 상기 클라이언트 장치에 전송될 멀티미디어 데이터를 저장하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  44. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며,
    상기 패킷들은 각각 패킷 길이 필드, 하나 이상의 패킷 데이터 필드들 및 순환 중복 체크 필드를 포함하는 디지털 데이터 전송 방법.
  45. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    호스트 링크 드라이버 및 클라이언트 링크 드라이버 사이에서 각 방향의 다수의 전송 모드들 중 하나의 모드의 사용을 협의하는 단계 - 상기 각각의 전송 모드는 주어진 기간에 걸쳐 상이한 최대수의 데이터 비트들을 병렬로 전송할 수 있도록 함 -; 및
    데이터 전송 동안 상기 전송 모드들 사이에서 다이나믹하게 조절하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  46. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    컬러 맵, 비트 블록 전송, 비트맵 영역 채움, 비트맵 패턴 채움, 및 투명 컬러 인에이블 타입 패킷들의 그룹으로부터 선택된 비디오 정보를 전송하기 위하여 다수의 패킷들 중 하나 이상의 패킷을 사용하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  47. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    데이터를 가지지 않은 순방향 링크 전송 주기들을 점유하기 위하여 상기 호스트에 의하여 채움 타입 패킷들을 발생시키는 단계를 더 포함하는 디지털 데이터 전송 방법.
  48. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    사용자-정의된 스트림 타입 패킷들을 사용하여 인터페이스-사용자 정의된 데이터를 전송하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  49. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    키보드 데이터 및 포인팅 장치 데이터 타입 패킷들을 사용하여 상기 클라이언트 장치와 연관된 사용자 입력 장치들로 또는 상기 사용자 입력 장치들로부터 데이터를 전송하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  50. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 방법으로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하는 단계;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 단계;
    상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 통신 경로를 통해 상기 클라이언트 장치에 연결하는 단계 - 여기서, 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 단계를 포함하며, 상기 방법은
    상기 호스트에 의하여 상기 클라이언트에 전송되는 링크 중단 타입 패킷을 사용하여 상기 통신 경로를 통한 어느 한방향으로의 데이터의 전송을 종료하는 단계를 더 포함하는 디지털 데이터 전송 방법.
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 클라이언트 제어기는 상기 클라이언트 장치에 연결된 클라이언트 수신기를 포함하는 디지털 데이터 전송 장치.
  58. 제 57항에 있어서, 상기 호스트 제어기는 하나 이상의 차동 라인 드라이버들을 포함하며, 상기 클라이언트 수신기는 상기 통신 경로에 연결된 하나 이상의 차동 라인 수신기들을 포함하는 디지털 데이터 전송 장치.
  59. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    클라이언트 사용자에게 프리젠테이션하기 위하여 상기 호스트로부터 상기 클라이언트로 데이터를 전송할 때 비디오 타입 데이터용 비디오 스트림 타입 패킷들 및 오디오 타입에 대한 오디오 스트림 타입 패킷들을 더 포함하는 디지털 데이터 전송 장치.
  60. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 클라이언트로부터 상기 호스트로 데이터를 전송하기 위하여 하나 이상의 역방향 링크 인캡슐레이션 타입 패킷들을 더 포함하는 디지털 데이터 전송 장치.
  61. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 호스트 링크 제어기는 상기 클라이언트가 인터페이스를 통해 어떤 타입의 데이터 및 어떤 데이터 레이트를 수용할 수 있는지를 결정하기 위하여 상기 클라이언트로부터 디스플레이 성능 정보를 요청하도록 구성되는 디지털 데이터 전송 장치.
  62. 제 61항에 있어서, 상기 클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 디스플레이 또는 프리젠테이션 성능을 통신하기 위하여 적어도 하나의 디스플레이 성능 타입 패킷을 더 포함하는 디지털 데이터 전송 장치.
  63. 제 57항에 있어서, 상기 통신 경로는 일련의 4개 이상의 도체들 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 전송 장치.
  64. 제 63항에 있어서, 상기 케이블은 6개의 도체들 및 차폐물을 포함하는 디지털 데이터 전송 장치.
  65. 제 63항에 있어서, 상기 케이블은 8개의 도체들 및 차폐물을 포함하는 디지털 데이터 전송 장치.
  66. 제 63항에 있어서, 상기 통신 경로는 4개의 도체들, USB 타입 인터페이스 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 전송 장치.
  67. 제 63항에 있어서, 상기 도체들은 각각 1000 피트 길이당 110 옴의 저항을 갖는 다중-가닥(multi-strand) 와이어, 0.66c의 신호전파속도, 8.0 나노초보다 짧은 케이블을 통한 최대 지연 및 차폐물을 포함하는 디지털 데이터 전송 장치.
  68. 제 57항에 있어서, 상기 호스트 장치는 무선 통신 장치를 포함하는 디지털 데이터 전송 장치.
  69. 제 57항에 있어서, 상기 호스트 장치는 그 내부에 배치된 무선 모뎀을 가진 휴대용 컴퓨터를 포함하는 디지털 데이터 전송 장치.
  70. 제 57항에 있어서, 상기 클라이언트 장치는 휴대용 비디오 디스플레이를 포함하는 디지털 데이터 전송 장치.
  71. 제 70항에 있어서, 상기 휴대용 비디오 디스플레이는 마이크로-디스플레이 장치를 포함하는 디지털 데이터 전송 장치.
  72. 제 57항에 있어서, 상기 클라이언트 장치는 휴대용 오디오 프리젠테이션 시스템을 포함하는 디지털 데이터 전송 장치.
  73. 제 57항에 있어서, 상기 호스트에 의하여 상기 클라이언트 장치에 전송될 멀티미디어 데이터를 저장하기 위한 데이터 저장장치를 더 포함하는 디지털 데이터 전송 장치.
  74. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 패킷들은 각각 패킷 길이 필드, 하나 이상의 패킷 데이터 필드들, 및 순환 중복 체크 필드를 포함하는 디지털 데이터 전송 장치.
  75. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 호스트 및 상기 클라이언트 링크 제어기는 각 방향에서 다수의 전송 모드들 중 하나의 모드를 사용하도록 구성되며, 상기 각각의 전송 모드는 주어진 기간에 걸쳐 상이한 최대수의 데이터 비트들을 병렬로 전송하도록 하며 데이터 전송 동안 상기 전송 모드들 사이에서 다이나믹하게 조절할 수 있는 디지털 데이터 전송 장치.
  76. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    컬러 맵, 비트 블록 전송, 비트맵 영역 채움, 비트맵 패턴 채움, 및 투명 컬러 인에이블 타입 패킷들의 그룹으로부터 선택된 비디오 정보를 전송하기 위하여 다수의 패킷들 중 하나 이상의 패킷을 더 포함하는 디지털 데이터 전송 장치.
  77. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    데이터를 가지지 않는 순방향 링크 전송 주기들을 점유하기 위하여 상기 호스트에 의하여 전송되는 채움 타입 패킷들을 더 포함하는 디지털 데이터 전송 장치.
  78. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 클라이언트 장치와 연관된 사용자 입력 장치들로 또는 상기 사용자 입력 장치들로부터 데이터를 전송하기 위하여 키보드 데이터 및 포인팅 장치 데이터 타입 패킷들을 더 포함하는 디지털 데이터 전송 장치.
  79. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하는 장치로서,
    상기 호스트 장치 내에 배치되고, 미리 정의된 통신 프로토콜을 형성하기 위하여, 다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하며, 상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하는 적어도 하나의 호스트 링크 제어기와;
    상기 클라이언트 장치 내에 배치되고 상기 통신 경로를 통해 상기 호스트 링크 제어기에 연결된 적어도 하나의 클라이언트 제어기와;
    상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 상기 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성된 각각의 링크 제어기를 포함하며,
    상기 호스트 제어기는 상기 통신 경로를 통한 어느 한방향으로의 데이터 전송을 종료하기 위하여 링크 중단 타입 패킷을 상기 클라이언트로 전송하도록 구성되는 디지털 데이터 전송 장치.
  80. 삭제
  81. 삭제
  82. 삭제
  83. 삭제
  84. 삭제
  85. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    상기 하나의 링크 제어기는 상기 호스트 장치에 연결된 호스트 제어기를 포함하며, 상기 제 2 링크 제어기는 상기 클라이언트 장치에 연결된 클라이언트 수신기를 포함하는 디지털 데이터 전송 장치.
  86. 제 85항에 있어서, 상기 호스트 제어기는 하나 이상의 차동 라인 드라이버들을 포함하며, 상기 클라이언트 수신기는 상기 통신 경로에 연결된 하나 이상의 차동 라인 수신기들을 포함하는 디지털 데이터 전송 장치.
  87. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    비디오 타입 데이터용 하나 이상의 비디오 스트림 타입 패킷들 및 오디오 타입 데이터용 오디오 스트림 타입 패킷들을 사용하여 클라이언트 사용자에게 프리젠테이션하기 위하여 상기 호스트로부터 상기 클라이언트로 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  88. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    하나 이상의 역방향 링크 인캡슐레이션 타입 패킷들을 사용하여 상기 클라이언트로부터 상기 호스트로 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  89. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    상기 클라이언트가 인터페이스를 통해 어떤 타입의 데이터 및 어떤 타입의 데이터 레이트를 수용할 수 있는지를 결정하기 위하여 상기 호스트 링크 제어기에 의하여 상기 클라이언트로부터 디스플레이 성능 정보를 요청하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  90. 제 89항에 있어서, 적어도 하나의 디스플레이 성능 타입 패킷을 사용하여 상기 클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 디스플레이 또는 프리젠테이션 성능을 통신하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  91. 제 85항에 있어서, 상기 통신 경로는 일련의 4개 이상의 도체들 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 전송 장치.
  92. 제 85항에 있어서, 상기 통신 경로의 일부분으로써 각각의 상기 링크 제어기에 의하여 USB 데이터 인터페이스를 동작시키기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  93. 제 85항에 있어서, 상기 호스트는 무선 통신 장치를 포함하는 디지털 데이터 전송 장치.
  94. 제 85항에 있어서, 상기 호스트는 그 내부에 배치된 무선모뎀을 가진 휴대용 컴퓨터를 포함하는 디지털 데이터 전송 장치.
  95. 제 85항에 있어서, 상기 클라이언트 장치는 휴대용 비디오 디스플레이를 포함하는 디지털 데이터 전송 장치.
  96. 제 95항에 있어서, 상기 휴대용 비디오 디스플레이는 마이크로-디스플레이 장치를 포함하는 디지털 데이터 전송 장치.
  97. 제 85항에 있어서, 상기 클라이언트 장치는 휴대용 오디오 프리젠테이션 시스템을 포함하는 디지털 데이터 전송 장치.
  98. 제 85항에 있어서, 상기 호스트에서 상기 클라이언트 장치에 전송될 멀티미디어 데이터를 저장하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  99. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    상기 패킷들은 각각 패킷 길이 필드, 하나 이상의 패킷 데이터 필드들, 및 순환 중복 체크 필드를 포함하는 디지털 데이터 전송 장치.
  100. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며, 상기 장치는
    각각의 방향에서 다수의 전송 모드들 중 하나의 모드의 사용을 상기 호스트 링크 드라이버 및 상기 클라이언트 링크 드라이버 사이에서 협의하기 위한 수단 - 여기서 상기 각각의 전송 모드는 주어진 기간에 걸쳐 상이한 최대수의 데이터 비트들을 병렬로 전송하도록 함 -; 및
    데이터 전송 동안 상기 전송 모드들 사이에서 다이나믹하게 조절하는 수단을 더 포함하는 디지털 데이터 전송 장치.
  101. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    컬러 맵, 비트 블록 전송, 비트맵 영역 채움, 비트맵 패턴 채움, 및 투명 컬러 인에이블 타입 패킷들의 그룹으로부터 선택된 비디오 정보를 전송하기 위하여 다수의 패킷들 중 하나 이상의 패킷을 사용하는 수단을 더 포함하는 디지털 데이터 전송 장치.
  102. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    데이터를 가지지 않는 순방향 링크 전송 주기들을 점유하기 위하여 상기 호스트에 의하여 채움 타입 패킷들을 발생시키는 수단을 더 포함하는 디지털 데이터 전송 장치.
  103. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    사용자-정의된 스트림 타입 패킷들을 사용하여 인터페이스-사용자 정의된 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  104. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    키보드 데이터 및 포인팅 장치 데이터 타입 패킷들을 사용하여 상기 클라이언트 장치와 연관된 사용자 입력 장치들로 또는 상기 사용자 입력 장치들로부터 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  105. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 적어도 두개의 링크 제어기들을 함께 연결하기 위한 수단 - 여기서, 상기 링크 제어기는 상기 호스트 및 클라이언트 각각 내에서 각각 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 하나 이상의 데이터 패킷들로 형성하도록 구성됨 -; 및
    상기 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷들의 형태로 데이터를 전송하는 수단을 포함하며,
    상기 호스트에 의하여 상기 클라이언트에게 전송되는 링크 중단 타입 패킷을 사용하여 상기 통신 경로를 통한 어느 한방향으로의 데이터의 전송을 종료하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  106. 삭제
  107. 삭제
  108. 삭제
  109. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 호스트 장치 및 상기 클라이언트 장치 간의 통신을 위하여 상기 패킷들을 매체 프레임들 내에 함께 그룹핑하기 위한 수단을 더 포함하며, 상기 패킷들의 미리 결정된 수를 구비한 미리 정의된 고정 길이를 가지는 상기 매체 프레임들은 상이하고 가변적인 길이를 갖는, 디지털 데이터 전송 장치.
  110. 제 109항에 있어서, 각각의 방향에서 다수의 전송 모드들 중 하나의 모드의 사용을 호스트 링크 드라이버 및 클라이언트 링크 드라이버 사이에서 협의하기 위한 수단 - 여기서 상기 각각의 전송 모드는 주어진 기간에 걸쳐 상이한 최대수의 데이터 비트들을 병렬로 전송하도록 함 -; 및
    데이터 전송 동안 상기 전송 모드들 사이에서 다이나믹하게 조절하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  111. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    서브-프레임 헤더 타입 패킷으로 상기 호스트 장치로부터의 패킷들의 전송을 개시하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  112. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 사이에서 정보를 양방향으로 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  113. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    비디오 타입 데이터용 하나 이상의 비디오 스트림 타입 패킷들 및 오디오 타입 데이터용 오디오 스트림 타입 패킷들을 사용하여 클라이언트 사용자에게 프리젠테이션하기 위하여 상기 호스트 장치로부터 상기 클라이언트 장치로 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  114. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    하나 이상의 역방향 링크 인캡슐레이션 타입 패킷들을 사용하여 상기 클라이언트 장치로부터 상기 호스트 장치로 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  115. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 클라이언트 장치가 인터페이스를 통해 어떤 타입의 데이터 및 어떤 데이터 레이트를 수용할 수 있는지를 결정하기 위하여 상기 호스트 링크 제어기에 의하여 상기 클라이언트 장치로부터 디스플레이 성능 정보를 요청하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  116. 제 115항에 있어서, 적어도 하나의 디스플레이 성능 타입 패킷을 사용하여 상기 클라이언트 링크 제어기로부터 상기 호스트 링크 제어기로 디스플레이 성능 정보 또는 프리젠테이션 성능 정보를 통신하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  117. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 통신 경로는 일련의 4개 이상의 도체들 및 차폐물을 가진 케이블을 포함하는 디지털 데이터 전송 장치.
  118. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 통신 경로의 일부분으로써 상기 링크 제어기에 의하여 USB 데이터 인터페이스를 동작시키기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  119. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 호스트 장치에서 상기 클라이언트 장치에 전송될 멀티미디어 데이터를 저장하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  120. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    데이터를 가지지 않는 순방향 링크 전송 주기들을 점유하기 위하여 상기 호스트 장치에 의하여 채움(Filler) 타입 패킷들을 발생시키는 수단을 더 포함하는 디지털 데이터 전송 장치.
  121. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    사용자-정의된 스트림 타입 패킷들을 사용하여 인터페이스-사용자 정의된 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  122. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    키보드 데이터 및 포인팅 장치 데이터 타입 패킷들을 사용하여 상기 클라이언트 장치와 연관된 사용자 입력 장치들로 또는 상기 사용자 입력 장치들로부터 데이터를 전송하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  123. 사용자에게 프리젠테이션하기 위하여 통신 경로를 통해 호스트 장치 및 클라이언트 장치 간에 고속으로 디지털 데이터를 전송하기 위한 장치로서,
    다수의 미리 정의된 패킷 구조들 중 하나 이상의 구조들을 발생시키고 이들을 함께 링크하여 미리 정의된 통신 프로토콜을 형성하기 위한 수단;
    상기 통신 프로토콜을 사용하여 상기 통신 경로를 통해 상기 호스트 장치 및 상기 클라이언트 장치 간에 미리 선택된 디지털 제어 및 프리젠테이션 데이터 세트를 통신하기 위한 수단;
    상기 통신 경로를 통해 상기 호스트 장치 내에 상주하는 적어도 하나의 호스트 링크 제어기를 상기 클라이언트 장치에 연결하기 위한 수단 - 상기 호스트 링크 제어기는 상기 통신 프로토콜을 형성하는 패킷들을 발생, 전송 및 수신하고 디지털 프리젠테이션 데이터를 데이터 패킷들의 하나 이상의 타입들로 형성하도록 구성됨 - ; 및
    상기 호스트 링크 제어기를 사용하여 상기 통신 경로를 통해 패킷 형태로 데이터를 전송하기 위한 수단을 포함하며,
    상기 호스트 장치에 의하여 상기 클라이언트 장치로 전송하기 위한 링크 중단(Shutdown) 타입 패킷을 사용하여 상기 통신 경로를 통한 어느 한방향으로의 데이터의 전송을 종료하기 위한 수단을 더 포함하는 디지털 데이터 전송 장치.
  124. 삭제
  125. 디지털 데이터 인터페이스 통신 데이터 링크에서 전력 감소를 위한 방법으로서,
    호스트 장치로부터 클라이언트 장치로 링크 중단(shut down) 패킷을 전송하는 단계;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드(hibernation)가 되도록 하기 위해 상기 호스트 장치에 의해 데이터 드라이버를 고 임피던스 상태로 디스에이블(disable)하는 단계;
    데이터 라인을 로직 1 상태로 구동(drive) 하기 위해 상기 데이터 라인에 로직 1을 제공하는 단계;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)를 토글(toggle)하는 단계;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업(wake up)하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 단계; 및
    서브-프레임 헤더 패킷을 전송하는 단계를 포함하는 방법.
  126. 제 125항에 있어서, 상기 데이터 드라이버를 디스에이블하는 단계는 상기 통신 데이터 링크가 상기 동면 모드에 있는 동안 제로 로직 상태를 정의하기 위해 고 임피던스 상태를 발생하는 단계를 포함하는 방법.
  127. 제 125항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 단계는 상기 호스트 장치에 의해 상기 로직 1을 제공하는 단계를 포함하는 방법.
  128. 제 125항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 방법.
  129. 제 125항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 단계는 상기 클라이언트 장치가 상기 호스트 장치로 하여금 상기 데이터 라인을 상기 로직 1로 구동하도록 함으로써 상기 로직 1을 제공하는 단계를 포함하는 방법.
  130. 제 125항에 있어서, 데이터가 상기 호스트 장치 및 상기 클라이언트 장치로 및 상기 호스트 장치 및 상기 클라이언트 장치로부터 전송되지 않는 시간 동안 전력을 보존하는 단계를 더 포함하는 방법.
  131. 삭제
  132. 디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드가 되도록 하는 방법으로서,
    호스트 장치로부터 클라이언트 장치로 링크 중단(shut down) 패킷을 전송하는 단계; 및
    상기 호스트 장치에 의해 데이터 드라이버를 고 임피던스 상태로 디스에이블(disable)하는 단계를 포함하며,
    상기 데이터 드라이버를 디스에이블하는 단계는 상기 통신 데이터 링크가 상기 동면 모드에 있는 동안 제로 로직 상태를 정의하기 위해 고 임피던스 상태를 발생하는 단계를 포함하는 방법.
  133. 제 132항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 방법.
  134. 동면 모드로부터 디지털 데이터 인터페이스 통신 데이터 링크를 재시작하는 방법으로서,
    데이터 라인을 로직 1 상태로 구동하기 위해 로직 1을 상기 데이터 라인에 제공하는 단계;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)를 토글(toggle)하는 단계;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 단계; 및
    서브-프레임 헤더 패킷을 전송하는 단계를 포함하는 방법.
  135. 제 134항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 방법.
  136. 제 134항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 단계는 호스트 장치에 의해 상기 로직 1을 제공하는 단계를 포함하는 방법.
  137. 제 134항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 단계는 상기 클라이언트 장치가 상기 호스트 장치로 하여금 상기 데이터 라인을 상기 로직 1로 구동하도록 함으로써 상기 로직 1을 제공하는 단계를 포함하는 방법.
  138. 컴퓨터 판독가능한 매체로서,
    디지털 데이터 인터페이스 통신 데이터 링크 내에서 링크 중단(shut down) 패킷이 호스트 장치로부터 클라이언트 장치로 전송되도록 하는 코드;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드(hibernation)가 되도록 하기 위해 데이터 드라이버가 상기 호스트 장치에 의해 고 임피던스 상태로 디스에이블(disable)되도록 하는 코드;
    데이터 라인을 로직 1 상태로 구동하기 위해 로직 1이 상기 데이터 라인에 제공되도록 하는 코드;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)가 토글(toggle)되도록 하는 코드;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 코드; 및
    서브-프레임 헤더 패킷이 전송되도록 하는 코드를 포함하는 컴퓨터 판독가능한 매체.
  139. 삭제
  140. 컴퓨터 판독가능한 매체로서,
    디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드(hibernation)로부터 재시작하기 위해, 데이터 라인을 로직 1 상태로 구동하기 위해 로직 1이 상기 데이터 라인에 제공되도록 하는 코드;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)가 토글(toggle)되도록 하는 코드;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 코드; 및
    서브-프레임 헤더 패킷이 전송되도록 하는 코드를 포함하는 컴퓨터 판독가능한 매체.
  141. 디지털 데이터 인터페이스 통신 데이터 링크에서 전력 감소를 위한 장치로서,
    호스트 장치로부터 클라이언트 장치로 링크 중단(shut down) 패킷을 전송하는 수단;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드(hibernation)가 되도록 하기 위해 상기 호스트 장치에 의해 데이터 드라이버를 고 임피던스 상태로 디스에이블(disable)하는 수단;
    데이터 라인을 로직 1 상태로 구동하기 위해 상기 데이터 라인에 로직 1을 제공하는 수단;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)를 토글(toggle)하는 수단;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 수단; 및
    서브-프레임 헤더 패킷을 전송하는 수단을 포함하는 장치.
  142. 제 141항에 있어서, 상기 데이터 드라이버를 디스에이블하는 수단은 상기 통신 데이터 링크가 상기 동면 모드에 있는 동안 제로 로직 상태를 정의하기 위해 고 임피던스 상태를 발생하는 수단을 포함하는 장치.
  143. 제 141항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 수단은 상기 호스트 장치에 의해 상기 로직 1을 제공하는 수단을 포함하는 장치.
  144. 제 141항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 장치.
  145. 제 141항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 수단은 상기 클라이언트 장치가 상기 호스트 장치로 하여금 상기 데이터 라인을 상기 로직 1로 구동하도록 함으로써 상기 로직 1을 제공하는 수단을 포함하는 장치.
  146. 제 141항에 있어서, 데이터가 상기 호스트 장치 및 상기 클라이언트 장치로 및 상기 호스트 장치 및 상기 클라이언트 장치로부터 전송되지 않는 시간 동안 전력을 보존하는 수단을 더 포함하는 장치.
  147. 삭제
  148. 디지털 데이터 인터페이스 통신 데이터 링크를 동면 모드가 되도록 하는 장치로서,
    호스트 장치로부터 클라이언트 장치로 링크 중단(shut down) 패킷을 전송하는 수단; 및
    상기 호스트 장치에 의해 데이터 드라이버를 고 임피던스 상태로 디스에이블(disable)하는 수단을 포함하며,
    상기 데이터 드라이버를 디스에이블하는 수단은 상기 통신 데이터 링크가 상기 동면 모드에 있는 동안 제로 로직 상태를 정의하기 위해 고 임피던스 상태를 발생하는 수단을 포함하는 장치.
  149. 제 148항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 장치.
  150. 동면 모드로부터 디지털 데이터 인터페이스 통신 데이터 링크를 재시작하기 위한 장치로서,
    데이터 라인을 로직 1 상태로 구동하기 위해 로직 1을 상기 데이터 라인에 제공하는 수단;
    제 1의 미리 결정된 시간 주기 동안 스트로브(strobe)를 토글(toggle)하는 수단;
    상기 디지털 데이터 인터페이스 통신 데이터 링크를 웨이크 업하기 위해 상기 데이터 라인을 제로 상태로 구동하고 제 2의 미리 결정된 시간 주기 동안 상기 스트로브를 토글하는 수단; 및
    서브-프레임 헤더 패킷을 전송하는 수단을 포함하는 장치.
  151. 제 150항에 있어서, 상기 데이터 드라이버는 스트로브 드라이버를 포함하는 장치.
  152. 제 150항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 수단은 호스트 장치에 의해 상기 로직 1을 제공하는 수단을 포함하는 장치.
  153. 제 150항에 있어서, 상기 로직 1을 상기 데이터 라인에 제공하는 수단은 클라이언트 장치가 호스트 장치로 하여금 상기 데이터 라인을 상기 로직 1로 구동하도록 함으로써 상기 로직 1을 제공하는 수단을 포함하는 장치.
KR1020037008002A 2000-12-15 2001-12-14 높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현 KR100944843B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US25583300P 2000-12-15 2000-12-15
US60/255,833 2000-12-15
PCT/US2001/047807 WO2002049314A2 (en) 2000-12-15 2001-12-14 Generating and implementing a communication protocol and interface for high data rate signal transfer

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016066A Division KR100978497B1 (ko) 2000-12-15 2001-12-14 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스

Publications (2)

Publication Number Publication Date
KR20030061001A KR20030061001A (ko) 2003-07-16
KR100944843B1 true KR100944843B1 (ko) 2010-03-04

Family

ID=22970054

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020097016066A KR100978497B1 (ko) 2000-12-15 2001-12-14 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스
KR1020037008002A KR100944843B1 (ko) 2000-12-15 2001-12-14 높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020097016066A KR100978497B1 (ko) 2000-12-15 2001-12-14 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스

Country Status (13)

Country Link
EP (1) EP1342352A2 (ko)
JP (1) JP2004531916A (ko)
KR (2) KR100978497B1 (ko)
CN (2) CN101030952B (ko)
AU (2) AU2002227359B2 (ko)
BR (1) BRPI0116157B1 (ko)
CA (4) CA2431492C (ko)
HK (1) HK1067477A1 (ko)
IL (2) IL156385A0 (ko)
MX (1) MXPA03005310A (ko)
RU (1) RU2003121400A (ko)
TW (1) TW577208B (ko)
WO (1) WO2002049314A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101141421B1 (ko) 2010-07-12 2012-05-04 고려대학교 산학협력단 모바일 디지털 디스플레이 인터페이스 장치

Families Citing this family (78)

* 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
US7627343B2 (en) 2003-04-25 2009-12-01 Apple Inc. Media player system
CN105406947A (zh) 2003-06-02 2016-03-16 高通股份有限公司 生成并实施一用于更高数据率的讯号协议和接口
RU2006107561A (ru) * 2003-08-13 2007-09-20 Квэлкомм Инкорпорейтед (US) Сигнальный интерфейс для высоких скоростей передачи данных
DE602004019797D1 (de) * 2003-09-10 2009-04-16 Qualcomm Inc Schnittstelle für hohe datenrate
WO2005039148A1 (en) * 2003-10-15 2005-04-28 Qualcomm Incorporated High data rate interface
US8756294B2 (en) 2003-10-29 2014-06-17 Qualcomm Incorporated High data rate interface
RU2341906C2 (ru) 2003-11-12 2008-12-20 Квэлкомм Инкорпорейтед Интерфейс высокоскоростной передачи данных с улучшенным управлением соединением
JP2007512785A (ja) 2003-11-25 2007-05-17 クゥアルコム・インコーポレイテッド 改良されたリンク同期を備えた高速データレートインタフェース
EP2247069B1 (en) 2003-12-08 2013-09-11 Qualcomm Incorporated High data rate interface with improved link synchronization
CN101827103B (zh) * 2004-03-10 2012-07-04 高通股份有限公司 具有改进链路同步的高数据速率接口
WO2005091593A1 (en) 2004-03-17 2005-09-29 Qualcomm Incorporated High data rate interface apparatus and method
WO2005096594A1 (en) 2004-03-24 2005-10-13 Qualcomm Incorporated High data rate interface apparatus and method
US8117651B2 (en) 2004-04-27 2012-02-14 Apple Inc. Method and system for authenticating an accessory
US7529870B1 (en) 2004-04-27 2009-05-05 Apple Inc. Communication between an accessory and a media player with multiple lingoes
US7526588B1 (en) 2004-04-27 2009-04-28 Apple Inc. Communication between an accessory and a media player using a protocol with multiple lingoes
US7529872B1 (en) 2004-04-27 2009-05-05 Apple Inc. Communication between an accessory and a media player using a protocol with multiple lingoes
US7441062B2 (en) 2004-04-27 2008-10-21 Apple Inc. Connector interface system for enabling data communication with a multi-communication device
EP1978692B1 (en) * 2004-06-04 2011-07-27 QUALCOMM Incorporated High data rate interface apparatus and method
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
KR100882166B1 (ko) * 2004-06-04 2009-02-06 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8723705B2 (en) 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
JP5048510B2 (ja) * 2004-11-24 2012-10-17 クゥアルコム・インコーポレイテッド デジタルデータインタフェースデバイスメッセージフォーマット
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
KR100908148B1 (ko) * 2004-11-24 2009-07-16 콸콤 인코포레이티드 버퍼를 업데이트하기 위한 방법들 및 시스템들
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US7823214B2 (en) 2005-01-07 2010-10-26 Apple Inc. Accessory authentication for electronic devices
US7979561B2 (en) 2005-03-10 2011-07-12 Qualcomm Incorporated Method of multiplexing over an error-prone wireless broadcast channel
JP5077977B2 (ja) 2005-05-30 2012-11-21 ルネサスエレクトロニクス株式会社 液晶ディスプレイ駆動制御装置及び携帯端末システム
US7599439B2 (en) * 2005-06-24 2009-10-06 Silicon Image, Inc. Method and system for transmitting N-bit video data over a serial link
KR100685664B1 (ko) * 2005-08-12 2007-02-26 삼성전자주식회사 호스트 및 클라이언트로 구성된 데이터 통신 시스템 및데이터 통신 시스템의 작동 방법
EP1930870A4 (en) * 2005-09-29 2011-03-30 Nikon Corp CONTENT DATA REPRODUCTION SYSTEM AND PROGRAM FOR IMPLEMENTING THE CONTENT DATA REPRODUCTION SYSTEM
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8086332B2 (en) 2006-02-27 2011-12-27 Apple Inc. Media delivery system with improved interaction
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
EP2021908B1 (en) * 2006-05-26 2014-10-29 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US7415563B1 (en) 2006-06-27 2008-08-19 Apple Inc. Method and system for allowing a media player to determine if it supports the capabilities of an accessory
US7558894B1 (en) 2006-09-11 2009-07-07 Apple Inc. Method and system for controlling power provided to an accessory
US8356331B2 (en) 2007-05-08 2013-01-15 Qualcomm Incorporated Packet structure for a mobile display digital interface
US8667144B2 (en) 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
AU2008296673B2 (en) 2007-09-04 2010-05-27 Apple Inc. Smart dock for chaining accessories
US9467735B2 (en) 2007-09-04 2016-10-11 Apple Inc. Synchronizing digital audio and analog video from a portable media device
US8047966B2 (en) * 2008-02-29 2011-11-01 Apple Inc. Interfacing portable media devices and sports equipment
US8811294B2 (en) 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
JP5231533B2 (ja) * 2008-05-06 2013-07-10 クゥアルコム・インコーポレイテッド モバイル・ディスプレイ・ディジタル・インターフェース用パケット構造
US8208853B2 (en) 2008-09-08 2012-06-26 Apple Inc. Accessory device authentication
US8238811B2 (en) 2008-09-08 2012-08-07 Apple Inc. Cross-transport authentication
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US8102849B2 (en) 2009-02-12 2012-01-24 Qualcomm, Incorporated Association procedure to enable multiple multicast streams
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
JP5367539B2 (ja) * 2009-11-09 2013-12-11 シャープ株式会社 インターフェース装置
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
US8130790B2 (en) 2010-02-08 2012-03-06 Apple Inc. Digital communications system with variable-bandwidth traffic channels
TWI416337B (zh) * 2010-04-21 2013-11-21 Via Tech Inc 資料傳輸系統以及資料傳輸方法
KR101686944B1 (ko) * 2010-08-26 2016-12-16 삼성전자주식회사 비압축 동영상 데이터 패킷을 생성하는 방법 및 그 장치
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
US9652192B2 (en) * 2013-01-25 2017-05-16 Qualcomm Incorporated Connectionless transport for user input control for wireless display devices
KR101619693B1 (ko) 2015-02-16 2016-05-18 포항공과대학교 산학협력단 디스플레이 장치 및 그 구동 방법
US9621332B2 (en) * 2015-04-13 2017-04-11 Qualcomm Incorporated Clock and data recovery for pulse based multi-wire link
JP6790435B2 (ja) * 2016-04-20 2020-11-25 ソニー株式会社 受信装置、送信装置、および通信システム、ならびに、信号受信方法、信号送信方法、および通信方法
CN108847920B (zh) * 2018-06-25 2021-06-29 北京零态空间数码科技有限公司 一种通信方法以及系统
US10862666B2 (en) 2019-01-14 2020-12-08 Texas Instruments Incorporated Sampling point identification for low frequency asynchronous data capture
TWI748447B (zh) 2020-05-12 2021-12-01 瑞昱半導體股份有限公司 影音介面之控制訊號傳輸電路及控制訊號接收電路
TWI733499B (zh) 2020-06-19 2021-07-11 瑞昱半導體股份有限公司 多媒體影音系統

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990082741A (ko) * 1998-04-20 1999-11-25 포만 제프리 엘 분산데이터프로세싱시스템내에서하이버네이션을위한방법및장치
KR20000039224A (ko) * 1998-12-11 2000-07-05 윤종용 고속 데이터전송을 위한 통신 상호접속 네트워크

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5490247A (en) * 1993-11-24 1996-02-06 Intel Corporation Video subsystem for computer-based conferencing system
SE506540C2 (sv) * 1995-06-13 1998-01-12 Ericsson Telefon Ab L M Synkronisering av överföring av data via en dubbelriktad länk
US5751951A (en) * 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990082741A (ko) * 1998-04-20 1999-11-25 포만 제프리 엘 분산데이터프로세싱시스템내에서하이버네이션을위한방법및장치
KR20000039224A (ko) * 1998-12-11 2000-07-05 윤종용 고속 데이터전송을 위한 통신 상호접속 네트워크

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101141421B1 (ko) 2010-07-12 2012-05-04 고려대학교 산학협력단 모바일 디지털 디스플레이 인터페이스 장치

Also Published As

Publication number Publication date
KR20090087513A (ko) 2009-08-17
CA2725844C (en) 2015-03-31
TW577208B (en) 2004-02-21
CA2726149A1 (en) 2002-06-20
MXPA03005310A (es) 2004-03-26
HK1067477A1 (en) 2005-04-08
CA2431492C (en) 2011-09-27
IL156385A0 (en) 2004-01-04
KR100978497B1 (ko) 2010-08-30
AU2002227359B2 (en) 2006-12-07
KR20030061001A (ko) 2003-07-16
RU2003121400A (ru) 2005-02-10
EP1342352A2 (en) 2003-09-10
CN100473058C (zh) 2009-03-25
CN1543734A (zh) 2004-11-03
AU2735902A (en) 2002-06-24
CA2725878C (en) 2012-05-29
CN101030952B (zh) 2016-03-09
CA2725878A1 (en) 2002-06-20
BR0116157A (pt) 2004-07-06
BRPI0116157B1 (pt) 2016-07-19
CN101030952A (zh) 2007-09-05
CA2726149C (en) 2013-06-25
WO2002049314A3 (en) 2003-05-01
CA2725844A1 (en) 2002-06-20
JP2004531916A (ja) 2004-10-14
IL196247A (en) 2012-07-31
CA2431492A1 (en) 2002-06-20
WO2002049314A2 (en) 2002-06-20

Similar Documents

Publication Publication Date Title
KR100944843B1 (ko) 높은 데이터 레이트의 신호 전송을 위한 통신 프로토콜 및 인터페이스의 형성과 구현
US6760772B2 (en) Generating and implementing a communication protocol and interface for high data rate signal transfer
US8694663B2 (en) System for transferring digital data at a high rate between a host and a client over a communication path for presentation to a user
CA2459941C (en) Generating and implementing a communication protocol and interface for high data rate signal transfer
KR101166734B1 (ko) 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현
AU2002227359A1 (en) Generating and implementing a communication protocol and interface for high data rate signal transfer
JP2011066935A (ja) 高速データレートインタフェース
JP2007509533A (ja) 高速データレートインタフェース
JP2011066904A (ja) さらに高速なデータレート用の信号インタフェース
JP2007511017A (ja) 改善されたリンク制御を有する高速データレートインタフェース
KR20040036945A (ko) 하이 데이터 레이트 신호 전송을 위한 통신 프로토콜 및인터페이스의 생성 및 구현
AU2009200172A1 (en) Generating and implementing a communication protocol and interface for high data rate signal transfer
AU2002324904A1 (en) Generating and implementing a communication protocol and interface for high data rate signal transfer
CA2818773A1 (en) A system for transferring digital data at a high rate between a host and a client over a communication path for presentation to a user

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for 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: 20130130

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190107

Year of fee payment: 10