(57)【特許請求の範囲】
【請求項１】
クロック信号に基づきパルス信号を生成するローカルなパルス信号生成回路、前記パルス信号に応じて入力データをオン／オフするトランスファーゲート、該トランスファーゲートの出力側に接続されたラッチ回路、前記ローカルなパルス信号生成回路の入力側に接続され、前記クロック信号を前記ローカルなパルス信号生成回路に供給するクロックドライバを備えるフリップフロップ回路を直列に複数段接続し、
該直列接続された各段のフリップフロップ回路中のそれぞれのクロックドライバを最終段より初段へ向けて順次接続し、各段のフリップフロップ回路へのクロック信号の供給を最終段のフリップフロップ回路側から順次行うようにしたことを特徴とするシフトレジスタ。
【請求項２】
前記順次接続された複数段のフリップフロップ回路の内の特定のフリップフロップ回路と該特定のフリップフロップ回路の直前のフリップフロップ回路のそれぞれのトランスファーゲートに入力されるパルス信号が共にハイレベルとなる時間が、前記直前のフリップフロップ回路のトランスファーゲートに前記パルス信号が入力されてから前記直前のフリップフロップ回路の前記ラッチ回路の出力が確定するまでの時間と、該出力が確定してから、前記特定のフリップフロップ回路のラッチ回路の入力電位が該ラッチ回路のしきい値に達するまでにかかる時間との和よりも小さいことを特徴とする請求項１に記載のシフトレジスタ。
【請求項３】
クロック信号に基づきパルス信号を生成するローカルなパルス信号生成回路、前記パルス信号に応じて入力データをオン／オフするトランスファーゲート、該トランスファーゲートの出力側に接続されたラッチ回路、前記ローカルなパルス信号生成回路の入力側に接続され、前記クロック信号を前記ローカルなパルス信号生成回路に供給するクロックドライバを備えるフリップフロップ回路をＮビット（Ｎは正の整数）並列に配置し、
該各フリップフロップ回路中のそれぞれのクロックドライバに共通のクロック信号を供給したことを特徴とするＮビットレジスタ。
【請求項４】
クロック信号に基づきパルス信号を生成するローカルなパルス信号生成回路、前記パルス信号に応じて入力データをオン／オフするトランスファーゲート、該トランスファーゲートの出力側に接続されたラッチ回路、前記ローカルなパルス信号生成回路の入力側に接続され、前記クロック信号を前記ローカルなパルス信号生成回路に供給するクロックドライバを備えるフリップフロップ回路を直列にＭ段接続してシフトレジスタを構成し、このＭ段接続したシフトレジスタをＮビット並列に配置し（Ｍ、Ｎはそれぞれ正の整数である）、
前記各クロックドライバを、各シフトレジスタの最終段のフリップフロップ回路より初段へ向けて順次接続すると共に、最終段の各クロックドライバに共通のクロック信号を供給して、前記各フリップフロップ回路への前記クロック信号の供給を最終段のフリップフロップ回路側から順次行うようにしたことを特徴とする論理回路。
【請求項５】
前記Ｍ段接続された複数段のフリップフロップ回路の内の特定のフリップフロップ回路と該特定のフリップフロップ回路の直前のフリップフロップ回路のそれぞれのトランスファーゲートに入力されるパルス信号が共にハイレベルとなる時間が、前記直前のフリップフロップ回路のトランスファーゲートに前記パルス信号が入力されてから前記直前のフリップフロップ回路の前記ラッチ回路の出力が確定するまでの時間と、該出力が確定してから、前記特定のフリップフロップ回路のラッチ回路の入力電位が該ラッチ回路のしきい値に達するまでにかかる時間との和よりも小さいことを特徴とする請求項４に記載の論理回路。
【請求項６】
クロック信号に基づきパルス信号を生成するローカルなパルス信号生成回路、前記パルス信号に応じて入力データをオン／オフするトランスファーゲート、該トランスファーゲートの出力側に接続されたラッチ回路、前記ローカルなパルス信号生成回路の入力側に接続され、前記クロック信号を前記ローカルなパルス信号生成回路に供給するクロックドライバを備える第１のフリップフロップ回路を、Ｍ段目となる最終段に配置し（Ｍは正の整数である）、
前記パルス信号に応じて入力データをオン／オフするトランスファーゲートと、 該トランスファーゲートの出力側に接続されたラッチ回路と、前記ローカルなパルス信号生成回路 からのパルス信号を駆動するためのパルスドライバとを少なくとも有する第２のフリップフロップ回路を前記第１のフリップフロップ回路の前に直列にＭ−１段接続し、
前記各パルスドライバをＭ−１段目より初段へ向けて順次接続し、前記ローカルなパルス信号生成回路によって生成されたパルス信号を、前記Ｍ段目からＭ−１段目以降のパルスドライバへ順次供給したことを特徴とする論理回路。
【請求項７】
前記Ｍ段接続された複数段のフリップフロップ回路の内の特定のフリップフロップ回路と該特定のフリップフロップ回路の直前のフリップフロップ回路のそれぞれのトランスファーゲートに入力されるパルス信号が共にハイレベルとなる時間が、前記直前のフリップフロップ回路のトランスファーゲートに前記パルス信号が入力されてから前記直前のフリップフロップ回路の前記ラッチ回路の出力が確定するまでの時間と、該出力が確定してから、前記特定のフリップフロップ回路のラッチ回路の入力電位が該ラッチ回路のしきい値に達するまでにかかる時間との和よりも小さいことを特徴とする請求項６に記載の論理回路。
【請求項８】
前記Ｍ段接続されたシフトレジスタをＮビット並列に配置し（Ｎは正の整数である）、
前記最終段に配置された第１のフリップフロップ回路中の各クロックドライバに共通のクロック信号を供給して、前記各第２のフリップフロップ回路への前記パルス信号の供給を前記第１のフリップフロップ回路側から順次行うようにしたことを特徴とする請求項６または７に記載の論理回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路に用いられるフリップフロップ回路、シフトレジスタ、Ｎビットレジスタ、及び論理回路に関する。
【０００２】
【従来の技術】
種々のフリップフロップ回路の中で、パルス駆動型フリップフロップ回路（以下「ＰＤ−Ｆ／Ｆ」という）は、低消費電力化や回路構成の簡素化等の観点から優れた特徴を持つものとして従来より知られている。
【０００３】
図９は、従来のＰＤ−Ｆ／Ｆの構成を示す回路図である。このＰＤ−Ｆ／Ｆは、入力データＩＮが供給される入力ノードＮ１０１と中間ノードＮ１０２との間に接続されたトランスファーゲート１０３を有している。トランスファーゲート１０３は、外部より与えられる所定のパルス幅のパルス信号ＰＳとその反転信号ＰＳ（バー）によりオン／オフ制御される。そして、中間ノードＮ１０２と出力ノードＮ１０４との間には、出力インバータ回路１０５とこの出力インバータ回路１０５に逆並列接続された帰還インバータ回路１０６との２つのインバータ回路からなるラッチ回路１０７が接続され、このラッチ回路１０７の出力端である出力ノードＮ１０４から出力データＯＵＴが出力されるようになっている。
【０００４】
このＰＤ−Ｆ／Ｆによれば、パルス信号ＰＳが“１”のときに、入力ノードＮ１０１に準備された入力データＩＮを中間ノードＮ１０２に取り込み、パルス信号ＰＳが“０”の間は入力されたデータを保持する、といった動作を行う。このとき、パルス信号ＰＳのパルス幅を適切に調節することにより、回路の低消費電力化が可能となる。
【０００５】
図１０は、上記ＰＤ−Ｆ／Ｆを用いた論理回路の一例を示す回路図である。この論理回路は、上記図９に示すＰＤ−Ｆ／ＦをＮビット並列に配置したＮビットレジスタ（２０１−１−１〜２０１−Ｎ−１）を設けて、さらにこのＮビットレジスタを直列にＭ段接続したものである（２０１−１−１〜２０１−Ｎ−１，…，２０１−１−Ｍ〜２０１−Ｎ−Ｍ）。そして、クロック信号ＣＬＫに基づいて所望のパルス幅のパルス信号ＰＳを生成するパルス信号生成回路２０２が設けられている。パルス信号生成回路２０２から送出されるパルス信号ＰＳは、初段の各ＰＤ−Ｆ／Ｆに直接供給されると共に、２段目からＭ段目までの各ＰＤ−Ｆ／Ｆにはそれぞれパルスドライバ２０３−１〜２０３−Ｍ−１を通して供給されるようになっている。
【０００６】
図１１は、図１０に示した論理回路の一部分Ａを示す回路図である。上記論理回路の一部分Ａは、ＰＤ−Ｆ／Ｆ２０１−１−１と２０１−１−２が直列に接続された部分を示している。この２つのＰＤ−Ｆ／Ｆ２０１−１−１，２０１−１−２は、それぞれトランスファーゲート１０３−１，１０３−２とラッチ回路１０７−１，１０７−２で構成されている。ＰＤ−Ｆ／Ｆ２０１−１−１において、供給されるパルス信号をＰＳ１とし、その反転信号をＰＳ１（バー）とし、出力データをＯＵＴ１としている。また、ＰＤ−Ｆ／Ｆ２０１−１−２において、供給されるパルス信号をＰＳ２とし、その反転信号をＰＳ２（バー）とし、出力データをＯＵＴ２としている。
【０００７】
図１１に示す論理回路の動作を図１２および図１３に示すタイミングチャートを参照しつつ説明する。図１２において、Ｔ１はパルス信号ＰＳ１，ＰＳ２のパルス幅を表し、Ｔ２はパルス信号ＰＳ１とＰＳ２とのずれ時間（遅延時間）を表し、Ｔ３はトランスファーゲート１０３−１または１０３−２のゲート端子にパルス信号ＰＳ１またはＰＳ２が入力されてから出力が確定するまでの時間を表す。また、Ｔ４はトランスファーゲート１０３−１または１０３−２が導通している場合に、入力データＩＮまたは出力データ０ＵＴ１が変化してから、中間ノードＮ１０２−１またはＮ１０２−２の電位がラッチ回路１０７−１または１０７−２を構成する出力インバータのしきい値に達するまでにかかる時間を表す。
【０００８】
パルス信号ＰＳ１が“１”になると、入力ノードＮ１０１に準備されたデータＩＮがＰＤ−Ｆ／Ｆ２０１−１−１に取り込まれ、遅延時間Ｔ３の後にこのデータＩＮは出力ノードＮ１０４−１に到達して出力データＯＵＴ１として送出される。その後、ＰＤ−Ｆ／Ｆ２０１−１−２のトランスファーゲート１０３−２が導通状態になれば、ＰＤ−Ｆ／Ｆ２０１−１−２に取り込まれ、この取り込み後、さらに遅延時間Ｔ３経過後に出力ノードＮ１０４−２に到達して出力データＯＵＴ２として出力される。また、トランスファーゲート１０３−１がオンして次段のトランスファーゲート１０３−２がオフされるまでの時間は、パルス幅Ｔ１と前記遅延時間Ｔ２の和で表される。このようなパルス駆動を行うことにより、より少ない素子でのフリップフロップ回路の構成が可能となり、全体のクロックノードの負荷を削減でき、低消費電力化が可能となる。
【０００９】
【発明が解決しようとする課題】
しかしながら、上記従来の論理回路では、次のような問題点があった。
【００１０】
（ａ）図１２に示すように（Ｔ１＋Ｔ２）の期間が（Ｔ３＋Ｔ４）よりも短い場合には正常に動作するものの、図１３に示すように、（Ｔ３＋Ｔ４）よりも長い場合には入力ノードＮ１０１から出力ノードＮ１０４−２へデータの突き抜けが発生してしまう。
【００１１】
すなわち、（Ｔ１＋Ｔ２）＜（Ｔ３＋Ｔ４）であれば、図１２に示すように、パルス信号ＰＳ１が“１”に立ち上がったときにトランスファーゲート１０３−１にデータ（Ａ＋１）が取り込まれ、遅延時間Ｔ３経過後に「反転信号Ａ＋１（バー）」が出力データＯＵＴ１として送出される。この時、図１２ではパルス信号ＰＳ２が“１”であるので「反転信号Ａ＋１（バー）」は中間ノードＮ１０２−２に達するが、中間ノードＮ１０２−２の電位がラッチ回路１０７−２を構成する出力インバータのしきい値に達する前にまでに、パルス信号ＰＳ２が“０”に立ち下がっているので「反転信号Ａ＋１（バー）」はフリップフロップ回路２０１−１−２を通過することはない。また、「反転信号Ａ＋１（バー）」が出力データＯＵＴ１として送出された時に、既にパルス信号ＰＳ２が“０”に立ち下がっていれば、「反転信号Ａ＋１（バー）」は、トランスファーゲート１０３−２には取り込まれない。そして、トランスファーゲート１０３−２に既に取り込まれていたデータＡ（バー）の反転信号Ａが、遅延時間Ｔ３経過後にＯＵＴ２として出力される。この後、さらに、図示を省略した次のパルスＰＳ２が立上がってＰＳ２＝“１”，ＰＳ２（バー）＝“０”になれば、フリップフロップ回路２０１−１−２のトランスファーゲート１０３−２がオンし、データ「Ａ＋１（バー）」が取り込まれ、遅延時間Ｔ３経過後に「Ａ＋１（バー）」の反転信号「Ａ＋１」が出力データＯＵＴ２として２段目のフリップフロップ回路２０１−１−２の出力ノードＮ１０４−２に到達する。
【００１２】
ところが、図１３に示すように期間（Ｔ１＋Ｔ２）が（Ｔ３＋Ｔ４）よりも長い場合には、パルス信号ＰＳ１が“１”のときにフリップフロップ回路２０１−１−１に取り込まれたデータ（Ａ＋１）が、「反転信号Ａ＋１（バー）」として出力ノードＮ１０４−１に送出されるタイミングにおいて、パルス信号ＰＳ２が“１”であるので、「反転信号Ａ＋１（バー）」は続いてトランスファーゲート１０３−２に取り込まれる。そして期間（Ｔ１＋Ｔ２）が（Ｔ３＋Ｔ４）よりも長いので「反転信号Ａ＋１（バー）」が中間ノードＮ１０２−２に達し、更にこの中間ノードＮ１０２−２の電位がラッチ回路１０７−２を構成する出力インバータのしきい値に達したタイミングにおいて、パルス信号ＰＳ２はまだ“０”に立ち下がっていない。このため、「反転信号Ａ＋１（バー）」はラッチ回路１０７−２により更に反転されて「信号Ａ＋１」としてラッチ回路１０７−２を通過し、図１３に示すように、「信号Ａ＋１」が出力データＯＵＴ２として出力ノードＮ１０４−２に送出される。従って、期間（Ｔ１＋Ｔ２）が（Ｔ３＋Ｔ４）よりも長い場合には、「データの突き抜け現象」が発生する。
【００１３】
（ｂ）図１０に示すように、上記ＰＤ−Ｆ／Ｆを並列に多数個接続した場合に、ゲート負荷の増大によってパルス信号ＰＳの鈍りが生じ、データの取り込みが正常に行われない可能性がある。
【００１４】
（ｃ）パルス幅Ｔ１を小さく保つためには、パルスノードを十分に速くドライブできるドライバが必要であるが、図１０に示すＮビットレジスタのように複数（Ｎ）ビットまとめてパルス信号ＰＳをドライブする場合には、そのパルスドライバ２０３−１〜２０３−Ｍ−１のサイズがビット数（Ｎ）に比例して大きくなる。
【００１５】
本発明は、上述の如き従来の問題点を解決するためになされたもので、その目的は、シフトレジスタ，Ｎビットレジスタ、Ｎビットシフトレジスタ等の論理回路におけるデータ突き抜けの防止に有効かつ好適なフリップフロップ回路を提供することである。
【００１６】
本発明の他の目的は、データ突き抜けの発生を防ぐことができるシフトレジスタを提供することである。
【００１７】
本発明のさらに他の目的は、多数並列接続されたフリップフロップ回路を同時に駆動するためのパルスドライバやクロックドライバのドライブ能力の増大化への要求を適度に抑え、且つパルス信号の鈍りを防止することができるＮビットレジスタを提供することである。
【００１８】
本発明のさらに他の目的は、データ突き抜けの防止及びパルス信号の鈍り防止を可能にするＮビットシフトレジスタ等の論理回路を提供することである。
【００１９】
本発明のさらに他の目的は、データ突き抜けの発生を防ぐことができ、且つより有効的に、回路規模を小さくできるシフトレジスタを提供することである。
【００２０】
本発明のさらに他の目的は、データ突き抜けの防止及びパルス信号の鈍り防止を可能にし、且つ回路規模の縮小化が容易な論理回路を提供することである。
【００２１】
【課題を解決するための手段】
上記目的を達成するために、本発明の第１の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファーゲートと、トランスファーゲートの出力側に接続されたラッチ回路と、パルス信号を生成するローカルなパルス信号生成回路と少なくとも有するフリップフロップ回路であることである。このフリップフロップ回路は、さらにクロック信号を駆動するクロックドライバを有し、ローカルなパルス信号生成回路は、このクロックドライバの出力に基づきパルス信号を生成することが好ましい。
【００２２】
上記フリップフロップ回路において、所定のパルス信号に応じて動作するトランスファーゲートと、このトランスファーゲートの出力側に接続されたラッチ回路とから成る構成は従来のＰＤ−Ｆ／Ｆに相当する。つまり、本発明の第１の特徴は、この従来のＰＤ−Ｆ／Ｆに、さらにローカルなパルス信号生成回路（更に、好ましくはローカルなクロックドライバをも加えることになるが）を設けた構造に対応するといえる。この本発明のフリップフロップ回路を用いて例えばシフトレジスタを構成した場合は、以下の第２の特徴で述べるように、フリップフロップ回路間でのデータ突き抜けを起こりにくくすることができる。さらに、第３の特徴として後述するようにＮビットレジスタを構成した場合は、従来回路で発生していた、並列接続された多数のフリップフロップ回路が負荷となることによるパルス信号の鈍りを防止することができる。また同時に、多数のフリップフロップ回路を同時に駆動するためのクロックドライバのドライブ能力の増大化への要求を適度に抑えることができる。
【００２３】
本発明の第２の特徴はシフトレジスタに係る。すなわち本発明の第２の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファーゲート、トランスファーゲートの出力側に接続されたラッチ回路、クロック信号を駆動するクロックドライバおよびクロックドライバの出力に基づきパルス信号を生成するローカルなパルス信号生成回路とを備えたフリップフロップ回路を直列に複数段接続し、各段のフリップフロップ回路中のクロックドライバを最終段より初段へ向けて順次接続して、フリップフロップ回路の各段へのクロック信号の供給を最終段のフリップフロップ回路側から順次行うようにしたことにある。
【００２４】
この第２の特徴によれば、パルス信号が活性化されて入力データが所定のフリップフロップ回路に取り込まれてから、次段のフリップフロップ回路中のトランスファーゲートが遮断されるまでの時間がゲート遅延時間に比して短縮されるため、互いに連続した各段のフリップフロップ回路相互間のデータ突き抜けは発生しなくなる。
【００２５】
本発明の第３の特徴はＮビットレジスタに係る。すなわち本発明の第３の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファーゲート、トランスファーゲートの出力側に接続されたラッチ回路、クロック信号を駆動するクロックドライバおよびクロックドライバの出力に基づき前記パルス信号を生成するローカルなパルス信号生成回路とを備えたフリップフロップ回路をＮ（正の整数）ビット並列に配置し、各クロックドライバに共通のクロック信号を同時に供給したことにある。
【００２６】
この本発明の第３の特徴によれば、ローカルなパルス信号を各トランスファーゲートにそれぞれ直接与えることができる。これにより、従来のＰＤ−Ｆ／Ｆを並列に接続した場合において、問題となっていたゲート負荷の増大によるパルス信号の鈍りが防止される。さらに、多数のフリップフロップ回路を駆動する際のクロックドライバの負荷が分散されるため、クロックドライバのドライブ能力の増大化に対する要求を適度に抑えることができる。従って、クロックドライバのサイズを小さくすることができる。
【００２７】
本発明の第４の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファーゲート、トランスファーゲートの出力側に接続されたラッチ回路、クロック信号を駆動するクロックドライバ、およびクロックドライバの出力に基づきパルス信号を生成するローカルなパルス信号生成回路とを備えたフリップフロップ回路をＮビット並列に配置したＮビットレジスタを複数個（Ｍ個）用意し、このＮビットレジスタを直列に複数段（Ｍ段）接続したＮビットシフトレジスタに係わる。このＮビットシフトレジスタでは、各クロックドライバを最終段より初段へ向けてそれぞれ順次接続すると共に、最終段のＮビットレジスタを構成する各クロックドライバに共通のクロック信号を同時に供給して、各段のＮビットレジスタのフリップフロップ回路へのクロック信号供給を最終段のＮビットレジスタを構成するフリップフロップ回路側から順次行うようにしたことにある。
【００２８】
本発明の第４の特徴は、シフトレジスタをＮ個並列に配置したと考えることもできるが、第２および第３の特徴と同様に、パルス信号の鈍りを防止し、かつ、データ突き抜けを確実に防ぐことができる。しかもそれぞれのクロックドライバのドライブ能力は小さくて良いので、回路設計に際して、クロックドライバのドライブ能力の増大化への要求を適度に抑えることができる。このため、クロックドライバのサイズを小さくでき、回路規模（チップ占有面積）の大幅な縮小が可能となる。
【００２９】
本発明の第５の特徴はシフトレジスタに係る。すなわち本発明の第５の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファゲート、トランスファーゲートの出力側に接続されたラッチ回路およびパルス信号を駆動するパルスドライバとを備えたフリップフロップ回路（第２のフリップフロップ回路）を直列にＭ−１段接続し、そのＭ段目に第１の特徴で述べたフリップフロップ回路（第１のフリップフロップ回路）を接続したシフトレジスタであって、各パルスドライバをＭ−１段目より初段へ向けて順次接続し、Ｍ段目のフリップフロップ回路（第１のフリップフロップ回路）のローカルなパルス信号生成回路より生成されたパルス信号を前記Ｍ−１段目以降のパルスドライバへ供給したことにある。なお、Ｍは正の整数である。
【００３０】
本発明の第５の特徴によれば、上記第２の特徴と同様に、データ突き抜け現象を確実に防げるだけでなく、ローカルなパルス信号生成回路を最終段に備えるだけで済むため、半導体チップ上での回路占有面積の小規模化が、より有効かつ確実に可能となる。
【００３１】
本発明の第６の特徴は論理回路に係る。すなわち本発明の第６の特徴は、所定のパルス幅を持つパルス信号に応じて入力データをオン／オフするトランスファゲート、トランスファーゲートの出力側に接続されたラッチ回路、およびパルス信号を駆動するパルスドライバとを備えたフリップフロップ回路（第２のフリップフロップ回路）を直列にＭ−１段接続し、そのＭ段目に本発明の第１の特徴のフリップフロップ回路（第１のフリップフロップ回路）を接続したシフトレジスタをＮビット並列に配置して構成されるＮビットシフトレジスタである。このＮビットシフトレジスタにおいては各々のパルスドライバはそれぞれ、Ｍ−１段目より初段へ向けて順次接続され、Ｍ段目のフリップフロップ回路（第１のフリップフロップ回路）のローカルなパルス信号生成回路より生成されたパルス信号をＭ−１段目以降のパルスドライバへ供給している。本発明の第６の特徴は第５の特徴のシフトレジスタをＮ個並列に接続した論理回路と考えることができる。なお、ＭおよびＮは正の整数である。
【００３２】
本発明の第６の特徴によれば、上記第４の特徴と同様に、データ突き抜けの防止、パルス信号の鈍りの防止、及びクロックドライバのドライブ能力の抑制が可能になる。加えて、ローカルなパルス信号生成回路を最終段に備えるだけで済むため回路を大幅に小規模化することができる。
【００３３】
【発明の実施の形態】
以下図面を参照し本発明の実施の形態を説明する。以下の図面においては同一または類似の部分には、同一または類似の符号を付している。
【００３４】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係るシフトレジスタの構成図である。このシフトレジスタは、前述した本発明の第１の特徴に係るフリップフロップ回路（以下において「本発明のフリップフロップ回路」と略記する）を直列にＭ段接続して構成されている。すなわち、本発明の第１の実施の形態のシフトレジスタの１段目のフリップフロップ回路１−１は、パルス信号ＰＳに応じて入力データＩＮをオン（導通）／オフ（遮断）するトランスファゲート１ａ−１、その出力側に接続されたラッチ回路１ｂ−１、ローカルなパルス信号生成回路１ｃ−１とクロックドライバ１ｄ−１とから構成されている。ラッチ回路１ｂ−１は出力インバータとこの出力インバータに逆並列接続された帰還インバータとの２つのインバータから構成されている。帰還インバータの入力側は出力ノードに、またその出力側はトランスファゲート１ａ−１に接続されている。ローカルなパルス信号生成回路１ｃ−１は、クロック信号ＣＬＫに基づいて所望のパルス信号ＰＳを生成し、クロックドライバ１ｄ−１は、クロック信号ＣＬＫを駆動してローカルなパルス信号生成回路１ｃ−１へ供給する機能を有する。帰還インバータは、パルス信号ＰＳが“０”のときにのみ動作するようなクロックドインバータでもよい。
【００３５】
２段目以降のフリップフロップ回路１−２，１−３，…，１−Ｍも同様の構成を成し、それぞれトランスファゲート１ａ−２，１ａ−３，…，１ａ−Ｍと、ラッチ回路１ｂ−２，１ｂ−３，…，１ｂ−Ｍと、ローカルなパルス信号生成回路１ｃ−２，１ｃ−３，…，１ｃ−Ｍと、クロックドライバ１ｄ−２，１ｄ−３，…，１ｄ−Ｍとでそれぞれ、構成されている。各、ラッチ回路１ｂ−２，１ｂ−３，…，１ｂ−Ｍは出力インバータとこの出力インバータに逆並列接続された帰還インバータとの２つのインバータから構成されている。上述したように、これらの帰還インバータは、パルス信号ＰＳが“０”のときにのみ動作するクロックドインバータでもよい。なお、各パルス信号生成回路１ｃ−１〜１ｃ−Ｍから出力される各パルス信号は同一のパルス幅を有するものである。
【００３６】
このように、本発明の第１の実施の形態に係るシフトレジスタを構成する各フリップフロップ回路は、従来型のＰＤ−Ｆ／Ｆに対応するトランスファーゲートと、このトランスファーゲートの出力側に接続されたラッチ回路とからなる回路にローカルなパルス信号生成回路とローカルなクロックドライバとをそれぞれ設けた構成である点に特徴がある。このフリップフロップ回路の各々は、ローカルなパルス信号生成回路から出力されるパルス信号が“１”のときに、入力ノードに準備されたデータを取り込み、所定の遅延時間Ｔ３（後述する図４参照）の後に出力ノードに反転したデータを送出し、パルス信号が“０”の間は、入力されたデータを保持する、という動作を行う機能をもつ。
【００３７】
本発明の第１の実施の形態のシフトレジスタは、上述のようなフリップフロップ回路をＭ段直列接続し、その各段のフリップフロップ回路に設けられたクロックドライバを最終段より初段へ向けて、順次互いに接続している。この回路構成を用いて、各フリップフロップ回路１−１，１−２，１−３，…，１−Ｍへのクロック信号ＣＬＫの供給を最終段のフリップフロップ回路１−Ｍ側から順次行うようにしている。
【００３８】
図２は、図１に示したシフトレジスタの一部分Ｂを示す回路図である。即ち、図２に示す部分Ｂは、本発明の第１の実施の形態に係わるシフトレジスタのフリップフロップ回路１−１とフリップフロップ回路１−２が直列に接続された部分を示している。フリップフロップ回路１−１において、トランスファーゲート１ａ−１は、ＣＭＯＳ型トランスファーゲートであり、ローカルなパルス信号生成回路１ｃ−１から出力されるパルス信号をＰＳ１と、その反転信号のＰＳ１（バー）によって動作し、ＣＭＯＳ型トランスファーゲート１ａ−１の出力側にラッチ回路を接続し、ラッチ回路の出力データをＯＵＴ１としている。反転信号ＰＳ１（バー）は図３に示すようにローカルなパルス信号生成回路１ｃ−１にインバータ１ｅ−１を接続し信号ＰＳ１を反転すればよい。反転信号ＰＳ１（バー）生成用の「他のローカルなパルス信号生成回路」を設けても良いが、この場合は構成が複雑になる。フリップフロップ回路１−２において、ローカルなパルス信号生成回路１ｃ−２から出力されるパルス信号をＰＳ２とし、その反転信号をＰＳ２（バー）とし、出力データをＯＵＴ２としている。反転信号ＰＳ２（バー）も図３と同様にローカルなパルス信号生成回路１ｃ−２にインバータを接続し、信号ＰＳ２を反転すればよい。さらに、図２中のＮ１は、データＩＮが準備される入力ノードであり、Ｎ２は、フリップフロップ回路１−１のトランスファーゲート１ａ−１とラッチ回路１ｂ−１との接続点を示す中間ノードであり、Ｎ３は、ラッチ回路１ｂ−１の出力端、つまりフリップフロップ回路１−１の出力ノードを示す。この出力ノードＮ３よりフリップフロップ回路１−１の出力データＯＵＴ１が出力される。
【００３９】
また、図２中のＮ４は、フリップフロップ回路１−２のトランスファーゲート１ａ−２とラッチ回路１ｂ−２との接続点を示す中間ノードであり、Ｎ５は、ラッチ回路１ｂ−２の出力端、つまりフリップフロップ回路１−２の出力ノードを示す。この出力ノードＮ５よりフリップフロップ回路１−２の出力データＯＵＴ２が出力される。
【００４０】
上述のように構成されるシフトレジスタでは、入力ノードＮ１に入力されたデータＩＮがパルス信号生成回路１ｃ−１〜１ｃ−Ｍから出力されるパルス信号に同期してＭ段のフリップフロップ回路を順次移動していく。その際に、各段のフリップフロップ回路がどのようにパルス駆動されるのかを、図２に示す１段目及び２段目のフリップフロップ回路１−１，１−２を例にとって図４のタイミングチャートを参照しつつ説明する。
【００４１】
フリップフロップ回路１−１，１−２を入力データＩＮまたは出力データ０ＵＴ１が通過するためには、入力データＩＮまたは出力データ０ＵＴ１が変化してから、中間ノードＮ２またはＮ４の電位がラッチ回路１ｂ−１または１ｂ−２を構成する出力インバータのしきい値を越えるまでにかかる時間Ｔ４を考慮する必要がある。即ち、入力データＩＮまたは出力データ０ＵＴ１が中間ノードＮ２またはＮ４に到達しただけでは不十分で、中間ノードＮ２またはＮ４の電位が出力インバータのしきい値に達するのに要する時間Ｔ４の間において、トランスファーゲート１ａ−１または１ａ−２が導通している必要がある。
【００４２】
まず、時刻ｔ１において、２段目のフリップフロップ回路１−２のパルス信号ＰＳ２が立上がってＰＳ２＝“１”，ＰＳ２（バー）＝“０”になると、フリップフロップ回路１−２のトランスファーゲート１ａ−２がオンする。このとき、前段のフリップフロップ回路１−１の出力データＯＵＴ１が仮に「Ａ（バー）」であったとすると、この時刻ｔ１のタイミングでデータ「Ａ（バー）」は２段目のフリップフロップ回路１−２の中間ノードＮ４に取り込まれ、中間ノードＮ４の電位が出力インバータのしきい値に達すれば、データ「Ａ（バー）」は反転処理される。そして、時刻ｔ１から遅延時間Ｔ３経過後の時刻ｔ２に、フリップフロップ回路１−２の出力データＯＵＴ２として、「Ａ（バー）」の反転信号「Ａ」が出力ノードＮ５に到達する。
【００４３】
時刻ｔ１より遅延時間Ｔ２経過した時刻ｔ３には、パルスＰＳ１が立上がってＰＳ１＝“１”，ＰＳ１（バー）＝“０”になる。すなわち、本発明の第１の実施の形態では、クロック信号ＣＬＫの供給を最終段のフリップフロップ回路１−Ｍ側から順次行うようにしているため、前段のパルス信号に先立って後段のパルス信号が立ち上がることになる。その前段と後段のパルス信号の立上がりのずれが遅延時間Ｔ２になる。
【００４４】
パルスＰＳ１が立上がってＰＳ１＝“１”，ＰＳ１（バー）＝“０”になると、フリップフロップ回路１−１のトランスファーゲート１ａ−１がオンする。このとき、フリップフロップ回路１−１の入力データＩＮが仮に図４に示すように「Ａ＋１」であったとすると、この時刻ｔ３のタイミングでデータ「Ａ＋１」は１段目のフリップフロップ回路１−１の中間ノードＮ２に取り込まれ、中間ノードＮ２の電位が出力インバータのしきい値に達すれば、データ「Ａ＋１」は反転処理される。そして、時刻ｔ３から遅延時間Ｔ３経過後の時刻ｔ４に、この取り込まれた「Ａ＋１」の反転信号「Ａ＋１（バー）」がフリップフロップ回路１−１の出力データＯＵＴ１として出力ノードＮ３に到達する。
【００４５】
また、この時刻ｔ４においては、２段目のフリップフロップ回路１−２のトランスファーゲート１ａ−２は遮断状態であるので、データ「Ａ＋１（バー）」は２段目のフリップフロップ回路を突き抜けることはない。また、たとえ「反転信号Ａ＋１（バー）」が出力ノードＮ３に送出されるタイミングにおいて、パルス信号ＰＳ２が“１”であり、「反転信号Ａ＋１（バー）」が続いてトランスファーゲート１ａ−２に取り込まれたとしても、「反転信号Ａ＋１（バー）」が中間ノードＮ４に達し、更にこの中間ノードＮ４の電位がラッチ回路１ｂ−２を構成する出力インバータのしきい値に達すべきタイミング（時刻ｔ５）において、既にパルス信号ＰＳ２が“０”に立ち下がっていれば、データ「Ａ＋１（バー）」は２段目のフリップフロップ回路を突き抜けることはない。
【００４６】
そして、この後は、さらに図示を省略した次のパルスＰＳ２が立上がってＰＳ２＝“１”，ＰＳ２（バー）＝“０”になると、フリップフロップ回路１−２のトランスファーゲート１ａ−２がオンし、データ「Ａ＋１（バー）」が取り込まれ、遅延時間Ｔ３経過後に「Ａ＋１（バー）」の反転信号「Ａ＋１」が出力データＯＵＴ２として２段目のフリップフロップ回路１−２の出力ノードＮ５に到達する。
【００４７】
このように、クロック信号ＣＬＫをフリップフロップ回路１−２からフリップフロップ回路１−１の順に供給しているため、パルス信号ＰＳ１が“１”になってデータＩＮが取り込まれてから、フリップフロップ回路１−２中のトランスファーゲートが遮断されるまでの時間（仮に時間Ｚとする）が従来例の（Ｔ１＋Ｔ２）から（Ｔ１−Ｔ２）に短縮される。これにより、時間Ｚを（Ｔ３＋Ｔ４）よりも常に短くすることが可能となり、入力ノードＮ１から出力ノードＮ５へのデータ突き抜けを確実に防ぐことができる。
【００４８】
本発明の第１の実施の形態の説明における時間をまとめると以下のようになる。即ち、図４中のＴ１はパルス信号ＰＳ１，ＰＳ２のパルス幅を表し、Ｔ２はパルス信号ＰＳ１とＰＳ２とのずれ時間を表す。Ｔ３はトランスファーゲート１ａ−１または１ａ−２のゲート端子にパルス信号ＰＳ１またはＰＳ２が入力されてから出力が確定するまでの時間を表す。また、Ｔ４はトランスファーゲート１ａ−１または１ａ−２が導通している場合に、入力データＩＮまたは出力データＯＵＴ１が変化してから、中間ノードＮ２またはＮ４の電位が出力インバータのしきい値に達するまでにかかる時間を表す。
【００４９】
（第２の実施の形態）
図５は、本発明の第２の実施の形態に係るＮビットレジスタの構成図である。このＮビットレジスタは、本発明の第１の実施の形態に係るシフトレジスタに用いたフリップフロップ回路と同じ「本発明のフリップフロップ回路」をＮ（正の整数）ビット並列に配置し、その各クロックドライバに共通のクロック信号ＣＬＫを供給したものである。すなわち、１ビット目のフリップフロップ回路１−１は、既に説明した図１のフリップフロップ回路１−１と同じものであり、２ビット目以降のフリップフロップ回路２−１〜Ｎ−１も同様の構成を成している。つまり、これらのフリップフロップ回路２−１〜Ｎ−１はそれぞれトランスファゲート２ａ−１〜Ｎａ−１と、ラッチ回路２ｂ−１〜Ｎｂ−１と、ローカルなパルス信号生成回路２ｃ−１〜Ｎｃ−１と、クロックドライバ２ｄ−１〜Ｎｄ−１とで構成されている。
【００５０】
上述のように構成されるＮビットレジスタでは、ＮビットのデータＩＮ−１，ＩＮ−２〜ＩＮ−Ｎが、フリップフロップ回路１−１〜Ｎ−１の各々の入力ノードにそれぞれ供給される。また、各クロックドライバ１ｄ−１〜Ｎｄ−１には、クロック信号ＣＬＫが共通して供給される。各ローカルなパルス信号生成回路１ｃ−１〜Ｎｃ−１は、各クロックドライバ１ｄ−１〜Ｎｄ−１の出力に基づいて所望のパルス信号ＰＳ−１〜ＰＳ−Ｎを生成する。このパルス信号ＰＳ−１〜ＰＳ−Ｎは、ローカルなパルス信号生成回路１ｃ−１〜Ｎｃ−１によって生成されたものであるため、鈍ることはなく確実に“１”／“０”に設定される。
【００５１】
パルス信号ＰＳ−１〜ＰＳ−Ｎが“１”になると、フリップフロップ回路１−１〜Ｎ−１の各々のトランスファーゲート１ａ−１〜Ｎａ−１がオンし、データＩＮ−１，ＩＮ−２〜ＩＮ−Ｎを同時に取り込む。このデータは前述した所定の遅延時間Ｔ３の後に各出力ノードに到達し、出力データＯＵＴ−１〜ＯＵＴ−Ｎとして同時に送出され、パルス信号ＰＳ−１〜ＰＳ−Ｎが“０”の間において保持される。
【００５２】
このように本発明の第２の実施の形態に係るＮビットレジスタでは、各ローカルなパルス信号生成回路１ｃ−１〜Ｎｃ−１によって各フリップフロップ回路１−１〜Ｎ−１にそれぞれローカルなパルス信号ＰＳ−１〜ＰＳ−Ｎを生成するようにしたので、ローカルなパルス信号ＰＳ−１〜ＰＳ−Ｎを各トランスファーゲート１ａ−１〜Ｎａ−１にそれぞれ直接与えることができる。これにより、ＰＤ−Ｆ／Ｆを並列に多数接続した場合において、従来回路で発生していた、ゲート負荷の増大によるパルス信号の鈍りを防止することができ、回路の誤動作の発生を防ぐことが可能になる。さらに、各段のフリップフロップ回路を駆動する際の負荷が分散されるため、クロックドライバのドライブ能力の増大化への要請を適度に抑えることができる。
【００５３】
（第３の実施の形態）
図６は、本発明の第３の実施の形態に係る論理回路の構成図である。この論理回路は、上記第２の実施の形態において（図５参照）説明したＮビットレジスタを複数個（Ｍ個）用意し、これを直列にＭ段接続した「Ｎビットシフトレジスタ」として構成されている。したがって第１と第２の実施の形態を組み合わせた論理回路に対応すると考えることも可能である。その１ビット〜Ｎビットにそれぞれ対応したシフトレジスタの各転送ラインにおいて、各クロックドライバ１ｄ−１〜１ｄ−Ｍ，２ｄ−１〜２ｄ−Ｍ，…，Ｎｄ−１〜Ｎｄ−Ｍは、それぞれ最終段より初段へ向けてそれぞれ順次接続されている。そして、最終段の各クロックドライバ１ｄ−Ｍ，２ｄ−Ｍ，…，Ｎｄ−Ｍに共通のクロック信号ＣＬＫを供給して、各転送ラインの各フリップフロップ回路へのクロック信号ＣＬＫの供給を最終段のフリップフロップ回路側から順次行うようにしている。
【００５４】
ここで、１段目のＮビットレジスタは、図５に示したＮビットレジスタと同じであり、フリップフロップ回路１−１，２−１，…，Ｎ−１から構成されている。このフリップフロップ回路１−１，２−１，…，Ｎ−１は、それぞれトランスファゲート１ａ−１，２ａ−１，Ｎａ−１と、ラッチ回路１ｂ−１，２ｂ−１，…，Ｎｂ−１と、パルス信号生成回路１ｃ−１，２ｃ−１，…，Ｎｃ−１と、クロックドライバ１ｄ−１，２ｄ−１，…，Ｎｄ−１とで構成されている。２段目以降のＮビットレジスタも同様の構成を成している。すなわち、図６中のフリップフロップ回路１−２，２−２，…，Ｎ−２は、２段目のＮビットレジスタであり、それぞれトランスファゲート１ａ−２，２ａ−２，Ｎａ−２と、ラッチ回路１ｂ−２，２ｂ−２，…，Ｎｂ−２と、ローカルなパルス信号生成回路１ｃ−２，２ｃ−２，…，Ｎｃ−２と、クロックドライバ１ｄ−２，２ｄ−２，…，Ｎｄ−２とで構成されている。また、図６中のフリップフロップ回路１−３，２−３，…，Ｎ−３は、３段目のＮビットレジスタであり、それぞれトランスファゲート１ａ−３，２ａ−３，Ｎａ−３と、ラッチ回路１ｂ−３，２ｂ−３，…，Ｎｂ−３と、ローカルなパルス信号生成回路１ｃ−３，２ｃ−３，…，Ｎｃ−３と、クロックドライバ１ｄ−３，２ｄ−３，…，Ｎｄ−３とで構成されている。
【００５５】
そして、図６中のフリップフロップ回路１−Ｍ，２−Ｍ，…，Ｎ−Ｍは、Ｍ段目（最終段）のＮビットレジスタであり、それぞれトランスファゲート１ａ−Ｍ，２ａ−Ｍ，Ｎａ−Ｍと、ラッチ回路１ｂ−Ｍ，２ｂ−Ｍ，…，Ｎｂ−Ｍと、ローカルなパルス信号生成回路１ｃ−Ｍ，２ｃ−Ｍ，…，Ｎｃ−Ｍと、クロックドライバ１ｄ−Ｍ，２ｄ−Ｍ，…，Ｎｄ−Ｍとで構成されている。
【００５６】
このＮビットシフトレジスタによれば、ＮビットのデータＩＮ−１〜ＩＮ−Ｎが、フリップフロップ回路１−１〜Ｎ−１の各々の入力ノードにそれぞれ供給される。一方、最終段のクロックドライバ１ｄ−Ｍ〜Ｎｄ−Ｍには、クロック信号ＣＬＫが共通して供給される。これによって、第１の実施の形態と同様に、パルス駆動により、ＮビットのデータＩＮ〜ＩＮ−ＮがそれぞれＭ段の各フリップフロップ回路を順次移動し、出力データＯＵＴ−１，ＯＵＴ−２，…，ＯＵＴ−Ｎとして同時に出力される。
【００５７】
このような論理回路では、従来技術において問題となっていたデータ突き抜けを確実に防ぐことができ、且つパルス信号の鈍りを防止することができる。また、クロックドライバのドライブ能力の増大化への要求を適度に抑えることができるため、そのサイズを小さくすることができる。
【００５８】
（第４の実施の形態）
図７は、本発明の第４の実施の形態に係るシフトレジスタの構成図である。前述した本発明の第１の実施の形態に係るシフトレジスタでは、各段のフリップフロップ回路にそれぞれローカルなパルス信号生成回路を設け、この各ローカルなパルス信号生成回路にクロック信号ＣＬＫを最終段側から伝達するようにしたことを特徴としていた。これに対して本発明の第４の実施の形態では、第１〜第３の実施の形態で用いた「本発明のフリップフロップ回路」（以下において「第１のフリプフロップ回路」という）とは異なる第２のフリップフロップ回路を更に用いている。即ち、最終段のフリップフロップ回路のみに第１のフリップフロップ回路を配置し、この第１のフリップフロップ回路中のローカルなパルス信号生成回路１０−１ｃ−Ｍの出力を前段の第２のフリップフロップ回路に伝達するようにしたものである。より具体的に説明すると、本発明の第４の実施の形態に係るシフトレジスタは、従来型のＰＤ−Ｆ／Ｆにパルスドライバを備えて構成された構造に対応する第２のフリップフロップ回路がＭ−１段直列に接続され、そのＭ段目（最終段）に第１のフリップフロップ回路が接続されている。
【００５９】
図７において、１段目からＭ−１段目までの第２のフリップフロップ回路１０−１−１，１０−１−２〜１０−１−Ｍ−１は、同一の構成となっている。例えば１段目の第２のフリップフロップ回路１０−１−１は、トランスファゲート１０−１ａ−１と、ラッチ回路１０−１ｂ−１とで構成された従来型のＰＤ−Ｆ／Ｆに加えて、後段から伝達されてきたパルス信号をトランスファゲート１０−１ａ−１に供給するパルスドライバ１０−１ｄ−１を設けた構成となっている。トランスファゲート１０−１ａ−１にはパルスドライバ１０−１ｄ−１からのパルス信号と同時に反転信号が加えられるが、この反転信号は、パルスドライバ１０−１ｄ−１の出力側に図３に示したものと同様のインバータを接続し、ローカルなパルス信号生成回路１０−１ｃ−Ｍから伝達されたパルス信号を反転すればよい。
【００６０】
同様に、２段目以降の第２のフリップフロップ回路１０−１−２〜１０−１−Ｍ−１も第２のフリップフロップ回路１０−１−１と同一の構成を成し、それぞれトランスファゲート１０−１ａ−２〜１０−１ａ−Ｍ−１と、ラッチ回路１０−１ｂ−２〜１０−１ｂ−Ｍ−１と、パルスドライバ１０−１ｄ−２〜１０−１ｄ−Ｍ−１とで構成されている。そして、パルスドライバ１０−１ｄ−Ｍ−１〜１０−１ｄ−１は、それぞれＭ−１段目より初段へ向けて順次接続されている。
【００６１】
また、Ｍ段目の第１のフリップフロップ回路１０−１−Ｍは、既に図１等で示した「本発明のフリップフロップ回路」と同様の構成を成し、トランスファゲート１０−１ａ−Ｍと、ラッチ回路１０−１ｂ−Ｍとからなる従来型のＰＤ−Ｆ／Ｆに加えて、ローカルなパルス信号生成回路１０−１ｃ−Ｍと、クロックドライバ１０−１ｄ−Ｍを設けたものである。ローカルなパルス信号生成回路１０−１ｃは、Ｍ−１段目以降のパルスドライバ１０−１ｄ−Ｍ−１〜１０−１ｄ−１へ順次パルス信号を供給するために設けられ、クロックドライバ１０−１ｄ−Ｍは、このローカルなパルス信号生成回路１０−１ｃ−Ｍにパルス信号生成のためのクロック信号ＣＬＫを供給する。なお、ローカルなパルス信号生成回路１０−１ｃ−Ｍの出力側にインバータを接続し、このインバータの出力側に他の複数のパルスドライバをそれぞれＭ−１段目より初段へ向けて順次接続して、各段のトランスファーゲートに反転信号をそれぞれ供給するようにしても良い。「反転信号生成用の他のローカルなパルス信号生成回路」をＭ段目のフリップフロップ回路１０−１−Ｍにさらに設けても良いが、この場合は構成が複雑になる。
【００６２】
このような構成により、最終段（Ｍ段）に配置された第１のフリップフロップ回路１０−１−Ｍ中のローカルなパルス信号生成回路１０−ｃより生成されたパルス信号が、Ｍ−１段目から初段の第２のフリップフロップ回路１０−１−Ｍ−１〜１０−１−１へ向けて順次供給される。そして、入力ノードＮ１に準備されたデータＩＮが、パルス信号に同期して初段からＭ段のフリップフロップ回路１０−１−１〜１０−１−Ｍへ順次移動していく。その際のパルス駆動動作は、図４のタイミングチャートを用いて説明した本発明の第１の実施の形態の駆動動作と同様である。
【００６３】
本発明の第４の実施の形態では、上記第１の実施の形態と同様に、データの突き抜けを確実に防止することができるだけでなく、ローカルなパルス信号生成回路は最終段に備えるだけで済むため、回路を小規模化することができる。ローカルなパルス信号生成回路の具体的な構成にも依存することではあるが、シフトレジスタの専有面積を第１の実施の形態に比して半分以下にすることが可能である。
【００６４】
（第５の実施の形態）
図８は、本発明の第５の実施の形態に係る論理回路の構成図である。図８に示す論理回路は、第４の実施の形態における図７に示したシフトレジスタを並列にＮビット接続したＮビットシフトレジスタとして構成されている。その１ビット〜Ｎビットにそれぞれ対応した各転送ラインにおいて、上記図７に示したシフトレジスタが並列に配置されている。
【００６５】
１ビット目の転送ラインは、図７に示すシフトレジスタと同じであり、２ビット目以降の転送ラインも同様の構成である。すなわち、図８中の第２のフリップフロップ回路１０−２−１，１０−２−２，…，１０−２−Ｍ−１は、２段目のシフトレジスタのＭ−１段までを構成し、それぞれトランスファゲート１０−２ａ−１，１０−２ａ−２，…，１０−２ａ−Ｍ−１と、ラッチ回路１０−２ｂ−１，１０−２ｂ−２，…，１０−２ｂ−Ｍ−１と、パルスドライバ１０−２ｄ−１，１０−２ｄ−２，…，１０−２ｄ−Ｍ−１とで構成されている。また、図８中の第２のフリップフロップ回路１０−Ｎ−１，１０−Ｎ−２，…，１０−Ｎ−Ｍ−１は、Ｎビット目のシフトレジスタのＭ−１段までを構成し、それぞれトランスファゲート１０−Ｎａ−１，１０−Ｎａ−２，…，１０−Ｎａ−Ｍ−１と、ラッチ回路１０−Ｎｂ−１，１０−Ｎｂ−２，…，１０−Ｎｂ−Ｍ−１と、パルスドライバ１０−Ｎｄ−１，１０−Ｎｄ−２，…，１０−Ｎｄ−Ｍ−１とで構成されている。図８中の第１のフリップフロップ回路１０−１−Ｍ，１０−２−Ｍ，…，１０−Ｎ−Ｍは、各ビットのシフトレジスタの最終段を構成し、それぞれトランスファゲート１０−１ａ−Ｍ，１０−２ａ−Ｍ，…，１０−Ｎａ−Ｍと、ラッチ回路１０−１ｂ−Ｍ，１０−２ｂ−Ｍ，…，１０−Ｎｂ−Ｍと、ローカルなパルス信号生成回路１０−１ｃ−Ｍ，１０−２ｃ−Ｍ，…，１０−Ｎｃ−Ｍと、クロックドライバ１０−１ｄ−Ｍ，１０−２ｄ−Ｍ，…，１０−Ｎｄ−Ｍとで構成されている。
【００６６】
そして、最終段の各クロックドライバ１０−１ｄ−Ｍ，１０−２ｄ−Ｍ，…，１０−Ｎｄ−Ｍに共通のクロック信号ＣＬＫが供給され、各第２のフリップフロップ回路へのパルス信号の供給を最終段に位置する第１のフリップフロップ回路１０−１−Ｍ〜１０−Ｎ−Ｍ中のローカルなパルス信号生成回路１０−１ｃ−Ｍ〜１０−Ｎｃ−Ｍより行うようになっている。
【００６７】
このＮビットシフトレジスタによれば、ＮビットのデータＩＮ−１〜ＩＮ−Ｎが、第２のフリップフロップ回路１０−１−１〜１０−Ｎ−１の各々の入力ノードにそれぞれ供給される。一方、最終段のクロックドライバ１０−１ｄ−Ｍ〜１０−Ｎｄ−Ｍには、クロック信号ＣＬＫが共通して供給される。これによって、前述したパルス駆動により、ＮビットのデータＩＮ−１〜ＩＮ−ＮがそれぞれＭ段の各フリップフロップ回路を順次移動し、出力データＯＵＴ−１，ＯＵＴ−２，…，ＯＵＴ−Ｎとして同時に出力される。
【００６８】
このような論理回路では、前記したデータ突き抜けを確実に防ぐことができ、且つパルス信号の鈍りを防止することができる。さらにクロックドライバの小型化を可能とし、回路を大幅に小規模化することができる。
【００６９】
【発明の効果】
本発明によれば、データ突き抜けの発生が防止されたシフトレジスタ，Ｎビットレジスタ等の構成に好適なフリップフロップ回路を提供することができる。
【００７０】
即ち、このフリップフロップ回路を多数直列接続することにより、データ突き抜けを簡単かつ有効に防ぐことができるシフトレジスタを提供することができる。
【００７１】
また、本発明によれば、多数のフリップフロップ回路を有したＮビットレジスタにおいて、各段のフリップフロップ回路を駆動するためのクロックドライバのドライブ能力の増大化への要求を適度に抑えることが出来るため、上述したデータ突き抜けの防止という効果に加え、クロックドライバの小型化を図り、且つパルス信号の鈍りを防止することができる。
【００７２】
さらに、本発明によれば、データ突き抜け防止という効果に加え、パルス信号の鈍り防止を可能にしたＮビットシフトレジスタ等の論理回路を提供することができる。この論理回路においても、過大なドライブ能力は必要でないのでクロックドライバの小型化が可能となる。
【００７３】
なお、回路規模の縮小化およびＬＳＩチップの高集積密度化に関しては、最終段のフリップフロップ回路のみにローカルなパルス信号生成回路を配置することにより、その効果はより顕著となる。即ち、最終段のフリップフロップ回路のみにローカルなパルス信号生成回路を配置した回路構成により、データ突き抜けの発生を防ぐと同時に回路規模も小さくできるシフトレジスタを提供することができる。
【００７４】
同様に、Ｎビットシフトレジスタ等の論理回路においても、並列配置された各シフトレシスタの最終段のフリップフロップ回路のみにローカルなパルス信号生成回路を配置することにより、前述したデータ突き抜けの防止及びパルス信号の鈍り防止という効果に加え、さらなる回路規模の縮小と高集積密度化が可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るシフトレジスタの構成図である。
【図２】図１に示したシフトレジスタの一部分Ｂを示す回路図である。
【図３】本発明の第１の実施の形態に係るシフトレジスタを構成するフリップフロップ回路の、より具体的な構成を示す図である。
【図４】本発明の第１の実施の形態に係るシフトレジスタのタイミングチャートである。
【図５】本発明の第２の実施の形態に係るＮビットレジスタの構成図である。
【図６】本発明の第３の実施の形態に係る論理回路の構成図である。
【図７】本発明の第４の実施の形態に係るシフトレジスタの構成図である。
【図８】本発明の第５の実施の形態に係る論理回路の構成図である。
【図９】従来のＰＤ−Ｆ／Ｆ回路の構成を示す回路図である。
【図１０】従来のＰＤ−Ｆ／Ｆ回路を用いた論理回路の一例を示す回路図である。
【図１１】図１０に示した従来の論理回路の一部分Ａを示す回路図である。
【図１２】図１１に示す回路のタイミングチャートである。
【図１３】図１１に示す回路におけるデータの突き抜け現象を示すタイミングチャートである。
【符号の説明】
１−１〜１−Ｍ，２−１〜２−Ｍ，…，Ｎ−１〜Ｎ−Ｍ  フリップフロップ回路
１０−１−Ｍ〜１０−Ｎ−Ｍ  第１のフリップフロップ回路
１０−１−１〜１０−１−Ｍ−１，１０−２−１〜１０−２−Ｍ−１，…，１０−Ｎ−１〜１０−Ｎ−Ｍ−１  第２のフリップフロップ回路
１ａ−１〜１ａ−Ｍ，２ａ−１〜２ａ−Ｍ，…，Ｎａ−１〜Ｎａ−Ｍ  トランスファーゲート
１ｂ−１〜１ｂ−Ｍ，２ｂ−１〜２ｂ−Ｍ，…，Ｎｂ−１〜Ｎｂ−Ｍ  ラッチ回路
１ｃ−１〜１ｃ−Ｍ，２ｃ−１〜２ｃ−Ｍ，…，Ｎｃ−１〜Ｎｃ−Ｍ  パルス信号生成回路
１ｄ−１〜１ｄ−Ｍ，２ｄ−１〜２ｄ−Ｍ，…，Ｎｄ−１〜Ｎｄ−Ｍ  クロックドライバ
１０−１ｄ−１〜１０−１ｄ−Ｍ−１，１０−２ｄ−１〜１０−２ｄ−Ｍ−１，…，１０−Ｎｄ−１〜１０−Ｎｄ−Ｍ−１  パルスドライバ
１ｅ−１  インバータ
【図１】
0003564275.tif 000002
【図２】
0003564275.tif 000003
【図３】
0003564275.tif 000004
【図４】
0003564275.tif 000005
【図５】
0003564275.tif 000006
【図６】
0003564275.tif 000007
【図７】
0003564275.tif 000008
【図８】
0003564275.tif 000009
【図９】
0003564275.tif 000010
【図１０】
0003564275.tif 000011
【図１１】
0003564275.tif 000012
【図１２】
0003564275.tif 000013
【図１３】
0003564275.tif 000014