JP2007188488A - パッキングベースのマクロ配置方法とそれを用いた半導体チップ - Google Patents
パッキングベースのマクロ配置方法とそれを用いた半導体チップ Download PDFInfo
- Publication number
- JP2007188488A JP2007188488A JP2006342348A JP2006342348A JP2007188488A JP 2007188488 A JP2007188488 A JP 2007188488A JP 2006342348 A JP2006342348 A JP 2006342348A JP 2006342348 A JP2006342348 A JP 2006342348A JP 2007188488 A JP2007188488 A JP 2007188488A
- Authority
- JP
- Japan
- Prior art keywords
- macro
- packing
- placement
- semiconductor chip
- tree
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
Abstract
【解決手段】MPTマクロ配置器は、LEF/DEFフォーマットで入力ファイルを読み取る工程と、Kレベルマルチパッキング二分木を生成する工程と、パッキング結果に基づき、マルチパッキングツリーを最適化する工程と、DEFフォーマットで出力ファイルを生成する工程と、からなる。Kレベルマルチパッキング二分木は、それぞれが一レベルに対応するKブランチノードと、ノードの一つに対応し、一群のマクロを有するK+1パッキングサブツリーと、からなる。
【選択図】図10
Description
左下パッキング(BL−packing)では、(cx, cy);
左上パッキング(TL−packing)では、 (cx, cy − hroot);
右上パッキング(TR−packing)では、 (cx − wroot, cy − hroot);及び
右下パッキング(BR−packing)では、 (cx − wroot, cy)。
左下パッキングでは、右側最低の相隣ブロックで、且つ、xj = xi + wi ;
左上パッキングでは、右側最高の相隣ブロックで、且つ、xj = xi + wi ;
右上パッキングでは、左側最高の相隣ブロックで、且つ、xj = xi − wj ;
右下パッキングでは、左側最低の相隣ブロックで、且つ、xj = xi − wj 。
左下パッキングでは、xj = xi ;
左上パッキングでは、xj = xi ;
右上パッキングでは、xj = xi + wi − wj ;
右下パッキングでは、xj = xi + wi − wj 。
演算1:ブロック(クラスタ)を旋転させる
演算2:クラスタのサイズ変更する
演算3:パッキングサブツリーのノードをもう一つの場所に移動させる
演算4:一つ、或いは、二つのパッキングサブツリー中の二ノードを交換する
演算5:二パッキングサブツリーを交換する
Φ=αA+βW+γD+δO+εT
Aはマクロ配置領域、Wは総線長、Dは総マクロ移動、Oは垂直重畳長さを示し、且つ、α、β、γ及びδは使用者が定義する重みパラメータ(weighting parameter)である。マクロ配置領域、線長、垂直重畳長さは以下のパラグラフで示される。
b0、b1、b2、b3、bk〜ブロック;
T0、T1、T2、T3、Tk〜パッキングサブツリー。
Claims (19)
- 半導体チップであって、
前記半導体チップの第一方向に緊密にパックされる第一群マクロと、
前記半導体チップの第二方向に緊密にパックされる第二群マクロと、
を含むことを特徴とする半導体チップ。 - 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを有するマクロクラスタを含むことを特徴とする請求項1に記載の半導体チップ。
- 更に、重畳することなく、前記第一、或いは、第二群マクロに配置される配置障害、或いは、プレ配置マクロを有することを特徴とする請求項1に記載の半導体チップ。
- 半導体チップであって、
前記半導体チップの第一端に緊密にパックされる第一群マクロと、
前記半導体チップの第二端に緊密にパックされる第二群マクロと、
を含むことを特徴とする半導体チップ。 - 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを有するマクロクラスタを含むことを特徴とする請求項4に記載の半導体チップ。
- 半導体チップであって、
前記半導体チップの第一コーナーに緊密にパックされる第一群マクロと、
前記半導体チップの第二コーナーに緊密にパックされる第二群マクロと、
を有することを特徴とする半導体チップ。 - 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを含むマクロクラスタを有することを特徴とする請求項6に記載の半導体チップ。
- 前記第一、及び、第二群マクロはそれぞれ、根でコーナーマクロを有するパッキング二分木に対応することを特徴とする請求項6に記載の半導体チップ。
- マクロ配置の方法であって、
Kレベルマルチパッキング二分木を生成する工程と、
各パッキングサブツリーのマクロを配置領域にパッキングする工程と、を含み、
前記Kレベルマルチパッキング二分木は、それぞれ一レベルに対応するKブランチノードと、それぞれ一群のマクロを有し、それぞれノードの一つに対応するK+1パッキングサブツリーと、を有することを特徴とする方法。 - 前記の各パッキングサブツリーのマクロは配置領域の一つの方向にパックされ、各パッキングサブツリーに対応する前記方向は他と異なることを特徴とする請求項9に記載の方法。
- 前記の各パッキングサブツリーのマクロは配置領域の一つの端にパックされ、各パッキングサブツリーに対応する前記端は他と異なることを特徴とする請求項9に記載の方法。
- 前記の各パッキングサブツリーのマクロは配置領域の一つのコーナーにパックされ、各パッキングサブツリーに対応する前記コーナーは他と異なることを特徴とする請求項9に記載の方法。
- マルチパッキングツリー(MPT)マクロ配置器であって、
LEF/DEFフォーマットで入力ファイルを読み取る工程と、
Kレベルマルチパッキング二分木を生成する工程と、
パッキング結果に基づき、マルチパッキングツリーを最適化する工程と、
DEFフォーマットで出力ファイルを生成する工程と、を含み、
前記Kレベルマルチパッキング二分木は、それぞれが一レベルに対応するKブランチノードと、前記ノードの一つに対応し、一群のマクロを有するK+1パッキングサブツリーと、を有することを特徴とするマクロ配置器。 - 更に、前記マクロのパッキング後、マクロ間の間隔を調整する工程を含むことを特徴とする請求項13に記載のマクロ配置器。
- 更に、LEF/DEFフォーマットで入力ファイルを読み取る前記工程後、同一群の設計序列中の同じ高さ/幅を有する前記マクロをクラスタ化する工程と、DEFフォーマットで出力ファイルを生成する前記工程前、前記マクロをクラスタ分離する工程と、を含むことを特徴とする請求項13に記載のマクロ配置器。
- 前記マルチパッキングツリーの最適化工程は、焼きなましループの繰り返しからなり、前記焼きなましループの繰り返し工程は、前記マルチパッキングツリーを摂動する工程と、前記マクロパッキングツリーで前記マクロをパッキングする工程と、パッキングのマクロ配置を評価する工程と、前記マクロ配置を受け入れるか、却下する工程と、からなることを特徴とする請求項15に記載のマクロ配置器。
- 前記焼きなましループは、更に、与えられたマクロ配置制限に従い、前記マルチパッキングツリーの構造を修正する工程を含むことを特徴とする請求項16に記載のマクロ配置器。
- 多尺寸混合配置設計方法であって、
LEF/DEFフォーマットで初期入力ファイルを読み取る工程と、
公知のマクロ配置器で準備段階のマクロ配置を実行する工程と、
請求項15の前記MPTマクロ配置器により詳細なマクロ配置を実行する工程と、
DEFフォーマットで最終的な出力ファイルを生成する工程と、
を含むことを特徴とする設計方法。 - 更に、DEFフォーマットで最終的な出力ファイルを生成する前に標準セル配置を実行する工程を含むことを特徴とする請求項18に記載の設計方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75595406P | 2006-01-03 | 2006-01-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007188488A true JP2007188488A (ja) | 2007-07-26 |
JP4474404B2 JP4474404B2 (ja) | 2010-06-02 |
Family
ID=38251406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006342348A Expired - Fee Related JP4474404B2 (ja) | 2006-01-03 | 2006-12-20 | パッキングベースのマクロ配置方法とそれを用いた半導体チップ |
Country Status (4)
Country | Link |
---|---|
US (2) | US20070157146A1 (ja) |
JP (1) | JP4474404B2 (ja) |
CN (1) | CN1996318B (ja) |
TW (1) | TWI390707B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102597328B1 (ko) * | 2023-01-25 | 2023-11-02 | 주식회사 마키나락스 | 반도체 소자의 배치를 평가하기 위해 2중 클러스터링을 수행하는 방법 |
KR102597210B1 (ko) * | 2023-01-26 | 2023-11-02 | 주식회사 마키나락스 | 매크로 셀들을 그룹화하는 것에 기초하여 반도체를 설계하는 방법 |
KR102597811B1 (ko) * | 2023-01-25 | 2023-11-03 | 주식회사 마키나락스 | 매크로 소자로부터의 거리 정보를 고려하여 반도체 소자를 배치하는 방법 |
KR102602254B1 (ko) * | 2023-01-25 | 2023-11-14 | 주식회사 마키나락스 | 반도체 설계와 관련하여 데드 스페이스를 제거하는 방법 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8261223B2 (en) * | 2008-07-07 | 2012-09-04 | Springsoft Inc. | Hierarchy-based analytical placement method capable of macro rotation within an integrated circuit |
TWI381282B (zh) * | 2008-11-13 | 2013-01-01 | Mstar Semiconductor Inc | 防止壅塞配置方法及裝置 |
US8656332B2 (en) * | 2009-02-26 | 2014-02-18 | International Business Machines Corporation | Automated critical area allocation in a physical synthesized hierarchical design |
US8219957B1 (en) * | 2010-02-02 | 2012-07-10 | Xilinx, Inc. | Global placement legalization for complex packing rules |
US8332798B2 (en) * | 2011-03-08 | 2012-12-11 | Apple Inc. | Using synthesis to place macros |
TWI623844B (zh) * | 2013-07-05 | 2018-05-11 | 國立成功大學 | 適用於混合模組之平面規劃方法 |
GB2522102B (en) * | 2013-11-19 | 2020-11-18 | Advanced Risc Mach Ltd | A computer implemented system and method for generating a layout of a cell defining a circuit component |
US9659125B2 (en) | 2014-01-28 | 2017-05-23 | Arm Limited | Computer implemented system and method for generating a layout of a cell defining a circuit component |
US10083269B2 (en) * | 2013-11-19 | 2018-09-25 | Arm Limited | Computer implemented system and method for generating a layout of a cell defining a circuit component |
US9940422B2 (en) * | 2015-01-08 | 2018-04-10 | Mediatek Inc. | Methods for reducing congestion region in layout area of IC |
US9436796B2 (en) | 2015-02-11 | 2016-09-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and apparatus for determining common node logical connectivity |
US9892226B2 (en) * | 2015-05-11 | 2018-02-13 | Mediatek Inc. | Methods for providing macro placement of IC |
US9697320B2 (en) | 2015-09-24 | 2017-07-04 | Qualcomm Incorporated | Rectilinear macros having non-uniform channel spacing |
US9495501B1 (en) * | 2016-01-29 | 2016-11-15 | International Business Machines Corporation | Large cluster persistence during placement optimization of integrated circuit designs |
US10372861B2 (en) * | 2016-11-28 | 2019-08-06 | Ncku Research And Development Foundation | Method of macro placement and a non-transitory computer readable medium thereof |
US10741539B2 (en) | 2017-08-30 | 2020-08-11 | Taiwan Semiconductor Manufacturing Co., Ltd. | Standard cells and variations thereof within a standard cell library |
DE102017127276A1 (de) | 2017-08-30 | 2019-02-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek |
US11227084B2 (en) * | 2018-11-14 | 2022-01-18 | Taiwan Semiconductor Manufacturing Company Ltd. | Multi-bit standard cell |
US10769341B1 (en) * | 2019-04-22 | 2020-09-08 | Ncku Research And Development Foundation | Method of placing macro cells and a simulated-evolution-based macro refinement method |
FR3113963B1 (fr) * | 2020-09-10 | 2023-06-30 | Thales Sa | Chaine de confiance avancee en aeronautique domaine de l'invention |
CN113919275A (zh) | 2020-09-21 | 2022-01-11 | 台积电(南京)有限公司 | 用于优化集成电路的布局的方法 |
CN112511629B (zh) * | 2020-11-30 | 2022-11-11 | 上海简苏网络科技有限公司 | 一种mpt结构的账户树的数据压缩方法及系统 |
CN116261726A (zh) * | 2021-10-12 | 2023-06-13 | 联发科技股份有限公司 | 利用对比样本训练神经网络用于宏布置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4300019A (en) * | 1979-01-09 | 1981-11-10 | Victor Company Of Japan, Limited | Method and apparatus for multiplying an electrical signal |
US4630219A (en) * | 1983-11-23 | 1986-12-16 | International Business Machines Corporation | Element placement method |
US4815003A (en) * | 1987-06-19 | 1989-03-21 | General Electric Company | Structured design method for high density standard cell and macrocell layout of VLSI chips |
JPH02297672A (ja) | 1989-05-11 | 1990-12-10 | Nec Corp | マイクロコンピュータ |
JPH0521760A (ja) | 1991-07-09 | 1993-01-29 | Ricoh Co Ltd | シーオブゲート対応フロアプラン作成方法及び作成装置 |
US5661663A (en) * | 1995-03-24 | 1997-08-26 | Lsi Logic Corporation | Physical design automation system and method using hierarchical clusterization and placement improvement based on complete re-placement of cell clusters |
US5815398A (en) * | 1996-01-16 | 1998-09-29 | Massachusettes Institute Of Technology | Method and apparatus for placing parts in a bounded region |
US5930499A (en) * | 1996-05-20 | 1999-07-27 | Arcadia Design Systems, Inc. | Method for mixed placement of structured and non-structured circuit elements |
US6002857A (en) * | 1996-11-14 | 1999-12-14 | Avant! Corporation | Symbolic constraint-based system for preroute reconstruction following floorplan incrementing |
JP3063828B2 (ja) * | 1997-03-27 | 2000-07-12 | 日本電気株式会社 | 集積回路の自動概略配線方法 |
JP3389875B2 (ja) * | 1999-03-12 | 2003-03-24 | 株式会社トッパンエヌイーシー・サーキットソリューションズ | 自動部品配置システム並びに自動部品配置プログラムを記録した記録媒体 |
JP2000276518A (ja) | 1999-03-29 | 2000-10-06 | Nec Ic Microcomput Syst Ltd | 論理セルブロックの自動動配置方法 |
JP4386498B2 (ja) * | 1999-06-23 | 2009-12-16 | 株式会社ルネサステクノロジ | 差動増幅回路 |
US6308309B1 (en) * | 1999-08-13 | 2001-10-23 | Xilinx, Inc. | Place-holding library elements for defining routing paths |
CN1258729C (zh) * | 2003-11-14 | 2006-06-07 | 清华大学 | 基于虚拟模块的大规模混合模式布图方法 |
CN100347709C (zh) * | 2004-07-09 | 2007-11-07 | 清华大学 | 基于最小自由度优先原则的非线性规划布局方法 |
US7308666B1 (en) * | 2004-12-16 | 2007-12-11 | Cadence Design Systems, Inc. | Method and an apparatus to improve hierarchical design implementation |
US7665054B1 (en) * | 2005-09-19 | 2010-02-16 | Cadence Design Systems, Inc. | Optimizing circuit layouts by configuring rooms for placing devices |
-
2006
- 2006-12-08 US US11/608,417 patent/US20070157146A1/en not_active Abandoned
- 2006-12-20 JP JP2006342348A patent/JP4474404B2/ja not_active Expired - Fee Related
- 2006-12-31 CN CN2006101565940A patent/CN1996318B/zh not_active Expired - Fee Related
-
2007
- 2007-01-02 TW TW096100036A patent/TWI390707B/zh not_active IP Right Cessation
-
2009
- 2009-10-01 US US12/571,576 patent/US8661388B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102597328B1 (ko) * | 2023-01-25 | 2023-11-02 | 주식회사 마키나락스 | 반도체 소자의 배치를 평가하기 위해 2중 클러스터링을 수행하는 방법 |
KR102597811B1 (ko) * | 2023-01-25 | 2023-11-03 | 주식회사 마키나락스 | 매크로 소자로부터의 거리 정보를 고려하여 반도체 소자를 배치하는 방법 |
KR102602254B1 (ko) * | 2023-01-25 | 2023-11-14 | 주식회사 마키나락스 | 반도체 설계와 관련하여 데드 스페이스를 제거하는 방법 |
KR102597210B1 (ko) * | 2023-01-26 | 2023-11-02 | 주식회사 마키나락스 | 매크로 셀들을 그룹화하는 것에 기초하여 반도체를 설계하는 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP4474404B2 (ja) | 2010-06-02 |
US8661388B2 (en) | 2014-02-25 |
CN1996318B (zh) | 2010-09-08 |
US20070157146A1 (en) | 2007-07-05 |
CN1996318A (zh) | 2007-07-11 |
US20100023910A1 (en) | 2010-01-28 |
TW200727453A (en) | 2007-07-16 |
TWI390707B (zh) | 2013-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4474404B2 (ja) | パッキングベースのマクロ配置方法とそれを用いた半導体チップ | |
US10796053B2 (en) | Computer implemented system and method for generating a layout of a cell defining a circuit component | |
US9165106B2 (en) | Layout design for electron-beam high volume manufacturing | |
Sechen | VLSI placement and global routing using simulated annealing | |
Chen et al. | NTUplace3: An analytical placer for large-scale mixed-size designs with preplaced blocks and density constraints | |
US20230401373A1 (en) | Pin access hybrid cell height design and system | |
US8037441B2 (en) | Gridded-router based wiring on a non-gridded library | |
US8984465B1 (en) | Methods, systems, and articles of manufacture for automatically assigning track patterns to regions for physical implementation of an electronic design | |
KR102387001B1 (ko) | 홀수 개 핀 높이 셀 영역, 그것을 구비한 반도체 디바이스, 및 그것에 대응하는 레이아웃 다이어그램을 생성하는 방법 | |
US8726214B2 (en) | Floorplanning method for an analog integrated circuit layout | |
US8954915B2 (en) | Structured placement of hierarchical soft blocks during physical synthesis of an integrated circuit | |
Chen et al. | MP-trees: A packing-based macro placement algorithm for mixed-size designs | |
KR20220104731A (ko) | 금속 라인들을 갖는 셀들을 이용한 전기적 회로 설계 | |
US8539416B1 (en) | Methods, systems, and articles of manufacture for creating a hierarchical output for an operation in an electronic design | |
US8032855B1 (en) | Method and apparatus for performing incremental placement on a structured application specific integrated circuit | |
KR20200037103A (ko) | 금속 절단 영역 위치 결정 방법 및 시스템 | |
US8132141B2 (en) | Method and apparatus for generating a centerline connectivity representation | |
US8181143B2 (en) | Method and apparatus for generating a memory-efficient representation of routing data | |
US11416660B1 (en) | Automatic placement of analog design components with virtual grouping | |
US9830416B2 (en) | Method for analog circuit placement | |
US9293450B2 (en) | Synthesis of complex cells | |
JP2010073073A (ja) | レイアウト設計方法、装置及びプログラム | |
Luhukay et al. | A layout synthesis system for NMOS gate-cells | |
JP5900540B2 (ja) | レイアウト設計方法及びレイアウト設計支援プログラム | |
US20170061063A1 (en) | Integrated circuit with reduced routing congestion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090616 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090915 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090918 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100129 |
|
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: 20100223 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100308 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4474404 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140312 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |