KR102441579B1 - 복수의 클락 도메인들을 포함하는 집적 회로 - Google Patents

복수의 클락 도메인들을 포함하는 집적 회로 Download PDF

Info

Publication number
KR102441579B1
KR102441579B1 KR1020180052789A KR20180052789A KR102441579B1 KR 102441579 B1 KR102441579 B1 KR 102441579B1 KR 1020180052789 A KR1020180052789 A KR 1020180052789A KR 20180052789 A KR20180052789 A KR 20180052789A KR 102441579 B1 KR102441579 B1 KR 102441579B1
Authority
KR
South Korea
Prior art keywords
clock
signal
controller
circuit
output signal
Prior art date
Application number
KR1020180052789A
Other languages
English (en)
Other versions
KR20190128518A (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 KR1020180052789A priority Critical patent/KR102441579B1/ko
Publication of KR20190128518A publication Critical patent/KR20190128518A/ko
Application granted granted Critical
Publication of KR102441579B1 publication Critical patent/KR102441579B1/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/06Clock generators producing several 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/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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Manipulation Of Pulses (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

본 개시에 따르면, 집적 회로는, 제1 클락 신호를 이용하는 제1 클락 도메인 회로, 제2 클락 신호를 이용하는 제2 클락 도메인 회로 및 제1 클락 신호 및 제2 클락 신호를 생성함으로써 각각을 제1 클락 도메인 회로 및 제2 클락 도메인 회로에 제공하며, 제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 제2 클락 신호의 다음 주기의 상승 엣지 발생을 지연시키도록 구성되는 엘라스틱 컨트롤러를 포함할 수 있다.

Description

복수의 클락 도메인들을 포함하는 집적 회로{INTEGRATED CIRCUIT INCLUDING A PLURALITY OF CLOCK DOMAINS}
본 개시의 기술적 사상은 집적회로에 관한 것으로서, 자세하게는 타이밍 에러를 검출하고, 복수의 클락 도메인들을 포함하는 집적회로에 관한 것이다.
집적 회로(Integrated Circuit; IC)의 성능을 향상시키기 위한 수많은 과제들 중 하나는 집적 회로가 소모하는 에너지를 줄이는 것이다. 집적 회로가 소모하는 에너지를 줄이는 효율적인 방법들 중 하나는 집적 회로에 공급되는 공급 전압의 크기를 낮추는 것이다. 하지만, 낮은 공급 전압 하에서 집적 회로의 소자들은 공정(process), 전압(voltage) 또는 온도(temperature)에 따라 민감한 변화를 보이게 되고, 소자들의 민감한 특성 변화로 인해 타이밍 에러(timing error) 발생이 잦아지는 문제점이 있다.
타이밍 에러의 발생을 줄이기 위해 타이밍 마진(timing margin)을 고려하여 집적 회로 내 시스템의 동작 주파수를 정할 수 있다. 특히, 타이밍 마진은 소자의 공정, 전압 또는 온도 변화가 가장 극심하게 일어나는 워스트 케이스(worst case)를 기준으로 정하게 되는데, 이러한 타이밍 마진 설정 방법은 시스템의 성능을 저하시키게 된다. 타이밍 에러 발생에 따른 오류를 줄이면서도, 시스템의 성능 저하를 줄이기 위한 방안이 요구되고 있다.
본 개시의 기술적 사상은 복수의 클락 도메인들을 포함하는 집적 회로에 있어서, 타이밍 에러가 발생한 경우, 이를 검출하고 클락 신호들을 복원하는 방법 및 장치를 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일측면에 따른 집적 회로는, 제1 클락 신호를 이용하는 제1 클락 도메인 회로, 제2 클락 신호를 이용하는 제2 클락 도메인 회로 및 제1 클락 신호 및 제2 클락 신호를 생성함으로써 각각을 제1 클락 도메인 회로 및 제2 클락 도메인 회로에 제공하며, 제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 제2 클락 신호의 다음 주기의 상승 엣지 발생을 지연시키도록 구성되는 엘라스틱 컨트롤러를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 집적 회로는, 제1 클락 신호를 이용하는 제1 클락 도메인 회로, 제2 클락 신호를 이용하는 제2 클락 도메인 회로 및 제1 클락 신호를 생성하여 제1 클락 도메인 회로에 제공하고, 제2 클락 신호를 생성하여 제2 클락 도메인 회로에 제공하도록 구성되는 엘라스틱 컨트롤러를 포함할 수 있고, 엘라스틱 컨트롤러는, 제1 클락 신호를 생성하는 제1 클락 컨트롤러, 제2 클락 신호를 생성하는 제2 클락 컨트롤러 및 제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 제1 클락 컨트롤러로부터 제공되는 제1 출력 신호의 지연 양을 증가시킴으로써 지연된 제1 출력 신호를 요청 신호로서 제2 클락 컨트롤러에 제공하는 핸드셰이크 로직 회로를 포함할 수 있다.
본 개시의 예시적 실시예에 따른 집적 회로에 의하면, 복수의 클락 도메인들 각각은 레이저 플립플롭(Razor FlipFlop)을 이용해 로컬 에러(Local Error)를 감지하고, 타이밍 에러가 최종적으로 검출된 경우, 클락들을 생성하는 엘라스틱 컨트롤러들 사이의 핸드셰이크 로직 회로의 일부 경로를 변화시킴으로써 타이밍 에러를 효과적으로 검출하고 클락 신호들을 복원할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 집적 회로를 나타낸다.
도 2는 본 개시의 예시적 실시예에 따른 집적 회로를 나타낸다.
도 3은 본 개시의 예시적 실시예에 따른 집적 회로를 나타낸다.
도 4는 본 개시의 예시적 실시예에 따른 출력 신호들 및 클락 신호들의 타이밍도를 나타낸다.
도 5는 본 개시의 예시적 실시예에 따른 레이저 플립플롭, 최종 에러 검출 회로 및 핸드셰이크 로직 회로를 나타낸다.
도 6은 본 개시의 예시적 실시예에 따른 집적 회로 및 클락들의 타이밍도를 나타낸다.
도 7a 및 도 7b는 본 개시의 예시적 실시예에 따른 클락 신호들의 타이밍도를 나타낸다.
도 8은 본 개시의 예시적 실시예에 따른 집적 회로를 나타낸다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다.
도 1은 본 개시의 예시적 실시예에 따른 집적 회로(10)를 나타낸다. 집적 회로(10)는 복수의 클락 도메인 회로들, 복수의 조합 로직(Combinational Logic) 회로들 및 엘라스틱 컨트롤러(300)를 포함할 수 있다. 복수의 클락 도메인 회로들은 제1 클락 도메인 회로(100_1) 내지 제N 클락 도메인 회로(100_N)를 포함할 수 있으며, 복수의 조합 로직 회로들은 제1 조합 로직 회로(200_1) 내지 제N-1 조합 로직 회로(200_N-1)를 포함할 수 있다. 집적 회로(10)는 소정의 기능을 처리하기 위해 복수의 소자들을 하나의 칩 안에 집적화한 전자부품을 나타낼 수 있다. 하지만 본 개시의 예시적 실시예에 따른 집적 회로(10)가 이에 제한되는 것은 아니며, 다양한 전자 장치들에 포함되는 다양한 칩, 회로 등의 구성을 나타낼 수 있다. 전자 장치들에는 UMC(Ultra Mobile PC), 워크스테이션, 넷북(net_book), PDA(Personal Digital Assistants), 포터블(portable) 컴퓨터, 웹 테블릿(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트 폰(smart phone), e-북(e-book), PMP(Portable Multimedia Player), 휴대용 게임기, 네비게이션(navigation) 장치, 블랙 박스(black box) 및 디지털 카메라(digital camera) 등과 같은 장치들 중 적어도 하나가 포함될 수 있다.
제1 클락 도메인 회로(100_1) 내지 제N 클락 도메인 회로(100_N) 각각은 서로 다른 클락 신호를 이용해 동작할 수 있다. 예를 들어, 제1 클락 도메인 회로(100_1)는 제1 클락 신호(CLK_1)를, 제2 클락 도메인 회로(100_2)는 제2 클락 신호(CLK_2)를, 제3 클락 도메인 회로(100_3)는 제3 클락 신호(CLK_3)를, 제N 클락 도메인 회로(100_N)는 제N 클락 신호(CLK_N)를 이용하여 동작할 수 있다. 제1 클락 도메인 회로(100_1) 내지 제N 클락 도메인 회로(100_N) 각각은 적어도 하나의 플립플롭 및 적어도 하나의 조합 로직 회로를 포함할 수 있다. 플립플롭은, 전달되는 데이터를 저장하고 출력할 수 있으며, 조합 로직 회로는 소정의 로직을 포함함으로써 전달되는 데이터를 처리할 수 있다.
제1 조합 로직 회로(200_1) 내지 제N-1 조합 로직 회로(200_N-1) 각각은 클락 도메인 회로들 사이에서 전달되는 데이터를 처리할 수 있다. 이를 위해, 제1 조합 로직 회로(200_1) 내지 제N-1 조합 로직 회로(200_N-1)는 소정의 로직을 포함할 수 있다.
엘라스틱 컨트롤러(300)는 제1 클락 신호(CLK_1) 내지 제N 클락 신호(CLK_N)를 생성하여 각각을 제1 클락 도메인 회로(100_1) 내지 제N 클락 도메인 회로(100_N)에 제공할 수 있다.
도 1에 개시된 집적 회로(10)와 같이, 집적 회로(10)가 복수의 클락 도메인 회로들을 포함하고, 복수의 클락 도메인 회로들 각각이 서로 상이한 클락 신호를 사용하도록 집적 회로(10)를 설계하는 것을 엘라스틱 클락(elastic clock) 설계라 칭할 수 있다. 엘라스틱 클락(elastic clock) 설계에서, 클락 도메인 회로들 사이의 조합 로직 회로의 크리티컬 경로 지연(critical path delay) 양과 클락 신호들 사이의 매치 지연(matched delay) 양이 일치하지 않는 경우, 집적 회로(10)에는 타이밍 에러가 발생할 수 있다. 예를 들어, 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2) 사이의 제1 조합 로직 회로(200_1)의 크리티컬 경로 지연 양과 제1 클락 신호(CLK_1) 및 제2 클락 신호(CLK_2) 사이의 매치 지연(matched delay) 양이 일치하지 않는 경우, 타이밍 에러가 발생할 수 있다.
본 개시의 예시적 실시예에 따른 집적 회로(10)에 의하면, 집적 회로(10)는 집적 회로(10)에 발생한 타이밍 에러를 검출할 수 있다. 또한, 타이밍 에러가 검출된 경우, 엘라스틱 컨트롤러(300)는 클락 신호들을 복원해낼 수 있다. 예를 들어, 제1 클락 도메인 회로(100_1)에서 타이밍 에러가 발생한 경우, 엘라스틱 컨트롤러(300)는 제2 클락 신호(CLK_2)의 다음 주기의 상승 엣지 발생을 지연시킬 수 있다. 일 실시예에서, 타이밍 에러가 최종적으로 검출된 경우, 집적 회로(10)는 엘라스틱 컨트롤러 내부의 핸드셰이크 로직 회로의 일부 경로를 변화시킴으로써 타이밍 에러를 효과적으로 검출하고 클락 신호들을 복원할 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 집적 회로(20)를 나타낸다. 집적 회로(20)는 제1 클락 도메인 회로(100_1), 제2 클락 도메인 회로(100_2), 조합 로직 회로(200), 엘라스틱 컨트롤러(300) 및 최종 에러 검출 회로(400)를 포함할 수 있다. 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2)는 도 1의 제i 클락 도메인 회로(i는 1 이상 N-1 이하의 임의의 자연수) 및 제i+1 클락 도메인 회로를 나타낼 수 있다. 제1 클락 도메인 회로(100_1), 제2 클락 도메인 회로(100_2), 조합 로직 회로(200) 및 엘라스틱 컨트롤러(300)에 관한 도 1과 중복되는 설명은 생략한다.
제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2)는 각각 제1 클락 신호(CLK_1) 및 제2 클락 신호(CLK_2)를 이용해 동작할 수 있다. 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2) 각각은 적어도 하나의 플립플롭 및 적어도 하나의 조합 로직 회로를 포함할 수 있다. 도 2는 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2)가 각각 2개의 플립플롭들 및 2개의 조합 로직 회로들을 포함하는 것을 도시하지만, 이는 설명의 편의를 위한 예시적인 것일 뿐이며, 플립플롭의 개수 및 조합 로직 회로들의 개수가 이에 제한될 필요는 없다. 예를 들어, 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2)에 포함된 플립플롭들의 개수는 서로 상이할 수도 있다. 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2) 각각은 레이저 플립플롭을 더 포함할 수 있다.
제1 클락 도메인 회로(100_1)는 제1 플립플롭(110), 제2 플립플롭(120) 및 조합 로직 회로들을 포함할 수 있으며, 레이저 플립플롭(Razor FlipFlop; 140)을 더 포함할 수 있다. 제1 플립플롭(110) 및 제2 플립플롭(120)은 제1 클락 도메인 회로(100_1)를 통해 전달되는 데이터를 저장 및 출력할 수 있으며, 조합 로직 회로들은 제1 클락 도메인 회로(100_1)를 통해 전달되는 데이터를 처리할 수 있다. 레이저 플립플롭(140)은 제1 클락 신호(CLK_1)를 이용할 뿐 아니라, 지연된 제1 클락 신호를 추가적으로 사용함으로써 레이저 플립플롭(140)으로 입력되는 데이터를 추가적으로 캡쳐(capture)할 수 있다. 레이저 플립플롭(140)은 제1 클락 도메인 회로(100_1)에서 발생하는 타이밍 에러를 1차적으로 감지할 수 있다. 레이저 플립플롭(140)은 로컬 에러가 감지된 경우, 로컬 에러 신호(Sig_LE)를 최종 에러 검출 회로(400)에 제공할 수 있다. 도 2는 레이저 플립플롭(140)이 제1 클락 도메인 회로(100_1)의 최후단에 있는 것을 도시하지만, 이는 설명을 위한 예시적인 것일 뿐이며 기술적 사상이 이에 제한되지 않는다. 예를 들어, 구현에 따라, 로컬 에러를 감지하는 레이저 플립플롭(140)은 제1 클락 도메인 회로(100_1)의 제1 플립플롭(110) 및 제2 플립플롭(120) 사이에 위치할 수도 있다. 레이저 플립플롭(140)에 관한 설명은 도 5를 참조하여 보다 자세히 설명된다.
엘라스틱 컨트롤러(300)는 제1 클락 컨트롤러(310), 제2 클락 컨트롤러(320) 및 핸드셰이크 로직 회로(330)를 포함할 수 있다. 제1 클락 컨트롤러(310)는 제1 클락 신호(CLK_1)를 생성할 수 있으며, 제2 클락 컨트롤러(320)는 제2 클락 신호(CLK_2)를 생성할 수 있다. 제1 클락 컨트롤러(310) 및 제2 클락 컨트롤러(320)는 핸드셰이크 로직 회로(330)를 통해 핸드셰이크 신호를 주고 받을 수 있다. 핸드셰이크 신호는 제1 클락 컨트롤러(310)가 제2 클락 컨트롤러(320)에 제공하는 요청 신호(request signal) 및 제2 클락 컨트롤러(320)가 제1 클락 컨트롤러(310)에 제공하는 응답 신호(acknowledge signal)를 포함할 수 있다. 일 실시예에서, 핸드셰이크 로직 회로(330)는 제1 클락 컨트롤러(310)로부터 출력되는 제1 출력 신호를 지연시킴으로써 요청 신호(request signal)을 제2 클락 컨트롤러(320)에 전달할 수 있다. 또한 일 실시예에서, 핸드셰이크 로직 회로(330)는 제2 클락 컨트롤러(320)로부터 출력되는 제2 출력 신호를 지연시킴으로써 응답 신호(acknowledge signal)을 제1 클락 컨트롤러(310)에 제공할 수 있다. 제1 클락 컨트롤러(310), 제2 클락 컨트롤러(320) 및 핸드셰이크 로직 회로(330)에 관해서는 도 3을 참조해 보다 자세히 설명된다.
최종 에러 검출 회로(400)는 제1 클락 도메인 회로(100_1)에서 감지된 로컬 에러 정보들에 관한 신호인 로컬 에러 신호(Sig_LE)를 수신할 수 있으며, 수신된 로컬 에러 신호(Sig_LE)를 기초로 최종적으로 제1 클락 도메인 회로(100_1)에서 발생한 타이밍 에러를 검출하는 동작을 수행할 수 있다. 또한, 최종 에러 검출 회로(400)는, 제1 클락 도메인 회로(100_1)의 타이밍 에러가 최종적으로 검출된 경우, 엘라스틱 컨트롤러(300)가 제2 클락 신호(CLK_2)의 다음 주기의 상승 엣지 발생을 지연시키도록 엘라스틱 컨트롤러(300)에 에러 검출 신호(Sig_ED)를 제공할 수 있다. 예를 들어, 최종 에러 검출 회로(400)는, 제1 클락 도메인 회로(100_1)의 타이밍 에러가 최종적으로 검출된 경우, 핸드셰이크 로직 회로(330)에 에러 검출 신호(Sig_ED)를 제공할 수 있다. 핸드셰이크 로직 회로(330)는 에러 검출 신호(Sig_ED)를 수신함에 따라, 내부의 지연 경로를 변화시킴으로써 제2 클락 컨트롤러(320)에 제공되는 요청 신호(request signal)를 지연시킬 수 있다. 최종 에러 검출 회로(400) 에 관해서는 도 5를 참조해 보다 자세히 설명된다.
본 개시의 예시적 실시예에 따른 집적 회로(20)에 의하면, 최종 에러 검출 회로(400)는 집적 회로(20)에 발생한 타이밍 에러를 검출할 수 있다. 또한, 타이밍 에러가 검출된 경우, 엘라스틱 컨트롤러(300)는 클락 신호들을 복원해낼 수 있다. 예를 들어, 제1 클락 도메인 회로(100_1)에서 타이밍 에러가 발생한 경우, 엘라스틱 컨트롤러(300)는 제2 클락 신호(CLK_2)의 다음 주기의 상승 엣지 발생을 지연시킬 수 있다. 일 실시예에서, 타이밍 에러가 최종적으로 검출된 경우, 최종 에러 검출 회로(400)는 엘라스틱 컨트롤러 내부의 핸드셰이크 로직 회로의 일부 경로를 변화시킴으로써 타이밍 에러를 효과적으로 검출하고 클락 신호들을 복원할 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 집적 회로(20)를 나타낸다. 도 3의 제1 클락 도메인 회로(100_1), 제2 클락 도메인 회로(100_2), 조합 로직 회로(200) 및 최종 에러 검출 회로(400)에 대한 도 2와 중복되는 설명은 생략한다. 또한, 이하에서 설명의 편의를 위해, 클락 도메인 회로들 사이의 관계를 설명함에 있어서 '전단' 및' 후단'이라는 표현을 사용한다. 여기서, 제1 클락 도메인 회로(100_1) 및 제2 클락 도메인 회로(100_2)를 예시로 설명하자면, 제1 클락 도메인 회로(100_1)는 제2 클락 도메인 회로(100_2)의 전단에 위치하는 것이며, 제2 클락 도메인 회로(100_2)는 제1 클락 도메인 회로(100_1)의 후단에 위치하는 것으로 설명한다.
제1 클락 컨트롤러(310)는 엣지-투-펄스 생성기(312) 및 C 엘리먼트(314)를 포함할 수 있다.
C 엘리먼트(314)는 제1 클락 도메인 회로(100_1)의 전단에 있는 클락 도메인 회로에 대응되는 클락 컨트롤러로부터 핸드셰이크 로직 회로를 통해 제공되는 요청 신호(request signal) 및 제2 클락 컨트롤러(320)로부터 핸드셰이크 로직 회로(330)를 통해 제공되는 응답 신호(acknowledge signal)를 입력으로 받아, 제1 출력 신호(Out_1)를 출력할 수 있다. C 엘리먼트(314)는 입력되는 신호들이 동일한 값으로 바뀐 후에 제1 출력 신호(Out_1)를 출력할 수 있다. 다시 말해, C 엘리먼트(314)는 전단으로부터 입력되는 요청 신호(request signal) 및 후단으로부터 입력되는 응답 신호(acknowledge signal)가 모두 도달한 후에, 제1 출력 신호(Out_1)를 출력할 수 있다.
엣지-투-펄스 생성기(312)는 C 엘리먼트(314)로부터 제공되는 제1 출력 신호(Out_1)를 입력으로 받아, 제1 클락 신호(CLK_1)를 출력할 수 있다. 일 실시예에서, 엣지-투-펄스 생성기(312)는 제1 출력 신호(Out_1)의 상승 엣지 및 하강 엣지에서 펄스를 생성할 수 있고, 생성된 펄스를 제1 클락 신호(CLK_1)로서 출력할 수 있다.
제2 클락 컨트롤러(320)는 엣지-투-펄스 생성기(322) 및 C 엘리먼트(324)를 포함할 수 있다.
C 엘리먼트(324)는 제1 클락 컨트롤러(310)로부터 핸드셰이크 로직 회로(330)를 통해 제공되는 요청 신호(request signal) 및 제2 클락 도메인 회로(100_2)의 후단에 있는 클락 도메인 회로에 대응되는 클락 컨트롤러로부터 핸드셰이크 로직 회로를 통해 제공되는 응답 신호(acknowledge signal)를 입력으로 받아, 제2 출력 신호(Out_2)를 출력할 수 있다. C 엘리먼트(324)는 입력되는 신호들이 동일한 값으로 바뀐 후에 제2 출력 신호(Out_2)를 출력할 수 있다. 다시 말해, C 엘리먼트(324)는 전단으로부터 입력되는 요청 신호(request signal) 및 후단으로부터 입력되는 응답 신호(acknowledge signal)가 모두 도달한 후에, 제2 출력 신호(Out_2)를 출력할 수 있다.
엣지-투-펄스 생성기(322)는 C 엘리먼트(324)로부터 제공되는 제2 출력 신호(Out_2)를 입력으로 받아, 제2 클락 신호(CLK_2)를 출력할 수 있다. 일 실시예에서, 엣지-투-펄스 생성기(322)는 제2 출력 신호(Out_2)의 상승 엣지 및 하강 엣지에서 펄스를 생성할 수 있고, 생성된 펄스를 제2 클락 신호(CLK_2)로서 출력할 수 있다.
핸드셰이크 로직 회로(330)는 가변 지연 요청 경로 엘리먼트(Request Path Element with Reconfigurable Delay; 332) 및 응답 경로 엘리먼트(Acknowledge Path Element; 334)를 포함할 수 있다.
가변 지연 요청 경로 엘리먼트(332)는 제1 클락 컨트롤러(310)로부터 출력되는 제1 출력 신호(Out_1)를 지연시킬 수 있고, 지연된 제1 출력 신호(Out_1)를 요청 신호(request signal)로서 제2 클락 컨트롤러(320)에 제공할 수 있다. 가변 지연 요청 경로 엘리먼트(332)는 최종 에러 검출 회로(400)로부터 에러 검출 신호(Sig_ED)를 수신할 수 있다. 에러 검출 신호(Sig_ED)가 수신된 경우, 즉, 제1 클락 도메인 회로(100_1)에서 타이밍 에러가 발생한 경우, 가변 지연 요청 경로 엘리먼트(332)는 제1 출력 신호(Out_1)의 지연 시간을 가변적으로 조정할 수 있다. 예를 들어, 제1 출력 신호(Out_1)의 지연 시간 내지는 지연 양을 증가시킬 수 있다. 이를 위해, 가변 지연 요청 경로 엘리먼트(332)는 변화를 가할 수 있는 지연 엘리먼트 소자들을 포함할 수 있다.
응답 경로 엘리먼트(334)는 제2 클락 컨트롤러(320)로부터 출력되는 제2 출력 신호(Out_2)를 지연시킬 수 있고, 지연된 제2 출력 신호(Out_2)를 응답 신호(acknowledge signal)로서 제1 클락 컨트롤러(310)에 제공할 수 있다.
도 4는 본 개시의 예시적 실시예에 따른 출력 신호들(Out_1, Out_2) 및 클락 신호들(CLK_1, CLK_2)의 타이밍도를 나타낸다. 도 4는, 제1 출력 신호(Out_1) 및 제2 출력 신호(Out_2)로부터 제1 클락 신호(CLK_1) 및 제2 클락 신호(CLK_2)가 생성되는 것을 설명하기 위한 타이밍도를 나타낸다. 도 4는 도 3을 함께 참조하여 설명된다.
제1 출력 신호(Out_1)는 제1 클락 컨트롤러(310)에 포함된 C 엘리먼트(314)로부터 생성될 수 있다. 제1 출력 신호(Out_1)는 C 엘리먼트(314)에 의해 엣지-투-펄스 생성기(312)에 전달될 수 있다. 엣지-투-펄스 생성기(312)는, 제1 출력 신호(Out_1)의 상승 엣지 및 하강 엣지에서 펄스를 생성할 수 있고, 생성된 펄스를 제1 클락 신호(CLK_1)로서 출력할 수 있다. 엣지-투-펄스 생성기(312)는 제1 클락 신호(CLK_1)를 제1 클락 도메인 회로(100_1)에 제공할 수 있다.
제2 출력 신호(Out_2)는 제2 클락 컨트롤러(320)에 포함된 C 엘리먼트(324)로부터 생성될 수 있다. 제2 출력 신호(Out_2)는 C 엘리먼트(324)에 의해 엣지-투-펄스 생성기(322)에 전달될 수 있다. 엣지-투-펄스 생성기(322)는, 제2 출력 신호(Out_2)의 상승 엣지 및 하강 엣지에서 펄스를 생성할 수 있고, 생성된 펄스를 제2 클락 신호(CLK_2)로서 출력할 수 있다. 엣지-투-펄스 생성기(322)는 제2 클락 신호(CLK_2)를 제2 클락 도메인 회로(100_2)에 제공할 수 있다.
도 5는 본 개시의 예시적 실시예에 따른 레이저 플립플롭(140), 최종 에러 검출 회로(400) 및 핸드셰이크 로직 회로(330)를 나타낸다. 도 5는 도 3의 레이저 플립플롭(140), 최종 에러 검출 회로(400) 및 핸드셰이크 로직 회로(330)를 나타낼 수 있다. 도 5에 개시된 레이저 플립플롭(140) 및 최종 에러 검출 회로(400)의 일련의 동작에 따라, 집적 회로는 클락 도메인 회로에서 발생하는 타이밍 에러를 검출할 수 있다. 도 5는 도 3을 함께 참조하여 설명된다.
레이저 플립플롭(140)은 데이터(Data)를 입력으로 받아 저장할 수 있으며, Q로서 출력할 수 있다. 레이저 플립플롭(140)은 제1 클락 신호(CLK_1) 이외에 지연된 제1 클락 신호(CLK_1_d)를 추가적으로 이용하여 입력되는 데이터(Data)를 추가적으로 캡쳐(capture)할 수 있다. 이를 위해, 일 실시예에서, 레이저 플립플롭(140)은 제1 클락 신호(CLK_1)를 이용해 데이터(Data)를 받아들이는 메인 플립플롭 및 지연된 제1 클락 신호(CLK_1_d)를 이용해 데이터(Data)를 받아들이는 셰도우 플립플롭을 포함할 수 있다. 지연된 제1 클락 신호(CLK_1_d)는 제1 클락 신호(CLK_1)가 지연된 클락 신호를 나타낼 수 있다. 여기서 지연되는 정도는 설계자의 필요에 따라 달리 설정될 수 있다. 또한, 일 실시예에서, 제1 클락 도메인 회로(100_1)는 복수의 레이저 플립플롭들을 셋으로서 포함할 수 있다. 예를 들어, 제1 클락 도메인 회로(100_1)는 3개의 레이저 플립플롭들을 하나의 셋으로서 포함할 수 있다.
레이저 플립플롭(140)은 제1 클락 도메인 회로(100_1)에서 발생하는 타이밍 에러를 감지할 수 있다. 레이저 플립플롭(140)은 제1 클락 도메인 회로(100_1)의 타이밍 에러를 감지한 경우, 로컬 에러 신호(Sig_LE)를 생성할 수 있다. 레이저 플립플롭(140)은 생성된 로컬 에러 신호(Sig_LE)를 최종 에러 검출 회로(400)에 제공할 수 있다. 또한 일 실시예에서, 레이저 플립플롭(140)은 제1 클락 신호(CLK_1)의 상승 엣지와 지연된 제1 클락 신호(CLK_1_d)의 상승 엣지 사이에서는 타이밍 에러와 무관하게 로컬 에러 신호(Sig_LE)를 출력할 수 있다. 이 경우, 레이저 플립플롭(140)으로부터 출력되는 로컬 에러 신호(Sig_LE)가 실제로 타이밍 에러에 의해 발생된 신호인지 판단할 필요가 있다. 로컬 에러 신호(Sig_LE)가 실제로 타이밍 에러에 의해 발생된 신호인지 여부에 대한 최종적인 판단은 최종 에러 검출 회로(400)에 의해 수행될 수 있으며, 특히, 비대칭 C 엘리먼트(440)에 의해 수행될 수 있다.
최종 에러 검출 회로(400)는 레이저 플립플롭(140)으로부터 수신된 로컬 에러 신호(Sig_LE)가 실제로 타이밍 에러에 의해 생성된 신호인 것인지 판단함으로써 최종적인 에러 발생 여부를 판단할 수 있다. 이를 위해, 최종 에러 검출 회로(400)는 OR 게이트(420) 및 비대칭 C 엘리먼트(440)를 포함할 수 있다.
OR 게이트(420)는 레이저 플립플롭(140)으로부터 로컬 에러 신호(Sig_LE)를 수신할 수 있다. OR 게이트(420)는 로컬 에러 신호(Sig_LE)를 합하여 하나의 에러 신호를 생성할 수 있으며, 생성된 하나의 에러 신호를 비대칭 C 엘리먼트(440)에 제공할 수 있다.
비대칭 C 엘리먼트(440)는 OR 게이트(420)로부터 에러 신호를 수신할 수 있으며, 반전 클락 신호(CLK_b)를 수신할 수 있다. 반전 클락 신호(CLK_b)는 제1 클락 신호(CLK_1)와 상보적인 신호로서, 제1 클락 신호(CLK_1)가 인버터(inverter)를 거침으로써 반전 클락 신호(CLK_b)가 생성될 수 있다. 비대칭 C 엘리먼트(440)가 제1 입력 값(이하 표 1의 input1) 및 제2 입력 값(이하 표 1의 input2)을 입력 받아, 출력 값(이하 표 1의 output)을 출력한다고 할 때, 진리표는 아래와 같다.
input1 input2 output
x 0 0
0 1 output'
1 1 1
도 5에서 비대칭 C 엘리먼트(440)의 제1 입력 값은 OR 게이트(420)로부터 수신된 에러 신호이고, 제2 입력 값은 반전 클락 신호(CLK_b)일 수 있다. 이에 따라, 비대칭 C 엘리먼트(440)는 제1 클락 신호(CLK_1)의 하강 엣지에서 OR 게이트(420)로부터 수신된 에러 신호가 실제 타이밍 에러에 의해 생성된 신호인지 여부를 판단할 수 있다. 반전 클락 신호(CLK_b)의 상승 엣지, 즉, 제1 클락 신호(CLK_1)의 하강 엣지에서 타이밍 에러가 최종적으로 검출된 경우, 비대칭 C 엘리먼트(440)는 에러 검출 신호(Sig_ED)를 생성할 수 있다.
또한, 비대칭 C 엘리먼트(440)는 생성된 에러 검출 신호(Sig_ED)를 레이저 플립플롭(140)에 제공할 수 있다. 레이저 플립플롭(140)은 에러 검출 신호(Sig_ED)를 수신함에 따라 잘못 저장된 데이터를 복원할 수 있다. 제1 클락 신호(CLK_1)의 하강 엣지에서 복원된 레이저 플립플롭(140) 내부의 데이터는 정상적인 동작의 경우에 비해 반 클락(half-clock) 사이클만큼 늦게 후단의 클락 도메인 회로로 전달될 수 있는데, 이 경우, 후단의 클락 도메인 회로에서의 타이밍 에러 발생을 야기할 수 있다. 따라서, 제1 클락 도메인 회로(100_1)에서 타이밍 에러가 발생한 경우, 후단의 클락 신호들을 지연시킬 필요가 있다.
비대칭 C 엘리먼트(440)는 생성된 에러 검출 신호(Sig_ED)를 핸드셰이크 로직 회로(330)에 제공할 수 있다. 예를 들어, 비대칭 C 엘리먼트(440)는 생성된 에러 검출 신호(Sig_ED)를 가변 지연 요청 경로 엘리먼트(332)에 제공할 수 있다. 가변 지연 요청 경로 엘리먼트(332)는 에러 검출 신호(Sig_ED)를 수신함에 따라 제1 출력 신호(Out_1)의 지연 시간 내지는 지연 양을 가변적으로 증가시킴으로써 제2 클락 컨트롤러(320)로 입력되는 요청 신호(request signal)를 지연시킬 수 있다.
본 개시의 예시적 실시예에 따르면, 클락 도메인 회로에서 발생한 타이밍 에러를 보다 효율적으로 검출할 수 있으며, 타이밍 에러가 검출됨에 따라 후단에서 발생할 수 있는 추가적인 타이밍 에러 발생 문제를 줄일 수 있다.
도 6은 본 개시의 예시적 실시예에 따른 집적 회로(30) 및 클락들의 타이밍도를 나타낸다. 집적 회로(30)는 제1 클락 도메인 회로(100_1), 제2 클락 도메인 회로(100_2), 제3 클락 도메인 회로(100_3), 제4 클락 도메인 회로(100_4) 및 제5 클락 도메인 회로(100_5)를 포함할 수 있으며, 각각의 클락 도메인 회로 사이의 조합 로직 회로를 포함할 수 있다. 도 6의 집적 회로(30)는, 도 1 내지 도 5를 참조하여 설명된 방식에 따라 동작할 수 있다.
제1 클락 도메인 회로(100_1) 내지 제5 클락 도메인 회로(100_5) 각각은 제1 클락 신호(CLK_1) 내지 제5 클락 신호(CLK_5)를 이용하여 동작할 수 있다. 일 실시예에서, 제1 클락 신호(CLK_1) 내지 제5 클락 신호(CLK_5)의 타이밍도는 도 6 하단부와 같이 동작할 수 있다. 특히, 도 6은, 제3 클락 도메인 회로(100_3)에서 타이밍 에러가 발생한 경우를 예시적으로 나타낸다.
제3 클락 도메인 회로(100_3)에서 타이밍 에러가 발생한 경우, 제3 클락 도메인 회로(100_3)에 포함된 레이저 플립플롭은 로컬 에러 신호를 발생시킬 수 있다. 최종 에러 검출 회로는, 로컬 에러 신호의 수신에 따라 에러 검출 신호를 생성함으로써, 제3 클락 신호(CLK_3)를 생성하는 제3 클락 컨트롤러 및 제4 클락 신호(CLK_4)를 생성하는 제4 클락 컨트롤러 사이의 핸드셰이크 로직 회로에 에러 검출 신호를 제공할 수 있다. 핸드셰이크 로직 회로 내에서 에러 검출 신호를 수신한 가변 지연 요청 경로 엘리먼트는 제3 클락 컨트롤러로부터 출력되는 출력 신호를 더 많이 지연시킬 수 있고, 그 지연된 출력 신호를 요청 신호(request signal)로서 제4 클락 컨트롤러에 제공할 수 있다. 제4 클락 컨트롤러는, 더 많이 지연된 출력 신호를 요청 신호(request signal)로서 수신함에 따라, 제4 클락 신호(CLK_4)의 다음 주기의 상승 엣지 발생을 지연시킬 수 있다. 제4 클락 신호(CLK_4)의 상승 엣지가 지연됨에 따라, 제4 클락 컨트롤러는 제3 클락 컨트롤러로 향하는 응답 신호(acknowledge signal)를 지연시킬 수 있고, 이로 인해 제3 클락 신호(CLK_3)의 상승 엣지 또한 지연될 수 있다. 이와 같은 방식에 의해 연쇄적으로, 제2 클락 신호(CLK_2) 및 제1 클락 신호(CLK_1)의 상승 엣지 또한 지연될 수 있다. 뿐만 아니라, 제4 클락 신호(CLK_4)의 상승 엣지가 지연됨에 따라, 제5 클락 신호(CLK_5)의 상승 엣지 또한 지연될 수 있다. 지연 시간 내지는 지연 양이 증가된 가변 지연 요청 경로 엘리먼트는 다음 주기에서 다시 복원될 수 있다. 설명의 편의를 위해, 제3 클락 도메인 회로(100_3)에서 타이밍 에러가 발생한 경우를 가정하였지만, 다른 어느 클락 도메인 회로에서 타이밍 에러가 발생한 경우에도 마찬가지로 위와 같은 방식에 의해 클락 신호들이 조정될 수 있다.
본 개시의 예시적 실시예에 따르면, 복수의 클락 도메인 회로들 중 어느 하나의 클락 도메인 회로에 타이밍 에러가 발생한 경우라 하더라도, 이후의 클락 신호들의 발생을 지연시킴으로써 후단의 클락 도메인 회로들에서의 추가적인 타이밍 에러 발생을 막을 수 있다.
도 7a 및 도 7b는 본 개시의 예시적 실시예에 따른 출력 신호들(Out_1, Out_2)의 타이밍도를 나타낸다.
도 7a는 도 3을 함께 참조하여 설명된다. 제1 출력 신호(Out_1)는 제1 클락 컨트롤러(310)의 C 엘리먼트(314)로부터 출력되는 신호일 수 있으며, 제2 출력 신호(Out_2)는 제2 클락 컨트롤러(320)의 C 엘리먼트(324)로부터 출력되는 신호일 수 있다. 제1 출력 신호(Out_1)의 하강 엣지에서 제1 클락 도메인 회로(100_1)의 타이밍 에러를 검출하려 할 때, 제2 클락 도메인 회로(100_2)에서 제2 클락 신호(CLK_2)가 이미 발생하였기 때문에 잘못된 데이터가 그 후단으로 전달될 수 있다. 이 경우에는, 타이밍 에러를 복원하지 못할 수 있다. 이러한 일부 복원 불가능한 타이밍 에러를 방지하기 위해 도 7b와 같이 출력 신호들을 출력하도록 설계를 하는 실시예를 생각해볼 수 있다.
도 7b를 참조하면, 제1 출력 신호(Out_1) 및 제2 출력 신호(Out_2)의 상승 엣지 만을 이용하여 제1 클락 신호 및 제2 클락 신호를 생성할 수 있다. 제1 출력 신호(Out_1)의 하강 엣지에서 타이밍 에러가 검출된 것을 가정한다. 제1 출력 신호(Out_1)의 하강 엣지에서 타이밍 에러가 검출된 경우, 제2 클락 컨트롤러로 향하는 가변 지연 요청 경로 엘리먼트의 지연 시간 내지는 지연 양을 증가시킴으로써 제2 출력 신호(Out_2)의 상승 엣지 발생을 지연시킬 수 있다. 증가된 가변 지연 요청 경로 엘리먼트는 제1 출력 신호(Out_1)의 다음 상승 엣지에서 복원될 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 집적 회로(40)를 나타낸다. 집적 회로(40)는 제1 클락 도메인 회로(100_1), 제2 클락 도메인 회로(100_2), 조합 로직 회로(200) 및 엘라스틱 컨트롤러(300)를 포함할 수 있다.
제1 클락 도메인 회로(100_1)는 엘라스틱 컨트롤러(300)에 의해 생성된 제1 클락 신호(CLK_1)를 이용하여 동작할 수 있으며, 제2 클락 도메인 회로(100_2)는 엘라스틱 컨트롤러(300)에 의해 생성된 제2 클락 신호(CLK_2)를 이용하여 동작할 수 있다.
엘라스틱 컨트롤러(300)는 제1 클락 컨트롤러(310), 제2 클락 컨트롤러(320) 및 핸드셰이크 로직 회로(330)를 포함할 수 있다.
제1 클락 컨트롤러(310)는 C 엘리먼트(314)를 포함할 수 있다. 예를 들어, 제1 클락 컨트롤러(310)는 C 엘리먼트(314)일 수 있다. 도 3에 개시된 실시예와의 차이점을 언급하자면, 제1 클락 컨트롤러(310)는 엣지-투-펄스 생성기를 포함하지 않을 수 있다. 이 경우, 제1 클락 컨트롤러(310)는 C 엘리먼트(314)로부터 출력되는 제1 출력 신호(Out_1)의 상승 엣지에서만 제1 클락 신호(CLK_1)를 출력할 수도 있다.
제2 클락 컨트롤러(320)는 C 엘리먼트(324)를 포함할 수 있다. 예를 들어, 제2 클락 컨트롤러(320)는 C 엘리먼트(324)일 수 있다. 도 3에 개시된 실시예와의 차이점을 언급하자면, 제2 클락 컨트롤러(320)는 엣지-투-펄스 생성기를 포함하지 않을 수 있다. 이 경우, 제2 클락 컨트롤러(320)는 C 엘리먼트(324)로부터 출력되는 제2 출력 신호(Out_2)의 상승 엣지에서만 제2 클락 신호(CLK_2)를 출력할 수도 있다.
핸드셰이크 로직 회로(330)는 복수의 가변 지연 요청 경로 엘리먼트들을 포함할 수 있으며, 복수의 응답 경로 엘리먼트들을 포함할 수 있다. 또한, 핸드셰이크 로직 회로(330)는 C 엘리먼트(335)를 포함할 수 있다. 예를 들어, 핸드셰이크 로직 회로(330)는 제1 가변 지연 요청 경로 엘리먼트(332), 제1 응답 경로 엘리먼트(334), C 엘리먼트(335), 제2 가변 지연 요청 경로 엘리먼트(336) 및 제2 응답 경로 엘리먼트(338)를 포함할 수 있다.
제1 클락 도메인 회로(100_1)에서 타이밍 에러가 검출된 경우, 제1 가변 지연 요청 경로 엘리먼트(332) 및 제2 가변 지연 요청 경로 엘리먼트(336)의 지연 시간 내지는 지연 양은 증가할 수 있다. 예를 들어, 집적 회로(40)는 최종 에러 검출 회로를 더 포함할 수 있으며, 최종 에러 검출 회로는 제1 클락 도메인 회로(100_1)에서 발생한 타이밍 에러를 검출함에 따라 제1 가변 지연 요청 경로 엘리먼트(332) 및 제2 가변 지연 요청 경로 엘리먼트(336)의 지연 시간 내지는 지연 양을 변화시킬 수 있다. 예를 들어, 제1 가변 지연 요청 경로 엘리먼트(332) 및 제2 가변 지연 요청 경로 엘리먼트(336)의 지연 시간 내지는 지연 양을 증가시킬 수 있다.
도 8에 개시된 예시적 실시예에 따른 집적 회로(40)에 의하면, 도 7b와 같은 타이밍도에서 보여주는 것처럼 클락 지연 방법을 통해 타이밍 에러를 복원할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 제1 클락 신호를 이용하는 제1 클락 도메인 회로;
    제2 클락 신호를 이용하는 제2 클락 도메인 회로; 및
    상기 제1 클락 신호 및 상기 제2 클락 신호를 생성함으로써 각각을 상기 제1 클락 도메인 회로 및 상기 제2 클락 도메인 회로에 제공하며, 상기 제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 상기 제2 클락 신호의 다음 주기의 상승 엣지 발생을 지연시키도록 구성되는 엘라스틱 컨트롤러를 포함하고,
    상기 제1 클락 도메인 회로는,
    상기 제1 클락 도메인에서 발생하는 타이밍 에러를 감지함으로써 로컬 에러 신호(local error signal)를 발생시키도록 구성되는 적어도 하나의 레이저 플립플롭(Razor FlipFlop)을 포함하는 것을 특징으로 하는 집적 회로.
  2. 제1항에 있어서,
    상기 엘라스틱 컨트롤러는,
    상기 제1 클락 신호를 생성하는 제1 클락 컨트롤러;
    상기 제2 클락 신호를 생성하는 제2 클락 컨트롤러; 및
    상기 제1 클락 컨트롤러의 제1 출력 신호를 지연시킴으로써 지연된 상기 제1 출력 신호를 상기 제2 클락 컨트롤러에 전달하고, 상기 제2 클락 컨트롤러의 제2 출력 신호를 지연시킴으로써 지연된 상기 제2 출력 신호를 상기 제1 클락 컨트롤러에 전달하도록 구성되는 핸드셰이크 로직 회로(handshake logic circuit)를 포함하는 것을 특징으로 하는 집적 회로.
  3. 제2항에 있어서,
    상기 제1 클락 컨트롤러는,
    상기 제1 출력 신호를 출력하는 제1 C 엘리먼트; 및
    상기 제1 C 엘리먼트로부터 제공된 상기 제1 출력 신호의 상승 엣지 및 하강 엣지에서 펄스를 상기 제1 클락 신호로서 생성하도록 구성되는 제1 엣지-투-펄스 생성기를 포함하고,
    상기 제2 클락 컨트롤러는,
    상기 제2 출력 신호를 출력하는 제2 C 엘리먼트; 및
    상기 제2 C 엘리먼트로부터 제공된 상기 제2 출력 신호의 상승 엣지 및 하강 엣지에서 펄스를 상기 제2 클락 신호로서 생성하도록 구성되는 제2 엣지-투-펄스 생성기를 포함하는 것을 특징으로 하는 집적 회로.
  4. 제2항에 있어서,
    상기 핸드셰이크 로직 회로는,
    제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 상기 핸드셰이크 로직 회로 외부로부터 수신되는 에러 검출 신호를 기초로, 상기 제1 출력 신호의 지연(delay) 시간을 가변적으로 조정함으로써 지연된 상기 제1 출력 신호를 요청 신호(request signal)로서 상기 제2 클락 컨트롤러에 제공하도록 구성되는 가변 지연 요청 경로 엘리먼트(request path element with reconfigurable delay); 및
    상기 제2 출력 신호를 지연시킴으로써 지연된 상기 제2 출력 신호를 응답 신호(acknowledge signal)로서 상기 제1 클락 컨트롤러에 제공하도록 구성되는 응답 경로 엘리먼트(acknowledge path element)를 포함하는 것을 특징으로 하는 집적 회로.
  5. 삭제
  6. 제1항에 있어서,
    상기 적어도 하나의 레이저 플립플롭으로부터 수신되는 상기 로컬 에러 신호를 기초로 상기 제1 클락 도메인의 타이밍 에러를 최종적으로 검출하고, 상기 엘라스틱 컨트롤러가 상기 제2 클락 신호의 다음 주기의 상승 엣지 발생을 지연시키도록 상기 엘라스틱 컨트롤러에 에러 검출 신호(error detection signal)를 제공하도록 구성되는 최종 에러 검출 회로(final error detection circuit)를 더 포함하는 집적 회로.
  7. 제6항에 있어서,
    상기 최종 에러 검출 회로는,
    상기 로컬 에러 신호를 입력으로 받고, 입력된 상기 로컬 에러 신호를 합하여 에러 신호로서 출력하는 OR 게이트; 및
    상기 OR 게이트로부터 제공되는 상기 에러 신호를 입력으로 받고, 상기 제1 클락 신호의 하강 엣지에서 상기 제1 클락 도메인의 타이밍 에러를 최종적으로 검출하도록 구성되는 비대칭 C 엘리먼트(asymmetric C element)를 포함하는 것을 특징으로 하는 집적 회로.
  8. 제1 클락 신호를 이용하는 제1 클락 도메인 회로;
    제2 클락 신호를 이용하는 제2 클락 도메인 회로; 및
    상기 제1 클락 신호를 생성하여 상기 제1 클락 도메인 회로에 제공하고, 상기 제2 클락 신호를 생성하여 상기 제2 클락 도메인 회로에 제공하도록 구성되는 엘라스틱 컨트롤러를 포함하고,
    상기 엘라스틱 컨트롤러는,
    상기 제1 클락 신호를 생성하는 제1 클락 컨트롤러;
    상기 제2 클락 신호를 생성하는 제2 클락 컨트롤러; 및
    상기 제1 클락 도메인 회로에서 타이밍 에러가 발생한 경우, 상기 제1 클락 컨트롤러로부터 제공되는 제1 출력 신호의 지연(delay) 양을 증가시킴으로써 지연된 상기 제1 출력 신호를 요청 신호(request signal)로서 상기 제2 클락 컨트롤러에 제공하는 핸드셰이크 로직 회로를 포함하는 것을 특징으로 하는 집적 회로.
  9. 제8항에 있어서,
    상기 제1 클락 컨트롤러는,
    상기 제1 클락 신호를 상기 제1 출력 신호로서 출력하도록 구성되는 제1 C 엘리먼트이고,
    상기 제2 클락 컨트롤러는,
    상기 제2 클락 신호를 제2 출력 신호로서 출력하도록 구성되는 제2 C 엘리먼트인 것을 특징으로 하는 집적 회로.
  10. 제8항에 있어서,
    상기 핸드셰이크 로직 회로는,
    상기 핸드셰이크 로직 회로 외부로부터 수신되는 에러 검출 신호를 기초로, 상기 제1 클락 컨트롤러로부터 상기 제2 클락 컨트롤러에 전달되는 신호를 가변적으로 조정하도록 구성되는 복수의 가변 지연 요청 경로 엘리먼트들;
    C 엘리먼트; 및
    상기 제2 클락 컨트롤러로부터 상기 제1 클락 컨트롤러에 전달되는 신호를 지연시키도록 구성되는 복수의 응답 지연 엘리먼트들을 포함하는 것을 특징으로 하는 집적 회로.
KR1020180052789A 2018-05-08 2018-05-08 복수의 클락 도메인들을 포함하는 집적 회로 KR102441579B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180052789A KR102441579B1 (ko) 2018-05-08 2018-05-08 복수의 클락 도메인들을 포함하는 집적 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180052789A KR102441579B1 (ko) 2018-05-08 2018-05-08 복수의 클락 도메인들을 포함하는 집적 회로

Publications (2)

Publication Number Publication Date
KR20190128518A KR20190128518A (ko) 2019-11-18
KR102441579B1 true KR102441579B1 (ko) 2022-09-07

Family

ID=68728012

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180052789A KR102441579B1 (ko) 2018-05-08 2018-05-08 복수의 클락 도메인들을 포함하는 집적 회로

Country Status (1)

Country Link
KR (1) KR102441579B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008136030A (ja) 2006-11-29 2008-06-12 Matsushita Electric Ind Co Ltd クロックタイミング調整方法及び半導体集積回路

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101451929B1 (ko) * 2013-01-18 2014-10-23 연세대학교 산학협력단 지연 동기 회로 및 듀티 사이클 교정 방법
KR20150069142A (ko) * 2013-12-13 2015-06-23 삼성전자주식회사 설정 가능한 클락 메시 회로, 이의 동작 방법, 및 이를 포함하는 장치들
KR102197065B1 (ko) * 2014-10-23 2020-12-30 삼성전자 주식회사 클락 발생 회로 및 이를 포함하는 반도체 집적회로 장치
US9503065B1 (en) * 2015-08-31 2016-11-22 Teradyne, Inc. Deskew of rising and falling signal edges
KR20170057029A (ko) * 2015-11-16 2017-05-24 삼성전자주식회사 지연 고정 루프 회로와 이를 포함하는 반도체 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008136030A (ja) 2006-11-29 2008-06-12 Matsushita Electric Ind Co Ltd クロックタイミング調整方法及び半導体集積回路

Also Published As

Publication number Publication date
KR20190128518A (ko) 2019-11-18

Similar Documents

Publication Publication Date Title
US6978403B2 (en) Deskew circuit and disk array control device using the deskew circuit, and deskew method
US10024916B2 (en) Sequential circuit with error detection
CN104579298B (zh) 触发器和半导体电路
KR102191167B1 (ko) 클럭 스위치 장치 및 이를 포함하는 시스템-온-칩
US7590879B1 (en) Clock edge de-skew
US9405877B1 (en) System and method of fast phase aligned local generation of clocks on multiple FPGA system
EP3012975B1 (en) Error resilient digital signal processing device
KR20090016090A (ko) 파이프라인 시스템의 동적 클럭 제어 장치 및 방법
US10422832B2 (en) Sequential circuit, scan chain circuit including the same and integrated circuit including the same
US6255878B1 (en) Dual path asynchronous delay circuit
US20190313938A1 (en) Circuit for meeting setup and hold times of a control signal with respect to a clock
KR102441579B1 (ko) 복수의 클락 도메인들을 포함하는 집적 회로
US8194496B2 (en) Circuit and method for recovering clock data in highly integrated semiconductor memory apparatus
US10326433B2 (en) Clock filter and clock processing method
CN112580278A (zh) 逻辑电路的优化方法、优化装置以及存储介质
US8707080B1 (en) Simple circular asynchronous clock domain crossing technique for digital data
US7710178B2 (en) Delay apparatus for delay locked loop
Chen et al. An approximate voting scheme for reliable computing
US6812750B1 (en) Divided clock generation
US7010072B2 (en) Aligned clock forwarding scheme
CN218825352U (zh) 数据传输电路、芯片、电子部件及电子设备
JP5842633B2 (ja) 信号伝送装置および信号伝送方法
WO2011034862A1 (en) Delay line that tracks setup time of a latching element over pvt
CN115967380A (zh) 延迟电路和包括该延迟电路的时钟误差校正装置
CN114844489A (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