KR101970516B1 - 클럭 생성 회로 - Google Patents

클럭 생성 회로 Download PDF

Info

Publication number
KR101970516B1
KR101970516B1 KR1020120151739A KR20120151739A KR101970516B1 KR 101970516 B1 KR101970516 B1 KR 101970516B1 KR 1020120151739 A KR1020120151739 A KR 1020120151739A KR 20120151739 A KR20120151739 A KR 20120151739A KR 101970516 B1 KR101970516 B1 KR 101970516B1
Authority
KR
South Korea
Prior art keywords
code
oscillator
enable signal
counting
signal
Prior art date
Application number
KR1020120151739A
Other languages
English (en)
Other versions
KR20140082877A (ko
Inventor
지정환
이근일
Original Assignee
에스케이하이닉스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020120151739A priority Critical patent/KR101970516B1/ko
Priority to US13/845,586 priority patent/US9081515B2/en
Publication of KR20140082877A publication Critical patent/KR20140082877A/ko
Application granted granted Critical
Publication of KR101970516B1 publication Critical patent/KR101970516B1/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/011Modifications of generator to compensate for variations in physical values, e.g. voltage, temperature

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Dram (AREA)

Abstract

인에이블 신호가 인에이블되면 입력 클럭의 주파수에 대응하는 카운팅 코드를 생성하는 카운팅 코드 생성부, 상기 카운팅 코드를 디코딩하여 제어 코드를 생성하는 제어 코드 생성부, 및 상기 제어 코드에 응답하여 출력 클럭의 주파수를 결정하는 주기 가변 오실레이팅부를 포함한다.

Description

클럭 생성 회로{Circuit for Generating Clock}
본 발명은 반도체 집적 회로에 관한 것으로, 보다 구체적으로는 클럭 생성 회로에 관한 것이다.
반도체 집적 회로는 외부에서 입력되는 클럭에 동기되어 동작하도록 설계된다. 반도체 집적 회로의 동작 속도 향상을 위해 연구가 계속되고 있으며, 현재 반도체 집적 회로는 높은 주파수의 클럭을 입력 받아 동작하도록 설계된다.
하지만, 반도체 집적 회로를 테스트하는 테스트 장비는 반도체 집적 회로보다 낮은 주파수의 클럭으로 동작한다.
그러므로, 반도체 집적 회로는 테스트시 낮은 주파수의 클럭을 입력 받아 내부에서 높은 주파수의 클럭을 생성하고, 생성된 클럭을 반도체 집적 회로의 동작에 이용하도록 설계된다.
일반적인 클럭 생성 회로는 도 1에 도시된 바와 같이, 제 1 주파수 분주부(10), 주파수 비교부(20), 차지 펌프(30), 전압 제어 오실레이터(40), 및 제 2 주파수 분주부(50)를 포함한다.
상기 제 1 주파수 분주부(10)는 입력 클럭(CLK_in)을 분주시켜 기준 클럭(CLK_ref)을 생성한다.
상기 주파수 비교부(20)는 상기 기준 클럭(CLK_ref)과 피드백 클럭(CLK_fb)의 주파수를 비교하여 주파수 비교 신호(Fre_com)를 생성한다.
상기 차지 펌프(30)는 상기 주파수 비교 신호(Fre_com)에 응답하여 차지 펌핑 전압(V_cp)을 생성한다.
상기 전압 제어 오실레이터(40)는 상기 차지 펌핑 전압(V_cp)의 전압 레벨에 응답하여 출력 클럭(CLK_out)을 생성한다.
상기 제 2 주파수 분주부(50)는 상기 출력 클럭(CLK_out)을 분주시켜 상기 피드백 클럭(CLK_fb)을 생성한다.
이와 같이 구성된 일반적인 클럭 생성 회로는 상기 제 1 주파수 분주부(10), 및 상기 제 2 주파수 분주부(20)의 분주율(제 2 주파수 분주부/제 1 주파수 분주부)에 따라 상기 출력 클럭(CLK_out)의 주파수를 결정한다. 예를 들어, 상기 제 1 주파수 분주부(10)가 상기 입력 클럭(CLK_in)의 주파수를 5배로 감소시켜 상기 기준 클럭(CLK_ref)을 생성하고, 상기 제 2 주파수 분주부(20)가 상기 출력(CLK_out)의 주파수를 10배로 감소시켜 상기 피드백 클럭(CLK_fb)을 생성한다고 가정하면, 상기 출력 클럭(CLK_out)의 주파수는 상기 입력 클럭(CLK_in)의 주파수에 2배가 된다.
하지만, 이와 같이 동작하는 일반적인 클럭 생성 회로는 상기 입력 클럭(CLK_in)과 상기 출력 클럭(CLK_out)의 주파수 차이에 대한 정보에 응답하여 상기 차지 펌핑 전압(V_cp)의 전압 레벨을 증감시키고, 상기 차지 펌핑 전압(V_cp)의 전압 레벨에 따라 상기 출력 클럭(CLK_out)의 주파수를 결정한다. 즉, 일반적인 클럭 생성 회로는 주파수 차이를 아날로그 전압 형태로 변환하고, 아날로그 전압 레벨에 따라 상기 출력 클럭(CLK_out)의 주파수를 결정하므로, 일반적인 클럭 생성 회로에서 이용되는 구동 전압의 전압 레벨 변화에 따라 상기 차지 펌핑 전압(V_cp)의 전압 레벨이 변하면 상기 출력 클럭(CLK_out)의 주파수가 영향을 받는다.
본 발명은 디지털 제어 형태의 클럭 생성 회로를 제공한다.
본 발명의 실시예에 따른 클럭 생성 회로는 인에이블 신호가 인에이블되면 입력 클럭의 주파수에 대응하는 카운팅 코드를 생성하는 카운팅 코드 생성부, 상기 카운팅 코드를 디코딩하여 제어 코드를 생성하는 제어 코드 생성부, 및 상기 제어 코드에 응답하여 출력 클럭의 주파수를 결정하는 주기 가변 오실레이팅부를 포함한다.
본 발명의 다른 실시예에 따른 클럭 생성 회로는 인에이블 신호가 인에이블되면 오실레이터 신호 및 입력 클럭에 응답하여 제 1 코드 및 제 2 코드를 생성하며, 상기 제 2 코드를 카운팅 코드로서 출력하는 카운팅 코드 생성부, 상기 카운팅 코드를 디코딩하여 제어 코드를 생성하는 제어 코드 생성부, 및 상기 제어 코드에 응답하여 지연 시간을 결정하고, 결정된 지연 시간에 대응하는 주기를 갖는 출력 클럭을 생성하는 주기 가변 오실레이팅부를 포함한다.
본 발명에 따른 클럭 생성 회로는 디지털 제어 형태의 클럭 생성 회로를 제공하므로써, 전압, 온도, 공정 변화와는 무관하게 설계자가 설정한 주파수의 클럭을 생성할 수 있다.
도 1은 일반적인 클럭 생성 회로의 구성도,
도 2는 본 발명의 실시예에 따른 클럭 생성 회로의 구성도,
도 3은 도 2의 카운팅 코드 생성부의 구성도,
도 4는 도 2의 주기 가변 오실레이터의 구성도이다.
본 발명의 실시예에 따른 클럭 생성 회로는 도 2에 도시된 바와 같이, 카운팅 코드 생성부(100), 제어 코드 생성부(200), 및 주기 가변 오실레이팅부(300)를 포함한다.
상기 카운팅 코드 생성부(100)는 인에이블 신호(EN_signal)가 인에이블되면 입력 클럭(CLK_in)의 주파수에 대응하는 카운팅 코드(Count_code<0:n>)를 생성한다.
상기 제어 코드 생성부(200)는 상기 카운팅 코드(Count_code<0:n>)를 디코딩하여 제어 코드(CTRL_code<0:m>)를 생성한다. 예를 들어, 상기 제어 코드 생성부(200)는 상기 카운팅 코드(Count_code<0:n>)를 디코딩하여 상기 제어 코드(CTRL_code<0:m>)가 포함하는 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>,..., CTRL_code<m>) 중 하나의 비트 신호(CTRL_code<i>)를 인에이블시킨다.
상기 주기 가변 오실레이팅부(300)는 상기 제어 코드(CTRL_code<0:m>)에 응답하여 출력 클럭(CLK_out)의 주파수를 결정한다.
상기 카운팅 코드 생성부(100)는 도 3에 도시된 바와 같이, 오실레이터 인에이블 신호 생성부(110), 오실레이터(120), 코드 생성부(130), 및 리셋 펄스 생성부(140)를 포함한다.
상기 오실레이터 인에이블 신호 생성부(110)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 입력 클럭(CLK_in)의 주파수에 대응하는 인에이블 구간을 갖는 오실레이터 인에이블 신호(OSC_en)를 생성한다.
상기 오실레이터 인에이블 신호 생성부(110)는 제 1 카운팅부(111), 디코딩부(112), 및 신호 생성부(113)를 포함한다.
상기 제 1 카운팅부(111)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 입력 클럭(CLK_in)에 응답하여 제 1 코드(c_code1<0:j>)를 생성한다. 예를 들어, 상기 제 1 카운팅부(111)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 입력 클럭(CLK_in)이 특정 레벨(예를 들어, 하이 레벨)로 천이할 때마다 상기 제 1 코드(c_code1<0:j>)의 코드 값을 증가시킨다. 또한 상기 제 1 카운팅부(111)는 상기 인에이블 신호(EN_signal)가 디스에이블되면 카운팅된 상기 제 1 코드(c_code1<0:j>)를 초기화한다.
상기 디코딩부(112)는 상기 제 1 코드(c_code1<0:j>)를 디코딩하여 디코딩 신호(dec)를 생성한다. 예를 들어, 상기 디코딩부(112)는 상기 제 1 코드(c_code1<0:j>)의 코드 값이 기설정된 코드 값이상이면 상기 디코딩 신호(dec)를 인에이블시킨다.
상기 신호 생성부(113)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 오실레이터 인에이블 신호(OSC_en)를 인에이블시키고, 상기 디코딩 신호(dec)가 인에이블되면 상기 오실레이터 인에이블 신호(OSC_en)를 디스에이블시킨다.
그러므로, 상기 오실레이터 신호 생성부(110)는 상기 입력 클럭(CLK_in)의 주파수가 높으면 낮을 때보다 인에이블 구간이 짧은 상기 오실레이터 인에이블 신호(OSC_en)를 생성한다.
상기 오실레이터(120)는 상기 인에이블 신호(EN_signal) 및 상기 오실레이터 인에이블 신호(OSC_en)에 응답하여 오실레이터 신호(OSC)를 생성한다. 예를 들어, 상기 오실레이터(120)는 상기 인에이블 신호(EN_signal) 및 상기 오실레이터 인에이블 신호(OSC_en)가 모두 인에이블되면 상기 오실레이터 신호(OSC)를 생성한다.
상기 코드 생성부(130)는 상기 오실레이터 신호(OSC)를 카운팅하여 상기 카운팅 코드(Count_code<0:n>)를 생성한다.
상기 코드 생성부(130)는 제 2 카운팅부(131), 및 래치부(132)를 포함한다.
상기 제 2 카운팅부(131)는 상기 오실레이터 신호(OSC)에 응답하여 제 2 코드(c_code2<0:n>)를 생성한다. 예를 들어, 상기 제 2 카운팅부(131)는 상기 오실레이터 신호(OSC)가 특정 레벨(예를 들어, 하이 레벨)로 천이할 때마다 상기 제 2 코드(c_code2<0:n>)의 코드 값을 증가시킨다. 또한 상기 제 2 카운팅부(131)는 리셋 펄스(Reset_p)가 입력되면 카운팅된 상기 제 2 코드(c_code2<0:n>)를 초기화한다.
상기 래치부(132)는 상기 오실레이터 인에이블 신호(OSC_en)가 인에이블되면 상기 제 2 코드(c_code2<0:n>)를 입력받아 래치하고, 상기 오실레이터 인에이블 신호(OSC_en)가 디스에이블되면 상기 제 2 코드(c_code2<0:n>)를 상기 카운팅 코드(Count_code<0:n>)로서 출력한다.
상기 리셋 펄스 생성부(140)는 상기 오실레이터 인에이블 신호(OSC_en)가 디스에이블되면 상기 리셋 펄스(Reset_p)를 생성한다.
상기 주기 가변 오실레이팅부(300)는 도 4에 도시된 바와 같이, 반전 제어부(310), 및 가변 지연부(320)를 포함한다.
상기 반전 제어부(310)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 출력 클럭(CLK_out)를 반전시켜 반전 클럭(CLK_inv)으로서 출력한다.
상기 반전 제어부(310)는 낸드 게이트(ND11)를 포함하며, 상기 낸드 게이트(ND11)는 상기 인에이블 신호(EN_signal) 및 상기 출력 클럭(CLK_out)를 입력 받고, 상기 반전 클럭(CLK_inv)을 출력한다.
상기 가변 지연부(320)는 상기 제어 코드(CTRL_code<0:m>)에 응답하여 지연 시간을 결정하고, 결정된 지연 시간으로 상기 반전 클럭(CLK_inv)을 지연시켜 상기 출력 클럭(CLK_out)으로서 출력한다.
상기 가변 지연부(320)는 지연부(321), 및 입력 선택부(322)를 포함한다.
상기 지연부(321)는 직렬로 연결된 복수개의 단위 지연부(321_1, 321_2,..., 321_m)를 포함한다.
상기 입력 선택부(322)는 상기 제어 코드(CTRL_code<0:m>)에 응답하여 상기 복수개의 단위 지연부(321_1, 321_2,...,321_m) 중 하나의 단위 지연부에 상기 반전 클럭(CLK_inv)을 입력시킨다.
상기 입력 선택부(322)는 복수개의 스위치(322_1, 322_2, 322_3,..., 322_m)를 포함한다. 상기 복수개의 스위치(322_1, 322_2, 322_3,..., 322_m) 각각은 상기 복수개의 단위 지연부(321_1, 321_2,..., 321_m) 각각의 입력단에 연결된다. 또한 상기 복수개의 스위치(322_1, 322_2, 322_3,..., 322_m) 각각은 상기 제어 코드(CTRL_code<0:m>)의 각 비트 신호를 입력 받는다. 상기 제어 코드(CTRL_code<0:m>)는 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>,..., CTRL_code<m>) 중 하나의 비트 신호(CTRL_code<i>)가 인에이블되는 코드이므로, 상기 복수개의 스위치(322_1, 322_2, 322_3,..., 322_m) 중 하나의 스위치만이 턴온되고, 턴온된 스위치는 자신과 연결된 단위 지연부에 상기 반전 클럭(CLK_inv)을 전달한다.
이와 같이 구성된 본 발명의 실시예에 따른 클럭 생성 회로는 다음과 같이 동작한다.
도 2를 참조하면, 카운팅 코드 생성부(100)는 인에이블 신호(EN_signal)가 인에이블되면 입력 클럭(CLK_in)의 주파수에 대응하는 카운팅 코드(Count_code<0:n>)를 생성한다. 예를 들어, 상기 카운팅 코드 생성부(100)는 상기 인에이블 신호(EN_signal)가 인에이블되고 상기 입력 클럭(CLK_in)의 주파수가 높아질수록 상기 카운팅 코드(Count_code<0:n>)의 코드 값을 감소시킨다. 한편, 상기 카운팅 코드 생성부(100)는 상기 인에이블 신호(EN_signal)가 인에이블되고 상기 입력 클럭(CLK_in)의 주파수가 낮아질수록 상기 카운팅 코드(Count_code<0:n>)의 코드 값을 증가시킨다.
상기 제어 코드 생성부(200)는 상기 카운팅 코드(Count_code<0:n>)를 디코딩하여 제어 코드(CTRL_code<0:m>)를 생성한다. 이때, 상기 제어 코드(CTRL_code<0:m>)는 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>,..., CTRL_code<m>)를 포함하며, 상기 제어 코드 생성부(200)는 상기 카운팅 코드(Count_code<0:n>)에 응답하여 상기 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>,..., CTRL_code<m>) 중 하나의 비트 신호(CTRL_code<i>)를 인에이블시킨다.
주기 가변 오실레이팅부(300)는 상기 제어 코드(CTRL_code<0:m>)에 응답하여 출력 클럭(CLK_out)의 주파수를 결정하고, 주파수가 결정된 상기 출력 클럭(CLK_out)을 출력시킨다.
도 3을 참조하여, 상기 카운팅 코드 생성부(100)의 동작을 더욱 상세히 설명한다.
상기 카운팅 코드 생성부(100)는 오실레이터 인에이블 신호 생성부(110, 오실레이터(120), 코드 생성부(130), 및 리셋 펄스 생성부(140)를 포함한다.
상기 오실레이터 인에이블 신호 생성부(110)는 상기 인에이블 신호(EN_signal)가 인에이블되면 오실레이터 인에이블 신호(OSC_en)를 인에이블시킨다. 상기 오실레이터 인에이블 신호 생성부(110)는 상기 인에이블 신호(EN_signal)가 인에이블된 이후 상기 입력 클럭(CLK_in)이 특정 레벨로 천이할 때마다 제1 코드(c_code1<0:j>)의 코드 값을 증가시킨다. 상기 제 1 코드(c_code1<0:j>)의 코드 값이 기설정된 값 이상이면 디코딩 신호(dec)를 인에이블시키고, 상기 디코딩 신호(dec)가 인에이블되면 인에이블되었던 상기 오실레이터 인에이블 신호(OCS_en)를 디스에이블시킨다.
그러므로, 상기 오실레이터 인에이블 신호 생성부(110)는 상기 입력 클럭(CLK_in)의 주파수가 높아지면 주파수가 낮을 때보다 상기 디코딩 신호(dec)를 빨리 인에이블시켜 상기 오실레이터 인에이블 신호(OSC_en)의 디스에이블 타이밍을 앞당긴다.
결국, 상기 오실레이터 인에이블 신호 생성부(110)는 상기 입력 클럭(CLK_in)의 주파수가 높아질수록 상기 오실레이터 인에이블 신호(OSC_en)의 인에이블 구간을 감소시킨다. 한편, 상기 오실레이터 인에이블 신호 생성부(110)는 상기 입력 클럭(CLK_in)의 주파수가 낮아질수록 상기 오실레이터 인에이블 신호(OSC_en)의 인에이블 구간을 증가시킨다.
상기 오실레이터(120)는 상기 인에이블 신호(EN_signal)와 상기 오실레이터 인에이블 신호(OSC_en)가 모두 인에이블되면 오실레이터 신호(OSC)를 생성한다.
상기 코드 생성부(130)는 상기 오실레이터 신호(OSC)가 특정 레벨로 천이할 때마다 제 2 코드(c_code2<0:n>)의 코드 값을 증가시키고, 상기 제 2 코드(c_code<0:n>)를 상기 카운팅 코드(Count_code<0:n>)로서 출력한다.
상기 리셋 펄스 생성부(140)는 상기 오실레이터 인에이블 신호(OSC_en)가 디스에이블되면 리셋 펄스(Rest_p)를 생성하여, 카운팅된 상기 제 2 코드(c_code2<0:n>)의 코드 값을 초기화시킨다.
결국, 상기 카운팅 코드 생성부(100)는 상기 인에이블 신호(EN_signal)가 인에이블된 시점부터 상기 제 2 코드(c_code2<0:n>)의 코드 값을 증가시키고, 상기 입력 클럭(CLK_in)의 설정된 배수의 주기가 경과하면 카운팅된 상기 제 2 코드(c_code<0:n>)를 상기 카운팅 코드(Count_code<0:n>)로서 출력한다. 다시 설명하면, 상기 카운팅 코드 생성부(100)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 입력 클럭(CLK_in)이 특정 레벨로 천이할 때마다 상기 제 1 코드(c_code1<0:j>)의 코드 값을 증가시키고, 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 오실레이터 신호(OSC)가 특정 레벨로 천이할 때마다 상기 제 2 코드(c_code2<0:n>)의 코드 값을 증가시킨다. 이때, 상기 제 1 코드(c_code1<0:j>)의 코드 값이 설정된 코드 값일 때의 상기 제 2 코드(c_code2<0:n>)를 상기 카운팅 코드(Count_code<0:n>)로서 출력한다.
상기와 같이 생성된 상기 카운팅 코드(Count_code<0:n>)는 상기 제어 코드 생성부(200)에서 디코딩되어 상기 제어 코드(CTRL_code<0:m>)로서 생성된다.
상기 주기 가변 오실레이팅부(300)는 상기 제어 코드(CTRL_code<0:m>)에 응답하여 상기 출력 클럭(CLK_out)의 주파수를 가변시킨다. 이와 같은 상기 주기 가변 오실레이팅부(300)의 동작을 설명하면 다음과 같다.
상기 제어 코드(CTRL_code<0:m>)는 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>, CTRL_code<2>,..., CTRL_code<m>) 중 하나의 비트 신호(CTRL_code<i>)가 인에이블되는 코드이다.
도 4를 참조하면, 반전 제어부(310)는 상기 인에이블 신호(EN_signal)가 인에이블되면 상기 출력 클럭(CLK_out)을 반전시켜 반전 클럭(CLK_inv)으로서 출력한다.
지연부(321)는 직렬로 연결된 복수개의 단위 지연부(321_1, 321_2,..., 321_m)를 포함하며, 상기 복수개의 단위 지연부(321_1, 321_2,..., 321_m) 중 하나의 단위 지연부에 입력되는 상기 반전 클럭(CLK_inv)을 지연시켜 출력한다. 그러므로, 상기 지연부(321)는 입력되는 상기 반전 클럭(CLK_inv)이 몇 번째 단위 지연부에 입력되는지에 따라 상기 반전 클럭(CLK_inv)이 지연되는 시간을 결정하고, 결정된 지연 시간으로 상기 반전 클럭(CLK_inv)을 지연시켜 상기 출력 클럭(CLK_out)으로 출력한다.
상기 입력 선택부(322)는 복수개의 스위치(322_1, 322_2,..., 322_m)를 포함하며, 각 복수개의 스위치(322_1, 322_2,..., 322_m)는 상기 복수개의 단위 지연부(321_1, 321_2,..., 321_m) 각각에 연결된다. 또한 복수개의 스위치(322_1, 322_2,..., 322_m)는 상기 제어 코드(CTRL_code<0:m>)가 포함하는 상기 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>, CTRL_code<2>,..., CTRL_code<m>) 각각 입력 받는다. 따라서, 상기 복수개의 비트 신호(CTRL_code<0>, CTRL_code<1>, CTRL_code<2>,..., CTRL_code<m>) 중 하나의 비트 신호만이 인에이블되므로, 상기 복수개의 스위치(322_1, 322_2,..., 322_m)중 하나의 스위치만이 턴온된다. 턴온된 스위치는 상기 반전 클럭(CLK_inv)을 자신과 연결된 단위 지연부에 입력시킨다.
상기 반전 제어부(310)의 출력(CLK_inv)이 상기 지연부(321)를 거쳐 상기 출력 클럭(CLK_out)으로서 출력됨과 동시에 상기 출력 클럭(CLK_out)은 상기 반전 제어부(310)의 입력으로 입력된다. 따라서, 상기 지연부(321)의 지연시간이 상기 출력 클럭(CLK_out)의 주파수를 결정하게 된다. 이때, 상기 지연부(321)의 지연시간은 상기 제어 코드(CTRL_code<0:m>)에 따라 결정된다.
본 발명에 따른 클럭 생성 회로는 입력 클럭의 주파수에 따라 출력 클럭의 주파수를 결정한다. 또한, 본 발명에 따른 클럭 생성 회로는 제어 코드 생성부의 디코딩 동작을 통해 생성된 제어 코드에 따라 출력 클럭의 주파수가 결정되므로, 상기 제어 코드 생성부의 디코딩 방식을 바꾸면 상기 출력 클럭의 주파수를 변화시킬 수 있다. 결국, 본 발명에 따른 클럭 생성 회로는 일반적인 클럭 생성 회로와는 달리, 오실레이터 신호 및 입력 클럭을 카운팅하고, 카운팅된 값을 코드화하여 출력 클럭을 생성하는 디지털 제어 방식의 클럭 생성 회로로서, 아날로그 제어 방식의 일반 클럭 생성 회로와는 달리 온도, 전압, 공정 변화에 따라 출력 클럭의 주파수가 변하지 않는다. 또한 설계자가 원하는 주파수의 출력 클럭을 생성할 수 있다.
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (19)

  1. 인에이블 신호가 인에이블되면 입력 클럭의 주파수에 대응하는 인에이블 구간 동안 오실레이터 신호를 카운팅하여 카운팅 코드를 생성하는 카운팅 코드 생성부;
    상기 카운팅 코드를 디코딩하여 제어 코드를 생성하는 제어 코드 생성부; 및
    상기 제어 코드에 응답하여 출력 클럭의 주파수를 결정하는 주기 가변 오실레이팅부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  2. ◈청구항 2은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 카운팅 코드 생성부는
    상기 인에이블 신호가 인에이블되면 상기 입력 클럭의 주파수에 대응하는 인에이블 구간을 갖는 오실레이터 인에이블 신호를 생성하는 오실레이터 인에이블 신호 생성부,
    상기 인에이블 신호 및 상기 오실레이터 인에이블 신호에 응답하여 상기 오실레이터 신호를 생성하는 오실레이터, 및
    상기 오실레이터 신호를 카운팅하여 상기 카운팅 코드를 생성하는 코드 생성부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  3. ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈
    제 2 항에 있어서,
    상기 오실레이터 인에이블 신호 생성부는
    상기 인에이블 신호가 인에이블되면 상기 입력 클럭을 카운팅하여 제 1 코드를 생성하는 제 1 카운팅부,
    상기 제 1 코드를 디코딩하여 디코딩 신호를 생성하는 디코딩부, 및
    상기 인에이블 신호가 인에이블되면 상기 오실레이터 인에이블 신호를 인에이블시키고, 상기 디코딩 신호가 인에이블되면 상기 오실레이터 인에이블 신호를 디스에이블시키는 신호 생성부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  4. ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈
    제 3 항에 있어서,
    상기 제 1 카운팅부는
    상기 인에이블 신호가 인에이블되면 상기 입력 클럭이 특정 레벨로 천이할 때마다 상기 제 1 코드의 코드 값을 증가시키는 것을 특징으로 하는 클럭 생성 회로.
  5. ◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈
    제 4 항에 있어서,
    상기 디코딩부는
    상기 제 1 코드의 코드 값이 기설정된 코드 값 이상이면 상기 디코딩 신호를 인에이블시키는 것을 특징으로 하는 클럭 생성 회로.
  6. ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈
    제 3 항에 있어서,
    상기 카운팅 코드 생성부는
    상기 오실레이터 인에이블 신호가 디스에이블되면 리셋 펄스를 생성하는 리셋 펄스 생성부를 더 포함하는 것을 특징으로 하는 클럭 생성 회로.
  7. ◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈
    제 6 항에 있어서,
    상기 오실레이터는
    상기 오실레이터 인에이블 신호 및 상기 인에이블 신호가 모두 인에이블되면 상기 오실레이터 신호를 생성하는 것을 특징으로 하는 클럭 생성 회로.
  8. ◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈
    제 7 항에 있어서,
    상기 코드 생성부는
    상기 오실레이터 신호를 카운팅하여 제 2 코드를 생성하는 제 2 카운팅부, 및
    상기 오실레이터 인에이블 신호가 인에이블되면 상기 제 2 코드를 입력 받아 래치하고, 상기 오실레이터 인에이블 신호가 디스에이블되면 상기 제 2 코드를 상기 카운팅 코드로서 출력하는 래치부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  9. ◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈
    제 8 항에 있어서,
    상기 제 2 카운팅부는
    상기 리셋 펄스에 응답하여 초기화하는 것을 특징으로 하는 클럭 생성 회로.
  10. ◈청구항 10은(는) 설정등록료 납부시 포기되었습니다.◈
    제 8 항에 있어서,
    상기 제 2 카운팅부는
    상기 오실레이터 신호가 특정 레벨로 천이할 때마다 상기 제 2 코드의 코드 값을 증가시키는 것을 특징으로 하는 클럭 생성 회로.
  11. ◈청구항 11은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 제어 코드는 복수개의 비트 신호를 포함하며,
    상기 제어 코드 생성부는
    상기 카운팅 코드를 디코딩하여 상기 복수개의 비트 신호 중 하나의 비트 신호를 인에이블시키는 것을 특징으로 하는 클럭 생성 회로.
  12. ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 주기 가변 오실레이팅부는
    상기 인에이블 신호가 인에이블되면 상기 출력 클럭을 반전시켜 반전 클럭으로서 출력하는 반전 제어부, 및
    상기 제어 코드에 응답하여 지연 시간을 결정하고, 결정된 지연 시간으로 상기 반전 클럭을 지연시켜 상기 출력 클럭으로서 출력하는 가변 지연부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  13. ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈
    제 12 항에 있어서,
    상기 가변 지연부는
    직렬로 연결된 복수개의 단위 지연부를 구비한 지연부, 및
    상기 제어 코드에 응답하여 상기 복수개의 단위 지연부 중 하나의 단위 지연부에 상기 반전 클럭을 입력시키는 입력 선택부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  14. ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈
    제 13 항에 있어서,
    상기 입력 선택부는
    복수개의 스위치를 포함하며,
    상기 복수개의 스위치 각각은 상기 복수개의 단위 지연부 각각의 입력단에 연결되고,
    상기 제어 코드에 응답하여 상기 복수개의 스위치중 하나의 스위치만이 턴온되어 자신과 연결된 단위 지연부에 상기 반전 클럭을 전달하는 것을 특징으로 하는 클럭 생성 회로.
  15. 인에이블 신호가 인에이블되면 오실레이터 신호 및 입력 클럭에 응답하여 제 1 코드 및 제 2 코드를 생성하며, 상기 제 2 코드를 카운팅 코드로서 출력하는 카운팅 코드 생성부;
    상기 카운팅 코드를 디코딩하여 제어 코드를 생성하는 제어 코드 생성부; 및
    상기 제어 코드에 응답하여 지연 시간을 결정하고, 결정된 지연 시간에 대응하는 주기를 갖는 출력 클럭을 생성하는 주기 가변 오실레이팅부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  16. ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈
    제 15 항에 있어서,
    상기 카운팅 코드 생성부는
    상기 인에이블 신호가 인에이블되면 상기 입력 클럭이 특정 레벨로 천이할 때마다 상기 제 1 코드의 코드 값을 증가시키고,
    상기 인에이블 신호가 인에이블되면 상기 오실레이터 신호가 특정 레벨로 천이할 때마다 상기 제 2 코드의 코드 값을 증가시키며,
    상기 제 1 코드의 코드 값이 설정된 코드 값일 때의 상기 제 2 코드를 상기 카운팅 코드로서 출력하는 것을 특징으로 하는 클럭 생성 회로.
  17. ◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈
    제 16 항에 있어서,
    상기 카운팅 코드 생성부는
    상기 인에이블 신호가 인에이블되면 상기 입력 클럭이 특정 레벨로 천이할 때마다 상기 제 1 코드의 코드 값을 증가시키는 제 1 카운팅부,
    상기 제 1 코드를 디코딩하여 상기 제 1 코드의 코드 값이 상기 설정된 코드값이면 디코딩 신호를 인에이블시키는 디코딩부,
    상기 인에이블 신호가 인에이블되면 오실레이터 인에이블 신호를 인에이블시키고, 상기 디코딩 신호가 인에이블되면 상기 오실레이터 인에이블 신호를 디스에이블시키는 오실레이터 인에이블 신호 생성부,
    상기 인에이블 신호 및 상기 오실레이터 인에이블 신호가 모두 인에이블되면 상기 오실레이터 신호를 생성하는 오실레이터,
    상기 오실레이터 신호가 특정 레벨로 천이할 때마다 상기 제 2 코드의 코드 값을 증가시키는 제 2 카운팅부, 및
    상기 오실레이터 인에이블 신호가 인에이블되면 상기 제 2 코드를 래치하고, 상기 오실레이터 인에이블 신호가 디스에이블되면 래치된 상기 제 2 코드를 상기 카운팅 코드로서 출력하는 래치부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
  18. ◈청구항 18은(는) 설정등록료 납부시 포기되었습니다.◈
    제 17 항에 있어서,
    상기 카운팅 코드 생성부는
    상기 오실레이터 신호가 디스에이블되면 리셋 펄스를 생성하는 리셋 펄스 생성부를 더 포함하며,
    상기 래치부는
    상기 리셋 펄스가 입력되면 래치된 상기 제2 코드의 코드 값을 초기화시키는 것을 특징으로 하는 클럭 생성 회로.
  19. ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈
    제 15 항에 있어서,
    상기 주기 가변 오실레이팅부는
    상기 인에이블 신호가 인에이블되면 상기 출력 클럭을 반전시켜 반전 클럭으로서 출력하는 반전 제어부, 및
    상기 제어 코드에 응답하여 지연 시간을 결정하고, 결정된 지연 시간으로 상기 반전 클럭을 지연시켜 상기 출력 클럭으로서 출력하는 가변 지연부를 포함하는 것을 특징으로 하는 클럭 생성 회로.
KR1020120151739A 2012-12-24 2012-12-24 클럭 생성 회로 KR101970516B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120151739A KR101970516B1 (ko) 2012-12-24 2012-12-24 클럭 생성 회로
US13/845,586 US9081515B2 (en) 2012-12-24 2013-03-18 Clock generation circuit and clock generation system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120151739A KR101970516B1 (ko) 2012-12-24 2012-12-24 클럭 생성 회로

Publications (2)

Publication Number Publication Date
KR20140082877A KR20140082877A (ko) 2014-07-03
KR101970516B1 true KR101970516B1 (ko) 2019-08-13

Family

ID=50973951

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120151739A KR101970516B1 (ko) 2012-12-24 2012-12-24 클럭 생성 회로

Country Status (2)

Country Link
US (1) US9081515B2 (ko)
KR (1) KR101970516B1 (ko)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04351008A (ja) 1991-05-28 1992-12-04 Sony Corp ディジタルvco
KR100594031B1 (ko) 1999-10-08 2006-06-28 삼성전자주식회사 링 오실레이터를 이용한 펄스폭변조 회로 및 방법
US6297705B1 (en) * 2000-02-23 2001-10-02 Cypress Semiconductor Corp. Circuit for locking an oscillator to a data stream
US6362668B1 (en) * 2000-03-23 2002-03-26 Cypress Semiconductor Corp. Circuit and method for frequency generator control
JP3956768B2 (ja) * 2002-05-14 2007-08-08 ソニー株式会社 クロック発生回路
KR101139141B1 (ko) * 2004-06-09 2012-04-26 가부시키가이샤 아드반테스트 타이밍 발생기 및 반도체 시험 장치
TWI332763B (en) * 2006-11-01 2010-11-01 Sonix Technology Co Ltd Usb device, frequency auto-locking device and frequency auto-locking method
WO2008141102A2 (en) * 2007-05-11 2008-11-20 Skyworks Solutions, Inc. Systems and methods for providing a clock signal
US7830216B1 (en) * 2008-09-23 2010-11-09 Silicon Labs Sc, Inc. Precision, temperature stable clock using a frequency-control circuit and a single oscillator
JP2010166299A (ja) * 2009-01-15 2010-07-29 Elpida Memory Inc キャリブレーション回路及びキャリブレーション方法
EP2369438B1 (en) * 2010-02-24 2014-02-26 Fujitsu Semiconductor Limited Calibration method of a real time clock signal
US20140015579A1 (en) * 2012-07-16 2014-01-16 Dspg Group Ltd. System having half-cycle precision

Also Published As

Publication number Publication date
US9081515B2 (en) 2015-07-14
US20140176209A1 (en) 2014-06-26
KR20140082877A (ko) 2014-07-03

Similar Documents

Publication Publication Date Title
US10411675B2 (en) Delay circuit and duty cycle controller including the same
KR100897300B1 (ko) 반도체 메모리 장치의 펌핑 전압 생성 회로
CN111934545B (zh) 升压电路及其控制方法
US9647642B2 (en) Clock phase adjustment mechanism of a ring oscillator using a phase control signal
US11218141B2 (en) Correction circuit
KR102005337B1 (ko) 전압 변환 장치
KR101153805B1 (ko) 반도체 장치 및 이를 이용한 dll 회로
CN104076863A (zh) 一种时钟切换装置
US7969209B2 (en) Frequency divider circuit
KR101181279B1 (ko) 위상차 증대기를 이용한 하위-지수 방식의 시간-디지털 변환기
US8253449B2 (en) Clock switch circuit and clock switch method of the same
KR101998293B1 (ko) 주파수 체배기
US20150130522A1 (en) Phase lock loop, voltage controlled oscillator of the phase lock loop, and method of operating the voltage controlled oscillator
KR101970516B1 (ko) 클럭 생성 회로
US7786774B2 (en) Phase synchronization apparatus
US8514003B2 (en) Clock signal generation circuit
WO2022110235A1 (zh) 芯片及时钟检测方法
US10418982B2 (en) Folded divider architecture
US10135431B2 (en) Fast-response reference-less frequency detector
KR20150070779A (ko) 클럭 생성 회로
KR102472946B1 (ko) 신호 복원 회로
KR101725868B1 (ko) 저장소자를 초기화하기 위한 신호를 생성하는 방법 및 그 장치
KR20160076200A (ko) 듀티 싸이클 검출 회로 및 방법
KR20100123125A (ko) 클럭의 주파수, 트랜지스터의 스큐, 및 구동 전압 레벨을 판별하여 동작하는 반도체 메모리 장치
CN117471165A (zh) 时钟信号的频率检测装置及其检测方法

Legal Events

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