JP3101872B2 - 論理合成支援方法およびシステム - Google Patents

論理合成支援方法およびシステム

Info

Publication number
JP3101872B2
JP3101872B2 JP09192505A JP19250597A JP3101872B2 JP 3101872 B2 JP3101872 B2 JP 3101872B2 JP 09192505 A JP09192505 A JP 09192505A JP 19250597 A JP19250597 A JP 19250597A JP 3101872 B2 JP3101872 B2 JP 3101872B2
Authority
JP
Japan
Prior art keywords
file
description
function
logic synthesis
logic
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.)
Expired - Fee Related
Application number
JP09192505A
Other languages
English (en)
Other versions
JPH1139360A (ja
Inventor
寿 前田
Original Assignee
日本電気エンジニアリング株式会社
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 日本電気エンジニアリング株式会社 filed Critical 日本電気エンジニアリング株式会社
Priority to JP09192505A priority Critical patent/JP3101872B2/ja
Publication of JPH1139360A publication Critical patent/JPH1139360A/ja
Application granted granted Critical
Publication of JP3101872B2 publication Critical patent/JP3101872B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、論理合成による
回路設計を支援するシステムに係り、特に回路の論理的
な記述言語であるハードウェア記述言語(以下、「HD
L(Hardware Description Language)」と称する)に
代表される機能記述言語を用いた回路の論理設計を支援
するための論理合成支援方法およびシステムに関する。
【0002】
【従来の技術】古典的には、回路装置の設計は、設計者
が直接回路図を設計し作図することにより行われてい
た。ところが、LSI(Large Scale Integration〜大
規模集積回路)、およびその他の回路装置の大規模/複
雑化に伴い、CAD(Computer Aided Design)システ
ム等を用いて、回路ブロック等の機能図に基づいて回路
図を自動生成することが多くなってきている。近年で
は、回路図または機能図等よりもさらに論理的で高度な
記述が可能なHDLを用いた回路のシミュレーションお
よび自動合成等が行われている。HDLを用いれば、電
気回路の状態遷移等は、従来の機能図または制御フロー
図等の代わりに、プログラミング言語と類似したステー
トメントや制御文等によって平易に且つ高度に記述する
ことができる。このようなHDLを用いて、LSIおよ
びその他の回路装置の仕様等を記述し、該HDLの記述
に基づくコンピュータ処理により回路の動作をシミュレ
ーションしたり、回路の自動合成を行ったりする。
【0003】ところで、HDLを用いた記述をもとに、
論理合成等による回路設計を行う場合には、回路設計の
結果が、もとになるHDLの記述内容によって異なる。
したがって、結果として条件および要求にマッチした最
適な回路構成を得るためには、最適な結果を得ることが
できるようにHDLが記述されている必要がある。
【0004】このような、HDLの適切な記述を得るた
めの技術の一例が、特開平8−202747号公報に開
示されている。特開平8−202747号公報において
は、RTL(Register Transfer Level)記述を用いて
設計された回路に対してシミュレーションを行って機能
を確認した後、冗長な回路の有無を調査する。そして冗
長な回路が存在していないことを確認した時点で回路を
合成してシミュレーションを行い機能を確認する。
【0005】すなわち、機能記述言語であるHDL記述
の作成を行った後、論理シミュレーションを行う。シミ
ュレーションの結果、機能を満足していることを確認
し、不満足であれば、HDL記述に戻り、記述を修正す
る。所望の機能を満足していた場合には、回路合成前に
冗長な回路が存在するか否かを確認し、冗長な回路があ
れば記述を修正する。
【0006】冗長な回路の有無の確認方法は、入力され
たHDL記述と、予め作成されている冗長回路調査用デ
ータベースとを比較し、冗長な回路の検索を行う。HD
L記述中に冗長な回路記述を発見した場合は、HDLの
記述から冗長な回路部分を削除する。
【0007】
【発明が解決しようとする課題】特開平8−20274
7号公報に記載された従来の技術では、論理上の冗長な
回路を削除することはできるが、その冗長な回路の削除
が面積および遅延の向上になっているか否かということ
までは、確認することはできない。また、冗長な回路の
削除を行うためには、シミュレーションを実行するため
に、シミュレーションパターンを作成する必要があり、
そのための人手および工程数が必要となる。
【0008】さらに、従来の論理合成システムには、上
述において特開平8−202747号公報について指摘
した点に限らず、次に述べるような問題もあった。
【0009】図6は、従来の論理合成システムを中心と
した、HDL作成のための人手による繰り返し処理の流
れを示すフローチャートである。
【0010】従来のHDL記述を入力とする論理合成処
理では、論理合成システム自身が持っている最適化機能
を利用しながら論理合成を行う。しかしながら、論理合
成システムにおける最適化機能そのものには限界があ
り、その限界を越えた結果を求める場合には、設計者の
能力によって入力HDL記述の質を向上するようにす
る。すなわち、設計者自身が「より良い合成結果を得ら
れるようにHDLを作成」するのが常である。
【0011】図6に示すように、論理設計者が所要の回
路仕様に応じて、HDLで記述したHDLファイルを論
理合成システムに入力して(ステップS1)、論理合成
を行う(ステップS2)。このステップS2における論
理合成システムとして、特開平8−202747号公報
のようなシステムを用いてもよい。論理合成結果が得ら
れたら、該論理合成結果を面積チェックシステムおよび
遅延チェックシステムに与えて、回路の面積チェック
(ステップS3)および遅延時間のチェック(ステップ
S4)を行う。これら、面積および遅延時間のチェック
が初めての場合、つまり初回である場合には、論理設計
者が修正が必要か否かを判断する(ステップS5)。ス
テップS5で修正が必要でないと判断した場合にはその
まま処理を終了するが、修正が必要であると判断した場
合には、論理設計者自身が自分で(人手にて)HDLの
記述修正する(ステップS6)。そして、ステップS6
で修正して得られた修正HDL記述を、再度論理合成シ
ステムに入力し(ステップS7)、論理合成を行う(ス
テップS2)。
【0012】さらに面積チェック(ステップS3)およ
び遅延チェック(ステップS4)を行って、当該チェッ
クが2回目以降である場合には、前回のチェック結果と
比較し(ステップS8)、前回より良好な結果が得られ
た場合には、ステップS5に移行して、修正が必要か否
かを判定し、前回と同様の処理を行う。ステップS8に
おいて、前回の結果よりも良好でないと判定された場合
には、再度、ステップS6で論理設計者によるHDL記
述の修正が行われ、ステップS7で修正HDLを論理合
成システムに入力して、再度、ステップS2における論
理合成に供する。
【0013】したがって、論理設計者は図6のように、
論理合成が行われる度に面積チェックおよび遅延時間の
チェックを行い、設計者が希望する結果を得られない場
合には、HDL修正作業に戻ってHDL記述を修正し、
再度同じ作業を繰り返すことになる。この方法は、トラ
イ・アンド・エラーのみに頼っているため、論理合成シ
ステムの運用等の人手および工程数が必要になる。ま
た、トライ・アンド・エラーの度にHDL記述およびネ
ットリスト等の種類が増え、物理ファイル領域も増大
し、ファイル管理も複雑になる。さらに、一般的には論
理合成機能と、面積チェック機能および遅延チェック機
能とは別個のシステムとして分離されており、これも運
用工程数の増大につながる。
【0014】この発明は、上述した事情に鑑みてなされ
たもので、機能記述言語を用いて記述された機能記述フ
ァイルの修正/統合および論理合成処理運用の作業効率
を向上して、回路設計における工程数を削減し得る論理
合成支援方法およびシステムを提供することを目的とす
る。
【0015】
【課題を解決するための手段】上記目的を達成するた
め、この発明の第1の観点に係る論理合成支援システム
は、機能記述言語を用い所要の機能構成を所定の機能単
位毎に区分し且つ予め複数種の異なる記述方式にてそれ
ぞれ設計記述した複数の機能記述ファイルを格納するフ
ァイル格納手段と、前記ファイル格納手段に格納された
前記複数の機能記述ファイルに基づいて論理回路を合成
し、前記機能記述ファイル毎にそれぞれ異なる複数の論
理合成結果を得る論理合成手段と、前記論理合成手段に
より得られる前記複数の論理合成結果について前記機能
単位毎にそれぞれ論理回路の要素特性をチェックする合
成結果チェック手段と、前記合成結果チェック手段によ
り得られる前記複数の論理合成結果についての前記機能
単位毎のチェック結果を予め設定した目標要素特性と比
較し、該目標要素特性に最も近い機能記述ファイルを判
別する機能記述ファイル判別手段と、前記機能記述ファ
イル判別手段により判別された機能記述ファイルを前記
機能単位毎に選択して結合し、最適記述ファイルを生成
する機能記述ファイル合成手段と、を具備する。
【0016】上記目的を達成するため、この発明の第2
の観点に係る論理合成支援システムは、機能記述言語を
用い所要の機能構成を所定の機能単位毎に区分し且つ予
め複数種の異なる記述方式にてそれぞれ設計記述した複
数の機能記述ファイルを格納するファイル格納手段と、
前記ファイル格納手段に格納された前記複数の機能記述
ファイルに基づいて論理回路を合成し、前記機能記述フ
ァイル毎にそれぞれ異なる複数の論理合成結果を得る論
理合成手段と、前記論理合成手段により得られる前記複
数の論理合成結果について前記機能単位毎にそれぞれ論
理回路の面積および遅延時間をチェックする合成結果チ
ェック手段と、前記合成結果チェック手段により得られ
る前記複数の論理合成結果についての前記機能単位毎の
チェック結果を予め設定した目標面積および遅延時間と
比較し、該目標面積および遅延時間に最も近い機能記述
ファイルを判別する機能記述ファイル判別手段と、前記
機能記述ファイル判別手段により判別された機能記述フ
ァイルを前記機能単位毎に選択して結合し、最適記述フ
ァイルを生成する機能記述ファイル合成手段と、を具備
する。
【0017】前記ファイル格納手段は、区分した機能単
位の一部についてのみ複数種の異なる記述方式にてそれ
ぞれ設計記述した前記複数の機能記述ファイルを格納す
る手段であってもよい。
【0018】前記ファイル格納手段は、機能記述言語を
用い所要の機能構成全体を所定の機能単位毎に区分して
設計記述したメイン記述ファイルと、前記メイン記述フ
ァイルと共通の機能記述言語を用い且つ所要の機能構成
の一部の区分された機能単位について他の記述ファイル
と異なる記述方式にて設計記述した1以上のサブ記述フ
ァイルとを含む機能記述ファイルを格納する手段であっ
てもよい。
【0019】前記論理合成手段は、前記複数の機能記述
ファイルに基づいて論理回路を合成して、前記機能記述
ファイル毎に得られるそれぞれ異なる複数の論理合成結
果を一時ファイルに格納する手段を含んでいてもよい。
【0020】前記論理合成手段は、前記機能記述ファイ
ル合成手段で最適記述ファイルが生成された後に、該最
適記述ファイルに基づいて論理回路を合成して、最適構
成の論理合成結果を出力する手段を含んでいてもよい。
【0021】この発明の第3の観点に係る論理合成支援
方法は、機能記述言語を用い所要の機能構成を所定の機
能単位毎に区分し且つ予め複数種の異なる記述方式にて
それぞれ設計記述した複数の機能記述ファイルを入力す
るファイル入力ステップと、前記ファイル入力ステップ
で入力された前記複数の機能記述ファイルに基づいて論
理回路を合成し、前記機能記述ファイル毎にそれぞれ異
なる複数の論理合成結果を得る論理合成ステップと、前
記論理合成ステップで得られる前記複数の論理合成結果
について前記機能単位毎にそれぞれ論理回路の要素特性
をチェックする合成結果チェックステップと、前記合成
結果チェックステップで得られる前記複数の論理合成結
果についての前記機能単位毎のチェック結果を予め設定
した目標要素特性と比較し、該目標要素特性に最も近い
機能記述ファイルを判別する機能記述ファイル判別ステ
ップと、前記機能記述ファイル判別ステップで判別され
た機能記述ファイルを前記機能単位毎に選択して結合
し、最適記述ファイルを生成する機能記述ファイル合成
ステップと、を有する。
【0022】この発明の第4の観点に係る論理合成支援
方法は、機能記述言語を用い所要の機能構成を所定の機
能単位毎に区分し且つ予め複数種の異なる記述方式にて
それぞれ設計記述した複数の機能記述ファイルを入力す
るファイル入力ステップと、前記ファイル入力ステップ
で入力された前記複数の機能記述ファイルに基づいて論
理回路を合成し、前記機能記述ファイル毎にそれぞれ異
なる複数の論理合成結果を得る論理合成ステップと、前
記論理合成ステップで得られる前記複数の論理合成結果
について前記機能単位毎にそれぞれ論理回路の面積およ
び遅延時間をチェックする合成結果チェックステップ
と、前記合成結果チェックステップで得られる前記複数
の論理合成結果についての前記機能単位毎のチェック結
果を予め設定した目標面積および遅延時間と比較し、該
目標面積および遅延時間に最も近い機能記述ファイルを
判別する機能記述ファイル判別ステップと、前記機能記
述ファイル判別ステップで判別された機能記述ファイル
を前記機能単位毎に選択して結合し、最適記述ファイル
を生成する機能記述ファイル合成ステップと、を有す
る。
【0023】前記ファイル入力ステップは、区分した機
能単位の一部についてのみ複数種の異なる記述方式にて
それぞれ設計記述した前記複数の機能記述ファイルを入
力するステップであってもよい。
【0024】前記ファイル入力ステップは、機能記述言
語を用い所要の機能構成全体を所定の機能単位毎に区分
して設計記述したメイン記述ファイルと、前記メイン記
述ファイルと共通の機能記述言語を用い且つ所要の機能
構成の一部の区分された機能単位について他の記述ファ
イルと異なる記述方式にて設計記述した1以上のサブ記
述ファイルとを含む機能記述ファイルを入力するステッ
プであってもよい。
【0025】前記機能記述ファイル合成ステップで生成
された最適記述ファイルに基づいて論理回路を合成し
て、最適構成の論理合成結果を出力する再論理合成ステ
ップをさらに含んでいてもよい。
【0026】この発明の論理合成支援方法およびシステ
ムにおいては、機能記述言語を用い所要の機能構成を所
定の機能単位毎に区分し且つ予め複数種の異なる記述方
式にてそれぞれ設計記述した複数の機能記述ファイルを
入力し、前記複数の機能記述ファイルに基づいて論理回
路を合成し、前記機能記述ファイル毎にそれぞれ異なる
複数の論理合成結果を得て、該複数の論理合成結果につ
いて前記機能単位毎にそれぞれ論理回路の面積および遅
延時間等の要素特性をチェックし、前記複数の論理合成
結果についての前記機能単位毎のチェック結果を予め設
定した目標要素特性と比較して、該目標要素特性に最も
近い機能記述ファイルを判別し、該判別された機能記述
ファイルを前記機能単位毎に選択して結合し、最適記述
ファイルを生成する。
【0027】したがって、1回の処理で、機能単位毎の
機能記述言語の記述の複数のバリエーションについての
要素特性が求められて、目標要素特性に最も近い最適な
組み合わせで機能記述言語ファイルが再構成される。
【0028】
【発明の実施の形態】以下、この発明の実施の形態を図
面を参照して説明する。
【0029】図1〜図4を参照してこの発明による論理
合成支援システムの第1の実施の形態を説明する。
【0030】図1は、この発明の第1の実施の形態に係
る論理合成支援システムの構成を示している。
【0031】図1に示す論理合成支援システムは、ファ
イル格納部1、論理合成部2、面積チェック部3、遅延
チェック部4、チェック結果比較部5、選択HDL判断
部6、HDLセレクト部7および最良HDL出力部8を
具備している。
【0032】ファイル格納部1は、設計しようとする回
路の機能構成をHDLを用いて記述した複数のHDLフ
ァイルを格納する。ファイル格納部1に格納するHDL
ファイルは、基本となる1個のベースHDLファイルB
F、並びに複数のサブHDLファイル、例えば第1およ
び第2のサブHDLファイルSF1およびSF2であ
る。これらHDLファイルは、HDLにより機能単位毎
に区分して記述され、サブHDLファイルSF1および
SF2は、ベースHDLファイルBFに対して異なるH
DL記述方式によるHDL記述、すなわちバリエーショ
ンが記述される。この場合、ベースHDLファイルBF
の他に2個のサブHDLファイルSF1およびSF2を
用意するようにしたが、予め用意するサブHDLファイ
ルは1個でもよく、さらに多数のバリエーションを記述
したサブHDLファイルを用意するようにしてもよい。
【0033】論理合成部2は、ファイル格納部1から各
HDLファイルBF、SF1およびSF2を取り込み、
それぞれHDL記述に従って論理合成を行う機能を有す
る。この場合、HDLファイルBF、SF1およびSF
2等はそれぞれ機能単位毎に区分して記述されているの
で、各ファイルに対する論理合成も各機能単位毎に区分
して行われる。論理合成部2は、論理合成の結果、すな
わち論理ゲートおよびその結合情報、をテンポラリファ
イル(一時ファイル)として保存する。テンポラリファ
イルは、システムの処理中に一時的に保存され、処理終
了後に削除されるファイルであり、例えばファイル格納
部1に格納される。
【0034】面積チェック部3および遅延チェック部4
は、論理合成部2の合成結果からそれぞれ要素特性とし
ての面積および遅延時間を算出する機能を有する。面積
チェック部3は、論理合成部2の合成結果から論理ゲー
ト毎の面積の和をとり、HDLの区分に基づく各機能単
位についてのトータル面積を算出する。遅延チェック部
4は、論理合成部2の合成結果から論理ゲート毎の遅延
時間およびゲート間を結合する信号接続線の配線遅延時
間の和をとり、HDLの区分に基づく各機能単位につい
てのトータル遅延時間を算出する。
【0035】チェック結果比較部5は、論理合成部2に
よる論理合成結果における面積および遅延時間と設計者
の希望要素特性での面積および遅延時間とを比較する機
能を有する。希望要素特性は、例えば面積および遅延時
間等の要素特性の希望値からなり、予め設計者によって
用意され、例えば面積と遅延時間とのバランスがどうな
るべきか等を与える。チェック結果比較部5は、機能単
位毎に論理合成結果における面積および遅延時間等の要
素特性について、実際の論理合成結果と希望値とを比較
する。
【0036】選択HDL判断部6は、チェック結果比較
部5における比較結果に基づいて、機能単位毎に設計者
の希望要素特性に最も適合するような面積と遅延時間と
のチェック結果を判別する。HDLセレクト部7は、選
択HDL判断部6による判別に従い、ファイル格納部1
に格納された各HDLファイルBF、SF1およびSF
2から必要な機能単位部分を選択的に抽出し、結合し
て、新たなHDL記述を生成する機能を有する。
【0037】最良HDL出力部8は、HDLセレクト部
7で生成された新たなHDL記述を例えばテキストファ
イルとして書き出す機能を有する。この最良HDL出力
部8は、新たなHDL記述のエラーチェックも行いエラ
ーがなければこのHDL記述をテキストファイルとして
出力する。エラーがあった場合には、そのエラーおよび
その所在をエラーファイルに出力する。最良HDL出力
部8から出力される新たなHDLファイルは、論理合成
部2に取り込まれ、再度論理合成に供される。
【0038】次に、図1に示したこの発明の第1の実施
の形態による論理合成支援システムの動作について、図
2に示すフローチャートを参照して説明する。
【0039】予めHDLでそれぞれ異なる記述方式によ
る1種類のベースHDLファイルBFとサブHDLファ
イルSF1およびSF2とを、例えばテキストエディタ
等を用いて入力し、ファイル格納部1に格納しておく
(ステップS11、S12およびS13)。これら、ベ
ースHDLファイルBF、サブHDLファイルSF1お
よびSF2をファイル格納部1から転送して論理合成部
2へ入力し、論理合成を行う(ステップS14)。ステ
ップS14により、ベースHDLファイルBF、サブH
DLファイルSF1およびSF2の論理合成結果がそれ
ぞれ得られる(ステップS15、S16およびS1
7)。ステップS15〜S17で得られる合成結果は、
予めHDL記述上で区分しておいた機能単位毎に得るこ
とができる。
【0040】機能単位毎の区分は、例えば図3に示すよ
うに、HDL記述上のコメントを利用して行う。すなわ
ち、「##START」+「スペース」+「機能単位名」なる
記述を含むコメント行と、「##END」+「スペース」+
「機能単位名」なる記述を含むコメント行とを記述する
ことにより、これらのコメント行で挟まれる領域を、
「機能単位名」で示される機能単位の区分領域とする。
【0041】図3の場合は、「##START F/F-CIRCUIT A
A」というコメント行から「##END F/F-CIRCUIT AA」と
いうコメント行までが「F/F-CIRCUIT AA(フリップフロ
ップ回路AA)」という機能単位を記述する区分である
ことを示し、「##START ADDER-CIRCUIT ADD24」という
コメント行から「##END ADDER-CIRCUIT ADD24」という
コメント行までが「ADDER-CIRCUIT ADD24(加算回路A
DD24)」という機能単位を記述する区分であること
を示す。このように、「##START〜」と「##END〜」とい
う始めと終わりのコメントによって機能単位を区分する
ことができる。
【0042】なお、これらステップS15〜S17で得
られる論理合成結果は、例えばファイル格納部1等に一
時的に保存されるテンポラリファイルへと保存される。
テンポラリファイルは、一時的にファイルの物理領域に
格納されるが、処理完了後に削除されるので、実質的に
格納のための物理ファイル領域を必要としない。
【0043】次に、論理合成結果が面積チェック部3お
よび遅延チェック部4に入力されて、各HDLファイル
による論理合成結果の面積と遅延時間を算出する(ステ
ップS18および19)。ステップS18における面積
の算出は、論理合成実行時にも参照されるデータベース
であるライブラリLBに格納されている情報を参照して
行う。すなわち、ライブラリLBには、個々の論理をあ
らわすゲート毎の面積の情報も格納されている。
【0044】ゲートとは、トランジスタ等を接続して論
理機能を構成したものであり、例えば1つの2入力アン
ド(AND:論理積)回路等を意味する。面積は、様々
な単位であらわすことができるが、一般的にはゲート毎
のセル数、トランジスタ数、ピッチ数等であらわされ
る。回路のトータル面積は、論理合成の結果で使用して
いるゲートの種類とその数、およびライブラリLB中に
含まれるゲート毎の面積の情報に基づいて算出する。こ
の発明においては、面積の単位はどのようなものを用い
てもよい。
【0045】ステップS19における遅延時間の算出
は、前述したライブラリLBに記載されているゲート毎
の遅延時間、いわゆるサーキット遅延と、ゲート間を結
ぶ信号接続線の遅延時間、いわゆる配線遅延時間との和
を求めることにより行う。サーキット遅延時間の情報
は、ライブラリLBに含まれており、それを用いるが、
配線遅延時間の情報はライブラリLBから得ることはで
きない。配線遅延時間は、仮想配線長計算によって算出
される。仮想配線長計算は、デバイス等のテクノロジ、
すなわちLSI設計ルール、あるいはLSI開発部門等
によって異なる。
【0046】仮想配線長の計算は、この発明において
は、特に限定しないが、例えば、Lを仮想配線長、αを
テクノロジ固有の係数、Sを面積、そしてPPをピンペ
ア数として L = α × S1/2 × PP であらわすことができる。あるいは、Lを仮想配線長、
α、βをテクノロジ固有の係数、そしてPPをピンペア
数として、 L = α+β × H1/2 × PP (但し、Hは(ネットリスト内の全ゲート面積/ゲート
使用率)1/2×2)であらわすこともできる。この発明
によるシステムでは、このような仮想配線長計算式EQ
を任意に与えることができる。
【0047】上述の仮想配線長に基づいて算出された配
線長遅延時間と、ライブラリLBから与えられるサーキ
ット遅延時間との和をもって、回路のトータル遅延時間
とする。
【0048】このようにして、ベースHDLファイルB
F、サブHDLファイルSF1およびSF2のHDL記
述上で区分された機能単位毎に、面積および遅延時間を
算出して、チェック結果を生成する(ステップS2
0)。
【0049】ステップS20で生成されたチェック結果
は、チェック結果比較部5に与えられて、チェック結果
が比較される(ステップS21)。ステップS21にお
いて、チェック結果比較部5は、チェック結果と、予め
設計者が与えておいた希望要素特性、すなわち希望面積
および希望遅延時間とを比較する。この比較結果に基づ
き、選択HDL判断部6は、チェック結果の中から、希
望面積および希望遅延時間に最も近くなるようなチェッ
ク結果を選び出し、それらの回路を機能単位毎に合成し
て、ベースHDLファイルBF中のHDL記述とサブH
DLファイルSF1およびSF2中のHDL記述との面
積および遅延時間が最良となる組み合わせを予測判断
し、それを最良HDL記述とする(ステップS22)。
【0050】例えば、図2に示すように、設計しようと
する回路がF/F(フリップフロップ)間論理回路、ア
ダー回路、セレクタ回路およびその他論理回路の各機能
の機能単位群で構成されているものとすると、第1サブ
HDLファイルSF1のF/F(フリップフロップ)間
論理と、第2サブHDLファイルSF2のアダー回路
と、第1サブHDLファイルSF1のセレクタ回路と、
ベースHDLファイルBFのその他論理回路との組み合
わせを最良であると予測する。
【0051】HDLセレクト部7は、チェック結果比較
部5および選択HDL判断部6で予測され選択された、
上述のようなベースHDL記述とサブHDL記述の最適
な組み合わせをもとに、実際のベースHDLファイルB
F、サブHDLファイルSF1およびSF2から、機能
単位毎のHDL記述を抽出して、1つのHDLファイル
を新たに生成する(ステップS23)。この場合、図4
に示すように、前述したHDL記述上の機能単位の区分
コメントである「##START〜」および「##END〜」をキー
ワードとして、機能単位毎のHDL記述を抽出する。
【0052】こうして作成された新たなHDLファイル
は、最良HDL出力部8において、文法的なエラー、例
えばソース/ロード信号の浮きが無いか、禁止文字を使
用していないか等をチェックし(ステップS24)、エ
ラーがなければ(ステップS25)、最良HDL記述の
テキストファイルとして出力する(ステップS26)。
エラーがあると判定された場合は(ステップS25)、
そのエラー箇所をエラーファイルへ出力するとともに、
標準出力へも出力し(ステップS27)、予めファイル
格納部1に入力されたHDLファイルの修正を促す。
【0053】設計者は、ステップS26において最良H
DL出力部8から出力された最良HDLテキストファイ
ルを、再度、論理合成部2等に入力して論理合成に供す
るだけで、最適な論理合成結果を得ることができる。
【0054】以上のようにして、HDL記述の人手によ
る修正/人手による統合、および論理合成処理運用の繰
り返し作業の大部分が、自動化により不要となり、作業
量が大幅に削減され、例えばLSI設計のための工程数
を削減することができる。また、論理合成の繰り返しが
少なくなるので、従来繰り返しの都度出力されていた各
種のファイル数が削減され、処理に必要とする物理ファ
イル領域を削減することができ、ファイル管理も容易に
なる。
【0055】なお、図5に示すこの発明の第2の実施の
形態による論理合成支援システムは、ベースHDLファ
イルBFとのHDL記述の相違分(差分)のみで構成し
た第1および第2のサブHDLファイルSF1Aおよび
SF2Aをファイル格納部1Aに格納するようにしたも
のである。これら差分HDLファイルからなるサブHD
LファイルSF1AおよびSF2AとベースHDLファ
イルBFとに基づいて、完全なHDL記述を再現する機
能を、論理合成部2AおよびHDLセレクト部7Aに持
たせるようにすれば、図1の場合と同様の処理を、一層
少ないファイル容量で実現することができる。
【0056】また、サブHDLファイルは、2個に限ら
ず、1個、または3個以上用意するようにしてもよい。
さらに、機能記述言語として、HDL以外の類似の言語
を用いることもできる。
【0057】なお、この発明の論理合成支援システム
は、専用のシステムとして構成することなく、通常のコ
ンピュータシステムを用いて実現することができる。例
えば、コンピュータシステムに上述の動作を実行するた
めのプログラムを格納した媒体(フロッピーディスク、
CD−ROM等)から該プログラムをインストールする
ことにより、上述の処理を実行する論理合成支援システ
ムを構築することができる。インストールによって、当
該プログラムは、コンピュータシステム内のハードディ
スク等の媒体に格納されて、論理合成支援システムを構
成し、実行に供される。
【0058】また、コンピュータにプログラムを供給す
るための媒体は、狭義の記憶媒体に限らず、通信回線、
通信ネットワークおよび通信システムのように、一時的
且つ流動的にプログラム等の情報を保持する通信媒体等
を含む広義の記憶媒体であってもよい。
【0059】例えば、インターネット等の通信ネットワ
ーク上に設けたFTP(File Transfer Protocol)サー
バに当該プログラムを登録し、FTPクライアントにネ
ットワークを介して配信してもよく、通信ネットワーク
の電子掲示板(BBS:Bulletin Board System)等に
該プログラムを登録し、これをネットワークを介して配
信してもよい。そして、このプログラムを起動し、OS
(Operating System)の制御下において実行することに
より、上述の処理を達成することができる。さらに、通
信ネットワークを介してプログラムを転送しながら起動
実行することによっても、上述の処理を達成することが
できる。
【0060】
【発明の効果】以上説明したように、この発明の論理合
成支援方法およびシステムにおいては、機能記述言語を
用い所要の機能構成を所定の機能単位毎に区分し且つ予
め複数種の異なる記述方式にてそれぞれ設計記述した複
数の機能記述ファイルを入力し、前記複数の機能記述フ
ァイルに基づいて論理回路を合成し、前記機能記述ファ
イル毎にそれぞれ異なる複数の論理合成結果を得て、該
複数の論理合成結果について前記機能単位毎にそれぞれ
論理回路の面積および遅延時間等の要素特性をチェック
し、前記複数の論理合成結果についての前記機能単位毎
のチェック結果を予め設定した目標要素特性と比較し
て、該目標要素特性に最も近い機能記述ファイルを判別
し、該判別された機能記述ファイルを前記機能単位毎に
選択して結合し、最適記述ファイルを生成する。
【0061】したがって、1回の処理で、機能単位毎の
機能記述言語の記述の複数のバリエーションについての
要素特性が求められて、目標要素特性に最も近い最適な
組み合わせで機能記述言語ファイルが再構成される。
【0062】すなわち、この発明によれば、機能記述言
語を用いて記述された機能記述ファイルの修正/統合お
よび論理合成処理運用の作業効率を向上して、回路設計
における工程数を削減し得る論理合成支援方法およびシ
ステムを提供することができる。
【図面の簡単な説明】
【図1】この発明の第1の実施の形態に係る論理合成支
援システムの構成を示すブロック図である。
【図2】図1の論理合成支援システムの動作を説明する
ためのフローチャートである。
【図3】図1の論理合成支援システムの動作を説明する
ためのHDLの機能単位の記述例を示す図である。
【図4】図1の論理合成支援システムの動作を説明する
ためのHDLの機能単位の抽出に係る記述例を示す図で
ある。
【図5】この発明の第2の実施の形態に係る論理合成支
援システムの構成を示すブロック図である。
【図6】従来の論理合成システムの一例の構成を示すブ
ロック図である。
【符号の説明】
1,1A…ファイル格納部 2,2A…論理合成部 3…面積チェック部 4…遅延チェック部 5…チェック結果比較部 6…選択HDL判断部 7,7A…HDLセレクト部 8…最良HDL出力部
フロントページの続き (56)参考文献 特開 平8−22483(JP,A) 特開 平5−20379(JP,A) 特開 平10−177588(JP,A) 野地保、外3名,”機能設計を対象と する合成予測の実現”,電子情報通信学 会論文誌D−▲I▼,平成7年7月,第 J78−D−▲I▼巻,第7号,p.588 −596 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】 機能記述言語を用い所要の機能構成を所
    定の機能単位毎に区分し且つ予め複数種の異なる記述方
    式にてそれぞれ設計記述した複数の機能記述ファイルを
    格納するファイル格納手段と、 前記ファイル格納手段に格納された前記複数の機能記述
    ファイルに基づいて論理回路を合成し、前記機能記述フ
    ァイル毎にそれぞれ異なる複数の論理合成結果を得る論
    理合成手段と、 前記論理合成手段により得られる前記複数の論理合成結
    果について前記機能単位毎にそれぞれ論理回路の要素特
    性をチェックする合成結果チェック手段と、 前記合成結果チェック手段により得られる前記複数の論
    理合成結果についての前記機能単位毎のチェック結果を
    予め設定した目標要素特性と比較し、該目標要素特性に
    最も近い機能記述ファイルを判別する機能記述ファイル
    判別手段と、 前記機能記述ファイル判別手段により判別された機能記
    述ファイルを前記機能単位毎に選択して結合し、最適記
    述ファイルを生成する機能記述ファイル合成手段と、を
    具備することを特徴とする論理合成支援システム。
  2. 【請求項2】 機能記述言語を用い所要の機能構成を所
    定の機能単位毎に区分し且つ予め複数種の異なる記述方
    式にてそれぞれ設計記述した複数の機能記述ファイルを
    格納するファイル格納手段と、 前記ファイル格納手段に格納された前記複数の機能記述
    ファイルに基づいて論理回路を合成し、前記機能記述フ
    ァイル毎にそれぞれ異なる複数の論理合成結果を得る論
    理合成手段と、 前記論理合成手段により得られる前記複数の論理合成結
    果について前記機能単位毎にそれぞれ論理回路の面積お
    よび遅延時間をチェックする合成結果チェック手段と、 前記合成結果チェック手段により得られる前記複数の論
    理合成結果についての前記機能単位毎のチェック結果を
    予め設定した目標面積および遅延時間と比較し、該目標
    面積および遅延時間に最も近い機能記述ファイルを判別
    する機能記述ファイル判別手段と、 前記機能記述ファイル判別手段により判別された機能記
    述ファイルを前記機能単位毎に選択して結合し、最適記
    述ファイルを生成する機能記述ファイル合成手段と、を
    具備することを特徴とする論理合成支援システム。
  3. 【請求項3】 前記ファイル格納手段は、区分した機能
    単位の一部についてのみ複数種の異なる記述方式にてそ
    れぞれ設計記述した前記複数の機能記述ファイルを格納
    する手段であることを特徴とする請求項1または2に記
    載の論理合成支援システム。
  4. 【請求項4】 前記ファイル格納手段は、機能記述言語
    を用い所要の機能構成全体を所定の機能単位毎に区分し
    て設計記述したメイン記述ファイルと、前記メイン記述
    ファイルと共通の機能記述言語を用い且つ所要の機能構
    成の一部の区分された機能単位について他の記述ファイ
    ルと異なる記述方式にて設計記述した1以上のサブ記述
    ファイルとを含む機能記述ファイルを格納する手段であ
    ることを特徴とする請求項1乃至3のうちのいずれか1
    項に記載の論理合成支援システム。
  5. 【請求項5】 前記論理合成手段は、前記複数の機能記
    述ファイルに基づいて論理回路を合成して、前記機能記
    述ファイル毎に得られるそれぞれ異なる複数の論理合成
    結果を一時ファイルに格納する手段を含むことを特徴と
    する請求項1乃至4のうちのいずれか1項に記載の論理
    合成支援システム。
  6. 【請求項6】 前記論理合成手段は、前記機能記述ファ
    イル合成手段で最適記述ファイルが生成された後に、該
    最適記述ファイルに基づいて論理回路を合成して、最適
    構成の論理合成結果を出力する手段を含むことを特徴と
    する請求項1乃至5のうちのいずれか1項に記載の論理
    合成支援システム。
  7. 【請求項7】 機能記述言語を用い所要の機能構成を所
    定の機能単位毎に区分し且つ予め複数種の異なる記述方
    式にてそれぞれ設計記述した複数の機能記述ファイルを
    入力するファイル入力ステップと、 前記ファイル入力ステップで入力された前記複数の機能
    記述ファイルに基づいて論理回路を合成し、前記機能記
    述ファイル毎にそれぞれ異なる複数の論理合成結果を得
    る論理合成ステップと、 前記論理合成ステップで得られる前記複数の論理合成結
    果について前記機能単位毎にそれぞれ論理回路の要素特
    性をチェックする合成結果チェックステップと、 前記合成結果チェックステップで得られる前記複数の論
    理合成結果についての前記機能単位毎のチェック結果を
    予め設定した目標要素特性と比較し、該目標要素特性に
    最も近い機能記述ファイルを判別する機能記述ファイル
    判別ステップと、 前記機能記述ファイル判別ステップで判別された機能記
    述ファイルを前記機能単位毎に選択して結合し、最適記
    述ファイルを生成する機能記述ファイル合成ステップ
    と、を有することを特徴とする論理合成支援方法。
  8. 【請求項8】 機能記述言語を用い所要の機能構成を所
    定の機能単位毎に区分し且つ予め複数種の異なる記述方
    式にてそれぞれ設計記述した複数の機能記述ファイルを
    入力するファイル入力ステップと、 前記ファイル入力ステップで入力された前記複数の機能
    記述ファイルに基づいて論理回路を合成し、前記機能記
    述ファイル毎にそれぞれ異なる複数の論理合成結果を得
    る論理合成ステップと、 前記論理合成ステップで得られる前記複数の論理合成結
    果について前記機能単位毎にそれぞれ論理回路の面積お
    よび遅延時間をチェックする合成結果チェックステップ
    と、 前記合成結果チェックステップで得られる前記複数の論
    理合成結果についての前記機能単位毎のチェック結果を
    予め設定した目標面積および遅延時間と比較し、該目標
    面積および遅延時間に最も近い機能記述ファイルを判別
    する機能記述ファイル判別ステップと、 前記機能記述ファイル判別ステップで判別された機能記
    述ファイルを前記機能単位毎に選択して結合し、最適記
    述ファイルを生成する機能記述ファイル合成ステップ
    と、を有することを特徴とする論理合成支援方法。
  9. 【請求項9】 前記ファイル入力ステップは、区分した
    機能単位の一部についてのみ複数種の異なる記述方式に
    てそれぞれ設計記述した前記複数の機能記述ファイルを
    入力するステップであることを特徴とする請求項7また
    は8に記載の論理合成支援方法。
  10. 【請求項10】 前記ファイル入力ステップは、機能記
    述言語を用い所要の機能構成全体を所定の機能単位毎に
    区分して設計記述したメイン記述ファイルと、前記メイ
    ン記述ファイルと共通の機能記述言語を用い且つ所要の
    機能構成の一部の区分された機能単位について他の記述
    ファイルと異なる記述方式にて設計記述した1以上のサ
    ブ記述ファイルとを含む機能記述ファイルを入力するス
    テップであることを特徴とする請求項7乃至9のうちの
    いずれか1項に記載の論理合成支援方法
  11. 【請求項11】 前記機能記述ファイル合成ステップで
    生成された最適記述ファイルに基づいて論理回路を合成
    して、最適構成の論理合成結果を出力する再論理合成ス
    テップをさらに含むことを特徴とする請求項7乃至10
    のうちのいずれか1項に記載の論理合成支援方法。
JP09192505A 1997-07-17 1997-07-17 論理合成支援方法およびシステム Expired - Fee Related JP3101872B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09192505A JP3101872B2 (ja) 1997-07-17 1997-07-17 論理合成支援方法およびシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09192505A JP3101872B2 (ja) 1997-07-17 1997-07-17 論理合成支援方法およびシステム

Publications (2)

Publication Number Publication Date
JPH1139360A JPH1139360A (ja) 1999-02-12
JP3101872B2 true JP3101872B2 (ja) 2000-10-23

Family

ID=16292418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09192505A Expired - Fee Related JP3101872B2 (ja) 1997-07-17 1997-07-17 論理合成支援方法およびシステム

Country Status (1)

Country Link
JP (1) JP3101872B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4541783B2 (ja) * 2004-06-30 2010-09-08 富士通セミコンダクター株式会社 半導体集積回路の設計方法、設計装置及び論理設計プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
野地保、外3名,"機能設計を対象とする合成予測の実現",電子情報通信学会論文誌D−▲I▼,平成7年7月,第J78−D−▲I▼巻,第7号,p.588−596

Also Published As

Publication number Publication date
JPH1139360A (ja) 1999-02-12

Similar Documents

Publication Publication Date Title
US6668364B2 (en) Methods and apparatuses for designing integrated circuits
US7275233B2 (en) Methods and apparatuses for designing integrated circuits
US6026228A (en) Integrated circuit design method, database apparatus for designing integrated circuit and integrated circuit design support apparatus
US6113647A (en) Computer aided design system and method using hierarchical and flat netlist circuit representations
JP2002500435A (ja) タイミング閉鎖方法
US7137084B1 (en) Similarity-driven synthesis for equivalence checking of complex designs
US6834379B2 (en) Timing path detailer
US20090228859A1 (en) Synthesis constraint creating device, behavioral synthesis device, synthesis constraint creating method and recording medium
US6704916B1 (en) Method and apparatus for optimizing placement and routing and recording medium for recording program for optimizing placement and routing
US6886147B2 (en) Method, system, and product for achieving optimal timing in a data path that includes variable delay lines and coupled endpoints
JP3101872B2 (ja) 論理合成支援方法およびシステム
US20060031808A1 (en) System and method for creating timing constraint information
US5533179A (en) Apparatus and method of modifying hardware description language statements
JP4881769B2 (ja) 半導体集積回路設計支援装置、半導体集積回路設計支援方法、半導体集積回路設計支援プログラム
US7398424B2 (en) False path detection program
Fujita et al. Delay estimation and optimization of logic circuits: a survey
US6877140B1 (en) Method and system for generating a schematic representing bus structures
JP2752923B2 (ja) 論理シミュレーション装置および論理回路情報作成方法
JP2980348B2 (ja) 論理回路の合成装置
JP4587754B2 (ja) クロック合成方法、半導体装置及びプログラム
US20220114321A1 (en) Systems And Methods For Generating Placements For Circuit Designs Using Pyramidal Flows
JP2006285860A (ja) シミュレーションモデル生成方法およびその装置
KR20230085866A (ko) 칩의 분할 방법 및 칩의 분할 장치
US20030101198A1 (en) Method and system for generating a configuration database file based on data files of ECAD tools
JP2004013851A (ja) Lsi設計支援システムおよびプログラム

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070825

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080825

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080825

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080825

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees