KR102522742B1 - 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구 - Google Patents

3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구 Download PDF

Info

Publication number
KR102522742B1
KR102522742B1 KR1020187009217A KR20187009217A KR102522742B1 KR 102522742 B1 KR102522742 B1 KR 102522742B1 KR 1020187009217 A KR1020187009217 A KR 1020187009217A KR 20187009217 A KR20187009217 A KR 20187009217A KR 102522742 B1 KR102522742 B1 KR 102522742B1
Authority
KR
South Korea
Prior art keywords
clock signal
frequency
symbols
clock
wire
Prior art date
Application number
KR1020187009217A
Other languages
English (en)
Other versions
KR20180048952A (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 KR20180048952A publication Critical patent/KR20180048952A/ko
Application granted granted Critical
Publication of KR102522742B1 publication Critical patent/KR102522742B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION, OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/0807Details of the phase-locked loop concerning mainly a recovery circuit for the reference signal
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION, OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • 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
    • 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/0079Receiver details
    • H04L7/0087Preprocessing of received signal for synchronisation, e.g. by code conversion, pulse generation or edge detection
    • 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
    • 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/0331Speed 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 with a digital phase-locked loop [PLL] processing binary samples, e.g. add/subtract logic for correction of receiver clock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals

Abstract

멀티-와이어, 멀티-페이즈 인터페이스를 통한 데이터 통신을 위한 방법들, 장치 및 시스템들이 개시된다. 데이터 통신의 방법은 인터페이스 상에서 송신된 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하는 단계로서, 심볼들은 제 1 주파수에서 인터페이스 상에서 송신되는, 상기 클록 복구 회로를 구성하는 단계, 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 제 1 클록을 수정하기 위해 클록 복구 회로의 루프 지연을 조정하는 단계로서, 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 제 1 클록 신호에서의 펄스를 생성하고, 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하는 단계, 제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 단계, 및 제 1 클록 신호 및 제 2 클록 신호를 이용하여 인터페이스로부터 심볼들을 캡처하는 단계를 포함한다.

Description

3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구
관련 출원의 상호 참조
본 출원은 미국 특허청에 2015 년 9 월 1 일자로 출원된 미국 특허 비가출원 번호 제14/842,644호의 이익 및 우선권을 주장하며, 그 전체 내용은 참조로서 본원에 통합된다.
기술 분야
본 개시는 일반적으로 고속 데이터 통신 인터페이스들에 관한 것이고, 보다 구체적으로 멀티-와이어, 멀티-페이즈 데이터 통신 링크에 커플링된 수신기에서의 클록 생성에 관한 것이다.
예를 들어, 모바일 디바이스들, 이를 테면, 셀룰라 폰들의 제조자들은 상이한 제조자들을 포함한 여러 소스들로부터 모바일 디바이스들의 컴포넌트들을 구할 수 있다. 예를 들어, 셀룰라 폰에서의 애플리케이션 프로세서는 제 1 제조자로부터 획득될 수도 있는 한편, 입력 디바이스 또는 카메라는 제 2 제조자로부터 획득될 수도 있으며, 디스플레이는 제 3 제조자로부터 획득될 수도 있다. 애플리케이션 프로세서, 이미징 디바이스, 디스플레이 제어기 또는 다른 유형들의 디바이스는 표준 기반, 또는 독점적 물리 인터페이스를 이용하여 상호접속될 수도 있다. 일 예에서, 이미징 디바이스는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 정의된 카메라 시리얼 인터페이스 (Camera Serial Interface; CSI) 를 이용하여 접속될 수도 있다. 다른 예에서, 디스플레이는 MIPI (Mobile Industry Processor Interface) 얼라이언스에 의해 규정된 디스플레이 시리얼 인터페이스 (Display Serial Interface; DSI) 표준에 부합하는 인터페이스를 포함할 수도 있다.
MIPI 얼라이언스에 의해 정의된 멀티페이즈 3-와이어 (C-PHY) 인터페이스는 디바이스들 간에 정보를 송신하기 위해 컨덕터들의 트리오를 이용한다. 3 개의 와이어들 각각은 C-PHY 인터페이스를 통한 심볼의 송신 동안 3 개의 시그널링 상태들 중 한 상태에 있을 수도 있다. 클록 정보는 C-PHY 인터페이스 상에서 송신된 심볼들의 시퀀스로 인코딩되며, 수신기는 연속적인 심볼들 간의 천이들로부터 클록 신호를 생성한다. C-PHY 인터페이스의 최대 속도와 클럭 정보를 복구하기 위한 클록 및 데이터 복구 (CDR) 회로의 능력은 통신 링크의 상이한 와이어들에서 송신되는 신호들의 천이들에 관련된 최대 시간 변동에 의해 제한될 수도 있다. 수신기는 트리오 내의 모든 컨덕터들이 샘플링 에지를 제공하기 전에 안정된 시그널링 상태를 나타내는 것을 보장하도록 지연 회로들을 이용할 수도 있다. 링크의 송신 레이트는 이용되는 지연 값들에 의해 제한될 수도 있고, 멀티-와이어 인터페이스들의 시그널링 주파수들이 증가함에 따라 신뢰성있게 기능할 수 있는 클록 생성 회로들에 대한 요구가 계속되고 있다.
본원에 개시된 실시형태들은 멀티-와이어 및/또는 멀티페이즈 통신 링크 상에서 개선된 통신을 가능하게 하는 시스템들, 방법들 및 장치를 제공한다. 통신 링크는 다수의 집적 회로 (IC) 디바이스들을 갖는 모바일 단말기와 같은 장치에 배치될 수도 있다.
본 개시의 일 양태에서, 데이터 통신의 방법은 3-와이어, 3-페이즈 인터페이스 상에서 송신된 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하는 단계로서, 심볼들은 제 1 주파수에서 3-와이어, 3-페이즈 인터페이스 상에서 송신되는, 상기 클록 복구 회로를 구성하는 단계, 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 제 1 클록을 수정하기 위해 클록 복구 회로의 루프 지연을 조정하는 단계로서, 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 제 1 클록 신호에서의 펄스를 생성하고, 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하는 단계, 제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 단계로서, 제 2 클록 신호는 정수개의 심볼들에서 다른 심볼들의 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하는 단계, 및 제 1 클록 신호 및 제 2 클록 신호를 이용하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하는 단계를 포함한다.
본 개시의 일 양태에서, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치는 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 송신된 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하기 위한 수단, 및 클록 복구 회로의 루프 지연을 캘리브레이션하기 위한 수단을 포함한다. 일 동작 모드에서, 루프 지연을 캘리브레이션하기 위한 수단은 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 제 1 클록 신호를 수정한다. 제 1 동작 모드에서, 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 제 1 클록 신호에서 펄스를 생성하고, 정수개의 심볼들에서 다른 심볼들에 대한 펄스 생성을 억제하며, 본 장치는 제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하기 위한 수단을 포함하고, 여기에서 제 2 클록 신호는 정수개의 심볼들에서 다른 심볼들 각각에 대한 펄스들을 포함한다. 본 장치는 또한, 제 1 클록 신호 및 제 2 클록 신호를 이용하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하기 위한 수단을 포함할 수도 있다.
본 개시의 일 양태에서, 데이터 통신을 위한 장치는 3-와이어 버스에 커플링된 복수의 차동 수신기들, 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 심볼들의 스트림에서 송신된 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 구성되는 클록 복구 회로, 하나 이상의 레지스터들, 및 프로세싱 회로를 포함한다. 프로세싱 회로는 제 1 동작 모드에서, 제 1 클록이 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 수정될 때까지 클록 복구 회로의 루프 지연을 조정하는 것으로서, 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 제 1 클록 신호에서 펄스를 생성하고, 정수개의 심볼들에서 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하고, 그리고 제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 것으로서, 제 2 클록 신호가 정수개의 심볼들에서 다른 심볼들 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하도록 구성될 수도 있다. 하나 이상의 레지스터들은 제 1 클록 신호 및 제 2 클록 신호에서의 펄스들에 응답하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처할 수도 있다.
본 개시의 일 양태에서, 프로세서 판독가능 저장 매체가 개시된다. 저장 매체는 비일시적 저장 매체일 수도 있고, 코드를 저장할 수도 있으며, 상기 코드는 하나 이상의 프로세서들에 의해 실행될 때 하나 이상의 프로세서들로 하여금, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하게 하는 것으로서, 심볼들은 제 1 주파수에서 3-와이어, 3-페이즈 인터페이스 상에서 송신되는, 상기 클록 복구 회로를 구성하게 하고, 제 1 클록이 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 클록 복구 회로의 루프 지연을 조정하게 하는 것으로서, 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 제 1 클록 신호에서의 펄스를 생성하고, 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하게 하고, 제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하게 하는 것으로서, 제 2 클록 신호는 정수개의 심볼들에서 다른 심볼들 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하게 하고, 그리고 제 1 클록 신호 및 제 2 클록 신호를 이용하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하게 한다.
도 1 은 복수의 가용 표준들 중 하나에 따라 선택적으로 동작하는 IC 디바이들 사이의 데이터 링크를 채택하는 장치를 나타낸다.
도 2 는 복수의 가용 표준들 중 하나에 따라 선택적으로 동작하는 IC 디바이들 사이의 데이터 링크를 채택하는 장치의 시스템 아키텍처를 예시한다.
도 3 은 C-PHY 3-페이즈 데이터 인코더를 예시한다.
도 4 는 C-PHY 3-페이즈 인코딩된 인터페이스에서 시그널링을 예시한다.
도 5 는 C-PHY 3-페이즈 인코딩된 인터페이스에서의 가능성있는 상태 천이들을 예시하는 상태도이다.
도 6 은 C-PHY 디코더를 예시한다.
도 7 은 C-PHY 디코더에서 천이 검출시 신호 상승 시간들의 효과들의 일 예이다.
도 8 은 C-PHY 디코더에서의 천이 검출을 예시한다.
도 9 는 C-PHY 인터페이스 상에서 송신된 연속하는 심볼들의 페어들 사이에서 발생하는 신호 천이들의 일 예를 예시한다.
도 10 은 아이 패턴에서의 천이 영역들 및 아이 영역들을 예시한다.
도 11 은 C-PHY 3-페이즈 인터페이스에 대해 생성된 아이 패턴의 일 예를 예시한다.
도 12 는 C-PHY 3-페이즈 인터페이스에 대한 CDR 회로의 일 예를 예시한다.
도 13 은 도 12 의 CDR 회로와 연관된 타이밍을 예시한다.
도 14 는 C-PHY 3-페이즈 신호 상에서 송신된 신호들 사이의 스큐보다 더 짧은 루프 시간을 갖는 CDR 회로와 연관된 타이밍을 예시한다.
도 15 는 C-PHY 3-페이즈 신호의 심볼 간격보다 더 긴 루프 시간을 갖는 CDR 회로와 연관된 타이밍을 예시한다.
도 16 은 본원에 개시된 특정 양태들에 따라 적응된 CDR 의 동작을 예시하는 타이밍도이다.
도 17 은 본원에 개시된 특정 양태들에 따른 클록 생성 회로의 일 예를 예시한다.
도 18 은 본원에 개시된 특정 양태들에 따라 제공된 클록 생성 회로를 캘리브레이션하는데 이용될 수도 있는 회로의 일 예를 예시한다.
도 19 는 본원에 개시된 특정 양태들에 따라 적응될 수도 있는 프로세싱 회로를 채용하는 장치의 일 예를 예시하는 블록도이다.
도 20 은 본원에 개시된 특정 양태들에 따른 클록 생성 방법의 흐름도이다.
도 21 은 본원에 개시된 특정 양태들에 따라 적응되는 프로세싱 회로를 채택하는 프로세싱을 채택하는 장치에 대한 하드웨어 구현의 일 예를 예시하는 다이어그램이다.
첨부된 도면들과 연계하여 하기에 설명되는 상세한 설명은, 여러 구성들의 설명으로서 의도된 것이며 본원에서 설명되는 개념들이 실시될 수도 있는 구성들만을 나타내도록 의도된 것은 아니다. 상세한 설명은 여러 개념들의 철저한 이해를 제공하기 위한 목적으로 특정 세부사항들을 포함한다. 그러나, 이들 개념들이 이들 특정 세부사항들 없이 실시될 수도 있음이 당업자에게는 명백할 것이다. 몇몇 사례들에서, 이러한 개념들을 모호하게 하는 것을 방지하기 위해 공지의 구조들 및 컴포넌트들이 블록도의 형태로 도시된다.
본 출원에서 이용된 바와 같이, 용어들 "컴포넌트", "모듈", "시스템" 등은 하드웨어, 펌웨어, 하드웨어와 펌웨어의 조합, 소프트웨어, 실행 중인 소프트웨어와 같은 컴퓨터 관련 엔티티를 포함하지만 이들에 제한되는 것은 아니도록 의도된다. 예를 들면, 컴포넌트는 프로세서 상에서 동작하는 프로세스, 프로세서, 오브젝트, 실행가능물, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수도 있지만, 이들에 제한되는 것은 아니다. 예시로서, 컴퓨팅 디바이스 상에서 실행하는 애플리케이션 및 컴퓨팅 디바이스 양쪽이 컴포넌트일 수 있다. 하나 이상의 컴포넌트들은 프로세스 및/또는 실행의 스레드 내에 상주할 수도 있고, 컴포넌트는 하나의 컴퓨터에 국부화되고/되거나 두 개 이상의 컴퓨터들 사이에 분산될 수도 있다. 또한, 이들 컴포넌트들은 여러 데이터 구조들이 저장된 여러 컴퓨터 판독 가능한 매체로부터 실행될 수도 있다. 컴포넌트들은 하나 이상의 데이터 패킷들 (예를 들면, 로컬 시스템의 다른 컴포넌트, 분산 시스템 및/또는 인터넷과 같은 네트워크를 통해 신호를 통해 다른 시스템들과 상호작용하는 하나의 컴포넌트로부터의 데이터) 을 구비하는 신호에 따르는 것과 같이 로컬 및/또는 원격 프로세스들을 통해 통신할 수도 있다.
또한, 용어 "또는" 은 배타적 "or"이기보다는 포괄적 "or"을 의미하도록 의도된다. 즉, 달리 특정되어 있지 않거나 또는 문맥으로터 명백한 것이 아닌 한, 구절 "X 는 A 또는 B 를 채택한다"는 자연적으로 포괄적 조합들 중 어느 것을 의미하도록 의도된다. 즉, 구절 "X 는 A 또는 B 를 채택한다" 는 다음의 예시들 중 임의의 예시에 의해 만족된다: X 는 A 를 채택한다; X 는 B 를 채택한다; 또는 X 는 A 와 B 양쪽 모두를 채택한다. 또한, 본 출원 및 첨부된 청구항들에서 이용된 바와 같은 관사 "하나 (a)" 및 "한 (an)" 은 일반적으로, 단수 형태인 것으로 특정되거나 문맥에서 명확하지 않는 한 "하나 이상" 을 의미하는 것으로 해석되어야 한다.
개관
본 발명의 특정 양태들은 MIPI 얼라이언스에 의해 규정된 C-PHY 인터페이스에 적용가능할 수도 있으며, 이는 모바일 디바이스, 이를 테면, 전화기, 모바일 컴퓨팅 디바이스, 전자 기기, 자동차 전자 기기, 항공 시스템 등의 서브컴포넌트들인 전자 디바이스들을 접속하도록 배치될 수도 있다. 모바일 장치의 예들은 셀룰라 폰, 스마트폰, 세션 개시 프로토콜 (SIP) 폰, 랩탑, 노트북, 넷북, 스마트 북, 개인 휴대 정보 단말기 (PDA), 위성 라디오, 글로벌 포지셔닝 시스템 (GPS) 디바이스, 멀티미디어 디바이스, 비디오 디바이스, 디지털 오디오 플레이어 (예를 들어, MP3 플레이어), 카메라, 게임 콘솔, 웨어러블 컴퓨팅 디바이스 (예를 들어, 스마트워치, 헬스 또는 피트니스 트랙커 등), 가전제품, 센서, 벤딩 머신 또는 임의의 다른 유사한 기능 디바이스를 포함한다.
C-PHY 인터페이스는 대역폭이 제한된 채널에서 높은 스루풋을 제공할 수 있는 고속 시리얼 인터페이스이다. C-PHY 인터페이스는 디스플레이 및 카메라를 포함하는 주변기기들에 애플리케이션 프로세서들을 접속하도록 배치될 수도 있다. C-PHY 인터페이스는 데이터를, 트리오 또는 와이어들의 트리오로서 지칭될 수도 있는 3 개의 와이어들의 세트를 통하여 3 페이즈 신호에서 송신되는 심볼들로 인코딩한다. 3-페이즈 신호는 상이한 페이즈들에서 트리오의 각각의 와이어에서 송신된다. 각각의 3-와이어 트리오는 통신 링크에 레인을 제공한다. 심볼 간격은 단일의 심볼이 트리오의 시그널링 상태를 제어하는 시간 간격으로서 정의될 수도 있다. 각각의 심볼 구간에서, 하나의 와이어는 "비구동되는" 반면, 3 개의 와이어들 중 나머지 2 개는 차동방식으로 구동되어, 2 개의 차동 구동된 와이어들 중 하나가 제 1 전압 레벨을 취하고 다른 차동 구동된 와이어는 제 1 전압 레벨과는 상이한 제 2 전압 레벨을 취하도록 된다. 비구동된 와이어는 제 1 전압 레벨과 제 2 전압 레벨 사이의 중간 레벨 전압에 또는 그 부근에 있는 제 3 전압 레벨을 취하도록 플로팅, 구동 및/또는 터미네이션될 수도 있다. 일 예에서, 구동 전압 레벨들은 +V 및 -V 일 수도 있고, 비구동 전압은 0V 일 수 있다. 다른 예에서, 구동 전압 레벨들은 +V 및 0V 일 수도 있고 비구동 전압은 +V/2 일 수도 있다. 연속적으로 송신된 각각의 심볼들의 페어에서 상이한 심볼들이 송신되고, 상이한 심볼 간격들에서 상이한 와이어들의 페어가 차동적으로 구동될 수도 있다.
도 1 은 C-PHY 3-페이즈 통신 링크를 채택할 수도 있는 장치 (100) 의 예를 나타낸다. 장치 (100) 는 무선 액세스 네트워크 (RAN), 코어 액세스 네트워크, 인터넷 및/또는 다른 네트워크와 RF (radio frequency) 트랜시버 (106) 를 통하여 통신하는 무선 통신 디바이스를 포함할 수도 있다. 통신 트랜시버 (106) 는 프로세싱 회로 (102) 에 동작가능하게 커플링될 수도 있다. 프로세싱 회로 (102) 는 하나 이상의 IC 디바이스들, 이를 테면, 응용 주문형 IC (ASIC) (108) 를 포함할 수도 있다. ASIC (108) 은 하나 이상의 프로세싱 디바이스들, 논리 회로들 등을 포함할 수도 있다. 프로세싱 회로 (102) 는 프로세싱 회로 (102) 및 디바이스들에 의한 실행 또는 다른 사용을 위한 명령들 및 데이터를 저장 및 유지하는 프로세서 판독가능 디바이스들을 포함할 수도 있는 메모리 디바이스들 (112), 및/또는 디스플레이 (124) 를 지원하는 메모리 카드들과 같은 프로세서 판독가능 스토리지에 포함 및/또는 커플링될 수도 있다. 프로세싱 회로 (102) 는 무선 디바이스의 메모리 디바이스 (112) 와 같은 저장 매체 내에 상주하는 소프트웨어 모듈들의 실행을 인에이블 및 지원하는 애플리케이션 프로그래밍 인터페이스 (API)(110) 계층 및 오퍼레이팅 시스템 중 하나 이상에 의해 제어될 수도 있다. 메모리 디바이스 (112) 는 ROM (read-only memory), DRAM (dynamic random-access memory), 하나 이상의 유형들의 PROM (programmable read-only memory), 플래쉬 카드들 또는 프로세싱 시스템들 및 컴퓨팅 플랫폼들에 이용될 수 있는 임의의 메모리 유형을 포함할 수도 있다. 프로세싱 회로 (102) 는 장치 (100) 를 구성하고 동작시키는데 이용된 동작 파라미터들 및 다른 정보를 유지할 수 있는 로컬 데이터베이스 (114) 를 포함하거나 로컬 데이터베이스 (114) 에 액세스할 수도 있다. 로컬 데이터베이스 (114) 는 데이터베이스 모듈, 플래시 메모리, 자기 매체, EEPROM (electrically-erasable PROM), 광학 매체, 테이프, 소프트 또는 하드 디스크 등 중 하나 이상을 이용하여 구현될 수도 있다. 프로세싱 회로는 또한, 다른 컴포넌트들 중에서 안테나 (122), 디스플레이 (124), 오퍼레이터 제어부들, 이를 테면 버튼 (128) 및 키패드 (126) 와 같은 외부 디바이스들에 동작가능하게 커플링될 수도 있다.
도 2 는 통신 링크 (220) 를 통해 데이터 및 제어 정보를 교환할 수 있는 복수의 IC 디바이스들 (202 및 230) 을 포함하는 장치 (200) 의 특정 양태들을 개략적으로 예시하는 블록도이다. 통신 링크 (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) 로 지칭될 수도 있다. 제 1 및 제 2 양쪽의 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) 에 의해 그리고/또는 통신 링크 (220) 의 채널 (222, 224 및/또는 226) 에 의해 용이하게 실시될 수도 있다.
역방향 채널 (224) 은 순방향 채널 (222) 과 동일한 방식으로 동작될 수도 있으며, 순방향 채널 (222) 과 역방향 채널 (224) 은 대등한 속도들 또는 상이한 속도들로 송신할 수도 있으며, 여기서 속도는 데이터 전송 레이트 및/또는 클록킹 레이트들로 표현될 수도 있다. 순방향 및 역방향 데이터 레이트들은 애플리케이션에 의존하여, 크기의 정도들에 의해 실질적으로 동일 또는 상이할 수도 있다. 일부 애플리케이션들에서, 단일 양방향 채널 (226) 은 제 1 IC 디바이스 (202) 및 제 2 IC 디바이스 (230) 사이의 통신들을 지원할 수도 있다. 순방향 채널 (222) 및/또는 역방향 채널 (224) 은 예를 들어, 순방향 및 역방향 채널들 (222 및 224) 이 동일한 물리적 접속들을 공유하고 반이중 방식으로 동작할 때, 양방향 모드로 동작하도록 구성가능할 수도 있다. 일 예에서, 통신 링크 (220) 는 산업 또는 다른 표준에 따라서, 제 1 IC 디바이스 (202) 및 제 2 IC 디바이스 (230) 사이에서 제어, 커맨드 및 다른 정보를 통신하도록 동작될 수도 있다.
도 2 의 통신 링크 (220) 는 C-PHY 를 위한 MIPI 얼라이언스 사양들에 따라 구현될 수도 있고, (M 개의 와이어들로 표기되는) 복수의 신호 와이어들을 포함하는 와이어 버스를 제공할 수도 있다. M 개의 와이어들은 모바일 디스플레이 디지털 인터페이스 (MDDI) 와 같은 고속 디지털 인터페이스에서 N 페이즈 인코딩된 데이터를 반송하도록 구성될 수도 있다. M 개의 와이어들은 채널들 (222, 224 및 226) 중 하나 이상에서 N 페이즈 극성 인코딩을 용이하게 실시할 수도 있다. 물리 계층 드라이버들 (210 및 240) 은 통신 링크 (220) 를 통한 송신을 위하여 N-페이즈 극성 인코딩된 데이터를 생성하도록 구성 또는 적응될 수도 있다. N-페이즈 극성 인코딩의 이용은 고속 데이터 전송을 제공하고, 다른 인터페이스들의 전력의 1/2 또는 그 미만을 소비할 수도 있는데, 이는 더 적은 드라이버들이 N-페이즈 극성 인코딩된 데이터 링크들에서 액티브 상태에 있기 때문이다.
N-페이즈 극성 인코딩 디바이스들 (210 및/또는 240) 은 일반적으로 통신 링크 (220) 상에서 천이 당 다수의 비트들을 인코딩할 수 있다. 일 예에서, 3-페이즈 인코딩 및 극성 인코딩의 조합은 프레임 버퍼 없이 제 2 LCD 드라이버 IC 마다 WVGA (wide video graphics array) 80 개 프레임들을 지원하는데 사용될 수도 있어, 디스플레이 리프레시를 위해 810 Mbps 에서 픽셀 데이터를 전달한다.
도 3 은 도 2 에 나타낸 통신 링크 (220) 의 특정 양태들을 구현하기 위해 이용될 수도 있는 3-와이어, 3-페이즈 극성 인코더를 예시하는 개략적 다이어그램 (300) 이다. 3-와이어, 3-페이즈 인코딩의 예는 오직 본 발명의 특정 양태들의 설명들을 간략화하기 위한 목적으로 선택된다. 3-와이어, 3-페이즈 인코더들에 대하여 개시된 원리들 및 기술들은 M-와이어, N-페이즈 극성 인코더들의 다른 구성들에 적용될 수 있다.
3-와이어, 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, -1 및 0) 을 이용하여 표기될 수도 있다.
3-와이어, 3-페이즈 극성 인코더는 신호 와이어들 (310a, 310b 및 310c) 의 시그널링 상태를 제어하기 위해 라인 드라이버들 (308) 을 채택할 수도 있다. 드라이버들 (308) 은 유닛 레벨 전류 모드 또는 전압 모드 드라이버들로서 구현될 수도 있다. 일 예에서, 각각의 드라이버 (308) 는 대응하는 신호 와이어들 (310a, 310b 및 310c) 의 출력 상태를 결정하는 신호들 (316a, 316b 및 316c) 중 2 개 이상의 신호들의 세트들을 수신할 수도 있다. 일 예에서, 2 개의 신호들 (316a, 316b 및 316c) 의 세트는 하이일 때, 신호 와이어들 (310a, 310b, 및 310c) 을 각각 상위 레벨 또는 하위 레벨 전압을 향하여 구동시키는 풀업 및 풀다운 회로들을 활성화시키는 풀업 신호 (PU 신호) 및 풀다운 신호 (PD 신호) 를 포함할 수도 있다. 이 예에서, PU 신호 및 PD 신호가 모두 로우일 때, 신호 와이어 (310a, 310b 및 310c) 는 중간 레벨 전압으로 터미네이션될 수도 있다.
M-와이어, N-페이즈 극성 인코딩 방식에서 각각의 송신된 심볼 간격에 대해, 적어도 하나의 신호 와이어 (310a, 310b 또는 310c) 는 중간 레벨/비구동된 (0) 전압 또는 전류 상태에 있는 한편, 양으로 구동된 (+1 전압 또는 전류 상태) 신호 와이어들 (310a, 310b 또는 310c) 의 수는 음으로 구동된 (-1 전압 또는 전류 상태) 신호 와이어 (310a, 310b 또는 310c) 의 수와 동일하여, 수신기로 흐르는 전류의 합이 항상 0 이도록 한다. 각각의 심볼에 대해, 적어도 하나의 신호 와이어 (310a, 310b 또는 310c) 의 상태는 선행하는 송신 간격에서 송신된 심볼로부터 변경된다.
동작에서, 맵퍼 (302) 는 16-비트 데이터 (310) 를 수신하여 7 개 심볼들 (312) 에 매핑할 수도 있다. 3-와이어 예에서, 7 개 심볼들 각각은 하나의 심볼 간격 동안 신호 와이어들 (310a, 310b, 및 310c) 의 상태들을 정의한다. 7 개 심볼들 (312) 은 각각의 신호 와이어 (310a, 310b 및 310c) 에 대한 타이밍된 심볼들의 시퀀스 (314) 를 제공하는 병렬-투-직렬 컨버터들 (304) 을 이용하여 직렬화될 수도 있다. 심볼들의 시퀀스 (314) 는 통상적으로 송신 클록을 이용하여 타이밍된다. 3-와이어, 3-페이즈 인코더 (306) 는 맵퍼에 의해 한번에 하나의 심볼이 생성된 7 개 심볼들의 시퀀스 (314) 를 수신하고, 각각의 심볼 간격 동안 각각의 신호 와이어 (310a, 310b 및 310c) 의 상태를 컴퓨팅한다. 3-와이어 인코더 (306) 는 신호 와이어들 (310a, 310b 및 310c) 의 이전 상태들 및 현재 입력 심볼들 (314) 에 기초하여 신호 와이어들 (310a, 310b 및 310c) 의 상태들을 선택한다.
M-와이어, N-페이즈 인코딩의 이용은, 심볼당 비트들이 정수가 아닌 경우, 다수의 비트들이 복수의 심볼들로 인코딩되는 것을 허용한다. 3-와이어 통신 링크의 예에서, 동시에 구동될 수도 있는 2 개 와이어들의 3 개의 이용가능한 조합들, 및 구동되는 와이어들의 페어에서 극성의 2 개의 가능한 조합들이 존재하여, 6 개의 가능한 상태들을 발생시킨다. 각각의 천이가 전류 상태로부터 발생하기 때문에 6 개 상태들 중 5 개 상태는 매 천이에서 이용가능하다. 적어도 하나의 와이어의 상태는 각각의 천이시 변화하도록 요구된다. 5 개 상태들에서,
Figure 112018032126265-pct00001
비트들이 심볼마다 인코딩될 수도 있다. 따라서, 심볼당 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-페이즈 인코딩 시스템에 이용될 때, 각각의 상태가 모든 시그널링 간격에서 적어도 하나의 신호 와이어 (310a, 310b 및/또는 310c) 상에 존재하지만, 2 개 이상의 신호 와이어들 (310a, 310b 및/또는 310c) 이 각각의 시그널링 간격에서 동일한 시그널링 상태에 있을 수 있다.
정보는 각각의 페이즈 천이 (410) 에서 회전 방향으로 인코딩될 수도 있고, 3-페이즈 신호는 각각의 시그널링 상태에 대해 방향을 변경할 수도 있다. 회전 방향은 어느 신호 와이어들 (310a, 310b 및/또는 310c) 이 페이즈 천이 전 및 후에 '0' 상태에 있는지를 고려하는 것에 의해 결정될 수도 있는데, 이는 비구동 신호 와이어 (310a, 310b 및/또는 310c) 가 회전 방향과 무관하게 회전하는 3-페이즈 신호에서의 모든 시그널링 상태에서 변화하기 때문이다.
인코딩 방식은 또한 능동으로 구동되는 2 개의 신호 와이어들 (310a, 310b 및/또는 310c) 의 극성 (408) 으로 정보를 인코딩할 수도 있다. 3-와이어 구현에서 임의의 시간에서, 신호 와이어들 (310a, 310b, 310c) 중 정확히 2 개의 신호 와이어는 반대 방향으로의 전류들로 그리고/또는 전압 차이로 구동된다. 일 구현예에서, 데이터는 2 개의 비트 값들 (412) 을 이용하여 인코딩될 수도 있으며, 여기서 하나의 비트는 페이즈 천이 (410) 의 방향으로 인코딩되고 제 2 비트는 전류 상태에 대한 극성 (408) 으로 인코딩된다.
타이밍 차트 (400) 는 페이즈 회전 방향 및 극성 모두를 이용하는 데이터 인코딩을 예시한다. 커브들 (402, 404 및 406) 은 다수의 페이즈 상태들에 대해 각각 3 개의 신호 와이어들 (310a, 310b 및 310c) 상에서 반송되는 신호들에 관련된다. 초기에, 페이즈 천이들 (410) 의 회전이 시간 414 에서 최상위 비트의 바이너리 '0' 으로 표현되는 반시계방향으로 스위칭될 때까지, 페이즈 천이들 (410) 은 시계 방향으로 존재하고 최상위 비트는 바이너리 '1' 에 의해 설정된다. 최하위 비트는 각각의 상태에서 신호의 극성 (408) 을 반영한다.
본원에 설명된 특정 양태들에 따르면, 1 비트의 데이터는 3-와이어, 3-페이즈 인코딩 시스템에서 회전으로 또는 페이즈 변화로 인코딩되고, 추가 비트는 2 개의 구동된 와이어들의 극성으로 인코딩될 수도 있다. 추가 정보는 전류 상태로부터의 가능한 상태들의 어느 것으로의 천이를 허용하는 것에 의해 3-와이어, 3-페이즈 인코딩 시스템의 각각의 천이시 인코딩될 수도 있다. 3 개의 회전 페이즈들 및 각각의 페이즈에 대한 2 개의 극성들이 주어지면, 3-와이어, 3-페이즈 인코딩 시스템에서는 6 개의 상태들이 이용가능하다. 따라서, 임의의 전류 상태로부터 5 개의 상태들이 이용가능하고, 심볼 (천이) 당
Figure 112018032126265-pct00002
비트들이 존재할 수도 있어 맵퍼 (302) 가 16-비트 워드를 수용하여 이를 7 개의 심볼들로 인코딩할 수도 있다.
N-페이즈 데이터 전달은 통신 매체, 이를 테면, 버스에 제공될 때 3개 보다 많은 와이어들을 이용할 수도 있다. 동시에 구동될 수도 있는 추가적인 신호 와이어들의 이용은 상태들 및 극성들의 더 많은 조합들을 제공하고, 상태들 사이의 각각의 천이시 더 많은 비트들의 데이터가 인코딩되는 것을 허용한다. 이는 증가된 대역폭을 제공하면서, 데이터 비트들을 송신하기 위해 다수의 차동 페어들을 이용하는 접근방식에 비해 전력 소모를 감소시키고 시스템의 스루풋을 개선시킨다.
일 예에서, 인코더는 6 개의 와이어들을 이용하여 심볼들을 송신하고, 여기에서 와이어들의 2 개의 페어들이 각각의 상태에 대해 구동된다. 6 개의 와이어들은 A 내지 F 로 라벨링될 수도 있어, 일 상태에서, 와이어 A 및 F 는 양으로 구동되고 와이어들 B 및 E 는 음으로 구동되고 그리고 C 및 D 는 비구동된다 (또는 전류를 운반하지 않는다). 6 개의 와이어들에 대하여, 6 개의 와이어들에 대하여, 능동으로 구동되는 와이어들의
Figure 112018032126265-pct00003
개의 가능한 조합들이 있을 수도 있고, 각각의 위상 상태에 대한 극성의:
Figure 112018032126265-pct00004
개의 상이한 조합들을 갖는다.
15 개의 능동으로 구동되는 와이어들의 조합들은 다음을 포함할 수도 있다:
Figure 112018032126265-pct00005
구동되는 4 개의 와이어들 중에서, 2 개의 와이어들의 가능한 조합들이 양으로 구동된다 (다른 2개는 음이어야 한다). 극성의 조합들은 다음을 포함할 수도 있다:
Figure 112018032126265-pct00006
따라서, 상이한 상태들의 총 수는 15 x 6 = 90 로서 계산될 수도 있다. 심볼들 사이의 천이를 보장하기 위하여, 89개의 상태들이 임의의 전류 상태로부터 이용가능하며, 각각의 심볼에서 인코딩될 수도 있는 비트들의 수는 심볼 당
Figure 112018032126265-pct00007
비트들로서 계산될 수도 있다. 이 예에서, 5 x 6.47 = 32.35 비트인 것으로 주어지면, 32-비트 워드가 맵퍼에 의해 5 개의 심볼들로 인코딩될 수 있다.
임의의 사이즈의 버스에 대하여 구동될 수 있는 와이어들의 조합들의 수에 대한 일반 식은 그 버스에서의 와이어들의 수 및 동시에 구동되는 버스에서의 와이어들의 수의 함수로서 나타낸다:
Figure 112018032126265-pct00008
구동중에 있는 와이어들에 대한 극성의 조합들의 수를 계산하는 하나의 식은 다음과 같다:
Figure 112018032126265-pct00009
심볼 당 동등한 비트들의 수는 다음과 같이 표현될 수도 있다:
Figure 112018032126265-pct00010
도 5 는 3-와이어, 3-페이즈 통신 링크의 예에서 6 개의 상태들 및 30 개의 가능한 상태 천이들을 나타내는 상태 다이어그램 (500) 이다. 상태 다이어그램 (500) 에서의 가능한 상태들 (502, 504, 506, 512, 514 및 516) 은 도 4 의 순환 상태 다이어그램 (450) 에 도시된 상태들을 포함하여 이 상태들로 확장된다. 상태 엘리먼트 (520) 의 예시로서 도시된 바와 같이, 상태 다이어그램 (500) 에서의 각각의 상태 (502, 504, 506, 512, 514 및 516) 는 (각각 신호 와이어들 (310a, 310b 및 310c) 상에서 송신되는) 신호들 (A, B 및 C) 의 전압 상태를 나타내는 필드 (522), 개별적으로 차동 수신기들 (예를 들어, 도 6 의 차동 수신기들 (602) 을 참조) 에 의한 와이어 전압들의 감산의 결과를 나타내는 필드 (524), 회전 방향을 나타내는 필드 (526) 를 포함한다. 예를 들어, 상태 (502)(+x) 에서, 와이어 A = +1, 와이어 B = -1 및 와이어 C = 0 가 되어, 차동 수신기 (702a) 의 출력은 (A-B) = +2 을 가져오고, 차동 수신기 (702b) 의 출력은 (B-C) = -1 가져오고 차동 수신기 (702c) 의 출력은 (C-A) = +1 을 가져온다. 상태 다이어그램에 의해 예시된 바와 같이, 수신기에서의 페이즈 변화 검출 회로부에 의해 행해진 천이 결정들은 -2, -1, 0, +1 및 +2 전압 상태들을 포함하는, 차동 수신기들에 의해 생성된 5 개의 가능한 레벨들에 기초한다.
도 6 은 3-와이어, 3-페이즈 디코더 (600) 의 특정 양태들을 예시하는 다이어그램이다. 차동 수신기들 (602) 및 와이어 상태 디코더 (604) 는 서로에 대하여 3 개의 송신 라인들 (예를 들어, 도 3 에 예시된 신호 와이어들 (310a, 310b 및 310c)) 의 상태의 디지털 표현을 제공하고, 그리고 이전 심볼 주기에서 송신된 상태에 비해 3 개의 송신 라인들의 상태에서의 변화를 검출하도록 구성된다. 7 개의 연속하는 상태들은 디맵퍼 (608) 에 의해 프로세싱될 7 개의 심볼들의 세트를 획득하기 위해 직렬-투-병렬 컨버터들 (606) 에 의해 어셈블리된다. 디맵퍼 (608) 는 선입선출 (FIFO) 레지스터 (610) 에서 버퍼링될 수도 있는 16 비트들의 데이터를 생성한다.
와이어 상태 디코더 (604) 는 신호 와이어들 (310a, 310b 및 310c) 상에서 수신되는 페이즈 인코딩된 신호들로부터 심볼들 (614) 의 시퀀스를 추출한다. 심볼들 (614) 은 본원에 개시된 페이즈 회전 및 극성의 조합으로서 인코딩된다. 와이어 상태 디코더는 신호 와이어들 (310a, 310b 및 310c) 로부터 심볼들을 신뢰성있게 캡처하는데 이용될 수 있는 클록 (626) 을 추출하는 CDR 회로 (624) 를 포함할 수도 있다. 천이는 각각의 심볼 바운더리에서 신호 와이어들 (310a, 310b 및 310c) 중 적어도 하나에서 발생하며, CDR 회로 (624) 는 일 천이 또는 다수의 천이들의 발생에 기초하여 클록 (626) 을 생성하도록 구성될 수도 있다. 클록의 에지는 모든 신호 와이어들 (310a, 310b 및 310c) 이 안정화되는 시간을 허용하도록 그리고 이에 의해 현재 심볼이 디코딩 목적을 위하여 캡처되는 것을 보장하도록 지연될 수도 있다.
3-페이즈 인터페이스에서의 지터
3-페이즈 송신기는 고, 저, 및 중간 레벨 전압들을 송신 채널 상에 제공하는 드라이버들을 포함한다. 이는 연속하는 심볼 간격들 간에 일부 가변적인 천이들을 일으킨다. 저-투-고, 및 고-투-저 전압 천이들은 풀 스윙 천이들로 지칭될 수도 있는 한편, 저-투-중간 및 고-투-중간 전압 천이들은 하프-스윙 천이들로 지칭될 수도 있다. 상이한 유형들의 천이들은 상이한 상승 또는 하강 시간들을 가질 수도 있고, 수신기에서 상이한 제로 크로싱을 일으킬 수도 있다. 이들 차이들은 "인코딩 지터"를 일으킬 수 있고 이는 링크 신호 무결성 성능에 영향을 줄 수도 있다.
도 7 은 C-PHY 3-페이즈 송신기의 출력에서 천이 변동성의 특정 양태들을 예시하는 타이밍도 (700) 이다. 신호 천이 시간들에서의 변동성은 3-페이즈 시그널링에 이용된 상이한 전압 및/또는 전류 레벨들의 존재에 기여할 수도 있다. 타이밍도 (700) 는 단일의 신호 와이어 (310a, 310b 또는 310c) 로부터 수신된 신호에서의 천이 시간들을 예시한다. 제 1 심볼 Symn (702) 은 제 2 심볼 Symn+1 (724) 이 제 2 심볼 간격에서 송신될 때의 시간 (722) 에서 종료하는 제 1 심볼 간격에서 송신된다. 제 2 심볼 간격은 제 3 심볼 Symn+2 (706) 이 제 3 심볼 간격에서 송신될 때 시간 (726) 에서 종료할 수도 있고, 제 3 심볼 간격은 제 4 심볼 Symn+3 (708) 이 제 4 심볼 간격에서 송신될 때 종료한다. 제 1 심볼 (702) 에 의해 결정된 상태로부터 제 2 심볼 (704) 에 대응하는 상태로의 천이는 신호 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (718 및/또는 720) 에 도달하는데 걸리는 시간에 기여가능한 지연 (712) 후에 검출가능할 수도 있다. 임계 전압들은 신호 와이어 (310a, 310b 또는 310c) 의 상태를 결정하는데 이용될 수도 있다. 제 2 심볼 (704) 에 의해 결정된 상태로부터 제 3 심볼 (706) 에 대한 상태로의 천이는 신호 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (718 및/또는 720) 중 하나에 도달하는데 걸리는 시간에 기여가능한 지연 (714) 후에 검출가능할 수도 있다. 제 3 심볼 (706) 에 의해 결정된 상태로부터 제 4 심볼 (708) 에 대한 상태로의 천이는 신호 와이어 (310a, 310b 또는 310c) 에서의 전압이 임계 전압 (718 및/또는 720) 에 도달하는데 걸리는 시간에 기여가능한 지연 (716) 후에 검출가능할 수도 있다. 지연들 (712, 714 및 716) 은 상이한 지속기간들을 가질 수도 있으며, 이는 3 개의 상태들 및/또는 상이한 천이 양들과 연관된 상이한 전압 또는 전류 레벨들 사이의 천이들에 불균등한 영향을 줄 수도 있는 디바이스 제조 프로세스들 및 동작 조건들에서의 변동들에 부분적으로 기여가능할 수도 있다. 이들 차이들은 C-PHY 3-페이즈 수신기에서의 지터 및 다른 문제들에 기여할 수도 있다.
도 8 은 C-PHY 3-페이즈 인터페이스에서 수신기에 제공될 수도 있는 CDR 회로들의 특정 양태들을 예시하는 블록 개략도 (800) 를 포함한다. 차동 수신기들 (802a, 802b 및 802c) 의 세트는 트리오에서의 3 개의 신호 와이어들 (310a, 310b 및 310c) 의 각각을 트리오에서의 3 개의 신호 와이어들 (310a, 310b 및 310c) 중 다른 것과 비교하는 것에 의해 상이한 신호들 (810) 의 세트를 생성하도록 구성된다. 예시된 예에서, 제 1 차동 수신기 (802a) 는 신호 와이어들 (310a 및 310b) 의 상태들을 비교하고, 제 2 차동 수신기 (802b) 는 신호 와이어들 (310b 및 310c) 의 상태들을 비교하고 제 3 차동 수신기 (802c) 는 신호 와이어들 (310a 및 310c) 의 상태들을 비교한다. 따라서, 차동 수신기들 (802a, 802b 및 802c) 중 적어도 하나의 출력이 각각의 심볼 간격의 종료시 변화하기 때문에, 천이 검출 회로 (804) 는 페이즈 변화의 발생을 검출하도록 구성될 수 있다.
송신된 심볼들 사이의 특정 천이들이 단일의 차동 수신기 (802a, 802b 또는 802c) 에 의해 검출가능할 수도 있고, 다른 천이들은 차동 수신기들 (802a, 802b 및 802c) 중 둘 이상에 의해 검출될 수도 있다. 일 예에서, 2 개의 와이어들의 상태들 또는 상대적 상태들은, 대응하는 차동 수신기 (802a, 802b 또는 802c) 의 천이 및 출력이 페이즈 천이 후에 또한 변경되지 않을 수도 있는 후에는, 변경되지 않을 수도 있다. 다른 예에서, 신호 와이어들 (310a, 310b 및/또는 310c) 의 페어에서의 양쪽 와이어들이 제 1 시간 간격에서 동일한 상태에 있을 수도 있고, 양쪽 와이어들이 제 2 시간 간격에서 동일한 제 2 상태에 있을 수도 있고 대응하는 차동 수신기 (802a, 802b 또는 802c) 는 페이즈 천이 후에 변경되지 않을 수도 있다. 따라서, 클록 생성 회로 (806) 는 페이즈 천이가 발생할 때를 결정하기 위하여 모든 차동 수신기들 (802a, 802b 및 802c) 의 출력들을 모니터링하도록 천이 검출 회로 (80) 및/또는 다른 로직을 포함할 수도 있다. 클록 생성 회로는 검출된 페이즈 천이들에 기초하여 수신 클록 신호 (808) 를 생성할 수도 있다.
3 와이어들의 시그널링 상태들에서의 변화들은 신호 와이어들 (310a, 310b 및/또는 310c) 의 상이한 조합들에 대한 상이한 시간들에서 검출될 수도 있다. 시그널링 상태 변화들의 검출 타이밍은 발생하였던 시그널링 상태 변화의 유형에 따라 다를 수도 있다. 이러한 변동성의 결과는 도 8 의 타이밍 차트 (850) 에 예시된다. 마커들 (822, 824 및 826) 은 천이 검출 회로 (804) 에 제공된 차동 신호들 (810) 에서의 천이들의 발생을 나타낸다. 마커들 (822, 824 및 826) 은 단지 설명의 명료화를 위하여 타이밍 차트 (850) 에 상이한 높이들이 배정되며, 마커들 (822, 824 및 826) 의 상대 높이들은 클록 생성 또는 데이터 디코딩에 이용된 전압 또는 전류 레벨들, 극성 또는 가중치들에 대한 특정 관계들을 보여주는 것으로 의도되지 않는다. 타이밍 차트 (850) 는 3 개의 신호 와이어들 (310a, 310b 및 310c) 상에서 페이즈 및 극성으로 송신되는 심볼들과 연관된 천이들의 타이밍의 효과를 예시한다. 타이밍 차트 (850) 에서, 일부 심볼들 사이의 천이들은 가변적인 캡처 윈도우들 (830a, 830b, 830c, 830d, 830e, 830f 및/또는 830g)(이들은 총괄적으로 심볼 캡처 윈도우들 (830)) 을 일으킬 수도 있고, 이들 윈도우 동안에 심볼들이 신뢰성있게 캡처될 수도 있다. 검출된 복수의 상태 변화들 및 이들의 상대적 타이밍은 클록 신호 (808) 상에 지터를 일으킬 수도 있다.
C-PHY 통신 링크의 스루풋은 신호 천이 시간들에서의 변동성 및 지속기간에 의해 영향을 받을 수도 있다. 예를 들어, 검출 회로들에서의 변동성은 전압 및 전류 소스들의 제조 프로세스 허용오차들, 변동성 및 안정성, 및 동작 온도 뿐만 아니라 신호 와이어들 (310a, 310b 및 310c) 의 전기 특성들에 의해 야기될 수도 있다. 검출 회로들에서의 변동성은 채널 대역폭을 제한할 수도 있다.
도 9 는 특정의 연속하는 심볼들 사이에서 제 1 시그널링 상태로부터 제 2 시그널링 상태로의 천이들의 특정 예들을 표현하는 타이밍 차트들 (900 및 920) 을 포함한다. 타이밍 차트들 (900 및 920) 에 예시된 시그널링 상태 천이들은 예시의 목적을 위하여 선택되며, 다른 천이들 및 천이들의 조합들이 MIPI 얼라이언스 C-PHY 인터페이스에서 발생할 수 있다. 타이밍 차트들 (900 및 920) 은 3-와이어, 3-페이즈 통신 링크의 일 예에 대한 것이고, 여기에서 다수의 수신기 출력 천이들이, 와이어들의 트리어 상의 신호 레벨들 간의 상승 시간과 하강 시간에서의 차이들에 기인하여, 각각의 심볼 간격 바운더리에서 발생할 수도 있다. 또한 도 8 을 참조하여 보면, 제 1 타이밍 차트들 (900) 은 천이 전과 천이 후의 신호 와이어들 (310a, 310b 및 310c) 의 트리오 (A, B, 및 C) 의 시그널링 상태들을 예시하며, 제 2 타이밍 차트들 (920) 은 신호 와이어들 (310a, 310b 및 310c) 사이의 차이들을 나타내는 차동 신호들 (810) 을 제공하는 차동 수신기들 (802a, 802b 및 802c) 의 출력들을 예시한다. 많은 사례들에서, 차동 수신기들 (802a, 802b 및 802c) 의 세트는 2 개의 신호 와이어들 (310a, 310b 및 310c) 에 대한 상이한 조합들을 비교하는 것에 의해 천이들을 캡처하도록 구성될 수도 있다. 일 예에서, 이들 차동 수신기들 (802a, 802b 및 802c) 은 이들 개별적인 입력 전압들의 차이를 (예를 들어, 감산에 의해) 결정하는 것에 의해 출력들을 생성하도록 구성될 수도 있다.
타이밍 차트들 (900 및 920) 에 나타낸 예들 각각에서, 초기 심볼 (-z)(516)(도 8 참조) 이 상이한 심볼로 천이한다. 타이밍 차트들 (902, 904 및 906) 에 도시된 바와 같이, 신호 A 는 초기에 +1 상태에 있고, 신호 B 는 0 상태에 있고, 신호 C 는 -1 상태에 있다. 따라서, 차동 수신기 출력들에 대하여 타이밍 차트들 (922, 932, 938) 로 도시된 바와 같이, 차동 수신기들 (802a, 802b) 은 초기에 +1 차이 (924) 를 측정하고, 차동 수신기 (802c) 는 -2 차이 (926) 를 측정한다.
타이밍 차트들 (902, 922) 에 대응하는 제 1 예에서, 천이는 심볼 (-z)(516) 로부터 심볼 (-x)(512) 로 발생하고 (도 8 참조) 여기에서 신호 A 는 -1 상태로 천이하고 신호 B 는 +1 상태로 천이하고 신호 C 는 0 상태로 천이하고, 차동 수신기 (802a) 는 +1 차이 (924) 로부터 -2 차이 (930) 로 천이하고 차동 수신기 (802b) 는 +1 차이 (924, 928) 에서 유지되고, 차동 수신기 (802c) 는 -2 차이 (926) 로부터 +1 차이 (928) 로 천이한다.
타이밍 차트들 (904, 932) 에 대응하는 제 2 예에서, 천이는 심볼 (-z)(516) 로부터 심볼 (+z)(506) 로 발생하고 여기에서 신호 A 는 -1 상태로 천이하고 신호 B 는 0 상태로 유지되고 신호 C 는 +1 상태로 천이하고, 2 개의 차동 수신기들 (802a 및 802b) 는 +1 차이 (924) 로부터 -1 차이 (936) 로 천이하고 차동 수신기 (802c) 는 -2 차이 (926) 로부터 +2 차이 (934) 로 천이한다.
타이밍 차트들 (906, 938) 에 대응하는 제 3 예에서, 천이는 심볼 (-z)(516) 로부터 심볼 (+x)(502) 로 발생하고 여기에서 신호 A 는 +1 상태로 천이하고 신호 B 는 -1 상태로 천이하고 신호 C 는 0 상태로 천이하고, 차동 수신기 (802a) 는 +1 차이 (924) 로부터 +2 차이 (940) 로 천이하고 차동 수신기 (802b) 는 +1 차이 (924) 로부터 -1 차이 (942) 로 천이하고, 차동 수신기 (802c) 는 -2 차이 (926) 로부터 -1 차이 (942) 로 천이한다.
이들 예들은 0, 1, 2, 3, 4 및 5 레벨들의 범위에 이르는 차이 값들로의 천이를 예시한다. 통상의 차분 또는 신호단 시리얼 송신기들에 이용된 프리-앰퍼시스 기술들이 2 개의 레벨 천이들에 대해 개발되었고, MIPI 얼라이언스 C-PHY 3-페이즈 신호에 이용되면 특정한 역효과를 도입할 수도 있다. 특히, 천이 동안 신호를 과구동시키는 프리-엠퍼시스 회로는 1 또는 2 레벨의 범위에 이르는 천이 동안 오버슈트를 야기할 수도 있고 에지 감지 회로들에 잘못된 트리거들의 발생을 야기할 수도 있다.
도 10 은 단일의 심볼 간격 (1002) 을 포함한 다수의 심볼 간격들의 오버레이로서 생성된 아이 패턴 (1000) 을 예시한다. 신호 천이 영역 (1004) 은 가변 신호 상승 시간들이 신뢰성있는 디코딩을 방해하는, 2 개의 심볼들 사이에 바운더리에서 불확실성의 기간을 나타낸다. 상태 정보는 심볼이 안정적이고 신뢰성있게 수신 및 디코딩될 수 있는 기간을 나타내는 "아이 오프닝" 내에서 아이 마스크 (1006) 에 의해 정의된 영역에서 신뢰성있게 결정될 수도 있다. 아이 마스크 (1006) 는 제로 크로싱이 발생하지 않는 영역을 마스크 오프하고, 아이 마스크는 제 1 신호 제로 크로싱을 뒤따르는 심볼 간격 바운더리에서의 후속의 제로 크로싱들의 효과로 인하여 다수의 클록킹을 방지하기 위해 디코더에 의해 이용된다.
신호의 주기적 샘플링 및 디스플레이의 개념은 수신된 데이터에 나타나는 빈번한 천이들을 이용하여 수신된 데이터 타이밍 신호를 재형성하는 클록 데이터 복구 회로를 이용하는 시스템들의 설계, 적응 및 구성 동안에 유용하다. 직렬화기/역직렬화기 (SERDES) 기술에 기초한 통신 시스템은 아이 패턴 (1000) 이 아이 패턴 (1000) 의 아이 오프닝에 기초하여 데이터를 신뢰성있게 복구하는 능력을 판정하기 위한 기초로서 이용될 수 있는 시스템의 예이다.
3-와이어 3-페이즈 인코더와 같은 M-와이어 N-페이즈 인코딩 시스템은 모든 심볼 바운더리에서 적어도 하나의 천이를 갖는 신호를 인코딩할 수 있으며, 수신기는 이들 보장된 천이를 이용하여 클록을 복구할 수도 있다. 수신기는 심볼 바운더리에서 제 1 신호 천이 직전에 신뢰가능한 데이터를 요구할 수 있으며 동일한 심볼 바운더리에 상관되는 다수의 천이들의 임의의 발생들을 신뢰성있게 마스킹할 수 있어야 한다. M-와이어들 (예를 들어, 와이어들의 트리오) 상에서 반송되는 신호들 사이의 상승 시간과 하강 시간에서의 미소한 차이들로 인하여 그리고 수신된 신호 페어들의 조합 (예를 들어, 도 6 의 차동 수신기들 (802a, 802b 및 802c) 의 A-B, B-C, 및 C-A 출력들) 간의 신호 전파 시간에서의 미소한 차이에 기인하여 다수의 수신기 천이들이 발생할 수도 있다.
도 11 은 C-PHY 3-페이즈 신호에 대해 생성된 아이 패턴 (1100) 의 일 예를 예시한다. 아이-패턴 (1100) 은 다수의 심볼 간격들 (1102) 의 오버레이로부터 생성될 수도 있다. 아이-패턴 (1100) 은 고정된 및/또는 심볼 독립적인 트리거 (1130) 를 이용하여 생성될 수도 있다. 아이-패턴 (1100) 은 N-페이즈 수신기 회로 (도 8 참조) 에서의 차동 수신기들 (802a, 802b, 802c) 에 의해 측정된 다수의 전압 레벨들에 기인할 수도 있는 증가된 수의 전압 레벨들 (1120, 1122, 1124, 1126, 1128) 을 포함한다. 예에서, 아이-패턴 (1100) 은 차동 수신기들 (802a, 802b, 및 802c) 에 제공된 3-와이어, 3-페이즈 인코딩된 신호들에서의 가능한 천이들에 대응할 수도 있다. 3개의 전압 레벨들은 차동 수신기들 (802a, 802b, 및 802c) 로 하여금 양의 극성 및 음의 극성 양쪽에 대해 강 전압 레벨들 (1126, 1128) 및 약 전압 레벨들 (1122, 1124) 을 생성하게 할 수도 있다. 통상적으로, 오직 하나의 신호 와이어 (310a, 310b 및 310c) 만이 어느 심볼에서도 비구동되고 차동 수신기들(802a, 802b, 및 802c) 은 0 상태 (여기서는, 0 볼트) 출력을 생성하지 않는다. 강 및 약 레벨들과 연관된 전압들은 0 볼트 레벨에 대하여 균일하게 이격되는 것이 필요하지 않다. 예를 들어, 약 전압 레벨들 (1122, 1124) 은 비구동 신호 와이어 (310a, 310b 및 310c) 에 의해 도달된 전압 레벨을 포함할 수도 있는 전압들의 비교를 나타낸다. 아이-패턴 (1100) 은 데이터가 수신 디바이스에서 캡처될 때 신호들의 모든 3 개의 페어들이 동시에 고려되기 때문에, 차동 수신기들 (802a, 802b, 및 802c) 에 의해 생성된 파형들을 오버랩할 수도 있다. 차동 수신기들 (802a, 802b, 및 802c) 에 의해 생성된 파형들은 신호들의 3 개의 페어들 (A-B, B-C, 및 C-A) 의 비교들을 나타내는 차동 신호들 (810) 을 나타낸다.
C-PHY 3-페이즈 디코더에 이용된 드라이버들, 수신기들 및 다른 디바이스들은 3 개의 와이어들로부터 수신된 신호들 사이의 상대적 지연들을 도입할 수 있는 상이한 스위칭 특성들을 나타낼 수도 있다. 다수의 수신기 출력 천이들은 신호 와이어들 (310a, 310b 및 310c) 의 트리오의 3 개의 신호들 사이의 상승 및 하강 시간에서의 미소한 차이들에 기인하여 그리고 신호 와이어들 (310a, 310b 및 310c) 로부터 수신된 신호들의 페어들의 조합 사이의 신호 전파 시간들에서의 미소한 차이들에 기인하여 각각의 심볼 간격 바운더리 (1108 및/또는 1114) 에서 관측될 수도 있다. 아이-패턴 (1100) 은 각각의 심볼 간격 바운더리 (1108 및 1114) 근방에서의 천이들에서 상대적 지연으로서 상승 및 하강 시간들에서의 변동들을 캡처할 수도 있다. 상승 및 하강 시간들에서의 변동들은 3-페이즈 드라이버들의 상이한 특성들에 기인할 수도 있다. 상승 및 하강 시간들에서의 차이들은 또한 임의의 주어진 심볼에 대해 심볼 간격 (1102) 의 지속기간의 효과적인 단축 또는 연장을 야기할 수도 있다.
신호 천이 영역 (1104) 은 시간 또는 불확실성의 기간을 나타내며, 여기에서 가변 신호 상승 시간은 신뢰성있는 디코딩을 방해한다. 상태 정보는 심볼이 안정성있고 신뢰성있게 수신 및 디코딩될 수 있는 기간을 나타내는 "아이 오프닝"(1106) 에서 신뢰성있게 결정될 수도 있다. 일 예에서, 아이 오프닝 (1106) 은 신호 천이 영역 (1104) 의 종점 (1112) 에서 시작하여 심볼 간격 (1102) 의 심볼 간격 바운더리 (1114) 에서 종료하도록 결정될 수도 있다. 도 11 에 예시된 예에서, 아이 오프닝 (1106) 은 신호 천이 영역 (1104) 의 종점 (1112) 에서 시작하여 신호 와이어들 (310a, 310b, 310c) 의 시그널링 상태 및/또는 3 개의 차동 수신기들 (802a, 802b 및 802c) 의 출력이 다음 심볼을 반영하도록 변화하기 시작할 때의 시간 (1116) 에서 종료하도록 결정될 수도 있다.
N-페이즈 인코딩을 위하여 구성된 통신 링크 (220) 의 최대 속도는 수신된 시간에 대응하는 아이 오프닝 (1106) 에 비교되는 신호 천이 영역 (1104) 의 지속기간에 의해 제한될 수도 있다. 심볼 간격 (1102) 에 대한 최소 주기는 예를 들어, 도 6 에 예시된 디코더 (600) 에서 CDR 회로 (624) 와 연관된 설계 마진들을 타이트하게 함으로써 제약될 수도 있다. 상이한 시그널링 상태 천이들은 2 개 이상의 신호 와이어들 (310a, 310b 및/또는 310c) 에 대응하는 신호 천이 시간들에서의 상이한 변동들과 연관될 수도 있어, 이에 의해 수신 디바이스에서의 차동 수신기들 (802a, 802b 및 802c) 의 출력들로 하여금 심볼 간격 바운더리 (1108) 에 대하여 상이한 시간 및/또는 레이트들로 변화하게 하며, 여기에서 차동 수신기들 (802a, 802b 및 802c) 의 입력들이 변화하기 시작한다. 신호 천이 시간들 사이의 차이들은 둘 이상의 차동 신호들 (810) 에서의 시그널링 천이들 사이의 타이밍 스큐들을 야기할 수도 있다. CDR 회로들은 차동 신호들 (810) 사이의 타이밍 스큐들을 수용하도록 지연 엘리먼트들 및 다른 회로들을 포함할 수도 있다.
도 12 는 3-와이어, 3-페이즈 인터페이스에 대한 CDR 회로 (1200) 의 일 예를 제공한다. 예시된 CDR 회로 (1200) 는 많은 상이한 유형들의 클록 복구 회로들에 공통되는 특정 피처들 및 기능 엘리먼트들을 포함한다. CDR 회로 (1200) 는 차동 신호들 (1202, 1204, 1206) 을 수신하고, 이 신호들은 예를 들어, 도 8 의 차동 수신기들 (802a, 802b 및 802c) 에 의해 생성되는 차동 신호들 (810) 로부터 유도될 수도 있다. CDR 회로 (1200) 에서, 각각의 차동 신호 (1202, 1204, 1206) 는 출력 신호들 (1230a-1230f) 을 생성하기 위해 D 플립-플롭들 (1210a, 1210b, 1210c) 의 페어를 클록킹한다. 출력 신호들 (1230a-1230f) 은 천이가 대응하는 차동 신호 (1202, 1204, 1206) 상에서 검출될 때 펄스를 반송한다. D 플립-플롭 상의 클록 입력에 제공된 상승 에지는 D 플립-플롭을 통하여 논리 1 을 클록킹한다. 인버터들 (1208a, 1208b, 1208c) 은 D 플립-플롭들 (1210a, 1210b, 1210c) 의 각각의 대응하는 페어에서 D 플립-플롭들 중 하나에 반전된 버전들의 차동 신호들 (1202, 1204, 1206) 을 제공하는데 이용될 수도 있다. 따라서, D 플립-플롭들 (1210a, 1210b, 1210c) 의 각각의 페어는 대응하는 차동 신호 (1202, 1204, 1206) 에서 검출된 상승 에지 및 하강 에지에 응답하여 펄스들을 생성한다.
예를 들어, AB 차동 신호 (1202) 가 D 플립-플롭 (1210a) 의 제 1 페어의 제 1 D 플립-플롭 (1232) 에 제공되고, 인버터 (1208a) 는 D 플립-플롭들 (1210a) 의 제 1 페어의 제 2 D 플립-플롭 (1234) 에 반전된 버전의 AB 차동 신호 (1202) 를 제공한다. D 플립-플롭들은 초기에 리셋 상태에 있다. AB 차동 신호 (1202) 에서의 상승 에지는 제 1 D 플립-플롭 (1232) 을 통하여 논리 1 을 클록킹하여 제 1 플립-플롭 (r_AB)(1230a) 의 출력이 논리 1 상태로 천이하도록 한다. AB 차동 신호 (1202) 에서의 상승 에지는 제 2 D 플립-플롭 (1234) 을 통하여 논리 1 을 클록킹하여 제 2 플립-플롭 (f_AB)(1230b) 의 출력이 논리 1 상태로 천이하도록 한다.
출력 신호들 (1230a-1230f) 은 수신기 클록 (RxCLK) 신호 (1222) 로서 역할을 할 수도 있는 출력 신호를 생성하는 로직, 이를 테면, OR 게이트 (1212) 에 제공된다. RxCLK 신호 (1222) 는 임의의 차동 신호들 (1202, 1204, 1206) 의 시그널링 상태에서 천이가 발생할 때 논리 1 상태로 천이한다. RxCLK 신호 (1222) 는 프로그래밍 지연 엘리먼트 (1214) 에 제공되고, 이 엘리먼트는 D 플립-플롭들 (1210a, 1210b, 1210c) 의 페어들에서 D 플립-플롭을 리셋하는 리셋 신호 (rb)(1228) 를 구동시킨다. 예시된 예에서, 인버터 (1216) 는 D 플립-플롭들이 로우 신호에 의해 리셋될 때 포함될 수도 있다. D 플립-플롭들이 리셋될 때, OR 게이트 (1212) 의 출력은 논리 0 상태로 복귀되고, RxCLK 신호 (1222) 상의 펄스 가 터미네이션된다. 이 논리 0 상태가 프로그래밍가능 지연 엘리먼트 (1214) 및 인버터 (1216) 를 통하여 전파할 때 D 플립-플롭 상의 리셋 조건은 릴리즈된다. D 플립-플롭이 리셋 조건에 있는 한편, 차동 신호들 (1202, 1204, 1206) 상의 천이들은 무시된다.
프로그래밍가능 지연 엘리먼트 (1214) 는 통상적으로, 차동 신호들 (1202, 1204, 1206) 상의 제 1 및 마지막 천이들의 발생 사이에 타이밍 스큐에서의 차이를 초과하는 지속기간을 갖는 지연을 생성하도록 구성된다. 프로그래밍 지연 엘리먼트 (1214) 는 RxCLK 신호 (1222) 상의 펄스들의 지속기간 (즉, 펄스 폭) 을 구성한다. 프로그래밍가능 지연 엘리먼트 (1214) 는 Set 신호 (1226) 가 다른 제어 및/또는 구성 로직 또는 프로세서에 의해 표명될 때를 구성될 수도 있다.
RxCLK 신호 (1222) 는 또한, 차동 신호들 (1202, 1204, 1206) 의 시그널링 상태를 캡처하는 3 개의 플립-플롭들 (1220) 의 세트에 제공될 수도 있어, RxCLK 신호 (1222) 상에서 발생하는 각각의 펄스에 대한 안정적인 출력 심볼 (1224) 을 제공한다. 지연 또는 정렬 로직 (1218) 은 차동 신호들 (1202, 1204, 1206) 의 세트의 타이밍을 조정할 수도 있다. 예를 들어, 지연 또는 정렬 로직 (1218) 은 RxCLK 신호 (1222) 상의 펄스들에 대하여 차동 신호들 (1202, 1204, 1206) 의 타이밍을 조정하여, 차동 신호들 (1202, 1204, 1206) 이 안정상태에 있을 때 플립 플롭들 (1220) 이 차동 신호들 (1202, 1204, 1206) 의 시그널링 상태를 캡처하는 것을 보장할 수도 있다. 지연 또는 정렬 로직 (1218) 은 프로그래밍가능 지연 엘리먼트 (1214) 에 대하여 구성된 지연에 기초하여 차동 신호들 (1202, 1204, 1206) 에서의 에지들을 지연시킬 수도 있다.
프로그래밍가능 지연 엘리먼트 (1214) 는 차동 신호들 (1202, 1204, 1206) 에서의 천이 시간들에서 가능한 큰 변동들을 수용하도록 CDR 회로 (1200) 에서 구성될 수도 있다. 일 예에서, 프로그래밍가능 지연 엘리먼트 (1214) 는 차동 신호들 (1202, 1204, 1206) 상의 제 1 및 마지막 천이들의 발생 사이의 타이밍 스큐의 지속기간을 초과하는 최소 지연 주기를 도입할 수도 있다. CDR 회로 (1200) 의 신뢰성있는 동작을 위하여, 프로그래밍 지연 엘리먼트 (1214) 에 의해 제공된 최대 지연 시간은 심볼 간격 보다 더 크지 않을 수도 있다. 더 고속의 데이터 레이트들에서, 타이밍 스큐는 심볼 간격 (1102) 에 비례하여 증가하고 아이 오프닝 (1106) 은 심볼 간격 (1102) 에 비교하여 작게 될 수 있다. 신뢰성있는 심볼들의 캡처를 지원할 수 있는 임계 사이즈 미만으로 아이 오프닝 (1106) 에 의해 점유되는 심볼 간격 (1102) 의 백분율을 감소시킬 때 최대 심볼 송신 레이트는 제한될 수도 있다.
도 13 은 CDR 회로 (1200) 의 동작의 특정 양태들을 예시하는 타이밍 도이다. 이 다이어그램은 프로그래밍가능 지연 엘리먼트 (1214) 가 구성된 후의 동작들에 관한 것이고, Set 신호 (1226) 는 인액티브 상태이다. CDR 회로 (1200) 는 에지 검출기로서 동작한다. C-PHY 3-페이즈 인코딩은 유닛 간격 (UI) 당 단일의 시그널링 상태 천이를 제공한다 (1302). 트리오의 각각의 와이어의 상태에서의 차이들 및/또는 트리오의 송신 특성들은 상이한 시간들에서 2 개 이상의 와이어들 상에서 천이가 나타나게 할 수도 있다. 차동 신호들 (1202, 1204, 1206) 에서의 천이들의 발생의 시간에 최대 차이는 스큐 시간 (tskew) 으로서 지칭될 수도 있다 (1304). CDR 회로 (1200) 와 연관된 다른 지연들은 D 플립-플롭들 (1210a, 1210b, 1210c) 의 페어들을 관통하는 전파 지연 (tck2q)(1314), OR 게이트 (1212) 를 관통하는 상승 에지와 연관된 전파 지연 (tOR_0)(1316), OR 게이트 (1212) 를 관통하는 하강 에지와 연관된 전파 지연 (tOR_1)(1318), 프로그래밍가능 지연 엘리먼트 (1214) 와 드라이버/인버터 (1216) 에 의해 도입된 지연을 결합하는 전파 지연 (tpgm)(1310) 및 D 플립-플롭들 (1210a, 1210b, 1210c) 의 페어들에 의해 rb 신호 (1228) 의 수신 시간과, 플립-플롭 출력들이 클리어되는 시간 사이의 지연에 대응하는 리셋 지연 (trst)(1312) 을 포함한다.
루프 시간 (tloop)(1320) 은 다음과 같이 정의될 수도 있다:
tloop = tck2q + tOR_1 + tpgm + trst + tOR_0 + tpgm.
tloop (1320) 와 UI (1302) 사이의 관계는 CDR 회로 (1200) 의 동작의 신뢰성을 결정할 수도 있다. 이 관계는 UI (1302) 에 직접 영향을 미치는 송신에 이용되는 클록 주파수 및 프로그래밍가능 지연 엘리먼트 (1214) 의 동작의 가변성에 의해 영향을 받는다.
일부 디바이스들에서, 프로그래밍가능 지연 엘리먼트 (1214) 의 동작은 제조 프로세스, 회로 공급 전압 및 다이 온도 (PVT) 에서의 변동에 의해 영향을 받을 수 있다. 구성된 값에 대해 프로그래밍가능 지연 엘리먼트 (1214) 에 의해 제공되는 지연 시간은 디바이스마다 및/또는 디바이스와 디바이스 회로 마다 상당히 다를 수도 있다. 통상의 시스템들에서, CDR 회로 (1200) 의 공칭 동작 조건은 일반적으로, 클록 에지가 최악의 경우의 PVT 효과에서 조차도, 신호 천이 영역 (1104) 의 종점 (1112) 뒤에 그리고 다음 심볼로의 천이 영역의 시작 전에 발생하는 것을 보장하기 위하여, 모든 PVT 조건들 하에서 아이 오프닝 (1106) 의 중간에서 어딘가에 클록 에지를 생성하도록 설계에 의해 설정된다. 송신 주파수가 증가하고 차동 신호들 (1202, 1204, 1206) 의 타이밍 스큐가 UI (1302) 에 비해 클 때, 아이 오프닝 (1106) 내의 클록 에지를 보장하는 CDR 회로 (1200) 를 설계하는 데 어려움이 발생할 수 있다. 예를 들어, 통상의 지연 엘리먼트는 모든 PVT 조건들에 대해 2 배 만큼 변화하는 지연 값을 생성할 수도 있다.
도 14 는 불충분한 지연을 제공하는 프로그래밍가능 지연 엘리먼트 (1214) 의 효과를 예시하는 타이밍도 (1400) 이다. 이 예에서, tloop (1406) 는 관찰된 tskew (1404) 에 비해 너무 짧고, 다수의 클럭 펄스들 (1408, 1410) 은 하나의 UI (1402) 에서 생성된다. 즉, 루프 지연 tloop (1406) 는 tskew (1404) 에 비해 충분히 크지 않고, 차동 신호들 (1202, 1204, 1206) 에 대한 나중에 발생하는 천이들이 마스킹되지 않는다. 도시된 예에서, 차동 신호들 (1206) 중 하나에서의 제 2 천이 (1414) 는 차동 신호들 (1202) 의 다른 신호에서 제 1 발생 천이 (1412) 에 응답하여 펄스 (1408) 가 생성된 후에 검출될 수도 있다. 이 예에서, 복구된 클록 주파수는 3-페이즈 인터페이스에서 심볼들을 송신하는데 사용된 클록 주파수의 2 배일 수도 있다.
도 15 는 너무 긴 지연을 제공하는 프로그래밍가능 지연 엘리먼트 (1214) 의 효과를 예시하는 타이밍도 (1500) 이다. 이 예에서, tloop (1506) 는 UI (1502) 보다 크다. CDR 회로 (1200) 는 제 1 UI (1502) 에서 제 1 발생 천이 (1514) 에 응답하여 클록 펄스 (1508) 를 생성할 수도 있지만, 제 2 UI (1512) 에서 천이들 (1516, 1518) 이 발생할 때 rb 신호 (1228) 가 액티브 상태일 수도 있다. 예시된 예에서, 제 2 UI (1512) 에서 천이들 (1516, 1518) 은 마스킹되고, 제 2 UI (1512) 에 대응하는 예상된 펄스 (1510) 는 억제된다. 이 예에서, 복구된 클록 주파수는 3-페이즈 인터페이스에서 심볼들을 송신하는데 사용된 클록 주파수의 1/2 일 수도 있다.
도 14 및 도 15 의 예들에 의해 예시된 바와 같이, CDR 회로 (1200) 는 다음의 제약을 받을 수도 있다:
tskew < tloop < UI.
경험적 증거는 tloop (1320, 1406, 1506) 가 PVT 에 매우 민감하다는 것을 제안한다. 일부 사례들에서, 프로그래밍가능 지연 엘리먼트 (1214) 에 의해 제공된 지연은 PVT 의 가능성있는 변동들의 범위를 수용하도록 증가될 수도 있다. 데이터 레이트들이 증가함에 따라, UI 의 지속기간이 감소하고, tskew 가 UI 에 대하여 비례하여 증가하여, 프로그래밍가능 지연 엘리먼트 (1214) 를 구성하는데 이용가능한 잠재적 지연 범위를 감소시킨다.
C-PHY 3-페이즈 인터페이스들에 대한 개선된 클록 생성
본원에 개시된 특정 양태들에 따르면, C-PHY 멀티-페이즈 수신기에 이용된 클록 복구 회로는 PVT 와 연관된 문제들을 회피할 수 있다. 클록 복구 회로는 일부 UI들에서의 천이들을 검출하고 다른 UI들에서의 천이들의 검출을 억제하도록 적응될 수도 있다. 클록 복구 회로는 천이 검출이 억제된 UI들에 대한 보간된 펄스들을 생성할 수도 있다. 제 1 동작 모드에서, 프로그래밍된 지연은 CDR 회로로 하여금 제 1 발생 UI 에서의 천이를 검출한 후 제 2 발생 UI 에서의 천이들의 검출을 억제하게 하도록 구성될 수도 있다. 이 제 1 동작 모드에서, CDR 회로는 심볼 송신 주파수의 1/2인 주파수로 클록 신호를 생성한다. 제 2 동작 모드에서, 프로그래밍된 지연은 CDR 회로로 하여금 제 1 발생 UI 에서의 천이를 검출한 후 2 개의 후속하는 UI들에서의 천이들의 검출을 억제하게 하도록 구성될 수도 있다. 이 제 2 동작 모드에서, CDR 회로는 심볼 송신 주파수의 1/3 인 주파수로 클록 신호를 생성한다. 다른 동작 모드들은 심볼 주파수의 1/4 또는 그 이하인 주파수들을 생성할 수 있다. 지연-고정 루프 (DLL) 는 천이 검출이 억제된 UI들에 대응하는 클록 펄스들을 생성하는데 이용될 수도 있다. DLL 에 의해 생성된 클록 펄스들은 CDR 회로에 의해 생성된 클록 신호의 펄스들 사이에 삽입될 수도 있다.
도 16 은 본원에 개시된 특정 양태들에 따른 클록 생성을 예시하는 타이밍도 (1600) 이다. 클록 복구 회로에서의 하나 이상의 프로그래밍가능 지연 엘리먼트들은 에지 검출 및 펄스 생성이 UI들 (1618, 1620) 에 비례하여 억제되도록 하는 지연들로 적응 및/또는 구성될 수도 있다. 도시된 예에서, 펄스 생성 회로 또는 루프는 제 1 UI (1618) 에 대한 RxCLK 신호 (1602) 에 클록 펄스를 제공하지만, 후속하는 제 2 UI (1620) 에서 천이를 검출하지 않는다. 클록 복구 회로는 중간 클록 신호 (RxCLK_MID)(1604) 에서 제 2 UI (1620) 에 대응하는 펄스 (1642) 를 공급하는 DLL 회로를 포함하거나 또는 DLL 회로와 협업할 수도 있다. 펄스 생성 회로 또는 루프는 UI들 (1620) 에 대한 펄스를 공급하는 하나 이상의 DLL 회로들과 함께, 제 1 UI (1616) 에서 펄스 (1640) 를 생성한 후에 2 이상의 UI들 (1620) 에서의 천이를 무시 또는 미스하도록 구성될 수 있고 그 동안에, 예를 들어, 천이가 무시될 때 펄스 생성이 억제된다. 하나 이상의 DLL들에 의해 생성된 펄스들은 RxCLK 신호 (1602) 의 상승 에지들에 대해, 그리고 그 사이에 위치될 수도 있다. 도 16 은 RxCLK_MID 신호 (1604) 가 RxCLK 신호 (1602) 에 대해 180도 페이즈-시프트로 생성되는 하프-레이트 예를 예시한다.
RxCLK 신호 (1602) 및 RXCLK_MID 신호 (1604) 는 예를 들어 AB 신호 (1202) 의 지연 버전인 AB_delay 신호 (1606) 및 CA 신호 (1206) 의 지연 버전인 CA_delay 신호 (1608) 를 포함하는 지연된 버전들의 차동 신호들 (1202, 1204, 1206) 을 샘플링하는데 이용될 수도 있다. RxCLK 신호 (1602) 는 Capture_even 신호 (1610) 에서 심볼들 (1634 및 1638) 을 제공하기 위해 짝수번째 발생하는 심볼들 (1622/1628, 1626/1632) 을 캡쳐하는 반면, RXCLK_MID 신호 (1604) 는 Capture_odd 신호 (1612) 에서 심볼들 (1636) 을 제공하도록 홀수번째 발생하는 심볼들 (1624/1630) 을 캡처한다.
일부 예들에서, Capture_even 신호 (1610) 및 Capture_odd 신호 (1612) 는 예를 들어 심볼들 (1634, 1636, 1638) 중 2 이상의 심볼들이 병렬로 판독될 수 있도록 RxCLK 신호 (1602) 로 재정렬될 수 있다.
도 17 은 도 16 의 타이밍에 따라 이용될 수 있는 회로 (1700) 를 예시하며, 클록 복구의 신뢰성이 달리 위험하지 않다는 것을 타이밍 제약 tskew <tloop <UI 가 나타낼 때 3-페이즈 인터페이스 상에 송신된 심볼을 신뢰성있게 캡처한다. 회로 (1700) 는 차동 신호들 (1202, 1204, 1206) 및 반전된 버전들의 차동 신호들 (1202, 1204, 1206) 을 포함할 수도 있는 입력 (1712) 으로부터 심볼들을 캡처하는데 이용될 수 있는 제 1 클록 (ref_clk) 신호 (1714) 및 제 2 클록 신호 (rclk) (1716) 를 생성하도록 협업하는 2 개의 CDR 회로들 (1702, 1704) 및 DLL 회로 (1706) 를 포함한다. ref_clk 신호 (1714) 는 제 1 의 3-페이즈 CDR 회로 (1702) 를 이용하여 생성된다. ref_clk 신호 (1714) 는 3-페이즈 인터페이스의 심볼 송신 주파수에 대응하는 Fref 의 주파수를 갖는 참조 클록으로서 제공될 수도 있다. rclk 신호 (1716) 는 제 2 CDR 회로 (1704) 를 이용하여 생성된다. 다양한 동작 모드에서, rclk 신호 (1716) 의 주파수는 ref_clk 신호 (1714) 의 주파수의 배수 (즉, 2 Fref, 1 Fref, 0.5 Fref, 1/3 Fref, 0.25 Fref 등) 일 수도 있다. 제 1 CDR 회로 (1702) 및 제 2 CDR 회로 (1704) 는 유사한 아키텍처들을 가질 수도 있다.
CDR 캘리브레이션 로직 (1708) 은 ref_clk 신호 (1714) 의 주파수에 대하여 rclk 신호 (1716) 의 주파수에서의 차이들을 검출하도록 제공될 수도 있다. 제 2 CDR 회로 (1704) 내의 하나 이상의 프로그래밍가능 지연 엘리먼트들은 rclk 신호 (1716) 및 ref_clk 신호 (1714) 의 주파수들의 차이에 기초하여 캘리브레이션될 수 있다. 일 예에서, CDR 캘리브레이션 로직 (1708) 은 멀티-비트 제어 신호를 제공할 수도 있다. 멀티-비트 제어 신호는 제 2 CDR 회로 (1704) 에서 프로그래밍가능한 지연 엘리먼트에 의해 생성된 지연들의 기간을 제어하는 지연 파라미터 (1720) 를 정의할 수도 있다. 프로그래밍가능 지연 엘리먼트는 제 2 CDR 회로 (1704) 로 하여금 UI (1618, 1620) 의 일부 비례하여 펄스 생성을 억제하게 하도록 선택된 파라미터를 이용하여 구성될 수도 있다. rclk 신호 (1716) 는 DLL 회로 (1706) 에 제공되며, 이 회로는 병렬 출력 데이터 (ab_o[1:0], bc_o[1:0], ca_o[1:0]) 를 생성하도록 rclk 신호 (1716) 의 펄스와 결합될 때 제 2 CDR 회로 (1704) 에 의해 이용될 수 있는 페이즈-시프트된 신호 (1722) 의 형태로 추가적인 펄스들을 생성한다.
제 2 CDR 회로 (1704) 에서 프로그래밍된 지연은 rclk 신호 (1716) 의 주파수를 모니터링하는 동안 프로그래밍된 지연을 조정하는 것에 의해 구성될 수도 있다. 초기에, 프로그래밍된 지연은 UI 시간 (하나의 심볼을 송신하는데 요구되는 시간) 보다 짧은 시간 동안 지속되는 지연을 생성하도록 설정될 수도 있다. 일 예에서, 클록 복구 회로는 3-페이즈 신호가 초기에 수신될 때 심볼 송신 주파수와 동일한 주파수를 갖는 rclk 신호 (1716) 를 생성하도록 구성될 수도 있다. 프로그래밍된 지연의 값은 rclk 신호 (1716) 의 주파수가 2, 3, 또는 임의의 원하는 인수로 나누어질 때까지 점진적으로 증가될 수도 있다.
도 18 은 제 2 CDR 회로 (1704) 의 지연 엘리먼트를 구성하는데 이용되는 CDR 캘리브레이션 회로 (1800) 의 일 예를 나타낸다. CDR 캘리브레이션 회로 (1800) 는 프로세싱 회로에 의해 제공될 수도 있는 신호 (1812) 에 의해 인에이블될 수도 있다. CDR 캘리브레이션 회로 (1800) 는 ref_clk 신호 (1714) 및 캘리브레이션 클록 (cal_clk) 신호 (1816) 를 구동 및/또는 조정하는데 이용되는 컨디셔닝 로직 (1802) 을 포함할 수도 있다. 일 예에서, ref_clk 신호 (1714) 는 참조 CDR 회로 (예를 들어, CDR 회로 (1702)), 자유 구동 오실레이터, 위상 동기 루프 또는 다른 클록 생성 회로로부터 도출될 수도 있다. CDR 캘리브레이션 회로 (1800) 는 컨디셔닝된 버전의 ref_clk 신호 (1714) 및 cal_clk 신호 (1816) 에 의해 클록킹된 카운터들 (1804 및 1806) 을 포함할 수도 있다. 카운터들 (1804 및 1806) 의 출력은 cal_clk 신호 (1816) 에 대한 ref_clk 신호 (1714) 의 주파수를 결정할 수도 있는 비교기 로직 (1808) 에 의해 모니터링될 수도 있다. 캘리브레이션 카운터 (1810) 는 CDR 회로 (예를 들어, 제 2 CDR 회로 (1704)) 에서 하나 이상의 프로그래밍가능 지연 엘리먼트들을 제어하기 위해 연속적인 캘리브레이션 사이클 동안 조정될 수 있다. 캘리브레이션 카운터 (1810) 는 예를 들어, 비교기 로직 (1808) 에 의해 행해진 결정에 의존하여 각각의 캘리브레이션 사이클 후에 증분되거나 감분될 수도 있다. 비교기 로직 (1808) 은 업/다운 신호 (1818), 인에이블 카운터 신호 (1820) 및 캘리브레이션 사이클 클록 신호 (1822) 중 하나 이상을 이용하여 캘리브레이션 카운터 (1810) 를 제어할 수도 있다.
클록 주파수들은 카운터들 (1804, 1806) 을 이용하여 측정될 수도 있다. 카운터들 (1804, 1806) 은 예를 들어 캘리브레이션 사이클 클록 신호 (1824) 에 의해 결정될 수도 있는 소정 기간 동안 ref_clk 신호 (1714) 및 cal_clk 신호 (1816) 에 의해 증분될 수도 있다. 제 1 카운터 (1804) 는 ref_clk 신호 (1714) 에 대응하는 클록 사이클들의 수 (ref_val)(1814) 를 캡처할 수도 있다. 일부 사례들에서, 제 1 카운터는 풀 레이트 심볼 송신 클록의 척도인 ref_val (1814) 을 캡처하는 초기화 직후에 동작될 수도 있고, 일부 사례들에서, 이 초기에 획득된 ref_val (1814) 는 후속 캘리브레이션 사이클들 동안에 이용되도록 등록 또는 달리 캡처될 수도 있다. 제 2 카운터 (1804) 는 캘리브레이션 사이클 동안 발생하는 클록 사이클들의 수 (cal_val)(1818) 를 카운트한다. 캘리브레이션 사이클은 미리 정해진 기간으로 구성될 수도 있거나 조정가능한 기간일 수도 있다. 각각의 캘리브레이션 사이클 동안, 지연 파라미터 (1720) 는 캘리브레이션 하에 CDR (1704) 에 제공되고, 결과적인 cal_clk 신호 (1814) 의 주파수는 캘리브레이션 사이클 동안 제 2 카운터 (1806) 에 의해 누적된 cal_val (1818) 로서 측정될 수도 있다. cal_val (1818) 이 원하는 인수만큼 클록 주파수의 제산인 값을 반영할 때, 구성은 완료되고, 지연 파라미터 (1720) 의 최종 값은 클록 복구 회로를 동작시키는데 이용될 수도 있다.
제 2 CDR 회로 (1704) 는 cal_clk 신호 (1814) 에 대해 원하는 주파수일 때까지 지연 파라미터 (1720) 를 증분 또는 감분시킴으로써 교정될 수도 있다. 주파수에서의 변화들은 cal_val (1818) 및 ref_val (1816) 사이의 소정의 차이가 얻어질 때까지 cal_val (1818) 의 변화를 가져올 수 있고, 비교기 로직 (1808) 이 계속 캘리브레이션할 수도 있다. 캘리브레이션은 지연 파라미터 (1720) 에 대한 낮은 값으로 시작될 수 있고 이후 지연 파라미터 (1720) 는 각각의 캘리브레이션 사이클마다 증분될 수도 있다. 캘리브레이션은 지연 파라미터 (1720) 에 대한 높은 값으로 시작될 수 있고 이후 지연 파라미터 (1720) 는 각각의 캘리브레이션 사이클마다 감분될 수도 있다.
특정 양태들에 따르면, 수신기는 트레이닝 시퀀스가 정확하게 수신될 때까지 CDR 회로의 지연 엘리먼트들을 조정함으로써 C-PHY 인터페이스의 공칭 심볼 송신 주파수를 결정할 수도 있다. 송신기는 링크 초기화 동안, 데이터의 개별 패킷들을 송신하기 전에, 수신기에서 에러를 검출한 후에, 및/또는 애플리케이션 또는 시스템 제어 하에서, 트레이닝 시퀀스를 전송할 수도 있다. 수신기는 활동을 위해 C-PHY 인터페이스를 모니터링할 수도 있으며 천이의 검출시 캘리브레이션을 수행할 수도 있다. 일부 사례들에서, 수신기는 CDR 회로가 이미 캘리브레이션되었는지를 결정할 수 있고 트레이닝 시퀀스가 적절하게 수신되지 않으면 캘리브레이션을 수행할 수도 있다.
도 12 에 예시된 예에서, 프로그래밍가능 지연 (1214) 이 CDR 회로 (1200) 가 트레이닝 시퀀스를 검출할 수 있게하는 미리 결정된 값으로 초기화될 때, 캘리브레이션이 시작된다. CDR 회로 (1200) 는 에러들이 트레이닝 시퀀스에서 검출될 때까지 프로그래밍가능 지연 (1214) 이 tloop 지속기간 (1604) 을 증가시키도록 조정될 수 있도록 본원에 개시된 특정 양태들에 따라 적응될 수도 있다. CDR 회로 (1200) 는 에러가 트레이닝 시퀀스에서 검출되게 하는 값보다 낮은 하나 이상의 증분값들인 값들로 프로그래밍가능한 지연 (1214) 에 의한 정상 동작을 위해 구성될 수도 있다.
도 19 는 본원에 개시된 하나 이상의 기능들을 수행하도록 구성될 수도 있는 프로세싱 회로 (1902) 를 채택하는 장치에 대한 하드웨어 구현의 간략화된 예를 예시하는 개념도 (1900) 이다. 본 개시의 여러 양태들에 따르면, 본원에 개시된 엘리먼트 또는 엘리먼트의 임의의 부분 또는 엘리먼트들의 임의의 조합은 프로세싱 회로 (1902) 를 이용하여 구현될 수도 있다. 프로세싱 회로 (1902) 는 하드웨어 및 소프트웨어 모듈들의 일부 조합에 의해 제어되는 하나 이상의 프로세서들을 (1904) 을 포함할 수도 있다. 프로세서들 (1904) 의 예들은 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들 (DSP들), 필드 프로그래밍가능 게이트 어레이들 (FPGA들), 프로그래밍가능 로직 디바이스들 (PLD들), 상태 머신들, 시퀀서들, 게이트된 로직, 이산 하드웨어 회로들, 및 본 개시물에 걸쳐 설명된 여러 기능들을 수행하도록 구성되는 다른 적절한 하드웨어를 포함한다. 하나 이상의 프로세서들 (1904) 은 특정 기능들을 수행하고 소프트웨어 모듈들 (1916) 중 하나에 의해 구성, 증강 또는 제어될 수도 있는 특수화된 프로세서들을 포함할 수도 있다. 하나 이상의 프로세서들 (1904) 은 초기화 동안에 로딩된 하나 이상의 소프트웨어 모듈들 (1916) 의 조합을 통하여 구성될 수도 있고, 동작 동안에 소프트웨어 모듈들 (1916) 중 하나 이상을 로딩 또는 언로딩함으로써 추가로 구성될 수도 있다.
예시된 예에서, 프로세싱 회로 (1902) 는 버스 (1910) 에 의해 일반적으로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1910) 는 프로세싱 회로 (1902) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속하는 버스들 및 브리지들을 포함할 수도 있다. 버스 (1910) 는 하나 이상의 프로세서들 (1904) 및 저장부 (1906) 를 포함하는 여러 회로들을 함께 링크한다. 저장부 (1906) 는 메모리 디바이스들 및 대용량 디바이스들을 포함할 수도 있고, 본원에서 컴퓨터 판독가능 매체 및/또는 프로세서 판독가능 매체로서 지칭될 수도 있다. 버스 (1910) 는 또한 타이밍 소스들, 타이머들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들과 같은 여러 다른 회로들을 링크할 수도 있다. 버스 인터페이스 (1908) 는 버스 (1910) 와, 하나 이상의 트랜시버들 (1912) 사이에 인터페이스를 제공할 수도 있다. 트랜시버 (1912) 는 프로세싱 회로에 의해 지원되는 각각의 네트워킹 기술에 대하여 제공될 수도 있다. 일부 경우들에서, 다수의 네트워킹 기술들이 트랜시버 (1912) 에서 찾아지는 프로세싱 모듈들 또는 회로의 일부 또는 전부를 공유할 수도 있다. 각각의 트랜시버 (1912) 는 송신 매체를 통하여 여러 다른 장치와 통신하는 수단을 제공한다. 장치의 특성에 의존하여, 사용자 인터페이스 (1918)(예를 들어, 키패드, 디스플레이, 스피커, 마이크로폰, 조이스틱) 가 또한 제공될 수도 있고, 버스 인터페이스 (1908) 를 통하여 또는 버스 (1910) 에 직접적으로 통신가능하게 커플링될 수도 있다.
프로세서 (1904) 는 저장부 (1906) 를 포함할 수도 있는 컴퓨터 판독가능 매체에 저장된 소프트웨어의 실행을 포함할 수도 있는 범용 프로세싱을 그리고 버스 (1910) 의 관리를 담당할 수도 있다. 이러한 점에서, 프로세서 (1904) 를 포함한, 프로세싱 회로 (1902) 는 본원에 개시된 방법들, 기능들, 및 기술들 중 어느 것을 구현하는데 이용될 수도 있다. 저장부 (1906) 는 소프트웨어를 실행할 때 프로세서 (1904) 에 의해 조작되는 데이터를 저장하기 위해 이용될 수도 있고, 소프트웨어는 본원에 개시된 방법들 중 어느 하나를 구현하도록 구성될 수도 있다.
프로세싱 회로 (1902) 에서의 하나 이상의 프로세서들 (1904) 은 소프트웨어를 실행할 수도 있다. 본원에서 이용되는 바와 같이, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어, 또는 달리 지칭되더라도, 소프트웨어는 명령들, 명령 세트들, 코드, 코드 세그먼트들, 프로그램 코드, 프로그램들, 하위프로그램들, 소프트웨어 모듈들, 애플리케이션들, 소프트웨어 애플리케이션들, 소프트웨어 패키지들, 루틴들, 서브루틴들, 오브젝트들, 실행가능물들, 실행의 스레드들, 절차들, 기능들, 알고리즘들 등을 의미하는 것으로 광범위하게 간주되어야 한다. 소프트웨어는 외부 컴퓨터 판독가능 매체에서 또는 저장부 (1906) 에서 컴퓨터 판독가능 형태로 상주할 수도 있다. 컴퓨터 판독가능 매체 및/또는 저장부 (1906) 는 비일시적 컴퓨터 판독가능 매체일 수도 있다. 비일시적 컴퓨터 판독가능 저장 매체는 예를 들어, 자기 저장 디바이스 (예를 들어, 하드 디스크, 플로피 디스크, 마그네틱 스트립), 광학 디스크 (예를 들어, 컴팩트 디스크 (CD) 또는 디지털 다기능 디스크 (DVD)), 스마트 카드, 플래시 메모리 디바이스 (예를 들어, "플래시 드라이브", 카드, 스틱, 키 드라이브), 랜덤 액세스 메모리 (RAM), ROM, PROM, 소거가능 PROM (EPROM), EEPROM, 레지스터, 탈착가능 디스크, 및/또는 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 저장하기 위한 임의의 다른 적절한 매체를 포함한다. 컴퓨터 판독가능 저장 매체 및/또는 저장부 (1906) 는 또한 예를 들어, 반송파, 송신 라인, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 송신하기 위한 임의의 다른 적절한 매체를 포함할 수도 있다. 컴퓨터 판독가능 저장 매체 및/또는 저장부 (1906) 는 프로세싱 회로 (1902) 에, 프로세서 (1904) 에, 프로세싱 회로 (1902) 의 외부에, 또는 프로세싱 회로 (1902) 를 포함한 다수의 엔티티들에 걸쳐 분산될 수도 있다. 컴퓨터 판독가능 매체 및/또는 저장부 (1906) 는 컴퓨터 프로그램 제품에서 구현될 수도 있다. 예를 들어, 컴퓨터 프로그램 제품은 패키징 재료들에서 컴퓨터 판독가능 매체를 포함할 수도 있다. 당해 기술 분야의 당업자는 전체 시스템 상에 부여되는 전체 설계 제약들 및 특정 애플리케이션에 따라 본 개시물 전반에 걸쳐 제시된 설명의 기능성을 최상으로 구현하는 방법을 알고 있을 것이다.
저장부 (1906) 는 소프트웨어 모듈들 (1916) 로서 본원에서는 지칭될 수도 있는 로딩가능 코드 세그먼트들, 모듈들, 애플리케이션들, 프로그램들 등에서 유지 및/또는 구성되는 소프트웨어를 유지할 수도 있다. 소프트웨어 모듈들 (1916) 각각은 프로세싱 회로 (1902) 상에 설치 또는 로딩되고 하나 이상의 프로세서들 (1904) 에 의해 실행될 때 하나 이상의 프로세서들 (1904) 의 동작을 제어하는 런타임 이미지 (1914) 에 기여하는 명령들 및 데이터를 포함할 수도 있다. 실행될 때, 특정 명령들은 프로세싱 회로 (1902) 로 하여금 본원에 설명된 특정 방법들, 알고리즘들, 및 프로세스들에 따라 기능을 수행하게 할 수도 있다.
소프트웨어 모듈들 (1916) 의 일부는 프로세싱 회로 (1902) 의 초기화 동안에 로딩될 수도 있고, 이들 소프트웨어 모듈들 (1916) 은 본원에 설명된 여러 기능들의 수행을 실행하도록 프로세싱 회로 (1902) 를 구성할 수도 있다. 예를 들어, 일부 소프트웨어 모듈들 (1916) 은 프로세서 (1904) 의 내부 디바이스들 및/또는 로직 회로들 (1922) 을 구성할 수도 있고, 트랜시버 (1912), 버스 인터페이스 (1908), 사용자 인터페이스 (1918), 타이머들, 수학적 코프로세서들 등과 같은 외부 디바이스들에 대한 액세스를 관리할 수도 있다. 소프트웨어 모듈들 (1916) 은 인터럽트 핸들러들 및 디바이스 드라이버들과 상호작용하고 프로세싱 회로 (1902) 에 의해 제공된 여러 리소스들에 대한 액세스를 제어하는 제어 프로그램 및/또는 오퍼레이팅 시스템을 포함할 수도 있다. 리소스들은 메모리, 프로세싱 시간, 트랜시버 (1912), 사용자 인터페이스 (1918) 에 대한 액세스 등을 포함할 수도 있다.
프로세싱 회로 (1902) 의 하나 이상의 프로세서들 (1904) 은 다기능성일 수도 있어, 소프트웨어 모듈들 (1916) 중 일부가 상이한 인스턴스들, 또는 동일한 기능의 상이한 인스턴스들을 수행하도록 로딩 및 구성된다. 하나 이상의 프로세서들 (1904) 은 예를 들어, 사용자 인터페이스 (1918), 트랜시버 (1912) 및 디바이스 드라이버들로부터의 입력들에 응답하여 개시된 백그라운드 작업들을 관리하도록 추가적으로 적응될 수도 있다. 다수의 기능들의 수행을 지원하기 위하여, 하나 이상의 프로세서들 (1904) 은 멀티테스킹 환경을 제공하도록 구성될 수도 있어, 이에 의해 복수의 기능들 각각이 필요에 따라, 또는 원하는 바에 따라 하나 이상의 프로세서들 (1904) 에 의해 서비스되는 작업들의 세트로서 구현된다. 일 예에서, 멀티태스킹 환경은 상이한 작업들 간에 프로세서 (1904) 의 제어를 통과시키는 타임쉐어링 프로그램 (1920) 을 이용하여 구현될 수도 있고, 이에 의해 임의의 현저한 동작들의 완료시에, 및/또는 이러한 인터럽트와 같은 입력에 응답하여, 각각의 작업이 하나 이상의 프로세서들 (1904) 의 제어를 타임쉐어링 프로그램 (1920) 으로 리턴시킨다. 작업이 하나 이상의 프로세서들 (1904) 의 제어를 행할 때, 프로세싱 회로는 제어 중인 작업과 연관된 기능에 의해 어드레싱되는 목적들에 대하여 효과적으로 특수화된다. 타임쉐어링 프로그램 (1920) 은 오퍼레이팅 시스템, 라운드 로빈 기반으로 제어들을 트랜스퍼하는 메인 루프, 기능들의 우선순위화에 따라 하나 이상의 프로세서들 (1904) 의 제어를 할당하는 기능 및/또는 하나 이상의 프로세서들 (1904) 의 제어를 핸들링 기능에 제공함으로써 외부 이벤트들에 응답하는 인터럽트 구동된 메인 루프를 포함할 수도 있다.
도 20 은 C-PHY 3-페이즈 인터페이스에 커플링된 장치에서의 수신기 회로에 의해 수행될 수도 있는 데이터 통신 방법의 흐름도 (2000) 이다.
블록 (2002) 에서, 수신기 회로는 3-와이어, 3-페이즈 인터페이스 상에서 송신되는 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성할 수도 있다. 심볼들은 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수로 송신될 수도 있다.
블록 (2004) 에서, 수신기 회로는 클록 복구 회로의 루프 지연을 조정하여 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 제 1 클록을 수정할 수도 있다. 클록 복구 회로는 정수개의 심볼들의 제 1 심볼에 대한 제 1 클록 신호에서 펄스를 생성할 수도 있고 정수개의 심볼들에서 다른 심볼들에 대한 펄스 생성을 억제할 수도 있다. 루프 지연은 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서 제 1 검출된 천이에 응답하여 펄스를 생성하는데 이용되는 펄스 생성 사이클에 대응할 수도 있다. 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서 다른 천이의 검출은 펄스 생성 사이클 동안 억제될 수도 있다. 수신기 회로는 클록 복구 회로에서 하나 이상의 프로그래밍가능 지연 회로들을 구성하는 것에 의해 루프 지연을 조정할 수도 있다.
블록 (2006) 에서, 수신기 회로는 제 2 클럭 신호를 제공하기 위해 클록 생성 회로를 구성할 수도 있다. 제 2 클록 신호는 상기 정수개의 심볼들에서의 다른 심볼들 각각에 대응하는 펄스들을 포함할 수도 있다.
블록 (2008) 에서, 수신기 회로는 제 1 클록 신호 및 제 2 클록 신호를 이용하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처할 수도 있다. 일 예에서, 제 1 클록 신호는 제 2 클록 신호와 결합되어 수신 클록 신호를 생성할 수도 있다. 수신 클록 심볼은 신호를 캡처하는 클록 레지스터들에 이용될 수도 있다.
일 예에서, 제 1 주파수는 상기 제 2 주파수의 2 배이고, 제 2 클록 신호는 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함할 수도 있다. 이 예에서, 제 2 주파수는 제 1 클록 신호에 대해 180 도 페이즈-시프트된다. 다른 예에서, 제 2 주파수는 제 1 주파수의 1/3 이고, 제 2 클록 신호는 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함할 수도 있다. 다른 예에서, 제 2 주파수는 제 1 주파수의 1/4 이고, 제 2 클록 신호는 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함할 수도 있다. 다른 제수 (divisor) 가 제 2 주파수를 도출하도록 채택될 수도 있다.
일부 사례들에서, 클록 복구 회로의 루프 지연을 조정하는 것은 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하도록 제 1 회로를 구성하고, 복수의 캘리브레이션 사이클들 각각 동안 참조 클록 신호 및 제 1 클록 신호의 주파수들을 비교하는 것에 의해 제 1 클록 신호의 현재 주파수를 결정하고, 현재 주파수가 제 2 주파수보다 더 크다고 결정될 때 루프 지연을 증가시키고, 현재 주파수가 제 2 주파수보다 더 작다고 결정될 때 루프 지연을 감소시키며, 현재 주파수가 제 2 주파수와 동일하다고 결정될 때 복수의 캘리브레이션 사이클을 터미네이션하는 것을 포함한다. 참조 클록 신호는 제 1 주파수에 대응하는 주파수를 가질 수도 있다.
도 21 은 프로세싱 회로 (2102) 를 채용하는 장치 (2100) 에 대한 하드웨어 구현의 일 예를 예시하는 다이어그램이다. 프로세싱 회로는 통상적으로 마이크로프로세서, 마이크로제어기, 디지털 신호 프로세서, 시퀀서, 및 상태 머신 중 하나 이상을 포함할 수도 있는 프로세서 (2116) 를 갖는다. 프로세싱 회로 (2102) 는 버스 (2120) 에 의해 일반적으로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (2120) 는 프로세싱 회로 (2102) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하여 임의의 수의 상호접속하는 버스들 및 브리지들을 포함할 수도 있다. 버스 (2120) 는 프로세서 (2116), 모듈 또는 회로들 (2104, 2106, 2108 및 2110) 로 표현되는 하나 이상의 프로세서 및/또는 하드웨어 모듈들, 커넥터들 또는 와이어들 (2114) 의 차동 페어들과 컴퓨터 판독가능 저장 매체 (2118) 사이의 차동 시그널링 상태를 결정하는 차동 수신기 회로들 (2112) 을 포함하는 여러 회로를 함께 링크한다. 버스 (2120) 는 또한 여러 다른 회로들, 이를 테면, 타이밍 소스들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들을 링크할 수도 있으며, 이는 공지되어 있으므로, 더 이상 설명되지 않을 것이다.
프로세서 (2116) 는 컴퓨터 판독가능 저장 매체 (2118) 상에 저장된 소프트웨어의 실행을 포함하는, 일반 프로세싱을 담당한다. 프로세서 (2116) 에 의해 실행될 때, 소프트웨어는 프로세싱 회로 (2102) 로 하여금 임의의 특정 장치에 대하여 위에 설명된 여러 기능들을 수행하게 한다. 컴퓨터 판독가능 저장 매체 (2118) 는 또한, 소프트웨어를 실행시킬 때 데이터 레인 및 클록 레인으로서 구성될 수도 있는 커넥터들 또는 와이어들 (2114) 상에서 송신된 심볼들로부터 디코딩된 데이터를 포함하고 프로세서 (2116) 에 의해 조작되는 데이터를 저장하는데 이용될 수도 있다. 프로세싱 회로 (2102) 는 모듈들 (2104, 2106, 2108 및 2110) 중 적어도 하나를 더 포함한다. 모듈들 (2104, 2106, 2108 및 2110) 은 컴퓨터 판독가능 저장 매체 (2118) 상에 상주/저장되는, 프로세서 (2116) 에서 실행되는 소프트웨어 모듈, 프로세서 (2116) 에 커플링되는 하나 이상의 하드웨어 모듈들 또는 이들의 일정 조합일 수도 있다. 모듈들 (2104, 2106, 2108 및/또는 2110) 은 마이크로제어기 명령들, 상태 머신 구성 파라미터들, 또는 이들의 일정 조합을 포함할 수도 있다.
일 구성에서, 장치 (2100) 는 C-PHY 3-페이즈 인터페이스 상의 데이터 통신을 위하여 구성될 수도 있다. 장치 (2100) 는 커넥터들 또는 와이어들 (2114) 상에서 송신된 심볼들의 시퀀스에 임베드된 타이밍 정보로부터 제 1 클록 신호를 복구하도록 구성되는 모듈 및/또는 회로 (2104), 제 1 클록 신호로부터 보간된 펄스들을 포함하는 제 2 클록 신호를 생성하기 위한 모듈들 및/또는 회로 (2106), 커넥터들 또는 와이어들 (2114) 로부터 심볼들을 캡처하도록 제 1 및 제 2 신호들을 이용하는 모듈 및/또는 회로 (2108), 및 클록 복구 모듈 및/또는 회로 (2104) 와 클록 생성 모듈 및/또는 회로 (2106) 를 캘리브레이션할 수 있는 모듈 및/또는 회로 (2110) 를 포함할 수도 있다.
장치 (2100) 는 여러 동작 모드들을 위하여 구성될 수도 있다. 일 예에서, 클록 복구 모듈 및/또는 회로 (2104) 는 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 송신되는 각각의 심볼에 대한 펄스를 포함하는 제 1 클록 신호를 제공하도록 적응될 수도 있고, 캘리브레이션 모듈 및/또는 회로 (2110) 는 클록 복구 회로의 루프 지연을 캘리브레이션하도록 적응될 수도 있고, 클록 생성 모듈 및/또는 회로 (2106) 는 제 2 클록 신호를 제공하도록 적응될 수도 있고, 심볼 캡처 모듈 및/또는 회로 (2108) 는 제 1 클록 신호 및 제 2 클록 신호를 이용하여 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하도록 적응될 수도 있다. 일 동작 모드에서, 캘리브레이션 모듈 및/또는 회로 (2110) 는 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 제 1 클록 신호를 수정한다. 제 1 동작 모드에서, 클록 복구 모듈 및/또는 회로 (2104) 는 정수개의 심볼들의 제 1 심볼에 대한 제 1 클록 신호에서 펄스를 생성하고 정수개의 심볼들에서 다른 심볼들에 대한 펄스 생성을 억제한다. 제 2 클록 신호는 상기 정수개의 심볼들에서의 다른 심볼들 각각에 대응하는 펄스들을 포함할 수도 있다.
일부 사례들에서, 루프 지연은 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서 제 1 검출된 천이에 응답하여 펄스를 생성하는데 이용되는 펄스 생성 사이클에 대응한다. 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서 다른 천이의 검출은 펄스 생성 사이클 동안 억제될 수도 있다. 캘리브레이션 모듈 및/또는 회로 (2110) 는 프로그래밍 지연 회로를 프로그래밍하도록 구성될 수도 있다.
일 예에서, 제 1 주파수는 상기 제 2 주파수의 2 배이고, 제 2 클록 신호는 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함한다. 제 2 클록 신호는 제 1 클록 신호에 대하여 180 도 페이즈-시프트될 수도 있다. 다른 예에서, 제 2 주파수는 제 1 주파수의 1/3 이고, 제 2 클록 신호는 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함할 수도 있다. 다른 예에서, 제 2 주파수는 제 1 주파수의 1/4 이고, 제 2 클록 신호는 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함할 수도 있다.
일부 사례들에서, 캘리브레이션 모듈 및/또는 회로 (2110) 는 제 1 회로로 하여금, 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하게 하고, 복수의 캘리브레이션 사이클들 각각 동안 참조 클록 신호 및 제 1 클록 신호의 주파수들을 비교하는 것에 의해 제 1 클록 신호의 현재 주파수를 결정하게 하고, 현재 주파수가 제 2 주파수보다 더 크다고 결정될 때 루프 지연을 증가시키게 하고, 현재 주파수가 제 2 주파수보다 더 작다고 결정될 때 루프 지연을 감소시키게 하며, 현재 주파수가 제 2 주파수와 동일하다고 결정될 때 복수의 캘리브레이션 사이클들을 터미네이션하게 하도록 적응된다. 참조 클록 신호는 심볼들의 스트림의 송신 레이트에 대응하는 주파수를 가질 수도 있다.
개시된 프로세스들에서 단계들의 특정의 순서 또는 계층은 예시적인 접근방식들의 예시인 것이 이해된다. 설계 선호사항들에 기초하여, 프로세서들에서의 단계들의 특정 순서 또는 계층은 재배열될 수도 있음이 이해된다. 추가로, 일부 단계들은 결합 또는 생략될 수도 있다. 수반하는 방법 청구항들은 샘플 순서에서의 다양한 단계들의 요소들을 제시하고, 제시된 특정 순서 또는 계층으로 제한되는 것으로 의도되지 않는다.
이전 설명은 임의의 당업자가 여러 본원에서 설명하는 양태들을 실시할 수 있도록 하기 위해서 제공된다. 이들 양태들에 대한 여러 변경들은 당업자들에게 매우 자명할 것이며, 본원에서 정의하는 일반 원리들은 다른 양태들에 적용될 수도 있다. 따라서, 청구항들은 본원에서 나타낸 양태들에 한정시키려고 의도된 것이 아니며, 전문용어 청구항들 (language claims) 에 부합하는 전체 범위를 부여하려는 것이며, 여기서, 엘리먼트에 대한 단수형 참조는 "하나 및 오직 하나" 로 구체적으로 달리 말하지 않는 한, "하나 및 오직 하나" 를 의미하기 보다는, "하나 이상" 을 의미하도록 의도된다. 달리 언급되지 않은 한, 용어 "일부" 는 하나 이상을 지칭한다. 당업자들에게 알려져 있거나 또는 추후 알려지는, 본 개시물을 통해서 설명한 여러 양태들의 엘리먼트들에 대한 모든 구조적 및 기능적 균등물들이 본원에 참조로 명백히 포함되며, 청구항들에 의해 포괄되도록 의도된다. 또한, 본원에서 개시된 어떤 것도 이런 개시물이 청구항들에 명시적으로 인용되는지에 상관없이, 대중에 지정되도록 의도된 것이 아니다. 어떠한 청구항 엘리먼트도 그 엘리먼트가 어구 "하는 수단" 을 이용하여 명백히 언급되지 않는 한, 기능식 (means plus function) 청구항으로서 해석되지 않아야 한다.

Claims (29)

  1. 데이터 통신들의 방법으로서,
    3-와이어, 3-페이즈 인터페이스 상에서 송신된 심볼들에 대응하는 펄스들을 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하는 단계로서, 상기 심볼들은 상기 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 송신되는, 상기 클록 복구 회로를 구성하는 단계;
    상기 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 상기 제 1 클록 신호를 수정하기 위해 상기 클록 복구 회로의 루프 지연을 조정하는 단계로서, 상기 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 상기 제 1 클록 신호에서의 펄스를 생성하고, 상기 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하는 단계;
    제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 단계로서, 상기 제 2 클록 신호는 상기 정수개의 심볼들에서 다른 심볼들의 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하는 단계; 및
    상기 제 1 클록 신호 및 상기 제 2 클록 신호를 이용하여 상기 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하는 단계를 포함하고,
    상기 루프 지연은 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 제 1 검출된 천이에 응답하여, 펄스를 생성하는데 이용된 펄스 생성 사이클에 대응하며, 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 다른 천이들의 검출은 펄스 생성 사이클 동안 억제되는, 데이터 통신들의 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 루프 지연을 조정하는 단계는:
    프로그래밍가능 지연 회로를 구성하는 단계를 포함하는, 데이터 통신들의 방법.
  4. 제 1 항에 있어서,
    상기 제 1 주파수는 상기 제 2 주파수의 2 배이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함하는, 데이터 통신들의 방법.
  5. 제 4 항에 있어서,
    상기 제 2 클록 신호는 상기 제 1 클록 신호에 대하여 180 도 페이즈-시프트되는, 데이터 통신들의 방법.
  6. 제 1 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/3 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함하는, 데이터 통신들의 방법.
  7. 제 1 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/4 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함하는, 데이터 통신들의 방법.
  8. 제 1 항에 있어서,
    상기 클록 복구 회로의 상기 루프 지연을 조정하는 단계는:
    상기 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하도록 제 1 회로를 구성하는 단계로서, 상기 참조 클록 신호는 상기 심볼들의 스트림의 송신 레이트에 대응하는 주파수를 갖는, 상기 제 1 회로를 구성하는 단계;
    복수의 캘리브레이션 사이클들의 각각 동안에 상기 참조 클록 신호 및 상기 제 1 클록 신호의 주파수들을 비교하는 것에 의해 상기 제 1 클록 신호의 현재 주파수를 결정하는 단계;
    상기 현재 주파수가 상기 제 2 주파수보다 더 크다고 결정될 때 상기 루프 지연을 증가시키는 단계;
    상기 현재 주파수가 상기 제 2 주파수보다 더 작다고 결정될 때 상기 루프 지연을 감소시키는 단계; 및
    상기 현재 주파수가 상기 제 2 주파수와 동일하다고 결정될 때 상기 복수의 캘리브레이션 사이클들을 터미네이션하는 단계를 포함하는, 데이터 통신들의 방법.
  9. 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치로서,
    상기 3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 송신된 심볼들에 대응하는 펄스들을 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하기 위한 수단;
    상기 클록 복구 회로의 루프 지연을 캘리브레이션하기 위한 수단으로서, 하나의 동작 모드에서, 상기 루프 지연을 캘리브레이션하기 위한 수단은 상기 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 상기 제 1 클록 신호를 수정하고, 상기 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 상기 제 1 클록 신호에서의 펄스를 생성하고, 상기 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 루프 지연을 캘리브레이션하기 위한 수단;
    제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하기 위한 수단으로서, 상기 제 2 클록 신호는 상기 정수개의 심볼들에서 다른 심볼들의 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하기 위한 수단; 및
    상기 제 1 클록 신호 및 상기 제 2 클록 신호를 이용하여 상기 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하기 위한 수단을 포함하고,
    상기 루프 지연은 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 제 1 검출된 천이에 응답하여, 펄스를 생성하는데 이용된 펄스 생성 사이클에 대응하며, 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 다른 천이들의 검출은 펄스 생성 사이클 동안 억제되는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  10. 삭제
  11. 제 9 항에 있어서,
    상기 루프 지연을 캘리브레이션하기 위한 수단은:
    프로그래밍가능 지연 회로를 프로그래밍하도록 구성되는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  12. 제 9 항에 있어서,
    상기 제 1 주파수는 상기 제 2 주파수의 2 배이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함하고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에 대하여 180 도 페이즈-시프트되는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  13. 제 9 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/3 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함하는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  14. 제 9 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/4 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함하는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  15. 제 9 항에 있어서,
    상기 클록 복구 회로의 루프 지연을 캘리브레이션하기 위한 수단은:
    제 1 회로로 하여금 상기 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하게 하는 것으로서, 상기 참조 클록 신호는 심볼들의 스트림의 송신 레이트에 대응하는 주파수를 갖는, 상기 참조 클록 신호를 복구하게 하고;
    복수의 캘리브레이션 사이클들의 각각 동안에 상기 참조 클록 신호 및 상기 제 1 클록 신호의 주파수들을 비교하는 것에 의해 상기 제 1 클록 신호의 현재 주파수를 결정하고;
    상기 현재 주파수가 상기 제 2 주파수보다 더 크다고 결정될 때 상기 루프 지연을 증가시키고;
    상기 현재 주파수가 상기 제 2 주파수보다 더 작다고 결정될 때 상기 루프 지연을 감소시키고; 그리고
    상기 현재 주파수가 상기 제 2 주파수와 동일하다고 결정될 때 상기 복수의 캘리브레이션 사이클들을 터미네이션하도록 구성되는, 3-와이어, 3-페이즈 인터페이스 상에서 송신된 데이터를 디코딩하기 위한 장치.
  16. 데이터 통신을 위한 장치로서,
    3-와이어, 3-페이즈 인터페이스 상에서 제 1 주파수에서 심볼들의 스트림으로 송신된 심볼들에 대응하는 펄스들을 포함하는 제 1 클록 신호를 제공하도록 구성되는 클록 복구 회로;
    프로세싱 회로로서:
    상기 제 1 클록 신호가 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 수정될 때까지 상기 클록 복구 회로의 루프 지연을 조정하는 것으로서, 상기 클록 복구 회로는 심볼들의 스트림에서 정수개의 심볼들 중 제 1 심볼에 대한 상기 제 1 클록 신호에서의 펄스를 생성하고, 상기 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하고; 그리고
    제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 것으로서, 상기 제 2 클록 신호는 상기 정수개의 심볼들에서 다른 심볼들의 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하도록 구성되는, 상기 프로세싱 회로; 및
    상기 제 1 클록 신호 및 상기 제 2 클록 신호에서의 상기 펄스들에 응답하여 상기 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하는 하나 이상의 레지스터들을 포함하고,
    상기 루프 지연은 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 제 1 검출된 천이에 응답하여, 펄스를 생성하는데 이용된 펄스 생성 사이클에 대응하며, 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 다른 천이들의 검출은 펄스 생성 사이클 동안 억제되는, 데이터 통신을 위한 장치.
  17. 삭제
  18. 제 16 항에 있어서,
    상기 프로세싱 회로는 프로그래밍가능 지연 회로를 구성하는 것에 의해 상기 클록 복구 회로의 루프 지연을 조정하는, 데이터 통신을 위한 장치.
  19. 제 16 항에 있어서,
    상기 제 1 주파수는 상기 제 2 주파수의 2 배이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함하는, 데이터 통신을 위한 장치.
  20. 제 16 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/3 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함하는, 데이터 통신을 위한 장치.
  21. 제 16 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/4 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함하는, 데이터 통신을 위한 장치.
  22. 제 16 항에 있어서,
    상기 프로세싱 회로는:
    상기 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하도록 제 1 회로를 구성하는 것으로서, 상기 참조 클록 신호는 심볼들의 스트림의 송신 레이트에 대응하는 주파수를 갖는, 상기 제 1 회로를 구성하고;
    복수의 캘리브레이션 사이클들의 각각 동안에 상기 참조 클록 신호 및 상기 제 1 클록 신호의 주파수들을 비교하는 것에 의해 상기 제 1 클록 신호의 현재 주파수를 결정하고;
    상기 현재 주파수가 상기 제 2 주파수보다 더 크다고 결정될 때 상기 루프 지연을 증가시키고;
    상기 현재 주파수가 상기 제 2 주파수보다 더 작다고 결정될 때 상기 루프 지연을 감소시키고; 그리고
    상기 현재 주파수가 상기 제 2 주파수와 동일하다고 결정될 때 상기 복수의 캘리브레이션 사이클들을 터미네이션하는 것
    에 의해 상기 클록 복구 회로의 루프 지연을 조정하는, 데이터 통신을 위한 장치.
  23. 코드를 포함하는 프로세서 판독가능 저장 매체로서,
    상기 코드는:
    3-와이어, 3-페이즈 인터페이스 상에서 송신된 심볼들에 대응하는 펄스들을 포함하는 제 1 클록 신호를 제공하도록 클록 복구 회로를 구성하는 것으로서, 상기 심볼들은 제 1 주파수에서 상기 3-와이어, 3-페이즈 인터페이스 상에서 송신되는, 상기 클록 복구 회로를 구성하고;
    상기 제 1 클록 신호가 제 1 주파수의 1/2 이하인 제 2 주파수를 갖도록 상기 클록 복구 회로의 루프 지연을 조정하는 것으로서, 상기 클록 복구 회로는 정수개의 심볼들 중 제 1 심볼에 대한 상기 제 1 클록 신호에서의 펄스를 생성하고, 상기 정수개의 심볼들에서의 다른 심볼들에 대한 펄스 생성을 억제하는, 상기 클록 복구 회로의 루프 지연을 조정하고;
    제 2 클록 신호를 제공하도록 클록 생성 회로를 구성하는 것으로서, 상기 제 2 클록 신호는 상기 정수개의 심볼들에서 다른 심볼들의 각각에 대한 펄스들을 포함하는, 상기 클록 생성 회로를 구성하고; 그리고
    상기 제 1 클록 신호 및 상기 제 2 클록 신호를 이용하여 상기 3-와이어, 3-페이즈 인터페이스로부터 심볼들을 캡처하기 위한 것인, 코드를 포함하고,
    상기 루프 지연은 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 제 1 검출된 천이에 응답하여, 펄스를 생성하는데 이용된 펄스 생성 사이클에 대응하며, 상기 3-와이어, 3-페이즈 인터페이스의 시그널링 상태에서의 다른 천이들의 검출은 펄스 생성 사이클 동안 억제되는, 프로세서 판독가능 저장 매체.
  24. 삭제
  25. 제 23 항에 있어서,
    상기 루프 지연을 조정하는 것은 프로그래밍가능 지연 회로를 구성하는 것을 포함하는, 코드를 포함하는 프로세서 판독가능 저장 매체.
  26. 제 23 항에 있어서,
    상기 제 1 주파수는 상기 제 2 주파수의 2 배이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서 매 펄스마다 하나의 펄스를 포함하고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에 대하여 180 도 페이즈-시프트되는, 코드를 포함하는 프로세서 판독가능 저장 매체.
  27. 제 23 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/3 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 2 개의 펄스들을 포함하는, 코드를 포함하는 프로세서 판독가능 저장 매체.
  28. 제 23 항에 있어서,
    상기 제 2 주파수는 상기 제 1 주파수의 1/4 이고, 상기 제 2 클록 신호는 상기 제 1 클록 신호에서의 매 펄스마다 3 개의 펄스들을 포함하는, 코드를 포함하는 프로세서 판독가능 저장 매체.
  29. 제 23 항에 있어서,
    상기 클록 복구 회로의 상기 루프 지연을 조정하는 것은:
    상기 3-와이어, 3-페이즈 인터페이스로부터 수신된 심볼들의 스트림으로부터 참조 클록 신호를 복구하도록 제 1 회로를 구성하는 것으로서, 상기 참조 클록 신호는 심볼들의 스트림의 송신 레이트에 대응하는 주파수를 갖는, 상기 제 1 회로를 구성하는 것;
    복수의 캘리브레이션 사이클들의 각각 동안에 상기 참조 클록 신호 및 상기 제 1 클록 신호의 주파수들을 비교하는 것에 의해 상기 제 1 클록 신호의 현재 주파수를 결정하는 것;
    상기 현재 주파수가 상기 제 2 주파수보다 더 크다고 결정될 때 상기 루프 지연을 증가시키는 것;
    상기 현재 주파수가 상기 제 2 주파수보다 더 작다고 결정될 때 상기 루프 지연을 감소시키는 것; 및
    상기 현재 주파수가 상기 제 2 주파수와 동일하다고 결정될 때 상기 복수의 캘리브레이션 사이클들을 터미네이션하는 것을 포함하는, 코드를 포함하는 프로세서 판독가능 저장 매체.
KR1020187009217A 2015-09-01 2016-08-09 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구 KR102522742B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/842,644 2015-09-01
US14/842,644 US9496879B1 (en) 2015-09-01 2015-09-01 Multiphase clock data recovery for a 3-phase interface
PCT/US2016/046211 WO2017039985A1 (en) 2015-09-01 2016-08-09 Multiphase clock data recovery for a 3-phase interface

Publications (2)

Publication Number Publication Date
KR20180048952A KR20180048952A (ko) 2018-05-10
KR102522742B1 true KR102522742B1 (ko) 2023-04-17

Family

ID=56694265

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009217A KR102522742B1 (ko) 2015-09-01 2016-08-09 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구

Country Status (10)

Country Link
US (1) US9496879B1 (ko)
EP (1) EP3345334B1 (ko)
JP (1) JP6876681B2 (ko)
KR (1) KR102522742B1 (ko)
CN (1) CN107925563B (ko)
BR (1) BR112018004159B1 (ko)
CA (1) CA2992751C (ko)
ES (1) ES2777373T3 (ko)
TW (1) TWI720008B (ko)
WO (1) WO2017039985A1 (ko)

Families Citing this family (25)

* 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
US8064535B2 (en) 2007-03-02 2011-11-22 Qualcomm Incorporated Three phase and polarity encoded serial interface
KR20170008076A (ko) * 2015-07-13 2017-01-23 에스케이하이닉스 주식회사 고속 통신을 위한 인터페이스 회로 및 이를 포함하는 시스템
US9485080B1 (en) * 2015-09-01 2016-11-01 Qualcomm Incorporated Multiphase clock data recovery circuit calibration
US10742390B2 (en) * 2016-07-13 2020-08-11 Novatek Microelectronics Corp. Method of improving clock recovery and related device
US10419246B2 (en) * 2016-08-31 2019-09-17 Qualcomm Incorporated C-PHY training pattern for adaptive equalization, adaptive edge tracking and delay calibration
US10284361B2 (en) * 2017-05-05 2019-05-07 Mediatek Inc. Channel skew calibration method and associated receiver and system
KR101899247B1 (ko) * 2017-05-31 2018-09-14 한양대학교 산학협력단 동시 스위칭 잡음을 제거하는 송신기 및 이에 있어서 데이터 전송 방법
KR102401996B1 (ko) 2018-05-28 2022-05-24 삼성전자주식회사 타이밍 조절이 가능한 고속 멀티 레벨 신호 수신기를 포함하는 반도체 장치 및 상기 수신기를 포함하는 반도체 테스트 장치
US10469214B1 (en) * 2018-12-13 2019-11-05 Intel Corporation Clock recovery circuit and method of operating same
US10581587B1 (en) * 2019-04-29 2020-03-03 Advanced Micro Devices, Inc. Deskewing method for a physical layer interface on a multi-chip module
US11095425B2 (en) * 2019-10-25 2021-08-17 Qualcomm Incorporated Small loop delay clock and data recovery block for high-speed next generation C-PHY
US11038666B1 (en) * 2019-12-11 2021-06-15 Qualcomm Incorporated Open-loop, super fast, half-rate clock and data recovery for next generation C-PHY interfaces
KR20210088808A (ko) 2020-01-06 2021-07-15 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법
KR20210088807A (ko) * 2020-01-06 2021-07-15 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법
US11031939B1 (en) * 2020-03-19 2021-06-08 Mellanox Technologies, Ltd. Phase detector command propagation between lanes in MCM USR serdes
US11349445B2 (en) * 2020-09-10 2022-05-31 Qualcomm Incorporated Compensation of common mode voltage drop of sensing amplifier output due to decision feedback equalizer (DFE) taps
KR102265187B1 (ko) * 2021-02-08 2021-06-16 슈가스 주식회사 클럭 복구 회로
JP2022146532A (ja) 2021-03-22 2022-10-05 キオクシア株式会社 メモリシステム及び遅延制御方法
US11520729B2 (en) 2021-05-04 2022-12-06 Qualcomm Incorporated I2C bus architecture using shared clock and dedicated data lines
US11545980B1 (en) 2021-09-08 2023-01-03 Qualcomm Incorporated Clock and data recovery for multi-phase, multi-level encoding
CN113886300B (zh) * 2021-09-23 2024-05-03 珠海一微半导体股份有限公司 一种总线接口的时钟数据自适应恢复系统及芯片
US11956342B2 (en) * 2021-12-27 2024-04-09 Nvidia Corporation Reliable link management for a high-speed signaling interconnect
CN114298075B (zh) * 2021-12-30 2024-02-06 江苏集萃智能集成电路设计技术研究所有限公司 基于mcu的超高频国标阅读器基带解码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030141910A1 (en) * 2002-01-25 2003-07-31 Infineon Technologies Ag DLL-(Delay-Locked-Loop) circuit
US20090153205A1 (en) * 2007-12-18 2009-06-18 Micron Technology, Inc. Methods, devices, and systems for a delay locked loop having a frequency divided feedback clock
US20130241759A1 (en) * 2012-03-16 2013-09-19 Qualcomm Incorporated N-phase polarity data transfer

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771264A (en) * 1996-08-29 1998-06-23 Altera Corporation Digital delay lock loop for clock signal frequency multiplication
US5796392A (en) * 1997-02-24 1998-08-18 Paradise Electronics, Inc. Method and apparatus for clock recovery in a digital display unit
JP3523069B2 (ja) * 1998-06-30 2004-04-26 株式会社東芝 遅延型位相同期回路
DE102004014695B4 (de) * 2003-03-26 2007-08-16 Infineon Technologies Ag Takt- und Datenwiedergewinnungseinheit
KR100570632B1 (ko) * 2004-07-06 2006-04-12 삼성전자주식회사 클록복원회로 및 방법과 이를 이용한 고속 데이터송수신회로
CN101356787B (zh) * 2006-04-27 2011-11-16 松下电器产业株式会社 多路复用差动传送系统
US7742551B2 (en) 2006-07-31 2010-06-22 Mosaid Technologies Incorporated Pulse counter with clock edge recovery
EP2156555A4 (en) * 2007-06-05 2013-07-24 Rambus Inc TECHNIQUES FOR MULTIPLE CODING WITH AN EMBEDDED CLOCK
US7826279B2 (en) 2008-04-10 2010-11-02 Advanced Micro Devices, Inc. Programmable bias circuit architecture for a digital data/clock receiver
US8395446B1 (en) 2009-01-31 2013-03-12 Xilinx, Inc. Dual-mode amplifier
US8538355B2 (en) 2010-04-19 2013-09-17 Rf Micro Devices, Inc. Quadrature power amplifier architecture
US20130216003A1 (en) * 2012-02-16 2013-08-22 Qualcomm Incorporated RESETTABLE VOLTAGE CONTROLLED OSCILLATORS (VCOs) FOR CLOCK AND DATA RECOVERY (CDR) CIRCUITS, AND RELATED SYSTEMS AND METHODS
US9137008B2 (en) * 2013-07-23 2015-09-15 Qualcomm Incorporated Three phase clock recovery delay calibration
US9215063B2 (en) * 2013-10-09 2015-12-15 Qualcomm Incorporated Specifying a 3-phase or N-phase eye pattern

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030141910A1 (en) * 2002-01-25 2003-07-31 Infineon Technologies Ag DLL-(Delay-Locked-Loop) circuit
US20090153205A1 (en) * 2007-12-18 2009-06-18 Micron Technology, Inc. Methods, devices, and systems for a delay locked loop having a frequency divided feedback clock
US20130241759A1 (en) * 2012-03-16 2013-09-19 Qualcomm Incorporated N-phase polarity data transfer

Also Published As

Publication number Publication date
CA2992751A1 (en) 2017-03-09
TW201714425A (zh) 2017-04-16
ES2777373T3 (es) 2020-08-04
CN107925563B (zh) 2020-12-08
EP3345334A1 (en) 2018-07-11
KR20180048952A (ko) 2018-05-10
US9496879B1 (en) 2016-11-15
JP6876681B2 (ja) 2021-05-26
TWI720008B (zh) 2021-03-01
CN107925563A (zh) 2018-04-17
JP2018526912A (ja) 2018-09-13
CA2992751C (en) 2024-01-09
EP3345334B1 (en) 2019-11-20
BR112018004159B1 (pt) 2023-12-05
WO2017039985A1 (en) 2017-03-09
BR112018004159A2 (pt) 2018-10-02

Similar Documents

Publication Publication Date Title
KR102522742B1 (ko) 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구
KR102523235B1 (ko) 다상 클록 데이터 복원 회로 캘리브레이션
US10033519B2 (en) C-PHY half-rate clock and data recovery adaptive edge tracking
CN109644020B (zh) 用于自适应均衡、自适应边沿跟踪以及延迟校准的c-phy训练码型
US10298381B1 (en) Multiphase clock data recovery with adaptive tracking for a multi-wire, multi-phase interface
EP3788740A1 (en) Calibration pattern and duty-cycle distortion correction for clock data recovery in a multi-wire, multi-phase interface
US11411711B2 (en) Small loop delay clock and data recovery block for high-speed next generation C-PHY
KR102420905B1 (ko) 차세대 c-phy 인터페이스들을 위한 개방-루프, 초고속, 하프-레이트 클록 및 데이터 복구

Legal Events

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