KR101565561B1 - 직렬 스트림 내에서의 견고한 제어 및 식별 - Google Patents

직렬 스트림 내에서의 견고한 제어 및 식별 Download PDF

Info

Publication number
KR101565561B1
KR101565561B1 KR1020097017730A KR20097017730A KR101565561B1 KR 101565561 B1 KR101565561 B1 KR 101565561B1 KR 1020097017730 A KR1020097017730 A KR 1020097017730A KR 20097017730 A KR20097017730 A KR 20097017730A KR 101565561 B1 KR101565561 B1 KR 101565561B1
Authority
KR
South Korea
Prior art keywords
bit
words
control
serial
data
Prior art date
Application number
KR1020097017730A
Other languages
English (en)
Other versions
KR20090122431A (ko
Inventor
콜리스 큐. 카터
니콜라스 제이. 코니
제임스 알. 굿맨
Original Assignee
에이티아이 테크놀로지스 유엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에이티아이 테크놀로지스 유엘씨 filed Critical 에이티아이 테크놀로지스 유엘씨
Publication of KR20090122431A publication Critical patent/KR20090122431A/ko
Application granted granted Critical
Publication of KR101565561B1 publication Critical patent/KR101565561B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • 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
    • H04L25/4906Transmitting 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 using binary codes
    • H04L25/4908Transmitting 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 using binary codes using mBnB codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2602Signal structure
    • H04L27/2605Symbol extensions, e.g. Zero Tail, Unique Word [UW]
    • H04L27/2607Cyclic extensions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/0091Signaling for the administration of the divided path
    • H04L5/0092Indication of how the channel is divided
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4122Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4367Establishing a secure communication between the client and a peripheral device or smart card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • H04N7/52Systems for transmission of a pulse code modulated video signal with one or more other pulse code modulated signals, e.g. an audio signal or a synchronizing signal
    • 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/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L2007/045Fill bit or bits, idle words

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Communication Control (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Television Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

{k1-k2-k2-k1} 형태를 취하는 제어 심볼들이 m 비트 데이터 워드들을 포함하는 직렬 스트림 내에 삽입된다. k1과 k2는 각각 상기 m 비트 데이터 워드들과는 다른 미리 정해진 m 비트 제어 워드들이다. k1과 k2 사이의 해밍 거리는 적어도 2이다. 그러한 제어 심볼들은 심볼 또는 상기 심볼을 직전 또는 직후의 데이터 워드에 1 비트 에러가 존재할 경우에 확실하게 검출될 수 있다. m 비트 워드들은 8B/10B 인코딩된 데이터 도는 정의된 제어 워드들일 수 있다. 제어 심볼들은 데이터 식별, 스트림 동기화, 송신기/수신기 동기화, 또는 다른 제어 신호를 위하여 사용될 수 있다.

Description

직렬 스트림 내에서의 견고한 제어 및 식별{ROBUST CONTROL/DELINEATION IN SERIAL STREAMS}
본 발명은 일반적으로 직렬 스트림(serial stream)에 관한 것이며, 보다 상세하게는 데이터를 식별하고 스트림 데이터를 동기화하기에 적합한 개선된 식별(delineation) 및 제어 심볼(control symbol)들에 관한 것이다.
정보의 디지털 프로세싱 및 표현은 근래에 전자 제품들 및 PC 산업에서 광범위하게 사용된다. 비디오, 오디오 및 텍스트는 이제 다양한 애플리케이션들에서 디지털로 처리되고 표현된다.
특히, 디지털 디스플레이 단말기들이 빠르게 보편화되고 있으며, CRT 모니터와 같은 구식 아날로그 장치들을 급속도로 대체하고 있다. 주어진 디스플레이 장치 내의 두개의 집적 회로들간에, 또는 두개의 외장형 장치들간에 디지털 비디오 전송이 이루어질 수 있다. 컴퓨터와 모니터 사이에서, 셋톱 박스와 텔레비전 디스플레이 사이에서, 그리고 프로젝터와 디스플레이 단말기 사이에서 장치간(device-to-device) 디지털 비디오의 교환이 관찰될 수 있다.
전송 디바이스와 수신기 사이에서 디지털 비디오 데이터의 유연한 전송을 용이하게 하기 위하여, 적절한 통신을 정의하는 다양한 표준들이 발전하고 있다. 현 재의 경향은 하나 이상의 데이터 스트림들을 운반하기 위하여 직렬 링크를 사용한다.
예를 들어, 디스플레이포트(DisplayPort) 표준은 레인(lane)당 10-9보다 크지 않은 비트 에러율(bit error rate)로, 데이터 링크 전체에 고대역(현재는 스트림당 2.7Gbps) 다중-스트림 포워드 전송 채널을 제공한다. 각각의 직렬 스트림은 레인(lane)이라고 지칭된다. 디스플레이포트는 또한 제어 데이터의 교환 및 링크 트레이닝(link training)을 용이하게 하기 위하여, 쌍방향 보조 채널(auxiliary channel) 및 수신기로부터 전송 디바이스로의 인터럽트 요청 라인을 제공한다.
디지털 비디오 프레임의 픽셀들은 모든 레인들에 걸쳐 심볼들을 사용하여 병렬로 송신된다. 수신기는 프레임들을 식별하고, 함께 전송된 서로 다른 레인들로부터의 심볼들을 처리 할 수 있어야 한다. 비디오가 프레임단위로 전송됨에 따라, 동기화 정보를 운반하고 명령들을 제어하는 제어 심볼들이 필요하다. 제어 심볼들에 의해 운반되는 정보는 수직 및 수평 블랭크 인터벌들의 시작과 끝, 스크램블러를 리셋하거나 데이터 링크를 재설정하기 위한 명령들, 그리고/또는 송신기를 수신기에 동기화하기 위해 사용되는 심볼들을 포함할 수 있다.
안타깝게도, 그러한 높은 전송율에서, 스트림 및 제어 심볼들에 에러가 발생할 수 있으며, 이는 수신기와 송신기 사이의 동기화 손실을 야기할 수 있다.
현재의 재동기화 메커니즘은, 보조 채널을 사용하여, 수신기가 송신기에 동기화 손실을 경보(alert)할 것을 요구한다. 그러나, 이는 사용자에게 저품질을 경 험하게 하는, 수용할 수 없는 지연을 수반할 것이다.
따라서, 재동기화, 데이터 식별, 또는 다른 제어에 사용될 수 있는 제어 심볼들의 교환에 대한 보다 견고한 기법이 필요하다.
본 발명의 예로, m 비트 데이터 워드를 포함하는 직렬 스트림내에 {k1-k2-k2-k1} 또는 {k1-k1-k2-k2} 형태의 제어 심볼들이 삽입된다. k1과 k2는 각각 상기 m 비트 데이터 워드들과는 다른, 미리 정의된 m 비트 제어 워드들이다. k1과 k2의 해밍 거리(Hamming distance)는 적어도 2이다. 그러한 제어 심볼들은 심볼, 또는 심볼 직전 또는 직후의 데이터 워드 내에 1비트 에러가 존재하는 경우, 확실하게 검출될 수 있다. 제어 심볼들은 데이터 식별, 스트림 동기화, 송신기/수신기 동기화 또는 다른 제어 신호에 대해 사용될 수 있다.
본 발명의 양상에 따르면, 송신기로부터 수신기로 직렬 스트림을 전송하는 단계와, 상기 스트림내의 m 비트 데이터 워드들은 n 비트 데이터 워드를 나타내며, 여기서 m>n 이고; 상기 직렬 스트림 내에 제어 심볼들을 포함시키는 단계를 포함하는 방법이 제시되며, 여기서 상기 제어 심볼들 각각은 {k1-k2-k2-k1}의 형태를 취하며, k1과 k2는 각각 m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트 제어 워드들이고, k1과 k2의 해밍 거리는 적어도 2이다.
본 발명의 또 다른 양상에 따르면, 수신기로 데이터를 직렬 스트림으로 송신하기 위한 송신기가 제공되며, 상기 데이터는 상기 직렬 스트림 내에서 m 비트 워드들로서 정렬되고, 상기 송신기는 : n 비트 데이터 워드들이 m 비트 데이터 워드들로서 전송되도록 인코딩하기 위한 인코더와, 여기서 m>n이며; 상기 직렬 스트림내에 제어 심볼들을 삽입하기 위하여 인코더와 통신하는 제어기를 포함하며, 상기 제어 심볼들은 {k1-k2-k2-k1}의 형태를 취하고, 여기서 k1과 k2는 각각, m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트 제어 워드들이며, k1과 k2는 적어도 2의 해밍 거리에 의해 분리된다.
본 발명의 또 다른 양상에 따르면, 수신기로 데이터를 다중 직렬 스트림으로 송신하기 위한 송신기가 제공되며, 상기 데이터는 상기 직렬 스트림들 각각에서 m 비트 워드들로서 정렬되며, 상기 송신기는, 각각 상기 직렬 스트림들 중 하나를 인코딩하기 위한 적어도 두개의 레인 인코더들과, 각각의 레인 인코더는 n 비트 데이터 워드들을 m 비트 데이터 워드들로서 전송되도록 하기 위하여 인코딩하기 위한 m/n 인코더와, 여기서 m>n이고; 상기 직렬 스트림들 각각에 제어 심볼들을 삽입하기 위하여 m/n 인코더들과 통신하는 제어기를 포함하며, 상기 제어 심볼들은 {k1-k2-k2-k1}의 형태를 취하고, 여기서 k1과 k2는 각각 m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트 제어 워드들이며, 그리고 여기서 k1과 k2는 적어도 2의 해밍 거리로서 분리된다.
본 발명의 또 다른 양상에 따르면, 직렬 비트스트림을 수신하기 위한 수신기가 제공되며, 상기 수신기는, 직렬 비트스트림을 m 비트 워드들로 변환하기 위한 직렬-병렬(S/P) 변환기와, 여기서 m 비트 워드들은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하며; m 비트 데이터 워드들을 n 비트 데이터 워드들로 디코딩하고 m 비트 제어 워드들을 검출하기 위한, S/P 변환기를 상호연결하는 디코더와, 여기서 m>n 이며; 그리고 {k1-k2-k2-k1} 형태의 제어 심볼들을 검출하기 위하여 디코더와 통신하는 제어기를 포함하며, 여기서 k1과 k2는 각각 적어도 2의 해밍 거리에 의해 이격되는 미리 정해진 m 비트 제어 워드들이다.
본 발명의 또 다른 양상에 따르면, 다중 직렬 스트림들로 데이터를 수신하기 위한 수신기가 제공되며, 상기 데이터는 상기 직렬 스트림들 각각에서 m 비트 워드들로서 정렬되고, 상기 수신기는, 각각 상기 직렬 스트림들 중 하나를 디코딩하기 위한 적어도 두개의 레인 디코더와, 각각의 레인 디코더는, 상기 직렬 비트스트림들 중 하나를 m 비트 워드들로 변환하기 위한 직렬-병렬 변환기(S/P)와, 여기서 상기 m 비트 워드들은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하며; m 비트 데이터 워드들을 n 비트 데이터 워드들로 디코딩하고 m 비트 제어 워드들을 검출하기 위한, 상기 S/P 변환기와 상호연결된 디코더와, 그리고 상기 직렬 스트림들 내에서 {k1-k2-k2-1} 형태의 제어 심볼들을 검출하기 위하여, 상기 디코더들 중 적어도 하나와 통신하는 제어기를 포함하며, 여기서 k1과 k2는 각각 적어도 2의 해밍 거리에 의해 이격되는 미리 정해진 m 비트 제어 워드들이다.
본 발명의 또 다른 양상에 따르면, 송신기로부터 복수의 직렬 스트림들을 수신하는 방법이 제공되며, 상기 방법은, m 비트 제어 워드들과 m 비트 데이터 워드들을 형성하기 위하여 상기 직렬 스트림들 각각을 직렬에서 병렬로 변환하는 단계와; m 비트 데이터 워드들 각각을 n 비트 데이터 워드로서 디코딩하는 단계와; 상기 직렬 스트림들 각각에서 {k1-k2-k2-k1} 형태의 제어 심볼들을 검출하는 단계를 포함하며, 여기서 k1과 k2는 각각 상기 m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트 제어 워드들이며, 여기서 k1과 k2 사이의 해밍 거리는 적어도 2이다.
본 발명의 또 다른 양상에 따르면, 송신기로부터 수신기로 직렬 스트림을 전송하는 단계와, 여기서 상기 스트림 내의 m 비트 데이터 워드들은 n 비트 데이터 워드들을 나타내며, 여기서 m>n이고, 상기 직렬 스트림 내에 제어 심볼들을 포함시키는 단계와, 여기서 상기 제어 심볼들 각각은 {k1-k1-k2-k2} 형태를 취하며, 그리고 여기서 k1과 k2는 각각 상기 m 비트 데이터 워드들과는 다른 미리 정해진 m 비트 제어 워드들이며, k1과 k2의 해밍 거리는 적어도 2이다.
본 발명의 또 다른 양상들과 특징들은 첨부의 도면들과 함께 본 발명의 구체적인 실시예들을 검토하여 당업자들에게 명백해질 것이다.
본 발명의 실시예들은, 도면에서 단지 예로서 도시된다.
도 1은 본 발명의 실시예들의 예로서 적어도 하나의 직렬 스트림을 운반하는 채널에 의하여 서로 연결된, 디지털 송신기 및 수신기의 블록도이다.
도 2는 도 1의 송신기/수신기에서 사용가능한 단일 레인 송신기의 간략화된 개략도이다.
도 3은 도 1의 송신기/수신기에서 사용가능한 상보형(complementary) 단일 레인 수신기의 블록도이다.
도 4는 도 2와 도 3의 송신기/수신기 사이에서 전송되는 스트림의 데이터와 제어 심볼들의 구성을 도시하는 블록도이다.
도 5는 도 3의 수신기에 의한 제어 심볼들의 검출을 도시하는 상태도이다.
도 6은 도 1의 송신기/수신기에서 사용가능한 다중-레인 송신기의 간략화된 개략도이다.
도 7은 도 1의 송신기/수신기에서 사용가능한 다중-레인 수신기의 블록도이다.
도 8은 도 6과 도 7의 송신기/수신기 사이에서 전송되는 다중 레인들에서의 제어 심볼들과 데이터 구성을 도시하는 블록도이다.
도 9은 도 7의 수신기에서 정렬된 스트림들 내의 제어 심볼들 및 데이터 구성을 도시하는 블록도이다.
도 1은 직렬 링크에 의해 서로 연결된 송신기(102/102')와 수신기(104/104')를 포함하는 디지털 송신기/수신기 쌍의 개략적인 블록도이다. 단방향 제1 링크(100)는 송신기(102/102')로부터 수신기(104/104')로 직렬 데이터 스트림들을 제공한다. 보다 명확해질 바와 같이, 송신기(102/102')와 수신기(104/104')는 비디오 및 오디오의 교환에 적합할 것이다. 그러한 송신기(102/102')는 개인용 비디오 레코더, 케이블 텔레비전 또는 지상파 텔레비전 수신기, DVD 재생기, 비디오 게임, 연산 장치등과 같은 디지털 비디오 소스의 일부를 형성할 수 있다. 수신기(104/104')는 LCD, 플라즈마, 표면 전도형 전자 방출 디스플레이(SED), 또는 이와 유사한 판넬과 같은 디스플레이의 일부를 형성할 수 있다.
도시된 바와 같이, 주 포워드 전송 채널(100)이 데이터를 송신하기 위해 사용될 수 있으며, 송신기(102/102')와 수신기(104/104') 사이에서 상태 및 제어 데 이터를 전달하기 위하여, 송신기(102/102')와 수신기(104/104')에 의해 쌍방향 보조 채널(108)이 사용될 수 있다.
도 2는 도 1의 송신기(102)의 개략적인 블록도이다. 표시된 송신기(102)는 단일 직렬 스트림을 송신한다. 보다 명확해질 바와 같이, 도 1의 송신기/수신기는 다중-레인 송신기들로서 쉽게 형성될 수 있다.
이를 위하여, 송신기(102)는 단일 직렬 채널 인코더(130)를 포함한다. 채널 인코더(130)는, 복수의 소스들로부터 데이터를 수신하는 멀티플렉서(112), 제1 채널 데이터 버퍼(110), 제2 채널 데이터 버퍼(106), 그리고 스터프 데이터 소스(108)를 포함한다. 제1 채널 데이터 버퍼(110)는 비디오 픽셀 스트림의 소스와 같은 전송할 데이터의 제1 소스에 의해 데이터가 공급된다. 유사하게, 제2 채널 데이터 버퍼(106)는 적당하게 인코딩된 오디오 데이터를 제공하는 오디오 데이터 소스와 같은 전송할 제2 데이터의 소스에 의해 데이터가 공급된다.
제1 데이터 소스와 제2 데이터 소스로부터의 데이터는 n 비트 데이터 워드들로 제공된다. 표시된 실시예에서, n=8이다.
멀티플렉서(112)의 출력이 암호화 블록(116)에 m 비트 워드들의 스트림을 제공하며, 상기 암호화 블록에서, 불안전할 가능성이 있는 채널상에서의 안전한 전송을 위하여 데이터가 암호화된다. 당업자들이 이해하는 바와 같이, 암호화 블록(116)은, 암호화되지 않은 m 비트의 워드들을 대응하는 m 비트의 암호화된 워드들로 변환하는, 공개 키 암호화 블록 또는 개인 키 암호화 블록일 수 있다.
스크램블러(scrambler)(118)가 암호화 블록(116)의 출력을 수신하여, 스크램 블러(118)의 출력에서 n 비트 데이터 워드들이 어떤 통계적 분포가 되도록, 데이터를 결정적으로(deterministically) 스크램블한다. 스크램블러(118)는, 예를 들어, 데이터 스트림 내의 반복되는 패턴들에 의해 야기되는 전자계 간섭을 감소시킬 수 있다. 스크램블러(118)의 출력은 선택적인(optional) 선입선출(FIFO) 버퍼(120)에 공급되며, 상기 FIFO 버퍼는, FIFO(120)에 의해 출력되는 데이터 워드들의 출력 스트림에 바람직한 지연(또는 스큐(skew))를 야기할 수 있다. FIFO(120)의 출력은 m/n 비트 인코더(122)에 제공된다.
m/n 비트 인코더(122)는 그것의 입력에 제공된 각각의 n 비트 데이터 워드에 대해 m 비트 데이터 워드를 생성한다(여기서, m은 n보다 크다). 인코더(122)는 예를 들어 ANSI 8B/10B 인코더(즉, n=8, m=10)일 수 있다. 출력 10비트 데이터 워드들은 인코딩된 m 비트 데이터 워드들의 시퀀드내의 비트 출력 내의 1과 0이 대략적으로 밸런싱(approximate balance) 되도록 선택된다. DC 밸런스(DC balance)를 유지하기 위하여, 각각의 8 비트 데이터 워드는, 하나가 바이너리 "0" 보다 바이너리 "1"을 더 가지고, 다른 하나가 바이너리 "1"보다 바이너리 "0"을 더 가지는 두개의 가능한 10 비트 데이터 워드들로서 인코딩될 수 있다.
제어 회로(126)는 직렬 스트림 인코더(130)의 동작을 제어하며, 따라서 인코더(130)에 의해 생성되는 직렬 스트림의 전체적인 포맷을 제어한다. 특히, 제어 회로(126)는 버퍼(106, 110) 또는 스터프 소스(108)중 어느것이 어느 시점에 선택되는지를 제어한다. 구체적으로, 제어 회로(126)는 제1 채널 데이터와 제2 채널 데이터가 시분할 다중화(time division multiplexed)되게 해준다. 주 채널과 제2 채널 에 대한 데이터가 없는 경우, 스터프 데이터가 멀티플렉서(110)에 제공된다. 제어 회로(126)는 또한, 하기에서 설명되는 바와 같이, 생성된 스트림내로의 제어 심볼들의 삽입을 제어할 수 있으며, 암호화 블록(116)의 사이클, 스크램블러(118)의 사이클, 그리고 버퍼(120)에 의해 생성되는 스큐를 제어할 수 있다.
m/n 인코더(122)는 추가적으로, 인코더(122)로 제공되는 제어 신호들의 결과로서, 제어 회로(126)에 의해 정의된 m 비트 제어 워드들을 출력한다. 특히, 어써트된 제어 신호가 존재하는 경우, 인코더(122)는, n 비트 데이터 입력들을 인코딩하는데에 사용되지 않고, 따라서 인코딩된 데이터 워드들로부터 쉽게 구별될 수 있는, 예비된 m 비트 워드들을 출력한다. ANSI 8B/10B(본 명세서에 참조로서 포함된 ANSI INCITS 203-1994(R1999): Information Technology-Fibre Channel-Physical and Signaling Interface(FC-PF)(이전에는 ANSI X3.230-1994(R1999))에 기재됨)는 K-코드로 지칭되는 다양한 제어 워드들을 정의한다.
K-코드들의 예는 아래의 표 1에서 제시된다.
입력 ANSI 8B/10B 코드
K.28.0
K.28.1
K.28.2
K.28.3
K.28.4
K.28.5
K.28.6
K.28.7
K.23.7
K.27.7
K.29.7
K.30.7
001111 0100
001111 1001
001111 0101
001111 0011
001111 0010
001111 1010
001111 0110
001111 1000
111010 1000
110110 1000
101110 1000
011110 1000
110000 1011
110000 0110
110000 1010
110000 1100
110000 1101
110000 0101
110000 1001
110000 0111
000101 0111
001001 0111
010001 0111
100001 0111
예상되는 바와 같이, 위의 K-코드들 각각은 두개의 별개의 바이너리 코드들을 나타낸다. 한 바이너리 코드는 스트림 내에 여분의 0이 존재하는 경우에 사용될 수 있으며, 다른 하나는 스트림 내에 여분의 1이 존재하는 경우에 사용될 수 있다.
특히, 제어 회로(126)에 의해 인코더(122)로의 제어 입력들에 제공되는 제어 신호들은, 인코더(122)의 출력이, 인코더(122) 입력에서의 데이터와는 독립적인, 정의된 10 비트 출력들을 생성하게 할 것이다.
병렬-직렬 변환기(parallel to serial converter)(124)는 m 비트 워드들의 스트림을 직렬 바이너리 스트림으로 변환한다. 편리하게, 직렬 변환기(124)에 제공되는 10 비트 워드들의 스트림이 일반적으로 DC 밸런싱(DC balancing)됨에 따라, 병렬-직렬 변환기(124)에 의해 생성되는 결과적인 직렬 비트 스트림 또한 DC 밸런싱된다.
생성된 스트림의 예시적인 포맷이 도 4에 표시된다. 도시된 바와 같이, 스트림은 버퍼(110)로부터의 주 데이터(402)를 포함할 수 있으며, 버퍼(106)로부터의 제2 데이터(408)를 선택적으로 포함할 수 있다. 주 데이터(402) 및 제2 데이터(408)에는 스터핑 데이터 소스(108)를 발신원으로하는 스터핑 데이터(406)가 산재해 있을 수 있다.
도시된 실시예에서, 제1 데이터(402)(그리고 그에 수반한 스터프 데이터)는 워드들의 라인들내에서 조직된다. 라인들은 디지털 비디오 이미지의 라인들에 대응할 수 있다. 라인들은 블랭킹 인터벌에 의해 식별된다. 도 4에서, 라인 N 내의 데이터가 표시된다. 제2의 채널 데이터(408)가 블랭킹 인터벌에서 운반될 수 있다. 제1 데이터(402)는 제어 심볼들 BS(블랭킹 시작)와 BE(블랭킹 끝)에 의해 프레임화된다. 제2 데이터(408)는 제어 심볼들 SS(제2의 시작)과 SE(제2의 끝)에 의해 프레 임화된다. 제어 심볼들 BE와 BS는 각각 블랭킹 인터벌의 시작과 끝을 정의한다. 보다 명확해질 바와 같이, 심볼들 BE 및/또는 BS가, 송신기(102)에 의해 출력된 직렬 스트림 내에서 데이터를 식별하고 수신기(104)를 송신기(102)에 동기화하기 위하여 편리하게 사용될 수 있다. 본 발명의 예시적인 실시예들에서, 에러가 존재하는 경우, 스트림(400) 내의 데이터의 확실한 식별을 위하여, 식별 심볼들이 정해진다.
확실한 검출 및 식별을 할 수 있게 하기 위하여, 4개의 m 비트 제어 워드들로서 BS가 선택된다. 예를 들어, BS는 {k1-k2-k2-k1}로서 나타내어지는 심볼로서 정해질 수 있다. k1과 k2는 적어도 2의 해밍 거리를 갖도록 선택된다. 예상되는 바와 같이, 일 비트 에러의 존재시, 적어도 2의 해밍 거리의 선택은, k1이 k2로 오인 되는 것과 k2가 k1으로 오인되는 것을 방지해 준다. 편리하게, k1과 k2의 그러한 선택은, BS를 선행하는 데이터 워드들, BS 심볼 그 자체, 또는 BS 뒤에 오는 데이터 워드들 내에서 결과적으로 단일의 비트 에러를 야기하는 노이즈가 존재하는 경우, 제어 심볼 BS가 명확하고 시기적절하게 검출되게 해준다.
반대로, 제어 심볼로서 단일의 제어 워드를 사용하는 것은, 제어 심볼 내에 단일 비트 에러의 존재시에, 제어 심볼이 검출되지 못하게 한다.
유사하게, 반복되는 제어 심볼들(예를 들어, {k1-k1})을 사용하여 제어 심볼을 형성하는 것은, 단일 비트 에러가 스트림 내의 심볼의 위치를 모호하게 할 수 있으므로, 확실한 식별을 하지 못하게 할 것이다. 예를 들어, 제어 심볼 직전에 오는 데이터 워드 D의 제어 워드 k1로의 오인은 결과적으로 모호성을 야기할 것이다. 즉, {...D,k1,k1,k1,D,D,...} 또는 {...D,D,k1,k1,k1,D...}가 존재하는 경우 제어 심볼 검출 및 데이터 식별/동기화는 불가능하다.
유사하게, k1과 k2(예를 들어, {k1-k2})를 사용하는 두개의 제어 워드 심볼도 모호성을 감소시키지 않을 것이다. 예를 들어, 데이터 심볼의 제어 심볼 k1 또는 k2로의 오인은 결과적으로 제어 심볼이 잘못 검출되게 할 것이다. 유사하게, k1과 k2로 이루어진 다른 제어 워드들은 사용할 수 없을 것이다.
편리하게, 적어도 2의 해밍 거리를 가지는 제어 심볼들 k1, k2로 {k1-k2-k2-k1}으로서 형성된 제어 심볼들을 사용하는 것은, 제어 심볼 내의 k1, k2, k2, 또는 k1 중 어느것의 단일 비트 에러가 여전히 명확하게 검출될 수 있게 해준다.
요구사항에 부합하는 제어 심볼들{k1-k2-k2-k1}의 예시적인 리스트는 ANSI 8B/10B 제어 심볼들{K28.5-K28.3-K28.3-K28.5};{K28.0-K28.3-K28.3-K28.0},{K28.5-K28.1-K28.1-K28.5}, 그리고 {K28.0-K28.1-K28.1-K28.0}을 포함한다.
선택적으로, 제어 회로(126)는 데이터 스트림의 다른 부분들을 식별할 수 있는(또는 그렇지 않은 경우에는, 상보형 수신기(complementary receiver)에서 처리될 수 있는) 추가적인 제어 심볼들을 삽입할 수 있다. 예를 들어, 알려진 바와 같이, 제2 데이터(408)가 제어 심볼들(404) SS(제2 시작)와 SE(제2 끝)로 식별될 수 있으며, 채움 데이터(406)가 제어 심볼들 FS(채움 시작)과 FE(채움 끝)로 식별될 수 있다. 유사하게, 데이터 스트림은, 암호화 시퀀스를 리셋하기 위한 심볼 CPSR, 또는 수신기(104)에서 스크램블링 시퀀스를 리셋하기 위한 심볼 SR을 포함할 수 있다. 이 심볼들이 견고한지 여부에 따라, SS, SE, FS, FE, CPSR, 그리고 SR이 하나의 제어 워드 또는 복수의 제어 워드들을 사용하여 형성될 수 있다.
도 3은 송신기(102)에 대해 상보적인 도 1의 수신기(104)의 개략적인 블록도를 표시한다. 표시된 수신기(104)는 단일 스트림 디코더(230)를 포함한다. 단일 스트림 디코더(230)는, 송신기로부터 직렬 채널(100)을 거쳐 전달되는, 송신기(102)의 병렬-직렬 변환기(124)에 의한 단일 직렬 스트림을 수신한다. 따라서, 스트림 디코더(230)는 수신된 직렬 비트 스트림을 m 비트 워드들의 스트림으로 변환하는 직렬-병렬(S/P) 변환기(224)를 포함한다. 제어 회로(226)는 수신기(104)의 전체적인 동작을 제어한다.
n/m 디코더(222)는 S/P 변환기(224)에 의해 상기 n/m 디코더의 입력부에 제공된 m 비트 데이터 워드 각각에 대해 n 비트 데이터 워드를 생성한다. n/m 디코더(222)는 송신기(102)의 인코더(122)에 상보형이다. 따라서, n/m 디코더(222)는 예를 들어, ANSI 8B/10B 디코더일 수 있다.
n/m 디코더(222)는 또한 임의의 m 비트 제어 워드들의 수신을 제어 회로(226)에 신호한다. 제어 회로(226)는 수신된 데이터를 식별하기 위하여(또는 그외의 경우에는 수신기(104)의 동작을 제어하기 위하여) 제어 심볼들을 검출하기 위한 m-비트 제어 워드들을 사용할 수 있다.
n 비트 디코딩된 데이터 워드들(222)이 FIFO 버퍼(220)에 제공되며, 상기 FIFO 버퍼(220)는 스크램블된 데이터를 역-스크램블하는 디-스크램블러(218)에 데이터를 공급한다. 디-스크램블러(218)는 스트램블러(118)에 대해 상보적이며, 스크램블러(118)에 의해 수행되는 임의의 스트램블링을 무효화한다. 하기에서 설명되듯이, 다중 레인들이 사용될 때 제어 회로(226)의 제어 하에서 FIFO(220)는 왜곡 된(skewed) 데이터 스트림들을 재정렬하는데에 사용될 수 있다.
디-스크림블러(218)의 출력은 수신된 스트림을 복호화하기 위한 복호화 블록에 제공되며, 제어 회로(226)과 통신하는 디-멀티플렉서(212)에 제공된다. 복호화 블록(216)은 송신기(102)의 암호화 블록(116)에 상보적이며, 앞서서 암호화 블록(116)에 의해 암호화된 n 비트 데이터 워드들을 복호화하기 위하여 사용될 수 있다. 복호화 블록(116)은 제어 회로(216)에 의해 제어될 수 있는바, 상기 제어 회로(216)는 복호화 블록(116)에 의해 생성되는 복호화 시퀀스를 리셋하거나 재동기화할 수 있다.
디-멀티플렉서(212)는 복호화된 출력을 수신하며 그 입력 데이터를 제1/주(primary/main) 스트림 및 제2의 스트림으로 역다중화할 수 있다. 제어 회로(226)는 디-멀티플렉서(212)의 동작을 제어할 수 있다. 예를 들어, BE 및/또는 BS 심볼에 의해 식별된 데이터는 픽셀 데이터로서 역다중화되어 메인 데이터 버퍼(210)로 출력될 수 있다. 유사하게, SS 및 SE 심볼들에 의해 식별되는 데이터는 제2 스트림 데이터로서 역다중화되어 제2의 데이터 버퍼(206)로 출력될 수 있다. 유사하게, 심볼들 FS 및 FE 심볼들에 의해 식별되는 데이터는 채움 데이터로서 역다중화될 수 있다.
편리하게, 설명된 4개의 제어 워드 인코딩을 사용하여 확실하게 인코딩되는 임의의 제어 심볼은 도 5에서 설명된 바와 같은 제어 회로(216)에 의해 검출될 수 있다. 특히, 제어 회로(216)는 제어 심볼 {k1-k2-k2-k1} 또는 그것의 임의의 1 비트 변형을 검출하기 위하여 상태 머신(500)을 유지한다. 그러므로, 상태 머신(500) 은 처음에 대기 상태(502)에 있다. n/m 디코더(222)에 의해 제어 워드 k1, 또는 k2의 도착이 신호됨에 따라, 상태 머신(500)은 상태(504) 또는 상태(518)에 진입한다. 그후, 다음에 도착하는 3개의 데이터 또는 제어 워드들은 상태 머신(500)의 상태 변화를 제어한다. 따라서, k1의 수신 후, k2가 아닌 데이터 또는 제어 워드(집합적으로 심볼 x로 표시됨)가 유입 스트림 내에 도달하면, 상태 머신(500)이 상태(510)으로 가정되며, {k1-x-k2-k1}을 검출하고 상태(516)에서 그것을 제어 심볼 {k1-k2-k2-k1}로서 해석하기 위하여, 후속적인 제어 워드들 k2(상태(512))와 그후의 k1에 대해서 대기한다. 유사하게, k1 수신후, 워드들 k2, x'(k2가 아닌 데이터 또는 제어 워드), k1이 수신되면, {k1-k2-x'-k1}은, 상태(508)를 거쳐, 상태(516)에서 {k1-k2-k2-k1}으로서 검출되고 해석된다. 워드 시퀀스 {k1-x-x} 또는 {k1-x-k2-x}의 검출 대한 응답으로, 심볼 비-검출 상태(또는 에러 상태)(514)에 진입된다.
유사하게, 심볼 k2를 수신함에 따라, 상태들(518, 520)을 거쳐, 상태(516)에서 워드 시퀀스 {x-k2-k2-k1}이 검출되고 제어 심볼 {k1-k2-k2-k1}로서 해석된다.
편리하게, 상태(516)가 가정되는 즉시, 제어 또는 식별 심볼 {k1-k2-k2-k1}이 검출되었으며, 제어 회로(216)에 의해 타이밍 신호가 생성될 수 있다. 이 타이밍 신호는 수신된 스트림 내에서 데이터를 식별하기 위해 사용되거나, 수신기(104)에서 송신기(102)로의 동기화에 사용될 수 있다.
수신기(102)에 의해 인지되는 {k1-k2-k2-k1} 형태의 제어 심볼 각각에 대해, 제어기(102)는 상태 머신(500)의 형태를 갖는 추가적인 상태 머신을 포함할 수 있 다. 즉, 각각의 상태 머신은 그것의 4개의 제어 워드 제어 심볼이 검출됨에 따라, 타이밍 신호를 생성할 수 있다.
예를 들어, 높은 비트 에러율에 의해 야기되는 송신기(102)와 수신기(104) 사이의 동기화 손실이 존재하는 경우, 수신기(104)는 보조 채널(108)(도 1)에 의해, 대안적으로, 송신된 스트림들의 재동기화 또는 재전송에 대해 신호할 수 있다.
예상되는 바와 같이, 비트 에러율 10-9에서, 빈번한 단일 비트 에러가 발생할 수 있다. 예를 들어, 비트율 1.62 Gbps에서, 단일 비트 에러는 매 0.62 초마다 수신기에서 에러가 검출되게 한다. 2.70 Gbps의 데이터율에서, 단일 비트 에러는 매 0.37초마다 수신기에서 에러가 검출되게 한다. 유익하게, 확실한 식별/제어 심볼들이 존재하는 경우에는, 그러한 단일 비트 에러들이 허용될 수 있으며, 동기화 손실 또는 다른 에러를 야기하지 않을 것이다.
선택적으로, SR, 그리고 CPSR 과 같은 다른 제어 심볼들을 수신하는 경우, 제어 회로(216)는, 디-스크램블러(218) 또는 복호화 블록(216)에 의해 생성되는 사이클을 리셋할 것이며, 송신기(102)에 있는 이 블록들의 송신기 대응부(즉, 스크램블러(118), 암호화 블록(116))와 이 블록들이 정확하게 동기화 되게 할 것이다. 예상되는 바와 같이, 상태 머신(500)은 검출될 각각의 제어 심볼에 대해 반복될 수 있다.
추가적인 예시적 송신기/수신기 쌍(102'/104')이 도 7 및 도 8에 도시된다. 도시되는 바와 같이, 예시적인 송신기(102')는, 도 2의 송신기(102)의 단일 레인 인코더(130)와 유사하게 형성된,복수의 단일 레인 인코더들(130'-1, 130-'2,..., 130'-n(개별적으로 그리고 집합적으로 레인 인코더들(130'))로 형성될 수 있다. 제어 회로(140)의 제어 하에서 디-멀티플렉서들(136, 138)은 복수의 단일 레인 인코더들(130') 중에서 주 데이터 소스 및 제2 데이터 소스로부터 주 데이터 및 제2 데이터를 역다중화할 수 있다. 이러한 방식으로, 주 소스 및 제2 소스로부터의 페이로드 데이터는, 몇개의 직렬 스트림들(또는 레인들)에 걸쳐 다중화될 수 있다. 각각의 스트림은 별개의 케이블 또는 와이어들에서 전달될 수 있다.
결과적인 페이로드 데이터는 도 8에 도시된다. 도시되는 바와 같이, 복수의 레인들에 걸친 페이로드 데이터는 각각의 레인 인코더(130')의 FIFO 버퍼들(120)을 사용하여 스큐될 수 있다. 도시된 실시예에서, 각각의 레인 인코더(130)는 송신기(102)의 레인 인코더(130)와 동일한 방식으로 형성된다. 그러나, 단일 제어기(140)가 복수의 레인 인코더들과 멀티플렉서들(136, 138)의 전체적인 동작을 제어한다. 제어기(140)는, 도 4의 스트림을 참조로 설명된 바와 같이, 복수의 레인들 각각이 제어 심볼들을 포함하게 해준다. 제어기(140)는 또한 각각의 FIFO(130)의 효과적인 워드 사이즈를 제어함으로써 레인간의 스큐(inter-lane skew)를 제어한다.
또한, 심볼 BS와 같은 복수의 레인들 각각의 제어 심볼들이 위에서 설명된 바와 같이, 4개의 제어 워드들{k1-k2-k2-k1}을 사용하여 형성될 수 있다. 레인간 스큐는 외부 잡음에 대하여 링크의 내성(immunity)을 증대시킬 수 있다.
상보형 멀티-레인 수신기는 도 7에 개략적으로 도시된다. 도시된 바와 같이, 다중-레인 송신기는 복수의 직렬 레인 디코더들(230'-1, 230'-2,...,230'-n(개별적으로 그리고 종합적으로 레인 디코더들(230'))을 포함하며, 각각은 도 3의 수신기(104)의 직렬 레인 디코더(230)와 동일하다.
각각의 레인 디코더(230)의 각각의 n/m 비트 디코더(222)로부터의 제어 신호들이 제어 회로(240)에 제공된다. 제어 회로(240)는 각각의 레인에 대해, 그리고 검출될 각각의 다른 제어 심볼에 대해 선택적으로, 상태 머신(500)(도 5)과 같은 상태 머신들을 포함할 수 있다. 각각의 레인의 FIFO 버퍼들(220)에 의해 야기된 지연들을 제어하기 위하여, 제어 회로(240)에 의해, 각각의 레인 내에서의 제어 심볼 BS={k1-k2-k2-k1}의 검출이 사용될 수 있다. 특히, FIFO 버퍼들(220)에서, 각각의 FIFO 버퍼의 사이즈는, 도 9에 도시된 바와 같이, BS 심볼들을 각각의 레인 정렬내에 있게하기 위하여 조정될 수 있다. 그 결과, 다중 스트림들 내의 데이터가 정렬된다. 편리하게도, 일단 정렬되면, BS 심볼들의 검출은 각각의 레인 디코더(230)의 디멀티플렉서들(212)을 제어하기 위하여 또한 사용될 수 있으며, 따라서, 메인 데이터 및 제2의 데이터가 역다중화되고 각각의 레인 디코더(230)의 버퍼들(210, 206)에 제공될 수 있다. 복수의 레인 디코더들(230)로부터의 메인 데이터 및 제2의 데이터는 또한 메인 데이터 스트림 및 제2 데이터 스트림들을 생성하기 위하여 멀티플렉서(236, 238)에 의해 다중화될 수 있는바, 상기 멀티플렉서들(236, 238)은 모두 제어 회로(240)의 제어하에 있다.
이제 예상되는 바와 같이, {k1-k2-k2-k1} 형태의 제어 심볼들이 수신기/송신기 쌍(102/104 또는 102'/104')에서 사용하기에 적절한 유일한 심볼들은 아니다. 대신, {k1-k1-k2-k2} 형태의 제어 심볼들이 사용될 수 있다. 상태 머신(500)은 적절하게 적용될 수 있다.
물론, 위에서 설명된 실시예들은 한정적인 것이 아닌 단지 예시적인 것으로 의도되었다. 본 발명을 실행하는 설명된 실시예들은 형태, 부분과 세부사항들의 배열, 그리고 동작의 순서에서 다수 수정될 수 있다. 오히려, 본 발명은, 청구항에서 한정한 범주 내에서, 그러한 모든 수정사항들을 포괄하도록 의도되었다.

Claims (26)

  1. 송신기로부터 수신기로 직렬 스트림을 송신하는 단계와, 상기 직렬 스트림은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하고, 상기 m 비트 데이터 워드들 각각은 n 비트 데이터를 나타내고, m>n이며;
    상기 직렬 스트림 내에 제어 심볼들을 포함시키는 단계를 포함하며, 상기 제어 심볼들 각각은 4개의 상기 m 비트 제어 워드들을 포함하고 그리고 {k1-k2-k2-k1} 형태를 취하며, k1과 k2는 각각, 상기 m 비트 데이터 워드들 각각과는 다른, 미리 정해진 m 비트의 제어 워드들이며, 그리고 k1과 k2 사이의 해밍 거리(Hamming distance)는 적어도 2인 것을 특징으로 하는 방법.
  2. 제1 항에 있어서,
    상기 제어 심볼들은, 상기 m 비트 데이터 워드들에 관한 상기 스트림 내의 정해진 위치에 있는 식별 심볼들임을 특징으로 하는 방법.
  3. 제1 항에 있어서,
    상기 제어 심볼들은 상기 수신기를 상기 송신기에 대하여 동기화하기 위하여 사용되는 것을 특징으로 하는 방법.
  4. 제1 항에 있어서,
    m=10이고 n=8인것을 특징으로 하는 방법.
  5. 제3 항에 있어서,
    상기 송신하는 단계는 8B/10B 인코딩을 포함하는 것을 특징으로 하는 방법.
  6. 제1 항에 있어서,
    상기 송신하는 단계는 상기 스트림 내에서 DC 밸런스(DC balance)를 유지시키는 것을 특징으로 하는 방법.
  7. 제1 항에 있어서,
    k1 또는 k2 각각은 m 비트 제어 워드 또는 그것의 2의 보수(two's complement)로서 정해지는 것을 특징으로 하는 방법.
  8. 제1 항에 있어서,
    k1 및 k2는 K28.0, K28.1, K28.3, 그리고 K28.5로 구성된 8B/10B 제어 워드들의 그룹으로부터 선택되는 것을 특징으로 하는 방법.
  9. 제1 항에 있어서,
    k2=K28.5 이고, k1=K28.3, ANSI 8B/10B 제어 워드들임을 특징으로 하는 방법.
  10. 제2 항에 있어서,
    상기 식별 심볼은 상기 직렬 스트림 내에서 상기 n 비트 데이터 워드들 라인의 시작부를 식별하는 것을 특징으로 하는 방법.
  11. 제2 항에 있어서,
    상기 송신기로부터 상기 수신기로의 제2 직렬 스트림을 더 포함하며, 상기 제2 직렬 스트림은 상기 제2 스트림 내의 데이터 워드들과 관련하여 정해진 위치에 있는 식별 심볼들을 포함하며, 여기서 상기 식별 심볼들 각각은 {k1-k2-k2-k1}의 형태를 취하는 것을 특징으로 하는 방법.
  12. 제11 항에 있어서,
    상기 직렬 스트림 및 상기 제2 직렬 스트림 내의 상기 식별 심볼들은, 상기 상기 직렬 스트림을 제2 직렬 스트림과 동기화하는 것을 특징으로 하는 방법.
  13. 수신기로 데이터를 직렬 스트림으로 송신하기 위한 송신기로서, 상기 데이터는 상기 직렬 스트림 내에 m 비트 워드들로 정렬되며, 상기 송신기는,
    송신될 각각의 n 비트 데이터를 m 비트 데이터 워드로서 인코딩하기 위한 인코더와, 여기서 m>n이며;
    상기 인코더와 통신하여 상기 직렬 스트림 내에 제어 심볼들을 삽입하는 제어기를 포함하며, 상기 제어 심볼들 각각은 4개의 상기 m 비트 데이터 워드들을 포함하며 그리고 상기 제어 심볼들은 {k1-k2-k2-k1}의 형태를 취하고, k1과 k2는 각각 상기 m 비트 데이터 워드들 각각과는 다른, 미리 정해진 m 비트의 제어 워드들이며, k1과 k2는 적어도 2의 해밍 거리에 의해 분리되는 것을 특징으로 하는 송신기.
  14. 제13 항에 있어서,
    상기 제어기는 상기 m 비트 데이터 워드들과 관련하여 상기 스트림 내의 정해진 위치들에 상기 제어 심볼을 삽입하는 것을 특징으로 하는 송신기.
  15. 제14 항에 있어서,
    m=10이고 n=8인것을 특징으로 하는 송신기.
  16. 제13 항에 있어서,
    상기 인코더는 상기 스트림 내에서 DC 밸런스를 유지하는 것을 특징으로 하는 송신기.
  17. 제16 항에 있어서,
    상기 인코더는 8B/10B 인코더를 포함하는 것을 특징으로 하는 송신기.
  18. 수신기로 데이터를 다중 직렬 스트림들로 송신하기 위한 송신기로서, 상기 데이터는 상기 직렬 스트림들 각각에서 m 비트의 워드들로서 정렬되며, 상기 송신기는,
    적어도 두개의 레인(lane) 인코더들과, 상기 인코더들 각각은 상기 직렬 스트림들 중 하나를 인코딩하기 위한 것이며, 각각의 레인 인코더는 송신될 n 비트 데이터를 상기 m 비트 데이터 워드들 각각으로서 인코딩하기 위한 m/n 인코더를 포함하고;
    상기 m/n 인코더들과 통신하여 상기 직렬 스트림들 각각에 제어 심볼들을 삽입하는 제어기를 포함하며, 상기 제어 심볼들은 4개의 상기 m 비트 데이터 워드들을 포함하고 그리고 {k1-k2-k2-k1} 형태를 취하며, 여기서 k1과 k2은 각각 상기 m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트 제어 워드들이며, 여기서 k1과 k2는 적어도 2의 해밍 거리에 의해 분리되는 것을 특징으로 하는 송신기.
  19. 직렬 비트스트림을 수신하기 위한 수신기로서,
    상기 직렬 비트스트림을 m 비트 워드들로 변환하기 위한 직렬-병렬 변환기와, 여기서 상기 m 비트 워드들은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하며;
    상기 m 비트 데이터 워드들을 n 비트의 데이터 워드들로 디코딩하고 m 비트 제어 워드들을 검출하기 위한, 상기 S/P 변환기를 상호연결하는 디코더와, 여기서 m>n이며; 그리고
    4개의 상기 m 비트 제어 워드들을 포함하고 그리고 {k1-k2-k2-k1} 형태를 갖는 제어 심볼들을 검출하기 위하여, 상기 디코더와 통신하는 제어기를 포함하며, 여기서 k1과 k2는 각각 적어도 2의 해밍 거리에 의해 이격된 미리 정해진 m 비트 제어 워드들임을 특징으로 하는 직렬 비트스트림을 수신하기 위한 수신기.
  20. 제19 항에 있어서,
    상기 제어기는, 상기 제어 심볼들 중 하나를 검출함에 따라, 상기 수신기를 상보형 송신기에 동기화하는 것을 특징으로 하는 직렬 비트스트림을 수신하기 위한 수신기.
  21. 다중 직렬 스트림들 내에서 데이터를 수신하기 위한 수신기로서, 상기 데이터는 상기 직렬 스트림들 각각에서 m 비트 워드들로서 정렬되며, 상기 수신기는,
    각각 상기 직렬 스트림들 중 하나를 디코딩하기 위한 적어도 두개의 레인 디코더들과, 각각의 레인 디코더는,
    상기 직렬 비트 스트림들을 m 비트 워드들로 변환하기 위한 직렬-병렬 변환기(S/P)와, 여기서 상기 m 비트 워드들은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하며;
    상기 m 비트 데이터 워드들 각각을 n 비트 데이터로 디코딩하고 그리고 상기 m 비트 제어 워드들을 검출하기 위한, 상기 S/P 변환기를 상호연결하는 디코더를 포함하며, 여기서 m>n 이고; 그리고
    4개의 상기 m 비트 제어 워드들을 포함하며 그리고 {k1-k2-k2-k1} 형태를 갖는 제어 심볼들을 상기 직렬 스트림들 내에서 검출하기 위하여, 상기 디코더들 중 적어도 하나와 통신하는 제어기를 포함하며, 여기서 k1과 k2는 각각 적어도 2의 해밍 거리에 의해 이격되는 미리 정해진 m 비트 제어 워드들임을 특징으로 하는 다중 직렬 스트림들 내에서 데이터를 수신하기 위한 수신기.
  22. 제21 항에 있어서,
    상기 레인 디코더들 각각은 제어가능한 지연을 상기 스트림들 각각에 야기시키기 위한 선입-선출(FIFO) 버퍼를 포함하는 것을 특징으로 하는 수신기.
  23. 제22 항에 있어서,
    상기 제어기는, 상기 다중 스트림들 내의 상기 제어 심볼들에 근거하여, 상기 다중 직렬 스트림들 내의 데이터를 디스큐(deskew)하도록, 상기 FIFO 버퍼들을 제어하는 것을 특징으로 하는 수신기.
  24. 수신기로부터 복수의 직렬 스트림들을 수신하는 방법으로서,
    m 비트 제어 워드들과 m 비트 데이터 워드들을 형성하기 위하여, 상기 직렬 스트림들 각각을 직렬-병렬 변환하는 단계와;
    상기 m 비트 데이터 워드들 각각을 n 비트 데이터로서 디코딩하는 단계와;
    {k1-k2-k2-k1} 형태를 가지며 4개의 상기 m 비트 제어 심볼들을 포함하는 제어 심볼들을 상기 직렬 스트림들 각각에서 검출하는 단계를 포함하며, 여기서 k1과 k2는 각각, 상기 m 비트 데이터 워드들과는 다른, 미리 정해진 m 비트의 제어 워드들이며, 여기서 k1과 k2 사이의 해밍 거리는 적어도 2인 것을 특징으로 하는 수신기로부터 복수의 직렬 스트림들을 수신하는 방법.
  25. 제24 항에 있어서,
    상기 제어 심볼들을 사용하여 상기 복수의 직렬 스트림들 내의 데이터를 식별하고 정렬하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  26. 수신기로부터 송신기로 직렬 스트림을 전송하는 단계와, 상기 직렬 스트림은 m 비트 데이터 워드들과 m 비트 제어 워드들을 포함하고, 상기 m 비트 데이터 워드들 각각은 n 비트 데이터를 나타내며, 여기서 m>n이고;
    상기 직렬 스트림 내에 제어 심볼들을 포함시키는 단계를 포함하며, 상기 제어 심볼들 각각은 4개의 상기 m 비트 제어 워드들을 포함하고 그리고 {k1-k1-k2-k2}의 형태를 취하며, k1과 k2는 각각, 상기 m 비트 데이터 워드들 각각과는 다른, 미리 정해진 m 비트의 제어 워드들이며, 그리고 k1과 k2 사이의 해밍 거리(Hamming distance)는 적어도 2인 것을 특징으로 하는 방법.
KR1020097017730A 2007-02-26 2008-02-26 직렬 스트림 내에서의 견고한 제어 및 식별 KR101565561B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/678,825 2007-02-26
US11/678,825 US7477169B2 (en) 2007-02-26 2007-02-26 Robust control/delineation in serial streams

Publications (2)

Publication Number Publication Date
KR20090122431A KR20090122431A (ko) 2009-11-30
KR101565561B1 true KR101565561B1 (ko) 2015-11-03

Family

ID=39715275

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097017730A KR101565561B1 (ko) 2007-02-26 2008-02-26 직렬 스트림 내에서의 견고한 제어 및 식별

Country Status (6)

Country Link
US (1) US7477169B2 (ko)
EP (1) EP2122961B1 (ko)
JP (2) JP5220034B2 (ko)
KR (1) KR101565561B1 (ko)
CN (1) CN101669345B (ko)
WO (1) WO2008104069A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589770B2 (en) * 2007-02-26 2013-11-19 Ati Technologies Ulc Robust control/delineation in serial streams
TWI365615B (en) * 2007-03-22 2012-06-01 Realtek Semiconductor Corp Receiver of a displayport interface having an error correction circuit and method applied to the receiver
US8397272B2 (en) * 2008-08-05 2013-03-12 Analogix Semiconductor, Inc. Multi-stream digital display interface
US8237721B2 (en) * 2009-04-22 2012-08-07 Dell Products, Lp Information handling system and method for using main link data channels
JP5535672B2 (ja) * 2010-02-02 2014-07-02 エヌイーシーコンピュータテクノ株式会社 シリアル転送装置及び方法
US8432408B2 (en) * 2010-04-07 2013-04-30 Synaptics Incorporated Data rate buffering in display port links
US8750176B2 (en) * 2010-12-22 2014-06-10 Apple Inc. Methods and apparatus for the intelligent association of control symbols
US8989277B1 (en) * 2011-11-03 2015-03-24 Xilinx, Inc. Reducing artifacts within a video processing system
US8897398B2 (en) 2012-01-27 2014-11-25 Apple Inc. Methods and apparatus for error rate estimation
US9838226B2 (en) 2012-01-27 2017-12-05 Apple Inc. Methods and apparatus for the intelligent scrambling of control symbols
US8990645B2 (en) 2012-01-27 2015-03-24 Apple Inc. Methods and apparatus for error rate estimation
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
CN105227969B (zh) * 2013-05-09 2016-09-14 青岛青知企业管理咨询有限公司 兼容有线电视传输和网络电视传输的电视信号发射装置
US9401729B2 (en) * 2014-02-03 2016-07-26 Valens Semiconductor Ltd. Maintaining running disparity while utilizing different line-codes
US9621467B1 (en) * 2014-08-27 2017-04-11 Altera Corporation Iterative frame synchronization for multiple-lane transmission
CN104378648B (zh) * 2014-10-31 2017-10-10 广东威创视讯科技股份有限公司 图像编码、解码、传输方法和***
KR101825301B1 (ko) 2016-08-22 2018-02-02 한양대학교 산학협력단 신호 전송 장치 및 방법과, 신호 수신 장치
US11356379B1 (en) * 2018-10-01 2022-06-07 Xilinx, Inc. Channelized rate adaptation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337467B1 (ko) * 1995-10-05 2002-05-30 실리콘 이미지, 인크. 변환 제어 디지탈 인코딩 장치 및 신호 전송 시스템
JP2004289567A (ja) * 2003-03-24 2004-10-14 Nippon Telegr & Teleph Corp <Ntt> フレーム信号符号化通信方法及び符号化装置並びに符号化送信装置及び符号化受信装置
JP2006237769A (ja) * 2005-02-23 2006-09-07 Fujitsu Access Ltd 受動型光ネットワークシステム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2559629B1 (fr) * 1984-02-15 1986-06-13 Telediffusion Fse Systeme de radiodiffusion de donnees, notamment vers des postes mobiles
JPS62241449A (ja) * 1986-04-14 1987-10-22 Nippon Telegr & Teleph Corp <Ntt> 同期ワ−ドデ−タ列の制御符号伝送方式
US4745605A (en) * 1986-08-19 1988-05-17 Amadahl Corporation Control word error detection and classification
US5625644A (en) * 1991-12-20 1997-04-29 Myers; David J. DC balanced 4B/8B binary block code for digital data communications
US5347547A (en) * 1992-02-21 1994-09-13 Advanced Micro Devices, Inc. Method and apparatus for synchronizing transmitter and receiver for high speed data communication
US5511096A (en) 1994-01-18 1996-04-23 Gi Corporation Quadrature amplitude modulated data for standard bandwidth television channel
US5825824A (en) * 1995-10-05 1998-10-20 Silicon Image, Inc. DC-balanced and transition-controlled encoding method and apparatus
DE19614737A1 (de) 1996-04-15 1997-10-16 Bosch Gmbh Robert Fehlerrobustes Multiplexverfahren mit möglicher Retransmission
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
JP2001144822A (ja) * 1999-11-12 2001-05-25 Sony Corp データ伝送方法及びデータ伝送装置
JP2001223592A (ja) * 2000-02-10 2001-08-17 Sony Corp データ伝送方法及びデータ伝送装置
US6718491B1 (en) * 2000-03-06 2004-04-06 Agilent Technologies, Inc. Coding method and coder for coding packetized serial data with low overhead
US6650638B1 (en) * 2000-03-06 2003-11-18 Agilent Technologies, Inc. Decoding method and decoder for 64b/66b coded packetized serial data
JP3639184B2 (ja) * 2000-04-18 2005-04-20 日本電信電話株式会社 通信システムにおける制御情報の符号化方法
JP2002154240A (ja) * 2000-11-17 2002-05-28 Canon Inc 画像処理方法およびプリント装置
US6862701B2 (en) * 2001-03-06 2005-03-01 Agilent Technologies, Inc. Data communication system with self-test facility
US7296211B2 (en) * 2002-06-25 2007-11-13 Lockheed Martin Corporation System and method for transferring data on a data link
JP4062078B2 (ja) * 2002-12-10 2008-03-19 株式会社日立製作所 スキュー調整装置
EP1553718B1 (en) 2004-01-08 2008-12-03 Mitsubishi Denki Kabushiki Kaisha Methods and system of error control with feedback resource allocation scheme
CN1319278C (zh) * 2004-03-05 2007-05-30 上海交通大学 Turbo乘积码串行级联NR码的信道编码方法
US7937624B2 (en) 2005-04-18 2011-05-03 Research In Motion Limited Method for handling a detected error in a script-based application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337467B1 (ko) * 1995-10-05 2002-05-30 실리콘 이미지, 인크. 변환 제어 디지탈 인코딩 장치 및 신호 전송 시스템
JP2004289567A (ja) * 2003-03-24 2004-10-14 Nippon Telegr & Teleph Corp <Ntt> フレーム信号符号化通信方法及び符号化装置並びに符号化送信装置及び符号化受信装置
JP2006237769A (ja) * 2005-02-23 2006-09-07 Fujitsu Access Ltd 受動型光ネットワークシステム

Also Published As

Publication number Publication date
JP5220034B2 (ja) 2013-06-26
CN101669345A (zh) 2010-03-10
EP2122961A1 (en) 2009-11-25
US20080204285A1 (en) 2008-08-28
JP2010519836A (ja) 2010-06-03
US7477169B2 (en) 2009-01-13
EP2122961A4 (en) 2012-01-18
JP2013031227A (ja) 2013-02-07
CN101669345B (zh) 2013-05-15
KR20090122431A (ko) 2009-11-30
EP2122961B1 (en) 2015-11-04
JP5474160B2 (ja) 2014-04-16
WO2008104069A1 (en) 2008-09-04

Similar Documents

Publication Publication Date Title
KR101565561B1 (ko) 직렬 스트림 내에서의 견고한 제어 및 식별
US8589770B2 (en) Robust control/delineation in serial streams
KR101514413B1 (ko) 정보 스큐 및 리던던트 콘트롤 정보에 의한 데이터 송신 장치 및 방법
EP2719169B1 (en) Method and system for video data extension
JP4229836B2 (ja) 一群の受信ワードの各ワードを単一送信ワードにマッピングすることで連続リンク送信上のシンボル間干渉効果を低減させる方法および装置。
JP6514333B2 (ja) 送信装置、dpソース機器、受信装置及びdpシンク機器
JP2020074654A (ja) 映像インターフェース用高速シリアルリンク
US20090103727A1 (en) Sync-bit Insertion for Timing Reference Signals to Prevent Long Runs of Static Data in Serial Digital Interfaces
KR101868510B1 (ko) Uhd 신호의 디시리얼라이징 및 데이터 처리 장치
KR101605181B1 (ko) 에이치디엠아이/엠에이치엘 리시버에서 제어신호 전송오류 복구 방법
US8139610B1 (en) Method for framing data for transmission over an encoded channel

Legal Events

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