JP4918934B2 - 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム - Google Patents

半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム Download PDF

Info

Publication number
JP4918934B2
JP4918934B2 JP2009191845A JP2009191845A JP4918934B2 JP 4918934 B2 JP4918934 B2 JP 4918934B2 JP 2009191845 A JP2009191845 A JP 2009191845A JP 2009191845 A JP2009191845 A JP 2009191845A JP 4918934 B2 JP4918934 B2 JP 4918934B2
Authority
JP
Japan
Prior art keywords
delay
arbitrary area
clock
delay time
layout
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
JP2009191845A
Other languages
English (en)
Other versions
JP2011043993A (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 Corp
Original Assignee
NEC 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 Corp filed Critical NEC Corp
Priority to JP2009191845A priority Critical patent/JP4918934B2/ja
Priority to US12/859,722 priority patent/US8788255B2/en
Publication of JP2011043993A publication Critical patent/JP2011043993A/ja
Application granted granted Critical
Publication of JP4918934B2 publication Critical patent/JP4918934B2/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/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
    • G06F30/396Clock trees
    • 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

Description

本発明は、半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラムに関する。
LSIの大規模化に伴い、EDAツール実行に必要なマシン性能、使用メモリ量が大きくなってきており、LSIチップ全体を一度に処理することが難しくなってきている。この大規模化に伴い、1つのLSIを階層的に分割された一部分の回路(ここでは、マクロと呼ぶ)毎に設計することが主流になってきている。また、チップレイアウト処理後にチップの一部の回路(ここでは、任意区域と呼ぶ)を切り出して処理する場面も多くなっている。一方で、LSIの高速化も進んでおり、LSIを高速に動作させるためには、同期化回路の場合、フリップフロップ(FF)等の同時動作が重要な課題となっている。そのためには各FFに入力されるクロック信号の遅延時間のばらつき(クロックスキュー)を小さく抑えることが重要である。これにより、階層設計の任意区域や、チップレイアウト処理後にチップの一部を切り出した回路の遅延解析を行う際に、クロック信号の遅延時間のばらつき(クロックスキュー)の設計マージンをできるだけ取り除くことが必要である。ここで、LSIの大規模化に伴い、1つのLSIをマクロ毎に設計する階層設計や、チップレイアウト後にチップの任意区域を切り出して処理する場面が多くなっている。
図11はクロック分配の手法を示す第3の図である。
階層設計のクロック分配の手法は、図11のように、トップ処理、マクロ処理のそれぞれのレイアウト処理の中でクロックを分配して、チップ処理時にトップのクロック分配とマクロのクロック分配をマージさせる手法が一般的である。このクロック分配手法では、チップ全体で同期を取る場合に、段数が多くなりクロックスキューが大きくなってしまうという問題があった。図11を参照して具体的に説明すると、クロックパスc1、c2は、マクロm1を迂回してマクロm2、m3へ分配されるため迂回する分、ドライバの段数が多くなってしまい、配線遅延とドライバによる遅延とによりクロックスキューが大きくなってしまうという問題がある。
この問題を解消するためのクロック分配手法として、クロック分配をトップ処理の時点でチップ全面に対して行い、マクロ処理ではチップ全面に分配されたクロックパスからマクロ内に存在する部分のクロックパスを切り出して処理を行い、マクロ処理でのクロック分配はクロックツリー末端ドライバとマクロ内のFFを繋げるのみにする、という手法を考案した(図12;クロック分配の手法を示す第4の図)。この手法では前記の手法に比べてクロックツリーの段数が少なく抑えられ、クロックスキューを小さくすることができる。なお、関連する技術として特許文献1が開示されている。
特開2003−296387号公報
しかしながら、上述の技術では、チップ全面にクロックパスが分配された状態からマクロを切り出してマクロ処理を行うため、クロック分配の物理的な位置関係を意識せずに自由にマクロを切り出した場合に、マクロ境界にクロック端子が複数存在する断片的なクロックパスがマクロ内回路として切り出されることになる。クロックパスがこのような状態でマクロ処理を行う場合、LSIチップ上のクロックソース(PLL)からマクロ境界の各クロック端子までのクロックツリー段数にばらつきが生じるため、マクロ遅延解析時に精度の良いクロックスキューを用いることが困難であり、想定されるクロックスキューをアンダーマージンにならないように大きめの値を一律で与えて、必要以上に大きなクロックスキューを使用した遅延解析を行うしかなく、最適なマクロ設計を妨げる要因となっていた。チップレイアウト後の任意区域の遅延解析時にも同様の課題があった。
そこでこの発明は、上記課題を解決するためになされた、半導体集積回路の遅延解析装置および半導体集積回路の遅延方法ならびにそのプログラムを提供することを目的としている。
また本発明は、チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力する任意区域切り出し部と、前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力するレイアウト部と、前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成する遅延時間算出部と、前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成するグローバルクロック遅延アノテート部と、前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成する任意区域内回路遅延アノテート部と、前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する遅延解析部と、を備えることを特徴とする半導体集積回路の遅延解析装置である。
また本発明は、半導体集積回路の遅延解析装置の遅延解析方法であって、前記遅延解析装置の任意区域切り出し部が、チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力し、前記遅延解析装置のレイアウト部が、前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力し、前記遅延解析装置の遅延時間算出部が、前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成し、前記遅延解析装置のグローバルクロック遅延アノテート部が、前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成し、前記遅延解析装置の任意区域内回路遅延アノテート部が、前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成し、前記遅延解析装置の遅延解析部が、前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力することを特徴とする遅延解析方法である。
また本発明は、半導体集積回路の遅延解析装置のコンピュータを、チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力する任意区域切り出し手段、前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力するレイアウト手段、前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成する遅延時間算出手段、前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成するグローバルクロック遅延アノテート手段、前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成する任意区域内回路遅延アノテート手段、前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する遅延解析手段、として機能させることを特徴とするプログラムである。
本発明によれば、LSI階層設計における1つのLSIを階層的に分割した一部分の回路(以下、マクロ)の遅延解析時、または、チップレイアウト後にチップから一部切り出された回路(以下、任意区域)の遅延解析時に、マクロ(または任意区域)をブラックボックスとして扱う処理(以下、トップ処理)やチップレイアウト処理で得られるクロックパスの遅延時間情報を、マクロや任意区域内のクロックパスにアノテートすることで、従来のマクロ遅延解析時や任意区域遅延解析時には省くことのできなかった過剰な設計マージンを省くことを可能にし、最適なLSI設計に寄与することができる。
実施例1による遅延解析装置の構成を示すブロック図である。 実施例1による遅延解析装置の処理フローを示す図である。 クロック分配の手法を示す第1の図である。 クロック分配の手法を示す第2の図である。 遅延解析対象マクロbのレイアウト後マクロネットリストを示す図である。 遅延解析装置の処理概要を示す第1の図である。 遅延解析装置の処理概要を示す第2の図である。 実施例2による遅延解析装置の構成を示すブロック図である。 実施例2による遅延解析装置の処理フローを示す図である。 遅延解析装置の処理概要を示す第3の図である。 クロック分配の手法を示す第3の図である。 クロック分配の手法を示す第4の図
(実施例1)
以下、本発明の実施例1による半導体集積回路の遅延解析装置を図面を参照して説明する。なお、本実施例1ではクロック分配手法[H−Tree]を用いて説明するが、これは一例である。
図1は実施例1による遅延解析装置の構成を示すブロック図である。
この図に示すように、遅延解析装置100は、ハードディスク等の記憶装置1と、プログラム制御により動作するデータ処理装置2とから構成されている。
記憶装置1は、トップネットリスト11と、セル遅延ライブラリ17と、遅延制約情報18を自装置内に保持する各ファイル内に記憶し、また、出力情報となる、グローバルクロック分配後トップネットリスト12と、グローバルクロックレイアウトデータ1cと、エッジ情報を含むグローバルクロックパス遅延時間情報13と、マクロネットリスト14と、レイアウト後マクロネットリスト15と、マクロレイアウトデータ10と、マクロ内回路遅延時間情報16と、グローバルクロック遅延アノテート済みマクロネットリスト1aと、マクロ内回路遅延アノテート済みマクロネットリスト1bと、遅延解析情報19を自装置内に保持する各ファイル内に記憶する。
ここで、トップネットリスト11は、下位階層をマクロとした場合の、マクロ配置(フロアプラン)、及び、プリミティブセルの配置完了後、レイアウトツールから出力されたネットリストの情報である。また、トップネットリスト11は、マクロの境界が含まれる階層を示す情報が格納される。
また、セル遅延ライブラリ17は、フリップフロップ(以下、FFという)やクロックドライバの各セルにおける、入力端子から出力端子への遅延時間や、入力端子に入力されるデータ信号に対するクロック信号のセットアップ時間やホールド時間などを予め記憶する。セル遅延ライブラリ17の詳細については、例えば、特開2001−273338号公報でセルライブラリ、特開2006−39621号公報でタイミング制約ライブラリとして説明されている。
また、遅延制約情報18は、半導体集積回路を動作させるための制約情報となる基本クロック周期(或いは基本クロック周波数)、入力ピン外部の遅延時間、出力ピン外部の要求遅延時間、遅延制約例外パス(フォールス・パス,マルチサイクル・パス)などの情報である。
また、グローバルクロック分配後トップネットリスト12は、トップネットリスト11のチップ全面にクロックパスが分配されたネットリストである(図12の左図)。
また、エッジ情報を含むグローバルクロックパス遅延時間情報13は、グローバルクロックパスのネットワーク毎の配線遅延やゲート遅延と、各クロックセル到達時のクロック信号のエッジの情報(rise/fall)とを示す。なお、クロックセルとしてインバータを用いる場合があるので、各クロックセル到達時のクロック信号のエッジは、PLLからのクロックセルの段数によって異なる。
また、マクロネットリスト14は、グローバルクロック分配後トップネットリスト12から、マクロ内部の回路を切り出したネットリストである。
また、レイアウト後マクロネットリスト15は、マクロネットリスト14にレイアウト処理を行ったネットリストである。
また、マクロ内回路遅延時間情報16は、マクロ内回路のネットワーク毎の配線遅延やゲート遅延を示す情報である。
また、グローバルクロック遅延アノテート済みマクロネットリスト1aは、レイアウト後マクロネットリスト15に、マクロ内1段目までのクロックパスに対してグローバルクロックパスの遅延時間情報をアノテートしたマクロネットリストである。ここで、アノテートとは、ネットリストに含まれるパスそれぞれに遅延時間情報及びエッジ情報を対応付けることである。
また、マクロ内回路遅延アノテート済みマクロネットリスト1bは、グローバルクロック遅延アノテート済みマクロネットリスト1aの、マクロ内1段目以降のクロックパスとその他の回路について、マクロ内回路の遅延時間情報をアノテートしたマクロネットリストである。
また、遅延解析情報19は、遅延制約を満たしているかのチェックに基づく、遅延制約経路違反や違反値毎の度数分布統計情報を示す。
また、データ処理装置2は、グローバルクロック分配部21と、遅延時間算出部22と、マクロ切り出し部23と、レイアウト部24と、遅延時間算出部25と、グローバルクロック遅延アノテート部26と、マクロ内回路遅延アノテート部27と、遅延解析部28とを備える。
ここで、グローバルクロック分配部21は、トップネットリスト11を入力し、チップ全面にクロックパスを分配して、グローバルクロック分配後トップネットリスト12とグローバルクロックレイアウトデータ1cを出力する。このとき、クロックパスの遅延が後続レイアウトで大きく変化しないように、シールド配線や隣接禁止配線を行うのが一般的である。
また、遅延時間算出部22は、グローバルクロック分配後ネットリスト12とグローバルクロックレイアウトデータ1cを入力し、セル遅延ライブラリ17を参照してRCシミュレーションによる遅延計算を行い、エッジ情報を含むグローバルクロックパス遅延時間情報13を出力する。
また、マクロ切り出し部23は、グローバルクロック分配後ネットリスト12を入力し、マクロ内部の回路を切り出したマクロネットリスト14を出力する。
また、レイアウト部24は、マクロネットリスト14を入力し、グローバルクロック分配の先のクロックツリー末端ドライバとマクロ内のFFを接続する処理を含む、レイアウト処理を行って、レイアウト後マクロネットリスト15とマクロレイアウトデータ10を出力する。
また、遅延時間算出部25は、レイアウト後マクロネットリスト15とマクロレイアウトデータ10を入力し、セル遅延ライブラリ17を参照してRCシミュレーションによる遅延計算を行い、マクロ内回路遅延時間情報16を出力する。
また、グローバルクロック遅延アノテート部26は、レイアウト後マクロネットリスト15と、エッジ情報を含むグローバルクロックパス遅延時間情報13を入力し、マクロ内1段目までのクロックパスに対してはエッジ情報を含むグローバルクロックパス遅延時間情報13から遅延時間情報をアノテートし、グローバルクロック遅延アノテート済みマクロネットリスト1aを出力する。クロックセルとしてインバータを用いる場合があるので、マクロ外のクロックセルの段数が異なると、マクロ内に入ってくるクロック信号のエッジ(rise/fall)が経路によって異なるので、これを考慮させるために、遅延時間情報に加えてエッジの情報もクロックパスへアノテートしている。
また、マクロ内回路遅延アノテート部27は、グローバルクロック遅延アノテート済みマクロネットリスト1aと、マクロ内回路遅延時間情報16を入力し、グローバルクロック遅延アノテート部26で遅延時間情報がアノテートされた回路以外の回路、つまり、マクロ内1段目以降のクロックパスとその他の回路について、マクロ内回路の遅延時間情報をアノテートし、マクロ内回路遅延アノテート済みマクロネットリスト1bを出力する。
また、遅延解析部28は、マクロ内回路遅延アノテート済みマクロネットリスト1bと、遅延制約情報18を入力し、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、遅延解析情報19を出力する。
図2は実施例1による遅延解析装置の処理フローを示す図である。
次に、実施例1による遅延解析装置100の処理について図2を参照して説明する。
ここでは、マクロ外クロック遅延を考慮した遅延解析が行われる過程を、図2を用いて説明する。
(ステップS11)
まず、グローバルクロック分配部21が、トップネットリスト11を入力する。グローバルクロック分配部21は、一般的なトップ処理のクロック分配で行われるようなマクロ境界までのクロック分配ではなく、マクロ内部の領域も含めたチップ全面へクロックを分配し(図3;クロック分配の手法を示す第1の図)、グローバルクロック分配後トップネットリスト12と、グローバルクロックレイアウトデータ1cを出力する。
(ステップS12)
次に、遅延時間算出部22は、グローバルクロック分配後トップネットリスト12とグローバルクロックレイアウトデータ1cを入力し、セル遅延ライブラリ17を参照してRCシミュレーションによる遅延計算を行い、エッジ情報を含むグローバルクロックパス遅延時間情報13を出力する。遅延時間算出部22におけるステップS12の詳細については、例えば、特開2001−273338号公報、特開2000−259686号公報、特開2000−305966号公報、特開2000−250950号公報などにに記載されている技術により実現することができる。
(ステップS13)
また、マクロ切り出し部23が、グローバルクロック分配後トップネットリスト12を入力し、マクロ内部の回路を切り出したマクロネットリスト14を出力する(図4;クロック分配の手法を示す第2の図)。ステップS11でチップ全面へのクロック分配が行われ、物理的にクロックパスが分配されているので、そのクロックパスとマクロ境界の交差点にマクロの外部クロック端子を発生させて、そのマクロの外部クロック端子を含むマクロを切り出す。クロック端子の切り出し処理以外の処理については、例えば、特開2008−9787号公報、特開2005−235804号公報などに記載されている技術により実現することができる。このとき、後処理時において、どれがマクロ内1段目のクロックセルかを判定できるように、マクロ内1段目のクロックセルのインスタンス名には特定のprefixを付加する。
(ステップS14)
次に、レイアウト部24が、マクロネットリスト14を入力し、レイアウト処理を行い、レイアウト後マクロネットリスト15とマクロレイアウトデータ10を出力する。この処理の中で、クロックツリー末端ドライバからマクロ内の各FFのクロック入力端子までのクロックパスを接続する処理が行われる。この処理で、クロックソースからのクロックがFFまで完全に分配されたことになる。クロックツリー末端ドライバから各FFのクロック入力端子までのクロックパスを接続する処理は、例えば、特開2000−243846公報などに記載されている技術により実現することができる。その他のレイアウト処理の詳細については、例えば、特開2000−223578号公報、特開2000−172738号公報、特開2000−100948号公報などに記載された技術により実現することができる。
(ステップS15)
次に、遅延時間算出部25が、レイアウト後マクロネットリスト15とマクロレイアウトデータ10を入力し、セル遅延ライブラリ17を参照してRCシミュレーションによる遅延計算を行い、マクロ内回路遅延時間情報を出力する。遅延時間算出部25におけるステップS15の詳細については、例えば、特開2001−273338号公報、特開2000−259686号公報、特開2000−305966号公報、特開2000−250950号公報などに記載されている技術により実現することができる。
(ステップS16)
そして、グローバルクロック遅延アノテート部26が、レイアウト後マクロネットリスト15と、エッジ情報を含むグローバルクロックパス遅延時間情報13を入力し、グローバルクロック遅延アノテート済みマクロネットリスト1aを出力する。この処理においては、マクロ内1段目までのクロックパスに対して、エッジ情報を含むグローバルクロックパス遅延時間情報13がアノテートされる。具体的には、マクロ1段目までのグローバルクロック遅延が、マクロ切り口からマクロ内1段目までのクロックパスの遅延としてアノテートされる。
図5、図6を参照しながらステップS16の具体的な処理を説明する。
図5は遅延解析対象マクロbのレイアウト後マクロネットリストを示す図である。
図6は遅延解析装置の処理概要を示す第1の図である。
マクロbは、図5に記載されているように、外部クロック入力端子Port1〜Port3、DRV2、DRV4〜DRV8、FF1〜FF5を含む。DRV2、DRV4〜DRV8はクロックドライバである。FF1〜FF5はフリップフロップ(FF)である。マクロbはこれらの要素が図5のように組み合わされた回路である。
ここで、ステップS16の処理においては、マクロb内1段目までのクロックパスにエッジ情報を含む遅延時間情報をアノテートする。つまり、エッジ情報を含むグローバルクロックパス遅延時間情報13を参照して、外部クロック入力端子Port1→DRV2(外部入力端子Port1からクロックツリー末端ドライバDRV2)、外部クロック入力端子Port2→DRV6〜DRV7(外部入力端子Port2からクロックツリー末端ドライバDRV6,クロックツリー末端ドライバDRV7)、外部クロック入力端子Port3→DRV8(外部入力端子Port3からクロックツリー末端ドライバDRV8)のそれぞれのクロックパスに対して、遅延時間情報をアノテートする。また、クロックツリー末端ドライバDRV2、DRV4〜DRV8の入力端子到達時点でのクロック信号のエッジがrise/fallのどちらであるかもアノテートする。
同様の説明を、図6を参照しながら説明する。
具体的にDRV2に着目して説明すると、エッジ情報を含むグローバルクロックパス遅延時間情報13に含まれるPLL→DRV2(PLLからクロックツリー末端ドライバDRV2)までのクロック遅延を、マクロ/Port1→DRV2の遅延としてアノテートする。ここで、マクロ外のクロックセルの段数が異なると、マクロ内に入ってくるクロック信号のエッジ(rise/fall)が経路によって異なるので、これを考慮させるために、遅延時間に加えてエッジの情報もアノテートする。どれがマクロb内1段目のクロックセルかは、ステップS13で付加したprefixをキーにして判定する。
(ステップS17)
次に、マクロ内回路遅延アノテート部27が、グローバルクロック遅延アノテート済みマクロネットリスト1aと、マクロ内回路遅延時間情報16を入力し、マクロ内回路遅延アノテート済みマクロネットリスト1bを出力する。これにより、マクロ内1段目以降のパスとその他の回路にマクロ内回路遅延時間情報16がアノテートされる。つまり、マクロ内回路遅延時間情報16を参照して、ステップ16で遅延時間情報をアノテートした回路以外の回路へ、遅延時間情報をアノテートする。そして、ステップS16、ステップS17により、マクロ内回路全体に遅延時間情報がアノテートされたことになる。
(ステップS18)
そして、遅延解析部28は、ステップS16、ステップS17で遅延時間情報がアノテートされた、レイアウト後マクロネットリスト(マクロ内回路遅延アノテート済みマクロネットリスト)と、遅延制約情報18を入力し、信号パスの遅延時間の算出、クロックスパスの遅延時間の算出、マクロ外クロック遅延時間を考慮したクロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する。クロック遅延時間は、トップ持分のクロックパス、具体的には、PLLから各マクロの1段目のクロックツリードライバまでの遅延時間も保持しており、マクロ内処理でありながらトップ処理に近い高精度なクロックスキューの算出が可能になり、このクロックスキューを使用して遅延解析を行い、遅延解析情報19を出力する。クロック信号のエッジについても、正しい情報を保持した状態でマクロ内遅延解析を行う。これにより、マクロbの遅延解析が終了する。
上述の処理によれば、マクロ遅延解析時に、マクロ外のクロックパス遅延を、トップ処理で得られたグローバルクロックパスの遅延時間情報からアノテートして遅延解析ツールに認識させることで、マクロ内処理でありながらトップ処理に近い高精度なクロックスキューの算出が可能になり、従来のマクロ遅延解析では省く事のできなかった過剰な設計マージンを省くことが可能になり、最適なLSI設計に寄与する。
また、クロック遅延とエッジの情報をセットでマクロ処理へアノテートすることで、クロックパスの切り口が複数あり、クロックドライバの段数が異なる場合でも、マクロ処理へのクロックパス遅延計算結果のアノテートを可能にする。
図7は遅延解析装置の処理概要を示す第2の図である。
この効果について図7を参照して説明する。
従来のマクロの遅延解析方法では、想定されるクロックスキューをアンダーマージンにならないように大きめのクロックスキュー値を、FFのクロック入力端子、あるいは外部クロック入力端子に対して一律で与えてマクロの遅延解析を行っていた。しかし、実際のクロックスキュー(パスの始終点のクロック遅延時間の差)は、クロックドライバの分岐点の段数などクロック経路のレイアウト状態によって異なり、レイアウトが似通ったクロック経路のFFを始終点とするパスのクロックスキューは小さく、レイアウト上の差分が大きいクロック経路を始終点とするパスのクロックスキューは大きくなる。図7を参照して説明すると、PLLからFF1までのクロック経路と、PLLからFF2までのクロック経路は同一クロック経路部分が多く、PLLからFF1までのクロック経路と、PLLからFF5までのクロック経路は同一クロック経路部分が少ないので、FF1とFF2との間のクロックスキューは、FF1とFF5との間のクロックスキューに比べ小さくなる。
従来手法では、アンダーマージンにならないように大きめの値を一律で与えていたため、FF1とFF2との間のデータタイミングパスについてはオーバーマージンな遅延時間解析がされていた。
しかしながら、本発明のマクロの遅延解析方法では、マクロ外のクロックパス遅延をトップ処理の遅延計算結果からアノテートし、クロックの経路・レイアウトを考慮して、高精度なクロックスキュー計算を実現できる。具体的には、PLLからFF1までのクロック経路と、PLLからFF5までのクロック経路では、クロック経路の差分が大きいが、PLLからFF1までのクロック経路と、PLLからFF2までのクロック経路では、クロック経路の差分が小さいので、小さいクロックスキューが算出され、高精度な遅延解析が実現できる。これにより、過剰な設計マージンを省き、最適なLSI設計に寄与することができる。
(実施例2)
図8は実施例2による遅延解析装置の構成を示すブロック図である。
次に、本発明の実施例2の構成について図8を参照して説明する。
実施例2による半導体集積回路の遅延解析装置は、図8に示すように、ハードディスク等の記憶装置1と、プログラム制御により動作するデータ処理装置2と、から構成されている。
記憶装置1は、チップネットリスト1dと、エッジ情報を含む任意区域外(グローバル)クロックパス遅延時間情報13と、セル遅延ライブラリ17と、遅延制約情報18を自装置内に保持する各ファイル内に記憶し、また、出力情報となる、任意区域ネットリスト1eと、レイアウト後任意区域ネットリスト1fと、任意区域レイアウトデータ1gと、任意区域内回路遅延時間情報1hと、グローバルクロック遅延アノテート済み任意区域ネットリスト1iと、任意区域内回路遅延アノテート済み任意区域ネットリスト1jと、遅延解析情報19を自装置内に保持する各ファイル内に記憶する。
ここで、チップネットリスト1dは、チップ全面の全てのセルに対する配置・配線処理完了後、レイアウトツールから出力されたネットリストである。
また、任意区域ネットリスト1eは、チップネットリスト1dから任意区域の回路を切り出したネットリストである。
また、レイアウト後任意区域ネットリスト1fは、任意区域ネットリスト1eに修正レイアウト処理を行ったネットリストである。
また、任意区域内回路遅延時間情報1hは、任意区域内回路のネットワーク毎の配線遅延やゲート遅延を示す情報である。
また、グローバルクロック遅延アノテート済み任意区域ネットリスト1iは、レイアウト後任意区域ネットリスト1fの、任意区域内1段目までのクロックパスに対して、グローバルクロックパスの遅延時間情報をアノテートした任意区域ネットリストである。
また、任意区域内回路遅延アノテート済み任意区域ネットリスト1jは、グローバルクロック遅延アノテート済み任意区域ネットリスト1iの、任意区域内1段目以降のクロックパスとその他の回路について、任意区域内回路の遅延時間情報をアノテートした任意区域ネットリストである。
記憶装置1のその他の要素については、実施例1と同様である。
データ処理装置2は、任意区域切り出し部29と、レイアウト部24と、遅延時間算出部25と、グローバルクロック遅延アノテート部26と、任意区域内回路遅延アノテート部20と、遅延解析部28を備える。
任意区域切り出し部28は、チップネットリスト1dを入力し、任意区域内部の回路を切り出した任意区域ネットリスト1eを出力する。
また、グローバルクロック遅延アノテート部26は、レイアウト後任意区域ネットリスト1fと、エッジ情報を含むグローバルクロックパス遅延時間情報13を入力し、任意区域内1段目までのクロックパスに対してはエッジ情報を含むグローバルクロックパス遅延時間情報から遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリスト1iを出力する。クロックセルとしてインバータを用いる場合があるので、任意区域外のクロックセルの段数が異なると、任意区域内に入ってくるクロック信号のエッジ(rise/fall)が経路によって異なるので、これを考慮させるために、遅延時間情報に加えてエッジの情報もクロックパスへアノテートしている。
また、任意区域内回路遅延アノテート部20は、グローバルクロック遅延アノテート済み任意区域ネットリスト1iと、任意区域内回路遅延時間情報1hを入力し、グローバルクロック遅延アノテート部26で遅延時間情報がアノテートされた回路以外の回路、つまり、任意区域内1段目以降のクロックパスとその他の回路について、任意区域内回路の遅延時間情報をアノテートし、任意区域内回路遅延アノテート済み任意区域ネットリスト1jを出力する。
データ処理装置2のその他の処理部については、実施例1と同様である。
図9は実施例2による遅延解析装置の処理フローを示す図である。
次に、実施例2による遅延解析装置100の動作について図面を参照して説明する。
ここでは、半導体集積回路の遅延解析装置100により、任意区域の動作タイミングが検証される過程を、図9を用いて説明する。
(ステップS21)
まず、任意区域切り出し部29は、チップネットリスト1dを入力し、任意区域内部の回路を切り出した任意区域ネットリスト1eを出力する。チップネットリストはチップレイアウト処理まで行われ、物理的にクロックパスがわかっているので、そのクロックパスと任意区域境界の交差点に任意区域の外部クロック端子を発生させて、その任意区域の外部クロック端子を含んだ任意区域が切り出される(図10;遅延解析装置の処理概要を示す第3の図)。外部クロック端子の切り出し処理以外の処理については、例えば、特開2007−257293号公報に記載されている技術により実現することができる。このとき、任意区域内1段目のクロックセルがどれかを判定できるように、任意区域内1段目のクロックセルのインスタンス名には特定のprefixを付加する。
(ステップS22)
次に、レイアウト部24が、任意区域ネットリスト1eを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリスト1fと任意区域レイアウトデータ1gを出力する。レイアウト部24におけるステップ22の詳細については、例えば、特開2005−284826号公報、特開2007−34668号公報、特開2000−242675号公報などに記載されている技術により実現することができる。
(ステップS23)
次に、遅延時間算出部25が、レイアウト後任意区域ネットリスト1fと任意区域レイアウトデータ1gを入力し、セル遅延ライブラリ17を参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報1hを出力する。遅延時間算出部25を含むステップS23の詳細については、例えば、特開2001−273338号公報、特開2000−259686号公報、特開2000−305966号公報、特開2000−250950号公報などに記載されている技術により実現することができる。
(ステップS24)
次に、グローバルクロック遅延アノテート部26が、レイアウト後任意区域ネットリスト1fと、エッジ情報を含むグローバルクロックパス遅延時間情報13を入力し、グローバルクロック遅延アノテート済み任意区域ネットリスト1iを出力する。これにより、任意区域内1段目までのクロックパスに対して、エッジ情報を含むグローバルクロックパス遅延時間情報がアノテートされる。具体的には、任意区域1段目までのグローバルクロック遅延が、任意区域切り口から任意区域内1段目までのクロックパスの遅延としてアノテートされる。
その他、ステップS25およびステップS26の具体的な処理については、実施例1と比較して、マクロと任意区域、グローバルクロック分配後トップネットリストとチップネットリスト、が異なるのみで、上述した実施例1のステップS17〜ステップS18の処理と同様である。
つまり、
(ステップS25)
任意区域内回路遅延アノテート部20が、グローバルクロック遅延アノテート済み任意区域ネットリスト1iと、任意区域内回路遅延時間情報1hを入力し、任意区域内回路遅延アノテート済み任意区域ネットリスト1jを出力する。これにより、任意区域内1段目以降のパスとその他の回路に任意区域内回路遅延時間情報1hがアノテートされる。つまり、任意区域内回路遅延時間情報1hを参照して、ステップ24で遅延時間情報をアノテートした回路以外の回路へ、遅延時間情報がアノテートされる。そして、ステップS24、ステップS25により、任意区域内回路全体に遅延時間情報がアノテートされたことになる。
(ステップS26)
そして、遅延解析部28は、ステップS24、ステップS25で遅延時間情報がアノテートされた、任意区域内回路遅延アノテート済み任意区域ネットリスト1jと、遅延制約情報18を入力し、信号パスの遅延時間の算出、クロックスパスの遅延時間の算出、任意区域外クロック遅延時間を考慮したクロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する。クロック遅延時間は、トップ持分のクロックパス、具体的には、PLLから各任意区域の1段目のクロックツリードライバまでの遅延時間も保持しており、任意区域内処理でありながらトップ処理に近い高精度なクロックスキューの算出が可能になり、このクロックスキューを使用して遅延解析を行い、遅延解析情報19を出力する。クロック信号のエッジについても、正しい情報を保持した状態で任意区域内遅延解析を行う。これにより、任意区域の遅延解析が終了する。
上述の処理によれば、LSI階層設計における1つのLSIを階層的に分割した一部分の回路(以下、マクロ)の遅延解析時、または、チップレイアウト後にチップから一部切り出された回路(以下、任意区域)の遅延解析時に、マクロ(または任意区域)をブラックボックスとして扱う処理(以下、トップ処理)やチップレイアウト処理で得られるクロックパスの遅延時間情報を、マクロや任意区域内のクロックパスにアノテートすることで、従来のマクロ遅延解析時や任意区域遅延解析時には省くことのできなかった過剰な設計マージンを省くことを可能にし、最適なLSI設計に寄与することができる。
なお、上述の半導体集積回路の遅延解析装置は内部に、コンピュータシステムを有している。そして、上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
1・・・記憶装置
2・・・データ処理装置
20・・・任意区域内回路遅延アノテート部
21・・・グローバルクロック分配部
22・・・遅延時間算出部
23・・・マクロ切り出し部
24・・・レイアウト部
25・・・遅延時間算出部
26・・・グローバルクロック遅延アノテート部
27・・・マクロ内回路遅延アノテート部
28・・・遅延解析部
29・・・任意区域切り出し部

Claims (3)

  1. チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力する任意区域切り出し部と、
    前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力するレイアウト部と、
    前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成する遅延時間算出部と、
    前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成するグローバルクロック遅延アノテート部と、
    前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成する任意区域内回路遅延アノテート部と、
    前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する遅延解析部と、
    を備えることを特徴とする半導体集積回路の遅延解析装置。
  2. 半導体集積回路の遅延解析装置の遅延解析方法であって、
    前記遅延解析装置の任意区域切り出し部が、チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力し、
    前記遅延解析装置のレイアウト部が、前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力し、
    前記遅延解析装置の遅延時間算出部が、前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成し、
    前記遅延解析装置のグローバルクロック遅延アノテート部が、前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成し、
    前記遅延解析装置の任意区域内回路遅延アノテート部が、前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成し、
    前記遅延解析装置の遅延解析部が、前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する
    ことを特徴とする遅延解析方法。
  3. 半導体集積回路の遅延解析装置のコンピュータを、
    チップレイアウト処理が行われたチップネットリストを入力し、チップにおける任意区域の回路を切り出した任意区域ネットリストを出力する任意区域切り出し手段、
    前記任意区域ネットリストを入力し、レイアウト処理を行い、レイアウト後任意区域ネットリストと任意区域レイアウトデータとを出力するレイアウト手段、
    前記レイアウト後任意区域ネットリストと前記任意区域レイアウトデータとセル遅延ライブラリを参照してRCシミュレーションによる遅延計算を行い、任意区域内回路遅延時間情報を生成する遅延時間算出手段、
    前記レイアウト後任意区域ネットリストとエッジ情報を含むグローバルクロックパス遅延時間情報を入力し、任意区域内1段目までのクロックパスに前記エッジ情報を含むグローバルクロックパス遅延時間情報をアノテートし、グローバルクロック遅延アノテート済み任意区域ネットリストを生成するグローバルクロック遅延アノテート手段、
    前記グローバルクロック遅延アノテート済み任意区域ネットリストと前記任意区域内回路遅延時間情報を入力し、任意区域内回路遅延アノテート済み任意区域ネットリストを生成する任意区域内回路遅延アノテート手段、
    前記任意区域内回路遅延アノテート済み任意区域ネットリストと遅延制約情報を入力して、信号パスの遅延時間の算出、クロックパスの遅延時間の算出、クロックスキューの算出、クロックパス遅延時間と信号パス遅延時間が遅延制約を満たしているかのチェックを行い、それら情報を含む遅延解析情報を出力する遅延解析手段、
    として機能させることを特徴とするプログラム。
JP2009191845A 2009-08-21 2009-08-21 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム Expired - Fee Related JP4918934B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009191845A JP4918934B2 (ja) 2009-08-21 2009-08-21 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム
US12/859,722 US8788255B2 (en) 2009-08-21 2010-08-19 Delay analysis processing of semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009191845A JP4918934B2 (ja) 2009-08-21 2009-08-21 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム

Publications (2)

Publication Number Publication Date
JP2011043993A JP2011043993A (ja) 2011-03-03
JP4918934B2 true JP4918934B2 (ja) 2012-04-18

Family

ID=43606037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009191845A Expired - Fee Related JP4918934B2 (ja) 2009-08-21 2009-08-21 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム

Country Status (2)

Country Link
US (1) US8788255B2 (ja)
JP (1) JP4918934B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5447547B2 (ja) * 2012-02-02 2014-03-19 日本電気株式会社 マクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラム
US8464195B1 (en) 2012-07-03 2013-06-11 Oracle International Corporation Integrated circuit clock analysis with macro models
CN104715097A (zh) * 2013-12-17 2015-06-17 北京华大九天软件有限公司 一种预布线改善时延的方法
US9305129B2 (en) * 2013-12-26 2016-04-05 Cavium, Inc. System for and method of tuning clock networks constructed using variable drive-strength clock inverters with variable drive-strength clock drivers built out of a smaller subset of base cells
US9390209B2 (en) 2013-12-26 2016-07-12 Cavium, Inc. System for and method of combining CMOS inverters of multiple drive strengths to create tune-able clock inverters of variable drive strengths in hybrid tree-mesh clock distribution networks
US9443053B2 (en) 2013-12-26 2016-09-13 Cavium, Inc. System for and method of placing clock stations using variable drive-strength clock drivers built out of a smaller subset of base cells for hybrid tree-mesh clock distribution networks

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3913180B2 (ja) * 1994-08-03 2007-05-09 松下電器産業株式会社 半導体集積回路の設計方法
US5883814A (en) * 1997-03-13 1999-03-16 International Business Machines Corporation System-on-chip layout compilation
JP3223888B2 (ja) 1998-09-24 2001-10-29 日本電気株式会社 半導体集積回路の配線レイアウト方法及び配線レイアウト装置
JP2000172738A (ja) 1998-12-09 2000-06-23 Nec Corp Lsiの自動レイアウト方法
JP3033759B1 (ja) 1999-02-17 2000-04-17 日本電気アイシーマイコンシステム株式会社 半導体集積回路の配置方法及び配置プログラムを記録したコンピュ―タ読取可能な記録媒体
JP3231728B2 (ja) 1999-02-24 2001-11-26 エヌイーシーマイクロシステム株式会社 半導体集積回路のクロック分配レイアウト方法
JP3544885B2 (ja) 1999-02-26 2004-07-21 Necエレクトロニクス株式会社 論理回路の遅延計算方法、論理回路の遅延計算装置および論理回路の遅延計算プログラムを記録した媒体
JP3296320B2 (ja) 1999-03-05 2002-06-24 日本電気株式会社 ゲート遅延計算装置、及びゲート遅延計算プログラムを記録した記録媒体
JP2000305966A (ja) 1999-04-21 2000-11-02 Nec Corp 遅延情報生成システム、遅延情報生成方法及び記録媒体
JP2001273338A (ja) 2000-03-24 2001-10-05 Nec Corp 半導体集積回路の動作タイミング検証方法
JP4146668B2 (ja) * 2002-05-21 2008-09-10 松下電器産業株式会社 遅延調整方法
US6687889B1 (en) * 2002-08-08 2004-02-03 Agilent Technologies, Inc. Method and apparatus for hierarchical clock tree analysis
JP4020836B2 (ja) * 2003-07-23 2007-12-12 シャープ株式会社 クロックツリー回路、および、半導体集積回路装置
JP2005235804A (ja) 2004-02-17 2005-09-02 Nec Electronics Corp 半導体装置の設計方法及びプログラム
JP4140013B2 (ja) 2004-03-30 2008-08-27 日本電気株式会社 半導体集積回路のゲートリサイズ装置及び方法とそのプログラム
JP2006039621A (ja) 2004-07-22 2006-02-09 Nec Electronics Corp タイミング制約ライブラリの作成方法及び作成システム
US7418679B1 (en) * 2005-03-04 2008-08-26 Xilinx, Inc. Method of enabling timing verification of a circuit design
JP4540540B2 (ja) * 2005-05-02 2010-09-08 ルネサスエレクトロニクス株式会社 遅延計算装置
JP2007034668A (ja) 2005-07-27 2007-02-08 Oki Electric Ind Co Ltd レイアウト方法
US7451412B2 (en) * 2005-08-04 2008-11-11 Synopsys, Inc. Speeding up timing analysis by reusing delays computed for isomorphic subcircuits
JP4666164B2 (ja) 2006-03-23 2011-04-06 日本電気株式会社 集積回路の階層設計方法および装置
JP2008009787A (ja) 2006-06-30 2008-01-17 Fujitsu Ltd 階層設計レイアウト装置、および階層設計レイアウト方法、階層設計レイアウトプログラム、および該プログラムを記録した記録媒体
US20080229266A1 (en) * 2006-12-14 2008-09-18 International Business Machines Corporation Design Structure for a Clock Distribution Network, Structure, and Method for Providing Balanced Loading in Integrated Circuit Clock Trees
JP2008296387A (ja) 2007-05-29 2008-12-11 Japan Steel Works Ltd:The 射出成形機の型締装置

Also Published As

Publication number Publication date
JP2011043993A (ja) 2011-03-03
US20110046937A1 (en) 2011-02-24
US8788255B2 (en) 2014-07-22

Similar Documents

Publication Publication Date Title
JP4918934B2 (ja) 半導体集積回路の遅延解析装置及び遅延解析方法並びにそのプログラム
US9009645B2 (en) Automatic clock tree routing rule generation
US7886245B2 (en) Structure for optimizing the signal time behavior of an electronic circuit design
JP2010079737A (ja) タイミング解析支援装置
JP2006301961A (ja) 半導体集積回路の自動フロアプラン手法
Chan et al. OCV-aware top-level clock tree optimization
US8171440B2 (en) Timing analyzing apparatus, timing analyzing method and program thereof
US9047434B2 (en) Clustering for processing of circuit design data
JP2010257164A (ja) 半導体集積回路装置の設計方法およびプログラム
JP5444985B2 (ja) 情報処理装置
US8527927B2 (en) Zone-based area recovery in electronic design automation
JP5447547B2 (ja) マクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラム
Huang et al. Timing-driven cell placement optimization for early slack histogram compression
US8336013B2 (en) Determining an order for visiting circuit blocks in a circuit design for fixing design requirement violations
JP2005136286A (ja) 半導体集積回路の設計方法、及びその装置
JP4756002B2 (ja) 半導体集積回路の設計支援装置、その設計支援方法、その製造方法、プログラム、及び記録媒体
JP2006338090A (ja) 半導体集積回路の設計方法および設計装置
JP4587754B2 (ja) クロック合成方法、半導体装置及びプログラム
JP2009187344A (ja) 非同期論理回路検証装置およびその方法、並びにプログラム
JP2009053830A (ja) 自動配置配線方法およびレイアウト装置
JP5849973B2 (ja) データ処理装置、データ処理システム、データ処理方法、及びデータ処理プログラム
JP5929367B2 (ja) 半導体設計装置および半導体設計方法
Iizuka et al. An ASIC design support tool set for non-pipelined asynchronous circuits with bundled-data implementation
Liao et al. An Improved ASIC/SOC Design Methodology for Quick Design Convergence
JP2014006564A (ja) 半導体集積回路の設計方法及び設計プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110610

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4918934

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees