JP2011107979A - Method, program, and device for designing layout of semiconductor integrated circuit, - Google Patents

Method, program, and device for designing layout of semiconductor integrated circuit, Download PDF

Info

Publication number
JP2011107979A
JP2011107979A JP2009262206A JP2009262206A JP2011107979A JP 2011107979 A JP2011107979 A JP 2011107979A JP 2009262206 A JP2009262206 A JP 2009262206A JP 2009262206 A JP2009262206 A JP 2009262206A JP 2011107979 A JP2011107979 A JP 2011107979A
Authority
JP
Japan
Prior art keywords
primitive
coordinate
primitive cell
cell
cells
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.)
Withdrawn
Application number
JP2009262206A
Other languages
Japanese (ja)
Inventor
Kyoji Hamano
恭次 濱野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009262206A priority Critical patent/JP2011107979A/en
Publication of JP2011107979A publication Critical patent/JP2011107979A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide the layout design method of a semiconductor integrated circuit in which a chip size can be reduced, a program and a layout design device. <P>SOLUTION: The layout design method of a semiconductor integrated circuit includes: a process (step B1) for determining whether there exist primitive cells having metal data in a Y direction in a chip; a process (step B3) for determining whether the primitive cells are vertically adjacent; a process (step B4) for determining whether layers having the metal data in the Y direction in the respective primitive cells are the same; a process (step B5) for determining whether there exist primitive cells having movable spaces among the respective primitive cells; a process (step B6) for determining whether the types of the primitive cells are the same when those determinations are satisfied; a process (step B7, 8) for performing the layout position adjustment of the X coordinates of the primitive cells according to the types of the respective primitive cells: and a process (step B9) for fixing the positions of the primitive cells. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、半導体集積回路のレイアウト設計方法、プログラム、及びレイアウト設計装置に関し、特に、プリミティブセルを用いてレイアウト設計を行う半導体集積回路のレイアウト設計方法、プログラム、及びレイアウト設計装置に関する。   The present invention relates to a layout design method, a program, and a layout design apparatus for a semiconductor integrated circuit, and more particularly to a layout design method, a program, and a layout design apparatus for a semiconductor integrated circuit that perform layout design using primitive cells.

従来、半導体集積回路のレイアウト設計方法において、予めトランジスタ素子の形成を済ませたマスタースライス上にセルを任意に配置し配線を行うマスタースライス方式の半導体集積回路のレイアウト設計方法がある。例えば、特許文献1(従来例)では、マスタースライス方式において、配線長を短縮すると共に、多い配線でも未配線を防止し、配線作業の効率化を図ることを目的として、半導体集積回路でチップ設計時に、配線グリッドを通って論理機能セルのフィールドスルートラックを一直線に通過する配線によって端子間を接続したマスタースライス方式半導体集積回路装置が開示されている。   2. Description of the Related Art Conventionally, as a semiconductor integrated circuit layout design method, there is a master slice type semiconductor integrated circuit layout design method in which cells are arbitrarily arranged and wired on a master slice in which transistor elements are formed in advance. For example, in Patent Document 1 (conventional example), in the master slice method, the chip length is designed with a semiconductor integrated circuit for the purpose of shortening the wiring length, preventing unwiring even with many wirings, and improving the efficiency of wiring work. At times, a master slice type semiconductor integrated circuit device is disclosed in which terminals are connected by wiring that passes through a field grid of logic function cells in a straight line through a wiring grid.

図10を参照すると、従来例に係るマスタースライス方式半導体集積回路装置において、論理機能セル4上の端子4aは、配線グリッド15、26及び18を通る配線31によって論理機能セル7上の端子7aと接続されている。また、論理機能セル4上の端子4bは、配線グリッド16、25、17、30及び15を順に通って論理機能セル6及び8のフィードスルートラック12を一直線に通過する配線32によって論理機能セル10上の端子10aと接続されている。同様にして、論理機能セル5上の端子5aは配線グリッド21、25、20、29及び18を順に通って論理機能セル7と8のフィードスルートラック12を一直線に通過する配線34によって論理機能セル10上の端子10bと接続されている。加えて、論理機能セル4上の端子4cも、配線グリッド19、26、23、30及び19を順に通って論理機能セル7及び9のフィードスルートラック12を一直線に通過する配線33によって論理機能セル10上の端子10cと接続されている。また、論理機能セル6上の端子6aも、配線グリッド15、27及び19を順に通って論理機能セル8上の端子8aと接続されている。ここに、各基本セル内3のフィードスルートラック12の位置が各論理機能セル4〜11で共通となっているので、各論理機能セル4〜11のフィードスルートラック12が一直線に並ぶ。このことにより、フィードスルートラック12を通る配線が一直線となるので、使用する配線グリッドの数が低減されるとともに、配線長も短く未配線が起り難いマスタースライス方式の半導体集積回路装置が実現できるとされている。   Referring to FIG. 10, in the master slice semiconductor integrated circuit device according to the conventional example, the terminal 4a on the logic function cell 4 is connected to the terminal 7a on the logic function cell 7 by the wiring 31 passing through the wiring grids 15, 26 and 18. It is connected. Further, the terminal 4b on the logic function cell 4 is connected to the logic function cell 10 by the wiring 32 that passes through the feed grids 16, 25, 17, 30 and 15 in order and passes straight through the feedthrough tracks 12 of the logic function cells 6 and 8. It is connected to the upper terminal 10a. Similarly, the terminal 5a on the logic function cell 5 is connected to the logic function cell by the wiring 34 which passes through the wiring grids 21, 25, 20, 29 and 18 in order and passes straight through the feedthrough tracks 12 of the logic function cells 7 and 8. 10 is connected to a terminal 10b on the board. In addition, the terminal 4c on the logic function cell 4 is also connected to the logic function cell by the wiring 33 which passes through the wiring grids 19, 26, 23, 30 and 19 in order and passes straight through the feedthrough tracks 12 of the logic function cells 7 and 9. 10 is connected to a terminal 10c on the board. The terminal 6a on the logic function cell 6 is also connected to the terminal 8a on the logic function cell 8 through the wiring grids 15, 27 and 19 in this order. Here, since the position of the feedthrough track 12 in each basic cell 3 is common to each logic function cell 4-11, the feedthrough track 12 of each logic function cell 4-11 is aligned in a straight line. As a result, the wiring passing through the feedthrough track 12 is in a straight line, so that the number of wiring grids to be used is reduced, and a master-sliced semiconductor integrated circuit device in which the wiring length is short and unwiring is unlikely to be realized can be realized. Has been.

なお、上記従来例では、フィードスルートラック12の位置を基本セル36の右端としたが、各論理機能セル4〜11で共通であれば基本セル36内のフィードスルートラック12の位置は任意でよい。また、上記従来例では、基本セル36の単位を3グリッド当てとし、その1グリッド分をフィードスルートラックとしたが、基本セルの単位をn(n≧2、nは整数)グリッド分とし、その中の1グリッド分をフィードスルートラックとしても上記と同様の効果が得られるとされている。さらに、上記従来例では、全ての論理機能セル4〜11においてフィードスルートラック12の位置を共通としたが、必ずしも全ての論理機能セル4〜11で共通である必要はなく、使用頻度の高い論理機能セルに対して共通にする等の例においても同様の効果が得られるとされている。   In the above conventional example, the position of the feedthrough track 12 is the right end of the basic cell 36. However, the position of the feedthrough track 12 in the basic cell 36 may be arbitrary as long as it is common to the logic function cells 4 to 11. . Further, in the above conventional example, the unit of the basic cell 36 is assumed to be 3 grids, and one grid portion is used as a feedthrough track. However, the basic cell unit is set to n (n ≧ 2, n is an integer) grid portion, It is said that the same effect as described above can be obtained even if one grid portion is used as a feedthrough track. Further, in the above conventional example, the position of the feedthrough track 12 is common to all the logic function cells 4 to 11. However, it is not necessarily common to all the logic function cells 4 to 11, and the logic that is frequently used is not necessarily used. It is said that the same effect can be obtained in an example in which the function cell is shared.

特開平4−214667号公報(図1、段落0013〜0016)JP-A-4-214667 (FIG. 1, paragraphs 0013 to 0016)

上記特許文献1の開示事項は、本書に引用をもって繰り込み記載されているものとする。以下の分析は、本発明によって与えられたものである。   The disclosure of Patent Document 1 is incorporated herein by reference. The following analysis is given by the present invention.

ところで、半導体集積回路のレイアウト設計の分野において、チップサイズ縮小のためには、プリミティブセル(インバーター、NANDゲートなどの論理ゲートをCAD(Computer Assisted Drafting)ツールで扱えるようにしたもの)を最小サイズで設計する必要がある。ところが、プロセスの微細化に伴い、ロジックでもソフトエラーが問題となり、ソフトエラーを回避するための回路を搭載することにより、プリミティブセルの回路規模が増大するようになった。回路規模が増大したプリミティブセルをレイアウトする際に、使用する配線層が1メタルのみでは最小サイズでレイアウトを完結させることが難しくなり、2メタル以上の層のメタルも使用する必要がある。このようなプリミティブセルを使用してチップでのレイアウト設計を行う際に、プリミティブセル内の2メタル以上の層のメタルデータにより、チップ設計時に配線性が悪化する。この流れの中で、製品のコストダウンのため、チップ設計時にプリミティブセル内のメタルデータによる配線性の悪化を解消し、チップサイズを縮小することの要求が高まってきた。   By the way, in the field of semiconductor integrated circuit layout design, in order to reduce the chip size, primitive cells (in which logic gates such as inverters and NAND gates can be handled by CAD (Computer Assisted Drafting) tools) are minimized. Need to design. However, with the miniaturization of the process, the soft error becomes a problem in the logic, and the circuit size of the primitive cell is increased by mounting a circuit for avoiding the soft error. When a primitive cell having an increased circuit scale is laid out, it is difficult to complete the layout with a minimum size if only one wiring layer is used, and it is necessary to use two or more metal layers. When performing layout design on a chip using such primitive cells, the wiring property deteriorates at the time of chip design due to metal data of two or more layers in the primitive cell. In this trend, in order to reduce the cost of products, there has been an increasing demand for reducing the chip size by eliminating the deterioration of the wiring property due to the metal data in the primitive cells at the time of chip design.

しかしながら、上記従来例では、基本セル内のフィードスルーの位置を各論理機能セルで共通にすることにより、各論理セルのフィードスルートラックを一直線に並べることができるが、チップサイズを縮小できないという問題がある。その理由としては、配線が通過するか否かに関わらず、基本セル内の1グリッド分をフィードスルートラックとして必ず確保する必要があるため、基本セルのサイズを最小にすることができないためである。   However, in the above conventional example, by making the feedthrough position in the basic cell common to each logic function cell, the feedthrough tracks of each logic cell can be aligned, but the chip size cannot be reduced. There is. The reason is that the size of the basic cell cannot be minimized because one grid in the basic cell must be secured as a feedthrough track regardless of whether or not the wiring passes. .

本発明の主な課題は、チップサイズを縮小可能な半導体集積回路のレイアウト設計方法、プログラム、及びレイアウト設計装置を提供することである。   A main object of the present invention is to provide a layout design method, a program, and a layout design apparatus for a semiconductor integrated circuit capable of reducing the chip size.

本発明の第1の視点においては、コンピュータを使用して半導体集積回路のレイアウト設計を行う半導体集積回路のレイアウト設計方法において、チップ内にY軸方向に延在するY方向メタルデータを持つプリミティブセルが存在するか判定する工程と、前記プリミティブセルが上下に隣接しているか判定する工程と、各前記プリミティブセル内の前記Y方向メタルデータを有する層が同じか判定する工程と、各前記プリミティブセルのうち移動可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルがあるか判定する工程と、前記各判定を満たす場合に、各前記プリミティブセルの種類が同じか否かを判定する工程と、各前記プリミティブセルの種類に応じて前記プリミティブセルのX座標の配置位置調整を行う工程と、前記配置位置調整を行った前記プリミティブセルの位置を固定する工程と、を含むことを特徴とする。   According to a first aspect of the present invention, in a semiconductor integrated circuit layout design method for designing a semiconductor integrated circuit layout using a computer, a primitive cell having Y-direction metal data extending in the Y-axis direction in a chip. Determining whether the primitive cells are vertically adjacent to each other, determining whether the layers having the Y-direction metal data in each of the primitive cells are the same, and each of the primitive cells And determining whether there is a primitive cell whose arrangement position is not fixed and whether the type of each primitive cell is the same when the above determinations are satisfied. And adjusting the arrangement position of the X coordinate of the primitive cell according to the type of each primitive cell Characterized in that it and a step of fixing the position of the primitive cells having undergone the position adjustment.

本発明の前記半導体集積回路のレイアウト設計方法において、前記プリミティブセルが上下に隣接しているか判定する工程では、上下の前記プリミティブセルで、上側のプリミティブセルのX座標が、下側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に、または、前記下側のプリミティブセルのX座標が、前記上側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に存在するかをチェックすることにより、前記プリミティブセルが上下に隣接しているかを判定することが好ましい。   In the layout design method for a semiconductor integrated circuit according to the present invention, in the step of determining whether the primitive cells are vertically adjacent, the X coordinate of the upper primitive cell of the upper and lower primitive cells is Check whether the X coordinate of the lower primitive cell is within the range of “X coordinate + primitive cell width” or the “X coordinate + primitive cell width” of the upper primitive cell. Accordingly, it is preferable to determine whether the primitive cells are adjacent to each other in the vertical direction.

本発明の前記半導体集積回路のレイアウト設計方法において、前記配置位置調整を行う工程では、上下の前記プリミティブセルの種類が同じである場合に上下の前記プリミティブセルのX座標を同じにし、上下の前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定することが好ましい。   In the layout design method of the semiconductor integrated circuit according to the present invention, in the step of adjusting the arrangement position, when the types of the upper and lower primitive cells are the same, the X coordinates of the upper and lower primitive cells are made the same, When the types of primitive cells are different, it is preferable to determine the X coordinate of the upper and lower primitive cells to a desired value.

本発明の前記半導体集積回路のレイアウト設計方法において、上下に隣接する前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定する際、始点として前記上側のプリミティブセル内の左端のY方向メタルデータの位置と、前記下側のプリミティブセル内の右端のY方向メタルデータの位置と、を合わせる位置を決め、終点として前記上側のプリミティブセル内の右端のY方向メタルデータの位置と、前記下側のプリミティブセル内の左端のY方向メタルデータの位置と、を合わせる位置を決める工程と、前記始点から前記終点まで前記下側のプリミティブセルを配線グリッド数分移動する工程と、前記上下に隣接する前記プリミティブセル内の同一層においてY方向メタルデータのX座標の一致個数をカウントする工程と、カウントした前記一致個数と記憶した一致個数とを比較する工程と、カウントした前記一致個数が記憶した一致個数より大きい場合に記憶した一致個数とX座標をクリアする工程と、カウントした前記一致個数が記憶した一致個数と等しい場合、又は、記憶した一致個数とX座標をクリアした後に、前記一致個数、及び前記下側のプリミティブセルのX座標を記憶する工程と、前記プリミティブセル内のY方向メタルデータを有する層の数が2以上である場合、Y方向メタルデータの一致個数が大きい方の層に関して記憶した一致個数、及び前記下側のプリミティブセルのX座標を選択する工程と、記憶した一致個数と前記下側のプリミティブセルのX座標は1つかを判定する工程と、記憶した一致個数と前記下側のプリミティブセルのX座標は1つである場合に、記憶したX座標を使用する工程と、記憶した一致個数と前記下側のプリミティブセルのX座標が複数ある場合に、上下の前記プリミティブセルのX座標の差が最小となる座標を選択する工程と、を含むことが好ましい。   In the method of designing a layout of a semiconductor integrated circuit according to the present invention, when the X coordinate of the upper and lower primitive cells is determined as a desired value when the types of the adjacent primitive cells are different from each other, the upper primitive cell is used as a starting point. The position of the leftmost Y-direction metal data in the lower primitive cell and the position of the rightmost Y-direction metal data in the lower primitive cell are determined, and the rightmost Y-direction metal in the upper primitive cell is determined as the end point. A step of determining a position where the data position is matched with the position of the left end Y-direction metal data in the lower primitive cell, and the lower primitive cell is moved from the start point to the end point by the number of wiring grids. And the X coordinate of the Y direction metal data in the same layer in the primitive cell adjacent above and below A step of counting the number, a step of comparing the counted number of matches with the stored number of matches, and a step of clearing the stored number of matches and the X coordinate when the counted number of matches is larger than the stored number of matches. Storing the coincidence number and the X coordinate of the lower primitive cell after the counted coincidence number is equal to the stored coincidence number, or after clearing the stored coincidence number and the X coordinate; If the number of layers with Y-direction metal data in the primitive cell is 2 or more, select the number of matches stored for the layer with the larger number of Y-direction metal data matches and the X coordinate of the lower primitive cell. A step of determining whether the stored coincidence number and the X coordinate of the lower primitive cell are one, the stored coincidence number and the When the side primitive cell has one X coordinate, the process of using the stored X coordinate, and when there are a plurality of stored coincidence numbers and the X coordinates of the lower primitive cell, the upper and lower primitive cells And selecting a coordinate that minimizes the difference in X coordinates.

本発明の第2の視点において、半導体集積回路のレイアウト設計をコンピュータに実行させるプログラムにおいて、前記半導体集積回路のレイアウト設計方法の各工程をコンピュータに実行させることを特徴とする。   According to a second aspect of the present invention, a program for causing a computer to execute a layout design of a semiconductor integrated circuit causes the computer to execute each step of the layout design method for the semiconductor integrated circuit.

本発明の第3の視点において、半導体集積回路のレイアウト設計を行う半導体集積回路のレイアウト設計装置において、チップ内にY軸方向に延在するY方向メタルデータを持つプリミティブセルが存在するか判定する手段と、前記プリミティブセルが上下に隣接しているか判定する手段と、各前記プリミティブセル内の前記Y方向メタルデータを有する層が同じか判定する手段と、各前記プリミティブセルのうち移動可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルがあるか判定する手段と、前記各判定を満たす場合に、各前記プリミティブセルの種類が同じか否かを判定する手段と、各前記プリミティブセルの種類に応じて前記プリミティブセルのX座標の配置位置調整を行う手段と、前記配置位置調整を行った前記プリミティブセルの位置を固定する手段と、を備えることを特徴とする。   In a third aspect of the present invention, in a semiconductor integrated circuit layout design apparatus for designing a layout of a semiconductor integrated circuit, it is determined whether a primitive cell having Y-direction metal data extending in the Y-axis direction exists in the chip. Means for determining whether the primitive cells are vertically adjacent to each other, means for determining whether the layers having the Y-direction metal data in the primitive cells are the same, and a movable space among the primitive cells Means for determining whether there is a primitive cell whose placement position is not fixed, means for determining whether the types of the primitive cells are the same when the determinations are satisfied, and the primitives Means for adjusting the arrangement position of the X coordinate of the primitive cell according to the type of the cell; It means for fixing the position of the primitive cell was, characterized in that it comprises a.

本発明の前記半導体集積回路のレイアウト設計装置において、前記プリミティブセルが上下に隣接しているか判定する手段は、上下の前記プリミティブセルで、上側のプリミティブセルのX座標が、下側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に、または、前記下側のプリミティブセルのX座標が、前記上側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に存在するかをチェックすることにより、前記プリミティブセルが上下に隣接しているかを判定することが好ましい。   In the layout design apparatus of the semiconductor integrated circuit according to the present invention, the means for determining whether the primitive cells are vertically adjacent is the upper and lower primitive cells, and the X coordinate of the upper primitive cell is the lower primitive cell. Check whether the X coordinate of the lower primitive cell is within the range of “X coordinate + primitive cell width” or the “X coordinate + primitive cell width” of the upper primitive cell. Accordingly, it is preferable to determine whether the primitive cells are adjacent to each other in the vertical direction.

本発明の前記半導体集積回路のレイアウト設計装置において、前記配置位置調整を行う手段は、上下の前記プリミティブセルの種類が同じである場合に上下の前記プリミティブセルのX座標を同じにし、上下の前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定することが好ましい。   In the layout design apparatus for a semiconductor integrated circuit according to the present invention, the means for adjusting the arrangement position is such that, when the types of the upper and lower primitive cells are the same, the upper and lower primitive cells have the same X coordinate, When the types of primitive cells are different, it is preferable to determine the X coordinate of the upper and lower primitive cells to a desired value.

本発明の前記半導体集積回路のレイアウト設計装置において、前記配置位置調整を行う手段は、上下に隣接する前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定する手段として、始点として前記上側のプリミティブセル内の左端のY方向メタルデータの位置と、前記下側のプリミティブセル内の右端のY方向メタルデータの位置と、を合わせる位置を決め、終点として前記上側のプリミティブセル内の右端のY方向メタルデータの位置と、前記下側のプリミティブセル内の左端のY方向メタルデータの位置と、を合わせる位置を決める手段と、前記始点から前記終点まで前記下側のプリミティブセルを配線グリッド数分移動する手段と、前記上下に隣接する前記プリミティブセル内の同一層においてY方向メタルデータのX座標の一致個数をカウントする手段と、カウントした前記一致個数と記憶した一致個数とを比較する手段と、カウントした前記一致個数が記憶した一致個数より大きい場合に記憶した一致個数とX座標をクリアする手段と、カウントした前記一致個数が記憶した一致個数と等しい場合、又は、記憶した一致個数とX座標をクリアした後に、前記一致個数、及び前記下側のプリミティブセルのX座標を記憶する手段と、前記プリミティブセル内のY方向メタルデータを有する層の数が2以上である場合、Y方向メタルデータの一致個数が大きい方の層に関して記憶した一致個数、及び前記下側のプリミティブセルのX座標を選択する手段と、記憶した一致個数と前記下側のプリミティブセルのX座標は1つかを判定する手段と、記憶した一致個数と前記下側のプリミティブセルのX座標は1つである場合に、記憶したX座標を使用する手段と、記憶した一致個数と前記下側のプリミティブセルのX座標が複数ある場合に、上下の前記プリミティブセルのX座標の差が最小となる座標を選択する手段と、を備えることが好ましい。   In the semiconductor integrated circuit layout design apparatus of the present invention, the means for adjusting the arrangement position determines the X coordinate of the upper and lower primitive cells to a desired value when the types of the adjacent primitive cells are different. As a means, a position where the position of the left end Y-direction metal data in the upper primitive cell is matched with the position of the right end Y-direction metal data in the lower primitive cell is determined, and the upper end is determined as the end point. Means for determining a position for matching the position of the right end Y-direction metal data in the primitive cell and the position of the left end Y-direction metal data in the lower primitive cell, and the lower side from the start point to the end point Means for moving the number of primitive cells by the number of wiring grids, and the same layer in the primitive cell adjacent above and below Means for counting the number of coincidence of the X coordinate of the Y-direction metal data, means for comparing the counted number of coincidence with the stored number of coincidence, and stored when the counted number of coincidence is larger than the stored number of coincidence. Means for clearing the coincidence number and the X coordinate, and if the counted coincidence number is equal to the stored coincidence number, or after clearing the stored coincidence number and the X coordinate, the coincidence number and the lower primitive Means for storing the X-coordinate of the cell, and if the number of layers having Y-direction metal data in the primitive cell is two or more, the number of matches stored for the layer having the larger number of matches in the Y-direction metal data, and Means for selecting the X coordinate of the lower primitive cell, and the stored number of matches and the X coordinate of the lower primitive cell are one. And means for using the stored X coordinate when the stored coincidence number and the X coordinate of the lower primitive cell are one; the stored match number and the X of the lower primitive cell; In the case where there are a plurality of coordinates, it is preferable to include means for selecting a coordinate that minimizes the difference between the X coordinates of the upper and lower primitive cells.

本発明によれば、半導体集積回路のレイアウト時にプリミティブセル内の2メタル以上のY方向配線層メタルデータの位置およびプリミティブセルの種類を考慮してプリミティブセルのX座標を決定し、プリミティブセル内にフィードスルートラック用のグリッドを確保することなく最小サイズで設計したプリミティブセルを使用し、チップレイアウト時に配線がプリミティブセル上を一直線に通過することができ、配線の折れ曲がりが減ることで配線性が向上し、チップサイズを縮小することができる。   According to the present invention, the X coordinate of a primitive cell is determined in consideration of the position of two or more metal Y-direction wiring layer metal data in the primitive cell and the type of primitive cell during the layout of the semiconductor integrated circuit. Using primitive cells designed with the minimum size without securing a grid for feedthrough tracks, wiring can pass straight through the primitive cells during chip layout, reducing wiring bending and improving wiring performance In addition, the chip size can be reduced.

本発明の実施例1に係る半導体集積回路のレイアウト設計方法を実施するためのシステムの構成を模式的に示した図である。1 is a diagram schematically showing the configuration of a system for carrying out a method for designing a layout of a semiconductor integrated circuit according to Embodiment 1 of the present invention. 本発明の実施例1に係る半導体集積回路のレイアウト設計方法の全体の流れを概略的に示したフローチャートである。1 is a flowchart schematically showing an overall flow of a layout design method for a semiconductor integrated circuit according to a first embodiment of the present invention. 本発明の実施例1に係る半導体集積回路のレイアウト設計方法における図2のステップA3を詳細に示したフローチャートである。3 is a flowchart showing in detail step A3 of FIG. 2 in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention. 本発明の実施例1に係る半導体集積回路のレイアウト設計方法における図3のステップB8を詳細に示したフローチャートである。4 is a flowchart showing in detail step B8 of FIG. 3 in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention; 本発明の実施例1に係る半導体集積回路のレイアウト設計方法における同種類のプリミティブセルを配置位置調整する場合の工程ごとのレイアウト図である。FIG. 5 is a layout diagram for each step when adjusting the arrangement position of the same kind of primitive cells in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention; 本発明の実施例1に係る半導体集積回路のレイアウト設計方法における異なる種類のプリミティブセルを配置位置調整する場合の工程ごとのレイアウト図である。FIG. 6 is a layout diagram for each step when adjusting the arrangement position of different types of primitive cells in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention; 2メタル以上のY方向メタルデータを持つプリミティブセルの例である。It is an example of a primitive cell having Y direction metal data of two metals or more. 図7のプリミティブセルを使用してチップレイアウトをした場合に本発明の実施例1に係る半導体集積回路のレイアウト設計方法の配置位置調整を実施する前の例である。FIG. 8 is an example before the arrangement position adjustment of the layout design method of the semiconductor integrated circuit according to the first embodiment of the present invention when the chip layout is performed using the primitive cells of FIG. 図7のプリミティブセルを使用してチップレイアウトをした場合に本発明の実施例1に係る半導体集積回路のレイアウト設計方法の配置位置調整を実施した後の例である。FIG. 8 is an example after the arrangement position adjustment of the layout design method of the semiconductor integrated circuit according to the first embodiment of the present invention is performed when the chip layout is performed using the primitive cell of FIG. 7. 従来例に係るマスタースライス方式半導体集積回路装置の配線構成を示した図である。It is the figure which showed the wiring structure of the master slice type semiconductor integrated circuit device which concerns on a prior art example.

本発明の実施形態に係る半導体集積回路のレイアウト設計方法では、チップ内にY軸方向に延在するY方向メタルデータを持つプリミティブセルが存在するか判定する工程(図3のステップB1)と、前記プリミティブセルが上下に隣接しているか判定する工程(図3のステップB3)と、各前記プリミティブセル内の前記Y方向メタルデータを有する層が同じか判定する工程(図3のステップB4)と、各前記プリミティブセルのうち移動可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルがあるか判定する工程(図3のステップB5)と、前記各判定を満たす場合に、各前記プリミティブセルの種類が同じか否かを判定する工程(図3のステップB6)と、各前記プリミティブセルの種類に応じて前記プリミティブセルのX座標の配置位置調整を行う工程(図3のステップB7、8)と、前記配置位置調整を行った前記プリミティブセルの位置を固定する工程(図3のステップB9)と、を含む。なお、前記半導体集積回路のレイアウト設計方法の各工程は、コンピュータ(半導体集積回路のレイアウト設計装置)においてプログラムを実行させることで行われる。   In the semiconductor integrated circuit layout design method according to the embodiment of the present invention, a step of determining whether or not a primitive cell having Y-direction metal data extending in the Y-axis direction exists in the chip (step B1 in FIG. 3); Determining whether the primitive cells are vertically adjacent (step B3 in FIG. 3), determining whether the layers having the Y-direction metal data in each of the primitive cells are the same (step B4 in FIG. 3), , A step of determining whether there is a moveable space among the primitive cells and there is a primitive cell whose placement position is not fixed (step B5 in FIG. 3), A step of determining whether or not the primitive cell types are the same (step B6 in FIG. 3), and the primitive according to the type of each primitive cell. Includes a step of performing position adjustment of the X-coordinate of Buseru (Step B7,8 in FIG. 3), and a step of fixing the position of the primitive cells having undergone the position adjustment (step in FIG. 3 B9), the. Each step of the semiconductor integrated circuit layout design method is performed by causing a computer (semiconductor integrated circuit layout design apparatus) to execute a program.

本発明の実施例1に係る半導体集積回路のレイアウト設計方法について図面を用いて説明する。図1は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法を実施するためのシステムの構成を模式的に示した図である。   A layout design method for a semiconductor integrated circuit according to a first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram schematically showing the configuration of a system for carrying out a layout design method for a semiconductor integrated circuit according to Embodiment 1 of the present invention.

図1を参照すると、実施例1に係る半導体集積回路のレイアウト設計方法を実施するためのシステムは、コンピュータ装置101と、サーバ102と、ネットワーク103と、を有する。   Referring to FIG. 1, the system for implementing the semiconductor integrated circuit layout design method according to the first embodiment includes a computer device 101, a server 102, and a network 103.

コンピュータ装置101は、エンジニアリングワークステーションなどのコンピュータ機能を有する装置であり、半導体集積回路のレイアウト設計装置である。コンピュータ装置101は、ネットワーク103を介してサーバ102と通信可能に接続されている。コンピュータ装置101は、サーバ102に対して要求した情報を受信(ダウンロード)することにより、受信した情報をローカルなハードディスクあるいはメモリなどにストアし、ユーザの操作又は自動設計機能に応じて半導体集積回路のレイアウト設計を行う。コンピュータ装置101の動作の詳細は、後述する。   The computer device 101 is a device having a computer function such as an engineering workstation, and is a layout design device for a semiconductor integrated circuit. The computer device 101 is communicably connected to the server 102 via the network 103. The computer apparatus 101 receives (downloads) the requested information from the server 102, stores the received information in a local hard disk or memory, etc., and the semiconductor integrated circuit of the semiconductor integrated circuit according to a user operation or an automatic design function. Perform layout design. Details of the operation of the computer apparatus 101 will be described later.

サーバ102は、コンピュータ装置101の要求(リクエスト)に応じて、記憶部102aに記憶されたプログラム、データベース等の情報を提供するシステムである。サーバ102は、ネットワーク103を介してコンピュータ装置101と通信可能に接続されている。サーバ102は、記憶部102aにおいて、実行プログラム、レイアウトデータ、レイアウトライブラリ、CAD設計ツール等の情報を記憶している。サーバ102は、コンピュータ装置101から要求された情報を、ネットワーク103を介してコンピュータ装置101に向けて送信する。ここで、レイアウトデータは、半導体集積回路のレイアウトに係るデータである。レイアウトライブラリは、汎用性の高い半導体集積回路のレイアウトに係るデータ群である。CAD設計ツールは、CAD設計の際に用いる回路エディタやレイアウトエディタ等の編集用ソフトウェアである。   The server 102 is a system that provides information such as a program and a database stored in the storage unit 102 a in response to a request from the computer apparatus 101. The server 102 is communicably connected to the computer apparatus 101 via the network 103. The server 102 stores information such as an execution program, layout data, a layout library, and a CAD design tool in the storage unit 102a. The server 102 transmits information requested from the computer apparatus 101 to the computer apparatus 101 via the network 103. Here, the layout data is data relating to the layout of the semiconductor integrated circuit. The layout library is a data group related to the layout of a highly versatile semiconductor integrated circuit. The CAD design tool is editing software such as a circuit editor and a layout editor used for CAD design.

ネットワーク103は、インターネットなどの情報通信網であり、コンピュータ装置101とサーバ102との間の通信を仲介する。   The network 103 is an information communication network such as the Internet, and mediates communication between the computer apparatus 101 and the server 102.

次に、本発明の実施例1に係る半導体集積回路のレイアウト設計方法について図面を用いて説明する。図2は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法の全体の流れを概略的に示したフローチャートである。なお、図2のフローチャートは、サーバ(図1の102)から半導体集積回路のレイアウト設計に必要な実行プログラム等をダウンロードしたコンピュータ装置(図1の101)で実行される動作に相当する。   Next, a layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention will be described with reference to the drawings. FIG. 2 is a flowchart schematically showing the overall flow of the layout design method of the semiconductor integrated circuit according to the first embodiment of the present invention. The flowchart in FIG. 2 corresponds to an operation executed by the computer apparatus (101 in FIG. 1) that has downloaded an execution program or the like necessary for the layout design of the semiconductor integrated circuit from the server (102 in FIG. 1).

まず、半導体集積回路のレイアウト設計にあたって、コンピュータ装置(図1の101)は、ユーザの操作に応じて、マクロ(既に設計された回路部分を機能ごとにブロック化したもの)の配置や電源配線などのフロアプラン(配置計画)を行う(ステップA1)。次に、コンピュータ装置(図1の101)は、プリミティブセル(論理ゲートをCADツールで扱えるようにしたもの)を自動配置ツールで配置する(ステップA2)。   First, when designing the layout of a semiconductor integrated circuit, the computer apparatus (101 in FIG. 1) arranges macros (the circuit parts that have already been designed into blocks for each function), power supply wiring, etc., according to user operations. Floor plan (arrangement plan) is performed (step A1). Next, the computer apparatus (101 in FIG. 1) arranges primitive cells (logic gates that can be handled by a CAD tool) using an automatic arrangement tool (step A2).

次に、コンピュータ装置(図1の101)は、プリミティブセルの配置位置の調整を行う(ステップA3)。ここで、ステップA3の処理は、2メタル以上のY方向配線層のメタルデータ(以降、「Y方向メタルデータ」と称す)を持つプリミティブセルの配置位置をY方向メタルデータの位置に基ついて調整する処理である。ステップA3の詳細については、後述する。   Next, the computer apparatus (101 in FIG. 1) adjusts the arrangement position of the primitive cells (step A3). Here, the processing of step A3 adjusts the arrangement position of the primitive cell having the metal data (hereinafter referred to as “Y-direction metal data”) of the Y-direction wiring layer of two or more metals based on the position of the Y-direction metal data. It is processing to do. Details of step A3 will be described later.

次に、コンピュータ装置(図1の101)は、プリミティブセルの配置位置の調整で確定したプリミティブセルの配置結果を用いて、クロックのネットワークに対してバッファを介したツリー状の構造への変換(生成)するCTS(Clock Tree Synthesis)を行う(ステップA4)。次に、コンピュータ装置(図1の101)は、プリミティブセル間の接続に対して配線経路決めのための配線を行う(ステップA5)。最後に、コンピュータ装置(図1の101)は、レイアウト結果に対して、静的にタイミング解析を実施するSTA(Static Timing Analysis)を行う(ステップA6)。   Next, the computer device (101 in FIG. 1) converts the clock network into a tree-like structure via a buffer using the result of the primitive cell arrangement determined by adjusting the arrangement position of the primitive cell ( CTS (Clock Tree Synthesis) to be generated is performed (step A4). Next, the computer device (101 in FIG. 1) performs wiring for determining a wiring route for the connection between the primitive cells (step A5). Finally, the computer apparatus (101 in FIG. 1) performs STA (Static Timing Analysis) that statically performs timing analysis on the layout result (step A6).

次に、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における配置位置調整(図2のステップA3)の詳細なフローについて図面を用いて説明する。図3は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における図2のステップA3を詳細に示したフローチャートである。   Next, a detailed flow of arrangement position adjustment (step A3 in FIG. 2) in the semiconductor integrated circuit layout design method according to the first embodiment of the present invention will be described with reference to the drawings. FIG. 3 is a flowchart showing in detail step A3 in FIG. 2 in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention.

ステップA2(図2参照)の後、コンピュータ装置(図1の101)は、チップ内でY方向メタルデータを持つプリミティブセルが存在するか否かを判定する(ステップB1)。チップ内でY方向メタルデータを持つプリミティブセルが存在しない場合(ステップB1のNO)、配置位置調整する処理を終了し、ステップA4(図2参照)に進むことになる。   After step A2 (see FIG. 2), the computer apparatus (101 in FIG. 1) determines whether or not there is a primitive cell having Y-direction metal data in the chip (step B1). If there is no primitive cell having Y-direction metal data in the chip (NO in step B1), the process of adjusting the arrangement position is terminated, and the process proceeds to step A4 (see FIG. 2).

チップ内でY方向メタルデータを持つプリミティブセルが存在する場合(ステップB1のYES)、コンピュータ装置(図1の101)は、チップ内のY方向メタルデータを持つプリミティブセルに対して順に配置位置調整する処理をループで実行する(ステップB2)。ステップB2では、ステップB3〜ステップB9が行われる   When there is a primitive cell having Y-direction metal data in the chip (YES in step B1), the computer apparatus (101 in FIG. 1) adjusts the arrangement position in order with respect to the primitive cell having Y-direction metal data in the chip. The processing to be executed is executed in a loop (step B2). In step B2, steps B3 to B9 are performed.

ステップB2において、まず、コンピュータ装置(図1の101)は、上下のプリミティブセルで、上側のプリミティブセルのX座標が、下側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に、または、下側のプリミティブセルのX座標が、上側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に存在するか否かをチェックすることにより、プリミティブセルが上下に隣接しているか否かを判定する(ステップB3)。プリミティブセルが上下に隣接してしない場合(ステップB3のNO)、次のY方向メタルデータを持つプリミティブセルに対して配置位置調整する処理に移る。   In step B2, first, the computer apparatus (101 in FIG. 1) is the upper and lower primitive cells, and the X coordinate of the upper primitive cell is within the range of “X coordinate + primitive cell width” of the lower primitive cell. Or, whether or not the primitive cells are adjacent to each other by checking whether or not the X coordinate of the lower primitive cell is within the range of “X coordinate + primitive cell width” of the upper primitive cell. Is determined (step B3). If the primitive cells are not adjacent vertically (NO in step B3), the process proceeds to a process for adjusting the arrangement position for the next primitive cell having Y-direction metal data.

プリミティブセルが上下に隣接している場合(ステップB3のYES)、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセル内に同じ層のY方向メタルデータの層が存在するか否かを判定する(ステップB4)。上下に隣接するプリミティブセル内に同じ層のY方向メタルデータの層が存在しない場合(ステップB4のNO)、次のY方向メタルデータを持つプリミティブセルに対して配置位置調整する処理に移る。   If the primitive cells are adjacent vertically (YES in step B3), the computer apparatus (101 in FIG. 1) determines whether or not the same Y-direction metal data layer exists in the vertically adjacent primitive cells. Is determined (step B4). If the same Y-direction metal data layer does not exist in the vertically adjacent primitive cells (NO in step B4), the process proceeds to a process for adjusting the arrangement position of the next primitive cell having the Y-direction metal data.

上下に隣接するプリミティブセル内に同じ層のY方向メタルデータの層が存在する場合(ステップB4のYES)、コンピュータ装置(図1の101)は、プリミティブセルの移動が可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルであるか否かを判定する(ステップB5)。プリミティブセルが移動できない場合(ステップB5のNO)、次のY方向メタルデータを持つプリミティブセルに対して配置位置調整する処理に移る。   When the same Y-direction metal data layer exists in the vertically adjacent primitive cells (YES in step B4), the computer device (101 in FIG. 1) has a space in which the primitive cells can be moved, and Then, it is determined whether or not the arrangement cell is a primitive cell whose position is not fixed (step B5). If the primitive cell cannot be moved (NO in step B5), the process proceeds to a process of adjusting the arrangement position for the next primitive cell having Y-direction metal data.

プリミティブセルが移動可能である場合(ステップB5のYES)、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセルの種類を判定する(ステップB6)。   If the primitive cell is movable (YES in step B5), the computer device (101 in FIG. 1) determines the type of the primitive cell adjacent vertically (step B6).

上下に隣接するプリミティブセルが同じ種類の場合(ステップB6のYES)、コンピュータ装置(図1の101)は、上下のプリミティブセルのX座標を一致させる処理を実行し(ステップB7)、その後、ステップB9に進む。   When the adjacent primitive cells are the same type (YES in step B6), the computer apparatus (101 in FIG. 1) executes a process of matching the X coordinates of the upper and lower primitive cells (step B7), and then the step Proceed to B9.

上下に隣接するプリミティブセルが異なる種類の場合(ステップB6のNO)、コンピュータ装置(図1の101)は、上下のプリミティブセルのX座標を決める処理を実行し(ステップB8)、その後、ステップB9に進む。   When the adjacent primitive cells are different types (NO in step B6), the computer apparatus (101 in FIG. 1) executes a process of determining the X coordinates of the upper and lower primitive cells (step B8), and then step B9. Proceed to

ステップB7又はステップB8の後、コンピュータ装置(図1の101)は、配置位置調整を行ったプリミティブセルの位置を固定する(ステップB9)。   After step B7 or step B8, the computer apparatus (101 in FIG. 1) fixes the position of the primitive cell whose arrangement position has been adjusted (step B9).

ステップB3のNOの場合、ステップB4のNOの場合、ステップB5のNOの場合、又は、ステップB9の後、コンピュータ装置(図1の101)は、チップ内に存在する全てのY方向メタルデータを持つプリミティブセルに対して配置位置調整する処理を完了したか否かを判定し、完了していない場合には次のY方向メタルデータを持つプリミティブセルに対して配置位置調整する処理に移り、完了した場合にはステップB2のループ処理を抜け、配置位置調整する処理を終了し、ステップA4(図2参照)に進むことになる。   In the case of NO in step B3, in the case of NO in step B4, in the case of NO in step B5, or after step B9, the computer device (101 in FIG. 1) stores all the Y-direction metal data existing in the chip. It is determined whether or not the process for adjusting the arrangement position of the primitive cell is completed. If not, the process moves to the process of adjusting the arrangement position for the primitive cell having the next Y-direction metal data. In this case, the loop process of step B2 is exited, the process of adjusting the arrangement position is terminated, and the process proceeds to step A4 (see FIG. 2).

次に、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における上下に隣接するプリミティブセルが異種類の場合の上下のプリミティブセルのX座標を決める工程(図3のステップB8)の詳細なフローについて図面を用いて説明する。図4は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における図3のステップB8を詳細に示したフローチャートである。   Next, details of the step of determining the X coordinates of the upper and lower primitive cells when the adjacent upper and lower primitive cells are different in the layout design method for the semiconductor integrated circuit according to the first embodiment of the present invention (step B8 in FIG. 3). A simple flow will be described with reference to the drawings. FIG. 4 is a flowchart showing in detail step B8 of FIG. 3 in the layout design method of the semiconductor integrated circuit according to the first embodiment of the present invention.

上下に隣接するプリミティブセルが異なる種類の場合(図3のステップB6のNO)、コンピュータ装置(図1の101)は、上下のプリミティブセルのX座標を決める処理を実行する際(図3のステップB8)、プリミティブセル内のY方向メタルデータの層の数だけ、ステップC2〜ステップC8の処理をループで繰り返す(ステップC1)。   When the upper and lower adjacent primitive cells are of different types (NO in step B6 in FIG. 3), the computer apparatus (101 in FIG. 1) executes the process of determining the X coordinate of the upper and lower primitive cells (step in FIG. 3). B8) The process from step C2 to step C8 is repeated in a loop for the number of layers of Y-direction metal data in the primitive cell (step C1).

ステップC1において、まず、コンピュータ装置(図1の101)は、上側のプリミティブセル内の左端のY方向メタルデータ位置と下側のプリミティブセル内の右端のY方向メタルデータ位置が一致する位置を始点として決め、上側のプリミティブセル内の右端のY方向メタルデータ位置と下側のプリミティブセル内の左端のY方向メタルデータ位置が一致する位置を終点として決める(ステップC2)。   In step C1, first, the computer apparatus (101 in FIG. 1) starts from the position where the left end Y-direction metal data position in the upper primitive cell matches the right end Y-direction metal data position in the lower primitive cell. The position where the right end Y-direction metal data position in the upper primitive cell and the left end Y-direction metal data position in the lower primitive cell coincide is determined as the end point (step C2).

ステップC2の後、コンピュータ装置(図1の101)は、ステップC2で決定した始点から終点までの配線グリッドの数だけ、ステップC4〜ステップC8の処理をループで繰り返す(ステップC3)。   After step C2, the computer apparatus (101 in FIG. 1) repeats the processing from step C4 to step C8 in a loop for the number of wiring grids from the start point to the end point determined in step C2 (step C3).

ステップC3において、まず、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセル内のY方向メタルデータのX座標が一致する個数をカウントする(ステップC4)。   In step C3, first, the computer apparatus (101 in FIG. 1) counts the number of coincident X coordinates of the Y direction metal data in the vertically adjacent primitive cells (step C4).

ステップC4の後、コンピュータ装置(図1の101)は、カウントされた個数と、前回のステップC3でのループ処理の中で記憶したY方向メタルデータのX座標一致個数とを比較する(ステップC5)。   After step C4, the computer apparatus (101 in FIG. 1) compares the counted number with the X coordinate coincidence number of the Y-direction metal data stored in the loop processing at the previous step C3 (step C5). ).

ステップC5において、カウントされた個数が前回のステップC3でのループ処理の中で記憶したY方向メタルデータのX座標一致個数より大きい場合(ステップC5の「大」)、コンピュータ装置(図1の101)は、記憶したY方向メタルデータのX座標一致個数とX座標をクリアし(ステップC6)、その後、前記一致個数と下側のプリミティブセルのX座標を記憶し(ステップC7)、その後、下側のプリミティブセルを1配線グリッド移動させる(ステップC8)。   In step C5, when the counted number is larger than the X coordinate coincidence number of the Y-direction metal data stored in the loop processing in the previous step C3 (“large” in step C5), the computer apparatus (101 in FIG. 1). ) Clears the X coordinate coincidence number and X coordinate of the stored Y-direction metal data (step C6), and then stores the coincidence number and the X coordinate of the lower primitive cell (step C7). The primitive cell on the side is moved by one wiring grid (step C8).

ステップC5において、カウントされた個数が前回のステップC3でのループ処理の中で記憶したY方向メタルデータのX座標一致個数と等しい場合(ステップC5の「等しい」)、コンピュータ装置(図1の101)は、前記一致個数と下側のプリミティブセルのX座標を記憶し(ステップC7)し、その後、下側のプリミティブセルを1配線グリッド移動させる(ステップC8)。   In step C5, when the counted number is equal to the X coordinate coincidence number of the Y direction metal data stored in the loop processing in the previous step C3 (“equal” in step C5), the computer apparatus (101 in FIG. 1). ) Stores the coincidence number and the X coordinate of the lower primitive cell (step C7), and then moves the lower primitive cell by one wiring grid (step C8).

ステップC5において、カウントされた個数が前回のステップC3でのループ処理の中で記憶したY方向メタルデータのX座標一致個数より小さい場合(ステップC5の「小」)、コンピュータ装置(図1の101)は、下側のプリミティブセルを1配線グリッド移動させる(ステップC8)。   In step C5, when the counted number is smaller than the X coordinate coincidence number of the Y direction metal data stored in the loop processing in the previous step C3 ("small" in step C5), the computer device (101 in FIG. 1). ) Moves the lower primitive cell by one wiring grid (step C8).

ステップC8の後、コンピュータ装置(図1の101)は、ステップC2において決定した終点の位置まで下側のプリミティブセルの移動を全て完了したか否かを判定し、全て完了していない場合には移動が未完了のプリミティブセルについてステップC3を実行し、完了した場合にはステップC3のループ処理を抜ける。   After step C8, the computer apparatus (101 in FIG. 1) determines whether or not all the movements of the lower primitive cells to the end point position determined in step C2 have been completed. Step C3 is executed for the primitive cell that has not been moved, and if it has been completed, the loop processing of step C3 is exited.

ステップC3のループ処理を抜けると、コンピュータ装置(図1の101)は、上下のプリミティブセルのX座標を決める処理が全て完了したか否かを判定し、全て完了していない場合にはX座標が未決定のプリミティブセルについてステップC2を実行し、完了した場合にはステップC2のループ処理を抜ける。   After exiting the loop processing in step C3, the computer apparatus (101 in FIG. 1) determines whether or not the processing for determining the X coordinates of the upper and lower primitive cells has been completed. Step C2 is executed for the primitive cells that have not been determined, and if completed, the loop processing of Step C2 is exited.

ステップC2のループ処理を抜けると、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセル内のY方向メタルデータの層が一致する数が2以上であるかどうかを判定する(ステップC9)。上下に隣接するプリミティブセル内のY方向メタルデータの層が一致する数が2未満である場合(ステップC9のNO)、ステップC11に進む。   After exiting the loop processing in step C2, the computer apparatus (101 in FIG. 1) determines whether or not the number of matching Y-direction metal data layers in the vertically adjacent primitive cells is 2 or more (step C9). ). When the number of matching Y-direction metal data layers in the vertically adjacent primitive cells is less than 2 (NO in step C9), the process proceeds to step C11.

上下に隣接するプリミティブセル内のY方向メタルデータの層が一致する数が2以上である場合(ステップC9のYES)、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセル内のY方向メタルデータの層が一致する数が2以上である場合には、Y方向メタルデータのX座標一致個数が大きい層での記憶したY方向メタルデータのX座標一致個数とプリミティブセルのX座標を選択し(ステップC10)、その後、ステップC11に進む。   When the number of layers of Y-direction metal data in the vertically adjacent primitive cells is equal to or greater than 2 (YES in step C9), the computer apparatus (101 in FIG. 1) determines the Y in the vertically adjacent primitive cells. If the number of layers in the direction metal data coincides with two or more, the stored X-coordinate coincidence number of the Y-direction metal data and the X coordinate of the primitive cell in the layer in which the X-coordinate coincidence number in the Y-direction metal data is large Select (step C10), and then proceed to step C11.

ステップC9のNOの場合、又は、ステップC10の後、コンピュータ装置(図1の101)は、記憶したY方向メタルデータのX座標一致個数とプリミティブセルのX座標が1つか否かを判定する(ステップC11)。   In the case of NO in step C9 or after step C10, the computer apparatus (101 in FIG. 1) determines whether or not the stored X-direction coincidence number of the Y-direction metal data and the X coordinate of the primitive cell are one (1). Step C11).

記憶したY方向メタルデータのX座標一致個数とプリミティブセルのX座標が1つである場合(ステップC11のYES)、コンピュータ装置(図1の101)は、記憶したプリミティブセルのX座標を下側のプリミティブセルのX座標に決め(ステップC12)、その後、ステップB9(図3参照)に進むことになる。   When the number of coincident X coordinates of the stored Y-direction metal data and the X coordinate of the primitive cell are one (YES in step C11), the computer device (101 in FIG. 1) sets the stored X coordinate of the primitive cell to the lower side. The X coordinate of the primitive cell is determined (step C12), and then the process proceeds to step B9 (see FIG. 3).

記憶したY方向メタルデータのX座標一致個数とプリミティブセルのX座標が複数ある場合(ステップC11のNO)、コンピュータ装置(図1の101)は、上下に隣接するプリミティブセルのX座標の差が最小となるX座標を下側のプリミティブセルのX座標に決め(ステップC13)、その後、ステップB9(図3参照)に進むことになる。   When there are a plurality of X coordinate coincidence numbers of the stored Y-direction metal data and the X coordinates of the primitive cells (NO in step C11), the computer device (101 in FIG. 1) determines that the difference between the X coordinates of the primitive cells adjacent in the vertical direction is different. The minimum X coordinate is determined as the X coordinate of the lower primitive cell (step C13), and then the process proceeds to step B9 (see FIG. 3).

なお、上記実施例では、下側のプリミティブセルを移動することとして説明したが、移動可能なスペースの位置によっては、上側のプリミティブセルを移動してもよい。   In the above embodiment, the lower primitive cell is moved. However, the upper primitive cell may be moved depending on the position of the movable space.

次に、本発明の実施例1に係る半導体集積回路のレイアウト設計方法を半導体集積回路のレイアウトを用いて説明する。図5は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における同種類のプリミティブセルを配置位置調整する場合の工程ごとのレイアウト図である。図6は、本発明の実施例1に係る半導体集積回路のレイアウト設計方法における異なる種類のプリミティブセルを配置位置調整する場合の工程ごとのレイアウト図である。   Next, a layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention will be described using the layout of the semiconductor integrated circuit. FIG. 5 is a layout diagram for each process in the case of adjusting the arrangement position of the same kind of primitive cells in the layout design method of the semiconductor integrated circuit according to the first embodiment of the present invention. FIG. 6 is a layout diagram for each step in the case of adjusting the arrangement position of different types of primitive cells in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention.

なお、図5及び図6において、斜め線のハッチングを施した203の部分がプリミティブセル201、202内のメタル2層以上のY方向配線層のメタルデータ(以下、「Y方向メタルデータ」と称する)である。   In FIGS. 5 and 6, the hatched portion 203 is the metal data of the Y-direction wiring layer of the two or more metal layers in the primitive cells 201 and 202 (hereinafter referred to as “Y-direction metal data”). ).

図5は、Y方向メタルデータ203を持つ上下に隣接する同種類のプリミティブセル201の場合の例である。図5(A)は自動配置後のプリミティブセル201の配置位置であり、図5(B)に示すように移動可能なスペース204が存在する場合、図5(C)のように上下のプリミティブセル201のX座標が一致する位置に下側のプリミティブセル201の位置を調整し、Y方向メタルデータ203の位置を合わせる。   FIG. 5 is an example in the case of the same type of primitive cell 201 having Y-direction metal data 203 adjacent vertically. FIG. 5A shows the arrangement positions of the primitive cells 201 after the automatic arrangement. When there is a movable space 204 as shown in FIG. 5B, the upper and lower primitive cells are shown in FIG. 5C. The position of the lower primitive cell 201 is adjusted to a position where the X coordinate of 201 matches, and the position of the Y-direction metal data 203 is adjusted.

図6は、Y方向メタルデータ203を持つ上下に隣接するプリミティブセル201、202が異なる種類の場合の例である。図6(A)は自動配置後の異なる種類のプリミティブセル201及びプリミティブセル202の配置位置であり、図6(B)に示すように移動可能なスペース204が存在する場合、図4(C)のように上側のプリミティブセル201内の左端のY方向メタルデータ203の位置と下側のプリミティブセル202内の右端のY方向メタルデータ203の位置を合わせた位置から、図4(D)のように上側のプリミティブセル201内の右端のY方向メタルデータ203の位置と下側のプリミティブセル202内の左端のY方向メタルデータ203の位置を合わせた位置まで配線グリッド単位で下側のプリミティブセル202を移動し、移動する毎に、プリミティブセル201及びプリミティブセル202内のY方向メタルデータ203が一致する個数をカウントする。上下のプリミティブセル201及びプリミティブセル202内のY方向メタルデータ203のX座標が一致する個数が最大となる位置に下側のプリミティブセル202の位置を調整する。   FIG. 6 shows an example in which the upper and lower primitive cells 201 and 202 having Y-direction metal data 203 are of different types. FIG. 6A shows the arrangement positions of different types of primitive cells 201 and primitive cells 202 after automatic arrangement, and when there is a movable space 204 as shown in FIG. 6B, FIG. As shown in FIG. 4D, the position of the left end Y-direction metal data 203 in the upper primitive cell 201 and the position of the right end Y-direction metal data 203 in the lower primitive cell 202 are combined. The lower primitive cell 202 in the wiring grid unit until the position of the right end Y-direction metal data 203 in the upper primitive cell 201 and the position of the left end Y-direction metal data 203 in the lower primitive cell 202 are combined. Each time it is moved, the Y direction metal data 203 in the primitive cell 201 and the primitive cell 202 match. To count that number. The position of the lower primitive cell 202 is adjusted to a position where the number of matching X coordinates of the Y-direction metal data 203 in the upper and lower primitive cells 201 and 202 is maximized.

本配置位置調整により確保できる通過配線のリソースは、[式1]のように表される。   The resource of the passing wiring that can be secured by this arrangement position adjustment is expressed as [Equation 1].

[式1]
space1=W/G−M
space1=配置位置調整後のプリミティブセル上を一直線に通過できる配線トラック
W=プリミティブセルの幅
G=配線グリッドの幅
M=プリミティブセル内Y方向メタルデータ数
[Formula 1]
G space1 = W / G-M
G space1 = wiring track capable of passing in a straight line on the primitive cell after the arrangement position adjustment W = width of the primitive cell G = width of the wiring grid M = number of metal data in the Y direction in the primitive cell

メタルデータ数セルの配置位置を調整しない場合、セルの縦方向の並びにより、通過配線のリソースは、最悪の場合で、[式2]のようになり、上下に隣接するプリミティブセルの個数が多くなるほど、上記nの値が大きくなるため、プリミティブセル上通過可能な配線グリッド数([式2]のGspace2)が減り、配線が一直線に通過することが困難になる。 If the arrangement position of the number of metal data cells is not adjusted, the resource of the passing wiring is the worst case by the arrangement in the vertical direction of the cell as shown in [Equation 2], and the number of primitive cells adjacent vertically is large. As the value of n increases, the number of wiring grids that can pass on the primitive cell (G space2 in [Expression 2]) decreases, and it becomes difficult for the wiring to pass in a straight line.

[式2]
space2=W/G−M×n
space2=配置位置調整を行わない場合のプリミティブセル上を一直線に通過できる配線トラック
n=上下に隣接するプリミティブセルの個数
[Formula 2]
G space2 = W / G−M × n
G space2 = wiring track that can pass in a straight line on the primitive cell when the arrangement position is not adjusted n = number of vertically adjacent primitive cells

次に、本発明の実施例1に係る半導体集積回路のレイアウト設計方法においてプリミティブセル上を一直線に配線が通過できる配線リソース数が増加した場合について説明する。   Next, a case where the number of wiring resources through which wiring can pass in a straight line on the primitive cell in the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention is described.

図7は、2メタル以上のY方向メタルデータ203を持つプリミティブセル201の例である。本例では、プリミティブセル201上の縦方向のトータルの配線グリッド(上記[式1]及び[式2]の「W/G」に相当)は50本であり、プリミティブセル201内のY方向メタルデータ203の数(上記[式1]及び[式2]の「M」に相当)が10個である。   FIG. 7 shows an example of a primitive cell 201 having Y-direction metal data 203 of two metals or more. In this example, the total number of vertical wiring grids on the primitive cell 201 (corresponding to “W / G” in [Expression 1] and [Expression 2] above) is 50, and the Y-direction metal in the primitive cell 201 is The number of data 203 (corresponding to “M” in [Expression 1] and [Expression 2]) is 10.

図8は、図7のプリミティブセル201を使用してチップレイアウトをした場合に本発明の実施例1に係る半導体集積回路のレイアウト設計方法の配置位置調整を実施しない例である。図9は、図7のプリミティブセル201を使用してチップレイアウトをした場合に本発明の実施例1に係る半導体集積回路のレイアウト設計方法の配置位置調整を実施した例である。   FIG. 8 is an example in which the layout position adjustment of the layout design method for the semiconductor integrated circuit according to the first embodiment of the present invention is not performed when the chip layout is performed using the primitive cells 201 of FIG. FIG. 9 shows an example in which the layout position adjustment of the layout design method for a semiconductor integrated circuit according to the first embodiment of the present invention is performed when the chip layout is performed using the primitive cell 201 of FIG.

図8では、プリミティブセル201の配置位置調整を行わないため、最悪、10箇所×3個分(上記[式2]の「M×n」に相当)の通過配線が阻害される。本例では、プリミティブセル上を一直線に通過できる配線トラック301(上記[式2]の「Gspace2」に相当)は、26箇所となっている。 In FIG. 8, since the arrangement positions of the primitive cells 201 are not adjusted, the passing wiring of 10 locations × 3 pieces (corresponding to “M × n” in the above [Expression 2]) is obstructed. In this example, there are 26 wiring tracks 301 (corresponding to “G space2 ” in [Expression 2]) that can pass through the primitive cells in a straight line.

図9では、プリミティブセル201の位置を整列させることにより、通過配線の阻害箇所は、最大でプリミティブセル201内のY方向メタルデータ203の数(上記[式1]の「M」に相当)の10箇所のみであり、プリミティブセル上を一直線に通過できる配線トラック301(上記[式1]の「Gspace1」に相当)は、40本となっている。 In FIG. 9, by aligning the positions of the primitive cells 201, the number of inhibition points of the passing wiring is the maximum number of Y-direction metal data 203 in the primitive cells 201 (corresponding to “M” in [Expression 1]). There are only 40 wiring tracks 301 (corresponding to “G space1 ” in the above [Expression 1]) that can pass through the primitive cells in a straight line.

実施例1によれば、以下のような効果を奏する。   According to the first embodiment, the following effects can be obtained.

第1の効果として、プリミティブセルの設計時に、プリミティブセル内部にフィードスルートラックを確保することなく、配線を向上させることができ、チップサイズを縮小できるという効果がある。その理由としては、プリミティブセル内の2メタル以上のY方向配線層メタルデータのX座標の位置を合わせることにより、チップの自動レイアウト時に配線がプリミティブセル上を一直線に通過することができるからである。   As a first effect, when designing a primitive cell, there is an effect that wiring can be improved and a chip size can be reduced without securing a feedthrough track inside the primitive cell. The reason is that by aligning the X-coordinate positions of the Y-direction wiring layer metal data of two or more metals in the primitive cell, the wiring can pass in a straight line on the primitive cell during automatic chip layout. .

第2の効果として、配線時の処理時間が短縮できるという効果がある。その理由としては、チップの自動レイアウト時に配線がプリミティブセル上を一直線に通過することで配線の折れ曲がりが減り、配線性が向上するからである。   As a second effect, there is an effect that the processing time at the time of wiring can be shortened. The reason is that the wiring passes through the primitive cells in a straight line during the automatic layout of the chip, thereby reducing the bending of the wiring and improving the wiring performance.

1 半導体基板
2 基本セル列領域
3 配線領域
4〜11 論理機能セル
4a、4b、4c、5a、6a、7a、8a、10a、10b、10c 端子
12 フィードスルートラック
13〜30 配線グリッド
31〜35 配線
36 基本セル
101 コンピュータ装置
102 サーバ
102a 記録部
103 ネットワーク
201 プリミティブセル
202 プリミティブセル
203 Y方向メタルデータ
204 移動可能なスペース
301 プリミティブセル上を一直線に通過できる配線トラック
DESCRIPTION OF SYMBOLS 1 Semiconductor substrate 2 Basic cell row | line | column area | region 3 Wiring area | region 4-11 Logic function cell 4a, 4b, 4c, 5a, 6a, 7a, 8a, 10a, 10b, 10c Terminal 12 Feed through track 13-30 Wiring grids 31-35 Wiring 36 Basic cell 101 Computer device 102 Server 102a Recording unit 103 Network 201 Primitive cell 202 Primitive cell 203 Y-direction metal data 204 Movable space 301 Wiring track that can pass in a straight line on the primitive cell

Claims (9)

コンピュータを使用して半導体集積回路のレイアウト設計を行う半導体集積回路のレイアウト設計方法において、
チップ内にY軸方向に延在するY方向メタルデータを持つプリミティブセルが存在するか判定する工程と、
前記プリミティブセルが上下に隣接しているか判定する工程と、
各前記プリミティブセル内の前記Y方向メタルデータを有する層が同じか判定する工程と、
各前記プリミティブセルのうち移動可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルがあるか判定する工程と、
前記各判定を満たす場合に、各前記プリミティブセルの種類が同じか否かを判定する工程と、
各前記プリミティブセルの種類に応じて前記プリミティブセルのX座標の配置位置調整を行う工程と、
前記配置位置調整を行った前記プリミティブセルの位置を固定する工程と、
を含むことを特徴とする半導体集積回路のレイアウト設計方法。
In a semiconductor integrated circuit layout design method for designing a layout of a semiconductor integrated circuit using a computer,
Determining whether there is a primitive cell having Y-direction metal data extending in the Y-axis direction in the chip;
Determining whether the primitive cells are vertically adjacent;
Determining whether the layers having the Y-direction metal data in each of the primitive cells are the same;
Determining whether there is a movable space in each of the primitive cells and there is a primitive cell whose placement position is not fixed;
When satisfying each determination, determining whether the types of the primitive cells are the same;
Adjusting the arrangement position of the X coordinate of the primitive cell according to the type of each primitive cell;
Fixing the position of the primitive cell subjected to the arrangement position adjustment;
A method of designing a layout of a semiconductor integrated circuit, comprising:
前記プリミティブセルが上下に隣接しているか判定する工程では、上下の前記プリミティブセルで、上側のプリミティブセルのX座標が、下側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に、または、前記下側のプリミティブセルのX座標が、前記上側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に存在するかをチェックすることにより、前記プリミティブセルが上下に隣接しているかを判定することを特徴とする請求項1記載の半導体集積回路のレイアウト設計方法。   In the step of determining whether the primitive cells are adjacent vertically, the X coordinate of the upper primitive cell in the upper and lower primitive cells is within the range of “X coordinate + primitive cell width” of the lower primitive cell, Or, by checking whether the X coordinate of the lower primitive cell is within the range of “X coordinate + primitive cell width” of the upper primitive cell, whether the primitive cell is adjacent vertically The layout design method for a semiconductor integrated circuit according to claim 1, wherein: 前記配置位置調整を行う工程では、上下の前記プリミティブセルの種類が同じである場合に上下の前記プリミティブセルのX座標を同じにし、上下の前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定することを特徴とする請求項1又は2記載の半導体集積回路のレイアウト設計方法。   In the step of adjusting the arrangement position, when the types of the upper and lower primitive cells are the same, the X coordinates of the upper and lower primitive cells are made the same, and when the types of the upper and lower primitive cells are different, the upper and lower primitive cells 3. The method of designing a layout of a semiconductor integrated circuit according to claim 1, wherein the X coordinate is determined to a desired value. 上下に隣接する前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定する際、
始点として前記上側のプリミティブセル内の左端のY方向メタルデータの位置と、前記下側のプリミティブセル内の右端のY方向メタルデータの位置と、を合わせる位置を決め、終点として前記上側のプリミティブセル内の右端のY方向メタルデータの位置と、前記下側のプリミティブセル内の左端のY方向メタルデータの位置と、を合わせる位置を決める工程と、
前記始点から前記終点まで前記下側のプリミティブセルを配線グリッド数分移動する工程と、
前記上下に隣接する前記プリミティブセル内の同一層においてY方向メタルデータのX座標の一致個数をカウントする工程と、
カウントした前記一致個数と記憶した一致個数とを比較する工程と、
カウントした前記一致個数が記憶した一致個数より大きい場合に記憶した一致個数とX座標をクリアする工程と、
カウントした前記一致個数が記憶した一致個数と等しい場合、又は、記憶した一致個数とX座標をクリアした後に、前記一致個数、及び前記下側のプリミティブセルのX座標を記憶する工程と、
前記プリミティブセル内のY方向メタルデータを有する層の数が2以上である場合、Y方向メタルデータの一致個数が大きい方の層に関して記憶した一致個数、及び前記下側のプリミティブセルのX座標を選択する工程と、
記憶した一致個数と前記下側のプリミティブセルのX座標は1つかを判定する工程と、
記憶した一致個数と前記下側のプリミティブセルのX座標は1つである場合に、記憶したX座標を使用する工程と、
記憶した一致個数と前記下側のプリミティブセルのX座標が複数ある場合に、上下の前記プリミティブセルのX座標の差が最小となる座標を選択する工程と、
を含むことを特徴とする請求項3記載の半導体集積回路のレイアウト設計方法。
When determining the X coordinate of the upper and lower primitive cells to a desired value when the types of the adjacent primitive cells are different,
The position of the left end Y-direction metal data in the upper primitive cell and the position of the right end Y-direction metal data in the lower primitive cell are determined as a start point, and the upper primitive cell is determined as an end point. Determining a position to match the position of the Y-direction metal data at the right end in the inside and the position of the Y-direction metal data at the left end in the lower primitive cell;
Moving the lower primitive cell from the start point to the end point by the number of wiring grids;
Counting the number of coincident X coordinates of Y-direction metal data in the same layer in the primitive cell adjacent above and below;
Comparing the counted number of matches with a stored number of matches;
Clearing the stored match number and X coordinate if the counted match number is greater than the stored match number;
Storing the coincidence number and the X coordinate of the lower primitive cell after the counted coincidence number is equal to the stored coincidence number, or after clearing the stored coincidence number and the X coordinate;
If the number of layers having Y-direction metal data in the primitive cell is 2 or more, the number of matches stored for the layer with the larger number of matches in the Y-direction metal data, and the X coordinate of the lower primitive cell A process to select;
Determining whether the stored number of matches and the X coordinate of the lower primitive cell are one;
Using the stored X-coordinate when the number of stored matches and the X-coordinate of the lower primitive cell are one;
Selecting a coordinate that minimizes the difference between the X coordinates of the upper and lower primitive cells when there are a plurality of stored coincidence numbers and the X coordinates of the lower primitive cells; and
4. The layout design method for a semiconductor integrated circuit according to claim 3, further comprising:
請求項1乃至4のいずれか一に記載の半導体集積回路のレイアウト設計方法の各工程をコンピュータに実行させることを特徴とするプログラム。   A program for causing a computer to execute each step of the layout design method for a semiconductor integrated circuit according to any one of claims 1 to 4. 半導体集積回路のレイアウト設計を行う半導体集積回路のレイアウト設計装置において、
チップ内にY軸方向に延在するY方向メタルデータを持つプリミティブセルが存在するか判定する手段と、
前記プリミティブセルが上下に隣接しているか判定する手段と、
各前記プリミティブセル内の前記Y方向メタルデータを有する層が同じか判定する手段と、
各前記プリミティブセルのうち移動可能なスペースがあり、かつ、配置位置が固定されていないプリミティブセルがあるか判定する手段と、
前記各判定を満たす場合に、各前記プリミティブセルの種類が同じか否かを判定する手段と、
各前記プリミティブセルの種類に応じて前記プリミティブセルのX座標の配置位置調整を行う手段と、
前記配置位置調整を行った前記プリミティブセルの位置を固定する手段と、
を備えることを特徴とする半導体集積回路のレイアウト設計装置。
In a semiconductor integrated circuit layout design apparatus for designing a layout of a semiconductor integrated circuit,
Means for determining whether a primitive cell having Y-direction metal data extending in the Y-axis direction exists in the chip;
Means for determining whether the primitive cells are vertically adjacent;
Means for determining whether the layers having the Y-direction metal data in each of the primitive cells are the same;
Means for determining whether there is a moveable space among the primitive cells and there is a primitive cell whose placement position is not fixed;
Means for determining whether the types of the primitive cells are the same when satisfying the determinations;
Means for adjusting the arrangement position of the X coordinate of the primitive cell according to the type of each primitive cell;
Means for fixing the position of the primitive cell that has been subjected to the arrangement position adjustment;
A layout design apparatus for a semiconductor integrated circuit, comprising:
前記プリミティブセルが上下に隣接しているか判定する手段は、上下の前記プリミティブセルで、上側のプリミティブセルのX座標が、下側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に、または、前記下側のプリミティブセルのX座標が、前記上側のプリミティブセルの「X座標+プリミティブセル幅」の範囲内に存在するかをチェックすることにより、前記プリミティブセルが上下に隣接しているかを判定することを特徴とする請求項6記載の半導体集積回路のレイアウト設計装置。   The means for determining whether or not the primitive cells are adjacent to each other in the upper and lower sides is the upper and lower primitive cells, and the X coordinate of the upper primitive cell is within the range of “X coordinate + primitive cell width” of the lower primitive cell, Or, by checking whether the X coordinate of the lower primitive cell is within the range of “X coordinate + primitive cell width” of the upper primitive cell, whether the primitive cell is adjacent vertically 7. The layout design apparatus for a semiconductor integrated circuit according to claim 6, wherein: 前記配置位置調整を行う手段は、上下の前記プリミティブセルの種類が同じである場合に上下の前記プリミティブセルのX座標を同じにし、上下の前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定することを特徴とする請求項6又は7記載の半導体集積回路のレイアウト設計装置。   The means for adjusting the arrangement position adjusts the X coordinate of the upper and lower primitive cells when the upper and lower primitive cells are the same, and when the upper and lower primitive cells are different, 8. The layout design apparatus for a semiconductor integrated circuit according to claim 6, wherein the X coordinate is determined to a desired value. 前記配置位置調整を行う手段は、上下に隣接する前記プリミティブセルの種類が異なる場合に上下の前記プリミティブセルのX座標を所望の値に決定する手段として、
始点として前記上側のプリミティブセル内の左端のY方向メタルデータの位置と、前記下側のプリミティブセル内の右端のY方向メタルデータの位置と、を合わせる位置を決め、終点として前記上側のプリミティブセル内の右端のY方向メタルデータの位置と、前記下側のプリミティブセル内の左端のY方向メタルデータの位置と、を合わせる位置を決める手段と、
前記始点から前記終点まで前記下側のプリミティブセルを配線グリッド数分移動する手段と、
前記上下に隣接する前記プリミティブセル内の同一層においてY方向メタルデータのX座標の一致個数をカウントする手段と、
カウントした前記一致個数と記憶した一致個数とを比較する手段と、
カウントした前記一致個数が記憶した一致個数より大きい場合に記憶した一致個数とX座標をクリアする手段と、
カウントした前記一致個数が記憶した一致個数と等しい場合、又は、記憶した一致個数とX座標をクリアした後に、前記一致個数、及び前記下側のプリミティブセルのX座標を記憶する手段と、
前記プリミティブセル内のY方向メタルデータを有する層の数が2以上である場合、Y方向メタルデータの一致個数が大きい方の層に関して記憶した一致個数、及び前記下側のプリミティブセルのX座標を選択する手段と、
記憶した一致個数と前記下側のプリミティブセルのX座標は1つかを判定する手段と、
記憶した一致個数と前記下側のプリミティブセルのX座標は1つである場合に、記憶したX座標を使用する手段と、
記憶した一致個数と前記下側のプリミティブセルのX座標が複数ある場合に、上下の前記プリミティブセルのX座標の差が最小となる座標を選択する手段と、
を備えることを特徴とする請求項8記載の半導体集積回路のレイアウト設計装置。
The means for adjusting the arrangement position is a means for determining the X coordinate of the upper and lower primitive cells to a desired value when the types of the primitive cells adjacent to the upper and lower are different.
The position of the left end Y-direction metal data in the upper primitive cell and the position of the right end Y-direction metal data in the lower primitive cell are determined as a start point, and the upper primitive cell is determined as an end point. Means for determining a position for matching the position of the Y-direction metal data at the right end in the inner position and the position of the Y-direction metal data at the left end in the lower primitive cell;
Means for moving the lower primitive cell from the start point to the end point by the number of wiring grids;
Means for counting the number of coincident X coordinates of Y-direction metal data in the same layer in the primitive cell adjacent above and below;
Means for comparing the counted number of matches with the stored number of matches;
Means for clearing the stored number of matches and the X coordinate if the counted number of matches is greater than the stored number of matches;
Means for storing the coincidence number and the X coordinate of the lower primitive cell after the counted coincidence number is equal to the stored coincidence number or after clearing the stored coincidence number and the X coordinate;
If the number of layers having Y-direction metal data in the primitive cell is 2 or more, the number of matches stored for the layer with the larger number of matches in the Y-direction metal data, and the X coordinate of the lower primitive cell Means to choose;
Means for determining whether the stored number of matches and the X coordinate of the lower primitive cell are one;
Means for using the stored X coordinate when the number of stored matches and the X coordinate of the lower primitive cell are one;
Means for selecting a coordinate that minimizes the difference between the X coordinates of the upper and lower primitive cells when there are a plurality of stored coincidences and a plurality of X coordinates of the lower primitive cells;
9. The layout design apparatus for a semiconductor integrated circuit according to claim 8, further comprising:
JP2009262206A 2009-11-17 2009-11-17 Method, program, and device for designing layout of semiconductor integrated circuit, Withdrawn JP2011107979A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009262206A JP2011107979A (en) 2009-11-17 2009-11-17 Method, program, and device for designing layout of semiconductor integrated circuit,

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009262206A JP2011107979A (en) 2009-11-17 2009-11-17 Method, program, and device for designing layout of semiconductor integrated circuit,

Publications (1)

Publication Number Publication Date
JP2011107979A true JP2011107979A (en) 2011-06-02

Family

ID=44231375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009262206A Withdrawn JP2011107979A (en) 2009-11-17 2009-11-17 Method, program, and device for designing layout of semiconductor integrated circuit,

Country Status (1)

Country Link
JP (1) JP2011107979A (en)

Similar Documents

Publication Publication Date Title
US8745565B2 (en) Satisfying routing rules during circuit design
US8612914B2 (en) Pin routing in standard cells
Seo et al. Pin accessibility-driven cell layout redesign and placement optimization
US9536035B2 (en) Wide pin for improved circuit routing
Kahng et al. TritonRoute: An initial detailed router for advanced VLSI technologies
US8185856B2 (en) Manufacturing method, manufacturing program and manufacturing system for adjusting signal delay in a semiconductor device
US11163932B2 (en) Semiconductor process modeling to enable skip via in place and route flow
US20140331196A1 (en) Analyzing sparse wiring areas of an integrated circuit design
US7082595B1 (en) Schematic driven placement method and program product for custom VLSI circuit design
US20120240090A1 (en) Clock tree designing apparatus and clock tree designing method
US8510685B1 (en) Methods, systems, and articles of manufacture for creating a hierarchical output for an operation in an electronic design
US8078994B2 (en) Method of designing semiconductor device including density verification
JP2011107979A (en) Method, program, and device for designing layout of semiconductor integrated circuit,
US11176303B2 (en) Constrained cell placement
US8132141B2 (en) Method and apparatus for generating a centerline connectivity representation
JP5187217B2 (en) Semiconductor layout system, method, and program
US20110072404A1 (en) Parallel Timing Analysis For Place-And-Route Operations
US9524364B1 (en) Method and system for creating improved routing polygon abstracts
US8286115B2 (en) Fast routing of custom macros
JP5035434B2 (en) Semiconductor device design support program and semiconductor device design system
JP2007005651A (en) Cell arrangement method, program, and manufacturing method for semiconductor device
Wei et al. An accurate and efficient probabilistic congestion estimation model in X architecture
Kan et al. Post-layout Redundant Via Insertion Approach Considering Multiple Via Configuration
He et al. An effective buffer planning algorithm for IP based fixed-outline SOC placement
KR20210028798A (en) Manufacturing method of semiconductor device

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20130205