JP2924464B2 - 論理合成手法 - Google Patents
論理合成手法Info
- Publication number
- JP2924464B2 JP2924464B2 JP4173922A JP17392292A JP2924464B2 JP 2924464 B2 JP2924464 B2 JP 2924464B2 JP 4173922 A JP4173922 A JP 4173922A JP 17392292 A JP17392292 A JP 17392292A JP 2924464 B2 JP2924464 B2 JP 2924464B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- logic
- delay
- processing
- slack
- 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
Description
【0001】
【産業上の利用分野】本発明は、論理合成手法に関し、
特に遅延最適化処理の効果の判断を高速に行なう論理合
成手法に関する。
特に遅延最適化処理の効果の判断を高速に行なう論理合
成手法に関する。
【0002】
【従来の技術】論理合成手法における遅延最適化処理
は、制約条件として与えられる外部出力端子およびフリ
ップフロップ等のブロックの入力端子に対する論理信号
到着要求時刻と、制約条件として与えられる外部入力端
子およびフリップフロップ等のブロックの出力端子に対
する論理信号到着時刻の、テクノロジライブラリ情報か
ら得られるテクノロジライブリブロックの遅延情報と配
線遅延情報から論理合成対象論理回路に対して遅延解析
を行ない、全ての素子の立ち上がり論理信号到着時刻
と、立ち下がり論理信号到着時刻と、立ち上がり論理信
号到着要求時刻と、立ち下がり論理信号到着要求時刻と
をもとめ、遅延制約条件を違反しているクリティカルパ
スが論理回路中に存在する場合には、クリティカルパス
の一部または全部およびその周辺の回路を含む部分回路
に対して、その論理を変更することなく回路構成を変更
することにより遅延を変更し、遅延制約を満たすことを
目的関数とする処理である。
は、制約条件として与えられる外部出力端子およびフリ
ップフロップ等のブロックの入力端子に対する論理信号
到着要求時刻と、制約条件として与えられる外部入力端
子およびフリップフロップ等のブロックの出力端子に対
する論理信号到着時刻の、テクノロジライブラリ情報か
ら得られるテクノロジライブリブロックの遅延情報と配
線遅延情報から論理合成対象論理回路に対して遅延解析
を行ない、全ての素子の立ち上がり論理信号到着時刻
と、立ち下がり論理信号到着時刻と、立ち上がり論理信
号到着要求時刻と、立ち下がり論理信号到着要求時刻と
をもとめ、遅延制約条件を違反しているクリティカルパ
スが論理回路中に存在する場合には、クリティカルパス
の一部または全部およびその周辺の回路を含む部分回路
に対して、その論理を変更することなく回路構成を変更
することにより遅延を変更し、遅延制約を満たすことを
目的関数とする処理である。
【0003】遅延制約の違反は論理信号到着要求時刻と
論理信号到着時刻の差であるスラックを用いて判断す
る。スラックは立ち上がり論理信号到着要求時刻と立ち
上がり論理信号到着時刻の差である立ち上がりスラック
と、立ち下がり論理信号到着要求時刻と立ち下がり論理
信号到着時刻の差である立ち下がりスラックがある。
論理信号到着時刻の差であるスラックを用いて判断す
る。スラックは立ち上がり論理信号到着要求時刻と立ち
上がり論理信号到着時刻の差である立ち上がりスラック
と、立ち下がり論理信号到着要求時刻と立ち下がり論理
信号到着時刻の差である立ち下がりスラックがある。
【0004】最大遅延制約条件を満たすことを目的とす
る最大遅延最適化を行なう場合にはスラックを零以上に
することを目的関数に回路構成変更を行なう。最小遅延
制約条件を満たすことを目的とする最小遅延補償を行な
う場合にはスラックを零以下にすることを目的関数に回
路構成変更を行なう。
る最大遅延最適化を行なう場合にはスラックを零以上に
することを目的関数に回路構成変更を行なう。最小遅延
制約条件を満たすことを目的とする最小遅延補償を行な
う場合にはスラックを零以下にすることを目的関数に回
路構成変更を行なう。
【0005】最大遅延最適化を行なう場合には最大遅延
制約条件を違反しているクリティカルパスの遅延を削減
する必要がある。遅延削減のための回路構成変更処理は
多数あるが、その一つにバッファリング処理がある。
制約条件を違反しているクリティカルパスの遅延を削減
する必要がある。遅延削減のための回路構成変更処理は
多数あるが、その一つにバッファリング処理がある。
【0006】バッファリング処理は論理素子の出力端子
およびフリップフロップ等のブロックの出力端子および
外部入力端子に直接接続される負荷容量を削減すること
により、負荷容量による遅延を削減する遅延最適化のた
めの回路構成変更処理である。バッファリング処理には
バッファ素子およびインバータ素子の挿入や回路二重化
等の処理がある。
およびフリップフロップ等のブロックの出力端子および
外部入力端子に直接接続される負荷容量を削減すること
により、負荷容量による遅延を削減する遅延最適化のた
めの回路構成変更処理である。バッファリング処理には
バッファ素子およびインバータ素子の挿入や回路二重化
等の処理がある。
【0007】従来の論理合成手法における遅延最適化処
理の効果を判断する処理は、回路変更前の回路変更対象
部分の全ての出力端のスラックの最悪値またはクリティ
カルパス上の回路変更対象部分の出力端のスラックと、
回路変更後の回路変更対象部分の全ての出力端のスラッ
クの最悪値を比較することにより遅延最適化処理の効果
を判断する処理であった。例えば、理解を容易にするた
め後述する本発明の実施例におけるバッファリング処理
による遅延最適化のための回路変更適用例のブロック図
を示した図3(a)および(b)を用いて説明すると、
図3(a)が遅延最適化のための回路変更対象部分であ
り、論理素子300から論理素子301への論理信号経
路がクリティカルパスであるとする。図3(b)が遅延
最適化回路変更処理204を図3(a)に適用した結果
だとする。従来の技術では、まず図3(b)に対して遅
延解析を行う。次に回路変更対象部分の全ての出力端の
スラック、すなわち論理素子301ないし306のスラ
ックを求める。次に論理素子301ないし306のスラ
ックの中で最悪のスラックがどれかを判断し、その最悪
のスラックを図3(b)のスラックだとする。図3
(a)の論理素子301のスラックと図3(b)のスラ
ックを比較し、後者の値が前者の値を改善していれば、
本回路変更結果、すなわち図3(b)の回路構成が遅延
最適化出来ると判断し、本回路構成を遅延最適化結果と
して採用し、改善していなければ採用しない。従って、
従来の論理合成手法における遅延最適化を判断するため
計算量は、(回路変更後の回路変更対象部分の遅延計算
量)+((スラックの計算量)×(回路変更対象部分の
出力端数))+(最悪のスラック判断計算量)+(スラ
ックの比較計算量)となる。
理の効果を判断する処理は、回路変更前の回路変更対象
部分の全ての出力端のスラックの最悪値またはクリティ
カルパス上の回路変更対象部分の出力端のスラックと、
回路変更後の回路変更対象部分の全ての出力端のスラッ
クの最悪値を比較することにより遅延最適化処理の効果
を判断する処理であった。例えば、理解を容易にするた
め後述する本発明の実施例におけるバッファリング処理
による遅延最適化のための回路変更適用例のブロック図
を示した図3(a)および(b)を用いて説明すると、
図3(a)が遅延最適化のための回路変更対象部分であ
り、論理素子300から論理素子301への論理信号経
路がクリティカルパスであるとする。図3(b)が遅延
最適化回路変更処理204を図3(a)に適用した結果
だとする。従来の技術では、まず図3(b)に対して遅
延解析を行う。次に回路変更対象部分の全ての出力端の
スラック、すなわち論理素子301ないし306のスラ
ックを求める。次に論理素子301ないし306のスラ
ックの中で最悪のスラックがどれかを判断し、その最悪
のスラックを図3(b)のスラックだとする。図3
(a)の論理素子301のスラックと図3(b)のスラ
ックを比較し、後者の値が前者の値を改善していれば、
本回路変更結果、すなわち図3(b)の回路構成が遅延
最適化出来ると判断し、本回路構成を遅延最適化結果と
して採用し、改善していなければ採用しない。従って、
従来の論理合成手法における遅延最適化を判断するため
計算量は、(回路変更後の回路変更対象部分の遅延計算
量)+((スラックの計算量)×(回路変更対象部分の
出力端数))+(最悪のスラック判断計算量)+(スラ
ックの比較計算量)となる。
【0008】
【発明が解決しようとする課題】従来の論理合成手法に
おける遅延最適化処理の効果判断処理には、遅延最適化
処理による回路変更対象部分の全ての出力端のスラック
を求める必要があるため、バッファリング処理を用いて
遅延最適化を行なう場合には回路変更対象部分の出力端
が多数あり、スラックを求めるための処理時間が多くか
かってしまうという問題があった。
おける遅延最適化処理の効果判断処理には、遅延最適化
処理による回路変更対象部分の全ての出力端のスラック
を求める必要があるため、バッファリング処理を用いて
遅延最適化を行なう場合には回路変更対象部分の出力端
が多数あり、スラックを求めるための処理時間が多くか
かってしまうという問題があった。
【0009】本発明の目的は、前述の問題点に鑑みなさ
れたものであり、遅延削減のための回路変更処理におけ
る遅延削減の効果の判断を高速に行なう方法を提供する
ことにある。
れたものであり、遅延削減のための回路変更処理におけ
る遅延削減の効果の判断を高速に行なう方法を提供する
ことにある。
【0010】
【課題を解決するための手段】本発明の論理合成手法の
特徴は、計算機およびその周辺入出力装置からなるLS
Iの自動設計ツールを用いて論理変換、最適化により論
理回路を自動生成し、遅延制約の制約条件を満たさない
クリティカルパスを前記論理回路中に有するときに、前
記クリティカルパス上の一部又は全部およびその周辺の
回路を含む部分回路に対して、前記論理回路の論理を変
更することなく回路構成を変更することにより前記遅延
を変更し、前記遅延の制約条件を満たすことを目的関数
とする遅延最適化処理を行う論理合成手法において、前
記論理回路のテクノロジマッピングに用いるテクノロジ
ライブラリの情報を入力するライブラリ入力処理と、論
理合成対象となる論理回路記述を入力する回路入力処理
と、遅延や面積などの前記論理回路の前記制約条件を入
力する制約条件入力処理と、論理の最適化を行なう論理
最適化処理と、与えられた面積制約を満たすことを目的
関数に、テクノロジライブラリブロックを前記論理回路
に割り当てる面積最適化処理と、与えられた前記遅延制
約を満たすことを目的関数に、使用する前記テクノロジ
ライブラリブロックの変更や前記論理回路の構成の変更
により遅延を最適化する遅延最適化処理の効果を、回路
変更前の回路変更対象部分の入力側における立ち上りス
ラックおよび立ち下がりスラックのうちの小さい方の値
よりも回路変更後の回路変更対象部分の入力側における
立ち上がりスラックおよび立ち下がりスラックがともに
大きな値を持つ場合に遅延改善の効果があると判断し、
仮定した回路変更対象部分の回路構成を論理合成対象回
路に対して適用する処理を含む高速遅延最適化処理と、
処理結果の論理回路を出力する回路出力処理とを有する
ことにある。また、前記高速化遅延最適化処理は、前記
論理合成対象回路の遅延解析を行ない、全ての素子の前
記論理信号到着時刻と前記論理信号到着要求時刻とクリ
ティカルパスをもとめる遅延解析処理と、前記クリティ
カルパスの有無を判断するクリティカルパス判断処理
と、バッファリング処理の未適用部分の有無の判断およ
び前記バッファリング処理を適用する回路変更部分を決
定する適用部分判断処理と、前記バッファリング処理に
よる回路変更以前の前記回路変更対象部分の入力端の立
ち上がりスラックと立ち下がりスラックの値の小さい方
を保存するスラック保存 処理と、前記バッファリング処
理による回路変更対象部分の回路構成を仮定する遅延最
適化回路変更処理と、この遅延最適化回路変更処理で仮
定された前記回路変更対象部分の回路構成の出力側から
送出先の入力側に論理信号到着要求時刻を伝播し前記回
路変更対象部分の前記入力端一箇所での前記論理信号到
着要求時刻および前記論理信号到着時刻差のスラックを
もとめる部分回路遅延解析処理と、前記スラック保存処
理で保存された前記スラックよりも前記部分回路遅延解
析処理でもとめた立ち上がりスラックと立ち下がりスラ
ックがともに大きな値をもつ場合に遅延改善の効果があ
ると判断し、仮定した回路変更対象部分の回路構成を前
記論理合成対象回路に対して適用する効果判断処理とを
有することもできる。
特徴は、計算機およびその周辺入出力装置からなるLS
Iの自動設計ツールを用いて論理変換、最適化により論
理回路を自動生成し、遅延制約の制約条件を満たさない
クリティカルパスを前記論理回路中に有するときに、前
記クリティカルパス上の一部又は全部およびその周辺の
回路を含む部分回路に対して、前記論理回路の論理を変
更することなく回路構成を変更することにより前記遅延
を変更し、前記遅延の制約条件を満たすことを目的関数
とする遅延最適化処理を行う論理合成手法において、前
記論理回路のテクノロジマッピングに用いるテクノロジ
ライブラリの情報を入力するライブラリ入力処理と、論
理合成対象となる論理回路記述を入力する回路入力処理
と、遅延や面積などの前記論理回路の前記制約条件を入
力する制約条件入力処理と、論理の最適化を行なう論理
最適化処理と、与えられた面積制約を満たすことを目的
関数に、テクノロジライブラリブロックを前記論理回路
に割り当てる面積最適化処理と、与えられた前記遅延制
約を満たすことを目的関数に、使用する前記テクノロジ
ライブラリブロックの変更や前記論理回路の構成の変更
により遅延を最適化する遅延最適化処理の効果を、回路
変更前の回路変更対象部分の入力側における立ち上りス
ラックおよび立ち下がりスラックのうちの小さい方の値
よりも回路変更後の回路変更対象部分の入力側における
立ち上がりスラックおよび立ち下がりスラックがともに
大きな値を持つ場合に遅延改善の効果があると判断し、
仮定した回路変更対象部分の回路構成を論理合成対象回
路に対して適用する処理を含む高速遅延最適化処理と、
処理結果の論理回路を出力する回路出力処理とを有する
ことにある。また、前記高速化遅延最適化処理は、前記
論理合成対象回路の遅延解析を行ない、全ての素子の前
記論理信号到着時刻と前記論理信号到着要求時刻とクリ
ティカルパスをもとめる遅延解析処理と、前記クリティ
カルパスの有無を判断するクリティカルパス判断処理
と、バッファリング処理の未適用部分の有無の判断およ
び前記バッファリング処理を適用する回路変更部分を決
定する適用部分判断処理と、前記バッファリング処理に
よる回路変更以前の前記回路変更対象部分の入力端の立
ち上がりスラックと立ち下がりスラックの値の小さい方
を保存するスラック保存 処理と、前記バッファリング処
理による回路変更対象部分の回路構成を仮定する遅延最
適化回路変更処理と、この遅延最適化回路変更処理で仮
定された前記回路変更対象部分の回路構成の出力側から
送出先の入力側に論理信号到着要求時刻を伝播し前記回
路変更対象部分の前記入力端一箇所での前記論理信号到
着要求時刻および前記論理信号到着時刻差のスラックを
もとめる部分回路遅延解析処理と、前記スラック保存処
理で保存された前記スラックよりも前記部分回路遅延解
析処理でもとめた立ち上がりスラックと立ち下がりスラ
ックがともに大きな値をもつ場合に遅延改善の効果があ
ると判断し、仮定した回路変更対象部分の回路構成を前
記論理合成対象回路に対して適用する効果判断処理とを
有することもできる。
【0011】
【実施例】次に本発明について図面を参照して説明す
る。
る。
【0012】図1は、本発明の論理合成手法の処理手順
を示す全体処理フローである。
を示す全体処理フローである。
【0013】ライブラリ入力処理100ではテクノロジ
ライブラリ情報101を読み込み、回路入力処理102
では論理合成の対象となる論理回路記述103を読み込
み、制約条件入力処理104では論理回路記述103に
対する制約条件105を読み込み、論理最適化処理10
6では読み込まれた論理回路記述103に対して2段論
理最適化や論理多段化の処理等のテクノロジに依存しな
い最適化を行ない、面積最適化処理107では制約条件
105の面積制約を満たすことを目的関数にテクノロジ
ライブラリブロックを論理回路に割り当て、高速遅延最
適化処理108では制約条件105の遅延制約を満たす
ことを目的関数に、使用するテクノロジライブラリブロ
ックの変更や回路の構成を変更しテクノロジライブラリ
ブロックの割り当てを変更し、回路出力処理109では
論理合成結果の論理回路記述110を出力する。
ライブラリ情報101を読み込み、回路入力処理102
では論理合成の対象となる論理回路記述103を読み込
み、制約条件入力処理104では論理回路記述103に
対する制約条件105を読み込み、論理最適化処理10
6では読み込まれた論理回路記述103に対して2段論
理最適化や論理多段化の処理等のテクノロジに依存しな
い最適化を行ない、面積最適化処理107では制約条件
105の面積制約を満たすことを目的関数にテクノロジ
ライブラリブロックを論理回路に割り当て、高速遅延最
適化処理108では制約条件105の遅延制約を満たす
ことを目的関数に、使用するテクノロジライブラリブロ
ックの変更や回路の構成を変更しテクノロジライブラリ
ブロックの割り当てを変更し、回路出力処理109では
論理合成結果の論理回路記述110を出力する。
【0014】図2は、高速遅延最適化処理108の詳細
を示す処理フローである。以下に図2を用いてバッファ
リング処理を用いる場合の高速遅延最適化処理の詳細を
説明する。
を示す処理フローである。以下に図2を用いてバッファ
リング処理を用いる場合の高速遅延最適化処理の詳細を
説明する。
【0015】遅延解析処理200では論理合成対象回路
の遅延解析を行ない、全ての素子の論理信号到着時刻と
論理信号到着要求時刻とクリティカルパスをもとめ、ク
リティカルパス判断処理201ではクリティカルパスの
有無を判断し、適用部分判断処理202ではバッファリ
ング処理の未適用部分の有無の判断およびバッファリン
グ処理を適用する回路変更部分を決定し、スラック保存
処理203ではバッファリング処理による回路変更以前
の回路変更部分の入力端の立ち上がりスラックと立ち下
がりスラックの値の小さい方を保存し、遅延最適化回路
変更処理204ではバッファリング処理による回路変更
部分の回路構成を仮定し、部分回路遅延解析処理205
では遅延最適化回路変更処理204で仮定された回路変
更部分の回路構成の出力側から入力側に論理信号到着要
求時刻を伝播し回路変更部分の入力端でのスラックをも
とめ、効果判断処理206ではスラック保存処理203
で保存されたスラックよりも部分回路遅延解析処理20
5でもとめた立ち上がりスラックと立ち下がりスラック
がともに大きな値をもつ場合に遅延改善の効果があると
判断し、仮定した回路変更部分の回路構成を論理合成対
象回路に対して適用する。
の遅延解析を行ない、全ての素子の論理信号到着時刻と
論理信号到着要求時刻とクリティカルパスをもとめ、ク
リティカルパス判断処理201ではクリティカルパスの
有無を判断し、適用部分判断処理202ではバッファリ
ング処理の未適用部分の有無の判断およびバッファリン
グ処理を適用する回路変更部分を決定し、スラック保存
処理203ではバッファリング処理による回路変更以前
の回路変更部分の入力端の立ち上がりスラックと立ち下
がりスラックの値の小さい方を保存し、遅延最適化回路
変更処理204ではバッファリング処理による回路変更
部分の回路構成を仮定し、部分回路遅延解析処理205
では遅延最適化回路変更処理204で仮定された回路変
更部分の回路構成の出力側から入力側に論理信号到着要
求時刻を伝播し回路変更部分の入力端でのスラックをも
とめ、効果判断処理206ではスラック保存処理203
で保存されたスラックよりも部分回路遅延解析処理20
5でもとめた立ち上がりスラックと立ち下がりスラック
がともに大きな値をもつ場合に遅延改善の効果があると
判断し、仮定した回路変更部分の回路構成を論理合成対
象回路に対して適用する。
【0016】図3(a)および(b)は、本発明の実施
例におけるバッファリング処理による遅延最適化のため
の回路変更適用例を示すブロック図である。本適用例は
バッファリング処理としてバッファ挿入処理を用いる。
例におけるバッファリング処理による遅延最適化のため
の回路変更適用例を示すブロック図である。本適用例は
バッファリング処理としてバッファ挿入処理を用いる。
【0017】図3(a)はバッファリング処理適用前の
回路変更対象部分を示し、図3(b)はバッファリング
処理適用後の回路変更対象部分を示す。論理素子300
〜306は任意の論理素子である。但し論理素子300
は外部入力端子またはフリップフロップ等のブロックの
出力端子であってもよく、論理素子301〜306は外
部出力端子またはフリップフロップ等のブロックの入力
端子であってもよい。論理信号は論理素子300から論
理素子301〜306の方向に伝播するものとする。遅
延解析処理200の遅延解析結果に対して、クリティカ
ルパス判断処置201がクリティカルパス有りと判断
し、適用部分判断処理202が図3(a)の部分をバッ
ファリング処理を適用する回路変更対象部分として決定
したとする。論理素子300から論理素子301への論
理信号経路がクリティカルパスであるとする。
回路変更対象部分を示し、図3(b)はバッファリング
処理適用後の回路変更対象部分を示す。論理素子300
〜306は任意の論理素子である。但し論理素子300
は外部入力端子またはフリップフロップ等のブロックの
出力端子であってもよく、論理素子301〜306は外
部出力端子またはフリップフロップ等のブロックの入力
端子であってもよい。論理信号は論理素子300から論
理素子301〜306の方向に伝播するものとする。遅
延解析処理200の遅延解析結果に対して、クリティカ
ルパス判断処置201がクリティカルパス有りと判断
し、適用部分判断処理202が図3(a)の部分をバッ
ファリング処理を適用する回路変更対象部分として決定
したとする。論理素子300から論理素子301への論
理信号経路がクリティカルパスであるとする。
【0018】スラック保存処理203により論理素子3
00の立ち上がりスラックと立ち下がりスラックの値の
小さい方を保存する。遅延最適化回路変更処理204に
より論理素子300の出力に直接接続される負荷容量を
削減するためにバッファ素子307を論理素子300に
接続し、論理素子304〜306の接続を論理素子30
0からバッファ素子307に変更すると仮定する。
00の立ち上がりスラックと立ち下がりスラックの値の
小さい方を保存する。遅延最適化回路変更処理204に
より論理素子300の出力に直接接続される負荷容量を
削減するためにバッファ素子307を論理素子300に
接続し、論理素子304〜306の接続を論理素子30
0からバッファ素子307に変更すると仮定する。
【0019】部分回路遅延解析処理205により仮定さ
れた回路変更対象部分の回路構成に対して出力側から入
力側に論理信号到着要求時刻を伝播し、論理素子300
のスラックをもとめる。効果判断処理206によりスラ
ック保存処理203で保存されたスラックより部分回路
遅延解析処理205により求めた論理素子300の立ち
上がりスラックと立ち下がりスラックが共に大きな値を
もつ場合には遅延削減の効果があったと判断し、仮定し
た回路変更対象部分の回路構成を論理合成対象回路に対
して適用する。従って、本発明の論理合成手法における
遅延最適化を判断するための計算量は、(回路変更後の
回路変更対象部分の遅延計算量)+(回路変更対象部分
入力端のスラックの計算量)+(スラックの比較計算
量)となる。従って、前述した従来の遅延最適化を判断
するための計算量よりもはるかに短時間の計算量とな
る。
れた回路変更対象部分の回路構成に対して出力側から入
力側に論理信号到着要求時刻を伝播し、論理素子300
のスラックをもとめる。効果判断処理206によりスラ
ック保存処理203で保存されたスラックより部分回路
遅延解析処理205により求めた論理素子300の立ち
上がりスラックと立ち下がりスラックが共に大きな値を
もつ場合には遅延削減の効果があったと判断し、仮定し
た回路変更対象部分の回路構成を論理合成対象回路に対
して適用する。従って、本発明の論理合成手法における
遅延最適化を判断するための計算量は、(回路変更後の
回路変更対象部分の遅延計算量)+(回路変更対象部分
入力端のスラックの計算量)+(スラックの比較計算
量)となる。従って、前述した従来の遅延最適化を判断
するための計算量よりもはるかに短時間の計算量とな
る。
【0020】図4は、バッファリング処理による遅延最
適化のための回路変更の他の適用例を示すブロック図で
ある。本適用例はバッファリング処理として回路二重化
処理を用いる。
適化のための回路変更の他の適用例を示すブロック図で
ある。本適用例はバッファリング処理として回路二重化
処理を用いる。
【0021】図4(a)はバッファリング処理適用前の
回路変更対象部分を示し、図4(b)はバッファリング
処理適用後の回路変更対象部分を示す。400〜408
は任意の論理素子である。但し論理素子400,401
は外部入力端子またはフリップフロップ等のブロックの
出力端子であってもよく、論理素子403〜408は外
部出力端子またはフリップロップ等のブロックの入力端
子であってもよい。論理信号は論理素子400から論理
素子402〜408の方向に伝播するものとする。
回路変更対象部分を示し、図4(b)はバッファリング
処理適用後の回路変更対象部分を示す。400〜408
は任意の論理素子である。但し論理素子400,401
は外部入力端子またはフリップフロップ等のブロックの
出力端子であってもよく、論理素子403〜408は外
部出力端子またはフリップロップ等のブロックの入力端
子であってもよい。論理信号は論理素子400から論理
素子402〜408の方向に伝播するものとする。
【0022】遅延解析処理200の遅延解析結果に対し
て、クリティカルパス判断処理201がクリティカルパ
ス有りと判断し、適用部分判断処理202が図4(a)
の部分をバッファリング処理を適用する回路変更対象部
分として決定したとする。論理素子400から論理素子
402を通過し論理素子403への論理信号経路がクリ
ティカルパスであるとする。
て、クリティカルパス判断処理201がクリティカルパ
ス有りと判断し、適用部分判断処理202が図4(a)
の部分をバッファリング処理を適用する回路変更対象部
分として決定したとする。論理素子400から論理素子
402を通過し論理素子403への論理信号経路がクリ
ティカルパスであるとする。
【0023】スラック保存処理203により論理素子4
00の立ち上がりスラックと立ち下がりスラックの値の
小さい方を保存する。遅延最適化回路変更処理204に
より論理素子402の出力に直接接続される負荷容量を
削減するために、論理素子402と同じ論理を持つ論理
素子409をその出力論理が論理素子402と同一にな
るように論理素子400,401を論理素子409に接
続し、論理素子403の接続を論理素子402から論理
素子409に変更すると仮定する。
00の立ち上がりスラックと立ち下がりスラックの値の
小さい方を保存する。遅延最適化回路変更処理204に
より論理素子402の出力に直接接続される負荷容量を
削減するために、論理素子402と同じ論理を持つ論理
素子409をその出力論理が論理素子402と同一にな
るように論理素子400,401を論理素子409に接
続し、論理素子403の接続を論理素子402から論理
素子409に変更すると仮定する。
【0024】部分回路遅延解析処理205により仮定さ
れた回路変更を行なった場合の論理素子400のスラッ
クをもとめる。効果判断処理206により、スラック保
存処理203により保存された回路変更前のスラックよ
りも回路変更後の論理素子400の立ち上がりスラック
立ち下がりスラックが共に大きな値をもつ場合には、遅
延削減の効果があったと判断し、仮定した回路変更を論
理合成対象回路に対して適用する。
れた回路変更を行なった場合の論理素子400のスラッ
クをもとめる。効果判断処理206により、スラック保
存処理203により保存された回路変更前のスラックよ
りも回路変更後の論理素子400の立ち上がりスラック
立ち下がりスラックが共に大きな値をもつ場合には、遅
延削減の効果があったと判断し、仮定した回路変更を論
理合成対象回路に対して適用する。
【発明の効果】以上説明したように、バッファリング処
理を用いて遅延最適化処理を行なう場合、従来の論理合
成手法における遅延最適化処理の効果の判断処理では回
路変更部分の全ての出力端のスラックをもとめ、さらに
その最悪値をもとめる必要があるのに対し、本発明では
一箇所の入力端のスラックをもとめるのみで遅延最適化
処理の効果の判断を行なえるため、処理時間を削減でき
るという効果をもつ。また、バッファリング処理以外の
遅延最適化のための回路変更を行なう場合で、回路変更
部分の出力端数が入力端数を越えるような場合にも本発
明は有効である。
理を用いて遅延最適化処理を行なう場合、従来の論理合
成手法における遅延最適化処理の効果の判断処理では回
路変更部分の全ての出力端のスラックをもとめ、さらに
その最悪値をもとめる必要があるのに対し、本発明では
一箇所の入力端のスラックをもとめるのみで遅延最適化
処理の効果の判断を行なえるため、処理時間を削減でき
るという効果をもつ。また、バッファリング処理以外の
遅延最適化のための回路変更を行なう場合で、回路変更
部分の出力端数が入力端数を越えるような場合にも本発
明は有効である。
【0025】
【図1】本発明の全体処理フローを示す図である。
【図2】遅延最適化処理の詳細処理フローを示す図であ
る。
る。
【図3】本発明の第1の実施例を示すブロック図であ
る。
る。
【図4】本発明の第2の実施例を示すブロック図であ
る。
る。
100 ライブラリ入力処理 101 テクノロジライブラリ情報 102 回路入力処理 103 論理回路記述 104 制約条件入力処理 105 制約条件 106 論理最適化処理 107 面積最適化処理 108 高速遅延最適化処理 109 回路出力処理 110 論理回路記述 200 遅延解析処理 201 クリティカルパス判断処理 202 適用部分判断処理 203 スラック保存処理 204 遅延最適化回路変更処理 205 部分回路遅延解析処理 206 効果判断処理 300〜306 論理素子 307 バッファ素子 400〜409 論理素子
Claims (2)
- 【請求項1】 計算機およびその周辺入出力装置からな
るLSIの自動設計ツールを用いて論理変換、最適化に
より論理回路を自動生成し、遅延制約の制約条件を満た
さないクリティカルパスを前記論理回路中に有するとき
に、前記クリティカルパス上の一部又は全部およびその
周辺の回路を含む部分回路に対して、前記論理回路の論
理を変更することなく回路構成を変更することにより前
記遅延を変更し、前記遅延の制約条件を満たすことを目
的関数とする遅延最適化処理を行う論理合成手法におい
て、前記論理回路のテクノロジマッピングに用いるテク
ノロジライブラリの情報を入力するライブラリ入力処理
と、論理合成対象となる論理回路記述を入力する回路入
力処理と、遅延や面積などの前記論理回路の前記制約条
件を入力する制約条件入力処理と、論理の最適化を行な
う論理最適化処理と、与えられた面積制約を満たすこと
を目的関数に、テクノロジライブラリブロックを前記論
理回路に割り当てる面積最適化処理と、与えられた前記
遅延制約を満たすことを目的関数に、使用する前記テク
ノロジライブラリブロックの変更や前記論理回路の構成
の変更により遅延を最適化する遅延最適化処理の効果
を、回路変更前の回路変更対象部分の入力側における立
ち上りスラックおよび立ち下がりスラックのうちの小さ
い方の値よりも回路変更後の回路変更対象部分の入力側
における立ち上がりスラックおよび立ち下がりスラック
がともに大きな値を持つ場合に遅延改善の効果があると
判断し、仮定した回路変更対象部分の回路構成を論理合
成対象回路に対して適用する処理を含む高速遅延最適化
処理と、処理結果の論理回路を出力する回路出力処理と
を有することを特徴とする論理合成手法。 - 【請求項2】 前記高速化遅延最適化処理は、前記論理
合成対象回路の遅延解析を行ない、全ての素子の前記論
理信号到着時刻と前記論理信号到着要求時刻とクリティ
カルパスをもとめる遅延解析処理と、前記クリティカル
パスの有無を判断するクリティカルパス判断処理と、バ
ッファリング処理の未適用部分の有無の判断および前記
バッファリング処理を適用する回路変更部分を決定する
適用部分判断処理と、前記バッファリング処理による回
路変更以前の前記回路変更対象部分の入力端の立ち上が
りスラックと立ち下がりスラックの値の小さい方を保存
するスラック保存処理と、前記バッファリング処理によ
る回路変更対象部分の回路構成を仮定する遅延最適化回
路変更処理と、この遅延最適化回路変更処理で仮定され
た前記回路変更対象部分の回路構成の出力側から送出先
の入力側に論理信号到着要求時刻を伝播し前記回路変更
対象部分の前記入力端一箇所での前記論理信号到着要求
時刻および前記論理信号到着時刻差のスラックをもとめ
る部分回路遅延解析処理と、前記スラック保存処理で保
存された前記スラックよりも前記部分回路遅延解析処理
でもとめた立ち上がりスラックと立ち下がりスラックが
ともに大きな値をもつ場合に遅延改善の効果があると判
断し、仮定した回路変更対象部分の回路構成を前記論理
合成対象回路に対して適用する効果判断処理とを有する
請求項1記載の論理合成手法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4173922A JP2924464B2 (ja) | 1992-07-01 | 1992-07-01 | 論理合成手法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4173922A JP2924464B2 (ja) | 1992-07-01 | 1992-07-01 | 論理合成手法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0619999A JPH0619999A (ja) | 1994-01-28 |
JP2924464B2 true JP2924464B2 (ja) | 1999-07-26 |
Family
ID=15969566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4173922A Expired - Lifetime JP2924464B2 (ja) | 1992-07-01 | 1992-07-01 | 論理合成手法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2924464B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3921549C2 (de) * | 1989-06-30 | 1993-11-18 | Abs Pumpen Ag | Tauchmotorpumpe |
WO2002009816A1 (fr) | 2000-07-27 | 2002-02-07 | Tuyosi Matoba | Dispositif permettant d'abaisser et de porter a partir d'un emplacement sureleve |
JP6428207B2 (ja) | 2014-12-01 | 2018-11-28 | 株式会社ソシオネクスト | 設計方法、設計装置及びプログラム |
-
1992
- 1992-07-01 JP JP4173922A patent/JP2924464B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0619999A (ja) | 1994-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6006340A (en) | Communication interface between two finite state machines operating at different clock domains | |
US5883808A (en) | Logic circuit optimization apparatus and its method | |
US5416718A (en) | Circuit design support system and circuit producing method | |
JPH04101274A (ja) | 論理設計処理装置およびタイミング調整方法 | |
JP2993239B2 (ja) | 階層間ディレイ配分方法 | |
US7148135B2 (en) | Method of designing low-power semiconductor integrated circuit | |
JP2924464B2 (ja) | 論理合成手法 | |
US7028273B2 (en) | Delay optimization designing system and delay optimization designing method for a logic circuit and control program | |
US6317861B1 (en) | Delay verification device for logic circuit and delay verification method therefor | |
US6505340B2 (en) | Circuit synthesis method | |
JPH06259492A (ja) | 半導体集積回路のディレイ最適化システム、および、ディレイ最適化方法 | |
US20030212976A1 (en) | Automated buffer insertion incorporating congestion relief for use in connection with physical design of integrated circuit | |
US6532584B1 (en) | Circuit synthesis method | |
US7493580B2 (en) | Critical path estimating program, estimating apparatus, estimating method, and integrated circuit designing program | |
JP2737490B2 (ja) | 論理回路最適化処理方法 | |
US11256838B2 (en) | Establishing method for timing model | |
JP3004589B2 (ja) | パストランジスタ論理設計方法 | |
JP3102408B2 (ja) | 信号遅延低減方法及び装置 | |
JP3132655B2 (ja) | 半導体集積回路におけるクロックネットのレイアウト方法およびレイアウト装置 | |
JP2970227B2 (ja) | 多段論理最適化装置 | |
JP3134838B2 (ja) | ブロック間配線装置 | |
JP3374772B2 (ja) | 大小判定回路およびそれを用いたfifo回路 | |
JP3065671B2 (ja) | 論理回路設計支援装置 | |
JP3766234B2 (ja) | ネットワークにおける遅延改善箇所特定処理方法およびその装置,並びにそのプログラムの記録媒体 | |
JP2531188B2 (ja) | バツフアメモリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19990406 |