JPH0241572A - 論理回路合成方式 - Google Patents
論理回路合成方式Info
- Publication number
- JPH0241572A JPH0241572A JP63193259A JP19325988A JPH0241572A JP H0241572 A JPH0241572 A JP H0241572A JP 63193259 A JP63193259 A JP 63193259A JP 19325988 A JP19325988 A JP 19325988A JP H0241572 A JPH0241572 A JP H0241572A
- Authority
- JP
- Japan
- Prior art keywords
- logic circuit
- synthesis
- error
- block
- critical
- 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
- 230000002194 synthesizing effect Effects 0.000 title abstract description 10
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 60
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 60
- 238000010586 diagram Methods 0.000 claims abstract description 12
- 230000001360 synchronised effect Effects 0.000 claims abstract description 5
- 238000000605 extraction Methods 0.000 claims description 15
- 238000001308 synthesis method Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 abstract description 7
- 239000000284 extract Substances 0.000 abstract description 5
- 238000000034 method Methods 0.000 description 8
- 239000000203 mixture Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000001427 coherent effect Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はレジスタトランスファレベルのハードウェア記
述言語または機能ブロック図から論理回路を合成する論
理回路合成方式に関し、特に遅延を考・慮した論理回路
合成方式に関する。
述言語または機能ブロック図から論理回路を合成する論
理回路合成方式に関し、特に遅延を考・慮した論理回路
合成方式に関する。
従来、この種の論理回路合成方式では、論理回路をテク
ノロジ独立なゲートのネットワークに展開した後に多段
論理生成等の手法を用いて段数の最小化を行うことによ
って最大遅延を最小化しようとしていた。
ノロジ独立なゲートのネットワークに展開した後に多段
論理生成等の手法を用いて段数の最小化を行うことによ
って最大遅延を最小化しようとしていた。
上述した従来の論理回路合成方式では、論理回路をゲー
トレベルに展開した後に段数の最小化を図るようにな9
ているので、機能ブロックの回路構成法を変更して大幅
に段数を改善するようなことはできないという欠点があ
る。
トレベルに展開した後に段数の最小化を図るようにな9
ているので、機能ブロックの回路構成法を変更して大幅
に段数を改善するようなことはできないという欠点があ
る。
本発明の目的は、上述の点に鑑み、機能ブロックの回路
構成法を格納した合成ルールベースに基づく論理合成と
遅延解析とを組み合わせることにより、ゲート数と最大
遅延時間とを小さくした論理回路の合成を行うことがで
きる論理回路合成方式を提供することにある。
構成法を格納した合成ルールベースに基づく論理合成と
遅延解析とを組み合わせることにより、ゲート数と最大
遅延時間とを小さくした論理回路の合成を行うことがで
きる論理回路合成方式を提供することにある。
本発明の論理回路合成方式は、レジスタトランスファレ
ベルのハードウェア記述言語または機能ブロック図で与
えられた同期式論理回路の仕様を入力として合成ルール
ヘースに格納された機能ブロックの合成ルールに従って
詳細論理回路を合成しネットリストと各機能ブロックに
適用した合成ルールリストとを出力する論理回路合成部
と、前記ネットリストを入力として遅延解析を行い最大
遅延エラーがある場合にはエラーパスリストを出力する
遅延解析部と、この遅延解析部の遅延解析により最大遅
延エラーがあった場合に前記合成ルールリストと前記エ
ラーパスリストとを入力としてエラーパス上のクリティ
カルな機能ブロックを抽出し当該機能ブロックについて
再度合成を行うように前記論理回路合成部に指令を出す
クリティカルブロック抽出部とを有する。
ベルのハードウェア記述言語または機能ブロック図で与
えられた同期式論理回路の仕様を入力として合成ルール
ヘースに格納された機能ブロックの合成ルールに従って
詳細論理回路を合成しネットリストと各機能ブロックに
適用した合成ルールリストとを出力する論理回路合成部
と、前記ネットリストを入力として遅延解析を行い最大
遅延エラーがある場合にはエラーパスリストを出力する
遅延解析部と、この遅延解析部の遅延解析により最大遅
延エラーがあった場合に前記合成ルールリストと前記エ
ラーパスリストとを入力としてエラーパス上のクリティ
カルな機能ブロックを抽出し当該機能ブロックについて
再度合成を行うように前記論理回路合成部に指令を出す
クリティカルブロック抽出部とを有する。
本発明の論理回路合成方式では、論理回路合成部がレジ
スタトランスファレベルのハードウェア記述言語または
機能ブロック図で与えられた同期式論理回路の仕様を入
力として合成ルールベースに格納された機能ブロックの
合成ルールに従って詳細論理回路を合成しネットリスト
と各機能ブロックに適用した合成ルールリストとを出力
し、遅延解析部がネットリストを入力として遅延解析を
行い最大遅延エラーがある場合にはエラーパスリストを
出力し、クリティカルブロック抽出部が遅延解析部の遅
延解析により最大遅延エラーがあった場合に合成ルール
リストとエラーパスリストとを入力としてエラーパス上
のクリティカルな機能ブロックを抽出し当該機能ブロッ
クについて再度合成を行うように論理回路合成部に指令
を出す。
スタトランスファレベルのハードウェア記述言語または
機能ブロック図で与えられた同期式論理回路の仕様を入
力として合成ルールベースに格納された機能ブロックの
合成ルールに従って詳細論理回路を合成しネットリスト
と各機能ブロックに適用した合成ルールリストとを出力
し、遅延解析部がネットリストを入力として遅延解析を
行い最大遅延エラーがある場合にはエラーパスリストを
出力し、クリティカルブロック抽出部が遅延解析部の遅
延解析により最大遅延エラーがあった場合に合成ルール
リストとエラーパスリストとを入力としてエラーパス上
のクリティカルな機能ブロックを抽出し当該機能ブロッ
クについて再度合成を行うように論理回路合成部に指令
を出す。
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明の一実施例の論理回路合成方式の構成
を示すブロック図である。本実施例の論理回路合成方式
は、回路仕様1と、合成ルールベース2と、論理回路合
成部3と、ネットリスト4と、合成ルールリスト5と、
遅延解析部6と、エラーパスリストアと、クリティカル
ブロック抽出部8と、クリティカルブロック9とから構
成されている。
を示すブロック図である。本実施例の論理回路合成方式
は、回路仕様1と、合成ルールベース2と、論理回路合
成部3と、ネットリスト4と、合成ルールリスト5と、
遅延解析部6と、エラーパスリストアと、クリティカル
ブロック抽出部8と、クリティカルブロック9とから構
成されている。
回路仕様1は、レジスタトランスファレベルのハードウ
ェア記述言語または機能ブロック図で記述した同期式論
理回路の仕様である。
ェア記述言語または機能ブロック図で記述した同期式論
理回路の仕様である。
合成ルールベース2には、各種の機能ブロックの回路構
成法が格納されている。例えば、加算器の合成ルールと
しては、リップルキャリ一方式。
成法が格納されている。例えば、加算器の合成ルールと
しては、リップルキャリ一方式。
キャリー予測方式等の構成法が格納されている。
論理回路合成部3は、回路仕様1を入力として合成ルー
ルベース2に格納された機能ブロックの合成ルールに従
って詳細論理回路を合成し、ネットリスト4と各機能ブ
ロックに適用した合成ルールリスト5とを出力する。
ルベース2に格納された機能ブロックの合成ルールに従
って詳細論理回路を合成し、ネットリスト4と各機能ブ
ロックに適用した合成ルールリスト5とを出力する。
遅延解析部6は、ネットリスト4を入力として遅延解析
を行い、最大遅延エラーがある場合にはエラーパスリス
トアを出力する。
を行い、最大遅延エラーがある場合にはエラーパスリス
トアを出力する。
クリティカルブロック抽出部8は、遅延解析部6の遅延
解析により最大遅延エラーがあった場合に、合成ルール
リスト5とエラーパスリストアとを入力としてエラーパ
ス上のクリティカルな機能ブロックを抽出し、抽出され
た機能ブロックをクリティカルブロック9として再度合
成を行うように論理回路合成部3に指令を出す。
解析により最大遅延エラーがあった場合に、合成ルール
リスト5とエラーパスリストアとを入力としてエラーパ
ス上のクリティカルな機能ブロックを抽出し、抽出され
た機能ブロックをクリティカルブロック9として再度合
成を行うように論理回路合成部3に指令を出す。
第2図を参照すると、クリティカルブロック抽出部8は
、ブロックパス抽出部11と、最大段数ブロックサーチ
部12とから構成されている。
、ブロックパス抽出部11と、最大段数ブロックサーチ
部12とから構成されている。
次に、このように構成された本実施例の論理回路合成方
式の動作について説明する。
式の動作について説明する。
論理回路合成部3は、回路仕様1を入力として詳細論理
回路を合成し、ネットリスト4を出力する。この際、回
路仕様1がハードウェア記述言語で与えられた場合には
、論理回路合成部3は、並列に動作しない演算、まとま
りのある論理等を機能ブロックにまとめる。この後、論
理回路合成部3は、各機能ブロックに対して合成ルール
ベース2内の回路構成法を適用して詳細論理回路を合成
する。1つの機能ブロックに適用できる合成ルールが複
数ある場合には、合成後のゲート数が最も少ない合成ル
ールを適用する。各機能ブロックに対して適用した合成
ルールは、合成ルールリスト5として出力する。合成ル
ールリスト5には、各機能ブロックに対して適用した合
成ルール名とその機能ブロックの入出力信号名とを出力
する。
回路を合成し、ネットリスト4を出力する。この際、回
路仕様1がハードウェア記述言語で与えられた場合には
、論理回路合成部3は、並列に動作しない演算、まとま
りのある論理等を機能ブロックにまとめる。この後、論
理回路合成部3は、各機能ブロックに対して合成ルール
ベース2内の回路構成法を適用して詳細論理回路を合成
する。1つの機能ブロックに適用できる合成ルールが複
数ある場合には、合成後のゲート数が最も少ない合成ル
ールを適用する。各機能ブロックに対して適用した合成
ルールは、合成ルールリスト5として出力する。合成ル
ールリスト5には、各機能ブロックに対して適用した合
成ルール名とその機能ブロックの入出力信号名とを出力
する。
次に、遅延解析部6は、合成結果のネットリスト4とク
ロックサイクル値とを入力として、レジスタ間およびレ
ジスタと入出力端子間の遅延解析を行う。この結果、ク
ロックサイクル値より大きい伝播遅延をもつパスがあっ
た場合には、最大遅延エラーがあったものとみなし、こ
のパスの経路上の信号名をエラーパスリストアに出力す
る。
ロックサイクル値とを入力として、レジスタ間およびレ
ジスタと入出力端子間の遅延解析を行う。この結果、ク
ロックサイクル値より大きい伝播遅延をもつパスがあっ
た場合には、最大遅延エラーがあったものとみなし、こ
のパスの経路上の信号名をエラーパスリストアに出力す
る。
遅延解析部6の遅延解析により最大遅延エラーがあった
場合には、クリティカルブロック抽出部8は、エラーパ
スに対応する機能ブロックのパスを求め、それらの機能
ブロックのうちの最も多くの段数をもつ機能ブロックを
クリティカルブロック9とみなして、その機能ブロック
を再度合成するように論理回路合成部3に指令する。
場合には、クリティカルブロック抽出部8は、エラーパ
スに対応する機能ブロックのパスを求め、それらの機能
ブロックのうちの最も多くの段数をもつ機能ブロックを
クリティカルブロック9とみなして、その機能ブロック
を再度合成するように論理回路合成部3に指令する。
ここで、クリティカルブロック抽出部8の処理を、第3
図に示す機能ブロック図を例にとってさらに詳細に説明
する。なお、第3図の機能ブロック図は、制御レジスタ
21.データレジスタA、データレジスタB、制御ブロ
ック24.加算器25.シフタ26およびデータレジス
タCから構成されている。
図に示す機能ブロック図を例にとってさらに詳細に説明
する。なお、第3図の機能ブロック図は、制御レジスタ
21.データレジスタA、データレジスタB、制御ブロ
ック24.加算器25.シフタ26およびデータレジス
タCから構成されている。
遅延解析部6の処理の結果、第3図のパス28、すなわ
ち制御レジスタ21.制御ブロック24.加算器25.
シフタ26およびデータレジスタC27を通るパスがエ
ラーパスであることが判明し、エラーパスリストアに出
力されたとする。このエラーパスは、ゲートレベルに展
開されたときの信号名の系列として出力されているため
、第3図の制御レジスタ21.制御ブロック24.加算
器25.シフタ26およびデータレジスタC27を通る
パスであることは、この時点ではわからない。
ち制御レジスタ21.制御ブロック24.加算器25.
シフタ26およびデータレジスタC27を通るパスがエ
ラーパスであることが判明し、エラーパスリストアに出
力されたとする。このエラーパスは、ゲートレベルに展
開されたときの信号名の系列として出力されているため
、第3図の制御レジスタ21.制御ブロック24.加算
器25.シフタ26およびデータレジスタC27を通る
パスであることは、この時点ではわからない。
まず、クリティカルブロック抽出部8のブロックパス抽
出部11は、信号名の系列で表現されたパス28をエラ
ーパスリストアから入力し、合成ルールリスト5を参照
してブロックパスを求める。合成ルールリスト5には、
各機能ブロックの入出力信号名が出力されているので、
これを利用してブロックパスを求めることができる。第
3図の例でいうと、エラーパス28は制御レジスタ21
.制御ブロック24.加算器25.シフタ26およびデ
ータレジスタC27を通るパスであることがわかる。
出部11は、信号名の系列で表現されたパス28をエラ
ーパスリストアから入力し、合成ルールリスト5を参照
してブロックパスを求める。合成ルールリスト5には、
各機能ブロックの入出力信号名が出力されているので、
これを利用してブロックパスを求めることができる。第
3図の例でいうと、エラーパス28は制御レジスタ21
.制御ブロック24.加算器25.シフタ26およびデ
ータレジスタC27を通るパスであることがわかる。
次に、クリティカルブロック抽出部8の最大段数ブロッ
クサーチ部12は、ブロックパスに含まれる機能ブロッ
クのうちの最も多くの段数をもつ機能ブロックをクリテ
ィカルブロック9として出力するとともに、論理回路合
成部3に対してクリティカルブロック9を再度合成する
ように指令を出す0合成ルールリスト5には、クリティ
カルブロック9を合成したときに適用した合成ルール名
が保存されているために、その合成ルール名も論理回路
合成部3に渡す。
クサーチ部12は、ブロックパスに含まれる機能ブロッ
クのうちの最も多くの段数をもつ機能ブロックをクリテ
ィカルブロック9として出力するとともに、論理回路合
成部3に対してクリティカルブロック9を再度合成する
ように指令を出す0合成ルールリスト5には、クリティ
カルブロック9を合成したときに適用した合成ルール名
が保存されているために、その合成ルール名も論理回路
合成部3に渡す。
論理回路合成部3は、クリティカルブロック9に対して
前回適用した合成ルールよりも遅延の少ない回路を構成
する合成ルールを適用して、クリティカルブロック9の
みの合成を再度行ってネットリスト4を変更する。
前回適用した合成ルールよりも遅延の少ない回路を構成
する合成ルールを適用して、クリティカルブロック9の
みの合成を再度行ってネットリスト4を変更する。
この結果、最大遅延が改善された詳細論理回路が得られ
る。
る。
以上説明したように本発明は、論理回路合成部。
遅延解析部およびクリティカルブロック抽出部を設けた
ことにより、機能ブロックの回路構成法を格納した合成
ルールベースに基づく論理合成と遅延解析とを組み合わ
せて、ゲート数と最大遅延時間とを小さくした論理回路
の合成を行うことができる効果がある。
ことにより、機能ブロックの回路構成法を格納した合成
ルールベースに基づく論理合成と遅延解析とを組み合わ
せて、ゲート数と最大遅延時間とを小さくした論理回路
の合成を行うことができる効果がある。
第1図は本発明の一実施例の論理回路合成方式の構成を
示すブロック図、 第2図は第1図中のクリティカルブロック抽出部のさら
に詳細な構成を示すブロック図、第3図は本実施例の論
理回路合成方式の動作を説明するための論理回路の機能
ブロックの一例を示す図である。 図において、 1・・・回路仕様、 2・・・合成ルールベース、 3・・・論理回路合成部、 4・・・ネットリスト、 5・・・合成ルールリスト、 6・・・遅延解析部、 7・・・エラーパスリスト、 8・・・クリティカルブロック抽出部、9・・・クリテ
ィカルブロック、 11・・・ブロックパス抽出部、 12・・・最大段数ブロックサーチ部、21・・・制御
レジスタ、 22・・・データレジスタA。 23・ 24・ 25・ 26・ 27・ データレジスタ81 制御ブロック、 加算器、 シフタ、 データレジスタCである。
示すブロック図、 第2図は第1図中のクリティカルブロック抽出部のさら
に詳細な構成を示すブロック図、第3図は本実施例の論
理回路合成方式の動作を説明するための論理回路の機能
ブロックの一例を示す図である。 図において、 1・・・回路仕様、 2・・・合成ルールベース、 3・・・論理回路合成部、 4・・・ネットリスト、 5・・・合成ルールリスト、 6・・・遅延解析部、 7・・・エラーパスリスト、 8・・・クリティカルブロック抽出部、9・・・クリテ
ィカルブロック、 11・・・ブロックパス抽出部、 12・・・最大段数ブロックサーチ部、21・・・制御
レジスタ、 22・・・データレジスタA。 23・ 24・ 25・ 26・ 27・ データレジスタ81 制御ブロック、 加算器、 シフタ、 データレジスタCである。
Claims (1)
- 【特許請求の範囲】 レジスタトランスファレベルのハードウェア記述言語ま
たは機能ブロック図で与えられた同期式論理回路の仕様
を入力として合成ルールベースに格納された機能ブロッ
クの合成ルールに従って詳細論理回路を合成しネットリ
ストと各機能ブロックに適用した合成ルールリストとを
出力する論理回路合成部と、 前記ネットリストを入力として遅延解析を行い最大遅延
エラーがある場合にはエラーパスリストを出力する遅延
解析部と、 この遅延解析部の遅延解析により最大遅延エラーがあっ
た場合に前記合成ルールリストと前記エラーパスリスト
とを入力としてエラーパス上のクリティカルな機能ブロ
ックを抽出し当該機能ブロックについて再度合成を行う
ように前記論理回路合成部に指令を出すクリティカルブ
ロック抽出部を有することを特徴とする論理回路合成方
式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63193259A JPH0241572A (ja) | 1988-08-02 | 1988-08-02 | 論理回路合成方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63193259A JPH0241572A (ja) | 1988-08-02 | 1988-08-02 | 論理回路合成方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0241572A true JPH0241572A (ja) | 1990-02-09 |
Family
ID=16304972
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63193259A Pending JPH0241572A (ja) | 1988-08-02 | 1988-08-02 | 論理回路合成方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0241572A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03292573A (ja) * | 1990-04-11 | 1991-12-24 | Koufu Nippon Denki Kk | 論理設計検証システム |
| US5631915A (en) * | 1995-03-31 | 1997-05-20 | International Business Machines Corporation | Method of correcting single errors |
-
1988
- 1988-08-02 JP JP63193259A patent/JPH0241572A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03292573A (ja) * | 1990-04-11 | 1991-12-24 | Koufu Nippon Denki Kk | 論理設計検証システム |
| US5631915A (en) * | 1995-03-31 | 1997-05-20 | International Business Machines Corporation | Method of correcting single errors |
| US5774481A (en) * | 1995-03-31 | 1998-06-30 | International Business Machines Corporation | Reduced gate error detection and correction circuit |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20160299998A1 (en) | Logic circuit generation device and method | |
| Yevtushenko et al. | Solution of parallel language equations for logic synthesis | |
| US6964027B2 (en) | System and method for optimizing exceptions | |
| JPH10134091A (ja) | 論理エミュレーションの最適化回路生成法 | |
| JPH0241572A (ja) | 論理回路合成方式 | |
| US5740070A (en) | Apparatus for automatically generating logic circuit | |
| Klimowicz | Performance targeted minimization of incompletely specified finite state machines for implementation in FPGA devices | |
| Sarma et al. | High-level synthesis: Technology transfer to industry | |
| Klimowicz | Combined State Splitting and Merging for Implementation of Fast Finite State Machines in FPGA | |
| US6237125B1 (en) | High-level synthesis method including processing for optimizing arithmetic sequence of an operation string | |
| KR100594965B1 (ko) | 애플리케이션 특수 명령어 세트 프로세서 합성을 위한분기/병합 노드 최적화 합성 방법 | |
| Oliveira et al. | Design of Quasi Delay Insensitive Combinational Circuits Based on Optimized DIMS | |
| Klimowicz | Area targeted minimization method of finite state machines for FPGA devices | |
| JP2005258917A (ja) | 集積回路の設計支援システムおよび設計支援プログラム | |
| Salauyou et al. | Digital Device Design by ASMD-FSMD Technique | |
| JP2714015B2 (ja) | 論理回路合成装置 | |
| JPH02311959A (ja) | 論理回路の自動合成装置 | |
| Ecker et al. | State look ahead technique for cycle optimization of interacting finite state Moore machines | |
| KR100396237B1 (ko) | 반복적 과도 근사 도달 상태 계산 방법 및 장치 | |
| JP2519336B2 (ja) | テクノロジ―マッピング方式 | |
| JP3191183B2 (ja) | スキャンテスト制御ゲート挿入方式 | |
| Ciesielski | Functional retiming: A new approach to sequential synthesis and optimization | |
| FhG | a Synthesis Tool for Speed Optimization | |
| JP2835082B2 (ja) | 論理回路合成装置 | |
| Gopalakrishnan et al. | PLA realizations for VLSI state machines |