KR101650687B1 - N-상 신호 트랜지션 정렬 - Google Patents

N-상 신호 트랜지션 정렬 Download PDF

Info

Publication number
KR101650687B1
KR101650687B1 KR1020167003972A KR20167003972A KR101650687B1 KR 101650687 B1 KR101650687 B1 KR 101650687B1 KR 1020167003972 A KR1020167003972 A KR 1020167003972A KR 20167003972 A KR20167003972 A KR 20167003972A KR 101650687 B1 KR101650687 B1 KR 101650687B1
Authority
KR
South Korea
Prior art keywords
transition
connectors
duration
connector
state
Prior art date
Application number
KR1020167003972A
Other languages
English (en)
Other versions
KR20160040216A (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 KR20160040216A publication Critical patent/KR20160040216A/ko
Application granted granted Critical
Publication of KR101650687B1 publication Critical patent/KR101650687B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • G06F13/4077Precharging or discharging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4278Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using an embedded synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • 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
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • 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/4917Transmitting 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 multilevel 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/4917Transmitting 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 multilevel codes
    • H04L25/4919Transmitting 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 multilevel codes using balanced multilevel codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • Y02B60/1228
    • Y02B60/1235
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Dc Digital Transmission (AREA)
  • Information Transfer Systems (AREA)

Abstract

특히 전자 장치 내의 2 개의 디바이스들 간에 데이터의 송신을 용이하게 하는 시스템, 방법들 및 장치가 설명된다. 정보는 N-상 극성 인코딩된 심볼들에서 송신된다. 드라이버들은 연속하는 심볼들 간의 심볼 주기를 최소화하기 위해 2 이상의 커넥터들 상의 상태 트랜지션들을 정렬하도록 적응되거나 구성될 수도 있다. 드라이버들은 특정 트랜지션들을 전진시키거나 지연시키는 회로들을 포함할 수도 있다. 드라이버들은, 커넥터가 비구동 상태로 트랜지션되는 경우에도, 트랜지션 주기의 일부분 동안 커넥터의 상태를 구동하도록 동작하는 프리-엠퍼시스 회로들을 포함할 수도 있다.

Description

N-상 신호 트랜지션 정렬{N-PHASE SIGNAL TRANSITION ALIGNMENT}
관련 출원들의 상호 참조
본 출원은 2013 년 8 월 8 일자로 출원된 미국 특허 가출원 제 61/863,695 호 및 2014 년 8 월 6 일자로 출원된 미국 특허 출원 제 14/453,346 호를 우선권 주장하고 그 이점을 청구하며, 이들의 전체 내용들은 참조에 의해 본원에 통합된다.
기술 분야
본 개시물은 일반적으로 고속 데이터 통신 인터페이스들에 관한 것이고, 더 구체적으로는 다중-와이어 다중-위상 데이터 통신 링크들에서 신호 컨디셔닝에 관한 것이다.
셀룰러 폰들과 같은 모바일 디바이스들의 제조업자들은 상이한 제조업자들을 포함하여 다양한 소스들로부터 모바일 디바이스들의 컴포넌트들을 획득할 수도 있다. 예를 들어, 셀룰러 폰에서의 애플리케이션 프로세서는 제 1 제조업자로부터 획득될 수도 있고, 셀룰러 폰용 디스플레이는 제 2 제조업자로부터 획득될 수도 있다. 애플리케이션 프로세서 및 디스플레이 또는 다른 디바이스는 표준-기반 또는 전매특허의 물리적 인터페이스를 사용하여 상호접속될 수도 있다. 예를 들어, 디스플레이는 MIPI (Mobile Industry Processor Interface Alliance) 에 의해 명시된 DSI (Display System Interface) 에 부합하는 인터페이스를 제공할 수도 있다.
다중-와이어 인터페이스에서, 통신 링크의 최대 속도 및 클록 정보를 복원하기 위한 클록-데이터 복원 (CDR) 회로의 능력은 통신 링크를 통해 송신된 신호들의 트랜지션들과 관련된 최대 시간 변동에 의해 제한될 수도 있다. 다중-와이어 인터페이스에서, 상이한 와이어들에서의 트랜지션들은 신호 트랜지션 시간들의 상이한 변동들을 나타낼 수도 있고, 이는 수신 디바이스에서 수신기들의 출력들이 데이터 또는 심볼 경계에 대하여 상이한 시간에 변화하게 할 수 있다. 다중-와이어 신호들에서 큰 트랜지션 시간 차이들은 종종, CDR 회로에서 지연 엘리먼트의 구현을 요구하며, 여기서 지연 엘리먼트는 적어도 최소 및 최대 수신기 트랜지션 이벤트들 간의 차이 동안 최대 지연을 갖는다. 이러한 지연 엘리먼트의 최대 시간은 송신 클록의 주기를 상당히 제한함으로써 통신 링크 상의 스루풋 (throughput) 을 제한할 수 있다.
본원에 개시된 실시형태들은 장치 내의 디바이스들 간의 물리적 인터페이스들에서 향상된 송신 레이트들을 가능하게 하는 시스템들, 방법들 및 장치들을 제공한다. 그 장치들은 전자 장치에서 수집되고 하나 이상의 데이터 링크들을 통해 통신가능하게 커플링될 수도 있는 다수의 집적 회로 (IC) 디바이스들을 갖는 모바일 단말기를 포함할 수도 있다.
본 개시의 일 양태에서, 데이터 전송 방법은 3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 단계, 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하는 단계, 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하는 단계를 포함한다. 연속하는 심볼들의 각 쌍 간의 차이들은 3 이상의 커넥터들의 시그널링 상태들과 관련될 수도 있다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다.
다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들의 시간 정렬을 발생할 수도 있다. 상태 트랜지션 검출 회로들은 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성될 수도 있다. 시간 정렬을 발생하는 것은, 트랜지션들이 임계 주기 미만인 시간 주기 내에 발생하도록 하는 것을 포함할 수도 있다.
다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 그 드라이버가 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시되기 전에 개시하게 하도록, 하나 이상의 지연들을 구성하는 것을 포함한다.
또 다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 그 드라이버가 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시된 후에 개시하게 하도록, 하나 이상의 지연들을 구성하는 것을 포함한다.
또 다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 그 드라이버가 제 1 커넥터에서 상태 트랜지션의 개시를, 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 지연시키거나 전진시키게 하도록, 하나 이상의 지연들을 구성하는 것을 포함한다.
또 다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키는 것, 및 트랜지션 간격의 지속시간이 임계 주기 미만인 것으로 추정될 경우, 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제하는 것을 포함한다.
또 다른 양태에서, 하나 이상의 드라이버들의 동작을 변경하는 것은, 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동하는 것, 및 트랜지션 간격의 지속시간이 임계 주기 미만인 것으로 추정될 경우, 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 하나의 커넥터를 구동하는 것을 억제하는 것을 포함한다.
또 다른 양태에서, 트랜지션 간격의 지속시간을 추정하는 것은, 심볼 경계에 대하여 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하는 것, 및 수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 트랜지션들과 심볼 경계 간의 지연들을 추정하는 것을 포함한다. 복수의 차동 수신기들의 각각은 3 이상의 커넥터들의 상이한 쌍에 커플링될 수도 있다.
또 다른 양태에서, 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함할 수도 있고, 적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 (undriven) 상태에 있을 수도 있다.
본 개시의 일 양태에서, 일 장치는 3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 수단, 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하는 수단, 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하는 수단을 포함한다. 연속하는 심볼들의 각 쌍 간의 차이들은 3 이상의 커넥터들의 시그널링 상태들과 관련될 수도 있다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다.
본 개시의 일 양태에서, 일 장치는 단말기에서 2 개의 디바이스를 통신가능하게 커플링하는 복수의 커넥터들, 및 프로세싱 회로를 포함한다. 프로세싱 회로는 3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하고, 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하고, 그리고 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하도록 구성될 수도 있다. 그 차이들은 3 이상의 커넥터들의 시그널링 상태들에 관련될 수도 있다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다.
본 개시의 일 양태에서, 프로세서 판독가능 저장 매체는 하나 이상의 명령들을 갖는다. 하나 이상의 명령들은 적어도 하나의 프로세싱 회로에 의해 실행될 수도 있다. 하나 이상의 명령들은 적어도 하나의 프로세싱 회로로 하여금, 3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하게 하고, 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하게 하고, 그리고 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하게 할 수도 있다. 연속하는 심볼들의 각 쌍 간의 차이들은 3 이상의 커넥터들의 시그널링 상태들과 관련될 수도 있다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다.
도 1 은 복수의 사용가능한 표준들 중 하나에 따라 선택적으로 동작하는 IC 디바이스들 간에 데이터 링크를 채용하는 장치를 도시한다.
도 2 는 IC 디바이스들 간에 데이터 링크를 채용하는 장치에 대한 시스템 아키텍처를 도시한다.
도 3 은 N-상 극성 데이터 인코더를 도시한다.
도 4 는 N-상 극성 인코딩된 인터페이스에서의 시그널링을 도시한다.
도 5 는 N-상 극성 디코더를 도시한다.
도 6 은 M-와이어 N-상 극성 디코더에서 트랜지션 검출을 도시한다.
도 7 은 M-와이어 N-상 극성 디코더에서 트랜지션 검출에 대한 신호 상승 시간들의 영향들의 간략한 예를 도시한다.
도 8 은 M-와이어 N-상 극성 디코더에서 잠재적인 상태 트랜지션들을 도시하는 상태 다이어그램이다.
도 9 는 M-와이어 N-상 극성 디코더에서 트랜지션 및 눈의 영역들을 도시하는 다이어그램이다.
도 10 은 본원에 개시된 특정 양태들에 따른 트랜지션 전진 및 지연의 특정 양태들을 도시하는 간략화된 다이어그램이다.
도 11 은 본원에 개시된 특정 양태들에 따른 다중-와이어 인터페이스를 통해 송신된 신호들에 대한 전진/지연 회로의 일 예를 도시하는 다이어그램이다.
도 12 는 본원에 개시된 특정 양태들에 따라 제공된 전진/지연 회로의 동작의 일 예를 도시한다.
도 13 은 본원에 개시된 특정 양태들에 따라 구성될 수도 있는 프로세싱 회로를 채용하는 장치의 일 예를 도시하는 블록 다이어그램이다.
도 14 는 M-와이어 N-상 신호 트랜지션 정렬을 위한 방법의 플로우차트이다.
도 15 는 M-와이어 N-상 신호 트랜지션 정렬을 채용하는 장치에 대한 하드웨어 구현의 일 예를 도시하는 다이어그램이다.
다양한 양태들은 지금부터, 도면들을 참조하여 설명된다. 다음의 설명에 있어서, 설명의 목적으로, 다수의 특정 상세들이 하나 이상의 양태들의 철저한 이해를 제공하기 위해 기술된다. 하지만, 그러한 양태(들)은 이들 특정 상세들 없이도 실시될 수도 있음이 명백할 수도 있다.
본 출원에서 사용되는 바와 같이, 용어들 "컴포넌트", "모듈", "시스템" 등은 하드웨어, 펌웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행 중인 소프트웨어와 같지만 이에 제한되지 않는 컴퓨터 관련 엔터티를 포함하도록 의도된다. 예를 들면, 컴포넌트는 프로세서 상에서 작동하는 프로세스, 프로세서, 오브젝트, 실행가능물, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수도 있지만, 이들에 제한되는 것은 아니다. 예로서, 컴퓨팅 디바이스 상에서 작동하는 애플리케이션 및 컴퓨팅 디바이스 양자는 컴포넌트일 수 있다. 하나 이상의 컴포넌트들은 프로세스 및/또는 실행 스레드 내에 상주할 수도 있고, 컴포넌트는 하나의 컴퓨터에 국부화되고/되거나 2 이상의 컴퓨터들 사이에서 분산될 수도 있다. 또한, 이들 컴포넌트들은 여러 데이터 구조들이 저장된 여러 컴퓨터 판독 가능한 매체로부터 실행될 수 있다. 컴포넌트들은 하나 이상의 데이터 패킷들, 예컨대, 로컬 시스템의 다른 컴포넌트, 분산 시스템 및/또는 인터넷과 같은 네트워크를 통해 신호를 통해 다른 시스템들과 상호작용하는 하나의 컴포넌트로부터의 데이터를 구비하는 신호에 따르는 것과 같이 로컬 및/또는 원격 프로세스들을 통해 통신할 수도 있다.
추가로, 용어 "또는 (or)" 은 배타적인 "또는" 보다 포괄적인 "또는" 을 의미하도록 의도된다. 즉, 달리 특정되지 않거나 문맥에서 명확하지 않다면, 구절 "X 는 A 또는 B 를 채용한다" 는 임의의 자연스럽고 포괄적인 치환들을 의미하도록 의도된다. 즉, 구절 "X 는 A 또는 B 를 채용한다" 는 하기의 경우들 중 임의의 것에 의해 만족된다 : X 는 A 를 채용한다; X 는 B 를 채용한다; 또는 X 는 A 와 B 양자를 채용한다. 추가로, 본 출원 및 청구항들에서 이용되는 것과 같은 관사 "a" 및 "an" 는 달리 특정되지 않거나 문맥에서 단수 형태인 것으로 명확히 지시되지 않았다면 "하나 이상 (one or more)" 을 의미하도록 일반적으로 간주되어야 한다.
본 발명의 특정 양태들은 전화기, 모바일 컴퓨팅 디바이스, 기기, 자동차 전자장치, 항공전자 시스템들, 등과 같은 장치의 서브 컴포넌트들을 포함할 수도 있는 전자 디바이스들 간에 배치된 통신 링크들에 적용가능할 수도 있다. 도 1 은 IC 디바이스들 간에 통신 링크를 채용하는 장치의 간략화된 예를 도시한다. 장치 (100) 는 프로세싱 회로 (102) 에 동작가능하게 커플링된 통신 트랜시버 (106) 를 포함할 수도 있다. 일 예에서, 장치 (100) 는 무선 액세스 네트워크 (RAN), 코어 액세스 네트워크, 인터넷 및/또는 다른 네트워크와 RF 트랜시버 (106) 를 통해 통신하는 무선 통신 디바이스를 포함할 수도 있다. 프로세싱 회로 (102) 는 애플리케이션용 IC (ASIC; 108) 및/또는 하나 이상의 다른 IC 디바이스들을 포함할 수도 있다. ASIC (108) 는 하나 이상의 프로세싱 디바이스들, 로직 회로들, 등을 포함할 수도 있다. 프로세싱 회로 (102) 는 프로세싱 회로 (102) 의 프로세서에 의해 실행될 수도 있는 명령들 및 프로세싱 회로 (102) 에 의해 조작될 수도 있는 데이터를 보유할 수도 있는, 메모리 (112) 와 같은 프로세서 판독가능 스토리지 (112) 를 포함하고 및/또는 그에 커플링될 수도 있다. 프로세싱 회로 (102) 의 특정 기능들은 메모리 디바이스 (112) 와 같은, 저장 매체에 상주하는 소프트웨어 모듈들의 실행을 지원하고 인에이블하는, 오퍼레이팅 시스템 및 애플리케이션 프로그래밍 인터페이스 (API; 110) 중 하나 이상에 의해 제어될 수도 있다. 메모리 디바이스 (112) 는 프로세싱 시스템들 및 컴퓨팅 플랫폼들에서 사용될 수 있는, 판독 전용 메모리 (ROM) 또는 랜덤 액세스 메모리 (RAM), EEPROM (electrically erasable programmable ROM), 플래시 카드들, 또는 임의의 메모리 디바이스를 포함할 수도 있다. 프로세싱 유닛 (102) 은 장치 (100) 를 구성하고 동작시키는데 사용된 동작 파라미터들 및 다른 정보를 보유할 수 있는 로컬 데이터베이스 (114) 를 포함하거나 로컬 데이터베이스 (114) 에 액세스할 수도 있다. 로컬 데이터베이스 (114) 는 데이터베이스 모듈, 플래시 메모리, 자기 매체, EEPROM, 광학 매체, 테이프, 소프트 또는 하드 디스크, 등등 중 하나 이상을 사용하여 구현될 수도 있다. 프로세싱 회로 (102) 는 또한, 안테나 (122), 디스플레이 (124), 키패드 (126) 와 같은 오퍼레이터 제어장치들, 버튼, 로커 또는 슬라이더 스위치 (128), 및/또는 다른 컴포넌트들과 같은 외부 디바이스들에 동작가능하게 커플링될 수도 있다.
도 2 는 무선 모바일 디바이스, 모바일 전화, 모바일 컴퓨팅 시스템, 무선 전화, 노트북 컴퓨터, 태블릿 컴퓨팅 디바이스, 미디어 플레이어, 게이밍 디바이스, 기기, 착용가능한 컴퓨팅 디바이스, 등등과 같은 장치 (200) 의 특정 양태들을 도시하는 블록 개략 다이어그램이다. 장치 (200) 는 통신 링크 (220) 를 통해 데이터 및 제어 정보를 교환하는 복수의 IC 디바이스들 (202 및 230) 을 포함할 수도 있다. 통신 링크 (220) 는 IC 디바이스들 (202 및 230) 이 서로 근접하게 위치되었든, 또는 장치 (200) 의 물리적으로 상이한 부분들에 위치되었든 간에, IC 디바이스들 (202 및 230) 을 접속하는데 사용될 수도 있다. 일 예에서, 통신 링크 (220) 는 IC 디바이스들 (202 및 230) 을 운반하는 칩 캐리어, 기판 또는 회로 보드 상에 제공될 수도 있다. 다른 예에서, 제 1 IC 디바이스 (202) 는 플립형 전화의 키패드 섹션에 위치될 수도 있는 반면, 제 2 IC 디바이스 (230) 는 플립형 전화의 디스플레이 섹션에 위치될 수도 있다. 또 다른 예에서, 통신 링크 (220) 의 일부분은 케이블 또는 광학 접속부를 포함할 수도 있다.
통신 링크 (220) 는 다중 채널들 (222, 224 및 226) 을 포함할 수도 있다. 하나 이상의 채널 (226) 은 양방향성일 수도 있고, 반이중 모드에서 및/또는 전이중 모드들에서 동작할 수도 있다. 하나 이상의 채널들 (222 및 224) 은 단방향성일 수도 있다. 통신 링크 (220) 는 비대칭적이며, 일 방향에서 더 높은 대역폭을 제공할 수도 있다. 일 예에서, 제 1 통신 채널 (222) 은 순방향 링크 (222) 로 지칭될 수도 있는 반면, 제 2 통신 채널 (224) 은 역방향 링크 (224) 로 지칭될 수도 있다. 양자의 IC 디바이스들 (202 및 230) 이 통신 링크 (222) 를 통해 송신 및 수신하도록 구성되는 경우에도, 제 1 IC 디바이스 (202) 는 호스트 시스템 또는 송신기로서 지정될 수도 있지만, 제 2 IC 디바이스 (230) 는 클라이언트 시스템 또는 수신기로서 지정될 수도 있다. 일 예에서, 순방향 링크 (222) 는 제 1 IC 디바이스 (202) 로부터 제 2 IC 디바이스 (230) 로 데이터를 통신할 때 더 높은 데이터 레이트로 동작할 수도 있지만, 역방향 링크 (224) 는 제 2 IC 디바이스 (230) 로부터 제 1 IC 디바이스 (202) 로 데이터를 통신할 때 더 낮은 데이터 레이트로 동작할 수도 있다.
IC 디바이스들 (202 및 230) 은 각각, 프로세싱 회로, 컴퓨팅 회로, 또는 다른 회로에서 제공될 수도 있는 프로세서 (206, 236) 를 포함할 수도 있다. 일 예에서, 제 1 IC 디바이스 (202) 는 무선 트랜시버 (204) 와 안테나 (214) 를 통한 무선 통신들을 유지하는 것을 포함하는 장치 (200) 의 핵심 기능들을 수행하도록 구성될 수도 있지만, 제 2 IC 디바이스 (230) 는 디스플레이 제어기 (232) 를 관리하거나 동작시키는 사용자 인터페이스를 지원하도록 구성될 수도 있고, 카메라 제어기 (234) 를 사용하여 카메라 또는 비디오 입력 디바이스의 동작들을 제어할 수도 있다. IC 디바이스들 (202 및 230) 중 하나 이상에 의해 지원된 다른 특징들은 키보드, 음성 인식 컴포넌트, 글로벌 포지셔닝 시스템들, 생체 인식 시스템들, 모션 센서들, 및 다른 입력 또는 출력 디바이스들을 포함할 수도 있다. 디스플레이 제어기 (232) 는 액정 디스플레이 (LCD) 패널, 터치-스크린 디스플레이, 표시장치들 등등과 같은 디스플레이들을 지원하는 회로들 및 소프트웨어 드라이버들을 포함할 수도 있다. 저장 매체 (208 및 238) 는 개별 프로세서들 (206 및 236), 및/또는 IC 디바이스들 (202 및 230) 의 다른 컴포넌트들에 의해 사용된 명령들 및 데이터를 보유하도록 구성된 일시적 및/또는 비-일시적 저장 디바이스들을 포함할 수도 있다. 각각의 프로세서 (206, 236) 와 그 대응하는 저장 매체 (208 및 238) 및 다른 모듈들 및 회로들 간의 통신은 각각 하나 이상의 버스 (212 및 242) 에 의해 용이하게 될 수도 있다.
역방향 링크 (224) 는 순방향 링크 (222) 와 동일한 방식으로 동작될 수도 있고, 순방향 링크 (222) 와 역방향 링크 (224) 는 비교할만한 속도들로 또는 상이한 속도들로 송신할 수도 있으며, 여기서 속도는 데이터 레이트 (또는 데이터 전송 레이트) 및/또는 송신기 클록킹 레이트로 표현될 수도 있다. 순방향 및 역방향 데이터 레이트들은 애플리케이션에 의존하여, 실질적으로 동일하거나 크기 순서들에 따라 상이할 수도 있다. 일부 애플리케이션들에서, 단일 양방향 링크 (226) 는 제 1 IC 디바이스 (202) 및 제 2 IC 디바이스 (230) 간의 통신들을 지원할 수도 있다. 순방향 링크 (222) 및/또는 역방향 링크 (224) 는 예컨대, 순방향 및 역방향 링크들 (224 및 224) 이 동일한 물리적 접속들을 공유하고 반이중 방식으로 동작할 경우, 양방향 모드로 동작하도록 구성가능할 수도 있다. 일 예에서, 통신 링크 (220) 는 산업 표준 또는 다른 표준에 따라 제 1 IC 디바이스 (202) 와 제 2 IC 디바이스 (230) 간에 데이터, 제어, 커맨드 및 다른 정보를 통신하도록 동작될 수도 있다.
산업 표준들은 애플리케이션 특정일 수도 있다. 일 예에서, MIPI 표준은 애플리케이션 프로세서 IC 디바이스 (202) 와 모바일 디바이스에서 카메라 또는 디스플레이를 지원하는 IC 디바이스 (230) 간에 동기식 인터페이스 사양을 포함하는 물리 계층 인터페이스들 (D-PHY) 을 정의한다. D-PHY 사양은 모바일 디바이스들에 대한 MIPI 사양들을 따르는 제품들의 동작 특성들을 통제한다. D-PHY 인터페이스는 모바일 디바이스 내의 컴포넌트들 (202 및 230) 간을 상호접속하는, 플렉서블한, 저비용의, 고속 직렬 인터페이스를 사용하는 데이터 전송들을 지원할 수도 있다. 이들 인터페이스들은 전자기 간섭 (EMI) 이슈들을 회피하기 위해 느린 에지들을 갖는 상대적으로 낮은 비트 레이트들을 제공하는 금속 산화물 반도체 (CMOS) 병렬 버스들을 포함할 수도 있다.
도 2 의 통신 링크 (220) 는 (M 개 와이어들로 표시되는) 복수의 신호 와이어들을 포함하는 유선 버스로 구현될 수도 있다. M 개 와이어들은 디스플레이 인터페이스와 같은 고속 디지털 인터페이스에서 N-상 인코딩된 데이터를 전달하도록 구성될 수도 있다. M 개 와이어들은 채널들 (222, 224 및/또는 226) 중 하나 이상에서 N-상 극성 인코딩을 용이하게 할 수도 있다. 물리 계층 드라이버들 (210 및 240) 은 통신 링크 (220) 를 통한 송신을 위해 N-상 극성 인코딩된 데이터 심볼들을 생성하고 및/또는 통신 링크 (220) 로부터 수신된 N-상 극성 인코딩된 데이터 심볼들을 디코딩하도록 구성 또는 적응될 수도 있다. N-상 극성 인코딩의 사용은 고속 데이터 전송을 제공하고, 다른 인터페이스들의 전력의 1/2 또는 그 미만을 소비할 수도 있는데, 이는 더 적은 드라이버들이 N-상 극성 인코딩된 데이터 링크들 (220) 에서 활성이기 때문이다.
N-상 극성 인코딩 디바이스들 (210 및/또는 240) 은 통상적으로 통신 링크 (220) 에서의 트랜지션마다 다수의 비트들을 인코딩할 수 있다. 일 예에서, 3-상 인코딩 및 극성 인코딩의 조합은 WVGA (wide video graphics array) 를, 프레임 버퍼 없는 초당 80 개 프레임들의 LCD 드라이버 IC 를 지원하는데 사용할 수도 있고, 디스플레이 리프레시를 위해 810 Mbps 로 픽셀 데이터를 전달한다.
도 3 은 도 2 에 도시된 통신 링크 (220) 의 특정 양태들을 구현하는데 사용될 수도 있는 M-와이어, N-상 극성 인코더 (300) 를 도시하는 개략적인 다이어그램이다. 도시된 예에서, M-와이어, N-상 극성 인코딩 송신기는 M = 3 와이어들 및 N = 3 상 시그널링을 사용하여 정보를 송신하는데 구성된다. 3-와이어, 3-상 인코딩의 예는 오직 본 발명의 특정 양태들의 설명들을 간략화하기 위한 목적으로 선택된다. 3-와이어, 3-상 인코더들에 대하여 개시된 원칙들 및 기술들은 M-와이어, N-상 극성 인코더들 및 디코더들의 다른 구성들에 적용될 수 있다.
M-와이어, N-상 극성 인코딩 방식에서 M 와이어들의 각각에 대하여 정의된 시그널링 상태들은 비구동 (undriven) 상태, 포지티브 구동 상태 및 네거티브 구동 상태를 포함할 수도 있다. 3-와이어, 3-상 극성 인코딩 방식에서, 포지티브 구동 상태 및 네거티브 구동 상태는 신호 와이어들 (310a, 310b 및/또는 310c) 중 2 개의 와이어들 간에 전압 차이를 제공하고, 및/또는 직렬로 접속된 신호 와이어들 (310a, 310b 및/또는 310c) 중 2 개의 와이어들을 통해 전류를 구동하여 전류가 2 개의 신호 와이어들 (310a, 310b 및/또는 310c) 에서 상이한 방향들로 흐르도록 함으로써 획득될 수도 있다. 일 예에서, 비구동 상태는 신호 와이어 (310a, 310b 또는 310c) 의 드라이버의 출력을 고-임피던스 모드에 위치시킴으로써 실현될 수도 있다. 다른 예에서, 비구동 상태는, 수동적으로 또는 능동적으로 "비구동" 신호 와이어 (310a, 310b 또는 310c) 로 하여금 구동된 신호 와이어들 (310a, 310b 및/또는 310c) 에서 제공된 양의 전압 레벨과 음의 전압 레벨 간의 실질적으로 절반에 놓인 전압 레벨을 가정하게 함으로써 신호 와이어 (310a, 310b 또는 310c) 에서 획득될 수도 있다. 통상적으로, 비구동 신호 와이어 (310a, 310b 또는 310c) 를 통해 어떤 중요한 전류도 흐르지 않는다. 3-와이어, 3-상 극성 인코딩 방식에 대하여 정의된 시그널링 상태들은 전압 또는 전류 상태들을 표현할 수도 있는 3 개의 시그널링 상태들 {+1, 0, -1} 을 사용하여 표시될 수도 있다. 일 예에서, 3 개의 상태들 {+1, 0, -1} 은 3 개의 전압 레벨들 +V, 0, -V 을 의미할 수도 있다. 다른 예에서, 3 개의 상태들 {+1, 0, -1} 은 3 개의 전압 레벨들 +V, +V/2, 0 을 의미할 수도 있다. 또 다른 예에서, 3 개의 상태들 {+1, 0, -1} 은 I, 0, -I 의 전류들을 의미할 수도 있다.
3-와이어, 3-상, 극성 인코더는 커넥터들 (310a, 310b 및 310c) 의 시그널링 상태를 제어하기 위해 드라이버들 (308) 의 세트를 채용할 수도 있다. 드라이버들 (308) 은 단위-레벨 전류-모드 또는 전압-모드 드라이버들로서 구현될 수도 있다. 각각의 드라이버 (308) 는 대응하는 커넥터 (310a, 310b 또는 310c) 의 시그널링 상태를 결정하는 신호들 (316a, 316b 또는 316c) 의 세트를 수신할 수도 있다. 도시된 예에서, 드라이버들 (308) 의 각각은 대응하는 커넥터 (310a, 310b 또는 310c) 에 대하여 4 개의 상태들을 정의하는 신호들 (316a, 316b 또는 316c) 의 쌍을 수신한다. 다른 예에서, 각각의 드라이버 (308) 는 대응하는 커넥터 (310a, 310b 또는 310c) 에 대하여 8 개의 상태들을 정의하는 3 개의 신호들의 세트를 수신할 수도 있다.
M-와이어, N-상 극성 인코딩 방식에서 각각의 송신 심볼 간격 동안, 포지티브 구동된 (+1 시그널링 상태) 시그널링 와이어들 (310a, 310b 또는 310c) 의 수는 네거티브 구동된 (-1 시그널링 상태) 신호 와이어들 (310a, 310b 또는 310c) 의 수와 동일한 동안, 적어도 하나의 신호 와이어 (310a, 310b 또는 310c) 는 비구동 상태 (0 시그널링 상태) 에 있으며, 따라서 수신기에 흐르는 전류의 합은 0 이 된다. 이전에 송신된 심볼과 다음 송신된 심볼 간의 각각의 심볼 트랜지션에서, 적어도 하나의 신호 와이어 (310a, 310b 또는 310c) 의 시그널링 상태는 변화한다. 적어도 하나의 신호 와이어 (310a, 310b 및/또는 310c) 의 시그널링 상태가 연속하는 심볼들의 각 쌍 간에 변화할 경우, 수신기는 트랜지션들에 기초하여 수신 클록을 신뢰할 수 있게 생성할 수 있다.
동작시, 맵퍼 (302) 는 입력 데이터 (310) 를 수신하고 심볼들 (312) 의 세트에 맵핑할 수도 있다. 도시된 3-와이어, 3-상 예에서, 심볼들의 세트는 7 개의 3-비트 심볼들을 포함하고, 입력 데이터 (310) 의 16-비트 워드는 심볼들의 각각의 세트에서 인코딩될 수도 있다. 3-비트 심볼의 각각의 비트는 하나의 심볼 간격 동안 신호 와이어들 (310a, 310b 및 310c) 중 하나의 상태를 정의한다. 심볼들 (312) 의 시퀀스는 심볼들 (314) 의 타이밍 시퀀스를 제공하는 병렬-대-직렬 컨버터들 (304) 을 사용하여 직렬화될 수도 있으며, 각각의 심볼은 3-와이어들 (310a, 310b 및 310c) 의 시그널링 상태를 정의한다. 심볼들 (314) 의 시퀀스는 통상적으로 심볼 간격들을 기술하기 위해 송신 클록을 사용하여 타이밍되며, 따라서 단일 심볼은 각각의 심볼 간격에서 송신된다. 3-와이어 위상 인코더 (306) 는 한 번에 하나의 심볼씩 맵퍼에 의해 생성된 7 개 심볼들 (314) 의 시퀀스를 수신하고, 각 심볼 간격 동안 각각의 신호 와이어 (310a, 310b 및 310c) 의 상태를 계산한다. 3-와이어 인코더 (306) 는 현재 입력 심볼 (314) 및 신호 와이어들 (310a, 310b 및 310c) 의 이전 상태들에 기초하여 신호 와이어들 (310a, 310b 및 310c) 의 상태들을 선택한다.
M-와이어, N-상 인코딩의 사용은, 다수의 비트들이 복수의 심볼들에서 인코딩되는 것을 허용한다. 데이터 비트들의 비-정수 개수는 각 심볼에서 인코딩될 수도 있다. 3-와이어, 3-상 시스템의 간단한 예에서, 동시에 구동될 수도 있는 2 개 와이어들의 3 개의 사용가능한 조합들, 및 구동되는 와이어들의 쌍에서 극성의 2 개의 가능한 조합들이 존재하며, 6 개의 가능한 상태들을 발생한다. 신호 와이어들 (310a, 310b 및/또는 310c) 의 시그널링 상태는 심볼들 간의 각 트랜지션에서 변화하며, 따라서 6 개 상태들 중 5 개의 상태들이 매 트랜지션에서 사용가능하다. 다시 말해서, 적어도 하나의 와이어의 상태는 수신기가 신뢰할만한 수신 클록을 생성하는 것을 허용하도록 각 트랜지션에서 변화하며, 현재 시그널링 상태를 고려할 때, 각 트랜지션에서 사용가능한 5 개의 가능한 시그널링 상태들이 존재한다. 5 개 상태들로, log2(5)
Figure 112016015342635-pct00001
2.32 비트들이 심볼마다 인코딩될 수도 있다. 따라서, 심볼당 2.32 비트들을 전달하는 7 개 심볼들이 16.24 비트들을 인코딩할 수 있기 때문에, 맵퍼는 16-비트 워드를 수용하여 7 개 심볼들로 컨버팅할 수도 있다. 즉, 5 개 상태들을 인코딩하는 7 개 심볼들의 조합은 57 (78,125) 치환들을 갖는다. 따라서, 7 개 심볼들은 16 개 이진 비트들의 216 (65,536) 치환들을 인코딩하는데 사용될 수도 있다.
도 4 는 원형 상태 다이어그램 (450) 으로 도시된 3-상 변조 데이터-인코딩 방식을 사용하여 인코딩된 신호들에 대한 타이밍 차트 (400) 의 일 예를 포함하는 다이어그램이다. 정보는 예컨대, 와이어 또는 커넥터가 상태 다이어그램 (450) 에 의해 정의된 3 상 상태들 (S1, S2 및 S3) 중 하나에 있는, 시그널링 상태들의 시퀀스로 인코딩될 수도 있다. 각각의 상태는 120°위상 쉬프트만큼 다른 상태들과 분리될 수도 있다. 일 예에서, 데이터는 와이어 또는 커넥터에서 위상 상태들의 회전 방향으로 인코딩될 수도 있다. 신호에서의 위상 상태들은 시계 방향 (452, 452') 또는 반시계 방향 (454, 454') 으로 회전할 수도 있다. 예컨대 시계 방향 (452, 452') 에서, 위상 상태들은 S1 으로부터 S2 로, S2 로부터 S3 으로, 그리고 S3 으로부터 S1 으로의 트랜지션들 중 하나 이상을 포함하는 시퀀스에서 전진할 수도 있다. 반시계 방향 (454, 454') 에서, 위상 상태들은 S1 로부터 S3 로, S3 로부터 S2 로, 그리고 S2 로부터 S1 로의 트랜지션들 중 하나 이상을 포함하는 시퀀스에서 전진할 수도 있다. 3 개 와이어들 (310a, 310b 및 310c) 은 동일한 신호의 상이한 위상 쉬프트된 버전들을 운반하며, 그 버전들은 서로에 대하여 120°만큼 위상 쉬프트된다. 각각의 시그널링 상태는 와이어 또는 커넥터 상의 상이한 전압 레벨 및/또는 와이어 또는 커넥터를 통한 전류 흐름의 방향으로 표현될 수도 있다. 3-와이어 시스템에서 시그널링 상태들의 시퀀스의 각각 동안, 각각의 와이어 (310a, 310b 및 310c) 는 다른 와이어들과 상이한 시그널링 상태들에 있다. 3 초과의 와이어들 (310a, 310b 및 310c) 이 3-상 인코딩 시스템에서 사용될 경우, 2 이상의 와이어들 (310a, 310b 및/또는 310c) 은, 각각의 상태가 모든 시그널링 간격에서 적어도 하나의 와이어 (310a, 310b 및/또는 310c) 에 존재하지만, 각각의 시그널링 간격에서 동일한 시그널링 상태에 있을 수도 있다.
정보는 각각의 위상 트랜지션 (410) 에서 회전 방향으로 인코딩될 수도 있고, 3-상 신호는 각각의 시그널링 상태에 대하여 방향을 변화시킬 수도 있다. 회전 방향은 위상 트랜지션 이전 및 이후에 어떤 와이어들 (310a, 310b 및/또는 310c) 이 '0' 상태 (예컨대, 비구동 상태) 에 있는지를 고려함으로서 결정될 수도 있으며, 이는 비구동 와이어 (310a, 310b 및/또는 310c) 가 회전의 방향에 관계없이 회전하는 3-상 신호에서의 모든 시그널링 상태에서 변화하기 때문이다.
인코딩 방식은 또한, 능동적으로 구동되는 컨덕터들 (310a, 310b 및 310c) 중 2 개의 컨덕터들의 극성 (408) 에 있어서의 정보를 인코딩할 수도 있다. 3-와이어 구현에서 임의의 시간에, 컨덕터들 (310a, 310b, 310c) 중 적어도 2 개는 대향하는 방향들의 전류들로 및/또는 전압 차이로 구동된다. 간단한 구현에서, 데이터 (412) 는 2 비트 값들 (412) 을 사용하여 인코딩될 수도 있고, 여기서 하나의 비트는 위상 트랜지션들 (410) 의 방향에서 인코딩되고, 제 2 비트는 현재 상태의 극성 (408) 에서 인코딩된다.
타이밍 차트 (400) 는 위상 회전 방향 및 극성 양자를 사용하는 데이터 인코딩을 도시한다. 곡선들 (402, 404 및 406) 은 다수의 위상 상태들에 대하여 각각 3 개의 와이어들 (310a, 310b 및 310c) 에서 운반되는 신호들에 관련된다. 초기에, 위상 트랜지션들 (410) 은 시계 방향이고, 최상위 비트는 최상위 비트의 이진 '0' 에 의해 표시된 것과 같이, 위상 트랜지션들 (410) 의 회전이 시간 (414) 에 반시계 방향으로 스위칭할 때까지, 이진 '1' 로 세팅된다. 최하위 비트는 각 상태에서 신호의 극성 (408) 을 반영한다.
일부 경우들에서, 인코딩 방식은 2 개의 능동적으로 구동된 컨덕터들 (310a, 310b 및/또는 310c) 의 극성 (408) 의 변화들에서의 정보를 인코딩할 수도 있다. 일 예에서, "1" 의 값을 갖는 비트는 2 개의 심볼 간격들 간에 극성 (408) 의 변화에 따라 인코딩될 수도 있지만, "0" 의 값을 갖는 비트는 2 개의 심볼 간격들 간에 극성 (408) 의 변화 없음에 따라 인코딩될 수도 있다. 디코더는 회전 방향의 변화들 및 극성의 변화들을 검출함으로써 심볼들 간에 경계들에서 데이터를 디코딩하도록 구성될 수도 있다. 데이터가 도 4 의 예에서 2 개의 심볼 간격들 간에 극성의 변화 시 인코딩된다면, 인코딩된 값들 (412) 의 도시된 시퀀스는 시퀀스 {11, 10, 10, 11, 10, 01, 01, 01, 01, 01, 01, 01} 에 의해 대체될 수 있다.
본원에 개시된 특정 양태들에 따르면, 데이터의 하나의 비트는 3-와이어 3-상 인코딩 시스템에서의 회전 또는 위상 변화에 있어서 인코딩될 수도 있고, 추가의 비트는 이전의 와이어 상태에서 사용된 극성과 비교할 때 2 개의 구동된 와이어들의 극성에 있어서 또는 구동된 와이어들의 극성의 변화에 있어서 인코딩될 수도 있다. 추가의 정보는 현재 상태로부터 임의의 가능한 상태들로의 트랜지션을 허용함으로써 3-와이어, 3-상 인코딩 시스템의 각 트랜지션에서 인코딩될 수도 있다. 3 개의 회전 위상들 및 각 위상에 대한 2 개의 극성들이 주어질 때, 6 개의 상태들이 3-와이어, 3-상 인코딩 시스템에서 사용가능하다. 따라서, 5 개 상태들이 임의의 현재 상태로부터의 트랜지션들에 대하여 사용가능하다. 따라서, 심볼 (트랜지션) 마다 log2(5)
Figure 112016015342635-pct00002
2.32 비트들이 발생할 수도 있고, 이는 맵퍼가 16-비트 워드를 수용하여 이를 7 개 심볼들에서 인코딩하는 것을 허용한다.
N-상 데이터 전송은 버스와 같은 통신 매체에 제공된 3 초과의 와이어들을 사용할 수도 있다. 동시에 구동될 수 있는 추가의 신호 와이어들의 사용은, 상태들 및 극성들의 더 많은 조합들을 제공하고, 데이터의 더 많은 비트들이 상태들 간의 각 트랜지션에서 인코딩되게 한다. 이는 시스템의 스루풋을 상당히 개선할 수 있고, 데이터 비트들을 송신하기 위해 다수의 차동 쌍들을 사용하는 접근방식들에 비해 전력 소비를 감소시키는 동시에 증가된 대역폭을 제공할 수 있다.
일 예에서, 인코더는 각 상태에 대하여 구동된 와이어들의 2 개 쌍들로 6 개의 와이어들을 사용하여 심볼들을 송신할 수도 있다. 6 개 와이어들은 A 부터 F 까지 라벨링될 수도 있어서, 일 상태에서, 와이어들 (A 및 F) 은 포지티브 구동되고, 와이어들 (B 및 E) 은 네거티브 구동되고, C 및 D 는 구동되지 않는다 (또는 어떤 전류도 전달하지 않는다). 6 개의 와이어들에 대하여,
Figure 112016015342635-pct00003
의 능동적으로 구동된 와이어들의 가능한 조합들과 함께:
Figure 112016015342635-pct00004
의 각 위상 상태에 대한 극성의 상이한 조합들이 존재할 수도 있다.
능동적으로 구동된 와이어들의 15 개의 상이한 조합들은 다음을 포함할 수도 있다:
Figure 112016015342635-pct00005
구동되는 4 개의 와이어들에서, 2 개의 와이어들의 가능한 조합이 포지티브 구동된다 (그리고 다른 2 개의 와이어들은 네거티브 구동되어야만 한다). 극성의 조합들은 다음을 포함할 수도 있다:
Figure 112016015342635-pct00006
따라서, 상이한 상태들의 전체 개수는 15 x 6 = 90 으로 계산될 수도 있다. 심볼들 간의 트랜지션을 보장하기 위해, 89 개 상태들이 임의의 현재 상태로부터 사용가능하고, 각 심볼에서 인코딩될 수도 있는 비트들의 수는: 심볼당 log2 (89)
Figure 112016015342635-pct00007
6.47 비트들로 계산될 수도 있다. 이러한 예에서, 32-비트 워드는, 5 x 6.47 = 32.35 비트들이 주어질 때, 맵퍼에 의해 5 개 심볼들로 인코딩될 수 있다.
임의의 사이즈의 버스에 대하여 구동될 수 있는 와이어들의 조합들의 수에 대한 일반적인 식은, 버스에서 와이어들의 개수와 동시에 구동되는 와이어들의 개수의 함수로서:
Figure 112016015342635-pct00008
이다.
구동되고 있는 와이어들에 대한 극성의 조합들의 개수에 대한 식은:
Figure 112016015342635-pct00009
이다.
심볼당 비트들의 수는:
Figure 112016015342635-pct00010
이다.
도 5 는 3-와이어, 3-상 디코더의 특정 양태들을 도시하는 다이어그램 (500) 이다. 차동 수신기들 (502) 및 와이어 상태 디코더 (504) 는 서로에 대해 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 상태의 디지털 표현을 제공하고, 선행하는 심볼 주기에서 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 시그널링 상태와 비교하여, 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 시그널링 상태에서 변화들을 검출하도록 구성된다. 심볼 주기 동안 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 시그널링 상태의 디지털 표현은 원시 (raw) 심볼로 지칭될 수도 있다. 7 개의 연속하는 원시 심볼들 (514) 의 시퀀스는 디맵퍼 (508) 에 의해 프로세싱될 7 개 심볼들 (516) 의 세트를 획득하기 위해 직렬 대 병렬 컨버터들 (506) 에 의해 어셈블링된다. 디맵퍼 (508) 는 출력 데이터 (520) 를 제공하기 위해 FIFO (510) 에 버퍼링될 수도 있는 출력 데이터 (518) 의 16 개 비트들을 생성한다.
동작시, 와이어 상태 디코더 (504) 는 와이어들 (310a, 310b 및 310c) 에서 수신된 신호들로부터 심볼들 (514) 의 시퀀스를 추출할 수도 있다. 심볼들 (514) 은 본원에 개시된 것과 같은 와이어들 (310a, 310b 및 310c) 에서 수신된 신호들의 위상 회전과 극성의 조합, 또는 극성의 변화들로서 표현될 수도 있는 시그널링 상태들에 기초하여 디코딩된다. 와이어 상태 디코더는 와이어들 (310a, 310b 및 310c) 로부터 심볼들을 신뢰할 수 있게 캡처하는데 사용될 수 있는 클록 (526) 을 추출하는, CDR (524) 을 포함할 수도 있다. CDR (524) 은 연속하는 심볼 간격들 간의 각각의 경계에서 와이어들 (310a, 310b 및/또는 310c) 중 적어도 하나에서의 트랜지션의 발생에 기초하여 클록 (526) 을 생성하도록 구성될 수도 있다. CDR (524) 은 모든 와이어들 (310a, 310b 및 310c) 에 대한 시간이 안정화되게 하고, 따라서 현재 심볼이 디코딩 목적들을 위해 신뢰할 수 있게 캡처될 수 있는 것을 보장하기 위해, 클록 (526) 의 에지를 지연시킬 수도 있다.
CDR (524) 에 의해 사용되는 지연은 동일한 심볼 경계에서 다수의 에지들의 영향을 마스킹하는데 충분한 시간의 주기를 허용하도록 구성될 수도 있으며, 여기서 다수의 에지들은 차동 수신기들 (502) 중 상이한 수신기들에 의해 상이한 시간들에 생성된다. 이들 다수의 에지들은, 특정 상태 트랜지션들이 상이한 차동 수신기들 (502) 이 서로에 대하여 시간상 분리될 수도 있는 에지들을 생성하게 하는 경우에, 발생할 수 있다. CDR (524) 은 모든 가능한 에지들이 발생한 시간까지 심볼 경계에서 제 1 발생하는 에지에 대한 응답을 지연시키는 지연 엘리먼트를 포함할 수도 있다. CDR (524) 의 컴포넌트들의 성능에서의 변동들은 다수의 에지들 간에 지연들에 영향을 미치는 것으로 예상될 수도 있다. CDR (524) 의 컴포넌트들의 성능에서의 이러한 변동들은 최악의 조건들을 설명하는 CDR (524) 에 대한 지연을 형성함으로써 수용될 수도 있다. 성능에서의 변동들은 예컨대, 전력, 전압 및 열 (PVT) 조건들에서의 변화들에 의해 야기될 수도 있다. 지연의 지속시간은 통신 링크의 성능에 영향을 줄 수도 있고, 통신 링크에서 사용될 수 있는 최대 클록 주파수를 제한할 수도 있다. 형성된 지연이 너무 짧다면, 다수의 클록 펄스들은 단일 심볼에 대하여 생성될 수도 있고, 송신기와 수신기 간의 동기화의 손실을 야기할 수도 있다. 지연이 너무 길다면, 심볼 시간들은 오버랩할 수도 있고, 따라서 클록 복원 회로가 오작동하거나 2 개의 심볼 간격들 동안 단일 펄스를 생성하게 한다.
도 6 은 3-와이어, 3-상 디코더에서 클록 생성의 특정 양태들을 도시하는 블록 상태 다이어그램 (600) 을 포함한다. 차동 수신기들 (602a, 602b 및 602c) 의 세트는 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 각각의 시그널링 상태를, 3 개의 와이어들 (310a, 310b 및 310c) 중 다른 와이어들의 시그널링 상태들과 비교한다. 도시된 예에서, 제 1 차동 수신기 (602a) 는 와이어들 (310a 및 310b) 의 시그널링 상태들을 비교하고, 제 2 차동 수신기 (602b) 는 와이어들 (310b 및 310c) 의 상태들을 비교하고, 제 3 차동 수신기 (602c) 는 와이어들 (310a 및 310c) 의 상태들을 비교한다. 본원에서 설명된 것과 같이, 와이어들 (310a, 310b 및 310c) 중 적어도 하나의 시그널링 상태는 각각의 심볼 경계에서 변화한다. 따라서, 상태 변화 검출 회로 (604) 는, 차동 수신기들 (602a, 602b 및 602c) 중 적어도 하나의 출력이 각각의 심볼 간격의 단부에서 변화할 경우에 시그널링 상태의 변화의 발생을 검출할 수 있다.
특정 시그널링 상태 트랜지션들이 단일 차동 수신기들 (602a, 602b 또는 602c) 에 의해 검출가능할 수도 있는 반면, 다른 시그널링 상태 트랜지션들은 차동 수신기들 (602a, 602b 및/또는 602c) 중 2 이상의 수신기들에 의해 검출될 수도 있다. 일 예에서, 2 개 와이어들의 시그널링 상태들 또는 상대적인 상태들은 심볼 트랜지션 이후에 변화되지 않을 수도 있고, 대응하는 차동 수신기 (602a, 602b 또는 602c) 의 출력은 또한 심볼 트랜지션 이후에 변화되지 않을 수도 있다. 다른 예에서, 와이어들 (602a, 602b 및/또는 602c) 의 쌍에서 양자의 와이어들은 제 1 시간 간격에서 동일한 제 1 상태에 있을 수도 있고, 양자의 와이어들은 제 2 시간 간격에서 동일한 제 2 상태에 있을 수도 있으며, 따라서 대응하는 차동 수신기 (602a, 602b 및/또는 602c) 의 출력은 위상 트랜지션 이후에 변화되지 않을 수도 있다. 따라서, 클록 생성 회로 (606) 는 시그널링 상태 트랜지션이 언제 발생하였는지를 결정하기 위해 모든 차동 수신기들 (602a, 602b 및 602c) 의 출력들을 모니터링하는 시그널링 상태 변화 검출 회로들 및 로직 (604) 을 포함할 수도 있다. 클록 생성 회로는 검출된 시그널링 상태 트랜지션들에 기초하여 수신 클록 (608) 을 생성할 수도 있다.
상이한 와이어들 (310a, 310b 및/또는 310c) 에서 시그널링 상태들의 변화들이 발생할 수도 있거나, 상이한 시간들에서 검출될 수도 있다. 시그널링 상태 변화들의 검출 타이밍은 발생한 시그널링 상태 변화의 타입에 따라 변화할 수도 있다. 이러한 변화의 결과는 도 6 에 제공된 간략화된 타이밍 다이어그램 (650) 에 도시된다. 시그널링 상태 변화 검출 회로 (604) 및/또는 차동 수신기들 (602a, 602b 및 602c) 의 출력들을 표현하는 마커들 (622, 624 및 626) 은 오직 예시의 명확함을 위해 상이한 높이들이 할당된다. 마커들 (622, 624 및 626) 의 상대적인 높이들은 클록 생성 또는 데이터 디코딩을 위해 사용된 전압 또는 전류 레벨들, 극성 또는 가중 값들에 특별한 관계가 없다. 타이밍 차트 (650) 는 3 개의 와이어들 (310a, 310b 및 310c) 을 통해 송신된 심볼들과 연관된 트랜지션들의 타이밍 영향을 도시한다. 타이밍 차트 (650) 에서, 일부 심볼들 간의 트랜지션들은, 심볼들이 신뢰할 수 있게 캡처될 수도 있는 가변 캡처 윈도우들 (630a, 630b, 630c, 630d, 630e, 630f 및/또는 630g; 종합적으로, 심볼 캡처 윈도우들 (630)) 을 발생할 수도 있다. 검출되는 시그널링 상태 변화들과 그들의 상대적인 타이밍의 수는 클록 신호 (608) 에서 지터를 발생할 수 있다.
심볼 윈도우들 (630) 의 사이즈들의 변동 및 연관된 지터는 도 7 에 도시된 간단한 예 (700) 에 예시된 것과 같이, 와이어들 (310a, 310b 및 310c) 의 전기적 특징들에 의해 부분적으로 야기될 수도 있다. 트랜지션 시간들은 신호 상승 또는 하강 시간들의 변동 및/또는 제작 프로세스 허용오차들, 전압 및 전류 소스들의 변화들 및 안정성 및 동작 온도에 의해 야기된 검출 회로들의 변동에 의해 영향 받을 수도 있다. 트랜지션 시간들의 큰 변동은 3-상 시그널링에서 상이한 전압 또는 전류 레벨들의 존재 때문일 수도 있다. 간략화된 "전압-레벨" 예가 도 7 에 도시되며, 단일 와이어 (310a, 310b 또는 310c) 에서 트랜지션 시간들을 도시한다. 제 1 심볼 (Symn; 702) 은 시간 (722) 에 종료하는 심볼 간격에서 송신될 수도 있고, 제 2 심볼 (Symn +1) 은 시간 (724) 에 종료하는 심볼 간격에서 송신될 수도 있고, 제 3 심볼 (Symn +2; 706) 은 제 4 심볼 (Symn +3; 708) 의 송신이 시작할 경우, 시간 (726) 에 종료하는 심볼 간격에서 송신될 수도 있다. 제 1 심볼 (702) 에 의해 결정된 상태로부터 제 2 심볼 (704) 에 대응하는 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (718 및/또는 720) 에 도달하는데 걸린 시간에 기인하는 제 1 지연 (712) 이후에 검출될 수도 있다. 임계 전압들은 와이어 (310a, 310b 또는 310c) 의 상태를 결정하는데 사용될 수도 있다. 제 2 심볼 (704) 에 의해 결정된 상태로부터 제 3 심볼 (706) 에 대한 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압들 (718 및/또는 720) 중 하나에 도달하는데 걸린 시간에 기인하는 제 2 지연 (714) 이후에 검출될 수도 있다. 제 3 심볼 (706) 에 의해 결정된 상태로부터 제 4 심볼 (708) 에 대한 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (718 및/또는 720) 에 도달하는데 걸린 시간에 기인하는 제 3 지연 (716) 이후에 검출될 수도 있다.
도시된 것과 같이, 제 3 지연 (716) 은 제 1 지연 (712) 보다 짧을 수도 있고, 제 2 지연 (714) 은 가장 긴 지연일 수도 있다. 제 2 지연 (714) 은 상태 0 이 비구동 상태이기 때문에 가장 긴 지연일 수도 있고, 와이어 (310a, 310b 또는 310c) 에서의 전압은 임계치 (720) 쪽으로 느리게 드리프트할 수도 있는 반면, 제 1 지연 (712) 및 제 2 지연 (716) 은 와이어 (310a, 310b 또는 310c) 가 각각 -1 및 +1 상태들로 능동적으로 인출되는 트랜지션들과 연관된다.
도 8 은 3-와이어 3-상 통신 링크의 일 예에서 6 개의 가능한 위상-극성 상태들 및 30 개의 가능한 상태 트랜지션들을 도시하는 상태 다이어그램 (800) 이다. 상태 다이어그램 (800) 에서 가능한 상태들 (802, 804, 806, 812, 814 및 816) 은 도 4 의 다이어그램 (450) 에 도시된 상태들을 포함한다. 예시적인 상태 엘리먼트 (820) 에 도시된 것과 같이, 상태 다이어그램 (800) 에서 각각의 상태 (802, 804, 806, 812, 814 및 816) 는 (각각 와이어들 (310a, 310b 및 310c) 을 통해 송신된) 신호들 A, B 및 C 의 시그널링 상태를 도시하는 필드 (822), 및 (도 6 에 도시된 차동 수신기들 (602a, 602b, 602c) 과 같은) 차동 수신기들에 의한 와이어 전압들의 삭감의 결과를 도시하는 필드 (824) 를 포함한다. 상태 802 (+x) 에서, 와이어 A= +1, 와이어 B = -1 및 와이어 C= 0 는 차동 수신기 (602a) (A-B) = +2, 차동 수신기 (602b) (B-C) = -1 및 차동 수신기 (602c) (C-A) = +1 의 출력을 산출한다. 상태 다이어그램에 의해 도시된 것과 같이, 상태 변화 검출 회로 (604) 에 의해 취득된 트랜지션 결정들은 차동 수신기들 (602a, 602b 및 602c) 에 의해 생성되는 5 개의 가능한 레벨들에 기초하며, 그 레벨들은 -2, -1, 0, +1 및 +2 전압 상태들을 포함한다.
도 9 는 다수의 심볼 간격들 (902) 의 오버레이로부터 생성될 수도 있는 간략화된 아이 차트 (eye chart) 를 도시하는 다이어그램이다. 신호 트랜지션 영역 (904) 은 가변 신호 상승 시간들이 신뢰할 수 있는 디코딩을 방해하는, 불확실한 시간 주기를 나타낸다. 상태 정보는 심볼이 안정적이고 신뢰할 수 있게 수신되고 디코딩될 수 있는 시간 주기를 나타내는 "아이 오프닝 (eye opening)" (906) 에서 결정될 수도 있다. 일 예에서, 아이 오프닝 (906) 은 신호 트랜지션 영역 (904) 의 단부 (901) 에서 시작하고 심볼 간격 (902) 의 종료 (914) 시 종료하는 것으로 결정될 수도 있다. 도 9 에 도시된 예에서, 아이 오프닝 (906) 은 신호 트랜지션 영역 (904) 의 단부 (912) 에서 시작하고 커넥터들 (310a, 310b, 310c) 의 시그널링 상태 및/또는 3 개의 차동 수신기들 (602a, 602b 및 602c) 의 출력들이 다음 심볼을 반영하도록 변화하기 시작한 시간 (916) 에 종료하는 것으로 결정될 수도 있다.
N-상 인코딩을 위해 구성된 통신 링크 (220) 의 최대 속도는, 수신된 신호 아이 오프닝 (906) 과 비교할 때 신호 트랜지션 영역 (904) 의 지속시간에 의해 제한될 수도 있다. 심볼 간격 (902) 에 대한 최소 주기는 예컨대, 도 5 에 도시된 디코더 (500) 에서의 CDR 회로 (524) 또는 도 6 의 클록 생성 회로 (606) 와 연관된 엄격한 설계 마진들에 의해 제한될 수도 있다. 상이한 시그널링 상태 트랜지션들은 2 이상의 와이어들 (310a, 310b 및/또는 310c) 에 대응하는 신호 트랜지션 시간들에서의 상이한 변동들과 연관될 수도 있고, 따라서 수신 디바이스에서 차동 수신기들 (602a, 602b 및 602c) 의 출력들이 심볼 경계 (908) 에 대하여 상이한 시간들 및/또는 레이트들에서 변화하게 하며, 여기서 차동 수신기들 (602a, 602b 및 602c) 의 입력들이 변화하기 시작한다. 수신 디바이스에서 다수의 차동 수신기들 (602a, 602b 및 602c) 의 출력들 간의 수신 신호 트랜지션 시간들에서의 큰 전위차들은, 통상적으로 CDR 회로 (524) 에서 지연 엘리먼트의 구현을 요구한다. 지연 엘리먼트는 트랜지션 영역 시간 (904) 을 초과하는 최소 지연 주기를 가질 수도 있다. 일 예에서, 지연 엘리먼트는 도 6 에 도시된 상태 변화 검출 회로 (604) 및/또는 클록 생성 회로 (606) 중 하나 이상에서 제공될 수도 있다. 이러한 지연 엘리먼트에 의해 제공되는 최대 지연 시간은 아이 오프닝 (906) 의 클로징 에지 (916) 를 넘어서 확장하지는 않을 수도 있다. 일부 예시들에서, 지연 엘리먼트에 의해 제공되는 최대 지연 시간은 시간 (914) 에서 다음 심볼 간격의 시작을 넘어서 확장하지는 않을 수도 있다. 더 빠른 데이터 레이트들에서, 아이 오프닝 (906) 은 심볼 간격 (902) 과 비교하여 작을 수 있고, 심볼 트랜지션 변동의 영향은 최대 심볼 송신 레이트의 결정적인 요인일 수도 있다.
임의의 단일 트랜지션의 지속시간은 신호 트랜지션 영역 (t△J) (904) 의 전체 범위를 포괄할 수 없는데, 이는 최소 가능한 시간 트랜지션 시간과 최대 가능한 트랜지션 시간이 단일 심볼 트랜지션 동안 발생할 수 없기 때문이다. 일 예에서, 신호 트랜지션 영역 (904) 은 모든 가능한 심볼 트랜지션들에 대하여, 차동 수신기 (602a, 602b 또는 602c) 의 출력에서 검출된 최초 제로 크로싱 (910) 시간 및 차동 수신기 (602a, 602b 또는 602c) 의 출력에서 검출된 최종 제로 크로싱 (912) 시간을 경계로 할 수도 있다. 차동 수신기 (602a, 602b 및 602c) 의 출력들에서 관측된 트랜지션 시간들은 커넥터들 및/또는 와이어들 (310a, 310b 또는 310c) 이 커넥터들 및/또는 와이어들 (310a, 310b 또는 310c) 의 드라이버 (308) 로의 입력 이후 다음 상태에 도달하는데 걸리는 시간들에 대응할 수도 있다. 최장의 가능한 트랜지션 시간은 신호 와이어 및/또는 커넥터 (310a, 310b 또는 310c) 의 특징들 및 수반되는 상태 트랜지션의 타입에 기초하여 결정될 수도 있다. 일 예에서, 최장의 가능한 트랜지션 시간은 하나 이상의 신호들의 상승 또는 하강 시간에 의해 결정될 수도 있다. 상승 및 하강 시간들은 원래의 및/또는 최종 상태들의 특정 및 전압 레벨들에 의해 결정될 수도 있다. 통상적으로, 최장의 가능한 트랜지션 시간은 능동 구동 상태와 비구동 상태 간의 트랜지션에 대응한다.
트랜지션 영역 (904) 에 대한 t J 의 하이 값은 CDR 회로 (524) 또는 클록 생성 회로 (606) 와 연관된 증가된 설계 어려움을 발생할 수 있다. 예를 들어, 클록 생성 회로 (606) 는 3 개의 차동 수신기 출력들 (602a, 602b 및 602c) 의 최초 제로 크로싱에 의해 트리거되는 지연 엘리먼트 또는 타이머를 채용할 수도 있다. 모두 3 개의 차동 수신기들 (602a, 602b 및 602c) 의 출력들의 상태는, 차동 수신기들 (602a, 602b 및 602c) 모두가 아이 오프닝 (916) 에 의해 정의될 수도 있는 그들의 최종 상태에 도달할 때까지 안전하게 샘플링되지 않을 수도 있다. 따라서, 타이머는 바람직하게, 시간 클록 생성 회로 (606) 가 3 개의 차동 수신기들 (602a, 602b 및 602c) 의 출력들을 샘플링하는데 사용되는 클록 에지를 출력할 수도 있는 트랜지션 영역 (904) 의 단부 (912) 직후에 만료할 수도 있다.
일부 디바이스들에서, CDR 회로 (524) 의 지연 엘리먼트들은 제조 프로세스에서의 변동들, 회로 공급 전압, 및 다이 온도 (PVT 변동) 에 의해 영향을 받을 수 있고, 상당히 변화하는 지연들을 생성할 수도 있다. 그러한 시스템들에서, CDR 회로 (524) 의 공칭 동작 조건은 일반적으로, 최악의 경우의 PVT 영향들 하에서도, 트랜지션 영역 (904) 의 단부 (912) 이후에 그리고 트랜지션 영역의 시작 (916) 이전에 클록 에지가 발생하는 것을 보장하기 위해, 아이 오프닝 (906) 의 중간 어딘가에 클록 에지를 생성하도록 설계에 의해 세팅된다. 트랜지션 영역 (904) 이 아이 오프닝 (906) 과 비교하여 클 경우, 아이 오프닝 (906) 내에 있는 클록 에지를 보장하는 CDR 회로 (524) 를 설계하는데 있어 어려움이 발생할 수 있다. 예를 들어, 통상의 지연 엘리먼트는 모든 PVT 조건들에서 2 의 인자만큼 변화하는 지연 값을 생성할 수도 있고, 아이 오프닝 (906) 은 조정할 수 없는 지연 값이 선택될 수 있게 하기 위해 트랜지션 영역 (904) 보다 커야만 한다.
일부 예시들에서, 트랜지션 영역 (904) 의 지속시간은 송신 회로 (도 3 에 도시) 의 하나 이상의 드라이버들 (308) 로의 입력의 변화와, 수신기 (도 5 에 도시) 의 차동 수신기들 (502) 의 출력들에서 관측되거나 예측된 대응하는 트랜지션들 간의 최대 타이밍에 기초하여 계산될 수도 있다. 다른 예시들에서, 변경된 트랜지션 영역 (916) 은 모든 심볼 트랜지션들에 대하여, 수신기들 (502) 중 하나의 출력에서의 제 1 트랜지션의 시간 (918) 과 다른 수신기들 (502) 의 출력에서의 최종 트랜지션의 시간 (914) 간의 최대 차이로서 수신기들 (502) 의 출력들에서 결정될 수도 있다.
본원에 개시된 특정 양태들에 따르면, 인코더는 트랜지션 영역 (904) 에 의해 점유된 심볼 간격 (902) 의 부분을 최소화하고 아이 오프닝 (906) 에 의해 점유된 심볼 간격 (902) 의 부분을 최대화하도록 구성될 수도 있다. 일 예에서, 하나 이상의 신호 와이어들 (310a, 310b 및/또는 310c; 도 3 에 도시) 상에서 시그널링 상태 트랜지션들의 타이밍은 특정 심볼 트랜지션들에 대하여 심볼 경계 (910, 914) 의 발생시 또는 그 이전에 변경될 수도 있다. 인코더 (300) 에서, 예컨대, 연속하는 심볼들에서 특정 N-상 심볼 상태들 (802, 804, 806, 812, 814 또는 816) 의 이전 지식 (선험적 상태 지식) 은, 하나 이상의 N-상 드라이버 출력들의 타이밍이 연속하는 심볼들 간의 심볼 경계 (908, 914) 에서 조정되어야만 하는지 여부를 예측하는데 사용될 수도 있다. 조정 방식은 또한, 선험적 상태 지식에 기초하여 결정될 수도 있다. 조정들은 드라이버들 (308) 중 하나 이상의 출력에 영향을 미칠 수도 있고, 조정들은 심볼 단위 기반으로 실행될 수도 있다. 조정들은 특정 드라이버 출력 신호 트랜지션들을 전진시키거나 지연시키는 것을 포함할 수도 있다. 일부 예시들에서, 조정들은 트랜지션이 발생할 것인지의 사전 지식 (선험적 트랜지션 지식) 에 기초하여, 특정 타입들의 심볼 트랜지션들에서 특정 드라이버 출력들에 대한 사전 강조의 선택적 부가를 포함할 수도 있다. 결과적으로, 수신 디바이스에서 차동 수신기들 (602a, 602b 및 602c) 로부터 출력된 에지들은 시간에 대하여 더 정확하게 정렬될 수도 있다.
선험적 트랜지션 지식은 상태 트랜지션들에 대한 커넥터들의 응답을 특징으로 하는 정보를 포함할 수도 있다. 그러한 정보는 커넥터들, 드라이버들 및 수신기들의 모델들로부터, 그리고 그 모델들을 사용하여 다양한 타입들의 트랜지션들에 대한 통신 링크들의 응답을 시뮬레이션하는 것에 의해 획득될 수도 있다. 일부 예시들에서, 선험적 트랜지션 지식은 물리적인 디바이스들 및 통신 링크들에서 수행되는 테스트로부터 획득된 경험적 정보를 포함할 수도 있다. 선험적 트랜지션 지식은 시뮬레이션된 결과와 측정된 결과 간의 차이들에 기초하여 캘리브레이션될 수도 있다. 선험적 트랜지션 지식은 시스템 동작 동안 수신기에 의해 제공된 경험적 정보를 포함할 수도 있다.
특정 양태들에 따르면, 신호 와이어들 (310a, 310b 및 310c) 상의 및/또는 차동 수신기들 (602a, 602b 및 602c) 의 출력들에서 트랜지션 시간들 간의 변동들이 작을수록, 트랜지션 영역 (904) 에 의해 점유되는 심볼 간격 (902) 의 부분이 최소화될 경우, 상당히 더 큰 설계 마진들을 제공할 수도 있다. 일 예에서, CDR 회로 (524) 는 그 CDR 회로 (524) 에서 사용된 하나 이상의 지연 엘리먼트들에서 제공된 더 큰 타이밍 허용오차들로부터 이익을 얻을 수도 있다. 다른 예에서, M-와이어 N-상 통신 링크 (220) 의 최대 심볼 송신 레이트는 트랜지션 영역 (904) 에 의해 점유된 심볼 간격 (902) 의 부분이 최소화되고 아이 오프닝 (906) 에 의해 점유된 심볼 간격 (902) 의 부분이 최대화될 경우, 상당히 증가될 수도 있다.
본 개시의 특정 양태들에 따르면, 트랜지션 영역 (904) 의 변동들은 각각의 심볼 트랜지션을 개별적으로 고려하고, 하나 이상의 신호 와이어 상의 트랜지션을 선택적으로 지연시키거나 전진시킴으로써 송신기에서 상당히 감소될 수도 있다. 일부 예시들에서, 송신기의 검출 회로는 심볼 트랜지션과 연관된 예상된 또는 계산된 트랜지션 시간들을 결정하도록 구성될 수도 있다. 일 예에서, 송신기는 트랜지션 영역 (904 또는 916) 의 지속시간이 미리 결정된 최대 또는 임계 주기를 초과하는지 여부를 결정할 수도 있다. 트랜지션 영역 (904 또는 916) 이 최대 또는 임계 주기를 초과한다면, 하나 이상이 신호들은 심볼 트랜지션을 위해 수신기에서 트랜지션 영역 (904 또는 916) 을 감소시키도록 전진되거나 지연될 수도 있다. 최대 또는 임계 주기는 특정된 또는 요구되는 심볼 송신 레이트, CDR 회로 (524) 의 허용오차들 및/또는 송신기 또는 수신기에서 다른 회로들에 대하여 정의된 허용오차들에 기초하여 결정될 수도 있다. 최대 또는 임계 주기는 아이 오프닝 (906) 의 특정된 또는 요구되는 최소 지속시간을 획득하기 위해 정의될 수도 있다. 최대 또는 임계 주기는 송신된 신호들로부터 유도된 수신 클록에서의 지터를 최대화하기 위해 정의될 수도 있다. 트랜지션 영역 (904 또는 916) 은 하나 이상의 신호들이 전진되거나 지연될 수도 있는 경우, 상당히 감소될 수도 있다.
도 10 은 본원에 개시된 특정 양태들에 따른 트랜지션 전진 및 지연의 특정 양태들을 도시하는 간략화된 다이어그램 (1000) 이다. 예는 3 개의 입력 신호들 (1002, 1004 및 1006) 을 도시하지만, 도 10 과 관련하여 설명된 개념들은 3 초과의 신호 와이어들 또는 커넥터들에서 심볼들을 송신하는 다른 통신 인터페이스들에 동등하게 적용되는 것이 인식될 것이다. 송신기는 수신 디바이스에서 차동 수신기들 (또는 다른 수신기들) 의 출력들에서 최소화된 트랜지션 영역을 생성하도록 계산된 신호들 (1032, 1034, 1036) 의 세트를 획득하기 위해 하나 이상의 신호들 (1002, 1004, 1006) 을 전진 및/또는 지연시키도록 구성될 수도 있다. 일 예에서, 하나 이상의 신호들은 트랜지션 검출 신호들 (602a, 602b 및 602c) 이 시간적으로 정렬되도록 (도 6 에 도시, 및 도 6 의 타이밍 차트 (650) 에 도시) 하기 위해, 송신기에서 전진되거나 지연될 수도 있다. 신호들 (602a, 602b 및 602c) 은, 신호들 (602a, 602b 및 602c) 에서 대응하는 에지들이 미리 정의된 최대 또는 임계 정렬 주기 내에 발생할 경우, 시간적으로 정렬될 수도 있다. 최대 또는 임계 정렬 주기는 특정된 또는 요구되는 심볼 송신 레이트, CDR 회로 (524) 의 허용오차들 및/또는 수신기에서 다른 회로들에 대하여 정의된 허용오차들에 기초하여 결정될 수도 있다. 최대 또는 임계 정렬 주기는 아이 오프닝 (906) 의 특정된 또는 요구되는 최소 지속시간을 획득하기 위해 정의될 수도 있다. 최대 또는 임계 정렬 주기는 수신 클록 (526) 에서 지터를 최소화하기 위해 정의될 수도 있다.
예에서, 3 개의 신호들 (1002, 1004, 1006) 은 그 신호들 (1002, 1004, 1006) 중 하나 이상을 선택적으로 전진시키거나 지연시키고, 출력들 (1022, 1024, 1026) 에서 출력 신호들 (1032, 1034, 1036) 을 생성하도록 구성된, 회로 (1010) 의 대응하는 입력들 (1012, 1014, 1016) 에 제공된다. 입력 타이밍 다이어그램 (1020) 에 도시된 것과 같이, 도시된 입력 신호들 (1002, 1004, 1006) 은 2 개의 심볼 간격들 (1040 및 1042) 간에 트랜지션 (1008) 을 포함한다. 제 1 심볼 간격 (1040) 에서, 신호들 (1002, 1004, 1006) 은 {+1, -1, 0} 의 값을 갖는 "+x" 심볼 (802) 에 대응한다 (도 8 에 도시). 제 2 심볼 간격 (1042) 에서, 신호들 (1002, 1004, 1006) 은 {-1, 0, +1} 의 값을 갖는 "+z" 심볼 (806) 에 대응한다. 오직 예시의 목적으로, "0" 시그널링 상태와 "+1" 또는 "-1" 시그널링 상태들 간의 트랜지션들이 가장 빠른 트랜지션들이고, "0" 시그널링 상태에 대한 트랜지션은 가장 느릴 트랜지션인 것이 가정될 수도 있다. 일부 예시들에서, 시그널링 상태들 간의 트랜지션들의 상대 속도들은 상이할 수도 있다.
전진/지연 회로 (1010) 는 수신기가 단축된 트랜지션 간격 내의 트랜지션들을 생성하도록 가잔 느리게 트랜지션하는 신호를 전진시키고 및/또는 가장 빨리 트랜지션하는 신호를 지연시키도록 구성될 수도 있다. 이러한 예에서, 전진/지연 회로 (1010) 는 제 3 신호 (1006) 상의 트랜지션이 수신기에서 가장 빠른 트랜지션 검출을 생성할 수 있고, 제 2 신호 (1004) 상의 트랜지션이 수신기에서 가장 느린 트랜지션 검출을 생성할 수도 있고, 제 1 신호 (1002) 상의 트랜지션은 수신기에서 가장 빠르지도 않고 가장 느리지도 않은 트랜지션 검출을 생성할 수 있다. 일 예에서, 전진/지연 회로 (1010) 는 3 개의 입력 신호들 (1002, 1004, 1006) 의 버전들인 출력 신호들 (1032, 1034, 1036) 을 제공할 수도 있고, 여기서 제 2 신호 (1034) 에서의 트랜지션은 심볼 트랜지션 (1028) 에 대하여 전진되고 제 3 신호는 심볼 트랜지션 (1028) 에 대하여 지연된다. 일부 예시들에서, 제 1 신호 (1032) 에서의 트랜지션은 모든 출력 신호들 (1032, 1034, 1036) 에서의 트랜지션들이 심볼 클록의 에지에 밀접하게 정렬되는 트랜지션 검출들을 수신기에서 생성하도록, 지연되거나 전진될 수도 있다. 다른 예시들에서, 3 개의 출력 신호들 (1032, 1034, 및/또는 1036) 중 적어도 하나는 지연되거나 전진되지 않으며, 다른 출력 신호들 (1032, 1034, 1036) 에 적용된 전진들 또는 지연들은 수신기에 의해 사용된 심볼 클록과 관계없이 트랜지션 검출들의 정렬을 획득하기 위해 계산된다. 즉, 수신기로 송신된 신호들 (1032, 1034, 1036) 중 하나 이상은 다른 신호들 (1032, 1034, 1036) 에 대하여 전진 및/또는 지연되어, 에지들이 차동 수신기들 (602a, 602b 및 602c) 에 의해 수신될 경우 더 밀접하게 정렬될 수도 있게 할 수도 있다. 특정 출력들을 전진시키거나 지연시키기 위한 결정은 심볼 트랜지션 이전 및 이후에 원시 심볼 값들의 상태들에 기초할 수도 있다.
도 11 은 다중-와이어 인터페이스를 통해 송신된 신호들 (1012, 1014, 1016) 을 위해 사용될 수도 있는 전진/지연 회로 (1100) 의 일 예를 도시하는 블록 다이어그램이다. 전진/지연 회로 (1100) 는 도 10 의 전진/지연 회로 (1010) 에 포함될 수도 있다. 신호들 (1012, 1014, 및 1016) 각각은 지연 셀 (1002a, 1002b, 및 1002c) 을 통해 개별적으로 프로세싱된다. 일 예에서, 각각의 지연 셀 (1002a, 1002b, 및 1002c) 은 제 1 입력 신호 (1012) 를 참조하여 더 상세하게 설명되는 것과 같이, 대응하는 입력 신호 (1012, 1014, 1016) 에 정수 개수의 단위 지연 주기들을 적용하도록 동작될 수도 있다. 제 1 입력 신호 (1012) 는 복수의 직렬 접속된 지연 엘리먼트들을 포함하는 멀티-탭 지연 라인 (1112) 에 제공되며, 여기서 지연 엘리먼트들은 입력 신호 (1012) 의 점진적으로 지연된 버전들을 제공한다. 각각의 지연 엘리먼트는 단위 지연 주기와 연관될 수도 있다. 멀티플렉서 (1114) 는 입력 신호 (1012) 의 지연된 버전들을 수신하고, 입력 신호 (1012) 의 지연된 버전들 중 하나를 출력 신호 (1022) 로서 제공하도록 선택 입력 (1110) 에 의해 제어된다. 선택 신호 (1110) 는 입력 신호 (1012) 에 부가될 지연 유닛들의 개수에 대응하는 이진수로서 제공될 수도 있다. 일부 예시들에서, 멀티-탭 지연 (1112) 의 지연 엘리먼트들은 하나 이상의 조합 논리 게이트들을 통해 연관된 전파 지연을 갖는 하나 이상의 조합 논리 게이트들을 사용하여 구현될 수도 있다. 다른 예시들에서, 멀티-탭 지연 (1112) 의 지연 엘리먼트들은 플립-플롭들을 구동하는 클록 신호의 주기에 대응하는 지연을 제공하는 플립-플롭들을 사용하여 구현될 수도 있다. 다른 예시들에서, 멀티-탭 지연 (1112) 의 지연 엘리먼트들은 아날로그 지연 엘리먼트들을 사용하여 구현될 수도 있다.
멀티플렉서 (1114) 는 결정 로직 (1104) 에 의해 제공된 선택 신호 (1110) 에 의해 제어될 수도 있다. 결정 로직 (1104) 은 다음 심볼 간격 (1040; 도 10 에 도시) 에 대응하는 3 개의 입력 신호들 (1012, 1014, 1016) 의 시그널링 상태들을, 레지스터 또는 플립-플롭들 (1106) 에 저장된 현재 심볼 간격 (1042) 에 대응하는 3 개의 출력 신호들 (1022, 1024, 1026) 의 시그널링 상태들과 비교할 수도 있다. 결정 로직 (1104) 은 임계 또는 심볼들 (1040, 1042) 간의 경계에서 각각의 와이어 (310a, 310b, 310c) 에 대하여 예상된 신호 트랜지션들의 타입들을 결정할 수도 있고, 트랜지션 영역 (904) 이 최대 주기를 초과하는 것으로 예측될 수도 있는지 여부를 결정할 수도 있다. 결정 로직 (1104) 은 3 개의 신호들 (1012, 1014, 1016) 중 하나를 프로세싱하는 각각의 셀 (1102a, 1102b, 및 1102c) 에서의 멀티플렉서 (1114) 를 제어하기 위한 선택 신호 (1110) 를 제공할 수도 있다. 일 예에서, 프로그래밍가능 셀 (1102a, 1102b, 및 1102c) 은 3 개의 신호들 (1012, 1014, 1016) 의 각각에 대하여 제공될 수도 있다. 다른 예에서, 프로그래밍가능 셀 (1102a, 1102b, 및/또는 1102c) 은 3 개의 신호들 (1012, 1014, 및/또는 1016) 중 2 개의 신호들과 함께, 고정된 시간 주기만큼 지연되는 다른 신호들 (1012, 1014, 또는 1016) 에 대하여 제공될 수도 있다. 후자의 예에서, 2 개의 셀들 (1102a, 1102b, 및/또는 1102c) 은 고정된 지연을 갖는 제 3 신호 (1012, 1014, 또는 1016) 의 타이밍에 대하여 2 개의 신호들 (1012, 1014, 및/또는 1016) 의 신호들의 타이밍을 조정하는데 사용될 수도 있다.
다른 접근방식들이 구현될 수도 있다. 일 예에서, 하나 이상의 드라이버들 (310) 의 "비구동된" 출력은 필요한 트랜지션을 신속하게 달성하기 위해 높은 구동-세기를 갖는 트랜지션의 시작시 선택적으로 구동될 수도 있다. 이러한 도움은 트랜지션 동안, 트랜지션의 완료 이후에, 및/또는 케이블을 통한 라운드-트립 시간이 만료한 후에 제거될 또는 감소될 수도 있다. "비구동된" 출력을 일시적으로 강하게 구동하는 것은 드라이버에서 전력 소비를 감소시킬 수도 있다. "비구동된" 출력을 일시적으로 구동하는 것은 트랜지션들 동안 에지들을 전진시키거나 지연시키는데 부가하여 수행될 수도 있다.
도 12 는 제 1 상태로부터 제 2 상태로의 가능한 트랜지션들 및 시그널링 성능을 개선하기 위해 적용될 수도 있는 타이밍 조정들의 간략화된 예들을 표현하는 타이밍 차트들의 세트 (1200) 이다. 초기 상태는, 다른 구동 상태 또는 비구동 상태로의 트랜지션들이 가능한 구동 상태일 수도 있다. 타이밍 차트들 (1202, 1212 및 1222) 은 차트들의 세트 (1250) 에 도시된 신호 트랜지션들 이전 및 이후에 차동 수신기들 (602a, 602b 및 602c) 에서 측정가능한 신호 와이어들 (310a, 310b 및 310c) (각각, 신호들 A, B 및 C) 간의 차이들을 도시한다. 타이밍 차트들 (1202 및 1252) 은 심볼 (+x) (802) 부터 심볼 (-x) (812) 까지의 트랜지션과 관련되며, 여기서 신호 A 는 +1 상태로부터 -1 상태로 트랜지션하고, 신호 B 는 -1 상태로부터 +1 상태로 트랜지션하고, 신호 C 는 상태 0 에서 유지된다. 따라서, 제 1 차동 수신기 (602a) 는 트랜지션 (1206) 이전에 +2 차이 및 트랜지션 (1206) 이후에 -2 차이를 측정할 수도 있고, 제 2 차동 수신기 (602b) 는 트랜지션 (1204) 이전에 -1 차이 및 트랜지션 (1204) 이후에 +1 차이를 측정할 수도 있고, 제 3 차동 수신기 (602c) 는 트랜지션 (1204) 이전에 -1 차이 및 트랜지션 (1204) 이후에 +1 차이를 측정할 수도 있다. 상기 예에서, 양자의 트랜지션들 (1204 및 1206) 은 구동 상태들인 최종 상태들로 인해, 시간상 인접한 제로-크로싱들을 갖는다.
타이밍 차트들 (1212 및 1254) 은 심볼 (+x) (802) 부터 심볼 (+y) (804) 까지의 트랜지션과 관련되며, 여기서 신호 A 는 +1 상태로부터 0 상태로 트랜지션하고, 신호 B 는 -1 상태로부터 +1 상태로 트랜지션하고, 신호 C 는 0 상태로부터 -1 상태로 트랜지션한다. 따라서, 제 1 차동 수신기 (602a) 는 트랜지션 (1216) 이전에 +2 차이 및 트랜지션 (1216) 이후에 -2 차이를 측정할 수도 있고, 제 2 차동 수신기 (602b) 는 트랜지션 (1214) 이전에 -1 차이 및 트랜지션 (1214) 이후에 +2 차이를 측정할 수도 있고, 제 3 차동 수신기 (602c) 는 트랜지션 (1218) 이전에 -1 차이 및 트랜지션 (1218) 이후에 -1 차이 (실질적으로, 비 트랜지션) 를 측정할 수도 있다. 이러한 예에서, 트랜지션들 (1214 및 1216) 은 상당한 시간 주기 만큼 분리된 제로-크로싱들을 갖는다. 그 차이는, BC 트랜지션 (1214) 이 최종 구동 상태를 갖는 2 개의 신호들을 수반하는 반면, AB 트랜지션 (1216) 이 최종 비구동 상태를 갖는 하나의 신호에 관련되기 때문에, 발생할 수도 있다. 인코더 (306; 도 3 에 도시) 또는 라인 드라이버들 (308) 과 같은 다른 회로들의 동작을 통해 송신기에서 변경 동작이 취득될 수도 있다. 일 예에서, 신호 A 의 트랜지션의 시작부는 신호 B 에 대한 신호 A 의 트랜지션을 가속화하도록 전진될 수도 있고 (1260), 따라서 신호들 A 및 B 을 비교하는 차동 수신기 (602a) 의 더 빠른 출력 트랜지션을 획득한다. 신호 C 의 트랜지션의 시작부는 또한 트랜션트 (transient) 들의 발생을 방지도록 전진될 수도 있고 (1262), 이는 양자의 신호들 A 및 C 이 변화하고 차동 수신기 (602c) 가 신호들 A 및 C 을 비교하기 때문이다.
타이밍 차트들 (1222 및 1256) 은 심볼 (+x) (802) 부터 심볼 (+z) (806) 까지의 트랜지션과 관련되며, 여기서 신호 A 는 +1 상태로부터 -1 상태로 트랜지션하고, 신호 B 는 -1 상태로부터 0 상태로 트랜지션하고, 신호 C 는 0 상태로부터 +1 상태로 트랜지션한다. 따라서, 제 1 차동 수신기 (602a) 는 트랜지션 (1226) 이전에 +2 차이 및 트랜지션 (1226) 이후에 -1 차이를 측정할 수도 있고, 제 2 차동 수신기 (602b) 는 트랜지션 (1228) 이전에 -1 차이 및 트랜지션 (1228) 이후에 -1 차이 (실질적으로, 비 트랜지션) 를 측정할 수도 있고, 제 3 차동 수신기 (602c) 는 트랜지션 (1224) 이전에 -1 차이 및 트랜지션 (1224) 이후에 +2 차이를 측정할 수도 있다. 이러한 예에서, 트랜지션들 (1224 및 1226) 은 상당한 시간 주기 만큼 분리된 제로-크로싱들을 갖는다. 그 차이는, CA 트랜지션 (1224) 이 최종 구동 상태를 갖는 신호들 A 및 C 을 수반하는 반면, AB 트랜지션 (1226) 이 최종 비구동 상태를 갖는 하나의 신호 (B 신호) 를 수반하는 것에 기인할 수도 있다. 통상적으로 인코더 (306), 드라이버들 (308) 또는 본원에 개시된 특정 양태들에 따라 구성된 다른 회로들에 의해, 송신기에서 변경 동작이 취득될 수도 있다. 예를 들어, 신호 B 의 트랜지션의 시작부는 신호 A 에 대한 신호 B 의 트랜지션을 가속화하도록 전진될 수도 있고 (1264), 따라서 신호들 A 및 B 을 비교하는 차동 수신기 (602a) 의 더 빠른 출력 트랜지션을 획득한다. 신호 C 의 트랜지션의 시작부는 또한 트랜션트들의 발생을 방지도록 전진될 수도 있고 (1266), 이는 양자의 신호들 A 및 C 이 변화하고 차동 수신기 (602c) 가 신호들 A 및 C 을 비교하기 때문이다.
도 12 에 도시된 예들은 3 개의 상태 트랜지션들 +x 내지 -x, +x 내지 +y, 및 +x 내지 +z 에 대하여 트랜지션들의 정렬을 설명한다. 이들 3 개의 상태 트랜지션들에서 발생하는 상황들은 도 8 에 도시된 30 개의 가능한 상태 트랜지션들 중 18 개의 상태 트랜지션들에 존재할 수도 있고, 유사한 변경 동작들이 이들 추가의 상태 트랜지션들을 가속화하기 위해 송신기에 의해 취득될 수도 있다. 도시된 예들은, 각각 신호들 A 및 B 이 비구동 0 상태로 트랜지션할 경우, 각각 그 신호들의 전진 (1260 및 1264) 을 설명한다. 일부 예시들에서, 송신기는 예컨대, 상태 트랜지션들의 검출을 정렬하기 위해 +x 내지 +y 트랜지션들 (1254) 동안 "B" 드라이버 출력의 상승 에지를 지연시킬 수도 있다. 송신기는 구동되지 않는 최종 목적지 상태를 갖는 신호들의 상승 또는 하강 시간을 대안적으로 또는 부가적으로 증가시킬 수도 있다. 예를 들어, 하나 이상의 드라이버들에서 프리-엠퍼시스 회로가 활성화될 수도 있거나, 또는 일시적으로 더 강한 드라이버가 초기에 신호를 "비구동" 상태로 구동하는데 사용될 수도 있다. 유사한 기술들이 +x 내지 +z 상태 트랜지션에 적용될 수도 있다.
신호들 A, B 및/또는 C 은 송신기에서 신호들의 생성을 타이밍하는데 사용된 하나 이상의 클록들을 조정함으로써 선택적으로 전진될 수도 있다. 일 예에서, 하나 이상의 더 적은 클록 사이클들은 트랜지션이 가속화되도록 하기 위해 트랜지션 이전에 하나의 와이어 (310a, 310b 또는 310c) 의 상태의 지속시간을 카운팅할 때 사용될 수도 있다. 다른 예에서, 하나 또는 추가의 클록 사이클들은 트랜지션을 지연시키기 위해 트랜지션 이전에 하나의 와이어 (310a, 310b 또는 310c) 의 상태의 지속시간에 부가될 수도 있다. 통상적으로, 송신기는 신호 트랜지션의 시작부를 지연시키거나 가속화하기 위해 부가되거나 탈락되는 클록 사이클들을 차지하도록 후속 심볼들의 타이밍을 조정할 수도 있다.
비구동 상태로 트랜지션하는 와이어 (310a, 310b 또는 310c) 를 수반하는 트랜지션 시간들은 초기에 와이어 (310a, 310b 또는 310c) 를 비구동 상태로 구동시킴으로써 가속화될 수도 있다. 일부 예들에서, 비구동 상태는 와이어들 (310a, 310b 및/또는 310c) 을 미리 결정된 "중립" 전압 레벨 쪽으로 견인하기 위해 수동 또는 능동 컴포넌트들을 사용하여 획득될 수도 있다.
도 13 은 본원에 개시된 하나 이상의 기능들을 수행하도록 구성될 수도 있는 프로세싱 회로 (1302) 를 채용하는 장치에 대한 하드웨어 구현의 간략화된 예를 도시하는 개념 다이어그램 (1300) 이다. 본 개시의 다양한 양태들에 따라, 3 상 클록 복원 지연 캘리브레이션을 위해 본원에 개시된 것과 같은 일 엘리먼트, 또는 일 엘리먼트의 임의의 부분, 또는 엘리먼트들의 임의의 조합은 프로세싱 회로 (1302) 를 사용하여 구현될 수도 있다. 프로세싱 회로 (1302) 는 하드웨어 및 소프트웨어 모듈들의 임의의 조합에 의해 제어되는 하나 이상의 프로세서들 (1304) 을 포함할 수도 있다. 프로세서들 (1304) 의 예들은 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들 (DSP들), 필드 프로그래밍가능 게이트 어레이들 (FPGA들), 프로그래밍가능 로직 디바이스들 (PLD들), 상태 머신들, 게이트 로직, 별개의 하드웨어 회로들, 및 본 개시물 전반에 걸쳐서 설명되는 여러 기능을 수행하도록 구성된 다른 적합한 하드웨어를 포함한다. 하나 이상의 프로세서들 (1304) 은 특정 기능들을 수행하고, 소프트웨어 모듈들 (1316) 중 하나에 의해 구성되거나, 증강되거나, 제어될 수도 있는 특수화된 프로세서들을 포함할 수도 있다. 예를 들어, 프로세싱 회로 (1302) 는 하나 이상의 무선 네트워크들을 통한 송신을 위해 데이터의 인코딩 및 디코딩을 핸들링하도록 구성되는 프로세서로서 기능하도록 구성될 수도 있다. 하나 이상의 프로세서들 (1304) 은 초기화동안 로딩되는 소프트웨어 모듈들 (1316) 의 조합을 통해 구성되고, 동작 동안 하나 이상의 소프트웨어 모듈들 (1316) 을 로딩 또는 언로딩함으로써 추가로 구성될 수도 있다.
도시된 예에서, 프로세싱 회로 (1302) 는 일반적으로 버스 (1310) 로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1310) 는 프로세싱 회로 (1302) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속 버스들 및 브릿지들을 포함할 수도 있다. 버스 (1310) 는 하나 이상의 프로세서들 (1304) 및 스토리지 (1306) 를 포함하는 다양한 회로들을 함께 링크시킨다. 스토리지 (1306) 는 메모리 디바이스들 및 대용량 스토리지 디바이스들을 포함할 수도 있고, 본원에서 컴퓨터 판독가능 매체로서 지칭될 수도 있다. 버스 (1310) 는 또한 타이밍 소스들, 타이머들, 주변장치들, 전압 레귤레이터들 및 전력 관리 회로들과 같은 다양한 다른 회로들을 링크시킬 수도 있다. 버스 인터페이스 (1308) 는 버스 (1310) 와 트랜시버 (1312) 간에 인터페이스를 제공할 수도 있다. 트랜시버 (1312) 는 송신 매체를 통해서 여러 다른 장치와 통신하는 수단을 제공한다. 장치들의 특성에 의존하여, 사용자 인터페이스 (1318) (예컨대, 키패드, 디스플레이, 스피커, 마이크로폰, 조이스틱) 가 또한 제공될 수도 있고, 직접 또는 버스 인터페이스 (1308) 를 통해 버스 (1310) 에 통신가능하게 커플링될 수도 있다.
프로세서 (1304) 는 버스 (1310) 를 관리하는 것 및 스토리지 (1306) 를 포함할 수도 있는 컴퓨터 판독가능 매체에 저장된 소프트웨어의 실행을 포함할 수도 있는 일반적인 프로세싱을 담당할 수도 있다. 이와 관련하여, 프로세서 (1304) 를 포함하는 프로세싱 회로 (1302) 가 본원에 개시된 방법들, 기능들 및 기술들 중 임의의 것을 구현하는데 사용될 수도 있다. 스토리지 (1306) 는 소프트웨어를 실행중일 경우, 프로세서 (1304) 에 의해 조종되는 데이터를 저장하기 위해 사용될 수도 있고, 소프트웨어는 본원에 개시된 방법들 중 임의의 방법을 구현하도록 구성될 수도 있다.
프로세싱 회로 (1302) 에 있어서의 하나 이상의 프로세서들 (1304) 은 소프트웨어를 실행할 수도 있다. 소프트웨어는 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 디스크립션 언어, 또는 이외로 지칭되든, 명령들, 명령 세트들, 코드, 코드 세그먼트들, 프로그램 코드, 프로그램들, 서브프로그램들, 소프트웨어 모듈들, 애플리케이션들, 소프트웨어 애플리케이션들, 소프트웨어 패키지들, 루틴들, 서브루틴들, 오브젝트들, 실행가능물들 (executables), 실행 쓰레드들, 프로시저들, 함수들, 알고리즘들 등을 의미하는 것으로 넓게 해석되어야 할 것이다. 소프트웨어는 스토리지 (1306) 로부터 컴퓨터 판독가능하게 또는 외부 컴퓨터 판독가능 매체에 상주할 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1306) 는 비-일시적인 컴퓨터 판독가능 매체일 수도 있다. 비-일시적인 컴퓨터 판독가능 매체는, 예로서, 자기 저장 디바이스 (예를 들어, 하드 디스크, 플로피 디스크, 자기 스트립), 광학 디스크 (예를 들어, 컴팩트 디스크 (CD) 또는 디지털 다기능 디스크 (DVD)), 스마트 카드, 플래시 메모리 디바이스 (예를 들어, "플래시 드라이버", 카드, 스틱, 또는 키 드라이브), 랜덤 액세스 메모리 (RAM), 판독 전용 메모리 (ROM), 프로그램가능 ROM (PROM), 소거가능 PROM (EPROM), 전기적으로 소거가능 PROM (EEPROM), 레지스터, 착탈가능 디스크, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 저장하기 위한 임의의 다른 적절한 매체를 포함한다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1306) 는 또한, 예를 들어 반송파, 송신선, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 송신하기 위한 임의의 다른 적절한 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1306) 는 프로세싱 회로 (1302) 에, 프로세서 (1304) 에, 프로세싱 회로 (1302) 외부에 상주할 수도 있거나, 또는 프로세싱 회로 (1302) 를 포함하는 다중의 엔티티들에 걸쳐 분산될 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1306) 는 컴퓨터 프로그램 제품에서 구현될 수도 있다. 예로서, 컴퓨터 프로그램 제품은 패키징 재료들에 컴퓨터 판독가능 매체를 포함할 수도 있다. 전체 시스템에 부과된 특정 애플리케이션 및 전체 시스템 제약들에 의존하여 본 개시물 전반에서 제시된 기술된 기능을 최적으로 구현하는 방법을, 당업자는 인식할 것이다.
스토리지 (1306) 는 본원에서 소프트웨어 모듈들 (1316) 로서 지칭될 수도 있는 로딩가능한 코드 세그먼트들, 모듈들, 애플리케이션들, 프로그램들, 등등에서 보유되고 및/또는 조직되는 소프트웨어를 보유할 수도 있다. 소프트웨어 모듈들 (1316) 의 각각은, 프로세싱 회로 (1302) 상에 설치되거나 로딩되고 하나 이상의 프로세서들 (1304) 에 의해 실행될 경우, 하나 이상의 프로세서들 (1304) 의 동작을 제어하는 런타임 이미지 (1314) 에 기여하는 명령들 및 데이터를 포함할 수도 있다. 실행될 경우, 특정 명령들은 프로세싱 회로 (1302) 가 본원에서 설명된 특정 방법들, 알고리즘들 및 프로세스들에 따라 기능들을 수행하게 할 수도 있다.
소프트웨어 모듈들 (1316) 의 일부는 프로세싱 회로 (1302) 의 초기화 동안 로딩될 수도 있고, 이들 소프트웨어 모듈들 (1316) 은 본원에 개시된 다양한 기능들의 수행을 가능하게 하도록 프로세싱 회로 (1302) 를 구성할 수도 있다. 예를 들어, 일부 소프트웨어 모듈들 (1316) 은 프로세서 (1304) 의 내부 디바이스들 및/또는 로직 회로들 (1322) 을 구성할 수도 있고, 트랜시버 (1312), 버스 인터페이스 (1308), 사용자 인터페이스 (1318), 타이머들, 수학적 코프로세서들 (mathematical coprocessors), 등등과 같은 외부 디바이스들로의 액세스를 관리할 수도 있다. 소프트웨어 모듈들 (1316) 은 인터럽트 핸들러들 및 디바이스 드라이버들과 상호작용하고, 프로세싱 회로 (1302) 에 의해 제공된 다양한 리소스들로의 액세스를 제어하는 제어 프로그램 및/또는 오퍼레이팅 시스템을 포함할 수도 있다. 리소스들은 메모리, 프로세싱 시간, 트랜시버 (1312) 로의 액세스, 사용자 인터페이스 (1318), 등등을 포함할 수도 있다.
프로세싱 회로 (1302) 의 하나 이상의 프로세서들 (1304) 은 다기능적일 수도 있고, 따라서 소프트웨어 모듈들 (1316) 의 일부는 상이한 기능들 또는 동일한 기능의 상이한 경우들을 수행하도록 로딩되고 구성된다. 하나 이상의 프로세서들 (1304) 은 추가로, 예컨대 사용자 인터페이스 (1318), 트랜시버 (1312) 및 디바이스 드라이버들로부터의 입력들에 응답하여 개시된 백그라운드 작업들을 관리하도록 구성될 수도 있다. 다수의 기능들의 수행을 지원하기 위해, 하나 이상의 프로세서들 (1304) 은 멀티태스킹 환경을 제공하도록 구성될 수도 있고, 따라서 복수의 기능들의 각각은 필요하거나 요구되는 바에 따라 하나 이상의 프로세서들에 의해 서비스되는 작업들의 세트로서 구현된다. 일 예에서, 멀티태스킹 환경은 상이한 작업들 사이에서 프로세서 (1304) 의 제어를 패스하는 시간 공유 프로그램 (1320) 을 사용하여 구현될 수도 있고, 따라서 각각의 작업은 임의의 중요한 동작들의 완료시 및/또는 인터럽트와 같은 입력에 응답하여, 하나 이상의 프로세서들 (1304) 의 제어를 시간 공유 프로그램 (1302) 으로 리턴시킨다. 작업이 하나 이상의 프로세서들 (1304) 의 제어를 가질 경우, 프로세싱 회로는 제어 작업과 연관된 기능에 의해 어드레싱되는 목적들을 위해 효율적으로 특수화된다. 시간 공유 프로그램 (1320) 은 오퍼레이팅 시스템, 라운드-로빈 기반의 제어를 전송하는 메인 루프, 기능들의 우선순위화에 따라 하나 이상의 프로세서들 (1304) 의 제어를 할당하는 기능, 및/또는 하나 이상의 프로세서들 (1304) 의 제어를 핸들링 기능에 제공함으로써 외부 이벤트들에 응답하는 인터럽트 구동된 메인 루프를 포함할 수도 있다.
도 14 는 본 발명의 특정 양태들에 따른 인코딩 방법을 예시하는 플로우차트이다. 방법은 장치의 컴포넌트일 수도 있는 디바이스 (202, 230) 에 의해 수행될 수도 있다. 단계 (1402) 에서, 디바이스 (202, 230) 는 3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정할 수도 있다. 연속하는 심볼들의 각 쌍 간의 차이들은 3 이상의 커넥터들의 시그널링 상태들과 관련될 수도 있다. 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함할 수도 있고, 적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 상태에 있다.
단계 (1404) 에서, 디바이스 (202, 230) 는 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정할 수도 있다.
단계 (1406) 에서, 디바이스 (202, 230) 는 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경할 수도 있다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다. 디바이스 (202, 230) 는 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들의 시간 정렬을 야기함으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다. 상태 트랜지션 검출 회로들은 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성될 수도 있다. 시간 정렬을 야기하는 것은, 트랜지션들이 임계 주기 미만인 시간 주기 내에 발생하도록 하는 것을 포함할 수도 있다.
일 예에서, 디바이스 (202, 230) 는 드라이버가 대응하는 상태 트랜지션이 제 2 커넥터에서 개시되기 전에 제 1 커넥터에서 상태 트랜지션을 개시하게 하도록 하나 이상의 지연들을 구성함으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다.
다른 예에서, 디바이스 (202, 230) 는 드라이버가 대응하는 상태 트랜지션이 제 2 커넥터에서 개시된 후에 제 1 커넥터에서 상태 트랜지션을 개시하게 하도록 하나 이상의 지연들을 구성함으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다.
또 다른 예에서, 디바이스 (202, 230) 는 드라이버가 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 제 1 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키게 하도록 하나 이상의 지연들을 구성함으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다.
또 다른 예에서, 디바이스 (202, 230) 는 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시킴으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다. 디바이스 (202, 230) 는 트랜지션 간격의 지속시간이 임계 주기 미만인 것으로 추정될 경우, 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제할 수도 있다.
또 다른 예에서, 디바이스 (202, 230) 는 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동함으로써 하나 이상의 드라이버들의 동작을 변경할 수도 있다. 디바이스 (202, 230) 는 트랜지션 간격의 지속시간이 임계 주기 미만인 것으로 추정될 경우, 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 하나의 커넥터를 구동하는 것을 억제할 수도 있다.
일 예에서, 디바이스 (202, 230) 는 심볼 경계에 관련된 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하는 것, 및 수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 심볼 경계와 트랜지션들 간의 지연들을 추정하는 것에 의해 심볼 간격의 지속시간을 추정할 수도 있다. 복수의 차동 수신기들의 각각은 3 이상의 커넥터들의 상이한 쌍에 커플링될 수도 있다.
도 15 는 프로세싱 회로 (1502) 를 채용하는 장치에 대한 하드웨어 구현의 간략화된 예를 예시하는 다이어그램 (1500) 이다. 프로세싱 회로 (1502) 는 일반적으로 버스 (1520) 로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1520) 는 프로세싱 회로 (1502) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속 버스들 및 브릿지들을 포함할 수도 있다. 버스 (1520) 는 프로세서 (1516), 모듈들 또는 회로들 (1504, 1506 및 1508), 커넥터들 또는 와이어들 (1514) 을 구동하도록 구성가능한 라인 드라이버들 (1512) 및 컴퓨터 판독가능 저장 매체 (1518) 로 표현되는 하나 이상의 프로세서들 및/또는 하드웨어 모듈들을 포함한 다양한 회로들을 함께 링크시킨다. 버스 (1520) 는 또한 타이밍 소스들, 주변장치들, 전압 레귤레이터들 및 전력 관리 회로들과 같은 다양한 다른 회로들을 링크시킬 수도 있다. 일 예에서, 버스 (1520) 는 수신 클록들을 생성하고 다중-와이어 인터페이스 (1514) 로부터 심볼들을 캡처하기 위해 라인 인터페이스 회로들 (1512) 과 함께 동작할 수도 있는 CDR 회로 (1524) 로의 액세스를 제공한다.
프로세서 (1516) 는 마이크로 프로세서, 제어기, 디지털 신호 프로세서, 시퀀서, 상태 머신 등등을 포함할 수도 있다. 프로세서 (1516) 는 컴퓨터-판독가능 저장 매체 (1516) 상에 저장된 소프트웨어의 실행을 포함한, 일반적인 프로세싱을 담당한다. 소프트웨어는, 프로세서 (1516) 에 의해 실행될 경우, 프로세싱 회로 (1502) 로 하여금 임의의 특정의 장치에 대해 위에서 설명한 여러 기능들을 수행하게 한다. 컴퓨터-판독가능 매체 (1518) 는 또한, 소프트웨어를 실행할 경우 프로세서 (1516) 에 의해 조작되는 데이터를 저장하기 위해 사용될 수도 있다. 프로세싱 회로 (1502) 는 추가로, 모듈들 (1504, 1506, 1508 및 1510) 중 적어도 하나를 포함한다. 모듈들 (1504, 1506, 1508 및/또는 1510) 은 프로세서 (1516) 에서 실행중이고 컴퓨터 판독가능 저장 매체 (1518) 에 상주하거나 저장된 소프트웨어 모듈들, 프로세서 (1516) 에 커플링된 하나 이상의 하드웨어 모듈들, 또는 이들의 일부 조합일 수도 있다.
일 구성에서, 무선 통신을 위한 장치 (1500) 는 3 이상의 커넥터들 (1514) 을 통해 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간에 3 이상의 커넥터들 (1514) 의 시그널링 상태들과 관련된 차이들을 결정하도록 구성된 모듈 또는 회로 (1504), 그 차이들에 기초하여 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하도록 구성된 모듈 또는 회로 (1506), 및 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 트랜지션 간격의 지속시간을 감소시키도록 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하도록 구성된 모듈 또는 회로 (1510) 를 포함한다. 각각의 심볼은 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의할 수도 있다. 장치 (1500) 는 3 이상의 커넥터들 (1514) 을 통해 송신된 데이터를 인코딩 및/또는 디코딩하기 위한 모듈들 및/또는 회로들 (1508), 뿐만 아니라 3 이상의 커넥터들 (1514) 을 통해 심볼들을 수신 및/또는 송신하는데 사용된 CDR (1524) 또는 다른 회로들을 포함할 수도 있다. 전술된 모듈들 또는 회로들 (1504, 1506, 1508, 1510) 은 예컨대, 프로세서 (206 또는 236), 물리 계층 드라이버들 (210 또는 240) 및 저장 매체 (208 및 238) 의 임의의 조합으로서 동작하도록 구성된 프로세싱 회로 (1302; 도 13 에 도시) 를 사용하여 구현될 수도 있다.
개시된 프로세스들에서 단계들의 특정의 순서 또는 계위는 예시적인 접근법들의 예시인 것이 이해된다. 설계 선호사항들에 기초하여, 프로세스들에서 단계들의 특정의 순서 또는 계위가 재배열될 수도 있는 것으로 이해된다. 수반하는 방법은 여러 단계들의 현재의 엘리먼트들을 간단한 순서로 청구하며, 제시되는 특정의 순서 또는 계층에 한정시키려고 의도된 것이 아니다.
이전 설명은 임의의 당업자가 여러 본원에서 설명하는 양태들을 실시할 수 있도록 하기 위해서 제공된다. 이들 양태들에 대한 여러 변경들은 당업자들에게 매우 자명할 것이며, 본원에서 정의하는 일반 원리들은 다른 양태들에 적용될 수도 있다. 따라서, 청구항들은 본원에서 나타낸 양태들에 한정시키려고 의도된 것이 아니며, 전문용어 청구항들 (language claims) 에 부합하는 전체 범위를 부여하려는 것이며, 여기서, 엘리먼트에 대한 단수형 참조는 "하나 및 오직 하나" 로 구체적으로 달리 말하지 않는 한, "하나 및 오직 하나" 를 의미하기 보다는, "하나 이상" 을 의미하도록 의도된다. 달리 구체적으로 언급하지 않는 한, 용어 "일부 (some)" 는 하나 이상을 지칭한다. 당업자들에게 알려져 있거나 또는 추후 알려지는, 본 개시물을 통해서 설명한 여러 양태들의 엘리먼트들에 대한 모든 구조적 및 기능적 균등물들이 본원에 참조로 명백히 포함되며, 청구항들에 의해 포괄되도록 의도된다. 더욱이, 본원에서 개시된 어떤 것도 이런 개시물이 청구항들에 명시적으로 인용되는지에 상관없이, 대중에 지정되도록 의도된 것이 아니다. 어떤 청구항 엘리먼트도 그 엘리먼트가 어구 "하는 수단" 을 이용하여 명백히 언급되지 않는 한, 기능식 (means plus function) 청구항으로서 해석되지 않아야 한다.

Claims (30)

  1. 데이터 전송 방법으로서,
    3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 단계로서, 상기 차이들은 상기 3 이상의 커넥터들의 시그널링 상태들에 관련되는, 상기 차이들을 결정하는 단계;
    상기 차이들에 기초하여 상기 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하는 단계; 및
    상기 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 지속시간을 감소시키도록 상기 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하는 단계를 포함하며,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키는 단계; 및
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제하는 단계를 포함하고, 그리고
    각각의 상기 심볼은 상기 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의하는, 데이터 전송 방법.
  2. 제 1 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는, 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들의 시간 정렬을 발생하고,
    상기 상태 트랜지션 검출 회로들은 상기 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성되는, 데이터 전송 방법.
  3. 제 1 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시되기 전에 개시하게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  4. 제 1 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시된 후에 개시하게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  5. 제 1 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션의 개시를, 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 지연시키거나 전진시키게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  6. 제 1 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동하는 단계; 및
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 상기 하나의 커넥터를 구동하는 것을 억제하는 단계를 포함하는, 데이터 전송 방법.
  7. 제 1 항에 있어서,
    상기 트랜지션 간격의 지속시간을 추정하는 단계는,
    상기 심볼 경계에 대하여 상기 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하는 단계; 및
    수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 트랜지션들과 상기 심볼 경계 간의 지연들을 추정하는 단계를 포함하며,
    상기 복수의 차동 수신기들의 각각은 상기 3 이상의 커넥터들의 상이한 쌍에 커플링되는, 데이터 전송 방법.
  8. 제 1 항에 있어서,
    상기 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함하고,
    적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 (undriven) 상태에 있는, 데이터 전송 방법.
  9. 단말기에서 2 개의 디바이스들을 통신가능하게 커플링하는 복수의 커넥터들; 및
    프로세싱 회로를 포함하며,
    상기 프로세싱 회로는,
    3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 것으로서, 상기 차이들은 상기 3 이상의 커넥터들의 시그널링 상태들에 관련되는, 상기 차이들을 결정하고;
    상기 차이들에 기초하여 상기 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하며; 그리고
    상기 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 지속시간을 감소시키도록 상기 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하도록
    구성되며,
    상기 프로세싱 회로는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키는 것; 및
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제하는 것
    에 의해 상기 하나 이상의 드라이버들의 동작을 변경하도록 구성되며, 그리고
    각각의 상기 심볼은 상기 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의하는, 장치.
  10. 제 9 항에 있어서,
    상기 하나 이상의 드라이버들의 동작은, 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들이 시간 정렬되도록 변경되고,
    상기 상태 트랜지션 검출 회로들은 상기 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성되는, 장치.
  11. 제 9 항에 있어서,
    상기 프로세싱 회로는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션의 개시를, 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 지연시키거나 진전시키게 하도록, 하나 이상의 지연들을 구성하도록
    구성되는, 장치.
  12. 제 9 항에 있어서,
    상기 프로세싱 회로는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동하고; 그리고
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 상기 하나의 커넥터를 구동하는 것을 억제하도록
    구성되는, 장치.
  13. 제 9 항에 있어서,
    상기 프로세싱 회로는,
    상기 심볼 경계에 대하여 상기 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하고; 그리고
    수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 트랜지션들과 상기 심볼 경계 간의 지연들을 추정하도록
    구성되며,
    상기 복수의 차동 수신기들의 각각은 상기 3 이상의 커넥터들의 상이한 쌍에 커플링되는, 장치.
  14. 제 9 항에 있어서,
    상기 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함하고,
    적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 상태에 있는, 장치.
  15. 데이터 전송 방법으로서,
    3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 단계로서, 상기 차이들은 상기 3 이상의 커넥터들의 시그널링 상태들에 관련되는, 상기 차이들을 결정하는 단계;
    상기 차이들에 기초하여 상기 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하는 단계; 및
    상기 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 지속시간을 감소시키도록 상기 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하는 단계를 포함하며,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동하는 단계; 또는
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 상기 하나의 커넥터를 구동하는 것을 억제하는 단계를 포함하고, 그리고
    각각의 상기 심볼은 상기 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의하는, 데이터 전송 방법.
  16. 제 15 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는, 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들의 시간 정렬을 발생하고,
    상기 상태 트랜지션 검출 회로들은 상기 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성되는, 데이터 전송 방법.
  17. 제 15 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시되기 전에 개시하게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  18. 제 15 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션을, 대응하는 상태 트랜지션이 제 2 커넥터에서 개시된 후에 개시하게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  19. 제 15 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션의 개시를, 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 지연시키거나 전진시키게 하도록, 하나 이상의 지연들을 구성하는 단계를 포함하는, 데이터 전송 방법.
  20. 제 15 항에 있어서,
    상기 하나 이상의 드라이버들의 동작을 변경하는 단계는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키는 단계; 및
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제하는 단계를 포함하는, 데이터 전송 방법.
  21. 제 15 항에 있어서,
    상기 트랜지션 간격의 지속시간을 추정하는 단계는,
    상기 심볼 경계에 대하여 상기 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하는 단계; 및
    수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 트랜지션들과 상기 심볼 경계 간의 지연들을 추정하는 단계를 포함하며,
    상기 복수의 차동 수신기들의 각각은 상기 3 이상의 커넥터들의 상이한 쌍에 커플링되는, 데이터 전송 방법.
  22. 제 15 항에 있어서,
    상기 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함하고,
    적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 (undriven) 상태에 있는, 데이터 전송 방법.
  23. 단말기에서 2 개의 디바이스들을 통신가능하게 커플링하는 복수의 커넥터들; 및
    프로세싱 회로를 포함하며,
    상기 프로세싱 회로는,
    3 이상의 커넥터들 상에서 송신될 복수의 심볼들에서 연속하는 심볼들의 각 쌍 간의 차이들을 결정하는 것으로서, 상기 차이들은 상기 3 이상의 커넥터들의 시그널링 상태들에 관련되는, 상기 차이들을 결정하고;
    상기 차이들에 기초하여 상기 연속하는 심볼들의 쌍 간의 심볼 경계에서 트랜지션 간격의 지속시간을 추정하며; 그리고
    상기 트랜지션 간격의 지속시간이 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 지속시간을 감소시키도록 상기 3 이상의 커넥터들의 하나 이상의 드라이버들의 동작을 변경하도록
    구성되며,
    상기 프로세싱 회로는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 상기 트랜지션 간격의 적어도 일 부분 동안 하나의 커넥터를 능동적으로 구동하는 것; 및
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 연속하는 심볼들의 쌍 중 제 2 심볼이 송신되는 동안 상기 하나의 커넥터를 구동하는 것을 억제하는 것
    에 의해 상기 하나 이상의 드라이버들의 동작을 변경하도록 구성되며, 그리고
    각각의 상기 심볼은 상기 3 이상의 커넥터들의 각각에 대한 적어도 3 개의 시그널링 상태들 중 하나를 정의하는, 장치.
  24. 제 23 항에 있어서,
    상기 하나 이상의 드라이버들의 동작은, 수신기에서 상태 트랜지션 검출 회로들의 2 이상의 출력들이 시간 정렬되도록 변경되고,
    상기 상태 트랜지션 검출 회로들은 상기 3 이상의 커넥터들의 상이한 쌍들의 시그널링 상태들을 비교하도록 구성되는, 장치.
  25. 제 23 항에 있어서,
    상기 프로세싱 회로는,
    상기 드라이버로 하여금 제 1 커넥터에서 상태 트랜지션의 개시를, 제 2 커넥터에서 대응하는 상태 트랜지션의 개시에 대하여 지연시키거나 진전시키게 하도록, 하나 이상의 지연들을 구성하도록
    구성되는, 장치.
  26. 제 23 항에 있어서,
    상기 프로세싱 회로는,
    상기 트랜지션 간격의 지속시간이 상기 임계 주기를 초과하는 것으로 추정될 경우, 적어도 하나의 커넥터에서 상태 트랜지션의 개시를 지연시키거나 전진시키고; 그리고
    상기 트랜지션 간격의 지속시간이 상기 임계 주기 미만인 것으로 추정될 경우, 상기 3 이상의 커넥터들에서 상태 트랜지션들을 지연시키거나 전진시키는 것을 억제하도록
    구성되는, 장치.
  27. 제 23 항에 있어서,
    상기 프로세싱 회로는,
    상기 심볼 경계에 대하여 상기 3 이상의 커넥터들의 각각에 대한 시그널링 상태 트랜지션 시간을 결정하고; 그리고
    수신기에서 복수의 차동 수신기들의 각각의 출력들에서의 트랜지션들과 상기 심볼 경계 간의 지연들을 추정하도록
    구성되며,
    상기 복수의 차동 수신기들의 각각은 상기 3 이상의 커넥터들의 상이한 쌍에 커플링되는, 장치.
  28. 제 23 항에 있어서,
    상기 3 이상의 커넥터들은 적어도 3 개의 와이어들을 포함하고,
    적어도 하나의 와이어는 각 심볼의 송신 동안 비구동 상태에 있는, 장치.
  29. 삭제
  30. 삭제
KR1020167003972A 2013-08-08 2014-08-07 N-상 신호 트랜지션 정렬 KR101650687B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361863695P 2013-08-08 2013-08-08
US61/863,695 2013-08-08
US14/453,346 US9276731B2 (en) 2013-08-08 2014-08-06 N-phase signal transition alignment
US14/453,346 2014-08-06
PCT/US2014/050108 WO2015021257A1 (en) 2013-08-08 2014-08-07 N-phase signal transition alignment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020167022079A Division KR102024423B1 (ko) 2013-08-08 2014-08-07 N-상 신호 트랜지션 정렬

Publications (2)

Publication Number Publication Date
KR20160040216A KR20160040216A (ko) 2016-04-12
KR101650687B1 true KR101650687B1 (ko) 2016-08-23

Family

ID=52448676

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020167003972A KR101650687B1 (ko) 2013-08-08 2014-08-07 N-상 신호 트랜지션 정렬
KR1020167022079A KR102024423B1 (ko) 2013-08-08 2014-08-07 N-상 신호 트랜지션 정렬

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020167022079A KR102024423B1 (ko) 2013-08-08 2014-08-07 N-상 신호 트랜지션 정렬

Country Status (7)

Country Link
US (3) US9276731B2 (ko)
EP (2) EP3030972B1 (ko)
JP (3) JP6054586B2 (ko)
KR (2) KR101650687B1 (ko)
CN (1) CN105453067B (ko)
TW (3) TWI569580B (ko)
WO (1) WO2015021257A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9711041B2 (en) 2012-03-16 2017-07-18 Qualcomm Incorporated N-phase polarity data transfer
US9231790B2 (en) * 2007-03-02 2016-01-05 Qualcomm Incorporated N-phase phase and polarity encoded serial interface
US8860594B2 (en) * 2012-05-17 2014-10-14 Brilliant Points, Inc. System and method for digital signaling
US9276731B2 (en) 2013-08-08 2016-03-01 Qualcomm Incorporated N-phase signal transition alignment
US10289600B2 (en) 2013-08-08 2019-05-14 Qualcomm Incorporated Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
JP6369137B2 (ja) * 2014-05-30 2018-08-08 ソニー株式会社 送信装置、受信装置、および通信システム
US9215063B2 (en) * 2013-10-09 2015-12-15 Qualcomm Incorporated Specifying a 3-phase or N-phase eye pattern
US9154130B2 (en) * 2014-01-14 2015-10-06 Analog Devices, Inc. Four-state input detection circuitry
US9148198B1 (en) 2014-05-21 2015-09-29 Qualcomm Incorporated Programmable pre-emphasis circuit for MIPI C-PHY
US9621332B2 (en) * 2015-04-13 2017-04-11 Qualcomm Incorporated Clock and data recovery for pulse based multi-wire link
US9553635B1 (en) 2015-07-24 2017-01-24 Qualcomm Incorporated Time based equalization for a C-PHY 3-phase transmitter
US9812057B2 (en) 2015-08-05 2017-11-07 Qualcomm Incorporated Termination circuit to reduce attenuation of signal between signal producing circuit and display device
JP6665441B2 (ja) * 2015-08-10 2020-03-13 ソニー株式会社 送信装置、受信装置、および通信システム
US9485080B1 (en) * 2015-09-01 2016-11-01 Qualcomm Incorporated Multiphase clock data recovery circuit calibration
TWI748976B (zh) * 2016-02-02 2021-12-11 日商新力股份有限公司 發送裝置及通信系統
TWI722090B (zh) 2016-02-22 2021-03-21 日商新力股份有限公司 傳送裝置、傳送方法及通訊系統
TWI787166B (zh) * 2016-03-01 2022-12-21 日商新力股份有限公司 信號之發送裝置、信號之發送方法及通信系統
US9819523B2 (en) * 2016-03-09 2017-11-14 Qualcomm Incorporated Intelligent equalization for a three-transmitter multi-phase system
US10698522B2 (en) * 2016-04-27 2020-06-30 Qualcomm Incorporated Variable rate display interfaces
JP6540610B2 (ja) * 2016-06-13 2019-07-10 株式会社村田製作所 伝送特性測定方法及び伝送特性測定装置
WO2018004101A1 (ko) * 2016-06-27 2018-01-04 엘지전자(주) 무선 통신 시스템에서 심볼 간 위상 회전을 이용하여 추가 정보를 송수신하기 위한 방법 및 이를 위한 장치
US10742390B2 (en) * 2016-07-13 2020-08-11 Novatek Microelectronics Corp. Method of improving clock recovery and related device
WO2018081010A1 (en) * 2016-10-24 2018-05-03 Qualcomm Incorporated Reducing transmitter encoding jitter in a c-phy interface using multiple clock phases to launch symbols
TW201830940A (zh) * 2017-02-08 2018-08-16 陳淑玲 三線式傳輸的穿戴裝置
KR20210089811A (ko) * 2020-01-08 2021-07-19 삼성전자주식회사 외부 신호에 기초하여, 전력 모드의 변경을 감지하는 전자 장치
US11463233B2 (en) * 2020-05-21 2022-10-04 Qualcomm Incorporated Unit interval jitter improvement in a C-PHY interface
US11327914B1 (en) 2021-01-29 2022-05-10 Qualcomm Incorporated C-PHY data-triggered edge generation with intrinsic half-rate operation
CN118827249A (zh) * 2023-04-20 2024-10-22 华为技术有限公司 通信方法、通信设备、直驱模块和通信系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050181304A1 (en) 2004-02-16 2005-08-18 Daikin Industries, Ltd Method of forming fine pattern
US7093145B2 (en) 1999-10-19 2006-08-15 Rambus Inc. Method and apparatus for calibrating a multi-level current mode driver having a plurality of source calibration signals
US20090225873A1 (en) 2008-03-05 2009-09-10 Qualcomm Incorporated Multiple Transmitter System and Method
US20130266047A1 (en) 2012-04-09 2013-10-10 Nvidia Corporation 8b/9b decoding for reducing crosstalk on a high speed parallel bus

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4468787A (en) 1981-11-09 1984-08-28 Lear Siegler, Inc. Ternary data transmission system
US7190284B1 (en) * 1994-11-16 2007-03-13 Dye Thomas A Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent
US5905716A (en) * 1996-12-09 1999-05-18 Ericsson, Inc. Asynchronous full duplex communications over a single channel
US5872819A (en) * 1997-02-19 1999-02-16 Motorola, Inc. Method and apparatus for facilitating symbol timing acquisition in a data communication receiver
US6055117A (en) * 1998-06-09 2000-04-25 Hewlett-Packard Company Systems and method having data encoded with edge placement equalization
US6577687B2 (en) * 1998-12-23 2003-06-10 Maxtor Corporation Method for transmitting data over a data bus with minimized digital inter-symbol interference
US6724830B2 (en) * 1999-10-14 2004-04-20 Tropian, Inc. High efficiency line driver for high crest-factor signals such as DMT/ADSL signals
JP3603732B2 (ja) * 2000-03-16 2004-12-22 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP2002094489A (ja) * 2000-09-18 2002-03-29 Hitachi Ltd データ伝送回路
US7961832B2 (en) * 2001-12-28 2011-06-14 Texas Instruments Incorporated All-digital symbol clock recovery loop for synchronous coherent receiver systems
US6998892B1 (en) 2002-02-13 2006-02-14 Rambus Inc. Method and apparatus for accommodating delay variations among multiple signals
US7092472B2 (en) 2003-09-16 2006-08-15 Rambus Inc. Data-level clock recovery
US6871156B2 (en) * 2003-04-30 2005-03-22 The Boeing Company Smart connector patch panel
CN100541599C (zh) * 2003-10-22 2009-09-16 Nxp股份有限公司 通过多条传输线传输数据的方法和设备
JP2005217999A (ja) * 2004-02-02 2005-08-11 Hitachi Ltd デジタルデータ伝送回路
US7308048B2 (en) 2004-03-09 2007-12-11 Rambus Inc. System and method for selecting optimal data transition types for clock and data recovery
JP3822632B2 (ja) * 2004-04-16 2006-09-20 ザインエレクトロニクス株式会社 送信回路、受信回路及びクロック抽出回路並びにデータ伝送方法及びデータ伝送システム
US7212035B2 (en) 2005-02-11 2007-05-01 International Business Machines Corporation Logic line driver system for providing an optimal driver characteristic
JP2007142860A (ja) * 2005-11-18 2007-06-07 Sumitomo Electric Ind Ltd 送信器、受信器及びデータ伝送方法
US8310964B2 (en) * 2006-01-06 2012-11-13 Broadcom Corporation Enhanced 2-wire and 3-wire WLAN bluetooth coexistence solution
US7443319B2 (en) * 2006-01-16 2008-10-28 California Institute Of Technology Precision-resolution constrained coding scheme
WO2007125963A1 (ja) * 2006-04-27 2007-11-08 Panasonic Corporation 多重差動伝送システム
US20070273402A1 (en) * 2006-05-02 2007-11-29 Zethmayr Jon D Relational signaling and medium for high speed serial communications
US8064535B2 (en) 2007-03-02 2011-11-22 Qualcomm Incorporated Three phase and polarity encoded serial interface
US8305244B2 (en) * 2007-04-16 2012-11-06 Hewlett-Packard Development Company, L.P. Coding data using different coding alphabets
US7890788B2 (en) * 2007-07-09 2011-02-15 John Yin Clock data recovery and synchronization in interconnected devices
JP2009077099A (ja) * 2007-09-20 2009-04-09 Panasonic Corp 信号送信機、信号受信機及び多重差動伝送システム
US8648605B2 (en) * 2007-09-28 2014-02-11 Hitachi Chemical Company, Ltd. Sensor, sensor system, portable sensor system, method of analyzing metal ions, mounting substrate, method of analyzing plating preventing chemical species, method of analyzing produced compound, and method of analyzing monovalent copper chemical species
US8627165B2 (en) * 2008-03-24 2014-01-07 Micron Technology, Inc. Bitwise operations and apparatus in a multi-level system
US8121186B2 (en) * 2008-06-06 2012-02-21 Lsi Corporation Systems and methods for speculative signal equalization
US8274311B2 (en) 2009-02-27 2012-09-25 Yonghua Liu Data transmission system and method
US8394669B2 (en) * 2009-07-13 2013-03-12 Panasonic Corporation Resistance variable element and resistance variable memory device
EP2445138B1 (fr) * 2010-10-22 2015-07-15 The Swatch Group Research and Development Ltd. Unité de traitement de données, et récepteur de signaux comprenant l'unité de traitement de données
US8934528B2 (en) * 2011-03-30 2015-01-13 Silicon Laboratories Inc. Transition interval coding for serial communication
US20130266473A1 (en) * 2012-04-05 2013-10-10 GM Global Technology Operations LLC Method of Producing Sintered Magnets with Controlled Structures and Composition Distribution
US20140112401A1 (en) 2012-06-15 2014-04-24 Qualcomm Incorporated 3dynamic configuration of an n-phase polarity data communications link
US8885058B2 (en) 2012-12-31 2014-11-11 Karl Storz Imaging, Inc. Automatic low noise sampling of image and timing signals and signal delay compensation
JP6068193B2 (ja) 2013-02-28 2017-01-25 シナプティクス・ジャパン合同会社 受信装置及び送受信システム
US9118457B2 (en) * 2013-03-15 2015-08-25 Qualcomm Incorporated Multi-wire single-ended push-pull link with data symbol transition based clocking
EP2816765B1 (en) * 2013-06-17 2016-10-12 ST-Ericsson SA Three-wire three-level digital interface
US9137008B2 (en) 2013-07-23 2015-09-15 Qualcomm Incorporated Three phase clock recovery delay calibration
US10289600B2 (en) 2013-08-08 2019-05-14 Qualcomm Incorporated Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
US9276731B2 (en) 2013-08-08 2016-03-01 Qualcomm Incorporated N-phase signal transition alignment
US9148198B1 (en) * 2014-05-21 2015-09-29 Qualcomm Incorporated Programmable pre-emphasis circuit for MIPI C-PHY
US9473291B2 (en) 2014-07-08 2016-10-18 Intel Corporation Apparatuses and methods for reducing switching jitter
US10015027B2 (en) 2014-10-22 2018-07-03 Micron Technology, Inc. Apparatuses and methods for adding offset delays to signal lines of multi-level communication architectures
ITUB20151177A1 (it) * 2015-05-26 2016-11-26 St Microelectronics Srl Interfaccia auto-sincronizzante, dispositivo e procedimento corrispondenti
US9485080B1 (en) * 2015-09-01 2016-11-01 Qualcomm Incorporated Multiphase clock data recovery circuit calibration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093145B2 (en) 1999-10-19 2006-08-15 Rambus Inc. Method and apparatus for calibrating a multi-level current mode driver having a plurality of source calibration signals
US20050181304A1 (en) 2004-02-16 2005-08-18 Daikin Industries, Ltd Method of forming fine pattern
US20090225873A1 (en) 2008-03-05 2009-09-10 Qualcomm Incorporated Multiple Transmitter System and Method
US20130266047A1 (en) 2012-04-09 2013-10-10 Nvidia Corporation 8b/9b decoding for reducing crosstalk on a high speed parallel bus

Also Published As

Publication number Publication date
JP6568247B2 (ja) 2019-08-28
EP3330865A1 (en) 2018-06-06
TW201707379A (zh) 2017-02-16
JP2018082504A (ja) 2018-05-24
TWI594575B (zh) 2017-08-01
KR20160099741A (ko) 2016-08-22
CN105453067A (zh) 2016-03-30
US9842073B2 (en) 2017-12-12
US20150043693A1 (en) 2015-02-12
JP6286513B2 (ja) 2018-02-28
JP2016527847A (ja) 2016-09-08
EP3030972B1 (en) 2017-09-20
US10127167B2 (en) 2018-11-13
CN105453067B (zh) 2017-05-31
KR20160040216A (ko) 2016-04-12
KR102024423B1 (ko) 2019-09-23
US9276731B2 (en) 2016-03-01
US20160162423A1 (en) 2016-06-09
US20170091141A1 (en) 2017-03-30
JP6054586B2 (ja) 2016-12-27
EP3030972A1 (en) 2016-06-15
WO2015021257A1 (en) 2015-02-12
TWI569580B (zh) 2017-02-01
JP2017063475A (ja) 2017-03-30
TW201728083A (zh) 2017-08-01
TW201513574A (zh) 2015-04-01
TWI643461B (zh) 2018-12-01

Similar Documents

Publication Publication Date Title
KR101650687B1 (ko) N-상 신호 트랜지션 정렬
KR101634923B1 (ko) 3 위상 클록 복구 지연 교정
US10289600B2 (en) Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
JP2018525902A (ja) C−phy3相トランスミッタ用の時間ベース等化
JP2018526912A (ja) 3相インターフェース用の多相クロックデータ復元
KR20160067990A (ko) 심볼 트랜지션에 기초한 아이 패턴 트리거링
WO2017156485A1 (en) Multiphase preamble data sequences for receiver calibration and mode data signaling
KR102420905B1 (ko) 차세대 c-phy 인터페이스들을 위한 개방-루프, 초고속, 하프-레이트 클록 및 데이터 복구
EP3529956B1 (en) Reducing transmitter encoding jitter in a c-phy interface using multiple clock phases to launch symbols
TWI822732B (zh) 獨立配對的3相眼圖取樣電路

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant