JP5696407B2 - 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路 - Google Patents

半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路 Download PDF

Info

Publication number
JP5696407B2
JP5696407B2 JP2010206132A JP2010206132A JP5696407B2 JP 5696407 B2 JP5696407 B2 JP 5696407B2 JP 2010206132 A JP2010206132 A JP 2010206132A JP 2010206132 A JP2010206132 A JP 2010206132A JP 5696407 B2 JP5696407 B2 JP 5696407B2
Authority
JP
Japan
Prior art keywords
timing
path
difficulty
convergence
clock
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
JP2010206132A
Other languages
English (en)
Other versions
JP2012063886A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010206132A priority Critical patent/JP5696407B2/ja
Publication of JP2012063886A publication Critical patent/JP2012063886A/ja
Application granted granted Critical
Publication of JP5696407B2 publication Critical patent/JP5696407B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は、LSI(Large Scale Integrated Circuit)等の半導体集積回路チップ内の回路の自動レイアウトを行なう自動配置配線方法、レイアウト装置、自動配置配線プログラム、及びこれらに基づいて製造される半導体集積回路に関する。
近年のLSI設計では、微細化、大規模化が進み、チップのレイアウトは非常に大きくなってきている。これにより、タイミングの収束が悪くなる、工程数が増大する等、チップ内のばらつき(OCV:On Chip Variation)の影響も顕著になってきている。特に、クロックツリーは数十万以上のフリップフロップ(FF)を駆動することもあり、これらのクロックスキューを低減させるため、非常に段数が深くなってきている。
0.18μmよりも前のプロセスであれば、クロックスキューを抑えることによりFF間のタイミングは良化するため、クロックツリーの段数は問題にならなかった。しかし、近年の微細化により、信号の分岐が起きると、セルごとにばらつきによる遅延を考慮する必要が出てきている。デザインのタイミング収束性が厳しい場合、クロックラインのばらつきは大きな問題となり、工期の増大、最悪の場合にはデザインのパフォーマンス劣化にまで繋がってしまう。
この問題に対して、レイアウト時に素子をクラスタリングすることにより、共通のクロック経路を増やしてクロックツリーのばらつきを低減させる提案がなされている(例えば、特許文献1参照)。この提案では、FFとマクロとを近傍に配置し、かつマクロの近傍にマクロにマクロ用のクロックを供給する第1クロック選択回路を配置してクラスター化する。さらに、ソースクロックを供給するクロックツリーソースセルと、各FFに対応して設けられる遅延調整用のクロックツリーセルとの間に共通のクロックツリーセルを挿入し、共通クロックツリーセルの後段で、FF遅延調整用のクロックツリーセルに供給されるクロック信号と、マクロ用の第1クロック選択回路とに供給されるクロック信号とを分岐させている。
しかし、上記の方法を用いても、FF間のタイミング制約又は遅延要件の相違は考慮されないため、タイミング収束性の観点から最適なクロックツリーを構築できるとは限らない。
上記問題点を踏まえ、本願ではタイミング制約を考慮することにより、タイミング収束性が向上し、ばらつき耐性に優れたクロックツリーを構築することのできる半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路を提供することを課題とする。
クロックツリーの構築に際して、各論理回路素子(FF)間のタイミング制約を考慮して、制約の厳しいパスを構成するFF間ではツリーの分岐を極力低減するようにクロックツリーを構築する。
第1の側面では、レイアウト装置を用いた半導体集積回路の自動配置配線方法を提供する。この自動配置配線方法では、
自動セル配置処理により生成された半導体集積回路に対するタイミング解析結果に基づいて、各論理回パス間のタイミング収束の難易度を判別し、
前記タイミング収束の難易度が所定のレベルを超えるパスについて、当該パスを構成する論理回路素子間での分岐が前記タイミング収束の難易度が前記所定のレベル以下のパスと比較して少なくなるようにクロックツリーを生成する。
第2の側面としては、上述の方法を実行するレイアウト装置を提供する。レイアウト装置は、
自動配置配線処理がなされたセル配置に対してタイミング解析を行うタイミング解析部と、
前記タイミング解析結果に基づいて、各論理パス間のタイミング収束の難易度を判別するタイミング制約判断部と、
前記タイミング収束の難易度が所定のレベルを超えるパスについて、当該パスを構成する論理回路素子間での分岐が前記所定のレベル以下のパスと比較して少なくなるようにクロックツリーを生成するクロックツリー構築部と、
を有する。
第3の側面では、レイアウト装置にインストールされてレイアウト装置に以下の処理を実行させるコンピュータ読み取り可能な自動配置配線プログラムを提供する。レイアウト装置に実行させる処理は、
前記レイアウト装置で生成処理されたセル配置に対するタイミング解析を取得する処理;
前記タイミング解析結果に基づいて、各論理回路素子間のタイミング収束の難易度を判別する処理;および
前記タイミング収束の難易度が所定のレベルを超えるパスについて、当該パスを構成する論理回路素子間での分岐が一定割合以下となるようにクロックツリーを生成する処理、
を含む。
第4の側面では、上述した方法で作成されたレイアウトに基づいて製造される半導体集積回路を提供する。半導体集積回路は、
半導体基板と、
前記半導体基板上に配置される複数の論理回路素子と、
前記複数の論理回路素子にクロック信号を分配するクロックツリー配線と、
を含み、
前記クロックツリー配線は、各論理パス間におけるタイミング収束の難易度が所定のレベルを超えるパスについて、当該パスを構成する前記論理回路素子間での分岐が前記所定のレベル以下のパスと比較して少なくなるように配置されている。
上記構成及び手法により、ばらつきによるタイミング違反を軽減することができ、最終製品のタイミングの収束性を向上し、0.18μm以降のプロセスにおいても、LSIチップの性能、動作の正確性を維持することが可能になる。
本発明の一実施形態による半導体集積回路の自動レイアウトの処理フローを示す図である。 タイミング制約を考慮しないで構築したクロックツリーの一例を示す図である。 クロックラインのばらつきによりタイミング収束の厳しくなる例を示す概略図である。 本発明の一実施形態によるタイミング制約を考慮したクロックツリー構築の処理フローの一例を示す図である。 タイミング解析結果から読み出されたタイミング制約情報の例として、パスの余裕度リストを示す図である。 図4の処理により構築されたばらつきを耐性の強いクロックツリーの一例を示す図である。 本発明の実施形態によるタイミング制約を考慮したクロックツリー構築の処理フローの別の例を示す図である。 本発明の実施形態による半導体集積回路の自動レイアウト装置の機能ブロック図である。
図1は、本発明の一実施形態による半導体集積回路の自動レイアウト方法の処理フローを示す図である。この処理フローの中で特徴的な部分は、後述するようにステップ6におけるタイミング制約を考慮したクロックツリーの構築工程である。
まず、ステップS1で、設計システムの内部又は外部のデータベースからデザインルール及びライブラリを読み込む。デザインルールは、ライン幅、スペース幅、ライン間隔など、各レイヤ又はレイヤ間で満たすべき論理的、物理的規則に関する情報を含む。ライブラリは、スタンダードセルやマクロセルを含む論理セルのレイアウトデータ、端子位置、サイズ、論理情報等を含む。
ステップS2では、ステップS1と同時又は前後して、配置配線のためのネットリストとタイミング制約を読み込む。ネットリストは端子間の論理接続情報であり、たとえばレジスタ転送レベル(RTL:Register Transfer Level)を論理合成したネットリストを読み込む。タイミング制約は、回路を設計どおりに動作させるために素子間に要求される遅延時間の制約条件である。
ステップS3で、セル配置を行なう。セル配置は、たとえばネットリストの結線情報に基づきライブラリから論理セルを選択してセル配置領域に配置する。この際にタイミングが考慮される。
ステップS4で、タイミングの最適化を行なう。この時点でのタイミングの最適化は、クロックツリー作成前の段階でのタイミング最適化であり、たとえば、配線遅延時間の最小化を行なう。
ステップS5で、タイミング解析を行なう。タイミング解析では、セル配置や遅延時間の最適化が適正に行なわれてタイミング要求が満たされているかどうかを検証する。タイミング解析の結果、入出力間のパスの各ノードでの遅延や合計の遅延時間、FF間のスラック(タイミング・マージン)、求められるタイミング要件と実際のコンパイル結果の差などが得られる。このタイミング解析により、すべてのFF間でタイミング要件が満たされていることが前提となって、以降の工程が行なわれる。
ステップS6で、ステップS5のタイミング解析結果に基づき、FF間のタイミング制約を考慮してクロックツリーを作成する。従来は、タイミング解析はもっぱらセル配置と遅延時間の確認、問題のあるパスの特定等のために行なわれていたが、本実施形態では、タイミング解析結果をクロックツリー構築のための資料として積極的に利用する。タイミング解析結果は、後述するように、FF間のパスタイミング制約の厳しさの程度すなわちタイミング収束の難易度についての情報を含む。そのようなタイミング制約情報の一例として、タイミングスラックレポートを用いることができる。あるいは、タイミング収束の難易度の程度に応じて分類されたパスの種類を用いてもよい。パスの種類としては、遅延要件が非常に厳しいクリティカルパス(最小のスラックを持つパスの集合)、1クロックサイクル内での遅延が許されるシングルサイクルパス、2クロックサイクル以上の遅延が認められるマルチサイクルパス、タイミングを考慮しなくてもよいフォルスパス(信号線は存在するがデータラインとしては繋がっていないパス)等の区別を用いることができる。タイミング制約情報を利用することによって、タイミング制約の厳しいFF間において、クロックツリーの分岐が極力少なくなるように、あるいは共通経路部分の割合が極力多くなるように、クロックツリーを作成する。ツリー作成時にクロックスキューの軽減処理も併せて行なう。
最後にステップS7で、クロックツリー後のタイミングの最適化を行い、信号配線を行なう。
仮に、ステップS6でタイミング制約を考慮しないでクロックツリーを作成した場合、図2のようなクロックツリーが形成される。すなわち、ネットリストの記述にしたがってFF1〜FF8が配置され、クロックのルートとなるバッファ101とFF1〜FF8の各素子の間に、各FFへの信号到達時間が一致するようにクロックバッファ102〜115が階層的に挿入される。
しかし、図2のようなクロックツリーを実施した場合、たとえばFF1とFF8の間のパスがクリティカルパス(タイミングの厳しいパス)であった場合に問題が生じる。FF1を送り側、FF8を受け側とするFF1−FF8間のパスはクリティカルパスであるとの指定がなされている場合、図3に示すように、もともとタイミング要件の厳しいFF1−FF8間において、さらにクロックスキュー(クロックのズレ)とクロックラインのばらつきの分だけタイミングが厳しくなり、指定されたタイミング要求を満たすことができなくなる可能性が非常に高い。図3の例では、クロックラインのセルのばらつきはCLKBUF 1〜3、及びCLKBUF 4〜6にかかっており、1つのセルのばらつきを20ピコ秒とすると、クロックスキューがゼロ(0ピコ秒)だとしても、最大20×6=120ピコ秒タイミングが厳しくなる。
0.18μmよりも前のプロセスでは、タイミングの厳しいパスがある場合、クロックラインにセルを挿入してクロックをずらすことによってデータラインマージンを稼ぐ手法(ローカルスキュー若しくはユースフルスキューと呼ばれる)が使われていた。しかし微細化が進み、ばらつきを考慮する必要がでてくると、クロックラインにセルを挿入するたびにセルのばらつき分の遅延が加算されるため、ローカルスキューの手法でタイミングを収束させることは困難である。そこで、実施形態では、図1のステップS6のように、あらかじめタイミング制約を考慮に入れてクロックツリーを構築する。
図4は、図1のステップS6の具体例を示す処理フローである。まず、ステップS6−1でタイミング解析結果を取得する。タイミング解析結果は、自動レイアウト装置の内部又は外部の記憶領域から読み出すことによって取得することができる。解析結果は、例えば図5に示すように、セル配置に含まれる全てのフリップフロップ(FF)間についてのタイミングスラック情報を含む。タイミングスラックとはFF間のタイミング・マージン(余裕度)であり、図5では許容される遅延時間(ピコ秒)で示してある。
次にステップS6−2で、読み出した解析結果の中から各FF間のパスを順次選択し、ステップS6−3で、選択したパスについて遅延要件(タイミング)が所定のレベルよりも厳しいか(すなわちタイミング収束性の何度が所定のレベルを超えるか)否かを判断する。たとえば、「許容遅延時間が40ピコ秒よりも短いFF間を所定のレベルよりもタイミングが厳しいパスとする」というルールがあらかじめ設定されている場合は、そのような条件を満たすパスが所定レベルよりもタイミングが厳しい(タイミング収束性の難易度が高い)パスとして判断される。図5の表によると、FF1とFF8の間のパス、FF2とFF7の間のパス、FF3とFF4の間のパス等が、遅延要件の厳しいパスであると判断される。
次に、ステップS6−4で、遅延要件が厳しいと判断されたFF間でのクロック分配の分岐が前記所定のレベル以下のパスと比較して少なくなるように設定され、ステップS6−5でこのような設定に応じてクロックツリーを作成する。
他方、ステップS6−4で遅延要件が所定レベル以下であると判断された場合は(S6−4でNO)、分岐の低減を考慮することなくステップS6−5のクロックツリーの作成に進む。すなわち、タイミングに余裕のあるパス、フォルスパスやマルチサイクルパス等については、ばらつきの影響を受けてもかまわないため、ツリー上でFF間の分岐が多くなるような配置となっても問題は生じない。そこで、これらのタイミングの緩いパスやタイミングを考慮する必要のないパスについては分岐低減処理を特に行なわない。FF1とFF2の間はタイミング制約が最も緩く、クロックのルートから分岐しても差し支えないと判断される。たとえば、図5の例では、FF1とFF2の間はタイミング制約が最も緩く、クロックのルートから分岐しても差し支えないため、特に分岐の数を考慮せずにクロックツリー作成に進むことができる。
タイミング収束性の難易度が高いパスについて分岐が最小限となるように、すべての論理パス間についてのタイミング収束性を考慮しツリー配置を決定する。
分岐を少なくする例として、ツリーのルートからFFに至るまでのツリー経路上での分岐の割合が最小限となるように配置を決定する。ツリー全体の分岐は、ツリーの規模、FFの数、タイミングの要件等によって適宜設定され得る。たとえば、ツリーのルートを0段目として、n段目まで分岐がある場合に、タイミングの最も厳しいFF間においては、ルートからこのFF間までの経路のうち分岐経路が占める割合は1/n、逆に言うと共通経路が占める割合が(n−1)/nとなるようにツリーを構成する。図2の例では、説明を簡略化するためn=3の場合を例にとっているが、通常は、nは十分に大きな値であり、一般化するとnは2以上の整数とすることができる。
図6は、図4の処理フローに基づいて作成されたクロックツリーの一例である。タイミング制約の厳しいFF1とFF8の間では、分岐は3段目に1回あるだけであり(分岐の割合が1/3)、CLKBUF0からCLKBUF1、CLKBUF2までが共通である。したがって、クロックラインのばらつきの影響はCLKBUF3とCLKBUF7のみとなる。1つのセルのばらつきが20ピコ秒、クロックスキューが0ピコ秒だとすると、20×2=40ピコ秒分タイミングが厳しくなるだけである。また、FF8をCLKBUF3の先につなげてしまえば、クロックラインのセルのばらつきの影響はまったく受けないことになる。他方、タイミング制約の緩いFF1とFF2の間では、ルートとなるCLKBUF0から分岐して分岐が3回となるが、タイミングを厳格に考える必要のないパスなので20×6=120ピコ秒のばらつきが生じても動作に影響しない。
このように、タイミング制約を考慮することにより、クロックツリー作成前の段階でクリティカルパスを認識し、タイミングの厳しい箇所に対しては極力ツリーの分岐を抑えてばらつき耐姓を持つクロックツリーを構築することが可能になる。その結果タイミングの収束性を上げばらつき耐性を向上することができる。
なお、図4のフローでは、本発明の基本的な考え方を実現するのに必要最小限の工程だけを示しているが、タイミング収束の難易度の判断基準を複数段階に分けて、ツリーの分岐の低減を段階的に行なってもよい。たとえば、図5のタイミング解析結果において、タイミングスラックが40ピコ秒以上、120ピコ秒未満のパスを、2番目にタイミング制約が厳しいレベルのパスとして判断する構成としてもよい。この場合、FF1とFF3の間のタイミングスラックは80ピコ秒であり、遅延に対して第2レベルの厳しさが要求されている。本来は、FF1−FF3間もFF1−FF8間と同様に、なるべくツリーの分岐を少なくしたいところである。しかし、FFのセル配置状況やクロックツリーのバランス上の観点から、最小限の分岐とすることが困難な場合は、2番目に分岐が少なくなるようにツリーを構成する。例えば、2番目にタイミングが厳しいFF間では、分岐経路の割合が2/n、共通経路が占める割合を(n−2)/nとなるようにツリーを構成する。この結果、FF1とFF3の間では分岐が2回となり、20×4=80ピコ秒だけタイミングのばらつきが生じる。
図7は、図1のステップS6の別の具体的な処理フロー例を示す図である。図7の手法では、タイミングスラックレポートを利用する代わりに、たとえば予め各FF間のタイミング制約の厳格さに応じて指定されるパスの種類に応じて、ツリー上での分岐が少なくなるように(すなわち共通経路の割合が多くなるように)クロックツリーを構築する。タイミング制約の厳しさの程度に応じたパスの種類は、図1のステップS2で読み込まれたタイミング制約の中に記述されているものとする。また、FFの数に応じてn段のツリーが作成されるものとする。
まず、ステップS6−11で、タイミング解析結果を読み出す。ステップS6−12で着目パスを選択し、ステップS6−13で、クリティカルパスとして指定されているか否かを判断する。クリティカルパスの場合はステップS6−14へ進み、当該着目パスを構成するFF間でツリー上の分岐が1/nとなるように設定する。
着目バスがクリティカルパスでない場合は(S6−13でNO)、ステップS6−15へ進み、着目パスが1クロックサイクル内での遅延が許容されるシングルサイクルパスであるかどうかが判断される。シングルサイクルパスである場合は、ステップS6−16に進み、分岐の割合を2/n〜1/2になるように設定する。この値はもちろん例示であって回路規模に応じて適宜選択され得ることは言うまでもない。
着目パスがシングルサイクルパスでない場合は(S6−15でNO)、タイミングを考慮する必要のないパスとして分岐を考慮しない(S6−17)。
このような判断のあと、S6−18で全てのパスについて判断がなされたか否かを判断し、全てのパスの処理が完了するまでS6−12〜S6−17の処理を繰り返す。すべてのパスについて判断がなされたら、S6−19でFF間のタイミングの厳格度あるいはタイミング収束の難易度に応じて決定された分岐の程度、すなわちこの例では分岐の割合(共通経路の割合)に基づいてクロックツリーを作成する。
この手法によっても、FF間のタイミング制約を考慮した収束性にすぐれたクロックツリーを構成することができる。
図8は、一実施形態によるレイアウト装置の機能ブロック図である。レイアウト装置10は、情報読込部11、セル配置処理部12、タイミング最適化部13、記憶領域15、タイミング制約判断部16、クロックツリー構築部17、回路最適化処理部18、信号配線処理部19を有する。
情報読込部11は、たとえば外部のデータベース(不図示)等からデザインルール、ライブラリ、ネットリスト、タイミング制約情報等を読み込む。セル配置処理部12は、読み込まれた情報に基づいてセル配置処理を行う。タイミング最適化部13は、配置処理がなされたセル配置における配線長や配線遅延量を最適化する。上述したように、この段階でのタイミング最適化はクロックツリー作成前の一般的な配線の遅延調整である。タイミング解析部14は、タイミング最適化がなされたセル配置に対してタイミング解析を行なう。タイミング解析により、どのパスの遅延要件が厳しいか、どのパスにおいて要求されるタイミングとの差が大きいか等の情報が得られる。タイミング解析結果は、記憶領域15に格納される。
タイミング制約判断部16は、記憶領域15からタイミング解析結果を読み出し、処理対象となる論理回路に含まれるすべてのFFに対して、各FF間のタイミングの厳格度あるいはタイミング収束の難易度を判断する。具体的な例として、タイミングスラックが一定期間よりも短いか否か、あるいはそのFF間のパスがクリティカルパスとして指定されているか否か、等を例にとって説明してきたが、本発明はこのような判断基準に限定されるわけではなく、たとえば、回路構成上、設計者が指定しているパスを基準にしてもよい。
クロックツリー構築部17は、すべてのFF間のタイミング判断結果に基づき、FFの配置状況やクロックツリーのバランスも考慮した上で、タイミングの厳しいFF間で分岐が最小になるようにクロックツリーを構築する。
回路最適化処理部18はクロックツリー後の回路の最適化を行なう。信号配線処理部19は、上述した処理により生成された回路の物理的な配線レイアウトを生成する。
上述したタイミング制約判断部16とクロックツリー構築部17の処理は、ソフトウエアプログラムで実現してもよい。この場合、そのようなプログラムはレイアウト装置10にインストールされて、レイアウト装置10に、(a) セル配置に対して行われたタイミング解析結果を取得する処理、(b) タイミング解析結果に基づいて、各論理回路素子間のタイミングの厳格度あるいはタイミング収束の難易度を判別する処理、及び(c) タイミングの厳格度(タイミング収束の難易度)が所定のレベルを超えるパスを構成する論理回路素子間での分岐が少なくなるようにクロックツリーを生成する処理、を実行させる。
実際の半導体集積回路の製造工程では、レイアウト装置10によって生成された配線レイアウトに基づいて、レイヤごとにマスクを作製し、マスクを用いて半導体基板上にトランジスタ、ビアコンタクト、上部配線、入出力線、各論理回路素子にクロック信号を供給するクロックツリー配線等を順次形成してウエハを製造する。ウエハをチップに切断し、チップを回路基板等に搭載してパッケージを組み立てる。
このようにして製造されたチップすなわち半導体集積回路は、複数の論理回路素子(FF)と、これらの論理回路素子にクロック信号を分配するクロックツリー配線を含む。この場合、クロックツリー配線は、各FF間におけるタイミング収束の難易度に応じてツリーが分岐する程度(割合)が決定されているので、ばらつき耐性に優れている。具体的には、図6のように、タイミング制約が厳しいFF1とFF8、FF2とFF7のような素子間では、分岐の数を極力減らして共通経路部分が多くなるように配線されている。そのため、0.18μm以降のデザインルールでも半導体集積回路のタイミング収束を向上させ、回路性能と動作の正確さを維持することが可能になる。
以上、本発明を特定の実施例に基づいて説明してきたが、タイミング制約の厳しい論理回路素子間ではツリーの分岐を極力減らすという基本的な技術思想の範囲内において、適宜変形、変更をなし得ることは明らかである。
10 レイアウト装置
11 情報読込部
12 セル配置処理部
13 タイミング最適化部
14 タイミング解析部
15 記憶領域
16 タイミング制約判断部
17 クロックツリー構築部
18 回路最適化処理部
19 信号配線処理部
特開2009−187104

Claims (7)

  1. 自動配置配線装置により、自動セル配置処理により生成された半導体集積回路に対するタイミング解析結果を取得して各論理パス間のタイミング収束の難易度を判別し、
    前記自動配置配線装置により、前記タイミング収束の難易度が所定のレベルを超える論理パスについて、当該パスを構成する論理回路素子間では前記タイミング収束の難易度が前記所定のレベル以下のパスと比較して分岐が少なくなるようにクロックツリーを生成する、
    工程を含み、
    前記タイミング解析結果は、前記論理回路素子間のパスについてのタイミング制約情報として、あらかじめ分類されたパスの種類を含み、
    前記自動配置配線装置は、前記パスの種類がクリティカルパスとして指定されている場合に、前記タイミング収束の難易度が所定のレベルを超えるパスとして判別し、
    前記パスの種類は、前記クリティカルパス、1クロックサイクル内での遅延を許容するシングルサイクルパス、2クロックサイクル以上の遅延が認められるマルチサイクルパス、及びタイミングを考慮しなくてもよいフォルスパス、を含む
    ことを特徴とする自動配置配線方法。
  2. 前記自動配置配線装置において前記タイミング収束の難易度を複数段階に設定し、
    前記複数段階のタイミング収束の難易度に応じて、前記分岐を低減する割合を異ならせる、
    ことを特徴とする請求項1に記載の自動配線配置方法。
  3. 前記タイミング制約情報は、各論理パス間のタイミングスラックであり、
    前記自動配置配線装置による前記判別は、前記タイミングスラックが所定の時間よりも短い場合に、前記タイミング収束の難易度が所定のレベルを超えるパスとして判別する、
    ことを特徴とする請求項1又は2に記載の自動配線方法。
  4. 自動配置配線処理がなされたセル配置に対してタイミング解析を行うタイミング解析部と、
    前記タイミング解析結果に基づいて、各論理回路素子間のタイミング収束の難易度を判別するタイミング制約判断部と、
    前記タイミング収束の難易度が所定のレベルを超えるパスについて、当該パスを構成する論理回路素子間での分岐が前記所定のレベル以下のパスと比較して少なくなるようにクロックツリーを生成するクロックツリー構築部と、
    を有し、
    前記タイミング解析部は、前記論理回路素子間のパスについてのタイミング制約情報として、あらかじめ分類されたパスの種類を出力し、
    前記タイミング判断部は、前記パスの種類がクリティカルパスとして指定されている場合に、前記タイミング収束の難易度が所定のレベルを超えるパスとして判断し、
    前記クロックツリー構築部は、前記クリティカルパスを構成する前記論理回路素子間での前記分岐が他のパスと比較して少なくなるように前記クロックツリーを生成し、
    前記パスの種類は、前記クリティカルパス、1クロックサイクル内での遅延を許容するシングルサイクルパス、2クロックサイクル以上の遅延が認められるマルチサイクルパス、及びタイミングを考慮しなくてもよいフォルスパス、を含む
    ことを特徴とするレイアウト装置。
  5. 前記タイミング制約判断部は、複数段階に設定された前記タイミング収束の難易度に応じて、前記各論理回路素子間のタイミング収束の難易度を判別し、
    前記クロックツリー構築部は、前記複数段階のタイミング収束の難易度に応じて、前記分岐を低減する割合を異ならせて前記クロックツリーを生成する
    ことを特徴とする請求項4に記載のレイアウト装置。
  6. 前記タイミング解析部は、前記タイミング制約情報として前記各論理回路素子間のタイミングスラックを出力し、
    前記タイミング制約判断部は、前記タイミングスラックが所定の時間よりも短い場合に前記タイミング収束の難易度が所定のレベルを超えるパスとして判断し、
    前記クロックツリー構築部は、前記タイミングスラックが所定の時間よりも短い前記論理回路素子間において、前記分岐が低減されるように前記クロックツリーを生成する、
    ことを特徴とする請求項4又は5に記載のレイアウト装置。
  7. レイアウト装置にインストールされて前記レイアウト装置に以下の処理を実行させるコンピュータ読み取り可能な自動配置配線プログラム:
    前記レイアウト装置で生成処理されたセル配置に対するタイミング解析結果を取得する処理;
    前記タイミング解析結果に基づいて、各論理回路素子間のタイミング収束の難易度を判別する処理;および
    前記タイミング収束の難易度が所定のレベルを超えるパスを構成する論理回路素子間での分岐が前記所定のレベル以上のパスと比較して少なくなるようにクロックツリーを生成する処理、であって、
    前記タイミング解析結果を取得する処理は、前記論理回路素子間のパスについてのタイミング制約情報として、あらかじめ分類されたパスの種類を取得し、
    前記判別する処理は、前記パスの種類がクリティカルパスとして指定されている場合に、前記タイミング収束の難易度が所定のレベルを超えるパスとして判別し、
    前記パスの種類は、前記クリティカルパス、1クロックサイクル内での遅延を許容するシングルサイクルパス、2クロックサイクル以上の遅延が認められるマルチサイクルパス、及びタイミングを考慮しなくてもよいフォルスパス、を含む
    自動配置配線プログラム。
JP2010206132A 2010-09-14 2010-09-14 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路 Expired - Fee Related JP5696407B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010206132A JP5696407B2 (ja) 2010-09-14 2010-09-14 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010206132A JP5696407B2 (ja) 2010-09-14 2010-09-14 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路

Publications (2)

Publication Number Publication Date
JP2012063886A JP2012063886A (ja) 2012-03-29
JP5696407B2 true JP5696407B2 (ja) 2015-04-08

Family

ID=46059552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010206132A Expired - Fee Related JP5696407B2 (ja) 2010-09-14 2010-09-14 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路

Country Status (1)

Country Link
JP (1) JP5696407B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9053281B2 (en) * 2013-03-21 2015-06-09 Synopsys, Inc. Dual-structure clock tree synthesis (CTS)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107206A (ja) * 2004-10-06 2006-04-20 Matsushita Electric Ind Co Ltd 半導体集積回路設計方法
JP4602909B2 (ja) * 2006-01-10 2010-12-22 富士通セミコンダクター株式会社 半導体集積回路のクロックツリー形成方法およびプログラム。
JP4644142B2 (ja) * 2006-02-24 2011-03-02 富士通セミコンダクター株式会社 クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。
JP5041882B2 (ja) * 2007-06-07 2012-10-03 ルネサスエレクトロニクス株式会社 半導体集積回路の設計方法及び設計支援装置
JP4425300B2 (ja) * 2007-08-02 2010-03-03 シャープ株式会社 半導体集積回路装置の設計プログラム、および、記録媒体
JP4938696B2 (ja) * 2008-01-24 2012-05-23 ソニー株式会社 半導体装置の設計プログラムおよび半導体装置の設計システム
JP2010211302A (ja) * 2009-03-06 2010-09-24 Toshiba Corp クロック配線方法

Also Published As

Publication number Publication date
JP2012063886A (ja) 2012-03-29

Similar Documents

Publication Publication Date Title
US7809971B2 (en) Clock distribution circuit, semiconductor integrated circuit and method of designing clock distribution circuit
US8789004B2 (en) Automatic flow of megacell generation
US6857107B2 (en) LSI layout method and apparatus for cell arrangement in which timing is prioritized
JP2009038072A (ja) 半導体集積回路及びその開発方法
Lee et al. Contango: Integrated optimization of SoC clock networks
US20080129362A1 (en) Semiconductor device and method of designing semiconductor device
US6609241B2 (en) Method of designing clock wiring
US20070079273A1 (en) Method and computer program for incremental placement and routing with nested shells
CN113792520A (zh) 布局布线方法、装置、同步电路以及集成电路芯片
US5963730A (en) Method for automating top-down design processing for the design of LSI functions and LSI mask layouts
US7791381B2 (en) Semiconductor integrated circuit
US7730431B2 (en) Design method, design apparatus, and computer program for semiconductor integrated circuit
US8595668B1 (en) Circuits and methods for efficient clock and data delay configuration for faster timing closure
JP5444985B2 (ja) 情報処理装置
JP5696407B2 (ja) 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路
US7071754B2 (en) Semiconductor integrated circuit and manufacturing method
US6938232B2 (en) Floorplanning apparatus deciding floor plan using logic seeds associated with hierarchical blocks
US8972919B2 (en) Static timing analysis method and system considering capacitive coupling and double patterning mask misalignment
WO2010101029A1 (ja) 半導体集積回路設計装置、半導体集積回路設計方法、及び半導体集積回路設計プログラム
JP2011108803A (ja) 半導体集積回路のレイアウト設計方法、半導体集積回路
US20080141207A1 (en) Wiring Design System of Semiconductor Integrated Circuit, Semiconductor Integrated Circuit, and Wiring Design Program
US6292043B1 (en) Semiconductor integrated circuit device
JP4659659B2 (ja) Lsi機能モジュール配置装置、lsi機能モジュール配置方法およびプログラム
JP2008242918A (ja) 半導体集積回路の設計装置
JP2006107206A (ja) 半導体集積回路設計方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150126

R151 Written notification of patent or utility model registration

Ref document number: 5696407

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees