説明

レイアウト設計装置、レイアウト設計方法及びプログラム

【課題】半導体集積回路のレイアウト設計において、設計TATの増大を防ぐこと。
【解決手段】半導体集積回路のレイアウト設計装置であって、設計者の指示に基いて配置すべきモジュールをネットリストから選択する配置モジュール選択部と、前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定するセル特定部と、前記セル又はセル群の面積を計算する面積計算部と、前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定部と、前記面積を有する領域を前記位置に表示する表示部とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路のレイアウト設計装置、レイアウト設計方法及びプログラムに関する。
【背景技術】
【0002】
半導体集積回路の高性能化・多機能化に対する要求とともに、設計TAT(Turn Around Time)の短縮化の要求(必要性)が高まっている。設計TATの短縮を妨げる要因として、フロアプランにおける見積もりが不正確である場合に、配置性・配線性が悪化し、フロアプランからやり直す必要が生じることが挙げられる。
【0003】
モジュール(ないしブロック)間のタイミングを満足させるためにバッファを挿入した場合、又は、制御回路等を特定の領域に集中して配置した場合には、配置性・配線性に対してより深刻な影響が及ぶ。したがって、モジュールを配置する箇所の周辺に存在するモジュール及び配線領域を考慮したフロアプランを生成する技術が求められている。
【0004】
半導体集積回路は、論理設計、ネットリスト作成、フロアプラン、詳細配置設計、配線設計及びアートワーク工程を経て、製造される。この作業手順において、フロアプランとは、モジュールを配置単位として半導体集積回路の大まかなチップレイアウトをコンピュータと対話形式によって決定する作業をいう。
【0005】
特許文献1において、配置するモジュールの形状に拘わらず、フロアプランの設計期間を増大させることなく、配線領域を考慮したフロアプランの実行を可能とするレイアウト設計支援装置が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−099562号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
以下の分析は、本発明者によってなされたものである。
【0008】
特許文献1に記載されたレイアウト設計支援装置によると、モジュール(ないしブロック)に接続されているすべての配線の最短経路を算出し(特許文献1の図2のステップS6)、算出した配線経路を配線グラフにマッピングし(同図のステップS7)、マッピングした結果を基にして見積もられた配線領域を出力装置に表示する(同図のステップS8)ことで、配線を考慮したフロアプランが行われる。
【0009】
特許文献1に記載されたレイアウト設計支援装置は、配線を考慮したフロアプランを行なう。このとき、詳細配置の段階でモジュール間のタイミングを満足させるために、特定のセルが特定の領域(モジュール)周辺に集中して配置される。
【0010】
フロアプラン設計において、モジュールをチップ上に配置する場合には、タイミングを満足させるための特定のセルを配置するための十分な領域を、モジュールの近傍に確保する必要がある。しかしながら、特許文献1に記載されたレイアウト設計支援装置によると、設計者は、この領域を確保するために、モジュール間の間隔をどの程度にすればよいのかを判断することができない。
【0011】
すなわち、特許文献1に記載されたレイアウト設計支援装置によると、特定のセルを所望の場所に配置することができなくなる恐れがある。このような場合には、配線を迂回させることで配線が混雑し、タイミングが悪化し、再度フロアプランから配線までの設計をやり直さなければならず、設計TATが増大するという問題がある。
【0012】
そこで、半導体集積回路のレイアウト設計において、設計TATの増大を防ぐことが課題となる。本発明の目的は、かかる課題を解決するレイアウト設計装置、レイアウト設計方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0013】
本発明の第1の視点に係るレイアウト設計装置は、
半導体集積回路のレイアウト設計装置であって、
配置すべきモジュールを設計者の指示に基いてネットリストから選択する配置モジュール選択部と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定するセル特定部と、
前記セル又は前記セル群の面積を計算する面積計算部と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定部と、
前記面積を有する領域を前記位置に表示する表示部と、を備えている。
【0014】
本発明の第2の視点に係るレイアウト設計方法は、
半導体集積回路のレイアウト設計方法であって、
コンピュータが、配置すべきモジュールを設計者の指示に基いてネットリストから選択する工程と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する工程と、
前記セル又は前記セル群の面積を計算する面積計算工程と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定工程と、
前記面積を有する領域を前記位置に表示する表示工程と、を含む。
【0015】
本発明の第3の視点に係るプログラムは、
配置すべきモジュールを設計者の指示に基いてネットリストから選択する処理と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する処理と、
前記セル又は前記セル群の面積を計算する面積計算処理と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定処理と、
前記面積を有する領域を前記位置に表示する表示処理と、をコンピュータに実行させる。
【発明の効果】
【0016】
本発明に係るレイアウト設計装置、レイアウト設計方法及びプログラムによると、半導体集積回路のレイアウト設計において、設計TATの増加を防ぐことが課題となる。
【図面の簡単な説明】
【0017】
【図1】本発明の第1の実施形態に係るレイアウト設計装置の構成を示すブロック図である。
【図2】本発明の第1の実施形態に係るレイアウト設計装置の動作を示すフローチャートである。
【図3】本発明の第2の実施形態に係るレイアウト設計装置の構成を示すブロック図である。
【図4】本発明の第2の実施形態に係るレイアウト設計装置の動作を示すフローチャートである。
【図5】本発明の第2の実施形態に係るレイアウト設計装置による近傍配置領域の表示を一例として示す図である。
【図6】本発明の第3の実施形態に係るレイアウト設計装置の構成を示すブロック図である。
【図7】本発明の第3の実施形態に係るレイアウト設計装置の動作を示すフローチャートである。
【図8】本発明の第3の実施形態に係るレイアウト設計装置による近傍配置領域の表示を一例として示す図である。
【図9】本発明の実施形態に係るレイアウト設計装置によるフロアプランの全体の動作を示すフローチャートである。
【発明を実施するための形態】
【0018】
第1の展開形態のレイアウト設計装置は、上記第1の視点に係るレイアウト設計装置であることが好ましい。
【0019】
第2の展開形態のレイアウト設計装置は、前記面積計算部が、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算するようにしてもよい。
【0020】
第3の展開形態のレイアウト設計装置は、前記位置決定部が、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定するようにしてもよい。
【0021】
第4の展開形態のレイアウト設計装置は、前記表示部が、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することが好ましい。
【0022】
第5の展開形態のレイアウト設計装置は、前記表示部が、前記面積を有する領域を扇形の領域として表示するようにしてもよい。
【0023】
第6の展開形態のレイアウト設計装置は、前記表示部が、前記面積を有する領域を所定の幅を有する領域として表示することが好ましい。
【0024】
第7の展開形態のレイアウト設計方法は、上記第2の視点に係るレイアウト設計方法であることが好ましい。
【0025】
第8の展開形態のレイアウト設計方法は、前記面積計算工程において、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算してもよい。
【0026】
第9の展開形態のレイアウト設計方法は、前記位置決定工程において、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定するようにしてもよい。
【0027】
第10の展開形態のレイアウト設計方法は、前記表示工程において、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することが好ましい。
【0028】
第11の展開形態のレイアウト設計方法は、前記表示工程において、前記面積を有する領域を所定の幅を有する領域として表示することが好ましい。
【0029】
第12の展開形態のプログラムは、上記第3の視点に係るプログラムであることが好ましい。
【0030】
第13の展開形態のプログラムは、前記面積計算処理において、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算するようにしてもよい。
【0031】
第14の展開形態のプログラムは、前記位置決定処理において、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定するようにしてもよい。
【0032】
第15の展開形態のプログラムは、前記表示処理において、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することが好ましい。
【0033】
第16の展開形態のプログラムは、前記表示処理において、前記面積を有する領域を所定の幅を有する領域として表示することが好ましい。
【0034】
第17の展開形態の記録媒体は、上記第11乃至16の展開形態に係るプログラムを記録したコンピュータ読み取り可能な記録媒体であることが好ましい。
【0035】
(実施形態1)
本発明の第1の実施形態に係るレイアウト設計装置について、図面を参照して説明する。ここで、レイアウト設計装置は、半導体集積回路のレイアウト設計装置である。
【0036】
図1は、本実施形態に係るレイアウト設計装置80の構成を示すブロック図である。図1を参照すると、レイアウト設計装置80は、配置モジュール選択部81、セル特定部82、面積計算部83、位置決定部85及び表示部86を有する。
【0037】
配置モジュール選択部81は、配置すべきモジュールを設計者の指示に基いてネットリスト51から選択する。
【0038】
セル特定部82は、ネットリスト51を参照して、選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する。
【0039】
面積計算部83は、前記セル又は前記セル群の面積を計算する。面積計算部83は、ライブラリ52に含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算するようにしてもよい。
【0040】
位置決定部85は、ネットリスト51において前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する。位置決定部85は、一例として、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定してもよい。
【0041】
表示部86は、前記面積を有する領域を前記位置に表示する。表示部86は、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することが好ましい。表示部86は、前記面積を有する領域を扇形の領域として表示してもよい。また、表示部86は、前記面積を有する領域を所定の幅を有する領域として表示してもよい。
【0042】
図2は、本実施形態に係るレイアウト設計装置80の動作を示すフローチャートである。図2を参照して、本実施形態に係るレイアウト設計装置80の動作について説明する。
【0043】
配置モジュール選択部は、配置すべきモジュールを設計者の指示に基いてネットリスト51から選択する(ステップS81)。
【0044】
セル特定部82は、ネットリスト51を参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する(ステップS82)。
【0045】
面積計算部83は、前記セル又はセル群の面積を計算する(ステップS83)。
【0046】
位置決定部85は、ネットリスト51において前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する(ステップS85)。
【0047】
表示部86は、前記面積を有する領域を前記位置に表示する(ステップS86)。
【0048】
本実施形態のレイアウト設計装置80によると、設計者は、配置すべきモジュールと配置済みモジュールとの間に設けるべき間隔の大きさを把握でき、モジュールを適切に配置することができる。したがって、詳細配置の段階で特定のセルがある領域(モジュール)周辺に集中して配置されることに起因する配線混雑やタイミング制約違反が解消される。ゆえに、本実施形態のレイアウト設計装置80によると、フロアプランから配置配線までをやり直す必要が無くなり、半導体集積回路の設計TATの増大を防ぐことができる。
【0049】
(実施形態2)
本発明の第2の実施形態に係るレイアウト設計装置について、図面を参照して説明する。
【0050】
図3は、本実施形態に係るレイアウト設計装置10の構成を示すブロック図である。図3を参照すると、レイアウト設計装置10は、入力装置30、レイアウト設計装置10及び出力装置40を有する。
【0051】
入力装置30は、ネットリスト51及びライブラリ52、並びに、キーボード、マウス等による設計者の指示を、レイアウト設計装置10に入力する。レイアウト設計装置10は、プログラム制御により動作するコンピュータとして実現することができる。出力装置40は、処理の結果を表示するディスプレイ装置であり、レイアウト情報をファイルとして出力する出力装置である。
【0052】
レイアウト設計装置10は、配置モジュール選択部11、モジュール配置部12、及び、近傍配置領域表示部13を有する。
【0053】
近傍配置領域表示部13は、モジュールの近傍に配置されるセル群と、その面積及び位置を特定し、その領域をモジュールの境界に表示する。また、設計結果であるレイアウト情報は、出力装置40から出力され、次の配線配置処理に使用される。
【0054】
フロアプラン処理において、レイアウト設計装置10は、入力装置30からの指示に従って、配置モジュール選択部11で配置するモジュールを選択する。
【0055】
近傍配置領域表示部13は、選択後のモジュールのデータとモジュール配置部12で配置済みのモジュールのデータを配置モジュール選択部11から入力して、配置済みモジュールと選択されたモジュールとの間に存在する特定のセルに必要な配置領域を見積もり、出力装置40に表示する。
【0056】
その後、モジュール配置部12は、入力装置30からの指示により配置モジュール選択部11で選択されたモジュールの位置を決定する。
【0057】
未配置のモジュールが存在する場合には、入力装置30からの指示入力に戻る。
【0058】
すべてのモジュールの配置が完了すると、出力装置40は、モジュールの配置情報を含むレイアウト情報をファイル等に出力する。
【0059】
図4は、本実施形態に係るレイアウト設計装置の動作を示すフローチャートである。図4を参照すると、近傍配置領域表示部13は、モジュール周辺に近傍配置されるセル群を特定する(ステップS11)。
【0060】
次に、ステップS11で特定されたセル群の面積を計算する(ステップS12)。
【0061】
次に、ステップS11で特定されたセル群が配置されるモジュール境界の位置を特定する(ステップS13)。
【0062】
次に、ステップS11で特定されたセル群をモジュール境界の位置に表示する(ステップS14)。
【0063】
図9は、本実施形態に係るレイアウト設計装置10によるフロアプランの全体の動作を示すフローチャートである。図4に示したフローチャートは、フロアプラン全体のフローチャートの一部である。図9を参照して、フロアプラン全体のフローについて説明する。
【0064】
設計者は、入力装置30から指示を行ない、配置対象とするモジュールを選択する(ステップS31)。
【0065】
選択されたモジュールが1つ目である場合には(ステップS32のNo)、設計者は入力装置30から指示を行い、配置対象とするモジュールの配置位置を決定し(ステップS33)、ステップS31に戻って、2つ目のモジュールの選択から処理を進める。
【0066】
一方、選択されたモジュールが2つ目以降である場合には(ステップS32のYes)、近傍配置領域表示部13によって、出力装置40に近傍配置領域を表示する(ステップS34)。
【0067】
次に、設計者は、近傍配置領域の見積り結果を参照しつつ、配置位置を決定する(ステップS35)。
【0068】
設計者がすべてのモジュールを配置し終えるまで、ステップS31〜S35の工程を繰り返す(ステップS36)。
【0069】
本実施形態に係るレイアウト設計装置10による動作(図4)は、図9のステップS34に相当する。
【0070】
図5は、本実施形態に係るレイアウト設計装置10による近傍配置領域の表示を一例として示す図である。図3〜図5を参照して、本実施形態のレイアウト設計装置10の動作について説明する。
【0071】
図5を参照すると、選択モジュール61は、選択されたモジュールである。配置済モジュール62、63は、ネットリスト51において選択モジュール61と接続関係にある配置済みのモジュールである。ラッツネスト64、65は、選択モジュール61と配置済モジュール62、63との接続関係を示すラッツネストである。交点66、67は、ラッツネスト64、65と選択モジュール61の境界との交点である。近傍配置領域68、69は、近傍配置領域を示す。
【0072】
ところで、多電源設計を行う場合には、電源を分離するモジュール間のネットには、電源が遮断されるモジュールの出力に接続されるアイソレーションセル、電源電圧が異なるモジュールの入出力に接続されるレベルシフタセル、これら2つの機能を同時に有するアイソレーション付きレベルシフタセルが必要とされる。これらのセル(以下「多電源セル」という。)は、モジュール周辺に集中して配置される。以下では、一例として、多電源設計を行う場合について説明する。
【0073】
まず、フロアプラン処理において、ネットリスト51及びライブラリ52を入力装置30から入力する。
【0074】
次に、入力装置30からの指示に従って、配置モジュール選択部11は、配置すべきモジュールを選択する。
【0075】
図5を参照すると、配置すべきモジュールとして選択モジュール61を選択した場合、配置済モジュール62、63が存在する(図9のステップS32のYes)。したがって、近傍配置領域の表示(ステップS34)、すなわち、図4のフローチャートに示した動作が開始される。
【0076】
まず、近傍配置領域表示部13は、モジュール周辺に近傍配置されるセル群を特定する(ステップS11)。近傍配置領域表示部13は、入力装置30を介して入力されたライブラリ52から、アイソレーションセル、レベルシフタセル、アイソレーション付きレベルシフタセルのセル名を取得する。
【0077】
一例として、Synopsys社のlibertyライブラリを入力している場合には、セルに対してis_isolation_cell属性がtrueであるセルをアイソレーションセルとし、is_level_shifter属性がtrueであるセルをレベルシフタセルとし、これら2つの属性がいずれもtrueであるセルをアイソレーション付きレベルシフタセルとする。
【0078】
Synopsys社のlibertyライブラリ以外のライブラリを入力する場合においても、当該ライブラリの多電源セルを識別し得るキーワードを参照して、多電源セルを認識する。なお、多電源セルの一覧を記述したファイルをライブラリとして入力して、多電源セルのセル名を取得するようにしてもよい。
【0079】
次に、入力装置30を介して入力されたネットリスト51から、これらのセルを使用しているインスタンス名を抽出する。抽出されたインスタンス名を、近傍配置されるセル群として特定する。
【0080】
次に、セル群の面積を計算する(ステップS12)。近傍配置領域表示部13によりステップS11で特定されたセル群の中で使用されている各セルの個数を算出し、各セルの個数とライブラリ52における当該セルのサイズとを乗算し、各セルについて求めた乗算結果を足し合わせた値を、ステップS11で特定されたセル群の面積とする。
【0081】
次に、セル群が配置されるモジュール境界の位置を特定する(ステップS13)。入力装置30を介して入力されたネットリスト51から、近傍配置領域表示部13により選択された選択モジュールと接続関係のある配置済モジュールの中心と、選択モジュールの中心とを結ぶ線(ラッツネスト)を求め、選択モジュールの境界とラッツネストとが交わる点を、ステップS11で特定されたセル群を配置する位置とする。
【0082】
例えば、図5の場合、配置済モジュール62、63の中心と選択モジュール61の中心を結ぶ線であるラッツネスト64、65と、選択モジュール61の境界とが交わる交点66、67を、ステップS11で特定されたセル群を配置する位置とする。
【0083】
次に、セル群をモジュール境界の位置に表示する(ステップS14)。近傍配置領域表示部13は、ステップS11で特定されたセル群が配置される位置を扇形の要(かなめ)とし、ステップS12で求めた面積を上回る扇形の図形を出力装置40に表示する。
【0084】
例えば、図5の場合、ステップS11で特定されたセル群が配置される交点66、67を扇の要として、ステップS12で求めた面積を上回る扇形の図形68、69を出力装置40に表示する。
【0085】
このとき、図5に示すように、特定されたセル群のうちの、選択したモジュール61内に存在するものに対する近傍配置領域69は、選択モジュール61の内側に表示することが好ましい。一方、特定されたセル群のうちの、選択したモジュール61内に存在しないものに対する近傍配置領域68は、選択モジュール61の外側に表示することが好ましい。
【0086】
中心角θの単位をラジアンとしたとき、半径rの扇形の面積Sは、
S=r×r×θ/2
として求めることができる。
【0087】
ステップS11で特定されたセル群が配置される位置が選択モジュール61の頂点に存在する場合、外側に表示するときの中心角θは3π/2となり、内側に表示するときの中心角はπ/2となる。
【0088】
また、ステップS11で特定されたセル群が配置される位置から選択モジュール61の各頂点までの距離をL1、L2としたとき、半径r>L1、又は、半径r>L2の場合には、図5において近傍配置領域69として示したような領域となるが、面積は近似的に扇形の面積Sとしてもよい。
【0089】
扇形の中心角θは、モジュール61の境界の辺のうちの前記セル群が配置される点を含む辺と、この辺と扇形の円弧との交点と前記セル群が配置される点とを結ぶ線分とがなす角である(図5参照)。
【0090】
なお、出力装置40に表示する図形の形状は、扇形に限られない。面積に応じた領域を表すことができる形状であればよく、矩形、凸形その他の形状であってもよい。
【0091】
次に、設計者は、出力装置40に表示された近傍配置領域68、69を参照しつつ、選択したモジュールをモジュール配置部12で配置する。
【0092】
また、ステップS11において、セルの機能に依存せず、設計者が意図的に近傍配置したいセルがある場合には、そのインスタンス名のリストを定義したファイルを入力し、前記モジュール周辺に近傍配置されるセル群に追加しても良い。
【0093】
すべてのモジュールの配置が完了すると、出力装置40はモジュールの配置情報を含むレイアウト情報をファイル等に出力する。
【0094】
本実施形態のレイアウト設計装置10は、指定した複数のセルからモジュール周辺に近傍配置されるセル群として特定したセル群の総面積を計算するとともに、特定したセル群を、選択したモジュールの外側又は内側に計算した面積に応じた領域として表示する。
【0095】
このとき、設計者は、選択したモジュールと配置済みのモジュールとの間に設けるべき間隔の大きさを把握することができ、選択したモジュールを適切に配置することができる。したがって、従来技術における問題、すなわち、詳細配置の段階で特定のセルが特定の領域(モジュール)周辺に集中して配置されることに起因する配線混雑及びタイミング制約違反を解消することができ、フロアプランから配置配線までをやり直す必要がなくなることから、設計TATの増加を防ぐことができる。
【0096】
本実施形態のレイアウト設計装置10は、指定した複数のセルからモジュール周辺に近傍配置されるセル群を特定し(ステップS11)、特定したセル群の総面積を計算し(ステップS12)、配置済みのモジュールの中心と選択したモジュールの中心を結ぶ線と選択したモジュールの外枠が交わる点を特定したセル群が配置される位置とし(ステップS13)、ステップS14で特定したセル群を選択したモジュールの外側又は内側に計算した面積に応じた領域で表示する(ステップS14)。かかるレイアウト設計装置10によると、フロアプランの時点で近傍配置のために必要な領域のサイズを予測することができる。
【0097】
(実施形態3)
本発明の第3の実施形態に係るレイアウト設計装置について、図面を参照して説明する。
【0098】
図6は、本実施形態に係るレイアウト設計装置20の構成を示すブロック図である。図6を参照すると、第2の実施形態のレイアウト設計装置10(図3)と本実施形態のレイアウト設計装置20との相違点は、入力装置30の入力にパラメータ53を追加したことと、レイアウト設計装置10と近傍配置領域表示部13を、レイアウト設計装置20と近傍配置領域表示部15に置換えていることである。これらの以外については、本実施形態のレイアウト設計装置20は、第2の実施形態のレイアウト設計装置10と同一の構成を有する。
【0099】
また、パラメータ53は、近傍配置領域表示部15に表示する領域の幅を示すものであり、モジュール境界から領域を表示する際の距離の値が指示される。パラメータ53を使用して表示する領域は、一例として矩形としてもよい。
【0100】
図7は、本実施形態に係るレイアウト設計装置20の動作を示すフローチャートである。図7を参照すると、レイアウト設計装置20は、モジュール周辺に近傍配置されるセル群を特定する(ステップS21)。
【0101】
次に、前記セル群の面積を計算する(ステップS22)。
【0102】
次に、前記セル群が配置されるモジュール境界の位置を特定する(ステップS23)。
【0103】
次に、前記セル群をモジュール境界の位置に表示する(ステップS24)。
【0104】
図8は、本実施形態に係るレイアウト設計装置20による近傍配置領域の表示を一例として示す図である。図6〜図8を参照して、本実施形態のレイアウト設計装置20の動作について説明する。
【0105】
図8を参照すると、選択モジュール61は、選択するモジュール。配置モジュール62、63は、ネットリスト51において選択モジュール61と接続関係にある配置済みのモジュールである。ラッツネスト64、65は、選択モジュール61と配置済モジュール62、63との接続関係を示すラッツネストである。交点66、67は、ラッツネスト64、65と選択モジュール61の境界との交点である。近傍配置領域71、72は近傍配置領域を示し、幅wは近傍配置領域71の幅を示す。
【0106】
まず、フロアプラン処理の前に、ネットリスト51、ライブラリ52及びパラメータ53を入力装置30から入力する。
【0107】
次に、第2の実施形態に係るレイアウト設計装置10と同様に、入力装置30からの指示に従って、配置モジュール選択部11で配置するモジュール61を選択し、モジュール周辺に近傍配置されるセル群を特定する(ステップS21)。
【0108】
第2の実施形態に係るレイアウト設計装置10と同様に、ステップS21で特定されたセル群の面積を計算し(ステップS22)、ステップS21で特定されたセル群が配置されるモジュール境界の位置を特定する(ステップS23)。
【0109】
次に、セル群をモジュール境界の位置に表示する(ステップS24)。ステップS21で特定されたセル群が配置される位置を中心として、ステップS22で計算した面積に応じた領域を出力装置40に表示する。このとき、モジュール境界からの距離が入力装置30を介して入力されたパラメータ53で指示される距離を満たす範囲内で表示する。
【0110】
例えば、図8の場合、ステップS21で特定されたセル群が配置される交点66、67を中心として、ステップS22で計算した面積に応じた近傍配置領域71、72を出力装置40に表示する。このとき、モジュール境界からの距離を、入力装置30を介して入力されたパラメータ53で指示される幅wとして表示する。
【0111】
ここで、ステップS21で特定されたセル群を表示する矩形において、ステップS23で求めた交点66、67を含む辺の長さをhとし、これらの辺と垂直方向の辺を幅wとしたとき、矩形の面積Aは、
A=h×w
として求めることができる。
【0112】
ここで、幅wは、パラメータ53により指定された値である。また、ステップS21で特定されたセル群が配置される位置から選択モジュール61の各頂点迄の距離をL1、L2としたときに、h>L1又はh>L2の場合には、図8の72のように、L1又はL2の長さを持つ矩形をステップS21で特定されたセル群が配置されるステップS23で求めた交点67のある辺に沿って表示し、(h−L1)又は(h−L2)の長さを持つ矩形を、求めた交点66のある辺と隣接する辺に表示する。
【0113】
次に、第1の実施形態のレイアウト設計装置10と同様に、設計者は、出力装置40に表示された近傍配置領域71、72を参照しつつ、モジュール配置部12を介して選択したモジュールを配置する。
【0114】
すべてのモジュールの配置が完了すると、出力装置40はモジュールの配置情報を含むレイアウト情報をファイル等に出力する。
【0115】
本実施形態のレイアウト設計装置20は、パラメータ53で幅wを指定して、ステップS24で領域を表示するときに、パラメータとして指定された幅wで近傍配置領域の図形を表示する。したがって、設計者は、各モジュール間の最大の距離を検討して制御することができる。
【0116】
すなわち、本実施形態のレイアウト設計装置20によると、選択したモジュール周辺に近傍配置される特定のセルのために必要な配置領域を任意の幅で表示することができるため、モジュール間の距離を短くすることができる。
【0117】
本発明に係るレイアウト設計装置によると、設計TATの増加を防ぐごとができる。その理由は、フロアプランの時点で近傍配置のために必要な領域を予測して、その結果を出力装置に表示することにより、配置済みモジュールと離して配置するべき間隔の長さが判り、適切な間隔でモジュールの配置を行なうことができ、配線混雑及びタイミング制約違反が解消され、フロアプランから配置配線までのやり直しが不要となるからである。
【0118】
また、本発明に係るレイアウト設計装置によると、各モジュール間の距離を短縮することができる。その理由は、パラメータとして指定された幅で近傍配置領域の図形を表示することにより、配置済みモジュールと離して配置するべき間隔の長さを検討して制御することができるからである。
【0119】
なお、上記の特許文献の開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【0120】
10、20、80 レイアウト設計装置
11、81 配置モジュール選択部
12 モジュール配置部
13、15 近傍配置領域表示部
30 入力装置
40 出力装置
51 ネットリスト
52 ライブラリ
53 パラメータ
61 選択モジュール
62、63 配置済モジュール
64、65 ラッツネスト
66、67 交点
68、69、71、72 近傍配置領域
82 セル特定部
83 面積計算部
85 位置決定部
86 表示部
w 幅

【特許請求の範囲】
【請求項1】
半導体集積回路のレイアウト設計装置であって、
配置すべきモジュールを設計者の指示に基いてネットリストから選択する配置モジュール選択部と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定するセル特定部と、
前記セル又は前記セル群の面積を計算する面積計算部と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定部と、
前記面積を有する領域を前記位置に表示する表示部と、を備えていることを特徴とするレイアウト設計装置。
【請求項2】
前記面積計算部は、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算することを特徴とする、請求項1に記載のレイアウト設計装置。
【請求項3】
前記位置決定部は、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定することを特徴とする、請求項1又は2に記載のレイアウト設計装置。
【請求項4】
前記表示部は、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することを特徴とする、請求項1乃至3のいずれか1項に記載のレイアウト設計装置。
【請求項5】
前記表示部は、前記面積を有する領域を扇形の領域として表示することを特徴とする、請求項1乃至4のいずれか1項に記載のレイアウト設計装置。
【請求項6】
前記表示部は、前記面積を有する領域を所定の幅を有する領域として表示することを特徴とする、請求項1乃至4のいずれか1項に記載のレイアウト設計装置。
【請求項7】
半導体集積回路のレイアウト設計方法であって、
コンピュータが、配置すべきモジュールを設計者の指示に基いてネットリストから選択する工程と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する工程と、
前記セル又は前記セル群の面積を計算する面積計算工程と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定工程と、
前記面積を有する領域を前記位置に表示する表示工程と、を含むことを特徴とするレイアウト設計方法。
【請求項8】
前記面積計算工程において、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算することを特徴とする、請求項7に記載のレイアウト設計方法。
【請求項9】
前記位置決定工程において、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定することを特徴とする、請求項7又は8に記載のレイアウト設計方法。
【請求項10】
前記表示工程において、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することを特徴とする、請求項7乃至9のいずれか1項に記載のレイアウト設計方法。
【請求項11】
前記表示工程において、前記面積を有する領域を所定の幅を有する領域として表示することを特徴とする、請求項7乃至10のいずれか1項に記載のレイアウト設計方法。
【請求項12】
配置すべきモジュールを設計者の指示に基いてネットリストから選択する処理と、
前記ネットリストを参照して、前記選択されたモジュールの近傍に配置すべき1又は2以上のセルを特定する処理と、
前記セル又は前記セル群の面積を計算する面積計算処理と、
前記ネットリストにおいて前記選択されたモジュールに接続された配置済みのモジュールと前記選択されたモジュールとを結ぶ線分と、前記選択されたモジュールの外周線との間の交点を、前記セル又は前記セル群を配置すべき位置として決定する位置決定処理と、
前記面積を有する領域を前記位置に表示する表示処理と、をコンピュータに実行させることを特徴とするプログラム。
【請求項13】
前記面積計算処理において、ライブラリに含まれるセルサイズから算出された各セルの面積を足し合わせることによって、前記セル又は前記セル群の面積を計算することを特徴とする、請求項12に記載のプログラム。
【請求項14】
前記位置決定処理において、前記配置済みのモジュールの中心と前記選択されたモジュールの中心とを結ぶ線分と、前記選択されたモジュールの外周線との交点を、前記セル又は前記セル群を配置すべき位置として決定することを特徴とする、請求12又は13に記載のプログラム。
【請求項15】
前記表示処理において、前記選択されたモジュールの外周線の片側であって前記セル又は前記セル群を配置すべき側に、前記面積を有する領域を表示することを特徴とする、請求項12乃至14のいずれか1項に記載のプログラム。
【請求項16】
前記表示処理において、前記面積を有する領域を所定の幅を有する領域として表示することを特徴とする、請求項12乃至15のいずれか1項に記載のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2011−138453(P2011−138453A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2010−61(P2010−61)
【出願日】平成22年1月4日(2010.1.4)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】