JP3925679B2 - 半導体装置および半導体設計装置 - Google Patents
半導体装置および半導体設計装置 Download PDFInfo
- Publication number
- JP3925679B2 JP3925679B2 JP06631099A JP6631099A JP3925679B2 JP 3925679 B2 JP3925679 B2 JP 3925679B2 JP 06631099 A JP06631099 A JP 06631099A JP 6631099 A JP6631099 A JP 6631099A JP 3925679 B2 JP3925679 B2 JP 3925679B2
- Authority
- JP
- Japan
- Prior art keywords
- hard macro
- wiring
- semiconductor device
- buffer
- semiconductor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、設計期間の短縮が可能な半導体装置および半導体設計装置に関するものである。
【0002】
【従来の技術】
現在では、半導体装置の大規模化とともに、RAMやROM等のハードマクロを搭載するものも多い。しかし、半導体チップ内でのハードマクロの占有面積が大きくなると、このハードマクロを横切って接続すべき配線が長くなり、その遅延時間が問題となる。例えば、図2に示すように、ハードマクロ22以外の論理回路等のプリミティブセル24から、半導体装置20の外部端子となるI/Oセル26までの配線28は非常に長くなる場合がある。
【0003】
これに対し、従来より、配線28の途中、すなわち、ハードマクロ22が配置されている領域間に、配線28を駆動するための中継点として通常のバッファ(リピータ)を追加することにより配線遅延の削減が図られている。
【0004】
この場合、従来の半導体装置では、図3に示すように、ハードマクロ22が配置されている領域間に、自動配置配線ツールでの認識が可能な論理回路の配置列(一般的に、ROW(ロウ)と呼ばれる)30を新たに設け、あるいは、あらかじめ設けておき、この配置列30内に必要数の追加バッファ32を配置し、さらに、これらの追加バッファ32に電源を供給するための電源ラインVDDやグランドラインVSSを接続して、配線の接続をやり直していた。
【0005】
しかしながら、このような新たな配置列領域を設けたり、追加バッファへの電源供給のための配線を接続するという作業は、特に、ASIC(用途限定IC)等の短いTAT(設計期間)が要求される設計形態では大きな弊害となる。また、ハードマクロの配置によっては配置列を設けることができなかったり、もしくは、配置列を設けることができたとしても、動作タイミング上の問題でハードマクロの配置を変更しなければならない場合もある。
【0006】
これに対して、あらかじめ配置列をハードマクロの周辺に設けておくことは可能である。しかし、ハードマクロの種類や配置等に応じて配置列の構成も変わるため、これに応じて作業工数も増大する。また、ハードマクロの配置を変更することになると、その影響を考慮に入れて配置列も再度設計し直さなければならないため、ハードマクロを使用する従来の半導体装置では、設計工数が増大するという問題があった。
【0007】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点をかえりみて、ハードマクロを使用していても、その設計期間を短縮することができる半導体装置および半導体設計装置を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明は、所定の機能を備え、この機能を使用するための外部端子を備えるハードマクロを有する半導体装置であって、
前記ハードマクロは、当該ハードマクロの機能とは独立した少なくとも1つのバッファを含み、このバッファの入力端子および出力端子は、前記ハードマクロの機能を使用するための外部端子とは独立した前記ハードマクロの外部端子として形成されていることを特徴とする半導体装置を提供するものである。
ここで、前記少なくとも1つのバッファの入力端子および出力端子が、前記ハードマクロの周辺を通過する配線に接続され、該配線を駆動するリピータとして使用されることが好ましい。
尚、ここにおいてハードマクロの外部端子とは、半導体装置内の当該ハードマクロ以外の回路やI/Oセル等へ接続するための端子を意味する。
【0009】
また、本発明は、上記に記載のハードマクロを生成する手段と、このハードマクロを含む上記に記載の半導体装置のネットリストを生成する手段と、生成された前記ネットリストを用いて前記半導体装置のレイアウトの配置配線を行い、レイアウトパターンを生成する手段と、
レイアウト後の前記レイアウトパターンの配置配線情報に基づいて、前記半導体装置の動作タイミングを解析する手段、前記ハードマクロの周辺を通過し、なおかつ、前記動作タイミングにエラーのある配線を検出する手段、および、前記ハードマクロ内に含まれているバッファの位置を検出し、前記配線の動作タイミングが最適となるバッファを検出する手段と、
検出された前記バッファを介して前記配線の接続をやり直すように、前記ネットリストを更新する手段、および、前記レイアウトパターンを修正する手段とを有することを特徴とする半導体設計装置を提供するものである。
【0010】
【発明の実施の形態】
以下に、添付の図面に示す好適実施例に基づいて、本発明の半導体装置および半導体設計装置を詳細に説明する。
【0011】
図1は、本発明の半導体装置の一実施例の概念図である。
図示例の半導体装置10は、例えばRAMやROM等のように、所定の機能を備え、かつ、その機能を使用するための外部端子を備えるハードマクロ12を有する。このハードマクロ12は、半導体設計装置の1つであるジェネレータによって、例えばそのサイズや縦横比等をパラメータとして入力することにより、これに対応するレイアウトパターンが自動生成される。
【0012】
同図に示すように、ハードマクロ12は、その機能とは完全に独立した複数のバッファ14を備えており、各々のバッファ14の入力端子および出力端子は、ハードマクロ12本来の機能を使用するための外部端子とは全く独立したハードマクロ12の外部端子として形成されている。すなわち、ハードマクロ12には、ハードマクロ12本来の機能を使用するための外部端子と、バッファ14を使用するための外部端子とが各々独立に設けられている。
【0013】
本発明の半導体装置10は、ハードマクロ12の内部に、ハードマクロ12本来の機能とは独立したバッファ14が組み込まれている。このため、バッファ14を配線駆動用のリピータとして使用することにより、レイアウト設計の完了後、動作タイミングの検証段階で初めて検出することができる、ハードマクロ12の周辺を通過する配線16に発生する配線遅延エラーを短時間で解決し、半導体装置10の設計期間を短縮することができる。
【0014】
なお、本発明の半導体装置に搭載されるハードマクロは、ジェネレータによって自動生成されるものに限定されず、例えばCPUコアやアナログ回路等のカスタム設計のハードマクロ、階層配置配線手法における階層マクロであってもよい。また、リピータとなるバッファは、ハードマクロ12の上を配線が通過できないのであれば、ハードマクロ12の周辺部に配置するのが好ましいが、ハードマクロ12の上を配線が通過できるのであれば、任意の位置に配置してもよい。
【0015】
次に、本発明の半導体設計装置について説明する。
本発明の半導体設計装置は、基本的に、例えばワークステーション等のようなハードウェア上で動作するCADツール等のソフトウェアプログラムである。しかし、本発明の半導体設計装置は、具体的なハードウェア構成やソフトウェアプログラムに何ら限定されるものではなく、以下に述べる本発明の半導体設計装置の動作を実現する他の手段を使用しても実現可能である。
【0016】
以下、本発明の半導体設計装置を使用して、本発明の半導体装置を設計する場合の手順について説明する。
【0017】
まず、ステップ1として、前述のジェネレータを使用して、RAM等の必要とするハードマクロを生成する。
そして、ステップ2として、ハードマクロ以外の論理設計を合わせて行って半導体装置全体のネットリストを作成する。そして、このネットリストを用いて、自動配置配線ツールを使用して半導体装置のレイアウトの配置配線を行い、ネットリストに対応するレイアウトパターンを生成する。
【0018】
レイアウトの終了後、ステップ3として、ハードマクロの半導体チップ上での配置情報と、ハードマクロ自体の外部端子の情報とから、ハードマクロ内に組み込まれているバッファの位置、すなわち、各々のバッファに対応してハードマクロに形成されている外部端子の位置を抽出してそれを記憶する。
一方、ステップ4として、レイアウトパターンの配置配線情報から、ハードマクロの周辺を通過する配線を抽出して記憶する。
【0019】
その後、ステップ5として、レイアウトパターンの配置配線情報から、RC(抵抗成分および容量成分)の情報を抽出して、それに基づいて遅延計算を行い、その遅延計算に基づいて動作タイミングを解析する。
その結果、ステップ6として、エラーを起こしている配線の中に、ステップ4で記憶しているハードマクロの周辺を通過する配線が含まれているかどうかを検索し、該当する配線を選択する。
【0020】
そして、ステップ7として、ステップ3で記憶しているハードマクロの中のリピータとして使えるバッファの内、ステップ6のタイミングエラーを起こしている配線の経路に一番近いものが利用可能であると判断して、その中で最適になるものをリピータとして採用する。この時、必ずしも1つの配線に対して1つのバッファを使用するというわけではなく、必要に応じて必要な個数のバッファを使用してもよい。なお、使用しないバッファの入力端子は、グランドまたは電源に接続しておく。
【0021】
続いて、ステップ8として、ステップ7で採用したバッファを介してエラーのある配線を接続し直すようにネットリスト情報を更新する。そして、この更新後のネットリスト情報と同じようにレイアウト上の配線もやり直す。
最後に、ステップ9として、前述のようにして修正可能な配線以外の配線に関しては、従来通り既存の配置列にバッファを配置し、これをリピータとして使用することにより修正する。
【0022】
なお、上記実施例では、ハードマクロの上を配線が通過できないものとして、ハードマクロの周辺部にバッファを配置しているが、本発明はこれに限定されず、配線層の多層化に伴ってハードマクロの上を配線が通過できる場合には、ハードマクロの任意の位置にバッファを配置してもよい。この場合、バッファの外部端子も、一辺からこれに対向する他辺に形成したり、1つのバッファに対して複数の外部端子を設けるなど、必要に応じて適宜変更してもよい。
【0023】
本発明の半導体装置および半導体設計装置は、基本的に以上のようなものである。
以上、本発明の半導体装置および半導体設計装置について詳細に説明したが、本発明は上記実施例に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0024】
【発明の効果】
以上詳細に説明した様に、本発明の半導体装置は、その本来の機能とは独立したバッファを含み、その機能を使用するための本来の外部端子とは独立したバッファ用の外部端子を備えるハードマクロを搭載するものである。
また、本発明の半導体設計装置は、本発明の半導体装置のネットリストからレイアウトパターンを生成し、レイアウト後のレイアウトパターンの配置配線情報に基づいて、半導体装置の動作タイミングを解析し、ハードマクロの周辺を通過する配線の中から、動作タイミングにエラーのある配線を検出し、ハードマクロ内に含まれているバッファの中から、配線の動作タイミングが最適となるバッファを検出し、このバッファを介して配線の接続をやり直すように、ネットリストを更新し、レイアウトパターンを修正するものである。
したがって、本発明の半導体装置および半導体設計装置によれば、比較的大きいレイアウト面積を占有するハードマクロを搭載する場合であっても、ハードマクロを横切って接続すべき配線の配線遅延エラーを短時間で解決し、設計期間を大幅に短縮することができる。また、本発明の半導体装置および半導体設計装置によれば、ハードマクロの内部にリピータとなるバッファを搭載しているため、たとえハードマクロの配置をやり直した場合であっても、これに対応するその後の処理を短時間で行うことができる。
【図面の簡単な説明】
【図1】 本発明の半導体装置の一実施例の概念図である。
【図2】 半導体装置の一例の概念図である。
【図3】 配置列の一例の概念図である。
【符号の説明】
10 半導体装置
12 ハードマクロ
14 バッファ
16,28 配線
20 半導体装置
22 ハードマクロ
24 プリミティブセル
26 I/Oセル
30 配置列
32 バッファ
VDD 電源ライン
VSS グランドライン
Claims (3)
- 所定の機能を備え、この機能を使用するための外部端子を備えるハードマクロを有する半導体装置であって、
前記ハードマクロは、当該ハードマクロの機能とは独立した少なくとも1つのバッファを含み、このバッファの入力端子および出力端子は、前記ハードマクロの機能を使用するための外部端子とは独立した前記ハードマクロの外部端子として形成されていることを特徴とする半導体装置。 - 前記少なくとも1つのバッファの入力端子および出力端子が、前記ハードマクロの周辺を通過する配線に接続され、該配線を駆動するリピータとして使用されることを特徴とする請求項1記載の半導体装置。
- 請求項1に記載のハードマクロを生成する手段と、このハードマクロを含む請求項1に記載の半導体装置のネットリストを生成する手段と、生成された前記ネットリストを用いて前記半導体装置のレイアウトの配置配線を行い、レイアウトパターンを生成する手段と、
レイアウト後の前記レイアウトパターンの配置配線情報に基づいて、前記半導体装置の動作タイミングを解析する手段、前記ハードマクロの周辺を通過し、なおかつ、前記動作タイミングにエラーのある配線を検出する手段、および、前記ハードマクロ内に含まれているバッファの位置を検出し、前記配線の動作タイミングが最適となるバッファを検出する手段と、
検出された前記バッファを介して前記配線の接続をやり直すように、前記ネットリストを更新する手段、および、前記レイアウトパターンを修正する手段とを有することを特徴とする半導体設計装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06631099A JP3925679B2 (ja) | 1999-03-12 | 1999-03-12 | 半導体装置および半導体設計装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06631099A JP3925679B2 (ja) | 1999-03-12 | 1999-03-12 | 半導体装置および半導体設計装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000260949A JP2000260949A (ja) | 2000-09-22 |
JP3925679B2 true JP3925679B2 (ja) | 2007-06-06 |
Family
ID=13312131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06631099A Expired - Fee Related JP3925679B2 (ja) | 1999-03-12 | 1999-03-12 | 半導体装置および半導体設計装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3925679B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003188259A (ja) | 2001-12-20 | 2003-07-04 | Oki Electric Ind Co Ltd | ハードマクロ及びハードマクロを用いた半導体集積回路 |
JP2012227376A (ja) * | 2011-04-20 | 2012-11-15 | Fujitsu Semiconductor Ltd | レイアウト設計方法、および、レイアウト設計プログラム |
JP6527420B2 (ja) | 2015-07-31 | 2019-06-05 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
KR102439700B1 (ko) * | 2018-01-11 | 2022-09-02 | 삼성전자주식회사 | 반도체 장치, 반도체 장치의 레이아웃 설계 방법 및 반도체 장치의 제조 방법 |
-
1999
- 1999-03-12 JP JP06631099A patent/JP3925679B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000260949A (ja) | 2000-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8001517B2 (en) | Layout design method of semiconductor integrated circuit cell to adjust distances inside cell between diffusion layers and borders of cell | |
JP2007128512A (ja) | 半導体デバイスの製造適合性を向上させるための方法、システム及びプログラム | |
KR20070069390A (ko) | 더미 금속 채움에 대한 시간 지연 효과를 효율적으로반영할 수 있는 반도체 소자의 설계 방법 | |
JP3925679B2 (ja) | 半導体装置および半導体設計装置 | |
JPH0677403A (ja) | 半導体集積回路装置及びその設計方法 | |
US7073148B1 (en) | Antenna violation correction in high-density integrated circuits | |
US6629300B1 (en) | CAD system for an ASIC | |
JP2006155524A (ja) | 半導体集積回路の検証方法、検証装置および検証プログラム | |
JPH10229129A (ja) | 半導体集積回路のチップレイアウト及びその検証方法 | |
US6539525B1 (en) | Layout verifying method for integrated circuit device | |
JPH1167923A (ja) | 半導体集積回路とその配線配置方法、および該方法を記録した記録媒体 | |
US7782086B2 (en) | Semiconductor integrated circuit device | |
US20090212819A1 (en) | Method and system for changing circuits in an integrated circuit | |
JP3221567B2 (ja) | 半導体集積回路及びクロック供給方法 | |
US20040194047A1 (en) | Layout design apparatus | |
JP2008171399A (ja) | 半導体装置の設計方法、半導体装置設計システム及びコンピュータプログラム | |
JP2010073728A (ja) | 半導体集積回路レイアウト設計方法及び半導体集積回路レイアウト設計装置 | |
JPH06349947A (ja) | 半導体集積回路装置のマスクパターン設計方法および設計装置 | |
JP2703702B2 (ja) | ゲートアレイのレイアウト方法 | |
JPH07121602A (ja) | 半導体集積回路のレイアウト検証装置及び検証方法 | |
JPH11110438A (ja) | Lsi設計の修正方法 | |
JP3727217B2 (ja) | Lsi設計支援システムおよびlsi設計方法 | |
JPH0786415A (ja) | 自動配置配線方法 | |
JPH09116018A (ja) | 自動配置配線方法 | |
JP2003345847A (ja) | 半導体装置の回路設計支援装置およびレイアウト変更方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040820 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061121 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070117 |
|
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: 20070213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3925679 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: 20110309 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120309 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130309 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140309 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
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 |
|
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 |