KR20160048818A - 구성가능 클록 트리 - Google Patents

구성가능 클록 트리 Download PDF

Info

Publication number
KR20160048818A
KR20160048818A KR1020167006458A KR20167006458A KR20160048818A KR 20160048818 A KR20160048818 A KR 20160048818A KR 1020167006458 A KR1020167006458 A KR 1020167006458A KR 20167006458 A KR20167006458 A KR 20167006458A KR 20160048818 A KR20160048818 A KR 20160048818A
Authority
KR
South Korea
Prior art keywords
clock
lanes
level
lane
data
Prior art date
Application number
KR1020167006458A
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 퀄컴 인코포레이티드
Publication of KR20160048818A publication Critical patent/KR20160048818A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • H04L7/0037Delay of clock signal
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4273Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Information Transfer Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

데이터 송신, 특히 전자 장치 내에서 2 개의 디바이스들 간의 데이터 송신을 용이하게 하는 시스템, 방법들 및 장치가 설명되어 있다. 구성가능 클록 트리는 복수의 클록 레인들 각각에 대한 클록들의 타이밍이 최소 스큐를 위해 최적화되도록 구성될 수 있는 지연 매트릭스를 포함한다. 베이스 클록 신호의 상이한 버전들 및 선택된 버전에 대하여 이용가능한 상이한 경로들 간의 선택은 통신 링크 상에서 데이터를 송신하는데 이용된 루트 클록을 제공할 수 있다. 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 3 개의 버전들을 포함할 수도 있다. 제 1 클록 신호의 각각의 버전은 클록 신호에 대하여 상이한 지연을 겪을 수도 있다.

Description

구성가능 클록 트리{CONFIGURABLE CLOCK TREE}
관련 출원들의 상호 참조
본 특허 출원은 2013년 8월 30일 출원된, 발명의 명칭이 "Configurable Clock Tree" 인 미국 가출원 번호 제61/872,547호, 및 2014년 8월 18일 출원된, 발명의 명칭이 "Configurable Clock Tree"인 미국 비가출원 번호 제14/462,327호를 우선권으로 주장하며, 이들은 본 출원의 양수인에게 양도되었으며 여기서는 이들을 참조로서 포함한다.
기술 분야
적어도 하나의 양태는 일반적으로 고속 데이터 통신 인터페이스들에 관한 것이고, 보다 구체적으로 멀티-레인 데이터 링크들에서의 클록 스큐의 관리에 관한 것이다.
데이터 통신 링크들은 전자 장비들에서의 컴포넌트들, 디바이스들, 및 회로들을 접속하는데 빈번하게 이용된다. 산업 표준, 전자 장비 및 구성 컴포넌트들의 제조자들에 순응하거나 또는 호환가능한 특정 통신 링크들이 사용되며, 디바이스들 및 회로들은, 제조자가 데이터 통신 링크에 접속된 하나 이상의 컴포넌트들의 설계 및 동작에 대하여 전혀 또는 거의 제어하지 않는 경우에 특히, 클록 및 데이터 신호들의 특정된 타이밍을 충족해야 한다. 예를 들어, 모바일 디바이스들, 이를 테면, 셀룰라 폰들의 제조자들은 상이한 제조자들을 포함한 여러 소스들로부터 모바일 디바이스들의 컴포넌트들을 구할 수 있다. 일 예에서, 셀룰라 폰에서의 애플리케이션 프로세서는 제 1 제조자로부터 구할 수도 있는 한편, 셀룰라 폰에 대한 디스플레이는 제 2 제조자로부터 구할 수도 있다. 모바일 디바이스 내에서 애플리케이션 프로세서와 디스플레이 간의 접속들을 포함한 모바일 디바이스들의 특정 컴포넌트들을 상호접속하기 위한 표준들이 정의될 수 있다. 일부 디스플레이들은 모바일 산업 프로세서 인터페이스 얼라이언스 (MIPI) 에 의해 규정되는 디스플레이 시스템 인터페이스 (DSI) 표준에 순응하는 인터페이스를 제공한다.
특히 중요한 것은 송신된 데이터와, 송신된 데이터를 전송 및 수신하는데 이용되는 송신 및 수신 클록들 사이의 관계들이다. 송신기는 통상적으로, 상이한 데이터 신호들의 에지들 사이에 그리고 데이터 및 클록 신호들 사이에 스큐를 최적화하도록 설계된다. 수신기는 상승 에지들, 하강 에지들, 또는 연속하는 에지들 사이에서 데이터를 샘플링한다. 타이밍 스큐는 신뢰성있는 데이터 캡쳐에 이용가능한 타이밍 윈도우들을 감소시킬 수 있다. 통신들 속도가 증가함에 따라, 데이터 신호들, 클록 신호들 사이의 스큐, 클록 및 데이터 신호들 사이의 스큐는 데이터 송신 레이트들을 제한할 수 있다.
본원에 개시된 특정 실시형태들은 통신 링크 상에서 송신되는 클록 신호들 및/또는 데이터 신호들 사이의 클록 스큐를 구성, 최소화 또는 달리 최적화할 수 있는 구성가능 클록 트리를 채택한다. 구성가능 클록 트리는 복수의 클록 레인들을 제공하도록 구성될 수 있는 지연 매트릭스를 포함할 수도 있다. 구성가능 클록 트리는 전자 장치에서의 하나 이상의 다른 IC (Integrated Circuit) 디바이스들에 데이터 통신들에 의해 통신가능하게 커플링되는 IC 디바이스에 제공할 수도 있다.
본 개시물의 여러 양태들에서, 데이터 통신들을 위한 방법은 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 단계, 제 1 레인의 제 1 레벨 지연 소자의 출력을 제 2 및 제 3 레인들에서의 제 2 레벨 지연 소자들에 제공하는 단계, 및 제 1 레인의 제 1 레벨 지연 소자의 출력과 제 2 및 제 3 레인들에서의 제 1 레벨 지연 소자들의 출력들 중에서 선택함으로써, 통신 링크 상의 데이터의 송신을 제어하는데 이용되는 루트 클록을 제공하는 단계를 포함한다. 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 적어도 2 개의 버전들을 포함할 수도 있다. 제 1 클록 신호의 각각의 버전은 제 1 클록 신호에 대하여 상이한 지연을 겪을 수도 있다.
본 개시물의 일 양태에서, 제 1 레인은 통신 링크의 하나 이상의 데이터 레인들의 트랜지스터 경로에 매칭하는 트랜지스터 경로를 가질 수도 있다.
본 개시물의 일 양태에서, 제 1, 제 2 및 제 3 레인들은 각각 대응하는 데이터 레인에 이용되도록 클록을 제공할 수도 있다. 제 1 레인의 제 1 레벨 지연 소자에 대한 입력들과, 제 1 레인에서의 제 2 레벨 지연 소자의 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수 있다. 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들과 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수도 있다. 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들과 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 연관된 데이터 레인들과 루트 클록에 연관된 데이터 레인들 사이의 스큐를 최소화하도록 선택될 수 있다.
본 개시물의 일 양태에서, 통신 링크는 차동 인코딩된 데이터 및 클록 신호들을 포함한다. 통신 링크는 제 1 IC 디바이스를 제 2 IC 디바이스와 통신가능하게 커플링할 수도 있다.
본 개시물의 일 양태에서, 하나 이상의 클록 신호들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하는 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호를 포함할 수도 있다. 하나 이상의 클록 신호들은 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하는 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함할 수도 있다. 좌측 클록 신호 또는 이것의 버전은 제 1 레벨 지연 소자의 출력으로서 선택될 수도 있다. 우측 클록 신호 또는 이것의 버전은 제 1 레벨 지연 소자의 출력으로서 선택될 수도 있다.
본 개시물의 일 양태에서, 각각의 지연 소자는 액티브 클록킹 모드 및 파워-다운 모드에 있을 수도 있다. 루트 클록의 제공에 기여하지 않는 하나 이상의 지연 소자들은 파워-다운될 수도 있다.
본 개시물의 여러 양태들에서, 장치는 제 1 IC 디바이스를 제 2 IC 디바이스에 통신가능하게 커플링하는 통신 링크에 대한 인터페이스, 제 1 클록 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하기 위한 수단, 회로들 및/또는 모듈들, 그리고 제 1 클록 레인의 출력으로서 루트 클록을 제공하기 위한 수단, 회로들 또는 모듈들을 포함한다. 루트 클록은 통신 링크 상에서 데이터를 송신하는데 이용될 수도 있다. 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 적어도 2 개의 버전들을 포함할 수도 있으며, 제 1 클록 신호의 각각의 버전은 제 1 클록 신호에 대하여 상이한 지연을 겪는다. 루트 클록은 복수의 다른 클록 레인들의 제 1 레벨 지연 소자들의 출력과 제 1 클록 레인의 제 1 레벨 지연 소자의 출력 중에서 선택하도록 선택 로직을 구성시킴으로써 제공될 수도 있다.
본 개시물의 일 양태에서, 제 1 클록 레인은 하나 이상의 데이터 레인들에서 대응하는 트랜지스터 경로에 매칭하는 트랜지스터를 갖는다.
본 개시물의 일 양태에서, 루트 클록 및 복수의 다른 클록 레인들에 의해 제공된 출력 클록들은 대응하는 데이터 레인들에 이용된다. 제 1 레인의 제 1 레벨 지연 소자에 대한 입력들과, 제 1 레인에서의 제 2 레벨 지연 소자의 입력들은 복수의 다른 레인들에 의해 제공되는 출력 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수 있다. 복수의 다른 클록 레인들의 제 1 레벨 지연 소자에 대한 입력들과, 복수의 다른 클록 레인들의 제 2 레벨 지연 소자들의 입력들은 복수의 다른 레인들에 의해 제공되는 출력 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수 있다. 복수의 다른 클록 레인들의 제 1 레벨 지연 소자에 대한 입력들과, 복수의 다른 클록 레인들의 제 2 레벨 지연 소자들의 입력들은 복수의 다른 레인들에 의해 제공되는 출력 클록들과 연관된 데이터 레인들과, 루트 클록과 연관된 데이터 레인들 사이의 스큐를 최소화하도록 선택될 수 있다.
본 개시물의 일 양태에서, 하나 이상의 클록 신호들은 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함한다. 제 1 복수의 지연 소자들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함할 수도 있다. 제 2 복수의 지연 소자들은 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함할 수도 있다. 특정 로직은 제 1 클록 신호로서 좌측 클록 신호 또는 우측 클록 신호를 선택하도록 구성될 수도 있다.
본 개시물의 일 양태에서, 제 1 및 제 2 레벨 지연 소자들은 멀티플렉싱 로직을 포함할 수도 있다. 루트 클록을 제공하는데 이용된 출력을 제공하지 않는 멀티플렉싱 로직은 파워-다운될 수도 있다. 제어 로직은 제 1 레벨 지연 소자들 및/또는 제 2 레벨 지연 소자들에서의 멀티플렉싱 로직의 부분들에 대한 액티브 클록킹 모드 및 파워-다운 모드 중에서 선택하도록 구성될 수도 있다.
본 개시물의 일 양태에서, 클록 지연 매트릭스는 IC 디바이스에 제공된 복수의 클록 레인들, 하나 이상의 제 1 레벨 크록 신호들의 버전들 중에서 선택하도록 구성된 제 1 레벨 멀티플렉싱 로직, 제 1 레벨 멀티플렉싱 로직의 출력과, 2 개의 다른 클록 레인들의 제 1 레벨 멀티플렉싱 로직의 출력들 중에서 선택함으로써 루트 클록을 제공하도록 구성된 제 2 레벨 멀티플렉싱 로직, 및 복수의 클록 레인들의 제 1 레벨 멀티플렉싱 로직과 제 2 레벨 멀티플렉싱 로직을 구성시키는 제어기를 포함한다. 각각의 클록 레인은 통신 인터페이스의 대응하는 데이터 레인에서의 데이터 송신들을 제어하는 클록을 제공하도록 구성가능할 수도 있다. 제어기는 복수의 클록 레인들의 출력들 사이의 클록 스큐를 제어하도록 구성될 수도 있다.
본 개시물의 일 양태에서, 각각의 클록 레인은 대응하는 데이터 레인들에서 트랜지스터 경로에 매칭하는 트랜지스터를 갖는다.
본 개시물의 일 양태에서, 복수의 클록 레인들의 출력들은 대응하는 복수의 데이터 레인들을 제어하는데 이용될 수도 있다. 제어기는 각각의 클록 레인과 2 개의 다른 클록 레인들의 출력들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 제 1 레벨 멀티플렉싱 로직과 제 2 레벨 멀티플렉싱 로직을 구성함으로써 클록 스큐를 제어할 수도 있다. 제어기는 통신 인터페이스 상에서 송신되는 데이터 신호들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 제 1 레벨 멀티플렉싱 로직과 제 2 레벨 멀티플렉싱 로직을 구성함으로써 클록 스큐를 제어할 수도 있다. 제어기는 통신 인터페이스 상에서 송신되는 클록 및 데이터 신호들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 제 1 레벨 멀티플렉싱 로직과 제 2 레벨 멀티플렉싱 로직을 구성함으로써 클록 스큐를 제어할 수도 있다.
본 개시물의 일 양태에서, 하나 이상의 제 1 레벨 클록 신호들은 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함한다. 제 1 복수의 지연 소자들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함할 수도 있다. 제 2 복수의 지연 소자들은 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함할 수도 있다. 베이스 클록 선택 로직은 제 1 레벨 클록 신호로서 좌측 클록 신호 또는 우측 클록 신호를 선택하도록 제공 및/또는 구성가능할 수도 있다. 하나 이상의 제 1 레벨 클록 신호들은 좌측 클록 신호 및 우측 클록 신호를 포함할 수도 있다. 하나 이상의 제 1 레벨 클록 신호들은 좌측 클록 신호 및 우측 클록 신호의 버전들을 포함할 수도 있다.
본 개시물의 일 양태에서, 루트 클록을 제공하는데 이용된 출력을 제공하지 않는 멀티플렉싱 로직은 파워-다운될 수도 있다. 제어기는 제 1 레벨 지연 로직 및 제 2 레벨 지연 로직의 부분들에 대한 액티브 클록킹 모드 및 파워-다운 모드 중에서 선택하도록 구성될 수도 있다.
도 1 은 복수의 가용 표준들 중 하나에 따라 선택적으로 동작하는 IC 디바이들 사이의 데이터 링크를 채택하는 장치를 예시한다.
도 2 는 IC 디바이스들 사이의 데이터 링크를 채택하는 장치에 대한 시스템 아키텍쳐를 예시한다.
도 3 은 본원에 개시된 특정 양태들에 따라 제공된 특정 클록킹 기술들을 포함하도록 적응될 수도 있는 시스템들의 간략화된 예들을 예시한다.
도 4 는 통상의 MIPI-순응형 D-PHY 시스템의 아키텍쳐를 예시하는 블록도 (400) 이다.
도 5 는 본원에 개시된 특정 양태들에 따른 MIPI-순응형 D-PHY 레인 트랜시버의 일 예를 예시하는 블록도이다.
도 6 은 본원에 개시된 특정 양태들에 따른 지연 셀을 예시하는 블록도이다.
도 7 은 본원에 개시된 특정 양태들에 따른 지연 셀들의 동작을 예시한다.
도 8 은 본원에 개시된 특정 양태들에 따른 소프트웨어 구성가능 클록 트리 회로를 예시한다.
도 9 는 다수의 루트 클록들이 본원에 개시된 특정 양태들에 따른 소프트웨어 구성가능 클록 트리 회로로부터 획득될 수도 있는 일 예를 예시한다.
도 10 은 본원에 개시된 특정 양태들에 따른 45nm IC 에서의 소프트웨어 구성가능 클록 트리의 구현을 예시한다.
도 11 은 본원에 개시된 특정 양태에 따른 28nm IC 에서의 소프트웨어 구성가능 클록 지연 셀들의 구현을 예시한다.
도 12 는 본원에 개시된 특정 양태들에 따라 적응될 수도 있는 프로세싱 시스템을 채용하는 장치의 일 예를 예시하는 블록도이다.
도 13 은 본원에 개시된 특정 양태들에 따른 데이터 전송 방법의 흐름도이다.
도 14 는 본원에 개시된 특정 양태들에 따라 클록 트리를 구성하는데 이용될 수도 있는 장치에 대한 하드웨어 구현의 일 예를 예시하는 다이어그램이다.
다양한 양태들이 이제 도면들을 참조하여 설명된다. 다음의 설명에서, 설명의 목적들을 위해, 다수의 특정 상세들이 하나 이상의 양태들의 완전한 이해를 제공하기 위하여 기재된다. 그러나, 이러한 양태(들)는 이들 특정 상세들 없이 실시될 수도 있다는 것이 자명할 수도 있다.
본 출원에서 사용한 바와 같이, 용어들 "컴포넌트", "모듈", "시스템" 등은 하드웨어, 펌웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행중인 소프트웨어와 같은, 그러나 이들에 제한되지는 않는 컴퓨터-관련 엔티티를 포함하도록 의도된다. 예를 들어, 컴포넌트는 프로세서 상에서 실행되는 프로세스, 프로세서, 오브젝트, 실행가능물, 실행 스레드, 프로그램 및/또는 컴퓨터일 수도 있지만 이들인 것으로 제한되지 않는다. 예시에 의해, 컴퓨팅 디바이스 상에서 실행되는 애플리케이션과 컴퓨팅 디바이스 양자는 컴포넌트일 수 있다. 하나 이상의 컴포넌트들은 프로세스 및/또는 실행 스레드 내에 상주할 수 있으며 컴포넌트는 하나의 컴퓨팅 디바이스 상에 로컬화되고/되거나 2 개 이상의 컴퓨팅 디바이스들 사이에 분산될 수도 있다. 또한, 이들 컴포넌트들은 다양한 데이터 구조들을 저장하고 있는 다양한 컴퓨터 판독가능 매체들로부터 실행할 수 있다. 컴포넌트들은 하나 이상의 데이터 패킷들(예를 들면, 로컬 시스템의 다른 컴포넌트, 분산 시스템 및/또는 인터넷과 같은 네트워크를 통해 신호를 통해 다른 시스템들과 상호작용하는 하나의 컴포넌트로부터의 데이터)을 구비하는 신호에 따르는 것과 같이 로컬 및/또는 원격 프로세스들을 통해 통신할 수도 있다.
더욱이, 용어 "또는 (or)" 은 배타적 "또는" 보다는 포괄적 "또는" 을 의미하도록 의도된다. 즉, 다르게 특정하거나, 또는 콘텍스트로부터 명백하지 않는 한, 어구 "X 는 A 또는 B 를 채용한다" 는 자연 포괄적 순열 (natural inclusive permutation) 들 중 임의의 것을 의미하도록 의도된다. 즉, 어구 "X 는 A 또는 B 를 채용한다" 는 다음의 인스턴스들 중 임의의 것에 의해 충족된다 : X 는 A 를 채용한다; X 는 B 를 채용한다; 또는 X 는 A 와 B 양자를 채용한다. 또한, 본 출원 및 첨부된 청구항들에서 사용한 바와 같은 관사들 "a" 및 "an" 은 일반적으로는, 다르게 특정하지 않거나 콘텍스트로부터 단수 형태를 지칭하는 것이 명백하지 않는 한 "하나 이상" 을 의미하는 것으로 해석되어야 한다.
본 발명의 소정의 양태들은 디바이스, 이를 테면 전화기, 모바일 컴퓨팅 디바이스, 어플라이언스, 오토모바일 일렉트로닉스, 항공전자 시스템들 등의 서브컴포넌트들을 포함한, 전자 디바이스들 간에 배치된 통신 링크들에 적용가능할 수도 있다. 도 1 은 IC 디바이들 사이의 데이터 링크를 채택하는 장치 (100) 의 일 예를 나타내며, 데이터 링크는 복수의 가용 표준들 중 하나에 따라 선택적으로 동작할 수도 있다. 장치 (100) 는 무선 액세스 네트워크 (RAN), 코어 액세스 네트워크, 인터넷 및/또는 다른 네트워크와 무선으로 통신하는 무선 통신 디바이스를 포함할 수도 있다. 장치 (100) 는 프로세싱 회로 (102) 에 동작가능하게 커플링되는 통신 트랜시버 (106) 를 포함할 수도 있다. 프로세싱 회로 (102) 는 하나 이상의 IC 디바이스들, 이를 테면, 응용 주문형 IC (ASIC)(108) 를 포함할 수도 있다. ASIC (108) 은 하나 이상의 프로세싱 디바이스들, 시퀀서들, 논리 회로들 등을 포함할 수도 있다. 프로세싱 회로 (102) 는 프로세싱 회로 (102) 에 의해 실행가능할 수도 있는 명령들 및 데이터를 유지할 수도 있는 프로세서 판독가능 저장부, 이를 테면 메모리 디바이스 (112) 를 포함 및/또는 이것에 커플링될 수도 있다. 프로세싱 회로 (102) 는 메모리 디바이스 (112) 내에 상주하는 소프트웨어 모듈의 실행을 가능하게 하고 지원하는 애플리케이션 프로그래밍 인터페이스 (API)(110) 계층 및 오퍼레이팅 시스템 중 하나 이상에 의해 제어될 수도 있다. 메모리 디바이스 (112) 는 ROM (read-only memory) 및/또는 RAM (random-access memory), EEPROM (electrically erasable programmable read-only memory), 플래시 메모리 디바이스, 또는 프로세싱 시스템 및 컴퓨팅 플랫폼들에 이용될 수 있는 임의의 메모리 디바이스를 포함할 수도 있다. 프로세싱 회로 (102) 는 장치 (100) 를 구성하고 동작시키는데 사용된 동작 파라미터들 및 다른 정보를 유지할 수 있는 로컬 데이터베이스 (114) 를 포함하거나 로컬 데이터베이스 (114) 에 액세스할 수도 있다. 로컬 데이터베이스 (114) 는 데이터베이스 모듈, 플래시 메모리, 자기 매체, EEPROM, 광학 매체, 테이프, 소프트 또는 하드 디스크 등 중 하나 이상을 사용하여 구현될 수도 있다. 프로세싱 회로는 또한, 다른 컴포넌트들 중에서 안테나 (122), 디스플레이 (124), 오퍼레이터 제어장치, 이를 테면 버튼 (128) 및 키패드 (126) 와 같은 외부 디바이스들에 동작가능하게 커플링될 수도 있다.
도 2 는 무선 모바일 디바이스, 모바일 전화기, 모바일 컴퓨팅 시스템, 무선 전화, 노트북 컴퓨터, 태블릿 컴퓨팅 디바이스, 미디어 플레이어, 게이밍 디바이스들 등과 같은 장치의 특정 양태들을 도시하는 블록 개략도 (200) 이다. 장치 (200) 는 통신 링크 (220) 를 통하여 데이터 및 제어 정보를 교환하는 복수의 IC 디바이스들 (202 및 230) 을 포함할 수도 있다. 통신 링크 (220) 는 서로 근접하게 위치되거나, 또는 장치 (200) 의 상이한 부분들에 물리적으로 위치될 수도 있는 IC 디바이스들 (202 및 230) 을 상호접속하는데 사용될 수도 있다. 일 예에서, 통신 링크 (220) 는 IC 디바이스들 (202 및 230) 을 운반하는 칩 캐리어, 기판 또는 회로 보드 상에 제공될 수도 있다. 다른 예에서, 제 1 IC 디바이스 (202) 는 플립형 전화의 키패드 섹션에 위치될 수도 있는 반면, 제 2 IC 디바이스 (230) 는 플립형 전화의 디스플레이 섹션에 위치될 수도 있다. 다른 예에서, 통신 링크 (220) 의 부분은 케이블 또는 광학 접속부를 포함할 수도 있다.
통신 링크 (220) 는 다중 채널들 (222, 224 및 226) 을 포함할 수도 있다. 하나 이상의 채널 (226) 은 양방향성일 수도 있고, 반이중 및/또는 전이중 모드들에서 동작할 수도 있다. 하나 이상의 채널들 (222 및 224) 은 단방향성일 수도 있다. 통신 링크 (220) 는 비대칭적이며, 일 방향에서 더 높은 대역폭을 제공할 수도 있다. 본원에 기술된 일 예에서, 제 1 통신 채널 (222) 은 순방향 링크 (222) 로 지칭될 수도 있는 반면, 제 2 통신 채널 (224) 은 역방향 링크 (224) 로 지칭될 수도 있다. 양자의 IC 디바이스들 (202 및 230) 이 통신 링크 (222) 상에서 송신 및 수신하도록 구성되는 경우에도, 제 1 IC 디바이스 (202) 는 호스트 시스템 또는 송신기로서 지정될 수도 있는 한편, 제 2 IC 디바이스 (230) 는 클라이언트 시스템 또는 수신기로서 지정될 수도 있다. 일 예에서, 순방향 링크 (222) 는 제 1 IC 디바이스 (202) 로부터 제 2 IC 디바이스 (230) 로 데이터를 통신할 때 더 높은 데이터 레이트로 동작할 수도 있는 반면, 역방향 링크 (224) 는 제 2 IC 디바이스 (230) 로부터 제 1 IC 디바이스 (202) 로 데이터를 통신할 때 더 낮은 데이터 레이트로 동작할 수도 있다.
IC 디바이스들 (202 및 230) 은 각각 프로세서 또는 다른 프로세싱 및/또는 컴퓨팅 회로 또는 디바이스 (206, 236) 를 포함할 수도 있다. 일 예에서, 제 1 IC 디바이스 (202) 는 무선 트랜시버 (204) 와 안테나 (214) 를 통한 무선 통신들을 유지하는 것을 포함하는 장치 (200) 의 핵심 기능들을 수행할 수도 있는 한편, 제 2 IC 디바이스 (230) 는 사용자 인터페이스를 지원하고, 디스플레이 제어기 (232) 를 관리하거나 동작시키고/시키거나 카메라 제어기 (234) 를 사용하여 카메라 또는 비디오 입력 디바이스의 동작들을 제어할 수도 있다. IC 디바이스들 (202 및 230) 중 하나 이상에 의해 지원된 다른 특징들은 키보드, 음성 인식 컴포넌트, 및 다른 입력 또는 출력 디바이스들을 포함할 수도 있다. 디스플레이 제어기 (232) 는 액정 디스플레이 (LCD) 패널, 터치-스크린 디스플레이, 표시장치들 등과 같은 디스플레이들을 지원하는 회로들 및 소프트웨어 드라이버들을 포함할 수도 있다. 저장 매체 (208 및 238) 는 개별 프로세서들 (206 및 236), 및/또는 IC 디바이스들 (202 및 230) 의 다른 컴포넌트들에 의해 사용된 명령들 및 데이터를 유지하도록 구성된 일시적 및/또는 비-일시적 저장 디바이스들을 포함할 수도 있다. 각각의 프로세서 (206, 236) 와 그 대응하는 저장 매체 (208 및 238) 및 다른 모듈들 및 회로들 간의 통신은 각각 하나 이상의 버스 (212 및 242) 에 의해 가능하게 될 수도 있다.
역방향 링크 (224) 는 순방향 링크 (222) 와 동일한 방식으로 동작될 수도 있으며, 순방향 링크 (222) 와 역방향 링크 (224) 는 대등한 속도들 또는 상이한 속도들로 송신할 수도 있으며, 여기서 속도는 데이터 전송 레이트 및/또는 클록킹 레이트들로 표현될 수도 있다. 순방향 및 역방향 데이터 레이트들은 애플리케이션에 의존하여, 크기 순서들에 의해 실질적으로 동일하거나 상이할 수도 있다. 일부 애플리케이션들에서, 양방향 링크 (226) 는 제 1 IC 디바이스 (202) 및 제 2 IC 디바이스 (230) 간의 통신들을 지원할 수도 있다. 순방향 링크 (222) 및/또는 역방향 링크 (224) 는 예컨대, 순방향 및 역방향 링크들 (222 및 224) 이 동일한 물리적 접속들을 공유하고 반이중 방식으로 동작할 경우, 양방향 모드로 동작하도록 구성가능할 수도 있다.
일 예에서, 통신 링크 (220) 는 산업 또는 다른 표준에 따라서, 제 1 IC 디바이스 (202) 및 제 2 IC 디바이스 (230) 사이에서 제어, 커맨드 및 다른 정보를 통신하도록 동작될 수도 있다. 산업 표준들은 애플리케이션 고유의 것일 수도 있다. 예를 들어, MIPI 표준은 애플리케이션 프로세서 IC 디바이스 (202) 와, 모바일 디바이스에서의 카메라 또는 디스플레이를 지원하는 IC 디바이스 (230) 사이의 동기적 인터페이스 사양 (D-PHY) 을 포함한 물리적 계층 인터페이스들을 정의한다. D-PHY 표준은 모바일 디바이스들에 대한 MIPI 사양들을 따르는 제품들의 동작 특성들을 규제한다. D-PHY 인터페이스는 IC 디바이스들 (202, 230) 및/또는 모바일 디바이스 내의 다른 컴포넌트들과 상호접속하는 플렉시블 저비용 고속 시리얼 인터페이스를 이용하여 데이터 전송들을 지원할 수도 있다. 이들 인터페이스들은 전자기 간섭 (EMI) 문제를 피하기 위하여 슬로우 에지들에 비교적 낮은 비트 레이트들을 제공하는 CMOS (complimentary metal-oxide-semiconductor) 호환가능 병렬 버스들을 포함할 수도 있다.
도 3 은 본원에 개시된 특정 클록킹 기술들, 장치들 및 방법들을 포함하도록 적응될 수도 있는 시스템들의 간략화된 예들 (300, 320) 을 예시한다. 제 1 예 (300) 에서, 디스플레이 프로세서 (302) 는 디스플레이 디바이스 (124)(도 1 참조) 에 대한 디스플레이 데이터를 생성한다. 디스플레이 프로세서 (302) 는 예를 들어, 프로세싱 회로 (206)(도 2 참조) 와 통합될 수도 있다. 데이터는 디스플레이 제어기 (232) 를 포함하는 디바이스 (230) 로 통신 링크 (220) 를 통하여 송신될 수도 있다.
통신 링크 (220) 는 본원에 기술된 MIPI 표준 DSI 인터페이스와 호환가능하거나 순응할 수도 있고 이 인터페이스로 구성가능할 수도 있다. 디스플레이 프로세서 (302) 로부터 발신된 디스플레이 픽셀 데이터는 MIPI DSI 링크 제어기 (304) 에 제공되며, 이 링크 제어기는 고속 시리얼 인터페이스를 통하여 디스플레이로, 통상적으로 통상적으로 디스플레이 제어기 (232) 를 통하여 접속되는 패킷들로 디스플레이 픽셀 데이터를 포맷한다. 디스플레이 픽셀 데이터 및 제어 정보 양자는 이 링크 (220) 상에서 송신될 수도 있다.
제 2 예 (320) 에서, 카메라 프로세서 (322) 는 카메라 또는 이미징 디바이스로부터 카메라 데이터를 수신한다. 카메라 프로세서 (322) 는 프로세싱 회로 (206)(도 2 참조) 와 통합될 수도 있다. 일 예에서, 카메라 프로세서 (322) 는 무선 프로세싱 또는 통신 디바이스에서 특정 코어 기능들을 수행하도록 적응된 프로세싱 회로 (206) 를 이용하여 구현될 수도 있다. 이미지 데이터는 카메라 제어기 (234) 를 포함하는 디바이스 (230) 로부터 통신 링크 (220) 를 통하여 수신될 수도 있다.
통신 링크 (220) 는 MIPI 사양들로 정의되는 CSI (Camera Serial Interface) 와 호환가능하거나 순응할 수도 있고 이 CSI 로 구성가능할 수도 있다. 이미지 픽셀 데이터는 MIPI CSI 링크 제어기 (324) 를 이용하여 수신될 수도 있다. 이미지 픽셀 데이터 및 카메라 제어 정보 양자는 이 링크 (220) 상에서 송신될 수도 있다.
본 개시물의 특정 양태들은 MIPI DSI 링크를 예시하는 도 3 에서의 제 1 예를 참조로 설명될 수도 있다. 본원에 개시된 개념들 및 원리들은 도 3 에서의 제 2 예 (320) 에 예시되는 바와 같이 MIPI CSI 링크를 포함하는 다른 유형들의 통신 링크에도 적용가능함을 이해할 것이다.
제 1 예 (300) 에서, 집적 회로 (IC) 디바이스의 디지털 코어 로직 회로부 (310) 의 MIPI DSI 링크 제어기 (304) 에 의해 생성된 데이터 패킷들은 IC 디바이스의 입력/출력 섹션 (PAD 링)(312) 에서 실현될 수도 있는 MIPI D-PHY 프리-드라이버 (306) 에 제공될 수도 있다. 데이터 패킷들은 출력 드라이버들의 세트, 이를 테면, 예를 들어, 차동 라인 드라이버들에 제공될 수도 있다. IC 디바이스는 디지털 코어 로직 회로 (310) 주변에 배치된 PAD 링 (312) 에 제공될 수도 있는 본딩 패드들을 통하여 외부 디바이스들과 통신할 수도 있다. 전력 공급 장치들은 또한 본딩 패드들을 통하여 제공될 수도 있다. 일부 경우들에서, 코어 로직 섹션 (310) 에 제공된 디바이스들 및 출력 패드들을 통하여 신호들을 송신하고 입력 패드들을 통하여 신호들을 수신하는데 이용되는 회로들은 상이한 최대 스위칭 주파수들 및/또는 상이한 최대 전압 및 전류 레벨들을 포함하는 상이한 동작 특성들을 가질 수도 있다.
도 4 는 MIPI-순응형 D-PHY 시스템 (400) 의 일 예의 아키텍쳐를 예시하는 다이어그램이다. 예시된 D-PHY 시스템 (400) 은 송신기, 서버 또는 마스터 디바이스로서 역할을 할 수도 있는 제 1 디바이스 (410) 와, 수신기, 클라이언트 또는 슬레이브 디바이스로서 동작할 수도 있는 제 2 디바이스 (430) 를 포함한다. 애플리케이션 계층 소프트웨어 (402 및 422) 는 데이터 및 제어 정보가 하위 레벨 소프트웨어 및 하드웨어 컴포넌트들 (406, 408, 426, 및 428) 상에서 송신되게 할 수 있는 프로토콜 (404 및 424) 을 이용하여 통신할 수도 있다. 일 예에서, 데이터는 레인 관리 모듈들 (406 및 426) 의 제어 및 감독 하에서 통신 링크의 복수의 레인들 (412) 을 통하여 전달된다. 디바이스들 (410 및 430) 간의 데이터 송신은 물리적 접속부들 (412) 을 구동시키는 회로들 및 모듈들 (408 및 428) 을 이용하여 물리 계층 (PHY) 에서 발생한다. 일부 경우들에서, 하나 이상의 고속 단방향성 클록들 (414) 은 물리적 접속부들 (412) 을 통하여 데이터 전달들을 제어하기 위해 디바이스들 (410, 430) 사이에 제공될 수도 있다. 물리적 접속부들 (412) 은 단방향성 및/또는 양방향성 레인들을 포함할 수도 있는 다수의 데이터 레인들을 지원할 수도 있다. 마스터 디바이스 (410) 는 통상적으로 물리적 접속부들 (412) 의 데이터 레인들로부터의 데이터를 수신기 (430) 가 디코딩할 수 있게 하는 고속 단방향성 클록 신호들 (414) 을 제공한다. 클록 신호들 (414) 및 다른 타이밍 신호들 또는 클록들은 특수화되거나 또는 커스터마이즈된 클록킹 로직에 의해 PHY 계층 (408 및/또는 428) 에 제공되거나 또는 PHY 계층 (408 및/또는 428) 에 의해 생성될 수도 있다.
도 5 는 MIPI-순응형 D-PHY 레인 트랜시버 (500) 의 일 예를 예시하는 블록도이다. 레인 트랜시버 (500) 는 D-PHY 인터페이스의 하나의 데이터 레인 (508) 의 커넥터들을 통한 통신들에 이용될 수도 있다. 레인 트랜시버 (500) 는 내부적으로 생성될 수도 있거나, 외부적으로 생성된 클록 신호들로부터 유도될 수도 있거나 또는 이들의 조합으로부터의 하나 이상의 클록들을 이용할 수도 있고 고속 레벨 모듈들의 제어 하에서 동작하는 송신기 회로들 및/또는 모듈들 (514, 524) 및 수신기 회로들 및/또는 모듈들 (516, 526) 을 포함할 수도 있다.
프로세싱 회로 (502) 는 데이터 레인 (508) 을 통하여 정보를 통신하는데 이용된 프로토콜들의 여러 양태들을 처리하도록 구성될 수도 있다. 프로세싱 회로 (502) 는 하나 이상의 프로토콜들, 이를 테면, DSI 프로토콜, CSI 프로토콜, 및/또는 UniPro (MIPI unified protocol) 을 구현하도록 적응 또는 구성될 수도 있다. 데이터 및 제어 신호들은 프로세싱 회로 (502) 및 트랜시버 (504), 또는 데이터 레인 (508) 을 통하여 송신될 수 있는 신호들을 생성하도록 구성된 다른 디바이스 사이에서 통신될 수도 있다. 일 예에서, 데이터 및 제어 신호들은 PPI (PHY Protocol Interface) 를 이용하여 통신될 수도 있다. 이 설명의 목적을 위하여, 데이터 및 제어 신호들은 하나 이상의 버스들 등을 포함할 수도 있는 접속부들 (512) 의 네트워크를 이용하여 트랜시버 (504) 내에서 분배되는 것으로 가정될 수 있다.
트랜시버는 프로세싱 회로 (502) 와 교환되는 신호들을 인코딩, 송신, 수신 및 디코딩하는 제어 인터페이스 (522) 및 데이터 인터페이스 (520) 를 포함할 수도 있다. 일부 경우들에서, 특정 공통 로직은 데이터 인터페이스 (520) 와 제어 인터페이스 (522) 사이에 공유될 수도 있다. 트랜시버 (504) 는 하나 이상의 데이터 송신 프로토콜들, 비트들의 미리 정의된 시퀀스 및 다른 제어 정보에 따라 프로세싱 회로에 의해 제공된 데이터를 포함할 수도 있는 데이터 스트림들 중에서 선택할 수 있는 송신 로직을 포함할 수도 있다. 일 예에서, 프로세싱 회로로부터 수신된 데이터의 패킷은 데이터 레인 (508) 상의 송신에 대하여 직렬 변환될 수도 있다. 그 후, 직렬 변환된 데이터는 데이터 레인 (508) 에 대응하는 물리적 커넥터들 상의 송신에 대한 차동 라인 드라이버들에 제공될 수도 있다.
차동 수신기들 (526) 은 데이터 레인 (508) 에 대응하는 물리적 커넥터들로부터 정보를 수신하도록 구성될 수도 있다. 차동 수신기들 (526) 은 프로세싱 회로 (502) 에 송신될 수도 있는 디코딩된 데이터 및 제어 정보를 제공하는 디코딩 회로들 (506) 에 커플링될 수도 있다. 일부 경우들에서, 라인 모니터링 회로들 (528) 은 데이터 레인 (508) 을 통한 신뢰성있는 통신을 보장하는데 이용될 수도 있는 에러 검출 로직 (516) 을 지원할 수도 있다. 상태 머신 또는 다른 프로세서 (516) 는 데이터 레인 (508) 과 연관된 통신 동작들을 제어하도록 제공될 수도 있다.
MIPI D-PHY 계층은 보다 어드밴스된 애플리케이션들, 이를 테면, 모바일 디스플레이 및 카메라들에 대한 인터페이스 대역폭들의 상당한 확장을 가능하게 한다. 고속, 저전력, 소스 동기 다수 데이터 레인 모듈 인터페이스 프로토콜은 데이터 레인 마다 초 당 1.5 기가비트까지 제공한다. 90-도 위상 시프트 클록 레인과 함께 매우 조밀한 레인 스큐 사양으로 인하여, 위상 시프트 클록 레인, 데이터 및 클록 레인 경로들은 동일한 데이터 경로 지연을 보장하기 위하여 통상적으로 동일해야 한다. D-PHY 에 의해 이용된 클록 트리들은 서비스중인 데이터 레인들의 수에 의존할 수도 있고, 클록 트리 루트는 고정된 클록 레인 위치를 갖는 것을 요구할 수도 있다.
본원에 설명된 바와 같이, 구성가능 클록 트리가 기술되며, 이 트리에 의해 복수의 데이터 레인들이 다수의 D-PHY 링크들로서 구성될 수도 있고, 임의의 데이터 레인이 고정된 주기적 데이터 패턴을 갖는 클록 레인으로서 구성될 수 있다. 임의의 레인이 클록 레인 및 클록 트리 루트이도록 구성하기 위하여, 구성가능 클록 지연 셀이 멀티-레인 소스 동기화된 프로토콜 인터페이스들에 이용될 수도 있다.
도 6 은 데이터 송신을 제어하는 클록을 제공, 구성 및/또는 적응시키기 위하여 예를 들어, D-PHY 계층들 (408 및/또는 428) 에서 채택될 수도 있는 모듈러 클록 트리의 지연 셀 (600) 을 예시하는 블록도이다. 지연 셀 (600) 은 지연 셀 (600) 에 의해 출력되도록 클록 (610) 의 소스의 선택을 허용하도록 구성될 수도 있다. 잠재적 소스들은 좌측 입력 (612) 및 우측 입력 (614) 에 각각 제공된 베이스 클록 (602) 의 선행된 및 지연된 버전들을 포함한, 베이스 입력 클록 (602) 의 상이한 버전들을 포함할 수도 있다. 일 예에서, 지연 셀 (600) 이 소자일 수도 있는 루트 레인의 물리적 위치의 좌측 및 우측에 레인들이 배치될 수도 있다. 예시된 지연 셀 (600) 에 대하여, 레인 구조 및 신호들의 기준으로 되는 용어 "우측" 및 "좌측" 의 이용은 비유적인 것이고 지연 셀 (600) 의 설계, 구조 또는 구성에 대한 물리적 속성 또는 특징을 귀속시키는 것으로 의도되지 않는다.
지연 셀 (600) 은 출력 (610) 이 3 개의 입력들 (602, 612, 및 614) 로부터 선택될 수도 있는 점에서 구성가능하다. 일 예에서, 제어 신호들 (is_clk (616) 및 is_r (618)) 은 멀티플렉서들 (604a, 604b, 및 606) 을 제어한다. 제 1 레벨 멀티플렉싱은 is_clk 신호 (616) 에 의해 제어되는 제 1 레벨 멀티플렉서들 (604a, 604b) 에 의해 제공되는 한편, 멀티플렉서 (606) 는 제 2 레벨 멀티플렉싱을 제공하고 is_r 신호 (618) 에 의해 제어된다. 일 예에서, 지연 셀 (600) 은 굵은 라인 (608) 에 의해 표시된 출력 (610) 에 클록 루트 (즉, 입력 클록 신호 (602)) 를 통과시킨다. 이 예에서, is_clk 신호 (616) 는 로직 1 로 설정되어, 제 1 레벨 멀티플렉서들 (604a 및 604b) 이 제 2 레벨 멀티플렉서 (606) 의 입력으로 루트 클록을 통과시키게 한다. is_r 신호 (618) 는 제 2 레벨 멀티플렉서 (606) 의 좌측 입력 (1 로 레벨링됨)(622) 및 우측 입력 (0 으로 레벨링됨)(620) 중에서 선택한다. is_r 신호 (618) 의 값은 제 2 계층 멀티플렉서 (606)에 대한 입력들 양자가 클록 루트를 수신할 때, 즉, is_clk 신호 (616) 가 로직 1 로 설정될 때 중요하지 않을 수도 있다. 일부 예들에서, is_r 신호 (618) 는, is_clk 신호 (616) 가 로직 1 로 설정될 때 파워-다운 모드에서 지연 셀 (600) 의 출력을 억제하는데 이용될 수도 있다. is_clk 신호 (616) 가 로직 0 으로 설정될 때, 제 2 레벨 멀티플렉서 (606) 는 좌측 (i_l) 입력 (612) 및 우측 (i_r) 입력 (614) 에서 제공된 신호들 중에서 선택한다.
도 7 은 is_ clk 신호 (710 및 730) 이 0 으로 설정될 때 2 개의 지연 셀들 (702 및 722) 의 동작을 예시하는 다이어그램 (700) 이다. 2 개의 지연 셀들 (702, 722) 은 본원에 설명된 구성가능 클록 트리 회로에 좌측 및 우측 리브들일 수도 있다. 한 지연 셀 (702) 에서, is_clk 신호 (710) 가 로직 0 으로 설정되고, is_r 신호 (712) 가 1 로 설정될 때 우측 (i_r) 입력 (708) 은 지연 셀 (702) 의 출력 (706) 에서 제공될 수도 있다. 다른 지연 셀 (722) 에서, is_clk 신호 (730) 가 로직 0 으로 설정되고, is_r 신호 (732) 가 0 로 설정될 때 좌측 (i_l) 입력 (728) 은 지연 셀 (722) 의 출력 (726) 에서 제공될 수도 있다.
일 예에서, 좌측 리프 지연 셀 (702) 에 대한 is_r 신호 (712) 는 0 으로 설정됨으로써 이에 따라, 제 2 레벨 멀티플렉서 (714) 의 우측 입력 및 좌측 리프 지연 셀 (702) 의 출력 (706) 을 선택하는 것은 그에 따라 굵은 선 (704) 으로 도시된 바와 같이 우측 입력 (708) 을 따른다. 우측 리프 지연 셀 (722) 에 대한 is_r 신호 (732) 는 1 으로 설정됨으로써, 이에 따라 제 2 레벨 멀티플렉서 (734) 의 좌측 입력 및 우측 리프 지연 셀 (722) 의 출력 (726) 을 선택하는 것은 굵은 선 (724) 으로 도시된 바와 같이 좌측 입력 (728) 을 따른다.
본원에 개시된 특정 양태들에 따르면, 복수의 구성가능 클록 지연 셀들 (600, 702, 722) 은 지연 경로를 파워-다운시키고/시키거나 좌측 또는 우측 데이터 레인들로부터의 또는 클록 루트로부터의 지연 경로를 결정할 수 있는 4-투-1 멀티플렉서들의 스택을 형성하는데 이용될 수도 있다. 스택은 2 개 이상의 레벨들로 배치된 지연 셀들 (600) 의 매트릭스로 형성될 수도 있음으로써, 매트릭스에서의 각각의 지연 셀 (600) 은 프라이머리 입력으로부터 뿐만 아니라, 프라이머리 입력에 대하여 타이밍 선행 또는 지연들을 통상 포함하는 좌측 및 우측 입력들로부터 선택할 수 있다. 지연 셀들 (600) 은 또한 제 4 경로 (즉, 제 4 "더미" 또는 복제 입력이 출력 (610) 으로서 선택됨) 가 선택될 때 파워-다운 또는 저전력 모드에 진입하도록 구성될 수도 있다. 각각의 레인에 대한 그리고 레인들 사이의 클록 트리 지연 경로 교차 레인들 (즉, 좌측 투 우측 또는 우측 투 좌측) 은 트랜지스터 디바이스 경로들의 동일한 구성에 기초하며, 지연 변동들이 작은 프로세스, 전압 및 온도 (PVT; process, voltage and temperature) 변동을 겪는 금속 (저항-용량) RC 값들에서의 변동들로 제한될 수도 있다. 따라서, 물리적 설계들은 계측된 RC 지연 매칭을 획득하도록 쉽게 조작될 수 있다. 매칭된 트랜지스터 경로들은 클록 트리 밸런스 교차 레인에 대한 요구를 제거할 수도 있다.
도 8 은 다수의 클록들이 소프트웨어 구성가능 클록 트리 회로 (800) 로부터 얻어질 수도 있는 제 1 예를 예시하는 블록 개략도이다. 클록들 (804, 806, 810 및 812) 은 루트 클록 (808) 과 함께 2 개의 우측 레인들 및 2 개의 좌측 레인들에 대하여 생성된다. 소스 비트 클록 (802) 의 다수의 지연된 버전들을 제공하는 지연 라인 (816) 에서의 여러 지점들로부터 선택될 수도 있음을 이해할 것이다. 지연 라인 (816) 은 버퍼 디바이스들 (814a-814e) 을 포함할 수도 있는 직렬 선택된 지연 소자들로 구현될 수도 있다. 루트 클록 (808) 은 클록 소스 및 출력 핀 (808) 사이에서 논리 소자들의 수를 증가시키지 않고도 출력 핀 (808) 에 대해 원하는 클록 소스를 보내도록 여러 is_r 및 is_clk 신호들을 구성함으로써 선택될 수도 있다. 복수의 클록 출력들 (804, 806, 810, 및/또는 812) 의 각각은 유사하게 구성될 수도 있다. 도 8 에 예시된 구성에서, 구성가능 클록 지연 셀들 중 2 개의 셀들 (818a, 818b) 은 클록들 (804, 806, 808, 810 및 812) 을 제공하는 트리들에 포함되지 않으며, 이들 구성가능 클록 지연 셀들 (818a, 818b) 은 파워-다운될 수도 있다.
도 9 는 다수의 클록들이 소프트웨어 구성가능 클록 트리 회로 (900) 로부터 얻어질 수도 있는 제 2 예를 예시하는 블록 개략도이다. 여기에서, 좌측 비트 클록 소스 (902) 및 우측 비트 클록 소스 (914) 는 각각의 좌측 및 우측 지연 라인들 (916, 918) 에 제공될 수도 있다. 좌측 비트 클록 소스 (902) 및 우측 비트 클록 소스 (914) 는 2 개의 상이한 루트 클록 소스들로부터 유도될 수도 있고, 동일 또는 상이한 주파수들을 가질 수도 있다. 2 개의 좌측 레인들 및 2 개의 우측 레인들에 대한 루트 클록 (908) 및 레인 클록들 (904, 906, 910 및 912) 은 도 8 에 예시되는 바와 같이, 좌측 비트 클록 소스 (902) 및/또는 우측 비트 클록 소스 (914) 로부터 구성가능 상대 타이밍으로 생성될 수도 있다. 멀티플렉싱 (920) 의 추가적인 레벨은 좌측 비트 클록 소스 (902) 및 우측 비트 클록 소스 (914) 으로부터 유도되는 클록들 중에서 선택하도록 제공될 수도 있다. 레인들 및 대응하는 클록들을 정량화하는데 있어 "좌측 및 우측" 의 이용은 문자 그대로의 것 또는 비유적인 것일 수도 있으며, 일부 경우들에서 루트 클록에 대한 데이터 레인들의 물리적 위치에 관련될 수도 있다. 도 9 에서의 예는 좌측 비트 클록 소스 (902) 를 선택하도록 소프트웨어 구성될 수도 있는 제 1 루트 클록 (908), 및 좌측 비트 클록 소스 (902) 와 동일 또는 상이한 클록 주파수를 가질 수도 있는 측 비트 클록 소스 (914) 를 선택하도록 소프트웨어 구성될 수도 있는 제 2 루트 클록 (910) 을 예시한다. 클록 트리 회로는 2 개의 좌측 레인들 (904 및 906) 이 제 1 루트 클록 (908) 에 기초할 수도 있도록 그리고 우측 레인 (912) 이 제 2 루트 클록 (910) 에 기초할 수도 있도록 구성될 수도 있다. 도 8 에 예시된 구성에서, 구성가능 클록 지연 셀들 중 2 개의 셀들 (922a, 922b) 은 클록들 (904, 906, 908, 910 및 912) 을 제공하는 트리들에 포함되지 않으며, 이들 구성가능 클록 지연 셀들 (922a, 922b) 은 파워-다운될 수도 있다.
도 10 은 45nm IC 디바이스 상에 제공된 DSI PHY 회로 (1002) 의 일 예를 예시하는 다이어그램 (1000) 이다. PHY 회로 (1002) 는 본 원에 개시된 특정 양태들에 따라 적응된 클록 계층 (1012) 을 포함할 수도 있다. 예를 들어, 클록 계층은 소프트웨어 구성가능 클록 트리일 수도 있다. 소프트웨어 구성가능 클록 트리는 예를 들어, DSI 링크 제어기 (1008) 에 의해 구성될 수도 있다. 소프트웨어 구성가능 클록 트리의 구성은 BIST (built-in self test) 패턴들 등을 이용하여 캘리브레이션 정보를 생성할 수도 있는 캘리브레이션 로직 (1008) 으로부터 획득된 정보에 기초할 수도 있다. 소프트웨어 구성가능 클록 트리는 예를 들어, 위상 동기 루프 (1006) 를 포함하는 클록 생성 회로부로부터 획득된 베이스 클록을 이용할 수도 있다.
도 11 은 28nm 집적 회로 (1102) 에서의 소프트웨어 구성가능 클록 지연 셀들의 구현의 일 예를 예시하는 다이어그램 (1100) 이다. 좌측 및 우측 플로잉 소스 클록들 (1104 및 1106) 은 계측된 RC 지연 매칭을 갖는 클록들의 세트를 획득하기 위하여 하나 이상의 소프트웨어 구성가능 클록 트리들에 제공될 수도 있다.
도 12 는 본원에 개시된 하나 이상의 기능들을 수행하도록 구성될 수도 있는 프로세싱 회로 (1202) 를 채택하는 장치에 대한 하드웨어 구현의 간략화된 예를 예시하는 개념도 (1200) 이다. 예를 들어, 프로세싱 회로는 도 1 의 프로세싱 회로 (102), 도 2 의 디바이스 (202) 또는 디바이스 (203) 의 적어도 일부분, 도 5 의 프로세싱 회로 (502), 도 10 의 DSI 링크 제어기 (1008) 등으로서 배치될 수도 있다. 본 개시물의 여러 양태들에 따르면, 본원에 개시된 소자, 또는 소자의 임의의 부분 또는 소자들의 임의의 조합은 프로세싱 회로 (1202) 를 이용하여 구현될 수도 있다. 프로세싱 회로 (1202) 는 하드웨어 및 소프트웨어 모듈들의 일부 조합에 의해 제어되는 하나 이상의 프로세서들 (1204) 을 포함할 수도 있다. 프로세서들 (1204) 의 예들은 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들 (DSP들), 필드 프로그래밍가능 게이트 어레이들 (FPGA들), 프로그래밍가능 로직 디바이스들 (PLD들), 상태 머신들, 시퀀서들, 게이트된 로직, 이산 하드웨어 회로들, 및 본 개시물에 걸쳐 설명된 여러 기능들을 수행하도록 구성되는 다른 적절한 하드웨어를 포함한다. 하나 이상의 프로세서들 (1204) 은 특정 기능들을 수행하고 소프트웨어 모듈들 (1216) 중 하나에 의해 구성, 증강 또는 제어될 수도 있는 특수화된 프로세서들을 포함할 수도 있다. 하나 이상의 프로세서들 (1204) 은 초기화 동안에 로딩된 하나 이상의 소프트웨어 모듈들 (1216) 의 조합을 통하여 구성될 수도 있고, 동작 동안에 소프트웨어 모듈들 (1216) 중 하나 이상을 로딩 또는 언로딩함으로써 추가로 제어될 수도 있다.
예시된 예에서, 프로세싱 회로 (1202) 는 버스 (1210) 에 의해 일반적으로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1210) 는 프로세싱 회로 (1202) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하는 임의의 수의 상호접속 버스들 및 브리지들을 포함할 수도 있다. 버스 (1210) 는 하나 이상의 프로세서들 (1204) 및 스토리지 (1206) 를 포함하는 여러 회로들을 함께 링크한다. 스토리지 (1206) 는 메모리 디바이스들 및 대용량 디바이스들을 포함할 수도 있고, 본원에서 컴퓨터 판독가능 매체 및/또는 프로세서 판독가능 매체로서 지칭될 수도 있다. 버스 (1210) 는 또한 타이밍 소스들, 타이머들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들과 같은 여러 다른 회로들을 링크할 수도 있다. 버스 인터페이스 (1208) 는 버스 (1210) 와, 하나 이상의 트랜시버들 (1212) 사이에 인터페이스를 제공할 수도 있다. 트랜시버 (1212) 는 프로세싱 회로에 의해 지원되는 각각의 네트워킹 기술에 대하여 제공될 수도 있다. 일부 경우들에서, 다수의 네트워킹 기술들이 트랜시버 (1212) 에서 찾아지는 프로세싱 모듈들 또는 회로의 일부 또는 전부를 공유할 수도 있다. 각각의 트랜시버 (1212) 는 송신 매체를 통하여 여러 다른 장치와 통신하는 수단을 제공한다. 장치의 특성에 의존하여, 사용자 인터페이스 (1218)(예를 들어, 키패드, 디스플레이, 스피커, 마이크로폰, 조이스틱) 가 또한 제공될 수도 있고, 버스 인터페이스 (1208) 를 통하여 또는 버스 (1210) 에 직접적으로 통신가능하게 커플링될 수도 있다.
프로세서 (1204) 는 스토리지 (1206) 를 포함할 수도 있는 컴퓨터 판독가능 매체에 저장된 소프트웨어의 실행을 포함할 수도 있는 범용 프로세싱을 그리고 버스 (1210) 의 관리를 담당할 수도 있다. 이 관점에서, 프로세서 (1204) 를 포함한, 프로세싱 회로 (1202) 는 본원에 개시된 방법들, 기능들, 및 기술들 중 어느 것을 구현하는데 이용될 수도 있다. 스토리지 (1206) 는 소프트웨어를 실행할 때 프로세서 (1204) 에 의해 조작되는 데이터를 저장하기 위해 이용될 수도 있고, 소프트웨어는 본원에 개시된 방법들 중 어느 하나를 구현하도록 구성될 수도 있다.
프로세싱 회로 (1202) 에서의 하나 이상의 프로세서들 (1204) 은 소프트웨어를 실행할 수도 있다. 본원에서 이용되는 바와 같이, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어, 또는 달리 지칭되더라도, 소프트웨어는 명령들, 명령 세트들, 코드, 코드 세그먼트들, 프로그램 코드, 프로그램들, 하위프로그램들, 소프트웨어 모듈들, 애플리케이션들, 소프트웨어 애플리케이션들, 소프트웨어 패키지들, 루틴들, 서브루틴들, 오브젝트들, 실행가능물들, 실행의 스레드들, 절차들, 기능들, 알고리즘들 등을 의미하는 것으로 광범위하게 간주되어야 한다. 소프트웨어는 외부 컴퓨터 판독가능 매체에서 또는 스토리지 (1206) 에서 컴퓨터 판독가능 형태로 상주할 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1206) 는 비일시적 컴퓨터 판독가능 매체일 수도 있다. 비일시적 컴퓨터 판독가능 매체는 예를 들어, 자기 저장 디바이스 (예를 들어, 하드 디스크, 플로피 디스크, 마그네틱 스트립), 광학 디스크 (예를 들어, 컴팩트 디스크 (CD) 또는 디지털 다기능 디스크 (DVD)), 스마트 카드, 플래시 메모리 디바이스 (예를 들어, "플래시 드라이브", 카드, 스틱, 키 드라이브), 랜덤 액세스 메모리 (RAM), 판독 전용 메모리 (ROM), 프로그래밍가능 ROM (PROM), 소거가능 PROM (EPROM), 전기적 소거가능 PROM (EEPROM), 레지스터, 탈착가능 디스크, 및/또는 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 저장하기 위한 임의의 다른 적절한 매체를 포함한다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1206) 는 또한 예를 들어, 반송파, 송신 라인, 및 컴퓨터에 의해 액세스 및 판독될 수도 있는 소프트웨어 및/또는 명령들을 송신하기 위한 임의의 다른 적절한 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1206) 는 프로세싱 회로 (1202) 에, 프로세싱 회로 (1202) 의 외부에 있는 프로세서 (1204) 에 상주할 수도 있거나 또는 프로세싱 회로 (1202) 를 포함한 다수의 엔티티들에 걸쳐 분산될 수도 있다. 컴퓨터 판독가능 매체 및/또는 스토리지 (1206) 는 컴퓨터 프로그램 제품에서 구현될 수도 있다. 예를 들어, 컴퓨터 프로그램 제품은 패키징 재료들에서 컴퓨터 판독가능 매체를 포함할 수도 있다. 당해 기술 분야의 당업자는 전체 시스템 상에 부여되는 전체 설계 제약들 및 특정 애플리케이션에 따라 본 개시물 전반에 걸쳐 제시된 설명의 기능성을 최상으로 구현하는 방법을 알고 있을 것이다.
스토리지 (1206) 는 소프트웨어 모듈들 (1216) 로서 본원에서는 지칭될 수도 있는 로딩가능 코드 세그먼트들, 모듈들, 애플리케이션들, 프로그램들 등에서 유지 및/또는 조직화되는 소프트웨어를 유지할 수도 있다. 소프트웨어 모듈들 (1216) 각각은 프로세싱 회로 (1202) 상에 설치 또는 로딩되고 하나 이상의 프로세서들 (1204) 에 의해 실행될 때 하나 이상의 프로세서들 (1204) 의 동작을 제어하는 런타임 이미지 (1214) 에 기여하는 명령들 및 데이터를 포함할 수도 있다. 실행될 때, 특정 명령들은 프로세싱 회로 (1202) 로 하여금 본원에 설명된 특정 방법들, 알고리즘들, 및 프로세스들에 따라 기능을 수행하게 할 수도 있다.
소프트웨어 모듈들 (1216) 의 일부는 프로세싱 회로 (1202) 의 초기화 동안에 로딩될 수도 있고, 이들 소프트웨어 모듈들 (1216) 은 본원에 설명된 여러 기능들의 수행을 실행하도록 프로세싱 회로 (1202) 를 구성할 수도 있다. 예를 들어, 일부 소프트웨어 모듈들 (1216) 은 프로세서 (1204) 의 내부 디바이스들 및/또는 로직 회로들 (1222) 을 구성할 수도 있고, 트랜시버 (1212), 버스 인터페이스 (1208), 사용자 인터페이스 (1218), 타이머들, 수학적 코프로세서들 등과 같은 외부 디바이스들에 대한 액세스를 관리할 수도 있다. 소프트웨어 모듈들 (1216) 은 인터럽트 핸들러들 및 디바이스 드라이버들과 상호작용하고 프로세싱 회로 (1202) 에 의해 제공된 여러 리소스들에 대한 액세스를 제어하는 제어 프로그램 및/또는 오퍼레이팅 시스템을 포함할 수도 있다. 리소스들은 메모리, 프로세싱 시간, 트랜시버 (1212), 사용자 인터페이스 (1218) 에 대한 액세스 등을 포함할 수도 있다.
프로세싱 회로 (1202) 의 하나 이상의 프로세서들 (1204) 은 다기능성일 수도 있어, 소프트웨어 모듈들 (1216) 중 일부가 상이한 인스턴스들, 또는 동일한 기능의 상이한 인스턴스들을 수행하도록 로딩 및 구성된다. 하나 이상의 프로세서들 (1204) 은 예를 들어, 사용자 인터페이스 (1218), 트랜시버 (1212) 및 디바이스 드라이버들로부터의 입력들에 응답하여 개시된 백그라운드 작업들을 관리하도록 추가적으로 적응될 수도 있다. 다수의 기능들의 수행을 지원하기 위하여, 하나 이상의 프로세서들 (1204) 은 멀티테스킹 환경을 제공하도록 구성될 수도 있어, 이에 의해 복수의 기능들 각각이 필요에 따라, 또는 원하는 바에 따라 하나 이상의 프로세서들 (1204) 에 의해 서비스되는 작업들의 세트로서 구현된다. 일 예에서, 멀티태스킹 환경은 상이한 작업들 간에 프로세서 (1204) 의 제어를 통과시키는 타임쉐어링 프로그램 (1220) 을 이용하여 구현될 수도 있고, 이에 의해 임의의 현저한 동작들의 완료시에, 및/또는 이러한 인터럽트와 같은 입력에 응답하여, 각각의 작업이 하나 이상의 프로세서들 (1204) 의 제어를 타임쉐어링 프로그램 (1220) 으로 되돌린다. 작업이 하나 이상의 프로세서들 (1204) 의 제어를 행할 때, 프로세싱 회로는 제어 중인 작업과 연관된 기능에 의해 어드레싱되는 목적들에 대하여 효과적으로 특수화된다. 타임쉐어링 프로그램 (1220) 은 오퍼레이팅 시스템, 라운드 로빈 기반으로 제어들을 트랜스퍼하는 메인 루프, 기능들의 우선순위화에 따라 하나 이상의 프로세서들 (1204) 의 제어를 할당하는 기능 및/또는 하나 이상의 프로세서들 (1204) 의 제어를 핸들링 기능에 제공함으로써 외부 이벤트들에 응답하는 인터럽트 구동된 메인 루프를 포함할 수도 있다.
도 13 은 구성가능 클록 트리 클록 회로의 동작을 예시하는 흐름도 (1300) 이다. 구성가능 클록 트리 클록 회로는 반도체 IC 디바이스 등 상에 제공될 수도 있다. 구성가능 클록 트리 클록 회로는 본원에 개시된 특정 양태들에 따라 적응 및/또는 구성가능한 지연 매트릭스를 포함할 수도 있다. 흐름도 (1300) 는 데이터 통신 링크에 대한 인터페이스를 포함하는 IC 디바이스에 관련될 수도 있다.
단계 1302 에서, 제 1 레인의 제 1 레벨 지연 소자의 출력이 선택된다. 제 1 레벨 지연 소자의 출력은 하나 이상의 클록 신호들의 버전들로부터 선택될 수도 있다. 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 적어도 2 개의 버전들을 포함할 수도 있으며, 제 1 클록 신호의 각각의 버전은 제 1 클록 신호에 대하여 상이한 지연을 겪을 수도 있다.
단계 1304 에서, 제 1 레인의 제 1 레벨 지연 소자의 출력은 제 2 및 제 3 레인들에서의 제 2 레벨 지연 소자들에 제공될 수도 있다.
단계 1306 에서, 루트 클록이 제공될 수도 있다. 루트 클록은 제 1 레인의 제 1 레벨 지연 소자의 출력과, 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들의 출력들 중에서 선택함으로써 통신 링크 상의 데이터의 송신을 제어하는데 이용될 수도 있다.
본 개시물의 일 양태에서, 제 1 레인은 하나 이상의 데이터 레인들의 트랜지스터 경로에 매칭하는 트랜지스터 경로를 가질 수도 있다.
본 개시물의 일 양태에서, 제 1, 제 2 및 제 3 레인들은 통신 링크의 대응하는 데이터 레인들에 이용되도록 클록을 제공할 수도 있다. 제 1 레인의 제 1 레벨 지연 소자에 대한 입력들과, 제 1 레인에서의 제 2 레벨 지연 소자의 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수 있다. 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들과 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 루트 클록 사이의 스큐를 최소화하도록 선택될 수도 있다. 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들과 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 제 2 및 제 3 레인들에 의해 제공되는 클록들과 연관된 데이터 레인들과 루트 클록에 연관된 데이터 레인들 사이의 스큐를 최소화하도록 선택될 수 있다.
본 개시물의 일 양태에서, 차동 인코딩된 데이터 및 클록 신호들이 통신 링크 상에서 송신된다. 통신 링크는 제 1 IC 디바이스를 제 2 IC 디바이스와 통신가능하게 커플링할 수도 있다. 통신 링크는 IC 디바이스 내에서, 칩 캐리어 상에서, 및/또는 다른 회로 보드에서 상호접속부들을 포함할 수도 있다. 일 예에서, 상호접속부들은 반도체 IC 디바이스의 금속화 층에 형성된 트레이스들로서 제공될 수도 있다. 제 1 및 제 2 IC 디바이스들은 반도체 디바이스들일 수도 있다. 제 1 및 제 2 IC 디바이스들은 도 10 및 도 11 에 예시된 IC 디바이스들과 같은 반도체 IC 디바이스를 포함할 수도 있다.
본 개시물의 일 양태에서, 하나 이상의 클록 신호들은 제 1 복수의 지연 셀들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 셀들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함한다. 제 1 복수의 지연 셀들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함할 수도 있다. 제 2 복수의 지연 셀들은 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 셀들을 포함할 수도 있다. 일 예에서, 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 것은 좌측 클록 신호와 우측 클록 신호 중에서 선택하는 것을 포함한다.
본 개시물의 일 양태에서, 제 1 레벨 지연 소자 및 제 2 레벨 지연 소자는 멀티플렉싱 로직에 대한 입력들로서 제공되는 하나 이상의 클록 신호들의 버전들 중에서 선택하도록 구성된 멀티플렉싱 로직을 포함할 수도 있다. 루트 클록을 제공하는데 이용된 출력을 제공하지 않는 멀티플렉싱 로직은 파워-다운될 수도 있다. 제어기는 제 1 레벨 지연 소자들 및 제 2 레벨 지연 소자들에서의 멀티플렉싱 로직의 부분들에 대한 액티브 클록킹 모드와 파워-다운 모드 중에서 선택하도록 구성될 수도 있다.
본 개시물의 일 양태에서, 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들을 선택하는 수단은 2 개의 멀티플렉싱 레벨들로 배열된 복수의 멀티플렉서들 (604a, 604b 및 606)(도 6 참조) 을 포함할 수도 있다. 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들을 선택하는 수단은 지연 소자들 (600) 의 어레이, 매트릭스 또는 스택을 구성하도록 제어기 또는 프로세서에 의해 생성될 수도 있는 제어 신호들 (612, 614, 616 및 618) 을 더 포함할 수도 있다.
본 개시물의 일 양태에서, 제 1, 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들은 2 개의 멀티플렉싱 레벨들로 배열된 복수의 멀티플렉서들 (604a, 604b 및 606) 을 포함할 수도 있다. 하나 이상의 클록 신호들 (602, 612, 614) 의 버전들은 지연 소자들 또는 셀들 (600) 의 어레이, 매트릭스 또는 스택을 구성하는데 이용된 제어기 또는 프로세서에 의해 생성될 수도 있는 하나 이상의 제어 신호들 (616 및 618) 을 이용하여 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 선택될 수도 있다. 하나 이상의 클록 레인들에서의 지연 셀들 (600) 은 통신 링크 상의 송신을 위해 신호들을 제공하는데 이용된 데이터 레인들의 구성에 매칭하도록 구성될 수도 있다. 클록 레인들 및 데이터 레인들은 지연 셀들의 동일한 매트릭스에 형성된 부분들을 포함할 수도 있다.
본 개시물의 일 양태에서, 클록 지연 매트릭스는 IC 디바이스 상의 복수의 클록 레인들을 포함한다. 각각의 클록 레인은 대응하는 데이터 레인에서의 데이터 송신들을 제어하기 위하여 클록을 제공하도록 구성된 지연 셀들을 포함할 수도 있다. 각각의 클록 레인은 하나 이상의 베이스 클록들의 3 개의 지연된 버전들 중에서 선택하도록 구성된 제 1 레벨 멀티플렉서들, 제 1 레벨 멀티플렉서들의 출력과, 2 개의 상이한 클록 레인들에 대한 제 1 레벨 멀티플렉서들의 출력들 중에서 선택하도록 구성된 제 2 레벨 멀티플렉서, 및 복수의 클록 레인들 및 대응하는 데이터 레인들의 출력들 사이의 클록 스큐를 최소화하기 위해 복수의 클록 레인들의 제 1 레벨 멀티플렉서들 및 제 2 레벨 멀티플렉서들을 구성시키는 제어기를 포함할 수도 있다.
도 14 는 프로세싱 회로 (1402) 를 채용하는 장치 (1400) 에 대한 하드웨어 구현의 일 예를 예시하는 개념도이다. 이 예에서, 프로세싱 회로 (1402) 는 버스 (1416) 에 의해 일반적으로 표현되는 버스 아키텍처로 구현될 수도 있다. 버스 (1416) 는 프로세싱 회로 (1402) 의 특정 애플리케이션 및 전체 설계 제약들에 의존하는 임의의 수의 상호접속 버스들 및 브리지들을 포함할 수도 있다. 버스 (1416) 는 프로세서 (1412) 에 의해 일반적으로 표현되는 하나 이상의 프로세서들, 및 프로세서 판독가능 저장 매체 (1414) 에 의해 일반적으로 표현되는 컴퓨터 판독가능 매체를 포함한 여러 회로들을 함께 링크한다. 버스 (1416) 는 또한 타이밍 소스들, 타이머들, 주변기기들, 전압 레귤레이터들, 및 전력 관리 회로들과 같은 여러 다른 회로들을 링크할 수도 있다. 버스 인터페이스 (1418) 는 버스 (1416) 와 트랜시버들 (1420) 사이에 인터페이스를 제공할 수도 있다. 트랜시버 (1420) 는 송신 매체를 통하여 여러 다른 장치와 통신하는 수단을 제공하는 버스 인터페이스를 포함할 수도 있다. 장치의 특성에 의존하여, 사용자 인터페이스 (1422)(예를 들어, 키패드, 디스플레이, 스피커, 마이크로폰, 조이스틱) 이 또한 제공될 수도 있다. 하나 이상의 클록 생성 회로들 또는 모듈들 (1424) 은 하나 이상의 프로세서들 (1412) 및/또는 프로세싱 회로 (1402) 에 의해 제어되거나 또는 프로세싱 회로 (1402) 내에 제공될 수도 있다. 일 예에서, 클록 생성 회로들 또는 모듈들 (1424) 은 하나 이상의 수정 발진기들, 하나 이상의 위상 동기 루프 디바이스들 및/또는 하나 이상의 구성가능 클록 트리들을 포함할 수도 있다.
프로세서 (1412) 는 프로세서 판독가능 저장 매체 (1414) 상에 저장된 소프트웨어의 실행을 포함하는 범용 프로세싱 및 버스 (1416) 를 관리하는 것을 담당한다. 프로세서 (1412) 에 의해 실행될 때, 소프트웨어는 프로세싱 회로 (1402) 로 하여금 임의의 특정 장치에 대하여 위에 설명된 여러 기능들을 수행하게 한다. 프로세서 판독가능 저장 매체 (1414) 는 소프트웨어를 실행시킬 때 프로세서 (1412) 에 의해 조작되는 데이터를 저장하는데 이용될 수도 있다.
일 구성에서, 프로세싱 회로는 PLL, 구성가능 클록 트리, 및 다른 로직 및 회로부를 포함할 수도 있는 클록 생성을 위한 모듈들 및/또는 회로들 (1404, 1424) 을 포함할 수도 있다. 프로세싱 회로는 BIST 패턴 생성, 송신 와이어 모니터링, 에러 검출 등을 위한 모듈들 및/또는 회로들을 포함할 수도 있는 하나 이상의 캘리브레이션 모듈들 및/또는 회로들 (1406) 을 포함할 수도 있다. 프로세싱 회로는 클록 트리를 구성하는 모듈들 및/또는 회로들 (1408) 을 포함할 수도 있다. 모듈들 및/또는 회로들 (1408) 은 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 하나 이상의 버전들을 선택하고, 제 1 레인의 제 1 레벨 지연 소자의 출력을 제 2 및 제 3 레인들에서의 제 2 레벨 지연 소자들에 제공하고, 그리고 제 1 레인의 제 1 레벨 지연 소자의 출력과 제 2 및 제 3 레인들에서의 제 1 레벨 지연 소자들의 출력들 중에서 선택하여 통신 링크 상에서 데이터를 송신하는데 이용된 루트 클록을 제공하도록 협업할 수도 있다.
개시된 프로세스들에서의 특정 순서 또는 계층구조의 단계들이 예시적인 접근법들의 예시인 것으로 이해된다. 설계 선호도들에 기초하여, 프로세스들에서의 특정 순서 또는 계층구조의 단계들은 재배열될 수도 있는 것으로 이해된다. 첨부한 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제시하며, 제시된 특정 순서 또는 계층구조에 제한되는 것으로 의도되지 않는다.
이전의 설명은 임의의 당업자로 하여금 본 명세서에서 설명된 다양한 양태들을 실시하는 것을 가능하게 하기 위해 제공된다. 이들 양태들에 대한 다양한 변경들은 당업자에게 용이하게 명백할 것이며, 본 명세서에서 정의된 일반적인 원리들은 다른 양태들에 적용될 수도 있다. 따라서, 청구항들은 본 명세서에서 도시된 양태들에 제한되도록 의도되지 않고, 언어적 청구항들과 일치하는 풀 범위를 따르게 될 것이며, 여기서 엘리먼트의 단수로의 언급은 분명히 그렇게 언급하지 않는다면 "하나 및 단 하나" 를 의미하도록 의도되지 않고 오히려 "하나 이상" 을 의미하도록 의도된다. 분명히 다르게 언급하지 않는 한, 용어 "일부" 는 하나 이상을 지칭한다. 당업자에게 알려져 있거나 후에 알려지게 될 본 개시물 전반에 걸쳐 설명된 다양한 양태들의 엘리먼트들에 대한 모든 구조적 및 기능적 등가물들은 본 명세서에 참조로 명확히 통합되고 청구항들에 의해 포함되도록 의도된다. 더욱이, 본 명세서에서 개시된 어떤 것도 이러한 개시물이 청구항들에서 명시적으로 기재되는지 여부에 상관없이 공공에게 전용되도록 의도되지 않는다. 어떤 청구항 엘리먼트는 그 엘리먼트가 어구 "~ 수단" 을 이용하여 명확히 기재되지 않는 한 기능식 청구항 (means plus function) 으로서 해석되지 않을 것이다.

Claims (30)

  1. 데이터 통신들을 위한 방법으로서,
    제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 단계로서, 상기 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 적어도 2 개의 버전들을 포함하며, 상기 제 1 클록 신호의 각각의 버전은 상기 제 1 클록 신호에 대하여 상이한 지연을 겪는, 상기 하나 이상의 클록 신호들의 버전들 중에서 선택하는 단계;
    상기 제 1 레인의 상기 제 1 레벨 지연 소자의 출력을 제 2 및 제 3 레인들에서의 제 2 레벨 지연 소자들에 제공하는 단계; 및
    상기 제 1 레인의 상기 제 1 레벨 지연 소자의 출력과 상기 제 2 및 제 3 레인들에서의 제 1 레벨 지연 소자들의 출력들 중에서 선택함으로써, 통신 링크 상의 데이터의 송신을 제어하는데 이용되는 루트 클록을 제공하는 단계를 포함하는, 데이터 통신들을 위한 방법.
  2. 제 1 항에 있어서,
    상기 제 1 레인은 하나 이상의 데이터 레인들의 트랜지스터 경로에 매칭하는 트랜지스터 경로를 갖는, 데이터 통신들을 위한 방법.
  3. 제 1 항에 있어서,
    상기 제 1 레인과, 상기 제 2 및 제 3 레인들은 대응하는 데이터 레인들에 이용되는 클록들을 제공하고, 상기 제 1 레인의 상기 제 1 레벨 지연 소자에 대한 입력들 및 상기 제 1 레인에서의 제 2 레벨 지연 소자에 대한 입력들은 상기 루트 클록과, 상기 제 2 및 제 3 레인들에 의해 제공되는 상기 클록들 사이의 스큐를 최소화하도록 선택되는, 데이터 통신들을 위한 방법.
  4. 제 1 항에 있어서,
    상기 제 1 레인과, 상기 제 2 및 제 3 레인들은 대응하는 데이터 레인들에 이용되는 클록들을 제공하고, 상기 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들 및 상기 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 상기 루트 클록과, 상기 제 2 및 제 3 레인들에 의해 제공되는 상기 클록들 사이의 스큐를 최소화하도록 선택되는, 데이터 통신들을 위한 방법.
  5. 제 1 항에 있어서,
    상기 제 1 레인과, 상기 제 2 및 제 3 레인들은 대응하는 데이터 레인들에 이용되는 클록들을 제공하고, 상기 제 2 및 제 3 레인들의 제 1 레벨 지연 소자들에 대한 입력들 및 상기 제 2 및 제 3 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 상기 루트 클록과 연관된 데이터 레인들과, 상기 제 2 및 제 3 레인들에 의해 제공되는 상기 클록들과 연관된 데이터 레인들 사이의 스큐를 최소화하도록 선택되는, 데이터 통신들을 위한 방법.
  6. 제 1 항에 있어서,
    상기 통신 링크는 차동 인코딩된 데이터 및 클록 신호들을 포함하는, 데이터 통신들을 위한 방법.
  7. 제 1 항에 있어서,
    상기 통신 링크는 제 1 IC (integrated circuit) 디바이스를 제 2 IC 디바이스와 통신적으로 커플링하는, 데이터 통신들을 위한 방법.
  8. 제 1 항에 있어서,
    상기 하나 이상의 클록 신호들은 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함하고, 상기 제 1 복수의 지연 소자들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하고, 상기 제 2 복수의 지연 소자들은 상기 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하는, 데이터 통신들을 위한 방법.
  9. 제 8 항에 있어서,
    상기 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 단계는:
    상기 좌측 클록 신호와 상기 우측 클록 신호 중에서 선택하는 단계를 포함하는, 데이터 통신들을 위한 방법.
  10. 제 8 항에 있어서,
    상기 제 1 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 단계는:
    각각의 제 1 레벨 지연 소자에 대한 액티브 클록킹 모드와 파워-다운 모드 중에서 선택하는 단계를 포함하는, 데이터 통신들을 위한 방법.
  11. 제 1 항에 있어서,
    상기 루트 클록의 제공에 기여하지 않는 하나 이상의 지연 소자들을 파워-다운시키는 단계를 더 포함하는, 데이터 통신들을 위한 방법.
  12. 제 1 IC (integrated circuit) 디바이스를 제 2 IC 디바이스와 통신적으로 커플링하는 통신 링크에 대한 인터페이스;
    제 1 클록 레인의 제 1 레벨 지연 소자의 출력으로서 하나 이상의 클록 신호들의 버전들 중에서 선택하는 수단으로서, 상기 하나 이상의 클록 신호들의 버전들은 제 1 클록 신호의 적어도 2 개의 버전들을 포함하며, 상기 제 1 클록 신호의 각각의 버전은 상기 제 1 클록 신호에 대하여 상이한 지연을 겪는, 상기 하나 이상의 클록 신호들의 버전들 중에서 선택하는 수단; 및
    상기 제 1 클록 레인의 출력으로서 루트 클록을 제공하는 수단으로서, 상기 루트 클록은 상기 통신 링크 상에서 데이터를 송신하는데 이용되는, 상기 루트 클록을 제공하는 수단을 포함하고,
    상기 루트 클록을 제공하는 수단은, 상기 제 1 클록 레인의 상기 제 1 레벨 지연 소자의 출력과, 복수의 다른 클록 레인들의 제 1 레벨 지연 소자들의 출력들 중에서 선택하도록 구성된 선택 로직을 포함하는, 장치.
  13. 제 12 항에 있어서,
    상기 제 1 클록 레인은 하나 이상의 데이터 레인들에서의 대응하는 트랜지스터 경로에 매칭하는 트랜지스터 경로를 갖는, 장치.
  14. 제 12 항에 있어서,
    상기 복수의 다른 클록 레인들에 의해 제공된 상기 루트 클록 및 출력 클록들은 대응하는 데이터 레인들에 이용되고, 상기 제 1 클록 레인의 상기 제 1 레벨 지연 소자에 대한 입력들 및 상기 제 1 클록 레인에서의 제 2 레벨 지연 소자에 대한 입력들은 상기 루트 클록과, 상기 복수의 다른 클록 레인들에 의해 제공되는 상기 출력 클록들 사이의 스큐를 최소화하도록 선택되는, 장치.
  15. 제 12 항에 있어서,
    상기 복수의 다른 클록 레인들에 의해 제공된 상기 루트 클록 및 출력 클록들은 대응하는 데이터 레인들에 이용되고, 상기 복수의 다른 클록 레인들의 제 1 레벨 지연 소자들에 대한 입력들 및 상기 복수의 다른 클록 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 상기 루트 클록과, 상기 복수의 다른 클록 레인들에 의해 제공되는 상기 출력 클록들 사이의 스큐를 최소화하도록 선택되는, 장치.
  16. 제 12 항에 있어서,
    상기 복수의 다른 클록 레인들에 의해 제공된 상기 루트 클록 및 출력 클록들은 대응하는 데이터 레인들에 이용되고, 상기 복수의 다른 클록 레인들의 제 1 레벨 지연 소자들에 대한 입력들 및 상기 복수의 다른 클록 레인들의 제 2 레벨 지연 소자들에 대한 입력들은 상기 루트 클록과 연관된 데이터 레인들과, 상기 복수의 다른 클록 레인들에 의해 제공되는 상기 출력 클록들과 연관된 데이터 레인들 사이의 스큐를 최소화하도록 선택되는, 장치.
  17. 제 12 항에 있어서,
    상기 하나 이상의 클록 신호들은 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함하고, 상기 제 1 복수의 지연 소자들은 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하고, 상기 제 2 복수의 지연 소자들은 상기 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하는, 장치.
  18. 제 17 항에 있어서,
    상기 하나 이상의 클록 신호들의 버전들 중에서 선택하는 수단은, 제 1 클록 신호로서 좌측 클록 신호 또는 우측 클록 신호를 선택하도록 구성되는 로직을 포함하는, 장치.
  19. 제 12 항에 있어서,
    상기 하나 이상의 클록 신호들의 버전들 중에서 선택하는 수단은, 상기 루트 클록의 제공에 이용되지 않는 출력들을 갖는 지연 소자들을 파워-다운하도록 구성되는 로직을 포함하는, 장치.
  20. 제 12 항에 있어서,
    상기 하나 이상의 클록 신호들의 버전들 중에서 선택하는 수단은, 각각의 제 1 레벨 지연 소자에 대한 액티브 클록킹 모드와 파워-다운 모드 중에서 선택하도록 구성되는 로직을 포함하는, 장치.
  21. 클록 지연 매트릭스로서,
    IC (integrated circuit) 디바이스 상의 복수의 클록 레인들로서, 각각의 클록 레인은 통신 인터페이스의 대응하는 데이터 레인에서의 데이터 송신들을 제어하는 클록을 제공하도록 구성가능하고,
    각각의 클록 레인은:
    하나 이상의 제 1 레벨 클록 신호들의 버전들 중에서 선택하도록 구성되는 제 1 레벨 멀티플렉싱 로직;
    상기 제 1 레벨 멀티플렉싱 로직의 출력과 2 개의 다른 클록 레인들의 제 1 레벨 멀티플렉싱 로직의 출력들 중에서 선택함으로써 루트 클록을 제공하도록 구성되는 제 2 레벨 멀티플렉싱 로직; 및
    상기 복수의 클록 레인들의 상기 제 1 레벨 멀티플렉싱 로직 및 상기 제 2 레벨 멀티플렉싱 로직을 구성시키는 제어기를 포함하고,
    상기 제어기는 상기 복수의 클록 레인들의 출력들 사이의 클록 스큐를 제어하도록 구성되는, 클록 지연 매트릭스.
  22. 제 21 항에 있어서,
    각각의 클록 레인은 대응하는 데이터 레인에서의 트랜지스터 경로에 매칭하는 트랜지스터 경로를 갖는, 클록 지연 매트릭스.
  23. 제 21 항에 있어서,
    상기 복수의 클록 레인들의 출력들은 대응하는 복수의 데이터 레인들을 제어하는데 이용되고, 상기 제어기는 각각의 클록 레인과 2 개의 다른 클록 레인들의 출력들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 상기 제 1 레벨 멀티플렉싱 로직과 상기 제 2 레벨 멀티플렉싱 로직을 구성시킴으로써 클록 스큐를 제어하는, 클록 지연 매트릭스.
  24. 제 21 항에 있어서,
    상기 복수의 클록 레인들의 출력들은 대응하는 복수의 데이터 레인들을 제어하는데 이용되고, 상기 제어기는 상기 통신 인터페이스 상에서 송신된 데이터 신호들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 상기 제 1 레벨 멀티플렉싱 로직과 상기 제 2 레벨 멀티플렉싱 로직을 구성시킴으로써 클록 스큐를 제어하는, 클록 지연 매트릭스.
  25. 제 21 항에 있어서,
    상기 복수의 클록 레인들의 출력들은 대응하는 복수의 데이터 레인들을 제어하는데 이용되고, 상기 제어기는 상기 통신 인터페이스 상에서 송신된 클록 및 데이터 신호들 사이의 스큐를 최소화하도록 각각의 클록 레인에서의 상기 제 1 레벨 멀티플렉싱 로직과 상기 제 2 레벨 멀티플렉싱 로직을 구성시킴으로써 클록 스큐를 제어하는, 클록 지연 매트릭스.
  26. 제 21 항에 있어서,
    하나 이상의 제 1 레벨 클록 신호들은 제 1 복수의 지연 소자들 중 하나 이상에 의해 지연되는 좌측 클록 신호, 및 제 2 복수의 지연 소자들 중 하나 이상에 의해 지연되는 우측 클록 신호를 포함하고, 상기 제 1 복수의 지연 소자들은 상기 IC 상의 제 1 데이터 레인의 좌측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하고, 상기 제 2 복수의 지연 소자들은 상기 제 1 데이터 레인의 우측에 배치된 복수의 데이터 레인들에 대응하는 복수의 지연 소자들을 포함하는, 클록 지연 매트릭스.
  27. 제 26 항에 있어서,
    제 1 레벨 클록 신호로서 상기 좌측 클록 신호 또는 상기 우측 클록 신호를 제공하도록 구성가능한 베이스 클록 선택 로직을 더 포함하는, 클록 지연 매트릭스.
  28. 제 21 항에 있어서,
    하나 이상의 제 1 레벨 클록 신호들은 좌측 클록 신호 및 우측 클록 신호를 포함하는, 클록 지연 매트릭스.
  29. 제 21 항에 있어서,
    상기 루트 클록을 제공하는데 이용된 출력을 제공하지 않는 멀티플렉싱 로직은 파워-다운되는, 클록 지연 매트릭스.
  30. 제 21 항에 있어서,
    상기 제어기는 제 1 레벨 멀티플렉싱 로직 및 제 2 레벨 멀티플렉싱 로직의 부분들에 대한 액티브 클록킹 모드와 파워-다운 모드 중에서 선택하도록 구성되는, 클록 지연 매트릭스.
KR1020167006458A 2013-08-30 2014-08-19 구성가능 클록 트리 KR20160048818A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361872547P 2013-08-30 2013-08-30
US61/872,547 2013-08-30
US14/462,327 2014-08-18
US14/462,327 US9825755B2 (en) 2013-08-30 2014-08-18 Configurable clock tree
PCT/US2014/051756 WO2015031114A1 (en) 2013-08-30 2014-08-19 Configurable clock tree

Publications (1)

Publication Number Publication Date
KR20160048818A true KR20160048818A (ko) 2016-05-04

Family

ID=52583217

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167006458A KR20160048818A (ko) 2013-08-30 2014-08-19 구성가능 클록 트리

Country Status (6)

Country Link
US (1) US9825755B2 (ko)
EP (2) EP3039559B1 (ko)
JP (1) JP2016529844A (ko)
KR (1) KR20160048818A (ko)
CN (1) CN105493062B (ko)
WO (1) WO2015031114A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9841940B2 (en) * 2015-06-05 2017-12-12 Qualcomm Incorporated Power reduction through clock management
GB2542149B (en) * 2015-09-09 2019-11-27 Imagination Tech Ltd Synchronising devices
CN107306137A (zh) * 2016-04-22 2017-10-31 广州致远电子股份有限公司 一种高速采样器
US10698522B2 (en) * 2016-04-27 2020-06-30 Qualcomm Incorporated Variable rate display interfaces
US10084683B2 (en) * 2016-10-20 2018-09-25 Mediatek Inc. Unified protocol device with self functional test and associated method
US10387360B2 (en) * 2017-11-06 2019-08-20 M31 Technology Corporation Integrated circuits adaptable to interchange between clock and data lanes for use in clock forward interface receiver
US11055241B2 (en) * 2017-11-06 2021-07-06 M31 Technology Corporation Integrated circuit having lanes interchangeable between clock and data lanes in clock forward interface receiver
CN108073539A (zh) * 2017-12-27 2018-05-25 上海集成电路研发中心有限公司 一种mipi接口的d-phy电路
TWI754337B (zh) * 2019-08-01 2022-02-01 円星科技股份有限公司 時脈前送介面接收器之中具有可通用於時脈與資料通道之通道的積體電路及實體層
US11599139B1 (en) * 2021-09-03 2023-03-07 Xepic Corporation Limited Dynamic adjustment of root clock frequency in logic system design during verification
US11906585B2 (en) * 2021-12-16 2024-02-20 Samsung Electronics Co., Ltd. Methods and systems for performing built-in-self-test operations without a dedicated clock source

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5258660A (en) 1990-01-16 1993-11-02 Cray Research, Inc. Skew-compensated clock distribution system
US5467464A (en) 1993-03-09 1995-11-14 Apple Computer, Inc. Adaptive clock skew and duty cycle compensation for a serial data bus
US5570045A (en) * 1995-06-07 1996-10-29 Lsi Logic Corporation Hierarchical clock distribution system and method
US8164368B2 (en) * 2005-04-19 2012-04-24 Micron Technology, Inc. Power savings mode for memory systems
US8081706B2 (en) 2005-08-24 2011-12-20 Altera Corporation Lane-to-lane skew reduction in multi-channel, high-speed, transceiver circuitry
WO2007042997A2 (en) 2005-10-11 2007-04-19 Nxp B.V. Serial communication interface with low clock skew
US8205182B1 (en) * 2007-08-22 2012-06-19 Cadence Design Systems, Inc. Automatic synthesis of clock distribution networks
US7978802B1 (en) 2007-10-12 2011-07-12 Xilinx, Inc. Method and apparatus for a mesochronous transmission system
US8467486B2 (en) * 2007-12-14 2013-06-18 Mosaid Technologies Incorporated Memory controller with flexible data alignment to clock
US8605224B2 (en) * 2008-02-27 2013-12-10 Silicon Laboratories Inc. Digital interface for tuner-demodulator communications
CN101533420A (zh) * 2008-03-11 2009-09-16 矽统科技股份有限公司 时钟树状结构中路径时间延迟量的平衡方法
US8073090B2 (en) * 2008-07-11 2011-12-06 Integrated Device Technology, Inc. Synchronous de-skew with programmable latency for multi-lane high speed serial interface
US7746142B2 (en) 2008-10-13 2010-06-29 Taiwan Semiconductor Manufacturing Company, Ltd. Circuit and method for clock skew compensation in voltage scaling
US8130019B1 (en) * 2008-10-15 2012-03-06 Octasic Inc. Clock signal propagation method for integrated circuits (ICs) and integrated circuit making use of same
EP2393845B1 (en) * 2009-02-04 2017-07-12 Rhodia Operations Method for modifying the properties of an aqueous suspension
US8411703B1 (en) 2009-07-30 2013-04-02 Xilinx, Inc. Method and apparatus for a reduced lane-lane skew, low-latency transmission system
US8258837B2 (en) * 2009-12-17 2012-09-04 Intel Corporation Controlled clock phase generation
JP5568057B2 (ja) * 2011-05-30 2014-08-06 株式会社東芝 メモリアクセス回路及びメモリシステム
US9143121B2 (en) 2012-08-29 2015-09-22 Qualcomm Incorporated System and method of adjusting a clock signal

Also Published As

Publication number Publication date
CN105493062B (zh) 2018-08-21
CN105493062A (zh) 2016-04-13
EP3273359A1 (en) 2018-01-24
JP2016529844A (ja) 2016-09-23
EP3273359B1 (en) 2020-01-15
WO2015031114A1 (en) 2015-03-05
US20150063377A1 (en) 2015-03-05
EP3039559B1 (en) 2017-09-20
EP3039559A1 (en) 2016-07-06
US9825755B2 (en) 2017-11-21

Similar Documents

Publication Publication Date Title
KR20160048818A (ko) 구성가능 클록 트리
KR101650687B1 (ko) N-상 신호 트랜지션 정렬
EP3053315B1 (en) Method to enhance mipi d-phy link rate with minimal phy changes and no protocol changes
KR102450296B1 (ko) 동기식 및 비동기식 혼합 방식의 디지털 인터페이스를 포함하는 장치, 이를 포함하는 디지털 처리 시스템, 및 이들에 의해 수행되는 디지털 처리 방법
KR102450521B1 (ko) 모바일 장치 및 그것의 인터페이싱 방법
EP3158698B1 (en) Systems and methods for providing power savings and interference mitigation on physical transmission media
US20150220472A1 (en) Increasing throughput on multi-wire and multi-lane interfaces
JP2018522484A (ja) 光媒体のための低電力モード信号ブリッジ
US8797075B2 (en) Low power oversampling with reduced-architecture delay locked loop
KR20180048952A (ko) 3-페이즈 인터페이스에 대한 멀티페이즈 클록 데이터 복구
US9143314B2 (en) Low power oversampling with delay locked loop implementation
TW201841530A (zh) 經由匯流排上的額外副資料線來發送資料的系統和方法
US10572438B1 (en) Dynamic optimal data sampling time on a multi-drop bus
JP2019506656A (ja) 単一回線pmicホスト低レベル制御インターフェース
TW201743572A (zh) 用於線多工uart流程控制的數位訊號傳遞方案
CN104380274A (zh) 优化的链路训练及管理机制
US8890726B2 (en) Data interface clock generation

Legal Events

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