JP2013182600A - 半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 - Google Patents
半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP2013182600A JP2013182600A JP2012048260A JP2012048260A JP2013182600A JP 2013182600 A JP2013182600 A JP 2013182600A JP 2012048260 A JP2012048260 A JP 2012048260A JP 2012048260 A JP2012048260 A JP 2012048260A JP 2013182600 A JP2013182600 A JP 2013182600A
- Authority
- JP
- Japan
- Prior art keywords
- cell
- semiconductor integrated
- integrated circuit
- violation
- 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.)
- Pending
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】標準セルを用いて半導体集積回路を設計する半導体設計装置において、半導体集積回路における信号経路のタイミング違反を、適切な駆動能力と適切な占有領域を有する所望のセルを用いて解消することを可能とする。
【解決手段】半導体設計装置100において、回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うセル配置配線部112と、該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出するタイミング解析部113と、該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成する追加セル作成部115とを備えた。
【選択図】図1
【解決手段】半導体設計装置100において、回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うセル配置配線部112と、該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出するタイミング解析部113と、該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成する追加セル作成部115とを備えた。
【選択図】図1
Description
本発明は、半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体に関し、特に、半導体集積回路の設計の単位となる、基本的な論理演算を行う論理回路である種々の標準セル(スタンダードセル)を回路設計データに基づいて組み合わせて半導体集積回路を設計する半導体集積回路の設計方法および設計装置、このような半導体集積回路の設計方法をコンピュータにより行うための回路設計プログラム、並びにこのような回路設計プログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
従来の各種設計ツールを用いた半導体集積回路の設計方法では、論理回路として、種々の基本的な論理演算機能を持つよう半導体領域及び配線などの配置(レイアウト)を予め設計した種々の標準セル(以下、単にセルともいう。)を用意し、用意された複数のセルの配置及びセル間の配線(セル配置配線)を、回路設計データが示す半導体集積回路が得られるようコンピュータにより自動的に行うことにより半導体集積回路を設計している。
このような半導体集積回路の設計方法では、設計した半導体集積回路が正しく動作するには、同期した動作を行う前段および後段の順序回路間の信号経路(以下、信号パスとももいう。)がタイミング制約を満たしている必要があることから、セル配置配線により一旦設計した半導体集積回路に対してタイミング解析を行い、タイミング違反が生じている箇所が見つかったときは、タイミング違反が解消するようセルや配線の配置を修正するレイアウト改善を行っている。
図13は、このような従来の半導体集積回路の設計方法を説明する図であり、一般的な設計処理のフローを示している。
なお、図13に示す各ステップの処理は、コンピュータ内にソフトウェアにより構築された各種設計ツールにより行われる。
まず、設計する半導体集積回路の演算機能を示す回路設計データを、論理回路を表す回路情報(ネットリスト)に変換する論理合成が論理合成ツールにより行われる(ステップS1)。
つまり、この論理合成では、ハードウェア記述言語などで記述された回路設計データを、演算機能を実現する論理回路における構成要素(論理ゲートや電源など)の接続関係を示すネットリストに変換する処理が、論理合成ツールにより行われる。
ここで、ネットリストは、予め登録されたセルライブラリ(既存セルライブラリ)Lrcに標準セルとして格納されている組み合わせ回路や順序回路の接続関係を示す回路図に相等するデータである。なお、組み合わせ回路は、現在の入力のみで出力が決まる論理回路であり、例えば、ANDゲートやORゲートなど基本となる論理演算を行う論理ゲートである。また、順序回路は、入力信号と、内部に保持されている過去の内部状態とで出力が決まるものであり、例えば、フリップフロップである。
次いで、ネットリストに基づいてセル配置配線が配置配線ツールにより行われる(ステップS2)。
このセル配置配線では、回路情報(ネットリスト)に従ってセルの配置及びセル間の配線が配置配線ツールにより行われる。つまり、既存セルライブラリLrcのセルを用いて、組み合わせ回路や順序回路などのセルの配置、及び配置したセル間の接続が、設計しようとする半導体集積回路を構成する半導体領域及び配線層などの構成要素のレイアウトが得られるよう行われる。
次いで、セル配置配線により得られたレイアウトを有する半導体集積回路に対するタイミング解析がタイミング解析ツールにより行われる(ステップS3)。
このタイミング解析では、半導体集積回路におけるセルの配置およびセル間の配線の配置を示すレイアウトデータから、既存セルライブラリLrcに格納されている各種セルの仕様情報(属性情報)に基づいて、実負荷データ(素子及び配線における寄生抵抗、寄生容量などの寄生成分)が求められ、この実負荷データを基に、タイミング解析ツールにより遅延情報が抽出され、半導体集積回路における各フリップフロップに信号が到達するタイミングの計算が行われる。
ここで、遅延時間は、前後段のフリップフロップ間の信号経路(パス)における遅延時間である。また、タイミング解析ツールは、タイミングの計算結果に基づいて、前後段のフリップフロップ間の遅延時間がタイミング制約を満たしているか否かを判定するタイミング検証を行い(ステップS4)、得られた半導体集積回路におけるセルおよび配線のレイアウトでタイミング制約が満たされている場合は、タイミング検証を終了し、タイミング違反が発生している場合は、既存セルライブラリLrcのセルを用いてタイミング改善ツールによりタイミング改善が行われる(ステップS5)。
つまり、このタイミング改善では、タイミング違反が解消するようレイアウトを改善する配置配線の最適化が行われる。具体的には、配置配線の最適化としては、設計されたレイアウトにおけるセルを、遅延を最適にするために駆動能力の大きいセルに差し替えるセル置換、配線長が短くなるよう現在のセルを移動するセル移動、タイミング違反パスにおける遅延時間が最適になるようこのタイミング違反パスに新たにセルを挿入するセル挿入などが行われる。
そして、最適化によって変更されたレイアウトのデータに基づいて再びタイミング解析がタイミング解析ツールにより行われる。
上記タイミング解析(ステップS3)、タイミング検証(ステップS4)、及びタイミング改善(ステップS5)は、セル配置配線、つまりセルの配置およびセル間の配線により得られた半導体集積回路におけるすべての信号パスのタイミング違反が収束するよう繰り返し行われる。このタイミング違反を解消しようとする繰り返しが半導体集積回路の設計期間の増大を招いている。
図14および図15は、図13で説明した従来の半導体集積回路の設計方法におけるタイミング改善の具体的な一例を示す図である。
例えば、図14に示すように、タイミング解析(ステップS3)の結果、フリップフロップFF1からフリップフロップFF2への信号パスDpxでセットアップタイミング違反が発生していたとする。このセットアップタイミング違反は、1つのフリップフロップFF1からその次段のフリップフロップFF2までの信号伝達が規定時間に間に合わないタイミング違反である。
この場合、タイミング改善(ステップS5)では、フリップフロップFF1からフリップフロップFF2へデータが伝わる時間(データパス遅延時間)が小さくなるように、自動配置配線により設計したレイアウトを変更する処理が行われる。
具体的には、レイアウトを変更する処理としては、タイミング制約が満たされるよう、信号パスDpxに用いられている標準セルである使用セルUax、Ubxを、既存セルライブラリLrcの既存セルA1〜A3、B1〜B3のうちで最も遅延時間の小さい同一機能のセルA1、B1に差し替える処理、セル間配線が短くなるようセルを近づける処理、あるいはクロックパスCpsの一部Wpxに、セルライブラリLrcに準備されている遅延セルCsxを挿入してクロック信号を遅らせる処理などが行われる。
また、図15に示すように、フリップフロップFF3からフリップフロップFF4への信号パスDpyにおいてホールドタイミング違反が発生していたとする。このホールドタイミング違反は、1つのフリップフロップFF3からその次段のフリップフロップFF4までの信号伝達が規定時間より早すぎるタイミング違反である。
この場合、タイミング改善(ステップS5)では、フリップフロップFF3からフリップフロップFF4へデータが伝わる時間(データパス遅延時間)が大きくなるように、セル配置配線により一旦設計したレイアウトを変更する処理が行われる。
具体的には、レイアウトを変更する処理としては、タイミング制約が満たされるよう、信号パスDpyに用いられている標準セルである使用セルUay、Ubyを、既存セルライブラリLrcの既存セルA1〜A3、B1〜B3のうちで最も遅延の大きい同一機能のセルA3およびB3に差し替える処理、セル間配線が長くなるよう配線を迂回させたり隣接するセルを遠ざけたりする処理、あるいは信号パスDpyの一部Wpyに、セルライブラリLrcに準備されている遅延セルCsyを挿入してデータ信号を遅らせる処理などが行われる。
このようにタイミング違反がある信号パスがタイミング制約を満たすようレイアウトの変更を行うと、予期せぬレイアウトの複雑化、例えば、セルの密集、多大な配線迂回、多大なセル挿入を招くことがあり、セルや配線の混雑度が上がり配線ショートを引き起こしたり、タイミング違反パスがタイミング制約を満たせないままの状態になってしまったりする。
こうなると、半導体集積回路の設計をハードウェア記述言語まで戻ってやり直すといった、設計プロセスでの大きな設計後戻りが必要となり、設計期間の増大を招いてしまう。
ところで、特許文献1及び2などには、標準セルを用いた半導体集積回路の設計方法として、設計期間を短縮する対策を施したものが開示されている。
例えば、特許文献1には、半導体集積回路修正装置において、設計期間を短縮すべく、より多くの信号パスに共通するタイミング違反個所を修正する等、回路全体を見ての修正を最初に行うことでタイミング違反総数を効果的に削減し、以後のタイミング改善の対象となる信号パスの数を削減するものが開示されている。
図16は、この特許文献1に開示の半導体集積回路修正装置を説明する図であり、図16(a)は、1組の前段及び後段のフリップフロップ(順序回路)の間の、複数のセルが配置されている信号パスを示し、図16(b)は、図16(a)に示す信号パスにおけるセルの1つを遅延時間の短いセルに置き換えた状態を示し、図16(c)は、1組の前段及び後段のフリップフロップの間に最小遅延値のセルのみが介在している信号パスを示している。
この特許文献1に開示の半導体集積回路修正装置では、例えば、図16(a)に示すように、フリップフロップ20aおよび20bの間の信号パスPaがタイミング違反を起こしている場合、このタイミング違反を起こしている信号パスPa上の複数のセル21a、22、23a、24aのうちの、より多くの信号パスに共通するタイミング違反箇所となっているセル(ここでは、セル〔1〕22)を置換対象セルとし、このセル〔1〕22を、図16(b)に示す遅延値の小さい修正セル〔1〕22aに交換することによりセットアップタイミング違反を改善することができる。
ところが、この特許文献1に開示の修正方法では、セットアップタイミング違反については、より多くの信号パスに共通するタイミング違反箇所となっているセル〔1〕22に、既存セルライブラリにおける最小遅延値のセルが用いられている場合や、図16(c)に示すようにタイミング違反を起こしているパス信号Paが、既存セルライブラリのセルのうちの、個々の論理機能を実現する最小遅延値のセル21a、22a、23a、24aのみで構成されている場合は、既存セルライブラリには、違反個所を修正するための、信号パスに使用されているセルの遅延値よりも遅延が小さい同じ機能のセルがなく、セル交換することができなくなる。
また、ホールドタイミング違反についても、セットアップタイミング違反の場合と同様であり、タイミング違反パスPaが、既存セルライブラリのセルのうちの最大遅延値のセルのみで構成されている場合は、既存セルライブラリには、最大遅延値のセルから違反個所を修正するための最大遅延値よりも遅延が大きいセルがなく、セル交換することができなくなる。
このように特許文献1に開示の修正方法は、設計したレイアウトを有する半導体集積回路がタイミング制約を満たすようタイミング違反を改善する対策としては不十分なものである。
また、特許文献2には、半導体装置の設計方法において、設計期間を短縮すべく、既存セルライブラリには、同一機能を有する駆動能力の異なるセルとして、占有面積及び端子のレイアウトが同じセルを複数準備しておき、セルの置き換えを行った後の再度の配置配線を不要としたものが開示されている。
例えば、図17は、既存セルライブラリの予め準備されているセルを説明する図であり、図17(a)から図17(c)はそれぞれ、駆動能力が異なる、占有領域及び端子の配置、形状が同じセルCef1a、Cef1b、Cef1cを示し、図17(d)は、図17(a)〜図17(c)に示すセルCef1a〜Cef1cより駆動能力が高く、かつ占有領域及び端子の配置が異なるセルCef1xを示している。
図18は、既存セルライブラリの予め準備されているセルとして、図17に示すセルとは機能が異なるセルを説明する図であり、図18(a)から図18(c)はそれぞれ、駆動能力が異なる、占有領域及び端子の配置や形状が同じセルCef2a、Cef2b、Cef2cを示し、図18(d)及び図18(e)は、図18(a)〜図18(c)に示すセルCef2a〜Cef2cより駆動能力が低く、かつ占有領域及び端子の配置あるいは形状が異なるセルCef2x及びCef2yを示している。
この特許文献2に開示の設計方法では、例えば、登録セルとして、図17(a)〜図17(c)に示すように、同一の演算機能(例えば、2段のCMOSインバータからなる第1のバッファ回路)、同一の回路占有領域(縦横レイアウト寸法)、同一の端子配置および同一の端子形状を有し、かつそれぞれの駆動能力が異なっている複数のセルCef1a、Cef1b、Cef1cを既存セルライブラリに準備しておく。
そして、タイミング違反した箇所のセル、例えば、図17(a)に示す基準セルCef1aを図17(b)に示す、該基準セルとは駆動能力のみ異なるセルCef1bに差し替える。
この場合、タイミング違反した箇所のセルCef1aと、これと置き換えるセルCef1bとは、駆動能力が異なるのみで、回路占有領域(縦横レイアウト寸法)、端子配置および端子形状が同一であるため、セルを置き換えた後に再度の配置配線を行う必要がなく、タイミング違反を改善する処理工程が簡略化されることとなる。
なお、図17(a)に示すセルCef1aとは回路構成が異なる図18(a)に示すセルCef2aが、タイミング違反した箇所のセルである場合も同様にタイミング違反を改善できる。
つまり、例えば、登録セルとして、図18(a)〜図18(c)に示すように、同一の演算機能(例えば、上記第1のバッファ回路とは構成が異なる、2段のCMOSインバータからなる第2のバッファ回路)、回路占有領域(縦横レイアウト寸法)、端子配置および端子形状を有し、かつそれぞれの駆動能力が異なっている複数のセルCef2a、Cef2b、Cef2cを既存セルライブラリに格納しておく。
そして、タイミング違反したパスのセル、例えば、図18(a)に示す基準セルCef2aを図18(b)に示す、該基準セルCef2aとは駆動能力のみ異なるセルCef2bに差し替える。
この場合、タイミング違反した箇所のセルCef2aと、これと置き換えるセルCef2bとは、駆動能力が異なるのみで、回路占有領域(縦横レイアウト寸法)、端子配置および端子形状が同一であるため、セルを置き換えた後に再度の配置配線を行う必要がなく、タイミング違反を改善する処理工程が簡略化されることとなる。
ところが、特許文献2に開示の方法は、既存セルライブラリに準備しておく同一機能のセルを、回路占有領域、端子配置および端子形状が同一のものとするという制約のため、図17(d)に示すような、回路占有領域、端子形状を変えた、より駆動能力の大きなセルCef1xを準備することができず、タイミング違反を改善するには不十分な場合がある。
更に図18(d)、図18(e)に示すような、基準セルCef2aとは回路占有領域のレイアウトを変更したセルCef2x、Cef2yを基準セルCef2aに代えて用いることで、回路占有領域を小さくすることができる場合であっても、この特許文献2に開示の設計方法では、基本セルと置き換える代替セルを、基本セルと回路占有領域のレイアウトが同じものとするという制約があるため、セルの置き換えによりセル面積は変化せず、このため、セルをその駆動能力が小さいものに置き換えても、面積縮小のメリットを得ることができない。
以上説明したように、図13で説明した従来の半導体集積回路の設計方法では、タイミング解析の結果、タイミング違反パスがある場合、タイミング違反パスのセルと既存セルライブラリのセルとの置き換え、セル間配線を変更するためのセルの移動、あるいはクロックパスあるいはデータパスへのセル挿入によるクロック信号あるいはデータ信号の遅延など行ってタイミング違反の改善を行うが、このようなタイミング改善の処理を行うと、予期せぬセルの密集、多大な配線迂回、あるいは多数のセル挿入箇所が生ずることがあり、配置セル及び配線の混雑度が上がり配線ショートを引き起こしたり、タイミング制約を満たせないままの状態になってしまったりする。その結果、ハードウェア記述言語まで戻ってレイアウトの設計を変更するなど、設計プロセスでの大きな設計後戻りが必要となり、設計期間の増大を招いてしまうという問題がある。
また、特許文献1に開示の半導体集積回路の設計方法では、セットアップタイミング違反については、違反個所のセルより遅延が小さいセルが既存セルライブラリにない場合、また、ホールドタイミング違反については、違反個所のセルより遅延が大きいセルが既存セルライブラリにない場合、セルの交換をすることができない。
このように特許文献1に開示の方法は、設計したレイアウトを有する半導体集積回路がタイミング制約を満たすようタイミング違反を改善する対策としては不十分な場合があるという問題がある。
さらに、特許文献2に開示の半導体集積回路の設計方法は、信号パスに使用されているセルと置き換えるセルには、使用されているセルと回路占有領域のレイアウトが同じものを用いるものであるので、セルの置き換えによりセル面積は変化せず、例えば、信号パスのセルをそれより駆動能力の小さいセルに置き換えても面積縮小のメリットを得ることができないという問題がある。
本発明は、上記のような問題点を解決するためになされたものであり、標準セルを用いて半導体集積回路を設計する際、信号経路におけるタイミング違反を、適切な駆動能力と適切な占有領域を有する所望のセルを用いて解消することが可能となり、これにより、セルの占有面積が不必要に大きくなるのを回避しつつタイミング違反を簡単に解消することができ、その結果、半導体集積回路の設計期間をより一層短縮することができる半導体集積回路の設計方法及び設計装置、並びにこのような半導体集積回路の設計方法をコンピュータにより行うための回路設計プログラムおよびこのような回路設計プログラムを格納したコンピュータ読み取り可能な記録媒体を得ることを目的とする。
本発明に係る半導体集積回路の設計方法は、回路設計の単位として複数種類の標準セルを予め格納した記憶装置を準備し、該記憶装置に含まれる標準セルを情報処理装置により組み合わせて半導体集積回路を設計する方法であって、回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うステップと、該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出するステップと、該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成するステップと、該置換対象セルを、該違反経路が該タイミング違反を解消した経路となるよう該追加標準セルで置き換えるステップとを含むものであり、そのことにより上記目的が達成される。
本発明は、上記半導体集積回路の設計方法において、前記半導体集積回路における信号経路は、その始点および終点となる論理回路をそれぞれ第1および第2の順序回路とし、該第1の順序回路から該第2の順序回路に信号を伝達する論理回路を1以上の組み合わせ回路により構成したものであることが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記違反経路を検出するステップでは、該違反経路におけるタイミング違反が、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間に間に合わないセットアップタイミング違反であるか、該第1の順序回路から該第2の順序回路までの信号伝達が規定時間より早すぎるホールドタイミング違反であるかを判定することが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記違反経路を検出するステップでは、該違反経路におけるタイミング違反が、前記セットアップタイミング違反であるか前記ホールドタイミング違反であるかを判定するとともに、判定したタイミング違反の程度を、該信号伝達に要する時間と前記規定時間との時間差として検出することが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記違反経路として、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間に間に合わないセットアップタイミング違反が生じている違反経路が検出されたとき、前記追加標準セルを作成するステップでは、該違反経路における置換対象セル毎に、該置換対象セルの駆動能力より高い駆動能力を有する追加標準セルを1つ以上作成することが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記置換対象セルを前記追加標準セルで置き換えるステップでは、該置換対象セルを、該置換対象セル毎に複数作成した追加標準セルのうちで遅延時間が最小の追加標準セルに置き換えることが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記違反経路として、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間より早すぎるホールドタイミング違反が生じている違反経路が検出されたとき、前記追加標準セルを作成するステップでは、該違反経路における置換対象セル毎に、該置換対象セルの駆動能力より低い駆動能力を有する追加標準セルを1つ以上作成することが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記置換対象セルを前記追加標準セルで置き換えるステップでは、該置換対象セルを、該置換対象セル毎に複数作成した追加標準セルのうちで遅延時間が最大の追加標準セルに置き換えることが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記順序回路はフリップフロップ回路であることが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記追加標準セルを生成するステップは、生成した追加標準セルからなる新規セルライブラリを、前記記憶装置内に作成されている前記既定標準セルからなる既存セルライブラリに加えて前記記憶装置内に作成するステップを含むことが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記記憶装置は、1つの半導体集積回路を設計する際に作成された新規セルライブラリを、次回の半導体集積回路の設計で流用可能となるよう保存する構成となっており、前記置換対象セルを前記追加標準セルで置き換えるステップでは、前記記憶装置に保存されている、前記既存セルライブラリおよび以前の半導体集積回路の設計で作成した新規セルライブラリに含まれる、既存標準セルおよび追加標準セルのうちから選択した標準セルで、前記置換対象セルを置き換えることが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記追加標準セルを作成するステップでは、該追加標準セルとして、該置換対象セルとは駆動能力が異なるとともに、該置換対象セルとはその占有面積が異なる1以上の追加標準セルを該置換対象セル毎に作成することが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記違反経路を検出するステップでは、前記標準セルの配置及び該標準セル間の配線を行って得られた半導体集積回路における信号経路が、タイミング違反が生じている違反経路であるか否かの判定を、該半導体集積回路におけるすべての信号経路で行うことが好ましい。
本発明は、上記半導体集積回路の設計方法において、前記追加標準セルを作成するステップは、前記違反経路におけるすべての種類の標準セルに対応する、その構成部材の配置を示す配置情報を抽出するステップと、該すべての種類の標準セルに対して、それぞれの配置情報に基づいて、それぞれの標準セルと同じ論理演算を行い、かつ駆動能力が該標準セルとは異なる1以上の追加標準セルの配置情報を作成するステップとを含むことが好ましい。
本発明に係る半導体集積回路の設計装置は、回路設計の単位として複数種類の標準セルを予め格納した記憶装置を有し、該記憶装置に含まれる標準セルを組み合わせて半導体集積回路を設計する半導体集積回路の設計装置であって、回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うセル配置配線部と、該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出する違反経路検出部と、該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成する追加セル作成部と、該置換対象セルを、該違反経路が該タイミング違反を解消した経路となるよう該追加標準セルで置き換えるセル置き換え部とを備えたものであり、そのことにより上記目的が達成される。
本発明に係る回路設計プログラムは、上述した本発明に係る半導体集積回路の設計方法における各ステップをコンピュータにより行うための回路設計プログラムであり、そのことにより上記目的が達成される。
本発明に係るコンピュータ読み取り可能な記録媒体は、上述した本発明に係る回路設計プログラムを記録したコンピュータ読み取り可能な記録媒体であり、そのことにより上記目的が達成される。
次に作用について説明する。
本発明においては、回路設計の単位として複数種類の標準セルを予め格納した記憶装置を準備し、該記憶装置に含まれる標準セルをコンピュータにより組み合わせて半導体集積回路を設計する方法において、回路設計データに基づいて標準セルの配置及び該標準セル間の配線を行って得られる半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出し、その後、違反経路に含まれる標準セルと置き換える追加セルとして、違反経路の標準セルと同じ論理の演算を行い、かつこの違反経路の標準セルとは駆動能力が異なる1以上の追加標準セルを作成するようにしたので、予め準備した標準セル以外の追加標準セルを用いて、タイミング違反が生じている違反経路のタイミング違反を取り除くことが可能となり、このように違反経路のタイミング改善に用いるセルの選択枝が広がることから、違反経路のタイミング改善をより容易に行うことができる。
また、この発明においては、違反経路を検出する際には、違反経路におけるタイミング違反が、第1の順序回路から第2の順序回路までの信号伝達が規定時間に間に合わないセットアップタイミング違反であるか、第1の順序回路から第2の順序回路までの信号伝達が規定時間より早すぎるホールドタイミング違反であるかを判定するので、タイミング解析の結果からタイミング違反パスの改善に有効と判断される駆動能力を有するもののみを追加標準セルとして作成することが可能となり、このような追加標準セルを用いることで効果的にタイミング違反パスの改善を行うことができる。
また、この発明においては、違反経路を検出する際には、違反経路におけるタイミング違反が、上記セットアップタイミング違反であるか上記ホールドタイミング違反であるかを判定するとともに、判定したタイミング違反の程度を、信号伝達に要する時間と前記規定時間との時間差として検出するので、作成する追加セルの駆動能力の目標値を、タイミング違反の程度を考慮して設定し、追加セルの駆動能力を、該目標値を中心とする一定範囲内で駆動能力を段階的に変化させて設定することで、タイミング違反パスを改善するための追加セルとして、タイミング違反を解消可能なものが得られる一方で駆動能力が大きすぎたりあるいは小さすぎたりするといった弊害を回避することができる。
また、本発明においては、1つの半導体集積回路を設計する際に作成された新規セルライブラリを、次回の半導体集積回路の設計で流用可能となるよう記憶装置内に保存するようにしたので、半導体集積回路を開発する毎に新規セルライブラリが1つ、2つ、3つというように増え、より一層タイミング調整を行う際のセルの選択肢が増え、タイミング改善の容易性が上がり、タイミング改善を必要とするパスの効果的な削減により設計期間の短縮を図ることができる。
以上のように、本発明によれば、コンピュータなどの演算処理装置により、回路設計データに基づいて標準セルの配置及び該標準セル間の配線を行って半導体集積回路を設計する際、標準セルの配置及び該標準セル間の配線により得られる半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出し、その後、違反経路に含まれる標準セルと置き換える追加セルとして、違反経路の標準セルと同じ論理の演算を行い、かつこの違反経路の標準セルとは駆動能力が異なる1以上の追加標準セルを作成するようにしたので、標準セルを用いて半導体集積回路を設計する際、信号経路におけるタイミング違反を、適切な駆動能力と適切な占有領域を有する所望のセルを用いて解消することが可能となり、これにより、セルの占有面積が不必要に大きくなるのを回避しつつタイミング違反を簡単に解消することができる効果が得られる。
その結果、半導体集積回路の設計期間をより一層短縮することができる半導体集積回路の設計手法及び設計装置、並びにこのような半導体集積回路の設計方法をコンピュータにより行うための回路設計プログラムおよびこのような回路設計プログラムを格納したコンピュータ読み取り可能な記録媒体を実現することができる。
以下、本発明の実施形態について図面を参照しながら説明する。
(実施形態1)
図1は、本発明の実施形態1による半導体集積回路の設計装置を説明する図である。
図1は、本発明の実施形態1による半導体集積回路の設計装置を説明する図である。
この実施形態1による半導体集積回路の設計装置(以下、半導体設計装置ともいう。)100は、種々の演算処理を行うプロセッサ(CPU)110、演算処理に用いるデータおよび演算処理の結果得られるデータを格納する、RAM、ハードディスクなどからなる記憶装置120、並びに入力装置及び出力装置(図示せず)を有するコンピュータシステムにより実現されている。
この半導体設計装置100は、記憶装置120に、回路設計の単位となる機能が異なる種々の単位回路(標準セル)の回路情報およびこの単位回路の属性情報をセル情報として格納し、プロセッサ110により、この記憶装置120にセル情報が格納されている標準セルを回路設計データに基づいて組み合わせて半導体集積回路を設計するものである。なお、以下、標準セルを単にセルともいう。
すなわち、この半導体設計装置100は、ハードウェア記述言語などで記述された回路設計データを、この回路設計データが示す論理回路の回路情報(つまり論理回路における構成要素(論理ゲートや電源など)の接続関係を示すネットリスト)に変換する論理合成部111と、このネットリストに基づいて、半導体集積回路が構成されるようセルの配置及びセル間の配線を行う配置配線部112とを有している。
また、半導体設計装置100は、半導体集積回路における信号経路(以下、信号パスともいう。)のうち、タイミング制約を満たしていない違反経路(タイミング違反パス)を検出するタイミング解析部(違反経路検出部)113と、タイミング違反パスに使用されているすべての種類のセルを抽出する使用セル抽出部114と、抽出したセルと同じ論理演算を行い、かつ駆動能力が、抽出したセルとは異なる1以上の追加標準セル(以下、追加セルという。)を生成する追加セル生成部115と、タイミング違反パスに使用されているセルを、このタイミング違反パスがタイミング制約を満たすパスとなるよう該追加セルで置き換えるタイミング改善部116とを備えている。
なお、以下の説明では、記載の簡略化のため、セルの配置及びセル間の配線をセル配置配線ともいい、さらに、信号パスに使用されているセルを使用セルともいう。
ここで、タイミング解析部113は、セル配置配線により得られた配置情報(レイアウトデータ)に基づいて、記憶装置120に格納されているセル情報を参照して、半導体集積回路における各信号パスの実負荷データ(寄生抵抗および寄生容量)を求める実負荷抽出部113aと、求めた実負荷データと、記憶装置120に格納されているセル情報とから信号パスでの遅延時間を求め、信号パスがタイミング制約を満たしているか否かの検証を半導体集積回路におけるすべての信号パスに対して行うタイミング検証部113bとを有している。
記憶装置120は、論理合成部111で生成したネットリストを格納するネットリスト格納部122と、配置配線部112でセル配置配線により得られた、半導体集積回路のレイアウトを示すレイアウトデータを格納するレイアウトデータ格納部123と、レイアウトデータに基づいて実負荷抽出部113bで抽出した実負荷データを格納する実負荷データ格納部124とを有している。また、記憶装置120は、予め登録セルとして、決められた論理演算機能を有する標準セルの回路情報およびその属性情報をセル情報として格納している既存セルライブラリ121と、追加セル作成部115で作成した追加セルの回路情報およびその属性情報を追加セルのセル情報として格納する新規セルライブラリ125とを有している。
さらに、上記プロセッサ110は、該プロセッサ110を構成する各部111〜116を制御するとともに、各部と記憶装置120との間でのデータの受け渡しを行う制御部130を有している。
ここで、各処理を実行する各部111〜116は、プロセッサ110内にソフトウェアによりツールとして構築したものである。また、新規セルライブラリ125は、既存セルライブラリ121に対して単に追加したセルライブラリであり、コンピュータシステム上で動く汎用の設計支援システムのタイミング解析部及びタイミング改善部でも利用可能なものである。
ここで、各部の処理を実行するツールを構築するためのプログラムは、回路設計プログラムであって、ROM、RAM、あるいはハードディスクなどのコンピュータ読み取り可能な記録媒体に格納したものであり、プロセッサ110がこの記録媒体からこの回路設計プログラムを読み出すことによりプロセッサ内に前記各処理を実行する各部111〜116がツールとして構築される。
図2は、セルライブラリに格納されるセル情報について、インバータセルを例に挙げて具体的に説明する図である。
図2に示すセル情報Ce1、Ce1a、Ce1bは、駆動能力が異なる3つのインバータセルX1、X1a、X1bに関する情報であり、それぞれ、(セル名)、(論理記号)、(回路図)、(レイアウト)、及び(属性)などを示すデータを含んでいる。
例えば、セル情報Ce1は、セル名〔セルX1〕データNx1、論理記号データSx1、回路図データCx1、レイアウトデータLx1、セル属性データPx1などを含んでいる。同様に、セル情報Ce1aは、セル名〔セルX1a〕データNx1a、論理記号データSx1a、回路図データCx1a、レイアウトデータLx1a、属性データPx1aなどを含んでおり、セル情報Ce1bは、セル名〔セルX1b〕データNx1b、論理記号データSx1b、回路図データCx1b、レイアウトデータLx1b、属性データPx1bなどを含んでいる。
ここで、レイアウトデータは、インバータを構成するCMOS回路における拡散領域、ゲート電極、配線、コンタクトホールの配置パターンを示す情報である。
つまり、図2では、PMOSトランジスタMP1およびNMOSトランジスタMN1からなるCMOSインバータ回路のレイアウト構成例が示されている。PMOSトランジスタMP1およびNMOSトランジスタMN1のゲートは入力端子INとなり、PMOSトランジスタMP1およびNMOSトランジスタMN1のドレインは出力端子OUTとなる。セルX1は基準となるセルレイアウトLx1を有しており、セルX1aおよびX1bは、それぞれセルX1のセルレイアウトに対してゲート幅(W)を変更することで駆動能力(遅延時間)を変更したセルレイアウトを有している。
ここでは、これらの3つのセルはいずれも、回路占有領域(縦横レイアウト寸法)は同じであり、第1メタル配線層M1で形成される入力端子INおよび出力端子OUTの配置および形状も同じとなっている。セルX1aでは、セルX1に比べてPMOSトランジスタMP1を構成するP型半導体領域DFPの寸法と、NMOSトランジスタMN1を構成するN型半導体領域DFNの寸法が小さくなっている。セルX1bでは、セルX1に比べてPMOSトランジスタMP1を構成するP型半導体領域DFPの寸法と、NMOSトランジスタMN1を構成するN型半導体領域DFNの寸法が大きくなっている。なお、図2中、POは、トランジスタのゲートを構成するポリシリコン層であり、CTはコンタクト層である。さらに、属性データPx1、Px1a、Px1bは、それぞれのインバータセルCe1、Ce1a、Ce1bにおける遅延時間、駆動能力、入力端子や出力端子の寄生抵抗、寄生容量などを示す情報を含んでいる。
次に動作について説明する。
図3は、本実施形態1による半導体集積回路の設計方法を説明する図であり、上記設計装置により行われる設計処理のフローを示している。
まず、論理合成(ステップS1)及び配置配線(ステップS2)が、従来の半導体集積回路の設計方法と同様に、既存セルライブラリ121を使用して行われる。
つまり、論理合成(ステップS1)では、ハードウェア記述言語(HDL)などで記述された回路設計データをネットリストに変換する処理が、論理合成部111により行われる。ここで、ネットリストは、ハードウェア記述言語(HDL)などで記述された回路機能を実現する論理回路であって、既存セルライブラリ121に格納されているセルである組み合わせ回路や順序回路を接続して得られる論理回路を示す回路情報である。
続く配置配線(ステップS2)では、ネットリストにより示された接続関係に従って、既存セルライブラリ121のセルを用いたセル配置配線が配置配線部112により行われる。つまり、既存セルライブラリ121に格納されているセル情報に基づいて、組み合わせ回路や順序回路などのセルの配置、及び配置したセル間の配線が行われ、設計対象である半導体集積回路におけるセルおよび配線のレイアウトが決定され、このレイアウトを示すレイアウトデータがレイアウトデータ格納部123に格納される。
この配置配線後の一回目のタイミング解析では、タイミング解析部113が、既存セルライブラリ121のセル情報のみを用いて、セルおよび配線のレイアウトが決定された半導体集積回路(論理回路)における各信号パスに対するタイミング解析を行う。
つまり、タイミング解析部113が既存セルライブラリ121のみを使用して、前段および後段の順序回路(フリップフロップ)間における信号パス上の個々の種類のセルの属性情報である遅延情報を抽出し(ステップS3)、この信号パスがタイミング制約を満たしているか、つまりこの信号パスの始点となる前段フリップフロップからこの信号パスの終点となる後段フリップフロップとの間での信号遅延時間が、タイミング制約を満たすものであるか否かを判定する(ステップS4)。
より具体的には、このタイミング解析では、実負荷抽出部113aが、半導体集積回路におけるセルの配置およびセル間の配線の配置を示すレイアウトデータに基づいて、既存セルライブラリ121にセル情報として格納されている各種セルの仕様情報を参照して、実負荷データ(素子及び配線における寄生抵抗、寄生容量などの寄生成分)を求め、タイミング検証部113bが、この実負荷データを基に各信号パスにおける遅延情報を抽出し、各フリップフロップに信号が到達するタイミングの計算を行う。
その結果、タイミング違反が発生していない場合は、タイミング検証を終了し、一方、タイミング違反が発生していた場合、使用セル抽出部114がタイミング違反パス上の使用セルに関するセル情報を抽出する(ステップS11)。
例えば、図5あるいは図6に示すように、半導体集積回路における信号パスDpxあるいはDpyがタイミング違反を起こしていると、使用セル抽出部114は、1つのフリップフロップ(前段フリップフロップ)FF1から次段のフリップフロップ(後段フリップフロップ)FF2までの信号パスDpx上にある全てのセル(使用セル)に関するセル情報を既存セルライブラリ121から抽出する。
次に、追加セル作成部115が、上記使用セルとは駆動能力の異なる追加セルを新たに作成する処理を行う(ステップS12)。
この駆動能力の異なる追加セルを新たに作成する処理では、作成された追加セルを示す回路情報およびその属性情報が追加セルのセル情報として新規セルライブラリ125に格納される。
具体的には、前工程(ステップS11)でセル情報が抽出された使用セルについて、機能が同じで、駆動能力の小さな追加セル、あるいは機能が同じで駆動能力の大きな追加セルなど、図5あるいは図6に示すように伝播遅延時間が使用セルとは異なる追加セルを多数新たに作成し、その回路情報および属性情報を追加セルのセル情報として新規セルライブラリ125に格納する。
このような使用セルとは駆動能力の異なる追加セルの作成は、タイミング違反パス上で使用されている全ての種類の使用セルについて行う。
次のタイミング改善(ステップS5)では、各タイミング違反パスにおけるタイミングの最適化が行われる。
具体的には、タイミング改善部116は、既存セルライブラリのセルとは駆動能力の異なる追加セルのセル情報が格納されている新規セルライブラリ125を使用して、タイミング違反パス上の使用セルを、このタイミング違反パスがタイミング制約を満たすものとなるように、機能が同じで遅延時間の異なる追加セルと置き換えるセル置換処理や、使用セル間に配置された配線のレイアウトを変更する配線変更処理などを行う。これにより、セルの配置、およびセル間の配線の最適化が行われ、信号パスでの遅延時間が最適なものになる。
次いで、再びタイミング解析処理(ステップS3)が行われる。このとき、タイミング解析部103は、既存セルライブラリ121と新たに加わった新規セルライブラリ125の両方を使用して、各信号パスの遅延情報を抽出し、各信号パスがタイミング制約を満たしているか判定する。各信号パスがタイミング制約を満たしていれば、設計の対象とした半導体集積回路の設計は完了し、この設計装置100は次の設計段階に進む。
一方、タイミング制約を満たしていない信号パスがある場合は、タイミング違反パス上の使用セルのセル情報を抽出し(ステップS11)、セル情報を抽出した使用セルと同一機能であって異なる駆動能力を有する追加セルを新たに作成してそのセル情報を新規セルライブラリに追加し(ステップS12)、作成した追加セルを用いてタイミング改善処理を行い(ステップS5)、その後、再びタイミング解析処理(ステップS3)を行う。
上述のように新規セルライブラリが加わることにより、タイミング調整を行う際のセルの選択肢が増え、予め登録されたセルライブラリだけでは改善しきれなかったタイミング違反を取り除くことできる。
なお、上記使用セルとは駆動能力の異なる追加セルを新たに作成する処理(ステップS12)は、タイミング違反パスがある場合には、タイミング違反パス上の使用セルのセル情報を抽出した後、既存セルライブラリあるいはすでに作成した新規セルライブラリに格納されているセルのセル情報を用いて必ず行うようにしてもよいが、以下で図5および図6を用いて説明するように、タイミング違反パス上の使用セルを、既存セルライブラリあるいはすでに作成した新規セルライブラリにセル情報が格納されている既存セルと置き換えても、タイミング違反が解消されない場合のみ、上記使用セルとは駆動能力の異なる追加セルを新たに作成する処理(ステップS12)を行うようにしてもよい。
また、タイミング違反パスがある場合に、既存セルライブラリあるいはすでに作成した新規セルライブラリにセル情報が格納されている既存セルに、上記タイミング違反パスの使用セルと置き換えるべき特性(駆動能力あるいはセル占有面積)を有するものがないときは、上記使用セルとは駆動能力の異なる追加セルを新たに作成する処理(ステップS12)を必ず行う。
以下、本実施形態1による設計装置で行うセル作成処理およびタイミング改善処理の一例について具体的に説明する。
まず、セル作成処理の具体例について説明する。
図4は、既存セルライブラリ121にセル情報が格納されている既存セルとしてのNANDセルから、該NANDセルと同じ論理の演算を行い、かつ駆動能力の異なる追加セルを作成する処理を説明する図である。
例えば、使用セル抽出部114が、タイミング違反パスにおける使用セルの1つとして、既存セルライブラリ121にセル情報が格納されているNANDセルC1を抽出した場合、追加セル作成部115は、既存セルライブラリ121に格納されているこのNANDセルC1のセル情報(セル名データ(図示せず)、論理記号データSc1(図4(a))、回路図データCc1(図4(b))、レイアウトデータLc1(図4(c))、属性データ(図示せず)など)に基づいて、このNANDセルC1とは同じ論理の演算を行い、かつ駆動能力が異なる追加セルのセル情報を新たに作成し、この追加セルのセル情報を新規セルライブラリ125に格納する。
図4(d)〜図4(f)はそれぞれ、例えば、既存セルC1とは駆動能力のみ異なる第1〜第3の追加セルを作成したときの、各追加セルのレイアウトLc1a、Lc1b、Lc1cを示している。
なお、図4(a)〜図4(f)中、MP1aおよびMP1bは、NANDセルC1を構成するPMOSトランジスタ、MN1aおよびMN1bは、NANDセルC1を構成するNMOSトランジスタであり、IN1およびIN2はこのNANDセルの入力端子、OUTはその出力端子であり、これらの端子は第1層メタル層M1により構成されている。また、DFPは、PMOSトランジスタMP1aおよびMP1bを構成するP型半導体領域、DFNは、NMOSトランジスタMN1aおよびMN1bを構成するN型半導体領域、POは、トランジスタのゲート電極を構成するポリシリコン層であり、CTはコンタクト層である。
第1の追加セルのレイアウトLc1aでは、既存セルC1のレイアウトLc1に比べて、P型半導体領域PFNおよびN型半導体領域DFNのゲート幅W方向の寸法が小さくなっている。
また、第2の追加セルのレイアウトLc1bでは、既存セルC1のレイアウトLc1に比べて、N型半導体領域DFNのゲート幅W方向の寸法のみ小さくしており、第3の追加セルのレイアウトLc1cでは、既存セルC1のレイアウトLc1に比べて、P型半導体領域DFPのゲート幅W方向の寸法のみ小さくしており、第1〜第3の追加セルは、既存セルC1に対して駆動能力を変更したものとなっている。
上記追加セル作成部115は、このような追加セルのレイアウトLc1a〜Lc1cを既存セルC1のレイアウトLc1に基づいて作成する。
そして、変更した追加セルのレイアウト情報に基づいて、既存セルの駆動能力や遅延時間などの属性情報を変更したものとして追加セルの属性情報を作成し、作成した追加セルのセル情報として、セル名データおよび回路図データとともに、レイアウトデータおよび属性情報を新規セルライブラリ125に格納する。
また、図4では、追加セルのレイアウトLc1a〜Lc1cとして、既存セルの占有面積(つまり縦横のサイズ)と追加セルの占有面積(つまり縦横のサイズ)とが同一であるものを示しているが、本発明では、追加セルのレイアウトLc1a〜Lc1cを、追加セルの占有面積が既存セルのものと同一になるよう作成しなければならないという制約はなく、追加セルのレイアウトは、追加セルの占有面積(つまり縦横のサイズ)をその駆動能力に応じたものとした、既存セルのものと異なるレイアウトでもよい。
次に、タイミング改善の具体例について説明する。
まず、セットアップタイミング違反およびその改善について説明する。
タイミング解析の結果、図5に示すように、フリップフロップFF1からフリップフロップFF2への信号パスDpxにて、セットアップタイミング違反が発生していたとする。
セットアップタイミング違反は、後段のフリップフロップがクロック信号変化の前にデータを保持しなければならない時間を十分に確保できないため、フリップフロップが正しいデータをラッチすることができないエラーであり、図7は、セットアップタイミング違反の説明図である。
ここで、クロックCKの周期は例えば10nsとする。図5に示す前段フリップフロップFF1の出力QはクロックCKの立下りより1ns遅れて変化する。2つのフリップフロップの間での信号遅延は、これらの間のセルの遅延値を合計した値で、例えば8.5nsとする。ここで後段フリップフロップFF2のセットアップタイム(データDをラッチするためのクロックの立下りの前に必要となる、データDが変化しない期間)は1nsとする。この場合、図7(a)に示すように、クロックCKの立下り前、1ns以内にデータDが変化するとエラーとなる。例えば、フリップフロップF22の入力のデータDがクロックCKの立下りより0.5ns前のところで変化すると、セットアップタイミング違反が発生する。
そこで、これらの2つのフリップフロップ間での信号遅延時間を短縮することにより、セットアップタイミング違反を回避することができる。
図7(b)は、図7(a)に示すセットアップタイミング違反を回避したことを説明する図である。信号遅延時間8.5nsを1ns短縮し、7.5nsにすることにより、セットアップタイムに対して0.5nsの余裕ができることがわかる。
従って、図3に示すタイミング改善(ステップS5)では、フリップフロップFF1からフリップフロップFF2へデータが伝わる時間が小さくなるように、先ず既存セルライブラリ121のセルを用いて、タイミング違反パスDpxにおける使用セルを最も遅延の小さいセルに差し替える。
具体的には、1回目のタイミング解析でタイミング違反パスが検出されたとき、図5に示すように、タイミング違反パスDpxにおける使用セル(遅延時間0.10ns)Uaxからセル(遅延時間0.09ns)A1への差し替え、およびタイミング違反パスDpxにおける使用セル(遅延時間0.14ns)Ubxからセル(遅延時間0.12ns)B1への差し替えを行う。なお、このセルに差し替えは、追加セルを作成する前に行う。
そして、2回目のタイミング解析で、この差し替えでも違反改善が成されないと判定されたときは、タイミング違反パスDpx上の使用セルを抽出し、セルUaxと同一機能で駆動能力が異なる、細分化された追加セルNA1〜NA5を新たに作成し、また、セルUbxと同一機能で駆動能力が異なる、細分化された追加セルNB1〜NB6を新たに作成して、それぞれのセル情報を新規セルライブラリ125に格納する。
次いで、新規セルライブラリ125にセル情報が含まれる追加セルNA1〜NA5およびNB1〜NB6を用いて、タイミング違反パスDpxにおけるセルから最も遅延の小さいセルへの差し替えを行う。
具体的には、セル(遅延時間0.09ns)A1からセル(遅延時間0.08ns)NA1への差し替え、およびセル(遅延時間0.12ns)B1から追加セル(遅延時間0.10ns)NB1への差し替えを行う。このように新規セルライブラリ125が加わることにより、タイミング調整を行う際の選択肢が増え、予め登録された既存セルライブラリ121だけでは改善しきれなかったタイミング違反を取り除くことできる。
次に、ホールドタイミング違反およびその改善について簡単に説明する。
タイミング解析の結果、図6に示すように、フリップフロップFF3からフリップフロップFF4への信号パスDpyにて、ホールドタイミング違反が発生していたとする。
ホールドタイミング違反は、クロック信号の変化後に、データを正しくラッチするために必要な時間を十分確保できないエラーであり、図8は、このエラーの説明図である。
ここで、クロックCKの周期は10nsとする。また、ホールドタイム(データDをラッチするためのクロックの立下りタイミング以降に必要となる、データDが変化しない期間)は1.5nsとする。この場合、クロックCKの立下りから1.5ns以内でデータDが変化するとホールドタイミング違反となる。例えば、図8(a)では、データDはクロックCKの立下りから0.5nsのところで変化しているので、ホールドタイミング違反が発生する。
そこで、これらの2つのフリップフロップ間での信号遅延を大きくすることにより、ホールドタイミング違反を回避することができる。
図8(b)は、図8(a)に示すホールドタイミング違反を回避したことを説明する図である。信号遅延時間8.5nsを2ns遅くし、10.5nsにすることにより、ホールドタイムに対して1nsの余裕ができる。
従って、図3に示すタイミング改善(ステップS5)では、フリップフロップFF3からフリップフロップFF4へデータが伝わる時間が大きくなるように、先ず既存セルライブラリ121のセルを用いて、タイミング違反パスDpyにおける使用セルから最も遅延の大きいセルに差し替える。
具体的には、1回目のタイミング解析でタイミング違反パスが検出されたとき、タイミング違反パスDpyにおける使用セル(遅延時間:0.10nm)Uayからセル(遅延時間:0.13nm)A3への差し替え、およびタイミング違反パスDpyにおける使用セル(遅延時間:0.14nm)Ubyからセル(遅延時間:0.15nm)B3への差し替えを行う。
そして、2回目のタイミング解析で、この差し替えでも違反改善が成されないと判定されたときは、タイミング違反パスDpy上の使用セルを抽出し、セルUayと同一機能で駆動能力が異なる、細分化された追加セルNA1〜NA5を新たに作成し、また、セルUbxと同一機能で駆動能力が異なる、細分化された追加セルNB1〜NB6を新たに作成して、それぞれのセル情報を新規セルライブラリ125に格納する。
次いで、新規セルライブラリ125にセル情報が含まれる追加セルを用いて、タイミング違反パスDpyにおけるセルから最も遅延の大きいセルへの差し替えを行う。
具体的にはセル(遅延時間:0.13nm)A3から追加セル(遅延時間:0.15nm)NA5への差し替え、およびセル(遅延時間:0.15nm)B3からセル(遅延時間:0.18nm)NB6への差し替えを行う。
このように新規セルライブラリ125が加わることにより、タイミング調整を行う際の選択肢が増え、予め登録されたセルライブラリだけでは改善しきれなかったタイミング違反を取り除くことできる。
従って、本実施形態1では、タイミング改善の容易性が上がり、タイミング改善を必要とするパスが減ることで設計期間の短縮ができる。また、従来必要であった図14および図15に示すセル挿入を行わなくてよい場合があり、タイミング改善による半導体集積回路の面積増大を抑える効果もある。
このような本実施形態1による半導体集積回路の設計装置100では、回路設計データに基づいて、該半導体集積回路が構成されるよう標準セルの配置及び該標準セル間の配線を行う配置配線部112と、該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出するタイミング解析部113と、該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成する追加セル作成部115とを備え、既存セルライブラリのセルを用いて配置配線を行って得られた半導体集積回路にタイミング違反パスが含まれている場合は、既存のセルライブラリのセルとは駆動能力の異なる同一機能の追加セルを新たに作成するので、予め準備した標準セル以外の追加標準セルを用いて、タイミング違反が生じている違反経路のタイミング違反を取り除くことが可能となり、このように違反経路のタイミング改善に用いるセルの選択枝が広がることから、タイミング違反パスでのタイミング改善をより容易なものとして、タイミング改善を必要とするパスの低減により半導体集積回路の設計期間を短縮することが可能となる。
(実施形態2)
図9は、本発明の実施形態2による半導体集積回路の設計装置を説明する図である。
(実施形態2)
図9は、本発明の実施形態2による半導体集積回路の設計装置を説明する図である。
この実施形態2による半導体集積回路の設計装置(以下、半導体設計装置という。)200は、実施形態1の半導体集積回路の設計装置100における追加セル作成部115に代えて、前記タイミング違反がセットアップタイミング違反である場合には、タイミング違反パスにおける使用セルより駆動能力の大きい追加セルを作成し、前記タイミング違反がホールドタイミング違反である場合には、タイミング違反パスにおける使用セルより駆動能力の小さい追加セルを作成する追加セル作成部215を備えたものである。
従って、本実施形態2に係る半導体設計装置200では、実施形態1のタイミング解析部113に代わるタイミング解析部213を備え、このタイミング解析部213は、実施形態1のタイミング解析部113と同一の実負荷抽出部113aおよびタイミング検証部113bを有し、タイミング解析の結果として、タイミング違反がセットアップタイミング違反であるかホールドタイミング違反であるかを、上記追加セル作成部215に通知する構成としている。
この実施形態2の半導体設計装置200におけるその他の構成は、実施形態1の半導体設計装置100と同一である。
このような構成の実施形態2の半導体設計装置200では、実施形態1の効果に加えて、追加セルとして、タイミング解析の結果からタイミング違反パスの改善に有効と判断される駆動能力を有するもののみを作成することが可能となり、効果的にタイミング違反パスの改善を行うことができるという効果がある。
なお、上記実施形態2では、セットアップタイミング違反経路が検出されたとき、このタイミング違反パスの標準セルと同じ論理の演算を行う、この標準セルより駆動能力の高い追加セルを作成し、ホールドタイミング違反経路が検出されたとき、この違反経路の標準セルと同じ論理の演算を行う、この標準セルより駆動能力の低い追加セルを作成するものを示しているが、さらに、この実施形態2の構成において、セットアップタイミング違反経路の標準セルは、遅延時間が最小の追加セル(つまり、駆動能力が最大の追加セル)で置き換え、ホールドタイミング違反経路の標準セルは、遅延時間が最大の追加セル(つまり、駆動能力が最小の追加セル)で置き換えるようにしてもよい。
(実施形態3)
図10は、本発明の実施形態3による半導体集積回路の設計装置を説明するブロック図である。
(実施形態3)
図10は、本発明の実施形態3による半導体集積回路の設計装置を説明するブロック図である。
この実施形態3による半導体集積回路の設計装置(以下、半導体設計装置という。)300は、実施形態2の半導体設計装置200におけるタイミング解析部213に代えて、タイミング違反がセットアップタイミング違反であるかホールドタイミング違反であるかを判定するとともに、それぞれのタイミング違反の程度を検出するよう構成したタイミング解析部313を備えたものである。
つまり、この実施形態3の半導体設計装置300のタイミング解析部313では、実施形態1のタイミング解析部113におけるタイミング検証部113bに代えて、タイミング解析の際、セットアップタイミング違反あるいはホールドタイミング違反の程度を、タイミング違反パスにおける、タイミング検証により得られた信号伝達に要する時間と、このタイミング違反パスにおける、タイミング制約に基づいた本来の信号伝達に要する正規の時間(規定時間)との時間差を検出するタイミング検証部313bを有し、タイミング解析の結果として、タイミング違反がセットアップタイミング違反であるかホールドタイミング違反であるかとともに、それぞれのタイミング違反の程度を上記時間差として、上記追加セル作成部315に通知する構成としている。
また、この実施形態3の半導体設計装置300は、実施形態2の半導体設計装置200における追加セル作成部215に変えて、作成する追加セルの駆動能力を上記時間差に基づいて設定する追加セル作成部315を備えたものである。
つまり、この追加セル作成部315は、前記タイミング違反がセットアップタイミング違反である場合には、タイミング違反パスにおける使用セルより駆動能力の大きい追加セルを作成し、前記タイミング違反がホールドタイミング違反である場合には、タイミング違反パスにおける使用セルより駆動能力の小さい追加セルを作成し、しかも、追加セルを作成する際に、タイミング違反の程度を考慮して、作成する追加セルの駆動能力の目標値として過不足なくタイミング違反を解消可能な程度の値を設定し、追加セルの駆動能力を、この目標値を中心とする一定範囲内で段階的に変化させて設定するよう構成したものである。
このような構成の本実施形態3の半導体設計装置300では、実施形態1の効果に加えて、作成する追加セルの駆動能力の目標値を、タイミング違反の程度を考慮して設定し、この目標値を中心とする一定範囲内で駆動能力を段階的に変換させて追加セルの駆動能力を設定するので、タイミング違反パスを改善するための追加セルとして、タイミング違反を解消可能なものが得られる一方で駆動能力が大きすぎたりあるいは小さすぎたりすることによる弊害が生ずるといった問題を回避できる。
例えば、セットアップタイミング違反パスにおける使用セルに対して、この使用セルに比べて駆動能力が大きい追加セルを作成した場合、この追加セルの駆動能力が大きすぎる場合は、使用セルをこの追加セルに置き換えることによりセルの占有面積が不必要に大きくなるという弊害を招くが、本実施形態3のように、作成する追加セルの駆動能力の目標値を、タイミング違反の程度を考慮して設定し、この目標値を中心とする一定範囲内で駆動能力を段階的に変換させて追加セルの駆動能力を設定することで、セットアップタイミング違反を解消するための追加セルとして、占有面積が不必要に大きなものが作成されるのを回避できる。
(実施形態4)
図11は、本発明の実施形態4による半導体集積回路の設計装置を説明するブロック図である。
(実施形態4)
図11は、本発明の実施形態4による半導体集積回路の設計装置を説明するブロック図である。
この実施形態4による半導体集積回路の設計装置(以下、半導体設計装置という。)400は、実施形態1の半導体設計装置100における記憶装置120および制御部130に代わる記憶装置420および制御部430を備え、この制御部430により、1つの半導体集積回路を設計する際に作成された新規セルライブラリが、次回の半導体集積回路の設計で流用可能となるよう記憶装置420に保存される構成としたものである。
また、この実施形態4の半導体設計装置400では、タイミング改善部416は、タイミング違反パスにおける使用セルを、記憶装置420に含まれるすべてのセルライブラリ、例えば、3つの新規セルライブラリが記憶装置420に形成されている場合は、既存セルライブラリ121、新規セルライブラリ群425のすべての新規セルライブラリ〔I〕425a〜〔III〕425cのセルから選択したセルで置き換える構成となっている。
このような構成の半導体設計装置400では、1つの半導体集積回路の設計の際、実施形態1の半導体設計装置100と同様に、論理合成(ステップS1)、配置配線(ステップS2)、タイミング解析(ステップS3およびS4)、およびタイミング違反パス上の使用セルの抽出(ステップS11)が行われる。
続く追加セルの作成(ステップS12a)にて、タイミング違反パスの使用セルと置き換える追加セルの作成が行われ、作成された追加セルが新規セルライブラリ425aに格納される。その後、タイミング改善(ステップS5)では、新規セルライブラリ〔I〕425aおよび既存セルライブラリ121にセル情報が格納されている複数のセルから所定のセルを選択し、選択したセルで使用セルを置き換え、再度タイミング解析によりタイミング違反パスがあるか否かの判定を行う。このような追加セルの作成とその後のタイミング解析を繰り返し行って、タイミング違反のない半導体集積回路を設計する。
このとき、本実施形態4の半導体設計装置400では、1つの半導体集積回路を設計する際に作成された新規セルライブラリ〔I〕は、次回の半導体集積回路の設計で流用可能となるよう記憶装置420に保存されたままとなる。
従って、次の半導体集積回路の設計では、配置配線処理(ステップS3)後の最初のタイミング解析処理では、タイミング違反が発生していた場合、使用セル抽出部114がタイミング違反パス上の使用セルのセル情報を抽出する。セル情報を抽出した使用セルについて、追加セル作成部115が駆動能力の異なる追加セルを多数新たに作成し、記憶装置420では、今回作成された追加セルを含む2つめの新規セルライブラリ〔II〕425bが作成される。
次いで、タイミング改善部116が既存セルライブラリ121と以前に作成した1つ目の新規セルライブラリ425aと今回作成した2つ目の新規セルライブラリ425bを使用して、タイミング改善を行う。
従って、さらにその次の半導体集積回路の設計では、配置配線処理(ステップS3)後の最初のタイミング解析処理では、既存セルライブラリ121、1つ目の半導体集積回路の設計で作成した新規セルライブラリ〔I〕425a、および2つ目の半導体集積回路の設計で作成した新規セルライブラリ〔II〕425bのセルのなかから、タイミング違反パスの使用セルと置き換えるセルを選択することができる。
そして、3つ目の半導体集積回路の設計の際にも、既存セルライブラリ121と1つ目および2つ目の半導体集積回路の設計で作成した新規セルライブラリ〔I〕425aおよび〔II〕425bにも使用セルと置き換える適切なセルがない場合は、追加セルを作成して新規セルライブラリ〔III〕425cを作成する。
このようにこの実施形態3の半導体設計装置400では、半導体集積回路を開発する毎に新規セルライブラリが1つ、2つ、3つというように増え、これにより更にタイミング調整を行う際の選択肢が増え、タイミング改善の容易性が大きく高まり、タイミング改善を必要とするパスの効果的な削減により設計期間をより一層短縮することができる。
以上のように、本発明の好ましい実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
本発明は、半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体の分野において、標準セルを用いて半導体集積回路を設計する際、信号経路におけるタイミング違反を、適切な駆動能力と適切な占有領域を有する所望のセルを用いて解消することができ、このため、セルの占有面積が不必要に大きくなるのを回避しつつタイミング違反を簡単に解消することができ、これにより半導体集積回路の設計期間をより一層短縮することができる半導体集積回路の設計方法及び設計装置、並びにこのような半導体集積回路の設計方法をコンピュータにより行うための回路設計プログラムおよびこのような回路設計プログラムを格納したコンピュータ読み取り可能な記録媒体を実現することができる。
100、200、300、400 半導体設計装置
111 論理合成部
112 配置配線部
113 タイミング解析部(違反経路検出部)
113a、213a 実負荷抽出部
113b、213b、313b タイミング検証部
114 使用セル抽出部
115 追加セル作成部
116、416 タイミング改善部
120、420 記憶装置
121 既存セルライブラリ
122 ネットリスト格納部
123 レイアウトデータ格納部
124 実負荷データ格納部
125 新規セルライブラリ
130、430 制御部
425 新規セルライブラリ群
425a〜425c 新規セルライブラリ〔I〕〜〔III〕
A1〜A3、B1〜B3 セル
C1、Ce1、Ce1a、Ce1b セル情報
Cc1、Cx1、Cx1a、Cx1b 回路図データ
CK クロック
Dpx、Dpy タイミング違反パス
FF1〜FF4 フリップフロップ
Lc1、Lc1a、Lc1b、Lc1c レイアウト
Lx1、Lx1a、Lx1b レイアウトデータ
NA1〜NA5、NB1〜NB6 追加セル
Nx1、Nx1a、Nx1b セル名〔セルX1〕データ
Px1、Px1a、Px1b 属性データ
Q 出力
Sc1、Sx1、Sx1a、Sx1b 論理記号データ
Uax、Uay、Ubx、Uby 使用セル
111 論理合成部
112 配置配線部
113 タイミング解析部(違反経路検出部)
113a、213a 実負荷抽出部
113b、213b、313b タイミング検証部
114 使用セル抽出部
115 追加セル作成部
116、416 タイミング改善部
120、420 記憶装置
121 既存セルライブラリ
122 ネットリスト格納部
123 レイアウトデータ格納部
124 実負荷データ格納部
125 新規セルライブラリ
130、430 制御部
425 新規セルライブラリ群
425a〜425c 新規セルライブラリ〔I〕〜〔III〕
A1〜A3、B1〜B3 セル
C1、Ce1、Ce1a、Ce1b セル情報
Cc1、Cx1、Cx1a、Cx1b 回路図データ
CK クロック
Dpx、Dpy タイミング違反パス
FF1〜FF4 フリップフロップ
Lc1、Lc1a、Lc1b、Lc1c レイアウト
Lx1、Lx1a、Lx1b レイアウトデータ
NA1〜NA5、NB1〜NB6 追加セル
Nx1、Nx1a、Nx1b セル名〔セルX1〕データ
Px1、Px1a、Px1b 属性データ
Q 出力
Sc1、Sx1、Sx1a、Sx1b 論理記号データ
Uax、Uay、Ubx、Uby 使用セル
Claims (17)
- 回路設計の単位として複数種類の標準セルを予め格納した記憶装置を準備し、該記憶装置に含まれる標準セルを情報処理装置により組み合わせて半導体集積回路を設計する方法であって、
回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うステップと、
該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出するステップと、
該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成するステップと、
該置換対象セルを、該違反経路が該タイミング違反を解消した経路となるよう該追加標準セルで置き換えるステップと
を含む、
半導体集積回路の設計方法。 - 請求項1に記載の半導体集積回路の設計方法において、
前記半導体集積回路における信号経路は、その始点および終点となる論理回路をそれぞれ第1および第2の順序回路とし、該第1の順序回路から該第2の順序回路に信号を伝達する論理回路を1以上の組み合わせ回路により構成したものである、半導体集積回路の設計方法。 - 請求項2に記載の半導体集積回路の設計方法において、
前記違反経路を検出するステップでは、
該違反経路におけるタイミング違反が、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間に間に合わないセットアップタイミング違反であるか、該第1の順序回路から該第2の順序回路までの信号伝達が規定時間より早すぎるホールドタイミング違反であるかを判定する、半導体集積回路の設計方法。 - 請求項3に記載の半導体集積回路の設計方法において、
前記違反経路を検出するステップでは、
該違反経路におけるタイミング違反が、前記セットアップタイミング違反であるか前記ホールドタイミング違反であるかを判定するとともに、判定したタイミング違反の程度を、該信号伝達に要する時間と前記規定時間との時間差として検出する、半導体集積回路の設計方法。 - 請求項2に記載の半導体集積回路の設計方法において、
前記違反経路として、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間に間に合わないセットアップタイミング違反が生じている違反経路が検出されたとき、
前記追加標準セルを作成するステップでは、
該違反経路における置換対象セル毎に、該置換対象セルの駆動能力より高い駆動能力を有する追加標準セルを1つ以上作成する、半導体集積回路の設計方法。 - 請求項5記載の半導体集積回路の設計方法において、
前記置換対象セルを前記追加標準セルで置き換えるステップでは、
該置換対象セルを、該置換対象セル毎に複数作成した追加標準セルのうちで遅延時間が最小の追加標準セルに置き換える、半導体集積回路の設計方法。 - 請求項2に記載の半導体集積回路の設計方法において、
前記違反経路として、前記第1の順序回路から前記第2の順序回路までの信号伝達が規定時間より早すぎるホールドタイミング違反が生じている違反経路が検出されたとき、
前記追加標準セルを作成するステップでは、
該違反経路における置換対象セル毎に、該置換対象セルの駆動能力より低い駆動能力を有する追加標準セルを1つ以上作成する、半導体集積回路の設計方法。 - 請求項7に記載の半導体集積回路の設計方法において、
前記置換対象セルを前記追加標準セルで置き換えるステップでは、
該置換対象セルを、該置換対象セル毎に複数作成した追加標準セルのうちで遅延時間が最大の追加標準セルに置き換える、半導体集積回路の設計方法。 - 請求項2から請求項8のいずれか1項に記載の半導体集積回路の設計方法において、
前記順序回路はフリップフロップ回路である、半導体集積回路の設計方法。 - 請求項1から請求項9のいずれか1項に記載の半導体集積回路の設計方法において、
前記追加標準セルを生成するステップは、
生成した追加標準セルからなる新規セルライブラリを、前記記憶装置内に作成されている前記既定標準セルからなる既存セルライブラリに加えて前記記憶装置内に作成するステップを含む、半導体集積回路の設計方法。 - 請求項10に記載の半導体集積回路の設計方法において、
前記記憶装置は、1つの半導体集積回路を設計する際に作成された新規セルライブラリを、次回の半導体集積回路の設計で流用可能となるよう保存する構成となっており、
前記置換対象セルを前記追加標準セルで置き換えるステップでは、
前記記憶装置に保存されている、前記既存セルライブラリおよび以前の半導体集積回路の設計で作成した新規セルライブラリに含まれる、既存標準セルおよび追加標準セルのうちから選択した標準セルで、前記置換対象セルを置き換える、半導体集積回路の設計方法。 - 請求項1から請求項11のいずれか1項に記載の半導体集積回路の設計方法において、
前記追加標準セルを作成するステップでは、
該追加標準セルとして、該置換対象セルとは駆動能力が異なるとともに、該置換対象セルとはその占有面積が異なる1以上の追加標準セルを該置換対象セル毎に作成する、半導体集積回路の設計方法。 - 請求項1から請求項12のいずれか1項に記載の半導体集積回路の設計方法において、
前記違反経路を検出するステップでは、
前記標準セルの配置及び該標準セル間の配線を行って得られた半導体集積回路における信号経路が、タイミング違反が生じている違反経路であるか否かの判定を、該半導体集積回路におけるすべての信号経路で行う、半導体集積回路の設計方法。 - 請求項1から請求項13のいずれか1項に記載の半導体集積回路の設計方法において、
前記追加標準セルを作成するステップは、
前記違反経路におけるすべての種類の標準セルに対応する、その構成部材の配置を示す配置情報を抽出するステップと、
該すべての種類の標準セルに対して、それぞれの配置情報に基づいて、それぞれの標準セルと同じ論理演算を行い、かつ駆動能力が該標準セルとは異なる1以上の追加標準セルの配置情報を作成するステップと
を含む、半導体集積回路の設計方法。 - 回路設計の単位として複数種類の標準セルを予め格納した記憶装置を有し、該記憶装置に含まれる標準セルを組み合わせて半導体集積回路を設計する半導体集積回路の設計装置であって、
回路設計データに基づいて、該半導体集積回路が構成されるよう該標準セルの配置及び該標準セル間の配線を行うセル配置配線部と、
該半導体集積回路における信号経路のうちの、タイミング違反が生じている違反経路を検出する違反経路検出部と、
該違反経路に含まれる少なくとも1つの標準セルを置換対象セルとして、それぞれの置換対象セルと同じ論理の演算を行い、かつ該置換対象セルとは駆動能力が異なる1以上の追加標準セルを該置換対象セル毎に作成する追加セル作成部と、
該置換対象セルを、該違反経路が該タイミング違反を解消した経路となるよう該追加標準セルで置き換えるセル置き換え部と
を備えた、
半導体集積回路の設計装置。 - 請求項1から請求項14のいずれか1項に記載の半導体集積回路の設計方法における各ステップをコンピュータにより行うための回路設計プログラム。
- 請求項16に記載の回路設計プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012048260A JP2013182600A (ja) | 2012-03-05 | 2012-03-05 | 半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012048260A JP2013182600A (ja) | 2012-03-05 | 2012-03-05 | 半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013182600A true JP2013182600A (ja) | 2013-09-12 |
Family
ID=49273175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012048260A Pending JP2013182600A (ja) | 2012-03-05 | 2012-03-05 | 半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013182600A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9989692B2 (en) | 2012-10-08 | 2018-06-05 | Corning Incorporated | Methods and apparatus for providing improved display components |
CN110941936A (zh) * | 2018-09-20 | 2020-03-31 | 台湾积体电路制造股份有限公司 | 集成电路 |
DE102021115945A1 (de) | 2021-01-28 | 2022-07-28 | Taiwan Semiconductor Manufacturing Company, Ltd. | Verfahren und system zum herstellen einer halbleitervorrichtung |
JP7136496B1 (ja) | 2021-03-18 | 2022-09-13 | Necプラットフォームズ株式会社 | レイアウト装置、レイアウト方法およびプログラム |
-
2012
- 2012-03-05 JP JP2012048260A patent/JP2013182600A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9989692B2 (en) | 2012-10-08 | 2018-06-05 | Corning Incorporated | Methods and apparatus for providing improved display components |
CN110941936A (zh) * | 2018-09-20 | 2020-03-31 | 台湾积体电路制造股份有限公司 | 集成电路 |
US12014131B2 (en) | 2018-09-20 | 2024-06-18 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit and method of forming same and a system |
DE102021115945A1 (de) | 2021-01-28 | 2022-07-28 | Taiwan Semiconductor Manufacturing Company, Ltd. | Verfahren und system zum herstellen einer halbleitervorrichtung |
US11803683B2 (en) | 2021-01-28 | 2023-10-31 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of and system for manufacturing semiconductor device |
JP7136496B1 (ja) | 2021-03-18 | 2022-09-13 | Necプラットフォームズ株式会社 | レイアウト装置、レイアウト方法およびプログラム |
JP2022143696A (ja) * | 2021-03-18 | 2022-10-03 | Necプラットフォームズ株式会社 | レイアウト装置、レイアウト方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8984470B2 (en) | Method and apparatus for performing redundant via insertion during circuit design | |
KR102514044B1 (ko) | 집적 회로 및 집적 회로의 설계 방법 | |
US7895551B2 (en) | Generation of standard cell library components with increased signal routing resources | |
US8806413B2 (en) | Gradient AOCV methodology enabling graph-based timing closure with AOCV timing models | |
KR102434991B1 (ko) | 집적 회로 및 집적 회로의 설계 방법 | |
US9443053B2 (en) | System for and method of placing clock stations using variable drive-strength clock drivers built out of a smaller subset of base cells for hybrid tree-mesh clock distribution networks | |
CN108170956A (zh) | 一种保持时间的时序签核方法及装置 | |
US20130091483A1 (en) | Automatic flow of megacell generation | |
US6425115B1 (en) | Area efficient delay circuits | |
JP2013182600A (ja) | 半導体集積回路の設計方法、半導体集積回路の設計装置、回路設計プログラム、及びコンピュータ読み取り可能な記録媒体 | |
CN114036884A (zh) | 时序库的生成方法及装置、电子设备 | |
Han et al. | Optimal multi-row detailed placement for yield and model-hardware correlation improvements in sub-10nm VLSI | |
WO2015075805A1 (ja) | ソースコード分割方法及びlsi実装装置 | |
JP5444985B2 (ja) | 情報処理装置 | |
Chen et al. | Reconfigurable ECO cells for timing closure and IR drop minimization | |
Abazyan | Standard cell library enhancement for mixed multi-height cell design implementation | |
JP2008091406A (ja) | 半導体集積回路のレイアウト方法 | |
Posser et al. | Electromigration Inside Logic Cells | |
Ewetz et al. | A useful skew tree framework for inserting large safety margins | |
CN113688587B (zh) | 一种电路布图的生成方法、装置、计算机设备及存储介质 | |
JP2005322694A (ja) | 半導体集積回路のレイアウト設計方法及び製造方法 | |
JP2011108803A (ja) | 半導体集積回路のレイアウト設計方法、半導体集積回路 | |
JP2010278219A (ja) | レイアウト設計方法及びレイアウト設計装置 | |
JP2008123458A (ja) | 半導体集積回路の設計方法 | |
JP2008226069A (ja) | 論理回路、半導体設計支援装置および半導体設計支援方法 |