JPH11213029A - レジスタ転送レベル論理記述ハードウェア性能評価装置 - Google Patents

レジスタ転送レベル論理記述ハードウェア性能評価装置

Info

Publication number
JPH11213029A
JPH11213029A JP10018542A JP1854298A JPH11213029A JP H11213029 A JPH11213029 A JP H11213029A JP 10018542 A JP10018542 A JP 10018542A JP 1854298 A JP1854298 A JP 1854298A JP H11213029 A JPH11213029 A JP H11213029A
Authority
JP
Japan
Prior art keywords
description
logic
register transfer
transfer level
block
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
Application number
JP10018542A
Other languages
English (en)
Inventor
Mitsuo Seki
光穗 関
Masahide Abe
正秀 安部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10018542A priority Critical patent/JPH11213029A/ja
Publication of JPH11213029A publication Critical patent/JPH11213029A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 レジスタ転送レベル論理記述に対して、論理
合成後のゲートレベル記述や論理シミュレーションを用
いずに面積・ディレイ・消費電力の3つを総合的に評価
し、短い解析時間でハードウェア性能のトレードオフを
考えながら論理設計を行う。さらに論理パス経路とレジ
スタ転送レベル論理記述との対応を完全にとり記述上の
問題点を正確に把握する。 【解決手段】 面積に関してはブロック面積推定手段14
・フロアプラン15、ディレイに関しては面積に関する手
段とパスディレイ計算手段16、消費電力に関しては面積
に関する手段消費電力計算手段17により評価する。ゲー
ト論理推定手段13により、論理記述から言語仕様に基づ
いた初期論理を求め、論理合成後の結果にかかわらず記
述上の全ての論理パスへの対応を取る。また、表示手段
22はすべての評価結果とレジスタ転送レベル論理記述と
の対応が必ず取れるようする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は半導体設計装置に係
り、特にレジスタ転送レベル論理記述を入力してLSIの
ハードウェア性能評価を行う装置に関するものである。
【0002】
【従来の技術】ハードウェア設計言語と論理合成ツール
が普及し、レジスタ転送レベルでLSI論理記述を行うこ
とが標準的になったが、その論理記述からLSIがどのよ
うなハードウェア性能になるかを予測評価するのは論理
合成後のゲートレベル記述を用いて行うのが一般的であ
る。論理合成には時間がかかること、ゲートレベル記述
は膨大な量になること、より良いLSIを作るにはレジス
タ転送レベル論理記述を良くする必要があること、とい
った点からレジスタ転送レベル論理記述から直接LSIハ
ードウェア性能を予測評価する取組が行われるようにな
ってきた。
【0003】LSIのハードウェア性能評価指標は主とし
て、面積・ディレイ・消費電力の3つであるが、特開平
06-83895では面積の予測、特開平05-174093ではディレ
イの予測、特開平07-230485では消費電力の予測を行っ
ている。もうひとつの問題点として、論理合成はレジス
タ転送レベル論理記述から変換した記述を最適化するの
で、論理合成結果とレジスタ転送レベル論理記述との対
応が容易に取れないということがあったが、特開平05-2
42184ではその対応を取ろうとしている。
【0004】
【発明が解決しようとする課題】レジスタ転送レベル論
理記述に対して面積・ディレイ・消費電力それぞれの評
価指標を予測する発明はあるが、それら3つを総合的に
評価するシステムがないという問題がある。3つのハー
ドウェア性能を全て同時に最高にすることは難しく、そ
れぞれのハードウェア性能のトレードオフを考えながら
論理設計を行うことが必要であるため、ハードウェア性
能評価システムは3つの指標を同時に解析できる必要が
ある。また、複数の記述に対してもそれぞれの解析結果
を比較する必要がある。
【0005】評価精度の問題として、特開平06-83895で
はハードウェア設計言語の各記述文の分類に対応したノ
ウハウライブラリによって面積予測を行うので単純な和
で計算される。ところが、論理合成は記述文の組み合わ
せによってより良い最適化を行うので、この方法では高
速に予測はできるが精度が上がらないという問題があ
る。特開平05-174093ではごく簡易なフロアプランを行
っているが、ディープサブミクロン世代の重要な問題で
ある配線ディレイに関して容量や抵抗の考慮が3次元的
になっていない。また、特開平07-230485の消費電力予
測では論理合成をした後のゲートレベル記述論理を用
い、かつ論理シミュレーションの結果を用いて計算を行
っているが、論理合成やシミュレーションの時間がかか
ることおよびシミュレーションのためのテストパターン
作成の工数を必要とするいう問題がある。
【0006】特開平05-242184では論理合成結果とレジ
スタ転送レベル論理記述との対応を取って表示しようと
しているが、合成結果から対応を取ろうとしているため
合成結果にない情報は関連づけられないという問題があ
った。
【0007】
【課題を解決するための手段】3つの指標を同時に評価
するために、面積評価に関してはブロック面積推定手段
14・フロアプラン15、ディレイ評価に関してはブロック
面積推定手段14・フロアプラン15・パスディレイ計算手
段16、消費電力評価に関してはブロック面積推定手段14
・フロアプラン15・消費電力計算手段17を持つ。ここで
ブロック面積推定手段14・フロアプラン15が共通にある
のはブロック面積とブロックの相対位置関係が配線容量
と密接に関係し、ディレイと消費電力の評価値に影響す
るからである。
【0008】論理最適化手段13によって、ゲートレベル
論理を入力せずに、高速にレジスタ転送レベル論理を最
適化をすることによって推定精度の向上及び評価時間の
短縮を行う。また、テストパターン作成手段80によって
消費電力計算のための人手作業時間を短縮する。
【0009】論理合成結果とレジスタ転送レベル論理記
述との対応に関しては、ゲート論理推定手段13により、
レジスタ転送レベル論理記述から言語仕様に基づいた初
期論理に変換することによって、論理合成後の結果にか
かわらず全てのレジスタ転送レベル論理記述上の論理パ
ス(論理の始点終点と処理の流れ)の対応を取る。
【0010】表示手段22はその他の手段で解析された結
果を、それぞれの結果を表示するだけでなく、評価結果
とレジスタ転送レベル論理記述との対応が必ず取れるよ
うに、また、評価指標間で対応が取れるように連動して
表示する。
【0011】方式間評価手段19は、いろいろなレジスタ
転送レベル論理記述に対して行った評価値を入力して、
トレードオフをグラフで表示する。
【0012】ゲート論理推定手段12はレジスタ転送レベ
ル論理記述から言語仕様に基づいた初期論理に変換する
ので、レジスタ転送レベル論理記述そのものの素直な解
析結果を出力する。論理合成でもほぼ同じ初期論理から
出発して論理の最適化を行うので、解析中の論理パスの
始点終点が同一であれば、その途中の回路が論理合成に
よってどのように最適化されようとレジスタ転送レベル
論理記述上にすべての対応を表示することができるよう
に作用する。
【0013】論理最適化手段13はゲート論理推定手段12
により変換された初期論理を高速に最適化し、その後の
指標の評価手段に最適化論理を与えることによって評価
精度を高めると共に、消費電力計算をゲートレベル論理
を入力して行なわなくともできるように作用する。
【0014】ブロック面積推定手段14とフロアプラン15
は各ブロックの大きさとブロック間の相対位置関係を決
定するので、微細なプロセスを使用したLSIで問題とな
るブロック内及びブロック間のネットのディレイを精度
良く評価することができるように作用する。
【0015】パスディレイ計算手段16はブロック面積推
定手段14とフロアプラン15によって求められた位置的な
情報を元に3次元的な容量を考慮してネットディレイを
求めると共に、ディレイのクリティカルな論理パスを抽
出して問題点を示すように作用する。
【0016】テストパターン作成手段80は、消費電力計
算のために論理シミュレーションを行うとき、そのテス
トパターンを作成する人手作業時間を大幅に短縮するの
で、時間を掛けて消費電力計算を行う手間を省く用に作
用する。
【0017】消費電力計算手段17は、論理シミュレーシ
ョン結果からの計算と入力ピンの信号変化情報のみでの
計算と2通りの計算方法を備える。論理シミュレーショ
ン結果からの計算によって精度良い値を、入力ピンの信
号変化情報のみでの計算では若干誤差は大きいものの高
速に消費電力値を求められるように作用する。
【0018】表示手段22は解析された評価結果を、それ
ぞれの結果だけでなく、評価結果とレジスタ転送レベル
論理記述との対応が必ず取れるように、また、評価指標
間で対応が取れるように連動して表示するので、レジス
タ転送レベル論理記述上の問題点がただちに把握でき、
的確にレジスタ転送レベル論理記述上の問題を解決でき
るように作用する。
【0019】方式間評価手段19は、より良い論理設計を
模索するためにいろいろなレジスタ転送レベル論理記述
を行ったときに、それらに対して行った評価値を入力し
てトレードオフをグラフで表示するので論理設計者の意
思決定が迅速に行えるように作用する。
【0020】
【発明の実施の形態】図1から図27を用いて本発明の実
施例を示す。図2は本発明のシステムの入出力ファイル
構成を示す。入力するのは、レジスタ転送レベル論理記
述(図中ではRTL、Register-Transfer Level 記述と表
記)101、レジスタ転送レベル論理記述から推定したゲー
ト論理を最適化する際に使用する論理素子群を格納する
論理最適化用lib102、ネットディレイや面積を計算する
ときのLSIデバイス・プロセスのパラメータや評価精度
を向上させるためのチューニングパラメータなどが格納
されているデフォルトパラメータファイル103、そして
出来合いの大型マクロセル(メモリやレジスタなど)の物
理的・論理的情報であるLEFファイル104である。
【0021】入出力の両方を行うのは、本システムの解
析結果や途中結果のメモリダンプを格納するdumpfile10
7、レジスタ転送レベル論理が階層的に記述される場合
に下位階層のブロックの記述を先に解析した結果を格納
しておくブロックlib106、フロアプラン結果からブロッ
クの形状と配置位置を記述して論理合成システムにフィ
ードバックするPDEFファイル105がある。dumpfile107を
用いることによって、処理を途中で中断したり再開した
りすることができるし、それを読み上げればいつでも詳
細な解析結果をGUI画面から見ることができる。レジス
タ転送レベル論理記述101が大規模で階層的に記述され
ている時は、一挙に全記述を読み上げて解析するのは計
算機のメモリ量の問題から不可能であるため、下位階層
について先に解析して、ブロックlib106に縮退させた情
報で保存しておき、後に上位記述を読んで全体解析をす
る。
【0022】さらに複数のレジスタ転送レベル論理記述
に対して方式間比較を行う場合には、各記述に対する解
析値を各方式評価結果108として保存しておき、それを
入力してグラフィカルに比較表示する。
【0023】つぎに本評価システムの処理の流れを示
す。図1は本発明のシステムの処理の構成を示す図であ
る。以下では図1中の各手段の詳細な構成と処理内容を
詳細に述べる。
【0024】最初に入力手段21により図2中の入力ファ
イルを必要に応じて入力する。次に言語構文解析手段11
がレジスタ転送レベル論理記述を入力する。言語構文解
析手段11は図3に示すような手段から構成される。まず
ソース文字列入力手段31により記述を1行単位に入力す
る。そしてソース行管理手段32によりその行の文字列を
メモリ上に管理する。行を解析したとき、単語への分解
手段33が実行されて行が解析され、単語に分解される。
もし他の記述ファイルを参照しているときにはファイル
管理手段34が実行されて、他の記述ファイルの内容を後
に入力して解析を行えるようにする。分解された単語は
その意味によって分類され、コード番号が付けられて、
後のゲート論理推定手段12におけるコード番号に対応し
たゲート論理発生処理の識別となる。同時に単語位置管
理手段35によってその単語がレジスタ転送レベル論理記
述のどこに位置しているかを記憶する。これによって後
にゲート論理推定手段12が発生するゲート論理素子や素
子間を接続するネットがレジスタ転送レベル論理記述の
どこに対応するか表示することができる。もし、ある単
語が別の内容を持っているとき、例えばAAと書くと数字
の10を意味すると言った表現がある場合には単語置換手
段36がAAを10に置き換える処理を行う。最後に単語相関
解析手段37が分類された単語間の相関解析を行う。これ
は例えば、ifに対してはelseがあったり、caseに
対してはendcaseがあったりと、お互いに相関をなして
初めて意味が完結するような表現があるからである。こ
の相関解析で相関関係に矛盾が生じると記述エラーとし
てエラーメッセージが出力され、論理設計者に記述修正
を促す。
【0025】次にゲート論理推定手段12が実行され、レ
ジスタ転送レベル論理記述をそのまま素直に変換したゲ
ート論理を生成する。まずネット宣言解析手段41が、レ
ジスタ転送レベル論理記述中に宣言されているネット
(そのブロック全体に対する入力信号や出力信号、及び
途中の計算をつなぐ信号)の宣言に対して解析を行い使
われる可能性のあるネットの候補リストを作る。そし
て、初期ネット作成手段42がそのブロック全体に対して
入力となっているネットに対して入力からの接続情報を
作る。次には言語構文解析手段11によって解析されてい
る単語の分類と相関関係を用いて、ネット宣言を除く全
ての単語について分類別に初期ゲート論理を発生してい
く。単語分類別素子発生手段43が論理素子を生成する。
例えば記述中に=があればバッファを、if文があればそ
の出力にセレクタ(実際にはAND,ORに分解)を生成する。
そして単語素子間表示位置対応付け手段44が発生した素
子とレジスタ転送レベル論理記述との対応を取る。例え
ばセレクタなら対応するifの場所を表示できるように対
応情報を作る。次に発生させた素子間をネットで結ぶの
であるが、記述中に明示されているネットを用いて結べ
る場合と新たにネットを作りだして結ぶ場合がある。例
えばセレクタの場合はANDとORの2素子が使われるが、
2素子の間のネットに関しては記述中に明示されていな
いので、非明示ネット作成手段45がネットを新たに生成
し、前述のネット候補リストに加える。次にネット接続
手段46がネット候補リストを参照して素子間を接続す
る。このネットに対しても単語ネット間表示位置対応付
け手段47がレジスタ転送レベル論理記述との対応を取
る。ネットの接続が終わるとネット候補リスト更新手段
48によって接続済みのネットは捨てられ、次の単語解釈
により発生する素子との接続の候補リストに更新され
る。このようにしてレジスタ転送レベル論理記述中の全
単語についての初期ゲート論理発生を行う。そして最後
に外部接続ネット作成手段49がこのブロック全体に対す
る出力ネットを出力端子に接続する。これで必要な素子
とその間を接続するネットの生成、素子やネットとレジ
スタ転送レベル論理記述との対応が作られたので、それ
らをスキャンして論理パスを見つける論理パス探索手段
50が実行される。この手段がパスを構成する素子やネッ
トのリストを作成する。
【0026】ここまでの処理によっていくつかの解析結
果表示ができるのでそれらについて説明する。図5はブ
ロックパネルの表示を示している。ブロックパネルには
入力したレジスタ転送レベル論理記述中にあるブロック
名(Block Name)、そのブロックの上位階層名(Up Bloc
k)、そのブロック内の論理記述からゲート論理推定を行
ったときの最もクリティカルな論理パスの論理段数(Dan
su)、発生した総素子数(Cell No)、面積(Size)、その配
置位置(Location)と消費電力(Power)が表示される。面
積、ブロック配置位置と消費電力は論理最適化後に計算
されたときに表示される。論理段数や素子数については
この段階でも表示できるし、論理最適化手段13実行後に
も最適化された論理について再計算・再表示される。
【0027】図6はブロックパネル上での階層関係の上
下方法を示している。Block Nameの欄の名前をクリック
するとUp, Downの表示が出るので、階層を下がるならDo
wnを押せばよい。この例ではkaisouというブロックの下
に3つの素子もしくはブロックがあることが分かる。
【0028】図7はブロックパネルとレジスタ転送レベ
ル論理記述表示パネルとの連動を示している。ブロック
パネルの素子名をクリックすると、レジスタ転送レベル
論理記述表示パネル上で対応する記述がハイライトす
る。この例では#name2#1という素子がレジスタ転送レベ
ル論理記述上で、kaisouというブロックの記述の中で用
いられているnakaというブロックのname2というインス
タンスということが示される。また、nakaという記述の
先頭にもハイライトが行われている。
【0029】図8はパスパネルを示している。このパネ
ルには論理パスの始点(Source)と終点(Sink)、パス全体
のディレイ(Delay)、ゲート論理推定時の論理段数(Dans
u)及び論理最適化後の論理段数(Tadan)、パスの種類(K
d)、パスが属するクロックの周期(Cyc)を表示すること
ができる。始点終点間にいくつものパス経路があるとき
は最も論理段数の大きな経路を表示する。また、各項目
についてソートができるようになっており、始点や終点
をアルファベット順に並べたり、論理段数やディレイを
大きい順に並べたりすることができるので解析結果から
の問題点がすぐに分かる。パスの種類からはそのパスが
ラッチーラッチ間、ラッチー入出力ピン間、入出力ピン
ー入出力ピン間なのかがひとめで分かり、パスの種類に
よって異なるディレイ制約に対する違反がすぐに分か
る。
【0030】図9はパスパネルとヒストグラムの連動表
示を示す。Histgramのボタンをクリックすると論理段数
とその論理段数を持つパスの数が表示される。これによ
りひとめで論理段数によるパスのディレイの分布が分か
る。図10は階層の上下とパスパネルの連動を示してい
る。ブロックパネルで階層を上下し、そのブロック名を
クリックするとクリックされたブロック内に含まれるパ
スが表示される。これにより各ブロック単位に問題点が
把握できる。
【0031】図11はパスパネルとレジスタ転送レベル記
述表示パネル及びネットパネルとの連動を示している。
論理パスの番号をクリックするとそのパス中に含まれる
全てのネットがレジスタ転送レベル記述表示パネル上で
ハイライトする。このハイライトは階層をまたがって、
全ての階層で表示される。また、ネットパネルが表示さ
れ、パス中に含まれる全てのネット(Net Name)、ネット
が含まれるブロック名(Block)、その上位のブロック名
(Upper)、そのネットの出力セル(OutputCell)と入力セ
ル(InputCell)、出力セルの論理段数(Dansu)とその出力
セルまでの論理段数和(Sum Dan)、ネットのファンアウ
ト(Fanout)が表示される。このネットパネルによりパス
経路の詳細が把握でき、パス経路中のどのネットや素子
でディレイの問題が生じているかがすぐに理解できる。
図12はネットパネルとレジスタ転送レベル記述表示パネ
ルとの連動を示している。ネットに対応する番号をクリ
ックするとレジスタ転送レベル記述表示パネル上でその
ネットとそのネットの出力素子が表示されるので、パス
経路をひとつづつ順に追跡することができる。
【0032】ここまでがゲート論理推定手段12が終了し
たときに表示手段22によって表示できる情報と情報間の
連動を示している。この表示手段22によってレジスタ転
送レベル記述表示と各評価値の対応が設計者にすぐ分か
るようになり、より良いレジスタ転送レベル記述を作り
上げるのに効果を持つ。
【0033】次に論理最適化手段13について説明する。
まずBDD(Binary Decision Diagram)作成手段51が各出力
ピンに関してそのピンに至るまでに関係する全ての入力
論理を抽出する。そして冗長回路削除手段52が、0・1ど
ちらを与えても同じ出力を出す部分を探索して削除す
る。そうやって縮約されたBDDを縮約後BDD登録手段53が
メモリに格納し、同時に使用可能セルへの置き換え手段
54が論理最適化用lib102に格納されている使用可能な素
子に置き換える。ここで使用可能な素子の例は2入力NAN
D、2入力NOR、インバータ、2入力XOR、2入力XNOR等であ
る。論理最適化への指示がディレイ優先の場合にはこの
段階で論理段数計算手段が論理段数を求めて処理を終了
する。
【0034】論理最適化への指示が面積優先の場合に
は、縮約されたBDDに対して、共通部分の縮約手段57が
1つの出力ピンへの部分論理の中で他の出力ピンへの部
分論理と共通化できる部分の候補を見つけ、実際に共通
化できれば共通項を括りだしてさらにBDDを縮約する。
最後に縮約後BDD登録手段53が最適化論理を登録する。
【0035】論理最適化が終わるとその情報は、図5の
ブロックパネルの最大論理段数と素子数の欄、図8のパ
スパネルの各パスに対する論理最適化後の段数等に反映
され、さらに論理最適化で作成された論理はその後の面
積やディレイ計算、消費電力計算に使われる。
【0036】次にブロック面積推定手段14について説明
する。先に述べた論理最適化手段が終了すると、論理最
適化後素子数計算手段61が論理最適化後の素子数を求め
て、素子面積を計算する。その素子面積を用いてブロッ
クの面積を推定するのであるが、実際にLSIチップを作
るときに使用される配線層の総数によって推定方法が変
わる。配線層が総数4層以上の場合、一般的に、配線領
域を特別に取らなくとも十分全ての配線を行うことがで
きるので、この場合は配線領域を推定することなく指定
実装率入力手段62が面積計算のための実装率(ブロック
面積に対する素子面積の割合)を入力して、面積計算手
段63が素子面積合計に実装率を乗じてブロック面積を求
める。
【0037】一方、配線層総数が3層以下の場合には配
線領域を推定する必要がある。配線層が3層以下の場合
は、一般にブロック内のネットの接続を行うのに必要な
配線を収納するだけの配線領域を確保しなければならな
いからである。配線領域を推定するためにはネットの接
続を行うのに必要な配線長を求める必要がある。そのた
めにピン数カウント手段64が配線にかかわる指標である
素子のピン数を数える。次に総配線長計算手段65が素子
数と総ピン数によって必要な配線長を予測する。そして
配線長考慮面積推定手段66が、自動配線プログラムが与
えられた領域のどのぐらいを使える能力があるかという
パラメータによってブロック面積を推定する。
【0038】このようにして求めた各ブロックの面積を
用いてフロアプラン15を行う。図15は各ブロックをチッ
プ上に配置するための指示方法を示している。ブロック
パネルでブロック名をクリックすると、先ほど階層の上
下を行った指示パネルが現れ、そこでinformationを選
択すると図中にあるサイズとロケーションを入力するパ
ネルが出る。デフォルト値は、サイズはブロック面積推
定手段14で見積った値、ロケーションはチップの左下点
である。そうすると図中のFloorplanのパネルにあるよ
うにブロックが配置される。
【0039】図16はフロアプラン15で可能な処理を示し
ている。フロアプラン15ではブロックの移動、ブロック
の形状の変更が可能である。移動時には他のブロックと
の接続関係を右側の図のネットのような表示で、接続ネ
ットがたくさんある場合には関係の線を太くして表示す
る。形状変更は見積った面積を保ったままと自由に変更
できるモードの2つがある。ブロックの位置関係が決定
したら先に解析した論理パスの経路も表示することがで
きる。パネル間の連動に関しては、ブロックパネルでブ
ロックを選択するとフロアプランパネル上でブロックの
色が変わったり、その逆にフロアプランパネル上でブロ
ックを選択するとブロックパネルの対応するブロックの
色が変わる。論理パスの表示に関してもパスパネルと相
互に連動する。
【0040】フロアプラン15によって各ブロックの物理
的な形状や位置関係が決まると配線ディレイを含めたパ
スディレイを計算することができる。パスディレイ計算
手段16においてまず全てのネットについてネットディレ
イを計算する。ネットディレイ計算で考慮する項目を図
18に示す。素子に関しては出力ピンの出力抵抗と入力ピ
ンの入力容量を考慮する。配線パターンに関しては線分
の容量・抵抗、配線層を変えるときに用いるスルーホー
ルの抵抗を考慮する。
【0041】配線長計算手段71はブロック内、ブロック
間の全てのネットについて配線長を計算する。次に配線
容量計算手段72がその配線長に各配線層の平均的な容量
係数を乗じることによって配線容量を求める。レジスタ
転送レベルの段階ではどの配線層に実際の経路が配線さ
れるか分からないので、まず配線長を求め、それに平均
容量係数を乗じるのである。この平均容量係数には配線
同士が並行して走ったときや交差したときの容量増分が
含まれている。容量の考え方について図19に示す。配線
容量としては線分と拡散層間の容量であるCs(配線の底
面と拡散層との容量)とCf(配線の側面と拡散層との容
量)、並行線分間の容量Cp、交差線分間の容量Ccが考え
られ、これらを全て考慮した平均容量係数がデフォルト
パラメータファイル103に登録してある。次に配線抵抗
計算手段73が配線抵抗を求める。抵抗としては線分の長
さに比例する配線抵抗と、スルーホールの抵抗を両方考
慮する。平均的なスルーホールの数は自動配線プログラ
ムの試行結果から求め、デフォルトパラメータとして登
録してある。これらの情報からネットディレイ計算手段
74がネットディレイを計算する。
【0042】ネットディレイ計算が終わると論理パス探
索手段50によりもう一度パス経路探索を行う。これはブ
ロックの物理的な位置の決定によりネットディレイが精
度良く求まり、論理パスのディレイがゲート論理推定時
と異なってくるからである。パス経路探索が終了したら
クリティカルパス登録手段75がクリティカルパスを登録
し、表示手段22によってパスディレイを再表示する。
【0043】つぎに消費電力計算手段18について説明す
る。消費電力計算は論理シミュレーションの結果を利用
する場合、テストパターンを自動生成して論理設計者の
テストパターン作成工数を削減しておいて論理シミュレ
ーションを行いその結果を利用する場合、そして入力ピ
ンに対する信号の変化確率と密度を与えることによって
確率的に高速に消費電力を求める場合の3つに分かれ
る。
【0044】論理設計者がレジスタ転送レベル記述に対
して論理シミュレーションを行なった結果がすでにある
ときにはその結果をシミュレーション結果入力手段81が
入力する。次にスイッチング回数計算手段82が、ゲート
論理推定手段によって推定された初期論理上の各素子に
対して、その素子が何回on, offしたかをカウントす
る。1素子の消費電力は、その素子が動作するときの電
圧、その素子の出力ピンにつながる容量、そしてスイッ
チング回数によって概算できるので、次に配線容量入力
手段83がその素子の出力ピンにつながる配線容量と入力
ピンの入力容量を合計する。そしてセル電力計算手段84
が電圧の2乗・容量・スイッチング回数を乗じて1素子
の消費電力を求める。各素子について消費電力が求まる
と電力集計手段85がブロック全体の消費電力を集計す
る。
【0045】次に論理シミュレーション結果がない場合
について説明する。この場合には確率的に消費電力を計
算するか、論理シミュレーションを実行するかのどちら
かになるが、論理シミュレーションを実行したい場合に
はそのためのテストパターン作成をする必要がある。ど
ちらの場合でも入力ピンの変化確率・密度入力手段87が
を入力ピンの変化確率と変化密度を入力する。ここで変
化確率とは入力ピンに入る信号の値が1である割合、つ
まりNクロック周期内に信号が1になる回数の割合を示
す。また、変化密度とは信号の値が変化する割合、つま
りNクロック周期内に信号が1から0もしくは0から1
に変化する回数の割合である。
【0046】入力ピンの変化確率と変化密度が与えられ
たときのテストパターン作成手段80について図25を用い
て説明する。まず、作成ビット数・作成パターン数入力
手段95がテストパターンを作成するビット数(LSIの外部
入力ピン数)と作成パターン数(0、1の列数)を入力す
る。次に乱数発生手段96が作成ビット数分だけ乱数を発
生させる。そして、乱数の値が0.5以上ならビットを1
に、それ以外ならビットを0にする。この処理によって
変化確率が指定されない標準の時のテストパターンが作
成できる。指定確率があるときは、0、1の変更手段97
ができたビット列に対して指定確率に応じて0、1を変
更することにより1パターン列が作成される。さらに作
成パターン数分これを繰り返すことにより設計者が必要
とするテストパターン列を作成することができる。この
テストパターンを用いて論理シミュレーションを行な
い、その結果を入力することにより消費電力を求める。
ただし、この手段によって作成されたテストパターンは
あくまで消費電力計算用のものであり、レジスタ転送レ
ベル記述の動作を検証するものではない。
【0047】最後に入力ピンの変化確率と変化密度から
直接消費電力を計算する方法について示す。入力ピンに
変化確率・密度が与えられると、確率・密度伝播手段86
により、入力ピンにつながる各素子がもっている機能に
応じた確率・密度伝播式にその値が代入され、素子の出
力ピンに新たな確率・密度が伝播される。これを論理上
の全てのパスについて行う。これにより各素子が動作す
る総回数、つまりスイッチング回数が求められる。その
後は論理シミュレーションから電力を求めるのと同じ手
段により消費電力が求められる。
【0048】図21には消費電力計算結果の表示方法を示
している。ブロック単位の計算結果は図5のブロックパ
ネル内のPowerの欄に表示されるが、その他の表示方法
として機能別電力、時刻別電力を表示する。機能別に電
力を表示することによって、単にブロック単位で電力が
大きいというだけではわかりにくい問題点に対してただ
ちに認識ができる。例えばI/O系の電力が高い場合にはI
/O系の論理記述を見直せばよいことがすぐにわかる。ま
た、時刻別に電力を表示することによって、時刻単位で
のブロック単位の電力がすぐにわかり、ある時刻では動
作していないはずのブロックの電力が高かったりしたと
きの問題点がただちに認識ができる。図22ではこの解析
表示機能を利用して、時刻T1〜T2ではブロックDを動作
させないようにブロックDへのクロック供給経路にNAND
ゲートをいれてクロックを供給しないよう回路を構成し
た例である。
【0049】次に大規模論理評価手段90について説明す
る。近年は1つのLSIに相当数の論理を搭載することが
できるので、論理が大規模で階層的に記述されているの
が一般的である。大規模なレジスタ転送レベル記述を一
挙に解析しようとすると計算機の使用可能メモリを越え
てしまう場合があるので、最初に下位階層ブロック数だ
け、各ブロック単位に解析し後に全体をまとめて解析を
行なう。下位階層ブロックの解析は図1に示した流れと
同じである。ただし、フロアプラン15は行なわないのと
解析の最後にブロックlib出力手段91によって解析結果
を簡単化して出力することが異なる。
【0050】ブロックlibはレジスタ転送レベル記述の
解析結果を簡単化して持つが、その簡単化の方法を図24
に示す。図24の上図は図1の解析手段によって解析され
た論理パス経路を示す。Aはパス経路の始点、B,Cは終点
を示し、その間の箱は素子を、そしてその中の数字は素
子の論理段数もしくは消費電力を示す。パス経路上には
多数の素子があるが、素子全てと素子間のネット全てを
そのまま表現せずに、1つのパスを1つの素子とその両
端のネットで表現する。これによって経路を表現するデ
ータ量が削減される。また、素子の論理段数や消費電力
をまとめて1つの素子の値として持つことにより論理パ
ス単位の情報量も少なくすることができる。たとえば箱
のなかの数字を素子の論理段数としたとき、AB間の論理
段数は2、AC間の論理段数は3であるが一つにまとめた
素子に2や3の値を持たせている。
【0051】下位階層ブロックの解析が終了すると最上
位の論理記述を入力し、言語構文解析手段11、ゲート論
理推定手段12と行なっていく。そして下位階層ブロック
の処理を呼び出す記述が現われるとブロックlib入力手
段92が解析済み情報であるブロックlib106の内容を入力
し、全体解析情報を作る。その全体解析情報に対してフ
ロアプラン15・パスディレイ計算手段16・消費電力計算
手段17を行ない、全体解析結果を得る。
【0052】上に述べたようにして1つのレジスタ転送
レベル記述の評価を行なうのであるが、面積・ディレイ
・消費電力の3つとも最良の値を持つとは限らない。そ
こで別のアルゴリズムを考え、別のレジスタ転送レベル
記述を行なうこともある。その場合は1つのレジスタ転
送レベル記述内でのハードウェア性能評価値のトレード
オフだけでなく、複数のレジスタ転送レベル記述間での
トレードオフ解析が必要になる。図26は複数のレジスタ
転送レベル記述間でのトレードオフ解析の様子を示して
いる。本評価システムでは図1の最後に示すこのような
記述間の比較がひとめでわかるような方式間評価手段19
も備えている。
【0053】
【発明の効果】言語構文解析手段11・ゲート論理推定手
段12を持つので、レジスタ転送レベル記述上の全ての論
理パスに対してその経路上の詳細な対応全てを表示する
ことができる。これらの手段及び各表示パネル間を連動
して表示を行なう表示手段22を備えるので論理記述上の
問題点を短時間かつ的確に把握でき、かつレジスタ転送
レベル記述の修正時間の短縮及び論理合成回数の削減が
できる。
【0054】論理最適化手段13を持つので論理合成シス
テムとは独立に、かつゲートレベル論理を入力すること
なくLSIのハードウェア性能評価を行なうことができ
る。ブロック面積推定手段14・フロアプラン15・パスデ
ィレイ計算手段16・消費電力計算手段17を持つのでLSI
の重要なハードウェア性能指標である面積・ディレイ・
消費電力の3つを一挙に解析しトレードオフを解析する
ことができる。また、ハードウェア性能評価を短時間で
行なうことができるので、何回となくレジスタ転送レベ
ル記述論理を修正して性能向上する工数を削減すること
ができる。フロアプラン15により配線容量を考慮したパ
スディレイ評価・消費電力評価ができる。
【0055】ブロックlib出力手段91・ブロックlib入力
手段92を持つので大規模論理を効率良く解析できる。さ
らに方式間評価手段19によって複数のレジスタ転送レベ
ル記述に対してその評価値を比較表示する手段を持つの
でトレードオフを考慮しながらより良い記述を容易に見
つけだすことができる。
【0056】テストパターン作成手段80を持つので人手
によってあらかじめ消費電力計算用のテストパターン作
成を行なう必要がなく評価期間を削減することができ
る。また、確率的に消費電力計算を行なう手段を持つの
でテストパターンなしでも消費電力を計算することがで
きる。
【0057】以上の効果を総合して図27に示すような設
計期間短縮の効果が得られる。
【図面の簡単な説明】
【図1】本発明のシステム構成。
【図2】本発明のシステムの入出力構成。
【図3】構文解析手段の構成。
【図4】ゲート論理推定手段の構成。
【図5】ブロックパネル表示の例。
【図6】論理階層の上下表示の例
【図7】ブロックパネルとレジスタ転送レベル記述表示
パネルの連動の例。
【図8】パスパネル表示の例。
【図9】パスのヒストグラム表示の例。
【図10】論理階層とパスパネルの連動の例。
【図11】パスパネルとレジスタ転送レベル記述表示パ
ネル及びネットパネルの連動の例。
【図12】ネットパネルとレジスタ転送レベル記述表示
パネルの連動の例。
【図13】論理最適化手段の構成。
【図14】ブロック面積推定手段の構成。
【図15】ブロックパネルとフロアプランブロック配置
の連動の例。
【図16】フロアプランの機能のイメージ図。
【図17】パスディレイ計算手段の構成。
【図18】ネットディレイ計算時の考慮要素の例。
【図19】考慮する配線容量の例。
【図20】消費電力計算手段の構成。
【図21】消費電力解析機能の例。
【図22】消費電力削減効果の例。
【図23】大規模論理評価手段の構成。
【図24】ブロックlibの解析情報の形式の例。
【図25】テストパターン自動発生手段の構成。
【図26】方式間比較の例。
【図27】レジスタ転送レベル記述評価による設計期間
短縮の例。
【符号の説明】
11…言語構文解析手段、 12…ゲート論理推定手段、13
…論理最適化手段、 14…ブロック面積推定手段、15…
フロアプラン、 16…パスディレイ計算手段、17…消費
電力計算手段、 18…評価値出力手段、19…方式間評価
手段、 21…入力手段、22…出力手段、 31…ソース文
字列入力手段、32…ソース行管理手段、 33…単語への
分解手段、34…ファイル管理手段、 35…単語位置管理
手段、36…単語置換手段、 37…単語相関解析手段、41
…ネット宣言解析手段、 42…初期ネット作成手段、43
…単語分類別素子発生手段、 44…単語素子間表示位置
対応付け手段、45…非明示ネット作成手段、 46…ネッ
ト接続手段、47…単語ネット間表示位置対応付け手段、
48…ネット候補リスト更新手段、49…外部接続ネット
作成手段、 50…論理パス探索手段、51…BDD作成手
段、 52…冗長回路削除手段、53…縮約後のBDD登録手
段、 54…使用可能セルへの置換手段、55…論理段数計
算手段、 56…縮約後のBDD取出し手段、57…共通部分
の縮約手段、 61…論理最適化後素子数計算手段、62…
指定実装率入力手段、 63…面積計算手段、64…ピン数
カウント手段、 65…総配線長計算手段、66…配線長考
慮面積計算手段、 71…配線長計算手段、72…配線容量
計算手段、 73…配線抵抗計算手段、74…ネットディレ
イ計算手段、 75…クリティカルパス登録手段、80…テ
ストパターン自動発生手段、 81…シミュレーション結
果入力手段、82…スイッチング回数計算手段、 83…配
線容量入力手段、84…セル電力計算手段、 85…電力集
計手段、86…確率・密度伝播手段、 87…入力ピンの変
化確率・密度入力手段、90…大規模論理評価手段、 91
…ブロックlib出力手段、92…ブロックlib入力手段、
95…作成ビット・作成パターン数入力手段、96…乱数発
生手段、 97…0・1の変更手段、101…レジスタ転送
レベル論理記述(RTL)、 102…論理最適化用lib、10
3…デフォルトパラメータファイル、 104…LEF(Librar
y Exchange Format)、105…PDEF(Physical Design Exch
ange Format)、 106…ブロックib、107…dumpfile(途
中結果ファイル)、 108…各方式の評価結果ファイル。

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】レジスタ転送レベル論理記述を入力してLS
    Iハードウェア性能を予測評価する装置において、 前記論理記述に基づき、各ブロックの大きさとブロック
    間の相対位置関係を決定するブロック面積推定手段と、 前記ブロック間の相対位置関係情報に基づき、3次元的
    な容量を考慮したネットディレイを求めるパスディレイ
    計算手段と、 消費電力を計算する消費電力計算手段と、 複数のレジスタ転送レベル論理記述に対する上記各手段
    による評価値のトレードオフを表示する方式間評価手段
    とを備えたことを特徴とするレジスタ転送レベル論理記
    述ハードウェア性能評価装置。
  2. 【請求項2】前記入力論理記述が複数階層を持つとき
    に、下位階層の記述を先に解析して、該解析項目をライ
    ブラリへ入力して持ち、最後に最上位階層の解析を行う
    手段をさらに備えたことを特徴とする請求項1記載のレ
    ジスタ転送レベル論理記述ハードウェア性能評価装置。
  3. 【請求項3】前記入力した論理記述を言語仕様に基づい
    た初期論理に変換するゲート論理推定手段と、該入力記
    述上で解析可能な全ての論理パスの経路を表示する手段
    とをさらに備えたことを特徴とする請求項1記載のレジ
    スタ転送レベル論理記述ハードウェア性能評価装置。
  4. 【請求項4】前記入力した論理記述を言語仕様に基づい
    た初期論理に変換した中に存在するブロックや素子に関
    して、ブロックや素子名、それが含まれる上位ブロッ
    ク、論理段数、そのブロックに含まれる素子数、面積、
    消費電力、配置位置を表示する手段をさらに備えたこと
    を特徴とする請求項1記載のレジスタ転送レベル論理記
    述ハードウェア性能評価装置。
  5. 【請求項5】前記請求項3記載の表示手段が、全ての論
    理パスに対してその始点・終点、パスディレイ、論理段
    数、パスの種類を表示することを特徴とする請求項3記
    載のレジスタ転送レベル論理記述ハードウェア性能評価
    装置。
  6. 【請求項6】前記請求項3記載の表示手段が、ひとつの
    パスが選択されると、そのパス上のネットと素子の接続
    関係を順に表示することを特徴とする請求項3記載のレ
    ジスタ転送レベル論理記述ハードウェア性能評価装置。
  7. 【請求項7】前記請求項3記載の表示手段が、ひとつの
    パスが選択されると、そのパス上の全てのネットと全て
    の素子に対応する記述部分をハイライトして表示するこ
    とを特徴とする請求項3記載のレジスタ転送レベル論理
    記述ハードウェア性能評価装置。
  8. 【請求項8】前記請求項6記載の表示手段が、ネット
    名、そのネットが含まれるブロック名、そのブロックを
    含む上位ブロック、そのネットの出力素子名、そのネッ
    トのファンアウト数、そのネットの出力素子の論理段
    数、そのネットの入力素子名を表示することを特徴とす
    る請求項6記載のレジスタ転送レベル論理記述ハードウ
    ェア性能評価装置。
  9. 【請求項9】前記請求項8記載の表示手段が、ネットの
    番号を選択すると、そのネットとそのネットの出力素子
    に対応する記述部分をハイライトして表示することを特
    徴とする請求項8記載のレジスタ転送レベル論理記述ハ
    ードウェア性能評価装置。
  10. 【請求項10】ブロック面積を推定し、そのブロックを
    配置し、また既作成のブロック情報を入力しフロアプラ
    ンを行う手段をさらに備えたことを特徴とする請求項1
    記載のレジスタ転送レベル論理記述ハードウェア性能評
    価装置。
  11. 【請求項11】前記フロアプラン上で論理パス経路の表
    示をする手段をさらに備えたことを特徴とする請求項1
    0記載のレジスタ転送レベル論理記述ハードウェア性能
    評価装置。
  12. 【請求項12】消費電力を計算した結果を時刻毎にグラ
    フ表示する手段をさらに備えたことを特徴とする請求項
    1記載のレジスタ転送レベル論理記述ハードウェア性能
    評価装置。
  13. 【請求項13】消費電力を計算するためのシミュレーシ
    ョンパターンを自動生成する手段をさらに備えたことを
    特徴とする請求項1記載のレジスタ転送レベル論理記述
    ハードウェア性能評価装置。
JP10018542A 1998-01-30 1998-01-30 レジスタ転送レベル論理記述ハードウェア性能評価装置 Pending JPH11213029A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10018542A JPH11213029A (ja) 1998-01-30 1998-01-30 レジスタ転送レベル論理記述ハードウェア性能評価装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10018542A JPH11213029A (ja) 1998-01-30 1998-01-30 レジスタ転送レベル論理記述ハードウェア性能評価装置

Publications (1)

Publication Number Publication Date
JPH11213029A true JPH11213029A (ja) 1999-08-06

Family

ID=11974534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10018542A Pending JPH11213029A (ja) 1998-01-30 1998-01-30 レジスタ転送レベル論理記述ハードウェア性能評価装置

Country Status (1)

Country Link
JP (1) JPH11213029A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769098B2 (en) 2000-02-29 2004-07-27 Matsushita Electric Industrial Co., Ltd. Method of physical design for integrated circuit
US8074198B2 (en) 2007-08-29 2011-12-06 Nec Corporation Apparatus and method for circuit layout using longest path and shortest path search elements
JP2012164363A (ja) * 2012-05-25 2012-08-30 Fujitsu Ltd 半導体回路設計支援プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769098B2 (en) 2000-02-29 2004-07-27 Matsushita Electric Industrial Co., Ltd. Method of physical design for integrated circuit
US8074198B2 (en) 2007-08-29 2011-12-06 Nec Corporation Apparatus and method for circuit layout using longest path and shortest path search elements
JP2012164363A (ja) * 2012-05-25 2012-08-30 Fujitsu Ltd 半導体回路設計支援プログラム

Similar Documents

Publication Publication Date Title
US6378123B1 (en) Method of handling macro components in circuit design synthesis
US6295636B1 (en) RTL analysis for improved logic synthesis
US6421818B1 (en) Efficient top-down characterization method
US6216252B1 (en) Method and system for creating, validating, and scaling structural description of electronic device
US6289498B1 (en) VDHL/Verilog expertise and gate synthesis automation system
US6292931B1 (en) RTL analysis tool
US5572436A (en) Method and system for creating and validating low level description of electronic design
US5831869A (en) Method of compacting data representations of hierarchical logic designs used for static timing analysis
US5870308A (en) Method and system for creating and validating low-level description of electronic design
US6263483B1 (en) Method of accessing the generic netlist created by synopsys design compilier
US6173435B1 (en) Internal clock handling in synthesis script
US5557531A (en) Method and system for creating and validating low level structural description of electronic design from higher level, behavior-oriented description, including estimating power dissipation of physical implementation
US6836877B1 (en) Automatic synthesis script generation for synopsys design compiler
US6324678B1 (en) Method and system for creating and validating low level description of electronic design
US5541849A (en) Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters
US6205572B1 (en) Buffering tree analysis in mapped design
US5544066A (en) Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of low-level design constraints
US5801958A (en) 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
US20050268258A1 (en) Rule-based design consultant and method for integrated circuit design
US7143367B2 (en) Creating optimized physical implementations from high-level descriptions of electronic design using placement-based information
US7685545B2 (en) Methods and devices for independent evaluation of cell integrity, changes and origin in chip design for production workflow
US6132109A (en) Architecture and methods for a hardware description language source level debugging system
US5910897A (en) Specification and design of complex digital systems
JP2995963B2 (ja) 階層的回路データベース最適化装置及び階層的回路データベース最適化方法
US6289491B1 (en) Netlist analysis tool by degree of conformity