(57)【要約】【課題】信号の遅延調整を柔軟に行なうことができる半導体集積回路レイアウト設計装置を提供する。【解決手段】図１に示す半導体集積回路レイアウト設計装置は、配線部と遅延調整部を備える。配線部では、第１の配線層の配線上に、第２の配線層では接続先となる配線がないビア（未接続ビア）を形成する。その後、遅延調整部において、遅延時間の調整が必要であれば、未接続ビアから、遅延調整に適したビアを選択し、第１の配線上のビア間の配線を削除する。その後、第２の配線層において第１のビアと第２のビアを配線する。その結果、信号配線の抵抗は、ビアの持つ抵抗値の分上昇し、遅延時間の調整を行なうことができる。【選択図】図１
2012137986.tif 000002
【特許請求の範囲】
【請求項１】
第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う配線部と、
前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加え、第１の遅延調整を行なう遅延調整部と、
を備えることを特徴とする半導体集積回路のレイアウト設計装置。
【請求項２】
さらに、前記配線部は、第３の配線層と第４の配線層とを接続するビアであって、前記第３の配線層の第２の信号配線に接続され、かつ、前記第４の配線層には接続先となる配線が設けられていない第２の未接続ビアを複数設けることを含む第２の配線データの生成を行い、
前記遅延調整部は、前記複数の第２の未接続ビアのうち、第３のビアと第４のビアとの間の前記第２の信号配線を削除すると共に、前記第３のビアと前記第４のビアとの間を接続する前記第４の配線層の配線を新たに設けることにより、前記第２の配線データに変更を加えることで、第２の遅延調整が可能であり、前記第１の遅延調整又は前記第２の遅延調整のいずれか、又は、その組合せにより、遅延調整を行なう請求項１の半導体集積回路のレイアウト設計装置。
【請求項３】
レイアウト設計の対象となる半導体集積回路が、データ信号とクロックを受け付ける同期回路を備える場合には、
前記遅延調整部は、前記同期回路の遅延制約に基づき、前記データ信号又は前記クロックのいずれかを遅延させる請求項１又は２の半導体集積回路のレイアウト設計装置。
【請求項４】
前記同期回路は、前記クロックにより動作し、前記データ信号を受け付ける第１のフリップフロップと、前記クロックにより動作し、前記第１のフリップフロップの出力信号を受け付ける第２のフリップフロップと、を備え、
前記遅延調整部は、前記第２のフリップフロップにおけるホールドタイムに関する遅延制約を満たさない場合に、前記第１のフリップフロップの出力信号又は前記第１のフリップフロップを動作させる前記クロックを、前記第１の遅延調整又は前記第２の遅延調整により遅延させる請求項３の半導体集積回路のレイアウト設計装置。
【請求項５】
さらに、前記遅延調整部は、前記第２のフリップフロップにおけるセットアップタイムに関する遅延制約を満たさない場合に、前記第２のフリップフロップを動作させる前記クロックを、前記第１の遅延調整又は前記第２の遅延調整により遅延させる請求項３又は４の半導体集積回路のレイアウト設計装置。
【請求項６】
前記第１の信号配線は、前記同期回路におけるクロック配線であり、前記配線部は、前記同期回路のクロックツリーシンセシス（ＣＴＳ）と、前記複数の第１の未接続ビアの形成と、を平行して行なう請求項３乃至５いずれか一に記載の半導体集積回路のレイアウト設計装置。
【請求項７】
前記第２の信号配線は、前記同期回路におけるデータ配線である請求項３乃至６いずれか一に記載の半導体集積回路のレイアウト設計装置。
【請求項８】
前記遅延調整部は、前記第１の遅延調整で使用しなかった前記第１の未接続ビアを、前記クロックツリーシンセシス（ＣＴＳ）の等遅延を維持する範囲で消去する請求項６又は７の半導体集積回路のレイアウト設計装置。
【請求項９】
第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う第１の配線工程と、
前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加える第１の遅延調整を行なう遅延調整工程と、
を含むことを特徴とする半導体集積回路のレイアウト設計方法。
【請求項１０】
さらに、第３の配線層と第４の配線層とを接続するビアであって、前記第３の配線層の第２の信号配線に接続され、かつ、前記第４の配線層には接続先となる配線が設けられていない第２の未接続ビアを複数設けることを含む第２の配線データの生成を行う第２の配線工程と、
前記遅延調整工程は、前記複数の第２の未接続ビアのうち、第３のビアと第４のビアとの間の前記第２の信号配線を削除すると共に、前記第３のビアと前記第４のビアとの間を接続する前記第４の配線層の配線を新たに設けることにより、前記第２の配線データに変更を加える第２の遅延調整が可能であり、前記第１の遅延調整又は前記第２の遅延調整のいずれか、又は、その組み合わせにより、遅延調整を行なう請求項９の半導体集積回路のレイアウト設計方法。
【請求項１１】
レイアウト設計の対象となる半導体集積回路が、データ信号とクロックを受け付ける同期回路を備える場合には、
前記第１の配線工程は、クロックツリーシンセシス（ＣＴＳ）と、前記第１の未接続ビアの形成を平行して行なうことで前記第１の信号配線を前記クロックの配線として生成し、
前記第２の配線工程は、前記第２の信号配線を前記データ信号の配線として生成する請求項１０の半導体集積回路のレイアウト設計方法。
【請求項１２】
第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う第１の配線処理と、
前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加える第１の遅延調整を行なう遅延調整処理と、
をコンピュータに実行させ、前記コンピュータを半導体集積回路のレイアウト設計装置として機能させるプログラム。
【請求項１３】
さらに、第３の配線層と第４の配線層とを接続するビアであって、前記第３の配線層の第２の信号配線に接続され、かつ、前記第４の配線層には接続先となる配線が設けられていない第２の未接続ビアを複数設けることを含む第２の配線データの生成を行う第２の配線処理と、
前記遅延調整処理は、前記複数の第２の未接続ビアのうち、第３のビアと第４のビアとの間の前記第２の信号配線を削除すると共に、前記第３のビアと前記第４のビアとの間を接続する前記第４の配線層の配線を新たに設けることにより、前記第２の配線データに変更を加える第２の遅延調整が可能であり、前記第１の遅延調整又は前記第２の遅延調整のいずれか、又は、その組み合わせにより、遅延調整を行なう請求項１２のプログラム。
【請求項１４】
レイアウト設計の対象となる半導体集積回路が、データ信号とクロックを受け付ける同期回路を備える場合には、
前記第１の配線処理は、クロックツリーシンセシス（ＣＴＳ）と、前記第１の未接続ビアの形成を平行して行なうことで前記第１の信号配線を前記クロックの配線として生成し、
前記第２の配線処理は、前記第２の信号配線を前記データ信号の配線として生成する請求項１３のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路のレイアウト設計装置、半導体集積回路のレイアウト設計方法及びプログラムに関する。特に、遅延調整を必要とする半導体集積回路のレイアウト設計に関する。
【背景技術】
【０００２】
半導体集積回路の高速化・高集積化に対する強い要求が存在する。そのため、低抵抗かつ微細な配線を持つ半導体集積回路を設計することが求められる。一方、半導体集積回路においては、入力信号及び出力信号をクロックに同期させた同期回路を採用することが多い。同期回路であれば、入出力間の組み合わせ回路の動作タイミングを全てクロック単位で取り扱うことが可能になり、回路のタイミングに関する設計が容易になるためである。
【０００３】
しかし、半導体集積回路の高速化が進むと、同期回路のタイミングに関する仕様を満足することが困難になる。即ち、同期回路の組み合わせ回路の遅延は、クロック周期よりも短いものでなければならないが、半導体集積回路の高速化に起因し、クロック周期は、より短いものとなっているためである。
【０００４】
そこで、特許文献１では、タイミングマージンの少ない配線経路を予め特定し、タイミングマージンを改善させる方向にダミーメタルを配置する技術が開示されている。
【０００５】
さらに、特許文献２では、多層配線を持つ半導体集積回路において、コンタクトの位置を変えることにより、高抵抗の遅延調整用配線の抵抗値を変動させ遅延調整を行なう半導体集積回路及びその設計方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２８３０８７号公報
【特許文献２】特開平８−２７２４８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
以下の分析は、本発明の観点からなされたものである。
【０００８】
特許文献１で開示された技術は、タイミングマージンの改善を必要とする配線パターンを抽出し、その抽出した経路に所望のタイミングマージンが得られるようにダミーメタルを配置する技術である。しかし、このような半導体集積回路のレイアウト設計方法では、タイミングマージンを改善させたい信号配線にダミーメタルを配置するスペースを必ず確保できるとは限らない。
【０００９】
例えば、タイミングマージンを改善させたい信号配線が、電源、シールド配線、他の信号配線に隣接する場合にはダミーメタルを配置することができない。図２は、半導体集積回路の信号配線の一例を示す図である。図２において、Ｌ１乃至Ｌ６は信号配線である。信号配線Ｌ１乃至Ｌ３は同一の配線層で配線されている。信号配線Ｌ４乃至Ｌ６も同一の配線層で配線されている。しかし、信号配線Ｌ１乃至Ｌ３が配線されている配線層と信号配線Ｌ４乃至Ｌ６が配線されている配線層は異なり、信号配線Ｌ２とＬ５はコンタクトを介し接続されているものとする。例えば、図２の例において、信号配線Ｌ１やＬ３、信号配線Ｌ４やＬ６に対してダミーメタルを配置することは可能である。しかし、信号配線Ｌ２やＬ５に対してダミーメタルを配置することは不可能である。他の信号配線（信号配線Ｌ１及びＬ３、信号配線Ｌ４及びＬ６）が隣接しているためである。このように、特許文献１で開示された技術では、タイミングマージンの制御性に問題がある。
【００１０】
以上のとおり、従来技術には、解決すべき問題点が存在する。
【００１１】
本発明の一側面において、信号の遅延調整を柔軟に行なうことができる半導体集積回路のレイアウト設計装置、半導体集積回路のレイアウト設計方法及びプログラムが、望まれる。
【課題を解決するための手段】
【００１２】
本発明の第１の視点によれば、第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う配線部と、前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加え、第１の遅延調整を行なう遅延調整部と、を備える半導体集積回路のレイアウト設計装置が提供される。
【００１３】
本発明の第２の視点によれば、第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う第１の配線工程と、前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加える第１の遅延調整を行なう遅延調整工程と、を含む半導体集積回路のレイアウト設計方法が提供される。
【００１４】
本発明の第３の視点によれば、第１の配線層と第２の配線層とを接続するビアであって、前記第１の配線層の第１の信号配線に接続され、かつ、前記第２の配線層には接続先となる配線が設けられていない第１の未接続ビアを複数設けることを含む第１の配線データの生成を行う第１の配線処理と、前記複数の第１の未接続ビアのうち、第１のビアと第２のビアとの間の前記第１の信号配線を削除すると共に、前記第１のビアと前記第２のビアとの間を接続する前記第２の配線層の配線を新たに設けることにより、前記第１の配線データに変更を加える第１の遅延調整を行なう遅延調整処理と、をコンピュータに実行させ、前記コンピュータを半導体集積回路のレイアウト設計装置として機能させるプログラムが提供される。
【発明の効果】
【００１５】
本発明の各視点によれば、信号の遅延調整を柔軟に行なうことができる半導体集積回路のレイアウト設計装置、半導体集積回路のレイアウト設計方法及びプログラムが、提供される。
【図面の簡単な説明】
【００１６】
【図１】本発明の概要を説明するための図である。
【図２】半導体集積回路における信号配線の一例を示す図である。
【図３】本発明の第１の実施形態の半導体集積回路のレイアウト設計装置の内部構成を示す図である。
【図４】図３に示す半導体集積回路のレイアウト設計装置がレイアウト設計の対象とする半導体集積回路の一例である。
【図５】図４に示す半導体集積回路の機能ブロックの内部構成の一例を示すブロック図である。
【図６】第１の実施形態に係る半導体集積回路のレイアウト設計装置におけるレイアウト設計時の動作を示すフローチャートである。
【図７】ＣＴＳ（Ｃｌｏｃｋ  Ｔｒｅｅ  Ｓｙｎｔｈｅｓｉｓ）処理の一例を示す図である。
【図８】クロック配線時における未接続ビアの形成の一例を示す図である。
【図９】詳細配線時における未接続ビアの形成の一例を示す図である。
【図１０】未接続ビアを使用した信号の遅延調整の方法を説明するための図である。
【図１１】図５に示す最終段のフリップフロップにおけるクロックとデータ信号の関係を示す図である。
【図１２】図５に示す最終段のフリップフロップにおけるクロックとデータ信号の関係を示す図である。
【図１３】第２の実施形態に係る半導体集積回路のレイアウト設計装置におけるレイアウト設計時の動作を示すフローチャートである。
【発明を実施するための形態】
【００１７】
初めに、図１を用いて実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１８】
上述のように、半導体集積回路のレイアウト設計において、遅延調整を目的とした提案が存在する。しかし、遅延が調整できる信号配線に関する制限が存在する場合があるなど問題がある。
【００１９】
そこで、図１に示す半導体集積回路のレイアウト設計装置を提案する。図１に示す半導体集積回路のレイアウト設計装置は、配線部と遅延調整部を備える。レイアウト設計の対象となる半導体集積回路の回路情報を受け付けた配線部では、第１の配線層の配線上に他の配線層（第２の配線層）においては接続先となる配線を持たないビア（コンタクト、又はスルーホール）を形成する。このような第２の配線層には接続先となる配線を持たないビアを未接続ビアと呼び、以下の説明をする。前述の配線部では、信号配線と同時に、第１の配線層の配線上に、複数の第１の未接続ビアを形成する。その後、遅延調整部において、レイアウト設計の対象とする半導体集積回路で遅延時間の調整が必要であれば、配線部において形成した複数の第１の未接続ビアから、遅延調整に適した第１のビアと第２のビアを選択し、第１の配線層における第１のビアと第２のビア間の配線を削除する。その後、第２の配線層において第１のビアと第２のビアを配線する。
【００２０】
その結果、第１のビアと第２のビアを経由する信号線の抵抗値は、第１のビア及び第２のビアそれぞれが持っている抵抗値の分上昇し、遅延時間の調整を行なうことができる。また、配線部において、多数の未接続ビアを形成しておき、その中から必要な遅延量を実現できるビアを選択することにより、遅延を必要としない配線に影響されることがない。
【００２１】
［第１の実施形態］
次に、本発明の第１の実施形態について、図面を用いてより詳細に説明する。図３は、本発明の第１の実施形態に係る半導体集積回路のレイアウト設計装置１の内部構成を示す図である。
【００２２】
半導体集積回路のレイアウト設計装置１は、表示部１０と、配線部２０と、遅延調整部３０と、制御部４０から構成されている。
【００２３】
表示部１０は、半導体集積回路の設計者が半導体集積回路のレイアウト設計装置１を操作する際に必要な情報を表示する。配線部２０は、半導体集積回路における配線を実現する。遅延調整部３０は、タイミングマージンの調整が必要な信号線（経路）を特定し、遅延調整を行なう。制御部４０は、表示部１０、配線部２０、遅延調整部３０、各部の制御を行なう。
【００２４】
次に、半導体集積回路のレイアウト設計装置１が対象とする半導体集積回路について説明する。図４は、半導体集積回路のレイアウト設計装置１がレイアウト設計の対象とする半導体集積回路の一例である。図４に示す半導体集積回路５０は、複数の機能ブロック５１乃至５４から構成されている。各機能ブロックの例としては、電源ブロックや通信ブロックなどが考えられる。ここで、機能ブロック５１は、同期回路により実現されているものとし、機能ブロック５１の信号配線及び遅延調整について以降の説明を行なう。
【００２５】
図５は、機能ブロック５１の内部構成の一例を示すブロック図である。図５に示す機能ブロック５１は、フリップフロップ５１１及び５１２と、組み合わせ回路５１３と、バッファ５１４及び５１５から構成されている。フリップフロップ５１１は、機能ブロック５１における初段のフリップフロップであり、フリップフロップ５１２は、機能ブロック５１における最終段のフリップフロップである。組み合わせ回路５１３は、フリップフロップ５１１の出力データを入力とし、フリップフロップ５１２に対して結果を出力する。バッファ５１４及び５１５は、機能ブロック５１のクロック入力端子とフリップフロップ５１１及び５１２のクロック入力端子と、の間にそれぞれ接続されるバッファである。
【００２６】
ここで、同期回路とは、クロックが変化するタイミングで入力データに応じた結果を出力する回路である。そのため、クロックが変化する前後の一定期間、入力信号は同一の値を保持する必要がある。即ち、同期回路に用いられるフリップフロップにおいては、クロックが変化する直前に入力データが同一でなければならない時間をセットアップタイム、クロックが変化した直後に入力データが同一でなければならない時間をホールドタイム、としてそれぞれの時間が遅延制約として規定されている。
【００２７】
次に、機能ブロック５１の配線を例に取り、半導体集積回路のレイアウト設計装置１の動作について説明する。図６は、半導体集積回路のレイアウト設計装置１におけるレイアウト設計時の動作を示すフローチャートである。
【００２８】
ステップＳ０１では、配線部２０において、レイアウト設計の対象となる半導体集積回路の回路情報に基づいて、ＣＴＳ処理を行なう。ＣＴＳ処理とは、クロックを必要とするセル（例えば、フリップフロップやラッチ）までのクロックの遅延量が同程度となるように、インバータ等のクロックバッファをクロック配線に挿入する処理である。図７は、ＣＴＳ処理の一例である。図７に示すＣＴＳ処理では、クロックルートから各セルに到着するまでの遅延量を均一にするため、クロックバッファＣＢ１乃至ＣＢ８を配置している。図５に示す機能ブロック５１においては、バッファ５１４及び５１５がクロックバッファに相当する。
【００２９】
本ステップでは、ＣＴＳ処理と同時に、未接続ビアの形成を行なう。図８は、クロック配線時における未接続ビアの形成の一例を示す図である。未接続ビアは、図８に示すように、クロック配線上に可能な限り（満遍なく）形成する。即ち、クロック配線（使用している配線層）の全ての空きスペースに未接続ビアを形成する。このことによって、後述する遅延調整時の自由度を高めることができる。なお、未接続ビアを他の配線層において接続しなければビアの持つ抵抗がクロックに影響を及ぼすことはない（信号が遅延することはない）。しかし、クロック配線と未接続ビア間に存在する静電容量はクロックに影響を与える（信号が遅延する）ことになる。そのため、ＣＴＳ処理においては、各セルに対して等遅延となるように未接続ビアの形成を行なう必要がある。例えば、図７においては、信号配線Ｌ１０に形成した未接続ビアの数と、信号配線Ｌ１１に形成した未接続ビアの数は同数でなければならない。
【００３０】
ステップＳ０２では、配線部２０において、信号の詳細配線を行なう。詳細配線時においても、未接続ビアを形成する。本ステップで形成する未接続ビアは、ステップＳ０１のように特定の層に限り、未接続ビアを形成するものではなく、使用している全ての配線層において、未接続ビアを形成する。この場合にも、詳細配線の終了後の空きスペース全てに、未接続ビアを形成しておくことで、遅延調整時の自由度を高めている。図９は、詳細配線時における未接続ビアの形成の一例を示す図である。図９に示すように、全ての配線層に満遍なく未接続ビアを形成する。
【００３１】
ステップＳ０３では、遅延調整部３０において、機能ブロック５１（同期回路）の遅延制約を満たすか否か判断する。その際の判断は、組み合わせ回路５１３で使用している素子の仕様と、機能ブロック５１に供給されるクロックの周期に基づいて行なう。ここで、同期回路の遅延制約を満たす場合には、レイアウト設計処理を終了する。遅延制約を満たさないと判断した場合には、ステップＳ０４に遷移する。
【００３２】
ステップＳ０４では、遅延調整部３０において、遅延制約のうち、ホールドタイム、又は、セットアップタイムのいずれを満たさないかを判別する。その後、必要となる遅延量（タイミングマージン）の計算を行なう。
【００３３】
ステップＳ０５では、遅延調整部３０において、ステップＳ０４の結果に基づき遅延量を調整する。初めに、最終段のフリップフロップ５１２におけるホールドタイムに関する遅延制約を満たさない場合について説明する。
【００３４】
この場合の遅延調整には２つの方法が考えられる。第１の方法は、フリップフロップ５１１とフリップフロップ５１２の間のデータ信号を遅延させる方法である。具体的には、フリップフロップ５１１とフリップフロップ５１２の間の信号配線（データ信号配線）Ｌ７に形成されている未接続ビアを使用する。
【００３５】
図１０は、未接続ビアを使用した信号の遅延調整の方法を説明するための図である。図１０には、データ信号配線層に形成された４個の未接続ビアＶ１乃至Ｖ４が示されている。図１０を用いて、フリップフロップ５１１とフリップフロップ５１２の間のデータ信号を遅延させる方法を説明する。ステップＳ０４において、計算したタイミングマージンに基づき、データ信号配線層に形成した未接続ビアのうち、いずれの未接続ビア間を配線すれば、最終段のフリップフロップ５１２におけるホールドタイムに関する遅延制約を満たすか決定する。図１０の例では、未接続ビアＶ１及びＶ２の間、未接続ビアＶ３及びＶ４の間、をそれぞれ接続すれば遅延制約を満たすものと決定されたとする。
【００３６】
次に、決定した未接続ビア間のデータ信号配線層における配線を削除する。図１０の例では、未接続ビアＶ１及びＶ２の間、未接続ビアＶ３及びＶ４の間、それぞれのデータ信号配線層における配線を削除する。次に、未接続ビアをデータ信号配線層以外の層で配線する。図１０の例では、未接続ビアＶ１及びＶ２の間、未接続ビアＶ３及びＶ４の間、をそれぞれ他の配線層において配線する。
【００３７】
以上のように、遅延調整を行ないたい信号の配線上に形成された未接続ビアを使用することで、ビアの抵抗が影響し、データ信号を遅延させることができる。なお、遅延制約を満たすためには、いずれの未接続ビア間を接続すれば良いかの決定は、増加するビアの抵抗とタイミングマージンの改善に必要な遅延時間から算出すれば良い。
【００３８】
図１１は、最終段のフリップフロップ５１２におけるクロックとデータ信号の関係を示す図である。図１１において、データ信号を遅延させる前のホールドタイムはＴ１であり、Ｔ１は遅延制約を満たしていない。しかし、未接続ビアを使用してデータ信号配線の抵抗を上昇させることで、データ信号を遅延させ、ホールドタイム（図１１のＴ２）を所定の範囲内に収めることができる。
【００３９】
遅延調整の第２の方法は、フリップフロップ５１１に入力するクロックを遅延させる方法である。この場合にも、ステップＳ０４で計算したタイミングマージンに基づき、クロック配線層に形成した未接続ビアのうち、いずれの未接続ビア間を配線するか決定する。その後、クロック配線層における未接続ビア間の配線を削除し、他の配線層で配線する。このように、信号配線（クロック配線）Ｌ８に形成されている未接続ビアを使用し、フリップフロップ５１１から出力されるデータ信号を遅延させ、遅延制約を満たすことも可能である。
【００４０】
次に、最終段のフリップフロップ５１２におけるセットアップタイムに関する遅延制約を満たさない場合について説明する。この場合には、フリップフロップ５１２に入力するクロックを遅延させる方法により、セットアップタイムに関する遅延制約を満たすようにする。具体的には、図５の信号配線（クロック配線）Ｌ９に形成された未接続ビアを使用し、遅延調整を行なう。
【００４１】
図１２は、最終段のフリップフロップ５１２におけるクロックとデータ信号の関係を示す図である。図１２において、クロックを遅延させる前のセットアップタイムはＴ３であり、このＴ３は遅延制約を満たしていない。しかし、未接続ビアを使用してクロック配線の抵抗を上昇させることで、クロックを遅延させることができ、セットアップタイム（図１２のＴ４）を所定の範囲内に収めることができる。
【００４２】
ステップＳ０５の処理が終了すると、半導体集積回路のレイアウト設計装置１のレイアウト設計が終了する。
【００４３】
以上のように、配線部２０において、信号配線を行なう際に未接続ビアを予め形成しておき、遅延調整部３０において、半導体集積回路の遅延制約に基づいて未接続ビア間の配線を削除・配線することにより遅延調整を行なう。その結果、全ての信号配線の終了後、必要な遅延調整を容易に行なうことができる。また、配線層の空きスペース全てに未接続ビアを形成し、その後、未接続ビアを遅延調整に使用するため他の信号と短絡してしまうことがない。さらに、遅延調整は全ての配線処理が終了した後に行なうので、遅延調整のために既に行なった配線を変更する必要もない。
【００４４】
また、特許文献１に開示された技術では、信号線が隣接すると遅延の調整が行なえなかったが、本実施形態に係る半導体集積回路のレイアウト設計装置では、空きスペースに形成された未接続ビアを使用するため、遅延調整の可否が配線パターンに影響されることはない。
【００４５】
さらに、特許文献２に開示された技術では、セル間を接続する信号が配線されている配線層とは異なる配線層に、別途、遅延調整用の配線を設け、遅延調整を行なおうとする信号線を、遅延調整用配線を介して生成することで遅延調整を実現している。即ち、セル間を接続する信号が配線されている配線層と遅延調整用配線が配線されている配線層を結ぶコンタクトの位置を移動することにより、遅延調整用配線の抵抗値を変動させ、遅延調整を行なっている。即ち、本来使用する配線とは別に遅延調整用配線を用意する必要がある。さらに、遅延調整用配線は、高抵抗であることが必要である。高抵抗でなければ、コンタクトの位置を移動したとしても必要な遅延量を確保できない場合が想定されるためである。このように、特許文献２に開示された技術には２つの問題点がある。第１に、遅延調整用配線が本来の信号配線とは別に必要であること。第２に、遅延調整用配線は高抵抗であること。これらの問題点によって、特許文献２に開示された技術（設計方法）で製造した半導体集積回路のコストは上昇してしまう。
【００４６】
一方、本実施形態に係る半導体集積回路のレイアウト設計装置では、遅延調整を未接続ビア間の配線を削除・配線することで実現するため、本実施形態に係る半導体集積回路のレイアウト設計装置で製造した半導体集積回路のコストが大幅に上昇することはない。
【００４７】
［第２の実施形態］
次に、本発明の第２の実施形態について、図面を用いてより詳細に説明する。第１の実施形態においては、配線部２０で形成する未接続ビアであって、遅延調整に使用しなかったものに対しては特段の処置はしていない。本実施形態では、レイアウト設計後、使用しなかった未接続ビアは削除可能であることを説明する。なお、本実施形態に係る半導体集積回路のレイアウト設計装置１ａの内部構成は変わることがないので、図３に相当する説明は省略する。
【００４８】
図１３は、半導体集積回路のレイアウト設計装置１ａにおけるレイアウト設計時の動作を示すフローチャートである。図１３のステップＳ１１〜Ｓ１５の処理については、図６のステップＳ０１〜Ｓ０５と同様であるので、その説明を省略する。図１３のフローチャートと図６のフローチャートとの相違点は、ステップＳ１６において、未接続ビアの削除を行なっている点である。
【００４９】
ステップＳ１６では、遅延調整部３０ａにおいて、未接続ビアのうち遅延調整に使用しなかった未接続ビアを削除する。但し、使用していない未接続ビアの全てを削除できる訳ではなく、遅延時間のバランスを崩さない範囲で未接続ビアを削除する。例えば、図５の例でいえば、信号配線Ｌ８及びＬ９に１０個の未接続ビアを形成したとする。そして、信号配線Ｌ８の未接続ビアのうち、２個の未接続ビアを選択し、遅延調整を行なった場合には、遅延調整に使用しなかった８個の未接続ビアを削除する。同時に、信号配線Ｌ９の未接続ビアのうち、２個を残し、８個の未接続ビアを削除する。その結果、信号配線Ｌ８及びＬ９において同数の未接続ビアが残るため、遅延時間のバランスが崩れることはなく、信号配線Ｌ８の信号（クロック）をビアの抵抗を用いて遅延させることができる。
【００５０】
このように、遅延調整に使用しなかった未接続ビアをＣＴＳの等遅延を維持する範囲で削除することによって、半導体集積回路のレイアウト設計装置１ａで設計した半導体集積回路のコスト上昇を抑えることができる。
【００５１】
なお、上記の特許文献等の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。例えば、上述の配線部２０や遅延調整部３０の各処理は、コンピュータに半導体集積回路のレイアウト設計プログラムを実行させることで実現されるようにしても良い。若しくは、ネットワーク上のサーバ上でプログラムを実行し、各クライアントからプログラムを呼び出す構成であっても良い。
【符号の説明】
【００５２】
１、１ａ  半導体集積回路のレイアウト設計装置
１０  表示部
２０  配線部
３０、３０ａ  遅延調整部
４０  制御部
５０  半導体集積回路
５１〜５４  機能ブロック
５１１、５１２  フリップフロップ
５１３  組み合わせ回路
５１４、５１５  バッファ
ＣＢ１〜ＣＢ８  クロックバッファ
Ｌ１〜Ｌ１１  信号配線
Ｖ１〜Ｖ４  未接続ビア
【図１】
2012137986.tif 000003
【図２】
2012137986.tif 000004
【図３】
2012137986.tif 000005
【図４】
2012137986.tif 000006
【図５】
2012137986.tif 000007
【図６】
2012137986.tif 000008
【図７】
2012137986.tif 000009
【図８】
2012137986.tif 000010
【図９】
2012137986.tif 000011
【図１０】
2012137986.tif 000012
【図１１】
2012137986.tif 000013
【図１２】
2012137986.tif 000014
【図１３】
2012137986.tif 000015