JP5041882B2 - 半導体集積回路の設計方法及び設計支援装置 - Google Patents
半導体集積回路の設計方法及び設計支援装置 Download PDFInfo
- 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
Links
Images
Description
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
実施の形態について更に詳述する。
順序回路間の組合せ回路を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”に変化される。
取得されたタイミング情報を用いてタイミング例外を抽出する。タイミング例外抽出処理は、〔1〕ホールドタイミング例外パス抽出処理、〔2〕セットアップタイミング例外パス抽出処理、及び〔3〕バッファ挿入不能なホールドタイミング例外パス抽出処理に大別される。
バッファ挿入処理では、抽出されたバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する処理を行う。例えば、バッファ挿入可能パスに挿入可能な遅延値として、挿入するバッファの挿入可能遅延量と、挿入するバッファの必要挿入遅延量とを求める。挿入可能遅延量は、抽出されたバッファ挿入可能パスに対して、対応する終点のセットアップ制約時間から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量とする。例えば、図14において、ノードA・P間パスの場合、挿入可能遅延量は、10−(1+2)=7となる。この定義より、挿入可能遅延量は当該パスがクリティカルパスにならないための上限を与える。必要挿入遅延量は、抽出されたバッファ挿入可能パスに対して、対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量とする。例えば、図14において、ノードA・P間パスの場合、必要挿入遅延量は、2−1=1となる。この定義より、必要挿入遅延量は、当該パスがホールド時間制約を満足させるために必要な遅延量にする不足を意味する。したがって、バッファ挿入処理では、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることが、バッファ挿入位置に選定すべきノード間パスに対する必要条件となる。
タイミング情報の更新処理は、バッファ挿入があった場合、当該ノードからファンイントレースとファンアウトトレースを実施し、バッファ挿入が行われたパス上の、第1遅延情報、第2遅延情報、第3遅延情報、及び第4遅延情報の更新を行う。
バッファ挿入不能構造とは図18に例示されるように、ホールド制約例外パスHEPTHであってクリティカルパスCPTHとなるノード間経路である。FFは順序回路、CELLは挿入不能構造を構成する組合せ回路である。バッファ挿入不能構造を減らすために、最初はセットアップ時間制約を実際よりも厳しく設定してタイミング情報取得乃至バッファ挿入を行い、それによってホールドタイミングエラーパスがあるならば、セットアップ時間制約を緩和して、タイミング情報取得乃至バッファ挿入処理を継続する。
1 コンピュータ
2 補助記憶装置
10 ゲートレベルネットリスト
11 セル遅延ライブラリ
12 遅延制約ファイル
A〜R 組合せ回路を意味するノード
S11 タイミング情報取得
S12 タイミング例外抽出
S13 バッファ挿入処理
S14 タイミング情報更新処理
S15 挿入不能構造解消処理
Claims (13)
- 半導体集積回路におけるゲートレベルのネットリストと、ネットリストの順序回路間において夫々の組合せ回路をネットの節点とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示す遅延ライブラリと、を読み込む第1処理と、
前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の終点のセットアップ制約に対する最悪遅延量を示す第1遅延情報と、節点間経路毎に順序回路間の終点のホールド制約を満足するのに必要な最小遅延量を示す第2遅延情報とを取得する第2処理と、
前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の始点からの到達最小遅延量を示す第3遅延情報および節点間経路毎に順序回路間の始点からの到達最大遅延量を示す第4遅延情報を取得する第3処理と、
前記ネットリストの順序回路間に対し、第4遅延情報による到達遅延量と第1遅延情報による遅延量との和がセットアップ制約遅延量よりも小さくない節点間経路をクリティカルパスとして抽出する第4処理と、
前記ネットリストの順序回路間に対し、第3遅延情報による到達遅延量が第2遅延情報による遅延量よりも大きくない節点間経路をホールド制約例外パスとして抽出する第5処理と、
ホールド制約例外パスの内前記クリティカルパスではない節点間経路をバッファ挿入可能なパスとして抽出する第6処理と、
抽出したバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する第7処理と、をコンピュータによって実行する半導体集積回路の設計方法であって、
前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する終点のセットアップ制約から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量を、挿入するバッファの挿入可能遅延量として取得し、
前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量を、挿入するバッファの必要挿入遅延量として取得する、半導体集積回路の設計方法。 - 前記第1処理において、順序回路間の異なる終点に共通接続する節点の第1遅延情報は夫々の終点に係る遅延量の内の最大値であり、順序回路間の異なる終点に共通接続する節点の第2遅延情報は夫々の終点に係る遅延量の内の最大値である、請求項1記載の半導体集積回路の設計方法。
- 前記第3処理において、前記第2遅延情報により既にホールド制約を満足しているとされる節点間経路を、前記第3遅延情報の取得対象から除くものとする、請求項2記載の半導体集積回路の設計方法。
- 前記第7処理において、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることを、バッファを挿入する節点間経路に対する必要条件とする、請求項1記載の半導体集積回路の設計方法。
- 前記第2処理で用いるセットアップ制約を実際よりも厳しく設定する、請求項1記載の半導体集積回路の設計方法。
- 前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路に対しては、ホールド制約例外構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように当該複製回路を並列に挿入し、分離されたホールド制約例外パスにバッファを挿入する、請求項5記載の半導体集積回路の設計方法。
- コンピュータにより、半導体集積回路のレイアウト設計における回路の初期配置の前に、前記第1処理乃至第7処理を実行し、前記初期配置の後はセットアップ制約違反を抽出して、抽出したセットアップ制約違反部分に対して再論理合成を実行する、請求項1記載の半導体集積回路の設計方法。
- コンピュータと前記コンピュータに接続された補助記憶装置とを有し、前記コンピュータは、
半導体集積回路におけるゲートレベルのネットリストと、ネットリストの順序回路間において夫々の組合せ回路をネットの節点とするとき一の節点を通過して次の節点に至るまでの遅延量を各節点毎に示す遅延ライブラリとを前記補助記憶装置から読み込む第1処理と、
読み込んだ前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の終点のセットアップ制約に対する最悪遅延量を示す第1遅延情報と、節点間経路毎に順序回路間の終点のホールド制約を満足するのに必要な最小遅延量を示す第2遅延情報とを取得する第2処理と、
前記ネットリストの順序回路間に対し、前記遅延ライブラリを参照して、節点間経路毎に順序回路間の始点からの到達最小遅延量を示す第3遅延情報および節点間経路毎に順序回路間の始点からの到達最大遅延量を示す第4遅延情報を取得する第3処理と、
前記ネットリストの順序回路間に対し、第4遅延情報による到達遅延量と第1遅延情報による遅延量との和がセットアップ制約遅延量よりも小さくない節点間経路をクリティカルパスとして抽出する第4処理と、
前記ネットリストの順序回路間に対し、第3遅延情報による到達遅延量が第2遅延情報による遅延量よりも大きくない節点間経路をホールド制約例外パスとして抽出する第5処理と、
ホールド制約例外パスの内前記クリティカルパスではない節点間経路をバッファ挿入可能なパスとして抽出する第6処理と、
抽出したバッファ挿入可能パスに、挿入バッファ数を最小化するようにバッファを挿入する第7処理とを実行する、半導体集積回路の設計支援装置であって、
前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する終点のセットアップ制約から対応する前記第1遅延情報と前記第4遅延情報との和を差し引いた遅延量を、挿入するバッファの挿入可能遅延量として取得し、
前記第7処理において、前記第6処理で抽出されたバッファ挿入可能パスの節点間経路に対して、順序回路間の対応する前記第2遅延情報から前記第3遅延情報を差し引いた遅延量を、挿入するバッファの必要挿入遅延量として取得する、半導体集積回路の設計支援装置。 - 前記第1処理において、順序回路間の異なる終点に共通接続する節点の第1遅延情報は夫々の終点に係る遅延量の内の最大値であり、順序回路間の異なる終点に共通接続する節点の第2遅延情報は夫々の終点に係る遅延量の内の最大値である、請求項8記載の半導体集積回路の設計支援装置。
- 前記第3処理において、前記第2遅延情報により既にホールド制約を満足しているとされる節点間経路を、前記第3遅延情報の取得対象から除くものとする、請求項9記載の半導体集積回路の設計支援装置。
- 前記第7処理において、前記バッファの必要挿入遅延量が前記バッファの挿入可能遅延量の範囲に入ることを、バッファを挿入する節点間経路に対する必要条件とする、請求項8記載の半導体集積回路の設計支援装置。
- 前記第2処理で用いるセットアップ制約を実際よりも厳しく設定する、請求項8記載の半導体集積回路の設計支援装置。
- 前記第7処理において、ホールド制約例外パスであってクリティカルパスとなる節点間経路に対しては、ホールド制約例外構造を生成する組合せ回路を複製し、ホールド制約例外パスとクリティカルパスとを分離するように当該複製回路を並列に挿入し、分離されたホールド制約例外パスにバッファを挿入する、請求項12記載の半導体集積回路の設計支援装置。
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)
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)
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)
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 | 半導体集積回路のタイミング設計方法 |
-
2007
- 2007-06-07 JP JP2007151295A patent/JP5041882B2/ja not_active Expired - Fee Related
Cited By (3)
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 |