KR20030064376A - 클럭이 전송되는 i/o 시스템을 위한 효율적인 클럭 시작및 정지 장치 - Google Patents

클럭이 전송되는 i/o 시스템을 위한 효율적인 클럭 시작및 정지 장치 Download PDF

Info

Publication number
KR20030064376A
KR20030064376A KR10-2003-7001880A KR20037001880A KR20030064376A KR 20030064376 A KR20030064376 A KR 20030064376A KR 20037001880 A KR20037001880 A KR 20037001880A KR 20030064376 A KR20030064376 A KR 20030064376A
Authority
KR
South Korea
Prior art keywords
buffer
clock
data
clock signal
coupled
Prior art date
Application number
KR10-2003-7001880A
Other languages
English (en)
Other versions
KR100847364B1 (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 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20030064376A publication Critical patent/KR20030064376A/ko
Application granted granted Critical
Publication of KR100847364B1 publication Critical patent/KR100847364B1/ko

Links

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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Electronic Switches (AREA)

Abstract

클럭이 전송되는 I/O 서브 시스템을 위한 효율적인 클럭 시작 및 정지 장치가 개시된다. 이 장치는 데이터 소스로부터 들어오는 데이터를 수신하도록 결합된 버퍼(205)를 포함한다. 이 버퍼는 상기 데이터 소스에 의해 제공되는 제 1 클럭 신호(110)에 의해 클럭되고, 상기 제 1 클럭 신호에 응답하여 다수의 순차선들에 상기 들어오는 데이터를 저장하도록 구성된다. 상기 버퍼는 다수의 점유 비트 레지스터들(206)에 다수의 비트들을 저장하도록 구성된다. 상기 다수의 점유 비트 레지스터들 각각은 상기 버퍼 내의 대응하는 순차선에 데이터가 존재한다는 것을 나타낸다. 상기 장치는 또한, 상기 버퍼에 결합되어 제 2 클럭 신호를 제공하도록 구성되는 게이트 제어 회로(225)를 포함한다. 이 클럭 게이트 회로는 또한, 상기 버퍼에 유효 데이터가 존재할 때 상기 제 2 클럭 신호를 시작하고, 상기 버퍼에 어떠한 데이터도 없을 때에는 상기 제 2 클럭 신호를 정지시키도록 구성된다.

Description

클럭이 전송되는 I/O 시스템을 위한 효율적인 클럭 시작 및 정지 장치{EFFICIENT CLOCK START AND STOP APPARATUS FOR CLOCK FORWARDED SYSTEM I/O}
컴퓨터 시스템은 전형적으로 실행중인 하나 또는 그 이상의 프로그램들 또는 어플리케이션들로부터의 많은 명령들을 처리하는 적어도 하나의 프로세서("마이크로프로세서"라고도 일컬어짐)를 포함한다. 처리 동작의 일부로서, 프로세서는 요구되는 데이터 전송을 위해 많은 시스템 버스들을 액세스해야 한다. 예를 들어, 멀티미디어 어플리케이션은 프로세서가 특정 데이터를 개별적인 비디오 프로세서로 전송한 다음, 그 비디오 프로세서로부터의 처리된 정보를 전용 비디오 버스를 통해 되돌려받을 것을 요구한다. 또한, 프로세서는 개별적인 I/O 버스를 통해 하나 또는 그 이상의 I/O 디바이스들과 통신하며, 전용 메모리 버스를 통해 하나 또는 그 이상의 시스템 메모리들과 통신한다. 컴퓨터 시스템에는, 컴퓨터 시스템을 구성하는 많은 전자 장치들 간의 상호 연결 레벨 및 시스템 장치의 복잡성에 기초하여, 부가적인 버스들이 제공된다.
컴퓨터 시스템은 또한 프로세서와 하나 또는 그 이상의 시스템 버스들 간의이진 정보 트래픽을 효과적으로 관리하는 버스 브리지를 포함한다. 이 버스 브리지는 또한, 프로세서와 하나 또는 그 이상의 I/O 디바이스들이 메모리를 독립적으로 액세스할 수 있다는 점에서, 시스템 내에서의 캐시 코히런트(cache coherent) 데이터 전송을 용이하게 한다. 많은 시스템 구성 요소들이 버스 브리지를 통해 프로세서에 결합된다. 다시 말해, 버스 브리지는 프로세서에 직접 연결되며, 이에 따라 프로세서로부터의 모든 어드레스 및 데이터 정보를 직접 수신한다. 버스 브리지는 수신된 정보를 적절한 시스템 버스들을 통해 적절한 시스템 장치들에 분배한다. 유사하게, 서로 다른 시스템 버스들을 통해 하나 또는 그 이상의 시스템 장치들로부터 수신된 정보는 규칙적인 방식으로 버스 브리지를 통해 프로세서로 전송된다.
두 개의 장치들 간에 데이터를 규칙적으로 교환하기 위하여, 장치들은 높은 대역폭 데이터 전송을 위해 클럭 전송 인터페이스를 통해 연결된다. 이러한 클럭 전송 인터페이스는 이진 정보의 지점간(point-to-point) 전송이 이루어지게 하는 바, 이는 송신기가 수신기에게 그 수신기에 전송된 데이터를 래치하는 전송 클럭을 제공함으로써 이루어진다. 이후, 수신기는 수신된 이진 정보를 그의 내부 클럭을 이용하여 샘플링한다. 송신기는 송신기에 의해 전송되는 어드레스 그리고/또는 데이터를 전송 클럭에 동기시킨다.
전형적인 반도체 디바이스는 동작하는 동안 전력을 낭비한다(즉, 전기적인 에너지를 열 에너지로 변환한다). 반도체 디바이스에 의해 낭비되는 전력은 그 반도체 디바이스가 실행 시간 동안 동작하는 속도(또는 주파수)에 비례한다. 반도체 디바이스의 동작 주파수가 높을 수록, 그 반도체 디바이스에 의해 더 많은 열 에너지가 발생된다. 전력 요건들이 중요한 어플리케이션들에서, 불필요한 전력 소모는 허용되지 않는다. 따라서, 전력 소모를 줄이기 위해 일부 장치들은 유휴 상태가 된다.
또한, 반도체 디바이스에 의해 발생되는 잡음의 양은 적시에 어느 지점으로 스위칭되는 디지털 로직의 양에 비례한다. 클럭 전송 I/O 디바이스의 잡음 및 전력 소모를 줄이기 위하여, 데이터가 수신기에 래치되면, 전송 클럭은 턴오프된다. 장치의 수신기는 전송 클럭이 정지된 후, 수신된 데이터를 계속해서 처리할 것이다. 어떠한 경우들에 있어서, 수신기 로직 클럭은, 송신기가 데이터 및 전송 클럭을 전송하기 시작할 때 동기를 유지하기 위해, 수신할 데이터가 없게 된 후에도 계속해서 실행된다.
클럭 전송 I/O 디바이스에서, 수신 디바이스는 처리할 데이터가 없을 때 저전력 상태에 들어가는 것이 바람직하다. 따라서, 송신기의 전송 클럭과 수신기의 내부 수신 로직 클럭 간에 요구되는 동기를 보장하면서, 수신기가 그의 저전력 상태에 들어가고 나갈 수 있도록 하는 것이 바람직하다.
본 발명은 컴퓨터 시스템들에 관한 것으로서, 특히 클럭이 전송되는 서브시스템들 및 전력 관리에 관한 것이다.
도 1은 클럭 전송을 이용하는 전송 장치 및 수신 디바이스의 일 실시예의 블록도이다.
도 2는 클럭 시작 및 정지 장치를 포함하는 수신기 로직의 일 실시예의 블록도이다.
본 발명은 많은 변형들 및 대안적인 형태들을 갖지만, 본원에서는 특정한 실시예들을 예시적으로 상세히 설명한다. 하지만, 이들에 대한 도면들 및 상세한 설명은 본 발명을 개시된 특정 형태에 한정하지 않는다. 본 발명은 첨부된 청구항들에 의해 정의되는 본 발명의 요지 및 범위 내에서 많은 변형들, 등가들 및 대안들을 갖는다.
상기 문제들은 클럭 전송 I/O 시스템을 위한 효율적인 클럭 정지 및 시작 장치에 의해 해결된다. 일 실시예에서, 상기 장치는 데이터 소스로부터 들어오는 데이터를 수신하는 버퍼를 포함한다. 이 버퍼는 데이터 소스에 의해 제공되는 제 1 클럭 신호에 의해 클럭된다. 이 버퍼는 들어오는 데이터를 제 1 클럭 신호에 응답하여 다수의 순차선(sequential line)들에 저장하도록 구성된다. 이 버퍼는 또한다수의 점유 비트 레지스터(occupied-bit register)들에 다수의 비트들을 저장하도록 구성된다. 이러한 다수의 점유 비트 레지스터들 각각은 버퍼의 대응하는 순차선에 데이터가 존재한다는 것을 나타낸다.
상기 장치는 또한, 상기 버퍼에 결합되어 제 2 클럭 신호를 제공하도록 구성된 클럭 게이트 회로를 포함한다. 이 클럭 게이트 회로는 또한, 버퍼에 유효 데이터가 존재하면 제 2 클럭 신호를 시작하고, 버퍼에 어떠한 유효 데이터도 없으면 제 2 클럭 신호를 정지시키도록 구성된다.
다른 실시예들에서, 상기 장치는 상기 버퍼에 결합된 다수의 동기 장치들을 포함한다. 이러한 다수의 동기 장치들 각각은 상기 다수의 점유 비트 레지스터들중 대응하는 레지스터의 출력을 래치하도록 구성된다. 상기 다수의 점유 비트 레지스터들 각각은 또한, 버퍼의 대응하는 순차선에 대응하는 데이터가 액세스된 후에, 그리고 유효 리셋 신호의 수신에 응답하여 리셋되도록 구성된다.
상기 설명된 장치는 유익하게는, 클럭이 전송되는 I/O 시스템으로 데이터를 수신하는 디바이스가 처리할 데이터가 없을 때에는 그의 내부 수신 로직 클럭을 셧오프시킬 수 있게 함으로써, 디바이스의 전력 소모 및 잡음을 감소시킬 수 있다. 또한, 상기 장치는 클럭 전송 I/O 시스템으로 데이터를 수신하는 디바이스가, 데이터가 수신되어 처리될 준비가 되면 그의 내부 수신 로직 클럭을 시작할 수 있게 한다.
본 발명의 다른 목적들 및 장점들은 첨부 도면을 참조하여 설명되는 하기의 상세한 설명으로부터 좀 더 명확해질 것이다.
도 1은 클럭 전송을 이용하는 송신 디바이스 및 수신 디바이스의 일 실시예의 블록도이다. 송신 디바이스(100)는 한 쌍의 연결부들에 의해 수신 디바이스(120)에 결합된다. 송신 디바이스(100)는 제 1 연결부를 통해 데이터(105)를 수신 디바이스(120)로 보낸다. 데이터(105)는 어드레스 정보 또는 데이터 정보 또는 둘 모두를 포함할 수 있다. 동기화된 데이터(105)의 정보를 유지하기 위하여, 송신 디바이스(100)는 또한 제 2 연결부를 통해 상기 데이터(105)에 대해 동기되는 전송 클럭(110)을 보낸다. 수신 디바이스(120)는 전송 클럭(110)을 이용하여 데이터를 래치하는 수신기 로직 유닛(200)을 포함한다. 수신 디바이스(120)는 또한 이 수신 디바이스(120)에 주요 클럭을 제공하는 클록 소스, 예를 들어 위상 동기루프(PLL) 클럭(130)을 포함한다. 이 PLL 클럭(130)은 수신 디바이스(120)의 내부 로직 및 수신기 로직 유닛(120)에 클럭 신호를 제공한다. 전형적으로, PLL 클럭(130)은 수신 디바이스(120)에 전력이 인가될 때 연속적으로 실행된다. 하기에서 좀 더 상세히 설명되는 바와 같이, 수신기 로직 유닛(200)은 클럭 게이트 회로를 포함하는 바, 이 회로는 로직의 일부에 대해서는 클럭이 정지되게 함으로써, 수신 디바이스(120)의 전력 소모 및 잡음 발생을 감소시킨다. 주목할 사항으로서, 본 발명에서는 한 쌍의 연결부들 만이 설명되지만, 송신 디바이스(100)와 수신 디바이스(120) 간에는 더 많은 연결부들이 있을 것이다. 설명을 명백하고 쉽게 하기 위해, 단지 한 쌍의 연결부들에 대해서만 설명한다.
도 2는 클럭 시작 및 정지 장치를 포함하는 수신기 로직 유닛의 일 실시예의 블록도이다. 단순함 및 명백함을 위하여, 도 1에 도시된 것들과 대응하는 회로 소자들에는 동일한 번호가 부여되어 있다. 도 2의 수신기 로직 유닛(200)은 데이터 입력부(105)로 들어오는 데이터 및 전송 클럭(110)을 수신하도록 결합된 데이터 버퍼(205)를 포함한다. 이 데이터 버퍼(205)는 N개의 점유 비트 레지스터들(206)을 포함한다. 수신기 로직 유닛(200)은 또한 N 내지 1 데이터 출력 멀티플렉서(215)에 결합된 언로드 포인터(220)를 포함한다. 데이터 버퍼(205)에는 동기 장치(225)가 결합된다. 이 동기 장치(225)는 또한 N 내지 1 점유 비트 멀티플렉서(230)에 결합된다. 클럭 게이트 회로(250)가 상기 N 내지 1 점유 비트 멀티플렉서(230) 및 유효 스트로브 플립 플롭(240)에 결합된다.
전형적인 클럭 게이트 회로는, 인에이블 또는 디스에이블 신호를 이용하여로직 블럭에 대해 클럭 소스를 게이트 또는 정지시키도록 구성된 로직을 포함한다. 상기 클럭 게이트 회로(250)는 코어 클럭(245)을 제공함으로써 새로운 클럭 도메인을 생성하는 바, 이 코어 클럭(245)은 이하 설명되는 바와 같이 수신기 로직 유닛(200)에 의해 이용된다. 상기 PLL 클럭(130)은 AND 게이트(253)의 한 입력에 제공되고, AND 게이트(253)의 다른 입력에는 게이팅 신호(254)가 제공된다. AND 게이트(253)의 출력은 코어 클럭(245)이다. 상기 게이팅 신호(254)는 네거티브 에지의 안티 글리치(anti-glitch) 플립 플롭(255)에 의해 발생된다. 이 안티 글리치 플립 플롭(255)은 PLL 클럭(130)을 반전시키는 인버터(252)에 의해 PLL 클럭(130)의 하강 에지 상에서 OR 게이트(251)의 출력을 래치한다. PLL 클럭(130)의 하강 에지 상에서 안티 글리치 플립 플롭(255)에 입력을 래치하게 되면, 입력 데이터가 안정해진다. 왜냐하면, 모든 로직이 상승 에지 상에서 클럭되어, 안티 글리치 플립 플롭(255)의 출력의 글리치를 방지하기 때문이다. 상기 클럭 게이트 회로(250)는 두 개의 신호들, 즉 코어 비지(core busy) 신호(260) 또는 코어 런(core run) 신호(261)중 어느 하나에 의해 게이트된다. 이 두 신호들 중에서 어느 한 신호가 논리 1이면, 코어 클럭(245)이 실행 모드가 된다. 어느 신호도 1이 아니면, 코어 클럭(245)은 정지할 것이다. 상기 코어 비지 신호(260)는 코어 클럭(245)이 실행될 것을 요구하는 수신기 로직 유닛(200) 내부의 어떠한 소스로부터 제공되는 바, 이에 대해서는 더 이상 설명하지 않는다. 상기 코어 런 신호(261)의 발생에 대해서는 하기에서 더 설명된다.
데이터 버퍼(205)는 도 2의 데이터 입력부(105)를 통해, 도 1의 송신 디바이스(100)와 같은 다른 디바이스 또는 회로로부터 들어오는 데이터를 수신한다. 데이터 버퍼(205)는 수신된 데이터를 전송 클럭(110)의 상승 에지에서 래치한다. 로드 포인터(210)는 이용가능한 다음 위치를 지시한 다음, 데이터 버퍼(205) 내의 위치들 전반에 대해 순차적으로 진행해 나아간다. 데이터 버퍼(205)는 데이터가 선입선출 방식으로 저장되는 순차적인 메모리 위치들로 이루어진다. 각 메모리 위치는 대응하는 점유 비트 레지스터(206)를 포함하는 바, 이는 설정될 때, 메모리 위치에 새로운 데이터가 저장되었음을 나타낸다. 특정 위치에 있는 데이터가 액세스되면, 대응하는 점유 비트 레지스터(206)는 리셋되어, 그 위치가 이제 새로운 데이터에 이용될 수 있음을 나타낸다.
데이터가 데이터 버퍼(205) 내의 위치들에 저장되고, 점유 비트 레지스터들(206)이 설정되면, 동기 장치(225)는 점유 비트 레지스터들(206)의 값을 래치한다. 동기 장치(225)는 각 점유 비트 레지스터에 대해 한 쌍의 플립 플롭들로 이루어진다. 한 쌍의 플립 플롭들을 이용함으로써, 점유 비트 레지스터들(206)의 값을 래치하는 데에 PLL 클럭(130)의 두 개의 클럭 주기를 필요로 한다. 동기 장치(225)의 각 플립 플롭 쌍의 출력은 N 내지 1 점유 비트 멀티플렉서의 한 입력이 된다.
언로드 포인터(220)는 리셋시 로드 포인터(210)의 시작 위치와 동일한 위치로 초기화된다. 언로드 포인터는 코어 클럭(245)에 의해 클럭되며, 로드 포인터(210)는 전송 클럭(110)에 의해 클럭된다. 이러한 클럭킹 방식은 독립적인 로드 및 언로드 동작들을 가능하게 한다. 언로드 포인터(220)는 데이터 출력 멀티플렉서(215) 및 N 내지 1 점유 비트 멀티플렉서(230) 상의 선택선들을 제어함으로써, 데이터 및 그의 대응하는 점유 비트를 동시에 지시한다. 언로드 포인터(220)는 유효 스트로브 신호(241) 및 활성 코어 클럭(245)에 의해 증분(increment)된다. N 내지 1 점유 비트 멀티플렉서(230)를 통과한 설정된 점유 비트는, 유효 스트로브 플립 플롭(240)에 래치되어 유효 스트로브 신호(241)를 생성한다. 이 유효 스트로브 신호(241)는 또한 액세스되었던 데이터 위치에 대응하는 데이터 버퍼(205)의 점유 비트 레지스터(206)를 리셋시키는 데에 이용된다. 새로운 데이터를 포함하는 데이터 버퍼(205)의 각 위치는 설정된 대응하는 점유 비트 레지스터를 갖게 될 것이다. N 내지 1 점유 비트 멀티플렉서(230)의 출력은 코어 런 신호(261)이다. 활성 코어 런 신호(261)는 코어 클럭(245)이 실행되게 한다. 데이터 버퍼(205)에 새로운 데이터가 있는 한, 코어 클럭(245)은 실행될 것이다. 또한, 코어 클럭(245)은 코어 비지 신호(260)에 의해 인에이블되는 경우, 계속해서 실행된다. 일단 모든 데이터가 데이터 버퍼(205)에 저장되면, 전송 클럭(110)은 정지된다. 그러나, 데이터 버퍼(205)는 데이터를 독립적으로 액세스하기 때문에, 데이터 버퍼(205)의 모든 데이터가 액세스될 때 까지, 코어 클럭(245)이 계속해서 실행되고 데이터가 계속해서 액세스될 것이다.
PLL 클럭(130)이 적어도 전송 클럭(110) 만큼 빠른 주파수에서 실행된다고 가정하면, 전송 클럭 도메인 로직은 데이터 버퍼(205)에 항상 공간이 있다고 가정한다. 상기 설명한 바와 같이, 두 개의 플립 플롭 동기 장치들을 이용하는 것은 점유 비트를 래치하는 데에 두 개의 클럭 주기들을 필요로 한다는 것을 의미한다. 또한, 데이터 버퍼(205)의 출력 스위칭 시간이 코어 클럭(245)의 주기 보다 훨씬 작다고 가정하면, 데이터는 점유 비트가 동기 장치(225)의 제 2 플립 플롭으로부터 출력되자 마자 액세스될 수 있다. 따라서, 데이터 버퍼(205)가 넘치지 않도록 하기위해서는, 점유 비트와 시작 코어 클럭(245)을 동기시키는 데에 걸리는 시간 동안 도달할 수 있는 데이터 조각들을 저장하기 위한 충분한 메모리 위치들을 포함해야 한다.
일단 상기 설명을 완전히 이해하게 되면, 당업자에게 있어 본 발명의 많은 수정들 및 변형들이 이루어질 수 있음은 자명하다. 하기의 청구항들은 이러한 모든 수정들 및 변형들을 포함한다.
본 발명은 클럭이 전송되는 서브 시스템들에 적용될 수 있다.

Claims (10)

  1. 클럭이 전송되는 I/O 서브 시스템에서 클럭을 시작 및 정지시키는 장치로서,
    데이터 소스로부터 들어오는 데이터를 수신하도록 결합된 버퍼(205)와, 여기서 상기 버퍼는 상기 데이터 소스에 의해 제공되는 제 1 클럭 신호(110)에 의해 클럭되고, 상기 버퍼는 상기 제 1 클럭 신호에 응답하여 다수의 순차선들에 상기 들어오는 데이터를 저장하도록 구성되며, 상기 버퍼는 다수의 점유 비트 레지스터들(206)에 다수의 비트들을 저장하도록 구성되고, 상기 다수의 점유 비트 레지스터들 각각은 상기 버퍼 내의 대응하는 순차선에 데이터가 존재한다는 것을 나타내며; 그리고
    상기 버퍼에 결합되어, 제 2 클럭 신호를 제공하도록 구성되고, 상기 버퍼에 유효 데이터가 존재할 때 상기 제 2 클럭 신호를 시작하고 상기 버퍼에 어떠한 데이터도 없을 때 상기 제 2 클럭 신호를 정지시키도록 구성된 클럭 게이트 회로(225)를 포함하는 것을 특징으로 하는 장치.
  2. 제 1 항에 있어서,
    상기 버퍼에 결합되어, 각각 상기 다수의 점유 비트 레지스터들중 대응하는 레지스터의 출력을 래치하도록 구성된 다수의 동기 장치들(225)을 더 포함하는 것을 특징으로 하는 장치.
  3. 제 2 항에 있어서,
    상기 다수의 동기 장치들에 결합되어, 상기 다수의 동기 장치들중 하나의 출력을 제공하도록 구성된 점유 비트 멀티플렉서(230)를 더 포함하는 것을 특징으로 하는 장치.
  4. 제 3 항에 있어서,
    상기 점유 비트 멀티플렉서는 또한 언로드 포인터에 의해 지시되는 입력을 선택하도록 구성되는 것을 특징으로 하는 장치.
  5. 제 3 항에 있어서,
    상기 다수의 동기 장치들중 하나의 출력은 상기 버퍼의 대응하는 순차선의 데이터가 유효한 지의 여부를 나타내는 것을 특징으로 하는 장치.
  6. 제 1 항에 있어서,
    상기 버퍼는 또한 상기 제 2 클럭 신호에 의해 클럭되는 언로드 포인터를 이용하여 데이터를 언로드하도록 구성되는 것을 특징으로 하는 장치.
  7. 제 6 항에 있어서,
    상기 버퍼는 또한 선입선출 버퍼로서 구성되는 것을 특징으로 하는 장치.
  8. 제 1 항에 있어서,
    상기 다수의 점유 비트 레지스터들 각각은 또한, 상기 버퍼의 대응하는 순차선에 존재하는 데이터가 액세스된 후, 그리고 유효 리셋 신호의 수신에 응답하여 리셋되도록 구성되는 것을 특징으로 하는 장치.
  9. 제 1 항에 있어서,
    상기 클럭 게이트 회로는 또한, 코어 제어 신호가 활성일 경우 상기 제 2 클럭 신호를 시작시키도록 구성되는 것을 특징으로 하는 장치.
  10. 제 2 항에 있어서,
    상기 다수의 동기 장치들 각각은 한 쌍의 플립 플롭들을 포함하는 것을 특징으로 하는 장치.
KR1020037001880A 2000-08-11 2001-05-09 클럭 포워드 i/o 시스템을 위한 효율적인 클럭 개시 및 정지 장치 KR100847364B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/637,178 2000-08-11
US09/637,178 US6782486B1 (en) 2000-08-11 2000-08-11 Apparatus for stopping and starting a clock in a clock forwarded I/O system depending on the presence of valid data in a receive buffer
PCT/US2001/014908 WO2002014993A2 (en) 2000-08-11 2001-05-09 Efficient clock start and stop apparatus for clock forwarded sytem i/o

Publications (2)

Publication Number Publication Date
KR20030064376A true KR20030064376A (ko) 2003-07-31
KR100847364B1 KR100847364B1 (ko) 2008-07-21

Family

ID=24554887

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037001880A KR100847364B1 (ko) 2000-08-11 2001-05-09 클럭 포워드 i/o 시스템을 위한 효율적인 클럭 개시 및 정지 장치

Country Status (9)

Country Link
US (1) US6782486B1 (ko)
EP (1) EP1309913B1 (ko)
JP (1) JP5230887B2 (ko)
KR (1) KR100847364B1 (ko)
CN (1) CN1230733C (ko)
AU (1) AU2001261295A1 (ko)
DE (1) DE60143435D1 (ko)
TW (1) TW569087B (ko)
WO (1) WO2002014993A2 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1302858A4 (en) * 2000-05-30 2005-02-09 Matsushita Electric Ind Co Ltd SYSTEM AND METHOD FOR PROCESSING DATA
US7478030B1 (en) * 2003-06-19 2009-01-13 Xilinx, Inc. Clock stabilization detection for hardware simulation
JP4296135B2 (ja) * 2004-07-23 2009-07-15 Okiセミコンダクタ株式会社 Pllクロック出力安定化回路
US7386749B2 (en) 2005-03-04 2008-06-10 Intel Corporation Controlling sequence of clock distribution to clock distribution domains
US7193909B2 (en) * 2005-05-02 2007-03-20 Mediatek Inc. Signal processing circuits and methods, and memory systems
US7279950B2 (en) * 2005-09-27 2007-10-09 International Business Machines Corporation Method and system for high frequency clock signal gating
JP4931912B2 (ja) * 2006-04-26 2012-05-16 パナソニック株式会社 信号伝送方法、送受信装置及び通信システム
WO2008001024A1 (en) 2006-06-29 2008-01-03 Arm Limited Controlling power consumption in a data processing apparatus
US7861192B2 (en) * 2007-12-13 2010-12-28 Globalfoundries Inc. Technique to implement clock-gating using a common enable for a plurality of storage cells
US8058905B1 (en) 2009-01-31 2011-11-15 Xilinx, Inc. Clock distribution to facilitate gated clocks
US8104012B1 (en) 2009-01-31 2012-01-24 Xilinx, Inc. System and methods for reducing clock power in integrated circuits
US8452997B2 (en) 2010-04-22 2013-05-28 Broadcom Corporation Method and system for suspending video processor and saving processor state in SDRAM utilizing a core processor
US20110302660A1 (en) * 2010-06-02 2011-12-08 Rupaka Mahalingaiah Method and apparatus for securing digital devices with locking clock mechanism
US20110299346A1 (en) 2010-06-03 2011-12-08 Ryan Fung Apparatus for source-synchronous information transfer and associated methods
US8954017B2 (en) 2011-08-17 2015-02-10 Broadcom Corporation Clock signal multiplication to reduce noise coupled onto a transmission communication signal of a communications device
US9183898B2 (en) * 2011-11-10 2015-11-10 Advanced Micro Devices, Inc. Multiple data rate wiring and encoding
GB2493416B (en) 2012-05-24 2014-04-23 Broadcom Corp Apparatus and method for synchronising signals
US9639488B2 (en) * 2014-06-20 2017-05-02 Advanced Micro Devices, Inc. Encoding valid data states in source synchronous bus interfaces using clock signal transitions
US10311191B2 (en) 2017-01-26 2019-06-04 Advanced Micro Devices, Inc. Memory including side-car arrays with irregular sized entries

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2203616B (en) 1987-04-01 1991-10-02 Digital Equipment Int Improvements in or relating to data communication systems
US6408346B1 (en) * 1989-11-03 2002-06-18 Compaq Computer Corporation System for communicating with an external device using a parallel port with DMA capabilities and for developing a signal to indicate the availability of data
US5155825A (en) 1989-12-27 1992-10-13 Motorola, Inc. Page address translation cache replacement algorithm with improved testability
US5452434A (en) * 1992-07-14 1995-09-19 Advanced Micro Devices, Inc. Clock control for power savings in high performance central processing units
EP0651319B1 (en) * 1993-10-29 2000-02-23 NCR International, Inc. System for transferring data
US5812875A (en) * 1995-05-02 1998-09-22 Apple Computer, Inc. Apparatus using a state device and a latching circuit to generate an acknowledgement signal in close proximity to the request signal for enhancing input/output controller operations
EP0834134B1 (en) * 1995-06-07 2005-02-16 Samsung Electronics Co., Ltd. Delay reduction in transfer of buffered data between two mutually asynchronous buses
JP3019917B2 (ja) 1996-08-05 2000-03-15 日本電気株式会社 高速fifo回路
JP4052697B2 (ja) 1996-10-09 2008-02-27 富士通株式会社 信号伝送システム、および、該信号伝送システムのレシーバ回路
US5974516A (en) 1996-10-18 1999-10-26 Samsung Electronics Co., Ltd. Byte-writable two-dimensional FIFO buffer having storage locations with fields indicating storage location availability and data ordering
JPH11120757A (ja) * 1997-10-13 1999-04-30 Toyo Commun Equip Co Ltd Fifoレジスタ回路
US6075833A (en) * 1998-12-02 2000-06-13 Quantum Corporation Method and apparatus for counting signal transitions
JP2000267770A (ja) * 1999-03-19 2000-09-29 Toshiba Digital Media Engineering Corp パワーセーブシステム

Also Published As

Publication number Publication date
CN1230733C (zh) 2005-12-07
KR100847364B1 (ko) 2008-07-21
CN1446330A (zh) 2003-10-01
WO2002014993A3 (en) 2002-08-29
DE60143435D1 (de) 2010-12-23
AU2001261295A1 (en) 2002-02-25
TW569087B (en) 2004-01-01
US6782486B1 (en) 2004-08-24
EP1309913A2 (en) 2003-05-14
EP1309913B1 (en) 2010-11-10
JP5230887B2 (ja) 2013-07-10
JP2004506975A (ja) 2004-03-04
WO2002014993A2 (en) 2002-02-21

Similar Documents

Publication Publication Date Title
KR100847364B1 (ko) 클럭 포워드 i/o 시스템을 위한 효율적인 클럭 개시 및 정지 장치
KR100289443B1 (ko) 소스 동기화 준안정성 프리버스
US6209072B1 (en) Source synchronous interface between master and slave using a deskew latch
US5564042A (en) Asynchronous clock switching between first and second clocks by extending phase of current clock and switching after a predetermined time and appropriated transitions
JPH06510648A (ja) 高周波低電力cmos回路
KR100230120B1 (ko) 동기식 반도체 메모리
US6519688B1 (en) Read data valid loop-back for high speed synchronized DRAM controller
JP3929698B2 (ja) バスを介したデータ処理方法
US7024533B2 (en) Mechanism for synchronizing multiple skewed source-synchronous data channels with automatic initialization feature
US6163545A (en) System and method for data transfer across multiple clock domains
US5706485A (en) Method and apparatus for synchronizing clock signals in a multiple die circuit including a stop clock feature
US5758131A (en) Bus adapter for synchronizing communications between two circuits running at different clock rates
KR100963706B1 (ko) 데이터 전송 방법, 데이터 전송 브리지 및 고속 데이터전송 장치
CN111313869B (zh) 一种千兆以太网收发器的时钟切换电路
US6584536B1 (en) Bus transaction accelerator for multi-clock systems
EP1436685B1 (en) Data synchronization on a peripheral bus
US6760392B1 (en) Method and apparatus to provide fixed latency early response in a system with multiple clock domains with fixable clock ratios
JP2003157228A (ja) データ転送回路
US6377650B1 (en) Counter register monitor and update circuit for dual-clock system
US9658857B2 (en) Method and apparatus for processor to operate at its natural clock frequency in the system
JP2004326222A (ja) データ処理システム
EP1242897B1 (en) Method and apparatus for differential strobing in a communications bus
US6255869B1 (en) Method and apparatus for system resource negotiation
KR19990086737A (ko) 비동기식 선입선출 시스템의 제어 장치
US20240013824A1 (en) Data transmission apparatus and method having clock gating mechanism

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
FPAY Annual fee payment

Payment date: 20130620

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150618

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160616

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170616

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190617

Year of fee payment: 12