JP5041882B2 - 半導体集積回路の設計方法及び設計支援装置 - Google Patents

半導体集積回路の設計方法及び設計支援装置 Download PDF

Info

Publication number
JP5041882B2
JP5041882B2 JP2007151295A JP2007151295A JP5041882B2 JP 5041882 B2 JP5041882 B2 JP 5041882B2 JP 2007151295 A JP2007151295 A JP 2007151295A JP 2007151295 A JP2007151295 A JP 2007151295A JP 5041882 B2 JP5041882 B2 JP 5041882B2
Authority
JP
Japan
Prior art keywords
path
delay
buffer
delay information
hold
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
JP2007151295A
Other languages
English (en)
Other versions
JP2008305132A (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.)
Renesas Electronics Corp
Original Assignee
Renesas 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2007151295A priority Critical patent/JP5041882B2/ja
Publication of JP2008305132A publication Critical patent/JP2008305132A/ja
Application granted granted Critical
Publication of JP5041882B2 publication Critical patent/JP5041882B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、半導体集積回路の設計方法及び設計支援装置に関し、特にクロック同期回路のセットアップタイミング制約及びホールドタイミング制約に対するタイミング解析に適用して有効な技術に関する。
上記タイミング解析に関する文献として本発明完成後の先行技術調査により下記文献を抽出した。非特許文献1には、フリップフロップ間の組み合わせ回路を対象に、長配線長に対して等間隔にバッファを挿入する事で、遅延改善を行うことが記載される。特に、バッファ挿入に於いては、組み合わせ回路全体構成を勘案して行うものとしている。
非特許文献2には、フリップフロップ間の組み合わせ回路を対象に、長配線長に対してバッファを挿入し且つゲートサイズ変更を同時に実施する事で、遅延改善を行うことが記載される。特に、バッファ挿入に於いては、組み合わせ回路内の各パス毎に行うようにする。これにより、処理時間の高速化を達成し、等間隔での挿入を回避することで挿入数の削減を達成している。
特許文献1には、セットアップ制約のみを考慮して論理合成を実施したネットリストを配置配線した後、ホールド違反パスを識別し、セットアップ制約を考慮せずに、ホールド違反パスの始点または終点の素子を予め最適化された素子に置き換える事で、ホールド違反解消を行う手法が記載される。ここで、予め最適化された素子とは、RAMやフリップフロップに遅延素子を付加した素子のことである。置き換え後に必要があり、且つ適用可能な場合に、論理圧縮を行った後、セットアップ制約が満たされているか否かを検証することになる。
特許文献2には、フリップフロップが直接接続された構造を識別し、前段の又は後段のフリップフロップを遅延素子が内蔵されたフリップフロップに置き換える事で、ホールド違反解消を行うことが記載される。これにより、修正後のネットリストに対するタイミング解析作業を行う必要がなく、回路規模増大を低減可能になる、とある。
特許文献3には、タイミング解析を実施し、セットアップ違反やホールド違反箇所を同定後、クロックツリーの配線に容量を付加する事で、違反箇所の修正を行うことが記載される。これにより、配置配線時の違反箇所解消のための論理合成や再配置、再配線の繰り返しを削減する事が可能になる、とある。
特許文献4には、タイミング解析を実施し、セットアップ違反やホールド違反を起こしているフリップフロップを同定後、クロックツリー合成時に、クロックの伝播遅延を、クロック信号線へのバッファ挿入段数を制御する事で調整して、違反箇所の修正を行うことが記載される。
I-Min Liu, Adnan Aziz, D. F. Wong, and Hai Zhou, "An Efficient Buffer Insertion Algorithm for Large Networks Based on Lagrangian Relaxation", Proceeding of 1999 IEEE International Conference on Computer Design (ICCAD1999), pp.210-215, November 1999 C. N. Sze, Charles J. Alpert, Jiang Hu, and Weiping Shi, "Path Based Buffer Insertion", Proceeding of 42th Design Automation Conference (DAC2005), pp.509-514, June 2005 特開2001-4428号公報 特開2001-101248号公報 特開2001-175699号公報 特開2001-184385号公報
本発明者はホールドタイミング違反について検討した。これによれば、例えば既存自動レイアウトツール(Physical Synthesisツール含む)にて、半導体集積回路の配置配線を行った場合、容易にホールドタイミング違反(以下、ホールド違反)が解消しきれないという問題のあることが明らかになった。また、既存自動レイアウトツールによるホールド違反解消はバッファ挿入による解消であり、単なるバッファ挿入による解消ではセル数が配置配線時に増加し、配置改善や詳細配線が困難になるという理由から、レイアウト上離れた空き領域にバッファを配置する傾向が強く、長配線を引き回す傾向にあり、配線でのばらつきにより歩留まりが低下する虞のあることが明らかになった。
上記検討結果に鑑みれば、非特許文献1,2はホールド違反対策を目的としていない。特許文献1はセットアップ制約を考慮せずに、ホールド違反パスの始点または終点の素子の置き換えによりホールド違反解消を行うため、置き換えにより他のパスの遅延が増加し、セットアップ制約が満たされなくなる可能性がある。また、セットアップ制約が満たされなくなった場合に論理圧縮による回路変更を行うため、再びホールド違反が起こる可能性があり、配置配線が収束しなくなる虞がある。特許文献2ではフリップフロップが直接接続されていない回路構造であってもホールド違反が起こる場合があり、この場合に対応できない。特許文献3では配線容量の変更によるセットアップ・ホールド違反箇所修正を行うため、プロセスばらつきの影響を受けやすくなり、歩留まり低下が起こりやすい。特許文献4では、理想条件の元でもクロックスキューが大きくなるため、プロセスばらつきや動作条件による影響で、更にクロックスキューが増大し、セットアップ・ホールド制約を満たしにくい回路構成となる。即ち、歩留まり低下が起こりやすい。
本発明の目的は、半導体集積回路の配置配線において良好なタイミング収束性を実現することを可能にする半導体集積回路の設計方法、並びに半導体集積回路の設計支援装置を提供することにある。
本発明の別の目的は、半導体集積回路における順序回路間のホールド違反解消という点において良好なタイミング収束性を実現することを可能にする半導体集積回路の設計方法、並びに半導体集積回路の設計支援装置を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
すなわち、配置配線処理(Physical Synthesis含む)の前に、ゲートレベルネットリストを対象にホールドタイミング違反箇所の特定し、バッファ挿入により先にホールドタイミング違反を解消することで、配置配線でのタイミング収束性の向上を図る。更に詳しくは、順序回路間の組み合わせ回路をDAG(Directed Acyclic Graph)で表現し、組合せ回路を表す各ノードに対して、パス毎に終点からその組合せ回路までの到達遅延またはパス制約遅延−到達遅延の情報を付加したテーブルを作成する(S11)。このテーブルを基に、セットアップ遅延が破綻するノード(クリティカルパス)を抽出し、さらに、順序回路間の始点からの到達遅延と、前記終点からの到達遅延またはパス制約遅延−到達遅延の情報とを用いてホールド制約違反パスを抽出する(S12)。クリティカルパスが除外されたホールド制約違反パスに対して、バッファの挿入候補を選択する。選択に当たっては、バッファ挿入数最小化 及び、原理的にバッファ挿入不能なDAG構造を作りこまないように考慮し、選択された挿入候補のバスにホールド対策用のバッファを挿入する(S13)。原理的にバッファ挿入不能なDAG構造とは、クリティカルパスであってホールド制約違反になっているパスである。原理的にバッファ挿入不能なDAG構造を生じ難くするには、実際よりもセットアップ制約を余計に強くする。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、半導体集積回路の配置配線において良好なタイミング収束性を実現することができる。
また、半導体集積回路における順序回路間のホールド違反解消という点において良好なタイミング収束性を実現することができる。
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
〔1〕本発明の代表的な実施の形態に係る半導体集積回路の設計方法は、コンピュータによって第1処理乃至第7処理を実行することによって実現される。第1処理は、半導体集積回路におけるゲートレベルのネットリストと、ネットリストの順序回路間において夫々の組合せ回路をネットの節点とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示す遅延ライブラリと、を読み込む処理である。第2処理は、前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の終点のセットアップ制約に対する最悪遅延量を示す第1遅延情報と、節点間経路毎に順序回路間の終点のホールド制約を満足するのに必要な最小遅延量を示す第2遅延情報とを取得する処理である。第3処理は、前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の始点からの到達最小遅延量を示す第3遅延情報および節点間経路毎に順序回路間の始点からの到達最大遅延量を示す第4遅延情報を取得する処理である。第4処理は、前記ネットリストの順序回路間に対し、4遅延情報による到達遅延量と第1遅延情報による遅延量との和がセットアップ制約遅延量よりも小さくない節点間経路をクリティカルパスとして抽出する第4処理である。第5処理は、前記ネットリストの順序回路間に対し、第3遅延情報による到達遅延量が第2遅延情報による遅延量よりも大きくない節点間経路をホールド制約例外パスとして抽出する処理である。第6処理は、ホールド制約例外パスの内前記クリティカルパスではない節点間経路をバッファ挿入可能なパスとして抽出する処理である。第7処理は、抽出したバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する第7処理である。バッファ挿入を行う毎に、上記第2処理から第7処理を繰り返して、全てのホールド制約違反の解消を目指す。
例えば、半導体集積回路のレイアウト設計における回路の初期配置の前に、前記第1処理乃至第7処理を実行し、前記初期配置の後はセットアップ制約違反を抽出し、抽出したセットアップ制約違反部分に対して再論理合成を実行すればよい。
上記手段によれば、配置配線前に、バッファ挿入によるホールドタイミング例外パスの解消を行い、配置配線においては挿入バッファを最適化して削除しないようにすれば、挿入バッファは、バッファ挿入によってホールド違反が解消されたホールドタイミング例外パスに近接配置されるため、バッファ挿入に伴う長配線の引き回しという問題を生じない。先にホールドタイミング例外パスを解消するので、配置配線処理に於いては、セットアップタイミング例外パスのみを対象に処理を行えば良いため、配置配線の収束性が向上する。ホールドタイミング違反パス解消のための長配線を行わなくて良いため、配線混雑度の緩和も可能になる。これらにより、配置配線の収束性向上による、タイミング収束の向上、ホールドタイミング例外パス解消により引き回されていた長配線の排除による歩留まり向上を達成することができる。
一つの具体的な形態として、前記第1処理において、順序回路間の異なる終点に共通接続する節点の第1遅延情報は夫々の終点に係る遅延量の内の最大値であり、順序回路間の異なる終点に共通接続する節点の第2遅延情報は夫々の終点に係る遅延量の内の最大値である。セットアップ制約とホールド制約を満足するために節点間経路に必要とされる最も厳しい遅延制約を明らかにすることが、ホールドタイミング違反パスの解消に高い信頼性を獲得する上で得策となるからである。
更に具体的な形態として、前記第3処理において、前記第2遅延情報により既にホールド制約を満足しているとされる節点間経路を、前記第3遅延情報の取得対象から除くものとする。ホールド制約を満足する状態を維持させるようにすることは、以降の処理の簡素化、余計なバッファ挿入によりセットアップ制約例外が派生的に発生する事態の抑制に資する。
更に具体的な形態として、前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する終点のセットアップ制約から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量を、挿入するバッファの挿入可能遅延量として取得する。
また、前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量を、挿入するバッファの必要挿入遅延量として取得する。
前記第7処理におい、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることを、バッファを挿入する節点間経路に対する必要条件とすることにより、バッファ挿入に当たり、派生的にセットアップ制約例外が発生することを抑制可能になる。
別の具体的な形態として、前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路を少なくするように、前記第2処理で用いるセットアップ制約を強くする。これにより処理時間短縮、処理途中での破綻抑制に資することができる。
更に具体的な形態として、前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路に対しては、ホールド制約例外構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように当該複製回路を並列に挿入し、分離されたホールド制約例外パスにバッファを挿入する。途中で処理が破綻することを抑制するのに資することができる。
〔2〕本発明の別の実施の形態に係る半導体集積回路の設計支援装置はコンピュータと前記コンピュータに接続された補助記憶装置とを有し、前記コンピュータは上記第1処理乃至第7処理を実行する。この設計支援装置によれば、これを用いて設計された半導体集積回路の配置配線において良好なタイミング収束性を実現することができ、しかも、当該半導体集積回路における順序回路間のホールド違反解消という点において良好なタイミング収束性を実現することができる。
2.実施の形態の詳細
実施の形態について更に詳述する。
図1には本発明に係る半導体集積回路の設計方法の位置付けが例示される。本発明方法は、配置配線処理(Physical Synthesis含む)の前にホールドタイミング違反を解消する処理(S1)を予め行うものであり、当該処理S1において、ゲートレベルネットリストを対象にホールドタイミング違反箇所の特定、及びバッファ挿入による解消を行う事で、配置配線でのタイミング収束性の向上を図る。セットアップタイミング違反を解消する処理を行った後にホールドタイミング違反を解消しようとする、従来の配置配線処理でのホールドタイミング例外解消工程S2とは相違される。
図2には本発明に係る半導体集積回路の設計方法を実現するための設計支援システムのシステム構成が例示される。ここでは当該システムを図1の前記ホールドタイミング解消処理(S1)を実現するものとして説明する。
図2の設計支援システムはコンピュータ1と、このコンピュータ2に接続された補助記憶装置2からなり、例えばエンジニアリングワークステーションなどによって実現される。補助記憶装置2は、ゲートレベルネットリスト10、セル遅延ライブラリ11、及び遅延制約ファイ路12などを保有する。
ゲートレベルネットリスト10は、設計対象とされる半導体集積回路の回路構成をゲートレベルで規定するものであり、それによる回路の規定形態は制限されないが、少なくとも、順序回路間の組み合わせ回路の接続形態が特定されている。
セル遅延ライブラリ11は、順序回路間の組み合わせ回路をDAG(Directed Acyclic Graph)で表現したとき、ネットリストの順序回路間において夫々の組合せ回路をネットの節点(ノードもしくはセル)とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示すノード遅延情報を有する。例えば図3には、順序回路間の組み合わせ回路がDAGで表現された例を示す。A〜Rの夫々は組合せ回路を意味するノードである。各ノードに付記さえた値はノード遅延情報であり、ノードAのノード遅延情報は1である。ノードA,B,は前段順序回路の出力に接続する始点ノード、ノードR,Q,O,N,Mは次段順序回路の入力に接続する終点ノードである。終点ノードには、それが接続する順序回路のセットアップ時間制約(例えばSetup:10)とホールド時間制約(例えばHold:4)が付記されている。夫々の時間制約の時間情報の値とノード遅延情報の値は同じ尺度の時間相対値を意味する。“Hold”はホールド時間制約の時間を総称し、“Setup”はセットアップ時間制約の時間を総称する。
遅延制約ファイル12は、前記ネットリストで特定される順序回路のクロック制約、すなわち、セットアップ時間制約とホールド時間制約を示す情報を有する。セットアップ時間制約とは、一般に、順序回路のクロック端子に供給されるクロック信号のトリガエッジの時点から前に信号レベルが変化しない時間が、このセットアップ時間より短ければ、動作が保証されないことを意味する時間制約である。ホールド時間制約とは、一般に、順序回路のクロック端子に供給されるクロック信号のトリガエッジの時点から後に信号レベルが変化しない時間が、このホールド時間より短ければ、動作が保証されないことを意味する時間制約である。
コンピュータ1による処理は、前記ホールドタイミング解消処理(S1)に特化した処理として、タイミング情報取得(S11)、タイミング例外抽出(S12)、バッファ挿入処理(S13)、タイミング情報更新処理(S14)、挿入不能構造解消処理(S15)に大別される。
先ず、それらによる処理の概要を全体的に説明する。実際のセットアップ時間制約より厳しいセットアップ時間制約を与えた上で、タイミング情報取得処理として、概略タイミング解析を実施し、各ノード間配線に対して、〔a〕セットアップ時間制約に対する通過パスの最悪遅延量とセットアップ時間制約、〔b〕ホールド時間制約に対する通過パスの最小遅延量とホールド時間制約の情報を取得し、タイミング例外抽出処理として、セットアップタイミング例外パス及び、ホールドタイミング例外パス、バッファ挿入可能なホールドタイミング例外パスを取得する。次いで、バッファ挿入処理として、バッファ挿入によるホールドタイミング例外パスの解消を、セットアップ時間制約を満たす範囲で行い、タイミング情報更新処理として、バッファ挿入が行われたパスのみを対象に、上記〔a〕、〔b〕の情報の更新を行う。ホールドタイミング例外パスの解消が行えなくなるまで、バッファ挿入処理及びタイミング情報の更新を繰り返す。これら処理を順次セットアップ制約を実際の制約となるまで緩和しつつ繰り返し適用することで、ホールドタイミング例外パスの解消を行う。セットアップ制約緩和時のタイミング解析処理は、タイミング情報取得処理をインクリメンタルに行うものとする。尚、実際のセットアップ時間制約下で、バッファ挿入不能なホールドタイミング例外パスが検出された場合は、その他のホールドタイミング例外パスの解消を行った後、バッファ挿入不能構造解消処理部によるホールドタイミング例外パスの解消を行う。以下、夫々の処理について更に詳述する。
《タイミング情報取得処理》
順序回路間の組合せ回路をDAG(非循環有向グラフ)で表現し、深さ優先探索による終点ノードから始点ノードに向かったファンイントレースを実施する事で、組合せ回路を表すノードの間のパス(ノード間パス)毎に、順序回路間の終点のセットアップ時間制約に対する最悪遅延量を示す第1遅延情報(終点からの到達遅延時間)の最大値(最悪値)及び対応するセットアップ時間制約、そして、ノードパス毎に順序回路間の終点のホールド制約を満足するのに必要な遅延量、即ち当該ホールド制約に対する最小遅延量、を示す第2遅延情報(“Hold”−終点からの到達遅延時間)の最大値(最悪値)及び対応するホールド時間制約を取得する。それらの情報は各ノードパスの最悪セットアップ・ホールド遅延制約として把握される。図3のDAG表現された順序回路間の組合せ回路を一例とすれば、図4乃至図7のようにノードパスの最悪セットアップ・ホールド遅延制約が順次取得される。例えば図4のノードP・A間のパスに示される“2(10)”が第1遅延情報“2”及び対応するセットアップ時間制約“10”を意味する。第1遅延情報“2”はノードRのノード遅延情報“1”とノードPのノード遅延情報“1”との和であるノードRとノードPを経た到達遅延時間“2”になっている。図4のノードP−A間のパスに示される“2(4)”が第2遅延情報“2”及び対応するホールド時間制約“4”を意味する。第2遅延情報“2”はノードRとノードPを経た到達遅延時間“2”を対応するホールド時間制約“4”から差し引いた値“2”になっている。尚、ファンイントレース時に、第2遅延情報(“Hold”−終点からの到達遅延時間)≦0となったノード以降は、第1遅延情報(終点からの到達遅延時間)の最大値(最悪値)及び対応するセットアップ時間制約のみを算出し、これによって第2遅延情報がセットされないことになるノードパスには遅延情報“0”を与えるものとする。例えば図6のノードD・A間のパスでは第2遅延情報が“0”になっているので、これ以降の検索ノードであるノードAの入力側パスの第2遅延情報は以前の状態に維持されている。ノードD・A間のパスに対して、その後の、終点ノードMのファンイントレースでは、図7に例示されるように、当該ノードD・A間のパスの第2遅延情報は“0”のままになるが、ノードM,L,J,Aを経由するファンイントレースパスに関し、ノードAの入力側パスの第2遅延情報は“2”に変化される。
ファンイントレースの後は、前記ネットリストの順序回路間に対し、始点ノードを基点とするファンアウトトレースを行って、ノードパス毎に始点ノードからの遅延量を示す第3遅延情報(始点からの到達最小遅延時間)および第4遅延情報(始点からの最大遅延時間)を取得する。例えば、図7までの処理の続きとして図8乃至図10のようにノード間パス毎に第3遅延情報および第4遅延情報が順次取得される。図の標記では第3遅延情報はカンマを挟んで第2遅延情報の前に記載されており、第4遅延情報はカンマを挟んで第1遅延情報の前に記載されている。例えば図10のノードP・Q間のパスに示された“2,3(4)”の“2”がホールド時間制約に関する第3遅延情報とされ、ノードAのノード遅延時間“1”とノードPのノード遅延時間“1”の合計時間“2”になる。ファンアウトトレースにおいて、第2遅延情報(“Hold”−終点からの到達遅延時間)≦0となったノード間パスと当該パスのみを通るノード間パスについてはホールド時間制約に関する第3遅延情報を算出しない。例えば図10のノードA・D間パス、ノードDA・H間パスである。図8乃至図10には説明を簡単にするためにセットアップ時間制約に関する第3遅延情報や第4遅延情報は図示を省略してあるが、実際には、図12に例示されるようにセットアップ時間制約に関する第4遅延情報も取得され、図の標記ではセットアップ時間制約に関する第4遅延情報はカンマを挟んで第1遅延情報の前に記載されている。例えば図12のノードP・Q間のパスに示された“2,1(10)”の“2”がセットアップ時間制約に関する第4遅延情報とされ、ノードAのノード遅延時間“1”とノードPのノード遅延時間“1”の合計時間“2”になる。セットアップ時間制約に関する第4遅延情報の取得では、第2遅延情報(“Hold”−終点からの到達遅延時間)≦0となったノード間パスと当該パスのみを通るノード間パスについても第4遅延情報の算出対象とする。
前記セットアップ制約緩和時のタイミング解析処理において、タイミング情報取得処理をインクリメンタルに行うインクリメンタル処理においては、セットアップ時間制約が更新されるから、これに応じて、ファンイントレースによって第1遅延情報と、当該緩和されたセットアップ時間制約を少なくとも更新することになる。
《タイミング例外抽出処理》
取得されたタイミング情報を用いてタイミング例外を抽出する。タイミング例外抽出処理は、〔1〕ホールドタイミング例外パス抽出処理、〔2〕セットアップタイミング例外パス抽出処理、及び〔3〕バッファ挿入不能なホールドタイミング例外パス抽出処理に大別される。
ホールドタイミング例外パス抽出処理では、ホールド時間制約に関する第3遅延情報による到達遅延量が第2遅延情報による遅延時間よりも大きくないノード間パスをホールドタイミング例外パスとして抽出する。この抽出条件は、終点でのホールド時間制約を満足することが不可能な条件になる。例えば図11のノードP・Q間のパスに示された“2,3(4)”において、ホールド時間制約に関する第3遅延情報の“2”が第2遅延情報の“3”より大きくされているから、このノードP・Q間のパスはホールドタイミング例外パスになる。図11において、第1乃至第3遅延情報が四角で囲まれているノード間パス(太く図示されている)がホールドタイミング例外パスになる。図12にはセットアップ時間制約に関する第4遅延情報と共に、太く図示された前記ホールドタイミング例外パスが示されている。
セットアップタイミング例外パス抽出処理では、セットアップ時間制約に関する第4遅延情報による到達遅延量と第1遅延情報による遅延時間との和が対応するセットアップ制約遅延量よりも小さくないノード間パスをセットアップタイミング例外パス(クリティカルパス)として抽出する。この抽出条件は、終点でのセットアップ時間制約を満足することが不可能な条件になる。例えば図13のノードH・J間のパスに示された“9,3(12)”において、セットアップ時間制約に関する第4遅延情報の“9”と第1遅延情報の“3”との和がセットアップ時間制約の“12”より小さくないから、このノードH・J間のパスはセットアップタイミング例外パスになる。図13において、第1乃至第4遅延情報が四角で囲まれているノード間パスがクリティカルパスになる。同図にはホールドタイミング例外パスも併せて太く図示されている。
バッファ挿入可能なホールドタイミング例外パス抽出処理では、ホールドタイミング例外パスの内当該パス上のノードが前記クリティカルパスに含まれない前記ホールドタイミング例外パス上のノード間パスをバッファ挿入可能なパスとして抽出する。図14には抽出されたバッファ挿入可能なパスが太線で示される。
《バッファ挿入処理》
バッファ挿入処理では、抽出されたバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する処理を行う。例えば、バッファ挿入可能パスに挿入可能な遅延値として、挿入するバッファの挿入可能遅延量と、挿入するバッファの必要挿入遅延量とを求める。挿入可能遅延量は、抽出されたバッファ挿入可能パスに対して、対応する終点のセットアップ制約時間から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量とする。例えば、図14において、ノードA・P間パスの場合、挿入可能遅延量は、10−(1+2)=7となる。この定義より、挿入可能遅延量は当該パスがクリティカルパスにならないための上限を与える。必要挿入遅延量は、抽出されたバッファ挿入可能パスに対して、対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量とする。例えば、図14において、ノードA・P間パスの場合、必要挿入遅延量は、2−1=1となる。この定義より、必要挿入遅延量は、当該パスがホールド時間制約を満足させるために必要な遅延量にする不足を意味する。したがって、バッファ挿入処理では、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることが、バッファ挿入位置に選定すべきノード間パスに対する必要条件となる。
バッファ挿入位置の選定に当たっては、上記必要条件の他に、挿入バッファ数が少ないこと、バッファ挿入によるパスの増加数が少ないこと、等のコストを考慮して、コストが最も小さくなるようにバッファ挿入位置を選定すればよい。例えば、図15に例示されるように、バッファ挿入可能パスであるノードA・P間パス、ノードP・Q間パス、ノードP・R間パスには遅延量“1”のバッファを挿入可能であるが、この場合には、最も上流のノードA・P間パスに遅延量“1”のバッファBUFaを挿入すればよい。残りのバッファ挿入可能パスについては、図16に例示されるように、ノードA・J間パスの挿入可能遅延量は2で必要挿入遅延量は2となり、ノードB・E間パスの挿入可能遅延量は4で必要挿入遅延量は1となり、ノードE・H間パスの挿入可能遅延量は4で必要挿入遅延量は1となり、ノードC・G間パスの挿入可能遅延量は5で必要挿入遅延量は3となり、ノードG・L間パスの挿入可能遅延量は9で必要挿入遅延量は3となる。これに対しては、図17に例示されるように、ノードA・J間パスに遅延量“2”のバッファBUFbを挿入し、ノードB・E間パスに遅延量“1”のバッファBUFcを挿入し、ノードG・L間パスに遅延量“3”のバッファBUFdを挿入する。ノードC・G間パスにバッファを挿入すると第2遅延情報が“0”のノードC・G間パスに影響があるので挿入しない。上記を考慮したときのバッファ挿入位置選定処理は以下のように行なえば良い。すなわち、セットアップタイミング例外ノードを含まないホールドタイミング例外パス上で始点フリップフロップから最も遠いホールドタイミング例外ノードから順次、後段にバッファ挿入可能か判定を行う。具体的には、現在対象としているノードを始点とした他のパスで、そのノードがホールドタイミング例外ノードとなっているか確認し、なっていれば対象パスの後段のノードでチェックを行い、なっていなければ、処理を終了する。パス上で始点フリップフロップから最も遠いホールドタイミング例外ノードの前段から処理を終了したノードの前段までが挿入可能位置となる。バッファ挿入可能位置に対して、挿入した場合に改善されるパス数を夫々求め、改善されるパス数をコストとし、最もコストの高いところから挿入を行う。挿入に際しては、タイミング情報更処理による各ノードでの情報更新を行う。また、挿入可能位置のコスト(解消されたパス数を減算)をインクリメンタルに求め、バッファ挿入可能位置を持つパスのホールドタイミング例外が解消されるまで処理を繰り返す。ホールドタイミング例外が解消されたノードを探索対象から除外していく。
《タイミング情報の更新処理》
タイミング情報の更新処理は、バッファ挿入があった場合、当該ノードからファンイントレースとファンアウトトレースを実施し、バッファ挿入が行われたパス上の、第1遅延情報、第2遅延情報、第3遅延情報、及び第4遅延情報の更新を行う。
《挿入不能構造解消処理》
バッファ挿入不能構造とは図18に例示されるように、ホールド制約例外パスHEPTHであってクリティカルパスCPTHとなるノード間経路である。FFは順序回路、CELLは挿入不能構造を構成する組合せ回路である。バッファ挿入不能構造を減らすために、最初はセットアップ時間制約を実際よりも厳しく設定してタイミング情報取得乃至バッファ挿入を行い、それによってホールドタイミングエラーパスがあるならば、セットアップ時間制約を緩和して、タイミング情報取得乃至バッファ挿入処理を継続する。
バッファ挿入不能構造があるなら、回路複製による解消を実施する。即ち、最後に残ったバッファ挿入不能構造に対しては、例えば図19に例示されるように、当該不能構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように、当該複製回路CELL_CPYを並列に挿入し、分離されたホールド制約例外パスにバッファBUFを挿入する。これにより、バッファ挿入によるバッファ挿入不能構造生成を抑止する事が可能となり、また最大遅延の偏った改悪を回避できる。
挿入不能構造解消処理を更に詳述する。バッファ挿入が不能なホールドタイミング例外パス夫々に対して、ホールドタイミング例外解消のために複製が必要となる複製ノード候補集合を取得し、当該パスの終点フリップフロップに最も近い複製ノード候補集合の複製を実施し、変更に伴うタイミング情報の更新を行い、バッファ挿入によるホールドタイミング例外ノードの解消を行う。当該パスのホールドタイミング例外ノードが解消しきれない場合は、順次当該パスの終点フリップフロップから近い順に前記処理を解消されるまで繰り返す。
以上の処理を経ることにより、セットアップ時間制約を満たす範囲で、ホールドタイミング例外パスが全て解消されたゲートレベルネットリストが得られる。
以上説明した設計支援システムによる設計方法によれば以下の作用効果を得る。
(1)配置配線処理前にネットリストレベルでホールド違反を解消することができる。
(2)配置配線時にホールド時間補正の為の補正用素子の適正配置が可能となり、配線長さの低減が可能である。補正用素子を後付けするための(余分な)配線の引き回しが不要になる。修正したパス上の素子が配置配線において、従来手法よりも近接に配置配線され、配置配線での長配線引き回しを回避できる。ホールドタイミング違反パス解消のための長配線を行わなくて良いため、配線混雑度の緩和も可能となる。
(3)配置配線時にセットアップ時間違反のみを考慮すればよく、演算の単純化が可能である。セットアップタイミング例外パスだけを扱えばよくなり問題が単純化されるため、配置配線の収束性が良くなり、配置配線結果の改善が期待できる。配置配線処理に於いては、セットアップタイミング例外パスのみを対象に処理を行えば良いため、配置配線の収束性が向上する。
(4)マイクロコンピュータ等のシステムオンチップの半導体集積回路やその他の半導体集積回路全般に対して配置配線収束性の向上、歩留まり向上、設計効率向上、タイミング収束性向上を実現することができる。
(5)配置配線前に、バッファ挿入によるホールドタイミング例外パスの解消を行い、配置配線において、挿入バッファを最適化して削除しないよう制御するため、挿入バッファが解消を行ったホールドタイミング例外パス上に近接配置されるため、長配線の引き回しという問題が起こらない。
(6)以上により、配置配線の収束性向上による、タイミング収束の向上、ホールドタイミング例外パス解消により引き回されていた長配線の排除による歩留まり向上が達成できる。
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
例えば、バッファ挿入を組み合わせ最適化問題として、ビームサーチA*アルゴルズムを用いて定式化し、問題解決を図ることも可能である。即ち、前処理として、簡単に解消可能で且つ他のパスに影響を与えないホールドタイミング例外パスへのバッファ挿入を行った後に、タブーサーチ、ビームサーチ、A*アルゴリズムの組み合わせによる最適化手法を実施する。ホールドタイミング例外対策不能パスの複製による解消はオプションとし、バッファ挿入の影響でホールド対策不能パスが極力出現しないようにホールド違反解消を行った後、ユーザの指定に従って実施するものとする。
(1)タブーサーチはバッファ挿入対象回路の規模削減を目的として実施する。バッファ挿入前に実施する初期操作と、バッファ挿入実行時の操作を以下に定める。初期操作として、ホールド時間制約値以上の遅延を持つパスに対して、始点順序回路からの遅延がホールド時間制約値以上のノードを、探索対象から除外する。実行時の操作として、バッファ挿入と共に、上記条件を満たすノードを探索対象から除外する。
(2)ビームサーチはバッファ挿入可能位置に対して、挿入コストを定義し、上位N番目までのコストの位置に対してバッファ挿入を行う事で、探査空間の削減を行うものである。尚、ビームサーチを本組み合わせ最適化手法の中から除外すれば、実行時間とメモリ使用量は増大するが、より最適な解が得られる。挿入候補決定コストは、解消可能パス数+最大挿入可能遅延値、より求める。
(3)A*アルゴリズムは、A*での探索を反復深化法を用いて実施する事で、必要となるメモリ容量の削減を行う事とする。尚、最適解探索時のコスト関数をf(p)=g(p)+h(p)とする。ここで、pは1つバッファ挿入が行われた回路の状態を表す。特に、探索終了時点では、理想的にはホールド違反パスが存在せず、順序回路からホールド時間制約値以下の遅延値が付加されたノードのみからなる回路となっており、実際には、理想状態に対してバッファ挿入不能パスが付加された回路となっている。従って、次のように定める。操作時点でのコストはg(p)(g(p)=挿入したバッファ数)とする。終了時の推定コストはh(p)とする。状態pにおけるバッファ挿入対象回路を、バッファを挿入後にタブーサーチで初期操作のみを除外して得られる回路とする。h(p)=挿入対象回路のホールド違反パス上のセル数と配線数の総和×(ホールド対策不能パス数+1)である。
(4)複製によるホールド対策不能パスの解消は前記(1)〜(3)同様に、組み合わせ最適化問題として解決を行う。具体的には、複製によるホールド違反解消が可能なパスとノードの識別、識別されたノードに対してコスト(複製によって増加する面積等)を定義したビームサーチ、コストをg(p)=複製によって増加した面積、h(p)=挿入対象回路のホールド違反パス上のセル数と配線数の総和×(ホールド対策不能パス数+1)(∵「ホールド違反パス=ホールド対策不能パス」)として前記A*アルゴリズムを適用、ビームA*アルゴリズムでの最適解探索時にタブーサーチによる対象回路削減、を順次行う。
また、別の方法としては、図20に例示されるように、配置配線後の詳細遅延情報を用いて、精度の高いタイミング解析に基づいて再度ホールド違反解消処理によりバッファ挿入を行い、再度配置配線を行う手法、或いは、図21に例示されるように、配置配線後の詳細遅延情報を用いて、精度の高いタイミング解析に基づいて再度ホールド違反解消処理によりバッファ挿入を行い、ECO(エンジニアリング・チェンジ・オーダ)による配置配線を行う手法が考えられる。配置配線後の詳細遅延情報を用いて、バッファ挿入を行うため、より精度の高いバッファ挿入が可能となる。
本発明に係る半導体集積回路の設計方法の特徴を従来と対比して例示するフローチャートである。 本発明に係る半導体集積回路の設計方法を実現するための設計支援システムのシステム構成図である。 DAG表現された順序回路間の組合せ回路を例示する説明図である。 ファイントレースによって第1遅延情報及び第2遅延情報等のタイミング情報を取得する処理例を示す説明図である。 ファイントレースによる図4に続く処理例を示す説明図である。 ファイントレースによる図5に続く処理例を示す説明図である。 ファイントレースによる図6に続く処理例を示す説明図である。 ファンナウトトレースによって第3遅延情報および第4遅延情報のタイミング情報を取得する処理例を示す説明図である。 ファンナウトトレースによる図8に続く処理例を示す説明図である。 ファンナウトトレースによる図9に続く処理例を示す説明図である。 ホールドタイミング例外パスの抽出処理を示す説明図である。 抽出されたホールドタイミング例外パスを例示する説明図である。 クリティカルパスの抽出処理を示す説明図である。 バッファ挿入不能なホールドタイミング例外パス抽出処理の説明図である。 バッファ挿入処理例を示す説明図である。 バッファ挿入処理のための図15に続く処理を示す説明図である。 バッファ挿入処理のための図16に続く処理を示す説明図である。 バッファ挿入不能構造を例示する説明図である。 バッファ挿入不能構造を生成する組合せ回路を複製してバッファ挿入不能構造を解消する処理例を示す説明図である。 ホールド違反解消処理を再度繰り返して再度配置配線を行う手法を示すフローチャートである。 ホールド違反解消処理を再度繰り返してECOによる配置配線を行う手法を示すフローチャートである。
符号の説明
S1 ホールドタイミング違反を解消する処理
1 コンピュータ
2 補助記憶装置
10 ゲートレベルネットリスト
11 セル遅延ライブラリ
12 遅延制約ファイル
A〜R 組合せ回路を意味するノード
S11 タイミング情報取得
S12 タイミング例外抽出
S13 バッファ挿入処理
S14 タイミング情報更新処理
S15 挿入不能構造解消処理

Claims (13)

  1. 半導体集積回路におけるゲートレベルのネットリストと、ネットリストの順序回路間において夫々の組合せ回路をネットの節点とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示す遅延ライブラリと、を読み込む第1処理と、
    前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の終点のセットアップ制約に対する最悪遅延量を示す第1遅延情報と、節点間経路毎に順序回路間の終点のホールド制約を満足するのに必要な最小遅延量を示す第2遅延情報とを取得する第2処理と、
    前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の始点からの到達最小遅延量を示す第3遅延情報および節点間経路毎に順序回路間の始点からの到達最大遅延量を示す第4遅延情報を取得する第3処理と、
    前記ネットリストの順序回路間に対し、第4遅延情報による到達遅延量と第1遅延情報による遅延量との和がセットアップ制約遅延量よりも小さくない節点間経路をクリティカルパスとして抽出する第4処理と、
    前記ネットリストの順序回路間に対し、第3遅延情報による到達遅延量が第2遅延情報による遅延量よりも大きくない節点間経路をホールド制約例外パスとして抽出する第5処理と、
    ホールド制約例外パスの内前記クリティカルパスではない節点間経路をバッファ挿入可能なパスとして抽出する第6処理と、
    抽出したバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する第7処理と、をコンピュータによって実行する半導体集積回路の設計方法であって、
    前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する終点のセットアップ制約から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量を、挿入するバッファの挿入可能遅延量として取得し、
    前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量を、挿入するバッファの必要挿入遅延量として取得する、半導体集積回路の設計方法。
  2. 前記第1処理において、順序回路間の異なる終点に共通接続する節点の第1遅延情報は夫々の終点に係る遅延量の内の最大値であり、順序回路間の異なる終点に共通接続する節点の第2遅延情報は夫々の終点に係る遅延量の内の最大値である、請求項1記載の半導体集積回路の設計方法。
  3. 前記第3処理において、前記第2遅延情報により既にホールド制約を満足しているとされる節点間経路を、前記第3遅延情報の取得対象から除くものとする、請求項2記載の半導体集積回路の設計方法。
  4. 前記第7処理において、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることを、バッファを挿入する節点間経路に対する必要条件とする、請求項1記載の半導体集積回路の設計方法。
  5. 前記第2処理で用いるセットアップ制約を実際よりも厳しく設定する、請求項1記載の半導体集積回路の設計方法。
  6. 前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路に対しては、ホールド制約例外構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように当該複製回路を並列に挿入し、分離されたホールド制約例外パスにバッファを挿入する、請求項5記載の半導体集積回路の設計方法。
  7. コンピュータにより、半導体集積回路のレイアウト設計における回路の初期配置の前に、前記第1処理乃至第7処理を実行し、前記初期配置の後はセットアップ制約違反を抽出して、抽出したセットアップ制約違反部分に対して再論理合成を実行する、請求項1記載の半導体集積回路の設計方法。
  8. コンピュータと前記コンピュータに接続された補助記憶装置とを有し、前記コンピュータは、
    半導体集積回路におけるゲートレベルのネットリストと、ネットリストの順序回路間において夫々の組合せ回路をネットの節点とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示す遅延ライブラリとを前記補助記憶装置から読み込む第1処理と、
    読み込んだ前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の終点のセットアップ制約に対する最悪遅延量を示す第1遅延情報と、節点間経路毎に順序回路間の終点のホールド制約を満足するのに必要な最小遅延量を示す第2遅延情報とを取得する第2処理と、
    前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の始点からの到達最小遅延量を示す第3遅延情報および節点間経路毎に順序回路間の始点からの到達最大遅延量を示す第4遅延情報を取得する第3処理と、
    前記ネットリストの順序回路間に対し、第4遅延情報による到達遅延量と第1遅延情報による遅延量との和がセットアップ制約遅延量よりも小さくない節点間経路をクリティカルパスとして抽出する第4処理と、
    前記ネットリストの順序回路間に対し、第3遅延情報による到達遅延量が第2遅延情報による遅延量よりも大きくない節点間経路をホールド制約例外パスとして抽出する第5処理と、
    ホールド制約例外パスの内前記クリティカルパスではない節点間経路をバッファ挿入可能なパスとして抽出する第6処理と、
    抽出したバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する第7処理とを実行する、半導体集積回路の設計支援装置であって、
    前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する終点のセットアップ制約から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量を、挿入するバッファの挿入可能遅延量として取得し、
    前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量を、挿入するバッファの必要挿入遅延量として取得する、半導体集積回路の設計支援装置。
  9. 前記第1処理において、順序回路間の異なる終点に共通接続する節点の第1遅延情報は夫々の終点に係る遅延量の内の最大値であり、順序回路間の異なる終点に共通接続する節点の第2遅延情報は夫々の終点に係る遅延量の内の最大値である、請求項8記載の半導体集積回路の設計支援装置。
  10. 前記第3処理において、前記第2遅延情報により既にホールド制約を満足しているとされる節点間経路を、前記第3遅延情報の取得対象から除くものとする、請求項9記載の半導体集積回路の設計支援装置。
  11. 前記第7処理において、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることを、バッファを挿入する節点間経路に対する必要条件とする、請求項8記載の半導体集積回路の設計支援装置。
  12. 前記第2処理で用いるセットアップ制約を実際よりも厳しく設定する、請求項8記載の半導体集積回路の設計支援装置。
  13. 前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路に対しては、ホールド制約例外構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように当該複製回路を並列に挿入し、分離されたホールド制約例外パスにバッファを挿入する、請求項12記載の半導体集積回路の設計支援装置。
JP2007151295A 2007-06-07 2007-06-07 半導体集積回路の設計方法及び設計支援装置 Expired - Fee Related JP5041882B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007151295A JP5041882B2 (ja) 2007-06-07 2007-06-07 半導体集積回路の設計方法及び設計支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007151295A JP5041882B2 (ja) 2007-06-07 2007-06-07 半導体集積回路の設計方法及び設計支援装置

Publications (2)

Publication Number Publication Date
JP2008305132A JP2008305132A (ja) 2008-12-18
JP5041882B2 true JP5041882B2 (ja) 2012-10-03

Family

ID=40233817

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007151295A Expired - Fee Related JP5041882B2 (ja) 2007-06-07 2007-06-07 半導体集積回路の設計方法及び設計支援装置

Country Status (1)

Country Link
JP (1) JP5041882B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10902168B2 (en) 2017-04-28 2021-01-26 Samsung Electronics Co., Ltd. Computer-implemented method and computing system for designing integrated circuit by considering timing delay
US11861281B2 (en) 2017-04-28 2024-01-02 Samsung Electronics Co., Ltd. Computer-implemented method and computing system for designing integrated circuit by considering timing delay

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5696407B2 (ja) * 2010-09-14 2015-04-08 株式会社リコー 半導体集積回路の自動配置配線方法、レイアウト装置、自動配置配線プログラム、及び半導体集積回路
US8407655B2 (en) * 2010-11-18 2013-03-26 Synopsys, Inc. Fixing design requirement violations in multiple multi-corner multi-mode scenarios
WO2020129119A1 (ja) 2018-12-17 2020-06-25 三菱電機株式会社 回路設計支援システムおよび回路設計支援プログラム
CN110738019B (zh) * 2019-09-26 2022-05-24 北京华大九天科技股份有限公司 一种利用负载单元自动结群修复时序违反的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2872217B1 (ja) * 1998-02-27 1999-03-17 北陸日本電気ソフトウェア株式会社 論理回路の遅延経路探索方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体
JP2002073714A (ja) * 2000-09-05 2002-03-12 Pfu Ltd タイミング解析装置、ネットリスト変更方法および記録媒体
JP2003196336A (ja) * 2001-12-26 2003-07-11 Nec Microsystems Ltd 半導体集積回路のタイミング設計方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10902168B2 (en) 2017-04-28 2021-01-26 Samsung Electronics Co., Ltd. Computer-implemented method and computing system for designing integrated circuit by considering timing delay
US11475195B2 (en) 2017-04-28 2022-10-18 Samsung Electronics Co., Ltd. Computer-implemented method and computing system for designing integrated circuit by considering timing delay
US11861281B2 (en) 2017-04-28 2024-01-02 Samsung Electronics Co., Ltd. Computer-implemented method and computing system for designing integrated circuit by considering timing delay

Also Published As

Publication number Publication date
JP2008305132A (ja) 2008-12-18

Similar Documents

Publication Publication Date Title
JP5041882B2 (ja) 半導体集積回路の設計方法及び設計支援装置
KR102324782B1 (ko) 집적 회로의 정적 타이밍 분석 방법
US8719752B1 (en) Hierarchical crosstalk noise analysis model generation
US8701064B2 (en) Timing error removing method and design support apparatus
US8719746B1 (en) Reduction of metal fill insertion time in integrated circuit design process
US10678989B2 (en) Method and system for sigma-based timing optimization
JP2004013720A (ja) 論理回路のタイミング制約モデル生成方法、論理回路のタイミング制約モデル生成プログラム、およびタイミング制約モデルを用いるタイミングドリブンレイアウト方法
US9600620B2 (en) Repeater insertions providing reduced routing perturbation caused by flip-flop insertions
US20090044159A1 (en) False path handling
US8578306B2 (en) Method and apparatus for performing asynchronous and synchronous reset removal during synthesis
US8196081B1 (en) Incremental placement and routing
US8196083B1 (en) Incremental placement and routing
JP5148434B2 (ja) ホールドタイムエラーの収束方法、収束装置、及び収束プログラム
JP4969416B2 (ja) 動作タイミング検証装置及びプログラム
US7500210B2 (en) Chip area optimization for multithreaded designs
US20220327269A1 (en) Computing device and method for detecting clock domain crossing violation in design of memory device
WO2006025412A1 (ja) 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置
JP5115003B2 (ja) 論理設計支援システム及びプログラム
Ren et al. Intuitive ECO synthesis for high performance circuits
JP2003281212A (ja) 自動配置配線方法、装置及びプログラム
JP2005293349A (ja) 回路設計支援システム、設計方法及びプログラム
JP2015053001A (ja) 半導体集積回路のレイアウト方法、及び、半導体集積回路のレイアウトプログラム
US20110320994A1 (en) Apparatus for designing semiconductor integrated circuit, method of designing semiconductor integrated circuit, and program for designing semiconductor integrated circuit
US11983478B2 (en) Selection of full or incremental implementation flows in processing circuit designs
JP3130810B2 (ja) 自動配置配線方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100407

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120423

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150720

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees