KR100312147B1 - 반도체집적회로 - Google Patents

반도체집적회로 Download PDF

Info

Publication number
KR100312147B1
KR100312147B1 KR1019980020919A KR19980020919A KR100312147B1 KR 100312147 B1 KR100312147 B1 KR 100312147B1 KR 1019980020919 A KR1019980020919 A KR 1019980020919A KR 19980020919 A KR19980020919 A KR 19980020919A KR 100312147 B1 KR100312147 B1 KR 100312147B1
Authority
KR
South Korea
Prior art keywords
data
clock
clock signal
circuit
signal
Prior art date
Application number
KR1019980020919A
Other languages
English (en)
Other versions
KR19990006707A (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 KR19990006707A publication Critical patent/KR19990006707A/ko
Application granted granted Critical
Publication of KR100312147B1 publication Critical patent/KR100312147B1/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
    • 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)
  • Power Sources (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Information Transfer Systems (AREA)

Abstract

클록 스큐의 영향을 삭감하고, 조작용 소비 전력을 삭감시키는 반도체 집적 회로를 제공한다.
전체의 회로를 복수의 회로 블록(10, 20, 30)으로 분할하고, 각각에 대해 별개의 계통의 클록 신호(1, 2, 3)를 공급한다. 각 블록 내에서는 클록 스큐가 최소가 되도록 클록을 배분한다. 회로 블록간의 데이터는 큐(queue)(40, 50, 60, 70)를 거쳐 전달되며, 각 큐에는 입력부, 출력부에 접속된 각 블록에 공급되는 클록 신호를 공급한다. 큐는, 입력측, 출력측의 클록 신호에 각각 동기하여 데이터를 입출력한다. 큐에는 1 개 이상의 데이터 엔트리가 있으며, 입력 순서 또는 임의의 순서로 데이터를 출력한다.

Description

반도체 집적 회로{SEMICONDUCTOR INTERGRATED CIRCUIT}
본 발명은 클록 신호에 동기하여 동작하는 반도체 집적 회로에 관한 것이다.
도 12는 종래의 반도체 집적 회로의 일 예의 구성도이다.
종래, 이러한 종류의 반도체 집적 회로는, 신호의 연산 처리나 전달을 확실히 행하기 위해, 집적 회로 전체를 하나의 클록 신호에 동기시켜 동작시키고 있었다. 일반적으로 이러한 종류의 반도체 집적 회로는, 기능마다 회로 블록으로 나누어져, 블록간을 데이터 신호나 제어 신호로 접속하여 구성되어 있다. 여기서는, 설명의 편의를 위해, 3 개의 회로 블록, 즉 회로 블록 A10, 회로 블록 B20, 회로 블록 C30으로 이루어지는 반도체 집적 회로를 상정하고 있으나, 회로 블록 수가 더 많아도 마찬가지이다. 각각의 블록에는 동일한 클록 신호(1)가 입력된다. 회로 블록 A는 외부로부터의 데이터 신호(150)나 다른 블록으로부터의 데이터 신호(220, 310)를 저장해서, 클록 주기마다 처리를 행하여, 다른 회로 블록으로 데이터 신호(110)를 보낸다. 회로 블록 B나 회로 블록 C에서도, 마찬가지로 클록 주가마다 데이터를 저장해서, 처리를 행하여 다른 블록에 데이터를 보낸다. 어떠한 회로 블록에서도 하나의 신호를 소스로 하는 동일 주파수의 클록 신호가 입력되며, 회로 블록을 구성하는 1 요소인 레지스터 회로 또는 플립플롭 회로에서 클록마다 중간 데이터를 유지하고, 그 신호에 대해 처리를 행하여, 다음의 클록 신호에 따라 처리 결과를 레지스터 회로나 플립플롭 회로에 기록한다. 도 12에는 제어 신호가 기록되어 있지 않으나, 제어 블록을 하나의 회로 블록이라고 생각하면, 데이터 신호와 동일한 형식으로 다른 회로 블록에 대해 제어 신호가 보내진다. 또한, 각 회로 블록에는, 제어 회로를 포함하는 경우가 있다. 이 경우는, 제어 신호가 데이터 신호와 병렬로 전송된다.
이러한 회로 구성의 경우, 클록 신호를 회로 전체에 걸쳐, 레지스터 회로나 플립플롭 회로에 동일한 지연 시간을 분배하여, 클록 신호가 변화되는 타이밍을 일치시킬, 즉 클록 스큐를 작게 할 필요가 있다. 일본 특허 공개 공보 평8-30655호에는 클록 스큐를 삭감하기 위한 설계 방법이 기재되어 있다.
또한, 1996년 2월, IEEE, International Solid-State Circuits Conference, Digest of Slide-Supplement 섹션 FA8.6에 의하면, 클록 신호에 고의적으로 어긋남을 발생시켜, 임의의 회로 부분만 클록의 주기를 의사(擬似)적으로 길게 하여, 다른 회로 부분보다도 긴 시간의 처리를 할당하고 있는 예가 기재되어 있다. 클록 신호는 하나의 신호로부터 분배되며, 클록 신호를 겹치지 않게 한 회로 부분은, 클록 버퍼의 단수를 변경하는 등, 설계 단계에서 목표대로 클록 신호의 근본으로부터의 지연 시간을 다른 회로 부분과 겹치지 않게 하고 있다.
종래의 제1 문제점은, 클록 신호를 반도체 집적 회로 전체에 동일한 지연 시간으로 분배하는 것이 곤란하다는 점이다.
그 이유는, 반도체 집적 회로의 회로 규모는 증대하는 경향에 있고, 클록 신호를 필요로 하는 플립플롭의 수도 많아지며, 각각에 대해 공급되는 클록의 스큐가 적어지도록 설계하는 것이 곤란해지고, 반도체 집적 회로를 구성하는 소자의 치수가 작아지고, 제조시의 편차의 영향이 크기 때문에, 설계시에 클록 신호 분배의 지연을 일치시켜도, 실제의 회로에서는 소자마다 지연 시간이 달라, 클록 스큐가 발생하기 때문이다. 또한, 고의적으로 클록 신호에 어긋남을 발생시키는 경우는, 설계 단계에서, 어긋남의 양을 결정할 필요가 있어, 클록 신호의 소스로부터 플립플롭까지의 지연 시간을 억제하는 점에는 변함없다.
제2 문제점은, 클록 스큐가 집적 회로의 성능을 대폭 악화시킨다는 점이다.
그 이유는, 집적 회로의 성능을 향상시키기 위해서는 클록 주기를 단축시켜 많은 처리를 단시간에 행해야 하지만, 클록 스큐가 있으면 신호 전파 시의 에러를 피하기 위해 스큐 시간 동안 처리를 행할 수 없게 되므로, 클록 주기를 길게 할 필요가 있기 때문이다.
제3 문제점은 소비 전력이 커진다는 점이다.
그 이유는, 집적 회로의 성능을 향상시키기 위해, 클록 주파수를 높게 하면, 그에 비례하여 소비 전력이 커지기 때문이다. 또한, 회로 전체에서 클록 주파수를 결정해 버리면, 처리가 적어도 동일 주파수에서 동작시킬 필요가 있다.
따라서, 본 발명의 목적은, 반도체 집적 회로가 대규모화되고, 칩 전체에 분배되는 클록의 스큐가 커져도 동작을 보증하는 회로의 구성을 제공하는 것이다.
본 발명의 다른 목적은, 집적 회로 전체에 배분되어 있는 클록 신호가 소비하는 전력이나, 그 클록 신호에 의해 동작하고 있는 회로의 소비 전력을 삭감하는 것이다.
본 발명의 반도체 집적 회로는, 클록 신호에 동기하여 동작하는 반도체 집적 회로에 있어서, 전체의 회로를 기능마다 복수의 회로 블록으로 분할하고, 회로 블록 각각에 대해 별개의 클록 신호를 공급하며, 각 회로 블록 내에서는 스큐를 최소가 되도록 클록 버퍼의 크기 및 각 버퍼의 부하의 밸런스를 고려하여 배치되며, 회로 블록의 임의의 2 개간의 데이터 신호는 2 개의 회로 블록에 공급되는 클록 신호로 제어되는 큐를 거쳐 전달되는 것을 특징으로 하고 있다.
또한, 회로 블록 각각에 대해 공급되는 상기 클록 신호는, 하나의 클록 신호를 소스로 하여 독립된 경로에 의해 공급되거나, 복수의 PLL 회로에 의해 생성된 것이거나, 어느 경우라도 좋다.
또한, 회로 블록 각각에 공급되는 클록 신호의 주파수가 서로 다른 것이어도 좋고, 회로 블록 각각에 공급되는 서로 다른 주파수를 가진 클록 신호가 복수의 PLL 회로에 의해 생성된 것이어도 좋다. 그리고, 복수의 PLL 회로의 출력의 주파수가, 상기 PLL 회로가 공급하는 클록 신호로 동작되는 회로 블록의 데이터 처리 량에 따라 제어되는 것도 바람직하다.
또, 제1 클록 신호에 따라 데이터를 저장하고 제2 클록 신호에 따라 데이터를 출력하는 데이터 버퍼, 및 상기 제2 클록 신호에 따라 동작하고 데이터 버퍼의 출력을 유지하는 복수의 버퍼 또는 FIFO 버퍼로 구성되는 큐를 포함하는 것도 바람직하다.
그리고, 큐는 수퍼스칼라 프로세서에서의 명령 큐, 리저베이션 스테이션, 리오더 버퍼, 어드레스 큐 중의 어느 하나, 또는 모두에 의해 구성되어 있는 것이 바람직하며, 수퍼스칼라 프로세서에 포함되는 큐의 전후에서 클록 주파수가 다른 것이어도 좋고, 수퍼스칼라 프로세서에서 연산기, 캐시 메모리 등의 각 구성 요소에서의 처리 량에 따라 클록 주파수를 변화시키는 것도 좋다.
이들 구조에 의해, 각 회로 블록을 접속하는 큐는, 각각의 클록 신호를 입력하고, 입력측의 회로 블록의 클록 신호에 동기하여 데이터를 저장하며, 출력측의 회로 블록의 클록 신호에 동기하여 데이터를 출력한다. 이에 의해, 다른 클록으로 동작하는 회로 블록간에서 데이터를 주고받을 수 있다. 따라서, 회로 클록간의 클록 신호에 스큐나 주파수 차이가 있어도 동작이 가능하다. 또한, 회로 블록은 전체 회로 보다 작으므로, 회로 블록 내에서는 스큐를 적게 클록 신호를 분배할 수 있다. 또한, 회로 블록간에 주파수 차이가 있어도 되므로, 처리 량이 적은 회로 블록의 클록 주파수를 낮게 설정할 수 있으므로, 소비 전력을 삭감할 수 있다.
도 1은 본 발명의 반도체 집적 회로의 일 실시예의 블록도.
도 2는 도 1의 큐의 일 실시예의 구성도.
도 3은 도 2의 각 데이터 엔트리에 선택기가 구비되는 다른 경우의 구성도.
도 4는 클록 신호 A, B의 주파수에 차이가 없으나, 스큐가 존재하는 경우의 큐의 동작 설명도.
도 5는 클록 신호 A의 주파수가 클록 신호 B의 주파수 보다 높은 경우의 큐의 동작 설명도.
도 6은 클록 신호 A의 주파수가 클록 신호 B의 주파수 보다 낮은 경우의 큐의 동작 설명도.
도 7은 제2 실시예에서 하나의 클록 신호(4)로부터 각 회로 블록으로 동일한 주파수의 클록 신호를 공급하는 경우의 블록도.
도 8은 제3 실시예에서, 각 회로 블록에 구비된 PLL(96)에서, 원 클록 신호(4)로부터 분배된 클록 신호를 기준 신호로 하여 각각 클록 신호를 발생시켜 회로 블록에 공급하는 경우의 블록도.
도 9는 제4 실시예에서, 각 회로 블록에 구비된 PLL(96)에서, 입력되는 기준 클록 신호(4, 5, 6)도 별개로 다른 회로로부터 공급된 경우의 블록도.
도 10은 제5 실시예에서, 각 회로 블록에 구비된 PLL(97)에서, 입력되는 기준 클록 신호(4, 5, 6)도 별개로 다른 회로로부터 공급되며, 또한 각 회로로부터 각각 제어 신호(100, 200, 300)가 피드백 되는 경우의 블록도.
도 11은 제6 실시예에서 본 발명의 반도체 장치를 수퍼스칼라 프로세서에 적용한 경우의 블록도.
도 12는 종래의 반도체 회로의 일 예의 구성도.
<도면의 주요 부분에 대한 부호의 설명>
1∼8 : 클록 신호
10, 20, 30 : 회로 블록(A, B, C)
40, 50, 60, 70 : 큐(제3, 제1, 제4, 제2)
80 : 데이터 버퍼
81, 81' : 데이터 FIFO
82, 82' : 엔트리 콘트롤러
83∼86 : 데이터 엔트리
87 : 선택기
90∼94 : 회로 블록
95 : 클록 버퍼
96, 97 : PLL
100, 200, 300 : PLL 제어 신호
110, 210, 220, 310, 410, 510, 610, 710 : 데이터 신호
111, 211, 221, 311, 411, 511, 611, 711 : 리퀘스트 신호
112, 212, 222, 312, 412, 512, 612, 712 : 비지 신호
150, 350, 360, 800, 810, 820 : 데이터 신호
801, 811, 821 : 리퀘스트 신호
802, 812, 822 : 비지 신호
900 : 프로그램 카운터 레지스터
901 : 인크리멘터
902 : 명령 캐시
903 : 분기 예측 유닛
910, 911 : 명령 디코더
912, 913 : 레지스터 파일
920, 921, 930∼932 : 연산기 유닛
940 : 데이터 캐시
950 : 명령 큐
951, 952 : 리오더 버퍼
953∼959 : 리저베이션 스테이션
960 : 어드레스 큐
961∼963 : 큐
다음으로, 본 발명의 실시예에 대해 도면을 참조하여 설명한다.
도 1은 본 발명의 반도체 집적 회로의 일 실시예의 블록도, 도 2는 도 1의 큐의 일 실시예의 구성도, 도 3은 도 2의 각 데이터 엔트리에 선택기가 구비되는 다른 경우의 구성도, 도 4는 클록 신호 A, B의 주파수에 차이가 없으나, 스큐가 존재하는 경우의 큐의 동작 설명도, 도 5는 클록 신호 A의 주파수가 클록 신호 B의 주파수보다도 높은 경우의 큐의 동작 설명도, 도 6은 클록 신호 A의 주파수가 클록 신호 B의 주파수보다도 낮은 경우의 큐의 동작 설명도이다.
도 1에서, 전체의 회로는 3 개의 회로 블록으로 분할되어 있다. 회로 블록 A10은 외부로부터의 신호(150), 회로 블록 B20으로부터의 데이터 신호(220) 및 회로 블록 C30으로부터의 데이터 신호(310)를 수취하며, 처리한 결과의 데이터신호(110)를 회로 블록 B에 보낸다. 단, 회로 블록 B로부터의 신호는 제1 큐(50)를 거쳐 데이터 신호(510)로서 수취한다.
큐와의 사이에서 데이터를 주고받기 위해, 제1 큐와 회로 블록 A간에는 리퀘스트 신호(511), 비지 신호(512)가 주고받아진다. 또, 회로 블록 B와 제1 큐간에는, 리퀘스트 신호(221)와 비지 신호(222)가 주고받아진다. 마찬가지로, 회로 블록 C와 회로 블록 A간에는, 제2 큐(70)가 개재되어 있어, 회로 블록 C로부터의 데이터 신호는 큐로부터의 데이터 신호(710)로서 회로 블록 A에 제공된다. 마찬가지로, 회로 블록 A와 제2 큐간에는 리퀘스트 신호(711), 비지 신호(712)가 회로 블록(C)과 제2 큐간에는 리퀘스트 신호(311), 비지 신호(312)가 주고받아진다.
그리고, 회로 블록 A로부터 회로 블록 B로 데이터를 전송하기 위해, 제3 큐(40)가 개재되어 있어, 회로 블록 A의 데이터 출력(110)은 제3 큐의 데이터 출력(410)으로서 회로 블록 B에 제공된다. 회로 블록 A와 제3 큐간에는 리퀘스트 신호(111)와 비지 신호(112)가 주고받아지며, 회로 블록 B와 제3 큐간에는 리퀘스트 신호(411)와 비지 신호(412)가 주고받아진다. 회로 블록 B나 회로 블록 C에서도 마찬가지로 신호의 주고받음이 행해지며, 그 사이에 제4 큐(60)가 개재되어 있다.
도 1에는 제어 신호가 도시되어 있지 않으나, 제어 회로는 밀접한 회로가 포함되는 블록과 동일한 회로 블록에 넣어지며, 다른 회로 블록에 전송되는 데이터에 밀접한 제어 신호는 그 데이터 신호와 병렬로 큐를 개재하여 다른 회로 블록에 전송된다.
회로 블록 A는 클록 신호 A1에 동기하여 동작한다. 또, 회로 블록 B는 클록 신호 B2에 동기하고, 회로 블록 C는 클록 신호 C3에 동기하여 동작하고 있다. 각 회로 블록 내로 제한하면, 전체의 회로에 비해 회로 규모가 작으므로, 클록 스큐를 작게 할 수 있다. 각 클록간에는, 스큐가 있는 동일 주파수의 신호를 제공해도 좋고, 전혀 다른 주파수의 클록을 제공해도 좋다. 회로 블록 A와 회로 블록 B간에 있는 제1 큐(50)와 제3 큐(40)에는, 모두 클록 A와 클록 B의 2 개의 클록 신호가 입력되며, 제1 큐(50)는 클록 신호 A에서 데이터를 저장하고, 클록 신호 B에서 데이터를 출력한다. 제3 큐(40)는 클록 신호 B에서 데이터를 저장하고, 클록 신호 A에서 데이터를 출력한다. 이러한 큐를 개재함으로써, 클록이 다른 회로 블록간에서 데이터를 주고받는다.
클록 A1은 회로 블록 A10, 제1 큐(50), 제2 큐(70) 및 제3 큐(40)에 입력된다. 이 클록 A는 최종적으로 이들 4 개의 회로 내에 있는 플립플롭 회로나 래치 회로에 공급된다. 이들 모든 플립플롭 회로나 래치 회로에 대해 클록의 스큐를 최소로 해야 한다. 그 때문에, 근본인 클록 신호에 수 개의 제1 단 째의 클록 버퍼를 접속하고, 제1 단 째의 각각의 클록 버퍼에는 동등한 부하가 되도록 동수의 제2 단 째의 클록 버퍼와 그들을 접속하는 배선을 접속한다. 이 때, 배선도 부하가 되므로, 제1 단 째의 각각의 클록 버퍼의 출력이 접속되는 배선 길이는 거의 동일해지도록 한다. 각각의 제2 단 째의 클록 버퍼에는, 마찬가지로 부하가 동등해지도록, 복수의 제3 단 째의 클록 버퍼와 동일한 길이의 배선을 접속한다. 이것을 반복하여, 모든 플립플롭 회로나 래치 회로에 동일한 단수의 클록 버퍼에서 클록 신호가 공급할 수 있을 때까지, 버퍼의 수를 증가시켜 간다. 이상과 같은 클록 버퍼 회로를 사용함으로써 클록 스큐를 최소로 할 수 있다. 클록 B2, 클록 C3에 대해서도 마찬가지이다.
도 2는 본 발명의 실시예에서의 제1 내지 제4 큐(50, 70, 40, 60)의 구성예를 도시한 블록도이다. 큐는, 입력된 데이터를 유지하는 데이터 버퍼(80), 복수의 데이터를 유지하는 데이터 FIFO(81) 및 FIFO를 콘트롤하는 엔트리 콘트롤러(82)로 구성되어 있다. 여기서는 데이터 FIFO는 데이터를 유지하는 4 개의 데이터 엔트리(83 내지 86)로 구성되어 있다. 데이터가 데이터 입력(800)으로부터 데이터 버퍼(80)에 입력되어 유지된다. 이 때, 리퀘스트 신호(801)와 비지 신호(802)를 사용하여 핸드셰이크된다. 데이터 버퍼에 데이터가 유지되면, 비어 있는 데이터 엔트리에 데이터가 이동된다.
데이터 버퍼에는 2 계통의 클록 신호 A7과 클록 신호 B8이 입력되며, 데이터의 저장은 제1 클록(7)에, 출력은 제2 클록(8)에 동기하여 행해진다. 데이터 엔트리(83∼86)는 엔트리 콘트롤러(82)에 의해 제어되며, 어느 데이터 엔트리에 유지되는지가 결정된다. 또한, 엔트리 콘트롤러는 데이터 엔트리에 빈자리가 있는지의 여부를 판단하여 데이터 버퍼에 전송한다. 여기서도, 리퀘스트 신호(811)와 비지 신호(812)에 의해 핸드셰이크된다. 데이터 엔트리에 데이터가 유지되면, 데이터 출력(820)으로부터 데이터가 출력된다. 이 출력이 다음의 회로 블록에 이동되면, 엔트리를 해방한다. FIFO의 최저에 해당하는 엔트리의 데이터가 해방되면, 다른 엔트리의 데이터가 최저에 채워지는 형태로 이동한다. 엔트리의 해방의 제어도 엔트리 콘트롤러가 행하며, 출력측에 접속되는 회로 블록과, 리퀘스트 신호(821)와 비지 신호(822)로 핸드셰이크된다. 데이터 엔트리나 엔트리 콘트롤러는 제2 클록(8)에 동기하여 동작한다.
또한, 데이터 입력 신호(800)는 도 1에서의 데이터 신호(110 또는 220) 등에 상당하는 신호이며, 데이터 출력 신호(820)는 도 1에서의 데이터 신호(410 또는 510) 등에 상당하는 신호이다.
도 3은 도 2의 FIFO 버퍼(81)를, 각 데이터 엔트리로부터 출력할 수 있도록 변경한 버퍼(81')로 대체하고, 각 엔트리로부터의 출력을 선택기(87)로 선택 출력하도록 한 것이다. 이러한 변경을 가함으로써, 데이터 버퍼(80)로부터 데이터 엔트리에 등록되는 순번을 바꾸어 데이터를 출력측의 회로 블록에 송출할 수 있다. 도 3에 도시한 바와 같은 큐를 도 1의 큐로서 사용할 수도 있다.
다음으로, 도 4 내지 도 6을 참조하여, 큐의 동작을 설명한다. 여기서는, 편의상, 데이터 엔트리의 수를 도 1 내지 도 3에 도시한 4 개가 아니라 2 개로 하고 있다. 엔트리의 수가 달라도 일반성을 잃지 않는다.
도 4는 클록 신호 A 및 클록 신호 B간에 주파수의 차이가 없으나, 스큐가 존재하는 경우의 동작 예이다. 데이터 입력(800)에는 클록 A1 내지 A3간에, 데이터가 데이터 A, 데이터 B, 데이터 C의 순서로 클록마다 입력된다. 데이터가 공급되는 동안은 리퀘스트 신호(801)는 high 상태가 된다. 이 데이터가 클록 신호 A에 동기하여 데이터 버퍼(80)에 유지된다. 데이터 버퍼에 유지된 데이터는 클록 신호 B에 동기하여, 데이터 신호(810)에 출력된다. 유효한 데이터가 유지되어 있는 동안은 리퀘스트 신호(811)는 high가 된다. 리퀘스트 신호를 받아 엔트리 콘트롤러(82)는 데이터 FIFO(81)의 데이터 엔트리에 데이터를 채운다.
최초의 상태에서 데이터 엔트리는 비어있다. 최초의 클록 B1에서는 데이터 A를 1 번째의 데이터 엔트리 A에, 클록 B2에서는 데이터 B를 2 번째의 데이터 엔트리 B에 채운다. 클록 B1, B2의 사이는 출력이 접속되는 회로 블록이 비지 신호(822)를 출력하고 있으므로, 데이터 엔트리는 해방되지 않는다. 데이터 엔트리는 2 개밖에 없으므로, 클록 B3에서는 데이터 C가 데이터 엔트리에 유입되지 않는다. 따라서, 엔트리 콘트롤러는 비지 신호(812)를 high로 한다. 이것이, 데이터 버퍼를 통해 비지 신호(802)로서 입력측의 회로 블록에 전달된다.
이것을 받아, 클록 A4에서도 동일한 데이터 C를 입력한다. 클록 B3에서는 비지 신호(822)가 low로 변하므로, 데이터 엔트리 A의 데이터가 출력되며, 해방된다. 이어서, 클록 B4에서는 데이터 C가 데이터 엔트리 B에, 데이터 B가 데이터 엔트리 A에 이동된다. 비지 신호(812나 802)는 low로 변화되고, 다음의 데이터 D가 데이터 버퍼에 저장된다. 그리고, 다음의 클록에 따라 데이터 엔트리 B에 등록된다. 클록 A6 내지 A8에서는 새로운 데이터가 입력되지 않고, 리퀘스트 신호(801)가 low가 된다. 데이터 버퍼에도 새로운 데이터가 등록되지 않고, 클록 B6 내지 B8의 사이는 리퀘스트 신호(811)도 low로 되어 있으나, 출력측의 비지 신호(822)가 클록 B6, B7의 사이에서 high가 되어 있으므로, 데이터 엔트리가 해방되지 않고, 데이터 엔트리 A에 데이터 D가 등록된 채로 유지된다.
클록 B8에서 비지 신호가 low가 되므로, 데이터 D가 출력되며, 데이터 엔트리 A가 해방된다. 클록 A9 내지 A11에 걸쳐서는 데이터 E, F, G가 차례로 입력되며, 마찬가지의 순서에 의해, 데이터 버퍼를 거쳐 데이터 엔트리에 등록된다. 도중에, 클록 B10에서 출력측의 비지 신호가 high로 되어 있으므로, 데이터 F의 출력에 2 클록에 걸쳐, 데이터 G가 데이터 엔트리 B에 등록된다.
도 5는 클록 신호 A의 주파수가 클록 신호 B 보다 높은 경우의 동작 예이다. 클록 A1 내지 A3에 걸쳐, 데이터 A, 데이터 B, 데이터 C가 차례로 클록마다 입력된다. 클록 B1에서 데이터 A가 데이터 버퍼에 저장되며, 리퀘스트 신호(811)가 high가 되고, 데이터 엔트리 A에 등록된다. 클록 B2에서 데이터 B가 데이터 버퍼에 저장되어, 데이터 엔트리 B에 등록된다. 클록 B1, B2에서는 출력측의 비지 신호(822)가 high가 되므로, 데이터 엔트리는 해방되지 않는다. 다음의 클록 A3에서는, 그 동안에 클록 신호 B의 상승이 없으므로, 비지 신호(802)를 클록 A4에서 high로 하여, 동일한 데이터 C를 입력한다.
클록 B3에서는, 데이터 버퍼에 C가 등록되지만, 데이터 엔트리에 빈자리가 없으므로 비지 신호(812)가 high가 되며, 이 때 클록 신호 A가 상승한 클록 A5에서는 비지 신호(802)가 high가 되므로, 클록 A5에서도 데이터 C를 입력한다. 클록 B3에서 데이터 A가 데이터 엔트리로부터 해방되며, 클록 B4에서는 데이터 버퍼의 데이터 C가 데이터 엔트리 B에 등록되며, 데이터 B가 데이터 엔트리 A에 이동한다. 클록 A6에서는 그 동안에 클록 신호 B의 상승이 없으므로, 데이터 버퍼가 등록되지 않고, 클록 A7에서 비지 신호(802)가 high가 되며, 데이터 D를 반복 입력한다. 클록 B5에서 데이터 D가 데이터 버퍼에 저장되어, 데이터 엔트리 B에 등록된다. 데이터 C가 데이터 엔트리 A에 이동한다.
클록 A8에서는, 입력되는 데이터가 없으므로 리퀘스트 신호(801)는 low가 된다. 그러므로, 클록 B6에서는 데이터 버퍼에 저장되는 데이터가 없어, 리퀘스트 신호(811)도 low가 된다. 클록 B6, B7에서는 출력측의 비지 신호(822)가 high가 되므로, 데이터 엔트리 A의 데이터 D가 해방되지 않고 남아 있다. 클록 A9에서는 그 동안에 클록 신호 B의 상승이 없으므로, 데이터 버퍼에 저장되지 않고, 클록 A10에서 비지 신호(802)를 high로 해서 동일한 데이터 E를 입력한다. 데이터 E는 클록 B7에서 데이터 버퍼에 저장되어, 데이터 엔트리 B에 등록된다. 클록 A11에서 데이터 F가 입력되며, 클록 B8에서 데이터 버퍼에 저장되지만, 데이터 엔트리에 빈자리가 없으므로, 비지 신호(812)가 high가 되며, 클록 A12에서는 입력측의 비지 신호(802)도 high가 된다.
도 6은 클록 신호 A의 주파수가 클록 신호 B 보다 낮은 경우의 동작 예이다. 클록 A1으로부터 클록 A6까지, 데이터 A로부터 F가 차례로 입력되어, 리퀘스트 신호(801)가 high가 된다. 클록 B1의 상승 시에는 리퀘스트 신호(801)가 low이므로, 데이터 버퍼에 데이터가 저장되어 있지 않다. 클록 B2에서는, 데이터 A가 데이터 버퍼에 저장되어, 데이터 엔트리 A에 등록된다. 클록 B1, B2에서는 출력측의 비지 신호 822가 high이므로, 엔트리 A의 데이터 A가 해방되지 않는다. 클록 B3에서는, 데이터 버퍼에 데이터 B가 저장되어, 데이터 엔트리 B에 등록된다. 클록 B3 동안에는 클록 신호 A의 상승이 없으므로, 클록 B4에서는 동일한 데이터가 입력된다. 그러므로, 새로운 데이터가 데이터 버퍼에 저장되지 않아, 리퀘스트 신호(811)는low가 된다. 그 동안, 데이터 엔트리 A의 데이터 B가 출력되어 해방된다.
블록 B5에서는, 데이터 버퍼에 데이터 C가 저장되어, 데이터 엔트리 A에 등록되며, 곧 출력되어 해방된다. 이어서, 클록 B6에서는 데이터 버퍼에 데이터 D가 저장되어, 데이터 엔트리 A에 등록된다. 출력측의 비지 신호(822)가 클록 B6 내지 B9의 사이에서 high가 되므로, 데이터는 해방되지 않는다. 클록 B6 동안에는 클록 신호 A의 상승이 없으므로, 클록 B7에서는 데이터 버퍼에 새로운 데이터가 저장되지 않고, 리퀘스트 신호(811)는 low가 된다. 클록 B8에서는 데이터 E가 데이터 버퍼에 저장되어, 데이터 엔트리 B에 등록된다. 클록 B9에서는, 데이터 버퍼에 데이터 F가 등록되지만, 데이터 엔트리에 빈자리가 없으므로, 비지 신호(812)가 high가 된다. 클록 B10에서는, 새로운 데이터가 판독되지 않으므로 리퀘스트 신호(811)가 low가 되지만, 엔트리에 빈자리가 없고 정체되어 있는 데이터 F가 있으므로, 비지 상태가 계속된다. 이 비지 상태가 입력측의 비지 신호(802)에 전달된다.
클록 A7에서는 비지 신호가 오고 있으므로 계속해서 데이터 F가 입력된다. 클록 B10에서는 출력측의 비지 신호(822)가 low가 되므로, 데이터 엔트리 A의 데이터 D가 출력되어 해방된다. 클록 B11에서는 데이터 F가 데이터 엔트리 B에 등록되며, 데이터 E가 데이터 엔트리 A에 이동한다. 데이터 E는 출력되어 해방된다. 클록 B12에서는, 데이터 버퍼에 데이터 G가 저장되어, 데이터 엔트리 B에 등록된다. 데이터 F는 데이터 엔트리 A로 이동하여 출력되어 해방된다.
클록 신호 A, B의 주파수가 다른 경우는, 데이터 버퍼에서, 클록 신호 A에서 완전히 데이터가 저장되기 전에, 클록 버퍼 B에 의해 데이터가 출력되지 않도록,클록 신호 B의 상승에 대한 셋업 시간과 홀드 시간 동안에 데이터가 저장된 경우는, 데이터 버퍼는 리퀘스트 신호(811)를 low로 한다. 클록 주파수가 일치하고 있을 때, 클록 신호 B의 셋업 시간과 홀드 시간 동안에 데이터가 저장되지 않도록, 고의적으로 클록 신호 A와 클록 신호 B에 타이밍의 어긋남을 발생하도록 클록 신호를 공급한다. 이것은, 스큐를 없애는 설계보다도 간단하다.
다음으로, 도 7 내지 도 11을 참조하여, 본 발명의 제2 내지 제6 실시예를 설명한다.
도 7은 제2 실시예에서, 하나의 클록 신호(4)로부터 각 회로 블록에 동일한 주파수의 클록 신호를 공급하는 경우의 블록도이다.
모든 클록은 원 클록 신호(4)로부터 분배되며, 클록 버퍼(95)에 의해, 구동력을 증강시켜 각각의 회로 블록에 공급하고 있다. 회로 블록 내부에서는 클록 스큐가 따르지 않도록 클록을 분배한다. 각각의 회로 블록은 플립플롭의 수도 다르고, 클록 신호의 입력 부하도 다르다. 그러므로, 회로 블록마다 클록 버퍼의 단수를 바꾸어, 부하에 걸맞은 구동력으로 증강하고 있다. 클록 버퍼의 단수가 다르므로, 회로 블록간에서는 클록 스큐가 발생하지만, 큐를 개재하여 데이터를 주고받으므로, 스큐의 영향은 없어진다.
도 8은 제3 실시예에서, 각 회로 블록에 구비된 PLL(96)에서, 원 클록 신호(4)로부터 분배된 클록 신호를 기준 신호로 하여, 각각 클록 신호를 발생시켜, 회로 블록에 공급하는 경우의 블록도이다.
회로 블록 내에서는 스큐가 적어지도록, 클록 신호를 분배한다. PLL은 입력과 동일한 주파수의 신호를 클록 신호로서 출력하는 것이어도 좋고, 입력 신호를 체배나 분주하여 출력하는 것이어도 좋다. 각각의 PLL의 출력 신호의 주파수를 같게 해도, PLL의 출력에는 위상의 어긋남이 있고, 또한 지터가 있으므로, 각각의 회로 블록에 입력되는 클록 신호의 상승 타이밍은 다르다. 그러나, 큐를 거쳐 데이터를 주고받으므로, 문제없이 데이터를 주고받을 수 있다. 각각의 PLL에 다른 체배율을 설정하여, 각 회로 블록이 상이한 주파수에서 동작시켜도 좋다.
도 9는 제4 실시예에서 각 회로 블록에 구비된 PLL(96)에서, 입력되는 기준 클록 신호(4, 5, 6)도 별개로 다른 회로로부터 공급된 경우의 블록도이다.
이러한 회로 구성을 취하면, 각 회로 블록의 클록 주파수는 임의로 설정할 수 있다. PLL은 기준 주파수와 동일한 주파수를 출력하는 것이어도, 체배하여 출력하는 것이어도 좋다. 회로 블록 중, 처리 량이 많은 것을 높은 주파수로 하여 스루풋을 높이고, 처리 량이 적은 것을 낮은 주파수로 하여 스루풋을 낮출 수 있다.
도 10은 제5 실시예에서 각 회로 블록에 구비된 PLL(97)에서 입력되는 기준 클록 신호(4, 5, 6)도 별개로 다른 회로로부터 공급되며, 또한 각 회로로부터 각각 제어 신호(100, 200, 300)가 피드백되는 경우의 블록도이다.
이 신호는, 회로 블록의 현재의 처리 량이 많은지 적은지를 나타내는 신호이며, 처리 량이 많아지면 PLL이 출력하는 클록 주파수를 높게 제어하여, 스루풋을 높게 한다. 반대로, 처리 량이 적을 때는 PLL이 출력하는 클록 주파수를 낮게 제어하여, 스루풋을 낮게 하고, 회로 블록이 소비하는 전력을 삭감한다. PLL의 주파수 제어는, 체배율을 변화시켜도 좋고, PLL내의 VCO의 입력 전압 신호에 오프셋을 주어 주파수를 변화시켜도 좋다.
도 11은 제6 실시예에서, 본 발명의 반도체 장치를 수퍼스칼라 프로세서에 적용한 경우의 블록도이다.
수퍼스칼라 프로세서에서는, 데이터의 대기를 행하기 위해, 명령 버퍼나, 리저베이션 스테이션, 리오더 버퍼, 어드레스 버퍼 등, FIFO 구성을 하는 구성 요소가 많이 있다. 그러므로, 이들 FIFO를 본 발명의 도 2나 도 3에 도시한 바와 같은 큐의 구성으로 하여, 그 전후에서 클록의 계통을 변화시킨다. 도 2에서는, 데이터 엔트리가 FIFO 구성이 되어 있으므로, 입력된 순서대로 출력되고 있으나, 도 3과 같은 구성으로 하면, 출력 순서를 변경시킬 수 있으므로, 명령의 처리 순서를 변화시킬 수 있다.
도 11의 예는, 2 개의 연산 처리 라인을 가진 수퍼스칼라 프로세서이다. 제1 회로 블록(90)에는, 프로그램 카운터 레지스터(900), 인크리멘터(901), 명령 캐시(902), 분기 예측 유닛(903)의 프로그램 카운터와 명령 발행 부분이 포함되고, 제2 회로 블록(91)에는, 제1 명령 디코더(910), 제2 명령 디코더(911), 제1 레지스터 파일(912), 제2 레지스터 파일(913)이 포함된다. 제3 회로 블록(92)은 제1 연산기(920)와 제2 연산기(921)를 포함하며, 제4 회로 블록(93)은 제3 연산기(930)와 제4 연산기(931), 제5 연산기(932)를 포함한다. 제5 회로 블록(94)은 데이터 캐시(940)로 구성된다. 제1 및 제2 회로 블록간은, 명령 큐(950)로 접속된다. 조건 분기 등의 정보는 제1 큐(963)를 거쳐 되돌린다. 제2 및 제3 회로 블록간과,제2 및 제4 회로 블록간은 리저베이션 스테이션(953 내지 959)과, 리오더 버퍼(951, 952)에 의해 데이터를 주고받는다. 제3 회로 블록과 제5 회로 블록은, 어드레스 디코더(960)를 거쳐 데이터 캐시에 어드레스나 데이터를 넘겨주며, 판독한 데이터를 제2 큐(961)를 거쳐 수취한다. 제4 회로 블록은 제5 회로 블록으로부터, 제3 큐(962)를 거쳐 데이터를 수취한다. 각각의 큐 등의 회로는, 입력측과 출력측의 쌍방의 클록 신호를 공급한다.
제1 내지 제5 회로 블록은 각각 별개의 클록 신호를 공급해도 좋다. 별개의 클록으로는, 동일한 주파수이며 스큐가 존재하는 클록 신호이어도 좋고, 각 블록의 처리 량에 따라 주파수가 다른 클록 신호이어도 좋다.
제1 회로 블록은, 명령 큐 전에, 제2 어드레스 큐를 설치하여 2 개의 회로 블록으로 분할해도 좋다. 제2 회로 블록은, 제1 명령 디코더와 제1 레지스터 파일을 포함하는 블록과, 제2 명령 디코더와 제2 레지스터 파일을 포함하는 블록으로 분할해도 좋다. 제3 회로 블록이나 제4 회로 블록은 연산기마다 별개의 회로 블록으로 분할해도 좋다. 도 11에는 기재되어 있지 않으나, 외부와 데이터를 주고받기 위한 제어 블록도 하나의 회로 블록을 구성하며, 제1 회로 블록과의 사이의 큐를 거쳐 명령 캐시에 명령 코드를 기록하고, 제5 회로 블록과의 사이의 큐를 거쳐, 데이터 캐시와 데이터를 주고받는다. 제1 레지스터 파일과 제2 레지스터 파일의 쌍방으로부터, 데이터 캐시에 데이터를 주고받기 위해, 제2 회로 블록의 제1 레지스터 파일로부터, 제4 회로 블록에 이어지는 리저베이션 스테이션(959)을 설치하여, 이 리저베이션 스테이션의 출력과, 리저베이션 스테이션(958)의 출력을 골라서 어드레스 큐(960)에 입력하고 있다.
상술한 바와 같이 본 발명은 전체 회로의 회로 블록으로의 분할, 큐의 배치 및 그 구조를 한정하는 것 등에 의해, 높은 주파수의 클록 신호에 따라 반도체 집적 회로를 동작시킬 수 있으며, 또한, 높은 주파수에서 동작하는 반도체 집적 회로에서도 소비 전력을 삭감할 수 있는 반도체 집적 회로를 제공할 수 있는 효과가 있다.

Claims (11)

  1. 클록 신호에 동기하여 동작하는 반도체 집적 회로에 있어서,
    전체의 회로를 기능마다 복수의 회로 블록으로 분할하고,
    상기 회로 블록 각각에 대해 별개의 클록 신호를 공급하며,
    각 회로 블록 내에서는 스큐를 최소가 되도록 클록 버퍼의 크기 및 각 버퍼의 부하의 밸런스를 고려하여 배치되며,
    상기 회로 블록의 임의의 2 개간의 데이터 신호는 상기 2 개의 회로 블록에 공급되는 상기 클록 신호로 제어되는 큐(queue)를 거쳐 전달되는 것을 특징으로 하는 반도체 집적 회로.
  2. 제1항에 있어서, 상기 회로 블록 각각에 대해 공급되는 상기 클록 신호는 하나의 클록 신호를 소스로 하여 독립된 경로에 의해 공급되는 반도체 집적 회로.
  3. 제1항에 있어서, 상기 회로 블록 각각에 대해 공급되는 상기 클록 신호는 복수의 PLL 회로에 의해 생성된 것인 반도체 집적 회로.
  4. 제1항에 있어서, 상기 회로 블록 각각에 공급되는 클록 신호의 주파수가 서로 다른 반도체 집적 회로.
  5. 제4항에 있어서, 상기 회로 블록 각각에 공급되는 서로 다른 주파수를 가진 클록 신호가 복수의 PLL 회로에 의해 생성된 것인 반도체 집적 회로.
  6. 제5항에 있어서, 상기 복수의 PLL 회로의 출력의 주파수가, 상기 PLL 회로가 공급하는 클록 신호로 동작되는 회로 블록의 데이터 처리 량에 따라 제어되는 반도체 집적 회로.
  7. 제1항에 있어서,
    제1 클록 신호에 따라 데이터를 저장하고 제2 클록 신호에 따라 데이터를 출력하는 데이터 버퍼, 및
    상기 제2 클록 신호에 따라 동작하고 상기 데이터 버퍼의 출력을 유지하는 복수의 버퍼
    로 구성되는 큐를 포함하는 반도체 집적 회로.
  8. 제1항에 있어서,
    제1 클록 신호에 따라 데이터를 저장하고 제2 클록 신호에 따라 데이터를 출력하는 데이터 버퍼, 및
    상기 제2 클록 신호에 따라 동작하고 상기 데이터 버퍼의 출력을 유지하는 FIFO 버퍼로 구성되는 큐를 포함하는 반도체 집적 회로.
  9. 제8항에 있어서, 상기 큐가, 수퍼스칼라 프로세서에서의 명령 큐, 리저베이션 스테이션, 리오더 버퍼, 어드레스 큐 중의 어느 하나, 또는 모두에 의해 구성되어 있는 반도체 집적 회로.
  10. 제9항에 있어서, 상기 수퍼스칼라 프로세서에 포함되는 큐의 전후에서 클록 주파수가 다른 반도체 집적 회로.
  11. 제10항에 있어서, 상기 수퍼스칼라 프로세서에서 연산기, 캐시 메모리 등의 각 구성 요소에서의 처리 량에 따라 클록 주파수를 변화시키는 반도체 집적 회로.
KR1019980020919A 1997-06-06 1998-06-05 반도체집적회로 KR100312147B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP97-149226 1997-06-06
JP9149226A JP3000961B2 (ja) 1997-06-06 1997-06-06 半導体集積回路

Publications (2)

Publication Number Publication Date
KR19990006707A KR19990006707A (ko) 1999-01-25
KR100312147B1 true KR100312147B1 (ko) 2001-12-12

Family

ID=15470630

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980020919A KR100312147B1 (ko) 1997-06-06 1998-06-05 반도체집적회로

Country Status (3)

Country Link
US (1) US6240524B1 (ko)
JP (1) JP3000961B2 (ko)
KR (1) KR100312147B1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040114609A1 (en) * 2001-02-14 2004-06-17 Ian Swarbrick Interconnection system
US7194053B2 (en) * 2001-12-18 2007-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for matching data and clock signal delays to improve setup and hold times
JP3734032B2 (ja) * 2002-07-25 2006-01-11 日本電気株式会社 情報処理装置及びそのメモリ制御方法
US20040186960A1 (en) * 2003-03-20 2004-09-23 Sun Microsystems, Inc. Computer processor data prefetch unit
JP3974065B2 (ja) * 2003-03-27 2007-09-12 株式会社東芝 プロセッサ
US20040199672A1 (en) * 2003-04-04 2004-10-07 Hsilin Huang System and method for high speed handshaking
US20050232218A1 (en) * 2004-04-19 2005-10-20 Broadcom Corporation Low-power operation of systems requiring low-latency and high-throughput
EP1819823A2 (en) * 2004-12-01 2007-08-22 Bayer Schering Pharma Aktiengesellschaft Generation of replication competent viruses for therapeutic use
US20080046684A1 (en) * 2006-08-17 2008-02-21 International Business Machines Corporation Multithreaded multicore uniprocessor and a heterogeneous multiprocessor incorporating the same
GB2450564B (en) 2007-06-29 2011-03-02 Imagination Tech Ltd Clock frequency adjustment for semi-conductor devices
JP2013196380A (ja) * 2012-03-19 2013-09-30 Ricoh Co Ltd クロック生成装置、及び情報処理装置
KR20140078912A (ko) * 2012-12-18 2014-06-26 삼성전자주식회사 메모리 시스템 및 이를 포함하는 시스템 온 칩
JP7419944B2 (ja) 2020-04-13 2024-01-23 富士通株式会社 半導体装置及び同期化方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2719226B2 (ja) 1990-10-01 1998-02-25 株式会社日立製作所 情報処理システム
JPH0553681A (ja) 1991-08-23 1993-03-05 Matsushita Electric Ind Co Ltd クロツク信号切り換え装置
JPH05113834A (ja) 1991-10-24 1993-05-07 Fujitsu Ltd デイジタル信号処理システム
US5256912A (en) 1991-12-19 1993-10-26 Sun Microsystems, Inc. Synchronizer apparatus for system having at least two clock domains
JP2791243B2 (ja) * 1992-03-13 1998-08-27 株式会社東芝 階層間同期化システムおよびこれを用いた大規模集積回路
US5396460A (en) * 1992-05-15 1995-03-07 Nec Corporation FIFO memory in which number of bits subject to each data read/write operation is changeable
US5457644A (en) * 1993-08-20 1995-10-10 Actel Corporation Field programmable digital signal processing array integrated circuit
US5600824A (en) * 1994-02-04 1997-02-04 Hewlett-Packard Company Clock generating means for generating bus clock and chip clock synchronously having frequency ratio of N-1/N responsive to synchronization signal for inhibiting data transfer
US5564022A (en) * 1994-02-09 1996-10-08 Intel Corporation Method and apparatus for automatically inserting clock buffers into a logic block to reduce clock skew
JPH07262237A (ja) * 1994-03-18 1995-10-13 Hitachi Ltd クロックスキュー制御方式
US5548620A (en) 1994-04-20 1996-08-20 Sun Microsystems, Inc. Zero latency synchronized method and apparatus for system having at least two clock domains
US5774371A (en) * 1994-08-03 1998-06-30 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit and layout designing method for the same
JP3424777B2 (ja) 1995-02-17 2003-07-07 富士フイルムマイクロデバイス株式会社 信号処理装置
US5790841A (en) * 1996-04-15 1998-08-04 Advanced Micro Devices, Inc. Method for placement of clock buffers in a clock distribution system
JP3528413B2 (ja) * 1996-04-19 2004-05-17 ソニー株式会社 関数クロック発生回路並びにそれを用いたイネーブル機能付きd型フリップフロップおよび記憶回路
US5742798A (en) * 1996-08-09 1998-04-21 International Business Machines Corporation Compensation of chip to chip clock skew
US5764965A (en) * 1996-09-23 1998-06-09 Silicon Graphics, Inc. Synchronization infrastructure for use in a computer system
US5774003A (en) * 1996-10-09 1998-06-30 National Semiconductor Corporation Flip-flop cell having clock skew protection
JPH10134591A (ja) * 1996-10-28 1998-05-22 Toshiba Corp ダィナミックレジスタを含む半導体集積回路
JP3840731B2 (ja) * 1997-03-21 2006-11-01 富士通株式会社 半導体集積回路
US5982827A (en) * 1997-05-14 1999-11-09 Hewlett-Packard Co. Means for virtual deskewing of high/intermediate/low DUT data
JP3690899B2 (ja) * 1997-05-30 2005-08-31 富士通株式会社 クロック発生回路及び半導体装置
US5828870A (en) * 1997-06-30 1998-10-27 Adaptec, Inc. Method and apparatus for controlling clock skew in an integrated circuit

Also Published As

Publication number Publication date
KR19990006707A (ko) 1999-01-25
JPH10340130A (ja) 1998-12-22
US6240524B1 (en) 2001-05-29
JP3000961B2 (ja) 2000-01-17

Similar Documents

Publication Publication Date Title
KR100312147B1 (ko) 반도체집적회로
US5648732A (en) Field programmable pipeline array
KR100231605B1 (ko) 반도체 메모리 소자의 전력소모 방지 장치
US5978926A (en) Processor chip for using an external clock to generate an internal clock and for using data transmit patterns in combination with the internal clock to control transmission of data words to an external memory
US7353310B2 (en) Hierarchical memory access via pipelining with deferred arbitration
US7580963B2 (en) Semiconductor device having an arithmetic unit of a reconfigurable circuit configuration in accordance with stored configuration data and a memory storing fixed value data to be supplied to the arithmetic unit, requiring no data area for storing fixed value data to be set in a configuration memory
JP2735034B2 (ja) クロック信号分配回路
US4884192A (en) Information processor capable of data transfer among plural digital data processing units by using an active transmission line having locally controlled storage of data
JP4007483B2 (ja) 高位合成装置および高位合成方法
JP2007128633A (ja) 半導体記憶装置及びこれを備えた送受信システム
KR100432923B1 (ko) 넓은 주파수 대역에 대응할 수 있는 레지스터 및 이를이용한 신호 발생 방법
JP2006099719A (ja) 処理装置
JP4748896B2 (ja) 同期型データ転送処理装置
US7949860B2 (en) Multi thread processor having dynamic reconfiguration logic circuit
US6175912B1 (en) Accumulator read port arbitration logic
JPH10133768A (ja) クロックシステム、半導体装置、半導体装置のテスト方法、及びcad装置
US20010005879A1 (en) Inter-device coupler
JP4878727B2 (ja) 半導体集積回路
JPS6369262A (ja) 半導体集積回路
US7626435B2 (en) High resolution delay line architecture
US6246257B1 (en) FIFO circuit
US7047392B2 (en) Data processing apparatus and method for controlling staged multi-pipeline processing
JP2008198003A (ja) アレイ型プロセッサ
JP2008118179A (ja) 半導体集積回路
KR100291230B1 (ko) 데이터 처리 장치

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: 20120924

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20130924

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20140923

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee