KR20160042496A - 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치 - Google Patents

듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치 Download PDF

Info

Publication number
KR20160042496A
KR20160042496A KR1020140136437A KR20140136437A KR20160042496A KR 20160042496 A KR20160042496 A KR 20160042496A KR 1020140136437 A KR1020140136437 A KR 1020140136437A KR 20140136437 A KR20140136437 A KR 20140136437A KR 20160042496 A KR20160042496 A KR 20160042496A
Authority
KR
South Korea
Prior art keywords
clock signal
digital code
signal
length
digital
Prior art date
Application number
KR1020140136437A
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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020140136437A priority Critical patent/KR20160042496A/ko
Priority to US14/699,290 priority patent/US9501041B2/en
Publication of KR20160042496A publication Critical patent/KR20160042496A/ko

Links

Images

Classifications

    • GPHYSICS
    • G04HOROLOGY
    • G04FTIME-INTERVAL MEASURING
    • G04F10/00Apparatus for measuring unknown time intervals by electric means
    • G04F10/005Time-to-digital converters [TDC]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/156Arrangements in which a continuous pulse train is transformed into a train having a desired pattern
    • H03K5/1565Arrangements in which a continuous pulse train is transformed into a train having a desired pattern the output pulses having a constant duty cycle
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Pulse Circuits (AREA)

Abstract

듀티 사이클 에러 검출 장치는 제1 디지털 코드 생성기, 클럭 지연 회로 및 제2 디지털 코드 생성기를 포함한다. 제1 디지털 코드 생성기는 클럭 신호의 하이 레벨 구간의 길이 및 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성하고, 하이 디지털 코드 및 로우 디지털 코드에 기초하여 하이 레벨 구간 및 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 긴 구간을 나타내는 싸인 신호를 생성하고, 하이 디지털 코드 및 로우 디지털 코드 중에서 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드로서 출력한다. 클럭 지연 회로는 클럭 신호를 제1 디지털 코드에 상응하는 시간 동안 지연시켜 지연 클럭 신호를 생성한다. 제2 디지털 코드 생성기는 싸인 신호의 논리 레벨에 기초하여 지연 클럭 신호의 긴 구간의 시작 시점으로부터 클럭 신호의 긴 구간의 종료 시점까지의 길이에 상응하는 듀티 에러 디지털 코드를 생성한다.

Description

듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치{DUTY CYCLE ERROR DETECTION DEVICE AND DUTY CYCLE CORRECTION DEVICE HAVING THE SAME}
본 발명은 클럭 신호의 듀티 사이클(duty cycle)을 보정하는 기술에 관한 것으로, 보다 상세하게는 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치에 관한 것이다.
일반적으로 전자 장치는 클럭 신호에 동기되어 동작한다.
종래의 전자 장치는 클럭 신호의 상승 에지에 동기되어 동작하였으나, 최근 전자 장치의 동작 속도가 증가함에 따라 클럭 신호의 상승 에지 및 하강 에지에 모두 동기되어 동작하는 전자 장치가 널리 사용되고 있다.
클럭 신호의 상승 에지 및 하강 에지에 모두 동기되어 동작하는 전자 장치에서, 상기 클럭 신호의 하이 레벨 구간의 길이와 상기 클럭 신호의 로우 레벨 구간의 길이가 서로 다른 경우, 즉, 상기 클럭 신호가 듀티 사이클(duty cycle) 에러를 갖는 경우, 상기 전자 장치의 동작에 오류가 발생하는 문제점이 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 클럭 신호의 듀티 사이클 에러를 효과적으로 검출할 수 있는 듀티 사이클 에러 검출 장치를 제공하는 것이다.
본 발명의 다른 목적은 상기 듀티 사이클 에러 검출 장치를 포함하는 듀티 사이클 보정 장치를 제공하는 것이다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 듀티 사이클 에러(duty cycle error) 검출 장치는 제1 디지털 코드 생성기, 클럭 지연 회로 및 제2 디지털 코드 생성기를 포함한다. 상기 제1 디지털 코드 생성기는 클럭 신호의 하이 레벨 구간의 길이 및 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 싸인(sign) 신호를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드로서 출력한다. 상기 클럭 지연 회로는 상기 클럭 신호를 상기 제1 디지털 코드에 상응하는 시간 동안 지연시켜 지연 클럭 신호를 생성한다. 상기 제2 디지털 코드 생성기는 상기 싸인 신호의 논리 레벨에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 듀티 에러 디지털 코드를 생성한다.
일 실시예에 있어서, 상기 제1 디지털 코드 생성기는 제1 유닛 딜레이에 기초하여 상기 클럭 신호의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 대해 각각 타임-투-디지털(time-to-digital) 변환을 수행하여 상기 하이 디지털 코드 및 상기 로우 디지털 코드를 생성하고, 상기 제2 디지털 코드 생성기는 상기 제1 유닛 딜레이보다 작은 제2 유닛 딜레이에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 대해 타임-투-디지털 변환을 수행하여 상기 듀티 에러 디지털 코드를 생성할 수 있다.
상기 클럭 지연 회로는 상기 제1 유닛 딜레이에 기초하여 상기 제1 디지털 코드에 대해 디지털-투-타임(digital-to-time) 변환을 수행하여 생성되는 지연 시간 동안 상기 클럭 신호를 지연시켜 상기 지연 클럭 신호를 생성할 수 있다.
상기 제1 디지털 코드 생성기는, 상기 클럭 신호의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 제1 펄스 신호를 생성하는 제1 펄스 생성기, 상기 클럭 신호의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 제2 펄스 신호를 생성하는 제2 펄스 생성기, 상기 제1 유닛 딜레이에 기초하여 상기 제1 펄스 신호의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 하이 디지털 코드를 생성하는 제1 코스(coarse) 타임-투-디지털 컨버터, 상기 제1 유닛 딜레이에 기초하여 상기 제2 펄스 신호의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 로우 디지털 코드를 생성하는 제2 코스 타임-투-디지털 컨버터, 및 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 긴 구간 및 상기 짧은 구간을 결정하고, 상기 긴 구간에 상응하는 논리 레벨을 갖는 상기 싸인 신호를 출력하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 상기 제1 디지털 코드로서 출력하는 코스 컨트롤러를 포함할 수 있다.
상기 제1 코스 타임-투-디지털 컨버터는, 서로 직렬로 연결되고, 각각이 입력 신호를 상기 제1 유닛 딜레이 동안 지연시켜 출력 신호를 생성하는 제1 내지 제n(n은 2 이상의 정수) 지연 회로들 및 상기 제1 내지 제n 지연 회로들 각각의 상기 출력 신호의 상승 에지에 동기되어 상기 제1 펄스 신호를 래치하여 각각 제1 내지 제n 비트 신호들로서 출력하는 제1 내지 제n 플립플롭들을 포함하고, 상기 제1 지연 회로의 상기 입력 신호는 상기 제1 펄스 신호이고, 상기 제k(k는 (n-1) 이하의 양의 정수) 지연 회로의 상기 출력 신호는 상기 제(k+1) 지연 회로의 상기 입력 신호로서 제공되고, 상기 하이 디지털 코드는 상기 제1 내지 제n 비트 신호들을 포함할 수 있다.
상기 제2 코스 타임-투-디지털 컨버터는, 서로 직렬로 연결되고, 각각이 입력 신호를 상기 제1 유닛 딜레이 동안 지연시켜 출력 신호를 생성하는 제1 내지 제n(n은 2 이상의 정수) 지연 회로들 및 상기 제1 내지 제n 지연 회로들 각각의 상기 출력 신호의 상승 에지에 동기되어 상기 제2 펄스 신호를 래치하여 각각 제1 내지 제n 비트 신호들로서 출력하는 제1 내지 제n 플립플롭들을 포함하고, 상기 제1 지연 회로의 상기 입력 신호는 상기 제2 펄스 신호이고, 상기 제k(k는 (n-1) 이하의 양의 정수) 지연 회로의 상기 출력 신호는 상기 제(k+1) 지연 회로의 상기 입력 신호로서 제공되고, 상기 로우 디지털 코드는 상기 제1 내지 제n 비트 신호들을 포함할 수 있다.
상기 제1 디지털 코드 생성기는, 선택 신호가 제1 논리 레벨인 경우 상기 클럭 신호의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 펄스 신호를 생성하고, 상기 선택 신호가 제2 논리 레벨인 경우 상기 클럭 신호의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 상기 펄스 신호를 생성하는 펄스 생성기, 상기 제1 유닛 딜레이에 기초하여 상기 펄스 신호의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 디지털 코드를 생성하는 코스 타임-투-디지털 컨버터, 및 상기 제1 논리 레벨을 갖는 상기 선택 신호를 출력하는 동안 상기 코스 타임-투-디지털 컨버터로부터 제공되는 상기 디지털 코드를 상기 하이 디지털 코드로서 수신하고, 상기 제2 논리 레벨을 갖는 상기 선택 신호를 출력하는 동안 상기 코스 타임-투-디지털 컨버터로부터 제공되는 상기 디지털 코드를 상기 로우 디지털 코드로서 수신하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 긴 구간 및 상기 짧은 구간을 결정하고, 상기 긴 구간에 상응하는 논리 레벨을 갖는 상기 싸인 신호를 출력하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 상기 제1 디지털 코드로서 출력하는 코스 컨트롤러를 포함할 수 있다.
상기 클럭 지연 회로는, 서로 직렬로 연결되고, 각각이 입력 클럭 신호를 상기 제1 유닛 딜레이 동안 지연시켜 출력 클럭 신호를 생성하는 제1 내지 제n(n은 2 이상의 정수) 지연 회로들 및 상기 제1 디지털 코드에 기초하여 상기 제1 내지 제n 지연 회로들로부터 제공되는 상기 출력 클럭 신호들 중의 하나를 상기 지연 클럭 신호로서 출력하는 지연 컨트롤러를 포함하고, 상기 제1 지연 회로의 상기 입력 클럭 신호는 상기 클럭 신호이고, 상기 제k(k는 (n-1) 이하의 양의 정수) 지연 회로의 상기 출력 클럭 신호는 상기 제(k+1) 지연 회로의 상기 입력 클럭 신호로서 제공될 수 있다.
상기 제2 디지털 코드 생성기는, 상기 싸인 신호의 논리 레벨에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 길이를 갖는 펄스 신호를 생성하는 펄스 생성기, 서로 직렬로 연결되고, 각각이 입력 신호를 상기 제2 유닛 딜레이 동안 지연시켜 출력 신호를 생성하는 제1 내지 제m(m은 2 이상의 정수) 지연 회로들, 및 상기 제1 내지 제m 지연 회로들 각각의 상기 출력 신호의 상승 에지에 동기되어 상기 펄스 신호를 래치하여 각각 제1 내지 제m 비트 신호들로서 출력하는 제1 내지 제m 플립플롭들을 포함하고, 상기 제1 지연 회로의 상기 입력 신호는 상기 펄스 신호이고, 상기 제s(s는 (m-1) 이하의 양의 정수) 지연 회로의 상기 출력 신호는 상기 제(s+1) 지연 회로의 상기 입력 신호로서 제공되고, 상기 듀티 에러 디지털 코드는 상기 제1 내지 제m 비트 신호들을 포함할 수 있다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 듀티 사이클 보정 장치는 듀티 사이클 에러 검출 장치, 위상 정렬 회로, 및 클럭 합성 회로를 포함한다. 상기 듀티 사이클 에러 검출 장치는 클럭 신호의 하이 레벨 구간 및 로우 레벨 구간 중에서 긴 구간을 나타내는 싸인(sign) 신호 및 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드를 생성한다. 상기 위상 정렬 회로는 상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호 및 상기 클럭 신호의 반전 신호에 상응하는 반전 클럭 신호 중의 하나를 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호 및 상기 반전 클럭 신호 중의 다른 하나를 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호로서 출력한다. 상기 클럭 합성 회로는 상기 제1 내부 클럭 신호의 상승 에지 및 상기 제2 내부 클럭 신호의 상승 에지마다 토글링되는 보정 클럭 신호를 생성한다.
일 실시예에 있어서, 상기 듀티 사이클 에러 검출 장치는, 상기 클럭 신호의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 상기 싸인 신호를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드로서 출력하는 제1 디지털 코드 생성기, 상기 클럭 신호를 상기 제1 디지털 코드에 상응하는 시간 동안 지연시켜 지연 클럭 신호를 생성하는 클럭 지연 회로, 및 상기 싸인 신호의 논리 레벨에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 상기 듀티 에러 디지털 코드를 생성하는 제2 디지털 코드 생성기를 포함할 수 있다.
상기 제1 디지털 코드 생성기는 제1 유닛 딜레이에 기초하여 상기 클럭 신호의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 대해 각각 타임-투-디지털(time-to-digital) 변환을 수행하여 상기 하이 디지털 코드 및 상기 로우 디지털 코드를 생성하고, 상기 제2 디지털 코드 생성기는 상기 제1 유닛 딜레이보다 작은 제2 유닛 딜레이에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 대해 타임-투-디지털 변환을 수행하여 상기 듀티 에러 디지털 코드를 생성할 수 있다.
상기 클럭 지연 회로는 상기 제1 유닛 딜레이에 기초하여 상기 제1 디지털 코드에 대해 디지털-투-타임(digital-to-time) 변환을 수행하여 생성되는 제1 지연 시간 동안 상기 클럭 신호를 지연시켜 상기 지연 클럭 신호를 생성하고, 상기 위상 정렬 회로는 상기 제2 유닛 딜레이에 기초하여 상기 듀티 에러 디지털 코드의 절반에 대해 디지털-투-타임 변환을 수행하여 생성되는 제2 지연 시간 동안 상기 클럭 신호 및 상기 반전 클럭 신호 중의 상기 다른 하나를 지연시켜 상기 제2 내부 클럭 신호를 생성할 수 있다.
상기 듀티 사이클 보정 장치는 바이패스 신호에 응답하여 상기 클럭 신호 및 상기 보정 클럭 신호 중의 하나를 출력 클럭 신호로서 출력하는 멀티플렉서를 더 포함하고, 상기 제1 디지털 코드 생성기는 상기 하이 디지털 코드와 상기 로우 디지털 코드가 동일한 경우 상기 바이패스 신호를 활성화시킬 수 있다.
상기 듀티 사이클 보정 장치는 제1 제어 신호 및 제2 제어 신호에 대해 논리합(OR) 연산을 수행하여 바이패스 신호를 생성하는 논리합 게이트 및 상기 바이패스 신호에 응답하여 상기 클럭 신호 및 상기 보정 클럭 신호 중의 하나를 출력 클럭 신호로서 출력하는 멀티플렉서를 더 포함하고, 상기 제1 디지털 코드 생성기는 상기 하이 디지털 코드와 상기 로우 디지털 코드가 동일한 경우 상기 제1 제어 신호를 활성화시키고, 상기 제2 디지털 코드 생성기는 상기 듀티 에러 디지털 코드가 문턱 코드 보다 작은 경우 상기 제2 제어 신호를 활성화시킬 수 있다.
일 실시예에 있어서, 상기 위상 정렬 회로는, 상기 클럭 신호를 수신하고, 상기 클럭 신호 및 상기 클럭 신호와 동기되는 상기 반전 클럭 신호를 출력하는 위상 분리기, 상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호 및 상기 반전 클럭 신호 중의 하나를 상기 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호 및 상기 반전 클럭 신호 중의 다른 하나를 제3 내부 클럭 신호로서 출력하는 제1 경로 선택기, 상기 제3 내부 클럭 신호를 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간 동안 지연시켜 상기 제2 내부 클럭 신호를 생성하는 클럭 지연 회로, 및 상기 싸인 신호의 논리 레벨에 기초하여 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나를 제1 출력 단자를 통해 출력하고, 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 다른 하나를 제2 출력 단자를 통해 출력하는 제2 경로 선택기를 포함할 수 있다.
상기 제1 경로 선택기는, 상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호의 상기 하이 레벨 구간이 상기 클럭 신호의 상기 로우 레벨 구간 보다 긴 것으로 판단되는 경우, 상기 반전 클럭 신호를 상기 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호를 상기 제3 내부 클럭 신호로서 출력하고, 상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호의 상기 로우 레벨 구간이 상기 클럭 신호의 상기 하이 레벨 구간 보다 긴 것으로 판단되는 경우, 상기 클럭 신호를 상기 제1 내부 클럭 신호로서 출력하고, 상기 반전 클럭 신호를 상기 제3 내부 클럭 신호로서 출력할 수 있다.
일 실시예에 있어서, 상기 클럭 합성 회로는, 클럭 선택 신호에 응답하여 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나를 제어 클럭 신호로서 출력하는 멀티플렉서 및 상기 제어 클럭 신호의 상승 에지에 동기되어 상기 클럭 선택 신호를 래치하여 상기 보정 클럭 신호로서 출력하고, 상기 보정 클럭 신호의 반전 신호를 상기 클럭 선택 신호로서 출력하는 플립플롭을 포함할 수 있다.
일 실시예에 있어서, 상기 클럭 합성 회로는, 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나의 상승 에지에 토글링되는 제1 분주 클럭 신호를 생성하는 제1 주파수 분주기, 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 다른 하나의 상승 에지에 토글링되는 제2 분주 클럭 신호를 생성하는 제2 주파수 분주기, 및 상기 제1 분주 클럭 신호 및 상기 제2 분주 클럭 신호에 대해 배타적 논리합(XOR) 연산을 수행하여 상기 보정 클럭 신호를 생성하는 배타적 논리합 게이트를 포함할 수 있다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 전자 장치는 클럭 생성기, 듀티 사이클 보정 장치, 메모리 장치 및 프로세서를 포함한다. 상기 클럭 생성기는 클럭 신호를 생성한다. 상기 듀티 사이클 보정 장치는 상기 클럭 신호의 듀티 사이클 에러를 보정하여 보정 클럭 신호를 생성한다. 상기 메모리 장치는 상기 보정 클럭 신호에 동기되어 동작한다. 상기 프로세서는 상기 메모리 장치에 데이터를 기입하고 상기 메모리 장치로부터 상기 데이터를 독출한다. 상기 듀티 사이클 보정 장치는, 상기 클럭 신호의 하이 레벨 구간 및 로우 레벨 구간 중에서 긴 구간을 나타내는 싸인(sign) 신호 및 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드를 생성하는 듀티 사이클 에러 검출 장치, 상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호 및 상기 클럭 신호의 반전 신호에 상응하는 반전 클럭 신호 중의 하나를 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호 및 상기 반전 클럭 신호 중의 다른 하나를 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호로서 출력하는 위상 정렬 회로, 및 상기 제1 내부 클럭 신호의 상승 에지 및 상기 제2 내부 클럭 신호의 상승 에지마다 토글링되는 보정 클럭 신호를 생성하는 클럭 합성 회로를 포함한다.
본 발명의 실시예들에 따른 듀티 사이클 에러 검출 장치는 클럭 신호에 대해 두 단계로 타임-투-디지털 변환을 수행하여 상기 클럭 신호의 듀티 사이클 에러를 나타내는 듀티 에러 디지털 코드를 생성하고, 듀티 사이클 보정 장치는 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간동안만 클럭 신호 또는 반전 클럭 신호를 지연시켜 듀티 사이클 에러를 보정함으로써 듀티 사이클 보정의 해상도(resolution)를 향상시키면서도 적은 면적으로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 듀티 사이클 에러(duty cycle error) 검출 장치를 나타내는 블록도이다.
도 2는 도 1의 듀티 사이클 에러 검출 장치에 포함되는 제1 디지털 코드 생성기의 일 예를 나타내는 블록도이다.
도 3은 도 2의 제1 디지털 코드 생성기에 포함되는 제1 코스(coarse) 타임-투-디지털 컨버터의 일 예를 나타내는 회로도이다.
도 4는 도 3의 제1 코스 타임-투-디지털 컨버터의 동작을 설명하기 위한 도면이다.
도 5는 도 2의 제1 디지털 코드 생성기에 포함되는 제2 코스 타임-투-디지털 컨버터의 일 예를 나타내는 회로도이다.
도 6은 도 5의 제2 코스 타임-투-디지털 컨버터의 동작을 설명하기 위한 도면이다.
도 7은 도 1의 듀티 사이클 에러 검출 장치에 포함되는 제1 디지털 코드 생성기의 다른 예를 나타내는 블록도이다.
도 8은 도 1의 듀티 사이클 에러 검출 장치에 포함되는 클럭 지연 회로의 일 예를 나타내는 블록도이다.
도 9 및 10은 도 8의 클럭 지연 회로의 동작을 설명하기 위한 도면들이다.
도 11은 도 1의 듀티 사이클 에러 검출 장치에 포함되는 제2 디지털 코드 생성기의 일 예를 나타내는 블록도이다.
도 12 및 13은 은 도 11의 제2 디지털 코드 생성기에 포함되는 펄스 생성기의 동작을 설명하기 위한 도면들이다.
도 14는 도 11의 제2 디지털 코드 생성기에 포함되는 파인(fine) 타임-투-디지털 컨버터의 일 예를 나타내는 회로도이다.
도 15는 도 14의 파인 타임-투-디지털 컨버터의 동작을 설명하기 위한 도면이다.
도 16은 본 발명의 일 실시예에 따른 듀티 사이클 보정 장치를 나타내는 블록도이다.
도 17은 도 16에 도시된 듀티 사이클 보정 장치의 일 예를 나타내는 블록도이다.
도 18은 도 16의 듀티 사이클 보정 장치에 포함되는 위상 정렬 회로의 일 예를 나타내는 블록도이다.
도 19는 도 18의 위상 정렬 회로에 포함되는 클럭 지연 회로의 일 예를 나타내는 블록도이다.
도 20 및 21은 도 18의 위상 정렬 회로의 동작을 설명하기 위한 도면들이다.
도 22는 도 16의 듀티 사이클 보정 장치에 포함되는 클럭 합성 회로의 일 예를 나타내는 블록도이다.
도 23 및 24는 도 22의 클럭 합성 회로의 동작을 설명하기 위한 도면들이다.
도 25는 도 16의 듀티 사이클 보정 장치에 포함되는 클럭 합성 회로의 다른 예를 나타내는 블록도이다.
도 26 및 27은 도 25의 클럭 합성 회로의 동작을 설명하기 위한 도면들이다.
도 28은 도 16에 도시된 듀티 사이클 보정 장치의 다른 예를 나타내는 블록도이다.
도 29는 도 16에 도시된 듀티 사이클 보정 장치의 또 다른 예를 나타내는 블록도이다.
도 30은 본 발명의 일 실시예에 따른 전자 장치를 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 듀티 사이클 에러(duty cycle error) 검출 장치를 나타내는 블록도이다.
도 1을 참조하면, 듀티 사이클 에러 검출 장치(100)는 제1 디지털 코드 생성기(110), 클럭 지연 회로(120) 및 제2 디지털 코드 생성기(130)를 포함한다.
제1 디지털 코드 생성기(110)는 클럭 신호(CLK)를 수신하고, 클럭 신호(CLK)의 하이 레벨 구간의 길이 및 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성한다.
일 실시예에 있어서, 제1 디지털 코드 생성기(110)는 제1 유닛 딜레이에 기초하여 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이에 대해 타임-투-디지털(time-to-digital) 변환을 수행하여 상기 하이 디지털 코드를 생성하고, 상기 제1 유닛 딜레이에 기초하여 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 로우 디지털 코드를 생성할 수 있다.
제1 디지털 코드 생성기(110)는 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 싸인(sign) 신호(SS)를 생성한다. 예를 들어, 제1 디지털 코드 생성기(110)는 상기 하이 레벨 구간이 상기 로우 레벨 구간 보다 긴 경우, 제1 논리 레벨을 갖는 싸인 신호(SS)를 생성하고, 상기 로우 레벨 구간이 상기 하이 레벨 구간 보다 긴 경우, 제2 논리 레벨을 갖는 싸인 신호(SS)를 생성할 수 있다. 일 실시예에 있어서, 상기 제1 논리 레벨은 논리 하이 레벨이고, 상기 제2 논리 레벨은 논리 로우 레벨일 수 있다. 다른 실시예에 있어서, 상기 제1 논리 레벨은 논리 로우 레벨이고, 상기 제2 논리 레벨은 논리 하이 레벨일 수 있다.
또한, 제1 디지털 코드 생성기(110)는 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드(DC1)로서 출력한다.
클럭 지연 회로(120)는 클럭 신호(CLK)를 제1 디지털 코드 생성기(110)로부터 제공되는 제1 디지털 코드(DC1)에 상응하는 시간 동안 지연시켜 지연 클럭 신호(D_CLK)를 생성한다.
일 실시예에 있어서, 클럭 지연 회로(120)는 상기 제1 유닛 딜레이에 기초하여 제1 디지털 코드(DC1)에 대해 디지털-투-타임(digital-to-time) 변환을 수행하여 생성되는 지연 시간 동안 클럭 신호(CLK)를 지연시켜 지연 클럭 신호(D_CLK)를 생성할 수 있다.
제2 디지털 코드 생성기(130)는 제1 디지털 코드 생성기(110)로부터 제공되는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 어느 구간이 상기 긴 구간에 상응하는지 여부를 판단한다. 제2 디지털 코드 생성기(130)는 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 듀티 에러 디지털 코드(DEDC)를 생성한다.
일 실시예에 있어서, 제2 디지털 코드 생성기(130)는 상기 제1 유닛 딜레이보다 작은 제2 유닛 딜레이에 기초하여 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 대해 타임-투-디지털 변환을 수행하여 듀티 에러 디지털 코드(DEDC)를 생성할 수 있다.
도 2는 도 1의 듀티 사이클 에러 검출 장치(100)에 포함되는 제1 디지털 코드 생성기(110)의 일 예를 나타내는 블록도이다.
도 2를 참조하면, 제1 디지털 코드 생성기(110a)는 제1 펄스 생성기(111), 제1 코스(coarse) 타임-투-디지털 컨버터(TDC)(112), 제2 펄스 생성기(113), 제2 코스 타임-투-디지털 컨버터(TDC)(114) 및 코스 컨트롤러(115)를 포함할 수 있다.
제1 펄스 생성기(111)는 클럭 신호(CLK)를 수신하고, 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 제1 펄스 신호(PS1)를 생성할 수 있다.
제1 코스 타임-투-디지털 컨버터(112)는 상기 제1 유닛 딜레이에 기초하여 제1 펄스 신호(PS1)의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 하이 디지털 코드(HDC)를 생성할 수 있다.
도 3은 도 2의 제1 디지털 코드 생성기(110a)에 포함되는 제1 코스 타임-투-디지털 컨버터(112)의 일 예를 나타내는 회로도이다.
도 3을 참조하면, 제1 코스 타임-투-디지털 컨버터(112)는 제1 내지 제n(n은 2 이상의 정수) 지연 회로들(116-1, 116-2, ..., 116-n) 및 제1 내지 제n 플립플롭들(117-1, 117-2, ..., 117-n)을 포함할 수 있다.
제1 내지 제n 지연 회로들(116-1, 116-2, ..., 116-n)은 서로 직렬로 연결될 수 있다. 즉, 제k(k는 (n-1) 이하의 양의 정수) 지연 회로(116-k)의 출력 신호는 제(k+1) 지연 회로(116-(k+1))의 입력 신호로서 제공될 수 있다. 제1 펄스 생성기(111)로부터 생성되는 제1 펄스 신호(PS1)는 제1 지연 회로(116-1)의 상기 입력 신호로서 제공될 수 있다.
제1 내지 제n 지연 회로들(116-1, 116-2, ..., 116-n) 각각은 상기 입력 신호를 상기 제1 유닛 딜레이 동안 지연시켜 제1 내지 제n 출력 신호들(OS1_1, OS1_2, .., OS1_n)로서 출력할 수 있다.
일 실시예에 있어서, 도 3에 도시된 바와 같이, 제1 내지 제n 지연 회로들(116-1, 116-2, ..., 116-n) 각각은 짝수개의 인버터들을 포함할 수 있다.
제1 내지 제n 플립플롭들(117-1, 117-2, ..., 117-n)은 제1 내지 제n 지연 회로들(116-1, 116-2, ..., 116-n)로부터 출력되는 제1 내지 제n 출력 신호들(OS1_1, OS1_2, .., OS1_n)의 상승 에지에 동기되어 제1 펄스 신호(PS1)를 래치하여 각각 제1 내지 제n 비트 신호들(HDC[1], HDC[2], ..., HDC[n])로서 출력할 수 있다.
제1 코스 타임-투-디지털 컨버터(112)로부터 출력되는 하이 디지털 코드(HDC)는 제1 내지 제n 비트 신호들(HDC[1], HDC[2], ..., HDC[n])을 포함할 수 있다. 예를 들어, 제1 플립플롭(117-1)으로부터 출력되는 제1 비트 신호(HDC[1])는 하이 디지털 코드(HDC)의 첫 번째 비트에 상응하고, 제2 플립플롭(117-2)으로부터 출력되는 제2 비트 신호(HDC[2])는 하이 디지털 코드(HDC)의 두 번째 비트에 상응하고, 제n 플립플롭(117-n)으로부터 출력되는 제n 비트 신호(HDC[n])는 하이 디지털 코드(HDC)의 n번째 비트에 상응할 수 있다.
도 4는 도 3의 제1 코스 타임-투-디지털 컨버터(112)의 동작을 설명하기 위한 도면이다.
도 4에는 n이 16인 경우에 제1 코스 타임-투-디지털 컨버터(112)의 동작이 예시적으로 도시된다.
도 4에 도시된 바와 같이, 제1 펄스 생성기(111)로부터 생성되는 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 제1 펄스 신호(PS1)는 제1 지연 회로(116-1)의 상기 입력 신호로서 제공되므로, 제1 내지 제n 지연 회로들(116-1, 116-2, ..., 116-n)은 제1 펄스 신호(PS1)를 제1 유닛 딜레이(UD1) 동안 순차적으로 지연시켜 제1 내지 제n 출력 신호들(OS1_1, OS1_2, .., OS1_n)을 생성할 수 있다.
상술한 바와 같이, 제1 내지 제n 플립플롭들(117-1, 117-2, ..., 117-n)은 제1 내지 제n 출력 신호들(OS1_1, OS1_2, .., OS1_n)의 상승 에지에 동기되어 제1 펄스 신호(PS1)를 래치하여 각각 제1 내지 제n 비트 신호들(HDC[1], HDC[2], ..., HDC[n])을 생성할 수 있다.
따라서, 도 4에 도시된 바와 같이, 제1 내지 제10 출력 신호들(OS1_1, OS1_2, .., OS1_10)의 상승 에지에서 제1 펄스 신호(PS1)는 논리 하이 레벨을 가지므로, 제1 내지 제10 플립플롭들(117-1, 117-2, ..., 117-10)로부터 출력되는 제1 내지 제10 비트 신호들(HDC[1], HDC[2], ..., HDC[10])은 논리 하이 레벨을 가질 수 있다. 반면에, 제11 내지 제16 출력 신호들(OS1_11, OS1_12, .., OS1_16)의 상승 에지에서 제1 펄스 신호(PS1)는 논리 로우 레벨을 가지므로, 제11 내지 제16 플립플롭들(117-11, 117-12, ..., 117-16)로부터 출력되는 제11 내지 제16 비트 신호들(HDC[11], HDC[12], ..., HDC[16])은 논리 로우 레벨을 가질 수 있다.
따라서 제1 코스 타임-투-디지털 컨버터(112)는 "1111111111000000"를 하이 디지털 코드(HDC)로서 출력할 수 있다. 즉, 제1 코스 타임-투-디지털 컨버터(112)로부터 생성되는 하이 디지털 코드(HDC)에 포함되는 "1"의 개수는 제1 펄스 신호(PS1)의 길이에 비례할 수 있다.
이상, 도 3 및 4를 참조하여 제1 코스 타임-투-디지털 컨버터(112)의 일 예에 대해 설명하였으나, 본 발명은 이에 한정되지 않고, 제1 코스 타임-투-디지털 컨버터(112)는 제1 펄스 신호(PS1)의 길이를 디지털 값으로 변환할 수 있는 임의의 구조로 구현될 수 있다.
다시 도 2를 참조하면, 제2 펄스 생성기(113)는 클럭 신호(CLK)를 수신하고, 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 제2 펄스 신호(PS2)를 생성할 수 있다.
제2 코스 타임-투-디지털 컨버터(114)는 제1 유닛 딜레이(UD1)에 기초하여 제2 펄스 신호(PS2)의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 로우 디지털 코드(LDC)를 생성할 수 있다.
도 5는 도 2의 제1 디지털 코드 생성기(110a)에 포함되는 제2 코스 타임-투-디지털 컨버터(114)의 일 예를 나타내는 회로도이다.
도 5를 참조하면, 제2 코스 타임-투-디지털 컨버터(114)는 제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n) 및 제1 내지 제n 플립플롭들(119-1, 119-2, ..., 119-n)을 포함할 수 있다.
제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n)은 서로 직렬로 연결될 수 있다. 즉, 제k 지연 회로(118-k)의 출력 신호는 제(k+1) 지연 회로(118-(k+1))의 입력 신호로서 제공될 수 있다. 제2 펄스 생성기(113)로부터 생성되는 제2 펄스 신호(PS2)는 제1 지연 회로(118-1)의 상기 입력 신호로서 제공될 수 있다.
제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n) 각각은 상기 입력 신호를 제1 유닛 딜레이(UD1) 동안 지연시켜 제1 내지 제n 출력 신호들(OS2_1, OS2_2, .., OS2_n)로서 출력할 수 있다.
일 실시예에 있어서, 도 5에 도시된 바와 같이, 제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n) 각각은 짝수개의 인버터들을 포함할 수 있다.
제1 내지 제n 플립플롭들(119-1, 119-2, ..., 119-n)은 제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n)로부터 출력되는 제1 내지 제n 출력 신호들(OS2_1, OS2_2, .., OS2_n)의 상승 에지에 동기되어 제2 펄스 신호(PS2)를 래치하여 각각 제1 내지 제n 비트 신호들(LDC[1], LDC[2], ..., LDC[n])로서 출력할 수 있다.
제2 코스 타임-투-디지털 컨버터(114)로부터 출력되는 로우 디지털 코드(LDC)는 제1 내지 제n 비트 신호들(LDC[1], LDC[2], ..., LDC[n])을 포함할 수 있다. 예를 들어, 제1 플립플롭(119-1)으로부터 출력되는 제1 비트 신호(LDC[1])는 로우 디지털 코드(LDC)의 첫 번째 비트에 상응하고, 제2 플립플롭(119-2)으로부터 출력되는 제2 비트 신호(LDC[2])는 로우 디지털 코드(LDC)의 두 번째 비트에 상응하고, 제n 플립플롭(119-n)으로부터 출력되는 제n 비트 신호(LDC[n])는 로우 디지털 코드(LDC)의 n번째 비트에 상응할 수 있다.
도 6은 도 5의 제2 코스 타임-투-디지털 컨버터의 동작을 설명하기 위한 도면이다.
도 6에는 n이 16인 경우에 제2 코스 타임-투-디지털 컨버터(114)의 동작이 예시적으로 도시된다.
도 6에 도시된 바와 같이, 제2 펄스 생성기(113)로부터 생성되는 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 제2 펄스 신호(PS2)는 제1 지연 회로(118-1)의 상기 입력 신호로서 제공되므로, 제1 내지 제n 지연 회로들(118-1, 118-2, ..., 118-n)은 제2 펄스 신호(PS2)를 제1 유닛 딜레이(UD1) 동안 순차적으로 지연시켜 제1 내지 제n 출력 신호들(OS2_1, OS2_2, .., OS2_n)을 생성할 수 있다.
상술한 바와 같이, 제1 내지 제n 플립플롭들(119-1, 119-2, ..., 119-n)은 제1 내지 제n 출력 신호들(OS2_1, OS2_2, .., OS2_n)의 상승 에지에 동기되어 제2 펄스 신호(PS2)를 래치하여 각각 제1 내지 제n 비트 신호들(LDC[1], LDC[2], ..., LDC[n])을 생성할 수 있다.
따라서, 도 6에 도시된 바와 같이, 제1 내지 제6 출력 신호들(OS2_1, OS2_2, .., OS2_6)의 상승 에지에서 제2 펄스 신호(PS2)는 논리 하이 레벨을 가지므로, 제1 내지 제6 플립플롭들(119-1, 119-2, ..., 119-6)로부터 출력되는 제1 내지 제6 비트 신호들(LDC[1], LDC[2], ..., LDC[6])은 논리 하이 레벨을 가질 수 있다. 반면에, 제7 내지 제16 출력 신호들(OS2_7, OS2_8, .., OS2_16)의 상승 에지에서 제2 펄스 신호(PS2)는 논리 로우 레벨을 가지므로, 제7 내지 제16 플립플롭들(119-7, 119-8, ..., 119-16)로부터 출력되는 제7 내지 제16 비트 신호들(LDC[7], LDC[8], ..., LDC[16])은 논리 로우 레벨을 가질 수 있다.
따라서 제2 코스 타임-투-디지털 컨버터(114)는 "1111110000000000"를 로우 디지털 코드(LDC)로서 출력할 수 있다. 즉, 제2 코스 타임-투-디지털 컨버터(114)로부터 생성되는 로우 디지털 코드(LDC)에 포함되는 "1"의 개수는 제2 펄스 신호(PS2)의 길이에 비례할 수 있다.
이상, 도 5 및 6을 참조하여 제2 코스 타임-투-디지털 컨버터(114)의 일 예에 대해 설명하였으나, 본 발명은 이에 한정되지 않고, 제2 코스 타임-투-디지털 컨버터(114)는 제2 펄스 신호(PS2)의 길이를 디지털 값으로 변환할 수 있는 임의의 구조로 구현될 수 있다.
다시 도 2를 참조하면, 코스 컨트롤러(115)는 제1 코스 타임-투-디지털 컨버터(112)로부터 하이 디지털 코드(HDC)를 수신하고, 제2 코스 타임-투-디지털 컨버터(114)로부터 로우 디지털 코드(LDC)를 수신할 수 있다. 코스 컨트롤러(115)는 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC)에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 긴 구간 및 상기 짧은 구간을 결정할 수 있다. 예를 들어, 코스 컨트롤러(115)는 하이 디지털 코드(HDC)에 포함되는 "1"의 개수가 로우 디지털 코드(LDC)에 포함되는 "1"의 개수보다 많은 경우, 상기 하이 레벨 구간을 상기 긴 구간으로 결정하고 상기 로우 레벨 구간을 상기 짧은 구간으로 결정할 수 있다. 반대로, 코스 컨트롤러(115)는 하이 디지털 코드(HDC)에 포함되는 "1"의 개수가 로우 디지털 코드(LDC)에 포함되는 "1"의 개수보다 작은 경우, 상기 하이 레벨 구간을 상기 짧은 구간으로 결정하고 상기 로우 레벨 구간을 상기 긴 구간으로 결정할 수 있다.
이후, 코스 컨트롤러(115)는 상기 긴 구간에 상응하는 논리 레벨을 갖는 싸인 신호(SS)를 출력하고, 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC) 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드(DC1)로서 출력할 수 있다.
도 7은 도 1의 듀티 사이클 에러 검출 장치(100)에 포함되는 제1 디지털 코드 생성기(110)의 다른 예를 나타내는 블록도이다.
도 7을 참조하면, 제1 디지털 코드 생성기(110b)는 제3 펄스 생성기(141), 제3 코스 타임-투-디지털 컨버터(TDC)(142) 및 코스 컨트롤러(143)를 포함할 수 있다.
제3 펄스 생성기(141)는 클럭 신호(CLK)를 수신하고, 선택 신호(SEL)가 제1 논리 레벨인 경우 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 펄스 신호(PS)를 생성하고, 선택 신호(SEL)가 제2 논리 레벨인 경우 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 펄스 신호(PS)를 생성할 수 있다.
제3 코스 타임-투-디지털 컨버터(142)는 제1 유닛 딜레이(UD1)에 기초하여 펄스 신호(PS)의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 디지털 코드(DC)를 생성할 수 있다. 일 실시예에 있어서, 제3 코스 타임-투-디지털 컨버터(142)는 도 3에 도시된 제1 코스 타임-투-디지털 컨버터(112) 또는 도 5에 도시된 제2 코스 타임-투-디지털 컨버터(114)와 동일한 구조를 가질 수 있다.
코스 컨트롤러(143)는 상기 제1 논리 레벨을 갖는 선택 신호(SEL)를 출력하는 동안 제3 코스 타임-투-디지털 컨버터(142)로부터 제공되는 디지털 코드(DC)를 하이 디지털 코드(HDC)로서 수신할 수 있다. 또한, 코스 컨트롤러(143)는 상기 제2 논리 레벨을 갖는 선택 신호(SEL)를 출력하는 동안 제3 코스 타임-투-디지털 컨버터(142)로부터 제공되는 디지털 코드(DC)를 로우 디지털 코드(LDC)로서 수신할 수 있다.
이후, 코스 컨트롤러(143)는 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC)에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 긴 구간 및 상기 짧은 구간을 결정할 수 있다. 예를 들어, 코스 컨트롤러(143)는 하이 디지털 코드(HDC)에 포함되는 "1"의 개수가 로우 디지털 코드(LDC)에 포함되는 "1"의 개수보다 많은 경우, 상기 하이 레벨 구간을 상기 긴 구간으로 결정하고 상기 로우 레벨 구간을 상기 짧은 구간으로 결정할 수 있다. 반대로, 코스 컨트롤러(143)는 하이 디지털 코드(HDC)에 포함되는 "1"의 개수가 로우 디지털 코드(LDC)에 포함되는 "1"의 개수보다 작은 경우, 상기 하이 레벨 구간을 상기 짧은 구간으로 결정하고 상기 로우 레벨 구간을 상기 긴 구간으로 결정할 수 있다.
이후, 코스 컨트롤러(143)는 상기 긴 구간에 상응하는 논리 레벨을 갖는 싸인 신호(SS)를 출력하고, 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC) 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드(DC1)로서 출력할 수 있다.
도 8은 도 1의 듀티 사이클 에러 검출 장치(100)에 포함되는 클럭 지연 회로(120)의 일 예를 나타내는 블록도이다.
도 8을 참조하면, 클럭 지연 회로(120)는 제1 내지 제n 지연 회로들(121-1, 121-2, ..., 121-n) 및 지연 컨트롤러(122)를 포함할 수 있다.
제1 내지 제n 지연 회로들(121-1, 121-2, ..., 121-n)은 서로 직렬로 연결될 수 있다. 즉, 제k 지연 회로(121-k)의 출력 클럭 신호는 제(k+1) 지연 회로(121-(k+1))의 입력 클럭 신호로서 제공될 수 있다. 클럭 신호(CLK)는 제1 지연 회로(121-1)의 상기 입력 클럭 신호로서 제공될 수 있다.
제1 내지 제n 지연 회로들(121-1, 121-2, ..., 121-n) 각각은 상기 입력 클럭 신호를 제1 유닛 딜레이(UD1) 동안 지연시켜 제1 내지 제n 출력 클럭 신호들(OC1, OC2, .., OCn)로서 출력할 수 있다.
일 실시예에 있어서, 도 8에 도시된 바와 같이, 제1 내지 제n 지연 회로들(121-1, 121-2, ..., 121-n) 각각은 짝수개의 인버터들을 포함할 수 있다.
지연 컨트롤러(122)는 제1 디지털 코드 생성기(110)로부터 제공되는 제1 디지털 코드(DC1)에 기초하여 제1 내지 제n 지연 회로들(121-1, 121-2, ..., 121-n)로부터 제공되는 제1 내지 제n 출력 클럭 신호들(OC1, OC2, .., OCn) 중의 하나를 지연 클럭 신호(D_CLK)로서 출력할 수 있다.
예를 들어, 제1 디지털 코드(DC1)에 포함되는 "1"의 개수가 a인 경우, 지연 컨트롤러(122)는 제a 지연 회로(121-a)로부터 제공되는 제a 출력 클럭 신호(OCa)를 지연 클럭 신호(D_CLK)로서 출력할 수 있다.
도 9 및 10은 도 8의 클럭 지연 회로의 동작을 설명하기 위한 도면들이다.
도 9에 도시된 클럭 신호(CLK)는 도 4 및 6에 도시된 클럭 신호(CLK)와 동일하다.
이 경우, 클럭 지연 회로(120)가 제1 디지털 코드 생성기(110)로부터 수신하는 제1 디지털 코드(DC1)는 로우 디지털 코드(LDC)에 상응하는 "1111110000000000"일 수 있다.
제1 디지털 코드(DC1)에 포함되는 "1"의 개수는 6이므로, 도 9에 도시된 바와 같이, 클럭 지연 회로(120)로부터 출력되는 지연 클럭 신호(D_CLK)는 클럭 신호(CLK)가 제1 유닛 딜레이(UD1)의 6배 만큼 지연된 신호일 수 있다.
도 10에 도시된 클럭 신호(CLK)는 도 4 및 6에 도시된 클럭 신호(CLK)의 반전 신호와 동일하다.
이 경우, 클럭 지연 회로(120)가 제1 디지털 코드 생성기(110)로부터 수신하는 제1 디지털 코드(DC1)는 하이 디지털 코드(HDC)에 상응하는 "1111110000000000"일 수 있다.
제1 디지털 코드(DC1)에 포함되는 "1"의 개수는 6이므로, 도 10에 도시된 바와 같이, 클럭 지연 회로(120)로부터 출력되는 지연 클럭 신호(D_CLK)는 클럭 신호(CLK)가 제1 유닛 딜레이(UD1)의 6배 만큼 지연된 신호일 수 있다.
이상, 도 8 내지 10을 참조하여 클럭 지연 회로(120)의 일 예에 대해 설명하였으나, 본 발명은 이에 한정되지 않고, 클럭 지연 회로(120)는 클럭 신호(CLK)를 제1 디지털 코드(DC1)에 상응하는 시간 동안 지연시켜 지연 클럭 신호(D_CLK)를 생성할 수 있는 임의의 구조로 구현될 수 있다.
도 11은 도 1의 듀티 사이클 에러 검출 장치에 포함되는 제2 디지털 코드 생성기의 일 예를 나타내는 블록도이다.
도 11을 참조하면, 제2 디지털 코드 생성기(130)는 펄스 생성기(131) 및 파인(fine) 타임-투-디지털 컨버터(TDC)(132)를 포함할 수 있다.
펄스 생성기(131)는 클럭 신호(CLK), 지연 클럭 신호(D_CLK) 및 싸인 신호(SS)를 수신할 수 있다. 펄스 생성기(131)는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 어느 구간이 상기 긴 구간에 상응하는지 여부를 판단하고, 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 길이를 갖는 제3 펄스 신호(PS3)를 생성할 수 있다.
도 12 및 13은 은 도 11의 제2 디지털 코드 생성기에 포함되는 펄스 생성기의 동작을 설명하기 위한 도면들이다.
도 12에 도시된 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)는 도 9에 도시된 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)와 동일하다.
이 경우, 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 하이 레벨 구간이 상기 긴 구간에 상응하므로, 펄스 생성기(131)는 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 하이 레벨 구간의 종료 시점까지의 길이에 상응하는 길이를 갖는 제3 펄스 신호(PS3)를 생성할 수 있다.
도 13에 도시된 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)는 도 10에 도시된 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)와 동일하다.
이 경우, 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 로우 레벨 구간이 상기 긴 구간에 상응하므로, 펄스 생성기(131)는 지연 클럭 신호(D_CLK)의 상기 로우 레벨 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 로우 레벨 구간의 종료 시점까지의 길이에 상응하는 길이를 갖는 제3 펄스 신호(PS3)를 생성할 수 있다.
다시 도 11을 참조하면, 파인 타임-투-디지털 컨버터(132)는 제1 유닛 딜레이(UD1) 보다 작은 제2 유닛 딜레이(UD2)에 기초하여 제3 펄스 신호(PS3)의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 듀티 에러 디지털 코드(DEDC)를 생성할 수 있다.
도 14는 도 11의 제2 디지털 코드 생성기(130)에 포함되는 파인 타임-투-디지털 컨버터(132)의 일 예를 나타내는 회로도이다.
도 14를 참조하면, 파인 타임-투-디지털 컨버터(132)는 제1 내지 제m(m은 2 이상의 정수) 지연 회로들(133-1, 133-2, ..., 133-m) 및 제1 내지 제m 플립플롭들(134-1, 134-2, ..., 134-m)을 포함할 수 있다.
제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m)은 서로 직렬로 연결될 수 있다. 즉, 제s(s는 (m-1) 이하의 양의 정수) 지연 회로(133-s)의 출력 신호는 제(s+1) 지연 회로(133-(s+1))의 입력 신호로서 제공될 수 있다. 펄스 생성기(131)로부터 생성되는 제3 펄스 신호(PS3)는 제1 지연 회로(133-1)의 상기 입력 신호로서 제공될 수 있다.
제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m) 각각은 상기 입력 신호를 제2 유닛 딜레이(UD2) 동안 지연시켜 제1 내지 제m 출력 신호들(OS3_1, OS3_2, .., OS3_m)로서 출력할 수 있다.
일 실시예에 있어서, 도 14에 도시된 바와 같이, 제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m) 각각은 짝수개의 인버터들을 포함할 수 있다.
제1 내지 제m 플립플롭들(134-1, 134-2, ..., 134-m)은 제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m)로부터 출력되는 제1 내지 제m 출력 신호들(OS3_1, OS3_2, .., OS3_m)의 상승 에지에 동기되어 제3 펄스 신호(PS3)를 래치하여 각각 제1 내지 제m 비트 신호들(DEDC[1], DEDC[2], ..., DEDC[m])로서 출력할 수 있다.
파인 타임-투-디지털 컨버터(132)로부터 출력되는 듀티 에러 디지털 코드(DEDC)는 제1 내지 제m 비트 신호들(DEDC[1], DEDC[2], ..., DEDC[m])을 포함할 수 있다. 예를 들어, 제1 플립플롭(134-1)으로부터 출력되는 제1 비트 신호(DEDC[1])는 듀티 에러 디지털 코드(DEDC)의 첫 번째 비트에 상응하고, 제2 플립플롭(134-2)으로부터 출력되는 제2 비트 신호(DEDC[2])는 듀티 에러 디지털 코드(DEDC)의 두 번째 비트에 상응하고, 제m 플립플롭(134-m)으로부터 출력되는 제m 비트 신호(DEDC[m])는 듀티 에러 디지털 코드(DEDC)의 m번째 비트에 상응할 수 있다.
도 15는 도 14의 파인 타임-투-디지털 컨버터의 동작을 설명하기 위한 도면이다.
도 15에는 m이 16인 경우에 파인 타임-투-디지털 컨버터(132)의 동작이 예시적으로 도시된다.
도 15에 도시된 바와 같이, 펄스 생성기(131)로부터 생성되는 제3 펄스 신호(PS3)는 제1 지연 회로(133-1)의 상기 입력 신호로서 제공되므로, 제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m)은 제3 펄스 신호(PS3)를 제2 유닛 딜레이(UD2) 동안 순차적으로 지연시켜 제1 내지 제m 출력 신호들(OS3_1, OS3_2, .., OS3_m)을 생성할 수 있다.
상술한 바와 같이, 제1 내지 제m 플립플롭들(134-1, 134-2, ..., 134-m)은 제1 내지 제m 출력 신호들(OS3_1, OS3_2, .., OS3_m)의 상승 에지에 동기되어 제3 펄스 신호(PS3)를 래치하여 각각 제1 내지 제m 비트 신호들(DEDC[1], DEDC[2], ..., DEDC[m])을 생성할 수 있다.
따라서, 도 15에 도시된 바와 같이, 제1 내지 제8 출력 신호들(OS3_1, OS3_2, .., OS3_8)의 상승 에지에서 제3 펄스 신호(PS3)는 논리 하이 레벨을 가지므로, 제1 내지 제8 플립플롭들(134-1, 134-2, ..., 134-8)로부터 출력되는 제1 내지 제8 비트 신호들(DEDC[1], DEDC[2], ..., DEDC[8])은 논리 하이 레벨을 가질 수 있다. 반면에, 제9 내지 제16 출력 신호들(OS3_9, OS3_10, .., OS3_16)의 상승 에지에서 제3 펄스 신호(PS3)는 논리 로우 레벨을 가지므로, 제9 내지 제16 플립플롭들(134-9, 134-10, ..., 134-16)로부터 출력되는 제9 내지 제16 비트 신호들(DEDC[9], DEDC[10], ..., DEDC[16])은 논리 로우 레벨을 가질 수 있다.
따라서 파인 타임-투-디지털 컨버터(132)는 "1111111100000000"를 듀티 에러 디지털 코드(DEDC)로서 출력할 수 있다. 즉, 파인 타임-투-디지털 컨버터(132)로부터 생성되는 듀티 에러 디지털 코드(DEDC)에 포함되는 "1"의 개수는 제3 펄스 신호(PS3)의 길이에 비례할 수 있다.
이상, 도 14 및 15를 참조하여 파인 타임-투-디지털 컨버터(132)의 일 예에 대해 설명하였으나, 본 발명은 이에 한정되지 않고, 파인 타임-투-디지털 컨버터(132)는 제3 펄스 신호(PS3)의 길이를 디지털 값으로 변환할 수 있는 임의의 구조로 구현될 수 있다.
도 1 내지 15를 참조하여 상술한 바와 같이, 제1 디지털 코드 생성기(110)는 제1 유닛 딜레이(UD1)에 기초하여 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이 및 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 대해 각각 상기 타임-투-디지털 변환을 수행하여 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC)를 생성하고, 클럭 지연 회로(120)는 하이 디지털 코드(HDC) 및 로우 디지털 코드(LDC) 중에서 작은 값에 상응하는 제1 디지털 코드(DC1)에 상응하는 시간 동안 클럭 신호(CLK)를 지연시켜 지연 클럭 신호(D_CLK)를 생성할 수 있다. 따라서 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이는 클럭 신호(CLK)의 듀티 사이클 에러를 나타낼 수 있다. 제2 디지털 코드 생성기(130)는 제1 유닛 딜레이(UD1) 보다 작은 제2 유닛 딜레이(UD2)에 기초하여 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 대해 보다 정밀하게 타임-투-디지털 변환을 수행하여 듀티 에러 디지털 코드(DEDC)를 생성할 수 있다. 따라서 듀티 사이클 에러 검출 장치(100)로부터 생성되는 듀티 에러 디지털 코드(DEDC)는 클럭 신호(CLK)의 듀티 사이클 에러를 효과적으로 나타낼 수 있다.
도 16은 본 발명의 일 실시예에 따른 듀티 사이클 보정 장치를 나타내는 블록도이다.
도 16을 참조하면, 듀티 사이클 보정 장치(500)는 듀티 사이클 에러 검출 장치(100), 위상 정렬 회로(200) 및 클럭 합성 회로(300)를 포함한다.
듀티 사이클 에러 검출 장치(100)는 클럭 신호(CLK)를 수신하고, 클럭 신호(CLK)의 하이 레벨 구간 및 클럭 신호(CLK)의 로우 레벨 구간 중에서 긴 구간을 나타내는 싸인 신호(SS)를 생성한다. 또한, 듀티 사이클 에러 검출 장치(100)는 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드(DEDC)를 생성한다.
위상 정렬 회로(200)는 듀티 사이클 에러 검출 장치(100)로부터 제공되는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 클럭 신호(CLK)의 반전 신호에 상응하는 반전 클럭 신호 중의 하나를 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 클럭 신호(CLK) 및 상기 반전 클럭 신호 중의 다른 하나를 듀티 사이클 에러 검출 장치(100)로부터 제공되는 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)로서 출력한다.
클럭 합성 회로(300)는 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)에 기초하여 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 생성한다.
도 16에는 듀티 사이클 에러 검출 장치(100)는 위상 정렬 회로(200)에 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이와 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드(DEDC)를 제공하고, 위상 정렬 회로(200)는 클럭 신호(CLK) 및 상기 반전 클럭 신호 중의 상기 다른 하나를 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)로서 출력하는 것으로 설명하였으나, 실시예에 따라서, 듀티 사이클 에러 검출 장치(100)는 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 디지털 코드를 위상 정렬 회로(200)에 제공하고, 위상 정렬 회로(200)는 클럭 신호(CLK) 및 상기 반전 클럭 신호 중의 상기 다른 하나를 듀티 사이클 에러 검출 장치(100)로부터 제공되는 상기 디지털 코드에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)로서 출력할 수도 있다.
도 17은 도 16에 도시된 듀티 사이클 보정 장치의 일 예를 나타내는 블록도이다.
도 17을 참조하면, 듀티 사이클 보정 장치(500a)에 포함되는 듀티 사이클 에러 검출 장치(100)는 제1 디지털 코드 생성기(110), 클럭 지연 회로(120) 및 제2 디지털 코드 생성기(130)를 포함할 수 있다.
제1 디지털 코드 생성기(110)는 클럭 신호(CLK)를 수신하고, 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성할 수 있다.
일 실시예에 있어서, 제1 디지털 코드 생성기(110)는 제1 유닛 딜레이에 기초하여 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이에 대해 타임-투-디지털 변환을 수행하여 상기 하이 디지털 코드를 생성하고, 상기 제1 유닛 딜레이에 기초하여 클럭 신호(CLK)의 상기 로우 레벨 구간의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 로우 디지털 코드를 생성할 수 있다.
제1 디지털 코드 생성기(110)는 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 싸인 신호(SS)를 생성할 수 있다.
또한, 제1 디지털 코드 생성기(110)는 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드(DC1)로서 출력할 수 있다.
클럭 지연 회로(120)는 클럭 신호(CLK)를 제1 디지털 코드 생성기(110)로부터 제공되는 제1 디지털 코드(DC1)에 상응하는 시간 동안 지연시켜 지연 클럭 신호(D_CLK)를 생성할 수 있다.
일 실시예에 있어서, 클럭 지연 회로(120)는 상기 제1 유닛 딜레이에 기초하여 제1 디지털 코드(DC1)에 대해 디지털-투-타임 변환을 수행하여 생성되는 지연 시간 동안 클럭 신호(CLK)를 지연시켜 지연 클럭 신호(D_CLK)를 생성할 수 있다.
제2 디지털 코드 생성기(130)는 제1 디지털 코드 생성기(110)로부터 제공되는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 지연 클럭 신호(D_CLK)의 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 어느 구간이 상기 긴 구간에 상응하는지 여부를 판단하고, 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 듀티 에러 디지털 코드(DEDC)를 생성할 수 있다.
일 실시예에 있어서, 제2 디지털 코드 생성기(130)는 상기 제1 유닛 딜레이보다 작은 제2 유닛 딜레이에 기초하여 지연 클럭 신호(D_CLK)의 상기 긴 구간의 시작 시점으로부터 클럭 신호(CLK)의 상기 긴 구간의 종료 시점까지의 길이에 대해 타임-투-디지털 변환을 수행하여 듀티 에러 디지털 코드(DEDC)를 생성할 수 있다.
이 경우, 위상 정렬 회로(200)는 상기 제2 유닛 딜레이에 기초하여 듀티 에러 디지털 코드(DEDC)의 절반에 대해 디지털-투-타임 변환을 수행하여 생성되는 지연 시간 동안 클럭 신호(CLK) 및 상기 반전 클럭 신호 중의 상기 다른 하나를 지연시켜 제2 내부 클럭 신호(I_CLK2)를 생성할 수 있다.
일 실시예에 있어서, 도 17의 듀티 사이클 보정 장치(500a)에 포함되는 듀티 사이클 에러 검출 장치(100)는 도 1에 도시된 듀티 사이클 에러 검출 장치(100)와 동일할 수 있다.
도 18은 도 16의 듀티 사이클 보정 장치(500)에 포함되는 위상 정렬 회로(200)의 일 예를 나타내는 블록도이다.
도 18을 참조하면, 위상 정렬 회로(200)는 위상 분리기(210), 제1 경로 선택기(220), 클럭 지연 회로(230) 및 제2 경로 선택기(240)를 포함할 수 있다.
위상 분리기(210)는 클럭 신호(CLK)를 수신할 수 있다. 위상 분리기(210)는 클럭 신호(CLK)를 반전시켜 클럭 신호(CLK)의 반전 신호에 상응하는 반전 클럭 신호(CLKB)를 생성하고, 클럭 신호(CLK) 및 반전 클럭 신호(CLKB)를 서로 동기시켜 출력할 수 있다.
제1 경로 선택기(220)는 위상 분리기(210)로부터 클럭 신호(CLK) 및 반전 클럭 신호(CLKB)를 수신할 수 있다. 제1 경로 선택기(220)는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 반전 클럭 신호(CLKB) 중의 하나를 제1 출력 단자를 통해 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 클럭 신호(CLK) 및 반전 클럭 신호(CLKB)를 중의 다른 하나를 제2 출력 단자를 통해 제3 내부 클럭 신호(I_CLK3)로서 출력할 수 있다.
상술한 바와 같이, 듀티 사이클 에러 검출 장치(100)는 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 경우, 제1 논리 레벨을 갖는 싸인 신호(SS)를 생성하고, 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 경우, 제2 논리 레벨을 갖는 싸인 신호(SS)를 생성할 수 있다.
따라서 싸인 신호(SS)가 상기 제1 논리 레벨을 갖는 경우 제1 경로 선택기(220)는 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 것으로 판단할 수 있다. 이 경우, 제1 경로 선택기(220)는 반전 클럭 신호(CLKB)를 상기 제1 출력 단자를 통해 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 클럭 신호(CLK)를 상기 제2 출력 단자를 통해 제3 내부 클럭 신호(I_CLK3)로서 출력할 수 있다.
반면에, 싸인 신호(SS)가 상기 제2 논리 레벨을 갖는 경우 제1 경로 선택기(220)는 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 것으로 판단할 수 있다. 이 경우, 제1 경로 선택기(220)는 클럭 신호(CLK)를 상기 제1 출력 단자를 통해 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 반전 클럭 신호(CLKB)를 상기 제2 출력 단자를 통해 제3 내부 클럭 신호(I_CLK3)로서 출력할 수 있다.
클럭 지연 회로(230)는 제3 내부 클럭 신호(I_CLK3)를 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)를 생성할 수 있다.
일 실시예에 있어서, 클럭 지연 회로(230)는 제2 유닛 딜레이(UD2)에 기초하여 듀티 에러 디지털 코드(DEDC)의 절반에 대해 디지털-투-타임 변환을 수행하여 생성되는 지연 시간 동안 제3 내부 클럭 신호(I_CLK3)를 지연시켜 제2 내부 클럭 신호(I_CLK2)를 생성할 수 있다.
도 19는 도 18의 위상 정렬 회로(200)에 포함되는 클럭 지연 회로(230)의 일 예를 나타내는 블록도이다.
도 19를 참조하면, 클럭 지연 회로(230)는 제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2)) 및 지연 컨트롤러(232)를 포함할 수 있다.
클럭 지연 회로(230)는 제3 내부 클럭 신호(I_CLK3)를 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)를 생성하므로, 클럭 지연 회로(230)에 포함되는 제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2))의 개수는 듀티 에러 디지털 코드(DEDC)를 생성하는 제2 디지털 코드 생성기(130)의 파인 타임-투-디지털 컨버터(132)에 포함되는 제1 내지 제m 지연 회로들(133-1, 133-2, ..., 133-m)의 개수의 절반일 수 있다.
제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2))은 서로 직렬로 연결될 수 있다. 즉, 제t(t는 (m/2-1) 이하의 양의 정수) 지연 회로(231-t)의 출력 클럭 신호는 제(t+1) 지연 회로(231-(t+1))의 입력 클럭 신호로서 제공될 수 있다. 제3 내부 클럭 신호(I_CLK3)는 제1 지연 회로(231-1)의 상기 입력 클럭 신호로서 제공될 수 있다.
제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2)) 각각은 상기 입력 클럭 신호를 제2 유닛 딜레이(UD2) 동안 지연시켜 제1 내지 제(m/2) 출력 클럭 신호들(OC1, OC2, .., OC(m/2))로서 출력할 수 있다.
일 실시예에 있어서, 도 19에 도시된 바와 같이, 제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2)) 각각은 짝수개의 인버터들을 포함할 수 있다.
지연 컨트롤러(232)는 듀티 에러 디지털 코드(DEDC)의 절반에 기초하여 제1 내지 제(m/2) 지연 회로들(231-1, 231-2, ..., 231-(m/2))로부터 제공되는 제1 내지 제(m/2) 출력 클럭 신호들(OC1, OC2, .., OC(m/2)) 중의 하나를 제2 내부 클럭 신호(I_CLK2)로서 출력할 수 있다.
예를 들어, 듀티 에러 디지털 코드(DEDC)에 포함되는 "1"의 개수가 b인 경우, 지연 컨트롤러(232)는 제(b/2) 지연 회로(231-(b/2))로부터 제공되는 제(b/2) 출력 클럭 신호(OC(b/2))를 제2 내부 클럭 신호(I_CLK2)로서 출력할 수 있다.
다시 도 18을 참조하면, 제2 경로 선택기(240)는 제1 경로 선택기(220)로부터 제1 내부 클럭 신호(I_CLK1)를 수신하고, 클럭 지연 회로(230)로부터 제2 내부 클럭 신호(I_CLK2)를 수신할 수 있다. 제2 경로 선택기(240)는 싸인 신호(SS)의 논리 레벨에 기초하여 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2) 중의 하나를 제1 출력 단자를 통해 출력하고, 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2) 중의 다른 하나를 제2 출력 단자를 통해 출력할 수 있다.
상술한 바와 같이, 듀티 사이클 에러 검출 장치(100)는 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 경우, 제1 논리 레벨을 갖는 싸인 신호(SS)를 생성하고, 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 경우, 제2 논리 레벨을 갖는 싸인 신호(SS)를 생성할 수 있다.
따라서 싸인 신호(SS)가 상기 제1 논리 레벨을 갖는 경우 제2 경로 선택기(240)는 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 것으로 판단할 수 있다. 이 경우, 제2 경로 선택기(240)는 제2 내부 클럭 신호(I_CLK2)를 상기 제1 출력 단자를 통해 출력하고, 제1 내부 클럭 신호(I_CLK1)를 상기 제2 출력 단자를 통해 출력할 수 있다.
반면에, 싸인 신호(SS)가 상기 제2 논리 레벨을 갖는 경우 제2 경로 선택기(240)는 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 것으로 판단할 수 있다. 이 경우, 제2 경로 선택기(240)는 제1 내부 클럭 신호(I_CLK1)를 상기 제1 출력 단자를 통해 출력하고, 제2 내부 클럭 신호(I_CLK2)를 상기 제2 출력 단자를 통해 출력할 수 있다.
도 20 및 21은 도 18의 위상 정렬 회로(200)의 동작을 설명하기 위한 도면들이다.
도 20에 도시된 클럭 신호(CLK)는 도 12에 도시된 클럭 신호(CLK)와 동일하다.
따라서, 도 11 내지 15를 참조하여 상술한 바와 같이, 클럭 지연 회로(230)가 듀티 사이클 에러 검출 장치(100)로부터 수신하는 듀티 에러 디지털 코드(DEDC)는 "1111111100000000"일 수 있다.
제1 경로 선택기(220)는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 것으로 판단할 수 있다. 따라서, 도 20에 도시된 바와 같이, 제1 경로 선택기(220)는 반전 클럭 신호(CLKB)를 상기 제1 출력 단자를 통해 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 클럭 신호(CLK)를 상기 제2 출력 단자를 통해 제3 내부 클럭 신호(I_CLK3)로서 출력할 수 있다.
듀티 에러 디지털 코드(DEDC)에 포함되는 "1"의 개수는 8이므로, 듀티 에러 디지털 코드(DEDC)의 절반에 포함되는 "1"의 개수는 4일 수 있다. 따라서, 도 20에 도시된 바와 같이, 클럭 지연 회로(230)로부터 출력되는 제2 내부 클럭 신호(I_CLK2)는 제3 내부 클럭 신호(I_CLK3)가 제2 유닛 딜레이(UD2)의 4배 만큼 지연된 신호일 수 있다.
도 20에 도시된 바와 같이, 제1 내부 클럭 신호(I_CLK1)의 상승 에지와 제2 내부 클럭 신호(I_CLK2)의 상승 에지 사이의 시간 간격은 클럭 신호(CLK)의 주기(T)의 절반에 상응할 수 있다.
도 21에 도시된 클럭 신호(CLK)는 도 13에 도시된 클럭 신호(CLK)와 동일하다.
따라서, 도 11 내지 15를 참조하여 상술한 바와 같이, 클럭 지연 회로(230)가 듀티 사이클 에러 검출 장치(100)로부터 수신하는 듀티 에러 디지털 코드(DEDC)는 "1111111100000000"일 수 있다.
제1 경로 선택기(220)는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 것으로 판단할 수 있다. 따라서, 도 21에 도시된 바와 같이, 제1 경로 선택기(220)는 클럭 신호(CLK)를 상기 제1 출력 단자를 통해 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 반전 클럭 신호(CLKB)를 상기 제2 출력 단자를 통해 제3 내부 클럭 신호(I_CLK3)로서 출력할 수 있다.
듀티 에러 디지털 코드(DEDC)에 포함되는 "1"의 개수는 8이므로, 듀티 에러 디지털 코드(DEDC)의 절반에 포함되는 "1"의 개수는 4일 수 있다. 따라서, 도 21에 도시된 바와 같이, 클럭 지연 회로(230)로부터 출력되는 제2 내부 클럭 신호(I_CLK2)는 제3 내부 클럭 신호(I_CLK3)가 제2 유닛 딜레이(UD2)의 4배 만큼 지연된 신호일 수 있다.
도 21에 도시된 바와 같이, 제1 내부 클럭 신호(I_CLK1)의 상승 에지와 제2 내부 클럭 신호(I_CLK2)의 상승 에지 사이의 시간은 클럭 신호(CLK)의 주기(T)의 절반에 상응할 수 있다.
도 22는 도 16의 듀티 사이클 보정 장치에 포함되는 클럭 합성 회로의 일 예를 나타내는 블록도이다.
도 22를 참조하면, 클럭 합성 회로(300a)는 멀티플렉서(310) 및 플립플롭(320)을 포함할 수 있다.
멀티플렉서(310)는 제2 경로 선택기(240)의 상기 제1 출력 단자 및 상기 제2 출력 단자로부터 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)를 수신할 수 있다.
상술한 바와 같이, 클럭 신호(CLK)의 상기 하이 레벨 구간이 클럭 신호(CLK)의 상기 로우 레벨 구간 보다 긴 경우, 멀티플렉서(310)는 제2 경로 선택기(240)의 상기 제1 출력 단자로부터 제2 내부 클럭 신호(I_CLK2)를 수신하고 제2 경로 선택기(240)의 상기 제2 출력 단자로부터 제1 내부 클럭 신호(I_CLK1)를 수신할 수 있다. 반면에, 클럭 신호(CLK)의 상기 로우 레벨 구간이 클럭 신호(CLK)의 상기 하이 레벨 구간 보다 긴 경우, 멀티플렉서(310)는 제2 경로 선택기(240)의 상기 제1 출력 단자로부터 제1 내부 클럭 신호(I_CLK1)를 수신하고 제2 경로 선택기(240)의 상기 제2 출력 단자로부터 제2 내부 클럭 신호(I_CLK2)를 수신할 수 있다.
멀티플렉서(310)는 플립플롭(320)으로부터 제공되는 클럭 선택 신호(CSS)에 응답하여 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2) 중의 하나를 제어 클럭 신호(CON_CLK)로서 출력할 수 있다. 예를 들어, 클럭 선택 신호(CSS)가 논리 하이 레벨을 갖는 경우, 멀티플렉서(310)는 제2 경로 선택기(240)의 상기 제1 출력 단자로부터 제공되는 신호를 제어 클럭 신호(CON_CLK)로서 출력하고, 클럭 선택 신호(CSS)가 논리 로우 레벨을 갖는 경우, 멀티플렉서(310)는 제2 경로 선택기(240)의 상기 제2 출력 단자로부터 제공되는 신호를 제어 클럭 신호(CON_CLK)로서 출력할 수 있다.
플립플롭(320)은 제어 클럭 신호(CON_CLK)의 상승 에지에 동기되어 클럭 선택 신호(CSS)를 래치하여 보정 클럭 신호(C_CLK)로서 출력하고, 보정 클럭 신호(C_CLK)의 반전 신호를 클럭 선택 신호(CSS)로서 출력할 수 있다. 즉, 제어 클럭 신호(CON_CLK)의 상승 에지마다 클럭 선택 신호(CSS)가 토글링되므로, 멀티플렉서(310)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)를 교번하여 제어 클럭 신호(CON_CLK)로서 출력할 수 있다. 따라서 플립플롭(320)으로부터 출력되는 보정 클럭 신호(C_CLK)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 토글링되는 신호일 수 있다.
상술한 바와 같이, 제1 내부 클럭 신호(I_CLK1)의 상승 에지와 제2 내부 클럭 신호(I_CLK2)의 상승 에지 사이의 시간 간격은 클럭 신호(CLK)의 주기(T)의 절반에 상응하므로, 클럭 합성 회로(300a)로부터 출력되는 보정 클럭 신호(C_CLK)는 클럭 신호(CLK)와 동일한 주기를 가지면서 듀티비(duty ratio)가 1:1인 신호일 수 있다.
도 23 및 24는 도 22의 클럭 합성 회로(300a)의 동작을 설명하기 위한 도면들이다.
도 23에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)는 도 20에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)와 동일하다.
도 22를 참조하여 상술한 바와 같이, 멀티플렉서(310)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)를 교번하여 제어 클럭 신호(CON_CLK)로서 출력하고, 플립플롭(320)은 제어 클럭 신호(CON_CLK)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 출력할 수 있다.
따라서, 도 23에 도시된 바와 같이, 클럭 합성 회로(300a)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 생성할 수 있다. 즉, 클럭 합성 회로(300a)로부터 출력되는 보정 클럭 신호(C_CLK)는 클럭 신호(CLK)와 동일한 주기를 가지면서 듀티비가 1:1인 신호일 수 있다.
도 24에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)는 도 21에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)와 동일하다.
도 22를 참조하여 상술한 바와 같이, 멀티플렉서(310)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)를 교번하여 제어 클럭 신호(CON_CLK)로서 출력하고, 플립플롭(320)은 제어 클럭 신호(CON_CLK)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 출력할 수 있다.
따라서, 도 24에 도시된 바와 같이, 클럭 합성 회로(300a)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 생성할 수 있다. 즉, 클럭 합성 회로(300a)로부터 출력되는 보정 클럭 신호(C_CLK)는 클럭 신호(CLK)와 동일한 주파수를 가지면서 듀티비가 1:1인 신호일 수 있다.
도 25는 도 16의 듀티 사이클 보정 장치에 포함되는 클럭 합성 회로의 다른 예를 나타내는 블록도이다.
도 25를 참조하면, 클럭 합성 회로(300b)는 제1 주파수 분주기(frequency divider)(330), 제2 주파수 분주기(340) 및 배타적 논리합(XOR) 게이트(350)를 포함할 수 있다.
제1 주파수 분주기(330)는 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2) 중의 하나의 상승 에지에 토글링되는 제1 분주 클럭 신호(DV_CLK1)를 생성할 수 있다. 따라서 제1 분주 클럭 신호(DV_CLK1)의 주기는 클럭 신호(CLK)의 주기(T)의 두 배에 상응할 수 있다.
제2 주파수 분주기(340)는 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2) 중의 다른 하나의 상승 에지에 토글링되는 제2 분주 클럭 신호(DV_CLK2)를 생성할 수 있다. 따라서 제2 분주 클럭 신호(DV_CLK2)의 주기는 클럭 신호(CLK)의 주기(T)의 두 배에 상응할 수 있다.
따라서 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)는 서로 90도의 위상차를 가질 수 있다.
배타적 논리합 게이트(350)는 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)에 대해 배타적 논리합(XOR) 연산을 수행하여 보정 클럭 신호(C_CLK)를 생성할 수 있다.
도 26 및 27은 도 25의 클럭 합성 회로의 동작을 설명하기 위한 도면들이다.
도 26에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)는 도 20에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)와 동일하다.
도 25를 참조하여 상술한 바와 같이, 제1 주파수 분주기(330)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지에 토글링되는 제1 분주 클럭 신호(DV_CLK1)를 생성하고, 제2 주파수 분주기(340)는 제2 내부 클럭 신호(I_CLK2)의 상승 에지에 토글링되는 제2 분주 클럭 신호(DV_CLK2)를 생성할 수 있다. 따라서, 도 26에 도시된 바와 같이, 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)는 클럭 신호(CLK)의 주기(T)의 두 배에 상응하는 주기를 가지면서 서로 90도의 위상차를 갖는 신호일 수 있다.
배타적 논리합 게이트(350)는 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)에 대해 배타적 논리합(XOR) 연산을 수행하여 보정 클럭 신호(C_CLK)를 생성하므로, 도 27에 도시된 바와 같이, 배타적 논리합 게이트(350)로부터 출력되는 보정 클럭 신호(C_CLK)는 클럭 신호(CLK)와 동일한 주기를 가지면서 듀티비가 1:1인 신호일 수 있다.
도 27에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)는 도 21에 도시된 클럭 신호(CLK), 반전 클럭 신호(CLKB), 제1 내부 클럭 신호(I_CLK1) 및 제2 내부 클럭 신호(I_CLK2)와 동일하다.
도 25를 참조하여 상술한 바와 같이, 제1 주파수 분주기(330)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지에 토글링되는 제1 분주 클럭 신호(DV_CLK1)를 생성하고, 제2 주파수 분주기(340)는 제2 내부 클럭 신호(I_CLK2)의 상승 에지에 토글링되는 제2 분주 클럭 신호(DV_CLK2)를 생성할 수 있다. 따라서, 도 27에 도시된 바와 같이, 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)는 클럭 신호(CLK)의 주기(T)의 두 배에 상응하는 주기를 가지면서 서로 90도의 위상차를 갖는 신호일 수 있다.
배타적 논리합 게이트(350)는 제1 분주 클럭 신호(DV_CLK1) 및 제2 분주 클럭 신호(DV_CLK2)에 대해 배타적 논리합(XOR) 연산을 수행하여 보정 클럭 신호(C_CLK)를 생성하므로, 도 27에 도시된 바와 같이, 배타적 논리합 게이트(350)로부터 출력되는 보정 클럭 신호(C_CLK)는 클럭 신호(CLK)와 동일한 주기를 가지면서 듀티비가 1:1인 신호일 수 있다.
도 1 내지 27을 참조하여 상술한 바와 같이, 듀티 사이클 에러 검출 장치(100)는 클럭 신호(CLK)의 상기 하이 레벨 구간 및 클럭 신호(CLK)의 상기 로우 레벨 구간 중에서 긴 구간을 나타내는 싸인 신호(SS) 및 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드(DEDC)를 생성하고, 위상 정렬 회로(200)는 싸인 신호(SS)의 논리 레벨에 기초하여 클럭 신호(CLK) 및 반전 클럭 신호(CLKB) 중의 하나를 제1 내부 클럭 신호(I_CLK1)로서 출력하고, 클럭 신호(CLK) 및 반전 클럭 신호(CLKB) 중의 다른 하나를 듀티 에러 디지털 코드(DEDC)의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호(I_CLK2)로서 출력하고, 클럭 합성 회로(300)는 제1 내부 클럭 신호(I_CLK1)의 상승 에지 및 제2 내부 클럭 신호(I_CLK2)의 상승 에지마다 토글링되는 보정 클럭 신호(C_CLK)를 생성한다.
이와 같이, 위상 정렬 회로(200)는 클럭 신호(CLK)를 한 주기 동안 지연시킬 필요 없이 클럭 신호(CLK)의 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이의 절반에 상응하는 시간 동안만 클럭 신호(CLK) 또는 반전 클럭 신호(CLKB)를 지연시킴으로써 제2 내부 클럭 신호(I_CLK2)를 생성하므로, 본 발명에 따른 듀티 사이클 보정 장치(500)는 클럭 신호(CLK)의 듀티 사이클 보정의 해상도(resolution)를 향상시키면서도 적은 면적으로 구현될 수 있다.
도 28은 도 16에 도시된 듀티 사이클 보정 장치(500)의 다른 예를 나타내는 블록도이다.
도 28을 참조하면, 도 28의 듀티 사이클 보정 장치(500b)는 도 17의 듀티 사이클 보정 장치(500a)에서 멀티플렉서(410)를 더 포함할 수 있다.
이 경우, 듀티 사이클 에러 검출 장치(100)에 포함되는 제1 디지털 코드 생성기(110)는 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)를 비교하여 바이패스 신호(BP)를 생성할 수 있다.
예를 들어, 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)가 서로 다른 경우, 제1 디지털 코드 생성기(110)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하는 것으로 판단하고 바이패스 신호(BP)를 비활성화시킬 수 있다. 반면에, 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)가 동일한 경우, 제1 디지털 코드 생성기(110)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하지 않는 것으로 판단하고 바이패스 신호(BP)를 활성화시킬 수 있다.
멀티플렉서(410)는 클럭 신호(CLK) 및 보정 클럭 신호(C_CLK)를 수신할 수 있다. 멀티플렉서(410)는 바이패스 신호(BP)가 비활성화되는 경우 보정 클럭 신호(C_CLK)를 출력 클럭 신호(O_CLK)로서 출력하고, 바이패스 신호(BP)가 활성화되는 경우 클럭 신호(CLK)를 출력 클럭 신호(O_CLK)로서 출력할 수 있다.
따라서 듀티 사이클 보정 장치(500b)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하는 것으로 판단되는 경우 상기 듀티 사이클 에러가 보정된 보정 클럭 신호(C_CLK)를 출력 클럭 신호(O_CLK)로서 출력하고, 클럭 신호(CLK)에 듀티 사이클 에러가 존재하지 않는 것으로 판단되는 경우 클럭 신호(CLK)를 그대로 출력 클럭 신호(O_CLK)로서 출력할 수 있다.
도 29는 도 16에 도시된 듀티 사이클 보정 장치의 또 다른 예를 나타내는 블록도이다.
도 29를 참조하면, 도 29의 듀티 사이클 보정 장치(500c)는 도 17의 듀티 사이클 보정 장치(500a)에서 멀티플렉서(410) 및 논리합(OR) 게이트(420)를 더 포함할 수 있다.
이 경우, 듀티 사이클 에러 검출 장치(100)에 포함되는 제1 디지털 코드 생성기(110)는 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)를 비교하여 제1 제어 신호(CON1)를 생성할 수 있다.
예를 들어, 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)가 서로 다른 경우, 제1 디지털 코드 생성기(110)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하는 것으로 판단하고 제1 제어 신호(CON1)를 비활성화시킬 수 있다. 반면에, 하이 디지털 코드(HDC)와 로우 디지털 코드(LDC)가 동일한 경우, 제1 디지털 코드 생성기(110)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하지 않는 것으로 판단하고 제1 제어 신호(CON1)를 활성화시킬 수 있다.
듀티 사이클 에러 검출 장치(100)에 포함되는 제2 디지털 코드 생성기(130)는 듀티 에러 디지털 코드(DEDC)와 문턱 코드를 비교하여 제2 제어 신호(CON2)를 생성할 수 있다. 상기 문턱 코드는 제2 디지털 코드 생성기(130)에 미리 저장될 수 있다.
예를 들어, 듀티 에러 디지털 코드(DEDC)가 상기 문턱 코드 보다 크거나 같은 경우, 제2 디지털 코드 생성기(130)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하는 것으로 판단하고 제2 제어 신호(CON2)를 비활성화시킬 수 있다. 반면에, 듀티 에러 디지털 코드(DEDC)가 상기 문턱 코드 보다 작은 경우, 제2 디지털 코드 생성기(130)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하지 않는 것으로 판단하고 제2 제어 신호(CON2)를 활성화시킬 수 있다.
논리합 게이트(420)는 제1 제어 신호(CON1) 및 제2 제어 신호(CON2)에 대해 논리합(OR) 연산을 수행하여 바이패스 신호(BP)를 생성할 수 있다.
멀티플렉서(410)는 클럭 신호(CLK) 및 보정 클럭 신호(C_CLK)를 수신할 수 있다. 멀티플렉서(410)는 바이패스 신호(BP)가 비활성화되는 경우 보정 클럭 신호(C_CLK)를 출력 클럭 신호(O_CLK)로서 출력하고, 바이패스 신호(BP)가 활성화되는 경우 클럭 신호(CLK)를 출력 클럭 신호(O_CLK)로서 출력할 수 있다.
따라서 듀티 사이클 보정 장치(500c)는 클럭 신호(CLK)에 듀티 사이클 에러가 존재하는 것으로 판단되는 경우 상기 듀티 사이클 에러가 보정된 보정 클럭 신호(C_CLK)를 출력 클럭 신호(O_CLK)로서 출력하고, 클럭 신호(CLK)에 듀티 사이클 에러가 존재하지 않는 것으로 판단되는 경우 클럭 신호(CLK)를 그대로 출력 클럭 신호(O_CLK)로서 출력할 수 있다.
도 30은 본 발명의 일 실시예에 따른 전자 장치를 나타내는 블록도이다.
도 30을 참조하면, 전자 장치(600)는 클럭 생성기(610), 듀티 사이클 보정 장치(500), 프로세서(620) 및 메모리 장치(630)를 포함한다.
클럭 생성기(610)는 전자 장치(600)의 동작에 필요한 클럭 신호(CLK)를 생성한다.
듀티 사이클 보정 장치(500)는 클럭 생성기(610)로부터 수신되는 클럭 신호(CLK)의 듀티 사이클 에러를 보정하여 보정 클럭 신호(C_CLK)를 생성한다. 전자 장치(600)에 포함되는 듀티 사이클 보정 장치(500)는 도 16의 듀티 사이클 보정 장치(500)로 구현될 수 있다. 도 16의 듀티 사이클 보정 장치(500)의 구성 및 동작에 대해서는 도 1 내지 29를 참조하여 상세히 설명하였으므로, 여기서는 전자 장치(600)에 포함되는 듀티 사이클 보정 장치(500)에 관한 상세한 설명은 생략한다.
프로세서(620)는 듀티 사이클 보정 장치(500)로부터 제공되는 보정 클럭 신호(C_CLK)에 기초하여 메모리 장치(630)에 데이터를 기입하고 메모리 장치(630)로부터 상기 데이터를 독출함으로써 특정 계산들 또는 태스크(task)들을 실행하는 것과 같이 다양한 컴퓨팅 기능들을 수행할 수 있다. 프로세서(620)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus)를 통하여 메모리 장치(630)에 연결되어 통신을 수행할 수 있다. 실시예에 따라서, 프로세서(620)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
메모리 장치(630)는 듀티 사이클 보정 장치(500)로부터 제공되는 보정 클럭 신호(C_CLK)에 동기되어 동작한다. 메모리 장치(630)는 전자 장치(600)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, 메모리 장치(630)는 DDR(Double Data Rate) 메모리 장치일 수 있다. 이 경우, 메모리 장치(630)는 듀티 사이클 보정 장치(500)로부터 제공되는 보정 클럭 신호(C_CLK)의 상승 에지 및 하강 에지마다 프로세서(620)와 데이터를 송수신할 수 있다. 따라서 보정 클럭 신호(C_CLK)의 한 주기 내에서 논리 로우 레벨 구간의 길이와 논리 하이 레벨 구간의 길이가 상이하여 듀티 사이클 에러가 발생하는 경우 메모리 장치(630)와 프로세서(620) 사이에 데이터가 송수신되는 간격이 동일하게 유지되지 않아 메모리 장치(630)와 프로세서(620)간의 데이터 송수신에 문제가 발생할 수 있다. 그러나 듀티 사이클 보정 장치(500)는 클럭 생성기(610)로부터 수신되는 클럭 신호(CLK)의 듀티 사이클 에러를 보정하여 보정 클럭 신호(C_CLK)를 생성함으로써 상기 문제의 발생을 방지할 수 있다.
전자 장치(600)는 저장 장치(640), 디스플레이 장치(650), 사용자 인터페이스(660) 및 입출력 장치(670)를 더 포함할 수 있다. 또한, 도 30에는 도시되지 않았지만, 전자 장치(600)는 메모리 카드, USB 장치 등과 통신하거나 다른 전자 기기들과 통신할 수 있는 여러 포트(port)들을 더 포함할 수 있다.
저장 장치(640)는 멀티미디어 데이터 등을 저장할 수 있다. 저장 장치(640)는 플래시 메모리 장치(flash memory device), 솔리드 스테이트 드라이브(Solid State Drive; SSD), 하드 디스크 드라이브(Hard Disk Drive; HDD), 씨디롬(CD-ROM) 및 모든 형태의 비휘발성 메모리 장치 등을 포함할 수 있다.
디스플레이 장치(650)는 저장 장치(640)에 저장된 상기 멀티미디어 데이터를 표시할 수 있다. 디스플레이 장치(650)는 유기 발광 표시 장치(Organic Light Emitting Display Device), LCD 장치(Liquid Crystal Display Device) 등을 포함할 수 있다.
사용자 인터페이스(660)는 사용자가 전자 장치(600)를 동작시키는데 필요한 다양한 수단을 포함할 수 있다. 입출력 장치(670)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터 등과 같은 출력 수단을 포함할 수 있다.
전자 장치(600)는 클럭 신호에 기초하여 동작하는 임의의 전자 장치일 수 있다. 예를 들어, 전자 장치(600)는 스마트폰, 휴대폰, PDA(Personal Digital Assistant), 랩톱 컴퓨터(laptop computre), 셋톱박스, 디지털 카메라, 모바일 게임기, 노트북, 텔레비전 등을 포함할 수 있다.
상술한 바와 같이, 본 발명의 바람직한 실시예를 참조하여 설명하였지만 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 듀티 사이클 에러 검출 장치
110: 제1 디지털 코드 생성기
120: 클럭 지연 회로
130: 제2 디지털 코드 생성기
200: 위상 정렬 회로
210: 위상 분리기
220: 제1 경로 선택기
230: 클럭 지연 회로
240: 제2 경로 선택기
300: 클럭 합성 회로
600: 전자 장치

Claims (10)

  1. 클럭 신호의 하이 레벨 구간의 길이 및 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 싸인(sign) 신호를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드로서 출력하는 제1 디지털 코드 생성기;
    상기 클럭 신호를 상기 제1 디지털 코드에 상응하는 시간 동안 지연시켜 지연 클럭 신호를 생성하는 클럭 지연 회로; 및
    상기 싸인 신호의 논리 레벨에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 듀티 에러 디지털 코드를 생성하는 제2 디지털 코드 생성기를 포함하는 듀티 사이클 에러(duty cycle error) 검출 장치.
  2. 제1 항에 있어서, 상기 제1 디지털 코드 생성기는 제1 유닛 딜레이에 기초하여 상기 클럭 신호의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 대해 각각 타임-투-디지털(time-to-digital) 변환을 수행하여 상기 하이 디지털 코드 및 상기 로우 디지털 코드를 생성하고,
    상기 제2 디지털 코드 생성기는 상기 제1 유닛 딜레이보다 작은 제2 유닛 딜레이에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 대해 타임-투-디지털 변환을 수행하여 상기 듀티 에러 디지털 코드를 생성하는 듀티 사이클 에러 검출 장치.
  3. 제2 항에 있어서, 상기 클럭 지연 회로는 상기 제1 유닛 딜레이에 기초하여 상기 제1 디지털 코드에 대해 디지털-투-타임(digital-to-time) 변환을 수행하여 생성되는 지연 시간 동안 상기 클럭 신호를 지연시켜 상기 지연 클럭 신호를 생성하는 듀티 사이클 에러 검출 장치.
  4. 제2 항에 있어서, 상기 제1 디지털 코드 생성기는,
    상기 클럭 신호의 상기 하이 레벨 구간의 길이에 상응하는 길이를 갖는 제1 펄스 신호를 생성하는 제1 펄스 생성기;
    상기 클럭 신호의 상기 로우 레벨 구간의 길이에 상응하는 길이를 갖는 제2 펄스 신호를 생성하는 제2 펄스 생성기;
    상기 제1 유닛 딜레이에 기초하여 상기 제1 펄스 신호의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 하이 디지털 코드를 생성하는 제1 코스(coarse) 타임-투-디지털 컨버터;
    상기 제1 유닛 딜레이에 기초하여 상기 제2 펄스 신호의 길이에 대해 상기 타임-투-디지털 변환을 수행하여 상기 로우 디지털 코드를 생성하는 제2 코스 타임-투-디지털 컨버터; 및
    상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 상기 긴 구간 및 상기 짧은 구간을 결정하고, 상기 긴 구간에 상응하는 논리 레벨을 갖는 상기 싸인 신호를 출력하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 상기 제1 디지털 코드로서 출력하는 코스 컨트롤러를 포함하는 듀티 사이클 에러 검출 장치.
  5. 클럭 신호의 하이 레벨 구간 및 로우 레벨 구간 중에서 긴 구간을 나타내는 싸인(sign) 신호 및 상기 하이 레벨 구간의 길이와 상기 로우 레벨 구간의 길이의 차이에 상응하는 듀티 에러 디지털 코드를 생성하는 듀티 사이클 에러 검출 장치;
    상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호 및 상기 클럭 신호의 반전 신호에 상응하는 반전 클럭 신호 중의 하나를 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호 및 상기 반전 클럭 신호 중의 다른 하나를 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간 동안 지연시켜 제2 내부 클럭 신호로서 출력하는 위상 정렬 회로; 및
    상기 제1 내부 클럭 신호의 상승 에지 및 상기 제2 내부 클럭 신호의 상승 에지마다 토글링되는 보정 클럭 신호를 생성하는 클럭 합성 회로를 포함하는 듀티 사이클 보정 장치.
  6. 제5 항에 있어서, 상기 듀티 사이클 에러 검출 장치는,
    상기 클럭 신호의 상기 하이 레벨 구간의 길이 및 상기 로우 레벨 구간의 길이에 각각 상응하는 하이 디지털 코드 및 로우 디지털 코드를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드에 기초하여 상기 하이 레벨 구간 및 상기 로우 레벨 구간 중에서 긴 구간 및 짧은 구간을 결정하고, 상기 긴 구간을 나타내는 상기 싸인 신호를 생성하고, 상기 하이 디지털 코드 및 상기 로우 디지털 코드 중에서 상기 짧은 구간의 길이에 상응하는 디지털 코드를 제1 디지털 코드로서 출력하는 제1 디지털 코드 생성기;
    상기 클럭 신호를 상기 제1 디지털 코드에 상응하는 시간 동안 지연시켜 지연 클럭 신호를 생성하는 클럭 지연 회로; 및
    상기 싸인 신호의 논리 레벨에 기초하여 상기 지연 클럭 신호의 상기 긴 구간의 시작 시점으로부터 상기 클럭 신호의 상기 긴 구간의 종료 시점까지의 길이에 상응하는 상기 듀티 에러 디지털 코드를 생성하는 제2 디지털 코드 생성기를 포함하는 듀티 사이클 보정 장치.
  7. 제5 항에 있어서, 상기 위상 정렬 회로는,
    상기 클럭 신호를 수신하고, 상기 클럭 신호 및 상기 클럭 신호와 동기되는 상기 반전 클럭 신호를 출력하는 위상 분리기;
    상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호 및 상기 반전 클럭 신호 중의 하나를 상기 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호 및 상기 반전 클럭 신호 중의 다른 하나를 제3 내부 클럭 신호로서 출력하는 제1 경로 선택기;
    상기 제3 내부 클럭 신호를 상기 듀티 에러 디지털 코드의 절반에 상응하는 시간 동안 지연시켜 상기 제2 내부 클럭 신호를 생성하는 클럭 지연 회로; 및
    상기 싸인 신호의 논리 레벨에 기초하여 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나를 제1 출력 단자를 통해 출력하고, 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 다른 하나를 제2 출력 단자를 통해 출력하는 제2 경로 선택기를 포함하는 듀티 사이클 보정 장치.
  8. 제7 항에 있어서, 상기 제1 경로 선택기는,
    상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호의 상기 하이 레벨 구간이 상기 클럭 신호의 상기 로우 레벨 구간 보다 긴 것으로 판단되는 경우, 상기 반전 클럭 신호를 상기 제1 내부 클럭 신호로서 출력하고, 상기 클럭 신호를 상기 제3 내부 클럭 신호로서 출력하고,
    상기 싸인 신호의 논리 레벨에 기초하여 상기 클럭 신호의 상기 로우 레벨 구간이 상기 클럭 신호의 상기 하이 레벨 구간 보다 긴 것으로 판단되는 경우, 상기 클럭 신호를 상기 제1 내부 클럭 신호로서 출력하고, 상기 반전 클럭 신호를 상기 제3 내부 클럭 신호로서 출력하는 듀티 사이클 보정 장치.
  9. 제5 항에 있어서, 상기 클럭 합성 회로는,
    클럭 선택 신호에 응답하여 상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나를 제어 클럭 신호로서 출력하는 멀티플렉서; 및
    상기 제어 클럭 신호의 상승 에지에 동기되어 상기 클럭 선택 신호를 래치하여 상기 보정 클럭 신호로서 출력하고, 상기 보정 클럭 신호의 반전 신호를 상기 클럭 선택 신호로서 출력하는 플립플롭을 포함하는 듀티 사이클 보정 장치.
  10. 제5 항에 있어서, 상기 클럭 합성 회로는,
    상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 하나의 상승 에지에 토글링되는 제1 분주 클럭 신호를 생성하는 제1 주파수 분주기;
    상기 제1 내부 클럭 신호 및 상기 제2 내부 클럭 신호 중의 다른 하나의 상승 에지에 토글링되는 제2 분주 클럭 신호를 생성하는 제2 주파수 분주기; 및
    상기 제1 분주 클럭 신호 및 상기 제2 분주 클럭 신호에 대해 배타적 논리합(XOR) 연산을 수행하여 상기 보정 클럭 신호를 생성하는 배타적 논리합 게이트를 포함하는 듀티 사이클 보정 장치.
KR1020140136437A 2014-10-10 2014-10-10 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치 KR20160042496A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140136437A KR20160042496A (ko) 2014-10-10 2014-10-10 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치
US14/699,290 US9501041B2 (en) 2014-10-10 2015-04-29 Duty cycle error detection device and duty cycle correction device having the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140136437A KR20160042496A (ko) 2014-10-10 2014-10-10 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치

Publications (1)

Publication Number Publication Date
KR20160042496A true KR20160042496A (ko) 2016-04-20

Family

ID=55656160

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140136437A KR20160042496A (ko) 2014-10-10 2014-10-10 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치

Country Status (2)

Country Link
US (1) US9501041B2 (ko)
KR (1) KR20160042496A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10727826B2 (en) 2018-08-14 2020-07-28 Samsung Electronics Co., Ltd. Delay-locked loop circuit, semiconductor memory device, and methods of operating delay-locked loop circuit
US10756847B2 (en) 2016-12-22 2020-08-25 Samsung Electronics Co., Ltd. Electronic device and method for detecting error thereof

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102653891B1 (ko) * 2016-11-30 2024-04-02 삼성전자주식회사 지연 클록 신호의 위상을 보간하기 위한 위상 보간기 및 이를 포함하고, 위상이 보간된 클록 신호를 이용하여 데이터 샘플링을 수행하는 장치
KR102540232B1 (ko) 2017-12-21 2023-06-02 삼성전자주식회사 디지털 측정 회로 및 이를 이용한 메모리 시스템
US10965442B2 (en) * 2018-10-02 2021-03-30 Qualcomm Incorporated Low-power, low-latency time-to-digital-converter-based serial link
US10622982B1 (en) * 2019-01-10 2020-04-14 Western Digital Technologies, Inc. Measurement, calibration and tuning of memory bus duty cycle
US10958257B1 (en) * 2020-04-28 2021-03-23 Taiwan Semiconductor Manufacturing Company Limited System and method for adjusting duty cycle of a signal
KR20220021505A (ko) * 2020-08-14 2022-02-22 삼성전자주식회사 듀티 조절 회로, 이를 포함하는 지연 동기 루프 회로 및 반도체 메모리 장치

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227920B2 (en) 2001-06-26 2007-06-05 Nokia Corporation Circuit and method for correcting clock duty cycle
KR100477808B1 (ko) 2002-05-21 2005-03-21 주식회사 하이닉스반도체 듀티 사이클 교정이 가능한 디지털 디엘엘 장치 및 듀티사이클 교정 방법
US7221724B2 (en) 2002-10-10 2007-05-22 Bitzmo, Inc. Precision timing generation
KR100515071B1 (ko) 2003-04-29 2005-09-16 주식회사 하이닉스반도체 디엘엘 장치
KR100532498B1 (ko) * 2004-01-28 2005-11-30 삼성전자주식회사 오실레이터와 카운터를 이용하는 지연 동기 회로 및 클럭동기 방법
KR20070046341A (ko) 2005-10-31 2007-05-03 주식회사 하이닉스반도체 듀티 교정 회로
KR100756136B1 (ko) 2006-03-23 2007-09-05 엘지전자 주식회사 광대역 주파수 동작범위를 갖는 지연고정루프 회로 및 그위상고정방법
KR100879593B1 (ko) 2007-02-28 2009-01-21 엠텍비젼 주식회사 위상 분리기를 이용한 지연 동기 회로 및 이를 이용한 지연동기 방법
KR100897254B1 (ko) 2007-04-12 2009-05-14 주식회사 하이닉스반도체 듀티 사이클 보정 회로 및 방법
KR100962026B1 (ko) 2008-11-12 2010-06-08 주식회사 하이닉스반도체 듀티 사이클 보정 장치 및 이를 포함하는 반도체 집적 회로
US7940103B2 (en) 2009-03-09 2011-05-10 Micron Technology, Inc. Duty cycle correction systems and methods

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10756847B2 (en) 2016-12-22 2020-08-25 Samsung Electronics Co., Ltd. Electronic device and method for detecting error thereof
US10727826B2 (en) 2018-08-14 2020-07-28 Samsung Electronics Co., Ltd. Delay-locked loop circuit, semiconductor memory device, and methods of operating delay-locked loop circuit

Also Published As

Publication number Publication date
US9501041B2 (en) 2016-11-22
US20160105165A1 (en) 2016-04-14

Similar Documents

Publication Publication Date Title
KR20160042496A (ko) 듀티 사이클 에러 검출 장치 및 이를 포함하는 듀티 사이클 보정 장치
KR102240275B1 (ko) 지연 고정 루프 및 이를 포함하는 메모리 장치
JP4806631B2 (ja) タイミング発生器および半導体試験装置
US20170270984A1 (en) Data Reading Circuit
KR20160017479A (ko) 클럭 스위치 장치 및 이를 포함하는 시스템-온-칩
US6917660B2 (en) Adaptive de-skew clock generation
US9154291B2 (en) Differential signal skew adjustment method and transmission circuit
JP3604323B2 (ja) クロック切替回路
US10333507B2 (en) Serializer device
US9160520B1 (en) Serializer and serializing apparatus using the same
CN115242224A (zh) 一种多时钟无毛刺切换电路及切换方法
JP5739727B2 (ja) クロック発生回路
US9374098B2 (en) Transmitter serializer latency trim
JP5157461B2 (ja) 分周回路及び分周方法
US20090033385A1 (en) Glitch Reduced Delay Lock Loop Circuits and Methods for Using Such
JP2010061779A (ja) 半導体メモリ装置のドメインクロシング回路
US8729943B2 (en) Phase interpolating apparatus and method
US8258838B2 (en) Delay locked loop for expanding a delay range
US9484902B2 (en) Delay circuit
JP2013070281A (ja) Dll回路、逓倍回路、及び半導体記憶装置
KR100728906B1 (ko) 듀티 싸이클 보정장치
US9647650B2 (en) Clock generating device
JP2003216268A (ja) クロック選択回路およびクロック選択方法
US9071258B1 (en) Parallel-serial converter circuit
US9298666B2 (en) Data synchronization circuit

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination