JPH117458A - 論理合成方法 - Google Patents

論理合成方法

Info

Publication number
JPH117458A
JPH117458A JP9158399A JP15839997A JPH117458A JP H117458 A JPH117458 A JP H117458A JP 9158399 A JP9158399 A JP 9158399A JP 15839997 A JP15839997 A JP 15839997A JP H117458 A JPH117458 A JP H117458A
Authority
JP
Japan
Prior art keywords
signal
input signal
logical
expression
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.)
Withdrawn
Application number
JP9158399A
Other languages
English (en)
Inventor
Osamu Chiba
修 千葉
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP9158399A priority Critical patent/JPH117458A/ja
Publication of JPH117458A publication Critical patent/JPH117458A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 与えられた入出力信号に対する論理合成を自
動的に行ない、ハードウェア記述言語を出力する論理合
成方法に関する。 【解決手段】 設計者が入出力信号の定義を行なう(S
1)。ハードウェアを設計する際に順序回路が必要とな
るか否かを判断する(S2)。順序回路が必要な場合に
は、入力信号の遅延信号の生成を行なう(S3)。出力
信号を出力する論理式を算出する(S4)。算出された
論理式で用いられる入力信号の遅延信号を適宜カウンタ
を用いて構成する(S5)。論理式を最適化し、ハード
ウェア記述言語に変換して出力する(S6)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、論理合成方法に関
し、特に、与えられた入出力信号に対する論理合成を自
動的に行ない、ハードウェア記述言語を出力する論理合
成方法に関する。
【0002】
【従来の技術】従来、ハードウェアブロックの内部回路
の機能または論理を実現するための論理合成を行なうに
は、設計者が論理式や論理シンボルを用いた論理接続
図、またはハードウェア記述言語(以下、「HDL」と
いう。)を習得した上で、設計対象となるハードウェア
ブロックの機能表現を直接作成することにより行なって
いた。
【0003】
【発明が解決しようとする課題】しかし、従来の論理合
成は、HDLや論理接続図などを用いた機能表現に精通
しなければ、期待するハードウェアブロックの論理を合
成できないという問題点がある。また、機能表現に不慣
れな設計者が作成したハードウェアブロックの論理(特
に制御系論理)には、設計者の意図しない冗長な論理が
含まれるという問題点がある。それとともに、制御系論
理では、状態遷移図(ステートマシン)、流れ図(フロ
ーチャート)および真理値表だけを用いて動作仕様を明
確にすることは困難である。このため、補完的に動作タ
イミング情報(タイミングチャート)を用いることが必
要であるという問題点がある。
【0004】本発明は、これらのような問題点を解決す
るためになされたもので、請求項1〜2に記載の発明の
目的は、ハードウェアブロックの機能表現に不慣れな設
計者でも、容易にハードウェアブロックの機能表現を得
ることができる、論理合成方法を提供することである。
【0005】請求項3に記載の発明の目的は、請求項1
〜2のいずれかに記載の発明の目的に加えて、論理式が
最適化されたハードウェアブロックの機能表現を得るこ
とができる、論理合成方法を提供することである。
【0006】請求項4〜5に記載の発明の目的は、請求
項3に記載の発明の目的に加えて、回路規模の小さいハ
ードウェアブロックの機能表現を得ることができる、論
理合成方法を提供することである。
【0007】
【課題を解決するための手段】請求項1に記載の発明に
係る論理合成方法は、入力信号および出力信号を編集す
るステップと、その入力信号および出力信号を受け、入
力信号から出力信号を出力するための論理式を算出する
論理算出ステップと、その論理式をハードウェア記述言
語に変換し出力するステップとを含む。
【0008】請求項1に記載の発明によると、設計者が
編集した入力信号および出力信号より、出力信号を出力
する論理式をハードウェア記述言語に変換して出力す
る。よって、ハードウェアブロックの機能表現に不慣れ
な設計者でも、容易にハードウェアブロックの機能表現
を得ることができる。
【0009】請求項2に記載の発明に係る論理合成方法
は、請求項1に記載の発明の構成に加えて、上記論理算
出ステップは、論理式が組合せ論理のみで表現可能か否
かを判断する表現可能判断ステップと、組合せ論理のみ
で表現可能でない場合に、入力信号の単位遅延信号を発
生するステップと、入力信号と入力信号の単位遅延信号
と出力信号との間の相関関係を求めるステップと、その
相関関係より入力信号および入力信号の単位遅延信号の
うち2つの信号を選択し、論理式を算出するステップと
を含む。
【0010】請求項3に記載の発明に係る論理合成方法
は、請求項1〜2のいずれかに記載の発明の構成に加え
て、論理式を最適化する最適化ステップをさらに含む。
【0011】請求項3に記載の発明によると、請求項1
〜2のいずれかに記載の発明の作用、効果に加えて、論
理式が最適化されたハードウェアブロックの機能表現を
得ることができる。
【0012】請求項4に記載の発明に係る論理合成方法
は、請求項3に記載の発明の構成に加えて、上記最適化
ステップは、論理式を構成する信号のうち、所定値以上
の遅延段数を有する入力信号の単位遅延信号がある場合
に、その入力信号の単位遅延信号をカウンタを用いて実
現するステップを含む。
【0013】請求項4に記載の発明によると、請求項3
に記載の発明の作用、効果に加えて、所定値以上の遅延
段数を有する入力信号の単位遅延信号をカウンタを用い
て実現するため、多段の記憶素子を用いて実現する場合
に比べて回路規模の小さいハードウェアブロックの機能
表現を得ることができる。
【0014】請求項5に記載の発明に係る論理合成方法
は、請求項4に記載の発明の構成に加えて、上記最適化
ステップは、論理式にブール代数の定理を適用して、論
理圧縮を行なうステップをさらに含む請求項5に記載の
発明によると、請求項4に記載の発明の作用、効果に加
えて、論理式にブール代数の定理を適用して論理の圧縮
を行なうため、回路規模の小さいハードウェアブロック
の機能表現を得ることができる。
【0015】
【発明の実施の形態】以下、図面を参照しつつ、本発明
における実施の形態の1つである論理合成方法を用いた
論理合成装置について説明する。
【0016】図1を参照して、論理合成装置20は、設
計者が入力信号の波形および出力信号の波形を入力およ
び編集するための波形入力・編集部2と、波形入力・編
集部2に接続され、入力信号の波形および出力信号の波
形を受け、それらの信号をシステムクロックの動作周期
単位でそれぞれ表現した入力ベクタおよび出力ベクタに
変換し後述するファイル6に書込むための、および、フ
ァイル6内の入力ベクタおよび出力ベクタを入力信号の
波形および出力信号の波形にそれぞれ変換し編集のため
に波形入力・編集部2に出力するためのデータ保存部4
と、データ保存部4より出力される入力ベクタおよび出
力ベクタを記憶するためのファイル6と、論理式を算出
する際の制約条件を記憶するためのファイル8と、ファ
イル6の出力およびファイル8の出力を受け、入力信号
から出力信号を出力するための論理式を算出するための
論理演算処理部10と、論理演算処理部10の出力を受
け、論理式を最適化するための論理圧縮部12と、論理
圧縮部12の出力を受け、最適化された論理式をHDL
に変換するためのHDL変換部14と、HDL変換部1
4の出力を受け、HDLの内容を記憶するためのファイ
ル18と、論理演算処理部10、論理圧縮部12および
HDL変換部14の各々に接続され、エラーが起こった
場合の処理を行なうためのエラー処理部16とを含む。
【0017】図2〜図8を参照して、1相同期エッジト
リガ方式回路におけるHDLを生成する論理合成方法に
ついて説明を行なう。
【0018】図2を参照して、波形入力・編集部2にお
いて、設計者が外部仕様(入力信号の波形および出力信
号の波形)の定義を行なう。定義された外部仕様はファ
イル6に入力ベクタおよび出力ベクタとして記憶される
(S1)。論理演算処理部10において、設計者が定義
した外部仕様がファイル8に記憶されている制約条件を
満たすか否か、すなわちハードウェアブロックを設計す
る際に順序回路が必要となるか否かを判断する(S
2)。順序回路が必要な場合には、入力信号の遅延信号
の生成を論理演算処理部10において行なう(S3)。
入力信号、入力信号の遅延信号および出力信号を用い
て、出力信号を出力する論理式を、論理演算処理部10
において算出する(S4)。算出された論理式が、入力
信号の遅延信号を用いており、かつ遅延段数が所定の値
以上の場合には、論理圧縮部12において、入力信号の
遅延信号を発生する回路の機能記述をカウンタを用いて
行なう(S5)。S5までで得られた論理式と回路の機
能記述とをもとに、最も回路規模が小さくなるような論
理式を算出し、論理合成可能なHDLを作成し、ファイ
ル18に記憶する。本装置とは別の論理合成ツール30
が、ファイル18に記憶されたHDLを利用して、回路
設計図を作成する。
【0019】図3を参照して、S1の処理を詳しく説明
する。このステップでは生成対象となる出力信号の動作
条件および設計スタイルを波形入力・編集部2が起動す
る波形エディタ上で定義する。この波形エディタでは、
利用者が定義した情報に誤りがあれば、エラー処理部1
6が誤り箇所について修正を促す。
【0020】まず、記憶素子の実現方法とクロックの相
数を決定するための設計スタイルを定義する。記憶素子
としてフリップフロップを用いるエッジトリガ設計方
式、または記憶素子としてラッチを用いるレベルセンシ
ティブ設計方式のうちいずれか1つを選択する。エッジ
トリガ設計方式の場合には、クロックの立上がり同期動
作またはクロックの立下がり同期動作のいずれか1つを
さらに選択する。これにより基本動作クロック(システ
ムクロック)clkがエディタ上に表示される。ここで
のクロックの相数は1相としている。
【0021】次に、設計対象のハードウェアブロックの
出力信号の動作期待値EXP1をクロック毎に作成す
る。次に、ハードウェアブロックの全入力信号x1およ
びx2をクロック毎に作成する。
【0022】作成されたシステムクロックclk、出力
信号の動作期待値EXP1ならびに全入力信号x1およ
びx2は、データ保存部4で入力ベクタおよび出力ベク
タに変換された後、ファイル6に記憶される。
【0023】図4〜図5を参照して、S2の処理を詳し
く説明する。このステップでは、全入力信号から順序回
路(フリップフロップまたはラッチ)を介することなく
出力信号の動作期待値EXP1を満たすハードウェアブ
ロックの機能表現が可能か否かを判断する。このため
に、基本動作クロック(システムクロック)clkの周
期単位での解析を行なう。
【0024】図4を参照して、出力信号の動作期待値E
XP1が変化する時刻を検出する。この例では、時刻t
2、t4、t7およびt9である。それらの時刻のそれ
ぞれについて、入力信号x1およびx2のうち少なくと
も1つの値が変化しているか否かを判断する。この例で
は、t2およびt7において入力信号x1の値が変化し
ており、t4およびt9において入力信号x2の値が変
化している。このように、EXP1が変化する全ての時
刻において入力信号x1およびx2のうち少なくとも1
つの値が変化していれば、全入力信号から順序回路を介
することなく出力信号の動作期待値EXP1を満たすハ
ードウェアブロックの機能表現が可能であると判断す
る。
【0025】しかし、図5のように、t9でEXP1が
変化しているにもかかわらず、入力信号x1およびx2
のいずれの値も変化していない場合には、その出力信号
の動作期待値を満たすための論理は、順序回路を用いな
ければ表現が不可能である。x1およびx2を用いた全
ての論理式の結果40より、t9においては、結果40
の値は変化していないことがわかる。このため、t9よ
り前の時刻のいずれかの入力信号の値を用いて論理を構
成する必要、すなわちイベントの伝播を行なう必要があ
ることを示している。
【0026】図6を参照して、S3の処理を詳しく説明
する。S2でハードウェアブロックの機能表現をする際
に順序回路が必要ないと判断された場合には、この処理
は省略する。
【0027】まず、入力信号x1およびx2の単位遅延
信号x1*(Z-1)およびx2*(Z-1)をそれぞれ生
成する。S2と同じ手法で、入力信号x1およびx2、
ならびに入力信号の単位遅延信号x1*(Z-1)および
x2*(Z-1)から順序回路を介することなく出力信号
の動作期待値EXP1を満たすハードウェアブロックの
機能表現が可能か否かを判断する。可能であれば処理を
終了する。可能でなければ、順次遅延時刻iを増加さ
せ、入力信号の単位遅延信号x1*(Z-i)およびx2
*(Z-i)を生成する。これを、S2の判断結果が機能
表現可能となるまで行なう。この例では、x1*
(Z-1)およびx2*(Z-1)を発生させた段階でS2
の判断結果が機能表現可能となるため、さらなる入力信
号の単位遅延信号の生成は行なわない。
【0028】図7を参照して、S4の処理を詳しく説明
する。このステップでは入力信号および入力信号の単位
遅延信号を用いて、タイミングチャート上で定義された
期待値信号を全周期において満たす論理式を算出する。
【0029】まず、出力信号の動作期待値EXP1の変
化点と入力信号または単位遅延信号の変化点との重なり
の数を求める(表1参照)。
【0030】EXP1と相関が最も大きい信号(変化点
の重複数が最も大きい信号)を選び、上と同様に、その
信号とその他の入力信号または単位遅延信号の変化点と
の重なりの数を求める(表2参照)。
【0031】
【表1】
【0032】
【表2】
【0033】表1より選択されたEXP1と相関が最も
大きい信号をxとし、xと最も相関が大きい信号をyと
する。また、それぞれの信号の任意の時刻tにおける値
をx t およびyt とする。論理演算の関数をFとする
と、時刻tにおける出力信号の動作期待値EXP1
t は、入力信号xt およびyt を用いて式(1)のよう
に表わせる。
【0034】 EXP1t =F(xt ,yt ) …(1) 表1及び表2から得られる信号の相関関係を用いると、
式(2)および式(3)が導かれる。
【0035】 EXP1t =F(x2t *(Z-1),x1t *(Z-1)) …(2) EXP1t =F(x2t *(Z-1),x2t ) …(3) ここで、関数Fは時刻tに依存しない論理演算、すなわ
ち順序回路を用いない組合せ回路の論理演算である。式
(1)に示した2項演算の場合、論理積(AND演算
子)、否定論理積(NAND演算子)、論理和(OR演
算子)、否定論理和(NOR演算子)、排他的論理和
(XOR演算子)およびその否定(NXOR演算子)の
6種類に対し、各項xt およびyt について各々正転お
よび反転した場合の3種類(双方の項が反転する場合に
は、双方の項が正転の場合の積和演算結果の否定である
ため除外できる)を組み合わせた数、すなわち18種類
の演算が必要になる。また、2項演算子ではなく、単項
演算子F=x、F=!x、F=yおよびF=!yのいず
れかで関数Fが表現される場合も考慮すると、合計22
種類の演算が必要になる。
【0036】式(2)および式(3)に示した演算式に
対して、それぞれ上記した22種類の演算をシミュレー
トする。その演算結果の波形とEXP1の波形とが同一
であれば(図7の波形50参照)、その演算式が求める
論理式である。EXP1と同一の波形が得られない場合
には、表2より、次に変化点の重複数の大きいx1を選
択し、3項子演算の式(5)を作成し、2項演算の場合
と同様に、全ての演算式に対して、その演算結果の波形
とEXP1の波形とが同一であるか否かを調べる。
【0037】 EXP1t =G(x2t *(Z-1),x1t ,x1) …(4) さらに、式(4)を用いても、EXP1の波形と同一の
波形を得ることができない場合には、表1より次の候補
x2を選択し、x2と相関の高い信号を表2と同様に求
め、上記と同様の処理を行なう。最終的に満足する結果
が得られなければ、入力信号条件の仕様不備であるとし
て、エラー処理部16が警告メッセージを発し、処理を
終了する。
【0038】S4までの処理により、設計者が入力また
は編集した入力信号および出力信号より、入力信号から
出力信号を出力するための論理式を自動的に得ることが
できる。よって、ハードウェアブロックの機能表現に不
慣れな設計者でも、容易にハードウェアブロック構成を
表現する論理式を得ることができる。
【0039】次に、S5の処理を詳しく説明する。この
処理では、S4で求められた論理式の入力が、入力信号
の遅延信号x*(Z-y)で構成されており、かつその遅
延段数yが所定値以上の場合には、遅延信号を発生する
回路をフリップフロップを用いて構成せずに、カウンタ
を用いて構成するハードウェアブロックの機能表現を作
成する。
【0040】遅延段数yが3以上の場合には、単純にフ
リップフロップなどの記憶素子を直列接続し機能表現す
るよりもカウンタ回路を構成し、条件変化に必要となる
システムクロック数をカウントした上で動作させる方
が、より小規模な論理回路構成とすることができる。カ
ウンタ回路を構成する際に必要となるカウンタ段数は、
式(5)を満たすnの最小値(自然数)で表現できる。
【0041】 y<2n …(5) カウンタ回路は、システムクロックでインクリメント動
作またはデクリメント動作を行なうカウンタ段数nを持
つ回路として実現できることになるが、カウンタ値の初
期リセット動作が可能か否かを判定する処理をさらに行
なう必要がある。初期リセット動作が可能か否かは、設
計制約条件として、クロック、入力信号群、および出力
信号の他に、ハードウェアリセット信号として定義すべ
きリセット信号の有無に対応する。すなわち、ハードウ
ェアリセット信号が予め与えられていない場合には、初
期リセット動作が不可能であると判定をする。また、ハ
ードウェアリセット信号は、フリップフロップ等の順序
回路素子の初期値を決定するために用いる。
【0042】初期リセット動作が不可能な場合には、出
力レポート(図示せず)に警告メッセージを出力した上
で記憶素子の直列接続を用いた表現で生成対象となる出
力信号の動作を実現するものとする。
【0043】一方、遅延段数yが2以下の単位遅延信号
群とハードウェアリセット信号との組合せで出力信号の
論理表現が可能な場合には、ここでは何の処理も行なわ
ない。
【0044】S5の処理により、所定値以上の遅延段数
を有する入力信号の単位遅延信号をカウンタを用いて実
現する。このため、多段の記憶素子を用いて実現する場
合に比べて回路規模の小さいハードウェアブロックの機
能表現を得ることができる。
【0045】次に、S6の処理を詳しく説明する。この
処理では、S5までで求められた出力信号の動作期待値
EXP1の動作を満足する論理式の記述をさらに最適化
する。このステップにおける処理目的は、期待する出力
信号を実現するための論理式において、論理式の右辺の
共通項を共有させることによって、必要論理素子の削減
(論理圧縮)を実現することにある。
【0046】これまでの処理により、出力信号の動作期
待値EXP1は、入力信号x1の1単位遅延信号x1*
(Z-1)と入力信号x2の1単位遅延信号の反転値!x
2*(Z-1)との論理積(AND)で表現できることが
導き出されている。
【0047】 EXP1=(x1*(Z-1)&&!x2*(Z-1)) …(6) ここで、1単位遅延を示す項(Z-1)が、式(6)の右
辺において共通であることから、式(6)を式(7)の
ように変形することができる。
【0048】 EXP1=(x1&&!x2)*(Z-1) …(7) 式(7)の右辺では、これ以上の共通項はないため、最
適解が得られたとして処理を打ち切る。
【0049】この論理圧縮により、回路規模の小さいハ
ードウェアブロックの機能表現を得ることができる。
【0050】図8を参照して、この求められた式を利用
者が望む形式の論理合成可能な機能記述言語として出力
し、処理を終了する。この言語の1つとしてVeril
og−HDL(米国Cadence Design S
ystems社の商標)がある。Verilog−HD
Lにおいては、次クロックにて評価されるイベント(エ
ッジトリガ方式ではフリップフロップ1段に相当)、す
なわち1単位遅延信号(Z-1)への値の代入は、システ
ムクロックをセンシティビティ・リスト中に定義したa
lways文中におけるイベント式において、レジスタ
変数への代入処理で実現できる。
【0051】但し、この変数をレジスタ変数で表現する
ためには、その初期化条件(その変数を非有意にするた
めの条件。一般的にはハードウェアリセット信号。)が
必要である。このハードウェアリセット信号は、生成対
象となる回路の外部入力として定義されなければならな
い。ここで、ハードウェアリセット信号をresetと
する。信号resetの値が0の場合にリセット(初期
化)、1の場合にリセット解除と定義する。その場合、
always文に対するセンシティビティ・リストとし
て”negedge reset”を追加定義する(但
し、非同期リセット時に限る。)とともに、alway
s文中におけるイベント式として”if(!rese
t) EXP1(レジスタ変数) <= 1(非有意
値。本実施の形態の場合);”を定義しなければならな
い。
【0052】この段階でハードウェアリセット信号が定
義されていない場合には、警告メッセージを出力した上
で、同信号の入力定義を促すか、そのままリセット信号
無しで生成対象信号のHDL出力を行なうかの指示を待
つ。
【0053】ここで代入対象となるEXP1は、式
(7)の右辺に”*(Z-1)”があることから、レジス
タ変数で実現されることが導かれる。その代入式は、式
(7)の右辺から(Z-1)を除した(x1&&!x2)
がこれに相当する。また、この代入文の右辺を構成する
式(x1&&!x2)中に存在する信号x1およびx2
とシステムクロック信号”clk”とは外部より入力さ
れた信号である。すなわち、これまでの処理プロセス中
で発生させた中間信号ではない。このため、そのまま入
力ポートから与えられる外部変数として宣言することが
できる。このようにして、図8に示すVerilog−
HDLの出力結果を得ることができる。
【0054】以上のような論理合成装置により、ハード
ウェアブロックの機能表現に不慣れな設計者でも、入力
信号の波形および出力信号の波形を入力するだけで、最
適化された論理式のVerilog−HDLの出力結果
を得ることができる。
【0055】以上、フリップフロップを用いたエッジト
リガ設計方式における論理合成方法を用いた論理合成装
置について説明をおこなったが、本手法は、ラッチを用
いたレベルセンシティブ設計にも適用ができる。その場
合には、ラッチのイネーブル信号(制御信号とみなせ
る。)を生成するだけでよく、同様の処理手順でVer
ilog−HDLの出力結果を得ることができる。
【0056】また、本手法は、バスを用いた回路に対し
ても有効である。その場合には、定義されたバスの変化
周期を制御するための1本の制御信号を生成するだけで
よく、同様の処理手順でVerilog−HDLの出力
結果を得ることができる。
【0057】
【発明の効果】請求項1および2のいずれかに記載の発
明によると、ハードウェアブロックの機能表現に不慣れ
な設計者でも、容易にハードウェアブロックの機能表現
を得ることができる。
【0058】請求項3に記載の発明によると、請求項1
〜2のいずれかに記載の発明の効果に加えて、論理式が
最適化されたハードウェアブロックの機能表現を得るこ
とができる。
【0059】請求項4に記載の発明によると、請求項3
に記載の発明の効果に加えて、順序回路を用いて実現す
る場合に比べて回路規模の小さいハードウェアブロック
の機能表現を得ることができる。
【0060】請求項5に記載の発明によると、請求項4
に記載の発明の効果に加えて、回路規模の小さいハード
ウェアブロックの機能表現を得ることができる。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係る論理合成装置の機
能ブロック図である。
【図2】 本発明の実施の形態に係る論理合成方法の処
理の流れを示すフローチャートである。
【図3】 波形入力・編集部2で定義された入出力信号
の一例を示す図である。
【図4】 波形入力・編集部2で定義された入出力信号
の一例を示す図である。
【図5】 論理演算の中間結果の波形を示す図である。
【図6】 入力信号の単位遅延信号の波形を示す図であ
る。
【図7】 論理演算の結果の波形を示す図である。
【図8】 Verilog−HDLの出力結果の一例を
示す図である。
【符号の説明】
2 波形入力・編集部、4 データ保存部、6,8,1
8 ファイル、10論理演算処理部、12 論理圧縮
部、14 HDL変換部、16 エラー処理部、20
論理合成装置。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 入力信号および出力信号を編集するステ
    ップと、 前記入力信号および前記出力信号を受け、前記入力信号
    から前記出力信号を出力するための論理式を算出する論
    理算出ステップと、 前記論理式をハードウェア記述言語に変換し出力するス
    テップとを含む、論理合成方法。
  2. 【請求項2】 前記論理算出ステップは、前記論理式が
    組合せ論理のみで表現可能か否かを判断する表現可能判
    断ステップと、 組合せ論理のみで表現可能でない場合に、前記入力信号
    の単位遅延信号を発生するステップと、 前記入力信号と前記入力信号の単位遅延信号と前記出力
    信号との間の相関関係を求めるステップと、 前記相関関係より前記入力信号および前記入力信号の単
    位遅延信号の組合せから、前記論理式を算出するステッ
    プとを含む、請求項1に記載の論理合成方法。
  3. 【請求項3】 前記論理式を最適化する最適化ステップ
    をさらに含む、請求項1〜2のいずれかに記載の論理合
    成方法。
  4. 【請求項4】 前記最適化ステップは、前記論理式を構
    成する信号のうち、所定値以上の遅延段数を有する前記
    入力信号の単位遅延信号がある場合に、当該入力信号の
    単位遅延信号をカウンタを用いて実現するステップを含
    む、請求項3に記載の論理合成方法。
  5. 【請求項5】 前記最適化ステップは、前記論理式にブ
    ール代数の定理を適用して、論理圧縮を行なうステップ
    をさらに含む、請求項4に記載の論理合成方法。
JP9158399A 1997-06-16 1997-06-16 論理合成方法 Withdrawn JPH117458A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9158399A JPH117458A (ja) 1997-06-16 1997-06-16 論理合成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9158399A JPH117458A (ja) 1997-06-16 1997-06-16 論理合成方法

Publications (1)

Publication Number Publication Date
JPH117458A true JPH117458A (ja) 1999-01-12

Family

ID=15670902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9158399A Withdrawn JPH117458A (ja) 1997-06-16 1997-06-16 論理合成方法

Country Status (1)

Country Link
JP (1) JPH117458A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129916A (ja) * 2006-11-22 2008-06-05 Oki Electric Ind Co Ltd 回路設計方法
CN112632879A (zh) * 2019-09-24 2021-04-09 杭州起盈科技有限公司 一种将电路图用高级硬件描述语言重构的自动化方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129916A (ja) * 2006-11-22 2008-06-05 Oki Electric Ind Co Ltd 回路設計方法
CN112632879A (zh) * 2019-09-24 2021-04-09 杭州起盈科技有限公司 一种将电路图用高级硬件描述语言重构的自动化方法
CN112632879B (zh) * 2019-09-24 2023-08-29 杭州起盈科技有限公司 一种将电路图用高级硬件描述语言重构的自动化方法

Similar Documents

Publication Publication Date Title
JP5045961B2 (ja) 同期回路設計の表現から非同期回路設計の表現へおよび非同期回路設計の表現から同期回路設計の表現への自動変換を実行するためのシステムおよび方法
Rushton VHDL for logic synthesis
US5499192A (en) Method for generating logic modules from a high level block diagram
US6301553B1 (en) Method and apparatus for removing timing hazards in a circuit design
US20160299998A1 (en) Logic circuit generation device and method
US7318014B1 (en) Bit accurate hardware simulation in system level simulators
JPH10134091A (ja) 論理エミュレーションの最適化回路生成法
JP4293562B2 (ja) ハードウェア検証用プログラミング記述生成装置、高位合成装置、ハードウェア検証用プログラミング記述生成方法、ハードウェア検証用プログラム生成方法、制御プログラムおよび可読記録媒体
JPH117458A (ja) 論理合成方法
Kuper et al. Exercises in architecture specification using CλaSH
US6584597B1 (en) Modeling of phase synchronous circuits
Belean Application-Specific Hardware Architecture Design with VHDL
JP3134132B2 (ja) 論理回路自動生成装置
Alecsa et al. FPGA implementation of a matrix structure for integer division
Beyer et al. Correct hardware by synthesis from PVS
JP2005078402A (ja) 電子回路の動作合成方法
JP2002222228A (ja) 高位合成システム及び高位合成方法
JPH09116413A (ja) 論理回路及びその設計方法
Greene Exact mapping of rewritten linear functions to configurable logic
He et al. Extended DILL: Digital logic in LOTOS
JP2000515658A (ja) 複雑なデジタル集積回路の設計方法並びに回路構造体
JPH09160951A (ja) 非同期論理回路の合成方法
JP2024062940A (ja) 高位合成に対する等価性検証を行う装置、プログラム、および方法
Van Leeuwen Implementation and automatic generation of asynchronous scheduled dataflow graph
Agarwal Comparison of high level design methodologies for algorithmic IPs: Bluespec and C-based synthesis

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: 20040907