JP4993362B2 - 半導体集積回路の自動遅延調整方法 - Google Patents

半導体集積回路の自動遅延調整方法 Download PDF

Info

Publication number
JP4993362B2
JP4993362B2 JP2007168218A JP2007168218A JP4993362B2 JP 4993362 B2 JP4993362 B2 JP 4993362B2 JP 2007168218 A JP2007168218 A JP 2007168218A JP 2007168218 A JP2007168218 A JP 2007168218A JP 4993362 B2 JP4993362 B2 JP 4993362B2
Authority
JP
Japan
Prior art keywords
wiring
dummy
dummy wiring
target
timing
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
JP2007168218A
Other languages
English (en)
Other versions
JP2009009247A (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 JP2007168218A priority Critical patent/JP4993362B2/ja
Priority to US12/213,372 priority patent/US8056042B2/en
Publication of JP2009009247A publication Critical patent/JP2009009247A/ja
Application granted granted Critical
Publication of JP4993362B2 publication Critical patent/JP4993362B2/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
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/06Spare resources, e.g. for permanent fault suppression

Description

本発明は、半導体集積回路の遅延を調整する遅延調整方法、コンピュータプログラム及びコンピュータに関する。
半導体集積回路の遅延を調整するためのツール(コンピュータプログラム)や、それがインストールされたコンピュータなどの技術が開発されている。その技術としては、クロックで動作する第1セル及び第2セルと、第1セルと第2セル間に接続される対象配線とが座標領域に配置されたレイアウトデータに対して、対象配線がタイミング違反を表す場合、タイミング調整を行う。
上記の技術に関連する技術として、例えば、特開2005−86153号公報には、タイミング調整の工数を削減することを目的として、マニュアルにより対象配線にダミー配線を接続する技術が記載されている。具体的には、対象配線にダミー配線を接続する経路を決定し、対象配線を切断し、対象配線にダミー配線が接続されるように上記経路に再配線する処理をマニュアルで行っている。
また、特開2003−273221号公報には、レイアウトプロセスのターンアラウンドタイムを短くすることを目的として、対象配線とダミー配線との距離(間隔)を調整する技術が記載されている。具体的には、対象配線に対してタイミング違反が発生している対象配線の周辺のダミー配線を削除する、もしくは配線禁止領域としている。
特開2005−86153号公報 特開2003−273221号公報
近年では、誰でも簡単に配線を任せられるように、タイミング調整を自動的に行うことが望まれる。
しかしながら、特開2005−86153号公報に記載された技術では、対象配線にダミー配線を接続する処理をマニュアルにより行っている。このため、汎用性がなく、慣れている人以外は手間と時間がかかってしまう。
また、特開2003−273221号公報に記載された技術では、対象配線の周辺のダミー配線を削除する、もしくは配線禁止領域としている。このため、ダミー配線が取り除かれた領域では配線密度が足りなくなったり、配線密度を均一化できなくなったりしてしまう。したがって、ダミー配線を用いてタイミング調整を行う必要がある。
以下に、発明を実施するための最良の形態・実施例で使用される符号を括弧付きで用いて、課題を解決するための手段を記載する。この符号は、特許請求の範囲の記載と発明を実施するための最良の形態・実施例の記載との対応を明らかにするために付加されたものであり、特許請求の範囲に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明の半導体集積回路の自動遅延調整方法は、
コンピュータ(1)を用いて、半導体集積回路のタイミングを調整する方法であって、
レイアウトデータ(7)にダミー配線(50−J)(Jは、1≦J≦Nを満たす整数)(Nは2以上の整数)を追加するダミー配線配置ステップ(S2)と、
前記レイアウトデータ(7)中でタイミング違反である第1セル(30−1)と第2セル(30−2)間の対象配線(40)に前記ダミー配線(50−J)を接続するダミー配線接続ステップ(S4)と
を具備し、
前記ダミー配線接続ステップ(S4)は、
前記ダミー配線(50−J)を、前記ダミー配線(50−J)の両端部に対応する第1及び第2ピン(61、62)を有するダミー配線セル(60)に置き換えるセル置換ステップ(S12)と、
前記対象配線(40)を切断して、第1、第2対象配線(41、42)を生成する配線切断ステップ(S13)と、
前記第1、第2対象配線(41、42)を前記第1、第2ピン(61、62)にそれぞれ接続するセル間接続ステップ(S14〜S16)と、
前記ダミー配線セル(60)を前記ダミー配線(50−J)に置き換えて、前記対象配線(40)の切断部分に前記ダミー配線(50−J)が接続された配線とする配線置換ステップ(S17)と
を含む。
以上により、本発明の半導体集積回路の自動遅延調整方法によれば、対象配線(40)がタイミング違反を表す場合、対象配線(40)にダミー配線(50−J)を自動的に接続することができる。
その理由として、本発明の半導体集積回路の自動遅延調整方法では、ダミー配線(50−J)を、ダミー配線(50−J)の両端部に対応する第1及び第2ピン(61、62)を有するダミー配線セル(60)に置き換え、対象配線(40)を切断してその一端がそれぞれ第1、第2セル(30−1、30−2)に接続された第1、第2対象配線(41、42)を生成し、第1、第2対象配線(41、42)の他端とダミー配線セル(60)の第1、第2ピン(61、62)とをそれぞれ接続する。そして、そのダミー配線セル(60)をダミー配線(50−J)に置き換えることにより、第1対象配線(41)とダミー配線(50−J)と第2対象配線(42)とを含む修正対象配線(70)を生成する。このように、本発明の半導体集積回路の自動遅延調整方法では、対象配線(40)がタイミング違反を表す場合、対象配線(40)にダミー配線(50−J)を自動的に接続することにより、対象配線にダミー配線を接続する処理をマニュアルで行う場合に比べて、工数とそれに費やされる時間とを削減することができる。したがって、本発明の半導体集積回路の自動遅延調整方法では、マニュアルによる方法に比べて、汎用性に優れている。
以下に添付図面を参照して、本発明の半導体集積回路の自動遅延調整方法について詳細に説明する。
(第1実施形態)
図1は、本発明の半導体集積回路の自動遅延調整方法が適用される設計システムの構成を示している。その設計システムは、コンピュータ1と、入力装置4と、出力装置5とを具備している。入力装置4と出力装置5は、コンピュータ1に接続されている。出力装置5は、表示装置、印刷装置を含んでいる。
コンピュータ1は、コンピュータプログラムを格納する記憶部3と、コンピュータプログラムを実行する実行部であるCPU(Central Processing Unit)2とを備えている。
設計システムは、更に、ソフトウェアである設計ツール6を具備している。設計ツール6は、記憶部3にインストールされる。この設計ツール6は、コンピュータプログラム10と、ファイル20とを含んでいる。ファイル20は、配置情報ファイル21、遅延情報ファイル22を含んでいる。
図2は、配置情報ファイル21を示している。配置情報ファイル21は、半導体集積回路を構成するための部品が配置される所定の座標領域(X、Y)を有している。配置情報ファイル21には、部品を識別する名称と、その部品が所定の座標領域に配置されたときの座標(X、Y)とがコンピュータプログラム10によって格納される。部品としては、セル、配線、ダミー配線が例示される。
図3は、遅延情報ファイル22を示している。遅延情報ファイル22には、クロックが部品から部品に伝達されるときの座標と、そのときの遅延時間とがコンピュータプログラム10によって格納される。例えば、第1、第2、第3部品がそれぞれ第1セル、配線、第2セルである場合、クロックが第1セルから配線を介して第2セルに伝達されるときの座標は、上記配線の配線長に対応する。
コンピュータプログラム10は、後述の入力処理部11、ダミー配線配置処理部12、タイミング検索処理部13、ダミー配線接続処理部14、出力処理部15を含んでいる。
図4は、本発明の第1実施形態による半導体集積回路の自動遅延調整方法を示し、コンピュータ1の動作を示すフローチャートである。
入力処理部11は、レイアウトデータ7を入力する(ステップS1)。図5に示されるように、レイアウトデータ7は、座標(X、Y)を表す所定の座標領域8を有している。この座標領域8には、複数のセル30−1〜30−M(Mは2以上の整数)と、複数の配線(図示しない)とが配置されている。例えば、第1セルを複数のセル30−1〜30−Mのうちのセル30−1とし、第2セルを複数のセル30−1〜30−Mのうちのセル30−2とする。ここで、複数の配線のうちの、第1セル30−1と第2セル30−2間に接続された配線を対象配線40とする。入力処理部11は、座標領域8に配置された複数のセル30−1〜30−M、複数の配線を識別する名称と、それが座標領域8に配置されたときの座標(X、Y)とを配置情報ファイル21に格納する。また、入力処理部11は、複数の配線の各々の配線長と遅延時間とを遅延情報ファイル22に格納する。
図6に示されるように、ダミー配線配置処理部12は、複数のダミー配線50−1〜50−N(Nは2以上の整数)をランダムに座標領域8に配置する(ステップS2)。複数のダミー配線50−1〜50−Nは、配線密度を一定にするために座標領域8に追加される。ダミー配線配置処理部12は、座標領域8に配置された複数のダミー配線50−1〜50−Nを識別する名称と、それが座標領域8に配置されたときの座標(X、Y)とを配置情報ファイル21に格納する。また、入力処理部11は、複数のダミー配線50−1〜50−Nの各々の配線長と遅延時間とを遅延情報ファイル22に格納する。
タイミング検索処理部13は、複数の配線のうちの、タイミング違反を表す配線を検索するタイミング検索処理を実行する(ステップS3)。
タイミング検索処理(ステップS3)について説明する。
タイミング検索処理部13は、配線長とその遅延時間とを対応付ける遅延情報ファイル22を参照して、複数の配線の各々の遅延時間を算出する。次に、タイミング検索処理部13は、複数の配線のうちの対象配線40の遅延時間tがホールド違反を表しているとき、第1、第2ホールド違反設定時間より長いか否かを検索する。ここで、第1ホールド違反設定時間をt1としたとき、t1=0[ps]とする。また、第2ホールド違反設定時間は、第1ホールド違反設定時間t1よりも長く、第2ホールド違反設定時間をt2としたとき、t2=20[ps]とする。
そこで、複数の配線の各々がタイミング違反を表さない場合(ステップS3;MET)、タイミング検索処理部13は、上記のレイアウトデータ7をレイアウトデータ7’として出力装置5に出力する(ステップS5)。
一方、第1のタイミング違反として、対象配線40の遅延時間tが、第1ホールド違反設定時間t1より長く、且つ、第2ホールド違反設定時間t2以下である(ステップS3;t1<t≦t2)。この場合、ダミー配線接続処理部14は、対象配線40に後述のダミー配線50−J(Jは、1≦J≦Nを満たす整数)を接続するダミー配線接続処理を実行する(ステップS4)。
このダミー配線接続処理では、配線密度を一定にするためのダミー配線50−Jを、タイミング調整用として有効利用する。
また、第2のタイミング違反として、対象配線40の遅延時間tが、第2ホールド違反設定時間t2を超える(ステップS3;t>t2)。この場合、ダミー配線配置処理部12は、ダミー配線50−Jよりも遅延時間を長くするためのフィルセル(図示しない)を対象配線40上に配置してフィルセル配置配線(図示しない)を生成する(ステップS6、S2)。このときに、タイミング検索処理部13は、フィルセル配置配線を対象配線40として上記のタイミング検索処理(ステップS3)を再度実行する。そのタイミング検索処理が再度実行されたときに、第1のタイミング違反として、対象配線40の遅延時間tが、第1ホールド違反設定時間t1より長く、且つ、第2ホールド違反設定時間t2以下である(ステップS3;t1<t≦t2)。この場合でも、ダミー配線接続処理部14は、後述するダミー配線接続処理を実行する(ステップS4)。
ダミー配線接続処理(ステップS4)について説明する。
図7に示されるように、ダミー配線接続処理部14は、座標領域8が表す座標(X、Y)のうちの、第1セル30−1に接続された対象配線40の端部(図7の●)の座標を中心とし、座標領域8よりも小さい所定の領域としてダミー配線検索エリア55を決定する。ダミー配線接続処理部14は、複数のダミー配線50−1〜50−Nのうちの、ダミー配線検索エリア55に存在するダミー配線をダミー配線50−J(Jは、1≦J≦Nを満たす整数)として検索する(ステップS11−YES)。また、図8に示されるように、ダミー配線検索エリア55に複数のダミー配線(例えばダミー配線50−2、50−J)が存在する場合がある。この場合、ダミー配線接続処理部14は、ダミー配線50−2、50−Jのうちの、第1セル30−1に接続された対象配線40の端部に最も近いダミー配線をダミー配線50−Jとして検索する。即ち、対象配線40に最も近いダミー配線をダミー配線50−Jとして検索する(ステップS11−YES)。
一方、ダミー配線検索エリア55にダミー配線が存在しない場合、ダミー配線配置処理部12は、上記のステップS6、S2を実行する。
ダミー配線接続処理部14は、ダミー配線50−Jを検索した場合、ダミー配線50−Jをダミー配線セル60に置き換えるセル置換処理を実行する(ステップS12)。
ダミー配線セル60とは、トランジスタを備えた通常のセルとは異なり、ダミー配線50−Jに対応した形状と端子とを備え、他のセルと重ねて配置可能な仮想的なセルである。通常のセルでは、セル同士の重なりは許されないが、本発明では、ダミー配線セル60を他のセルと重ねている(これについては後述するが、図21B参照のこと)。本発明では、このような構造を取ることにより、ダミー配線50−Jに対して、セル配置のための制約を受けることはなく、配置箇所に自由度を持たせることが可能となる。
セル置換処理(ステップS12)について説明する。
図9Aに示されるように、ダミー配線50−Jが、座標領域8が表す座標(X、Y)のX方向に平行に延びているものとする。また、図21Aに示されるように、複数のセル30−1〜30−Mの各々は、第1電源VDDと第2電源GNDとの間に設けられている。そこで、図9Aに示されるように、ダミー配線50−Jをダミー配線50−J’とし、ダミー配線50−J’の一端から他端までの長さをLxとする。また、ダミー配線50−J’の幅をLdとする。この幅Ldは、第1電源VDDと第2電源GND間のRowの長さLROWよりも大幅に短い。この場合、図9Bに示されるように、ダミー配線接続処理部14は、ダミー配線50−J’を、その形状が長さLxと長さLROWとにより決定されるダミー配線セル60に置き換える。例えば、図21Bに示されるように、ダミー配線セル60は、第1電源VDDと第2電源GNDとの間に設けられ、第2セル30−2と重なっている。このダミー配線セル60は、上述の端子として第1ピン61、第2ピン62を有する。第1ピン61、第2ピン62は、ダミー配線50−J’の両端部に対応している。
上記の図5〜図8、図10Aに示されるように、ダミー配線50−Jは、座標領域8が表す座標(X、Y)のY方向に平行に延びている。また、図22Aに示されるように、複数のセル30−1〜30−Mの各々は、第1電源VDDと第2電源GNDとの間に設けられている。そこで、図10Aに示されるように、ダミー配線50−Jの一端から他端までの長さをLyとし、ダミー配線50−Jの幅をLdとする。この幅Ldは、Siteの長さLsiteよりも短い。この場合、図10Bに示されるように、ダミー配線接続処理部14は、ダミー配線50−Jを、その形状が長さLyと長さLsiteとにより決定されるダミー配線セル60に置き換える。例えば、図22Bに示されるように、ダミー配線セル60は、第1電源VDDと第2電源GNDとの間に設けられ、第1セル30−1と第2セル30−2との間のセルに重なっている。このダミー配線セル60は、第1ピン61、第2ピン62を有する。第1ピン61、第2ピン62は、ダミー配線50−Jの両端部に対応している。
セル置換処理(ステップS12)が実行される理由について説明する。
通常、配線はセルとセルの間に接続される。本実施形態の場合、例えば、対象配線40は第1セル30−1と第2セル30−2の間に接続される。しかし、図11Aに示されるように、ダミー配線50−Jがダミー配線セル60に置き換えられない場合、図11Bに示されるように、例えば、ダミー配線50−Jの両端のうちの一端と、対象配線40とに接続される修正配線140が生成されるだけで、単に、冗長な配線になってしまう。そこで、ダミー配線接続処理部14は、ダミー配線50−Jをダミー配線セル60に置き換えることにより、後述のステップS13以降のように、第1セル30−1とダミー配線セル60間の配線と、ダミー配線セル60と第2セル30−2間の配線とを実現することができる。
図12、図21B、図22Bに示されるように、ダミー配線接続処理部14は、セル置換処理(ステップS12)を実行した後、対象配線40を切断する(ステップS13)。この場合、断線箇所は、対象配線40の端部から例えば1グリッド分空けたところから、2グリッド分の断線幅を空けるようにする。また、対象配線40が切断されたとき、図13に示されるように、その一端がそれぞれ第1セル30−1、第2セル30−2に接続された第1対象配線41、第2対象配線42が生成されている。
次に、図13に示されるように、ダミー配線接続処理部14は、第1対象配線41、第2対象配線42の他端とダミー配線セル60の第1ピン61、第2ピン62とをそれぞれ反映させる(ステップS14)。次いで、図14に示されるように、ダミー配線接続処理部14は、概略配線として、第1対象配線41の他端と第1ピン61とを接続する第1修正配線と、第2対象配線42の他端と第2ピン62とを接続する第2修正配線とを生成する(ステップS15)。次に、図15、図21C、図22Cに示されるように、ダミー配線接続処理部14は、上記の第1修正配線、第2修正配線をそれぞれ第1修正配線71、第2修正配線72として座標領域8に配置する(ステップS16)。
次に、図16に示されるように、ダミー配線接続処理部14は、第1ピン61、第2ピン62を座標領域8に残して、ダミー配線セル60を座標領域8から消去する。次いで、図17、図21D、図22Dに示されるように、ダミー配線接続処理部14は、第1ピン61、第2ピン62を両端部としたダミー配線50−Jを座標領域8に配置する。このように、ダミー配線接続処理部14は、ダミー配線セル60をダミー配線50−Jに置き換える(ステップS17)。このとき、図17、図21D、図22Dに示されるように、第1対象配線41と第1修正配線71とダミー配線50−Jと第2修正配線72と第2対象配線42とを含む修正対象配線70が生成されている。
ダミー配線接続処理部14は、ダミー配線接続処理(ステップS4)を実行した後、上記のレイアウトデータ7をレイアウトデータ7’として出力装置5に出力する(ステップS5)。
以上の説明により、本発明の第1実施形態による半導体集積回路の自動遅延調整方法の効果について説明する。
本発明の半導体集積回路の自動遅延調整方法では、ダミー配線50−Jを上記のダミー配線セル60に置き換え、対象配線40を切断して、第1対象配線41、第2対象配線42の他端とダミー配線セル60の第1ピン61、第2ピン62とをそれぞれ接続する。そして、そのダミー配線セル60をダミー配線50−Jに置き換えることにより、上記の修正対象配線70を生成する。このように、本発明の半導体集積回路の自動遅延調整方法では、対象配線40がタイミング違反を表す場合、対象配線40にダミー配線50−Jを自動的に接続することができる。
また、本発明の半導体集積回路の自動遅延調整方法では、対象配線40にダミー配線50−Jを自動的に接続することにより、対象配線にダミー配線を接続する処理をマニュアルで行う場合に比べて、工数とそれに費やされる時間とを削減することができる。したがって、本発明の半導体集積回路の自動遅延調整方法では、マニュアルによる方法に比べて、汎用性に優れている。
(第2実施形態)
第1実施形態では、ダミー配線接続処理部14は、対象配線40にダミー配線50−Jとして1つのダミー配線を接続しているが、第2実施形態では、対象配線40がタイミング違反を表さなくなるまで、対象配線40に対して複数のダミー配線を接続している。第2実施形態では、これについて説明し、第1実施形態と重複する説明については省略する。
図18は、本発明の第2実施形態による半導体集積回路の自動遅延調整方法を示し、コンピュータ1の動作を示すフローチャートである。
前述のダミー配線接続処理(ステップS4)が実行される。このときに、タイミング検索処理部13は、修正対象配線70を対象配線40としてタイミング検索処理(ステップS3)を再度実行する。
そこで、複数の配線の各々がタイミング違反を表さない場合(ステップS7;OK)、タイミング検索処理部13は、上記のレイアウトデータ7をレイアウトデータ7’として出力装置5に出力する(ステップS5)。
一方、対象配線40(修正対象配線70)は、タイミング違反を表しているものとする(ステップS7;NG)。そのタイミング違反(前述の第1のタイミング違反)として、対象配線40の遅延時間tが、第1ホールド違反設定時間t1より長く、且つ、第2ホールド違反設定時間t2以下である(ステップS3;t1<t≦t2)。この場合、ダミー配線接続処理部14は、前述のダミー配線接続処理(ステップS4)を再度実行する。
図19に示されるように、ダミー配線接続処理部14は、座標領域8が表す座標(X、Y)のうちの、前述のダミー配線50−Jとしてダミー配線50−5の両端部のうちの1つの端部(図19の●)の座標を中心とし、そのダミー配線50−5と第1セル30−1と第2セル30−2とを含むダミー配線検索エリア55としてダミー配線検索エリア55’を決定する。また、図19に示されるように、ダミー配線検索エリア55’に複数のダミー配線が存在する場合、ダミー配線接続処理部14は、複数のダミー配線のうちの、ダミー配線50−5の両端部のうちの1つの端部に最も近いダミー配線50−10を新たな調整用ダミー配線として検索する。即ち、ダミー配線50−5に最も近いダミー配線を調整用ダミー配線50−10として検索する(ステップS11−YES)。その後、ダミー配線接続処理部14は、前述のステップS12〜S17を実行する。この場合、ステップS12〜S16により、新たに第1修正配線73と第2修正配線74とが生成され、ステップS17により、第1対象配線41と第1修正配線71、73と調整用ダミー配線50−10と第2修正配線74とダミー配線50−5と第2修正配線72と第2対象配線42とを含む修正対象配線70が生成されている(図20C参照)。
ここで、具体例として、図20Aに示されるように、タイミング検索処理(ステップS3)により12[ps]のホールド違反が発生し、対象配線40に対してダミー配線を追加する場合を想定する。
複数のダミー配線50−1〜50−Nの各々の遅延時間(遅延値)を1[ps]とし、1本目のダミー配線を対象配線40に接続するのにこの5倍の配線長が必要であるものとする。設計ツール6は、配置情報ファイル21と遅延情報ファイル22とにより、ダミー配線と接続配線の遅延量を容易に計算できる。この場合、設計ツール6がステップS1〜S4を実行することにより、第1接続配線として上記の第1修正配線71、第2修正配線72となり、その第1接続配線の遅延値は1×5=5[ps]になる。このため、図20Bに示されるように、ダミー配線30−5と第1接続配線の総遅延値は1+5=6[ps]となる。この場合、12[ps]より6[ps]だけ足りないため、設計ツール6は、ダミー配線の追加が必要と判断する。
2本目のダミー配線を対象配線40に接続するのにこの6倍の配線長が必要であるものとする。この場合、設計ツール6は、ステップS7、S3、S4を実行することにより、第2接続配線として上記の第1修正配線73、第2修正配線74となり、その第2接続配線の遅延値は1×6=6[ps]になる。このため、図20Cに示されるように、ダミー配線30−10と第2接続配線の総遅延値は1+6=7[ps]となる。ダミー配線30−5と第1接続配線の総遅延値と、ダミー配線30−10と第2接続配線の総遅延値とを合計すると、6+7=13[ps]となるので、ホールド違反の12[ps]よりも大きくなり、ホールド違反をなくすことができる。
ここで、2本目のダミー配線を接続してもホールド違反がなくならない場合、設計ツール6は、ステップS7、S3、S4を実行することにより、3本目、4本目、…、N本目のダミーを接続する。
以上の説明により、本発明の第2実施形態による半導体集積回路の自動遅延調整方法では、対象配線40(又は修正対象配線70)がタイミング違反を表さなくなるまで、対象配線40(又は修正対象配線70)に複数のダミー配線を自動的に接続することができる。これにより、本発明の半導体集積回路の自動遅延調整方法では、マニュアルによる方法や第1実施形態に比べて、更に汎用性に優れている。
図1は、本発明の半導体集積回路の自動遅延調整方法が適用される設計システムの構成を示している。 図2は、配置情報ファイル21を示している。 図3は、遅延情報ファイル22を示している。 図4は、本発明の第1実施形態による半導体集積回路の自動遅延調整方法を示し、コンピュータ1の動作を示すフローチャートである。 図5は、レイアウトデータ7であり、図4のステップS1の処理を説明するための図である。 図6は、レイアウトデータ7であり、図4のステップS2の処理を説明するための図である。 図7は、レイアウトデータ7であり、図4のステップS11の処理を説明するための図である。 図8は、レイアウトデータ7であり、図4のステップS11の処理を説明するための図である。 図9Aは、レイアウトデータ7であり、図4のステップS12の処理を説明するための図である。 図9Bは、レイアウトデータ7であり、図4のステップS12の処理を説明するための図である。 図10Aは、レイアウトデータ7であり、図4のステップS12の処理を説明するための図である。 図10Bは、レイアウトデータ7であり、図4のステップS12の処理を説明するための図である。 図11Aは、図4のステップS12の処理が実行される理由を説明するための図である。 図11Bは、図4のステップS12の処理が実行される理由を説明するための図である。 図12は、レイアウトデータ7であり、図4のステップS13の処理を説明するための図である。 図13は、レイアウトデータ7であり、図4のステップS14の処理を説明するための図である。 図14は、レイアウトデータ7であり、図4のステップS15の処理を説明するための図である。 図15は、レイアウトデータ7であり、図4のステップS16の処理を説明するための図である。 図16は、レイアウトデータ7であり、図4のステップS17の処理を説明するための図である。 図17は、レイアウトデータ7であり、図4のステップS17の処理を説明するための図である。 図18は、本発明の第2実施形態による半導体集積回路の自動遅延調整方法を示し、コンピュータ1の動作を示すフローチャートである。 図19は、レイアウトデータ7であり、図18のステップS1〜S7の処理を説明するための図である。 図20Aは、レイアウトデータ7であり、図18のステップS1〜S7の処理を説明するための図である。 図20Bは、レイアウトデータ7であり、図18のステップS1〜S7の処理を説明するための図である。 図20Cは、レイアウトデータ7であり、図18のステップS1〜S7の処理を説明するための図である。 図21Aは、図9Aに対応するレイアウト図である。 図21Bは、図9Bに対応するレイアウト図である。 図21Cは、図12〜図16に対応するレイアウト図である。 図21Dは、図17に対応するレイアウト図である。 図22Aは、図10Aに対応するレイアウト図である。 図22Bは、図10Bに対応するレイアウト図である。 図22Cは、図12〜図16に対応するレイアウト図である。 図22Dは、図17に対応するレイアウト図である。
符号の説明
1 コンピュータ、
2 CPU、
3 記憶部、
4 入力装置、
5 出力装置、
6 設計ツール、
7、7’ レイアウトデータ、
8 座標領域、
10 コンピュータプログラム、
11 入力処理部、
12 ダミー配線配置処理部、
13 タイミング検索処理部、
14 ダミー配線接続処理部、
15 出力処理部、
16 フィルセル配置処理部、
20 ファイル、
21 配置情報ファイル、
22 遅延情報ファイル、
30−1〜30−M セル、
30−1 セル(第1セル)、
30−2 セル(第2セル)、
40 対象配線、
41 第1対象配線、
42 第2対象配線、
50−1〜50−N ダミー配線、
50−J ダミー配線、
55 ダミー配線検索エリア、
60 ダミー配線セル、
61 第1ピン、
62 第2ピン、
70 修正対象配線、
71 第1修正配線、
72 第2修正配線、

Claims (17)

  1. コンピュータを用いて、半導体集積回路のタイミングを調整する方法であって、
    レイアウトデータにダミー配線を追加するダミー配線配置ステップと、
    前記レイアウトデータ中でタイミング違反である第1セルと第2セル間の対象配線に前記ダミー配線を接続するダミー配線接続ステップと
    を具備し、
    前記ダミー配線接続ステップは、
    前記ダミー配線を、前記ダミー配線の両端部に対応する第1及び第2ピンを有するダミー配線セルに置き換えるセル置換ステップと、
    前記対象配線を切断して、第1、第2対象配線を生成する配線切断ステップと、
    前記第1、第2対象配線を前記第1、第2ピンにそれぞれ接続するセル間接続ステップと、
    前記ダミー配線セルを前記ダミー配線に置き換えて、前記対象配線の切断部分に前記ダミー配線が接続された配線とする配線置換ステップと
    を含む半導体集積回路の自動遅延調整方法。
  2. 前記ダミー配線配置ステップは、
    複数のダミー配線を前記座標領域に配置するステップ
    を更に含み、
    前記ダミー配線接続ステップは、
    前記対象配線がタイミング違反を表す場合、前記複数のダミー配線のうちの、前記対象配線に最も近い前記ダミー配線を検索するダミー配線検索ステップ
    を更に含む請求項1に記載の半導体集積回路の自動遅延調整方法。
  3. 前記レイアウトデータは、複数の配線を更に含み、
    前記複数の配線のうちの、前記タイミング違反を表す前記対象配線を検索するタイミング検索ステップ
    を更に具備する請求項1又は2に記載の半導体集積回路の自動遅延調整方法。
  4. 前記タイミング検索ステップは、
    配線長とその遅延時間とを対応付ける遅延情報ファイルを参照して、前記複数の配線の各々の遅延時間を算出するステップと、
    前記複数の配線のうちの前記対象配線の前記遅延時間がホールド違反を表しているとき、第1、第2ホールド違反設定時間より長いか否かを検索するステップと
    を更に含み、
    前記第2ホールド違反設定時間は、前記第1ホールド違反設定時間よりも長く、
    前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを実行するステップ
    を更に具備する請求項3に記載の半導体集積回路の自動遅延調整方法。
  5. 前記対象配線の前記遅延時間が、前記第2ホールド違反設定時間を超える場合、前記ダミー配線よりも遅延時間を長くするためのフィルセルを前記対象配線上に配置してフィルセル配置配線を生成するステップと、
    前記フィルセル配置配線が生成されたときに、前記フィルセル配置配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを実行するステップと
    を更に具備する請求項4に記載の半導体集積回路の自動遅延調整方法。
  6. 前記ダミー配線接続ステップが実行されたときに、前記レイアウトデータを出力装置に出力するステップ
    を更に具備する請求項1〜5のいずれかに記載の半導体集積回路の自動遅延調整方法。
  7. 前記ダミー配線接続ステップが実行されたときに、前記修正対象配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを再度実行するステップと
    を更に具備する請求項4又は5に記載の半導体集積回路の自動遅延調整方法。
  8. 前記ダミー配線接続ステップが実行されたときに、前記修正対象配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反を表していない場合、前記レイアウトデータを出力装置に出力するステップ
    を更に具備する請求項7に記載の半導体集積回路の自動遅延調整方法。
  9. コンピュータにインストールされ、前記コンピュータを用いて、半導体集積回路のタイミングを調整するコンピュータプログラムであって、
    レイアウトデータにダミー配線を追加するダミー配線配置ステップと、
    前記レイアウトデータ中でタイミング違反である第1セルと第2セル間の対象配線に前記ダミー配線を接続するダミー配線接続ステップと
    の各ステップを前記コンピュータに実行させ、
    前記ダミー配線接続ステップは、
    前記ダミー配線を、前記ダミー配線の両端部に対応する第1及び第2ピンを有するダミー配線セルに置き換えるセル置換ステップと、
    前記対象配線を切断して、第1、第2対象配線を生成する配線切断ステップと、
    前記第1、第2対象配線を前記第1、第2ピンにそれぞれ接続するセル間接続ステップと、
    前記ダミー配線セルを前記ダミー配線に置き換えて、前記対象配線の切断部分に前記ダミー配線が接続された配線とする配線置換ステップと
    を含むコンピュータプログラム。
  10. 前記配置ステップは、
    複数のダミー配線を前記座標領域に配置するステップ
    を更に含み、
    前記ダミー配線接続ステップは、
    前記対象配線がタイミング違反を表す場合、前記複数のダミー配線のうちの、前記対象配線に最も近い前記ダミー配線を検索するダミー配線検索ステップ
    を更に含む請求項9に記載のコンピュータプログラム。
  11. 前記レイアウトデータは、複数の配線を更に含み、
    前記複数の配線のうちの、前記タイミング違反を表す前記対象配線を検索するタイミング検索ステップ
    を更に前記コンピュータに実行させる請求項9又は10に記載のコンピュータプログラム。
  12. 前記タイミング検索ステップは、
    配線長とその遅延時間とを対応付ける遅延情報ファイルを参照して、前記複数の配線の各々の遅延時間を算出するステップと、
    前記複数の配線のうちの前記対象配線の前記遅延時間がホールド違反を表しているとき、第1、第2ホールド違反設定時間より長いか否かを検索するステップと
    を更に含み、
    前記第2ホールド違反設定時間は、前記第1ホールド違反設定時間よりも長く、
    前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを実行するステップ
    を更に前記コンピュータに実行させる請求項11に記載のコンピュータプログラム。
  13. 前記対象配線の前記遅延時間が、前記第2ホールド違反設定時間を超える場合、前記ダミー配線よりも遅延時間を長くするためのフィルセルを前記対象配線上に配置してフィルセル配置配線を生成するステップと、
    前記フィルセル配置配線が生成されたときに、前記フィルセル配置配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを実行するステップと
    の各ステップを更に前記コンピュータに実行させる請求項12に記載のコンピュータプログラム。
  14. 前記ダミー配線接続ステップが実行されたときに、前記レイアウトデータを出力装置に出力するステップ
    を更に前記コンピュータに実行させる請求項9〜13のいずれかに記載のコンピュータプログラム。
  15. 前記ダミー配線接続ステップが実行されたときに、前記修正対象配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反として、前記対象配線の前記遅延時間が、前記第1ホールド違反設定時間より長く、且つ、前記第2ホールド違反設定時間以下である場合、前記ダミー配線接続ステップを再度実行するステップと
    の各ステップを更に前記コンピュータに実行させる請求項12又は13に記載のコンピュータプログラム。
  16. 前記ダミー配線接続ステップが実行されたときに、前記修正対象配線を前記対象配線として前記タイミング検索ステップを再度実行するステップと、
    前記タイミング検索ステップが再度実行されたときに、前記タイミング違反を表していない場合、前記レイアウトデータを出力装置に出力するステップ
    を更に前記コンピュータに実行させる請求項15に記載のコンピュータプログラム。
  17. 請求項9〜16のいずれかに記載のコンピュータプログラムがインストールされたコンピュータ。
JP2007168218A 2007-06-26 2007-06-26 半導体集積回路の自動遅延調整方法 Expired - Fee Related JP4993362B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007168218A JP4993362B2 (ja) 2007-06-26 2007-06-26 半導体集積回路の自動遅延調整方法
US12/213,372 US8056042B2 (en) 2007-06-26 2008-06-18 Automatic delay adjusting method for semiconductor integrated circuit by using dummy wiring

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007168218A JP4993362B2 (ja) 2007-06-26 2007-06-26 半導体集積回路の自動遅延調整方法

Publications (2)

Publication Number Publication Date
JP2009009247A JP2009009247A (ja) 2009-01-15
JP4993362B2 true JP4993362B2 (ja) 2012-08-08

Family

ID=40162321

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007168218A Expired - Fee Related JP4993362B2 (ja) 2007-06-26 2007-06-26 半導体集積回路の自動遅延調整方法

Country Status (2)

Country Link
US (1) US8056042B2 (ja)
JP (1) JP4993362B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5418341B2 (ja) * 2010-03-19 2014-02-19 富士通株式会社 設計支援プログラム、設計支援装置および設計支援方法
US8370786B1 (en) * 2010-05-28 2013-02-05 Golden Gate Technology, Inc. Methods and software for placement improvement based on global routing
JP5609364B2 (ja) * 2010-07-22 2014-10-22 富士通株式会社 集積回路設計装置、集積回路設計方法、及び集積回路設計プログラム
US8612913B1 (en) * 2012-12-21 2013-12-17 Synopsys, Inc. Automated approach to planning critical signals and busses
TWI493370B (zh) * 2013-03-05 2015-07-21 Univ Nat Chiao Tung 工程變更之保持時間修復方法
US9330224B2 (en) * 2014-04-30 2016-05-03 Oracle International Corporation Method and apparatus for dummy cell placement management
US9569571B1 (en) 2015-12-10 2017-02-14 International Business Machines Corporation Method and system for timing violations in a circuit
US10523188B2 (en) 2016-02-23 2019-12-31 Samsung Electronics Co., Ltd. Semiconductor device
US10318699B1 (en) * 2017-06-13 2019-06-11 Xilinx, Inc. Fixing hold time violations using hold time budgets and slacks of setup times

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0547929A (ja) * 1991-08-14 1993-02-26 Hitachi Micom Syst:Kk 自動配置配線方法
JP2877071B2 (ja) * 1996-04-12 1999-03-31 日本電気株式会社 遅延エラー改善方式
US6637014B2 (en) * 2001-03-06 2003-10-21 Nec Corporation Crosstalk mitigation method and system
JP2003273221A (ja) 2002-03-15 2003-09-26 Fujitsu Ltd 配線の遅延調整を可能にする集積回路のレイアウト方法及びそのプログラム
JP3616611B2 (ja) * 2002-05-14 2005-02-02 株式会社東芝 半導体集積回路装置の設計装置、半導体集積回路の設計方法および半導体集積回路設計プログラム
US7191416B2 (en) * 2003-01-27 2007-03-13 Stmicroelectronics Limited System and method for modifying integrated circuit hold times
US20060168551A1 (en) * 2003-06-30 2006-07-27 Sanyo Electric Co., Ltd. Integrated circuit having a multi-layer structure and design method thereof
US7069528B2 (en) * 2003-08-27 2006-06-27 Nec Electronics America, Inc. System and method for reducing timing violations due to crosstalk in an integrated circuit design
JP2005086153A (ja) * 2003-09-11 2005-03-31 Matsushita Electric Ind Co Ltd 半導体装置の設計方法
JP4346410B2 (ja) * 2003-10-28 2009-10-21 東芝メモリシステムズ株式会社 半導体集積回路の配線設計方法及び半導体集積回路
US7278126B2 (en) * 2004-05-28 2007-10-02 Qualcomm Incorporated Method and apparatus for fixing hold time violations in a circuit design
JP4768500B2 (ja) * 2006-04-17 2011-09-07 株式会社東芝 半導体集積回路の配線レイアウト装置、配線レイアウト方法、及び配線レイアウトプログラム
JP2007335850A (ja) * 2006-05-16 2007-12-27 Matsushita Electric Ind Co Ltd 半導体集積回路、半導体集積回路の配線パターン設計方法および配線パターン設計装置
US7392496B1 (en) * 2006-10-03 2008-06-24 Lsi Corporation Device for avoiding timing violations resulting from process defects in a backfilled metal layer of an integrated circuit

Also Published As

Publication number Publication date
US8056042B2 (en) 2011-11-08
US20090007041A1 (en) 2009-01-01
JP2009009247A (ja) 2009-01-15

Similar Documents

Publication Publication Date Title
JP4993362B2 (ja) 半導体集積回路の自動遅延調整方法
US6598215B2 (en) Datapath design methodology and routing apparatus
US8677292B2 (en) Cell-context aware integrated circuit design
US20060151810A1 (en) Semiconductor device and computer program product for designing the same
US7325218B2 (en) Wiring method, program, and apparatus
US6502229B2 (en) Method for inserting antenna diodes into an integrated circuit design
US20110145775A1 (en) Cell library, layout method, and layout apparatus
JP4272647B2 (ja) 半導体集積回路装置のレイアウト方法及びそのレイアウトプログラム
US6066178A (en) Automated design method and system for synthesizing digital multipliers
JP2006323643A (ja) 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法
US20060242613A1 (en) Automatic floorplanning approach for semiconductor integrated circuit
US7308667B2 (en) LSI physical designing method, program, and apparatus
US20050183053A1 (en) Software product for and method of laying-out semiconductor device
US20040216067A1 (en) Method of determining arrangement of wire in semiconductor intergrated circuit
US7073142B2 (en) Wiring diagram verifying method, program, and apparatus
JP2006155524A (ja) 半導体集積回路の検証方法、検証装置および検証プログラム
US20210264081A1 (en) Methods of designing semiconductor devices, design systems performing the same and methods of manufacturing semiconductor devices using the same
US20120047480A1 (en) Design method of semiconductor integrated circuit and computer readable medium
US9293450B2 (en) Synthesis of complex cells
JP2002217300A (ja) セル配置方法
JP4966838B2 (ja) クロック配線処理装置、クロック配線処理方法、及びプログラム
JP4987787B2 (ja) 配置検証装置
JP2008227035A (ja) スペアセル用のセルデータ、半導体集積回路の設計方法及び半導体集積回路。
JP3130810B2 (ja) 自動配置配線方法
JP2000150659A (ja) 半導体集積回路装置のレイアウト設計方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111221

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

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

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4993362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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