(57)【要約】【課題】スキュー耐性に優れ大規模で高速なアプリケーション回路に適用することができるフリップ／フロップ回路を提供する。【解決手段】本発明のフリップ／フロップ回路は、ゲート信号となるクロック信号の反転信号のエッジでデータをトグルすることによってデータをラッチするプライマリラッチ１０と、プライマリラッチ１０の出力側に接続され、クロック信号の正転信号のエッジでデータをトグルすることによってプライマリラッチ１０からのデータをラッチするセカンダリラッチ２０と、プライマリラッチ１０のデータ入力側に接続され、クロック信号の正転信号のエッジでデータをトグルすることによってデータをラッチするサードラッチ３０と、を備えている。【選択図】　図１
2004135111.tif 000002
【特許請求の範囲】
【請求項１】
ゲート信号の反転信号のエッジでデータをトグルすることによってデータをラッチするプライマリラッチ手段と、
前記プライマリラッチ手段の出力側に接続され、前記ゲート信号の正転信号のエッジでデータをトグルすることによって前記プライマリラッチ手段からのデータをラッチするセカンダリラッチ手段と、
を具備する、エッジトリガタイプのフリップ／フロップ回路であって、
前記プライマリラッチ手段のデータ入力側に接続され、前記ゲート信号の正転信号のエッジでデータをトグルすることによってデータをラッチするサードラッチ手段と、
を有することを特徴とするフリップ／フロップ回路。
【請求項２】
前記ゲート信号は、クロック信号である、ことを特徴とする請求項１記載のフリップ／フロップ回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲート信号のエッジでデータをトグルするエッジトリガタイプのフリップ／フロップ回路に関し、特に、スキュー耐性に優れ大規模で高速なアプリケーション回路に適用することができるフリップ／フロップ回路に関するものである。
【０００２】
【従来の技術】
図２は、従来のフリップ／フロップ回路の構成を示す図である。図２において、このフリップ／フロップ回路は、クロック信号の反転信号のエッジでデータをトグルすることによってデータをラッチするプライマリラッチ１１０と、プライマリラッチの出力側に接続され、クロック信号のエッジでデータをトグルすることによってプライマリラッチからのデータをラッチするセカンダリラッチ１２０と、を備えている。
【０００３】
図２において、フリップ／フロップ回路は、クロック信号のエッジで動作するため、シーケンサなどの同期回路設計では非常に有用な素子であり、アプリケーション回路には、殆どこのフリップ／フロップ回路が含まれている。
【０００４】
このフリップ／フロップ回路は、図２に示したように、プライマリラッチ１１０とセカンダリラッチ１２０とで構成され、各ラッチのゲート信号の極性を一方のラッチ（図２では、セカンダリラッチ１２０）ではクロック信号に対し正転、他方のラッチ（図２では、プライマリラッチ１１０）では反転させておくことで、クロック信号のエッジに対してのみ、トグル動作を行うものである。
【０００５】
近年、アプリケーション回路が大規模化していくことで、アプリケーション回路内部のフリップ／フロップ回路の数が増大している。
【０００６】
フリップ／フロップ回路は、クロック信号のエッジでトグル動作を行う素子であるため、あるクロックラインに接続されているフリップ／フロップ回路においては、クロック信号のエッジがそろっている必要がある。このエッジが不揃いの場合、そのずれによってクロックスキューが生じ、フリップ／フロップ回路におけるミストグルの原因になる。
【０００７】
そのため、アプリケーション回路中の特定のクロックラインに繋がっている複数のフリップ／フロップ回路のクロック間のスキューを所定の値（「前段のフリップ／フロップ回路のクロック信号から出力への伝播遅延時間」−「次段のフリップ／フロップ回路のホールド時間」）以下に抑える、いわゆるクロックツリーシンセシスを行っている。
【０００８】
【発明が解決しようとする課題】
しかしながら、従来のフリップ／フロップ回路においては、アプリケーション回路が大規模化しているため、特定のクロックラインに繋がるフリップ／フロップ回路の数も増大し、上述のクロックツリーシンセシスで対応することが困難になってきている。
【０００９】
また、特定のクロックラインに繋がるフリップ／フロップ回路の数を減らすため、アプリケーション回路を幾つかの小さいブロックに分割してクロックツリーシンセシスを適用することも考えられる。しかし、この場合、ブロック間のスキューが発生し、このブロック間のスキューを調整するためには、各ブロックからのクロックに対しての遅延やスキュー情報を基に行う必要があり、スキュー調整が非常に困難になる。
【００１０】
従って、本発明の目的は、スキュー耐性に優れ大規模で高速なアプリケーション回路に適用することができるフリップ／フロップ回路を提供することである。
【００１１】
【課題を解決するための手段】
上記課題を解決するため、本発明のフリップ／フロップ回路は、ゲート信号の反転信号のエッジでデータをトグルすることによってデータをラッチするプライマリラッチ手段と、プライマリラッチ手段の出力側に接続され、ゲート信号の正転信号のエッジでデータをトグルすることによってプライマリラッチ手段からのデータをラッチするセカンダリラッチ手段と、を具備する、エッジトリガタイプのフリップ／フロップ回路であって、プライマリラッチ手段のデータ入力側に接続され、ゲート信号の正転信号のエッジでデータをトグルすることによってデータをラッチするサードラッチ手段と、を有することを特徴とする。
【００１２】
ここで、ゲート信号は、クロック信号にするとよい。
【００１３】
プライマリラッチ手段のデータ入力側にサードラッチ手段を設けたことにより、スキュー耐性に優れたものとなる。
【００１４】
【発明の実施の形態】
以下、図面を参照して本発明のフリップ／フロップ回路の実施の形態を説明する。
【００１５】
図１は、本発明のフリップ／フロップ回路を示す図である。図１において、このフリップ／フロップ回路は、ゲート信号となるクロック信号の反転信号のエッジでデータをトグルすることによってデータをラッチするプライマリラッチ１０と、プライマリラッチ１０の出力側に接続され、クロック信号の正転信号のエッジでデータをトグルすることによってプライマリラッチ１０からのデータをラッチするセカンダリラッチ２０と、プライマリラッチ１０のデータ入力側に接続され、クロック信号の正転信号のエッジでデータをトグルすることによってデータをラッチするサードラッチ３０と、を備えている。
【００１６】
このフリップ／フロップ回路は、アプリケーション回路を分割したブロックの入力段又は出力最終段に使用し、ブロック毎にスキュー調整を行う。
【００１７】
図１において、クロック信号の立下がりエッジでは、サードラッチ３０とプライマリラッチ１０で立下りエッジタイプのフリップ／フロップ回路と等価な動作を行う。
【００１８】
一方、クロック信号の立上がりエッジでは、プライマリラッチ１０とセカンダリラッチ２０で立上がりエッジタイプのフリップ／フロップ回路と等価な動作を行う。
【００１９】
このため、クロック信号の立下がりエッジが発生すると、サードラッチ３０及びプライマリラッチ１０の動作によりデータを素子中に取り込むことができ、この時点での素子の出力は不変となる。
【００２０】
その後、クロック信号の立上がりエッジが発生すると、プライマリラッチ１０及びセカンダリラッチ２０の動作により、先の立下がりエッジの発生時に取り込まれていたデータを正転・反転出力に反映する。
【００２１】
このフリップ／フロップ回路を各ブロックの入力初段に使用すると、ブロック間で許される最大スキュー量は、クロックの半周期（Ｄｕｔｙ５０）となり、スキューの耐性がかなり増大する。一方、回路動作上は、従来のフリップ／フロップ回路を使用した場合と変わらない。
【００２２】
【発明の効果】
以上述べた通り、本発明のフリップ／フロップ回路によれば、プライマリラッチのデータ入力側にサードラッチを設けたことにより、スキュー耐性が向上し、大規模で高速なアプリケーション回路を低コストで、且つ安全に開発することができるようになった。
【００２３】
また、ＩＰマクロに対して本発明のフリップ／フロップ回路を使用することで、このＩＰを複数搭載したアプリケーションを設計する場合、容易で且つ確実に設計製造ができるようになった。
【図面の簡単な説明】
【図１】本発明のフリップ／フロップ回路を示す図である。
【図２】従来のフリップ／フロップ回路を示す図である。
【符号の説明】
１０，１１０　プライマリラッチ
２０，１２０　セカンダリラッチ
３０　サードラッチ
【図１】
2004135111.tif 000003
【図２】
2004135111.tif 000004