(57)【要約】【課題】回路規模の増大を抑制しつつタイミング違反を防止することが可能なフリップフロップ機能素子、半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計装置を提供する。【解決手段】設計装置のセルライブラリに、３個のラッチ回路（Ｌ１、Ｌ２、Ｌ３）を備えるフリップフロップＦＦ１をスタンダードセルとして記憶する。このラッチ回路Ｌ２の出力は、フリップフロップＦＦ１の出力信号Ｑとなる。ラッチ回路Ｌ２にデータ信号は、クロック信号ＣＫによりラッチされた信号をラッチ回路Ｌ３に供給する。このラッチ回路Ｌ３の出力は、フリップフロップＦＦ１の出力信号Ｑ２となる。ホールドタイム違反が生じる可能性があるエラーパスを発見した場合、設計処理部は、このエラーパスにおいて前段のフリップフロップＦＦの出力としてＱ出力からＱ２出力に変更する。【選択図】図２
2007142094.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、
前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、
前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子と
を備えたことを特徴とするフリップフロップ機能素子。
【請求項２】
クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子を含み、
前記フリップフロップ機能素子の出力信号と前記クロック信号とが入力される後段素子と接続された半導体集積回路であって、
前記後段素子においてホールドタイム違反を起こす可能性があるデータパスに対しては、前記第２出力端子を前記後段素子に接続したことを特徴とする半導体集積回路。
【請求項３】
クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子のパターンデータを用いて、半導体集積回路を設計する方法であって、
前記第１出力端子を用いてデータパスを形成して回路を設計する段階と、
前記データパスの後段素子におけるホールドタイムの検査を行なう段階と、
前記検査においてホールドタイム違反を起こす可能性がある場合には、前記後段素子を前記第１出力端子に代えて前記第２出力端子に接続する段階
を実行することを特徴とする半導体集積回路設計方法。
【請求項４】
前記検査においてホールドタイム違反を起こす可能性がない場合には、クロック信号及びデータ信号が入力されるフリップフロップ構成手段のみを備えたフリップフロップ機能素子に置換する段階を実行することを特徴とする請求項３に記載の半導体集積回路設計方法。
【請求項５】
クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子のパターンデータを用いて、半導体集積回路の設計装置であって、
前記第１出力端子を用いてデータパスを形成して回路を設計する設計処理手段と、
前記データパスの後段素子におけるホールドタイムの検査を行なうホールドタイム検査手段と、
前記検査においてホールドタイム違反を起こす可能性がある場合には、前記後段素子を前記第１出力端子に代えて前記第２出力端子に接続するデータパス修正手段と
を備えたことを特徴とする半導体集積回路設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フリップフロップ機能素子、半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計装置に関するものである。
【背景技術】
【０００２】
半導体集積回路の設計手法では、ゲートアレイ設計手法やスタンダードセル設計手法等が用いられている。ゲートアレイ設計手法は、セルを予め一定の場所に並べておき、配線のみを行なう。設計の自由度は制限されるが、配線工程のみで設計が完了する。
【０００３】
一方、スタンダードセル設計手法では、セルとよばれる特定の機能を持った回路を用意しておき、それらを並べることで回路を構成していく。ゲートアレイに比べ、より高集積化、高機能化が可能であり、システム・オン・チップを実現するＬＳＩとして注目されている。このような設計手法では、まず、機能ブロック図の作成後、ハードウェア記述言語を用いて詳細機能記述を作成する。そして、詳細機能記述を機能シミュレータにかけて機能検証を行なう。論理設計において、機能ブロック図および詳細機能記述を具体的なハードウェアに変換してロジック図（ネットリスト）を作成する。
【０００４】
次に、レイアウト設計においては、ネットリストに表現された論理をパターン設計が可能なレベルまで具体化する回路図を作成する。この回路図に基づいてパターン設計を行ない、回路図を構成する各素子や素子間を接続する配線を半導体基板上に具体化するためのマスクを作成する。
【０００５】
以上の設計フローで半導体基板上に作成された実際の論理ＬＳＩにおいて、フリップフロップ等、クロックに応じて動作する回路は、セットアップタイム及びホールドタイムが満足していないと正しく動作することができない。セットアップタイムとは、規定のデータ信号が他の入力信号（クロック信号）が変化する以前に加えられ、かつ維持されなければならない時間である。一方、ホールドタイムは、規定のデータ信号が他の入力信号（クロック信号）が変化した後、保持されなければならない時間である。
【０００６】
例えば、論理ＬＳＩにおいて、配線抵抗、配線容量、負荷容量などによって配線遅延が生じ、また、信号が論理ゲートを通過する際にも遅延が生じる。これら配線遅延や論理ゲートによる遅延によってデータ遅延やクロック遅延が発生すると、各フリップフロップの正常な同期動作が阻害されて、セットアップタイム違反やデータホールド違反等のタイミング違反が起こるおそれがある。
【０００７】
そこで、従来の回路設計方法では、論理設計において、レイアウト後に実際に生じる可能性がある配線遅延を予測し、その配線遅延に基づいてタイミング解析を行なっている。これにより、タイミング違反を起こすと予測される箇所を探し出し、タイミングを満足させるように回路変更を行なうことが一般的である。
【０００８】
この例を、図６を用いて説明する。論理回路において用いられるフリップフロップＦＦは、図６に示すように、２つのラッチ回路（Ｌ１、Ｌ２）から構成される。そして、データ信号Ｄに対して、クロック信号ＣＫを用いて、出力信号Ｑを出力する。
【０００９】
２以上のフリップフロップＦＦを備えた回路においては、共通したクロックソースからＣＴＳ（clock tree synthesis）を用いてクロック発生回路から同時期に各フリップフロ
ップＦＦにクロック信号を供給する。
【００１０】
しかし、クロック信号線にクロストークノイズ等が混入した場合、後段のフリップフロップＦＦへのクロック信号の供給が遅れる場合がある。この場合、前段のフリップフロップＦＦの出力信号Ｑが、クロック信号より先に後段のフリップフロップＦＦに供給されるために、ホールドタイム違反を発生する場合がある。
【００１１】
このようなタイミング違反を回避するための技術が開示されている（例えば、特許文献１参照。）。この文献記載の技術では、ゲートアレイやスタンダードセルなどの集積回路のレイアウト設計時に、クロックスキューやホールドタイムに関わる不具合が発生しないように配置段階で考慮する。具体的には、フリップフロップ間のデータ信号の経路内に挿入されるべきゲート回路の段数を計測し、段数が相対的に大きい経路に係るフリップフロップを相互に近傍に配置し、段数が相対的に小さい経路に係るフリップフロップを遠距離に配置する。
【００１２】
また、このようなホールドタイム違反を解消するために、図７に示すように、前段のフリップフロップＦＦの出力端子と、後段のフリップフロップＦＦの入力端子とを、遅延に応じて複数段のバッファＢを介して接続する。これにより、後段のフリップフロップＦＦに供給されるクロック信号ＣＫと、データ信号Ｄとのタイミングを調整することができる。
【００１３】
更に、ホールドタイム違反の防止と高集積化とを両立することが可能な半導体集積回路設計方法が検討されている（例えば、特許文献２参照。）。この文献記載の技術では、論理合成時に、ホールドタイム違反に関する制約は与えずに、セットアップタイム違反に関する制約のみを与える。そして、ネットリストのタイミング解析を行ない、フリップフロップＦＦ間のパスにおいてホールドタイム違反を検出した場合、フリップフロップＦＦ又はフリップフロップＦＦを修正用フリップフロップＦＦユニットに置換する。修正用フリップフロップＦＦユニットは、データ入力端子前とデータ出力端子後とにそれぞれ遅延回路を備えており、予めユニット化されると共にセル面積が最小化されてライブラリに登録される。
【特許文献１】特開平８−７７２２７号公報（図１）
【特許文献２】特開２００１−４４２８７号公報（図１）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、遅延時間は回路配置状況等によって異なり、遅延回路（バッファ）だけでは、ホールドタイム違反を回避できない場合がある。また、状況に応じて遅延回路を挿入していたのでは、回路設計が複雑になる。このようなバッファやインバータの挿入は、セルの面積の増大や配線の過密化を招く。この場合、物理的なデザインができなくなる可能性もある。
【００１５】
特に、１３０ｎｍやそれ以下のディープサブミクロンプロセスでは、セットアップタイム違反は解消される可能性があるが、細線化によりホールドタイム違反の問題が深刻化する可能性がある。このディープサブミクロンプロセスでは、クロストークノイズや電源電圧低下によるクロック信号の伝播遅延が顕著になる。このクロックの揺らぎは、スキューを悪化させ、深刻なホールドタイム違反を起こす。また、ホールドタイムは周波数に依存しないため、ホールドタイム違反の問題は低周波数化により解決できず、動作不能になる可能性もある。
【００１６】
本発明は、上記課題を解決するためになされたものであり、その目的は、ホールドタイ
ム違反の防止と高集積化とを両立することが可能なフリップフロップ機能素子、半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計装置を提供することにある。
【課題を解決するための手段】
【００１７】
上記問題点を解決するために、本発明のフリップフロップ機能素子は、クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたことを要旨とする。フリップフロップ機能素子は、通常のフリップフロップの出力信号に対して半周期分だけ遅れた出力信号を出力するため、十分な遅延を確保することができる。従って、ホールドタイム違反を生じたエラーパスにおいて、出力端子を変更するだけで、容易に修正することができる。
【００１８】
本発明は、クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子を含み、前記フリップフロップ機能素子の出力信号と前記クロック信号とが入力される後段素子と接続された半導体集積回路であって、前記後段素子においてホールドタイム違反を起こす可能性があるデータパスに対しては、前記第２出力端子を前記後段素子に接続したことを要旨とする。フリップフロップ機能素子は、通常のフリップフロップの出力信号に対して半周期分だけ遅れた出力信号を出力するため、十分な遅延を確保することができる。
【００１９】
本発明は、クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子のパターンデータを用いて、半導体集積回路を設計する方法であって、前記第１出力端子を用いてデータパスを形成して回路を設計する段階と、前記データパスの後段素子におけるホールドタイムの検査を行なう段階と、前記検査においてホールドタイム違反を起こす可能性がある場合には、前記後段素子を前記第１出力端子に代えて前記第２出力端子に接続する段階を実行することを要旨とする。フリップフロップ機能素子は、通常のフリップフロップの出力信号に対して半周期分だけ遅れた出力信号を出力するため、十分な遅延を確保することができる。従って、ホールドタイム違反を生じたエラーパスにおいて、出力端子を変更するだけで、容易に修正することができる。
【００２０】
本発明は、上記半導体集積回路の設計方法において、前記検査においてホールドタイム違反を起こす可能性がない場合には、クロック信号及びデータ信号が入力されるフリップフロップ構成手段のみを備えたフリップフロップ機能素子に置換する段階を実行することを要旨とする。半周期分だけ遅れた出力信号を利用しない場合には、小面積な回路を実現することができる。
【００２１】
本発明は、クロック信号及びデータ信号が入力されるフリップフロップ構成手段と、前記フリップフロップ構成手段の出力信号及び前記クロック信号が入力されるラッチ構成手段と、前記フリップフロップ構成手段からの信号を出力する第１出力端子、及び前記ラッチ構成手段からの信号を出力する第２出力端子とを備えたフリップフロップ機能素子のパターンデータを用いて、半導体集積回路の設計装置であって、前記第１出力端子を用いてデータパスを形成して回路を設計する設計処理手段と、前記データパスの後段素子におけるホールドタイムの検査を行なうホールドタイム検査手段と、前記検査においてホールドタイム違反を起こす可能性がある場合には、前記後段素子を前記第１出力端子に代えて前
記第２出力端子に接続するデータパス修正手段とを備えたことを要旨とする。フリップフロップ機能素子は、通常のフリップフロップの出力信号に対して半周期分だけ遅れた出力信号を出力するため、十分な遅延を確保することができる。従って、ホールドタイム違反を生じたエラーパスにおいて、出力端子を変更するだけで、容易に修正することができる。
【発明の効果】
【００２２】
本発明によれば、ホールドタイム違反の修正精度が高くかつ回路規模の増大が抑制された半導体集積回路を提供することができる。また、本発明によれば、ホールドタイム違反の修正を精度良く行なうと共に回路規模の増大を抑制することができる半導体集積回路の設計を行なうことができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を具体化した実施形態を図面と共に説明する。図１は、設計装置の概略構成を示すブロック図である。この設計装置は、入力部１０、表示部１５、テープ出力部１６が接続された設計処理部２０を備える。入力部１０は、オペレータからの操作入力を受け入れる。表示部１５は、設計処理部２０の各動作が画面上に表示される。更に、完成した回路設計図に関するデータはテープ出力部１６に出力される。
【００２４】
設計処理手段、データパス修正手段としての設計処理部２０は、セットアップタイム検査部２２、ホールドタイム検査手段としてのホールドタイム検査部２４、ネットリストデータ記憶部３２及びセルライブラリ３０の各動作を管理する。
【００２５】
セットアップタイム検査部２２、ホールドタイム検査部２４は、それぞれネットリストに基づいて生成された回路配置を用いてシミュレーションを実行し、セットアップタイムや、ホールドタイムを算出し、タイミング違反がないかどうかを検査する。
【００２６】
セルライブラリ３０は、この設計手法において用いるスタンダードセル（半導体集積回路を構成すべき基本的な素子）に関する情報が格納されるデータ記憶手段である。ここでは、スタンダードセルには、論理演算子やフリップフロップがあり、これらの面積や、各セルの遅延情報、セットアップタイム及びホールドタイムに関する制約情報を格納している。
【００２７】
本実施形態のセルライブラリ３０には、図２に示すように、フリップフロップ機能素子としてのフリップフロップＦＦ１に関するパターンデータが記録される。このフリップフロップＦＦ１は、３個のラッチ回路（Ｌ１、Ｌ２、Ｌ３）を備える。ラッチ回路（Ｌ１、Ｌ３）には、反転されたクロック信号ＣＫが入力される。ここで、２個のラッチ回路（Ｌ１、Ｌ２）がフリップフロップ構成手段として機能し、ラッチ回路（Ｌ３）がラッチ構成手段として機能する。
【００２８】
フリップフロップＦＦ１へのデータ信号Ｄはラッチ回路Ｌ１に入力され、クロック信号ＣＫによりラッチされた出力信号Ｑをラッチ回路Ｌ２に供給する。このラッチ回路Ｌ２の出力は、フリップフロップＦＦ１の第１出力端子から出力される出力信号Ｑとなる。ラッチ回路Ｌ２のデータ信号Ｄは、クロック信号ＣＫによりラッチされた出力信号Ｑをラッチ回路Ｌ３に供給する。このラッチ回路Ｌ３の出力は、フリップフロップＦＦ１の第２出力端子から出力される出力信号Ｑ２となる。
【００２９】
この場合のタイミングチャートを図３に示す。フリップフロップＦＦ１の出力信号Ｑは、クロック信号ＣＫの立ち上がり毎に変化し、先のデータ信号を出力する。一方、フリップフロップＦＦ１の出力信号Ｑ２は、クロック信号ＣＫの立ち下がり毎に変化し、先のデ
ータ信号を出力する。これにより、出力信号Ｑ２は出力信号Ｑに対して半周期分だけ遅れることになる。
【００３０】
ネットリストデータ記憶部３２は、ハードウェア記述言語（Hardware description language ：ＨＤＬ）で記述された半導体集積回路の機能及び構造に関するデータを格納しているデータ記憶手段である。ネットリストは、階層構造を保持しており、各機能ブロック内のネットリストと機能ブロック間のネットリストとからなる。
【００３１】
設計処理部２０は、セルライブラリ３０に登録された素子を用い、ネットリストデータ記憶部３２に格納されたデータに基づいてゲートレベルの回路設計データを生成する。そして、この回路設計データをホールドタイム検査部２４、セットアップタイム検査部２２に供給する。
【００３２】
ホールドタイム検査部２４、セットアップタイム検査部２２は、回路設計データに表されるすべての論理回路の構造と各論理回路間の全ての接続情報とを解析する。
以上の構成において、本実施形態における半導体集積回路のタイミングの解析及び修正方法を、図４に示すフローチャートに従って説明する。
【００３３】
まず、電源、大規模機能ブロック（メモリ、アナログ回路等）の配置（フロアプラン）の生成を行なう（ステップＳ１−１）。フロアプランの生成は、入力部１０からの指示に基づいて実行される。
【００３４】
次に、生成したフロアプランに基づいて、設計処理部２０が設計処理を実行する（ステップＳ１−２）。ここでは、設計処理部２０は、ネットリストデータ記憶部３２に格納されたデータに基づいて各セルの配線を行なうことにより回路設計を行なう。
【００３５】
この実施例を、図５を用いて説明する。図５（ａ）において、前段素子としてのフリップフロップＦＦ１１の出力端子が、後段素子としてのフリップフロップＦＦ１２の入力端子に接続されている。各フリップフロップ（ＦＦ１１，１２）は、それぞれクロック信号ＣＫの立ち上がり（又は立ち下がり）によって同期する。ここでは、フリップフロップＦＦ間の接続は、前段のフリップフロップＦＦの出力信号Ｑを、後段のフリップフロップＦＦにデータ信号Ｄとして供給する。
【００３６】
次に、セットアップタイムの検査処理を実行する（ステップＳ１−３）。ここでは、セットアップタイム検査部２２が、セットアップタイム違反に関する制約のみを用いて検査を行なう。すなわち、実際に生じる配線遅延を予測し、その配線遅延に基づくタイミング解析を行なう。これにより、セットアップタイム違反を起こす可能性があるデータパスを特定することができる。
【００３７】
そして、セットアップタイム違反が生じる可能性があるデータパス（エラーパス）を発見した場合（ステップＳ１−４において「ＮＯ」の場合）、セットアップタイム検査部２２は設計処理部２０に検査結果を供給する。この検査結果にはエラーパスを特定するための情報を含む。
【００３８】
この場合、設計処理部２０は、セットアップタイムに関するタイミングを満足させるように修正を行なう（ステップＳ１−５）。具体的には、設計処理部２０は、セットアップタイム違反が生じる可能性があるデータパス上の論理ゲート段数を、論理圧縮等の手法を用いて削減する修正を行なう。このように、セットアップタイム違反の可能性があるエラーパスがなくなるまで、ステップＳ１−３〜Ｓ１−５を繰り返す。
【００３９】
一方、セットアップタイム違反が生じる可能性を解消できた場合（ステップＳ１−４において「ＹＥＳ」の場合）、ホールドタイムの検査処理を実行する（ステップＳ１−６）。ここでは、ホールドタイム検査部２４が、ホールドタイム違反に関する制約のみを用いて検査を行なう。すなわち、実際に生じる配線遅延を予測し、その配線遅延に基づくタイミング解析を行なう。これにより、ホールドタイム違反を起こす可能性があるデータパスを特定することができる。
【００４０】
そして、ホールドタイム違反が生じる可能性があるデータパス（エラーパス）を発見した場合（ステップＳ１−７において「ＮＯ」の場合）、ホールドタイム検査部２４は設計処理部２０に検査結果を供給する。この検査結果にはエラーパスを特定するための情報を含む。
【００４１】
この場合、設計処理部２０は、ホールドタイムに関するタイミングを満足させるように修正を行なう（ステップＳ１−８）。ここでは、設計処理部２０は、ホールドタイム違反が生じる可能性があるデータパスにおいて、前段のフリップフロップＦＦの出力としてＱ出力からＱ２出力に変更する。この修正を、図５を用いて説明する。図５（ｂ）に示すように、パスＤＰにおいてホールドタイム違反が生じる可能性がある場合、フリップフロップＦＦ１１の出力端子をＱ出力からＱ２出力に変更する。このように、ホールドタイム違反の可能性があるエラーパスがなくなるまで、ステップＳ１−６〜Ｓ１−８を繰り返す。
【００４２】
そして、ホールドタイム違反を解消できた場合（ステップＳ１−７において「ＹＥＳ」の場合）、設計処理部２０がテープアウトを行なう（ステップＳ１−９）。これにより、ＬＳＩの製造に用いるマスクデータを生成することができる。
【００４３】
本実施形態によれば、以下のような効果を得ることができる。
・  上記実施形態によれば、３個のラッチ回路（Ｌ１、Ｌ２、Ｌ３）を備えるフリップフロップＦＦ１を用いて回路設計を行なう。このフリップフロップＦＦ１は、３個のラッチ回路により、フリップフロップＦＦ１は通常の出力信号Ｑの他に、出力信号Ｑに対して半周期分だけ遅れた出力信号Ｑ２を出力する。このため、ホールドタイム違反を生じたエラーパスにおいて、Ｑ出力からＱ２出力に変更するだけで、十分な遅延を確保することができる。
【００４４】
・  上記実施形態によれば、フリップフロップＦＦ１は機能ユニットとしてセルライブラリ３０に準備されている。これにより、ホールドタイム違反の可能性があるエラーパスにおいて遅延処理を行なう場合に、Ｑ出力からＱ２出力への配線の変更だけ修正を行なうことができる。バッファやインバータを直列させて挿入する場合と異なり、小面積で簡易な設計を実現することができる。
【００４５】
・  上記実施形態によれば、出力の遅延処理には、フリップフロップＦＦ１内のラッチ回路Ｌ３を用いる。バッファによる遅延処理を行なう場合にはバッファ毎にバラツキが多いが、ラッチ回路による遅延はクロック信号によるため、遅延を確実に制御することができる。また、バッファに比べて大きな遅延を確保することができる。
【００４６】
なお、上記各実施形態は以下のように変更してもよい。
○  上記実施形態では、クロック入力端子に入力されたクロックの立ち上がりのタイミングにのみ動作するポジティブエッジトリガ形の同期式フリップフロップを用いたが、これに限定されるものではなく、クロックの立ち下がりのタイミングにのみ動作するネガティブエッジトリガ形に適用することも可能である。
【００４７】
○  上記実施形態では、フリップフロップＦＦ１１とフリップフロップＦＦ１２とは、
直接、接続したが、所定の論理回路を介して接続してもよい。この論理回路は、論理演算子を組み合わせて構成している回路（インバータ、加算器，カウンタ，乗算器，シフタ等）がある。この場合においても適用することが可能である。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態の回路設計装置の説明図。
【図２】本発明の実施形態のフリップフロップの構成の説明図。
【図３】本発明の実施形態のフリップフロップのタイミングチャートの説明図。
【図４】本発明の実施形態の設計手順の説明図。
【図５】本発明の実施形態のフリップフロップの接続の説明図であり、（ａ）は修正前の接続、（ｂ）は修正後の接続路の説明図。
【図６】従来のフリップフロップの構成の説明図。
【図７】従来のフリップフロップの接続の説明図。
【符号の説明】
【００４９】
１０…入力部、１５…表示部、１６…テープ出力部、２０…設計処理手段、データパス修正手段としての設計処理部、２２…セットアップタイム検査部、２４…ホールドタイム検査手段としてのホールドタイム検査部、３０…セルライブラリ、ＦＦ，ＦＦ１，ＦＦ０１，ＦＦ０２，ＦＦ１１，ＦＦ１２…フリップフロップ、Ｌ１，Ｌ２，Ｌ３…ラッチ回路、ＣＫ…クロック信号，Ｄ…データ信号，Ｑ，Ｑ２…出力信号、ＤＰ…パス。
【図１】
2007142094.tif 000003
【図２】
2007142094.tif 000004
【図３】
2007142094.tif 000005
【図４】
2007142094.tif 000006
【図５】
2007142094.tif 000007
【図６】
2007142094.tif 000008
【図７】
2007142094.tif 000009