JPH0567172A - 論理合成システム - Google Patents

論理合成システム

Info

Publication number
JPH0567172A
JPH0567172A JP3226013A JP22601391A JPH0567172A JP H0567172 A JPH0567172 A JP H0567172A JP 3226013 A JP3226013 A JP 3226013A JP 22601391 A JP22601391 A JP 22601391A JP H0567172 A JPH0567172 A JP H0567172A
Authority
JP
Japan
Prior art keywords
rule
circuit
file
rules
expansion
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
Application number
JP3226013A
Other languages
English (en)
Inventor
Masami Yamazaki
正実 山崎
Shoichi Okawa
正一 大川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3226013A priority Critical patent/JPH0567172A/ja
Publication of JPH0567172A publication Critical patent/JPH0567172A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 本発明は論理回路を自動的に合成する論理合
成システムに関し、設計者の意図を十分に考慮した回路
を自動合成することかできる論理合成システムを提供す
ることを目的としている。 【構成】 回路データが機能ブロックとして格納されて
いる回路データファイル10と、回路合成の条件を設定
する条件設定部11と、各種の回路合成ルールをルール
番号と共に格納するルールファイル12と、使用目的毎
にルールの評価順序が優先順位毎に前記ルール番号で格
納されているルール評価順序ファイル13と、前記条件
設定部11の条件を受けて、ルール評価順序ファイル1
3のルール番号を優先順位毎に呼び出し、該当するルー
ルをルールファイル12から呼び出して出力する制御部
14と、該制御部14及び条件設定部11から与えられ
た条件及びルールに従って、前記回路データファイル1
0の内容を展開する展開部15とにより構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は論理回路を自動的に合成
する論理合成システムに関し、更に詳しくは指定された
テクノロジーを用いてそのテクノロジーが所有するセル
(回路素子)へ変換する論理合成システムに関する。
【0002】
【従来の技術】従来の機能ブロック(回路機能を一般的
な表現方法で表現したもの)の合成方式としては、ルー
ルベース方式を用いている。ここで、ルールベース方式
とはアルゴリズム方式とは異なり、機能ブロックを使用
目的毎にルール化し、そのルールに従って論理回路を合
成するようにしたものである。
【0003】図10はルールベース方式の概念図であ
る。図において、1は回路データが一般的な機能ブロッ
クとして格納されている機能ブロック部である。2はル
ールベースが格納されているルールベースファイルであ
る。該ルールベースファイル2は、図に示すように、回
路の特定の機能毎に(例えばカウンタやシフトレジスタ
等)回路の生成ルールを格納している。
【0004】3はオペレータからの外部設定条件を受け
て、機能ブロック部1の機能ブロックをルールベースフ
ァイル2に格納されているルールに従って展開合成し
て、その合成結果を出力する制御部である。このように
構成されたシステムの動作を説明すれば、以下のとおり
である。
【0005】先ず、機能ブロック3は外部設定条件に従
って、機能ブロック部1に格納されている機能ブロック
(回路データ)をルールベースファイル2に格納されて
いるルールに従って具体的な回路に展開合成する。例え
ば、機能ブロック部1の回路データがカウンタであった
場合には、制御部3はルールベースファイル2内のカウ
ンタルール1を読出してきて、このルールに従ってカウ
ンタを展開する。若し、それで駄目な場合には次のカウ
ンタルール2を読出してきて、このルールに従ってカウ
ンタを展開する。展開結果は、制御部3から外部に出力
される。
【0006】
【発明が解決しようとする課題】前述した従来方式で
は、回路設計者の意図に拘らず、システムが特定の展開
アルゴリズムを用いて合成を行うようになっている。ま
た、回路の合成条件についても、外部設定により合成す
る回路全体についての条件の設定は可能であるが、回路
内部の個々の機能ブロックに対する条件設定を行うこと
はできなかった。このため、無駄な回路やゲート数を多
く含んだ回路や、設計者の意図とはかけ離れた回路を生
成してしまうという問題があった。
【0007】本発明はこのような課題に鑑みてなされた
ものであって、設計者の意図を十分に考慮した回路を自
動合成することかできる論理合成システムを提供するこ
とを目的としている。
【0008】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図である。図において、10は回路データが機能ブ
ロックとして格納されている回路データファイル、11
は回路合成の条件を設定する条件設定部、12は各種の
回路合成ルールをルール番号と共に格納するルールファ
イル、13は使用目的毎にルールの評価順序が優先順位
毎に前記ルール番号で格納されているルール評価順序フ
ァイル、14は前記条件設定部11の条件を受けて、ル
ール評価順序ファイル13のルール番号を優先順位毎に
呼び出し、該当するルールをルールファイル12から呼
び出して出力する制御部、15は該制御部14及び条件
設定部11から与えられた条件及びルールに従って、前
記回路データファイル10の内容を展開する展開部であ
る。
【0009】
【作用】ルール評価順序ファイル13内に格納されてい
るルール評価順序を使用目的に応じて制御部14が読出
し、その評価順序毎にルールファイル12内の同一ルー
ル番号のルールを読出して展開部15に渡す。つまり、
図2に示すようにカウンタ評価順序ファイル13内に、
使用目的(回路規模最小化,遅延最小化)毎に、回路展
開ルール番号が優先順位毎に並んでいるものとする。回
路規模最小化の場合には、ルール番号の優先順位は1,
2,3,4であるものとし、遅延最小化の場合にはルー
ル番号の優先順位は2,4,1,3であるものとする。
【0010】ここで、条件設定部11よりゲート数最小
化が条件として入力されると、制御部14は先ず、ルー
ル番号1を選び、ルール番号1のルールをルールファイ
ル12から読出し、展開部15に渡す。ここで、このル
ール番号でうまくいかない場合には、次のルール番号2
を選択する。以下、ルール番号3,4と選択していく。
若し、条件設定部11から与えられる条件が遅延最小化
である場合には、ルール番号は2,4,1,3と選択さ
れることになる。
【0011】このようにして、本発明によれば回路設計
者の意図に応じたルールに従って回路合成(展開)を自
動的に行うことができる。
【0012】
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。図3は制御部14の動作を示すフローチャ
ートである。回路図としては、図1を用いる。先ず、初
期化を行い(S1)、次に展開戦略の解析を行う(S
2)。ここで、展開戦略の解析とは条件設定部11から
回路に対する条件(回路戦略)を読み込み設定すること
をいう。
【0013】次に、機能ブロックの展開戦略の解析を行
う(S3)。機能ブロックの展開戦略の解析とは、その
機能ブロックに対する条件を条件設定部11より読み込
み、展開戦略を決定するものである。本発明では、機能
ブロック毎の独立の処理とするため、回路と機能ブロッ
クの両方の条件を一度に考慮することができるようにな
っている。その後、展開条件に合致したルールの評価順
序を条件設定部11からの外部入力により決定する。図
に示すルール評価順序表は、ルール評価順序ファイル1
3の具体的構成を示している。
【0014】例えば、カウンタ(CNT)を展開する場
合において、標準仕様と遅延最小化とゲート最小化のそ
れぞれに応じて、ルール番号が図に示すように異なって
いる。このように、本発明によれば、ルール評価順序を
ルール評価順序ファイル13に外部ファイル化しておく
ことにより、ファイル内の順序の変更のみで、評価順序
を変更することができる。
【0015】次に、評価ルールの検討を行う(S4)。
評価ルールの検討とは、使用ルールを決定することをい
う。機能ブロックに対する条件では、展開戦略の他に使
用ルール及び使用ルールグループの指定を可能にしてい
る。例えばカウンタ(CNT)という機能ブロックに対
して、以下のような展開ルールが存在するものとする。
【0016】CNTルール{1 2 3 4 5 6} これらのルールをある条件に従ってグループ化してお
く。
【0017】CNTルールグループ A{1 2} B{3 4} C{5 6} 本発明では、このグループ化されたルール群A,B,C
を使用することを指定することを使用ルールグループ指
定という。
【0018】グループ化の条件は、例えば A: CNTを用いた展開ルール B: DFF(Dタイプフリップフロップ)を用いた展
開ルール C: JKFF(JKフリップフロップ)を用いた展開
ルール これらのルール指定条件と、先に決定したルール評価順
序に従って実際に評価実行するルールを決定する。
【0019】次に、評価ルールがあるかどうかチェック
し(S5)、ある場合にはルール条件の評価を行う(S
6)。ルールの評価方法には、SINGLEとMULT
Iの2種類の評価方法を設ける。次に、ルール条件の評
価がOKの場合には知識ソース(ルールファイル12の
内容)を用いて展開を実行する(S7)。展開が終了し
たら、評価を行い、評価が終了したら(S8)、終了化
処理を行い(S9)、処理を終了する。
【0020】ここで、SINGLEでは、決定されたル
ールの評価順序に沿って実行し、MULTIでは使用決
定されたルール全てを実行し、それぞれの展開結果を独
立に管理する環境を用意する。全てのルールの評価実行
が終了したら、その展開結果に対してコストの計算を行
い、回路条件に最も適した結果を選択して出力する。
【0021】前記したMULTI方式を導入することに
より、回路条件に合致した回路の生成を行うことが可能
である。このMULTI方式は、処理時間,メモリ等の
面で不利な面もあるが、その効果は大きいと予測され
る。この場合のコストの計算式は、以下のとおりであ
る。
【0022】 コスト=DELAY×a+SPACE×b (1) ここで、DELAY: 遅延時間 SPACE: 回路規模 a : 遅延係数 b : 回路規模係数 遅延係数a及び回路規模係数bは、テクノロジー(CM
OSかECLか等の区別),対象回路により異なる。
【0023】ルールベース方式で用いる知識ソースは、
機能ブロック毎に独立に構成し、ルール及びルールで呼
び出す展開部15は、それぞれ異なるファイルに記述す
ることで、新規の展開パターンの追加及びシステムの更
新を容易に行うことができるようになっている。
【0024】図4は知識ソースの構成例を示す図であ
る。CNT−KS,SFTR−KS等は機能ブロックで
ある。これら機能ブロックには、IF〜THENで表現
されるルールが所定の数だけ格納されている。
【0025】次に、展開部15の動作について説明す
る。図5は展開部15の動作を示すフローチャートであ
る。図6はデータ構成を示す図である。図6において、
はMULTIモードによる展開を実行するための制御
テーブル、は機能ブロックの展開に用いたセルや機能
ブロックを示している。ネットはブロックとブロックを
つなぐものである。展開制御テーブルが複数あるのは、
目的によって展開制御の方法が複数あることを示してい
る。図では、最初の展開制御テーブルをネットリストに
展開した結果、モジュール(セル)とモジュール(機能
ブロック)に展開されたことを示している。セルモジュ
ールには端子がついている。機能ブロックモジュールに
は展開制御テーブルが付属しており、このテーブルを用
いて更に展開することができるようになっている。
【0026】図5において、先ず指定されたテクノロジ
ーから使用可能なセルの選択を行う(S1)。ここで、
セルは回路データファイル10から読出してくる。この
場合において、機能ブロックに対する使用セルの強制指
定を可能としている。このため、この指定がなされてい
る場合は、優先的に指定されたセルを用いる。実際に
は、ルールの評価の段階でセルの指定を考慮してルール
の評価を行うのが一般的である。
【0027】セルの選択が終了したら、展開部15はデ
ータ変換を行う(S2)。ここでいうデータ変換とは、
展開部15でデータ展開ができる形にデータ構造を変換
することをいう。データ変換が終了したら、制御部14
から与えられたルールに従って展開を実行する(S
3)。展開が終了したら、その評価を行う(S4)。次
に、まだ機能ブロックがあるかどうかチェックし(S
5)、まだある場合には当該機能ブロックに対する展開
を実行する(S6)。機能ブロックがない場合には、デ
ータ構造を元に戻して正規の形へのデータ変換を行う
(S7)。
【0028】図5に示すフロー内の展開処理では、テク
ノロジー毎に提供されるセルの他に、本発明の対象とな
る機能ブロックを用いて展開を行うことができる。図7
は本発明による展開処理の説明図である。(1)は8ビ
ットのカウンタを展開して、4ビットのカウンタセルと
4ビットのカウンタ機能ブロックに分解した状態を示し
ている。
【0029】この場合、展開に使用した機能ブロックに
対し、図5のフローチャートで示したように展開の実行
を行う。これにより、例えば図7の(2)に示すよう
に、8ビットのカウンタの展開において、同一の4ビッ
トカウンタセルを2個用いて展開を行おうとすると、C
I付きのセルを使用しなければならなくなるが、この場
合、前段のカウンタセルのCI機能は不要であり無駄な
ゲート数が増えてしまう。
【0030】そこで、CI機能なしのカウンタセルを先
ず選択して前段の4ビット分を展開し、残りの4ビット
分をカウンタの機能ブロックを用いて展開し、生成した
機能ブロックに対し展開を実行することで、このような
無駄なゲート数を省くことができるようになる。2種類
のセルを同時に用いて処理する方法もあるが、その方法
では処理が複雑になってしまい、適当でない。
【0031】図8はDタイプフリップフロップに対する
展開の説明図である。(1)に示すようなブロックの繰
り返し数が4、端子のビット数が1のような機能ブロッ
クに対して、(2)に示すような4ビットのDタイプフ
リップフロップセルを使用した展開を行う場合、本発明
では一度ブロックの繰り返し数を端子のビット数に変換
してから(変換可能な場合のみ:ck,cl等の制御端
子が共通な場合)、セルへの展開を実行する。このよう
な方法をとることにより、(3),(4)に示すような
無駄なゲート数を含む回路の生成を防ぐことが可能にな
る。
【0032】図9は本発明の実施例の動作説明図であ
る。(1)に示すような5ビットのシフトレジスタ(S
FTR)の展開を行う場合、ルールグループの指定を
“Dタイプフリップフロップを用いた展開ルール”とし
た場合には、(2)のような回路に展開される。この展
開は、ある段の出力を次の段の入力にする接続を行って
いる。
【0033】この段階では、Dタイプフリップフロップ
はまだ機能ブロックであるので、更に(3)に示すよう
にDタイプフリップフロップセルを用いた回路に展開さ
れる。図では、4ビットのDFFセルと1ビットのDF
Fセルに展開されている。
【0034】ここで、ルールの指定を行わない場合、通
常のルール順番ではSFTRの機能ブロックはSFTR
セルを用いた展開が行われるのが一般的である。この場
合には、(4)に示すように4ビットのSFRRセルと
1ビットのDFFセルを用いて展開される。
【0035】この時、5ビットのSFTRセルを2個用
いて展開を実行すると、無駄なゲートを持つ回路が生成
されてしまう(一般的に1ビット,2ビットのようなS
FTRセルが存在しないため)。本発明では、この部分
を1ビットのDFFを用いて展開することが可能なため
に、無駄なゲート数を削除することができる。
【0036】加算器(ADD)の場合等は、遅延最小の
展開戦略で合成する場合は、FAST−CARRY回路
を持つ回路形式のルールを選択し、回路規模最小の展開
戦略で合成する場合は、1ビットのハーフアダセルと1
ビットのフルアダセルのカスケード接続による回路形式
を実現するルールを選択して展開を行う。RAM,RO
M等の機能を持つブロックをコンパインルド・セルを用
いて展開する場合にも使用セルの強制指定機能を用いる
ことにより実現可能である。
【0037】
【発明の効果】以上、詳細に説明したように、本発明に
よれば以下のような効果が得られる。 ルールベース方式を用い、また各機能ブロック毎に
知識ソースを構成することで、システムへの機能の追
加,削除等の更新を容易に行うことができる。 ルールの評価順序を任意に設定することを可能にし
たことにより、設計のニーズに合ったルールの評価順序
を設定することが可能になる。 により遅延最小,回路規模最小等の回路設計条件
に容易に対応することができる。 設計回路のみでなく、内部の各機能ブロックに対し
て設計条件(展開戦略,ルール指定,使用セル指定)を
設定できるようにすることにより、設計者が合成結果を
予測しやすい自動合成を可能とした。 またと同様、遅延最小,回路規模最小等の設計者
の意図に柔軟に対応できるようになった。 DFF等の繰返し数を端子のビット数に変換するこ
と及び展開に機能ブロックを使用することを可能とした
ことにより、冗長なゲート数の削除が行え、システム内
の冗長な処理及び複雑な処理を省くことができる。
【0038】このように、本発明によれば設計者の意図
を十分に考慮した回路を自動合成することかできる論理
合成システムを提供することができる。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】本発明の作用説明図である。
【図3】制御部の動作を示すフローチャートである。
【図4】知識ソースの構成例を示す図である。
【図5】展開部の動作を示すフローチャートである。
【図6】データ構成を示す図である。
【図7】本発明による展開処理の説明図である。
【図8】Dタイプフリップフロップに対する展開の説明
図である。
【図9】本発明の実施例の動作説明図である。
【図10】ルールベース方式の概念図である。
【符号の説明】
10 回路データファイル 11 条件設定部 12 ルールファイル 13 ルール評価順序ファイル 14 制御部 15 展開部

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 回路データが機能ブロックとして格納さ
    れている回路データファイル(10)と、 回路合成の条件を設定する条件設定部(11)と、 各種の回路合成ルールをルール番号と共に格納するルー
    ルファイル(12)と、使用目的毎にルールの評価順序
    が優先順位毎に前記ルール番号で格納されているルール
    評価順序ファイル(13)と、 前記条件設定部(11)の条件を受けて、ルール評価順
    序ファイル(13)のルール番号を優先順位毎に呼び出
    し、該当するルールをルールファイル(12)から呼び
    出して出力する制御部(14)と、 該制御部(14)及び条件設定部(11)から与えられ
    た条件及びルールに従って、前記回路データファイル
    (10)の内容を展開する展開部(15)とにより構成
    される論理合成システム。
  2. 【請求項2】 ルールベース内で評価するルールの評価
    順序を、条件設定部(11)から外部入力することによ
    り、外部から制御可能としたことを特徴とする請求項1
    記載の論理合成システム。
  3. 【請求項3】 回路データファイル(10)内の1個の
    機能ブロックに対し、ルール評価順序ファイル(13)
    内に複数の展開パターンを評価順序として格納してお
    き、条件設定部(11)からの外部入力により回路の生
    成条件に合う展開パターンを制御部(14)で選択し、
    展開部(15)で展開するようにしたことを特徴とする
    請求項1記載の論理合成システム。
  4. 【請求項4】 条件設定部(11)からの外部入力によ
    り展開条件,展開制御情報の入力を行い、またその対象
    を合成する回路のみでなく、内部の各機能ブロックに対
    しても設定することを可能とすることにより、回路全体
    は回路規模最小方向で合成し、その一部は遅延時間最小
    方向で合成するようにしたことを特徴とする請求項1記
    載の論理合成システム。
JP3226013A 1991-09-05 1991-09-05 論理合成システム Withdrawn JPH0567172A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3226013A JPH0567172A (ja) 1991-09-05 1991-09-05 論理合成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3226013A JPH0567172A (ja) 1991-09-05 1991-09-05 論理合成システム

Publications (1)

Publication Number Publication Date
JPH0567172A true JPH0567172A (ja) 1993-03-19

Family

ID=16838425

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3226013A Withdrawn JPH0567172A (ja) 1991-09-05 1991-09-05 論理合成システム

Country Status (1)

Country Link
JP (1) JPH0567172A (ja)

Similar Documents

Publication Publication Date Title
US5349659A (en) Hierarchical ordering of logical elements in the canonical mapping of net lists
US5150308A (en) Parameter and rule creation and modification mechanism for use by a procedure for synthesis of logic circuit designs
US5287289A (en) Logic synthesis method
US5493504A (en) System and method for processing logic function and fault diagnosis using binary tree representation
US6324680B1 (en) Synthesis of arrays and records
JPH05291891A (ja) 一次乱数パルス列発生回路装置
JPH0567172A (ja) 論理合成システム
JP2002269162A (ja) 動作合成方法
US6430726B1 (en) Logic circuit synthesizing method and logic synthesizing system
JP3702475B2 (ja) 回路自動生成装置
JP2012093893A (ja) リコンフィグ可能なlsi
Barkalov et al. Mixed encoding of collections of microoperations for a microprogram finite-state machine
EP0592076B1 (en) Compilation mechanism for a simulation model
US5140672A (en) Diagram generator having reference table which included reproducing and name assigning units for expanding circuit from lower to higher level
KR100280411B1 (ko) 메인레지스터파일포인터
JP3293640B2 (ja) 回路データ接続追跡システム
JPH10320451A (ja) ゲートアレイ用ネットデータ作成方法
JPH05233430A (ja) メモリアドレス制御方法及び回路
JP2557853B2 (ja) 論理回路素子割り付け方法
JPH027171A (ja) 論理回路合成方式
JPH0451367A (ja) 論理回路の合成装置
JPH09251483A (ja) セルライブラリ作成方法
JP3696302B2 (ja) テストベクトル生成方法及び生成装置
JPH03296171A (ja) 論理回路のゲート数削減方法
JPH0546440A (ja) ハードウエアトレーサ回路

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19981203