JP3663486B2 - 半導体集積回路 - Google Patents

半導体集積回路 Download PDF

Info

Publication number
JP3663486B2
JP3663486B2 JP2000266971A JP2000266971A JP3663486B2 JP 3663486 B2 JP3663486 B2 JP 3663486B2 JP 2000266971 A JP2000266971 A JP 2000266971A JP 2000266971 A JP2000266971 A JP 2000266971A JP 3663486 B2 JP3663486 B2 JP 3663486B2
Authority
JP
Japan
Prior art keywords
circuit
clock
data
signal
circuit block
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2000266971A
Other languages
English (en)
Other versions
JP2002076127A (ja
Inventor
貢 楠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000266971A priority Critical patent/JP3663486B2/ja
Priority to US09/944,134 priority patent/US20020027461A1/en
Publication of JP2002076127A publication Critical patent/JP2002076127A/ja
Application granted granted Critical
Publication of JP3663486B2 publication Critical patent/JP3663486B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/15Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors
    • H03K5/15013Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs
    • H03K5/1506Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs with parallel driven output stages; with synchronously driven series connected output stages
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/07Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop using several loops, e.g. for redundant clock signal generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • H03L7/0814Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the phase shifting device being digitally controlled
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/085Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal
    • H03L7/089Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal the phase or frequency detector generating up-down pulses

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、半導体集積回路さらには半導体チップ上における同期用のクロック信号の分配方式に適用して有効な技術に関し、例えばシステムLSIにおけるブロック間データ送信用のクロック信号の供給方式に利用して有効な技術に関する。
【0002】
【従来の技術】
論理LSI(大規模集積回路)においては、外部から供給されるクロック信号(以下、単にクロックと称する)をLSI全体に分配してそのクロックに同期してフリップフロップへのデータの取込みや信号の送信、伝達などが行なわれる。このように、外部からのクロックをLSI全体に分配する場合、クロックが通る配線の長さの相違等に起因してクロックの到達タイミングがずれるいわゆるクロックスキューが生じる。クロックスキューがあると、フリップフロップが誤ったデータを取り込んだり、論理ゲートの出力信号に不所望のひげ状パルスが発生して次段の回路が誤動作するおそれがある。そこで、従来よりこのクロックスキューを低減するために、クロックをチップ中心から末端の回路に向かって次第に枝分かれするツリー状の等長配線により各部に供給する方式等が採用されている(特開平11−202971号公報、特開平5−159080号公報等)。
【0003】
一方、近年、半導体プロセスの進歩により、クロックの周波数すなわちチップの動作周波数は、1GHz以上にも達するようになってきている。また、集積度も向上しているため、同一チップ内に、複数のプロセッサを設けたり、大規模なキャッシュメモリ等を取り込むなど、これまでは複数のチップで構成されていた機能が1つのチップに搭載されたシステムLSIが提供されるようになってきた。
【0004】
ところが、現在の半導体チップでは、論理設計や診断その他の面から、チップ全面で同期化されたクロック分配系を有する方式が一般的である。そして、かかるクロック分配系では、クロックスキューはクロック分配系の面積に比例し、チップサイズが増大するのに伴なってクロックスキューが大きくなるとともに、チップサイズが同一であっても、クロック周波数が高くなるほどクロック周期に対するクロックスキューの割合が相対的に増加することとなるため、LSIの動作周波数の向上を妨げる原因となることが明らかとなった。
【0005】
また、動作周波数の向上が進むと、チップ内でデータの長距離送信を行う際に、信号遅延時間が長くなって数サイクル分を要する送信となる。そこで、本発明者らは、信号伝送経路上に複数のフリップフロップを挿入して1サイクル毎に各フリップフロップにデータをラッチして順次後段へ送信する方式について検討した。このようにすると、配置したラッチごとに、クロックスキュー(tck)及びフリップフロップのセットアップ時間(tsu)、ディレイ余裕(tpd)を考慮した設計が必要となる。つまり、送信にNサイクルを要する場合には、送信時間は実質的なディレイに、N×(tck+tsu+tpd)を加算した値になり、これを加味してクロックの周波数を決定しなればならなくなるため、高速送信が困難になってしまうという問題点がある。なお、ボード上のLSI間でデータとクロックを送信してクロックスキューを管理するようにした発明として、例えば国際公開WO96/29655号がある。
【0006】
この発明の目的は、送信サイクルすなわちクロック周期に対するクロックスキューの割合を低減することができ、これによって動作周波数を高めることができるクロック分配技術を提供することにある。
【0007】
この発明の他の目的は、チップ内の長距離データ送信における遅延時間を短縮し、正確にデータを送信することができるクロック供給技術を提供することにある。
【0008】
この発明のさらに他の目的は、動作周波数を増大させてもトータルの消費電力は抑えることができるクロック供給技術を提供することにある。
【0009】
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添附図面から明らかになるであろう。
【0010】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
【0011】
すなわち、本発明では、同一半導体チップ内にプロセッサやメモリなど複数の機能ブロックを有するシステムLSIのような半導体集積回路において、クロック分配系を、それぞれの機能ブロックごとに限定して設けるようにした。クロックスキューは、クロック分配系の配線長におおむね比例するが、プロセスが進歩した場合、動作周波数の向上は図られてもチップ面積は縮小されないため、クロック分配系の配線長も低減されず、これがクロックスキュー割合の増加の要因となる。しかし、上記のように、クロック分配系をそれぞれの機能ブロックごとに限定して設けることにより、各クロック分配系の面積は小さくなり、これによってクロック配線長が短くなってクロックスキューを小さくすることができ、その結果、動作周波数の向上を図ることができる。
【0012】
しかしながら、上記のように分割されたクロック分配系を持つチップでは、各ブロック間でデータ送信をしようとした場合、長距離送信で信号遅延が大きくなり且つブロック間でクロックスキューのずれが大きいという問題が発生する。とりあえず送信を可能とするためには、例えば、ブロック間の長距離送信のみクロック周波数を下げることが考えられるが、これでは、大容量のデータを高速に送信することができない。そこで、最近大規模なボードシステム上での半導体チップ間の送信において使用されているクロック並送方式をチップ内部に持ち込むことが考えられる。
【0013】
この並送送信方式は、データと並行してクロックを送信する方式であり、データ送信用とクロック伝送用の配線の長さが同じになるように設計すれば、送信データに対する相対的なクロックスキューはなくなるので、受端側で並送クロックによってデータを受信すればよい。本方式を用いることにより、データ送信路の途中にフリップフロップを配置する必要がなくなるため、途中に配置されるN個のフリップフロップのそれぞれにおける遅延時間(tck+tsu+tpd)を加味することが不用となる。
【0014】
しかしながら、これまで装置間やシステム上のチップ間で採用されて来た上記のような並送クロックを用いたデータ送信方式をそのままチップ内に持ち込もうとすると、信号を伝達する装置間の送信で用いる同軸ケーブルや、システムで用いるボードの伝送線と比較し、チップ内では配線による抵抗が大きいために、信号立上がり時間trと信号立下がり時間tfが極端に大きくなってしまい、1つのデータが到着する前に次のデータを送信するというような、多サイクル送信が困難である。また、配線抵抗をボード上の伝送線並みに小さくなるように配線幅、厚さを大きくすることも考えられるが、配線幅を極端に大きくすると面積との関係からデータ送信のための配線本数を大幅に減少させる必要が生じてしまうとともに、配線層を厚くすることはプロセスにかかる負担が大きくなりすぎて現実的ではない。
【0015】
そこで、本発明では、ブロック間長距離送信方式として送信データと一緒にクロックを等長配線で送る並送方式を採用して受信側では並送クロックで受信データをラッチするように構成し、さらにブロック間送信用配線には所定の長さ毎にバッファを配置するようにした。
【0016】
より具体的には、1個の半導体基板上に複数の回路ブロックが形成され、各回路ブロック毎にクロック分配系が形成されている半導体集積回路において、上記複数の回路ブロックのうちいずれか2つの回路ブロック間には、データ信号を送信する1または2以上の第1の信号線とクロック信号を送信する第2の信号線が設けられ、一方の回路ブロックから他方の回路ブロックへ上記第1および第2の信号線を介してデータ信号とクロック信号とが送信され、受信側の回路ブロックは受信したクロック信号に基づいて受信したデータ信号を取り込むように構成するとともに、上記第1の信号線と第2の信号線はほぼ等しい配線長を有しかつ途中に1または2以上のバッファ回路が設けるようにしたものである。
【0017】
このように、配線の途中にバッファを配置した場合、バッファが信号の立上がりおよび立下がりを急峻にするつまり波形整形をするので、遅延時間が短縮される。これとともに、最初に送出したデータが受信側に届く前に次のデータを伝送路にのせることが可能となり、連続したデータの高速送信が可能となる。
【0018】
また、上記データ信号およびクロック信号を送信する側の回路ブロックには送信しようとするデータをラッチする出力ラッチ回路を、また上記データ信号を受信する側の回路ブロックには受信したデータをラッチする入力ラッチ回路をそれぞれ設け、上記出力ラッチ回路および入力ラッチ回路はデータ送信側の回路ブロックから送信される前のクロック信号および送信後のクロック信号によってそれぞれラッチ動作を行なうように構成した。このようにすれば、送信側の出力ラッチ回路と受信側の入力ラッチ回路が同一のクロック信号でラッチ動作されることとなるため、クロックスキューが見えなくなり、正しいデータの送信が可能となる。
【0019】
また、望ましくは、上記データ信号およびクロック信号を送信する側の回路ブロックは、送信したデータ信号およびクロック信号が受信側の回路ブロックに到達する前に次のデータ信号およびクロック信号を上記第1の信号線にのせるように構成する。これにより、連続したデータを送信する場合に高速な送信が可能となる。
【0020】
さらに、上記データ信号およびクロック信号を受信する側の回路ブロックは、上記信号線より受信したクロック信号が、実質的に等長とみなされるように設計された配線系(配線およびバッファ回路等を含む)を介して当該ブロック内のクロックに同期して動作する回路に分配されるように構成する。これにより、受信側の回路ブロックに、送信側回路ブロックのPLL回路とは別個にPLL回路を設けてやる必要がない。
【0021】
また、望ましくは、上記クロック信号は、データ信号が送信される際以外はデータ送信側の回路ブロックからデータ受信側の回路ブロックへ送信されないように構成する。これにより、動作の必要ない回路ブロックにはクロックが供給されないようになるため、チップ全体としての消費電力を押さえることが可能となる。
【0022】
さらに、上記データ送信側の回路ブロックと受信側の回路ブロックとの間には、受信側の回路ブロックが受信したクロック信号を送信側の回路ブロックに対して帰還させる第3の信号線を設けるとともに、上記送信側の回路ブロックには当該回路ブロック内のクロック信号の位相と上記帰還されたクロック信号の位相とが合うように送信クロックの位相を調整する位相調整回路を設ける。これにより、クロックを送信する回路ブロックが受信側回路ブロックから送られてくる応答データを受信する場合に、正しい応答データの取込みが可能となる。
【0023】
上記位相調整回路は、上記送信側の回路ブロック内のクロック信号の位相と上記帰還されたクロック信号の位相とを比較し位相差に応じた信号を出力する位相検出回路と、該位相検出回路の出力に基づいて遅延時間が変化される可変遅延回路とを含むように構成する。これにより、公知のDLLディレイ・ロックド・ループ)回路の技術を用いて容易に所望の機能を有する位相調整回路を実現することができる。
【0024】
また、上記データ信号およびクロック信号を受信する側の回路ブロックは、受信したクロック信号とは別個に供給されるクロック信号が、実質的に等長とみなされるように設計された配線系を介して当該ブロック内のクロックに同期して動作する回路に分配されるように構成することができる。これにより、データ受信側の回路ブロックがデータを受信するとき以外にも動作することがある場合に、データ送信側の回路ブロックから受信側の回路ブロックが必要する時にクロック信号を送る制御を行なうようにしなくて済む。
【0025】
さらに、上記データ受信側の回路ブロックは、上記第1の信号線より受信したシリアルなデータを受信クロックに基づいて順次取り込んで受信クロックの2周期以上にわたって保持する受信データ保持手段と、該受信データ保持手段に取り込まれたデータを受信クロックとは別個のクロック信号に基づいて順次読み出して内部回路へ供給するシリアルデータ再生手段とを設ける。これにより、データ送信側の回路ブロックと受信側の回路ブロックが別のクロックで動作するときにおいても、送信側からのデータ信号を受信側で正しく取り込むことができる。
【0026】
また、上記データ受信側の回路ブロックは、受信したクロックに基づいてデータ送信サイクルの1/2周期だけ位相がずれたクロック信号を生成する移相手段と、該移相手段により生成されたクロック信号に基づいて上記受信データ保持手段へのデータ取込みタイミングを与えるクロック信号を生成する位相調整手段とを備え、該位相調整手段は上記移相手段により生成されたクロック信号の位相と上記受信データ保持手段へ供給されるクロック信号の位相とが一致するように位相を調整し、上記受信データ保持手段は受信データを信号の変化点と変化点のほぼ中央で取り込むように構成する。これにより、データ受信側のデータ取込みマージンが大きくなり多少クロックスキューがあっても正しいデータの取込みが行なえる。
【0027】
【発明の実施の形態】
(第1実施例)
以下、本発明の好適な実施例を図面に基づいて説明する。
【0028】
図1は、本発明の第1の実施例を適用した半導体集積回路全体のブロック構成と各ブロック間での信号の送受信のための接続関係を示す。
【0029】
図1において、符号100は単結晶シリコンのような1個の半導体チップ、110は外部から供給されるクロック信号が入力されるクロック入力端子、CB0,CB1,CB2,CB3,CB4,CB5,CB6はチップ100上に形成されそれぞれほぼ独立した機能を有するマクロ回路ブロックである。各回路ブロックは例えばCMOS回路で構成される。
【0030】
この実施例においては、ブロックCB0は、例えばチップ全体を制御したり、チップ上の複数のブロックの中心的な役割を有するプロセッサのような主回路ブロックであり、CB1〜CB6はROMやRAMあるいはキャッシュメモリのような従たる回路ブロックである。従たる回路ブロックとしては、メモリの他、シングルチップマイコンなどでは割込み制御回路やタイマ回路、AD,DA変換回路などの周辺回路モジュール、カスタムLSIなどではユーザーが希望する論理機能を有するユーザー論理回路などが考えられる。
【0031】
この実施例においては、クロック入力端子110より入力されたクロック信号CLKはPLL(フェーズ・ロックド・ループ)回路120に供給されて逓倍された内部クロック信号CKが生成される。生成された内部クロック信号CKは一旦主回路ブロックCB0のほぼ中心C0まで配線LLにより運ばれ、ここからHツリー状のクロック分配線L10によりブロックCB0内の各部に供給される。
【0032】
図示しないが、クロック分配線L0の各分岐点には入力された信号を複数に分割するデバイダやなまった信号を波形整形するバッファなどが設けられる。また、Hツリー状クロック分配線L0は、ブロックの中心C0からクロックの供給を受ける末端回路(フリップフロップや論理ゲート回路等)までの配線長がほぼ等しくなるように形成される。これによって、ブロックCB0内のクロックスキューは、チップ全体にツリー状クロック分配線を形成する場合に比べてかなり小さくされる。本明細書においては、上記ツリー状のクロック分配線およびクロックデバイダやバッファを含めたものをクロック分配系と称する。
【0033】
また、各ブロックCB0とCB1〜CB6にそれぞれブロック間で信号のやり取りをするためのインタフェース回路I/F1〜I/F6;I/F11;I/F21;I/F31;I/F41;I/F51;I/F61が設けられている。この実施例においては、主回路ブロックCB0のインタフェース回路I/F1〜I/F6と、従たる各ブロックCB1〜CB6のインタフェース回路I/F11〜I/F61とが信号線群111〜116によって接続されている。
【0034】
これらの信号線群111〜116にはそれぞれクロックの信号線が含まれている。また、従たる各ブロックCB1〜CB6には、それぞれその中心C1〜C6から末端回路までの配線長がほぼ等しくなるように形成されたHツリー状に分岐するクロック分配線L10〜L60が設けられており、上記信号線群111〜116の中のクロック信号線が各ブロックの中心C1〜C6に接続されて、そこから各ブロック内の末端回路にクロックを供給するように構成される。
【0035】
図2は、図1における主回路ブロックCB0と他のいずれか1つの従回路ブロックCBi(i=1,2,……6)との信号の送受信部を抽出してより詳細に示したものである。特に制限されるものでないが、ここでは一例として主回路ブロックCB0がプロセッサで、他の従回路ブロックCBiがメモリである場合を示している。
【0036】
図2の主回路ブロックCB0において、210はメモリをアクセスするために生成したアドレスをラッチするアドレスラッチ回路、211はインタフェース回路I/Fiに設けられた出力ラッチ回路、212は従回路ブロックCBiとしてのメモリの読出しデータをラッチする入力ラッチ回路、230は主回路ブロックCB0内のクロックCK0の位相と従回路ブロックCBiからの帰還クロックCKfの位相を比較して、位相を一致させるように出力クロックCK1を生成する位相調整回路である。
【0037】
この実施例では、位相調整回路230の出力クロックCK1は、主回路ブロックCB0側の上記出力ラッチ回路211へ供給されてアドレスデータの出力タイミングを与える。また、上記出力ラッチ回路211にラッチされたアドレスデータとその出力タイミングを与えた上記クロックCK1が信号線群111を介して従回路ブロックCBiに送信される。図2には、アドレスラッチ回路210とアドレスデータを送信する信号線が1つだけ示されているが、実際にはアドレスのビット数に応じた数だけ設けられる。信号線群111の各信号線は互いに並行して配設されることにより、ほぼ等しい配線長すなわち等しい遅延を有するように形成され、各信号線の途中には波形整形を行なうバッファ回路301a〜301c,302a〜302cが設けられている。
【0038】
図2の従回路ブロックCBiにおいて、311はインタフェース回路I/Fi1に設けられたアドレスの入力ラッチ回路、320はアドレスデコーダおよびセンスアンプ等を含むメモリアレイ部、312はメモリアレイ部320より読み出されたデータをラッチするデータラッチ回路(出力ラッチ回路)、330は主回路ブロックCB0の側から供給されるクロックCK1に基づいてメモリアレイ部の動作タイミング信号を生成するタイミングジェネレータである。
【0039】
この実施例では、信号線群111を介して送信データと並送して従回路ブロックCBiに供給されるクロックCK1によって、従回路ブロックCBiの入力ラッチ回路311および出力ラッチ回路312がラッチ動作を行なうように構成されている。ここで、クロックCK1の立上がりのタイミングと送信データの切り替えタイミングとが一致する場合には、受信したクロックCK1の立下りタイミングで、またCK1の立下がりのタイミングと送信データの切り替えタイミングとが一致する場合には受信クロックCK1の立上りタイミングで、従回路ブロックCBiの入力ラッチ回路311が受信データをラッチするように構成される。送信データと並送クロックの遅延はほぼ等しいので、受信したクロックCK1で受信したデータをラッチすることにより信号線群111における遅延時間の大きさに関わらず確実に受信データをラッチすることができる。
【0040】
なお、この実施例のように、従回路ブロックCBiがメモリである場合には、完全な形でのHツリー状分配線によるクロックの分配方式の適用は困難であるが、タイミングジェネレータからそこで生成されたタイミング信号を受ける回路までの配線長が等しくなるように配線を設計したり、タイミングジェネレータの出力タイミング信号がその到達距離を予め考慮したタイミングで生成されるようにタイミングジェネレータを設計することにより、実質的に等長配線と同様なクロック分配方式が採用されているとみなすことができる。
【0041】
また、従回路ブロックCBiがメモリである場合には、受信されたクロックCK1により入力ラッチ回路311における入力アドレスのラッチが行なわれるとともに、ラッチされたアドレスに従ってメモリアレイ部320から読み出されデータラッチ回路312にラッチされたデータは、信号線群111を介して主回路ブロックCB0に送信される。また、このとき受信されたクロックCK1も信号線群111を介して主回路ブロックCB0に送信される。その信号線111の途中には波形整形を行なうバッファ回路303a,303b,303c,304a,304b,304cが設けられている。
【0042】
このように、受信クロックCK1が帰還クロックCKfとして主回路ブロックCB0の位相調整回路230に戻され、クロックCK1とCKfの位相が一致するように並送クロックCK1が生成されることにより、従回路ブロックCBiから送られてくるデータを主回路ブロックCB0において正しく取り込むことができる。すなわち、位相調整回路230がない場合を仮定すると、従回路ブロックCBiから送られてくるデータを主回路ブロックCB0で受信する際に、受信データの切り替わりタイミングと主回路ブロックCB0側のクロックCK0の切り替わりタイミングとは、信号線111における遅延等によりずれているため、受信データを入力ラッチ回路212に正しく取りこむことができない。しかるに、本実施例においては、位相調整回路230が設けられ、クロックCK1とCKfの位相が一致するように並送クロックCK1が生成されるので、主回路ブロックCB0が従回路ブロックから送られてくるデータを正しく取り込むことが可能となる。
【0043】
また、その信号線111の途中には波形整形を行なうバッファ回路301〜304が設けられているため、主回路ブロックCB0と従回路ブロックCBiとの距離が離れていて信号線群111の配線長が長く時定数が大きかったとしても、信号が送信側から受信側に届くまでの送信所要時間をバッファ回路がない場合に比べて小さくすることができ、また複数ビットのデータを並列に送信する場合にビット間の送信ばらつきを抑えることができる。これとともに、送信側の回路ブロックは、ある信号を送信した後、その信号が受信側の回路ブロックに届く前に次の信号を送信することができるようになる。そして、そのようにシステムを構成することにより、連続したデータの送信所要時間を短縮することができる。
【0044】
さらに、この実施例では、クロック信号線が各ブロックの中心C1〜C6に接続されて、そこから各ブロック内の末端回路にクロックを供給するように構成されているので、クロックが供給されていない間は従回路ブロックの動作は停止し、これによってLSI全体としての消費電力を低減することができる。
【0045】
図3には、上記位相調整回路230の具体的な回路例が示されている。この実施例の位相調整回路230は、主回路ブロックCB0側の内部クロックCK0と従回路ブロックCBiからの帰還クロックCKfの位相を比較して帰還クロックCKfの位相が遅れているときはアップ信号UPを、また帰還クロックCKfの位相が進んでいるときはダウン信号DNを出力する位相検出器231と、位相検出器231からの出力UPによってカウントダウンし出力DNによってカウントアップするカウンタ232と、カウンタ232の計数値をデコードして計数値に応じた1つの信号がハイレベルに変化するデコーダ233と、デコーダ233の各出力ビットに各々対応した遅延段回路234a〜234nが縦続接続されてなる可変遅延回路234とから構成されている。
【0046】
遅延段回路234a〜234nは、それぞれ図4に示すように3つのNANDゲートG1〜G3と1つのインバータG0とからなる組合せ回路により構成されており、制御信号CTL0がハイレベルのときは前段回路からの入力信号INFを出力信号OUTFとして次段回路へ伝えるとともに次段回路からの入力信号INBを出力信号OUTBとして前段回路へ伝え、制御信号CTL0がロウレベルにされると次段回路からの入力信号INBを遮断して入力信号INFを出力信号OUTBとしてそのまま元の前段回路へ戻すように動作する。
【0047】
かかる構成の遅延段回路が図3のように複数個(例えば32個)縦続接続され、各遅延段回路234a〜234nにデコーダ233の対応する出力ビットが制御信号CTL0として供給されることにより、初段の遅延段回路234aに入力されたクロックCK0は次段の遅延段回路234b,234c……へ次々と伝達され、デコーダ233の出力ビットのうち“1”になっているものに対応する遅延段回路でUターンして前段の遅延段回路へ順次戻り、初段の遅延段回路234aの出力端子OUTBから遅延クロックCK1として出力される。この実施例では、クロックCK0が伝達する遅延段回路の数がデコーダ233の出力に応じて変更されることでクロックCK0の遅延時間が変化される。
【0048】
具体的には、遅延段回路1段当たりの遅延時間をtdとすると、例えば可変遅延回路234のi段目の遅延段回路234iでクロックがUターンされるように制御された場合には、クロックCK1はCK0よりも2i×tdだけ遅延したクロックとして出力される。そして、カウンタ231の出力UPによりカウンタ232の計数値が小さくなると、可変遅延回路234における遅延時間が短くされ、帰還クロックCKfの位相が進むこととなる。一方、カウンタ231の出力DNによりカウンタ232の計数値が大きくなると可変遅延回路234における遅延時間が長くされ、帰還クロックCKfの位相が遅れることとなる。
【0049】
(第2実施例)
次に、本発明の第2の実施例を、図5〜図9を用いて説明する。
図5は、本発明の第2の実施例を適用した半導体集積回路全体のブロック構成と各ブロック間での信号の送受信のための接続関係を示す。第2の実施例では、図5に示されているように、1個の半導体チップ100上にそれぞれほぼ独立した機能を有する8個の回路ブロックが設けられている。図5の実施例はマルチプロセッサシステムを想定しており、8個のブロックのうち4個の回路ブロックPB1,PB2,PB3,PB4はプロセッサを、また残りの4個の回路ブロックCB1,CB2,CB3,CB4はメモリもしくは周辺モジュールを表わしている。
【0050】
この実施例においては、各回路ブロックごとに、外部からクロック端子110に入力される例えば256MHzのようなクロック信号CLKを基準クロックとし、それを逓倍して例えば1GHzのような内部クロックCK0を生成するPLL回路120がそれぞれ設けられている。主たる回路ブロックPB1,PB2,PB3,PB4では、生成された内部クロック信号CK0が一旦当該回路ブロックのほぼ中心C1,C2,C3,C4まで運ばれ、ここからHツリー状のクロック分配線L11,L21,L31,L41によりブロック内の各部に供給される。図示しないが、クロック分配線L0の各分岐点には入力された信号を複数に分割するデバイダやなまった信号を波形整形するバッファなどが設けられる。
【0051】
なお、主回路ブロックPB1,PB2,PB3,PB4では、Hツリー状クロック分配線L11〜L41は、ブロックの中心からクロックの供給を受ける末端回路(フリップフロップや論理ゲート回路等)までの配線長がほぼ等しくなるように形成される。これによって、ブロックPB1〜PB4の各内部クロック同士ではクロックスキューはあるものの、各ブロック内ではチップ全体にツリー状クロック分配線を形成する場合に比べてクロックスキューはかなり小さくされる。
【0052】
従たる回路ブロックCB1〜CB4では、完全な形でのHツリー状分配線の代わりに、PLL回路120もしくはPLL回路120で生成されたクロックに基づいて各種内部タイミング信号を生成するタイミングジェネレータ(図示略)から、そのタイミング信号を受ける回路までの配線長が等しくなるように配線を設計したり、タイミングジェネレータの各出力タイミング信号が各々その到達時間を予め考慮したタイミングで生成されるようにタイミングジェネレータを設計することにより、実質的に等長とみなされる分配用配線が形成されている。
【0053】
また、各ブロックPB1〜PB4とCB1〜CB4にはそれぞれブロック間で信号のやり取りをするためのインタフェース回路I/F11〜I/F14;〜I/F81〜I/F84が設けられている。この実施例においては、主回路ブロックPB1のインタフェース回路I/F11〜I/F14は、従たる回路ブロックCB1〜CB4のインタフェース回路I/F51,I/F62,I/F72,I/F81と信号線群111a,111b〜114a,114bによって接続されている。これらの信号線群のうち111b〜114bにはそれぞれクロックを並送するための信号線が含まれている。
【0054】
図5には示されていないが、主回路ブロックPB2のインタフェース回路I/F21〜I/F24と従たる回路ブロックCB1〜CB4のインタフェース回路I/F52,I/F61,I/F71,I/F82と間も同様な信号線群によって接続されている。これらの信号線群にもそれぞれクロックを並送するための信号線が含まれている。主回路ブロックPB3,PB4に関しても同様である。この実施例では、従回路ブロックCB1〜CB4はPLL回路120を備え、それぞれ外部からのクロック信号CLKに基づいて内部クロックを生成するように構成されているが、CB1〜CB4のうち幾つかあるいは全てを図1の実施例と同様に、主回路ブロックPB1〜PB4からの並送クロックを内部クロックとするように構成することも可能である。
【0055】
図6は、図5における主たる回路ブロックPB1〜PB4のうちいずれか1つと、従たる回路ブロックCB1〜CB4のいずれか1つのとの間の信号の送受信部を抽出してより詳細に示したものである。
【0056】
図6の左側に示されている主回路ブロックPBにおいて、441はメモリをアクセスするために生成され内部回路からバッファ440を介して供給されるアドレス信号のような送信すべきデータ信号をラッチする出力ラッチ回路、442は主回路ブロックPBから従回路ブロックCBへ送信されるデータの送信タイミングを示す同期信号Syncをラッチするラッチ回路、481,482は上記ラッチ回路441,442にラッチされた信号を出力する出力バッファ回路である。
【0057】
図6には、出力ラッチ回路441とアドレスを送信する信号線が1つだけ示されているが、実際にはアドレスのビット数に応じた数だけ設けられる。なお、上記同期信号Syncは、特に制限されるものでないが、連続したデータを送信する場合には、例えば図7(e)のように、4ビットの送信データの最初の1ビットに対応した期間だけハイレベルとされるような信号とされる。
【0058】
また、443は主回路ブロックPB内のクロックCK0を2分周する分周回路、483は上記分周回路443で分周された信号を差動信号Dckp,Dcknとして出力する出力バッファ回路であり、上記出力バッファ回路481〜483の出力信号が信号線群111a,111bによって従回路ブロックCBへ供給される。そして、上記信号線群111a,111bの各信号線は互いに並行して配設されることにより、ほぼ等しい配線長すなわち等しい遅延を有するように形成され、信号線群111a,111bの各信号線の途中に波形整形を行なうバッファ回路401〜406,411〜416,421〜426,431〜436が設けられている。
【0059】
特に制限されるものでないが、上記バッファ回路401〜406,411〜416,421〜426,431〜436は、半導体チップ上において例えば1〜3mmのような間隔で設けられる。上記のように、クロックを差動信号として送信することによって、ノイズに対するマージンを大きくしてクロックを送信できるという利点や、受信側でのクロツクの受信タイミングの位相ずれを小さくできるという利点がある。また、クロックを2分周して送信することによって、転送周波数の向上が容易となるという利点がある。
【0060】
図6の右側に示されている従回路ブロックCBにおいて、491〜493は上記信号線群111a,111bの各信号線の他端(受信側)に設けられた入力バッファ回路、444〜447は入力バッファ491により取り込まれたデータ信号をラッチする入力ラッチ回路、480は入力ラッチ回路444〜447にラッチされたデータのうち1つを選択するセレクタ回路、448はセレクタ回路480により選択されたデータをラッチするデータラッチ回路である。上記入力バッファ491〜493のうちクロックを取り込むバッファ493は差動入力型のバッファ回路により構成されている。
【0061】
470は、上記バッファ493により取り込まれたクロックを遅延させて位相を調整する位相調整回路、451〜454は前記バッファ492により取り込まれた同期信号Syncを位相調整回路470により位相調整されたクロックDckptdに基づいて取り込んで順次シフトするラッチ回路である。また、455は上記ラッチ回路451〜454にラッチされた信号および位相調整回路470により位相調整されたクロックDckpt_outを、入力ラッチ回路444〜447に分配する分配系配線網で、この分配系配線網455から出力される信号のうちクロックDckpt_dは位相調整回路470へ帰還され、位相調整回路470は帰還されたクロックDckpt_dと受信クロックDckptの位相を比較して一致するように位相調整を行なう。なお、Dckpt_dは、クロックDckpt_outが分配系配線網455で分配された後のクロックである。
【0062】
460は前記セレクタ回路480の選択制御信号Ctl0〜Ctl3を形成する選択制御回路で、この選択制御回路460は別途回路ブロックCBに分配された同期信号Sync(CB)と従回路ブロックCB側のクロックTck,/Tckとに基づいて、上記入力ラッチ回路444〜447にラッチされたデータをセレクタ回路480により順番に選択して後段のデータラッチ回路448へ供給させるような選択制御信号Ctl0〜Ctl3を形成する。この選択制御回路460に入力される同期信号Sync’は、上記入力ラッチ回路444〜447にラッチされたデータを444,445,446,447,444……のように取り込まれた順に正しく読み出す選択制御信号Ctl0〜Ctl3の形成開始タイミングを与えるために入力される信号であり、これにより例えば446,447,444,445,446……のような誤った順序でデータが読み出されるのを防止することができる。
【0063】
次に、上記主回路ブロックPBから従回路ブロックCBに対するデータおよびクロックの送信とその受信動作について、図7〜図9を用いて説明する。
【0064】
この実施例では、主回路ブロックPBの出力バッファ回路481により、図7(b)に示すように、主回路ブロックPB側のクロックCK0に同期したデータDataが信号線群111a上へ出力される。また、主回路ブロックPBの出力バッファ回路483により、図7(c),(d)に示すように、主回路ブロックPB側のクロックCK0を2分周した2倍の周期の差動クロックDckp,Dcknが、出力バッファ回路482により、図7(e)に示すようなクロックCK0の4倍周期の同期信号Syncが、信号線群111b上へ出力される。
【0065】
これらの信号は、図8(a)〜(c)に示すように、従回路ブロックCBの入力バッファ回路491,492,493により、所定の遅延時間Tpdだけ遅れた信号Datat,Dckpt,Synctとして取り込まれる。そして、位相調整回路470で受信クロックDckptよりもΔtだけ遅れた図8(d)に示すような遅延クロックDckpt_outが形成される。この遅延クロックDckpt_outによりラッチ回路451〜454がラッチ動作されることにより、図8(e)〜(h)に示すような、周期が遅延クロックDckpt_outの4倍で互いに位相が90°ずつずれた4種類の受信イネーブル信号CKEN0〜CKEN3が形成されて、分配系配線網455を介して前記入力ラッチ回路444〜447に供給される。
【0066】
入力ラッチ回路444〜447のラッチトリガ端子の前段には、上記受信イネーブル信号CKEN0〜CKEN3のそれぞれを一方の入力とし遅延クロックDckpt_dを他方の共通入力とするANDゲート461〜464が設けられており、受信イネーブル信号CKEN0〜CKEN3がハイレベルになっているANDゲートに対応する入力ラッチ回路444〜447が遅延クロックDckpt_dの立上がりまたは立下りエッジによってラッチ動作され、図8(i)〜(l)に示すようにそれぞれ信号線上のデータD0,D1,D2,D3,D4……を順次取り込んで行く。
【0067】
そして、入力ラッチ回路444〜447に取り込まれた受信データは、受信側の従回路ブロックCBのクロックTckに基づいて形成された図9(b)〜(e)に示すようなタイミングの選択制御信号Ctl0〜Ctl3により制御されるセレクタ回路480によって順次選択されて、次段のデータラッチ回路448に供給され、データラッチ回路448は従回路ブロックCB側のクロックTckに同期してラッチ動作して、データDatasi(D0,D1,D2,D3,D4……)を順次取り込み、受信データDataRとして内部回路へ供給する。
【0068】
上記のように、この実施例においては、データと並送されたクロックを受信して生成したクロックDckpt_dで、受信データを入力ラッチ回路444〜447に順次取り込んでシリアル−パラレル変換することによって、図8(i)〜(l)に示すように、各データが保持されている期間を4周期に拡張している。そして、このように引き伸ばされた期間内に受信データを従回路ブロックCB側のクロックTckに基づいて順次選択することでパラレル−シリアル変換して内部回路に供給するようにしているため、送信側の主回路ブロックCBのクロックCK0と受信側の従回路ブロックCBのクロックTckの位相がかなりずれていたとしても正しく受信データを取り込むことができる。
【0069】
なお、送信側のクロックCK0と受信側のクロックTckは周波数が同一である場合には、位相のずれは最大で±180°であり、仮に180°ずれていたとしても本実施例の方式によれば、正しく受信データを取り込むことができることが図8より分かる。また、受信側のクロックTckは周波数が送信側のクロックCK0の周波数の1/2や3/4である場合にも、入力ラッチ回路(444〜447)の数や選択制御回路460で形成する選択制御信号(Ctl0〜Ctl3)のタイミング等を工夫することで、ブロック間でデータの送受信が可能である。
【0070】
図10には、上記位相調整回路470の具体的な回路構成例が示されている。この実施例の位相調整回路470は、図3に示されている位相調整回路230と類似の構成を有する第1のDLL(ディレイ・ロックド・ループ)回路470Aとその後段に接続された第2のDLL回路470Bとにより構成されている。このうち後段の第2DLL回路470Bは図3の回路と同一の構成を有する。すなわち、第2DLL回路470Bは、各々図3の位相検出器231,カウンタ232,デコーダ233,可変遅延回路234と同一の構成の位相検出器471B,カウンタ472B,デコーダ473B,可変遅延回路474Bにより構成されている。
【0071】
一方、前段の第1DLL回路470Aは、位相検出器471A,カウンタ472A,デコーダ473Aと縦続接続された2段の可変遅延回路474A1,474A2とにより構成されている。可変遅延回路474A1で遅延されたクロックDckptは、可変遅延回路474A2で更に遅延されて出力される。図10からも明らかなように、可変遅延回路474A1と可変遅延回路474A2の遅延時間は、デコーダ473Aの出力が共通に供給されて制御されるにより同じになる。可変遅延回路474A1,474A2,474Bを構成する遅延段回路は、図4に示されているものと同一で良い。各DLL回路470A,470Bの基本的な動作は図3の回路と同じであるので、重複した説明は省略し相違する点を主として説明する。
【0072】
前段の第1DLL回路470Aは、主回路ブロックPBからのクロックを受信する差動入力バッファ493の出力クロックDckptを基準入力クロックとし、2段目の可変遅延回路474A2で遅延されたクロックTcycdを帰還クロックとし、位相検出器471AでクロックDckptの立下がりエッジとTcycdの立上がりエッジの位相差を検出して、その位相差が「0」となるように動作する。
【0073】
これとともに、第1DLL回路470Aは、1段目の可変遅延回路474A1で遅延されたクロックThcycdを、2段目の可変遅延回路474A2へ入力されると共に第2DLL回路470Bへも基準入力クロックとして入力されるように構成されている。これによって、第1DLL回路470Aは、受信クロックDckptから送信側クロックCK0の1/2周期(Dckptの周期の1/4)だけ位相がずれたクロックを生成して第2DLL回路470Bに供給する1/2サイクル移相回路として機能する。
【0074】
一方、第2DLL回路470Bは、その出力クロックDckpt_outが図6の分配系配線網455により入力ラッチ回路444〜447に分配された後のクロック信号Dckpt_dが帰還クロックとして入力され、この帰還クロックDckpt_dと第1DLL回路470Aからの基準クロックThcycdの位相差を検出して、その位相差が「0」となるように動作する。これによって、入力ラッチ回路444〜447に分配されるクロック信号Dckpt_dの位相が、主回路ブロックPBから従回路ブロックCBへ送信されるデータの変化点と変化点の中央に来るように制御される。以下、そのタイミング制御を、図11を用いて詳しく説明する。
【0075】
第1DLL回路470Aは、図11(a),(b)のようにクロックDckptの立下がりエッジとTcycdの立上がりエッジの位相差を検出して、その位相差が「0」となるように可変遅延回路474A,474BでクロックDckptを遅延させて帰還側出力クロックTcycdを生成する。これによって、帰還側出力クロックTcycdは受信クロックDckptの半周期すなわち送信側クロックCK0の1周期分だけ遅れたクロックとされる。一方、このとき、可変遅延回路474Aの遅延量と474Bの遅延量は同じとなるように制御されるので、可変遅延回路474Aから出力されるクロックThcycdは、図11(c)のように、受信クロックDckptの1/4周期すなわち送信側クロックCK0の1/2周期分だけ遅れたクロックとなる。
【0076】
そして、この可変遅延回路474Aから出力されるクロックThcycdが第2DLL回路470Bに供給されて、入力ラッチ回路444〜447に分配されるクロック信号Dckpt_dの位相と比較され、位相差が「0」となるように出力クロックDckpt_outを生成する(図11(c)〜(e)参照)。これによって、例えば送信されるデータのビット数が大きくて各入力ラッチ回路444〜447が多くなりクロック供給配線が長くなって、分配されるクロック信号Dckpt_dの遅延が無視できない大きさになるような場合においても、入力ラッチ回路444〜447に分配されるクロック信号Dckpt_dの立上がりエッジおよび立下がりエッジが、それぞれ受信クロックDckptのハイレベル期間(送信側ブロックのクロックCK0の1周期)の中央、すなわち主回路ブロックPBから従回路ブロックCBへ送信されるデータの変化点と変化点の中央に来るように制御されることとなる。
【0077】
なお、図6に示すような実施例においては、分配系配線網455からクロック信号Dckpt_dを受ける各入力ラッチ回路444〜447までのクロック配線が等長となるように設計することにより、各入力ラッチ回路444〜447におけるラッチタイミングのずれを少なくすることができる。
【0078】
図12は、半導体集積回路におけるブロック間信号伝送線上に設けられるバッファ回路の具体例を示す。本発明を適用した半導体集積回路においては、図12(A)に示すように、素子の大きさすなわち駆動力の異なる複数のバッファ回路が設けられる。具体的は、図6に示されているブロック内のバッファ回路440やブロック間信号線群111aを構成するデータ送信用信号線の途中に設けられる波形整形用のバッファ回路401〜406、出力ドライバ用バッファ回路500等である。なお、ここで出力ドライバ用バッファ回路500は、当該半導体集積回路の外部に信号を出力するためのバッファ回路であり、図1や図5の実施例には示されていないものである。
【0079】
図12(A)において、各バッファ毎に付記されているWp1/Lp1,Wp2/Lp2およびWp3/Lp3は、それぞれ各バッファが図12(B)のように、pチャネルMOSFET QpとnチャネルMOSFET Qnとから構成されている場合に、pチャネルMOSFETのゲート幅(Wp)とゲート長(Lp)の比である。また、Wn1/Ln1,Wn2/Ln2およびWn3/Ln3は、それぞれのバッファのnチャネルMOSFET Qnのゲート幅(Wn)とゲート長(Ln)の比である。INはバッファ回路の入力端子、OUTはバッファ回路の出力端子である。
【0080】
ここで、pチャネルMOSFETのゲート幅Wpとゲート長LpおよびnチャネルMOSFET Qnのゲート幅Wnとゲート長Lnは、pチャネルMOSFET QpとnチャネルMOSFET Qnのレイアウト構成を示す図12(C)において、pチャネルMOSFET Qpのポリシリコンゲート電極PGの幅がLp、このポリシリコンゲート電極PGとpチャネルMOSFET Qpのソース・ドレイン領域としての拡散領域PSDとの交差部分の長さがWpとみなされる。また、図12(C)において、nチャネルMOSFET Qnのポリシリコンゲート電極NGの幅がLn、このポリシリコンゲート電極NGとnチャネルMOSFET Qnのソース・ドレイン領域としての拡散領域NSDとの交差部分の長さがWnとみなされる。LVDは電源電圧VDDを供給する電源配線、LVSは電源電圧VSSを供給する電源配線である。
【0081】
この実施例においては、
Wp1/Lp1<Wp3/Lp3,Wn1/Ln1<Wn/Ln3
Wp2/Lp2<Wp3/Lp3,Wn2/Ln2<Wn/Ln3
の関係になるように、各バッファを構成するMOSFETが設計されていると共に、ブロック間クロック送信用信号線の途中に設けられる波形整形用のバッファ回路421〜426,431〜436は、上記データ送信用信号線の途中に設けられる波形整形用のバッファ回路401〜406に最も近い大きさのバッファ回路を用いて構成される。同期信号Syncを送信する信号線の途中に設けられる波形整形用のバッファ回路411〜416も同様にバッファ回路401〜406に最も近い大きさのバッファ回路を用いて構成される。
【0082】
図13は、本発明を適用した半導体集積回路における配線構造の具体例を示す。
【0083】
特に制限されるものでないが、この実施例の半導体集積回路においては、8つのメタル層からなる8層配線構造が採用されている。図13において、M0は1層目のメタル層、M1は2層目のメタル層で、以下同様にしてM7が8層目のメタル層である。そして、各メタル層M0〜M7間はそれぞれ図示しない層間絶縁膜で絶縁分離され、この絶縁膜に形成されたスルーホールに充填された導電体Via0〜Via6によって上下のメタル層間の導通が行なわれる。上記メタル層M0〜M7および導電体Via0〜Via6は例えばタングステンや銅、アルミニウム、チタンなどの金属からなり、層間絶縁膜は例えば窒化シリコン膜や酸化シリコン膜、PSG膜などからなる。
【0084】
この実施例においては、メタル層M0とM1によりフリップフロップやラッチ回路、論理ゲート回路などのセルと呼ばれる設計単位の回路内の接続配線が形成され、メタル層M1〜M4により前記回路ブロック内の接続配線が形成され、メタル層M5,M6により回路ブロック間の接続配線が形成され、メタル層M7により電源配線が形成されている。そして、メタル層M0〜M4により形成される上記セル内および回路ブロック内の配線はプロセスで加工可能な最小幅とされる。一方、メタル層M5〜M7により形成される上記ブロック間の配線および電源配線は、上記メタル層M0〜M4の配線よりも厚くされるとともに配線幅も最小幅の約2倍とされる。また、配線同士の間隔もメタル層M0〜M4に比べてメタル層M5〜M7の配線の方が広くされる。
【0085】
上記のように、この実施例では、メタル層M5,M6により回路ブロック間の接続配線が形成されるため、チップサイズを増大させることなく回路ブロック間送信用の信号線を形成できるとともに、メタル層M0〜M4からなるブロック内配線と干渉しないので、回路ブロック間送信用の信号線のレイアウト設計も容易となる。
【0086】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば前記実施例における位相調整回路は、位相検出器とカウンタとデコーダおよび論理ゲートの組合せ回路を遅延段とする可変遅延回路とにより構成されているが、そのような構成に限定されるものでなく、カウンタの代わりにチャージポンプ、デコーダの代わりにバイアス電圧発生回路、組合せ回路の代わりに前記バイアス電圧で制御される電流源からの電流で動作される差動増幅回路を遅延段とする可変遅延回路とすることも可能である。
【0087】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるプロセッサとメモリを内蔵したシステムLSIに適用した場合について説明したが、本発明はそれに限定されるものでなく、1つの半導体チップ上に複数の回路ブロックが搭載され、比較的はなれた位置にある回路ブロック間でデータ信号を送信したい場合に広く利用することができる。
【0088】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【0089】
すなわち、本発明に従うと、送信サイクルすなわちクロック周期に対するクロックスキューの割合を低減することができ、これによってLSIの動作周波数を高めることができるとともに、チップ内の長距離データ送信における遅延時間を短縮し、正確なデータ送信が可能になるという効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例を適用した半導体集積回路全体のブロック構成と各ブロック間での信号の送受信のための接続関係を示すブロック図である。
【図2】図1における主回路ブロックCB0と他のいずれか1つの従回路ブロックCBiとの信号の送受信部を抽出してより詳細に示した回路構成図である。
【図3】図2における位相調整回路の具体例を示す回路構成図である。
【図4】図3における可変遅延回路を構成する遅延段回路の具体例を示す論理ゲート構成図である。
【図5】本発明の第2の実施例を適用した半導体集積回路全体のブロック構成と各ブロック間での信号の送受信のための接続関係を示すブロック図である。
【図6】図5における主回路ブロックPBと他のいずれか1つの従回路ブロックCBとの信号の送受信部を抽出してより詳細に示した回路構成図である。
【図7】図5における主回路ブロックPBから出力される信号およびクロックのタイミングの一例を示すタイミングチャートである。
【図8】図5の従回路ブロックPBにおけるクロックの受信部およびデータラッチタイミングを生成する回路部分の信号のタイミングの一例を示すタイミングチャートである。
【図9】図5の主回路ブロックPBのデータ受信部における信号のタイミングの一例を示すタイミングチャートである。
【図10】図5における位相調整回路の具体例を示す回路構成図である。
【図11】図10の位相調整回路における信号のタイミングの一例を示すタイミングチャートである。
【図12】本発明を適用した半導体集積回路におけるブロック間信号伝送線上に設けられるバッファ回路の具体例を示す回路図およびレイアウト図である。
【図13】本発明を適用した半導体集積回路における配線構造の具体例を示す断面説明図である。
【符号の説明】
100 半導体チップ
110 クロック入力端子
111〜116 ブロック間接続用信号線群
120 PLL回路
210〜212 ラッチ回路
230 位相調整回路
232 カウンタ回路
233 デコーダ
234 可変遅延回路
234a〜234n 遅延段回路
301〜304 バッファ回路
311,312 ラッチ回路
330 タイミングジェネレータ
B0〜B4 回路ブロック
PB1〜PB4 主回路ブロック
CB1〜CB4 従回路ブロック
I/F インタフェース回路
L0,L10〜L60 ツリー状分配配線

Claims (10)

  1. 1個の半導体基板上に複数の回路ブロックが形成され、各回路ブロック毎にクロック分配系が形成されている半導体集積回路において、上記複数の回路ブロックのうちいずれか2つの回路ブロック間には、データ信号を送信する1または2以上の第1の信号線とクロック信号を送信する第2の信号線が設けられ、一方の回路ブロックから他方の回路ブロックへ上記第1および第2の信号線を介してデータ信号とクロック信号とが送信され、受信側の回路ブロックは受信したクロック信号に基づいて受信したデータ信号を取り込むように構成されているとともに、上記第1の信号線と第2の信号線は等しい配線長を有しかつ途中に1または2以上のバッファ回路が設けられていることを特徴とする半導体集積回路。
  2. 上記データ信号およびクロック信号を送信する側の回路ブロックには送信しようとするデータをラッチする出力ラッチ回路が、また上記データ信号を受信する側の回路ブロックには受信したデータをラッチする入力ラッチ回路がそれぞれ設けられ、上記出力ラッチ回路および入力ラッチ回路はデータ送信側の回路ブロックから送信される前のクロック信号および送信後のクロック信号によってそれぞれラッチ動作を行なうように構成されていることを特徴とする請求項1に記載の半導体集積回路。
  3. 上記データ信号およびクロック信号を送信する側の回路ブロックは、送信したデータ信号およびクロック信号が受信側の回路ブロックに到達する前に次のデータ信号およびクロック信号を上記第1の信号線にのせるように構成されていることを特徴とする請求項2に記載の半導体集積回路。
  4. 上記データ信号およびクロック信号を受信する側の回路ブロックは、上記信号線より受信したクロック信号が、等長とみなされるように設計された配線系を介して当該ブロック内のクロックに同期して動作する回路に分配されるように構成されていることを特徴とする請求項1ないし3のいずれかに記載の半導体集積回路。
  5. 上記クロック信号は、データ信号が送信される際以外はデータ送信側の回路ブロックからデータ受信側の回路ブロックへ送信されないように構成されていることを特徴とする請求項4に記載の半導体集積回路。
  6. 上記データ送信側の回路ブロックと受信側の回路ブロックとの間には、受信側の回路ブロックが受信したクロック信号を送信側の回路ブロックに対して帰還させる第3の信号線が設けられているとともに、上記送信側の回路ブロックには当該回路ブロック内のクロック信号の位相と上記帰還されたクロック信号の位相とが合うように送信クロックの位相を調整する位相調整回路が設けられていることを特徴とする請求項1に記載の半導体集積回路。
  7. 上記位相調整回路は、上記送信側の回路ブロック内のクロック信号の位相と上記帰還されたクロック信号の位相とを比較し位相差に応じた信号を出力する位相検出回路と、該位相検出回路の出力に基づいて遅延時間が変化される可変遅延回路とを含んでなることを特徴とする請求項6に記載の半導体集積回路。
  8. 上記データ信号およびクロック信号を受信する側の回路ブロックは、受信したクロック信号とは別個に供給されるクロック信号が、等長とみなされるように設計された配線系を介して当該ブロック内のクロックに同期して動作する回路に分配されるように構成されていることを特徴とする請求項1に記載の半導体集積回路。
  9. 上記データ受信側の回路ブロックは、上記第1の信号線より受信したシリアルなデータを受信クロックに基づいて順次取り込んで受信クロックの2周期以上にわたって保持する受信データ保持手段と、該受信データ保持手段に取り込まれたデータを受信クロックとは別個のクロック信号に基づいて順次読み出して内部回路へ供給するシリアルデータ再生手段とを備えていることを特徴とする請求項8に記載の半導体集積回路。
  10. 上記データ受信側の回路ブロックは、受信したクロックに基づいてデータ送信サイクルの1/2周期だけ位相がずれたクロック信号を生成する移相手段と、該移相手段により生成されたクロック信号に基づいて上記受信データ保持手段へのデータ取込みタイミングを与えるクロック信号を生成する位相調整手段とを備え、該位相調整手段は上記移相手段により生成されたクロック信号の位相と上記受信データ保持手段へ供給されるクロック信号の位相とが一致するように位相を調整し、上記受信データ保持手段は受信データを信号の変化点と変化点の中央で取り込むように構成されていることを特徴とする請求項9に記載の半導体集積回路。
JP2000266971A 2000-09-04 2000-09-04 半導体集積回路 Expired - Fee Related JP3663486B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000266971A JP3663486B2 (ja) 2000-09-04 2000-09-04 半導体集積回路
US09/944,134 US20020027461A1 (en) 2000-09-04 2001-09-04 Semiconductor integrated circuit with suppressed clock skew

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000266971A JP3663486B2 (ja) 2000-09-04 2000-09-04 半導体集積回路

Publications (2)

Publication Number Publication Date
JP2002076127A JP2002076127A (ja) 2002-03-15
JP3663486B2 true JP3663486B2 (ja) 2005-06-22

Family

ID=18753965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000266971A Expired - Fee Related JP3663486B2 (ja) 2000-09-04 2000-09-04 半導体集積回路

Country Status (2)

Country Link
US (1) US20020027461A1 (ja)
JP (1) JP3663486B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6630851B2 (en) * 2001-06-29 2003-10-07 Fujitsu Limited Low latency clock distribution
JP2006324592A (ja) 2005-05-20 2006-11-30 Nec Electronics Corp 半導体集積回路装置
US7616036B1 (en) 2005-09-12 2009-11-10 Virage Logic Corporation Programmable strobe and clock generator
US7519888B2 (en) * 2005-09-12 2009-04-14 Virage Logic Corporation Input-output device testing
US8570014B2 (en) * 2011-05-01 2013-10-29 Intersil Americas, Llc Advanced clock synchronization circuit for switch mode power supplies
JP6450953B2 (ja) 2015-02-16 2019-01-16 株式会社メガチップス クロック同期方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU1960795A (en) * 1995-03-20 1996-10-08 Hitachi Limited Device and method for transferring data
US6680636B1 (en) * 2000-03-31 2004-01-20 Silicon Graphics, Inc. Method and system for clock cycle measurement and delay offset

Also Published As

Publication number Publication date
US20020027461A1 (en) 2002-03-07
JP2002076127A (ja) 2002-03-15

Similar Documents

Publication Publication Date Title
US6150866A (en) Clock supplying circuit and integrated circuit device using it
US8290109B2 (en) Circuit, system and method for multiplexing signals with reduced jitter
JP3085258B2 (ja) クロック信号分配回路
US7590211B1 (en) Programmable logic device integrated circuit with communications channels having sharing phase-locked-loop circuitry
US6414527B1 (en) Semiconductor device replica circuit for monitoring critical path and construction method of the same
US5999030A (en) Flip-flop circuit
US5317601A (en) Clock distribution system for an integrated circuit device
US7610504B2 (en) Semiconductor integrated circuit
US7555667B1 (en) Programmable logic device integrated circuit with dynamic phase alignment capabilities and shared phase-locked-loop circuitry
US9490787B1 (en) System and method for integrated circuit clock distribution
JP2000151369A (ja) 半導体装置
US7821850B2 (en) Semiconductor digital circuit, FIFO buffer circuit, and data transferring method
US7174475B2 (en) Method and apparatus for distributing a self-synchronized clock to nodes on a chip
JP3663486B2 (ja) 半導体集積回路
US6285229B1 (en) Digital delay line with low insertion delay
US5723995A (en) Method for eliminating process variation timing skews in a source synchronous design
JP2002524790A (ja) 同期多相クロック分配システム
JP3813814B2 (ja) 遅延補償回路
US20090248945A1 (en) Noise reducing methods and circuits
US20040169531A1 (en) Apparatus, generator, and method for clock tree synthesis
KR100415544B1 (ko) 양방향 지연을 이용한 디엘엘 회로
US6845436B1 (en) Synchronized signal transfer system
JP3397217B2 (ja) 半導体集積回路
US20220200610A1 (en) Clocking system and a method of clock synchronization
JP2696738B2 (ja) 半導体集積回路

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050314

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090408

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090408

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100408

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110408

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees