(57)【要約】【課題】製造ばらつきを防止することができる。【解決手段】半導体特性調整プログラムを実行するコンピュータ１は以下の機能を有する。選択手段２は、所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報３と、外部から与えられマージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となるセルとこのセルに含まれるデバイスの調整に必要なマージン調整値とを選択する。調整量決定手段４は、選択されたセルに含まれるデバイスのマージン変動に伴うデバイスのサイズ調整量の関係を示すデバイス情報５に基づいて、マージン調整値を満たす当該デバイスのサイズ調整量を決定する。【選択図】図１
2009086700.tif 000002
【特許請求の範囲】
【請求項１】
半導体設計で得られたデバイスの特性を調整する半導体特性調整プログラムにおいて、
コンピュータを、
所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択する選択手段、
選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する調整量決定手段、
として機能させることを特徴とする半導体特性調整プログラム。
【請求項２】
コンピュータを、さらに、前記半導体設計で得られた前記デバイスのサイズの情報を示すレイアウト情報に含まれる、前記選択手段で選択された前記デバイスのサイズに対し、前記サイズ調整量を適用するパターン調整処理手段、として機能させることを特徴とする請求項１記載の半導体特性調整プログラム。
【請求項３】
前記選択手段は、選択された前記パスに含まれる複数の前記セルのうち、遅延時間を変更しても他の前記パスに影響を与えないセルを調整対象となる前記セルとして選択することを特徴とする請求項１記載の半導体特性調整プログラム。
【請求項４】
半導体設計で得られたデバイスの特性を調整する半導体特性調整方法において、
選択手段が、所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択し、
調整量決定手段が、選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する、
ことを特徴とする半導体特性調整方法。
【請求項５】
半導体設計で得られたデバイスの特性を調整する半導体特性調整装置において、
所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択する選択手段と、
選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する調整量決定手段と、
を有することを特徴とする半導体特性調整装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体特性調整プログラム、半導体特性調整方法および半導体特性調整装置に関し、特に、半導体設計で得られたデバイスの特性を調整する半導体特性調整プログラム、半導体特性調整方法および半導体特性調整装置に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integration）の開発工程におけるマスクデータ作成処理では、レイアウト情報（設計データ：ＧＤＳＩＩ）と仕上がり寸法・形状の誤差を最小にするための補正処理（例えば、ＯＰＣ（Ｏptical Ｐroximity Ｃorrection）処理やシフト処理等）を行い、マスクデータを作成する。
【０００３】
ナノメータ領域の半導体チップでは、レイアウト情報と、そのレイアウト情報により製造されたデバイスとの物理形状の誤差が非常に大きくなってきており、製造ばらつきによる歩留まりに対する影響が無視できなくなってきている。これにより、半導体製品の性能向上や、コストダウンが困難になってきている。
【０００４】
このため、例えば、クリティカルパス（これ以上クロックを上げても、トランジスタの処理が追いつかないため、処理が間に合わなくなる部分）の遅延時間に注目し、遅延制約を規定する目標値を設定し、その目標値を満たすように設計を行うことで、製造ばらつきによる歩留まりの低下を回避する方法が知られている（例えば、特許文献１参照）。
【特許文献１】特開平１０−３１６８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、設計難易度が増加し、またその為に設計期間が延びる等の問題がある。
本発明はこのような点に鑑みてなされたものであり、設計は従来方法のままで、製造ばらつきによるＬＳＩ性能の劣化や、歩留まりの低下を防止することができる半導体特性調整プログラム、半導体特性調整方法および半導体特性調整装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明では上記問題を解決するために、図１に示すような処理をコンピュータ１に実行させるための半導体特性調整プログラムが提供される。
本発明に係るプログラムは、半導体設計で得られたデバイスの特性を調整するプログラムである。
【０００７】
この半導体特性調整プログラムを実行するコンピュータ１は以下の機能を有する。
選択手段２は、所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報３と、外部から与えられマージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となるセルとこのセルに含まれるデバイスの調整に必要なマージン調整値とを選択する。
【０００８】
調整量決定手段４は、選択されたセルに含まれるデバイスのマージン変動に伴うデバイスのサイズ調整量の関係を示すデバイス情報５に基づいて、マージン調整値を満たす当該デバイスのサイズ調整量を決定する。
【０００９】
このような半導体特性調整プログラムによれば、選択手段２により、調整対象となるセルとこのセルの調整に必要なマージン調整値とが選択される。調整量決定手段４により、選択されたセルに含まれるデバイスのマージンを満たすサイズ調整量が決定される。
【発明の効果】
【００１０】
本発明によれば、決定されたサイズ調整量を用いてデバイスの微調整を行うことにより、ＬＳＩの特性を向上させることができる。これにより、製造ばらつきによる歩留まりの低下を抑止することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図１は、本発明の概要を示す図である。
【００１２】
コンピュータ１は、以下の機能を有する。
選択手段２は、所定の回路間に設けられた複数のセルを通過するパスのマージン（例えば、タイミングマージン）を示すマージン情報３と、マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となるセルとこのセルに含まれるデバイスの調整に必要なマージン調整値とを選択する。なお、調整基準値は、外部から与えられる。
【００１３】
図１では、マージン情報３が、タイミングマージンである場合を示している。タイミングマージンは、レイアウト情報を作成する段階で実行する静的タイミング解析により得ることができる。この場合、マージン調整値は、例えば、調整基準値とタイミングマージンの差分を取った値となる。図１では、一例として、調整対象となるセルに含まれるデバイスＩｎｖ＿Ａ、マージン調整値５０ｐｓが選択されている。
【００１４】
調整量決定手段４は、選択されたセルに含まれるデバイスのマージン変動に伴うデバイスのサイズ調整量の関係を示すデバイス情報５に基づいて、マージン調整値を満たす当該デバイスのサイズ調整量を決定する。
【００１５】
マージン情報３がタイミングマージンである場合、デバイス情報５は、デバイスの遅延時間と選択されたセルに含まれるデバイスのサイズ（図１では、ゲート長Ｌおよびゲート幅Ｗ）調整との関係を示す情報である。デバイス情報５を参照すると、選択されたセルに含まれるデバイスの調整前の遅延時間は、２００ｐｓである。今、マージン調整値が５０ｐｓであるから、調整後の遅延時間を１５０ｐｓにすればよいことが分かる。従って、調整後の遅延時間を１５０ｐｓにするために、調整量決定手段４は、ゲート長Ｌを（調整前のゲート長−１μｍ）に調整し、ゲート幅Ｗは調整前のゲート幅に等しくする。
【００１６】
このようにして、デバイスのサイズ調整量を決定することができる。
以下、本発明の実施の形態を説明する。
図２は、半導体特性調整装置のハードウェア構成例を示す図である。
【００１７】
半導体特性調整装置１００は、ＬＳＩの設計により得られたレイアウト情報に対し、設計情報を考慮したデバイスのサイズ調整を行うことによって、設計したＬＳＩの特性を改善したマスクデータを作成するものである。
【００１８】
この半導体特性調整装置１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ（Random Access Memory）１０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、および通信インタフェース１０６が接続されている。
【００１９】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。また、ＨＤＤ１０３内には、プログラムファイルが格納される。
【００２０】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００２１】
通信インタフェース１０６は、ネットワーク１０に接続されている。通信インタフェース１０６は、ネットワーク１０を介して、他のコンピュータとの間でデータの送受信を行う。
【００２２】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。このようなハードウェア構成のシステムにおいてＬＳＩの特性改善を行うために、半導体特性調整装置１００内には、以下のような機能が設けられる。
【００２３】
図３は、半導体特性調整装置の機能を示すブロック図である。
半導体特性調整装置１００は、レイアウト情報格納部１２０と、タイミング解析情報格納部１３０と、デバイス情報格納部１４０と、マスク情報処理部１５０と、マスクデザインルール格納部１６０とを有している。
【００２４】
レイアウト情報格納部１２０にはレイアウト情報が格納されており、タイミング解析情報格納部１３０にはタイミング解析情報が格納されており、デバイス情報格納部１４０にはデバイス情報が格納されている。
【００２５】
次に、レイアウト情報、タイミング解析情報およびデバイス情報の内容について説明する。
図４は、レイアウト情報を示す図であり、図５は、図４に示すレイアウト情報により規定される素子の部品配置を模式的に示す図である。
【００２６】
レイアウト情報１２０ａには、図５に示すセル２００を識別するセル固有名、デバイスの種別を識別するセル名、セル２００の配置座標等が格納されている。
図４では、図５に示すセル２００のセル固有名として「Ｉｎｖ１０」、セル名として「Ｉｎｖ＿Ａ」が格納されている。
【００２７】
また、セル２００のゲート２１０（図４中（１））、拡散層２２０、２５０（図４中（２）、（３））等の形状、レイヤー、座標に関する情報が格納されている。
図６は、タイミング解析情報を示す図である。
【００２８】
タイミング解析情報は、例えばＳＴＡ（静的タイミング解析）において求められるパス毎のタイミング情報であり、テーブル化されて格納されている。
タイミング解析情報管理テーブル１３０ａには、Ｎｏ．、パス、Ｓｅｔｕｐマージン、Ｈｏｌｄマージン、セル固有名の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００２９】
Ｎｏ．の欄には、各欄の横方向に並べられた情報を識別する番号が格納されている。
パスの欄には、回路間を接続するパスの名称が格納されている。
Ｓｅｔｕｐマージンの欄には、パスにおいてデータ信号を確定、保持しておかなければならない最小限の時間を示すＳｅｔｕｐマージンが格納されている。
【００３０】
Ｈｏｌｄマージンの欄には、パスにおいてタイミング信号を与えた後もデータ信号を保持しておかなければならない時間を示すＨｏｌｄマージンが格納されている。
セル固有名の欄には、パスによって接続される一連のセルそれぞれに含まれるデバイス名およびセルに含まれるデバイス毎の出力負荷の情報を示す負荷情報が格納されている。
【００３１】
ここで、Ｓｅｔｕｐマージンが最小であるパス（タイミング解析情報管理テーブル１３０ａにおいては、Ｓｅｔｕｐマージンが最小であるＮｏ．１のパス（ｐａｔｈ０２２））が、クリティカルパスとなり、このパスに含まれているセル（のデバイス）が、調整の対象となる。
【００３２】
図７は、図６に示すタイミング解析情報管理テーブルのパスを構成する回路の一例を示す図である。
図７には、回路ＦＦ１から回路ＦＦ２に至るパスおよび回路ＦＦ３から回路ＦＦ２に至るパスが図示されており、このうち、回路ＦＦ１からＩｎｖ１０を構成するセル、Ｎａｎｄ２を構成するセルおよび４Ｎａｎｄ３を構成するセルを経由して回路ＦＦ２に至るパスがｐａｔｈ０２２を構成している。
【００３３】
図８は、デバイス情報を示す図である。
デバイス情報は、テーブル化されて格納されている。
デバイス情報テーブル１４０ａは、セルに含まれるデバイスのサイズ調整に伴う遅延時間の変動情報を格納したテーブルであり、このテーブルは、デバイス毎に、また、各デバイスの負荷情報毎に、作成されている。図８に示すデバイス情報テーブル１４０ａは、セル２００のゲート２１０に関するテーブルであり、与えられたレイアウト情報１２０ａの通り（ゲート長ΔＬ＝±０μｍ、ゲート幅ΔＷ＝±０μｍ）にゲート２１０のゲート長ＬおよびゲートΔ幅Ｗを製造した場合、その遅延時間は２００ｐｓとなる。ゲート長ＬはそのままでゲートΔ幅Ｗを２μｍだけ大きく製造した場合、その遅延時間は１８０ｐｓとなり、２０ｐｓだけ遅延時間が短縮される。
【００３４】
次に、マスク情報処理部１５０の構成を説明する。
図９は、マスク情報処理部の構成を示すブロック図である。
マスク情報処理部１５０は、パターン調整処理部１５１と、ＯＰＣ処理部１５２と、位相シフト処理部１５３と、調整対象セル固有名リスト格納部１５４と、調整対象セル負荷情報リスト格納部１５５と、調整対象セル遅延調整値リスト格納部１５６と、調整対象セル座標リスト格納部１５７と、ゲートサイズ調整可能量リスト格納部１５８と、調整対象セルゲートサイズリスト格納部１５９と、最終ゲートサイズリスト格納部１６１とを有している。
【００３５】
パターン調整処理部１５１は、レイアウト情報１２０ａ、タイミング解析情報管理テーブル１３０ａおよびデバイス情報テーブル１４０ａを用いて、必要に応じてレイアウト情報１２０ａにおけるデバイスのサイズを調整する。以下、調整を行う対象となるセルを「調整対象セル」と言う。
【００３６】
調整対象セル固有名リスト格納部１５４〜最終ゲートサイズリスト格納部１６１は、それぞれ、パターン調整処理部１５１が、レイアウト情報、タイミング解析情報およびデバイス情報を用いて作成した各リストを格納する。
【００３７】
ここで、調整対象セル固有名リスト格納部１５４〜調整対象セルゲートサイズリスト格納部１５９に格納される各リストは、それぞれ、最終ゲートサイズリスト格納部１６１に格納される最終ゲートサイズリストを作成するために作成するリストである。この最終ゲートサイズリストには、ゲートサイズの調整処理が施されたデバイスの情報が格納されている。
【００３８】
ＯＰＣ処理部１５２および位相シフト処理部１５３は、それぞれパターン調整処理部１５１によって最終的に得られた最終ゲートサイズリストに格納されているデバイスに対してマスク情報を作成するためのＯＰＣ処理および位相シフト処理を行う。その後、これらの処理が施されたデータを用いてマスクデータが作成される。
【００３９】
各リストの作成の方法は後述するとして、ここではリストの内容を説明する。
図１０は、調整対象セル固有名リストを示す図である。
調整対象セル固有名リスト１５４ａには、セル固有名、パス、Ｓｅｔｕｐマージン、Ｈｏｌｄマージンの欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００４０】
セル固有名の欄には、パターン調整処理部１５１が、タイミング解析情報管理テーブル１３０ａから抽出したセル固有名（図１０ではＩｎｖ１０）および負荷情報（図１０では３０ｆＦ）が格納される。パス、ＳｅｔｕｐマージンおよびＨｏｌｄマージンの欄には、それぞれ、パターン調整処理部１５１が、タイミング解析情報管理テーブル１３０ａから抽出したＩｎｖ１０に対応する情報が格納される。
【００４１】
図１１は、調整対象セル負荷情報リストを示す図である。
調整対象セル負荷情報リスト１５５ａは、遅延時間に影響する各調整対象セルの負荷情報のリストである。
【００４２】
調整対象セル負荷情報リスト１５５ａには、セル固有名、負荷情報の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
図１２は、調整対象セル遅延調整値リストを示す図である。
【００４３】
調整対象セル遅延調整値リスト１５６ａには、セル固有名、Ｓｅｔｕｐマージン、Ｈｏｌｄマージン、遅延調整基準値（Ｓｅｔｕｐ）、調整値（Ｓｅｔｕｐ）、遅延調整基準値（Ｈｏｌｄ）、調整値（Ｈｏｌｄ）の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００４４】
ＳｅｔｕｐマージンおよびＨｏｌｄマージンの欄には、それぞれ調整対象セル固有名リスト１５４ａから取得した値が格納される。
遅延調整基準値（Ｓｅｔｕｐ）および遅延調整基準値（Ｈｏｌｄ）は、それぞれ歩留り向上に必要なタイミングマージンであり、これらの欄には、それぞれ設計者が任意に設定した所定の調整基準値が格納される。
【００４５】
調整値（Ｓｅｔｕｐ）の欄には、遅延調整基準値（Ｓｅｔｕｐ）からＳｅｔｕｐマージンを減算した値が格納される。
調整値（Ｈｏｌｄ）の欄には、遅延調整基準値（Ｈｏｌｄ）からＨｏｌｄマージンを減算した値が格納される。但し、図１２では、遅延調整基準値（Ｈｏｌｄ）からＨｏｌｄマージンを減算した値が負の値になるため“−”（Ｎｕｌｌ）が格納されている。
【００４６】
図１３は、調整対象セル座標リストを示す図である。
調整対象セル座標リスト１５７ａには、セル固有名、Ｘ座標、Ｙ座標の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００４７】
Ｘ座標およびＹ座標の欄には、それぞれレイアウト情報１２０ａから取得したセル固有名に対応するＸ座標およびＹ座標が格納される。
図１４は、ゲートサイズ調整可能量リストを示す図である。
【００４８】
ゲートサイズ調整可能量リスト１５８ａには、セル固有名、ΔＬａ、ΔＷａの欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
ΔＬａの欄には、セル固有名の欄のデバイスのゲート長（Ｌ）の調整可能な長さの範囲が格納されている。
【００４９】
ΔＷａの欄には、セル固有名の欄のデバイスのゲート幅（Ｗ）の調整可能な幅の範囲が格納されている。
図１５は、調整対象セルゲートサイズリストを示す図である。
【００５０】
調整対象セルゲートサイズリスト１５９ａには、セル固有名、セル名、ゲート長（Ｌ）、ゲート幅（Ｗ）の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００５１】
ゲート長（Ｌ）の欄およびゲート幅（Ｗ）の欄には、それぞれレイアウト情報１２０ａから取得したセル固有名の欄のデバイスのゲート長およびゲート幅が格納される。
図１６は、最終ゲートサイズリストを示す図である。
【００５２】
最終ゲートサイズリスト１６１ａには、セル固有名、セル名、ゲート長（Ｌ）、ゲート幅（Ｗ）の欄が設けられており、各欄の横方向に並べられた情報同士が互いに関連づけられている。
【００５３】
ゲート長（Ｌ）の欄およびゲート幅（Ｗ）の欄には、それぞれゲートサイズ調整後のゲート長およびゲート幅が格納される。以下、ゲートサイズ調整後のゲート長およびゲート幅を「最終ゲートサイズ」と言う。
【００５４】
マスクデザインルール格納部１６０は、マスク作成におけるパターンの幅、隣接間隔等が定義されたマスクデザインルールが格納されている。
次に、パターン調整処理部１５１の処理について詳しく説明する。以下、説明の便宜上、パターン調整処理部の処理を３つに分ける。
【００５５】
（１）調整対象セル固有名リスト１５４ａ、調整対象セル負荷情報リスト１５５ａ、調整対象セル遅延調整値リスト１５６ａを作成する処理（第１の処理）。
（２）調整対象セル座標リスト１５７ａ、ゲートサイズ調整可能量リスト１５８ａ、調整対象セルゲートサイズリスト１５９ａを作成する処理（第２の処理）。
【００５６】
（３）セル毎の最終ゲートサイズリスト１６１ａを作成する処理（第３の処理）。
なお、本発明では、処理の順番は、これに限定されないのは言うまでもない。
＜第１の処理＞
まず、第１の処理を説明する。
【００５７】
図１７は、第１の処理の処理フローを示す図である。
まず、タイミング解析情報管理テーブル１３０ａに基づいて、クリティカルパスの抽出を行う（ステップＳ１）。
【００５８】
次に、抽出したクリティカルパスのＳｅｔｕｐマージンよりＨｏｌｄマージンが大きいか否かを判断する（ステップＳ２）。
ＳｅｔｕｐマージンがＨｏｌｄマージン以上の場合（ステップＳ２のＮｏ）、処理を終了する。
【００５９】
一方、ＳｅｔｕｐマージンよりＨｏｌｄマージンが大きい場合（ステップＳ２のＹｅｓ）、他のパスへの悪影響があるセルが存在するか否かを判断する（ステップＳ３）。
該当するセルが存在しない場合（ステップＳ３のＮｏ）、すなわち、全てのセルが、他のパスへの悪影響があるセルである場合、処理を終了する。
【００６０】
一方、該当するセルが存在する場合（ステップＳ３のＹｅｓ）、すなわち、セルの遅延が調整されても他のパスへ影響を与えないセルが存在する場合、クリティカルパス中で通常のＳＴＡ手法による調整が可能なセルであると判断し、調整対象セルとして抽出する（ステップＳ４）。
【００６１】
次に、ステップＳ４にて抽出した調整対象セルのセル固有名と、タイミングマージンとを調整対象セル固有名リスト格納部１５４に格納する（ステップＳ５）。
次に、タイミング解析情報管理テーブル１３０ａに他のクリティカルパスが存在するか否かを判断する（ステップＳ６）。
【００６２】
他のクリティカルパスが存在する場合（ステップＳ６のＹｅｓ）、ステップＳ１に移行してステップＳ１以降の処理を繰り返し行う。
一方、他のクリティカルパスが存在しない場合（ステップＳ６のＮｏ）、調整対象セル固有名リスト１５４ａから各調整対象セルの負荷情報を抽出し（ステップＳ７）、調整対象セル負荷情報リスト１５５ａに格納する（ステップＳ８）。
【００６３】
また、ステップＳ１にて抽出したＳｅｔｕｐマージンおよびＨｏｌｄマージンと、遅延調整基準値（Ｓｅｔｕｐ）および遅延調整基準値（Ｈｏｌｄ）とから遅延調整値（Ｓｅｔｕｐ）および遅延調整値（Ｈｏｌｄ）を算出し（ステップＳ９）、調整対象セル遅延調整値リスト１５６ａに格納する（ステップＳ１０）。
【００６４】
＜第２の処理＞
次に、第２の処理を説明する。
図１８は、第２の処理の処理フローを示す図である。
【００６５】
まず、調整対象セル固有名リスト１５４ａに格納されている各調整対象セルの配置座標をレイアウト情報１２０ａから抽出し（ステップＳ２１）、調整対象セル座標リスト１５７ａに格納する（ステップＳ２２）。
【００６６】
次に、各調整対象セルのレイアウト形状から、マスクデザインルールに基づき、調整対象セルのゲートサイズ調整可能量を算出する（ステップＳ２３）。そして、算出したゲートサイズ調整可能量を、ゲートサイズ調整可能量リスト１５８ａに格納する（ステップＳ２４）。
【００６７】
また、レイアウト形状から、調整対象セルに含まれるデバイスのゲートサイズを抽出する（ステップＳ２５）。そして、抽出したゲートサイズを、調整対象セルゲートサイズリスト１５９ａに格納する（ステップＳ２６）。
【００６８】
＜第３の処理＞
次に、第３の処理を説明する。
図１９は、第３の処理の処理フローを示す図である。
【００６９】
まず、調整対象セルの遅延調整値情報を調査対象セル遅延調整値リスト１５６ａから抽出し、対応するデバイスのサイズと遅延時間の関係をデバイス情報テーブル１４０ａから抽出し、調整前の値（ゲート長Ｌ＝±０μｍ、ゲート幅Ｗ＝±０μｍの値）から調整値を減算した遅延値を算出する（ステップＳ３１）。
【００７０】
次に、調整対象セルのゲートサイズ調整可能量を、ゲートサイズ調整可能量リスト１５８ａから抽出する（ステップＳ３２）。
次に、遅延値に対するゲートサイズの必要な調整量（ゲートサイズ調整必要量）を算出する（ステップＳ３３）。
【００７１】
次に、算出したゲートサイズ調整必要量と抽出したゲートサイズ調整可能量とを比較し、ゲートサイズの調整必要量がゲートサイズ調整可能量の範囲内か否かを判断する（ゲートサイズ調整量算出処理）（ステップＳ３４）。
【００７２】
ゲートサイズの必要な調整量がゲートサイズ調整可能量の範囲内であれば（ステップＳ３４のＹｅｓ）、ゲートサイズ調整必要量をその調整対象セルのゲートサイズ調整量とし（ステップＳ３５）、最終ゲートサイズとして最終ゲートサイズリスト１６１ａに格納する（ステップＳ３６）。
【００７３】
逆にゲートサイズの必要な調整量がゲートサイズ調整可能量の範囲外であれば（ステップＳ３４のＮｏ）、ゲートサイズ調整可能量をその調整対象セルのゲートサイズ調整量とし（ステップＳ３７）、最終ゲートサイズとして最終ゲートサイズリスト１６１ａに格納する（ステップＳ３６）。この場合、その調整対象セルが属するクリティカルパスの他の調整対象セルでのゲートサイズの必要な調整量に対して、上記範囲外となった分の調整量の追加を行う。これは第２の処理以降を繰り返し行うことにより実現することができる。
【００７４】
次に、Ｓｅｔｕｐマージンよりも遅延調整基準値が小さくなる調整対象セルが調整対象セル遅延調整値リスト１５６ａに、存在するか否かを判断する（ステップＳ３８）。
存在する場合（ステップＳ３８のＹｅｓ）、ステップＳ３１に移行し、ステップＳ３１以降の動作を繰り返し行う。
【００７５】
一方、存在しない場合（ステップＳ３８のＮｏ）、第３の処理を終了する。
その後、上記により決定した最終ゲートサイズを元に、ゲートサイズの調整を行う。
このゲートサイズの調整を調整対象セル全てに対して行うことで、タイミングマージンをより増大したＬＳＩを製造することができ、従来技術に比較して、歩留まり向上を行うことができる。
【００７６】
次に、第１の処理〜第３の処理を、具体例を用いて説明する。
以下、図６のタイミング解析情報管理テーブル１３０ａに格納されているタイミング解析情報からゲートサイズ調整量を決定する例を説明する。
【００７７】
まず、タイミング解析情報からクリティカルパスを選定する。前述したように、タイミング解析情報管理テーブル１３０ａでは、Ｓｅｔｕｐマージンが最小であるＮｏ．１のパスがクリティカルパスとなる。
【００７８】
次に、クリティカルパスから調整対象セルを抽出する。前述したように、調整対象セルは、クリティカルパス中で通常のＳＴＡ手法による調整が可能なセルである。すなわち、セルの遅延が調整されても他のパスへ影響を与えないセルが調整対象セルとなる。例えば、図７に示す例では、４Ｎａｎｄ３やＮａｎｄ２等を調整すると、他のパスに影響を与えてしまうため、これらは調整対象セルにはならない。Ｉｎｖ１０は他のパスに影響を与えないため、調整対象セルになり得る。従って、本具体例ではＩｎｖ１０が調整対象セルとなり、Ｉｎｖ１０の情報を調整対象セル固有名リスト１５４ａに格納する。
【００７９】
次に、第２の処理の具体例を説明する。
図２０は、第２の処理の具体例を示す図である。
調整対象セル固有名リスト１５４ａに格納されているセル固有名Ｉｎｖ１０と、レイアウト情報１２０ａの固有名に格納されているセル固有名が一致したところのＸ座標（１００．０００）、Ｙ座標（２１４０．０００）を抽出し、調整対象セル座標リスト１５７ａに格納する。
【００８０】
次に、レイアウト情報１２０ａ、マスクデザインルールおよび調整対象セル座標リスト１５７ａに基づいて、ゲートサイズ調整可能量を算出する。
図２１は、ゲートサイズ調整可能量を説明する図であり、図２１（ａ）は、マスクデザインルールに定義されたゲートに関連するルールを示す図であり、図２１（ｂ）は、レイアウト情報より抽出した調整対象セルのサイズを示す図である。
【００８１】
ここで、長さａは、ゲート２１０のゲート長、幅ｂは、ゲート２１０のゲート幅、長さｃは、ゲートの右端部２１１と拡散層２２０の右端部２２１との最短距離、長さｄは、ゲートの右端部２１１とコンタクト２３０の左端部２３１との最短距離、幅ｅは、ゲートの下端部２１２と拡散層２２０の下端部２２２との最短距離、幅ｆは、ゲート２１０の下端部２１２と、ゲート２１０と隣接するゲート２４０の上端部２４１との最短距離、幅ｇは、拡散層２２０の下端部２２２と、拡散層２２０と隣接する拡散層２５０の上端部２５１との最短距離を示している。
【００８２】
また、長さＡ、Ｃ、Ｄは、それぞれ長さａ、ｃ、ｄに対応しており、幅Ｂ、Ｅ、Ｆ、Ｇは、それぞれ幅ｂ、ｅ、ｆ、ｇに対応している。
ここで、ゲートサイズ調整可能量ΔＬａは、式（１）で表される。
【００８３】
ａ−Ａ≦ΔＬａ≦（ｃ−Ｃまたはｄ−Ｄの最小値）・・・（１）
また、ゲートサイズ調整可能量ΔＷａは、式（２）で表される。
ｂ−Ｂ≦ΔＷａ≦（ｅ−Ｅ、ｆ−Ｆ、またはｇ−Ｇの最小値）・・・（２）
次に第３の処理の具体例を説明する。
【００８４】
図２２は、第３の処理の具体例を説明する図である。
まず、遅延値を求める。遅延値は、２００ｐｓ（調整前の値）−９８ｐｓ（調整値）＝１０２ｐｓとなる。
【００８５】
次に、ゲートサイズ調整可能量ΔＬａ、ΔＷａを抽出する。前述した式（１）、（２）によって得られたＩｎｖ１０のゲートサイズ調整可能量を式（３）、（４）とすると、
−２（μｍ）≦ΔＬａ≦０（μｍ）・・・（３）
０（μｍ）≦ΔＷａ≦１（μｍ）・・・（４）
図２２において、×印のカラムが実現不可能となる。
【００８６】
次に、ゲートサイズ調整必要量ΔＬｉ、ΔＷｉを算出する。表より次の式（５）が求まる。
遅延値＝調整前の値＋（ΔＬ（μｍ）×ΔＬ変化時間）＋（ΔＷ（μｍ）×ΔＷ変化時間）・・・（５）
ここで、ΔＬ変化時間およびΔＷ変化時間は、それぞれ、デバイス情報テーブル１４０ａ中、ゲート長Ｌおよびゲート幅Ｗの１μｍ毎の遅延時間の変化量である。
【００８７】
それぞれ値を代入すると、１０２ｐｓ＝２００ｐｓ＋（ΔＬ（μｍ）×５０（ｐｓ））＋（ΔＷ（μｍ）×１０（ｐｓ））となる。
ここで、ゲート長Ｌを調整する場合、上記式（５）にΔＷ＝０を代入する。これによりΔＬ＝−１．９６μｍとなる。この値が、ゲートサイズ調整必要量ΔＬｉとなる。
【００８８】
この値は、上記式（３）のゲートサイズ調整可能量ΔＬａの範囲内であるため、ΔＬｉ＝−１．９６μｍがゲートサイズ調整量ΔＬとなり、この調整量で調整対象セルゲートサイズリスト１５９ａのゲート長５μｍを調整した結果が最終ゲートサイズとして最終ゲートサイズリスト１６１ａに格納される。
【００８９】
一方、ゲート幅Ｗを調整する場合、上記式にΔＬ＝０を代入する。これによりΔＷ＝−９．８μｍとなる。
この値は、上記式（４）のゲートサイズ調整可能量ΔＷａの範囲内ではないため、ゲートサイズ調整必要量ΔＷｉは存在せず、調整は行わない。従って、調整対象セルゲートサイズリスト１５９ａのゲート幅１２μｍがそのまま最終ゲートサイズとして最終ゲートサイズリスト１６１ａに格納される。
【００９０】
なお、ゲート長Ｌ、ゲート幅Ｗのいずれも調整可能となった場合、プロセステクノロジやデバイス特性により、優先順位を予め決めておき、いずれか一方を選択する。
次に、最終ゲートサイズに従って、ゲートサイズの調整を行う例を説明する。
【００９１】
図２３は、ゲートサイズの調整例を示す図である。なお、図２３は、ゲート長を調整する例を示している。
式（５）によって、算出された最終ゲートサイズに従って、ゲート長Ｌを調整したマスクデータを作成することにより、そのマスクデータにより製造されたＬＳＩの特性を改善することができる。
【００９２】
以上述べたように、本実施の形態の半導体特性調整装置１００によれば、クリティカルパスから調整対象セルを抽出し、抽出したセルのゲートサイズの調整を行い、調整後の情報をレイアウト情報に反映させてタイミングマージンの拡大を図ることで、製造ばらつきにより電気的特性が劣化することをより確実に回避することができる。
【００９３】
また、歩留まりが向上するため、半導体装置の製造コストの削減を図ることができる。
また、デバイス情報を参照することで、どのように調整すればタイミングマージンの拡大を図れるかを容易に判断することができる。
【００９４】
また、ゲートサイズの調整を行っても他のパスへ影響を与えないセルを調整対象セルとすることで、調整を簡易なものとすることができる。
また、ゲートサイズ調整可能量を用いてゲートサイズ調整量を求めるようにしたので、実現可能か否かの判断を容易に行うことができる。
【００９５】
なお、本実施の形態では、ゲート長およびゲート幅を調整する場合について説明したが、本発明により調整できる部位は、ゲートに限定されないことは言うまでもない。
また、本実施の形態では、セル単位の半導体特性の調整を行ったが、本発明はこれに限らず、基本素子単位の調整を行ってもよい。
【００９６】
以上、本発明の半導体特性調整プログラム、半導体特性調整方法および半導体特性調整装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【００９７】
また、本発明は、前述した実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、半導体特性調整装置１００が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記録装置としては、例えば、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等が挙げられる。光ディスクとしては、例えば、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等が挙げられる。光磁気記録媒体としては、例えば、ＭＯ（Magneto-Optical disk）等が挙げられる。
【００９８】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータに、そのプログラムを転送することもできる。
【００９９】
半導体特性調整プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１００】
（付記１）  半導体設計で得られたデバイスの特性を調整する半導体特性調整プログラムにおいて、
コンピュータを、
所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択する選択手段、
選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する調整量決定手段、
として機能させることを特徴とする半導体特性調整プログラム。
【０１０１】
（付記２）  前記マージンは、タイミングマージンであることを特徴とする付記１記載の半導体特性調整プログラム。
（付記３）  コンピュータを、さらに、前記半導体設計で得られた前記デバイスのサイズの情報を示すレイアウト情報に含まれる、前記選択手段で選択された前記デバイスのサイズに対し、前記サイズ調整量を適用するパターン調整処理手段、として機能させることを特徴とする付記１記載の半導体特性調整プログラム。
【０１０２】
（付記４）  前記マージン情報は、前記レイアウト情報を作成する段階で実行する静的タイミング解析により得られる前記パス毎の情報であることを特徴とする付記３記載の半導体特性調整プログラム。
【０１０３】
（付記５）  前記パス毎に、セットアップマージンが設けられており、
前記選択手段は、前記セットアップマージンが最小の前記パスを、調整対象となる前記セルが含まれるパスとして選択することを特徴とする付記４記載の半導体特性調整プログラム。
【０１０４】
（付記６）  前記選択手段は、選択された前記パスに含まれる複数の前記セルのうち、遅延時間を変更しても他の前記パスに影響を与えないセルを調整対象となる前記セルとして選択することを特徴とする付記１記載の半導体特性調整プログラム。
【０１０５】
（付記７）  コンピュータを、さらに、前記選択手段で選択された前記セルに含まれるデバイスのサイズを調整可能な範囲を決定する決定手段として機能させ、
前記調整量決定手段は、前記サイズが調整可能な範囲で前記サイズ調整量を決定することを特徴とする付記１記載の半導体特性調整プログラム。
【０１０６】
（付記８）  前記調整量決定手段は、前記マージンを増やす方向にサイズ調整量を決定することを特徴とする付記１記載の半導体特性調整プログラム。
（付記９）  コンピュータを、さらに、前記マージン情報を格納するマージン情報格納手段、前記デバイス情報を格納するデバイス情報格納手段、として機能させることを特徴とする付記１記載の半導体特性調整プログラム。
【０１０７】
（付記１０）  前記デバイス情報は、前記デバイスの負荷毎に設けられていることを特徴とする付記１記載の半導体特性調整プログラム。
（付記１１）  半導体設計で得られたデバイスの特性を調整する半導体特性調整方法において、
選択手段が、所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択し、
調整量決定手段が、選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する、
ことを特徴とする半導体特性調整方法。
【０１０８】
（付記１２）  半導体設計で得られたデバイスの特性を調整する半導体特性調整装置において、
所定の回路間に設けられた複数のセルを通過するパスのマージンを示すマージン情報と、外部から与えられ前記マージンを所定のマージンに調整する調整基準値とに基づいて、調整対象となる前記セルと前記セルに含まれるデバイスの調整に必要なマージン調整値とを選択する選択手段と、
選択された前記セルに含まれるデバイスのマージン変動に伴う前記デバイスのサイズ調整量の関係を示すデバイス情報に基づいて、前記マージン調整値を満たす前記デバイスのサイズ調整量を決定する調整量決定手段と、
を有することを特徴とする半導体特性調整装置。
【図面の簡単な説明】
【０１０９】
【図１】本発明の概要を示す図である。
【図２】半導体特性調整装置のハードウェア構成例を示す図である。
【図３】半導体特性調整装置の機能を示すブロック図である。
【図４】レイアウト情報を示す図である。
【図５】図４に示すレイアウト情報により規定される素子の部品配置を模式的に示す図である。
【図６】タイミング解析情報を示す図である。
【図７】図６に示すタイミング解析情報管理テーブルのパスを構成する回路の一例を示す図である。
【図８】デバイス情報を示す図である。
【図９】マスク情報処理部の構成を示すブロック図である。
【図１０】調整対象セル固有名リストを示す図である。
【図１１】調整対象セル負荷情報リストを示す図である。
【図１２】調整対象セル遅延調整値リストを示す図である。
【図１３】調整対象セル座標リストを示す図である。
【図１４】ゲートサイズ調整可能量リストを示す図である。
【図１５】調整対象セルゲートサイズリストを示す図である。
【図１６】最終ゲートサイズリストを示す図である。
【図１７】第１の処理の処理フローを示す図である。
【図１８】第２の処理の処理フローを示す図である。
【図１９】第３の処理の処理フローを示す図である。
【図２０】第２の処理の具体例を示す図である。
【図２１】ゲートサイズ調整可能量を説明する図である。
【図２２】第３の処理の具体例を説明する図である。
【図２３】ゲートサイズの調整例を示す図である。
【符号の説明】
【０１１０】
１  コンピュータ
２  選択手段
３  マージン情報
４  調整量決定手段
５  デバイス情報
１００  半導体特性調整装置
１２０  レイアウト情報格納部
１２０ａ  レイアウト情報
１３０  タイミング解析情報格納部
１３０ａ  タイミング解析情報管理テーブル
１４０  デバイス情報格納部
１４０ａ  デバイス情報テーブル
１５０  マスク情報処理部
１５１  パターン調整処理部
１５２  ＯＰＣ処理部
１５３  位相シフト処理部
１５４  調整対象セル固有名リスト格納部
１５４ａ  調整対象セル固有名リスト
１５５  調整対象セル負荷情報リスト格納部
１５５ａ  調整対象セル負荷情報リスト
１５６  調整対象セル遅延調整値リスト格納部
１５６ａ  調整対象セル遅延調整値リスト
１５７  調整対象セル座標リスト格納部
１５７ａ  調整対象セル座標リスト
１５８  ゲートサイズ調整可能量リスト格納部
１５８ａ  ゲートサイズ調整可能量リスト
１５９  調整対象セルゲートサイズリスト格納部
１５９ａ  調整対象セルゲートサイズリスト
１６０  マスクデザインルール格納部
１６１  最終ゲートサイズリスト格納部
１６１ａ  最終ゲートサイズリスト
Ｌ  ゲート長
Ｗ  ゲート幅
【図１】
2009086700.tif 000003
【図２】
2009086700.tif 000004
【図３】
2009086700.tif 000005
【図４】
2009086700.tif 000006
【図５】
2009086700.tif 000007
【図６】
2009086700.tif 000008
【図７】
2009086700.tif 000009
【図８】
2009086700.tif 000010
【図９】
2009086700.tif 000011
【図１０】
2009086700.tif 000012
【図１１】
2009086700.tif 000013
【図１２】
2009086700.tif 000014
【図１３】
2009086700.tif 000015
【図１４】
2009086700.tif 000016
【図１５】
2009086700.tif 000017
【図１６】
2009086700.tif 000018
【図１７】
2009086700.tif 000019
【図１８】
2009086700.tif 000020
【図１９】
2009086700.tif 000021
【図２０】
2009086700.tif 000022
【図２１】
2009086700.tif 000023
【図２２】
2009086700.tif 000024
【図２３】
2009086700.tif 000025