米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 松下電器産業株式会社

発明の名称 レジスタ転送レベル設計支援装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平7−28877
公開日 平成7年(1995)1月31日
出願番号 特願平5−171549
出願日 平成5年(1993)7月12日
代理人 【弁理士】
【氏名又は名称】前田 弘 (外2名)
発明者 福井 正博 / 岩崎 知恵
要約 目的
回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する回路設計のレジスタ転送レベルにおいて、レイアウトを加味して回路の面積及び動作速度を精度よく推定することができ、推定と同時にレイアウトの概略を設計できるレジスタ転送レベル設計支援装置を提供する。

構成
複数個のライブラリ推定手段10によりライブラリが与えられ、レイアウト設計方式記述手段20a〜20cにより互いに異なる複数個のレイアウト設計方式が与えられる。データパス部性能推定手段30a〜30cのそれぞれは、前記ライブラリ及びレイアウト設計方式を用いて回路のデータパス部の面積及び動作速度を推定する。フロアプラン最適化手段80は、互いに異なる複数個のブロック実現方法及びその推定結果を比較し検討することによって、回路全体の面積及び動作速度の両方を考慮したブロック形状の最適化を図る。
特許請求の範囲
【請求項1】 レジスタ転送レベルにおいて、回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する回路設計を支援するレジスタ転送レベル設計支援装置であって、それぞれが、レジスタ間の同一の演算を異なる面積及び動作速度で実現する複数個の基本回路からなる基本回路群を生成する複数個のライブラリ推定手段と、それぞれが異なるレイアウト設計方式を供給する複数個のレイアウト設計方式記述手段と、それぞれが、複数個の前記基本回路群からなるライブラリと複数個の前記レイアウト設計方式の何れかとの組み合わせをデータパスブロック実現方法として選択し、選択されたデータパスブロック実現方法に基づいて前記データパス部の面積及び動作速度を推定する複数個のデータパス部性能推定手段と、それぞれが異なるコントロールブロック実現方法に基づいて前記コントロール部の面積及び動作速度を推定する複数個のコントロール部性能推定手段と、前記回路全体の動作速度の制約に基づいて複数個の前記データパスブロック実現方法と複数個の前記コントロールブロック実現方法とを選択し、選択された複数個のデータパスブロック実現方法及び複数個のコントロールブロック実現方法に基づいて前記データパス部及びコントロール部のブロック形状の最適化を行なうフロアプラン最適化手段とを備えていることを特徴とするレジスタ転送レベル設計支援装置。
【請求項2】 それぞれが前記複数個のライブラリ推定手段のそれぞれに対応して設けられ対応するライブラリ推定手段の推定結果を表示する複数個のライブラリ推定結果表示手段と、それぞれが前記複数個のデータパス部性能推定手段のそれぞれに対応して設けられ対応するデータパス部性能推定手段の推定結果を表示する複数個のデータパス部性能推定結果表示手段と、それぞれが前記複数個のコントロール部性能推定手段のそれぞれに対応して設けられ対応するコントロール部性能推定手段の推定結果を表示する複数個のコントロール部性能推定結果表示手段と、前記フロアプラン最適化手段に対応して設けられ最適化結果を表示するフロアプラン最適化結果表示手段と、それぞれが前記複数個のライブラリ推定手段のそれぞれに対応して設けられ対応するライブラリ推定手段のユーザ割り込みを受け付ける複数個のライブラリ推定割り込み手段と、それぞれが前記複数個のデータパス部性能推定手段のそれぞれに対応して設けられ対応するデータパス部性能推定手段のユーザ割り込みを受け付ける複数個のデータパス部性能推定割り込み手段と、それぞれが前記複数個のコントロール部性能推定手段のそれぞれに対応して設けられ対応するコントロール部性能推定手段のユーザ割り込みを受け付ける複数個のコントロール部性能推定割り込み手段と、前記フロアプラン最適化手段に対応して設けられユーザ割り込みを受け付けるフロアプラン最適化割り込み手段とを備え、ユーザ割り込みにより設定条件が変化した場合に、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段の中から変化した設定条件に関連する手段を選択し起動することによって、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段の間の設定条件の矛盾をなくすように構成されていることを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項3】 レジスタ間転送及びその制御に要する遅延時間と、レジスタ間転送及びその処理順の制御方法が言語又は図で表現されたデータと、回路全体の動作速度とを表示する表示手段と、前記回路全体の動作速度の変更要求及び前記遅延時間の変更要求をユーザ割り込みとして受け付ける割り込み手段とを備え、前記ユーザ割り込みにより、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段を起動することによって、回路の面積及び動作速度の両方を考慮した最適化を行なうように構成されていることを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項4】 前記複数個のライブラリ推定手段のそれぞれは、対応するファンクションの面積及び動作速度を、トランジスタの幅Wと長さLとの比即ちW/Lをパラメータとして、抽象的ゲート回路の接続関係をビット展開可能に示す抽象的ゲート回路構造テンプレートと該抽象的ゲート回路構造テンプレートの抽象的ゲート回路に対する製造テクノロジに依存した情報とを用いて推定することを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項5】 前記複数個のデータパス部性能推定手段のそれぞれは、レイアウト設計方式のレイアウト条件の設定にオンオフ状態が対応するスイッチ手段と、前記レイアウト条件が設定された場合に前記レイアウト条件に基づいてデータパス部の面積及び動作速度を推定する手段とを有し、前記複数個のレイアウト設計方式記述手段のそれぞれは、対応するデータパス部性能推定手段のスイッチ手段のオンオフ状態によって、レイアウト設計方式のレイアウト条件を設定することを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項6】 前記複数個のデータパス部性能推定手段のそれぞれは、レイアウト設計方式のレイアウト条件の設定にオンオフ状態が対応するスイッチ手段と、前記レイアウト条件が設定された場合に前記レイアウト条件に基づいてデータパス部の面積及び動作速度を推定する手段とを有し、さらに、機能セルを一行に配置する場合に該機能セルの一次元配置を最適化する手段、配線をバス又はマルチプレクサで実現する場合の実現方法を最適化する手段並びにデータ転送の速度及びブロックの面積を推定する手段のうちの少なくとも1つの手段を有していることを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項7】 前記複数個のデータパス部性能推定手段のそれぞれは、各セル行に1個又は複数個のセルを配置する場合において、各セル行に含まれるセル及びフィードスルー配線の幅の総和を当該セル行の幅とし、全てのセル行の幅のうちの最大幅をブロックの幅Wとし、セルの高さの総和をブロックの高さHとし、レジスタ間データ転送に要する遅延時間の最大値をブロックの動作速度Sとし、セル行の並びの変更を順次繰り返すことによりブロックにおける前記幅W、高さH及び動作速度Sの関数で定義される評価関数を最小化することによってセル行の線形配置の最適化を行なうことを特徴とする請求項1に記載のレジスタ転送レベル設計支援装置。
【請求項8】 前記フロアプラン最適化手段は、各ブロック毎に、回路全体の動作速度の制約に基づいて当該ブロックの動作速度の制約を求め、当該ブロックの動作速度の制約を満足するブロック実現方法とブロック形状との組み合わせを列挙し、回路全体の面積が最小となるように各ブロック毎のブロック実現方法とブロック形状との組み合わせを選択することを特徴とするレジスタ転送レベル設計支援装置。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、レジスタ転送レベルにおける回路設計を支援するレジスタ転送レベル設計支援装置に関するものである。
【0002】
【従来の技術】昨今、回路設計のレジスタ転送レベルにおいて、ハードウエア記述言語やグラフィックを用いた記述がされるようになってきた。これらの合成方法に関して共通に行なわれていることは、データの流れを、データの演算を扱うデータパス部分と演算の処理順序を扱うコントロール部分とに明確に分離し、最適化を行なうことである。
【0003】データパス部は比較的規則的な繰り返し回路で実現されるため、レジスタ間の遅延時間を予想し最適化することが容易である。これに対して、コントロール部はランダム性が強く予想及び最適化が困難である。前記データパス部とコントロール部とを含むシステムをVLSIのマスクレイアウトに実現する場合には、次の2種類の回路設計方法がある。
【0004】■ データパス部とコントロール部とをまとめて一つのブロックで実現する回路設計方法■ データパス部とコントロール部とをレイアウト上別のブロックとして扱う回路設計方法システムの回路規模が1000ゲート以下程度で比較的小さい場合、又は、データパス部の回路規模(ゲートの個数)がコントロール部に比較して約10倍以上でない場合には、■の回路設計方法が面積最小化の点で有効であり、それ以外の場合には■の回路設計方法を用い、データパス部に専用のレイアウト方法を適用することが有効である。
【0005】■の回路設計方法を用いた場合には、チップ上のほとんどの面積はデータパス部で占められる。このため、チップ面積の推定においてデータパス部の推定がコントロール部の推定に比較してより重要となる。ただし、タイミングの点からコントロール部及びデータパス部が共に条件を満足するように実現する必要がある。 以下、回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する場合の従来の回路設計方法及びそのレジスタ転送レベルにおける設計支援方法を説明する。
【0006】図8は前記従来の回路設計方法を示す流れ図であり、図8に示すように、回路設計は、ステップS51のレジスタ転送レベルの設計から、ステップS54のロジックレベルの設計を経て、ステップS57のレイアウト設計へと進められ、回路の概念モデルを抽象度の高いものから具体的なものへと順次変換していく。
【0007】まず、ステップS51のレジスタ転送レベルの設計では、個々の演算に対応して演算器(ハードウエア)が定義され、設計データはレジスタ間のデータ転送とそれらの間の順序制御部分とにより構成される。前記レジスタ間のデータ転送は、ひとまとめにしてデータパスブロックとして扱われる。一方、制御部分は有限状態機械(Finite State Machine)で表現される。次に、ステップS54のロジックレベルの設計では、レジスタ転送レベルで定められた詳細仕様に従い各ブロックを論理ゲートへ展開する。セルライブラリを使用してその中から適当なものを選択しそれらを組み合わして構成する。そして、ステップS57のレイアウト設計で、各ブロックの配置やブロック間の配線等を定めLSIのマスクパターンを設計する。
【0008】また、図8に示すように、ステップS51のレジスタ転送レベルの設計後、ステップS52でチップサイズやシステムの動作速度等の推定をレジスタ転送レベルの回路図に基づいて行ない、ステップS53で推定値を要求仕様と比較して設計結果を検証し、推定値が要求仕様を満たしている場合にはステップS54のロジックレベルの設計へ移行する一方、推定値が要求仕様を満たしていない場合にはステップS51へ戻りレジスタ転送レベルでの再設計を行なう。同様に、ステップS54のロジックレベルの設計後、ステップS55でチップサイズやシステムの動作速度等の推定をロジックレベルの回路図に基づいて行ない、ステップS56で推定値を要求仕様と比較して設計結果を検証し、推定値が要求仕様を満たしている場合にはステップS57のレイアウト設計へ移行する一方、推定値が要求仕様を満たしていない場合にはステップS54へ戻りロジックレベルでの再設計を行なう。
【0009】以上のように、回路設計の上流即ちレジスタ転送レベルにおいて、図8のステップS52に示すように、回路の面積や動作速度等の見積もりが行なわれることは、レジスタ転送レベルにおける設計支援として非常に重要である。
【0010】レジスタ転送レベルにおける従来の設計支援方法の具体例としては、以下に記述するように、レイアウトを意識せずに推定を行なうもの、又は、スタンダードセルのレイアウトモデルを用いて面積、動作速度を推定するものが提案されている。
【0011】Gajskiのデータパス面積の見積りでは、アイ・イー・イー・イー インターナショナル・カンファレンス・オン・コンピュータ・エイディッド・デザイン(1991)の第34頁から第37頁(IEEE International Conference on Computer-Aided Design (1991) pp.34-37)に記載されるように、データパスのレイアウトモデルをビットスライス構造とし、データパスの面積を次の式(1)を用いて求める。
【0012】
ビット数 × (ビットスライスの面積 + 配線面積) …(1)
式(1)における“ビットスライスの面積”は、ライブラリ内のセルのトランジスタピッチの平均とビットスライスのトランジスタ数との積をビットスライスの高さとし、ビットスライスの幅をライブラリに関し一定とすることにより、前記ビットスライスの高さと幅との積として求める。また、ビットスライス間の配線領域の面積である“配線面積”は、配線トラック数、配線ピッチ及び配線チャネル長の関数として求める。前記配線チャネル長はビットスライスの長さとし、配線トラック数はビットスライス内の全コンポーネントをmin-cut で1次元配置しleft-edge 法で配線して見積もる。
【0013】Gajskiのデータパス速度の見積りでは、アイ・イー・イー ヨーロッパ・デザイン・オートメーション・カンファレンス(1992)の第60頁から第65頁(IEEE Europe Design Automation Conference (1992) pp.60-65)に記載されるように、データパスの遅延を全オペレーションの遅延の最大値と定義し、各オペレーションの遅延を、ソースレジスタやALU やマルチプレクサ等の各コンポーネントの伝搬遅延と、コンポーネント間の配線の伝搬遅延と、デスティネーションレジスタのセットアップ時間との和として求める。ここでは、コンポーネント間の配線長はデータパスブロックの高さの1/2としている。
【0014】Parkerのデータパス面積及び速度の見積りでは、第24回 エー・シー・エム/アイ・イー・イー・イー デザイン・オートメーション・カンファレンス(1987)の第35頁から第41頁(24th ACM/IEEE Design Automation Conference (1987) pp.35-41)に記載されるように、データパスの面積を、全オペレーションの面積と全レジスタの面積と全マルチプレクサとの和として求める。また、データパスのクロックサイクルを、全オペレーションの遅延の最大値とレジスタのセットアップ時間とレジスタの伝搬遅延と通過するマルチプレクサの伝搬遅延との和として求める。この方法は、配置や配線等のレイアウトを考慮しておらず、レジスタ転送レベルより上位レベルで有効な概略的な見積り手法である。
【0015】
【発明が解決しようとする課題】ところが、回路設計方法のレジスタ転送レベルにおける前記従来の設計支援方法においては、回路の面積、動作速度の推定時に、限られたレイアウトしか考慮されておらず、また、製造テクノロジも考慮されていないため、カスタムレイアウトやモジュール合成等を用いたレイアウト面積の予測やトレードオフといったことには対応できず、推定結果の精度がよくないという問題点がある。
【0016】また、従来の回路設計方法全体に目を移してみると、回路の面積、動作速度の推定が回路合成に対して独立して別個に行なわれるため、推定時に仮定された仮定事項は推定終了時にリセットされてしまい、前記仮定事項をそのまま具現化して回路合成に反映させるということがない。このため、推定時に想定される回路と設計完了時の実際の回路との違いが大きくなり、結果として、レジスタ転送レベルにおける推定精度が悪くなるという問題点がある。
【0017】本発明は、前記に鑑みなされたものであって、回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する回路設計のレジスタ転送レベルにおいて、回路の面積及び動作速度の推定精度を向上させることができるレジスタ転送レベル設計支援装置を提供することを目的とする。
【0018】
【課題を解決するための手段】前記の目的を達成するため、本発明は、レジスタ転送レベルにおいて、互いに異なる複数個のレイアウト設計方式を回路のデータパス部のブロック実現方法として与え、各レイアウト設計方式に基づいて前記データパス部の面積及び動作速度を推定し、前記複数個のレイアウト設計方式に基づいてブロック形状の最適化を図ることによりレイアウトの概略設計を行なうものである。
【0019】具体的に請求項1の発明が講じた解決手段は、レジスタ転送レベルにおいて、回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する回路設計を支援するレジスタ転送レベル設計支援装置を対象とし、それぞれが、レジスタ間の同一の演算を異なる面積及び動作速度で実現する複数個の基本回路からなる基本回路群を生成する複数個のライブラリ推定手段と、それぞれが異なるレイアウト設計方式を供給する複数個のレイアウト設計方式記述手段と、それぞれが、複数個の前記基本回路群からなるライブラリと複数個の前記レイアウト設計方式の何れかとの組み合わせをデータパスブロック実現方法として選択し、選択されたデータパスブロック実現方法に基づいて前記データパス部の面積及び動作速度を推定する複数個のデータパス部性能推定手段と、それぞれが異なるコントロールブロック実現方法に基づいて前記コントロール部の面積及び動作速度を推定する複数個のコントロール部性能推定手段と、前記回路全体の動作速度の制約に基づいて複数個の前記データパスブロック実現方法と複数個の前記コントロールブロック実現方法とを選択し、選択された複数個のデータパスブロック実現方法及び複数個のコントロールブロック実現方法に基づいて前記データパス部及びコントロールパス部のブロック形状の最適化を行なうフロアプラン最適化手段とを備えている構成とするものである。
【0020】請求項2の発明は、請求項1の発明の構成に、それぞれが前記複数個のライブラリ推定手段のそれぞれに対応して設けられ対応するライブラリ推定手段の推定結果を表示する複数個のライブラリ推定結果表示手段と、それぞれが前記複数個のデータパス部性能推定手段のそれぞれに対応して設けられ対応するデータパス部性能推定手段の推定結果を表示する複数個のデータパス部性能推定結果表示手段と、それぞれが前記複数個のコントロール部性能推定手段のそれぞれに対応して設けられ対応するコントロール部性能推定手段の推定結果を表示する複数個のコントロール部性能推定結果表示手段と、前記フロアプラン最適化手段に対応して設けられ最適化結果を表示するフロアプラン最適化結果表示手段と、それぞれが前記複数個のライブラリ推定手段のそれぞれに対応して設けられ対応するライブラリ推定手段のユーザ割り込みを受け付ける複数個のライブラリ推定割り込み手段と、それぞれが前記複数個のデータパス部性能推定手段のそれぞれに対応して設けられ対応するデータパス部性能推定手段のユーザ割り込みを受け付ける複数個のデータパス部性能推定割り込み手段と、それぞれが前記複数個のコントロール部性能推定手段のそれぞれに対応して設けられ対応するコントロール部性能推定手段のユーザ割り込みを受け付ける複数個のコントロール部性能推定割り込み手段と、前記フロアプラン最適化手段に対応して設けられユーザ割り込みを受け付けるフロアプラン最適化割り込み手段とを備え、ユーザ割り込みにより設定条件が変化した場合に、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段の中から変化した設定条件に関連する手段を選択し起動することによって、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段の間の設定条件の矛盾をなくす構成を付加するものである。
【0021】請求項3の発明は、請求項1の発明の構成に、レジスタ間転送及びその制御に要する遅延時間と、レジスタ間転送及びその処理順の制御方法が言語又は図で表現されたデータと、回路全体の動作速度とを表示する表示手段と、前記回路全体の動作速度の変更要求及び前記遅延時間の変更要求をユーザ割り込みとして受け付ける割り込み手段とを備え、前記ユーザ割り込みにより、前記複数個のライブラリ推定手段、複数個のデータパス部性能推定手段、複数個のコントロール部性能推定手段及びフロアプラン最適化手段を起動することによって、回路の面積及び動作速度の両方を考慮した最適化を行なう構成を付加するものである。
【0022】請求項4の発明は、請求項1の発明の構成に、前記複数個のライブラリ推定手段のそれぞれは、対応するファンクションの面積及び動作速度を、トランジスタの幅Wと長さLとの比即ちW/Lをパラメータとして、抽象的ゲート回路の接続関係をビット展開可能に示す抽象的ゲート回路構造テンプレートと該抽象的ゲート回路構造テンプレートの抽象的ゲート回路に対する製造テクノロジに依存した情報とを用いて推定する構成を付加するものである。
【0023】請求項5の発明は、請求項1の発明の構成に、前記複数個のデータパス部性能推定手段のそれぞれは、レイアウト設計方式のレイアウト条件の設定にオンオフ状態が対応するスイッチ手段と、前記レイアウト条件が設定された場合に前記レイアウト条件に基づいてデータパス部の面積及び動作速度を推定する手段とを有し、前記複数個のレイアウト設計方式記述手段のそれぞれは、対応するデータパス部性能推定手段のスイッチ手段のオンオフ状態によって、レイアウト設計方式のレイアウト条件を設定する構成を付加するものである。
【0024】請求項6の発明は、請求項1の発明の構成に、前記複数個のデータパス部性能推定手段のそれぞれは、レイアウト設計方式のレイアウト条件の設定にオンオフ状態が対応するスイッチ手段と、前記レイアウト条件が設定された場合に前記レイアウト条件に基づいてデータパス部の面積及び動作速度を推定する手段とを有し、さらに、機能セルを一行に配置する場合に該機能セルの一次元配置を最適化する手段、配線をバス又はマルチプレクサで実現する場合の実現方法を最適化する手段並びにデータ転送の速度及びブロックの面積を推定する手段のうちの少なくとも1つの手段を有している構成を付加するものである。
【0025】請求項7の発明は、請求項1の発明の構成に、前記複数個のデータパス部性能推定手段のそれぞれは、各セル行に1個又は複数個のセルを配置する場合において、各セル行に含まれるセル及びフィードスルー配線の幅の総和を当該セル行の幅とし、全てのセル行の幅のうちの最大幅をブロックの幅Wとし、セルの高さの総和をブロックの高さHとし、レジスタ間データ転送に要する遅延時間の最大値をブロックの動作速度Sとし、セル行の並びの変更を順次繰り返すことによりブロックにおける前記幅W、高さH及び動作速度Sの関数で定義される評価関数を最小化することによってセル行の線形配置の最適化を行なう構成を付加するものである。
【0026】請求項8の発明は、請求項1の発明の構成に、前記フロアプラン最適化手段は、各ブロック毎に、回路全体の動作速度の制約に基づいて当該ブロックの動作速度の制約を求め、当該ブロックの動作速度の制約を満足するブロック実現方法とブロック形状との組み合わせを列挙し、回路全体の面積が最小となるように各ブロック毎のブロック実現方法とブロック形状との組み合わせを選択する構成を付加するものである。
【0027】
【作用】請求項1〜8の発明の構成により、複数個のライブラリ推定手段がライブラリを与え、複数個のレイアウト設計方式記述手段が互いに異なる複数個のレイアウト設計方式を与える。各データパス部性能推定手段は、ライブラリとレイアウト設計方式との組み合わせを回路のデータパス部のブロック実現方法として選択し、該ブロック実現方法を用いてデータパスブロック内のレイアウトの概略を設計する。そして、設計されたレイアウトに基づいて前記データパス部の面積及び動作速度が推定される。ここで、面積及び動作速度の推定において、例えば、スタンダードセル方式、ゲートアレイ方式、モジュール合成方式、ハンドクラフト等の多様なレイアウト設計方式を考慮することができるため推定結果の精度を向上させることができる。
【0028】また、フロアプラン最適化手段が、回路全体の動作速度の制約に基づいて、複数個のデータパスブロック実現方法及びコントロールブロック実現方法を選択し、これらのブロック実現方法及びその推定結果を比較し検討することによって、回路のデータパス部及びコントロール部のブロック形状の最適化を図ることができ、レイアウトを考慮に入れた正確なタイミング条件のもとでの設計を行なうことができる。ここでは、プロセスやセルライブラリが後に与えられる場合でも、予め、トランジスタのドライブ能力や配線幅等をパラメータとして設計を進めることができ、プロセスが与えられた時点でそれらのパラメータを固定し同時にチップの概略設計まで済ませることが可能となる。
【0029】さらに、請求項2の発明の構成により、ブロックの面積及び動作速度の推定にユーザが割り込むことを可能とし、各割り込み手段が回路合成のためのユーザの指定を受け付けその指定情報を前提として推定を行なうことによって推定精度を向上させることができる。
【0030】請求項3の発明の構成により、ユーザがレイアウトを全く意識しなくてもバックグラウンドで概略レイアウトの最適化を行なうことができる。
【0031】請求項4の発明の構成により、セルライブラリが与えられない場合でも、セルのサイズや動作速度に関する情報を提供し、これらの情報を用いてブロックやチップの面積及び動作速度を推定することができる。
【0032】請求項7の発明の構成により、回路のデータパス部の配置において、ブロックの面積及び動作速度の両方を考慮した最適化を行なうことができる。
【0033】請求項8の発明の構成により、ブロックの形状の最適化を図る際にブロックの動作速度も考慮に入れているため、ブロックの面積及び動作速度の両方の点で最適な形状が得られる。
【0034】
【実施例】初めに、本発明の一実施例に係るレジスタ転送レベル設計支援装置の構成を図面に基づいて説明する。前記レジスタ転送レベル設計支援装置は、レジスタ転送レベルにおいて、回路のデータパス部及びコントロール部をレイアウト上互いに独立したブロックとして設計する回路設計を支援するものである。
【0035】図1は前記レジスタ転送レベル設計支援装置を示しており、図1において、レジスタ転送レベル設計支援装置は、回路のデータパス部に対応して設けられた複数個のライブラリ推定手段10とレイアウト設計方式記述手段20a〜20cとデータパス部性能推定手段30a〜30cとを備えている。1つのライブラリ推定手段10は、レジスタ間の同一の演算を異なる面積及び動作速度で実現する複数個の基本回路からなる1つの基本回路群を定義し、複数個のライブラリ推定手段10により複数個の基本回路群からなるライブラリが定義される。レイアウト設計方式記述手段20a〜20cはそれぞれデータパス部性能推定手段30a〜30cに異なるレイアウト設計方式を記述する。データパス部性能推定手段30a〜30cは、回路のデータパス部の設計を支援することを目的としており、複数個のレイアウト設計方式に対して個々に設けられているところに特徴がある。
【0036】データパス部性能推定手段30a〜30cにはそれぞれ割り込み入力付表示画面40a〜40cが設けられ、データパス部性能推定手段30a〜30cは、それぞれ割り込み入力付表示画面40a〜40cからデータパス部の設計に関するインタラクティブな指定を受け付ける。例えば、ファンクションの配置の指定や、バス又はマルチプレクサの何れにより配線を実現するかという指定や、ファンクションの前後にラッチを挿入するか否かという指定を受け付ける。また、割り込み入力付表示画面40a〜40cは、それぞれデータパス部性能推定手段30a〜30cにより計算された面積及び動作速度の推定値を表示する機能を有する。
【0037】また、レジスタ転送レベル設計支援装置は推定選択手段60を備えており、データパス部性能推定手段30a〜30cのうちの何れかが推定選択手段60によって選ばれ、選択されたデータパス部性能推定手段からフロアプラン最適化手段80にデータパスブロックの予想形状、タイミング情報が転送される。
【0038】フロアプラン最適化手段80は配置手段81と配線手段82と形状最適化手段83とを有しており、フロアプラン最適化手段80に対応して割り込み入力付表示画面90が設けられている。配置手段81は、ブロックの配置を制御しており、割り込み入力付表示画面90から与えられた配置指令又は自動最適化指令に基づきブロックを配置する。配線手段82はブロック間の配線とピンの配置とを行なう。形状最適化手段83は、タイミング及び面積の両方を考慮した最適化を目的として、推定選択手段60を使ったブロックの選択とブロック形状の最適化を行なう。
【0039】推定選択手段60はフロアプラン最適化手段80からの信号によって制御され、データパス部性能推定手段30a〜30cの選択の切替えが自由に行なわれる。 さらに、レジスタ転送レベル設計支援装置は、回路のコントロール部に対応して設けられた複数個のライブラリ推定手段110とレイアウト設計方式記述手段120a〜120cとコントロール部性能推定手段50a〜50cとを備えており、コントロール部推定手段50a〜50cにはそれぞれ割り込み入力付表示画面140a〜140cが設けられている。また、レジスタ転送レベル設計支援装置は、雑回路、ROM、RAM等の専用ファンクションに対応して設けられた専用ファンクション性能推定手段70a〜70cを備えている。
【0040】コントロール部性能推定手段50a〜50c及び専用ファンクション性能推定手段70a〜70cは推定選択手段60に結合されており、データパス部性能指定手段30a〜30cと同様に推定選択手段60により選択される。
【0041】次に、以上のように構成されたレジスタ転送レベル設計支援装置を用いた回路設計方法について説明する。
【0042】図2は前記回路設計方法を示す流れ図であり、前記レジスタ転送レベル設計支援装置は図2のステップS2、S3、S4及びS5で用いられる。
【0043】図2に示すように、まず、ステップS1のレジスタ転送レベルの設計では、個々の演算に対応して演算器が定義され、設計データはレジスタ間のデータ転送とそれらの間の順序制御部分とにより構成される。前記レジスタ間のデータ転送は、ひとまとめにしてデータパスブロックとして扱われる。一方、制御部分は有限状態機械で表現される。
【0044】次に、ステップS2、S3、S4及びS5で、レジスタ転送レベル設計支援装置を用いたレジスタ転送レベルにおける回路設計の支援が行なわれる。
【0045】回路のデータパス部の設計に対応して、ステップS2では、例えば、複数個のライブラリ推定手段10によりデータパス部性能推定手段30aにライブラリが与えられ、レイアウト設計方式記述手段20aからデータパス部性能推定手段30aにレイアウト設計方式が与えられる。そして、データパス部性能推定手段30aは前記ライブラリ及びレイアウト設計方式をデータパス部のブロック実現方法として用いてデータパスブロック内のレイアウトの概略設計を行なう。次に、ステップS3では、データパス部性能推定手段30aは、ステップS2で設計されたレイアウトに基づいてデータパス部の面積及び動作速度を推定する。同様に、回路のコントロール部の設計に対応して、例えばコントロール部性能推定手段50aがコントロール部の面積及び動作速度を推定し、専用ファンクションに対応して、例えば専用ファンクション性能推定手段70aが専用ファンクション部分の面積及び動作速度を推定する。
【0046】ステップS4では、フロアプラン最適化手段80が、データパス部性能推定手段30a、コントロール部性能推定手段50a及び専用ファンクション性能推定手段70aからブロックの予想形状やタイミング情報等を受け取り、ブロックの配置、ブロック間の配線及びピンの配置を行なうことによって回路全体のレイアウトの概略設計を行なう。
【0047】データパス部性能推定手段30a〜30c、コントロール部性能推定手段50a〜50c及び専用ファンクション性能推定手段70a〜70cはそれぞれ複数個のブロック実現方法及びその推定結果を提供する。このため、フロアプラン最適化手段80が、データパス部性能推定手段30a〜30cの何れかの選択、コントロール部性能推定手段50a〜50cの何れかの選択、及び、専用ファンクション性能推定手段70a〜70cの何れかの選択を推定選択手段60を介して変更し、ステップS2、S3及びS4を繰り返すことによって、複数個のブロック実現方法及びその推定結果を比較し検討することができる。これにより、フロアプラン最適化手段80は、回路全体の動作速度であるクロックと面積との両方を考慮したブロック形状の最適化を実行する。そして、ステップS5でこのような回路の最適化が完了したか否かを判定し、最適化が完了する即ち回路全体の概略設計が完了するとステップS6へ進む。
【0048】ステップS6のロジックレベルの設計で各ブロックを論理ゲートへ展開し、ステップS7でレジスタ転送レベルにおけるレイアウトの概略の設計を改善し、ステップS8でLSIのマスクパターンを定めレイアウト設計を完了させる。
【0049】以上のように、本実施例に係るレジスタ転送レベル設計支援装置においては、複数個のライブラリ推定手段10がデータパス部性能推定手段30a〜30bにライブラリを与え、レイアウト設計方式記述手段20a〜20cがそれぞれデータパス部性能推定手段30a〜30bに異なるレイアウト設計方式を与え、データパス部性能推定手段30a〜30bが、ライブラリ及びレイアウト設計方式をブロック実現方法として用いてデータパスブロック内のレイアウトの概略を設計する。そして、同じくデータパス部性能推定手段30a〜30bが、設計されたレイアウトに基づいてデータパス部の面積及び動作速度を推定する。ここで、面積及び動作速度の推定において、例えば、スタンダードセル方式、ゲートアレイ方式、モジュール合成方式、ハンドクラフト等の多様なレイアウト設計方式を考慮することができるため推定結果の精度を向上させることができる。
【0050】また、フロアプラン最適化手段が、回路全体の動作速度の制約に基づいて、複数個のデータパスブロック実現方法及びコントロールブロック実現方法を選択し、これらのブロック実現方法及びその推定結果を比較し検討することによって、回路のデータパス部及びコントロール部のブロック形状の最適化を図ることができるため、回路全体のレイアウトの概略設計を行なうことができる。
【0051】また、フロアプラン最適化手段80により、互いに異なる複数個のブロック実現方法及びその推定結果を比較し検討することによって、回路全体の面積及び動作速度の両方を考慮した最適化を図ることができ、レイアウトを考慮に入れた正確なタイミング条件のもとでの設計を行なうことができる。ここでは、プロセスやセルライブラリが後に与えられる場合でも、予め、トランジスタのドライブ能力や配線幅等をパラメータとして設計を進めることができ、プロセスが与えられた時点でそれらのパラメータを固定し同時にチップの概略設計まで済ませることが可能となる。
【0052】本実施例に係るレジスタ転送レベル設計支援装置は、従来に比べて革新的な構成であり、システム設計の最適化とユーザに対する親和性との点において非常に有効なものである。
【0053】次に、本実施例に係るレジスタ転送レベル設計支援装置の各手段の詳細について説明する。
【0054】(ユーザ割り込み機構)以下、本実施例に係るレジスタ転送レベル設計支援装置のユーザ割り込み機構について説明する。
【0055】レジスタ転送レベル設計支援装置の各手段はイベント起動型で構成されている。即ち、各手段はイベントの行列(キュー)を持っており、他の手段から起動命令があると前記行列の最後列に最新のイベント要求が蓄えられる。また、各手段は、必要に応じて他の手段を起動するためにイベント要求を出す機能も有している。さらに、各手段は、データを分類して持ち、各データに変更があった場合に起動すべき手段のリストを持っている。ユーザの割り込みもイベント要求の一つとして処理される。
【0056】このイベント処理方式を使うことによって、複数個のライブラリ推定手段10,110と、データパス部性能推定手段30a〜30cと、コントロール部性能推定手段50a〜50cと、フロアプラン最適化手段80とが、それぞれ対応する割り込み入力付表示画面から独立にユーザ割り込みを受け付ける構成を可能とする。
【0057】また、前記ユーザ割り込みによって設定条件が変化した場合には関連する手段を選択して起動し、各手段が保有するデータの間に設定条件の矛盾をなくす機構も実現できる。
【0058】本実施例によると、ユーザがチップ内のレイアウトを意識しながら設計を進めることができるため、従来に比べて面積と動作速度との両面においてより良い結果を得ることが可能である。しかし、ユーザの中にはレイアウトに関する知識、経験が全くない者も存在し、そのようなユーザに対してレイアウトを画面に表示したり、画面を通じてレイアウトの修正をさせたりすることは意味がない。
【0059】このようなレイアウトに関する知識、経験が少ないユーザのとっては、主に、レジスタ間転送及びその処理順の制御方法を言語又は図で表現したデータ、その上でのタイミングに関する情報及びシステム全体のパーフォーマンスに関するデータにのみ関心がある。このため、システムのクロック速度の変更要求、遅延時間の変更要求等を受け付け、これらの変更要求に従ってフロアプラン等の遅延時間に大きな影響を与えるレイアウト情報をバックグラウンドで最適化する機能を提供する。
【0060】本機能を実現するために、ユーザに対してデータパス毎の遅延時間情報を表示し、ユーザの遅延時間改善要求を受け付け、該要求の発生に基づいて、ライブラリ推定手段10,110、データパス部性能推定手段30a〜30c、コントロール部性能推定手段50a〜50c及びフロアプラン最適化手段80に遅延時間改善要求イベントを発生する機能がさらに加えられている。
【0061】(ライブラリ推定手段)以下、本実施例に係るレジスタ転送レベル設計支援装置のライブラリ推定手段について説明する。
【0062】ライブラリ推定手段10はデータパス部性能推定手段30a〜30cにセルの面積、動作速度の情報を与えることを目的としたものである。同様に、ライブラリ推定手段110はコントロール部性能推定手段50a〜50cにセルの面積、動作速度の情報を与えることを目的としたものである。
【0063】複数個のライブラリ推定手段10,110によって、セルライブラリが準備されていない場合でも、セルの面積、動作速度に関する情報を推定することができるため、レジスタ転送レベルだけでなくハイレベル及びロジックレベルにおいて、チップやブロックの面積、動作速度、タイミング等を推定するのに有効な手段である。
【0064】以下、ライブラリ推定手段10を図面に基づいて説明するが、ライブラリ推定手段110も同様のものである。
【0065】図3はライブラリ推定手段10を示しており、図3において、ライブラリ推定手段10は、複数個の抽象的ゲート回路構造テンプレート11と、テクノロジ定義手段12と、面積・動作速度推定手段13と、テンプレート選択手段14とを備えている。
【0066】抽象的ゲート回路構造テンプレート11は、製造テクノロジに依存しない抽象的なレベルでの論理ゲートの接続をビット展開可能な形で記述したものである。例えば、10入力のアンド演算が1個の抽象的ゲートで表現されている。これを実際に製造する場合には、2入力のアンド演算の組み合わせ等で多段化する必要がある。
【0067】テンプレート選択手段14には、抽象的ゲート回路構造テンプレート11の表示、修正手段として割り込み入力付表示画面15が設けられており、ユーザが必要に応じて同じファンクションに対して新たに別の抽象的ゲート回路を登録することも可能である。
【0068】テクノロジ定義手段12は、製造条件を加味して抽象的なゲート回路を実際に使える形に置き換えるための変換規則や、製造テクノロジによって決まる遅延時間の計算式や、ゲートをレイアウトする場合の配線部分の占める割合等の情報を保有している。具体的には、ゲート内のトランジスタ回路、トランジスタの個数及び段数、トランジスタのW/Lに依存した遅延算出式、セル内配線部分比率、デザインルール等が登録されている。ここで、トランジスタのW/Lとはトランジスタのドライブ能力を示すパラメータであり、この値が大きい程、信号の伝搬を高速に行なうことができる。Lはトランジスタの長さ、Wはトランジスタの幅を意味し、普通、Lはデザインルールの最小幅に設定されるのでWのみが変化する。このため、信号伝搬を高速化するためにはWを大きく即ちトランジスタのサイズ(面積)を大きくする必要がある。
【0069】面積・動作速度推定手段13は、テンプレート選択手段14から複数個の抽象的ゲート回路構造テンプレート11を受け取り、テクノロジ定義手段12から、製造テクノロジによって決まる遅延時間の計算式や、ゲートをレイアウトする場合の配線部分の占める割合等の情報を受け取り、セルの複数個の実現方法に対して面積と動作速度との関係を求める。
【0070】以上のように構成されたライブラリ推定手段10の起動手順について説明する。
【0071】ライブラリ推定手段10を起動するためには次の信号が入力される。
【0072】・ファンクション名・ビット数まず、テンプレート選択手段14によって、前記ファンクション名で示されるファンクションに対応するセルの抽象的ゲート回路構造テンプレート11が複数個選択される。例えば、アダーファンクションに対しては、キャリールックアヘッドアダーやリップルキャリーアダー等の抽象的ゲート回路(ビット展開可能な製造テクノロジ非依存型のゲート回路)が選択される。
【0073】次に、テクノロジ定義手段12を参照し、抽象的ゲート回路を実際のトランジスタ回路(又は、トランジスタの個数及び段数の表現)に置き換える。多入力ゲートの場合には、ビット数に依存して多くのファンインをカバーするためにゲート内部が多段化される。
【0074】次に、テクノロジ定義手段12は、トランジスタの個数及び段数と遅延計算式とW/Lとによってゲートの面積及び動作速度を計算する。これにより、ゲートの面積及び動作速度はW/Lをパラメータとした表現になる。
【0075】次に、テンプレート選択手段14により選択された抽象的ゲート回路構造テンプレート11の各抽象的ゲート回路に対応して、テクノロジ定義手段12で得られたゲートの面積及び動作速度を用いてセルの面積及び動作速度を推定する。ここで、セルの動作速度は、ゲート回路上でのクリティカルパス(最も遅延時間の大きなパス)の遅延値とする。また、セルの面積はゲート面積の総和にαを乗じた値とする。ただし、αは使用できる配線層の個数に依存する値であり、α=(1+配線部分比率)で示される。
【0076】図4はアダーをファンクションとして考えた場合の出力例の面積・動作速度トレードオフカーブを示している。アダーの構成としてはキャリールックアヘッドアダーとリップルキャリーアダーとの抽象的ゲート回路構造テンプレート11が登録されており、それぞれに対してW/Lの変化分によるトレードオフが存在する。
【0077】(レイアウト設計方式記述手段)以下、本実施例に係るレジスタ転送レベル設計支援装置のレイアウト設計方式記述手段について説明する。ここでは、レイアウト設計方式記述手段20aを説明するが、レイアウト設計方式記述手段20b,20c,120a〜120cも同様のものである。。
【0078】レイアウト設計方式記述手段20aはレイアウトの設計に関わるルールを記述する手段である。記述される内容は次に示すようなものである。
【0079】・配線方法・配線層の個数又はセル上配線の可能性・配線切替部の実現方法・セルタイプ(カスタム、ピン可動セル、スタンダードセル等)
実際のデータパス部のレイアウト設計方式の例を以下に示す。
【0080】・カスタムレイアウト(人手設計)
基本的に人手設計を行なう場合にはレイアウトスタイルは自由であるが、次のような方式が取られるのが一般的である。セルの面積は用いる回路によって決まるが、形状(縦横比)とピン位置とは自由に設定できる。このため、セル行間のチャネルはセル行方向の配線に必要なトラック数を確保すれば良い。
【0081】・モジュール合成モジュール合成の方式も多種多様であるが、チャネル配線方式とピン位置合わせ方式とに分類される。チャネル配線方式の場合には、セルのピン位置を合わせる努力はしない。各セル行にファンクションが並べられ、セルは予め用意されたライブラリから面積と速度とのデータを取ってくる。ピン位置合わせ方式を取る場合には、セルがピン位置を調整する機能を持っている。ただし、カスタム設計の場合とは異なり、ピン位置を調整するためにセルの幅が増加する。その増分はピン位置移動距離の総和に等しい。隣接するセル行の結ぶべきピン集合の並びの順番が同じとすると、隣接するピン間の距離の差を合計したものがセル幅の増分となる。ピン集合の並びの順番が逆転する場合にはチャネル領域での配線が必要となる。
【0082】・スタンダードセル方式基本的にスタンダードセルの組合せ(場合によっては、マクロセルも組み合わせる)によって構成される。同じ機能は同じセル行で実現するといった制約は特に存在しないが、大体近い行に配置される。配線はチャネル配線によって行なわれる。
【0083】・フィードスルー配線方式フィードスルー配線は、使用できる配線層に依存して、セル間を通過させる場合とセルの上を通過させる場合とに分かれる。
【0084】以上を考慮すると、それぞれのレイアウト設計方式は次のような分類の組み合わせによって定義ができる。
【0085】■ チャネル配線をする場合とピン位置合わせをする場合とによる分類■ セル間にフィードスルーする場合とセル上にフィードスルーを通過させる場合とによる分類■ ビットスライスの場合とファンクション・スライスの場合とによる分類データパス部性能推定手段30aの中に、■〜■の分類条件によって、面積及び動作速度の推定処理方法を切替える条件スイッチと推定処理手段を設け、レイアウト設計方式記述手段20aをこれらの条件を記述する手段として位置づける。条件の記述は前記条件スイッチのオンオフ状態で表現する。
【0086】(データパス部性能推定手段)以下、本実施例に係るレジスタ転送レベル設計支援装置のデータパス部性能推定手段について説明する。ここでは、データパス部性能推定手段30aを図面に基づいて説明するが、データパス部性能推定手段30b,30cも同様のものである。
【0087】図5はデータパス部性能推定手段30aを示しており、図5において、データパス部性能推定手段30aは、条件スイッチ31と線形配置手段32とセル選択手段33とチャネル幅推定手段34とセル行幅推定手段35とバス/マルチプレクサ切替え手段36とビットスライス/ファンクションスライス切替え手段37と線形配置最適化手段38とを有している。また、データパス部性能推定手段30aに対応して、複数個のライブラリ推定手段10(又は実在のセルライブラリ100)、レイアウト設計方式記述手段20a及び割り込み入力付表示画面40aが設けられている。
【0088】図6は推定に用いるレイアウトモデルの一例を示しており、セル上を配線が通過できない場合のカスタム方式によるレイアウトである。
【0089】図6において、301はセル、302はセル行、303はフィードスルー、304はチャネル、305はブロックの外部ピンを示している。
【0090】以下、データパス部性能推定手段30aの各手段の動作を説明する。
【0091】・線形配置手段32ファンクションの並びの初期化を行なう。また、必要に応じて面積最小化又は動作速度最大化を目標とした自動線形配置最適化を行なうことも可能である。自動線形配置最適化の詳細については後述する。
【0092】・セル選択手段33前提条件として与えられた複数個のライブラリ推定手段10(又は実在のセルライブラリ100)から、各ファンクションを構成するビット単位のセル301を取り出し、指定された行に同ファンクションのセル301をビットの並びに従って配置する。また、フィードスルー303がセル行302に占める幅を考慮し、セル幅をできるだけ揃えるようにセルの選択の最適化を行なう自動セル選択最適化を行なうことも可能である。
【0093】・チャネル幅推定手段34セル行間をチャネル配線によって実現する場合に、各チャネル304の幅を推定する。各チャネル304の上下左右のフィードスルー303も含めたピン位置に与えられる結線要求に基づき同一チャネルの配線トラック数を求め、それに基づき該チャネルの幅を求める。
【0094】セル行間のチャネル304を配線するに当たって、チャネル304の上下の結線要求に対しては、ピン位置合わせを行なうことによって上下をまっすぐ通すことによりチャネル幅を最小化する場合の各チャネル幅とセル行幅の増分とを推定する。カスタムレイアウト方式を用いる場合、即ち、ライブラリ推定手段10aよりセル301のサイズを取ってくる場合には、セルの形とピン位置は柔軟に変更できるのでセル幅は増加しない。
【0095】モジュール合成方式でしかもセルがピン位置合わせ方式を取る場合には、セルがピン位置を調整する機能を持っている。ただし、カスタム設計の場合とは異なり、ピン位置を調整するためにセルの幅が増加する。その増分はピン位置移動距離の総和に等しい。隣接するセル行の結ぶべきピン集合の並びの順番が同じとすると、隣接するピン間の距離の差を合計したものがセル幅の増分となる。ピン集合の並びの順番が逆転する場合にはチャネル領域での配線が必要となる。チャネル幅はチャネル304と水平方向に配線要求があるもの(例えばコントロール線)と、ピン位置合わせに失敗したことによって発生した水平配線とによる配線トラック数を求め、それに基づき該チャネル304の幅を求める。
【0096】・セル行幅推定手段35セルの上のフィードスルーが禁止されている場合には、セル行幅に、フィードスルー配線を通過させるに要する幅を加え、その値を該セル行幅とする。
【0097】・バス/マルチプレクサ切替え手段36バスとマルチプレクサとは1つの配線資源を共用して又は切替えて使う場合に必要となるが、それぞれはビット毎のトライステートバッファー又はマルチプレクサのセルによって実現されるため、バス、マルチプレクサの必要な部分に必要なセルよりなるセル行を設けることにより、線形配置手段32、セル選択手段33、チャネル幅推定手段34及びセル行幅推定手段35を起動する。
【0098】・線形配置最適化手段38線形配置最適化手段38は、データパス内のファンクションの線形配置を行なうための手段である。
【0099】図7(a)及び(b)は扱うデータと抽象化したモデルとを示しており、同図において、401はファンクション(F1〜F4)を示し、402はファンクション間配線を示している。
【0100】高さHは、セルの高さの合計とチャネル高さの合計との和として与える。セル行を入れ換えると、各セル行のフィードスルー本数が変化するためWの値が変化する。また、各ファンクションの前後の配線長も変化するためデータパス部の動作速度Sも変化する。
【0101】図7(a)の抽象化モデルと図7(b)の抽象化モデルとの違いは、ファンクションF2、F3の位置が入れ替わっている点である。図6(a)では幅Wは120、図7(b)では幅Wは130となる。また、動作速度Sはドライブするトランジスタの能力と配線長に依存する。
【0102】線形配置最適化手段38のデータパス線形配置方法は、W、H及びSの関数で与えられる目的関数を最小化することを目的とし、セル行の入れ換えを繰り返して評価関数の値を最適化する方法である。最適化の方法としては公知のシミュレーティッド・アニーリング法等が使える。
【0103】(形状最適化手段)以下、本実施例に係るレジスタ転送レベル設計支援装置の形状最適化手段83について説明する。
【0104】形状最適化手段83は、速度の制約が与えられた時に、その条件を満足する最小面積の形状の組合せを決定することを目的とするものである。
【0105】LSIの設計において用いられるデータパスやコントロール等のブロックは速度によって面積が異なる。さらに、それぞれの速度(遅延時間)に対して、縦及び横のサイズの取り方が一様ではなく複数個の形状を取りうる。
【0106】レジスタ転送レベルにおいて、システムの性能を決定するのはクロックの周期である。クロックの周期を決めると、システムに含まれる各ブロックに求められる動作速度の最低速度(最大遅延)が決まる。その条件に基づいて、それぞれのブロックが取り得る縦横サイズの全てを列挙することができる。
【0107】それらの縦横サイズをX−Y座標にプロットし、任意の2点A(x1,y1)、B(x2,y2)の関係がx1<x2及びy1<y2を満足する場合に点Bを取り除くことを繰り返し、これにより、残った点の集合を当該ブロックの形状関数として定義し、従来の速度を考慮しない形状最適化方法を用いて形状の最適化を行なう。
【0108】従来の形状最適化方法は、面積の最小化のみを目的とするもの、又は、配線長に関する遅延の最適化のみを目的とするものしかなかった。しかし、形状最適化手段83においては、回路全体の動作速度も考慮されており、面積及び動作速度の両面で最適な解を得ることができる。
【0109】
【発明の効果】以上説明したように、請求項1〜8の発明に係るレジスタ転送レベル設計支援装置によると、レイアウト設計方式を加味して回路のデータパス部の面積及び動作速度を推定することができるため、推定結果の精度を向上させることができる。また、回路全体の面積及び動作速度の両方を考慮したブロック形状の最適化を図ることができ、レイアウトを考慮に入れた正確なタイミング条件のもとでの設計を行なうことができる。
【0110】さらに、請求項2の発明に係るレジスタ転送レベル設計支援装置によると、ブロックの面積及び動作速度の推定にユーザが割り込むことを可能とし、各割り込み手段が回路合成のためのユーザの指定を受け付けその指定情報を前提として推定を行なうことによって推定精度を向上させることができる。
【0111】請求項3の発明に係るレジスタ転送レベル設計支援装置によると、ユーザがレイアウトを全く意識しなくてもバックグラウンドで概略レイアウトの最適化を行なうことができる。
【0112】請求項4の発明に係るレジスタ転送レベル設計支援装置によると、セルライブラリが与えられない場合でも、セルのサイズや動作速度に関する情報を提供し、これらの情報を用いてブロックやチップの面積及び動作速度を推定することができる。
【0113】請求項7の発明に係るレジスタ転送レベル設計支援装置によると、回路のデータパス部の配置において、ブロックの面積及び動作速度の両方を考慮した最適化を行なうことができる。
【0114】請求項8の発明に係るレジスタ転送レベル設計支援装置によると、ブロックの形状の最適化を図る際にブロックの動作速度も考慮に入れているため、ブロックの面積及び動作速度の両方の点で最適な形状が得られる。
【0115】以上のように、本発明によると、回路設計のレジスタ転送レベルで、推定と同時にレイアウトの概略設計も行なうことができるため、推定精度を飛躍的に向上させることができる。また、レイアウト詳細設計まで進んで再びレジスタ転送レベル設計に戻るというような設計の手戻りも最小限に抑えることができ、回路の設計工程に要する時間を大幅に短縮することが可能である。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013