JP2004165572A - 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム - Google Patents
半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム Download PDFInfo
- Publication number
- JP2004165572A JP2004165572A JP2002332461A JP2002332461A JP2004165572A JP 2004165572 A JP2004165572 A JP 2004165572A JP 2002332461 A JP2002332461 A JP 2002332461A JP 2002332461 A JP2002332461 A JP 2002332461A JP 2004165572 A JP2004165572 A JP 2004165572A
- Authority
- JP
- Japan
- Prior art keywords
- trimming
- parameter
- resistance
- unit
- layout
- 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.)
- Pending
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
【課題】従来のレイアウト設計方法では、素子セルを生成するために座標データの入力が必要であり、作業が煩雑であった。
【解決手段】ユニット抵抗の抵抗値RUNIT、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nを規定するパラメータを取得するパラメータ取得工程S12と、抵抗値RUNITを規定するパラメータに基づいてユニット抵抗の基本構成を定め、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nを規定するパラメータに基づいてユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程S14とを含む処理を実行することによって上記課題を解決できる。
【選択図】 図2
【解決手段】ユニット抵抗の抵抗値RUNIT、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nを規定するパラメータを取得するパラメータ取得工程S12と、抵抗値RUNITを規定するパラメータに基づいてユニット抵抗の基本構成を定め、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nを規定するパラメータに基づいてユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程S14とを含む処理を実行することによって上記課題を解決できる。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、素子のレイアウトを行うためのレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラムに関する。
【0002】
【従来の技術】
半導体集積回路のレイアウト設計においては、その半導体集積回路に含まれる半導体素子を素子セルとして作成し、回路図に従ってその素子セルを含むブロックセルを作成することにより、半導体集積回路のレイアウトが行われる。
【0003】
図16に、典型的な半導体集積回路の設計のフローチャートを示す。ステップS100のシステム設計工程では、回路仕様、プロセス及びチップサイズ等のシステムの基本コンセプトが決定される。ステップS102の回路設計工程では、具体的な回路構成、各種定数の決定が行われる。ステップS104のブロックセルレイアウト設計工程では、回路に使用される素子毎に素子セルのレイアウトが行われ、その後、それらの素子セルを組み合わせてブロックセルのレイアウトが行われる。ステップS106の全体レイアウト設計では、ブロックセルを適切に配置することによって集積回路全体のレイアウトが行われる。ステップS108のマスク生成工程では、集積回路のレイアウトに基づいて、プロセスに応じたマスクが作成される。ステップS110の製造工程では、マスクを用いて実際のプロセスが実行され、半導体集積素子が製造される。
【0004】
上記ブロックセルレイアウト設計工程S104では、レイアウト設計者は、回路設計工程S102で得られた回路図を参照しながら、CAD等の図面入力支援装置を用いて、素子を構成する電極、絶縁層、ドーピング領域等の座標を入力することによって素子セルのレイアウトを行う。
【0005】
このとき、レイアウト設計者の負担を軽減するために、スタンダード方式と呼ばれる設計方法が利用されている。スタンダード方式では、頻繁に用いられる標準的な素子セルのレイアウトをライブラリとして記憶装置に保持しておき、必要に応じてライブラリの中からの素子セルを選択することによってブロックセルのレイアウトを可能とする(例えば、特開平5−218202号公報)。
【0006】
【特許文献1】特開平5−218202号公報
【0007】
【発明が解決しようとする課題】
しかしながら、カスタム化された素子が多いアナログ集積回路等では、使用される素子の構成要素の大きさ、形状及び配置の変更が多く、素子セルのレイアウトを標準化することができず、セルライブラリを利用することが困難である。従って、素子セルの各構成要素に対して、逐一座標データを入力して素子セルのレイアウトを行う必要がある。
【0008】
また、素子セルを組み合わせてブロックセルのレイアウトを行う際に、素子セルのレイアウト自体を変更する必要が生ずる場合がある。さらに、回路設計の見直し等によって素子セルを変更する必要が生ずることもある。このとき、レイアウト設計者は素子セルの各構成要素に対して座標データを再入力する必要があり、レイアウト作業が益々煩雑になる問題がある。さらに、座標データの入力ミスを生ずる恐れも高くなる。
【0009】
また、容量素子や抵抗素子の素子セルを含む集積回路では、レイアウト設計後にも集積回路の全体の遅延時間を調整するために容量値又は抵抗値を微調整する必要があることが多く、容量素子又は抵抗素子の各構成要素の座標を再入力する必要がある。この場合にも、レイアウト設計者に負担が掛かり、開発時間が長くなる問題がある。
【0010】
また、容量値や抵抗値の微調整に伴って容量素子や抵抗素子の構成を変更した場合、製造プロセスで用いられるほとんどのマスクを作り直す必要が生じ、製造プロセスへの影響が大きく、製造コストの増大を招いている。
【0011】
さらに、素子セルの調整に伴って回路のレイアウト全体が影響を受け、レイアウト作業を再度最初から行う必要が生ずる場合も多い。
【0012】
さらに、レイアウト設計後において、回路設計者やシステム設計者がその結果の適否を容易に確認できない。そのため、回路設計者とレイアウト設計者との間で、設計の擦り合わせが難しく、開発時間を遅延させる原因となっている。
【0013】
本発明は、上記従来技術の問題を鑑みて、上記課題の少なくとも1つを解決するべく、素子のレイアウト作業の負担を軽減できるレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラムを提供することを目的とする。
【0014】
【課題を解決するための手段】
上記課題を解決するための本発明は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計方法であって、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程とを含むことを特徴とする。
【0015】
さらに、前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行っても良い。
【0016】
さらに、前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行っても良い。
【0017】
上記課題を解決するための本発明の別の形態は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計装置であって、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得手段と、前記パラメータ取得手段で取得された前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記パラメータ取得手段で取得された前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成手段とを含むことを特徴とする。
【0018】
さらに、前記パラメータ取得手段では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行っても良い。
【0019】
さらに、前記パラメータ取得手段では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行っても良い。
【0020】
上記課題を解決するための本発明の別の形態は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計プログラムであって、コンピュータに、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程とを含む処理を実行させることを特徴とする。
【0021】
さらに、前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行う処理を実行させても良い。
【0022】
さらに、前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行う処理を実行させても良い。
【0023】
【発明の実施の形態】
本発明の実施の形態におけるレイアウト設計装置は、図1のように、制御部10、入力部12、出力部14、記憶部16及びバス18から基本的に構成される。制御部10、入力部12、出力部14及び記憶部16は、バス18を介して、情報伝達可能に接続される。
【0024】
また、レイアウト設計装置は、インターフェース部20を含むことも好適である。インターフェース部20を介して、外部のネットワーク22と情報伝達可能に接続することによって、レイアウト設計に必要なパラメータ等のデータを装置外部から受け取り、又は、レイアウト設計の結果を装置外部のコンピュータに出力することができる。
【0025】
制御部10は、記憶部16に保持されているレイアウト設計プログラムを実行することによって、入力部12又はインターフェース部20からレイアウト設計のためのパラメータを取得し、素子セル内のレイアウト設計処理を行う。
【0026】
入力部12は、レイアウト設計に必要なデータを入力するために用いられる。入力されたデータは、バス18を介して、制御部10又は記憶部16に転送される。入力部12としては、例えば、キーボード等の文字入力装置やマウス、ライトペン、トラックボール等のポインティングデバイスを適宜選択して用いることが好適である。
【0027】
出力部14は、レイアウト結果や入力部12から取得したパラメータ等を表示する。出力部14としては、例えば、ディスプレイ、プリンタ等の出力装置を適宜選択して用いることが好適である。
【0028】
記憶部16は、制御部10で実行されるレイアウト設計プログラムや入力部12から入力されたパラメータ値を格納及び保持するために用いられる。記憶部16の記憶内容は、制御部10によって適宜参照することができる。記憶部16としては、例えば、半導体メモリ、ハードディスク、フレキシブルディスク、光磁気ディスク又は磁気テープ等を適宜選択して用いることができる。
【0029】
以下、本実施の形態におけるレイアウト設計方法を、図2のフローチャートを参照して、詳細に説明する。本実施の形態におけるレイアウト設計方法では、集積回路に含まれる素子を素子セルとして自動生成し、その素子セルを組み合わせてブロックセルのレイアウトを行う。
【0030】
レイアウト設計方法の各工程は、コンピュータによって実行可能なプログラムに変換されて記憶部16に保存される。プログラムは、制御部10によって読み出されて実行される。
【0031】
あらかじめステップS100のシステム設計及びステップS102の回路設計工程(図16参照)で設計された回路情報が、バス18に接続された外部データベースから呼び出される。
【0032】
ステップS10では、制御部10は、呼び出された回路情報に含まれる各素子のタイプとステップS100で指定されたプロセスルールの種別データを取得する。レイアウト設計者は、入力部12から回路図の設計個所を指定する。設計個所の指定を受けた制御部10は、設計個所の素子のタイプを判別し、記憶部16に予め保存されている基本構成データベースを参照して、指定された素子の基本構成のデータを読み出す。
【0033】
例えば、集積回路にNPN型のバイポーラトランジスタ30が含まれる場合には、図3のように、エミッタ電極32、ベース電極34、コレクタ電極36、エミッタドーピング領域31、ベースドーピング領域33及びコレクタドーピング領域35等の形状、大きさ及び配置についてのデフォルト値(基準値)が読み出される。トランジスタ30を取り囲む素子分離領域ISO37に関しても適宜デフォルト値を読み出すことが可能である。他の素子タイプが入力された場合も同様に処理することができる。
【0034】
これらの基本構成は、最小線幅、設計耐圧、設計性能等を決めるデザインルール(プロセスルール)の種別毎にあらかじめ準備される。軽微な修正が反映された等、近似した複数のプロセスの場合は、共通部分を保存しておき、両者間の相違点の部分だけをデザインルールに応じて適宜変更し出力するようにしてもよい。
【0035】
ステップS12では、制御部10は、素子セルを自動生成するために必要なパラメータを取得する。制御部10は、記憶部16に予め保存されているパラメータデータベースを参照して、レイアウトに必要なパラメータのタイプ及びデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。レイアウト設計者は、出力部14に表示されたパラメータ値を変更する必要がある場合には、入力部12を用いてパラメータ値を変更する。
【0036】
ここで、パラメータとは、素子セルに含まれる素子の基本構成を変更するために用いられるものをいう。また、パラメータは、容量値や抵抗値の調整(トリミング)に用いるものを含むことも好適である。トリミングに関するパラメータについては後述する。
【0037】
例えば、回路においてバイポーラトランジスタ30が使用される場合には、図4のように、(a)基準部分の長さ(E_LENGTH:エミッタ長さ)、(b)素子セルすなわち素子分離領域ISO37で囲まれた領域内に並列に配置する素子の数(E_MULTI:並列素子数)、(c)コレクタ電極の有無(C_OFF)、(d)エミッタ電極の数(E_NUM)、(e)コレクタ電極の位置(C_POSITION)、(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW,及び電極順)の変更が行われる。
【0038】
ここで、(a)エミッタ長さE_LENGTHは、基準部分となるエミッタ電極の長さを示すパラメータであり、デザインルールで決まっている最小値以上の値が設定される。(b)並列素子数E_MULTIは、セル内において並列に配置される素子の数を示すパラメータであり、1以上の整数が設定される。(c)コレクタ電極の有無C_OFFは、コレクタ電極を設けるか否かを示すパラメータであり、コレクタ電極を設ける場合には“ON”が設定され、コレクタ電極を設けない場合には“OFF”が択一的に設定される。(d)エミッタ電極の数E_NUMは、エミッタ電極の数を示すパラメータであり、1以上の整数が設定される。(e)コレクタ電極の位置C_POSITIONは、コレクタ電極をベース電極側、エミッタ電極側又は両方のいずれに設けるかを示すパラメータであり、ベース電極側に設ける場合には“TOP”、エミッタ電極側に設ける場合には“BOTTOM”又は両方に設ける場合には“BOTH”が択一的に設定される。(f)電極の繰返しパターンは、素子を直列に配置する場合に電極の配置パターンを示すパラメータであり、エミッタ電極の直列方向への数(エミッタ本数E_ROW)、ベース電極の直列方向への数(ベース本数B_ROW)及び電極順を含む。エミッタ電極の直列方向への数E_ROW及びベース電極の直列方向への数B_ROWには1以上の整数が設定される。電極順には“E/B”又は“B/E”が択一的に設定される。
【0039】
ステップS14では、入力されたパラメータ値及びデザインルールに基づいて、制御部10は、素子の電極やドーピング領域の形状、大きさ及び配置等の基本構成を変更して素子セルを自動生成する。
【0040】
例えば、バイポーラトランジスタでは、(a)エミッタ長さE_LENGTH、(b)並列素子数E_MULTI、(c)コレクタ電極の有無C_OFF、(d)エミッタ電極の数E_NUM、(e)コレクタ電極の位置C_POSITION及び(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW、及び電極順)の設定に基づいて素子の基本構成が変更されて素子セルが生成される。
【0041】
(a)エミッタ長さE_LENGTHの値に基づいて、エミッタ電極32の長さdが変更される。例えば図4のように、エミッタ長さE_LENGTH=4.6μmと設定されていれば、図5(a)のように、エミッタ電極32の長さdが4.6μmとされる。また、変更に応じて、他の電極及びドーピング領域のサイズも変更される。尚、本例においては、金属電極がエミッタドーピング領域31とオーミック接触するコンタクトホールの部分をエミッタ電極32としており、エミッタ電極32の形状と大きさがそのままエミッタドーピング領域31の形状と大きさに反映される場合を示している。制御すべきは、エミッタドーピング領域31の形状と大きさと配置、金属電極とオーミック接触する為のコンタクトホールの形状と大きさと配置であり、両者が個々に制御される必要のあるプロセスでは、その旨パラメータが適宜変更される。
【0042】
(b)並列素子数E_MULTIの値に基づいて、セル内に並列に配置される基本構成30の数が変更される。例えば図4のように、並列素子数E_MULTI=2回と設定された場合には、図5(b)のように、同一の素子分離領域ISO37で囲まれた領域内にトランジスタを2つ並列に並べた配置とする。このとき、エミッタ長さE_LENGTHと並列素子数E_MULTIを共に変更して、素子のサイズ及び並列配置数を同時に変更することも可能である。
【0043】
(c)コレクタ電極の有無C_OFFの設定に基づいて、コレクタ電極36を削除するか否かが決定される。例えば、コレクタ電極の有無C_OFFが“ON”である場合には、図5(c)のように、コレクタ電極36を備えた素子の構成となる。一方、コレクタ電極の有無C_OFFが“OFF”である場合には、図5(d)のように、コレクタ電極36が削除された構成となる。このとき、コレクタ電極36と共にコレクタのドーピング領域35も削除される。
【0044】
(d)エミッタ電極の数E_NUMの設定に基づいて、エミッタ電極32の数が決定される。エミッタ電極の数E_NUMが2である場合には、図5(e)のように、図示x方向にエミッタ電極32を2つにした構成、即ち共通のベースドーピング領域33に対してエミッタドーピング領域31を2つ形成した構成に変更される。同様に、コレクタ電極36やベース電極34に対してもパラメータを設定可能とし、電極数を変更させることもできる。
【0045】
(e)コレクタ電極の位置C_POSITIONの設定に基づいて、コレクタ電極36の位置が変更される。コレクタ電極の位置C_POSITIONが“TOP”である場合には、図6(a)のように、コレクタ電極36がベース電極34側に配置される。コレクタ電極の位置C_POSITIONが“BOTTOM”である場合には、図6(b)のように、コレクタ電極36がエミッタ電極32側に配置される。また、コレクタ電極の位置C_POSITIONが“BOTH”である場合には、図6(c)のように、コレクタ電極36がベース電極34及びエミッタ電極32の両方の側に配置される。このとき、コレクタ電極36と共に付随するコレクタのドーピング領域35の位置も変更される。
【0046】
(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW及び電極順)に基づいて、コレクタ電極36、ベース電極34及びエミッタ電極32の直列方向への配置パターンが決定される。例えば、エミッタ本数E_ROW=2、ベース本数B_ROW=2及び電極順=“B/E”である場合には、図7(a)のように、コレクタ電極36、第1のベース電極34a、第1のエミッタ電極32a、第2のベース電極34b及び第2のエミッタ電極32bの順に電極が配置される。電極順=“E/B”であった場合には、図7(b)にように、コレクタ電極36、第1のエミッタ電極32a、第1のベース電極34a、第2のエミッタ電極32b及び第2のベース電極34bの順に電極が配置される。エミッタ本数E_ROWベース本数B_ROWの値が等しくない場合、例えば、エミッタ本数E_ROW=2及びベース本数B_ROW=3である場合には、図7(c)のように、コレクタ電極36、第1のベース電極34a、第1のエミッタ電極32a、第2のベース電極34b、第2のエミッタ電極32b、第3のベース電極34cの順に配置される。逆に、エミッタ本数E_ROW=3及びベース本数B_ROW=2である場合には、図7(d)のように、コレクタ電極36、第1のエミッタ電極32a、第1のベース電極34a、第2のエミッタ電極32b、第2のベース電極34b、第3のエミッタ電極32cの順に配置される。このとき、各電極のパターン変更と共に、各電極に付随するドーピング領域31a,31b,31c,33のパターンも変更される。
【0047】
ここでは、バイポーラトランジスタを例にとって説明を行ったが、他の素子タイプにおいても同様にパラメータの設定値に応じて予め定められた素子の基本構成を変更して素子セルを自動生成することができる。
【0048】
ステップS16では、制御部10は、自動生成された素子セルを出力部14に表示してレイアウト設計者に確認を促し、レイアウト設計者からの確認情報の入力を受けて、素子セルに問題があればステップS12に戻り、問題が無ければステップS18に処理を移行させる。
【0049】
ここで、図8のように、素子セルの生成結果と併せて、デザインルール及び各パラメータ値を表示することも好適である。これによって、レイアウト設計者のみならず、システム設計者や回路設計者も素子セルの生成に用いられたデザインルール及び各パラメータ値の整合性や妥当性を容易に確認することができる。
【0050】
また、デザインルール及び各パラメータ値を確認画面上で変更可能とし、その変更によって素子セルを再生成して表示させることが好ましい。これによって、デザインルール及び各パラメータ値の変更と素子セルの生成との関係を容易に確認できるようになり、素子セルの生成を迅速に行うことができる。
【0051】
ステップS18では、制御部10は、既存のCAD等の編集ツールを利用して、レイアウト設計者にブロックセル内に素子セルを手動又は自動でレイアウトさせる。例えば、デジタイザ等を用いた既存の編集ツールを利用することができる。
【0052】
ステップS20では、制御部10は、ブロックセルのレイアウト結果を出力部14に表示して、レイアウト設計者に素子セルの変更が必要か否かの確認情報の入力を促す。レイアウト設計者が素子セルの変更が必要とした場合にはステップS12に処理を戻し、変更が不要であるとした場合にはステップS22に処理を移行する。
【0053】
ステップS22では、制御部10は、レイアウト設計者にブロックセル内の素子間の配線を行わせる。例えば、コンパクションツールを備えた既存の配線支援ツールを用いることができる。また、自動配線ツールを用いても良い。
【0054】
ステップS24では、制御部10は、ブロックセルのレイアウト及び配線の結果に対して既存のデザイン・ルール・チェック(DRC)と自動照合検証(LVS)方法を適用して、ブロックセルがデザインルールに適合しているか否かを判断する。デザインルールに適合していなければステップS18に処理を戻し、デザインルールに適合していればブロックセルのレイアウト設計を終了する。
【0055】
集積回路に複数のブロックセルが含まれる場合には、レイアウト方法を繰返し実行することによって必要なブロックセルのレイアウトを行う。
【0056】
以上のように、本実施の形態によれば、デザインルール及びパラメータに基づいて予め定められた素子の基本構成を変更することによって、素子の構成要素の座標データを逐一入力すること無く素子セルを自動生成することができる。従って、レイアウト設計者が入力しなければならないデータ量を低減でき、レイアウト設計の負担を軽減することができる。特に、カスタムICが多いアナログ集積回路のようにセルの標準化が困難であって、セルライブラリの利用ができない集積回路のレイアウト設計において有効である。
【0057】
また、素子セルの生成結果と併せてデザインルール及び各パラメータ値とを比較可能な態様で表示するため、レイアウト設計の専門家でないシステム設計者や回路設計者もレイアウト設計の結果を容易に確認することができ、システム設計や回路設計へのフィードバックが容易となる。
【0058】
<変形例1>
本発明の実施の形態における変形例1として、図9を参照して、容量素子40を含む素子セルの自動生成について説明する。
【0059】
以下の説明では、容量値の微調整を行うパラメータを中心に説明を行い、上記実施の形態と同様の処理を行う工程については説明を省略する。
【0060】
ステップS10では、レイアウト設計者は素子タイプとして容量素子40を指定する。ここでは、金属−シリコン窒化膜−ポリシリコン電極の構造を有するMOS容量素子とする。下地のポリシリコン電極の上に設けられた絶縁膜にポリシリコン電極表面を露出する開口部分が設けられ、開口部分をシリコン窒化膜が被覆し、さらにシリコン窒化膜の上に金属電極が被覆する構成を持つ。容量値は前記開口部分の面積とシリコン窒化膜の膜厚で決定される。従って前記開口部分の面積が容量の有効面積となる。
【0061】
制御部10は、容量素子40である旨の指定を受けて、基本構成データベースから容量素子40の基本構成のデフォルト値を読み出す。
【0062】
ステップS12では、素子タイプが容量素子40であることを受けて、制御部10は、パラメータデータベースから最大容量値(CMAX)、最大電極幅(WMAX)、最大電極長さ(LMAX)、トリミング容量値(C)、トリミング電極幅(W)及びトリミング電極長さ(L)のデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。
【0063】
ここで、関係式(1)及び(2)を用いて、最大容量値CMAX、最大電極幅WMAX及び最大電極長さLMAXのいずれか2つの値、並びにトリミング容量値C、トリミング電極幅W及びトリミング電極長さLのいずれか2つの値を入力させることによって、残りのパラメータ値を自動的に算出することが好適である。
【0064】
【数1】
【0065】
例えば、MOS容量素子に対して、最大容量値CMAX=13.8pF、最大電極幅WMAX=10μm、トリミング容量値C=6.9pF及びトリミング電極幅W=10μmが入力された場合には、最大電極長さLMAX=10μm及びトリミング電極長さL=5μmとなる。尚、上記の最大電極長さLMAXと最大電極幅WMAXは、上記の容量の有効面積の部分の寸法を意味する。
【0066】
関係式(1)及び(2)は、容量素子が平行電極の構造を有するときに有効であり、トレンチ型等の複雑な構成を有するときには経験式からパラメータを算出することが好ましい。
【0067】
ステップS14では、パラメータ値に基づいて、容量素子の素子セルが自動生成される。マルチ等の一般的なパラメータに基づく素子セルの自動生成については説明を省略し、容量素子に特有のパラメータに基づく素子セルの生成について詳細に説明する。
【0068】
トリミング容量値Cと最大容量値CMAXが等しい場合には、図10(a)のように、素子の基本構成各部のサイズ及び配置を最大容量値CMAXとなるように変更する。すなわち、シリコン酸化膜上部電極の開口部分42の大きさを最大電極幅WMAX及び最大電極長さLMAXとし、他の基本構成は最大電極幅WMAX及び最大電極長さLMAXに合わせて変更する。
【0069】
一方、トリミング容量値Cと最大容量値CMAXとが等しくない場合には、図10(b)のように、容量素子がトリミング容量値Cとなるように開口部分42aのサイズのみを変更する。すなわち、開口部分42aをトリミング電極幅W及びトリミング電極長さLとする。容量素子の容量値はシリコン酸化膜の開口部分の有効面積で決定されるので、開口部分以外の構成は最大容量値CMAXに対するものから変更しない。
【0070】
本変形例では、MOS構造の容量素子について説明を行ったが、他の構成を有する容量素子についても同様に処理することができる。
【0071】
以上のように、トリミング容量値、トリミング電極幅及びトリミング電極長さをパラメータとして入力することによって、開口部分のサイズのみを変更して所望の容量値を有する素子セルを生成することができる。従って、回路設計の変更に伴って容量値が変更された場合でも、レイアウト全体への影響を最小限に抑制しつつ必要な容量値を得ることができる。また、製造プロセスの最終段階で用いられる金属電極に対する開口部分のマスクパターンの修正のみでレイアウト設計の変更に対応できる。
【0072】
<変形例2>
本発明の実施の形態における変形例2として、図11を参照して、抵抗要素を含む素子セルの自動生成について説明する。
【0073】
以下の説明では、抵抗素子のレイアウトに固有のパラメータを中心に説明を行い、上記実施の形態と同様の処理を行う工程については説明を省略する。
【0074】
ステップS10では、レイアウト設計者は素子タイプとして抵抗素子を指定する。制御部10は、抵抗素子である旨の指定を受けて、基本構成データベースから抵抗素子の基本構成のデフォルト値を読み出す。
【0075】
ステップS12では、素子タイプが抵抗素子であることを受けて、制御部10は、パラメータデータベースから総抵抗値(R)、ユニット抵抗の抵抗値(RUNIT)、接続タイプ(RCONN)、並列配置数(PARA_N)、直列配置数(SERI_N)、配線パターンの変更(ECO)及び静電破壊対策の有無(ESD)のデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。また、上記実施の形態と同様に基準部分の長さ、並列配置数、電極の繰返しパターン等のパラメータの設定を行っても良い。
【0076】
総抵抗値Rは、素子セルに含まれる抵抗素子の総抵抗値を示すパラメータであり、0以上の値が入力される。この値は、回路図における1つの抵抗素子の値として認識できる。ユニット抵抗値RUNITは、素子セルに含まれる抵抗素子を分割したユニット抵抗52の1本あたりの抵抗値を示すパラメータである。接続タイプRCONNは、素子セル内におけるユニット抵抗52の接続関係を示すパラメータであり、“PARALLEL”、“PARALLEL_SERIAL”、“ZIGZAG”又は“SERIAL”のいずれか1つが択一的に設定される。並列配置数PARA_Nは、素子セル内において並列に配置するユニット抵抗52の数を示すパラメータであり、1以上の整数が設定される。直列配置数SERI_Nは、素子セル内において直列に配置するユニット抵抗52の数を示すパラメータであり、1以上の整数が設定される。配線パターンの変更ECOは、接続タイプRCONNによって決定された素子セルの構成を変更して抵抗値を調整したい場合に設定されるパラメータであり、調整を行う場合には“ON”が設定され、調整を行わない場合には“OFF”が設定される。この配線パターンの変更ECOに“ON”が設定された場合には、新たなパラメータを設定する必要があり、これについては後述する。静電破壊対策の有無ESDは、通常の抵抗素子54又は絶縁耐性の高い抵抗素子54を選択するために用いられるパラメータであり、高絶縁耐性の抵抗素子54とする場合には“ON”が設定され、通常の抵抗素子54とする場合には“OFF”が設定される。
【0077】
上記において、配線パターンの変更ECOが“ON”である場合には、さらにトリミング並列配置数(ECO_PARA_N)、トリミング直列配置数(ECO_SERI_N)、トリミング接続タイプ(ECO_RCONN)の入力が促される。
【0078】
これらのパラメータは、一端設定されたユニット抵抗52の接続関係を変更する場合に用いられる。トリミング並列配置数ECO_PARA_Nは、配線パターンを変更する場合にユニット抵抗52を並列接続する数を指定するパラメータであり、1以上の整数が設定される。トリミング直列配置数ECO_SERI_Nは、配線パターンを変更する場合にユニット抵抗52を直列接続する数を指定するパラメータであり、1以上の整数が設定される。トリミング接続タイプECO_R_CONNは、セル内におけるユニット抵抗52の接続を示すパラメータであって、“PARALLEL”、“PARALLEL_SERIAL”、“ZIGZAG”又は“SERIAL”のいずれか1つが択一的に設定される。
【0079】
ステップS14では、パラメータ値に基づいて、抵抗素子の素子セルが自動生成される。マルチ等の一般的なパラメータに基づく素子セルの自動生成については説明を省略し、抵抗素子に特有のパラメータに基づく素子セルの生成について詳細に説明する。
【0080】
たとえば、デフォルト値で総抵抗値Rとユニット抵抗値RUNITとの値が同じである場合、ユニット抵抗52の電極50間の距離dが決定され、図11に示したような1本のユニット抵抗52からなる素子セルが生成される。
【0081】
距離dは、数式(3)から導き出すことができる。シート抵抗値rs及びドーピング層の幅Wは対象とする集積回路の特性等から定めることができる。
【0082】
【数2】
【0083】
ユニット抵抗値RUNITが総抵抗値Rよりも小さい場合、又は、並列配置数PARA_Nや直列並列数SERI_Nが指定された場合には、指定されたパラメータに従って複数個のユニット抵抗52が生成され、それらの配置及び配線の接続関係が定められる。
【0084】
例えば、接続タイプRCONN=“PARALLEL_SERIAL”、並列配置数PARA_N=3及び直列配置数SERI_N=2である場合には、図12(a)のように、ユニット抵抗52を3つ並列に配置して並列接続し、さらにユニット抵抗52を2つ直列に接続した構成とする。
【0085】
ここで、例えば、接続タイプRCONN=“PARALLEL”、並列配置数PARA_N=3であったなら、図12(b)のように、ユニット抵抗52を3つ並列に配置して並列接続した構成となる。また、接続タイプRCONN=“ZIGZAG”、直列配置数SERI_N=3であったなら、図12(c)のように、ユニット抵抗52を3つ並列に配置してジグザクに直列接続した構成となる。また、接続タイプRCONN=“SERIAL”、直列配置数SERI_N=2であったなら、図12(d)のように、ユニット抵抗52を2つ直列に配置して直列接続した構成となる。同様に、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nの値を変更することによって、素子セル内におけるユニット抵抗の接続を適宜変更することができる。
【0086】
また、静電破壊対策の有無の設定に基づいて、ユニット抵抗52の電極50のサイズが変更される。静電破壊対策の有無ESD=“ON”の場合には、図13のように、一方の電極50を所定のサイズにまで大きくして電界集中を緩和する構成に変更する。このとき、デザインルールを満たすように、通常の抵抗素子同士、静電破壊対策された抵抗素子同士及び通常の抵抗と静電破壊対策された抵抗素子同士の間隔を自動調整することが好適である。
【0087】
さらに、配線パターンの変更ECOが“ON”に設定されていれば、総抵抗値Rの修正を目的とした抵抗素子54のトリミングが行われる。まず、トリミング接続タイプECO_RCONN、トリミング並列配置数ECO_PARA_N及びトリミング直列配置数ECO_SERI_Nの設定に基づいて、ユニット抵抗52同士の接続が変更される。すなわち、ユニット抵抗52の基本的な配置は接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nによって決められ、その配置を保ったままトリミング接続タイプECO_RCONN、トリミング並列配置数ECO_PARA_N及びトリミング直列配置数ECO_SERI_Nに基づいてユニット抵抗52の接続関係のみが変更される。
【0088】
例えば、接続タイプRCONNが“PARALLEL”、並列配置数PARA_Nが5であり、図14(a)のように、5つのユニット抵抗52が全て並列接続された抵抗素子54が生成されているものとする。トリミング接続タイプECO_RCONNに“PARALLEL_SERIAL”、トリミング並列配置数ECO_PARA_Nに2及びトリミング直列配置数ECO_SERI_Nに2が設定された場合、図14(b)のように、2つのユニット抵抗52が並列接続され、さらに2つのユニット抵抗52が直列接続された抵抗素子54に変更される。図14(b)の例では、5本のうち1本のユニット抵抗52aが接続されないことになり、総抵抗値Rに対して4/5までの抵抗値を実現できる。ユニット抵抗52の本数すなわち総抵抗値Rの分割数を増大すれば、調整可能な抵抗値の値を小さくできる。これらと直列/並列との組み合わせを駆使することで、回路定数を調整するための抵抗値トリミングが達成できる。しかも、抵抗素子54の面積自体を変更するものではないので、周辺のパターンは固定したままでの抵抗値の修正が可能であり、更には接続されないユニット抵抗52aがパターン図上に存在しても、全ユニット抵抗52をグループ化することで電子データ上は1個の抵抗素子として取り扱うことが可能である。
【0089】
上記に加えて、1本のユニット抵抗52の抵抗値自体を修正可能なパラメータを持たせることも可能である。これは、ユニット抵抗52の大きさを固定し、電極50間の距離dを修正することにより達成できる。
【0090】
まず、上記のパラメータに加えて、電極50間の距離の修正を許可するか否かのスイッチCMR_USE、ユニット抵抗52のパターンを固定するためのユニット抵抗最大値RUNIT_MAXをパラメータとして持たせる。
【0091】
ユニット抵抗最大値RUNIT_MAXがユニット抵抗値RUNITと同じ場合には、電極50間の距離dの調整は行われない。ユニット抵抗値RUNITがユニット抵抗最大値RUNIT_MAXより小さい場合には、電極50間の距離dを新たに数式(4)から導き出した値としたユニット抵抗52を用いてレイアウトが行われる。このとき、電極50間の距離dとそれに連なる電極パターン以外の構成は変更されない。
【0092】
【数3】
【0093】
例えば、ユニット抵抗最大値RUNIT_MAX=60Ω及びユニット抵抗値RUNIT=50Ωと設定された場合、図15のように、電極50間の距離d2が元の距離d1の5/6に短縮されてユニット抵抗52が配置される。ユニット抵抗52の面積は固定してあるので、抵抗値修正(トリミング)に伴う、周辺パターンへの影響は無い。
【0094】
以上のように、パラメータに基づいて電極間の接続を定めることによって、座標データを逐一入力することなく、抵抗素子を含む素子セルを自動生成することができる。
【0095】
また、トリミングに関するパラメータを設定可能とすることによって、電極間の接続、電極間隔の長さを変更して、抵抗値を変更した素子セルを自動生成することができる。従って、回路設計の変更に伴って抵抗値が変更された場合でも、レイアウト全体への影響を最小限に抑制しつつ必要な抵抗値を得ることができる。また、製造プロセスの最終段階で用いられる金属電極のマスクパターンの修正のみでレイアウト設計の変更に対応できる。
【0096】
【発明の効果】
本発明によれば、半導体集積回路のレイアウト設計において、煩雑な座標データの入力を行うことなく、素子のレイアウトを自動で行うことができる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるレイアウト設計装置の構成のブロック図である。
【図2】本発明の実施の形態におけるレイアウト設計方法のフローチャートを示す図である。
【図3】本発明の実施の形態におけるトランジスタの基本構成の例を示す図である。
【図4】本発明の実施の形態におけるパラメータの設定入力画面を示す図である。
【図5】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図6】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図7】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図8】本発明の実施の形態における素子セルの生成結果の表示画面を示す図である。
【図9】本発明の変形例1における容量素子の基本構成の例を示す図である。
【図10】本発明の変形例1における容量素子の素子セルの自動生成を説明する図である。
【図11】本発明の変形例2における抵抗素子の基本構成の例を示す図である。
【図12】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図13】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図14】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図15】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図16】集積回路のレイアウト設計のフローチャートを示す図である。
【符号の説明】
10 制御部、12 入力部、14 出力部、16 記憶部、18 バス、20 インターフェース部、22 ネットワーク、30 トランジスタの基本構成、31,31a,31b,31c エミッタドーピング領域、32,32a,32b,32c エミッタ電極、33 ベースドーピング領域、34,34a,34b,34c ベース電極、35 コレクタドーピング領域、36 コレクタ電極、40 容量素子、42,42a 開口部、50 電極、52,52a ユニット抵抗、54 抵抗素子。
【発明の属する技術分野】
本発明は、素子のレイアウトを行うためのレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラムに関する。
【0002】
【従来の技術】
半導体集積回路のレイアウト設計においては、その半導体集積回路に含まれる半導体素子を素子セルとして作成し、回路図に従ってその素子セルを含むブロックセルを作成することにより、半導体集積回路のレイアウトが行われる。
【0003】
図16に、典型的な半導体集積回路の設計のフローチャートを示す。ステップS100のシステム設計工程では、回路仕様、プロセス及びチップサイズ等のシステムの基本コンセプトが決定される。ステップS102の回路設計工程では、具体的な回路構成、各種定数の決定が行われる。ステップS104のブロックセルレイアウト設計工程では、回路に使用される素子毎に素子セルのレイアウトが行われ、その後、それらの素子セルを組み合わせてブロックセルのレイアウトが行われる。ステップS106の全体レイアウト設計では、ブロックセルを適切に配置することによって集積回路全体のレイアウトが行われる。ステップS108のマスク生成工程では、集積回路のレイアウトに基づいて、プロセスに応じたマスクが作成される。ステップS110の製造工程では、マスクを用いて実際のプロセスが実行され、半導体集積素子が製造される。
【0004】
上記ブロックセルレイアウト設計工程S104では、レイアウト設計者は、回路設計工程S102で得られた回路図を参照しながら、CAD等の図面入力支援装置を用いて、素子を構成する電極、絶縁層、ドーピング領域等の座標を入力することによって素子セルのレイアウトを行う。
【0005】
このとき、レイアウト設計者の負担を軽減するために、スタンダード方式と呼ばれる設計方法が利用されている。スタンダード方式では、頻繁に用いられる標準的な素子セルのレイアウトをライブラリとして記憶装置に保持しておき、必要に応じてライブラリの中からの素子セルを選択することによってブロックセルのレイアウトを可能とする(例えば、特開平5−218202号公報)。
【0006】
【特許文献1】特開平5−218202号公報
【0007】
【発明が解決しようとする課題】
しかしながら、カスタム化された素子が多いアナログ集積回路等では、使用される素子の構成要素の大きさ、形状及び配置の変更が多く、素子セルのレイアウトを標準化することができず、セルライブラリを利用することが困難である。従って、素子セルの各構成要素に対して、逐一座標データを入力して素子セルのレイアウトを行う必要がある。
【0008】
また、素子セルを組み合わせてブロックセルのレイアウトを行う際に、素子セルのレイアウト自体を変更する必要が生ずる場合がある。さらに、回路設計の見直し等によって素子セルを変更する必要が生ずることもある。このとき、レイアウト設計者は素子セルの各構成要素に対して座標データを再入力する必要があり、レイアウト作業が益々煩雑になる問題がある。さらに、座標データの入力ミスを生ずる恐れも高くなる。
【0009】
また、容量素子や抵抗素子の素子セルを含む集積回路では、レイアウト設計後にも集積回路の全体の遅延時間を調整するために容量値又は抵抗値を微調整する必要があることが多く、容量素子又は抵抗素子の各構成要素の座標を再入力する必要がある。この場合にも、レイアウト設計者に負担が掛かり、開発時間が長くなる問題がある。
【0010】
また、容量値や抵抗値の微調整に伴って容量素子や抵抗素子の構成を変更した場合、製造プロセスで用いられるほとんどのマスクを作り直す必要が生じ、製造プロセスへの影響が大きく、製造コストの増大を招いている。
【0011】
さらに、素子セルの調整に伴って回路のレイアウト全体が影響を受け、レイアウト作業を再度最初から行う必要が生ずる場合も多い。
【0012】
さらに、レイアウト設計後において、回路設計者やシステム設計者がその結果の適否を容易に確認できない。そのため、回路設計者とレイアウト設計者との間で、設計の擦り合わせが難しく、開発時間を遅延させる原因となっている。
【0013】
本発明は、上記従来技術の問題を鑑みて、上記課題の少なくとも1つを解決するべく、素子のレイアウト作業の負担を軽減できるレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラムを提供することを目的とする。
【0014】
【課題を解決するための手段】
上記課題を解決するための本発明は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計方法であって、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程とを含むことを特徴とする。
【0015】
さらに、前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行っても良い。
【0016】
さらに、前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行っても良い。
【0017】
上記課題を解決するための本発明の別の形態は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計装置であって、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得手段と、前記パラメータ取得手段で取得された前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記パラメータ取得手段で取得された前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成手段とを含むことを特徴とする。
【0018】
さらに、前記パラメータ取得手段では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行っても良い。
【0019】
さらに、前記パラメータ取得手段では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行っても良い。
【0020】
上記課題を解決するための本発明の別の形態は、ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計プログラムであって、コンピュータに、ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程とを含む処理を実行させることを特徴とする。
【0021】
さらに、前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行う処理を実行させても良い。
【0022】
さらに、前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行う処理を実行させても良い。
【0023】
【発明の実施の形態】
本発明の実施の形態におけるレイアウト設計装置は、図1のように、制御部10、入力部12、出力部14、記憶部16及びバス18から基本的に構成される。制御部10、入力部12、出力部14及び記憶部16は、バス18を介して、情報伝達可能に接続される。
【0024】
また、レイアウト設計装置は、インターフェース部20を含むことも好適である。インターフェース部20を介して、外部のネットワーク22と情報伝達可能に接続することによって、レイアウト設計に必要なパラメータ等のデータを装置外部から受け取り、又は、レイアウト設計の結果を装置外部のコンピュータに出力することができる。
【0025】
制御部10は、記憶部16に保持されているレイアウト設計プログラムを実行することによって、入力部12又はインターフェース部20からレイアウト設計のためのパラメータを取得し、素子セル内のレイアウト設計処理を行う。
【0026】
入力部12は、レイアウト設計に必要なデータを入力するために用いられる。入力されたデータは、バス18を介して、制御部10又は記憶部16に転送される。入力部12としては、例えば、キーボード等の文字入力装置やマウス、ライトペン、トラックボール等のポインティングデバイスを適宜選択して用いることが好適である。
【0027】
出力部14は、レイアウト結果や入力部12から取得したパラメータ等を表示する。出力部14としては、例えば、ディスプレイ、プリンタ等の出力装置を適宜選択して用いることが好適である。
【0028】
記憶部16は、制御部10で実行されるレイアウト設計プログラムや入力部12から入力されたパラメータ値を格納及び保持するために用いられる。記憶部16の記憶内容は、制御部10によって適宜参照することができる。記憶部16としては、例えば、半導体メモリ、ハードディスク、フレキシブルディスク、光磁気ディスク又は磁気テープ等を適宜選択して用いることができる。
【0029】
以下、本実施の形態におけるレイアウト設計方法を、図2のフローチャートを参照して、詳細に説明する。本実施の形態におけるレイアウト設計方法では、集積回路に含まれる素子を素子セルとして自動生成し、その素子セルを組み合わせてブロックセルのレイアウトを行う。
【0030】
レイアウト設計方法の各工程は、コンピュータによって実行可能なプログラムに変換されて記憶部16に保存される。プログラムは、制御部10によって読み出されて実行される。
【0031】
あらかじめステップS100のシステム設計及びステップS102の回路設計工程(図16参照)で設計された回路情報が、バス18に接続された外部データベースから呼び出される。
【0032】
ステップS10では、制御部10は、呼び出された回路情報に含まれる各素子のタイプとステップS100で指定されたプロセスルールの種別データを取得する。レイアウト設計者は、入力部12から回路図の設計個所を指定する。設計個所の指定を受けた制御部10は、設計個所の素子のタイプを判別し、記憶部16に予め保存されている基本構成データベースを参照して、指定された素子の基本構成のデータを読み出す。
【0033】
例えば、集積回路にNPN型のバイポーラトランジスタ30が含まれる場合には、図3のように、エミッタ電極32、ベース電極34、コレクタ電極36、エミッタドーピング領域31、ベースドーピング領域33及びコレクタドーピング領域35等の形状、大きさ及び配置についてのデフォルト値(基準値)が読み出される。トランジスタ30を取り囲む素子分離領域ISO37に関しても適宜デフォルト値を読み出すことが可能である。他の素子タイプが入力された場合も同様に処理することができる。
【0034】
これらの基本構成は、最小線幅、設計耐圧、設計性能等を決めるデザインルール(プロセスルール)の種別毎にあらかじめ準備される。軽微な修正が反映された等、近似した複数のプロセスの場合は、共通部分を保存しておき、両者間の相違点の部分だけをデザインルールに応じて適宜変更し出力するようにしてもよい。
【0035】
ステップS12では、制御部10は、素子セルを自動生成するために必要なパラメータを取得する。制御部10は、記憶部16に予め保存されているパラメータデータベースを参照して、レイアウトに必要なパラメータのタイプ及びデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。レイアウト設計者は、出力部14に表示されたパラメータ値を変更する必要がある場合には、入力部12を用いてパラメータ値を変更する。
【0036】
ここで、パラメータとは、素子セルに含まれる素子の基本構成を変更するために用いられるものをいう。また、パラメータは、容量値や抵抗値の調整(トリミング)に用いるものを含むことも好適である。トリミングに関するパラメータについては後述する。
【0037】
例えば、回路においてバイポーラトランジスタ30が使用される場合には、図4のように、(a)基準部分の長さ(E_LENGTH:エミッタ長さ)、(b)素子セルすなわち素子分離領域ISO37で囲まれた領域内に並列に配置する素子の数(E_MULTI:並列素子数)、(c)コレクタ電極の有無(C_OFF)、(d)エミッタ電極の数(E_NUM)、(e)コレクタ電極の位置(C_POSITION)、(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW,及び電極順)の変更が行われる。
【0038】
ここで、(a)エミッタ長さE_LENGTHは、基準部分となるエミッタ電極の長さを示すパラメータであり、デザインルールで決まっている最小値以上の値が設定される。(b)並列素子数E_MULTIは、セル内において並列に配置される素子の数を示すパラメータであり、1以上の整数が設定される。(c)コレクタ電極の有無C_OFFは、コレクタ電極を設けるか否かを示すパラメータであり、コレクタ電極を設ける場合には“ON”が設定され、コレクタ電極を設けない場合には“OFF”が択一的に設定される。(d)エミッタ電極の数E_NUMは、エミッタ電極の数を示すパラメータであり、1以上の整数が設定される。(e)コレクタ電極の位置C_POSITIONは、コレクタ電極をベース電極側、エミッタ電極側又は両方のいずれに設けるかを示すパラメータであり、ベース電極側に設ける場合には“TOP”、エミッタ電極側に設ける場合には“BOTTOM”又は両方に設ける場合には“BOTH”が択一的に設定される。(f)電極の繰返しパターンは、素子を直列に配置する場合に電極の配置パターンを示すパラメータであり、エミッタ電極の直列方向への数(エミッタ本数E_ROW)、ベース電極の直列方向への数(ベース本数B_ROW)及び電極順を含む。エミッタ電極の直列方向への数E_ROW及びベース電極の直列方向への数B_ROWには1以上の整数が設定される。電極順には“E/B”又は“B/E”が択一的に設定される。
【0039】
ステップS14では、入力されたパラメータ値及びデザインルールに基づいて、制御部10は、素子の電極やドーピング領域の形状、大きさ及び配置等の基本構成を変更して素子セルを自動生成する。
【0040】
例えば、バイポーラトランジスタでは、(a)エミッタ長さE_LENGTH、(b)並列素子数E_MULTI、(c)コレクタ電極の有無C_OFF、(d)エミッタ電極の数E_NUM、(e)コレクタ電極の位置C_POSITION及び(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW、及び電極順)の設定に基づいて素子の基本構成が変更されて素子セルが生成される。
【0041】
(a)エミッタ長さE_LENGTHの値に基づいて、エミッタ電極32の長さdが変更される。例えば図4のように、エミッタ長さE_LENGTH=4.6μmと設定されていれば、図5(a)のように、エミッタ電極32の長さdが4.6μmとされる。また、変更に応じて、他の電極及びドーピング領域のサイズも変更される。尚、本例においては、金属電極がエミッタドーピング領域31とオーミック接触するコンタクトホールの部分をエミッタ電極32としており、エミッタ電極32の形状と大きさがそのままエミッタドーピング領域31の形状と大きさに反映される場合を示している。制御すべきは、エミッタドーピング領域31の形状と大きさと配置、金属電極とオーミック接触する為のコンタクトホールの形状と大きさと配置であり、両者が個々に制御される必要のあるプロセスでは、その旨パラメータが適宜変更される。
【0042】
(b)並列素子数E_MULTIの値に基づいて、セル内に並列に配置される基本構成30の数が変更される。例えば図4のように、並列素子数E_MULTI=2回と設定された場合には、図5(b)のように、同一の素子分離領域ISO37で囲まれた領域内にトランジスタを2つ並列に並べた配置とする。このとき、エミッタ長さE_LENGTHと並列素子数E_MULTIを共に変更して、素子のサイズ及び並列配置数を同時に変更することも可能である。
【0043】
(c)コレクタ電極の有無C_OFFの設定に基づいて、コレクタ電極36を削除するか否かが決定される。例えば、コレクタ電極の有無C_OFFが“ON”である場合には、図5(c)のように、コレクタ電極36を備えた素子の構成となる。一方、コレクタ電極の有無C_OFFが“OFF”である場合には、図5(d)のように、コレクタ電極36が削除された構成となる。このとき、コレクタ電極36と共にコレクタのドーピング領域35も削除される。
【0044】
(d)エミッタ電極の数E_NUMの設定に基づいて、エミッタ電極32の数が決定される。エミッタ電極の数E_NUMが2である場合には、図5(e)のように、図示x方向にエミッタ電極32を2つにした構成、即ち共通のベースドーピング領域33に対してエミッタドーピング領域31を2つ形成した構成に変更される。同様に、コレクタ電極36やベース電極34に対してもパラメータを設定可能とし、電極数を変更させることもできる。
【0045】
(e)コレクタ電極の位置C_POSITIONの設定に基づいて、コレクタ電極36の位置が変更される。コレクタ電極の位置C_POSITIONが“TOP”である場合には、図6(a)のように、コレクタ電極36がベース電極34側に配置される。コレクタ電極の位置C_POSITIONが“BOTTOM”である場合には、図6(b)のように、コレクタ電極36がエミッタ電極32側に配置される。また、コレクタ電極の位置C_POSITIONが“BOTH”である場合には、図6(c)のように、コレクタ電極36がベース電極34及びエミッタ電極32の両方の側に配置される。このとき、コレクタ電極36と共に付随するコレクタのドーピング領域35の位置も変更される。
【0046】
(f)電極の繰返しパターン(エミッタ本数E_ROW、ベース本数B_ROW及び電極順)に基づいて、コレクタ電極36、ベース電極34及びエミッタ電極32の直列方向への配置パターンが決定される。例えば、エミッタ本数E_ROW=2、ベース本数B_ROW=2及び電極順=“B/E”である場合には、図7(a)のように、コレクタ電極36、第1のベース電極34a、第1のエミッタ電極32a、第2のベース電極34b及び第2のエミッタ電極32bの順に電極が配置される。電極順=“E/B”であった場合には、図7(b)にように、コレクタ電極36、第1のエミッタ電極32a、第1のベース電極34a、第2のエミッタ電極32b及び第2のベース電極34bの順に電極が配置される。エミッタ本数E_ROWベース本数B_ROWの値が等しくない場合、例えば、エミッタ本数E_ROW=2及びベース本数B_ROW=3である場合には、図7(c)のように、コレクタ電極36、第1のベース電極34a、第1のエミッタ電極32a、第2のベース電極34b、第2のエミッタ電極32b、第3のベース電極34cの順に配置される。逆に、エミッタ本数E_ROW=3及びベース本数B_ROW=2である場合には、図7(d)のように、コレクタ電極36、第1のエミッタ電極32a、第1のベース電極34a、第2のエミッタ電極32b、第2のベース電極34b、第3のエミッタ電極32cの順に配置される。このとき、各電極のパターン変更と共に、各電極に付随するドーピング領域31a,31b,31c,33のパターンも変更される。
【0047】
ここでは、バイポーラトランジスタを例にとって説明を行ったが、他の素子タイプにおいても同様にパラメータの設定値に応じて予め定められた素子の基本構成を変更して素子セルを自動生成することができる。
【0048】
ステップS16では、制御部10は、自動生成された素子セルを出力部14に表示してレイアウト設計者に確認を促し、レイアウト設計者からの確認情報の入力を受けて、素子セルに問題があればステップS12に戻り、問題が無ければステップS18に処理を移行させる。
【0049】
ここで、図8のように、素子セルの生成結果と併せて、デザインルール及び各パラメータ値を表示することも好適である。これによって、レイアウト設計者のみならず、システム設計者や回路設計者も素子セルの生成に用いられたデザインルール及び各パラメータ値の整合性や妥当性を容易に確認することができる。
【0050】
また、デザインルール及び各パラメータ値を確認画面上で変更可能とし、その変更によって素子セルを再生成して表示させることが好ましい。これによって、デザインルール及び各パラメータ値の変更と素子セルの生成との関係を容易に確認できるようになり、素子セルの生成を迅速に行うことができる。
【0051】
ステップS18では、制御部10は、既存のCAD等の編集ツールを利用して、レイアウト設計者にブロックセル内に素子セルを手動又は自動でレイアウトさせる。例えば、デジタイザ等を用いた既存の編集ツールを利用することができる。
【0052】
ステップS20では、制御部10は、ブロックセルのレイアウト結果を出力部14に表示して、レイアウト設計者に素子セルの変更が必要か否かの確認情報の入力を促す。レイアウト設計者が素子セルの変更が必要とした場合にはステップS12に処理を戻し、変更が不要であるとした場合にはステップS22に処理を移行する。
【0053】
ステップS22では、制御部10は、レイアウト設計者にブロックセル内の素子間の配線を行わせる。例えば、コンパクションツールを備えた既存の配線支援ツールを用いることができる。また、自動配線ツールを用いても良い。
【0054】
ステップS24では、制御部10は、ブロックセルのレイアウト及び配線の結果に対して既存のデザイン・ルール・チェック(DRC)と自動照合検証(LVS)方法を適用して、ブロックセルがデザインルールに適合しているか否かを判断する。デザインルールに適合していなければステップS18に処理を戻し、デザインルールに適合していればブロックセルのレイアウト設計を終了する。
【0055】
集積回路に複数のブロックセルが含まれる場合には、レイアウト方法を繰返し実行することによって必要なブロックセルのレイアウトを行う。
【0056】
以上のように、本実施の形態によれば、デザインルール及びパラメータに基づいて予め定められた素子の基本構成を変更することによって、素子の構成要素の座標データを逐一入力すること無く素子セルを自動生成することができる。従って、レイアウト設計者が入力しなければならないデータ量を低減でき、レイアウト設計の負担を軽減することができる。特に、カスタムICが多いアナログ集積回路のようにセルの標準化が困難であって、セルライブラリの利用ができない集積回路のレイアウト設計において有効である。
【0057】
また、素子セルの生成結果と併せてデザインルール及び各パラメータ値とを比較可能な態様で表示するため、レイアウト設計の専門家でないシステム設計者や回路設計者もレイアウト設計の結果を容易に確認することができ、システム設計や回路設計へのフィードバックが容易となる。
【0058】
<変形例1>
本発明の実施の形態における変形例1として、図9を参照して、容量素子40を含む素子セルの自動生成について説明する。
【0059】
以下の説明では、容量値の微調整を行うパラメータを中心に説明を行い、上記実施の形態と同様の処理を行う工程については説明を省略する。
【0060】
ステップS10では、レイアウト設計者は素子タイプとして容量素子40を指定する。ここでは、金属−シリコン窒化膜−ポリシリコン電極の構造を有するMOS容量素子とする。下地のポリシリコン電極の上に設けられた絶縁膜にポリシリコン電極表面を露出する開口部分が設けられ、開口部分をシリコン窒化膜が被覆し、さらにシリコン窒化膜の上に金属電極が被覆する構成を持つ。容量値は前記開口部分の面積とシリコン窒化膜の膜厚で決定される。従って前記開口部分の面積が容量の有効面積となる。
【0061】
制御部10は、容量素子40である旨の指定を受けて、基本構成データベースから容量素子40の基本構成のデフォルト値を読み出す。
【0062】
ステップS12では、素子タイプが容量素子40であることを受けて、制御部10は、パラメータデータベースから最大容量値(CMAX)、最大電極幅(WMAX)、最大電極長さ(LMAX)、トリミング容量値(C)、トリミング電極幅(W)及びトリミング電極長さ(L)のデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。
【0063】
ここで、関係式(1)及び(2)を用いて、最大容量値CMAX、最大電極幅WMAX及び最大電極長さLMAXのいずれか2つの値、並びにトリミング容量値C、トリミング電極幅W及びトリミング電極長さLのいずれか2つの値を入力させることによって、残りのパラメータ値を自動的に算出することが好適である。
【0064】
【数1】
【0065】
例えば、MOS容量素子に対して、最大容量値CMAX=13.8pF、最大電極幅WMAX=10μm、トリミング容量値C=6.9pF及びトリミング電極幅W=10μmが入力された場合には、最大電極長さLMAX=10μm及びトリミング電極長さL=5μmとなる。尚、上記の最大電極長さLMAXと最大電極幅WMAXは、上記の容量の有効面積の部分の寸法を意味する。
【0066】
関係式(1)及び(2)は、容量素子が平行電極の構造を有するときに有効であり、トレンチ型等の複雑な構成を有するときには経験式からパラメータを算出することが好ましい。
【0067】
ステップS14では、パラメータ値に基づいて、容量素子の素子セルが自動生成される。マルチ等の一般的なパラメータに基づく素子セルの自動生成については説明を省略し、容量素子に特有のパラメータに基づく素子セルの生成について詳細に説明する。
【0068】
トリミング容量値Cと最大容量値CMAXが等しい場合には、図10(a)のように、素子の基本構成各部のサイズ及び配置を最大容量値CMAXとなるように変更する。すなわち、シリコン酸化膜上部電極の開口部分42の大きさを最大電極幅WMAX及び最大電極長さLMAXとし、他の基本構成は最大電極幅WMAX及び最大電極長さLMAXに合わせて変更する。
【0069】
一方、トリミング容量値Cと最大容量値CMAXとが等しくない場合には、図10(b)のように、容量素子がトリミング容量値Cとなるように開口部分42aのサイズのみを変更する。すなわち、開口部分42aをトリミング電極幅W及びトリミング電極長さLとする。容量素子の容量値はシリコン酸化膜の開口部分の有効面積で決定されるので、開口部分以外の構成は最大容量値CMAXに対するものから変更しない。
【0070】
本変形例では、MOS構造の容量素子について説明を行ったが、他の構成を有する容量素子についても同様に処理することができる。
【0071】
以上のように、トリミング容量値、トリミング電極幅及びトリミング電極長さをパラメータとして入力することによって、開口部分のサイズのみを変更して所望の容量値を有する素子セルを生成することができる。従って、回路設計の変更に伴って容量値が変更された場合でも、レイアウト全体への影響を最小限に抑制しつつ必要な容量値を得ることができる。また、製造プロセスの最終段階で用いられる金属電極に対する開口部分のマスクパターンの修正のみでレイアウト設計の変更に対応できる。
【0072】
<変形例2>
本発明の実施の形態における変形例2として、図11を参照して、抵抗要素を含む素子セルの自動生成について説明する。
【0073】
以下の説明では、抵抗素子のレイアウトに固有のパラメータを中心に説明を行い、上記実施の形態と同様の処理を行う工程については説明を省略する。
【0074】
ステップS10では、レイアウト設計者は素子タイプとして抵抗素子を指定する。制御部10は、抵抗素子である旨の指定を受けて、基本構成データベースから抵抗素子の基本構成のデフォルト値を読み出す。
【0075】
ステップS12では、素子タイプが抵抗素子であることを受けて、制御部10は、パラメータデータベースから総抵抗値(R)、ユニット抵抗の抵抗値(RUNIT)、接続タイプ(RCONN)、並列配置数(PARA_N)、直列配置数(SERI_N)、配線パターンの変更(ECO)及び静電破壊対策の有無(ESD)のデフォルト値を読み出して出力部14に表示させ、レイアウト設計者にパラメータ値の変更を促す。また、上記実施の形態と同様に基準部分の長さ、並列配置数、電極の繰返しパターン等のパラメータの設定を行っても良い。
【0076】
総抵抗値Rは、素子セルに含まれる抵抗素子の総抵抗値を示すパラメータであり、0以上の値が入力される。この値は、回路図における1つの抵抗素子の値として認識できる。ユニット抵抗値RUNITは、素子セルに含まれる抵抗素子を分割したユニット抵抗52の1本あたりの抵抗値を示すパラメータである。接続タイプRCONNは、素子セル内におけるユニット抵抗52の接続関係を示すパラメータであり、“PARALLEL”、“PARALLEL_SERIAL”、“ZIGZAG”又は“SERIAL”のいずれか1つが択一的に設定される。並列配置数PARA_Nは、素子セル内において並列に配置するユニット抵抗52の数を示すパラメータであり、1以上の整数が設定される。直列配置数SERI_Nは、素子セル内において直列に配置するユニット抵抗52の数を示すパラメータであり、1以上の整数が設定される。配線パターンの変更ECOは、接続タイプRCONNによって決定された素子セルの構成を変更して抵抗値を調整したい場合に設定されるパラメータであり、調整を行う場合には“ON”が設定され、調整を行わない場合には“OFF”が設定される。この配線パターンの変更ECOに“ON”が設定された場合には、新たなパラメータを設定する必要があり、これについては後述する。静電破壊対策の有無ESDは、通常の抵抗素子54又は絶縁耐性の高い抵抗素子54を選択するために用いられるパラメータであり、高絶縁耐性の抵抗素子54とする場合には“ON”が設定され、通常の抵抗素子54とする場合には“OFF”が設定される。
【0077】
上記において、配線パターンの変更ECOが“ON”である場合には、さらにトリミング並列配置数(ECO_PARA_N)、トリミング直列配置数(ECO_SERI_N)、トリミング接続タイプ(ECO_RCONN)の入力が促される。
【0078】
これらのパラメータは、一端設定されたユニット抵抗52の接続関係を変更する場合に用いられる。トリミング並列配置数ECO_PARA_Nは、配線パターンを変更する場合にユニット抵抗52を並列接続する数を指定するパラメータであり、1以上の整数が設定される。トリミング直列配置数ECO_SERI_Nは、配線パターンを変更する場合にユニット抵抗52を直列接続する数を指定するパラメータであり、1以上の整数が設定される。トリミング接続タイプECO_R_CONNは、セル内におけるユニット抵抗52の接続を示すパラメータであって、“PARALLEL”、“PARALLEL_SERIAL”、“ZIGZAG”又は“SERIAL”のいずれか1つが択一的に設定される。
【0079】
ステップS14では、パラメータ値に基づいて、抵抗素子の素子セルが自動生成される。マルチ等の一般的なパラメータに基づく素子セルの自動生成については説明を省略し、抵抗素子に特有のパラメータに基づく素子セルの生成について詳細に説明する。
【0080】
たとえば、デフォルト値で総抵抗値Rとユニット抵抗値RUNITとの値が同じである場合、ユニット抵抗52の電極50間の距離dが決定され、図11に示したような1本のユニット抵抗52からなる素子セルが生成される。
【0081】
距離dは、数式(3)から導き出すことができる。シート抵抗値rs及びドーピング層の幅Wは対象とする集積回路の特性等から定めることができる。
【0082】
【数2】
【0083】
ユニット抵抗値RUNITが総抵抗値Rよりも小さい場合、又は、並列配置数PARA_Nや直列並列数SERI_Nが指定された場合には、指定されたパラメータに従って複数個のユニット抵抗52が生成され、それらの配置及び配線の接続関係が定められる。
【0084】
例えば、接続タイプRCONN=“PARALLEL_SERIAL”、並列配置数PARA_N=3及び直列配置数SERI_N=2である場合には、図12(a)のように、ユニット抵抗52を3つ並列に配置して並列接続し、さらにユニット抵抗52を2つ直列に接続した構成とする。
【0085】
ここで、例えば、接続タイプRCONN=“PARALLEL”、並列配置数PARA_N=3であったなら、図12(b)のように、ユニット抵抗52を3つ並列に配置して並列接続した構成となる。また、接続タイプRCONN=“ZIGZAG”、直列配置数SERI_N=3であったなら、図12(c)のように、ユニット抵抗52を3つ並列に配置してジグザクに直列接続した構成となる。また、接続タイプRCONN=“SERIAL”、直列配置数SERI_N=2であったなら、図12(d)のように、ユニット抵抗52を2つ直列に配置して直列接続した構成となる。同様に、接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nの値を変更することによって、素子セル内におけるユニット抵抗の接続を適宜変更することができる。
【0086】
また、静電破壊対策の有無の設定に基づいて、ユニット抵抗52の電極50のサイズが変更される。静電破壊対策の有無ESD=“ON”の場合には、図13のように、一方の電極50を所定のサイズにまで大きくして電界集中を緩和する構成に変更する。このとき、デザインルールを満たすように、通常の抵抗素子同士、静電破壊対策された抵抗素子同士及び通常の抵抗と静電破壊対策された抵抗素子同士の間隔を自動調整することが好適である。
【0087】
さらに、配線パターンの変更ECOが“ON”に設定されていれば、総抵抗値Rの修正を目的とした抵抗素子54のトリミングが行われる。まず、トリミング接続タイプECO_RCONN、トリミング並列配置数ECO_PARA_N及びトリミング直列配置数ECO_SERI_Nの設定に基づいて、ユニット抵抗52同士の接続が変更される。すなわち、ユニット抵抗52の基本的な配置は接続タイプRCONN、並列配置数PARA_N及び直列配置数SERI_Nによって決められ、その配置を保ったままトリミング接続タイプECO_RCONN、トリミング並列配置数ECO_PARA_N及びトリミング直列配置数ECO_SERI_Nに基づいてユニット抵抗52の接続関係のみが変更される。
【0088】
例えば、接続タイプRCONNが“PARALLEL”、並列配置数PARA_Nが5であり、図14(a)のように、5つのユニット抵抗52が全て並列接続された抵抗素子54が生成されているものとする。トリミング接続タイプECO_RCONNに“PARALLEL_SERIAL”、トリミング並列配置数ECO_PARA_Nに2及びトリミング直列配置数ECO_SERI_Nに2が設定された場合、図14(b)のように、2つのユニット抵抗52が並列接続され、さらに2つのユニット抵抗52が直列接続された抵抗素子54に変更される。図14(b)の例では、5本のうち1本のユニット抵抗52aが接続されないことになり、総抵抗値Rに対して4/5までの抵抗値を実現できる。ユニット抵抗52の本数すなわち総抵抗値Rの分割数を増大すれば、調整可能な抵抗値の値を小さくできる。これらと直列/並列との組み合わせを駆使することで、回路定数を調整するための抵抗値トリミングが達成できる。しかも、抵抗素子54の面積自体を変更するものではないので、周辺のパターンは固定したままでの抵抗値の修正が可能であり、更には接続されないユニット抵抗52aがパターン図上に存在しても、全ユニット抵抗52をグループ化することで電子データ上は1個の抵抗素子として取り扱うことが可能である。
【0089】
上記に加えて、1本のユニット抵抗52の抵抗値自体を修正可能なパラメータを持たせることも可能である。これは、ユニット抵抗52の大きさを固定し、電極50間の距離dを修正することにより達成できる。
【0090】
まず、上記のパラメータに加えて、電極50間の距離の修正を許可するか否かのスイッチCMR_USE、ユニット抵抗52のパターンを固定するためのユニット抵抗最大値RUNIT_MAXをパラメータとして持たせる。
【0091】
ユニット抵抗最大値RUNIT_MAXがユニット抵抗値RUNITと同じ場合には、電極50間の距離dの調整は行われない。ユニット抵抗値RUNITがユニット抵抗最大値RUNIT_MAXより小さい場合には、電極50間の距離dを新たに数式(4)から導き出した値としたユニット抵抗52を用いてレイアウトが行われる。このとき、電極50間の距離dとそれに連なる電極パターン以外の構成は変更されない。
【0092】
【数3】
【0093】
例えば、ユニット抵抗最大値RUNIT_MAX=60Ω及びユニット抵抗値RUNIT=50Ωと設定された場合、図15のように、電極50間の距離d2が元の距離d1の5/6に短縮されてユニット抵抗52が配置される。ユニット抵抗52の面積は固定してあるので、抵抗値修正(トリミング)に伴う、周辺パターンへの影響は無い。
【0094】
以上のように、パラメータに基づいて電極間の接続を定めることによって、座標データを逐一入力することなく、抵抗素子を含む素子セルを自動生成することができる。
【0095】
また、トリミングに関するパラメータを設定可能とすることによって、電極間の接続、電極間隔の長さを変更して、抵抗値を変更した素子セルを自動生成することができる。従って、回路設計の変更に伴って抵抗値が変更された場合でも、レイアウト全体への影響を最小限に抑制しつつ必要な抵抗値を得ることができる。また、製造プロセスの最終段階で用いられる金属電極のマスクパターンの修正のみでレイアウト設計の変更に対応できる。
【0096】
【発明の効果】
本発明によれば、半導体集積回路のレイアウト設計において、煩雑な座標データの入力を行うことなく、素子のレイアウトを自動で行うことができる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるレイアウト設計装置の構成のブロック図である。
【図2】本発明の実施の形態におけるレイアウト設計方法のフローチャートを示す図である。
【図3】本発明の実施の形態におけるトランジスタの基本構成の例を示す図である。
【図4】本発明の実施の形態におけるパラメータの設定入力画面を示す図である。
【図5】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図6】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図7】本発明の実施の形態における素子セルの自動生成を説明する図である。
【図8】本発明の実施の形態における素子セルの生成結果の表示画面を示す図である。
【図9】本発明の変形例1における容量素子の基本構成の例を示す図である。
【図10】本発明の変形例1における容量素子の素子セルの自動生成を説明する図である。
【図11】本発明の変形例2における抵抗素子の基本構成の例を示す図である。
【図12】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図13】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図14】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図15】本発明の変形例2における抵抗素子の素子セルの自動生成を説明する図である。
【図16】集積回路のレイアウト設計のフローチャートを示す図である。
【符号の説明】
10 制御部、12 入力部、14 出力部、16 記憶部、18 バス、20 インターフェース部、22 ネットワーク、30 トランジスタの基本構成、31,31a,31b,31c エミッタドーピング領域、32,32a,32b,32c エミッタ電極、33 ベースドーピング領域、34,34a,34b,34c ベース電極、35 コレクタドーピング領域、36 コレクタ電極、40 容量素子、42,42a 開口部、50 電極、52,52a ユニット抵抗、54 抵抗素子。
Claims (9)
- ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計方法であって、
ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、
前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程と、
を含むことを特徴とするレイアウト設計方法。 - 請求項1に記載のレイアウト設計方法において、
前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、
前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計方法。 - 請求項1又は2に記載のレイアウト設計方法において、
前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、
前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計方法。 - ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計装置であって、
ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得手段と、
前記パラメータ取得手段で取得された前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記パラメータ取得手段で取得された前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成手段と、
を含むことを特徴とするレイアウト設計装置。 - 請求項4に記載のレイアウト設計装置において、
前記パラメータ取得手段では、さらにトリミング抵抗値を規定するパラメータを取得し、
前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計装置。 - 請求項4又は5に記載のレイアウト設計装置において、
前記パラメータ取得手段では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、
前記素子セル生成手段では、さらに前記パラメータ取得手段で取得された前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計装置。 - ユニット抵抗が接続されてなる抵抗素子のレイアウトを行うためのレイアウト設計プログラムであって、
コンピュータに、
ユニット抵抗の抵抗値、接続タイプ、並列配置数及び直列配置数を規定するパラメータを取得するパラメータ取得工程と、
前記抵抗値を規定するパラメータに基づいてユニット抵抗の基本構成を定め、前記接続タイプ、前記並列配置数及び前記直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成を配置及び接続して抵抗素子のレイアウトを行う素子セル生成工程と、
を含む処理を実行させることを特徴とするレイアウト設計プログラム。 - 請求項7に記載のレイアウト設計プログラムにおいて、
前記パラメータ取得工程では、さらにトリミング抵抗値を規定するパラメータを取得し、
前記素子セル生成工程では、さらに前記トリミング抵抗値を規定するパラメータに基づいて前記ユニット抵抗の基本構成の電極間隔を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計プログラム。 - 請求項7又は8に記載のレイアウト設計プログラムにおいて、
前記パラメータ取得工程では、さらにトリミング接続タイプ、トリミング並列配置数及びトリミング直列配置数を規定するパラメータを取得し、
前記素子セル生成工程では、さらに前記トリミング接続タイプ、前記トリミング並列配置数及び前記トリミング直列配置数を規定するパラメータに基づいて前記ユニット抵抗の基本構成の配置及び接続を変更して抵抗素子のレイアウトを行うことを特徴とするレイアウト設計プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002332461A JP2004165572A (ja) | 2002-11-15 | 2002-11-15 | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム |
TW92127930A TWI258833B (en) | 2002-11-15 | 2003-10-08 | Layout design device for semiconductor integrated circuits, layout design method and recording media stored with layout design program |
CNB2003101149871A CN100431136C (zh) | 2002-11-15 | 2003-11-14 | 集成电路的布图设计装置、布图设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002332461A JP2004165572A (ja) | 2002-11-15 | 2002-11-15 | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004165572A true JP2004165572A (ja) | 2004-06-10 |
Family
ID=32809534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002332461A Pending JP2004165572A (ja) | 2002-11-15 | 2002-11-15 | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2004165572A (ja) |
CN (1) | CN100431136C (ja) |
TW (1) | TWI258833B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9342647B2 (en) | 2014-03-21 | 2016-05-17 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit design method and apparatus |
US10299381B2 (en) | 2015-08-31 | 2019-05-21 | Toshiba Memory Corporation | Electronic device and substrate |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7302651B2 (en) * | 2004-10-29 | 2007-11-27 | International Business Machines Corporation | Technology migration for integrated circuits with radical design restrictions |
CN104933214B (zh) * | 2014-03-21 | 2019-03-15 | 台湾积体电路制造股份有限公司 | 集成电路设计方法和装置 |
CN110034111B (zh) * | 2019-03-13 | 2021-06-22 | 珠海博雅科技有限公司 | 适于Banba结构带隙基准电压源的版图设计方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09325978A (ja) * | 1996-06-05 | 1997-12-16 | Oki Electric Ind Co Ltd | Cadシステムにおけるレイアウト方法 |
US5896300A (en) * | 1996-08-30 | 1999-04-20 | Avant| Corporation | Methods, apparatus and computer program products for performing post-layout verification of microelectronic circuits by filtering timing error bounds for layout critical nets |
US6480992B1 (en) * | 1999-11-08 | 2002-11-12 | International Business Machines Corporation | Method, apparatus, and program product for laying out capacitors in an integrated circuit |
-
2002
- 2002-11-15 JP JP2002332461A patent/JP2004165572A/ja active Pending
-
2003
- 2003-10-08 TW TW92127930A patent/TWI258833B/zh not_active IP Right Cessation
- 2003-11-14 CN CNB2003101149871A patent/CN100431136C/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9342647B2 (en) | 2014-03-21 | 2016-05-17 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit design method and apparatus |
US10299381B2 (en) | 2015-08-31 | 2019-05-21 | Toshiba Memory Corporation | Electronic device and substrate |
Also Published As
Publication number | Publication date |
---|---|
CN100431136C (zh) | 2008-11-05 |
TWI258833B (en) | 2006-07-21 |
CN1514483A (zh) | 2004-07-21 |
TW200409276A (en) | 2004-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6756242B1 (en) | Method of modifying an integrated circuit | |
US20060195809A1 (en) | Circuit layout methodology | |
JPH04211154A (ja) | 半導体集積回路のレイアウト方法 | |
US6560753B2 (en) | Integrated circuit having tap cells and a method for positioning tap cells in an integrated circuit | |
JP4997849B2 (ja) | 半導体装置の検証システム | |
JP2004086546A (ja) | 回路シミュレーション方法 | |
US6920620B2 (en) | Method and system for creating test component layouts | |
CN114611452B (zh) | 基于电路原理图在版图中自动生成Sub Cell的方法 | |
JP2004171075A (ja) | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム | |
JP2004165572A (ja) | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム | |
JP2004171076A (ja) | 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム | |
JP3655064B2 (ja) | 半導体デバイス設計支援装置 | |
US20080054404A1 (en) | Method for designing semiconductor device and semiconductor device | |
JP2001154806A (ja) | 表示一体型タブレットの補正パラメータ調整方法および記録媒体 | |
JP2005208837A (ja) | レイアウト検証装置 | |
CN109871606B (zh) | 一种可视化版图编辑方法 | |
JP4479619B2 (ja) | 回路図作成支援装置および回路レイアウト検証装置 | |
JP2004193385A (ja) | 半導体素子のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム | |
JP2004280493A (ja) | 半導体素子のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム | |
WO2004042622A1 (ja) | 半導体集積回路の開発方法及び半導体集積回路の開発支援プログラム | |
JP2009276987A (ja) | 回路設計検証方法 | |
JP2005086153A (ja) | 半導体装置の設計方法 | |
JP2003345847A (ja) | 半導体装置の回路設計支援装置およびレイアウト変更方法 | |
JPH1092940A (ja) | レイアウト方法 | |
JPH08101853A (ja) | 半導体集積回路設計支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051111 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081202 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090331 |