JPH0620003A - 論理合成方法 - Google Patents
論理合成方法Info
- Publication number
- JPH0620003A JPH0620003A JP4178255A JP17825592A JPH0620003A JP H0620003 A JPH0620003 A JP H0620003A JP 4178255 A JP4178255 A JP 4178255A JP 17825592 A JP17825592 A JP 17825592A JP H0620003 A JPH0620003 A JP H0620003A
- Authority
- JP
- Japan
- Prior art keywords
- technology
- abstract
- logic circuit
- logic
- function
- 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
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【目的】 LSI の回路設計のために書かれた回路の機能
仕様に基づいて効率良くより高品質の論理回路を得る。 【構成】 入力された回路の機能仕様に基づいて論理回
路データを得、これをテクノロジに依存しない抽象的な
機能モジュール、又は論理ゲートへ展開し(ステップS
2) 、抽象レベルで最適化処理を行った後(ステップS3)
、抽象的な機能モジュールの中で入出力幅の違い等の
理由によりテクノロジに依存したライブラリ中に、該機
能モジュールを実現する機能モジュールが存在しないも
のについては機能,入出力幅等の情報を基に新たにテク
ノロジに依存した機能モジュールを生成し(ステップS
5) 、目的とするテクノロジに依存したライブラリ中に
存在する論理ゲート,機能モジュールの割り付けを行う
際に、その生成した機能モジュール等を利用する(ステ
ップS7) 。
仕様に基づいて効率良くより高品質の論理回路を得る。 【構成】 入力された回路の機能仕様に基づいて論理回
路データを得、これをテクノロジに依存しない抽象的な
機能モジュール、又は論理ゲートへ展開し(ステップS
2) 、抽象レベルで最適化処理を行った後(ステップS3)
、抽象的な機能モジュールの中で入出力幅の違い等の
理由によりテクノロジに依存したライブラリ中に、該機
能モジュールを実現する機能モジュールが存在しないも
のについては機能,入出力幅等の情報を基に新たにテク
ノロジに依存した機能モジュールを生成し(ステップS
5) 、目的とするテクノロジに依存したライブラリ中に
存在する論理ゲート,機能モジュールの割り付けを行う
際に、その生成した機能モジュール等を利用する(ステ
ップS7) 。
Description
【0001】
【産業上の利用分野】本発明は、LSI の回路設計のため
にハードウェア記述言語等で書かれた論理回路データか
ら論理回路を自動生成する論理合成方法に関するもので
ある。
にハードウェア記述言語等で書かれた論理回路データか
ら論理回路を自動生成する論理合成方法に関するもので
ある。
【0002】
【従来の技術】近年、LSI 開発においては回路規模の拡
大, 製品寿命の短命化等に対処するため設計効率の向上
を図る上での様々な論理合成システムが開発されてい
る。一般的な論理合成システムはハードウェア記述言語
等で書かれた回路の機能仕様を基にしてテクノロジに依
存した論理ゲート,機能モジュール、即ち設計者が使用
するテクノロジのライブラリにデバイス種別,サイズ別
等に登録されている基本ゲート,特定の機能を持つ回路
で構成された論理回路を自動的に生成するようになって
いる。
大, 製品寿命の短命化等に対処するため設計効率の向上
を図る上での様々な論理合成システムが開発されてい
る。一般的な論理合成システムはハードウェア記述言語
等で書かれた回路の機能仕様を基にしてテクノロジに依
存した論理ゲート,機能モジュール、即ち設計者が使用
するテクノロジのライブラリにデバイス種別,サイズ別
等に登録されている基本ゲート,特定の機能を持つ回路
で構成された論理回路を自動的に生成するようになって
いる。
【0003】図1は、特開平3−34072 号公報に記載さ
れている従来の論理合成の処理過程を示すフローチャー
トである。LSI の回路設計のために作成された論理回路
の機能仕様に基づいて論理回路データを生成し(ステッ
プT1)、この論理回路データに対して以下に示す処理を
行う。
れている従来の論理合成の処理過程を示すフローチャー
トである。LSI の回路設計のために作成された論理回路
の機能仕様に基づいて論理回路データを生成し(ステッ
プT1)、この論理回路データに対して以下に示す処理を
行う。
【0004】先ず論理回路データをテクノロジに依存し
ない機能モジュール、即ち抽象的な機能モジュールに、
また適正な機能モジュールが見出せないものについては
テクノロジに依存しない論理ゲート、即ち抽象的な論理
ゲートへ展開する(ステップT2) 。抽象的な機能モジュ
ールとしては加算器, 比較器, デコーダ等である。次に
この抽象的な論理ゲート又は機能モジュールで構成され
た回路に対してその冗長性を除去し、またより適正な回
路構成への変更を行う処理、即ち最適化処理を行い (ス
テップT3) 、最終的に目的とするテクノロジに依存した
ライブラリ中に存在する論理ゲート、又は機能モジュー
ルへの割り付けを行い (ステップT4) 、論理回路を合成
している。
ない機能モジュール、即ち抽象的な機能モジュールに、
また適正な機能モジュールが見出せないものについては
テクノロジに依存しない論理ゲート、即ち抽象的な論理
ゲートへ展開する(ステップT2) 。抽象的な機能モジュ
ールとしては加算器, 比較器, デコーダ等である。次に
この抽象的な論理ゲート又は機能モジュールで構成され
た回路に対してその冗長性を除去し、またより適正な回
路構成への変更を行う処理、即ち最適化処理を行い (ス
テップT3) 、最終的に目的とするテクノロジに依存した
ライブラリ中に存在する論理ゲート、又は機能モジュー
ルへの割り付けを行い (ステップT4) 、論理回路を合成
している。
【0005】目的とするテクノロジに依存したライブラ
リ中に存在する論理ゲートへの割り付けを行う際に、機
能モジュールがテクノロジに依存したライブラリ中に存
在すればその機能、入出力幅等が完全に一致するように
当該機能モジュールを割り付け、また存在しない場合に
は一度抽象的な論理ゲートへの展開を行い、それらの抽
象的な論理ゲートに対してその機能,入出力幅等が完全
に一致するようにテクノロジに依存した論理ゲートの割
り付けを行い(ステップT4) 、論理回路を得る( ステッ
プT5) 。
リ中に存在する論理ゲートへの割り付けを行う際に、機
能モジュールがテクノロジに依存したライブラリ中に存
在すればその機能、入出力幅等が完全に一致するように
当該機能モジュールを割り付け、また存在しない場合に
は一度抽象的な論理ゲートへの展開を行い、それらの抽
象的な論理ゲートに対してその機能,入出力幅等が完全
に一致するようにテクノロジに依存した論理ゲートの割
り付けを行い(ステップT4) 、論理回路を得る( ステッ
プT5) 。
【0006】
【発明が解決しようとする課題】一般的にテクノロジに
依存したライブラリ中に存在する機能モジュールには、
入出力幅がある程度特殊なもの、例えば4ビット幅、8
ビット幅のように限定されて用意されている場合があ
り、またテクノロジによっては用意されていないものも
ある。このような場合は上述したような従来の論理合成
処理方法では抽象的な機能モジュールをテクノロジに依
存したライブラリ中に存在する機能モジュールを割り付
ける際に、例えば入出力のビット幅が合わないため、該
当する機能モジュールがライブラリ中に存在せず、結局
抽象的な機能モジュールに対してはこれを抽象的な論理
ゲートに一旦展開した後、テクノロジに依存したライブ
ラリ中に存在する論理ゲートの割り付けを行うこととな
る。
依存したライブラリ中に存在する機能モジュールには、
入出力幅がある程度特殊なもの、例えば4ビット幅、8
ビット幅のように限定されて用意されている場合があ
り、またテクノロジによっては用意されていないものも
ある。このような場合は上述したような従来の論理合成
処理方法では抽象的な機能モジュールをテクノロジに依
存したライブラリ中に存在する機能モジュールを割り付
ける際に、例えば入出力のビット幅が合わないため、該
当する機能モジュールがライブラリ中に存在せず、結局
抽象的な機能モジュールに対してはこれを抽象的な論理
ゲートに一旦展開した後、テクノロジに依存したライブ
ラリ中に存在する論理ゲートの割り付けを行うこととな
る。
【0007】換言すれば、機能モジュールを割り付けた
ほうが効果的であるべき部分が論理ゲートへ展開される
ことで処理効率が悪化し、結局十分最適化しきれていな
い論理回路を生成してしまう場合があるという問題があ
った。
ほうが効果的であるべき部分が論理ゲートへ展開される
ことで処理効率が悪化し、結局十分最適化しきれていな
い論理回路を生成してしまう場合があるという問題があ
った。
【0008】本発明は、このような従来の問題点を解決
するためになされたものであって、その目的とするとこ
ろは、LSI の回路設計のために作成された論理回路の機
能仕様に対し、機能モジュールを柔軟に割り付けること
ができ、効率良く高品質な論理回路を自動合成すること
が可能な論理合成方法を提供するにある。
するためになされたものであって、その目的とするとこ
ろは、LSI の回路設計のために作成された論理回路の機
能仕様に対し、機能モジュールを柔軟に割り付けること
ができ、効率良く高品質な論理回路を自動合成すること
が可能な論理合成方法を提供するにある。
【0009】
【課題を解決するための手段】本発明に係る論理回路合
成方法は、回路設計のために作成した論理回路データに
基づきテクノロジに依存した論理ゲート又は機能モジュ
ールを割り付けて論理回路を自動合成する方法におい
て、論理回路データをテクノロジに依存しない抽象的な
論理ゲート又は機能モジュールへ展開する過程と、得ら
れた抽象的な論理ゲート及び機能モジュールに対して最
適化処理を施す過程と、抽象的な機能モジュールへ展開
されたもののうち、テクノロジのライブラリ中に目的と
する該当機能モジュールが存在しない機能モジュールに
ついて、テクノロジに依存した機能モジュールを生成す
る過程と、生成したテクノロジに依存した機能モジュー
ルを前記ライブラリに登録する過程と、抽象的な論理ゲ
ート及び機能モジュールに対して目的とするテクノロジ
に依存した論理ゲート、又は機能モジュールを割り付け
る過程とを含むことを特徴とする。
成方法は、回路設計のために作成した論理回路データに
基づきテクノロジに依存した論理ゲート又は機能モジュ
ールを割り付けて論理回路を自動合成する方法におい
て、論理回路データをテクノロジに依存しない抽象的な
論理ゲート又は機能モジュールへ展開する過程と、得ら
れた抽象的な論理ゲート及び機能モジュールに対して最
適化処理を施す過程と、抽象的な機能モジュールへ展開
されたもののうち、テクノロジのライブラリ中に目的と
する該当機能モジュールが存在しない機能モジュールに
ついて、テクノロジに依存した機能モジュールを生成す
る過程と、生成したテクノロジに依存した機能モジュー
ルを前記ライブラリに登録する過程と、抽象的な論理ゲ
ート及び機能モジュールに対して目的とするテクノロジ
に依存した論理ゲート、又は機能モジュールを割り付け
る過程とを含むことを特徴とする。
【0010】
【作用】本発明にあっては、回路設計のために作成され
た論理回路の機能仕様に対して、加算機能, 比較機能等
の部分はテクノロジに依存しない抽象的な機能モジュー
ルに展開し、適正な機能モジュールの見出せない部分に
ついては抽象的な論理ゲートへ展開した後、これらの抽
象的な論理ゲート, 機能モジュールで構成された回路に
対して最適化処理を行い、次に抽象的な機能モジュール
の中で、入出力幅の違い等のためテクノロジに依存した
ライブラリ中に当該機能モジュールを実現する機能モジ
ュールが存在しないものについては、機能、入出力幅等
の情報を基にテクノロジに依存した機能モジュールを生
成し、ライブラリに登録しておき、その後テクノロジに
依存したライブラリ中に存在する論理ゲート、生成した
機能モジュールの割り付けを行う。
た論理回路の機能仕様に対して、加算機能, 比較機能等
の部分はテクノロジに依存しない抽象的な機能モジュー
ルに展開し、適正な機能モジュールの見出せない部分に
ついては抽象的な論理ゲートへ展開した後、これらの抽
象的な論理ゲート, 機能モジュールで構成された回路に
対して最適化処理を行い、次に抽象的な機能モジュール
の中で、入出力幅の違い等のためテクノロジに依存した
ライブラリ中に当該機能モジュールを実現する機能モジ
ュールが存在しないものについては、機能、入出力幅等
の情報を基にテクノロジに依存した機能モジュールを生
成し、ライブラリに登録しておき、その後テクノロジに
依存したライブラリ中に存在する論理ゲート、生成した
機能モジュールの割り付けを行う。
【0011】
【実施例】以下、本発明をその実施例を示す図面に基づ
き具体的に説明する。
き具体的に説明する。
【0012】(実施例1)図2は本発明方法を実施する
ための論理合成システムの構成を示すブロック図であ
る。図中1は論理回路の自動合成処理を行う論理回路合
成処理部、2は抽象的な機能モジュールの情報を基にテ
クノロジに依存した機能モジュールを生成する機能モジ
ュール生成部、3は入力情報を記憶する論理回路データ
記憶部、4は論理回路を生成するための各種変換規則を
格納している論理回路変換規則群記憶部を示している。
論理回路データ記憶部3には論理回路データ入力部5か
らハードウェア記述言語等で記述された論理回路の機能
仕様が入力され、論理回路データ出力部6を通じて出力
する外、論理回路剛性処理部1へ与える。7はテクノロ
ジに依存したライブラリである。
ための論理合成システムの構成を示すブロック図であ
る。図中1は論理回路の自動合成処理を行う論理回路合
成処理部、2は抽象的な機能モジュールの情報を基にテ
クノロジに依存した機能モジュールを生成する機能モジ
ュール生成部、3は入力情報を記憶する論理回路データ
記憶部、4は論理回路を生成するための各種変換規則を
格納している論理回路変換規則群記憶部を示している。
論理回路データ記憶部3には論理回路データ入力部5か
らハードウェア記述言語等で記述された論理回路の機能
仕様が入力され、論理回路データ出力部6を通じて出力
する外、論理回路剛性処理部1へ与える。7はテクノロ
ジに依存したライブラリである。
【0013】次に、上記実施例の動作を、図4に示す論
理回路の機能仕様を対象とした場合について、図3に示
すフローチャートに従って説明する。先ず設計しようと
している論理回路について図4に示す如き機能仕様(ス
テップS1) を作成し、これに基づいて論理回路データを
得、この論理回路データを論理回路データ入力部5を通
じて入力し、論理回路データ記憶部3に記憶させる。論
理回路データ記憶部3に記憶されている論理回路データ
は論理回路合成処理部1に与えられ以下の処理が施され
る。
理回路の機能仕様を対象とした場合について、図3に示
すフローチャートに従って説明する。先ず設計しようと
している論理回路について図4に示す如き機能仕様(ス
テップS1) を作成し、これに基づいて論理回路データを
得、この論理回路データを論理回路データ入力部5を通
じて入力し、論理回路データ記憶部3に記憶させる。論
理回路データ記憶部3に記憶されている論理回路データ
は論理回路合成処理部1に与えられ以下の処理が施され
る。
【0014】図4に示す機能仕様において、1,2行目
は回路の入力端子についての宣言を、3行目は回路の出
力端子ついての宣言を示し、それ以降には回路の機能に
ついての宣言が示されている。この論理回路の機能は入
力[sel 1]と入力[sel 2]との比較結果によって出
力[out ]に入力aと入力bとの加算結果、又は減算結
果を与えるものである。なお図中input [15:0]の如
き表示は、input 、即ち入力端の仕様が15から0までの
幅を持った変数であることを意味している。
は回路の入力端子についての宣言を、3行目は回路の出
力端子ついての宣言を示し、それ以降には回路の機能に
ついての宣言が示されている。この論理回路の機能は入
力[sel 1]と入力[sel 2]との比較結果によって出
力[out ]に入力aと入力bとの加算結果、又は減算結
果を与えるものである。なお図中input [15:0]の如
き表示は、input 、即ち入力端の仕様が15から0までの
幅を持った変数であることを意味している。
【0015】図4に示す如き機能仕様は論理回路変換規
則群記憶部4の規則に従って、図5に示すような比較器
8、加算器9、減算器10、マルチプレクサ11の如き抽象
的な機能モジュールに展開され (ステップS2) 、冗長性
を除去し、またより適正な回路に変更する処理、即ち最
適化処理が行われる (ステップS3) 。これらの機能モジ
ュールはテクノロジに依存しないためビット幅は任意で
構わない。
則群記憶部4の規則に従って、図5に示すような比較器
8、加算器9、減算器10、マルチプレクサ11の如き抽象
的な機能モジュールに展開され (ステップS2) 、冗長性
を除去し、またより適正な回路に変更する処理、即ち最
適化処理が行われる (ステップS3) 。これらの機能モジ
ュールはテクノロジに依存しないためビット幅は任意で
構わない。
【0016】前記論理回路変換規則群記憶部4の変換規
則群は抽象的な論理ゲートからテクノロジに依存した論
理ゲートに変換するためのルール、例えば8入力AND ゲ
ートを4入力AND ゲート2個と2入力AND ゲート1個に
変換する際のルールである。
則群は抽象的な論理ゲートからテクノロジに依存した論
理ゲートに変換するためのルール、例えば8入力AND ゲ
ートを4入力AND ゲート2個と2入力AND ゲート1個に
変換する際のルールである。
【0017】次に抽象的な機能モジュールを論理回路変
換規則群記憶部4中の変換規則に従って変換すること
で、当該機能モジュールがテクノロジに依存したライブ
ラリ中に存在するかどうかを探索する(ステップS4) 。
展開された抽象的な機能モジュールに対応する機能モジ
ュールがライブラリ中に存在する場合にはステップS7に
進む。
換規則群記憶部4中の変換規則に従って変換すること
で、当該機能モジュールがテクノロジに依存したライブ
ラリ中に存在するかどうかを探索する(ステップS4) 。
展開された抽象的な機能モジュールに対応する機能モジ
ュールがライブラリ中に存在する場合にはステップS7に
進む。
【0018】存在しない場合には機能モジュール生成部
5に機能,入出力のビット幅等の情報を与え、テクノロ
ジに依存した機能モジュールを生成し(ステップS5) 、
論理ゲート/機能モジュール割り付け処理時に、生成し
た機能モジュールが使用できるように目的とするテクノ
ロジのライブラリに登録した後 (ステップS6) 、ステッ
プS5における機能モジュールを生成する手段としては、
機能,入出力のビット幅等の情報を入力とし、最適なレ
イアウトを生成する機能モジュール生成器 (データ・パ
ス・ジェネレータという) を使用する。
5に機能,入出力のビット幅等の情報を与え、テクノロ
ジに依存した機能モジュールを生成し(ステップS5) 、
論理ゲート/機能モジュール割り付け処理時に、生成し
た機能モジュールが使用できるように目的とするテクノ
ロジのライブラリに登録した後 (ステップS6) 、ステッ
プS5における機能モジュールを生成する手段としては、
機能,入出力のビット幅等の情報を入力とし、最適なレ
イアウトを生成する機能モジュール生成器 (データ・パ
ス・ジェネレータという) を使用する。
【0019】機能モジュール生成器では加減算器などの
生成も可能であるため、最適化処理し (ステップS3) 、
その結果が同時には起こり得ない、換言すれば共有化可
能なことが明らかな演算等については情報を機能モジュ
ール生成器にまとめて送ることで、より高品質の機能モ
ジュールを生成することができる。
生成も可能であるため、最適化処理し (ステップS3) 、
その結果が同時には起こり得ない、換言すれば共有化可
能なことが明らかな演算等については情報を機能モジュ
ール生成器にまとめて送ることで、より高品質の機能モ
ジュールを生成することができる。
【0020】例えば図5に示す抽象的な論理回路データ
に関してみると、8ビット幅の抽象的な比較器8、並び
に最適化処理(ステップS3) の結果、同時には起こり得
ないことが判明した各々抽象的な16ビット幅の加算器9
と16ビット幅の減算器10と17ビット幅のマルチプレクサ
11とをまとめたもの2つについて、テクノロジに依存し
た機能モジュールを生成し(ステップS5) 、ライブラリ
に登録する (ステップS6) こととなる。なお機能モジュ
ール生成器は別々の機能モジュールを一つの機能モジュ
ールとして生成することも可能である。例えば図5に示
す抽象的な論理回路データに関しては、比較器と加減算
器とを一つのモジュールとして生成することもできる。
に関してみると、8ビット幅の抽象的な比較器8、並び
に最適化処理(ステップS3) の結果、同時には起こり得
ないことが判明した各々抽象的な16ビット幅の加算器9
と16ビット幅の減算器10と17ビット幅のマルチプレクサ
11とをまとめたもの2つについて、テクノロジに依存し
た機能モジュールを生成し(ステップS5) 、ライブラリ
に登録する (ステップS6) こととなる。なお機能モジュ
ール生成器は別々の機能モジュールを一つの機能モジュ
ールとして生成することも可能である。例えば図5に示
す抽象的な論理回路データに関しては、比較器と加減算
器とを一つのモジュールとして生成することもできる。
【0021】最後に、目的とするテクノロジに依存した
論理ゲート、機能モジュールへの割り付けを行う(ステ
ップS7) 。この場合は生成したテクノロジに依存した機
能モジュール、8ビット幅の比較器12,16ビット幅の加
減算器とを使用して最終的に、例えば図6に示す如き比
較器12と加減算器13とから構成される論理回路を得る。
論理ゲート、機能モジュールへの割り付けを行う(ステ
ップS7) 。この場合は生成したテクノロジに依存した機
能モジュール、8ビット幅の比較器12,16ビット幅の加
減算器とを使用して最終的に、例えば図6に示す如き比
較器12と加減算器13とから構成される論理回路を得る。
【0022】(実施例2)実施例1では、機能モジュー
ル生成器を利用してテクノロジに依存した機能モジュー
ルを生成したが、既存の機能モジュールや論理ゲートを
組み合わせて新たに機能モジュールを生成してもよい。
実施例2はこの場合を示している。図7は他の回路の機
能仕様を示す説明図である。図7において1行目は入力
多子の、また2行目は出力端子の仕様を定めており、3
行目は機能を定めている。これから明らかな如く、この
論理回路の機能は入力a、入力bの加算結果を出力[ou
t ]に与えるものである。
ル生成器を利用してテクノロジに依存した機能モジュー
ルを生成したが、既存の機能モジュールや論理ゲートを
組み合わせて新たに機能モジュールを生成してもよい。
実施例2はこの場合を示している。図7は他の回路の機
能仕様を示す説明図である。図7において1行目は入力
多子の、また2行目は出力端子の仕様を定めており、3
行目は機能を定めている。これから明らかな如く、この
論理回路の機能は入力a、入力bの加算結果を出力[ou
t ]に与えるものである。
【0023】図7に示す如き機能仕様から論理回路を合
成する過程を図3に示すフローチャートと共に説明す
る。このような機能仕様は図4に示す機能仕様と同様に
抽象的な機能モジュールに展開され(ステップS2) 、最
適化処理が行われる (ステップS3) 。次に抽象的な機能
モジュールに対応する機能モジュールが、テクノロジに
依存したライブラリ中に存在するか否かを論理回路変換
規則群記憶部4の変換規則を用いて探索する(ステップ
S4) 。
成する過程を図3に示すフローチャートと共に説明す
る。このような機能仕様は図4に示す機能仕様と同様に
抽象的な機能モジュールに展開され(ステップS2) 、最
適化処理が行われる (ステップS3) 。次に抽象的な機能
モジュールに対応する機能モジュールが、テクノロジに
依存したライブラリ中に存在するか否かを論理回路変換
規則群記憶部4の変換規則を用いて探索する(ステップ
S4) 。
【0024】展開された抽象的な機能モジュール全てに
対して対応する機能モジュールが存在する場合には、ス
テップS7に進む。存在しない場合には、機能モジュール
生成部5に機能、入出力のビット幅等の情報を与え、テ
クノロジに依存した機能モジュールを生成し(ステップ
S5) 、論理ゲート,機能モジュール割り付け処理時に、
ここで生成した機能モジュールが使用できるよう目的と
するテクノロジのライブラリに登録する (ステップS6)
。この過程は実施例1と実質的に同じである。
対して対応する機能モジュールが存在する場合には、ス
テップS7に進む。存在しない場合には、機能モジュール
生成部5に機能、入出力のビット幅等の情報を与え、テ
クノロジに依存した機能モジュールを生成し(ステップ
S5) 、論理ゲート,機能モジュール割り付け処理時に、
ここで生成した機能モジュールが使用できるよう目的と
するテクノロジのライブラリに登録する (ステップS6)
。この過程は実施例1と実質的に同じである。
【0025】そして実施例2では、ステップS5でのテク
ノロジ依存の機能モジュール生成時に、既存の機能モジ
ュール,論理ゲートを利用して新たな機能モジュールを
生成する。図7に示す如き機能仕様が、例えば9ビット
幅の抽象的な加算器に展開されたものとして、この抽象
的な加算器に対応するテクノロジに依存した機能モジュ
ールを生成する際には、図8に示す如くテクノロジに依
存したライブラリ中に存在する4ビット幅の加算器14と
1ビット幅の2個の加算器15とを使用して新たな9ビッ
ト幅の加算器16を生成する。
ノロジ依存の機能モジュール生成時に、既存の機能モジ
ュール,論理ゲートを利用して新たな機能モジュールを
生成する。図7に示す如き機能仕様が、例えば9ビット
幅の抽象的な加算器に展開されたものとして、この抽象
的な加算器に対応するテクノロジに依存した機能モジュ
ールを生成する際には、図8に示す如くテクノロジに依
存したライブラリ中に存在する4ビット幅の加算器14と
1ビット幅の2個の加算器15とを使用して新たな9ビッ
ト幅の加算器16を生成する。
【0026】最後に、目的とするテクノロジに依存した
論理ゲートや機能モジュールへの割り付けを行い (ステ
ップS7) 、図8のような論理回路を得る。こうして抽象
的な機能モジュールに対してレイアウトを生成すること
なくテクノロジに依存した機能モジュールを生成するこ
とができ、効率良く論理回路を得ることが可能となる。
論理ゲートや機能モジュールへの割り付けを行い (ステ
ップS7) 、図8のような論理回路を得る。こうして抽象
的な機能モジュールに対してレイアウトを生成すること
なくテクノロジに依存した機能モジュールを生成するこ
とができ、効率良く論理回路を得ることが可能となる。
【0027】
【発明の効果】以上のように本発明によれば論理回路合
成において、任意のビット幅の抽象的な機能モジュール
に対して、ライブラリ中に対応するテクノロジに依存し
た機能モジュールが存在しなくとも、これを生成し、目
的とするテクノロジの論理ゲートや機能モジュール割り
付け時に使用することが出来ることとなり、従来のよう
に抽象的な機能モジュールに対応するテクノロジに依存
した機能モジュールがない場合に、抽象的な論理ゲート
に展開し直してからテクノロジ依存の論理ゲートへの割
り付けを行う場合と比較して、柔軟に最適化された機能
モジュールを使用でき、効率良く、より高品質の論理回
路を合成することができる。
成において、任意のビット幅の抽象的な機能モジュール
に対して、ライブラリ中に対応するテクノロジに依存し
た機能モジュールが存在しなくとも、これを生成し、目
的とするテクノロジの論理ゲートや機能モジュール割り
付け時に使用することが出来ることとなり、従来のよう
に抽象的な機能モジュールに対応するテクノロジに依存
した機能モジュールがない場合に、抽象的な論理ゲート
に展開し直してからテクノロジ依存の論理ゲートへの割
り付けを行う場合と比較して、柔軟に最適化された機能
モジュールを使用でき、効率良く、より高品質の論理回
路を合成することができる。
【図1】従来の論理合成処理方法の処理過程を示すフロ
ーチャートである。
ーチャートである。
【図2】本発明の実施例に係る論理合成方法を実施する
ための装置の構成を示すブロック図である。
ための装置の構成を示すブロック図である。
【図3】本発明に係る論理合成処理方法の処理過程を示
すフローチャートである。
すフローチャートである。
【図4】本発明の実施例における入力となる論理回路の
機能仕様を示す説明図である。
機能仕様を示す説明図である。
【図5】本発明の実施例における抽象的な機能モジュー
ルに展開された論理回路情報の説明図である。
ルに展開された論理回路情報の説明図である。
【図6】本発明の実施例におけるテクノロジに依存した
機能モジュールで構成された論理回路情報の説明図であ
る。
機能モジュールで構成された論理回路情報の説明図であ
る。
【図7】本発明の他の実施例における入力となる論理回
路の機能仕様の説明図である。
路の機能仕様の説明図である。
【図8】本発明の他の実施例におけるテクノロジに依存
した機能モジュールで構成された論理回路の説明図であ
る。
した機能モジュールで構成された論理回路の説明図であ
る。
1 論理回路合成部 2 機能モジュール生成部 3 論理回路データ記憶部 4 論理回路変換規則群記憶部 5 論理回路データ入力部 6 論理回路データ出力部 7 テクノロジに依存したライブラリ 8 抽象的な機能モジュールである比較器 9 抽象的な機能モジュールである加算器 10 抽象的な機能モジュールである減算器 11 抽象的な機能モジュールであるマルチプレクサ 12 テクノロジに依存した機能モジュールである比較器 13 テクノロジに依存した機能モジュールである加減算
器 14 テクノロジに依存した4ビット機能モジュールであ
る加算器 15 テクノロジに依存した1ビット機能モジュールであ
る加算器 16 テクノロジに依存した9ビット機能モジュールであ
る加算器
器 14 テクノロジに依存した4ビット機能モジュールであ
る加算器 15 テクノロジに依存した1ビット機能モジュールであ
る加算器 16 テクノロジに依存した9ビット機能モジュールであ
る加算器
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成4年11月4日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図5
【補正方法】変更
【補正内容】
【図5】
Claims (1)
- 【請求項1】 回路設計のために作成した論理回路デー
タに基づきテクノロジに依存した論理ゲート又は機能モ
ジュールを割り付けて論理回路を自動合成する方法にお
いて、論理回路データをテクノロジに依存しない抽象的
な論理ゲート又は機能モジュールへ展開する過程と、得
られた抽象的な論理ゲート及び機能モジュールに対して
最適化処理を施す過程と、抽象的な機能モジュールへ展
開されたもののうち、テクノロジのライブラリ中に目的
とする該当機能モジュールが存在しない機能モジュール
について、テクノロジに依存した機能モジュールを生成
する過程と、生成したテクノロジに依存した機能モジュ
ールを前記ライブラリに登録する過程と、抽象的な論理
ゲート及び機能モジュールに対して目的とするテクノロ
ジに依存した論理ゲート、又は機能モジュールを割り付
ける過程とを含むことを特徴とする論理合成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4178255A JPH0620003A (ja) | 1992-07-06 | 1992-07-06 | 論理合成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4178255A JPH0620003A (ja) | 1992-07-06 | 1992-07-06 | 論理合成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0620003A true JPH0620003A (ja) | 1994-01-28 |
Family
ID=16045300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4178255A Pending JPH0620003A (ja) | 1992-07-06 | 1992-07-06 | 論理合成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0620003A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6237133B1 (en) | 1997-03-14 | 2001-05-22 | Nec Corporation | Mask pattern data creation method and system that are not subject to data stream data format limitations |
-
1992
- 1992-07-06 JP JP4178255A patent/JPH0620003A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6237133B1 (en) | 1997-03-14 | 2001-05-22 | Nec Corporation | Mask pattern data creation method and system that are not subject to data stream data format limitations |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR19980065431A (ko) | 모듈로(Modulo)주소발생기 및 그 방법 | |
JP5157534B2 (ja) | 動作合成装置、および、プログラム | |
JP2840169B2 (ja) | 論理回路の自動設計方法およびその装置 | |
JPH0620003A (ja) | 論理合成方法 | |
JP2953431B2 (ja) | 高位合成装置及びその記録媒体 | |
JPH01220528A (ja) | パリテイ発生器 | |
US5452230A (en) | Logic circuit synthesizer | |
JP2874031B2 (ja) | 組み合わせ回路の再設計方式 | |
JP2001245180A (ja) | 画像フィルタ回路及び画像フィルタリング方法 | |
JP2835082B2 (ja) | 論理回路合成装置 | |
JP2714015B2 (ja) | 論理回路合成装置 | |
CN113255257B (zh) | 基于工艺库的s盒电路的优化方法及系统 | |
JPH08153129A (ja) | 再利用容易化装置 | |
JP3112662B2 (ja) | 乗算器 | |
JPH1115865A (ja) | 論理回路の合成装置、論理回路の合成方法及び論理回路の合成プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2925160B2 (ja) | 論理合成方式 | |
JP3071882B2 (ja) | 論理回路合成装置 | |
JP3664954B2 (ja) | 遅延ライブラリ作成システムおよび記録媒体 | |
JPH0637592A (ja) | ディジタルフィルタ設計法 | |
JP2557853B2 (ja) | 論理回路素子割り付け方法 | |
JP2005107575A (ja) | 大規模集積回路の設計方法 | |
JP2897539B2 (ja) | ハードウェア記述自動生成方法とその装置 | |
JP2004512577A (ja) | シーケンシャル・エレメントの統括的推論のための方法およびシステム | |
CN113408223A (zh) | 一种基于智能分析的芯片设计方法 | |
JP3113594B2 (ja) | 論理設計最適化装置及び方法 |