(57)【特許請求の範囲】
【請求項１】
入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セル階層のチェックを行うセル階層チェック部と、セル階層チェック部でセルをチェックした結果からバッティングしたセルを見つけるバッティングセルチェック部と、バッティングしているセルをバッティングしないよう置換えるバッティングセル置換部を備えた半導体設計装置。
【請求項２】
入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セルライブラリのデータの中から同一処理を行うことが可能な特殊セルに相当するデータを認識する特殊セル認識部と、特殊セル認識部で認識した特殊セルに相当するデータを特殊セルに置換する特殊セル置換部を備えた半導体設計装置。
【請求項３】
入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、機能ごとにセルを割り振る指示をするセル階層指定部と、セル階層指定部で指示した機能ごとのセルを作成するセル階層再構築部を備えた半導体設計装置。
【請求項４】
入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セル階層の深さを指示をするセル階層指定部と、セル階層指定部で指示した階層の深さでセルを作成する再構築セル作成部を備えた半導体設計装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体マスクレイアウトを設計する際に用いられる半導体設計装置に関する。
【０００２】
【従来の技術】
従来より、半導体マスクレイアウトを設計する場合には、セルを登録したセルライブラリを、コンパクション、マイグレーション、配置配線の手法を用いて設計を行っていた。
【０００３】
以下、それぞれの手法について詳細に説明する。
第１の手法として、セルライブラリに登録されたセルを、デザインルールを満たした状態でセルサイズを縮小化するコンパクションを用いている。
【０００４】
第２の手法として、セルライブラリに登録されたセルを、登録されたセルの設計デザインルール以外のデザインルールで再度作成するマイグレーションを用いている。
【０００５】
第３の手法として、回路図から作成した論理接続情報と、セルを登録したセルライブラリを、配置配線部で配置配線して作成する手法を用いている。
【０００６】
図１０は、従来の半導体設計装置のブロック図であり、１は入力部、２は入力部１から入力した情報でデータを処理するＣＰＵ、３はセルを登録したセルライブラリ、４はＣＰＵ２とセルライブラリ３のマスクレイアウトデータを選択的に合成してコンパクションを行うコンパクション部、５はＣＰＵ２とセルライブラリ３のマスクレイアウトデータを選択的に合成してマイグレーションを行うマイグレーション部、６はＣＰＵ２とセルライブラリ３のマスクレイアウトデータを選択的に合成して配置配線を行う配置配線部、７はＣＰＵ２の結果を出力する出力部である。
【０００７】
図１１は、従来のインバータセルの平面図であり、８はＰＭＯＳ領域マスクパターン、９はＮＭＯＳ領域マスクパターン、１０は拡散層領域マスクパターン、１１は第１メタルマスクパターン、１２はゲート電極マスクパターン、１３はコンタクトホールマスクパターンである。
【０００８】
図２は、セルライブラリ３に登録されたセルＡの平面図であり、同じくセルライブラリ３に登録されたセルＢ、セルＣ、セルＤ、セルＥ、セルＦ、セルＧ、セルＨで構成されている。
【０００９】
図３は、セルライブラリ３に登録されたセルＡのセルツリー図であり、セルＡがセルＢとセルＨとセルＥで構成されていて、その下の階層ではセルＢはセルＣとセルＤで、セルＨはセルＤで、セルＥはセルＦで、更にその下の階層ではセルＦはセルＧで構成されている。
【００１０】
以上のように構成された半導体設計装置について、以下その動作を説明する。まず、第１の手法の場合、図１０の入力部１に入力されたコンパクションを行いたいセルと、デザインルールが、ＣＰＵ２で選択される。
【００１１】
ここで、入力部１で入力したコンパクションを行いたいセルがインバータセルである例を用いて以下、説明する。
【００１２】
この時、ＣＰＵ２では、入力部１で入力したコンパクションを行いたいセルがインバータセルであることを判断し、セルライブラリ３からインバータセルのマスクレイアウトデータをコンパクション部４に送る。次に、ＣＰＵ２で選択されたデザインルールをコンパクション部４に送る。この時、コンパクション部４では、セルライブラリ３からのインバータセルのマスクレイアウトデータと、ＣＰＵ２からのデザインルールを比較検討しながら、デザインルールを満たした状態で最小のセル面積になるようにコンパクションを行う。その結果、コンパクションを行ったインバータセルのマスクレイアウトデータを出力部７から出力する。
【００１３】
次に、第２の手法の場合、図１０の入力部１に入力されたマイグレーションを行いたいセルと、マイグレーションを行うデザインルールが、ＣＰＵ２で選択される。この時、ＣＰＵ２では、入力部１で入力したマイグレーションを行いたいセルがインバータセルであることを判断し、セルライブラリ３からインバータセルのマスクレイアウトデータをマイグレーション部５に送る。次に、ＣＰＵ２で選択されたマイグレーションを行うデザインルールをマイグレーション部５に送る。この時、マイグレーション部５では、セルライブラリ３からのインバータセルのマスクレイアウトデータと、ＣＰＵ２からのマイグレーションを行うデザインルールを比較検討しながら、マイグレーションを行うデザインルールを満たした状態でインバータセルのマイグレーションを行う。その結果、マイグレーションを行ったインバータセルのマスクレイアウトデータを出力部７から出力する。
【００１４】
次に、第３の手法の場合、入力部１に入力された回路図が、ＣＰＵ２で選択される。この時ＣＰＵ２では、入力部１から入力した回路図のセルの論理接続情報を抽出する。次に、セルを登録したセルライブラリ３のマスクレイアウトデータとＣＰＵ２の論理接続情報は配置配線部６に送られる。この時、配置配線部６ではＣＰＵ２のセルの論理接続情報と、セルライブラリ３のマスクレイアウトデータを選択的に合成して配置配線を行う。その結果、入力部１で入力した回路図のマスクレイアウトデータを出力部７から出力する。
【００１５】
【発明が解決しようとする課題】
しかしながら、上記従来の第１の構成では、セルライブラリ３に登録されているセルの構成が階層構造で、図３に示すセルＤのように他の階層に同名のセルがあった場合、片方のセルにコンパクションを行うと、他方のセルがコンパクションを必要としない場合でもコンパクションを行ってしまうという問題があった。また、セルの機能毎にコンパクションを行いたい場合、セルライブラリ３のセルの機能が各々分散したままでは、セル機能を実現するのにどのセルから順番にコンパクションを行えば効率よくセルの機能を実現するかが、判断出来ないという問題があった。また、その際に各機能セルの階層構成が深い場合、下の階層に下ってセルがある毎にコンパクションを行うためコンパクションの回数が増大しコンパクション実行時間が増大するという問題があった。
【００１６】
上記従来の第２の構成では、コンタクトパターンのように同じ形状で多数使用されているものを、コンタクトパターンデータのままマイグレーションを実行すると、コンタクトパターンデータがある毎にマイグレーションを繰り返し、マイグレーション時間が増大するという問題があった。
【００１７】
上記従来の第３の構成では、セルライブラリ３に登録されているセルの構成が機能毎にまとまっていない場合に、回路特性が一番良くなるような配置を考慮した機能セルごとの配置配線を実現出来ないという問題があった。また、セルライブラリ３に登録されているセルの構成が階層構造で、階層が深い場合には、配置配線後のセル階層が更に深くなり、階層ごとのセルデータ管理が難しくなるという問題があった。
【００１８】
本発明は上記従来の問題点を解決するもので、半導体マスクレイアウトを設計する際に、他階層に同じセルがあっても他方のセルを意識せずに設計が行え、パターンの中から同一処理を行う特殊セルを抽出及び置換することで処理時間の削減が行え、機能ごとにセルを再構築することで機能セル間の回路特性も考慮した設計が行え、セル階層の深さを任意に再構築することでセルデータ管理を容易に行えることを可能にした半導体設計装置を提供することを目的とする。
【００１９】
【課題を解決するための手段】
この第１の課題を解決するために、本発明の半導体設計装置は、セル階層のチェックを行い、同じセル名で他階層に存在するバッティングセルを見つけた場合に置換を行うように構成したものである。また、セルを機能ごとに割り振り、機能ごとにセル作成を行うように構成したものである。また、セル階層の深さを指示し、指示した階層でセル作成を行うように構成したものである。
【００２０】
この第２の課題を解決するために、本発明の半導体設計装置は、パターンの中から同一処理を行う特殊セルになる部分を抽出し、特殊セルのデータに置換を行うように構成したものである。
【００２１】
この第３の課題を解決するために、本発明の半導体設計装置は、セルを機能ごとに割り振り、機能ごとにセル作成を行うように構成したものである。また、セル階層の深さを指示し、指示した階層でセル作成を行うように構成したものである。
【００２２】
これにより、半導体マスクレイアウトを設計する際に、他階層に同じセルがあっても他方のセルを意識せずに設計が行え、パターンの中から同一処理を行う特殊セルを抽出及び置換することで処理時間の削減が行え、機能ごとにセルを再構築することで機能セル間の回路特性も考慮した設計が行え、セル階層の深さを任意に再構築することでセルデータ管理を容易に行えることを可能にした半導体設計装置が得られる。
【００２３】
【発明の実施の形態】
本発明の請求項１に記載の発明は、入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セル階層のチェックを行うセル階層チェック部と、セル階層チェック部でセルをチェックした結果からバッティングしたセルを見つけるバッティングセルチェック部と、バッティングしているセルをバッティングしないよう置換えるバッティングセル置換部を備えている。
【００２４】
これにより、他階層に同じセルがあっても他方のセルを意識せずに設計を行うことができる。
【００２５】
本発明の請求項２に記載の発明は、入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セルライブラリのデータの中から同一処理を行うことが可能な特殊セルに相当するデータを認識する特殊セル認識部と、特殊セル認識部で認識した特殊セルに相当するデータを特殊セルに置換する特殊セル置換部を備えている。
【００２６】
これにより、データの中から特殊セルになる部分を抽出し、特殊セルのデータに置換を行うことができる。
【００２７】
本発明の請求項３に記載の発明は、入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、機能ごとにセルを割り振る指示をするセル階層指定部と、セル階層指定部で指示した機能ごとのセルを作成するセル階層再構築部を備えている。
【００２８】
これにより、セルを機能ごとに割り振り、機能ごとにセル作成を行うことができる。
【００２９】
本発明の請求項４に記載の発明は、入力部から入力した情報でデータを処理するＣＰＵと、セルを登録したセルライブラリと、セルライブラリのデータをＣＰＵで処理した結果を出力する出力部とを備えた半導体設計装置であって、さらに、セル階層の深さを指示をするセル階層指定部と、セル階層指定部で指示した階層の深さでセルを作成する再構築セル作成部を備えている。
【００３０】
これにより、セル階層の深さを指示し、指示した階層でセル作成を行うことができる。
【００３１】
以下、本発明の実施の形態について図１から図９を用いて説明する。
図１は本発明の実施の形態にもとづく半導体設計装置のブロック図を示すものである。図１において、２０はセル階層構造をチェックするセル階層チェック部、２１は他の階層に同名のセルがあるかをチェックするバッティングセルチェック部、２２はバッティングセルの名前を変えて置換するバッティングセル置換部、２３はマスクレイアウトデータの中から特殊セルになる部分を抽出する特殊セル認識部、２４はマスクレイアウトデータの中から特殊セル認識部２３で抽出した特殊セル相当部分を特殊セルのセルデータに置換する特殊セル置換部、２５はセルを機能ごとに割振る指示やセル階層構造の指示を行うセル階層指定部、２６はセル階層指定部２５からのセルを機能ごとに割り振る指示で機能ごとにセル作成を行うセル階層再構築部、２７はセル階層指定部２５からのセル階層構造を再構築する指示でセル作成を行う再構築セル作成部である。
【００３２】
なお、１は入力部、２はＣＰＵ、３はセルライブラリ、４はコンパクション部、５はマイグレーション部、６は配置配線部、７は出力部で、これらは従来例の構成と同じものである。
【００３３】
図２は、本発明の実施の形態におけるセルライブラリ３に登録されたセルＡの平面図であり、同じくセルライブラリ３に登録されたセルＢ、セルＣ、セルＤ、セルＥ、セルＦ、セルＧ、セルＨで構成され、これらは従来例の構成と同じものである。
【００３４】
図３は、本発明の実施の形態におけるセルライブラリ３に登録されたセルＡのセルツリー図であり、セルＡがセルＢとセルＨとセルＥで構成されていて、その下の階層ではセルＢはセルＣとセルＤで、セルＨはセルＤで、セルＥはセルＦで、更にその下の階層ではセルＦはセルＧで構成され、これらは従来例の構成と同じものである。
【００３５】
図４は、本発明の実施の形態におけるセルＡのセルツリー図で、図３のセルＤがそれぞれセルＤＯとセルＤＣにセル名が変わっている。
【００３６】
図５は、本発明の実施の形態におけるインバータセルの平面図であり、３０はコンタクトセルＩ、３１はコンタクトセルＪである。
【００３７】
なお、８はＰＭＯＳ領域マスクパターン、９はＮＭＯＳ領域マスクパターン、１０は拡散層領域マスクパターン、１１は第１メタルマスクパターン、１２はゲート電極マスクパターンで、これらは従来例の構成と同じものである。
【００３８】
図６は、本発明の実施の形態におけるセルＡの平面図であり、セルＢＮ、セルＨＮ、セルＥＮ、セルＤＯ、セルＤＣと、セルライブラリ３に登録されたセルＣ、セルＦ、セルＧで構成され、セルＣ、セルＦ、セルＧは従来例の構成と同じものである。
【００３９】
図７は、本発明の実施の形態におけるセルライブラリ３に登録されたセルＡのセルツリー図であり、セルＡがセルＢＮとセルＨＮとセルＥＮで構成されていて、その下の階層ではセルＢＮはセルＣで、セルＨＮはセルＤＯとセルＤＣで、セルＥＮはセルＦで、更にその下の階層ではセルＦはセルＧで構成されている。
【００４０】
図８は、本発明の実施の形態におけるセルＡの平面図であり、セルＢＮＭ、セルＨＮＭ、セルＥＮＭで構成される。
【００４１】
図９は、本発明の実施の形態におけるセルライブラリ３に登録されたセルＡのセルツリー図であり、セルＡがセルＢＮＭとセルＨＮＭとセルＥＮＭで構成されている。
【００４２】
以上のように構成された半導体設計装置について、以下その動作を説明する。
まず、本発明の第１の実施形態について説明する。
【００４３】
図２に示すセルＡをコンパクションする例を用いて以下説明する。まず、入力部１にデザインルールとセルＡをコンパクションする事を入力する。この時ＣＰＵ２では入力部１の情報からセルライブラリ３に対してセルＡのマスクレイアウトデータをセル階層チェック部２０に送るよう判断し、セルライブラリ３からセルＡのマスクレイアウトデータをセル階層チェック部２０に送る。この時、図３に示すようにセル階層チェック部２０ではセルＡがセルＢとセルＨとセルＥで構成されていて、その下の階層ではセルＢはセルＣとセルＤで、セルＨはセルＤで、セルＥはセルＦで、更にその下の階層ではセルＦはセルＧで構成されていることをセル階層リストとして作成する。次に、セル名とそのセルの構成されるセル階層構造を抽出したセル階層リストはバッティングセルチェック部２１に送られセルＤがセルＢとセルＨ中に同じセル名でバッティングして存在していることを見つけだす。次に、バッティングセルがセルＤである情報をバッティングセル置換部２２に送ると、バッティングセル置換部２２ではセルＤのマスクレイアウトデータを別の名前を付ける。ここではセルＤＯと、セルＤＣとしてコピーし、セルＢの下の階層のセルＤはセルＤＯとして、セルＨの下の階層のセルＤはセルＤＣとして置き換える。この時、セルＡのセルツリーは図４のようになる。バッティングセル置換部２２でセル置換が行われた後、セルＡのマスクレイアウトデータをコンパクション部４に送る。同時にＣＰＵ２で選択されたデザインルールをコンパクション部４に送る。この時、コンパクション部４では、セルＡのマスクパターンデータと、ＣＰＵ２からのデザインルールを比較検討しながら、デザインルールを満たした状態で最小のセル面積になるようにコンパクションを行う。ここで、コンパクションの実行例を図１１に示すインバータセルを用いて以下説明する。８はＰＭＯＳ領域マスクパターン、９はＮＭＯＳ領域マスクパターン、１０は拡散層領域マスクパターン、１１は第１メタルマスクパターン、１２はゲート電極マスクパターン、１３はコンタクトホールマスクパターンである。ＰＭＯＳ領域マスクパターン８から拡散層領域マスクパターン１０までの距離をＳＯＰ、ＮＭＯＳ領域マスクパターン９から拡散層領域マスクパターン１０までの距離をＳＯＮ、拡散層領域マスクパターン１０からコンタクトホールマスクパターン１３までの距離をＳＯ、コンタクトホールマスクパターン１３の幅をＷＣ、第１メタルマスクパターン１１からコンタクトホールマスクパターン１３までの距離をＳＣ、第１メタルマスクパターン１１からゲート電極マスクパターン１２までの距離をＳＰ、ゲート電極マスクパターン１２の幅をＷＰ、第１メタルマスクパターン１１の幅をＷＡとする。コンパクション実行前にセルライブラリ３に登録されていたインバータセルのマスクレイアウトデータが、ＳＯＰ＝３μｍ、ＳＯＮ＝３μｍ、ＳＯ＝１μｍ、ＷＣ＝１μｍ、ＳＣ＝０．５μｍ、ＳＰ＝０．５μｍ、ＷＰ＝１μｍ、ＷＡ＝２μｍとする。デザインルールにそれぞれＳＯＰ＝３μｍ、ＳＯＮ＝３μｍ、ＳＯ＝１μｍ、ＷＣ＝１μｍ、ＳＣ＝０．３μｍ、ＳＰ＝０．５μｍ、ＷＰ＝１μｍ、ＷＡ＝１．６μｍ以上の値を持てば良いと記述された���合、Ｘ方向にのみコンパクションを実行した場合、インバータセルのマスクレイアウトデータの中で最も大きくなるＰＭＯＳ領域マスクパターン８及びＮＭＯＳ領域マスクパターン９のＸ方向幅は、ＳＣが２箇所０．５μｍから０．３μｍに縮小出来る事と、ＷＡが１．６μｍ以上でも良いという条件からコンパクション実行前１３μｍに対してコンパクション実行後は１２．６μｍに圧縮される。ここではインバータセルの場合を例としてコンパクションについての説明を行ったが、実際にはセルＡのマスクレイアウトデータがコンパクションされる。コンパクションを行ったその結果、コンパクションを行ったセルＡのマスクレイアウトデータを出力部７から出力する。
【００４４】
次に、本発明の第２の実施形態について説明する。
図１１に示すインバータセルをマイグレーションする例を用いて以下説明する。まず、入力部１にマイグレーションを行うデザインルールと、インバータセルをマイグレーションをする事を入力する。この時、ＣＰＵ２では、入力部１の情報からセルライブラリ３に対してインバータセルのマスクレイアウトデータを特殊セル認識部２３に送るよう判断し、セルライブラリ３からインバータセルのマスクレイアウトデータを特殊セル認識部２３に送る。この時、特殊セル認識部２３ではパターンの中から同一処理を行う事が可能な部分を認識する。ここでは、図１１に示すインバータセルのマスクレイアウトデータから、第１メタルマスクパターン１１とコンタクトホールマスクパターン１３が重なる部分はコンタクトセルＩ３０、ゲート電極マスクパターン１２とコンタクトホールマスクパターン１３が重なる部分はコンタクトセルＪ３１であることを認識し、マスクレイアウトデータの中でどこの部分を特殊セルに置き換えるかを指示する特殊セル認識情報として特殊セル置換部２４に送る。同時に、ＣＰＵ２はセルライブラリ３に対しコンタクトセルＩ３０と、コンタクトセルＪ３１のマスクレイアウトデータ及び、インバータセルのマスクレイアウトデータを特殊セル置換部２４に送る指示を出す。この時、特殊セル置換部２４では、第１メタルマスクパターン１１とコンタクトホールマスクパターン１３が重なる部分にコンタクトセルＩ３０を配置し、コンタクトホールパターン１３を除く。同じくゲート電極マスクパターン１２とコンタクトホールマスクパターン１３が重なる部分にコンタクトセルＪ３１を配置し、コンタクトホールマスクパターン１３を除く。処理後の結果は図５のように第１メタルマスクパターン１１とコンタクトホールマスクパターン１３が重なっていた箇所にコンタクトセルＩ３０が配置され、ゲート電極マスクパターン１２とコンタクトホールマスクパターン１３が重なっていた箇所にコンタクトセルＪ３１が配置される。次に、このマスクレイアウトデータをマイグレーション部５に送る。次に、ＣＰＵ２で選択されたマイグレーションを行うデザインルールをマイグレーション部５に送る。この時、マイグレーション部５では、特殊セル置換部２４からのインバータセルのマスクレイアウトデータと、ＣＰＵ２からのマイグレーションを行うデザインルールを比較検討しながら、マイグレーションを行うデザインルールを満たした状態でインバータセルのマイグレーションを行う。ここで、マイグレーションの実行例を図５に示すインバータセルを用いて以下説明する。８はＰＭＯＳ領域マスクパターン、９はＮＭＯＳ領域マスクパターン、１０は拡散層領域マスクパターン、１１は第１メタルマスクパターン、１２はゲート電極マスクパターン、３０はコンタクトセルＩ、３１はコンタクトセルＪである。ＰＭＯＳ領域マスクパターン８から拡散層領域マスクパターン１０までの距離をＳＯＰ、ＮＭＯＳ領域マスクパターン９から拡散層領域マスクパターン１０までの距離をＳＯＮ、拡散層領域マスクパターン１０からコンタクトセルＩ３０までの距離をＳＯ、コンタクトセルＩ３０のセル幅とコンタクトセルＪ３１のセル幅ＷＣ、第１メタルマスクパターン１１からコンタクトセルＩ３０までの距離をＳＣ、第１メタルマスクパターン１１からゲート電極マスクパターン１２までの距離をＳＰ、ゲート電極マスクパターン１２の幅をＷＰ、第１メタルマスクパターン１１の幅をＷＡとする。コンパクション実行前にセルライブラリ３に登録されていたインバータセルのマスクレイアウトデータが、ＳＯＰ＝３μｍ、ＳＯＮ＝３μｍ、ＳＯ＝１μｍ、ＷＣ＝１μｍ、ＳＣ＝０．５μｍ、ＳＰ＝０．５μｍ、ＷＰ＝１μｍ、ＷＡ＝２μｍとする。マイグレーションを行うデザインルールがＳＯＰ＝２．５μｍ、ＳＯＮ＝２．５μｍ、ＳＯ＝０．８μｍ、ＷＣ＝０．８μｍ、ＳＣ＝０．３μｍ、ＳＰ＝０．３μｍ、ＷＰ＝０．８μｍ、ＷＡ＝１．５μｍと記述された場合、ＳＯＰを３μｍから２．５μｍに、ＳＯＮを３μｍから２．５μｍに、ＳＯを１μｍから０．８μｍに、ＷＣを１μｍから０．８μｍに、ＳＣを０．５μｍから０．３μｍに、ＳＰを０．５μｍから０．３μｍに、ＷＰを１μｍから０．８μｍに、ＷＡを２μｍから１．５μｍになるようマスクレイアウトデータを変更する。ここで、ＷＣのマスクレイアウトデータの変更は１μｍから０．８μｍに変更するが、パターンの中から同一処理を行う事が可能な特殊セルとしてコンタクトセルＩ３０およびコンタクトセルＪ３１に置き換えられているため、コンタクトセルＩ３０とコンタクトセルＪ３１のセル幅ＷＣを１μｍから０．８μｍに一度変更するだけで、一括でマスクレイアウトデータ中の全てのコンタクトセルＩ３０とコンタクトセルＪ３１のセル幅ＷＣを１μｍから０．８μｍに変更でき、処理の高速化が得られる。その結果、マイグレーションを行ったインバータセルのマスクレイアウトデータを出力部７から出力する。
【００４５】
次に、本発明の第３の実施形態について説明する。
図６に示すセルＡを配置配線する例を用いて以下説明する。まず、入力部１にセルＡの回路図と、どのようにセル構成が機能的にまとめていれば配置配線後に回路特性が良くなるかという情報と、配置配線後のセル階層の深さはトップ階層から１階層下迄で作成するという情報を入力する。この時、ＣＰＵ２では、入力部１の情報からセルライブラリ３に対してセルＣと、セルＤＯと、セルＤＣと、セルＦと、セルＧのマスクレイアウトデータをセル階層指定部２５に送るよう判断し、セルライブラリ３からセルＣと、セルＤＯと、セルＤＣと、セルＦと、セルＧのマスクレイアウトデータをセル階層指定部２５に送る。この時、セル階層指定部２５では入力部１で入力されていた、セルＤＯとセルＤＣは２個そろってようやくひとつの機能を実現出来ること、セルＤＯと、セルＤＣの左隣にセルＣを、右隣にセルＦを配置すれば回路特性が良くなる情報を判断し、セル階層再構築部２６にセルＣと、セルＤＯと、セルＤＣと、セルＦと、セルＧのマスクレイアウトデータを送る。この時、セル階層再構築部２６ではセルＤＯと、セルＤＣをまとめてセルＨＮに、セルＣをセルＨＮの左隣に配置配線しやすいようにセルＢＮに、セルＦをセルＨＮの右隣に配置配線しやすいようにセルＥＮに、セル機能ごとにセル化する。次に、セル機能ごとにセル化したマスクレイアウトデータは再構築セル作成部２７に送られる。この時、配置配線部６でセルＡの配置配線を行った場合のセルツリーは図７に示す、セルＡがセルＢＮとセルＨＮとセルＥＮで構成されていて、その下の階層ではセルＢＮはセルＣで、セルＨＮはセルＤＯとセルＤＣで、セルＥＮはセルＦで、更にその下の階層ではセルＦはセルＧで構成されている。次に、セル階層指定部２５では入力部１で入力されていた、配置配線後のセル階層の深さはトップ階層から１階層下迄で作成するという情報を再構築セル作成部２７に送る。次に、再構築セル作成部２７ではセルＢＮとセルＣの階層をまとめセルＢＮＭを、セルＨＮとセルＤＯとセルＤＣをまとめセルＨＮＭを、セルＥＮとセルＦとセルＧをまとめセルＥＮＭとしてセル階層を再構築する。次に、セル階層を再構築したセルＢＮＭと、セルＨＮＭと、セルＥＮＭのマスクレイアウトデータを配置配線部６に送る。この時、配置配線部６では配置配線を行う。その結果、配置配線を行ったセルＡのマスクレイアウトデータを出力部７から出力する。この時、配置配線を行った場合のセルＡのセルツリーを図８に示し、セルＡはその１階層下にセルＢＮＭ、セルＨＮＭ、セルＥＮＭで構成されている。
【００４６】
以上のように本実施の形態によれば、セル階層チェック部２０でセルの階層構造を確認出来る。また、バッティングセルチェック部２１で他のセルツリーに同名セルが無いか確認し、バッティングセル置換部２２ではバッティングセルの置換を行うことができる。そのため設計を行うセルと同名のセルが他の階層にあっても、設計を行わない他方のセルに設計の影響を及ぼさない。特殊セル認識部２３でデータの中から特殊セルを見つけだし、特殊セル置換部２４で特殊セルにデータを置き換えることができる。そのためデータの中から同一処理を行う特殊セルを抽出及び置換することで同一処理にかかる処理時間を削減できる。階層指定部２５でセルを機能ごとにまとめる指示や、セル階層の深さを指示し、セル階層再構築部２６でセルを機能ごとにまとめることができる。そのため機能セル間の回路特性を考慮した設計ができる。再構築セル作成部２７でセル階層の深さの再構築を行うことができる。そのためセルデータ管理を容易に行うことができる。なお、上記実施の形態では、コンパクション、マイグレーション、配置配線の各設計過程でそれぞれバッティングセルの置換、特殊セルの置換、機能ごとのセル作成、セル階層深さの再構築をしたが、どの設計過程でもそれぞれ使用してもよい。また、バッティングセルの置換や、特殊セルの置換は指示をした必要なセルだけ処理を行い、残りはそのまま処理をしないようにしてもよい。
【００４７】
【発明の効果】
本発明によると、第１に、バッティングセル置換部を設けることにより、他階層に同じセルがあっても他方のセルを意識せずに設計できる効果がある。
【００４８】
第２に、データの中から特殊なセルを認識する特殊セル認識部と、特殊セル認識部で認識した特殊セルに相当するデータを特殊セルに置換する特殊セル置換部を設けることにより、データの中から特殊セルになる部分を抽出し、特殊セルのデータに置換を行うことができる効果がある。
【００４９】
第３に、機能ごとにセルを割り振る指示をするセル階層指定部と、セル階層指定部で指示した機能ごとのセルを作成するセル階層再構築部を設けることにより、セルを機能ごとに割り振り、機能ごとにセル作成を行うことができる効果がある。
【００５０】
第４に、セル階層の深さを指示をするセル階層指定部と、セル階層指定部で指示した階層の深さでセルを作成する再構築セル作成部を設けることにより、セル階層の深さを指示し、指示した階層でセル作成を行うことができる効果がある。
【００５１】
よって本発明によれば、半導体マスクレイアウトを設計する際に、他階層に同じセルがあっても他方のセルを意識せずに設計が行え、パターンの中から同一処理を行う特殊セルを抽出及び置換することで処理時間の削減が行え、機能ごとにセルを再構築することで機能セル間の回路特性も考慮した設計が行え、セル階層の深さを任意に再構築することでセルデータ管理を容易に行えることを可能にした、優れた半導体設計装置を実現できるものである。
【図面の簡単な説明】
【図１】本発明の実施の形態における半導体設計装置のブロック図
【図２】本発明の実施の形態におけるセルＡの平面図
【図３】本発明の実施の形態におけるセルＡのセルツリー図
【図４】本発明の実施の形態におけるセルＡのセルツリー図
【図５】本発明の実施の形態におけるインバータセルの平面図
【図６】本発明の実施の形態におけるセルＡの平面図
【図７】本発明の実施の形態におけるセルＡのセルツリー図
【図８】本発明の実施の形態におけるセルＡの平面図
【図９】本発明の実施の形態におけるセルＡのセルツリー図
【図１０】従来の半導体設計装置のブロック図
【図１１】従来のインバータセルの平面図
【符号の説明】
１  入力部
２  ＣＰＵ
３  セルライブラリ
４  コンパクション部
５  マイグレーション部
６  配置配線部
７  出力部
８  ＰＭＯＳ領域マスクパターン
９  ＮＭＯＳ領域マスクパターン
１０  拡散層領域マスクパターン
１１  第１層メタルマスクパターン
１２  ゲート電極マスクパターン
１３  コンタクトホールマスクパターン
２０  セル階層チェック部
２１  バッティングセルチェック部
２２  バッティングセル置換部
２３  特殊セル認識部
２４  特殊セル置換部
２５  セル階層指定部
２６  セル階層再構築部
２７  再構築セル作成部
３０  コンタクトセルＩ
３１  コンタクトセルＪ
【図１】
0003656396.tif 000002
【図２】
0003656396.tif 000003
【図３】
0003656396.tif 000004
【図４】
0003656396.tif 000005
【図５】
0003656396.tif 000006
【図６】
0003656396.tif 000007
【図７】
0003656396.tif 000008
【図８】
0003656396.tif 000009
【図９】
0003656396.tif 000010
【図１０】
0003656396.tif 000011
【図１１】
0003656396.tif 000012