KR20190068546A - 론치 심볼들에 다중 클록 위상들을 사용하여 c-phy 인터페이스에서의 송신기 인코딩 지터의 감소 - Google Patents

론치 심볼들에 다중 클록 위상들을 사용하여 c-phy 인터페이스에서의 송신기 인코딩 지터의 감소 Download PDF

Info

Publication number
KR20190068546A
KR20190068546A KR1020197010843A KR20197010843A KR20190068546A KR 20190068546 A KR20190068546 A KR 20190068546A KR 1020197010843 A KR1020197010843 A KR 1020197010843A KR 20197010843 A KR20197010843 A KR 20197010843A KR 20190068546 A KR20190068546 A KR 20190068546A
Authority
KR
South Korea
Prior art keywords
wire
transition
clock signal
launch
launch clock
Prior art date
Application number
KR1020197010843A
Other languages
English (en)
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
Priority claimed from US15/332,756 external-priority patent/US10289600B2/en
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20190068546A publication Critical patent/KR20190068546A/ko

Links

Images

Classifications

    • 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/4923Transmitting 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 ternary codes
    • H04L25/4925Transmitting 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 ternary codes using balanced bipolar ternary codes
    • 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
    • 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
    • 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/0264Arrangements for coupling to transmission lines
    • H04L25/0272Arrangements for coupling to multiple lines, e.g. for differential transmission
    • 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/0264Arrangements for coupling to transmission lines
    • H04L25/028Arrangements specific to the transmitter end
    • 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
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • H04L7/0037Delay of clock signal
    • 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
    • H04L7/0041Delay of data signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0091Transmitter details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0334Processing of samples having at least three levels, e.g. soft decisions

Landscapes

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

Abstract

멀티-와이어 인터페이스 상의 송신들에서 에러 검출을 위한 장치, 시스템들 및 방법들이 개시된다. 하나의 방법은, 상이한 위상 시프트들을 갖는 론치 클록 신호들을 포함하는 복수의 론치 클록 신호들을 제공하는 단계, 2 개의 연속하여 송신된 심볼들 간의 경계에서 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하는 단계, 및 3-상 인터페이스의 각각의 와이어 상에서 시그널링 상태의 트랜지션을 개시하기 위해 복수의 론치 클록 신호들 중 하나를 선택하는 단계를 포함한다. 복수의 론치 클록 신호들 중 하나를 선택하는 단계는, 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하는 단계, 및 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하는 단계를 포함할 수도 있다. 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다.

Description

론치 심볼들에 다중 클록 위상들을 사용하여 C-PHY 인터페이스에서의 송신기 인코딩 지터의 감소
관련 출원들에 대한 상호-참조
본 출원은 미국특허청에 2016년 10월 24일자로 출원된 가특허출원 제15/332,756호에 대해 우선권을 주장하고 그 이익을 주장하며, 그 전체 내용은 모든 적용가능한 목적들을 위해 그리고 전부 이하에 완전히 기재된 것처럼 참조로 본 명세서에 통합된다.
기술분야
본 개시는 일반적으로 고속 데이터 통신 인터페이스들에 관한 것으로, 특히, 멀티-와이어, 멀티-위상 데이터 통신 인터페이스들에서 지터를 감소시키는 것에 관한 것이다.
셀룰러 폰들과 같은 모바일 디바이스들의 제조자들은 상이한 제조자들을 포함한, 다양한 소스들로부터 모바일 디바이스들의 컴포넌트들을 획득할 수도 있다. 예를 들어, 셀룰러 폰에서의 애플리케이션 프로세서는 제 1 제조자로부터 획득될 수도 있는 한편, 셀룰러 폰에 대한 디스플레이는 제 2 제조자로부터 획득될 수도 있다. 애플리케이션 프로세서 및 디스플레이 또는 다른 디바이스는 표준-기반 또는 독점적 물리 인터페이스를 사용하여 상호연결될 수도 있다. 예를 들어, 디스플레이는 MIPI (Mobile Industry Processor Interface) 얼라이언스 (Alliance) 에 의해 특정된 DSI (Display System Interface) 표준에 부합하는 인터페이스를 제공할 수도 있다.
채널을 통하여 이동하는 고속 신호의 상위 주파수 성분들은 채널 대역폭 제한들로 인해 상당히 감쇠될 수 있으며 감쇠 (attenuation) 의 정도는 신호의 주파수에 상관될 수도 있다. 고 주파수 성분들의 손실들은 심볼간 간섭 (inter-symbol interference; ISI) 을 야기할 수 있고 지터를 증가시킬 수 있다. 통상 사용되는 보상 기법은 송신기에서 프리-엠퍼시스 (pre-emphasis) 를 채용하고, 이는 또한 피드-포워드 등화 (feed-forward equalization; FFE) 로 지칭될 수도 있다. FFE 는 싱글-엔드형 및 차동 라인 드라이버들에서 채용될 수 있지만, 다른 타입들의 드라이버들에 대해 제한된 영향을 미친다.
하나의 예에서, MIPI 에 의해 정의된 3-와이어 인터페이스 (C-PHY) 는 차동 쌍들보다는 컨덕터들의 트리오 (trio) 를 사용하여 디바이스들 간에 정보를 송신한다. 3 개의 와이어들의 각각은 C-PHY 인터페이스 상으로의 심볼의 송신 동안 3 개의 시그널링 상태들 중 하나에 있을 수도 있다. 클록 정보는 C-PHY 링크 상에서 송신된 심볼들의 시퀀스에서 인코딩되고, 수신기는 연속적인 심볼들 간의 트랜지션들로부터 클록 신호를 생성한다. C-PHY 인터페이스에서, 통신 링크의 최대 속도 및 클록 정보를 복구하기 위한 클록-데이터 복구 (clock-data recovery; CDR) 회로의 능력은 통신 링크의 상이한 와이어들 상에서 송신된 신호들의 트랜지션들에 관련된 최대 시간 변동 (maximum time variation) 에 의해 제한될 수도 있다.
이에 따라, 멀티-와이어 인터페이스들의 시그널링 능력들을 개선하기 위한 진행중인 필요성이 존재한다.
본 개시의 소정의 양태들은 론치 심볼들에 다중 클록 위상들을 사용하여 C-PHY 인터페이스에서 송신기 인코딩 지터를 감소시킬 수 있는 시스템들, 장치, 방법들 및 기법들에 관한 것이다.
본 명세서에서 개시된 소정의 양태들에 따르면, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법은, 복수의 론치 클록 신호들을 제공하는 단계로서, 소정의 론치 클록 신호들은 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트를 갖는, 상기 복수의 론치 클록 신호들을 제공하는 단계, 2 개의 연속하여 송신된 심볼들 간의 경계에서 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하는 단계, 및 3-상 인터페이스의 각각의 와이어 상에서 시그널링 상태의 트랜지션을 개시하기 위해 복수의 론치 클록 신호들 중 하나를 선택하는 단계를 포함한다. 복수의 론치 클록 신호들 중 하나를 선택하는 단계는, 시그널링 상태의 트랜지션이 비구동 상태 (undriven state) 에서 종료될 때 제 1 론치 클록 신호를 선택하는 단계, 및 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하는 단계를 포함할 수도 있다. 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다. 각각의 심볼 송신 동안, 3-상 신호가 3-와이어 인터페이스의 각각의 와이어 상에서 송신될 수도 있다. 각각의 와이어 상에서 송신된 3-상 신호는 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있을 수도 있다.
하나의 양태에서, 복수의 론치 클록 신호들 중 하나를 선택하는 단계는 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 2 개의 연속하여 송신된 심볼들 간의 경계에서 트랜지션할 때 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하는 단계를 포함한다.
일부 양태들에서, 복수의 론치 클록 신호들 중 하나를 선택하는 단계는, 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하는 단계를 포함한다. 제 3 론치 클록 신호에서의 에지는 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다. 제 1 론치 클록 신호, 제 2 론치 클록 신호, 및 제 3 론치 클록 신호는 3-와이어 인터페이스에 커플링된 수신기에서 2 개의 연속하여 송신된 심볼들 간의 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택될 수도 있다. 제 3 론치 클록은 심볼 클록으로서 기능할 수도 있다.
하나의 양태에서, 트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생한다.
하나의 예에서, 3-와이어 인터페이스는 MIPI 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환된다.
소정의 양태들에 따르면, 3-와이어 인터페이스의 하나의 와이어를 구동하기 위해 적응된 라인 드라이버는 클록 생성기, 결정 로직 및 플립-플롭들의 세트를 포함할 수도 있다. 클록 생성기는 복수의 론치 클록 신호들을 제공하도록 구성될 수도 있고, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 갖는다. 결정 로직은, 2 개의 연속하여 송신된 심볼들 간의 경계에서 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하고, 시그널링 상태의 트랜지션을 개시하기 위해 현재 론치 신호로서 복수의 론치 클록 신호들 중 하나를 선택하도록 구성될 수도 있다. 플립-플롭들의 세트는 현재 론치 신호를 수신하고 3-와이어 인터페이스 상의 3-상 신호들의 론치의 타이밍을 제어하도록 구성될 수도 있다. 각각의 심볼 송신 동안, 3-상 신호는 3-와이어 인터페이스의 각각의 와이어 상에서 송신될 수도 있고, 각각의 와이어 상에서 송신된 3-상 신호는 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있다.
하나의 양태에서, 결정 로직은, 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하고, 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하도록 구성된다. 하나의 예에서, 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생한다.
하나의 양태에서, 결정 로직은, 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 2 개의 연속하여 송신된 심볼들 간의 경계에서 트랜지션할 때 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하도록 구성된다.
일부 양태들에서, 결정 로직은 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하도록 구성된다. 예를 들어, 제 3 론치 클록 신호에서의 에지는 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다. 제 1 론치 클록 신호, 제 2 론치 클록 신호, 및 제 3 론치 클록 신호는 3-와이어 인터페이스에 커플링된 수신기에서 2 개의 연속하여 송신된 심볼들 간의 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택될 수도 있다. 제 3 론치 클록은 심볼 클록일 수도 있다.
하나의 양태에서, 트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생한다. 3-와이어 인터페이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환된다.
소정의 양태들에 따르면, 장치는, 복수의 론치 클록 신호들을 제공하기 위한 수단을 포함하고, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 갖는다. 각각의 심볼 송신 동안, 3-상 신호는 3-와이어 인터페이스의 각각의 와이어 상에서 송신될 수도 있고, 각각의 와이어 상에서 송신된 3-와이어 신호는 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있다. 장치는, 2 개의 연속하여 송신된 심볼들 간의 경계에서 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하기 위한 수단, 및 복수의 론치 클록 신호들 중 하나를 사용하여 시그널링 상태의 트랜지션을 개시하기 위한 수단을 포함할 수도 있다. 시그널링 상태의 트랜지션을 개시하기 위한 수단은, 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 시그널링 상태의 트랜지션을 개시하기 위해 제 1 론치 클록 신호를 사용하고, 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 시그널링 상태의 트랜지션을 개시하기 위해 제 2 론치 클록 신호를 사용하도록 구성될 수도 있다. 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다.
하나의 양태에서, 시그널링 상태의 트랜지션을 개시하기 위한 수단은, 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 2 개의 연속하여 송신된 심볼들 간의 경계에서 트랜지션할 때 3-와이어 인터페이스의 모든 와이어들 상에서 시그널링 상태의 트랜지션들을 개시하기 위한 공통 론치 클록 신호를 사용하도록 구성된다.
하나의 양태에서, 시그널링 상태의 트랜지션을 개시하기 위한 수단은 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 시그널링 상태의 트랜지션을 개시하기 위해 제 3 론치 클록 신호를 선택하도록 구성된다. 제 3 론치 클록 신호에서의 에지는 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다.
하나의 양태에서, 제 1 론치 클록 신호, 제 2 론치 클록 신호, 및 제 3 론치 클록 신호는 3-와이어 인터페이스에 커플링된 수신기에서 2 개의 연속하여 송신된 심볼들 간의 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택된다. 제 3 론치 클록은 심볼 클록일 수도 있다.
소정의 양태들에 따르면, 컴퓨터 판독가능 저장 매체는 명령들을 저장하고 있다. 저장 매체는 일시적 또는 비일시적 저장 매체들을 포함할 수도 있다. 명령들은, 프로세서가 복수의 론치 클록 신호들을 제공하는 것으로서, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 갖는, 상기 복수의 론치 클록 신호들을 제공하고, 2 개의 연속하여 송신된 심볼들 간의 경계에서 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하고, 3-와이어 인터페이스의 각각의 와이어 상에서 시그널링 상태의 트랜지션을 개시하기 위해 복수의 론치 클록 상태들을 중 하나를 선택하게 되도록 프로세서에 의해 실행될 수도 있다. 저장 매체는, 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하고, 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하기 위한 명령들을 가질 수도 있다. 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다. 각각의 심볼 송신 동안, 3-상 신호는 3-와이어 인터페이스의 각각의 와이어 상에서 송신되고, 각각의 와이어 상에서 송신된 3-와이어 신호는 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있다.
하나의 양태에서, 저장 매체는, 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 2 개의 연속하여 송신된 심볼들 간의 경계에서 트랜지션할 때 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하기 위한 명령들을 가질 수도 있다.
일부 양태에서, 저장 매체는 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하기 위한 명령들을 가질 수도 있다. 제 3 론치 클록 신호에서의 에지는 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다. 제 1 론치 클록 신호, 제 2 론치 클록 신호, 및 제 3 론치 클록 신호는 3-와이어 인터페이스에 커플링된 수신기에서 2 개의 연속하여 송신된 심볼들 간의 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택될 수도 있다. 제 3 론치 클록은 심볼 클록으로서 기능할 수도 있다.
하나의 양태에서, 트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생한다.
하나의 예에서, 3-와이어 인터페이스는 MIPI 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환된다.
다양한 피처들, 본성, 및 이점들은 도면들과 함께 취해질 때 이하에 제시된 상세한 설명으로부터 명백해 수도 있으며, 도면들에 있어서 동일한 참조 부호들은 전반에 걸쳐 대응하여 식별한다.
도 1 은 복수의 이용가능한 표준들 중 하나에 따라 선택적으로 동작하는 집적 회로 (IC) 디바이스들 간에 데이터 링크를 채용하는 장치를 도시한다.
도 2 는 IC 디바이스들 간에 데이터 링크를 채용하는 장치에 대한 시스템 아키텍처를 예시한다.
도 3 은 C-PHY 인터페이스에서의 송신기의 예를 예시한다.
도 4 는 C-PHY 인터페이스의 예에서의 시그널링을 예시한다.
도 5 는 C-PHY 인터페이스에서의 수신기의 소정의 양태들을 예시한다.
도 6 은 본 명세서에서 개시된 소정의 양태들에 따른 심볼 및/또는 심볼 시퀀스 삽입을 위해 적응된 C-PHY 인터페이스의 예를 예시한다.
도 7 은 M-와이어 N-상 극성 디코더에서의 트랜지션 검출을 예시한다.
도 8 은 M-와이어 N-상 극성 디코더에서의 트랜지션 검출에 대한 신호 상승 시간들의 소정의 영향들을 예시한다.
도 9 는 M-와이어 N-상 극성 디코더에서의 잠재적인 상태 트랜지션들을 예시하는 상태 다이어그램이다.
도 10 은 M-와이어 N-상 극성 디코더에서의 트랜지션 및 샘플링 영역들을 예시하는 다이어그램이다.
도 11 은 본 명세서에서 개시된 소정의 양태들에 따른 트랜지션 전진 (advancement) 및 지연 (delay) 의 소정의 양태들을 예시하는 다이어그램이다.
도 12 는 본 명세서에서 개시된 소정의 양태들에 따른 C-PHY 인터페이스 상에서 송신된 신호들에 대한 전진/지연 회로의 하나의 예를 예시하는 다이어그램이다.
도 13 은 C-PHY 인터페이스와 연관된 타이밍의 예를 예시한다.
도 14 는 본 명세서에서 개시된 소정의 양태들에 따라 제공된 전진/지연 회로와 연관된 타이밍 조정의 예를 예시한다.
도 15 는 본 명세서에서 개시된 소정의 양태들에 따른 C-PHY 인터페이스에서 인코딩 지터를 감소시키도록 적응되는 송신기에서의 라인 드라이버의 예를 예시한다.
도 16 은 도 15 에 예시된 라인 드라이버의 동작을 예시하는 타이밍 다이어그램이다.
도 17 은 본 명세서에서 개시된 소정의 양태들에 따라 적응될 수도 있는 프로세싱 시스템을 채용하는 장치의 예를 예시하는 블록 다이어그램이다.
도 18 은 본 명세서에서 개시된 소정의 양태들에 따라 송신기에서 채용될 수도 있는 데이터 통신 방법의 플로우 차트이다.
도 19 는 본 명세서에서 개시된 소정의 양태들에 따른 심볼 에러 검출을 제공하는 인터페이스에서 사용되는 장치에 대한 하드웨어 구현의 제 1 예를 예시하는 다이어그램이다.
다음의 설명에서, 특정 상세들은 실시형태들의 철저한 이해를 제공하기 위해 주어진다. 그러나, 실시형태들은 이들 특정 상세 없이도 실시될 수도 있다는 것이 당업자에 의해 이해될 것이다. 예를 들어, 회로들은, 그 실시형태들을 불필요한 상세로 모호하게 하지 않기 위하여 블록 다이어그램들로 도시될 수도 있다. 다른 인스턴스들에서, 널리 공지된 회로들, 구조들 및 기법들은 실시형태들을 모호하게 하지 않기 위하여 상세히 도시되지 않을 수도 있다.
개관
MIPI 얼라이언스에 의해 정의된 C-PHY 3-상 인터페이스를 포함하여, 소정의 데이터 전송 인터페이스들은 트랜지션 인코딩을 채용한다. 데이터는 심볼들에서 인코딩되고, 각각의 심볼은 심볼 간격에서 C-PHY 3-상 인터페이스의 시그널링 상태를 제어한다. 수신기에서 수신 클록을 생성하는데 사용되는 정보는, 인터페이스의 시그널링 상태의 변화가 수신기에서 수신 클록을 생성하는데 사용되는 정보를 제공하는 각각의 심볼 경계에서 발생함을 보장함으로써 제공된다.
C-PHY 인터페이스는, 대역폭 제한된 채널들 상으로 높은 스루풋을 제공하는 고속 직렬 인터페이스이다. C-PHY 인터페이스는, 디스플레이들 및 카메라들을 포함한 주변기기들과 애플리케이션 프로세서들을 연결하는데 사용된다. C-PHY 인터페이스는 3-와이어 트리오의 시그널링 상태를 정의하는 심볼들에서 데이터를 인코딩한다. 각각의 심볼 간격에서, 3-와이어 트리오에서의 각각의 와이어는 다른 2 개의 와이어들 상에서 송신된 신호와 120° 위상 차이가 있는 3-상 신호를 반송한다. 심볼 당 2.28 비트의 유효 전송이 달성될 수도 있다.
3-와이어 트리오 내에서, 3-와이어 트리오 중 2 개가 반대 레벨들 (고 (high) 및 저 (low)) 로 구동되는 한편, 세번째 와이어는 중간-레벨 (공통 모드 레벨) 로 종료되며, 와이어들이 구동되는 전압들의 조합이 매 심볼에서 변화한다. 따라서, C-PHY 3-상 송신기는 송신 채널 상에 고, 저 또는 중간 (공통 모드) 전압을 구동 가능하도록 드라이버에 요구한다. 본 명세서에서 설명된 바와 같이, 일부 트랜지션들에서의 시그널링 스킴은 풀 스윙 (full swing) (예를 들어, 저에서 고, 또는 고에서 저) 이고, 일부 트랜지션들은 하프 스윙 (half swing) (예를 들어 중간-레벨에서 저/고로, 및 저/고에서 중간-레벨로) 이다. 이것은 차례로 송신된 차동 신호 쌍들에서 상이한 트랜지션 시간들 및/또는 상이한 제로 크로싱들을 초래할 수 있고, 통신 링크의 신호 무결성에 영향을 줄 수도 있는 "인코딩 지터" 를 생성할 수 있다.
본 명세서에서 개시된 소정의 양태들에 따르면, 신호 무결성은 론치 심볼들에 다중 클록 위상들을 사용하여 송신기 인코딩 지터를 감소시킴으로써 C-PHY 인터페이스에서 개선될 수 있다. 이 시간-기반 솔루션은 수신기에서 샘플링 타이밍을 개선시킬 수 있다. 송신될 각각의 심볼에 대해, 송신기 론치 클록은 심볼이 송신될 때 발생할 시그널링 상태의 트랜지션의 타입에 기초하여 3-와이어 트리오의 각각의 와이어에 대해 선택된다. 송신기 론치 클록은 상이한 위상 시프트들을 가진 다중 버전들에서 제공될 수도 있다.
C-PHY 인터페이스를 포함하는 디바이스의 예
도 1 은 IC 디바이스들 간에 통신 링크를 채용할 수도 있는 장치 (100) 를 묘사한다. 하나의 예에서, 장치 (100) 는 무선 액세스 네트워크 (RAN), 코어 액세스 네트워크, 인터넷 및/또는 다른 네트워크와 무선 주파수 (RF) 통신 트랜시버 (106) 를 통하여 통신하는 통신 디바이스를 포함할 수도 있다. 통신 트랜시버 (106) 는 프로세싱 회로 (102) 에 동작가능하게 커플링될 수도 있다. 프로세싱 회로 (102) 는 애플리케이션 특정 IC (ASIC) (108) 와 같은 하나 이상의 IC 디바이스들을 포함할 수도 있다. ASIC (108) 은 하나 이상의 프로세싱 디바이스들, 로직 회로들 등을 포함할 수도 있다. 프로세싱 회로 (102) 는 프로세싱 회로 (102) 에 의한 실행 또는 다른 사용을 위한 명령들 및 데이터를 저장 및 유지할 수 있는 메모리 디바이스 (112) 와 같은 프로세서 판독가능 스토리지를 포함하고 및/또는 그에 커플링될 수도 있다. 프로세싱 회로 (102) 는, 디바이스의 메모리 디바이스 (112) 와 같은 저장 매체들에 상주하는 소프트웨어 모듈들의 실행을 지원 및 가능하게 하는 애플리케이션 프로그래밍 인터페이스 (API) (110) 계층 및 오퍼레이팅 시스템 중 하나 이상에 의해 제어될 수도 있다. 메모리 디바이스 (112) 는 프로세싱 시스템들 및 컴퓨팅 플랫폼들에서 사용될 수 있는 ROM 또는 RAM, EEPROM, 플래시 카드들, 또는 임의의 메모리 디바이스를 포함할 수도 있다. 프로세싱 회로 (102) 는, 장치 (100) 를 구성 및 동작시키는데 사용되는 동작 파라미터들 및 다른 정보를 유지할 수 있는 로컬 데이터베이스 (114) 를 포함하거나 또는 그에 액세스할 수도 있다. 로컬 데이터베이스 (114) 는 데이터베이스 모듈, 플래시 메모리, 자기 매체들, EEPROM, 광학 매체들, 테이프, 소프트 또는 하드 디스크 등 중 하나 이상을 사용하여 구현될 수도 있다. 프로세싱 회로는 또한, 다른 컴포넌트들 중에서도, 외부 디바이스들, 이를 테면 안테나 (122), 디스플레이 (124), 오퍼레이터 컨트롤들 (operator controls), 이를 테면 버튼 (128) 및 키패드 (126) 에 동작가능하게 커플링될 수도 있다.
도 2 는 다양한 서브컴포넌트들, IC 디바이스들 또는 회로들을 연결하기 위해 통신 링크 (220) 를 채용하는 모바일 디바이스와 같은 장치 (200) 의 소정의 양태들을 예시하는 블록 개략적 다이어그램이다. 하나의 예에서, 장치 (200) 는 통신 링크 (220) 를 통하여 데이터 및 제어 정보를 교환하는 복수의 IC 디바이스들 (202 및 230) 을 포함한다. 통신 링크 (220) 는, 서로 매우 근접하게 위치되거나 또는 장치 (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) 는 RF 트랜시버 (204) 및 안테나 (214) 를 통한 통신들을 유지하는 것을 포함하는 장치 (200) 의 핵심 기능들을 수행할 수도 있는 한편, 제 2 IC 디바이스 (230) 는 디스플레이 제어기 (232) 를 관리하거나 또는 동작시키는 사용자 인터페이스를 지원할 수도 있다. 그 예에서, 제 2 IC 디바이스 (230) 는 카메라 제어기 (234) 를 사용하여 카메라 또는 비디오 입력 디바이스의 동작들을 제어하도록 적응될 수도 있다. IC 디바이스들 (202 및 230) 중 하나 이상에 의해 지원된 다른 피처들은 키보드, 음성 인식 컴포넌트, 및 다른 입력 또는 출력 디바이스들을 포함할 수도 있다. 디스플레이 제어기 (232) 는, 액정 디스플레이 (LCD) 패널, 터치-스크린 디스플레이, 표시기들 등과 같은 디스플레이들을 지원하는 회로들 및 소프트웨어 드라이버들을 포함할 수도 있다. 저장 매체들 (208 및 238) 은, 개별의 프로세서들 (206 및 236), 및/또는 IC 디바이스들 (202 및 230) 의 다른 컴포넌트들에 의해 사용되는 명령들 및 데이터를 유지하도록 적응된 일시적 및/또는 비일시적 저장 디바이스들을 포함할 수도 있다. 각각의 프로세서 (206, 236) 와 그 대응하는 저장 매체들 (208 및 238) 및 다른 모듈들 및 회로들 간의 통신은 각각 하나 이상의 버스 (212 및 242) 에 의해 용이하게 될 수도 있다.
역방향 채널 (224) 은 순방향 채널 (222) 과 동일한 방식으로 동작될 수도 있고, 순방향 채널 (222) 및 역방향 채널 (224) 은 비교할 만한 속도들로 또는 상이한 속도들로 송신 가능할 수도 있고, 여기서 속도는 데이터 전송 레이트 및/또는 클록킹 레이트들로서 표현될 수도 있다. 순방향 및 역방향 데이터 레이트들은 애플리케이션에 의존하여, 실질적으로 동일하거나 또는 수 자릿수 (orders of magnitude) 만큼 상이할 수도 있다. 일부 애플리케이션들에서, 단일 양방향 채널 (226) 이 제 1 IC 디바이스 (202) 와 제 2 IC 디바이스 (230) 간의 통신들을 지원할 수도 있다. 순방향 채널 (222) 및/또는 역방향 채널 (224) 은, 예를 들어, 순방향 및 역방향 채널들 (222 및 224) 이 동일한 물리적 커넥션들을 공유하고 하프-듀플렉스 방식으로 동작할 때 양방향 모드에서 동작하도록 구성가능할 수도 있다. 하나의 예에서, 통신 링크 (220) 는 산업 또는 다른 표준에 따라 제 1 IC 디바이스 (202) 와 제 2 IC 디바이스 (230) 간에 제어, 커맨드 및 다른 정보를 통신하도록 동작될 수도 있다.
일부 인스턴스들에서, 순방향 및 역방향 채널들 (222 및 224) 은 프레임 버퍼 없이 WVGA (wide video graphics array) 초 당 80 프레임들 LCD 드라이버 IC 를 지원하도록 구성 또는 적응되어, 디스플레이 리프레시를 위해 810 Mbps 로 픽셀 데이터를 전달할 수도 있다. 다른 예에서, 순방향 및 역방향 채널들 (222 및 224) 은 동적 랜덤 액세스 메모리 (DRAM), 이를 테면 더블 데이터 레이트 동기식 동적 랜덤 액세스 메모리 (SDRAM) 와의 사이에 통신들을 가능하게 하도록 구성 또는 적응될 수도 있다. 드라이버들 (210, 240) 은 클록 트랜지션 당 다중 비트들을 인코딩하도록 구성될 수 있는 인코딩 디바이스들을 포함할 수도 있고, 와이어들의 다중 세트들이 SDRAM 으로부터의 데이터, 제어 신호들, 어드레스 신호들, 및 다른 신호들을 송신 및 수신하는데 사용될 수 있다.
순방향 및 역방향 채널들 (222 및 224) 은 애플리케이션 특정 산업 표준들을 준수하거나 또는 그와 호환될 수도 있다. 하나의 예에서, MIPI 얼라이언스는 모바일 디바이스에서 제공될 수도 있는 디스플레이들 및 카메라들을 지원하는 IC 디바이스 (230) 와 애플리케이션 프로세서 IC 디바이스 (202) 간의 물리 계층 인터페이스들을 정의한다. MIPI 얼라이언스는 모바일 디바이스들에 대한 MIPI 얼라이언스 사양들을 준수하는 제품들의 동작 특성들을 통제하는 사양들을 정의한다.
MIPI 얼라이언스는 안테나, 주변기기들, 모뎀 및 애플리케이션 프로세서들을 포함하는, 모바일 디바이스에서의 동작들의 모든 양태들에 영향을 주는 통신을 어드레싱할 수도 있는 표준들 및 사양들을 정의한다. 예를 들어, MIPI 얼라이언스는 카메라 직렬 인터페이스 (camera serial interface; CSI) 및 디스플레이 직렬 인터페이스 (display serial interface; DSI) 에 대한 프로토콜들을 정의한다. MIPI 얼라이언스 CSI-2 는 카메라와 애플리케이션 프로세서 간의 유선 인터페이스를 정의하고, MIPI DSI 또는 DSI-2 는 애플리케이션 프로세서와 디스플레이 간의 유선 인터페이스를 정의한다. 하나의 예에서, 이들 애플리케이션들의 각각에서의 저 레벨 물리 계층 (PHY) 인터페이스는 MIPI 얼라이언스 C-PHY 프로토콜들을 준수하거나 또는 그와 호환될 수도 있다.
MIPI 얼라이언스 C-PHY 인터페이스
본 명세서에서 개시된 소정의 양태들에 따르면, 시스템들 및 장치는 장치 (200) 내에서 IC 디바이스들 (202 및 230) 간에 통신하기 위해 멀티-위상 데이터 인코딩 및 디코딩 인터페이스 방법들을 채용할 수도 있다. 멀티-위상 인코더는 복수의 컨덕터들 (즉, M 개의 컨덕터들) 을 구동할 수도 있다. M 개의 컨덕터들은 통상적으로 3 개 이상의 컨덕터들을 포함하며, 각각의 컨덕터는 와이어로 지칭될 수도 있지만, M 개의 컨덕터들은 회로 보드 상에 또는 반도체 IC 디바이스의 컨덕티브 층 (conductive layer) 내에 컨덕티브 트레이스들을 포함할 수도 있다. 하나의 예에서, MIPI 얼라이언스-정의된 "C-PHY" 물리 계층 인터페이스 기술은 카메라 및 디스플레이 디바이스들 (230) 을 애플리케이션 프로세서 디바이스 (202) 에 연결하는데 사용될 수도 있다. C-PHY 인터페이스는 3-와이어 레인들 또는 "트리오들" 상에서 데이터 심볼들을 송신하기 위해 3-상 심볼 인코딩을 채용하며, 여기서 각각의 트리오는 내장된 클록을 포함한다.
일부 구현들에서, M 개의 컨덕터들은 복수의 송신 그룹들로 분할될 수도 있고, 각각의 그룹은 송신될 데이터의 블록의 부분을 반송하는데 사용되는 트리오를 포함한다. C-PHY 인터페이스는, 데이터의 비트들이 트리오 상에서 위상 트랜지션들 및 극성 변화들에서 인코딩되는 3-상 인코딩 스킴을 채용한다. 디코딩은 독립적인 컨덕터들 또는 컨덕터들의 쌍들에 의존하지 않으며, 타이밍 정보는 트리오에서의 위상 및/또는 극성 트랜지션들로부터 직접 유도될 수 있다.
C-PHY 인터페이스에서, 3-와이어 시스템에 대한 3-상 인코딩 스킴은 3 개의 위상 상태들 및 2 개의 극성들을 정의할 수도 있어, 6 개의 상태들 및 각각의 상태로부터 5 개의 가능한 트랜지션들을 제공한다. 결정적 전압 및/또는 전류 변화들은 3 개의 와이어들로부터 데이터를 추출하기 위해 검출 및 디코딩될 수도 있다.
통신 링크 (220) 는 모바일 디스플레이 디지털 인터페이스 (MDDI) 와 같은 고속 디지털 인터페이스에서 3-상 인코딩된 데이터를 반송하도록 구성될 수도 있는, 복수의 신호 와이어들을 갖는 유선 버스로 구현될 수도 있다. 채널들 (222, 224 및 226) 중 하나 이상은 3-상 극성 인코딩을 사용하도록 구성 또는 적응될 수도 있다. 물리 계층 드라이버들 (210 및 240) 은 링크 (220) 상에서 송신된 3-상 극성 인코딩된 데이터를 인코딩 및 디코딩하도록 적응될 수도 있다. 3-상 극성 인코딩의 사용은 고속 데이터 전송을 제공하고, 다른 인터페이스들의 전력의 1/2 또는 그 미만을 소비할 수도 있는데, 이는 3 개 보다 적은 드라이버들이 아무때나 3-상 극성 인코딩된 데이터 링크들 (220) 에서 액티브이기 때문이다. 물리 계층 드라이버들 (210 및/또는 240) 에서의 3-상 극성 인코딩 회로들은 통신 링크 (220) 상에서 트래지션 마다 다중 비트들을 인코딩할 수 있다. 하나의 예에서, 3-상 인코딩 및 극성 인코딩의 조합은 프레임 버퍼 없이 WVGA (wide video graphics array), 초 당 80 프레임들 LCD 드라이버 IC 를 지원하는데 사용되어, 3 개 이상의 와이어들 상으로 810 Mbps 로 디스플레이 리프레시를 위해 픽셀 데이터를 전달할 수도 있다.
도 3 은 도 2 에 묘사된 통신 링크 (220) 의 소정의 양태들을 구현하기 위해 송신기 (300) 에 의한 3-상 극성 인코딩의 사용을 예시하는 블록 다이어그램이다. 예시된 예는 3-와이어 링크 또는 3 초과의 와이어들을 갖는 링크의 부분에 관한 것일 수도 있다. 묘사된 예의 송신기 (300) 에서, M-와이어, N-상 극성 인코딩 송신기는 M = 3 및 N = 3 에 대해 구성된다. 3-와이어, 3-상 인코더들에 대해 개시된 원리들 및 기법들은 M-와이어, N-상 극성 인코더들의 다른 구성들에서 적용될 수 있고, 다른 인터페이스 표준들을 준수하거나 또는 그와 호환될 수도 있다.
3-상 극성 인코딩이 사용될 때, 3-와이어 버스 상의 커넥터들, 이를 테면, 와이어들 (310a, 310b 및 310c) 이 비구동, 양으로 구동, 또는 음으로 구동될 수도 있다. 비구동된 와이어 (310a, 310b 또는 310c) 는 고-임피던스 상태에 있을 수도 있다. 비구동된 와이어 (310a, 310b 또는 310c) 는 구동된 신호 와이어들 상에서 제공된 양 전압 레벨과 음 전압 레벨 사이에서 실질적으로 중간에 놓인 전압 레벨로 구동 또는 풀링될 수도 있다. 비구동된 와이어 (310a, 310b 또는 310c) 는 어떤 전류도 그를 통해 흐르지 않을 수도 있다. 예의 송신기 (300) 에서, 각각의 와이어 (310a, 310b 및 310c) 는 드라이버들 (308) 을 사용하여 (+1, -1, 또는 0 로 표시된) 3 개의 상태들 중 하나에 있을 수도 있다. 하나의 예에서, 드라이버들 (308) 은 단위-레벨 (unit-level) 전류 모드 드라이버들을 포함할 수도 있다. 다른 예에서, 드라이버들 (308) 은 와이어들 (310a 및 310b) 상에서 송신된 2 개의 신호들에 대해 반대 극성 전압들을 구동할 수도 있는 한편, 제 3 와이어 (310c) 는 고 임피던스에 있고 및/또는 접지로 풀링된다. 각각의 송신된 심볼 간격 동안, 적어도 하나의 신호는 비구동 (0) 상태에 있지만, 양으로 구동된 (+1 상태) 신호들의 수는 음으로 구동된 (-1 상태) 신호들의 수와 동일하여, 수신기로 흐르는 전류의 합은 항상 0 이 된다. 각각의 심볼에 대해, 적어도 하나의 와이어 (310a, 310b 또는 310c) 의 상태는 이전의 송신 간격에서 송신된 심볼로부터 변화된다.
맵퍼 (302) 는 순차적으로 송신될 때 와이어들 (310a, 310b, 310c) 의 시그널링 상태를 제어하는데 사용되는 7 개의 심볼들의 세트 (312) 에 16-비트 입력 데이터 (318) 를 맵핑할 수도 있다. 3-와이어, 3-상 인코더 (306) 는 입력 심볼 (314) 및 와이어들 (310a, 310b 및 310c) 의 이전 상태들에 기초하여 와이어들 (310a, 310b 및 310c) 의 상태들을 선택한다. 하나의 예에서, 3-상 인코더 (306) 는 7 개의 심볼들의 세트 (312) 를 한번에 하나의 심볼 (314) 씩 수신하고 와이어들 (310a, 310b, 310c) 의 바로 이전의 상태에 기초하여, 각각의 심볼 간격 동안 각각의 와이어 (310a, 310b 및 310c) 의 상태를 컴퓨팅한다. 다른 예에서, 7 개 심볼들의 세트 (312) 는 병렬-직렬 컨버터들 (304) 을 사용하여 직렬화될 수도 있다.
3-와이어, 3-상 인코딩의 사용은 다수의 비트들이 복수의 심볼들에서 인코딩되는 것을 허락하며, 여기서 심볼 당 비트들은 정수가 아니다. 3-와이어, 3-상 구현의 경우, 2 개의 와이어들이 동시에 구동되고 하나의 와이어가 비구동되는 3 개의 이용가능한 조합들이 있다. 2 개의 가능한 극성의 조합들이 동시에 구동되는 와이어들의 쌍에 대해 이용가능하여, 6 개의 가능한 상태들을 산출한다. 각각의 트랜지션이 현재 상태로부터 발생하기 때문에, 6 개의 상태들 중 5 개의 상태들이 매 트랜지션에서 이용가능하다. 적어도 하나의 와이어의 상태는 통상적으로 각각의 트랜지션에서 변화하도록 요구된다. 5 개의 상태들의 경우,
Figure pct00001
비트들이 심볼 마다 인코딩될 수도 있다. 이에 따라, 심볼 당 2.32 비트들을 반송하는 7 개의 심볼들이 16.24 비트들을 인코딩할 수 있기 때문에, 맵퍼는 16-비트 워드를 수락하고 그것을 7 개의 심볼들로 컨버팅할 수도 있다. 다시 말해서, 5 개의 상태들을 인코딩하는 7 개의 심볼들의 조합이
Figure pct00002
개의 퍼뮤테이션 (permutation) 들을 갖는다. 이에 따라, 7 개의 심볼들은 16 비트들의
Figure pct00003
개의 퍼뮤테이션들을 인코딩하는데 사용될 수도 있다.
도 4 는 원형 상태 트랜지션 다이어그램 (450) 에 기초하여 3-상 변조 데이터-인코딩 스킴을 채용하는 시그널링 (400) 의 예를 예시한다. 데이터-인코딩 스킴에 따르면, 3-상 신호는 2 개의 방향들로 회전할 수도 있고, 3 개의 와이어들 (310a, 310b 및 310c) 상에서 송신될 수도 있다. 3-상 신호의 3 개의 위상 회전된 버전들의 각각은 와이어들 (310a, 310b, 310c) 중 하나 상에서 독립적으로 구동된다. 3-상 신호의 3 개의 버전들의 각각은 3-상 신호의 다른 2 개의 버전들에 대해 120 도 위상 차이가 있다. 임의의 시점에서, 3 개의 와이어들 (310a, 310b, 310c) 은, 각각의 와이어 (310a, 310b, 310c) 가 다른 2 개의 와이어들 (310a, 310b 및 310c) 과 상이한 상태에 있도록, 상이한 시그널링 상태들 {+1, 0, -1} 에 있다. 예시된 인코딩 스킴은 또한 +1 및 -1 상태들로 액티브로 구동되는 2 개의 와이어들 (310a, 310b 및/또는 310c) 의 극성에서 정보를 인코딩하기 위해 제공된다. 극성이 408 에 묘사된 상태들의 시퀀스에 대해 표시된다.
C-PHY 인터페이스에서의 임의의 위상 상태에서, 와이어들 (310a, 310b, 310c) 중 정확히 2 개의 와이어는 그 위상 상태에 대하여 효과적으로 차동 신호인 신호를 반송하는 한편, 제 3 와이어 (310a, 310b 또는 310c) 는 비구동된다. 각각의 와이어 (310a, 310b, 310c) 에 대한 위상 상태는 와이어 (310a, 310b 또는 310c) 와 적어도 하나의 다른 와이어 (310a, 310b 및/또는 310c) 간의 전압 차이에 의해, 또는 와이어 (310a, 310b 또는 310c) 에서의 전류 흐름의 방향, 또는 전류 흐름의 결여 (lack) 에 의해 결정될 수도 있다. 상태 트랜지션 다이어그램 (450) 에 도시된 바와 같이, 3 개의 위상 상태들 (S1, S2 및 S3) 이 정의된다. 신호는 위상 상태 (S1) 로부터 위상 상태 (S2) 로, 위상 상태 (S2) 로부터 위상 상태 (S3) 로, 및/또는 위상 상태 (S3) 로부터 위상 상태 (S1) 로 시계방향으로 흐를 수도 있고, 신호는 위상 상태 (S1) 로부터 위상 상태 (S3) 로, 위상 상태 (S3) 로부터 위상 상태 (S2) 로, 및/또는 위상 상태 (S2) 로부터 위상 상태 (S1) 로 반시계방향으로 흐를 수도 있다. N 의 다른 값들에 대해, N 개의 상태들 간의 트랜지션들은 상태 트랜지션들 간의 원형 회전을 획득하기 위해 대응하는 상태 다이어그램에 따라 옵션으로 정의될 수도 있다.
3-상 인터페이스에서, 상태 트랜지션 (410) 에서의 시계방향 회전들 (S1 에서 S2), (S2 에서 S3), 및/또는 (S3 에서 S1) 은 로직 1 을 인코딩하는데 사용될 수도 있는 한편, 상태 트랜지션 (410) 에서의 반시계방향 회전들 (S1 에서 S3), (S3 에서 S2), 및/또는 (S2 에서 S1) 은 로직 0 을 인코딩하는데 사용될 수도 있다. 이에 따라, 비트는 신호가 시계방향으로 "회전중" 인지 또는 반시계방향으로 "회전중" 인지를 제어함으로써 각각의 트랜지션에서 인코딩될 수도 있다. 예를 들어, 로직 1 은 3 개의 와이어들 (310a, 310b, 310c) 이 위상 상태 (S1) 로부터 위상 상태 (S2) 로 트랜지션할 때 인코딩될 수도 있고, 로직 0 은 3 개의 와이어들 (310a, 310b, 310c) 이 위상 상태 (S1) 로부터 위상 상태 (S3) 로 트랜지션할 때 인코딩될 수도 있다. 묘사된 간단한 3-와이어 예에서, 회전의 방향은 3 개의 와이어들 (310a, 310b, 310c) 중 어느 것이 트랜지션 이전에 그리고 이후에 비구동되는지에 기초하여 용이하게 결정될 수도 있다.
정보가 또한 구동된 와이어들 (310a, 310b, 310c) 의 상태 (408) 의 극성 및/또는 극성의 변화들에서, 또는 2 개의 와이어들 (310a, 310b, 310c) 간의 전류 흐름의 방향 및/또는 전류 흐름의 방향의 변화들에서 인코딩될 수도 있다. 신호들 (402, 404, 및 406) 은, 3-와이어, 3-상 링크에서의 각각의 위상 상태에서 각각, 와이어들 (310a, 310b, 310c) 에 적용된 전압 레벨들을 예시한다. 언제라도, 제 1 와이어 (310a, 310b, 310c) 는 더 양의 전압 (예를 들어, +V) 에 커플링되고, 제 2 와이어 (310a, 310b, 310c) 는 더 음의 전압 (예를 들어, -V) 에 커플링되는 한편, 제 3 와이어 (310a, 310b, 310c) 는 회로-개방될 수도 있다. 이로써, 하나의 극성 인코딩 상태는 제 1 및 제 2 와이어들 (310a, 310b, 310c) 간의 전류 흐름 또는 제 1 및 제 2 와이어들 (310a, 310b, 310c) 의 전압 극성들에 의해 결정될 수도 있다. 일부 실시형태들에서, 데이터의 2 비트들 (412) 은 각각의 상태 트랜지션 (410) 에서 인코딩될 수도 있다. 디코더는 제 1 비트를 획득하기 위한 신호 위상 회전의 방향을 결정할 수도 있다. 제 2 비트는 신호들 (402, 404 및 406) 중 2 개의 신호 간의 극성 차이에 기초하여 결정될 수도 있다. 일부 인스턴스들에서, 제 2 비트는 와이어들 (310a, 310b, 310c) 의 쌍 상에서 송신된 차동 신호의 극성의 변화 또는 변화의 결여에 기초하여 결정될 수도 있다. 회전 방향을 결정하였던 디코더는 2 개의 액티브 와이어들 (310a, 310b 및/또는 310c) 간에 인가되는 전압의 극성 및 위상 상태, 또는 2 개의 액티브 와이어들 (310a, 310b 및/또는 310c) 을 통한 전류 흐름의 방향을 결정할 수 있다.
3-상 인터페이스에서, 데이터의 1 비트는 회전, 또는 3-와이어, 3-상 링크의 위상 변화에서 인코딩될 수도 있고, 추가적인 비트가 2 개의 구동된 와이어들의 극성 또는 극성의 변화들에서 인코딩될 수도 있다. 소정의 실시형태들은 현재 상태로부터 임의의 가능한 상태들로의 트랜지션을 허용함으로써 3-와이어, 3-상 인코딩 시스템의 각각의 트랜지션에서 2 초과의 비트를 인코딩한다. 3 개의 회전 위상들 및 각각의 위상에 대한 2 개의 극성들이 주어지면, 6 개의 상태들이 정의되어, 5 개의 상태들이 임의의 현재 상태로부터 이용가능하다. 이에 따라, 심볼 (트랜지션) 마다
Figure pct00004
비트가 있을 수도 있고 맵퍼는 16-비트 워드를 수락하고 그것을 7 개의 심볼들로 컨버팅할 수도 있다. 다시 말해서, 3-와이어, 3-상 C-PHY 링크는 입력 데이터의 16 비트 (318) 를 7 개의 심볼들 (312) 에 맵핑할 수도 있다.
도 5 는 3-와이어, 3-상 PHY 에서의 수신기 (500) 의 예를 예시한다. 비교기들 (502) 및 디코더 (504) 는 3 개의 송신 라인들 (512a, 512b 및 512c) 의 각각의 상태, 뿐만 아니라 이전 심볼 주기에서 송신된 상태와 비교한 3 개의 송신 라인들의 상태의 변화의 디지털 표현을 제공하도록 구성된다. 7 개의 연속적인 상태들은, 예를 들어, 레지스터들을 사용하여 구현될 수도 있는 선입 선출 (first-in-first-out; FIFO) 저장 디바이스 (510) 에서 버퍼링될 수도 있는 데이터의 16 비트를 획득하기 위해 디맵퍼 (508) 에 의해 프로세싱될 7 개의 심볼들의 세트를 생성하도록 직렬-병렬 컨버터들 (506) 에 의해 어셈블링된다.
도 2 및 도 3 을 다시 참조하여, 통신 링크 (220) 는 차동 인코딩 스킴 및 3-상 극성 인코딩 양자 모두를 지원하도록 구성될 수 있는 고속 디지털 인터페이스를 포함할 수도 있다. 물리 계층 드라이버들 (210 및 240) 은, 인터페이스 상에서 트랜지션 마다 다중 비트를 인코딩할 수 있는 3-상 극성 인코더들 및 디코더들, 및 와이어들 (310a, 310b 및 310c) 을 구동하기 위한 라인 드라이버들을 포함할 수도 있다. 라인 드라이버들은, 와이어들 (310a, 310b 또는 310c) 이 미정의된 상태 또는 외부 전기 컴포넌트들에 의해 정의되는 상태에 있는 고 임피던스 출력, 또는 양 또는 음 전압을 가질 수 있는 액티브 출력을 생성하는 증폭기들로 구성될 수도 있다. 이에 따라, 출력 드라이버들 (308) 은 데이터 및 출력 제어 (고 임피던스 모드 제어) 를 포함하는 한 쌍의 신호들 (316) 에 의해 수신하여, 3-상 극성 인코딩을 위해 3-상태 증폭기들이 사용되는 것을 가능하게 할 수도 있다.
C-PHY 트랜시버에 대한 시스템 아키텍처
도 6 은 C-PHY 인터페이스에 커플링될 수 있는 송신기 (600) 및 수신기 (620) 의 예를 예시하는 다이어그램이다.
송신기 (600) 에서, 16-비트 워드들 (602) 이 맵퍼 (604) 에 입력으로서 수신된다. 맵퍼 (604) 는 3-와이어 링크 (612) 상으로 순차적으로 송신되도록 16-비트 워드들 (602) 의 각각을 심볼들의 세트 (614) 에서의 7 개의 심볼들로 컨버팅한다. 심볼들의 세트 (614) 는 7 개의 3-비트 심볼들로서 편성된 21 비트의 그룹으로서 제공될 수도 있다. 심볼들의 세트 (614) 는, 예를 들어, Sync 심볼들 또는 다른 제어 심볼들을 삽입하고, 및/또는 맵퍼 (604) 로부터 수신된 소정의 심볼들의 세트들 (614) 을 심볼들의 대체 세트로 선택적으로 교체함으로써 실행-길이 (run-length) 를 제한하도록 구성될 수도 있는 심볼 삽입 모듈 (606) 에 제공될 수도 있다. 이 심볼 삽입 모듈 (606) 은 심볼 송신 간격들의 시퀀스 (634) 의 각각에서 3-와이어 링크 (612) 에서의 3 개의 와이어들 (A, B 및 C 로 라벨링됨) 의 상태를 정의하는, 심볼 인코더 (610) 에 대한 3-비트 심볼들의 시간-시퀀스 (618) 를 생성하는 병렬-직렬 컨버터 (608) 에 비트들의 선택적으로 수정된 그룹 (616) 을 제공한다.
C-PHY 인터페이스에서, 심볼들의 최대 12,589 개의 시퀀스들이 맵퍼 (604) 에 의해 미사용될 수도 있고 이들 미사용된 것들은 교체들 및 삽입들을 위해 심볼 삽입 모듈 (606) 에 이용가능할 수 있다. 미사용된 심볼들의 시퀀스들은 맵퍼 (604) 가 16 비트 워드들 (602) 의 65,536 개의 가능한 값들을 3 개의 와이어들에 대한 위상 및 극성의 시퀀스들의 78,125 중 65,536 개의 가능한 퍼뮤테이션들에 맵핑하기 때문에 이용가능하다. 이들 미사용된 심볼들의 시퀀스들의 일부는 커맨드 및 제어 목적들, 동기화 시퀀스들, 및 다른 목적들을 위해 예비될 수도 있다.
수신기 (620) 에서, 심볼 디코더 (622) 는 심볼 송신 간격들의 시퀀스 (634) 동안 3-와이어 링크 (612) 에서의 3 개의 와이어들의 시그널링 상태들 및 시그널링 상태의 트랜지션들에 기초하여 수신기 클록을 생성하고 7 개의 원시 3-비트 심볼들의 시퀀스 (640) 를 디코딩하기 위해 협력할 수도 있는 일 세트의 차동 수신기들 (636) 및 CDR (638) 을 포함할 수도 있다. 수신기 (620) 는 7 개의 원시 심볼들의 시퀀스 (640) 를 7 개의 3-비트 심볼들로서 편성된 21 개의 비트들의 그룹 (642) 으로 컨버팅하는 직렬-병렬 컨버터 (624) 를 포함할 수도 있다. 심볼 추출 모듈 (626) 이 21 비트들의 세트 (642) 를 수신하고 송신기 (600) 에서의 심볼 삽입 모듈 (606) 에 의해 수행되었을 수도 있는 심볼 교체들을 반전시킨 후 수정된 21 비트들의 세트 (644) 를 생성하도록 적응 또는 구성될 수도 있다. 심볼 추출 모듈 (626) 은 맵퍼 (604) 에 의해 사용되지 않는 심볼들의 12,589 개의 시퀀스들에서의 심볼들의 시퀀스들을 식별하고 필요에 따라 미리정의된 추출 또는 교체를 수행하도록 구성될 수도 있다. 디맵퍼 (628) 는 수정된 21 비트들의 세트 (644) 에서의 7 개의 심볼들을 수신기 (620) 의 출력으로서 제공될 수도 있는 16-비트 워드 (630) 로 컨버팅할 수도 있다. 수신기 (620) 에 의해 검출된 각각의 심볼은, 5 개의 가능한 값들: 000, 001, 010, 011 및 100 중 하나를 갖는, 3-비트 원시 심볼 값을 사용하여 표현될 수 있다. 원시 심볼 값의 값은: {Same_Phase, delta_Phase, delta_Polarity} 에 의해 정의된다. 3 비트들의 각각은 이전 와이어 상태로부터 현재 와이어 상태로의 변화 또는 변화 없음을 표현한다.
심볼 삽입 모듈 (606) 및 심볼 추출 모듈 (626) 은 맵퍼 (604) 및 디맵퍼 (628) 에 각각 통합될 수도 있고, 및/또는 별개의 컴포넌트들로서 제공될 수도 있다. 송신기 (600) 에서의 심볼 삽입 모듈 (606) 은 과잉 심볼들을 사용하여 다양한 교체들 또는 삽입들을 수행하도록 채용될 수도 있다.
C-PHY 인터페이스에서의 신호 트랜지션들
도 7 은 3-와이어, 3-상 디코더에서의 트랜지션 인코딩 및 클록 생성의 소정의 양태들을 예시하는 다이어그램 (700) 이다. 일 세트의 차동 수신기들 (702a, 702b 및 702c) 은 3 개의 와이어들 (310a, 310b 및 310c) 의 각각의 시그널링 상태를 3 개의 와이어들 (310a, 310b 및 310c) 중 다른 와이어들의 시그널링 상태들과 비교한다. 묘사된 예에서, 제 1 차동 수신기 (702a) 는 와이어들 (310a 및 310b) 의 시그널링 상태들을 비교하고 A-B 출력을 생성하고, 제 2 차동 수신기 (702b) 는 와이어들 (310b 및 310c) 의 상태들을 비교하고 B-C 출력을 생성하고, 제 3 차동 수신기 (702c) 는 와이어들 (310a 및 310c) 의 상태들을 비교하고 C-A 출력을 생성한다. 본 명세서에서 설명된 바와 같이, 와이어들 (310a, 310b 및 310c) 중 적어도 하나의 시그널링 상태는 각각의 심볼 경계에서 변화한다. 이에 따라, 상태 변화 검출 회로 (704) 는, 차동 수신기들 (702a, 702b 및 702c) 중 적어도 하나의 출력이 각각의 심볼 간격의 말단 (end) 에서 변화할 때 시그널링 상태의 변화의 발생을 검출할 수 있다.
소정의 시그널링 상태 트랜지션들은 단일 차동 수신기 (702a, 702b 또는 702c) 에 의해 검출가능할 수도 있는 한편, 다른 시그널링 상태 트랜지션들은 차동 수신기들 (702a, 702b 및/또는 702c) 중 2 개 이상의 차동 수신기들에 의해 검출될 수도 있다. 하나의 예에서, 2 개의 와이어들의 시그널링 상태들 또는 상대적인 상태들은 심볼 트랜지션 이후에 변화되지 않을 수도 있고, 대응하는 차동 수신기 (702a, 702b 또는 702c) 의 출력은 또한 심볼 트랜지션 이후에 변화되지 않을 수도 있다. 다른 예에서, 와이어들 (310a, 310b 및/또는 310c) 의 쌍에서의 양자의 와이어들은 제 1 시간 간격에서 동일한 제 1 상태에 있을 수도 있고, 양자의 와이어들은 제 2 시간 간격에서 동일한 제 2 상태에 있을 수도 있어, 대응하는 차동 수신기 (702a, 702b 또는 702c) 의 출력은 위상 트랜지션 이후에 변화되지 않을 수도 있다. 이에 따라, 클록 생성 회로 (706) 는 시그널링 상태 트랜지션이 언제 발생하였는지를 결정하기 위하여 모든 차동 수신기들 (702a, 702b 및 702c) 의 출력들을 모니터링하는 시그널링 상태 변화 검출 회로 (704) 를 포함할 수도 있다. 클록 생성 회로는 검출된 시그널링 상태 트랜지션들에 기초하여 수신 클록 (708) 를 생성할 수도 있다.
상이한 와이어들 (310a, 310b 및/또는 310c) 상의 시그널링 상태들의 변화들이 상이한 시간들에 검출되거나 또는 발생할 수도 있다. 시그널링 상태 변화들의 검출의 타이밍은 발생한 시그널링 상태 변화의 타입에 따라 가변할 수도 있다. 이러한 가변성의 결과는 도 7 에서 제공된 타이밍 다이어그램 (750) 에 예시된다. 시그널링 상태 변화 검출 회로 (704) 및/또는 차동 수신기들 (702a, 702b 및 702c) 의 출력들을 표현하는 마커들 (722, 724 및 726) 은 오직 예시의 명료함을 위해 상이한 높이들을 할당받는다. 마커들 (722, 724 및 726) 의 상대적인 높이들은 클록 생성 또는 데이터 디코딩을 위해 사용되는 전압 또는 전류 레벨들, 극성 또는 가중 값들에 특정 관계를 갖지 않는다. 타이밍 다이어그램 (750) 은 3 개의 와이어들 (310a, 310b 및 310c) 상에서 송신된 심볼들과 연관된 트랜지션들의 타이밍의 영향을 예시한다. 타이밍 다이어그램 (750) 에서, 일부 심볼들 간의 트랜지션들은, 심볼들이 신뢰가능하게 캡처될 수도 있는 가변 캡처 윈도우들 (730a, 730b, 730c, 730d, 730e, 730f 및/또는 730g) (집합적으로, 심볼 캡처 윈도우들 (730)) 을 초래할 수도 있다. 검출된 시그널링 상태 변화들의 수 및 그들의 상대적인 타이밍은 클록 신호 (708) 에 대한 지터를 초래할 수 있다.
심볼 윈도우들 (730) 의 사이즈들의 가변성, 및 연관된 지터는, 도 8 에 묘사된 간단한 예 (800) 에 예시된 바와 같이, 와이어들 (310a, 310b 및 310c) 의 전기 특성들에 의해 부분적으로 야기될 수도 있다. 트랜지션 시간들은, 예를 들어, 신호 상승 또는 하강 시간들의 가변성 및/또는 전압 및 전류 소스들의 안정성 또는 불안정성 및 동작 온도에 관련된 제작 프로세스, 전압 및 온도 (PVT) 변동들에 의해 야기된 검출 회로들의 가변성에 의해 영향을 받을 수도 있다. 트랜지션 시간들의 큰 가변성은 3-상 시그널링에서 상이한 전압 또는 전류 레벨들의 존재에 기인할 수도 있다. "전압 레벨" 예가 단일 와이어 (310a, 310b 또는 310c) 에서의 트랜지션 시간들을 예시하는 도 8 에 묘사된다. 제 1 심볼 (Sym n ) (802) 은 시간 (822) 에서 끝나는 심볼 간격에서 송신될 수도 있고, 제 2 심볼 (Sym n+1 ) 은 시간 (824) 에서 끝나는 심볼 간격에서 송신될 수도 있고, 제 3 심볼 (Sym n+2 ) (806) 은 제 4 심볼 (Sym n+3 ) (808) 의 송신이 시작될 때, 시간 (826) 에서 끝나는 심볼 간격에서 송신될 수도 있다. 제 1 심볼 (802) 에 의해 결정된 상태로부터 제 2 심볼 (804) 에 대응하는 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (818 및/또는 820) 에 도달하는데 걸리는 시간에 기인하는 제 1 지연 (812) 이후에 검출될 수도 있다. 임계 전압들은 와이어 (310a, 310b 또는 310c) 의 상태를 결정하는데 사용될 수도 있다. 제 2 심볼 (804) 에 의해 결정된 상태로부터 제 3 심볼 (806) 에 대한 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압들 (818 및/또는 820) 중 하나에 도달하는데 걸리는 시간에 기인하는 제 2 지연 (814) 이후에 검출될 수도 있다. 제 3 심볼 (806) 에 의해 결정된 상태로부터 제 4 심볼 (808) 에 대한 상태로의 트랜지션은 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (818 및/또는 820) 에 도달하는데 걸리는 시간에 기인하는 제 3 지연 (816) 이후에 검출될 수도 있다.
묘사된 바와 같이, 제 3 지연 (816) 은 제 1 지연 (812) 보다 짧을 수도 있고, 제 2 지연 (814) 은 가장 긴 지연일 수도 있다. 제 2 지연 (814) 은 상태 0 이 비구동 상태이기 때문에 가장 긴 지연일 수도 있고, 와이어 (310a, 310b 또는 310c) 에서의 전압은 임계치 (820) 쪽으로 느리게 드리프트할 수도 있는 반면, 제 1 지연 (812) 및 제 3 지연 (816) 은 와이어 (310a, 310b 또는 310c) 가 각각 -1 및 +1 상태들로 액티브로 풀링되는 트랜지션들과 연관된다.
도 9 는 3-와이어, 3-상 통신 링크의 하나의 예에서 6 개의 가능한 위상-극성 상태들 및 30 개의 가능한 상태 트랜지션들을 예시하는 상태 다이어그램 (900) 이다. 상태 다이어그램 (900) 에서의 가능한 상태들 (902, 904, 906, 912, 914 및 916) 은 도 4 의 다이어그램 (450) 에 도시된 상태들을 포함한다. 예의 상태 엘리먼트 (920) 에 도시된 바와 같이, 상태 다이어그램 (900) 에서의 각각의 상태 (902, 904, 906, 912, 914 및 916) 는 (와이어들 (310a, 310b 및 310c) 상에서 각각 송신된) 신호들 (A, B 및 C) 의 시그널링 상태를 도시하는 필드 (922), 및 (도 7 에 묘사된 차동 수신기들 (702a, 702b, 702c) 과 같은) 차동 수신기들에 의한 와이어 전압들의 감산의 결과를 도시하는 필드 (924) 를 포함한다. 예를 들어, 상태 (902) (+x) 에서, 와이어 A = +1, 와이어 B = -1 및 와이어 C = 0 이어서, 차동 수신기 (702a) 의 출력 (A-B) = +2, 차동 수신기 (702b) 의 출력 (B-C) = -1, 및 차동 수신기 (702c) 의 출력 (C-A) = +1 을 산출한다. 상태 다이어그램에 의해 예시된 바와 같이, 상태 변화 검출 회로 (704) 에 의해 취해진 트랜지션 결정들은 차동 수신기들 (702a, 702b 및 702c) 에 의해 생성된 5 개의 가능한 레벨들에 기초하며, 그 레벨들은 -2, -1, 0, +1 및 +2 전압 상태들을 포함한다.
도 10 은 다중 심볼 간격들 (1002) 의 오버레이로부터 생성될 수도 있는 아이 다이어그램 (1000) 을 예시한다. 신호 트랜지션 영역 (1004) 은 가변 신호 상승 시간들이 신뢰가능한 디코딩을 방지하는 불확실성의 시간 주기를 표현한다. 상태 정보는 심볼이 안정되고 신뢰가능하게 수신 및 디코딩될 수 있는 시간 주기를 표현하는 "아이 오프닝 (eye opening)" (1006) 에서 결정될 수도 있다. 하나의 예에서, 아이 오프닝 (1006) 은 신호 트랜지션 영역 (1004) 의 말단 (즉, 마지막 제로 크로싱 (1012)) 에서 시작하고 심볼 간격 (1002) 의 경계 (1014) 에서 끝나도록 결정될 수도 있다. 도 10 에 묘사된 예에서, 아이 오프닝 (1006) 은, 신호 트랜지션 영역 (1004) 의 말단 (1112) 을 마크하는 마지막 제로 크로싱 (1012) 에서 시작하고, 와이어들 (310a, 310b, 310c) 의 시그널링 상태 및/또는 3 개의 차동 수신기들 (702a, 702b 및 702c) 의 출력들이 다음 심볼을 반영하기 위해 변화하기 시작했을 때, 아이 오프닝 (1006) 의 클로징 에지 (1016) 에서 끝나도록 결정될 수도 있다.
N-상 인코딩을 위해 구성된 통신 링크 (220) 의 최대 속도는, 수신된 신호 아이 오프닝 (1006) 과 비교할 때 신호 트랜지션 영역 (1004) 의 지속시간에 의해 제한될 수도 있다. 심볼 간격 (1002) 에 대한 최소 주기는, 예를 들어, 도 5 에 예시된 수신기 (500) 에서, 또는 도 7 의 클록 생성 회로 (706) 에서 CDR 회로 (514) 와 연관된 엄격해진 설계 마진들에 의해 제약될 수도 있다. 상이한 시그널링 상태 트랜지션들은 2 개 이상의 와이어들 (310a, 310b 및/또는 310c) 에 대응하는 신호 트랜지션 시간들에서의 상이한 변동들과 연관될 수도 있어, 이로써 수신 디바이스에서의 차동 수신기들 (702a, 702b 및 702c) 의 출력들이, 차동 수신기들 (702a, 702b 및 702c) 에 대한 입력들이 변화하기 시작하는 심볼 경계 (1008) 에 대하여 상이한 시간들 및/또는 레이트들로 변화하게 한다. 수신 디바이스에서의 다중 차동 수신기들 (702a, 702b 및 702c) 의 출력들 간의 수신된 신호 트랜지션 시간들에서의 큰 잠재적인 차이들은 통상적으로 CDR 회로 (514) 에서 지연 엘리먼트의 구현을 요구한다. 지연 엘리먼트는 트랜지션 영역 (1004) 의 지속기간을 초과하는 최소 지연 주기를 가질 수도 있다. 하나의 예에서, 지연 엘리먼트는 도 7 에 도시된 상태 변화 검출 회로 (704) 및/또는 클록 생성 회로 (706) 중 하나 이상에서 제공될 수도 있다. 이 지연 엘리먼트에 의해 제공된 최대 지연 시간은 아이 오프닝 (1006) 의 클로징 에지 (1016) 를 넘어서 연장하지는 않을 수도 있다. 일부 인스턴스들에서, 지연 엘리먼트에 의해 제공된 최대 지연 시간은 심볼 경계 (1014) 에서 다음 심볼 간격의 시작을 넘어서 연장하지는 않을 수도 있다. 더 빠른 데이터 레이트들에서, 아이 오프닝 (1006) 은 심볼 간격 (1002) 과 비교하여 작을 수 있고, 심볼 트랜지션 가변성의 영향은 최대 심볼 송신 레이트의 결정적인 요인일 수도 있다.
임의의 단일 트랜지션의 지속기간은 신호 트랜지션 영역 (
Figure pct00005
) (1004) 의 전체 범위에 걸칠 가능성이 없는데, 왜냐하면 최소 가능한 신호 트랜지션 시간과 최대 가능한 트랜지션 시간이 단일 심볼 트랜지션 동안 발생할 가능성이 없기 때문이다. 하나의 예에서, 신호 트랜지션 영역 (1004) 은, 모든 가능한 심볼 트랜지션들에 대해, 차동 수신기 (702a, 702b 또는 702c) 의 출력에서 검출된 처음 제로 크로싱 (1010) 의 시간 및 차동 수신기 (702a, 702b 또는 702c) 의 출력에서 검출된 마지막 제로 크로싱 (1012) 의 시간에 의해 경계를 이룰 수도 있다. 차동 수신기 (702a, 702b 및 702c) 의 출력들에서 관측된 트랜지션 시간들은 커넥터들 및/또는 와이어들 (310a, 310b 또는 310c) 이 커넥터 및/또는 와이어 (310a, 310b 또는 310c) 의 드라이버 (308) 로의 입력 이후 다음 상태에 도달하는데 걸리는 시간들에 대응할 수도 있다. 가장 긴 가능한 트랜지션 시간은 커넥터 및/또는 와이어 (310a, 310b 또는 310c) 의 특성들 및 수반되는 상태 트랜지션의 타입에 기초하여 결정될 수도 있다. 하나의 예에서, 가장 긴 가능한 트랜지션 시간은 하나 이상의 신호들의 상승 또는 하강 시간에 의해 결정될 수도 있다. 상승 및 하강 시간들은 원래 및/또는 최종 상태들의 본성 및 전압 레벨들에 의해 결정될 수도 있다. 통상적으로, 가장 긴 가능한 트랜지션 시간은 액티브 구동 상태와 비구동 상태 간의 트랜지션에 대응한다.
트랜지션 영역 (1004) 에 대한
Figure pct00006
의 높은 값은 CDR 회로 (514) 또는 클록 생성 회로 (706) 와 연관된 증가된 설계 어려움을 초래할 수 있다. 예를 들어, 클록 생성 회로 (706) 는 3 개의 차동 수신기 (702a, 702b 및 702c) 의 출력들의 처음 제로 크로싱에 의해 트리거되는 지연 엘리먼트 또는 타이머를 채용할 수도 있다. 모든 3 개의 차동 수신기들 (702a, 702b 및 702c) 의 출력들의 상태는, 차동 수신기들 (702a, 702b 및 702c) 모두가 아이 오프닝 (1006) 에 의해 정의될 수도 있는 그들의 최종 상태에 도달할 때까지 안전하게 샘플링되지 않을 수도 있다. 이에 따라, 타이머는 바람직하게는, 시간 클록 생성 회로 (706) 가 3 개의 차동 수신기들 (702a, 702b 및 702c) 의 출력들을 샘플링하는데 사용되는 클록 에지를 출력할 수도 있는 트랜지션 영역 (1004) 의 말단을 마크하는 마지막 제로 크로싱 (1012) 직후에 만료할 수도 있다.
일부 디바이스들에서, CDR 회로 (514) 에서의 지연 엘리먼트들은 제작 프로세스, 회로 공급 전압, 및 다이 온도의 변동들 (PVT 변동) 에 의해 고통을 받을 수 있고, 상당히 가변하는 지연들을 생성할 수도 있다. 이러한 시스템들에서, CDR 회로 (514) 의 공칭 동작 조건은 일반적으로, 최악의 경우의 PVT 영향들 하에서라도, 트랜지션 영역 (1004) 의 말단을 마크하는 마지막 제로 크로싱 (1012) 이후에 그리고 (즉, 아이 오프닝 (1006) 의 클로징 에지 (1016) 인) 다음 심볼의 트랜지션 영역의 시작 이전에 클록 에지가 발생하는 것을 보장하기 위하여 아이 오프닝 (1006) 의 중간 어딘가에서 클록 에지를 생성하도록 설계에 의해 설정된다. 트랜지션 영역 (1004) 이 아이 오프닝 (1006) 과 비교하여 크면, 아이 오프닝 (1006) 내의 클록 에지를 보장하는 CDR 회로 (514) 를 설계하는데 있어 어려움이 발생할 수 있다. 예를 들어, 통상의 지연 엘리먼트는 모든 PVT 조건들에서 2 의 팩터만큼 변화하는 지연 값을 생성할 수도 있고, 아이 오프닝 (1006) 은 비-조정가능한 지연 값이 선택될 수 있도록 하기 위하여 트랜지션 영역 (1004) 보다 커야 한다.
일부 인스턴스들에서, 트랜지션 영역 (1004) 의 지속기간은 송신 회로 (도 3 참조) 의 하나 이상의 드라이버들 (308) 로의 입력의 변화와, 수신기 (도 5 참조) 에서의 비교기들 (502) 의 출력들에서 관측 또는 예상된 대응하는 트랜지션들 간의 최대 타이밍에 기초하여 계산될 수도 있다. 다른 인스턴스들에서, 수정된 트랜지션 영역은, 모든 심볼 트랜지션들에 대해, 비교기들 (502) 중 하나의 출력에서의 제 1 트랜지션의 시간 (1018) 과 다른 비교기들 (502) 의 출력에서의 마지막 트랜지션에서 측정 또는 관측된 심볼 경계 (1014) 간의 최대 차이로서 비교기들 (502) 의 출력들에서 결정될 수도 있다.
C-PHY 인터페이스에서의 신호 트랜지션 조정
본 명세서에서 개시된 소정의 양태들에 따르면, 인코더는 트랜지션 영역 (1004) 에 의해 점유된 심볼 간격 (1002) 의 비율을 최소화하고 아이 오프닝 (1006) 에 의해 점유된 심볼 간격 (1002) 의 비율을 최대화하도록 적응될 수도 있다. 하나의 예에서, 하나 이상의 와이어들 (310a, 310b 및/또는 310c) (도 3 참조) 상의 시그널링 상태 트랜지션들의 타이밍은 소정의 심볼 트랜지션들에 대한 심볼 경계 (1008, 1014) 의 발생 시에 또는 그 이전에 수정될 수도 있다. 인코더 (예를 들어, 도 3 의 인코더 (306) 참조) 에서, 연속적인 심볼들에서의 특정 N-상 심볼 상태들 (902, 904, 906, 912, 914 또는 916) 의 사전 지식 (선험적 상태 지식) 은, 하나 이상의 N-상 드라이버 출력들의 타이밍이 연속적인 심볼들 간의 심볼 경계 (1008, 1014) 에서 조정되어야 하는지 여부를 예측하는데 사용될 수도 있다. 조정의 방식은 또한, 선험적 상태 지식에 기초하여 결정될 수도 있다. 조정들은 드라이버들 (308) 중 하나 이상의 출력에 영향을 미칠 수도 있고, 조정들은 심볼 단위 기반으로 행해질 수도 있다. 조정들은 소정의 드라이버 출력 신호 트랜지션들을 전진 또는 지연시키는 것을 포함할 수도 있다. 일부 인스턴스들에서, 조정들은 어느 트랜지션이 발생할지의 사전 지식 (선험적 트랜지션 지식) 에 기초하여, 소정의 타입들의 심볼 트랜지션들에서 소정의 드라이버 출력들에 대한 프리-엠퍼시스 (pre-emphasis) 의 선택적 추가를 포함할 수도 있다. 그 결과, 수신 디바이스에서의 차동 수신기들 (702a, 702b 및 702c) 에 의해 출력된 에지들은 시간에 대하여 더 정확하게 정렬될 수도 있다.
선험적 트랜지션 지식은 상태 트랜지션들에 대한 커넥터들의 응답을 특징으로 하는 정보를 포함할 수도 있다. 이러한 정보는 커넥터들 및/또는 와이어들, 드라이버들 및 수신기들의 모델들로부터, 그리고 그 모델들을 사용하여 다양한 타입들의 트랜지션들에 대한 통신 링크들의 응답을 시뮬레이션하는 것에 의해 획득될 수도 있다. 일부 인스턴스들에서, 선험적 트랜지션 지식은 물리적 디바이스들 및 통신 링크들에 대해 수행된 테스트들로부터 획득된 경험적 정보를 포함할 수도 있다. 선험적 트랜지션 지식은 시뮬레이션된 결과와 측정된 결과 간의 차이들에 기초하여 캘리브레이팅될 수도 있다. 선험적 트랜지션 지식은 시스템 동작 동안 수신기에 의해 제공된 경험적 정보를 포함할 수도 있다.
소정의 양태들에 따르면, 차동 수신기들 (702a, 702b 및 702c) 의 출력들에서의 및/또는 와이어들 (310a, 310b 및 310c) 상의 트랜지션 시간들 간의 더 작은 변동들은, 트랜지션 영역 (1004) 에 의해 점유된 심볼 간격 (1002) 의 비율이 최소화될 때 상당히 더 큰 설계 마진들을 제공할 수도 있다. 하나의 예에서, CDR 회로 (514) 는 그 CDR 회로 (514) 에서 사용되는 하나 이상의 지연 엘리먼트들에서 제공된 더 큰 타이밍 허용오차들로부터 이익을 얻을 수도 있다. 다른 예에서, C-PHY 인터페이스의 최대 심볼 송신 레이트는 트랜지션 영역 (1004) 에 의해 점유된 심볼 간격 (1002) 의 비율이 최소화되고 아이 오프닝 (1006) 에 의해 점유된 심볼 간격 (1002) 의 비율이 최대화될 때 상당히 증가될 수도 있다.
본 명세서에서 설명된 소정의 양태들에 따르면, 트랜지션 영역 (1004) 의 변동들은, 각각의 심볼 트랜지션을 개별적으로 고려하는 것에 의해, 및 하나 이상의 신호 와이어 상의 트랜지션을 선택적으로 지연 또는 전진시키는 것에 의해 송신기에서 상당히 감소될 수도 있다. 일부 인스턴스들에서, 송신기에서의 검출 회로부는 심볼 트랜지션과 연관된 예상된 또는 계산된 트랜지션 시간들을 결정하도록 적응될 수도 있다. 하나의 예에서, 송신기는 트랜지션 영역 (1004) 의 지속기간이 미리결정된 최대 또는 임계 주기를 초과하는지 여부를 결정할 수도 있다. 트랜지션 영역 (1004) 이 최대 또는 임계 주기를 초과한다면, 하나 이상의 신호들은 심볼 트랜지션을 위해 수신기에서 트랜지션 영역 (1004) 을 감소시키도록 전진 또는 지연될 수도 있다. 최대 또는 임계 주기는 특정된 또는 원하는 심볼 송신 레이트, CDR 회로 (514) 의 허용오차들 및/또는 송신기 또는 수신기에서 다른 회로들에 대해 정의된 허용오차들에 기초하여 결정될 수도 있다. 최대 또는 임계 주기는 아이 오프닝 (1006) 의 특정된 또는 원하는 최소 지속기간을 획득하도록 정의될 수도 있다. 최대 또는 임계 주기는 송신된 신호들로부터 유도된 수신 클록에서의 지터를 최소화하도록 정의될 수도 있다. 트랜지션 영역 (1004) 은 하나 이상의 신호들이 전진 또는 지연될 수도 있을 때 상당히 감소될 수도 있다.
도 11 은 본 명세서에서 개시된 소정의 양태들에 따른 신호 트랜지션 조정을 예시하는 다이어그램 (1100) 이다. 다이어그램 (1100) 은 C-PHY 인터페이스 위로 송신된 신호들에 관한 것이지만, 도 11 에 관하여 설명된 개념들은 트랜지션-인코딩 인터페이스들을 포함한, 다른 멀티-와이어 통신 인터페이스들에 동일하게 적용된다. 송신기는 C-PHY 인터페이스 위로 송신될 3 개의 신호들 (IN-A 입력 신호 (1102), IN-B 입력 신호 (1104), IN-C 입력 신호 (1106)) 중 하나 이상을 전진 또는 지연시키도록 구성될 수도 있는 트랜지션 조정 회로 또는 모듈 (1110) 을 포함할 수도 있다. 트랜지션 조정 회로 또는 모듈 (1110) 은 수신 디바이스에 의해 인지된 바와 같이 트랜지션 영역을 최소화하는 송신에 대한 신호들의 세트 (OUT-A 출력 신호 (1132), OUT-B 출력 신호 (1134) 및 OUT-C 출력 신호 (1136)) 를 생성한다. 하나의 예에서, 트랜지션 조정 회로 또는 모듈 (1110) 은 C-PHY 디코더에서의 트랜지션 검출 신호들 (710) 이 시간적으로 정렬되게 하기 위해 (도 7 참조) 하나 이상의 입력 신호 (1102, 1104 및/또는 1106) 를 전진 또는 지연시킬 수도 있다. 신호들 (710) 은, 신호들 (710) 에서의 대응하는 에지들이 미리정의된 최대 또는 임계 정렬 주기 내에 발생할 때 시간적으로 정렬될 수도 있다. 최대 또는 임계 정렬 주기는 특정된 또는 원하는 심볼 송신 레이트, CDR 회로 (514) 의 허용오차들 및/또는 수신기에서의 다른 회로들에 대해 정의된 허용오차들에 기초하여 결정될 수도 있다. 최대 또는 임계 정렬 주기는 아이 오프닝 (1006) 의 특정된 또는 원하는 최소 지속기간을 획득하도록 정의될 수도 있다. 최대 또는 임계 정렬 주기는 수신 클록 (516) 에서 지터를 최소화하도록 정의될 수도 있다.
입력 타이밍 다이어그램 (1120) 에 도시된 바와 같이, 트랜지션 조정 회로 또는 모듈 (1110) 에 입력된 입력 신호들 (1102, 1104, 1106) 은 2 개의 심볼 간격들 (1140 및 1142) 간에 트랜지션 (1108) 을 포함한다. 제 1 심볼 간격 (1140) 에서, 입력 신호들 (1102, 1104, 1106) 은 {+1, -1, 0} 의 값을 갖는 "+x" 심볼 (902) 에 대응한다 (도 9 참조). 제 2 심볼 간격 (1142) 에서, 입력 신호들 (1102, 1104, 1106) 은 {-1, 0, +1} 의 값을 갖는 "+z" 심볼 (906) 에 대응한다. 오직 예시적인 목적들을 위해, "0" 시그널링 상태와 "+1" 또는 "-1" 시그널링 상태들 간의 트랜지션들이 가장 빠른 트랜지션들인 한편, "0" 시그널링 상태에 대한 트랜지션은 가장 느린 트랜지션인 것이 가정될 수도 있다. 일부 인스턴스들에서, 시그널링 상태들 간의 트랜지션들의 상대 속도들은 상이할 수도 있다.
트랜지션 조정 회로 또는 모듈 (1110) 은 수신기가 단축된 트랜지션 간격 내의 트랜지션들을 생성하도록 가장 느리게 트랜지션하는 신호를 전진시키고 및/또는 가장 빨리 트랜지션하는 신호를 지연시키도록 구성될 수도 있다. 이 예에서, 트랜지션 조정 회로 또는 모듈 (1110) 은, 제 3 신호 (1106) 상의 트랜지션이 수신기에서 가장 빠른 트랜지션 검출을 생성할 가능성이 있고, 제 2 입력 신호 (1104) 상의 트랜지션이 수신기에서 가장 느린 트랜지션 검출을 생성할 가능성이 있고, 제 1 입력 신호 (1102) 상의 트랜지션이 수신기에서 가장 빠르지도 않고 가장 느리지도 않은 트랜지션 검출을 생성할 가능성이 있다고 결정할 수도 있다. 하나의 예에서, 트랜지션 조정 회로 또는 모듈 (1110) 은, 3 개의 입력 신호들 (1102, 1104, 1106) 의 버전들이고, 제 2 출력 신호 (1134) 에서의 트랜지션이 심볼 트랜지션 (1128) 에 대하여 전진되고 제 3 신호가 심볼 트랜지션 (1128) 에 대하여 지연되는 출력 신호들 (1132, 1134, 1136) 을 제공할 수도 있다. 일부 인스턴스들에서, 제 1 출력 신호 (1132) 에서의 트랜지션은 모든 출력 신호들 (1132, 1134, 1136) 상의 트랜지션들이 심볼 클록의 에지에 밀접하게 정렬되는 트랜지션 검출들을 수신기에서 생성하도록 지연 또는 전진될 수도 있다. 다른 인스턴스들에서, 3 개의 출력 신호들 (1132, 1134, 및/또는 1136) 중 적어도 하나는 지연되지도 전진되지도 않으며, 다른 출력 신호들 (1132, 1134, 1136) 에 적용된 전진들 또는 지연들은 수신기에 의해 사용되는 심볼 클록과 관계 없이 트랜지션 검출들의 정렬을 획득하도록 계산된다. 다시 말해서, 수신기에 송신된 출력 신호들 (1132, 1134, 1136) 중 하나 이상은 다른 출력 신호들 (1132, 1134, 1136) 에 대하여 전진 및/또는 지연될 수도 있어, 에지들이 차동 수신기들 (702a, 702b 및 702c) 에 의해 수신될 때 더 밀접하게 정렬될 수도 있다. 소정의 출력들을 전진 또는 지체시키기 위한 결정은 심볼 트랜지션 이전 및 이후에 원시 심볼 값들의 상태들에 기초할 수도 있다.
다중 론치 클록을 사용한 신호 트랜지션 조정
도 12 는 론치 심볼들에 대해 다중 클록 위상들을 사용하고 C-PHY 인터페이스에서 송신기 인코딩 지터를 감소시킬 수도 있는 회로 (1200) 의 소정의 양태들을 예시하는 블록 다이어그램이다. 회로 (1200) 는 도 11 에 예시된 트랜지션 조정 회로 또는 모듈 (1110) 에 대응할 수도 있다. 회로 (1200) 는 다음 심볼 송신 간격에서 송신될 3-상 입력 신호들 (1112, 1114, 1116) 을 수신할 수도 있다. 3-상 입력 신호들 (1112, 1114, 1116) 은 3-상 출력 신호들 (1122, 1124, 1126) 을 제공하는 플립-플롭들 (1202, 1204, 1206) 을 통하여 클록킹될 때 송신될 수도 있다. 이 예에서, 3-상 입력 신호들 (1112, 1114, 1116) 은 현재 데이터로 지칭될 수도 있는 제 1 데이터 값들로 표현될 수도 있다. 플립-플롭들 (1202, 1204, 1206) 의 출력은 이전 데이터 또는 지연된 데이터로 지칭될 수도 있는 제 2 데이터 값들로 표현될 수도 있다. 각각의 플립-플롭 (1202, 1204, 1206) 은 결정 로직 (1208) 에 의해 제공된 상이한 론치 신호 (1214, 1216, 1218) 에 의해 클록킹된다. 론치 신호들 (1214, 1216, 1218) 의 각각에서의 에지들은 다른 론치 신호들 (1214, 1216, 1218) 에서의 에지들에 대하여 선택적으로 전진 또는 지연될 수도 있어, 수신기에서 3-상 출력 신호들 (1122, 1124, 1126) 에서의 에지들의 도달들이 수신기에 의해 인지된 바와 같이 송신기 인코딩 지터를 감소시키기 위하여 실질적으로 정렬된다.
결정 로직 (1208) 은 현재 데이터를 표현하는 3-상 입력 신호들 (1112, 1114, 1116) 및 이전 데이터를 표현하는 3-상 출력 신호들 (1122, 1124, 1126) 을 수신한다. 결정 로직 (1208) 은 현재 데이터가 C-PHY 인터페이스의 와이어들을 구동하는데 사용될 때 C-PHY 인터페이스 상에서 발생할 시그널링 상태 트랜지션들의 타입들을 결정하도록 구성될 수도 있다. 결정 로직 (1208) 은 C-PHY 인터페이스 상의 심볼들의 송신을 제어하는데 사용되는 심볼 클록 (1220) 의 복수의 위상-시프트된 버전들로부터 각각의 플립-플롭 (1202, 1204, 1206) 을 구동하기 위한 클록 신호를 선택할 수도 있다. 하나의 예에서, 심볼 클록 (1220) 의 복수의 위상-시프트된 버전들은 클록 생성기 회로 (1210) 에 의해 제공된 베이스 클록 신호 (1222) 로부터 유도될 수도 있다. 베이스 클록 신호 (1222) 는 베이스 클록 신호 (1222) 에 대하여 위상 시프트되는 위상-시프트된 신호들 (1224) 을 제공하는 멀티-탭 지연 라인 (1212) 에 제공될 수도 있다. 위상-시프트된 신호들 (1224) 중 하나는 심볼 클록 (1220) 으로서 기능할 수도 있다. 결정 로직 (1208) 은 소정의 3-상 신호 트랜지션들의 론치를 전진시키기 위해 위상-시프트된 신호들 (1224) 중 하나 이상을 사용하고, 소정의 다른 3-상 신호 트랜지션들의 론치를 지연시키기 위해 하나 이상의 다른 위상-시프트된 신호들 (1224) 을 사용하도록 구성될 수도 있다.
결정 로직 (1208) 은 수신기에서 수평 아이 오프닝을 증가시킴으로써 링크 성능을 개선시키도록 적응될 수도 있다 (도 10 참조). 하나의 예에서, 결정 로직 (1208) 은 심볼 클록 (1220) 의 3 개의 위상-시프트된 버전들 간에 선택할 수도 있고, 여기서 제 1 버전은 심볼 클록 (1220) 과 정렬되고, 제 2 버전은 제 1 버전에 대하여 시간적으로 전진되고, 제 3 버전은 제 1 버전에 대하여 시간적으로 지연된다. 론치 신호들 (1214, 1216, 1218) 은 각각의 플립-플롭 (1202, 1204, 1206) 을 제어하기 위해 심볼 클록 (1220) 의 3 개의 위상-시프트된 버전들 중 하나를 선택함으로써 심볼 클록 (1220) 에 대하여 또는 서로에 대하여 선택적으로 전진 또는 지연될 수도 있다.
다른 예에서, 결정 로직 (1208) 은 심볼 클록 (1220) 에 대하여 시간적으로 전진되는 심볼 클록 (1220) 의 다중 상이한 버전들 및 심볼 클록 (1220) 에 대하여 시간적으로 지연되는 심볼 클록 (1220) 의 다중 상이한 버전들을 수신할 수도 있다. 이 예에서, 결정 로직 (1208) 은 C-PHY 인터페이스 상의 송신에 의해 도입된 신호들 간에 가변 스큐 (variable skew) 들을 수용할 수도 있다.
인코딩 지터는 감소될 수 있고 더 높은 심볼 레이트들은 선택가능한 론치 클록들을 사용하여 달성될 수 있다. 상이한 론치 클록들의 사용은 송신기의 소스 임피던스를 변경하지 않고 그리고 프리-엠퍼시스 회로들 및 다른 전압-모드 기법들보다 더 적은 전력을 사용하여 타이밍을 수정할 수 있다. 본 명세서에서 개시된 기법들은 데이터 레이트에 기초하여 전력에 있어서 스케일링될 수 있고, 전압 모드 기법들과 함께 사용될 수 있다.
도 13 및 도 14 는 C-PHY 인터페이스에서 트리오에 커플링된 수신기에서 관측된 타이밍을 예시한다. 도 13 은 론치 타이밍 제어 없는 신호들의 타이밍을 예시하고, 도 14 는 본 명세서에서 개시된 소정의 양태들에 따른 론치 타이밍 제어를 가진 신호들의 타이밍을 예시한다. 도 13 및 도 14 는 -z 상태로부터의 각각의 가능한 트랜지션에 대한 타이밍 다이어그램들을 포함한다 (도 9 참조). 타이밍 다이어그램들 (1300, 1400) 은 -z 상태로부터 -x 상태로의 트랜지션을 예시하고, 타이밍 다이어그램들 (1302, 1402) 은 -z 상태로부터 -y 상태로의 트랜지션을 예시하고, 타이밍 다이어그램들 (1304, 1404) 은 -z 상태로부터 +x 상태로의 트랜지션을 예시하면, 타이밍 다이어그램들 (1306, 1406) 은 -z 상태로부터 +y 상태로의 트랜지션을 예시하고, 타이밍 다이어그램들 (1308, 1408) 은 -z 상태로부터 +z 상태로의 트랜지션을 예시한다.
3 개의 C-PHY 시그널링 상태들은 {-1, 0, 1} 로서 표현될 수도 있다. 예시된 예들에서, 0 상태는 비구동 상태일 수도 있고, 0 상태로부터 +1 상태 또는 -1 상태로의 트랜지션들은 가장 빠른 트랜지션들이고, -1 상태와 +1 상태 간의 트랜지션들은 다음으로 가장 빠른 상태이고, +1 상태 또는 -1 상태로부터 0 상태로의 트랜지션들은 가장 느린 트랜지션들이다. 트랜지션의 상대 속도들은 다른 구현들에서 상이할 수도 있다. 예를 들어, 상이한 타입들의 드라이버 또는 구성들의 와이어링은 트랜지션 타이밍의 차이에 영향을 줄 수도 있다. 도 13 에서, 각각의 신호는 동일한 시간 (1310 또는 1312) 에 론칭된다. -z 상태와 -x 상태 또는 -y 상태 간의 트랜지션들에 대해, 3 개의 상이한 도달 시간들 (1314) 이 관측된다. 다른 트랜지션들에 대해서는, 2 개의 도달 시간들 (1326) 이 관측될 수도 있다.
도 14 는, 도 12 의 결정 로직 (1208) 이 C-PHY 인터페이스에서 -x 및 -y 상태들로의 트랜지션들에 관련된 타이밍을 조정하도록 동작하는 예를 예시한다. 결정 로직 (1208) 은 송신 인코딩 지터를 감소시키기 위해 하나 이상의 시간-기반 알고리즘들을 채용할 수도 있다. 송신될 각각의 심볼에 대해, 론치 클록 신호 (1418, 1420, 1422) 는 심볼이 송신될 때 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입에 기초하여 3-와이어 트리오의 각각의 와이어 상에서 3-상 신호를 론칭하도록 선택된다. 론치 클록 신호들 (1418, 1420, 1422) 은 상이한 위상 시프트들을 가진 심볼 클록의 다중 버전들에서 제공될 수도 있다. 하나의 예에서, 3 개의 클록 위상들이 3-와이어 트리오의 각각의 와이어에서 론치 신호들에 제공된다. 3 개의 클록 위상들은: 이른 론치 클록 신호 (1418) (Td0), 지연된 론치 클록 신호 (1420) (Td1), 및 훨씬 더 지연된 클록 또는 늦은 론치 클록 신호 (1422) (Td2) 를 포함할 수도 있다. 이들 론치 클록 신호들 (1418, 1420, 1422) 의 상대 도달 시간은 Td0 이 제 1 시간 (1412) 에 도달하고, Td1 이 제 2 시간 (1414) 에 도달하고, Td2 가 제 3 시간 (1416) 에 도달하도록 한다. 3 개의 론치 클록 신호들 (1418, 1420, 1422) 중 하나는 론칭되는 상태 트랜지션에 기초하여 대응하는 와이어 상에서 신호를 송신하는데 사용되도록 선택된다. 하나의 예에서, 사용된 알고리즘은 다음과 같이 정의될 수도 있다:
Figure pct00007
일부 예들에서, 결정 로직 (1208) 은 C-PHY 인터페이스에서의 모든 3 개의 와이어들의 시그널링 상태가 연속하여 송신된 심볼들의 쌍 간의 경계에서 변화중일 때에만 전진된 또는 지연된 론치 클록 신호를 선택한다.
C-PHY 라인 드라이버에서, 와이어를 1 상태로 풀 업하고, 와이어를 중간 (0) 상태로 풀링하고, 와이어를 -1 상태로 풀 다운하기 위해 상이한 회로들이 채용될 수도 있다. 3-상 입력 신호 (1112, 1114 또는 1116) 는 데이터의 다중 비트들을 사용하여 표현될 수도 있다. 하나의 예에서, 3-상 신호는 풀-업, 풀-다운 및 풀-미들 드라이버들의 활성화를 제어하는 3 비트들로 표현될 수도 있고, 여기서 단 하나의 비트만이 각각의 심볼 송신 간격에 대해 설정된다. 다른 예에서, 3-상 신호는, 값이 심볼 송신 간격에 대한 대응하는 와이어의 원하는 상태 (풀-업, 풀-다운 또는 풀-미들, 고-임피던스) 를 표시하는, 2 비트들로 표현될 수도 있다.
도 15 는 론치 심볼들에 다중 클록 위상들을 사용하여 인코딩 지터를 감소시키도록 적응된 C-PHY 송신기에서 구현될 수도 있는 라인 드라이버 (1500) 의 하나의 예를 예시한다. 제 1 세트의 플립-플롭들 (1508) 은 송신될 심볼과 연관된 와이어의 시그널링 상태를 표현하는 데이터를 수신한다. 데이터는 풀업-비트 (PU; 1502), 풀-미들 비트 (PM; 1504), 및 풀-다운 비트 (PD; 1506) 를 포함할 수도 있다. 제 1 세트의 플립-플롭들 (1508) 은 후속 심볼 간격에서 제 2 세트의 플립-플롭들 (1510) 에 의해 캡처되는 현재 데이터 (1526) 를 제공한다. 제 2 세트의 플립-플롭들 (1510) 의 출력은 이전에 송신된 심볼을 표현하고 이전 데이터 (1528) 로 지칭될 수도 있다. 제 1 세트의 플립-플롭들 (1508) 및 제 2 세트의 플립-플롭들 (1510) 은 C-PHY 송신기에 의한 심볼들의 송신을 제어하는데 사용되는 심볼 클록 (1532) 에 의해 클록킹될 수도 있다. 제 1 세트의 플립-플롭들 (1508) 및 제 2 세트의 플립-플롭들 (1510) 에 의해 제공된 현재 데이터 (1526) 및 이전 데이터 (1528) 의 소정의 비트들은 론치 클록들 (1534, 1536 및 1538) 간에 선택하도록 결정 로직 (1516) 에 의해 사용된다. 결정 로직 (1516) 은 클록 선택 로직 (1520) 을 사용하여 론치 클록들 (1534, 1536 및 1538) 간에 선택한다.
예시된 예에서, 결정 로직 (1516) 은 심볼들 간의 PM (1504) 의 변화들에 대해 모니터링한다. PM (1504) 에서의 어떠한 변화도 관측되지 않으면, 결정 로직 (1516) 은 클록 선택 로직 (1520) 으로 하여금 현재 심볼에 대한 신호를 론칭하기 위해 중간 위상 론치 클록 (1536) 을 선택하게 한다. PM (1504) 의 변화가 관측되면, 결정 로직 (1516) 은 클록 선택 로직 (1520) 으로 하여금 현재 심볼에 의해 와이어에 대해 정의된 시그널링 상태에 기초하여 더 이른 위상 론치 클록 (1534) 또는 더 늦은 위상 론치 클록 (1538) 을 선택하게 한다. 하나의 예에서, 더 이른 위상 론치 클록 (1534) 은 현재 심볼이 와이어에 대해 중간 (0) 상태를 정의할 때 선택된다. 다른 예에서, 더 늦은 위상 론치 클록 (1538) 은 현재 심볼이 와이어에 대해 구동 상태 (+1 또는 -1) 를 정의할 때 선택된다.
제 2 세트의 플립-플롭들 (1510) 의 출력은 론치 클록 신호 (1540) 의 제어 하에서 제 4 세트의 플립-플롭들 (1524) 에 의해 론칭되는 스테이징된 (staged) 데이터 (1530) 를 제공하기 위해 제 3 세트의 플립-플롭들 (1512) 을 통하여 클록킹된다. 제 3 세트의 플립-플롭들 (1512) 은 2 개의 세트들의 플립-플롭들 (1518 및 1522) 을 포함하는 클록 생성 경로와 데이터 경로의 타이밍을 매칭시킨다.
연속하여 송신된 심볼들의 일부 쌍들은 2 개의 와이어들 상에서 실질적으로 대칭적인 트랜지션들을 생성하는 한편 와이어는 이러한 연속하여 송신된 심볼들의 쌍들 간의 경계를 통하여 동일한 상태에 남아 있다 (예를 들어, 도 13 의 타이밍 다이어그램들 (1304, 1306 및 1308) 참조). 2 개의 와이어들이 시그널링 상태를 효과적으로 스왑할 때, 신호 론치의 전진 또는 지체가 요구되지 않을 수도 있다. 일부 예들에서, "비구동" 출력은, 트랜지션이 완료되고 및/또는 수신기로의 와이어에 대한 라운드-트립 시간이 만료한 후 "비구동" 신호 드라이버를 감소 또는 완전히 디스에이블하기 전에, 필수 트랜지션을 재빨리 달성하기 위해 고 드라이브 강도로 잠깐 구동될 수도 있다. 이러한 후자의 예들에서, 구동 상태로부터 비구동 상태로의 그리고 비구동 상태로부터 구동 상태로의 트랜지션 시간들은 실질적으로 동일할 수도 있고, 및/또는 트랜지션 시간들에서의 차이들은 무시해도 될 정도일 수도 있다. 일부 구현들에서, 결정 로직 (1516) 은 C-PHY 인터페이스에서의 모든 3 개의 와이어들의 시그널링 상태가 연속하여 송신된 심볼들의 쌍 간의 경계에서 변화중일 때에만 전진된 또는 지연된 론치 클록 신호를 선택할 수도 있다. 이러한 인스턴스들에서, C-PHY 인터페이스에서의 3 개의 와이어들의 각각 상에서 송신된 신호들에서의 에지들은 공통 론치 클록, 또는 심볼 클록 (1532) 을 사용하여 론칭된다. 다른 구현들에서, 구동 상태로부터 비구동 상태로 트랜지션하는 신호에 대해, 비구동 상태로부터 구동 상태로 트랜지션하는 신호에 대해 사용되는 론치 클록과는 상이한 론치 클록을 사용하는 것이 바람직할 수도 있다.
도 16 은 도 15 의 라인 드라이버 (1500) 의 동작을 예시하는 타이밍 다이어그램이다. 심볼 클록 (1532) 은 복수의 위상-시프트된 클록들 중 하나로서 생성될 수도 있다. 하나의 예에서, 심볼 클록 (1532) 은 중간 위상 론치 클록 (1536) 과 동일한 위상 시프트를 가질 수도 있다. 일부 인스턴스들에서, 심볼 클록 (1532) 은 중간 위상 론치 클록 (1536) 에 대하여 위상 시프트를 가질 수도 있다. 결정 로직 (1516) 은 심볼들의 연속적인 쌍들이 이용가능할 때 결정들 (1602) 에 도달할 수도 있다. 예에서, 데이터 D0 에 대한 클록 에지 (1606) 의 타이밍은 심볼 클록 (1532) 에 대하여 지연되고 데이터 D1 에 대한 클록 에지 (1608) 의 타이밍은 심볼 클록 (1532) 에 대하여 전진된다.
프로세싱 회로들 및 방법들의 예들
도 17 은 본 명세서에서 개시된 하나 이상의 기능들을 수행하도록 구성될 수도 있는 프로세싱 회로 (1702) 를 채용하는 장치에 대한 하드웨어 구현의 예를 예시하는 개념적 다이어그램 (1700) 이다. 본 개시의 다양한 양태들에 따르면, 본 명세서에서 개시된 바와 같은 엘리먼트, 엘리먼트의 임의의 부분, 또는 엘리먼트들의 임의의 조합은 프로세싱 회로 (1702) 를 사용하여 구현될 수도 있다. 프로세싱 회로 (1702) 는 하드웨어 및 소프트웨어 모듈들의 일부 조합에 의해 제어되는 하나 이상의 프로세서들 (1704) 을 포함할 수도 있다. 프로세서들 (1704) 의 예들은 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들 (DSP들), 필드 프로그래밍가능 게이트 어레이들 (FPGA들), 프로그래밍가능 로직 디바이스들 (PLD들), 상태 머신들, 시퀀서들, 게이트형 로직, 이산 하드웨어 회로들, 및 본 개시 전반에 걸쳐 설명된 다양한 기능성을 수행하도록 구성된 다른 적합한 하드웨어를 포함한다. 하나 이상의 프로세서들 (1704) 은, 특정 기능들을 수행하고 그리고 소프트웨어 모듈들 (1716) 중 하나에 의해 구성, 증강 또는 제어될 수도 있는 특수화된 프로세서들을 포함할 수도 있다. 하나 이상의 프로세서들 (1704) 은 초기화 동안 로딩되는 소프트웨어 모듈들 (1716) 의 조합을 통하여 구성되고, 동작 동안 하나 이상의 소프트웨어 모듈들 (1716) 을 로딩 또는 언로딩함으로써 추가로 구성될 수도 있다.
예시된 예에서, 프로세싱 회로 (1702) 는, 버스 (1710) 에 의해 일반적으로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1710) 는 프로세싱 회로 (1702) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속 버스들 및 브릿지들을 포함할 수도 있다. 버스 (1710) 는 하나 이상의 프로세서들 (1704) 및 스토리지 (1706) 를 포함하는 다양한 회로들을 함께 링크한다. 스토리지 (1706) 는 메모리 디바이스들 및 대용량 저장 디바이스들을 포함할 수도 있고, 본 명세서에서 컴퓨터 판독가능 매체들 및/또는 프로세서 판독가능 매체들로 지칭될 수도 있다. 버스 (1710) 는 또한 타이밍 소스들, 타이머들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들과 같은 다양한 다른 회로들을 링크할 수도 있다. 버스 인터페이스 (1708) 는 버스 (1710) 와 하나 이상의 트랜시버들 (1712) 간에 인터페이스를 제공할 수도 있다. 트랜시버 (1712) 는 프로세싱 회로에 의해 지원되는 각각의 네트워킹 기술을 위해 제공될 수도 있다. 일부 인스턴스들에서, 다중 네트워킹 기술들은 트랜시버 (1712) 에서 발견된 회로부 또는 프로세싱 모듈들 중 일부 또는 전부를 공유할 수도 있다. 각각의 트랜시버 (1712) 는 송신 매체 상으로 다양한 다른 장치와 통신하기 위한 수단을 제공한다. 장치의 본성에 의존하여, 사용자 인터페이스 (1718) (예컨대, 키패드, 디스플레이, 터치 인터페이스, 스피커, 마이크로폰, 조이스틱) 가 또한 제공될 수도 있고, 직접 또는 버스 인터페이스 (1708) 를 통하여 버스 (1710) 에 통신가능하게 커플링될 수도 있다.
프로세서 (1704) 는, 버스 (1710) 를 관리하는 것 및 스토리지 (1706) 를 포함할 수도 있는 컴퓨터 판독가능 매체에 저장된 소프트웨어의 실행을 포함할 수도 있는 일반적인 프로세싱을 담당할 수도 있다. 이와 관련하여, 프로세서 (1704) 를 포함하는 프로세싱 회로 (1702) 가 본 명세서에 개시된 방법들, 기능들 및 기법들 중 임의의 것을 구현하는데 사용될 수도 있다. 스토리지 (1706) 는, 소프트웨어를 실행할 때 프로세서 (1704) 에 의해 조작되는 데이터를 저장하기 위해 사용될 수도 있고, 소프트웨어는 본 명세서에 개시된 방법들 중 임의의 방법을 구현하도록 구성될 수도 있다.
프로세싱 회로 (1702) 에서의 하나 이상의 프로세서들 (1704) 은 소프트웨어를 실행할 수도 있다. 소프트웨어는, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어, 또는 기타 등등으로 지칭되든 안되든, 명령들, 명령 세트들, 코드, 코드 세그먼트들, 프로그램 코드, 프로그램들, 서브프로그램들, 소프트웨어 모듈들, 애플리케이션들, 소프트웨어 애플리케이션들, 소프트웨어 패키지들, 루틴들, 서브루틴들, 오브젝트들, 실행가능물들, 실행 스레드들, 절차들, 함수들, 알고리즘들 등을 의미하도록 광범위하게 해석될 것이다. 소프트웨어는 스토리지 (1706) 에 또는 외부 컴퓨터 판독가능 매체에 컴퓨터 판독가능 형태로 상주할 수도 있다. 외부 컴퓨터 판독가능 매체 및/또는 스토리지 (1706) 는 비일시적 컴퓨터 판독가능 매체를 포함할 수도 있다. 비일시적 컴퓨터 판독가능 매체는, 예로서, 자기 저장 디바이스 (예를 들어, 하드 디스크, 플로피 디스크, 자기 스트립), 광학 디스크 (예를 들어, 콤팩트 디스크 (CD) 또는 디지털 다기능 디스크 (DVD)), 스마트 카드, 플래시 메모리 디바이스 (예를 들어, "플래시 드라이브", 카드, 스틱, 또는 키 드라이브), 랜덤 액세스 메모리 (RAM), 판독 전용 메모리 (ROM), 프로그래밍가능 ROM (PROM), 소거가능 PROM (EPROM), 전기적으로 소거가능 PROM (EEPROM), 레지스터, 착탈가능 디스크, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 저장하기 위한 임의의 다른 적합한 매체를 포함한다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1706) 는 또한, 예로서, 반송파, 송신 라인, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 송신하기 위한 임의의 다른 적합한 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1706) 는 프로세싱 회로 (1702) 에, 프로세서 (1704) 에, 프로세싱 회로 (1702) 외부에 상주할 수도 있거나, 또는 프로세싱 회로 (1702) 를 포함하는 다중 엔티티들에 걸쳐 분산될 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1706) 는 컴퓨터 프로그램 제품에서 구현될 수도 있다. 예로서, 컴퓨터 프로그램 제품은 패키징 재료들에 컴퓨터 판독가능 매체를 포함할 수도 있다. 당업자들은, 전체 시스템에 부과된 전체 설계 제약들 및 특정한 애플리케이션에 의존하여 본 개시 전반에 걸쳐 제시되는 설명된 기능성을 최상으로 구현할 수 있는 방법을 인식할 것이다.
스토리지 (1706) 는, 본 명세서에서 소프트웨어 모듈들 (1716) 로 지칭될 수도 있는 로딩가능한 코드 세그먼트들, 모듈들, 애플리케이션들, 프로그램들 등에서 유지되고 및/또는 편성되는 소프트웨어를 유지할 수도 있다. 소프트웨어 모듈들 (1716) 의 각각은, 프로세싱 회로 (1702) 상에 설치 또는 로딩되고 하나 이상의 프로세서들 (1704) 에 의해 실행될 때, 하나 이상의 프로세서들 (1714) 의 동작을 제어하는 런-타임 이미지 (1704) 에 기여하는 명령들 및 데이터를 포함할 수도 있다. 실행될 때, 소정의 명령들은 프로세싱 회로 (1702) 로 하여금 본 명세서에서 설명된 소정의 방법들, 알고리즘들 및 프로세스들에 따라 기능들을 수행하게 할 수도 있다.
소프트웨어 모듈들 (1716) 의 일부는 프로세싱 회로 (1702) 의 초기화 동안 로딩될 수도 있고, 이들 소프트웨어 모듈들 (1716) 은 본 명세서에서 개시된 다양한 기능들의 수행을 가능하게 하도록 프로세싱 회로 (1702) 를 구성할 수도 있다. 예를 들어, 일부 소프트웨어 모듈들 (1716) 은 프로세서 (1704) 의 내부 디바이스들 및/또는 로직 회로들 (1722) 을 구성할 수도 있고, 트랜시버 (1712), 버스 인터페이스 (1708), 사용자 인터페이스 (1718), 타이머들, 수학적 코프로세서들 등과 같은 외부 디바이스들로의 액세스를 관리할 수도 있다. 소프트웨어 모듈들 (1716) 은, 인터럽트 핸들러들 및 디바이스 드라이버들과 상호작용하고 그리고 프로세싱 회로 (1702) 에 의해 제공된 다양한 리소스들로의 액세스를 제어하는 제어 프로그램 및/또는 오퍼레이팅 시스템을 포함할 수도 있다. 리소스들은 메모리, 프로세싱 시간, 사용자 인터페이스 (1718), 트랜시버 (1712) 로의 액세스, 등을 포함할 수도 있다.
프로세싱 회로 (1702) 의 하나 이상의 프로세서들 (1704) 은 다기능적일 수도 있고, 그것에 의하여, 소프트웨어 모듈들 (1716) 의 일부는 상이한 기능들 또는 동일한 기능의 상이한 인스턴스들을 수행하도록 로딩 및 구성된다. 하나 이상의 프로세서들 (1704) 은 추가적으로, 예를 들어, 사용자 인터페이스 (1718), 트랜시버 (1712) 및 디바이스 드라이버들로부터의 입력들에 응답하여 개시된 백그라운드 태스크들을 관리하도록 적응될 수도 있다. 다중 기능들의 수행을 지원하기 위해, 하나 이상의 프로세서들 (1704) 은 멀티태스킹 환경을 제공하도록 구성될 수도 있고, 그것에 의하여, 복수의 기능들의 각각은, 필요하거나 요구될 때 하나 이상의 프로세서들 (1704) 에 의해 서비스되는 태스크들의 세트로서 구현된다. 하나의 예에서, 멀티태스킹 환경은 상이한 태스크들 사이에 프로세서 (1704) 의 제어를 전달하는 시간공유 프로그램 (1720) 을 사용하여 구현될 수도 있고, 그것에 의하여, 각각의 태스크는, 임의의 미해결의 동작들의 완료시 및/또는 인터럽트와 같은 입력에 응답하여, 하나 이상의 프로세서들 (1704) 의 제어를 시간공유 프로그램 (1720) 으로 리턴한다. 태스크가 하나 이상의 프로세서들 (1704) 의 제어를 가질 때, 프로세싱 회로는 제어 태스크와 연관된 기능에 의해 어드레싱되는 목적들을 위해 효과적으로 특수화된다. 시간공유 프로그램 (1720) 은 오퍼레이팅 시스템, 라운드-로빈 기반으로 제어를 전송하는 메인 루프, 기능들의 우선순위화에 따라 하나 이상의 프로세서들 (1704) 의 제어를 할당하는 기능, 및/또는 하나 이상의 프로세서들 (1704) 의 제어를 핸들링 기능에 제공함으로써 외부 이벤트들에 응답하는 인터럽트 구동 메인 루프를 포함할 수도 있다.
도 18 은 3-와이어 통신 인터페이스 상의 데이터 통신들을 위한 방법을 예시하는 플로우차트이다. 3-와이어 인터페이스는 MIPI 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환된다. 그 방법은 송신 회로를 사용하여 수행될 수도 있다.
블록 (1802) 에서, 송신 회로는 복수의 론치 클록 신호들을 제공할 수도 있다. 소정의 론치 클록 신호들은 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트를 갖는다. 각각의 심볼 송신 동안, 3-상 신호가 3-와이어 인터페이스의 각각의 와이어 상에서 송신될 수도 있다. 각각의 와이어 상에서 송신된 3-상 신호는 3-와이어 인터페이스의 다른 와이어들 각각 상에서 송신된 신호들과 위상 차이가 있을 수도 있다.
블록 (1804) 에서, 송신 회로는 2 개의 연속하여 송신된 심볼들 간의 경계에서 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정할 수도 있다.
블록 (1802) 에서, 송신 회로는 3-와이어 인터페이스의 각각의 와이어 상에서 시그널링 상태의 트랜지션을 개시하기 위해 복수의 론치 클록 신호들 중 하나를 선택할 수도 있다. 송신 회로는 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택할 수도 있다. 송신 회로는 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택할 수도 있다. 하나의 예에서, 제 1 론치 클록 신호에서의 에지는 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생한다.
일부 예들에서, 송신 회로는 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 2 개의 연속하여 송신된 심볼들 간의 경계에서 트랜지션할 때 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택할 수도 있다.
일부 인스턴스들에서, 송신 회로는 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택할 수도 있다. 하나의 예에서, 제 3 론치 클록 신호에서의 에지는 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생한다. 제 1 론치 클록 신호, 제 2 론치 클록 신호, 및 제 3 론치 클록 신호는 3-와이어 인터페이스에 커플링된 수신기에서 2 개의 연속하여 송신된 심볼들 간의 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택될 수도 있다. 제 3 론치 클록은 심볼 클록일 수도 있다. 제 3 론치 클록 및 심볼 클록은 동일한 위상 시프트를 가질 수도 있다.
하나의 예에서, 트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생한다.
도 19 는 프로세싱 회로 (1902) 를 채용하는 장치 (1900) 에 대한 하드웨어 구현의 예를 예시하는 개념적 다이어그램이다. 이 예에서, 프로세싱 회로 (1902) 는 일반적으로 버스 (1920) 로 표현되는, 버스 아키텍처로 구현될 수도 있다. 버스 (1920) 는 프로세싱 회로 (1902) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속 버스들 및 브릿지들을 포함할 수도 있다. 버스 (1920) 는 일반적으로 프로세서 (1916) 로 표현된 하나 이상의 프로세서들, 및 일반적으로 프로세서 판독가능 저장 매체 (1918) 로 표현된 컴퓨터 판독가능 매체들, 모듈들 또는 회로들 (1904, 1906, 및 1908), 클록 생성 회로 (1910), 3-와이어 버스의 커넥터들 또는 와이어들 (1914) 에 커플링된 라인 드라이버들 (1912) 및 프로세서 판독가능 저장 매체 (1918) 를 포함하는 다양한 회로들을 함께 링크한다. 버스 (1920) 는 또한 타이밍 소스들, 타이머들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들과 같은 다양한 다른 회로들을 링크할 수도 있다. 하나 이상의 추가적인 클록 생성 회로들은 프로세싱 회로 (1902) 내에 제공되거나 또는 프로세싱 회로 (1902) 및/또는 하나 이상의 프로세서들 (1916) 에 의해 제어될 수도 있다. 하나의 예에서, 클록 생성 회로들은 하나 이상의 수정 발진기들, 하나 이상의 위상 고정 루프 디바이스들, 및/또는 하나 이상의 구성가능한 클록 트리들을 포함할 수도 있다. 클록 생성 회로들 (1910) 은 멀티-탭 지연 라인을 포함하거나 또는 멀티-탭 지연 라인에 커플링될 수도 있다.
프로세서 (1916) 는 버스 (1920) 를 관리하는 것, 및 프로세서 판독가능 저장 매체 (1918) 상에 저장된 소프트웨어의 실행을 포함하는 일반적인 프로세싱을 담당한다. 소프트웨어는, 프로세서 (1916) 에 의해 실행될 때, 프로세싱 회로 (1902) 로 하여금 임의의 특정한 장치에 대해 위에 설명된 다양한 기능들을 수행하게 한다. 프로세서 판독가능 저장 매체 (1918) 는 소프트웨어를 실행할 때 프로세서 (1916) 에 의해 조작되는 데이터를 저장하기 위해 사용될 수도 있다.
하나의 구성에서, 프로세싱 회로 (1902) 는 복수의 론치 클록 신호들을 제공하도록 구성된 하나 이상의 모듈들 및/또는 회로들 (1908, 1910) 을 포함할 수도 있고, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 갖는다. 프로세싱 회로 (1902) 는 2 개의 연속하여 송신된 심볼들 간의 경계에서 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하도록 구성된 하나 이상의 모듈들 및/또는 회로들 (1906) 을 포함할 수도 있다. 프로세싱 회로 (1902) 는 복수의 론치 클록 신호들 중 하나를 사용하여 시그널링 상태의 트랜지션을 개시하도록 구성된 하나 이상의 모듈들 및/또는 회로들 (1904, 1912) 을 포함할 수도 있다. 예를 들어, 모듈들 및/또는 회로들 (1904, 1912) 은, 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 시그널링 상태의 트랜지션을 개시하기 위해 제 1 론치 클록 신호를 사용하고, 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 시그널링 상태의 트랜지션을 개시하기 위해 제 2 론치 클록 신호를 사용하도록 구성될 수도 있다. 제 1 론치 클록 신호에서의 에지는 예를 들어, 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생할 수도 있다.
당업자들은 본 명세서에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들 양자의 조합으로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환가능성을 분명히 예시하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 일반적으로 그들의 기능성의 관점에서 상기 설명되었다. 이러한 기능성이 하드웨어로서 구현되는지 또는 소프트웨어로서 구현되는지는 전체 시스템에 부과된 설계 제약들 및 특정한 애플리케이션에 의존한다.
본 명세서에서 설명된 본 발명의 다양한 피처들은 본 발명으로부터 벗어남 없이 상이한 시스템들에서 구현될 수 있다. 전술한 실시형태들은 단지 예들일 뿐이고 본 발명을 제한하는 것으로 해석되지 않아야 함에 주목해야 한다. 실시형태들의 설명은 예시적인 것으로 의도되며, 청구항들의 범위를 제한하도록 의도되지 않는다. 이로써, 본 교시들은 다른 타입들의 장치들에 용이하게 적용될 수 있으며, 다수의 대안들, 수정들, 및 변동들은 당업자들에게 명백할 것이다.

Claims (29)

  1. 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법으로서,
    복수의 론치 클록 신호들을 제공하는 단계로서, 소정의 상기 론치 클록 신호들은 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트를 가지며, 각각의 심볼 송신 동안, 3-상 신호가 상기 3-와이어 인터페이스의 각각의 와이어 상에서 송신되고, 각각의 와이어 상에서 송신된 상기 3-상 신호는 상기 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있는, 상기 복수의 론치 클록 신호들을 제공하는 단계;
    2 개의 연속하여 송신된 심볼들 간의 경계에서 상기 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하는 단계; 및
    상기 3-와이어 인터페이스의 각각의 와이어 상에서 상기 시그널링 상태의 트랜지션을 개시하기 위해 상기 복수의 론치 클록 신호들 중 하나를 선택하는 단계를 포함하고,
    상기 복수의 론치 클록 신호들 중 하나를 선택하는 단계는,
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하는 단계, 및
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하는 단계를 포함하고,
    상기 제 1 론치 클록 신호에서의 에지는 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  2. 제 1 항에 있어서,
    상기 복수의 론치 클록 신호들 중 하나를 선택하는 단계는,
    상기 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계에서 트랜지션할 때 상기 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하는 단계를 포함하는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  3. 제 1 항에 있어서,
    상기 복수의 론치 클록 신호들 중 하나를 선택하는 단계는,
    상기 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하는 단계를 포함하고,
    상기 제 3 론치 클록 신호에서의 에지는 상기 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  4. 제 3 항에 있어서,
    상기 제 1 론치 클록 신호, 상기 제 2 론치 클록 신호, 및 상기 제 3 론치 클록 신호는 상기 3-와이어 인터페이스에 커플링된 수신기에서 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택되는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  5. 제 3 항에 있어서,
    제 3 론치 클록은 상기 심볼 클록인, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  6. 제 1 항에 있어서,
    트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 상기 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생하는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  7. 제 1 항에 있어서,
    상기 3-와이어 인터페이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환되는, 멀티-와이어 인터페이스 상에서 데이터를 송신하는 방법.
  8. 3-와이어 인터페이스의 하나의 와이어를 구동하기 위해 적응된 라인 드라이버로서,
    복수의 론치 클록 신호들을 제공하도록 구성된 클록 생성기로서, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 갖는, 상기 클록 생성기;
    결정 로직으로서,
    2 개의 연속하여 송신된 심볼들 간의 경계에서 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하고,
    상기 시그널링 상태의 트랜지션을 개시하기 위해 현재 론치 신호로서 상기 복수의 론치 클록 신호들 중 하나를 선택하도록 구성된, 상기 결정 로직; 및
    상기 현재 론치 신호를 수신하고 상기 3-와이어 인터페이스 상의 3-상 신호들의 론치의 타이밍을 제어하도록 구성된 플립-플롭들의 세트로서, 각각의 심볼 송신 동안, 3-상 신호가 상기 3-와이어 인터페이스의 각각의 와이어 상에서 송신되고, 각각의 와이어 상에서 송신된 상기 3-상 신호는 상기 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있는, 플립-플롭들의 세트를 포함하는, 라인 드라이버.
  9. 제 8 항에 있어서,
    상기 결정 로직은,
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하고;
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하도록 구성되고,
    상기 제 1 론치 클록 신호에서의 에지는 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 라인 드라이버.
  10. 제 9 항에 있어서,
    상기 결정 로직은,
    상기 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하도록 구성되고,
    상기 제 3 론치 클록 신호에서의 에지는 상기 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 라인 드라이버.
  11. 제 10 항에 있어서,
    상기 제 1 론치 클록 신호, 상기 제 2 론치 클록 신호, 및 상기 제 3 론치 클록 신호는 상기 3-와이어 인터페이스에 커플링된 수신기에서 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택되는, 라인 드라이버.
  12. 제 10 항에 있어서,
    제 3 론치 클록은 상기 심볼 클록인, 라인 드라이버.
  13. 제 8 항에 있어서,
    상기 결정 로직은,
    상기 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계에서 트랜지션할 때 상기 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하도록 구성되는, 라인 드라이버.
  14. 제 8 항에 있어서,
    트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 상기 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생하는, 라인 드라이버.
  15. 제 8 항에 있어서,
    상기 3-와이어 인터페이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환되는, 라인 드라이버.
  16. 장치로서,
    복수의 론치 클록 신호들을 제공하기 위한 수단으로서, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 가지며, 각각의 심볼 송신 동안, 3-상 신호가 상기 3-와이어 인터페이스의 각각의 와이어 상에서 송신되고, 각각의 와이어 상에서 송신된 상기 3-상 신호는 상기 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있는, 상기 복수의 론치 클록 신호들을 제공하기 위한 수단;
    2 개의 연속하여 송신된 심볼들 간의 경계에서 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하기 위한 수단; 및
    상기 복수의 론치 클록 신호들 중 하나를 사용하여 상기 시그널링 상태의 트랜지션을 개시하기 위한 수단을 포함하고,
    상기 시그널링 상태의 트랜지션을 개시하기 위한 수단은,
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 상기 시그널링 상태의 트랜지션을 개시하기 위해 제 1 론치 클록 신호를 사용하고;
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 상기 시그널링 상태의 트랜지션을 개시하기 위해 제 2 론치 클록 신호를 사용하도록 구성되고,
    상기 제 1 론치 클록 신호에서의 에지는 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 장치.
  17. 제 16 항에 있어서,
    상기 시그널링 상태의 트랜지션을 개시하기 위한 수단은,
    상기 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계에서 트랜지션할 때 상기 3-와이어 인터페이스의 모든 와이어들 상에서 시그널링 상태의 트랜지션들을 개시하기 위해 공통 론치 클록 신호를 사용하도록 구성되는, 장치.
  18. 제 16 항에 있어서,
    상기 시그널링 상태의 트랜지션을 개시하기 위한 수단은,
    상기 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 상기 시그널링 상태의 트랜지션을 개시하기 위해 제 3 론치 클록 신호를 선택하도록 구성되고,
    상기 제 3 론치 클록 신호에서의 에지는 상기 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 장치.
  19. 제 18 항에 있어서,
    상기 제 1 론치 클록 신호, 상기 제 2 론치 클록 신호, 및 상기 제 3 론치 클록 신호는 상기 3-와이어 인터페이스에 커플링된 수신기에서 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택되는, 장치.
  20. 제 19 항에 있어서,
    제 3 론치 클록은 상기 심볼 클록인, 장치.
  21. 제 16 항에 있어서,
    트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 상기 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생하는, 장치.
  22. 제 16 항에 있어서,
    상기 3-와이어 인터페이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환되는, 장치.
  23. 프로세서 판독가능 저장 매체로서,
    복수의 론치 클록 신호들을 제공하는 것으로서, 각각의 론치 클록 신호는 3-와이어 인터페이스 상의 심볼 송신을 제어하는데 사용되는 심볼 클록에 대하여 상이한 위상-시프트들을 가지며, 각각의 심볼 송신 동안, 3-상 신호가 상기 3-와이어 인터페이스의 각각의 와이어 상에서 송신되고, 각각의 와이어 상에서 송신된 상기 3-상 신호는 상기 3-와이어 인터페이스의 각각의 다른 와이어 상에서 송신된 신호들과 위상 차이가 있는, 상기 복수의 론치 클록 신호들을 제공하고;
    2 개의 연속하여 송신된 심볼들 간의 경계에서 상기 3-와이어 인터페이스의 각각의 와이어 상에서 발생할 시그널링 상태의 트랜지션의 타입을 결정하고;
    상기 3-와이어 인터페이스의 각각의 와이어 상에서 상기 시그널링 상태의 트랜지션을 개시하기 위해 상기 복수의 론치 클록 신호들 중 하나를 선택하기 위한 코드를 포함하고,
    상기 복수의 론치 클록 신호들 중 하나를 선택하는 것은,
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 종료될 때 제 1 론치 클록 신호를 선택하는 것, 및
    상기 시그널링 상태의 트랜지션이 비구동 상태에서 시작될 때 제 2 론치 클록 신호를 선택하는 것을 포함하고,
    상기 제 1 론치 클록 신호에서의 에지는 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 프로세서 판독가능 저장 매체.
  24. 제 23 항에 있어서,
    상기 3-와이어 인터페이스의 모든 와이어들보다 적은 와이어들이 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계에서 트랜지션할 때 상기 3-와이어 인터페이스의 모든 와이어들에 대해 공통 론치 클록 신호를 선택하기 위한 코드를 더 포함하는, 프로세서 판독가능 저장 매체.
  25. 제 23 항에 있어서,
    상기 시그널링 상태의 트랜지션이 상이한 구동 상태들에서 시작하고 끝날 때 제 3 론치 클록 신호를 선택하기 위한 코드를 더 포함하고,
    상기 제 3 론치 클록 신호에서의 에지는 상기 제 1 론치 클록 신호에서의 대응하는 에지 이후에 및 상기 제 2 론치 클록 신호에서의 대응하는 에지 이전에 발생하는, 프로세서 판독가능 저장 매체.
  26. 제 25 항에 있어서,
    상기 제 1 론치 클록 신호, 상기 제 2 론치 클록 신호, 및 상기 제 3 론치 클록 신호는 상기 3-와이어 인터페이스에 커플링된 수신기에서 상기 2 개의 연속하여 송신된 심볼들 간의 상기 경계와 연관된 시그널링 상태 트랜지션들의 도달 시간들 간의 차이들을 감소시키도록 선택되는, 프로세서 판독가능 저장 매체.
  27. 제 25 항에 있어서,
    제 3 론치 클록은 상기 심볼 클록인, 프로세서 판독가능 저장 매체.
  28. 제 23 항에 있어서,
    트랜지션이 연속하여 송신된 심볼들의 쌍들 간의 각각의 경계에서 상기 3-와이어 인터페이스의 적어도 하나의 와이어 상에서 발생하는, 프로세서 판독가능 저장 매체.
  29. 제 23 항에 있어서,
    상기 3-와이어 인터페이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 C-PHY 인터페이스를 준수하거나 또는 그와 호환되는, 프로세서 판독가능 저장 매체.
KR1020197010843A 2016-10-24 2017-10-23 론치 심볼들에 다중 클록 위상들을 사용하여 c-phy 인터페이스에서의 송신기 인코딩 지터의 감소 KR20190068546A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/332,756 US10289600B2 (en) 2013-08-08 2016-10-24 Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
US15/332,756 2016-10-24
PCT/US2017/057900 WO2018081010A1 (en) 2016-10-24 2017-10-23 Reducing transmitter encoding jitter in a c-phy interface using multiple clock phases to launch symbols

Publications (1)

Publication Number Publication Date
KR20190068546A true KR20190068546A (ko) 2019-06-18

Family

ID=60268486

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197010843A KR20190068546A (ko) 2016-10-24 2017-10-23 론치 심볼들에 다중 클록 위상들을 사용하여 c-phy 인터페이스에서의 송신기 인코딩 지터의 감소

Country Status (6)

Country Link
EP (1) EP3529956B1 (ko)
KR (1) KR20190068546A (ko)
CN (1) CN109863729B (ko)
AU (1) AU2017350752A1 (ko)
BR (1) BR112019007643A2 (ko)
WO (1) WO2018081010A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083842A (ko) * 2019-12-11 2022-06-20 퀄컴 인코포레이티드 차세대 c-phy 인터페이스들을 위한 개방-루프, 초고속, 하프-레이트 클록 및 데이터 복구

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210034826A (ko) * 2019-09-23 2021-03-31 삼성전자주식회사 신호 수신 장치, 신호 수신 장치의 클럭 복원 방법 및 캘리브레이션 방법
US11240077B2 (en) 2019-10-29 2022-02-01 Qualcomm Incorporated C-PHY half-rate wire state encoder and decoder

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07111670B2 (ja) * 1991-03-12 1995-11-29 インターナショナル・ビジネス・マシーンズ・コーポレイション コントローラ、通信インターフェース、およびデータ伝送を制御する方法
US6348882B1 (en) * 2000-07-25 2002-02-19 Philips Electronics North America Corporation 5-ary receiver utilizing common mode insensitive differential offset comparator
US9178690B2 (en) * 2013-10-03 2015-11-03 Qualcomm Incorporated N factorial dual data rate clock and data recovery
US9172426B2 (en) * 2013-03-07 2015-10-27 Qualcomm Incorporated Voltage mode driver circuit for N-phase systems
EP2816765B1 (en) * 2013-06-17 2016-10-12 ST-Ericsson SA Three-wire three-level digital interface
US9276731B2 (en) * 2013-08-08 2016-03-01 Qualcomm Incorporated N-phase signal transition alignment
WO2015176244A1 (en) * 2014-05-21 2015-11-26 Qualcomm Incorporated Serializer and deserializer for odd ratio parallel data bus
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083842A (ko) * 2019-12-11 2022-06-20 퀄컴 인코포레이티드 차세대 c-phy 인터페이스들을 위한 개방-루프, 초고속, 하프-레이트 클록 및 데이터 복구

Also Published As

Publication number Publication date
CN109863729A (zh) 2019-06-07
EP3529956A1 (en) 2019-08-28
CN109863729B (zh) 2021-10-22
EP3529956B1 (en) 2021-07-21
AU2017350752A1 (en) 2019-03-28
WO2018081010A1 (en) 2018-05-03
BR112019007643A2 (pt) 2019-07-02

Similar Documents

Publication Publication Date Title
US10289600B2 (en) Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
JP6568247B2 (ja) N相信号遷移アライメント
KR102523235B1 (ko) 다상 클록 데이터 복원 회로 캘리브레이션
EP3326340B1 (en) Time based equalization for a c-phy 3-phase transmitter
KR102522742B1 (ko) 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구
KR20180074682A (ko) N-위상 고속 버스 턴어라운드
JP6219538B2 (ja) 複数のワイヤデータ信号のためのクロック復元回路
US10587391B2 (en) Simplified C-PHY high-speed reverse mode
WO2019212629A1 (en) Multiphase clock data recovery with adaptive tracking for a multi-wire, multi-phase interface
EP3529956B1 (en) Reducing transmitter encoding jitter in a c-phy interface using multiple clock phases to launch symbols
TWI822732B (zh) 獨立配對的3相眼圖取樣電路
KR102420905B1 (ko) 차세대 c-phy 인터페이스들을 위한 개방-루프, 초고속, 하프-레이트 클록 및 데이터 복구
KR20230132481A (ko) 고유 하프-레이트 동작으로의 c-phy 데이터-트리거된에지 생성
US11463233B2 (en) Unit interval jitter improvement in a C-PHY interface