JP2007188488A - パッキングベースのマクロ配置方法とそれを用いた半導体チップ - Google Patents

パッキングベースのマクロ配置方法とそれを用いた半導体チップ Download PDF

Info

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
Application number
JP2006342348A
Other languages
English (en)
Other versions
JP4474404B2 (ja
Inventor
Tung-Chieh Chen
東傑 陳
Ping-Hung Yu
秉鴻 喩
Yao-Wen Chang
耀文 張
Fwu-Juh Huang
福助 黄
Tien-Yueh Liu
典岳 劉
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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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 MediaTek Inc filed Critical MediaTek Inc
Publication of JP2007188488A publication Critical patent/JP2007188488A/ja
Application granted granted Critical
Publication of JP4474404B2 publication Critical patent/JP4474404B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Abstract

【課題】マルチパッキングツリー(MPT)マクロ配置器を提供する。
【解決手段】MPTマクロ配置器は、LEF/DEFフォーマットで入力ファイルを読み取る工程と、Kレベルマルチパッキング二分木を生成する工程と、パッキング結果に基づき、マルチパッキングツリーを最適化する工程と、DEFフォーマットで出力ファイルを生成する工程と、からなる。Kレベルマルチパッキング二分木は、それぞれが一レベルに対応するKブランチノードと、ノードの一つに対応し、一群のマクロを有するK+1パッキングサブツリーと、からなる。
【選択図】図10

Description

本発明は、集積回路の多尺寸混合設計、すなわち混合サイズ設計に関するものであって、特に、パッキングベースのマクロ配置に関するものである。
知的財産(intellectual property;IP)モジュールと内蔵メモリの使用により、現代のVLSIチップは多数のマクロを含む。複数のマクロと標準セルとの多尺寸混合配置は異なる応用分野において一般的になり、様々な刊行物で多くの多尺寸混合配置アルゴリズムが開示されている。
第一種の多尺寸混合配置アルゴリズムはマクロと標準セルを同時に配置し、通常、マクロ方向を考慮せず、且つ、強大なマクロリーガライザー(macro legalizer)を必要とし、マクロ/セルが適当に分布されていない時の重畳を除去する。C.−C. Chang 等は、2003年に、「Proceedings of ACM/IEEE Asia South Pacific Design Automation Conference」中で、 焼きなまし(simulated annealing)によるマルチレベル配置器(multilevel placer)mPG−MSを開示し、一層ずつ大きいマクロから小さいマクロに順に固定する。A. Khatkhate等は、2004年に「Proceedings of ACM International Symposium on Physical Design」で、最少切割(min−cut)式配置器、“風水”(Feng Shui)を開示し、この小部分切割 (fractional cut)方式は、標準セルとマクロを同時に考慮し、水平切割線は列との境界で整列しない。この他、数種の分析方式が提出され、多尺寸混合配置を達成する。
A. B. Kahng等により、2004年に「IEEE/ACM International Conference on Computer−Aided Design」でAPlaceが開示され、非線形プログラミング(non−linear programming)に基づき、鐘形(bell−shaped)のポテンシャル関数(potential function)により、マクロの高さ/幅を考慮して、マクロとセルを均一に分布する全体配置を決定する。T. Chan等により、2005年に「Proceedings of ACM International Symposium on Physical Design」でmPLが開示され、一般化された力の方向 (generalized force−directed)により配置を行う。B. Yao等により、2005年に「Proceedings of ACM International Symposium on Physical Design」でUPlaceが開示され、二次計画法(quadratic programming)、及び、離散コサイン変換方法により、マクロ/セルを適当に配置し、且つ、ゾーン微調整(zone refinement)を使用する。
第二種の配置方法は、平面計画(floor planning)と配置技術を結合し、2004年に「IEEE/ACM International Conference on Computer−Aided Design」で開示された最少切割平面配置器(floor placer)Capoを一例とし、必要時、最少切割平面配置の実行時に、固定輪郭(fixed−outline)平面計画により、マクロの使用可能位置を探し、平面計画配置の嵌入配置工程中、マクロの配置方向が考慮でき、正当な方案が容易に探し出せる。
第三種の配置方法は、多尺寸混合配置を二段階に分け、それぞれ、マクロ配置と標準セル配置であり、マクロの位置を先に決定し、標準セルをその残りの領域に配置する。S. N. Adyaが、2005年に「ACM Transactions on Design Automation of Electronic Systems」でこの組み合わせ技術を開示し、標準セル配置器により最初の配置を得て、この最初の配置結果により、標準セルを数個のソフトマクロ(soft macro)に分け、その後、固定輪郭平面計画により、無重畳(overlap−free)マクロ配置を探す。その後、マクロの位置を固定し、標準セル配置器は標準セルを新たにその他の空間で配置する。その他の形式と比較すると、無重畳のマクロ配置を獲得するので、二段階の多尺寸混合配置は有効な配置方案の保有を保証し、よって、信頼性がある。更に、マクロ方向と配置の制限条件、例えば、プレ配置マクロ (pre−placed macro)と配置障害(placement blockage)等が容易に処理される。
C.−C. Chang 等、「Proceedings of ACM/IEEE Asia South Pacific Design Automation Conference」 A. Khatkhate等「Proceedings of ACM International Symposium on Physical Design」 A. B. Kahng等「IEEE/ACM International Conference on Computer−Aided Design」 T. Chan等「Proceedings of ACM International Symposium on Physical Design」 B. Yao等「Proceedings of ACM International Symposium on Physical Design」 「IEEE/ACM International Conference on Computer−Aided Design」 S. N. Adya「ACM Transactions on Design Automation of Electronic Systems」
本発明は、パッキングベースのマクロ配置方法とそれを用いた半導体チップを提供し、上述の状況を改善することを目的とする。
本発明による半導体チップの一つの実施例は、第一、及び、第二群のマクロを有する。そして、第一、及び、第二群のマクロはそれぞれ、半導体チップの第一、第二の方向(direction)に緊密パックされる。
半導体チップのもう一つの実施例は、第一、及び、第二群のマクロを有する。そして、第一、及び、第二群のマクロはそれぞれ、半導体チップの第一、第二の端(edge)に緊密パックされる。
半導体チップのもう一つの実施例は、第一、及び、第二群のマクロを有する。そして、第一、及び、第二群のマクロはそれぞれ、半導体チップの第一、第二のコーナー(corner)に緊密パックされる。
Kレベル(K個のレベル)の二進数マルチパッキング二分木(binary multi−packing tree)の具体例は、Kブランチノード(k個のブランチノード)とK+1パッキングサブツリー(K+1個のパッキングサブツリー)を有する。Kブランチノードはそれぞれ一つのレベルに対応する。K+1パッキングサブツリーはそれぞれ一群のマクロを有し、ノードの一つに対応する。
マクロ配置の方法の具体例は、前述のKレベルマルチパッキング二分木を生成し、各配置領域で、各パッキングサブツリーのマクロをパッキングする工程からなる。
マルチパッキングツリー(MPT)マクロ配置器(macro placer)の具体例は、LEF/DEFフォーマットで入力ファイルを読み取る工程と、Kレベルマルチパッキング二分木を生成する工程と、パッキング結果に基づき、マルチパッキングツリーを最適化する工程と、DEFフォーマットで出力ファイルを生成する工程と、からなる。Kレベルマルチパッキング二分木は、それぞれが一レベルに対応するKブランチノードと、ノードの一つに対応し、一群のマクロを有するK+1パッキングサブツリーと、からなる。
多尺寸配置設計(混合サイズの配置設計)の工程の具体例は、LEF/DEFフォーマットで初期入力ファイルを読み取る工程と、公知のマクロ配置器で準備段階のマクロ配置を実行する工程と、MPTマクロ配置器により詳細なマクロ配置を実行する工程と、DEFフォーマットで最終的な出力ファイルを生成する工程と、からなる。
マクロ配置を評価するコスト機能の具体例は、マクロ配置の領域の少なくとも一つのパラメータ、真ネットと偽ネットの総線長、準備段階のマクロ配置からの総マクロ移動、マクロ配置の重畳長さ、及び、マクロ配置の厚さ、を含む。
本発明は、マルチパッキングツリー(MPT)ベースのマクロ配置器(macro placer)を提供し、マクロを配置領域の境界付近に配置し、標準セルのために中心を留保する。MPTマクロ配置器は、MPTを対応するマクロ配置に変換するのに必要な線形時間だけを要し、よって、二分木(binary tree)の操作とパッキングは非常に速い。その結果、マクロ配置の方策は焼きなまし(simulated annealing)により効果的に調査される。パッキング技術は、更に、領域縮小化にも効率的かつ効果的で、MPTベースのマクロ配置器は、大きいマクロと多数のマクロにより、多尺寸混合配置問題を解決する。マクロ方向とマクロ間の配置が考慮されるので、MPTベースのマクロ配置器は公知の多尺寸混合配置器より更に短い線長になり、且つ、密集を緩和する。MPTベースのマクロ配置器は、様々な配置制限、例えば、プレ配置ブロック、コーナーブロック、配置障害(placement blockage)等下でも容易に正常に作動することができる。MPTベースマイクロ配置器は最先端の標準セル配置器と結合し、二段階の多尺寸混合工程に基づき、好ましい多尺寸混合配置の方案(solution)を得ることができる。
本発明のマルチパッキングツリーマクロ配置器は巨大なマクロ、及び、大量のマクロの多尺寸混合配置を実行することができ、マクロ方向とマクロ間の間隔は既に考慮されているので、マルチパッキングマクロ配置器は公知の多尺寸混合配置器より短い線長を生成し、且つ、過度に密集せず、マルチパッキングマクロ配置器は異なる配置制限条件(プレ配置ブロック、コーナーブロック、配置障害)下で容易に正常作動する。また、マルチパッキングツリーマクロ配置器は最新の標準セル配置器と結合して、二段階の多尺寸混合配置工程に基づいて、好ましい多尺寸混合配置の方案を得ることができる。
図1は多尺寸(すなわち異なるサイズの)混合配置のフローチャートである。本発明の設計戦略(strategy)による特徴の一つは、マクロをチップの周辺に配置し、チップ中央を標準セルに留保することである。マクロは通常大きく、且つ、マクロ中にルーティング障害(routing blockage)を有するので、マクロがチップの中央に配置される場合、ルーティングに大きく影響する。公知の平面計画技術は全てのマクロを一コーナーにパックするので、マクロ配置問題に直接適用できない。この問題を解決するため、新しいパッキングツリー表示法に基づき、新しいマルチパッキングツリー平面計画表示法を提供し、マクロをチップ周辺に配置する。
パッキングツリー(Packing−tree)は平面計画(floorplan)を非切割(non−slicing)、或いは、切割(slicing)する二分木(バイナリーツリー)である。パッキングツリーの各ノードはマクロブロックに対応する。パッキングツリーのパッキングは四種ある。左下、左上、右上、右下(BL、TL、TR、BR)パッキングで、それぞれ、左下、左上、右上、右下のコーナーに向かって複数のブロックをパックする。
図2はパッキングツリーと対応する四種のパッキング配置を示す図である。(xcorner, ycorner)はコーナーの座標で、(xi, yi)はブロックbiの左下の座標で、且つ、wi (hi)はブロックbiの幅と高さとすると、パッキングツリーの根座標(root cordinate)は、
左下パッキング(BL−packing)では、(cx, cy);
左上パッキング(TL−packing)では、 (cx, cy − hroot);
右上パッキング(TR−packing)では、 (cx − wroot, cy − hroot);及び
右下パッキング(BR−packing)では、 (cx − wroot, cy)。
ノードnjがniの右チャイルド(右の子)の場合、ブロックbjは、
左下パッキングでは、右側最低の相隣ブロックで、且つ、xj = xi + wi
左上パッキングでは、右側最高の相隣ブロックで、且つ、xj = xi + wi
右上パッキングでは、左側最高の相隣ブロックで、且つ、xj = xi − wj
右下パッキングでは、左側最低の相隣ブロックで、且つ、xj = xi − wj
ノードnjがniの左チャイルド(左の子)の場合、ブロックbjのx軸座標は、以下のように定義される。
左下パッキングでは、xj = xi
左上パッキングでは、xj = xi
右上パッキングでは、xj = xi + wi − wj
右下パッキングでは、xj = xi + wi − wj
左下と右下(BLとBR)パッキングにとって、ブロックbjはbiの上にあり、左上と右上(TLとT)パッキングにとって、ブロックbjはブロックbiの下にある。したがって、一つのパッキングツリーが与えられると、全てのブロックのx軸座標は、ツリーを線形時間でいちど処理(traverse)することにより決定される。更に、y軸座標は、輪郭データ構造により償却一定時間で、既知の方法と同様にして計算される(2000年「Proceedings of the ACM/IEEE Design Automation Conference」の第 458−463ページのA new representation for non−slicing floor plansを参照)。よって、パッキングツリーを対応する配置に転換する複雑度は償却線形時間である。注意すべきことは、B*−tree平面計画は左下のパッキングツリーで表示される。
マルチパッキングツリーは、幾つかの異なるコーナーに位置する異なるパッキング型のパッキングツリーを結合したものである。一般のマルチパッキングツリーの例が図3で示され、マルチパッキングツリーは、K幹ノード(K個のstem nodes)を有し、K+1パッキングサブツリー(K+1個のpacking sub−trees)を結合している。便宜上、及び、分かりやすい実施のために、右向き幹(stem)が使用されて複数のパッキングサブツリーを結合し、且つ、サブパッキングツリーの順番はパッキングサブツリーの親ノードのレベルにより決定される。ツリー処理の深さ優先探索(depth−first search;DFS)順序がツリーパッキングに用いられるので、レベルが低くなるほど、サブツリーのパッキングが早くなる。二つのパッキングサブツリーの親が同じである場合、左チャイルドに位置するパッキングサブツリーがまずパッキングされる。一般のマルチパッキングツリーはいかなる直線的平面計画領域もモデル化し、各パッキングサブツリーは一つの凸面のコーナーのパックを実行する。
同様に、マルチパッキングツリーの深さ優先探索(DFS)により、ブロックのX軸座標を決定する。Y軸座標を計算するため、下方輪郭と上方輪郭を固定し、下方輪郭と上方輪郭はそれぞれ、直線的領域の下側と上側により決定される。全ての左下と右下のパッキングツリーは下方輪郭データ構造を使用し、全ての左上と右上のパッキングツリーは上方輪郭データ構造を使用する。図4は、左下(BL)パッキングツリーと右下(BR)パッキングツリーを有するマルチパッキングツリーのパッキングの例を示す図である。輪郭により先にパッキングされたブロックの空間が留保されるので、相同の輪郭データ構造を使用するパッキングツリーは無重畳配置を生成する。これにより、左下/右下パッキングツリーは、左上/右上のパッキングツリーとだけ重畳する可能性がある。しかし、この種の配置方法は実現可能なものではないので放棄される。
一般の長方形のVLSIチップ領域は、通常、四つのパッキングサブツリーを有するマルチパッキングツリーにより処理し、その範例が図5Aで示される。対応するマクロ配置を得るため、マルチパッキングツリーは根n0から深さ優先探索(DFS順序)により処理される。n0が幹ノードであるので、処理せずそのまま工程を継続し、n0の左側チャイルドn3は左下パッキングツリーの根で、ブロックb3は左下コーナーに配置される。ノード n3は左側チャイルドがないので、n4を処理し、以下同様である。この範例中、パッキングサブツリーは、左下、左上、右上、右下(BL、TL、TR、BR)パッキングツリーの順に処理され、全ノードの処理後、図5Bで示されるマクロ配置が得られる。
問題のサイズを縮小させるためマクロクラスタリングが用いられる。同一群の設計序列中の同じ高さ/幅を有する複数のマクロはクラスタ化される。これらのマクロは一般に密接な関連を有し、マクロのクラスタリングは領域を効果的に使用するだけでなく、密接に関連するマクロを緊密に配置する。浪費される領域がない時、クラスタ寸法だけが考慮される。図6は四ブロックのクラスタの例で、クラスタマトリックスの三つの可能な尺寸、1×4、2×2及び4×1を示す。
クラスタ分離時、ブロックは現在のクラスタマトリクスにより配置される。分岐限定法(branch and bound)により配置コストに従ってブロックの最適順序を決定する。
ユーザーにより配置障害が定義され、障害と重畳するマクロがなくなる。パッキングの間、新しいマクロブロックが追加され、障害と重畳しないか確認する。重畳する場合、ブロックのY軸座標が重畳しない位置にシフトされる。図7を範例とすると、新しいブロックb2を追加すると、配置障害と重畳するので、ブロックb2は上にシフトされ、重畳の発生を回避し、輪郭もブロックb2の位置に基づき更新される。プレ配置マクロが配置障害とみなされ、よって、対応するノードはマルチパッキングツリー中に生成されず、これにより、プレ配置マクロの位置を確保する。
コーナーマクロが以下で説明される。アナログブロックは通常、コーナーにコーナーマクロとして固定される。コーナーブロックに対応するノードはパッキングサブツリーの根として固定される。よって、コーナーマクロはコーナーに固定される。
直線的マクロ(rectilinear macro)が以下で説明される。ツリーベース平面計画に対し、公知の方法(G.−M. Wu, Y.−C. Chang, and Y.−W. Chang等による、2003年「ACM Trans. on Design Automation of Electronic Systems」の188−202ページで発表されたRectilinear block placement using B*−trees)が採用されて、直線的マクロを処理する。直線的マクロは数個の長方形ブロックに切割され、ツリートポロジー (tree topology)に従って位置制限(LC)を生成し、パッキング実行時、ミスアラインメント(misalignment)の状況が修正されて、長方形ブロック形状を維持する。図8で示されるように、直線的ブロック(rectilinear block)は三つの長方形ブロックに切割され、且つ、ノードn1、n2及びn3は位置制限の関係を維持する。
マルチパッキングツリーの演算は以下のようであり、マルチパッキングツリーは下記の演算により摂動(perturb)されもう一つのマルチパッキングツリーを得る。
演算1:ブロック(クラスタ)を旋転させる
演算2:クラスタのサイズ変更する
演算3:パッキングサブツリーのノードをもう一つの場所に移動させる
演算4:一つ、或いは、二つのパッキングサブツリー中の二ノードを交換する
演算5:二パッキングサブツリーを交換する
演算1で、ブロック(クラスタ)はツリーノードに回転させ、演算2で、クラスタのクラスタリング尺寸が変化する。演算1と2はマルチパッキングツリー構造に影響しない。演算3で、ノードはパッキングサブツリーから選択され、同一の、或いは、別のパッキングサブツリーの別の場所へ移動させる。演算4で、二ノードは一(二)パッキングサブツリーから選択され、交換される。演算5で、二パッキングサブツリーが交換され、二パッキングサブツリー交換のパッキング順序を交換する。注意すべきことは、マルチパッキングツリーの幹構造は固定であり、あらゆるタイプの操作にも影響されないことである。
マクロ配置の評価が以下で説明される。マクロ配置結果の品質を見分けるため、マクロ配置Fのコストが以下のように定義される。
Φ=αA+βW+γD+δO+εT
Aはマクロ配置領域、Wは総線長、Dは総マクロ移動、Oは垂直重畳長さを示し、且つ、α、β、γ及びδは使用者が定義する重みパラメータ(weighting parameter)である。マクロ配置領域、線長、垂直重畳長さは以下のパラグラフで示される。
マクロ配置領域は下方輪郭以下の面積に上方輪郭以上の面積を加えたもので、図9Aで示されるように、輪郭は粗い点線で示され、対応するマクロ配置面積は図9Bで示される。マクロ配置面積最小化はマクロにより包囲される島状の標準セル領域の大量生成を防ぐことができ、マクロブロック上に多くのルーティング障害があるので、この種の領域からチップ中央へのルーティングは非常に難しい。更に、この種の領域中の標準セルは標準セルに接続し、チップ中央に配置させるのに長いルーティング経路を必要とし、タイミングが悪くなる。
線長については、配置時、マクロだけが考慮されるので、回路のネットリストは直接使用できず、設計序列が用いられ、同一設計序列群中のマクロブロック間に偽ネットを生成し、これにより、総線長の最小化は同一設計序列中のマクロブロックを緊密に維持する。
マクロ配置は全体配置結果により導引され、全体配置は完全にエラーなしである必要が無く、既知のマクロの位置が摘出された後、マクロ移動が費用函数の負指標として加えられ、最小のマクロ移動の最適マクロ配置を得ることができる。
マルチパッキングツリー表示法は上方と下方のパッキングサブツリー間で重畳がないことを保証するが、上方輪郭と下方輪郭間は垂直な重畳がある可能性があり、垂直な重畳は費用函数の負指標に加えられ、焼きなましを導引して重畳がない配置方案を探し出す。
図10はマクロ配置の工程を示す図で、LEF/DEFファイルが読み取られた後、相同の設計序列に位置し、且つ、相同の高さと幅を有するマクロがまずクラスタ化される。クラスタ寸法は最も方形に近い尺寸を初期値とし、最後の尺寸は焼きなましの最適過程中で選定される。
その後、所与の数のパッキングサブツリーを有するマルチパッキングツリーが生成され、各マクロ/クラスタはパッキングサブツリーのノードに対応する。初期のマクロ位置が与えられる場合、初期のパッキングサブツリーはマクロの最も近いコーナーに従って、所属するノードに割り当てられる。そうでなければ、所属するノードの初期のパッキングサブツリーはランダムに設定され、各パッキングサブツリーは完全な二分木として初期化される。
焼きなまし(simulated annealing)が用いられ、最適なマクロ配置を探す。上述の操作により、マルチパッキングツリーが摂動(perturb)され、もう一つのマルチパッキングツリーを得る。摂動後、設計者はツリー構造を修正して既存のマクロ配置制限条件を満足させ、マルチパッキングツリーをパックし、マクロ配置を評価し、マクロ配置品質の差異と焼きなましの現行温度により、新しい配置方案が受け入れられるか決定し、その後、マルチパッキングツリーは再度摂動され、配置方案が充分によいか、更に好ましい配置方法が出現しなくなるまで焼きなましが継続され、その後、全部ブロック/クラスタの位置が決定される。
全ブロック/クラスタの位置決定後、クラスタ内のブロックの位置はクラスタのマトリクス尺寸により計算される。
最後に、マクロ間の間隔が修正される。二マクロ間の間隔がマクロ間の元の間隔より高い場合、マクロ間の間隔は追加され、そうでなければ、元の間隔が縮小されてマクロ配置面積を更に小さくし、マクロの方向も水平、或いは、垂直の反転により決定され、大部分のピンはチップの中心に接近し、その後、全マクロの状態が固定され、最終のマクロ配置が出力される。
二組のテスト回路(ベンチマーク)が使用され、多尺寸混合マクロ配置に対し比較検証を実行した。テスト回路はそれぞれ、S. N. Adyaが2005年に「ACM Transactions on Design Automation of Electronic Systems」で提出したファラデー(Faraday) 、及び、五種の最近の大型実際設計でなるmchipである。表Iはファラデー(Faraday) ベンチマークの統計データで、注意すべきことは、DMA回路はマクロがないので、比較検証を実施せず、各デジタル信号処理 (DSP)及び縮小命令セットコンピュータ(RISC)回路中にそれぞれ二個、及び、7個のマクロを有し、これらのテスト回路中、マクロの面積は総チップ面積の6.96%から41.99%を占める。
表 I
Figure 2007188488
表IIは、“風水”5.1、Capo9.4、Capoと組合わせた本発明のマルチパッキングツリー配置器、mPL5、APlace2.0、及び、Aplaceと組合わせた本発明のマルチパッキングツリー配置器のファラデー・ベンチマークでのルーティング結果である。最新の商用ルータが用いられ、全配置方案に対しルーティングが実行される。全配置器は、2GBRAMを有する3.2GHzのPentium(登録商標) 4のLinuxワークステーション上で実行される。半週線長HPWL(half perimeter wirelength)とルーティング線長WL(routing wirelength)がデータベースユニット(database unit)により報告され、Violはルーティング方案の違反数である。マクロの数量が少ないので、マルチパッキングツリー配置器は数秒で完成し、マクロ配置の単独実行時間は報告されず、表II中の*マークは配置の結果が多くの重畳を有することや、或いは、ブロックが配置領域外にあり、且つ、認可されないことを示し、表II中のNRは受け入れられる配置がないので、配置結果が無いことを示す。
表 II
Figure 2007188488
これらの結果から分かるように、最小切割工程の配置器“風水”は多くのマクロ/セルをチップ領域外にする結果を生成する。mPL5は多尺寸混合配置器であるといっていないが、mPL5は多尺寸混合マクロ、及び、標準セルを有するIBM−MS/IBM−MSw Pinsテスト回路に対し高品質の配置方案を生成する。これにより、mPL5のファラデー(Faraday)テスト回路に対する配置結果は参考として実行した。mPL5は受け入れられる配置方案を探し出すが、その品質は理想的でない。この他、APlaceはDSP1、RISC1とRISC2の間で多くの重畳を生成し、且つ、認証されない。よって、全面配置方案の半週線長だけが報告される。最小切割の平面計画配置器Capoは認証配置方案を探し、且つ、半週線長は“風水”とmPL5に比べてよい。
本発明の実施例によるマルチパッキングツリーマクロ配置器の二段階の多尺寸混合配置方法を使用し、全回路に対し受け入れられる配置方案を探し出すことができ、単独でCapoを使用するのと比べて、Capoと組合わせたマルチパッキングツリーマクロ配置器は平均で半週線長を8%、及び、ルーティング線長は12%縮小する。特に、APlaceと組合わせたマルチパッキングツリーマクロ配置器は全回路に対し有効な配置方案を生成し、且つ、その品質は全多尺寸混合配置器よりも優れ、mPL5、“風水”とCapoと比較すると、半週線長は、それぞれ、63%、35%、15%短縮し、mPL5、“風水”とCapoを比較すると、ルーティング線長は、それぞれ、62%、68%、15%短縮する。同時に分かるのは、マクロの面積が増加する時、本発明の実施例のマルチパッキングツリーマクロ配置器の配置工程を使用すると、半週線長の短縮成果が更に顕著であることで、線長の短縮効果は表IIIで示され、マルチパッキングツリーマクロ配置器の功能を説明する。
表 III
Figure 2007188488
表IVはmchipテスト回路の統計データであり、セルの数量は、540kから1320kで、且つ、マクロの数量は50から380で、Capoだけが多くのマクロの多尺寸混合配置に対し受け入れられる高品質の配置方案を決定することが出来ることが分かり、よって、Capoだけに対しマクロ配置の比較を実行し、実験はデュアルオプテロン 2.6GHz機器の上で実行され、それぞれ、マルチパッキングツリーマクロ配置器、及び、Capoによりマクロの位置を決定する。その後、マクロの位置を固定し、標準セルは、商用の 未収駆動(congestion−driven)の配置器により快速プロトタイピングモード(fast prototyping mode)で配置され、商用ルーターは全面ルーティングを実行し、公平な比較のため、標準セルは相同の配置器により配置を実行する。
表 IV
Figure 2007188488
表Vは半週線長(HPWL)、ルーティング線長(WL)、グローバルルーティングセル(GRC)オーバーフロー、及び、最大オーバーフローを示し、GRCオーバーフローは全面ルーティングセルがオーバーフローを有する比率であり、その値が高いほど、配置上の障害が多い。最大オーバーフローは、最大オーバーフローを有する全面ルーティングセルに割り当てられる最大トラック数を提供する。表V中のNRは、Capo中のセグメントエラーのために配置結果が獲得できないことを示す。
表 V
Figure 2007188488
5組のmchipテスト回路にとって、マルチパッキングツリーマクロ配置器はCapoのマクロ配置より更に好ましい線長(半週線長とルーティング線長)を獲得することができ、且つ、mchip 5テスト回路にとって、Capoの使用時、セグメントエラーが生じ、配置方案が見つからず、更に、Capoの配置結果は多くのGCRオーバーフロー、及び、最大オーバーフローを生成し、マルチパッキングツリーマクロ配置器より、更に多くのセル配置とルーティング実行時間を必要とする。
本発明は、マルチパッキングマクロ配置器を提供し、マクロ配置を配置領域の境界付近にし、中央領域を標準セルに<保留>留保する。このマルチパッキングツリーマクロ配置器は、マルチパッキングツリーを対応するマクロ配置に転換するのに償却線形時間(amortized linear time)だけ必要なので、演算上、及び、二分木でパッキングを実行するのは迅速であり、焼きなまし(simulated annealing)により効果的にマクロ配置方案を探し出す。マルチパッキングツリーマクロ配置器は巨大なマクロ、及び、大量のマクロの多尺寸混合配置を実行することができる。マクロ方向とマクロ間の間隔は既に考慮されているので、マルチパッキングマクロ配置器は公知の多尺寸混合配置器より短い線長を生成し、且つ、密集を抑制する。マルチパッキングマクロ配置器は異なる配置制限条件(プレ配置ブロック、コーナーブロック、配置障害)下で容易に正常作動する。マルチパッキングツリーマクロ配置器は最新の標準セル配置器と結合して、二段階の多尺寸混合配置工程に基づいて、好ましい多尺寸混合配置方案を得ることができる。
本発明では好ましい実施例を前述の通り開示したが、これらは決して本発明を限定するものではなく、当該技術を熟知する者なら誰でも、本発明の精神と領域を脱しない範囲内で各種の変動や潤色を加えることができ、従って本発明の保護範囲は、特許請求の範囲で指定した内容を基準として変更や類似を含み最大限に広く解釈されるべきである。
多尺寸混合装置の工程図である。 パッキングツリーと四種のパッキングを示す図である。 一般的なマルチパッキングツリーを示す図である。 左下(BL)パッキングツリーと右下(BR)パッキングツリーを有するマルチパッキングツリーのパッキングの例を示す図である。 四つのパッキングサブツリーを有するマルチパッキングツリーを示す図である。 四つのパッキングサブツリーを有するマルチパッキングツリーで、全ノードの処理後のマクロ配置を示す図である。 クラスタマトリクスの三種の尺寸を示す図である。 配置障害を処理する工程を示す図である。 直線ブロックを複数の長方形ブロックに切割したことを示す図である。 マクロ配置結果と上/下輪郭を示す図である。 図9Aに対応するマクロ配置面積を示す図である。 マクロ配置の工程図である。
符号の説明
n0、n1、n2、n3、nk〜ノード;
b0、b1、b2、b3、bk〜ブロック;
T0、T1、T2、T3、Tk〜パッキングサブツリー。

Claims (19)

  1. 半導体チップであって、
    前記半導体チップの第一方向に緊密にパックされる第一群マクロと、
    前記半導体チップの第二方向に緊密にパックされる第二群マクロと、
    を含むことを特徴とする半導体チップ。
  2. 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを有するマクロクラスタを含むことを特徴とする請求項1に記載の半導体チップ。
  3. 更に、重畳することなく、前記第一、或いは、第二群マクロに配置される配置障害、或いは、プレ配置マクロを有することを特徴とする請求項1に記載の半導体チップ。
  4. 半導体チップであって、
    前記半導体チップの第一端に緊密にパックされる第一群マクロと、
    前記半導体チップの第二端に緊密にパックされる第二群マクロと、
    を含むことを特徴とする半導体チップ。
  5. 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを有するマクロクラスタを含むことを特徴とする請求項4に記載の半導体チップ。
  6. 半導体チップであって、
    前記半導体チップの第一コーナーに緊密にパックされる第一群マクロと、
    前記半導体チップの第二コーナーに緊密にパックされる第二群マクロと、
    を有することを特徴とする半導体チップ。
  7. 前記第一、或いは、第二群マクロは、同一群の設計序列中の同じ高さ/幅を有する複数のマクロを含むマクロクラスタを有することを特徴とする請求項6に記載の半導体チップ。
  8. 前記第一、及び、第二群マクロはそれぞれ、根でコーナーマクロを有するパッキング二分木に対応することを特徴とする請求項6に記載の半導体チップ。
  9. マクロ配置の方法であって、
    Kレベルマルチパッキング二分木を生成する工程と、
    各パッキングサブツリーのマクロを配置領域にパッキングする工程と、を含み、
    前記Kレベルマルチパッキング二分木は、それぞれ一レベルに対応するKブランチノードと、それぞれ一群のマクロを有し、それぞれノードの一つに対応するK+1パッキングサブツリーと、を有することを特徴とする方法。
  10. 前記の各パッキングサブツリーのマクロは配置領域の一つの方向にパックされ、各パッキングサブツリーに対応する前記方向は他と異なることを特徴とする請求項9に記載の方法。
  11. 前記の各パッキングサブツリーのマクロは配置領域の一つの端にパックされ、各パッキングサブツリーに対応する前記端は他と異なることを特徴とする請求項9に記載の方法。
  12. 前記の各パッキングサブツリーのマクロは配置領域の一つのコーナーにパックされ、各パッキングサブツリーに対応する前記コーナーは他と異なることを特徴とする請求項9に記載の方法。
  13. マルチパッキングツリー(MPT)マクロ配置器であって、
    LEF/DEFフォーマットで入力ファイルを読み取る工程と、
    Kレベルマルチパッキング二分木を生成する工程と、
    パッキング結果に基づき、マルチパッキングツリーを最適化する工程と、
    DEFフォーマットで出力ファイルを生成する工程と、を含み、
    前記Kレベルマルチパッキング二分木は、それぞれが一レベルに対応するKブランチノードと、前記ノードの一つに対応し、一群のマクロを有するK+1パッキングサブツリーと、を有することを特徴とするマクロ配置器。
  14. 更に、前記マクロのパッキング後、マクロ間の間隔を調整する工程を含むことを特徴とする請求項13に記載のマクロ配置器。
  15. 更に、LEF/DEFフォーマットで入力ファイルを読み取る前記工程後、同一群の設計序列中の同じ高さ/幅を有する前記マクロをクラスタ化する工程と、DEFフォーマットで出力ファイルを生成する前記工程前、前記マクロをクラスタ分離する工程と、を含むことを特徴とする請求項13に記載のマクロ配置器。
  16. 前記マルチパッキングツリーの最適化工程は、焼きなましループの繰り返しからなり、前記焼きなましループの繰り返し工程は、前記マルチパッキングツリーを摂動する工程と、前記マクロパッキングツリーで前記マクロをパッキングする工程と、パッキングのマクロ配置を評価する工程と、前記マクロ配置を受け入れるか、却下する工程と、からなることを特徴とする請求項15に記載のマクロ配置器。
  17. 前記焼きなましループは、更に、与えられたマクロ配置制限に従い、前記マルチパッキングツリーの構造を修正する工程を含むことを特徴とする請求項16に記載のマクロ配置器。
  18. 多尺寸混合配置設計方法であって、
    LEF/DEFフォーマットで初期入力ファイルを読み取る工程と、
    公知のマクロ配置器で準備段階のマクロ配置を実行する工程と、
    請求項15の前記MPTマクロ配置器により詳細なマクロ配置を実行する工程と、
    DEFフォーマットで最終的な出力ファイルを生成する工程と、
    を含むことを特徴とする設計方法。
  19. 更に、DEFフォーマットで最終的な出力ファイルを生成する前に標準セル配置を実行する工程を含むことを特徴とする請求項18に記載の設計方法。
JP2006342348A 2006-01-03 2006-12-20 パッキングベースのマクロ配置方法とそれを用いた半導体チップ Expired - Fee Related JP4474404B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (4)

* Cited by examiner, † Cited by third party
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