KR20220100794A - 위상 조정 방법 및 시스템 - Google Patents

위상 조정 방법 및 시스템 Download PDF

Info

Publication number
KR20220100794A
KR20220100794A KR1020220002750A KR20220002750A KR20220100794A KR 20220100794 A KR20220100794 A KR 20220100794A KR 1020220002750 A KR1020220002750 A KR 1020220002750A KR 20220002750 A KR20220002750 A KR 20220002750A KR 20220100794 A KR20220100794 A KR 20220100794A
Authority
KR
South Korea
Prior art keywords
phase
phase code
updated
clock signal
code
Prior art date
Application number
KR1020220002750A
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 US17/211,758 external-priority patent/US11239992B1/en
Application filed by 삼성디스플레이 주식회사 filed Critical 삼성디스플레이 주식회사
Publication of KR20220100794A publication Critical patent/KR20220100794A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • G09G5/008Clock recovery
    • 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
    • H03L7/0814Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the phase shifting device being digitally controlled
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/10Monitoring; Testing of transmitters
    • H04B17/11Monitoring; Testing of transmitters for calibration
    • H04B17/12Monitoring; Testing of transmitters for calibration of transmit antennas, e.g. of the amplitude or phase
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/20Monitoring; Testing of receivers
    • H04B17/21Monitoring; Testing of receivers for calibration; for correcting measurements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • 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/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • H04L7/0025Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation 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
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L7/046Speed or phase control by synchronisation signals using special codes as synchronising signal using a dotting sequence
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/14Use of low voltage differential signaling [LVDS] for display data communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Pressure Welding/Diffusion-Bonding (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

본 발명의 한 실시예에 따른 위상 조정 방법은, 직렬 클록 신호를 수신하는 단계, 직렬 데이터 신호를 수신하는 단계, 상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 복수의 위상 코드를 스위핑하는 단계, 상기 복수의 위상 코드 중 제1 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제2 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제3 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제4 위상 코드를 식별하는 단계, 상기 제1 위상 코드, 상기 제2 위상 코드, 상기 제3 위상 코드 및 상기 제4 위상 코드에 기초하여 평균 위상 코드를 결정하는 단계, 그리고 상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계를 포함하며, 상기 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고, 상기 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만든다.

Description

위상 조정 방법 및 시스템 {PHASE CALIBRATION METHODS AND SYSTEMS}
본 발명은 위상 조정 방법 및 시스템에 관한 것으로서, 더욱 상세하게는 직렬 인터페이스가 있는 위상 조정 방법 및 시스템에 관한 것이다.
본 출원은 2021년 1월 8일에 미국 특허청에 출원한 미국 특허출원번호 제63/135,434호를 우선권 주장하며, 여기에 인용함으로써 이 출원의 전체 내용을 본원에 포함한다.
고속 직렬 인터페이스를 통한 데이터 전송은 인터페이스를 통해서 전송되는 데이터와 맞춰 조정된 클록 신호에 영향을 받는다. 조정되지 않은 클록 신호로 인하여 간혹 신뢰할 수 없는, 오류가 있기 쉬운 데이터가 생길 수 있다.
본 발명이 해결하고자 하는 과제는 클록 신호를 효과적으로 조정하는 방법을 제시하는 것이다.
본 발명의 한 실시예에 따른 위상 조정 방법은, 직렬 클록 신호를 수신하는 단계, 직렬 데이터 신호를 수신하는 단계, 상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 복수의 위상 코드를 스위핑하는 단계, 상기 복수의 위상 코드 중 제1 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제2 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제3 위상 코드를 식별하는 단계, 상기 복수의 위상 코드 중 제4 위상 코드를 식별하는 단계, 상기 제1 위상 코드, 상기 제2 위상 코드, 상기 제3 위상 코드 및 상기 제4 위상 코드에 기초하여 평균 위상 코드를 결정하는 단계, 그리고 상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계를 포함하며, 상기 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고, 상기 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만든다.
상기 직렬 데이터 신호는 상기 직렬 클록 신호와 동일한 훈련 패턴을 포함하며, 상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%일 수 있다.
상기 특정 값은 1 또는 0이며, 상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고, 상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함할 수 있다.
상기 복수의 위상 코드를 스위핑하는 단계는 상기 직렬 데이터 신호의 3개 단위 구간을 스위핑하는 단계를 포함할 수 있다.
상기 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계는 상기 직렬 클록 신호의 승강점이 상기 직렬 데이터 신호의 데이터 아이의 중심에 정렬하도록 상기 직렬 클록 신호를 전이시키는 단계를 포함할 수 있다.
상기 직렬 데이터 신호에서 추출한 비트는 상기 직렬 클록 신호의 상승점에 대응하는 제1 비트와 상기 직렬 클록 신호의 하강점에 대응하는 제2 비트를 포함할 수 있다.
상기 위상 조정 방법은, 위상 코드의 제1 윈도를 스위핑하여 갱신된 제1 위상 코드 및 갱신된 제2 위상 코드를 식별하는 단계, 위상 코드의 제2 윈도를 스위핑하여 갱신된 제3 위상 코드 및 갱신된 제4 제2 위상 코드를 식별하는 단계, 상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 갱신된 평균 위상 코드를 결정하는 단계, 그리고 상기 갱신된 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 더 전이시키는 단계를 더 포함하며, 상기 제1 윈도는 상기 제1 위상 코드 빼기 상수인 지점에서 시작하고 상기 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고, 상기 제2 윈도는 상기 제3 위상 코드 빼기 상기 상수인 지점에서 시작하고 상기 제4 위상 코드 더하기 상기 상수인 지점에서 끝날 수 있다.
상기 상수는 프로그램가능한 소정 값일 수 있다.
상기 갱신된 제1 위상 코드는 상기 갱신된 제2 위상 코드와 다르고, 상기 갱신된 제3 위상 코드는 상기 갱신된 제4 위상 코드와 다를 수 있다.
본 발명의 한 실시예에 따른 시스템은, 컴퓨터 실행 가능한 명령(computer-executable instructions)을 저장하는 메모리, 그리고 상기 명령을 실행하는 프로세서를 포함하는 시스템으로서, 상기 프로세서가 상기 명령을 실행하면 상기 시스템은, 직렬 클록 신호를 수신하고, 직렬 데이터 신호를 수신하고, 상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 복수의 위상 코드를 스위핑하고, 상기 복수의 위상 코드 중 제1 위상 코드를 식별하고, 상기 복수의 위상 코드 중 제2 위상 코드를 식별하고, 상기 복수의 위상 코드 중 제3 위상 코드를 식별하고, 상기 복수의 위상 코드 중 제4 위상 코드를 식별하고, 상기 제1 위상 코드, 상기 제2 위상 코드, 상기 제3 위상 코드 및 상기 제4 위상 코드에 기초하여 평균 위상 코드를 결정하고, 상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키며, 상기 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고, 상기 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만든다.
상기 직렬 데이터 신호는 상기 직렬 클록 신호와 동일한 훈련 패턴을 포함하며, 상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%일 수 있다.
상기 특정 값은 1 또는 0이며, 상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고, 상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함할 수 있다.
상기 복수의 위상 코드의 스위핑은 상기 직렬 데이터 신호의 3개 단위 구간을 스위핑할 수 있다.
상기 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 동작은 상기 직렬 클록 신호의 승강점이 상기 직렬 데이터 신호의 데이터 아이의 중심에 정렬하도록 상기 직렬 클록 신호를 전이시키는 동작을 포함할 수 있다.
상기 직렬 데이터 신호에서 추출한 비트는 상기 직렬 클록 신호의 상승점에 대응하는 제1 비트와 상기 직렬 클록 신호의 하강점에 대응하는 제2 비트를 포함할 수 있다.
상기 프로세서가 상기 명령을 실행하면 상기 시스템은 또한, 위상 코드의 제1 윈도를 스위핑하여 갱신된 제1 위상 코드 및 갱신된 제2 위상 코드를 식별하고, 위상 코드의 제2 윈도를 스위핑하여 갱신된 제3 위상 코드 및 갱신된 제4 제2 위상 코드를 식별하고, 상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 갱신된 평균 위상 코드를 결정하고, 그리고 상기 갱신된 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 더 전이시키며, 상기 제1 윈도는 상기 제1 위상 코드 빼기 상수인 지점에서 시작하고 상기 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고, 상기 제2 윈도는 상기 제3 위상 코드 빼기 상기 상수인 지점에서 시작하고 상기 제4 위상 코드 더하기 상기 상수인 지점에서 끝날 수 있다.
상기 상수는 프로그램가능한 소정 값일 수 있다.
상기 갱신된 제1 위상 코드는 상기 갱신된 제2 위상 코드와 다르고, 상기 갱신된 제3 위상 코드는 상기 갱신된 제4 위상 코드와 다를 수 있다.
본 발명의 한 실시예에 따른 위상 조정 방법은, 직렬 클록 신호를 수신하는 단계, 직렬 데이터 신호를 수신하는 단계, 상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 위상 코드의 제1 윈도를 스위핑하는 단계, 상기 위상 코드의 제1 윈도 중 갱신된 제1 위상 코드를 식별하는 단계, 상기 위상 코드의 제1 윈도 중 갱신된 제2 위상 코드를 식별하는 단계, 상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 위상 코드의 제2 윈도를 스위핑하는 단계, 상기 위상 코드의 제2 윈도 중 갱신된 제3 위상 코드를 식별하는 단계, 상기 위상 코드의 제2 윈도 중 갱신된 제4 위상 코드를 식별하는 단계, 상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 평균 위상 코드를 결정하는 단계, 그리고 상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계를 포함하며, 상기 제1 윈도는 소정의 제1 위상 코드 빼기 상수인 지점에서 시작하고 소정의 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고, 상기 갱신된 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고, 상기 갱신된 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고, 상기 제2 윈도는 소정의 제3 위상 코드 빼기 상수인 지점에서 시작하고 소정의 제4 위상 코드 더하기 상기 상수인 지점에서 끝나고, 상기 갱신된 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고, 상기 갱신된 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만든다.
상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%이고, 상기 특정 값은 1 또는 0이고, 상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고, 상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함할 수 있다.
이와 같이 함으로써 클록 신호를 효과적으로 조정할 수 있다.
도 1은 본 발명의 한 실시예에 따른 직렬 인터페이스를 가지는 전자 장치를 도시한 것으로서, 위상 조정 회로의 블록도이다.
도 2a 및 도 2b는 본 발명의 한 실시예에 따른 직렬 클록 신호와 직렬 데이터 신호를 도시한 것으로서, 데이터를 클록 신호의 상승점에서 샘플링한다.
도 3a 및 도 3b는 본 발명의 한 실시예에 따른 직렬 클록 신호와 직렬 데이터 신호를 도시한 것으로서, 데이터를 클록 신호의 상승점과 하강점 양쪽에서 샘플링한다.
도 4는 본 발명의 한 실시예에 따른 데이터의 추출 비트의 1의 백분율을 나타낸 위상 코드 스위프의 그래프이다.
도 5는 본 발명의 한 실시예에 따른 지터(jittery) 클록에서 나온 오차를 가지는 데이터의 추출 비트의 1의 백분율을 나타낸 위상 코드 스위프의 그래프이다.
도 6은 본 발명의 한 실시예에 따른 데이터의 추출 비트의 1의 백분율을 나타낸 위상 코드 스위프의 그래프이다.
도 7은 본 발명의 한 실시예에 따른 데이터의 추출 비트의 1의 백분율을 나타낸 위상 코드 스위프의 그래프이다.
도 8은 본 발명의 한 실시예에 따른 위상 조정 방법의 흐름도이다.
본 발명의 실시예와 그 이점은 다음의 상세한 설명을 통하여 가장 잘 이해할 수 있다. 별다른 설명이 없는 한, 도면과 명세서 전체를 통틀어 동일한 도면 부호는 동일한 구성요소를 가리키며, 이에 따라 설명을 반복하지 않는다. 또한, 도면에서 부분, 층, 영역 등은 명료한 이해를 위하여 과장될 수 있다.
이제 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 상세하게 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 이러한 실시예를 제공함으로써 발명의 상세한 설명이 완전하고 풍부해질 것이며 발명의 여러 측면과 특징을 당업자에게 충분히 보여줄 것이다. 따라서, 당업자가 본 발명의 다양한 측면과 특징을 완전하게 이해하는 데 필요하지 않은 과정, 장치, 기술 등은 설명을 생략한다.
본 발명의 실시예는 고속 직렬 데이터 인터페이스(high-speed serial data interface)를 사용하여 한 장치에서 다른 장치로 데이터를 전송하는 장치에 관한 것이다. 고속 직렬 데이터 인터페이스의 한 예로는 비디오 및/또는 오디오 데이터를 한 장치에서 다른 장치로 전송하는 MIPI D-PHY 등의 모바일 표시 장치 인터페이스를 들 수 있다. 고속 직렬 데이터 인터페이스의 다른 예로는 DDR 인터페이스 또는 당업자에게 알려진 다른 고속 직렬 데이터 인터페이스가 있다. 더 일반적으로, 본 발명의 한 실시예는 전송-클록(forwarded-clock) PHY 프로토콜에서 전송된 클록의 위상을 조정하여 데이터가 정확하게 샘플링되도록 하는 위상 조정 방법에 관한 것이다.
도 1은 본 발명의 한 실시예에 따른 직렬 인터페이스를 가지는 전자 장치를 도시한 것으로서, 위상 조정 회로(100)의 블록도이다.
본 발명의 한 실시예에 따르면, 송신기(102)는 MIPI D-PHY 등 고속 직렬 데이터 인터페이스(high-speed serial data interface)로 함께 결합되어 있는 수신기(108)에 데이터를 전송한다. 예를 들면, 송신기(102)는 컴퓨터 태블릿일 수 있고, 수신기(108)는 표시 장치일 수 있으며, 컴퓨터 태블릿은 영상 데이터를 표시 장치에 보내서 표시될 수 있도록 할 수 있다. 본 발명의 한 실시예에 따르면, 송신기(102)는 적어도 클록 송신기(clock transmitter)(104) 및 데이터 송신기(data transmitter)(106)를 포함하며, 수신기(108)는 적어도 클록 수신기(clock receiver)(110) 및 데이터 수신기(data receiver)(112)를 포함한다. 클록 송신기(104)는 직렬 클록 신호를 전송하고 클록 수신기(110)는 이를 수신하며, 데이터 송신기(106)는 직렬 데이터를 송신하고 데이터 수신기(112)는 이를 수신한다. 따라서 수신기(108)와 연결된 슬라이서(slicer)[또는 샘플러(sampler)](118)는 수신한 클록 신호에 기초하여, 예를 들어 클록 신호의 상승점(rising edge)마다 수신한 직렬 데이터 신호를 샘플링한다.
본 발명의 한 실시예에 따르면, 송신기(102) 및 수신기(108)는 동일한 전자 장치 또는 시스템의 일부일 수 있는데, 예를 들면, 송신기(102) 및 수신기(108)는 표시 장치 내에서 고속 직렬 인터페이스를 통하여 연결될 수 있다. 본 발명의 다른 실시예에 따르면, 송신기(102) 및 수신기(108)는 하나의 컴퓨터 내에서 고속 직렬 인터페이스를 통하여 연결될 수 있으며, 그 컴퓨터의 한 영역에서 다른 영역으로 데이터를 전송할 수 있다.
도 1에 도시한 바와 같은 실시예에 따르면, 클록 송신기(104)는 주기적인 구형파(矩形波, square wave) 클록 신호를 전송하고, 데이터 송신기(106)는 데이터 신호를 전송한다. 여기에서, 도 1의 122에 도시한 것처럼, 클록 신호 및 데이터 신호는 클록 신호의 승강점(edges)(보기: 상승점 또는 하강점)이 데이터 아이(data eye)의 중간에 정렬되도록 전송한다. 이러한 정렬이 바람직한 것은 슬라이서(118)가 클록 신호의 승강점, 예를 들어 클록 신호의 상승점을 사용하여 데이터 신호를 샘플링하기 때문이다. 클록 신호의 승강점을 데이터 아이의 중간에 정렬함으로써, 정확한 데이터를 샘플링하는 것이 보장된다. 즉, 클록 승강점이 데이터 아이 중간에 있고 그 곳에서는 데이터가 1에서 0으로 바뀌거나 0에서 1로 바뀌지 않으므로, 데이터가 논리 1이면 논리 1이 샘플링되고, 데이터가 논리 0이면 논리 0이 샘플링된다.
클록 신호 및 데이터 신호가 고속 직렬 인터페이스를 통해서 수신기에 전송되는 동안, 클록 신호의 위상이 (예를 들어, 데이터 신호에 대해서) 전이될 수 있다. 어떤 경우에는, 도 1의 124에 도시한 것처럼, 클록 신호의 위상이 전이되어 클록 신호의 승강점이 데이터 신호의 승강점과 정렬, 또는 거의 정렬될 수 있다. 이런 일이 생기면, 슬라이서(118)가 예를 들어 클록 신호의 상승점에서 데이터 신호를 샘플링하지만, 클록 신호와 데이터 신호가 더 이상 정렬되지 않기 때문에 슬라이서(118)가 데이터의 정확한 표본을 추출하지 못할 수 있다. 즉, 데이터 신호가 조금 앞서서 샘플링되는지 아니면 조금 뒤쳐져서 샘플링되는지에 따라, 샘플링된 데이터가 논리 1으로 추출될 수도 있고 논리 0으로 추출될 수도 있다. 그러므로 송신기(102)가 처음 송신할 때처럼, 수신한 클록 신호의 승강점이 데이터 신호의 데이터 아이의 중간에 정렬되도록 위상 조정(phase calibration) 과정을 두어 위상 전이를 조정하는 것이 바람직하다. 따라서 위상 조정을 수행함으로써 클록 신호와 데이터 신호를 도 1의 126에 도시한 것처럼 적절하게 정렬할 수 있다. 본 발명의 한 실시예에 따르면, 시스템 또는 장치를 켰을 때 초기 위상 조정을 수행할 수 있다. 본 발명의 다른 실시예에 따르면, 동작을 하는 동안 [예를 들어, 데이터 전송에 휴지기(pause)가 있을 때] 조정 데이터 또는 훈련 데이터를 송신하여 주기적으로, 또는 어떤 규칙적인 간격으로 위상 조정을 수행할 수 있다. 본 발명의 다른 실시예에 따르면, 초기 위상 조정과 주기적 위상 조정을 조합하여 수행함으로써 적절하게 조정된 직렬 인터페이스를 더 강화할 수 있다.
본 발명의 한 실시예에 따르면, 위상 보간기(phase interpolator)(116)는 직렬 클록 수신기(108)와 연결되어 있고 위상 전이 클록 신호(phase shifted clock signal)를 수신한다. 슬라이서(118)는 데이터 수신기(112)와 연결되어 있고 데이터 신호를 수신한다. 위상 전이 클록 신호가 위상 보간기(116)에서 슬라이서(118)로 전송되고, 슬라이서(118)는 이 위상 전이 클록 신호에 기초하여 수신한 직렬 데이터를 샘플링한다. 따라서 본 발명의 한 실시예는 위상 보간기(116)가 슬라이서(118)에 위상 조정된(adjusted 또는 calibrated) 클록 신호를 제공하여 슬라이서(118)가 데이터를 올바르게 샘플링할 수 있도록 하는 위상 전이 클록 신호의 위상 조정 방법을 제시한다. 본 발명의 한 실시예에 따르면, 번갈아 나타나는 0과 1을 포함하는 직렬 클록 신호와 동일하거나 실질적으로 동일한 훈련 데이터 신호를 슬라이서(118)에 공급하여 위상 조정을 수행할 수 있다.
본 발명의 한 실시예에 따르면, 슬라이서(118)로부터의 샘플링 데이터(sampled data)는 역직렬화기(deserializer)(120)에 공급되고 역직렬화기(120)는 직렬 데이터 신호를 역직렬화하고 역직렬화 데이터(deserialized data)를 위상 조정기(phase calibrator)(114)에 공급한다. 본 발명의 한 실시예에 따르면, 역직렬화 데이터가 16 비트의 데이터 블록일 수 있으며, 본 발명의 다른 실시예에 따르면, 역직렬화 데이터는 32, 64, 또는 소정 비트의 데이터 블록일 수 있다. 위상 조정기(114)는 역직렬화 데이터를 취하고 위상 조정 과정을 수행하여 위상 코드(phase code)를 결정하는데, 위상 코드는 위상 보간기(116)에 공급되어 위상 보간기(116)가 위상 전이 클록 신호를 조정하는 데 사용된다.
도 2a 및 도 2b는 예를 들면, 케이블, 접속부 등에서 발생하는 간섭 등의 외적 요소로 인하여 클록 신호가 이동 또는 전이한 경우를 보여준다. 특히 도 2a에는 직렬 클록 신호와 직렬 데이터 신호가 나타나 있는데, 직렬 클록 신호는 적정하게 조정된 클록 신호에 대하여 오른쪽으로 이동하였다. 여기에서, 적정하게 조정된 클록 신호는 도 1의 122로 나타낸 것과 같이 클록 신호의 상승점이 데이터 신호의 데이터 아이의 중심(보기: 0의 중심)과 정렬되어 있는 것이다. 도 2a에 도시한 클록 신호는 상승점이 데이터 신호의 0의 중심에서 벗어나 데이터 신호의 상승점에 가까워졌으므로 오른쪽으로 이동한 것이다. 이에 따라, 데이터 신호가 클록 신호보다 뒤처지고, 슬라이서(118)는 적정하게 조정된 클록 신호로 의도했던 것보다 늦은 시점에 데이터 신호를 샘플링할 수 있으며, 여기에서는 이를 ""후행 비트(late bits)""라 한다. 달리 말하면, 클록 신호의 상승점 동안 데이터 신호의 데이터 아이 중심보다 데이터 신호의 상승점에 가깝게 데이터 신호가 샘플링된다.
도 2b에는 직렬 클록 신호와 직렬 데이터 신호가 나타나 있는데, 직렬 클록 신호는 적정하게 조정된 클록 신호에 대하여 왼쪽으로 이동하였다. 여기에서, 적정하게 조정된 클록 신호는 도 1의 122로 나타낸 것과 같이 클록 신호의 상승점이 데이터 신호의 데이터 아이의 중심(보기: 1의 중심)과 정렬되어 있는 것이다. 도 2b에 도시한 클록 신호는 상승점이 데이터 신호의 1의 중심에서 벗어나 데이터 신호의 상승점에 가까워졌으므로 왼쪽으로 이동한 것이다. 이에 따라, 데이터 신호가 클록 신호보다 앞서고, 슬라이서(118)는 적정하게 조정된 클록 신호로 의도했던 것보다 이른 시점에 데이터 신호를 샘플링할 수 있으며, 여기에서는 이를 ""선행 비트(early bits)""라 한다. 달리 말하면, 클록 신호의 상승점 동안 데이터 신호의 데이터 아이 중심보다 데이터 신호의 상승점에 가깝게 데이터 신호가 샘플링된다. 후행 또는 뒤처진 데이터 신호는 도 2a에 도시한 바와 같이, 선행 또는 앞선 데이터 신호는 도 2b에 도시한 바와 같이, 슬라이서(118)가 틀린 데이터를 생성하게 만드는데, 특히 데이터가 데이터 신호의 승강점에 너무 가깝게 샘플링할 때 그러하다. 그러므로 도 2a의 클록 신호는 승강점이 데이터 신호의 데이터 아이의 중심과 정렬되도록 왼쪽으로 이동시킴으로써 위상 정렬할 수 있고, 도 2b의 클록 신호는 승강점이 데이터 신호의 데이터 아이의 중심과 정렬되도록 오른쪽으로 이동시킴으로써 위상 정렬할 수 있다.
본 발명의 한 실시예에 따르면, 클록 신호의 상승점에서 데이터를 샘플링하고, 도 2a에 도시한 것처럼 샘플링된 데이터가 모두, 또는 거의 모두 0이라면, 위상 조정기(114)는 데이터 신호가 클록 신호보다 뒤처지며 의도한 시점보다 늦은 시점에 데이터 신호가 샘플링된다고 판단한다. 이와 반대로, 도 2b에 도시한 것처럼 샘플링된 데이터가 모두, 또는 대부분 1이라면, 위상 조정기(114)는 데이터 신호가 클록 신호보다 앞서며 의도한 시점보다 이른 시점에 데이터 신호가 샘플링된다고 판단한다. 또한, 본 발명의 한 실시예에 따르면, 샘플링된 데이터가 모두 또는 대부분 0이라는 것이 데이터 신호가 (늦은 시점이 아니라) 이른 시점에 샘플링된다는 것을 나타낼 수도 있는데, 이는 서로 다른 데이터 신호 패턴을 사용하기 때문이거나 클록 신호의 하강점에서 데이터를 샘플링하기 때문이거나 아니면 둘다 때문일 수 있다. 이와 마찬가지로, 샘플링된 데이터가 모두 또는 대부분 1이라는 것이, 앞서 설명한 것과 동일한 이유로, 데이터 신호가 (이른 시점이 아니라) 늦은 시점에 샘플링된다는 것을 나타낼 수도 있다. 이에 따라, 위상 조정기(114)는 모두 또는 대부분 0이거나 모두 또는 대부분 1인 경우를 찾아 적절한 위상 코드를 클록 신호에 적용하여 클록 신호의 승강점이 데이터 신호의 데이터 아이의 중심과 정렬되도록 승강점을 이동시킨다.
도 2a와 비슷하게, 도 3a에는 직렬 클록 신호와 직렬 데이터 신호가 나타나 있는데, 클록 신호가 적정하게 조정된 클록 신호에 대하여 오른쪽으로 이동하였다. 여기에서, 적정하게 조정된 클록 신호는 클록 신호의 상승점이 데이터 신호 0의 데이터 아이의 중심과 정렬되어 있고, 클록 신호의 하강점이 데이터 신호 1의 데이터 아이의 중심과 정렬되어 있는 것이다. 도 3a에 도시한 클록 신호는 상승점이 데이터 신호 0의 데이터 아이의 중심에서 벗어나 데이터 신호의 상승점에 가까워졌고, 하강점이 데이터 신호 1의 데이터 아이의 중심에서 벗어나 데이터 신호의 하강점에 가까워졌으므로, 오른쪽으로 이동한 것이다. 이에 따라, 데이터 신호가 클록 신호보다 뒤처지고, 슬라이서(118)는 적정하게 조정된 클록 신호로 의도했던 것보다 늦은 시점에 데이터 신호를 샘플링할 수 있다.
도 2b와 비슷하게, 도 3b에는 직렬 클록 신호와 직렬 데이터 신호가 나타나 있는데, 클록 신호가 적정하게 조정된 클록 신호에 대하여 왼쪽으로 이동하였다. 여기에서, 적정하게 조정된 클록 신호는 클록 신호의 상승점이 데이터 신호 1의 데이터 아이의 중심과 정렬되어 있고, 클록 신호의 하강점이 데이터 신호 0의 데이터 아이의 중심과 정렬되어 있는 것이다. 도 3b에 도시한 클록 신호는 상승점이 데이터 신호 1의 데이터 아이의 중심에서 벗어나 데이터 신호의 상승점에 가까워졌고, 하강점이 데이터 신호 0의 데이터 아이의 중심에서 벗어나 데이터 신호의 하강점에 가까워졌으므로, 왼쪽으로 이동한 것이다. 이에 따라, 데이터 신호가 클록 신호보다 앞서고, 슬라이서(118)는 적정하게 조정된 클록 신호로 의도했던 것보다 이른 시점에 데이터 신호를 샘플링할 수 있다. 그러나 도 2a 및 도 2b와 달리, 도 3a 및 도 3b는 직렬 클록 신호의 상승점과 하강점 둘 다에서 데이터를 샘플링하는 데이터 샘플링 방법을 보여준다. 예를 들어 도 3a를 참고하면, 샘플링된 데이터의 짝수 번째 비트가 모두 0이고 홀수 번째 비트가 모두 1이면, 본 발명의 한 실시예에 따라 위상 조정기(114)는 데이터 신호가 클록 신호보다 뒤처진다고 판단할 수 있다. 이와 반대로, 샘플링된 데이터의 짝수 번째 비트가 모두 1이고 홀수 번째 비트가 모두 0이면, 본 발명의 한 실시예에 따라 위상 조정기(114)는 데이터 신호가 클록 신호보다 앞선다고 판단할 수 있다.
본 발명의 한 실시예에 따르면, 위상 조정기(114)는 데이터가 이르거나 늦은 시점에 샘플링되는지 여부에 따라 위상 코드를 설정할 수 있는데, 클록 신호의 승강점이 데이터 신호의 데이터 아이 중심과 정렬되도록 클록 신호의 위상 전이를 조정할 수 있다. 위상 코드는, 예를 들면, 클록 신호에 256 개의 서로 다른 증분 전이에 해당하는, 8 비트로 나타낸 수치 값, 즉 0-255일 수 있다. 이에 따라, 위상 보간기(116)에 위상 코드를 적용하면, 위상 보간기(116)는 주어진 위상 코드에 대응하는 양만큼 클록 신호의 위상을 전이시킬 수 있다. 예를 들면, 위상 코드 1은 클록 신호의 1.4 도 위상 전이에 해당할 수 있다. 그러므로 위상 보간기(116)에 위상 코드 1을 적용하면, 위상 보간기(116)는 클록 신호를 1.4 도만큼 전이시키거나 어긋나게 할 수 있다. 다른 예를 들어 보면, 예를 들면, 위상 코드 37은 클록 신호의 52 도 위상 전이에 해당할 수 있다. 그러므로 위상 보간기(116)에 위상 코드 37을 적용하면, 위상 보간기(116)는 클록 신호를 52 도만큼 전이시키거나 어긋나게 할 수 있다. 따라서 위상 보간기(116)는 위상 보간기(116)가 제공한 위상 코드에 기초하여 클록 신호의 위상을 어긋나게 함으로써 조정할 수 있다. 이에 따라, 위상 조정(된) 클록 신호를 슬라이서(118)가 직렬 데이터 신호를 샘플링하는 데 사용할 수 있고, 샘플링(된) 데이터를 역직렬화하고(120) 위상 조정기(114)에서 이를 분석하여 원하는 대로 클록 신호가 조정되었는지를 판단할 수 있다. 본 발명의 한 실시예에 따르면, 클록 신호의 상승점이 데이터 신호의 데이터 아이 중심과 정렬되도록 클록 신호를 조정했을 때가 바로 바라던 결과이다. 따라서 위상 전이된 클록 신호가 원하는 것이 될 때까지 서로 다른 위상 코드를 위상 보간기(116)에 적용해 보는 시행착오를 겪을 수 있다.
예를 들며, 하나의 클록 사이클이 두 개의 단위 구간과 동일한 DDR 기반 직렬 링크(DDR-based seral link)에서, 클록 신호의 상승점과 하강점 양쪽에서 모두 데이터를 샘플링함으로써, 클록 신호의 상승점과 하강점 중 어느 한 시점에만 데이터를 샘플링하는 것보다 더 빠르게 (즉, 두 배의 속도로) 데이터 신호를 샘플링할 수 있다. (예를 들면, 데이터 신호에서 주어진 수의 비트 수를 샘플링해 낸다면 상승점과 하강점 중 한 시점에서만 샘플링할 때와 비교하여 절반의 클록 사이클 수로 가능하다). 위상 조정 알고리즘은 특정 비트 수를 샘플링하는 것과 관련 있으므로, 빠른 속도로 데이터를 샘플링함으로써 위상 코드를 더 빠른 속도로 판단 및 설정할 수 있고 위상 전이 클록 신호를 더 빨리 조정할 수 있으며, 이에 따라 전체 위상 조정 과정의 속도를 향상할 수 있다.
도 4는 위상 코드 스위프(phase code sweep) 동안 각각의 위상 코드에 대하여 클록 신호에 의하여 앞서 샘플링되는 1의 데이터 비트(""선행 비트"") 백분율을 나타낸 그래프이다. 예를 들면, 8 비트가 나타내는 위상 코드는 256 개의 서로 다른 코드를 가지며 256 개의 서로 다른 코드는 클록 신호를 256 개의 서로 다른 증분만큼 전이시키는데, 각각의 위상 코드의 결과로서 얻는 1의 백분율을 그래프로 나타내면 도 4에 도시한 것과 같이 위상 코드 대 1의 백분율 그래프를 얻을 수 있다. 즉, 스위핑되는 복수의 위상 코드 중에서 각 위상 코드에 대하여 1인 비트의 백분율은 이 그래프로 그려진다. 그래프의 아래 영역은 위상 코드 스위프에서 추출된 데이터 비트가 1인 경우가 거의 없는(보기: 0-5%) 위상 코드에 해당한다. 달리 말하면, 클록 신호에 의하여 추출된 데이터 비트의 거의 모두(보기: 95-100%)가 뒤처져 샘플링된다. 이와는 달리, 그래프의 위 영역은 위상 코드 스위프에서 추출된 데이터 비트가 거의 전부(보기: 95-100%) 1인 경우의 위상 코드에 해당한다. 그래프의 중간 영역은 추출된 데이터 비트의 약 반은 1이고 나머지 반은 0인 경우의 위상 코드에 해당한다. 이에 따라, 이 50% 문턱 값은 직렬 클록 신호의 승강점이 직렬 데이터 신호의 승강점과 정렬하는 경우에 해당한다. 그러므로 50% 문턱 값에 대응하는 위상 코드를 판단함으로써, 클록 신호를 50% 문턱 값 지점으로부터 멀리 전이시켜 클록 신호의 승강점이 데이터 아이의 중심과 정렬하도록 클록 신호를 조정할 수 있다.
본 발명의 한 실시예에 따르면, 도 4에서 지점1 및 지점2에 대응하는 위상 코드를 저장 및 평균하여 평균 위상 코드를 결정하고 이를 클록 신호에 인가하여 클록 신호의 승강점을 데이터 신호의 데이터 아이 중심과 정렬시킬 수 있다. 달리 말하면, 위상 코드를 스위핑할 때, 복수의(보기: 64, 128, 256 등) 서로 다른 위상 조정 클록 신호가 보간기(116)에 의하여 생성되며, 1의 백분율이 약 0에서 약 50%로 높아지면(즉, 비트의 약 50%가 선행이고 나머지 약 50%는 선행이 아니게 되면), 대응하는 위상 코드를 지점1으로 저장할 수 있다. 위상 코드가 스위핑을 계속하여 1의 백분율이 거의 100%까지 높아졌다가 다시 낮아지기 시작한다. 1의 백분율이 다시 약 50%로 낮아지면, 대응하는 위상 코드를 지점2로 저장할 수 있다. 그러나 이러한 위상 코드 설정 방법은 매우 느리고 오차가 생기기 쉽다. 예를 들면, 클록 신호의 승강점과 데이터의 승강점이 정렬하면, 데이터 표본에 지터(jitter)가 생기고 이에 따라 도 5에 도시한 그래프에 나타낸 것처럼 위상 코드를 잘못 감지하는 결과가 나올 수도 있다. 도 5에서는 지점1과 지점2의 평균이 50% 1에 대응하는 위상 코드를 반영하지 않는다.
도 4와 마찬가지로, 도 6은 위상 코드 스위프 동안 1의 백분율을 나타낸 그래프이다. 그러나 도 4와는 달리, 도 6은 올바른 위상 코드를 판단하기 위한 4점(4-point) 감지 방법을 도시하는데, 이 방법에서는 위상 코드 스위프 그래프의 서로 다른 지점을 저장하여 지터로 인한 오차를 없애거나 줄인다. 이에 따라, 더욱 정확한 위상 코드를 결정할 수 있다.
본 발명의 한 실시예에 따르면, 복수의 위상 코드를 스위핑하여 1의 백분율을 결정한다. 예를 들면, 위상 코드는 어떠한 비트 수로 이루어져도 되는데, 예를 들면, 8 비트로 이루어지는 경우 256 개의 서로 다른 위상 비트를 위상 보간기(116)에 적용하여 256 개의 서로 다른 위상 조정 클록 신호를 생성하고, 이를 사용하여 데이터 신호를 샘플링하며, 샘플링된 비트로부터 1의 백분율을 결정한다. 위상 코드가 약 50% 1과 50% 0을 생성하는지 아닌지를 판단하기 위하여, 실질적으로 1이 없는(보기: 1이 없는 경우 더하기 소정 문턱 값, 예를 들어 1이 약 0-5%) 경우에 해당하는 두 개의 위상 코드를 저장하고, 실질적으로 모두가 1인(보기: 모두가 1인 경우 더하기 소정 문턱 값, 예를 들어 1이 95-100%) 경우에 대응하는 두 개의 위상 코드를 저장한다.
특히, 위상 코드 스위프를 수행할 때, 도 6에 도시한 것처럼 1의 백분율이 0에서 0 아닌 값(보기: 약 5%)으로 올라가면, 해당하는 위상 코드를 지점1로 저장한다. 위상 코드 스위프를 계속하면, 1의 백분율이 100%를 향하여 높아진다. 위상 코드 근(near) 100%(보기: 약 95%)에서 100%에 대응하는 위상 코드는 도 6에 도시한 것처럼 지점2로 저장한다. 본 발명의 한 실시예에 따르면, 위상 코드 스위프를 계속하면, 결국은 1의 백분율이 다시 내려가기 시작한다. 여기에서, 1의 백분율이 100%에서 근 100% (보기: 약 95%)로 떨어지기 시작하면, 도 6에 도시한 것처럼 해당하는 위상 코드를 지점3으로 저장한다. 마지막으로, 위상 코드 스위프를 계속해서 감소시켜, 0 아닌 값(보기: 약 5%)에서 0까지에 대응하는 위상 코드를 지점4로 저장한다.
본 발명의 한 실시예에 따르면, 이러한 4개 위상 코드, 즉 지점1, 지점2, 지점3 및 지점4의 평균을 계산하여 약 50% 1에 대응하는 최종 위상 코드를 결정한다. 즉, 예를 들면, 256개의 위상 코드가 있고, 지점1, 지점2, 지점3, 지점4에 대응하는 위상 코드가 각각 40, 60, 200, 215이면, 평균 위상 코드는 (40+50+200+215)/4 = 126.25가 된다. 본 발명의 한 실시예에 따르면, 50% 1에 대응하는 위상 코드를 저장된 네 지점의 평균으로 계산한 후, 최종 평균 위상 코드를 위상 보간기(116)에 적용하여 클록 신호의 승강점이 데이터 신호의 데이터 아이 중심과 정렬하도록 클록 위상을 조정한다. 또한, 위상 코드는 원형이고(circular), 이에 따라 ""둘러 싼다(wrap around)"". 예를 들면, 0에서 255까지의 위상 코드에 대해서, 지점1, 지점2, 지점3, 지점4에 대응하는 위상 코드는 각각 190, 192, 64, 66이므로, ""원형(circular)" " 평균은 (190+192+(64+256)+(66+256)/4 = 256 = 0 이다.
본 발명의 다른 실시예에 따른 신속 조정 방법(fast calibration technique)에 대하여 설명한다. 신속 조정 방법은 4점 감지 방법(4-point detection technique)의 초기 실행 후에 시작되는데, 예를 들면, 신속 조정 방법을 사용하여 시스템 사용 중에, 또는 동작 사이의 휴지 기간에 시스템에 위상 조정을 수행한다. 도 7은 신속 조정 방법에 따른 위상 코드 스위프 대 1의 백분율의 그래프이다. 도 6에 도시한 4점 감지 방법과 달리, 신속 조정 방법은 더 작은 범위에서 위상 코드 스위프를 수행하는데, 예를 들면, 위상 코드 중 한 작은 범위에 위상 코드 스위프의 제1 윈도(window)를 수행하고, 위상 코드 중 다른 작은 범위에 위상 코드 스위프의 제2 윈도를 수행하여 위상 코드를 스위핑하는 데 드는 시간을 줄인다.
본 발명의 한 실시예에 따르면, 위상 코드 스위프의 제1 윈도는 지점1 전의 N 위상 코드에서 시작하고 지점2 후의 N 위상 코드에서 끝날 수 있는데, 여기에서 N은 소정(predetermined) 또는 프로그램가능한(programmable) 상수 값이다. 달리 말하면, 도 6과 비슷하게, 도 7에서 지점1은 1이 0에서 실질적으로 0인(보기: 약 5%) 경우에 대응하는 위상 코드일 수 있고, 지점2는 거의 전부(보기: 약 95%) 1이거나 모두 1인 경우에 대응하는 위상 코드일 수 있으며, 위상 코드 스위프는 이 지점1 전(즉, 지점1-N)에 N 위상 코드에서 시작하고 지점2 후(즉, 지점2+N)에 N 위상 코드에서 끝난다. 이에 따라, 위상 코드 스위프의 제1 윈도는 도 6을 참고하여 설명한 전체(full) 위상 코드 스위프보다 실질적으로 작다.
본 발명의 한 실시예에 따르면, N을 (256 위상 코드 중) 값 4로 선택할 수 있다. 따라서, 위상 코드 스위프의 제1 윈도는 지점1 전에 4 위상 코드에서 시작하고 지점2 후에 4 위상 코드에서 끝날 것이다. 이에 따라, 프로그램가능한 N 값은 최종 사용자에게 조정 속도와 위상 이동 허용 한도(phase-drift tolerance) 사이의 트레이드-오프(trade-off)를 변화시킬 수 있게 한다. 즉, N 값이 크면 스위핑을 수행하는 데 시간이 오래 걸리므로 조정이 느려지지만, 마지막 조정으로부터 N-코드까지 더 큰 위상 코드 이동을 견딜 수 있을 것이다. 이와 반대로, N 값이 작으면 스위핑을 수행하는 데 시간이 적게 걸려 조정이 빨라지지만, 견딜 수 있는 위상 코드 이동이 작아질 것이다.
본 발명의 한 실시예에 따르면, 위상 코드 스위프의 제2 윈도는 지점3 전의 N 위상 코드에서 시작하고 지점4 후의 N 위상 코드에서 끝날 수 있다. 달리 말하면, 도 6과 비슷하게, 도 7에서 지점3은 거의 전부(보기: 약 95%) 1이거나 모두 1인 경우에 대응하는 위상 코드일 수 있고, 지점4는 1이 0에서 실질적으로 0인(보기: 약 5%) 경우에 대응하는 위상 코드일 수 있으며, 위상 코드 스위프는 지점3 전(즉, 지점3-N)에 N 위상 코드에서 시작하고 지점4 후(즉, 지점4+N)에 N 위상 코드에서 끝난다. 이에 따라, 위상 코드 스위프의 제2 윈도는 도 6을 참고하여 설명한 전체(full) 위상 코드 스위프보다 실질적으로 작다. 달리 말하면, 위상 코드 스위프의 제1 윈도와 위상 코드 스위프의 제2 윈도가 스위핑되지만, 지점2+N 과 지점3-N 사이의 위상 코드는 스위핑되지 않는다. 또한, 지점1-N 전의 위상 코드와 지점4+N 후의 위상 코드는 스위핑되지 않는다. 그러므로 위상 코드를 스위핑하는 데 소요되는 시간이 줄고, 지점1, 지점2, 지점3 및 지점4를 빠르게 구할 수 있다.
다음으로, 지점1, 지점2, 지점3 및 지점4의 평균 위상 코드를 계산하여 약 50% 1에 대응하는 최종 위상 코드를 결정할 수 있다. 본 발명의 한 실시예에 따르면, 50% 1에 대응하는 위상 코드를 저장된 네 지점의 평균으로 계산한 후, 최종 평균 위상 코드를 위상 보간기(116)에 적용하여 클록 신호의 승강점이 데이터 신호의 데이터 아이 중심과 정렬하도록 클록 위상을 조정한다. 따라서 이 방법에 따르면, 앞서 구한 위상 코드 정보를 활용함으로써 도 6을 참고하여 설명한 것과 같은 방법과 유사한 결과를 더 빠르게 얻을 수 있다. 즉, 예를 들면, 이전 조정 주기로에서의 지점1에 대응하는 위상 코드를 사용하여 지점1-N을 구하고, 지점1-N 전의 영역은 생략하고 지점1-N에서 위상 코드 스위프를 시작할 수 있다. 이와 마찬가지로, 지점2+N과 지점3-N 사이의 영역은 생략하고, 지점3에 대응하는 위상 코드는 이전 조정 주기에서 이미 알고 있으므로 위상 코드 스위프의 제2 윈도를 지점3-N에서 시작할 수 있다.
도 8은 4점 감지 방법 및 신속 조정 방법의 흐름도이다. 본 발명의 한 실시예에 따르면, 위상 조정기(114)가 위상 조정 요청(request)을 수신하고, 직렬 클록 신호를 직렬 데이터 신호에 대해서 조정한다. 초기 조정 중에, 4점 감지 방법을 사용하는 초기 조정 방법(804)을 실행할 수 있다. 이와는 달리, 주기적인 조정 중에, 신속 모드 조정을 사용하는 주기 조정 방법(816)을 실행할 수도 있다. 본 발명의 한 실시예에 따르면, 초기 조정 방법(804)은 주기 조정을 바라는 경우에도 실행할 수 있지만, 초기 조정 방법(804)은 주기 조정 방법(816)보다 실행 시간이 길 수 있다.
일단 초기 조정 방법(804)을 선택하면, 위상 코드 스위핑 과정을 시작할 수 있다. 앞서 설명한 바와 같이, 위상 코드 스위프는 위상 코드를 포함하며, 위상 코드의 수효는 어떠하더라도 관계없지만 예를 들어 256개일 수 있다. 각각의 위상 코드는 약간(보기: 클록 주기의 1/256)씩 전이한 클록 신호에 대응한다. 본 발명의 한 실시예에 따르면, 먼저 위상 코드를 0으로 설정하는데(806), 이는 위상 코드 스위프에 사용될 복수의 위상 코드 중에서 제1 위상 코드(보기: 0 ~ 255 위상 코드 중 제1 위상 코드)에 대응한다. 본 발명의 한 실시예에 따르면, 위상 코드는 위상 코드 스위프용으로 64 개의 위상 코드를 포함하는 6-비트 위상 코드일 수 있다. 본 발명의 다른 실시예에 따르면, 위상 코드는 위상 코드 스위프용으로 128 개의 위상 코드를 포함하는 7-비트 위상 코드일 수 있다. 본 명세서에서는 위상 코드가 8 비트인 경우만을 가정하여 설명하는데 이는 하나의 예일 뿐이다.
다음, 위상 보간기에 복수의 위상 코드를 적용함으로써 위상 코드를 스위핑한다(808). 위상 코드 스위프를 실행하면, 클록의 위상이 조정되고, 샘플링 및 역직렬화된 데이터로부터 1의 백분율이 결정되는데, 1이 하나도 없는 경우에서부터 모두가 1인 경우까지 있다. 도 6을 참고하여 설명한 바와 같이, 비트의 0%에서 거의 0%(보기: 약 5%)가 1인 경우에는, 해당하는 위상 코드를 지점1로서 저장한다(810). 본 발명의 한 실시예에 따르면, 3 개의 단위 구간(UIs) 동안(보기: 1 비트의 직렬 클록 동안) 위상 코드 스위프를 수행하여, 도 6을 참고하여 설명한 바와 같이, 지점1, 지점2, 지점3 및 지점4를 구한다. 예를 들면, 지점2는 1의 백분율이 거의 100% (보기: 약 95%)에서 100%까지일 때 저장하고, 지점3은 1의 백분율이 거의 100% (보기: 약 95%)에서 100%까지일 때 저장하며, 지점4는 1의 백분율이 거의 0% (보기: 약 5%)에서 0%까지일 때 저장한다. 4 개의 지점을 저장한 후(812), 지점1 ~ 지점4에 대응하는 위상 코드를 평균함으로써 최종 위상 코드를 계산하고(838), 계산한 위상 코드를 위상 보간기(116)에 적용한다(840). 위상 코드 스위프를 3 번의 UI 동안 수행하지 않은 경우에는(812), 위상 코드를 다음 위상 코드로, 예를 들어 위상 코드 1에서 위상 코드 2로 증분하는 식으로 진행한다. 단계(808-812)는 3 개의 UI가 수행될 때까지 반복된다.
본 발명의 한 실시예에 따르면, 신속 조정 방법을 사용하는 주기 조정 방법을 실행한다(816). 먼저, 위상 코드를 지점1-N로 설정하는데(818), N은 소정 또는 프로그램가능한 상수이다. 지점1에 대한 위상 코드는 이전 위상 코드 스위프, 예를 들어 초기 조정 모드에서 결정될 것이다. 다음, 위상 보간기에 복수의 위상 코드를 적용함으로써 위상 코드의 제1 윈도를 스위핑한다(820). 위상 코드 스위프의 제1 윈도를 실행하면, 클록의 위상이 조정되고 샘플링 및 역직렬화된 데이터로부터 1의 백분율이 결정되는데, 1이 하나도 없는 경우에서부터 모두가 1인 경우까지 있다. 비트의 0%에서 근-0%(보기: 약 5%)가 1이면, 도 7을 참고하여 설명한 바와 같이 해당 위상 코드를 지점1로 저장한다(822). 위상 코드 스위프의 제1 윈도를 계속하여 위상 코드가 지점2+N과 동일해지면, 첫 번째 두 지점에 대해서 위상 코드 스위프의 제1 윈도를 실행한 것이다(824). 위상 코드가 지점2+N과 동일하지 않으면, 위상 코드를 증분하고 단계(820-824)를 반복하여 지점1과 지점2 둘 다가 저장되도록 한다(826). 지점1과 지점2가 저장되면, 위상 코드를 지점3-N으로 설정하고(828), 위상 코드 스위프의 제2 윈도를 실행하고 위상 보간기에 적용한다(830). 1의 백분율이 거의 100%(보기: 약 95%)에서 100%인 것으로 판단되면, 도 7을 참고하여 설명한 바와 같이 해당 위상 코드를 지점3으로 저장하고(832). 위상 코드가 지점4+N과 같은지를 검사하는데, 이는 제3 및 제4 지점에 대해서 위상 코드 스위프의 실행을 마쳤다는 것을 뜻한다(834). 위상 코드가 지점4+N과 같지 않으면, 위상 코드를 증분하고(836) 지점3과 지점4가 모두 저장될 때까지(836) 단계(830-834)를 반복한다. 두 지점, 즉 지점3과 지점4가 저장되면, 지점1, 지점2, 지점3 및 지점4에 대응하는 위상 코드를 평균함으로써 최종 위상 코드를 계산하고(838), 계산된 위상 코드를 위상 보간기에 적용한다(840). 조정 주기가 완료되면, 위상 조정기는 휴지 상태(idle state)로 들어가며 다른 조정 요청을 받을 때까지 대기한다(842).
본 발명의 한 실시예에 따르면, 계산된 최종 위상 코드로 위상 보간기(116)를 갱신하면, 위상 보간기(116)는 클록 신호를 조정하고 이 조정된 클록 신호를 슬라이서(118)에 제공하며, 슬라이서(118)는 이 조정 클록 신호를 사용하여 입력 직렬 데이터를 샘플링한다. 이에 따라, 조정 클록 신호의 승강점은 입력 직렬 데이터 신호의 데이터 아이의 중심과 정렬된다.
앞서 설명한 방법에서는 1(보기: 앞선 비트)의 백분율을 언급하였지만, 본 발명의 다른 실시예에 따르면, 비트는 1 대신 0(보기: 뒤처진 비트)일 수 있다. 그러므로 4점 감지 방법 또는 신속 조정 방법은 1의 백분율 대신 0의 백분율을 사용하여 같은 방법을 적용할 수 있다.
본 발명의 한 실시예에 따르면, 복수의 조정 방법을 함께 사용하여 조정 결과를 향상시킬 수 있다. 예를 들면, 도 6을 참고하여 설명한 4점 감지 방법을 도 3a 및 도 3b를 참고하여 설명한 2-승강점 샘플링 방법(클록 신호의 상승점과 하강점 양쪽에서 데이터를 샘플링)과 함께 적용할 수 있다. 또한 본 발명의 다른 실시예에 따르면, 도 7을 참고하여 앞에서 설명한 신속 조정 방법을 도 3a 및 도 3b를 참고하여 설명한 2-승강점 샘플링 방법과 함께 사용할 수도 있다.
"제1", "제2", "제3" 등의 용어를 여러 가지 원소, 성분, 영역, 층, 부분 등에 사용하지만, 이들은 이런 수식어에 의하여 한정되지 않는다. 이러한 용어는 어떤 원소, 성분, 영역, 층, 부분을 다른 원소, 성분, 영역, 층, 부분과 구별하기 위하여 사용하는 것이다. 따라서 제1 원소, 성분, 영역, 층, 부분은 본 발명의 취지와 범위를 벗어나지 않고 제2 원소, 성분, 영역, 층, 부분이라고 할 수도 있다.
설명의 편의를 위하여 도면에 도시한 어떤 부분 또는 특성에 대한 다른 부분 또는 특성의 관계를 나타내기 위하여 "아래", "밑", "위" 등 공간 관계 용어를 사용할 수 있다. 이러한 공간 관계 용어는 도면에 도시한 사용 또는 동작하는 장치의 서로 다른 위치 및/또는 방향을 나타내기 위한 것이다. 예를 들면, 도면에서 어떤 부분의 "아래" 또는 "밑"에 있는 것으로 도시한 부분은 장치가 뒤집히면 반대로 "위"에 있는 것이 된다. 그러므로 예를 들어 "아래" 및 "밑"은 위와 아래를 모두 나타낼 수 있다. 장치가 예를 들면 90도 회전하거나 다른 방향을 향할 수 있으며, 이 경우 공간 관계 용어는 이에 맞게 해석되어야 한다.
성분이나 층이 다른 성분이나 층의 "위에" 있거나 "연결되어" 있는 것으로 기재하는 경우 "바로" 위에 있거나 또는 "직접" 연결되어 있는 경우뿐 아니라 중간에 다른 성분이나 층이 더 끼어 있는 경우도 포함한다. 그러나 "바로 위에" 있거나 "직접 연결"되어 있는 것으로 기재하면 중간에 다른 부분이 없다는 것을 뜻한다. 또한, 어떤 성분이나 층이 다른 두 성분이나 층 "사이"에 있다고 표현했을 때, 두 성분이나 층이 사이에 해당 성분이나 층만 있을 수도 있지만 하나 이상의 다른 성분이나 층이 더 있을 수 있다.
여기에서 사용된 용어는 특정 실시예를 설명할 목적으로 사용할 뿐이며 본 발명을 제한하고자 하는 것은 아니다. 여기에서 수를 특별히 언급하지 않으면 단수 또는 복수의 경우를 모두 포함한다. 어떤 특징, 정수, 단계, 동작, 부분, 성분 등을 "포함"한다는 표현은 해당 부분 외에 다른 특징, 정수, 단계, 동작, 부분, 성분 등도 포함할 수 있다는 것을 의미한다. "및/또는"이라는 표현은 나열된 것들 중 하나 또는 둘 이상의 모든 조합을 포함한다. 나열 목록 앞에 기재한 "적어도 하나" 등의 표현은 목록 전체를 수식하는 것이지 목록 내의 각각의 것을 수식하는 것은 아니다.
여기에서 "실질적으로", "약", "대체로" 및 이와 비슷한 표현은 근사를 나타내는 표현일 뿐 "정도"를 나타내는 것이 아니며, 당업자가 알 수 있는 측정값 또는 계산 값의 고유 오차를 나타내는 데 사용한다. 또한, 본 발명의 실시예를 설명할 때 사용하는 "수 있다"는 표현은 "본 발명의 하나 이상의 실시예"에 적용 가능하다는 것을 뜻한다. "예시적인"이라는 용어는 예 또는 도면을 나타낸다. "사용", "이용" 등은 이와 유사한 다른 표현과 함께 비슷한 의미로 사용될 수 있다.
본 발명의 실시예에 따라 설명한 전자, 전기 장치 및/또는 다른 관련 장치 또는 부분은 적절한 하드웨어, 펌웨어[보기: 응용 주문형 집적 회로(ASIC: application-specific integrated circuit), FPGA(field-programmable gate array)], 소프트웨어 또는 이들의 조합을 사용하여 구현할 수 있다. 예를 들면, 이들 장치의 다양한 구성 요소를 하나의 집적 회로 칩에 형성될 수도 있고 서로 다른 집적 회로 칩에 구현할 수도 있다. 또한, 이들 장치의 다양한 구성 요소를 가요성 인쇄 회로 필름, 테이프 캐리어 패키지(TCP: tape carrier package), 인쇄 회로 기판 등에 구현하거나 하나의 기판 위에 형성할 수 있다. 또한, 이들 장치의 다양한 구성 요소를 여기에서 설명한 다양한 기능을 수행하기 위하여 컴퓨터 프로그램 명령을 실행하고 다른 시스템 요소와 상호 작용하는 하나 이상의 컴퓨터 장치 내에 있는 하나 이상의 프로세서에서 실행될 수 프로세스 또는 스레드(thread)일 수 있다. 컴퓨터 프로그램 명령은 램(RAM: random access memory) 등의 표준 메모리 장치를 사용하는 컴퓨터 장치에 구현된 메모리에 저장될 수 있다. 뿐만 아니라, 당업자는 본 발명의 실시예의 개념과 범위를 벗어나지 않고도 다양한 컴퓨터 장치의 기능들을 하나의 컴퓨터 장치에 결합 또는 통합하거나, 특정 컴퓨터 장치의 기능을 하나 이상의 다른 컴퓨터 장치에 분산할 수도 있다.
별다른 언급이 없는 한 여기에서 사용하는 (기술적, 과학적 용어를 포함하는) 모든 용어들은 이 발명이 속하는 기술 분야의 당업자가 일반적으로 알고 있는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의된 용어 등의 용어들은 관련 기술 분야 및/또는 본 명세서에서의 의미와 일치하는 의미를 가지고 있는 것으로 해석하며, 여기에서 명시하지 않는 한 이상적인 또는 지나치게 엄격한 의미로 해석해서는 아니 된다.
이상에서 설명한 실시예는 그야말로 예일 뿐이다. 당업자라면 여기에 기재한 실시예로부터 다양한 대체 실시예를 알아낼 수 있다. 이러한 대체 실시예들은 본 발명의 범위에 포함된다. 이와 같이, 실시예들은 다음의 청구범위 및 그 등가물에 의해서만 한정된다.
100: 위상 조정 회로
102: 송신기
104: 클록 송신기
106: 데이터 송신기
108: 수신기
110: 클록 수신기
112: 데이터 수신기
114: 위상 조정기
116: 위상 보간기
118: 슬라이서
120: 역직렬화기

Claims (20)

  1. 직렬 클록 신호를 수신하는 단계,
    직렬 데이터 신호를 수신하는 단계,
    상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 복수의 위상 코드를 스위핑하는 단계,
    상기 복수의 위상 코드 중 제1 위상 코드를 식별하는 단계,
    상기 복수의 위상 코드 중 제2 위상 코드를 식별하는 단계,
    상기 복수의 위상 코드 중 제3 위상 코드를 식별하는 단계,
    상기 복수의 위상 코드 중 제4 위상 코드를 식별하는 단계,
    상기 제1 위상 코드, 상기 제2 위상 코드, 상기 제3 위상 코드 및 상기 제4 위상 코드에 기초하여 평균 위상 코드를 결정하는 단계, 그리고
    상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계
    를 포함하며,
    상기 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고,
    상기 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만드는
    위상 조정 방법.
  2. 제1항에서,
    상기 직렬 데이터 신호는 상기 직렬 클록 신호와 동일한 훈련 패턴을 포함하며,
    상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%인
    위상 조정 방법.
  3. 제2항에서,
    상기 특정 값은 1 또는 0이며,
    상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고,
    상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하는
    위상 조정 방법.
  4. 제1항에서,
    상기 복수의 위상 코드를 스위핑하는 단계는 상기 직렬 데이터 신호의 3개 단위 구간을 스위핑하는 단계를 포함하는 위상 조정 방법.
  5. 제1항에서,
    상기 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계는 상기 직렬 클록 신호의 승강점이 상기 직렬 데이터 신호의 데이터 아이의 중심에 정렬하도록 상기 직렬 클록 신호를 전이시키는 단계를 포함하는 위상 조정 방법.
  6. 제1항에서,
    상기 직렬 데이터 신호에서 추출한 비트는 상기 직렬 클록 신호의 상승점에 대응하는 제1 비트와 상기 직렬 클록 신호의 하강점에 대응하는 제2 비트를 포함하는 위상 조정 방법.
  7. 제1항에서,
    위상 코드의 제1 윈도를 스위핑하여 갱신된 제1 위상 코드 및 갱신된 제2 위상 코드를 식별하는 단계,
    위상 코드의 제2 윈도를 스위핑하여 갱신된 제3 위상 코드 및 갱신된 제4 제2 위상 코드를 식별하는 단계,
    상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 갱신된 평균 위상 코드를 결정하는 단계, 그리고
    상기 갱신된 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 더 전이시키는 단계
    를 더 포함하며,
    상기 제1 윈도는 상기 제1 위상 코드 빼기 상수인 지점에서 시작하고 상기 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고,
    상기 제2 윈도는 상기 제3 위상 코드 빼기 상기 상수인 지점에서 시작하고 상기 제4 위상 코드 더하기 상기 상수인 지점에서 끝나는
    위상 조정 방법.
  8. 제7항에서,
    상기 상수는 프로그램가능한 소정 값인 위상 조정 방법.
  9. 제8항에서,
    상기 갱신된 제1 위상 코드는 상기 갱신된 제2 위상 코드와 다르고, 상기 갱신된 제3 위상 코드는 상기 갱신된 제4 위상 코드와 다른 위상 조정 방법.
  10. 컴퓨터 실행 가능한 명령(computer-executable instructions)을 저장하는 메모리, 그리고
    상기 명령을 실행하는 프로세서
    를 포함하는 시스템으로서,
    상기 프로세서가 상기 명령을 실행하면 상기 시스템은,
    직렬 클록 신호를 수신하고,
    직렬 데이터 신호를 수신하고,
    상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 복수의 위상 코드를 스위핑하고,
    상기 복수의 위상 코드 중 제1 위상 코드를 식별하고,
    상기 복수의 위상 코드 중 제2 위상 코드를 식별하고,
    상기 복수의 위상 코드 중 제3 위상 코드를 식별하고,
    상기 복수의 위상 코드 중 제4 위상 코드를 식별하고,
    상기 제1 위상 코드, 상기 제2 위상 코드, 상기 제3 위상 코드 및 상기 제4 위상 코드에 기초하여 평균 위상 코드를 결정하고,
    상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키며,
    상기 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고,
    상기 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만드는
    시스템.
  11. 제10항에서,
    상기 직렬 데이터 신호는 상기 직렬 클록 신호와 동일한 훈련 패턴을 포함하며,
    상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%인
    시스템.
  12. 제11항에서,
    상기 특정 값은 1 또는 0이며,
    상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고,
    상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하는
    시스템.
  13. 제10항에서,
    상기 복수의 위상 코드의 스위핑은 상기 직렬 데이터 신호의 3개 단위 구간을 스위핑하는 시스템.
  14. 제10항에서,
    상기 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 동작은 상기 직렬 클록 신호의 승강점이 상기 직렬 데이터 신호의 데이터 아이의 중심에 정렬하도록 상기 직렬 클록 신호를 전이시키는 동작을 포함하는 시스템.
  15. 제10항에서,
    상기 직렬 데이터 신호에서 추출한 비트는 상기 직렬 클록 신호의 상승점에 대응하는 제1 비트와 상기 직렬 클록 신호의 하강점에 대응하는 제2 비트를 포함하는 시스템.
  16. 제10항에서,
    상기 프로세서가 상기 명령을 실행하면 상기 시스템은 또한,
    위상 코드의 제1 윈도를 스위핑하여 갱신된 제1 위상 코드 및 갱신된 제2 위상 코드를 식별하고,
    위상 코드의 제2 윈도를 스위핑하여 갱신된 제3 위상 코드 및 갱신된 제4 제2 위상 코드를 식별하고,
    상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 갱신된 평균 위상 코드를 결정하고, 그리고
    상기 갱신된 평균 위상 코드를 상기 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 더 전이시키며,
    상기 제1 윈도는 상기 제1 위상 코드 빼기 상수인 지점에서 시작하고 상기 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고,
    상기 제2 윈도는 상기 제3 위상 코드 빼기 상기 상수인 지점에서 시작하고 상기 제4 위상 코드 더하기 상기 상수인 지점에서 끝나는
    시스템.
  17. 제16항에서,
    상기 상수는 프로그램가능한 소정 값인 시스템.
  18. 제17항에서,
    상기 갱신된 제1 위상 코드는 상기 갱신된 제2 위상 코드와 다르고, 상기 갱신된 제3 위상 코드는 상기 갱신된 제4 위상 코드와 다른 시스템.
  19. 직렬 클록 신호를 수신하는 단계,
    직렬 데이터 신호를 수신하는 단계,
    상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 위상 코드의 제1 윈도를 스위핑하는 단계,
    상기 위상 코드의 제1 윈도 중 갱신된 제1 위상 코드를 식별하는 단계,
    상기 위상 코드의 제1 윈도 중 갱신된 제2 위상 코드를 식별하는 단계,
    상기 직렬 클록 신호에 적용하여 상기 직렬 클록 신호의 위상을 전이시킬 수 있는 위상 코드의 제2 윈도를 스위핑하는 단계,
    상기 위상 코드의 제2 윈도 중 갱신된 제3 위상 코드를 식별하는 단계,
    상기 위상 코드의 제2 윈도 중 갱신된 제4 위상 코드를 식별하는 단계,
    상기 갱신된 제1 위상 코드, 상기 갱신된 제2 위상 코드, 상기 갱신된 제3 위상 코드 및 상기 갱신된 제4 위상 코드에 기초하여 평균 위상 코드를 결정하는 단계, 그리고
    상기 평균 위상 코드를 위상 보간기에 적용하여 상기 직렬 클록 신호의 위상을 전이시키는 단계
    를 포함하며,
    상기 제1 윈도는 소정의 제1 위상 코드 빼기 상수인 지점에서 시작하고 소정의 제2 위상 코드 더하기 상기 상수인 지점에서 끝나고,
    상기 갱신된 제1 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제1 문턱 비트 수를 특정 값으로 만들고,
    상기 갱신된 제2 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제2 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 제2 윈도는 소정의 제3 위상 코드 빼기 상수인 지점에서 시작하고 소정의 제4 위상 코드 더하기 상기 상수인 지점에서 끝나고,
    상기 갱신된 제3 위상 코드는 전체(all) 빼기 상기 직렬 데이터 신호에서 추출한 제3 문턱 비트 수를 상기 특정 값으로 만들고,
    상기 갱신된 제4 위상 코드는 0 더하기 상기 직렬 데이터 신호에서 추출한 제4 문턱 비트 수를 상기 특정 값으로 만드는
    위상 조정 방법.
  20. 제19항에서,
    상기 제1, 제2, 제3 및 제4 문턱 비트 수는 추출한 전체 비트의 0% 내지 5%이고,
    상기 특정 값은 1 또는 0이고,
    상기 1은 예정 시점보다 이른 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하고,
    상기 0은 예정 시점보다 늦은 시점에 상기 직렬 데이터 신호에서 추출되는 비트를 포함하는
    위상 조정 방법.
KR1020220002750A 2021-01-08 2022-01-07 위상 조정 방법 및 시스템 KR20220100794A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163135434P 2021-01-08 2021-01-08
US63/135,434 2021-01-08
US17/211,758 US11239992B1 (en) 2021-01-08 2021-03-24 Efficient phase calibration methods and systems for serial interfaces
US17/211,758 2021-03-24

Publications (1)

Publication Number Publication Date
KR20220100794A true KR20220100794A (ko) 2022-07-18

Family

ID=79269855

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220002750A KR20220100794A (ko) 2021-01-08 2022-01-07 위상 조정 방법 및 시스템

Country Status (6)

Country Link
US (1) US11695538B2 (ko)
EP (1) EP4027573A1 (ko)
JP (1) JP2022107522A (ko)
KR (1) KR20220100794A (ko)
CN (1) CN114756499B (ko)
TW (1) TWI809644B (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7095789B2 (en) * 2004-01-28 2006-08-22 Rambus, Inc. Communication channel calibration for drift conditions

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6621861B1 (en) * 2002-02-06 2003-09-16 Ciena Corporation System to optimize signal detection
JP2004153712A (ja) * 2002-10-31 2004-05-27 Thine Electronics Inc 受信装置
US7873132B2 (en) * 2005-09-21 2011-01-18 Hewlett-Packard Development Company, L.P. Clock recovery
US7644296B1 (en) * 2006-04-07 2010-01-05 Altera Corporation Programmable logic device integrated circuits with configurable dynamic phase alignment circuitry
US8594264B1 (en) * 2010-12-14 2013-11-26 Xilinx, Inc. Phase detection and aligned signal selection with multiple phases of clocks
US9160518B1 (en) * 2014-09-30 2015-10-13 Realtek Semiconductor Corporation Half-rate clock-data recovery circuit and method thereof
US9209960B1 (en) * 2014-11-21 2015-12-08 Xilinx, Inc. Fast locking CDR for burst mode
US9805693B2 (en) * 2014-12-04 2017-10-31 Samsung Display Co., Ltd. Relay-based bidirectional display interface
US9407424B1 (en) * 2015-04-09 2016-08-02 Texas Instruments Incorporated Fast locking clock and data recovery using only two samples per period
US9755819B2 (en) 2015-07-01 2017-09-05 Rambus Inc. Phase calibration of clock signals
US9442512B1 (en) 2015-11-20 2016-09-13 International Business Machines Corporation Interface clock frequency switching using a computed insertion delay
TWI608721B (zh) * 2015-12-29 2017-12-11 安南帕斯公司 雙向通訊方法及使用該方法之雙向通訊裝置
US10411922B2 (en) 2016-09-16 2019-09-10 Kandou Labs, S.A. Data-driven phase detector element for phase locked loops
KR20180034738A (ko) 2016-09-26 2018-04-05 삼성전자주식회사 메모리 장치 및 그것의 분주 클록 보정 방법
CN110447146A (zh) * 2016-12-21 2019-11-12 英特尔公司 无线通信技术、装置和方法
US11003203B2 (en) 2018-07-23 2021-05-11 Xilinx, Inc. Circuits for and methods of calibrating a circuit in an integrated circuit device
US10686582B1 (en) 2019-02-25 2020-06-16 Intel Corporation Clock phase compensation apparatus and method
KR102649761B1 (ko) * 2019-05-27 2024-03-20 삼성전자주식회사 클럭 위상 및 전압 오프셋 보정 방법 및 이를 수행하는 데이터 복원 회로
US10797683B1 (en) 2020-03-06 2020-10-06 Faraday Technology Corp. Calibration circuit and associated calibrating method capable of precisely adjusting clocks with distorted duty cycles and phases
US11239992B1 (en) * 2021-01-08 2022-02-01 Samsung Display Co., Ltd. Efficient phase calibration methods and systems for serial interfaces

Also Published As

Publication number Publication date
CN114756499B (zh) 2024-04-26
US11695538B2 (en) 2023-07-04
TWI809644B (zh) 2023-07-21
CN114756499A (zh) 2022-07-15
US20220224505A1 (en) 2022-07-14
EP4027573A1 (en) 2022-07-13
JP2022107522A (ja) 2022-07-21
TW202242669A (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
TWI720008B (zh) 用於三相介面之多相位時脈資料回復
TWI699974B (zh) 多相位時脈資料回復電路校正
US9853806B2 (en) Method to enhance MIPI D-PHY link rate with minimal PHY changes and no protocol changes
US10289600B2 (en) Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols
US7259606B2 (en) Data sampling clock edge placement training for high speed GPU-memory interface
US10313068B1 (en) Signal monitoring and measurement for a multi-wire, multi-phase interface
TWI678073B (zh) 用於多線多相介面中的時鐘資料恢復的校準模式和工作循環失真校正
US20040068682A1 (en) Deskew circuit and disk array control device using the deskew circuit, and deskew method
CN110995241B (zh) 一种自适应相位调整的lvds延时电路
KR20220100794A (ko) 위상 조정 방법 및 시스템
US7167034B2 (en) Arrangement for correcting the phase of a data sampling clock signal during a period of sampling data in a received signal
US11239992B1 (en) Efficient phase calibration methods and systems for serial interfaces
US11165553B1 (en) Static clock calibration in physical layer device
EP3529956B1 (en) Reducing transmitter encoding jitter in a c-phy interface using multiple clock phases to launch symbols
US7375561B2 (en) Timing adjustment circuit and method thereof
US20200319666A1 (en) Hybrid method for high-speed serial link skew calibration
CN117254894B (zh) 自动校正高速串行信号采样相位的方法、装置及电子设备
US20240126704A1 (en) Data input device and processing method for input data
CN117590896A (zh) 一种信号时延调整方法、装置、设备及存储介质
US20040239376A1 (en) Continuously retraining sampler and method of use thereof
KR20240050974A (ko) 클럭 위상 캘리브레이션 장치 및 방법
JPH08130534A (ja) データ伝送適応化方式およびこれを備えたデータ伝送装置