KR101687137B1 - 클락 신호의 스큐를 검출하는 방법 및 장치 - Google Patents

클락 신호의 스큐를 검출하는 방법 및 장치 Download PDF

Info

Publication number
KR101687137B1
KR101687137B1 KR1020160065230A KR20160065230A KR101687137B1 KR 101687137 B1 KR101687137 B1 KR 101687137B1 KR 1020160065230 A KR1020160065230 A KR 1020160065230A KR 20160065230 A KR20160065230 A KR 20160065230A KR 101687137 B1 KR101687137 B1 KR 101687137B1
Authority
KR
South Korea
Prior art keywords
clock signal
clock
skew
detecting
input
Prior art date
Application number
KR1020160065230A
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 KR1020160065230A priority Critical patent/KR101687137B1/ko
Application granted granted Critical
Publication of KR101687137B1 publication Critical patent/KR101687137B1/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
    • 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
    • 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/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/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • H03K5/26Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being duration, interval, position, frequency, or sequence

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

클락 신호의 스큐 검출 방법 및 장치가 제시된다. 본 발명에서 제안하는 클락 신호의 스큐 검출 장치는 인버터가 포함된 다이내믹를 기반으로 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 클락 스큐 검출부, 상기 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 기반으로 클락 스큐 정보를 저장하는 데이터 저장부, XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교하는 클락 스큐 비교부를 포함한다.

Description

클락 신호의 스큐를 검출하는 방법 및 장치{Method and Apparatus for Clock Signal Skew Detection}
본 발명은 클락(Clock)이 사용되는 반도체 산업에 응용되는 분야에 관한 것으로, 특히 CMOS 기법을 이용하여 고속 AP 칩(chip), CPU를 제조하는 분야에서 반드시 필요로 하는 클락 신호 분배 시스템(clock signal distributing system)의 클락 스큐(clock skew)에 관한 것이며, 클락 스큐뿐만 아니라 모든 신호의 타이밍 매칭(timing matching) 정보의 검출 방법 및 장치에 관한 것이다.
최근 반도체 산업 전반에 걸쳐서 휴대용 전자기기를 비롯하여 마이크로 컴퓨터에 이르기까지 전자기기의 종류 및 사용량이 증대 되고 있다. 이에 따라 IP 칩(chip)내부에는 필수적으로 클락이 분배(distribute)되어 있으며, 이 분배된 클락 신호(clock signal)는 동시에 칩(chip) 내부의 모든 플립-플롭(flip-flop)에 공급 되어야 하지만 수 많은 플립-플롭(flip-flop)이 분포되어 있는 각기 다른 로딩(loading)과 위치 상황이기 때문에, 동시에 어느 곳에서나 클락 스큐(clock skew)가 제로(zero)가 되도록 공급하기는 불가능 하다.
이러한 문제점을 해결하기 위해 최근 메쉬 스타일(mesh style)의 클락 분배 시스템(clock distribution system)이 초고속 모바일(mobile) CPU 칩에 이용되기 시작 했으며 이로 인해 클락 스큐 문제가 상당 부분 해결 되고 있다. 그러나 이러한 방법에서 하나의 메쉬를 전체 칩 영역에 구성하면 클락이 동작(operating)할 때 마다 칩의 모든 영역에 분포되어 있는 클락 메탈 라인(clock metal line)과 드라이버(driver)들이 모두 충전(charge) 및 방전(discharge) 동작을 하여 많은 전력 소모를 유발 시킨다. 이로 인해 메쉬 스타일(mesh style)의 클락 네트워크(clock network)를 필요 부분으로 여러 개 분할하여 만들 필요가 있고, 이 경우 전력 소모를 적절히 감소 시킬 수 있지만 블록(block) 사이에 클락 스큐가 방생하는 문제가 있다.
블록 간 클락 스큐가 충분히 작아 칩 동작에 문제가 없다면 블록 사이의 신호가 자유롭게 통신할 수 있지만, 일정량 이상 스큐가 증가하면 이를 검출하여 조절하는 장치가 필요하게 된다. 이 때 필수적인 핵심 장치가 클락 또는 신호들의 스큐와 방향을 검출해내는 기술이며, 본 발명이 이를 간편하면서도 효율적으로 해결하고 있다.
본 발명이 이루고자 하는 기술적 과제는 클락 신호 간 또는 이외의 다양한 신호 간의 딜레이(delay) 선후의 차이가 있는지, 어떤 신호가 느린지 빠른지를 검출하고, 여러 개로 분리된 메쉬 스타일의 클락 네트워크간에 발생한 스큐의 보정에 이용될 수 있도록 스큐의 양과 선후관계의 정보를 검출하는 방법 및 장치를 제공하는데 있다. 이때 디지털 회로를 이용하여 단순하고 간편하면서도 미세한 차이까지 안정되게 검출 하는 회로를 제안하고자 한다.
일 측면에 있어서, 본 발명에서 제안하는 클락 신호의 스큐 검출 장치는 인버터가 포함된 다이내믹를 기반으로 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 클락 스큐 검출부, 상기 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 기반으로 클락 스큐 정보를 저장하는 데이터 저장부, XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교하는 클락 스큐 비교부를 포함한다.
상기 클락 스큐 검출부는 두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성한다.
상기 클락 스큐 비교부는 XOR 게이트 및 2개의 AND 게이트를 포함하고, 데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출하고, 데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하여 비교 결과를 출력한다.
또 다른 일 측면에 있어서, 본 발명에서 제안하는 클락 신호의 스큐 검출 방법은 인버터가 포함된 다이내믹 회로를 일반적 상용 방식인 NMOS 스택 방식이 아닌 PMOS 스택 기반으로 하는 클락 스큐 검출부를 통해 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 단계, 데이터 저장부를 통해 상기 검출된 클락 신호의 스큐 정보들을 저장하는 단계, XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 하는 클락 스큐 비교부를 통해 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교하는 단계를 포함한다.
상기 인버터가 포함된 다이내믹 회로를 기반으로 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 단계는 두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성한다.
상기 XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교하는 단계는 데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출하고, 데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하여 비교 결과를 출력한다.
본 발명의 실시예들에 따르면 제안하는 클락 신호의 스큐를 검출하는 방법 및 장치는 최근 고성능 모바일 CPU 칩에 적용되고 있는 다양한 메쉬 스타일의 클락 분배에서 발생하는 사이드 문제(side problem)를 보완 및 해결해 주는 회로에 관한 것으로서 점점 더 복잡해지는 유사 문제의 해결을 위해서도 필수적인 기본 회로라고 판단 된다. 각각 분리된 메쉬 클락 분배(mesh clock distribution) 구조뿐만 아니라 구조적으로 연결되어 있으나 신호들의 스큐 발생 여부를 확인할 때 유용하게 이용 할 수 있으므로 신호의 선후 관계가 이슈가 되는 반도체 산업 전반에 다양한 용도로 쓰임이 예상된다.
도 1은 본 발명의 일 실시예에 따른 클락 신호의 스큐 검출 회로의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 제1 클락 신호 및 제2 클락 신호 간의 스큐 발생시 타이밍 동작을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 클락 신호의 스큐 검출 방법을 설명하기 위한 흐름도이다.
본 발명의 실시예들은 반도체 CMOS 기법의 칩 개발에 있어서 클락 신호(clock signal)의 스큐(skew)를 검출하는 장치로서, 인버터(inverter)와 다이내믹 회로(dynamic circuit)을 이용한 클락 스큐(clock skew) 검출부, 딜레이 블록(delay block), 인버터(inverter), 플립-플롭(flip-flop)을 이용한 데이터 저장부, XOR 게이트, NAND 게이트를 이용한 클락 스큐(clock skew) 비교부의 구조를 포함하는 클락 신호의 스큐를 검출하는 장치 및 방법에 관한 것이다.
본 발명의 실시예에서는 특별히 클락 신호의 스큐 만을 언급하여 설명하지만 클락 신호뿐만 아니라 스큐 검출이 필요한 모든 신호에 적용될 수 있으며, CMOS 기법을 이용하여 회로도가 구성되고 설명되고 있으나 다른 기법을 이용하여 본 발명의 기술이 동일하게 적용 될 수 있다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 클락 신호의 스큐 검출 회로의 구성을 나타내는 도면이다.
제안하는 클락 신호의 스큐 검출 회로는 클락 스큐 검출부(110), 데이터 저장부(120), 클락 스큐 비교부(130)를 포함한다.
클락 스큐 검출부(110)는 인버터가 포함된 다이내믹 회로를 기반으로 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출한다.
클락 스큐 검출부(110)는 두 개의 클락 신호, 제1 클락(clock1), 제2 클락(clock2)을 입력으로 받아, 입력된 입력 신호(input signal)들 사이에 스큐가 발생하는지 여부를 디지털 신호의 형태로 나타나도록 한다. 클락 스큐 검출부(110)는 두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성한다.
클락 스큐 검출부(110)는 입력으로 들어온 두 신호들을 다이내믹 회로의 입력에 인가하고 한번 스큐가 발생하여 검출되면 다이내믹 회로 특성상 다음 주기의 클락이 인가 되기 전까지 안정되게 계산한 값을 유지한다. 도 1을 참조하면, 다이내믹 회로가 NMOS 방전(discharge) 형태로 구성되어 있지만 PMOS 충전(charge) 형태로 구성 되어도 동일한 기술이 적용 될 수 있다. 입력으로 들어온 두 신호들, 제1 클락(clock1), 제2 클락(clock2) 중 하나의 신호를 반전(inverting)하여 다이내믹 NAND 기능(function)의 회로에 인가하면, 두 신호들이 동시에 입력되어 스큐가 없는 경우 n1 노드가 방전되지 않기 때문에 하이(high) 값으로 기존 값을 유지하게 된다. 그리고 같은 현상이 n2 노드에도 발생하여 기존 하이(high) 값을 갖는 동작(operation)을 한다. n1 노드와 n2 노드 사이에 있는 인버터는 필요에 따라 생략 할 수도 있고 더 추가할 수도 있다. 인버터가 있는 경우, 다이내믹 노드의 불안정 특성을 안정한 로직 레벨(logic level)로 개선함으로써 더욱 안정한 회로로 동작할 수 있다. 반면에, 인버터가 지나치게 많이 삽입되면 자체 영역 전력(area power)이 증가할 뿐만 아니라 플립-플롭 클락 포트에 인가되는 딜레이 블록(delay block)의 사이즈도 증가 되어야 하므로 바람직하지 않다.
클락 스큐 검출부(110)에서, 인버터를 통과한 클락 신호는 다이내믹 회로 스택(dynamic circuit stack)의 상단 입력에 연결되어 있다. 이것은 스큐 검출 시 비교하는 신호들 간의 유격차이가 실제 인버터 하나의 스테이지만큼 있기 때문에 이를 최소화 하기 위한 것이다. 다시 말해, 신호 입력이 상단에 연결되었을 때 다이내믹 회로의 인-아웃 딜레이(in-out delay)가 더 빨리 반응 할 수 있기 때문이다. 하지만, 상황에 따라 위치를 변경하여 이용 할 수도 있다. 인버터의 존재가 스큐 검출의 결과값에 영향을 미칠 수도 있지만, 두 곳 모두에서 똑 같은 형태를 이용하기 때문에 XOR 게이트 회로를 이용하여 검출할 시에는 결국 인버터 딜레이 문제가 해결되도록 설계 되어 있다. 이러한 이유로 아래 위 두 개로 이루어진 스큐 검출 회로는 동일한 구성, 동일한 사이즈, 동일한 레이아웃 형태로 이루어져서 공정 변수(process variation)가 발생하는 상황에서도 미스매치(mismatch)가 최소화 되도록 구성한다. 클락 사이클 타임(Clock cycle time)이 클 경우에는 다이내믹 회로의 데이터 값이 사라질 수 있으므로 도미노 회로(domino circuit) 형태로 만들어 계산된 로직 값을 보존해야 한다.
데이터 저장부(120)는 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 이용하여 클락 스큐 정보를 저장한다. 데이터 저장부(120)는 앞서 설명한 클락 스큐 검출부(110)와 마찬가지로 두 부분의 회로로 구성되어 있으며, 각각의 회로에는 입력으로 들어온 디지털 로직 값을 저장하기 위한 딜레이 블록과 플립-플롭으로 만들어진 구조이다.
데이터 저장부(120)는 클락 스큐 검출부(110)에서 만들어진 로직 값을 플립-플롭에 저장하여 한 클락 사이클 타임(clock cycle time) 동안 안정되게 저장하는 기능을 한다. 클락 딜레이 부분(clock delay part)과 플립-플롭으로 구성되며 클락 딜레이 파트는 내장된 플립-플롭의 셋업 타임을 고려하여 입력 데이터를 충분히 캐치(catch)할 수 있는 정도의 딜레이 값을 생성하는 회로로 구성되어 있다. 보통 인버터 4 스테이지로 이루어지며 셋업 타임이 큰 플립-플롭이 내장되었을 경우에는 스테이지의 단수를 증가 시킨다.
데이터 저장부(120)에 이용되는 플립-플롭은 동일한 셀을 사용하여 두 신호 간 미스매치에 의한 오류를 방지한다. 스큐 검출 로직 값은 클락이 상승할 때 검출되어 다이내믹 회로에 결과 값이 생성되고 클락이 하강할 때 플립-플롭에 안정되게 저장되도록 회로가 구성되어 있다. 이를 위해 클락의 하강 신호가 플립-플롭에 인가 되도록 클락이 반전된 부분에서 클락 신호를 연결하여 클락 딜레이 신호를 생성한다. 경우에 따라서는 클락 신호 상승 타임에 데이터를 캡쳐 할 수도 있다. 이때는 클락 딜레이 블록의 딜레이 값이 플립-플롭 동작에 직접영향을 주므로 안정된 값이 되도록 설정해준다.
클락 스큐 비교부(130)는 XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교한다. 클락 스큐 비교부(130)는 XOR 게이트 및 2개의 AND 게이트를 포함하고, 데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출하고, 데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하여 비교 결과를 출력한다.
클락 스큐 비교부(130)는 클락 스큐 데이터가 저장된 각각의 플립-플롭의 출력 값을 비교하여 스큐가 발생의 결과를 로직 값으로 알 수 있게 하기 위해, NAND 게이트와 XOR 게이트로 만들어진 구조이다.
클락 스큐 비교부(130)는 입력으로 들어오는 신호들이 플립-플롭의 출력으로서 안정된 디지털 신호이므로 타이밍에 상대적으로 덜 민감한 부분이다. XOR 게이트와 두 개의 AND 게이트로 이루어져 있으며, 먼저 두 개의 결과를 XOR 게이트로 검출하고 어느 쪽의 클락이 빠른 위상(early phase) 인지를 계산하기 위해 AND 게이트를 이용하여 계산하도록 구성한다. 만일 제1 클락 신호가 일찍 도착하면 early1 신호가 하이를 생성하도록 설계되어 있다. 이 부분은 용도에 따라 회로 구성이나 출력 값을 수정하여 구성할 수도 있다.
도 2는 본 발명의 일 실시예에 따른 제1 클락 신호 및 제2 클락 신호 간의 스큐 발생시 타이밍 동작을 나타내는 도면이다.
도 2의 case1은, 도 1에서 제1 클락 신호(clock1)와 제2 클락 신호(colck2) 사이에 스큐가 발생 할 때 나타나는 타이밍도 이다. 도 1의 회로 동작에서 Clk1 신호 대비 Clk2 신호의 도착이 늦을 경우, Clk1 신호가 도착하여 하이 값이 인가 되었을 때 Clk2 신호는 아직 로우 값을 유지 하고 있기 때문에 n2 노드 아래 두 스택 트랜지스터가 턴 온 상태가 되어 제로(zero)로 방전된다. 다이내믹 회로이므로 한번 방전되면 다음 클락 로우 레벨에서 프리차지(precharge) 되기 전 까지 이 값을 유지하게 되고, 이 값은 인버터를 통하여 n3로 전달되어 FF1에 저장 된다. 반면에, n6 노드 아래 두 스택 트랜지스터에서는 Clk2 신호가 제로 값을 유지하고 있는 동안 Clk1 신호가 하이로 변하기 때문에 인버터를 통해 인가 되는 값이 제로가 되어 n6 노드가 방전되는 상황을 막고, n6 노드는 하이, 인버터를 통한 n7 노드는 로우 값을 갖게 하여 그 값을 FF2에 저장하게 한다. 이러한 동작 결과는 한 클락 사이클 동안 Early1 포트 출력은 high 값을 Early2 port 출력은 low 값을 나타내고, 외부에서 원하는 후속 조치를 할 수 있게 한다. 도2의 case2는 위에서 설명한 반대 상황(다시 말해, Clk2 신호 대비 Clk1 신호의 도착이 늦을 경우)을 타이밍도로 나타내고 있다.
도 3은 본 발명의 일 실시예에 따른 클락 신호의 스큐 검출 방법을 설명하기 위한 흐름도이다.
클락 신호의 스큐 검출 방법은 인버터가 포함된 다이내믹 회로를 기반으로 하는 클락 스큐 검출부를 통해 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 단계(310), 데이터 저장부를 통해 상기 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 기반으로 클락 스큐 정보를 저장하는 단계(320), XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 하는 클락 스큐 비교부를 통해 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교하는 단계(330)를 포함한다.
단계(310)에서, 인버터가 포함된 다이내믹 회로를 기반으로 하는 클락 스큐 검출부를 통해 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출한다. 두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성한다.
클락 스큐 검출부는 입력으로 들어온 두 신호들을 다이내믹 회로의 입력에 인가하고 한번 스큐가 발생하여 검출되면 다이내믹 회로 특성상 다음 주기의 클락이 인가 되기 전까지 안정되게 계산한 값을 유지한다. 도 1을 참조하면, 다이내믹 회로가 NMOS 방전(discharge) 형태로 구성되어 있지만 PMOS 충전(charge) 형태로 구성 되어도 동일한 기술이 적용 될 수 있다. 입력으로 들어온 두 신호들, 제1 클락(clock1), 제2 클락(clock2) 중 하나의 신호를 반전(inverting)하여 다이내믹 NAND 기능(function)의 회로에 인가하면, 두 신호들이 동시에 입력되어 스큐가 없는 경우 n1 노드가 방전되지 않기 때문에 하이(high) 값으로 기존 값을 유지하게 된다. 그리고 같은 현상이 n2 노드에도 발생하여 기존 하이(high) 값을 갖는 동작(operation)을 한다. n1 노드와 n2 노드 사이에 있는 인버터는 필요에 따라 생략 할 수도 있고 더 추가할 수도 있다. 인버터가 있는 경우, 다이내믹 노드의 불안정 특성을 안정한 로직 레벨(logic level)로 개선함으로써 더욱 안정한 회로로 동작할 수 있다. 반면에, 인버터가 지나치게 많이 삽입되면 자체 영역 전력(area power)이 증가할 뿐만 아니라 플립-플롭 클락 포트에 인가되는 딜레이 블록(delay block)의 사이즈도 증가 되어야 하므로 바람직하지 않다.
클락 스큐 검출부에서, 인버터를 통과한 클락 신호는 다이내믹 회로 스택(dynamic circuit stack)의 상단 입력에 연결되어 있다. 이것은 스큐 검출 시 비교하는 신호들 간의 유격차이가 실제 인버터 하나의 스테이지만큼 있기 때문에 이를 최소화 하기 위한 것이다. 다시 말해, 신호 입력이 상단에 연결되었을 때 다이내믹 회로의 인-아웃 딜레이(in-out delay)가 더 빨리 반응 할 수 있기 때문이다. 하지만, 상황에 따라 위치를 변경하여 이용 할 수도 있다. 인버터의 존재가 스큐 검출의 결과값에 영향을 미칠 수도 있지만, 두 곳 모두에서 똑 같은 형태를 이용하기 때문에 XOR 게이트 회로를 이용하여 검출할 시에는 결국 인버터 딜레이 문제가 해결되도록 설계 되어 있다. 이러한 이유로 아래 위 두 개로 이루어진 스큐 검출 회로는 동일한 구성, 동일한 사이즈, 동일한 레이아웃 형태로 이루어져서 공정 변수(process variation)가 발생하는 상황에서도 미스매치(mismatch)가 최소화 되도록 구성한다. 클락 사이클 타임(Clock cycle time)이 클 경우에는 다이내믹 회로의 데이터 값이 사라질 수 있으므로 도미노 회로(domino circuit) 형태로 만들어 계산된 로직 값을 보존해야 한다.
단계(320)에서, 데이터 저장부를 통해 상기 검출된 클락 신호의 스큐들을 동시에 입력 받아 AND 게이트를 이용하여 입력 받은 클락 신호의 스큐들을 계산하고 정보를 저장한다.
데이터 저장부는 클락 스큐 검출부에서 만들어진 로직 값을 플립-플롭에 저장하여 한 클락 사이클 타임(clock cycle time) 동안 안정되게 저장하는 기능을 한다. 클락 딜레이 부분(clock delay part)과 플립-플롭으로 구성되며 클락 딜레이 파트는 내장된 플립-플롭의 셋업 타임을 고려하여 입력 데이터를 충분히 캐치(catch)할 수 있는 정도의 딜레이 값을 생성하는 회로로 구성되어 있다. 보통 인버터 4 스테이지로 이루어지며 셋업 타임이 큰 플립-플롭이 내장되었을 경우에는 스테이지의 단수를 증가 시킨다.
데이터 저장부에 이용되는 플립-플롭은 동일한 셀을 사용하여 두 신호 간 미스매치에 의한 오류를 방지한다. 스큐 검출 로직 값은 클락이 상승할 때 검출되어 다이내믹 회로에 결과 값이 생성되고 클락이 하강할 때 플립-플롭에 안정되게 저장되도록 회로가 구성되어 있다. 이를 위해 클락의 하강 신호가 플립-플롭에 인가 되도록 클락이 반전된 부분에서 클락 신호를 연결하여 클락 딜레이 신호를 생성한다. 경우에 따라서는 클락 신호 상승 타임에 데이터를 캡쳐 할 수도 있다. 이때는 클락 딜레이 블록의 딜레이 값이 플립-플롭 동작에 직접영향을 주므로 안정된 값이 되도록 설정해준다.
단계(330)에서, XOR 게이트, AND 게이트 또는 NAND 게이트를 기반으로 하는 클락 스큐 비교부를 통해 제1 클락 신호 및 제2 클락 신호 간에 상대적으로 검출된 스큐 정보를 상호 비교한다. 데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출한다. 데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하여 비교 결과를 출력한다.
클락 스큐 비교부는 먼저 두 개의 결과를 XOR 게이트로 검출하고 어느 쪽의 클락이 빠른 위상(early phase) 인지를 계산하기 위해 AND 게이트를 이용하여 계산하도록 구성한다. 만일 제1 클락 신호가 일찍 도착하면 early1 신호가 하이를 생성하도록 설계되어 있다. 이 부분은 용도에 따라 회로 구성이나 출력 값을 수정하여 구성할 수도 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.  또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다.  이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.  예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다.  또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.  소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다.  소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.  상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.  프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.  상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (6)

  1. 클락 신호의 스큐 검출 장치에 있어서,
    인버터가 포함된 다이내믹 회로의 구성을 기반으로 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 클락 스큐 검출부;
    상기 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 기반으로 클락 스큐 정보를 저장하는 데이터 저장부; 및
    상기 데이터 저장부에 저장된 클락 스큐 정보를 이용하여, 제1 클락 신호 및 제2 클락 신호 간의 클락 스큐 정보를 비교하는 클락 스큐 비교부
    를 포함하고,
    상기 클락 스큐 검출부는,
    공정 변수에 의한 미스매치를 최소화하기 위해 동일한 구성, 동일한 사이즈, 동일한 레이아웃 형태를 갖는 아래 위 두 개로 이루어진 대칭구조이며, 클락 사이클 타임이 클 경우, 도미노 회로 형태를 통해 계산된 로직 값을 보존하고,
    두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성하고,
    상기 클락 스큐 비교부는,
    XOR 게이트 및 2개의 AND 게이트를 포함하고,
    데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출하고,
    데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하고 비교 결과를 출력하여,
    메쉬 스타일의 클락 분배에서 발생하는 사이드 문제를 보완 및 해결하기 위해 제1 클락 신호 및 제2 클락 신호 간의 딜레이(delay) 선후의 차이 및 클락 스큐 정보를 제1 클락 신호와 제2 클락 신호를 사용하고 있는 각각 분리된 메쉬 클락 네트워크 간에 발생한 스큐의 보정에 이용하는
    클락 신호의 스큐 검출 장치.
  2. 삭제
  3. 삭제
  4. 클락 스큐 검출부, 데이터 저장부 및 클락 스큐 비교부를 포함하는 클락 신호의 스큐 검출 장치의 동작 방법에 있어서,
    인버터가 포함된 다이내믹 회로의 구성을 기반으로 하는 상기 클락 스큐 검출부를 통해 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 단계;
    상기 클락 스큐 검출부를 통해 검출된 클락 신호의 스큐들을 입력 받아 클락 딜레이 부분(clock delay part)과 플립-플롭을 기반으로 클락 스큐 정보를 저장하는 단계; 및
    상기 데이터 저장부에 저장된 클락 스큐 정보를 이용하여, 상기 클락 스큐 비교부를 통해 제1 클락 신호 및 제2 클락 신호 간의 클락 스큐 정보를 비교하는 단계를 포함하고,
    상기 클락 스큐 검출부를 통해 제1 클락 신호의 입력과 제2 클락 신호의 입력 간의 클락 신호의 스큐들을 검출하는 단계는,
    두 개의 입력 포트에서 입력된 제1 클락 신호 및 제2 클락 신호의 도착 시간을 동일한 회로 구조를 이용하여 비교하고, 다이내믹 회로를 이용하여 제1 클락 신호 및 제2 클락 신호의 도착 시간이 동일한지 여부와 스큐가 발생하는지 여부에 따라 디지털 로직 값을 생성하고, 상기 클락 스큐 검출부는 공정 변수에 의한 미스매치를 최소화하기 위해 동일한 구성, 동일한 사이즈, 동일한 레이아웃 형태를 갖는 아래 위 두 개로 이루어진 대칭구조이며, 클락 사이클 타임이 클 경우, 도미노 회로 형태를 통해 계산된 로직 값을 보존하고,
    상기 클락 스큐 비교부를 통해 제1 클락 신호 및 제2 클락 신호 간의 클락 스큐 정보를 비교하는 단계는,
    데이터 저장부에 저장된 디지털 로직 값을 이용하여 XOR 게이트를 통해 제1 클락 신호 및 제2 클락 신호 간에 스큐가 발생 했는지 여부를 비교 및 검출하고,
    데이터 저장부에 저장된 디지털 로직 값을 이용하여 2개의 AND 게이트를 통해 제1 클락 신호 및 제2 클락 신호 중 어떤 클락 신호가 빠르거나 느린지를 비교하고 비교 결과를 출력하여,
    메쉬 스타일의 클락 분배에서 발생하는 사이드 문제를 보완 및 해결하기 위해 제1 클락 신호 및 제2 클락 신호 간의 딜레이(delay) 선후의 차이 및 클락 스큐 정보를 제1 클락 신호와 제2 클락 신호를 사용하고 있는 각각 분리된 메쉬 클락 네트워크 간에 발생한 스큐의 보정에 이용하는
    클락 신호의 스큐 검출 방법.
  5. 삭제
  6. 삭제
KR1020160065230A 2016-05-27 2016-05-27 클락 신호의 스큐를 검출하는 방법 및 장치 KR101687137B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160065230A KR101687137B1 (ko) 2016-05-27 2016-05-27 클락 신호의 스큐를 검출하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160065230A KR101687137B1 (ko) 2016-05-27 2016-05-27 클락 신호의 스큐를 검출하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101687137B1 true KR101687137B1 (ko) 2016-12-15

Family

ID=57572076

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160065230A KR101687137B1 (ko) 2016-05-27 2016-05-27 클락 신호의 스큐를 검출하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101687137B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339296A (ja) * 2000-05-26 2001-12-07 Oki Electric Ind Co Ltd 位相比較器
KR100837278B1 (ko) * 2007-02-27 2008-06-11 삼성전자주식회사 클럭 스큐 컨트롤러 및 그것을 포함하는 집적 회로

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339296A (ja) * 2000-05-26 2001-12-07 Oki Electric Ind Co Ltd 位相比較器
KR100837278B1 (ko) * 2007-02-27 2008-06-11 삼성전자주식회사 클럭 스큐 컨트롤러 및 그것을 포함하는 집적 회로

Similar Documents

Publication Publication Date Title
US11948652B2 (en) Formal verification tool to verify hardware design of memory unit
US7622961B2 (en) Method and apparatus for late timing transition detection
US8495440B2 (en) Fully programmable parallel PRBS generator
KR101711263B1 (ko) 가변 지연 라인 유닛을 갖는 지연 라인 회로
KR101887319B1 (ko) 전용 회로 및 메모리를 제어하기 위한 동적 마진 튜닝
US7911221B2 (en) Semiconductor device with speed performance measurement
US9977845B2 (en) Method of performing static timing analysis for an integrated circuit
US9989588B2 (en) Clock jitter measurement circuit and semiconductor device including the same
US8897083B1 (en) Memory interface circuitry with data strobe signal sharing capabilities
KR101773490B1 (ko) 데이터-의존 회로 경로 응답들을 이용하는 고유하고 복제불가한 플랫폼 식별자들
US8917128B1 (en) Phase determination circuit and delay locked loop circuit using the same
US8539413B1 (en) Frequency optimization using useful skew timing
US10831959B2 (en) Embedded FPGA timing sign-off
US9264050B2 (en) Apparatuses and methods for delaying signals using a delay line with homogenous architecture and integrated measure initialization circuitry
Eisenhardt et al. Spatial and temporal data path remapping for fault-tolerant coarse-grained reconfigurable architectures
US9087570B2 (en) Apparatuses and methods for controlling a clock signal provided to a clock tree
KR101687137B1 (ko) 클락 신호의 스큐를 검출하는 방법 및 장치
WO2023071651A1 (zh) 电路调整方法、装置、电子设备、存储介质及电路
US9479151B2 (en) Apparatuses and methods for controlling delay circuits during an idle state to reduce degradation of an electrical characteristic
US9823688B2 (en) Level balanced clock tree
US20150187438A1 (en) Semiconductor memory apparatus and test method using the same
KR101714984B1 (ko) 지역적 셀프 리셋팅 동작을 하는 회로의 방법 및 장치
US9935641B2 (en) Signal recovery circuit
JP2011138294A (ja) 半導体集積回路装置およびキャッシュメモリ制御方法
JP2006155145A (ja) 演算処理装置

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191001

Year of fee payment: 4