JP3230234B2 - 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。 - Google Patents

半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。

Info

Publication number
JP3230234B2
JP3230234B2 JP04385799A JP4385799A JP3230234B2 JP 3230234 B2 JP3230234 B2 JP 3230234B2 JP 04385799 A JP04385799 A JP 04385799A JP 4385799 A JP4385799 A JP 4385799A JP 3230234 B2 JP3230234 B2 JP 3230234B2
Authority
JP
Japan
Prior art keywords
delay
circuit
block
delay adjustment
semiconductor integrated
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
Application number
JP04385799A
Other languages
English (en)
Other versions
JP2000243843A (ja
Inventor
泰三 高橋
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP04385799A priority Critical patent/JP3230234B2/ja
Publication of JP2000243843A publication Critical patent/JP2000243843A/ja
Application granted granted Critical
Publication of JP3230234B2 publication Critical patent/JP3230234B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体集積回路の
遅延調整方法、遅延調整用回路ブロックおよび記録媒体
に関する。
【0002】
【従来の技術】半導体集積回路の遅延調整方法として
は、例えば、日本国特許番号第2570595号公報に
開示された技術が知られている。同公報の技術は、最適
スタンダードセル選択方法に関し、論理合成ツールを用
いて得られたネットリスト(回路接続データ)から自動
配置配線を行ってレイアウトデータを生成する内容が開
示されている。
【0003】また、同公報には、駆動能力に応じて分類
された各種の論理セルを登録したスタンダードセルライ
ブラリを使用し、自動配置配線とセルライブラリから得
られた配線負荷容量をもとに遅延時間を算出しながら、
所望の遅延時間内に収まるよう最適な駆動能力を有する
セルを人手で選択し、ネットリストを修正する技術が開
示されている。
【0004】以下、図7を参照して、回路ブロック(モ
ジュール)間の信号伝達の遅延量を調節する方法につい
て説明する。回路ブロックAから回路ブロックBに対し
て配線が接続されている回路において、回路ブロックA
から回路ブロックBに対する信号伝達遅延量を調節する
ために、以下の(1)〜(3)に示すような方法が用い
られている。
【0005】(1)回路ブロックAを、回路ブロックA
と同じ機能を有するとともに、ドライブ能力またはブロ
ック内部遅延量が異なる別の回路ブロック(ライブラリ
ブロック)Cに置き換える。 (2)回路ブロックA,B間の配線に、論理を変更しな
いように別の(必要に応じて複数個の)回路ブロック
(ライブラリブロック)Dを挿入または削除する。 (3)回路ブロックA,B間の配線長を変更する。
【0006】上記の(1)〜(3)の方法またはそれに
類する方法により、回路ブロックA,B間の信号伝達遅
延量の調節が行われる。
【0007】図8は、従来の設計フローの例を示したも
のである。まず、回路データを作成する(ステップS
1)。ここで作成される回路データとは、ネットリスト
または回路接続データと称され、各回路ブロック間の接
続関係のみが規定され、各回路ブロックの位置座標や各
回路ブロック間の配線ルート(配線長)などのレイアウ
トを示すものではない。
【0008】次に、レイアウト処理ツール2を用いて、
前記回路データに基づいて、回路データに含まれる各回
路ブロックのレイアウトおよび各ブロック間の配線を行
う(ステップS2)。レイアウト処理ツール2のブロッ
ク配置処理部2aにより、各回路ブロックのレイアウト
(位置座標の決定)を行う。レイアウト処理ツール2の
アルミ配線処理部2bにより、各ブロック間の配線(配
線ルートの決定)を行う。
【0009】次に、ステップS3では、レイアウト処理
ツール2でのレイアウト結果に基づいて、タイミング検
証(遅延検証)を行い、検証結果が基準を満たしていれ
ば(ステップS3−Y)、レイアウトが完成する。
【0010】タイミング検証の結果が基準を満たしてい
ない場合には、設計者がタイミング検証結果を確認し
(ステップS4)、その検証結果に基づいて、タイミン
グ違反の回路ブロックを検出するとともに、そのタイミ
ング違反が、レイアウトの変更のみで修正可能か、前記
回路データまでの修正が必要かを判断する(ステップS
5)。
【0011】前記判断の結果、レイアウトの修正のみを
行う場合には、設計者によりブロック間配線長の変更な
どのレイアウト修正データを作成し、前記レイアウト修
正データに基づいて、レイアウト処理ツール2を用いて
再度のレイアウト処理を行う(ステップS6)。
【0012】前記判断の結果、前記回路データまでの修
正が必要であると判断された場合には、設計者により適
宜、ライブラリブロックの種類変更又はブロックの挿入
・抜き取り・移動、あるいはブロック間配線長の変更を
行って前記回路データの修正を行う(ステップS7)。
【0013】さらに、前記判断の結果、レイアウトの修
正のみを行う場合であろうと、前記回路データの修正を
行う場合であろうと、その修正の結果、タイミング違反
が改善されているかの確認に加えて、論理が変更されて
いないかの確認をする必要がある。
【0014】
【発明が解決しようとする課題】上記方法によれば、遅
延調節を行う際に、設計者自身によって、タイミング結
果の確認(ステップS4)、およびライブラリブロック
の種類変更又はブロックの挿入・抜き取り・移動、ある
いはブロック間配線長の変更を行っている(ステップS
5,S6)ことから、以下のような欠点が挙げられる。
【0015】第一に、前記判断の結果、レイアウト変更
で遅延調節を行う場合、そのレイアウト変更作業に多く
の時間を必要とする。第二に、セルの種類または数を変
更した場合、ゲート規模が変更してしまう。ゲート規模
が変更すると、レイアウト上、配線長が変わり、その変
更に伴う遅延の問題や、消費電力の変化を考慮する必要
がある。また、配線作業の工程自体が増えるという問題
がある。また、セルを増やす場合には、そのセルを配置
するための場所を新たに探す必要がある。第三に、配線
を変更した場合、新たにクロストーク等の問題を考慮す
る必要が生じる。
【0016】第四に、遅延調節効果の結果を見積もるた
めには、複雑な計算又はタイミング検証ツール2による
タイミングシュミレーションを行う必要がある。さらに
は、遅延改善修正による改善効果が期待通りにならない
場合があり、一般に何度か同様の遅延改善効果を繰り返
す必要があるため、非常に多くの時間が必要となる。
【0017】第五に、回路設計者自身による修正作業が
行われた場合には、目的とする区間の遅延改善以外の誤
った変更等が行われていないことを確認する必要があ
る。
【0018】また、上記のように、ドライブ能力が異な
るライブラリブロックを用いて、遅延量の調整を行おう
とすると、出力側(後段側)の負荷の大小によって遅延
値が変わってしまうという問題がある。ドライブ能力で
遅延調節を行う場合、そのライブラリブロックは、所定
の遅延値を有しているわけではなく、レイアウト(出力
側の負荷の大小)によって遅延量が変わってくる。した
がって、タイミング解析ツールなどで、出力側のレイア
ウトを示すデータとともにその都度、遅延量を算出する
必要がある。
【0019】本発明は、上記の事情に鑑みてなされたも
ので、遅延調節の際の時間および工数を削減でき、新た
なゲート規模の見積もりが不要となる、半導体集積回路
の遅延調整方法、遅延調整用回路ブロックおよび記録媒
体を提供することを目的としている。
【0020】
【課題を解決するための手段】本発明の半導体集積回路
の遅延調整方法は、回路接続データの中でタイミング違
反の可能性のある対象パスを抽出しそのパス中の回路ブ
ロックを遅延調整用回路ブロックで置換した修正回路接
続データを生成するステップと、前記修正回路接続デー
タに基づいたレイアウトデータを生成するステップと、
前記レイアウトデータについてタイミング検証を行った
結果に対応して前記遅延調整用回路ブロック内の遅延値
を決める回路接続を行うステップとを含む。
【0021】本発明の半導体集積回路の遅延調整方法に
おいて、前記タイミング違反の可能性のある対象パスの
抽出は、前記回路接続データのタイミング解析により行
う。
【0022】本発明の半導体集積回路の遅延調整方法に
おいて、前記修正回路接続データを生成するステップ
は、前記遅延調整用回路ブロックで置換されたときに前
記抽出されたパスのタイミング違反が改善されるか否か
を判断し、前記判断の結果改善されると判断された場合
に当該遅延調整用回路ブロックで置換した前記修正回路
接続データを生成するものである。
【0023】本発明の半導体集積回路の遅延調整方法に
おいて、前記遅延調整用回路ブロックは、入力信号に対
して論理等価な出力信号を出力し、前記入力信号を入力
するための切り替え可能な複数の入力部を有し、前記複
数の入力部を切り替えることにより略一定の遅延値を生
じさせるものである。
【0024】本発明の半導体集積回路の遅延調整方法に
おいて、前記遅延調整用回路ブロックは、入力信号に対
して論理等価な出力信号を出力し、前記出力信号を出力
するための切り替え可能な複数の出力部を有し、前記複
数の出力部を切り替えることにより略一定の遅延値を生
じさせるものである。
【0025】本発明の半導体集積回路の遅延調整方法
は、回路接続データの中でタイミング違反の可能性のあ
る対象パスを抽出しそのパス中の回路ブロックを遅延調
整用回路ブロックで置換した修正回路接続データを生成
するステップと、前記修正回路接続データに基づいたレ
イアウトデータを生成するステップと、前記レイアウト
データに基づいて製造された半導体集積回路に対して外
部からの制御信号により前記遅延調整用回路ブロック内
の遅延値を制御するステップとを含む。
【0026】本発明の半導体集積回路の遅延調整方法に
おいて、前記タイミング違反の可能性のある対象パスの
抽出は、前記回路接続データにおいてインターフェース
部に相当する回路ブロックを抽出することにより行う。
【0027】本発明の半導体集積回路の遅延調整方法に
おいて、前記遅延調整用回路ブロックは、前記遅延調整
用回路ブロックの入力部と出力部との間に設けられた少
なくとも1段の遅延素子と、制御信号に応答して前記少
なくとも1段の遅延素子の内部遅延値を変更する。この
場合、例えば、制御信号に応答してセレクタにより、複
数段の遅延素子の段数が切り替えられる構成としてもよ
い。または、切り替えられた結果、段数が変わること無
く、内部遅延値が違う別の遅延素子に切り替えられる構
成としてもよい。ここで、前記遅延素子とは、例えば、
バッファ、インバーターなどのロジック回路、ゲートな
どである。
【0028】本発明の半導体集積回路の遅延調整方法に
おいて、前記制御された遅延値は、前記半導体集積回路
が基板に搭載されたときに他の装置間でのタイミング調
整に依存した遅延量である。
【0029】本発明の遅延調整用回路ブロックは、入力
信号に対して論理等価な出力信号を出力し、前記入力信
号を入力するための切り替え可能な複数の入力部を有
し、前記複数の入力部を切り替えることにより略一定の
遅延値を生じさせるものである。
【0030】本発明の遅延調整用回路ブロックは、入力
信号に対して論理等価な出力信号を出力し、前記出力信
号を出力するための切り替え可能な複数の出力部を有
し、前記複数の出力部を切り替えることにより略一定の
遅延値を生じさせるものである。
【0031】本発明の遅延調整用回路ブロックは、入力
部と出力部との間に設けられた少なくとも1段の遅延素
子と、制御信号に応答して前記少なくとも1段の遅延素
子の内部遅延値を変更する。この場合、例えば、制御信
号に応答してセレクタにより、複数段の遅延素子の段数
が切り替えられる構成としてもよい。または、切り替え
られた結果、段数が変わること無く、内部遅延値が違う
別の遅延素子に切り替えられる構成としてもよい。ここ
で、前記遅延素子とは、例えば、バッファ、インバータ
ーなどのロジック回路、ゲートなどである。
【0032】本発明の遅延調整用回路ブロックにおい
て、前記複数の入力部のそれぞれは、互いにバッファサ
イズの等しいバッファを備えている。同じ設計(タイ
プ)のバッファ(遅延素子)を用いることにより、遅延
量の調整が行い易くなる。
【0033】本発明の遅延調整用回路ブロックにおい
て、前記複数の出力部のそれぞれは、互いにバッファサ
イズの等しいバッファを備えている。同じ設計(タイ
プ)のバッファ(遅延素子)を用いることにより、遅延
量の調整が行い易くなる。
【0034】本発明の記録媒体は、回路接続データの中
でタイミング違反の可能性のある対象パスを抽出しその
パス中の回路ブロックを遅延調整用回路ブロックで置換
した修正回路接続データを生成するステップと、前記修
正回路接続データに基づいたレイアウトデータを生成す
るステップと、前記レイアウトデータについてタイミン
グ検証を行った結果に対応して前記遅延調整用回路ブロ
ック内の遅延値を決める回路接続を行うステップとをコ
ンピュータに実行させるためのプログラムを記録したコ
ンピュータに読み取り可能な記録媒体である。
【0035】本発明の記録媒体は、回路接続データの中
でタイミング違反の可能性のある対象パスを抽出しその
パス中の回路ブロックを遅延調整用回路ブロックで置換
した修正回路接続データを生成するステップと、前記修
正回路接続データに基づいたレイアウトデータを生成す
るステップと、前記レイアウトデータに基づいて製造さ
れた半導体集積回路に対して外部からの制御信号により
前記遅延調整用回路ブロック内の遅延値を制御するステ
ップとをコンピュータに実行させるためのプログラムを
記録したコンピュータに読み取り可能な記録媒体であ
る。
【0036】本発明において、LSI設計にて使用され
るライブラリブロックは、入出力間遅延量として、所定
の規格化された遅延差をもつような複数の内部遅延値を
有している。本発明は、LSI用ライブラリブロックが
有する内部遅延差を利用することにより、LSI回路の
ブロック間の遅延調節を行うものである。
【0037】本発明は、前記内部遅延を有するライブラ
リブロックを使用してレイアウト後の遅延調節を行うこ
とを可能としたタイミング修正ツールにより、遅延調節
を行うものである。
【0038】
【発明の実施の形態】以下、図面を参照して、本発明の
半導体集積回路の遅延調整方法の一実施形態について説
明する。
【0039】図1から図5を参照して、第1の実施形態
について説明する。図2から図4は、本実施形態で使用
するライブラリブロックの一例を示した回路ブロック図
である。
【0040】図2に示すライブラリブロック21は、入
力信号11に対して論理等価な出力信号12を得るライ
ブラリブロックの一例である。入力信号11は、入力部
A1から中間部C1を介して出力部D1から出力され
る。入力部B1は接地され、入力部B1への入力電圧は
ゼロに固定されている。ライブラリブロック21は、N
OR回路22と、インバーター23とが中間部C1を介
して直列に接続されてなるものである。
【0041】このライブラリブロック21は、入力部A
1と中間部C1との間の遅延量および入力部B1と中間
部C1との間の遅延量の差が所定の値に保持され、かつ
入力部A1と中間部C1との間の遅延量よりも入力部B
1と中間部C1との間の遅延量の方が大きくなるように
設計された回路である。
【0042】ライブラリブロック21において、入力部
A1と出力部D1との間の遅延量を大きくするように遅
延調整を行う場合、入力信号11の入力部を入力部A1
から入力部B1につなぎ替え、かつ入力部A1への入力
電圧をゼロに固定する。このことにより、入力部A1と
出力部D1との間の遅延量を遅延調整前に比べて、所定
の遅延量だけ大きくすることが可能となる。
【0043】図3は、入力信号31に対して論理等価な
出力信号32a、32bを得るライブラリブロック41
の一例であり、1つの入力部E2と、2つの出力部G
2,H2とを備えている。ライブラリブロック41は、
第1のバッファ43と、第1のバッファ43の出力端子
と出力部G2との間に接続された第2のバッファ45
と、第1のバッファ43と第2のバッファ45との間の
接続部F2にその入力端子側が接続された第3のバッフ
ァ44と、第3のバッファ44の出力端子と出力部H2
との間に接続された第4のバッファ46とを備えてい
る。第2のバッファ45に接続された出力部G2からは
出力信号32aが出力され、第4のバッファ46に接続
された出力部H2からは出力信号32bが出力される。
第2のバッファ45と、第4のバッファ46は、同じ設
計(タイプ)の回路である。第2のバッファ45と、第
4のバッファ46のそれぞれのバッファサイズを等しく
設定することで、所定の遅延差を生じさせ易くする。こ
こで、第2のバッファ45および第4のバッファ46を
設けたのは、出力段の負荷容量を合わせるためであり、
第2のバッファ45および第4のバッファ46を設けな
いとすると、出力部G2と、出力部H2のいずれかを選
択するかで、第1のバッファ43のファンアウトが変わ
ってしまうからである。出力部G2と、出力部H2のい
ずれかを選択するかで、第3のバッファ44の経由の有
無の分だけの遅延差が生じる。なお、接続部F2と出力
部G2との間と、接続部F2と出力部H2との間の、そ
れぞれの配線長の差は、微小であるため、それらの間に
ドライブ能力の差があるとしても、実際の遅延量に与え
る影響は殆ど無い。
【0044】出力部G2と出力部H2とでは、入力部E
2からのバッファ43,44,45,46の段数が異な
るため、信号遅延量が異なる。接続部F2と出力部G2
との間の遅延量と、接続部F2と出力部H2との間の遅
延量の差を所定値に設計することにより、出力部とし
て、出力部G2にするか出力部H2にするかを切り替え
ることにより、所定の遅延差を得ることが可能になる。
第2のバッファ45と、第4のバッファ46は、同じ設
計(タイプ)の回路であり、またレイアウト的にも近く
に配置されるので製造ばらつきによる影響も少なく、略
一定の遅延差が生じる。
【0045】図4は、入力信号81に対して論理等価な
出力信号82を得るライブラリブロック91の一例を示
している。ライブラリブロック91は、第1のバッファ
84と、第1のバッファ84の出力側と、出力部I3と
の間に設けられたセレクタ86と、第1のバッファ84
の出力側とセレクタ86との間に並列に接続された第2
のバッファ85と、セレクタ86と出力部I3との間に
設けられた第3のバッファ88とを備えている。セレク
タ86は、制御信号入力部J3から入力される外部制御
信号87に基づいて切り替えられ、第1のバッファ84
の出力側と出力部I3とが第3のバッファ88の1段で
接続される状態と、第3のバッファ88に加えて第3の
バッファ88と第1のバッファ84の間に第2のバッフ
ァ85が並列接続された状態とが切り替えられる。
【0046】セレクタ86による切り替えによって、入
力部H3からのバッファ84,85,88の段数が異な
るため、入力部H3と出力部I3との間の信号遅延量が
異なる。制御信号入力部J3から入力される外部制御信
号87を変えることにより、所定の遅延差を得ることが
可能になる。
【0047】本実施形態では、図2から図4に示すよう
な、予め設定された内部遅延値を有する複数のライブラ
リブロック21,41,91がライブラリ(図示せず)
に用意されている。複数のライブラリブロックのそれぞ
れが調整できる遅延値(ポートや外部制御信号の切り替
えで各ライブラリブロックに生じる遅延値差)は、例え
ば、0.2ns、0.4ns、0.6ns…というよう
に、所定間隔となるように複数種類用意され、それらは
ニーズに合わせて選択される。
【0048】また、後述するタイミング解析ステップS
500や、対象パス決定ステップS600での結果、ラ
イブラリ内に既にあるライブラリブロックでは、タイミ
ング違反を良好に改善できないと判断された場合には、
ステップS700において、ニーズに応じたライブラリ
ブロックが新しく作成される。
【0049】また、本実施形態のライブラリブロック
は、図2から図4に示すように、内部遅延値を変えるこ
とにより、タイミング違反を改善するものであり、従来
のようにドライブ能力を変えるものではない。ドライブ
能力によって遅延量を調整する場合には、出力側の負荷
(レイアウト)によって遅延値が変動してしまい、後述
するように、レイアウト前の回路接続データ52の段階
での、ライブラリブロックの選択・作成(ステップS7
00)に適さないからである。言い換えれば、本実施形
態では、ライブラリブロックの内部遅延差を使って遅延
調整を行うからこそ、タイミング違反検出後に、回路接
続データ51,52ないし54の段階まで戻らなくても
よい、ということがいえる。
【0050】本実施形態では、ライブラリブロック内部
で規格化された設定値(内部遅延差)を有している。本
実施形態のライブラリブロックは、ドライブ能力によっ
て遅延調整を行うものではないから、複数のライブラリ
ブロック内の出力段の各ドライブ能力は、互いに実質的
に等しく設定されている。
【0051】図1は、本実施形態による設計フローを示
した図である。
【0052】まず、ハードウェア記述言語により記述さ
れた論理合成前の回路データ51を入力して(ステップ
S100)、論理合成後の回路接続データ(ネットリス
ト)52を生成する(ステップS200)。
【0053】回路接続データ(ネットリスト)52と
は、回路ブロックの接続関係のみが規定されており、各
回路ブロックの位置座標や回路ブロック間の配線ルート
(配線長)などは未定の状態のデータである。後述する
ように、前記未定のデータ(各回路ブロックの位置座標
や回路ブロック間の配線ルート(配線長))は、各回路
ブロックをレイアウトした後に決まる。図5に示すレイ
アウト処理ツール800のブロック配置処理部810
で、各回路ブロックの位置座標が決定され、アルミ配線
処理部820で、必要に応じて迂回して配置される配線
のルート(配線長)が決定される。
【0054】論理合成後のネットリストは、論理合成ツ
ール(図示せず)を用いて以下のように修正される。ま
ず、回路接続データ52について、仮配線長の見積もり
やクロック信号等の設定を行う(ステップS300)。
【0055】ステップS300では、論理合成後のネッ
トリスト52に対して、フリップフロップ等の動作スピ
ードを設定するためにクロックの定義を行う。また、回
路ブロックの入力側に対してどの程度のドライブ能力の
信号が入力されて、その入力信号にどの程度の遅延が含
まれているかを仮に予想して設定を行う。回路ブロック
の出力側についても出力負荷がどの程度か、出力された
後に遅延が生じるか否かを予想して設定を行う。また、
回路ブロック間の配線長を予想して設定を行う場合があ
る。
【0056】次いで、前記仮配線長やクロック信号に基
づいて、回路接続データ52についてのタイミング解析
を行う(ステップS400)。
【0057】ステップS400のタイミング解析では、
設定されたクロック信号に基づいて動作させたときのフ
リップフロップのピンとピンの間の信号伝達時間や、出
力側のポート毎までの信号伝達時間を検出し、所望の遅
延時間との比較を行う。
【0058】タイミング解析結果に基づき、タイミング
制約と比較し、タイミングマージンが超えているかまた
は少ないと判断されたパス(信号経路)を検出し、その
検出されたパスを対象パスとして決定する(ステップS
500)。
【0059】ここで行われるタイミング解析(ステップ
S400)では、未だレイアウト前で配線長などが未決
定であるため、正確な解析結果が得られるわけではない
が、目安となるタイミング解析結果が得られる。
【0060】対象パス決定ステップS500では、その
タイミング解析結果に基づいて、レイアウト後にタイミ
ング違反となる可能性がある箇所(パス、信号経路)を
検出し、前記対象パスとして決定する。
【0061】また、対象パス決定ステップS500で
は、前記タイミング違反となる可能性がある箇所の他
に、オプションによりチップの入出力部の回路を対象パ
スに指定することもできる。
【0062】チップ外部とのインターフェース部分は、
チップ完成後にコンポーネントして組み込まれた後で、
遅延量を変更したいという要請がある。チップ外部の負
荷と、ドライブ能力によって変動する遅延量を、インタ
ーフェース部分で調整するためである。
【0063】従来は、対象パス決定ステップS500か
ら出る破線で示すように、対象パスが決定された場合、
論理合成前の回路データ51か、論理合成後の回路デー
タ52,54にまで戻り、再度、対象パスにならないよ
うに回路データ51,52,54を修正していた。
【0064】ステップS600では、図2から図4に示
すようなライブラリ適用回路(ライブラリブロック)2
1,41,91を選択または作成する。
【0065】ステップS700では、前記選択または作
成されたライブラリ適用回路21,41,91を、回路
接続データ52のうちの、前記対象パスとして決定され
た箇所に編集(置換・追加・削除・更新を含む)する。
なお、対象パス決定ステップS500において、インタ
ーフェース部分であるとして認定された対象パスがある
場合には、図4のライブラリブロック91のような外部
制御信号87により内部遅延値を調節可能なライブラリ
ブロックを選択または作成する。チップ完成後にポート
切り替えが不可能となった後に、チップ外部から遅延値
を変更するためである。
【0066】上記のようにステップS700で、回路接
続データ52に、ライブラリ適用回路21,41,91
が配置された結果として、レイアウト用回路接続データ
54が生成される。
【0067】図5は、本実施形態において、レイアウト
用回路接続データ54を生成した後の設計フローを実現
するためのハード構成を模式的に示した図である。レイ
アウト用回路接続データ54の生成後の設計フローにつ
いては、図1および図5を参照して説明する。
【0068】ステップS700で生成されたレイアウト
用回路接続データ54には、レイアウト処理ツール80
0によるレイアウト処理がなされて(ステップS80
0)、回路ブロックおよびライブラリブロック21,4
1,91の位置座標および各ブロック間の配線長の値
が、正確な座標値、数値として求められる。レイアウト
処理ツール800は、ブロック配置処理部810と、ア
ルミ配線処理部820とを備えている
【0069】レイアウト処理ステップS800には、ブ
ロック配置処理部810により行われ各回路ブロック
(ライブラリブロックを含む)の位置座標を決定するブ
ロック配置ステップS810と、アルミ配線処理部82
0により行われ前記位置座標が決定された各回路ブロッ
ク間の配線ルート(配線長)を決定するアルミ配線ステ
ップS820が含まれる。
【0070】レイアウト用回路接続データ54は、ステ
ップS800で上記のように各回路ブロックおよび各回
路ブロック間の配線のレイアウトが決まることにより、
レイアウトデータ56になる。
【0071】レイアウトデータ56に含まれる各ブロッ
クの配置データおよび配線データに基づいて、タイミン
グ検証ツール900により、タイミング検証が行われる
(ステップS900)。タイミング検証では、レイアウ
トデータ56に基づいて求められた各回路ブロック間の
遅延値と、設定値(タイミング制約)とが比較される。
各回路ブロック間の遅延値が設定値以下であれば(ステ
ップS900−Y)、レイアウトデータ56が完成する
(ステップS1000)が、所定の基準を満たしていな
い場合(ステップS900−N)には、タイミング修正
ツール1100でタイミング修正が行われる(ステップ
S1100)。
【0072】タイミング修正ツール1100は、タイミ
ング違反回路抽出部1110と、タイミング修正制御部
1120とを備えている。タイミング違反回路抽出部1
110およびタイミング修正制御部1120は、それぞ
れ以下に述べるタイミング修正ステップS1100およ
びタイミング修正ステップS1120を行う。
【0073】タイミング修正ステップS1100では、
まず、ステップS900のタイミング検証結果に基づい
て、タイミング違反が起きている場所の特定、すなわ
ち、タイミング違反回路ブロックの抽出を行う(ステッ
プS1110)。
【0074】タイミング違反抽出ステップS1110で
は、それぞれの回路ブロックの入力部と出力部との間の
遅延値と、許容遅延値とを比較し、許容遅延量よりオー
バーした回路ブロック名と、オーバーした値が抽出され
る。
【0075】このステップS1110で、タイミング違
反回路ブロックとして抽出される回路ブロックは、回路
接続データ52の段階でのタイミング解析結果(ステッ
プS400)に基づき、前記対象パスとして決定され
(ステップS500)、ライブラリ適用回路21,4
1,91が配置されている回路ブロック54(52)で
ある可能性が高い(ステップS600,S700)。
【0076】なお、ここで、タイミング違反回路ブロッ
クとして抽出される回路ブロックがライブラリ適用回路
21,41,91ではない場合には、従来と同様の方法
で修正する。
【0077】次に、タイミング修正ステップS1120
では、タイミング違反回路ブロックとして抽出されたラ
イブラリ適用回路ブロック21,41の、前記入力部A
1から入力部B1への切り替え(図2)や出力部G2か
ら出力部H2への切り替え(図3)(以下、「ポートの
切り替え」という)を行う旨の信号SAをアルミ配線処
理部(ステップS820)に出力する。
【0078】タイミング違反抽出ステップS1110に
おいて、例えば許容遅延値よりも0.2nsオーバーと
検出された回路ブロックが、図3に示すような、E2−
H2間よりE2−G2間の遅延量が0.2ns以上少な
いようなライブラリブロック41である場合、出力部の
接続を出力部H2から出力部G2につなぎかえれば、改
善可能である(図5参照)。したがって、タイミング修
正制御部1120は、出力部H2の接続を削除し、出力
部G2を接続する旨のデータSAを、アルミ配線処理部
820に対して与え、そのデータSAに基づき、アルミ
配線処理部820においてアルミ配線処理を行うことに
より、タイミング改善が行われる。
【0079】上記のように、タイミング修正制御部11
20から出力されるデータSAに基づきレイアウト処理
ツール800で行われる処理は、回路ブロック(例え
ば、図5中の通常ライブラリNLと本発明ライブラリP
L(41))のレイアウトを変更するものではない。回
路ブロックのレイアウト自体は、最初のステップS80
0(ステップS810)で固定され、タイミング修正ス
テップS1120では、レイアウトが固定された回路ブ
ロック(ライブラリブロック)のポートの切り替え指示
を行うのみである。
【0080】さらに、上述したように、チップ外部との
インターフェース部分については、チップ完成後にコン
ポーネントして組み込まれた後で、遅延量を変更したい
という要請がある。チップ外部の負荷と、ドライブ能力
によって変動する遅延量を、インターフェース部分で調
整するためである。このことから、オプションにより、
インターフェース部分を、対象パスに指定することもで
き、その場合には、チップ外部からその遅延値を制御可
能な、ライブラリブロック91が配置される(ステップ
S700)。
【0081】なお、チップ外部からその遅延値を制御可
能なライブラリブロック91は、図4に示すようにセレ
クタ86などを備えているため、ポート切り替え型のラ
イブラリブロック21,41に比べて面積的に不利であ
る。したがって、チップ外部から遅延値を制御可能なラ
イブラリブロック91の使用は、インターフェース部分
などの最小限に抑えて、内部回路部分にはポート切り替
え型のライブラリブロック21,41を用いる。
【0082】チップ完成後、ポートの切り替えが不可能
となった後に、外部制御信号87に基づいてライブラリ
ブロック91のセレクタ86を切り替えて、遅延量を調
整する。この外部制御信号87に基づいて遅延量を変え
るライブラリブロック91では、タイミング違反が検出
された場合に、レイアウトステップS800のアルミ配
線ステップS820にまで戻る必要がなく、供給する外
部制御信号87の種類を変えればよい(レイアウトツー
ル800を用いる必要がない)。
【0083】また、インターフェース部分がタイミング
違反か否かは、各回路ブロックがレイアウトされた段階
(レイアウトデータ56、またはステップS1000で
完成されたレイアウトデータ)で、完全に決定されるわ
けではなく、それがチップとなってチップ外部との関係
(負荷など)が決まってからタイミング違反か否かの判
断が可能となる場合がある。
【0084】したがって、本実施形態では、ステップS
1000の後に、図示しないタイミング違反回路ブロッ
クの抽出ステップと、図示しないその抽出結果に基づく
タイミング修正ステップ(外部制御信号87の切り替え
ステップ)を備える場合がある。
【0085】以上説明した本実施形態によれば、タイミ
ング修正ステップS1120で、回路接続データ51,
52の段階まで戻ることがない(ステップS1100か
ら出る破線参照)。すなわち、タイミング違反の改善の
ために、修正回路設計者が直接、回路接続データ51、
52を確認することなく、自動的にレイアウト処理ツー
ル(ステップS800)に対して、レイアウト処理のた
めのデータが与えられる。
【0086】本実施形態では、ブロック内部に論理的に
同等でかつ所定の遅延差をもつ複数の内部固定遅延値を
有するLSIライブラリブロック21,41,91を用
いる。このことにより、LSIレイアウトの際に発生す
る遅延調節の作業が、ライブラリ自身が有する内部遅延
差を利用した遅延調節を行うことにより、レイアウトデ
ータをほとんど変更しないで済む。しかも、この場合、
遅延調節効果が予測どおりに得られるため、回路遅延調
節の際の時間および工数を削減することができる。
【0087】さらに、本実施形態によれば、ゲート規模
の変更が生じないため、新たなゲート規模の見積もりが
不要となる。また、図1に示す設計フローによりタイミ
ング修正を行うことにより、ツール上で自動的かつ正確
なタイミング修正が可能となり、また、設計者自身によ
るタイミング修正を行う際に発生し得る機能的な修正間
違い等が発生しなくなるという効果が得られる。
【0088】さらに、ライブラリブロック内部に複数の
遅延値を選択するための遅延制御機能を有する構成にす
ることにより、ソフト上での遅延調節が可能となるた
め、遅延改善のためのレイアウト修正作業が不要になる
という効果が得られる。
【0089】本実施形態によれば、レイアウト以降は回
路接続データ51,52までは戻る必要が無い。すなわ
ち、レイアウト後にタイミング違反が検出(ステップS
1110)されても、回路接続データ51,52の段階
まで戻る必要がなく、レイアウト段階(ステップS82
0)以降で対処することができる。
【0090】従来はレイアウト後にタイミング解析を行
い、違反があると駆動力の違うブロックで置換したり、
バッファ段数を変えたり、配線を変えるという工程を数
回繰り返さねばならなかった。駆動力で遅延調整する方
法は、駆動力と配線負荷の関係で調整する間接的調整な
のでタイミングを合わせるのに何回かの試行を要した。
また、バッファ段数を変える(挿入する)調整法では、
変えたことに起因してレイアウトが変わる。従って、変
更後のレイアウトに対してタイミングが確実に満たされ
るという保証がないので、再度タイミング解析を行い、
その結果タイミングが満たされなかったら、再度、遅延
調整用のバッファを挿入する、という繰り返しの問題が
あった。配線を変える方法では、配線を変えることによ
り、他の部分のレイアウトが変わるので、その他の部分
でタイミング違反が生じるという問題がある。これに対
して、本実施形態では、レイアウト後のタイミング解析
で例えばXnsecの調整が必要であることが分かれ
ば、Xnsecの調整ができるように回路ブロック中の
接続を変えればよいだけなので、レイアウトが変更され
ることがなく、また、直接的にXnsecという遅延量
を調整できるため、上記従来の問題点は解決される。
【0091】回路設計者は、タイミング違反となる可能
性があるパス(モジュール間またはブロック間のパス)
が回路接続データの段階で分かるため、その段階でライ
ブラリブロック21,41,91を入れておけば(ステ
ップS600、S700)、従来のように2段階の作業
(回路接続データの作成→レイアウトデータの作成→回
路接続データの修正→レイアウトデータの修正)になら
なくて済む。レイアウト実行者や回路設計者の作業時間
が改善される。なお、ライブラリブロックは、チップの
入出力部分(インターフェース)には予めつけておくこ
とにより、チップ完成後の遅延調整を容易に行うことも
できる。
【0092】本実施形態のステップS600,S700
は、前記論理合成ツールの中で行うことができる。
【0093】なお、上記の効果とは別に、本実施形態で
は、ポートの切り替えや外部制御信号の変更を行って、
ライブラリブロックの内部遅延値を変えることにより、
各ライブラリブロック間でタイミング違反が発生する境
目を検出することができる。
【0094】図6を参照して、第2の実施形態について
説明する。
【0095】第2の実施形態では、ライブラリ適用回路
(ライブラリブロック)選択・作成ステップS600の
後、タイミング解析ステップS400に戻るループL1
を備えている。前述したように、対象パス決定ステップ
S500では、タイミング解析ステップS400のタイ
ミング解析結果に基づいて、レイアウト後にタイミング
違反となる可能性がある箇所(パス、信号経路)を検出
し、前記対象パスとして決定し、ステップS600で
は、その対象パスに配置するものとして、図2から図4
に示すようなライブラリ適用回路21,41,91を選
択または作成する。
【0096】ループL1は、ステップS500で決定さ
れた対象パスに、ステップS600で選択または作成し
たライブラリ適用回路21,41,91を配置した状態
で、再度、タイミング解析を行い(ステップS40
0)、前記選択または作成したライブラリ適用回路2
1,41,91のそれぞれが有する複数種の内部遅延値
で、レイアウト後のタイミング違反が改善されるか否か
を判断するためのものである。
【0097】例えば、ライブラリブロック41がステッ
プS600で選択された場合、出力部の接続を出力部G
2および出力部H2の一方にすれば、タイミング違反が
改善されるか否か、すなわち、出力部G2、H2のポー
ト切り替えで得られる遅延値差により、ライブラリブロ
ック41が配置される対象パスのタイミング違反が改善
されるか否かが、再度のタイミング解析ステップS40
0で判断される。
【0098】再度のタイミング解析ステップS400で
の判断の結果、当該対象パスのタイミング違反がライブ
ラリブロック41で改善可能と判断された場合には、ス
テップS500、ステップS600を通過して(符号P
1参照)、当該対象パスへのライブラリブロック41の
配置が決定される(ステップS700)。
【0099】第2の実施形態によれば、第1の実施形態
に比べてより高い確率でレイアウト後のタイミング違反
の改善を行うことができる。
【0100】上述した、第1、第2の実施形態によれ
ば、ブロック内部に論理的に同等でかつ所定の遅延差を
もつ複数の内部固定遅延値を有するLSIライブラリブ
ロック21,41,91を用いて、タイミング修正ステ
ップS1120で、回路接続データ51,52の段階ま
で戻ることが不要なため、以下の効果を奏することがで
きる。
【0101】第一に、従来、レイアウト変更で遅延調節
を行う場合に、そのレイアウト変更作業に多くの時間を
必要としていたが、上記実施形態によれば、その作業時
間が短縮する。第二に、従来、セルの種類または数を変
更して、ゲート規模が変更してしまうという問題があっ
たが、上記実施形態によれば、ゲート規模が変更するこ
とはない。第三に、従来、配線を変更した場合、新たに
クロストーク等の問題を考慮する必要が生じることがあ
ったが、上記実施形態によれば、ポートの切り替え等で
済むため、配線変更によって生じる新たなクロストーク
等の問題をほとんど考慮する必要が無い。
【0102】第四に、従来、遅延調節効果の結果を見積
もるためには、複雑な計算又はタイミング検証ツールに
よるタイミングシュミレーションを行う必要があり、ま
た、遅延改善修正による改善効果が期待通りにならない
場合が多かったが、上記実施形態によれば、上記所定の
遅延差を得ることができ、遅延調節効果が予測どおりに
得られるため、回路遅延調節の際の時間および工数を削
減できる。
【0103】第五に、従来、回路設計者自身による修正
作業が行われた場合には、目的とする区間の遅延改善以
外の誤った変更等が行われていないことを確認する必要
があったが、上記実施形態によれば、論理的に同等な複
数の内部固定遅延値を有するLSIライブラリブロック
21,41,91を用いるため、そのような確認を行う
必要がない。
【0104】さらに、従来は、ドライブ能力が異なるラ
イブラリブロックを用いて、遅延量の調整を行うことが
あり、その場合には、レイアウト(出力側の負荷の大
小)によって遅延量が変わり、タイミング解析ツールな
どで、出力側のレイアウトを示すデータとともにその都
度、遅延量を算出する必要があった。これに対して、上
記実施形態によれば、複数の内部固定遅延値を有するL
SIライブラリブロック21,41,91を用いるた
め、出力側のレイアウトによって遅延量が変動すること
はない。
【0105】
【発明の効果】本発明の半導体集積回路の遅延調整方法
によれば、回路接続データの中でタイミング違反の可能
性のある対象パスを抽出しそのパス中の回路ブロックを
遅延調整用回路ブロックで置換した修正回路接続データ
を生成するステップと、前記修正回路接続データに基づ
いたレイアウトデータを生成するステップと、前記レイ
アウトデータについてタイミング検証を行った結果に対
応して前記遅延調整用回路ブロック内の遅延値を決める
回路接続を行うステップとを含んでいるため、遅延調節
の際の時間および工数を削減でき、新たなゲート規模の
見積もりが不要になる。
【図面の簡単な説明】
【図1】図1は、本発明による半導体集積回路の遅延調
整方法の第1の実施形態の設計フローを示すフローチャ
ートである。
【図2】図2は、本実施形態に用いるライブラリブロッ
クを示す回路ブロック図である。
【図3】図3は、本実施形態に用いる他のライブラリブ
ロックを示す回路ブロック図である。
【図4】図4は、本実施形態に用いる更に他のライブラ
リブロックを示す回路ブロック図である。
【図5】図5は、本実施形態の設計フローの一部を実現
するためのハード構成を示すブロック図である。
【図6】図6は、本発明による半導体集積回路の遅延調
整方法の第2の実施形態の設計フローを示すフローチャ
ートである。
【図7】図7は、従来における遅延調整方法を示す図で
ある。
【図8】図8は、従来における遅延調整方法のフローの
一部を示す図である。
【符号の説明】
2 レイアウト処理ツール 2a ブロック配置処理部 2b アルミ配線処理部 11 入力信号 12 出力信号 21 ライブラリブロック(遅延調整用ブロック) 22 NOR回路 23 インバーター 31 入力信号 32a 出力信号 32b 出力信号 41 ライブラリブロック(遅延調整用ブロック、ライ
ブラリ適用回路) 43 第1のバッファ 44 第3のバッファ 45 第2のバッファ 46 第4のバッファ 51 回路接続データ 52 回路接続データ(ネットリスト) 54 レイアウト用回路接続データ 56 レイアウトデータ 81 入力信号 82 出力信号 84 第1のバッファ 85 第2のバッファ 86 セレクタ 87 外部制御信号 88 第3のバッファ 91 ライブラリブロック(遅延調整用ブロック) 800 レイアウト処理ツール 810 ブロック配置処理部 820 アルミ配線処理部 900 タイミング検証ツール 1100 タイミング修正ツール 1110 タイミング違反回路抽出処理部 1120 タイミング修正制御部 A 回路ブロック A1 入力部 B 回路ブロック B1 入力部 C 回路ブロック(ライブラリブロック) C1 中間部 D 回路ブロック(ライブラリブロック) D1 出力部 E2 入力部 F2 接続部 G2 出力部 H2 出力部 H3 入力部 I3 出力部 J3 制御信号入力部 SA 信号 NL 通常ライブラリ PL 本発明ライブラリ L1 ループ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H01L 21/82 G06F 17/50 656

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】回路接続データの中でタイミング違反の可
    能性のある対象パスを抽出しそのパス中の回路ブロック
    を遅延調整用回路ブロックで置換した修正回路接続デー
    タを生成するステップと、ここで、単一の前記遅延調整
    用回路ブロックは、複数の選択可能な内部遅延値を有す
    るとともに、前記複数の内部遅延値のうちのいずれの内
    部遅延値が選択されたときにも互いに実質的に等しいド
    ライブ能力を有するように設定され、 前記修正回路接続データに基づいたレイアウトデータを
    生成するステップと、 前記レイアウトデータについてタイミング検証を行った
    結果に対応して前記複数の内部遅延値のうちの一の内部
    遅延値を選択することで前記遅延調整用回路ブロック内
    の遅延値を決める回路接続を行うステップとを含む半導
    体集積回路の遅延調整方法。
  2. 【請求項2】 請求項1記載の半導体集積回路の遅延調
    整方法において、 前記タイミング違反の可能性のある対象パスの抽出は、
    前記回路接続データのタイミング解析により行う半導体
    集積回路の遅延調整方法。
  3. 【請求項3】 請求項1または2に記載の半導体集積回
    路の遅延調整方法において、 前記修正回路接続データを生成するステップは、前記遅
    延調整用回路ブロックで置換されたときに前記抽出され
    たパスのタイミング違反が改善されるか否かを判断し、
    前記判断の結果改善されると判断された場合に当該遅延
    調整用回路ブロックで置換した前記修正回路接続データ
    を生成する半導体集積回路の遅延調整方法。
  4. 【請求項4】 請求項1から3のいずれかに記載の半導
    体集積回路の遅延調整方法において、 前記遅延調整用回路ブロックは、入力信号に対して論理
    等価な出力信号を出力し、前記入力信号を入力するため
    の切り替え可能な複数の入力部を有し、前記複数の入力
    部を切り替えることにより略一定の遅延値を生じさせる
    ものである半導体集積回路の遅延調整方法。
  5. 【請求項5】 請求項1から3のいずれかに記載の半導
    体集積回路の遅延調整方法において、 前記遅延調整用回路ブロックは、入力信号に対して論理
    等価な出力信号を出力し、前記出力信号を出力するため
    の切り替え可能な複数の出力部を有し、前記複数の出力
    部を切り替えることにより略一定の遅延値を生じさせる
    ものである半導体集積回路の遅延調整方法。
  6. 【請求項6】回路接続データの中でタイミング違反の可
    能性のある対象パスを抽出しそのパス中の回路ブロック
    を遅延調整用回路ブロックで置換した修正回路接続デー
    タを生成するステップと、ここで、単一の前記遅延調整
    用回路ブロックは、複数の選択可能な内部遅延値を有す
    るとともに、前記複数の内部遅延値のうちのいずれの内
    部遅延値が選択されたときにも互いに実質的に等しいド
    ライブ能力を有するように設定され、 前記修正回路接続データに基づいたレイアウトデータを
    生成するステップと、 前記レイアウトデータに基づいて製造された半導体集積
    回路に対して外部からの制御信号により前記複数の内部
    遅延値のうちの一の内部遅延値を選択することで前記遅
    延調整用回路ブロック内の遅延値を制御するステップと
    を含む半導体集積回路の遅延調整方法。
  7. 【請求項7】 請求項6記載の半導体集積回路の遅延調
    整方法において、 前記タイミング違反の可能性のある対象パスの抽出は、
    前記回路接続データにおいてインターフェース部に相当
    する回路ブロックを抽出することにより行う半導体集積
    回路の遅延調整方法。
  8. 【請求項8】 請求項6または7に記載の半導体集積回
    路の遅延調整方法において、 前記遅延調整用回路ブロックは、前記遅延調整用回路ブ
    ロックの入力部と出力部との間に設けられた少なくとも
    1段の遅延素子と、制御信号に応答して前記少なくとも
    1段の遅延素子の内部遅延値を変更するセレクタとを備
    えている半導体集積回路の遅延調整方法。
  9. 【請求項9】 請求項7または8に記載の半導体集積回
    路の遅延調整方法において、 前記制御された遅延値は、前記半導体集積回路が基板に
    搭載されたときに他の装置間でのタイミング調整に依存
    した遅延量である半導体集積回路の遅延調整方法。
  10. 【請求項10】 複数の選択可能な内部遅延値を有す
    る、遅延調整用ブロックをライブラリブロックとして提
    供するステップと、ここで、単一の前記遅延調整用ブロ
    ックは、前記複数の内部遅延値のうちのいずれの内部遅
    延値が選択されたときにも互いに実質的に等しいドライ
    ブ能力を有するように設定され、 前記遅延調整用ブロックを含む複数の回路ブロックのレ
    イアウトを行うステップと、 前記レイアウトが行われた前記遅延調整用ブロックを含
    む前記複数の回路ブロックにタイミング違反が検出され
    た場合に、前記遅延調整用ブロックの前記複数の内部遅
    延値のうちの一の内部遅延値を選択して前記タイミング
    違反を改善するステップとを備えた半導体集積回路の遅
    延調整方法。
  11. 【請求項11】 複数の選択可能な内部遅延値を有す
    る、遅延調整用ブロックをライブラリブロックとして提
    供するステップと、ここで、単一の前記遅延調整用ブロ
    ックは、前記複数の内部遅延値のうちのいずれの内部遅
    延値が選択されたときにも互いに実質的に等しいドライ
    ブ能力を有するように設定され、 前記遅延調整用ブロックを含む複数の回路ブロックの間
    の接続関係を示す回路接続データを生成するステップ
    と、 前記生成された回路接続データに基づいて、前記遅延調
    整用ブロックを含む前記複数の回路ブロックのレイアウ
    トを行い、前記レイアウトを示すレイアウトデータを生
    成するステップと、 前記レイアウトが行われた前記遅延調整用ブロックを含
    む前記複数の回路ブロックにタイミング違反が検出され
    た場合に、前記レイアウトデータ上で前記遅延調整用ブ
    ロックの前記複数の内部遅延値のうちの一の内部遅延値
    を選択して前記タイミング違反を改善するステップと
    備えた半導体集積回路の遅延調整方法。
  12. 【請求項12】 複数の選択可能な内部遅延値を有する
    遅延調整用ブロックを含む複数の回路ブロックの間の接
    続関係を示す回路接続データを生成するステップと、こ
    こで、単一の前記遅延調整用ブロックは、前記複数の内
    部遅延値のうちのいずれの内部遅延値が選択されたとき
    にも互いに実質的に等しいドライブ能力を有するように
    設定され、 前記回路接続データに基づいて、前記遅延調整用ブロッ
    クを含む前記複数の回路ブロックをレイアウトするステ
    ップと、 前記レイアウトしたときに検出されるタイミング違反を
    前記遅延調整用ブロックを用いて改善するステップとを
    備え、 前記回路接続データを生成するステップは、前記複数の
    回路ブロックをレイアウトしたときに前記タイミング違
    反が検出される可能性のある部分に、前記遅延調整用ブ
    ロックが含まれるように、前記回路接続データを生成す
    る半導体集積回路の遅延調整方法。
  13. 【請求項13】 複数の選択可能な内部遅延値を有する
    遅延調整用ブロックを含む複数の回路ブロックの間の接
    続関係を示す回路接続データを生成するステップと、こ
    こで、単一の前記遅延調整用ブロックは、前記複数の内
    部遅延値のうちのいずれの内部遅延値が選択されたとき
    にも互いに実質的に等しいドライブ能力を有するように
    設定され、 前記回路接続データに基づいて、前記遅延調整用ブロッ
    クを含む前記複数の回路ブロックをレイアウトするステ
    ップと、 前記レイアウトしたときに検出されるタイミング違反を
    前記遅延調整用ブロックを用いて改善するステップとを
    備え、 前記回路接続データを生成するステップは、前記複数の
    回路ブロックがレイアウトされチップに搭載されたとき
    に、前記チップの外部との信号伝達を行う部分に、前記
    遅延調整用ブロックが含まれるように、前記回路接続デ
    ータを生成する半導体集積回路の遅延調整方法。
  14. 【請求項14】 複数の回路ブロックの間の接続関係を
    示す回路接続データを提供するステップと、 前記回路接続データに基づいてタイミング解析を行うス
    テップと、 前記タイミング解析の結果に基づいて、前記複数の回路
    ブロックがレイアウトされたときにタイミング違反とな
    る可能性のある前記回路ブロックを決定するステップ
    と、 前記決定された回路ブロックに相当する部分に、複数の
    選択可能な内部遅延値を有する遅延調整用ブロックを配
    置するステップと、ここで、単一の前記遅延調整用ブロ
    ックは、前記複数の内部遅延値のうちのいずれの内部遅
    延値が選択されたときにも互いに実質的に等しいドライ
    ブ能力を有するように設定され、 前記遅延調整用ブロックおよび前記複数の回路ブロック
    をレイアウトしてレイアウトデータを生成するステップ
    と、 前記レイアウトデータに基づいて、タイミング検証を行
    うステップと、 前記タイミング検証の結果に基づいて、タイミング違反
    の回路ブロックを抽出するステップと、 前記抽出された回路ブロックが前記遅延調整用ブロック
    である場合に、前記複数の内部遅延値のうちの一の内部
    遅延値を選択して前記抽出された回路ブロックのタイミ
    ング違反を改善するステップとを備えた半導体集積回路
    の遅延調整方法。
  15. 【請求項15】 請求項14記載の半導体集積回路の遅
    延調整方法において、 更に、 前記遅延調整用ブロックを配置した後、前記レイアウト
    データを生成する前に、前記遅延調整用ブロックを含む
    前記回路接続データに基づいて、第2のタイミング解析
    を行うステップと、 前記第2のタイミング解析の結果に基づいて、前記配置
    された前記遅延調整用ブロックが適当であるか否かを判
    定するステップとを備え、 前記レイアウトデータを生成するステップは、前記判定
    の結果、適当であると判定された前記遅延調整用ブロッ
    クを用いて前記レイアウトデータを生成する半導体集積
    回路の遅延調整方法。
  16. 【請求項16】 請求項14または15に記載の半導体
    集積回路の遅延調整方法において、 前記タイミング違反の回路ブロックを抽出するステップ
    は、前記遅延調整用ブロックおよび前記複数の回路ブロ
    ックのそれぞれの入力部と出力部との間の遅延値と、設
    定値とを比較し、前記比較結果に基づいて、前記タイミ
    ング違反の回路ブロックを抽出する半導体集積回路の遅
    延調整方法。
  17. 【請求項17】 請求項10から16のいずれかに記載
    の半導体集積回路の遅延調整方法において、 前記レイアウトを行うステップは、 前記遅延調整用ブロックおよび前記複数の回路ブロック
    のそれぞれの配置を行うステップと、 前記配置された前記遅延調整用ブロックおよび前記複数
    の回路ブロックのそれぞれの間の配線を行うステップと
    を備え、 前記タイミング違反を改善するステップは、前記配線を
    行うステップを再度行うことにより、前記複数の内部遅
    延値のうちの一の内部遅延値を選択する半導体集積回路
    の遅延調整方法。
  18. 【請求項18】 請求項10から17のいずれかに記載
    の半導体集積回路の遅延調整方法において、 前記遅延調整用ブロックは、 入力信号に対して論理等価な出力信号を出力し、切り替
    え可能な複数の入力部または出力部を有している半導体
    集積回路の遅延調整方法。
  19. 【請求項19】 請求項10から17のいずれかに記載
    の半導体集積回路の遅延調整方法において、 前記遅延調整用ブロックは、 前記遅延調整用ブロックの入力部と出力部との間に設け
    られた複数段のバッファと、 制御信号に応答して前記複数段のバッファの段数を切り
    替えるセレクタと を備えた半導体集積回路の遅延調整方
    法。
  20. 【請求項20】回路接続データの中でタイミング違反の
    可能性のある対象パスを抽出しそのパス中の回路ブロッ
    クを遅延調整用回路ブロックで置換した修正回路接続デ
    ータを生成するステップと、ここで、単一の前記遅延調
    整用回路ブロックは、複数の選択可能な内部遅延値を有
    するとともに、前記複数の内部遅延値のうちのいずれの
    内部遅延値が選択されたときにも互いに実質的に等しい
    ドライブ能力を有するように設定され、 前記修正回路接続データに基づいたレイアウトデータを
    生成するステップと、 前記レイアウトデータについてタイミング検証を行った
    結果に対応して前記複数の内部遅延値のうちの一の内部
    遅延値を選択することで前記遅延調整用回路ブロック内
    の遅延値を決める回路接続を行うステップとをコンピュ
    ータに実行させるためのプログラムを記録したコンピュ
    ータに読み取り可能な記録媒体。
JP04385799A 1999-02-22 1999-02-22 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。 Expired - Fee Related JP3230234B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04385799A JP3230234B2 (ja) 1999-02-22 1999-02-22 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04385799A JP3230234B2 (ja) 1999-02-22 1999-02-22 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。

Publications (2)

Publication Number Publication Date
JP2000243843A JP2000243843A (ja) 2000-09-08
JP3230234B2 true JP3230234B2 (ja) 2001-11-19

Family

ID=12675387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04385799A Expired - Fee Related JP3230234B2 (ja) 1999-02-22 1999-02-22 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。

Country Status (1)

Country Link
JP (1) JP3230234B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131883B1 (en) 1994-05-31 2012-03-06 Intellectual Ventures I, Limited Liability Company Method for distributing content to a user station

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5668443B2 (ja) * 2010-12-07 2015-02-12 富士通セミコンダクター株式会社 回路設計支援装置、回路設計支援方法および半導体集積回路

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131883B1 (en) 1994-05-31 2012-03-06 Intellectual Ventures I, Limited Liability Company Method for distributing content to a user station
US8812620B2 (en) 1994-05-31 2014-08-19 Intellectual Property I LLC Software and method that enables selection of one of a plurality of online service providers
US9484077B2 (en) 1994-05-31 2016-11-01 Intellectual Ventures I Llc Providing services from a remote computer system to a user station over a communications network
US9484078B2 (en) 1994-05-31 2016-11-01 Intellectual Ventures I Llc Providing services from a remote computer system to a user station over a communications network

Also Published As

Publication number Publication date
JP2000243843A (ja) 2000-09-08

Similar Documents

Publication Publication Date Title
US7222318B2 (en) Circuit optimization for minimum path timing violations
US7225423B2 (en) Method for automated design of integrated circuits with targeted quality objectives using dynamically generated building blocks
US6496965B1 (en) Automated design of parallel drive standard cells
US5883808A (en) Logic circuit optimization apparatus and its method
EP0610626A2 (en) A method of simulating an integrated circuit
US6145116A (en) Layout design apparatus
US8392861B2 (en) Method of semiconductor integrated circuit device using library for estimating timing/area to place cells
KR19980063998A (ko) 집적 회로 설계 방법, 집적 회로 설계용 데이터베이스 장치 및집적 회로 설계 지원 장치
US20020124230A1 (en) Timing optimization for integrated circuit design
JP3420195B2 (ja) クロック配線の設計方法
US7526743B2 (en) Method for routing data paths in a semiconductor chip with a plurality of layers
US7148135B2 (en) Method of designing low-power semiconductor integrated circuit
US6090150A (en) Method of designing clock wiring and apparatus for implementing the same
US5963730A (en) Method for automating top-down design processing for the design of LSI functions and LSI mask layouts
US6192508B1 (en) Method for logic optimization for improving timing and congestion during placement in integrated circuit design
US5530654A (en) LSI logic synthesis device and method therefor
CN114764555A (zh) 产生方法
JP4015807B2 (ja) タイミングドリブンレイアウト手法
US7100140B2 (en) Generation of graphical congestion data during placement driven synthesis optimization
US5903471A (en) Method for optimizing element sizes in a semiconductor device
JP3230234B2 (ja) 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。
US6931610B1 (en) Method for rapid estimation of wire delays and capacitances based on placement of cells
US7146590B1 (en) Congestion estimation for programmable logic devices
US6826740B2 (en) Automated buffer insertion incorporating congestion relief for use in connection with physical design of integrated circuit
US6484298B1 (en) Method and apparatus for automatic timing-driven implementation of a circuit design

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010813

LAPS Cancellation because of no payment of annual fees