(57)【要約】【課題】高速動作に適し、動作環境の変化による影響を防止でき、広範な動作条件において安定した動作を実現できるフリップフロップ回路を提供する。【解決手段】パルス生成回路１０Ａにおいて、クロック信号ＣＫがローレベルのとき、トランジスタＴＰ０によりノードＮ２をハイレベルにプリチャージし、クロック信号ＣＫの立ち上がりエッジに従って、負のパルス信号Ｓ１を発生し、これに応じてトランスファゲートＴＧ１が導通し、入力データがラッチ回路２０の記憶ノードＮ４に取り込まれ、一致検出回路１１または１２により入力データとラッチ回路の保持データとが一致することを検出したとき、ノードＮ２をディスチャージし、負のパルスを終了させ、これに応じてトランスファゲートＴＧ１が遮断し、ＴＧ０が導通するので、ラッチ回路２０によって取り込んだデータが保持される。【選択図】    図１
2004343570.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に応じて生成されるパルス信号により制御され、上記パルス信号が第１のレベルに保持されているとき遮断し、第２のレベルに保持されているとき導通して入力データを内部記憶ノードに出力するデータ転送ゲートと、
上記パルス信号が上記第１のレベルに保持されているとき保持動作を行い、上記内部記憶ノードの記憶データを保持するデータ保持回路と、
上記クロック信号が第１のクロックレベルにあるとき、第１の信号ノードを電源電圧にプリチャージし、上記クロック信号が第２のクロックレベルにあるとき遮断する第１のスイッチング手段と、上記入力データと上記内部記憶ノードの記憶データとを比較し、当該比較の結果、上記入力データと上記記憶データとが一致するとき、上記第１の信号ノードを共通電位にディスチャージする一致検出手段とを有し、上記クロック信号と上記第１の信号ノードの電位に応じて、上記パルス信号を生成するパルス生成回路と
を有するフリップフロップ回路。
【請求項２】
上記パルス生成回路は、
電源電圧が供給される電源線と上記第１の信号ノードとの間に接続され、上記クロック信号に応じた遅延信号によって導通または遮断する第１のスイッチング素子と、
第２の信号ノードと共通電位線との間に接続され、上記遅延信号に応じて導通または遮断する第２のスイッチング素子と、
上記第１の信号ノードと上記第２の信号ノードとの間に設けられ、上記入力データと上記記憶データが一致するとき、上記第１の信号ノードと上記第２の信号ノードとの間を導通させる上記一致検出手段と、
上記第１の信号ノードの信号と上記クロック信号との論理演算を行い、その結果に応じて上記パルス信号を出力する論理回路と
を有し、
上記クロック信号が上記第１のクロックレベルにあるとき、上記第１のスイッチング素子が導通し、上記第１の信号ノードが上記第１のレベルにプリチャージされ、  上記クロック信号が上記第１のクロックレベルから上記第２のクロックレベルに切り替わったとき、上記第１のスイッチング素子が遮断し、上記一致検出手段において、上記記憶データと上記入力データとが一致することが検出したとき、上記第１と第２の信号ノードが導通し、上記第１の信号ノードが上記共通電位にディスチャージされる
請求項１記載のフリップフロップ回路。
【請求項３】
上記第１と第２の信号ノード間に接続され、上記第１の信号ノードが上記第１のレベルにあるとき遮断し、上記第１の信号ノードが上記第２のレベルにあるとき導通する第２のスイッチング素子
をさらに有する請求項２記載のフリップフロップ回路。
【請求項４】
上記電源線と上記第１の信号ノードとの間に接続ているｐＭＯＳトランジスタを有し、
上記ｐＭＯＳトランジスタは、他のトランジスタより抵抗値が大きく設定され、上記第１の信号ノードの論理反転信号に応じて導通または遮断する
請求項２記載のフリップフロップ回路。
【請求項５】
上記電源線と第３の信号ノードとの間に設けられ、上記第１の信号ノードの論理反転信号に応じて導通または遮断するｐＭＯＳトランジスタと、
上記第３の信号ノードと上記第１の信号ノードとの間に設けられ、上記入力データと上記記憶データとが一致するとき遮断し、上記入力データと上記記憶データとが一致しないとき導通する第３のスイッチング素子と
をさらに有する請求項２記載のフリップフロップ回路。
【請求項６】
上記第３のスイッチング素子は、上記第１の信号ノードと第４の信号ノード間に並列接続され、上記入力データと記憶データに応じた信号によってそれぞれ導通または遮断する２つのｐＭＯＳトランジスタと、
上記第４の信号ノードと上記第３の信号ノードとの間に並列に接続され、上記入力データと記憶データのそれぞれの反転データに応じた信号によってそれぞれ導通または遮断する２つのｐＭＯＳトランジスタと
を有する請求項５記載のフリップフロップ回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クロック信号に応じてプリチャージを行い、入力データと保持データとの一致判定結果に従ってプリチャージされた信号を放電させることにより、セットアップ時間を短縮させ、高速動作を実現するフリップフロップ回路に関するものである。
【０００２】
【従来の技術】
半導体技術の進歩に伴って半導体集積回路の動作が高速化の一途を辿っている。最近の大規模半導体集積回路（ＬＳＩ）では、クロック周波数がＧＨｚ（ギガヘルツ）のオーダーに達しており、これから半導体集積回路に益々高速化や低消費電力、またはその両方が要求される。
【０００３】
ディジタル信号処理を行うＬＳＩ、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ  ：中央処理装置）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ：ディジタル信号プロセッサ）では、高速化のためのパイプラインレジスタなどにフリップフロップ回路が大量に使用されている。高速動作において、フリップフロップ回路で生じた時間遅延、例えば、セットアップタイム及び有効遅延がクロック信号の一周期に対する割合が非常に大きくなり、高速化の障害になっている。また、低消費電力動作においては、低動作電源電圧下でも安定して動作する必要がある。
【０００４】
図５は、高速動作を実現するために従来用いられているフリップフロップ回路の一例を示している。
図示のように、このフリップフロップ回路は、インバータＩＶ０，ＩＶ１，ＩＶ２及びＮＡＮＤゲートＮＤ１からなるパルス生成回路１０、インバータＩＶ５，ＩＶ６及びトランスファゲートＴＧ０からなるラッチ回路２０、さらに、入力データを内部記憶ノードＮ１に出力するトランスファゲートＴＧ１を有している。
【０００５】
パルス生成回路１０は、直列接続されている３段のインバータＩＶ０，ＩＶ１，ＩＶ２とＮＡＮＤゲートＮＤ１によって構成され、クロック信号ＣＫに応じて、これらのインバータの遅延時間の和によってパルス幅が決まるパルス信号Ｓ０を出力する。例えば、インバータＩＶ０，ＩＶ１，ＩＶ２の遅延時間をともにΔｔｄ  とすると、クロック信号ＣＫの立ち上がりエッジに従って、ＮＡＮＤゲートＮＤ１から幅３Δｔｄ  の負のパルス信号Ｓ０が出力される。
【０００６】
パルス信号Ｓ０がローレベルに保持されているとき、トランスファゲートＴＧ１が導通し、入力データＤがインバータＩＶ３とトランスファゲートＴＧ１を介して、記憶ノードＮ１に転送される。そして、パルス信号Ｓ０がハイレベルに切り替わったとき、トランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０において、インバータＩＶ５，ＩＶ６及びトランスファゲートＴＧ０により、帰還ループが形成され、ノードＮ１のデータが保持される。ノードＮ１に保持されたデータがインバータＩＶ７を介して出力データＱとして外部に出力される。
【０００７】
上述したフリップフロップ回路によって、クロック信号ＣＫの立ち上がりエッジに応じて、インバータの遅延時間によってパルス幅が決まる負のパルス信号Ｓ０が生成され、当該パルス信号Ｓ０に応じて、入力データＤがフリップフロップ回路の内部記憶ノードＮ１に転送される。そして、パルス信号Ｓ０がハイレベルのとき、ラッチ回路２０が動作し、記憶ノードＮ１のデータが保持される。このため、パルス生成回路１０によって生成される負のパルス信号Ｓ０のパルス幅を、ラッチ回路２０内部のデータ伝播時間に比較して十分長く設定することにより、当該フリップフロップ回路は正常に動作する。すなわち、クロック信号ＣＫに同期して入力データＤを内部に取り込み、取り込んだデータを保持して出力する。
【０００８】
【特許文献１】
特開２０００−２３２３３９号公報
【特許文献２】
特開２００２−２６６９７号公報
【０００９】
【発明が解決しようとする課題】
ところで、上述した従来のフリップフロップ回路において、パルス生成回路によって生成されるパルス信号の幅は、直列接続されているインバータの遅延時間によって決まる。一方、ラッチ回路内部をデータが伝播する時間は、データ入力信号を駆動する回路の駆動能力や、ラッチ回路の動作電圧などに影響される。そのため、例えば電源電圧が変化した場合、入力信号の遷移時間や、ラッチ回路内部においてデータが伝播する時間も変化する。パルス生成回路において、パルス幅を決定するインバータの遅延時間も電源電圧の変動に応じて変化するが、変化の度合いはラッチ回路内部のデータ伝播時間の変化とは必ずしも一致しない。このため、図５に示すフリップフロップ回路では、広範な動作環境変化、例えば、電源電圧の変化に対して動作を保証することが困難であるという不利益がある。
【００１０】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、高速動作に適し、動作環境の変化による影響を防止でき、広範な動作条件において安定した動作を実現できるフリップフロップ回路を提供することにある。
【００１１】
【課題を解決するための手段】
上記目的を達成するため、本発明のフリップフロップ回路は、クロック信号に応じて生成されるパルス信号により制御され、上記パルス信号が第１のレベルに保持されているとき遮断し、第２のレベルに保持されているとき導通して入力データを内部記憶ノードに出力するデータ転送ゲートと、上記パルス信号が上記第１のレベルに保持されているとき保持動作を行い、上記内部記憶ノードの記憶データを保持するデータ保持回路と、上記クロック信号が第１のクロックレベルにあるとき、第１の信号ノードを電源電圧にプリチャージし、上記クロック信号が第２のクロックレベルにあるとき遮断する第１のスイッチング手段と、上記入力データと上記内部記憶ノードの記憶データとを比較し、当該比較の結果、上記入力データと上記記憶データとが一致するとき、上記第１の信号ノードを共通電位にディスチャージする一致検出手段とを有し、上記クロック信号と上記第１の信号ノードの電位に応じて、上記パルス信号を生成するパルス生成回路とを有する。
【００１２】
また、本発明では、好適には、上記パルス生成回路は、電源電圧が供給される電源線と上記第１の信号ノードとの間に接続され、上記クロック信号に応じた遅延信号によって導通または遮断する第１のスイッチング素子と、第２の信号ノードと共通電位線との間に接続され、上記遅延信号に応じて導通または遮断する第２のスイッチング素子と、上記第１の信号ノードと上記第２の信号ノードとの間に設けられ、上記入力データと上記記憶データが一致するとき、上記第１の信号ノードと上記第２の信号ノードとの間を導通させる上記一致検出手段と、上記第１の信号ノードの信号と上記クロック信号との論理演算を行い、その結果に応じて上記パルス信号を出力する論理回路とを有し、上記クロック信号が上記第１のクロックレベルにあるとき、上記第１のスイッチング素子が導通し、上記第１の信号ノードが上記第１のレベルにプリチャージされ、上記クロック信号が上記第１のクロックレベルから上記第２のクロックレベルに切り替わったとき、上記第１のスイッチング素子が遮断し、上記一致検出手段において、上記記憶データと上記入力データとが一致することが検出したとき、上記第１と第２の信号ノードが導通し、上記第１の信号ノードが上記共通電位にディスチャージされる。
【００１３】
本発明によれば、パルス生成回路はクロック信号及び信号ノードの電圧レベルに応じてパルス信号を生成し、当該パルス信号に応じてデータ転送ゲートが導通または遮断状態に制御され、導通時に入力データが内部の記憶ノードに出力され、データ転送ゲートが遮断するときに内部記憶ノードの記憶データがデータ保持回路によって保持される。そして、パルス生成回路において、クロック信号が第１のクロックレベルにあるとき、第１の信号ノードが第１のレベル、例えば、電源電圧レベルにプリチャージされ、クロック信号が第２のクロックレベルに遷移したとき、出力されるパルス信号が第２のレベルに制御され、これに応じて入力データが記憶ノードに取り込まれ、記憶ノードのデータと入力データとが一致することが一致検出手段によって検出されたとき、第１の信号ノードが第２のレベル、例えば、共通電位にディスチャージされ、これに応じてパルス信号が第２のレベルから第１のレベルに切り替えられる。
【００１４】
このため、入力データが完全に記憶ノードに取り込まれてからパルス信号のレベルが遷移されるので、動作環境の変化による影響を防止でき、広範な動作条件において安定した動作を実現できる。
【００１５】
【発明の実施の形態】
第１実施形態
図１は本発明に係るフリップフロップ回路の第１の実施形態を示す回路図である。
図示のように、本実施形態のフリップフロップ回路は、パルス生成回路１０Ａ、ラッチ回路２０、及びトランスファゲートＴＧ１などを有している。なお、ラッチ回路２０は、発明の請求の範囲にあるデータ保持回路に対応し、トランスファゲートＴＧ１は、請求の範囲にあるデータ転送ゲートに対応する。
【００１６】
以下、本実施形態のフリップフロップ回路の各構成部分について説明する。
パルス生成回路１０Ａは、図示のように、インバータＩＶ０，ＩＶ１，ＩＶ６，ＩＶ７、ｐＭＯＳトランジスタＴＰ０、ｎＭＯＳトランジスタＴＮ０，ＴＮ１，ＴＮ２，ＴＮ３，ＴＮ４とＴＮ５及びＮＡＮＤゲートＮＤ１を有している。トランジスタＴＮ０とＴＮ１は一致検出回路１１を構成し、またトランジスタＴＮ２とＴＮ３は一致検出回路１２を構成している。
【００１７】
インバータＩＶ０とＩＶ１は、クロック信号ＣＫが入力される信号端子とトランジスタＴＰ０，ＴＮ５のゲートとの間に直列接続されている。トランジスタＴＰ０のソースは電源電圧が供給されている電源線に接続され、そのドレインがノードＮ２に接続されている。一方、トランジスタＴＰ５のソースが接地され、ドレインがノードＮ３に接続されている。
なお、ノードＮ２は、発明の請求の範囲にある第１の信号ノードに対応し、ノードＮ３は第２の信号ノードに対応する。そして、トランジスタＴＰ０は、当該信号ノードＮ２をプリチャージさせる第１のスイッチング素子に対応する。また、トランジスタＴＮ５は、第２のスイッチング素子に対応する。
【００１８】
トランジスタＴＮ０とＴＮ１は、ノードＮ２とＮ３との間に直列接続され、これらによって、一致検出回路１１が構成されている。また、トランジスタＴＮ２とＴＮ３もノードＮ２とＮ３との間に直列接続され、これらによって、一致検出回路１２が構成されている。また、トランジスタＴＮ４もノードＮ２とＮ３との間に接続されている。
トランジスタＴＮ０のゲートがインバータＩＶ６の出力端子に接続され、トランジスタＴＮ１のゲートがラッチ回路２０にあるノードＮ５に接続されている。トランジスタＴＮ２のゲートがインバータＩＶ５の出力端子に接続され、トランジスタＴＮ３のゲートがラッチ回路２０にあるノードＮ６に接続されている。さらに、トランジスタＴＮ４のゲートがインバータＩＶ７の出力端子に接続されている。
【００１９】
なお、インバータＩＶ６の入力端子がインバータＩＶ５の出力端子に接続され、インバータＩＶ７の入力端子がノードＮ２、すなわちトランジスタＴＰ０のドレインに接続されている。
【００２０】
ＮＡＮＤゲートＮＤ１の一方の入力端子がクロック信号ＣＫが入力されるクロック入力端子に接続され、他方の入力端子がノードＮ２、即ち、トランジスタＴＰ０のドレインに接続されている。ここで、ノードＮ２に生じた信号をＳ０とすると、ＮＡＮＤゲートＮＤ１の出力端子から、クロック信号ＣＫとノードＮ２に生じた信号Ｓ０の論理積の反転信号であるパルス信号Ｓ１が出力される。
【００２１】
上述した構成をもつパルス生成回路１０Ａにおいて、トランジスタＴＰ０及びＴＮ５は、入力されるクロック信号ＣＫに応じて、導通状態が制御される。具体的に、例えば、クロック信号ＣＫがローレベルのとき、インバータＩＶ１の出力端子もローレベルに保持されるので、トランジスタＴＰ０が導通し、トランジスタＴＮ５が遮断する。このとき、トランジスタＴＰ０によってノードＮ２がほぼ電源電圧ＶＣＣレベルに保持される。一方、クロック信号ＣＫがハイレベルのとき、インバータＩＶ１の出力もハイレベルに保持されるので、トランジスタＴＰ０が遮断し、トランジスタＴＮ５が導通する。即ち、このとき、ノードＮ３が接地電位ＧＮＤに保持される。
【００２２】
トランジスタＴＮ０のゲートに、入力データＤに応じたレベルの信号が印加される。ここで、ハイレベルをデータ１に対応させ、ローレベルをデータ０に対応させるとすれば、例えば、入力データＤが１のとき、即ち、データ入力端子がハイレベルに保持されているとき、インバータＩＶ５の出力端子（ノードＮ１）がローレベルに保持され、インバータＩＶ６の出力端子がデータ入力端子と同じくハイレベルに保持される。即ち、トランジスタＴＮ０は、入力データＤに応じて導通状態が制御される。
【００２３】
一方、トランジスタＴＮ１のゲートに、ラッチ回路２０におけるノードＮ５の信号が入力されるので、トランジスタＴＮ１は、ラッチ回路２０によって保持されているデータによって導通状態が制御される。
ここで、フリップフロップ回路の出力データＱをラッチ回路２０の保持データと定義する。即ち、フリップフロップ回路のデータ出力端子がデータ１に対応するハイレベルのとき、出力データＱを１とし、逆に、データ出力端子がデータ０に対応するローレベルのとき、出力データを０とする。以下の説明において、フリップフロップ回路の記憶データ、またはフリップフロップ回路の保持データは、即ちその出力データＱを意味する。
ラッチ回路２０において、ノードＮ５の信号レベルがデータ出力端子のレベルと同じであり、ノードＮ６の信号レベルがデータ出力端子の論理反転レベルに一致する。
【００２４】
クロック生成回路１０Ａにおいて、トランジスタＴＮ０はフリップフロップ回路の入力データに応じて導通状態が制御され、トランジスタＴＮ１はフリップフロップ回路の保持データに応じて導通状態に制御される。具体的に、入力データが１、保持データも１のとき、トランジスタＴＮ０とＴＮ１のゲートがともにハイレベルに保持される。このため、クロック信号ＣＫがハイレベルのとき、トランジスタＴＮ０とＴＮ１がともに導通する。
一方、トランジスタＴＮ２はフリップフロップ回路の入力データの論理反転データに応じて導通状態が制御され、トランジスタＴＮ３はフリップフロップ回路の保持データの論理反転データに応じて導通状態が制御される。具体的に、入力データが０、出力データも０のとき、トランジスタＴＮ２とＴＮ３のゲートがともにハイレベルに保持される。このため、クロック信号ＣＫがハイレベルのとき、トランジスタＴＮ２とＴＮ３がともに導通する。
【００２５】
即ち、トランジスタＴＮ０とＴＮ１によって、入力データと保持データがともに１であることを検出する一致検出回路１１が形成され、トランジスタＴＮ２とＴＮ３は、入力データと保持データがともに０であることを検出する一致検出回路１２が形成される。このため、入力データと保持データが一致したとき、上記２つの一致検出回路１１と１２の何れかによってデータが一致することが検出されるので、クロック信号ＣＫがハイレベルになるとき、ノードＮ２とＮ３の間が導通し、かつ接地電位ＧＮＤに保持される。
【００２６】
即ち、クロック信号ＣＫがローレベルのとき、トランジスタＴＰ０が導通するので、ノードＮ２が電源電圧ＶＣＣによってハイレベルにプリチャージされる。クロック信号ＣＫがハイレベルに切り替わったとき、一致検出回路１１また１２によってフリップフロップ回路の入力データと保持データが一致することが検出されたとき、ノードＮ２から接地線までに電流経路が形成され、プリチャージによりノードＮ２に蓄積した電荷が接地電位ＧＮＤに流れるので、ノードＮ２が接地電位ＧＮＤに保持される。
【００２７】
パルス生成回路１０Ａにおいて、インバータＩＶ７とトランジスタＴＮ４は、ノードＮ２のローレベル電位を保持するラッチ回路として機能する。ノードＮ２がハイレベルのとき、インバータＩＶ７の出力端子がローレベルに保持され、トランジスタＴＮ４が遮断状態にある。ノードＮ２の電位が低下してインバータＩＶ７の論理しきい値より低くなると、インバータＩＶ７の出力信号がローレベルからハイレベルに反転するので、トランジスタＴＮ４が導通し、ノードＮ２の電荷のディスチャージが加速する。そして、クロック信号ＣＫがローレベルになって、トランジスタＴＰ０によってノードＮ２の電位がハイレベルに引き上げられるまで、ノードＮ２のローレベルが保持される。
【００２８】
次に、ラッチ回路２０の構成について説明する。
図１に示すように、ラッチ回路２０は、インバータＩＶ３，ＩＶ４及びトランスファゲートＴＧ０によって構成されている。インバータＩＶ４、ＩＶ３とトランスファゲートＴＧ０がループ接続になっており、トランスファゲートＴＧ０が導通時にこの帰還ループにより、ノードＮ４の電位が保持される。
【００２９】
トランスファゲートＴＧ０は、パルス生成回路１０Ａによって出力されるパルス信号Ｓ１によって導通状態が制御される。パルス信号Ｓ１がローレベルのとき、トランスファゲートＴＧ０が遮断し、パルス信号Ｓ１がハイレベルのとき、トランスファゲートＴＧ１が導通する。
【００３０】
図１に示すように、本実施形態のフリップフロップ回路において、ノードＮ１とノードＮ４との間に、トランスファゲートＴＧ１が接続されている。トランスファゲートＴＧ１も、パルス生成回路１０Ａによって出力されるパルス信号Ｓ１によって導通状態が制御される。ただし、トランスファゲートＴＧ１とＴＧ０は、互いに相反する動作を行う。即ち、パルス信号Ｓ１がローレベルのとき、トランスファゲートＴＧ１が導通し、ＴＧ０が遮断する。このとき、ノードＮ１の信号電圧がトランスファゲートＴＧ１を介してノードＮ１に転送される。パルス信号Ｓ１がハイレベルに立ち上がると、トランスファゲートＴＧ１が遮断し、ＴＧ０が導通する。このとき、ラッチ回路２０の帰還ループが動作し、ノードＮ４の電圧レベルが保持される。
【００３１】
即ち、パルス信号Ｓ１がローレベルのとき、入力データＤがフリップフロップ回路に取り込まれ、パルス信号Ｓ１がハイレベルのとき、取り込んだデータがフリップフロップ回路内部に設けられているラッチ回路２０によって保持される。
【００３２】
図２は、本実施形態のフリップフロップ回路の全体の動作を示す波形図である。以下、図１及び図２を参照しつつ、本実施形態のフリップフロップ回路の動作を説明する。
【００３３】
まず、図２に示すように、初期状態として、入力データＤを０、フリップフロップ回路の保持データを１とする。
時間ｔ１までに、クロック信号ＣＫがローレベルにあり、これに応じて、パルス生成回路１０Ａにおいて、トランジスタＴＰ０が導通し、信号Ｓ０がハイレベルにプリチャージされる。
【００３４】
時間ｔ１において、クロック信号ＣＫがローレベルからハイレベルに立ち上がる。これに応じて、トランジスタＴＰ０遮断し、トランジスタＴＮ５のゲートにハイレベルの信号が印加される。このとき、トランジスタＴＮ０のゲートにデータ入力端子と同じローレベルの信号が印加され、また、トランジスタＴＮ３のゲートにも、ノードＮ３の電圧、即ちローレベルの信号が印加される。即ち、２つの一致検出回路１１と１２がともに遮断状態にある。このため、ノードＮ２のハイレベルが保持され、ＮＡＮＤゲートＮＤ１からローレベルのパルス信号Ｓ１が出力される。
【００３５】
上述したように、パルス信号Ｓ１がローレベルになると、トランスファゲートＴＧ１が導通し、ＴＧ０が遮断するので、入力データＤがフリップフロップ回路に取り込まれる。即ち、ノードＮ４がノードＮ１と同じくハイレベルになり、フリップフロップ回路の保持データが０に切り替わる。
【００３６】
ラッチ回路２０において、ノードＮ４がハイレベルに切り替わると、インバータＩＶ４とＩＶ３の状態が順次反転し、ノードＮ５がローレベル、ノードＮ６がハイレベルに切り替わる。即ち、インバータＩＶ４とＩＶ３の遅延時間を経過したとき、ノードＮ６の信号Ｓ３がハイレベルに切り替わり、これに応じて一致検出回路１２においてトランジスタＴＮ３のゲートにハイレベルの信号が印加される。また、このときすでにトランジスタＴＮ２のゲートに、ノードＮ１のハイレベルの信号電圧が印加されている。また、トランジスタＴＮ５のゲートにクロック信号ＣＫに従ってハイレベルの信号が印加されている。このため、トランジスタＴＮ２とＴＮ３、さらにＴＮ５がともに導通状態になり、ノードＮ２がローレベルにディスチャージされる。
【００３７】
ノードＮ２の信号Ｓ０がローレベルに切り替わると、ＮＡＮＤゲートＮＤ１の出力がハイレベルになる。即ち、パルス信号Ｓ１がローレベルからハイレベルに切り替わる。このように、パルス信号Ｓ１のパルス幅（負のパルスと見る場合）は、トランスファゲートＴＧ１、インバータＩＶ４及びＩＶ３の遅延時間によってほぼ決まる。
【００３８】
上述したように、時間ｔ１において、クロック信号ＣＫの立ち上がりエッジに応じて、パルス信号Ｓ１がローレベルになり、これに従ってトランスファゲートＴＧ１が導通し、入力データがフリップフロップ回路に取り込まれて、ラッチ回路２０において、インバータＩＶ４とＩＶ３の状態が取り込んだデータに応じて順次反転する。そして、インバータＩＶ３の出力信号Ｓ３がハイレベルになるに連れて、一致検出回路１２を構成するトランジスタＴＮ２とＴＮ３が導通し、さらにトランジスタＴＮ５も導通するので、ノードＮ２の信号Ｓ０がローレベルに下がり、パルス信号Ｓ１がローレベルからハイレベルに切り替わり、負のパルス期間が終了する。そして、パルス信号Ｓ１がハイレベルになると、トランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０によって、フリップフロップ回路に取り込まれたデータが保持される。
【００３９】
上述したように、パルス生成回路１０Ａによって出力される負のパルス信号Ｓ１の幅は、ラッチ回路２０において入力データの取り込みが確実に完了した時間によって制御される。このため、動作環境の変動によって素子の遅延時間などが変化し、データの取り込み時間が変化しても、データ取り込みが確実に実行されるので、誤動作の発生が回避される。
【００４０】
次に、時間ｔ２において、クロック信号ＣＫがハイレベルからローレベルに切り替わる。これに従って、パルス生成回路１０Ａにおいて、トランジスタＴＮ５が遮断し、トランジスタＴＰ０が導通するので、ノードＮ２が電源電圧ＶＣＣにプリチャージされる。フリップフロップ回路は、次のデータ取り込みに備えて待機状態にある。
【００４１】
次に、保持データが０のとき、入力データ１をフリップフロップ回路に取り込むときの動作について説明する。
図２に示すように、データ１をフリップフロップ回路に取り込むため、クロック信号ＣＫの立ち上がる時間ｔ３までに、入力データＤが１に確定される必要がある。なお、入力データＤの切り替えは、前回のデータ取り込みが終了した後、次回クロック信号ＣＫが立ち上がるまでの間に完了すればよい。即ち、時間ｔ３の前に、データ入力端子の信号レベルがハイレベルに確定すればよい。
【００４２】
時間ｔ３において、クロック信号ＣＫがハイレベルに立ち上がる。これに応じて、パルス信号Ｓ１がローレベルに切り替わる。従って、トランスファゲートＴＧ１が導通し、入力データＤがフリップフロップ回路に取り込まれる。即ち、ラッチ回路２０において、ノードＮ４がノードＮ１と同じくローレベルになる。
【００４３】
ノードＮ４のレベル変化に従って、インバータＩＶ４とＩＶ３の出力信号が順次反転する。即ち、ノードＮ４がローレベルに切り替わってから、インバータＩＶ４の遅延時間を経過した後、ノードＮ５の信号Ｓ２がハイレベルになる。このとき、パルス生成回路１０Ａにおいて、一致検出回路１１を構成するトランジスタＴＮ０とＴＮ１のゲートにともにハイレベルの信号が印加される。また、クロック信号ＣＫが立ち上がったあと、トランジスタＴＮ５のゲートにもハイレベルの信号が印加されるので、トランジスタＴＮ０，ＴＮ１さらにＴＮ５が導通し、ノードＮ２にプリチャージされた電荷が接地電位ＧＮＤに流れ、信号Ｓ０がローレベル切り替わる。これに応じて、パルス信号Ｓ１がハイレベルに切り替わる。即ち、負のパルス期間が終了する。
【００４４】
上述したように、時間ｔ３において、クロック信号ＣＫの立ち上がりエッジに応じて、パルス信号Ｓ１がハイレベルからローレベルに切り替わる。これに従ってトランスファゲートＴＧ１が導通し、入力データ１がフリップフロップ回路に取り込まれる。そして、ラッチ回路２０において、インバータＩＶ４とＩＶ３が取り込んだデータに応じて順次出力が反転する。インバータＩＶ４の出力信号Ｓ２がローレベルからハイレベルに切り替わったとき、パルス生成回路１０Ａにおいて、一致検出回路１１を形成するトランジスタＴＮ０とＴＮ１によって、ラッチ回路２０の保持データが入力データと一致したことが検出されたとき、パルス信号Ｓ１が切り替わる。これに応じて、トランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０において、帰還ループが動作し、取り込んだデータが保持される。
【００４５】
次に、入力データＤがフリップフロップ回路の保持データと一致した場合の動作について説明する。
図２に示すように、時間ｔ５において、入力データＤが１に保持されている。また、このとき、フリップフロップ回路にもデータ１が保持されている。即ち、ラッチ回路２０において、ノードＮ５の信号Ｓ２がハイレベルに保持されている。
【００４６】
パルス生成回路１０Ａにおいて、一致検出回路１１では、トランジスタＴＮ０のゲートに入力データＤに応じたハイレベルの信号が印加されている。また、トランジスタＴＮ１のゲートに、ラッチ回路２０におけるノードＮ５の信号Ｓ２、即ち、ハイレベルの信号が印加されている。このため、図２に示すように、クロック信号ＣＫの立ち上がりエッジから、インバータＩＶ０とＩＶ１の２段分の遅延時間が経過したとき、トランジスタＴＮ５のゲートにハイレベルの信号が印加されるので、トランジスタＴＮ０，ＴＮ１及びＴＮ５が導通して、ノードＮ２がローレベルにディスチャージされる。
【００４７】
これに応じて、ＮＡＮＤゲートＮＤ１の出力端子からクロック信号ＣＫの立ち上がりエッジに応じて、負のパルス信号Ｓ１が出力される。当該パルス信号Ｓ１のパルス幅は、インバータＩＶ０，ＩＶ１の遅延時間、及びトランジスタＴＰ０とＴＰ５によって生じた遅延時間に応じて決まる。
【００４８】
パルス信号Ｓ１がローレベルの間、トランスファゲートＴＧ１が導通するが、このとき、ノードＮ４とノードＮ１が同じくローレベルにあるので、ノードＮ４の信号レベルが変化しない。そして、パルス信号Ｓ１のパルス期間が終了し、ローレベルからハイレベルに切り替わったあと、トランスファゲートＴＧ１が遮断し、ＴＧ０が導通するので、ラッチ回路２０において、インバータＩＶ４，ＩＶ３及びトランスファゲートＴＧ０からなる帰還ループが動作し、ノードＮ４の信号レベルが保持される。
【００４９】
上述したように、フリップフロップ回路にデータ１が保持されているとき、データ入力端子から同じくデータ１が入力された場合、パルス生成回路１０Ａの一致比較回路１１において、クロック信号ＣＫが立ち上がる前にトランジスタＴＮ０とＴＮ１のゲートにハイレベルの信号が印加されている。このため、クロック信号ＣＫの立ち上がりエッジから、インバータＩＶ０，ＩＶ１の遅延時間を経過したとき、トランジスタＴＮ５のゲートにハイレベルの信号が印加される。これに応じて、トランジスタＴＮ０，ＴＮ１とＴＮ５が導通し、ノードＮ２がローレベルにディスチャージされ、パルス信号Ｓ１がハイレベルに切り替わる。この場合、入力データと保持データが一致するので、ラッチ回路２０においてノードＮ４のレベルが変化せず、データ入力前と同じ状態がラッチ回路２０によって保持される。
【００５０】
また、同様に、フリップフロップ回路にデータ０が保持されているとき、データ入力端子から同じくデータ０が入力された場合、パルス生成回路１０Ａのデータ比較回路１２において、クロック信号ＣＫが立ち上がる前にトランジスタＴＮ２とＴＮ３のゲートにハイレベルの信号が印加されている。このため、クロック信号ＣＫの立ち上がりエッジから、インバータＩＶ０，ＩＶ１の遅延時間を経過したとき、トランジスタＴＮ５のゲートにハイレベルの信号が印加される。これに応じて、トランジスタＴＮ２，ＴＮ３とＴＮ５が導通し、ノードＮ２がローレベルにディスチャージされ、パルス信号Ｓ１がハイレベルに切り替わる。この場合、入力データと保持データが一致するので、ラッチ回路２０においてノードＮ４のレベルが変化せず、データ入力前と同じ状態がラッチ回路２０によって保持される。
【００５１】
以上説明したように、本実施形態によれば、パルス生成回路１０Ａにおいて、クロック信号ＣＫがローレベルのとき、トランジスタＴＰ０によりノードＮ２をハイレベルにプリチャージし、クロック信号ＣＫの立ち上がりエッジに従って、負のパルス信号Ｓ１を発生し、これに応じてトランスファゲートＴＧ１が導通し、入力データがラッチ回路２０の記憶ノードＮ４に取り込まれる。また、一致検出回路１１または１２において、入力データとラッチ回路の保持データとを比較し、比較対象データが一致したとき、ノードＮ２をディスチャージし、負のパルスを終了させ、これに応じてトランスファゲートＴＧ１が遮断し、ＴＧ０が導通するので、ラッチ回路２０によって取り込んだデータが保持される。すなわち、本実施形態によれば、フリップフロップ回路の記憶ノードに入力データを取り込む動作が完了したか否かの検出が行なわれ、この検出の結果に従って、取り込んだデータを保持するタイミングが制御される。したがって、動作条件の変化によりデータの取り込み時間が変化しても、取り込み動作を確実に実行することができ、動作環境の変動による誤動作の発生を防止できる。
【００５２】
第２実施形態
図３は本発明に係るフリップフロップ回路の第２の実施形態を示す回路図である。
図３に示すように、本実施形態のフリップフロップ回路は、パルス生成回路１０Ｂ、ラッチ回路２０、及びインバータＩＶ２，ＩＶ５，ＩＶ８、トランスファゲートＴＧ１を有している。
【００５３】
図１に示す本発明第１の実施形態に較べると、本実施形態のフリップフロップ回路は、パルス生成回路１０Ｂの構成が異なる。それ以外の各構成部分は、図１に示す第１の実施形態の対応する部分とほぼ同じである。このため、以下の説明において、パルス生成回路１０Ｂを中心に、第１の実施形態のパルス生成回路１０Ａとの相違及びそれによって生じた動作、機能の相違について説明する。
【００５４】
図３に示すように、本実施形態のフリップフロップ回路において、パルス生成回路１０Ｂは、インバータＩＶ０，ＩＶ１，ＩＶ６，ＩＶ７、ｐＭＯＳトランジスタＴＰ０，ＴＰ１，ＴＰ２、ｎＭＯＳトランジスタＴＮ０，ＴＮ１，ＴＮ２，ＴＮ３，ＴＮ４とＴＮ５及びＮＡＮＤゲートＮＤ１を有している。トランジスタＴＮ０とＴＮ１は一致検出回路１１を構成し、またトランジスタＴＮ２とＴＮ３は一致検出回路１２を構成している。
【００５５】
図１に示す本発明の第１の実施形態のパルス生成回路１０Ａに較べると、本実施形態のパルス生成回路１０Ｂでは、トランジスタＴＰ１とＴＰ２が新しく設けられている。トランジスタＴＰ１とＴＰ２が導通状態の抵抗値（即ち、オン抵抗の抵抗値）は、他のトランジスタより大きく設定されている。
【００５６】
図示のように、トランジスタＴＰ１とＴＰ２は、電源電圧ＶＣＣが供給された電源線とノードＮ２との間に直列接続されている。即ち、トランジスタＴＰ１のソースが電源線に接続され、ドレインがトランジスタＴＰ２のソースに接続されている。トランジスタＴＰ２のドレインがノードＮ２に接続されている。さらに、トランジスタＴＰ１とＴＰ２のゲートがともにインバータＩＶ７の出力端子に接続されている。
【００５７】
インバータＩＶ７の入力端子は、ノードＮ２に接続されている。また、その出力端子はトランジスタＴＰ１とＴＰ２のゲートに接続されるとともに、トランジスタＴＮ４のゲートにも接続される。
【００５８】
本実施形態のフリップフロップ回路では、システムの立ち上がりのとき、例えば、電源電圧が投入したとき、ノードＮ２が電源電圧ＶＣＣと接地電位ＧＮＤとの中間電位になることを防止し、それによってインバータＩＶ７に発生する貫通電流を防止するために、電源線とノードＮ２との間に縦続接続のトランジスタＴＰ１とＴＰ２が設けられている。
以下、トランジスタＴＰ１とＴＰ２が設けられた本発明のパルス生成回路１０Ｂの動作について説明する。
【００５９】
電源投入時に、クロック信号ＣＫがローレベルのとき、これに応じてインバータＩＶ１の出力端子もローレベルになり、トランジスタＴＰ０が導通するので、ノードＮ２が電源電圧ＶＣＣレベルにプリチャージされる。即ち、電源投入時にクロック信号ＣＫがローレベルの場合、フリップフロップ回路は問題なく立ち上がる。
【００６０】
しかし、電源投入時のクロック信号ＣＫのレベルはハイレベルまたはローレベルの何れにもなり得る。電源投入時にクロック信号ＣＫがハイレベルであると、これに応じてインバータＩＶ１の出力端子もハイレベルに保持され、トランジスタＴＰ０は遮断状態になる。このため、ノードＮ２にプリチャージする経路が形成されず、ノードＮ２が電源電圧ＶＣＣと接地電位ＧＮＤとの中間電位になることがある。
【００６１】
ノードＮ２が中間電位になると、インバータＩＶ７を構成するｐＭＯＳトランジスタとｎＭＯＳトランジスタのゲートに中間電位が印加されるので、リーク電流が流れる。即ち、電源電圧ＶＣＣ投入時に、クロック信号ＣＫのレベルに応じて、フリップフロップ回路に瞬時に大電流が発生することがある。これは、電源供給回路に大きな負荷を与えるのみならず、この大電流によってフリップフロップ回路の動作の安定性が影響され得る。
【００６２】
そこで、本実施形態のフリップフロップ回路では、上述したように、パルス生成回路１０Ｂにおいて、電源線とノードＮ２の間に、縦続接続したトランジスタＴＰ１とＴＰ２が設けられている。以下、本実施形態のフリップフロップ回路においける電源投入時の動作について説明する。
【００６３】
電源電圧ＶＣＣが投入されたとき、クロック信号ＣＫがローレベルの場合、インバータＩＶ１の出力端子もローレベルに保持され、トランジスタＴＰ０が導通し、ノードＮ２が電源電圧ＶＣＣによりプリチャージされる。即ち、ノードＮ２がハイレベルに保持される。すると、インバータＩＶ７の出力端子がローレベルになり、トランジスタＴＰ１とＴＰ２も導通する。このとき、トランジスタＴＰ１とＴＰ２、さらにインバータＩＶ７により、ラッチ回路が形成され、このラッチ回路によって、ノードＮ２がハイレベルに保持される。
【００６４】
一方、電源投入時にクロック信号ＣＫがハイレベルにあるとき、これに応じてインバータＩＶ１の出力端子もハイレベルにあるため、トランジスタＴＰ０が遮断し、ノードＮ２はプリチャージされない。このとき、フリップフロップ回路への入力データと保持データが一致するか否かによって、パルス生成回路１０Ｂの動作が異なる。
【００６５】
まず、入力データと保持データが一致する場合の動作について説明する。
入力データＤとフリップフロップ回路の保持データが一致するとき、即ち、入力データと保持データがともに１、または０のとき、パルス生成回路１０Ｂにおいて、一致検出回路１１または１２によって、データの一致が検出される。例えば、入力データと保持データがともに１の場合、一致検出回路１１において、トランジスタＴＮ０とＴＮ１のゲートにハイレベルの信号が印加される。また、入力データと保持データがともに０の場合、一致検出回路１２において、トランジスタＴＮ２とＴＮ３のゲートにハイレベルの信号が印加される。さらに、このとき、トランジスタＴＮ５のゲートにもハイレベルの信号が印加されているので、一致回路１１または１２の何れかとトランジスタＴＮ５が導通し、ノードＮ２と接地電位ＧＮＤとの間に電流経路が形成される。また、トランジスタＴＰ１とＴＰ２のオン抵抗が十分大きく設定されているので、ノードＮ２がディスチャージされ、接地電位ＧＮＤに保持される。
【００６６】
一方、電源投入時に、フリップフロップ回路の入力データと保持データが一致しない場合、一致検出回路１１と１２の両方が遮断されるため、トランジスタＴＮ５が導通状態にあるにも関わらず、ノードＮ２と接地電位ＧＮＤとの間に電流経路が形成されない。このとき、トランジスタＴＰ１，ＴＰ２、トランジスタＴＮ４，ＴＮ５及びインバータＩＶ７によって、正帰還回路が構成されている。例えば、ノードＮ２の電圧がわずかにインバータＩＶ７の論理しきい値電圧より高い場合、インバータＩＶ７の出力端子がローレベルに遷移し、これに応じてトランジスタＴＰ１とＴＰ２のオン抵抗が低下し、ノードＮ２の電圧がさらに上昇する。したがって、この場合、ノードＮ２の電圧は急速にハイレベルに収束する。
【００６７】
逆に、ノードＮ２の電圧がわずかにインバータＩＶ７の論理しきい値電圧より低い場合、インバータＩＶ７の出力端子がハイレベルに遷移し、これに応じてトランジスタＴＮ４のオン抵抗が低下し、ノードＮ２の電圧がさらに低下する。したがって、この場合、ノードＮ２の電圧が急速にローレベルに収束する。
なお、トランジスタＴＰ１とＴＰ２のオン抵抗は他のトランジスタより大きく形成されているので、正帰還回路において、例えば、ノードＮ２が中間電位にあるとき、トランジスタＴＰ１とＴＰ２によってこれをハイレベルに引き上げる力は、トランジスタＴＮ４とＴＮ５によってローレベルに引き下げる力より弱い。したがって、ノードＮ２の電位は高い確率でローレベルに収束する。
【００６８】
上述したように、パルス生成回路１０Ｂにおいて、電源投入時、クロック信号ＣＫがローレベルのとき、ノードＮ２がハイレベルにプリチャージされる。逆に、クロック信号ＣＫがハイレベルのとき、ノードＮ２は高い確率でローレベルに保持される。即ち、電源投入時クロック信号ＣＫがハイレベルになっている場合でもノードＮ２が中間電位になることが回避されるので、電源投入時の動作の不安定性が防止できる。
【００６９】
上述した立ち上がり動作を経て、ノードＮ２の電位がハイレベルまたはローレベルに確定される。そして、クロック信号ＣＫの電位変化に従って、データ入力端子に入力されるデータＤが順次にフリップフロップ回路に取り込まれ、ラッチ回路２０によって保持されるとともに、出力端子に出力される。
なお、本実施形態のフリップフロップ回路において、データの取り込みと保持動作は、上述した本発明の第１の実施形態とほぼ同じである。以下、これらの動作について簡単に説明する。
【００７０】
クロック信号ＣＫがローレベルのとき、パルス生成回路１０Ｂにおいて、ノードＮ２がハイレベルにプリチャージされ、ＮＡＮＤゲートＮＤ１の出力信号であるパルス信号Ｓ１はハイレベルに保持される。このため、ラッチ回路２０では、トランスファゲートＴＧ０が導通し、帰還ループが形成され、記憶データが保持される。また、トランスファゲートＴＧ１が遮断される。
【００７１】
クロック信号ＣＫがローレベルからハイレベルに立ち上がったとき、ＮＡＮＤゲートＮＤ１によって出力されるパルス信号Ｓ１がハイレベルからローレベルに切り替わる。これに応じて、トランスファゲートＴＧ１が導通し、トランスファゲートＴＧ０が遮断する。このため、データ入力端子から入力されるデータＤがフリップフロップ回路の記憶ノードに取り込まれる。
例えば、入力データＤが１のとき、これに応じてノードＮ１がローレベルに保持される。トランスファゲートＴＧ１が導通したとき、ノードＮ４がノードＮ１と同じくローレベルに保持される。逆に、入力データＤが０のとき、これに応じてノードＮ１がハイレベルに保持される。トランスファゲートＴＧ１が導通したとき、ノードＮ４がノードＮ１と同じくハイレベルに保持される。
【００７２】
トランスファゲートＴＧ１が導通することによって、入力データＤがフリップフロップ回路に取り込まれる。即ち、フリップフロップ回路の保持データが入力データＤと一致するようになる。これに伴って、一致検出回路１１または１２の何れかにより、データが一致することが検出される。例えば、入力データが１、保持データも１になると、一致検出回路１１において、トランジスタＴＮ０とＴＮ１のゲートにともにハイレベルの信号が印加される。逆に、入力データが０、保持データも０になると、一致検出回路１２において、トランジスタＴＮ２とＴＮ３のゲートにともにハイレベルの信号が印加される。
【００７３】
このように、保持データと入力データが一致すると、一致検出回路１１または１２の何れかにより、データの一致が検出される。また、このとき、クロック信号ＣＫがハイレベルにあるため、トランジスタＴＮ５が導通するので、ノードＮ２と接地電位ＧＮＤ間に電流経路が形成され、ノードＮ２がディスチャージされ、ローレベルになる。これに従って、ＮＡＮＤゲートＮＤ１から出力されるパルス信号Ｓ１がハイレベルになり、トランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０において帰還ループが形成され、取り込まれたデータがラッチ回路２０により保持される。
【００７４】
データ取り込みの前において、フリップフロップ回路の入力データと保持データが一致している場合、一致検出回路１１または１２により、データが一致することが検出される。クロック信号ＣＫの立ち上がりエッジに従って、パルス信号Ｓ１がローレベルになり、トランスファゲートＴＧ１が導通する。そして、インバータＩＶ０とＩＶ１の遅延時間が経過したとき、トランジスタＴＮ５導通するので、ノードＮ２と接地電位ＧＮＤとの間に電流経路が形成され、ノードＮ２がローレベルにディスチャージされる。これに応じてＮＡＮＤゲートＮＤ１から出力されるパルス信号Ｓ１がハイレベルに切り替わり、ラッチ回路２０において記憶データが保持される。
【００７５】
即ち、フリップフロップ回路の入力データと保持データが一致している場合、パルス生成回路１０Ｂによって、インバータＩＶ０とＩＶ１の遅延時間、及びトランジスタＴＰ０とＴＰ５により生じた遅延時間によってパルス幅が制御されるパルス信号Ｓ１が生成される。これに応じて、トランスファゲートＴＧ１が導通しても、フリップフロップ回路の保持データが変化せず、そして、負のパルスが終了後、ラッチ回路２０によって記憶データが保持される。
【００７６】
以上説明したように、本実施形態によれば、パルス生成回路１０Ｂにおいて、電源投入時にノードＮ２のレベルを確定させるために、電源線とノードＮ２との間に縦続接続のトランジスタＴＰ１とＴＰ２が設けられている。電源投入時、クロック信号ＣＫがハイレベルのとき、入力データと保持データが一致するとき、一致検出回路１１または１２により、データの一致が検出されるので、ノードＮ２がディスチャージされ、ローレベルになる。一方、入力データと保持データが一致しないとき、トランジスタＴＰ１，ＴＰ２、トランジスタＴＮ４，ＴＮ５とインバータＩＶ７によって正帰還回路が形成される。このとき、トランジスタＴＰ１とＴＰ２のオン抵抗が他のトランジスタよりも大きく設定されているので、ノードＮ２の電位は高い確率で接地電位ＧＮＤに収束する。これにより、フリップフロップ回路の立ち上がり時の動作の安定性が改善され、ノードＮ２が中間電位になってインバータＩＶ７に貫通電流が流れるのを防止でき、電源回路の過負荷を解消できる。
【００７７】
第３実施形態
図４は本発明に係るフリップフロップ回路の第３の実施形態を示す回路図である。
図示のように、本実施形態のフリップフロップ回路は、パルス生成回路１０Ｃ、ラッチ回路２０、及びトランスファゲートＴＧ１などを有している。以下、本実施形態のフリップフロップ回路の各構成部分について説明する。
【００７８】
パルス生成回路１０Ｃは、図示のように、インバータＩＶ０，ＩＶ１，ＩＶ６，ＩＶ７、ｐＭＯＳトランジスタＴＰ０，ＴＰ１，ＴＰ２，ＴＰ３，ＴＰ４，ＴＰ５、ｎＭＯＳトランジスタＴＮ０，ＴＮ１，ＴＮ２，ＴＮ３，ＴＮ４とＴＮ５、及びＮＡＮＤゲートＮＤ１を有している。トランジスタＴＮ０とＴＮ１は一致検出回路１１を構成し、またトランジスタＴＮ２とＴＮ３は一致検出回路１２を構成している。
【００７９】
ラッチ回路２０は、上述した本発明のフリップフロップ回路の第１または第２の実施形態にあるラッチ回路２０と同じ構成を有し、同じ機能をもつ。このため、ラッチ回路２０について説明を省略する。
【００８０】
以下、本実施形態におけるパルス生成回路１０Ｃの構成及び動作について、図４を参照しつつ説明する。
パルス生成回路１０Ｃにおいて、図４に示すように、トランジスタＴＮ０とＴＮ１によって構成されている一致検出回路１１は、第１または第２の実施形態の一致検出回路１１と同じ構成を有し、また、トランジスタＴＮ２とＴＮ３によって構成されている一致検出回路１２も、第１または第２の実施形態の一致検出回路１２と同じ構成を有している。
【００８１】
本実施形態において、パルス生成回路１０Ｃでは、ノードＮ２と電源電圧ＶＣＣが供給される電源線との間に、トランジスタＴＰ１，ＴＰ２，ＴＰ３，ＴＰ４及びＴＰ５が設けられている。図４に示すように、トランジスタＴＰ１とＴＰ２がノードＮ２とＮ７との間で並列に接続され、また、トランジスタＴＰ３とＴＰ４がノードＮ７とＮ８との間で並列に接続されている。トランジスタＴＰ５はノードＮ８と電源線との間に接続されている。
【００８２】
トランジスタＴＰ１のゲートは、一致検出回路１１にあるトランジスタＴＮ０のゲートとともに、インバータＩＶ６の出力端子に接続されている。トランジスタＴＰ２のゲートは、一致検出回路１１にあるトランジスタＴＮ１のゲートとともに、ラッチ回路２０のノードＮ５に接続されている。
トランジスタＴＰ３のゲートは、一致検出回路１２にあるトランジスタＴＮ２のゲートとともに、インバータＩＶ５の出力端子に接続されている。トランジスタＴＰ４のゲートは、一致検出回路１２にあるトランジスタＴＮ３のゲートとともに、ラッチ回路２０のノードＮ６に接続されている。
トランジスタＴＰ５のゲートは、トランジスタＴＮ４のゲートとともに、インバータＩＶ７の出力端子に接続されている。
【００８３】
上述した以外の部分において、例えば、インバータＩＶ０，ＩＶ１，ＩＶ６，ＩＶ７、トランジスタＴＰ０、及びＮＡＮＤゲートＮＤ１の接続は、上述した第１または第２の実施形態と同じである。
【００８４】
即ち、本実施形態のフリップフロップ回路において、パルス生成回路１０Ｃには、第１の実施形態にあるパルス生成回路１０Ａに較べて、トランジスタＴＰ１，ＴＰ２，ＴＰ３，ＴＰ４及びＴＰ５が追加された。これらのトランジスタを追加することによって、電源投入時に、ノードＮ２が中間電位になることを防止し、それによってインバータＩＶ７に発生する貫通電流を防止する。
【００８５】
以下、電源投入時におけるパルス生成回路１０Ｃの動作について説明する。
電源投入時にクロック信号ＣＫがローレベルの場合、これに応じてインバータＩＶ１の出力端子もローレベルになり、トランジスタＴＰ０が導通するので、ノードＮ２が電源電圧ＶＣＣレベルにプリチャージされる。即ち、電源投入時にクロック信号ＣＫがローレベルの場合、フリップフロップ回路は問題なく立ち上がる。
【００８６】
しかし、電源投入時にクロック信号ＣＫがハイレベルのとき、トランジスタＴＰ０が遮断し、ノードＮ２がプリチャージされない。以下、フリップフロップ回路の入力データと保持データが一致する場合と一致しない場合のそれぞれについてパルス生成回路１０Ｃの動作を説明する。
【００８７】
フリップフロップ回路の入力データと保持データが一致する場合、パルス生成回路１０Ｃの一致検出回路１１または１２の何れかにより、入力データと保持データが一致することが検出される。例えば、入力データと保持データがともに１の場合、一致検出回路１１において、トランジスタＴＮ０とＴＮ１のゲートにともにハイレベルの信号が印加される。また、トランジスタＴＰ１とＴＰ２のゲートにもハイレベルの信号が印加される。このため、トランジスタＴＮ０とＴＮ１が導通し、トランジスタＴＰ１とＴＰ２が遮断する。また、クロック信号ＣＫがハイレベルにあるので、トランジスタＴＮ５のゲートにもハイレベルの信号が印加されるので、トランジスタＴＮ０、ＴＮ１及びＴＮ５が導通し、ノードＮ２がディスチャージされ、接地電位ＧＮＤに保持される。
【００８８】
また、入力データと保持データがともに０のとき、一致検出回路１２において、トランジスタＴＮ２とＴＮ３のゲートにともにハイレベルの信号が印加され、また、トランジスタＴＰ３とＴＰ４のゲートにもハイレベルの信号が印加される。このため、トランジスタＴＮ２，ＴＮ３及びＴＮ５が導通し、トランジスタＴＰ３とＴＰ４が遮断するので、ノードＮ２がディスチャージされ、接地電位ＧＮＤに保持される。
【００８９】
次に、電源投入時にフリップフロップ回路の入力データと保持データが一致しない場合、パルス生成回路１０Ｃの動作について説明する。
入力データと保持データが一致しない場合、一致検出回路１１または１２において、２つのトランジスタの一方のゲートがハイレベルの信号、他方のトランジスタのゲートにローレベルの信号がそれぞれ印加される。このため、一致検出回路１１と１２がともに遮断する状態にあり、一方、トランジスタＴＰ１とＴＰ２、及びトランジスタＴＰ３とＴＰ４からなる２組のトランジスタにおいて、何れか一方が導通状態にあるので、このとき、トランジスタＴＰ５、ＴＮ４、ＴＮ５及びインバータＩＶ７によって、正帰還回路が形成される。
【００９０】
当該正帰還回路において、ノードＮ２の電位がインバータＩＶ７の論理しきい値電圧よりわずかにずれると、正帰還動作により、ノードＮ２の電位が電源電圧ＶＣＣまたは接地電位ＧＮＤのどちらかに急速に収束する。例えば、ノードＮ２の電位がインバータＩＶ７の論理しきい値電圧よりわずかに高くなると、インバータＩＶ７の出力電圧が低下する。これに応じて、トランジスタＴＰ５が導通し、トランジスタＴＮ４が遮断する方向に状態が遷移する。このため、電源電圧ＶＣＣとノードＮ２の間に電流経路が形成され、これによってノードＮ２がプリチャージされ、そのレベルが急速に上昇し、ほぼ電源電圧ＶＣＣに達するところで安定する。
【００９１】
逆に、ノードＮ２の電位がインバータＩＶ７の論理しきい値電圧よりわずかに低くなると、インバータＩＶ７の出力電圧が上昇する。これに応じて、トランジスタＴＰ５が遮断し、トランジスタＴＮ４が導通する方向に状態が遷移する。このため、ノードＮ２と接地電位ＧＮＤとの間に電流経路が形成され、これによってノードＮ２がディスチャージされ、そのレベルが急速に低下し、ほぼ接地電位ＧＮＤに達するところで安定する。
【００９２】
即ち、上述のように、電源投入時に、クロック信号ＣＫがローレベルの場合、ノードＮ２がハイレベルにプリチャージされ、逆に、クロック信号ＣＫがハイレベルの場合、フリップフロップ回路の入力データと保持データとが一致するとき、パルス生成回路１０Ｃにおいて一致検出回路１１または１２の何れかにより、データが一致することが検出され、これに応じて、ノードＮ２がディスチャージされ、ほぼ接地電位ＧＮＤに保持される。一方、入力データと保持データとが一致しないとき、トランジスタＴＰ５、ＴＮ４、ＴＮ５及びインバータＩＶ７により正帰還回路が形成され、当該正帰還回路により、ノードＮ２がハイレベルまたはローレベルに何れかに保持される。このように、電源投入時のクロック信号ＣＫのレベルに関係なく、また、入力データと保持データの状態に関わらず、ノードＮ２がハイレベルまたはローレベルの何れかに保持され、中間電位になることが回避され、これによるインバータＩＶ７の貫通電流の発生を防止できる。
【００９３】
上述した立ち上がり動作を経て、ノードＮ２の電位がハイレベルまたはローレベルに確定される。そして、電源投入後、パルス発生回路１０Ｃによってクロック信号ＣＫのレベルの遷移に従って、負のパルス信号Ｓ１が生成される。これに従って、フリップフロップ回路は、データの取り込みと保持動作を行う。
なお、本実施形態のフリップフロップ回路におけるデータ取り込みと保持の動作は、上述した第１または第２の実施形態の動作とほぼ同じであるので、以下、本実施形態のデータ取り込みと保持動作について簡単に説明する。
【００９４】
クロック信号ＣＫがローレベルにあるとき、トランジスタＴＰ０が導通し、これに応じて、ノードＮ２がハイレベルにプリチャージされる。このとき、ＮＡＮＤゲートＮＤ１からハイレベルのパルス信号Ｓ１が出力され、これに応じてトランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０において、帰還ループが形成され、これによりフリップフロップ回路の記憶データが保持される。
【００９５】
クロック信号ＣＫがローレベルからハイレベルに立ち上がると、ＮＡＮＤゲートＮＤ１から出力されるパルス信号Ｓ１がハイレベルからローレベルに切り替わる。これに応じて、トランスファゲートＴＧ１が導通し、トランスファゲートＴＧ０が遮断する。このため、ノードＮ４がノードＮ１と同じレベルに制御される。即ち、クロック信号ＣＫの立ち上がりエッジに従って、入力データＤがフリップフロップ回路に取り込まれる。
【００９６】
ここで、入力データと保持データが一致するときと一致しないときにおいて、パルス生成回路１０Ｃの動作が異なる。以下、それぞれの場合について説明する。
【００９７】
まず、入力データと保持データが一致しない場合の動作を説明する。
例えば、入力データＤが１、保持データが０のとき、即ち、入力データＤに応じてノードＮ１がローレベルに保持され、一方、ノードＮ４がラッチ回路２０によりハイレベルに保持されている。クロック信号ＣＫの立ち上がりエッジに従って負のパルス信号Ｓ１が出力され、これに応じてトランスファゲートＴＧ１が導通することにより、ノードＮ４がノードＮ１と同じくローレベルに保持される。逆に、入力データＤが０、保持データが１のとき、即ちノードＮ１がハイレベルに保持される。そして、負のパルス信号Ｓ１に応じてトランスファゲートＴＧ１が導通することによって、ノードＮ４がノードＮ１と同じくハイレベルに保持される。
【００９８】
上述したように、トランスファゲートＴＧ１が導通することによって、入力データＤがフリップフロップ回路に取り込まれる。即ち、フリップフロップ回路の保持データが入力データと一致するようになる。これに伴って、一致検出回路１１または１２の何れかにより、データが一致することが検出される。例えば、入力データが１、保持データも１になると、一致検出回路１１において、トランジスタＴＮ０とＴＮ１のゲートにともにハイレベルの信号が印加される。逆に、入力データが０、保持データも０になると、一致検出回路１２において、トランジスタＴＮ２とＴＮ３のゲートにともにハイレベルの信号が印加される。
【００９９】
このように、保持データと入力データが一致すると、一致検出回路１１または１２の何れかにより、データの一致が検出される。また、このとき、クロック信号ＣＫがハイレベルにあるため、トランジスタＴＮ５が導通するので、ノードＮ２と接地電位ＧＮＤ間に電流経路が形成され、ノードＮ２がディスチャージされ、ローレベルになる。これに従って、ＮＡＮＤゲートＮＤ１から出力されるパルス信号Ｓ１がハイレベルになり、トランスファゲートＴＧ１が遮断し、トランスファゲートＴＧ０が導通するので、ラッチ回路２０において帰還ループが形成され、取り込まれたデータがラッチ回路２０により保持される。
【０１００】
一方、フリップフロップ回路の入力データと保持データが一致している場合、パルス生成回路１０Ｃによって、負のパルス信号Ｓ１が生成される。これに応じてトランスファゲートＴＧ１が導通しても、フリップフロップ回路の保持データが変化せず、そして、負のパルスが終了後、ラッチ回路２０によって記憶データが保持される。
【０１０１】
以上説明したように、本実施形態によれば、パルス生成回路１０Ｃにおいて、電源投入時にノードＮ２のレベルを確定させるために、ノードＮ２と電源線との間に並列接続のトランジスタＴＰ１とＴＰ２、並列接続のトランジスタＴＰ３とＴＰ４、そしてトランジスタＴＰ５が縦続接続されている。電源投入時にクロック信号ＣＫがハイレベルの場合において、入力データと保持データが一致していると、一致検出回路１１または１２により、データの一致が検出されるので、ノードＮ２がディスチャージされ、ローレベルになる。またこの場合において、入力データと保持データが一致していないと、並列接続のトランジスタＴＰ１またはＴＰ２の一方、ならびにトランジスタＴＰ３またはＴＰ４の一方がそれぞれ導通し、トランジスタＴＮ４，ＴＮ５，ＴＰ５とインバータＩＶ７によって正帰還回路が形成されるので、ノードＮ２の電位が電源電圧ＶＣＣまたは接地電位ＧＮＤの何れかに収束する。これにより、フリップフロップ回路の立ち上がり時の動作の安定性が改善され、ノードＮ２が中間電位になってインバータＩＶ７に貫通電流が流れるのを防止でき、電源回路の過負荷を解消できる。
【０１０２】
【発明の効果】
以上説明したように、本発明のフリップフロップ回路によれば、データの取り込みとデータ保持の動作を制御するパルス信号が、入力データと記憶データとの比較結果に応じて制御され、これにより、動作環境の変化に応じて、パルス信号の幅が適宜制御されるため、動作環境の変化による影響を防止でき、広範な動作条件において安定した動作を実現できる利点がある。
また、本発明のフリップフロップ回路によれば、電源投入時のクロック信号のレベルに依存することなく、パルス信号を生成するための内部信号ノードの電圧レベルを電源電圧レベルまたは接地電位レベルの何れかに近づけるように制御できるため、信号ノードが中間電圧になることを防止でき、それによってインバータなどの論理回路に貫通電流が流れることを回避できる。これにより、電源投入時に貫通電流による大電流が発生することを防止でき、フリップフロップ回路の動作の安定性を改善できる。
【図面の簡単な説明】
【図１】本発明に係るフリップフロップ回路の第１の実施形態を示す回路図である。
【図２】第１の実施形態のフリップフロップ回路の動作を示す波形図である。
【図３】本発明に係るフリップフロップ回路の第２の実施形態を示す回路図である。
【図４】本発明に係るフリップフロップ回路の第３の実施形態を示す回路図である。
【図５】従来のフリップフロップ回路の一構成例を示す回路図である。
【符号の説明】
１０，１０Ａ，１０Ｂ，１０Ｃ…パルス生成回路、２０…ラッチ回路、ＴＧ０，ＴＧ１…トランスファゲート、ＮＤ１…ＮＡＮＤゲート、ＴＮ０，ＴＮ１，…，ＴＮ５…ｎＭＯＳトランジスタ、ＴＰ０，ＴＰ１，…，ＴＰ５…ｐＭＯＳトランジスタ、ＩＶ０，ＩＶ１，…，ＩＶ７…インバータ、ＶＣＣ…電源電圧、ＧＮＤ…接地電位。
【図１】
2004343570.tif 000003
【図２】
2004343570.tif 000004
【図３】
2004343570.tif 000005
【図４】
2004343570.tif 000006
【図５】
2004343570.tif 000007