JP3033760B1 - 論理回路合成装置及びその合成方法 - Google Patents
論理回路合成装置及びその合成方法Info
- Publication number
- JP3033760B1 JP3033760B1 JP11041989A JP4198999A JP3033760B1 JP 3033760 B1 JP3033760 B1 JP 3033760B1 JP 11041989 A JP11041989 A JP 11041989A JP 4198999 A JP4198999 A JP 4198999A JP 3033760 B1 JP3033760 B1 JP 3033760B1
- Authority
- JP
- Japan
- Prior art keywords
- inverter chain
- logic
- logic circuit
- deleted
- synthesis
- 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.)
- Expired - Lifetime
Links
Abstract
【要約】
【課題】 論理合成処理で発生した不要なインバータチ
ェーンを自動的に削除する。 【解決手段】 処理が開始されると、HDLが読み込ま
れ(S100)、設計制約条件を設定し(S200)、
最適化処理を行い、ゲートレベルのネットリストを生成
する(S300)。このネットリストにインバーターチ
ェーンが存在するか否かを調べ、インバーターチェーン
があればこれを削除する(S400)。ここでは、イン
バーターチェーンの発生原因及びインバーターチェーン
が必要有無にかかわらず、検出したインバーターチェー
ンを自動的に削除する。続いて、修正したネットリスト
に対して各種レポートを出力し(S500)、修正後の
ネットリストを出力する(S600)。
ェーンを自動的に削除する。 【解決手段】 処理が開始されると、HDLが読み込ま
れ(S100)、設計制約条件を設定し(S200)、
最適化処理を行い、ゲートレベルのネットリストを生成
する(S300)。このネットリストにインバーターチ
ェーンが存在するか否かを調べ、インバーターチェーン
があればこれを削除する(S400)。ここでは、イン
バーターチェーンの発生原因及びインバーターチェーン
が必要有無にかかわらず、検出したインバーターチェー
ンを自動的に削除する。続いて、修正したネットリスト
に対して各種レポートを出力し(S500)、修正後の
ネットリストを出力する(S600)。
Description
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ハードウエアの設
計自動化技術に関し、特に論理回路を合成する論理回路
合成装置及びその合成方法に関するものである。
計自動化技術に関し、特に論理回路を合成する論理回路
合成装置及びその合成方法に関するものである。
【0002】
【従来の技術】現在のコンピュータによる設計自動化技
術では、ハードウエア動作をHDL(ハードウエア記述
言語: Hardware Description
Language)で記述し、論理検証した後、論理回
路合成装置でゲートレベルのネットリストに変換する。
従来の論理回路合成装置について説明する。図7は、従
来の論理回路合成装置の一般的な処理のフローチャート
である。従来の論理回路合成装置では、まず、HDL読
み込み手順として、RT(レジスタートランスファー)
レベルで記述されたHDLを読み込んで構文解析、HD
Lの記述ミス等の確認を行い、初期マッピングを行う
(S710)。続いて、動作環境、設計ルール、面積と
タイミング等の制約条件を設定し(S720)、平坦
化、構造化及びマッピング処理を行う最適化処理を実行
する(S730)。最適化処理で行われた論理合成結果
の回路に対して回路品質確認を行うための各種レポート
を出力し(S740)、合成結果の回路データであるネ
ットリストを出力する(S750)。
術では、ハードウエア動作をHDL(ハードウエア記述
言語: Hardware Description
Language)で記述し、論理検証した後、論理回
路合成装置でゲートレベルのネットリストに変換する。
従来の論理回路合成装置について説明する。図7は、従
来の論理回路合成装置の一般的な処理のフローチャート
である。従来の論理回路合成装置では、まず、HDL読
み込み手順として、RT(レジスタートランスファー)
レベルで記述されたHDLを読み込んで構文解析、HD
Lの記述ミス等の確認を行い、初期マッピングを行う
(S710)。続いて、動作環境、設計ルール、面積と
タイミング等の制約条件を設定し(S720)、平坦
化、構造化及びマッピング処理を行う最適化処理を実行
する(S730)。最適化処理で行われた論理合成結果
の回路に対して回路品質確認を行うための各種レポート
を出力し(S740)、合成結果の回路データであるネ
ットリストを出力する(S750)。
【0003】このような従来の論理回路合成装置は、設
計制約条件を記述したスクリプトファイルに間違いがあ
れば、合成された回路に反映され、不具合が作り込まれ
てしまう。その不具合の一つにインバータチェーン(不
必要な論理ゲート素子)発生が挙げられる。インバータ
チェーンは、バッファやインバーター回路ブロックが多
段に直列接続された回路構成で、論理的な変化はなく、
膨大な遅延量を持つため、回路の正常動作を阻害する。
ここに、インバータチェーンとは、論理的な変化がなく
信号遅延を目的としたバッファやインバータ回路ブロッ
クが、多段に直列接続された論理構成で回路動作上の弊
害になる不必要な論理ゲート素子のことをいう。
計制約条件を記述したスクリプトファイルに間違いがあ
れば、合成された回路に反映され、不具合が作り込まれ
てしまう。その不具合の一つにインバータチェーン(不
必要な論理ゲート素子)発生が挙げられる。インバータ
チェーンは、バッファやインバーター回路ブロックが多
段に直列接続された回路構成で、論理的な変化はなく、
膨大な遅延量を持つため、回路の正常動作を阻害する。
ここに、インバータチェーンとは、論理的な変化がなく
信号遅延を目的としたバッファやインバータ回路ブロッ
クが、多段に直列接続された論理構成で回路動作上の弊
害になる不必要な論理ゲート素子のことをいう。
【0004】インバータチェーンの生じる例について説
明する。図8は、インバーターチェーンの発生例の回路
図である。図8(a)は、インバーターチェーンのない
回路である。これは、DATA信号とCLK信号の反転
論理をフリップフロップ(以下、FF1とする)に入力
し、CLK信号の立下がりエッジでDATA信号を取り
込む論理回路である。このように、「CLK信号の立下
りエッジでDATA信号を取り込む」回路記述がされて
いても、合成実行を行う設計制約条件の記述にDATA
ピンとCLKピンの関係を明示していない場合、インバ
ーターチェーンが生成される。図8(b)は、インバー
ターチェーンの生成された回路である。この場合、DA
TAピンとFF1のD入力であるX点間にインバーター
チェーンが発生する。インバーターチェーンが発生する
理由について説明する。図9は、図8の論理回路のタイ
ミングチャートである。論理回路合成装置は、T1時刻
で入力されるDATA信号をFF1のHOLD Tim
eマージン確保のために、T2時刻まで遅延させる。こ
のため、CLK動作周波数の1/2周期分の遅延量を持
つインバーターチェーンが発生する。従来、インバータ
ーチェーンは論理合成の後工程である遅延シュミレーシ
ョンで発見され、設計者によって削除されていた。ま
た、論理回路に発生した冗長部分を自動的に削除する論
理回路の合成方法が特開平4−153780号に開示さ
れている。
明する。図8は、インバーターチェーンの発生例の回路
図である。図8(a)は、インバーターチェーンのない
回路である。これは、DATA信号とCLK信号の反転
論理をフリップフロップ(以下、FF1とする)に入力
し、CLK信号の立下がりエッジでDATA信号を取り
込む論理回路である。このように、「CLK信号の立下
りエッジでDATA信号を取り込む」回路記述がされて
いても、合成実行を行う設計制約条件の記述にDATA
ピンとCLKピンの関係を明示していない場合、インバ
ーターチェーンが生成される。図8(b)は、インバー
ターチェーンの生成された回路である。この場合、DA
TAピンとFF1のD入力であるX点間にインバーター
チェーンが発生する。インバーターチェーンが発生する
理由について説明する。図9は、図8の論理回路のタイ
ミングチャートである。論理回路合成装置は、T1時刻
で入力されるDATA信号をFF1のHOLD Tim
eマージン確保のために、T2時刻まで遅延させる。こ
のため、CLK動作周波数の1/2周期分の遅延量を持
つインバーターチェーンが発生する。従来、インバータ
ーチェーンは論理合成の後工程である遅延シュミレーシ
ョンで発見され、設計者によって削除されていた。ま
た、論理回路に発生した冗長部分を自動的に削除する論
理回路の合成方法が特開平4−153780号に開示さ
れている。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
論理回路合成装置では、インバータチェーンを検出しに
くいという問題がある。上記説明のように、インバータ
チェーンは、設計制約条件(具体的にはタイミングの制
約)の不備、すなわちコマンドの誤理解や記述ミス等、
が原因であるため、合成結果の確認を行うタイミングレ
ポートでの検出が不可能である。従来の論理回路合成装
置での遅延シミュレーションにより確認する方法は、特
に、大規模化する回路に対して遅延シミュレーション実
行時間が膨大になり、全パスを網羅することが現実的で
ないという問題がある。さらに、シミュレーション確認
では、タイミング的なものより論理的な確認を重視する
傾向があり、遅延シミュレーションが必ずしも不具合回
路を抽出できる確認方法であるとは言えない。また、抽
出できた場合であっても、遅延シミュレーションと論理
合成の工程を行き来することになるため、開発工数が増
大化するという問題がある。
論理回路合成装置では、インバータチェーンを検出しに
くいという問題がある。上記説明のように、インバータ
チェーンは、設計制約条件(具体的にはタイミングの制
約)の不備、すなわちコマンドの誤理解や記述ミス等、
が原因であるため、合成結果の確認を行うタイミングレ
ポートでの検出が不可能である。従来の論理回路合成装
置での遅延シミュレーションにより確認する方法は、特
に、大規模化する回路に対して遅延シミュレーション実
行時間が膨大になり、全パスを網羅することが現実的で
ないという問題がある。さらに、シミュレーション確認
では、タイミング的なものより論理的な確認を重視する
傾向があり、遅延シミュレーションが必ずしも不具合回
路を抽出できる確認方法であるとは言えない。また、抽
出できた場合であっても、遅延シミュレーションと論理
合成の工程を行き来することになるため、開発工数が増
大化するという問題がある。
【0006】また、特開平4−153780号に開示の
論理回路合成方法は、合成処理に与える設計制約内での
論理もしくはゲート最適化方法であり、与えられたタイ
ミング制約を守ることが前提となっている。このため、
設計制約の記述ミスや制約条件の不足などにより発生す
るインバータチェーンを削除することはできない。
論理回路合成方法は、合成処理に与える設計制約内での
論理もしくはゲート最適化方法であり、与えられたタイ
ミング制約を守ることが前提となっている。このため、
設計制約の記述ミスや制約条件の不足などにより発生す
るインバータチェーンを削除することはできない。
【0007】本発明はこのような点に鑑みてなされたも
のであり、論理合成処理で発生した不要なインバータチ
ェーンを自動的に削除する論理回路合成装置及び論理合
成方法を提供することを目的とする。
のであり、論理合成処理で発生した不要なインバータチ
ェーンを自動的に削除する論理回路合成装置及び論理合
成方法を提供することを目的とする。
【0008】
【課題を解決するための手段】前記目的を達成するた
め、本発明は、論理回路を自動生成する論理回路合成装
置において、論理の動作を記述した動作記述ファイルを
読み込んで構文解析し初期マッピングを行う動作記述フ
ァイル読込手段と、設計ルールを示した設計制約条件と
最終的にマッピングするテクノロジライブラリーを入力
し最適化処理を行う最適化処理手段と、不必要な論理ゲ
ート素子であるインバーターチェ−ンを検出し、これを
削除するインバーターチェーン削除手段と、合成結果の
回路データ及び論理合成結果の回路に対する各種レポー
トを出力する出力手段と、を有し、前記インバーターチ
ェーンを削除した場合は、前記各種レポートのうちのひ
とつであるタイミングレポートにエラー情報が表示され
る論理回路合成装置、であることを特徴とする。このよ
うな構成の論理回路合成装置は、最適化後の出力データ
にインバーターチェーンが存在するかどうかを検出し、
インバーターチェーンが発生していれば、自動的にこれ
を削除する。このため、不要なインバーターチェーンが
削除され、正常な論理回路を生成することができる。
め、本発明は、論理回路を自動生成する論理回路合成装
置において、論理の動作を記述した動作記述ファイルを
読み込んで構文解析し初期マッピングを行う動作記述フ
ァイル読込手段と、設計ルールを示した設計制約条件と
最終的にマッピングするテクノロジライブラリーを入力
し最適化処理を行う最適化処理手段と、不必要な論理ゲ
ート素子であるインバーターチェ−ンを検出し、これを
削除するインバーターチェーン削除手段と、合成結果の
回路データ及び論理合成結果の回路に対する各種レポー
トを出力する出力手段と、を有し、前記インバーターチ
ェーンを削除した場合は、前記各種レポートのうちのひ
とつであるタイミングレポートにエラー情報が表示され
る論理回路合成装置、であることを特徴とする。このよ
うな構成の論理回路合成装置は、最適化後の出力データ
にインバーターチェーンが存在するかどうかを検出し、
インバーターチェーンが発生していれば、自動的にこれ
を削除する。このため、不要なインバーターチェーンが
削除され、正常な論理回路を生成することができる。
【0009】 また、本発明のうち請求項2記載の発明
は、請求項1記載のインバーターチェーン削除手段が、
削除対象とする所定のインバーターチェーンを設定する
削除対象設定手段と、前記削除対象に合致するインバー
ターチェーンを抽出し削除する設定インバーターチェー
ン削除手段を有する論理合成装置であることを特徴とす
る。このような構成の論理回路合成装置は、削除の対象
とするインバーターチェーンを指定できることにより、
指定されたインバーターチェーンのみを抽出し削除する
ことができる。このため、設計者が不要と考える所望の
インバーターチェーンを削除することができ、より正確
な論理回路合成を生成することができる。
は、請求項1記載のインバーターチェーン削除手段が、
削除対象とする所定のインバーターチェーンを設定する
削除対象設定手段と、前記削除対象に合致するインバー
ターチェーンを抽出し削除する設定インバーターチェー
ン削除手段を有する論理合成装置であることを特徴とす
る。このような構成の論理回路合成装置は、削除の対象
とするインバーターチェーンを指定できることにより、
指定されたインバーターチェーンのみを抽出し削除する
ことができる。このため、設計者が不要と考える所望の
インバーターチェーンを削除することができ、より正確
な論理回路合成を生成することができる。
【0010】 また、本発明のうち請求項3記載の発明
は、請求項2記載の前記削除対象設定手段が、削除対象
とする所定のインバーターチェーンを構成するプリミテ
ィブブロックを設定する論理回路合成装置であることを
特徴とする。このような構成の論理合成装置は、削除対
象とするインバーターチェーンの構成を指定することに
より、所望のインバーターチェーンを削除することが可
能となり、正確に論理回路の合成を行うことができる。
また、本発明のうち請求項4記載の発明は、請求項2又
は3記載の前記削除対象設定手段が、さらに削除対象と
する所定のインバーターチェーンの遅延時間を設定する
論理回路合成装置であることを特徴とする。このような
構成の論理合成装置は、設定された遅延時間を超えるイ
ンバーターチェーンのみを削除することができ、正確な
論理回路の合成が可能である。
は、請求項2記載の前記削除対象設定手段が、削除対象
とする所定のインバーターチェーンを構成するプリミテ
ィブブロックを設定する論理回路合成装置であることを
特徴とする。このような構成の論理合成装置は、削除対
象とするインバーターチェーンの構成を指定することに
より、所望のインバーターチェーンを削除することが可
能となり、正確に論理回路の合成を行うことができる。
また、本発明のうち請求項4記載の発明は、請求項2又
は3記載の前記削除対象設定手段が、さらに削除対象と
する所定のインバーターチェーンの遅延時間を設定する
論理回路合成装置であることを特徴とする。このような
構成の論理合成装置は、設定された遅延時間を超えるイ
ンバーターチェーンのみを削除することができ、正確な
論理回路の合成が可能である。
【0011】 また、本発明のうち請求項5記載の発明
は、請求項2又は3又は4記載の前記削除対象設定手段
が、削除対象とする所定のインバーターチェーンを構成
するプリミティブブロックの段数を設定する論理回路合
成装置であることを特徴とする。このような構成の論理
合成装置は、インバーターチェーンを構成するブロック
が設定された段数を超えた場合のみ、インバーターチェ
ーンを削除するため、正確な論理回路の合成が可能であ
る。また、本発明のうち請求項6記載の発明は、請求項
2又は3又は4又は5記載の前記設定インバーターチェ
ン削除手段が、階層構造を有する階層モジュールの各階
層毎に前記削除対象に合致する所定のインバーターチェ
ーンを抽出し削除する論理回路合成装置であることを特
徴とする。このような構成の論理合成装置は、階層構造
であるモジュールについて、各階層毎に設定されたイン
バーターチェーンを探して削除することが可能である。
は、請求項2又は3又は4記載の前記削除対象設定手段
が、削除対象とする所定のインバーターチェーンを構成
するプリミティブブロックの段数を設定する論理回路合
成装置であることを特徴とする。このような構成の論理
合成装置は、インバーターチェーンを構成するブロック
が設定された段数を超えた場合のみ、インバーターチェ
ーンを削除するため、正確な論理回路の合成が可能であ
る。また、本発明のうち請求項6記載の発明は、請求項
2又は3又は4又は5記載の前記設定インバーターチェ
ン削除手段が、階層構造を有する階層モジュールの各階
層毎に前記削除対象に合致する所定のインバーターチェ
ーンを抽出し削除する論理回路合成装置であることを特
徴とする。このような構成の論理合成装置は、階層構造
であるモジュールについて、各階層毎に設定されたイン
バーターチェーンを探して削除することが可能である。
【0012】 また、本発明のうち請求項7記載の発明
は、論理回路を自動生成する論理回路合成方法におい
て、論理の動作を記述した動作記述ファイルを読み込ん
で構文解析し初期マッピングを行う手順と、設計ルール
を示した設計制約条件と最終的にマッピングするテクノ
ロジライブラリーを入力し最適化処理を行う手順と、イ
ンバーターチェ−ンを検出しこれを削除する手順と、合
成結果の回路データ及び論理合成結果の回路に対する各
種レポートを出力する手順と、を有し、前記インバータ
ーチェーンを削除した場合は、前記各種レポートのうち
のひとつであるタイミングレポートにエラー情報が表示
される論理回路合成方法であることを特徴とする。この
ような手順の論理回路合成方法は、最適化後の出力デー
タにインバーターチェーンが存在するかどうかを検出
し、インバーターチェーンが発生していれば、自動的に
これを削除する。このため、不要なインバーターチェー
ンが削除され、正常な論理回路を生成することができ
る。
は、論理回路を自動生成する論理回路合成方法におい
て、論理の動作を記述した動作記述ファイルを読み込ん
で構文解析し初期マッピングを行う手順と、設計ルール
を示した設計制約条件と最終的にマッピングするテクノ
ロジライブラリーを入力し最適化処理を行う手順と、イ
ンバーターチェ−ンを検出しこれを削除する手順と、合
成結果の回路データ及び論理合成結果の回路に対する各
種レポートを出力する手順と、を有し、前記インバータ
ーチェーンを削除した場合は、前記各種レポートのうち
のひとつであるタイミングレポートにエラー情報が表示
される論理回路合成方法であることを特徴とする。この
ような手順の論理回路合成方法は、最適化後の出力デー
タにインバーターチェーンが存在するかどうかを検出
し、インバーターチェーンが発生していれば、自動的に
これを削除する。このため、不要なインバーターチェー
ンが削除され、正常な論理回路を生成することができ
る。
【0013】 また、本発明のうち請求項8記載の発明
は、請求項7記載のインバーターチェーンを検出しこれ
を削除する手順は、削除対象とする所定のインバーター
チェーンを設定し、設定した削除対象に合致するインバ
ーターチェーンを抽出し削除する論理回路合成方法であ
ることを特徴とする。このような手順の論理回路合成方
法は、設定した所望のインバーターチェーンのみを抽出
し削除することができる。また、本発明のうち請求項9
記載の発明は、請求項8記載の所定のインバーターチェ
ーンを検出しこれを削除する手順は、削除対象とするイ
ンバーターチェーンを構成するプリミティブブロックを
設定する論理回路合成方法であることを特徴とする。こ
のような手順の論理回路合成方法は、所望の構成のイン
バーターチェーンを削除することが可能となり、正確に
論理回路の合成を行うことができる。
は、請求項7記載のインバーターチェーンを検出しこれ
を削除する手順は、削除対象とする所定のインバーター
チェーンを設定し、設定した削除対象に合致するインバ
ーターチェーンを抽出し削除する論理回路合成方法であ
ることを特徴とする。このような手順の論理回路合成方
法は、設定した所望のインバーターチェーンのみを抽出
し削除することができる。また、本発明のうち請求項9
記載の発明は、請求項8記載の所定のインバーターチェ
ーンを検出しこれを削除する手順は、削除対象とするイ
ンバーターチェーンを構成するプリミティブブロックを
設定する論理回路合成方法であることを特徴とする。こ
のような手順の論理回路合成方法は、所望の構成のイン
バーターチェーンを削除することが可能となり、正確に
論理回路の合成を行うことができる。
【0014】 また、本発明のうち請求項10記載の発明
は、請求項8又は9記載の所定のインバーターチェーン
を検出しこれを削除する手順は、削除対象とするインバ
ーターチェーンの遅延時間を設定する論理回路合成方法
であることを特徴とする。このような手順の論理合成方
法は、設定された遅延時間を超えるインバーターチェー
ンのみを削除することができ、正確な論理回路の合成が
可能である。また、本発明のうち請求項11記載の発明
は、請求項8又は9又は10記載の所定のインバーター
チェーンを検出しこれを削除する手順は、削除対象とす
るインバーターチェーンを構成するプリミティブブロッ
クの段数を設定する論理回路合成方法であることを特徴
とする。このような手順の論理合成方法は、インバータ
ーチェーンを構成するブロックが設定された数を超えた
場合のみ、インバーターチェーンを削除するため、正確
な論理回路の合成が可能である。
は、請求項8又は9記載の所定のインバーターチェーン
を検出しこれを削除する手順は、削除対象とするインバ
ーターチェーンの遅延時間を設定する論理回路合成方法
であることを特徴とする。このような手順の論理合成方
法は、設定された遅延時間を超えるインバーターチェー
ンのみを削除することができ、正確な論理回路の合成が
可能である。また、本発明のうち請求項11記載の発明
は、請求項8又は9又は10記載の所定のインバーター
チェーンを検出しこれを削除する手順は、削除対象とす
るインバーターチェーンを構成するプリミティブブロッ
クの段数を設定する論理回路合成方法であることを特徴
とする。このような手順の論理合成方法は、インバータ
ーチェーンを構成するブロックが設定された数を超えた
場合のみ、インバーターチェーンを削除するため、正確
な論理回路の合成が可能である。
【0015】 また、本発明のうち請求項12記載の発明
は、請求項8又は9又は10又は11記載の設定した削
除対象に合致するインバーターチェーンを抽出し削除す
る手順は、階層構造を有する階層モジュールの各階層毎
に前記削除対象に合致するインバーターチェーンを抽出
し削除する論理回路合成方法であることを特徴とする。
このような手順の論理合成方法は、階層構造であるモジ
ュールについて、各階層毎に設定されたインバーターチ
ェーンを探して削除することが可能である。また、本発
明のうち請求項13記載の発明は、論理回路を自動生成
する論理回路合成装置の論理合成処理プログラムを記録
したコンピュータ読み取り可能な記録媒体において、論
理の動作を記述した動作記述ファイルを読み込んで構文
解析し初期マッピングを行う手順と、設計ルールを示し
た設計制約条件と最終的にマッピングするテクノロジラ
イブラリーを入力し最適化処理を行う手順と、インバー
ターチェ−ンを検出しこれを削除する手順と、合成結果
の回路データ及び論理合成結果の回路に対する各種レポ
ートを出力し、前記インバーターチェーンを削除した場
合に前記各種レポートのうちのひとつであるタイミング
レポートにエラー情報を表示する手順と、をコンピュー
タに実行させるプログラムを記録したコンピュータ読み
取り可能な記録媒体であることを特徴とする。このよう
な手順を記録した記録媒体を読み込んで動作するコンピ
ュータは、最適化後の出力データにインバーターチェー
ンが存在するかどうかを検出し、インバーターチェーン
が発生していれば、自動的にこれを削除する。このた
め、不要なインバーターチェーンが削除され、正常な論
理回路を生成することができる。
は、請求項8又は9又は10又は11記載の設定した削
除対象に合致するインバーターチェーンを抽出し削除す
る手順は、階層構造を有する階層モジュールの各階層毎
に前記削除対象に合致するインバーターチェーンを抽出
し削除する論理回路合成方法であることを特徴とする。
このような手順の論理合成方法は、階層構造であるモジ
ュールについて、各階層毎に設定されたインバーターチ
ェーンを探して削除することが可能である。また、本発
明のうち請求項13記載の発明は、論理回路を自動生成
する論理回路合成装置の論理合成処理プログラムを記録
したコンピュータ読み取り可能な記録媒体において、論
理の動作を記述した動作記述ファイルを読み込んで構文
解析し初期マッピングを行う手順と、設計ルールを示し
た設計制約条件と最終的にマッピングするテクノロジラ
イブラリーを入力し最適化処理を行う手順と、インバー
ターチェ−ンを検出しこれを削除する手順と、合成結果
の回路データ及び論理合成結果の回路に対する各種レポ
ートを出力し、前記インバーターチェーンを削除した場
合に前記各種レポートのうちのひとつであるタイミング
レポートにエラー情報を表示する手順と、をコンピュー
タに実行させるプログラムを記録したコンピュータ読み
取り可能な記録媒体であることを特徴とする。このよう
な手順を記録した記録媒体を読み込んで動作するコンピ
ュータは、最適化後の出力データにインバーターチェー
ンが存在するかどうかを検出し、インバーターチェーン
が発生していれば、自動的にこれを削除する。このた
め、不要なインバーターチェーンが削除され、正常な論
理回路を生成することができる。
【0016】
【発明の実施の形態】本発明の実施の形態について図面
を参照して説明する。図1は、本発明の一実施の形態で
ある論理回路合成装置の構成図である。本発明に係る論
理回路合成装置は、論理の動作を記述した動作記述ファ
イルであるHDL記述210を読み込んで構文解析し初
期マッピングを行う動作記述ファイル読込手段であるH
DL読込手段110と、設計ルールを示した設計制約条
件220と最終的にマッピングするテクノロジライブラ
リー230を入力し最適化処理を行う最適化処理手段1
20と、インバーターチェ−ンを検出し設定されたイン
バーターチェーン削除条件240に従ってインバーター
チェンを削除するインバーターチェーン削除手段130
と、論理合成結果の回路に対する結果確認用レポート2
50及び合成結果の回路データである合成結果ネットリ
スト260を出力する出力処理手段140と、を具備す
る。HDL読込手段110は、RTレベルで記述された
HDL記述210を読み込んで構文解析、HDLの記述
ミスなどの確認を行い、初期マッピングを行う。最適化
処理手段120は、動作環境、設計ルール、面積とタイ
ミング等の制約を付加する設計制約条件220と、最終
的にマッピングするテクノロジライブラリー230を入
力し、平坦化、構造化やセルマッピングを行う。インバ
ーターチェーン削除手段130は、最適化処理中に発生
するインバーターチェーンをインバーターチェーン削除
条件240に従って検索し、自動的に削除する。出力処
理手段140は、論理合成結果の回路に対して回路品質
確認を行うための各種レポート250及び合成結果の回
路データであるネットリスト260を出力する。また、
インバーターチェーンを削除した場合は、タイミングレ
ポートにエラー情報が表示される。この場合、入力した
設計制約条件と合成結果であるネットリストの条件が一
致していないというエラーになる。
を参照して説明する。図1は、本発明の一実施の形態で
ある論理回路合成装置の構成図である。本発明に係る論
理回路合成装置は、論理の動作を記述した動作記述ファ
イルであるHDL記述210を読み込んで構文解析し初
期マッピングを行う動作記述ファイル読込手段であるH
DL読込手段110と、設計ルールを示した設計制約条
件220と最終的にマッピングするテクノロジライブラ
リー230を入力し最適化処理を行う最適化処理手段1
20と、インバーターチェ−ンを検出し設定されたイン
バーターチェーン削除条件240に従ってインバーター
チェンを削除するインバーターチェーン削除手段130
と、論理合成結果の回路に対する結果確認用レポート2
50及び合成結果の回路データである合成結果ネットリ
スト260を出力する出力処理手段140と、を具備す
る。HDL読込手段110は、RTレベルで記述された
HDL記述210を読み込んで構文解析、HDLの記述
ミスなどの確認を行い、初期マッピングを行う。最適化
処理手段120は、動作環境、設計ルール、面積とタイ
ミング等の制約を付加する設計制約条件220と、最終
的にマッピングするテクノロジライブラリー230を入
力し、平坦化、構造化やセルマッピングを行う。インバ
ーターチェーン削除手段130は、最適化処理中に発生
するインバーターチェーンをインバーターチェーン削除
条件240に従って検索し、自動的に削除する。出力処
理手段140は、論理合成結果の回路に対して回路品質
確認を行うための各種レポート250及び合成結果の回
路データであるネットリスト260を出力する。また、
インバーターチェーンを削除した場合は、タイミングレ
ポートにエラー情報が表示される。この場合、入力した
設計制約条件と合成結果であるネットリストの条件が一
致していないというエラーになる。
【0017】 このような構成の論理回路合成装置の動作
及び論理合成方法について説明する。図2は、本発明の
一実施の形態である論理回路合成装置の論理合成方法の
フローチャートである。処理が開始されると、論理回路
の動作を記述したHDLが読み込まれ(S100)、構
文解析、HDL記述の確認等を行い、初期マッピングを
行う。続いて、動作環境、設計ルール、面積とタイミン
グ等の制約を付加する設計制約条件を設定し(S20
0)、平坦化、構造化やセルマッピングを行う最適化処
理を行い、ゲートレベルのネットリストを生成する(S
300)。しかしながら生成されたネットリストには、
インバーターチェーンが発生している場合がある。イン
バーターチェーンの発生原因はいろいろあるが、多くの
場合、設計条件の間違いあるいは記述ミスが原因とな
る。最適化処理は、単に、入力されたHDL記述と設計
制約条件の指示に従って、論理回路を合成、最適化して
いるだけであり、最適化処理でインバーターチェーンの
発生を防止することはできない。
及び論理合成方法について説明する。図2は、本発明の
一実施の形態である論理回路合成装置の論理合成方法の
フローチャートである。処理が開始されると、論理回路
の動作を記述したHDLが読み込まれ(S100)、構
文解析、HDL記述の確認等を行い、初期マッピングを
行う。続いて、動作環境、設計ルール、面積とタイミン
グ等の制約を付加する設計制約条件を設定し(S20
0)、平坦化、構造化やセルマッピングを行う最適化処
理を行い、ゲートレベルのネットリストを生成する(S
300)。しかしながら生成されたネットリストには、
インバーターチェーンが発生している場合がある。イン
バーターチェーンの発生原因はいろいろあるが、多くの
場合、設計条件の間違いあるいは記述ミスが原因とな
る。最適化処理は、単に、入力されたHDL記述と設計
制約条件の指示に従って、論理回路を合成、最適化して
いるだけであり、最適化処理でインバーターチェーンの
発生を防止することはできない。
【0018】 次に、最適化処理(S300)で生成され
たネットリストにインバーターチェーンが存在するか否
かを調べ、インバーターチェーンがあればこれを削除す
る(S400)。ここでは、インバーターチェーンの発
生原因及びインバーターチェーンが必要であるか否かに
かかわらず、検出したインバーターチェーンを自動的に
削除する。最適化処理(S300)後の出力データであ
るネットリストにインバーターチェーンが存在しなけれ
ば、削除処理を行わず、ネットリストをそのまま出力す
る。
たネットリストにインバーターチェーンが存在するか否
かを調べ、インバーターチェーンがあればこれを削除す
る(S400)。ここでは、インバーターチェーンの発
生原因及びインバーターチェーンが必要であるか否かに
かかわらず、検出したインバーターチェーンを自動的に
削除する。最適化処理(S300)後の出力データであ
るネットリストにインバーターチェーンが存在しなけれ
ば、削除処理を行わず、ネットリストをそのまま出力す
る。
【0019】 続いて、インバーターチェーン削除処理
(S400)後の、ネットリストに対して各種レポート
(エリア、使用セル、タイミング情報等)を出力し(S
500)、インバーターチェーン削除後のネットリスト
を出力する(S600)。ここで、インバーターチェー
ンを削除した場合は、各種レポートのうちのひとつであ
るタイミングレポートにエラー情報が表示される。これ
は、設計制約条件の間違いあるいは記述ミスにより発生
したインバーターチェーンを削除したため、入力した設
計制約条件と合成結果であるネットリストの条件が一致
しなくなったためである。従って、不要なインバーター
チェーンとともに回路動作上必要な遅延ゲートを削除し
た場合、もしくは、仮に削除したインバーターチェーン
の遅延が必要な場合があったとしても、設計者はこれに
気づくことができる。このように、論理回路の合成の結
果、生じたインバーターチェーンは自動的に削除され、
その削除はタイミングレポートのエラー情報で確認する
ことができるようになる。このため、インバーターチェ
ーンの削除された正常な論理回路を合成することができ
るばかりでなく、設計者にとっては、HDL記述及び設
計制約条件の不備を発見し、その見直し等を行うことが
容易になる。
(S400)後の、ネットリストに対して各種レポート
(エリア、使用セル、タイミング情報等)を出力し(S
500)、インバーターチェーン削除後のネットリスト
を出力する(S600)。ここで、インバーターチェー
ンを削除した場合は、各種レポートのうちのひとつであ
るタイミングレポートにエラー情報が表示される。これ
は、設計制約条件の間違いあるいは記述ミスにより発生
したインバーターチェーンを削除したため、入力した設
計制約条件と合成結果であるネットリストの条件が一致
しなくなったためである。従って、不要なインバーター
チェーンとともに回路動作上必要な遅延ゲートを削除し
た場合、もしくは、仮に削除したインバーターチェーン
の遅延が必要な場合があったとしても、設計者はこれに
気づくことができる。このように、論理回路の合成の結
果、生じたインバーターチェーンは自動的に削除され、
その削除はタイミングレポートのエラー情報で確認する
ことができるようになる。このため、インバーターチェ
ーンの削除された正常な論理回路を合成することができ
るばかりでなく、設計者にとっては、HDL記述及び設
計制約条件の不備を発見し、その見直し等を行うことが
容易になる。
【0020】 次に、インバーターチェーン削除手段につ
いて説明する。本発明に係る論理合成装置のインバータ
ーチェーン削除手段は、削除対象とする所定のインバー
ターチェーンを設定する削除対象設定手段と、前記削除
対象に合致するインバーターチェーンを抽出し削除する
設定インバーターチェーン削除手段を有する。このよう
な論理合成装置の動作及び論理合成方法について説明す
る。図3は、本発明の一実施の形態である論理回路合成
装置のインバーターチェーン削除処理のフローチャート
である。本発明に係るインバーターチェーン削除処理
は、前処理である最適化処理で生成されたネットリスト
を読み込み、処理を開始する(S411)。削除を行う
インバーターチェーンの構成、すなわち、インバーター
チェーンのうちどのプリミティブブロックの連続構成を
削除対象とするかの設定(S412)と、インバーター
チェーンによる遅延時間が何ns以上のものを削除する
かの設定(S413)を行う。これらの設定は、処理を
開始する前に予め設定しておくこともできる。削除する
プリミティブブロックの設定は、通常、バッファと反転
論理のインバーターの種類を設定すればよい。遅延時間
の設定は、インバーターチェーンで発生した遅延ゲート
か、もしくは回路動作上必要で設計者が意図した遅延ゲ
ートかを判別するために必要である。従って、一般的な
クロック同期回路構成であれば、遅延時間で、「クロッ
クスキューの最大値+F/Fのホールドマージン」以上
の固定値でよい。また、非同期回路を含み、意図的に遅
延ゲートを挿入し、タイミングの調整を行っている回路
に対しては、設定値を変更することで意図的なゲート挿
入とインバーターチェーンを区別する必要がある。
いて説明する。本発明に係る論理合成装置のインバータ
ーチェーン削除手段は、削除対象とする所定のインバー
ターチェーンを設定する削除対象設定手段と、前記削除
対象に合致するインバーターチェーンを抽出し削除する
設定インバーターチェーン削除手段を有する。このよう
な論理合成装置の動作及び論理合成方法について説明す
る。図3は、本発明の一実施の形態である論理回路合成
装置のインバーターチェーン削除処理のフローチャート
である。本発明に係るインバーターチェーン削除処理
は、前処理である最適化処理で生成されたネットリスト
を読み込み、処理を開始する(S411)。削除を行う
インバーターチェーンの構成、すなわち、インバーター
チェーンのうちどのプリミティブブロックの連続構成を
削除対象とするかの設定(S412)と、インバーター
チェーンによる遅延時間が何ns以上のものを削除する
かの設定(S413)を行う。これらの設定は、処理を
開始する前に予め設定しておくこともできる。削除する
プリミティブブロックの設定は、通常、バッファと反転
論理のインバーターの種類を設定すればよい。遅延時間
の設定は、インバーターチェーンで発生した遅延ゲート
か、もしくは回路動作上必要で設計者が意図した遅延ゲ
ートかを判別するために必要である。従って、一般的な
クロック同期回路構成であれば、遅延時間で、「クロッ
クスキューの最大値+F/Fのホールドマージン」以上
の固定値でよい。また、非同期回路を含み、意図的に遅
延ゲートを挿入し、タイミングの調整を行っている回路
に対しては、設定値を変更することで意図的なゲート挿
入とインバーターチェーンを区別する必要がある。
【0021】 続いて、ネットリストから設定された削除
対象となるプリミティブブロックが連続接続した個所を
抽出する(S414)。次に、抽出したプリミティブブ
ロックの連続接続による遅延時間と削除条件として設定
された遅延時間とを比較する(S415)。設定値以上
であれば、抽出したプリミティブブロックの連続接続の
うち不要部を削除する(S416)。設定値以下であれ
ば、削除処理を実行しない。続いて、修正されたあるい
は修正の必要のなかった最終的なネットリストが出力さ
れる(S417)。
対象となるプリミティブブロックが連続接続した個所を
抽出する(S414)。次に、抽出したプリミティブブ
ロックの連続接続による遅延時間と削除条件として設定
された遅延時間とを比較する(S415)。設定値以上
であれば、抽出したプリミティブブロックの連続接続の
うち不要部を削除する(S416)。設定値以下であれ
ば、削除処理を実行しない。続いて、修正されたあるい
は修正の必要のなかった最終的なネットリストが出力さ
れる(S417)。
【0022】 インバーターチェーン削除処理を、具体的
に説明する。図4は、本発明の一実施の形態である論理
回路合成装置が処理を施した論理回路の回路図である。
(a)は、設定されたプリミティブブロックが連続接続
した個所の抽出処理(S414)を施した回路図であ
る。抽出された回路は破線で囲まれた部分である。
(b)は、抽出したプリミティブブロックの連続接続の
遅延時間が設定値以上であって不要部を削除する処理
(S415)を施した回路図である。削除する場合、イ
ンバーターチェーンを構成する全てのバッファを削除す
るのではなく、後段のF/Fのホールドマージンを確保
するため、「クロックスキューの最大値+F/Fのホー
ルドマージン」以上のブロックを残すように削除する。
また、抽出したプリミティブブロックの連続接続が複数
個ある場合は、それぞれの個所に対して設定値との比較
を行い、設定値以上であれば削除処理を行う。
に説明する。図4は、本発明の一実施の形態である論理
回路合成装置が処理を施した論理回路の回路図である。
(a)は、設定されたプリミティブブロックが連続接続
した個所の抽出処理(S414)を施した回路図であ
る。抽出された回路は破線で囲まれた部分である。
(b)は、抽出したプリミティブブロックの連続接続の
遅延時間が設定値以上であって不要部を削除する処理
(S415)を施した回路図である。削除する場合、イ
ンバーターチェーンを構成する全てのバッファを削除す
るのではなく、後段のF/Fのホールドマージンを確保
するため、「クロックスキューの最大値+F/Fのホー
ルドマージン」以上のブロックを残すように削除する。
また、抽出したプリミティブブロックの連続接続が複数
個ある場合は、それぞれの個所に対して設定値との比較
を行い、設定値以上であれば削除処理を行う。
【0023】 上記説明の本発明の一実施の形態である論
理回路合成装置によれば、合成結果として出力するネッ
トリストの不要なインバーターチェーンが削除され、正
常な回路を出力することができる。また、インバーター
チェーンが発生していた場合、インバーターチェーンを
削除したネットリストに対してタイミングレポートが出
力され、設計制約条件の不備によるタイミングエラーの
発生が明らかになる。これまで、インバーターチェーン
に関する不具合の発見は、次工程である遅延シミュレー
ション検証であったが、論理合成工程で発見可能な設計
工数を削減できる。
理回路合成装置によれば、合成結果として出力するネッ
トリストの不要なインバーターチェーンが削除され、正
常な回路を出力することができる。また、インバーター
チェーンが発生していた場合、インバーターチェーンを
削除したネットリストに対してタイミングレポートが出
力され、設計制約条件の不備によるタイミングエラーの
発生が明らかになる。これまで、インバーターチェーン
に関する不具合の発見は、次工程である遅延シミュレー
ション検証であったが、論理合成工程で発見可能な設計
工数を削減できる。
【0024】 次に、インバーターチェーン削除処理の他
の実施の形態について説明する。図5は、本発明の他の
実施の形態である論理回路合成装置のインバーターチェ
ーン削除処理のフローチャートである。本発明に係るイ
ンバーターチェーン削除処理は、ネットリストを読み込
み(S421)、削除対象とするプリミティブブロック
の設定(S422)を行う。ここまでは、上記説明のイ
ンバーター削除処理と同様である。次に、削除対象とす
るインバーターチェーンのブロック段数を設定する(S
423)。例えば、一般的な同期回路の場合、基準値は
「クロックスキューの最大値+F/Fのホールドマージ
ン」であるため、設計者はこの基準値に見合うブロック
段数を見積もって入力する。
の実施の形態について説明する。図5は、本発明の他の
実施の形態である論理回路合成装置のインバーターチェ
ーン削除処理のフローチャートである。本発明に係るイ
ンバーターチェーン削除処理は、ネットリストを読み込
み(S421)、削除対象とするプリミティブブロック
の設定(S422)を行う。ここまでは、上記説明のイ
ンバーター削除処理と同様である。次に、削除対象とす
るインバーターチェーンのブロック段数を設定する(S
423)。例えば、一般的な同期回路の場合、基準値は
「クロックスキューの最大値+F/Fのホールドマージ
ン」であるため、設計者はこの基準値に見合うブロック
段数を見積もって入力する。
【0025】 続いて、ネットリストから設定された削除
対象となるプリミティブブロックが連続接続した個所を
抽出する(S424)。次に、抽出したプリミティブブ
ロックの連続接続によるブロック段数と削除条件として
設定されたブロック段数とを比較する(S425)。設
定値以上であれば、抽出したプリミティブブロックの連
続接続のうち不要部を削除する(S426)。設定値以
下であれば、削除処理を実行しない。続いて、修正され
たあるいは修正の必要のなかった最終的なネットリスト
が出力される(S427)。このように、ブロック段数
を基準とした処理とすることで、インバーターチェーン
の抽出、削除処理の際の遅延計算が省略でき、処理フロ
ーを簡略化できるという効果がある。また、ブロック段
数での削除処理と遅延時間での削除処理とを比較する
と、最終的に削除するブロックが1〜2段違ってくるケ
ースも出てくるが、実際に発生するインバーターチェー
ンの遅延値及びブロック段数に比べて「クロックスキュ
ーの最大値+F/Fのホールドマージン」の値は微妙で
あるため問題ない。
対象となるプリミティブブロックが連続接続した個所を
抽出する(S424)。次に、抽出したプリミティブブ
ロックの連続接続によるブロック段数と削除条件として
設定されたブロック段数とを比較する(S425)。設
定値以上であれば、抽出したプリミティブブロックの連
続接続のうち不要部を削除する(S426)。設定値以
下であれば、削除処理を実行しない。続いて、修正され
たあるいは修正の必要のなかった最終的なネットリスト
が出力される(S427)。このように、ブロック段数
を基準とした処理とすることで、インバーターチェーン
の抽出、削除処理の際の遅延計算が省略でき、処理フロ
ーを簡略化できるという効果がある。また、ブロック段
数での削除処理と遅延時間での削除処理とを比較する
と、最終的に削除するブロックが1〜2段違ってくるケ
ースも出てくるが、実際に発生するインバーターチェー
ンの遅延値及びブロック段数に比べて「クロックスキュ
ーの最大値+F/Fのホールドマージン」の値は微妙で
あるため問題ない。
【0026】 次に、インバーターチェーン削除処理の他
の実施の形態について説明する。ここでは、ネットリス
トが階層構造になっている場合のインバーターチェーン
削除処理手順について説明する。図6は、本発明の他の
実施の形態である論理回路合成装置のインバーターチェ
ーン削除処理のフローチャートである。本発明に係るイ
ンバーターチェーン削除処理は、ネットリストを読み込
み(S431)、削除対象とするプリミティブブロック
の設定(S432)と、遅延時間の設定(S433)を
行う。ここまでは、上記説明のインバーター削除処理と
同様である。次に、ネットリスト内の階層モジュールを
ひとつ選択する(S434)。続いて、ネットリストか
ら設定された削除対象となるプリミティブブロックが連
続接続した個所を抽出し(S435)、その遅延時間と
削除条件として設定された遅延時間とを比較する(S4
36)。設定値以上であれば、抽出したプリミティブブ
ロックの連続接続のうち不要部を削除する(S43
7)。設定値以下であれば、削除処理を実行しない。削
除処理は、上記説明のインバーター削除処理と同様であ
る。次に、他に階層モジュールが存在しないかどうかを
チェックし(S438)、存在していれば、S434に
戻って再び処理を行う。全ての階層モジュールの処理が
終了したら、最終的なネットリストが出力される(S4
39)。このように、連続接続の抽出、削除処理を階層
モジュール毎に実施することで、階層構造のネットリス
トからもインバーターチェーンの削除が可能となる。
の実施の形態について説明する。ここでは、ネットリス
トが階層構造になっている場合のインバーターチェーン
削除処理手順について説明する。図6は、本発明の他の
実施の形態である論理回路合成装置のインバーターチェ
ーン削除処理のフローチャートである。本発明に係るイ
ンバーターチェーン削除処理は、ネットリストを読み込
み(S431)、削除対象とするプリミティブブロック
の設定(S432)と、遅延時間の設定(S433)を
行う。ここまでは、上記説明のインバーター削除処理と
同様である。次に、ネットリスト内の階層モジュールを
ひとつ選択する(S434)。続いて、ネットリストか
ら設定された削除対象となるプリミティブブロックが連
続接続した個所を抽出し(S435)、その遅延時間と
削除条件として設定された遅延時間とを比較する(S4
36)。設定値以上であれば、抽出したプリミティブブ
ロックの連続接続のうち不要部を削除する(S43
7)。設定値以下であれば、削除処理を実行しない。削
除処理は、上記説明のインバーター削除処理と同様であ
る。次に、他に階層モジュールが存在しないかどうかを
チェックし(S438)、存在していれば、S434に
戻って再び処理を行う。全ての階層モジュールの処理が
終了したら、最終的なネットリストが出力される(S4
39)。このように、連続接続の抽出、削除処理を階層
モジュール毎に実施することで、階層構造のネットリス
トからもインバーターチェーンの削除が可能となる。
【0027】 なお、上記の処理機能は、コンピュータに
よって実現することができる。その場合、論理回路合成
装置が有すべき機能の処理内容は、コンピュータで読み
取り可能な記録媒体に記録されたプログラムに記述して
おく。そして、このプログラムをコンピュータで実行す
ることにより、上記処理がコンピュータで実現される。
コンピュータで読み取り可能な記録媒体としては、磁気
記録装置や半導体メモリ等がある。
よって実現することができる。その場合、論理回路合成
装置が有すべき機能の処理内容は、コンピュータで読み
取り可能な記録媒体に記録されたプログラムに記述して
おく。そして、このプログラムをコンピュータで実行す
ることにより、上記処理がコンピュータで実現される。
コンピュータで読み取り可能な記録媒体としては、磁気
記録装置や半導体メモリ等がある。
【0028】
【発明の効果】以上説明したように本発明では、最適化
後の出力データにインバーターチェーンが存在するかど
うかを検出し、インバーターチェーンが発生していれ
ば、自動的にこれを削除する。このため、不要なインバ
ーターチェーンが削除され、正常な論理回路を生成する
ことができる。
後の出力データにインバーターチェーンが存在するかど
うかを検出し、インバーターチェーンが発生していれ
ば、自動的にこれを削除する。このため、不要なインバ
ーターチェーンが削除され、正常な論理回路を生成する
ことができる。
【図1】 本発明の一実施の形態である論理回路合成装
置の構成図である。
置の構成図である。
【図2】 本発明の一実施の形態である論理回路合成装
置の論理合成方法のフローチャートである。
置の論理合成方法のフローチャートである。
【図3】 本発明の一実施の形態である論理回路合成装
置のインバーターチェーン削除処理のフローチャートで
ある。
置のインバーターチェーン削除処理のフローチャートで
ある。
【図4】 本発明の一実施の形態である論理回路合成装
置が処理を施した論理回路の回路図である。
置が処理を施した論理回路の回路図である。
【図5】 本発明の他の実施の形態である論理回路合成
装置のインバーターチェーン削除処理のフローチャート
である。
装置のインバーターチェーン削除処理のフローチャート
である。
【図6】 本発明の他の実施の形態である論理回路合成
装置のインバーターチェーン削除処理のフローチャート
である。
装置のインバーターチェーン削除処理のフローチャート
である。
【図7】 従来の論理回路合成装置の一般的な処理のフ
ローチャートである。
ローチャートである。
【図8】 インバーターチェーンの発生例の回路図であ
る。
る。
【図9】 図8の論理回路のタイミングチャートであ
る。
る。
110 HDL読込手段 120 最適化処理手段 130 インバーターチェーン削除手段 140 出力処理手段 210 HDL記述 220 設計制約条件 230 テクノロジライブラリー 240 インバーターチェーン削除条件 250 結果確認用レポート 260 合成結果ネットリスト
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平7−334530(JP,A) 特開 昭60−214115(JP,A) 特開 平2−148268(JP,A) 特開 昭64−91243(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 17/50
Claims (13)
- 【請求項1】 論理回路を自動生成する論理回路合成装
置において、 論理の動作を記述した動作記述ファイルを読み込んで構
文解析し初期マッピングを行う動作記述ファイル読込手
段と、 設計ルールを示した設計制約条件と最終的にマッピング
するテクノロジライブラリーを入力し最適化処理を行う
最適化処理手段と、不必要な論理ゲート素子である インバーターチェ−ンを
検出し、これを削除するインバーターチェーン削除手段
と、 合成結果の回路データ及び論理合成結果の回路に対する
各種レポートを出力する出力手段と、 を有し、前記インバーターチェーンを削除した場合は、
前記各種レポートのうちのひとつであるタイミングレポ
ートにエラー情報が表示されることを特徴とする論理回
路合成装置。 - 【請求項2】 前記インバーターチェーン削除手段は、
削除対象とする所定のインバーターチェーンを設定する
削除対象設定手段と、 前記削除対象に合致するインバーターチェーンを抽出し
削除する設定インバーターチェーン削除手段、 を有することを特徴とする請求項1記載の論理回路合成
装置。 - 【請求項3】 前記削除対象設定手段は、削除対象とす
る所定のインバーターチェーンを構成するプリミティブ
ブロックを設定することを特徴とする請求項2記載の論
理回路合成装置。 - 【請求項4】 前記削除対象設定手段は、削除対象とす
る所定のインバーターチェーンの遅延時間を設定するこ
とを特徴とする請求項2又は請求項3記載の論理回路合
成装置。 - 【請求項5】 前記削除対象設定手段は、削除対象とす
る所定のインバーターチェーンを構成するプリミティブ
ブロックの段数を設定することを特徴とする請求項2又
は3又は請求項4記載の論理回路合成装置。 - 【請求項6】 前記設定インバーターチェン削除手段
は、階層構造を有する階層モジュールの各階層毎に前記
削除対象に合致する所定のインバーターチェーンを抽出
し削除することを特徴とする請求項2又は3又は4又は
請求項5記載の論理回路合成装置。 - 【請求項7】 論理回路を自動生成する論理回路合成方
法において、 論理の動作を記述した動作記述ファイルを読み込んで構
文解析し初期マッピングを行う手順と、 設計ルールを示した設計制約条件と最終的にマッピング
するテクノロジライブラリーを入力し最適化処理を行う
手順と、 インバーターチェ−ンを検出しこれを削除する手順と、 合成結果の回路データ及び論理合成結果の回路に対する
各種レポートを出力する手順と、 を有し、前記インバーターチェーンを削除した場合は、
前記各種レポートのうちのひとつであるタイミングレポ
ートにエラー情報が表示されることを特徴とする論理回
路合成方法。 - 【請求項8】 前記インバーターチェーンを検出しこれ
を削除する手順は、削除対象とする所定のインバーター
チェーンを設定し、 設定した削除対象に合致するインバーターチェーンを抽
出し削除することを特徴とする請求項7記載の論理回路
合成方法。 - 【請求項9】 前記所定のインバーターチェーンを検出
しこれを削除する手順は、削除対象とするインバーター
チェーンを構成するプリミティブブロックを設定するこ
とを特徴とする請求項8記載の論理回路合成方法。 - 【請求項10】 前記所定のインバーターチェーンを検
出しこれを削除する手順は、削除対象とするインバータ
ーチェーンの遅延時間を設定することを特徴とする請求
項8又は請求項9記載の論理回路合成方法。 - 【請求項11】 前記所定のインバーターチェーンを検
出しこれを削除する手順は、削除対象とするインバータ
ーチェーンを構成するプリミティブブロックの段数を設
定することを特徴とする請求項8又は9又は請求項10
記載の論理回路合成方法。 - 【請求項12】 設定した削除対象に合致するインバー
ターチェーンを抽出し削除する手順は、階層構造を有す
る階層モジュールの各階層毎に前記削除対象に合致する
インバーターチェーンを抽出し削除することを特徴とす
る請求項8又は9又は10又は請求項11記載の論理回
路合成方法。 - 【請求項13】 論理回路を自動生成する論理回路合成
装置の論理合成処理プログラムを記録したコンピュータ
読み取り可能な記録媒体において、 論理の動作を記述した動作記述ファイルを読み込んで構
文解析し初期マッピングを行う手順と、 設計ルールを示した設計制約条件と最終的にマッピング
するテクノロジライブラリーを入力し最適化処理を行う
手順と、 インバーターチェ−ンを検出しこれを削除する手順と、 合成結果の回路データ及び論理合成結果の回路に対する
各種レポートを出力し、前記インバーターチェーンを削
除した場合に前記各種レポートのうちのひとつであるタ
イミングレポートにエラー情報を表示する手順と、 をコンピュータに実行させるプログラムを記録したコン
ピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11041989A JP3033760B1 (ja) | 1999-02-19 | 1999-02-19 | 論理回路合成装置及びその合成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11041989A JP3033760B1 (ja) | 1999-02-19 | 1999-02-19 | 論理回路合成装置及びその合成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP3033760B1 true JP3033760B1 (ja) | 2000-04-17 |
JP2000242671A JP2000242671A (ja) | 2000-09-08 |
Family
ID=12623616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11041989A Expired - Lifetime JP3033760B1 (ja) | 1999-02-19 | 1999-02-19 | 論理回路合成装置及びその合成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3033760B1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9443047B2 (en) | 2014-05-28 | 2016-09-13 | International Business Machines Corporation | Physical aware technology mapping in synthesis |
-
1999
- 1999-02-19 JP JP11041989A patent/JP3033760B1/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2000242671A (ja) | 2000-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5644498A (en) | Timing shell generation through netlist reduction | |
US7360180B2 (en) | Computer program product, method, and system for hardware model conversion | |
US7962872B2 (en) | Timing analysis when integrating multiple circuit blocks while balancing resource requirements and accuracy | |
JP2009518717A (ja) | Edaツール設計ビューにおける情報を保護する方法およびプログラム・プロダクト | |
JP2006048525A (ja) | シミュレーション方法 | |
US6658630B1 (en) | Method to translate UDPs using gate primitives | |
US20090055781A1 (en) | Circuit design device, circuit design program, and circuit design method | |
US7194715B2 (en) | Method and system for performing static timing analysis on digital electronic circuits | |
US9449127B1 (en) | System for verifying timing constraints of IC design | |
US7617466B2 (en) | Circuit conjunctive normal form generating method, circuit conjunctive normal form generating device, hazard check method and hazard check device | |
JP3033760B1 (ja) | 論理回路合成装置及びその合成方法 | |
JP4239008B2 (ja) | 情報処理方法、情報処理装置およびプログラム | |
US7945882B2 (en) | Asynchronous circuit logical verification method, logical verification apparatus, and computer readable storage medium | |
US20220327269A1 (en) | Computing device and method for detecting clock domain crossing violation in design of memory device | |
US20080127026A1 (en) | Logic synthesis method and device | |
JP2003196339A (ja) | テスト容易性解析システムおよびテスト容易性解析方法、並びにテスト容易化設計システムおよびテスト容易化設計方法 | |
JP2006268165A (ja) | 集積回路のタイミング解析装置、集積回路のタイミング最適化装置、集積回路のタイミング解析方法、集積回路のタイミング最適化方法、集積回路基板の製造方法、制御プログラムおよび可読記録媒体 | |
JPH09311882A (ja) | 論理回路検証支援装置 | |
JP2003216672A (ja) | 半導体回路設計支援装置及び方法、並びに半導体回路設計支援プログラム | |
JP2006338090A (ja) | 半導体集積回路の設計方法および設計装置 | |
US20080222591A1 (en) | Signal connection program, method, and device of hierarchical logic circuit | |
JP3561661B2 (ja) | 半導体集積回路及び半導体集積回路の設計方法 | |
JP3105782B2 (ja) | 電子回路の論理生成方法 | |
US20090292837A1 (en) | Propagation path specifying device, propagation path specifying method and computer program product | |
JP2923914B2 (ja) | 集積回路のcadシステム |