(57)【特許請求の範囲】
【請求項１】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各パスごとに遅延時間を計算し、前記複数のパスのうち前記遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別するパス選別工程と、
前記ネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【請求項２】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なって配線長情報を含むレイアウトデータを作成するレイアウトデータ作成工程と、
前記レイアウトデータに基づいて、前記複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別するパス選別工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【請求項３】
前記パス選別工程に代えて、前記レイアウトデータに基づいて、前記各パスごとに遅延時間を計算し、前記複数のパスのうち前記遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及び前記レイアウトデータに基づいて、前記複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別する工程を含むパス選別工程を備えていることを特徴とする請求項２に記載の半導体集積回路の設計方法。
【請求項４】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なって配線長情報を含むレイアウトデータを作成するレイアウトデータ作成工程と、
前記レイアウトデータに基づいて、前記複数のパスのうち互いに隣接する配線を持つパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別するパス選別工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【請求項５】
前記パス選別工程に代えて、前記レイアウトデータに基づいて、前記各パスごとに遅延時間を計算し、前記複数のパスのうち前記遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及び前記レイアウトデータに基づいて、前記複数のパスのうち互いに隣接する配線を持つパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別する工程を含むパス選別工程を備えていることを特徴とする請求項４に記載の半導体集積回路の設計方法。
【請求項６】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各パスごとに遅延時間を算出する遅延時間算出工程と、
前記ネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、
前記複数のパスのうち、算出した前記遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及び前記レイアウトデータから前記複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別する工程を含むパス選別工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【請求項７】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各パスごとに遅延時間を算出する遅延時間算出工程と、
前記ネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、
前記複数のパスのうち、算出した前記遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及び前記レイアウトデータから前記複数のパスのうち互いに隣接するパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別する工程を含むパス選別工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【請求項８】
複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における前記各素子の動作タイミングを解析するための前記パスに起因する寄生素子を抽出する半導体集積回路の設計方法であって、
前記各素子の接続情報が記述されたネットリストに基づいて、前記各パスごとに遅延時間を算出する遅延時間算出工程と、
前記ネットリストに基づいて、前記各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、
前記複数のパスのうち、算出した前記遅延時間が所定量を超えるパスを遅延解析対象パスとして選別する工程、及び前記レイアウトデータから前記複数のパスのうち互いに隣接するパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスをクロストークの解析対象パスとして選別する工程を含むパス選別工程と、
前記レイアウトデータに基づいて、前記複数のパスから寄生素子を抽出する際に、前記遅延解析対象パスと対応する図形データのうちから寄生素子を抽出するとともに、前記クロストーク解析対象パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えていることを特徴とする半導体集積回路の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、回路素子の動作タイミングの解析を行なうためにレイアウトデータから寄生素子を抽出する半導体集積回路の設計方法に関する。
【０００２】
【従来の技術】
近年、半導体プロセスの微細化に伴って、半導体集積回路を設計する際に、レイアウトデータから各配線の抵抗成分や容量成分等からなる寄生素子を抽出し、抽出した寄生素子に起因する配線ごとの遅延時間を精度良く見積もることにより、高精度なタイミング解析を行なうことが必須となってきている。
【０００３】
従来の半導体集積回路の設計工程における寄生素子抽出方法の一例として、与えられたレイアウトデータから図形パターンを１つずつ抽出し、抽出した図形パターンに関連する配線抵抗又は容量成分を計算し、この計算をすべての図形パターンに対して行なうという方法がある。
【０００４】
【発明が解決しようとする課題】
しかしながら、前記従来の半導体集積回路の設計方法における寄生素子抽出方法は、すべての図形パターンに対して寄生素子の抽出を行なうため、大規模な集積回路の場合には、膨大な数の図形パターンを処理しなければならず、抽出時間が大幅に増加するという問題を有している。
【０００５】
本発明は、前記従来の問題を解決し、タイミング解析用の寄生素子の抽出を短時間に効率良く行なえるようにすることを目的とする。
【０００６】
【課題を解決するための手段】
前記の目的を達成するため、本発明は、半導体集積回路の設計方法を、回路を構成する複数の素子同士を接続するパスのうちタイミング制約が比較的緩く寄生素子として抽出する必要がないパスが存在することに着目し、タイミング解析に必要なパスのみを抽出する構成とする。
【０００７】
具体的に、本発明に係る第１の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各パスごとに遅延時間を計算し、複数のパスのうち遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別するパス選別工程と、ネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。
【０００８】
第１の半導体集積回路の設計方法によると、各素子の接続情報が記述されたネットリストに基づいて、各パスごとに遅延時間を計算し、複数のパスのうち遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別するパス選別工程を備え、ネットリストにより作成されたレイアウトデータに基づいて複数のパスから寄生素子を抽出する際に、あらかじめ抽出した寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出するため、すべてのパスを抽出対象とする必要がなくなるので、素子の動作タイミングの解析処理に必須の寄生素子の抽出処理を効率良く且つ迅速に行なえるようになる。
【０００９】
本発明に係る第２の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なって配線長情報を含むレイアウトデータを作成するレイアウトデータ作成工程と、レイアウトデータに基づいて、複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別するパス選別工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。
【００１０】
第２の半導体集積回路の設計方法によると、ネットリストにより作成されたレイアウトデータに基づいて、複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別するパス選別工程を備え、レイアウトデータに基づいて複数のパスから寄生素子を抽出する際に、あらかじめ抽出した寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出するため、すべてのパスを抽出対象とする必要がなくなるので、素子の動作タイミングの解析処理に必須の寄生素子の抽出処理を効率良く且つ迅速に行なえるようになる。
【００１１】
本発明に係る第３の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なって配線長情報を含むレイアウトデータを作成するレイアウトデータ作成工程と、レイアウトデータに基づいて、複数のパスのうち互いに隣接する配線を持つパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別するパス選別工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。
【００１２】
第３の半導体集積回路の設計方法によると、ネットリストにより作成されたレイアウトデータに基づいて、複数のパスのうち互いに隣接する配線を持つパス同士における配線の並行部分の長さを算出し、その並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別するパス選別工程を備え、レイアウトデータに基づいて複数のパスから寄生素子を抽出する際に、あらかじめ抽出した寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出するため、すべてのパスを抽出対象とする必要がなくなるので、素子の動作タイミングの解析処理に必須の寄生素子の抽出処理を効率良く且つ迅速に行なえるようになる。
【００１３】
第２又は第３の半導体集積回路の設計方法において、パス選別工程が、レイアウトデータに基づいて、複数のパスのうち遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程を含むことが好ましい。このようにすると、配線長が所定の長さを超えないパスであっても、遅延時間が所定量を超えるパスを抽出できるため、タイミング解析の精度を向上させることができる。
【００１４】
本発明に係る第４の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各パスごとに遅延時間を算出する遅延時間算出工程と、ネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、複数のパスのうち、算出した遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及びレイアウトデータから複数のパスごとに一のパスに含まれる配線のそれぞれの配線長を算出し、算出した配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別する工程を含むパス選別工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。
【００１５】
第４の半導体集積回路の設計方法によると、複数のパスのうち、算出した遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及びレイアウトデータから複数のパスごとに該パスに含まれる配線の配線長を算出しその配線長が所定の長さを超えるパスを寄生素子抽出パスとして選別する工程を含むパス選別工程を備え、ネットリストにより作成されたレイアウトデータに基づいて複数のパスから寄生素子を抽出する際に、あらかじめ抽出した寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出するため、すべてのパスを抽出対象とする必要がなくなるので、素子の動作タイミングの解析処理に必須の寄生素子の抽出処理を効率良く且つ迅速に行なえるようになる。
【００１６】
本発明に係る第５の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各パスごとに遅延時間を算出する遅延時間算出工程と、ネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、複数のパスのうち、算出した遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及びレイアウトデータから複数のパスのうち互いに隣接するパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別する工程を含むパス選別工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。
【００１７】
第５の半導体集積回路の設計方法によると、複数のパスのうち、算出した遅延時間が所定量を超えるパスを寄生素子抽出パスとして選別する工程、及びレイアウトデータから複数のパスのうち互いに隣接するパス同士における配線の並行部分の長さを算出しその並行部分の長さが所定の長さを超える並行パスを寄生素子抽出パスとして選別する工程を含むパス選別工程を備え、レイアウトデータに基づいて複数のパスから寄生素子を抽出する際に、あらかじめ抽出した寄生素子抽出パスと対応する図形データのうちから寄生素子を抽出するため、すべてのパスを抽出対象とする必要がなくなるので、素子の動作タイミングの解析処理に必須の寄生素子に抽出処理を効率良く且つ迅速に行なえるようになる。
【００１８】
本発明に係る第６の半導体集積回路の設計方法は、複数の素子と該複数の素子同士を接続する複数のパスとを有する半導体集積回路における各素子の動作タイミングを解析するためのパスに起因する寄生素子を抽出する半導体集積回路の設計方法を対象とし、各素子の接続情報が記述されたネットリストに基づいて、各パスごとに遅延時間を算出する遅延時間算出工程と、ネットリストに基づいて、各素子ごとに図形パターンを作成すると共に、作成した図形パターンごとにレイアウトを行なってレイアウトデータを作成するレイアウトデータ作成工程と、複数のパスのうち、算出した遅延時間が所定量を超えるパスを遅延解析対象パスとして選別する工程、及びレイアウトデータから複数のパスのうち互いに隣接するパス同士における配線の並行部分の長さを算出し、算出した並行部分の長さが所定の長さを超える並行パスをクロストークの解析対象パスとして選別する工程を含むパス選別工程と、レイアウトデータに基づいて、複数のパスから寄生素子を抽出する際に、遅延解析対象パスと対応する図形データのうちから寄生素子を抽出するとともに、クロストーク解析対象パスと対応する図形データのうちから寄生素子を抽出する寄生素子抽出工程とを備えている。このようにすると、パスの遅延時間に加え、隣接配線間におけるクロストーク雑音を生じさせるパスをも抽出できるようになるため、集積回路のタイミング解析処理（シミュレーション処理）を実際の回路の動作により近づけることができる。
【００１９】
【発明の実施の形態】
（第１の実施形態）
本発明の第１の実施形態について図面を参照しながら説明する。
【００２０】
図１は本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。ここでは、ネットリスト等の入力データやレイアウトデータ等の出力データは、いわゆるコンピュータ（ＣＰＵ）により制御される設計支援装置が扱えるファイル形式を有することを想定している。
【００２１】
まず、図１に示すように、ネットリスト入力工程ＳＴ００１において、動作タイミングの解析（シミュレーション）処理の対象とする半導体集積回路を構成する、例えば論理素子からなる複数の素子同士の接続関係が記述されたネットリストを読み込む。一般に、ネットリストには、素子の端子間の接続関係のみが記述されており、配線長や配線位置（レイアウト）は記述されていない。
【００２２】
次に、レイアウトデータ作成工程ＳＴ００２において、読み込まれたネットリストに記述された各素子の接続情報に基づいて、各素子を該素子の配置（レイアウト）領域に物理的な配置及び配線を行なって、レイアウトデータを作成する。続いて、レイアウトデータ出力工程ＳＴ００３において、作成したレイアウトデータを適当なファイルとして出力する。
【００２３】
レイアウトデータ作成工程ＳＴ００１及びレイアウトデータ出力工程ＳＴ００２と並行してパス選別工程ＳＴ００４を設ける。パス選別工程ＳＴ００４は、ネットリストにより規定され、信号の通路となる複数のパスから、各配線の寄生抵抗又は寄生容量等の寄生成分からなる寄生素子の抽出を行なうパスのみを選別する。これにより、寄生容量等をネットリストに含まれるすべてのパスに対して算出すると、膨大な処理時間が必要となり、現実的な時間内に処理を終えられなくるという事態を回避できるようになる。
【００２４】
以下、パス選別工程ＳＴ００４の詳細を説明する。
【００２５】
まず、パス選択工程ＳＴ１０１においてネットリストに含まれる複数のパスのうちの１つを選択し、次の遅延時間計算工程ＳＴ１０２において、選択したパスの遅延時間を計算する。この工程ＳＴ１０２において計算される遅延時間は、後工程における寄生素子を抽出するパスの選別のための概算であって、例えば、遅延時間の要因をトランジスタの場合ではゲート遅延とし、配線の場合には仮配線の遅延として判断しており、ゲート遅延及び仮配線の遅延の計算量は共に少ない。
【００２６】
次に、遅延量判定工程ＳＴ１０３において、遅延時間計算工程ＳＴ１０２において算出された予備的な遅延量と所定の遅延量であるしきい値とを比較する。このしきい値は、信号の遅延時間によって解析対象とする回路の動作がエラーとなる値よりもやや小さい値に設定する。これにより、算出された遅延量が十分に小さく寄生素子の抽出が必要でないと判定されるパスと、算出された遅延量ではエラーが生じない程度の遅延量を有し、さらに詳細な遅延量の見積りを必要とするパスとに選別できる。続いて、抽出パスファイル出力工程ＳＴ１０４において、しきい値以上の遅延量を有する寄生素子抽出パスとしての抽出対象パスを抽出パスファイルとして出力する。
【００２７】
以上の処理をネットリストに含まれるすべてのパスに対して行なう。
【００２８】
次に、レイアウトデータ作成工程ＳＴ００２により作成されたレイアウトデータと、パス選別工程ＳＴ００４により作成された抽出パスファイルとを用いて寄生素子抽出工程ＳＴ００５の処理を行なう。
【００２９】
以下、寄生素子抽出工程ＳＴ００５の詳細を説明する。
【００３０】
まず、レイアウトデータ読込工程ＳＴ１０５において、前の工程ＳＴ００３で出力されたレイアウトデータを読み込む。続いて、抽出パスファイル読込工程ＳＴ１０６において、前の工程ＳＴ１０４で出力された抽出パスファイルから抽出対象パスを読み込む。従って、寄生素子抽出工程ＳＴ００５の前に、レイアウトデータ及び抽出パスファイルが作成されておればよく、レイアウトデータ作成工程ＳＴ００２とパス選別工程ＳＴ００４とは並列処理であって、必ずしも同時に処理する必要はない。
【００３１】
次に、寄生素子抽出繰返工程ＳＴ１０７において、レイアウトデータに含まれるすべての図形パターン（ポリゴンデータ）に対して繰返処理を行なう。まず、図形選択工程ＳＴ１０８において、レイアウトデータに含まれる複数のポリゴンデータうちの１つを選択する。ここで、図形パターンが配線を表わす図形パターン及び素子を表わす図形パターンからなる場合には、これら複数のポリゴンデータを一のデータとして選択してもよい。
【００３２】
次に、抽出判定工程ＳＴ１０９において、選択された図形パターンが抽出対象パスに含まれる図形パターンであるか否かを判定する。選択された図形パターンが抽出対象パスに含まれる場合には、寄生素子抽出工程ＳＴ１１０において、ＬＰＥ（layout parameter extraction)法等を用いて、選択された図形パターンを含む抽出対象パスから寄生素子を抽出する。従って、選択された図形パターンが抽出対象パスに含まれない場合には、寄生素子抽出工程ＳＴ１１０が省略されるため、寄生素子抽出工程ＳＴ１１０に要する処理時間を短縮することができる。
【００３３】
次に、寄生素子出力工程ＳＴ００６において、寄生素子抽出工程ＳＴ１１０において抽出された寄生素子をファイルとして出力する。
【００３４】
以下、実際の回路を例にとって寄生素子の抽出方法を説明する。
【００３５】
図２は本実施形態に係る寄生素子抽出方法を説明するためのネットリストを論理回路図として表わしている。図２において、符号１１Ａ、１２Ａ及び１３Ａは各パスの始点を表わし、符号１４Ａ、１５Ａ及び１６Ａは各パスの終点を表わしている。図２に示すネットリストには、７つのパスが含まれている。ここで、パスは該パスの始点と終点とを含むネットの集まりとして構成され、電気的な信号の流れを表わしている。
【００３６】
第１のパスは、第１の始点１１Ａと機能素子である第１のインバータ素子１７Ａの入力端子とが第１のネット１８Ａにより接続され、第１のインバータ素子１７Ａの出力端子と第１のＮＡＮＤ素子１９Ａの一方の入力端子とが第２のネット２０Ａにより接続され、第１のＮＡＮＤ素子１９Ａの出力端子と第２のインバータ素子２１Ａの入力端子とが第３のネット２２Ａにより接続され、第２のインバータ素子２１Ａの出力端子と第１の終点１４Ａとが第４のネット２３Ａにより接続されて構成されている。
【００３７】
第２のパスは、第２の始点１２Ａと第３のインバータ素子２４Ａの入力端子とが第５のネット２５Ａにより接続され、第３のインバータ素子２４Ａの出力端子と第２のＮＡＮＤ素子２６Ａの一方の入力端子とが第６のネット２７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第５のインバータ素子３０Ａとが第８のネット３１Ａにより接続され、第５のインバータ素子３０Ａの出力端子と第１のＮＡＮＤ素子１９Ａの他方の入力端子とが第９のネット３２Ａにより接続され、第１のＮＡＮＤ素子１９Ａの出力端子と第２のインバータ素子２１Ａの入力端子とが第３のネット２２Ａにより接続され、第２のインバータ素子２１Ａの出力端子と第１の終点１４Ａとが第４のネット２３Ａにより接続されて構成されている。
【００３８】
第３のパスは、第２の始点１２Ａと第３のインバータ素子２４Ａの入力端子とが第５のネット２５Ａにより接続され、第３のインバータ素子２４Ａの出力端子と第２のＮＡＮＤ素子２６Ａの一方の入力端子とが第６のネット２７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第６のインバータ素子３３Ａとが第８のネット３１Ａにより接続され、第６のインバータ素子３３Ａの出力端子と第２の終点１５Ａとが第１０のネット３４Ａにより接続されて構成されている。
【００３９】
第４のパスは、第２の始点１２Ａと第３のインバータ素子２４Ａの入力端子とが第５のネット２５Ａにより接続され、第３のインバータ素子２４Ａの出力端子と第２のＮＡＮＤ素子２６Ａの一方の入力端子とが第６のネット２７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第７のインバータ素子３５Ａとが第８のネット３１Ａにより接続され、第７のインバータ素子３５Ａの出力端子と第３の終点１６Ａとが第１１のネット３６Ａにより接続されて構成されている。
【００４０】
第５のパスは、第３の始点１３Ａと第２のＮＡＮＤ素子２６Ａの他方の入力端子とが第１２のネット３７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第５のインバータ素子３０Ａとが第８のネット３１Ａにより接続され、第５のインバータ素子３０Ａの出力端子と第１のＮＡＮＤ素子１９Ａの他方の入力端子とが第９のネット３２Ａにより接続され、第１のＮＡＮＤ素子１９Ａの出力端子と第２のインバータ素子２１Ａの入力端子とが第３のネット２２Ａにより接続され、第２のインバータ素子２１Ａの出力端子と第１の終点１４Ａとが第４のネット２３Ａにより接続されて構成されている。
【００４１】
第６のパスは、第３の始点１３Ａと第２のＮＡＮＤ素子２６Ａの他方の入力端子とが第１２のネット３７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第６のインバータ素子３３Ａとが第８のネット３１Ａにより接続され、第６のインバータ素子３３Ａの出力端子と第２の終点１５Ａとが第１０のネット３４Ａにより接続されて構成されている。
【００４２】
第７のパスは、第３の始点１３Ａと第２のＮＡＮＤ素子２６Ａの他方の入力端子とが第１２のネット３７Ａにより接続され、第２のＮＡＮＤ素子２６Ａの出力端子と第４のインバータ素子２８Ａの入力端子とが第７のネット２９Ａにより接続され、第４のインバータ素子２８Ａの出力端子と第７のインバータ素子３５Ａとが第８のネット３１Ａにより接続され、第７のインバータ素子３５Ａの出力端子と第３の終点１６Ａとが第１１のネット３６Ａにより接続されて構成されている。
【００４３】
図３は以上説明した第１のパス（パス１）から第７のパス（パス７）を列挙したパスリストを示している。インバータ素子等の機能素子もパスに分類することができ、例えば、第１のインバータ１７Ａはパス１に含まれる。
【００４４】
図４はレイアウトデータ作成工程ＳＴ００２により作成されたレイアウトデータであって、図２に示す論理回路と対応する物理的な回路図を表わしている。図４において、例えば、図形パターン１１Ｂは図２に示す第１の始点１１Ａと対応するシンボルを表わし、図形パターン１７Ｂは図２に示す第１のインバータ素子１７Ａと対応するセルを表わし、図形パターン１８Ｂは図２に示す第１のネット１８Ａと対応する配線を表わしている。このようにレイアウトデータはポリゴンデータの集合体からなる。
【００４５】
以下、図１に示すパス選別工程ＳＴ００４について図面を参照しながら詳細に説明する。
【００４６】
まず、図１に示すパス選択工程ＳＴ１０１において、図３に示すパスリストに含まれる複数のパスのうちの１つ、例えば、パス１から順次選択する。次に、遅延時間計算工程ＳＴ１０２において、選択したパス１に対して第１のネット１８Ａから第４のネット２３Ａまで信号が伝搬する際の遅延時間を計算する。続いて、遅延量判定工程ＳＴ１０３において、動作エラーが起きる遅延時間よりもやや少ない遅延量で定義されたしきい値と比較し、該しきい値以上の遅延量であると判定された場合には、抽出パスファイル出力工程ＳＴ１０４において、選択したパス名を抽出対象パスとして選別し抽出パスファイルに出力する。この一連の処理をパス７まで行ない、その結果、図５に示すように、抽出対象パスとしてしきい値以上の遅延量を持つパス２が登録された抽出パスファイルが作成されて出力される。
【００４７】
次に、図１に示す寄生素子抽出工程ＳＴ００５について図面を参照しながら説明する。
【００４８】
まず、図１に示すレイアウトデータ読込工程ＳＴ１０５において、図４に示すレイアウトデータを読み込み、続いて、抽出パスファイル読込工程ＳＴ１０６において、抽出パスファイルから抽出対象パスであるパス２を読み込み、それぞれ装置の主記憶に保持する。次に、図形選択工程ＳＴ１０８において、レイアウトデータから、例えば図４に示す図形パターン２５Ｂを選択し、抽出判定工程ＳＴ１０９において、選択された図形パターン２５Ｂが抽出対象パスに含まれる図形パターンであるか否かを判定する。図形パターン２５Ｂは抽出対象パス２に含まれる第５のネット２５Ａと対応するため、次の寄生素子抽出工程ＳＴ１１０において、図形パターン２５Ｂから所定の手法を用いて寄生素子を抽出する。次に、図形パターン３７Ｂが選択された場合には、抽出パスファイルに図形パターン３７Ｂと対応するパスが登録されていないため、寄生素子抽出処理が行なわれない。
【００４９】
図６はレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路を表わしている。図６に示すように、例えば、パス２に含まれる第５のネット２５Ａには、寄生抵抗２５ａ及び寄生容量２５ｂからなる寄生素子２５Ｃが付加されている。
【００５０】
以上説明したように、本実施形態によると、ネットリストから作成される複数のパスのうち、しきい値以上の遅延量が算出されたパスを抽出対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、該レイアウトデータに含まれるすべての図形パターンではなく、抽出対象パスに含まれる図形に対してのみ寄生素子抽出処理を行なうので、寄生素子の抽出処理時間を大幅に短縮することができる。
【００５１】
なお、本実施形態は、図１に示す抽出パスファイル出力工程ＳＴ１０４において抽出対象をパスとしたが、これに限らず、パスを構成するネットを抽出対象とする抽出ネットファイルを作成してもよい。この場合には、抽出判定工程ＳＴ１０９において、選択した図形が抽出対象のネットを構成する図形か否かを判定する。ここで、抽出ネットファイルの形式は適当でよく、例えば、図５に示す抽出パスファイルにおける『パス２』の記述を除いた形式でよい。
【００５２】
（第２の実施形態）
以下、本発明の第２の実施形態について図面を参照しながら説明する。
【００５３】
図７は本発明の第２の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図７において、図１に示す構成要素と同一の構成要素には同一の符号を付している。
【００５４】
まず、図７に示すように、ネットリスト入力工程ＳＴ００１において、タイミングシミュレーションの対象とする半導体集積回路を構成する複数の素子について記述されたネットリストを読み込む。
【００５５】
次に、レイアウトデータ作成工程ＳＴ００２において、読み込まれたネットリストに記述された各素子の接続情報に基づいて、レイアウト領域に各素子の物理的な配置及び配線を行なって、レイアウトデータを作成する。
【００５６】
次に、配線長出力工程ＳＴ０１０において、作成されたレイアウトデータから配線と対応する図形パターンを抽出し、抽出した図形パターンから配線長を算出して配線長情報として出力する。配線の配線長は信号の遅延に密接に関係し、配線が長くなればなる程、寄生素子の影響が遅延量に大きく作用することとなる。その後、レイアウトデータ出力工程ＳＴ００３において、作成したレイアウトデータを出力する。
【００５７】
次に、パス選別工程ＳＴ０１１を説明する。
【００５８】
まず、パス選択工程ＳＴ１０１においてネットリスト又はパスリストに含まれる複数のパスのうちの１つを選択する。
【００５９】
次に、最大配線長抽出工程ＳＴ１１１において、例えば、選択された一のパスを対象とし、レイアウトデータの配線と対応する各図形データから、配線長出力工程ＳＴ０１０により作成された配線長情報に基づいて、一のパスに含まれる複数の配線のうちの最大又は最大に準ずる配線長を抽出する。
【００６０】
次に、配線長判定工程ＳＴ１１２において、抽出された配線の配線長を、例えば動作エラーが生じる配線長よりもやや短い所定のしきい値と比較する。このしきい値以上の配線長を持つパスは、信号の遅延に関して寄生素子の影響を大きく受けると考えられるため、しきい値以上の配線長を持つ配線から寄生素子を抽出してより詳細な解析を行なうことが求められる。次に、ネットリストに含まれるすべてのパスに対して、最大配線長抽出工程ＳＴ１１１及び配線長判定工程ＳＴ１１２の処理を行なう。
【００６１】
その後は、第１の実施形態と同様に、寄生素子抽出工程ＳＴ００５及び寄生素子出力工程ＳＴ００６における各処理を行なう。
【００６２】
以下、図２に示す論理回路図及び図４に示すレイアウトデータを参照しながらパス選別工程ＳＴ０１１を説明する。
【００６３】
図８は図７に示す配線長出力工程ＳＴ０１０により出力された配線長情報を示している。例えば、第１のネット１８Ａと対応する図形パターン（配線）１８Ｂの配線長は２０μｍであり、第２のネット２０Ａと対応する図形パターン（配線）２０Ｂの配線長は７０μｍであることを表わしている。
【００６４】
ここで、パス選択工程ＳＴ１０１においてパス１が選択されたとする。図３のパスリストに示すように、パス１には第１のネット１８Ａ、第２のネット２０Ａ、第３のネット２２Ａ及び第４のネット２３Ａが含まれている。
【００６５】
次の最大配線長抽出工程ＳＴ１１１において、図８に示す各パスのネットと対応した図形パターンの配線長があらかじめ算出されている配線長情報を検索することにより、パス１に含まれる配線の最大値として第２のネット２０Ａと対応する配線の配線長である７０μｍが抽出される。
【００６６】
次に、配線長判定工程ＳＴ１１２において、最大配線長のしきい値を例えば５０μｍとすると、第２のネット２０Ａと対応する配線２０Ｂの配線長が７０μｍであり判定結果が真となるため、抽出パスファイル出力工程ＳＴ１０４においてパス１が抽出対象パスとして抽出パスファイルに出力される。
【００６７】
他のパス２〜パス７に対しても同様に、パス選別工程ＳＴ０１１を行なうと、パス２〜パス７の各配線の配線長はいずれも５０μｍよりも小さいため、図９に示すようにパス１のみを含む抽出パスファイルが得られる。
【００６８】
図１０は、レイアウトデータから抽出された、配線長がしきい値以上の配線を含むパスの寄生素子と図２に示す論理回路とを併合した回路を表わしている。図１０に示すように、例えば、パス１に含まれる第１のネット１８Ａには、寄生抵抗１８ａ及び寄生容量１８ｂからなる寄生素子１８Ｃが付加されている。
【００６９】
このように、本実施形態によると、ネットリストから作成される複数のパスのうち、所定のしきい値以上の配線長が算出されたパスを抽出対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、すべての図形パターンではなく、抽出対象パスに含まれる配線図形に対してのみ寄生素子抽出処理を行なうので、寄生素子の抽出処理時間を大幅に短縮することができる。
【００７０】
なお、最大配線長抽出工程ＳＴ１１１において、各パスごとの配線長の総和を算出してもよい。但し、この場合には、最大配線長のしきい値を新たに設定し直す必要がある。
【００７１】
（第３の実施形態）
以下、本発明の第３の実施形態について図面を参照しながら説明する。
【００７２】
図１１は本発明の第３の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図１１において、図７に示す構成要素と同一の構成要素には同一の符号を付している。
【００７３】
まず、図１１に示すように、ネットリスト入力工程ＳＴ００１において、タイミングシミュレーションの対象とする半導体集積回路を構成する複数の素子について記述されたネットリストを読み込む。
【００７４】
次に、レイアウトデータ作成工程ＳＴ００２において、読み込まれたネットリストに記述された各素子の接続情報に基づいて、レイアウト領域に各素子の物理的な配置及び配線を行なって、レイアウトデータを作成する。
【００７５】
次に、並行長出力工程ＳＴ０１２において、作成されたレイアウトデータから配線と対応する図形パターンのうち互いに隣接する図形パターンを抽出し、抽出された図形パターンの並行部分の並行長を算出して並行長情報として出力する。配線の並行長は、隣接する配線同士が相互に影響を及ぼし合い、信号の遅延量を増大させる要因となるため、配線の並行長が長くなればなる程遅延に対する影響が大きくなる。その後、レイアウトデータ出力工程ＳＴ００３において、作成したレイアウトデータを出力する。
【００７６】
次に、パス選別工程ＳＴ０１３を説明する。
【００７７】
まず、パス選択工程ＳＴ１０１においてネットリストに含まれる複数のパスのうちの１つを選択する。
【００７８】
次に、最大並行長抽出工程ＳＴ１１３において、例えば、選択された一のパスを対象とし、レイアウトデータの配線と対応する各図形データから、並行長出力工程ＳＴ０１２により作成された並行長情報に基づいて、一のパスに含まれる複数の配線のうち、互いに隣接する配線同士における配線の並行部分の長さを抽出する。
【００７９】
次に、並行長判定工程ＳＴ１１４において、抽出された配線の並行長を、例えば動作エラーが生じる並行長よりもやや短い所定のしきい値と比較する。しきい値以上の並行長を持つ一対のパスは、信号の遅延に関して寄生素子の影響を大きく受けると考えられるため、しきい値以上の並行長を持つ一対の配線から寄生素子を抽出してより詳細な解析を行なうことが求められる。次に、ネットリストに含まれるすべてのパスに対して、最大並行長抽出工程ＳＴ１１３及び並行長判定工程ＳＴ１１４の処理を行なう。
【００８０】
その後、第２の実施形態と同様に、寄生素子抽出工程ＳＴ００５及び寄生素子出力工程ＳＴ００６における各処理を行なう。
【００８１】
以下、図２に示す論理回路図及び図４に示すレイアウトデータを用いる場合のパス選別工程ＳＴ０１３を説明する。
【００８２】
ここで、配線の並行長を定義する。図１２は配線の一部が互いに隣接するように配置された第１の配線４１及び第２の配線４２を表わしている。図１２に示すように、互いに、間隔Ｓをおいて隣接する配線４１、４２における並行に延びる並行部分の長さを並行長Ｌとする。従って、並行部分は必ずしも数学的な意味での平行でなくてもよい。
【００８３】
図１３は図１１に示す並行長出力工程ＳＴ０１２により出力された並行長情報を示している。例えば、パス１の第１のネット１８Ａと対応する図形パターン（配線）１８Ｂと、パス２の第５のネット２５Ａと対応する図形パターン（配線）２５Ｂとの間隔Ｓは１μｍで並行長Ｌは５μｍであることを表わしている。
【００８４】
ここで、パス選択工程ＳＴ１０１においてパス１が選択されたとする。図３のパスリストに示すように、パス１には第１のネット１８Ａ、第２のネット２０Ａ、第３のネット２２Ａ及び第４のネット２３Ａが含まれている。図１３に示す並行長情報に示すように、パス１を含む情報は、項目番号の０００１、０００５、０００８、０００９及び００１０である。これにより、パス１においては、項目番号００１０の並行長Ｌ＝２５μｍが最大値を示すことが分かる。
【００８５】
次に、最大並行長抽出工程ＳＴ１１４において、図１３に示す各パスのネットと対応する図形パターン同士の並行長があらかじめ算出されている並行長情報を検索することにより、パス１に含まれる並行長の最大値として２５μｍが抽出される。
【００８６】
次に、並行長判定工程ＳＴ１１４において、最大並行長のしきい値を例えば２０μｍとすると判定結果が真となるため、抽出パスファイル出力工程ＳＴ１０４においてパス１が抽出対象パスとして抽出パスファイルに出力される。続いて、他のパスに対しても同様の処理を行なうと、パス１と隣接するパスを含めて図１４に示すように、パス１、２、３、５及び６を含む抽出パスファイルが作成される。
【００８７】
図１５は、レイアウトデータから抽出された、互いに隣接する配線の並行部分の長さがしきい値以上の配線を含むパスの寄生素子と図２に示す論理回路とを併合した回路を表わしている。図１５に示すように、例えば、パス１に含まれる第１のネット１８Ａには、寄生抵抗１８ａ及び寄生容量１８ｂからなる寄生素子１８Ｃが付加され、パス１と隣接するパス２に含まれる第５のネット２５Ａには、寄生抵抗２５ａ及び寄生容量２５ｂからなる寄生素子２５Ｃが付加されている。
【００８８】
以上説明したように、本実施形態によると、ネットリストから作成される複数のパスのうち互いに隣接する配線同士における並行部分の長さがしきい値以上である並行パスを抽出対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、すべての図形パターンではなく、抽出対象パスに含まれる配線図形に対してのみ寄生素子抽出処理を行なうので、寄生素子の抽出処理時間を大幅に短縮することができる。
【００８９】
なお、最大並行長抽出工程ＳＴ１１３において、各パスごとに含まれる配線の並行長の総和を算出してもよい。この場合には、最大並行長のしきい値を新たに設定し直す必要がある。
【００９０】
（第４の実施形態）
以下、本発明の第４の実施形態について図面を参照しながら説明する。
【００９１】
図１６は本発明の第４の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図１６において、図７に示す構成要素と同一の構成要素には同一の符号を付すことにより説明を省略する。図１６に示すように、本実施形態に係るパス選別工程ＳＴ０１４は、ネットリストの各パスごとに行なう、遅延量判定工程ＳＴ１０３及び配線長判定工程ＳＴ１１２を備えている。これにより、各パスが信号の遅延量がしきい値に満たず且つ配線長がしきい値以上の配線を含む場合、又は配線長がしきい値に満たず且つ遅延量がしきい値以上の配線を含む場合でも、該パスは抽出対象パスとして選別されるため、後工程の寄生素子抽出工程ＳＴ００５において、寄生素子の抽出の漏れが少なくなる。従って、適切なタイミング解析処理を従来よりも短時間で行なえるようになる。
【００９２】
図２に示す論理回路図を例に採ると、図１７に示すように、抽出パスファイルには、遅延量判定工程ＳＴ１０３においてパス２が選別され、配線長判定工程ＳＴ１１２においてパス１が選別される。
【００９３】
図１８は、レイアウトデータから抽出された、信号の遅延量がしきい値以上のパス又は配線長がしきい値以上の配線を含むパスの寄生素子と図２に示す論理回路とを併合した回路を表わしている。図１８に示すように、例えば、パス１に含まれる第１のネット１８Ａには、寄生抵抗１８ａ及び寄生容量１８ｂからなる寄生素子１８Ｃが付加され、パス１と隣接するパス２に含まれる第５のネット２５Ａには、寄生抵抗２５ａ及び寄生容量２５ｂからなる寄生素子２５Ｃが付加されている。
【００９４】
以上説明したように、本実施形態によると、ネットリストから作成される複数のパスのうち、遅延量がしきい値以上のパス又は配線長がしきい値以上の配線を含むパスを抽出対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、すべての図形パターンではなく、抽出対象パスに含まれる配線図形に対してのみ寄生素子抽出処理を行なうので、寄生素子の抽出の漏れが少なくり、且つ、寄生素子の抽出の処理時間を大幅に短縮することができる。
【００９５】
なお、最大配線長抽出工程ＳＴ１１１において、各パスごとの配線長の総和を算出してもよい。但し、この場合には、最大配線長のしきい値を新たに設定し直す必要がある。
【００９６】
（第４の実施形態の一変形例）
以下、本発明の第４の実施形態の一変形例について図面を参照しながら説明する。
【００９７】
図１９は本発明の第４の実施形態の一変形例に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図１９に示すように、遅延量判定工程ＳＴ１０３の後に、パスに含まれる配線長がしきい値以上の配線を判定することにより寄生素子の抽出対象するのではなく、第３の実施形態のように、互いに隣接する配線における並行部分の長さを選別の判定に用いる最大並行長抽出工程ＳＴ１１３及び並行長判定工程ＳＴ１１４を設けている。従って、本変形例において、図２に示す論理回路図及び図４に示すレイアウトデータを用いると、図１４に示す隣接パス間の並行長情報が反映された抽出パスファイルが生成される。
【００９８】
このように本変形例によると、ネットリストから作成される複数のパスのうち、遅延量がしきい値以上のパス又は互いに隣接する配線の並行部分の長さがしきい値以上の配線を含むパスを抽出対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、すべての図形パターンではなく、抽出対象パスに含まれる配線図形に対してのみ寄生素子抽出処理を行なうので、寄生素子の抽出の漏れが少なくなり、且つ、寄生素子の抽出の処理時間を大幅に短縮することができる。
【００９９】
（第５の実施形態）
以下、本発明の第５の実施形態について図面を参照しながら説明する。
【０１００】
図２０は本発明の第５の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図２０において、図１又は図７に示す構成要素と同一の構成要素には同一の符号を付している。
【０１０１】
図１６に示す第４の実施形態との相違点は、第４の実施形態のパス選別工程ＳＴ０１４において、レイアウトデータが作成された後、各パスごとに遅延時間を計算する構成を採るが、本実施形態においては、レイアウトデータの作成処理と並行して各パスの遅延時間を算出する構成を採る点である。
【０１０２】
具体的には、図２０に示すように、ネットリスト入力工程ＳＴ００１の後に、遅延時間算出工程ＳＴ０１６において、入力されたネットリストを用いて各パスごとに遅延時間を計算し、次の遅延テーブル出力工程ＳＴ０１７において計算結果を遅延テーブルに出力する。図２１は図２に示す論理回路を対象とした場合の遅延テーブルの一例を示しており、例えば、パス１における第１の始点から第１の終点までの遅延時間が１．２ｎｓであることを表わしている。なお、遅延テーブルは内部記憶に出力してもよく、またファイルとして外部記憶に出力してもよい。
【０１０３】
遅延テーブル出力工程ＳＴ０１７と並行して、レイアウトデータ作成工程ＳＴ００２、配線長出力工程ＳＴ０１０及びレイアウトデータ出力工程ＳＴ００３を設ける。従って、遅延テーブルとレイアウトデータとが揃った後に、本実施形態のパス選別工程ＳＴ０１８に移る。
【０１０４】
パス選別工程ＳＴ０１８のパス選択工程ＳＴ１０１において、ネットリスト又はパスリストに含まれる複数のパスのうちの１つを選択した後、遅延時間取得工程ＳＴ１１５において、あらかじめ作成しておいた遅延テーブルから、選択されたパスの遅延時間を取得する。続いて、遅延量判定工程ＳＴ１０３において、遅延量のしきい値を２．０ｎｓとすると、図２１に示す遅延テーブルからパス２が抽出対象パスとして選別され、次の、最大配線長抽出工程ＳＴ１１１及び配線長判定工程ＳＴ１１２において、図８に示す配線長情報からパス１が抽出対象パスとして選別されることとなる。
【０１０５】
このように、本実施形態によると、パス選別工程ＳＴ０１８において、各パスごとに遅延時間を計算するのではなく、レイアウトデータ作成時に並行して各パスの遅延時間を計算しておくため、パス選別工程ＳＴ０１８においては遅延テーブルを参照するだけでよく、従ってパス選別の処理時間を短縮することができる。
【０１０６】
なお、最大配線長抽出工程ＳＴ１１１において、各パスごとの配線長の総和を算出してもよい。但し、この場合には、最大配線長のしきい値を新たに設定し直す必要がある。
【０１０７】
（第５の実施形態の一変形例）
以下、本発明の第５の実施形態の一変形例について図面を参照しながら説明する。
【０１０８】
図２２は本発明の第５の実施形態の一変形例に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図２２に示すように、遅延量判定工程ＳＴ１０３の後に、パスに含まれる配線長がしきい値以上の配線を判定することにより寄生素子の抽出対象するのではなく、第３の実施形態のように、互いに隣接する配線における並行部分の長さを選別の判定に用いる最大並行長抽出工程ＳＴ１１３及び並行長判定工程ＳＴ１１４を設けている。
【０１０９】
従って、本変形例によると、互いに隣接する配線の影響を考慮した抽出パスの作成が可能となる。
【０１１０】
（第６の実施形態）
以下、 以下、本発明の第６の実施形態について図面を参照しながら説明する。
【０１１１】
図２３及び図２４は本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図２３及び図２４において、図２２に示す構成要素と同一の構成要素には同一の符号を付している。
【０１１２】
本実施形態は、互いに隣接する配線間に生じるクロストーク雑音を解析するパスをもパス選別工程において選別することを特徴とする。
【０１１３】
図２３及び図２４に示すように、本実施形態に係る抽出方法は、第５の実施形態と同様のネットリストに基づく遅延テーブル及びレイアウトデータを作成した後に、寄生素子の抽出対象を選別するパス選別工程ＳＴ０２０と、選別されたパスを対象として寄生素子の抽出を行なう寄生素子抽出工程ＳＴ０２１とを備えている。
【０１１４】
パス選別工程ＳＴ０２０を説明する。
【０１１５】
まず、図２３に示すように、遅延量判定工程ＳＴ１０３において、選択されたパスを遅延テーブル内で検索し、検索されたパスの遅延量がしきい値以上であると判定された場合には、遅延解析パスファイル出力工程ＳＴ１２１において該パスを遅延解析対象パスとして遅延解析パスファイルに出力する。
【０１１６】
次に、最大並行長算出工程ＳＴ１２２において、選択されたパスと該パスと隣接するパスとの並行部分の並行長を算出する。算出されたパスの並行長がしきい値以上であると判定された場合には、クロストーク解析パスファイル出力工程ＳＴ１２３において該パスをクロストーク解析対象パスとしてクロストーク解析パスファイルに出力する。
【０１１７】
以上の処理をすべてのネットリストに対して行なう。
【０１１８】
次に、寄生素子抽出工程ＳＴ０２１を説明する。
【０１１９】
まず、図２４に示すように、レイアウトデータ読込工程ＳＴ１０５、遅延解析パスファイル読込工程ＳＴ１２３及びクロストーク解析パスファイル読込工程ＳＴ１２４において、レイアウトデータ、遅延解析パスファイル及びクロストーク解析パスファイルを順次読み込み、装置の主記憶に保持する。但し、データの読込順序は任意でよい。
【０１２０】
次に、読み込まれたレイアウトデータの図形データごとに繰り返し処理ＳＴ１２５を行なう。
【０１２１】
すなわち、遅延対象図形判定工程ＳＴ１２６において遅延に関する図形データか否かを判定し、判定が真の場合には寄生素子抽出工程ＳＴ１２７において選択中のパスから寄生素子を抽出する。
【０１２２】
次に、クロストーク対象図形判定工程ＳＴ１２８においてクロストークに関する図形データか否かを判定し、判定が真の場合には隣接配線相互作用による寄生素子抽出工程ＳＴ１２９において選択中のパスからクロストーク雑音を生じさせる寄生素子を抽出する。
【０１２３】
以下、図２に示す論理回路図及び図４に示すレイアウトデータを用いる場合のパス選別工程ＳＴ０２０及び寄生素子抽出工程ＳＴ０２１を説明する。
【０１２４】
ここでは、図１３が並行長情報となり、図２１がしきい値を２．０ｎｓとしたときの遅延テーブルとなる。また、図２５は遅延解析パスファイル出力工程ＳＴ１２１において出力された遅延解析パスファイルの内容を表わし、図２６はクロストーク解析パスファイル出力工程ＳＴ１２３において、最大並行長のしきい値を２０μｍとしたときのクロストーク解析パスファイルの内容を表わしている。
【０１２５】
ここで、パス選択工程ＳＴ１０１において、例えば、パス１が選択されたとする。図３に示すように、パス１には第４のネット２３Ａが含まれており、第４のネット２３Ａは配線を表わす図形データ２３Ｂと対応する。従って、図１３から分かるように、第４のネット２３Ａと対応する図形データ２３Ｂと、該図形データ２３Ｂと隣接する配線の図形データ３４Ｂとの並行長は２５μｍであり、しきい値の２０μｍを超えている。
【０１２６】
さらに、図２及び図３から分かるように、図形データ３４Ｂは第１０のネット３４Ａと対応し、該第１０のネット３４Ａはパス３とパス６とに含まれる。その結果、パス１とパス３との間及びパス１とパス６との間には信号の相互作用が発生する可能性が高いと判断してクロストーク解析パスファイルに出力する。残りのパスについても配線と対応する並行部分の長さの判定及び選別を行なって、さらに重複を排除したものが図２６に示すクロストーク解析パスファイルである。
【０１２７】
図２７は、レイアウトデータから抽出された、信号の遅延量がしきい値以上のパス又は互いに隣接する配線の並行部分の長さがしきい値以上の配線を含むパスのクロストークを生じさせる可能性が高い寄生素子と図２に示す論理回路とを併合した回路を表わしている。図２７に示すように、例えば、パス２に含まれる第５のネット２５Ａには、遅延解析用の寄生素子２５Ｃが抽出されて付加され、パス１と隣接するパス３に含まれる第５のネット２５Ａには、クロストーク解析用のカップリング容量５１が抽出されて付加されている。
【０１２８】
以上説明したように、本実施形態によると、ネットリストから作成される複数のパスのうち、遅延量がしきい値以上のパスを遅延解析対象パスとし、さらに、互いに隣接する配線の並行部分の長さがしきい値以上の配線を含むパスをクロストーク解析対象パスとしてあらかじめ選別しておくため、レイアウトデータに含まれる図形パターンから寄生素子を抽出する際に、すべての図形パターンではなく、解析対象パスに含まれる配線図形に対してのみ寄生素子の抽出処理又はクロストークの解析を要するパスには配線間に生じるカップリング容量を抽出する抽出処理を行なう。これにより、遅延を生じさせる寄生素子又はクロストーク雑音を生じさせる寄生素子というように抽出対象を絞ることができる。このため、抽出対象としていない寄生素子の抽出処理を省くことができるので、遅延に関する寄生素子及びクロストークに関する寄生素子の抽出処理時間を大幅に短縮できるようになる。
【０１２９】
なお、最大並行長算出工程ＳＴ１２２において、各パスごとに含まれる配線の並行長の総和を算出してもよい。この場合には、最大並行長のしきい値を新たに設定し直す必要がある。
【０１３０】
（第７の実施形態）
以下、本発明の第７の実施形態について図面を参照しながら説明する。
【０１３１】
図２８及び図２９は本発明の第７の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の処理フローを示している。図２８及び図２９において、図１１、図２３及び図２４に示す構成要素と同一の構成要素には同一の符号を付すことにより説明を省略する。第７の実施形態と第６の実施形態との相違点は２つあり、第１の相違点は、並行長出力工程ＳＴ０１２及びレイアウトデータ出力工程ＳＴ００３と並行して、パス選別工程ＳＴ０２２において所定の遅延時時間以上の遅延量を有するパスを遅延解析対象パスとしてあらかじめ選別する点である。
【０１３２】
第２の相違点は、第６の実施形態のようにパス選別工程ＳＴ０２２でクロストーク解析対象パスを選別するのではなく、寄生素子抽出工程ＳＴ０２３において、選択されたレイアウトデータの図形データと該図形データと隣接する図形データ（配線）との並行長をレイアウトデータ作成時に作成しておいた並行長情報に基づいて判定する点である。
【０１３３】
具体例として、図２に示す論理回路図及び図４に示すレイアウトデータを用いる場合を説明する。ここでは、並行長出力工程ＳＴ０１２において、図４に示すレイアウトデータから、例えば図１３に示す並行長情報が生成される。また、パス選別工程ＳＴ０２２において、図２に示す論理回路図（ネットリスト）から、例えば図２５に示すようにパス２を含む遅延解析パスファイルが生成される。
【０１３４】
次に、寄生素子抽出工程ＳＴ０２３の図形選択工程ＳＴ１０８において、図４における配線と対応する図形データ３４Ｂが選択されたとする。この場合は、図形データ３４Ｂと対応する第１０のネット３４Ａは遅延解析対象パスであるパス２に含まれないため、遅延対象図形判定工程ＳＴ１２６における判定は偽となるので、次の寄生素子抽出工程ＳＴ１２７における寄生素子抽出処理を省略できる。
【０１３５】
次に、並行長取得工程ＳＴ１３１において、あらかじめ作成された並行長情報から、図形データ３４Ｂと隣接する配線の並行長情報を取得する。
【０１３６】
次に、並行長判定工程ＳＴ１３２において、並行長のしきい値を２０μｍとすると、図１３に示すデータリストの項目番号００１０から分かるように並行長が２５μｍであり、しきい値の２０μｍを超えているため判定が真となり、従って、次の隣接配線相互作用による寄生素子抽出工程ＳＴ１３３において、クロストーク雑音を生じさせる寄生素子が抽出される。
【０１３７】
図３０は、レイアウトデータから抽出された、信号の遅延量がしきい値以上のパス又は互いに隣接する配線の並行部分の長さがしきい値以上の配線を含むパスのクロストークを生じさせる可能性が高い寄生素子と図２に示す論理回路とを併合した回路を表わしている。図３０に示すように、例えば、パス２には遅延解析用の寄生素子２５Ｃが抽出されて付加されると共に、パス２に含まれる第４のネット２３Ａとパス２と隣接するパス３に含まれる第１０のネット３４Ａとの間には、クロストーク解析用のカップリング容量６１が抽出されて付加されている。
【０１３８】
このように、本実施形態によると、遅延に関するパス選別工程ＳＴ０２２を寄生素子抽出工程ＳＴ０２３よりも前に設けて、寄生素子の抽出が必要なパスと必要でないパスとに選別しておく。さらに、パス選別工程ＳＴ０２２と並行してレイアウトデータから各配線の並行長情報を作成しておく。その後、寄生素子抽出工程ＳＴ０２３において、遅延の解析が必要なパスには遅延解析用の寄生素子を抽出すると共にクロストークの解析が必要なパスには配線間のカップリング容量を抽出するため、必要でない寄生素子の抽出処理を省くことができるので、遅延関する寄生素子及びクロストークに関する寄生素子の抽出処理時間をより短縮できる。
【０１３９】
【発明の効果】
本発明に係る半導体集積回路の設計方法によると、ネットリストに含まれるすべてのパスに対して寄生素子の抽出処理行なわなくても済むため、タイミング解析処理に必須の寄生素子の抽出処理を効率良く且つ迅速に行なえるようになる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を説明するためのネットリストを表わした論理回路図である。
【図３】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を説明するためのパスリストである。
【図４】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータを示し、図２に示す論理回路と対応する物理的な回路図である。
【図５】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる抽出対象パスを格納する抽出パスファイルの内容を示す図である。
【図６】本発明の第１の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【図７】本発明の第２の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図８】本発明の第２の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法の配線長情報の内容を示す図である。
【図９】本発明の第２の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる抽出対象パスを格納する抽出パスファイルの内容を示す図である。
【図１０】本発明の第２の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【図１１】本発明の第３の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図１２】本発明の第３の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法で用いるレイアウトデータの並行長を定義する図である。
【図１３】本発明の第３の実施形態に係る半導体集積回路の設計方法における並行長情報の内容を示す図である。
【図１４】本発明の第３の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる抽出対象パスを格納する抽出パスファイルの内容を示す図である。
【図１５】本発明の第３の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【図１６】本発明の第４の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図１７】本発明の第４の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる抽出対象パスを格納する抽出パスファイルの内容を示す図である。
【図１８】本発明の第４の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【図１９】本発明の第４の実施形態の一変形例に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２０】本発明の第５の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２１】本発明の第５の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる遅延テーブルの内容を示す図である。
【図２２】本発明の第５の実施形態の一変形例に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２３】本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２４】本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２５】本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いる遅延解析対象パスを格納する遅延解析パスファイルの内容を示す図である。
【図２６】本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出時に用いるクロストーク解析対象パスを格納するクロストーク解析パスファイルの内容を示す図である。
【図２７】本発明の第６の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【図２８】本発明の第７の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図２９】本発明の第７の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法を示すフローチャート図である。
【図３０】本発明の第７の実施形態に係る半導体集積回路の設計方法における寄生素子抽出方法のレイアウトデータから抽出された寄生素子と図２に示す論理回路とを併合した回路図である。
【符号の説明】
１１Ａ      第１の始点
１１Ｂ      図形データ
１２Ａ      第２の始点
１３Ａ      第３の始点
１４Ａ      第１の終点
１５Ａ      第２の終点
１６Ａ      第３の終点
１７Ａ      第１のインバータ素子
１７Ｂ      図形データ（セル）
１８Ａ      第１のネット
１８Ｂ      図形データ（配線）
１８Ｃ      寄生素子
１８ａ      寄生抵抗
１８ｂ      寄生容量
１９Ａ      第１のＮＡＮＤ素子
２０Ａ      第２のネット
２０Ｂ      図形データ（配線）
２１Ａ      第２のインバータ素子
２２Ａ      第３のネット
２３Ａ      第４のネット
２４Ａ      第３のインバータ素子
２５Ａ      第５のネット
２５Ｃ      寄生素子
２５ａ      寄生抵抗
２５ｂ      寄生容量
２６Ａ      第２のＮＡＮＤ素子
２７Ａ      第６のネット
２８Ａ      第４のインバータ素子
２９Ａ      第７のネット
３０Ａ      第５のインバータ素子
３１Ａ      第８のネット
３２Ａ      第９のネット
３３Ａ      第６のインバータ素子
３４Ａ      第１０のネット
３５Ａ      第７のインバータ素子
３６Ａ      第１１のネット
３７Ａ      第１２のネット
４１        第１の配線
４２        第２の配線
５１        カップリング容量
６１        カップリング容量
【図１】
0003676130.tif 000002
【図２】
0003676130.tif 000003
【図３】
0003676130.tif 000004
【図４】
0003676130.tif 000005
【図５】
0003676130.tif 000006
【図６】
0003676130.tif 000007
【図７】
0003676130.tif 000008
【図８】
0003676130.tif 000009
【図９】
0003676130.tif 000010
【図１０】
0003676130.tif 000011
【図１１】
0003676130.tif 000012
【図１２】
0003676130.tif 000013
【図１３】
0003676130.tif 000014
【図１４】
0003676130.tif 000015
【図１５】
0003676130.tif 000016
【図１６】
0003676130.tif 000017
【図１７】
0003676130.tif 000018
【図１８】
0003676130.tif 000019
【図１９】
0003676130.tif 000020
【図２０】
0003676130.tif 000021
【図２１】
0003676130.tif 000022
【図２２】
0003676130.tif 000023
【図２３】
0003676130.tif 000024
【図２４】
0003676130.tif 000025
【図２５】
0003676130.tif 000026
【図２６】
0003676130.tif 000027
【図２７】
0003676130.tif 000028
【図２８】
0003676130.tif 000029
【図２９】
0003676130.tif 000030
【図３０】
0003676130.tif 000031