Nothing Special   »   [go: up one dir, main page]

KR20080101495A - 클럭 스위칭 회로 - Google Patents

클럭 스위칭 회로 Download PDF

Info

Publication number
KR20080101495A
KR20080101495A KR1020070048685A KR20070048685A KR20080101495A KR 20080101495 A KR20080101495 A KR 20080101495A KR 1020070048685 A KR1020070048685 A KR 1020070048685A KR 20070048685 A KR20070048685 A KR 20070048685A KR 20080101495 A KR20080101495 A KR 20080101495A
Authority
KR
South Korea
Prior art keywords
signal
clock
delay
gate
kill
Prior art date
Application number
KR1020070048685A
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 KR1020070048685A priority Critical patent/KR20080101495A/ko
Publication of KR20080101495A publication Critical patent/KR20080101495A/ko

Links

Images

Classifications

    • 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
    • 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/10Distribution of clock signals, e.g. skew
    • 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/12Synchronisation of different clock signals provided by a plurality of clock generators
    • 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/133Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals using a chain of active delay devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

본 발명은 클럭 스위칭 회로에 관한 것으로, 특히 다중 클럭을 사용하는 시스템의 클럭 스위칭 회로에 있어서 입력되는 서로 다른 주파수의 클럭이, 그 클럭이 변하는 순간에 글리치 (glitch) 를 없애는 킬 (kill) 신호를 이용하여 안정적으로 글리치 없이 클럭을 변환시키는 클럭 스위칭 회로에 관한 것이다.
글리치, 클럭 스위칭

Description

클럭 스위칭 회로 {CLOCK SWITCHING CIRCUIT}
도 1 은 먹스 로 구성된 종래의 클럭 스위칭 회로를 나타낸다.
도 2 는 종래의 스위칭 회로가 빠른 클럭에서 느린 클럭으로 스위칭 할 경우의 타이밍도를 나타낸다.
도 3 은 본 발명에 따른 클럭 스위칭 회로의 개략적인 구성을 도시한 블럭도를 나타낸다.
도 4 는 도 3 에 도시된 클럭 스위칭 회로의 쉬프팅부 (160) 의 개략적인 구성을 도시한 블록도이다.
도 5 는 도 3 에 도시된 클럭 스위칭 회로의 킬 신호 생성부 (170) 의 일 실시예를 나타낸 블록도이다.
도 6 은 도 3 에 도시된 클럭 스위칭 회로의 킬 신호 생성부 (170) 의 또 다른 실시예를 나타낸 블록도이다.
도 7 은 도 3 에 도시된 클럭 스위칭 회로의 클럭 선택부 (180) 의 일 실시예를 나타낸 블록도이다.
도 8a 내지 8b 는 각각 도 3 에 도시된 클럭 스위칭 회로의 글리치 제거부 (190) 의 실시예를 나타낸 블록도이다.
도 9 는 클럭 스위칭 회로 (GCLK) 의 입출력 신호들을 나타낸 타이밍도이다.
*도면의 주요 부분에 대한 부호의 설명*
CLK_SEL : 클럭 선택 신호 CLK1 : 제 1 클럭
CLK2 : 제 2 클럭 GCLK : 내부 클럭 신호
CLK : 최종 클럭 신호 160 : 쉬프팅 (shifting) 부
170 : 킬 (kill) 신호 생성부 180 : 클럭 선택부
190 : 글리치 제거부
본 발명은 클럭 스위칭 회로에 관한 것으로, 특히 다중 클럭을 사용하는 시스템의 클럭 스위칭 회로에 있어서 입력되는 서로 다른 주파수의 클럭이, 그 클럭이 변하는 순간에 글리치 (glitch) 를 없애는 킬 (kill) 신호를 이용하여 안정적으로 글리치 없이 클럭을 변환시키는 클럭 스위칭 회로에 관한 것이다.
마이크로프로세서를 사용하는 디지털 전자 시스템에서는 기초가 되는 시스템 주파수 외에 다양한 클럭이 사용된다. 즉 시스템 주파수와 별도로 다른 로직이나 회로를 동작시키기 위해 부수적으로 사용되는 다양한 클럭들이 한 시스템 내에 존재한다.
도 1 은 종래 클럭 스위칭 회로의 구성을 보인 회로도로서, 이에 도시된 바와 같이 먹스 (5) 는 클럭 선택 신호 (CLK_SEL) 에 따라서 최종 클럭 신호 (CLK) 로서 제 1 클럭 신호 (CLK1) 또는 제 2 클럭 신호 (CLK2) 중 어느 하나를 출력시킨 다.
도 2 는 느린 클럭에서 빠른 클럭으로 변환하는 경우의 타이밍도를 예로써 나타낸 것이다. 제 1 클럭 신호 (CLK1) 는 빠른 클럭이고 제 2 클럭 신호 (CLK2) 는 느린 클럭이다. 클럭 선택 신호 (CLK_SEL) 가 변함에 따라서 최종 클럭 신호 (CLK) 가 제 1 클럭 신호 (CLK1) 에서 제 2 클럭 신호 (CLK2) 로 바뀌게 된다. 두 개의 클럭의 주파수가 차이 및 동기화의 문제로 인하여, 도시된 바와 같이 글리치가 발생하게 된다. 이 때 발생되는 글리치는 회로의 오동작을 야기하게 된다.
또한, 종래의 클럭스위칭 회로는 대부분 딜레이 함수를 이용하는 방식이다. 이러한 딜레이 함수를 이용하는 방식에서는, 제조 공정마다, 스위칭하고자 하는 주파수마다, 그 딜레이 값을 적절히 설정해주어야 한다. 게다가, 종래기술에서는 최적화된 클럭 스위칭 회로를 구현하기 위한 구체적인 딜레이 값들에 대하여 개시하고 있지 않다.
상술한 바와 같이 종래 다중 클럭을 사용하는 시스템에 있어서 한 클럭에서 다른 주파수의 클럭으로 변환시키는 경우 클럭의 동기가 서로 맞지 않아 야기되는 글리치에 의해 전체 시스템이 오동작하는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위한 것으로, 클럭 선택 신호가 바뀔 경우에 입력되는 클럭의 글리치를 킬 신호를 통해서 없애주며, 전환 구간을 최소화하기 위해 제공되었다.
부가하여, 본 발명의 클럭스위칭 회로는 플립플롭과 조합 논리 회로만을 이용하여 구현되어 있으므로, 딜레이 함수를 이용하는 방식을 사용할 필요가 없어서, 제조 공정에 따라 발생할 수 있는 변수에 의하여 영향을 받지 않는다.
본 발명의 목적을 달성하기 위하여 주파수가 상이한 두 개의 클럭 간에 스위칭을 해주는 클럭 스위칭 회로는, 클럭 선택 신호 및 내부 클럭 신호를 입력받아 소정의 클럭만큼 딜레이된 하나 이상의 딜레이된 클럭 선택 신호들을 출력하는 쉬프팅부; 딜레이된 클럭 선택 신호들 및 클럭 선택 신호를 입력받아 킬 신호 및 클럭 선택부 인에이블 신호를 출력하는 킬 신호 생성부; 클럭 선택 신호, 제 1 클럭 신호, 제 2 클럭 신호 및 클럭 선택부 인에이블 신호를 입력받아 클럭 선택 신호에 따라서 제 1 클럭 신호와 제 2 클럭 신호 중 하나를 내부 클럭 신호로 출력하는 클럭 선택부; 및 내부 클럭 신호 및 킬 신호를 입력받아 소정의 구간에서 일정하게 유지되는 킬 신호에 의해 내부 클럭 신호의 글리치를 제거하여 최종클럭 신호로 출력하는 글리치 제거부를 구비하고, 킬 신호는 클럭 선택 신호의 변화가 시작되는 시점으로부터 하나 이상의 클럭이 지난 후까지 일정한 값으로 유지된다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 쉬프팅부는, 클럭 선택 신호 및 내부 클럭 신호를 입력받아 내부 클럭 신호의 한 클럭 딜레이된 제 1 딜레이 신호를 출력하는 제 1 D 플리플롭 (D flip-flop) ; 제 1 딜레이 신호 및 내부 클럭 신호를 입력받아 제 1 딜레이 신호를 한 클럭 딜레이 시킨 제 2 딜레이 신호를 출력하는 제 2 D 플리플롭; 제 2 딜레이 신호 및 내부 클럭 신호를 입력받아 제 2 딜 레이 신호를 한 클럭 딜레이 시킨 제 3 딜레이 신호를 출력하는 제 3 D 플리플롭; 및 제 3 딜레이 신호 및 내부 클럭 신호를 입력받아 제 3 딜레이 신호를 한 클럭 딜레이 시킨 제 4 딜레이 신호를 출력하는 제 4 D 플리플롭을 구비하고, 하나 이상의 딜레이된 클럭 선택 신호들은 제 2 딜레이 신호, 제 3 딜레이 신호 및 제 4 딜레이 신호를 포함한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 킬 신호 생성부는, 클럭 선택 신호 및 제 2 딜레이 신호를 입력받아 클럭 선택부 인에이블 신호를 출력하는 재 1 배타적 논리합 게이트; 제 3 딜레이 신호 및 제 4 딜레이 신호를 입력받아 SR 래치 (SR-latch) 리셋 신호를 출력하는 제 2 배타적 논리합 게이트; 및 클럭 선택부 인에이블 신호를 SR 래치 세팅 신호로 입력받고 SR 래치 리셋 신호를 입력받아 Q 를 통해 킬 신호를 출력시키는 SR 래치를 구비한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 킬 신호 생성부는, 클럭 선택 신호 및 제 2 딜레이 신호를 인버팅한 신호를 입력받아 제 1 논리곱 게이트 신호를 출력하는 제 1 논리곱 게이트; 클럭 선택 신호를 인버팅한 신호 및 제 2 딜레이 신호를 입력받아 제 2 논리곱 게이트 신호를 출력하는 제 2 논리곱 게이트; 제 3 딜레이 신호 및 제 4 딜레이 신호를 인버팅한 신호를 입력받아 제 3 논리곱 게이트 신호를 출력하는 제 3 논리곱 게이트; 제 3 딜레이 신호를 인버팅한 신호 및 제 4 딜레이 신호를 입력받아 제 4 논리곱 게이트 신호를 출력하는 제 4 논리곱 게이트; 제 1 논리곱 게이트 신호 및 제 2 논리곱 게이트 신호를 입력받아 클럭 선택부 인에이블 신호를 출력하는 제 1 논리합게이트; 제 3 논리곱 게이트 신호 및 제 4 논 리곱 게이트 신호를 입력받아 SR 래치 리셋 신호를 출력하는 제 2 논리합게이트; 및 클럭 선택부 인에이블 신호를 SR 래치 세팅 신호로 입력받고 SR 래치 리셋 신호를 SR 래치 리셋 신호를 입력받아 Q 를 통해 킬 신호를 출력하는 SR 래치를 구비한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 클럭 선택부는, 내부 클럭 신호 및 클럭 선택부 인에이블 신호를 입력받아 클럭 선택부가 인에이블 상태일 경우에만 내부 클럭 신호를 제 1 D 플리플롭 클럭 신호로 출력하는 제 1 D 플리플롭 클럭 출력부; 제 1 D 플리플롭 클럭 신호 및 클럭 선택 신호를 입력받아 클럭 선택 신호를 한 클럭 딜레이 시켜서 제 1 D 플리플롭 출력 신호를 Q 를 통해 출력하는 제 1 D 플리플롭; 제 1 D 플리플롭 출력 신호 및 내부 클럭 신호를 입력받아 한 클럭 딜레이 시켜서 딜레이된 클럭 선택 신호를 Q 를 통해 출력하는 제 2 D 플리플롭; 및 제 1 클럭 신호, 제 2 클럭 신호 및 딜레이된 클럭 선택 신호를 입력받아 딜레이된 클럭 선택 신호에 따라 제 1 클럭 신호 또는 제 2 클럭 신호 중의 하나를 내부 클럭 신호로 출력시키는 먹스를 구비한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 제 1 D 플리플롭 클럭 출력부는, 내부 클럭 신호 및 클럭 선택부 인에이블 신호를 인버팅한 신호를 입력받아 제 1 D 플리플롭 클럭 신호를 출력하는 논리합 게이트를 구비한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 글리치 제거부는 내부 클럭 신호 및 킬 신호를 인버팅한 신호를 입력받아 최종 클럭 신호를 출력하는 논리곱 게이트를 구비한다.
바람직하게, 본 발명의 클럭 스위칭 회로에서, 글리치 제거부는 내부 클럭 신호 및 킬 신호를 입력받아 최종 클럭 신호를 출력하는 논리합 게이트를 구비한다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예를 설명한다.
도 3 은 본 발명에 따른 클럭 스위칭 회로의 개략적인 구성을 도시한 블록도이다.
클럭 스위칭 회로는 클럭 선택 신호 (CLK_SEL) 를 소정의 클럭만큼 딜레이 시키는 쉬프팅부 (160), 클럭 선택 신호 (CLK_SEL) 가 바뀌는 순간부터 소정의 클럭 후까지 일정한 신호를 출력하는 킬 신호 생성부 (170) 및 클럭 선택 신호 (CLK_SEL) 에 따라서 제 1 클럭 (CLK1) 과 제 2 클럭 (CLK2) 중 하나를 선택하여 출력하는 클럭선택부 (180) 를 구비하며, 각 구성부분은 다른 구성부분과 입출력 신호에 의하여 연결되며, 구체적인 연결관계는 이하 설명한다.
쉬프팅부 (180) 에서는, 클럭 선택 신호 (CLK_SEL) 및 내부 클럭 신호 (GCLK) 를 입력받아 소정의 클럭만큼 딜레이된 하나 이상의 딜레이된 클럭 선택 신호들 (CLK_SEL_d) 을 출력한다. 이 때, 소정의 클럭은 한 클럭, 두 클럭 또는 기타 임의의 개수의 클럭이 될 수도 있다.
킬 신호 생성부 (170) 는 클럭 선택 신호 (CLK_SEL) 및 쉬프팅부 (160) 로부터의 하나 이상의 딜레이된 클럭 선택 신호들 (CLK_SEL_d) 을 입력받아 클럭 선택부 인에이블 신호 (sel_en) 및 킬 신호 (kill_sig) 를 출력한다. 킬 신호 (kill_sig) 는 클럭 선택 신호가 바뀌는 순간 발생되는 글리치를 제거하기 위하여, 클럭의 변화를 검출하여 클럭이 변하는 구간 동안 일정한 값 (하이 또는 로우) 을 킬 신호(kill_sig) 로 출력하여 최종 클럭 신호 (CLK) 를 일정하게 유지하기 위한 신호이다. 즉, 킬 신호 생성부 (170) 는 하나 이상의 딜레이된 클럭 선택 신호들 (CLK_SEL_d) 로부터 클럭 선택 신호가 변화되기 시작하는 시점을 감지하여, 그 시점부터 소정이 클럭이 카운팅된 후까지 킬 신호 (kill_sig) 를 일정한 값으로 유지시킨다.
클럭 선택부 (180) 는 클럭 선택 신호 (CLK_SEL) , 제 1 클럭 (CLK1), 제 2 클럭 (CLK2) 및 클럭 선택부 인에이블 신호 (sel_en) 를 입력받아 내부 클럭 신호 (GCLK) 를 출력한다. 클럭 선택 신호 (CLK_SEL) 가 로우일 때, 제 1 클럭 (CLK1) 이 선택되고, 클럭 선택 신호 (CLK_SEL) 가 하이일 때, 제 2 클럭 (CLK2) 이 선택될 수도 있다. 또는, 그 반대가 될 수도 있으며, 이것은 구체적인 구현에 따라서 달라질 수 있다. 클럭 선택부 (180) 는 클럭 선택부 인에이블 신호 (sel_en) 가 하이일 경우에 동작한다. 구체적인 구현에 따라서, 클럭 선택부 인에이블 신호 (sel_en) 가 액티브 로우일 경우에 동작하도록 할 수도 있다.
글리치 제거부 (190) 는 내부 클럭 신호 (GCLK) 및 킬 신호 (kill_sig) 를 입력받아 글리치를 제거한 후에 최종 클럭 신호 (CLK) 로 출력한다. 클럭 선택 신호 (CLK_SEL) 의 변화가 시작되는 시점에서, 글리치 제거부 (190) 가 논리곱 게이트를 포함하는 경우에는 킬 신호 (kill_sig) 가 로우가 되고, 글리치 제거부 (190) 가 논리합 게이트를 포함하는 경우에는 킬 신호 (kill_sig) 가 하이가 되어, 최종 클럭 신호 (CLK) 가 변하지 않고 일정한 값을 유지하도록 한다. 따라서, 클럭 선택 신호 (CLK_SEL) 가 변하는 순간에 발생하였던 최종 클럭 신호 (CLK) 의 글리치는 제거될 것이다.
도 4 는 도 3 에 도시된 클럭 스위칭 회로의 쉬프팅부 (160) 의 개략적인 구성을 나타낸 블럭도이다.
쉬프팅부 (160) 는 클럭 선택 신호 (CLK_SEL) 및 내부 클럭 신호 (GCLK) 를 입력받아 한 클럭 딜레이 시킨 제 1 딜레이 신호 (CLK_SEL_d1) 를 출력하는 제 1 D 플리플롭 (200) , 제 1 딜레이 신호 (CLK_SEL_d1) 및 내부 클럭 신호 (GCLK) 를 입력받아 한 클럭 딜레이 시킨 제 2 딜레이 신호 (CLK_SEL_d2) 를 출력하는 제 2 D 플리플롭 (202), 제 2 딜레이 신호 (CLK_SEL_d2) 및 내부 클럭 신호 (GCLK) 를 입력받아 한 클럭 딜레이 시킨 제 3 딜레이 신호 (CLK_SEL_d3) 를 출력하는 제 3 D 플리플롭 (204) 그리고 제 3 딜레이 신호 (CLK_SEL_d3) 및 내부 클럭 신호 (GCLK) 를 입력받아 한 클럭 딜레이 시킨 제 4 딜레이 신호 (CLK_SEL_d4) 를 출력하는 제 4 D 플리플롭 (206) 을 구비한다. 이들 딜레이 신호들은 킬 신호 생성부 (170) 로 입력된다.
쉬프팅부 (160) 는 딜레이된 클럭 선택 신호를 다수개 출력하는 것에 특징이 있으므로, 플리플롭의 개수는 예시적으로 4 개로 한 것이며, 구현에 따라서 플리플롭의 개수가 달라질 수도 있다. 또한 D 플리플롭은 다양한 다른 논리 소자들 (예를 들면, 논리합 게이트, 논리곱 게이트, 배타적 논리곱 게이트, JK 플리플롭 등) 의 조합에 의하여 구성될 수 있다는 점을 당업자는 쉽게 이해할 수 있다.
도 5 는 도 3 에 도시된 클럭 스위칭 회로의 킬 신호 생성부 (170) 의 일 실 시예를 나타낸 블럭도이다.
킬 신호 생성부 (170) 는 클럭 선택 신호 (CLK_SEL) 및 제 2 딜레이 신호 (CLK_SEL_d2) 를 입력받아 클럭 선택부 인에이블 신호 (sel_en) 를 출력시키는 배타적 논리합 게이트 (302), 제 3 딜레이 신호 (CLK_SEL_d3) 및 제 4 딜레이 신호 (CLK_SEL_d4) 를 입력받아 SR 레치 리셋 신호를 출력시키는 배타적 논리합 게이트 (304) 및 클럭 선택부 인에이블 신호 (sel_en) 를 세팅 신호로 입력받고 SR 레치 리셋 신호를 입력받아 Q 를 통하여 킬 신호 (CLK_SEL) 를 출력하는 SR 래치 (300) 를 구비한다.
클럭 선택 신호 (CLK_SEL) 와 제 2 딜레이 신호 (CLK_SEL_d2) 가 서로 다를 경우에는, 클럭 선택부 인에이블 신호가 하이가 되고, 같을 경우에는, 로우가 된다. 마찬가지로 제 3 딜레이 신호 (CLK_SEL_d3) 와 제 4 딜레이 신호 (CLK_SEL_d4) 가 서로 다를 경우에는, SR 레치 리셋 신호가 하이가 되고, 같을 경우에는 로우가 된다. 따라서, 클럭 선택 신호 (CLK_SEL) 가 바뀌면, 클럭 선택 신호 (CLK_SEL) 와 제 2 딜레이 신호 (CLK_SEL_d2) 가 달라지는 순간에 SR 래치가 세팅되고, 시간이 흐른 후, 제 3 딜레이 신호 (CLK_SEL_d3) 와 제 4 딜레이 신호 (CLK_SEL_d4) 가 달라지는 순간에 SR 래치가 리셋된다. 킬 신호 (kill_sig) 는 SR 래치의 Q 를 통하여 출력되므로, SR 래치가 세팅되면 킬 신호 (kill_sig) 가 하이가 된다. 킬 신호 (kill_sig) 가 하이이면, 글리치 제거부 (190) 는 최종 클럭 신호 (CLK) 를 일정하게 유지시켜, 글리치가 발생하지 않도록 한다.
도 6 은 도 3 에 도시된 클럭 스위칭 회로의 킬 신호 생성부 (170) 의 또 다 른 실시예를 나타낸 블럭도이다. 도 5 의 실시예의 제 1 배타적 논리합 게이트 (302) 및 제 2 배타적 논리합 게이트 (304) 를 각각 두 개의 인버터, 두 개의 논리곱 게이트 및 한 개의 논리합 게이트로 구성한 것이다. 즉, 제 1 배타적 논리합 게이트 (302) 는 두 개의 논리곱 게이트 및 인버터 (400, 402) 그리고 논리합 게이트 (408) 를 구비하고, 제 2 배타적 논리합 게이트 (304) 는 두 개의 논리곱 게이트 및 인버터 (404, 406) 그리고 논리합 게이트 (410) 를 구비한다. 이와 같이, 하나의 논리 소자를 다른 형태의 논리소자로 바꾸는 것은 당업자에게 자명하다.
도 7 은 도 3 에 도시된 클럭 스위칭 회로의 클럭 선택부 (180) 의 개략적인 구성을 나타낸 블럭도이다.
클럭 선택부 (180) 는 제 1 D 플립플롭 클럭 출력부 (506), 제 1 D 플립플롭 (550), 제 2 D 플립플롭 (552) 및 먹스 (560) 를 구비한다.
제 1 D 플립플롭 클럭 출력부 (506) 는 내부 클럭 신호 (GCLK) 및 클럭 선택부 인에이블 신호 (sel_en) 를 입력받아서 클럭 선택부 인에이블 신호 (sel_en) 가 액티브 상태일 경우에만 내부클록 (GCLK) 을 제 1 D 플리플롭 클럭 신호로 출력하여 제 1 D 플리플롭 (550) 을 작동시킨다.
제 1 D 플립플롭 (550) 은 제 1 D 플리플롭 클럭 신호 및 클럭 선택 신호 (CLK_SEL) 를 입력받아 한 클럭 딜레이 시킨 후에 Q 를 통해 출력시킨다. Q 를 통해 출력된 신호를 제 2 D 플립플롭 (552) 가 입력받아 한 클럭 딜레이시킨 후에 출력한다. 따라서, 딜레이된 클럭 선택 신호 (now_source_d) 는 제 2 D 플립플 롭으로부터 Q 를 통해 출력되는 신호로서, 클럭 선택 신호 (CLK_SEL) 가 내부 클럭 신호 (GCLK) 를 기준으로 두 클럭 딜레이되는 신호이다.
먹스 (560) 는 제 1 클럭 (CLK1), 제 2 클럭 (CLK2) 및 딜레이된 클럭 선택 신호 (now_source_d) 를 입력받아서, 딜레이된 클럭 선택 신호 (now_source_d) 의 값에 따라서, 제 1 클럭 (CLK1) 또는 제 2 클럭 (CLK2) 중의 하나를 내부 클럭 신호 (GCLK) 로 출력시킨다.
내부 클럭 신호 (GCLK) 은 클럭 선택 신호 (CLK_SEL) 에 의하여 선택되는 글리치가 존재하는 클럭 신호이다. 상술하였듯이, 내부 클럭 신호 (GCLK) 는 클럭 스위칭 회로 전체의 내부 클럭으로 사용된다.
도 8a 는 도 3 에 도시된 클럭 스위칭 회로의 글리치 제거부 (190) 의 일 실시예를 나타낸 블럭도이다.
클럭 스위칭 회로가 라이징 에지에서 동작하는 경우에 이와 같은 회로 구성이 가능한다. 글리치 제거부 (190) 는 내부 클럭 신호 (GCLK) 및 킬 신호 (kill_sig) 를 인버팅한 신호를 입력받아 최종 클럭 신호 (CLK) 를 출력하는 논리곱 게이트를 구비한다. 킬 신호 (kill_sig) 가 하이가 되면, 이 신호를 인버팅시킨 신호는 로우가 되며, 논리곱 게이트의 한 쪽 입력으로 로우의 신호가 입력되므로, 내부 클럭 신호 (GCLK) 의 변화와 관계없이 최종 클럭 신호 (CLK) 는 로우가 된다. 따라서, 글리치가 생길 수 있는 클럭의 구간에서 최종 클럭 (CLK) 이 로우로 일정하게 유지됨으로써, 글리치를 제거하는 효과를 얻을 수 있다.
도 8b 는 도 3 에 도시된 클럭 스위칭 회로의 글리치 제거부 (190) 의 다른 실시예를 나타낸 블럭도이다.
클럭 스위칭 회로가 폴링 에지에서 작동하는 경우에 이와 같은 회로 구성이 가능하다. 글리치 제거부 (190) 는 내부 클럭 신호 (GCLK) 및 킬 신호 (kill_sig) 를 입력받아 최종 클럭 신호 (CLK) 를 출력하는 논리합 게이트를 구비한다. 킬 신호 (kill_sig) 가 하이가 되면, 논리합 게이트의 한 쪽 입력으로 하이의 신호가 입력되므로, 내부 클럭 신호 (GCLK) 의 변화와 관계없이 최종 클럭 신호 (CLK) 는 하이가 된다. 따라서, 글리치가 생길 수 있는 클럭의 구간에서 최종 클럭 (CLK) 이 하이로 일정하게 유지됨으로써, 글리치를 제거하는 효과를 얻을 수 있다.
도 9 는 본 발명에 따른 클럭 스위칭 회로 (GCLK) 의 입출력 신호들을 나타낸 타이밍도이다.
상술하였던 본 발명에 따른 회로의 동작과정을 도 9 를 참조하여 상세히 설명한다.
제 1 클럭 신호 (CLK1) 가 느린 클럭이고, 제 2 클럭 신호(CLK2) 가 빠른 클럭이며, 클럭 스위칭 회로는 폴링 에지에서 동작한다. 클럭 선택 신호 (CLK_SEL) 가 하이일 경우에는 제 1 클럭 신호 (CLK1) 가 최종 클럭 신호 (CLK) 로 출력되고, 로우일 경우에는 제 2 클럭 신호 (CLK2) 가 최종 클럭 신호 (CLK) 로 출력되도록 동작한다.
클럭 선택 신호 (CLK_SEL) 가 하이에서 로우로 바뀔 때, 즉 도 9 의 (가) 구간을 지난 후 (나) 구간에서, 도 4 의 쉬프팅부 (160) 의 동작은 다음과 같다. 클럭 선택 신호 (CLK_SEL) 가 한 클럭 딜레이 된 제 1 딜레이 신호 (CLK_SEL_d1) 는 한 클럭 후에 로우로 바뀌며, 마찬가지로 제 2 딜레이 신호 (CLK_SEL_d2) 는 두 클럭 후에, 제 3 딜레이 신호 (CLK_SEL_d3) 는 세 클럭 후에, 제 4 딜레이 신호 (CLK_SEL_d4) 는 네 클럭 후에 하이에서 로우로 바뀌게 된다.
도 9 의 (가) 구간에서 도 5 의 킬 신호 생성부 (170) 의 동작은 다음과 같다. 클럭 선택 신호 (CLK_SEL) 가 하이로 일정한 상태에서는 그 클럭의 딜레이된 신호들인 제 2 딜레이 신호 (CLK_SEL_d2), 제 3 딜레이 신호 (CLK_SEL_d3) 및 제 4 딜레이 신호 (CLK_SEL_d4) 가 모두 일정하게 같은 값을 갖게 되므로, SR 래치의 세팅 신호 및 리셋 신호로는 모두 로우의 신호가 입력되어 Q 신호에는 변화가 없다.
도 9 의 (나) 구간에서 클럭 선택 신호 (CLK_SEL) 가 하이에서 로우로 바뀌면, 전술하였듯이 이것의 딜레이 신호들이 순차적으로 하이에서 로우로 바뀌게 된다. 따라서, 클럭 선택 신호 (CLK_SEL) 가 로우이고, 제 2 딜레이 신호 (CLK_SEL_d2) 가 하이일 때에는 이 값을 배타적 논리합 연산한 값이 하이가 되어 SR 래치의 세팅 신호으로 들어가며, 이 신호는 클럭 선택부 인에이블 신호 (sel_en) 와도 동일하다. 이 경우 SR 래치의 Q 값은 하이가 되므로, 킬 신호 (kill_sig) 는 하이가 된다. 두 클럭이 지난 후, 클럭 선택 신호 (CLK_SEL), 제 2 딜레이 신호 (CLK_SEL_d2) 및 제 3 딜레이 신호 (CLK_SEL_d3) 가 로우가 되고, 제 4 딜레이 신호 (CLK_SEL_d4) 가 하이일 경우에는, SR 래치의 세팅 신호로는 로우가 입력되고, SR 래치의 리셋 신호로는 하이가 입력되므로, SR 래치의 Q 값 인 킬 신호 (kill_sig) 는 로우가 된다.
도 7 및 도 9 를 참조하면, 도 9의 (나) 구간에서 클럭 선택부 (180) 의 동작은 다음과 같다. 상술하였듯이 클럭 선택 신호 (CLK_SEL) 이 로우이고, 제 2 딜레이 신호 (CLK_SEL_d2) 가 하이일 때, 클럭 선택부 인에이블 신호 (sel_en) 는 하이가 된다. 이 시점에서 클럭 선택부 인에이블 신호 (sel_en) 에 의해 제 1 D 플리플롭 클럭 출력부 (506) 이 동작하므로 ,제 1 D 플립플롭 클럭 출력부 (506) 의 출력 클럭 신호는 내부 클럭 신호 (GCLK) 와 동일하게 변하게 되어, 제 1 D 플립플롭 (550) 이 동작하기 시작한다. 이 시점에서 클럭 선택 신호 (CLK_SEL) 는 로우이므로, 제 1 D 플립플롭의 Q 를 통해 로우 신호가 한 클럭이 지난 후에 출력된다. 그 다음 한 클럭이 지난 후에, 딜레이된 클럭 선택 신호 (now_source_d) 가 로우가 된다. 이에 따라, 먹스 (560) 에 의하여 내부 클럭 신호 (GCLK) 로는 제 2 클럭 신호 (CLK2) 가 출력된다.
딜레이된 클럭 선택 신호 (now_source_d) 가 하이에서 로우로 바뀌는 순간에 내부 클럭 신호 (GCLK) 에는 글리치가 발생하게 된다. 그러나, 도 5 및 도 8a 를 참조하면, 클럭 선택 신호 (CLK_SEL) 가 로우로 바뀌는 시점부터 제 3 딜레이 신호가 로우로 바뀌는 시점까지 킬 신호 (kill_sig) 가 하이가 되므로, 글리치 제거부 (190) 를 통해서 출력되는 최종 클럭 신호 (CLK) 는 상술한 시간의 구간에서 로우를 유지한다. 따라서, 이 구간에서 생기는 글리치를 제거한다는 클럭 스위칭 회로의 목적을 달성할 수 있다.
도 9 의 (다) 구간에서는, 도 5 의 제 3 딜레이 신호 (CLK_SEL_d3) 가 로우 가 되는 시점으로부터 SR 래치 (300) 가 리셋되어, 킬 신호 (kill_sig) 는 로우가 된다. 따라서, 글리치 제거부 (190) 으로부터의 출력인 최종 클럭 신호 (CLK) 는 클럭 선택부 (180) 로부터의 출력인 제 2 클럭 신호 (CLK2) 가 된다.
상술한 동작에서는 회로가 폴링 에지에서 동작하는 경우를 예로 들었으나, 라이징 에지에서 동작하도록 각 회로 소자의 구성을 바꿀 수 있다는 점은 당업자에게 자명하다.
또한 , 본 발명은 상기 실시예에 한정되지 않고, 본 발명의 기술적 요지를 벗어나지 않는 범위 내에서 다양하게 변형하여 실시할 수 있다.
상기에서 상세히 설명한 바와 같이, 본 발명은 다중 클럭을 사용하는 시스템에서 서로 다른 주파수를 갖는 두 개의 클럭에 대한 클럭 선택 신호가 바뀌는 순간을 감지하여 내부 클럭의 신호를 일시적으로 일정하게 유지시켜 최종 클럭 신호에 글리치가 발생하지 않으며, 그 전환 구간을 최소화 해준다.
또한, 종래의 클럭스위칭 회로는 대부분 딜레이 함수를 이용하는 방식이다. 이러한 딜레이 함수를 이용하는 방식에서는, 제조 공정마다, 스위칭하고자 하는 주파수마다, 그 딜레이 값을 적절히 설정해주어야 한다. 게다가, 공지기술에서는 최적화된 클럭 스위칭 회로를 구현하기 위한 구체적인 딜레이 값들에 대하여 개시하고 있지 않다.
따라서, 본 발명의 클럭스위칭 회로는 플립플롭과 조합 논리 회로만을 이용하여 구현되어 있으므로, 딜레이 함수를 이용하는 방식을 사용할 필요가 없어서, 제조 공정에 따라 발생할 수 있는 변수에 의하여 영향을 받지 않는다.

Claims (8)

  1. 주파수가 상이한 두 개의 클럭 간에 스위칭을 해주는 클럭 스위칭 회로로서,
    클럭 선택 신호 및 내부 클럭 신호를 입력받아 소정의 클럭만큼 딜레이된 하나 이상의 딜레이된 클럭 선택 신호들을 출력하는 쉬프팅부;
    상기 딜레이된 클럭 선택 신호들 및 상기 클럭 선택 신호를 입력받아 킬 신호 및 클럭 선택부 인에이블 신호를 출력하는 킬 신호 생성부;
    상기 클럭 선택 신호, 제 1 클럭 신호, 제 2 클럭 신호 및 상기 클럭 선택부 인에이블 신호를 입력받아 상기 클럭 선택 신호에 따라서 제 1 클럭 신호와 제 2 클럭 신호 중 하나를 상기 내부 클럭 신호로 출력하는 클럭 선택부; 및
    상기 내부 클럭 신호 및 상기 킬 신호를 입력받아 소정의 구간에서 일정하게 유지되는 상기 킬 신호에 의해 상기 내부 클럭 신호의 글리치를 제거하여 최종클럭 신호로 출력하는 글리치 제거부를 구비하고,
    상기 킬 신호는 클럭 선택 신호의 변화가 시작되는 시점으로부터 하나 이상의 클럭이 지난 후까지 일정한 값으로 유지되는, 클럭 스위칭 회로.
  2. 제 1 항에 있어서,
    상기 쉬프팅부는, 상기 클럭 선택 신호 및 상기 내부 클럭 신호를 입력받아 상기 내부 클럭 신호의 한 클럭 딜레이된 제 1 딜레이 신호를 출력하는 제 1 D 플리플롭 (D flip-flop) ;
    상기 제 1 딜레이 신호 및 상기 내부 클럭 신호를 입력받아 상기 제 1 딜레이 신호를 한 클럭 딜레이 시킨 제 2 딜레이 신호를 출력하는 제 2 D 플리플롭;
    상기 제 2 딜레이 신호 및 상기 내부 클럭 신호를 입력받아 상기 제 2 딜레이 신호를 한 클럭 딜레이 시킨 제 3 딜레이 신호를 출력하는 제 3 D 플리플롭; 및
    상기 제 3 딜레이 신호 및 상기 내부 클럭 신호를 입력받아 상기 제 3 딜레이 신호를 한 클럭 딜레이 시킨 제 4 딜레이 신호를 출력하는 제 4 D 플리플롭을 구비하고,
    상기 하나 이상의 딜레이된 클럭 선택 신호들은 제 2 딜레이 신호, 제 3 딜레이 신호 및 제 4 딜레이 신호를 포함하는, 클럭 스위칭 회로.
  3. 제 2 항에 있어서,
    상기 킬 신호 생성부는, 상기 클럭 선택 신호 및 상기 제 2 딜레이 신호를 입력받아 상기 클럭 선택부 인에이블 신호를 출력하는 재 1 배타적 논리합 게이트;
    상기 제 3 딜레이 신호 및 상기 제 4 딜레이 신호를 입력받아 SR 래치 (SR-latch) 리셋 신호를 출력하는 제 2 배타적 논리합 게이트; 및
    상기 클럭 선택부 인에이블 신호를 SR 래치 세팅 신호로 입력받고 상기 SR 래치 리셋 신호를 입력받아 Q 를 통해 상기 킬 신호를 출력시키는 SR 래치를 구비하는, 클럭 스위칭 회로.
  4. 제 2 항에 있어서,
    상기 킬 신호 생성부는, 상기 클럭 선택 신호 및 상기 제 2 딜레이 신호를 인버팅한 신호를 입력받아 제 1 논리곱 게이트 신호를 출력하는 제 1 논리곱 게이트;
    상기 클럭 선택 신호를 인버팅한 신호 및 상기 제 2 딜레이 신호를 입력받아 제 2 논리곱 게이트 신호를 출력하는 제 2 논리곱 게이트;
    상기 제 3 딜레이 신호 및 상기 제 4 딜레이 신호를 인버팅한 신호를 입력받아 제 3 논리곱 게이트 신호를 출력하는 제 3 논리곱 게이트;
    상기 제 3 딜레이 신호를 인버팅한 신호 및 상기 제 4 딜레이 신호를 입력받아 제 4 논리곱 게이트 신호를 출력하는 제 4 논리곱 게이트;
    상기 제 1 논리곱 게이트 신호 및 상기 제 2 논리곱 게이트 신호를 입력받아 상기 클럭 선택부 인에이블 신호를 출력하는 제 1 논리합게이트;
    상기 제 3 논리곱 게이트 신호 및 상기 제 4 논리곱 게이트 신호를 입력받아 SR 래치 리셋 신호를 출력하는 제 2 논리합게이트; 및
    상기 클럭 선택부 인에이블 신호를 SR 래치 세팅 신호로 입력받고 상기 SR 래치 리셋 신호를 상기 SR 래치 리셋 신호를 입력받아 Q 를 통해 상기 킬 신호를 출력하는 SR 래치를 구비하는, 클럭 스위칭 회로.
  5. 제 1 항에 있어서,
    상기 클럭 선택부는, 상기 내부 클럭 신호 및 상기 클럭 선택부 인에이블 신호를 입력받아 클럭 선택부가 인에이블 상태일 경우에만 상기 내부 클럭 신호를 제 1 D 플리플롭 클럭 신호로 출력하는 제 1 D 플리플롭 클럭 출력부;
    상기 제 1 D 플리플롭 클럭 신호 및 상기 클럭 선택 신호를 입력받아 상기 클럭 선택 신호를 한 클럭 딜레이 시켜서 제 1 D 플리플롭 출력 신호를 Q 를 통해 출력하는 제 1 D 플리플롭;
    상기 제 1 D 플리플롭 출력 신호 및 상기 내부 클럭 신호를 입력받아 한 클럭 딜레이 시켜서 딜레이된 클럭 선택 신호를 Q 를 통해 출력하는 제 2 D 플리플롭; 및
    상기 제 1 클럭 신호, 상기 제 2 클럭 신호 및 상기 딜레이된 클럭 선택 신호를 입력받아 상기 딜레이된 클럭 선택 신호에 따라 상기 제 1 클럭 신호 또는 상기 제 2 클럭 신호 중의 하나를 상기 내부 클럭 신호로 출력시키는 먹스를 구비하는, 클럭 스위칭 회로.
  6. 제 5 항에 있어서,
    상기 제 1 D 플리플롭 클럭 출력부는, 상기 내부 클럭 신호 및 상기 클럭 선택부 인에이블 신호를 인버팅한 신호를 입력받아 제 1 D 플리플롭 클럭 신호를 출력하는 논리합 게이트를 구비하는, 클럭 스위칭 회로.
  7. 제 1 항에 있어서,
    상기 글리치 제거부는 상기 내부 클럭 신호 및 상기 킬 신호를 인버팅한 신호를 입력받아 상기 최종 클럭 신호를 출력하는 논리곱 게이트를 구비하는, 클럭 스위칭 회로.
  8. 제 1 항에 있어서,
    상기 글리치 제거부는 상기 내부 클럭 신호 및 상기 킬 신호를 입력받아 상기 최종 클럭 신호를 출력하는 논리합 게이트를 구비하는, 클럭 스위칭 회로.
KR1020070048685A 2007-05-18 2007-05-18 클럭 스위칭 회로 KR20080101495A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070048685A KR20080101495A (ko) 2007-05-18 2007-05-18 클럭 스위칭 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070048685A KR20080101495A (ko) 2007-05-18 2007-05-18 클럭 스위칭 회로

Publications (1)

Publication Number Publication Date
KR20080101495A true KR20080101495A (ko) 2008-11-21

Family

ID=40287751

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070048685A KR20080101495A (ko) 2007-05-18 2007-05-18 클럭 스위칭 회로

Country Status (1)

Country Link
KR (1) KR20080101495A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176504A (zh) * 2011-12-26 2013-06-26 国民技术股份有限公司 一种多时钟切换电路
KR20150062944A (ko) * 2013-11-29 2015-06-08 유니버시티 오브 미시간 진성 난수 생성기
US9720438B2 (en) 2014-08-06 2017-08-01 Samsung Electronics Co., Ltd. Clock switch device and system-on-chip having the same
CN113381754A (zh) * 2020-03-10 2021-09-10 意法半导体国际有限公司 用于芯片复位架构的时钟延迟电路
US20210286417A1 (en) * 2020-03-10 2021-09-16 Stmicroelectronics International N.V. Clock delay circuit for chip reset architecture
US20230073160A1 (en) * 2021-09-09 2023-03-09 SK Hynix Inc. Clock generating device, controller, and storage device
CN117200765A (zh) * 2023-11-06 2023-12-08 灿芯半导体(成都)有限公司 一种消除毛刺的时钟选择电路

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176504A (zh) * 2011-12-26 2013-06-26 国民技术股份有限公司 一种多时钟切换电路
KR20150062944A (ko) * 2013-11-29 2015-06-08 유니버시티 오브 미시간 진성 난수 생성기
US9720438B2 (en) 2014-08-06 2017-08-01 Samsung Electronics Co., Ltd. Clock switch device and system-on-chip having the same
CN113381754A (zh) * 2020-03-10 2021-09-10 意法半导体国际有限公司 用于芯片复位架构的时钟延迟电路
US20210286417A1 (en) * 2020-03-10 2021-09-16 Stmicroelectronics International N.V. Clock delay circuit for chip reset architecture
US12055989B2 (en) * 2020-03-10 2024-08-06 Stmicroelectronics International N.V. Clock delay circuit for chip reset architecture
US20230073160A1 (en) * 2021-09-09 2023-03-09 SK Hynix Inc. Clock generating device, controller, and storage device
CN117200765A (zh) * 2023-11-06 2023-12-08 灿芯半导体(成都)有限公司 一种消除毛刺的时钟选择电路
CN117200765B (zh) * 2023-11-06 2024-01-23 灿芯半导体(成都)有限公司 一种消除毛刺的时钟选择电路

Similar Documents

Publication Publication Date Title
US8558579B2 (en) Digital glitch filter
US6335696B1 (en) Parallel-serial conversion circuit
KR20080101495A (ko) 클럭 스위칭 회로
CN101592975B (zh) 一种时钟切换电路
US7046047B2 (en) Clock switching circuit
JP2002289776A (ja) 半導体装置
JP4451355B2 (ja) グリッチを誘発しないクロックスイッチング回路
US20020174374A1 (en) High speed phase selector
US7007186B1 (en) Systems and methods for synchronizing a signal across multiple clock domains in an integrated circuit
US8841954B2 (en) Input signal processing device
US6456146B1 (en) System and method for multiplexing clocking signals
US5448192A (en) Data processing circuit including a plurality of serially clocked sub-circuits
US7400178B2 (en) Data output clock selection circuit for quad-data rate interface
JP7031936B2 (ja) メタステーブル回避型同期化回路およびメタステーブル回避方法
US20040095166A1 (en) Clock switching circuit
US6075398A (en) Tunable digital oscillator circuit and method for producing clock signals of different frequencies
US8890594B1 (en) System for functional reset across multiple clock domains
JP2008283248A (ja) ホールドフリーレジスタセル
US7555083B2 (en) Synchronizing circuit for stably generating an output signal
JP2005109955A (ja) 非同期通信回路
JP2737607B2 (ja) クロック切替回路
US7253673B2 (en) Multi-phase clock generator and generating method for network controller
KR100244430B1 (ko) 반도체 칩의 테스트 회로
KR100437833B1 (ko) 클럭신호 스위치 회로
CN117411465A (zh) 一种时钟切换电路、芯片及电子设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application