JP3369093B2 - Semiconductor integrated circuit design equipment - Google Patents
Semiconductor integrated circuit design equipmentInfo
- Publication number
- JP3369093B2 JP3369093B2 JP35538197A JP35538197A JP3369093B2 JP 3369093 B2 JP3369093 B2 JP 3369093B2 JP 35538197 A JP35538197 A JP 35538197A JP 35538197 A JP35538197 A JP 35538197A JP 3369093 B2 JP3369093 B2 JP 3369093B2
- Authority
- JP
- Japan
- Prior art keywords
- real
- allocation
- electric circuit
- elements
- assigned
- 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.)
- Expired - Fee Related
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、マスタースライス
方式を用いたアナログ半導体集積回路の設計装置および
設計方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an analog semiconductor integrated circuit designing apparatus and designing method using a master slice method.
【0002】[0002]
【従来の技術】従来、半導体集積回路の開発製造期間の
短縮を図るために、半導体集積回路のレイアウト設計に
マスタースライス方式が採用されている。マスタースラ
イスとは、半導体ウエハ上に、それぞれ所定の素子値を
有した抵抗素子、トランジスタ素子、容量素子等があら
かじめ形成されたものをいう。マスタースライス方式
は、これから半導体集積回路にレイアウトしようとする
電気回路内の各素子(以下、目的素子という)に対し、
マスタースライス上に形成されている実素子を割り当
て、割り当てられたマスタースライス上の実素子間を電
気回路上の目的素子間の接続関係に基づいて配線するこ
とにより半導体集積回路を設計する方法である。目的素
子へのマスタースライス上の実素子の割り当てに際して
は、目的素子の素子値が実現できるように実素子または
実素子の組み合せがその目的素子に割り当てられる。ま
たマスタースライス上において一群の抵抗素子が形成さ
れている領域は、抵抗素子が目的素子に対して割り当て
られていても配線領域として使用される。2. Description of the Related Art Conventionally, in order to shorten the development and manufacturing period of a semiconductor integrated circuit, a master slice method has been adopted for the layout design of the semiconductor integrated circuit. The master slice refers to a semiconductor wafer in which a resistance element, a transistor element, a capacitance element, and the like each having a predetermined element value are formed in advance. The master slice method is for each element (hereinafter referred to as a target element) in an electric circuit to be laid out in a semiconductor integrated circuit,
It is a method of designing a semiconductor integrated circuit by allocating real elements formed on a master slice and wiring between the allocated real elements on the master slice based on a connection relationship between target elements on an electric circuit. . When allocating the real element on the master slice to the target element, the real element or a combination of real elements is allocated to the target element so that the element value of the target element can be realized. Further, the region where the group of resistance elements is formed on the master slice is used as a wiring area even if the resistance element is assigned to the target element.
【0003】実際のマスタースライスを用いた半導体集
積回路の設計においては、マスタースライス上には実素
子がアレイ上に形成され、その配置はあらかじめ決まっ
ているので、設計したい目的素子を目的素子と等価な機
能を実現するマスタースライス上の実素子または実素子
組み合わせの各領域に対して割り当てて、割り当てた実
素子の各領域間を電気回路上の各目的素子の配線関係を
もとに接続し、電気回路を設計する。In designing a semiconductor integrated circuit using an actual master slice, since real elements are formed in an array on the master slice and their arrangement is predetermined, the target element to be designed is equivalent to the target element. Allocate to each area of the real element or real element combination on the master slice that realizes such a function, and connect each area of the assigned real element based on the wiring relationship of each target element on the electric circuit, Design an electric circuit.
【0004】目的素子の実素子への割り当ては、配線
長、素子間のバランス、ある領域の実素子への割り当て
の集中化を避ける等の考慮をしながら、人手により素子
の割り当てを行なう。また自動で素子の割り当てを行う
手法もあるが、割り当ての順序としては、目的素子間の
接続関係に関する情報として与えられる順番に従って目
的素子と等価なマスタースライスの領域を1個または複
数個の実素子を含む矩形領域に分け、隣接または直線上
に並んでいる領域にある実素子を優先して割り当てて接
続を行っていた。When allocating a target element to an actual element, the element is manually assigned while taking into consideration such factors as the wiring length, the balance between elements, and the avoidance of concentration of allocation to an actual element in a certain area. There is also a method of automatically allocating elements, but as the order of allocation, one or a plurality of real elements that are equivalent to the target slice in the master slice area are provided according to the order given as information regarding the connection relationship between the target elements. , The real elements in the adjacent or linearly arranged areas are preferentially allocated and connected.
【0005】図16は素子割り当て手法の一例を示すも
のである。FIG. 16 shows an example of an element allocation method.
【0006】図16はマスタースライス上に形成された
実素子郡の一部を示したものであり、マスタースライス
上の各実素子は点線の矩形で示された各実素子領域を形
成している。1601は第1の目的素子のトランジスタ
T16aへの割り当て済みのトランジスタ素子、160
2は第2の目的素子のトランジスタT16bへの割り当
て済みのトランジスタ素子、1603〜1606抵抗素
子である。FIG. 16 shows a part of a group of real elements formed on the master slice. Each real element on the master slice forms each real element region shown by a dotted rectangle. . Reference numeral 1601 denotes a transistor element already assigned to the transistor T16a of the first target element,
Reference numeral 2 is a transistor element, which is a transistor element already assigned to the transistor T16b of the second target element, and 1603 to 1606 resistance elements.
【0007】今、電気回路上、トランジスタT16aの
一方の端子に抵抗R16aが接続され、トランジスタT
16bの一方の端子に抵抗R16bが接続されていると
する。従来の手法では、割り当て順序においてトランジ
スタT16aがトランジスタT16bより早い場合、ト
ランジスタ素子1601に接続する抵抗素子としてトラ
ンジスタ1601から近い領域にある抵抗素子1603
と1604が割り当てられ(抵抗R16aの抵抗値を実
現するため1603,1604を組み合わせたものを割
り当てるものとする)、次にトランジスタ素子1602
に接続する抵抗素子として1605と1606(抵抗R
16bの抵抗値を実現するため1605,1606を組
み合わせたものを割り当てるものとする)の遠くの位置
にある抵抗素子が割り当てられる。この場合トランジス
タ1602と抵抗素子1605、1606の間にトラン
ジスタ1601と抵抗素子1603、1604が存在す
るため、配線処理を行うことができず、未配線となる可
能性があった。Now, in the electric circuit, the resistor R16a is connected to one terminal of the transistor T16a,
It is assumed that the resistor R16b is connected to one terminal of 16b. According to the conventional method, when the transistor T16a is earlier than the transistor T16b in the allocation order, the resistance element 1603 located in a region near the transistor 1601 is connected to the transistor element 1601.
And 1604 are assigned (in order to realize the resistance value of the resistor R16a, a combination of 1603 and 1604 is assigned), and then the transistor element 1602.
1605 and 1606 (resistor R
A combination of resistors 1605 and 1606 is assigned to realize a resistance value of 16b). In this case, since the transistor 1601 and the resistance elements 1603 and 1604 are present between the transistor 1602 and the resistance elements 1605 and 1606, wiring processing cannot be performed and there is a possibility that wiring is not performed.
【0008】[0008]
【発明が解決しようとする課題】図16に示したような
従来の手法によれば、後から割り当て処理を行った素子
は近くの実素子が既に割り当てが決定されている場合に
は、遠くにある実素子が割り当てられ、未配線の原因と
なり、されに直線上にならんでいるトランジスタでは接
続する素子の割り当てが隣接または近くの領域に集中す
る。このように固定された割り当て順序で実素子を近く
から割り当てていくため、割り当て順序の遅い素子の実
素子割り当てにおいて無理が生じやすく、全体として効
率の悪い配線となり、場合によっては配線処理を行うこ
とができず、未配線となる問題が生じていた。According to the conventional method as shown in FIG. 16, the element to which the allocation process is performed later is located far away when the real element in the vicinity is already determined to be allocated. A certain real element is assigned to cause unwiring, and in the transistors arranged in a straight line, the assignment of elements to be connected is concentrated in an adjacent or nearby area. In this way, real elements are allocated from a close order in a fixed allocation order, so it is easy for the real element allocation of elements with a slower allocation order to occur, resulting in inefficient wiring as a whole, and wiring processing may be performed in some cases. However, there is a problem that the wiring is not performed.
【0009】本発明は、マスタースライス上の実素子間
の接続関係を考慮した電気回路素子のマスタースライス
上への実素子の割り当てを行い、マスタースライス上の
実素子間の配線距離が短く、配線関係が複雑にならない
効率的な配線となる半導体集積回路を設計する半導体集
積回路設計装置を提供することを目的とする。According to the present invention, the real elements are allocated to the master slice of the electric circuit element in consideration of the connection relation between the real elements on the master slice, and the wiring distance between the real elements on the master slice is short, It is an object of the present invention to provide a semiconductor integrated circuit design device for designing a semiconductor integrated circuit having efficient wiring that does not complicate the relationship.
【0010】[0010]
【課題を解決するための手段】上記課題を解決するため
本発明にかかる半導体集積回路設計装置は、割り当てが
決まっていない電気回路素子を割り当てがきまっていな
い実素子アレイに対して他の電気回路素子との重複を許
して割り当てを試みる素子割り当て手段と、前記素子割
り当て手段による処理の結果、電気回路素子の割り当て
が重複している実素子に割り当てる電気回路素子を一に
決定する素子割り当て決定手段を備え、前記実素子アレ
イに対する前記電気回路素子すべての割り当てが一に決
定するまで前記素子割り当て決定手段による処理を繰り
返すことを特徴とする。In order to solve the above-mentioned problems, a semiconductor integrated circuit designing apparatus according to the present invention is arranged so that an electric circuit element whose allocation has not been determined is assigned to another electric circuit element which has not been allocated. And element allocation determining means for attempting allocation by permitting duplication of the element and element allocation determining means for determining, as a result of the processing by the element allocation means, one electric circuit element to be allocated to an actual element whose electric circuit element allocation is overlapping. It is characterized in that the processing by the element allocation determining means is repeated until the allocation of all the electric circuit elements to the actual element array is determined to be one.
【0011】かかる構成により、割り当ての順序を固定
せず、割り当てが未定である電気回路素子に対して最も
効率的配線が実現できる実素子への割り当てを、他の割
り当て未定の素子との重複を許して行い、その後重複を
調整して割り当てる電気回路素子を決定することがで
き、効率の良い配線関係を持つ半導体集積回路設計装置
を実現することができる。With this configuration, the allocation order is not fixed, but the allocation to the actual element that can realize the most efficient wiring for the electric circuit element whose allocation is undecided is duplicated with the element whose allocation is undecided. It is possible to permit the operation, and then to adjust the duplication to determine the electric circuit element to be assigned, and to realize a semiconductor integrated circuit design device having an efficient wiring relationship.
【0012】次に、上記半導体集積回路設計装置は、前
記素子割り当て手段が、割り当てを試みる電気回路素子
を割り当てることのできる実素子の候補が複数ある場
合、前記電気回路素子の端子に電気回路上接続されるす
べての電気回路素子を接続電気回路素子として検索し、
前記接続電気回路素子が割り当てられている実素子の接
続基準点を検出し、前記接続基準点を囲む矩形の中心座
標を算出し、前記中心座標からの距離が最短となる位置
にある実素子に割り当てる手段であることが好ましい。Next, in the semiconductor integrated circuit designing apparatus, when there are a plurality of real element candidates to which the electric circuit element to be tried by the element allocating means can be allocated, an electric circuit element is connected to a terminal of the electric circuit element. Search all connected electric circuit elements as connected electric circuit elements,
The connection reference point of the real element to which the connection electric circuit element is assigned is detected, the center coordinates of a rectangle surrounding the connection reference point are calculated, and the real element at the position where the distance from the center coordinate is the shortest It is preferably an allocating means.
【0013】かかる構成により、割り当てが未定である
電気回路素子に対して、電気回路上接続される接続電気
回路素子が割り当てられた実素子間と最も効率的配線が
実現できる実素子を選択して割り当てを行うことがで
き、効率の良い配線関係を持つ半導体集積回路設計装置
を実現することができる。With such a configuration, for an electric circuit element whose allocation is undecided, a real element that can realize the most efficient wiring between the real elements to which the connecting electric circuit element connected on the electric circuit is allocated is selected. Therefore, the semiconductor integrated circuit designing device that can perform the allocation and has an efficient wiring relationship can be realized.
【0014】次に、上記半導体集積回路設計装置は、前
記素子割り当て手段が、割り当てを試みる電気回路素子
を割り当てることのできる実素子の候補が複数ある場
合、前記電気回路素子の端子に電気回路上接続されるす
べての電気回路素子を接続電気回路素子として検索し、
前記接続電気回路素子が割り当てられている実素子の接
続基準点を検出し、前記接続基準点を囲む矩形の中心座
標を算出し、前記中心座標からのマンハッタン距離が最
短となる位置にある実素子に割り当てる手段であること
が好ましい。Next, in the semiconductor integrated circuit designing apparatus, when the element allocating means has a plurality of real element candidates to which the electric circuit element to be attempted allocation can be allocated, the terminal of the electric circuit element is connected to the electric circuit. Search all connected electric circuit elements as connected electric circuit elements,
Detecting the connection reference point of the real element to which the connection electric circuit element is assigned, calculating the center coordinates of the rectangle surrounding the connection reference point, the real element at the position where the Manhattan distance from the center coordinates is the shortest. It is preferable that it is a means for allocating to.
【0015】ここで、マンハッタン距離とは、2点間を
水平垂直の線分だけで結んだときの線分の長さの合計で
ある。Here, the Manhattan distance is the total length of line segments when two points are connected only by horizontal and vertical line segments.
【0016】かかる構成により、割り当てが未定である
電気回路素子に対して、電気回路上接続される接続電気
回路素子が割り当てられた実素子間と最も効率的配線が
実現できる実素子を選択して割り当てを行うことがで
き、効率の良い配線関係を持つ半導体集積回路設計装置
を実現することができる。With this configuration, for the electric circuit elements whose allocation is undecided, the actual elements that can realize the most efficient wiring between the real elements to which the connecting electric circuit elements connected on the electric circuit are allocated are selected. Therefore, the semiconductor integrated circuit designing device that can perform the allocation and has an efficient wiring relationship can be realized.
【0017】次に、上記半導体集積回路設計装置は、前
記素子割り当て手段が、割り当てを試みる電気回路素子
の素子値を実現するため複数の実素子を組み合わせて割
り当てる場合、前記組み合わせとなる複数の実素子の中
心間のマンハッタン距離の和が最小となる実素子の組み
合わせに割り当てる手段であることが好ましい。Next, in the semiconductor integrated circuit designing apparatus, when the element allocating means allocates a plurality of real elements in combination in order to realize an element value of an electric circuit element to be attempted to be allocated, a plurality of real elements to be the combination are assigned. It is preferable that the means is assigned to a combination of real elements that minimizes the sum of Manhattan distances between the centers of the elements.
【0018】かかる構成により、割り当てが未定である
電気回路素子に対して、素子値を実現するために複数の
実素子の組み合わせを割り当てるに際し、組み合わせと
なる実素子間の配線が最も効率的な配線となる実素子組
み合わせを選択して割り当てを行うことができ、効率の
良い配線関係を持つ半導体集積回路設計装置を実現する
ことができる。With this configuration, when assigning a combination of a plurality of real elements to realize an element value to an electric circuit element whose assignment is undecided, the wiring between the real elements to be combined is the most efficient wiring. It is possible to select and allocate a real element combination that satisfies the following, and it is possible to realize a semiconductor integrated circuit design device having an efficient wiring relationship.
【0019】次に、上記半導体集積回路設計装置は、前
記素子割り当て手段が、割り当てを試みる電気回路素子
を割り当てることのできる実素子の候補が複数ある場
合、前記実素子の候補のうち、他の電気回路素子の割り
当て重複が少ない実素子に割り当てる手段であることが
好ましい。Next, in the semiconductor integrated circuit designing apparatus, when the element allocating unit has a plurality of real element candidates to which an electric circuit element to be attempted to be allocated, there are other real element candidates. It is preferable that the means is a means for assigning to an actual element with little duplication of assignment of electrical circuit elements.
【0020】かかる構成により、割り当てが未定である
電気回路素子に対して効率的配線が実現でき、かつ、他
の割り当て未定の素子との重複が少ない実素子に対して
割り当てることができ、その後の重複の調整が簡単とな
り、効率の良い配線関係を持つ半導体集積回路設計装置
を実現することができる。With such a configuration, efficient wiring can be realized for an electric circuit element whose allocation is undecided, and allocation can be performed for an actual element which has little overlap with other elements whose allocation is undecided. It is possible to realize a semiconductor integrated circuit designing device having an efficient wiring relationship by simplifying the duplication adjustment.
【0021】次に、上記半導体集積回路設計装置は、前
記素子割り当て手段が、割り当てを試みる電気回路素子
を割り当てることのできる実素子の候補が複数ある場
合、前記電気回路素子の端子に電気回路上接続されるす
べての電気回路素子を接続電気回路素子として検索し、
前記接続電気回路素子が割り当てられている実素子の接
続基準点を検出し、前記接続基準点を囲む矩形の中心座
標を算出し、前記中心座標からの距離を第1のパラメー
タとし、前記中心座標からのマンハッタン距離を第2の
パラメータとし、割り当てを試みる電気回路素子の素子
値を実現するため複数の実素子を組み合わせて割り当て
る場合、前記組み合わせとなる複数の実素子の中心間の
マンハッタン距離の和を第3のパラメータとし、前記実
素子の候補に対する他の電気回路素子の割り当て重複数
を第4のパラメータとし、前記第1〜第4のパラメータ
を利用した評価により割り当てる電気回路素子を選択す
る手段であることが好ましい。Next, in the semiconductor integrated circuit designing apparatus, when there are a plurality of actual element candidates to which the electric circuit element to be allocated can be allocated by the element allocation means, the terminals of the electric circuit element are arranged on the electric circuit. Search all connected electric circuit elements as connected electric circuit elements,
The connection reference point of the actual element to which the connection electric circuit element is assigned is detected, the center coordinates of a rectangle surrounding the connection reference point are calculated, and the distance from the center coordinates is set as a first parameter, and the center coordinates are set. The second parameter is the Manhattan distance from, and when a plurality of real elements are combined and allocated in order to realize the element value of the electric circuit element to be allocated, the sum of the Manhattan distances between the centers of the plurality of real elements to be combined is the sum. Is used as a third parameter, a plurality of allocation factors of other electric circuit elements with respect to the candidate of the actual element are used as a fourth parameter, and an electric circuit element to be allocated is selected by evaluation using the first to fourth parameters. Is preferred.
【0022】かかる構成により、接続電気回路素子が割
り当てられている実素子間との配線長、素子値を実現す
るために複数の実素子組み合わせとなる場合の組み合わ
せ実素子内配線長、重複する他の電気回路素子との割り
当て重複数を総合的に考慮した割り当てを行うことがで
き、効率の良い配線関係を持つ半導体集積回路設計装置
を実現することができる。With this configuration, the wiring length between the actual elements to which the connecting electric circuit element is allocated, the combined actual element wiring length in the case where a plurality of actual element combinations are used to realize the element value, the overlap, etc. It is possible to perform the allocation in consideration of the plurality of allocations with the electric circuit element in a comprehensive manner, and it is possible to realize a semiconductor integrated circuit designing device having an efficient wiring relationship.
【0023】次に、上記半導体集積回路設計装置は、前
記素子割り当て決定手段が、前記素子割り当て手段によ
る割り当ての結果、電気回路素子の割り当てが重複して
いる実素子を仮割り当て禁止実素子とする仮割り当て禁
止手段と、前記仮割り当て禁止実素子に割り当てられて
いる重複している電気回路素子を検索する重複電気回路
素子検索手段と、前記素子割り当て手段を用いて前記重
複電気回路素子を前記仮割り当て禁止実素子以外の他の
実素子に再割り当てを試みる再割り当て手段と、前記再
割り当て手段により割り当てた実素子と前記検出したそ
れぞれの接続基準点までの距離の合計が、前記仮割り当
て禁止実素子から前記検出したそれぞれの接続基準点ま
での距離の合計から最大の増分を持つ電気回路素子を前
記仮割り当て禁止実素子に割り当てることを決定し、そ
の他の前記重複電気回路素子の割り当て実素子を前記再
割り当て手段により割り当てた実素子に更新する手段で
あることが好ましい。Next, in the above semiconductor integrated circuit designing device, the element allocation determining means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocation means to be a temporary allocation prohibited real element. Temporary allocation prohibiting means, duplicate electric circuit element searching means for searching for duplicate electric circuit elements allocated to the temporary allocation prohibiting real element, and the redundant electric circuit element by the element allocating means. The total of the re-allocation means that attempts re-allocation to another real element other than the allocation-prohibited real element, the real elements allocated by the re-allocation means and the detected connection reference points is the temporary allocation-prohibited real element. The provisional allocation prohibition of the electric circuit element having the maximum increment from the total distance from the element to each of the detected connection reference points Decided to assign the device, it is preferable to allocate the actual device other the overlapping electric circuit element is a means for updating the actual element allocated by the reallocation means.
【0024】かかる構成により、素子割り当て手段によ
り重複した電気回路素子の重複の調整にあたり、他の実
素子へ再割り当てした場合に最も配線距離が長く効率が
悪い配線となってしまう電気回路素子に対して割り当て
ることができ、半導体集積回路全体として効率の良い配
線関係を持つ半導体集積回路設計装置を実現することが
できる。With such a configuration, when adjusting the duplication of the electric circuit elements which are duplicated by the element allocating means, when the electric circuit elements are re-allocated to other actual elements, the wiring distance becomes long and the wiring becomes inefficient. Therefore, it is possible to realize a semiconductor integrated circuit design device having an efficient wiring relationship as a whole semiconductor integrated circuit.
【0025】次に、上記半導体集積回路設計装置は、前
記素子割り当て決定手段が、前記素子割り当て手段によ
る割り当ての結果、電気回路素子の割り当てが重複して
いる実素子を仮割り当て禁止実素子とする仮割り当て禁
止手段と、前記仮割り当て禁止実素子に割り当てられて
いる重複している電気回路素子を検索する重複電気回路
素子検索手段と、前記素子割り当て手段を用いて前記重
複電気回路素子を前記仮割り当て禁止実素子以外の他の
実素子に再割り当てを試みる再割り当て手段と、前記再
割り当て手段において算出した組み合わせとなる複数の
実素子の中心間のマンハッタン距離の合計が、前記素子
割り当て手段において算出した組み合わせとなる複数の
実素子の中心間のマンハッタン距離の合計から最大の増
分を持つ電気回路素子を前記仮割り当て禁止実素子に割
り当てることを決定し、その他の前記重複電気回路素子
の割り当て実素子を前記再割り当て手段により割り当て
た実素子に更新する手段であることが好ましい。Next, in the above semiconductor integrated circuit designing device, the element allocation determining means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocation means to be a temporary allocation prohibited real element. Temporary allocation prohibiting means, duplicate electric circuit element searching means for searching for duplicate electric circuit elements allocated to the temporary allocation prohibiting real element, and the redundant electric circuit element by the element allocating means. The sum of the Manhattan distances between the centers of the reallocation means that tries reallocation other than the real elements other than the allocation-prohibited real elements and the centers of the plurality of real elements calculated by the reallocation means is calculated by the element allocation means. Circuit with the maximum increment from the sum of Manhattan distances between the centers of multiple real elements in different combinations Decided to assign the child to the temporary assignment prohibition actual element, it is preferable to allocate the actual device other the overlapping electric circuit element is a means for updating the actual element allocated by the reallocation means.
【0026】かかる構成により、素子割り当て手段によ
り重複した電気回路素子の重複の調整にあたり、他の実
素子組み合わせへ再割り当てした場合に組み合わせ実素
子内の配線のマンハッタン距離が最も長く効率が悪い配
線となってしまう電気回路素子に対して割り当てること
ができ、半導体集積回路全体として効率の良い配線関係
を持つ半導体集積回路設計装置を実現することができ
る。With such a configuration, when the duplication of the electric circuit elements duplicated by the element allocating means is adjusted, the Manhattan distance of the wiring in the combination actual element is the longest and the wiring is inefficient when it is reassigned to another actual element combination. Therefore, the semiconductor integrated circuit designing apparatus can be realized, which can be allocated to the electric circuit elements that become the same, and have an efficient wiring relationship as the entire semiconductor integrated circuit.
【0027】次に、上記半導体集積回路設計装置は、前
記素子割り当て決定手段が、前記素子割り当て手段によ
る割り当ての結果、電気回路素子の割り当てが重複して
いる実素子を仮割り当て禁止実素子とする仮割り当て禁
止手段と、前記仮割り当て禁止実素子に割り当てられて
いる重複している電気回路素子を検索する重複電気回路
素子検索手段と、前記素子割り当て手段を用いて前記重
複電気回路素子を前記仮割り当て禁止実素子以外の他の
実素子に再割り当てを試みる再割り当て手段と、前記再
割り当て手段による割り当てた実素子に割り当てられて
いる電気回路素子の重複数の合計が最も多くなる電気回
路素子を前記仮割り当て禁止実素子に割り当てることを
決定し、その他の前記重複電気回路素子の割り当て実素
子を前記再割り当て手段により割り当てた実素子に更新
する手段であることが好ましい。Next, in the above semiconductor integrated circuit designing device, the element allocation determining means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocation means to be a temporary allocation prohibited real element. Temporary allocation prohibiting means, duplicate electric circuit element searching means for searching for duplicate electric circuit elements allocated to the temporary allocation prohibiting real element, and the redundant electric circuit element by the element allocating means. An electric circuit element in which the total of a plurality of re-allocation means for attempting re-allocation to the real element other than the allocation-prohibited real element and the electric circuit element assigned to the real element assigned by the re-allocation means is the largest It is decided to allocate to the temporary allocation prohibited real element, and the real element allocated to the other duplicate electric circuit element is re-allocated. It is preferably a means for updating the actual element allocated by means.
【0028】かかる構成により、素子割り当て手段によ
り重複した電気回路素子の重複の調整にあたり、他の実
素子へ再割り当てした場合に他の電気回路素子との重複
が最も多くなってしまう電気回路素子に対して割り当て
ることができ、半導体集積回路全体として効率の良い配
線関係を持つ半導体集積回路設計装置を実現することが
できる。With this configuration, when adjusting the duplication of the electric circuit elements duplicated by the element allocating means, when the electric circuit elements are reassigned to other actual elements, the electric circuit elements that are most overlapped with the other electric circuit elements are the same. Therefore, it is possible to realize a semiconductor integrated circuit designing device that can be allocated to each other and has an efficient wiring relationship as a whole semiconductor integrated circuit.
【0029】次に、上記半導体集積回路設計装置は、前
記素子割り当て決定手段が、前記素子割り当て手段によ
る割り当ての結果、電気回路素子の割り当てが重複して
いる実素子を仮割り当て禁止実素子とする仮割り当て禁
止手段と、前記仮割り当て禁止実素子に割り当てられて
いる重複している電気回路素子を検索する重複電気回路
素子検索手段と、前記素子割り当て手段を用いて前記重
複電気回路素子を前記仮割り当て禁止実素子以外の他の
実素子に再割り当てを試みる再割り当て手段と、前記再
割り当て手段で算出した評価結果が、前記素子割り当て
手段で算出した評価結果から最も悪くなってしまう電気
回路素子を前記仮割り当て禁止実素子に割り当てること
を決定し、その他の前記重複電気回路素子の割り当て実
素子を前記再割り当て手段により割り当てた実素子に更
新する手段であることが好ましい。Next, in the above semiconductor integrated circuit designing device, the element allocation determining means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocation means to be a temporary allocation prohibited real element. Temporary allocation prohibiting means, duplicate electric circuit element searching means for searching for duplicate electric circuit elements allocated to the temporary allocation prohibiting real element, and the redundant electric circuit element by the element allocating means. A reallocation unit that attempts reallocation to another real element other than the reallocation prohibited element, and an electric circuit element whose evaluation result calculated by the reallocation means becomes the worst from the evaluation result calculated by the element allocation unit. It is decided to allocate to the temporary allocation prohibited real element, and the real element to which the other duplicate electric circuit elements are allocated is reallocated. It is preferably a means for updating the actual element allocated by means Te.
【0030】かかる構成により、素子割り当て手段によ
り重複した電気回路素子の重複の調整にあたり、調整す
る電気回路素子の接続電気回路素子が割り当てられてい
る実素子間との配線長、素子値を実現するために複数の
実素子組み合わせとなる場合の組み合わせ実素子内配線
長、重複する他の電気回路素子との割り当て重複数を総
合的に考慮して、他の実素子に再割り当てした場合に最
も効率が悪くなってしまう電気回路素子に対して割り当
てを行うことができ、効率の良い配線関係を持つ半導体
集積回路設計装置を実現することができる。With this configuration, when adjusting the duplication of the electric circuit elements duplicated by the element allocating means, the wiring length and the element value between the connection of the electric circuit element to be adjusted and the actual element to which the electric circuit element is allocated are realized. Therefore, the combination of multiple real elements is most efficient when re-allocated to other real elements by comprehensively considering the wiring length within the real element and the overlapping weight with other overlapping electric circuit elements. It is possible to allocate to an electric circuit element that deteriorates, and it is possible to realize a semiconductor integrated circuit design device having an efficient wiring relationship.
【0031】[0031]
【実施の形態】以下、本発明の実施形態について図面を
参照しながら説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0032】図1は、発明の一実施形態である半導体集
積回路設計装置のハードウェア構成を示すブロック図で
ある。FIG. 1 is a block diagram showing a hardware configuration of a semiconductor integrated circuit designing apparatus according to an embodiment of the invention.
【0033】半導体集積回路設計装置は、ワークステー
ションなどによって実現されるCAD(Computer Aided
Design)装置であり、ディスプレイ101は、CRT
(陰極線管)やLCD(液晶表示装置)などによって実
現される。入力部102は、キーボードやタブレットな
どによって実現される。CPU103は、半導体集積回
路装置全体を制御する中央演算処理装置である。記憶部
104は、メモリやハードディスクなどによって実現さ
れる。A semiconductor integrated circuit designing apparatus is a CAD (Computer Aided) implemented by a workstation or the like.
Design) device, and the display 101 is a CRT.
(Cathode ray tube), LCD (liquid crystal display device), etc. The input unit 102 is realized by a keyboard, a tablet, or the like. The CPU 103 is a central processing unit that controls the entire semiconductor integrated circuit device. The storage unit 104 is realized by a memory, a hard disk, or the like.
【0034】図2は、本発明の一実施形態である半導体
集積回路装置の機能的構成を示すブロック図である。FIG. 2 is a block diagram showing a functional configuration of a semiconductor integrated circuit device which is an embodiment of the present invention.
【0035】半導体集積回路設計装置は、素子割り当て
部110、素子混雑度情報付加部111、素子割り当て
決定部112、制御部113、配線部114を備える。The semiconductor integrated circuit design device comprises an element allocation section 110, an element congestion degree information addition section 111, an element allocation determination section 112, a control section 113, and a wiring section 114.
【0036】素子割り当て部110、素子混雑度情報付
加部111、素子割り当て決定部112、制御部11
3、配線部114はいずれも、記憶部104に記憶され
ているプログラムをCPU103が実行することにより
実現される。Element allocation section 110, element congestion degree information addition section 111, element allocation determination section 112, control section 11
3 and the wiring unit 114 are realized by the CPU 103 executing a program stored in the storage unit 104.
【0037】素子割り当て部110は、制御部113の
制御に従って、割り当てが決定していない各目的素子を
割り当てが決まっていないマスタースライス上の実素子
に割り当てる。この際、他の目的素子の割り当てが重複
しても重複を許してマスタースライス上の実素子に割り
当てを行なう。つまり初期段階として実素子間の配線、
重複を気にせず、電気回路上の各目的素子を実現する実
素子または複数の実素子組み合わせの領域を選定する。Under the control of the control unit 113, the element allocation unit 110 allocates each target element whose allocation has not been determined to an actual element on the master slice whose allocation has not been determined. At this time, even if the assignments of other target elements overlap, the duplication is allowed and the real elements on the master slice are assigned. In other words, as an initial stage, wiring between actual elements,
A region of an actual element or a combination of a plurality of actual elements that realizes each target element on the electric circuit is selected without worrying about duplication.
【0038】素子混雑度情報付加部111は制御部11
3の指示に従い、各マスタースライス上の実素子に対す
る電気回路素子の割り当て候補の重複数を実素子の混雑
度情報として求め、前記マスタースライス上の各実素子
に混雑度情報を対応づけるものである。具体的には重複
を許して割り当てた重複数、つまり割り当て先候補の数
から1を引いた数をその素子の混雑度として情報を付加
する。The element congestion degree information adding section 111 is a control section 11.
According to the instruction No. 3, the duplication number of the electric circuit element allocation candidates for the real element on each master slice is obtained as the congestion degree information of the real element, and the congestion degree information is associated with each real element on the master slice. . Specifically, information is added as the congestion degree of the element, which is a duplication number assigned with overlapping allowed, that is, a number obtained by subtracting 1 from the number of allocation destination candidates.
【0039】素子割り当て決定部112は制御部113
の指示に従って、割り当てが重複しているマスタースラ
イス上の実素子の割り当て目的素子を決定するものであ
る。制御部113は、素子割り当て部110、素子混雑
度情報付加部111、素子割り当て決定部112、配線
部114を制御して本発明の半導体集積回路設計方法を
実行させる。The element allocation determining section 112 is a control section 113.
According to the instruction of 1., the allocation target element of the real element on the master slice in which the allocation overlaps is determined. The control unit 113 controls the element allocation unit 110, the element congestion degree information addition unit 111, the element allocation determination unit 112, and the wiring unit 114 to execute the semiconductor integrated circuit design method of the present invention.
【0040】配線部114は、マスタースライス上に確
保またはあらかじめ指定された配線領域を使用し、従来
のCAD装置と同様にして、例えば迷路法等により電気
回路の接続情報に基づいて実素子の端子間などの配線を
行なう。ここで迷路法とは、始点から波紋が広がるよう
な順序で配線格子にラベル付けを行うことによって,全
方向の配線経路を探索する方法であり、配線経路があれ
ば最短のものを必ず見つけることができるという特徴が
ある。The wiring section 114 uses a wiring area secured or designated in advance on the master slice, and in the same manner as a conventional CAD device, for example, the terminal of the actual element based on the connection information of the electric circuit by the maze method or the like. Wiring such as between. Here, the maze method is a method of searching the wiring route in all directions by labeling the wiring grid in the order that ripples spread from the start point, and if there is a wiring route, be sure to find the shortest one. There is a feature that you can
【0041】上記構成による半導体集積回路設計装置の
動作を説明する。The operation of the semiconductor integrated circuit designing device having the above configuration will be described.
【0042】図3は、本発明の半導体集積回路設計装置
による半導体集積回路設計手順を示すフローチャートで
ある。FIG. 3 is a flow chart showing a semiconductor integrated circuit designing procedure by the semiconductor integrated circuit designing apparatus of the present invention.
【0043】素子割り当て部110は、電気回路素子の
接続情報に基づいて、目的素子に対してマスタースライ
ス上の実素子の初期割り当てを行ない(ステップS30
1)、その情報を記憶する。The element allocation unit 110 performs initial allocation of the real element on the master slice to the target element based on the connection information of the electric circuit element (step S30).
1) Store that information.
【0044】次いで素子混雑度情報付加部111は、素
子割り当て部110の結果および後述する素子割り当て
決定部112内での処理においてマスタースライス上の
各実素子の割り当てが更新された結果に基づいて、マス
タースライス上の各実素子の重複する割り当て先の目的
素子の数から、そのマスタースライス上の各実素子の混
雑度を求め、混雑度情報として付加する(ステップS3
02)。Then, the element congestion degree information adding section 111 determines, based on the result of the element allocating section 110 and the result of updating the allocation of each real element on the master slice in the processing in the element allocation determining section 112 which will be described later. The congestion degree of each real element on the master slice is obtained from the number of overlapping destination target elements of each real element on the master slice, and is added as congestion degree information (step S3).
02).
【0045】マスタースライス上の実素子の混雑度が全
て0、すなわち割り当ての重複がないかどうかを判定し
(ステップS303)、重複がある場合はステップS3
04に進み、重複がない場合はステップS305に進
む。It is judged whether or not the congestion levels of the real elements on the master slice are all 0, that is, whether or not there is duplication of allocation (step S303), and if there is duplication, step S3.
If there is no overlap, the flow proceeds to step S305.
【0046】ステップS304において、素子割り当て
決定部112は、素子割り当て部110による初期割り
当て結果に基づいて素子混雑度情報付加部111により
マスタースライス上の各実素子に付加された混雑度から
判断して、前記マスタースライス上の実素子の中で最も
混雑度の高い実素子A1を選択し、実素子A1の割り当
て候補であるそれぞれの重複電気回路素子M1,・・
・,Mnを検索する。次に、実素子A1を仮に割り当て
禁止素子として、素子割り当て部110を用いてそれら
検索された重複電気回路素子を実素子A1以外の実素子
への再割り当てを試みる。この仮の再割り当てを行った
場合に素子配置、重複の条件が一番悪化してしまう電気
回路素子M1を実素子A1の割り当て決定素子(ここで
はM1とする)として選定し、M1以外の重複電気回路
素子M2,・・・,Mnの割り当て実素子を再割り当て
により割り当てられた実素子に更新して、それら結果を
混雑度情報付加部111に渡してステップS302に戻
る(ステップS304)。In step S304, the element allocation determining unit 112 determines from the congestion degree added to each real element on the master slice by the element congestion degree information adding unit 111 based on the initial assignment result by the element assigning unit 110. , The real element A1 having the highest congestion degree among the real elements on the master slice is selected, and the duplicate electric circuit elements M1, ... Which are the allocation candidates of the real element A1 are selected.
Search for Mn. Next, the real element A1 is temporarily set as an allocation prohibiting element, and the element allocation unit 110 is used to try to reallocate the retrieved duplicate electric circuit elements to the real elements other than the real element A1. When this tentative reallocation is performed, the electric circuit element M1 in which the conditions of element arrangement and duplication are the worst is selected as the allocation determining element (here, M1) of the actual element A1, and duplication other than M1 is selected. The actual elements assigned to the electric circuit elements M2, ..., Mn are updated to the actual elements assigned by the reallocation, and the results are passed to the congestion degree information adding unit 111 and the process returns to step S302 (step S304).
【0047】次にステップS302に戻り、ステップS
304において更新された割り当て結果に基づいて、素
子混雑度情報付加部111は、割り当てが決定したマス
タースライス上の実素子A1の混雑度を0とし、再割り
当ての結果、電気回路素子の重複数が更新された各実素
子の混雑度情報を更新する(ステップS302)。Next, returning to step S302, step S
Based on the allocation result updated in 304, the element congestion degree information adding unit 111 sets the congestion degree of the real element A1 on the master slice for which the allocation is determined to 0, and as a result of the reallocation, the duplication of electric circuit elements is reduced. The updated congestion degree information of each actual element is updated (step S302).
【0048】マスタースライス上の実素子の混雑度が全
て0、すなわち割り当ての重複がないかどうかを判定し
(ステップS303)、重複があればステップS304
の処理を再度行う。It is judged whether or not the congestion levels of the real elements on the master slice are all 0, that is, whether there is duplication of allocation (step S303), and if there is duplication, step S304.
Repeat the process of.
【0049】ステップS304に進んだ場合は、更新さ
れた素子混雑度情報に基づいて、再度、素子割り当て決
定部112の処理を行ない、最も混雑度の高いマスター
スライス上の実素子の電気回路中素子への割り当て先を
決定する。In the case of proceeding to step S304, the process of the element allocation determining unit 112 is performed again based on the updated element congestion degree information, and the element in the electric circuit of the actual element on the master slice with the highest congestion degree. To assign to.
【0050】ステップS302とステップS304をマ
スタースライス上の実素子の割り当てに重複がなくなる
まで繰り返し行ない、目的素子に対するマスタースライ
ス上の実素子の割り当てを全て決定する。Steps S302 and S304 are repeated until the real elements on the master slice are no longer duplicated, and all the real elements on the master slice to the target element are determined.
【0051】重複がなくなったらステップS305に進
み、配線部114は、接続情報に基づいてマスタースラ
イス上の実素子間の配線を行なう(ステップS30
5)。When there is no overlap, the process proceeds to step S305, where the wiring section 114 performs wiring between the real elements on the master slice based on the connection information (step S30).
5).
【0052】上記のようにステップS301で素子割り
当てを行ない、ステップS302からステップS304
までの過程を繰り返し行なうことにより、素子割り当て
の特定領域への集中を避け、配線長および実素子の混雑
度を考慮した割り当てを行ない、ステップS305にお
いて配線を行なうことにより半導体集積回路のレイアウ
ト設計を効率良く行なうことができる。As described above, element allocation is performed in step S301, and steps S302 to S304 are performed.
By repeating the steps up to this step, element allocation is prevented from concentrating on a specific area, allocation is performed in consideration of the wiring length and the degree of congestion of actual elements, and wiring is performed in step S305 to design the layout of the semiconductor integrated circuit. It can be done efficiently.
【0053】図4は素子割り当て部110による素子割
り当てのより詳細な処理手順の一例を示すフローチャー
トである。FIG. 4 is a flowchart showing an example of a more detailed processing procedure of element allocation by the element allocation unit 110.
【0054】素子割り当て部110はまず、電気回路の
目的素子間の接続情報を読み込む(ステップS40
1)。割り当ての決定していない目的素子があるか否か
を判定し(ステップS402)、未決定の素子があれば
ステップS403に進む。割り当てを実行する目的素子
N1の端子に接続する接続電気回路素子N2,・・・,
Nnに対するマスタースライス上の実素子割り当てが既
に行われている場合にはその実素子または実素子セット
B2,・・・,Bnを検索する(ステップS403)。
次にステップS403で求めたマスタースライス上の実
素子または実素子セットN2,・・・,Nnの中心を囲
むそれぞれの矩形の重なり部分の中心座標を割り当ての
接続基準点として求める(ステップS404)。次に目
的素子の割り当て実素子とすることができるもののう
ち、ステップS404で求めた接続基準点から最も近い
実素子、つまり接続基準点と選択しようとする実素子の
中心点との距離の大きさを示す配置基準値が一番小さい
値となる実素子(ここではB1とする)を選択する(ス
テップS405)。ステップS405で割り当てた実素
子B1が目的素子の素子値を満たすか否かの判定を行な
い(ステップS406)、値を満たしていない場合、接
続基準点を選択した実素子B1の中心座標に更新して
(ステップS407)、ステップS405に戻る。ステ
ップS405において目的素子の割り当て実素子とする
ことができるもののうち、実素子B1から最も近い実素
子B1’を選択し、ステップS406の素子値判定を再
度行う。この手順を繰り返すことにより配線距離が一番
短くなるマスタースライス上の実素子を選択して割り当
てることができる。The element allocation section 110 first reads the connection information between the target elements of the electric circuit (step S40).
1). It is determined whether or not there is a target element whose allocation has not been determined (step S402), and if there is an undetermined element, the process proceeds to step S403. Connection electric circuit elements N2, ..., Which are connected to the terminals of the target element N1 for executing allocation
When the real element allocation on the master slice for Nn has already been performed, the real element or the real element set B2, ..., Bn is searched (step S403).
Next, the center coordinates of the overlapping portions of the rectangles surrounding the centers of the real elements or the real element sets N2, ..., Nn on the master slice obtained in step S403 are obtained as connection reference points for allocation (step S404). Next, of the real elements that can be assigned as the target element, the real element closest to the connection reference point obtained in step S404, that is, the size of the distance between the connection reference point and the center point of the actual element to be selected The actual element (here, B1) having the smallest placement reference value indicating is selected (step S405). It is determined whether or not the real element B1 assigned in step S405 satisfies the element value of the target element (step S406). If the value is not satisfied, the connection reference point is updated to the center coordinate of the selected real element B1. (Step S407), the process returns to step S405. In step S405, the real element B1 ′ closest to the real element B1 is selected from among the real elements that can be assigned as the target element, and the element value determination in step S406 is performed again. By repeating this procedure, it is possible to select and allocate the real element on the master slice having the shortest wiring distance.
【0055】ここで割り当て基準値について詳しく説明
する。Here, the allocation reference value will be described in detail.
【0056】割り当て基準値は目的素子をマスタースラ
イス上の実素子に割り当てる際に最適な位置にある実素
子に割り当てるための基準となる値で、以下の3つの項
目から構成されており、それぞれの項目について図を用
いて説明する。The allocation reference value is a reference value for allocating the target element to the real element at the optimum position when allocating the target element to the real element on the master slice, and is composed of the following three items. Items will be described with reference to the drawings.
【0057】(1)目的素子とその端子に接続する接続
電気回路素子との配線長(以下「素子間配線長」とい
う)を求める。(1) The wiring length (hereinafter referred to as "inter-element wiring length") between the target element and the connection electric circuit element connected to its terminal is obtained.
【0058】図5は目的素子をマスタースライス上の実
素子に割り当てた際の素子間配線長を説明する図であ
る。FIG. 5 is a diagram for explaining the inter-element wiring length when the target element is assigned to the actual element on the master slice.
【0059】図5において501はマスタースライス上
の実素子である抵抗素子群、502a〜502cは目的
素子R5aに割り当てられる抵抗素子群、503はマス
タースライス上の実素子であるトランジスタ素子群、5
04は目的素子R5aの一方の端子に接続されるトラン
ジスタT5aに対して割り当てられたマスタースライス
上のトランジスタ素子、505および506は目的素子
R5aの他方の端子に接続されるトランジスタT5bに
対して割り当てられたマスタースライス上のトランジス
タ素子であり、2つの組み合わせでトランジスタT5b
の素子値を実現する。507は抵抗502の一実素子5
02aとトランジスタ504の中心を囲む矩形、508
は抵抗502の一実素子502cとトランジスタ505
および506の中心を囲む矩形である。In FIG. 5, reference numeral 501 is a resistance element group which is a real element on the master slice, 502a to 502c are resistance element groups assigned to the target element R5a, 503 is a transistor element group which is a real element on the master slice, and 5
04 is a transistor element on the master slice assigned to the transistor T5a connected to one terminal of the target element R5a, and 505 and 506 are assigned to the transistor T5b connected to the other terminal of the target element R5a. The transistor element on the master slice.
Realize the element value of. 507 is a real element 5 of the resistor 502
02a and a rectangle surrounding the center of the transistor 504, 508
Is the real element 502c of the resistor 502 and the transistor 505.
And a rectangle surrounding the center of 506.
【0060】ここで抵抗素子群502とトランジスタ5
04を囲む矩形507の外周の半分の長さと、抵抗素子
群502とトランジスタ505、506を囲む矩形50
8の外周の半分の長さとの和を素子間配線長とする。Here, the resistance element group 502 and the transistor 5
04, a half length of the outer circumference of a rectangle 507, and a rectangle 50 surrounding the resistance element group 502 and the transistors 505 and 506.
The sum of the half length of the outer periphery of 8 is the inter-element wiring length.
【0061】(2)マスタースライス上にはあらかじめ
決められた値の実素子しか形成されていないため、目的
素子の値を実現するためにはマスタースライス上の実素
子を複数本組み合わせて一つの目的素子を実現する。そ
れらの実素子間の配線長(以下「素子内配線長」とい
う)を定義し、割り当てに必要な実素子がなるべく隣接
するように選択する。(2) Since only real elements having a predetermined value are formed on the master slice, in order to realize the value of the target element, a plurality of real elements on the master slice are combined into one object. Realize the element. The wiring length between these real elements (hereinafter referred to as "element wiring length") is defined, and the real elements required for allocation are selected so as to be adjacent to each other as much as possible.
【0062】図6は素子内配線長を説明する図である。
601はマスタースライス上の抵抗群である。602a
〜602dは目的回路素子R6の値を満たすために割り
当てられた抵抗である。R6が割り当てられた実素子組
み合わせ602a〜602dの素子内配線長は602a
〜602dの中心間の距離の和603として定義され
る。FIG. 6 is a diagram for explaining the wiring length within the element.
Reference numeral 601 is a resistance group on the master slice. 602a
˜602d are resistors assigned to satisfy the value of the target circuit element R6. The in-element wiring length of the actual element combinations 602a to 602d to which R6 is assigned is 602a.
It is defined as the sum 603 of the distances between the centers of ˜602d.
【0063】(3)素子割り当てはマスタースライス上
の実素子に重複を許して割り当てを行なうが、その実素
子に既に異なる目的素子が割り当てられている場合、割
り当てられている目的素子総数から1を引いた値を実素
子の重複数を示す混雑度と定義する。素子割り当てに際
してその混雑度を考慮して混雑度の低い実素子が割り当
てられるようにすれば、割り当ての集中を防止すること
ができる。(3) The element allocation is performed by allowing the real elements on the master slice to be duplicated. However, when different target elements are already allocated to the real elements, 1 is subtracted from the total number of allocated target elements. The defined value is defined as the congestion degree indicating the duplication of actual elements. When allocating an actual element having a low congestion degree in consideration of the congestion degree when allocating elements, concentration of allocation can be prevented.
【0064】図7は混雑度の定義を説明する図であり、
701〜707はマスタースライス上の抵抗素子、目的
素子T7a、T7b、T7cにそれぞれ点線で囲んだ組
み合わせで割り当てられている。つまり701はT7a
にのみ、702はT7aとT7bに、703はT7a、
T7b、T7cに、704はT7bのみに割り当てられ
ている。ここでそれぞれの混雑度は、701は0、70
2は1、703は2、704は0となる。FIG. 7 is a diagram for explaining the definition of the congestion degree.
701 to 707 are assigned to the resistance elements on the master slice and the target elements T7a, T7b, and T7c in a combination surrounded by a dotted line. That is, 701 is T7a
, 702 is T7a and T7b, 703 is T7a,
704 is assigned to T7b and T7c, and 704 is assigned only to T7b. Here, the respective congestion degrees are 701 = 0, 70
2 is 1, 703 is 2, and 704 is 0.
【0065】次に素子割り当て手段の詳細なフローにつ
いて説明する。Next, a detailed flow of the element allocation means will be described.
【0066】図8は目的素子にマスタースライス上の実
素子の割り当てを行なう際にステップS404で決定さ
れる割り当ての接続基準点を示す説明図であり、ステッ
プS403で割り当てようとする目的素子の端子に接続
している接続電気回路素子に割り当て決定済みの実素子
を検索し、割り当ての接続基準点を決定する手順を示し
ている。FIG. 8 is an explanatory diagram showing the connection reference points of the allocation determined in step S404 when the real element on the master slice is allocated to the target element, and the terminals of the target element to be allocated in step S403. 9 shows a procedure for searching for an actual element whose allocation has been determined for the connected electric circuit element connected to the node and determining the connection reference point for allocation.
【0067】図8において、801と802は目的素子
M1の一方の端子に接続するトランジスタT8aに組み
合わせとして割り当てられた実素子トランジスタ群、8
03、804および805は目的素子M1のもう一方の
端子に接続するトランジスタT8bに組み合わせとして
割り当てられた実素子トランジスタ群、806はトラン
ジスタ801と802の中心を含む矩形、807はトラ
ンジスタ803と804と805の中心を含む矩形であ
る。808は矩形806と807とを結ぶ矩形領域で、
809は矩形領域808の中心座標である。In FIG. 8, 801 and 802 are real element transistor groups assigned as a combination to the transistor T8a connected to one terminal of the target element M1, 8
03, 804 and 805 are real element transistor groups assigned as a combination to the transistor T8b connected to the other terminal of the target element M1, 806 is a rectangle including the centers of the transistors 801 and 802, and 807 is transistors 803, 804 and 805. A rectangle that contains the center of the. Reference numeral 808 denotes a rectangular area connecting the rectangles 806 and 807,
Reference numeral 809 denotes the center coordinates of the rectangular area 808.
【0068】まず、目的素子M1の一方の端子の接続電
気回路素子であるトランジスタT8aの割り当てトラン
ジスタ群801、802の中心を囲む矩形806を求め
る。次に目的素子のもう一方の端子の接続電気回路素子
であるトランジスタT8bの割り当てトランジスタ群8
03、804、805の中心座標を囲む矩形を求める。
次にそれぞれの領域806および807を結ぶ領域80
8を求め、その矩形領域808の中心座標を割り当ての
接続基準点とする。First, a rectangle 806 surrounding the centers of the assigned transistor groups 801 and 802 of the transistor T8a which is the connection electric circuit element of one terminal of the target element M1 is obtained. Next, the assigned transistor group 8 of the transistor T8b which is the connection electric circuit element of the other terminal of the target element
A rectangle surrounding the center coordinates of 03, 804, and 805 is obtained.
Next, a region 80 connecting the respective regions 806 and 807
8 is determined, and the central coordinates of the rectangular area 808 are used as the connection reference points for allocation.
【0069】次に図9は、ステップS404で決定した
割り当て接続基準点から基準値の一番小さくなるような
実素子を選択し、さらにステップS405、ステップS
406、ステップS407の過程を施すことによって割
り当て順次行なった結果を示す説明図である。Next, in FIG. 9, a real element having the smallest reference value is selected from the assigned connection reference points determined in step S404, and further, step S405 and step S405.
It is explanatory drawing which shows the result of performing allocation sequentially by giving the process of 406 and step S407.
【0070】図9において、909は図4のステップS
404で決定した割り当ての接続基準点、901、90
2、903は目的素子に割り当てられたマスタースライ
ス上の抵抗素子群である。ここで基準値を、接続基準点
909からの距離とすれば、接続基準点909から最短
の位置にある実素子が選択される。この場合は最初に9
01が選択される。また、同様に基準値を、接続基準点
909からのマンハッタン距離とすれば、接続基準点9
09からマンハッタン距離が最短の位置にある実素子が
選択される。In FIG. 9, reference numeral 909 denotes step S in FIG.
Connection reference points of allocation determined in 404, 901, 90
Reference numerals 2 and 903 denote resistive element groups on the master slice assigned to the target element. Here, if the reference value is the distance from the connection reference point 909, the actual element at the shortest position from the connection reference point 909 is selected. In this case, first 9
01 is selected. Similarly, if the reference value is the Manhattan distance from the connection reference point 909, the connection reference point 9
The actual element located at the shortest Manhattan distance from 09 is selected.
【0071】次に、割り当てようとする目的素子の値を
実現するために割り当て本数が1本では実現不可能であ
る場合、接続基準点を909から最初に割り当てた実素
子901の中心点に更新する。その更新された接続基準
点つまり901の中心から素子割り当て基準値が最小と
なる他の実素子を選択する。この場合では次に実素子9
02が選択され、さらに実素子903が選択される。こ
のようにステップS405からステップS407を繰り
返し行なうことにより、組み合わせの素子内配線長が最
小となる実素子の組み合わせを割り当てることが可能と
なる。Next, when the number of allocations is not realizable with one in order to realize the value of the target element to be allocated, the connection reference point is updated from 909 to the central point of the first allocated real element 901. To do. From the updated connection reference point, that is, the center of 901, another real element having the smallest element allocation reference value is selected. In this case, the actual element 9
02 is selected, and the actual element 903 is further selected. By repeating steps S405 to S407 in this way, it is possible to assign a combination of actual elements that minimizes the in-element wiring length of the combination.
【0072】素子割り当てステップS301は、前述し
た図5〜図9までを用いて説明した処理手順を電気回路
中の全目的素子に対して行なうことにより、目的素子を
マスタースライス上のいずれかの実素子に割り当てるこ
とができる。この素子割り当てにおいてはマスタースラ
イス上の各実素子への目的素子の割り当てが重複しても
差し支えない。In the element allocating step S301, the processing procedure described with reference to FIGS. 5 to 9 is performed for all the target elements in the electric circuit, so that the target element is placed on any of the master slices. It can be assigned to an element. In this element allocation, the allocation of the target element to each real element on the master slice may be duplicated.
【0073】次に、図10はステップS302の混雑度
情報付加111のより詳細な処理手順の一例を示すフロ
ーチャートである。Next, FIG. 10 is a flowchart showing an example of a more detailed processing procedure of the congestion degree information addition 111 in step S302.
【0074】まず、ステップS1001において、素子
割り当ての結果をもとにマスタースライス上の実素子の
割り当て状況を検索する。ステップS1002において
未検索のマスタースライス上の実素子があるか否かを判
定し、未検索の実素子があればステップS1003に進
み、未検索の実素子がない場合は処理手順を終了する。
ステップS1003において、ステップS1001で検
索したマスタースライス上の実素子に割り当てられてい
る電気回路素子の数をカウントし、ステップS1004
においてステップS1003カウントした電気回路素子
数から1を引いた値が混雑度である。次にステップS1
005においてステップS1004で求めた混雑度をマ
スタースライス上の実素子に対応づけて記憶する。First, in step S1001, the allocation status of real elements on the master slice is searched based on the result of element allocation. In step S1002, it is determined whether or not there is a real element on the master slice that has not been searched, and if there is a real element that has not been searched, the process proceeds to step S1003. If there is no real element that has not been searched, the processing procedure ends.
In step S1003, the number of electric circuit elements assigned to the real element on the master slice searched in step S1001 is counted, and step S1004
In step S1003, the value obtained by subtracting 1 from the number of electric circuit elements counted is the congestion degree. Next step S1
In 005, the congestion degree obtained in step S1004 is stored in association with the actual element on the master slice.
【0075】図11は混雑度の一例を示す説明図であ
り、基本的に図7で説明した素子割り当て手段における
混雑度と同様である。FIG. 11 is an explanatory diagram showing an example of the congestion degree, which is basically the same as the congestion degree in the element allocation means described in FIG.
【0076】図11において1101〜1106はマス
タースライス上に形成された抵抗素子群であり、電気回
路中の目的素子T11a、T11b、T11cが割り当
てられている。1101、1102は目的素子T11a
が一つのみ割り当てられており、1103はT11aと
T11bが割り当てられており、1104はT11a、
T11b、T11cが割り当てられており、1105と
1106は目的素子が割り当てられていない。混雑度は
前述したようにマスタースライス上の実素子において割
り当てられている目的素子の本数から1を引いた値であ
り、1101、1102の混雑度は0、1103は1、
1104は2、1105と1106は目的素子の割り当
てがないので混雑度0である。In FIG. 11, 1101 to 1106 are resistance element groups formed on the master slice, to which target elements T11a, T11b, T11c in the electric circuit are assigned. 1101 and 1102 are target elements T11a
Is assigned, T11a and T11b are assigned to 1103, T11a is assigned to 1104,
T11b and T11c are assigned, and target elements 1105 and 1106 are not assigned. The congestion degree is a value obtained by subtracting 1 from the number of target elements allocated in the real elements on the master slice as described above, and the congestion degrees of 1101 and 1102 are 0, 1103 is 1,
1104 is 2, and 1105 and 1106 have no congestion because the target element is not allocated.
【0077】このように素子割り当て部110において
初期段階の素子割り当てが終了した後、混雑度情報付加
部111でマスタースライス上の全実素子に混雑度情報
を付加しする。After the element allocation in the initial stage is completed in the element allocation section 110, the congestion degree information addition section 111 adds the congestion degree information to all the real elements on the master slice.
【0078】次に素子割り当て決定部112について説
明する。Next, the element allocation determining unit 112 will be described.
【0079】図12はステップS304の割り当て決定
のより詳細な処理手順の一例を示すフローチャートであ
る。FIG. 12 is a flowchart showing an example of a more detailed processing procedure for determining the allocation in step S304.
【0080】素子割り当て決定部112は、まず、混雑
度の高いマスタースライス上の実素子A1を選択する
(ステップS1201)。次にステップS1201で選
択された実素子A1の混雑度が0である場合には、マス
タースライス上のすべての実素子の混雑度が0であるの
で処理を終了し、実素子A1の混雑度が0でない、つま
り1以上である場合にはステップS1203に進む(ス
テップS1202)。実素子A1に割り当てられている
電気回路中の目的素子M1,・・・,Mnを検索し、そ
れら目的素子に対する評価関数を計算する(ステップS
1203)。評価関数については後述する。次に実素子
A1を仮に割り当て禁止素子として、ステップS120
3で検索した目的素子M1,・・・,Mnを再度マスタ
ースライス上の実素子へ割り当てし、再度評価関数値を
計算する(ステップS1204)。ステップS1203
で計算した評価関数値とステップS1204で再割り当
て後に計算した評価関数値を比較して、評価関数値の悪
化が一番大きい目的素子を求め、その目的素子を実素子
A1を割り当てる目的素子(ここではM1とする)を決
定する(ステップS1205)。The element allocation determining unit 112 first selects the real element A1 on the master slice having a high congestion degree (step S1201). Next, when the congestion degree of the real element A1 selected in step S1201 is 0, since the congestion degree of all the real elements on the master slice is 0, the process is terminated, and the congestion degree of the real element A1 is When it is not 0, that is, when it is 1 or more, the process proceeds to step S1203 (step S1202). , Mn in the electric circuit assigned to the real element A1 are searched, and the evaluation function for these target elements is calculated (step S).
1203). The evaluation function will be described later. Next, assuming that the real element A1 is an allocation-prohibited element, step S120
The target elements M1, ..., Mn retrieved in 3 are again assigned to the actual elements on the master slice, and the evaluation function value is calculated again (step S1204). Step S1203
The evaluation function value calculated in step S1204 is compared with the evaluation function value calculated after the reallocation in step S1204, the target element having the largest deterioration in the evaluation function value is obtained, and the target element to which the real element A1 is allocated (here Then, M1 is set) (step S1205).
【0081】ステップS1205の結果、つまり割り当
てが決定した実素子A1と目的素子M1および割り当て
が決定しなかった目的素子M2,・・・,Mnの再割り
当てを実行し、実素子A1の混雑情報を0とし、実素子
A1以外の実素子の混雑情報を更新する。(ステップS
1206)。As a result of the step S1205, that is, the real element A1 whose allocation has been determined, the target element M1 and the target elements M2, ..., Mn whose allocation has not been determined are reassigned to obtain the congestion information of the real element A1. The congestion information of the real elements other than the real element A1 is updated to 0. (Step S
1206).
【0082】ステップS1201からステップS120
6までを繰り返し行い、マスタースライス上の実素子の
混雑度がすべて0になった場合、電気回路中の目的素子
のマスタースライス上への割り当てがすべて完了したこ
とになる。Steps S1201 to S120
When the process up to 6 is repeated and the congestion degree of all the real elements on the master slice becomes 0, it means that the allocation of the target element in the electric circuit to the master slice is completed.
【0083】さらに素子割り当て決定部112の具体的
な処理手順の詳細説明を行う。Further, the detailed processing procedure of the element allocation determining section 112 will be described in detail.
【0084】図13(a)〜(c)は素子割り当て決定
部112の処理手順を順に追って説明している図であ
る。1301〜1308はマスタースライス上に形成さ
れている実素子である抵抗素子群の一部である。R13
a〜R13dは電気回路中の目的素子であり、図13
(a)〜(c)においてそれぞれ点線で囲んだマスター
スライス上の実素子の組み合わせを割り当てることで実
現される。FIGS. 13A to 13C are diagrams for sequentially explaining the processing procedure of the element allocation determining unit 112. Reference numerals 1301 to 1308 are a part of a resistance element group which is an actual element formed on the master slice. R13
a to R13d are target elements in the electric circuit, and
This is realized by assigning combinations of real elements on the master slice surrounded by dotted lines in (a) to (c).
【0085】図13(a)の割り当てにおいて、130
1、1307、1308には目的素子の割り当てが0で
あり、1302は電気回路中の目的素子R13aの割り
当てが既に決定しているものとする。また1303、1
304は電気回路中の目的素子R13bが割り当てられ
ており、1305は電気回路中の目的素子R13b、R
13c、R13dの3つの目的素子が割り当てられてお
り、1306は電気回路中の目的素子R13cが割り当
てられている。このように図13(a)に図示した抵抗
群において抵抗素子1305は目的素子が3本割り当て
られており、混雑度2で混雑度が一番高い。この抵抗素
子1305について割り当てられている目的素子R1、
R2、R3それぞれの評価関数値を計算する。In the allocation of FIG. 13A, 130
It is assumed that the allocation of the target element is 0 in 1, 1307, and 1308, and the allocation of the target element R13a in the electric circuit is already determined in 1302. Also 1303, 1
The target element R13b in the electric circuit is assigned to 304, and the target elements R13b and R13 in the electric circuit are assigned to 1305.
Three target elements of 13c and R13d are assigned, and 1306 is assigned the target element R13c in the electric circuit. As described above, in the resistance group shown in FIG. 13A, three target elements are assigned to the resistance element 1305, and the congestion degree is 2 and the congestion degree is the highest. The target element R1 assigned to this resistance element 1305,
The evaluation function value of each of R2 and R3 is calculated.
【0086】ここで評価関数について説明する。評価関
数は、目的素子と接続電気回路素子に割り当てられた実
素子間の配線長、組み合わせ実素子内配線長、配線割り
当て決定素子との配線長、割り当て実素子の混雑度をそ
れぞれパラメータとして持ち、必要な重み付けを行って
計算を実行して値を求めたものであり、実素子の割り当
ての結果を数値化し最適化処理の目安とするものであ
る。素子間配線長、素子内配線長は前述したので、ここ
では配線割り当て決定素子との配線長および目的素子混
雑度について説明する。Here, the evaluation function will be described. The evaluation function has the wiring length between the target element and the actual element assigned to the connection electric circuit element, the wiring length within the combined actual element, the wiring length with the wiring assignment determining element, and the congestion degree of the assigned actual element as parameters, The values are obtained by performing necessary weighting calculations, and the results of real element allocation are digitized and used as a guide for optimization processing. Since the inter-element wiring length and the intra-element wiring length have been described above, the wiring length with the wiring allocation determining element and the target element congestion degree will be described here.
【0087】図14は配線割り当て決定素子との配線長
を説明する図である。配線割り当て決定素子との配線長
を短くする処理手順は前述した図4で説明したステップ
S405〜S407を繰り返す手順である。図14にお
いて1401と1402は目的素子M1の割り当てが決
定した実素子で、1403と1404は目的素子M1に
対して素子値を実現するためにさらに1401と140
2に組み合わせる候補である実素子である。前述したよ
うにマスタースライス上にはあらかじめ決められた値の
実素子しか形成されていないため、目的素子の値を実現
するためにはマスタースライス上の実素子を複数本組み
合わせて一つの目的素子を実現する。そのため割り当て
が決定した1401と1402にさらに組み合わせる残
りの素子が離れた実素子に割り当てられることを防ぐ必
要がある。そのため既に配線割り当てが決定された実素
子との間の配線長を評価関数の一項目とする。FIG. 14 is a diagram for explaining the wiring length with the wiring allocation determining element. The processing procedure for shortening the wiring length with the wiring assignment determining element is a procedure for repeating steps S405 to S407 described in FIG. In FIG. 14, 1401 and 1402 are real elements for which the allocation of the target element M1 is determined, and 1403 and 1404 are further 1401 and 140 in order to realize element values for the target element M1.
It is a real element that is a candidate to be combined with 2. As described above, since only a real element having a predetermined value is formed on the master slice, in order to realize the value of the target element, one real element on the master slice is combined with one target element. To be realized. Therefore, it is necessary to prevent the remaining elements to be further combined with 1401 and 1402, which have been assigned, from being assigned to distant real elements. Therefore, the wiring length with the actual element whose wiring allocation has already been determined is one item of the evaluation function.
【0088】次に目的素子混雑度について図15を用い
て説明する。Next, the degree of congestion of the target device will be described with reference to FIG.
【0089】図15は目的素子混雑度を説明する図であ
る。抵抗実素子アレイに対して3つの目的素子が互いに
重複して割り当てられている。マスタースライス上の実
素子の混雑度は図11で説明したように割り当てられた
目的素子の本数から1を引いた値と定義されるのでそれ
ぞれ抵抗実素子1503、1502、1504は混雑度
0、1503は混雑度2となる。目的素子混雑度とは、
目的素子が割り当てられたマスタースライス上の実素子
の各混雑度の和と定義する。つまり目的素子混雑度が高
いということは、その目的素子のマスタースライス上の
実素子への割り当て方によれば重複が多く発生し、割り
当てた実素子に他の目的素子の割り当ても集中している
ことを意味する。FIG. 15 is a diagram for explaining the degree of congestion of the target element. Three target elements are assigned to the resistance real element array in an overlapping manner. Since the congestion degree of the real elements on the master slice is defined as a value obtained by subtracting 1 from the number of target elements allocated as described in FIG. 11, the resistance real elements 1503, 1502, and 1504 respectively have the congestion degrees of 0 and 1503. Has a congestion degree of 2. What is the target element congestion degree?
It is defined as the sum of the congestion degrees of the real elements on the master slice to which the target element is assigned. In other words, the high degree of congestion of the target element means that a lot of duplication occurs depending on how the target element is allocated to the real element on the master slice, and the allocation of other target elements is concentrated in the allocated real element. Means that.
【0090】次に、図13(b)は混雑度の高いマスタ
ースライス上の抵抗素子1305を仮に割り当て禁止と
し、再度、R13b、R13c、R13dの再割り当て
を行った結果である。図13(b)に示した結果では、
R13bは素子内配線長が長くなり、評価関数の再割り
当て前と後での値の差が一番大きくなっている。つまり
回路全体の効率を考慮するとマスタースライス上の抵抗
素子1305を目的素子R13bに割り当てることが最
も好ましいことがわかる。Next, FIG. 13 (b) shows a result of reassigning R13b, R13c, and R13d again by temporarily disabling the resistor element 1305 on the master slice having a high congestion degree. In the result shown in FIG. 13 (b),
In R13b, the wiring length in the element is long, and the difference between the values before and after the reallocation of the evaluation function is the largest. That is, considering the efficiency of the entire circuit, it is most preferable to assign the resistance element 1305 on the master slice to the target element R13b.
【0091】図13(c)はマスタースライス上の抵抗
素子1305の割り当て決定目的素子をR13bとした
図である。他の目的素子R13c、R14dはそれぞれ
1305とは異なるマスタースライス上の実素子へ割り
当てられている。このようにR13c、R13dは再割
り当てにより重複している割り当て本数が変更されたの
で混雑度を更新しなければならない。図12のステップ
S1206に示したように、情報付加部111において
混雑度の更新処理を行う。FIG. 13C is a diagram in which the element for deciding the allocation of the resistance element 1305 on the master slice is R13b. The other target elements R13c and R14d are respectively assigned to real elements on the master slice different from 1305. As described above, since the number of overlapping assignments of R13c and R13d is changed by the reallocation, the congestion degree must be updated. As shown in step S1206 of FIG. 12, the information adding unit 111 performs the congestion degree updating process.
【0092】この図13(a)〜(c)を用いて説明し
た処理をマスタースライス上のすべての実素子の混雑度
が0になるまで繰り返し行うことにより、電気回路中の
すべての目的素子をマスタースライス上の実素子へ重複
することなく割り当てることが可能となる。By repeating the processing described with reference to FIGS. 13A to 13C until the congestion degree of all the real elements on the master slice becomes 0, all the target elements in the electric circuit are removed. It becomes possible to allocate to the real element on the master slice without duplication.
【0093】なお、図12に示した素子割り当て決定部
112のステップS1204における目的素子のマスタ
ースライス上への実素子への再割り当ての手法は図3を
もって示した前述の素子割り当てにおいて用いた手法を
同じものである。The method of reallocating the target element to the real element on the master slice in step S1204 of the element allocation determining unit 112 shown in FIG. 12 is the same as the method used in the element allocation shown in FIG. Are the same.
【0094】配線部114は従来の手法である迷路法な
どを用いてマスタースライス上の実素子間の配線を行
い、半導体集積回路のレイアウト設計方法を完成する。The wiring section 114 completes the layout design method of the semiconductor integrated circuit by performing wiring between the actual elements on the master slice by using the maze method which is a conventional method.
【0095】以上のように本実施形態によれば、半導体
集積回路は、まず目的素子のマスタースライス上の実素
子への初期割り当てを行った後、素子混雑度情報に基づ
いて混雑度の高い実素子から素子間配線長、素子内配線
長、割り当て決定素子との配線長、目的素子混雑度を考
慮をしながら割り当てを決定していくことにより、目的
素子の割り当ての集中を避けつつ、接続している素子と
の配線長が冗長となることなく、効率の良いレイアウト
設計が可能となる。As described above, according to the present embodiment, the semiconductor integrated circuit first performs the initial allocation of the target element to the real element on the master slice, and then, based on the element congestion degree information, the real degree of congestion is high. Connections are made while avoiding concentration of allocation of target elements by deciding allocation from elements by taking inter-element wiring length, intra-element wiring length, wiring length with allocation decision element, and target element congestion degree into consideration. It is possible to design an efficient layout without making the wiring length with the existing elements redundant.
【0096】なお本実施形態では、評価関数は素子間配
線長、素子内配線長、割り当てが決定した実素子との配
線長、目的素子混雑度の値の和を評価関数のパラメータ
として採用するが、一部のパラメータのサブセットでも
良く、それぞれの項目に重みづけを行い、評価項目の優
先づけを行って素子割り当て決定部112の処理を行っ
ても構わない。In this embodiment, the evaluation function employs the sum of the inter-element wiring length, the intra-element wiring length, the wiring length with the real element for which allocation is determined, and the target element congestion degree value as the parameter of the evaluation function. Alternatively, a subset of some parameters may be used, and each item may be weighted and the evaluation item may be prioritized before the processing of the element allocation determination unit 112 is performed.
【0097】[0097]
【発明の効果】本発明の半導体集積回路設計装置によれ
ば、マスタースライス上の実素子上に重なりを許した電
気回路素子の割り当てを行い、実素子の割り当てに関す
る混雑度を利用して優先的に割り当てを決定する実素子
を選択していくことにより、実素子の割り当ての集中を
避けることができる。According to the semiconductor integrated circuit designing apparatus of the present invention, electric circuit elements that allow overlapping on the real elements on the master slice are allocated, and priority is given by utilizing the congestion degree regarding the allocation of the real elements. It is possible to avoid concentration of allocation of real elements by selecting real elements whose allocation is to be determined.
【0098】また本発明の半導体集積回路設計装置によ
れば、割り当て決定手段において、最も混雑度の高い実
素子を仮に割り当て禁止素子として再割り当てを行い、
評価関数を導入してその実素子を割り当てる目的素子を
決定することにより最適な割り当てが可能となる。Further, according to the semiconductor integrated circuit designing apparatus of the present invention, the allocation determining means reallocates the real element having the highest congestion degree as the allocation prohibiting element,
Optimal allocation becomes possible by introducing an evaluation function and determining the target element to which the actual element is allocated.
【0099】さらに本発明の半導体集積回路設計装置に
よれば、割り当て決定手段において、評価関数の評価項
目に素子間の配線長を加えることにより、素子間の配線
が冗長になることを防ぐことができる。さらに評価項目
に素子内配線長を加えることにより、組み合わせ実素子
同士の距離が遠くなることを防ぐことができる。さらに
評価項目に目的素子混雑度を加えることにより、実素子
の割り当て集中をより効率良く避けることが可能とな
る。評価項目に割り当て決定素子との距離を加えること
により、目的素子についてすでに一部の実素子の割り当
てが決定している場合でも他の割り当てる必要のある実
素子との距離が遠方にならず、まとまった位置での割り
当てが可能となる。Further, according to the semiconductor integrated circuit designing apparatus of the present invention, in the allocation determining means, it is possible to prevent the wiring between the elements from becoming redundant by adding the wiring length between the elements to the evaluation item of the evaluation function. it can. Further, by adding the in-element wiring length to the evaluation item, it is possible to prevent the combined actual elements from becoming far from each other. Furthermore, by adding the congestion degree of the target element to the evaluation item, it becomes possible to more efficiently avoid the concentration of allocation of actual elements. By adding the distance to the allocation decision element to the evaluation items, even if some real elements have already been allocated to the target element, the distance from other real elements that need to be allocated does not become distant, and it is collected. It is possible to assign at different positions.
【図1】本発明の一実施形態である半導体集積回路設計
装置のハードウェア構成を示すブロック図FIG. 1 is a block diagram showing a hardware configuration of a semiconductor integrated circuit designing device according to an embodiment of the present invention.
【図2】本発明の一実施形態である半導体集積回路装置
の機能的構成を示すブロック図FIG. 2 is a block diagram showing a functional configuration of a semiconductor integrated circuit device according to an embodiment of the present invention.
【図3】本発明の半導体集積回路設計装置による半導体
集積回路の設計手順を示すフローチャートFIG. 3 is a flowchart showing a procedure for designing a semiconductor integrated circuit by the semiconductor integrated circuit designing apparatus of the present invention.
【図4】ステップS301の素子割り当てのより詳細な
処理手順の一例を示すフローチャートFIG. 4 is a flowchart showing an example of a more detailed processing procedure of element allocation in step S301.
【図5】実素子間配線長の定義の一例を示す説明図FIG. 5 is an explanatory diagram showing an example of the definition of the actual inter-element wiring length.
【図6】実素子内配線長の定義の一例を示す説明図FIG. 6 is an explanatory diagram showing an example of the definition of the actual element wiring length.
【図7】実素子混雑度の定義の一例を示す説明図FIG. 7 is an explanatory diagram showing an example of the definition of the actual element congestion degree.
【図8】素子割り当てにおいて割り当ての接続基準点の
一例を示す説明図FIG. 8 is an explanatory diagram showing an example of connection reference points for allocation in element allocation.
【図9】割り当ての接続基準点からの素子の割り当ての
一例を示す説明図FIG. 9 is an explanatory diagram showing an example of element allocation from a connection reference point for allocation.
【図10】ステップS302の実素子混雑度情報付加の
より詳細な処理手順の一例を示すフローチャートFIG. 10 is a flowchart showing an example of a more detailed processing procedure for adding actual element congestion degree information in step S302.
【図11】実素子混雑度の一例を示す説明図FIG. 11 is an explanatory diagram showing an example of an actual element congestion degree.
【図12】ステップS304の割り当て決定のより詳細
な処理手順の一例を示すフローチャートFIG. 12 is a flowchart showing an example of a more detailed processing procedure for determining allocation in step S304.
【図13】実素子の再割り当ての一例を示す説明図FIG. 13 is an explanatory diagram showing an example of reallocation of real elements.
【図14】割り当ての既に決定している実素子との配線
長の一例を示す説明図FIG. 14 is an explanatory diagram showing an example of a wiring length with an actual element whose allocation has already been determined.
【図15】目的素子混雑度の一例を示す説明図FIG. 15 is an explanatory diagram showing an example of a congestion degree of a target element.
【図16】従来の素子割り当て手法の一例を示す説明図FIG. 16 is an explanatory diagram showing an example of a conventional element allocation method.
101 表示部 102 入力部 103 CPU 104 記憶部 110 素子割り当て部 111 混雑度情報付加部 112 素子割り当て決定部 113 制御部 114 配線部 101 display 102 Input section 103 CPU 104 memory 110 element allocation unit 111 Congestion degree information addition unit 112 element allocation determining unit 113 control unit 114 wiring section
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−79437(JP,A) 特開 平6−314316(JP,A) (58)調査した分野(Int.Cl.7,DB名) H01L 27/118 ─────────────────────────────────────────────────── ─── Continuation of the front page (56) Reference JP-A-3-79437 (JP, A) JP-A-6-314316 (JP, A) (58) Fields investigated (Int.Cl. 7 , DB name) H01L 27/118
Claims (10)
中の素子を、マスタースライス上にあらかじめ形成され
ている実素子に割り当てて配線することにより、半導体
集積回路を設計する半導体集積回路設計装置であって、
割り当てが決まっていない電気回路素子を割り当てがき
まっていない実素子アレイに対して他の電気回路素子と
の重複を許して割り当てを試みる素子割り当て手段と、
前記素子割り当て手段による処理の結果、電気回路素子
の割り当てが重複している実素子に割り当てる電気回路
素子を一に決定する素子割り当て決定手段を備え、前記
実素子アレイに対する前記電気回路素子すべての割り当
てが一に決定するまで前記素子割り当て決定手段による
処理を繰り返すことを特徴とする半導体集積回路設計装
置。1. A semiconductor integrated circuit designing apparatus for designing a semiconductor integrated circuit by allocating elements in an electric circuit to be designed as a semiconductor integrated circuit to actual elements preliminarily formed on a master slice and wiring the elements. hand,
Element allocation means for allowing allocation of electric circuit elements for which allocation has not been decided yet to other electric circuit elements to the actual element array for which allocation has not been decided,
As a result of the processing by the element allocating means, an element allocation deciding means for deciding one of the electric circuit elements to be allocated to the real elements in which the allocation of the electric circuit elements is overlapped is provided, and all the electric circuit elements are allocated to the real element array. 2. The semiconductor integrated circuit designing device, wherein the processing by the element allocation determining means is repeated until 1 is determined.
みる電気回路素子を割り当てることのできる実素子の候
補が複数ある場合、前記電気回路素子の端子に電気回路
上接続されるすべての電気回路素子を接続電気回路素子
として検索し、前記接続電気回路素子が割り当てられて
いる実素子の接続基準点を検出し、前記接続基準点を囲
む矩形の中心座標を算出し、前記中心座標からの距離が
最短となる位置にある実素子に割り当てる手段である請
求項1に記載の半導体集積回路設計装置。2. The element allocating means, when there are a plurality of real element candidates to which an electric circuit element to be attempted to be allocated is present, all the electric circuit elements connected to the terminals of the electric circuit element on the electric circuit are selected. The connection reference point of the actual element to which the connection electric circuit element is assigned is detected, the center coordinates of the rectangle surrounding the connection reference point are calculated, and the distance from the center coordinates is the shortest. 2. The semiconductor integrated circuit design device according to claim 1, which is a means for allocating to an actual element located at the position.
みる電気回路素子を割り当てることのできる実素子の候
補が複数ある場合、前記電気回路素子の端子に電気回路
上接続されるすべての電気回路素子を接続電気回路素子
として検索し、前記接続電気回路素子が割り当てられて
いる実素子の接続基準点を検出し、前記接続基準点を囲
む矩形の中心座標を算出し、前記中心座標からのマンハ
ッタン距離が最短となる位置にある実素子に割り当てる
手段である請求項1に記載の半導体集積回路設計装置。3. The element assigning means, when there are a plurality of real element candidates to which an electrical circuit element to be attempted to be assigned is present, all the electrical circuit elements connected to the terminals of the electrical circuit element on the electrical circuit are selected. The connection electric circuit element is searched, the connection reference point of the actual element to which the connection electric circuit element is assigned is detected, the center coordinates of a rectangle surrounding the connection reference point are calculated, and the Manhattan distance from the center coordinates is The semiconductor integrated circuit design device according to claim 1, which is a means for allocating to an actual element located at the shortest position.
みる電気回路素子の素子値を実現するため複数の実素子
を組み合わせて割り当てる場合、前記組み合わせとなる
複数の実素子の中心間のマンハッタン距離の和が最小と
なる実素子の組み合わせに割り当てる手段である請求項
1に記載の半導体集積回路設計装置。4. The element allocating means, when allocating a plurality of real elements in combination in order to realize an element value of an electric circuit element to be tried to allocate, a sum of Manhattan distances between centers of the plurality of real elements to be combined. The semiconductor integrated circuit design apparatus according to claim 1, wherein the semiconductor integrated circuit design apparatus is means for allocating to a combination of real elements that minimizes.
みる電気回路素子を割り当てることのできる実素子の候
補が複数ある場合、前記実素子の候補のうち、他の電気
回路素子の割り当て重複が少ない実素子に割り当てる手
段である請求項1に記載の半導体集積回路設計装置。5. The element allocating means, when there are a plurality of real element candidates to which an electric circuit element to be tried to be allocated can be found, among the real element candidates, an allocation duplication of other electric circuit elements is small. 2. The semiconductor integrated circuit design device according to claim 1, which is means for allocating to an element.
みる電気回路素子を割り当てることのできる実素子の候
補が複数ある場合、前記電気回路素子の端子に電気回路
上接続されるすべての電気回路素子を接続電気回路素子
として検索し、前記接続電気回路素子が割り当てられて
いる実素子の接続基準点を検出し、前記接続基準点を囲
む矩形の中心座標を算出し、前記中心座標からの距離を
第1のパラメータとし、前記中心座標からのマンハッタ
ン距離を第2のパラメータとし、割り当てを試みる電気
回路素子の素子値を実現するため複数の実素子を組み合
わせて割り当てる場合、前記組み合わせとなる複数の実
素子の中心間のマンハッタン距離の和を第3のパラメー
タとし、前記実素子の候補に対する他の電気回路素子の
割り当て重複数を第4のパラメータとし、前記第1〜第
4のパラメータを利用した評価により割り当てる電気回
路素子を選択する手段である請求項1に記載の半導体集
積回路設計装置。6. The element allocating means, when there are a plurality of actual element candidates to which an electric circuit element to be tried to be allocated can be found, all the electric circuit elements connected to the terminals of the electric circuit element on the electric circuit are selected. The connection reference point of the actual element to which the connection electric circuit element is assigned is detected, the center coordinates of a rectangle surrounding the connection reference point are calculated, and the distance from the center coordinates is calculated as In the case of assigning a plurality of real elements in combination in order to realize the element value of the electric circuit element that is to be assigned, using the Manhattan distance from the center coordinate as the second parameter The third parameter is the sum of Manhattan distances between the centers of, and 4. The semiconductor integrated circuit design device according to claim 1, which is a means for selecting an electric circuit element to be assigned by evaluation using the first to fourth parameters as the fourth parameter.
割り当て手段による割り当ての結果、電気回路素子の割
り当てが重複している実素子を仮割り当て禁止実素子と
する仮割り当て禁止手段と、前記仮割り当て禁止実素子
に割り当てられている重複している電気回路素子を検索
する重複電気回路素子検索手段と、前記素子割り当て手
段を用いて前記重複電気回路素子を前記仮割り当て禁止
実素子以外の他の実素子に再割り当てを試みる再割り当
て手段と、前記再割り当て手段により割り当てた実素子
と前記検出したそれぞれの接続基準点までの距離の合計
が、前記仮割り当て禁止実素子から前記検出したそれぞ
れの接続基準点までの距離の合計から最大の増分を持つ
電気回路素子を前記仮割り当て禁止実素子に割り当てる
ことを決定し、その他の前記重複電気回路素子の割り当
て実素子を前記再割り当て手段により割り当てた実素子
に更新する手段である請求項2に記載の半導体集積回路
設計装置。7. The tentative allocation prohibiting means, wherein the element allocation deciding means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocating means to be a tentative allocation prohibiting real element, and the tentative allocation. A duplicate electric circuit element searching means for searching a duplicate electric circuit element assigned to a prohibited real element, and a duplicate electric circuit element other than the temporary assignment prohibited real element using the element assigning means. A total of distances to the reallocation means for reallocating to the elements, the real elements allocated by the reallocation means and the detected connection reference points is the connection reference detected from the temporary allocation prohibited real element. It is decided to allocate the electric circuit element having the maximum increment from the sum of the distances to the points to the temporary allocation prohibited real element, and 3. The semiconductor integrated circuit design device according to claim 2, which is means for updating another real element assigned to the duplicate electric circuit element to the real element assigned by the reassigning means.
割り当て手段による割り当ての結果、電気回路素子の割
り当てが重複している実素子を仮割り当て禁止実素子と
する仮割り当て禁止手段と、前記仮割り当て禁止実素子
に割り当てられている重複している電気回路素子を検索
する重複電気回路素子検索手段と、前記素子割り当て手
段を用いて前記重複電気回路素子を前記仮割り当て禁止
実素子以外の他の実素子に再割り当てを試みる再割り当
て手段と、前記再割り当て手段において算出した組み合
わせとなる複数の実素子の中心間のマンハッタン距離の
合計が、前記素子割り当て手段において算出した組み合
わせとなる複数の実素子の中心間のマンハッタン距離の
合計から最大の増分を持つ電気回路素子を前記仮割り当
て禁止実素子に割り当てることを決定し、その他の前記
重複電気回路素子の割り当て実素子を前記再割り当て手
段により割り当てた実素子に更新する手段である請求項
4に記載の半導体集積回路設計装置。8. The tentative allocation prohibiting means, wherein the element allocation deciding means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocating means to be a tentative allocation prohibiting real element, and the tentative allocation. A duplicate electric circuit element searching means for searching a duplicate electric circuit element assigned to a prohibited real element, and a duplicate electric circuit element other than the temporary assignment prohibited real element using the element assigning means. The total of the Manhattan distances between the reallocation means for attempting reallocation to the elements and the centers of the plurality of real elements calculated in the reallocation means is the total number of real elements in the combination calculated in the element allocation means. The electric circuit element having the maximum increment from the total Manhattan distance between the centers is assigned to the provisional allocation prohibited real element. 5. The semiconductor integrated circuit designing device according to claim 4, which is means for deciding to apply and updating the other real elements allocated to the duplicate electric circuit elements to the real elements allocated by the reallocation means.
割り当て手段による割り当ての結果、電気回路素子の割
り当てが重複している実素子を仮割り当て禁止実素子と
する仮割り当て禁止手段と、前記仮割り当て禁止実素子
に割り当てられている重複している電気回路素子を検索
する重複電気回路素子検索手段と、前記素子割り当て手
段を用いて前記重複電気回路素子を前記仮割り当て禁止
実素子以外の他の実素子に再割り当てを試みる再割り当
て手段と、前記再割り当て手段による割り当てた実素子
に割り当てられている電気回路素子の重複数の合計が最
も多くなる電気回路素子を前記仮割り当て禁止実素子に
割り当てることを決定し、その他の前記重複電気回路素
子の割り当て実素子を前記再割り当て手段により割り当
てた実素子に更新する手段である請求項5に記載の半導
体集積回路設計装置。9. The tentative allocation prohibiting means, wherein the element allocation deciding means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocating means to be a tentative allocation prohibiting real element, and the tentative allocation. A duplicate electric circuit element searching means for searching a duplicate electric circuit element assigned to a prohibited real element, and a duplicate electric circuit element other than the temporary assignment prohibited real element using the element assigning means. Assigning to the temporary assignment prohibited real element an electric circuit element having a maximum sum of a plurality of duplications of the reallocation means for reassigning the element and the real circuit element assigned by the reallocation means. And the other real elements assigned to the duplicated electric circuit elements are updated to the real elements assigned by the reassigning means. 6. The semiconductor integrated circuit design device according to claim 5, which is a means for performing the above.
子割り当て手段による割り当ての結果、電気回路素子の
割り当てが重複している実素子を仮割り当て禁止実素子
とする仮割り当て禁止手段と、前記仮割り当て禁止実素
子に割り当てられている重複している電気回路素子を検
索する重複電気回路素子検索手段と、前記素子割り当て
手段を用いて前記重複電気回路素子を前記仮割り当て禁
止実素子以外の他の実素子に再割り当てを試みる再割り
当て手段と、前記再割り当て手段で算出した評価結果
が、前記素子割り当て手段で算出した評価結果から最も
悪くなってしまう電気回路素子を前記仮割り当て禁止実
素子に割り当てることを決定し、その他の前記重複電気
回路素子の割り当て実素子を前記再割り当て手段により
割り当てた実素子に更新する手段である請求項6に記載
の半導体集積回路設計装置。10. The tentative allocation prohibiting means, wherein the element allocation deciding means sets a real element whose electric circuit element allocation is duplicated as a result of the allocation by the element allocating means to be a tentative allocation prohibiting real element, and the tentative allocation. A duplicate electric circuit element searching means for searching a duplicate electric circuit element assigned to a prohibited real element, and a duplicate electric circuit element other than the temporary assignment prohibited real element using the element assigning means. Reallocating means for attempting reallocation to the elements, and allocating an electric circuit element whose evaluation result calculated by the reallocating means becomes the worst from the evaluation result calculated by the element allocating means to the temporary allocation prohibited real element. And the other real elements assigned to the duplicate electric circuit elements are changed to the real elements assigned by the reassigning means. The semiconductor integrated circuit design device according to claim 6, which is a new means.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP35538197A JP3369093B2 (en) | 1997-12-24 | 1997-12-24 | Semiconductor integrated circuit design equipment |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP35538197A JP3369093B2 (en) | 1997-12-24 | 1997-12-24 | Semiconductor integrated circuit design equipment |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11186529A JPH11186529A (en) | 1999-07-09 |
| JP3369093B2 true JP3369093B2 (en) | 2003-01-20 |
Family
ID=18443611
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP35538197A Expired - Fee Related JP3369093B2 (en) | 1997-12-24 | 1997-12-24 | Semiconductor integrated circuit design equipment |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3369093B2 (en) |
-
1997
- 1997-12-24 JP JP35538197A patent/JP3369093B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH11186529A (en) | 1999-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6070108A (en) | Method and apparatus for congestion driven placement | |
| US7926017B2 (en) | Layout method for a chip | |
| US8074187B2 (en) | Method and apparatus for inserting metal fill in an integrated circuit (“IC”) layout | |
| WO1998037573A2 (en) | Integrated circuit floor plan optimization system | |
| CN111597768B (en) | Methods, devices and computer-readable storage media for constructing layout pattern sets | |
| JPS60130843A (en) | Method of setting connecting path | |
| US20090089722A1 (en) | Method and System for Mapping Source Elements to Destination Elements as Interconnect Routing Assignments | |
| US10229239B2 (en) | Capacity model for global routing | |
| Lin et al. | An effective netlist planning approach for double-sided signal routing | |
| JP2002527830A (en) | Channel relay method and apparatus | |
| US6904584B2 (en) | Method and system for placing logic nodes based on an estimated wiring congestion | |
| JP3369093B2 (en) | Semiconductor integrated circuit design equipment | |
| JPH08274179A (en) | Method and device for designing wiring | |
| US5548747A (en) | Bit stack wiring channel optimization with fixed macro placement and variable pin placement | |
| US7596773B2 (en) | Automating optimal placement of macro-blocks in the design of an integrated circuit | |
| US6704915B1 (en) | Process for fast cell placement in integrated circuit design | |
| US6505336B1 (en) | Channel router with buffer insertion | |
| WO2006137119A1 (en) | Floor plan device, floor plan program, and computer-readable recording medium having the same program recorded | |
| US7397256B2 (en) | Automatic design method for semiconductor device | |
| JP2766284B2 (en) | Layout support device for semiconductor integrated circuit | |
| US5875118A (en) | Integrated circuit cell placement parallelization with minimal number of conflicts | |
| JPH0645443A (en) | Hierarchical wiring method | |
| Lin et al. | Innovative Approaches to Addressing Challenges in 3D Macro Placement | |
| JP3068492B2 (en) | Automatic placement and routing method | |
| JP2656344B2 (en) | Automatic wiring method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |