JP2007226686A - クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。 - Google Patents

クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。 Download PDF

Info

Publication number
JP2007226686A
JP2007226686A JP2006049347A JP2006049347A JP2007226686A JP 2007226686 A JP2007226686 A JP 2007226686A JP 2006049347 A JP2006049347 A JP 2006049347A JP 2006049347 A JP2006049347 A JP 2006049347A JP 2007226686 A JP2007226686 A JP 2007226686A
Authority
JP
Japan
Prior art keywords
path
paths
evaluation value
integrated circuit
critical path
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.)
Granted
Application number
JP2006049347A
Other languages
English (en)
Other versions
JP4644142B2 (ja
Inventor
Keisuke Hotta
圭祐 堀田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006049347A priority Critical patent/JP4644142B2/ja
Priority to US11/468,900 priority patent/US7493580B2/en
Publication of JP2007226686A publication Critical patent/JP2007226686A/ja
Application granted granted Critical
Publication of JP4644142B2 publication Critical patent/JP4644142B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3315Design verification, e.g. functional simulation or model checking using static timing analysis [STA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/3312Timing analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】パスの遅延を示すパス評価値を用いてクリティカルパスを推定し、SDC自動生成ツールの抽出したパスのうちで、評価値の大きいパスだけを例外パスとしたレイアウトを可能とする。
【解決手段】本発明のプログラムは、集積回路に対する論理記述と、評価の対象としての複数のパスとの入力をメモリから受け取る手順と、入力された各パスに対してパスの遅延を表すパス評価値を求める手順と、評価値の大きいパスをクリティカルパスとして推定する手順とを計算機に実行させる。
【選択図】図1

Description

本発明はシステムLSIなどの大規模集積回路の設計方式に係り、さらに詳しくは静的タイミング解析において、集積回路内のすべての任意の2つの記憶素子の間のパスを対象としてタイミング解析を行う代わりに、実際の回路の動作において使用される可能性がない例外パスのうちで、タイミング条件が厳しいクリティカルパスと推定される例外パスだけをタイミング解析の対象パスから除外して、レイアウト処理を効率化するためのクリティカルパス推定方式に関する。
一般に集積回路、例えばシステムLSIの設計においては、まずシステム仕様から機能設計として、例えばC言語による動作記述が得られ、例えばレジスタ・トランスファー・レベル(RTL)記述を介して、論理レベルの記述としての、例えばネットリストを作成するボトムアップ型手法の論理合成が行われ、その後配置配線の決定としてのレイアウト設計処理が行われる。
このレイアウト設計処理においては、実配線負荷に対応して、LSIの内部の任意の2つの記憶素子の間のパスのすべてを対象としてタイミング検証を行う静的タイミング解析(スタティック・タイミング・アナリシス、STA)が行われる。このSTAにおいては、LSI内の任意の2つの記憶素子の間のパスをすべて対象とするタイミング検証が行われるが、それらのパスのうちで回路内で実際に使用される可能性のない例外パスに対してもタイミング検証が行われるために、LSIの回路規模が大きくなるにしたがってその処理量は膨大となる。
タイミング検証に関する各種設定条件データの1つのファイル形式として、シノプシス・デザイン・コンストレイント(SDC)が一般的に普及している。近年LSI設計のターン・アラウンド・タイム(TAT)の短縮のために、レイアウト用のSDC、特にLSIの内部の例外パスを自動的に抽出するツールが利用されるようになっている。しかしながらこのようなSDC自動生成ツールによって抽出される例外パスの数は、回路規模の増大に伴って膨大なものとなる傾向がある。
本来、このようなツールによって抽出された例外パスをタイミング検証の対象から除外してレイアウト処理を行うことができれば、レイアウト処理の効率が大きく向上するが、回路規模が大きい場合には例外パスのデータを格納するメモリ量そのものさえ用意することができなくなるという問題点と、メモリに格納されたとしても膨大な数の例外パスをタイミング検証の検証から除外するための処理量が膨大となり、SDC自動生成ツールの抽出結果を有効に利用することができないという問題点があった。そこで従来においては、このようなツールを用いて例外パスを自動抽出したとしても、レイアウト処理に対応するSTAにおけるクリティカルパスの評価において、SDC自動生成ツールの抽出結果を比較材料として用いることができるだけであり、レイアウト処理の効率化にあまり役に立たないという問題点があった。
またSDCを利用するための従来技術として、レイアウトの前に、仮配線負荷、例えばワイヤ・ロード・モデル(WLM)に基づいてSTAを実行してSDCを作成していく方法もあるが、この方法では設計処理手順が増えるという問題点があった。
このようなLSI内部のクリティカルパスを抽出する従来技術としての特許文献1では、LSIの初期設計工程において、GUIによって対話的に指定されるシミュレーション実行範囲を対象としてクリティカルパスを抽出する、ゲートレベルシミュレーションを前提とした技術が開示されている。しかしながらこの従来技術を用いても、例えばSDC自動生成ツールによって抽出されたパスのすべてを例外パスとして取り扱うことがレイアウト処理の効率化を妨げるという問題点を解決することはできなかった。
特開平6−215061号公報
本発明の課題は、上述の問題点に鑑み、集積回路に対応する論理記述に基づいて、集積回路内の2つの記憶素子の間のパスに対する遅延を示すパスの評価値を算出し、その評価値の大きいパスをクリティカルパスとして推定可能にすることであり、また例えばSDC自動生成ツールによって抽出されたパスのうちで、パス評価値の大きいパスだけを例外パスとしてレイアウト処理に利用することによって、レイアウト処理を効率化することである。
図1は、本発明のクリティカルパス推定プログラムの原理的な機能ブロック図である。同図は、集積回路内のパスとして与えられるパス、例えば例外パスのうちのクリティカルパスを推定する計算機によって使用されるプログラムである。
図1において、まず1で集積回路に対する論理記述と、与えられる複数のパスとの入力をメモリから受け取る手順が、2で与えられる複数のパスのそれぞれに対してパスの遅延を表すパス評価値を求める手順が、そして3でその評価値によってパスの優先順位づけを行い、評価値の大きいパスをクリティカルパスとして推定する手順が、計算機によって実行される。
また本発明の集積回路設計プログラムは、図1にその原理を示したクリティカルパス推定プログラムを用いるものであり、前述の与えられる複数のパスとして、集積回路内の例外パスとして抽出されたパスを与える手順と、抽出された例外パスのうちで前述のクリティカルパスとして推定されたパスだけを例外パスとして取り扱い、集積回路のレイアウトを行う手順とをさらに計算機に実行させるものである。
さらに本発明のクリティカルパス推定装置は、集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する装置であり、集積回路に対する論理記述と、与えられる複数のパスとの入力とをメモリから受け取る入力手段と、与えられる複数のパスのそれぞれに対して、パスの遅延を表すパス評価値を求める評価値算出手段と、その評価値によってパスを優先順位づけ、評価値の大きいパスをクリティカルパスとして推定する優先順位づけ処理手段とを備える。以上のように本発明においては、与えられる複数のパス、例えばSDC自動生成ツールによって抽出された集積回路内の例外バスのうちで、パスの遅延を表す評価値の大きいパスだけがクリティカルパスとして推定される。
本発明によれば、例えばSDC自動生成ツールによって抽出された膨大な数の例外バスのうちで、遅延を表すパス評価値の大きいパスだけをクリティカルパスとして推定することが可能となり、例えばレイアウト処理に利用すべき例外パスの効果的な絞込みが可能となる。
図2は、本発明のクリティカルパス推定方式を実行するためのクリティカルパス推定装置の基本構成ブロック図である。同図において、クリティカルパス推定装置10に対しては、設計されるべきシステムLSIに対応する論理記述とライブラリとのデータ、およびSDC(シノプシス・デザイン・コンストレイント)自動生成ツールによって抽出された例外設定パス情報が入力され、クリティカルパス推定装置10からはSDC自動生成ツールによって抽出された例外パスのうちで、スタティック・タイミング・アナリシス(STA)におけるタイミング解析の対象として残すクリティカルパス候補が出力される。この候補はタイミングが厳しいパスから優先順位づけされて絞り込まれることによって、SDC自動生成ツールによって自動抽出された例外パスのうちでタイミングの収束が容易で比較的処理が簡単な例外パスはレイアウト処理やSTAにおいて例外パスとして扱わず、タイミング解析における対象パスとして扱うことにより、SDC自動生成ツールによって抽出された膨大なパスからタイミングの厳しいクリティカルパス候補だけを例外パスとして絞り込み、レイアウトやSTAで取り扱いが可能となる。
図2においてクリティカルパス推定装置10は、論理記述やライブラリのデータ、および例外設定パス情報などの入力を受け取る入力部11、これらの入力データに基づいて論理構造と例外設定パスの整合性を確認し、整合性が確認された例外設定パス情報を格納するテーブルを作成する例外設定パス情報テーブル作成部12、そのテーブルに格納された例外設定パス情報に対応するパスの遅延を示す評価値を求めるパス評価値算出部13、例外設定パス情報テーブルに格納された例外パスに対するパス評価値が算出されたのちに、パス評価値の大きいものから例外パスに対する優先順位をつけ、優先順位づけされた例外パスデータのうちで優先順位の高い例外パスをクリティカルパス候補として出力する優先順位づけ処理部14とを備えている。
図3は、本実施形態におけるLSI設計処理の全体フローチャートである。同図において処理が開始されると、まずステップS11で論理合成処理が行われる。例えばネットリストが出力され、そしてステップS12で例外設定パス抽出のためのSDC自動生成処理が行われる。前述のように、このSDC自動生成ツールによる例外設定パス抽出処理では、自動抽出される例外パスの数が一般に非常に多く、自動抽出された例外設定パスをそのままレイアウト処理に利用することができなかった。
このため本発明においては、SDC自動生成ツールによって抽出された例外パスのうちでタイミングが厳しいクリティカルパス候補の抽出がステップS13のクリティカルパス候補抽出処理によって行われ、その後行われるステップS14におけるレイアウト処理、ステップS15における静的タイミング解析(STA)処理においてクリティカルパス候補だけが例外パスとして扱われることによって、SDC自動生成ツールによって抽出された例外パスの抽出結果の一部だけを利用することが可能となり、レイアウト処理の収束が早くなる。
図4は、図3のステップS13におけるクリティカルパス候補抽出処理の詳細フローチャートである。同図において処理が開始されると、まずステップS21で設計すべきシステムLSIに対する論理記述として、例えばネットリストがメモリ15から読み込まれる。この論理記述としては、例えばRTL(レジスタ・トランスファー・レベル)記述のものでもよく、あるいはC言語で記述されたものでもよいことは当然である。
続いてステップS22で例外設定パス情報、すなわちSDC自動生成ツールによって抽出された例外パスの情報が読み込まれ、ステップS23で例外パスと論理構造の間の整合性の確認が行われ、例えば論理構造上あり得ない例外パスは排除され、ステップS14で整合性の確認された例外設定パスのデータが格納された例外設定パス情報テーブルがメモリ内に作成される。
続いてステップS25からS29でSDC自動生成ツールによって抽出され、論理構造との整合性が確認された例外パス、一般には非常に多数の例外パスを対象として、そのパスのタイミングを評価し、タイミングの厳しい順序から優先づけを行うために評価値の計算が行われる。本実施形態では、この評価値としてはパスの内部に含まれるゲートの段数を基本として、配線やファンアウトの数などを含めて評価する、配線考慮論理段数評価値を用いるものとする。
まずステップS25で判定対象としての例外パスが1つ取り出され、ステップS26でその例外パスの論理構造が解析され、ステップS27で対象パスの配線考慮論理段数評価値の計算が行われ、ステップS28で評価値がステップS24でメモリ15内に作成された例外設定パス情報テーブル内の対象パスに対して書き込まれ、ステップS29で例外設定パスに対する処理がすべて終了したか否かが判定され、まだ終了していない場合にはステップS25以降の処理が例外設定パス情報テーブルに格納されたすべての例外パスに対して繰り返され、すべての例外パスに対する処理が終了すると、ステップS30で例外パスが配線考慮論理段数評価値の大きい順にソートされ、例外設定パスの優先順位づけ結果が得られる。これによってレイアウトツールの能力にもよるが、優先順位の高い例外パスだけを例外パスとして扱ってレイアウト処理が行われる。
図5は、SDC(シノプシス・デザイン・コンストレイント)の例である。false pathやmulticycle pathといった例外設定が図3のステップS12でSDC自動生成ツールによって抽出される。タイミング解析、例えばスタティック・タイミング・アナリシスでは、LSIの内部のある記憶素子、例えばフリップフロップから異なる記憶素子、例えばランダム・アクセス・メモリまでのパスが、LSI内部のすべての記憶素子に対してすべて抽出され、タイミングの解析が行われる。このタイミング解析ではクロックの周波数や波形の設定が行われ、次いでケース・アナリシスとして、例えば内部のセレクタに対するモード設定、すなわち入力端子の選択の指定などが行われる。
また例えばチップの外部の記憶素子からチップ内のパスを経てチップの外部の記憶素子に至るまでの遅延を問題とするものとして、外部の記憶素子からチップの入力ポートまでの入力遅延、およびチップの出力ポートから外部の記憶素子までの出力遅延の値が設定され、これらの設定結果に対して例外パス(false pathやmulticycle path)が抽出されることになる。
続いてSDC自動生成ツールによって抽出され、論理構造との整合性が確認された例外パスに対する評価値の計算について、図6から図10を用いて説明する。前述のようにこの評価値としては、パス内に含まれるゲートの段数を基本とするが、サブ100nm時代を迎え、LSIプロセスがさらに微細化する中で、ゲートそのものの遅延よりも、例えばゲート間の配線の遅延の考慮が必要となるため、例えば論理モジュール間の配線による遅延も評価するために、まずゲートの段数と配線の遅延に対応する配線考慮論理段数評価値について説明する。
図6は、チップ上のゲートやモジュールの配置例である。チップ20の上に縦長の長方形で示されるゲートやフリップフロップなどが配置され、その間に配線がなされるが、ゲートのうちで点線によって囲まれた論理モジュール21の間の配線による遅延と、一般に複数の論理モジュールを含む物理階層22の間の配線による遅延を含む形式で配線考慮論理段数評価値として求めるものとする。ここで物理階層22とは、設計ツールの処理能力にもよるが、1回の処理で自動レイアウトが可能な規模の階層であり、複雑なシステムLSIにおいてはチップ20の上に複数の物理階層が配置されて最終的にレイアウトが行われる。また論理モジュールとは、物理階層の自動レイアウトにおいて物理階層上で近い距離内にかたまって配置されるものである。そこで論理モジュール間配線24よりも、物理階層間配線25による遅延のほうが一般的に大きくなるが、本実施形態ではこの両者の配線による遅延を評価値の計算において考慮するものとする。
図7は、図6のチップ20上のパスを横方向に展開したものであり、パスを構成する論理素子は、基本ゲートに換算されてその段数の評価が行われるものとする。すなわち、図7は図6のチップ20上で最も左上の長方形に対応するFF31から、その下方向にある長方形に相当するFF32までのパスを展開したものである。
図7において2つのFF31と32の間のパスには基本ゲート換算で33〜43の11個のゲートが含まれており、パス内のゲートに対する論理段数は11である。論理モジュール間配線は論理モジュール21と21との間の24一本だけであるが、例えばゲート39と論理モジュール21との間の配線による遅延なども無視することはできない。また物理階層間配線としては、図7ではゲート37と38の間の配線25、ゲート42と43との間の配線25が示されているが、例えばFF31と物理階層22との間の配線、すなわちFF31とゲート33との間の配線による遅延も無視することはできない。まず本実施形態では説明を容易にするため論理モジュール間配線の数はパスに含まれる論理モジュールの数と一致するものとし、また物理階層間配線の数もパスに含まれる物理階層の数に一致するものとして、配線考慮論理段数評価値を求めるものとする。
本実施形態において、配線考慮論理段数評価値は基本的に次式によって計算されるものとする。
(論理モジュール間配線数M×係数Km)+(物理階層間配線数N×係数Kn)+基本論理ゲート段数Gate Num ・・・・(1)
ここで論理モジュール間配線に対する係数Kmは論理モジュール間配線による遅延に相当する。Knは物理階層間配線による遅延の論理段数換算における係数であり、Gate Numはパスに含まれる基本ゲートの数である。例えばKmの値を1.2、Knの値を2.8とすると、図7のFF31からFF32までのパスには物理階層が2個、論理モジュールが3個、基本ゲートが11個含まれるために、配線考慮論理段数評価値は20.2となる。
本実施例は論理module、 物理階層の数とそれらの間の配線の数が同一であるという簡易な評価式の説明であるが同様の考え方で FFや各ゲートの物理/module階層Levelを考慮し全てのGate間の配線を論理構造から詳細に評価式で導き出す事は可能である。
図8から図10は、パスに含まれるゲートのファンアウトの数と、そのファンアウト先の位置を考慮した配線考慮論理段数評価値の計算法の説明図である。まず図8においてはゲート33のファンアウト先としてゲート34だけでなく、ゲート45とゲート46とが追加されている。またゲート40のファンアウト先としてゲート41だけでなく、ゲート47、48、および49が追加されている。ゲート33のファンアウトの数をfa(=3)、ゲート40のファンアウト数をfb(=4)とすると、これらのファンアウト数を考慮した配線考慮論理段数評価値は次式の値を(1)式に加算して求められるものとする。
Kfo(fa+fb+・・・) ・・・・ (2)
ここでKfoはファンアウトの数による配線遅延分の論理段数換算係数であり、その値を例えば0.7とすると、図8に対する配線考慮論理段数評価値の値は25.1となる。
図9、図10は、ファンアウト先のゲートが同一の論理モジュールの中に無い場合の評価値の計算方法の説明図である。図9においてはゲート33のファンアウト先のうち、ゲート46が他の論理モジュールの中に存在する場合である。このようにファンアウト先が論理モジュール間にまたがる場合には、モジュール間ファンアウトに対する係数をKfomとし、その値を例えば1.1とすると、ゲート33のファンアウトに対する配線考慮論理段数評価値は、図8では0.7×3=2.1であったのに対して、図9では2×0.7+1.1=2.5となる。
図10は、ゲート33のファンアウト先としてのゲート46が異なる物理階層内に存在する場合である。このように物理層間ファンアウトに対する係数をKfobとし、その値を2.2とすると、ゲート33のファンアウトに対する論理段数評価値は2×0.7+2.2=3.6となる。
本実施形態においては、配線考慮論理段数評価値の評価に、さらに論理モジュールや物理階層の面積や、クロックの周波数に関する考慮も含めるものとする。図11、および図12は論理モジュールや物理階層の面積の評価値への反映法の説明図である。図11は、基本ゲート1段当たりの遅延の説明図である。例えば図7においてはゲートの遅延に対する評価値としてゲートの数そのものを用いたが、厳密には1段のゲートの遅延としてはゲートそのものの遅延と、ゲートとゲートの間を接続する配線の遅延とを考慮する必要がある。図7の説明では、このゲート遅延と配線遅延とを含めて、各ゲートに対してその遅延が一定であるものとて、ゲートの数で評価値を求めているものと考えることができる。
図12は、例えば物理階層の面積の説明図である。ここでは3つの物理階層A、B、およびCが示され、面積がA、B、Cの順に大きくなるものとする。物理階層の面積が大きくなれば、当然その中に含まれるゲートの数も多くなり、ゲートとゲートの間の配線の長さは、面積が小さい物理階層内とほぼ同じになるものもあると考えられるが、平均的にはその配線の長さは長くなり、1段当たりの配線遅延の平均値は面積に比例して大きくなると考えられる。
ここで基本的なゲートそのもの1段のゲート遅延と、ゲート間の平均的な配線遅延の値が一致する面積が物理階層Bの面積であるときには、その面積を基準として他の物理階層に対する評価値を求めることができる。例えば階層Bの面積が2500μm、階層Cの面積が4000μmとすると、面積の比は1.6となり、例えば簡単のために物理階層C内のゲートに対しては、前述の(1)式におけるGate Numの値に1.6倍したものをその階層内の基本ゲートの論理段数に相当する値として用いることができる。ここでは物理階層を例として面積の相違の評価値への反映について説明したが、論理モジュールの面積に対しても同様に考えることができる。
図13は、クロック周波数の相違の評価値への反映方法の説明図であり、同図(a)では200MHz、(b)では100MHzの周波数のクロックが用いられているものとする。例えば図7と同様に2つのFF31と32との間でデータ転送を行うものとし、FF31がデータを取り込んでから1クロック後にFF32がそのデータを取り込まなければならないものとすると、(a)では5ns、(b)では10ns内でのFF間のデータ転送が要求される。
そこで(b)では(a)に対してデータ転送のタイミングとして2倍の余裕があることになる。本実施形態では設計対象LSIの中で用いられているクロック周波数の最も高い値を基準として、配線考慮論理段数評価値にクロック周波数の相違を反映するものとする。このため(b)の2つのFF31と32の間のパス全体に対する配線考慮論理段数評価値は、(a)に対して計算された評価値の半分となる。
例外パスの優先順位づけについて図14、図15を用いて説明する。図14は、LSIのチップ20上のパスのうちで、例外パスとしてSDC自動生成ツールによって抽出された2つのパス1とパス2を示している。ここでパス1とパス2とはまったく独立となっているが、一般にSTAにおいては、LSI上の任意の2つの記憶素子の組み合わせがすべてタイミング解析の対象として取られ、その間のパスに対してタイミングの検証が行われるために、パス1とパス2に対する配線考慮論理段数評価値の大きいほうが本実施形態においてクリティカルパス候補として抽出されることになる。
図15は、図14のパス1とパス2の構成である。ここでパス1とパス2とは、それぞれ2つのFFの間でのデータ転送経路を示すが、(1)式を用いて図7に対すると同様にそれぞれ配線考慮論理段数評価値を求めると、パス1に対する評価値は20.2、パス2に対する評価値は4.2となり、クリティカルパス候補としての優先順位はパス1の方がパス2より高くなる。
以上において本発明のクリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラムについてその詳細を説明したが、このクリティカルパス推定装置は当然一般的なコンピュータシステムを基本として構成することが可能である。図16はそのようなコンピュータシステム、すなわちハードウェア環境の構成ブロック図である。
図16においてコンピュータシステムは中央処理装置(CPU)60、リード・オンリ・メモリ(ROM)61、ランダム・アクセス・メモリ(RAM)62、通信インターフェース63、記憶装置64、入出力装置65、可搬型記憶媒体の読取り装置66、およびこれらの全てが接続されたバス67によって構成されている。
記憶装置64としてはハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、このような記憶装置64、またはROM61に図3、図4のフローチャートに示されたプログラムや、本発明の特許請求の範囲の請求項1〜3のプログラムなどが格納され、そのようなプログラムがCPU60によって実行されることにより、本実施形態におけるクリティカルパスの推定、推定されたクリティカルパスだけを例外パスとして用いたレイアウト設計などが可能となる。
このようなプログラムは、プログラム提供者68からネットワーク69、および通信インターフェース63を介して、例えば記憶装置64に格納されることも、また市販され、流通している可搬型記憶媒体70に格納され、読取り装置66にセットされて、CPU60によって実行されることも可能である。可搬型記憶媒体70としてはCD−ROM、フレキシブルディスク、光ディスク、光磁気ディスク、DVDなど様々な形式の記憶媒体を使用することができ、このような記憶媒体に格納されたプログラムが読取り装置66によって読取られることにより、本実施形態におけるクリティカルパス推定などが可能となる。
以上のように本実施形態によれば、SDC自動生成ツールによって抽出された膨大な数の例外パスのうちで、論理構造との整合性が確認された例外パスを対象として配線考慮論理段数評価値を求め、その評価値に対応して評価値の大きいものだけをレイアウト処理における例外パスとして取り扱うことによって、レイアウト処理の処理効率を向上させることが可能となる。
配線考慮論理段数評価値としては、パス内の基本ゲート換算の論理段数、論理モジュール間配線、物理階層間配線に対応して評価値をもとめることを基準としながらも、パス内のゲートのファンアウトの数、ファンアウト先の位置、論理モジュールや物理階層の面積、およびクロック周波数などを考慮することによって、SDC自動生成ツールによって抽出された例外設定パスに対する評価値に対するきめ細かい優先順位づけを行うことができ、レイアウト処理に使用可能なように例外パスの数を絞り込むことができ、SDC自動生成ツールの抽出結果を用いたレイアウト処理の効率向上に寄与するところが大きい。
(付記1) 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する計算機によって使用されるプログラムであって、
前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取る手順と、
該与えられるパスのそれぞれに対して、パスの遅延を表すパス評価値を求める手順と、
該評価値によってパスの優先順位づけを行い、該評価値の大きいパスを前記クリティカルパスとして推定する手順とを計算機に実行させることを特徴とするクリティカルパス推定プログラム。
(付記2) 前記パス評価値を求める手順において、
前記パス内の基本ゲートの段数と、前記集積回路内で近接して配置される複数の基本ゲートから構成される論理モジュールに対する配線とを、前記パスの遅延要因として評価値を求めることを特徴とする付記1記載のクリティカルパス推定プログラム。
(付記3) 前記パス評価値を求める手順において、
前記パスが経由し、1回の処理で自動レイアウト設計が可能な規模としての物理階層に対する配線を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記2記載のクリティカルパス推定プログラム。
(付記4) 前記パス評価値を求める手順において、
前記パスが経由する前記物理階層の面積を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記3記載のクリティカルパス推定プログラム。
(付記5) 前記パス評価値を求める手順において、
前記パス内に含まれるゲートのファンアウトの数を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記2記載のクリティカルパス推定プログラム。
(付記6) 前記パス評価値を求める手順において、
前記パス内に含まれるゲートのファンアウト先のゲートの位置を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記2記載の集積回路設計プログラム。
(付記7) 前記パス評価値を求める手順において、
前記パスが含まれる前記論理モジュールの面積を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記2記載のクリティカルパス推定プログラム。
(付記8) 前記パス評価値を求める手順において、
前記パスに対応するクロック信号の周波数を、さらに前記パスの遅延要因として評価値を求めることを特徴とする付記2記載のクリティカルパス推定プログラム。
(付記9) 付記1に記載のクリティカルパス推定プログラムを用いる集積回路設計プログラムであって、
前記与えられる複数のパスとして、前記集積回路内の例外パスとして抽出されたパスを与える手順と、
該抽出された例外パスのうちで、前記クリティカルパスとして推定されたパスだけを例外パスとして取り扱い、前記集積回路のレイアウトを行う手順とを計算機に実行させることを特徴とする集積回路設計プログラム。
(付記10) 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する装置であって、
前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取る入力手段と、
該与えられる複数のパスのそれぞれに対してパスの遅延を表すパス評価値を求める評価値算出手段と、
該評価値によってパスの優先順位づけを行い、評価値の大きいパスを前記クリティカルパスとして推定する優先順位づけ処理手段とを備えることを特徴とするクリティカルパス推定装置。
(付記11) 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する方法であって、
前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取り、
該与えられるパスのそれぞれに対して、パスの遅延を表すパス評価値を求め、
該評価値によってパスの優先順位づけを行い、該評価値の大きいパスを前記クリティカルパスとして推定することを特徴とするクリティカルパス推定方法。
本発明のクリティカルパス推定プログラムの原理的な機能ブロック図である。 クリティカルパス推定装置の基本的な構成ブロック図である。 システムLSI設計処理の全体フローチャートである。 クリティカルパス候補抽出処理の詳細フローチャートである。 SDC自動生成ツールの抽出結果の例である。 LSI上の物理階層と論理モジュールの説明図である。 LSI上の2つの記憶素子の間のパスの例である。 配線考慮論理段数評価値におけるファンアウト数の考慮の説明図である。 配線考慮論理段数評価におけるファンアウト先のゲートの位置の考慮の説明図(その1)である。 配線考慮論理段数評価におけるファンアウト先のゲートの位置の考慮の説明図(その2)である。 1段の基本ゲートに対するゲート遅延と配線遅延の説明図である。 配線考慮論理段数評価における物理階層面積の考慮の説明図である。 配線考慮論理段数評価におけるクロック周波数の考慮の説明図である。 LSI上の2つの例外パスの例である。 図14の2つの例外パスの詳細を示す図である。 本実施形態におけるプログラムのコンピュータへのローディングを説明する図である。
符号の説明
10 クリティカルパス推定装置
11 入力部
12 例外設定パス情報テーブル作成部
13 パス評価値算出部
14 優先順位づけ処理部
15 メモリ
20 チップ
21 論理モジュール
22 物理階層
24 論理モジュール間配線
25 物理階層間配線
31、32 フリップフロップ
33〜43、45〜49 基本ゲート
60 中央処理装置(CPU)
61 リード・オンリ・メモリ(ROM)
62 ランダム・アクセス・メモリ(RAM)
63 通信インターフェース
64 記憶装置
65 入出力装置
66 読み取り装置
67 バス
68 プログラム提供者
69 ネットワーク
70 可搬型記憶媒体

Claims (5)

  1. 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する計算機によって使用されるプログラムであって、
    前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取る手順と、
    該与えられるパスのそれぞれに対して、パスの遅延を表すパス評価値を求める手順と、
    該評価値によってパスの優先順位づけを行い、該評価値の大きいパスを前記クリティカルパスとして推定する手順とを計算機に実行させることを特徴とするクリティカルパス推定プログラム。
  2. 前記パス評価値を求める手順において、
    前記パス内の基本ゲートの段数と、前記集積回路内で近接して配置される複数の基本ゲートから構成される論理モジュールに対する配線とを、前記パスの遅延要因として評価値を求めることを特徴とする請求項1記載のクリティカルパス推定プログラム。
  3. 請求項1に記載のクリティカルパス推定プログラムを用いる集積回路設計プログラムであって、
    前記与えられる複数のパスとして、前記集積回路内の例外パスとして抽出されたパスを与える手順と、
    該抽出された例外パスのうちで、前記クリティカルパスとして推定されたパスだけを例外パスとして取り扱い、前記集積回路のレイアウトを行う手順とを計算機に実行させることを特徴とする集積回路設計プログラム。
  4. 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する装置であって、
    前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取る入力手段と、
    該与えられる複数のパスのそれぞれに対してパスの遅延を表すパス評価値を求める評価値算出手段と、
    該評価値によってパスの優先順位づけを行い、評価値の大きいパスを前記クリティカルパスとして推定する優先順位づけ処理手段とを備えることを特徴とするクリティカルパス推定装置。
  5. 集積回路内のパスとして与えられる複数のパスのうちのクリティカルパスを推定する方法であって、
    前記集積回路に対する論理記述と、前記与えられる複数のパスとの入力をメモリから受け取り、
    該与えられるパスのそれぞれに対して、パスの遅延を表すパス評価値を求め、
    該評価値によってパスの優先順位づけを行い、該評価値の大きいパスを前記クリティカルパスとして推定することを特徴とするクリティカルパス推定方法。
JP2006049347A 2006-02-24 2006-02-24 クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。 Expired - Fee Related JP4644142B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006049347A JP4644142B2 (ja) 2006-02-24 2006-02-24 クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。
US11/468,900 US7493580B2 (en) 2006-02-24 2006-08-31 Critical path estimating program, estimating apparatus, estimating method, and integrated circuit designing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006049347A JP4644142B2 (ja) 2006-02-24 2006-02-24 クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。

Publications (2)

Publication Number Publication Date
JP2007226686A true JP2007226686A (ja) 2007-09-06
JP4644142B2 JP4644142B2 (ja) 2011-03-02

Family

ID=38445482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006049347A Expired - Fee Related JP4644142B2 (ja) 2006-02-24 2006-02-24 クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。

Country Status (2)

Country Link
US (1) US7493580B2 (ja)
JP (1) JP4644142B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012063886A (ja) * 2010-09-14 2012-03-29 Ricoh Co Ltd 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路
JP2017162200A (ja) * 2016-03-09 2017-09-14 富士通株式会社 情報処理装置、設計支援方法、および設計支援プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484008B2 (en) * 2010-10-11 2013-07-09 Lsi Corporation Methods and systems for performing timing sign-off of an integrated circuit design

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0375875A (ja) * 1989-08-17 1991-03-29 Nec Corp 遅延シミュレーション装置
JPH05151303A (ja) * 1991-11-28 1993-06-18 Hitachi Ltd 階層間デイレイ配分方法
JPH07249058A (ja) * 1994-03-14 1995-09-26 Toshiba Corp 集積回路設計装置
JPH09102547A (ja) * 1995-10-06 1997-04-15 Matsushita Electric Ind Co Ltd 回路分割方法
JP2000068381A (ja) * 1998-08-18 2000-03-03 Nec Corp Lsiの自動レイアウト方法、及びlsiの自動レイアウトプログラムを記録した記録媒体
JP2005149373A (ja) * 2003-11-19 2005-06-09 Fujitsu Ltd フォールスパス検出プログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5553002A (en) * 1990-04-06 1996-09-03 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface
JPH06215061A (ja) 1993-01-14 1994-08-05 Hitachi Ltd 半導体集積回路解析システム
US6058252A (en) * 1995-01-19 2000-05-02 Synopsys, Inc. System and method for generating effective layout constraints for a circuit design or the like
US6412096B1 (en) * 1999-04-30 2002-06-25 International Business Machines Corporation Method and apparatus for a hedge analysis technique for performance improvements of large scale integrated circuit logic design
US6427226B1 (en) * 1999-05-25 2002-07-30 Advanced Micro Devices, Inc. Selectively reducing transistor channel length in a semiconductor device
US6539536B1 (en) * 2000-02-02 2003-03-25 Synopsys, Inc. Electronic design automation system and methods utilizing groups of multiple cells having loop-back connections for modeling port electrical characteristics
US6952812B2 (en) * 2001-02-13 2005-10-04 Freescale Semiconductor, Inc. Design analysis tool for path extraction and false path identification and method thereof
US6757877B2 (en) * 2002-02-27 2004-06-29 Lsi Logic Corporation System and method for identifying and eliminating bottlenecks in integrated circuit designs
US7350173B1 (en) * 2002-06-11 2008-03-25 Synplicity, Inc. Method and apparatus for placement and routing cells on integrated circuit chips
US20040019473A1 (en) * 2002-07-24 2004-01-29 Burden David C. System and method of processing a circuit design via critical design paths
US6813754B2 (en) * 2002-11-05 2004-11-02 Lattice Semiconductor Corporation Placement processing for programmable logic devices
US20050076319A1 (en) * 2003-10-03 2005-04-07 Chow Shau-Lim Stan Pin assignment in block-based integrated circuit design methodologies
JP2005308471A (ja) * 2004-04-20 2005-11-04 Matsushita Electric Ind Co Ltd パスディレイテスト方法
US7246340B1 (en) * 2004-05-18 2007-07-17 Altera Corporation Timing-driven synthesis with area trade-off
JP4284235B2 (ja) * 2004-06-07 2009-06-24 富士通株式会社 配線選択方法及び装置、配線選択プログラム及び配線選択プログラムを記録したコンピュータ読取可能な記録媒体、並びに、遅延改善方法
US7376924B2 (en) * 2004-07-12 2008-05-20 International Business Machines Corporation Methods for placement which maintain optimized behavior, while improving wireability potential
WO2006063359A2 (en) * 2004-12-10 2006-06-15 Anova Solutions, Inc. Stochastic analysis process optimization for integrated circuit design and manufacture
US7548842B2 (en) * 2005-06-02 2009-06-16 Eve S.A. Scalable system for simulation and emulation of electronic circuits using asymmetrical evaluation and canvassing instruction processors
WO2007002799A1 (en) * 2005-06-29 2007-01-04 Lightspeed Logic, Inc. Methods and systems for placement
JP4275659B2 (ja) * 2005-09-26 2009-06-10 富士通株式会社 遅延解析プログラム、遅延解析装置、および遅延解析方法
US7363599B1 (en) * 2005-10-04 2008-04-22 Xilinx, Inc. Method and system for matching a hierarchical identifier

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0375875A (ja) * 1989-08-17 1991-03-29 Nec Corp 遅延シミュレーション装置
JPH05151303A (ja) * 1991-11-28 1993-06-18 Hitachi Ltd 階層間デイレイ配分方法
JPH07249058A (ja) * 1994-03-14 1995-09-26 Toshiba Corp 集積回路設計装置
JPH09102547A (ja) * 1995-10-06 1997-04-15 Matsushita Electric Ind Co Ltd 回路分割方法
JP2000068381A (ja) * 1998-08-18 2000-03-03 Nec Corp Lsiの自動レイアウト方法、及びlsiの自動レイアウトプログラムを記録した記録媒体
JP2005149373A (ja) * 2003-11-19 2005-06-09 Fujitsu Ltd フォールスパス検出プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012063886A (ja) * 2010-09-14 2012-03-29 Ricoh Co Ltd 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路
JP2017162200A (ja) * 2016-03-09 2017-09-14 富士通株式会社 情報処理装置、設計支援方法、および設計支援プログラム

Also Published As

Publication number Publication date
US7493580B2 (en) 2009-02-17
US20070204247A1 (en) 2007-08-30
JP4644142B2 (ja) 2011-03-02

Similar Documents

Publication Publication Date Title
US7958470B1 (en) Method and system for false path analysis
US8015522B2 (en) System for implementing post-silicon IC design changes
CN106326510B (zh) 验证时钟树延迟
US8954915B2 (en) Structured placement of hierarchical soft blocks during physical synthesis of an integrated circuit
US9098669B1 (en) Boundary latch and logic placement to satisfy timing constraints
WO2014105804A1 (en) Automatic clock tree routing rule generation
WO2014106038A1 (en) Local clock skew optimization and incremental clock tree synthesis
US6851102B2 (en) Method and program for supporting register-transfer-level design of semiconductor integrated circuit
Jung et al. OpenDesign Flow Database: The infrastructure for VLSI design and design automation research
JP4644142B2 (ja) クリティカルパス推定プログラム、推定装置、推定方法、および集積回路設計プログラム。
US7512923B2 (en) Automatic estimation method, apparatus, and recording medium
US20220327269A1 (en) Computing device and method for detecting clock domain crossing violation in design of memory device
JP5447547B2 (ja) マクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラム
US7275223B2 (en) Facilitating high-level validation of integrated circuits in parallel with development of blocks in a hierarchical design approach
US8024681B2 (en) Hierarchical HDL processing method and non-transitory computer-readable storage medium
US10255396B2 (en) Graphical analysis of complex clock trees
Xiong et al. Extended global routing with RLC crosstalk constraints
Plassan et al. Improving the efficiency of formal verification: the case of clock-domain crossings
JP5849973B2 (ja) データ処理装置、データ処理システム、データ処理方法、及びデータ処理プログラム
CN117907812B (zh) 电路检测方法及装置、电子设备、存储介质、程序产品
US11494540B1 (en) Method, system, and computer program product for implementing electronic design closure with reduction techniques
JP2016134083A (ja) 静的タイミング解析方法、静的タイミング解析装置及び自動配置配線装置
Kumar et al. Methodology for Timing Closure in VLSI Physical Design containing high clock to Q Memory Delay
Chandrasetty et al. ASIC Design
Chan Physical Design Methodologies for the More-than-Moore Era

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100921

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101203

R150 Certificate of patent or registration of utility model

Ref document number: 4644142

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees