(57)【要約】【課題】すべてのネットに所望の配線層を形成でき、チップ製造後のＦＩＢ装置を用いた任意の接続修正を行うことができる配置配線プログラム、および半導体装置の製造方法を提供する。【解決手段】本発明の配置配線プログラムは、複数の接続ピン１２、１３と、これら接続ピン間を接続する内部ネット１４とを有するフロート配線セル１１をネット上に追加し、このフロート配線セル１１を介して出力ピンと入力ピンの間を接続する配線セル追加機能を有することを特徴としている。本発明によれば、所望の配線層を割り当てたフロート配線セル１１を最適配置できるので、すべてのネットに所望の配線層を形成できる配置配線プログラムを実現することができる。【選択図】  図１
2004157627.tif 000002
【特許請求の範囲】
【請求項１】
入出力ピンを有し、論理設計で作成されたネットリストに従ってチップ上に配置される複数の回路セルと、これら回路セル間の出力ピンと入力ピンの間を前記ネットリストに従って接続したネットとを有し、あらかじめ定められたレイアウト設計ルールに従って前記回路セルと前記ネットのレイアウトデータを生成する配置配線プログラムであって、
複数の接続ピンと、これら接続ピン間を接続する内部ネットとを有するフロート配線セルを前記ネット上に追加し、このフロート配線セルを介して前記出力ピンと入力ピンの間を接続する配線セル追加機能を有することを特徴とする配置配線プログラム。
【請求項２】
前記配線セル追加機能は、
前記ネット上に分岐点が存在しない場合は、２つの前記接続ピンを持った前記フロート配線セルを前記出力ピンと入力ピンの間に接続し、
前記ネット上に分岐点が存在する場合は、２つの前記接続ピンを持った前記フロート配線セルを前記回路セルの出力ピンまたは入力ピンと前記分岐点との間に接続することを特徴とする請求項１に記載の配置配線プログラム。
【請求項３】
前記配線セル追加機能は、
前記ネット上に分岐点が存在しない場合は、２つの前記接続ピンを持った前記フロート配線セルを前記出力ピンと入力ピンの間に接続し、
前記ネット上に分岐点が存在する場合は、その分岐点に接続されている前記ネットの数と同数の前記接続ピンを有する前記フロート配線セルを前記出力ピンと入力ピンの間に接続することを特徴とする請求項１に記載の配置配線プログラム。
【請求項４】
あらかじめ定められた評価関数が極小となるように、前記ネットに追加された前記フロート配線セルを配置する配線セル配置機能をさらに有することを特徴とする請求項１乃至請求項３のいずれか１項に記載の配置配線プログラム。
【請求項５】
前記フロート配線セルは、
前記内部ネットが割り当てられる配線層の種類と、
前記内部ネットがレイアウト化されるときの配線の幅と配線の長さと、
前記接続ピンがレイアウト化されるときのビアコンタクトの種類と形状とを備えたレイアウト情報を有することを特徴とする請求項１乃至請求項４のいずれか１項に記載の配置配線プログラム。
【請求項６】
前記フロート配線セルは、低抵抗配線層を前記内部ネットに割り当てる前記レイアウト情報を有することを特徴とする請求項５に記載の配置配線プログラム。
【請求項７】
前記フロート配線セルは、電源主幹線の配線層を除く最上層の配線層を前記内部ネットに割り当てる前記レイアウト情報を有することを特徴とする請求項５に記載の配置配線プログラム。
【請求項８】
入出力ピンを備えチップ上に配置される回路セルのレイアウトデータをあらかじめ定められたレイアウト設計ルールに従って生成する配置配線プログラムであって、
ひとつの接続ピンを有するフロート配線セルを前記回路セルの入出力ピンに対応して追加し、前記回路セルの入出力ピンと前記フロート配線セルの前記接続ピンとの間をネットで接続する機能を有することを特徴とする配置配線プログラム。
【請求項９】
前記回路セルと前記フロート配線セルと前記ネットとを備えたネットリストを生成し、このネットリストに基づいて、あらかじめ定められたレイアウト設計ルールに従ってレイアウトデータを生成する機能をさらに有することを特徴とする請求項８に記載の配置配線プログラム。
【請求項１０】
あらかじめ定められた評価関数が極小となるように、前記回路セルおよび前記フロート配線セルを配置する機能をさらに有することを特徴とする請求項８または請求項９に記載の配置配線プログラム。
【請求項１１】
前記フロート配線セルは、
前記接続ピンがレイアウト化されるときのビアコンタクトの種類と形状と、
そのビアコンタクト上に形成する導電性のパターンに割り当てる配線層の種類と形状とを備えたレイアウト情報を有することを特徴とする請求項８乃至請求項１０のいずれか１項に記載の配置配線プログラム。
【請求項１２】
前記フロート配線セルを追加した更新ネットリストを前記レイアウト情報に従って回路図イメージとして表示する機能と、
入力されたデータに基づいて前記レイアウト情報を修正する機能と、
その修正された前記レイアウト情報に従って前記更新ネットリストを回路図イメージとして再表示する機能とを有することを特徴とする請求項５または請求項６または請求項７または請求項１１に記載の配置配線プログラム。
【請求項１３】
仕様に基づいてシステム設計および回路設計を行い、ネットリストを作成する論理設計工程と、
入出力ピンを備え前記ネットリストに従ってチップ上に配置される複数の回路セルのレイアウトデータ、および、前記複数の回路セル間の出力ピンと入力ピンの間を前記ネットリストに従って接続したネットのレイアウトデータを、あらかじめ定められたレイアウト設計ルールに従って生成するレイアウト設計工程と、
前記レイアウトデータを用いて、ウエハ上に回路素子と配線を形成するチップ製造工程とを備え、
前記レイアウト設計工程は、
複数の接続ピンと、これら接続ピン間を接続する内部ネットとを有するフロート配線セルを前記ネット上に追加し、このフロート配線セルを介して前記出力ピンと入力ピンの間を接続する配線セル追加工程をさらに有することを特徴とする半導体装置の製造方法。
【請求項１４】
前記配線セル追加工程は、
前記ネット上に分岐点が存在しない場合は、２つの前記接続ピンを持った前記フロート配線セルを前記出力ピンと入力ピンの間に接続し、
前記ネット上に分岐点が存在する場合は、２つの前記接続ピンを持った前記フロート配線セルを前記回路セルの出力ピンまたは入力ピンと前記分岐点との間に接続することを特徴とする請求項１３に記載の半導体装置の製造方法。
【請求項１５】
前記配線セル追加工程は、
前記ネット上に分岐点が存在しない場合は、２つの前記接続ピンを持った前記フロート配線セルを前記出力ピンと入力ピンの間に接続し、
前記ネット上に分岐点が存在する場合は、その分岐点に接続されている前記ネットの数と同数の前記接続ピンを有する前記フロート配線セルを前記出力ピンと入力ピンの間に接続することを特徴とする請求項１３に記載の半導体装置の製造方法。
【請求項１６】
前記レイアウト設計工程は、
あらかじめ定められた評価関数が極小となるように、前記ネットに追加された前記フロート配線セルを配置する配線セル配置工程をさらに有することを特徴とする請求項１３乃至請求項１５のいずれか１項に記載の半導体装置の製造方法。
【請求項１７】
前記フロート配線セルは、
前記内部ネットが割り当てられる配線層の種類と、
前記内部ネットがレイアウト化されるときの配線の幅と配線の長さと、
前記接続ピンがレイアウト化されるときのビアコンタクトの種類と形状とを備えたレイアウト情報を有することを特徴とする請求項１３乃至請求項１６のいずれか１項に記載の半導体装置の製造方法。
【請求項１８】
前記フロート配線セルは、低抵抗配線層を前記内部ネットに割り当てる前記レイアウト情報を有することを特徴とする請求項１７に記載の半導体装置の製造方法。
【請求項１９】
前記フロート配線セルは、電源主幹線の配線層を除く最上層の配線層を前記内部ネットに割り当てる前記レイアウト情報を有することを特徴とする請求項１７に記載の半導体装置の製造方法。
【請求項２０】
入出力ピンを備えチップ上に配置される回路セルのレイアウトデータをあらかじめ定められたレイアウト設計ルールに従って生成するレイアウト設計工程と、
前記レイアウトデータを用いてウエハ上に回路素子と配線を形成するチップ製造工程とを備え、
前記レイアウト設計工程は、
ひとつの接続ピンを有するフロート配線セルをチップ上に追加し、前記回路セルの入出力ピンと前記接続ピンとをネットで接続する配線セル追加工程をさらに有することを特徴とする半導体装置の製造方法。
【請求項２１】
前記レイアウト設計工程は、
前記回路セルと前記フロート配線セルと前記ネットとを備えたネットリストを生成し、このネットリストに基づいて、あらかじめ定められたレイアウト設計ルールに従ってレイアウトデータを生成する詳細配線工程をさらに有することを特徴とする請求項２０に記載の半導体装置の製造方法。
【請求項２２】
前記レイアウト設計工程は、
あらかじめ定められた評価関数が極小となるように、前記回路セルおよび前記フロート配線セルを配置する配線セル配置工程をさらに有することを特徴とする請求項２０または請求項２１に記載の半導体装置の製造方法。
【請求項２３】
前記フロート配線セルは、
前記接続ピンがレイアウト化されるときのビアコンタクトの種類と形状と、
そのビアコンタクト上に形成する導電性のパターンに割り当てる配線層の種類と形状とを備えたレイアウト情報を有することを特徴とする請求項２０乃至請求項２２のいずれか１項に記載の半導体装置の製造方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体装置設計における配置配線プログラムおよび半導体装置の製造方法に関するもので、特に、多層配線プロセスにおいて、指定した配線の一部に指定した配線層を割り当てるものである。
【０００２】
【従来の技術】
半導体集積回路装置の開発においては、大容量の汎用メモリや、アナログ素子を多用する一部の特殊なものを除いて、ゲートレベルのセルライブラリや機能ブロック単位のＩＰライブラリを利用した配置配線プログラムが用いられる。
【０００３】
図５は従来の開発工程の概略を示すフローチャートである。図には、仕様決定後の設計工程以降を示してある。従来の開発工程を大別すると、設計工程１０１、製造工程１０２、および評価修正工程１０３がある。
【０００４】
設計工程１０１は、論理設計ステップ１０４とレイアウト設計ステップ１０５に分けられる。まず、決定された仕様に従って論理設計ステップ１０４においてステム設計、回路設計がなされ、ネットリストが作成される。回路設計では、あらかじめ用意されているセルライブラリやＩＰライブラリが使用される。
【０００５】
次に、レイアウト設計ステップ１０５で配置配線プログラムにより、このネットリストとライブラリを用いて具体的なチップレイアウトが作成される。
【０００６】
レイアウト設計ステップ１０５には、セル配置ステップ１０６、概略配線ステップ１０７、ＥＣＯステップ１０８、冗長セル配置ステップ１０９、詳細配線ステップ１１０がある。
【０００７】
セル配置ステップ１０６では、ネットリスト中にあるゲートレベルセルおよび機能プロック単位のＩＰセルを、システム設計時に決定した領域にそれぞれ配置する。ここでいう”配置する”とは、ライブラリにあるセルのレイアウト情報をもとに、各セルのチップ上での平面的な位置を決定することを意味する。
【０００８】
概略配線ステップ１０７では、ネットリスト中の接続情報に基づいて、配置されたセルのピン間の配線経路を大局的に決定し、結果を概略配線情報としてネットリストに追加する。ピンとは、論理設計上は各セルの入出力端子に相当し、レイアウト上は各セルレイアウトの入出力部分にあるコンタクト、またはコンタクト上にある配線層の小パターンに相当する。この段階では、まだ、各配線に割り当てる配線層の種類や空間的な詳細経路を示す配線グリッドの割り付けは行われない。
【０００９】
ＥＣＯステップ１０８では、まず、得られた概略配線情報をもとに、タイミングドリブンシミュレーションを行い、ネットごとの遅延時間を求める。ネットとは、ピン間の接続関係をさす論理設計上の概念で、レイアウト上はセル間を接続する各配線に対応する。
【００１０】
次に、この結果をもとに仕様を満足するように回路修正が行われ、それらの結果がネットリストにフィードバックされる。
【００１１】
冗長セル配置ステップ１０９では、これ以降に行われるかもしれない設計変更に対応するため、ゲートレベルのセルやその構成要素である素子をチップ上の空き領域に配置する。
【００１２】
詳細配線ステップ１１０では、概略配線情報とレイアウト上の設計ルールに基づいて、各ネットに配線層の種類を割り付け、その詳細経路の配線グリッド位置を決定する。これによって、チップ上の全てのセルと配線の位置が決定し、チップ全体のレイアウトデータを作成できるようになる。
【００１３】
設計工程１０１が終わると、そのレイアウトデータをもとに製造工程１０２でその半導体装置のチップが製造される。製造工程１０２には、大まかにマスク作成ステップ１１１と、チップ製造ステップ１１２がある。
【００１４】
マスク作成ステップ１１１では、製造時の各ＰＥＰで使用するマスクを全体レイアウトデータに基づいて作成する。
【００１５】
チップ製造ステップ１１２では、ＰＥＰ技術を用いてウエハ上に必要な回路素子および配線を形成する。
【００１６】
こうしてチップが出来上がると、評価修正工程１０３で仕様に対する評価と、可能ならば必要な修正が行われる。評価ステップ１１３では、チップの回路動作などの初期特性、温度や湿度、電源電圧などの使用環境に対する耐性、加速試験による長期の経年変化に対する信頼性、などが仕様に基づいて詳細に検査される。
【００１７】
この結果をもとに、評価判定ステップ１１４で、開発の完成度が製品として量産、出荷が可能なレベルかどうかが判定される。仕様を完全に満たし、完成度が十分と判定（ＯＫ）されれば、この製品の開発は終了する。もし、問題があると判定（ＮＧ）された場合は、解析ステップ１１５に進み、その原因を特定する不良解析が行われる。
【００１８】
原因が特定され、その解決手段として回路修正が必要な場合、ＦＩＢ判定ステップ１１６で、ＦＩＢ装置による加工が可能か、加工により問題が解決するか、が判定される。加工により問題解決が可能（ＯＫ）と判断されれば、ＦＩＢ加工ステップ１１７で必要な修正を施し、再度評価ステップ１１３で問題が解決されているか、修正による副作用がないかが評価される。
【００１９】
ＦＩＢ装置による加工が不可能（ＮＧ）な場合は、レイアウトデータに必要な修正を加えたうえで、マスク作成ステップ１１１に戻って、マスク作成、チップ製造をやりなおすことになる。
【００２０】
このマスク作成ステップ１１１までの工程戻りは、ＦＩＢ加工による評価ステップ１１３までの工程戻りとは異なり、修正されたチップを得るまでに最低１ヶ月、修正内容によっては、数ヶ月の時間ロスが発生する。また、修正マスクや追加ウエハにかかる費用も必要となる。
【００２１】
最近のＣＡＤツール、特にシミュレーションツールの高度化によって、仕様の変更、製造上の予期せぬトラブルによるプロセス変更などがない限り、冗長セルの利用とＦＩＢ加工による接続修正で対応できない回路修正はほとんどなくなってきている。したがって、ＦＩＢ装置による配線の接続変更が可能かどうかは、開発期間、コストに大きく影響する。
【００２２】
一方、プロセス技術として多層配線が主流となってきているため、上層配線で被われた下層配線のみでネットが構成される確率が高くなっている。上述したように、セルのピンはレイアウトとしては下層配線の小パターンとなっていることが多く、近隣のセル間をつなぐネットは下層配線のみで実現されるのが普通である。この場合、このネットに対応した配線の接続変更はＦＩＢ装置では行えないという問題がある。
【００２３】
この問題を解決するために、設計工程１０１終了後に、チップ上に有るすべてのネットに対して、その対応する配線を検索し、上層までのビアコンタクト（以下ビアコンという）の対とそれらをつなぐ上層の配線を配置できる領域を探し出し、それらをレイアウトデータに追加する方法が、特許文献１に、また、セルライブラリのすべてのピンに、その対応するレイアウトとして最上層までのビアコンを持たせる方法が、特許文献２に記載されている。
【００２４】
しかしながら、これらの方法によっても、すべてのネットがＦＩＢ加工によって自由に接続変更できるとは限らない。また、特許文献２に記載されている方法は、最上層までのビアコンによって配置配線の自由度が著しく疎外され、最終的なチップサイズに大きな影響を与える可能性が高いという欠点を持つ。
【００２５】
図６は、これらを説明するためのレイアウト例である。図６（ａ）はゲートレベルのセル１２１とセル１２２が隣り合って配置された場合を示している。また、セル１２１はピン１２３とピン１２４を有し、セル１２２はピン１２５とピン１２６を有していると仮定する。ピン１２３とピン１２６には、それぞれ他のセルへのネットが下層配線で接続されており、隣り合ったピン１２４とピン１２５をつなぐネットも下層配線１２７で直接接続されている。
【００２６】
このとき、ピン１２４、１２５上を上層配線１２８が通過していると、下層配線１２７を最上層まで引き出すビアコン対とそれらをつなぐ最上層の配線をレイアウトするためには、ピン１２４とピン１２５が十分離れており、かつ、その上部には最上層にいたるまで上層配線１２８が全く存在しないという条件が必要になる。ゲートレベルのセル配置ではこのような条件が満たされることはなく、下層配線１２７をＦＩＢ加工で接続変更できるようにレイアウトすることは不可能である。
【００２７】
図６（ｂ）は同様にゲートレベルのセル１４０、１４１、１４２、１４３、１４４、および１４５が２行３列の格子状に配置されている場合を示している。各セル１４０〜１４５はそれぞれ２つずつのピンを持ち、それらのピン位置には最上層までのビアコン１４６が形成されている。行方向に並んだビアコン１４６の互いの間隔が設計ルールで定められた配線ピッチの２倍以上ないと、図６（ｂ）に示すように、１列目のセル１４０、１４１のビアコン１４６と３列目のセル１４４、１４５のビアコン１４６を結ぶ配線は、２列目のセル１４２、１４３の上部を通過することはできない。
【００２８】
このように、すべてのピン位置に最上層までのビアコンを形成する方法は、特にゲートレベルでの配置配線では、配線経路の選択の自由度を著しく疎外し、結果的にチップサイズに多大な影響を及ぼしてしまう問題がある。
【００２９】
【特許文献１】
特開平１０−３０８４５２号公報
【００３０】
【特許文献２】
特開平１１−２１４５１８号公報
【００３１】
【発明が解決しようとする課題】
上述のごとく、従来の配置配線プログラムおよび半導体装置の製造方法は、すべてのネットに所望の配線層を割り当てることができず、チップ製造後にＦＩＢ装置を用いた任意の接続修正ができないため、マスクの作成とチップの製造をやり直さなければならない可能性があるという問題があった。
【００３２】
本発明は、上記問題点を解決するためになされたもので、すべてのネットに所望の配線層を形成でき、チップ製造後のＦＩＢ装置を用いた任意の接続修正を行うことができる配置配線プログラムおよび半導体装置の製造方法を提供することを目的とする。
【００３３】
【課題を解決するための手段】
上記目的を達成するために、本発明の配置配線プログラムは、入出力ピンを有し、論理設計で作成されたネットリストに従ってチップ上に配置される複数の回路セルと、これら回路セル間の出力ピンと入力ピンの間を前記ネットリストに従って接続したネットとを有し、あらかじめ定められたレイアウト設計ルールに従って前記回路セルと前記ネットのレイアウトデータを生成する配置配線プログラムであって、複数の接続ピンと、これら接続ピン間を接続する内部ネットとを有するフロート配線セルを前記ネット上に追加し、このフロート配線セルを介して前記出力ピンと入力ピンの間を接続する配線セル追加機能を有することを特徴としている。
【００３４】
本発明によれば、所望の配線層を割り当てたフロート配線セルを評価関数を用いて最適配置できるので、すべてのネットに所望の配線層を形成できる配置配線プログラムを実現することができる。
【００３５】
また、本発明の半導体装置の製造方法は、仕様に基づいてシステム設計および回路設計を行い、ネットリストを作成する論理設計工程と、入出力ピンを有し、前記ネットリストに従ってチップ上に配置される複数の回路セルと、これら回路セル間の出力ピンと入力ピンの間を前記ネットリストに従って接続したネットとを有し、あらかじめ定められたレイアウト設計ルールに従って前記回路セルと前記ネットのレイアウトデータを生成するレイアウト設計工程と、前記レイアウトデータを用いて、ウエハ上に回路素子と配線を形成するチップ製造工程とを備え、前記レイアウト設計工程は、複数の接続ピンと、これら接続ピン間を接続する内部ネットとを有するフロート配線セルを前記ネット上に追加し、このフロート配線セルを介して前記出力ピンと入力ピンの間を接続する配線セル追加工程をさらに有することを特徴としている。
【００３６】
本発明によれば、所望の配線層を持ったフロート配線セルを、ネットリスト中にあるすべてのネットに割り当てることができ、評価関数を用いてフロート配線セルを最適配置できるので、チップ製造後にＦＩＢ装置で容易、かつ、柔軟に設計変更に対応することができ、大幅な開発期間の短縮が可能な半導体装置の製造方法を実現することができる。
【００３７】
また、本発明によれば、所望の配線層を持ったフロート配線セルを任意のネットに割り当てることができるので、配線領域の増加を最小限に押さえて、クリティカルパスを低抵抗配線で容易に接続でき、より高速な半導体装置を開発することが可能な半導体装置の製造方法を実現することができる。
【００３８】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態（以下実施形態という）を説明する。
【００３９】
（第１の実施形態）
図１は、本発明の第１の実施形態に係わる配置配線プログラムの機能を示すイメージ図である。
【００４０】
図１（ａ）は、本発明の特徴であるフロート配線セル１１を示すイメージ図である。フロート配線セル１１は、接続ピン１２、１３、およびそれらを接続する内部ネット１４を持っている。接続ピン１２、１３は入力ピンの機能と、出力ピンの機能の両方を持っており、他の回路セルの入力ピンとも、あるいは、出力ピンともネットで接続することができる。ピンおよびネットは、論理設計上の抽象的な概念であるが、図では、それらに対応するレイアウトイメージで表現してある。
【００４１】
フロート配線セル１１は、ゲートレベルのセルが対応するレイアウト情報を持つように、その内部ネット１４がレイアウトとして形成される際の配線層の種類、配線の幅、配線の長さをレイアウト情報としてもっている。さらに、フロート配線セル１１は、接続ピン１２と１３に接続された外部ネットが、レイアウトとして形成される際に、フロート配線セル１１が持つ内部ネット１４と異なる配線層に割り当てられた場合、そのピン位置に発生するビアコンの種類と形状などのレイアウト情報も持っている。
【００４２】
このフロート配線セル１１は、ゲートレベルのセルなどとは異なり、ライブラリとして持つのではなく、後述するフロート配線セル処理４１で必要に応じて生成される。
【００４３】
次に、本発明の配置配線プログラムでのフロート配線セル１１の使用方法を、簡単な例を用いて説明する。図１（ｂ）は、３つのＮＡＮＤゲートからなる回路例、図１（ｃ）は、図１（ｂ）の回路にフロート配線セル１１を追加したイメージ図である。
【００４４】
今、図１（ｂ）に示すように、ＮＡＮＤ１５の出力ピン１６と、ＮＡＮＤ１７の一方の入力ピン１８、およびＮＡＮＤ１９の一方の入力ピン２０が接続されたネットリストがあるとする。ここで、各ピン１６、１８、２０に接続できるネットは１つであるとし、必要であれば、図１（ｂ）のように、ネット上に分岐点２１を設けてネットを分岐するものとする。
【００４５】
この様なネットリストに対して、図１（ｃ）に示すようにフロート配線セル１１ａを発生させる。すなわち、ＮＡＮＤ１５の出力ピン１６と分岐点２１の間にフロート配線セル１１ａを挿入し、ＮＡＮＤ１５の出力ピン１６とフロート配線セル１１ａの接続ピン１２ａを接続し、その接続ピン１３ａと分岐点２１を接続する。次に、ＮＡＮＤ１７の入力ピン１８と分岐点２１の間にフロート配線セル１１ｂを挿入し、分岐点２１とフロート配線セル１１ｂの接続ピン１２ｂを接続し、フロート配線セル１１ｂの接続ピン１３ｂとＮＡＮＤ１７の入力ピン１８を接続する。同様に、ＮＡＮＤ１９の入力ピン２０と分岐点２１の間にフロート配線セル１１ｃを挿入し、分岐点２１とフロート配線セル１１ｃの接続ピン１２ｃを接続し、フロート配線セル１１ｃの接続ピン１３ｃとＮＡＮＤ１９の入力ピン２０を接続する。
【００４６】
このようにして追加したフロート配線セル１１ａ、１１ｂ、および１１ｃに、ＦＩＢ装置による加工が可能となるように、配線の種類、配線の幅、および配線の長さの情報を与えておけば、最終的にできあがったレイアウトは、出力ピン１６、入力ピン１８、２０に対して自由に接続変更ができるものとなる。具体的には、ＦＩＢ装置の能力、設計ルールなどにも依存するが、配線の種類は電源主幹線の配線層を除く最上層、配線の幅は設計ルールの最小値、配線の長さは配線幅の数倍、が適当である。
【００４７】
電源主幹線の配線線は通常最上層または最上層からの数層に割り当てられるが、数十μｍの配線幅があり、ＦＩＢ装置による加工の際に必要に応じて数μｍ角の大きさで除去しても、チップの動作には全く影響がでない。したがって、電源主幹線の配線層の下であっても、他の配線がその上部をふさいでいない限り、ＦＩＢ加工には支障はない。
【００４８】
ここではごく簡単な例で説明したが、すべてのピンをＦＩＢ加工による接続変更可能とするためには、次のようなルールにしたがってフロート配線セル１１をネット上に追加していけばよい。
【００４９】
すなわち、そのピンに接続されたネットが分岐点を持たない場合、つまり、配置されたセルの出力ピンと入力ピンが１つのネットで直接接続されている場合には、そのネット上に１つのフロート配線セル１１を追加する。
【００５０】
また、そのピンに接続されたネットが分岐点を持つ場合、つまり、複数の入出力ピンが分岐点を介して複数のネットで接続されている場合には、図１（ｃ）のように、そのピンと分岐点の間のネット上に１つのフロート配線セル１１を追加する。
【００５１】
図２は本発明の第１の実施形態に係わる開発工程の概略を示すフローチャートである。図には、図５と同様、仕様決定後の設計工程以降を示している。開発工程は、大別すると、設計工程３１、製造工程３２、評価修正工程３３に分けられる。
【００５２】
設計工程３１には、論理設計ステップ３４とレイアウト設計ステップ３５があり、論理設計ステップ３４では、全体仕様に基づいてシステム構成が決められ、詳細仕様にしたがって機能ブロックごとの回路設計がなされ、ネットリストが作成される。
【００５３】
回路設計では、あらかじめ用意されているセルライブラリやＩＰライブラリが使用される。次に、レイアウト設計ステップ３５で、このネットリストとライブラリを用いて、本発明の配置配線プログラムにより具体的なチップレイアウトが作成される。
【００５４】
レイアウト設計ステップ３５には、従来と同様、セル配置ステップ３６、概略配線ステップ３７、ＥＣＯステップ３８、冗長セル配置ステップ３９、詳細配線ステップ４０があり、さらに、本発明に係わるフロート配線セル処理４１として、配線セル生成ステップ４２、配線セル追加ステップ４３、配線セル配置ステップ４４の３つのステップが追加されている。このフロート配線セル処理４１は、冗長セル配置ステップ３９の後、詳細配線ステップ４０の前に行われる。
【００５５】
セル配置ステップ３６では、ネットリスト中にあるゲートレベルセルおよび機能プロック単位のＩＰセルを、システム構成時に決定した領域にそれぞれ配置する。
【００５６】
概略配線ステップ３７では、配置されたセルのピン間の配線経路をネットリスト中の接続情報に基づいて大局的に決定し、結果を概略配線情報としてネットリストに追加する。この段階では、まだ、各配線に割り当てる配線層の種類や空間的な詳細経路を示す配線グリッドの割り付けは行われない。
【００５７】
ＥＣＯステップ３８では、まず、得られた概略配線情報をもとに、タイミングドリブンシミュレーションを行い、ネットごとの遅延時間を求める。次に、この結果をもとに、仕様を満足するように、ネットをドライブするバッファサイズの変更、長距離配線に対応するネットへのバッファの追加、ネット負荷を分散するためのバッファおよびネットの分割、あるいは、信号タイミングを変更するためのネット接続修正、などが行われる。それらの結果はネットリストにフィードバックされ、その概略配線情報も同時に更新される。
【００５８】
冗長セル配置ステップ３９では、ゲートレベル、あるいはゲートを構成する素子レベルでのセルレイアウトをチップの空き領域に配置する。これは、この段階以降で行われる仕様の小変更、プロセスパラメータの修正、詳細シミュレーション、などに伴う設計変更に使用される。また、場合によっては、製造後の評価で見つかった回路バグへの対応などにも使用される。
【００５９】
フロート配線セル処理４１では、上述の冗長セル配置ステップ３９までの過程で更新されたネットリストをもとに、フロート配線セル１１の生成、ネットへの追加、およびチップ上への配置が行われる。
【００６０】
まず、配線セル生成ステップ４２で、内部ネット１４で使用する配線層の種類、配線の幅、配線の長さが決定され、レイアウト情報としてのフロート配線セル１１が生成される。これらの値はデフォルトで与えられたものを用いるほかに、次の配線セル追加ステップ４３で、その段階でのネットリストを回路図イメージで表示し、各フロート配線セル１１に対して異なる値をインタラクティブに入力し、形状の異なる別のレイアウトセルとして生成することもできる。
【００６１】
配線層の種類が決定すると、それに伴って接続ピン１２と１３のデフォルトの配線層が決定される。これにより、詳細配線ステップ４０で、これらに接続する外部ネットの配線層が決定されたとき、そこにビアコンを形成するかどうかが判定できるようになる。重要なことは、そのフロート配線セル１１で使用する配線層が、接続される外部ネットに対応する配線層と同じときには、ビアコンは形成されないということである。
【００６２】
次に、配線セル追加ステップ４３で、ネットリスト中のすべてのピンに対してフロート配線セル１１が追加される。追加ルールは、図１（ｃ）で説明したように、そのピンに接続されたネットが分岐点を持たない場合は、そのネット上に１つのフロート配線セル１１を追加し、ネットが分岐点を持つ場合は、そのピンと分岐点との間に１つのフロート配線セル１１を追加するというものである。
【００６３】
ただし、これは、フロート配線セル１１の追加によってすべてのピンの接続をＦＩＢ加工で修正可能にする、という目的を達成するためのルールであり、後述するように、フロート配線セル１１を別の目的で使用する場合には、それに適した追加ルールに変更する必要がある。
【００６４】
次に、配線セル配置ステップ４４で、概略配線情報をもとに各フロート配線セル１１が配置される。概略配線情報を利用することで、フロート配線セル１１同士が互いに配線の障害となることが避けられる。ここで、フロート配線セル１１は従来のゲートレベルのセルと同様に扱えるので、配置配線の評価関数として従来のものがそのまま使用できる。
【００６５】
たとえば、チップを一定の区画に分割し、各区画内でのピンや配線の混雑度、区画境界での配線交差数、およびその配線遅延を用いて評価関数を定義し、その値を極小にするように配置を決定すれば、フロート配線セル１１の全体配置を最適化することができる。これには、従来の配置配線アルゴリズムをほとんど変更せずに使用できるメリットがある。
【００６６】
フロート配線セル処理４１が終了したら、詳細配線ステップ４０で、各ネットに配線層の種類を割り付け、その詳細経路の配線グリッド位置を決定する。このとき、配線セル生成ステップ４２で説明したように、フロート配線セル１１の配線層とそれに接続される外部ネットの配線層が異なる場合には、そこにビアコンを形成する情報を追加する必要がある。これによって、チップ上の全てのセルと配線の位置が決定し、チップ全体のレイアウトデータを作成できるようになる。
【００６７】
設計工程３１が終わると、そのレイアウトデータをもとに、製造工程３２でその半導体装置のチップが製造される。製造工程３２は従来と同じなので、説明は省略する。
【００６８】
こうしてチップが出来上がると、評価修正工程３３で仕様に対する評価と必要な修正が行われる。評価ステップ４５では、仕様に基づいて、チップの回路動作などの初期特性、温度や湿度、電源電圧などの使用環境に対する耐性、加速試験による長期の経年変化に対する信頼性、などが詳細に検査される。
【００６９】
この結果をもとに、評価判定ステップ４６で、開発の完成度が製品として量産、出荷が可能なレベルかどうかが判定される。仕様を完全に満たし、完成度が十分と判定（ＯＫ）されれば、この製品の開発は終了する。もし、問題があると判定（ＮＧ）された場合は、解析ステップ４７に進み、その原因を特定する不良解析が行われる。
【００７０】
上述したように、本発明の配置配線プログラムを使用した場合、すべてのピンの接続変更が可能となっているので、解析ステップ４７で原因が特定され、その解決手段として回路修正が必要な場合は、ただちにＦＩＢ加工ステップ４８で回路修正が行われ、評価ステップ４５に戻ることができる。
【００７１】
上記第１の実施形態によれば、フロート配線セル１１を使用することで、すべてのピンにつながる配線の一部をＦＩＢ加工可能な上層配線に割り当てることができるので、半導体装置のチップ製造後に、ＦＩＢ装置によりすべてのピンに対して接続を自由に変更することができる。ＦＩＢ装置による加工はよほど複雑な回路修正でない限り、１日あれば終了するので、従来に比べ、製品の開発期間を大幅に短縮することができる。
【００７２】
また、フロート配線セル１１は従来の評価関数を用いてその配置を最適化できるので、従来の配置配線アルゴリズムをほとんど変更することなく使用できる。
【００７３】
さらに、フロート配線セル１１は外部ネットとの接続において、不必要なビアコンを発生させないので、チップ全体の配線経路の自由度を高く保つことができ、全体として配線領域の増加を抑制できる。
【００７４】
このように最適化することで、すべてのピンがＦＩＢ装置による加工可能であるにもかかわらず、その配線領域の増加を極小化することができる。
【００７５】
本実施形態の説明では、一例として、フロート配線セル１１をＦＩＢ加工による開発期間短縮の目的で利用する方法を示したが、本発明はこれに限られるものではない。たとえば、クリティカルパスの配線遅延を短くし回路動作を高速化するために、クリティカルパスのゲートレベル接続配線を低抵抗配線に優先的に割り当てる目的でフロート配線セル１１を利用することもできる。その場合、タイミングドリブンシミュレーションで得られた結果をもとに、高速化したいネットにフロート配線セル１１を必要な数だけ追加し、その内部ネット１４の配線の種類に低抵抗配線を割り当てればよい。
【００７６】
（第２の実施形態）
図３は、本発明の第２の実施形態に係わる配置配線プログラムの機能を示すイメージ図である。
【００７７】
図３（ａ）は、Ｔ型フロート配線セル６１を示すイメージ図である。Ｔ型フロート配線セル６１は、接続ピン６２、６３、６４、およびそれらを接続する内部ネット６５を持っている。内部ネット６５はＴ型フロート配線セル６１内で分岐点６６を持ち、接続ピン６２と分岐点６６、および、分岐点６６と接続ピン６３、分岐点６６と接続ピン６４がそれぞれ接続されている。
【００７８】
図１と同様、ピンおよびネットは、それらに対応するレイアウトイメージで表現されており、配線の種類、配線の幅、配線の長さ、および、ビアコンのレイアウト情報を持っている。
【００７９】
図３（ｂ）は、図１（ｂ）の回路にＴ型フロート配線セル６１を追加したイメージ図である。すなわち、図１（ｂ）の分岐点２１の位置にＴ型フロート配線セル６１を追加し、ＮＡＮＤ１５の出力ピン１６とＴ型フロート配線セル６１の接続ピン６２を接続し、その接続ピン６３とＮＡＮＤ１７の一方の入力ピン１８を接続し、同じく接続ピン６４とＮＡＮＤ１９の一方の入力ピン２０を接続している。
【００８０】
図１（ｃ）と比べればわかるように、これは、図１（ｃ）における３つのフロート配線セル１１ａ、１１ｂ、１１ｃを図１（ｃ）の分岐点２１で結合（以下これを縮約という）したものと等価である。したがって、Ｔ型フロート配線セル６１に、ＦＩＢ装置による加工が可能となるように、配線の種類、配線の幅、および配線の長さの情報を与えておけば、出力ピン１６、入力ピン１８、２０に対して、自由に接続変更ができるものとなる。
【００８１】
この縮約ステップは、第１の実施形態で説明した開発フロー（図２）の、フロート配線セル１１をネットに追加する配線セル追加ステップ４３の後、配線セル配置ステップ４４の前に行うのが適当である。
【００８２】
Ｔ型フロート配線セル６１を用いた開発フローは、第１の実施形態とほとんど同じなのでここでは詳細な説明は省略する。
【００８３】
上記第２の実施形態によれば、第１の実施形態で述べた発明の効果に加えて、複数のフロート配線セル１１を１つのＴ型フロート配線セル６１で代替できるので、配置配線プログラムに使用するハードウェアリソースが同じでも、より大規模なシステムの開発を行える、というメリットがある。
【００８４】
本実施形態の説明では、Ｔ型フロート配線セル６１は、３つの接続ピン６２、６３、および６４を持つとしたが、本発明はこれに限られるものではない。また、Ｔ型フロート配線セル６１はフロート配線セル１１を縮約して生成するとしたが、あらかじめ接続ピンの数と種類、およびそれらを接続する内部ネットの形態を限定したセルライブラリを用意し、これらに適合するものだけを縮約、発生して使用することもできる。
【００８５】
（第３の実施形態）
図４は、本発明の第３の実施形態に係わる配置配線プログラムの機能を示すイメージ図である。
【００８６】
図４（ａ）は、別のフロート配線セル８１を示すイメージ図である。フロート配線セル８１は、接続ピン８２を持っている。フロート配線セル８１は、レイアウト作成時に発生するビアコンと、その上に形成する配線層の小パターンを規定する配線の種類、配線の幅、および、ビアコンの種類、形状などのレイアウト情報を持っている。
【００８７】
つまり、フロート配線セル８１は、フロート配線セル１１において、配線の長さを０としたものと等価であると考えればよい。したがって、フロート配線セル８１の生成、ネットへの追加、チップ上の配置は、第１の実施形態と同様に行うことができる。唯一異なる点は、接続ピン８２には外部ネットがひとつだけ接続され、レイアウト作成時には、ビアコン上に形成される配線層の小パターンが孤立した状態になることである。
【００８８】
これは、フロート配線セル８１が、冗長セルの入出力ピンを上層配線まで引き出す目的で使用されるためである。以下、例を用いて説明する。
【００８９】
図４（ｂ）は、冗長回路にフロート配線セル８１を追加したイメージ図である。ここでは、冗長回路の例として、ＮＡＮＤ８３とＤラッチ８４が示してある。ＮＡＮＤ８３の２つの入力ピン８５、８６、および出力ピン８７、Ｄラッチ８４のデータ入力ピン８８、クロック入力ピン８９、および２つの出力ピン９０、９１、のそれぞれにフロート配線セル８１ａ−８１ｇが、ネットを用いて接続されている。
【００９０】
冗長セルは、前述したように、レイアウト設計以降で行われるかもしれない回路修正に対応するために、あらかじめ余分な回路をチップの空き領域に配置しておくもので、当初のレイアウトでは孤立したパターンとなっている。つまり、冗長回路の入出力ピンは、ネットリスト上他のネットには接続されていない状態にある。したがって、このままレイアウトを発生してしまうと、その入出力に相当するパターンは下層の配線層が使用され、チップ製造後にＦＩＢ装置で接続変更して使用することができなくなってしまう。
【００９１】
冗長回路のすべての入出力ピンにあらかじめ最上層までのビアコンを発生させておく方法もあるが、その場合、冗長回路セルを配置した領域の上部は配線領域として使用できなくなってしまう可能性が高い。
【００９２】
図４（ｂ）に示すように、これらの入出力ピン８５−９１にフロート配線セル８１ａ−８１ｇを接続しておけば、本発明の配置配線プログラムによって、各冗長回路のすべての入出力ピンが、ＦＩＢ加工可能な上層配線層まで引き出され、必要な修正に対して、ＦＩＢ装置で対応できるようになる。重要なことは、フロート配線セル８１は、配置配線プログラムによってその位置が自由に変更できることである。したがって、冗長回路セルを配置した上部領域も配線領域として自由に利用することができる。
【００９３】
フロート配線セル８１の生成は、第１の実施形態と同様に行うこともできるが、その目的に鑑みて、開発製品ごとにデフォルトの値を決めて同一の形状で生成させる方が望ましい。また、そのネットへの追加ルールは、ネットリスト中で孤立したピンを探し出し、すべての孤立ピンに接続するとすればよい。上述したように、フロート配線セル８１は、フロート配線セル１１の特殊な形態と考えられるので、配置の評価関数も、第１の実施形態と同じで問題なく、同じアルゴリズムで配置配線を行うことができる。
【００９４】
フロート配線セル８１を用いた開発フローは、第１の実施形態と同じなのでここでは詳細な説明は省略する。
【００９５】
上記第３の実施形態によれば、第１の実施形態で述べた発明の効果に加えて、冗長回路のすべてのピンをＦＩＢ装置で加工可能な配線層まで引き出せるので、チップ製造後に、配線の接続変更ばかりでなく、冗長回路の追加によって、論理設計のある程度の変更、修正にも柔軟に対処できる。
【００９６】
また、第３の実施形態の説明では、接続ピン８２は、入力ピンと出力ピンの両方の機能を持つ、としたが、これらを分離し、それぞれ、入力ピン用のフロート配線セル８１、出力ピン用のフロート配線セル８１とすることもできる。
【００９７】
上記第１の実施形態〜第３の実施形態の説明では、フロート配線セル１１、６１、および８１は、配線セル生成ステップ４２で必要に応じて生成するとしたが、あらかじめセルライブラリとしてシステムに登録しておき、これを利用することもできる。また、配線セル追加ステップ４３、あるいは、配線セル配置ステップ４４が終了した後に、そのイメージを表示し、インタラクティブに追加、修正するようにしてもよい。
【００９８】
さらに、本発明の配置配線プログラムを使用したフロート配線セル処理４１の実行順序は、必ずしも図２のフローに限定されない。セル配置ステップ３６の後に行うこともできるし、概略配線ステップ３７の後に行うこともできる。あるいは、冗長セル配置ステップ３９の後も含め、これらの各ステップで、それぞれ対象を絞って段階的に行うこともできる。
【００９９】
【発明の効果】
以上説明したように本発明によれば、所望の配線層を持ったフロート配線セルを、ネットリスト中にあるすべてのネットに割り当てることができ、評価関数を用いてフロート配線セルを最適配置できるので、チップ製造後にＦＩＢ装置で容易、かつ、柔軟に設計変更に対応することができ、開発期間の大幅な短縮を実現することができる。
【０１００】
また、本発明によれば、所望の配線層を持ったフロート配線セルを、任意のネットに割り当てることができるので、配線領域の増加を最小限に押さえて、クリティカルパスを低抵抗配線で容易に接続でき、高速な半導体装置を実現することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係わる配置配線プログラムの機能を示すイメージ図。
【図２】本発明の第１の実施形態〜第３の実施形態に係わる半導体装置の製造方法の概略を示す開発工程フローチャート。
【図３】本発明の第２の実施形態に係わる配置配線プログラムの機能を示すイメージ図。
【図４】本発明の第３の実施形態に係わる配置配線プログラムの機能を示すイメージ図。
【図５】従来の半導体装置の製造方法の概略を示す開発工程フローチャート。
【図６】従来の半導体装置における問題点を説明するための図。
【符号の説明】
１１、８１  フロート配線セル
１２、１３、６２、６３、６４、８２  接続ピン
１４、６５  内部ネット
１５、１７、１９、８３  ＮＡＮＤ
１６、８７、９０、９１  出力ピン
１８、２０、８５、８６、８８、８９  入力ピン
２１、６６  分岐点
３１  設計工程
３２  製造工程
３３  評価修正工程
３４  論理設計ステップ
３５  レイアウト設計ステップ
３６  セル配置ステップ
３７  概略配線ステップ
３８  ＥＣＯステップ
３９  冗長セル配置ステップ
４０  詳細配線ステップ
４１  フロート配線セル処理
４２  配線セル生成ステップ
４３  配線セル追加ステップ
４４  配線セル配置ステップ
４５  評価ステップ
４６  評価判定ステップ
４７  解析ステップ
４８  ＦＩＢ加工ステップ
６１  Ｔ型フロート配線セル
【図１】
2004157627.tif 000003
【図２】
2004157627.tif 000004
【図３】
2004157627.tif 000005
【図４】
2004157627.tif 000006
【図５】
2004157627.tif 000007
【図６】
2004157627.tif 000008