JP3737384B2 - Lsiの自動設計装置 - Google Patents
Lsiの自動設計装置 Download PDFInfo
- Publication number
- JP3737384B2 JP3737384B2 JP2001152184A JP2001152184A JP3737384B2 JP 3737384 B2 JP3737384 B2 JP 3737384B2 JP 2001152184 A JP2001152184 A JP 2001152184A JP 2001152184 A JP2001152184 A JP 2001152184A JP 3737384 B2 JP3737384 B2 JP 3737384B2
- Authority
- JP
- Japan
- Prior art keywords
- cell
- information
- delay
- inter
- timing
- 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
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明はLSIの自動設計方法に関し、特にASIC(Application Specific IC:特定応用LSI)において低電力設計技術を適用するためのLSIの自動設計方法に関する。
【0002】
【従来の技術】
近時、プロセスの微細化による回路規模の増加に伴ってLSIの消費電力も増加の一途を辿っており、この消費電力を低減する手法の検討が進められている。
【0003】
また、普及が著しい携帯機器などへの応用に代表されるように、今後の低電力技術はLSI設計において最も重要視される技術であり、さらなる低電力化が要求されることも予想される。
【0004】
現状のASICの低電力LSI設計手法においては、パワーコンパイラ等の電力最適化ツールを用いた論理合成による低電力設計を行っており、低電力ライブラリに基づいて低電力化を行っている。しかし、現状の合成ツールでは、低電力化重視で論理合成を行なった場合、駆動能力が小さいライブラリ素子による論理合成の結果、バックエンド設計後に配線負荷の影響で駆動能力不足に起因する遅延増加によりタイミングエラーを発生するケースが多くみられるのが現状である。
【0005】
このような現状の低電力設計において、タイミングエラーを誘発してしまう背景には、論理合成時に低電力ライブラリを優先して合成している点、また、低電力化とバックエンドを考慮したタイミング確立の2つの概念を同時に考慮できていない点の2種類があると考えられる。また、このようなタイミングエラーを回避するために、現状は、エラーパスに関して低電力ライブラリの使用をやめ高駆動ライブラリを適用したり、バッファ挿入による配線負荷の影響除去対策などを行ない、せっかくの低電力合成をタイミング重視の合成へ戻してしまっている。さらに、このようなタイミング確立のためにTAT(Turn Around Time:処理時間)増加も招いており、低電力設計のTATにも影響を及ぼしてしまっている。
【0006】
このような背景から、現状、短TATでより適切な低電力LSI設計技術の確立、及び、タイミング確立と低電力化を両立した設計フローの確立が必須となってきている。
【0007】
従来の一般的な第1のLSIの自動設計方法をフローチャートで示す図10を参照すると、この従来の第1のLSIの自動設計方法は、機能設計ステップS1の機能設計結果の情報を元に、論理合成ステップS2において、シノプシス(Synopsys)社のパワーコンパイラ等の電力最適化ツールを用いて駆動能力の小さい低電力セルのライブラリである低電力ライブラリF101を用いた論理合成を行なう。この合成結果に対してタイミング検証ステップS3において、ロントエンドのタイミング検証を行なう。判定ステップS4の判定結果によりタイミングエラーが発生したパスに関しては、エラーパスの重み付けステップP8において論理合成時の制限(タイミングを重視した大駆動能力、すなわち、高電力ライブラリセルの適用)を設け、再度、論理合成ステップS2により合成を行なう。このステップS2からP8までをタイミングエラーが収束するまで繰り返す。
【0008】
次に、タイミング収束が確認できた時点で、レイアウト設計ステップS5において、低電力ライブラリF102を用いたレイアウト設計を行ない、レイアウトによる配線負荷、配線抵抗を考慮した回路接続情報(RCネット)F103を抽出する。このRCネットF103に対して、再度タイミング検証ステップS6において今度はバックエンドのタイミング検証を行ない、配線負荷によるタイミングの影響をチェックする。判定ステップS7において、タイミングエラーと判断された場合は、再度レイアウト設計ステップS5に戻るか、又は、論理合成ステップS2まで戻る。タイミングエラー無しと判断された時点で電力検証ステップP9において最終的な消費電力検証を行ない、判定ステップP10の判定結果、低電力化の確認がとれれば設計終了となり、期待する低電力化が得られなかった場合は、再度、論理合成ステップS2、レイアウト設計ステップS5の処理へ戻る。
【0009】
このように、従来の第1のLSIの自動設計方法では、低電力化のための論理合成、タイミング固定のための論理検証を個別に行ない、各ステップにおいてエラー修正を繰り返しながら低電力化設計を行なうフローとなっている。
【0010】
上述したように、従来第1のLSIの自動設計方法は、パワーコンパイラ等の電力最適化ツールを用いた論理合成による低電力設計を行っているが、駆動能力が小さいライブラリセルによる合成の結果駆動能力が不足し、バックエンド(後段)設計による配線負荷を十分駆動できず、その影響で遅延が増加するため、レイアウト後にタイミングエラーを発生するケースが多くみられている。
【0011】
このため、従来はタイミングエラーが多発する部分を駆動能力の大きいライブラリセルに置換して上記遅延を低減することにより所定のタイミング規格内に収めるタイミング確立を行なう手法をとっていた。また、これら対策を自動ツールによる乱雑な処理により行っているため、結果的に必要以上の電力増加を招き、適切な低電力設計を行ない得ないという問題があった。
【0012】
本問題の例をグラフで示す図11を参照すると、この図は、あるマクロ製品におけるフリップフロップ(F/F)間のデータパス遅延分布をヒストグラム化したものである。横軸にF/F間のデータパス遅延値、縦軸にはマクロ製品内のF/F間パス数を示している。なお、このヒストグラムはセットアップタイミング検証結果であり、F/Fのクロック到達時間に対するデータパスの遅延のタイミングを示している。図11(A)は、駆動能力が小さい低電力ライブラリセルによる合成後のフロントエンド(前段)におけるタイミング検証結果を示し、(B)は、フロントエンド結果に対してレイアウト後のバックエンドにおけるタイミング検証結果を示す。このグラフよりフロントエンドからバックエンドに移行した際に、実配線時の配線負荷の影響でタイミングエラー(E部分)が発生していることがわかる。従来はこのタイミングエラー収束に時間を要し、さらにツールによる自動修正による電力増加を招いていた。
【0013】
なお、人手により最適な修正を行うとしても、セル置換を行うライブラリの種類(低電力セル又は高駆動セル)によって配線負荷による遅延変動の影響や、タイミングを考慮した低電力化を行うのは難しく、TAT的にも現実的ではないのが現状である。
【0014】
その他のタイミング収束のための対策として、図10のステップS6におけるレイアウト設計時にタイミングを考慮して配置配線を行うTDL(TimingDriven Layout:タイミング駆動レイアウト)ツールを用いる手法があるが、TDLでは概略配線(仮配線負荷)でのタイミング予測しかできないため、実配線負荷との誤差が生じてしまう。そのため、特に多数の低電力セルが使われている場合などは、冗長配線等によるタイミングエラーの誘発が顕著に起こってしまうという問題があったので、TDLの低電力設計への適用は難しい。
【0015】
また、このようなタイミングエラーを防止するために、合成時にある程度のマージンを設けて設計を行った場合、全体的に駆動能力が大きいライブラリを使って合成されてしまうため、結局、低電力化として適切な設計を行なうことができないという問題が発生してしまう。
【0016】
以上のように、低電力ライブラリ(駆動能力の小さいライブラリ)セルを用いた低電力設計においては、遅延増加によるタイミングエラーの誘発が大きな問題となっており、その解決策により電力が増加するなど最適な低電力設計が行えていないという問題がある。同様に、これらタイミング確立の後戻り処理の影響により、高集積化に伴う回路規模の増大とあいまって設計TATの増加も招いてしまっている。
【0017】
このような問題の共通の原因となっているのは、低電力化とタイミング確立との両立ができていないことにあると考える。すなわち、現状の低電力設計フローのように、低電力化のための論理合成、タイミング確立のための論理検証を個別に行ない、各ステップ毎にエラー修正を繰り返すような手法では最適な低電力設計、短TATを実現するのは難しく、今後はこれら設計フローを改善する仕組みが必要であると考える。
【0018】
さらに、現状の低電力設計フローにおける設計後のF/F間タイミングに着目すると、論理合成時に低電力ライブラリを用いたことによるタイミングエラー対策(バッファ置換:駆動能力向上)との兼ね合いにより、設計結果においては部分的にタイミングに余裕のあるパスが存在している。基本的に製品データにおいて全F/F間パスがクリティカルパスということは有り得ず、少なくとも全体の4、5割程度はタイミングに余裕のあるパスが存在するはずである。このような実状を考えた場合、現在の設計フローでは低電力化のための適切な低電力ライブラリの使用がされていないという問題を抱えていると言える。
【0019】
あるマクロ製品におけるタイミング収束後のF/F間のデータパス遅延分布をヒストグラム化したものをグラフで示す図12(A)を参照すると、この図の横軸にF/F間のデータパス遅延値、縦軸にはマクロ製品内のF/F間パス数を示している。グラフから、データパス遅延が3.5nsの所に集中していることが読み取れる。つまり、10nsのクロックに対して、セットアップ的に約6.5nsのタイミングマージンを持つパスが多い結果となっている。すなわち、100MHzクロックの動作における限界遅延時間=10nsに対し、データパス部の遅延に余裕があるパスが多いことが分かる。
【0020】
従って、このグラフから、従来の低電力設計フローにおいては最適な低電力ライブラリセルの適用ができていないということがいえる。これら結果から図12(B)に示すようなタイミングマージンを極力なくすための適切な低電力ライブラリセルの使用(ヒストグラムを右方向へシフト)を行なうことができれば、さらなる低電力化が実現可能である。
【0021】
次に、低電力化を第1の目的とはしないが、タイミングマージンを限界まで削減することを目的とする従来の第2のLSIの自動設計方法を図10と共通の構成要素には共通の参照文字/数字を付して同様にフローチャートで示す図13を参照すると、この従来の第2のLSIの自動設計方法は、MAGMA社のツールによるもので、機能設計ステップS1の機能設計結果の情報を元に、タイミングマージン最適化ステップP20の部分に関して、Blast Fusionツールを用いてタイミングマージンの最適化を行っている。
【0022】
まず、ステップP21において駆動能力が最大のセルを用いて論理合成を行ない、この合成結果に対してステップP22においてフロントエンドのタイミング検証を行ない、タイミング収束後にバックエンドである概略配置のステップP23へ進む。ステップP23からステップP26までの配置配線処理時には、常にステップP27のタイミング検証を行い、タイミングを意識した設計を行うフローとなっている。
【0023】
また、このタイミングマージン最適化ステップP20のフローにおいては、タイミングマージンを限界まで減らすように、フロントエンドで使用した駆動能力最大のセルの能力を下げる処理も行っており、タイミングの最適化を行っている。その後、ステップP31、P32のレイアウト検証を行い設計を終了する。
【0024】
このように、本設計フローでは論理合成結果に対して、タイミングを意識してレイアウト設計を行い、かつ、タイミングマージンを限界まで削減する処理を行うフローとなっている。
【0025】
しかし、この従来の第2のLSIの自動設計方法は、タイミングのみを考慮し、セルの駆動能力を低下させることによるタイミングマージンの削減しか行えないため、電力に関する要素は一切考慮されていない。従って、以下のような問題が発生する。
【0026】
例えば、セル間の配線負荷が大きいような場合、タイミング調整のみを意識してセル置換(駆動能力低下)を行ってしまうと、出力波形が鈍るため、次段セルの貫通電流の増加を招き、それにより電力増加を招く可能性がある。また、先にも述べたように、本ツールでは初期設計において駆動能力が最大のセル、つまり、レイアウトサイズの大きいセルにて設計を行っており、さらに、レイアウト時にタイミングマージン削減のために駆動能力を低下させる場合は、レイアウトセルの中身のみを差し替えるイメージで修正を行うため、最終的に選択されたレイアウトのセルサイズが小さくてもLSIのレイアウト的にはセル配置のシュリンクは行われず、LSIサイズが増加してしまうという懸念もある。
【0027】
従来の第2のLSIの自動設計方法におけるレイアウト修正結果の例をレイアウト図で示す図14を参照すると、AA1からAA3が初期設計時に適用したセルサイズ大のセルであり、初期設計時の配線(実線)がされている。これに対し、BB1からBB3はタイミング調整後に適用されたセルサイズ小のセルであり、AA1からAA3のセルに対し差し替えが行われ、配線も点線で示すような接続が追加で行われている。つまり、レイアウト的にはセルを置き換えるのみで、セルBB間の配置を詰めることは行わない。すなわち、初期配置時に元の高駆動能力の大きいレイアウトサイズのセルのレイアウト面積を確保してセル配置を行っているので、低駆動能力の小さいレイアウトサイズのセルに置き換えてもレイアウト面積は変わらずLSI面積的に不利となる。
【0028】
【発明が解決しようとする課題】
上述した従来の第1のLSIの自動設計方法は、駆動能力が小さい低電力ライブラリセルを用いた低電力設計においては、遅延増加によるタイミングエラーの誘発が大きな問題となっており、その解決策として大電力の高駆動能力ライブラリセルに置換することによりタイミング確立を行なうので、結果的に必要以上の電力増加を招き、適切な低電力設計を行ない得ないという欠点があった。
【0029】
また、タイミング確立の後戻り処理の影響により、高集積化に伴う回路規模の増大とあいまって設計TATが増加するという欠点があった。
【0030】
また、タイミングマージン最適化を図った従来の第2のLSIの自動設計方法は、タイミングのみを考慮し、セルの駆動能力を低下させることによるタイミングマージンの削減しか行えないため、電力に関する要素は一切考慮していないので、セル間の配線負荷が大きいような場合、タイミング調整のみを意識して駆動能力低下するようセル置換を行うと、出力波形が鈍るため、次段セルの貫通電流の増加を招き、それにより電力増加を招く可能性があるという欠点があった。
【0031】
また、初期設計において駆動能力が最大のセル、つまり、レイアウトサイズの大きいセルにて設計を行っており、さらに、レイアウト時にタイミングマージン削減のために駆動能力を低下させる場合は、レイアウトセルの中身のみを差し替えて修正を行うため、最終的に選択されたレイアウトのセルサイズが小さくてもLSIのレイアウト的にはセル配置の縮小は行われず、LSIサイズが増加してしまうという欠点があった。
【0032】
本発明の目的は、上記欠点を解消し、タイミング収束と低電力化の両立を実現し、短TATで低電力化が図れるLSIの自動設計方法を提供することにある。
【0033】
【課題を解決するための手段】
本発明のLSIの自動設計装置は、LSIの初期設計である機能設計の情報から予め定めたタイミング規格を満足するよう論理合成を行い、論理合成の結果に対してレイアウトを実行するLSIの自動設計装置において、
タイミング規格を満足するように、機能設計の情報に対して、大駆動能力高電力の第1のセルを用いて論理合成を実行してネットリストを生成する論理合成手段と、前記ネットリストを用いて配置配線処理を行い、第1の配線抵抗及び容量付き回路接続情報とセルインスタンス座標情報とをそれぞれ第1の配線抵抗及び容量付き回路接続情報格納手段と第1のセルインスタンス座標情報格納手段とに格納するレイアウト実行手段と、前記第1の配線抵抗及び容量付き回路接続情報格納手段に格納されている情報に対してタイミング検証を実行し、フリップフロップ間遅延情報をフリップフロップ間遅延情報格納手段に格納するタイミング検証実行手段と、前記第1のセルよりも小駆動能力低電力であり、前記第1のセルとは上地データとセルサイズが同一で、セルを構成するトランジスタのゲート幅を含む下地データが異なる第2のセルが格納された低電力ライブラリ格納手段と、前記フリップフロップ間遅延情報格納手段に格納されている情報に対してタイミングマージンのチェックを行い、タイミングマージンのあるフリップフロップ間遅延情報があった場合は、当該フリップフロップ間遅延情報からフリップフロップ間パス遅延情報を抽出し、当該フリップフロップ間パス遅延情報にあるセルを置換対象のセルとして置換対象セル情報格納手段に格納するセル選択手段と、前記置換対象セル情報格納手段に格納されている情報に基づいて、前記第1の配線抵抗及び容量付き回路接続情報格納手段に格納されている第1の配線抵抗及び容量付き回路接続情報中の前記第1のセルを前記低電力ライブラリ格納手段に格納されている前記第2のセルに置換し、置換後の第2の配線抵抗及び容量付き回路接続情報と置換されたセル情報とをそれぞれ第2の配線抵抗及び容量付き回路接続情報格納手段とセル置換情報格納手段とに格納するセル置換実行手段と、前記セル置換情報格納手段に格納されている情報と、予め低電力セルレイアウト情報格納手段に格納されている低電力セルレイアウト情報と、前記第1のセルインスタンス座標情報格納手段に格納されている情報とに基づいてレイアウト修正を行うレイアウト修正手段と、を持つことを特徴とするものである。
【0044】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0045】
本実施の形態のLSIの自動設計方法は、LSIの初期設計である機能設計の結果に基づき予め定めたタイミング規格を満足するよう第1のセルを用いて論理合成を行い、この論理合成の結果生成した回路接続情報である第1のネットについて上記タイミング規格を満足させるよう実施するタイミング収束の確認後に第1のセルの配置配線である第1のレイアウトを実行するLSIの自動設計方法において、上記論理合成を、上記タイミング規格の満足を重視して大駆動能力従って高電力の上記第1のセルを用いて実施し、上記第1のレイアウトの検証後に上記タイミング規格を考慮しながら上記第1のセルより小駆動能力従って低電力の第2のセルに置換する上記第1のネットの修正を行い低電力化した第2のネットと上記第1のセルから上記第2のセルへの置換情報とを抽出する最適化セル置換処理ステップを有することを特徴とするものである。
【0046】
これにより、予め定めたタイミング規格の満足を重視して設計した論理回路のタイミング収束後の結果において、タイミングマージンを低減するように回路修正する仕組みと、回路修正時に同時に前段及び後段のフリップフロップ(F/F)間の遅延計算を行いタイミングエラー発生を防止する仕組みと、回路修正時に電力削減に有効なセルを選択して適切なセル置換を行う仕組みを持たせることで、タイミング収束と低電力化を両立させた設計を実現し、従来よりも短TATでより低電力化が図れることを特徴とする。なお、本実施の形態では回路修正時に選択したセルを低電力セルへ置換することにより低電力化を図るが、ここで使用する低電力ライブラリは上地データ、レイアウトセルサイズ、端子位置などを従来セルと同一とし、トランジスタのゲート幅(W)サイズ(下地データ)のみを小さくしたデータとすることで、回路修正に伴うレイアウト修正のTATを大幅に削減することが出来ることも特徴とする。さらに、これら低電力セルのバリエーションを複数持つことにより、より効果的に低電力化のためのセル置換が可能であることを特徴とするものである。
【0047】
次に、本発明の第1の実施の形態を図10と共通の構成要素には共通の参照文字/数字を付して同様にフローチャートで示す図1を参照すると、この図に示す本実施の形態のLSIの自動設計方法は、従来と共通のLSIの初期設計である機能設計を行う機能設計ステップS1と、機能設計ステップS1の結果に基づきタイミング規格の満足を優先して大駆動能力従って高電力のセル(以下高電力セル)を用いて論理合成を行う論理合成ステップS2と、論理合成結果生成された回路接続情報(ネット)に対してフロントエンドでのタイミング検証を行いF/F間遅延情報F1を生成するタイミング検証ステップS3と、F/F間遅延情報F1に対してタイミング規格の不満足であるタイミングエラー有無の判定を行い、タイミングエラーがあった場合は、論理合成ステップS2に戻り、タイミング収束が確認されれば、次のレイアウト設計ステップS5へ進む判定ステップS4と、タイミング収束後のネットを用いて自動配置配線を行い、レイアウト検証後に配線抵抗、容量を考慮したRCネットF2の抽出を行うレイアウト設計ステップS5と、レイアウト設計ステップS5で抽出したRCネットF2に基づきバックエンドのタイミング検証を行いF/F間遅延情報F3を生成するタイミング検証ステップS6と、F/F間遅延情報F3に対してタイミングエラー有無の判定を行い、タイミングエラーがあった場合は、論理合成ステップS2、又は、レイアウト設計ステップS5に戻り、タイミング収束が確認されれば、LSI設計後の産物でありRCネットF2に対応するRCネットF5のライブラリを抽出して次のステップへ進む判定ステップS7とに加えて、F/F間遅延情報F3に対して各F/F間遅延のタイミング規格に対する余裕であるタイミングマージン値をチェック(抽出)するマージン値チェックステップS8と、マージン値チェックステップS8で抽出したマージン値に対し、全てのF/F間についてのタイミングマージンの有無を判断して低電力化の処理を行なう必要があるかどうかを決定しタイミングマージンがなければ設計を終了し、タイミングマージンが存在すればそのままF/F間遅延情報F3からF/F間遅延情報F6を抽出し低電力化の処理を行う最適化セル置換処理ステップS10へ進むマージン判断ステップS9と、本実施の形態を特徴付けるステップであり、先に抽出したRCネットF4、F/F間遅延情報F6、及び、セル遅延情報F5を用いてタイミング規格を考慮しながら上記高電力のセルより小駆動能力従って低電力のセル(以下低電力セル)に置換する低電力化のためのネット修正を行い低電力版の新RCネットF7と低電力セルへの置換情報F8を抽出する最適化セル置換処理ステップS10と、低電力処理前のRCネットF4と低電力処理後の新RCネットF7とセル単位の電力ライブラリ(LIB)F9を用いて、各ネットの消費電力抽出を行う消費電力抽出ステップS11と、ステップS11の結果に基づき低電力処理後のネットが低電力処理前のネットより電力削減されていることを確認し、OKと判断した場合は、次のレイアウト修正ステップS14へ進む比較判定ステップS12と、比較判定ステップS12でNGと判断した場合は、低電力セルへの置換手法の変更を行い、再度、最適化セル置換処理ステップS10へ戻り低電力処理を行う置換順序変更ステップS13と、最適化セル置換処理ステップS10で得られるセル置換情報F8と低電力セルレイアウト情報F10とステップS5のレイアウト設計時に抽出される置換前の高電力セルのインスタンスとレイアウト座標の情報であるセルインスタンス座標情報(DEF)F11を用いてレイアウト修正を行うレイアウト修正ステップS14と、レイアウト修正ステップS14後のレイアウト検証を行うレイアウト検証ステップS15とを有する。
【0048】
本実施の形態を特徴付ける最適化セル置換処理ステップS10の詳細をフローチャートで示す図2を参照すると、この最適化セル置換処理ステップS10は、F/F間遅延情報F6からタイミングマージン削減が可能なF/F間パスの抽出を行うF/F間パス抽出ステップS101と、F/F間パス抽出ステップS101で抽出したF/F間パスに関して電力削減に有効となるセル(高電力セル)の選択を行うセル選択ステップS102と、RCネットF4と低電力セル名情報F13を用いて低電力化のためのネット修正、すなわち、セル名置換を行い新RCネットF14とセル置換情報F15を出力するセル置換ステップS103と、新RCネットF14とセル遅延情報F5と、低電力セルの遅延情報である低電力セル遅延情報F12とを用いてセル置換を行った新RCネット遅延情報(SDF)F16の再抽出を行う遅延情報再抽出ステップS104と、ステップS104で抽出したセル置換による遅延変動を考慮したSDFF16とステップS103で抽出したセル置換情報F15と旧F/F間遅延情報F6とを用いて新F/F間遅延の計算を行い新F/F間遅延情報F17を生成するF/F間遅延計算ステップS105と、新F/F間遅延情報F17に基づきタイミングマージンが最適かどうかを判断し各F/F間パスにおいてタイミングマージンが限界(かつ、タイミングエラー無し)と判断した場合は低電力化のためのセル置換を行った最終版の新RCネットF7とセル置換情報F8を抽出し、タイミングオーバを確認した場合は、RCネット修正ステップS107に進む最適マージン判断ステップS106と、セル置換情報F15、新F/F間遅延情報F17、旧F/F間遅延情報F6を用いて新RCネットF14に対してネット修正を行い、再度ステップS104に戻るRCネット修正(再置換)ステップS107とを有する。
【0049】
この最適化セル置換処理ステップS10の処理を繰り返し、低電力版の回路接続情報である新RCネットF7とセル置換情報F8を抽出する。
【0050】
次に、図1を参照して本実施の形態の全体動作について説明すると、本実施の形態では、タイミング調整と低電力化(低電力セル置換)を個別に行なうのではなく、双方を同時に考慮して適切な低電力セルの選択を行なうことにより、短TATで低電力なLSIの設計を可能とするLSIの自動設計方法を実現するものである。
【0051】
まず、機能設計ステップS1の機能設計の情報に基づき論理合成ステップS2においてシノプシス(Synopsys)社のパワーコンパイラ等の電力最適化ツールを用いて論理合成を行なう。ただし、本実施の形態での論理合成においては、従来とは異なり、必要以上に電力優先の重み付けは行なわない。すなわち、初期設計においてはタイミング優先で論理合成を行なう。これにより、従来、低電力ライブラリの影響でタイミング収束に要していた時間・工数がなくなり、論理合成ステップS2からバックエンド(後段)のタイミング収束の判定ステップS7までの処理が短TATで設計可能となる。
【0052】
タイミング検証ステップS3で、論理合成ステップS2の論理合成結果である回路接続情報(ネット)に対してフロントエンド(前段)でのタイミング検証を行い、タイミング検証結果であるF/F間遅延情報F1に対して、判定ステップS4で所定のタイミング規格を満足しないタイミングエラー有無の判定を行う。タイミングエラーがあった場合は、論理合成ステップS2に戻り、タイミング収束が確認されれば、レイアウト設計ステップS5へ進む。
【0053】
レイアウト設計ステップS5では、タイミング収束後のネットを用いてTDL(Timing Driven Layout:タイミング駆動レイアウト)ツール等を併用した自動配置配線を行い、バックエンドにおけるタイミング収束を考慮したレイアウトを行う。又、レイアウト検証後に配線抵抗、容量を考慮したRCネットF2の抽出も行う。次に、タイミング検証ステップS6で、レイアウト設計ステップS5で抽出したRCネットF2に基づきバックエンドのタイミング検証を行い、判定ステップS7で、タイミング検証ステップS6のタイミング検証結果であるF/F間遅延情報F3に対してタイミングエラー有無の判定を行う。タイミングエラーがあった場合は、論理合成ステップS2、又は、レイアウト設計ステップS5に戻り、タイミング収束を確認すれば、LSI設計後の生成物であるRCネットF4のライブラリを抽出して次のステップへ進む。
【0054】
しかし、先にも説明したように、論理合成ステップS2の合成時にはタイミングを優先して合成を行っているので、レイアウト後の配線負荷の影響によるタイミングエラーの多発などの後戻り工数はそれほど発生しない。つまり、従来のように設計当初から低電力ライブラリ(低駆動能力ライブラリ)素子を用いた設計を行わないことにより、レイアウト後の配線負荷による出力波形鈍化の影響を抑えた設計を実現している。以上のステップS1からステップS7までの基本的な処理フローは従来の第1のLSIの自動設計方法の処理フローと同様である。
【0055】
以上の設計結果を用いて、以下に説明する低電力化の処理を行う。
【0056】
低電力化の処理としては、レイアウト後に抽出されるタイミング収束後の配線抵抗、容量付きの回路接続情報のライブラリであるRCネットF4と、タイミング収束後のタイミング検証結果サマリのライブラリであるF/F間遅延情報F6と、セル単位の遅延情報のライブラリであるセル遅延情報F5との3種類のライブラリを用いて、本実施の形態を特徴付ける低電力化のためのネット修正処理である最適化セル置換処理ステップS10を行う。
【0057】
図1を再度参照すると、まず最初に、タイミング検証結果サマリであるF/F間遅延情報F3からマージン値チェックステップS8、マージン判断ステップS9において、全F/F間のタイミングマージンの有無を判断し、低電力化の処理を行なう必要があるかどうかを決定する。もし、タイミング的にマージンがあるパスが存在する場合は、そのままF/F間遅延情報F3をF/F間遅延情報F6として抽出して最適化セル置換処理ステップS10へ進み、本実施の形態の仕組みによる低電力設計を行なう。タイミングマージンが全F/F間パスに存在しなければ設計を終了する。
【0058】
最適化セル置換処理ステップS10では、配線負荷を考慮したタイミング検証後に抽出したRCネットF4、F/F間遅延情報F6、及び、セル遅延情報F5の3種類の情報を用いてタイミングを考慮しながら低電力化のためのセル置換を行ない、最終的に低電力版の新RCネットF7と、RCネット内のセルを低電力セルへ置換した置換情報F8との抽出を行なう。
【0059】
最適化セル置換処理ステップS10における低電力手法の概要を簡単に説明すると、まず、RCネットF4に対して、各F/F間パスの遅延を計算しながら各パスのタイミングマージンが最小となるように適切な低電力ライブラリ(小駆動能力ライブラリ)セルへのセル置換を行なう。ただし、セル置換の際には、電力削減に有効なセルのみを選択する仕組みを持ち、セル置換による予期せぬ電力増加を防止する。又、セル置換時には、セルの駆動能力変化による各配線遅延、セル遅延の変動を計算し、F/F間のトータル遅延値の再計算を行なう仕組みを持っているため、セル置換による予期せぬタイミングエラーも発生しない。
【0060】
このようにタイミングマージンを極力減らすという概念を持ち、F/F間の遅延計算を行ないながら電力削減に最適なセル置換を行なうことにより、各セルの駆動能力を限界まで低減することができ、結果的に電力削減を実現できる。
【0061】
次に、図2を参照して最適化セル置換処理ステップの処理動作について詳細に説明すると、まず、タイミング収束後のタイミング検証結果サマリであるF/F間遅延情報F6の情報からF/F間パス抽出ステップS101で、タイミングマージン削減が可能なパスの情報を抽出し、セル選択ステップS102で、抽出した各F/F間パスに関してタイミングマージンが最小となるようなセルの選択を行うのと同時に、電力削減に有効となるセルの選択を行う。
【0062】
ここで、本実施の形態のポイントである電力削減に有効となるセル選択の手法について説明する。
【0063】
F/F間パスの一例を等価回路で、このF/F間パスの各セル毎のセル内遅延とセル間の配線遅延の情報の一例を表形式でそれぞれ示す図3を参照すると、図3(A)に示すセルAとセルBとから成るF/F間パスの各セル毎のセル内遅延とセル間の配線遅延の情報が図3(B)に示す内容であるものとする。その場合、配線遅延の大きいセルAの部分のセル置換を行い駆動能力を低減する処理をした場合、次段のセルBの入力波形が極端に鈍る可能性があり、次段セルBの貫通電流の増加を招く恐れがある。貫通電流の増加はLSIの電力増加につながることになるため、セルAのような配線遅延が大きいセルはセル置換対象から外す必要がある。つまり、電力削減を目的としてタイミングマージンを削減する場合、配線遅延を無視して全てのセルを対象にセル置換を行うことは避けなければならないと言える。
【0064】
従って、本実施の形態における低電力セル置換時には配線遅延が大きいセルを除外する仕組みを持ち、電力削減に有効なセルのみを選択する処理を有する。例えば、図3の例においては、セルA以外のセルのみ置換対象とした選択方式をとることになる。
【0065】
このセル選択ステップS102の処理内容の詳細をフローチャートで示す図4を参照すると、まず、タイミングマージン削減可能なF/F間パス遅延情報F21に対して、予め設定した配線遅延のセル(高電力セル)、例えば、配線遅延が0.2ns以下のセルが存在するかどうかを判定ステップS1021においてチェックし、存在すればそのセルを置換セル選択ステップS1022で、置換対象としてセル名及びインスタンス名を選択し、該当セルが0.2ns以上の配線遅延を持っていれば置換対象除外ステップS1023へ進み、該当セルを置換対象外とする。これらの判定ステップS1021から置換対象除外ステップS1023までの処理をタイミングマージン削減可能なF/F間パスに対して繰り返し行ない、最終的に置換が可能な置換セル情報F22の抽出を行なう。なお、セル置換対象とする配線遅延値に関しては、予め適切な配線遅延の制限値を設けておくことにより、電力のみならず、遅延値の増加も防止することが出来る(ステップS1021にて設定)。
【0066】
また、セル選択ステップS102は、配線遅延に着目したものとなっているが、その他の電力削減に有効となるセル選択の手法として、セル内遅延に制限を設け、セル遅延の小さいもの(消費電力の大きなセル)から優先して選択して置換していくなどの方法も有効である。さらに、F/F間パスにおいてセル段数の少ないパスはタイミングに余裕があり過ぎることが予想されるので、無理なセル置換によるタイミングマージンの削減(必要以上に駆動能力を下げることによる次段の貫通電流増加)を防止する目的で、予め設定したセル段数以下のF/F間パスをあえてセル置換対象から外しておく等の手法も有効となる。
【0067】
図2のフローの説明に戻り、前述した手法により選択した電力削減に有効となるセルに対し、セル置換ステップS103においてRCネットのセル置換処理を行う。
【0068】
ステップS103では、RCネットF4と低電力セル名情報F13とステップS102で選択したセル情報を用いて低電力化のためのネット修正、すなわち、セル置換を行い、新RCネットF14とセル置換情報F15とを出力する。このセル置換時は、低電力セル名情報F13から置換対象セルの駆動能力より1ランク小さい低電力セルを選択して置換を行なう。置換対象セルの駆動能力の判定は、予め初期設計に用いるセル名の最後尾に駆動能力のランクを示すX1、X2、X3等のユニークな文字を付けておくことにより容易に行なうことが可能である。ここで駆動能力の1ランクとは、駆動能力がトランジスタのゲート幅Wにより決まることから、説明の便宜上、Wサイズを小さい方から所定のステップ(段階)で順に大きくした場合の1段階分をいう。例えば、X1>X2>X3・・・の順で駆動能力が1ランクずつ低減するものとする。すなわち、置換対象セルの駆動能力のランクがX1(以下X1能力)であるとすると、1ランク下げた置換セルはX2能力となる。
【0069】
また、出力に付加する負荷インピーダンスや出力最大負荷容量などにより駆動能力を判定することも可能である。なお、置換時に駆動能力を1ランクだけ落とす理由は、過度の駆動能力低下により、配線負荷の影響で出力波形が鈍り、次段セルの貫通電流を誘発することを防止するためである。
【0070】
なお、本実施の形態で使用する低電力セル遅延情報及び低電力セル名情報F13から成る低電力ライブラリ(小駆動能力ライブラリ)は、従来からタイミング調整用として存在するフットプリントセルライブラリ(FPLIB)と呼ばれるものであり、例えば、このX2能力の置換セルは、X1能力の置換対象セルに対し、配線などの上地データとレイアウトのセルサイズは同一で、トランジスタのWサイズなどの下地データのみが異なる(小さい)ライブラリとなっている。従って、回路、レイアウト共にデータ差し替えのみで修正が可能という利点を持っている(回路内のセル名置換を行なっても再度の論理合成、再度の配置配線は必要ない)。つまり、このFPLIBを低電力技術に用いることで、単純な回路変更(セル置換)、レイアウト修正が可能となる。
【0071】
低電力ライブラリ(FPLIB)のレイアウト例を示す図5を参照すると、図5(A)に示すトランジスタのWサイズがW1の大駆動能力の置換対象セルであるインバータ51(等価回路は図5(C))に対し、図5(B)に示す配線などの上地データとレイアウトのセルサイズは同一で、トランジスタのWサイズのみW1より小さいW2の小駆動能力の置換セルであるインバータ52(等価回路は図5(D))を含む。従って、インバータ51をインバータ52に置換することで、低電力化を図ることが可能となる。
【0072】
次に、図2の説明に戻り、遅延情報再抽出ステップS104においては、新RCネットF14とセル遅延情報F5と、低電力セル遅延情報F12を用いて、セル置換を行った新RCネットF14の遅延情報(SDF)F16の再抽出を行っている。こうして抽出されたセル置換による遅延変動を考慮した新しい遅延情報SDFF16と、セル置換ステップS103で抽出したセル置換情報F15と、旧F/F間遅延情報F6を用いて、F/F間遅延計算ステップS105で、新F/F間遅延の計算を行う。以上の処理により、実配線抵抗(R)、実配線容量(C)を考慮した低電力セル置換後の新F/F間遅延情報F17を抽出でき、実配線が考慮されたタイミングエラーの判定が可能となる。
【0073】
F/F間遅延計算ステップS105のF/F間遅延の再計算例を示す図6を参照すると、セル置換前のF/F間遅延情報F6に対し、セル置換を行った新RCネットの遅延情報の各インスタンスと遅延値の情報であるSDFF16を用いてF/F間遅延の再計算を行なった結果がセル置換後の新F/F間遅延情報F17となる。
【0074】
この例では、低電力セルへの置換処理により、SDFF16のINTERCONとIOPATHの各項の数値を新F/F間遅延情報F17のINTERCONとIOPATHの各項(Aで示す部分)に代入し、F/F間遅延の再計算が行われていることを示しており、結果として、タイミングマージンBの値がF/F間遅延情報F6における2.862nsから新F/F間遅延情報F17における0.094nsに減っていることが確認できる(駆動能力減→電力減)。
【0075】
再び図2に戻り、判断ステップS106において、新F/F間遅延情報F17に基づき、タイミングマージンが最適かどうかの判断を行い、もし、各F/F間パスにおいてタイミングマージンが限界(かつ、タイミングエラー無し)と判断した場合は、低電力化のためのセル置換を行った最終の新RCネットF7とセル置換情報F8を抽出する。また、タイミングオーバを確認した場合は、セル置換情報F15、新F/F間遅延情報F17、旧F/F間遅延情報F6を用いて新RCネットF14に対してRCネット修正ステップS107で、ネット修正を行い、再度遅延情報再抽出ステップS104に戻る。
【0076】
RCネット修正ステップS107では、例えば、タイミングオーバしている遅延値に基づき、逆算してオーバ分の遅延値を低減させる処理を行う。具体的には新F/F間遅延情報F17とセル置換情報F15と旧F/F間遅延情報F6からどのセルを元に戻せば良いかを判断してネット修正を行う。これにより、タイミングオーバ分のセルのみセル置換が可能なので、必要以上に低電力セルを元に戻す必要がない。また、TATを重視する場合は、タイミングエラーがあるF/F間パスのうちセル遅延の大きい上位3つのセルを新F/F間遅延情報F17とセル置換情報F15を用いて選択し、一律にネット修正することで、短TATにタイミング収束させることが可能である。
【0077】
以上が本実施の形態を特徴付ける最適化セル置換処理ステップS10の処理となる。この最適化セル置換処理ステップS10の処理を繰り返し、最終的にタイミングエラーの無い低電力版の回路接続情報である新RCネットF7と低電力セルへの置換情報F8を抽出する。
【0078】
つまり、この最適化セル置換処理ステップS10の処理を有することにより、タイミング調整と低電力化(低電力セル置換)を同時に考慮ができる。
【0079】
最後に図1の全体フローを再度参照して、消費電力抽出ステップS11以降の処理に関して説明すると、まず、消費電力抽出ステップS11で、低電力処理前のRCネットF4と最適化セル置換処理ステップS10にて低電力処理後の新RCネットF7とセル単位電力ライブラリF9を用いて、低電力化前後での各消費電力の抽出を行う。その後、比較判定ステップS12で、消費電力抽出ステップS11の結果に基づき低電力処理後のネットが低電力処理前のネットより電力削減されていることを確認する。比較判定ステップS12でNGと判断した場合は、置換順序変更ステップS13へ進み、低電力セルへの置換手法の変更や、セル置換対象とする配線遅延の制限値変更などを行い、再度、最適化セル置換処理ステップS10の低電力化処理を行う。比較判定ステップS12でOKと判断した場合は、レイアウト修正ステップS14へ進み、最適化セル置換処理ステップS10で得られるセル置換情報F8と低電力セルレイアウト情報F10とレイアウト設計ステップS5のレイアウト設計時に抽出されるセルのインスタンスとレイアウト座標の情報であるDEFF11を用いてレイアウト修正を行う。
【0080】
前述したように、本設計フローでは低電力ライブラリとしてFPLIBを用いているため、レイアウト修正は単純な置き換え作業のみであり、短TATで修正可能である。具体的にはセル置換情報F8に記述されているインスタンス情報と、DEFF11に記述されているインスタンスとレイアウト座標の情報からセル置換を行なったレイアウト座標の特定を行ない、特定した座標のセル置換処理をシェルにより自動で行なう。又は、セル置換情報F8に記述されているインスタンス情報に基づき、DEFF11中の該当するセル名変換を行い、再度、DEFF11からレイアウトデータの再抽出を行なっても良い。
【0081】
その後、レイアウト検証ステップS15で、レイアウト検証、クロストークの検証などを行い、LSIの設計を終了する。なお、最適化セル置換処理ステップS10のセル置換処理において、事前に置換後のレイアウトの配線抵抗、容量を考慮したタイミング計算を行なっていることになるので、本レイアウト修正により、タイミングエラーが再発生することはない(本レイアウト修正方法では、セル入れ替えのみであり、配線パタン等は不変である)。
【0082】
以上の仕組みにより、タイミング調整と低電力化(低電力セル置換)を同時に考慮しながら適切な低電力設計を行なうことができ、短TATで低電力なLSIが設計可能となる。
【0083】
本実施の形態のLSIの自動設計方法は、タイミングを考慮しながら電力削減に有効なセルのみを低電力ライブラリへ置換する仕組みである最適化セル置換処理ステップを有することにより、タイミングエラーを誘発することなく低電力設計が可能となる。
【0084】
例えば、従来の第1の低電力技術で設計したマクロ製品において本実施の形態を適用した場合の例では、従来技術によるマクロ製品の消費電力53.7mWに対し、本実施の形態の設計法による同一機能性能のマクロ製品の消費電力は46.4mWと、約13%の電力削減が可能という効果を確認できた。
【0085】
同様に、従来の第2の低電力技術に対する本実施の形態の電力削減効果は、約3%の電力削減となった。
【0086】
また、フットプリントライブラリを用いることで、セル名変更(セル置換)により、単純な回路変更、レイアウト変換が可能となり、再合成、再配置配線によるTATは発生しないため、短TATで低電力化が実現可能となる。
【0087】
また、従来、タイミングエラー誘発などの問題により、低電力ライブラリを用いた合成が困難であったが、本実施の形態では合成後に低電力ライブラリの有効利用が可能となる。
【0088】
また、従来の低電力化によるタイミング収束性悪化により、設計TAT増加が懸念されていたが、本実施の形態により、実配線負荷を考慮したタイミング収束と低電力化を同時に考慮した設計が可能となるので、設計TATの向上が図れる。
【0089】
さらに、クリティカルパス、それ以外のパスの区別なく、容易にタイミングマージンを減らすことが出来、低電力化が実現可能となる。
【0090】
次に、本発明の第2の実施の形態を特徴付ける最適化セル置換処理ステップS10Aの詳細を図2と共通の構成要素には共通の参照文字/数字を付して同様にフローチャートで示す図7を参照すると、この図に示す本実施の形態の最適化セル置換処理ステップS10Aの前述の第1の実施の形態の最適化セル置換処理ステップS10との相違点は、低電力化のためのセル置換を行う際に用いる低電力ライブラリである低電力セル遅延情報F12及び低電力セル名情報F13の代わりに低電力セル遅延情報F12及び低電力セル名情報F13の各情報に加えてセル内の最終段トランジスタのゲート幅Wをセル置換前の置換対象セルと同一サイズとした低電力セル遅延情報F12A及び低電力セル名情報F13Aを有することである。
【0091】
第1の実施の形態では、低電力化のためのセル名置換を行う際には、例えば、置換対象のX1能力のセルに対する置換セルとしてトランジスタのWサイズなどの下地データを全て最小サイズとした低電力ライブラリ(以下最小サイズライブラリ)を用いていた。このため、低電力化の目的としてはセル置換により十分な効果を発揮できるライブラリとなっていたが、ネット修正時にセル出力の配線負荷の状態、すなわち、配線遅延値の大小を考慮せずにセル置換を行った場合、過度の駆動能力低下により、配線負荷の影響で出力波形が鈍り、次段セルの貫通電流を誘発するという問題点があった。そこで、第1の実施の形態では低電力セル置換時に配線遅延が大きいセルを除外する仕組みを持ち、電力削減に有効なセルのみを置換する処理を行っていた。しかし、第1の実施の形態の場合、配線遅延を無視して全てのセルを対象にセル置換を行うことが出来ず、電力削減を限界まで行えないという手法となっている。
【0092】
本実施の形態では、セル置換時に用いる低電力ライブラリとして、第1の実施の形態で用いた低電力ライブラリの他に、図8に示すような低電力セル内の最終段トランジスタQ1のWをセル置換前の置換対象セル(高電力セル)の全トランジスタのWと同一サイズのW1とし、その他のトランジスタのみWサイズ縮小を図った低電力ライブラリを持たせることにより、セル置換時に配線遅延を無視して全てのセルを対象にセル置換が出来るようにしている。
【0093】
最終段トランジスタのWサイズが置換対象セルのサイズと同等であれば、セル置換後に配線負荷の影響でセル置換前より出力波形が鈍ることがなく、次段の貫通電流を増加させることもない。従って、ネット内の全セルを対象に低電力化のためのセル置換が行えるようになり、電力削減が第1の実施の形態よりも限界まで行えるようになるという効果が得られる。
【0094】
なお、本実施の形態で使用する低電力ライブラリも第1の実施の形態同様のFPLIBであり、従来のセルに対し、配線などの上地データとレイアウトのセルサイズは同一とすることで、回路、レイアウト共にデータ差し替えのみで修正が可能となる。
【0095】
さらに、このような低電力ライブラリを従来セルの駆動能力バラエティ毎に準備することにより、効率良く低電力化のためのセル置換が行えるようになり、さらなる低電力化が行えるという効果を得る。
【0096】
本実施の形態は、今後のプロセスの進化に伴い、多少、低電力ライブラリが増加してもさらなる低電力化が必要とされてきた場合に有効である。
【0097】
本実施の形態の最適化セル置換処理ステップS10Aを用いた全体の設計フローは、図1に示した第1の実施の形態と同様であるので省略する。
【0098】
次に、本発明の第3の実施の形態を特徴付ける最適化セル置換処理ステップS10Bの詳細を図2と共通の構成要素には共通の参照文字/数字を付して同様にフローチャートで示す図9を参照すると、この図に示す本実施の形態の最適化セル置換処理ステップS10Bの前述の第1の実施の形態の最適化セル置換処理ステップS10との相違点は、タイミングを考慮したF/F間遅延計算処理ステップS105に加えて、セル置換による電力増減を考慮して電力変動値を算出する電力変動値算出ステップS108を有することである。
【0099】
第1の実施の形態では、低電力化のためのセル名置換を行う際には、セルの駆動能力変化による各配線遅延、セル遅延の変動を抽出し、さらに、F/F間のトータル遅延値の再計算を行ない、セル置換による予期せぬタイミングエラーを防止していた。タイミングを意識したのは、セル置換に伴うセル遅延の変動をチェックする目的と同時に、タイミングマージンを限界まで削減することにより、その波及として電力削減を実現させることを目的としていたからである。つまり、本発明のポイントであるタイミングマージンの削減による消費電力削減手法において、考慮していたのはあくまでもF/F間パスのタイミングのみであったと言える。従って、最適化セル置換処理ステップS10のフローにおいては、タイミングに着目した内容となっており、消費電力に関するチェックに関しては、低電力化の処理後の最終チェックとして行われているに過ぎなかった。
【0100】
これに対し、本実施の形態では、セル置換時にタイミングを考慮したF/F間遅延計算処理を行う他に、セル置換による電力増減を考慮した電力変動値算出ステップS108を行い、消費電力の観点でも同時にチェックを行うようにしている。
【0101】
実際には、電力変動値算出ステップS108で、最適化セル置換処理ステップS10Bのセル置換ステップS103におけるセル置換時に抽出されるセル置換情報F15と、セル毎の電力情報であるセル単位電力情報F18を用いて、セル置換によるセル内電力の変動を計算し、各F/F間パス毎の消費電力の増減値データである電力増減値F19を抽出する。判定ステップS109において電力増減値F19を用いて、セル置換後のF/F間パスのトータル電力値が下がっているかどうかを判定する。結果、消費電力が増加していた場合は、第1の実施の形態と同様、RCネット修正ステップS107でネット修正を行う。消費電力が低下しており、判断ステップS106のタイミング判定でもタイミングエラーがない場合は、第1の実施の形態同様、低電力版の新RCネット情報F7と低電力セルへの置換情報F8とを抽出する。
【0102】
その他処理においては、第1の実施の形態の最適化セル置換処理ステップS10図2と同様である。
【0103】
以上の処理を設けることにより、低電力セルへの置換時に、セル遅延の変動とセル内電力の変動を同時にチェックすることが出来るようになり、設計フローの最終段階で電力削減効果のチェックを行っていた第1の実施の形態よりも効率的に低電力設計が行えるようになり、さらに、セル置換による電力増加時の後戻りTATが削減できるという効果を得ることが出来る。
【0104】
本実施の形態の最適化セル置換処理ステップS10Bを用いた全体の設計フローは、図1に示した第1の実施の形態と同様であるので省略する。
【0105】
【発明の効果】
以上説明したように、本発明のLSIの自動設計方法は、論理合成を、タイミング規格の満足を重視して大駆動能力従って高電力の前記第1のセルを用いて実施し、第1のレイアウトの検証後に上記タイミング規格を考慮しながら第1のセルより小駆動能力従って低電力の第2のセルに置換する第1のネットの修正を行い低電力化した第2のネットと第1のセルから第2のセルへの置換情報とを抽出する最適化セル置換処理ステップを有することにより、タイミングエラーを誘発することなく低電力設計が可能となるという効果がある。
【0106】
また、フットプリントライブラリを用いることで、セル名変更(セル置換)により、単純な回路変更、レイアウト変換が可能となり、再合成、再配置配線によるTATは発生しないため、短TATで低電力化が実現可能となるという効果がある。
【0107】
また、従来、タイミングエラー誘発などの問題により、低電力ライブラリを用いた合成が困難であったが、本実施の形態では合成後に低電力ライブラリの有効利用が可能となるという効果がある。
【0108】
また、従来の低電力化によるタイミング収束性悪化により、設計TAT増加が懸念されていたが、本実施の形態により、実配線負荷を考慮したタイミング収束と低電力化を同時に考慮した設計が可能となるので、設計TATの向上が図れるという効果がある。
【0109】
さらに、クリティカルパス、それ以外のパスの区別なく、容易にタイミングマージンを減らすことが出来、低電力化が実現可能となるという効果がある。
【図面の簡単な説明】
【図1】本発明のLSIの自動設計方法の第1の実施の形態を示すフローチャートである。
【図2】図1の最適セル置換処理ステップの詳細を示すフローチャートである。
【図3】F/F間パスの一例を等価回路で、このF/F間パスの各セル毎のセル内遅延とセル間の配線遅延の情報の一例を表形式でそれぞれ示す説明図である。
【図4】図2のセル選択ステップの詳細を示すフローチャートである。
【図5】図2の低電力ライブラリのレイアウトの一例を示すレイアウト図である。
【図6】図2のF/F間遅延計算ステップのF/F間遅延の再計算例を示す説明図である。
【図7】本発明のLSIの自動設計方法の第2の実施の形態を特徴付ける最適セル置換処理ステップの詳細を示すフローチャートである。
【図8】図7の低電力ライブラリのレイアウトの一例を示すレイアウト図である。
【図9】本発明のLSIの自動設計方法の第3の実施の形態を特徴付ける最適セル置換処理ステップの詳細を示すフローチャートである。
【図10】従来の第1のLSIの自動設計方法の一例を示すフローチャートである。
【図11】従来の第1のLSIの自動設計方法における問題点の第1の例を示すグラフである。
【図12】従来の第1のLSIの自動設計方法における問題点の第2の例を示すグラフである。
【図13】従来の第2のLSIの自動設計方法の一例を示すフローチャートである。
【図14】従来の第2のLSIの自動設計方法における問題点の一例を示すレイアウト図である。
【符号の説明】
51,52 インバータ
F1,F3,F6 F/F間遅延情報
F2,F4,F103 RCネット
F5 セル遅延情報
F7,F14 新RCネット
F8 置換情報
F9 電力ライブラリ(LIB)
F10 低電力セルレイアウト情報
F11 DEF
F12,F12A 低電力セル遅延情報
F13,F13A 低電力セル名情報
F15 セル置換情報
F16 SDF
F17 新F/F間遅延情報
F18 セル単位電力情報
F19 電力増減値
F21 F/F間パス遅延情報
F22 置換セル情報
F101,F102 低電力ライブラリ
Q1 トランジスタ
Claims (5)
- LSIの初期設計である機能設計の情報から予め定めたタイミング規格を満足するよう論理合成を行い、論理合成の結果に対してレイアウトを実行するLSIの自動設計装置において、
タイミング規格を満足するように、機能設計の情報に対して、大駆動能力の第1のセルを用いて論理合成を実行してネットリストを生成する論理合成手段と、
前記ネットリストを用いて配置配線処理を行い、第1の配線抵抗及び容量付き回路接続情報とセルインスタンス座標情報とをそれぞれ第1の配線抵抗及び容量付き回路接続情報格納手段と第1のセルインスタンス座標情報格納手段とに格納するレイアウト実行手段と、
前記第1の配線抵抗及び容量付き回路接続情報格納手段に格納されている情報に対してタイミング検証を実行し、フリップフロップ間遅延情報をフリップフロップ間遅延情報格納手段に格納するタイミング検証実行手段と、
前記第1のセルよりも小駆動能力であり、前記第1のセルとは上地データとセルサイズが同一で、セルを構成するトランジスタのゲート幅を含む下地データが異なる第2のセルが格納された低電力ライブラリ格納手段と、
前記フリップフロップ間遅延情報格納手段に格納されている情報に対してタイミングマージンのチェックを行い、タイミングマージンのあるフリップフロップ間遅延情報があった場合は、当該フリップフロップ間遅延情報からフリップフロップ間パス遅延情報を抽出し、当該フリップフロップ間パス遅延情報にあるセルを置換対象のセルとして置換対象セル情報格納手段に格納するセル選択手段と、
前記置換対象セル情報格納手段に格納されている情報に基づいて、前記第1の配線抵抗及び容量付き回路接続情報格納手段に格納されている第1の配線抵抗及び容量付き回路接続情報中の前記第1のセルを前記低電力ライブラリ格納手段に格納されている前記第2のセルに置換し、置換後の第2の配線抵抗及び容量付き回路接続情報と置換されたセル情報とをそれぞれ第2の配線抵抗及び容量付き回路接続情報格納手段とセル置換情報格納手段とに格納するセル置換実行手段と、
前記セル置換情報格納手段に格納されている情報と、予め低電力セルレイアウト情報格納手段に格納されている低電力セルレイアウト情報と、前記第1のセルインスタンス座標情報格納手段に格納されている情報とに基づいてレイアウト修正を行うレイアウト修正手段と、を有することを特徴とするLSIの自動設計装置。 - 前記第2の配線抵抗及び容量付き回路接続情報格納手段に格納されている前記第2の配線抵抗及び容量付き回路接続情報に対して遅延計算を行い、フリップフロップ間の遅延情報を遅延再計算結果格納手段に格納する遅延再計算手段と、
前記遅延再計算結果格納手段に格納されている情報にタイミングエラーがあった場合は、前記第2の配線抵抗及び容量付き回路接続情報の前記タイミングエラーがあるフリップフロップ間パスのセルのうち、セル遅延の大きいセルを前記セル置換情報格納手段に格納されている情報に基づいて置換前のセルに戻す配線抵抗及び容量付き回路接続情報修正手段と、を更に有することを特徴とする請求項1に記載のLSI自動設計装置。 - 前記セル選択手段は、前記フリップフロップ間遅延情報格納手段に格納されている情報に対してタイミングマージンのチェックを行い、タイミングマージンのあるフリップフロップ間遅延情報があった場合は、当該フリップフロップ間遅延情報からフリップフロップ間パス遅延情報を抽出し、当該フリップフロップ間パス遅延情報にあるセルの中から配線遅延値が所定の値以下であるセルを置換対象のセルとして置換対象セル情報格納手段に格納する、ことを特徴とする請求項1または2に記載のLSI自動設計装置。
- 前記セル選択手段は、前記フリップフロップ間遅延情報格納手段に格納されている情報に対してタイミングマージンのチェックを行い、タイミングマージンのあるフリップフロップ間遅延情報があった場合は、当該フリップフロップ間遅延情報からフリップフロップ間パス遅延情報を抽出し、当該フリップフロップ間パス遅延情報にあるセルの段数が所定の値以上だった場合は、当該フリップフロップ間パス遅延情報にあるセルを置換対象のセルとして置換対象セル情報格納手段に格納する、ことを特徴とする請求項1 または2に記載のLSI自動設計装置。
- 前記セル選択手段は、前記フリップフロップ間遅延情報格納手段に格納されている情報に対してタイミングマージンのチェックを行い、タイミングマージンのあるフリップフロップ間遅延情報があった場合は、当該フリップフロップ間遅延情報からフリップフロップ間パス遅延情報を抽出し、当該フリップフロップ間パス遅延情報にあるセルの中からセル遅延値が所定の値以下であるセルを置換対象のセルとして置換対象セル情報格納手段に格納する、ことを特徴とする請求項1または2に記載のLSI自動設計装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001152184A JP3737384B2 (ja) | 2001-05-22 | 2001-05-22 | Lsiの自動設計装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001152184A JP3737384B2 (ja) | 2001-05-22 | 2001-05-22 | Lsiの自動設計装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002342400A JP2002342400A (ja) | 2002-11-29 |
| JP3737384B2 true JP3737384B2 (ja) | 2006-01-18 |
Family
ID=18996901
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001152184A Expired - Fee Related JP3737384B2 (ja) | 2001-05-22 | 2001-05-22 | Lsiの自動設計装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3737384B2 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4541783B2 (ja) * | 2004-06-30 | 2010-09-08 | 富士通セミコンダクター株式会社 | 半導体集積回路の設計方法、設計装置及び論理設計プログラム |
| JP4536559B2 (ja) * | 2005-03-17 | 2010-09-01 | 富士通セミコンダクター株式会社 | 半導体集積回路のレイアウト方法、およびセル枠共通化プログラム。 |
| JP4696988B2 (ja) * | 2006-03-20 | 2011-06-08 | 日本電気株式会社 | レイアウト設計装置、方法、及び、プログラム |
| JP5070785B2 (ja) | 2006-09-26 | 2012-11-14 | 富士通セミコンダクター株式会社 | 回路設計方法及び回路設計システム |
| JP5267327B2 (ja) | 2009-05-25 | 2013-08-21 | 富士通セミコンダクター株式会社 | 設計支援プログラム、設計支援装置、および設計支援方法 |
-
2001
- 2001-05-22 JP JP2001152184A patent/JP3737384B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002342400A (ja) | 2002-11-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8677292B2 (en) | Cell-context aware integrated circuit design | |
| CN103632001B (zh) | 基于缓冲单元复用的保持时间时序优化方法 | |
| US8219959B2 (en) | Generating integrated circuit floorplan layouts | |
| US7013438B1 (en) | System chip synthesis | |
| US6145116A (en) | Layout design apparatus | |
| US6581199B2 (en) | Engineering-change method of semiconductor circuit | |
| US6996794B2 (en) | Method of designing layout of semiconductor device | |
| JP2010066871A (ja) | 半導体集積回路のレイアウト設計方法及びレイアウト設計装置 | |
| CN114841104B (zh) | 时序优化电路和方法、芯片及电子设备 | |
| CN117688893A (zh) | 芯片转换时间违例修复方法、装置、电子设备及存储介质 | |
| JP3737384B2 (ja) | Lsiの自動設計装置 | |
| JP5041882B2 (ja) | 半導体集積回路の設計方法及び設計支援装置 | |
| JP3256597B2 (ja) | 自動配置設計方法および自動配置設計装置 | |
| JP2006146601A (ja) | 半導体集積回路のレイアウト設計方法 | |
| JP2004327864A (ja) | 半導体集積回路の低消費電力化設計方法 | |
| CN113392605A (zh) | 一种适用于高性能dsp核时序收敛的精细化物理设计方法 | |
| JP2006164132A (ja) | 半導体集積回路のネットリスト作成方法およびレイアウト設計方法 | |
| JP4969416B2 (ja) | 動作タイミング検証装置及びプログラム | |
| US20030204827A1 (en) | Method of performing timing-driven layout | |
| JP2018142235A (ja) | 回路設計方法、及び回路設計支援装置 | |
| JP3008849B2 (ja) | 半導体集積回路の設計方法および装置 | |
| JP4696988B2 (ja) | レイアウト設計装置、方法、及び、プログラム | |
| US7076759B2 (en) | Methodology for generating a modified view of a circuit layout | |
| JP3017038B2 (ja) | 半導体集積回路の設計方式 | |
| US7519926B2 (en) | Semiconductor device and method for designing the same |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050613 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050621 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050822 |
|
| 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: 20051004 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051026 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081104 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091104 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091104 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111104 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111104 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121104 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121104 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131104 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |