JP2004327864A - 半導体集積回路の低消費電力化設計方法 - Google Patents

半導体集積回路の低消費電力化設計方法 Download PDF

Info

Publication number
JP2004327864A
JP2004327864A JP2003122717A JP2003122717A JP2004327864A JP 2004327864 A JP2004327864 A JP 2004327864A JP 2003122717 A JP2003122717 A JP 2003122717A JP 2003122717 A JP2003122717 A JP 2003122717A JP 2004327864 A JP2004327864 A JP 2004327864A
Authority
JP
Japan
Prior art keywords
load
wiring
buffer
branch point
cell
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.)
Withdrawn
Application number
JP2003122717A
Other languages
English (en)
Other versions
JP2004327864A5 (ja
Inventor
Mitsutoshi Fujita
光俊 藤田
Hideji Kondo
秀二 近藤
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003122717A priority Critical patent/JP2004327864A/ja
Priority to US10/815,690 priority patent/US7148135B2/en
Priority to CNA2004100351682A priority patent/CN1540745A/zh
Publication of JP2004327864A publication Critical patent/JP2004327864A/ja
Publication of JP2004327864A5 publication Critical patent/JP2004327864A5/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】トップダウン設計手法によって設計された回路に含まれる設計マージンを削除し、回路の消費電力を削減する。
【解決手段】レイアウト結果から配線の分岐点を検出し(S101)、分岐点より後段側にある配線上にダミーバッファを挿入した(S102)場合と、挿入しない場合の経路の遅延量を求める(S103)。求めた遅延量に基づき負荷分割用バッファの挿入箇所を決定し(S104)、決定した挿入箇所に負荷分割用バッファを挿入するとの条件の下で、タイミング制約を満たすように、挿入箇所の前段に位置する駆動セルの駆動能力を算出する(S105)。決定した挿入箇所に負荷分割用バッファを挿入可能であることを確認した後(S106)、レイアウト結果に対して、負荷分割用バッファを配置する処理と、駆動セルの駆動能力を変更する処理と、配線情報を変更する処理とを行う(S107)。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、半導体集積回路の低消費電力化設計方法に関し、より特定的には、トップダウン設計手法を用いて得られた回路のレイアウト結果を変更する低消費電力化設計方法に関する。
【0002】
【従来の技術】
近年、大規模ロジックLSIの多くは、トップダウン設計手法を用いて設計されている。トップダウン設計手法では、機能設計、論理合成、自動レイアウトなどの工程が行われる。機能設計工程では、設計者は、ハードウェア記述言語(HDL:Hardware Description Language )を用いて、設計すべき回路を機能的に記述する。論理合成工程では、設計者は、論理合成ツールを用いて、機能記述された回路をゲートレベルの回路データに変換する。自動レイアウト工程では、設計者は、自動レイアウトツールを用いて、ゲートレベルの回路データに基づき、回路に含まれるセルの配置やセル間の配線などを行った結果(レイアウト結果)を求める。求めたレイアウト結果に対しては、タイミング検証工程やレイアウト検証工程などが実行され、実際のデバイスは、これらの検証を終えたレイアウト結果を用いて製造される。
【0003】
最近では、回路の集積度が向上し、回路の動作周波数が高速化したために、回路設計の複雑さが増大し、これに伴い、論理合成から自動レイアウトまでの工程を短時間で完了させることが、非常に難しくなっている。このため、論理合成ツールや自動レイアウトツールについても、回路規模やチップサイズを最適化することよりも、むしろ短時間で工程を完了することに重点を置いた設計ツールが数多く開発されている。このような設計ツールでは、回路の動作に不可欠なタイミングを短時間で実現することが重視されるので、多くの場合、設計マージンを含んだ回路が得られる。ところが、設計マージンを多く含んだ回路は、動作時の消費電力が大きくなってしまう。このため、回路の消費電力を削減するためには、回路設計の段階で過大な設計マージンをいかに削減するかが重要な問題となる。
【0004】
トップダウン設計手法を用いて設計された回路から、過大な設計マージンを削減する方法としては、従来から、回路シミュレータを用いて消費電力を算出し最適なセルを選定する方法(例えば、特許文献1に記載された装置を用いる)や、回路から変更可能なセルを検出する方法(例えば、特許文献2参照)や、回路の動作を限定し、低消費電力に特化した設計手法で設計する方法などが知られている。
【0005】
図19は、回路シミュレータを用いた低消費電力化設計方法の工程図である。図19に示す方法は、機能設計工程S901と、論理合成工程S902と、自動レイアウト工程S903と、タイミング検証工程S904と、レイアウト検証工程S907と、デバイス製造工程S908とからなる一連の工程に、消費電力シミュレーション工程S905と回路修正工程S906とを追加したものである。消費電力シミュレーション工程S905では、タイミング検証を終えたレイアウト結果に基づき、回路シミュレータを用いて、回路の消費電力が算出される。算出された回路の消費電力が目標値を超えている場合には、回路修正工程S906において回路の修正が行われ、その後、修正の程度に応じて、論理合成工程S902、自動レイアウト工程S903、またはタイミング検証工程S904以降の処理が再び実行される。
【0006】
【特許文献1】
特開平5−205006号公報
【特許文献2】
特開平11−330252号公報
【0007】
【発明が解決しようとする課題】
しかしながら、上記従来の低消費電力化設計方法には、次のような問題がある。すなわち、回路シミュレータを用いて消費電力を算出し最適なセルを選定する方法では、繰り返し計算によって消費電力が最小となるセルを選定するために、膨大な処理時間が必要となり、開発期間が長くなる。これに加えて、セルの選定を行うだけでは、削減できる消費電力が限られる。また、変更可能なセルを検出する方法は、具体的な手法が存在しないため、実用化のめどが立っていない。また、回路の動作を限定する方法には、アプリケーションに依存して仕様を決定する回路では、設計の初期段階で回路の動作を決定できないため、この方法を用いても効果が上がらない場合が多いという問題がある。
【0008】
結局のところ、回路の消費電力を削減するためには、製造工程に入る直前の最終設計データから設計マージンを削減する方法が、最も効果的であると考えられる。ところが、最終設計データに基づき、短時間で効果的に回路を低消費電力化する有効な方法は知られていない。このため、実際の開発工程では、最終設計データが得られた時点で、開発期間を犠牲にして試行錯誤的に設計マージンを削除するか、あるいは、消費電力を犠牲にして設計マージンを残したまま製造するか、のいずれが行われているのが現状である。
【0009】
それ故に、本発明は、トップダウン設計手法を用いて設計された回路のレイアウト結果に含まれる過大な設計マージンを、短時間で効果的に削減する低消費電力化設計方法を提供することを目的とする。
【0010】
【課題を解決するための手段および発明の効果】
回路に含まれるセル間の遅延量は、入力波形の傾きや負荷容量(次段セルの入力ピン容量と配線容量との合計値)などによって定まる。最近では、プロセスの微細化に伴い、配線容量がセル間の遅延量を定める支配的な要因となっている。特に、分岐する配線は、分岐しない配線よりも長く、大きな負荷容量を有する場合が多い。このため、分岐する配線を駆動するためには、駆動能力の高いセルが使用される。ところが、駆動能力の高いセルは、高速駆動を必要とする次段セルだけでなく、高速駆動を必要としない次段セルも高速で駆動してしまう。このようにトップダウン設計手法を用いて設計された回路では、分岐する配線の後段側に接続される次段セルが必要以上に高速駆動され、これに起因して無駄な電力が消費される。
【0011】
そこで、本発明では、レイアウト結果に対して、分岐点より後段側にある配線上の所定の箇所に新たに負荷分割用バッファを挿入するとともに、分岐点の前段に位置する駆動セルの駆動能力を低くする。これにより、論理合成工程で生じた過大なマージンを削減し、回路の消費電力を削減する。より詳細には、本願発明は、以下のような構成を有している。
【0012】
第1の発明は、半導体集積回路のレイアウト結果を変更する方法であって、セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、分岐点を経由してセル間を結ぶ経路の遅延量を、負荷を挿入した場合と、負荷を挿入しない場合とについて求めるステップと、求めた経路の遅延量に基づき、負荷分割用バッファの挿入箇所を決定するステップと、決定した挿入箇所に負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、挿入箇所の前段に位置する駆動セルの駆動能力を求めるステップと、レイアウト結果に基づき、挿入箇所に負荷分割用バッファを挿入可能か否かを判定するステップと、判定結果に基づき、レイアウト結果を変更する処理として、挿入箇所に負荷分割用バッファを配置する処理と、駆動セルを求めた駆動能力を有するセルに変更する処理と、回路変更に伴い配線情報を変更する処理とを行うステップとを備える。
このような第1の発明によれば、タイミング制約が厳しい次段セルとタイミング制約が厳しくない次段セルとを駆動するために、高い駆動能力を有する駆動セルが使用される場合に、分岐点より後段側にある配線上の所定の箇所に負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【0013】
第2の発明は、第1の発明において、負荷分割用バッファの挿入箇所を決定するステップは、ある箇所に負荷を仮想的に挿入したときに、所定の判断基準の下でタイミング制約が厳しいと判断される経路の遅延量が所定以上に変化した場合、当該箇所を負荷分割用バッファの挿入箇所として決定することを特徴とする。
【0014】
第3の発明は、第2の発明において、負荷分割用バッファの挿入箇所を決定するステップは、同じ分岐点を経由してセル間を結ぶ経路のうちでタイミング制約が最も厳しい経路について、タイミング制約が厳しいと判断することを特徴とする。
このような第2または3の発明によれば、負荷分割用バッファを挿入することにより、回路の低消費電力化を達成できる箇所に、負荷分割用バッファを挿入することができる。
【0015】
第4の発明は、第1の発明において、負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入することを特徴とする。
【0016】
第5の発明は、第4の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側の全負荷容量を求めるステップと、駆動セルの全負荷容量を求めるステップと、駆動セルの全負荷容量に対する後段側の全負荷容量の割合が所定以上である場合に、分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入するステップとを含むことを特徴とする。
【0017】
第6の発明は、第4の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側にある配線のそれぞれについて、当該配線より後段側の全負荷容量を求めるステップと、ある分岐点について求めた後段側の全負荷容量が所定以上に不均衡である場合に、求めた後段側の全負荷容量が最も大きくなる配線上の所定の箇所に、負荷を仮想的に挿入するステップとを含むことを特徴とする。
【0018】
第7の発明は、第4の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側にある配線のそれぞれについて、当該配線を含む経路のタイミング制約の最悪値を求めるステップと、ある分岐点について求めたタイミング制約の最悪値が所定以上に不均衡である場合に、求めたタイミング制約の最悪値が最も厳しくなる配線上の所定の箇所に、負荷を挿入することを特徴とする。
このような第4ないし第7の発明によれば、負荷を仮想的に挿入する箇所を制限することにより、負荷を仮想的に挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【0019】
第8の発明は、第1の発明において、経路の遅延量を求めるステップより前に、レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、経路の遅延量を求めるステップは、削除可能バッファの前段に位置するセルと削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを仮想的に削除した場合についても求め、レイアウト結果を変更するステップは、レイアウト結果に対して、削除可能バッファを削除する処理をさらに行うことを特徴とする。
このような第8の発明によれば、バッファの追加による回路の低消費電力化に加えて、バッファの移動による回路の低消費電力化を行うことができ、回路の低消費電力化の効果をさらに高めることができる。
【0020】
第9の発明は、半導体集積回路のレイアウト結果に基づき、負荷分割した場合の遅延情報を求める方法であって、セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、分岐点を経由してセル間を結ぶ経路の遅延量を、負荷を挿入した場合と、負荷を挿入しない場合とについて求めるステップとを備える。
このような第9の発明によれば、得られた遅延情報を好適な方法で設計者に提示することにより、設計者は、回路における負荷の分布状況を容易に把握することができる。
【0021】
第10の発明は、第9の発明において、負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入することを特徴とする。
このような第10の発明によれば、負荷を仮想的に挿入する箇所を制限することにより、負荷を仮想的に挿入した場合について経路の遅延量を算出する回数が減少する。これにより、遅延量算出方法の処理時間を短縮することができる。
【0022】
第11の発明は、第9の発明において、経路の遅延量を求めるステップより前に、レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、経路の遅延量を求めるステップは、削除可能バッファの前段に位置するセルと削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを削除した場合について求めることを特徴とする。
このような第11の発明によれば、設計者は、バッファを挿入した場合の経路の遅延量に加えて、バッファを削除した場合の経路の遅延量を容易に把握することができる。
【0023】
【発明の実施の形態】
以下に示す各実施形態では、半導体集積回路の消費電力を削減するために、トップダウン設計手法を用いて設計された回路のレイアウト結果を変更する方法を説明する。より詳細には、各実施形態では、レイアウト結果に含まれる分岐点より後段側の所定の箇所に負荷分割用バッファとして、回路の論理的な機能に影響を与えないバッファを挿入するとともに、分岐点の前段に位置する駆動セルの駆動能力を低くすることにより、回路の消費電力を削減する方法について述べる。
【0024】
回路のレイアウト結果には、少なくとも、セルの種類と、セルの配置情報と、セル間の配線情報とが含まれる。セルは、論理ゲートやフリップフロップやバッファなどに対応する。配線は、あるセルの出力端子と1または複数のセルの入力端子とを接続する。複数のセルの入力端子に接続される配線は、1以上の分岐点を有し、各分岐点において2方向または3方向に分岐する。
【0025】
各実施形態に係る方法を実行する主体は、多くの場合、コンピュータが所定のソフトウェアを実行することによって実現される、半導体集積回路用の設計ツールである。設計ツールは、各実施形態に係る方法を実行する機能だけを有していてもよく、あるいは、この機能に加えて、半導体集積回路の設計に関する他の機能を有していてもよい。以下では、各実施形態に係る方法を実行する主体が、このような設計ツールであるとして説明する。
【0026】
(第1の実施形態)
図1から図8を参照して、本発明の第1の実施形態に係る設計方法を説明する。図1は、本実施形態に係る設計方法の工程図である。この設計方法は、分岐点検出工程S110と、仮想負荷挿入工程S120と、遅延量算出工程S130と、挿入箇所決定工程S140と、駆動能力算出工程S150と、レイアウト可否判定工程S160と、レイアウト変更工程S170とを備える。
【0027】
設計ツールは、まず分岐点検出工程S110において、処理対象となるレイアウト結果から、配線の分岐点を検出する。次に、設計ツールは、仮想負荷挿入工程S120において、分岐点検出工程S110で検出した分岐点のそれぞれについて、各分岐点より後段側(セルの入力端子に接続される側)にある2本または3本の配線上の所定の箇所に、1度に1つずつ所定量の負荷(以下、ダミーバッファという)を仮想的に挿入する。次に、設計ツールは、遅延量算出工程S130において、分岐点を経由して2つのセル間を結ぶ経路について、仮想負荷挿入工程S120でダミーバッファを仮想的に挿入した場合の遅延量(複数とおりある)と、ダミーバッファを挿入しない場合の遅延量とを算出する。
【0028】
次に、設計ツールは、挿入箇所決定工程S140において、遅延量算出工程S130で算出した遅延量に基づき、配線上のどの箇所に負荷分割用バッファを挿入すべきかを決定する。本実施形態では、設計ツールは、挿入箇所決定工程S140において、所定の判断基準の下でタイミング制約が厳しいと判断される経路Lがあり、かつ、ある箇所Pにダミーバッファを挿入したときに経路Lの遅延量が所定以上小さくなる場合に、箇所Pに負荷分割用バッファを挿入すべきであると判断する。
【0029】
次に、設計ツールは、駆動能力算出工程S150において、挿入箇所決定工程S140で決定した箇所に負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、挿入箇所の前段に位置する駆動セルの駆動能力を求める。次に、設計ツールは、レイアウト可否判定工程S160において、処理対象のレイアウト結果に基づき、挿入箇所決定工程S140で求めた挿入箇所に現実に負荷分割用バッファを挿入可能か否かを判定する。
【0030】
次に、設計ツールは、レイアウト変更工程S170において、処理対象のレイアウト結果に対して、レイアウト可否判定工程S160において負荷分割用バッファを挿入可能と判定された挿入箇所について、以下の処理を実行する。すなわち、設計ツールは、挿入可能と判定された挿入箇所に負荷分割用バッファを配置し、当該挿入箇所の前段に位置する駆動セルを、駆動能力算出工程S150で求めた駆動能力を有するセルに変更した上で、上記2つの回路変更に伴い配線情報を変更する。
【0031】
図2は、図1に示す分岐点検出工程S110から遅延量算出工程S130までを、フローチャート形式で示したものである。なお、図1と図2とを対比すると、分岐点検出工程S110はステップS202およびS203に、仮想負荷挿入工程S120はステップS204およびS206に、遅延量算出工程S130はステップS201、S205およびS207に、それぞれ相当する。
【0032】
図2に示すように、設計ツールは、まず、ダミーバッファを挿入しない場合について、分岐点を経由して2つのセル間を結ぶすべての経路の遅延量を算出する(ステップS201)。次に、設計ツールは、処理対象のレイアウト結果に未処理の分岐点があるか否かを判断し(ステップS202)、未処理の分岐点がある間は、以下に示すステップS203〜S207の処理を繰り返し実行する。設計ツールは、未処理の分岐点を1つ選択した上で(ステップS203)、選択した分岐点より後段側にある一方の配線上の所定の箇所にダミーバッファを挿入し(ステップS204)、その場合の経路の遅延量を算出する(ステップS205)。次に、設計ツールは、選択した分岐点より後段側にある他方の配線上の所定の箇所にダミーバッファを挿入し(ステップS206)、その場合の経路の遅延量を算出する(ステップS207)。設計ツールは、すべての分岐点についてステップS203〜S207の処理を実行した後に、挿入箇所決定工程S140以降の処理(図6)を実行する。
【0033】
なお、仮想負荷挿入工程S120におけるダミーバッファの挿入箇所は、分岐点より後段側にある配線上であれば任意の場所でよいが、回路の消費電力をより効果的に削減するためには、分岐点に近い場所がより好ましい。また、ダミーバッファとして挿入される負荷の量は、負荷分割用バッファの入力ピン容量と一致させるものとする。また、ダミーバッファを挿入した場合の経路の遅延量を算出するときには、すべての経路の遅延量を改めて計算する必要はなく、ダミーバッファの挿入に伴い遅延量が変化する経路の遅延量のみを改めて計算すればよい。また、図2は、配線が2方向に分岐する場合の処理を示しているが、配線が3方向に分岐する場合には、ダミーバッファを挿入して経路の遅延量を算出する処理を3回行えばよい。
【0034】
分岐点検出工程S110から遅延量算出工程S130までの処理の具体例を、図3に示すレイアウト結果について説明する。図3は、ある回路をスタンダードセル方式でレイアウトした結果の一部を示す図である。図3には、レイアウト結果の一部として、駆動セル10と、駆動セルの後段に位置する3つの次段セル11〜13と、配線19とが示されている。配線19は、2つの分岐点aおよびbを有し、駆動セル10の出力端子と次段セル11〜13の入力端子とを接続する。なお、図3を含めレイアウト結果を示す図面において、図面の理解を助けるために、着目すべきセルにハッチングを付する場合がある。
【0035】
図3に示すレイアウト結果を処理対象とした場合、分岐点検出工程S110では、配線19について、2つの分岐点aおよびbが検出される。この例では、分岐点より後段側にある配線は、分岐点aより後段側にある配線Na1 およびNa2 、並びに、分岐点bより後段側にある配線Nb1 およびNb2 の4本である。そこで、仮想負荷挿入工程S120では、上記4本の配線上の所定の箇所に、1度に1つずつダミーバッファが挿入される。すなわち、配線19には、4とおりの方法でダミーバッファが挿入される。また、分岐点aまたはbを経由して2つのセル間を結ぶ経路は、3本(駆動セル10から次段セル11までの経路と、駆動セル10から次段セル12までの経路と、駆動セル10から次段セル13までの経路)存在する。そこで、遅延量算出工程S130では、上記3本の経路について、ダミーバッファを挿入しない場合の遅延量と、配線Na1 上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Na2 上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Nb1 上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Nb2 上の所定の箇所にダミーバッファを挿入した場合の遅延量とが算出される。すなわち、上記3本の経路について、5とおりの方法で経路の遅延量が算出される。
【0036】
経路の遅延量は、例えば、次のようにして算出される。ダミーバッファを挿入しない場合の経路の遅延量を算出するためには、図4に示すように、図3に示すレイアウト結果から、配線の抵抗成分(RwXXと記載: Xは任意の文字。以下、同じ)と容量成分(CwXXと記載)とが抽出される。また、セルの特性データから、次段セルの入力ピン容量(CpinX と記載)が読み出される。その上で、経路の遅延量は、予め定めた遅延計算モデルに従って算出される。この例では、駆動セル10から次段セル11〜13までの経路の遅延量 t01〜t03 は、それぞれ、駆動セル10におけるセル遅延tg0 と、駆動セル10から次段セル11〜13までの配線遅延tw01〜tw03との合計値となる。ここで、入力波形の傾きinput_slewと出力負荷容量とを入力パラメータとする関数Fを用いてセル遅延を求め、Elmore法などの配線近似計算を用いて配線遅延を求めるとすると、ダミーバッファを挿入しない場合の各経路の遅延量 t01〜t03 は、例えば、次式 (1)〜(6) を用いて計算される。
Figure 2004327864
【0037】
また、ダミーバッファを挿入した場合の経路の遅延量を求めるためには、ダミーバッファを挿入しない場合の抵抗成分と容量成分とに基づき、ダミーバッファを挿入した場合の抵抗成分と容量成分とが求められる。例えば、図3に示す配線Na2 上の所定の箇所にダミーバッファを挿入した場合の経路の遅延量を求めるためには、図4に示す抵抗成分と容量成分とに対して、配線抵抗Rwabを配線抵抗Rw8bに、配線容量Cwabをダミーバッファ18の入力ピン容量Cpin8 および配線容量Cw8bにそれぞれ置換することにより、図5に示す抵抗成分と容量成分とが求められる。ダミーバッファ18を挿入した場合の駆動セル10から次段セル11までの経路の遅延量T01 は、駆動セル10におけるセル遅延Tg0 と、駆動セル10から次段セル11までの配線遅延Tw01との合計値となる。駆動セル10から次段セル12までの経路の遅延量T02 は、セル遅延Tg0 と、駆動セル10からダミーバッファ18までの配線遅延Tw08と、ダミーバッファ18におけるセル遅延Tg8 と、ダミーバッファ18から次段セル12までの配線遅延Tw82との合計値となる。駆動セル10から次段セル13までの経路の遅延量T03 も、これと同様である。すなわち、ダミーバッファ18を挿入した場合の各経路の遅延量 T01〜T03 は、次式 (7)〜(13)を用いて計算される。
Figure 2004327864
【0038】
図6は、図1に示す挿入箇所決定工程S140からレイアウト変更工程S170までを、フローチャート形式で示したものである。本実施形態では、設計ツールは、挿入箇所決定工程S140において、同じ分岐点を経由してセル間を結ぶ配線のうちでタイミング制約が最も厳しい経路について、タイミングが厳しいと判断し、タイミング制約が最も厳しい経路の遅延量が所定以上小さくなる箇所に、負荷分割用バッファを挿入すべきと判断する。なお、図1と図6とを対比すると、挿入箇所決定工程S140はステップS208、S209およびS220に、駆動能力算出工程S150はステップS210〜S215に、レイアウト可否判定工程S160はステップS216に、レイアウト変更工程S170はステップS217〜S219に、それぞれ相当する。
【0039】
遅延量算出工程S130を終了した時点で、2つのセル間を結ぶ経路の遅延量が、ダミーバッファを挿入した場合(複数とおりある)と、ダミーバッファを挿入しない場合とについて算出されている。そこで、設計ツールは、ステップS204またはS206でダミーバッファを挿入した箇所から、未処理の挿入箇所(以下、挿入箇所Pとする)を1つ選択する(ステップS208)。次に、設計ツールは、挿入箇所Pにダミーバッファを挿入した場合に、挿入箇所Pの前段に位置する駆動セルから当該駆動セルの次段に位置する次段セルまでの経路のうちで、タイミング制約が最も厳しい経路(以下、最悪経路という)の遅延量が所定以上に変化するか否かを判断する(ステップS209)。ステップS209における判断が肯定である場合には、設計ツールは、挿入箇所Pが最悪経路上にあるか否かを判断し(ステップS210)、挿入箇所Pが最悪経路上にある場合にはステップS214へ、それ以外の場合にはステップS211へ進む。
【0040】
挿入箇所Pが最悪経路上にない場合には(ステップS210でNo)、設計ツールは、ダミーバッファの駆動能力を、ダミーバッファを経由するすべての経路のタイミング制約を満たす最小の駆動能力にすると仮定する(ステップS2111)。設計ツールは、仮定した条件の下で、最悪経路のタイミング制約を満たす駆動セルの駆動能力の最小値Dを求める(ステップS212)。次に、設計ツールは、ステップS212で求めた駆動能力の最小値Dと元の回路に含まれる駆動セルの駆動能力とを比較し(ステップS213)、前者のほうが低い場合にはステップS216へ進む。
【0041】
一方、挿入箇所Pが最悪経路上にある場合には(ステップS210でYes)、設計ツールは、ダミーバッファを経由しないすべての経路のタイミング制約を満たす駆動セルの駆動能力の最小値Dを求める(ステップS214)。設計ツールは、ステップS215で求めた駆動能力の最小値Dが元の回路に含まれる駆動セルの駆動能力より低く、かつ、ダミーバッファの駆動能力が所定以下であるか否かを判断し(ステップS215)、2つの条件が満たされる場合にはステップS216へ進む。
【0042】
設計ツールの制御がステップS216に到達した場合には、ステップS208で選択された挿入箇所に、負荷分割用バッファを挿入すべきと判断されたことになる。そこで、設計ツールは、処理対象のレイアウト結果に基づき、挿入箇所Pに現実に負荷分割用バッファを挿入可能か否かを判定する(ステップS216)。ステップS216における判定結果が肯定である場合には、設計ツールは、ステップS217へ進む。この場合、設計ツールは、処理対象のレイアウト結果に対して、以下のレイアウト変更処理を実行する。すなわち、設計ツールは、挿入箇所Pに負荷分割用バッファを配置し(ステップS217)、挿入箇所Pの前段に位置する駆動セルを、ステップS212またはS214で求めた駆動能力を有するセルに変更し(ステップS218)、これら2つの回路変更に伴い配線情報を変更する(ステップS219)。
【0043】
次に、設計ツールは、所定の判断基準に従い、処理を終了する否かを判断する(ステップS220)。設計ツールは、例えば、ステップS203またはS205においてダミーバッファを挿入したすべての箇所について処理を完了したときに、処理を終了すると判断してもよく、あるいは、所定の回数だけレイアウト変更処理を実行したときに、処理を終了すると判断してもよい。設計ツールは、処理を続行すると判断した場合にはステップS208へ進み、処理を終了すると判断した場合には処理を終了する。なお、設計ツールは、ステップS209、S213、S215またはS216のいずれかにおいて否定と判断した場合には、挿入箇所Pに関するレイアウト変更処理を実行せずに、ステップS208へ進む。
【0044】
以下、挿入箇所決定工程S140からレイアウト変更工程S170までの処理の具体例を、図7に示すレイアウト結果について説明する。図7は、ある回路をスタンダードセル方式でレイアウトした結果の一部を示す図である。図7には、レイアウト結果の一部として、駆動セル20と、5つの次段セル21〜25と、駆動セル20の前段に位置する前段セル26と、配線29とが示されている。配線29は、4つの分岐点a〜dを有し、駆動セル20の出力端子と次段セル21〜25の入力端子とを接続する。
【0045】
図7に示すレイアウト結果を処理対象とした場合、分岐点検出工程S110では、配線29について、4つの分岐点a〜dが検出される。また、仮想負荷挿入工程S120では、4つの分岐点a〜dのそれぞれについて2箇所ずつ計8箇所に、1度に1つずつダミーバッファが挿入される。ここで、駆動セル20から次段セル21〜25までの5本の経路のうち、駆動セル20から次段セル24までの経路(太線で示す経路)がタイミング制約が最も厳しい経路(最悪経路)であると仮定する。また、駆動セル20から次段セル24までの経路の遅延量を、分岐点a〜dの後段側にある配線上の各箇所にダミーバッファを挿入した場合(8とおりある)と、ダミーバッファを挿入しない場合とについて比較すると、分岐点bの後段側にある配線Nb1 上の所定の箇所(図7(a)に示す挿入箇所P)にダミーバッファを挿入した場合に、上記経路の遅延量が最小になるものとする。
【0046】
図7に示すレイアウト結果について、ステップS208で挿入箇所Pが選択された場合には、ステップS209では肯定、ステップS210では否定とそれぞれ判断され、ステップS212において、駆動セル20から次段セル24までの経路のタイミング制約を満たす駆動セル20の駆動能力の最小値Dが求められる。その後、ステップS213において、求めた最小値Dが駆動セル20の駆動能力より小さいと判断され、かつ、ステップS216において、負荷分割用バッファを挿入箇所Pに挿入可能と判断された場合には、次のレイアウト変更処理が実行される。すなわち、挿入箇所Pに負荷分割用バッファ27が配置され(ステップS217)、駆動セル20がより駆動能力の低い駆動セル20’に変更され(ステップS218)、負荷分割用バッファ27および駆動セル20’に接続される配線に関する配線情報が変更される(ステップS219)。その結果、図7(a)に示すレイアウト結果は、図7(b)に示すように変更される。
【0047】
変更前のレイアウト結果(図7(a))では、配線29が長いため、駆動セル20の負荷容量は大きい。そこで、駆動セル20には、駆動能力の高いセルが使用される。これに対して、変更後のレイアウト結果(図7(b))では、負荷分割用バッファ27が挿入箇所Pに挿入されているので、配線29に対応した配線29’は元の長さより短くなり、駆動セル20の負荷容量も小さくなる。したがって、駆動セル20に代えて、駆動セル20よりも駆動能力の低い駆動セル20’を使用することができる。また、駆動セル20’の駆動能力は、最悪経路を含め各経路のタイミング制約を満たすように算出されるので、図7に示すようにレイアウト結果を変更しても、タイミング制約違反は生じない。よって、本実施形態に係る設計方法によれば、図7(a)に示すレイアウト結果について、各経路のタイミング制約を満たしながら、駆動セル20の駆動能力を低くすることにより、回路の機能を損なうことなく、回路の消費電力を削減することができる。
【0048】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが複数の次段セルを駆動する場合において、タイミング制約が厳しい経路の長さは短いが、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合に、タイミング制約が厳しくない次段セルを駆動する負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【0049】
次に、挿入箇所決定工程S140からレイアウト変更工程S170までの処理の他の具体例を、図8に示すレイアウト結果について説明する。図8におけるセルの配置およびセル間の配線は、図7に示したものと同じである。ただし、図8に示すレイアウト結果では、駆動セル30から次段セル31〜35までの5本の経路のうち、駆動セル30から次段セル33までの経路(太線で示す経路)がタイミング制約が最も厳しい経路(最悪経路)であるとする。また、駆動セル30から次段セル33までの経路の遅延量を、分岐点a〜dの後段側にある配線上の各箇所にダミーバッファを挿入した場合(8とおりある)と、ダミーバッファを挿入しない場合とについて比較すると、分岐点cの後段側にある配線Nc2 上の所定の箇所(図8(a)に示す挿入箇所Q)にダミーバッファを挿入した場合に、上記経路の遅延量が最小になるものとする。
【0050】
図8に示すレイアウト結果について、ステップS208で挿入箇所Qが選択された場合には、ステップS209およびS210においていずれも肯定と判断され、ステップS214において、ダミーバッファを経由しないすべての経路のタイミング制約を満たす駆動セル30の駆動能力の最小値Dが求められる。その後、ステップS215における2つの条件を満たすと判断され、かつ、ステップS216において、負荷分割用バッファを挿入箇所Qに挿入可能と判断された場合には、次のレイアウト変更処理が実行される。すなわち、挿入箇所Qに負荷分割用バッファ37が配置され(ステップS217)、駆動セル30が駆動セル30よりも駆動能力の低い駆動セル30’に変更され(ステップS218)、負荷分割用バッファ37および駆動セル30’に接続される配線に関する配線情報が変更される(ステップS219)。その結果、図8(a)に示すレイアウト結果は、図8(b)に示すように変更される。このようにレイアウト結果を変更することにより、回路の消費電力を削減することができる理由は、図7に示したレイアウト結果の場合と同じである。
【0051】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが、タイミング制約が厳しい少数の次段セルと、タイミング制約が厳しくない多数の次段セルとを駆動する場合において、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しい経路上に新たに負荷分割用バッファを挿入して、当該経路の周辺部分のみを選択的に高速駆動するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【0052】
なお、図6に示すフローチャートでは、挿入箇所が最悪経路上にある場合、および挿入箇所が最悪経路上にない場合のいずれの場合にも、レイアウト変更処理を行うこととしたが、レイアウト変更処理を行う場合を、上記いずれか一方の場合に限ることとしてもよい。このような設計方法は、図6に示すステップS210において肯定(あるいは否定)と判断されたときに、制御をステップS208へ進めることにより、容易に実現することができる。
【0053】
(第2の実施形態)
図9および図10を参照して、本発明の第2の実施形態を説明する。図9は、本実施形態に係る設計方法の工程図である。この設計方法は、第1の実施形態に係る設計方法(図1)に含まれる仮想負荷挿入工程S120を、これとは異なる仮想負荷挿入工程S121に置換して得られたものである。図9に示す工程のうち、図1で示した工程については、同一の参照符号を付して説明を省略する。
【0054】
設計ツールは、仮想負荷挿入工程S121において、所定の判断基準に従い必要性を判断した上で、分岐点検出工程S110で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程S121は、分岐後全負荷容量算出工程S181と、全負荷容量算出工程S182と、条件付き仮想負荷挿入工程S183とを含んでいる。設計ツールは、分岐後全負荷容量算出工程S181において、分岐点検出工程S110で検出した各分岐点について、分岐点より後段側の全負荷容量Cpart(分岐点より後段側の配線容量と、分岐点の後段に位置するセルの入力ピン容量との合計値;以下、分岐後全負荷容量という)を算出する。次に、設計ツールは、全負荷容量算出工程S182において、各分岐点について、各分岐点の前段に位置する駆動セルの全負荷容量Call (以下、単に「全負荷容量」という)を算出する。次に、設計ツールは、条件付き仮想負荷挿入工程S183において、ある分岐点について、全負荷容量Call に対する分岐後全負荷容量Cpartの割合が所定以上である場合には、当該分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。それ以外の場合には、設計ツールは、当該分岐点より後段側にある配線上にダミーバッファを挿入しない。
【0055】
仮想負荷挿入工程S121における処理の具体例を、図10に示すレイアウト結果について説明する。分岐後全負荷容量算出工程S181では、例えば分岐点bに関する分岐後全負荷容量Cpart−bとして、分岐点bから次段セル42〜45までの配線容量と、次段セル42〜45の入力ピン容量との合計値が算出される。また、分岐点dに関する分岐後全負荷容量Cpart−dとして、分岐点dから次段セル44および45までの配線容量と、次段セル44および45の入力ピン容量との合計値が算出される。また、全負荷容量算出工程S182では、全負荷容量Call として、駆動セル40から次段セル41〜45までの配線容量と、次段セル41〜45の入力ピン容量との合計値が算出される。
【0056】
図10に示すレイアウト結果では、全負荷容量Call に対する分岐後全負荷容量Cpart−bの割合は、比較的大きい。したがって、分岐点bより後段側の配線上の所定の箇所にダミーバッファを挿入した場合、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。これに対して、全負荷容量Call に対する分岐後全負荷容量Cpart−dの割合は、比較的小さい。したがって、分岐点dより後段側の配線上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性は低く、ダミーバッファ挿入による効果を期待できない。
【0057】
そこで、条件付き仮想負荷挿入工程S183では、全負荷容量Call に対する分岐後全負荷容量Cpartの割合が所定以上である場合には(例えば、図10に示す分岐点b)、ダミーバッファを挿入し、上記割合が所定以上でない場合には(例えば、図10に示す分岐点d)、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程S183では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。
【0058】
遅延量算出工程S130では、仮想負荷挿入工程S121においてダミーバッファが挿入された場合について、経路の遅延量が算出される。また、上述したように、仮想負荷挿入工程S121では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このため、遅延量算出工程S130では、経路の遅延量を算出する回数が減少し、処理時間が短縮される。
【0059】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【0060】
(第3の実施形態)
図10および図11を参照して、本発明の第3の実施形態を説明する。図11は、本実施形態に係る設計方法の工程図である。この設計方法は、第1の実施形態に係る設計方法(図1)に含まれる仮想負荷挿入工程S120を、これとは異なる仮想負荷挿入工程S122に置換して得られたものである。図11に示す工程のうち、図1で示した工程については、同一の参照番号を付して説明を省略する。
【0061】
設計ツールは、仮想負荷挿入工程S122において、第2の実施形態に係る仮想負荷挿入工程S121と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程S110で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程S122は、系統別全負荷容量算出工程S184と、条件付き仮想負荷挿入工程S185とを含んでいる。設計ツールは、系統別全負荷容量算出工程S184において、分岐点検出工程S110で検出した各分岐点の後段側にある各配線について、各配線より後段側の全負荷容量(以下、系統別全負荷容量という)を算出する。より詳細には、設計ツールは、配線が2方向に分岐する分岐点については、分岐点より後段側にある一方の配線W1に関する系統別全負荷容量Cw1として、配線W1より後段側にある配線容量と、配線W1に接続されるセルの入力ピン容量との合計値を求める。また、設計ツールは、同様の方法で、分岐点より後段側にある他方の配線W2に関する系統別全負荷容量Cw2を求める。
【0062】
次に、設計ツールは、条件付き仮想負荷挿入工程S185において、配線W1に関する系統別全負荷容量Cw1と配線W2に関する系統別全負荷容量Cw2とを比較し、両者が所定以上に不均衡である場合に、系統別全負荷容量が大きい側の配線上の所定の箇所にダミーバッファを挿入する。すなわち、系統別全負荷容量Cw1が系統別全負荷容量Cw2よりも所定以上に大きい場合には、ダミーバッファは、配線W1上の所定の箇所に挿入される。逆に、系統別全負荷容量Cw2が系統別全負荷容量Cw1よりも所定以上に大きい場合には、ダミーバッファは、配線W2上の所定の箇所に挿入される。上記2つの場合以外の場合(すなわち、系統別全負荷容量Cw1とCw2との差が所定以下である場合)には、ダミーバッファは、配線W1およびW2上のいずれにも挿入されない。なお、設計ツールは、配線が3方向に分岐する場合には、系統別全負荷容量を求めて比較する処理を3本の配線について行う。
【0063】
仮想負荷挿入工程S122における処理の具体例を、図10に示すレイアウト結果について説明する。図10に示す配線49は、4つの分岐点a〜dを有する。また、分岐点aより後段側には配線Na1 およびNa2 が存在し、分岐点bより後段側には配線Nb1 およびNb2 が存在する。系統別全負荷容量算出工程S184では、例えば分岐点aについて、配線Na1 に関する系統別全負荷容量CNa1 として、分岐点aから次段セル42〜45までの配線容量と、次段セル42〜45の入力ピン容量との合計値が算出される。また、分岐点aの他方の配線Na2 に関する系統別全負荷容量CNa2 として、分岐点aから次段セル41までの配線容量と、次段セル41の入力ピン容量との合計値が算出される。また、分岐点bについては、配線Nb1 に関する系統別全負荷容量CNb1 として、分岐点bから次段セル44および45までの配線容量と、次段セル44および45の入力ピン容量との合計値が算出され、配線Nb2 に関する系統別全負荷容量CNb2 として、分岐点bから次段セル42および43までの配線容量と、次段セル42および43の入力ピン容量との合計値が算出される。
【0064】
図10に示すレイアウト結果では、配線Na1 に関する系統別全負荷容量CNa1 は、配線Na2 に関する系統別全負荷容量CNa2 よりかなり大きい。したがって、配線Na1 上の所定の箇所にダミーバッファを挿入した場合、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。これに対して、配線Nb1 に関する系統別全負荷容量CNb1 と、配線Nb2 に関する系統別全負荷容量CNb2 とはほぼ等しい。したがって、配線Nb1 およびNb2 上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性は低く、ダミーバッファ挿入の効果を期待できない。
【0065】
そこで、条件付き仮想負荷挿入工程S185では、ある分岐点の後段側にある各配線に関する系統別全負荷容量Cw1とCw2とが所定以上に不均衡である場合には(例えば、図10に示す分岐点a)、系統別全負荷容量が大きい側の配線(この例では、配線Na1 )上の所定の箇所にダミーバッファを挿入し、両者が所定以上に不均衡でない場合には(例えば、図10に示す分岐点b)には、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程S185では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このような条件付き仮想負荷挿入工程S185を実行することにより、第2の実施形態と同じ理由により、遅延量算出工程S130における処理時間が短縮される。
【0066】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【0067】
(第4の実施形態)
図10および図12を参照して、本発明の第4の実施形態を説明する。図12は、本実施形態に係る設計方法の工程図である。この設計方法は、第1の実施形態に係る設計方法(図1)に含まれる仮想負荷挿入工程S120を、これとは異なる仮想負荷挿入工程S123に置換して得られたものである。図12に示す工程のうち、図1で示した工程については、同一の参照符号を付して説明を省略する。
【0068】
設計ツールは、仮想負荷挿入工程S123において、第2および第3の実施形態に係る仮想負荷挿入工程S121およびS122と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程S110で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程S123は、系統別タイミング制約算出工程S186と、条件付き仮想負荷挿入工程S187とを含んでいる。設計ツールは、系統別タイミング制約算出工程S186において、分岐点検出工程S110で検出した各分岐点の後段側にある各配線について、当該配線を含む経路のタイミング制約の最悪値(以下、系統別タイミング制約の最悪値という)を算出する。より詳細には、設計ツールは、配線が2方向に分岐する分岐点については、分岐点より後段側にある一方の配線W1に関する系統別タイミング制約の最悪値Tw1として、分岐点から分岐点の後段に位置する次段セルまでの経路であって、配線W1を含む経路のタイミング制約の最悪値を求める。また、設計ツールは、同様の方法で、分岐点より後段側にある他方の配線W2に関する系統別タイミング制約の最悪値Tw2を求める。
【0069】
次に、設計ツールは、条件付き仮想負荷挿入工程S187において、配線W1に関する系統別タイミング制約の最悪値Tw1と、配線W2に関する系統別タイミング制約の最悪値Tw2とを比較し、両者が所定以上に不均衡である場合に、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入する。すなわち、系統別タイミング制約の最悪値Tw1が系統別タイミング制約の最悪値Tw2よりも所定以上に厳しい場合には、ダミーバッファは、配線W1上の所定の箇所に挿入される。逆に、系統別タイミング制約の最悪値Tw2が系統別タイミング制約の最悪値Tw1よりも所定以上に厳しい場合には、ダミーバッファは、配線W2上の所定の箇所に挿入される。上記2つの場合以外の場合(すなわち、系統別タイミング制約の最悪値Tw1とTw2との差が所定以下である場合)には、ダミーバッファは、配線W1およびW2上のいずれにも挿入されない。なお、設計ツールは、配線が3方向に分岐する場合には、系統別タイミング制約の最悪値を求めて比較する処理を3本の配線について行う。
【0070】
仮想負荷挿入工程S123における処理の具体例を、図10に示すレイアウト結果について説明する。図10に示す配線49は、4つの分岐点a〜dを有し、分岐点bより後段側には、配線Nb1 およびNb2 が存在する。系統別タイミング制約算出工程S186では、例えば分岐点bについて、次の処理が実行される。すなわち、まず、分岐点bから次段セル42〜45までの4本の経路のタイミング制約T42〜T45が算出される。その上で、分岐点bの後段側にある一方の配線Nb1 に関する系統別タイミング制約の最悪値TNb1 として、タイミング制約T44およびT45のうち、厳しい側のタイミング制約が選ばれる。同様に、分岐点bの後段側にある他方の配線Nb2 に関する系統別タイミング制約の最悪値TNb2 として、タイミング制約T42とT43のうち厳しい側のタイミング制約が選ばれる。
【0071】
このようにして算出された配線Nb1 に関する系統別タイミング制約の最悪値TNb1 が、配線Nb2 に関する系統別タイミング制約の最悪値TNb2 より所定以上に大きいと場合には、配線Nb1 上の所定の箇所にダミーバッファを挿入すると、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。逆に、系統別タイミング制約の最悪値TNb2 が系統別タイミング制約の最悪値TNb1 より所定以上大きい場合には、配線Nb2 上の所定の箇所にダミーバッファを挿入すると、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。上記2つの場合以外の場合(すなわち、系統別タイミング制約の最悪値TNb1 とTNb2 との差が所定以下である場合)には、配線Nb1 またはNb2 上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が低く、ダミーバッファ挿入の効果を期待できない。
【0072】
そこで、条件付き仮想負荷挿入工程S187では、ある分岐点の後段側にある各配線に関する系統別タイミング制約の最悪値Tw1とTw2とが所定以上に不均衡である場合には、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入し、両者が所定以上に不均衡でない場合には、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程S187では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このような条件付き仮想負荷挿入工程S187を実行することにより、第2および第3の実施形態と同じ理由により、遅延量算出工程S130における処理時間が短縮される。
【0073】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【0074】
(第2ないし第4の実施形態の変形例)
第2ないし第4の実施形態では、低消費電力化設計方法の処理時間を短縮する3種類の方法を示したが、これらの方法のうち2種類、または3種類を任意に組み合わせることができる。図13は、上記3種類の処理時間短縮方法を用いた設計方法の工程図である。図13に示す工程のうち、図1、図9、図11または図12で示した工程については、同一の参照符号を付して説明を省略する。
【0075】
設計ツールは、仮想負荷挿入工程S124において、第2ないし第4の実施形態に係る仮想負荷挿入工程S121〜123と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程S110で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。図13に示す仮想負荷挿入工程S124は、分岐後全負荷容量算出工程S181と、全負荷容量算出工程S182と、系統別全負荷容量算出工程S184と、系統別タイミング制約算出工程S186と、条件付き仮想負荷挿入工程S188とを含んでいる。
【0076】
図14は、条件付き仮想負荷挿入工程S188の詳細を示すフローチャートである。図14に示す処理は、分岐点検出工程S110で検出された分岐点のそれぞれに対して実行される。この処理では、分岐後全負荷容量算出工程S181で算出された分岐後全負荷容量Cpartと、全負荷容量算出工程S182で算出された全負荷容量Call と、系統別全負荷容量算出工程S184で算出された系統別全負荷容量Cw1およびCw2と、系統別タイミング制約算出工程S186で算出された系統別タイミング制約の最悪値Tw1およびTw2とが参照される。
【0077】
設計ツールは、条件付き仮想負荷挿入工程S188において、以下の処理を行う。設計ツールは、全負荷容量Call に対する分岐後全負荷容量Cpartの割合が所定以上であるか否かを判断する(ステップS301)。全負荷容量Call に対する分岐後全負荷容量Cpartの割合が所定以上である場合には、設計ツールは、ステップS302へ進む。この場合、設計ツールは、系統別全負荷容量Cw1とCw2とが所定以上に不均衡であるか否かを判断する(ステップS302)。系統別全負荷容量Cw1とCw2とが所定以上に不均衡である場合には、設計ツールは、系統別全負荷容量が大きい側の配線上の所定の箇所にダミーバッファを挿入する(ステップS303)。
【0078】
これに対して、系統別全負荷容量Cw1およびCw2が所定以上に不均衡でない場合には、設計ツールは、系統別タイミング制約の最悪値Tw1とTw2とが所定以上に不均衡であるか否かを判断する(ステップS304)。系統別タイミング制約の最悪値Tw1とTw2とが所定以上に不均衡である場合には、設計ツールは、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入する(ステップS305)。
【0079】
なお、設計ツールは、ステップS301において否定と判断した場合、または、ステップS302およびS303の両方で否定と判断した場合には、ダミーバッファを挿入することなく、条件付き仮想負荷挿入工程S188を終了する。
【0080】
以上に示すように、低消費電力化設計方法の処理時間を短縮する方法を任意に組み合わせて、ダミーバッファを挿入する箇所をさらに制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数がさらに減少する。これにより、設計方法全体の処理時間をさらに短縮することができる。
【0081】
(第5の実施形態)
図15から図18を参照して、本発明の第5の実施形態を説明する。図15は、本実施形態に係る設計方法の工程図である。この設計方法は、分岐点検出工程S110と、削除候補検出工程S114と、仮想負荷挿入工程S120と、遅延量算出工程S134と、挿入箇所決定工程S140と、駆動能力算出工程S150と、レイアウト可否判定工程S160と、レイアウト変更工程S174とを備える。図15に示す工程のうち、図1で示した工程については、同一の参照符号を付して説明を省略する。
【0082】
設計ツールは、削除候補検出工程S114において、処理対象のレイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続されるバッファ(以下、削除可能バッファという)を検出する。このような削除可能バッファは、トップダウン設計手法を用いて設計された回路に数多く含まれる。
【0083】
また、設計ツールは、遅延量算出工程S134において、第1ないし第4の実施形態に係る遅延量算出工程S130と同様に、分岐点を経由して2つのセル間を結ぶ経路について、仮想負荷挿入工程S120でダミーバッファを仮想的に挿入した場合の遅延量(複数とおりある)と、ダミーバッファを挿入しない場合の遅延量とを算出する。これに加えて、設計ツールは、遅延量算出工程S134において、削除候補検出工程S114で検出した削除可能バッファの前段に位置するセルと、削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを仮想的に削除した場合について算出する。
【0084】
設計ツールは、挿入箇所決定工程S144において、第1ないし第4の実施形態に係る挿入箇所決定工程S140と同様に、遅延量算出工程S134で算出した遅延量に基づき、配線上のどの箇所に負荷分割用バッファを挿入すべきかを決定する。ただし、本実施形態に係る挿入箇所決定工程S144では、削除可能バッファを削除した場合の経路の遅延量も考慮して、負荷分割用バッファの挿入箇所が決定され、現実に削除すべき削除可能バッファが特定される。
【0085】
また、設計ツールは、レイアウト変更工程S174において、第1ないし第4の実施形態に係るレイアウト変更工程S170と同様に、処理対象のレイアウト結果に対して、レイアウト可否判定工程S160において負荷分割用バッファを挿入可能と判定された挿入箇所について、レイアウト変更処理を実行する。ただし、本実施形態に係るレイアウト変更工程S174では、処理対象のレイアウト結果に対して、挿入箇所決定工程S144で求めた現実に削除すべき削除可能バッファを削除する処理も行われる。
【0086】
図16は、図15に示す分岐点検出工程S110から遅延量算出工程S134までをフローチャート形式で示したものである。なお、図15と図16とを対比すると、分岐点検出工程S110はステップS402およびS403に、削除候補検出工程S114はステップS409〜S411に、仮想負荷挿入工程S120はステップS404およびS406に、遅延量算出工程S134はステップS401、S405およびS407に、それぞれ相当する。
【0087】
図16に示すステップS401〜S407は、図2に示したステップS201〜S207と同じであるので、ここでは説明を省略する。設計ツールは、ステップS407を実行した後、以下の処理を行う。設計ツールは、ステップS402で選択した分岐点が、その分岐点を有する配線における最初の分岐点であるか否かを判断し(ステップS408)、分岐点の前段に位置する駆動セルが論理を変更するか否かを判断する(ステップS409)。設計ツールは、ステップS408において肯定、かつ、ステップS409において否定と判断した場合には、分岐点の前段に位置する駆動セルを仮想的に削除し(ステップS410)、その場合の経路の遅延量を算出した後(ステップS411)、ステップS402へ進む。なお、設計ツールは、ステップS408において否定、または、ステップS409において肯定と判断した場合には、ステップS410およびS411の処理を行うことなく、直ちにステップS402へ進む。
【0088】
以下、本実施形態に係る設計方法における処理の具体例を、図17に示すレイアウト結果について説明する。図17には、レイアウト結果として、駆動セル50と、5つの次段セル51〜55と、駆動セル50の前段に位置する前段セル56と、前段セル56に接続されるその他のセル57と、配線59とが示されている。配線59は、4つの分岐点a〜dを有し、駆動セル50の出力端子と次段セル51〜55の入力端子とを接続する。駆動セル50は、回路の論理的な機能に影響を与えないセルであり、駆動セル50から次段セル51〜55までの5本の経路のうち、駆動セル50から次段セル54までの経路(太線で示す経路)のタイミング制約が最も厳しいものとする。
【0089】
図17に示すレイアウト結果を処理対象とした場合、分岐点検出工程S110では、配線59について、4つの分岐点が検出される。また、駆動セル50は、回路の論理的な機能に影響を与えないセルであり、かつ、その出力端子が分岐点を有する配線59に接続されている。このため、削除候補検出工程S114では、駆動セル50が、削除可能バッファとして検出される。遅延量算出工程S134では、分岐点a〜dの後段側にある各配線上にダミーバッファを仮想的に挿入した場合の経路の遅延量と、ダミーバッファを仮想的に挿入しない場合の経路の遅延量とに加えて、駆動セル50を仮想的に削除した場合の経路の遅延量が算出される。
【0090】
挿入箇所決定工程S144では、遅延量算出工程S134で求めた遅延量に基づき、負荷分割用バッファの挿入箇所と、現実に削除すべき削除可能バッファとが求められる。以下では、例として、挿入箇所決定工程S144において、図17に示す挿入箇所Rに負荷分割用バッファを挿入し、駆動セル50を削除すると決定されたとする。この場合、レイアウト変更工程S174では、挿入箇所Rに負荷分割用バッファ58が配置され、駆動セル50は削除され、負荷分割用バッファ58および駆動セル50に接続される配線に関する配線情報が変更される。その結果、図17(a)に示すレイアウト結果は、図17(b)に示すように変更される。
【0091】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが複数の次段セルを駆動する場合において、タイミング制約が厳しい経路の長さは短いが、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しくない次段セルを駆動するために新たに負荷分割用バッファを挿入するとともに、駆動セルを削除して、駆動セルの前段に位置する前段セルでタイミング制約が厳しい経路を駆動させることにより、回路の消費電力を削減することができる。
【0092】
また、本実施形態に係る設計方法における処理の他の具体例を、図18に示すレイアウト結果について説明する。図18におけるセルの配置およびセル間の配線は、図17に示したものと同じである。駆動セル60は、回路の論理的な機能に影響を与えないセルであり、駆動セル60から次段セル61〜65までの5本の経路のうち、駆動セル60から次段セル63までの経路(太線で示す経路)のタイミング制約が最も厳しいものとする。
【0093】
また、挿入箇所決定工程S144において、図18に示す挿入箇所Sに負荷分割用バッファを挿入し、駆動セル60を削除すると決定されたとする。この場合、レイアウト変更工程S174では、挿入箇所Sに負荷分割用バッファ68が配置され、駆動セル60は削除され、負荷分割用バッファ68および駆動セル60に接続される配線に関する配線情報が変更される。その結果、図18(a)に示すレイアウト結果は、図18(b)に示すように変更される。
【0094】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが、タイミング制約が厳しい少数の次段セルと、タイミング制約が厳しくない多数の次段セルとを駆動する場合において、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しい経路上に新たに負荷分割用バッファを挿入して、当該経路の周辺部分のみを選択的に高速駆動するとともに、駆動セルを削除して、駆動セルの前段に位置する前段セルで他のタイミングが厳しくない経路を駆動することにより、回路の消費電力を削減することができる。
【0095】
以下、本実施形態に係る設計方法の効果を説明する。上述した第1の実施形態に係る設計方法によれば、分岐点より後段側にある配線上の所定の箇所に負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。本実施形態に係る設計方法は、第1の実施形態に係る方法に、処理対象のレイアウト結果から削除可能バッファを検出する処理と、レイアウト結果に対して、検出した削除可能バッファを削除する処理とを追加したものである。負荷分割用バッファを追加する処理と、削除可能バッファを削除する処理とを行うことは、バッファを移動させる処理を行うことに等しい。したがって、本実施形態に係る設計方法によれば、バッファの追加による回路の低消費電力化に加えて、バッファの移動による回路の低消費電力化を行うことができ、回路の低消費電力化の効果をさらに高めることができる。
【0096】
(第1ないし第5の実施形態の変形例)
上述した各実施形態に係る設計方法について、各種の変形例を構成することができる。例えば、分岐点検出工程では、処理対象のレイアウト結果に含まれるすべての分岐点を検出してもよく、所定数の分岐点を検出してもよい。また、遅延量算出工程における遅延量の算出方法は、任意でよい。また、第2ないし第4の実施形態で示した、ダミーバッファ挿入箇所の制限による処理時間短縮方法を、第5の実施形態に係る設計方法に適用してもよい。
【0097】
また、上述した各実施形態に係る設計方法のうち遅延量算出工程までの工程を、遅延情報算出方法として実行することもできる。具体的には、第1ないし第4の実施形態に係る設計方法のうち、分岐点検出工程S110と、仮想負荷挿入工程S120〜124と、遅延量算出工程S130とを、半導体集積回路に対して負荷分割を行った場合の遅延情報を算出する方法として実行することができる。また、第5の実施形態に係る設計方法のうち、分岐点検出工程S110と、削除候補検出工程S114と、仮想負荷挿入工程S120と、遅延量算出工程S134とを、遅延情報算出方法として実行することもできる。
【0098】
このような遅延情報算出方法によれば、分岐点より後段側の配線上にダミーバッファを挿入した場合の遅延情報が得られる。得られた遅延情報を好適な方法で設計者に提示することにより、設計者は、回路における負荷の分布状況を容易に把握することができる。また、設計者は、ダミーバッファの挿入に伴う経路の遅延量の変動状況を把握し、回路のレイアウト結果に含まれる設計マージンを検出することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る設計方法の工程図
【図2】本発明の第1の実施形態に係る設計方法の前半部分の工程の詳細を示すフローチャート
【図3】本発明の第1の実施形態に係る設計方法の前半部分の工程を説明するためのレイアウト結果を示す図
【図4】図3に示す回路の抵抗成分と容量成分とを示す図
【図5】図3に示す回路にダミーバッファを挿入した場合の抵抗成分と容量成分とを示す図
【図6】本発明の第1の実施形態に係る設計方法の後半部分の工程の詳細を示すフローチャート
【図7】本発明の第1の実施形態に係る設計方法の後半部分の工程を説明するためのレイアウト結果を示す図
【図8】本発明の第1の実施形態に係る設計方法の後半部分の工程を説明するための他のレイアウト結果を示す図
【図9】本発明の第2の実施形態に係る設計方法の工程図
【図10】本発明の第2ないし第4の実施形態に係る設計方法による処理時間の短縮を説明するためのレイアウト結果を示す図
【図11】本発明の第3の実施形態に係る設計方法の工程図
【図12】本発明の第4の実施形態に係る設計方法の工程図
【図13】本発明の第2ないし第4の実施形態の変形例に係る設計方法の工程図
【図14】図13に示す設計方法における条件付き仮想負荷挿入工程の詳細を示すフローチャート
【図15】本発明の第5の実施形態に係る設計方法の工程図
【図16】本発明の第5の実施形態に係る設計方法の前半部分の工程の詳細を示すフローチャート
【図17】本発明の第5の実施形態に係る設計方法を説明するためのレイアウト結果を示す図
【図18】本発明の第5の実施形態に係る設計方法を説明するための他のレイアウト結果を示す図
【図19】従来の半導体集積回路の低消費電力化設計方法の工程図
【符号の説明】
10、20、30、40、50、60…駆動セル
11〜13、21〜25、31〜35、41〜45、51〜55、61〜65…次段セル
26、36、56、66…前段セル
57、67…他のセル
18…ダミーバッファ
27、37、58、68…負荷分割用バッファ
19、29、39、49、59、69…配線
S110…分岐点検出工程
S114…削除候補検出工程
S120〜S124…仮想負荷挿入工程
S130、S134…遅延量算出工程
S140、S144…挿入箇所決定工程
S150…駆動能力算出工程
S160…レイアウト可否判定工程
S170、174…レイアウト変更工程
S181…分岐後全負荷容量算出工程
S182…全負荷容量算出工程
S183、S185、S187、S188…条件付き仮想負荷挿入工程
S184…系統別全負荷容量算出工程
S186…系統別タイミング制約算出工程
a〜d…分岐点
Na1、Na2…分岐点aより後段側の配線

Claims (11)

  1. 半導体集積回路のレイアウト結果を変更する方法であって、
    セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、
    検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、
    分岐点を経由してセル間を結ぶ経路の遅延量を、前記負荷を挿入した場合と、前記負荷を挿入しない場合とについて求めるステップと、
    求めた経路の遅延量に基づき、負荷分割用バッファの挿入箇所を決定するステップと、
    決定した挿入箇所に前記負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、前記挿入箇所の前段に位置する駆動セルの駆動能力を求めるステップと、
    前記レイアウト結果に基づき、前記挿入箇所に前記負荷分割用バッファを挿入可能か否かを判定するステップと、
    前記判定結果に基づき、前記レイアウト結果を変更する処理として、前記挿入箇所に前記負荷分割用バッファを配置する処理と、前記駆動セルを求めた駆動能力を有するセルに変更する処理と、回路変更に伴い配線情報を変更する処理とを行うステップとを備えた、半導体集積回路の設計方法。
  2. 前記負荷分割用バッファの挿入箇所を決定するステップは、ある箇所に前記負荷を仮想的に挿入したときに、所定の判断基準の下でタイミング制約が厳しいと判断される経路の遅延量が所定以上に変化した場合、当該箇所を前記負荷分割用バッファの挿入箇所として決定することを特徴とする、請求項1に記載の半導体集積回路の設計方法。
  3. 前記負荷分割用バッファの挿入箇所を決定するステップは、同じ分岐点を経由してセル間を結ぶ経路のうちでタイミング制約が最も厳しい経路について、タイミング制約が厳しいと判断することを特徴とする、請求項2に記載の半導体集積回路の設計方法。
  4. 前記負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入することを特徴とする、請求項1に記載の半導体集積回路の設計方法。
  5. 前記負荷を仮想的に挿入するステップは、
    分岐点より後段側の全負荷容量を求めるステップと、
    前記駆動セルの全負荷容量を求めるステップと、
    前記駆動セルの全負荷容量に対する後段側の全負荷容量の割合が所定以上である場合に、分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入するステップとを含むことを特徴とする、請求項4に記載の半導体集積回路の設計方法。
  6. 前記負荷を仮想的に挿入するステップは、
    分岐点より後段側にある配線のそれぞれについて、当該配線より後段側の全負荷容量を求めるステップと、
    ある分岐点について求めた後段側の全負荷容量が所定以上に不均衡である場合に、求めた後段側の全負荷容量が最も大きくなる配線上の所定の箇所に、前記負荷を仮想的に挿入するステップとを含むことを特徴とする、請求項4に記載の半導体集積回路の設計方法。
  7. 前記負荷を仮想的に挿入するステップは、
    分岐点より後段側にある配線のそれぞれについて、当該配線を含む経路のタイミング制約の最悪値を求めるステップと、
    ある分岐点について求めたタイミング制約の最悪値が所定以上に不均衡である場合に、求めたタイミング制約の最悪値が最も厳しくなる配線上の所定の箇所に、前記負荷を挿入することを特徴とする、請求項4に記載の半導体集積回路の設計方法。
  8. 経路の遅延量を求めるステップより前に、前記レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、
    経路の遅延量を求めるステップは、前記削除可能バッファの前段に位置するセルと前記削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、前記削除可能バッファを仮想的に削除した場合についても求め、
    前記レイアウト結果を変更するステップは、前記レイアウト結果に対して、前記削除可能バッファを削除する処理をさらに行うことを特徴とする、請求項1に記載の半導体集積回路の設計方法。
  9. 半導体集積回路のレイアウト結果に基づき、負荷分割した場合の遅延情報を求める方法であって、
    セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、
    検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、
    分岐点を経由してセル間を結ぶ経路の遅延量を、前記負荷を挿入した場合と、前記負荷を挿入しない場合とについて求めるステップとを備えた、半導体集積回路の遅延情報算出方法。
  10. 前記負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入することを特徴とする、請求項9に記載の半導体集積回路の遅延情報算出方法。
  11. 経路の遅延量を求めるステップより前に、前記レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、
    経路の遅延量を求めるステップは、前記削除可能バッファの前段に位置するセルと前記削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、前記削除可能バッファを仮想的に削除した場合についても求めることを特徴とする、請求項9に記載の半導体集積回路の遅延情報算出方法。
JP2003122717A 2003-04-25 2003-04-25 半導体集積回路の低消費電力化設計方法 Withdrawn JP2004327864A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003122717A JP2004327864A (ja) 2003-04-25 2003-04-25 半導体集積回路の低消費電力化設計方法
US10/815,690 US7148135B2 (en) 2003-04-25 2004-04-02 Method of designing low-power semiconductor integrated circuit
CNA2004100351682A CN1540745A (zh) 2003-04-25 2004-04-23 设计低功耗半导体集成电路的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003122717A JP2004327864A (ja) 2003-04-25 2003-04-25 半導体集積回路の低消費電力化設計方法

Publications (2)

Publication Number Publication Date
JP2004327864A true JP2004327864A (ja) 2004-11-18
JP2004327864A5 JP2004327864A5 (ja) 2006-04-27

Family

ID=33296612

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003122717A Withdrawn JP2004327864A (ja) 2003-04-25 2003-04-25 半導体集積回路の低消費電力化設計方法

Country Status (3)

Country Link
US (1) US7148135B2 (ja)
JP (1) JP2004327864A (ja)
CN (1) CN1540745A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550978B2 (en) 2018-12-17 2023-01-10 Mitsubishi Electric Corporation Circuit design assistance system and computer readable medium

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060026543A1 (en) * 2004-07-29 2006-02-02 Texas Instruments Incorporated Accurate timing analysis of integrated circuits when combinatorial logic offers a load
JP4481155B2 (ja) * 2004-12-08 2010-06-16 パナソニック株式会社 セルの入力端子容量の算出方法、および遅延算出方法
TWI316787B (en) * 2005-04-13 2009-11-01 Via Tech Inc Method for optimizing critical path timing in a logic synthesis flow and data processing system
US7580824B1 (en) * 2005-12-21 2009-08-25 Altera Corporation Apparatus and methods for modeling power characteristics of electronic circuitry
US7802216B2 (en) * 2007-09-13 2010-09-21 Rapid Bridge Llc Area and power saving standard cell methodology
US8336015B2 (en) * 2009-09-08 2012-12-18 Synopsys, Inc. Pre-route and post-route net correlation with defined patterns
CN102339338B (zh) * 2010-07-22 2013-03-27 上海华虹集成电路有限责任公司 一种时序修复方法
CN102456087B (zh) * 2010-11-03 2013-12-04 上海华虹集成电路有限责任公司 一种建立时序修复方法
CN103412990B (zh) * 2013-08-05 2016-03-30 北京航空航天大学 一种多层次协同低功耗设计方法
US10360341B2 (en) * 2017-08-31 2019-07-23 Synopsys, Inc. Integrated metal layer aware optimization of integrated circuit designs
CN113609803B (zh) * 2021-06-20 2024-05-03 山东云海国创云计算装备产业创新中心有限公司 一种dc综合时序优化方法、装置、设备及存储介质
CN117151018B (zh) * 2023-10-25 2024-03-12 深圳鸿芯微纳技术有限公司 缓冲器和反相器的布局方法、装置和电子设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05205006A (ja) 1992-01-27 1993-08-13 Mitsubishi Electric Corp バックアノテーション装置
US5687088A (en) * 1993-05-19 1997-11-11 Matsushita Electric Industrial Co., Ltd. Net list for use in logic simulation and back annotation method of feedbacking delay information obtained through layout design to logic simulation
JP3102216B2 (ja) 1993-08-19 2000-10-23 松下電器産業株式会社 集積回路設計方法
JP2877083B2 (ja) 1996-06-27 1999-03-31 日本電気株式会社 回路設計の最適化装置
JP3209179B2 (ja) 1998-05-12 2001-09-17 日本電気株式会社 半導体集積回路の配置配線方法
US6507939B1 (en) * 2001-05-15 2003-01-14 Lsi Logic Corporation Net delay optimization with ramptime violation removal
US20040003363A1 (en) * 2002-06-27 2004-01-01 Nickolai Odilavadze Integrated circuit design and manufacture utilizing layers having a predetermined layout
US6886152B1 (en) * 2002-08-09 2005-04-26 Xilinx, Inc. Delay optimization in signal routing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550978B2 (en) 2018-12-17 2023-01-10 Mitsubishi Electric Corporation Circuit design assistance system and computer readable medium

Also Published As

Publication number Publication date
US7148135B2 (en) 2006-12-12
CN1540745A (zh) 2004-10-27
US20040216069A1 (en) 2004-10-28

Similar Documents

Publication Publication Date Title
US6543041B1 (en) Method and apparatus for reducing signal integrity and reliability problems in ICS through netlist changes during placement
US7519939B2 (en) Method and program for supporting register-transfer-level design of semiconductor integrated circuit
US6581199B2 (en) Engineering-change method of semiconductor circuit
JP2004327864A (ja) 半導体集積回路の低消費電力化設計方法
US8392861B2 (en) Method of semiconductor integrated circuit device using library for estimating timing/area to place cells
JPH1140677A (ja) クロストークエラー改善方式及び方法
CN114841104A (zh) 时序优化电路和方法、芯片及电子设备
JP3662149B2 (ja) リピータ・セルの配置方法、その配置装置、および記録媒体
US6442740B1 (en) Clock signal analysis device and clock signal analysis method
US6564353B2 (en) Method and apparatus for designing a clock distributing circuit, and computer readable storage medium storing a design program
US8560999B2 (en) Routing
US7380231B2 (en) Wire spreading through geotopological layout
CN105868438A (zh) 重新分配单元密度的方法及计算机
US7496870B2 (en) Method of selecting cells in logic restructuring
US20100083206A1 (en) Clock signal providing circuit designing method, information processing apparatus and computer-readable information recording medium
JP2018142235A (ja) 回路設計方法、及び回路設計支援装置
WO2015075805A1 (ja) ソースコード分割方法及びlsi実装装置
JP2872216B1 (ja) マクロの設計方法
CN117688893B (zh) 芯片转换时间违例修复方法、装置、电子设备及存储介质
JP3804901B2 (ja) 回路素子を配置する配置装置および方法
JP4472193B2 (ja) 集積回路におけるリピータ挿入装置、方法、記録媒体およびプログラム
JP2003091567A (ja) レイアウト設計方法
JP2000150659A (ja) 半導体集積回路装置のレイアウト設計方法
JPH06310601A (ja) レイアウト設計方法
JP2000231583A (ja) 論理合成方法及び装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060313

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090501

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20091008