JP3555077B2 - プログラマブルロジックデバイスのクロック分配回路 - Google Patents

プログラマブルロジックデバイスのクロック分配回路 Download PDF

Info

Publication number
JP3555077B2
JP3555077B2 JP2000093234A JP2000093234A JP3555077B2 JP 3555077 B2 JP3555077 B2 JP 3555077B2 JP 2000093234 A JP2000093234 A JP 2000093234A JP 2000093234 A JP2000093234 A JP 2000093234A JP 3555077 B2 JP3555077 B2 JP 3555077B2
Authority
JP
Japan
Prior art keywords
clock
programmable
load
connection elements
line
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
JP2000093234A
Other languages
English (en)
Other versions
JP2001285055A (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.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2000093234A priority Critical patent/JP3555077B2/ja
Priority to US09/819,791 priority patent/US6538489B2/en
Publication of JP2001285055A publication Critical patent/JP2001285055A/ja
Application granted granted Critical
Publication of JP3555077B2 publication Critical patent/JP3555077B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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

Description

【0001】
【発明の属する技術分野】
本発明は、プログラマブルロジックデバイス(programablelogic device:PLD)のクロック分配回路に関し、特に、1チップ(chip)に数種類のクロック(clock) が入力されるプログラマブルロジックデバイスのクロック分配回路に関する。
【0002】
【従来の技術】
プログラマブルロジックデバイス(PLD)は、複数の論理回路の組み合わせをユーザーがプログラム(外部からの設定または書き換えによる)することにより、必要とする論理機能が得られるロジックLSIである。近年、ゲート(gate)規模が飛躍的に増大したため、1チップ構成のプログラマブルロジックデバイスによりシステムレベルの回路を実現することが可能になってきた。そのため、1チップに数種類のクロックを入力することが一般的に行われている。
プログラマブルロジックデバイスのクロック分配は、高速化を図るため、専用配線によって行われている。しかし、クロック数の増加に伴ってクロック配線領域が拡大しており、これがデバイスの集積度や性能の向上を妨げる要因になってきている。
【0003】
図5は従来のプログラマブルロジックデバイスのクロック分配回路の第1例を示す。
図5に示す構成は、複数のクロック(CLK−A,CLK−B,CLK−C,CLK−D)のそれぞれのクロックライン201a,201b,201c,201dは、複数のルート(ここでは3系統)に布線され、各ルートの入り口には、クロックバッファ202a〜202lが接続されている。クロックバッファ202a〜202dのクロックライン203a〜203dにはセレクタ(selector)204a〜204cが接続され、クロックライン203e〜203hにはセレクタ204d〜204fが接続され、クロックライン203i〜203lにはセレクタ204g〜204iが接続されている。さらに、セレクタ204a〜204iには、論理回路としてのフリップフロップ(FF)205a〜205iが接続されている。ユーザーはセレクタ204a〜204iをプログラムにより制御し、セレクタ204a〜204iの各4つの入力クロックの中から選ばれた1つをそれぞれのフリップフロップ205a〜205iにクロックとして入力する。共通のクロックライン上で共通のクロックにより動作するフリップフロップが1つの論理回路を構成する。
【0004】
図6は従来のプログラマブルロジックデバイスのクロック分配回路の第2例を示す。この構成は、フリップフロップへのクロック供給を個別のセレクタを用いずに行えるようにしたもので、その詳細は、特開平6−120811号公報に示されている。ここに示す構成は、プログラム可能な接続素子が、図5のセレクタ204a〜204iに置き換えられたものとなっている。すなわち、セレクタ204aに代えて接続素子206a〜206dが用いられ、セレクタ204bに代えて接続素子207a〜207dが用いられ、セレクタ204cに代えて接続素子208a〜208dが用いられ、セレクタ204dに代えて接続素子209a〜209dが用いられ、セレクタ204eに代えて接続素子210a〜210dが用いられ、セレクタ204fに代えて接続素子211a〜211dが用いられ、セレクタ204gに代えて接続素子212a〜212dが用いられ、セレクタ204hに代えて接続素子213a〜213dが用いられ、セレクタ204iに代えて接続素子214a〜214dが用いられる。
【0005】
接続素子206a〜214dのそれぞれは、プログラムデータを保持するメモリセルとスイッチング素子として機能するトランジスタを用いて構成される。接続素子の206a〜206d(207〜214の各a〜dも同様)の内の1つのみがオン状態になることでCLK−A〜Dの内の選択された1つのみが対応するフリップフロップにクロックとして入力される。
【0006】
従来よりプログラマブルロジックデバイスにおいては、クロックバッファ等のクロック供給手段に対してクロックを取り込む回路が複数存在し、さらに各回路とクロック供給手段までの配線長が不一致であるときには、クロックの到達時間に差異が生じる現象、所謂クロックスキューを生じることが知られている。クロックスキューは、クロック速度が上がるほど、また、プログラマブルアレイの密度が高くなるほど顕著になり、論理動作を高速化させる場合の障害になる。このため、クロックスキューは可能な限り低減する必要がある。
【0007】
図5および図6の回路について検討してみると、図5の構成の場合、それぞれのフリップフロップの間近にセレクタが設けられ、このセレクタに全てのクロックラインが接続されているのでクロックスキューは小さくなる。しかし、全てのクロックラインの布線が必要になるため、クロックラインの配線領域が大きくなる。一方、図6の構成の場合、各フリップフロップと4本のクロックライン(203a〜203d等)とは1本のクロック取り込み線で接続されるため、4本のクロックラインと各フリップフロップとの間の配線領域は小さくなるものの、クロックスキューが大きくなる。
【0008】
従来より、クロックスキューを低減する手段として、幾つかの提案がなされている。例えば、特開平11−317457号公報では、クロック供給手段としてのクロックドライバの出力側に基本論理回路に加えてダミー負荷を接続し、クロック信号の合計負荷を等しくするために必要な最小限のダミー負荷の容量を回路配置領域毎に算出し、これを回路配置領域に配置し、さらにクロック配線処理および信号配線処理を行って基本論理回路とダミー負荷の接続を行うようにしている。
【0009】
【発明が解決しようとする課題】
しかし、従来のプログラマブルロジックデバイス(PLD)のクロック分配回路によると、図5および図6の構成によるPLDでは、クロック数分の複数のクロックラインが全てのフリップフロップに行き渡るように布線されているため、クロックラインのための配線領域が大きくなり、素子の実装スペースに制限が生じる。
【0010】
さらに、特開平11−317457号公報の場合、各クロックドライバまでの距離を厳密にしなければならず、また、クロックドライバ以降も厳密な精度が要求されるため、自由度に乏しい。さらに、クロックドライバに接続される回路総数(フリップフロップ+ダミー負荷)Nを一定にし、各クロックドライバに均等にN個の回路が接続されるようにしたもので、PLDおよび複数クロックを対象にしたものではない。このため、複数のクロック信号分配路が均一でない素子において、ユーザーがプログラミングにより接続素子を制御するPLDおよび複数のクロックを用いる構成の回路に適用するのは難しい。
【0011】
したがって、本発明の目的は、クロックラインのための配線領域を小さくすることのできるプログラマブルロジックデバイスのクロック分配回路を提供することにある。
【0012】
さらに、本発明の他の目的は、クロックラインの配線領域を小さくできるほか、スキューの増加を抑えることのできるプログラマブルロジックデバイスのクロック分配回路を提供することにある。
【0015】
本発明は、上記の目的を達成するため、の特徴として複数のクロックの内の1つを選択して前記複数の論理回路へ供給する処理をプログラミングにより可能なプログラマブルロジックデバイス(PLD)のクロック分配回路において、入力された前記複数のクロックの内の1つを前記プログラミングにより選択して出力するセレクタと、前記複数の論理回路が分散接続された複数のクロックラインに前記セレクタから出力されたクロックを分配する複数のバッファ回路と、前記プログラミングに応じて、前記複数の論理回路の内の接続対象の論理回路と前記複数のクロックラインの1つを接続する複数の第1のプログラマブル接続素子と、前記複数のクロックラインのそれぞれに接続可能な複数の調整用負荷と、前記複数のクロックラインへの前記複数の論理回路の接続数に応じて、前記複数の調整用負荷を前記複数のクロックラインの1つに接続する第2の複数のプログラマブル接続素子を備えることを特徴とするプログラマブルロジックデバイスのクロック分配回路を提供する。

【0016】
この構成によれば、論理回路が要求するクロックは、複数の入力クロックの中からセレクタにより選択され、セレクタから出力されたクロックは、複数のバッファ回路を介して複数のクロックラインへ送出され、さらにプログラミングに応じて動作する第1のプログラマブル接続素子を介して複数の論理回路に供給される。さらに、クロックラインへの論理回路の接続状態に応じて複数の調整用負荷が第2の複数のプログラマブル接続素子を介して接続され、複数のクロックラインの相互のクロックの遅延時間が等しくなる。この結果、クロックスキューの増加が抑えられ、また、クロックの配線領域を小さくすることができる。
【0017】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
図1は本発明によるプログラマブルロジックデバイスのクロック分配回路の第1の実施の形態を示す。
複数のクロック(CLK−A,CLK−B,CLK−C,CLK−D)のそれぞれのクロックライン201a,201b,201c,201dには、セレクタ10,11が接続されている。セレクタ10は電源(VDD)ライン14に接続されたプログラマブル接続素子12a,12cと接地(GND)ライン15に接続されたプログラマブル接続素子12b,12dのプログラミング結果に基づいてクロックCLK−A〜Dの内の1つを選択する。また、セレクタ11は電源(VDD)ライン14に接続されたプログラマブル接続素子13a,13cと接地(GND)ライン15に接続されたプログラマブル接続素子13b,13dのプログラミング結果に基づいてクロックCLK−A〜Dの内の1つを選択する。セレクタ10の出力端子に接続されたクロックライン16には、クロックバッファ18a,18b,18cが並列接続され、セレクタ11の出力端子に接続されたクロックライン17には、クロックバッファ18d,18e,18fが並列接続されている。
【0018】
クロックバッファ18a,18dにはクロックライン19a,19bが接続され、クロックライン19aにはプログラマブル接続素子20a,21a,22a,23a,24aが接続され、クロックライン19bにはプログラマブル接続素子20b,21b,22b,23b,24bが接続されている。同様に、クロックバッファ18b,18eにはクロックライン25a,25bが接続され、クロックライン25aにはプログラマブル接続素子26a,27a,28a,29a,30aが接続され、クロックライン25bにはプログラマブル接続素子26b,27b,28b,29b,30bが接続されている。さらに、クロックバッファ18c,18fにはクロックライン31a,31bが接続され、クロックライン31aにはプログラマブル接続素子32a,33a,34a,35a,36aが接続され、クロックライン31bにはプログラマブル接続素子32b,33b,34b,35b,36bが接続されている。
【0019】
プログラマブル接続素子20a,20bには論理回路としてのフリップフロップ37が、プログラマブル接続素子21a,21bにはフリップフロップ38が、プログラマブル接続素子22a,22bにはフリップフロップ39が接続されている。さらに、プログラマブル接続素子23a,23bには調整用負荷46が接続され、プログラマブル接続素子24a,24bには調整用負荷47が接続されている。
同様に、プログラマブル接続素子26a,26bにはフリップフロップ40が、プログラマブル接続素子27a,27bにはフリップフロップ41が、プログラマブル接続素子28a,28bにはフリップフロップ42が接続され、プログラマブル接続素子29a,29bには調整用負荷48が接続され、プログラマブル接続素子30a,30bには調整用負荷49が接続されている。
さらに、プログラマブル接続素子32a,32bにはフリップフロップ43が、プログラマブル接続素子33a,33bにはフリップフロップ44が、プログラマブル接続素子34a,34bにはフリップフロップ45が接続され、プログラマブル接続素子35a,35bには調整用負荷50が接続され、プログラマブル接続素子36a,36bには調整用負荷51が接続されている。調整用負荷46〜51は、フリップフロップ37〜45と同一の負荷容量を持ち、クロックライン19a,19b,25a,25b,31a,31bの負荷を調整するように機能する。
【0020】
図2はプログラマブル接続素子の詳細を示す。図1のプログラマブル接続素子12a〜13d,20a〜24b,26a〜29b,32a〜36bは同一構成であり、ここではプログラマブル接続素子12a,12bについてのみ図示および説明する。
プログラマブル接続素子12aは、プログラムデータが入力されるメモリセル101と、このメモリセル101の出力信号によってオン/オフ動作をするトランジスタ102を備えて構成される。同様に、プログラマブル接続素子12bは、プログラムデータが入力されるメモリセル103と、このメモリセル103の出力信号によってオン/オフ動作をするトランジスタ104を備えて構成される。トランジスタ102と104にはP型とN型のMOSFETが用いられ、トランジスタ102のソースとトランジスタ104のドレインはセレクタ10に接続され、トランジスタ102のドレインは電源(VDD)ライン14に接続され、トランジスタ104のソースは接地(GND)ライン15に接続されている。
【0021】
プログラムデータは、プログラマブルロジックデバイスの初期化時あるいは再構成時に外部から読み込まれ、メモリセル101,103に蓄積される。メモリセル101,103は1ビットの情報を蓄積するメモリであり、その情報に従ってトランジスタ102,104のON/OFF動作が決定される。トランジスタ102がONのときにはセレクタ10と電源(VDD)ライン14が接続され、OFFのときには未接続となる。同様に、トランジスタ104がONのときにはセレクタ10と接地(GND)ライン15が接続され、OFFのときには未接続となる。このようにして構成されている2組のプログラム接続素子12a〜12dに与えるプログラムデータを調整することにより、セレクタ10のラインと電源(VDD)ライン14または接地(GND)ライン15のいずれかに接続し、あるいはライン14,15の両方に末接続にすることができる。
【0022】
次に、図1の構成によるクロック分配回路の動作について説明する。
セレクタ10,11の制御のほか、フリップフロップ37〜45および調整用負荷46〜51とクロックライン19a,19b,25a,25b,31a,31bとの接続は、図2で説明したように、ユーザーがプログラムした内容によってプログラマブル接続素子20a〜36bを制御することにより行われる。
【0023】
まず、プログラムされた状態の動作について説明する。セレクタ10,11から出力される2つのクロックは、プログラマブル接続素子12a〜12dおよび13a〜13dによって選択される。セレクタ10,11からクロックライン16,17に出力されたクロックは、クロックバッファ18a〜18fを介してクロックライン19aと19b,25aと25b,31aと31bのそれぞれに分配される。フリップフロップ37〜45は、プログラマブル接続素子20a〜22b,26a〜28b,32a〜34bによって各々2つのクロックライン(19aと19b、25aと25b、または31aと31b)と接続される。どちらのクロックラインに接続されるかは、ユーザーから与えられたプログラムデータによって決定される。プログラムによっては、セレクタ10,11のどちらのクロックも入力されないフリップフロップ(未使用のフリップフロップ)があり、このフリップフロップはクロックラインに接続されない。
【0024】
調整用負荷46〜51は、プログラマブル接続素子23a〜24b,29a〜30b,35a〜36bによって対応する2つのクロックラインと接続可能であり、プログラムデータによって一方のクロックラインに接続され、あるいは両方のクロックラインに接続されないようになる。調整用負荷46〜51の内の所望数がクロックラインに接続されることにより、各クロックラインの負荷は均一化される。
【0025】
次に、セレクタ10及び11の動作について説明する。セレクタを動作させる信号は、プログラマブル接続素子12a〜13dによって電源(VDD)ライン14または接地(GND)ライン15に接続される。プログラムデータによってセレクタ10及び11の制御端子が電源(VDD)ライン14または接地(GND)ライン15に接続されることにより、セレクタ10及び11はクロックCLK−A〜Dの内の1つを選択する。
【0026】
ここで、クロックライン19a〜31bの負荷を均一化するためのプログラムデータのデータ調整方法について説明する。一例として、ユーザーが所望した回路は、次のように接続されているものとする。
【表1】
Figure 0003555077
(フリップフロップ45は未接続)
【0027】
この場合、調整用負荷46〜51は、次のようにクロックラインに接続することにより、各クロックライン相互の負荷を等しくなり、クロックスキュー低減することができる。
【表2】
Figure 0003555077
(調整用負荷47と49はクロックラインに未接続)
【0028】
負荷の調整において特に重要なことは、同一クロックが供給されるクロックライン19a,25a,31aの負荷を均一化することである。クロックライン毎に負荷が異なると、それぞれのクロック遅延時間が異なってくるため、クロックスキューが増加する。同様の理由により、他のクロックライン19b,25b,31bにおいても、負荷を均一化する必要がある。
【0029】
負荷の調整は、開発ツールを用いて行われる。一般に、PLDでユーザーが所望の回路を構築する場合、デバイスの開発ツールでデバイス内の各フリップフロップや論理ブロック等にユーザー回路を割り当てて配置し、プログラムデータを作成する。ユーザーが回路を割り当てた段階で、各クロックラインの負荷が決まる。そこで、このときに各クロックラインの負荷状況に応じて調整用負荷の接続を決定する。
【0030】
チップ全体がかなりの種類のクロックを必要とする場合でも、或る部分領域に限定すれば、ほとんどの場合、必要なクロックは1〜2種類である。したがって、図1に示したように、或る部分領域に供給するクロックをセレクタ10,11で選択して供給することによりクロックラインの数を減らせるので、クロック配線領域を縮小することができる。
そして、調整用負荷の接続数をクロックラインに接続されるフリップフロップの数に応じて調整することにより、各クロックラインの負荷バランスが取られるので、ユーザーが回路をプログラムする場合、各クロックラインに接続されるフリップフロップの数が異なる状態になっても、クロックスキューの増加が抑えられる。このために用いられるスキュー調整用の負荷とプログラマブル接続素子は、従来の構成において用いられるセレクタに比べて面積が小さいため、クロック配線領域を縮小できる。クロック配線領域が縮小されることにより、論理ブロック間の平均的な配線長が短くなり、遅延時間が短縮される。
【0031】
上記実施の形態においては、PLDの論理回路の組み合わせに使用するクロックの種類を2つ(セレクタ10,11の出力)としているが、クロック数は2つに限定されるものではない。例えば、論理回路の組み合わせに使用するクロック数を1つにすれば、配線領域縮小の効果はより大きくなるし、また、部分領域で使用するクロック数を3つにすれば、ユーザー回路の割り付けの自由度が増すことは明らかであろう。
【0032】
図3は本発明の第2の実施の形態を示す。図3においては、セレクタ10,11用のプログラマブル接続素子12a〜13dと、電源(VDD)ライン14および接地(GND)ライン15の図示を省略している。
本実施の形態は、図1の構成において、調整用負荷とフリップフロップを1対1に対応させて1つの基本セルを構成したところに特徴がある。フリップフロップ37〜45を接続したクロックラインと反対側のクロックラインのそれぞれには、フリップフロップと同じ負荷量を持つ調整用負荷61〜69が接続され、これにより各クロックラインの負荷は均一化される。調整用負荷61,62,63はプログラマブル接続素子71a,71b,72a,72b,73a,73bを介してクロックライン19a,19bに接続され、調整用負荷64,65,66はプログラマブル接続素子74a,74b,75a,75b,76a,76bを介してクロックライン25a,25bに接続され、調整用負荷67,68,69はプログラマブル接続素子77a,77b,78a,78b,79a,79bを介してクロックライン31a,31bに接続されている。
【0033】
図3の負荷調整方法以外の動作は、図1に示した実施の形態と同様であるので、説明を省略する。例えば、フリップフロップ37がクロックライン19aに接続されるとき、調整用負荷61をクロックライン19bに接続する。また、フリップフロップ37がクロックライン19bに接続されるときには、調整用負荷61をクロックライン19aに接続する。このようにすることで、クロックライン16と17に接続される負荷を均一化することができる。
第2の実施の形態によれば、フリップフロップと調整用負荷の物理的位置が近いため、クロックバッファ18a〜18fから各負荷までの距離差によって生じる遅延時間の差を無視できない場合でも、負荷を均一化しやすいという利点がある。
【0034】
図4は本発明の第3の実施の形態を示す。図4においては、セレクタ10,11用のプログラマブル接続素子12a〜13dと、電源(VDD)ライン14および接地(GND)ライン15の図示を省略している。
本実施の形態は、図1の構成において、クロックライン19aと19b、25aと25b、31aと31bのライン上に接続される調整用負荷の容量を異ならせたところに特徴がある。すなわち、フリップフロップと同じ負荷量を持つ調整用負荷81,82,83を図1の調整用負荷46,48,50に代えて設置し、フリップフロップの2倍の負荷量を持つ調整用負荷91,92,93を図1の調整用負荷47,49,51に代えて設置している。
【0035】
負荷調整方法以外の動作は図1の実施の形態で説明した通りであるので、重複する説明は省略する。ここでは、クロックライン19a〜31bの負荷を均一化するためのプログラムデータのデータ調整方法について説明する。一例として、ユーザーによる回路構成が〔表3〕の接続であるとする。
【表3】
Figure 0003555077
【0036】
この場合、〔表4〕のように調整用負荷をクロックラインに接続する。
【表4】
Figure 0003555077
【0037】
第3の実施の形態においては、負荷量の異なる調整用負荷を用意することにより、調整用負荷の占める領域を縮小することができる。さらに、クロックラインに接続されるプログラマブル接続素子の数を減らすことができるので、実装面積を縮小することができる。特に、1つのクロックラインに接続可能なフリップフロップの数が多い場合には、これらの面積縮小の効果は大きくなる。
【0038】
前記各実施の形態においては、フリップフロップがクロックライン毎に最大3個が割り当てられ、接続可能な負荷容量も2個又は2種類としたが、この数に限定されるものでないことは言うまでもない。さらに、クロックも4種としたが、任意の数にすることができる。
【0039】
【発明の効果】
以上説明した通り、本発明のプログラマブルロジックデバイスのクロック分配回路によれば、複数の論理回路へ複数のクロックの内の1つを選択して供給するプログラマブルロジックデバイス(PLD)のクロック分配回路において、前記複数のクロックを発生するクロック発生源と、プログラムに基づいて前記複数のクロックの内の1つを選択するセレクト信号を発生するセレクト信号発生手段と、前記セレクト信号に基づいて前記複数のクロックの内の1つを選択して前記複数の論理回路へ供給するセレクタを備えたことを特徴とするプログラマブルロジックデバイスのクロック分配回路を提供する。
【0040】
この構成によれば、複数のクロックの内の1つを選択するためのセレクト信号がセレクト信号発生手段により作られ、このセレクト信号により複数のクロックの内の1つがセレクタにより選択される。したがって、複数の論理回路にクロックを供給するためのクロックラインの数が低減されるので、クロックラインの配線領域を小さくすることができる。
【0041】
以上説明した通り、本発明のプログラマブルロジックデバイスのクロック分配回路によれば、入力された複数のクロックの内の1つをセレクタにより選択してクロックラインへ出力し、このクロックラインに第1のプログラマブル接続素子を介して複数の論理回路を接続し、更に前記クロックラインに第2のプログラマブル接続素子を介して調整用負荷を接続できる構成にしたため、論理回路に導かれるクロックラインの数の低減によりクロックの配線領域を小さくできるようになり、調整用負荷を第2のプログラマブル接続素子により選択的に接続することにより、論理回路の接続数にかかわらず複数のクロックラインの相互のクロックの遅延時間が等しくなり、クロックライン間の負荷アンバランスが抑えられる結果、クロックスキューの増加が抑えられる。
【図面の簡単な説明】
【図1】本発明によるプログラマブルロジックデバイスのクロック分配回路の第1の実施の形態を示す回路図である。
【図2】図1のプログラマブル接続素子の詳細構成を示す回路図である。
【図3】本発明の第2の実施の形態を示す回路図である。
【図4】本発明の第3の実施の形態を示す回路図である。
【図5】従来のプログラマブルロジックデバイスのクロック分配回路の第1例を示す回路図である。
【図6】従来のプログラマブルロジックデバイスのクロック分配回路の第2例を示す回路図である。
【符号の説明】
10,11 セレクタ
12a,12c,12b,12d プログラマブル接続素子
13a,13b,13c,13d,20a,20b プログラマブル接続素子
14 電源(VDD)ライン
15 接地(GND)ライン
16,17,19a,19b,25a,25b クロックライン
18a〜18f クロックバッファ
21a,21b,22a,22b プログラマブル接続素子
23a,23b,24a,24b プログラマブル接続素子
26a,26b,27a,27b プログラマブル接続素子
28a,28b,29a,29b プログラマブル接続素子
30a,30b,32a,32b プログラマブル接続素子
31a,31b,201a〜201d クロックライン
33a,33b,34a,34b プログラマブル接続素子
35a,35b,36a,36b プログラマブル接続素子
37〜45 フリップフロップ
46〜51,61〜69 調整用負荷
71a,71b,72a,72b プログラマブル接続素子
73a,73b,74a,74b プログラマブル接続素子
75a,75b,76a,76b プログラマブル接続素子
77a,77b,78a,78b プログラマブル接続素子
79a,79b プログラマブル接続素子
81,82,83,91,92,93 調整用負荷

Claims (5)

  1. 複数のクロックの内の1つを選択して複数の論理回路へ供給する処理をプログラミングにより可能なプログラマブルロジックデバイス(PLD)のクロック分配回路において、入力された前記複数のクロックの内の1つを前記プログラミングにより選択して出力するセレクタと、前記複数の論理回路が分散接続された複数のクロックラインに前記セレクタから出力されたクロックを分配する複数のバッファ回路と、前記プログラミングに応じて、前記複数の論理回路の内の接続対象の論理回路と前記複数のクロックラインの1つを接続する複数の第1のプログラマブル接続素子と、前記複数のクロックラインのそれぞれに接続可能な複数の調整用負荷と、前記複数のクロックラインへの前記複数の論理回路の接続数に応じて、前記複数の調整用負荷を前記複数のクロックラインの1つに接続する第2の複数のプログラマブル接続素子を備えることを特徴とするプログラマブルロジックデバイスのクロック分配回路。
  2. 前記第2の複数のプログラマブル接続素子は、前記複数の論理回路の後段の前記クロックライン上に配設されることを特徴とする請求項記載のプログラマブルロジックデバイスのクロック分配回路。
  3. 前記第2の複数のプログラマブル接続素子は、前記複数の論理回路の直近の前記クロックライン上に配設されることを特徴とする請求項記載のプログラマブルロジックデバイスのクロック分配回路。
  4. 前記複数の調整用負荷は、互いに負荷容量の異なる複数個が1つのクロックライン上に接続されることを特徴とする請求項記載のプログラマブルロジックデバイスのクロック分配回路。
  5. 前記複数の調整用負荷は、組み合わされる前記複数の論理回路と同一容量を持つ第1の調整用負荷と、前記組み合わされる前記複数の論理回路の2倍の容量を持つ第2の調整用負荷を備えることを特徴とする請求項記載のプログラマブルロジックデバイスのクロック分配回路。
JP2000093234A 2000-03-30 2000-03-30 プログラマブルロジックデバイスのクロック分配回路 Expired - Fee Related JP3555077B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000093234A JP3555077B2 (ja) 2000-03-30 2000-03-30 プログラマブルロジックデバイスのクロック分配回路
US09/819,791 US6538489B2 (en) 2000-03-30 2001-03-29 Clock distributing circuit in programmable logic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000093234A JP3555077B2 (ja) 2000-03-30 2000-03-30 プログラマブルロジックデバイスのクロック分配回路

Publications (2)

Publication Number Publication Date
JP2001285055A JP2001285055A (ja) 2001-10-12
JP3555077B2 true JP3555077B2 (ja) 2004-08-18

Family

ID=18608448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000093234A Expired - Fee Related JP3555077B2 (ja) 2000-03-30 2000-03-30 プログラマブルロジックデバイスのクロック分配回路

Country Status (2)

Country Link
US (1) US6538489B2 (ja)
JP (1) JP3555077B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816979B1 (en) * 2001-02-01 2004-11-09 Cypress Semiconductor Corp. Configurable fast clock detection logic with programmable resolution
US6911842B1 (en) * 2002-03-01 2005-06-28 Xilinx, Inc. Low jitter clock for a physical media access sublayer on a field programmable gate array
US7107477B1 (en) * 2003-01-31 2006-09-12 Altera Corporation Programmable logic devices with skewed clocking signals
US7254208B2 (en) * 2003-05-20 2007-08-07 Motorola, Inc. Delay line based multiple frequency generator circuits for CDMA processing
US7114069B2 (en) * 2003-04-22 2006-09-26 Motorola, Inc. Reconfigurable processing circuit including a delay locked loop multiple frequency generator for generating a plurality of clock signals which are configured in frequency by a control processor
US7031372B2 (en) * 2003-04-22 2006-04-18 Motorola, Inc. Multiple user reconfigurable CDMA processor
DE10330593B4 (de) * 2003-07-07 2010-11-04 Qimonda Ag Integrierter Taktversorgungsbaustein für ein Speichermodul, Speichermodul, welches den integrierten Taktversorgungsbaustein umfasst, sowie Verfahren zum Betreiben des Speichermoduls unter Testbedingungen
JP2005184262A (ja) 2003-12-17 2005-07-07 Matsushita Electric Ind Co Ltd 半導体集積回路及びその製造方法
US7685454B2 (en) * 2006-07-12 2010-03-23 Agere Systems Inc. Signal buffering and retiming circuit for multiple memories
US8966308B2 (en) * 2006-08-18 2015-02-24 Dell Products L.P. System and method for clock domain management
JP5216287B2 (ja) * 2007-09-21 2013-06-19 株式会社日立製作所 半導体装置
US7791370B1 (en) * 2009-05-21 2010-09-07 Altera Corporation Clock distribution techniques for channels
US10234891B2 (en) * 2016-03-16 2019-03-19 Ricoh Company, Ltd. Semiconductor integrated circuit, and method for supplying clock signals in semiconductor integrated circuit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5254886A (en) * 1992-06-19 1993-10-19 Actel Corporation Clock distribution scheme for user-programmable logic array architecture
US5384497A (en) * 1992-11-04 1995-01-24 At&T Corp. Low-skew signal routing in a programmable array
US5705942A (en) * 1995-09-29 1998-01-06 Intel Corporation Method and apparatus for locating and improving critical speed paths in VLSI integrated circuits
US5712579A (en) * 1995-10-16 1998-01-27 Xilinx, Inc. Deskewed clock distribution network with edge clock
US5721886A (en) * 1995-11-30 1998-02-24 Ncr Corporation Synchronizer circuit which controls switching of clocks based upon synchronicity, asynchronicity, or change in frequency
US6008666A (en) * 1998-04-01 1999-12-28 Xilinx, Inc. Variable-delay interconnect structure for a programmable logic device

Also Published As

Publication number Publication date
JP2001285055A (ja) 2001-10-12
US20010035782A1 (en) 2001-11-01
US6538489B2 (en) 2003-03-25

Similar Documents

Publication Publication Date Title
JP3555077B2 (ja) プログラマブルロジックデバイスのクロック分配回路
US6057707A (en) Programmable logic device incorporating a memory efficient interconnection device
US6049225A (en) Input/output interface circuitry for programmable logic array integrated circuit devices
US5703498A (en) Programmable array clock/reset resource
US7057413B1 (en) Large crossbar switch implemented in FPGA
US6229336B1 (en) Programmable integrated circuit device with slew control and skew control
US5594367A (en) Output multiplexer within input/output circuit for time multiplexing and high speed logic
US5701091A (en) Routing resources for hierarchical FPGA
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
US5789939A (en) Method for providing a plurality of hierarchical signal paths in a very high-density programmable logic device
EP0871292B1 (en) In-system programmable interconnect circuit
US5559450A (en) Field programmable gate array with multi-port RAM
US6815981B2 (en) Programmable logic array integrated circuit devices
US5528170A (en) Low-skew signal routing in a programmable array
US20030005402A1 (en) System for simplifying the programmable memory to logic interface in FPGA
US5497108A (en) BICMOS repeater circuit for a programmable logic device
US6294925B1 (en) Programmable logic device
KR100628550B1 (ko) 아키텍처와 로직옵션을 정합하는 방법 및 장치
US6703859B2 (en) Programmable logic device and method of controlling clock signal thereof
US7768430B1 (en) Look-up table based memory
EP1177630B1 (en) Apparatus and methods for dynamically defining variably sized autonomous sub-arrays within a programmable gate array
US6104207A (en) Programmable logic device
US20180269879A1 (en) Switchable power islands having configurably on routing paths
KR101115474B1 (ko) 지연회로
US8271821B2 (en) Flexible RAM clock enable

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20031216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040305

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040428

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees