米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 松下電器産業株式会社

発明の名称 集積回路のレイアウト設計方法およびその装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平7−121580
公開日 平成7年(1995)5月12日
出願番号 特願平5−268699
出願日 平成5年(1993)10月27日
代理人 【弁理士】
【氏名又は名称】小鍜治 明 (外2名)
発明者 矢野 純一
要約 目的
クロックのスキューによる回路の誤動作を防止するレイアウト設計方式を提供する。

構成
レイアウト設計部101が回路のレイアウト設計を行なった後、前後隣りあうフリップフロップのクロック信号が、異なるクロックドライバから供給されている場合には、遅延計算部103がそれらのクロックドライバの出力の遅延量を各々算出する。レイアウト修正部104が遅延量がより小さいクロックドライバの出力につながる配線の周囲に、前記配線の引き直しまたは配線の付加を行なうことによって、遅延量がより小さいクロックドライバの遅延量を大きくする。従ってレイアウト面積の増大を伴うことなく、クロック間のスキューをなくし、回路の誤動作を防止することが出来る。
特許請求の範囲
【請求項1】複数のフリップフロップを有し、複数のクロックドライバによってクロック信号が供給されることによって駆動されるレイアウト設計対象回路において、前記レイアウト設計対象回路のレイアウト設計を行なう工程と、前記複数のフリップフロップのうち直接または任意の組合せ論理回路を介して接続された前後隣りあうフリップフロップにおいて、前記前後隣りあうフリップフロップのクロック信号が、異なるクロックドライバから供給されている場合には、前記異なるクロックドライバの出力に接続されている負荷容量を各々算出し、前記負荷容量と前記異なるクロックドライバのドライブ能力より遅延量を算出する工程と、前記遅延量がより小さいクロックドライバの出力につながるクロック信号の配線において、前記配線の負荷容量を大きくするように前記配線の引き直しまたは配線の付加を行なうことによって前記遅延量がより小さいクロックドライバの遅延量を大きくする工程とを備えたレイアウト設計方法。
【請求項2】複数のフリップフロップを有し、複数のクロックドライバによってクロック信号が供給されることによって駆動されるレイアウト設計対象回路において、前記レイアウト設計対象回路のレイアウト設計を行なうレイアウト設計部と、前記複数のフリップフロップのうち直接または任意の組合せ論理回路を介して接続された前後隣りあうフリップフロップにおいて、前記前後隣りあうフリップフロップのクロック信号が、異なるクロックドライバから供給されている場合には、前記異なるクロックドライバの出力に接続されている負荷容量を各々算出し、前記負荷容量と前記異なるクロックドライバのドライブ能力より遅延量を算出する遅延計算部と、前記遅延量がより小さいクロックドライバの出力につながるクロック信号の配線において、前記配線の負荷容量を大きくするように前記配線の引き直しまたは配線の付加を行なうことによって前記遅延量がより小さいクロックドライバの遅延量を大きくするレイアウト設計修正部とを備えたレイアウト設計装置。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は集積回路のレイアウト設計方法およびレイアウト設計装置に関する。
【0002】
【従来の技術】現在、クロック同期で動作するフリップフロップを有する回路は多くのディジタル回路に使用されている。以下図面を参照しながら、上記したディジタル回路の一例について説明する。図6はクロック同期で動作するフリップフロップを有するディジタル回路である。図6において、フリップフロップ601〜603は、クロックドライバ604、605によって供給されるクロック信号610、611に同期して動作を行なう。クロック信号610の立ち上がりにおいて、フリップフロップ601からフリップフロップ602およびフリップフロップ602からフリップフロップ603への信号の伝搬が行なわれ、従ってクロックに同期してフリップフロップ601から603に次々にデータの伝搬が行なわれることになる。従来のレイアウト設計手法ではレイアウト面積を抑えるために配線長ができるだけ短くなるようなレイアウト設計が行なわれる。
【0003】
【発明が解決しようとする課題】しかしながら上記のような従来のレイアウト設計手法で図6のような回路をレイアウト設計した場合、隣りあうフリップフロップのクロックのスキューのためにミスラッチを起こすことがあった。ここで図6のクロックドライバ604、605の出力にかかるフリップフロップのクロック入力の負荷容量と配線による負荷容量の和をそれぞれC1、C2としたとき、C1<C2であり、かつクロックドライバ604、605のドライブ能力が同じであるとすれば、クロックドライバ605の出力が、クロックドライバ604の出力より遅れることになる。その結果としてクロック間にスキューが生じ、このスキューによってミスラッチが起こることになる。
【0004】図7にクロック信号を伝えるネット610、611およびネット607、608の信号状態の例を示す。図7においてネット607の信号a1はタイミングT1でフリップフロップ602の出力であるネット608に伝搬されなくてはならないが、図7に示されるようにクロック信号610と611の間にスキューt0が存在するために、ネット607の信号状態はタイミングT1で既に次の信号状態a2となっており、タイミングT1ではネット608には信号状態a2が伝搬されてしまい、正しい信号の伝搬が行なわれない。
【0005】上記問題点を解決する方法として隣りあうフリップフロップ間の信号伝搬を遅延させるゲートを挿入するという方法があった。これについて図8を用いて説明する。図8はフリップフロップ601とフリップフロップ602の間に遅延ゲート801を挿入した以外は図6に示される回路と同等のものであり、図6と同様のものに関しては同じ番号を付して説明を省略する。図9には各ネットにおける信号状態の変化を示す。ネット802の信号はクロック信号610と611の間にスキューがあるために、クロック信号611が立ち上がるタイミングT1以前のタイミングT1で信号状態はa1からa2へ変化するが、信号状態a2は遅延ゲート801を通ることによってt1だけ遅延してネット803に出力される。ここでt1>t0であれば、ネット803はタイミングT1では前の信号状態のa1を保持しているため、ネット608には信号状態a1が伝えられ、正しい信号の伝搬が行なわれることになる。
【0006】しかし、この方法には挿入する遅延ゲートのためにレイアウト面積、消費電力が大きくなるという問題があった。
【0007】本発明は上記問題点に鑑み、スキューの発生を防ぎ、かつレイアウト面積を増大させない集積回路のレイアウト設計方法及び装置を提供するものである。
【0008】
【課題を解決するための手段】上記問題点を解決するために、本発明のレイアウト設計方法は、回路のレイアウト設計を行なう工程と、直接または任意の組合せ論理回路を介して接続された前後隣りあうフリップフロップのクロック信号が、異なるクロックドライバから供給されている場合には、それらのクロックドライバの出力に接続されている負荷容量を各々算出し、これらの負荷容量と各クロックドライバのドライブ能力から遅延量を算出する工程と、前記遅延量がより小さいクロックドライバの出力につながるクロック信号のネットをレイアウト上で実現する配線において、前記配線の負荷容量を大きくするように前記配線の引き直しまたは配線の付加をを行なうことによって前記遅延量がより小さいクロックドライバの遅延量を大きくする工程とを備えたものである。
【0009】
【作用】本発明は前記したようなレイアウト設計を行なうことによって、隣りあうフリップフロップにクロック信号を供給するクロックドライバから供給されるクロック信号の遅延量を等しくすることが出来る。従って、隣りあうフリップフロップに供給されるクロック信号間のスキューがなくなり、従って回路の誤動作を防ぐことが出来る。また、レイアウト面積の増大を伴うことがなく、消費電力の増加も新たに生じる配線で消費される電力だけであるのでわずかですむ。
【0010】
【実施例】以下本発明の一実施例のレイアウト設計方法について、図面を参照しながら説明する。
【0011】図1は本発明の実施例におけるレイアウト設計装置の構成図を示すものである。図1において101はレイアウト設計部、102はクロックドライバ抽出部、103は遅延計算部、104はレイアウト検索および修正部である。
【0012】以下図1を用いて本発明によるレイアウト設計に関して説明する。まず、レイアウト設計対象回路がレイアウト設計部101において人手によってもしくは例えば「岩波講座マイクロエレクトロニクス4VLSIの設計I」の第4章に示される方法によって自動的に配置配線されレイアウト設計が行なわれる。
【0013】次にクロックドライバ抽出部102において設計対象回路の中で直接または任意の組合せ論理回路を介して接続された、前後隣りあうフリップフロップのうちクロック信号が異なるクロックドライバから供給されているフリップフロップを検索し、それらにクロック信号を供給しているクロックドライバが抽出される。
【0014】次にクロックドライバ抽出部102によって抽出されたクロックドライバの出力に接続されている負荷容量が遅延計算部103によって計算される。
【0015】次に計算された負荷容量と各クロックドライバのドライブ能力より各クロック信号の遅延量が計算される。遅延計算部103ではさらに計算された遅延量の比較を行い、どのクロックドライバにどれだけの負荷容量を新たに付加すれば隣りあうフリップフロップにクロック信号を供給するクロックドライバの遅延量が等しくなるかが計算される。
【0016】次にレイアウト検索および修正部104では新たに負荷容量をつけ加えなければならないクロックドライバの出力につながるネットのレイアウト上での配線に関して、その周囲に配線の負荷容量が大きくなるように配線を引き直す、もしくは配線の付加を行なうことが出来る領域の検索を行ない、配線の引き直しもしくは配線の付加を行なう。この際には遅延計算部103であらかじめ計算された付加しなくてはならない負荷容量の値だけの負荷容量の付加が行なわれる。
【0017】このように負荷容量の付加を行なうことによって、隣りあうフリップフロップにクロック信号を供給するクロックドライバが異なった場合にもクロックドライバから供給されるクロック信号間のスキューがなくなり、回路の誤動作を防ぐことが出来る。
【0018】次に図1に示されるようなレイアウト設計装置が図2に示される設計対象回路に適用された場合について図2から図4を用いて説明する。
【0019】図2において201から203はフリップフロップである。204はフリップフロップ201にクロック信号を供給するクロックドライバであり、205はフリップフロップ202、203にクロック信号を供給するクロックドライバである。206から209はデータを伝搬するネットであり、210、211はクロック信号を伝えるネットである。このレイアウト設計対象回路がまず人手によってもしくは自動的に配置配線されレイアウト設計が行なわれる。
【0020】次に図2の設計対象回路に関してフリップフロップ201と202、フリップフロップ202と203がそれぞれ直接接続され、前後隣りあっており、そしてこれらのフリップフロップの組のうちフリップフロップ201と202がそれぞれ異なるクロックドライバ204、205からクロック信号を供給されているので、クロックドライバ204、205が抽出される。
【0021】次にこれらのクロックドライバの出力に接続されている負荷容量が計算される。クロックドライバ204に接続されている負荷容量をC1とすると、C1はフリップフロップ201の入力負荷容量およびネット210の配線負荷容量の和である。またクロックドライバ205に接続されている負荷容量をC2とすると、C2はフリップフロップ202、203の入力負荷容量およびネット211の配線負荷容量の和である。そしてさらにC1とC2およびクロックドライバ204、205のドライブ能力からクロック信号の遅延量を計算する。この例ではC2>C1であるとし、かつクロックドライバ204、205の駆動能力は等しいとし、C3=C2−C1とする。するとクロックドライバから供給されるクロック信号の遅延量はクロックドライバ205からのものの方が大きくなり、かつ遅延量を等しくするにはC3だけの負荷容量をクロックドライバ204に付加すればよいことがわかる。
【0022】次にレイアウト上でクロックドライバ204の出力につながるネットのレイアウト上の配線に関して、その周囲を検索する。図3は図2の回路をレイアウト設計部でレイアウト設計を行なった結果を示すレイアウトである。図3において301はクロックドライバ204を実現するセルレイアウトであり、302はフリップフロップ201を実現するセルレイアウトであり、303はネット210を実現する配線である。容量を付加すべきネット303の周囲を検索すると、斜線部304が未配線部分であり、新たに配線を引き直すことが可能な領域である。ここに新たに配線を引き直すことによってクロックドライバ301に容量C3だけが付加されるとすると、ここに配線を図4に示されるように引き直し、レイアウト設計を終了する。このようにすることによってクロックドライバ204と205の出力の遅延量の差がなくなり、従ってクロック信号間のスキューがなくなり、回路の誤動作がなくなる。
【0023】なお、以上の実施例ではレイアウト設計部101の処理の後にクロックドライバ抽出部102の処理を行なうとしたが、この順序は逆となってもよい。
【0024】また、未配線部分304を使って配線401を引き直したが、これは図5の501のように配線の付加を行なってもよい。
【0025】また、フリップフロップ201〜203は直接接続されているが、間に任意の組合せ論理回路を介してもよい。
【0026】また、実施例では1箇所の配線の引き直しによって負荷容量の付加を実現しているが、複数箇所の配線の引き直し、もしくは配線の付加によって負荷容量の付加を実現してもよい。
【0027】また、実施例では付加しなくてはならない負荷容量と等しい負荷容量を負荷しているが、配線の周囲を検索した結果、付加しなくてはならない負荷容量と等しいだけの負荷容量が付加できない場合には、付加できるだけの負荷容量を付加する。ただしこの場合にはクロック信号の遅延量が等しくはならないが、差は小さくなるため、回路の誤動作を低減することが出来る。
【0028】
【発明の効果】以上のように本発明のレイアウト設計方法は、回路のレイアウト設計を行なう工程と、直接または任意の組合せ論理回路を介して接続された前後隣りあうフリップフロップのクロック信号が、異なるクロックドライバから供給されている場合には、それら各々のクロックドライバの出力に接続されている負荷容量を各々算出し、これらの負荷容量と各々のクロックドライバのドライブ能力より各々のクロック信号の遅延量を算出する工程と、前記異なるクロックドライバのうち遅延量がより小さいクロックドライバの出力につながるクロック信号の配線において、前記配線の周囲に前記配線の負荷容量を大きくすることが出来るような領域を検索し、前記配線の負荷容量を大きくするように前記配線の引き直しまたは配線の付加をを行なうことによって前記遅延量がより小さいクロックドライバの遅延量を大きくする工程とを備え、この方法を用いてレイアウト設計を行なことによって、クロック信号間のスキューをなくし、回路の誤動作を防止することが出来る。また、一度レイアウト設計を行い、その未使用領域等を使ってレイアウトの変更を行なうのでレイアウト面積の増大を伴うことがない。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013