JP2004102703A - レジスタ転送レベル設計支援装置 - Google Patents
レジスタ転送レベル設計支援装置 Download PDFInfo
- Publication number
- JP2004102703A JP2004102703A JP2002264308A JP2002264308A JP2004102703A JP 2004102703 A JP2004102703 A JP 2004102703A JP 2002264308 A JP2002264308 A JP 2002264308A JP 2002264308 A JP2002264308 A JP 2002264308A JP 2004102703 A JP2004102703 A JP 2004102703A
- Authority
- JP
- Japan
- Prior art keywords
- performance
- signal
- description
- register transfer
- transfer level
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
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
【課題】レジスタ転送レベル論理記述との対応を保ちつつ高精度に集積回路の性能を見積もり、論理記述の品質向上を可能とする。
【解決手段】RTL論理記述1を入力し各信号に対して代入箇所の対応付けを作成するRTL記述入力手段3と、対応付けを作成した信号に対して不変属性を設定する不変属性設定手段5と、不変属性を持つ信号を除いた部分回路を論理最適化する部分回路合成手段6と、不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段7と、集積回路の性能を計算する性能計算手段8と、性能計算結果と論理記述とを表示する表示手段9を備える。設計制約および設計規則を考慮し、かつ素子モデルの種類を反映した性能見積もりが可能となり、性能上問題となる箇所を論理記述上に特定できる。
【選択図】 図1
【解決手段】RTL論理記述1を入力し各信号に対して代入箇所の対応付けを作成するRTL記述入力手段3と、対応付けを作成した信号に対して不変属性を設定する不変属性設定手段5と、不変属性を持つ信号を除いた部分回路を論理最適化する部分回路合成手段6と、不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段7と、集積回路の性能を計算する性能計算手段8と、性能計算結果と論理記述とを表示する表示手段9を備える。設計制約および設計規則を考慮し、かつ素子モデルの種類を反映した性能見積もりが可能となり、性能上問題となる箇所を論理記述上に特定できる。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路の設計支援装置にかかわり、特に、レジスタ転送レベル論理記述の段階で集積回路の面積および遅延時間を評価するレジスタ転送レベル設計支援装置に関するものである。
【0002】
【従来の技術】
ハードウエア記述言語(HDL)の普及により、レジスタ転送レベル(RTL:RegisterTransfer Level)で集積回路の論理記述を作成し、論理検証後、設計自動化ツールを用いて論理合成および配置配線を行う設計手法が標準的になっている。
【0003】
また、半導体プロセスの微細化により集積回路の動作速度に対する配線遅延の影響が大きくなってきていることから、物理設計段階になって初めて詳細な配線遅延を求めるのではなく、設計早期から物理設計を考慮し、タイミングの収束性を上げる設計手法が普及しつつある。その場合、設計早期に物理設計後のチップの面積やタイミングを見積もる技術が必要であるが、多くは、テスト的に論理合成を行い、その結果のゲートレベルネットリストを用いて見積もっていた。
【0004】
一方、論理合成を行うには時間がかかること、また、論理合成結果とRTL論理記述との対応付けが困難であるといった点から、RTL論理記述から直接、集積回路の性能を予測評価する取り組みが行われるようになってきた。RTL設計段階における性能評価に基づいてRTL論理記述の品質を上げることにより、下流の設計段階で対処するよりも大幅に少ない工数で集積回路の性能向上が可能となるからである。
【0005】
従来の技術においては、集積回路の性能評価指標として面積・遅延・消費電力を総合的に評価し、評価結果とRTL論理記述との対応付けをとろうとしている。(例えば、特許文献1参照)。
【0006】
【特許文献1】
特開平11−213029号公報(第4−8頁、図2)
【0007】
【発明が解決しようとする課題】
通常、論理合成を行う際に用いる論理ライブラリには、配線およびゲート数を削減する効果のあるANDゲートやORゲートを組み合わせた複合セルが含まれている。また、タイミングの“なまり”に対する設計規則に従い、論理合成ツールにより高ファンアウトや長距離配線の信号にはバッファが挿入される。
【0008】
半導体プロセスの微細化が0.13μm、0.10μmと進むにつれ、配線遅延の影響が大きくなるため、これらを考慮した性能見積もりが必要になってくると考えられる。
【0009】
しかしながら、上記従来の技術では、論理最適化用に使用可能な素子モデルとして、単純な2入力NAND、2入力NOR、インバータ等しか考慮していない。
【0010】
また、高ファンアウトの信号に対しては何ら対処がなされないまま、RTL論理記述に依存した形で残ったまま性能評価をすることになる。
【0011】
そのため、従来技術では、配線遅延の影響が大きくなる微細化プロセスでは見積もり精度が劣化することになる。
【0012】
従って、上記問題点に鑑み、本発明の目的は、RTL論理記述との対応を保ちつつ、タイミング制約および設計規則を考慮し、かつライブラリに含まれる複合セル等のセルの種類を反映して、高精度に集積回路の性能を見積もり、かつ性能評価に基づくRTL論理記述の品質向上を可能とするレジスタ転送レベル設計支援装置を提供することにある。
【0013】
【課題を解決するための手段】
本発明のレジスタ転送レベル設計支援装置は、集積回路のレジスタ転送レベル論理記述から集積回路の性能を見積もるものであって、集積回路を構成するための素子モデルを格納したライブラリと、前記論理記述を入力し記述中の各信号に対して代入箇所の対応付けを作成するRTL記述入力手段と、前記論理記述から構文解析木を作成する構文解析手段と、前記構文解析木中の前記RTL記述入力手段で対応付けを作成した信号に対して不変属性を設定する不変属性設定手段と、前記構文解析木から前記不変属性を持つ信号を除いた部分回路を論理最適化し前記ライブラリ内の素子モデルを割り付ける部分回路合成手段と、前記不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段と、前記集積回路の性能を計算する性能計算手段と、前記性能計算の結果と前記論理記述とを表示する表示手段とを備えたものである。
【0014】
これにより、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ内の素子モデルの種類を反映したネットリストを生成することができ、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定することができる。
【0015】
さらに、本発明のレジスタ転送レベル設計支援装置は、レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるものであって、前記ゲートレベルネットリスト内の素子モデルを指定領域内に配置するフロアプラン手段と、前記論理記述との対応付けを持つ信号に対して設計規則を満足するために前記フロアプラン手段による配置情報に基づきバッファを挿入する不変部最適化手段と、前記配置情報から素子間の接続の配線を予測する配線予測手段と、前記配線予測手段による配線予測値を用いて前記ゲートレベルネットリストの性能を計算する性能計算手段と、前記性能計算の結果と前記論理記述と前記フロアプランの結果を表示する表示手段とを備えたものである。
【0016】
これにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0017】
また、本発明のレジスタ転送レベル設計支援装置は、上記の構成において、さらに、外部からの要求に従い、選択されたパスに対して不変属性を持つ信号も含めて論理を最適化したネットリストを作成し、前記パスの遅延を計算する遅延再計算手段を備えたものである。
【0018】
これにより、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま、より高精度に性能見積もりを行うことができる。
【0019】
さらに、本発明のレジスタ転送レベル設計支援装置は、レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるものであって、前記論理記述上の指定箇所に対応する前記ゲートレベルネットリスト上の部分回路に到達する各信号の到達遅延時間を表示する表示手段を備えたものである。
【0020】
これにより、部分回路への各入力信号の到達遅延時間を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【0021】
【発明の実施の形態】
以下、本発明にかかわるレジスタ転送レベル設計支援装置の実施の形態について図面に基づいて詳細に説明する。
【0022】
(第1の実施の形態)
図1は、本発明の第1の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。
【0023】
図1において、1はレジスタ転送レベル(RTL)論理記述、2は集積回路を構成するための素子モデルを格納したライブラリ、3はRTL論理記述1を入力するRTL記述入力手段、4は入力したRTL論理記述1を構文解析し構文解析木を作成する構文解析手段、5は構文解析木中の信号に対して不変属性を設定する不変属性設定手段、6は構文解析木から不変属性を持つ信号を除いた部分回路を論理最適化しライブラリ2内の素子モデルに割付ける部分回路合成手段、7は不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段、8は集積回路の性能を計算する性能計算手段、9は表示手段である。
【0024】
図1を用いて、本実施の形態のレジスタ転送レベル設計支援装置の動作を説明する。
【0025】
最初に、RTL記述入力手段3がRTL論理記述1を入力し、その記述中に現れる信号名およびピン名に対し、各々が代入されている箇所としてファイル名および行番号を求め、信号名との対応付けを作成する。ハードウエア記述言語VerilogHDLの場合、wire文あるいはreg文により信号の名前を認識し、output文、input文およびinout文によりピンの名前を認識する。そして、それらの信号への代入文を含むalwaysブロックあるいはassign文の開始行の行番号をその信号と対応付けることとする。このとき、2以上のビット幅を持つ信号に対しては、その代入文がビット展開されていない場合、A[7:0]のようなバス表記のまま対応付けを作成する。ただし、その代入文がビット展開されている場合は、その代入文に従い、ビット別に対応付けを作成する。また、同じ信号名が複数のalwaysブロックあるいはassign文内で代入されている場合は、それらの全ての行番号を対応付ける。例えば、スリーステートバッファを表現する記述がこれに該当する。ただし、function文およびtask文内で定義された信号に対しては、その名前は集積回路において固有名とはなり得ないので、対応付けは作成しないこととする。
【0026】
次に、構文解析手段4が、入力したRTL記述の構文解析を行い、構文解析木を作成する。そして、不変属性設定手段5が、構文解析木中の記述との対応付けを持つ信号に対して不変属性を設定する。このとき、同期表現されたalwaysブロック内の信号に関しては、ゲートレベルネットリスト上でフリップフロップに割り付けられるため、不変属性は設定しないこととする。ラッチに割り付けられる信号も同様に不変属性は設定しない。
【0027】
次に、部分回路合成手段6が、構文解析木から不変属性を持つ信号を除いた部分回路を論理最適化し、ライブラリ2内の素子モデルを割り付けてゲートレベルネットリストを作成する。この論理最適化および素子モデル割り付けの方法は、通常の論理合成方法と同様でよい。ただし、フリップフロップやラッチのインスタンス名はRTL論理記述上の信号名と一致するものとする。また、電圧や温度等の動作条件や動作周波数等の設計制約は、通常の論理合成と同様に与えられているものとする。
【0028】
図2は、RTL記述入力手段3から部分回路合成手段6の例を示す図である。図2の(a)は入力するRTL論理記述の一部であり、信号定義を行うwire文と信号Yに対する代入文を含むassign文が示されている。(b)は(a)の記述中で定義されている信号に対する記述との対応付けを示す例であり、ファイル名と行番号が記憶される。また、ビット幅を持つものはバス表記されている。(c)は、(a)のassign文が示す部分回路を対象とする部分回路合成手段6の結果を示す図である。図2(c)において、10は部分回路であり、11は不変属性を設定された信号を示す。部分回路合成手段6により、部分回路10は、ライブラリ2に格納されている素子モデルのゲートレベルネットリストになる。
【0029】
次に、不変部最適化手段7が、不変属性を持つ信号に対して、ファンアウト数制限などの設計規則を満足するためにバッファを挿入する。このとき、バッファを挿入することにより生成された新たな信号に対しても、元の信号名が持つ記述との対応付けを継承するものとする。
【0030】
図3はファンアウト数制限に対する不変部最適化手段7の動作を示す流れ図である。図3を用いて不変部最適化手段7の動作を説明する。ステップ20からステップ22の処理により、不変属性を持つ信号のうちファンアウト数が設計規則以上の信号を順次選択する。選択された信号に対して、ステップ23およびステップ24の処理により、N分木構造となるようにバッファを挿入する。ここで、Nは設計規則に規定された最大ファンアウト数である。
【0031】
次に、性能計算手段8が、生成されたゲートレベルネットリストの性能を計算する。ここで、性能としては、面積や遅延があげられる。面積はネットリストを構成する素子の面積の総和で求め、遅延はレジスタ間パス上の素子の内部遅延と配線遅延の和で求めることができる。ここで、素子の内部遅延はライブラリ2から得られ、配線遅延は配線の容量値と抵抗値を乗じた値で得られる。配線の容量および抵抗は、ファンアウト数によりモデル化された値を使用することができる。また、性能計算手段8は、各素子の入力ピンに対して、そこに到達するパスの最大遅延値を属性として設定する。
【0032】
性能計算手段8の計算結果は、表示手段9により確認することができる。図4に表示手段9の表示例を示す。図4の(a)は集積回路の面積、最大遅延の表示例である。(b)は各レジスタ間パスの遅延の一覧の表示例である。(c)は(b)の一覧から任意のパスを選択することにより表示されるそのパスの回路図である。回路図上で任意の信号を選択することにより、その信号への最大遅延を回路図上に表示することができる。(d)は(c)の回路図から不変属性を持つ信号を選択することにより表示されるその信号に対応付けされたRTL論理記述である。また、逆に、(d)のように表示されたRTL論理記述から任意の信号名を選択することにより、その信号への最大遅延を持つパスの回路図を表示することができる。
【0033】
さらに、表示手段9は、表示された論理記述上のalwaysやassignを選択することにより、それに対応する部分回路に到達する各信号の到達遅延を表示する。その例を図5および図6に示す。
【0034】
図5の(a)は論理記述の表示例であり、ここでalwaysが選択されたとする。(b)はそのときに表示される回路図である。(c)はその部分回路に到達する信号の到達遅延の表示である。(d)は(c)で2.0の到達遅延であった信号Dの到達遅延を4.0としている。
【0035】
図6は、図5(a)のRTL記述を変更した場合の回路図(b)および到達遅延表示(c),(d)である。この例では、図5の場合には信号Dの到達遅延に関わらず、信号Yへの到達遅延は(c)と(d)で同じ(9.6)であり、図6の場合には信号Yへの到達遅延は(c)の方が速く(8.9<10.1)、かつ図5(c)よりも速くなっている(8.9<9.6)ことが示されている。従って、RTL設計者は、信号Dの到達遅延に注目し、RTL記述を図5(a)のようにするか、図6(a)のようにするかを評価することができる。
【0036】
以上のように本実施の形態によれば、不変属性設定手段5と部分回路合成手段6と不変部最適化手段7を設けることにより、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ2内の素子モデルの種類を反映したネットリストを生成することができる。その結果、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定でき、RTL論理記述の品質を向上することができる。
【0037】
さらに、表示手段9が、部分回路への各入力信号の到達遅延時間を表示することにより、到達遅延を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【0038】
(第2の実施の形態)
図7は、本発明の第2の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。図1と異なるのは、部分回路合成手段6と不変部最適化手段7との間にフロアプラン手段30を設け、不変部最適化手段7と性能計算手段8との間にフロアプラン更新手段31および配線予測手段32を設けた点である。以下、フロアプラン手段30以降の動作について説明する。
【0039】
まず、フロアプラン手段30は、ゲートレベルネットリスト内の素子モデルを配置領域内に配置する。
【0040】
図8はフロアプラン手段30の動作を示す流れ図である。
【0041】
ステップ40で、指定した素子占有率および縦横比に従い配置領域を設定する。素子占有率は、1.0以下の正の実数で表現され、その領域に占める素子面積の割合を示し、レイアウト設計時の配線層数やネットリストに依存するが、レイアウト設計前には経験値から0.8前後の値とする場合が多い。ネットリスト内の素子の総面積を素子占有率で除した値が配置領域の面積となる。
【0042】
次にステップ41で、配置領域の周辺上に入出力ピンあるいはI/Oセルを配置する。入出力ピンあるいはI/Oセルの配置順はランダムあるいは外部からの指定とする。
【0043】
次にステップ42で、対象とする集積回路を階層的にレイアウト設計するか否かを指定し、階層レイアウトを行わない場合はステップ43から45の処理を、階層レイアウトを行う場合はステップ46から49の処理を行う。通常、集積回路の規模が使用するレイアウトツールの処理可能な回路規模を超える場合に階層レイアウトが採用される。回路規模をゲート数で表現するならば、本実施の形態の場合、ネットリストに含まれる全素子の面積を2入力NANDの素子の面積で除した値をゲート数とみなすことができる。
【0044】
先に前者について説明する。ステップ43で、部分回路合成手段6で論理最適化の対象とした各部分回路を各々1つのグループとし、次のステップ44で、それらグループを配置領域内に配置する。このとき、各グループは、グループ内に含まれる素子の総面積を前記素子占有率で除した面積を持ち、正方形で固定されているものとする。グループの配置は、グループ間を接続する配線長の最小化およびグループの重なり面積の最小化を目的として実行される。配線長は、接続するグループの中心間のマンハッタン長で求めることができる。
【0045】
次にステップ45で、各グループ内の素子モデルをグループが占める領域内に配置する。このときの配置も同様に、素子間を接続する配線長の最小化および素子の重なり面積の最小化を目的として実行される。
【0046】
一方、後者の場合は、ステップ46で、ゲートレベルネットリストをレイアウト設計の単位となるブロックに分割する。各ブロックは、レイアウトツールが処理可能な回路規模以下になるように分割され、ブロック内に含まれる素子の総面積を前記素子占有率で除した面積を持つ。次にステップ47で、各ブロックを配置領域内に配置する。この配置は、人手指定あるいはステップ44と同様に自動処理を行う。
【0047】
次にステップ48で、各ブロックのピンをブロック周辺上に配置する。このピン配置は、配線長が最小となることを目的として実行される。次にステップ49で、ブロック内の配置を決定する。その処理は前記ステップ43から45の処理と同様である。
【0048】
次に、不変部最適化手段7が、第1の実施の形態と同様に、不変属性を持つ信号に対して、ファンアウト数制限などの設計規則を満足するためにバッファを挿入する。ただし、本実施の形態においては素子が配置されているため、図3のステップ23の処理は、その信号を入力とする素子を、その配置位置を基準に分類することになる。その素子分類方法を以下に示す。ここで、FOはその信号のファンアウト数、Nは設計規則の最大ファンアウト数とする。
【0049】
(素子分類方法)
(A1) M=FO/N
(A2) 集合A={当該信号を出力する素子}、集合B={当該信号を入力する素子}
(A3) 集合Bの中から、集合Aの全素子からの距離が最大の素子を集合Aに移動することを、集合Aの素子数がM+1個になるまで繰り返す。
【0050】
(A4) 集合Aから当該信号を出力する素子を削除し、残りの素子を各々集合S1,S2,…,SMに対応付ける。
【0051】
(A5) 集合Bの各素子から集合Aの各素子への距離を求め、距離が最小となる集合Bの素子と集合Aの素子の組み合わせを求め、前者を後者に対応付けられた集合Si(iはサフィックス)に移動する。集合Siの素子数がN−1個になると、集合Aから該当の素子を集合Siに移動する。ここで、iは1以上M以下の整数である。これを集合Bが空になるまで繰り返す。
【0052】
次に、フロアプラン更新手段31が、配置領域を、挿入されたバッファの総面積を加算した面積に変更する。また階層レイアウトの場合は、ブロックを挿入されたバッファの面積を加算した面積に変更する。その後、バッファをそれに接続する配線長が最小となる位置に配置し、さらに、素子間の重なりおよびブロック間の重なりが最小となるように各々の配置位置を微小変更する。
【0053】
次に、配線予測手段32が、各素子間の接続をスタイナ木により配線する。
【0054】
次に、性能計算手段8が、第1の実施の形態と同様に、面積および遅延を計算する。ただし、本実施の形態においては素子モデルが配置されているため、配線の容量値および抵抗値は、配線予測手段32で求めた配線の長さに基づいて計算される。
【0055】
表示手段9は、第1の実施の形態と同様に、性能計算結果、回路図、RTL論理記述を表示する。ただし、本実施の形態においては、フロアプラン結果を表示し、フロアプラン上で選択したパスをハイライト表示する機能も有する。フロアプラン表示の例を図9に示す。
【0056】
本実施の形態によれば、素子モデルを配置するフロアプラン手段30と素子間の配線を予測する配線予測手段32を設けたことにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0057】
(第3の実施の形態)
図10は、本発明の第3の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。図10において、RTL性能見積もり手段50は、第1の実施の形態あるいは第2の実施の形態のRTL記述入力手段3から性能計算手段8までをまとめたものであり、本実施の形態が第1、第2の実施の形態と異なるのは、遅延再計算手段51を設けた点である。以下、本実施の形態の動作を説明する。
【0058】
遅延再計算手段51は、外部からの要求に従い、選択されたパス上の不変属性を持つ信号も含めて論理を最適化したネットリストを、RTL性能見積もり手段50により生成された集積回路全体のゲートレベルネットリストとは別に作成し、そのパスの遅延を再計算する。その計算結果は、表示手段9において、図4(b)に示した画面のパス遅延値を更新して表示される。
【0059】
図11は、遅延再計算手段51の例を示す図である。図11の(a)はRTL性能見積もり手段50により生成されたゲートレベルネットリストにおける1つのパスを示し、(b)は同パスに対して遅延再計算手段51により生成されたネットリストを示す。(a)において、52は不変属性を持つ信号である。
【0060】
本実施の形態によれば、遅延再計算手段51を設けたことにより、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま高精度に性能見積もりを行うことができる。
【0061】
【発明の効果】
本発明によれば、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ内の素子モデルの種類を反映したネットリストを生成することにより、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定でき、RTL論理記述の品質を向上することができる。
【0062】
また、素子モデルを配置するフロアプランを行うことにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0063】
また、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま、より高精度に性能見積もりを行うことができる。
【0064】
また、部分回路への各入力信号の到達遅延時間を表示することにより、到達遅延時間を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図2】第1の実施の形態におけるRTL論理記述の例(a)、信号とRTL論理記述との対応付けの例(b)、部分回路合成手段の結果の例(c)を示す図
【図3】第1の実施の形態における不変部最適化手段の動作を示す流れ図
【図4】第1の実施の形態における表示手段による集積回路の面積および最大遅延の表示の例(a)、パス遅延表示の例(b)、回路図表示の例(c)、RTL論理記述表示の例(d)を示す図
【図5】第1の実施の形態における表示手段によるRTL論理記述の例(a)、回路図(b)、部分回路への到達遅延時間表示の例(c),(d)を示す図
【図6】第1の実施の形態における表示手段によるRTL論理記述の例(a)、回路図(b)、部分回路への到達遅延時間表示の例(c),(d)を示す図
【図7】本発明の第2の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図8】第2の実施の形態におけるフロアプラン手段の動作を示す流れ図
【図9】第2の実施の形態における表示手段の例を示す図
【図10】本発明の第3の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図11】第3の実施の形態における遅延再計算手段の動作により表示手段に表示される回路図(a)、遅延再計算手段により論理最適化されたネットリスト(b)を示す図
【符号の説明】
1・・・RTL論理記述
2・・・ライブラリ
3・・・RTL記述入力手段
4・・・構文解析手段
5・・・不変属性設定手段
6・・・部分回路合成手段
7・・・不変部最適化手段
8・・・性能計算手段
9・・・表示手段
10・・・部分回路
11・・・不変属性を持つ信号
30・・・フロアプラン手段
31・・・フロアプラン更新手段
32・・・配線予測手段
50・・・RTL性能見積もり手段
51・・・遅延再計算手段
52・・・不変属性を持つ信号
【発明の属する技術分野】
本発明は、半導体集積回路の設計支援装置にかかわり、特に、レジスタ転送レベル論理記述の段階で集積回路の面積および遅延時間を評価するレジスタ転送レベル設計支援装置に関するものである。
【0002】
【従来の技術】
ハードウエア記述言語(HDL)の普及により、レジスタ転送レベル(RTL:RegisterTransfer Level)で集積回路の論理記述を作成し、論理検証後、設計自動化ツールを用いて論理合成および配置配線を行う設計手法が標準的になっている。
【0003】
また、半導体プロセスの微細化により集積回路の動作速度に対する配線遅延の影響が大きくなってきていることから、物理設計段階になって初めて詳細な配線遅延を求めるのではなく、設計早期から物理設計を考慮し、タイミングの収束性を上げる設計手法が普及しつつある。その場合、設計早期に物理設計後のチップの面積やタイミングを見積もる技術が必要であるが、多くは、テスト的に論理合成を行い、その結果のゲートレベルネットリストを用いて見積もっていた。
【0004】
一方、論理合成を行うには時間がかかること、また、論理合成結果とRTL論理記述との対応付けが困難であるといった点から、RTL論理記述から直接、集積回路の性能を予測評価する取り組みが行われるようになってきた。RTL設計段階における性能評価に基づいてRTL論理記述の品質を上げることにより、下流の設計段階で対処するよりも大幅に少ない工数で集積回路の性能向上が可能となるからである。
【0005】
従来の技術においては、集積回路の性能評価指標として面積・遅延・消費電力を総合的に評価し、評価結果とRTL論理記述との対応付けをとろうとしている。(例えば、特許文献1参照)。
【0006】
【特許文献1】
特開平11−213029号公報(第4−8頁、図2)
【0007】
【発明が解決しようとする課題】
通常、論理合成を行う際に用いる論理ライブラリには、配線およびゲート数を削減する効果のあるANDゲートやORゲートを組み合わせた複合セルが含まれている。また、タイミングの“なまり”に対する設計規則に従い、論理合成ツールにより高ファンアウトや長距離配線の信号にはバッファが挿入される。
【0008】
半導体プロセスの微細化が0.13μm、0.10μmと進むにつれ、配線遅延の影響が大きくなるため、これらを考慮した性能見積もりが必要になってくると考えられる。
【0009】
しかしながら、上記従来の技術では、論理最適化用に使用可能な素子モデルとして、単純な2入力NAND、2入力NOR、インバータ等しか考慮していない。
【0010】
また、高ファンアウトの信号に対しては何ら対処がなされないまま、RTL論理記述に依存した形で残ったまま性能評価をすることになる。
【0011】
そのため、従来技術では、配線遅延の影響が大きくなる微細化プロセスでは見積もり精度が劣化することになる。
【0012】
従って、上記問題点に鑑み、本発明の目的は、RTL論理記述との対応を保ちつつ、タイミング制約および設計規則を考慮し、かつライブラリに含まれる複合セル等のセルの種類を反映して、高精度に集積回路の性能を見積もり、かつ性能評価に基づくRTL論理記述の品質向上を可能とするレジスタ転送レベル設計支援装置を提供することにある。
【0013】
【課題を解決するための手段】
本発明のレジスタ転送レベル設計支援装置は、集積回路のレジスタ転送レベル論理記述から集積回路の性能を見積もるものであって、集積回路を構成するための素子モデルを格納したライブラリと、前記論理記述を入力し記述中の各信号に対して代入箇所の対応付けを作成するRTL記述入力手段と、前記論理記述から構文解析木を作成する構文解析手段と、前記構文解析木中の前記RTL記述入力手段で対応付けを作成した信号に対して不変属性を設定する不変属性設定手段と、前記構文解析木から前記不変属性を持つ信号を除いた部分回路を論理最適化し前記ライブラリ内の素子モデルを割り付ける部分回路合成手段と、前記不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段と、前記集積回路の性能を計算する性能計算手段と、前記性能計算の結果と前記論理記述とを表示する表示手段とを備えたものである。
【0014】
これにより、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ内の素子モデルの種類を反映したネットリストを生成することができ、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定することができる。
【0015】
さらに、本発明のレジスタ転送レベル設計支援装置は、レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるものであって、前記ゲートレベルネットリスト内の素子モデルを指定領域内に配置するフロアプラン手段と、前記論理記述との対応付けを持つ信号に対して設計規則を満足するために前記フロアプラン手段による配置情報に基づきバッファを挿入する不変部最適化手段と、前記配置情報から素子間の接続の配線を予測する配線予測手段と、前記配線予測手段による配線予測値を用いて前記ゲートレベルネットリストの性能を計算する性能計算手段と、前記性能計算の結果と前記論理記述と前記フロアプランの結果を表示する表示手段とを備えたものである。
【0016】
これにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0017】
また、本発明のレジスタ転送レベル設計支援装置は、上記の構成において、さらに、外部からの要求に従い、選択されたパスに対して不変属性を持つ信号も含めて論理を最適化したネットリストを作成し、前記パスの遅延を計算する遅延再計算手段を備えたものである。
【0018】
これにより、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま、より高精度に性能見積もりを行うことができる。
【0019】
さらに、本発明のレジスタ転送レベル設計支援装置は、レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるものであって、前記論理記述上の指定箇所に対応する前記ゲートレベルネットリスト上の部分回路に到達する各信号の到達遅延時間を表示する表示手段を備えたものである。
【0020】
これにより、部分回路への各入力信号の到達遅延時間を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【0021】
【発明の実施の形態】
以下、本発明にかかわるレジスタ転送レベル設計支援装置の実施の形態について図面に基づいて詳細に説明する。
【0022】
(第1の実施の形態)
図1は、本発明の第1の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。
【0023】
図1において、1はレジスタ転送レベル(RTL)論理記述、2は集積回路を構成するための素子モデルを格納したライブラリ、3はRTL論理記述1を入力するRTL記述入力手段、4は入力したRTL論理記述1を構文解析し構文解析木を作成する構文解析手段、5は構文解析木中の信号に対して不変属性を設定する不変属性設定手段、6は構文解析木から不変属性を持つ信号を除いた部分回路を論理最適化しライブラリ2内の素子モデルに割付ける部分回路合成手段、7は不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段、8は集積回路の性能を計算する性能計算手段、9は表示手段である。
【0024】
図1を用いて、本実施の形態のレジスタ転送レベル設計支援装置の動作を説明する。
【0025】
最初に、RTL記述入力手段3がRTL論理記述1を入力し、その記述中に現れる信号名およびピン名に対し、各々が代入されている箇所としてファイル名および行番号を求め、信号名との対応付けを作成する。ハードウエア記述言語VerilogHDLの場合、wire文あるいはreg文により信号の名前を認識し、output文、input文およびinout文によりピンの名前を認識する。そして、それらの信号への代入文を含むalwaysブロックあるいはassign文の開始行の行番号をその信号と対応付けることとする。このとき、2以上のビット幅を持つ信号に対しては、その代入文がビット展開されていない場合、A[7:0]のようなバス表記のまま対応付けを作成する。ただし、その代入文がビット展開されている場合は、その代入文に従い、ビット別に対応付けを作成する。また、同じ信号名が複数のalwaysブロックあるいはassign文内で代入されている場合は、それらの全ての行番号を対応付ける。例えば、スリーステートバッファを表現する記述がこれに該当する。ただし、function文およびtask文内で定義された信号に対しては、その名前は集積回路において固有名とはなり得ないので、対応付けは作成しないこととする。
【0026】
次に、構文解析手段4が、入力したRTL記述の構文解析を行い、構文解析木を作成する。そして、不変属性設定手段5が、構文解析木中の記述との対応付けを持つ信号に対して不変属性を設定する。このとき、同期表現されたalwaysブロック内の信号に関しては、ゲートレベルネットリスト上でフリップフロップに割り付けられるため、不変属性は設定しないこととする。ラッチに割り付けられる信号も同様に不変属性は設定しない。
【0027】
次に、部分回路合成手段6が、構文解析木から不変属性を持つ信号を除いた部分回路を論理最適化し、ライブラリ2内の素子モデルを割り付けてゲートレベルネットリストを作成する。この論理最適化および素子モデル割り付けの方法は、通常の論理合成方法と同様でよい。ただし、フリップフロップやラッチのインスタンス名はRTL論理記述上の信号名と一致するものとする。また、電圧や温度等の動作条件や動作周波数等の設計制約は、通常の論理合成と同様に与えられているものとする。
【0028】
図2は、RTL記述入力手段3から部分回路合成手段6の例を示す図である。図2の(a)は入力するRTL論理記述の一部であり、信号定義を行うwire文と信号Yに対する代入文を含むassign文が示されている。(b)は(a)の記述中で定義されている信号に対する記述との対応付けを示す例であり、ファイル名と行番号が記憶される。また、ビット幅を持つものはバス表記されている。(c)は、(a)のassign文が示す部分回路を対象とする部分回路合成手段6の結果を示す図である。図2(c)において、10は部分回路であり、11は不変属性を設定された信号を示す。部分回路合成手段6により、部分回路10は、ライブラリ2に格納されている素子モデルのゲートレベルネットリストになる。
【0029】
次に、不変部最適化手段7が、不変属性を持つ信号に対して、ファンアウト数制限などの設計規則を満足するためにバッファを挿入する。このとき、バッファを挿入することにより生成された新たな信号に対しても、元の信号名が持つ記述との対応付けを継承するものとする。
【0030】
図3はファンアウト数制限に対する不変部最適化手段7の動作を示す流れ図である。図3を用いて不変部最適化手段7の動作を説明する。ステップ20からステップ22の処理により、不変属性を持つ信号のうちファンアウト数が設計規則以上の信号を順次選択する。選択された信号に対して、ステップ23およびステップ24の処理により、N分木構造となるようにバッファを挿入する。ここで、Nは設計規則に規定された最大ファンアウト数である。
【0031】
次に、性能計算手段8が、生成されたゲートレベルネットリストの性能を計算する。ここで、性能としては、面積や遅延があげられる。面積はネットリストを構成する素子の面積の総和で求め、遅延はレジスタ間パス上の素子の内部遅延と配線遅延の和で求めることができる。ここで、素子の内部遅延はライブラリ2から得られ、配線遅延は配線の容量値と抵抗値を乗じた値で得られる。配線の容量および抵抗は、ファンアウト数によりモデル化された値を使用することができる。また、性能計算手段8は、各素子の入力ピンに対して、そこに到達するパスの最大遅延値を属性として設定する。
【0032】
性能計算手段8の計算結果は、表示手段9により確認することができる。図4に表示手段9の表示例を示す。図4の(a)は集積回路の面積、最大遅延の表示例である。(b)は各レジスタ間パスの遅延の一覧の表示例である。(c)は(b)の一覧から任意のパスを選択することにより表示されるそのパスの回路図である。回路図上で任意の信号を選択することにより、その信号への最大遅延を回路図上に表示することができる。(d)は(c)の回路図から不変属性を持つ信号を選択することにより表示されるその信号に対応付けされたRTL論理記述である。また、逆に、(d)のように表示されたRTL論理記述から任意の信号名を選択することにより、その信号への最大遅延を持つパスの回路図を表示することができる。
【0033】
さらに、表示手段9は、表示された論理記述上のalwaysやassignを選択することにより、それに対応する部分回路に到達する各信号の到達遅延を表示する。その例を図5および図6に示す。
【0034】
図5の(a)は論理記述の表示例であり、ここでalwaysが選択されたとする。(b)はそのときに表示される回路図である。(c)はその部分回路に到達する信号の到達遅延の表示である。(d)は(c)で2.0の到達遅延であった信号Dの到達遅延を4.0としている。
【0035】
図6は、図5(a)のRTL記述を変更した場合の回路図(b)および到達遅延表示(c),(d)である。この例では、図5の場合には信号Dの到達遅延に関わらず、信号Yへの到達遅延は(c)と(d)で同じ(9.6)であり、図6の場合には信号Yへの到達遅延は(c)の方が速く(8.9<10.1)、かつ図5(c)よりも速くなっている(8.9<9.6)ことが示されている。従って、RTL設計者は、信号Dの到達遅延に注目し、RTL記述を図5(a)のようにするか、図6(a)のようにするかを評価することができる。
【0036】
以上のように本実施の形態によれば、不変属性設定手段5と部分回路合成手段6と不変部最適化手段7を設けることにより、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ2内の素子モデルの種類を反映したネットリストを生成することができる。その結果、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定でき、RTL論理記述の品質を向上することができる。
【0037】
さらに、表示手段9が、部分回路への各入力信号の到達遅延時間を表示することにより、到達遅延を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【0038】
(第2の実施の形態)
図7は、本発明の第2の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。図1と異なるのは、部分回路合成手段6と不変部最適化手段7との間にフロアプラン手段30を設け、不変部最適化手段7と性能計算手段8との間にフロアプラン更新手段31および配線予測手段32を設けた点である。以下、フロアプラン手段30以降の動作について説明する。
【0039】
まず、フロアプラン手段30は、ゲートレベルネットリスト内の素子モデルを配置領域内に配置する。
【0040】
図8はフロアプラン手段30の動作を示す流れ図である。
【0041】
ステップ40で、指定した素子占有率および縦横比に従い配置領域を設定する。素子占有率は、1.0以下の正の実数で表現され、その領域に占める素子面積の割合を示し、レイアウト設計時の配線層数やネットリストに依存するが、レイアウト設計前には経験値から0.8前後の値とする場合が多い。ネットリスト内の素子の総面積を素子占有率で除した値が配置領域の面積となる。
【0042】
次にステップ41で、配置領域の周辺上に入出力ピンあるいはI/Oセルを配置する。入出力ピンあるいはI/Oセルの配置順はランダムあるいは外部からの指定とする。
【0043】
次にステップ42で、対象とする集積回路を階層的にレイアウト設計するか否かを指定し、階層レイアウトを行わない場合はステップ43から45の処理を、階層レイアウトを行う場合はステップ46から49の処理を行う。通常、集積回路の規模が使用するレイアウトツールの処理可能な回路規模を超える場合に階層レイアウトが採用される。回路規模をゲート数で表現するならば、本実施の形態の場合、ネットリストに含まれる全素子の面積を2入力NANDの素子の面積で除した値をゲート数とみなすことができる。
【0044】
先に前者について説明する。ステップ43で、部分回路合成手段6で論理最適化の対象とした各部分回路を各々1つのグループとし、次のステップ44で、それらグループを配置領域内に配置する。このとき、各グループは、グループ内に含まれる素子の総面積を前記素子占有率で除した面積を持ち、正方形で固定されているものとする。グループの配置は、グループ間を接続する配線長の最小化およびグループの重なり面積の最小化を目的として実行される。配線長は、接続するグループの中心間のマンハッタン長で求めることができる。
【0045】
次にステップ45で、各グループ内の素子モデルをグループが占める領域内に配置する。このときの配置も同様に、素子間を接続する配線長の最小化および素子の重なり面積の最小化を目的として実行される。
【0046】
一方、後者の場合は、ステップ46で、ゲートレベルネットリストをレイアウト設計の単位となるブロックに分割する。各ブロックは、レイアウトツールが処理可能な回路規模以下になるように分割され、ブロック内に含まれる素子の総面積を前記素子占有率で除した面積を持つ。次にステップ47で、各ブロックを配置領域内に配置する。この配置は、人手指定あるいはステップ44と同様に自動処理を行う。
【0047】
次にステップ48で、各ブロックのピンをブロック周辺上に配置する。このピン配置は、配線長が最小となることを目的として実行される。次にステップ49で、ブロック内の配置を決定する。その処理は前記ステップ43から45の処理と同様である。
【0048】
次に、不変部最適化手段7が、第1の実施の形態と同様に、不変属性を持つ信号に対して、ファンアウト数制限などの設計規則を満足するためにバッファを挿入する。ただし、本実施の形態においては素子が配置されているため、図3のステップ23の処理は、その信号を入力とする素子を、その配置位置を基準に分類することになる。その素子分類方法を以下に示す。ここで、FOはその信号のファンアウト数、Nは設計規則の最大ファンアウト数とする。
【0049】
(素子分類方法)
(A1) M=FO/N
(A2) 集合A={当該信号を出力する素子}、集合B={当該信号を入力する素子}
(A3) 集合Bの中から、集合Aの全素子からの距離が最大の素子を集合Aに移動することを、集合Aの素子数がM+1個になるまで繰り返す。
【0050】
(A4) 集合Aから当該信号を出力する素子を削除し、残りの素子を各々集合S1,S2,…,SMに対応付ける。
【0051】
(A5) 集合Bの各素子から集合Aの各素子への距離を求め、距離が最小となる集合Bの素子と集合Aの素子の組み合わせを求め、前者を後者に対応付けられた集合Si(iはサフィックス)に移動する。集合Siの素子数がN−1個になると、集合Aから該当の素子を集合Siに移動する。ここで、iは1以上M以下の整数である。これを集合Bが空になるまで繰り返す。
【0052】
次に、フロアプラン更新手段31が、配置領域を、挿入されたバッファの総面積を加算した面積に変更する。また階層レイアウトの場合は、ブロックを挿入されたバッファの面積を加算した面積に変更する。その後、バッファをそれに接続する配線長が最小となる位置に配置し、さらに、素子間の重なりおよびブロック間の重なりが最小となるように各々の配置位置を微小変更する。
【0053】
次に、配線予測手段32が、各素子間の接続をスタイナ木により配線する。
【0054】
次に、性能計算手段8が、第1の実施の形態と同様に、面積および遅延を計算する。ただし、本実施の形態においては素子モデルが配置されているため、配線の容量値および抵抗値は、配線予測手段32で求めた配線の長さに基づいて計算される。
【0055】
表示手段9は、第1の実施の形態と同様に、性能計算結果、回路図、RTL論理記述を表示する。ただし、本実施の形態においては、フロアプラン結果を表示し、フロアプラン上で選択したパスをハイライト表示する機能も有する。フロアプラン表示の例を図9に示す。
【0056】
本実施の形態によれば、素子モデルを配置するフロアプラン手段30と素子間の配線を予測する配線予測手段32を設けたことにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0057】
(第3の実施の形態)
図10は、本発明の第3の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図である。図10において、RTL性能見積もり手段50は、第1の実施の形態あるいは第2の実施の形態のRTL記述入力手段3から性能計算手段8までをまとめたものであり、本実施の形態が第1、第2の実施の形態と異なるのは、遅延再計算手段51を設けた点である。以下、本実施の形態の動作を説明する。
【0058】
遅延再計算手段51は、外部からの要求に従い、選択されたパス上の不変属性を持つ信号も含めて論理を最適化したネットリストを、RTL性能見積もり手段50により生成された集積回路全体のゲートレベルネットリストとは別に作成し、そのパスの遅延を再計算する。その計算結果は、表示手段9において、図4(b)に示した画面のパス遅延値を更新して表示される。
【0059】
図11は、遅延再計算手段51の例を示す図である。図11の(a)はRTL性能見積もり手段50により生成されたゲートレベルネットリストにおける1つのパスを示し、(b)は同パスに対して遅延再計算手段51により生成されたネットリストを示す。(a)において、52は不変属性を持つ信号である。
【0060】
本実施の形態によれば、遅延再計算手段51を設けたことにより、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま高精度に性能見積もりを行うことができる。
【0061】
【発明の効果】
本発明によれば、RTL論理記述との対応付けを保ちつつ、タイミング制約および設計規則を考慮し、かつ複合論理のようなライブラリ内の素子モデルの種類を反映したネットリストを生成することにより、RTL設計段階で集積回路の性能を高精度に見積もることができるとともに、性能上問題となる箇所をRTL論理記述上に特定でき、RTL論理記述の品質を向上することができる。
【0062】
また、素子モデルを配置するフロアプランを行うことにより、微細プロセスで大きな割合を占める素子間の配線遅延をより高精度に見積もることができる。
【0063】
また、不変属性が設定された信号も含めた論理最適化の結果を評価することができ、RTL論理記述との対応付けを保ったまま、より高精度に性能見積もりを行うことができる。
【0064】
また、部分回路への各入力信号の到達遅延時間を表示することにより、到達遅延時間を考慮したRTL設計が可能となり、RTL論理記述の品質を向上することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図2】第1の実施の形態におけるRTL論理記述の例(a)、信号とRTL論理記述との対応付けの例(b)、部分回路合成手段の結果の例(c)を示す図
【図3】第1の実施の形態における不変部最適化手段の動作を示す流れ図
【図4】第1の実施の形態における表示手段による集積回路の面積および最大遅延の表示の例(a)、パス遅延表示の例(b)、回路図表示の例(c)、RTL論理記述表示の例(d)を示す図
【図5】第1の実施の形態における表示手段によるRTL論理記述の例(a)、回路図(b)、部分回路への到達遅延時間表示の例(c),(d)を示す図
【図6】第1の実施の形態における表示手段によるRTL論理記述の例(a)、回路図(b)、部分回路への到達遅延時間表示の例(c),(d)を示す図
【図7】本発明の第2の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図8】第2の実施の形態におけるフロアプラン手段の動作を示す流れ図
【図9】第2の実施の形態における表示手段の例を示す図
【図10】本発明の第3の実施の形態のレジスタ転送レベル設計支援装置の構成を示す図
【図11】第3の実施の形態における遅延再計算手段の動作により表示手段に表示される回路図(a)、遅延再計算手段により論理最適化されたネットリスト(b)を示す図
【符号の説明】
1・・・RTL論理記述
2・・・ライブラリ
3・・・RTL記述入力手段
4・・・構文解析手段
5・・・不変属性設定手段
6・・・部分回路合成手段
7・・・不変部最適化手段
8・・・性能計算手段
9・・・表示手段
10・・・部分回路
11・・・不変属性を持つ信号
30・・・フロアプラン手段
31・・・フロアプラン更新手段
32・・・配線予測手段
50・・・RTL性能見積もり手段
51・・・遅延再計算手段
52・・・不変属性を持つ信号
Claims (4)
- 集積回路のレジスタ転送レベル論理記述から集積回路の性能を見積もるレジスタ転送レベル設計支援装置であって、
集積回路を構成するための素子モデルを格納したライブラリと、
前記論理記述を入力し記述中の各信号に対して代入箇所の対応付けを作成するRTL記述入力手段と、
前記論理記述から構文解析木を作成する構文解析手段と、
前記構文解析木中の前記RTL記述入力手段で対応付けを作成した信号に対して不変属性を設定する不変属性設定手段と、
前記構文解析木から前記不変属性を持つ信号を除いた部分回路を論理最適化し前記ライブラリ内の素子モデルを割り付ける部分回路合成手段と、
前記不変属性を持つ信号に対して設計規則を満足するためにバッファを挿入する不変部最適化手段と、
前記集積回路の性能を計算する性能計算手段と、
前記性能計算の結果と前記論理記述とを表示する表示手段
とを備えたことを特徴とするレジスタ転送レベル設計支援装置。 - レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるレジスタ転送レベル設計支援装置であって、
前記ゲートレベルネットリスト内の素子モデルを指定領域内に配置するフロアプラン手段と、
前記論理記述との対応付けを持つ信号に対して設計規則を満足するために前記フロアプラン手段による配置情報に基づきバッファを挿入する不変部最適化手段と、
前記配置情報から素子間の接続の配線を予測する配線予測手段と、
前記配線予測手段による配線予測値を用いて前記ゲートレベルネットリストの性能を計算する性能計算手段と、
前記性能計算の結果と前記論理記述と前記フロアプランの結果を表示する表示手段
とを備えたことを特徴とするレジスタ転送レベル設計支援装置。 - さらに、外部からの要求に従い、選択されたパスに対して不変属性を持つ信号も含めて論理を最適化したネットリストを作成し、前記パスの遅延を計算する遅延再計算手段を備えたことを特徴とする請求項1または請求項2に記載のレジスタ転送レベル設計支援装置。
- レジスタ転送レベル論理記述との対応付けを持つ信号を含むゲートレベルネットリストから集積回路の性能を見積もるレジスタ転送レベル設計支援装置であって、
前記論理記述上の指定箇所に対応する前記ゲートレベルネットリスト上の部分回路に到達する各信号の到達遅延時間を表示する表示手段を備えたことを特徴とするレジスタ転送レベル設計支援装置。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002264308A JP2004102703A (ja) | 2002-09-10 | 2002-09-10 | レジスタ転送レベル設計支援装置 |
| US10/654,884 US20040049753A1 (en) | 2002-09-10 | 2003-09-05 | System for estimating performance of integrated circuit in register transfer level |
| CNA031568319A CN1495649A (zh) | 2002-09-10 | 2003-09-10 | 用于在寄存器传送级对集成电路的性能进行估算的系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002264308A JP2004102703A (ja) | 2002-09-10 | 2002-09-10 | レジスタ転送レベル設計支援装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004102703A true JP2004102703A (ja) | 2004-04-02 |
Family
ID=31986510
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002264308A Withdrawn JP2004102703A (ja) | 2002-09-10 | 2002-09-10 | レジスタ転送レベル設計支援装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20040049753A1 (ja) |
| JP (1) | JP2004102703A (ja) |
| CN (1) | CN1495649A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006025412A1 (ja) * | 2004-09-01 | 2006-03-09 | Advantest Corporation | 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置 |
| US7506279B2 (en) * | 2003-08-22 | 2009-03-17 | Ricoh Company, Ltd | Design supporting apparatus capable of checking functional description of large-scale integrated circuit to detect fault in said circuit |
| US8136059B2 (en) | 2008-10-24 | 2012-03-13 | International Business Machines Corporation | Indeterminate state logic insertion |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7137087B1 (en) * | 2003-08-20 | 2006-11-14 | Adaptec, Inc. | Integrated circuit verification scheme |
| JP4610313B2 (ja) * | 2004-11-29 | 2011-01-12 | 富士通セミコンダクター株式会社 | 半導体集積回路の設計方法 |
| JP4453592B2 (ja) * | 2005-03-29 | 2010-04-21 | 日本電気株式会社 | Rtl入力プログラムの不具合解析支援装置及びその方法ならびに部分rtl生成装置 |
| US8966414B2 (en) * | 2009-05-29 | 2015-02-24 | Cypress Semiconductor Corporation | Implementing a circuit using an integrated circuit including parametric analog elements |
| CN102339338B (zh) * | 2010-07-22 | 2013-03-27 | 上海华虹集成电路有限责任公司 | 一种时序修复方法 |
| CN106503296B (zh) * | 2016-09-23 | 2019-08-27 | 京微齐力(北京)科技有限公司 | 一种基于白盒的工艺映射方法及装置 |
| US10223489B2 (en) * | 2016-11-30 | 2019-03-05 | International Business Machines Corporation | Placement clustering-based white space reservation |
| KR102718979B1 (ko) * | 2017-02-10 | 2024-10-18 | 삼성전자주식회사 | Beol을 고려하여 집적 회로를 설계하기 위한 컴퓨터 구현 방법 및 컴퓨팅 시스템 |
| CN108170992A (zh) * | 2018-01-24 | 2018-06-15 | 盛科网络(苏州)有限公司 | 一种芯片设计中定位绕线拥塞的方法及系统 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5555201A (en) * | 1990-04-06 | 1996-09-10 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information |
| US5220512A (en) * | 1990-04-19 | 1993-06-15 | Lsi Logic Corporation | System for simultaneous, interactive presentation of electronic circuit diagrams and simulation data |
| US6132109A (en) * | 1994-04-12 | 2000-10-17 | Synopsys, Inc. | Architecture and methods for a hardware description language source level debugging system |
| US5937190A (en) * | 1994-04-12 | 1999-08-10 | Synopsys, Inc. | Architecture and methods for a hardware description language source level analysis and debugging system |
| JP2874628B2 (ja) * | 1996-01-30 | 1999-03-24 | 日本電気株式会社 | 論理回路の最適化装置及びその方法 |
| US6169968B1 (en) * | 1997-07-09 | 2001-01-02 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for estimating performance integrated circuit |
| WO2004102657A1 (ja) * | 1998-01-26 | 2004-11-25 | Masahiro Sano | 回路内信号線の最適化方法、最適化装置および最適化プログラムを格納した記憶媒体並びに回路設計方法および回路設計用プログラムを格納した記憶媒体 |
| US6286128B1 (en) * | 1998-02-11 | 2001-09-04 | Monterey Design Systems, Inc. | Method for design optimization using logical and physical information |
| US6292931B1 (en) * | 1998-02-20 | 2001-09-18 | Lsi Logic Corporation | RTL analysis tool |
| US6519754B1 (en) * | 1999-05-17 | 2003-02-11 | Synplicity, Inc. | Methods and apparatuses for designing integrated circuits |
| JP2001067384A (ja) * | 1999-08-26 | 2001-03-16 | Matsushita Electric Ind Co Ltd | 集積回路装置の設計用データベース及び集積回路装置の設計方法 |
-
2002
- 2002-09-10 JP JP2002264308A patent/JP2004102703A/ja not_active Withdrawn
-
2003
- 2003-09-05 US US10/654,884 patent/US20040049753A1/en not_active Abandoned
- 2003-09-10 CN CNA031568319A patent/CN1495649A/zh active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7506279B2 (en) * | 2003-08-22 | 2009-03-17 | Ricoh Company, Ltd | Design supporting apparatus capable of checking functional description of large-scale integrated circuit to detect fault in said circuit |
| WO2006025412A1 (ja) * | 2004-09-01 | 2006-03-09 | Advantest Corporation | 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置 |
| US8136059B2 (en) | 2008-10-24 | 2012-03-13 | International Business Machines Corporation | Indeterminate state logic insertion |
Also Published As
| Publication number | Publication date |
|---|---|
| US20040049753A1 (en) | 2004-03-11 |
| CN1495649A (zh) | 2004-05-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8151228B2 (en) | Method and apparatus for automated circuit design | |
| US6378123B1 (en) | Method of handling macro components in circuit design synthesis | |
| US6898770B2 (en) | Split and merge design flow concept for fast turnaround time of circuit layout design | |
| JP4477632B2 (ja) | 自動回路設計のための方法と装置 | |
| US6289498B1 (en) | VDHL/Verilog expertise and gate synthesis automation system | |
| US20050268258A1 (en) | Rule-based design consultant and method for integrated circuit design | |
| US7873930B2 (en) | Methods and systems for optimizing designs of integrated circuits | |
| CN104573169A (zh) | 以自动流水线操作能力设计集成电路的方法和工具 | |
| CN102741777B (zh) | 基于分区的漏电功率优化 | |
| WO2000065490A1 (en) | Timing optimization in presence of interconnect delays | |
| CN107918694A (zh) | 用于减少集成电路上的延迟的方法 | |
| CN112069763B (zh) | 修正电路的方法 | |
| US10599882B1 (en) | Using a layer performance metric (LPM) to perform placement, routing, and/or optimization of an integrated circuit (IC) design | |
| US8667435B1 (en) | Function symmetry-based optimization for physical synthesis of programmable integrated circuits | |
| JP2004102703A (ja) | レジスタ転送レベル設計支援装置 | |
| US9047434B2 (en) | Clustering for processing of circuit design data | |
| JPH09106407A (ja) | 設計支援装置 | |
| JPH10256387A (ja) | 繰り返し再構成による組み合わせ回路レイアウトの最適化 | |
| US20110185335A1 (en) | Determining an order for visiting circuit blocks in a circuit design for fixing design requirement violations | |
| US8762904B2 (en) | Optimizing logic synthesis for environmental insensitivity | |
| US6877140B1 (en) | Method and system for generating a schematic representing bus structures | |
| US7275223B2 (en) | Facilitating high-level validation of integrated circuits in parallel with development of blocks in a hierarchical design approach | |
| Kahng et al. | Timing closure | |
| CN116341479A (zh) | 一种基于可布线性的重映射方法及集成电路 | |
| Lee | Implications of Modern Semiconductor Technologies on Gate Sizing |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050908 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080815 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080826 |
|
| A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20081016 |