JPH1173447A - 論理回路の自動合成方式 - Google Patents

論理回路の自動合成方式

Info

Publication number
JPH1173447A
JPH1173447A JP9247484A JP24748497A JPH1173447A JP H1173447 A JPH1173447 A JP H1173447A JP 9247484 A JP9247484 A JP 9247484A JP 24748497 A JP24748497 A JP 24748497A JP H1173447 A JPH1173447 A JP H1173447A
Authority
JP
Japan
Prior art keywords
logic circuit
boundary information
technology
level
description language
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.)
Granted
Application number
JP9247484A
Other languages
English (en)
Other versions
JP2988521B2 (ja
Inventor
Hiroshi Yoshikawa
浩 吉川
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP9247484A priority Critical patent/JP2988521B2/ja
Priority to US09/144,503 priority patent/US6243852B1/en
Publication of JPH1173447A publication Critical patent/JPH1173447A/ja
Application granted granted Critical
Publication of JP2988521B2 publication Critical patent/JP2988521B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 ハードウェア記述言語(HDL)中の中間信
号が、合成後の論理回路中のどの部分に相当するかを簡
易に分かるようにする。 【解決手段】 コンパイル部4はHDL1を解析して初
期論理回路に変換し中間信号に対応する境界情報を保持
する境界情報付き内部データベース2を作成し、テクノ
ロジー独立な最適化部5は初期論理回路に対して境界情
報を保持したままテクノロジー独立な最適化を行い、テ
クノロジーマッピング部6は最適化された初期論理回路
に境界情報を保持したまま半導体ライブラリ3中の各フ
ァンクションブロックを割り当てテクノロジーレベルの
論理回路に変換し、タイミング最適化部7はテクノロジ
ーレベルの論理回路を境界情報を保持したまま最適化
し、論理回路出力部8は最適化された論理回路11を出
力し、対応表出力部9は内部データベース2を参照して
HDL1中の中間信号と論理回路との対応を表す対応表
10を出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は論理回路の自動合成
方式に関し、特にハードウェア記述言語(Hardwe
ar Descriptive Language:以
下、HDLと略記する)から論理回路を自動合成する論
理回路の自動合成方式に関する。
【0002】
【従来の技術】従来の論理回路の自動合成方式として
は、L.Stok他によるブルドーザー:ロジック・シ
ンセシス・フォー・ASICs(Boole Doze
r:Logic Synthesis for ASI
Cs)1996.7,IBM,J.RES.Devel
opment,p.407〜430)(以下、参考文献
1という)に開示されたものがある。図12は、この従
来の論理回路の自動合成方式の概要を示すブロック図で
ある(本図は、上記文献には記述されていないが、内容
をまとめたものである)。この従来の論理回路の自動合
成方式は、HDL101と、内部データベース102
と、半導体ライブラリ103と、コンパイル部104
と、テクノロジー独立な最適化部(Technolog
y−independent optimizatio
n)105と、テクノロジーマッピング部(Techn
ology mapping)106と、タイミング最
適化部107と、論理回路出力部108と、論理回路1
11とから構成されている。
【0003】このような従来の論理回路の自動合成方式
では、コンパイル部104は、HDL101を読み込ん
で論理回路に変換し、内部データベース102に格納す
る。
【0004】次に、テクノロジー独立な最適化部105
は、内部データベース102に格納されている論理回路
に対し、定数伝搬(Constant propaga
tion),冗長除去(Redundancy rem
oval),グローバルフロー(Global flo
w),トランスダクション(Transductio
n),平坦化(Flattening),キューブファ
クタリング(Cubefacutoring),キュー
ブの拡大/縮小(Cube expand/reduc
e),カーネル抽出(Kernel factorin
g)等の論理回路の最適化手法を行う。
【0005】続いて、テクノロジーマッピング部106
は、最適化された論理回路を、与えられた半導体ライブ
ラリ103中の各ファンクションブロックに割り当て
る。
【0006】次に、タイミング最適化部107は、その
結果を、ファンアウト調整(Fan−out corr
ection),ファンイン・リオーダリング(Fan
−in reordering),タイミングを考慮し
たデコンポジション(Deconposition),
インバータ変更(Inverter motion)等
の手法を用いて最適化する。
【0007】最後に、論理回路出力部108は、最終的
な結果を論理回路111として出力する。
【0008】
【発明が解決しようとする課題】第1の問題点は、従来
の技術において、HDLとその合成結果である論理回路
との対応が完全には一致しないという点である。その理
由は、各種の最適化により、HDLの情報が失われてし
まうためである。例えば、参考文献1中のFigure
13(a)におけるSという中間信号は、HDL上は、
S=(A andC)or(A and D)or(B
and C)or(B and D)であったのに、
トランスダクションという最適化の結果、S’=C o
r Dに変更されてしまう(Figure13(b)参
照)。ここで、中間信号とは、HDL上で記述された信
号で、回路の入出力やフリップフロップの出力以外の信
号を意味する(以下同様)。
【0009】一方、HDLと論理回路との対応をとるた
めに、トランスダクション等のアルゴリズムを使わない
方法も考えられるが、これでは最適化があまり働かない
ので、最終的に得られる論理回路の性能(面積/遅延)
が悪くなり過ぎるという問題が発生してしまう。
【0010】このような問題は、トランスダクション以
外の手法でも同様に発生する。
【0011】本発明の目的は、HDL中の中間信号が、
合成後の論理回路中のどこの部分に相当するかが簡易に
分かるようにして、合成後の論理回路の分析,修正,論
理検証等を効率的に行うことが可能となる論理回路の自
動合成方式を提供することにある。
【0012】また、本発明の他の目的は、HDL中の中
間信号であっても、最適化の性能を優先するために、境
界情報を部分的に削除できるようにして、それ以外の中
間信号の境界情報のみを保持して、対応表に出力するこ
とができる論理回路の自動合成方式を提供することにあ
る。
【0013】さらに、本発明の他の目的は、コンピュー
タに、HDL中の中間信号が、合成した結果の回路中の
どこの部分に相当するかが簡易に分かるようにして、合
成後の回路の分析,修正,論理検証等を効率的に行う処
理を実現させるためのプログラムを記録した記録媒体を
提供することにある。
【0014】
【課題を解決するための手段】本発明の論理回路の自動
合成方式は、ハードウェア記述言語中の中間信号に対応
する部分の境界情報を論理合成途中の論理回路中に常に
保持し、この中間信号と合成した論理回路との対応表を
出力することを特徴とする。また、ハードウェア記述言
語中の中間信号でも、部分的に境界情報を残さないこと
により、より良い最適化を行うようにしてもよい。
【0015】また、本発明の論理回路の自動合成方式
は、ハードウェア記述言語を解析してAND/ORレベ
ルの初期論理回路に変換し前記ハードウェア記述言語中
の中間信号に対応する部分の境界情報を保持させること
により境界情報付き内部データベースを作成するコンパ
イル部と、前記境界情報付き内部データベース中のAN
D/ORレベルの初期論理回路に対して前記境界情報を
保持したままテクノロジー独立な最適化を行うテクノロ
ジー独立な最適化部と、このテクノロジー独立な最適化
部により最適化されたAND/ORレベルの初期論理回
路に前記境界情報を保持したまま半導体ライブラリ中の
各ファンクションブロックを割り当てテクノロジーレベ
ルの論理回路に変換するテクノロジーマッピング部と、
このテクノロジーマッピング部により得られたテクノロ
ジーレベルの論理回路を前記境界情報を保持したまま、
ファンアウト調整,ファンイン・リオーダリング,タイ
ミングを考慮したデコンポジション,インバータ変更等
の手法を用いて最適化するタイミング最適化部と、この
タイミング最適化部により最適化されたテクノロジーレ
ベルの論理回路を出力する論理回路出力部と、前記境界
情報付き内部データベース中のテクノロジーレベルの論
理回路を参照して前記ハードウェア記述言語中の中間信
号と前記論理回路との対応を表す対応表を出力する対応
表出力部とを有することを特徴とする。前記コンパイル
部が、ハードウェア記述言語を解析してAND/ORレ
ベルの初期論理回路に変換するトランスレータと、この
トランスレータにより変換されたAND/ORレベルの
初期論理回路中の信号名付きノードを探索し、この信号
名付きノードの境界情報を直前のノードに付け換えて該
信号名付きノードを取り除く境界情報生成部とから構成
されていてもよい。
【0016】さらに、本発明の論理回路の自動合成方式
は、ハードウェア記述言語を解析してAND/ORレベ
ルの初期論理回路に変換し前記ハードウェア記述言語中
の中間信号に対応する部分の境界情報を保持させること
により境界情報付き内部データベースを作成するコンパ
イル部と、前記境界情報付き内部データベース中の境界
情報の部分的な削除を行う定数伝搬部と、前記境界情報
付き内部データベースから参照回数がN(正整数)以下
の境界情報を削除する参照回数チェック部と前記境界情
報付き内部データベース中のAND/ORレベルの初期
論理回路に対して前記境界情報を保持したままテクノロ
ジー独立な最適化を行うテクノロジー独立な最適化部
と、このテクノロジー独立な最適化部により最適化され
たAND/ORレベルの初期論理回路に前記境界情報を
保持したまま半導体ライブラリ中の各ファンクションブ
ロックを割り当てテクノロジーレベルの論理回路に変換
するテクノロジーマッピング部と、このテクノロジーマ
ッピング部により得られたテクノロジーレベルの論理回
路を前記境界情報を保持したまま、ファンアウト調整,
ファンイン・リオーダリング,タイミングを考慮したデ
コンポジション,インバータ変更等の手法を用いて最適
化するタイミング最適化部と、このタイミング最適化部
により最適化されたテクノロジーレベルの論理回路を出
力する論理回路出力部と、前記境界情報付き内部データ
ベース中のテクノロジーレベルの論理回路を参照して前
記ハードウェア記述言語中の中間信号と前記論理回路と
の対応を表す対応表を出力する対応表出力部とを有す
る。前記コンパイル部が、ハードウェア記述言語を解析
してAND/ORレベルの初期論理回路に変換するトラ
ンスレータと、このトランスレータにより変換されたA
ND/ORレベルの初期論理回路中の信号名付きノード
を探索し、この信号名付きノードの境界情報を直前のノ
ードに付け換えて該信号名付きノードを取り除く境界情
報生成部とから構成されていてもよい。
【0017】一方、本発明の記録媒体は、コンピュータ
を、ハードウェア記述言語を解析してAND/ORレベ
ルの初期論理回路に変換し前記ハードウェア記述言語中
の中間信号に対応する部分の境界情報を保持させること
により境界情報付き内部データベースを作成するコンパ
イル手段,前記境界情報付き内部データベース中のAN
D/ORレベルの初期論理回路に対して前記境界情報を
保持したままテクノロジー独立な最適化を行うテクノロ
ジー独立な最適化手段,このテクノロジー独立な最適化
手段により最適化されたAND/ORレベルの初期論理
回路に前記境界情報を保持したまま半導体ライブラリ中
の各ファンクションブロックを割り当てテクノロジーレ
ベルの論理回路に変換するテクノロジーマッピング手
段,このテクノロジーマッピング部により得られたテク
ノロジーレベルの論理回路を前記境界情報を保持したま
ま、ファンアウト調整,ファンイン・リオーダリング,
タイミングを考慮したデコンポジション,インバータ変
更等の手法を用いて最適化するタイミング最適化手段,
このタイミング最適化手段により最適化されたテクノロ
ジーレベルの論理回路を出力する論理回路出力手段,前
記境界情報付き内部データベース中のテクノロジーレベ
ルの論理回路を参照して前記ハードウェア記述言語中の
中間信号と前記論理回路との対応を表す対応表を出力す
る対応表出力手段として機能させるためのプログラムを
記録する。前記コンパイル手段が、ハードウェア記述言
語を解析してAND/ORレベルの初期論理回路に変換
するトランスレート手段と、このトランスレート手段に
より変換されたAND/ORレベルの初期論理回路中の
信号名付きノードを探索し、この信号名付きノードの境
界情報を直前のノードに付け換えて該信号名付きノード
を取り除く境界情報生成手段とから構成されていてもよ
い。
【0018】また、本発明の記録媒体は、コンピュータ
を、ハードウェア記述言語を解析してAND/ORレベ
ルの初期論理回路に変換し前記ハードウェア記述言語中
の中間信号に対応する部分の境界情報を保持させること
により境界情報付き内部データベースを作成するコンパ
イル手段,前記境界情報付き内部データベース中の境界
情報の部分的な削除を行う定数伝搬手段,前記境界情報
付き内部データベースから参照回数がN(正整数)以下
の境界情報を削除する参照回数チェック手段,前記境界
情報付き内部データベース中のAND/ORレベルの初
期論理回路に対して前記境界情報を保持したままテクノ
ロジー独立な最適化を行うテクノロジー独立な最適化手
段,このテクノロジー独立な最適化手段により最適化さ
れたAND/ORレベルの初期論理回路に前記境界情報
を保持したまま半導体ライブラリ中の各ファンクション
ブロックを割り当てテクノロジーレベルの論理回路に変
換するテクノロジーマッピング手段,このテクノロジー
マッピング手段により得られたテクノロジーレベルの論
理回路を前記境界情報を保持したまま、ファンアウト調
整,ファンイン・リオーダリング,タイミングを考慮し
たデコンポジション,インバータ変更等の手法を用いて
最適化するタイミング最適化手段,このタイミング最適
化手段により最適化されたテクノロジーレベルの論理回
路を出力する論理回路出力手段,および前記境界情報付
き内部データベース中のテクノロジーレベルの論理回路
を参照して前記ハードウェア記述言語中の中間信号と前
記論理回路との対応を表す対応表を出力する対応表出力
手段として機能させるためのプログラムを記録する。前
記コンパイル手段が、ハードウェア記述言語を解析して
AND/ORレベルの初期論理回路に変換するトランス
レート手段と、このトランスレート手段により変換され
たAND/ORレベルの初期論理回路中の信号名付きノ
ードを探索し、この信号名付きノードの境界情報を直前
のノードに付け換えて該信号名付きノードを取り除く境
界情報生成手段とから構成されていてもよい。
【0019】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
【0020】図1は、本発明の第1の実施の形態に係る
論理回路の自動合成方式の構成を示すブロック図であ
る。本実施の形態に係る論理回路の自動合成方式は、H
DL1と、境界情報付き内部データベース2と、半導体
ライブラリ3と、HDL1を入力し中間信号の境界情報
付き内部データベース2を作成するコンパイル部4と、
境界情報を境界情報付き内部データベース2に保持した
まま論理回路の変換を行うテクノロジー独立な最適化部
5と、テクノロジー独立な最適化部5により最適化され
た論理回路に境界情報を保持したまま半導体ライブラリ
3中の各ファンクションブロックへの割り当てを行うテ
クノロジーマッピング部6と、テクノロジーマッピング
部6の結果を境界情報を保持したままファンアウト調
整,ファンイン・リオーダリング,タイミングを考慮し
たデコンポジション,インバータ変更等の手法を用いて
最適化するタイミング最適化部7と、タイミング最適化
部7により最適化された論理回路を論理回路11として
出力する論理回路出力部8と、境界情報付き内部データ
ベース2および半導体ライブラリ3を参照してHDL1
中の中間信号と論理回路11との対応を表す対応表10
を出力する対応表出力部9と、対応表10と、論理回路
11とから構成されている。
【0021】図2を参照すると、コンパイル部4は、ト
ランスレータ41と、境界情報生成部42とから構成さ
れている。
【0022】トランスレータ41は、境界情報のない内
部データベースを作成する。トランスレータ41は、米
国特許第4,703,435号(以下、参考文献2とい
う)のSimple Translationに相当
し、該参考文献2中にも記述されているように、HDL
1を読み込み、内部データベースに初期論理回路を生成
するものである。つまり、HDL1は、トランスレータ
41により、AND/ORレベルの初期論理回路に変換
される。このAND/ORレベルの初期論理回路は、従
来から良く知られた手法により、単にHDL1と論理的
に等価なAND/ORのノード群に変換しただけのもの
である。
【0023】境界情報生成部42は、トランスレータ4
1の出力する内部データベースを参照し、AND/OR
レベルの初期論理回路中から信号名付きノードを探し、
境界情報付き内部データベース2を作成する。
【0024】図3を参照すると、境界情報生成部42の
処理は、信号名付きノード入力ステップS1と、終了判
定ステップS2と、node設定ステップS3と、fa
nin設定ステップS4と、境界情報設定ステップS5
と、接続つなぎ変えステップS6とからなる。
【0025】なお、境界情報は、信号名char*と、
極性int(POSがHDL1と同極性、NEGが否定
極性)とから構成される。
【0026】対応表出力部9は、論理回路中のゲートを
1つずつ調べ、そこに境界情報が付いていれば、その中
間信号を見て論理回路中に同じ中間信号のものがないか
どうかを探し、あればその情報も一緒に出力する。出力
するときは、中間信号名と、境界情報付き内部データベ
ース2中のゲートのインスタンス名と、このゲートの出
力ピンの名前を半導体ライブラリ3から探してきて、そ
のピン名および極性(1のときはPOS、−1のときは
NEG)とを出力する。
【0027】次に、このように構成された第1の実施の
形態に係る論理回路の自動合成方式の動作について説明
する。
【0028】まず、コンパイル部4は、HDL1を読み
込み、HDL1中の中間信号についての境界情報付き内
部データベース2を作成する。例えば、図4中に示すよ
うな、A=(I1+I2)*I3,B=A+I4,C=
A+I5等の中間信号を含むHDL1の中間信号A,B
およびCは、回路の入力端子,出力端子やフリップフロ
ップ等の順序回路素子ではなく、内部で他の論理式中に
参照されるだけの中間信号であり、これらは、従来の論
理回路の自動合成方式では、合成した論理回路11中で
はどの部分かは判らないものである。
【0029】詳しくは、トランスレータ41は、例え
ば、図4中の中間信号A,BおよびC等を含むHDL1
に対しては、AND/ORの論理をそのままに、図5に
示すような初期論理回路を生成する。図5を見てもわか
る通り、トランスレータ41により、HDL1の構造が
そのまま初期論理回路として生成されている。また、H
DL1中の中間信号A,BおよびCも、信号名付きノー
ド28a,28bおよび28cとして存在している。こ
れら信号名付きノード28a,28bおよび28cは、
論理的には意味を持たず、その部分はHDL1中のどの
中間信号かを示しているだけである。
【0030】次に、境界情報生成部42は、まず、AN
D/ORレベルの初期論理回路中から信号名付きノード
28aを入力し(ステップS1)、nodeに信号名付
きノード28aを設定する(ステップS3)。次に、境
界情報生成部42は、faninにその直前の論理を表
すノード29を設定する(ステップS4)。続いて、境
界情報生成部42は、faninに設定されたノード2
9に境界情報として中間信号名=nodeの信号名A、
極性=POSを設定する(ステップS5)。次に、境界
情報生成部42は、nodeに設定された信号名付きノ
ード28aを消し、信号名付きノード28aの出力につ
ながっていたノード31aおよび31bをfaninに
設定されたノード29につなぎ変える(ステップS
6)。この後、境界情報生成部42は、ステップS1に
制御を戻し、ステップS1ないしS6を、AND/OR
レベルの初期論理回路中に信号名付きノードがなくなる
まで(ステップS2でイエス)、繰り返す。この結果、
図4中の境界情報付き内部データベース2が得られる。
【0031】次に、テクノロジー独立な最適化部5は、
境界情報付き内部データベース2中のAND/ORレベ
ルの初期論理回路に対して、定数伝搬,冗長除去,グロ
ーバルフロー,トランスダクション,平坦化,キューブ
ファクタリング,キューブの拡大/縮小,カーネル抽出
等の最適化を、境界情報を保持しながら行う。
【0032】続いて、テクノロジーマッピング部6は、
境界情報付き内部データベース2中のAND/ORレベ
ルの初期論理回路に対して、境界情報を保持したまま、
テクノロジーの半導体ライブラリ3中のファンクション
ブロックへの割り当てを行う。この結果、境界情報付き
内部データベース2中のAND/ORレベルの初期論理
回路は、テクノロジーレベルの論理回路に変換される。
【0033】次に、タイミング最適化部7は、境界情報
付き内部データベース2中のテクノロジーレベルの論理
回路に対して、境界情報を保持したまま、ファンアウト
調整,ファンイン・リオーダリング,タイミングを考慮
したデコンポジション,マッピング,インバータ変更等
の遅延最適化を行う。例えば、図4中に示すファンクシ
ョンブロックFB6およびFB7は、中間信号Bのファ
ンアウト調整の結果生成されたインバータおよびバッフ
ァである。ただし、境界情報は、ファンクションブロッ
クFB3に付いている。また、中間信号Cに対しては、
回路を二重化して高速化を行っており、中間信号Cに対
応するものとしては、ファンクションブロックFB4の
出力極性がNEG,ファンクションブロックFB5の出
力極性がPOSとなる。
【0034】続いて、論理回路出力部8は、境界情報付
き内部データベース2中の最適化された論理回路を論理
回路11として出力する。
【0035】最後に、対応表出力部9は、境界情報付き
内部データベース2中の境界情報を論理回路11との対
応が分かる形で、対応表10として出力する。図4の例
では、中間信号AはファンクションブロックFB1の出
力ピンO1の極性POS、中間信号Bはファンクション
ブロックFB3の出力ピンO1の極性NEG、中間信号
CはファンクションブロックFB4の出力ピンO1の極
性NEGおよびファンクションブロックFB5の出力ピ
ンO1の極性POSになっていることを示している。
【0036】このように、第1の実施の形態に係る論理
回路の自動合成方式では、コンパイル部4が設定したH
DL1中の中間信号の境界情報を全ての回路変換が保持
し、その結果を対応表10として出力するので、この対
応表10を見ることにより、HDL1中の中間信号が、
合成した論理回路11中のどの部分に対応するかが容易
に判定できる。
【0037】図6は、第1の実施の形態に係る論理回路
の自動合成方式における入出力の他の例を表した入出力
関係図である。図6中に示すような中間信号A,B,U
およびV等を含むHDL1の場合には、図6中に示すよ
うな論理回路11が合成され、図6中に示すような対応
表10が出力される。
【0038】次に、本発明の第2の実施の形態について
図面を参照して詳細に説明する。
【0039】図7は、本発明の第2の実施の形態に係る
論理回路の自動合成方式の構成を示すブロック図であ
る。第2の実施の形態に係る論理回路の自動合成方式
は、第1の実施の形態に係る論理回路の自動合成方式に
対して、コンパイル部4とテクノロジー独立な最適化部
5との間に境界部分削除部12を設けたものである。境
界部分削除部12は、境界情報の部分的な削除を行う定
数伝搬部13と、参照回数N以下の境界情報を削除する
参照回数チェック部14とから構成されている。なお、
参照回数チェック部14で使用される数値Nについは、
ユーザがパラメータとして指定するものとする。
【0040】まず、定数伝搬部13は、論理回路の定数
に関する最適化を行う。具体的には、図8に例示するよ
うな最適化を行う。図8において、ANDで入力に0が
あるもの、そしてORで入力に1があるものは、そのゲ
ートがなくなり、定数(0,1)になってしまっても、
論理的には正しいことを意味している。この定数伝搬に
より、境界情報のもつゲートが削除される場合もある。
このとき、このゲートのみ境界情報がなくなるが、他の
部分には影響しない。この処理により、無駄なゲートが
削除されるので、最終的な論理回路の面積も減少する
(つまり、良い最適化となる)。
【0041】次に、参照回数チェック部14は、ユーザ
から与えられたパラメータNを基準値とし、境界情報を
もっているノードの参照がN以下の場合、そのノードを
境界ノードではなくす処理(境界情報を削除する)を行
う。具体的には、境界情報付き内部データベース2中の
全ての境界情報をもったノードについて、nodeを現
在処理対象となっている境界情報をもったノードにし、
nodeの出力値に直接つながっているノードの数をf
anoutとし、もしfanout<=Nであれば、n
odeの境界情報を削除する処理を繰り返す。図9の例
の場合、ノードAが境界情報付きノードの場合、そのf
anoutは4であるので、もしNが4の場合には、ノ
ードAの境界情報は消去される。
【0042】例えば、図10のN=1の場合の論理回路
11および対応表10のように、HDL1中の参照が1
の中間信号AおよびUを保存しないことにより、図6に
示した第1の実施の形態に係る論理回路の自動合成方式
による場合に比べて、面積のより少ない論理回路11が
得られるという利点がある。
【0043】次に、本発明の第3の実施の形態について
図面を参照して詳細に説明する。
【0044】図11は、本発明の第3の実施の形態に係
る論理回路の自動合成方式の構成を示すブロック図であ
る。本実施の形態に係る論理回路の自動合成方式は、キ
ーボード等の入力装置61と、データ処理装置62と、
記憶装置63と、ディスプレイ等の出力装置64と、論
理回路自動合成プログラム66を格納する記録媒体65
とから構成されている。記録媒体65は、磁気ディス
ク,半導体メモリ,その他の記録媒体であってもよい。
【0045】論理回路自動合成プログラム66は、記録
媒体65からデータ処理装置62を介して記憶装置63
に読み込まれ、データ処理装置62の動作を制御する。
データ処理装置62の論理回路自動合成プログラム66
の制御による処理は、第1の実施の形態に係る論理回路
の自動合成方式の場合または第2の実施の形態に係る論
理回路の自動合成方式の場合と全く同様になるので、そ
の詳しい説明を省略する。
【0046】
【発明の効果】第1の効果は、HDL中の中間信号であ
っても、その合成結果である論理回路中のどの部分に対
応するかが分かるようになることである。その理由は、
各種の最適化によっても、HDL中の中間信号の境界情
報を保持して対応表として出力しているからである。
【0047】第2の効果は、HDL中の中間信号であっ
ても、最適化の性能を優先するために、部分的に境界情
報を保持せず、それ以外の中間信号の境界情報のみを保
持して、対応表に出力することができることである。そ
の理由は、境界部分削除部を設けて、境界情報を部分的
に削除できるようにしたからである。
【0048】第3の効果は、コンピュータに論理回路の
自動合成方式を簡単に実装することができることであ
る。その理由は、HDL中の中間信号が、合成した結果
の回路中のどこの部分に相当するかが簡易に分かるよう
にして、合成後の回路の分析,修正,論理検証等を効率
的に行う処理を実現させるためのプログラムを記録媒体
に記録したからである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る論理回路の自
動合成方式の構成を示すブロック図である。
【図2】図1中のコンパイル部の内部構造をさらに詳細
に示す図である。
【図3】図2中の境界情報生成部の処理を示す流れ図で
ある。
【図4】第1の実施の形態に係る論理回路の自動合成方
式における入出力の一例を表した入出力関係図である。
【図5】図1中のコンパイル部により生成される初期論
理回路の一例を示す図である。
【図6】第1の実施の形態に係る論理回路の自動合成方
式における入出力の他の例を表した入出力関係図であ
る。
【図7】本発明の第2の実施の形態に係る論理回路の自
動合成方式の構成を示すブロック図である。
【図8】図7中の定数伝搬部による処理を説明する図で
ある。
【図9】図7中の参照回数チェック部による処理を説明
する図である。
【図10】第2の実施の形態に係る論理回路の自動合成
方式における入出力の一例を表した入出力関係図であ
る。
【図11】本発明の第3の実施の形態に係る論理回路の
自動合成方式の構成を示すブロック図である。
【図12】従来の論理回路の自動合成方式を示すブロッ
ク図である。
【符号の説明】
1 HDL 2 境界情報付き内部データベース 3 半導体ライブラリ 4 コンパイル部 5 テクノロジー独立な最適化部 6 テクノロジーマッピング部 7 タイミング最適化部 8 論理回路出力部 9 対応表出力部 10 対応表 11 論理回路 12 境界部分削除部 13 定数伝搬部 14 参照回数チェック部 28a,28b,28c 境界情報付きノード 29,30,31a,31b ノード 41 トランスレータ 42 境界情報生成部 61 入力装置 62 データ処理装置 63 記憶装置 64 出力装置 65 記録媒体 66 論理回路自動合成プログラム

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 ハードウェア記述言語中の中間信号に対
    応する部分の境界情報を論理合成途中の論理回路中に常
    に保持し、この中間信号と合成した論理回路との対応表
    を出力することを特徴とする論理理回路の自動合成方
    式。
  2. 【請求項2】 前記ハードウェア記述言語中の中間信号
    でも、部分的に境界情報を残さないことにより、より良
    い最適化を行う請求項1記載の論理回路の自動合成方
    式。
  3. 【請求項3】 ハードウェア記述言語を解析してAND
    /ORレベルの初期論理回路に変換し前記ハードウェア
    記述言語中の中間信号に対応する部分の境界情報を保持
    させることにより境界情報付き内部データベースを作成
    するコンパイル部と、 前記境界情報付き内部データベース中のAND/ORレ
    ベルの初期論理回路に対して前記境界情報を保持したま
    まテクノロジー独立な最適化を行うテクノロジー独立な
    最適化部と、 このテクノロジー独立な最適化部により最適化されたA
    ND/ORレベルの初期論理回路に前記境界情報を保持
    したまま半導体ライブラリ中の各ファンクションブロッ
    クを割り当てテクノロジーレベルの論理回路に変換する
    テクノロジーマッピング部と、 このテクノロジーマッピング部により得られたテクノロ
    ジーレベルの論理回路を前記境界情報を保持したまま、
    ファンアウト調整,ファンイン・リオーダリング,タイ
    ミングを考慮したデコンポジション,インバータ変更等
    の手法を用いて最適化するタイミング最適化部と、 このタイミング最適化部により最適化されたテクノロジ
    ーレベルの論理回路を出力する論理回路出力部と、 前記境界情報付き内部データベース中のテクノロジーレ
    ベルの論理回路を参照して前記ハードウェア記述言語中
    の中間信号と前記論理回路との対応を表す対応表を出力
    する対応表出力部とを有することを特徴とする論理回路
    の自動合成方式。
  4. 【請求項4】 ハードウェア記述言語を解析してAND
    /ORレベルの初期論理回路に変換し前記ハードウェア
    記述言語中の中間信号に対応する部分の境界情報を保持
    させることにより境界情報付き内部データベースを作成
    するコンパイル部と、 前記境界情報付き内部データベース中の境界情報の部分
    的な削除を行う定数伝搬部と、 前記境界情報付き内部データベースから参照回数がN
    (正整数)以下の境界情報を削除する参照回数チェック
    部と前記境界情報付き内部データベース中のAND/O
    Rレベルの初期論理回路に対して前記境界情報を保持し
    たままテクノロジー独立な最適化を行うテクノロジー独
    立な最適化部と、 このテクノロジー独立な最適化部により最適化されたA
    ND/ORレベルの初期論理回路に前記境界情報を保持
    したまま半導体ライブラリ中の各ファンクションブロッ
    クを割り当てテクノロジーレベルの論理回路に変換する
    テクノロジーマッピング部と、 このテクノロジーマッピング部により得られたテクノロ
    ジーレベルの論理回路を前記境界情報を保持したまま、
    ファンアウト調整,ファンイン・リオーダリング,タイ
    ミングを考慮したデコンポジション,インバータ変更等
    の手法を用いて最適化するタイミング最適化部と、 このタイミング最適化部により最適化されたテクノロジ
    ーレベルの論理回路を出力する論理回路出力部と、 前記境界情報付き内部データベース中のテクノロジーレ
    ベルの論理回路を参照して前記ハードウェア記述言語中
    の中間信号と前記論理回路との対応を表す対応表を出力
    する対応表出力部とを有することを特徴とする論理回路
    の自動合成方式。
  5. 【請求項5】 前記コンパイル部が、ハードウェア記述
    言語を解析してAND/ORレベルの初期論理回路に変
    換するトランスレータと、このトランスレータにより変
    換されたAND/ORレベルの初期論理回路中の信号名
    付きノードを探索し、この信号名付きノードの境界情報
    を直前のノードに付け換えて該信号名付きノードを取り
    除く境界情報生成部とから構成される請求項3または4
    記載の論理回路の自動合成方式。
  6. 【請求項6】 コンピュータを、ハードウェア記述言語
    を解析してAND/ORレベルの初期論理回路に変換し
    前記ハードウェア記述言語中の中間信号に対応する部分
    の境界情報を保持させることにより境界情報付き内部デ
    ータベースを作成するコンパイル手段,前記境界情報付
    き内部データベース中のAND/ORレベルの初期論理
    回路に対して前記境界情報を保持したままテクノロジー
    独立な最適化を行うテクノロジー独立な最適化手段,こ
    のテクノロジー独立な最適化手段により最適化されたA
    ND/ORレベルの初期論理回路に前記境界情報を保持
    したまま半導体ライブラリ中の各ファンクションブロッ
    クを割り当てテクノロジーレベルの論理回路に変換する
    テクノロジーマッピング手段,このテクノロジーマッピ
    ング部により得られたテクノロジーレベルの論理回路を
    前記境界情報を保持したまま、ファンアウト調整,ファ
    ンイン・リオーダリング,タイミングを考慮したデコン
    ポジション,インバータ変更等の手法を用いて最適化す
    るタイミング最適化手段,このタイミング最適化手段に
    より最適化されたテクノロジーレベルの論理回路を出力
    する論理回路出力手段,前記境界情報付き内部データベ
    ース中のテクノロジーレベルの論理回路を参照して前記
    ハードウェア記述言語中の中間信号と前記論理回路との
    対応を表す対応表を出力する対応表出力手段として機能
    させるためのプログラムを記録した記録媒体。
  7. 【請求項7】 コンピュータを、ハードウェア記述言語
    を解析してAND/ORレベルの初期論理回路に変換し
    前記ハードウェア記述言語中の中間信号に対応する部分
    の境界情報を保持させることにより境界情報付き内部デ
    ータベースを作成するコンパイル手段,前記境界情報付
    き内部データベース中の境界情報の部分的な削除を行う
    定数伝搬手段,前記境界情報付き内部データベースから
    参照回数がN(正整数)以下の境界情報を削除する参照
    回数チェック手段,前記境界情報付き内部データベース
    中のAND/ORレベルの初期論理回路に対して前記境
    界情報を保持したままテクノロジー独立な最適化を行う
    テクノロジー独立な最適化手段,このテクノロジー独立
    な最適化手段により最適化されたAND/ORレベルの
    初期論理回路に前記境界情報を保持したまま半導体ライ
    ブラリ中の各ファンクションブロックを割り当てテクノ
    ロジーレベルの論理回路に変換するテクノロジーマッピ
    ング手段,このテクノロジーマッピング手段により得ら
    れたテクノロジーレベルの論理回路を前記境界情報を保
    持したまま、ファンアウト調整,ファンイン・リオーダ
    リング,タイミングを考慮したデコンポジション,イン
    バータ変更等の手法を用いて最適化するタイミング最適
    化手段,このタイミング最適化手段により最適化された
    テクノロジーレベルの論理回路を出力する論理回路出力
    手段,および前記境界情報付き内部データベース中のテ
    クノロジーレベルの論理回路を参照して前記ハードウェ
    ア記述言語中の中間信号と前記論理回路との対応を表す
    対応表を出力する対応表出力手段として機能させるため
    のプログラムを記録した記録媒体。
  8. 【請求項8】 前記コンパイル手段が、ハードウェア記
    述言語を解析してAND/ORレベルの初期論理回路に
    変換するトランスレート手段と、このトランスレート手
    段により変換されたAND/ORレベルの初期論理回路
    中の信号名付きノードを探索し、この信号名付きノード
    の境界情報を直前のノードに付け換えて該信号名付きノ
    ードを取り除く境界情報生成手段とから構成される請求
    項6または7記載の記録媒体。
JP9247484A 1997-08-29 1997-08-29 論理回路の自動合成方式 Expired - Fee Related JP2988521B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9247484A JP2988521B2 (ja) 1997-08-29 1997-08-29 論理回路の自動合成方式
US09/144,503 US6243852B1 (en) 1997-08-29 1998-08-31 Method of and an apparatus for logic circuit synthesis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9247484A JP2988521B2 (ja) 1997-08-29 1997-08-29 論理回路の自動合成方式

Publications (2)

Publication Number Publication Date
JPH1173447A true JPH1173447A (ja) 1999-03-16
JP2988521B2 JP2988521B2 (ja) 1999-12-13

Family

ID=17164157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9247484A Expired - Fee Related JP2988521B2 (ja) 1997-08-29 1997-08-29 論理回路の自動合成方式

Country Status (2)

Country Link
US (1) US6243852B1 (ja)
JP (1) JP2988521B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7461326B2 (en) 2004-07-08 2008-12-02 Nec Corporation Information processing method capable of detecting redundant circuits and displaying redundant circuits in the circuit design process
US9443047B2 (en) 2014-05-28 2016-09-13 International Business Machines Corporation Physical aware technology mapping in synthesis

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6557160B2 (en) * 1999-12-21 2003-04-29 Khalil Shalish Correlation of behavioral HDL signals
US6975976B1 (en) * 2000-03-20 2005-12-13 Nec Corporation Property specific testbench generation framework for circuit design validation by guided simulation
US6625789B2 (en) * 2000-04-14 2003-09-23 Hitachi, Ltd. Computer-readable medium for recording interface specifications
US20060085176A1 (en) * 2004-10-14 2006-04-20 Matthew Bellantoni Generating an optimized system-level simulation

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5258919A (en) * 1990-06-28 1993-11-02 National Semiconductor Corporation Structured logic design method using figures of merit and a flowchart methodology
US5740070A (en) * 1991-06-11 1998-04-14 Mega Chips Corporation Apparatus for automatically generating logic circuit
US5465216A (en) * 1993-06-02 1995-11-07 Intel Corporation Automatic design verification
US5544071A (en) * 1993-12-29 1996-08-06 Intel Corporation Critical path prediction for design of circuits
US5475605A (en) * 1994-05-26 1995-12-12 Cadence Design Systems, Inc. Timing analysis for logic optimization using target library delay values
US5537330A (en) * 1994-06-10 1996-07-16 International Business Machines Corporation Method for mapping in logic synthesis by logic classification
US5644498A (en) * 1995-01-25 1997-07-01 Lsi Logic Corporation Timing shell generation through netlist reduction
US5953519A (en) * 1995-06-12 1999-09-14 Fura; David A. Method and system for generating electronic hardware simulation models
JPH1063707A (ja) * 1996-08-15 1998-03-06 Nec Corp 論理回路検証装置および論理回路検証方法
JPH10222550A (ja) 1997-02-05 1998-08-21 Toshiba Corp 論理合成方法及び装置並びに論理合成プログラムを記録した記録媒体
US5892687A (en) * 1997-03-12 1999-04-06 Ambit Design Systems, Inc. Don't-- care logic

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7461326B2 (en) 2004-07-08 2008-12-02 Nec Corporation Information processing method capable of detecting redundant circuits and displaying redundant circuits in the circuit design process
US9443047B2 (en) 2014-05-28 2016-09-13 International Business Machines Corporation Physical aware technology mapping in synthesis

Also Published As

Publication number Publication date
JP2988521B2 (ja) 1999-12-13
US6243852B1 (en) 2001-06-05

Similar Documents

Publication Publication Date Title
US5644498A (en) Timing shell generation through netlist reduction
US6473885B1 (en) Digital circuit layout techniques using circuit decomposition and pin swapping
US6530073B2 (en) RTL annotation tool for layout induced netlist changes
US7360180B2 (en) Computer program product, method, and system for hardware model conversion
EP1451730A2 (en) Assertion handling for timing model extraction
US8117570B2 (en) Integrated circuit design phase technique with virtual power switch
US6360352B2 (en) Digital circuit layout techniques
US8589837B1 (en) Constructing inductive counterexamples in a multi-algorithm verification framework
US20020053069A1 (en) High-level synthesis method, high-level synthesis apparatus, method for producing logic circuit using the high-level synthesis method for logic circuit design, and recording medium
JP2988521B2 (ja) 論理回路の自動合成方式
JPH11502646A (ja) Asic設計における合成シェルの生成及び使用
US7624363B2 (en) Method and apparatus for performing equivalence checking on circuit designs having differing clocking and latching schemes
US6704916B1 (en) Method and apparatus for optimizing placement and routing and recording medium for recording program for optimizing placement and routing
US6253356B1 (en) System and method for improving logic synthesis in logic circuits
JP2008197883A (ja) Lsi解析プログラム、該プログラムを記録した記録媒体、lsi解析装置、およびlsi解析方法
JPH09311882A (ja) 論理回路検証支援装置
JP2980348B2 (ja) 論理回路の合成装置
US7350162B2 (en) Structure analytic program
Saldanha Performance and testability interactions in logic synthesis
JP2980761B2 (ja) 論理回路最適化装置
JP2923914B2 (ja) 集積回路のcadシステム
JP2001084283A (ja) 論理回路自動合成システムおよび論理回路自動合成方法
JPH09251483A (ja) セルライブラリ作成方法
JPH07319925A (ja) 論理回路の生成方法
Subrahmanyam et al. Specification and synthesis of a mixed-mode systems: Experiments in a VHDL environment

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071008

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20081008

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20091008

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees