(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2019-21123(P2019-21123A)
(43)【公開日】2019年2月7日
(54)【発明の名称】半導体集積回路のレイアウト方法
(51)【国際特許分類】
G06F 17/50 20060101AFI20190111BHJP
【FI】
G06F17/50 658R
G06F17/50 658E
G06F17/50 658Z
【審査請求】未請求
【請求項の数】4
【出願形態】OL
【全頁数】10
(21)【出願番号】特願2017-140143(P2017-140143)
(22)【出願日】2017年7月19日
(71)【出願人】
【識別番号】000191238
【氏名又は名称】新日本無線株式会社
(72)【発明者】
【氏名】小笠原 健一
【テーマコード(参考)】
5B046
【Fターム(参考)】
5B046AA08
5B046BA04
5B046BA05
5B046BA06
5B046DA05
5B046GA01
5B046KA05
5B046KA06
(57)【要約】 (修正有)
【課題】レイアウトの素子使用効率が良く、所望の特性を満足する新たな半導体集積回路のレイアウト期間を短縮する。
【解決手段】レイアウト済みの半導体集積回路をマスターレイアウトとして、配線層のみの変更で新たな半導体集積回路のレイアウト設計を行う。マスターレイアウトとするレイアウト済みの半導体集積回路は、新たな半導体集積回路の回路図で使用する素子が全て割り当て可能であるだけでなく、未使用素子が少なく素子使用効率の良いものを絞り込みデータベース検索を行う。さらに、新たな半導体集積回路の回路図の素子がマスターレイアウトのどの素子に割り当てられたのかを示す素子対応表により、レイアウトエディタ上で配線変更が必要な箇所を強調表示してガイドする機能を備える。
【選択図】
図3
【特許請求の範囲】
【請求項1】
マスタースライス方式を用いた半導体集積回路のレイアウト設計方法であって、
レイアウト済みの半導体集積回路の製品データベースを作成する工程と、
新たな半導体集積回路の回路図情報を作成する工程と、
レイアウト済みの半導体集積回路の製品データベースと前記新たな半導体集積回路の回路図情報を比較して素子割り当てを行う工程と、
前記素子割り当ての結果から、マスターレイアウトとする製品データベースを決定し、配線変更する箇所をレイアウトエディタ上で強調表示してガイドする工程と、
を有することを特徴とする半導体集積回路のレイアウト設計方法。
【請求項2】
前記素子割り当てを行う工程は、
プロセスが一致する製品データベースを絞り込む工程と、
前記製品データベースと前記新たな半導体集積回路の回路図情報とを比較するデータベース検索を行う工程と、
前記データベース検索にて一致した素子の割り当て情報を記載した素子対応表を作成する工程と、
を有することを特徴とする請求項1に記載の半導体集積回路のレイアウト設計方法。
【請求項3】
前記データベース検索を行う工程は、
前記新たな半導体集積回路のネットリストの機能ブロックが割り当て可能か判断する工程と、
前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、
条件変更により前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、
マニュアル作業により前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、
回路変更が可能かを判断する工程と、
を有することを特徴とする請求項2に記載の半導体集積回路のレイアウト設計方法。
【請求項4】
前記素子割り当てを行う工程は、
レイアウト済みの半導体集積回路のレイアウトデータと新たな半導体集積回路の回路図情報と配線変更を行った新たな半導体集積回路のレイアウトデータの関係を機械学習し、レイアウト済みの半導体集積回路の製品データベースに重みづけを行い、その後の新たな半導体集積回路のレイアウト設計時に素子割り当てが可能か判断する工程を有することを特徴とする請求項1に記載の半導体集積回路のレイアウト設計方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、配線層をカスタマイズするマスタースライス方式を用いた半導体集積回路の設計方法に関し、既存のレイアウトデータをもとに新規に開発する新たな半導体集積回路をレイアウトする方法に関する。
【背景技術】
【0002】
近年、アナログ半導体集積回路の分野において開発期間の短縮が強く求められている。レイアウト設計期間短縮のための方法として、マスタースライス方式がある。
【0003】
マスタースライス方式とは、
図11に示すように、半導体基板10上にパッド11、容量素子12、抵抗素子13、PNPトランジスタ14、NPNトランジスタ15等の素子をそれぞれ所定の数だけ予め準備して、新たに開発する半導体集積回路の機能に合わせて必要な半導体素子間の配線のみを行うレイアウト手法である。(例えば特許文献1,2)
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3214332号公報
【特許文献2】特許第3171431号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述したように、マスタースライス方式はレイアウト期間の短縮には有効である。しかし特定の回路を想定しておらず、予め素子数に余裕を持たせて形成し、配線容易性を優先させるため配置も余裕を持たせている。そのため、回路によっては素子使用効率が悪く、カスタムICと比べて集積度が低くなりチップサイズが拡大するというデメリットがある。チップサイズの拡大は半導体集積回路の製造コストが増大するという問題があるだけでなく、レイアウトによる特性依存性が大きいアナログ回路では、配線の寄生抵抗や寄生容量などにより、所望の特性が得られないといった問題が発生する可能性がある。
【0006】
本発明は上記問題点を解消し、レイアウトの素子使用効率が良く、所望の特性を持つ半導体集積回路のレイアウト設計期間を短縮することが可能なマスタースライス方式のレイアウト方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、請求項1にかかる発明は、マスタースライス方式を用いた半導体集積回路のレイアウト設計方法であって、レイアウト済みの半導体集積回路の製品データベースを作成する工程と、新たな半導体集積回路の回路図情報を作成する工程と、レイアウト済みの半導体集積回路の製品データベースと前記新たな半導体集積回路の回路図情報を比較して素子割り当てを行う工程と、前記素子割り当ての結果から、マスターレイアウトとする製品データベースを決定し、配線変更する箇所をレイアウトエディタ上で強調表示してガイドする工程とを有することを特徴とする。
【0008】
請求項2にかかる発明は、前記素子割り当てを行う工程は、プロセスが一致する製品データベースを絞り込む工程と、前記製品データベースと前記新たな半導体集積回路の回路図情報とを比較するデータベース検索を行う工程と、前記データベース検索にて一致した素子の割り当て情報を記載した素子対応表を作成する工程とを有することを特徴とする。
【0009】
請求項3にかかる発明は、前記データベース検索を行う工程は、前記新たな半導体集積回路のネットリストの機能ブロックが割り当て可能か判断する工程と、前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、条件変更により前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、マニュアル作業により前記新たな半導体集積回路のネットリストの素子が割り当て可能か判断する工程と、回路変更が可能かを判断する工程とを有することを特徴とする。
【0010】
請求項4にかかる発明は、前記素子割り当てを行う工程は、レイアウト済みの半導体集積回路のレイアウトデータと新たな半導体集積回路の回路図情報と配線変更を行った新たな半導体集積回路のレイアウトデータの関係を機械学習し、レイアウト済みの半導体集積回路の製品データベースに重みづけを行い、その後の新たな半導体集積回路のレイアウト設計時に素子割り当てが可能か判断する工程を有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、レイアウト済みの半導体集積回路をマスターレイアウトとし、配線層の変更により新たな半導体集積回路をレイアウトすることで、素子使用効率の良いレイアウトとなり製造コストが抑えられる。所望の回路特性を得られることが確認された回路構成とすることができるため、レイアウトによる特性依存性が大きいアナログ回路の設計に好適である。また、レイアウト設計の際には配線の変更を行う部分についてガイドが示されるため、レイアウト設計期間を短縮することができる。
【図面の簡単な説明】
【0012】
【
図1】本発明のレイアウト装置のシステム構成図である。
【
図4】本発明の製品データベースの絞り込みを示す図である。
【
図5】本発明のデータベース検索のフロー図である。
【
図6】本発明の実施例を示す図で、レイアウト済みの半導体集積回路の図である。
【
図7】本発明の実施例を示す図で、新たな半導体集積回路の回路図とネットリストである。
【
図8】本発明の実施例を示す図で、素子割り当ての段階の説明図である。
【
図9】本発明の実施例を示す図で、新たな半導体集積回路をマスターレイアウトに割り付けた例である。
【
図10】本発明の実施例を示す図で、新たな半導体集積回路の回路図とレイアウトの関連を示す図である。
【
図11】従来例であるマスタースライスレイアウトの例である。
【発明を実施するための形態】
【0013】
以下、本発明のレイアウト方法について、図面を参照しながら説明する。
図1は本発明のレイアウト装置のシステム構成図であり、レイアウト済みの半導体集積回路の製品データベース(以下、「製品DB」という)を作成し(ステップ1)、新たな半導体集積回路の回路図と比較し素子割り当てを行って、その比較結果を新たな半導体集積回路の配線レイアウトに反映してレイアウト設計を行うことができる装置を示している。
【0014】
レイアウト済みの半導体集積回路の製品DB作成(ステップ1)では、回路図のネットリスト情報から端子名、インスタンス名、階層情報、機能ブロック名、素子モデル名、各種パラメータの情報を収集し、レイアウトデータから機能ブロックおよび素子や各端子の座標の情報を収集し、それらの情報にプロセス(デザインルール)とパッケージと製造コスト、各端子の最大定格の情報の他、使用済みフラグの情報も収集する。階層情報とは、
図2に示すように、素子レベルを階層1とし、機能セルを階層2、機能ブロックを階層3というようにレベル分けを示す情報であり、素子割り当ての際にユーザーが予め検索する階層のレベルを指定することが可能である。使用済みフラグは、製品DBと新たな半導体集積回路の回路図情報を比較するデータベース検索(ステップ4)で用いる情報で、初期値はFALSE(以下、「F」という)と設定する。レイアウトデータの素子や各端子の座標データは、市販のソフトウェアで抽出可能である。また、この製品DBは一般的な関係データベース管理システム(RDBMS)などに構築可能である。なお、機能セルとしてレイアウトされたDFFなどロジックセルの一部は、トランジスタ単体として新たな半導体集積回路への再利用に向かない。このようなセルはトランジスタレベルの記述はせず、機能セルを一単位として扱う。
【0015】
図3は本発明のレイアウト設計のフロー図である。まず、新たな半導体集積回路の回路図情報を作成する(ステップ2)。次いでプロセスやパッケージ情報、各端子の最大定格といった新たな半導体集積回路の回路図情報データをもとにマスターレイアウトの候補となる製品DBを絞り込み、新たな半導体集積回路の回路図情報と比較する優先順位を決める(ステップ3)。その後、新たな半導体集積回路の回路図に使用されている全ての機能ブロックや素子が製品DBに存在するかデータベース検索を行う(ステップ4)。新たな半導体集積回路の回路図の全ての素子が割り当て可能な製品DBが見つかった場合には、素子の一致情報を記載した素子対応表を作成する(ステップ5)。続いて素子対応表をレイアウトエディタに読み込み、そのガイドに従って配線データの変更を行い(ステップ6)、DRC(Design Rule Check)/LVS(Layout Versus Schematic)といった各種検証を行い(ステップ7)、レイアウト設計を完了する。なお、ステップ3で絞り込んだ全ての製品DBで素子割り当てができなかった場合は、配線層の変更によるレイアウト設計は不可能と判断する。
【0016】
以下、各ステップについて詳細に説明する。まず、新たな半導体集積回路の回路図情報作成(ステップ2)では、回路図エディタから得られるネットリストに含まれる端子名、インスタンス名、階層情報、機能ブロック名、素子モデル名、各種パラメータ、プロセス(デザインルール)といった情報の他に、製品DBの絞り込み(ステップ3)の際に必要なデータとなるパッケージや各端子の最大定格の情報も加えた一覧を作成する。
【0017】
製品DBの絞り込み(ステップ3)では、
図4に示すように、新たな半導体集積回路のネットリストの他にプロセス(デザインルール)やパッケージ、各端子の最大定格といった回路図情報のデータをもとに、マスターレイアウトの候補となる製品DBを絞り込み、新たな半導体集積回路の回路図情報と比較する優先順位を決定する。プロセス(デザインルール)の情報のみでは合致する製品DBが多くある場合も、パッケージや端子の最大定格の情報を加えて比較することにより、より類似した製品DBを選択することができる。また、配線データの変更が容易そうな製品DBが予めわかっている場合は、優先的にデータベース検索を行うよう指定することも可能である。
【0018】
データベース検索(ステップ4)では、
図5に示すように、まず新たな半導体集積回路の上位の階層である機能ブロックが全て製品DB内に存在し、割り当て可能かどうかを判断する(ステップ41)。一致する機能ブロックが見つかった場合、製品DB内の使用済みフラグをFからTRUE(以下、「T」という)に設定し、一致一覧に記述する。使用済みフラグがTに設定された機能ブロックは、それ以降の検索対象から除外される。新たな半導体集積回路ネットリスト内にマスターレイアウトと一致する機能ブロックが予め判っている場合は、その機能ブロックを検索対象から除外するように、事前に使用済みフラグをTとしておくことも可能である。あるいは、回路図の変更箇所ではなく、且つLVSで一致している部分も検索対象から除外するように、事前に使用済みフラグをTとしておくことも可能である。全ての検索が完了した後、使用済みフラグがFの未使用素子一覧を作成する。なお、機能ブロックとして割り当て済みであっても、その機能ブロック内に未使用素子がある場合には、未使用素子一覧に加えられ、ステップ42の素子レベルでの検索の際には機能ブロック間で素子を融通して割り当てをすることが可能となる。この段階で全ての機能ブロックが一致した場合には、素子対応表の作成(ステップ5)に進む。製品DBに一致する機能ブロックが見つからなかった場合は、その機能ブロックおよびインスタンスを不一致一覧に記述する。
【0019】
ステップ41のデータベース検索後に不一致一覧に素子が存在する場合は、素子レベルでの検索を行う(ステップ42)。新たな半導体集積回路の回路図情報の一覧にある素子モデル名、パラメータの全てが一致する素子が製品DB内に存在し、割り当て可能かどうかを判断する。一致する素子が見つかった場合、製品DB内の使用済みフラグをFからTに設定し、一致一覧に記述する。使用済みフラグがTに設定された素子は、それ以降の検索対象から除外される。新たな半導体集積回路ネットリスト内にマスターレイアウトと一致する素子が予め判っている場合は、その素子を検索対象から除外するよう事前にマニュアル作業により使用済みフラグをTとしておいてもよい。全ての検索が完了した後、使用済みフラグがFの未使用素子一覧を作成する。全ての機能ブロックや素子が一致した場合には、続いて素子対応表の作成(ステップ5)に進む。製品DBに一致する素子が見つからなかった場合は、そのインスタンスを不一致一覧に記述する。
【0020】
ステップ41およびステップ42のデータベース検索後に不一致一覧に素子が存在する場合は、条件変更すれば割り当て可能か判断する(ステップ43)。条件変更とは、素子パラメータの合わせこみを指す。MOSトランジスタのゲート幅はゲート幅(W)と個数(M)の積であるW×Mで表現され、回路図ではW=10umのトランジスタ1個(M=1)と表記されているものをレイアウトではW=5umのトランジスタ2個(M=2)使用するといったように、WとMが異なる場合がある。このように、WとMとを単純比較するのみでは、一致しないインスタンスが増えてしまう。抵抗や容量も同様に、回路図で1個の抵抗値、容量値で表現されているものをレイアウトで複数個の抵抗、容量で実現できる場合にも単純比較では一致しない。そこで、MOSトランジスタは、
図6(d)の製品DBの記述例に示すように、同一階層で同一ゲート長(L)のものはグループプロパティを付与して予めグルーピングしておく。抵抗については、単位抵抗セルを複数個組み合わせることで実現可能な抵抗テーブルを予め作成しておく。例えば、単位抵抗セルの抵抗値が10kΩの場合、2本の並列で5kΩ、直列で20kΩ、3本の並列で3.3kΩ、直列で30kΩ、直並列で15kΩが実現可能である。容量値については複数個の容量で回路図の容量となるよう演算して必要数を求める。
【0021】
ステップ43の条件変更で割り当てが不可能で、不一致一覧に素子が存在する場合は、マニュアル作業で割り当てが可能かどうか判断する(ステップ44)。マニュアル作業での割り当てとは、例えばステップ41の機能ブロックの検索で、回路図とレイアウトが一致しているもののレイアウト側に未使用の素子が含まれている場合に、この未使用の素子を使用することで、別の機能ブロックの素子が割り当て可能となる場合などである。この場合は一致一覧への記述、不一致一覧からの削除、使用フラグの設定はユーザーがマニュアルで変更する。
【0022】
マニュアル作業での割り当てを行っても不一致一覧に素子が存在する場合は、回路設計に戻り、回路変更が可能かどうか不足素子の扱いを判断する(ステップ45)。不足解消の見込みがある場合には、ネットリストを変更し回路図情報を更新して、再度ステップ41の機能ブロックのデータベース検索から順次処理を行い、マスターレイアウトとする製品DBを決定する。
【0023】
選択した全ての製品DBに対してデータベース検索を行って、新たな半導体集積回路の回路図の全ての素子が一致した場合には、一致一覧をもとに素子の割り当て情報を記載した素子対応表を作成する(ステップ5)。なお、新たな半導体集積回路の回路図情報と一致する製品DBが複数存在した場合は、未使用素子が少ないもの、あるいは製造コストが低いものを優先してマスターレイアウトとする製品DBを決定する。
【0024】
マスターレイアウトとする製品DBが決定すると、素子対応表と製品DBの情報から各素子の位置座標を取得し、回路図エディタで選択した回路素子がレイアウトエディタ上で強調表示(ハイライト)され、そのガイドに従ってマニュアル作業で配線データの変更を行う(ステップ6)。なお、回路図の1つの素子に対して複数の未使用素子が該当する場合は、製品のアナログ特性に最適な素子をマニュアル作業で選択する。さらに、配線データの変更を行う際、未使用素子一覧と製品DBの情報から未使用素子の位置座標を取得し、レイアウトエディタ上で確認することも可能であり、素子対応表に割り当てられた素子以外に製品特性に適した素子がないかどうかを確認して選択することもできる。
【0025】
配線データを変更した後、DRC/LVSといった各種検証を行い(ステップ7)、新たな半導体集積回路のレイアウト設計が終了する。
【0026】
また、レイアウト済みの半導体集積回路のレイアウトデータと新たな半導体集積回路の回路図情報および配線変更を行った新たな半導体集積回路のレイアウトデータを機械学習し、レイアウト済みの半導体集積回路の製品DBに重みづけを行う。その後の新たな半導体集積回路のレイアウト設計時に、この重みづけに基づいてレイアウト済みの半導体集積回路の製品DBの絞り込みが可能となるようにしてもよい。
【実施例】
【0027】
次に、本発明の実施例を用いて詳細に説明する。
図6乃至
図10は本発明の実施例である。
図6(a)はレイアウト済みの半導体集積回路の回路図、
図6(b)はレイアウト済みの半導体集積回路のネットリスト、
図6(c)はレイアウト済みの半導体集積回路の配線層を除いたレイアウト図面(マスターレイアウト)である。ここでは、説明のため、レイアウト図面にマスターレイアウトでのインスタンス名と、レイアウト済みの半導体集積回路の回路図インスタンス名を併記してある。
図6(d)は、レイアウト済みの半導体集積回路のネットリスト情報と、レイアウトデータから抽出した素子や各端子の座標と、プロセス(デザインルール)、パッケージ、製造コスト、各端子の最大定格の情報を加えた製品DBの記述例である。
【0028】
図7は新たな半導体集積回路の回路図とネットリストで、
図6(a)の回路図からトランジスタサイズが変更になった回路である。これを
図6(d)の製品DBの素子に割り当てる流れを説明する。
図8(a)は製品DBの記述で、使用済みフラグが全てFとなった初期状態である。ステップ42のデータベース検索で、新たな半導体集積回路の回路図情報と製品DBとで素子タイプやLおよびWなどのパラメータが一致する素子が見つかり、使用済みフラグがTとなった状態が
図8(b)である。次に、ステップ43の条件変更を行い、素子パラメータLが等しくWをN倍してパラメータが一致する素子が見つかり使用済みフラグがTに設定された状態が
図8(c)である。この時、Tに設定される素子はN個である。
【0029】
図7の新たな半導体集積回路を
図6(c)のマスターレイアウトに割り当てた際のレイアウト図面が
図9(a)、素子一覧表が
図9(b)である。ここでは、説明のため、レイアウト図面にマスターレイアウトでのインスタンス名と、割り当てられた新たな半導体集積回路の回路図インスタンス名を併記してある。次に、素子割り当ての結果得られた素子一覧表を回路図エディタおよびレイアウトエディタに読み込み、配線データの変更を行う。
図10は割り当てが可能と判明した新たな半導体集積回路の回路図とマスターレイアウトの関連を確認する例で、
図10(a)は新たな半導体集積回路の回路図であり、回路図エディタ上でMS3を選択すると、
図10(b)の素子一覧表にてMS3を検索し、マスターレイアウトのインスタンス名X0/M24およびX0/M25に変換される。そして
図10(c)のマスターレイアウトの製品DBから位置情報を取得し、
図10(d)のようにレイアウトエディタ上で該当する素子が強調表示(ハイライト)され、配線のガイドが示される。
【0030】
以上のように、本発明によれば、レイアウト済みの半導体集積回路をマスターレイアウトとし、配線層の変更により新たな半導体集積回路をレイアウトすることで、素子使用効率の良いレイアウトとなり製造コストが抑えられ、且つレイアウトによる特性依存性が大きいアナログ回路において所望の特性を得ることができる。また、レイアウト設計の際には配線変更を行う部分についてガイドが示されるため、レイアウト設計期間を短縮することができる。
【符号の説明】
【0031】
MS1、MS2、MS2’、MS3、MS3’:PMOSトランジスタ
MS4、MS5:NMOSトランジスタ
VDD:電源端子
GND:接地端子
1:PMOSトランジスタ
2:NMOSトランジスタ
3:ゲート
4:ソース
5:ドレイン
6:電極
7:第1の配線
8:第2の配線
9:第3の配線
10:半導体基板
11:パッド
12:容量素子
13:抵抗素子
14:PNPトランジスタ
15:NPNトランジスタ