(57)【要約】【課題】  フリップフロップ回路の入出力端子の入力容量や駆動力が一定に保たれるようにする。【解決手段】  フリップフロップ回路は、マスターラッチ部１０１と、スレーブラッチ部１０２と、データ出力選択部１０７とを有する。マスターラッチ部１０１は、トライステートインバータ１１１を含み、データ入力端子１０５は上記トライステートインバータ１１１に接続される。データ出力選択部１０７は、パスゲート１１７、パスゲート１１８、インバータ１１９によって構成され、上記インバータ１１９がデータ出力端子１０６に接続される。フリップフロップ回路の入力容量は、データ入力端子１０５が接続されるトライステートインバータ１１１のトランジスタのゲート容量によって定まり、駆動能力は、インバータ１１９の駆動能力によって定まるので、クロック信号などのタイミング信号の状態によって変化しない。【選択図】図１
2006005661.tif 000002
【特許請求の範囲】
【請求項１】
入力信号が入力される入力端子と、
タイミング信号が第１の状態から第２の状態に変化する直前に、上記入力端子から入力された信号を、上記タイミング信号が第２の状態の間保持するマスターラッチ部と、
上記タイミング信号が第２の状態から第１の状態に変化する直前に、上記マスターラッチ部から入力された信号を、上記タイミング信号が第１の状態の間保持するスレーブラッチ部と、
上記タイミング信号が第２の状態のときに、上記マスターラッチ部に保持されている信号に応じた信号が出力される一方、上記タイミング信号が第１の状態のときに、上記スレーブラッチ部に保持されている信号に応じた信号が出力される出力端子と、
を備えたフリップフロップ回路であって、
上記入力端子における入力容量、および出力端子における駆動能力の少なくとも一方は、上記タイミング信号が第１の状態のときと第２の状態のときとで等しくなるように構成されていることを特徴とするフリップフロップ回路。
【請求項２】
請求項１のフリップフロップ回路であって、
上記入力端子における入力容量、および出力端子における駆動能力が、それぞれ、上記タイミング信号が第１の状態のときと第２の状態のときとで等しくなるように構成されていることを特徴とするフリップフロップ回路。
【請求項３】
請求項２のフリップフロップ回路であって、
セルベース設計時に用いられる標準セルとして回路特性の抽出がなされていることを特徴とするフリップフロップ回路。
【請求項４】
請求項２および請求項３のうちの何れか１項のフリップフロップ回路であって、
さらに、上記タイミング信号が第２の状態のときに、上記マスターラッチ部に保持されている信号に応じた信号を選択する一方、上記タイミング信号が第１の状態のときに、上記スレーブラッチ部に保持されている信号に応じた信号を選択して、上記出力端子から出力させる選択部を有することを特徴とするフリップフロップ回路。
【請求項５】
請求項４のフリップフロップ回路であって、上記選択部は、
上記タイミング信号が第２の状態のときに、上記マスターラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第１の状態のときに出力がハイインピーダンス状態となる第１のトライステート素子と、
上記タイミング信号が第１の状態のときに、上記スレーブラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第２の状態のときに出力がハイインピーダンス状態となる第２のトライステート素子とを有し、
上記第１のトライステート素子、および第２のトライステート素子の出力が共に上記出力端子に接続されるとともに、
上記タイミング信号が第２の状態のときの上記第１のトライステート素子の駆動能力と、上記タイミング信号が第１の状態のときの上記第２のトライステート素子の駆動能力とが、互いに等しく設定されていることを特徴とするフリップフロップ回路。
【請求項６】
請求項５のフリップフロップであって、
上記トライステート素子は、トライステートインバータであることを特徴とするフリップフロップ。
【請求項７】
請求項４のフリップフロップ回路であって、上記選択部は、
上記タイミング信号が第２の状態のときに、上記マスターラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第１の状態のときに出力がハイインピーダンス状態となる第１のトライステート素子と、
上記タイミング信号が第１の状態のときに、上記スレーブラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第２の状態のときに出力がハイインピーダンス状態となる第２のトライステート素子と、
上記第１のトライステート素子、および第２のトライステート素子の出力信号が共通に入力されて、出力信号が上記出力端子に出力されるドライバ回路と、
を有することを特徴とするフリップフロップ回路。
【請求項８】
請求項７のフリップフロップ回路であって、
上記第１のトライステート素子、および第２のトライステート素子が、トライステートインバータであることを特徴とするフリップフロップ回路。
【請求項９】
請求項４のフリップフロップ回路であって、上記選択部は、
上記タイミング信号が第２の状態のときに、導通状態になって、上記マスターラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第１の状態のときに出力がハイインピーダンス状態となる第１のパスゲートと、
上記タイミング信号が第１の状態のときに、導通状態となって、上記スレーブラッチ部に保持されている信号に応じた信号を出力する一方、上記タイミング信号が第２の状態のときに出力がハイインピーダンス状態となる第２のパスゲートと、
上記第１のパスゲート、および第２のパスゲートの出力信号が共通に入力されて、出力信号が上記出力端子に出力されるドライバ回路と、
を有することを特徴とするフリップフロップ回路。
【請求項１０】
請求項７から請求項９のうちの何れか１項のフリップフロップ回路であって、
上記ドライバ回路がインバータであることを特徴とするフリップフロップ回路。
【請求項１１】
請求項２から請求項１０のうちの何れか１項のフリップフロップ回路であって、
上記タイミング信号が第１の状態のときと第２の状態のときとで、同一のトランジスタのゲートが上記入力端子に電気的に接続されるように構成されていることを特徴とするフリップフロップ回路。
【請求項１２】
請求項２から請求項１１のうちの何れか１項のフリップフロップ回路であって、
上記マスターラッチ部は、上記タイミング信号によって制御されるトライステート素子を有し、
上記入力端子は、上記トライステート素子に接続されていることを特徴とするフリップフロップ回路。
【請求項１３】
請求項１２のフリップフロップ回路であって、
上記トライステート素子は、トライステートインバータであることを特徴とするフリップフロップ回路。
【請求項１４】
請求項１から請求項１３のうちの何れか１項のフリップフロップ回路であって、
リセット信号またはセット信号の少なくとも何れか一方に応じて、信号の保持状態がリセットまたはセットされるように構成されていることを特徴とするフリップフロップ回路。
【請求項１５】
請求項１から請求項１４のうちの何れか１項のフリップフロップ回路であって、
上記入力端子とは異なる他の入力端子を有し、切り替え制御信号に応じて、上記入力端子または他の入力端子に入力される信号に基づいた信号の保持動作をするように構成されていることを特徴とするフリップフロップ回路。
【請求項１６】
データ入力端子と、データ出力端子と、マスターラッチ部と、スレーブラッチ部と、バイパス部と、データ出力選択部とを備えたフリップフロップ回路であって、
上記マスターラッチ部は、第１のトライステートインバータと、第１のインバータと、第２のトライステートインバータとを有し、
上記第１のトライステートインバータが、所定のタイミング信号が第１の状態のときにハイインピーダンス状態になり、第２の状態のときに上記データ入力端子から入力された信号の反転信号を出力し、
上記第１のインバータが、上記第１のトライステートインバータの出力の反転信号を出力し、
上記第２のトライステートインバータが、上記タイミング信号が第２の状態のときにハイインピーダンス状態になり、第１の状態のときに上記第１のインバータの出力の反転信号を出力して上記第１のインバータに入力するように構成され、
上記スレーブラッチ部は、第１のパスゲートと、第２のインバータと、第３のトライステートインバータとを有し、
上記第１のパスゲートが、上記タイミング信号が第２の状態のときにハイインピーダンス状態になり、第１の状態のときに上記第１のインバータの出力を通過させ、
上記第２のインバータが、上記第１のパスゲートの出力の反転信号を出力し、
上記第３のトライステートインバータが、上記タイミング信号が第１の状態のときにハイインピーダンス状態になり、第２の状態のときに上記第２のインバータの出力の反転信号を出力して上記第２のインバータに入力に入力するように構成され、
上記バイパス部は、上記第１のトライステートインバータの出力をそのまま伝達するように構成され、
上記データ出力選択部は、第２のパスゲートと第３のパスゲートと、第３のインバータとを有し、
上記第２のパスゲートが、上記タイミング信号が第１の状態のときにハイインピーダンス状態になり、第２の状態のときに上記第２のインバータの出力を通過させ、
上記第３のパスゲートが、上記タイミング信号が第２の状態のときにハイインピーダンス状態になり、第１の状態のとき、上記第１のトライステートインバータの出力を通過させ、
上記第３のインバータが、上記第２のパスゲートと第３のパスゲートの出力が共通に入力されて、その反転信号を上記データ出力端子に出力するように構成されていることを特徴とするフリップフロップ回路。
【請求項１７】
請求項１６のフリップフロップ回路における上記第１のトライステートインバータに代えて、
上記タイミング信号が第１の状態のときにハイインピーダンス状態になる一方、第２の状態のときに、所定の選択信号に応じて、第１のデータ入力端子または第２のデータ入力端子から入力された信号の反転信号を出力するトライステートセレクタを備えたことを特徴とするフリップフロップ回路。
【請求項１８】
請求項１７のフリップフロップ回路における、
上記第２のトライステートインバータに代えて、
上記タイミング信号が第２の状態のときにハイインピーダンス状態になる一方、
第１の状態のときに、所定のリセット信号に応じて、上記第１のインバータの出力の反転信号、または上記マスターラッチ部をリセット状態にするレベルの信号を出力して上記第１のインバータに入力するトライステート論理ゲート素子を備えるとともに、
上記第２のインバータに代えて、
上記リセット信号に応じて、上記第１のパスゲートの出力の反転信号、または上記スレーブラッチ部をリセット状態にするレベルの信号を出力する論理ゲート素子を備えたことを特徴とするフリップフロップ回路。
【請求項１９】
請求項１７のフリップフロップ回路における、
上記第１のインバータに代えて、
所定のセット信号に応じて、上記トライステートセレクタの出力の反転信号、または上記マスターラッチ部をセット状態にするレベルの信号を出力する論理ゲート素子を備えるとともに、
上記第３のトライステートインバータに代えて、
上記タイミング信号が第１の状態のときにハイインピーダンス状態になる一方、
第２の状態のときに、上記セット信号に応じて、上記第２のインバータの出力の反転信号、または上記スレーブラッチ部をセット状態にするレベルの信号を出力して上記第２のインバータに入力するトライステート論理ゲート素子を備えたことを特徴とするフリップフロップ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主として、半導体集積回路として形成されたトランジスタによって構成されるフリップフロップ回路に関するものである。
【背景技術】
【０００２】
近年の半導体集積回路（ＬＳＩ）に要求される性能は、高性能化の一途を辿っており、ＬＳＩメーカーは、その高機能化、高速動作化を競っている。また、半導体集積回路で実現される同期型デジタル信号処理においては、フリップフロップ回路を用いた回路設計が必要不可欠であり、半導体集積回路の高速化には、フリップフロップ回路の高速化が共通課題となっている。
【０００３】
そこで、従来から高速動作を目的とした種々のフリップフロップ回路の回路構成が提案されており、例えば、マスタラッチおよびスレーブラッチに加えて、入力信号をそのまま出力させるバイパス回路を備えたものが知られている（例えば、特許文献１参照。）。
【０００４】
より詳しくは、上記フリップフロップ回路は、図７に示すように、マスターラッチを含むマスター部１００１と、スレーブラッチを含むスレーブ部１００２と、バイパス部１００３とを備えて構成されている。
【０００５】
上記マスター部１００１は、パスゲート１０１１、インバータ１０１２、およびインバータ１０１３を有し、クロック信号入力端子１００４から入力されるクロック信号に同期して、クロック信号がＨ（Ｈｉｇｈ）レベルの間、データ入力端子１００５から入力されるデータを保持するようになっている。
【０００６】
スレーブ部１００２は、クロック信号がＬ（Ｌｏｗ）レベルの間、マスター部１００１から出力されるデータを保持し、インバータ１０１５およびパスゲート１０１６を介して出力するようになっている。
【０００７】
また、バイパス部１００３は、インバータ１０１４、およびパスゲート１０１７を有し、クロック信号がＨ（Ｈｉｇｈ）レベルの間、マスター部１００１に保持されているデータを出力するようになっている。
【０００８】
すなわち、クロック信号が立ち上がってから立ち下がるまでの期間は、バイパス部１００３のパスゲート１０１７がデータを通過させる一方、クロック信号が立ち下がってから立ち上がるまでの期間は、スレーブ部１００２のパスゲート１０１６がデータを通過させて、データ出力端子１００６から出力させるようになっている。これによって、クロック信号の立ち上がりエッジのタイミングでは、マスター部１００１のデータは、スレーブ部１００２よりも高速に動作するバイパス部１００３を介して出力されるので、短時間にデータ出力端子１００６からデータを出力させることができる。
【特許文献１】米国特許第５，６５６，９６２号明細書（Ｆｉｇ．５）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記従来のフリップフロップ回路は、クロック信号の状態によって、入出力端子１００５・１００６の物理特性（データ入力端子１００５についての入力容量や、データ出力端子１００６についての出力駆動能力）が変動し、フリップフロップ回路を含む回路の設計、開発を短期間に行うことが困難であるという課題を有していた。
【００１０】
具体的には、データ入力端子１００５に関しては、クロック信号が例えば「１」（Ｈレベル）の時には、マスター部１００１の入力部におけるパスゲート１０１１が閉じている状態であって、データ入力端子１００５から見たときの容量としては、パスゲート１０１１のソース容量までしか見えない。これに対して、クロック信号が例えば「０」（Ｌレベル）の時には、パスゲート１０１１が開いている状態であって、データ入力端子１００５から見たときの容量としては、パスゲート１０１１のソース容量、ドレイン容量、さらに、インバータ１０１３のゲート容量、インバータ１０１４のゲート容量、およびインバータ１０１２のドレイン容量の総和、すなわちクロック信号が「１」の時とは異なる容量が入力容量として見えることになる。
【００１１】
また、データ出力端子１００６に関しては、クロック信号が「０」の時には、スレーブ部１００２のインバータ１０１５が、（パスゲート１０１６を介して）データ出力端子１００６に接続される後続回路を駆動することになる。これに対して、クロック信号が「１」の時には、バイパス部１００３のインバータ１０１４が、（パスゲート１０１７を介して）すなわちクロック信号が「０」のときとは異なる駆動能力で後続回路を駆動することになる。
【００１２】
一方、近年の半導体集積回路市場では、短期間の開発手法による迅速なＬＳＩの開発、市場投入が、従来に増して強く要求されている。そして、一般に、短期間での半導体集積回路の開発を実現するためには、トランジスタレベルでの物理特性抽出データを用いた回路設計手法よりも、論理ゲートレベルでの（フリップフロップ等の回路単位での）物理特性抽出データを用いた回路設計手法の方が有利である。すなわち、フリップフロップ、ナンド、インバータ、アンド等の論理ゲートごとに設けた標準セルをライブラリに登録し、ライブラリに登録した標準セルを組み合わせるセルベース設計で半導体集積回路を設計することによって短期間での設計が可能となる。
【００１３】
ところが、前記のように入出力の物理特性がクロック信号の状態に依存すると、標準セルとしてライブラリに登録するための物理特性の抽出が困難であり、また、クロック信号への依存関係を含めて物理特性を抽出してライブラリに登録したとしても、そのようなセルを使用するとタイミング検証に場合分けが必要となり、煩雑であるため、上記のようなセルベース設計による回路設計が困難である。したがって、フリップフロップ回路を含む回路の設計、開発を短期間に行うことができない。
【００１４】
本発明は、上記の点に鑑み、フリップフロップ回路の入出力端子の物理特性が、クロック信号などのタイミング信号の状態に係わらず、一定に保たれるようにすることを課題としている。
【課題を解決するための手段】
【００１５】
上記の課題を解決するため、本発明は、フリップフロップ回路であって、
入力信号が入力される入力端子と、
タイミング信号が第１の状態から第２の状態に変化する直前に、上記入力端子から入力された信号を、上記タイミング信号が第２の状態の間保持するマスターラッチ部と、
上記タイミング信号が第２の状態から第１の状態に変化する直前に、上記マスターラッチ部から入力された信号を、上記タイミング信号が第１の状態の間保持するスレーブラッチ部と、
上記タイミング信号が第２の状態のときに、上記マスターラッチ部に保持されている信号に応じた信号が出力される一方、上記タイミング信号が第１の状態のときに、上記スレーブラッチ部に保持されている信号に応じた信号が出力される出力端子と、
を備えたフリップフロップ回路であって、
上記入力端子における入力容量、および出力端子における駆動能力の一方、または双方は、上記タイミング信号が第１の状態のときと第２の状態のときとで等しくなるように構成されていることを特徴とする。
【００１６】
これにより、タイミング信号が第１の状態から第２の状態に変化する直前に入力された信号が短い遅延時間で出力されるとともに、タイミング信号の状態に係わらず、入力容量や駆動能力が一定になる。それゆえ、上記入力容量や駆動能力を抽出し標準セル化して、短期間に回路設計をすることができるようになる。
【００１７】
ここで、上記フリップフロップ回路は、マスターラッチ部またはスレーブラッチ部に保持されている信号に応じた信号を選択して出力する選択部を備えてもよい。上記選択部は、アクティブ状態（出力がハイインピーダンスではない状態）での駆動能力が互いに等しく、かつ、排他的にアクティブ状態になるトライステート素子を用いて構成することができる。また、互いに排他的にアクティブ状態になるパスゲートと、これらの出力が共通に入力される１つのドライバ回路を用いて構成してもよい。
【００１８】
また、入力信号が、パスゲートなどのように電気的な接続関係が変化する素子ではないトライステート素子などに入力されるようにすることにより、すなわち例えば素子を構成するトランジスタのソースやドレインではなくゲートだけに入力されるようにしてもよい。
【００１９】
また、上記トライステート素子やドライバ回路として、トライステートインバータやインバータを用いれば、別途インバータを設けることなく、所望のレベルの信号を保持させたり出力させたりすることが容易にできる。
【発明の効果】
【００２０】
本発明によれば、クロック信号などのタイミング信号の状態に係わらず、フリップフロップ回路の入出力端子の物理特性が一定に保たれる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施形態を図面に基づいて詳細に説明する。
【００２２】
《発明の実施形態１》
図１は、本発明の実施形態１に係るフリップフロップの回路図である。
【００２３】
マスターラッチ部１０１は、トライステートインバータ１１１、インバータ１１２、およびインバータ１１３によって構成され、タイミング信号入力端子１０４から入力されるタイミング信号が例えば「０」（Ｌレベル）の時にデータ書き込み動作、「１」（Ｈレベル）の時にデータ保持動作を行うラッチ動作を行うようになっている。上記インバータ１１２の駆動能力は、トライステートインバータ１１１の駆動能力よりも小さく設定されている。
【００２４】
スレーブラッチ部１０２は、パスゲート１１４、インバータ１１５、およびインバータ１１６によって構成され、タイミング信号が「０」の時にデータ保持動作、「１」の時にデータ書き込み動作を行うようになっている。上記インバータ１１６の駆動能力は、パスゲート１１４を介したインバータ１１３の駆動能力よりも小さく設定されている。
【００２５】
バイパス部１０３は、マスターラッチ部１０１に書き込まれ、保持されているデータをスレーブラッチ部１０２を経由せずに出力する信号配線で、これによって、スレーブラッチ部１０２を経由して出力するよりも、遅延時間を短くできるようになっている。
【００２６】
データ出力選択部１０７は、パスゲート１１７、パスゲート１１８、インバータ１１９によって構成され、タイミング信号入力端子１０４から入力されるタイミング信号に応じて、スレーブラッチ部１０２の出力、またはバイパス部１０３の出力の何れか一方を選択し、データ出力端子１０６から出力するようになっている。より詳しくは、タイミング信号が「０」の時は、スレーブラッチ部１０２の出力が選択され、「１」の時は、バイパス部１０３の出力が選択される。
【００２７】
インバータ１２０は、タイミング信号入力端子１０４から入力されるタイミング信号の反転信号を生成するようになっている。
【００２８】
上記のように構成されていることによって、データ入力端子１０５から入力されたデータ（信号）は、トライステートインバータ１１１を介して、インバータ１１２とインバータ１１３とによって構成されるラッチに入力される。すなわち、データ入力端子１０５に電気的に接続されているのは、タイミング信号の状態に係わらず、トライステートインバータ１１１を構成するトランジスタのゲート端子だけなので、入力容量は一定に保たれる。
【００２９】
また、パスゲート１１７・１１８からの出力信号は、何れが導通状態になる場合でも、インバータ１１９を介してデータ出力端子１０６に出力される。すなわち、フリップフロップ回路の駆動能力はインバータ１１９の駆動能力によって定まるので、やはり、タイミング信号の状態に係わらず、一定に保たれる。
【００３０】
それゆえ、回路特性を抽出してセルベース設計時に用いられる標準セル化することが容易に可能であり、そのような標準セル化されたフリップフロップ回路を含むセルライブラリを用いることにより、短期間に回路設計をすることが可能になる。
【００３１】
ここで、上記フリップフロップ回路におけるデータの保持動作自体は、従来のフリップフロップ回路と同様に、以下のようにして行われる。
【００３２】
タイミング信号が「０」の時は、マスターラッチ部１０１がデータ書き込み動作を行い、データ入力端子１０５から入力される信号がマスターラッチ部１０１に書き込まれる。また、スレーブラッチ部１０２はデータ保持動作を行うため、スレーブラッチ部１０２の出力はタイミング信号が「０」になる直前の状態から変化しない。バイパス部１０３はマスターラッチ部１０１に書き込まれる信号をデータ出力選択部１０７に伝達するが、データ出力選択部１０７は、スレーブラッチ部１０２から出力されるデータを選択して、データ出力端子１０６から出力する。すなわち、データ出力端子１０６からは、データ入力端子１０５に入力される値に係わらず、スレーブラッチ部１０２に保持されているデータが出力され続ける。
【００３３】
一方、タイミング信号が「０」から「１」に変化する時は、マスターラッチ部１０１は、データ書き込み動作から、データ保持動作へと移行し、タイミング信号が「０」から「１」へ変化する直前のデータ入力端子１０５の値が書き込まれた状態となる。また、スレーブラッチ部１０２は、データ保持動作からデータ書き込み動作へと移行し、タイミング信号が「０」から「１」へ変化した後、マスターラッチ部１０１の出力を書き込む状態となる。バイパス部１０３は、マスターラッチ部１０１に書き込まれた信号をデータ出力選択部１０７に伝達し、データ出力選択部１０７は、スレーブラッチ部１０２の出力を選択する状態から、バイパス部１０３によって伝達された信号を選択する状態へ移行する。すなわち、スレーブラッチ部１０２に保持されている値がデータ出力端子１０６から出力される状態から、タイミング信号が「０」から「１」へ変化する直前にデータ入力端子１０５に入力された値がマスターラッチ部１０１とバイパス部１０３とを経由して（スレーブラッチ部１０２を経由せず）、出力される状態になる。
【００３４】
このようにバイパス部１０３を経由して信号が伝達されることによって、タイミング信号の立ち上がりエッジのタイミングから、その時点でデータ入力端子１０５に入力された値がデータ出力端子１０６から出力されるまでの遅延時間が、スレーブラッチ部１０２を経由するよりも短く抑えられる。
【００３５】
タイミング信号が「１」の時は、マスターラッチ部１０１はデータ保持動作を行うため、マスターラッチ部１０１の出力は変化しない。スレーブラッチ部１０２はデータ書き込み動作を行うが、入力であるマスターラッチ部１０１の出力が変化しないため、スレーブラッチ部１０２の出力も変化しない。バイパス部１０３はマスターラッチ部１０１に保持された信号をデータ出力選択部１０７に伝達し続け、データ出力選択部１０７はバイパス部１０３の出力を選択して、マスターラッチ部１０１に保持されているデータをデータ出力端子１０６に出力する。すなわち、データ入力端子１０５の値に係わらず、マスターラッチ部１０１に保持されたデータが出力され続ける。
【００３６】
タイミング信号が「１」から「０」に変化する時は、マスターラッチ部１０１は、データ保持動作からデータ書き込み動作へと移行し、タイミング信号が「１」から「０」へ変化した後にデータ入力端子１０５に入力される値を書き込む状態となる。スレーブラッチ部１０２はデータ書き込み動作から、データ保持動作へと移行し、タイミング信号が「１」から「０」へ変化する直前のマスターラッチ部１０１の出力が書き込まれて、その値を保持する状態となる。バイパス部１０３は、マスターラッチ部１０１に書き込まれた信号を伝達するが、データ出力選択部１０７は、バイパス部１０３によって伝達された信号を選択する状態から、スレーブラッチ部１０２の出力を選択する状態へ移行する。すなわち、タイミング信号が「１」の時にマスターラッチ部１０１で保持されていた値が、スレーブラッチ部１０２で保持されるようになり、この値をデータ出力選択部１０７が選択する。そこで、データ出力端子１０６からの出力はタイミング信号が「１」の時の状態から変化しない。
【００３７】
以上のように、タイミング信号の立ち上がりエッジのタイミングで、データ入力端子１０５の値が書き込まれ、データ出力端子１０６から出力されるという、フリップフロップ動作が行われるとともに、上記立ち上がりエッジのタイミングでは高速な出力がなされる。
【００３８】
また、前記のように、入力容量や駆動能力が一定に保たれるので、物理特性を抽出し標準セル化して短期間に回路設計をすることができる。
【００３９】
《発明の実施形態２》
実施形態１のようにインバータ１１２・１１６を有するマスターラッチ部１０１およびスレーブラッチ部１０２に代えて、図２に示すように、トライステートインバータ２１２・２１６を有するマスターラッチ部２０１およびスレーブラッチ部２０２を用いるようにしてもよい。（なお、以下の実施形態において、前記実施形態１等と同様の機能を有する構成要素については同一の符号を付して説明を省略する。）
上記トライステートインバータ２１２・２１６は、それぞれトライステートインバータ１１１またはパスゲート１１４とは逆のタイミング信号の状態で動作し、各素子の出力がぶつからないようになっている。
【００４０】
このように構成される場合でも、入力されたデータの保持動作自体は、実施形態１で説明したように従来のフリップフロップ回路と同じである。
【００４１】
また、タイミング信号の状態に係わらず、データ入力端子１０５に電気的に接続されているのはトライステートインバータ１１１を構成するトランジスタのゲート端子だけであるとともに、フリップフロップ回路の駆動能力がインバータ１１９の駆動能力によって定まることによって、入力容量および駆動能力が一定に保たれる点は、実施形態１と同じである。それゆえ、やはり、物理特性を抽出して標準セル化することが容易に可能であり、そのような標準セル化されたフリップフロップ回路を含むセルライブラリを用いることにより、短期間に回路設計をすることが可能になる。
【００４２】
《発明の実施形態３》
実施形態１のデータ出力選択部１０７に代えて、図３に示すように、トライステートインバータ３１７・３１８を用いたデータ出力選択部３０７が設けられるようにしてもよい。上記トライステートインバータ３１７・３１８は、タイミング信号の値が「０」の時にスレーブラッチ部１０２の出力を選択する（トライステートインバータ３１７がアクティブ、トライステートインバータ３１８がハイインピーダンス状態となる）一方、「１」の時にバイパス部１０３の出力を選択する（トライステートインバータ３１７がハイインピーダンス、トライステートインバータ３１８がアクティブ状態となる）ようになっている。
【００４３】
ここで、上記トライステートインバータ３１７・３１８は、駆動能力（物理特性）が互いに等しくなるように設定されている。具体的には、例えばこれらを構成する素子（トランジスタ）のサイズや形状等が揃うように設計されている。すなわち、トライステートインバータ３１７の駆動能力は、タイミング信号の立ち上がり時の応答性には影響しないので小さく設定することができるが、敢えてトライステートインバータ３１８と同じ駆動能力に設定することによって、トライステートインバータ３１７・３１８の何れがアクティブ状態となる場合でも、フリップフロップ回路としての駆動能力が変化しないようになっている。これによって、やはり、物理特性を抽出して標準セル化することが容易に可能であり、そのような標準セル化されたフリップフロップ回路を含むセルライブラリを用いることによって、短期間に回路設計をすることが可能になる。
【００４４】
なお、上記のようにトライステートインバータ３１７・３１８を用いる場合でも、実施形態１、２と同様、図４に示すようにデータ出力端子１０６との間にインバータ１１９やバッファなどの出力ドライバを設けるようにしてもよい。この場合には、トライステートインバータ３１７・３１８の駆動能力が互いに等しくない場合でも、フリップフロップ回路としての駆動能力を一定に保つことができる。ただし、そのようなインバータ１１９等を設けずにトライステートインバータ３１７・３１８の駆動能力が等しくなるようにする方が、インバータ１１９等による遅延が生じない分だけ、高速に動作させることができる。
【００４５】
《発明の実施形態４》
半導体集積回路のスキャンテストなどに用いることができるフリップフロップ回路の例を説明する。このフリップフロップ回路は、図５に示すように、実施形態２（図２）のトライステートインバータ１１１を有するマスターラッチ部１０１に代えて、トライステートセレクタ４３０を有するマスターラッチ部４０１を備えている。また、スレーブラッチ部２０２の出力に直列に接続されたインバータ４３１・４３２を介して反転データ出力端子４１０が接続され、データ出力端子１０６の反転信号が出力されるようになっている。が設けられている。
【００４６】
上記トライステートセレクタ４３０は、ＰＭＯＳ４２０〜４２４（Ｐ型ＭＯＳトランジスタ）とＮＭＯＳ４２５〜４２９（Ｎ型ＭＯＳトランジスタ）を備えて構成され、タイミング信号が「１」の時には、実施形態１、２のトライステートインバータ１１１と同様に出力がハイインピーダンス状態となる一方、タイミング信号が「０」の時には、スキャン制御端子４０９から入力されるスキャン制御信号に応じて、データ入力端子１０５から入力されるデータ信号、またはスキャン入力端子４０８から入力されるスキャンテスト信号の何れか一方の反転信号を出力する（セレクト機能付トライステートインバータの動作を行う）ようになっている。より詳しくは、スキャン制御信号が「０」の時には、図２のトライステートインバータ１１１と同じ動作をする一方、スキャン制御信号が「１」の時には、スキャン入力端子４０８から入力される信号に対して、同様の動作をするようになっている。
【００４７】
上記のように構成される場合にも、データ入力端子１０５やスキャン入力端子４０８に電気的に接続されているのは、タイミング信号の状態に係わらず、トライステートセレクタ４３０を構成するトランジスタのゲート端子だけなので、入力容量は一定に保たれる。また、フリップフロップ回路の駆動能力はインバータ１１９の駆動能力によって定まるので、やはり、タイミング信号の状態に係わらず、一定に保たれる。
【００４８】
ここで、反転データ出力端子４１０から出力される反転信号は、パスゲート１１７やインバータ１１９の出力に基づいて生成されるようにして、データ出力端子１０６からの出力信号と同じように遅延が短くなるようにしてもよいが、半導体集積回路のスキャンテストの場合のように反転データ出力端子４１０から出力される信号を高速化する必要性が低い場合には、上記のようにスレーブラッチ部１０２の出力に基づいて生成されるようにすることができる。これによって、パスゲート１１８等の負荷を小さく抑え、駆動能力を増大させることなく、データ出力端子１０６から出力される信号の高速性を確保することが容易にできる。
【００４９】
なお、インバータ４３１の出力をそのまま（インバータ４３２を介さず）出力端子に接続するなどして、データ出力端子１０６とは別途同じ論理の信号が出力されるようにしてもよい。この場合には、データ出力端子１０６から出力される信号によっては、高速性を必要とされる回路だけを駆動させるようにすることができる。
【００５０】
《発明の実施形態５》
図６に示すように、実施形態４のマスターラッチ部４０１、およびスレーブラッチ部２０２に代えて、トライステートインバータ５１２またはナンド５１５を有するマスターラッチ部５０１、およびスレーブラッチ部５０２を設け、リセット機能を持たせるようにしてもよい。これによって、従来のリセット機能を有するフリップフロップ回路と同様に、タイミング信号が「１」の時にリセット端子５３１から入力されるリセット信号が「０」になると、データ出力端子５０６から「０」を出力するリセット動作が行われる。
【００５１】
上記のように構成される場合にも、データ入力端子１０５やスキャン入力端子４０８がトライステートセレクタ４３０に接続される点、およびデータ出力端子１０６がインバータ１１９に接続される点は実施形態４と同じであり、タイミング信号の状態に係わらず入力容量や駆動能力は一定に保たれる。
【００５２】
《発明の実施形態６》
図７に示すように、実施形態４のマスターラッチ部４０１、およびスレーブラッチ部２０２に代えて、ナンド６１３またはトライステートナンド６１６を有するマスターラッチ部６０１、およびスレーブラッチ部６０２を設け、リセット機能を持たせるようにしてもよい。これによって、従来のセット機能を有するフリップフロップ回路と同様に、タイミング信号が「１」の時にセット端子６３１から入力されるセット信号が「０」になると、データ出力端子５０６から「１」を出力するセット動作が行われる。
【００５３】
上記のように構成される場合にも、タイミング信号の状態に係わらず入力容量や駆動能力は一定に保たれる点は、実施形態５等と同じである。
【００５４】
なお、上記各実施形態においては、タイミング信号の立ち上がりエッジで動作するフリップフロップ回路の例を示したが、立下りエッジで動作するフリップフロップ回路を構成してもよい。具体的には、例えばタイミング信号入力端子１０４から入力される信号と、これがインバータ１２０によって反転された信号とを入れ替えるなどしてもよい。
【００５５】
また、トライステートインバータ１１１等を制御するために、タイミング信号入力端子１０４から入力されたタイミング信号と、これがインバータ１２０によって反転された信号とが用いられる例を示したが、これに限るものではない。すなわち、例えばタイミング信号入力端子１０４から入力されたタイミング信号がインバータ１２０によって反転された信号と、これがさらに反転された信号とが用いられるようにするなどしてもよい。
【００５６】
また、タイミング信号が立ち上がったときにデータ入力端子１０５から入力された信号と同論理の信号がデータ出力端子１０６から出力される例を示したが、反転論理の信号が出力されるようにしてもよい。具体的には、例えばトライステートインバータ１１１や、インバータ１１９、反転出力のトライステートセレクタ４３０に代えて、トライステートバッファや、バッファ、非反転出力のトライステートセレクタを用いたり、奇数個のインバータを介在させるようにしたりしてもよい。
【００５７】
ここで、データ入力端子１０５に接続される素子としては、インバータとしての機能を有するものであっても、バッファとしての機能を有するものであっても、これらを構成するトランジスタのゲートだけにデータ入力端子１０５が接続されるのであれば、入力容量はタイミング信号の状態に係わらず一定にすることができる。
【００５８】
また、実施形態５、６においても、実施形態４の変形例で説明したように、パスゲート１１７やインバータ１１９の出力に基づいて、遅延時間の短い反転信号が出力されるようにしてもよいし、スレーブラッチ部１０２の出力に基づいて、データ出力端子１０６と同論理の信号が出力されるようにしてもよい。さらに、実施形態１〜３についても、同様にして、データ出力端子１０６と同論理で遅延時間の短い信号や、同論理または反転論理で遅延時間が相対的に長い信号も出力されるようにしてもよい。
【００５９】
また、実施形態５、６では、リセット端子５３１やセット端子６３１が「０」の時に、リセット状態やセット状態となる構成についての例を示したが、これに限らず、「１」の時に、リセット状態やセット状態となる構成であってもかまわない。
【００６０】
また、上記の他にも、各実施形態や変形例の構成要素を論理的に可能な範囲で種々組み合わせてもよい。具体的には、例えば、実施形態３（図３）のようにトライステートインバータ３１７・３１８を有するデータ出力選択部３０７を、実施形態２（図２）のようにトライステートインバータ２１２・２１６を有するマスターラッチ部２０１およびスレーブラッチ部２０２が用いられる構成に適用してもよい。また、実施形態５、６（図６、７）の構成を組み合わせて、リセットおよびセットがともに可能なフリップフロップ回路を構成してもよいし、また、これらのリセットやセット可能な構成を実施形態１〜３の構成に適用してもよい。
【００６１】
また、上記のようなバイパス部を有しないフリップフロップ回路について、マスターラッチ部の入力部にトライステート素子などを用いて入力容量がタイミング信号に依存しないようにしてもよい。
【産業上の利用可能性】
【００６２】
本発明にかかるフリップフロップ回路は、クロック信号などのタイミング信号の状態に係わらず、フリップフロップ回路の入出力端子の物理特性が一定に保たれる効果を有し、主として、半導体集積回路として形成されたトランジスタによって構成されるフリップフロップ回路等として有用である。
【図面の簡単な説明】
【００６３】
【図１】実施形態１のフリップフロップ回路の構成を示す回路図である。
【図２】実施形態２のフリップフロップ回路の構成を示す回路図である。
【図３】実施形態３のフリップフロップ回路の構成を示す回路図である。
【図４】実施形態３の変形例のフリップフロップ回路の構成を示す回路図である。
【図５】実施形態４のフリップフロップ回路の構成を示す回路図である。
【図６】実施形態５のフリップフロップ回路の構成を示す回路図である。
【図７】実施形態６のフリップフロップ回路の構成を示す回路図である。
【図８】従来のフリップフロップ回路の構成を示す回路図である。
【符号の説明】
【００６４】
１０１      マスターラッチ部
１０２      スレーブラッチ部
１０３      バイパス部
１０４      タイミング信号入力端子
１０５      データ入力端子
１０６      データ出力端子
１０７      データ出力選択部
１１１      トライステートインバータ
１１２      インバータ
１１３      インバータ
１１４      パスゲート
１１５      インバータ
１１６      インバータ
１１７      パスゲート
１１８      パスゲート
１１９      インバータ
１２０      インバータ
２０１      マスターラッチ部
２０２      スレーブラッチ部
２１２      トライステートインバータ
２１６      トライステートインバータ
３０７      データ出力選択部
３１５      インバータ
３１６      インバータ
３１７      トライステートインバータ
３１８      トライステートインバータ
４０１      マスターラッチ部
４０６      データ出力端子
４０８      スキャン入力端子
４０９      スキャン制御端子
４１０      反転データ出力端子
４２０〜４２４    ＰＭＯＳ
４２５〜４２９    ＮＭＯＳ
４３０      トライステートセレクタ
４３１      インバータ
４３２      インバータ
５０１      マスターラッチ部
５０２      スレーブラッチ部
５０６      データ出力端子
５１２      トライステートインバータ
５１５      ナンド
５３１      リセット端子
６０１      マスターラッチ部
６０２      スレーブラッチ部
６１３      ナンド
６１６      トライステートナンド
６３１      セット端子
８２３      ドライバ
８２４      ドライバ
【図１】
2006005661.tif 000003
【図２】
2006005661.tif 000004
【図３】
2006005661.tif 000005
【図４】
2006005661.tif 000006
【図５】
2006005661.tif 000007
【図６】
2006005661.tif 000008
【図７】
2006005661.tif 000009
【図８】
2006005661.tif 000010