KR20040028595A - 한 클러스터의 수신 워드 중 각각의 워드를 단일의 전송 워드로 매핑하는 기능을 사용하여 시리얼 링크를 통한 전송에 있어서 심볼간의 간섭 효과를 감소시키기 위한 방법 및 시스템 - Google Patents

한 클러스터의 수신 워드 중 각각의 워드를 단일의 전송 워드로 매핑하는 기능을 사용하여 시리얼 링크를 통한 전송에 있어서 심볼간의 간섭 효과를 감소시키기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR20040028595A
KR20040028595A KR10-2003-7001443A KR20037001443A KR20040028595A KR 20040028595 A KR20040028595 A KR 20040028595A KR 20037001443 A KR20037001443 A KR 20037001443A KR 20040028595 A KR20040028595 A KR 20040028595A
Authority
KR
South Korea
Prior art keywords
word
codewords
codeword
data
words
Prior art date
Application number
KR10-2003-7001443A
Other languages
English (en)
Other versions
KR100568950B1 (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25495762&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20040028595(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US10/095,422 external-priority patent/US7257163B2/en
Application filed by 실리콘 이미지, 인크.(델라웨어주 법인) filed Critical 실리콘 이미지, 인크.(델라웨어주 법인)
Priority claimed from PCT/US2002/028804 external-priority patent/WO2003024067A1/en
Publication of KR20040028595A publication Critical patent/KR20040028595A/ko
Application granted granted Critical
Publication of KR100568950B1 publication Critical patent/KR100568950B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • H04L1/203Details of error rate determination, e.g. BER, FER or WER
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • H04L1/206Arrangements for detecting or preventing errors in the information received using signal quality detector for modulated signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Multimedia (AREA)
  • Power Engineering (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

송신기, 수신기 및 시리얼링크를 포함하는 통신시스템에 있어서, 인코딩된 데이터(예를 들어, 인코딩된 비디오데이터와 인코딩된 보조데이터)는 송신기에서 수신기로 전송된다. 시리얼링크는 TMDS 또는 TMDS-유사한 링크가 가능하지만 아닐 수도 있다. 대표적인 실시예에 있어서, 인코딩된 비디오데이터와 인코딩된 보조데이터의 교차하는 버스트는 링크의 하나 또는 그 이상의 각각의 채널상에서 전송된다. 본 발명의 다른 측면에서는 시리얼링크상에서의 전송하도록 데이터를 인코딩하는데 사용되는 송신기와, 그러한 데이터를 수신하는 수신기, 그리고 시리얼링크상에서 인코딩된 데이터를 보내는 방법에 대한 것이다. 본 발명에 부합되게, 전송될 소스데이터는 전체 코드워드 세트중에서 하나의 서브세트를 이용하여 인코딩된다. 이 서브세트는 바람직한 코드워드로 구성된다. 바람직한 워드는, 시리얼링크상에서 전송되는 각각의 인코딩된 데이터의 스트림(바람직한 워드만을 사용하여 구성된)이 전송 중에 심벌 사이의 간섭("ISI")에 대해서, 전형적으로 인코딩된 동일한 데이터의 버전(바람직한 워드 뿐만아니라 전체 세트의 다른 구성원으로도 구성된)에 의해서 결정된 비트패턴보다, 덜 민감한 비트 패턴을 가지도록, 미리 결정된다. 전체세트의 코드워드의 디스조인트 클러스터는 미리 결정된다. 각각의 클러스터는 하나 또는 그 이상의 바람직한 워드를 포함하고 있으며, 선택적으로 그러한 클러스터의 바람직한 워드의, 전송, 또는 전송 및 디코딩에서의 적어도 하나의 비트 에러의 결과로 생성될 수 있다는 점에서 클러스터의 바람직한 워드와 유사한 추가적인 코드워드를 포함한다. 클러스터의 바람직한 워드 각각은 단일 소스데이터 값을 나타낸다. 클러스터가 둘 또는 그 이상의 바람직한 워드를 포함할 경우, 그러한 바람직한 워드 각각은 동일한 소스데이터 값을 나타낸다. 하나의 클러스터에서 수신된 코드워드 각각은 클러스터의 바람직한 워드 각각에 의해서 결정되는 소스데이터 값으로 매핑된다. 이러한 매핑은 클러스터에서 에러-포함하는 워드 각각을 가장 개연성있는 소스데이터값으로 매핑하여 에러 정정을 제공할 수 있다. 실시예들에 있어서, 바람직한 코드워드는 인접하는 0와 인접하는 1의 수가, 전체세트중의 바람직한 워드가 아닌 코드워드에서보다 평균적으로 적은 비트패턴(전송도중에)을 가진다(그리고 따라서 전송도중에 ISI게 대해 덜 민감하다).

Description

수신된 워드의 클러스터에서의 각각의 워드를 단일 전송된 워드로 매핑하여 시리얼링크 상의 전송에 있어서 심볼 사이의 간섭효과를 줄이기 위한 방법 및 시스템{Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word}
본 발명의 구성요소는 시리얼링크의 특성을 기반으로 한다. 데이터와 클럭신호의 전송을 위한 다양한 시리얼링크에 대해서 잘 알려져 있다.
비디오데이터를 호스트 프로세서(예를 들어 개인용 컴퓨터)에서 모니터로 보내는 고속 전송에 주로 사용되는, 전형적인 시리얼링크중 하나는 TMDS링크 인터페이스로 공지되어 있다. TMDS 링크의 특성은 다음의 것을 포함한다:
1. 비디오데이터는 인코딩되고, 인코딩된 워드(디지털 비디오데이터의 각각의 8-비트 워드가 전송전에 인코딩된 10-비트 워드로 변환된다.)로 전송된다;
a. 상기 인코딩은 "대역내(in-band)"워드의 세트와 "대역외(out-of-band)"워드의 세트(인코더는 비디오데이터에 대응해서는 "대역내"워드만을 생성할 수 있고, 제어 신호 또는 동기(sync) 신호에 대해서는 "대역외"워드를 생성할 수 있다. 각각의 대역내 워드는 하나의 입력 비디오데이터 워드에 대한 인코딩의 결과로 인코딩된 워드이다. 링크 상에서 전송된 대역내 워드가 아닌 모든 워드가 "대역외" 워드이다.);
b. 비디오데이터의 인코딩은 상기 대역내 워드가 천이(transition)최소화되도록 수행된다.(대역내 워드의 시퀀스는 감소되거나 최소화된 천이 수를 가진다.);
c. 비디오데이터의 인코딩은 상기 대역내 워드가 DC 발란스(balanced)가 되도록 수행된다.(인코딩은 대역내 워드의 시퀀스를 전송하기 위해서 사용된 각각의 전송된 전압 파형이, 기준전압에서 미리 정해진 한계값 이상으로 벗어나지 않도록 방지한다. 특히, 각각의 "대역내"워드의 10번째 비트는 그것의 다른 9개 비트중 8개가 인코딩 수행중에, 이전에 인코딩된 데이터 비트의 스트림에서 0의 갯수와 1의 갯수의 실행된 카운트사이의 불균형(imbalance)을 정정하기 위해 반전되었는지를 나타낸다.);
2. 인코딩된 비디오데이터와 비디오 클럭 신호는 차이(differential)신호로 전송된다.(비디오 클럭과 인코딩된 비디오데이터는 컨덕터 페어(conductor pair)상에서 차이신호로서 전송된다.);
3. 3개의 컨덕터 페어가 인코딩된 비디오를 전송하기 위해서 사용되고, 4번째 컨덕터 페어가 비디오 클럭 신호를 전송하기 위해서 사용된다; 및
4. 신호 전송은 한 방향으로, 송신기(대표적으로 데스크탑이나 휴대용 컴퓨터 또는 다른 호스트와 관련되어 있다.)에서 수신기(대표적으로 모니터나 다른 디스플레이 장치의 구성요소)로 발생한다.
TMDS 시리얼링크의 하나의 적용은, 디지털 디스플레이 워킹그룹에서 채택된 "디지털 비주얼 인터페이스" 인터페이스("DVI" 링크)이다. 이 것은 도 1의 참조에서 기술될 것이다. DVI 링크는 두개의 TMDS링크(비디오 클럭 신호 전송에 있어 공통 컨덕터 페어를 공유하는) 또는 하나의 TMDS 링크와 송신기와 수신기 사이의 추가적인 제어 라인을 포함하도록 구현될 수 있다. 도 1의 DVI 링크는 송신기(1), 수신기(3), 그리고 다음과 같이 송신기와 수신기 사이의 컨덕터를 포함하고 있다: 4개의 컨덕터 페어(비디오데이터를 위한 채널 0, 채널 1, 채널 2와 비디오 클럭 신호를 위한 채널 C), 송신기 및 전형적인 디스플레이 데이터 채널 표준(비디오 전자공학 표준 협회의 1996년 4월 9일자 "디스플레이 데이터 채널 표준" 버전 2, 개정판 0)에 상응하는 수신기와 관련된 모니터사이의 양방향 통신을 위한 디스플레이 데이터 채널("DDC")라인; 핫 플러그 검출(HPD) 라인(송신기에 관련된 프로세서에서 모니터의 존재를 인식하도록 하게 하는 신호가 상기 라인상에서 모니터에서 전송됨), 아날로그 라인(아날로그 비디오를 수신기에 전송하기 위해), 전력 라인(수신기와 수신기와 관련된 모니터에 DC전력을 공급하기 위해).
DDC표준은 송신기 및 수신기와 관련된 모니터사이의 양방향 통신을 위한 규약(protocol)을 서술하고 있으며, 모니터의 다양한 특성을 서술하는 확장디스플레이인식(Extended Display Identification, "EDID")메시지를 모니터에서 전송하는 것과 모니터를 위해서 제어 신호를 송신기에서 전송하는 것을 포함하고 있다. 송신기(1)는 3개의 동일한 인코더/직렬변환기(serializer) 유니트(unit)(유니트 2, 4 및 6)와 추가적인 회로(도시되지 않음)를 포함한다. 수신기(3)은 3개의 동일한 복원/디코더 유니트(유니트 8, 9 및 10)와 도시된 것처럼 연결된 채널간 정렬회로(14)와 추가적인 회로(도시되지 않음)를 포함한다.
도 1에 도시되었듯이, 회로(2)는 채널 0상에서 전송될 데이터를 인코딩하고 인코딩된 비트를 직렬변환한다. 유사하게, 회로(4)는 채널 1상에서 전송될 데이터를 인코딩하며(그리고 인코딩된 비트를 직렬변환한다.) 그리고 회로(6)는 채널 2상에서 전송될 데이터를 인코딩한다.(그리고 인코딩된 비트를 직렬변환한다.) 회로(2,4 및 6) 각각은 제어신호(액티브 하이 이진 제어 신호로 "데이터 인에이블"또는 "DE"신호로 불리는)에 대응하여 선택적으로 디지털 비디오 워드(높은 값을 가지는 DE에 대응하여) 또는 제어 또는 동기화 신호 페어(낮은 값을 가지는 DE에 대응하여)를 인코딩한다. 인코더 회로(2,4 및 6) 각각은 제어 또는 동기화 신호의 다른 페어를 수신한다: 인코더(2)는 수평 또는 수직 동기화 신호(HYSNC 또는 VSYNC)를 수신하고; 인코더(4)는 제어 비트 CTL0 및 CTL1을 수신하고; 인코더(6)는 제어 비트 CTL2 및 CTL3을 수신한다. 따라서 각 인코더 회로(2,4 및 6)는 비디오데이터(높은 값을 가지는 DE에 대응하여)를 나타내는 대역내 워드를 생성하고, 인코더(2)는 HYSNC 또는 VSYNC의 값을 나타내는 대역외 워드를 생성하고(낮은 값을 가지는 DE에 대응하여), 인코더(4)는 CTL0 및 CTL1의 값을 나타내는 대역외 워드를 생성하고(낮은 값을 가지는 DE에 대응하여); 인코더(6)는 CTL2 및 CTL3의 값을 나타내는 대역외 워드를 생성한다.(낮은 값을 가지는 DE에 대응하여). 낮은 값을 가지는 DE에 대응하여, 각 인코더(4와 6)는 각각 제어비트 CTL0와 CTL1(또는 CTL2와 CTL3)의 00,01,10 또는 11의 값을 나타내는 4개의 특정한 대역외 워드 중 하나를 생성한다.
시리얼링크 상에서 전송되는 비디오데이터를 암호화(encrypt)하는 것에 대해서 여러 방법이 제시되어왔다. 예를 들어 HDCP(High-bandwidth Digital Content Protection)로 알려진 암호화 규격을 사용하여 디지털 비디오를 DVI링크상에서 전송하기 위해 암호화하고 DVI수신기에서 데이터를 복호화하는 것이 제시되어 왔다. HDCP를 구현한 DVI 송신기는 비디오 액티브 기간(즉 DE가 하이일때) cout[23:0]로 알려진 24-비트 버스를 출력한다. 이 24-비트 cout데이터는 비디오데이터를 암호화하기 위해서 24-비트 RGB비디오데이터 입력과 "익스클루시브 OR(송신기의 논리회로에서)" 된다. 이 암호화된 데이터는 전송을 위해서 인코딩된다(TMDS표준에 따라서). 동일한 cout 데이터는 수신기에서도 생성된다. 암호화되고 인코딩된 데이터가 수신기에서 수신되면 TMDS 디코딩이 수행되고, cout데이터는 디코딩된 데이터를 복호화하고 원래의 입력 비디오데이터를 복원하기 위해서 논리회로에서 디코딩된 비디오와 같이 처리된다.
송신기에서 HDCP로 암호화되고 인코딩된 비디오데이터의 전송을 시작하기 전에, 송신기와 수신기는 인증(authentication) 프로토콜을 실행하기 위해서 서로 양방향으로 통신한다.(수신기가 보호된 콘텐트를 수신하기 위해서 허가되고, 입력 데이터의 암호화와 전송된 암호화된 데이터의 복호화에 사용되는 공유된 비밀 값을 설정하기 위해서). 수신기가 인증된 후, 송신기는 제어 신호에 대응하여 암호화 키값의 초기세트를 계산하고(입력 비디오데이터의 첫번째 라인의 암호화를 위해서), 상기 제어신호를 수신기에 송신하여(수직 블랭킹기간(vertical blanking period)동안, DE가 로우일때) 수신기에서 복호화 키값의 초기세트를 계산하도록 한다.(전송된 비디오데이터의 수신되고 디코딩된 첫번째 라인의 복호화를 위해서). 암호화/복호화 키값의 초기 세트의 생성에 수반하여, 각각의 송신기와 수신기는 각각의 블랭킹(수직 또는 수평)기간(blanking interval)동안 비디오데이터의 다음 라인에 대해서 암호화(또는 복호화)를 위해서 새로운 키값의 세트를 생성하기 위해서 리-키잉(re-keying)동작을 수행하고, 실제의 입력비디오데이터의 암호화(또는 수신되어 디코딩된 비디오데이터의 복호화)는 DE가 하이일때(블랭킹기간 동안이 아닐때)에만 키값의 마지막 세트를 사용하여 실행된다.
각각의 송신기와 수신기는, 선형 피드백 이동 레지스터(LFSR)모듈, 상기 LFSR모듈의 출력에 연결된 블럭 모듈, 상기 블럭 모듈의 출력에 연결된 출력 모듈을 포함하는 HDCP암호 회로(때로는 본원에서 "HDCP암호"로 설명되는)를 포함한다. 상기 LFSR모듈은 인에이블 신호의 인가에 대응하여, 세션 키(session key,Ks)와 프레임 키(frame key,Ki)를 사용하여 상기 블럭 모듈을 리키(re-key)하기 위해서 사용된다. 상기 블럭 모듈은 세션의 시작에서 키Ks를 생성하고(그리고 상기 LFSR모듈에 제공하고), 비디오데이터의 각 프레임의 시작에서 새로운 값의 키Ki를 생성한다.(그리고 상기 LFSR모듈에 적용한다.)(프레임의 첫번째 수직 블랭킹기간에서 발생하는 제어신호의 상승 에지에 대응하여)
블럭 모듈은 "라운드 함수 K"와 "라운드 함수 B"로 알려진 2가지로 구성된다. 라운드 함수 K는 28-비트 레지스터 Kx, Ky 그리고 Kz와 7개의 S-박스(룩업테이블(look-up table)을 포함하는 각각의 4 입력 비트 4출력 비트 S-박스), 그리고 선형 변환(linear transformation) 유니트 K를 포함한다. 라운드 함수 B는 28-비트 레지스터 Bx, By 그리고 Bz와 7개의 S-박스(룩업테이블(look-up table)을 포함하는 각각의 4 입력 비트 4출력 비트 S-박스), 그리고 선형 변환 유니트 B를 포함한다. 라운드 함수 K와 라운드 함수 B는 설계면에서 유사하지만, 라운드 함수 K는 다른 페어의 28-비트 라운드 키(Ky와 Kz)를 각 클럭사이클에서 LFSR모듈의 출력에 대응하여 인가(출력 모듈에)하기 위하여 클럭 사이클 당 하나의 블럭 암호 라운드를 실행하고, 라운드 함수 B는, 라운드 함수 K와 상기 LFSR모듈의 출력에서의 각각의 28-비트 라운드 키 Ky에 대응하여, 다른 페어의 28-비트 라운드 키(By와 Bz)를 각 클럭사이클에서 인가(출력 모듈에)하기 위하여 클럭 사이클 당 하나의 블럭 암호 라운드를 실행한다. 송신기는 인증 프로토콜의 시작에서 An값을 생성하고 수신기는상기 인증 과정 도중에 이에 대응한다. 상기 An값은 세션 키를 난수화(randomize)하기 위해서 사용한다. 블럭 모듈은 상기 인증 값(An)과 각 프레임의 시작에서 출력 모듈에 의해 갱신되는 초기화 값(Mi, 또한 무결성(integrity) 검증 키로 일컬어지는)에 대응하여 동작한다.
각각의 선형 변환 유니트 K와 B는 클럭 사이클당 56비트를 출력한다. 이 출력 비트는 각각의 변환 유니트의 8개의 분산(diffusion) 네트워크의 출력을 결합한 것이다. 각각의 선형 변환 유니트 K의 분산 네트워크는 레지스터 Ky및 Kz의 7개의 현재 출력비트에 대응하여 7개의 출력 비트를 생성한다. 선형 변환 유니트 B의 분산 네트워크 4개 각각은 레지스터 By, Bz 및 Ky의 7개의 현재 출력비트에 대응하여 7개의 출력 비트를 생성하고, 선형 변환 유니트 B의 분산 네트워크의 다른 4개 각각은 레지스터 By및 Bz 의 7개의 현재 출력비트에 대응하여 7개의 출력 비트를 생성한다.
출력 모듈은 각 클럭 사이클 동안 블럭모듈에 의해 인가되는 28-비트 키(By, Bz, Ky, Kz)(총 112 비트)에 대해서 클럭 사이클당 하나의 24-비트 준-랜덤(pseudo-random)비트 cout[23:0]을 생성하기 위해서 압축 동작을 실행한다. 각각의 출력 모듈의 24출력비트는 9번의 익스클루시브 OR(XOR)로 구성된다.
송신기에서, 논리회로는 각각의 24-비트 cout데이터 블럭과 각각의 입력 24-비트 RGB 비디오데이터 워드를 수신하고, 비디오데이터를 암호화하기 위해서 여기에 비트단위의 XOR 동작을 실행하여, 암호화된 RGB데이터 워드를 생성하게 된다. 대표적으로, 상기 암호화된 데이터는 이후에 수신기로 전송되기 전에 TMDS 인코딩을 수행한다. 수신기에서, 논리 회로는 각각의 24-비트 cout데이터 블럭과 복원된 24-비트 RGB 비디오데이터 워드를 수신하고(복원된 데이터가 TMDS디코딩을 수행한 이후) 복원된 비디오데이터를 복호화하기 위해서 비트단위의 XOR동작을 수행한다.
본 명세서에서 "TMDS-유사한 링크"라는 표현은 때때로 인코딩된 데이터(예를 들어 인코딩된 디지털 비디오데이터)와 인코딩된 데이터를 위한 클럭을 송신기에서 수신기로 전송할 수 있고, 또한 선택적으로 하나 또는 그 이상의 추가적 신호(예를 들어 인코딩된 디지털 오디오데이터 또는 다른 인코딩된 데이터)를 송신기와 수신기 사이에 전송할 수 있는 시리얼링크, 즉 TMDS 링크이거나 TMDS 링크의 특징을 전부는 아니더라도 일부 가지고 있는 링크를 나타낸다. 여러 가지의 전형적인 TMDS-유사한 링크가 존재한다.
어떤 TMDS-유사한 링크는 TMDS 링크에서 사용되는 특정 알고리즘과 다른 코딩 알고리즘을 사용한 들어오는(incoming) 데이터보다 많은 비트로 구성된 인코딩된 워드를 전송하기 위해서 입력 비디오데이터(그리고 다른 데이터)를 인코딩하고, 상기 인코딩된 비디오데이터를 대역내 캐릭터(character)로 다른 인코딩된 데이터를 대역외 캐릭터로 전송한다. 캐릭터는 천이-최소화와 DC 밸런스 기준에 적합한지 여부에 따라 대역외 또는 대역내로 구분되어질 필요는 없다. 오히려, 다른 분류기준이 사용될 수 있다. 인코딩 알고리즘의 한 예는, IBM 8b10b 코딩이다. 이 분류(대역내 또는 대역외 캐릭터)는 높은 또는 낮은 수의 천이에 기초할 필요는 없다. 예를 들어 각각의 대역내 및 대역외 캐릭터의 천이의 수가 단일 범위(즉, 최소 및 최대 수의 천이점의 중간 범위)에 있을 수 있다.(어떤 실시예에 있어서)
TMDS-유사한 링크에서 송신기와 수신기 사이에 전송되는 데이터는 다르게(컨덕터 페어상에서) 전송될 수 있다. 또한, 비록 TMDS 링크가 4개의 각기 다른 페어(단일 픽셀 버전에서)을 가지고, 3개가 비디오데이터로 다른 하나가 비디오 클럭으로 사용되지만, TMDS-유사한 링크에서는 컨덕터 또는 컨덕터 페어의 수가 달라질 수 있다.
대표적으로 TMDS링크에 의해 전송되는 주요(primary)데이터는 비디오데이터이다. 이 것에 대해서 종종 중요한 것은 비디오데이터는 연속적이지 않고, 대신에 블랭킹기간(blanking interval)을 가진다는 것이다. 이러한 블랭킹기간은 보조데이터가 전송될 수있는 기회를 제공하며(본 발명의 다른 실시예에서 이용된), 이러한 것은 사용되지 않은 대역을 나타낸다. 그렇지만, 많은 시리얼링크가 블랭킹기간을 가진 데이터를 전송하지 않으며, 따라서 데이터 인에이블 신호에 대응하여 입력데이터를(전송을 위해서) 인코딩하지 않는다. 예를 들어, 오디오 시리얼링크는 대표적으로 연속적인 데이터를 전송한다.
"보조데이터"라는 표현은 본 명세서에서 디지털 오디오데이터, 또는 비디오데이터나 비디오데이터를 위한 타이밍정보(예를 들어 비디오 클럭)와 다른 어떤 형태의 데이터를 광범위하게 나타내도록 사용되었다. 예를 들어 오디오데이터의 타이밍 정보(예를 들어 전송된 오디오데이터를 복원하기 위한 클럭)은 "보조데이터"의 범위에 해당된다. 본 발명에 대응해서 전송되는 "보조데이터"의 다른 예는 컴퓨터 키보드 신호, 정지화상 데이터(예를 들어 카메라에서 생성된), 텍스트 데이터, 전원공급을 위한 제어신호, 픽쳐인픽쳐 데이터, 모니터 제어 정보(오디오 볼륨, 밝기, 전력 상태), 모니터 또는 키보드의 표시등 제어신호, 비(non)-오디오 및 비(non)-비디오 제어신호 등이다.
본 명세서에서 사용된 데이터의 "스트림"이라는 용어는 모든 데이터가 동일한 형태이고 동일한 클럭 주파수로 전송되는 것을 나타낸다. 본 명세서에서 사용된 "채널"이라는 용어는 데이터를 전송하기 위해서 사용된 시리얼링크의 일부를 나타내고(예를 들어 데이터가 전송될 송신기와 수신기 사이의 특정한 컨덕터 또는 컨덕터 페어, 그리고 송신기 및/또는 수신기안에서 데이터의 전송 및/또는 복원에 사용되는 특정회로), 또한 그러한 링크상에서 데이터를 전송하기 위해서 사용된 기술을 나타낸다. 본 발명의 중요한 적용에 있어서 보조데이터의 여러 다른 스트림을 전송하는 것이 바람직하기 때문에, 본 발명의 바람직한 실시예는, 링크 상에서 양방향으로 보조데이터를 전송하기 위한 채널을 포함하는(즉 비디오데이터의 방향과 일치 또는 반대로), 보조데이터의 전송을 위해서 복수의 채널을 제공한다. 다른 실시예에 있어서, 직렬 비디오데이터의 두개의(또는 둘 이상의) 스트림이 전송되고(한개, 두개, 또는 두개 이상의 채널을 통해서) 한개, 두개, 또는 두개 이상의 직렬 보조데이터의 스트림이 또한 전송된다.
1999년 12월 7일 발급된 미국특허 5,999,571호는 코드워드(비디오데이터를 나타내는)가 TMDS링크상에서 전송될때 천이-최소화된 워드(코드워드 세트의 제1 서브세트), 동기화워드(천이-최소화된 워드와 구별되는)가 인코딩된 비디오데이터가 전송되지 않는 "프리앰블"기잔 동안에 링크상에서 전송될 수 있음을 알려준다.(특히 컬럼 5에서). 동기화워드는 코드워드의 세트의 제2 서브세트(제 1서브세트와 구분되는)의 구성원인 천이 최대화된 워드일 수 있다. 미국특허 5,999,571호는 여러(예를 들어 3)번의 반복적인 동기화워드가, 디코더(수신기내에서)가 신속하고 정확하게 동기화워드중 하나의 특정 천이(예를 들어 상승 에지)를 인식하고 따라서 인코더(송신기내에서)와 동기화를 달성할 수 있도록, 연속적으로 전송되어야 함을 알려준다.
2000년 11월 21일 발급된 미국특허 6,151,334호는, 각각 데이터를 나타내는 천이 최소화된 코드워드와 구별되는, 여러 다른 형태의 인코딩된 제어워드의 전송(TMDS링크 상에서)을 알려준다. 적어도 제어워드의 몇개는 천이 최대화된 워드이다. 제어워드 중 하나는 "데이터 스트림 분리" 워드로 데이터의 버스트의 앞과 뒤에 전송되어 버스트 동안에 전송되는 데이터의 종류와 버스트의 시작과 종료를 나타낸다. 다른 하나의 제어워드는 "등시성(isochronous) 데이터 변환(transfer)" 워드로, 대표적으로 블랭킹기간의 시작과 종료에서 전송되는 동기화 캐릭터로, 블랭킹기간(예를 들어 수직 또는 수평)의 종류와 블랭킹기간의 시작과 종료 사이의 구별을 나타낸다. 예를 들어, 제 1 등시성 데이터 변환 워드가 수직 블랭킹기간의 시작을 나타내고, 제 1 데이터 스트림 분리 워드가 수직 블랭킹기간에서의 데이터의 버스트의 시작을 나타내며, 제 2 데이터 스트림 분리 워드가 그러한 데이터 버스트의 종료를 나타내며, 제 2 등시성 데이터 변환 워드가 수직 블랭킹기간의 종료를 나타낸다. 각각의 제1 등시성 데이터 변환워드, 제1 데이터 스트림 분리워드, 제2 데이터 스트림 분리워드, 제2 등시성 데이터 변환워드는 천이 최대화된 코드워드이고, 천이 최소화된 코드워드가 데이터 버스트의 데이터의 각각의 워드(수직 블랭킹기간동안 전송되는)를 나타내는 것이 가능하고, 그리고 수직 블랭킹기간은, 제3 데이터 스트림 분리워드(비디오데이터 스트림의 시작을 나타내는)과 수반하는 비디오데이터 자체를 나타내는 천이최소화된 코드워드의 스트림으로 구성되는 액티브 비디오 기간이 뒤따를 수 있다.
(관련 출원에 대한 상호참조)
본 출원은 2001년 9월 12일에 출원되고, 본 출원의 양수인에게 양도된, 계류중인 미국 특허 출원 번호 09/954,663호의 일부계속출원이고, 또한 2001년 12월 24일에 출원되고, 본 출원의 양수인에게 양도된, 계류중인 미국 특허 출원 번호 10/036,234호의 일부계속출원이다.
본 발명은 인코딩된 데이터의 시리얼링크 상의 전송(예를 들어, 비디오데이터 및 오디오데이터 같은 보조(auxiliary)데이터 중 하나 또는 둘 다)에서, 전송도중에 심벌간의 간섭 또는 다른 에러를 유발하는 효과에 의해서 기인하는 비트 에러 레이트를 줄이기 위한 것에 관한 것이다. 어떤 실시예에서, 상기 시리얼링크는 TMDS(transition minimized differential signaling)링크이고, 또는 TMDS링크의 특성의 전부는 아니지만 일부의 특성을 지니는 링크이다.
도 1은 디지털 비주얼 인터페이스("DVI")링크를 포함하는 전형적인 시스템의 블록다이어그램이다.
도 2는 본 발명의 시스템의 제1 실시예를 나타내는 블록다이어그램이다.
도3은 블랭킹기간중 "보조프리앰블"과 "비디오프리앰블"부분에서 전송되는 데이터 패턴과, 본 발명의 바람직한 실시예에서, 그러한 보조프리앰블과 비디오프리앰블 부분 이후에 전송되는 발명의 보호대역 코드워드를 나타내는 테이블이다.
도4A와 4B는 본 발명의 바람직한 실시예에서 사용되는 17개의 발명의 코드워드(하나의 보호대역 워드를 포함)의 세트를 나타내는 테이블의 첫번째와 두번째 부분이다. 이 테이블은 또한 본 발명의 실시예와 부합되게 이러한 17개의 코드워드각각으로 매핑되는 다른 코드워드 역시 도시하고 있다. 도 4A와 도 4B는 함께 "도 4"로 서술된다.
도5는 본 발명의 시스템의 실시예에서 비디오 블랭킹기간동안에 송신기에 입력되는 신호와, 그러한 시스템에서 대응하여 인코딩되어 TMDS링크상에서 전송되는신호에 대한 타이밍 다이아그램이다.
도6은 본 발명의 시스템의 실시예에서 비디오 블랭킹기간의 비디오 프리앰블 부분 동안(그리고 다음의 액티브 비디오 기간 동안) 송신기에 입력되는 신호와, 그러한 시스템에서 대응하여 인코딩되어 TMDS링크상에서 전송되는 신호에 대한 타이밍 다이아그램이다.
도 7은 수신된 코드워드의 클러스터(예를 들어 클러스터 S1와 S1)를 개별적으로 전송된 코드워드(예를 들어 , 코드워드 "a"와 "b")로 본발명에 부합되게 매핑하는 것에 대한 다이아그램이다.
실시예들에 있어, 본 발명은 송신기와 수신기, 그리고 시리얼링크(TMDS또는 TMDS-유사한 링크일수 있지만 아닐 수도 있는)를 포함하는 것으로, 인코딩된 데이터(예를 들어, 인코딩된 비디오데이터와 선택적으로 역시 인코딩된 보조데이터)가 송신기에서 수신기로 전송된다. 시리얼링크는 TMDS 또는 TMDS-유사한 링크일수 있지만 아닐 수도 있다. 어떤 실시예에서, 인코딩된 비디오데이터와 인코딩된 보조데이터의 교차하는(alternating) 버스트가 링크상에서 하나 또는 그 이상의 채널을 통해서 전송된다. 인코딩된 비디오데이터의 버스트가 시리얼링크상에서 전송되는 다른 실시예에 있어서, 하나 또는 그 이상의 인코딩된 보조데이터의 버스트가(각각의 버스트는 서로 다른형태의 인코딩된 데이터로 구성된) 인코딩된 비디오데이터의 버스트 사이의 각각의 블랭킹기간에서 전송되거나, 또는 어떠한 인코딩된 보조데이터의 버스트도 전송되지 않는다. 본 발명의 다른 측면은 시리얼링크 상에서 전송하기 위해서 데이터를 인코딩하는데 사용되는 송신기와 그러한 인코딩된 데이터가 시리얼링크상에서 전송될 때 수신하고 디코딩하는데 사용하기 위한 수신기 및 시리얼링크 상에서 인코딩된 데이터를 보내는 방법에 대한 것이다.
본 발명에 부합되게, 전송되는 소스데이터는 전체 코드워드의 세트중 "로버스트(robust)서브세트를 이용하여 인코딩된다. 각각의 "로버스트"서브세트는 코드워드 세트(종종 본원에서 "골든(golden)세트"로 표시되는)를 구성하고, 각각의 골든세트는 하나 또는 그 이상의 코드워드(종종 본원에서 "골든워드" 또는 "바람직한 워드"로 표시되는)로 구성된다. 골든세트 각각의 골든워드는 단일 소스 데이터값(예를 들어, 소스 데이터 워드)을 나타낸다. 골든세트가 2개 또는 그 이상의 골든워드로 구성되어 있는 경우, 이러한 골든워드 각각은 동일한 소스 데이터 값을 나타낸다. 전체 세트의 코드워드의 디스조인트 클러스터(disjoint cluster)가 결정된다. 각각의 클러스터는 "골든세트"를 포함하고, 또한 선택적으로 전체세트중에서 하나 또는 그이상의 추가적인 코드워드를 포함하며, 이 경우 추가적인 코드워드 각각은 클러스터의 골든세트의 골든워드와, 추가적인 코드워드 각각이 그러한 골든워드의 전송 또는 전송 및 디코딩중에서의 발생가능한 비트 에러의 결과로서 생성되는 경향이 있다는 점에서, "유사하다". 클러스터 중 하나에서 수신된 코드워드 각각은 그 클러스터의 골든세트에서 결정되는 소스데이터 값으로 매핑된다. 클러스터의 수신된 코드워드를 단일 소스데이터 값으로 매핑하는 것 각각은, 클러스터에서 에러를 포함하는 워드를 그 에러를 포함하는 워드에 가장 적합하게 대응하는 소스데이터로 매핑함으로써, 에러 정정을 제공할 수 있다.
코드워드의 전체세트는 한 형태의 데이터(예를 들어, 비디오데이터)를 시리얼 링크의 채널상에서 전송하도록 인코딩하는데 사용될 수 있고, 로버스트 서브세트는 다른 형태의 데이터(예를 들어 오디오데이터나 다른 관련된 "보조"데이터 또는 비디오데이터와 함께 사용되는)를 동일한 채널상에서 전송하도록 인코딩하는데사용될 수 있다.
실시예들에 있어서, 각각의 골든세트에서 각각의 코드워드(그리고 전체세트에서의 각각의 코드워드)는 M-비트 워드가 인코딩된 버전인 N-비트 워드이고, M은 N보다 작은 정수이다. 시리얼링크상에서 N-비트 골든워드의 시퀀스가 전송된 후, 각각의 수신된 N-비트 코드워드는 골든워드중 하나와 다를수 있고(만약 전송에러가 발생한 경우), 또는 전송된 골든워드중 하나와 동일할 수 있다. 클러스터 중 하나에서 각각의 수신된 N-비트 코드워드는 디코딩된 M-비트 워드를 생성하기 위해서 디코딩되고, 그리고 그러한 각각의 디코딩된 M-비트 워드는 클러스터의 골든세트에 의해서 결정되는 소스데이터 값으로 매핑된다.
예를 들어, 실시예들에 있어서, 코드워드의 전체세트는 256개의 8-비트 소스워드를 나타내는 10-비트 TMDS-인코딩된 워드의 세트이다. 전체세트의 로버스트 서브세트는, 256개의 8-비트 소스워드의 전체세트의 서브세트를 나타내는 8-비트"골든워드"로 구성된다. 이러한 실시예들중 바람직한 실시예에 있어서, 로버스트 서브세트는 16개의 골든세트로 구성되고, 각각의 골든세트는 한 개의 8-비트 소스워드를 나타내는 10-비트 TMDS코드워드들로 구성되고, 그리고 각각의 10-비트 TMDS코드워드의 클러스터는 골든세트중 하나를 포함하고, 그리고 적어도 하나의 10-비트 TMDS 코드워드가 그러한 골든세트의 코드워드와 유사하다. 그러한 바람직한 실시예에 있어서, 클러스터중 하나에서 각각의 수신된 10-비트 코드워드는, TMDS디코딩 알고리즘에(또는 그러한 알고리즘의 수정된 버전에) 부합되게 8-비트 워드를 복원하기 위해서 디코딩되고, 각각의 복원된 8-비트 워드는 클러스터에 의해서 결정되는 8-비트 소스워드로 매핑된다. 다른 말로 하면, 각각의 클러스터는, (TMDS디코딩 알고리즘에 또는 그러한 알고리즘의 수정된 버전에 부합되게) Ni개의 8-비트 워드의 세트로 디코딩될 수 있는, 10-비트 TMDS코드워드, Sij(클러스터에 의해서 결정되는 8-비트 소스워드를 포함)의 세트고 여기서, 인덱스 "i"는 16개의 클러스터중 하나를 나타내고, 인덱스 "j"는 1 ≤j ≤Ni의 범위인 정수이고, 정수 Ni는 인덱스 "i"의 각기 다른 값들에 대해서 동일할 필요는 없다. 워드 S1j는 첫 번째 클러스터에서 인식되는 소스워드로 구성되고 다른 N1-1개의 8-비트 워드는 이 소스워드에 "유사"하며(즉 N1=1인 경우, 첫 번째 클러스터는 첫 번째 클러스터에서 결정되는 단일 소스워드 S1j로 구성되고,) 워드 S2j는 두 번째 클러스터에서 인식되는 소스워드로 구성되고 다른 N2-1개의 8-비트 워드는 이 소스워드에 "유사"하고, 나머지도 마찬가지이다.
대표적으로, 전체 세트에서의 코드워드는 동일한 길이를 가진다.(예를 들어 N 비트로 각각 구성된). "로버스트"서브세트는 종종 본원에서 코드워드의 "선택된"(또는 "발명의") 세트로 서술되고, 로버스트 서브세트에서의 코드워드는 종종 "발명의" 코드워드로(또는 "골든워드"로) 서술된다. 로버스트 서브세트는 시리얼링크상에서 전송되는 각각의 인코딩된 데이터(발명의 코드워드로만 구성된)가 전송 중에 심벌 사이의 간섭("ISI")에 대해서, 전형적으로 인코딩된 동일한 데이터(발명의 코드워드 뿐만아니라 발명의 코드워드가 아닌 다른 모든 세트의 구성원으로 구성된)의 전송에 의해서 결정된 비트패턴보다, 덜 민감한 비트 패턴을 가지도록 선택된다. 발명의 코드워드가 전체 코드워드 세트의 서브세트이고 각각의 발명의 코드워드가 하나의 소스 데이터 워드를 결정하기 때문에, 소스데이터가 링크 상에서 전송될 수 있는 비트 레이트는, 전송된 데이터가 발명의 코드워드만을 사용하여 인코딩된 경우 전송된 데이터가 모든 코드워드 세트를 사용하여 인코딩된 경우보다 낮아진다. 이것은, 일반적으로, 소스 데이터 비트의 세트가, 그 이상의 다른 L-비트 코드워드가 소스데이터의 인코딩을 위해서 사용가능한 경우, 보다 적은 수의 긴 길이의 소스 데이터워드(각각 다른 소스 데이터 워드가 다른 L-비트 코드워드로 인코딩되는)로 그룹화할 수 있기 때문이다.
일반적으로, 특정한 발명의 코드워드 세트를 전체 바이너리 코드워드세트에서 선택하는 최선의 선택은 전체 세트에 의해 구현되는 특정 코딩에 달려있다.(즉 전체 세트의 각각의 코드워드의 어떤 비트들이 0이고 어떤 비트들이 1인지 상세한 사항). 바람직한 실시예에 있어서, 발명의 코드워드는 그 직렬 패턴(전송도중에)이 인접하는 0과 1이 적어지도록(예를 들어 평균적으로) 미리 정해지 고, 따라서 전송도중의 ISI에 대해 전체 세트에서 선택되지 않은 코드워드(예를 들어 발명의 코드워드의 코드워드당 인접하는 0과 1의 평균수가, 전체 세트에서 발명의 코드워드로 선택되지 않은 코드워드의 코드워드당 인접하는 0과 1의 평균수토다 작도록)에 비해 덜 민감하도록 된다. 또한 발명의 코드워드의 비트가 시리얼링크 상에서 전압의 상승 또는 하강 천이의 시퀀스로 전송될 때, 각각의 발명의 코드워드의 전송된 스트림의 비트 패턴은 바람직하게는 DC발란싱(시간이 제한된 경우의전압드리프트(drift))을 구현한다.
대표적으로 전체 세트는 2N바이너리 코드워드(각각 L비트의 길이를 가지는)로 구성되고 따라서 N-비트 길이의 데이터 워드를 인코딩하여 전송하는데 효율적으로 사용될 수 있다. 또한 대표적으로 로버스트 서트세트는 이러한 2M코드워드(각각 L비트의 길이를 가지는)로 구성되며, M < N이고, 따라서 M-비트 길이의 데이터워드를 인코딩하여 전송하는데 효율적으로 사용될 수 있다. 이 경우, N-비트 소스 워드를 발명의 코드워드를 이용하여 인코딩하기 위해서, N-비트 소스 워드가 버퍼링되고 M-비트 포맷으로 묶여질 수 있다. 각각의 결과적인 M-비트 소스 워드는 곧 발명의 코드워드 중 하나를 사용하여 인코딩(L-비트 인코딩된 워드로)된다. 각각의 L-비트 인코딩된 워드(워드가 로버스트 서브세트의 구성원인지 관계없어)를 전송하고 디코딩하는데 동일한 시간이 요구된다고 가정하면, 소스워드가 전체 코드워드 세트를 사용하여 전형적으로 인코딩되었을 때 보다 소스 워드가 발명의 코드워드를 사용하여 인코딩되었을 때 더 적은 소스 데이터 비트가 단위시간동안 전송된다. 예를들어, 8-비트 소스데이터 워드를 인코딩하기 위해서, 전체 코드워드 세트는 전형적인 TMDS링크(각각의 그러한 코드워드는 256중 하나의 , 천이-최소화된, 9-비트 패턴으로, MS(most significant)비트가 패턴이 천이-최소화된 것을 나타내고, 8개의 LS(least significant)비트들이 DC발란싱 알고리즘에 따라서 반전되었는지 안되었는지 나타내는 10번째 비트가 연결된)에서 사용되는 10-비트 코드워드의 세트일 수 있다. 다른 실시예에 있어서, 로버스트 서트세트는 이러한 전체 세트중 선택된 16개의 10-비트 코드워드로 구성되고, 로버스트 서브세트의 각 코드워드의 9개의 LS비트들은 다른 256중 하나의, 천이-최소화된, 9-비트 패턴을 나타낸다. 따라서, 8-비트 소스 워드를 16개의 발명의 코드워드만을 사용하여 인코딩하기 위해서, 각각의 8-비트 소스워드는 두 개의 4-비트 부분으로 분리되고, 각각의 4-비트 부분은 개별적으로 발명의 10-비트 코드워드 중 하나로 인코딩된다. 따라서, 8-비트 소스 데이터가 전송(발명의 코드워드만을 사용하여 인코딩된 후)될 수 있는 레이트는 동일한 데이터가 전체 코드워드세트를 사용하여 전형적으로 인코딩 된 후 전송되는 경우보다 절반의 레이트밖에 되지 않는다. 그렇지만, 전형적으로 인코딩된 데이터는 발명의 코드워드만을 사용하여 인코딩된 후 전송되는 동일한 데이터보다 전송도중에 에러의 비율이 높은 경향이 있다.(예를 들어 ISI에 의한 에러)
일반적으로, 예시에 있어서 M ,N 의 비율을 작게하면(즉 로버스트 서브세트를 구성하는 2M코드워드에서) 본 발명에 대응해서 소스 데이터가 전송되는 레이트를 줄이는 희생을 통하여 더 적은 비트에러레이트(BER)가 얻어질 수 있다. 반대로, M ,N 의 비율을 크게 하면 높아지는 BER대신에 소스테이터 전송 레이트를 증가시킬 수 있다.
본 발명에 부합하는 데이터의 인코딩은 특히 인코딩된 데이터가 매우 긴 컨덕터 또는 전송도중의 ISI에 의한 에러가 높은 다른 환경하에서의 전송에 적용하는데 있어서 유리하다.
본 발명의 다른 실시예에서는, 인코딩된 데이터가 시리얼링크 상에서의 버스트에서 전송되고, 적어도 발명의 코드워드 중의 하나가, 인코딩된 데이터의 버스트의 시작 또는 종료(또는 시작과 종료 모두)에서(버스트의 상승 또는 하강 에지를 인식하기 위해서) 또는 특정 형태로 인코딩된 데이터의 각각의 버스트의 시작 또는 종료(또는 시작과 종료 모두)에서 전송되는, "보호대역(guard band)"워드로서 사용된다. 이러한 다른 실시예에서, 두 개의 다른 보호대역워드가 사용된다: 하나는 각각의 인코딩된 데이터 버스트의 시작에서의 전송을 위하여(버스트의 상승 에지를 인식하기 위해서), 다른 하나는 각각의 인코딩된 데이터 버스트의 종료에서의 전송을 위하여(버스트의 하강 에지를 인식하기 위해서)이다. 바람직한 실시예에 있어서, 적어도 2개의 다른 형태의 인코딩된 데이터(예를 들어 오디오데이터 또는 다는 보조데이터, 그리고 비디오데이터)의 버스트는 시리얼링크 상에서 전송되고 P개의(P는 2보다 크거나 같은) 다른 발명의 코드워드는 P개의 보호대역워드로 사용된다: 한 보호대역 워드는 제1형태의 인코딩된 데이터의 각각의 버스트의 시작에서의 전송을 위하여(그러한 버스트의 상승 에지를 인식하기 위해서), 다른 보호대역워드는 제2형태의 인코딩된 데이터의 각각의 버스트의 시작에서의 전송을 위하여(그러한 버스트의 상승 에지를 인식하기 위해서)이다. 예를 들어, 다른 실시예에 있어서, 인코딩된 비디오데이터의 버스트(각각은 제1보호대역워드로 인식되는)는 액티브 비디오 기간동안 전송되고, 그리고 보조데이터의 버스트(각각은 제2보호대역워드로 인식되는)는 액티브 비디오 기간 사이의 블랭킹기간동안에 전송된다.
본 발명을 구현한 시스템들에 있어서, 8-비트 비디오데이터 워드(각각 TMDS 인코딩 알고리즘에 따라서 10-비트 코드워드로 인코딩된)는 TMDS링크(또는 직렬 비디오 전송을 위해서 복수의 채널을 가지는 다른 TMDS-유사한 링크)를 통해서 제어신호(DE)가 하이인 액티브 비디오 기간동안 전송되고, 제어워드(각각 2비트로 표시되는 CTL0와 CTL1, 또는 CTL2와 CTL3)또는 동기화워드(각각 2비트로 표시되는 HSYNC와 VSYNC)는 액티브 비디오 기간 사이의 블랭킹기간(DE가 로우인 경우)동안 적어도 일부의 비디오 전송 채널을 통해서 각각 전송된다. 이 시스템은 각각의 전송된 비디오데이터 워드가 전형적으로 천이-최소화되고, 10-비트 TMDS 코드워드인 모드에서 동작할 수 있다. 각각의 그러한 천이-최소화된 코드워드는 256개 중 하나의 9-비트 패턴(MS비트가 패턴이 천이-최소화된 것을 나타내고, 9-비트 패턴의 8개의 LS비트들이 DC발란싱 알고리즘에 따라서 반전되었는지 안되었는지 나타내는 10번째 비트가 연결된)을 결정한다. 각각의 전송된 제어워드(CTL1:CTL0 또는 CTL3:CTL2)과 동기화워드(HSYNC:VSYNC)는 구별되는, 10-비트, 천이-최대화된 워드이다. 바람직한 실시예에서, 보조데이터의 4-비트 워드(본 발명에 부합되게 인코딩된)는 블랭킹기간중 제어워드나 동기화워드가 전송되지 않는 때 전송된다. 보조데이터는 대표적으로 오디오데이터가 가능하지만 꼭 오디오데이터일 필요는 없다. 다른 실시예에 있어서, 시스템은 비디오데이터의 4-비트 워드(본 발명에 부합되게 인코딩된)는 액티브 비디오 기간 동안 전송되도록 작동이 가능하다. 적어도 하나의 보호대역워드를 제공하기 위해서, 그리고 본 발명에 부합되게 보조데이터를 액티브 비디오 기간 사이에 전송하도록 인코딩하는데 사용하기 위해서, 17개의 다른 천이-최소화된 코드워드의 로버스트 서브세트가 전체 전형적인 TMDS코드공간에서 선택된다: 16개의 10-비트 코드워드(각각 다른 4-비트 보조데이터 워드, 그리고 그중 하나는 선택적으로 인코딩된 보조데이터의 버스트의 시작과 종료에 사용될 수 있다); 그리고 보호대역 워드로 사용되는 하나의 10-비트 코드워드(액티브 비디오 기간의 시작과 종료에). 대안적으로(alternatively), 18개의 다른, 천이-최소화된 코드워드의 로버스트 서브세트가 전체 전형적인 TMDS코드공간에서 선택된다: 16개의 10-비트 코드워드(각각 다른 4-비트 소스 워드); 그리고 2개의 10-비트 코드워드(각각 보호대역 워드로 사용되는).
본 발명의 다른 실시예에 있어서, 인코딩된 보조데이터의 버스트와 인코딩된 비디오데이터의 버스트가 시리얼링크 상에서 전송되고, 그리고 보조데이터는 본 발명에 부합되게 발명의 코드워드의 세트를 사용하여 인코딩된다. 발명의 코드워드의 세트는, 각각의 인코딩된 비디오데이터의 버스트의 시작과 종료에 전송되는"비디오" 보호대역워드, 각각의 인코딩된 보조데이터의 버스트의 시작과 종료에 전송되는"보조" 보호대역워드를 포함한다. 어떤 실시예에 있어서, 적어도 하나의 보호대역 워드가 또한 보조데이터를 인코딩하기 위한 제 2의 목적으로 사용된다. 그러한 실시예의 바람직한 구현은, 인코딩된 비디오데이터가 제어신호,DE가 하이(DE=1)인 액티브 비디오 기간동안에 전송되고, 인코딩된 제어(또는 동기화) 신호와 인코딩된 보조데이터가 액디브 비디오 기간 사이의 블랭킹기간동안(DE=0일 때)에 전송된다. 적어도 하나의 비디오 보호대역워드가 각각의 액티브 비디오 기간의 시작에서 전송된다. 각각의 블랭킹기간은 적어도 하나의 보조데이터 기간(각각 적어도 하나의 보조 보호대역워드가 인코딩된 보조데이터의 버스트에 선행하는)으로 구성되나, 또는 보조데이터기간이 없을 수도 있다. 적어도 하나의 보조데이터 기간을 포함하는 각각의 블랭킹기간은 DE의 하강 에지(블랭킹기간의 시작)와 제1(또는 유일한) 보조데이터 기간의 시작(그리고 선택적으로 블랭킹기간내의 각각의 다음의 보조데이터 기간전의 추가적인 보조프리앰블기간) 사이의 "보조프리앰블" 기간, 그리고 최종 보조데이터 기간과 다음 액티브 비디오 기간 사이의 "비디오프리앰블" 기간으로 구성된다. 특정 형태의 제어(또는 동기화) 신호는 각각의 보조프리앰블 기간 동안에 전송된다. 다른 특정 형태의 제어신호는 비디오프리앰블 기간내에서 전송된다.
송신기에서 수신기로 시리얼링크 상에서 데이터의 전송 도중에, 심벌-간 간섭("ISI")은 수신된 데이터가 송신된 데이터와 다르게 되는 에러의 발생을 높일 수 있다. 이러한 에러가 발생하는 비율은 채널 매질(medium)에 따른 요인과 그리고 데이터가 바이너리 비트의 패턴일 때 전송되는 특정패턴에 따라서 결정된다. 본 발명에 부합되게 비트 패턴으로 시리얼링크 상에서 전송되게 인코딩된 데이터는 링크 상에서의 전송 도중의 ISI에 대해, 동일한 데이터를 전형적으로 인코딩한 버전에 의해서 결정되는 비트패턴보다 , 덜 민감하다. 따라서, 본 발명에 부합되게 전송되는 데이터는, 동일한 데이터를 전형적으로 인코딩된 경우보다, 보다 신뢰성있고, 에러 비율이 줄어들게 된다. 보다 자세하게는, 데이터는, 본 발명과 부합되게, 코드워드의 전체 세트 중에서 서브세트("로버스트"서브세트)를 사용하여 인코딩된다.대표적으로, 전체 세트중에서 서트세트는 동일한 길이(예를 들어, 각각 N-비트로 구성된)를 가진다. 로버스트 서브세트는 종종 본원에서 "선택된" 또는 "발명의" 코드워드의 세트로 서술되며, 그리고 로버스트 서브세트에서의 코드워드는 종종 "발명의" 코드워드로 서술될 것이다. 로버스트 서브세트는, 시리얼링크상에서 전송되는 각각의 인코딩된 데이터(발명의 코드워드 세트의 구성원만을 사용하여 코딩된)가 전송 중에 ISI에 대해서, 전형적으로 인코딩된 동일한 데이터(발명의 코드워드 세트 뿐만아니라 발명의 코드워드세트가 아닌 다른 전체 세트의 구성원으로 구성된 코드워드를 사용하여 코딩된)의 전송에 의해서 결정된 패턴보다, 덜 민감한 비트 패턴을 가지도록 선택된다. 발명의 코드워드보다 전체 세트의 코드워드가 더 많기 때문에, 만약 전송된 데이터가 발명의 코드워드만을 사용하여 인코딩된 경우이면 전송된 데이터가 코드워드의 전체세트를 사용하여 전형적으로 인코딩 된 경우보다, 더 적은 데이터의 워드가 링크상에서 단위시간당 전송될 수 있다.
본 발명에 부합하는 데이터의 인코딩은 특히 인코딩된 데이터가 매우 긴 컨덕터 또는 전송도중의 ISI에 의한 에러가 높은 다른 환경하에서의 전송에 적용하는데 있어서 유리하다.
본원에서 사용된 "송신기"라는 용어는 데이터를 인코딩하고 인코딩된 데이터를 시리얼링크 상에서 전송하는(그리고 또한 선택적으로 전송될 데이터를 암호화하는) 어떠한 유니트를 나타내는 광범위한 의미로 사용되었으며, 또한 본원에서 사용된 "수신기"라는 용어는 시리얼링크상에서 전송된 데이터를 수신하고 디코딩하는(그리고 또한 선택적으로 수신된 데이터를 복호화하는) 어떠한 유니트를 나타내는광범위한 의미로 사용되었다. 예를 들어, 송신기라는 용어는 수신기로서의 기능과 송신기로서의 기능을 모두 수행하는 송수신기를 나타낼 수도 있다. 좀더 상세한 예로, 송신기라는 용어(TMDS-유사한 링코 또는 다른 시리얼링크상에서 비-오디오 보조데이터전송하는 유니트와 관련하여) 링크 상에서 비디오데이터와 오디오데이터를 수신하고 링크상에서 비-오디오 보조데이터를 송신하도록 구성된 어떠한 유니트를 나타낼 수 도 있다.
위에서 서술하였듯이, 데이터의 "스트림"이라는 용어(본원에서 사용된)는 모든 데이터가 동일한 형태이고 동일한 클럭 주파수로 전송되는 것을 나타낸다. "채널"이라는 용어(본원에서 사용된)는 데이터를 전송하기 위해서 사용된 시리얼링크의 일부를 나타내고(예를 들어 데이터가 전송될 송신기와 수신기 사이의 특정한 컨덕터 또는 컨덕터 페어, 그리고 송신기 및/또는 수신기안에서 데이터의 전송 및/또는 복원에 사용되는 특정회로), 또한 그러한 링크상에서 데이터를 전송하기 위해서 사용된 기술을 나타낸다.
오디오(또는 다른 보조)데이터를 시리얼링크를 통해서 전송하는 경우, 종종 보제데이터의 복수의 스트림을 전송하는 것이 요구되고, 종종 보조데이터의 전송에 있어서 링크의 복수의 채널을 사용하는 것이 유익할 수 있다. 예를 들어, 2개의 오디오스트림(스테레오 오디오의 좌우 스트림), 6개의 스트림(예를 들어 "5.1"서라운드 사운드의 경우), 또는 8개의 스트림(예를 들어 "7.1"서라운드 사운드의 경우)까지 일 수도 있다. 대안적으로, 비디오데이터와 함께 그 이상의 오디오데이터 스트림을 전송하거나, 또는 비-오디오 보조데이터의 스트림(비디오와 동기화되는 비-오디오 효과를 제공하기 위해서)을 전송하는 것이 바람직할 수도 있다. 보조데이터의 그러한 모든 스트림은 대표적으로 동일한 시간기준(time base)에 있으며, 그러나 선택적으로 다른 시간 기준을 기반으로 하는 다른 오디오(또는 보조)데이터가 필요할 수도 있다. 예를 들어, 6개의 PCM(pulse code modulated) 오디오데이터의 스트림의 링크상에서 전송은 하나의 클럭을 기반으로 할 수 있다. 다른 2개의 압축된 오디오데이터의 스트림, 가능하게는 다운-믹스(스피커의 수가 줄어든 경우의 플레이백)의 경우, 비디오데이터와 PCM데이터와 같이 전송될 수도 있다.
고속 시리얼 디지털 데이터 전송에서, 데이터는 종종 천이점(number of transitions)의 수가 최대화 또는 최소화되도록, 또한 DC 레벨을 발란스(balance)하도록 인코딩될수 있다. 예를 들어, 적어도 하나의 위에서 기술된 천이-최소화되고, DC-발란스된 TMDS 링크를 포함하는 시스템에 있어서, TMDS인코딩된 비디오데이터는 적어도 하나의 TMDS 링크의 3개 채널 각각을 통해서 전송되고, 그리고 인코딩된 보조데이터(예를 들어 오디오데이터)는 하나 또는 그 이상의 이러한 3개 채널을 통해서 액티브 비디오 기간 사이의 블랭킹기간에 전송이 될 수 있다. 보조데이터에 대한 대역폭 요구조건이 주요데이터(비디오데이터)의 대역폭보다 작고 보조데이터 채널이 상당한 ISI(케이블이 긴 경우 발생하는)를 가지는 경우, 그러면 보조데이터는 바람직하게는 발명의 인코딩 구조(scheme)을 사용하여 전송도중의 비트 에러 레이트가 적어지도록 인코딩 된다.
바람직한 실시예들에서, 보조데이터는 본 발명에 부합하게(TMDS링크 상에서의 전송을 위해) 일반적으로 링크상에서의 전송을 위해서 비디오데이터를 인코딩하는데 사용되는 천이최소화된 TMDS 코드워드의 서브세트를 사용하여 인코딩된다. 이러한 그리고/또는 다른 본 발명의 실시예는, 도 2를 참조하여 서술된 시스템의 형태로 구현될 수있다. 도 2의 시스템은 도 1의 시스템과 동일하지만, 보조데이터(또는 다른 보조데이터)를 본 발명과 부합되게(그리고 인코딩하기 위해서 구성된 점에서 다르다.), 채널 0, 채널1, 채널 2 중 하나 또는 그 이상의 채널을 통해서 인코딩된 데이터를 전송하고(그리고 또한 그러한 채널 각각을 통해서 인코딩된 비디오데이터를 전송하기 위해서), 그리고 인코딩된 보조데이터를 디코딩한다.(또한 인코딩된 비디오데이터 역시). 도 2의 송신기(1')와 수신기(2')는 각각 도 1의 송신기(1)와 수신기(2)에 대응한다.(그렇지만 도 1의 송신기(1)과 수신기(2)에서 수행되지 않는 보조데이터의 인코딩, 전송, 그리고 디코딩 기능을 수행한다). 도2에서 송신기(1')와 수신기(2')사이의 TMDS 링크는, 비록 도1에서 도시된 컨덕터의 일부가 도2에서 도시되지 않았지만(간결함을 위해서), 도1에서의 송신기(1)와 수신기(2)사이의 TMDS링크와 동일하다.
도2의 시스템은 바람직하게는 TMDS링크의 컨덕터 페어(도 2에서 "채널 C"로 표시된) 상에서 비디오 클럭을 전송하고, 또한 링크의 적어도 하나의 채널에서 보조데이터를 송신한다. 예를 들어 송신기(1')는 채널 0, 1, 그리고 2(도 1의 시스템의 동일하게 표시된 채널과 같은)상에서 수신기(2')로 비록 비디오 블랭킹기간동안이지만 비디오데이터를 전송하고, 오디오데이터의 두 개의 스트림(예를 들어 스테레오 신호의 좌우신호)를 비디오 블랭킹기간동안 채널 0, 1, 그리고 2의 어느 두 개의 채널상에서 전송하고, 연속적으로 비디오 클럭(예를들어, 바이너리 파형의 상승 에지에서 결정되는)을 채널 C상에서 전송하고, 그리고 오디오데이터의 각각의 버스트와 함께 시간 스탬프(time stamp)데이터를 전송한다. 시간 스탬프 데이터는, 위에 인용한 2001년 9월 12일 출원된 미국특허 출원 번호 09/954,663호에서 서술되었듯이, 오디오데이터를 위한 클럭을 결정한다. 수신기(2')는 오디오데이터를 전송하기 위해서 사용된 오디오 클럭을 복원하기 위해서 시간 스탬프를 처리하도록 구성되었다.
대표적으로 오디오데이터의 스트림을 위한 클럭은 비디오 스트림을 위한 픽셀 클럭보다 매우 낮은 주파수를 가진다. 그렇지만, 오디오클럭의 대부분의 응용에서 지터(jitter)를 줄이기 위해 픽셀 클럭보다 좀더 정확하게 되는 것이 필요하다. 이것은 아날로그 오디오에서의 왜곡(distort)(지터를 가지는 디지털 오디오데이터에서 생성되는)이, 동일한 양의 지터를 가지는 디지털 비디오에서 발생되는 디스플레이된 비디오 프로그램에서의 왜곡보다, 좀더 쉽게 식별되기 때문이다.
도 2의 시스템에서, 비디오데이터의 8-비트 소스워드는 10-비트 코드워드로 인코딩되고, 그후 직렬화되어 채널 매질(채널 0,1그리고 2로 표시되는 컨덕터 페어중 하나)을 통해서 전송된다. 수신기(2')에서 각각의 10-비트 코드워드는, 만약 에러가 존재하지 않으면, 원래의 8-비트 워드로 다시 디코딩된다. 각각의 코드워드는 9-비트 기반 패턴으로 구성된다.(29개의 9-비트 기반 패턴의 세트 중에서 천이-최소화된 구성원으로, MS비트가 기반패턴이 천이-최소화되고, 8개의 LS비트들이 DC발란싱 알고리즘과 부합되게 반전되었는지의 여부를 나타내는 10번째 비트를 가진다).송신기(1')에서 각각의 8-비트 소스워드는 우선 9-비트 기반 패턴중 하나로 인코딩되고, 그리고 9-비트 기반패턴의 스트림이 10-비트 코드워드의 스트림으로 인코딩된다.(10-비트 코드워드의 전송되는 스트림이 향상된 DC발란싱이 얻어지도록). 그렇지만, 디코딩된 비디오데이터는, 특정 채널 물질과 전송된 직렬 비트 스트림의 특정데이터 패턴에 따라서, 에러를 포함할 수 있다.(특히 대응 채널이 현저한 ISI가 존재할 때)
만약 송신기(1')와 수신기(2')가 보조데이터를, 비디오데이터를 인코딩하고 디코딩하는 것과 마찬가지방법으로, 인코딩하고 디코딩하도록 동작된다면, 그리고 시리얼링크의 동일한 채널상에서 두가지 형태로 인코딩된 데이터를 전달한다면, 디코딩된 보조데이터는 동일한 에러비율로 에러가 발생할 것이다. 이러한 에러 비율은, 비록 비디오데이터인 경우에 대해서는 용인이 가능하더라도, 보조데이터에 대해서 용인할 수 없을 정도로 높을 수 있다.(특히 보조데이터가 오디오데이터일 경우). 보조데이터에서의 에러 비율을 줄이기 위해서, 송신기(1')는 본 발명에 부합되게 보조데이터를 인코딩하도록 구성될 수 있다. 선택적으로, 송신기(1')는 본발명에 부합되게 비디오데이터를 인코딩하도록 구성될 수도 있다.(또는 본 발명에 부합되게 비디오데이터와 보조데이터 모두를 인코항하는 모드로서 동작이 가능하도록 구성될 수 있다.). 그렇지만, 본 발명에 부합되게 인코딩된 데이터(코드워드 "전체 세트"중에서 로버스트 서브세트를 이용하여)는, 동일한 데이터를 전형적인 방법(코드워드의 "전체세트"를 사용하고, 인코딩된 비트 모두가 동일한 클럭 주파수로 전송되는 것을 가정하는 경우)으로 인코딩된 경우보다 더 낮은 데이터 전송 레이트를가진다. 많은 적용에 있어서, 비디오데이터는 본 발명에 부합되게 인코딩 된 경우 실질적으로 적절한 레이트로 전송이 될 수 없다. 따라서, 도 2에서의 시스템의 대표적인 구현은 보조데이터(그러나 비디오데이터가 아닌)를 본 발명에 부합되게 인코딩할 것이다.
실시예들에 있어서, 송신기(1')은 보조데이터를 아래와 같이 본 발명에 부합되게 인코딩하도록 구성된다. 각각의 전송되어진 인코딩된 보조데이터의 10-비트 워드 스트림(발명의 코드워드로만 구성된)이 심벌 사이의 간섭에 대해서, 동일한 데이터를 TMDS인코딩한 버전의 전송된 스트림(발명의 코드워드뿐만이 아니라 발명의 코드워드가 아닌 전체세트의 구성원을 포함한)에서 결정되는 패턴보다, 덜 민감하도록 된 패턴을 가지도록, 10-비트 TMDS코드워드의 전체세트의 서브세트가 "발명의" 코드워드로서 선택된다.
어떤 실시예에 있어서, 10-비트 TMDS코드워드의 전체세트중 2M-비트(M < 8) 서브세트가 발명의 코드워드 세트로 되도록 선택이 된다. 선택적으로, 발명의 코드워드 세트는 또한 전체세트의 하나 또는 그이상의 코드워드를 보호대역 워드로 포함할 수 있다. 도 2와 도 3을 참조하여 아래에 서술된 17개의 발명의 코드워드(각각 10비트로 구성된)는 그러한 2M-비트 서브세트(M=4인 경우)에 추가적인 하나의 보호대역 워드가 보충된 예이다. 수신기(2')는 각각의 수신된 하나의 발명의 10-비트 코드워드를 하나의 M 비트 길이를 가지는 보조데이터 워드로 디코딩하기 위해서 구현된 것이다. 수신기(2')는 액티브 비디오 기간동안 수신되어진 전형적으로 인코딩된 비디오 워드에서 실행하는 것과 같이, 동일한 디코딩 동작을 블랭킹기간중에 수신되어진 인코딩된 보조데이터에 대해서 수행한다. 그렇지만, 소스 보조데이터의 인코딩(발명의 코드워드를 사용한) 도중에, 송신기(1')는, 전형적인 소스 비디오데이터의 인코딩에서 수행하는(즉 N개의 이전의 인코딩된 비디오 워드의 누적되는 DC드리프트가 미리 정해진 한계에 도달했을때, "N+1"번째의 인코딩된 비디오 워드의 8개의 LS비트가 반전되고, 결과적인 9개비트에 구별되는 10번째의 MS비트가 연결되며, 그리고 그렇지않으면 "N+1"번째의 인코딩된 비디오 워드의 8개의 LS비트를 반전시키지 않고, 대신 워드에 구별되는 다른 10번째 MS비트를 연결시키는) 전형적인 DC발란싱 단계를 수행하지 않는다. 대신에, 송신기(1')은 단순히 각각의 보조데이터의 4-비트 소스 워드를, 발명의 코드워드의 결과적인 스트림에서 누적되는 DC드리프트에 관계없이(그리고 발명의 코드워드의 MSB가 0인지 1인지 관계없이), 본 발명에 따른 발명의 코드워드의 하나로 대치한다. 발명의 코드워드는 바람직하게는, 발명의 코드워드의 스트림의 비트들이 전압의 상승 및 하강 천이의 시퀀스에 의해 시리얼링크상에서 전송되고, 발명의 코드워드의 그러한 스트림의 비트패턴이 시간상에서 결정되는 전압 드리프트가 용인가능한 양으로 한정된다는 점에서 DC 발란스된(또는 DC 발란스된 것과 유사한)것으로, 선택되어진다.
다른 실시예에 있어서, 송신기(1')는 소스 보조 데이터의 인코딩(발명의 코드워드를 사용하여)도중에 그리고 전형적인 소스비디오데이터의 인코딩 도중에, 동일한 DC 발란스 단계를 수행한다. 이것은 발명의 코드워드의 선택에 있어서 고려된다. 상세하게는, 각각의 발명의 코드워드 세트의 코드워드는, 10-비트 TMDS 코드워드의 전체 세트의 선택된 서브세트의 구성원인, 9-비트 기반 패턴을 가지고, 그리고 소스 보조데이터의 4-비트 워드의 인코딩 도중에(발명의 10-비트 코드워드로 대체하기 위해서), 9-비트 기반 패턴의 8개의 LS비트들은, 이전에 인코딩된 보조 워드의 스트림의 DC드리프트가 미리 정해진 한계에 도달되는지에 따라, 반전되어 결과적인 패턴이 10번째(그리고 MS인)비트가 제 1값을 가지게 연결되던지, 아니면 기반 패턴이 반전되지 않고 대신에 10번째(또한 MS인)비트가 제 2값을 가지게 연결된다. 이러한 실시예에 있어서, 수신기(2')는 블랭킹기간동안에 수신된 인코딩된 보조데이터 워드에 대해서, 액티브 비디오 기간동안에 수신된 전형적으로 인코딩된 비디오데이터 워드에 대해서 수행하는 것과 동일한 디코딩 동작을 수행하고, 그리고 각각의 8-비트 워드(10-비트 인코딩된 보조데이터 워드의 하나의 전형적인 디코딩의 결과로 생성되는)를 각각 M-비트길이를 가지는 2M보조데이터 워드의 하나로 매핑하도록 구현된다.
도 2의 시스템의 서술된 실시예에서, 보조데이터 인코딩 공간(space)의 크기(발명의 코드워드 세트로 인코딩 될 수 있는 다른 보조데이터 워드의 개수)는 28(= 256)에서 2M(M<8)로 본 발명에 부합되게 줄어들고, 그리고 따라서 보조데이터(본 발명에 부합되게 인코딩된)가 전송될 수 있는 효율적인 비율은 클럭주기 및 채널 당 8 비트에서 클럭 주기 및 채널 당 M 비트로 줄어들게 된다. M값을 줄임으로써(즉, 전체 세트에서 더 작은 발명의 코드워드의 세트로 선택한 경우), 더 작은 비트-에러 레이트(BER)가 얻어지지만 데이터 레이트 역시 줄어든다. 반대로, M의값을 크게 하면 데이터 레이트는 증가하지만, BER이 증가되는 단점이 있다.
도3과 도 4를 참조하여 발명의 코드워드 세트의 실시예를 서술한다. 이 코드워드 세트는 전형적인 TMDS 10-비트 코드워드의 전체 세트의 서브세트이고, 보조데이터를 비디오데이터의 데이터 레이트의 반값으로 전송하는 것이 적합한 경우, 8-비트 비디오워드(TMDS 10-비트 코드워드의 전체세트를 사용하여 전형적으로 인코딩된)가 역시 전송되는 TMDS(또는 TMDS-유사한) 링크상에서 보조데이터의 4-비트워드를 전송하도록 인코딩하는 데 유용하다. 대표적으로, 바이너리 보조데이터의 8-비트 입력 워드는 버퍼링되고, 각각의 4개의 LS비트들이 도 4의 좌측 칼럼에서("입력 D7-D0"로 표시된) "AD0-AD15"의 16개의 8-비트 워드 중 하나로 인코딩되고(예를 들어 도 2의 송신기(1')에서), 그리고 각각의 8-비트 입력워드의 각각의 4개의 MS비트들이 "AD0-AD15"의 16개의 8-비트 워드 중 적절한 것으로 인코딩된다. AD0-AD15 각각의 워드는 도 4의 왼쪽에서 2번째 칼럼에서 도시되듯이 16진수 표현으로 되어있다. AD0-AD15 워드 각각은 곧 도 4의 우측 칼럼에서 표시되듯이 10-비트 패턴중 상응하는 하나로 인코딩된다(예를 들어 송신기(1')에서). 도 4 아래의 다른 칼럼에 대해서, 코드워드 클러스터의 매핑에 대한 본 발명의 측면을 기준으로 서술할 것이다.
도 4(그리고 도 3)에서, 각각의 코드워드의 왼쪽 비트는 LSB이고, 그리고 (각각 10-비트 코드워드인 경우) 시리얼링크상에서 전송되는 첫 번째 비트이다. 또한 각각의 코드워드의 오른쪽 비트는 MSB이고(각각 10-비트 코드워드인 경우) 시리얼링크상에서 전송되는 마지막 비트이다.
예를 들어, 입력 보조데이터 워드 10000000(LSB가 1)는 두 개의 값으로 분리되고(1000과 0000) 그리고 2개의 값은 각각 AD1과 AD1로 인코딩된다. 그리고 8-비트 워드 AD0는 10-비트의 발명의 워드"0011100101"로 인코딩되고 8-비트 워드 AD1은 10-비트의 발명의 워드"0110001101"로 인코딩된다. 두 개의 발명의 워드는 곧 직렬화되고 시리얼링크상에서 순차적으로, 입력워드입력워드의 "MS"반쪽부분(0000)을 나타내는 "0011100101"비트가 입력워드의 LS반쪽부분(1000)을 나타내는 "0110001101"보다 먼저 전송되고, 전송된다. 수신기에서, 각각의 10-비트 발명의 워드는 8-비드 워드 AD0-AD15중 하나로 디코딩되고, 원래의 8-비트 입력 보조데이터 워드는, 각각의 워드 AD0-AD15와 각각의 8-비트 입력 보조데이터 워드의 각각의 반쪽부분(4-비트)이 일대일로 매핑되므로 ,AD0-AD15의 복원된 워드에서 재구성될 수 있다.
물론, 송신기(예를 들어 송신기(1'))에 인가되는 입력 보조데이터가 4-비트 워드일 수 있고, 이러한 경우 송신기는, 워드 AD0-AD15의 시퀀스로 인코딩 하기 전에, 입력된 보조데이터 워드를 4-비트 포맷으로 분리할 필요는 없다. 대신에, 입력 보조데이터는 8-비트 워드 AD0-AD15의 시퀀스로 프리-인코딩될 수 있고, 그리고 프리-인코딩된 보조데이터는 이제 8-비트 워드 AD0-AD15의 시퀀스의 형태로 송신기에 제공된다.
대표적으로, 인코딩된 보조데이터는 비디오데이터가 전송되는 TMDS링크의 동일한 채널(CH0, CH1 및 CH2)로 전송되지만, 그러나 보조데이터는, 비디오데이터를 전송하는 액티브 비디오 기간(DE=1인 경우)사이의 블랭킹기간(DE=0인 경우)동안에전송된다. 도 5와 도 6은 그러한 발명의 실시예동안에서 전송되는 신호의 타이밍 다이아그램이다. 도 5의 윗부분의 9개 신호는 블랭킹기간동안에 송신기에 입력되는 신호를 나타내고, 도 5의 아랫부분의 3개의 신호는, 윗부분의 9개신호에 대응하여 블랭킹기간동안에 채널 CH0, CH1 및 CH2상에서 전송되는 보조데이터(도 4의 10-비트 워드를 사용하여 인코딩된)와 인코딩된 제어 및 동기화 신호(아래에 서술되는)를 나타낸다. 마찬가지로, 도 6에서 윗부분의 9개 신호는 블랭킹기간(도 6의)의 종료에서 송신기에 입력되는 신호를 나타내고, 도 6의 아랫부분의 3개의 신호는, 윗부분의 9개신호에 대응하여 채널 CH0, CH1 및 CH2상에서 전송되는 보조데이터(도 4의 10-비트 워드를 사용하여 인코딩된), 비디오데이터(전형적으로 인코딩된), 및 인코딩된 제어 및 동기화 신호(아래에 서술되는)를 나타낸다.
도 5와 도 6에서 :
입력 데이터의 24-비트 워드는 인코딩을 위해서 송신기의 인코딩 회로에 제공된다. 도 5는 그러한 워드(각각 도 5에서 D[23:0]으로 표시된)가 보조데이터의 워드인 것과 관련되어 있다. 도 6은 그러한 워드(각각 도 6에서 D[23:0]으로 표시된)가 비디오데이터의 워드인 것과 관련되어 있다. 각각의 입력 워드의 8개의 비트(D[23:16])들은 인코딩되고, 직렬화되어, 채널 CH2 상에서 전송되고(10-비트 인코딩된 워드 CH2[0:9]로), 그러한 워드의 다른 8개 비트(D[15:8])은 인코딩되고, 직렬화되어, 채널 CH1 상에서 전송되고(10-비트 인코딩된 워드 CH1[0:9]로), 그러한 워드의 나머지 8개 비트(D[7:0])은 인코딩되고, 직렬화되어, 채널 CH0 상에서 전송된다.(10-비트 인코딩된 워드 CH0[0:9]로). 어떤 구현예에서, 비디오데이터는RGB 포맷으로 되어있다(그리고 R, G 및 B픽셀이 CH2, CH1 그리고 CH0상에서 각각 전송된다). 이러한 관점에서, 채널 CH2, CH1 및 CH0는 종종 본원에서(예를 들어 도 3)에서 적색(또는 "R") 채널, 녹색(또는 "G")채널, 그리고 청색(또는 "B")채널로 각각 표시된다. 선택적으로 인코딩된(그리고 전송되는) 비디오데이터는 휘도-색(luminance-chrominance) 포맷이다;
파형 "DCK"는 데이터 클럭을 나타낸다. 각각의 데이터 클럭 사이클 동안에, 보조데이터(또는 보호대역워드)를 나타내는 발명의 코드워드 각각의 하나의 10비트 또는 비디오데이터를 나타내는 전형적인 TMDS 10비트 코드워드 각각이 순차적으로 CH0, CH1 및 CH2중 관련된 채널상에서 전송된다. 어떤 실제 구현에 있어서, 위상천이(phase shifting)회로가 클럭 DCK의 복수의, 위상-천이된 버전의 클럭을 생성하도록 사용될 수 있고, 또한 이러한 클럭들이(DCK 클럭 자체와 함께) 인코딩, 전송 및 디코딩을 위한 클럭으로 사용될 수 있다. 또 다른 실제 구현예에 있어서, DCK의 주파수의 10배의 주파수를 가지는 클럭(그러나 DCK와 동일한 위상의)이 인코딩, 전송 및 디코딩을 위한 클럭으로 사용될 수 있고, 그리고 하나의 코드비트가 이러한 더 빠른 클럭의 각각의 사이클동안 전송될 수 있다;
파형 "DE"(도 6의)는 비디오데이터 인에이블 신호이고, 파형 "AUX DE"(도 5의)는 보조데이터 인에이블 신호이다. DE=1이고 AUX DE = 0인 경우, 비디오데이터(도 6에서 D[23:16]과 D[15:8]및 D[7:0]로 표시된)는 인코딩되고, 인코딩된 비디오데이터의 직렬화된 10-비트 워드는 CH0, CH1 및 CH2 채널상에서 전송된다. DE=0이고 AUX DE =1인 경우, 보조데이터(도 5에서 D[23:16], D[15:8] 및 D[7:0]으로 표시된)는 인코딩되고, 인코딩된 보조데이터의 직렬화된 10-비트 워드는 CH0, CH1 및 CH2 채널상에서 전송된다. DE=0이고 AUX DE =0인 경우, 송신기는 그 데이터 입력에 인가되는 신호를 무시하고 대신에 그 제어 입력에 인가되는 제어비트페어(도 5와 도 6에서 "CTL[3:2]"로 표시된 CTL3와 CTL2 비트들과, 도 5와 도 6에서 "CTL[1:0]"로 표시된 CTL1와 CTL0 비트들)를 인코딩하고(10-비트 TMDS 코드워드로), 이러한 코드를 직렬화하여, 직렬화된 코드워드를 CH1 및 CH2 채널상에서 전송하고, 또한 그 동기화 입력에 인가되는 동기화비트페어(HSYNC와 VSYNC)를 인코딩하고(10-비트 천이-최대화된 워드로), 이러한 코드를 직렬화하여, 직렬화된 코드워드를 CH0 채널상에서 전송한다.
좀더 상세하게는, 각각의 블랭킹기간(각 기간에서 DE=0)은 적어도 3개의 부분-초기 부분("보조프리앰블")과 이러지는 보조데이터 부분, 및 이어지는 최종 부분("비디오프리앰블")-을 가진다. 선택적으로, 두 개 또는 그이상의 보조데이터 기간이 블랭킹기간내에 존재할 수 있으며(각각 적어도 하나의 보조 보호대역워드와 이어지는 인코딩된 보조데이터의 각각 다른 채널의 버스트), DE의 하강에지(블랭킹기간의 시작에서)와 제1 보조데이터 부분의 시작 사이의 초기 보조프리앰블, 블랭킹기간내에서 각각의 이어지는 보조데이터 기간 전의 추가적인 보조프리앰블, 마지막 보조데이터 기간과 그 다음 액티브 비디오 기간 사이의 비디오프리앰블이 있을 수 있다. 각각의 블랭킹기간의 초기 보조프리앰블 동안에, 제어비트 CTL3, CTL2, CTL1 및 CTL0의 특정패턴을 나타내는 코드워드의 반복과, 동기화비트 HSYNC 및 VSYNC의 어떤 패턴을 나타내는 코드워드의 반복과, 그리고 선택적으로 역시 초기비트패턴(예를 들어 도 5의 CH2 및 CH1 채널의 초기 보조프리앰블의 시작부분에서 "Rsvd"로 표시된 시간간격에서의 패턴)이 전송된다. 각각의 블랭킹기간의 비디오프리앰블 동안에, 다른 제어비트 CTL3, CTL2, CTL1 및 CTL0의 특정패턴을 나타내는 코드워드의 반복과, 동기화비트 HSYNC 및 VSYNC의 어떤 패턴을 나타내는 코드워드의 반복과, 그리고 선택적으로 역시 초기 비트패턴(예를 들어 도 6의 CH2 및 CH1 채널의 비디오프리앰블의 시작부분에서 "Rsvd"로 표시된 시간간격에서의 패턴)이 전송된다. 적어도 블랭킹기간 일부의 부분에서의 보조데이터 부분에서, 발명의 코드워드(인코딩된 보조데이터를 나타내는)와 보호대역워드가 전송된다.
좀더 상세하게는, 다음과 같은 신호가 비디오프리앰블(도 3 및 도 6에서 표시되듯이)동안에 전송된다. : CTL3=0, CTL2=0을 나타내는 코드워드 "0010101011" 의 반복이 CH2상에서 전송되고(바람직하게는 "Rsvd"기간에서 초기 비트패턴 다음에), CTL1=0, CTL0=0을 나타내는 코드워드 "0010101011" 의 반복이 CH1상에서 전송되고(바람직하게는 "Rsvd"기간에서 초기 비트패턴 다음에), 그리고 동기화 비트 HSYNC와 VSYNC의 4가지 가능한 조합중 하나를 나타내는 코드워드의 반복이 CH0상에서 전송된다. 대표적인 동작에서, 비디오프리앰블의 최종 12 픽셀 클럭 사이클동안에(도 6에 도시되듯이 DE의 0에서 1로의 천이 직후에), 동기화 비트 HSYNC와 VSYNC모두가 0의 값을 가지고, 따라서, HSYNC=0 및 VSNCY=0을 나타대는 코드워드(즉 도 6의 아랫부분에서 "0010101011"로 표시된 코드워드)가 채널 CH0상에서 전송된다.
다음과 같은 신호가 초기 보조프리앰블(도 3 및 도 5에서 표시되듯이)동안에 전송된다. : CTL3=0, CTL2=1을 나타내는 코드워드 "1101010100"의 반복이 CH2상에서 전송되고(바람직하게는 "Rsvd"기간에서 초기 비트패턴 다음에), CTL1=1, CTL0=0을 나타내는 코드워드 "0010101010" 의 반복이 CH1상에서 전송되고(바람직하게는 "Rsvd"기간에서 초기 비트패턴 다음에), 그리고 동기화 비트 HSYNC와 VSYNC의 4가지 가능한 조합중 하나를 나타내는 코드워드의 반복이 CH0상에서 전송된다. 대표적으로 초기 보조프리앰블의 "VSYNC" 기간동안에(도 3에서 VSYNC 윈도우), CTL3, CTL2, CTL1, CTL0, VSYNC, 및 HSYNC의 특정한 값의 코드워드들(도 3에서 도시된)이 CH2, CH1 및 CH0 채널 상에서 전송된다.
보조데이터의 두 개 또는 그 이상의 형태가가 동일한 채널(예를 들어 CH0 또는 CH2)상에서 전송되는 경우, 분리된 보조데이터 인에이블 신호(예를 들어, "AUX1 DE"신호를 제1 형태의 보조데이터를 위해, "AUX2 DE"신호를 제2 형태의 보조데이터를 위해)가 각각의 다른 형태의 보조데이터를 전송이 가능하게 하기 위해서 채택될 수 있다.
비록 도 5와 도 6이 두가지 데이터 인에이블 신호, "DE"와 "AUX DE"를 기준으로 설명되었지만, 송신기가 위에서 서술된 모든 인코딩, 직렬화, 그리고 전송이 하나의 데이터 인에이블 신호(예를 들어, 신호 DE와 AU DE의 논리적 "OR" 동작을 수행한 결과를 나타내는 결합된 인에이블 신호)에 대응하여 수행되도록 구성된 부분("코어")으로 구현될 수 있도록 계획되었다. 코어 외의 송신기의 추가적인 회로는 보조데이터(예를 들어, 24-비트 보조데이터 워드)와 비디오데이터(예를 들어, 24-비트 비디오데이터 워드), 그리고 비디오데이터 인에이블 신호 DE와 보조데이터 인에이블 신호 AUX DE 모두의 분리된 세트를 수신하도록 구성되었다. 데이터 인에이블 신호들은 다음과 같은 반복되는 시퀀스 즉 (DE=0, AUX DE =0), (DE=1, AUX DE =0), (DE=0, AUX DE =0), 그리고 (DE=0, AUX DE =1)를 가진다. 물론, 데이터 인에이블 신호들은 또한 다른 값들의 시퀀스로 발생할 수 있고, 또한 반복적이지 않은 시퀀스일 수도 있다. 예를 들어, 어떤 상황에서는, 보조데이터가 비디오 블랭킹 기간들에 대해 전부가 아니라 일부에서만 전송된다. 따라서, 보조데이터는 한 블랭킹기간에서는 전송되고 다른 블랭킹기간에서는 전송되지 않을수 있으며, 이 경우 DE와 AUX DE신호의 시퀀스의 값은 다음과 같다 : (DE=0, AUX DE =0), (DE=1, AUX DE =0), (DE=0, AUX DE =0), (DE=0, AUX DE =1), (DE=0, AUX DE =0), (DE=1, AUX DE =0), (DE=0, AUX DE =0), 그리고 (DE=1, AUX DE =0). 추가적인 회로는 신호 DE와 AUX DE를 같이 "OR"하여 결합된 데이터 인에이블 신호를 만드는 논리회로를 포함할 수 있다. 이러한 추가적인 회로는 또한 보조데이터를 4-비트 포맷으로 만들 수 있고, 보조데이터의 각각의 4-비트 부분을 도 4에 도시한 AD0-AD15중 하나의 워드로 인코딩할수 있고, 적절한 시간에 AD0-AD15의 보조데이터 워드의 스트림에 보호대역워드를 삽입할 수 있고, 그리고 비디오 보호대역워드를 비디오데이터의 스트림에 삽입할 수 있다.(또는 대안적으로 비디오데이터의 워드를 비디오 보호대역워드로 적절한 시간에 대체할 수 있다). 추가적인 회로는 비디오데이터(비디오 보호대역워드와 같이)와 보조데이터(보호대역워드와 같이)의 버스트의 시퀀스를 코어에 인가할 수 있고(예를 들어, 비디오 보호대역워드와 같이있는 비디오데이터와 보호대역워드와 같이 있는 보조데이터의 교차하는 버스트로), 또한 결합된 데이터 인에이블 신호를 코어에 인가할 수 있다. 코어는 도 5와 도6을 참조하여 설명된 결합된 데이터 인에이블 신호(분리된 DE와 AUX DE신호보다는)와 비디오와 보조데이터의 교차하는 버스트에 대응하여 인코딩, 직렬화, 및 전송 동작을 수행한다.
이전에 서술된 실시예의 변형에 있어서, 송신기의 "추가적인 회로"는 둘 또는 그 이상 세트의 보조데이터(각각의 세트는 다른 형태의 보조데이터로 구성된)를 수신하고 인코딩하기 위해서 연결되고 구성된다. 추가적인 회로는 또한 비디오데이터, 각각의 보조데이터 세트를 위한 보조데이터 인에이블 신호들(예를 들어, 제1 및 제2보조데이터 인에이블 신호 "AUX1 DE"와 "AUX2 DE"), 그리고 비디오데이터 인에이블 신호("DE")를 수신하고, 비디오데이터의 버스트와 인코딩된 보조데이터의버스트의 시퀀스를 송신기의 코어에 인가하기 위해서, 연결되고 구성된다. 비디오데이터 인에이블 신호("DE")와 보조데이터인에이블 신호들("AUX1 DE"와 "AUX2 DE")은 다음과 같은 반복되는 값의 시퀀스를 가질수 있다: (DE=0, AUX1 DE=0, AUX2 DE=0), (DE=1, AUX1 DE=0, AUX2 DE=0), (DE=0, AUX1 DE=0, AUX2 DE=0), (DE=0, AUX1 DE=1, AUX2 DE=0), 그리고 (DE=0, AUX1 DE=0, AUX2 DE=1). 추가적인 회로는 신호 DE와 AUX1 DE, AUX2 DE를 같이 "OR"하여 결합된 데이터 인에이블 신호를 만드는 논리회로를 포함할 수 있고, 또한 결합된 데이터 인에이블 신호(분리된 비디오데이터 인에이블신호와 보조데이터 인에이블 신호들보다는)를 코어에 인가할 수있다.
시리얼링크 상의 적어도 하나의 각각의 채널에서(예를 들어, CH2와 CH1각각에서, TMDS 링크상에서 본 발명에 부합되게 데이터 전송이 이루어지는 경우), 바람직하게는 인코딩된 보조데이터의 각각의 버스트의 시작에서(즉 각각의 블랭킹기간의 각각의 "보조프리앰블" 직후), 인코딩된 보조데이터의 각각의 버스트의 종료에서 그리고 인코딩된 비디오데이터의 각각의 버스트의 시작에서(즉, 각각의 블랭킹기간의 "비디오프리앰블"직후), 발명의 코드워드중 적절한 하나가(또는 두 개 또는 그 이상의 발명의 보호대역 워드가) 전송된다(보호대역워드 또는 보호대역워드의 세트로).
본 발명에 부합되게, 전송되는 소스데이터는 전체 코드워드의 세트중 "로버스트(robust)서브세트를 이용하여 인코딩된다. 각각의 "로버스트"서브세트는 코드워드 세트(종종 본원에서 "골든(golden)세트"로 표시되는)를 구성하고, 각각의 골든세트는 하나 또는 그 이상의 코드워드(종종 본원에서 "골든워드"로 표시되는)로 구성된다. 골든세트 각각의 "골든워드"는 단일 소스 데이터값(예를 들어, 소스 데이터 워드)을 나타낸다. 골든세트가 2개 또는 그 이상의 골든워드로 구성되어 있는 경우, 이러한 골든워드 각각은 동일한 소스 데이터 값을 나타낸다. 전체 세트의 코드워드의 클러스터가 결정된다. 각각의 클러스터는 "골든세트"를 포함하고, 또한 선택적으로 전체세트중에서 하나 또는 그이상의 추가적인 코드워드를 포함하며, 이 경우 추가적인 코드워드 각각은 클러스터의 골든세트의 골든워드와, 추가적인 코드워드 각각이 그러한 골든워드의 전송 또는 전송 및 디코딩중에서의 발생가능한 비트 에러의 결과로서 생성되는 경향이 있다는 점에서, "유사하다". 클러스터 중 하나에서 수신된 코드워드 각각은 그 클러스터의 골든세트에서 결정되는 소스데이터 값으로 매핑된다. 클러스터의 수신된 코드워드를 단일 소스데이터 값으로 매핑하는 것 각각은, 클러스터에서 에러를 포함하는 워드를 그 에러를 포함하는 워드에 가장 적합하게 대응하는 소스데이터로 매핑함으로써, 에러 정정을 제공할 수 있다.
코드워드의 전체세트는 한 형태의 데이터(예를 들어, 비디오데이터)를 시리얼 링크의 채널상에서 전송하도록 인코딩하는데 사용될 수 있고, 로버스트 서브세트는 다른 형태의 데이터(예를 들어 오디오데이터나 다른 관련된 "보조"데이터 또는 비디오데이터와 함께 사용되는)를 동일한 채널상에서 전송하도록 인코딩하는데 사용될 수 있다.
실시예들에 있어서, 각각의 골든세트에서 각각의 코드워드(그리고 전체세트에서의 각각의 코드워드)는 M-비트 워드가 인코딩된 버전인 N-비트 워드이고, M은 N보다 작은 정수이다. 시리얼링크상에서 N-비트 골든워드의 시퀀스가 전송된 후, 각각의 수신된 N-비트 코드워드는 골든워드중 하나와 다를수 있고(만약 전송에러가 발생한 경우), 또는 전송된 골든워드중 하나와 동일할 수 있다. 클러스터 중 하나에서 각각의 수신된 N-비트 코드워드는 디코딩된 M-비트 워드를 생성하기 위해서 디코딩되고, 그리고 그러한 각각의 디코딩된 M-비트 워드는 클러스터의 골든세트에 의해서 결정되는 소스데이터 값으로 매핑된다.
예를 들어, 실시예들에 있어서, 코드워드의 전체세트는 256개의 8-비트 소스워드를 나타내는 10-비트 TMDS-인코딩된 워드의 세트이다. 전체세트의 로버스트 서브세트는, 256개의 8-비트 소스워드의 전체세트의 서브세트를 나타내는 8-비트"골든워드"로 구성된다. 이러한 실시예들중 바람직한 실시예에 있어서, 로버스트 서브세트는 16개의 골든세트로 구성되고, 각각의 골든세트는 한 개의 8-비트 소스워드를 나타내는 10-비트 TMDS코드워드들로 구성되고, 그리고 각각의 10-비트 TMDS코드워드의 클러스터는 골든세트중 하나를 포함하고, 그리고 적어도 하나의 10-비트TMDS 코드워드가 그러한 골든세트의 코드워드와 유사하다. 그러한 바람직한 실시예에 있어서, 클러스터중 하나에서 각각의 수신된 10-비트 코드워드는, TMDS디코딩 알고리즘에(또는 그러한 알고리즘의 수정된 버전에) 부합되게 8-비트 워드를 복원하기 위해서 디코딩되고, 각각의 복원된 8-비트 워드는 클러스터에 의해서 결정되는 8-비트 소스워드로 매핑된다.
도 7을 참조로 하여, 수신된 워드의 클러스터(예를 들어, 도 7에서 클러스터 Sa와 Sb)를 본 발명에 부합되게 개별적인 전송된 소스데이터 워드(예를 들어, 워드 "a"와 "b")로 매핑하는 개념에 대해서 서술할 것이다. 그리고 도 4를 참조로 하여, 그러한 매핑의 특정예에 대해서 서술할 것이다.
도 7을 참조로 하면, 코드워드의 전체세트(주요데이터를 인코딩하는데 사용될 수 있는, 예를 들어 보조데이터가 본 발명에 부합되게 전체세트의 "골든워드"만을 사용하여 인코딩된 때)는, 각각의 소스데이터가 N-비트 오더의 세트일 때, 2N개의 서로 다른 소스데이터 워드를 인코딩하는데 사용될 수 있는 그러한 코드워드("2N공간")이다. 골든워드("2n공간")는, 각각의 소스데이터가 n-비트 오더의 세트일 때(n은 N보다 작은 정수일때), 2n개의 서로 다른 소스데이터 워드를 인코딩하는데 사용될 수 있는 전체세트의 코드워드의 서브세트이다. 초기에, 로우(raw) 소스데이터(어떠한 길이의 워드로 구성되는)는 버퍼링되어 n-비트 포맷으로 묶여질 수 있다(즉, 2n소스데이터워드의 세트의 n-비트 구성원으로). 각각의 서로 다른 n-비트소스데이터워드는 (2n공간에서)골든워드중 하나로 인코딩되고, 시리얼링크상에서(대표적으로 링크의 단일채널상에서) 전송될 수 있다. 전송은 에러를 발생할 수 있고, 또는 에러가 발생하지 않을 수 있다.
코드워드의 전체세트의 클러스터는, 각각의 클러스터가 "골든세트"(골든워드의 하나 또는 그 이상의)를 포함하고, 선택적으로 하나 또는 그 이상의 추가적인 전체세트의 코드워드를, 추가적인 코드워드 각각이 클러스터의 골든세트의 골든워드와 유사한 경우, 포함하도록, 미리 정해진다. 도 7에서, 예를 들어, 클러스터 "Sa"는 소스워드 "a"를 인코딩하는 골든워드 각각으로 구성된 골든세트를 포함하고, 클러스터 "Sb"는 소스워드 "b"를 인코딩하는 골든워드 각각으로 구성된 골든세트를 포함한다. 클러스터 하나에서 수신된 코드워드 각각은 그 클러스터의 골든세트에서 결정되는 소스데이터 값으로 매핑된다.
N=8이고, n=4인 그러한 실시예에서, 2N공간의 코드워드 각각은 10-비트 TMDS 인코딩된 워드이고, 2n공간은 10-비트 TMDS-인코딩된 워드 전체세트의 서브세트이다. 전송된 10-비트 TMDS 코드워드 각각은 TMDS 디코딩 알고리즘(또는 그러한 알고리즘의 수정된 버전)에 부합되게 디코딩되어 8-비드 코드워드를 생성한다. 본 발명의 이러한 그리고 다른 실시예들에 있어서, 골든워드의 전송(그리고 그러한 것의 디코딩)은 에러를 발생할 수 있고, 또는 에러가 발생하지 않을 수 있다.
각각의 특정 골든워드에 대해서, 어떤 형태의 전송에러는 채널에서의 채널-간 간섭 또는 다른 열화(degradation)를 발생시킬 수 있다. 따라서, 각각의 골든워드에 대해서(즉, 2n공간의 N-비트 구성원 각각에 대해서), 그러한 골든워드를 포함하는 각각의 클러스터는 바람직하게는 골든워드의 전송 도중에 그러한 전송에러의 발생에서 기인하는 2n공간의 모든 N-비트 구성원을 포함한다. 그렇지만, 클러스터가 디스조인트이기 때문에, 한 클러스터안에 포함되는 하나의 N-비트 워드는 다른 모든 클러스터에서 생략된다.
본 발명의 각각의 실시예에서, 골든세트의 각각의 골든워드에 추가적으로 적어도 하나의 코드를 포함하는, 적어도 하나(그리고 대표적으로는 하나 이상)의 클러스터가 채택된다. 본 발명의 어떤 실시예들에서, 골든세트의 각각의 골든워드에 추가적으로 적어도 하나의 코드를 포함하는 적어도 하나(그리고 대표적으로는 하나 이상)의 클러스터와 그리고 또한 골든세트의 각각의 골든워드가 아닌 다른 코드가 없는 적어도 하나의 다른 클러스터가 채택된다. 모든 클러스터(예를 들어, 도 7에서, Sa,Sb등등)가 상호 디스조인트이기 때문에, 따라서 전송(또는 전송 및 디코딩)도중에 에러가 발생하는지 여부와 상관없이, 만약 클러스터가 수신된 N-비트 코드를 포함하고 있다면, 수신된 코드는 정확한 소스워드로 다시 매핑된다.
도 7의 구현예들에 있어서, 코드워드의 전체세트("2N공간")는 10-비트 TMDS 코드워드의 전체세트이고, "2n공간"은 16개의 서로 다른 8-비트 소스데이터워드의 미리 정해진 세트를 나타내는 그러한 TMDS코드워드로 구성된다. 따라서, 각각의 클러스터는, 16개의 서로 다른 8-비트 소스데이터워드 중 하나를 나타내는 골든워드를 포함하는 TMDS 코드워드의 골든세트를 포함한다. 대표적으로, 로우 소스데이터의 4-비트 워드는 16개의 서로 다른 8-비트 소스데이터워드로 인코딩되고, 결과적인 8-비트 소스데이터워드 각각은 곧 전송을 위한 2n공간의 10-비트 구성원중 하나로 인코딩된다. 따라서, 로버스트 서브세트(TMDS 코드워드 전체세트의)는, (TMDS 디코딩 알고리즘 또는 그러한 알고리즘의 수정된 버전에 부합되게 디코딩되었을 때) 16개의 서로 다른 8-비트 소스데이터워드(TMDS코드워드 전체세트에서 결정되는 256개의 8-비트 소스데이터워드의)를 결정하는, 그러한 10-비트 TMDS코드워드로 구성된다. 각각의 클러스터는 바람직하게는 골든세트의 골든워드 뿐만 아니라, 골든워드의 전송에 있어서 다른 TMDS코드워드보다 비트에러가 발생하는 경향이 있다는 점에서, 골든워드중 하나와 "유사한" 적어도 하나의 10-비트 TMDS코드워드를 포함한다.(예를 들어, 골든워드와 "유사"한 코드워드는 골든워드와 그 비트중 하나만이 다를수 있다.).
코드워드의 전체세트 중에서 골든세트를 선택하는 과정은 매우 중요하다. 일반적으로, 바이너리 코드워드의 전체세트중에서 특정 골든세트를 선택하는 최적의 선택은, 전체세트에서 구현되는 특정 코딩에 달려있다(즉, 전체 세트의 각각의 코드워드의 어떤 비트들이 0이고 어떤 비트들이 1인지 상세한 사항). 위에서 서술하였듯이, 어떤 바람직한 실시예들에 있어서, 골든세트의 코드워드는 그 직렬 패턴(전송도중에)이 인접하는 0과 1이 적어지도록(예를 들어 평균적으로) 미리 정해지고, 따라서 전송도중의 ISI에 대해 전체 세트에서 선택되지 않은 코드워드(예를 들어 골든워드의 코드워드당 인접하는 0과 1의 평균수가, 전체 세트에서 골든워드로 선택되지 않은 코드워드의 코드워드당 인접하는 0과 1의 평균수보다 작도록)에 비해 덜 민감하도록 선택된다.
다른 바람직한 실시예들에 있어서, 골든워드는, 하나의 클러스터에서 어떤 골든워드와 다른 어떤 클러스터의 어떤 골든워드 사이의 해밍(Hamming)거리가 한계(threshold)값을 초과하는 기준이나, 또는 서로 다른 클러스터들에서의 골든워드 사이의 해밍 거리가 클러스터가 상호 디스조인트되도록 억제된 실용적인(예를 들어, 서로 다른 클러스터의 골든워드 사이의 평균 해밍 거리가 최대화된 기준) 정도로 최대화(어떤 의미에서)되는 기준을 만족하도록 선택된다. 이러한 것은, 클러스터가 상호 디스조인트라는 억제를 유지하면서, 각각의 클러스트안에 포함될 수 있는 "에러로된(errored) 코드"(하나의 골든세트의 골든코드가 아닌 코드)의 수를 증가시키는데 도움이 된다.
본 발명을 구현하기 위해서, 수신기(예를 들어, 도 2의 수신기(2'))는 바람직하게는, 클러스트의 구성원소(예를 들어, 클러스터가 하나의 골든워드와 골든워드와 유사한 3개의 코드워드로 구성된 경우, 4개의 수신된 코드워드 각각에 대응하여)를 나타내는 각각의 입력에 대응하여, 각각의 클러스터에서 결정되는 하나의 값(예를 들어, 소스데이터워드)을 출력하도록, 미리 정해진 테이블을 포함하도록 구성된다. 이 테이블은 각각의 클러스터에서 수신된 코드워드 각각을 클러스터의 골든세트에서 결정되는 소스워드로 매핑하거나, 또는 각각의 클러스터에서 수신된코드워드 각각을 클러스터의 골든세트의 골든워드(곧 수신기내에서(또는 수신기외부에서) 전형적인 하드웨어나 소프트웨어에 의해 클러스터의 골든세트에서 결정되는 소스워드로 매핑되는)로 매핑하거나, 또는 각각의 클러스터에서 수신된 코드워드 각각의 디코딩된 버전을 클러스터의 골든세트에서 결정되는 소스워드로 매핑하거나, 또는 각각의 클러스터에서 수신된 코드워드 각각의 디코딩된 버전을 단일 디코딩된 코드워드(곧 수신기내에서 또는 외부에서 전형적인 하드웨어나 소프드웨어에 의해 클러스터의 골든세트에서 결정되는 소스워드로 매핑되는)로 매핑하는 것을 구현한다.
예를 들어, 도 2의 수신기(2')는, 그러한 테이블을 구현한, "코드워드 복원, 매핑 및 디코딩"회로(20)를 포함한다. 회로(20)은 채널 0, 채널 1 및 채널 2 각각에서 수신된 데이터에서 10-비트 TMDS코드워드를 복원하고, 클러스터 중 하나에서 복원된 워드 각각을 클러스터의 골든워드로(테이블을 사용하여) 매핑하고, 각각의 골든워드를 8-비트 디코딩된 값(도 4의 왼쪽 칼럼의 17개의 8-비트 워드중 하나)으로 디코딩하도록 구성된다. 8-비트 디코딩된 값은 소스워드를 나타내고, 그리고 회로(20)은 선택적으로, 도 4의 AD0-AD15 워드중 하나를 나타내는 8-비트 워드 각각에 대응하여, 4-비트 로우 소스데이터워드를 생성한다.
클러스터들(그리고 따라서 수신기내의 위에 언급한 테이블의 입력)은 코드워드의 전체세트(예를 들어, 도 7의 2N공간)의 일부분일 수 있고, 따라서 클러스터들의 유니온(union)은 코드워드의 전체 공간을 커버하고(예를 들어, 도7의 2N공간 전체), 그리고 클러스터는 상호 디스조인트이다. 그렇지만, 전체 세트의 코드워드 하나가 매우 작거나 또는 무시해도 좋은 하나의 골든워드의 전송에 대응하여 수신될 때, 그러한 코드워드는 모든 클러스터에서 배제될 수 있다(그리고 테이블에서 버려질 수 있다). 이러한 경우에, 클러스터의 유니온은 코드워드의 전체 공간(예를 들어, 도7의 2N공간 전체)을 커버하지 않는다.
편의를 위해서, 청구항에서, "클러스터의 코드워드 각각을, 클러스터의 바람직한 워드세트(또는 골든세트)에서 결정되는 입력데이터(또는 소스데이터)값으로 매핑하고"라는 표현이나, 또는 이러한 표현의 변형을, 클러스터의 코드워드 각각이 직접적으로 클러스터의 바람직한 워드세트(또는 골든세트)에서 결정되는 소스데이터(또는 입력데이터)값으로 매핑되는 것, 또는 클러스터의 코드워드 각각이 클러스터의 골든세트(또는 바람직한 워드세트)의 골든워드(또는 바람직한 워드)로 매핑되고 선택적으로 이어지는 골든워드(또는 바람직한 워드)가 클러스터의 골든세트(또는 바람직한 워드세트)에서 결정되는 소스데이터(또는 입력데이터)값으로 전형적으로 매핑되는 것, 또는 클러스터의 코드워드 각각의 디코딩된 버전이 단일 디코딩된 코드워드로 매핑되고 선택적으로 이어지는 디코딩된 코드워드가 클러스터의 골든세트(또는 바람직한 워드세트)에서 결정되는 소스데이터(또는 입력데이터)값으로 전형적으로 매핑되는 것을 나타내기 위해서 사용할 것이다.
많은 수의 가능한 에러가 발생할 수 있기 때문에, 2개의 다른 골든워드(2개의 다른 골든세트의)의 전송에 영향을 미치는 예측가능한 에러가 동일한 수신된 코드를 만들 수 있는 것이 가능하다. 이것은, 클러스터 중 하나가 수신된 코드를 배제하도록 미리 결정되지 않으면, 두 개의 골든세트를 포함하는 클러스터에 있어서 바람직하지 않은 중첩(overlap)의 원인이 된다. 이러한 클러스터 사이의 중첩을 방지하기 위해서, 수신된 코드중 발생이 적을 것 같은 것은 관계된 클러스터에서 배제되어야만 한다. 예를 들어, 만약 제1 클러스터가 제1 골든워드를 포함하고, 제2 클러스터가 제2 골든워드를 포함하면, 수신된 코드워드(골든워드가 아닌)는 제1골든워드의 전송에서 (P1의 확률로) 발생할 것으로 기대되고, 제2골든워드의 전송에서 (P2의 확률로, P2는 P1보다 작음) 발생할 것으로 기대되면, 그러면 제1클러스터는 수신된 코드워드를 포함하여야 하지만 수신된 코드워드가 제2클러스터에서는 포함되지 않아야 한다.
서술되었듯이, 본 발명의 수신기는, 어떤 구현예에 있어서, 골든워드의 수신된 버전을 소스데이터값으로의 2-단계 매핑을 수행하도록 구성된다: 제1단계는 클러스터내에서 수신된 코드워드 각각을 클러스터의 골든세터의 골든워드로 매핑하고, 제2단계는 제1단계에서 결정된 골든워드를 클러스터의 골든세트에서 결정되는 소스워드로 매핑하는 것이다. 그러한 어떤 구현예들에 있어서, 에러정정코드의 추가적인 블록이 골든워드세트 각각과 함께 전송되고, 수신기는 에러정정코드를 사용하여 에러정정을 수행하기 전에 제1단계 매핑을 수행하도록 구성된다(클러스터중 어떠한 것의 구성원도 아닌, 에러를 포함하는 수신된 코드워드를 정정하고, 이것을 가능한 한 골든워드로 대체하기 위해서). 이러한 구현예에서, 발명의 골든워드와 클러스터는 바람직하게는, 에러정정의 수행에서 제공되는 자유도(degree offreedom)를 이용하는 매핑을 구현하도록 선택된다. 예를 들어, 골든워드는 서로 다른 클러스터의 어떤 두 개의 골든워드 사이의 해밍 거리가 실용적인 정도로 최소화되는(또는 아니면 최대화되는) 조건과 클러스터가 상호 디스조인트라는 기준을 만족하도록 선택된다. 그러한 골든워드를 포함하는 클러스터와 함께, 수신기내의 에러정정회로에서 검출된 에러가 있는 비트의 수는 최소화될수 있고, 에러정정의 오버헤드(overhead)는 최소화될 수 있다.
예를 들어, 도 2의 수신기(2')의 구현에서, 수신기는 "코드워드 복원, 매핑 및 디코딩"회로(20)의 출력에 연결된 에러정정회로를 포함한다. 회로(20)은 발명의 클러스터의 구성원인 복원된 코드워드에 대응하여 골든워드를 생성하고, 에러정정코드와 링크상에서 수신된 어떠한 클러스터의 구성원도 아닌 10-비트 코드워드를(회로 22로) 인가하는 제1단계 매핑을 수행하도록 구성된다. 회로(22)는 에러정정코드를 사용하여 에러-포함하는 어떠한 클러스터의 구성원도 아닌 수신된 코드워드를 정정하는 에러정정을 수행하고, 따라서 그러한 에러-포함하는 코드워드를 가능한 정도의 골든워드로 대체한다. 회로(20)은 선택적으로 또한 수힌하거나 또는 생성하는 골든워드를 디코딩하도록 구성된다. 회로(22)에서 생성되는 골든워드는, 회로(20)에 디코딩을 위해서 인가될 수 있고, 또는 수신기(2')내의 다른 디코딩회로에서 디코딩될 수 있다. 수신기(2')의 서술된 구현에 대한 변형예에 있어서, 회로(22)는 생략된다.
도 4를 참조로 하여, 본 발명의 바람직한 실시예들에 채택된, 17개의 골든워드의 세트와 코드워드 클러스터의 세트(각각이 골든워드중 하나를 포함하는)의 특정 예에 대해서 서술한다. 도 4에서, 3번째 칼럼(왼쪽에서부터)은 위에서 서술된 17개의 골든워드를 도시한다. 16개의 골든워드는 16개의 서로다른 8-비트 소스데이터워드(각각의 8-비트 소스데이터워드는 4비트의 로우 소스데이터를 나타내는)를 인코딩하기 위해서 사용되고, 다른 하나의 골든워드(첫 번째 줄의 "1100110010"워드)는 보호대역워드로만 사용된다. 골든워드 각각은 10-비트 TMDS 인코딩된 워드이다. 4번째 칼럼(왼쪽에서부터)은 10-비트 골든워드 각각에 대해 가능한 에러의 예들을 도시하며, 5번째 칼럼은 전형적인 TMDS 디코딩 알고리즘에 부합하게 4번째 칼럼의 10-비트 워드에 대응되는 디코딩의 결과로서 발생하는 8-비트 워드를 도시하며, 그리고 6번째 칼럼은 단순히 5번째 칼럼의 대응하는 요소들의 16진수 표현을 도시한다. 7번째 칼럼(왼쪽에서부터)은 4번째 칼럼의 각각의 대응되는 워드가 3번째 칼럼에서의 대응되는 골든워드를 포함하는 클러스터의 구성원인지 아닌지를 나타내는 표시를 포함하고 있다. 특히, 7번째 칼럼에서의 "무시"라는 용어는 4번째 칼럼의 대응되는 워드가 3번째 칼럼에서의 대응되는 골든워드를 포함하는 클러스터의 구성원이 아니라는 것을 나타낸다.
17개의 클러스터(도 4에서 수평 바에 의해서 분리된)가 있다: 골든워드"1100110010"와 코드워드"1110110010"과 "1100010010"(모두 "프리-데이터"보조 보호대역워드 "01010101"로 매핑되는)를 포함하는 첫 번째 클러스터; 골든워드"0011100101"과 코드워드"1011100101"과 "0001100101", "0011110101", "0011100001"(모두 소스워드 AD0로 매핑되는)를 포함하는 두 번째 클러스터(소스워드 AD0를 인코딩하기 위한); 골든워드"0110001101"과 코드워드"0111001101"과"0110000101"(모두 소스워드 AD1로 매핑되는)를 포함하는 3번째 클러스터(소스워드 AD1를 인코딩하기 위한); 그리고 14개의 다른 표시된 클러스터(각각은 14개의 다른 골든워드 중 하나를 포함하고, 소스워드 AD2-AD15중 다른 하나로 매핑되는 워드로 구성된)들이다.
수신기가 표시된 클러스터중 하나에서 코드워드(도4의 4번째 칼럼에서)를 복원할 때(7번째 칼럼에서 그러한 복원된 코드워드에 대응하는 "무시"기호가 없을 때), 수신기는 복원된 코드워드를 클러스터의 골든워드에서 결정되는 소스워드(도4의 첫 번째 칼럼)로 매핑할 것이다(복원된 코드워드를 3번째 칼럼에서의 클러스터의 골든워드로 매핑하는 것과 동일).
7번째 칼럼에서 "무시"라는 용어가 표시된, 4번째 칼럼에서의 그러한 코드워드는 대응되는 골든워드를 포함하는 클러스터의 구성원이 아니다. 예를 들어, 도 4의 3번째 줄에서 "1100111010"코드워드는, 이 코드워드가 골든워드 "1000111010"을 포함하는 클러스터의 구성원이고, 클러스터가 디스조인트이어야 하기 때문에, 첫 번째 클러스터(골든워드 "1100110010"을 포함하는)의 구성원이 아니다. 비록 수신기가 골든워드"1100110010"(도4의 첫번째 줄에서)의 전송도중의 단일비트에러(상대적으로 높은 확률을 가지는)의 결과로 코드워드"1100111010"을 복원하거나, 또는 역시 골든워드"1000111010"(도4의 45번째 줄에서)의 전송도중의 단일비트에러(역시 상대적으로 높은 확률을 가지는)의 결과로 코드워드"1100111010"을 복원할 수 있지만, 수신기는 수신된 워드를, 골든워드"1100110010"에 의해 결정되는 소스워드("01010101")로 매핑하기 보다는, 8-비트 소스워드 "AD10"(수신된 워드를글든워드"1000111010"으로 매핑하는 것과 동일한)으로 매핑한다.
다른 예를 들면, 송신기가 골든워드"1100110010"(도4의 첫 번째 칼럼에서)를 전송할 때, 수신기는 만약 송신이 에러가 없는 경우(매우 높은 확률을 가지는) 코드워드"1100110010"을 복원한다. 수신기는 이 복원된 워드를, 전형적인 TMDS-디코딩 알고리즘에 부합되게, 디코딩된 8-비트워드"01010101"을 결정하도록 디코딩하고, 디코딩된 8-비트 워드를 소스워드"01010101"(프리-데이터 보조 보호대역워드인)로 매핑할 수 있다. 수신기는 골든워드"0011001101"의 전송도중의 단일비트에러(상대적으로 낮은 확률을 가지는)의 결과로 워드"0011001111"(도4의 52번째 줄에서)을 복원할 수 있고, 그리고 수신기는 이러한 복원된 워드를, 전형적인 TMDS-디코딩 알고리즘에 부합되게(DC발란싱 비트의 값의 결과로 8개의 LS비트들을 반전하는), 동일한 디코딩된 8-비트워드"01010101"을 결정하도록 디코딩할 수 있다. 수신기는 이러한 수신된 워드를 소스워드"01010101"(수신된 워드를 골든워드"1000111010"으로 매핑하는 것과 동일한)로 매핑할 수 있다.
위에서 서술한 발명의 보호대역워드를 참조로 하여, 각각의 보호대역워드는, 각각의 보호대역워드를 위한 클러스터 그리고 두 개 또는 그 이상의 코드워드를 포함하는(보호대역워드를 포함하고) 각각의 그러한 클러스터가 있는 그러한 경우에, 골든워드일 수 있다(도 4의 예에서와 같이). 대안적으로, 보호워드는 골든워드가 아니지만 그러나 골든워드로부터 신뢰성있게 구별될 수 있다.
적어도 하나의 보호대역워드를 채택한 본 발명의 각각의 실시예에 있어서, 각각의 보호대역워드는 인코딩된 제어(또는 동기화)워드 전송과 인코딩된 데이터전송사이의 대응되는 천이(보호대역워드나 워드로 표시되는)를 수신기에서 보다 신뢰성있게 인식할 수 있게 하는 비트패턴을 가져야한다. 따라서, 발명의 골든워드 세트를 선택하는데 있어서 추가적인 요소는 적절한 보호대역워드를 포함하고 있어야 하거나(즉, 보호대역워드가 골든워드이다), 또는 골든세트의 각각의 골든워드는 채택될 각각의 보호대역워드와 신뢰성있게 구별이 되어야 한다는 것이다. 예를 들어, 도 4에 도시된 17개의 골든워드의 세트는, 보조데이터 버스트의 시작을 인식하기 위해 사용되는 특별 보조 보호대역워드(도 4의 첫 번째 줄의 3번째 칼럼에 있는, "1100110010"비트패턴을 가지는)를 포함하고 있다. 도 5에서 도시되었듯이, 이러한 "프리-데이터" 보조 보호대역워드의 2번 반복은 바람직하게는 CH2와 CH1채널 각각안에서 인코딩된 보조데이터의 각각의 버스트의 시작에서(즉, 각각의 보조프리앰블 직후) 전송된다. CH2와 CH1채널내에서 전송되는(보조프리앰블 도중에) 인코딩된 특정 제어워드 각각의 마지막 비트가 위에서 설명한 대로 "0"이기 때문에, 프리-데이터 보조 보호대역워드로 선택된 코드워드의 첫 번째로 전송되는 비트는, 수신기가 전송된 보조데이터의 버스트의 시작을 인식하도록 신뢰성을 높이기 위해 "1"이 된다.
도 4에서 도시된 17개의 골든워드의 세트는 또한, 보조데이터 버스트의 종료를 인식하기 위해서 사용되고 또한 비디오 보호대역 워드로 사용되는, 워드(입력워드 AD11에 대응하는 골든워드"0011001101")를 포함한다. 도 5에 도시되었듯이, 이러한 "포스트-데이터" 보조 보호대역워드의 2번 반복은 바람직하게는 CH2와 CH1채널 각각안에서 인코딩된 보조데이터의 각각의 버스트의 종료에서(즉, 각각의 비디오프리앰블 직전에서) 전송된다.
프리-데이터 보조 보호대역워드는 각각의 보조데이터 버스트의 시작에서 반복될(2번 전송될) 필요는 없고, 포스트-데이터 보조 보호대역워드는 각각의 보조데이터 버스트의 종료에서 반복될 필요는 없다. 바람직한 실시예에서(도 5로 표시된), 각각은 수신기에서 좀더 쉽게 데이터의 전송과 복원사이에서 발생할 수 있는 채널 사이의 데이터 이동 에러(즉, 채널 CH1상에서 수신된 데이터와 채널 CH2상에서 수신된 데이터에 관계되는 트레이스(trace)길이의 에러)를 확인하고 정정할 수 있도록 반복될 수 있다. 본 발명의 다른 실시예에서, 보조 보호대역워드는, 각각의 보조데이터 버스트의 시작에서 2번 이상 반복되고(또는 단 한번만 전송되고), 그리고 또는 각각의 보조데이터 버스트의 종료에서 2번이상 반복된다(또는 단 한번만 전송된다.).
도 4를 참조로 하면, 골든워드"0011001101"(입력 워드 AD11에 대응하는)는, 입력 워드 AD11로 표시되는 4-비트 보조데이터를 인코딩하기 위한 코드워드로 사용되는 것 뿐만 아니라, 비디오데이터 버스트의 시작을 인식하기 위한 비디오 보호대역워드로 사용되고, 그리고 포스트-데이터 보조 보호대역워드로 사용된다. 도 6에 도시되었듯이, 이러한 비디오 보호대역워드의 2번의 반복은 바람직하게는 인코딩된 비디오데이터의 각각의 버스트의 시작에서(즉 각각의 비디오프리앰블 직후) 전송된다. CH1 및 CH2 채널 각각에서 전송되는(비디오프리앰블의 종료에서) 인코딩된 제어 또는 동기화워드의 마지막 2비트가 위에서 설명한 대로 "11"일 것이기 때문에, 비디오 보호대역워드의 처음 2비트는, 수신기가 전송된 비디오데이터의 버스트의시작을 인식하도록 신뢰성을 높이기 위해 "00"으로 선택된다.
비디오 보호대역워드는 각각의 비디오데이터 버스트의 시작에서 반복될(2번 전송될) 필요는 없다. 도 6에서의 바람직한 실시예에서, 비디오 보호대역워드는 버스트 동안 짝수의 픽셀을 나타내는 코드워드의 전송(CH0, CH1 및 Ch2 채널 각각에서)을 보장하기 위해서 반복될 수 있다. 다른 실시예에서, 비디오 보호대역워드는 각각의 비디오데이터 버스트의 시작에서 2번이상 반복될 수 있다(또는 단 한번만 전송될 수 있다).
본 발명의 어떤 실시예에 있어서, 비디오데이터의 두 개의(또는 두 개 이상의) 스트림이 전송된다(하나, 둘 또는 2개 이상의 채널상에서). 예를 들어, 비디오데이터의 두 개 또는 그 이상의 스트림이, 채널 0, 1 및 2 중 하나 또는 그 이상의 각각의 채널에서 시간-다중화된(time-multiplexed) 형태로 전송될 수 있다. 만약 비디오데이터의 다른 스트림의 버스트가 한 채널상에서 순차적으로 전송된다면, 각각 다른 비디오 보호대역워드가, 각각 다른 스트림이 각각 다른 비디오 보호대역워드로 구별되도록, 각각의 버스트의 시작(그리고/또는 종료)에서 전송될 수 있다. 마찬가지로, 두 개(또는 그 이상)의 보조데이터의 스트림이 하나, 둘 또는 둘 이상의 채널상에서 전송될 수 있다. 만약 보조데이터의 다른 스트림의 버스트가 한 채널상에서 순차적으로 전송된다면, 각각 다른 보조 보호대역워드가, 각각 다른 스트림이 각각 다른 보조 보호대역워드로 구별되도록, 각각의 버스트의 시작(그리고/또는 종료)에서 전송될 수 있다.
인코딩된 데이터가 다수의 독립된 채널상에서 직렬로 전송될 때, 별개의 채널에서의 DE 쉬프트(shift)는, 각각의 채널에서의 보호대역워드를 사용하여, 독립적으로 정정될 수 있다.(본 발명에 부합되게). TMDS 링크(또는 TMDS-유사한 링크 또는 다른 시리얼링크)의 복수의 채널상에서 어느 한쪽 방향에서 한 픽셀 클럭사이클당(또는 그 이상의 클럭사이클당) 전송되는, 비트로 표시되는 DE 천이사이에 오정렬(misalignment)이 존재(링크상에서 ISI 또는 다른 노이즈 소스 때문에 발생하는)할 수 있기 때문에, 바람직하게는 본 발명에 부합되게, 동일한 보호대역워드(각각 발명의 코드워드의 세트의 구성원인)의 세트가 발명의 코드워드를 사용하여 인코딩되어 각각의 채널상에서 전송되는 데이터의 각각의 버스트의 시작 그리고/또는 종료(예를 들어, 각각의 채널의 보조프리앰블의 종료에서 그리고/또는 각각의 채널의 비디오프리앰블의 시작에서, 그리고/또는 각각의 채널의 비디오프리앰블의 종료에서)에서 전송된다. 이것은 채널-대-채널 정렬과 데이터 무결성(integrity)을 향상할 수 있게 한다. 적절한 수의 보호대역워드를 사용할 수 있도록 하는 요구는 발명의 코드워드의 세트를 선택하는데 있어서 한가지 요소가 된다.
보호대역워드의 전송을 반복(원하는 비트패턴과 이어지는 본 발명에 부합되게 인코딩된 데이터의 버스트사이의 천이, 또는 본 발명에 부합되게 인코딩된 데이터의 버스트와 이러한 데이터에 이어지는 원하는 비트패턴사이의 천이에서)하는 목적은, 천이를 너무 일찍 인식하거나 천이를 너무 늦게 인식하는 경우의, 두가지 형태의 천이의 오인식(misidentification)을 방지하기 위함이다. N 보호대역워드의 반복시퀀스를 전송함으로써, 본 발명에서는 어느 한 방향에서의 N-1픽셀까지의 그러한 픽셀 쉬프트에러를 방지할 수 있다. 예를 들어, 만약 N 포스트-데이터 보호대역워드의 시퀀스가 인코딩된 데이터 버스트에 붙어졌다면, 본 발명은, N-1 픽셀 쉬프트가 왼쪽으로 일어난 경우, 최종 데이터 값이 상실되지 않는 것을 보장한다(단지 포스트-데이터 보호대역워드가 상실될 뿐이다). 일반적으로, 단지 N-1 포스트-데이터 보호대역워드의 시퀀스가, N 프리-데이터 보호대역워드의 시퀀스와 같이 사용하는데 있어, 필요하다.
바람직한 실시예에서(도 5로 표시된), CH2 및 CH1 채널상에서의 보조데이터의 각각의 버스트의 시작과 종료에서 전송되는 보조 보호대역워드는, CH0 채널상에서의 보조데이터의 각각의 버스트의 시작과 종료에서는 전송되지 않는다. 대신에, CH0 채널상에서 각각의 보조데이터 버스트에서 전송되는, 첫 번째 2개와 마지막 2개의 10-비트 발명의 코드워드를 결정하기 위해서, 특별 인코딩이 사용된다.
상세하게는, 인코딩될 처음 두개의 입력 보조데이터 패킷(packet)과 인코딩될 마지막 두개의 입력 보조데이터 패킷 각각이 2 비트를 구성한다(반면 다른 모든 패킷은 위에서 서술한 대로 4-비트를 구성한다). 첫 번째의 2-비트 입력 보조데이터 패킷은 도 4에서의 AD0, AD1, AD2 및 AD3 워드 중 하나로 인코딩되고, 두 번째의 2-비트 입력 보조 패킷은 AD0, AD1, AD2 및 AD3 워드 중 다른 하나로 인코딩된다. 따라서, 버스트에서 전송되는 처음 두 개의 10-비트 워드는, 이러한 AD0, AD1, AD2 및 AD 중 하나를 나타내는(그리고 따라서 입력 보조데이터의 처음 4비트를 나타내는), 발명의 코드워드의 버전들이다. 마찬가지로, 마지막에서 두번째의 2-비트 입력 보조 패킷은 도 4에서의 AD0, AD1, AD2 및 AD3 워드 중 하나로 인코딩되고, 마지막 2-비트 입력 보조 패킷은 AD0, AD1, AD2 및 AD3 워드 중 다른 하나로 인코딩된다. 버스트에서 전송되는 마지막 두 개의 10-비트 워드는, 이러한 AD0, AD1, AD2 및 AD 중 하나를 나타내는(그리고 따라서 입력 보조데이터의 마지막 4비트를 나타내는), 발명의 코드워드의 버전들이다.
좀더 일반적으로는, 서로 다른 제어 또는 동기화 비트(예를 들어, DVI 스펙에서 CTL0:CTL1 또는 CTL2:CTL3 비트들을 나타내는 10-비트 제어 캐릭터)는, 이러한 제어캐릭터 직후에 전송되는 비디오(또는 보조)데이터 비트에서, 전송채널의 직렬데이터상에서 ISI가 존재할때, 다른 에러를 발생시킬수 있다. 이것은 바람직하게는 인식되어져서, 또한 비디오(또는 보조)데이터를 잔송하는데 사용되는 발명의 코드워드 세트를 선택하는데 있어서 하나의 요소로 사용할 수 있다. 대안적으로, 데이터(본 발명에 부합되게 인코딩된) 직전에 전송되는 제어 코드는 ISI효과를 줄이도록 제어될 수 있다.
본 발명의 다른 실시예에 있어서, 인코딩된 보조데이터의 버스트와 인코딩된 비디오데이터의 버스트는 시리얼링크(TMDS링크가 아닐 수 있는)상에서 전송될 수 있고, 그리고 보조데이터는 발명의 코드워드의 세트를 사용하여 본 발명과 부합하게 인코딩될 수 있다. 발명의 코드워드의 세트는, 인코딩된 비디오데이터 각각의 버스트의 시작에서 전송되는 "비디오"보호대역워드와, 인코딩된 보조데이터 각각의 버스트의 시작에서 전송되는 "보조"보호대역워드를 포함한다. 이러한 실시예에서, 비디오 보호대역워드는 또한 보조데이터를 인코딩하는 2번째의 목적으로 사용될 수 있다. 그러한 실시예의 바람직한 구현에서, 인코딩된 비디오데이터는 비디오 데이터 인에이블 신호가 하이(예를 들어, 제어신호 "DE"가 DE=1을 만족하는 경우)인 액티브 비디오 기간동안에 전송되고, 인코딩된 제어(또는 동기화)신호와 인코딩된 보조데이터는 액티브 비디오 기간 사이의 블랭킹기간(비디오데이터 인에이블 신호가 로우일때) 동안에 전송된다. 비디오 보호대역워드는 각각의 액티브 비디오 기간의 시작에서 전송된다. 각각의 블랭킹기간은, 특정형태의 제어(또는 동기화)신호가 전송되는 "보조"프리앰블(비디오데이터 인에이블 신호의 하강에지와 보조데이터의 버스트의 시작의 사이에서)기간, 보조프리앰블 기간 이후의 적어도 하나의 보조데이터 기간(각각의 보조데이터 기간은 보조 보호대역워드와 이어지는 인코딩된 보조데이터의 버스트로 구성된), 그리고 마지막 보조데이터 기간과 그 다음의 액티브 비디오 기간 사이의 "비디오"프리앰블기간으로 구성된다. 일반적으로, 본 발명과 부합되게 보호대역워드를 사용하는 목적은, 인코딩된 데이터 버스트의 시작에서 전송되는 첫번째 보호대역워드와 그러한 보호대역워드 직전에 전송되는 마지막 비트 사이의 천이와, 그리고 인코딩된 데이터 버스트의 종료에서 전송되는 마지막 보호대역워드와 그러한 보호대역워드 직후에 전송되는 첫번째 비트 사이의 천이를, 수신기에서 인식하도록 보장하기 위해서이다.
본 발명의 실시예들에서, 전형적인 인코딩 알고리즘이 주요(primary) 데이터(비디오데이터가 가능하지만 아닐수도 있는)를 시리얼링크상에서의 버스트로 전송하도록 인코딩하는데 사용되고, 보조데이터(예를 들어, 오디오데이터 또는 다른 형태의 데이터로, 주요 데이터보다 낮은 데이터 레이트로 전송될 수 있는)는 본 발명에 부합되게 시리얼링크상에서의 버스트(인코딩된 주요 데이터의 버스트 사이에)로 전송하도록 인코딩된다. 주요데이터를 인코딩하는데 사용되는 코드워드의 전체 세트는, 주요데이터의 2N개의 각각의 다른 워드(종종 소스데이터 워드로 서술되는)에 대해서, 적어도 하나의 코드워드를 갖는다. 그러한 전체세트의 발명의 서브세트는, 보조데이터의 2M개(M<N)보다 많지 않은 각각의 다른 워드(역시 종종 소스데이터 워드로 서술되는)에 대해서 적어도 하나의 코드워드를 갖는다. 보조데이터는 버퍼링되고, 또한 M-비트 포맷으로 묶여진다(즉 M 비트로 구성된 각각의 워드로). M-비트 소스 데이터로 각각 가능한 값은 발명의 코드워드에서 제공되는 2M-워드 공간에서 미리 선택된 코드를 가진다. 보조데이터의 M-비트 워드는 2M-워드 공간에의 발명의 코드로 매핑되고 곧 링크상에서 전송된다.
본 발명에 부합되게 인코딩된 데이터(예를 들어, 비디오데이터와 구별되는 보조데이터)를 전송하도록 사용되는 발명의 코드워드를 선택하는데 있어서, 어떠한 비트들(또는 다수-비트(multi-bit)로 인코딩된 워드)가 다른 그러한 비트들에 비해서 에러의 위험이 높다는 것을 고려하는 것이 중요하다. 예를 들어, TMDS-인코딩된 워드를 보조데이터를 전송하는데 사용하는 경우, DC 발란싱 비트와 변환 제어 비트(예를 들어 Q[9]와 E[8]비트들)은 다른 비트들에 비해서 에러의 위험이 높다. DC발란상과 천이 제어비트의 처리 도중에 발생하는 어떠한 비트 에러도 다수-비트 인코딩된 워드의 다른 비트에 영향을 줄 수 있다. 따라서 중요한 비트들에 있어서 하나의 비트에러는 버스트 에러로 될 수 있다. 이러한 효과는 바람직하게는 TMDS-인코딩된 워드의 전체세트에서 발명의 코드워드를 선택하는데 있어서 고려되어야한다.
본 발명의 특정 형태가 본원에서 도시되고 서술되었지만, 본 발명은 청구항에서 한정되어야 하고, 도시되고 서술된 특정 실시예에 의해서 한정되지 않는다는 것을 이해하여야 한다.

Claims (75)

  1. 수신기;
    송신기; 및
    송신기와 수신기 사이의 시리얼링크
    를 포함하는 통신시스템에 있어서,
    상기 송신기는 입력데이터를 수신하기 위해서 연결되고, 입력데이터를 인코딩하여 선택된 코드워드의 시퀀스를 생성하도록 구성되고, 그리고 선택된 코드워드의 시퀀스를 시리얼링크상에서 수신기로 전송하도록 구성되고,
    선택된 코드워드 각각은 코드워드의 전체세트의 로버스트 서브세트의 구성원이고, 전체세트는 코드워드의 미리 정해진 디스조인트 클러스터를 포함하고, 입력 데이터는 전체 코드워드세트의 코드워드의 전형적인 시퀀스로 인코딩될 수 있고, 선택된 코드워드의 시퀀스는 링크상에서의 전송도중의 심벌-간 간섭에 대해서 코드워드의 전형적인 시퀀스보다 덜 민감하고,
    로버스트 서브세트는 전체세트의 바람직한 워드로 구성되고, 전체세트의 코드워드중 바람직한 워드가 아닌 코드워드는 비-바람직한 워드이고, 바람직한 워드 세트 각각은 입력 데이터 값을 나타내고, 클러스터 각각은 적어도 하나의 바람직한 워드로 구성되는 바람직한 워드 세트를 포함하고, 클러스터 중 적어도 하나는 또한 적어도 하나의 비-바람직한 워드를 포함하고, 각각의 상기 바람직한 워드 세트는 서로다른 입력 데이터값을 나타내고, 그리고 수신기는 클러스터 중 하나의 구성원인 수신된 코드워드 각각을 상기 클러스터중 하나의 바람직한 워드 세트에 의해 결정되는 입력 데이터 값으로 매핑하도록 구성된 것
    을 특징으로 하는 통신시스템.
  2. 제 1항에 있어서,
    상기 클러스터 각각은, 클러스터의 바람직한 워드 중 하나의, 전송, 또는 전송 및 디코딩에서의 적어도 하나의 비트 에러의 결과로 생성될 수 있는, 적어도 하나의 비-바람직한 워드를 포함하는 것
    을 특징으로 하는 통신시스템.
  3. 제 1항에 있어서,
    상기 바람직한 워드 세트 각각은 단 하나의 바람직한 워드로만 구성된 것
    을 특징으로 하는 통신시스템.
  4. 제 3항에 있어서,
    상기 클러스터 각각은, 클러스터의 바람직한 워드의, 전송, 또는 전송 및 디코딩에서의 적어도 하나의 비트 에러의 결과로 생성될 수 있는, 적어도 하나의 비-바람직한 워드를 또한 포함하는 것
    을 특징으로 하는 통신시스템.
  5. 제 1항에 있어서,
    링크는 적어도 하나의 비디오 채널로 구성되고, 송신기는 비디오데이터와 보조데이터를 비디오 채널을 통해서 수신기로 전송하도록 구성되고, 비디오데이터는 코드워드의 전체세트에 의해서 결정되고, 그리고 보조데이터는 바람직한 워드에 의해서 결정되는 것
    을 특징으로 하는 통신시스템.
  6. 제 1항에 있어서,
    바람직한 워드는, 어떤 클러스터들의 어떤 바람직한 워드와 다른 클러스터들의 어떤 바람직한 워드 사이의 해밍(Hamming)거리가 한계(threshold)값을 초과하는 기준을 만족하는 것
    을 특징으로 하는 통신시스템.
  7. 제 1항에 있어서,
    바람직한 워드는, 서로 다른 클러스터들의 바람직한 워드 사이의 해밍 거리가 실용적인 정도로 최대화된 기준을 만족하는 것
    을 특징으로 하는 통신시스템.
  8. 제 1항에 있어서,
    송신기는 시리얼링크상에서 선택된 코드워드의 시퀀스와 함께 에러정정 코드블럭을 전송하도록 구성되고,
    수신기는
    상기 에러정정 코드블럭을 사용하여, 적어도 일부의 수신된 코드워드가 어떠한 클러스터의 구성원도 아닌 경우, 에러정정을 수행하도록 구성된 에러정정회로를 포함하고, 바람직한 워드는 다른 클러스터들의 바람직한 워드들 사이의 해밍 거리가 실용적인 정도로 최소화된 기준을 만족하는 것
    을 특징으로 하는 통신시스템.
  9. 제 1항에 있어서,
    클러스터 중 하나의 비-바람직한 워드인 수신된 코드워드 각각은 에러-포함하는 워드이고, 수신기는 상기 에러-포함하는 워드 각각을 상기 클러스터 중 하나의 바람직한 워드 세트에 의해 결정되는 입력데이터값으로 매핑하여 에러 정정을 구현하도록 구성된 것
    을 특징으로 하는 통신시스템.
  10. 제 1항에 있어서,
    상기 입력 데이터는 보조데이터이고,
    상기 송신기는 비디오데이터를 수신하기 위해서 연결되고, 비디오데이터를 인코딩하여 비디오데이터의 시퀀스를 생성하도록 구성되고,
    상기 송신기는 비디오 코드워드의 제1버스트와 이어지는 선택된 코드워드의버스트와 이어지는 비디오 코드워드의 제2버스트를 시리얼링크상에서 수신기로 전송하도록 구성되고,
    상기 비디오 코드워드 각각은 코드워드의 전체세트의 구성원이고 적어도 하나의 비디오 코드워드는 로버스트 서브세트의 구성원이 아닌 것
    을 특징으로 하는 통신시스템.
  11. 제 10항에 있어서,
    상기 송신기는 또한 제어 비트를 수신하기 위해서 연결되고, 제어비트를 인코딩하여 인코딩된 제어워드의 버스트를 생성하도록 구성되고, 인코딩된 제어워드의 제1버스트를 비디오 코드워드의 제1버스트와 선택된 코드워드의 버스트 사이에, 인코딩된 제어워드의 제2버스트를 선택된 코드워드의 버스트와 비디오 코드워드의 제2버스트 사이에, 시리얼링크상에서 수신기로 전송하도록 구성된 것
    을 특징으로 하는 통신시스템.
  12. 제 11항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 초기워드를 가지고, 상기 초기워드는 상기 보호대역워드인 것을 특징으로 하는 통신시스템.
  13. 제 11항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 초기워드의 세트를 가지고, 상기 초기워드의 세트의 각각의 워드는 상기 보호대역워드중 하나인 것을 특징으로 하는 통신시스템.
  14. 제 11항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 최종워드를 가지고, 상기 최종워드는 상기 보호대역워드인 것을 특징으로 하는 통신시스템.
  15. 제 11항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 최종워드의 세트를 가지고, 상기 최종워드의 세트의 각각의 워드는 상기 보호대역워드중 하나인 것을 특징으로 하는 통신시스템.
  16. 제 11항에 있어서,
    상기 시리얼링크는 TMDS링크이고, 상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 적어도 하나의 천이-최소화된 TMDS코드워드를 보호대역워드로 사용되도록 포함하는 것을 특징으로 하는 통신시스템.
  17. 제 11항에 있어서,
    상기 선택된 코드워드는 제1보호대역워드와 제2보호대역워드를 포함하는 적어도 2개의 보호대역워드를 포함하고, 비디오 코드워드의 제2버스트는 초기워드를 가지고, 비디오 코드워드의 제2버스트의 초기워드는 제1보호대역워드이고, 선택된 코드워드의 버스트는 초기워드를 가지고, 선택된 코드워드의 버스트의 초기워드는 제2보호대역워드인 것을 특징으로 하는 통신시스템.
  18. 제 17항에 있어서,
    상기 시리얼링크는 TMDS링크이고, 상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 하나의 천이-최소화된 TMDS코드워드가 상기 제2보호대역워드로만 사용되고 다른 천이-최소화된 TMDS코드워드가 상기 제1보호대역워드로 사용되고 또한 상기 선택된 코드워드의 버스트에서 선택된 코드워드의 하나로 사용되도록 포함하는 것을 특징으로 하는 통신시스템.
  19. 제 1항에 있어서,
    상기 입력데이터는 보조데이터이고, 상기 송신기는 비디오데이터를 수신하기 위해서 연결되고, 비디오데이터를 인코딩하여 비디오데이터의 시퀀스를 생성하도록 구성되고, 상기 송신기는 비디오 코드워드의 제1버스트와 이어지는 선택된 코드워드의 적어도 2개의 버스트와 이어지는 비디오 코드워드의 제2버스트를 시리얼링크상에서 수신기로 전송하도록 구성되고, 상기 비디오 코드워드 각각은 코드워드의 전체 세트의 구성원이고 적어도 하나의 비디오 코드워드는 로버스트 서브세트의 구성원이 아닌 것을 특징으로 하는 통신시스템.
  20. 제 19항에 있어서,
    상기 송신기는 제어 비트를 수신하기 위해서 연결되고, 제어비트를 인코딩하여 인코딩된 제어워드의 버스트를 생성하도록 구성되고, 인코딩된 제어워드의 제1버스트를 비디오 코드워드의 제1버스트와 선택된 코드워드의 버스트 사이에, 인코딩된 제어워드의 제2버스트를 선택된 코드워드의 버스트와 비디오 코드워드의 제2버스트 사이에, 시리얼링크상에서 수신기로 전송하도록 구성된 것을 특징으로 하는 통신시스템.
  21. 제 20항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트 중 첫 번째 것은 초기워드를 가지고, 상기 초기워드는 상기 보호대역워드인 것을 특징으로 하는 통신시스템.
  22. 제 20항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트 중 첫 번째 것은 초기워드의 세트를 가지고, 상기 초기워드의 세트는 상기 보호대역워드인 것을 특징으로 하는 통신시스템.
  23. 제 1항에 있어서,
    상기 시리얼링크는 TMDS링크인 것을 특징으로 하는 통신시스템.
  24. 제 23항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른 TMDS 코드워드로 구성되고, 적어도 하나의 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 통신시스템.
  25. 제 23항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 적어도 하나의 천이-최소화된 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 통신시스템.
  26. 제 1항에 있어서,
    상기 선택된 코드워드 각각은 L-비트 바이너리 워드이고, 적어도 선택된 코드워드의 서브세트 각각은 입력 데이터의 M-비트 워드를 나타내고, M이 L보다 작은 것을 특징으로 하는 통신시스템.
  27. 제 26항에 있어서, L=10, M=4인 것을 특징으로 하는 통신시스템.
  28. 제 26항에 있어서,
    상기 송신기는 입력 데이터의 소스워드를 수신하기 위해서 연결되고, 각각의 소스워드는 N 비트로 구성되고, N이 L보다 작고, N이 M보다 크며, 그리고 송신기는 소스워드를 입력데이터의 M-비트 워드로 묶고 입력데이터의 M-비트 워드 각각을 상기 선택된 코드워드의 하나로 인코딩하기 위해서 구성된 것을 특징으로 하는 통신시스템.
  29. 제 1항에 있어서,
    선택된 코드워드 각각은 L-비트 바이너리 워드이고, 선택된 코드워드의 제1 서브세트는 입력데이터의 M-비트 워드를 나타내고, M이 L보다 작고, 그리고 선택된 코드워드의 제2서브세트는 입력데이터의 N-비트 워드를 나타내고, N이 M보다 작은 것을 특징으로 하는 통신시스템.
  30. 제 29항에 있어서, L=10, M=4 그리고 N=2인 것을 특징으로 하는 통신시스템.
  31. 제 1항에 있어서,
    코드워드의 전체세트는 10-비트의 천이-최소화된 TMDS 코드워드의 세트인 것을 특징으로 하는 통신시스템.
  32. 제 1항에 있어서,
    선택된 코드워드 각각은 L개의 바이너리 비트의 시퀀스를 나타내고, 바람직한 워드는 코드워드당 인접하는 0비트와 인접하는 1비트의 수가 전체세트의 비-바림직한 워드보다 평균적으로 적은 것을 특징으로 하는 통신시스템.
  33. 제 1항에 있어서,
    선택된 코드워드 각각은 바이너리 비트의 서로 다른 시퀀스를 나타내고, 송신기는 선택된 코드워드의 시퀀스를 전압의 상승 및 하강 천이의 시퀀스로 시리얼링크상에서 수신기로 전송하도록 구성되고,
    선택된 코드워드는 상기 선택된 코드워드의 시퀀스의 전송도중에 시리얼링크의 전압 드리프트를 미리 정해진 양으로 제한하여 DC발란싱을 구현하는 비트패턴을 가지는 것
    을 특징으로 하는 통신시스템.
  34. 시리얼링크상에서, 입력데이터를 나타내는 선택된 코드워드의 시퀀스의 전송에서 기인하는 전송된 코드워드를 수신하는 수신기에 있어서,
    선택된 코드워드 각각은 코드워드의 전체세트의 로버스트 서브세트의 구성원이고, 전체세트는 코드워드의 미리 정해진 디스조인트 클러스터를 포함하고, 입력 데이터는 전체 코드워드세트의 코드워드의 전형적인 시퀀스로 인코딩될 수 있고, 선택된 코드워드의 시퀀스는 링크상에서의 전송도중의 심벌-간 간섭에 대해서 코드워드의 전형적인 시퀀스보다 덜 민감하고, 로버스트 서브세트는 전체세트의 바람직한 워드로 구성되고, 전체세트의 코드워드중 바람직한 워드가 아닌 코드워드는 비-바람직한 워드이고, 바람직한 워드 각각은 입력 데이터 값을 나타내고, 클러스터 각각은 적어도 하나의 바람직한 워드로 구성되는 바람직한 워드 세트를 포함하고, 클러스터 중 적어도 하나는 또한 적어도 하나의 비-바람직한 워드를 포함하고, 그리고 각각의 상기 바람직한 워드 세트는 서로 다른 입력 데이터값을 나타내고,
    상기 수신기는,
    전송된 코드워드를 수신하기 위한 링크에 연결되도록 구성된 적어도 하나의 입력; 및
    입력에 연결되고, 클러스터 중 하나의 구성원인 전송된 코드워드 각각을 상기 클러스터중 하나의 바람직한 워드 세트에 의해 결정되는 입력 데이터 값으로 매핑하도록 구성된 회로
    를 포함하는 것을 특징으로 하는 수신기.
  35. 제 34항에 있어서,
    바람직한 워드는, 어떤 클러스터들의 어떤 바람직한 워드와 다른 클러스터들의 어떤 바람직한 워드 사이의 해밍 거리가 한계값을 초과하는 기준을 만족하는 것
    을 특징으로 하는 수신기.
  36. 제 34항에 있어서,
    바람직한 워드는, 어떤 클러스터들의 어떤 바람직한 워드와 다른 클러스터들의 어떤 바람직한 워드 사이의 해밍 거리가 실용적인 정도로 최대화된 기준을 만족하는 것
    을 특징으로 하는 수신기.
  37. 제 34항에 있어서,
    전송된 코드워드와 함께 에러정정 코드블럭이 전송되고,
    상기 수신기는
    상기 에러정정 코드블럭을 사용하여, 적어도 일부의 전송된 코드워드가 어떠한 클러스터의 구성원도 아닌 경우, 에러정정을 수행하도록 구성된 에러정정회로를 포함하고, 바람직한 워드는 다른 클러스터들의 바람직한 워드들 사이의 해밍 거리가 실용적인 정도로 최소화된 기준을 만족하는 것
    을 특징으로 하는 수신기.
  38. 제 34항에 있어서,
    상기 시리얼링크는 TMDS링크이고, 전송된 코드워드는 10-비트 TMDS 코드워드인 것을 특징으로 하는 수신기.
  39. 제 34항에 있어서,
    상기 시리얼링크는 TMDS링크이고, 상기 바람직한 워드는 17개의 서로 다른 TMDS 코드워드로 구성되고, 적어도 하나의 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 수신기.
  40. 제 39항에 있어서,
    상기 바람직한 워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 적어도 하나의 천이-최소화된 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 수신기.
  41. 제 34항에 있어서,
    상기 선택된 코드워드 각각은 L-비트 바이너리 워드인 것을 특징으로 하는 수신기.
  42. 제 34항에 있어서,
    상기 선택된 코드워드 각각은 L-비트 바이너리 워드이고, 적어도 선택된 코드워드의 서브세트 각각은 입력 데이터의 M-비트 워드를 나타내고, M이 L보다 작은 것을 특징으로 하는 수신기.
  43. 제 42항에 있어서, L=10, M=4인 것을 특징으로 하는 수신기.
  44. 제 34항에 있어서,
    선택된 코드워드 각각은 L-비트 바이너리 워드이고, 선택된 코드워드의 제1서브세트는 입력데이터의 M-비트 워드를 나타내고, M이 L보다 작고, 그리고 선택된 코드워드의 제2서브세트는 입력데이터의 N-비트 워드를 나타내고, N이 M보다 작은 것을 특징으로 하는 수신기.
  45. 제 34항에 있어서, L=10, M=4 그리고 N=2인 것을 특징으로 하는 수신기.
  46. 제 34항에 있어서,
    선택된 코드워드 각각은 L개의 바이너리 비트의 시퀀스를 나타내고, 바람직한 워드는 코드워드당 인접하는 0비트와 인접하는 1비트의 수가 전체세트중 비-바람직한 워드보다 평균적으로 적은 것을 특징으로 하는 수신기.
  47. (a) 링크상에서 선택된 코드워드의 시퀀스를 전송하는 단계로, 선택된 코드워드의 시퀀스는 전체 세트의 코드워드의 전형적인 코드워드의 시퀀스로 인코딩될 수 있는 입력 데이터를 나타내고, 선택된 코드워드 각각은 전체세트의 로버스트 서브세트의 구성원이고, 상기 전체세트는 코드워드의 미리 정해진 디스조인트 클러스터를 포함하고, 선택된 코드워드의 시퀀스는 링크상에서의 전송도중의 심벌-간 간섭에 대해서 코드워드의 전형적인 시퀀스보다 덜 민감하고, 로버스트 서브세트는 전체세트의 바람직한 워드로 구성되고, 전체세트의 코드워드중 바람직한 워드가 아닌 코드워드는 비-바람직한 워드이고, 바람직한 워드 각각은 입력 데이터 값을 나타내고, 클러스터 각각은 적어도 하나의 바람직한 워드로 구성되는 바람직한 워드세트를 포함하고, 클러스터 중 적어도 하나는 또한 적어도 하나의 비-바람직한 워드를 포함하고, 각각의 상기 바람직한 워드 세트는 서로다른 입력 데이터값을 나타내고,;
    (b) 링크상에서 선택된 코드워드의 시퀀스의 전송의 결과로 발생하는 전송된 코드워드를 수신하는 단계; 및
    (c) 클러스터 중 하나의 구성원인 전송된 코드워드 각각을 상기 클러스터 중 하나의 바람직한 워드 세트에 의해 결정되는 입력데이터값으로 매핑하는 단계;
    를 포함하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  48. 제 47항에 있어서,
    상기 클러스터 각각은, 클러스터의 바람직한 워드 중 하나의, 전송, 또는 전송 및 디코딩에서의 적어도 하나의 비트 에러의 결과로 생성될 수 있는, 적어도 하나의 비-바람직한 워드를 포함하는 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법
  49. 제 47항에 있어서,
    상기 바람직한 워드 세트 각각은 단 하나의 바람직한 워드로만 구성된 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  50. 제 49항에 있어서,
    상기 클러스터 각각은, 클러스터의 바람직한 워드의, 전송, 또는 전송 및 디코딩에서의 적어도 하나의 비트 에러의 결과로 생성될 수 있는, 적어도 하나의 비-바람직한 워드를 또한 포함하는 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  51. 제 47항에 있어서,
    바람직한 워드는, 어떤 클러스터들의 어떤 바람직한 워드와 다른 클러스터들의 어떤 바람직한 워드 사이의 해밍 거리가 한계값을 초과하는 기준을 만족하는 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  52. 제 47항에 있어서,
    바람직한 워드는, 서로 다른 클러스터들의 바람직한 워드 사이의 해밍 거리가 실용적인 정도로 최대화된 기준을 만족하는 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  53. 제 47항에 있어서,
    시리얼링크상에서 선택된 코드워드의 시퀀스와 함께 에러정정 코드블럭을 전송하는 단계; 및
    상기 에러정정 코드블럭을 사용하여, 적어도 일부의 수신된 코드워드가 어떠한 클러스터의 구성원도 아닌 경우, 에러정정을 수행하는 단계로, 바람직한 워드는다른 클러스터들의 바람직한 워드들 사이의 해밍 거리가 실용적인 정도로 최소화된 기준을 만족하는 것;
    을 포함하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  54. 제 47항에 있어서,
    클러스터 중 하나의 비-바람직한 워드인 수신된 코드워드 각각은 에러-포함하는 워드이고,
    단계(c)에서 상기 에러-포함하는 워드 각각을 상기 클러스터 중 하나의 바람직한 워드 세트에 의해 결정되는 입력데이터값으로 매핑하여 에러 정정을 구현하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  55. 제 47항에 있어서,
    상기 입력 데이터는 보조데이터이고,
    단계 (c)는 비디오데이터를 나타내는 비디오 코드워드의 제1버스트와 이어지는 선택된 코드워드의 버스트와 이어지는 비디오데이터를 나타내는 비디오 코드워드의 제2버스트를 시리얼링크상에서 수신기로 전송하는 단계를 포함하고, 상기 비디오 코드워드 각각은 코드워드의 전체세트의 구성원이고 적어도 하나의 비디오 코드워드는 로버스트 서브세트의 구성원이 아닌 것
    을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  56. 제 55항에 있어서,
    단계 (a)는 인코딩된 제어워드의 제1버스트를 비디오 코드워드의 제1버스트와 선택된 코드워드의 버스트 사이에, 인코딩된 제어워드의 제2버스트를 선택된 코드워드의 버스트와 비디오 코드워드의 제2버스트 사이에 링크상에서 전송하는 단계;
    를 포함하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  57. 제 56항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 초기워드를 가지고, 상기 초기워드는 상기 보호대역워드인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  58. 제 56항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 초기워드의 세트를 가지고, 상기 초기워드의 세트의 각각의 워드는 상기 보호대역워드중 하나인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  59. 제 56항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 최종워드를 가지고, 상기 최종워드는 상기 보호대역워드인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  60. 제 56항에 있어서,
    상기 선택된 코드워드는 적어도 하나의 보호대역워드를 포함하고, 선택된 코드워드의 버스트는 최종워드의 세트를 가지고, 상기 최종워드의 세트의 각각의 워드는 상기 보호대역워드중 하나인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  61. 제 56항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 적어도 하나의 천이-최소화된 TMDS코드워드를 보호대역워드로 사용되도록 포함하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  62. 제 56항에 있어서,
    상기 선택된 코드워드는 제1보호대역워드와 제2보호대역워드를 포함하는 적어도 2개의 보호대역워드를 포함하고, 비디오 코드워드의 제2버스트는 초기워드를 가지고, 비디오 코드워드의 제2버스트의 초기워드는 제1보호대역워드이고, 선택된 코드워드의 버스트는 초기워드를 가지고, 선택된 코드워드의 버스트의 초기워드는제2보호대역워드인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  63. 제 62항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 하나의 천이-최소화된 TMDS코드워드가 상기 제2보호대역워드로만 사용되고 다른 천이-최소화된 TMDS코드워드가 상기 제1보호대역워드로 사용되고 또한 상기 선택된 코드워드의 버스트에서 선택된 코드워드의 하나로 사용되도록 포함하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  64. 제 47항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른 TMDS 코드워드로 구성되고, 적어도 하나의 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  65. 제 47항에 있어서,
    상기 선택된 코드워드는 17개의 서로 다른, 천이-최소화된 TMDS 코드워드로 구성되고, 적어도 하나의 천이-최소화된 TMDS코드워드를 보호대역워드로만 사용되도록 포함하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  66. 제 47항에 있어서,
    상기 선택된 코드워드 각각은 L-비트 바이너리 워드인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  67. 제 47항에 있어서,
    상기 선택된 코드워드 각각은 L-비트 바이너리 워드이고, 적어도 선택된 코드워드의 서브세트 각각은 입력 데이터의 M-비트 워드를 나타내고, M이 L보다 작은 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  68. 제 67항에 있어서, L=10, M=4인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  69. 제 67항에 있어서,
    입력 데이터의 소스워드를 제공하는 단계로, 각의 소스워드는 N 비트로 구성되고, N이 L보다 작고, N이 M보다 크며, ; 및
    소스워드를 입력데이터의 M-비트 워드로 묶는 단계와 입력데이터의 M-비트 워드 각각을 상기 선택된 코드워드의 하나로 인코딩하는 단계를 포함하는 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  70. 제 47항에 있어서,
    선택된 코드워드 각각은 L-비트 바이너리 워드이고, 선택된 코드워드의 제1 서브세트는 입력데이터의 M-비트 워드를 나타내고, M이 L보다 작고, 그리고 선택된 코드워드의 제2서브세트는 입력데이터의 N-비트 워드를 나타내고, N이 M보다 작은 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  71. 제 70항에 있어서, L=10, M=4 그리고 N=2인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  72. 제 47항에 있어서,
    전체 코드워드 세트는 10-비트의 천이-최소화된 TMDS 코드워드의 세트인 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  73. 제 47항에 있어서,
    선택된 코드워드 각각은 L개의 바이너리 비트의 시퀀스를 나타내고, 바람직한 코드워드는 코드워드당 인접하는 0비트와 인접하는 1비트의 수가 전체세트의 비-바람직한 워드보다 평균적으로 적은 것을 특징으로 하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  74. 제 54항에 있어서,
    선택된 코드워드 각각은 바이너리 비트의 서로 다른 시퀀스를 나타내고,
    단계(a)는
    선택된 코드워드의 시퀀스를 전압의 상승 및 하강 천이의 시퀀스로 시리얼링크상에서 전송하는 단계로, 선택된 코드워드는 상기 선택된 코드워드의 시퀀스의 전송도중에 시리얼링크의 전압 드리프트를 미리 정해진 양으로 제한하여 DC발란싱을 구현하는 비트패턴을 가지는 것을 특징으로 하는 단계;
    를 추가적으로 포함하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
  75. 제 47항에 있어서,
    상기 입력데이터는 보조데이터이고,
    단계(a)는,
    비디오데이터를 나타내는 비디오 코드워드의 제1버스트와 이어지는 선택된 코드워드의 적어도 2개의 버스트와 이어지는 비디오데이터를 나타내는 비디오 코드워드의 제2버스트를 링크상에서 전송하는 단계로, 상기 비디오 코드워드 각각은 전체 코드워드 세트의 구성원이고 적어도 하나의 비디오 코드워드는 로버스트 서브세트의 구성원이 아닌 것을 특징으로 하는 단계;
    를 추가적으로 포함하는 시리얼링크상에서 인코딩된 데이터를 전송하는 방법.
KR1020037001443A 2001-09-12 2002-09-11 한 클러스터의 수신 워드들 중 각각의 수신 워드를 단일의 전송 워드로 매핑하는 기능을 사용하여 시리얼 링크를 통한 전송시 심벌 간의 간섭 효과를 감소시키기 위한 방법 및 시스템 KR100568950B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US09/954,663 US7558326B1 (en) 2001-09-12 2001-09-12 Method and apparatus for sending auxiliary data on a TMDS-like link
US09/954,663 2001-09-12
US10/036,234 US7359437B2 (en) 2001-09-12 2001-12-24 Encoding method and system for reducing inter-symbol interference effects in transmission over a serial link
US10/036,234 2001-12-24
US10/095,422 US7257163B2 (en) 2001-09-12 2002-03-12 Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word
US10/095,422 2002-03-12
PCT/US2002/028804 WO2003024067A1 (en) 2001-09-12 2002-09-11 Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word

Publications (2)

Publication Number Publication Date
KR20040028595A true KR20040028595A (ko) 2004-04-03
KR100568950B1 KR100568950B1 (ko) 2006-04-10

Family

ID=25495762

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020037001442A KR100552833B1 (ko) 2001-09-12 2002-09-11 시리얼 링크를 통한 전송시 심벌 간의 간섭 효과를 감소시키기 위한 인코딩 방법 및 시스템
KR1020037001443A KR100568950B1 (ko) 2001-09-12 2002-09-11 한 클러스터의 수신 워드들 중 각각의 수신 워드를 단일의 전송 워드로 매핑하는 기능을 사용하여 시리얼 링크를 통한 전송시 심벌 간의 간섭 효과를 감소시키기 위한 방법 및 시스템

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020037001442A KR100552833B1 (ko) 2001-09-12 2002-09-11 시리얼 링크를 통한 전송시 심벌 간의 간섭 효과를 감소시키기 위한 인코딩 방법 및 시스템

Country Status (3)

Country Link
US (2) US7558326B1 (ko)
KR (2) KR100552833B1 (ko)
AT (2) ATE398378T1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100757651B1 (ko) * 2005-06-24 2007-09-10 실리콘 이미지, 인크.(델라웨어주 법인) 직렬 링크를 통해 n-비트 비디오 데이터를 전송하는 방법및 시스템
KR20190101191A (ko) * 2018-02-22 2019-08-30 한국전자통신연구원 데이터 패킷의 버스트의 길이에 기초하여 변복조를 수행하는 변복조기 및 상기 복조기가 수행하는 방법

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020163598A1 (en) * 2001-01-24 2002-11-07 Christopher Pasqualino Digital visual interface supporting transport of audio and auxiliary data
US20030160890A1 (en) * 2002-02-26 2003-08-28 Sound Vision, Inc. Presenting electronic images
US7190738B2 (en) * 2002-03-07 2007-03-13 Stmicroelectronics, Inc. Data assisted serial link decoder using oversampling
US7860251B1 (en) * 2002-03-26 2010-12-28 National Semiconductor Corporation Encryption-decryption circuit and method of operation
US7394406B2 (en) * 2002-12-17 2008-07-01 Broadcom Corporation Method and system for generating high definition multimedia interface (HDMI) codewords using a TMDS encoder/decoder
US7965837B2 (en) * 2003-04-30 2011-06-21 Sony Corporation Method and system for wireless digital video presentation
US20050135611A1 (en) * 2003-09-19 2005-06-23 Robert Hardacker Method and system for wireless digital communication
US7562379B2 (en) * 2003-12-22 2009-07-14 Sony Corporation Method and system for wireless digital multimedia presentation
CN101171838B (zh) 2005-04-28 2011-06-01 松下电器产业株式会社 口形同步修正装置及口形同步修正方法
US7768507B2 (en) * 2005-11-17 2010-08-03 Ati Technologies Ulc Methods and apparatus for driving a display device
TW200739313A (en) * 2006-04-04 2007-10-16 Benq Corp Method and electronic device for communicating with external module
RU2372741C2 (ru) 2006-05-16 2009-11-10 Сони Корпорейшн Система передачи данных, устройство передачи, устройство приема, способ передачи данных и программа
US7511762B2 (en) * 2006-09-06 2009-03-31 Amimon Ltd. Generation of a frame synchronized clock for a wireless video receiver
WO2008056686A1 (en) * 2006-11-07 2008-05-15 Sony Corporation Communication system, transmitting device, receiving device, communication method, program and communication cable
US8565337B2 (en) * 2007-02-07 2013-10-22 Valens Semiconductor Ltd. Devices for transmitting digital video and data over the same wires
US20080204373A1 (en) * 2007-02-27 2008-08-28 Leroy Sutton R-port assembly for video signal format conversion
DE102007017003B4 (de) * 2007-04-11 2012-03-01 Inova Semiconductors Gmbh Verfahren und Vorrichtung zum Übertragen von unabhängigen Datenströmen über eine serielle Übertragungsstrecke unter Verwendung von Zeitmultiplex
JP4324244B2 (ja) * 2007-04-17 2009-09-02 パナソニック株式会社 通信システム
US7460035B1 (en) * 2007-07-03 2008-12-02 Sun Microsystems, Inc. Balanced code with opportunistically reduced transitions
US8332680B2 (en) * 2007-08-13 2012-12-11 Rambus Inc. Methods and systems for operating memory in two modes
US8855192B2 (en) 2007-09-05 2014-10-07 Amimon, Ltd. Device, method and system for transmitting video data between a video source and a video sink
JP5242111B2 (ja) * 2007-10-02 2013-07-24 株式会社ソニー・コンピュータエンタテインメント 送信装置、画像データ送信方法、受信装置および受信装置における画像表示方法
US8049761B1 (en) * 2007-11-08 2011-11-01 Nvidia Corporation Bus protocol for transferring pixel data between chips
US8441575B2 (en) * 2007-12-27 2013-05-14 Himax Technologies Limited Audio clock regenerator with precise parameter transformer
JP4990315B2 (ja) * 2008-03-20 2012-08-01 アナパス・インコーポレーテッド ブランク期間にクロック信号を伝送するディスプレイ装置及び方法
CN101960847A (zh) * 2008-04-11 2011-01-26 松下电器产业株式会社 发送装置及接收装置
JP4315462B1 (ja) * 2008-04-23 2009-08-19 シリコンライブラリ株式会社 オーディオ参照クロックを生成可能な受信装置
US8081705B2 (en) * 2008-06-27 2011-12-20 Crestron Electronics Inc. Digital video physical layer using a multi-level data code
US8261156B2 (en) * 2008-09-11 2012-09-04 Lsi Corporation Methods and apparatuses for correcting errors in data streams
WO2010054674A1 (en) * 2008-11-13 2010-05-20 Verigy (Singapore) Pte.Ltd. Apparatus for determining a position in a bit sequence
US20110041577A1 (en) * 2009-08-18 2011-02-24 Jack Zhang Rekeyable lock assembly with blown cylinder protection
US8739587B2 (en) * 2009-08-18 2014-06-03 Kwikset Corporation Rekeyable lock assembly with blown cylinder protection
EP2539895B1 (en) 2010-02-22 2014-04-09 Dolby Laboratories Licensing Corporation Video display with rendering control using metadata embedded in the bitstream.
JP4881454B2 (ja) * 2010-03-17 2012-02-22 株式会社東芝 電子機器
US8750176B2 (en) 2010-12-22 2014-06-10 Apple Inc. Methods and apparatus for the intelligent association of control symbols
TWI516124B (zh) * 2010-12-29 2016-01-01 友達光電股份有限公司 螢幕顯示資訊的顯示方法
GB2489724B (en) * 2011-04-06 2017-08-02 Nexus Electronics Ltd Digital video transmission
US9247157B2 (en) * 2011-05-13 2016-01-26 Lattice Semiconductor Corporation Audio and video data multiplexing for multimedia stream switch
TWI450525B (zh) * 2011-07-25 2014-08-21 Acer Inc 偵測無線傳輸錯誤之方法
DE112012003389A5 (de) * 2011-08-16 2014-04-30 Silicon Line Gmbh Schaltungsanordnung und Verfahren zum Kodieren und/oder Dekodieren
JP5232319B2 (ja) 2011-10-20 2013-07-10 株式会社東芝 通信装置及び通信方法
KR20130044976A (ko) * 2011-10-25 2013-05-03 삼성전기주식회사 스테레오카메라의 동기화 장치, 스테레오카메라 및 스테레오카메라의 동기화 방법
CN103124348A (zh) * 2011-11-17 2013-05-29 蓝云科技股份有限公司 一种在无线视频/音频数据传输中使用的预测丢帧方法
EP3343908B1 (en) 2011-11-25 2020-11-18 Maxell, Ltd. Image reception device
US9425948B2 (en) * 2012-01-26 2016-08-23 Qualcomm Incorporated Techniques for synchronizing a clock of a wired connection when transmitted over a wireless channel
US9838226B2 (en) 2012-01-27 2017-12-05 Apple Inc. Methods and apparatus for the intelligent scrambling of control symbols
US8897398B2 (en) 2012-01-27 2014-11-25 Apple Inc. Methods and apparatus for error rate estimation
WO2013150705A1 (ja) * 2012-04-03 2013-10-10 パナソニック株式会社 映像データ送信装置及び受信装置
JP5390667B2 (ja) 2012-06-11 2014-01-15 株式会社東芝 映像送信機器及び映像受信機器
CN104521228B (zh) * 2012-09-21 2017-12-19 松下知识产权经营株式会社 发送装置、接收装置、传输系统以及传输方法
US9450790B2 (en) 2013-01-31 2016-09-20 Apple Inc. Methods and apparatus for enabling and disabling scrambling of control symbols
US8917194B2 (en) 2013-03-15 2014-12-23 Apple, Inc. Methods and apparatus for context based line coding
US9210010B2 (en) 2013-03-15 2015-12-08 Apple, Inc. Methods and apparatus for scrambling symbols over multi-lane serial interfaces
US20140297882A1 (en) * 2013-04-01 2014-10-02 Microsoft Corporation Dynamic track switching in media streaming
GB2529951B (en) * 2013-05-16 2017-03-29 Lattice Semiconductor Corp Encoding guard band data for transmission via a communications interface utilizing transition-minimized differential signaling (TMDS) coding
JP5606638B1 (ja) 2013-06-14 2014-10-15 株式会社東芝 映像送信装置、映像表示装置、及び映像送信方法
WO2015133249A1 (ja) * 2014-03-03 2015-09-11 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
CN106664441A (zh) * 2014-07-07 2017-05-10 汤姆逊许可公司 根据元数据增强视频内容
TWI705666B (zh) * 2015-06-15 2020-09-21 日商新力股份有限公司 傳送裝置、接收裝置、通信系統
EP3443675A4 (en) * 2016-04-04 2019-11-20 Lattice Semiconductor Corporation FORWARD ERROR CORRECTION AND ASYMMETRIC CODING OF A VIDEO DATA TRANSMISSION THROUGH A MULTIMEDIA CONNECTION
KR20180000199A (ko) * 2016-06-22 2018-01-02 에스케이하이닉스 주식회사 크로스 토크를 보상할 수 있는 인터페이스 회로, 이를 포함하는 반도체 장치 및 시스템
KR102461090B1 (ko) 2016-07-11 2022-11-02 에스케이하이닉스 주식회사 반도체 메모리 장치
CN106331846B (zh) * 2016-08-17 2019-04-12 青岛海信电器股份有限公司 音频透传的方法及装置
CN107230474B (zh) * 2017-04-18 2020-06-09 福建天泉教育科技有限公司 一种合成音频数据的方法及系统
US20190057639A1 (en) * 2017-08-17 2019-02-21 Shenzhen China Star Optoelectronics Semiconductor Display Technology Co., Ltd. Display device and driving method thereof
US11176906B2 (en) * 2018-05-24 2021-11-16 Nxp B.V. System and method to identify a serial display interface malfunction and provide remediation
JP7290317B2 (ja) * 2019-08-28 2023-06-13 ザインエレクトロニクス株式会社 映像信号送信装置、映像信号受信装置および映像信号送受信システム
CN111669648B (zh) * 2020-06-19 2022-03-25 艾索信息股份有限公司 一种视频倍频的方法
TWI763457B (zh) * 2021-04-23 2022-05-01 新唐科技股份有限公司 波形產生電路

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1250908A (ko) * 1968-12-13 1971-10-27
US4309694A (en) * 1980-03-27 1982-01-05 Bell Telephone Laboratories, Incorporated Zero disparity coding system
JPS5875950A (ja) * 1981-10-31 1983-05-07 Sony Corp 2値データの伝送方法
PT77084B (en) * 1982-07-23 1986-01-27 British Telecomm Improvements relating to data transmission
DE3412986A1 (de) * 1984-04-06 1985-10-24 Standard Elektrik Lorenz Ag, 7000 Stuttgart Digitales nachrichtenuebertragungssystem mit integrierter uebertragung einer zusatzinformation mit geringer bitfolgefrequenz
US5101274A (en) * 1987-08-10 1992-03-31 Canon Kabushiki Kaisha Digital signal recording apparatus time-division multiplexing video and audio signals
FR2651629B1 (fr) 1989-09-05 1991-11-15 France Etat Procede de multiplexage d'un signal de sequences sonores dans un signal d'image video analogique et systeme de distribution d'images fixes sonorisees.
JP3060507B2 (ja) 1990-09-11 2000-07-10 ソニー株式会社 ディジタル信号伝送装置
US5625644A (en) * 1991-12-20 1997-04-29 Myers; David J. DC balanced 4B/8B binary block code for digital data communications
GB2295753B (en) 1992-09-17 1996-10-16 Sony Uk Ltd Data coding
US5506932A (en) 1993-04-16 1996-04-09 Data Translation, Inc. Synchronizing digital audio to digital video
JP3546889B2 (ja) 1993-08-24 2004-07-28 ソニー株式会社 多重化伝送方法および装置
US5541662A (en) 1994-09-30 1996-07-30 Intel Corporation Content programmer control of video and data display using associated data
KR100188084B1 (ko) 1995-05-12 1999-06-01 김광호 비디오 신호선을 이용한 오디오 데이타의 전달 장치 및 그 방법
US5557278A (en) * 1995-06-23 1996-09-17 Northrop Grumman Corporation Airport integrated hazard response apparatus
KR0170681B1 (ko) 1995-08-09 1999-03-20 김광호 Rll코드 데이터를 위한 부호화 및 복호화장치
US5905769A (en) 1996-05-07 1999-05-18 Silicon Image, Inc. System and method for high-speed skew-insensitive multi-channel data transmission
US5974464A (en) * 1995-10-06 1999-10-26 Silicon Image, Inc. System for high speed serial video signal transmission using DC-balanced coding
FI955266A (fi) 1995-11-02 1997-05-03 Nokia Telecommunications Oy Menetelmä ja laitteisto viestien välittämiseksi tietoliikennejärjestelmässä
KR0164050B1 (ko) * 1996-03-29 1998-11-16 남창우 비용매상에서 효소를 이용한 에스테르 화합물의 제조방법
US6141693A (en) * 1996-06-03 2000-10-31 Webtv Networks, Inc. Method and apparatus for extracting digital data from a video stream and using the digital data to configure the video stream for display on a television set
US6757913B2 (en) * 1996-07-15 2004-06-29 Gregory D. Knox Wireless music and data transceiver system
US5859669A (en) * 1996-11-26 1999-01-12 Texas Instruments Incorporated System for encoding an image control signal onto a pixel clock signal
JP2001511323A (ja) * 1997-01-30 2001-08-07 フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド 高速シリアルリンク用データ符号器/復号器
US6052072A (en) * 1997-04-01 2000-04-18 Seagate Technology, Inc. System and scheme for maximum transition run length codes with location dependent constraints
US6259957B1 (en) * 1997-04-04 2001-07-10 Cirrus Logic, Inc. Circuits and methods for implementing audio Codecs and systems using the same
US6801575B1 (en) * 1997-06-09 2004-10-05 Sharp Laboratories Of America, Inc. Audio/video system with auxiliary data
US6191822B1 (en) 1997-06-20 2001-02-20 Sony Corporation Method of and apparatus for separating audio and video data from a combined audio/video stream of data
US6314479B1 (en) * 1997-08-04 2001-11-06 Compaq Computer Corporation Universal multi-pin plug and display connector for standardizing signals transmitted between a computer and a display for a PC theatre interconnectivity system
US5987543A (en) * 1997-08-29 1999-11-16 Texas Instruments Incorporated Method for communicating digital information using LVDS and synchronous clock signals
US6507672B1 (en) * 1997-09-10 2003-01-14 Lsi Logic Corporation Video encoder for digital video displays
US6301221B1 (en) * 1997-09-10 2001-10-09 Hewlett-Packard Company Methods and apparatus for encoding data
US5929922A (en) * 1997-10-09 1999-07-27 Mediaone Group, Inc. Method for broadcasting digital audio over television vertical blanking intervals
US5944281A (en) * 1998-03-09 1999-08-31 The United States Of America As Represented By The Secretary Of The Army Dual band millimeter-infrared fiber optics guidance data link
US6141691A (en) 1998-04-03 2000-10-31 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements
US6115930A (en) 1998-06-11 2000-09-12 Fuji Photo Film Co., Ltd. Method and laminated member for measuring gap dimension
US6463092B1 (en) 1998-09-10 2002-10-08 Silicon Image, Inc. System and method for sending and receiving data signals over a clock signal line
US6307543B1 (en) 1998-09-10 2001-10-23 Silicon Image, Inc. Bi-directional data transfer using two pair of differential lines as a single additional differential pair
US6564269B1 (en) * 1998-09-10 2003-05-13 Silicon Image, Inc. Bi-directional data transfer using the video blanking period in a digital data stream
JP4026255B2 (ja) * 1998-12-18 2007-12-26 ソニー株式会社 データ伝送方法及び装置
US6185250B1 (en) 1999-03-10 2001-02-06 Lucent Technologies Inc. Training of level learning modems
GB2350039B (en) * 1999-03-17 2004-06-23 Adder Tech Ltd Computer signal transmission system
US6241778B1 (en) 1999-06-18 2001-06-05 Lucent Technologies Inc. Methods and apparatus for implementing run-length limited and maximum transition run codes
US6775328B1 (en) * 1999-08-11 2004-08-10 Rambus Inc. High-speed communication system with a feedback synchronization loop
US6564003B2 (en) * 1999-11-04 2003-05-13 Xm Satellite Radio Inc. Method and apparatus for composite data stream storage and playback
KR20010102178A (ko) * 1999-12-17 2001-11-15 이데이 노부유끼 데이터 전송 장치 및 데이터 전송 방법, 데이터 수신 장치및 데이터 수신 방법
US20020019984A1 (en) * 2000-01-14 2002-02-14 Rakib Selim Shlomo Headend cherrypicker with digital video recording capability
US6724432B2 (en) * 2000-02-04 2004-04-20 Pelco Apparatus and method for transmitting audio over a dedicated video line
US6643815B1 (en) * 2000-03-30 2003-11-04 International Business Machines Corporation Data compression over communications links which are exposed to occasional errors
US6870831B2 (en) * 2000-05-04 2005-03-22 Pmc-Sierra, Inc. Flexible, self-aligning time and space switch fabrics
US6442328B1 (en) * 2000-05-31 2002-08-27 Keen Personal Media, Inc. Digital video recorder connectable to an auxiliary interface of a set-top box that provides video data stream to a display device based on selection between recorded video signal received from the dig
US7698723B2 (en) * 2000-12-28 2010-04-13 At&T Intellectual Property I, L.P. System and method for multimedia on demand services
US20020163598A1 (en) * 2001-01-24 2002-11-07 Christopher Pasqualino Digital visual interface supporting transport of audio and auxiliary data
US7161998B2 (en) * 2001-01-24 2007-01-09 Broadcom Corporation Digital phase locked loop for regenerating the clock of an embedded signal
US6947598B2 (en) * 2001-04-20 2005-09-20 Front Porch Digital Inc. Methods and apparatus for generating, including and using information relating to archived audio/video data
US6912008B2 (en) * 2001-06-08 2005-06-28 Texas Instruments Incorporated Method of adding data to a data communication link while retaining backward compatibility
US6903780B2 (en) * 2001-06-08 2005-06-07 Texas Instruments Incorporated Method of expanding high-speed serial video data providing compatibility with a class of DVI receivers
US7283567B2 (en) * 2001-06-22 2007-10-16 Airbiquity Inc. Network delay identification method and apparatus
US20030014755A1 (en) * 2001-07-13 2003-01-16 Williams Marvin Lynn Method and system for processing correlated audio-video segments with digital signatures within a broadcast system
US6914597B2 (en) * 2001-10-17 2005-07-05 Hewlett-Packard Development Company, L.P. System for bi-directional video signal transmission

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100757651B1 (ko) * 2005-06-24 2007-09-10 실리콘 이미지, 인크.(델라웨어주 법인) 직렬 링크를 통해 n-비트 비디오 데이터를 전송하는 방법및 시스템
KR20190101191A (ko) * 2018-02-22 2019-08-30 한국전자통신연구원 데이터 패킷의 버스트의 길이에 기초하여 변복조를 수행하는 변복조기 및 상기 복조기가 수행하는 방법

Also Published As

Publication number Publication date
KR100568950B1 (ko) 2006-04-10
ATE398379T1 (de) 2008-07-15
KR100552833B1 (ko) 2006-02-21
US20030048851A1 (en) 2003-03-13
US7359437B2 (en) 2008-04-15
KR20040041525A (ko) 2004-05-17
ATE398378T1 (de) 2008-07-15
US7558326B1 (en) 2009-07-07

Similar Documents

Publication Publication Date Title
US7257163B2 (en) Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word
KR100568950B1 (ko) 한 클러스터의 수신 워드들 중 각각의 수신 워드를 단일의 전송 워드로 매핑하는 기능을 사용하여 시리얼 링크를 통한 전송시 심벌 간의 간섭 효과를 감소시키기 위한 방법 및 시스템
US8378860B2 (en) Method and system for generating high definition multimedia interface (HDMI) codewords using a TMDS encoder/decoder
US6914637B1 (en) Method and system for video and auxiliary data transmission over a serial link
US6897793B1 (en) Method and apparatus for run length limited TMDS-like encoding of data
US10942886B2 (en) Data transmission method and data transmission system
CA2466463A1 (en) Method and system for video and auxiliary data transmission over a serial link
US9262988B2 (en) Radio frequency interference reduction in multimedia interfaces
CA2428525C (en) Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word
US7363575B2 (en) Method and system for TERC4 decoding using minimum distance rule in high definition multimedia interface (HDMI) specifications
US7991096B1 (en) Data sampling method and apparatus using through-transition counts to reject worst sampling position
US20030002585A1 (en) Method of encoding video data for serial transmission
JP4533111B2 (ja) 送信装置および受信装置
CA2454452A1 (en) Method and system for reducing inter-symbol interference effects in transmission over a serial link with mapping of each word in a cluster of received words to a single transmitted word
JP3880585B2 (ja) 誤り訂正復号化装置、誤り訂正復号化方法、誤り訂正符号化・復号化システム、および、誤り訂正符号化・復号化方法
KR101605181B1 (ko) 에이치디엠아이/엠에이치엘 리시버에서 제어신호 전송오류 복구 방법

Legal Events

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

Payment date: 20130322

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140324

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170329

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180327

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190322

Year of fee payment: 14