JP2010134498A - Integrated circuit design program, integrated circuit design device and integrated circuit design method - Google Patents

Integrated circuit design program, integrated circuit design device and integrated circuit design method Download PDF

Info

Publication number
JP2010134498A
JP2010134498A JP2008307004A JP2008307004A JP2010134498A JP 2010134498 A JP2010134498 A JP 2010134498A JP 2008307004 A JP2008307004 A JP 2008307004A JP 2008307004 A JP2008307004 A JP 2008307004A JP 2010134498 A JP2010134498 A JP 2010134498A
Authority
JP
Japan
Prior art keywords
group
distribution
ram
integrated circuit
circuit design
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.)
Granted
Application number
JP2008307004A
Other languages
Japanese (ja)
Other versions
JP5257030B2 (en
Inventor
Akira Shibata
亮 柴田
Eiji Fujine
栄司 藤根
Kenji Wada
研二 和田
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2008307004A priority Critical patent/JP5257030B2/en
Publication of JP2010134498A publication Critical patent/JP2010134498A/en
Application granted granted Critical
Publication of JP5257030B2 publication Critical patent/JP5257030B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To prevent a RAM (Random Access Memory) from being disabled due to a test executed after production of an integrated circuit, to prevent design rework, to reduce the number of tests after the production, and to reduce test cost. <P>SOLUTION: In designing the integrated circuit, a plurality of RAMs are classified into a plurality of groups based on a current consumption value of each RAM, a weighted current consumption value obtained by weighting the current consumption value based on the location of each RAM, or a value obtained by reflecting a distance between elements in the weighted current consumption value. Core noise is analyzed for each group, and it is determined whether or not an obtained power supply drop amount satisfies a predetermined condition. As to the group wherein the power supply drop amount satisfies the predetermined condition, the RAMs included in the group are defined to simultaneously operate. As to the group wherein the power supply drop amount does not satisfy the predetermined condition, a classification condition of the RAMs is changed, and the RAMs are classified again. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

この発明は、集積回路設計プログラム、集積回路設計装置および集積回路設計方法に関する。   The present invention relates to an integrated circuit design program, an integrated circuit design apparatus, and an integrated circuit design method.

従来、コンピュータを用いたLSI(Large Scale Integration)の設計システムとして、LSI動作保証設計システムが知られている。このシステムは、セル接続情報と、このセル接続情報に含まれたセルの動的消費電力値とから、レイアウト時に隔離すべきセルの組み合わせを隔離セル組と定義する隔離制約情報を生成する隔離制約情報生成手段と、この隔離制約情報生成手段で生成された隔離制約情報に基づいてレイアウトを生成するレイアウト生成手段とを有していることを特徴とする(例えば、特許文献1参照。)。   2. Description of the Related Art Conventionally, an LSI operation guarantee design system is known as an LSI (Large Scale Integration) design system using a computer. This system generates isolation constraint information that defines a combination of cells to be isolated at the time of layout as an isolation cell set from the cell connection information and the dynamic power consumption value of the cell included in the cell connection information. It has an information generation means and a layout generation means for generating a layout based on the isolation constraint information generated by the isolation constraint information generation means (see, for example, Patent Document 1).

特開2000−164723号公報JP 2000-164723 A

しかしながら、従来の技術では、設計段階において、複数のRAM(Random Access Memory)を、同時に動作するRAMごとに複数のグループに分けるための基準がないため、RAMを適切にグループ分けすることができない。そのため、集積回路の製造後に実施されるテストにおいて、次のような問題が生じることがある。1グループ当たりのRAMの個数を少なく見積もった場合には、グループ数が多くなる。グループごとにテストを行う必要がある場合には、グループ数が増えるとテストの回数が増えてしまい、テスト費用が嵩む。一方、1グループ当たりのRAMの個数が多すぎると、テストの際に同時に動作するRAMの数が増えるため、RAMの動作に起因するコア部の電源ノイズが大きくなる。その結果、RAMが正常に動作しなくなり、テストを正常に行うことができない。この場合には、再び設計をやり直す必要があるため、設計開始から製造終了までの全体の時間および費用が増大するという問題がある。   However, in the conventional technology, there is no standard for dividing a plurality of RAMs (Random Access Memory) into a plurality of groups for each RAM operating at the same time. Therefore, the RAMs cannot be appropriately grouped. Therefore, the following problems may occur in tests performed after the integrated circuit is manufactured. When the number of RAMs per group is estimated to be small, the number of groups increases. When it is necessary to perform a test for each group, the number of tests increases as the number of groups increases, and the test cost increases. On the other hand, if the number of RAMs per group is too large, the number of RAMs that operate simultaneously during the test increases, so that the power supply noise of the core part due to the operation of the RAMs increases. As a result, the RAM does not operate normally and the test cannot be performed normally. In this case, since it is necessary to design again, there is a problem that the entire time and cost from the start of design to the end of production increase.

この集積回路設計プログラム、集積回路設計装置および集積回路設計方法は、複数の素子を電気的特性値に基づいて複数のグループに振り分け、各グループについてコアノイズを解析し、得られた電源ドロップ量が所定の条件を満たすか否かを判定する。電源ドロップ量が所定の条件を満たすグループについては、そのグループに含まれる素子を同時に動作させる素子とする。一方、電源ドロップ量が所定の条件を満たさないグループについては、素子の振り分け条件を変更して素子の振り分けからやり直す。素子の電気的特性値として、消費電流値、素子の配置位置に基づいて消費電流値に重み付けをした重み付け消費電流値、または重み付け消費電流値に素子間の距離を考慮した値を用いることができる。   In this integrated circuit design program, integrated circuit design apparatus, and integrated circuit design method, a plurality of elements are allocated to a plurality of groups based on electrical characteristic values, core noise is analyzed for each group, and the obtained power supply drop amount is predetermined. It is determined whether or not the above condition is satisfied. For a group in which the power drop amount satisfies a predetermined condition, the elements included in the group are elements that are operated simultaneously. On the other hand, for the group in which the power drop amount does not satisfy the predetermined condition, the element distribution condition is changed and the process is repeated from the element distribution. As the electrical characteristic value of the element, a consumption current value, a weighted consumption current value obtained by weighting the consumption current value based on the arrangement position of the element, or a value considering the distance between the elements in the weighted consumption current value can be used. .

この集積回路設計プログラム、集積回路設計装置および集積回路設計方法によれば、設計段階において、複数の素子が、同時に動作する素子ごとのグループに適切に振り分けられるので、集積回路の製造後に実施されるテストの回数が減り、テスト費用の削減を図ることができる。また、そのテストを正常に行うことができる。この場合には、再び設計をやり直さずに済むので、設計開始から製造終了までの全体の時間および費用を削減することができる。   According to the integrated circuit design program, the integrated circuit design apparatus, and the integrated circuit design method, since a plurality of elements are appropriately distributed to groups for each element that operates simultaneously in the design stage, the integrated circuit design program is implemented after the integrated circuit is manufactured. The number of tests can be reduced, and the test cost can be reduced. Moreover, the test can be performed normally. In this case, since it is not necessary to perform the design again, the overall time and cost from the start of design to the end of production can be reduced.

以下に添付図面を参照して、この集積回路設計プログラム、集積回路設計装置および集積回路設計方法の好適な実施の形態を詳細に説明する。   Exemplary embodiments of an integrated circuit design program, an integrated circuit design apparatus, and an integrated circuit design method will be described below in detail with reference to the accompanying drawings.

(概略)
図1は、実施の形態にかかる集積回路設計装置の構成を示す説明図である。図1に示すように、集積回路設計装置は、集積回路の設計時に、例えば、RAM(素子)の消費電流値、RAMの配置位置を考慮したRAMの消費電流値、またはRAMの配置位置とRAM間の距離を考慮した消費電流値のいずれかに基づいて複数のRAMを、同時に動作するRAMごとのグループに適切に振り分ける。
(Outline)
FIG. 1 is an explanatory diagram of a configuration of an integrated circuit design apparatus according to an embodiment. As shown in FIG. 1, the integrated circuit design apparatus, for example, at the time of designing an integrated circuit, for example, a current consumption value of a RAM (element), a current consumption value of a RAM in consideration of a RAM arrangement position, or a RAM arrangement position and a RAM A plurality of RAMs are appropriately allocated to groups of RAMs operating simultaneously based on any of the current consumption values considering the distance between them.

(集積回路設計装置の機能的構成)
図1に示すように、集積回路設計装置は、選択部1、第1振り分け部2、第2振り分け部3、第3振り分け部4、解析部5、判定部6、決定部7および変更部8を備えている。選択部1は、チップ内のRAMの分布に基づいて第1振り分け部2、第2振り分け部3または第3振り分け部4を選択する。第1振り分け部2は、RAMの平均消費電流値に基づいて複数のRAMを、同時に動作するRAMごとのグループに振り分ける。第2振り分け部3は、RAMの配置位置を考慮してRAMの平均消費電流値に重み付けをした重み付け消費電流値に基づいて複数のRAMを、同時に動作するRAMごとのグループに振り分ける。第3振り分け部4は、前記重み付け消費電流値にRAM間の距離を考慮した値に基づいて複数のRAMを、同時に動作するRAMごとのグループに振り分ける。
(Functional configuration of integrated circuit design equipment)
As illustrated in FIG. 1, the integrated circuit design apparatus includes a selection unit 1, a first distribution unit 2, a second distribution unit 3, a third distribution unit 4, an analysis unit 5, a determination unit 6, a determination unit 7, and a change unit 8. It has. The selection unit 1 selects the first distribution unit 2, the second distribution unit 3, or the third distribution unit 4 based on the distribution of RAM in the chip. The first distribution unit 2 distributes a plurality of RAMs into groups for each RAM that operates simultaneously based on the average current consumption value of the RAMs. The second distribution unit 3 distributes a plurality of RAMs into groups for each RAM that operates simultaneously on the basis of the weighted consumption current value obtained by weighting the average consumption current value of the RAM in consideration of the arrangement position of the RAM. The third distribution unit 4 distributes a plurality of RAMs into groups for each RAM that operates simultaneously, based on the weighted consumption current value in consideration of the distance between the RAMs.

解析部5は、RAMが振り分けられたグループについてコアノイズを解析する。例えば、解析部5は、コアノイズ解析モデルを作成し、SPICEシミュレーションを実行して動的な電源ドロップ量を測定する。判定部6は、動作RAMの電源ドロップ量とRAMの最低保障電圧を比較し、動作RAMの電源ドロップ量がRAMの最低保障電圧に対して所定の範囲に収まっているか否かを判定する。   The analysis unit 5 analyzes the core noise for the group to which the RAM is allocated. For example, the analysis unit 5 creates a core noise analysis model and executes a SPICE simulation to measure a dynamic power drop amount. The determination unit 6 compares the power drop amount of the operating RAM with the minimum guaranteed voltage of the RAM, and determines whether the power drop amount of the operating RAM is within a predetermined range with respect to the minimum guaranteed voltage of the RAM.

決定部7は、判定部6により動作RAMの電源ドロップ量が前記所定の範囲に収まっていると判定されたグループについて、そのグループに割り振られたRAMを、同時に動作させるRAMに決定する。変更部8は、判定部6により動作RAMの電源ドロップ量がRAMの最低保障電圧よりも低くなると判定されたグループについて、RAMの振り分け条件を変更する。振り分け条件の変更により、同時に動作させるRAMの数が減ったり、組み合わせが変更される。また、変更部8は、判定部6により動作RAMの電源ドロップ量がRAMの最低保障電圧に対して、予め設定された閾値を超える程度の余裕があると判定されたグループについて、同時に動作させるRAMを追加する。   The determination unit 7 determines the RAM allocated to the group determined to be within the predetermined range by the determination unit 6 as the RAM to be operated simultaneously. The changing unit 8 changes the RAM distribution condition for the group determined by the determining unit 6 that the power drop amount of the operation RAM is lower than the minimum guaranteed voltage of the RAM. By changing the distribution condition, the number of RAMs to be operated simultaneously is reduced or the combination is changed. In addition, the changing unit 8 is a RAM that operates simultaneously on the groups determined by the determining unit 6 that the power supply drop amount of the operation RAM has a margin enough to exceed a preset threshold with respect to the minimum guaranteed voltage of the RAM. Add

(第1振り分け部の機能的構成)
図2は、第1振り分け部の構成を示す説明図である。図2に示すように、第1振り分け部2は、ソート処理部21、グループ内消費電流計算部22およびグループ判定部23を備えている。ソート処理部21は、RAMの平均消費電流値に基づいて複数のRAMを並べ替える。例えば、ソート処理部21は、RAMを平均消費電流値の大きい順に並べる。RAMの平均消費電流値は、設計データの一つである消費電流値データ11から得られる。
(Functional configuration of the first distribution unit)
FIG. 2 is an explanatory diagram illustrating a configuration of the first distribution unit. As shown in FIG. 2, the first distribution unit 2 includes a sort processing unit 21, an in-group consumption current calculation unit 22, and a group determination unit 23. The sort processing unit 21 rearranges a plurality of RAMs based on the average current consumption value of the RAMs. For example, the sort processing unit 21 arranges the RAMs in descending order of the average current consumption value. The average consumption current value of the RAM is obtained from consumption current value data 11 which is one of design data.

グループ内消費電流計算部22は、グループに既に振り分けられているRAM(振り分け済みRAM)の平均消費電流の合計値をグループごとに計算する。RAMが振り分けられていないグループの平均消費電流の合計値はゼロである。グループ判定部23は、RAMの平均消費電流値に基づいて振り分け対象RAMの振り分け先グループを判定する。例えば、グループ判定部23は、その時点で平均消費電流値が最も大きい振り分け対象RAMを、振り分け済みRAMの平均消費電流の合計値が最も小さいグループに振り分ける。   The intra-group current consumption calculation unit 22 calculates the total value of the average current consumption of the RAM (allocated RAM) already allocated to the group for each group. The total value of the average current consumption of the group to which the RAM is not allocated is zero. The group determination unit 23 determines a distribution destination group of the distribution target RAM based on the average current consumption value of the RAM. For example, the group determination unit 23 distributes the allocation target RAM having the largest average current consumption value at that time to the group having the smallest total average current consumption value of the allocated RAM.

(第2振り分け部の機能的構成)
図3は、第2振り分け部の構成を示す説明図である。図3に示すように、第2振り分け部3は、重み付け係数取得部31、重み付け消費電流計算部32、ソート処理部33、グループ内消費電流計算部34およびグループ判定部35を備えている。重み付け係数取得部31は、チップ内のRAMの配置位置に基づいてRAMの平均消費電流値に重み付けをするための重み付け係数を取得する。RAMの配置位置は、設計データの一つであるRAM配置座標データ12から得られる。重み付け係数は、例えば重み付け係数テーブル13から得られる。重み付け係数は、チップ内部の電源メッシュの占有率、または電源配線自体の抵抗値に基づいて設定されている。
(Functional configuration of the second distribution unit)
FIG. 3 is an explanatory diagram illustrating a configuration of the second distribution unit. As shown in FIG. 3, the second distribution unit 3 includes a weighting coefficient acquisition unit 31, a weighted consumption current calculation unit 32, a sort processing unit 33, an in-group consumption current calculation unit 34, and a group determination unit 35. The weighting coefficient acquisition unit 31 acquires a weighting coefficient for weighting the average current consumption value of the RAM based on the arrangement position of the RAM in the chip. The RAM arrangement position is obtained from the RAM arrangement coordinate data 12 which is one of the design data. The weighting coefficient is obtained from the weighting coefficient table 13, for example. The weighting coefficient is set based on the occupation ratio of the power mesh inside the chip or the resistance value of the power wiring itself.

重み付け消費電流計算部32は、RAMの平均消費電流値および重み付け係数に基づいて重み付け消費電流値を計算する。例えば、重み付け消費電流計算部32は、RAMの平均消費電流値に重み付け係数をかけて重み付け消費電流値を得る。ソート処理部33は、RAMの重み付け消費電流値に基づいて複数のRAMを並べ替える。例えば、ソート処理部33は、RAMを重み付け消費電流値の大きい順に並べる。   The weighted consumption current calculation unit 32 calculates a weighted consumption current value based on the average consumption current value and the weighting coefficient of the RAM. For example, the weighted consumption current calculation unit 32 multiplies the average consumption current value of the RAM by a weighting coefficient to obtain a weighted consumption current value. The sort processing unit 33 rearranges a plurality of RAMs based on the weighted current consumption values of the RAMs. For example, the sort processing unit 33 arranges the RAMs in descending order of weighted current consumption values.

グループ内消費電流計算部34は、振り分け済みRAMの重み付け消費電流の合計値をグループごとに計算する。RAMが振り分けられていないグループの重み付け消費電流の合計値はゼロである。グループ判定部35は、RAMの重み付け消費電流値に基づいて振り分け対象RAMの振り分け先グループを判定する。例えば、グループ判定部35は、その時点で重み付け消費電流値が最も大きい振り分け対象RAMを、振り分け済みRAMの重み付け消費電流の合計値が最も小さいグループに振り分ける。   The intra-group current consumption calculator 34 calculates the total value of the weighted current consumption of the allocated RAM for each group. The total weighted consumption current of the group to which the RAM is not allocated is zero. The group determination unit 35 determines a distribution destination group of the distribution target RAM based on the weighted consumption current value of the RAM. For example, the group determination unit 35 distributes the allocation target RAM having the largest weighted consumption current value at that time to the group having the smallest total weighted consumption current value of the allocated RAM.

(第3振り分け部の機能的構成)
図4は、第3振り分け部の構成を示す説明図である。図4に示すように、第3振り分け部4は、重み付け係数取得部41、重み付け消費電流計算部42、ソート処理部43、RAM間距離計算部44、グループ内消費電流計算部45およびグループ判定部46を備えている。重み付け係数取得部41、重み付け消費電流計算部42およびソート処理部43は、それぞれ、第2振り分け部3の重み付け係数取得部31、重み付け消費電流計算部32およびソート処理部33と同様である。
(Functional configuration of the third distribution unit)
FIG. 4 is an explanatory diagram showing the configuration of the third distribution unit. As shown in FIG. 4, the third distribution unit 4 includes a weighting coefficient acquisition unit 41, a weighted consumption current calculation unit 42, a sort processing unit 43, an inter-RAM distance calculation unit 44, an in-group consumption current calculation unit 45, and a group determination unit. 46 is provided. The weighting coefficient acquisition unit 41, the weighted consumption current calculation unit 42, and the sort processing unit 43 are the same as the weighting coefficient acquisition unit 31, the weighted consumption current calculation unit 32, and the sort processing unit 33 of the second distribution unit 3, respectively.

RAM間距離計算部44は、その時点での振り分け対象RAMと振り分け済みRAMとの距離をグループごとに計算する。例えば、RAM間距離計算部44は、RAMの配置座標に基づいてRAM間の距離を計算する。RAMの配置座標は、RAM配置座標データ12から得られる。   The inter-RAM distance calculation unit 44 calculates the distance between the allocation target RAM and the allocated RAM for each group. For example, the inter-RAM distance calculation unit 44 calculates the distance between the RAMs based on the RAM arrangement coordinates. The RAM arrangement coordinates are obtained from the RAM arrangement coordinate data 12.

グループ内消費電流計算部45は、振り分け済みRAMの重み付け消費電流値、およびその時点での振り分け対象RAMと振り分け済みRAMとの距離に基づいて、振り分け済みRAMの距離依存重み付け消費電流の合計の平均値をグループごとに計算する。距離依存重み付け消費電流とは、RAM間距離を考慮した重み付け消費電流のことである。RAMが振り分けられていないグループの距離依存重み付け消費電流の合計の平均値はゼロである。グループ判定部46は、RAMの距離依存重み付け消費電流の合計の平均値に基づいて振り分け対象RAMの振り分け先グループを判定する。例えば、グループ判定部46は、その時点で重み付け消費電流値が最も大きい振り分け対象RAMを、そのRAMに対する振り分け済みRAMの距離依存重み付け消費電流の合計の平均値が最も小さいグループに振り分ける。   The intra-group consumption current calculation unit 45 calculates the average of the total of the distance-dependent weighted consumption currents of the allocated RAM based on the weighted consumption current value of the allocated RAM and the distance between the allocation target RAM and the allocated RAM at that time. Calculate the value for each group. The distance-dependent weighted consumption current is a weighted consumption current considering the distance between RAMs. The average value of the total distance-dependent weighted consumption currents of the groups to which RAM is not allocated is zero. The group determination unit 46 determines a distribution destination group of the distribution target RAM based on the average value of the total distance-dependent weighted consumption currents of the RAM. For example, the group determination unit 46 distributes the allocation target RAM having the largest weighted consumption current value at that time to the group having the smallest average value of the distance-dependent weighted consumption currents of the allocated RAMs for the RAM.

(コンピュータ装置のハードウェア構成)
図5は、実施の形態にかかるコンピュータ装置のハードウェア構成を示す説明図である。図5に示すように、コンピュータ装置は、コンピュータ本体210、入力装置220および出力装置230を備えている。コンピュータ装置は、図示しないルータやモデムを介してLANやWANやインターネットなどのネットワーク110に接続可能である。
(Hardware configuration of computer device)
FIG. 5 is an explanatory diagram of a hardware configuration of the computer apparatus according to the embodiment. As shown in FIG. 5, the computer device includes a computer main body 210, an input device 220, and an output device 230. The computer device can be connected to a network 110 such as a LAN, a WAN, or the Internet via a router or a modem (not shown).

コンピュータ本体210は、CPU、記憶部およびインターフェースを有する。CPUは、コンピュータ装置の全体の制御を司る。記憶部は、ROM、RAM、HD、光ディスク211およびフラッシュメモリのうちの一つ以上で構成される。記憶部は、CPUのワークエリアとして使用される。   The computer main body 210 includes a CPU, a storage unit, and an interface. The CPU controls the entire computer device. The storage unit is composed of one or more of ROM, RAM, HD, optical disk 211, and flash memory. The storage unit is used as a work area for the CPU.

また、記憶部には各種プログラムが格納されており、CPUからの命令に応じてロードされる。HDや光ディスク211は、ディスクドライブによりデータのリード/ライトが制御される。また、光ディスク211やフラッシュメモリは、コンピュータ本体210に対して着脱自在である。インターフェースは、入力装置220からの入力、出力装置230への出力、およびネットワーク110に対する送受信の制御を行う。   In addition, various programs are stored in the storage unit, and loaded according to instructions from the CPU. In the HD and the optical disk 211, data read / write is controlled by a disk drive. Further, the optical disk 211 and the flash memory are detachable from the computer main body 210. The interface controls input from the input device 220, output to the output device 230, and transmission / reception with respect to the network 110.

また、入力装置220としては、キーボード221、マウス222およびスキャナ223などがある。キーボード221は、文字や数字や各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式であってもよい。マウス222は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。スキャナ223は、画像を光学的に読み取る。読み取られた画像は、画像データとして取り込まれ、コンピュータ本体210内の記憶部に格納される。なお、スキャナ223にOCR機能を持たせてもよい。   The input device 220 includes a keyboard 221, a mouse 222, a scanner 223, and the like. The keyboard 221 includes keys for inputting characters, numbers, various instructions, and the like, and inputs data. Further, it may be a touch panel type. The mouse 222 performs cursor movement, range selection, window movement, size change, and the like. The scanner 223 optically reads an image. The read image is captured as image data and stored in a storage unit in the computer main body 210. Note that the scanner 223 may have an OCR function.

また、出力装置230としては、ディスプレイ231、スピーカ232およびプリンタ233などがある。ディスプレイ231は、カーソル、アイコンまたはツールボックスをはじめ、文書、画像および機能情報などのデータを表示する。また、スピーカ232は、効果音や読み上げ音などの音声を出力する。また、プリンタ233は、画像データや文書データを印刷する。   Examples of the output device 230 include a display 231, a speaker 232, and a printer 233. The display 231 displays data such as a document, an image, and function information as well as a cursor, an icon, or a tool box. The speaker 232 outputs sounds such as sound effects and reading sounds. The printer 233 prints image data and document data.

集積回路設計装置の各機能部のうち、選択部1、第1振り分け部2の各機能部21〜23、第2振り分け部3の各機能部31〜35、第3振り分け部4の各機能部41〜46、解析部5、判定部6、決定部7および変更部8は、例えばコンピュータ本体210の記憶部に記憶された当該機能に関するプログラムをCPUに実行させることにより、または、入出力I/Fにより、当該機能を実現することができる。消費電流値データ11、RAM配置座標データ12および重み付け係数テーブル13は、例えば記憶部により実現される。   Among the functional units of the integrated circuit design apparatus, the functional unit 21 to 23 of the selection unit 1, the first distribution unit 2, the functional units 31 to 35 of the second distribution unit 3, and the functional units of the third distribution unit 4 41-46, the analysis part 5, the determination part 6, the determination part 7, and the change part 8 make CPU execute the program regarding the said function memorize | stored in the memory | storage part of the computer main body 210, or input / output I / O, for example. The function can be realized by F. The consumption current value data 11, the RAM arrangement coordinate data 12, and the weighting coefficient table 13 are realized by, for example, a storage unit.

(集積回路設計手順)
図6は、実施の形態にかかる集積回路設計処理の全体の流れを示す説明図である。図6に示す設計処理は、例えば動作周波数が同じで、かつ種類が同じであるという所定の制約を満たすRAMごとに行われる。つまり、動作周波数や種類が異なるRAMが、同時に動作するRAMとして選択されることはない。
(Integrated circuit design procedure)
FIG. 6 is an explanatory diagram of an overall flow of the integrated circuit design process according to the embodiment. The design process shown in FIG. 6 is performed for each RAM satisfying a predetermined constraint that, for example, the operating frequency is the same and the type is the same. That is, RAMs with different operating frequencies and types are not selected as RAMs that operate simultaneously.

図6に示すように、集積回路の設計処理が開始されると、まず、解析部5により、前記制約を満たす全てのRAMを、同時に動作させるRAMの候補として選択し(ステップS1)、コアノイズを解析する(ステップS2)。コアノイズ解析では、例えば、コアノイズ解析モデルを作成し、SPICEシミュレーションを実行して動的な電源ドロップ量を測定する。次いで、判定部6により、RAM部ドロップピークを判定する。例えば、動作RAMの電源ドロップ量とRAMの最低保障電圧を比較し、動作RAMの電源ドロップ量がRAMの最低保障電圧に対して所定の範囲に収まっているか否かを判定する(ステップS3)。   As shown in FIG. 6, when the integrated circuit design process is started, first, the analysis unit 5 selects all RAMs satisfying the constraints as candidates for RAMs to be operated at the same time (step S1). Analysis is performed (step S2). In the core noise analysis, for example, a core noise analysis model is created, and a SPICE simulation is executed to measure a dynamic power drop amount. Next, the determination unit 6 determines the RAM unit drop peak. For example, the power drop amount of the operating RAM is compared with the minimum guaranteed voltage of the RAM, and it is determined whether or not the power drop amount of the operating RAM is within a predetermined range with respect to the minimum guaranteed voltage of the RAM (step S3).

RAM部ドロップピーク判定の結果が良しである場合(ステップS4:Yes)、例えば動作RAMの電源ドロップ量がRAMの最低保障電圧に対して所定の範囲に収まっている場合、決定部7により、その良しと判定された全てのRAMを、製造後のテストで同時に動作させるRAMに決定する。それによって、製造後のテストで同時に動作させるRAMの個数が決定する(ステップS5)。そして、一連の設計処理を終了する。   When the result of the RAM portion drop peak determination is good (step S4: Yes), for example, when the power drop amount of the operation RAM is within a predetermined range with respect to the minimum guaranteed voltage of the RAM, the determination portion 7 All the RAMs determined to be good are determined to be RAMs that are simultaneously operated in a test after manufacture. Thereby, the number of RAMs to be simultaneously operated in the test after manufacture is determined (step S5). Then, a series of design processing ends.

一方、RAM部ドロップピーク判定の結果が良しでない場合(ステップS4:No)、例えば動作RAMの電源ドロップ量がRAMの最低保障電圧よりも低くなる場合、変更部8により、RAMの振り分け条件を変更し(ステップS7)、ステップS1に戻る。厳密には、1巡目で全てのRAMを選択した場合にはRAMの振り分け条件が特に設定されていないので、ステップS7では振り分け条件の設定であるが、ここでは振り分け条件の変更に含める。   On the other hand, if the result of the RAM portion drop peak determination is not good (step S4: No), for example, if the power drop amount of the operating RAM is lower than the minimum guaranteed voltage of the RAM, the changing portion 8 changes the RAM distribution condition. (Step S7), the process returns to Step S1. Strictly speaking, when all the RAMs are selected in the first round, since the RAM distribution conditions are not particularly set, the distribution conditions are set in step S7, but here are included in the change of the distribution conditions.

ステップS1に戻って2巡目では、選択部1により、前記制約を満たす複数のRAMのチップ内の分布に基づいて第1振り分け部2、第2振り分け部3または第3振り分け部4を選択する。そして、選択された振り分け部により、複数のRAMを複数のグループに振り分けることによって、同時に動作させるRAMをグループごとに選択する(ステップS1)。   Returning to step S1, in the second round, the selection unit 1 selects the first distribution unit 2, the second distribution unit 3 or the third distribution unit 4 based on the distribution in the chip of the plurality of RAMs satisfying the constraints. . Then, the selected sorting unit sorts a plurality of RAMs into a plurality of groups, thereby selecting the RAMs to be operated simultaneously for each group (step S1).

次いで、解析部5により、グループごとにコアノイズを解析し(ステップS2)、例えば電源ドロップ量を測定する。次いで、判定部6により、RAM部ドロップピークを判定する(ステップS3)。RAM部ドロップピーク判定の結果が良しである場合(ステップS4:Yes)、その良しと判定されたグループについて、決定部7により、そのグループに割り振られたRAMを、製造後のテストで同時に動作させるRAMに決定する。それによって、その良しと判定されたグループについて、製造後のテストで同時に動作させるRAMの個数が決定する(ステップS5)。   Next, the analysis unit 5 analyzes the core noise for each group (step S2), and measures, for example, the power drop amount. Next, the RAM unit drop peak is determined by the determination unit 6 (step S3). When the result of the RAM portion drop peak determination is good (step S4: Yes), the RAM allocated to the group is simultaneously operated in the test after manufacture by the determination unit 7 for the group determined to be good. Decide on RAM. Thereby, the number of RAMs to be simultaneously operated in the post-manufacturing test is determined for the group determined to be good (step S5).

一方、RAM部ドロップピーク判定の結果が良しでない場合(ステップS4:No)、その良しでないと判定されたグループについて、変更部8により、RAMの振り分け条件を変更し(ステップS7)、ステップS1に戻って新たな振り分け条件で動作RAMの選択から繰り返す。それによって、3巡目以降で、RAM部ドロップピーク判定の結果が良しでないとされたグループについて、同時に動作させるRAMの数を減らしたり、組み合わせを変更したりして、新たなグループ分けがなされる。   On the other hand, if the result of the RAM portion drop peak determination is not good (step S4: No), the RAM allocation condition is changed by the changing unit 8 for the group determined to be not good (step S7), and the process goes to step S1. It returns and repeats from selection of operation | movement RAM on a new distribution condition. As a result, in the third and subsequent rounds, new groups are created by reducing the number of RAMs to be operated simultaneously or changing the combinations of groups for which the RAM section drop peak determination result is not good. .

また、上述した理由とは別に、動作RAMの電源ドロップ量がRAMの最低保障電圧以上であっても、RAMの最低保障電圧に対して、予め設定された閾値を超える程度の余裕がある場合も、判定部6により、RAM部ドロップピークの判定結果は良しでないとされる。その場合には、変更部8により、その良しでないと判定されたグループにRAMを追加し(ステップS7)、ステップS1に戻る。全てのRAMについて振り分けが終了するまで(ステップS6:No)、以上の処理を繰り返す。この繰り返し処理は、ステップS4でRAM部ドロップピーク判定の結果が良しであるとされたグループに振り分けられたRAMを除く、残りのRAMについて行われる。前記制約を満たす全てのRAMの振り分けが終了したら(ステップS6:Yes)、一連の設計処理を終了する。   In addition to the above-described reason, even if the power drop amount of the operation RAM is equal to or greater than the minimum guaranteed voltage of the RAM, there is a case where there is a margin that exceeds a preset threshold with respect to the minimum guaranteed voltage of the RAM. The determination unit 6 determines that the RAM section drop peak determination result is not good. In that case, the changing unit 8 adds RAM to the group determined to be not good (step S7), and returns to step S1. The above processing is repeated until the distribution for all the RAMs is completed (step S6: No). This iterative process is performed for the remaining RAMs except for the RAMs allocated to the group whose result of the RAM unit drop peak determination is good in step S4. When the distribution of all the RAMs satisfying the restriction is finished (step S6: Yes), a series of design processing is finished.

図7は、図6に示す設計手順で複数のRAMをグループ化する様子を模式的に示す説明図である。図7には、全体または各グループについて、1回目のグループ分けでは二つのグループに分け、2回目以降のグループ分けでは一つずつグループを増やすという振り分け条件の例が示されている。   FIG. 7 is an explanatory diagram schematically showing how a plurality of RAMs are grouped in the design procedure shown in FIG. FIG. 7 shows an example of a distribution condition in which the entire group or each group is divided into two groups in the first grouping, and the groups are increased one by one in the second and subsequent groupings.

図7において、符号51で示すように、全体がAとBの二つのグループに分けられる。全体とは、前記制約を満たす全てのRAMのことである。RAM部ドロップピーク判定の結果、グループAおよびグループBの両方とも良しでない(NG)場合、符号52で示すように、全体がCとDとEの三つのグループに分けられる。RAM部ドロップピーク判定の結果、三つのグループとも良しでない(NG)場合、符号53で示すように全体がグループF、グループG、・・・およびグループHというように、いずれかのグループがRAM部ドロップピーク判定で良しとなるまで、多くのグループに分けられていく。   In FIG. 7, as indicated by reference numeral 51, the whole is divided into two groups A and B. The whole is all the RAMs that satisfy the above-mentioned restrictions. If both the group A and the group B are not good (NG) as a result of the RAM portion drop peak determination, the whole is divided into three groups C, D, and E as indicated by reference numeral 52. As a result of the RAM portion drop peak determination, if all three groups are not good (NG), as shown by reference numeral 53, the whole group F, group G,... It will be divided into many groups until the drop peak judgment is good.

また、全体が二分された後、RAM部ドロップピーク判定の結果、グループAは良し(OK)であり、グループBが良しでない(NG)場合、符号54で示すように、グループAについては同時に動作するRAMの決定となり、グループBについてのみ、B−aとB−bの二つのグループに分けられる。RAM部ドロップピーク判定の結果、グループB−aおよびグループB−bの両方とも良しでない(NG)場合、符号55で示すように、グループBがB−cとB−dとB−eの三つのグループに分けられる。そして、符号56で示すように、全体の場合と同様に、グループBの細分化されたいずれかのグループがRAM部ドロップピーク判定で良しとなるまで、グループBはさらに多くのグループに細分化されていく。   Further, after the whole is divided into two, if the result of the RAM portion drop peak determination is that group A is good (OK) and group B is not good (NG), as shown by reference numeral 54, the group A operates simultaneously. Only the group B is divided into two groups, Ba and BB. As a result of the determination of the RAM portion drop peak, when both of the group Ba and the group Bb are not good (NG), as shown by reference numeral 55, the group B has three of Bc, Bd, and Be. Divided into two groups. As indicated by reference numeral 56, as in the case of the whole, the group B is further subdivided into more groups until one of the subdivided groups of the group B is satisfactory in the RAM portion drop peak determination. To go.

符号52〜56で示す状態において、細分化されたいずれかのグループがRAM部ドロップピーク判定で良しとなると、そのグループについては同時に動作するRAMの決定となる。そして、符号54で示すように、RAM部ドロップピーク判定で良しとされなかったグループについてのみ、同様に細かくグループ化される。細分化されるグループ数に上限を設けてもよい。例えば、全体または各グループについて細分化する際のグループ数の上限値を4とする場合、図7に示す例において、全体やグループBを四つのグループに分けても、いずれのグループもRAM部ドロップピーク判定で良しとならなければ、振り分け条件を変更して、最初から動作RAMの選択がやり直される。なお、振り分け条件は、上記例に限らず、全体または各グループについて、1回目のグループ分けで三つ以上のグループに分け、2回目以降のグループ分けでは二つ以上ずつグループを増やすというようにしてもよい。   In any of the states indicated by reference numerals 52 to 56, if any of the subdivided groups is satisfactory in the RAM portion drop peak determination, the RAM that is simultaneously operated for the group is determined. Then, as indicated by reference numeral 54, only the groups that are not good in the RAM portion drop peak determination are similarly finely grouped. An upper limit may be set for the number of groups to be subdivided. For example, when the upper limit value of the number of groups when subdividing the whole group or each group is set to 4, in the example shown in FIG. If the peak judgment is not satisfactory, the distribution condition is changed and the operation RAM is selected again from the beginning. The distribution conditions are not limited to the above example, and the whole or each group is divided into three or more groups in the first grouping, and the number of groups is increased by two or more in the second and subsequent groupings. Also good.

(動作RAM選択処理手順)
図8は、動作RAM選択処理の流れを示す説明図である。図9〜図12は、図8に示す動作RAM選択処理における判定基準を示す説明図である。図8に示すように、動作RAMの選択処理が開始されると、まず、選択部1により、RAMがチップの上下左右方向に均一に分布しているか否かを判定する(ステップS11)。例えば、RAMがチップ全体に存在する場合は均一であるとし、RAMがチップの上部もしくは下部に集中している場合、または左部もしくは右部に集中している場合は均一でないとする。具体的には、チップを格子状に複数の領域に分割し、RAM配置座標データ12から各RAMの配置位置を求め、各領域に存在するRAMの個数を数える。そして、領域間でRAMの数に偏りがない場合は均一であるとし、偏りがある場合は均一でないとしてもよい。
(Operation RAM selection processing procedure)
FIG. 8 is an explanatory diagram showing the flow of operation RAM selection processing. 9 to 12 are explanatory diagrams showing determination criteria in the operation RAM selection process shown in FIG. As shown in FIG. 8, when the selection process of the operation RAM is started, first, the selection unit 1 determines whether or not the RAM is uniformly distributed in the vertical and horizontal directions of the chip (step S11). For example, it is assumed that the RAM is uniform when the entire chip is present, and is not uniform when the RAM is concentrated on the upper or lower portion of the chip, or on the left or right portion. Specifically, the chip is divided into a plurality of areas in a grid pattern, the RAM arrangement position is obtained from the RAM arrangement coordinate data 12, and the number of RAMs present in each area is counted. If there is no bias in the number of RAMs between regions, it may be uniform, and if there is a bias, it may not be uniform.

例えば、図9に示す例では、J、K、MおよびNの各領域に存在するRAMの数の比が1:1:1:1であるので、均一であるとする。図10に示す例では、J、K、MおよびNの各領域に存在するRAMの数の比が0:2:2:0(=0:1:1:0)であるので、均一でないとする。一例として、最も多くRAMが存在する領域の比の値を1として換算した場合に、残りの領域のRAMの存在比が所定の閾値、例えば0.5以上であるときに均一であるとし、RAMの存在比がその閾値よりも小さい領域があるときに均一でないとする。   For example, in the example shown in FIG. 9, since the ratio of the number of RAMs existing in the J, K, M, and N areas is 1: 1: 1: 1, it is assumed to be uniform. In the example shown in FIG. 10, since the ratio of the number of RAMs existing in the J, K, M, and N areas is 0: 2: 2: 0 (= 0: 1: 1: 0), it is not uniform. To do. As an example, when the ratio value of the area where the most RAM exists is converted to 1, the remaining area RAM is assumed to be uniform when the existing ratio of the RAM is a predetermined threshold, for example, 0.5 or more. Is not uniform when there is a region where the abundance ratio is smaller than the threshold.

図8に戻り、RAMがチップの上下左右方向に均一に分布していない場合(ステップS11:No)、選択部1により、第3振り分け部4を選択する。それによって、第3振り分け部4により、第3振り分け処理を実行し(ステップS15)、動作RAM選択処理を終了する。一方、RAMがチップの上下左右方向に均一に分布している場合(ステップS11:Yes)、選択部1により、RAMがチップの同心円上に均一に分布しているか否かを判定する(ステップS12)。例えば、RAMがチップの周辺部のみまたは中央部のみに集中している場合は均一であるとし、RAMがチップの周辺部および中央部の両方に存在している場合は均一でないとする。具体的には、チップを同心円状に複数の領域に分割し、RAM配置座標データ12から各RAMの配置位置を求め、各領域に存在するRAMの個数を数える。そして、領域間でRAMの数に偏りがない場合は均一であるとし、偏りがある場合は均一でないとしてもよい。   Returning to FIG. 8, when the RAM is not uniformly distributed in the vertical and horizontal directions of the chip (step S <b> 11: No), the selection unit 1 selects the third distribution unit 4. Thereby, the third distribution unit 4 executes the third distribution process (step S15) and ends the operation RAM selection process. On the other hand, when the RAM is uniformly distributed in the vertical and horizontal directions of the chip (step S11: Yes), the selection unit 1 determines whether the RAM is uniformly distributed on the concentric circles of the chip (step S12). ). For example, it is assumed that the RAM is uniform only when the RAM is concentrated only in the peripheral part or the central part of the chip, and is not uniform when the RAM exists in both the peripheral part and the central part of the chip. Specifically, the chip is concentrically divided into a plurality of areas, the RAM arrangement position is obtained from the RAM arrangement coordinate data 12, and the number of RAMs present in each area is counted. If there is no bias in the number of RAMs between regions, it may be uniform, and if there is a bias, it may not be uniform.

例えば、図11に示す例では、PおよびQの各領域に存在するRAMの数の比が3:1である。最も多くRAMが存在する領域Pの比の値を1として換算すると、領域QのRAMの存在比は0.33であり、所定の閾値、例えば0.5よりも小さいので、均一でないとする。図12に示す例では、PおよびQの各領域に存在するRAMの数の比が2:2(=1:1)であるので、均一であるとする。   For example, in the example shown in FIG. 11, the ratio of the number of RAMs present in the P and Q areas is 3: 1. If the ratio value of the area P in which the most RAM is present is converted to 1, the RAM existing ratio in the area Q is 0.33, which is smaller than a predetermined threshold, for example, 0.5, and is not uniform. In the example shown in FIG. 12, since the ratio of the number of RAMs existing in the P and Q areas is 2: 2 (= 1: 1), it is assumed to be uniform.

図8に戻り、RAMがチップの同心円上に均一に分布している場合(ステップS12:Yes)、選択部1により、第1振り分け部2を選択する。それによって、第1振り分け部2により、第1振り分け処理を実行し(ステップS13)、動作RAM選択処理を終了する。一方、RAMがチップの同心円上に均一に分布していない場合(ステップS12:No)、選択部1により、第2振り分け部3を選択する。それによって、第2振り分け部3により、第2振り分け処理を実行し(ステップS14)、動作RAM選択処理を終了する。   Returning to FIG. 8, when the RAM is uniformly distributed on the concentric circles of the chip (step S <b> 12: Yes), the selection unit 1 selects the first distribution unit 2. As a result, the first distribution unit 2 executes the first distribution process (step S13) and ends the operation RAM selection process. On the other hand, when the RAM is not uniformly distributed on the concentric circles of the chip (step S12: No), the selection unit 1 selects the second distribution unit 3. Thereby, the second distribution unit 3 executes the second distribution process (step S14), and ends the operation RAM selection process.

図13、図14および図15は、それぞれ、第1振り分け処理、第2振り分け処理および第3振り分け処理が実行される代表的なRAMの配置パターンを示す説明図である。図13に示すパターンは、RAMがチップの周辺部のみに集中して配置されている。図14に示すパターンは、RAMがチップの周辺部および中央部の両方に配置されている。図15に示すパターンは、RAMがチップの上部もしくは下部、または左部もしくは右部に集中して配置されている。   FIGS. 13, 14, and 15 are explanatory diagrams showing typical RAM arrangement patterns in which the first distribution process, the second distribution process, and the third distribution process are executed, respectively. In the pattern shown in FIG. 13, the RAM is concentrated on only the peripheral portion of the chip. In the pattern shown in FIG. 14, the RAM is arranged in both the peripheral part and the central part of the chip. In the pattern shown in FIG. 15, the RAM is concentrated on the upper or lower part of the chip, or on the left or right part.

(第1振り分け処理手順)
図16は、第1振り分け処理の流れを示す説明図である。図16に示すように、第1振り分け処理が開始されると、まず、ソート処理部21により、消費電流値データ11から取得したRAMの平均消費電流値に基づいてRAMを並べ替える(ステップS21)。例えば、ソート処理部21により、RAMを平均消費電流値の大きい順に並べる。次いで、グループ内消費電流計算部22により、振り分け済みRAMの平均消費電流の合計値(合計電流値)をグループごとに計算し、確認する(ステップS22)。最初は、いずれのグループにもRAMが振り分けられていないので、各グループの平均消費電流の合計値はゼロである。
(First sort processing procedure)
FIG. 16 is an explanatory diagram showing the flow of the first distribution process. As shown in FIG. 16, when the first distribution process is started, first, the sort processing unit 21 rearranges the RAMs based on the average current consumption value of the RAM acquired from the current consumption value data 11 (step S21). . For example, the sort processing unit 21 arranges the RAMs in descending order of the average current consumption value. Next, the total current consumption (total current value) of the allocated RAM is calculated for each group by the intra-group current consumption calculator 22 and checked (step S22). Initially, since no RAM is allocated to any group, the total value of the average current consumption of each group is zero.

次いで、グループ判定部23により、RAMの平均消費電流値に基づいて振り分け対象RAMを振り分ける(ステップS23)。例えば、グループ判定部23により、平均消費電流の合計値が最も小さいグループに、その時点で平均消費電流値が最も大きい振り分け対象RAMを振り分ける。最初は、各グループの平均消費電流の合計値がゼロであるので、所定のルールに従って振り分け先のグループを選択する。次いで、グループ内消費電流計算部22により、グループの平均消費電流の合計値に、ステップS23で振り分けられたRAMの平均消費電流値を加算する(ステップS24)。そして、全てのRAMについて振り分けが終了したか否かを判定し(ステップS25)、振り分けられていないRAMが残っている場合(ステップS25:No)、ステップS22に戻る。全てのRAMの振り分けが終了したら(ステップS25:Yes)、第1振り分け処理を終了する。   Next, the group determination unit 23 distributes the allocation target RAM based on the average current consumption value of the RAM (step S23). For example, the group determination unit 23 distributes the allocation target RAM having the largest average current consumption value to the group having the smallest average current consumption value at that time. Initially, since the total value of the average current consumption of each group is zero, a group to be distributed to is selected according to a predetermined rule. Next, the average current consumption value of the RAM allocated in step S23 is added to the total value of the average current consumption of the group by the intra-group current consumption calculation unit 22 (step S24). Then, it is determined whether or not the allocation has been completed for all the RAMs (step S25). If there is any unallocated RAM (step S25: No), the process returns to step S22. When all the RAMs have been distributed (step S25: Yes), the first distribution process is ended.

図17は、図16に示す第1振り分け処理でRAMを振り分ける様子を模式的に示す説明図である。例えば、RAM_a、RAM_b、RAM_cおよびRAM_dの平均消費電流値がそれぞれ30mA、150mA、50mAおよび130mAであるとする。この場合、ソート処理部21により、RAM_b、RAM_d、RAM_c、RAM_aの順にRAMが並べ替えられる。そして、図17において符号61で示すように、第1振り分け処理の1巡目に、グループAにRAM_bが振り分けられ、グループAの平均消費電流の合計値が150mAとなる。次いで、符号62で示すように、第1振り分け処理の2巡目において、グループAよりもグループBの方が平均消費電流の合計値が小さいので、グループBにRAM_dが振り分けられる。それによって、グループBの平均消費電流の合計値が130mAとなる。   FIG. 17 is an explanatory diagram schematically illustrating how the RAM is distributed in the first distribution process illustrated in FIG. 16. For example, assume that the average current consumption values of RAM_a, RAM_b, RAM_c, and RAM_d are 30 mA, 150 mA, 50 mA, and 130 mA, respectively. In this case, the sort processing unit 21 rearranges the RAMs in the order of RAM_b, RAM_d, RAM_c, and RAM_a. Then, as indicated by reference numeral 61 in FIG. 17, in the first round of the first distribution process, RAM_b is distributed to group A, and the total value of the average current consumption of group A is 150 mA. Next, as indicated by reference numeral 62, in the second round of the first distribution process, since the total value of the average current consumption is smaller in group B than in group A, RAM_d is distributed to group B. As a result, the total value of average current consumption of group B is 130 mA.

次いで、符号63で示すように、第1振り分け処理の3巡目において、グループAよりもグループBの方が平均消費電流の合計値が小さいので、グループBにRAM_cが振り分けられる。それによって、グループBの平均消費電流の合計値が180mAとなる。次いで、符号64で示すように、第1振り分け処理の4巡目において、グループBよりもグループAの方が平均消費電流の合計値が小さいので、グループAにRAM_aが振り分けられる。それによって、グループAおよびグループBの平均消費電流の合計値が180mAとなる。このように、グループ内の平均消費電流の合計値が略同じになるように、RAMが振り分けられる。   Next, as indicated by reference numeral 63, in the third round of the first distribution process, since the total value of the average current consumption is smaller in group B than in group A, RAM_c is distributed to group B. As a result, the total value of the average current consumption of group B is 180 mA. Next, as indicated by reference numeral 64, in the fourth round of the first distribution process, since the total value of the average current consumption is smaller in group A than in group B, RAM_a is distributed to group A. As a result, the total value of the average current consumption of group A and group B is 180 mA. In this way, the RAMs are distributed so that the total average current consumption in the group is substantially the same.

(第2振り分け処理手順)
図18は、第2振り分け処理の流れを示す説明図である。図18に示すように、第2振り分け処理が開始されると、まず、重み付け係数取得部31により、RAM配置座標データ12からチップ内のRAMの配置位置を取得し、重み付け係数テーブル13からRAMの配置位置に対応する重み付け係数を取得する。そして、重み付け消費電流計算部32により、消費電流値データ11から取得したRAMの平均消費電流値および重み付け係数に基づいて重み付け消費電流値を計算する(ステップS31)。例えば、重み付け消費電流計算部32により、RAMの平均消費電流値に重み付け係数をかけた値を計算し、重み付け消費電流値とする。
(Second distribution procedure)
FIG. 18 is an explanatory diagram showing the flow of the second distribution process. As shown in FIG. 18, when the second distribution process is started, first, the weighting coefficient acquisition unit 31 acquires the RAM arrangement position in the chip from the RAM arrangement coordinate data 12, and the RAM coefficient from the weighting coefficient table 13. A weighting coefficient corresponding to the arrangement position is acquired. Then, the weighted consumption current calculation unit 32 calculates the weighted consumption current value based on the average consumption current value of RAM and the weighting coefficient acquired from the consumption current value data 11 (step S31). For example, the weighted consumption current calculation unit 32 calculates a value obtained by multiplying the average consumption current value of the RAM by a weighting coefficient to obtain a weighted consumption current value.

そして、全てのRAMについて重み付け消費電流値を計算したか否かを判定し(ステップS32)、計算の済んでいないRAMが残っている場合(ステップS32:No)、ステップS31に戻る。全てのRAMについて重み付け消費電流値の計算が終了したら(ステップS32:Yes)、ソート処理部33により、RAMの重み付け消費電流値に基づいてRAMを並べ替える(ステップS33)。例えば、ソート処理部33により、RAMを重み付け消費電流値の大きい順に並べる。次いで、グループ内消費電流計算部34により、振り分け済みRAMの重み付け消費電流の合計値(合計電流値)をグループごとに計算し、確認する(ステップS34)。最初は、いずれのグループにもRAMが振り分けられていないので、各グループの重み付け消費電流の合計値はゼロである。   Then, it is determined whether or not the weighted consumption current values have been calculated for all the RAMs (step S32). If there is a RAM that has not been calculated (step S32: No), the process returns to step S31. When the calculation of the weighted consumption current values is completed for all the RAMs (step S32: Yes), the sort processing unit 33 rearranges the RAMs based on the RAM weighted consumption current values (step S33). For example, the sort processing unit 33 arranges the RAMs in descending order of weighted current consumption values. Next, the total current consumption (total current value) of the allocated RAM is calculated for each group by the intra-group current consumption calculator 34 and checked (step S34). Initially, since no RAM is allocated to any group, the total weighted consumption current of each group is zero.

次いで、グループ判定部35により、RAMの重み付け消費電流値に基づいて振り分け対象RAMを振り分ける(ステップS35)。例えば、グループ判定部35により、重み付け消費電流の合計値が最も小さいグループに、その時点で重み付け消費電流値が最も大きい振り分け対象RAMを振り分ける。最初は、各グループの重み付け消費電流の合計値がゼロであるので、所定のルールに従って振り分け先のグループを選択する。次いで、グループ内消費電流計算部34により、グループの重み付け消費電流の合計値に、ステップS35で振り分けられたRAMの重み付け消費電流値を加算する(ステップS36)。そして、全てのRAMについて振り分けが終了したか否かを判定し(ステップS37)、振り分けられていないRAMが残っている場合(ステップS37:No)、ステップS34に戻る。全てのRAMの振り分けが終了したら(ステップS37:Yes)、第2振り分け処理を終了する。   Next, the group determination unit 35 distributes the allocation target RAM based on the weighted current consumption value of the RAM (step S35). For example, the group determination unit 35 distributes the allocation target RAM having the largest weighted consumption current value to the group having the smallest total weighted consumption current value. Initially, since the total value of the weighted consumption currents of each group is zero, a distribution destination group is selected according to a predetermined rule. Next, the intra-group consumption current calculation unit 34 adds the weighted consumption current value of the RAM distributed in step S35 to the total weighted consumption current value of the group (step S36). Then, it is determined whether or not the allocation has been completed for all the RAMs (step S37). If there is any unallocated RAM (step S37: No), the process returns to step S34. When all the RAMs have been distributed (step S37: Yes), the second distribution process ends.

図19は、重み付け係数の異なる領域を示す説明図である。図19に示す例では、チップの4辺に電源ソースがあるとする。この場合、チップの中心に近い方が抵抗が高くなるので、チップの周辺領域R、その内側の領域T、チップの中央領域Uの順で重み付け係数が大きくなる。例えば、領域R、領域Tおよび領域Uの重み付け係数がそれぞれ1.0、1.3および1.5であり、RAM_a、RAM_b、RAM_cおよびRAM_dの平均消費電流値がそれぞれ30mA、150mA、50mAおよび130mAであり、RAM_aが領域Uに存在し、RAM_bおよびRAM_cが領域Rに存在し、RAM_dが領域Tに存在するとする。RAM_a、RAM_b、RAM_cおよびRAM_dの重み付け消費電流値は、それぞれ、45mA(=30mA×1.5)、150mA(=150mA×1.0)、50mA(=50mA×1.0)および169mA(=130mA×1.3)となるので、ソート処理部33により、RAM_d、RAM_b、RAM_c、RAM_aの順にRAMが並べ替えられる。   FIG. 19 is an explanatory diagram showing regions with different weighting coefficients. In the example shown in FIG. 19, it is assumed that there are power sources on the four sides of the chip. In this case, since the resistance becomes higher near the center of the chip, the weighting coefficient increases in the order of the peripheral area R of the chip, the area T inside thereof, and the central area U of the chip. For example, the weighting coefficients of the region R, the region T, and the region U are 1.0, 1.3, and 1.5, respectively, and the average current consumption values of the RAM_a, RAM_b, RAM_c, and RAM_d are 30 mA, 150 mA, 50 mA, and 130 mA, respectively. RAM_a exists in the region U, RAM_b and RAM_c exist in the region R, and RAM_d exists in the region T. The weighted current consumption values of RAM_a, RAM_b, RAM_c, and RAM_d are 45 mA (= 30 mA × 1.5), 150 mA (= 150 mA × 1.0), 50 mA (= 50 mA × 1.0), and 169 mA (= 130 mA, respectively). Therefore, the sort processing unit 33 rearranges the RAMs in the order of RAM_d, RAM_b, RAM_c, and RAM_a.

図20は、第3振り分け処理の流れを示す説明図である。図20に示すように、第3振り分け処理が開始されると、まず、前記ステップS31〜ステップS33と同様にして、RAMの重み付け消費電流値に基づいてRAMを並べ替える(ステップS41〜ステップS43)。次いで、RAM間距離計算部44により、その時点での振り分け対象RAMとグループ内の振り分け済みRAMとの距離をグループごとに計算する(ステップS44)。例えば、RAM間距離計算部44により、RAM配置座標データ12から取得したRAMの配置座標に基づいてRAM間の距離を計算する。最初は、いずれのグループにもRAMが振り分けられていないので、RAM間距離を計算しなくてよい。   FIG. 20 is an explanatory diagram showing the flow of the third distribution process. As shown in FIG. 20, when the third distribution process is started, first, the RAMs are rearranged based on the weighted consumption current values of the RAMs in the same manner as in Steps S31 to S33 (Steps S41 to S43). . Next, the distance between the RAM to be allocated and the allocated RAM in the group at that time is calculated for each group by the inter-RAM distance calculation unit 44 (step S44). For example, the RAM distance calculation unit 44 calculates the RAM distance based on the RAM arrangement coordinates acquired from the RAM arrangement coordinate data 12. Initially, since no RAM is allocated to any group, it is not necessary to calculate the distance between RAMs.

次いで、グループ内消費電流計算部45により、振り分け済みRAMの重み付け消費電流値、およびその時点での振り分け対象RAMと振り分け済みRAMとの距離に基づいて、振り分け済みRAMの距離依存重み付け消費電流を計算する(ステップS45)。例えば、グループ内消費電流計算部45により、振り分け済みRAMの重み付け消費電流値をRAM間距離で割り、振り分け済みRAMの距離依存重み付け消費電流値を取得する。そして、グループ内の全てのRAMについて距離依存重み付け消費電流値を計算したか否かを判定し(ステップS46)、計算の済んでいないRAMが残っている場合(ステップS46:No)、ステップS44に戻る。最初は、いずれのグループにもRAMが振り分けられていないので、距離依存重み付け消費電流値を計算しなくてよい。   Next, the intra-group consumption current calculation unit 45 calculates the distance-dependent weighted consumption current of the allocated RAM based on the weighted consumption current value of the allocated RAM and the distance between the allocation target RAM and the allocated RAM at that time. (Step S45). For example, the intra-group consumption current calculation unit 45 divides the weighted consumption current value of the allocated RAM by the distance between the RAMs, and acquires the distance-dependent weighted consumption current value of the allocated RAM. Then, it is determined whether or not the distance-dependent weighted consumption current values have been calculated for all the RAMs in the group (step S46). If there is a RAM that has not been calculated yet (step S46: No), the process proceeds to step S44. Return. Initially, since no RAM is allocated to any group, it is not necessary to calculate the distance-dependent weighted consumption current value.

グループ内の全てのRAMについて距離依存重み付け消費電流値の計算が終了したら(ステップS46:Yes)、グループ内消費電流計算部45により、グループ内のRAMの距離依存重み付け消費電流の合計の平均値(合計電流値)をグループごとに計算する(ステップS47)。そして、全てのグループについて距離依存重み付け消費電流の合計の平均値(合計電流値)を計算したか否かを判定し(ステップS48)、計算の済んでいないグループが残っている場合(ステップS48:No)、ステップS44に戻る。最初は、いずれのグループにもRAMが振り分けられていないので、距離依存重み付け消費電流の合計の平均値を計算しなくてよい。   When the calculation of the distance-dependent weighted consumption current value is completed for all the RAMs in the group (step S46: Yes), the group consumption current calculation unit 45 causes the average value of the sum of the distance-dependent weighted consumption currents of the RAMs in the group ( The total current value) is calculated for each group (step S47). Then, it is determined whether or not the total average value (total current value) of the distance-dependent weighted consumption currents has been calculated for all the groups (step S48), and when a group that has not been calculated remains (step S48: No), it returns to step S44. Initially, since no RAM is allocated to any group, it is not necessary to calculate the average value of the distance-dependent weighted consumption currents.

全てのグループについて距離依存重み付け消費電流の合計の平均値(合計電流値)の計算が終了したら(ステップS48:Yes)、グループ判定部46により、RAMの距離依存重み付け消費電流の合計の平均値に基づいて振り分け対象RAMを振り分ける(ステップS49)。例えば、グループ判定部46により、その時点で重み付け消費電流値が最も大きい振り分け対象RAMを、そのRAMに対する振り分け済みRAMの距離依存重み付け消費電流の合計の平均値が最も小さいグループに振り分ける。最初は、各グループの距離依存重み付け消費電流の合計の平均値がゼロであるので、所定のルールに従って振り分け先のグループを選択する。そして、全てのRAMについて振り分けが終了したか否かを判定し(ステップS50)、振り分けられていないRAMが残っている場合(ステップS50:No)、ステップS44に戻る。全てのRAMの振り分けが終了したら(ステップS50:Yes)、第3振り分け処理を終了する。   When the calculation of the total average value (total current value) of the distance-dependent weighted consumption currents for all the groups is completed (step S48: Yes), the group determination unit 46 sets the average value of the distance-dependent weighted consumption currents of the RAM to the average value. Based on this, the allocation target RAM is allocated (step S49). For example, the group determination unit 46 distributes the allocation target RAM having the largest weighted consumption current value at that time to the group having the smallest average value of the distance-dependent weighted consumption currents of the allocated RAM for the RAM. Initially, since the average value of the total of the distance-dependent weighted consumption currents of each group is zero, a distribution destination group is selected according to a predetermined rule. Then, it is determined whether or not the allocation has been completed for all the RAMs (step S50). If there is any unallocated RAM (step S50: No), the process returns to step S44. When all the RAMs have been distributed (step S50: Yes), the third distribution process ends.

図21および図22は、図20に示す第3振り分け処理でRAMを振り分ける様子を模式的に示す説明図である。図21に示すように、例えば、RAM_aとRAM_bとのRAM間距離、RAM_aとRAM_cとのRAM間距離およびRAM_aとRAM_dとのRAM間距離がそれぞれx2、x3およびx1であるとする。また、RAM_b、RAM_cおよびRAM_dの重み付け消費電流値がそれぞれy2、y3およびy1であるとする。そして、図22に示すように、既にグループAにRAM_dが振り分けられ、グループBにRAM_bとRAM_cが振り分けられているとする。   21 and 22 are explanatory diagrams schematically showing how the RAM is distributed in the third distribution process shown in FIG. As shown in FIG. 21, for example, it is assumed that the distance between RAM_a and RAM_b, the distance between RAM_a and RAM_c, and the distance between RAM_a and RAM_d are x2, x3, and x1, respectively. Further, it is assumed that the weighted consumption current values of RAM_b, RAM_c, and RAM_d are y2, y3, and y1, respectively. Then, as shown in FIG. 22, it is assumed that RAM_d is already allocated to group A, and RAM_b and RAM_c are allocated to group B.

この状態で、RAM_aが振り分け対象RAMである場合、グループ内消費電流計算部45により、グループAに対して次の(1)式を計算してグループAの距離依存重み付け消費電流の合計の平均値i1を求め、グループBに対して次の(2)式を計算してグループBの距離依存重み付け消費電流の合計の平均値i2を求める。そして、グループ判定部46により、i1≦i2である場合には、RAM_aはグループAに割り振られる。i1>i2である場合には、RAM_aはグループBに割り振られる。
i1=y1/x1 ・・・(1)
i2=(y2/x2+y3/x3)/2 ・・・(2)
In this state, when RAM_a is the allocation target RAM, the group consumption current calculation unit 45 calculates the following equation (1) for the group A, and averages the total of the distance-dependent weighted consumption currents of the group A i1 is obtained, and the following equation (2) is calculated for the group B to obtain an average value i2 of the total of the distance-dependent weighted consumption currents of the group B. The group determination unit 46 allocates RAM_a to the group A when i1 ≦ i2. When i1> i2, RAM_a is allocated to group B.
i1 = y1 / x1 (1)
i2 = (y2 / x2 + y3 / x3) / 2 (2)

(コアノイズ解析処理)
コアノイズ解析によって、動的な電源ノイズが求められる。コアノイズ解析を行うにあたっては、電源パッケージ抵抗、インダクタンス、コア部電源抵抗、コア部電源間容量およびコア部電流源からなるコアノイズ解析モデルが作成される。コアノイズ解析モデルとして、集積回路のレイアウト領域を複数の分割ユニット(パワーユニット)に分割し、電源配線、電源間容量および電流源をパワーユニット単位で表現した簡易モデルが用いられてもよい。あるいは、電源配線結果およびセル配置結果に基づいて作成された詳細な電源網モデルが用いられてもよい。
(Core noise analysis processing)
Dynamic power supply noise is determined by core noise analysis. In performing the core noise analysis, a core noise analysis model including a power supply package resistance, an inductance, a core power supply resistance, a core power supply capacitance, and a core current source is created. As the core noise analysis model, a simple model in which the layout area of the integrated circuit is divided into a plurality of divided units (power units) and the power supply wiring, the inter-power supply capacity, and the current source are expressed in units of power units may be used. Alternatively, a detailed power supply network model created based on the power supply wiring result and the cell arrangement result may be used.

図23は、コアノイズ解析に用いられる簡易モデルを示す説明図である。図23に示すように、チップのレイアウト領域71は、複数のパワーユニット72に分割される。図23において、符号73は電源パッケージによる抵抗であり、符号74は電源パッケージによるインダクタンスである。また、パワーユニット72において、符号75はコア電源抵抗であり、符号76は電流源であり、符号77は電源間容量であり、符号78はVDDIノイズ観測点であり、符号79はVSSノイズ観測点である。電流源としては、平均消費電流から三角波形や台形波形を作成して用いられるか、ユニットセルやRAM単体のシミュレーション結果から求めた電流波形が用いられる。RAM部についてはRAMの電流源が用いられる。ロジック部についてはロジックの電流源が用いられる。このような簡易モデルの構成およびこの簡易モデルを用いたコアノイズ解析については、従来同様である。   FIG. 23 is an explanatory diagram showing a simple model used for core noise analysis. As shown in FIG. 23, the chip layout area 71 is divided into a plurality of power units 72. In FIG. 23, reference numeral 73 is a resistance due to the power supply package, and reference numeral 74 is an inductance due to the power supply package. Further, in the power unit 72, reference numeral 75 is a core power supply resistance, reference numeral 76 is a current source, reference numeral 77 is a capacitance between power supplies, reference numeral 78 is a VDDI noise observation point, and reference numeral 79 is a VSS noise observation point. is there. As the current source, a triangular waveform or a trapezoidal waveform is created from the average current consumption, or a current waveform obtained from a simulation result of a unit cell or RAM alone is used. For the RAM unit, a RAM current source is used. A logic current source is used for the logic unit. The configuration of such a simple model and the core noise analysis using this simple model are the same as in the prior art.

(RAM部ドロップピーク判定処理)
図24は、動作RAMの電源ドロップ量とRAMの最低保障電圧との比較の様子を示す説明図である。図24において、動作RAMの電源波形の最も電圧が低い谷部分と、RAMの最低保障電圧とが比較される。
(RAM section drop peak determination processing)
FIG. 24 is an explanatory diagram showing a state of comparison between the power supply drop amount of the operation RAM and the minimum guaranteed voltage of the RAM. In FIG. 24, the lowest voltage trough portion of the power waveform of the operation RAM is compared with the minimum guaranteed voltage of the RAM.

(集積回路の設計開始から製造終了までの手順)
図25は、集積回路の設計開始から製造終了までの流れを示す説明図である。図25に示すように、まず、論理設計を行う(ステップS61)。次いで、上述した実施の形態により同時に動作させることに決定されたRAMの個数の情報に基づいて、テスト合成を行う(ステップS62)。次いで、レイアウト設計を行い(ステップS63)、実際に集積回路を製造する(ステップS64)。その後、製造された集積回路のテストを行う(ステップS65)。テスト合成の際に用いられる、同時に動作させるRAMの個数が適切でない場合、ステップS65のテストでRAMが動作しない状態となり、テストを正常に行うことができないことがある。しかし、実施の形態によれば、設計時に、同時に動作するRAMを適切に決定することができるので、テストの際にRAMが動作しない状態となるのを防ぐことができる。従って、テストを正常に行うことができる。
(Procedure from integrated circuit design start to manufacture end)
FIG. 25 is an explanatory diagram showing a flow from the start of integrated circuit design to the end of manufacture. As shown in FIG. 25, first, logical design is performed (step S61). Next, test composition is performed based on information on the number of RAMs determined to be simultaneously operated according to the above-described embodiment (step S62). Next, layout design is performed (step S63), and an integrated circuit is actually manufactured (step S64). Thereafter, the manufactured integrated circuit is tested (step S65). If the number of RAMs that are used simultaneously for test synthesis is not appropriate, the RAM may not operate in the test of step S65, and the test may not be performed normally. However, according to the embodiment, it is possible to appropriately determine the RAM that operates simultaneously at the time of design, and therefore it is possible to prevent the RAM from being in an inoperable state during the test. Therefore, the test can be performed normally.

なお、本実施の形態で説明した集積回路設計方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。   The integrated circuit design method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. This program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read from the recording medium by the computer. The program may be a transmission medium that can be distributed via a network such as the Internet.

また、本実施の形態で説明した集積回路設計装置は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けIC(以下、単に「ASIC」と称す。)やFPGAなどのPLD(Programmable Logic Device)によっても実現することができる。具体的には、例えば、上述した集積回路設計装置の機能1〜8,21〜23,31〜35,41〜46をHDL記述によって機能定義し、そのHDL記述を論理合成してASICやPLDに与えることにより、集積回路設計装置を製造することができる。   In addition, the integrated circuit design apparatus described in the present embodiment includes a PLD (Programmable) such as a standard cell or a specific application IC (hereinafter simply referred to as “ASIC”) such as a structured ASIC (Application Specific Integrated Circuit). It can also be realized by Logic Device). Specifically, for example, the functions 1 to 8, 21 to 23, 31 to 35, and 41 to 46 of the above-described integrated circuit design apparatus are defined by HDL description, and the HDL description is logically synthesized to ASIC or PLD. By providing, an integrated circuit design apparatus can be manufactured.

以上に述べた実施形態によれば、集積回路の製造後に実施されるテストの回数が減り、テスト費用の削減を図ることができる集積回路設計プログラム、集積回路設計装置および集積回路設計方法が提供される。また、そのテストを正常に行うことができ、それによって設計から製造に至るまでの全体の時間および費用を削減することができる集積回路設計プログラム、集積回路設計装置および集積回路設計方法が提供される。   According to the embodiments described above, there are provided an integrated circuit design program, an integrated circuit design apparatus, and an integrated circuit design method capable of reducing the number of tests performed after manufacturing an integrated circuit and reducing the test cost. The Also provided are an integrated circuit design program, an integrated circuit design apparatus, and an integrated circuit design method capable of performing the test normally, thereby reducing the overall time and cost from design to manufacture. .

以上に述べた実施形態によれば、設計段階において、複数のRAMが、同時に動作するRAMごとのグループに適切に分けられるので、集積回路の製造後に実施されるテストにおいて、より少ない回数でテストが終了する。従って、1グループ当たりのRAMの個数を少なく見積もった場合に比べて、テスト費用を少なくすることができる。また、そのテスト時に、RAMの動作に起因するコア部の電源ノイズが許容範囲に収まるので、RAMが正常に動作し、テストを正常に行うことができる。この場合には、再び設計をやり直さずに済むので、設計から製造に至るまでの全体の時間および費用を削減することができる。   According to the embodiment described above, since a plurality of RAMs are appropriately divided into groups for each RAM that operates simultaneously in the design stage, the test performed after the manufacture of the integrated circuit can be performed with a smaller number of times. finish. Therefore, the test cost can be reduced as compared with the case where the number of RAMs per group is estimated to be small. Moreover, since the power supply noise of the core part resulting from the operation of the RAM falls within an allowable range during the test, the RAM operates normally and the test can be performed normally. In this case, since it is not necessary to perform the design again, the overall time and cost from the design to the manufacturing can be reduced.

上述した実施の形態に関し、さらに以下の付記を開示する。   The following additional notes are disclosed with respect to the embodiment described above.

(付記1)コンピュータを、複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分け手段、前記振り分け手段により前記素子が振り分けられた各グループについてコアノイズを解析する解析手段、前記解析手段によるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定手段、前記判定手段により前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定手段、前記判定手段により前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分け手段による前記素子の振り分け条件を変更する変更手段、として機能させることを特徴とする集積回路設計プログラム。 (Supplementary note 1) According to a distribution unit that distributes a plurality of elements to a plurality of groups based on electrical characteristic values, an analysis unit that analyzes core noise for each group to which the elements are distributed by the distribution unit, and the analysis unit Determining means for determining whether or not a power drop amount of the element obtained by core noise analysis satisfies a predetermined condition; and for the group determined by the determining means that the power drop amount of the element satisfies a predetermined condition A determination unit that determines the elements included in the group as elements to be operated at the same time, and the element distribution by the distribution unit for the group determined by the determination unit that the power drop amount of the element does not satisfy a predetermined condition It functions as a changing means for changing conditions. Integrated circuit design program to be.

(付記2)前記振り分け手段として、前記コンピュータを、振り分け済み素子の消費電流の合計値を前記グループごとに計算するグループ内消費電流計算手段、前記グループ内消費電流計算手段により得られた前記各グループの前記消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定手段、として機能させることを特徴とする付記1に記載の集積回路設計プログラム。 (Additional remark 2) As said distribution means, the said computer, each group obtained by said group consumption current calculation means which calculates the total value of the consumption current of the allocated element for every said group, and said group consumption current calculation means The integrated circuit design program according to appendix 1, wherein the integrated circuit design program is caused to function as a group determination unit that determines a distribution destination group of a distribution target element based on a total value of the current consumption.

(付記3)前記振り分け手段として、前記コンピュータを、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算手段、前記重み付け消費電流計算手段により得られた振り分け済み素子の重み付け消費電流の合計値を前記グループごとに計算するグループ内消費電流計算手段、前記グループ内消費電流計算手段により得られた前記各グループの前記重み付け消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定手段、として機能させることを特徴とする付記1に記載の集積回路設計プログラム。 (Supplementary Note 3) Weighted consumption current calculation means for weighting the current consumption value of the element based on the arrangement position of the element as the distribution means, and the distributed element obtained by the weighted consumption current calculation means A group consumption current calculation means for calculating the total weighted consumption current for each group, and based on the weighted consumption current total value of each group obtained by the group consumption current calculation means The integrated circuit design program according to appendix 1, wherein the integrated circuit design program is caused to function as group determination means for determining a distribution destination group.

(付記4)前記振り分け手段として、前記コンピュータを、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算手段、振り分け対象素子と振り分け済み素子との距離を前記グループごとに計算する素子間距離計算手段、前記重み付け消費電流計算手段により得られた前記振り分け済み素子の重み付け消費電流値および前記素子間距離計算手段により得られた素子間距離に基づいて、前記振り分け済み素子の前記素子間距離を考慮した重み付け消費電流の合計の平均値を前記グループごとに計算するグループ内消費電流計算手段、前記グループ内消費電流計算手段により得られた前記各グループの前記素子間距離を考慮した重み付け消費電流の合計の平均値に基づいて前記振り分け対象素子の振り分け先グループを判定するグループ判定手段、として機能させることを特徴とする付記1に記載の集積回路設計プログラム。 (Additional remark 4) As said distribution means, said computer is weighted consumption current calculation means for weighting the current consumption value of said element based on the arrangement position of said element, and the distance between the distribution target element and the allocated element is said group Based on the element-to-element distance calculation means to calculate for each, the weighted consumption current value of the assigned element obtained by the weighted consumption current calculation means and the element-to-element distance obtained by the element-to-element distance calculation means In-group consumption current calculation means for calculating an average value of the total weighted consumption current considering the distance between elements of each element for each group, and the inter-element distance of each group obtained by the in-group consumption current calculation means Distribution of the distribution target elements based on the average value of the total weighted current consumption considering Integrated circuit design program according to Note 1, characterized in that the functioning of the group determines the group determination unit as.

(付記5)前記コンピュータを、付記2に記載の前記振り分け手段、付記3に記載の前記振り分け手段および付記4に記載の前記振り分け手段のうちの少なくとも二つの手段として機能させるとともに、前記素子の分布に基づいていずれか一つの前記振り分け手段を選択する選択手段、として機能させることを特徴とする付記1に記載の集積回路設計プログラム。 (Supplementary Note 5) The computer functions as at least two of the distribution means according to Supplementary Note 2, the distribution means according to Supplementary Note 3, and the distribution means according to Supplementary Note 4, and the distribution of the elements The integrated circuit design program according to appendix 1, wherein the integrated circuit design program is made to function as a selection unit that selects any one of the distribution units based on the above.

(付記6)複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分け部と、前記振り分け部により前記素子が振り分けられた各グループについてコアノイズを解析する解析部と、前記解析部によるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定部と、前記判定部により前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定部と、前記判定部により前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分け部による前記素子の振り分け条件を変更する変更部と、を備えることを特徴とする集積回路設計装置。 (Additional remark 6) The distribution part which distributes a some element to a some group based on an electrical property value, The analysis part which analyzes a core noise about each group to which the said element was distributed by the said distribution part, The core noise by the said analysis part A determination unit that determines whether or not a power drop amount of the element obtained by the analysis satisfies a predetermined condition; and the group that is determined by the determination unit that the power drop amount of the element satisfies a predetermined condition A determination unit that determines the elements included in the group as elements to be operated simultaneously, and the determination unit determines that the power drop amount of the elements does not satisfy a predetermined condition. An integrated circuit design apparatus comprising: a changing unit that changes a distribution condition.

(付記7)前記振り分け部は、振り分け済み素子の消費電流の合計値を前記グループごとに計算するグループ内消費電流計算部と、前記グループ内消費電流計算部により得られた前記各グループの前記消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定部と、を備えることを特徴とする付記6に記載の集積回路設計装置。 (Additional remark 7) The said distribution part is the consumption current calculation part in a group which calculates the total value of the consumption current of the allocated element for every said group, and the said consumption of each said group obtained by the said consumption current calculation part in a group The integrated circuit design device according to appendix 6, further comprising: a group determination unit that determines a distribution destination group of the distribution target element based on a total value of currents.

(付記8)前記振り分け部は、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算部と、前記重み付け消費電流計算部により得られた振り分け済み素子の重み付け消費電流の合計値を前記グループごとに計算するグループ内消費電流計算部と、前記グループ内消費電流計算部により得られた前記各グループの前記重み付け消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定部と、を備えることを特徴とする付記6に記載の集積回路設計装置。 (Supplementary Note 8) The distribution unit includes a weighted consumption current calculation unit that weights the consumption current value of the element based on the arrangement position of the element, and a weighted consumption of the distributed element obtained by the weighted consumption current calculation unit An intra-group consumption current calculation unit that calculates a total current value for each group, and a distribution destination of the distribution target element based on the total weighted consumption current value of each group obtained by the intra-group consumption current calculation unit The integrated circuit design device according to appendix 6, further comprising: a group determination unit that determines a group.

(付記9)前記振り分け部は、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算部と、振り分け対象素子と振り分け済み素子との距離を前記グループごとに計算する素子間距離計算部と、前記重み付け消費電流計算部により得られた前記振り分け済み素子の重み付け消費電流値および前記素子間距離計算部により得られた素子間距離に基づいて、前記振り分け済み素子の前記素子間距離を考慮した重み付け消費電流の合計の平均値を前記グループごとに計算するグループ内消費電流計算部と、前記グループ内消費電流計算部により得られた前記各グループの前記素子間距離を考慮した重み付け消費電流の合計の平均値に基づいて前記振り分け対象素子の振り分け先グループを判定するグループ判定部と、を備えることを特徴とする付記6に記載の集積回路設計装置。 (Additional remark 9) The said distribution part calculates the distance of the weighting consumption current calculation part which weights the consumption current value of the said element based on the arrangement position of the said element, and the distribution object element and the allocated element for every said group Based on the inter-element distance calculation unit, the weighted consumption current value of the allocated element obtained by the weighted consumption current calculation unit, and the inter-element distance obtained by the inter-element distance calculation unit. An intra-group current consumption calculator that calculates an average value of the total weighted current consumption considering the distance between the elements for each group, and the inter-element distance of each group obtained by the intra-group current consumption calculator. Group determination for determining a distribution destination group of the distribution target element based on an average value of the total weighted current consumption considered If, integrated circuit design apparatus according to note 6, characterized in that it comprises a.

(付記10)付記7に記載の前記振り分け部、付記8に記載の前記振り分け部および付記9に記載の前記振り分け部のうちの少なくとも二つを備え、前記素子の分布に基づいていずれか一つの前記振り分け部を選択する選択部、をさらに備えることを特徴とする付記6に記載の集積回路設計装置。 (Supplementary Note 10) The distribution unit according to Supplementary Note 7, including the distribution unit according to Supplementary Note 8, and the distribution unit according to Supplementary Note 9, wherein any one of the distribution units is provided based on the distribution of the elements. The integrated circuit design device according to appendix 6, further comprising a selection unit that selects the distribution unit.

(付記11)複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分けステップと、前記振り分けステップにより前記素子が振り分けられた各グループについてコアノイズを解析する解析ステップと、前記解析ステップによるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定ステップと、前記判定ステップにより前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定ステップと、前記判定ステップにより前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分けステップによる前記素子の振り分け条件を変更する変更ステップと、を含むことを特徴とする集積回路設計方法。 (Additional remark 11) The distribution step which distributes a some element to a some group based on an electrical property value, The analysis step which analyzes a core noise about each group to which the said element was distributed by the said allocation step, The core noise by the said analysis step A determination step of determining whether or not a power drop amount of the element obtained by the analysis satisfies a predetermined condition; and the group in which the power drop amount of the element is determined to satisfy a predetermined condition by the determination step A determination step of determining the elements included in the group as elements to be simultaneously operated, and the determination of the element by the distribution step for the group determined by the determination step that the power drop amount of the elements does not satisfy a predetermined condition Changes to change sorting conditions Integrated circuit design method characterized by comprising Tsu and up, the.

(付記12)前記振り分けステップは、振り分け済み素子の消費電流の合計値を前記グループごとに計算するグループ内消費電流計算ステップと、前記グループ内消費電流計算ステップにより得られた前記各グループの前記消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定ステップと、を含むことを特徴とする付記11に記載の集積回路設計方法。 (Additional remark 12) The said distribution step calculates the total value of the consumption current of the distributed element for every said group, and the said consumption of each said group obtained by the said consumption current calculation step in the said group The integrated circuit design method according to appendix 11, further comprising: a group determination step of determining a distribution destination group of the distribution target element based on a total value of currents.

(付記13)前記振り分けステップは、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算ステップと、前記重み付け消費電流計算ステップにより得られた振り分け済み素子の重み付け消費電流の合計値を前記グループごとに計算するグループ内消費電流計算ステップと、前記グループ内消費電流計算ステップにより得られた前記各グループの前記重み付け消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定ステップと、を含むことを特徴とする付記11に記載の集積回路設計方法。 (Additional remark 13) The distribution step includes a weighted consumption current calculation step for weighting the consumption current value of the element based on an arrangement position of the element, and a weighted consumption of the distributed element obtained by the weighted consumption current calculation step. A group current consumption calculation step for calculating a total current value for each group, and a distribution destination of the distribution target element based on the weighted current consumption total value of each group obtained by the group current consumption calculation step The integrated circuit design method according to claim 11, further comprising a group determination step of determining a group.

(付記14)前記振り分けステップは、前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算ステップと、振り分け対象素子と振り分け済み素子との距離を前記グループごとに計算する素子間距離計算ステップと、前記重み付け消費電流計算ステップにより得られた前記振り分け済み素子の重み付け消費電流値および前記素子間距離計算ステップにより得られた素子間距離に基づいて、前記振り分け済み素子の前記素子間距離を考慮した重み付け消費電流の合計の平均値を前記グループごとに計算するグループ内消費電流計算ステップと、前記グループ内消費電流計算ステップにより得られた前記各グループの前記素子間距離を考慮した重み付け消費電流の合計の平均値に基づいて前記振り分け対象素子の振り分け先グループを判定するグループ判定ステップと、を含むことを特徴とする付記11に記載の集積回路設計方法。 (Additional remark 14) The said allocation step calculates the distance of the weighting consumption current calculation step which weights the consumption current value of the said element based on the arrangement position of the said element, and the element for distribution, and the allocated element for every said group The inter-element distance calculation step, the weighted consumption current value of the allocated element obtained by the weighted consumption current calculation step, and the inter-element distance obtained by the inter-element distance calculation step, The intra-group consumption current calculation step for calculating the average value of the total weighted consumption current considering the inter-element distance, and the inter-element distance of each group obtained by the intra-group consumption current calculation step. Based on an average value of the total of the weighted consumption currents considered, Integrated circuit design method according to Note 11, characterized in that it comprises a group determining step of determining distribution destination group, the.

(付記15)付記12に記載の前記振り分けステップ、付記13に記載の前記振り分けステップおよび付記14に記載の前記振り分けステップのうちの少なくとも二つを含み、前記素子の分布に基づいていずれか一つの前記振り分けステップを選択する選択ステップ、をさらに含むことを特徴とする付記11に記載の集積回路設計方法。 (Supplementary Note 15) At least two of the distribution step according to Supplementary Note 12, the distribution step according to Supplementary Note 13, and the distribution step according to Supplementary Note 14, and any one of them based on the distribution of the elements The integrated circuit design method according to claim 11, further comprising a selection step of selecting the distribution step.

実施の形態にかかる集積回路設計装置の構成を示す説明図である。It is explanatory drawing which shows the structure of the integrated circuit design apparatus concerning embodiment. 第1振り分け部の構成を示す説明図である。It is explanatory drawing which shows the structure of a 1st distribution part. 第2振り分け部の構成を示す説明図である。It is explanatory drawing which shows the structure of a 2nd distribution part. 第3振り分け部の構成を示す説明図である。It is explanatory drawing which shows the structure of a 3rd distribution part. 実施の形態にかかるコンピュータ装置のハードウェア構成を示す説明図である。It is explanatory drawing which shows the hardware constitutions of the computer apparatus concerning embodiment. 実施の形態にかかる集積回路設計処理の全体の流れを示す説明図である。It is explanatory drawing which shows the flow of the whole integrated circuit design process concerning embodiment. RAMをグループ化する様子を模式的に示す説明図である。It is explanatory drawing which shows a mode that RAM is grouped. 動作RAM選択処理の流れを示す説明図である。It is explanatory drawing which shows the flow of operation | movement RAM selection processing. 動作RAM選択処理における判定基準を示す説明図である。It is explanatory drawing which shows the criterion in operation | movement RAM selection processing. 動作RAM選択処理における判定基準を示す説明図である。It is explanatory drawing which shows the criterion in operation | movement RAM selection processing. 動作RAM選択処理における判定基準を示す説明図である。It is explanatory drawing which shows the criterion in operation | movement RAM selection processing. 動作RAM選択処理における判定基準を示す説明図である。It is explanatory drawing which shows the criterion in operation | movement RAM selection processing. 第1振り分け処理が実行される代表的なRAMの配置パターンを示す説明図である。It is explanatory drawing which shows the arrangement pattern of the typical RAM in which a 1st distribution process is performed. 第2振り分け処理が実行される代表的なRAMの配置パターンを示す説明図である。It is explanatory drawing which shows the arrangement pattern of the typical RAM in which a 2nd distribution process is performed. 第3振り分け処理が実行される代表的なRAMの配置パターンを示す説明図である。It is explanatory drawing which shows the arrangement pattern of the typical RAM in which a 3rd distribution process is performed. 第1振り分け処理の流れを示す説明図である。It is explanatory drawing which shows the flow of a 1st distribution process. 第1振り分け処理でRAMを振り分ける様子を模式的に示す説明図である。It is explanatory drawing which shows typically a mode that RAM is distributed by a 1st distribution process. 第2振り分け処理の流れを示す説明図である。It is explanatory drawing which shows the flow of a 2nd distribution process. 重み付け係数の異なる領域を示す説明図である。It is explanatory drawing which shows the area | region where a weighting coefficient differs. 第3振り分け処理の流れを示す説明図である。It is explanatory drawing which shows the flow of a 3rd distribution process. 第3振り分け処理でRAMを振り分ける様子を模式的に示す説明図である。It is explanatory drawing which shows typically a mode that RAM is distributed by a 3rd distribution process. 第3振り分け処理でRAMを振り分ける様子を模式的に示す説明図である。It is explanatory drawing which shows typically a mode that RAM is distributed by a 3rd distribution process. コアノイズ解析に用いられる簡易モデルを示す説明図である。It is explanatory drawing which shows the simple model used for a core noise analysis. 動作RAMの電源ドロップ量とRAMの最低保障電圧との比較の様子を示す説明図である。It is explanatory drawing which shows the mode of a comparison with the power supply drop amount of operation | movement RAM, and the minimum guarantee voltage of RAM. 集積回路の設計開始から製造終了までの流れを示す説明図である。It is explanatory drawing which shows the flow from the design start of an integrated circuit to completion | finish of manufacture.

符号の説明Explanation of symbols

1 選択部
2,3,4 振り分け部
5 解析部
6 判定部
7 決定部
8 変更部
22,34,45 グループ内消費電流計算部
23,35,46 グループ判定部
32,42 重み付け消費電流計算部
44 素子間距離計算部
DESCRIPTION OF SYMBOLS 1 Selection part 2,3,4 Distribution part 5 Analysis part 6 Determination part 7 Determination part 8 Change part 22, 34, 45 In-group consumption current calculation part 23, 35, 46 Group determination part 32, 42 Weighted consumption current calculation part 44 Inter-element distance calculator

Claims (7)

コンピュータを、
複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分け手段、
前記振り分け手段により前記素子が振り分けられた各グループについてコアノイズを解析する解析手段、
前記解析手段によるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定手段、
前記判定手段により前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定手段、
前記判定手段により前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分け手段による前記素子の振り分け条件を変更する変更手段、
として機能させることを特徴とする集積回路設計プログラム。
Computer
A distribution means for distributing a plurality of elements into a plurality of groups based on electrical characteristic values;
Analyzing means for analyzing core noise for each group to which the elements are distributed by the distributing means;
Determining means for determining whether or not the power drop amount of the element obtained by the core noise analysis by the analyzing means satisfies a predetermined condition;
A determining unit that determines, by the determining unit, an element that simultaneously operates the elements included in the group for the group in which the power drop amount of the element is determined to satisfy a predetermined condition;
Changing means for changing the element distribution condition by the distribution means for the group determined by the determination means that the power drop amount of the element does not satisfy a predetermined condition;
An integrated circuit design program characterized by functioning as
前記振り分け手段として、前記コンピュータを、
振り分け済み素子の消費電流の合計値を前記グループごとに計算するグループ内消費電流計算手段、
前記グループ内消費電流計算手段により得られた前記各グループの前記消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定手段、
として機能させることを特徴とする請求項1に記載の集積回路設計プログラム。
As the distribution means, the computer is
In-group consumption current calculation means for calculating a total value of consumption current of the allocated elements for each group,
Group determination means for determining a distribution destination group of elements to be distributed based on a total value of the current consumption of each group obtained by the current consumption calculation means in the group;
The integrated circuit design program according to claim 1, wherein the integrated circuit design program is made to function as:
前記振り分け手段として、前記コンピュータを、
前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算手段、
前記重み付け消費電流計算手段により得られた振り分け済み素子の重み付け消費電流の合計値を前記グループごとに計算するグループ内消費電流計算手段、
前記グループ内消費電流計算手段により得られた前記各グループの前記重み付け消費電流の合計値に基づいて振り分け対象素子の振り分け先グループを判定するグループ判定手段、
として機能させることを特徴とする請求項1に記載の集積回路設計プログラム。
As the distribution means, the computer is
Weighted consumption current calculation means for weighting the consumption current value of the element based on the arrangement position of the element;
In-group consumption current calculation means for calculating a total value of weighted consumption currents of allocated elements obtained by the weighted consumption current calculation means for each group,
Group determination means for determining a distribution destination group of the distribution target element based on a total value of the weighted consumption currents of the groups obtained by the in-group consumption current calculation means;
The integrated circuit design program according to claim 1, wherein the integrated circuit design program is made to function as:
前記振り分け手段として、前記コンピュータを、
前記素子の配置位置に基づいて前記素子の消費電流値に重み付けをする重み付け消費電流計算手段、
振り分け対象素子と振り分け済み素子との距離を前記グループごとに計算する素子間距離計算手段、
前記重み付け消費電流計算手段により得られた前記振り分け済み素子の重み付け消費電流値および前記素子間距離計算手段により得られた素子間距離に基づいて、前記振り分け済み素子の前記素子間距離を考慮した重み付け消費電流の合計の平均値を前記グループごとに計算するグループ内消費電流計算手段、
前記グループ内消費電流計算手段により得られた前記各グループの前記素子間距離を考慮した重み付け消費電流の合計の平均値に基づいて前記振り分け対象素子の振り分け先グループを判定するグループ判定手段、
として機能させることを特徴とする請求項1に記載の集積回路設計プログラム。
As the distribution means, the computer is
Weighted consumption current calculation means for weighting the consumption current value of the element based on the arrangement position of the element;
Inter-element distance calculation means for calculating the distance between the distribution target element and the allocated element for each group,
Weighting considering the inter-element distance of the allocated element based on the weighted consumption current value of the allocated element obtained by the weighted consumption current calculation means and the inter-element distance obtained by the inter-element distance calculation means In-group consumption current calculation means for calculating an average value of the total consumption current for each group,
Group determination means for determining a distribution destination group of the distribution target elements based on an average value of a total of weighted consumption currents in consideration of the distance between the elements of each group obtained by the intra-group consumption current calculation means;
The integrated circuit design program according to claim 1, wherein the integrated circuit design program is made to function as:
前記コンピュータを、
請求項2に記載の前記振り分け手段、請求項3に記載の前記振り分け手段および請求項4に記載の前記振り分け手段のうちの少なくとも二つの手段として機能させるとともに、
前記素子の分布に基づいていずれか一つの前記振り分け手段を選択する選択手段、
として機能させることを特徴とする請求項1に記載の集積回路設計プログラム。
The computer,
And functioning as at least two of the distribution means according to claim 2, the distribution means according to claim 3, and the distribution means according to claim 4,
Selection means for selecting any one of the sorting means based on the distribution of the elements;
The integrated circuit design program according to claim 1, wherein the integrated circuit design program is made to function as:
複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分け部と、
前記振り分け部により前記素子が振り分けられた各グループについてコアノイズを解析する解析部と、
前記解析部によるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定部と、
前記判定部により前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定部と、
前記判定部により前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分け部による前記素子の振り分け条件を変更する変更部と、
を備えることを特徴とする集積回路設計装置。
A distribution unit that distributes a plurality of elements into a plurality of groups based on electrical characteristic values;
An analysis unit that analyzes core noise for each group to which the elements are distributed by the distribution unit;
A determination unit that determines whether or not the power drop amount of the element obtained by the core noise analysis by the analysis unit satisfies a predetermined condition;
A determination unit that determines, as the element that simultaneously operates the elements included in the group, for the group that is determined by the determination unit that the power drop amount of the element satisfies a predetermined condition;
A change unit for changing the element distribution condition by the distribution unit for the group determined by the determination unit that the power drop amount of the element does not satisfy a predetermined condition;
An integrated circuit design apparatus comprising:
複数の素子を電気的特性値に基づいて複数のグループに振り分ける振り分けステップと、
前記振り分けステップにより前記素子が振り分けられた各グループについてコアノイズを解析する解析ステップと、
前記解析ステップによるコアノイズ解析によって得られた前記素子の電源ドロップ量が所定の条件を満たすか否かを判定する判定ステップと、
前記判定ステップにより前記素子の電源ドロップ量が所定の条件を満たすと判定された前記グループについて当該グループに含まれる前記素子を同時に動作させる素子に決定する決定ステップと、
前記判定ステップにより前記素子の電源ドロップ量が所定の条件を満たさないと判定された前記グループについて前記振り分けステップによる前記素子の振り分け条件を変更する変更ステップと、
を含むことを特徴とする集積回路設計方法。
A distribution step of distributing a plurality of elements into a plurality of groups based on electrical characteristic values;
An analysis step of analyzing core noise for each group to which the elements are distributed by the distribution step;
A determination step of determining whether or not the power drop amount of the element obtained by the core noise analysis in the analysis step satisfies a predetermined condition;
A determination step of determining, as the element that simultaneously operates the elements included in the group, for the group determined by the determination step that the power drop amount of the element satisfies a predetermined condition;
A change step of changing the element distribution condition by the distribution step for the group determined by the determination step that the power drop amount of the element does not satisfy a predetermined condition;
An integrated circuit design method comprising:
JP2008307004A 2008-12-02 2008-12-02 Integrated circuit design program and integrated circuit design apparatus Expired - Fee Related JP5257030B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008307004A JP5257030B2 (en) 2008-12-02 2008-12-02 Integrated circuit design program and integrated circuit design apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008307004A JP5257030B2 (en) 2008-12-02 2008-12-02 Integrated circuit design program and integrated circuit design apparatus

Publications (2)

Publication Number Publication Date
JP2010134498A true JP2010134498A (en) 2010-06-17
JP5257030B2 JP5257030B2 (en) 2013-08-07

Family

ID=42345770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008307004A Expired - Fee Related JP5257030B2 (en) 2008-12-02 2008-12-02 Integrated circuit design program and integrated circuit design apparatus

Country Status (1)

Country Link
JP (1) JP5257030B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11238802A (en) * 1998-02-19 1999-08-31 Matsushita Electric Ind Co Ltd Automatically arreanged wiring and its device
JP2002217300A (en) * 2001-01-19 2002-08-02 Nec Microsystems Ltd Cell arrangement method
JP2004199705A (en) * 2004-01-13 2004-07-15 Matsushita Electric Ind Co Ltd Clock generation apparatus and generation method for integrated circuit
JP2005157487A (en) * 2003-11-20 2005-06-16 Kawasaki Microelectronics Kk Automatic arranging and wiring method
JP2006066825A (en) * 2004-08-30 2006-03-09 Renesas Technology Corp Device for supporting design of semiconductor integrated circuit test
JP2009135134A (en) * 2007-11-28 2009-06-18 Fujitsu Microelectronics Ltd Method of designing semiconductor integrated circuit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11238802A (en) * 1998-02-19 1999-08-31 Matsushita Electric Ind Co Ltd Automatically arreanged wiring and its device
JP2002217300A (en) * 2001-01-19 2002-08-02 Nec Microsystems Ltd Cell arrangement method
JP2005157487A (en) * 2003-11-20 2005-06-16 Kawasaki Microelectronics Kk Automatic arranging and wiring method
JP2004199705A (en) * 2004-01-13 2004-07-15 Matsushita Electric Ind Co Ltd Clock generation apparatus and generation method for integrated circuit
JP2006066825A (en) * 2004-08-30 2006-03-09 Renesas Technology Corp Device for supporting design of semiconductor integrated circuit test
JP2009135134A (en) * 2007-11-28 2009-06-18 Fujitsu Microelectronics Ltd Method of designing semiconductor integrated circuit

Also Published As

Publication number Publication date
JP5257030B2 (en) 2013-08-07

Similar Documents

Publication Publication Date Title
JP4719265B2 (en) System and method for probabilistic interconnect structure design
US6446239B1 (en) Method and apparatus for optimizing electronic design
US6449761B1 (en) Method and apparatus for providing multiple electronic design solutions
Rennen et al. Nested maximin Latin hypercube designs
US8104008B2 (en) Layout design apparatus, layout design method, and computer product
US20160154924A1 (en) Semiconductor design method and computer-readable recording medium
Ozdal et al. A length-matching routing algorithm for high-performance printed circuit boards
Tang et al. A survey on steiner tree construction and global routing for vlsi design
JP2010066871A (en) Method and device for layout design of semiconductor integrated circuit
US10509883B2 (en) Method for layout generation with constrained hypergraph partitioning
Ozdal et al. Archer: A history-based global routing algorithm
JP5257030B2 (en) Integrated circuit design program and integrated circuit design apparatus
JP4249285B2 (en) Physical conversion definition editing device
Luo et al. Large-scale fixed-outline floorplanning design using convex optimization techniques
JPWO2010125752A1 (en) Power supply design system, power supply design method, and power supply design program
Hamza et al. An explicit level-set approach for structural topology optimization
JP6136430B2 (en) Design support apparatus, design support method, and design support program
JP2004086881A (en) Device and method for designing semiconductor integrated circuit, manufacturing method of semiconductor integrated circuit and readable recording medium
JP3761661B2 (en) Floor plan method and apparatus
Zuber et al. Wire topology optimization for low power CMOS
JP4733059B2 (en) Integrated circuit design apparatus, integrated circuit design method, and integrated circuit design program
JP5509952B2 (en) Simulation method, simulation apparatus, program, and storage medium
JP6326756B2 (en) Information processing apparatus, scan path connection method, and program for configuring scan campus
JP5239745B2 (en) Current determination program, current determination device, and current determination method
US7370304B2 (en) System and method for designing and manufacturing LSI

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130408

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees