(58)【調査した分野】(Int.Cl.,DB名)
前記対応情報では、前記複数のグループの各々が、前記複数の配線路のうちの一定間隔に位置する複数の配線路に対応付けられていることを特徴とする請求項3に記載の設計方法。
前記第3層は、前記最上の金属層と前記第2金属層群の最下の金属層との間に設けられる複数のビア層と、前記複数のビア層の間に積層される金属層と、を含み、前記最上の金属層によって形成される前記外部端子と、前記第2層群によって形成される前記外部端子間を接続する信号線と、を前記第3層に含まれる金属層が有する複数の配線路に形成される信号線を介して前記複数のビア層によって接続し、
前記ビア層のビアの位置を決定する処理では、
生成した前記第3情報が示す前記複数の第2領域の各々について、前記複数のビア層の各々のビアの位置を、前記第2領域に含まれる外部端子について特定した前記配線路と、前記外部端子が分類されたグループに対応付けられた前記最下の金属層が有する配線路と、の位置関係に基づいて決定することを特徴とする請求項6に記載の設計方法。
【発明を実施するための形態】
【0011】
以下に添付図面を参照して、本発明にかかる設計方法、設計プログラム、および回路の実施の形態を詳細に説明する。
【0012】
図1は、設計装置による分類例を示す説明図である。設計装置100は、回路のレイアウト設計を行うコンピュータである。第1レイアウトデータld1は、回路内の所定領域areaに設けられるセルとセルの位置を示す。具体的に第1レイアウトデータld1は、セル配置が完了し、セル間の信号線が未結線である状態の物理情報である。ネットリストlistは、セルの外部端子を示す端子情報とセルの外部端子に接続される信号線を示すネット情報との組みを含む。具体的に、ネットリストlistは、たとえば、VerilogやVHDL(Very high speed integrated circuit Hardware Description Language)などのハードウェア記述言語やSPICE(Simulation Program with Integrated Circuit Emphasis)等の回路記述形式によって記述される。
【0013】
設計装置100は、第1レイアウトデータld1に基づいて所定領域areaを所定単位で区切った複数の領域を示す第1情報da1を生成する。所定単位については、本実施の形態における配線単位である。
【0014】
設計装置100は、ネットリストlistから、セルの外部端子の各々について、外部端子に接続される信号線を示すネット情報を抽出する。ここでは、ネット情報は、ネットリストlistに含まれるネット名である。たとえば、設計装置100は、セルc1の外部端子IN1に接続される信号線を示すネット名としてNet1を抽出する。たとえば、設計装置100は、セルc1の外部端子OUT1に接続される信号線を示すネット名としてNet2を抽出する。
【0015】
設計装置100は、外部端子の各々について、第1レイアウトデータld1に基づいて、生成した第1情報da1が示す複数の領域のうちの外部端子が含まれる領域における外部端子の相対的な位置を特定する。
図1の例では、各領域は、最大で3つの外部端子を含むことができ、左側から順に1、2、3とする。たとえば、設計装置100は、領域T1に含まれるセルc1の外部端子IN1の相対的な位置を1とする。
【0016】
そして、設計装置100は、外部端子の各々について、外部端子が含まれる領域を示す領域情報と、特定した相対的な位置を示す位置情報と、抽出したネット情報と、の組み合わせを含む第2情報da2を生成する。生成された第2情報da2は、設計装置100がアクセス可能な記憶装置に記憶される。たとえば、第2情報da2では、セルc1の外部端子IN1について、外部端子が含まれる領域を示す領域情報として「T1」と、相対的な位置を示す位置情報として「1」と、ネット情報として「Net1」と、を記憶する。また、外部端子が含まれる領域を示す領域情報には、領域を示す4点の座標も含まれる。
【0017】
設計装置100は、外部端子の各々を複数のグループのうちのいずれかに分類する。ここでは、設計装置100は、第2情報da2に含まれる領域情報が示す領域が同一の外部端子同士が異なるグループに分類され、第2情報da2に含まれるネット情報が示す信号線が同一の外部端子同士が同一のグループに分類されるようにグループ化する。たとえば、セルc1の外部端子IN1と、セルc1の外部端子OUT1とは、同一領域T1に含まれるため、異なるグループに分類される。セルc1の外部端子IN1と、セルc4の外部端子OUT1とは、ネット情報が同一であるため、同一のグループであるグループG1に分類される。
【0018】
また、外部端子間を接続する信号線を形成する層群に含まれる金属層は、それぞれ複数の配線路を有する。ここで、配線路は、トラックと称する。同一金属層内のトラックの幅やトラック間の幅は同一である。複数のグループの各々は、異なるグループ同士で同一のトラックに対応付けられないように複数のトラックのいずれかに対応付けられる。
【0019】
回路内の同一領域の端子同士を異なる配線路に割り当てることにより信号線の密集を防ぐことができる。信号線が同一の端子同士を同一の配線路に割り当てることにより、少ない配線路により信号線を形成することができる。これにより、配線パターンを簡単化することができる。したがって、配線パターンによって生じる不良を減少させることができる。
【0020】
また、上述した電子ビーム露光では、露光を行う回路パターンが露光の単位となる基本図形に分解され、各基本図形と同じ形状および大きさの電子ビームが複数の成形アパーチャを用いて成形され、順次、レジスト上に照射される。CP方式では複数の基本図形が予め電子線用のステンシルマスクとして用意される。基本図形としては、すべての配置配線が完了したレイアウトデータの中で、繰り返して利用される回数の多いレイアウトデータのパターンが用いられる。基本図形は、以下「CPパターン」と称する。したがって、配線パターンが簡単化されることによって、CPパターンの種類数を低減させることができる。これにより、CPパターンを搭載するステンシルマスクの面積が一定の場合に、ショットごとの描画図形数が増加するため、露光回数を低減させることができる。ショットとは、基本図形と同じ形状および大きさの電子ビームが、複数の成形アパーチャを用いて成形され、順次、レジスト上に照射される1回の電子線照射である。
【0021】
図2は、回路を形成する金属層およびビア層の使用例を示す説明図である。第1層群Lclは、第1金属層群がそれぞれビア層を介して積層され、所定領域area内に設けられるセル内の信号線と、外部端子と、を形成する。ここでは、第1層群Lclをセル層Lclと称する。
図2では、金属層MET1と金属層MET2と、ビア層V1と、がセル層Lclに含まれる。
【0022】
第2層群Lwは、セル層Lclよりも上層であり、第2金属層群がそれぞれビア層を介して積層される第2層群Lwであって、外部端子間の信号線を形成する。
図1で説明した外部端子間を接続する信号線を形成する層群は、第2層群Lwである。第2層群Lwを配線層Lwと称する。
図2では、配線層Lwは、金属層MET4〜MET_TOPと、ビア層V4〜Vn(n>4)が配線層Lwに含まれる。
【0023】
第3層Lcnは、セル層Lclと配線層Lwとの間に設けられる。第3層Lcnは、接続層Lcnと称する。接続層Lcnは、セル層Lclによって形成される外部端子と、配線層Lwによって形成される外部端子間を接続する信号線と、の結線を形成する。接続層Lcnは、セル層Lclのうちの最上層の金属層と配線層Lwの最下層の金属層とを接続する層であるため、ビア層のみであってもよい。また、接続層Lcnは、
図2に示すように、セル層Lclのうちの最上層の金属層と配線層Lwの最下層の金属層との間に設けられる複数のビア層と、当該複数のビア層の間に積層される金属層と、を含んでいてもよい。
図2では、金属層MET3と、ビア層V2と、ビア層V3と、が接続層Lcnに含まれる。
【0024】
(設計装置100のハードウェア構成例)
図3は、設計装置のハードウェア構成例を示すブロック図である。
図3において、設計装置100は、CPU301と、ROM302と、RAM303と、ディスクドライブ304と、ディスク305と、を有する。設計装置100は、I/F306と、入力装置307と、出力装置308と、を有する。また、各部はバス300によってそれぞれ接続される。
【0025】
ここで、CPU301は、設計装置100の全体の制御を司る。ROM302は、ブートプログラムなどのプログラムを記憶する。RAM303は、CPU301のワークエリアとして使用される。ディスクドライブ304は、CPU301の制御にしたがってディスク305に対するデータのリード/ライトを制御する。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する。ディスク305としては、磁気ディスク、光ディスクなどが挙げられる。
【0026】
I/F306は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワークNETに接続され、このネットワークNETを介して他の装置に接続される。そして、I/F306は、ネットワークNETと内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F306には、たとえばモデムやLANアダプタなどを採用することができる。
【0027】
入力装置307は、キーボード、マウス、タッチパネルなど利用者の操作により、各種データの入力を行うインターフェースである。また、入力装置307は、カメラから画像や動画を取り込むこともできる。また、入力装置307は、マイクから音声を取り込むこともできる。出力装置308は、CPU301の指示により、データを出力するインターフェースである。出力装置308には、ディスプレイやプリンタが挙げられる。
【0028】
(設計装置100の機能的構成例)
図4は、設計装置の機能的構成例を示すブロック図である。設計装置100は、第1情報生成部401と、抽出部402と、第1特定部403と、第2情報生成部404と、分類部405と、取得部406と、第2特定部407と、第2レイアウトデータ生成部408と、を含む。さらに、設計装置100は、第4レイアウトデータ生成部409と、第3特定部410と、第3レイアウトデータ生成部411と、第3情報生成部412と、決定部413と、を含む。さらに、設計装置100は、選択部414と、第1判断部415と、追加部416と、第2判断部417と、変換部418と、第4情報生成部419と、第4特定部420と、第5情報生成部421と、を含む。
【0029】
各部の処理は、たとえば、CPU301がアクセス可能な記憶装置に記憶された情報処理プログラムにコーディングされている。そして、CPU301が記憶装置から情報処理プログラムを読み出して、設計プログラムにコーディングされている処理を実行する。これにより、各部の処理が実現される。また、各部の処理結果は、たとえば、RAM303、ディスク305などの記憶装置に記憶される。
【0030】
第1情報生成部401は、第1レイアウトデータld1に基づいて所定領域areaを所定単位で区切った複数の領域を示す第1情報da1を生成する。ここでは、複数の領域の各々をタイルと称する。
【0031】
図5は、タイルで区切られる例を示す説明図である。たとえば、回路内の所定領域areaは、座標(X1,Y1)、座標(X2,Y2)、座標(X3,Y3)、座標(X4,Y4)の4点に囲まれる領域である。1つのタイルのサイズは、たとえば、所定領域area内のセルの並び方向にd1であり、所定領域area内のセルの並び方向と逆方向にd2である。d1は、セル層Lclの最上の金属層が有する複数のトラックの配線間隔に基づく長さである。d2は、各セルの高さに基づく長さである。セルの高さとは、VDD配線とVSS配線との間の長さであり、異なる種類のセルであっても、セルの高さが同様になるようにレイアウトされることによって、複数のセルを列にすることができる。第1情報生成部401は、たとえば、所定領域areaを区切ったタイルT1〜T3を示す第1情報da1を生成する。
【0032】
タイルT1は、座標(X1,Y1)、座標(X3,Y3)、座標(X5,Y5)、座標(X6,Y6)に囲われる領域である。タイルT2は、座標(X5,Y5)、座標(X6,Y6)、座標(X7,Y7)、座標(X8,Y8)に囲われる領域である。タイルT3は、座標(X7,Y7)、座標(X8,Y8)、座標(X2,Y2)、座標(X4,Y4)に囲われる領域である。たとえば、第1情報da1は、タイルを示す識別情報と、タイルの頂点座標と、が関連付けられた情報である。
【0033】
抽出部402は、セルの外部端子の各々について、ネットリストlistから、外部端子に接続される信号線を示すネット情報を抽出する。上述したように、ここでは、ネット情報は、ネットリストlistに含まれるネット名である。
【0034】
第1特定部403は、外部端子の各々について、第1レイアウトデータld1に基づいて、生成した第1情報da1が示す複数の領域のうちの外部端子が含まれる領域における外部端子の相対的な位置を特定する。各タイルは、最大で3つの外部端子を含むことができ、左側から順に1、2、3とする。
【0035】
そして、第2情報生成部404は、外部端子の各々について、外部端子が含まれる領域を示す領域情報と、特定した相対的な位置を示す位置情報と、抽出したネット情報と、の組み合わせを含む第2情報da2を生成する。ここでは、第2情報da2として、タイルネットリストtlist1が生成される。タイルネットリストtlist1は、RAM303、ディスク305などの記憶装置に記憶される。
【0036】
図6は、タイルネットリスト例を示す説明図である。タイルネットリストtlist1は、外部端子が含まれる領域を示す領域情報としてのタイルの識別情報ごとに、特定した相対的な位置を示す位置情報としてポート番号と、抽出したネット情報と、の組み合わせを含む。たとえば、タイルネットリストtlist1では、「タイルの識別情報(ポート番号(ネット情報),ポート番号(ネット情報),ポート番号(ネット情報))」のように組み合わせを含む。
【0037】
つぎに、分類部405は、外部端子の各々を、タイルが同一の外部端子同士が異なるグループに分類され、ネット情報が示す信号線が同一の外部端子同士が同一のグループに分類されるように、複数のグループのうちのいずれかに分類する。タイルは、生成されたタイルネットリストtlist1に含まれるタイルの識別情報が示す。ネット情報は、生成したタイルネットリストtlist1に含まれる。グループの数は、たとえば、トラックの数に基づいて定められる。
【0038】
図7は、グループ化のためのタイルネットリストからグラフへの変換を示す説明図である。分類部405は、グラフ理論のグラフ彩色における「点彩色問題」をこのようなグラフに適用することにより、グループの分類を行う。
図7では、理解の容易化のために、タイルがT1〜T5まである例を示す。
【0039】
タイルT1〜T5のそれぞれについて、外部端子をその頂点とし、全ての頂点が互いに辺で結ばれている完全グラフgr1〜gr5を構成する。これらの完全グラフを、接続ネットを共有する頂点(外部端子)同士が重なるように連結して、タイルネットリスト全体に対応するグラフgrを生成する。この時、gr1〜gr5はそれぞれ、グラフgrの完全部分グラフと呼ばれる。グラフgrに点彩色問題を適用することにより、各完全部分グラフgr1〜gr5では、それぞれの頂点(外部端子)が異なるグループに分類される。
【0040】
グラフの点彩色に関する定理は以下の通りである。グラフの隣接点に異なる色づけができる最小の色数をxとし、頂点に接続する辺の最大数をΔとすると、「x≦Δ+1」が成り立つ。
【0041】
分類部405は、色をグループの識別情報として、タイルネットリストtlist1内に含まれるネット情報にグループの識別情報を割り当てることによって、外部端子をグループ化することができる。
【0042】
図8は、グループ化後および分割後のタイルネットリストを示す説明図である。グループ化後のタイルネットリストtlist2は、タイルの識別情報ごとに、タイルに含まれる外部端子についての、ポート番号と、ネット情報と、外部端子が分類されたグループの識別情報と、の組み合わせを含む。たとえば、タイルネットリストtlist2では、「タイルの識別情報(ポート番号(ネット情報,グループの識別情報),・・・,ポート番号(ネット情報,グループの識別情報))」のように組み合わせを含む。そして、分割後のタイルネットリストtlist3は、グループごとに「タイルの識別情報(ポート番号(ネット情報,グループの識別情報))」が含まれる。
【0043】
つぎに、取得部406は、複数のグループの各々が、配線層Lwに含まれる金属層群の各々の金属層について、金属層のトラックのうちの少なくとも1つのトラックに対応付けられ、異なるグループ同士が異なるトラックに対応付けられた対応情報を取得する。また、対応情報では、複数のグループの各々が、複数のトラックのうちの一定間隔に位置する複数のトラックに対応付けられていてもよい。具体的には、対応情報は、各トラックの識別情報とグループの識別情報とが関連付けられた情報である。取得形式としては、たとえば、ディスク305などの記憶装置から取得してもよいし、入力装置307を介した外部から入力を受け付けてもよいし、I/F306を用いてネットワークNETを介して他の装置から取得してもよい。
【0044】
図9は、トラックとグループの対応付け例を示す説明図である。
図9では、複数のグループの各々が、複数のトラックのうちの一定間隔に位置する複数のトラックに対応付けられている例を示す。たとえば、縦方向に設けられた複数のトラックのうちの左端のトラックから右端のトラックに向かってグループG1〜グループG4が順に一定間隔ri1に位置するトラックに対応付けられる。ここで、縦方向とは、各レイアウトデータについての座標系におけるx軸方向であり、横方向とは、各レイアウトデータについての座標系におけるy軸方向である。横方向にある複数のトラックのうちの最も下のトラックから最も上のトラックに向かってグループG1〜グループG4が順に一定間隔ri2に位置するトラックに対応付けられる。
【0045】
これにより、ビアが、配線層Lwのうちの隣り合う金属層間において対角位置に配置されることにより、ビア層におけるCPパターンの種類数を低減させることができる。また、
図9では、ビアが配置される位置を丸印で示し、ビアが配置されていないが配置可能な位置をバツ印で示す。
【0046】
図10は、第2レイアウトデータ例を示す説明図である。第2特定部407は、複数のグループの各々について、対応情報1000からグループに対応付けられたトラックを特定する。そして、第2レイアウトデータ生成部408は、第2レイアウトデータld2を生成する。第2レイアウトデータld2は、複数のグループの各々について、グループに分類された外部端子に対応する第2情報da2に含まれるネット情報が示す信号線と、特定されたトラックにおいて信号線を形成する位置と、を示す。
【0047】
第2レイアウトデータ生成部408は、各グループについて、グループに分類された外部端子に対応するタイルネットリストtlist3に含まれるネット情報が示す信号線を、タイルネットリストtlist3に含まれるタイルの識別情報に基づいて配線する。ここでは、第2レイアウトデータ生成部408は、自動配置配線ツールを用いればよい。これによって、第2レイアウトデータ生成部408は、グループごとに第2レイアウトデータld2を生成する。なお、第2レイアウトデータ生成部408は、タイルネットリストtlist3に含まれるタイルの識別情報によって、回路内のいずれの位置にタイルがあるかを生成された第1情報da1に基づいて特定することができる。
【0048】
図10の例では、グループG1には、タイルT2にある外部端子inAとタイルT4にある外部端子outCとタイルT5にある外部端子inBとが分類される。外部端子inAと、外部端子outCと、外部端子inBとは、ネット情報NetXが示す信号線によって接続される。
【0049】
たとえば、外部端子inAと外部端子inBとを接続する信号線についてレイアウトを説明する。配線層Lwの最下金属層が有する複数のトラックのうち、タイルT2と同一位置にあってグループG1に対応付けられたトラックを第1トラックとする。当該複数のトラックのうち、タイルT5と同一位置にあってグループG1に対応付けられたトラックを第2トラックとする。たとえば、第2レイアウトデータ生成部408は、第1トラックと第2トラックとの間を接続する信号線をレイアウトする。このようにして、第2レイアウトデータ生成部408は、第2レイアウトデータld2−1〜ld2−4を生成する。
【0050】
より具体的には、第2レイアウトデータ生成部408は、第1トラックから第2トラックまでに、外部端子inAと外部端子inBとを接続する信号線を、グループG1に対応づけられた配線層Lwが有するトラックを使用してレイアウトする。
【0051】
これにより、配線層Lwの最下層にある金属層が有する複数のトラックのうちの各タイル上にあって、各タイル内にある外部端子が分類されたグループに対応付けられたトラック上に信号線が位置する第2レイアウトデータld2−1〜ld2−4が生成される。
【0052】
つぎに、第4レイアウトデータ生成部409は、グループの各々について生成された第2レイアウトデータld2が統合された第4レイアウトデータld4を生成する。また、第4レイアウトデータ生成部409は、第1レイアウトデータld1とグループの各々について生成された前記第2レイアウトデータld2−1〜ld2−4とが統合された第4レイアウトデータld4を生成してもよい。
【0053】
図11は、セルおよびセルの外部端子のレイアウトデータ例を示す説明図である。
図11の左側には、外部端子がないセルのレイアウトデータ1101を示す。
図11の右側には、セル層Lclのうちの最上の金属層MET2と、ビアVIA1と、によって、形成されるセルの外部端子と、セル内における外部端子の位置と、セルと、を示すレイアウトデータ1102を示す。たとえば、セルの外部端子は金属層MET2が有する複数のトラックのいずれかに形成されるように、セルのレイアウトデータ1102が作成される。
【0054】
また、セル層Lclのうちの最上の金属層MET2によって形成されるセルの外部端子は、いずれも同一の長さとする。
【0055】
図12は、縦トラック層と横トラック層の一例を示す説明図である。たとえば、セル層Lclの最上の金属層のトラックを縦方向のトラックとすると、当該最上の金属層よりも上層であって、当該最上の金属層と隣り合う金属層のトラックは横方向のトラックである。そして、当該最上の金属層のトラックには、所定長さの外部端子が形成され、当該最上の金属層よりも上層であって、当該最上の金属層と隣り合う金属層のトラックにも、所定長さの信号線が形成されることとしてもよい。これにより、配線密度の均一化を図ることができる。
【0056】
つぎに、設計装置100は、セルの外部端子が形成されるトラックと、配線層Lwによる信号線が形成されるトラックと、の位置関係は異なっているため、接続層Lcnによって外部端子と信号線とを接続させる。
【0057】
第3特定部410は、外部端子の各々について、セル層Lclのうちの最上の金属層が有する複数のトラックのうちの外部端子が形成されるトラックを特定する。具体的には、第3特定部410は、外部端子に対応する第2情報da2に含まれる領域情報が示す領域と、外部端子に対応する第2情報da2に含まれる位置情報と、によって、当該トラックを特定する。
図8に示したタイルネットリストtlist2を例に挙げると、「T1(Port1(Net1))」については、タイルT1の1番目の外部端子であるため、タイルT1がある位置の左端のトラックが特定される。
【0058】
第3レイアウトデータ生成部411は、外部端子の各々について、第3レイアウトデータを生成する。第3レイアウトデータは、外部端子が分類されたグループに対応付けられたトラックに形成される外部端子に接続される信号線と、特定されたトラックに形成される外部端子と、の接続層Lcnによる結線と、結線の位置と、を示す。
【0059】
図13は、外部端子と信号線との結線例を示す説明図である。
図13の左端では、外部端子が形成されるセル層Lclが有する複数のトラックと、配線層Lwのうちの最下の金属層が有する複数のトラックと、の対応関係を示す。
【0060】
ここでは、外部端子が形成されるセル層Lclについての(1,2,3,4)の各番号はタイル内における外部端子の相対的な位置を示す。配線層Lwのうちの最下の金属層についての(1,2,3,4)の各番号は外部端子が分類されたグループおよびグループに対応付けられたトラックを示す。たとえば、セル層Lclのトラック(1,2,3,4)に形成される各外部端子は、それぞれ配線層Lwの最下の金属層のトラック(4,2,1,3)に形成される信号線に接続される。
【0061】
ビア層1つのみによる結線の場合、第3レイアウトデータ生成部411は、ビアと、ビアの位置と、を示す第3レイアウトデータld3を生成する。そして、第4レイアウトデータ生成部409は、第1レイアウトデータld1とグループの各々について生成された第2レイアウトデータld2と第3レイアウトデータld3が統合された第4レイアウトデータld4を生成してもよい。
【0062】
また、CP方式の場合には、CPパターンのサイズで区切った領域ごとにビアの位置が決定される。そのため、第3情報生成部412は、最上の金属層が有する複数の配線路のうちの所定サイズで第1レイアウトデータld1が示す回路内の所定領域を区切った複数の第2領域を示す第3情報を生成する。所定サイズは、RAM303やディスク305などの記憶装置に予め記憶される。所定サイズは、たとえば、ビア層のCPパターンのサイズである。CPパターンのサイズは、
図9で示したような一定間隔ri1や一定間隔ri2内に含まれるトラックの数に基づいて決定される。
図13に示す第3レイアウトデータld3が示す領域が、1つの第2領域である。
【0063】
決定部413は、第3情報が示す複数の第2領域の各々について、ビア層のビアの位置を、第2領域に含まれる外部端子について特定したトラックと、外部端子が分類されたグループに対応付けられた最下の金属層が有するトラックと、の位置関係に基づいて決定する。たとえば、
図13では、決定部413は、ビア層のビアの位置を、外部端子を形成するセル層Lclのトラック(1,2,3,4)と、信号線を形成する配線層Lwの最下の金属層のトラック(4,2,1,3)と、の位置関係に基づいて決定する。決定結果は、RAM303、ディスク305などの記憶装置に記憶される。
【0064】
また、たとえば、記憶装置にビア層のCPパターンが予め記憶されてある場合、決定部413は、記憶装置から、位置関係に基づいて使用するCPパターンを決定してもよい。
【0065】
ただし、ビア層1つのみによる結線では、外部端子が形成されるトラックと、信号線が形成されるトラックと、の対応数が膨大になる。CP方式での電子ビーム露光の場合、対応数が多いと、マスクの面積の制約によりビア層1つのみでは結線できない。たとえば、9トラックの場合、接続層Lcnのビア層のCPパターンは9!=362880通り用意されなければならない。なお、「!」は階乗を示す。
【0066】
複数のビア層の多段接続による外部端子と信号線との間の接続における、ビア層のビア配置設計は、数学の群の理論に基づいて、以下のような手順によって行うことができる。ここでは2つのビア層を使用する場合を例示する。セル層Lclのn個の外部端子から配線層Lwのn個のトラックへの接続の全ての組み合わせは、数学的にはn次の対称群と同等であり、個々の外部端子とトラックの間の接続の組み合わせは、対称群の元である1つの置換に1対1に対応する。ここで、対称群とは、「ものを並べ替える」という操作を元とする群である。この場合の「ものを並べ替える」操作のことを「置換」という。1つの置換は、他の置換の合成(積)によって生成することができ、その1つの手順として、複数の巡回置換を次数の高い方から順に作用させることによって生成する合成法がある。この時、n次の巡回置換を作用させる回数は、0回からn−1回まで選択が可能であることとする。n次から1次までの巡回置換を降順に合成する組み合わせの数はn!個であり、回数の選択に応じてn次の対称群に含まれる任意の置換が合成可能である。
【0067】
複数のビア層を使用する場合には、この巡回置換の積をある次数m(ただし1<m<n)より大きい部分(m+1〜n)とm以下の部分(1〜m)とに分割する。これらの部分積によって合成され得る置換全体は、それぞれ置換群を構成し、その元の数はn!/m!とm!である。こうして合成された置換は、それぞれのビア層の上下の配線トラック間の接続の組み合わせを示し、これに基づいたビアの配置設計を行うことができる。さらに、上下のビア層による置換を組み合わせることで、n!個の置換を合成することができ、セル層Lclのn個の外部端子から配線層Lwのn個のトラックへの任意の接続を実現できる。
【0068】
例として、ビア層2つと金属層1つなどのように多段で切り替えることによって、CPパターンの種類数を減少させることができる場合を示す。仮に、CP使用可能最大数が720通りとする。たとえば、9トラックの場合、「9!=362880」通りであっても、ビア層2つと金属層1つであれば、「9!=(9×8×7)×(6×5×4×3×2)=504×720」のように2段に分けることができる。そのため、2つのビア層のうち一方のビア層は504通りのCPパターンが用意され、もう一方のビア層は720通りのCPパターンが用意され、2層共に最大CPパターン数内の範囲で置換が構成できる。そのため、すべての接続パターンがCP描画可能となってショット数が削減できスループットが向上する。
【0069】
ビア層2つと金属層1つとによる結線の場合、この金属層は、外部端子が形成される金属層が有する複数のトラックと、配線層Lwのうちの最下の金属層が有する複数のトラックと、のいずれにも直交する複数のトラックを有する。
【0070】
決定部413は、第3情報が示す複数の第2領域の各々について、複数のビア層の各々のビアの位置を、第2領域に含まれる外部端子について特定されたトラックと、外部端子が分類されたグループに対応付けられた最下の金属層が有するトラックと、の位置関係に基づいて決定する。上述したように、決定部413は、n次の巡回置換を作用させることによって決定する。
図13の例では、決定部413は、4(=4!/3!)通りのビア層のビアの位置と、6(3!)通りのビア層のビアの位置と、の組み合わせの中から、セル層のトラック(1,2,3,4)に形成される外部端子と、配線層のトラック(4,2,1,3)に形成される信号線とを接続可能な組み合わせを決定する。そして、第3レイアウトデータ生成部411は、ビアと、決定部413によって決定されたビアの位置と、を示す第3レイアウトデータld3を生成する。そして、第4レイアウトデータ生成部409は、第1レイアウトデータld1とグループの各々について生成された第2レイアウトデータld2と第3レイアウトデータld3が統合された第4レイアウトデータld4を生成してもよい。
【0071】
また、記憶装置にビア層のCPパターンが予め記憶されてある場合、決定部413は、記憶装置から、外部端子が形成されるトラックと外部端子が分類されたグループに対応付けられたトラックとの位置関係に基づいてCPパターンを決定してもよい。
【0072】
セル層Lclのトラック(1,2,3,4)に形成される各外部端子は、接続層Lcnに含まれる金属層が有するトラック(4,1,2,3)に形成される信号線と接続される。そして、接続層Lcnに含まれる金属層が有するトラック(4,1,2,3)に形成される信号線は、それぞれ配線層Lwの最下の金属層のトラック(4,2,1,3)に形成される信号線に接続される。それぞれ配線層Lwの最下の金属層のトラック(4,2,1,3)に形成される信号線に接続される。
【0073】
つぎに、選択部414は、第2金属層群の各々が有する複数のトラックの各々を一定間隔で区切ったトラックを順に選択する。電子ビーム露光の場合、一定間隔は、後述するCPパターンのサイズに基づく長さであり、電子ビーム露光でない場合、一定間隔は、設計者が予め定めた長さである。一定間隔は、RAM303やディスク305などの記憶装置に予め記憶される。
【0074】
図14は、信号線を延ばす例を示す説明図である。
図14では、各トラックが一定間隔r1で区切られている。第1判断部415は、トラックが選択される都度、選択したトラックに形成される信号線があるか否かを生成された第4レイアウトデータld4に基づいて判断する。ここで、一定間隔r1と同一の長さr1である信号線をSPANと称し、SPANの長さよりも短い長さr2の信号線をPADと称する。
【0075】
追加部416は、選択されたトラックに形成される信号線がないと判断された場合、選択されたトラックに形成させる一定間隔r1よりも短い長さの信号線と、信号線の位置と、を示す情報を第4レイアウトデータld4に追加する。具体的に、追加部416は、選択されたトラックに信号線が形成されない場合、選択されたトラックにPADを挿入する。
【0076】
また、第2判断部417は、選択されたトラックに形成される信号線があると判断された場合、選択されたトラックに形成される信号線の長さが一定間隔r1と同一長さであるか否かを判断する。変換部418は、信号線の長さが一定間隔と同一長さであると判断された場合、第4レイアウトデータld4内の選択されたトラックに形成される信号線を所定長さの信号線に変換する。具体的に、変換部418は、選択されたトラックに形成される信号線が一定間隔r1より短い場合、信号線をSPANに変換する。
【0077】
これにより、回路内の配線パターンについての密度が均一化され、回路の動作不良の発生を抑制することができる。回路の動作不良の発生を抑制可能な理由は、後述する
図17にて説明する。また、電子ビーム露光の場合、複数の信号線が1つの図形としてレイアウトされたCPパターンが予め用意される。そのため、SPANとPADとの組み合わせに対応したCPパターンが用意されればよいためCPパターンの種類数を低減させることができる。
【0078】
つぎに、設計装置100は、配線層Lwに含まれる各金属層に形成される信号線と、電子ビーム露光における当該信号線の形成に使用されるCPパターンと、の対応付けを行う。
【0079】
図15は、CPパターンライブラリの一例を示す説明図である。CPパターンライブラリ1500は、たとえば、複数の信号線が1つの図形としてレイアウトされたCPパターンを複数有する。CPパターンライブラリ1500は、ディスク305などの記憶装置に記憶される。ここでは、配線層Lwのみを示しているが、ビア層についても同様に1または複数のビアが1つの図形としてレイアウトされたCPパターンがある。
【0080】
CPパターンのサイズにおける一方の長さと一致するSPANと、SPANの長さよりも短い長さのPADと、の組み合わせに対応したCPパターンを事前に用意する。CPサイズが、5トラック分の場合、CPパターンは2
5=32種類となる。各CPパターンは、CP−A〜CP−Cのように識別情報が付される。
【0081】
つぎに、第4情報生成部419は、生成された第4レイアウトデータld4が示す信号線が形成される領域を一定間隔で区切った複数の第3領域を示す第4情報を生成する。一定間隔は、後述するCPパターンのサイズに基づいて定まる。
【0082】
図16は、CPパターンの特定例を示す説明図である。
図16に示すように、第4レイアウトld4が示す信号線が形成される領域wareaがCPパターンのサイズによって複数の第3領域ar1〜ar6に区切られる。
【0083】
第4特定部420は、記憶装置から、生成された第4情報da4が示す複数の第3領域ar1〜ar6の各々について、第3領域arに含まれる信号線の形状に一致するレイアウトデータの識別情報を特定する。ここでの記憶装置は、たとえば、CPパターンライブラリ1500である。具体的には、第4特定部420は、CPパターンライブラリ1500から、第3領域arに含まれる信号線の形状に一致するCPパターンの識別情報を特定する。たとえば、第4特定部420は、第3領域ar1と第3領域ar2と第3領域ar4とについてCPパターンCP−Aを特定し、第3領域ar3と第3領域ar6とについてCPパターンCP−Bを特定し、第3領域ar5についてCPパターンCP−Cを特定する。
【0084】
第5情報生成部421は、複数の第3領域ar1〜ar6の各々について、第3領域arを示す領域情報と、特定された識別情報と、が関連付けられた第5情報da5を生成する。たとえば、第5情報da5は、CPパターンの識別情報と、第3領域arを示す領域情報として第3領域arの頂点座標と、が関連付けられた情報である。
【0085】
図17は、CMPの均一性とパターン密度の関係例を示す説明図である。
図17の左側に示すように、絶縁膜上に配線溝を生成し(Step 1)、配線溝の生成後に絶縁膜上に銅メッキを生成し(Step 2)、Chemical Mechanical Polishing(CMP)を行って(Step 3〜ステップ 5)、余分な銅やバリアメタルを除去する技術がある。
【0086】
また、
図17の右側に示すように、ゲートを生成し(Step 1)、ゲートの生成後に絶縁膜としてBPSG(Boron Phosphor Silicate Glass)を堆積し(Step 2)、CMPを行って(Step 3,4)、余分な絶縁物質を除去することにより絶縁膜(PMD(Pre−Metal Dielectric))を形成する技術がある。
【0087】
ゲートや配線などのパターンに疎密があると、CMPによる最終の金属層の配線にばらつきが生じる。具体的には、たとえば、回路内で配線密度が低い領域や高い領域などが混在すると、配線密度が高い領域に研磨対象の銅が少ないため、低い領域の研磨完了前にCMPが完了してしまい低い領域に銅残りが発生する可能性が高い。
【0088】
また、回路内で配線密度が高い領域は、配線溝が多くなるため、酸化物が銅メッキに堆積したときの高さが低くなる。また、配線密度が低い領域は、配線溝が少なくなるため、酸化物が銅メッキに堆積したときの高さが高くなる。そのため、形成される信号線の厚さにばらつきが生じる。そして、このばらつきによって配線抵抗や配線容量にばらつきが発生するため、回路の動作不良を引き起こす可能性がある。
【0089】
上述したように、設計装置100は、配線層Lwに含まれる金属層が有するトラックに形成される信号線の長さが短い場合に、信号線を延ばし、当該トラックに形成される信号線がない場合に、ダミーの信号線を追加する。これにより、回路内において配線密度が均一化されるため、ばらつきの発生を低減させることができ、回路の動作不良の発生を抑制することができる。したがって、歩留まりを向上させることができる。
【0090】
図18は、光リソグラフィにおけるホットスポット例を示す説明図である。
図18中太線の形状が実際の光リソグラフィ結果を示し、細線の形状が設計された配線パターンを示す。
図18の上側に示すように、配線の終端、複数のトラックに跨って配線される際に曲がっている箇所などのように配線パターンの形状が複雑であったり、配線幅が著しく変化していると、隣接する配線同士のショートやビアによるコンタクト不良などが発生する。一方、本実施の形態のように、同一の配線パターンの繰り返しであると、隣接する配線同士のショートやビアによるコンタクト不良などの発生を低減させることができる。
【0091】
(設計装置による設計処理手順)
図19〜
図21は、設計装置による設計処理手順の一例を示すフローチャートである。設計装置100は、第1レイアウトデータld1に基づいて、所定領域areaを所定単位で区切った複数のタイルを示す第1情報da1を生成する(ステップS1901)。そして、設計装置100は、所定領域area内のセルの外部端子の各々について、ネットリストlistからネット情報を抽出する(ステップS1902)。
【0092】
設計装置100は、外部端子の各々について、外部端子が含まれるタイルにおける外部端子の相対的な位置を特定し(ステップS1903)、抽出結果と、特定結果と、タイルを示す情報と、を関連付けたタイルネットリストtlist1を生成する(ステップS1904)。
【0093】
設計装置100は、外部端子の各々を複数のグループのいずれかに分類する(ステップS1905)。設計装置100は、同一タイル内に含まれる外部端子同士を異なるグループにし、ネット情報が同一の外部端子同士を同一グループにする。同一タイル内に含まれる外部端子同士が異なるグループに分類されることによって、異なるトラックが使用されるため、信号線の密集を防ぐことができる。そして、ネット情報が同一の端子同士を同一のグループに分類することによって、当該同一の外部端子同士を同一のトラックに割り当てることによって、より少ないトラックによって信号線が形成される。これにより、配線パターンを簡単化することができる。設計装置100は、分類結果が加わったタイルネットリストtlist2を生成し(ステップS1906)、タイルネットリストtlist2をグループごとに分割する(ステップS1907)。分割結果は、たとえば、タイルネットリストtlist3である。
【0094】
設計装置100は、対応情報1000を取得し(ステップS2001)、複数のグループの各々について、対応情報1000に基づいてグループに対応付けられたトラックを特定する(ステップS2002)。設計装置100は、複数のグループの各々について、グループに含まれる外部端子に対応するネット情報が示す信号線をレイアウトする(ステップS2003)。ステップS2003によって、グループの各々について、第2レイアウトデータld2が生成される。
【0095】
設計装置100は、外部端子の各々について、外部端子が形成されるトラックを特定する(ステップS2004)。そして、設計装置100は、電子ビーム露光か否かを判断する(ステップS2005)。電子ビーム露光でない場合(ステップS2005:No)、設計装置100は、外部端子と、外部端子に接続される信号線と、の結線をレイアウトする(ステップS2006)。ステップS2004とステップS2005によって、
図13に示したような結線が行われた第3レイアウトデータld3が生成される。設計装置100は、第1〜第3レイアウトデータld1〜ld3を統合した第4レイアウトデータld4を生成し(ステップS2007)、ステップS2101へ移行する。上述した
図10では、グループの各々について生成された第2レイアウトデータld2−1〜ld2−4が統合された第4レイアウトデータld4を示す。一方、電子ビーム露光の場合(ステップS2005:Yes)、設計装置100は、第1レイアウトデータld1に基づいて、所定領域areaをCPパターンのサイズで区切った複数の第2領域を示す第3情報を生成する(ステップS2008)。設計装置100は、接続層Lcnに含まれるビア層のビアの位置を決定し(ステップS2009)、決定したビアの位置と、ビアと、を示す第3レイアウトデータld3を生成し(ステップS2010)、ステップS2007へ移行する。
【0096】
設計装置100は、配線層Lw内の金属層の各々が有する複数のトラックの各々を一定間隔r1で区切って(ステップS2101)、区切られたトラックのうち、未選択のトラックがあるか否かを判断する(ステップS2102)。未選択のトラックがある場合(ステップS2102:Yes)、設計装置100は、未選択のトラックから1つのトラックを選択する(ステップS2103)。設計装置100は、選択したトラックに形成される信号線があるか否かを判断する(ステップS2104)。
【0097】
選択したトラックに形成される信号線がある場合(ステップS2104:Yes)、設計装置100は、信号線の長さが信号線を区切った間隔r1と同一の長さか否かを判断する(ステップS2105)。信号線の長さが信号線を区切った間隔r1と同一の長さでない場合(ステップS2105:No)、設計装置100は、選択したトラックに形成される信号線を所定長さの信号線に変換し(ステップS2106)、ステップS2102へ戻る。
【0098】
信号線の長さが信号線を区切った間隔r1と同一の長さである場合(ステップS2105:Yes)、ステップS2102へ戻る。選択したトラックに形成される信号線がない場合(ステップS2104:No)、設計装置100は、選択したトラックに所定長さの信号線を追加し(ステップS2107)、ステップS2102へ戻る。
【0099】
未選択のトラックがない場合(ステップS2102:No)、設計装置100は、電子ビーム露光か否かを判断する(ステップS2108)。電子ビーム露光の場合(ステップS2108:Yes)、設計装置100は、信号線が形成される領域wareaを一定間隔で区切った複数の第3領域arを示す第4情報da4を生成する(ステップS2109)。この一定間隔のトラック方向における長さは、上述した一定間隔r1と同一である。
【0100】
設計装置100は、複数の第3領域arの各々について、CPパターンライブラリ1500から、第3領域arに含まれる信号線の形状に一致するCPパターンの識別情報を特定する(ステップS2110)。そして、設計装置100は、特定した識別情報と、第3領域arを示す領域情報と、を関連付けた第5情報da5を生成し(ステップS2111)、一連の処理を終了する。また、電子ビーム露光でない場合(ステップS2108:No)、一連の処理を終了する。
【0101】
図22は、ステンシルマスクの設計例を示す説明図である。ステンシルマスクは、複数のキャラクタ中の共通パターンを重畳しながら露光時に無関係な部分の露光を避けるようにキャラクタが配置されるように設計される。
【0102】
なお、本実施の形態で説明した設計方法は、予め用意された設計プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本設計プログラムは、磁気ディスク、光ディスク、USB(Universal Serial Bus)フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、設計プログラムは、インターネット等のネットワークNETを介して配布されてもよい。
【0103】
以上説明したように、設計装置100は、回路内の同一領域の端子同士を異なる配線路に割り当てることにより信号線の密集を防ぐことができる。さらに、設計装置100は、信号線が同一の端子同士を同一の配線路に割り当てることにより少ない配線路により信号線を形成することができる。これにより、配線パターンを簡単化することができる。したがって、配線パターンによって発生する不良を低減させることができる。また、配線パターンが簡単化されると、CP方式の金属層におけるCPパターンの種類数を低減させることができる。
【0104】
また、設計される回路は、隣り合う金属層間で方向が直交する複数の配線路を各々が有する第2金属層群がそれぞれビア層を介して積層される配線層であって、外部端子間の信号線を形成する配線層を含む。また、複数のグループの各々を異なるトラックに対応付けて、各グループに分類された外部端子に接続される信号線を、外部端子が分類されたグループに対応付けられたトラックに形成する。これにより、配線パターンが制限されるため、配線パターンを簡単化することができる。したがって、CP方式の金属層におけるCPパターンの種類数を低減させることができる。
【0105】
また、複数のグループの各々が、複数のトラックのうちの一定間隔に位置する複数のトラックに対応付けられている。これにより、ビアが対角位置に配置されるため、ビアの接続パターンが簡単化することができる。したがって、CP方式のビア層におけるCPパターンの種類数を低減させることができる。
【0106】
また、設計装置100は、セル層に形成される外部端子と配線層に形成される信号線と、の接続層に形成される結線を、外部端子が含まれる領域と領域における相対的な位置と外部端子が分類されたグループと、に基づきレイアウトする。これにより、外部端子が形成されるトラックと、外部端子が分類されたグループに対応付けられたトラックと、の位置関係が異なっていても、結線することができる。
【0107】
また、設計装置100は、CPパターンのサイズに区切られた第2領域ごとに、セル層に形成される外部端子と配線層に形成される信号線と、を接続するビア層のビアの位置を決定する。これにより、外部端子が形成されるトラックと、外部端子が分類されたグループに対応付けられたトラックと、の位置関係が異なっていても、結線することができる。
【0108】
また、設計装置100は、セル層に形成される外部端子と配線層に形成される信号線と、を接続する複数のビア層の各々のビアの位置を決定する。複数のビア層と、複数のビア層の間の金属層と、によって接続されるため、CPパターンの種類数を低減させることができる。
【0109】
また、設計装置100は、配線層に含まれる金属層が有するトラックに形成される信号線の長さが短い場合に、信号線を延ばし、当該トラックに形成される信号線がない場合に、ダミーの信号線を追加する。これにより、回路内において配線密度が均一化されるため、ばらつきの発生を低減させることができ、回路の動作不良の発生を抑制することができる。したがって、歩留まりを向上させることができる。各トラックを区切った複数のトラックの各々に形成される信号線の長さが2種類になるため、CP方式の金属層におけるCPパターンの種類数を低減させることができる。
【0110】
また、信号線が形成される領域を一定間隔で区切った複数の第3領域の各々について、第4領域に含まれる信号線の形状が一致するCPパターンを特定する。これにより、CPパターンを有効に利用することができる。
【0111】
本実施の形態にかかる設計方法によって設計されたレイアウトデータに基づいて製造された回路は、
図2に示したように、セル層Lclと、配線層Lwと、接続層Lcnと、を含む。さらに、回路は、
図9に示したように、外部端子間の信号線が複数のトラックのうちの2以上のトラックに跨って形成される部分を含む。そして、この2以上のトラックは、複数のトラックのうちの一定間隔に位置する複数のトラックである。これにより、隣り合う金属層間を接続するビアが対角位置に配置される。また、これにより、配線パターンが簡単化された回路であるため、配線パターンによって生じる不良が低減する。
【0112】
また、回路内の所定領域が所定単位で区切られた複数の領域に含まれるセルの外部端子同士が異なるトラックによって当該外部端子が接続される信号線が形成される。各領域において信号線が密集するのを防ぐことができる。
【0113】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0114】
(付記1)コンピュータが、
回路内の所定領域に設けられるセルと前記セルの位置を示すレイアウトデータに基づいて前記所定領域を所定単位で区切った複数の領域を示す第1情報を生成し、
前記セルの外部端子を示す端子情報と前記外部端子に接続される信号線を示すネット情報との組みを含むネットリストから、前記外部端子の各々について、前記外部端子に接続される信号線を示すネット情報を抽出し、
前記外部端子の各々について、前記レイアウトデータに基づいて、生成した前記第1情報が示す前記複数の領域のうちの前記外部端子が含まれる領域における前記外部端子の相対的な位置を特定し、
前記外部端子の各々について、前記外部端子が含まれる領域を示す領域情報と、特定した前記相対的な位置を示す位置情報と、抽出した前記ネット情報と、の組み合わせを含む第2情報を生成し、
前記外部端子の各々を、生成した前記第2情報に含まれる前記領域情報が示す領域が同一の外部端子同士が異なるグループに分類され、生成した前記第2情報に含まれる前記ネット情報が示す信号線が同一の外部端子同士が同一のグループに分類されるように、複数のグループのうちのいずれかに分類する、
処理を実行することを特徴とする設計方法。
【0115】
(付記2)前記回路は、
第1金属層群がそれぞれビア層を介して積層される第1層群であって、前記所定領域内に設けられる前記セル内の信号線と、前記外部端子と、を形成する第1層群と、
前記第1層群よりも上層であり、隣り合う金属層間で方向が直交する複数の配線路を各々が有する第2金属層群がそれぞれビア層を介して積層される第2層群であって、前記外部端子間の信号線を形成する第2層群と、
前記第1層群と前記第2層群との間に設けられる第3層であって、前記第1層群によって形成される前記外部端子と、前記第2層群によって形成される前記外部端子間を接続する信号線と、の結線を形成する第3層と、
を含むことを特徴とする付記1に記載の設計方法。
【0116】
(付記3)前記コンピュータが、
前記複数のグループの各々が、前記第2金属層群の各々の金属層について、前記金属層の前記複数の配線路のうちの少なくとも1つの配線路に対応付けられ、異なるグループ同士が異なる配線路に対応付けられた対応情報を取得し、
前記複数のグループの各々について、取得した前記対応情報から、前記グループに対応付けられた配線路を特定し、
前記複数のグループの各々について、前記グループに分類された外部端子に対応する前記第2情報に含まれるネット情報が示す信号線と、特定した前記配線路において前記信号線を形成する位置と、を示す第2レイアウトデータを生成する、
処理を実行することを特徴とする付記2に記載の設計方法。
【0117】
(付記4)前記対応情報では、前記複数のグループの各々が、前記複数の配線路のうちの一定間隔に位置する複数の配線路に対応付けられていることを特徴とする付記3に記載の設計方法。
【0118】
(付記5)前記外部端子の各々は、前記第1金属層群の最上の金属層が有する複数の配線路のいずれかに形成され、
前記所定単位は、前記最上の金属層が有する複数の配線路の配線間隔に基づく単位であって、
前記コンピュータが、
前記外部端子の各々について、前記外部端子に対応する前記第2情報に含まれる領域情報が示す領域と、前記外部端子に対応する前記第2情報に含まれる位置情報と、によって、前記最上の金属層が有する複数の配線路のうちの前記外部端子が形成される配線路を特定し、
前記外部端子の各々について、特定した前記配線路と、生成した前記第2レイアウトデータに含まれる前記配線路において前記信号線を形成する位置と、に基づいて、前記外部端子が分類されたグループに対応付けられた配線路に形成される前記外部端子に接続される信号線と、前記外部端子と、の前記第3層による結線と、前記結線の位置と、を示す第3レイアウトデータを生成する、
処理を実行することを特徴とする付記3または4に記載の設計方法。
【0119】
(付記6)前記外部端子の各々は、前記第1金属層群の最上の金属層が有する複数の配線路のいずれかに形成され、
前記所定単位は、前記最上の金属層が有する複数の配線路の配線間隔に基づく単位であって、
前記第3層は、前記最上の金属層と前記第2金属層群の最下の金属層との間に設けられるビア層であって、前記最上の金属層によって形成される前記外部端子と、前記第2層群によって形成される前記外部端子間を接続する信号線と、を前記ビア層によって接続し、
前記コンピュータが、
前記外部端子の各々について、前記外部端子に対応する前記第2情報に含まれる領域情報が示す領域と、前記外部端子に対応する前記第2情報に含まれる位置情報と、によって、前記最上の金属層が有する前記複数の配線路のうちの前記外部端子が形成される配線路を特定し、
前記最上の金属層が有する前記複数の配線路のうちの前記一定間隔に含まれる配線路の数に基づく所定サイズで前記所定領域を区切った複数の第2領域を示す第3情報を生成し、
生成した前記第3情報が示す前記複数の第2領域の各々について、前記ビア層のビアの位置を、前記第2領域に含まれる外部端子について特定した前記配線路と、前記外部端子が分類されたグループに対応付けられた前記最下の金属層が有する配線路と、の位置関係に基づいて決定する、
処理を実行することを特徴とする付記4に記載の設計方法。
【0120】
(付記7)前記第3層は、前記最上の金属層と前記第2金属層群の最下の金属層との間に設けられる複数のビア層と、前記複数のビア層の間に積層される金属層と、を含み、前記最上の金属層によって形成される前記外部端子と、前記第2層群によって形成される前記外部端子間を接続する信号線と、を前記第3層に含まれる金属層が有する複数の配線路に形成される信号線を介して前記複数のビア層によって接続し、
前記ビア層のビアの位置を決定する処理では、
生成した前記第3情報が示す前記複数の第2領域の各々について、前記複数のビア層の各々のビアの位置を、前記第2領域に含まれる外部端子について特定した前記配線路と、前記外部端子が分類されたグループに対応付けられた前記最下の金属層が有する配線路と、の位置関係に基づいて決定することを特徴とする付記6に記載の設計方法。
【0121】
(付記8)前記コンピュータが、
前記グループの各々について生成した前記第2レイアウトデータが統合された第4レイアウトデータを生成し、
前記第2金属層群の各々が有する複数の配線路の各々を一定間隔で区切った配線路を順に選択し、
前記配線路が選択される都度、選択した前記配線路に形成される信号線があるか否かを生成した前記第4レイアウトデータに基づいて判断し、
選択した前記配線路に形成される信号線がないと判断した場合、選択した前記配線路に形成させる前記一定間隔よりも短い所定長さの信号線と、前記信号線の位置と、を示す情報を前記第4レイアウトデータに追加し、
選択した前記配線路に形成される信号線があると判断した場合、選択した前記配線路に形成される信号線の長さが前記一定間隔と同一長さであるか否かを判断し、
同一長さであると判断した場合、前記第4レイアウトデータ内の選択した前記配線路に形成される信号線を前記所定長さの信号線に変換する、
処理を実行することを特徴とする付記3〜7のいずれか一つに記載の設計方法。
【0122】
(付記9)前記コンピュータが、
前記グループの各々について生成した前記第2レイアウトデータが統合された第4レイアウトデータを生成し、
生成した前記第4レイアウトデータが示す信号線が形成される領域を一定間隔で区切った複数の第3領域を示す第4情報を生成し、
前記第2金属層群の各々の金属層について、各々に識別情報が付され、前記金属層によって形成される信号線の複数のレイアウトデータを記憶する記憶装置から、生成した前記第4情報が示す前記複数の第3領域の各々について、前記第3領域に含まれる信号線の形状に一致するレイアウトデータの識別情報を特定し、
前記複数の第3領域の各々について、前記第3領域を示す領域情報と、特定した識別情報と、が関連付けられた第5情報を生成する、
処理を実行することを特徴とする付記3〜8のいずれか一つに記載の設計方法。
【0123】
(付記10)コンピュータに、
回路内の所定領域に設けられるセルと前記セルの位置を示すレイアウトデータに基づいて前記所定領域を所定単位で区切った複数の領域を示す第1情報を生成し、
前記セルの外部端子を示す端子情報と前記外部端子に接続される信号線を示すネット情報との組みを含むネットリストから、前記外部端子の各々について、前記外部端子に接続される信号線を示すネット情報を抽出し、
前記外部端子の各々について、前記レイアウトデータに基づいて、生成した前記第1情報が示す前記複数の領域のうちの前記外部端子が含まれる領域における前記外部端子の相対的な位置を特定し、
前記外部端子の各々について、前記外部端子が含まれる領域を示す領域情報と、特定した前記相対的な位置を示す位置情報と、抽出した前記ネット情報と、の組み合わせを含む第2情報を生成し、
前記外部端子の各々を、生成した前記第2情報に含まれる前記領域情報が示す領域が同一の外部端子同士が異なるグループに分類され、生成した前記第2情報に含まれる前記ネット情報が示す信号線が同一の外部端子同士が同一のグループに分類されるように、複数のグループのうちのいずれかに分類する、
処理を実行させることを特徴とする設計プログラム。
【0124】
(付記11)回路内の所定領域に設けられるセルと前記セルの位置を示すレイアウトデータに基づいて前記所定領域を所定単位で区切った複数の領域を示す第1情報を生成し、
前記セルの外部端子を示す端子情報と前記外部端子に接続される信号線を示すネット情報との組みを含むネットリストから、前記外部端子の各々について、前記外部端子に接続される信号線を示すネット情報を抽出し、
前記外部端子の各々について、前記レイアウトデータに基づいて、生成した前記第1情報が示す前記複数の領域のうちの前記外部端子が含まれる領域における前記外部端子の相対的な位置を特定し、
前記外部端子の各々について、前記外部端子が含まれる領域を示す領域情報と、特定した前記相対的な位置を示す位置情報と、抽出した前記ネット情報と、の組み合わせを含む第2情報を生成し、
前記外部端子の各々を、生成した前記第2情報に含まれる前記領域情報が示す領域が同一の外部端子同士が異なるグループに分類され、生成した前記第2情報に含まれる前記ネット情報が示す信号線が同一の外部端子同士が同一のグループに分類されるように、複数のグループのうちのいずれかに分類する、
処理をコンピュータに実行させる設計プログラムを記録したことを特徴とする記録媒体。
【0125】
(付記12)第1金属層群がそれぞれビア層を介して積層される第1層群であって、所定領域内に設けられるセル内の信号線と、前記セルの外部端子と、を形成する第1層群と、
前記第1層群よりも上層であり、隣り合う金属層間で方向が直交する複数の配線路を各々が有する第2金属層群がそれぞれビア層を介して積層される第2層群であって、前記外部端子間の信号線を形成する第2層群と、
前記第1層群と前記第2層群との間に設けられる第3層であって、前記第1層群によって形成される前記外部端子と、前記第2層群によって形成される前記外部端子間を接続する信号線と、の結線を形成する第3層と、
を含み、
前記外部端子間の信号線が前記複数の配線路のうちの2以上の配線路に跨って形成される部分を含み、前記2以上の配線路は、前記複数の配線路のうちの一定間隔に位置する複数の配線路であることを特徴とする回路。