(57)【要約】【課題】より高速化が可能なフリップフロップ回路を備えた半導体集積回路を提供すること。【解決手段】第１のクロック信号（Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙ）に基づいて入力されたデータ信号を保持またはスルーするマスタラッチ部（５４、１４）と、第２のクロック信号（Ｃ、ＣＮ）に基づいて、マスタラッチ部（５４、１４）から受け取ったデータ信号をマスタラッチ部（５４、１４）とは相補的に保持またはスルーするスレーブラッチ部（１６、６０）と、マスタラッチ部（５４、１４）においてデータ信号のスルーする期間を可変とする透過期間可変部（２６、１２）と、を含む。【選択図】図１
2019186854.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロック信号に基づいて入力されたデータ信号を保持またはスルーするマスタラッチ部と、
第２のクロック信号に基づいて、前記マスタラッチ部から受け取ったデータ信号を前記マスタラッチ部とは相補的に保持またはスルーするスレーブラッチ部と、
前記マスタラッチ部において前記データ信号のスルーする期間を可変とする透過期間可変部と、を含む
半導体集積回路。
【請求項２】
前記透過期間可変部は、前記第２のクロック信号のデューティ比を変えて前記第１のクロック信号を出力するデューティ比調整部、および前記第１のクロック信号により制御されるとともに入力された前記データ信号のパルス幅を広げて出力するクロックドセレクタ部を備える
請求項１に記載の半導体集積回路。
【請求項３】
前記クロックドセレクタ部には、さらにスキャンテスト信号が入力される入力端子、および前記データ信号と前記スキャンテスト信号とを切り替える制御信号が入力される入力端子を備え、
前記制御信号により前記スキャンテスト信号が選択された場合には、前記クロックドセレクタ部は前記スキャンテスト信号のパルス幅を広げて出力する
請求項２に記載の半導体集積回路。
【請求項４】
前記クロックドセレクタ部の出力を反転させる第１のインバータ回路と、
前記第１のインバータ回路の出力を入力信号とする第１のＮＡＮＤ回路と、をさらに含み、
前記第１のインバータ回路と前記第１のＮＡＮＤ回路によって前記マスタラッチ部が構成される
請求項２または請求項３に記載の半導体集積回路。
【請求項５】
前記第１のＮＡＮＤ回路が前記第１のクロック信号によって制御されるクロックドＮＡＮＤ回路である
請求項４に記載の半導体集積回路。
【請求項６】
前記第１のＮＡＮＤ回路の他方の入力端子にリセット信号が入力される
請求項４または請求項５に記載の半導体集積回路。
【請求項７】
前記デューティ比調整部が、２分岐された前記第２のクロック信号の一方を入力する第１の入力端子、および２分岐された前記第２のクロック信号の他方を複数個の第２のインバータ回路を介して入力する第２の入力端子を備えた第２のＮＡＮＤ回路を含む
請求項２から請求項６のいずれか１項に記載の半導体集積回路。
【請求項８】
前記デューティ比調整部が、２分岐された前記第２のクロック信号の一方を入力する第１の入力端子、および２分岐された前記第１のクロック信号の他方を抵抗器を介して入力する第２の入力端子を備えた第２のＮＡＮＤ回路を含む
請求項２から請求項６のいずれか１項に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路、特にフリップフロップ回路を備えた半導体集積回路に関する。
【背景技術】
【０００２】
従来、フリップフロップ回路として、例えば特許文献１に開示されたフリップフロップが知られている。特許文献１に開示されたフリップフロップは、パルス生成回路で、クロック信号の立ち下がりエッジをトリガとして、互いにレベルの異なるパルス幅のマスタ側の正相パルス、逆相パルスを生成してマスタラッチ回路をスルーモードにしてそのマスタラッチ回路にデータを取り込み、クロック信号の立ち上がりエッジをトリガとして、互いにレベルの異なるパルス幅のスレーブ側の逆相パルス、正相パルスを生成してスレーブラッチ回路をスルーモードにしてそのスレーブラッチ回路にデータを取り込むように構成されている。特許文献１では、フリップフロップを上記のように構成することにより、シフトレジスタ構成とした場合であってもクロックスキューによるシフトの誤動作の防止が図られるとしている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１６５２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、半導体集積回路の開発、製造の方式として、スタンダードセル（Ｓｔａｎｄａｒｄ  Ｃｅｌｌ）方式とよばれる方式がある。スタンダードセル方式では、トランジスタレベルから素子寸法が最適化された各種基本回路のスタンダードセルが用意されており、このスタンダードセルを組み合わせてＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を含めたデジタル論理回路のマスク、レイアウト設計を行う。すなわち、基本回路のスタンダードセルを組み合わせ、自由に配置、配線を行って所望の回路を実現する。スタンダードセル方式では、ＮＯＴ（インバータ）回路、ＮＡＮＤ回路、ＮＯＲ回路といった論理ゲート、フリップフロップやマルチプレクサなどの基本的な論理回路、ゲーテッドクロックやバッファ、遅延回路などの補助的な回路といった様々なスタンダードセルが予め用意されている。あらかじめ準備されたこのようなスタンダードセルの集合を「セルライブラリ」と呼ぶ。スタンダードセル方式ではスタンダードセルの配置・配線を終了した時点で、半導体集積回路の製造を開始できるので、論理設計完了からの開発期間が短縮される。
【０００５】
一方、近年の半導体集積回路の設計手法の１つに、論理合成や自動配置配線等のＥＤＡ（Ｅｌｅｃｔｒｏｎｉｃ  Ｄｅｓｉｇｎ  Ａｕｔｏｍａｔｉｏｎ）ツールを活用する手法があるが、これらのツールを活用するためには、ＮＯＴ（インバータ）回路、ＮＡＮＤ回路、ＮＯＲ回路、フリップフロップなどの論理セルをセルライブラリとしてあらかじめ準備しておく必要がある。このセルライブラリを用いた論理回路設計で、回路速度は一般的にセルライブラリのセル遅延（入力信号から出力信号の遷移時間）で決まるが、高速化に伴いフリップフロップのクロック入力信号のパルス幅が速度ネックになる場合がある。すなわち、フリップフロップが正常に動作するクロックパルスの幅には下限（最小値）が存在するという制約である。以下、この制約を「最小パルス幅制約」という場合がある。つまり、近年のセルライブラリにおけるフリップフロップは、遅延時間が改善されたことに伴い、クロック入力信号の最小パルス幅制約を緩和する方法の必要性が生じてきた。
【０００６】
本発明は、上述した課題を解決するためになされたものであり、より高速化が可能なフリップフロップ回路を備えた半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る半導体集積回路は、第１のクロック信号に基づいて入力されたデータ信号を保持またはスルーするマスタラッチ部と、第２のクロック信号に基づいて、前記マスタラッチ部から受け取ったデータ信号を前記マスタラッチ部とは相補的に保持またはスルーするスレーブラッチ部と、前記マスタラッチ部において前記データ信号のスルーする期間を可変とする透過期間可変部と、を含むものである。
【発明の効果】
【０００８】
本発明によれば、より高速化が可能なフリップフロップ回路を備えた半導体集積回路を提供することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施の形態に係るフリップフロップ回路の構成の一例を示す回路図である。
【図２】第１の実施の形態に係るフリップフロップ回路の動作を示すタイミングチャートである。
【図３】第２の実施の形態に係るフリップフロップ回路の構成の一例を示す回路図である。
【図４】第２の実施の形態に係るフリップフロップ回路の動作を示すタイミングチャートである。
【図５】比較例に係るフリップフロップ回路の構成の一例を示す回路図である。
【図６】比較例に係るフリップフロップ回路の動作を示すタイミングチャートである。
【図７】（ａ）はデューティ比を説明する図、（ｂ）から（ｅ）はフリップフロップを構成する各回路ブロックの構成の一例を示す回路図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明を実施するための形態について詳細に説明する。
【００１１】
［第１の実施の形態］
図１および図２を参照して、本実施の形態に係るフリップフロップ回路１０について説明する。図１はフリップフロップ回路１０の一例を示す回路図、図２は、フリップフロップ回路１０の回路動作を示すタイミングチャートである。フリップフロップ回路１０は、一例として、リセット機能を備え、立ち上がりエッジをトリガとし、スキャン（Ｓｃａｎ）テスト機能を備え、ｑ／ｑｎ両出力とされている。むろん本実施の形態に係るフリップフロップ回路１０は一例であって、上記の機能の一部を備えない形態、あるいは他の機能が付加された形態としてもよい。
【００１２】
図１に示すように、フリップフロップ回路１０は、セレクタ回路１２（図１では「ＣＫＤ＿ＳＥＬ」と表記）、ＮＡＮＤ回路１４（図１では「ＣＫＤ＿ＮＡＮＤ」と表記）、インバータ回路１６（図１では「ＣＫＤ＿ＩＮＶ」と表記）、スイッチ回路１８（図１では「ＳＷ」と表記）、出力回路２０、クロック回路２２、インバータ回路５４、およびＮＡＮＤ回路６０を含んで構成されている。本実施の形態に係るセレクタ回路１２はクロックドセレクタであり、ＮＡＮＤ回路１４はクロックドＮＡＮＤ回路であり、インバータ回路１６はクロックドインバータ回路である。また、本実施の形態に係るフリップフロップ回路１０では、インバータ回路５４およびＮＡＮＤ回路１４によってマスタラッチ部が構成され、インバータ回路１６およびＮＡＮＤ回路６０によってスレーブラッチ部が構成されている。
【００１３】
セレクタ回路１２は、データ信号を入力するデータ端子ｄ、スキャンテスト信号を入力するスキャン端子ｓｉ、通常の動作（以下、「システム動作」という場合がある）とスキャン動作とを切り替える制御信号を入力する制御端子ｓｅを備えている。制御信号の論理は、ロウレベル（以下、「Ｌ」）でシステム動作、ハイレベル（以下、「Ｈ」）でスキャン動作である。セレクタ回路１２は、制御信号によりシステム動作時のデータ信号、またはスキャン動作時のスキャンテスト信号を切り替えて出力する。セレクタ回路１２はクロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙ（クロック信号Ｃ＿ｄｌｙの反転信号）により導通／非導通が制御されるクロックドセレクタである。クロック信号Ｃ＿ｄｌｙがＬ（以下、「Ｃ＿ｄｌｙ＝Ｌ」と表記）、クロック信号ＣＮ＿ｄｌｙがＨ（以下、「ＣＮ＿ｄｌｙ＝Ｈ」と表記）で導通、クロック信号Ｃ＿ｄｌｙ＝Ｈ、クロック信号ＣＮ＿ｄｌｙ＝Ｌでハイインピーダンスとなる（図７（ｂ）参照）。
【００１４】
ＮＡＮＤ回路１４は、リセット端子ｒｎからのリセット信号を一方の入力とし、インバータ回路５４の出力（後述のノードＭの信号）を他方の入力とするクロックドＮＡＮＤ回路である。ＮＡＮＤ回路１４はクロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙにより動作が制御され、Ｃ＿ｄｌｙ＝Ｈ、ＣＮ＿ｄｌｙ＝Ｌで出力信号が出力され（スルーされ）、Ｃ＿ｄｌｙ＝Ｌ、ＣＮ＿ｄｌｙ＝Ｈでハイインピーダンスになる（図７（ｃ）参照）。リセット信号の論理は、Ｈでリセット解除である。
【００１５】
インバータ回路１６は、ＮＡＮＤ回路６０の出力を入力し、反転して出力するクロックドインバータ回路である。インバータ回路１６はクロック信号Ｃ、ＣＮにより動作が制御され、クロック信号ＣがＬ（以下「Ｃ＝Ｌ」と表記）、クロック信号ＣＮがＨ（以下「ＣＮ＝Ｈ」と表記）で出力信号が出力され（スルーされ）、Ｃ＝Ｈ、ＣＮ＝Ｌでハイインピーダンスになる（図７（ｄ）参照）。
【００１６】
スイッチ回路１８は、クロック信号Ｃ、ＣＮにより動作が制御されるいわゆるパスゲート（トランスファーゲート）であり、マスタ側とスレーブ側とでデータの受け渡しを行うスイッチである。Ｃ＝Ｈ、ＣＮ＝Ｌでスイッチが導通され、Ｃ＝Ｌ、ＣＮ＝Ｈでスイッチが遮断される（ハイインピーダンスになる）（図７（ｅ）参照）。
【００１７】
出力回路２０は、インバータ回路６２、６４、６６を含んで構成され、正転出力端子ｑ、反転出力端子ｑｎを備えている。インバータ回路６２、６４、６６は主として出力の論理を調整するための素子である。
【００１８】
クロック回路２２はインバータ回路６８、７０、７２、７４、７８、ＮＡＮＤ回路７６を含んで構成され、クロック端子ｃｋから入力されたクロック信号をクロック信号Ｃ、ＣＮ、およびクロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙとして分配する回路である。クロック信号Ｃはインバータ回路７０の出力から、クロック信号ＣＮはインバータ回路６８の出力から、各々取り出される。
【００１９】
ＮＡＮＤ回路７６、インバータ回路７２、７４を含んでクロック信号Ｃ、ＣＮのデューティ比調整回路２６が構成されている。図７（ａ）はデューティ比Ｄの定義を示している。図７（ａ）に示すように、クロック信号の周期をＴ０、クロックのパルス幅（Ｈの区間）をＴ１とした場合、デューティ比Ｄは、（Ｔ１／Ｔ０）×１００（％）で定義される。デューティ比調整回路２６のＮＡＮＤ回路７６の一方の入力端子にはクロック信号ＣＮが入力され、他方の入力端子にはインバータ回路７２、７４を通過して遅延されたクロック信号ＣＮ（以下、「遅延クロック信号ＣＮ」）が入力される。
【００２０】
クロック信号ＣＮと遅延クロック信号ＣＮとのＮＡＮＤを演算することにより、クロック信号ＣＮのデューティ比が調整される。ＮＡＮＤ回路７６の出力信号（デューティ比調整回路２６の出力信号）は、そのまま出力されてクロック信号ＣＮ＿ｄｌｙを、インバータ回路７８を介して出力されてクロック信号Ｃ＿ｄｌｙを、各々供給する。本実施の形態では、デューティ比調整回路２６に用いるインバータ回路の個数をインバータ回路７２、７４の２個とする形態を例示して説明するが、これに限られず、用いるインバータ回路の遅延時間、デューティ比の可変範囲等を勘案して、４個、あるいは６個等とする形態としてもよい。なお、デューティ比調整回路２６およびセレクタ回路１２は、本発明に係る「透過期間可変部」の一例を構成している。
【００２１】
フリップフロップ回路１０では、上述したように、インバータ回路５４およびＮＡＮＤ回路１４によってマスタ側のラッチ回路（以下、「マスタラッチ回路」という場合がある）が構成され、インバータ回路１６およびＮＡＮＤ回路６０によってスレーブ側のラッチ回路（以下、「スレーブラッチ回路」という場合がある）が構成されている。
【００２２】
ここで、図５および図６を参照して、本実施の形態に係るフリップフロップの特徴を備えていない比較例に係るフリップフロップ回路について説明する。図５に示すフリップフロップ回路１００は一般的なフリップフロップであり、フリップフロップ回路１０と同様、リセット機能を備え、立ち上がりエッジをトリガとし、スキャン（Ｓｃａｎ）テスト機能を備え、ｑ／ｑｎ両出力とされている。図６は、フリップフロップ回路１００の回路動作を示すタイミングチャートである。
【００２３】
フリップフロップ回路１００とフリップフロップ回路１０との違いは、フリップフロップ回路１０のクロック回路２２が、フリップフロップ回路１００ではクロック回路２４に置き換わっている点である（図１におけるクロック回路２２の点線で囲まれた部分）。クロック回路２４はインバータ回路６８、７０を含んで構成され、クロック端子ｃｋから入力されたクロック信号をクロック信号Ｃ、ＣＮとして分配する。従って、フリップフロップ回路１０と同様の構成には同じ符号を付して詳細な説明を省略する。
【００２４】
クロック回路２２がクロック回路２４に置き換わったことに伴い、セレクタ回路１２およびＮＡＮＤ回路１４を制御するクロックが、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙからクロック信号Ｃ、ＣＮ、すなわち普通のクロック信号に置き換わっている。フリップフロップ回路１００では、インバータ回路５４およびＮＡＮＤ回路１４によってマスタラッチ回路が構成され、インバータ回路１６およびＮＡＮＤ回路６０によってスレーブラッチ回路が構成されている。
【００２５】
次に、図６を参照して、フリップフロップ回路１００の動作について説明する。図６は、フリップフロップ回路１００の各部の動作波形を示すタイミングチャートであり、クロック端子ｃｋに入力されるクロック信号、リセット端子ｒｎに入力されるリセット信号、制御端子ｓｅに入力される制御信号、データ端子ｄに入力されるデータ信号、スキャン端子ｓｉに入力されるスキャンテスト信号、出力端子ｑ、ｑｎから出力される出力信号、クロック信号Ｃ、ＣＮ、ノードＰＭ、Ｍ、ＰＳの信号を示している。以下、図６に示すクロック端子ｃｋに入力されるクロック信号に付された時間位置（タイミング）Ｐ１からＰ８に基づいて、フリップフロップ回路１００の各部動作について説明する。
【００２６】
＜タイミングＰ１＞
リセット端子ｒｎのリセット信号がＬからＨに遷移してリセットが解除されている。また、制御端子ｓｅがＬなのでシステム動作に制御されている。したがって、セレクタ回路１２はデータ端子ｄから入力されたデータ信号（Ｈ）を出力する。このとき、Ｃ＝Ｌ、ＣＮ＝Ｈなので、マスタ側ではデータ信号（Ｈ）をスルーし、マスタ側の値を更新し、ノードＰＭをＨからＬ（「ＰＭ＝Ｈ→Ｌ」と表記）に、ノードＭをＬからＨ（「Ｍ＝Ｌ→Ｈ」と表記）にする。また、Ｃ＝Ｌ、ＣＮ＝Ｈであるためスイッチ回路１８はオフかつ、インバータ回路１６がスルーなので、スレーブ側では値（Ｌ）を保持する。
【００２７】
＜タイミングＰ２＞
Ｃ＝Ｈ、ＣＮ＝Ｌなので、セレクタ回路１２はオフ、ＮＡＮＤ回路１４はスルーである。従って、マスタ側は値を保持する（ＰＭ＝Ｌ、Ｍ＝Ｈ）。Ｃ＝Ｈ、ＣＮ＝Ｌなので、スイッチ回路１８はスルー、かつインバータ回路１６はオフとなり、スレーブ側は値を更新する（ＰＳ＝Ｌ→Ｈ）。
【００２８】
＜タイミングＰ３＞
タイミングＰ１においてデータ信号がＬの場合であり、動作は上記タイミングＰ１の動作に準ずる。
＜タイミングＰ４＞
タイミングＰ２においてデータ信号がＬの場合であり、動作は上記タイミングＰ２の動作に準ずる。
【００２９】
＜タイミングＰ５からタイミングＰ８＞
制御端子ｓｅの制御信号がＨに遷移しスキャン動作となっている。従って、セレクタ回路１２は、スキャン端子ｓｉに入力されるスキャンテスト信号を出力し、フリップフロップ回路１００は、スキャンデータ信号を読み込む。図６では、データ信号がスキャンデータ信号に変わっただけで具体的な動作は上記タイミングＰ１からＰ４までと同様である。従って、詳細な動作の説明を省略する。
【００３０】
ここで、スタンダードセルで構成される論理回路のクロック信号のデューティ比は、一般的に５０％である。図７（ａ）に示すように、デューティ比Ｄは、Ｄ＝（クロックパルス幅Ｔ１／クロック周期Ｔ０）×１００（％）で定義される。この論理回路を高速動作させるためには、クロック信号のデューティ比Ｄを維持したままクロック周期を短くする（クロック周波数を高くする）必要がある。
【００３１】
しかしながら、マスタ側とスレーブ側のデータスルーとオフの切換え部の遅延が異なると遅い方の回路遅延がネックになり、この遅い方の回路遅延によってフリップフロップが正常動作する限界のクロックパルス幅、つまり最小パルス幅制約が決まる。
【００３２】
図７（ｂ）から（ｅ）を参照して、上記最小パルス幅制約についてより詳細に説明する。図７（ｂ）から（ｅ）はフリップフロップ回路１００に含まれる各回路ブロックについて、トランジスタレベルで記述した回路図であり、図７（ｂ）はセレクタ回路１２の一例、図７（ｃ）はＮＡＮＤ回路１４の一例、図７（ｄ）はインバータ回路１６の一例、図７（ｅ）は、スイッチ回路１８の一例を各々示している。
【００３３】
図７（ｂ）から（ｅ）では、Ｐ型ＭＯＳ（Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）トランジスタ、Ｎ型ＭＯＳトランジスタの各々のトランジスタ段数、すなわち電源とグランドとの間に直列接続されたトランジスタの数（片側）を示している。図７（ｂ）から（ｅ）に示すように、このトランジスタ段数は、マスタ側のセレクタ回路１２で３段、ＮＡＮＤ回路１４で２段、スレーブ側のインバータ回路１６で２段、スイッチ回路１８で２段となっている。つまり、図５に示すフリップフロップ回路１００では、トランジスタ段数がマスタ側とスレーブ側とで異なっており、マスタ側で３段、スレーブ側で２段となっている。
【００３４】
そのため、マスタ側よりもスレーブ側の方が高速であり、スレーブ側のクロックパルス幅には余裕あるが、マスタ側の回路遅延ネックにより、クロックパルスが伝搬しなくなる最小パルス幅制約が発生する。つまり、マスタ側の最小パルス幅制約がネックとなり、フリップフロップの速度限界が決まる。
【００３５】
そこで、本実施の形態に係るフリップフロップ回路１０では、セレクタ回路１２およびＮＡＮＤ回路１４を制御するクロックを、クロック信号Ｃ、ＣＮから、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙに変更している。つまり、図１に示すフリップフロップ回路１０を、図５に示すフリップフロップ回路１００と比較した場合、図１の破線枠で囲まれた部分が異なる部分となっている。クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙは、図２に示すように、デューティ比調整回路２６によりクロック信号Ｃ、ＣＮのデューティ比を変えたものである。
【００３６】
図２を参照して、フリップフロップ回路１０の動作について説明する。図２は、フリップフロップ回路１０の各部の動作波形を示すタイミングチャートであり、クロック端子ｃｋに入力されるクロック信号、リセット端子ｒｎに入力されるリセット信号、制御端子ｓｅに入力される制御信号、データ端子ｄに入力されるデータ信号、スキャン端子ｓｉに入力されるスキャンテスト信号、出力端子ｑ、ｑｎから出力される出力信号、クロック信号Ｃ、ＣＮ、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙ、ノードＰＭ、Ｍ、ＰＳの信号を示している。以下、図２に示すクロック端子ｃｋに入力されるクロック信号に付された時間位置（タイミング）Ｐ１からＰ８に基づいて、フリップフロップ回路１０の各部動作について説明する。
【００３７】
＜タイミングＰ１＞
リセット端子ｒｎのリセット信号がＬからＨに遷移してリセットが解除されている。また、制御端子ｓｅがＬなのでシステム動作に制御されている。したがって、セレクタ回路１２はデータ端子ｄから入力されたデータ信号（Ｈ）を出力する。このとき、Ｃ＿ｄｌｙ＝Ｌ、ＣＮ＿ｄｌｙ＝Ｈなので、マスタ側ではデータ信号（Ｈ）をスルーし、マスタ側の値を更新し、ノードＰＭをＨからＬ（ＰＭ＝Ｈ→Ｌ）に、ノードＭをＬからＨ（Ｍ＝Ｌ→Ｈ）にする。また、Ｃ＝Ｌ、ＣＮ＝Ｈであるためスイッチ回路１８はオフかつ、インバータ回路１６がスルーなので、スレーブ側では値（Ｌ）を保持する。図２に示すように、本実施の形態に係るフリップフロップ回路１０では、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙのデューティ比を変更したことにより、ノードＰＭの波形が示すように、マスタ側のデータスルーの期間が延長されていることがわかる。
【００３８】
＜タイミングＰ２＞
Ｃ＿ｄｌｙ＝Ｈ、ＣＮ＿ｄｌｙ＝Ｌなので、セレクタ回路１２はオフ、ＮＡＮＤ回路１４はスルーである。従って、マスタ側は値を保持する（ＰＭ＝Ｌ、Ｍ＝Ｈ）。Ｃ＝Ｈ、ＣＮ＝Ｌなので、スイッチ回路１８はスルー、かつインバータ回路１６はオフとなり、スレーブ側は値を更新する（ＰＳ＝Ｌ→Ｈ）。
【００３９】
＜タイミングＰ３＞
タイミングＰ１においてデータ信号がＬの場合であり、動作は上記タイミングＰ１の動作に準ずる。
＜タイミングＰ４＞
タイミングＰ２においてデータ信号がＬの場合であり、動作は上記タイミングＰ２の動作に準ずる。
【００４０】
＜タイミングＰ５からタイミングＰ８＞
制御端子ｓｅの制御信号がＨに遷移しスキャン動作となっている。従って、セレクタ回路１２は、スキャン端子ｓｉに入力されるスキャンテスト信号を出力し、フリップフロップ回路１０は、スキャンデータ信号を読み込む。図２では、データ信号がスキャンデータ信号に変わっただけで具体的な動作は上記タイミングＰ１からＰ４までと同様である。従って、詳細な動作の説明を省略する。
【００４１】
以上詳述したように、本実施の形態に係るフリップフロップ回路１０によれば、スレーブ側のデータスルー期間（クロック信号Ｃ、ＣＮに基づく）を変更せず、マスタ側のデータスルー期間（クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙに基づく）を延長することができる。この期間延長により、例えば比較例に係るフリップフロップ回路１００と比較して、より短いクロック周期でも（クロック周波数をより高くしても）マスタ側にデータ取り込むことが可能となり、その結果最小パルス幅制約を緩和することが出来る。
【００４２】
［第２の実施の形態］
図３および図４を参照して、本実施の形態に係るフリップフロップ回路１０Ａについて説明する。フリップフロップ回路１０Ａは、上述したフリップフロップ回路１０において、デューティ比調整回路２６をデューティ比調整回路２６Ａに置き換えた形態である。従って、同様の構成には同じ符号を付し、詳細な説明を省略する。
【００４３】
図３に示すデューティ比調整回路２６Ａは、図１に示すデューティ比調整回路２６のインバータ回路７２、７４の代わりに抵抗器８０を備えている（図３に示す破線枠内）。この抵抗器８０は、ＮＡＮＤ回路７６の入力容量との相乗作用で積分器としての機能を発揮する。すなわち、ＮＡＮＤ回路７６の一方の入力端子の波形をなまらせるので、他方の入力端子に入力される通常の波形とのＮＡＮＤをとると、デューティ比が変化する。デューティ比調整回路２６Ａは以上の原理を用いて、クロック信号Ｃ、ＣＮからクロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙを生成している。
【００４４】
図４を参照して、本実施の形態に係るフリップフロップ回路１０Ａの動作について説明する。フリップフロップ回路１０Ａの基本的な動作は、上述したフリップフロップ回路１０の動作と同様である。図４は、フリップフロップ回路１０の各部の動作波形を示すタイミングチャートであり、クロック端子ｃｋに入力されるクロック信号、リセット端子ｒｎに入力されるリセット信号、制御端子ｓｅに入力される制御信号、データ端子ｄに入力されるデータ信号、スキャン端子ｓｉに入力されるスキャンテスト信号、出力端子ｑ、ｑｎから出力される出力信号、クロック信号Ｃ、ＣＮ、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙ、ノードＰＭ、Ｍ、ＰＳの信号を示している。以下、図２に示すクロック端子ｃｋに入力されるクロック信号に付された時間位置（タイミング）Ｐ１からＰ８に基づいて、フリップフロップ回路１０Ａの各部動作について説明する。
【００４５】
＜タイミングＰ１＞
リセット端子ｒｎのリセット信号がＬからＨに遷移してリセットが解除されている。また、制御端子ｓｅがＬなのでシステム動作に制御されている。したがって、セレクタ回路１２はデータ端子ｄから入力されたデータ信号（Ｈ）を出力する。このとき、Ｃ＿ｄｌｙ＝Ｌ、ＣＮ＿ｄｌｙ＝Ｈなので、マスタ側ではデータ信号（Ｈ）をスルーし、マスタ側の値を更新し、ノードＰＭをＨからＬ（ＰＭ＝Ｈ→Ｌ）に、ノードＭをＬからＨ（Ｍ＝Ｌ→Ｈ）にする。また、Ｃ＝Ｌ、ＣＮ＝Ｈであるためスイッチ回路１８はオフかつ、インバータ回路１６がスルーなので、スレーブ側では値（Ｌ）を保持する。図４に示すように、本実施の形態に係るフリップフロップ回路１０Ａでは、クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙのデューティ比を変更したことにより、ノードＰＭの波形が示すように、マスタ側のデータスルーの期間が延長されていることがわかる。
【００４６】
＜タイミングＰ２＞
Ｃ＿ｄｌｙ＝Ｈ、ＣＮ＿ｄｌｙ＝Ｌなので、セレクタ回路１２はオフ、ＮＡＮＤ回路１４はスルーである。従って、マスタ側は値を保持する（ＰＭ＝Ｌ、Ｍ＝Ｈ）。Ｃ＝Ｈ、ＣＮ＝Ｌなので、スイッチ回路１８はスルー、かつインバータ回路１６はオフとなり、スレーブ側は値を更新する（ＰＳ＝Ｌ→Ｈ）。
【００４７】
＜タイミングＰ３＞
タイミングＰ１においてデータ信号がＬの場合であり、動作は上記タイミングＰ１の動作に準ずる。
＜タイミングＰ４＞
タイミングＰ２においてデータ信号がＬの場合であり、動作は上記タイミングＰ２の動作に準ずる。
【００４８】
＜タイミングＰ５からタイミングＰ８＞
制御端子ｓｅの制御信号がＨに遷移しスキャン動作となっている。従って、セレクタ回路１２は、スキャン端子ｓｉに入力されるスキャンテスト信号を出力し、フリップフロップ回路１０Ａは、スキャンデータ信号を読み込む。図４では、データ信号がスキャンデータ信号に変わっただけで具体的な動作は上記タイミングＰ１からＰ４までと同様である。従って、詳細な動作の説明を省略する。
【００４９】
以上詳述したように、本実施の形態に係るフリップフロップ回路１０Ａによっても、スレーブ側のデータスルー期間（クロック信号Ｃ、ＣＮに基づく）を変更せず、マスタ側のデータスルー期間（クロック信号Ｃ＿ｄｌｙ、ＣＮ＿ｄｌｙに基づく）を延長することが出来る。この期間延長により、例えば比較例に係るフリップフロップ回路１００と比較して、より短いクロック周期でも（クロック周波数をより高くしても）マスタ側にデータを取り込むことが可能となり、その結果最小パルス幅制約が緩和される。フリップフロップ回路１０Ａによれば、フリップフロップ回路１０と比較して、デューティ比調整回路がより簡易に構成できるという効果がある。
【００５０】
なお、上記各実施の形態では、立上りエッジトリガのフリップフロップについて説明したが、同様に立下りエッジトリガのフリップフロップにも適用が可能である。
【符号の説明】
【００５１】
１０、１０Ａ  フリップフロップ回路
１２    セレクタ回路
１４    ＮＡＮＤ回路
１６    インバータ回路
１８    スイッチ回路
２０    出力回路
２２    クロック回路
２４    クロック回路
２６、２６Ａ  デューティ比調整回路
５４    インバータ回路
６０    ＮＡＮＤ回路
６２、６４、６６、６８、７０、７２、７４、７８  インバータ回路
７６    ＮＡＮＤ回路
８０    抵抗器
１００  フリップフロップ回路
ｄ      データ端子
ｓｉ    スキャン端子
ｓｅ    制御端子
ｃｋ    クロック端子
ｑ      正転出力端子
ｑｎ    反転出力端子
ｒｎ    リセット端子
ＰＭ、Ｍ、ＰＳ  ノード
【図１】
2019186854.tif 000003
【図２】
2019186854.tif 000004
【図３】
2019186854.tif 000005
【図４】
2019186854.tif 000006
【図５】
2019186854.tif 000007
【図６】
2019186854.tif 000008
【図７】
2019186854.tif 000009