(57)【特許請求の範囲】
【請求項１】
通常動作時には、データ端子からのデータ信号を取りこんでラッチするとともに、スキャンパステスト時には、スキャン入力端子からの信号を取りこんでラッチするフリップフロップを備えたスキャンパス回路において、
スキャンパステストと通常動作のモード切替を制御する制御信号を入力する制御端子と、前記フリップフロップの状態をセットするセット信号を入力するセット端子とからの信号をそれぞれ入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記セット端子に入力されたセット信号の伝達を抑止し、前記入力されたセット信号により、前記フリップフロップの状態がセットされないように制御する第１の論理回路と、
前記制御信号を入力する制御端子と、前記フリップフロップの状態をリセットするリセット信号を入力するリセット端子とからの信号をそれぞれ入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記リセット端子に入力されたリセット信号の伝達を抑止し、前記入力されたリセット信号により、前記フリップフロップの状態がリセットされないように制御する第２の論理回路と、
を備え、
前記フリップフロップが、それぞれの第１の入力端と出力端が互いに電気的に接続されてマスターラッチを構成する第１、及び第２の論理ゲートと、それぞれの第１の入力端と出力端が互いに電気的に接続されてスレーブラッチを構成する第３、及び第４の論理ゲートと、一端がデータ端子からの信号の入力端で他端が前記第１の論理ゲートの第１の入力端に接続された第１のスイッチと、一端がスキャン入力端子からの信号の入力端で他端が前記第１の論理ゲートの第１の入力端に電気的に接続された第２のスイッチと、前記第１の論理ゲートの出力端と前記第３の論理ゲートの第１の入力端との間に直列に設けられた第３及び第４のスイッチと、前記第３の論理ゲートの出力端に入力端が接続され出力端がデータ出力端子に接続されたデータ出力インバータとを含むマスタースレーブ型のフリップフロップよりなり、
前記第１のスイッチは通常動作時にはクロックによりオンオフされスキャンテスト時にはオフ状態を維持し、前記第２のスイッチは通常動作時にはオフ状態を維持しスキャンテスト時には第１のスキャンクロックによりオン、オフされ、前記第３のスイッチは通常動作時にはオン状態を維持しスキャンテスト時には前記第１のスキャンクロックとはパルスが重ならない第２のスキャンクロックによりオンオフされ、前記第４のスイッチは通常動作時には前記クロックにより前記第１のスイッチとは逆相の関係でオンオフされスキャンテスト時にはオン状態を維持し、
前記第１の論理回路の出力が、前記マスターラッチの前記第１の論理ゲートの第２の入力端と前記スレーブラッチを構成する前記第４の論理ゲートの第２の入力端とに接続され、
前記第２の論理回路の出力は、前記マスターラッチを構成する前記第２の論理ゲートの第２の入力端と前記スレーブラッチを構成する前記第３の論理ゲートの第２の入力端とに接続される、ことを特徴とするスキャンパス回路。
【請求項２】
通常動作時には、データ端子からのデータ信号を取りこんでラッチするとともに、スキャンパステスト時には、スキャン入力端子からの信号を取りこんでラッチするフリップフロップが、
スキャンパステストと通常動作のモード切替を制御する制御信号を入力する制御端子と、
前記フリップフロップの状態をセットするセット信号を入力するセット端子と、
前記フリップフロップの状態をリセットするリセット信号を入力するリセット端子と、
前記制御端子からの制御信号と前記セット端子からのセット信号とを入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記セット端子に入力されたセット信号の伝達を抑止し、前記入力されたセット信号により、前記フリップフロップの状態がセットされないように制御する第１の論理回路と、
前記制御端子とからの制御信号と前記リセット端子からのリセット信号とを入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記リセット端子に入力されたリセット信号の伝達を抑止し、前記入力されたリセット信号により、前記フリップフロップの状態がリセットされないように制御する第２の論理回路と、
を備え、
前記フリップフロップが、それぞれの第１の入力端と出力端が互いに電気的に接続されてマスターラッチを構成する第１、及び第２の論理ゲートと、それぞれの第１の入力端と出力端が互いに電気的に接続されてスレーブラッチを構成する第３、及び第４の論理ゲートと、一端がデータ端子からの信号の入力端で他端が前記第１の論理ゲートの第１の入力端に接続された第１のスイッチと、一端がスキャン入力端子からの信号の入力端で他端が前記第１の論理ゲートの第１の入力端に電気的に接続された第２のスイッチと、前記第１の論理ゲートの出力端と前記第３の論理ゲートの第１の入力端との間に直列に設けられた第３及び第４のスイッチと、前記第３の論理ゲートの出力端に入力端が接続され出力端がデータ出力端子に接続されたデータ出力インバータとを含むマスタースレーブ型のフリップフロップよりなり、
前記第１のスイッチは通常動作時にはクロックによりオンオフされスキャンテスト時にはオフ状態を維持し、前記第２のスイッチは通常動作時にはオフ状態を維持しスキャンテスト時には第１のスキャンクロックによりオン、オフされ、前記第３のスイッチは通常動作時にはオン状態を維持しスキャンテスト時には前記第１のスキャンクロックとはパルスが重ならない第２のスキャンクロックによりオンオフされ、前記第４のスイッチは通常動作時には前記クロックにより前記第１のスイッチとは逆相の関係でオンオフされスキャンテスト時にはオン状態を維持し、
前記第１の論理回路の出力が、前記マスターラッチの前記第１の論理ゲートの第２の入力端と前記スレーブラッチを構成する前記第４の論理ゲートの第２の入力端とに接続され、
前記第２の論理回路の出力は、前記マスターラッチを構成する前記第２の論理ゲートの第２の入力端と前記スレーブラッチを構成する前記第３の論理ゲートの第２の入力端とに接続される、ことを特徴とするフリップフロップ。
【請求項３】
２入力の第１、及び第２のＮＡＮＤ回路がマスターラッチ部を構成し、２入力の第３、及び第４のＮＡＮＤ回路がスレーブラッチ部を構成しており、
セット信号が入力されるセット端子と、スキャンパスと通常動作のモード切替を制御する制御信号が入力される制御端子に入力が接続された第１の論理回路と、
リセット信号が入力されるリセット端子とスキャンパスと通常動作のモードを制御する制御信号が入力される制御端子に入力が接続された第２の論理回路と、
を備え、
前記第１の論理回路の出力は、前記第１のＮＡＮＤ回路の一の入力端に入力されており、
データ信号が入力されるデータ端子に入力端が接続された第１のインバータを備え、前記第１のインバータの出力端と前記第１のＮＡＮＤ回路の他の入力端との間に接続され、クロック信号でオン、オフ制御される第１のトランスファゲートを備え、
前記第２のＮＡＮＤ回路の一の入力端には、前記第１のＮＡＮＤ回路の出力端が接続されており、
前記第２のＮＡＮＤ回路の他の入力端は、前記第２の論理回路の出力端に接続されており、前記第２のＮＡＮＤ回路の出力端と、前記第１のＮＡＮＤ回路の他の入力端との間には、第２、及び第３のトランスファゲートが直列に接続されてなり、
前記第２、及び第３のトランスファゲートは、それぞれ第１のスキャンクロックと、クロックが制御端子に入力されて、オン、オフ制御され、
前記第１のスキャンクロックは通常動作時には固定値とされ、前記クロックは、スキャンパステスト時には固定値とされ、
スキャンイン入力端子は、第２のインバータの入力端に接続され、前記第２のインバータの出力端と、前記第２、及び第３のトランスファゲートの接続点との間には、前記第１のスキャンクロックでオン、オフ制御される第４のトランスファゲートが接続されており、
前記第１のＮＡＮＤ回路の出力端と、前記第３のＮＡＮＤ回路の一の入力端との間には、第５、及び第６のトランスファゲートが直列に接続され、前記第５、及び第６のトランスファゲートは、それぞれ前記第１のスキャンクロックとはパルスが重ならない第２のスキャンクロックと、クロックでオン、オフ制御され、前記第２のスキャンクロックは通常動作時には固定値とされ、スキャンパステスト時に、前記第１、第２のスキャンクロックが供給され、前記クロックは固定値とされ、
前記第３のＮＡＮＤ回路の他の入力端には、前記第２の論理回路の出力端が接続され、前記第３のＮＡＮＤ回路の出力端は第３のインバータを介してデータ出力端子に接続されるとともに、前記第４のＮＡＮＤ回路の一の入力端に接続されており、前記第４のＮＡＮＤ回路の他の入力端は、前記第１の論理回路の出力端に接続され、
前記第４のＮＡＮＤ回路の出力端と、前記第３のＮＡＮＤ回路の一の入力端との間には、クロックでオン、オフ制御される第７のトランスファゲートが接続されており、
前記第４のＮＡＮＤ回路の出力端はスキャンアウト出力端子に接続されており、さらに、前記第４のＮＡＮＤ回路の出力端と、前記第５、及び第６のトランスファゲートの接続点との間には、前記第２のスキャンクロックでオン、オフ制御される第８のトランスファゲートが接続されている、ことを特徴とするフリップフロップ。
【請求項４】
請求項２又は３記載の前記フリップフロップを備えた半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、スキャンパス回路に関し、特に、スキャンパスフリップフロップの構成に関する。
【０００２】
【従来の技術】
半導体集積回路装置の高集積化、高機能化に伴い、テスト時に、半導体集積回路装置中のフリップフロップをシフトレジスタのように、シリアルに連結してスキャンパスを構成し、外部端子からテスト信号を入力し、組合せ回路部の動作結果を、シフトレジスタ化したフリップフロップを介して読み出すことで、テスト容易化を図る、スキャンパス回路が用いられている。スキャンパス回路において、スキャンパステスト時に、フリップフロップは、スキャンイン端子ＳＩＮからのスキャンデータをスキャンクロックＳＣでラッチし、スキャンアウト端子ＳＯＵＴから次段のフリップフロップのスキャンイン端子ＳＩＮに出力するか、又は半導体集積回路のスキャンアウト外部端子に出力する。なお、スキャンパスフリップフロップの構成としては、例えば特開２０００−２７５４号公報等が参照される。
【０００３】
図４は、セット、リセット機能付きの従来のフリップフロップの構成の一例を示す図である。図４に示すように、このフリップフロップは、リセット、セット機能付きマスター・スレーブ型フリップフロップ構成とされており、第１のＮＡＮＤ（否定論理積）回路１０１と第２のＮＡＮＤ回路１０２がマスターラッチ部を構成し、第３のＮＡＮＤ回路１０３と第４のＮＡＮＤ回路１０４がスレーブラッチ部を構成している。
【０００４】
データ端子ＤＡＴＡには第１のインバータ１１１の入力端が接続されており、第１のインバータ１１１の出力端と、第１のＮＡＮＤ回路１０１の第２入力端との間に接続され、クロック信号でオン、オフ制御される第１のＣＭＯＳトランスファゲート１２１を備えている。セット端子ＳＥＴＢは、バッファ１１０（正転バッファ）に入力され、バッファ１１０の出力端は、第１、第４のＮＡＮＤ回路１０１、１０４の第１入力端に接続されている。
【０００５】
第２のＮＡＮＤ回路１０２の第２の入力端には、第１のＮＡＮＤ回路１０１の出力端が接続されており、第２のＮＡＮＤ回路１０２の第１入力端は、リセット端子ＲＥＳＥＴＢ（反転）に接続されており、第２のＮＡＮＤ回路１０２の出力端と、第１のＮＡＮＤ回路１０１の第２入力端との間には、第２、及び第３のＣＭＯＳトランスファゲート１２２、及び１２３が直列に接続されている。第２、及び第３のＣＭＯＳトランスファゲート１２２、及び１２３の制御端子には、それぞれ第１のスキャンクロックＳＣ１と、クロックＣＬＫが入力される。
【０００６】
スキャンイン入力端子ＳＩＮは、第２のインバータ１１２の入力端に接続されており、第２のインバータ１１２の出力端と、第２、第３のＣＭＯＳトランスファゲート１２２、１２３の接続点との間には、第１のスキャンクロックＳＣ１が制御端子に入力される第４のＣＭＯＳトランスファゲート１２４が接続されている。
【０００７】
第１のＮＡＮＤ回路１０１の出力端と、第３のＮＡＮＤ回路１０３の第１入力端との間には、第５、第６のＣＭＯＳトランスファゲート１２５、１２６が直列に接続されている。第５、第６のＣＭＯＳトランスファゲート１２５、１２６は、それぞれ第２のスキャンクロックＳＣ２と、クロックＣＬＫが制御端子に入力される。第３のＮＡＮＤ回路１０３の第２入力端は、リセット端子ＲＥＳＥＴＢに接続されている。
【０００８】
第３のＮＡＮＤ回路１０３の出力端は第３のインバータ１１３を介して出力端子Ｑに接続されており、第３のＮＡＮＤ回路１０３の出力端は、第４のＮＡＮＤ回路１０４の第２入力端に接続されている。前述したように、第４のＮＡＮＤ回路１０４の第１入力端は、セット端子ＳＥＴＢに接続されている。
【０００９】
第４のＮＡＮＤ回路１０４の出力端と、第３のＮＡＮＤ回路１０３の入力端との間には、クロックＣＬＫでオン、オフ制御される第７のＣＭＯＳトランスファゲート１２７が接続されており、第４のＮＡＮＤ回路１０４の出力端はスキャンアウト出力端子ＳＯＵＴに接続されている。さらに第４のＮＡＮＤ回路１０４の出力端と、第５、第６のＣＭＯＳトランスファゲート１２５、１２６の接続点との間には、第２のスキャンクロックＳＣ２でオン、オフ制御される第８のＣＭＯＳトランスファゲート１２８が接続されている。
【００１０】
第１、第７のＣＭＯＳトランスファゲート１２１、１２７のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転クロックＣＬＫＢ、正転クロックＣＬＫが供給され、第３、第６のＣＭＯＳトランスファゲート１２３、１２６のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転クロックＣＬＫ、反転クロックＣＬＫＢが供給される。なお、反転クロックＣＬＫＢは、クロックＣＬＫをインバータＩＮＶ１で反転して得られる。
【００１１】
第２のＣＭＯＳトランスファゲート１２２のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転スキャンクロックＳＣ１、反転スキャンクロックＳＣ１Ｂが供給される。反転スキャンクロックＳＣ１Ｂは正転スキャンクロックＳＣ１をインバータＩＮＶ２で反転して得られる。
【００１２】
第４のＣＭＯＳトランスファゲート１２４のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転スキャンクロックＳＣ１Ｂ、正転スキャンクロックＳＣ１が供給される。
【００１３】
第５のＣＭＯＳトランスファゲート１２５のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転スキャンクロックＳＣ２Ｂ、正転スキャンクロックＳＣ２が供給される。反転スキャンクロックＳＣ２Ｂは正転スキャンクロックＳＣ２をインバータＩＮＶ３で反転して得られる。なお、後述するように、スキャンクロックＳＣ１、ＳＣ２は互いに重ならない２相の信号とされる。
【００１４】
第８のＣＭＯＳトランスファゲート１２８のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転スキャンクロックＳＣ２、反転スキャンクロックＳＣ２Ｂが供給される。
【００１５】
通常動作時、第１のスキャンクロックＳＣ１はＬｏｗレベルに固定され、第２のスキャンクロックＳＣ２はＨｉｇｈレベルに固定され、クロックＣＬＫのみが供給される。
【００１６】
スキャンクロックＳＣ１のＬｏｗレベル、スキャンクロックＳＣ２のＨｉｇｈレベル固定により、第２のＣＭＯＳトランスファゲート１２２はオン状態、第４のＣＭＯＳトランスファゲート１２４はオフ状態、第５のＣＭＯＳトランスファゲート１２５はオン状態、第８のＣＭＯＳトランスファゲート１２８はオフ状態とされ、スキャンイン端子ＳＩＮからマスターラッチ部への入力パス、スレーブラッチ部とスキャンアウト端子ＳＯＵＴとの接続パスは断状態とされる。
【００１７】
通常動作時、セット、リセット信号がともにインアクティブのときについて説明する。図５は、図４に示す回路の通常動作時の動作を説明するためのタイミング図である。セット信号（反転）ＳＥＴＢがインアクティブ（Ｈｉｇｈレベル）であるとき、第１、第４のＮＡＮＤ回路１０１、１０４はインバータ素子と等価な論理となり、ＲＥＳＥＴＢがインアクティブ（Ｈｉｇｈレベル）であるとき、第２、第３のＮＡＮＤ回路１０２、１０３は、いずれもインバータ素子と等価な論理となる。
【００１８】
クロックＣＬＫがＨｉｇｈレベルのとき（ＣＬＫＢはＬｏｗレベル）、第１、第７のＣＭＯＳトランスファゲート１２１、１２７がオンし、第３、６のＣＭＯＳトランスファゲート１２３、１２６がオフする。
【００１９】
逆に、クロックＣＬＫがＬｏｗレベルのとき（ＣＬＫＢはＨｉｇｈレベル）、第３、６のＣＭＯＳトランスファゲート１２３、１２６がオンし、第１、第７のＣＭＯＳトランスファゲート１２１、１２７がオフする。
【００２０】
図５の時刻Ｔ１で、クロックＣＬＫがＨｉｇｈレベルのとき、データ（ＤＡＴＡ）端子の信号レベルをインバータ１１１で反転した信号が、第１のＮＡＮＤ回路１０１の第２入力端に入力される。第１のＮＡＮＤ回路１０１は、ＤＡＴＡ端子の信号論理値を、インバータ１１１で反転した値を反転して第２のＮＡＮＤ回路１０２の第２の入力端に出力する。
【００２１】
時刻Ｔ２で、クロックがＬｏｗレベルとなると、第６のＣＭＯＳトランスファゲート１２６がオンし、第１のＮＡＮＤ回路１０１の出力は、オン状態の第５、第６のトランスファゲート１２５、１２６を介して、第３のＮＡＮＤ回路１０３の第１の入力端に伝達され、第３のＮＡＮＤ回路１０３は、第３のＮＡＮＤ回路１０３の第１の入力端の論理値を反転した信号を、第３のインバータ１１３の入力端と第４のＮＡＮＤ回路１０４の第２の入力端に供給し、第３のＮＡＮＤ回路１０３の出力は、インバータ１１３で反転され出力端Ｑから出力される。また第４のＮＡＮＤ回路１０４（第１入力端はＳＥＴＢ端子に接続されＨｉｇｈレベル）は、第４のＮＡＮＤ回路１０４の第２の入力端の論理値を反転した信号を、スキャンアウト端子ＳＯＵＴに出力する。このとき、第１のＣＭＯＳトランスファゲート１２１はオフ状態とされ、第１のＮＡＮＤ回路１０１の第２の入力端とデータ端子間の接続は断状態とされており、第３のＣＭＯＳトランスファゲート１２３がオンし、マスターラッチ部は、入力データをラッチする。
【００２２】
時刻Ｔ３で、クロックＣＬＫがＨｉｇｈレベルのとき、第６のＣＭＯＳトランスファゲート１２６がオフし、マスターラッチ部とスレーブラッチ部が切り離され、スレーブラッチ部では、第７のＣＭＯＳトランスファゲート１２７がオンし、第４のＮＡＮＤ回路１０４の出力が、第３のＮＡＮＤ回路１０３の入力に接続され、データをラッチする。なお、第５、第８のＣＭＯＳトランスファゲート１２５、１２８のＰチャネルＭＯＳトランジスタとＮチャネルＭＯＳトランジスタのゲートに接続される第２のスキャンパスクロックＳＣ２とその反転信号ＳＣ２Ｂを図４に示したものと逆とすれば、通常動作時において、第２のスキャンパスクロックＳＣ２はＬｏｗレベル固定とされる。
【００２３】
次に、スキャンパステスト時のシフト動作について説明する。スキャンパステストのシフト時、クロックＣＬＫは、Ｌｏｗレベル固定とされる。第１、第７のＣＭＯＳトランスファゲート１２１、１２７はオフし、第３、第６のＣＭＯＳトランスファゲート１２３、１２６はオンする。図６は、図４の回路のスキャンシフト時の動作を示すタイミング図である。
【００２４】
時刻Ｔ１で、第１のスキャンクロックＳＣ１がＨｉｇｈレベル（第２のスキャンクロックＳＣ２はＬｏｗレベル）となり、第４のＣＭＯＳトランスファゲート１２４がオンし、スキャンイン端子ＳＩＮの信号をインバータ１１２で反転した信号が、第４のＣＭＯＳトランスファゲート１２４、第３のＣＭＯＳトランスファゲート１２３を介して第１のＮＡＮＤ回路１０１の第２の入力端に入力される。第１のＮＡＮＤ回路１０１の出力（ＳＩＮ端子の信号論理値）は、第２のＮＡＮＤ回路１０２の第２の入力端に入力される。第１のスキャンクロックＳＣ１がＨｉｇｈレベル（ＳＣ２はＬｏｗレベル）のとき、第２のＣＭＯＳトランスファゲート１２２はオフである。
【００２５】
時刻Ｔ２で、第１のスキャンクロックＳＣ１がＬｏｗレベル（ＳＣ２はＬｏｗレベル）となると、第４のＣＭＯＳトランスファゲート１２４はオフとなり、スキャンイン端子ＳＩＮと、マスターラッチ部との電気的な接続は切り離され、第２のＣＭＯＳトランスファゲート１２２がオンし、マスターラッチ部の、第１、第２のＮＡＮＤ１０１、１０２からなる、等価的にインバータ２段のフリップフロップが形成され、スキャンイン端子ＳＩＮの信号がラッチされる。
【００２６】
時刻Ｔ３で、スキャンクロックＳＣ２がＨｉｇｈレベル（ＳＣ１はＬｏｗレベル）となると、第５のＣＭＯＳトランスファゲート１２５がオンとなり、第１のＮＡＮＤ回路１０１の出力（すなわちＳＩＮ端子の信号論理値）は、第５のＣＭＯＳトランスファゲート１２５、及び第６のＣＭＯＳトランスファゲート１２６を介して、第３のＮＡＮＤ回路１０３の第２の入力端に入力され、第３のＮＡＮＤ回路１０３の出力（ＳＩＮ端子の信号の反転論理値）は、インバータ１１３で反転され、出力端子Ｑから、スキャンイン端子ＳＩＮの信号の論理値が出力される。第３のＮＡＮＤ回路１０３の出力は、第４のＮＡＮＤ回路１０４の第２の入力端に入力され、第４のＮＡＮＤ回路１０４の出力（第３のＮＡＮＤ回路１０３の出力の反転）がスキャンアウト端子ＳＯＵＴから出力される。すなわち、スキャンアウト端子ＳＯＵＴにも出力端子Ｑと同一論理の信号が出力される。なお、図４では、出力端子Ｑの反転端子ＱＢが図示されていないが、第３のＮＡＮＤ回路１０３の出力端と第３のインバータ１１３との接続点を端子から出力することで（正転バッファを介してもよい）、反転出力信号が得られる。
【００２７】
時刻Ｔ４で、スキャンクロックＳＣ２がＬｏｗレベルとなると、第５のＣＭＯＳトランスファゲート１２５はオフとなり、スレーブラッチ部はマスターラッチ部と切り離され、スレーブラッチ部において第８のＣＭＯＳトランスファゲート１２８がオンし、第３、第４のＮＡＮＤ１０３、１０４からなる、等価的にインバータ２段のフリップフロップが形成され、データがラッチされる。なお、図４の第５、第８のＣＭＯＳトランスファゲート１２５、１２８のＰチャネルＭＯＳトランジスタとＮチャネルＭＯＳトランジスタのゲートに接続される第２のスキャンパスクロックＳＣ２とその反転信号ＳＣ２Ｂを図４に示したものと逆とした場合、第２のスキャンパスクロックＳＣ２は、図６に示した信号の反転信号（そのＨｉｇｈ ／Ｌｏｗが逆）となる。
【００２８】
次に通常動作時において、セット端子ＳＥＴＢがアクティブ（Ｌｏｗレベル）とされた場合について説明する。なお、この場合、リセット端子ＲＥＳＥＴＢは、インアクティブ（Ｈｉｇｈレベル）とされる。
【００２９】
セット端子ＳＥＴＢがＬｏｗレベルとなると、第１入力端がＬｏｗレベルとされた第１のＮＡＮＤ回路１０１と、第４のＮＡＮＤ回路１０４の出力は、いずれも、Ｈｉｇｈレベルとされる。クロックＣＬＫがＬｏｗレベルのとき、第６のＣＭＯＳトランスファゲート１２６はオンし、第１のＮＡＮＤ回路１０１の出力信号は第３のＮＡＮＤ回路１０３の第１の入力端に伝搬され、第３のＮＡＮＤ回路１０３は、その第１の入力端の信号レベル（この場合、Ｈｉｇｈレベル）を反転出力し（第３のＮＡＮＤ回路１０３の第２入力端はＲＥＳＥＴＢ端子に接続されＨｉｇｈレベル）、第３のインバータ１１３で第３のＮＡＮＤ回路１０３の出力を反転出力し、このため、出力端子ＱからＨｉｇｈレベルが出力される。その際、第４のＮＡＮＤ回路１０４の出力端から、スキャンアウトＳＯＵＴ端子にも、Ｈｉｇｈレベルがクロックに非同期で出力される。
【００３０】
クロックＣＬＫがＨｉｇｈレベルとなると、第７のＣＭＯＳトランスファゲート１２７がオンし、第６のＣＭＯＳトランスファゲート１２６がオフし（スレーブラッチ部はマスターラッチ部と切り離される）、第３のＮＡＮＤ回路１０３の第１の入力端には、第４のＮＡＮＤ回路１０４の出力端からＨｉｇｈレベルが入力され、このため、出力端子ＱのＨｉｇｈレベル状態に保持される。
【００３１】
次に通常動作時において、リセット端子ＲＥＳＥＴＢをアクティブ（Ｌｏｗレベル）とした場合について説明する。なお、この場合、セット端子ＳＥＴＢは、インアクティブ（Ｈｉｇｈレベル）とされる。
【００３２】
リセット端子ＲＥＳＥＴＢがＬｏｗレベルとなると、第２、及び第３のＮＡＮＤ回路１０２、１０３の出力は、Ｈｉｇｈレベルとされ、第３のインバータ１１３で第３のＮＡＮＤ回路１０３の出力を反転出力し、出力端子ＱからはＬｏｗレベルが非同期で出力される。その際、第４のＮＡＮＤ回路１０４の第１、第２の入力端は、Ｈｉｇｈレベルとされ、その出力からスキャンアウトＳＯＵＴ端子にＬｏｗレベルが出力される。
【００３３】
クロックＣＬＫのＬｏｗレベルで第３のＣＭＯＳトランスファゲート１２３がオンし、第１のＮＡＮＤ回路１０１の第２の入力端にＨｉｇｈレベルが供給され、第１のＮＡＮＤ回路１０１は、その第１の入力端がＨｉｇｈレベル（ＳＥＴＢ）であるため、Ｌｏｗレベルを出力し、第３のＮＡＮＤ回路１０３の第１の入力端に出力する。
【００３４】
クロックＣＬＫのＨｉｇｈレベルで第７のＣＭＯＳトランスファゲート１２７がオンし、第６のＣＭＯＳトランスファゲート１２６がオフし、第３のＮＡＮＤ回路１０３の第１の入力端には、第４のＮＡＮＤ回路１０４の出力端からＬｏｗレベルが供給される。
【００３５】
次に、スキャンパステスト時において、セット端子ＳＥＴＢがアクティブ（Ｌｏｗレベル）とされた場合について説明する。なお、この場合、リセット端子ＲＥＳＥＴＢは、インアクティブ（Ｈｉｇｈレベル）とされる。クロックＣＬＫはＬＯＷレベルとされ、第１、第７のＣＭＯＳトランスファゲート１２１、１２７はオフ、第３、第６のＣＭＯＳトランスファゲート１２３、１２６はオンとされる。
【００３６】
セット端子ＳＥＴＢがＬｏｗレベルとなった時点で、第４のＮＡＮＤ回路１０４はただちにＨｉｇｈレベルを出力し、スキャンアウト端子ＳＯＵＴには、非同期でＨｉｇｈレベルが出力される。
【００３７】
またセット端子ＳＥＴＢに第１入力端が接続される第１のＮＡＮＤ回路１０１の出力端はＨｉｇｈレベルとされ、第２のスキャンクロックＳＣ２のＨｉｇｈレベルで第５のＣＭＯＳトランスファゲート１２５がオンし、第１のＮＡＮＤ回路１０１の出力信号は第３のＮＡＮＤ回路１０３の第１の入力端に伝搬され、第３のＮＡＮＤ回路１０３は、その第１の入力端の信号レベルを反転出力し、第３のインバータ１１３で、第３のＮＡＮＤ回路１０３の出力を反転出力し、Ｈｉｇｈレベルが出力される。
【００３８】
スキャンクロックＳＣ２がＬｏｗレベルとなると、第８のＣＭＯＳトランスファゲート１２８がオンし、第５のＣＭＯＳトランスファゲート１２５がオフし、第３のＮＡＮＤ回路１０３の第１の入力端にはＨｉｇｈレベルが入力され、このため、スキャンアウト端子ＳＯＵＴのＨｉｇｈレベルがラッチされる。
【００３９】
スキャンテスト時におけるリセット端子ＲＥＳＥＴＢをアクティブ（Ｌｏｗレベル）とした場合について説明する。なお、この場合、セット端子ＳＥＴＢは、インアクティブ（Ｈｉｇｈレベル）とされる。
【００４０】
リセット端子ＲＥＳＥＴＢがＬｏｗレベルとなると、第２、及び第３のＮＡＮＤ回路１０２、１０３の出力はＨｉｇｈレベルとされ、第３のインバータ１１３で第３のＮＡＮＤ回路１０３の出力信号の論理を反転出力し、出力端子ＱにＬｏｗレベルが出力され、第４のＮＡＮＤ回路１０４の出力から、スキャンアウト端子ＳＯＵＴにもＬｏｗレベルが出力される。すなわち、スキャンアウト端子ＳＯＵＴは、スキャンクロックによらず、非同期でＬｏｗレベルが出力される。
【００４１】
なお、スキャンクロックＳＣ１のＬｏｗレベルで第２のＣＭＯＳトランスファゲート１２２がオンし、第１のＮＡＮＤ回路１０１の第２の入力端にＨｉｇｈレベルが供給され、第１のＮＡＮＤ回路１０１はその第１の入力端がＨｉｇｈレベル（ＳＥＴＢ）であるため、Ｌｏｗレベルを出力し、第３のＮＡＮＤ回路１０３の第１の入力端に出力する。
【００４２】
スキャンクロックＳＣ２のＬｏｗレベルで第８のＣＭＯＳトランスファゲート１２８がオンし、第５のＣＭＯＳトランスファゲート１２５がオフし、第３のＮＡＮＤ回路１０３の第１の入力端には、第４のＮＡＮＤ回路１０４の出力であるＬｏｗレベルが供給され、スレーブラッチは出力信号をラッチする。
【００４３】
ところで、スキャンパスを構成するシフトレジスタの動作を正しく行なうために、シフト動作で、スキャンパスフリップフロップの値が変化しないように、しなければならない。
【００４４】
すなわち、スキャンパステスト時、リセット信号を生成する論理回路からの信号を入力するためのリセット端子ＲＥＳＥＴＢからの入力がＨｉｇｈレベルからＬｏｗレベルに設定されるか、あるいはノイズ等によりＬｏｗレベルとなると、スキャンパスフリップフロップの出力ＳＯＵＴがＬＯＷレベルに強制リセットされ、その出力が、次の段のスキャンパスフリップフロップのスキャンイン端子に入力される場合、誤った信号がシフトレジスタを伝搬する。セット信号についても同様である。
【００４５】
そして、スキャンパステスト時に、セット信号、リセット信号を供給する論理回路が動作して、スキャンパスフリップフロップのセット、リセット端子にアクティブ信号を供給しないようにするには、セット、リセット信号を生成する論理回路を動作させないように制御するパターンを供給する必要があり、さらに、リセット、セット信号にグリッチノイズ等が発生しないようなパターン、タイミングマージンでテストする必要があり、その結果、自動パタン設計、テストを困難なものとしている。
【００４６】
なお、セット、及び／又はリセット機能を具備しないスキャンパスフリップフロップにおいて、出力にそのデータを保持する保持回路を備え、シフト動作時、フリップフロップの出力の論理変化を考慮せずに回路設計を可能とした構成が、例えば特開昭６２−２３９０７１号公報に提案されている。しかしながら、セット、及び／又はリセット機能を具備したスキャンパスフリップフロップの出力端に保持回路を備えたとしても、スキャンパステスト時のシフト動作時に、フリップフロップがセット、リセットされ、状態が変化してしまう場合、その結果が次段のフリップフロップに伝搬してしまう。
【００４７】
また例えば特開平７−３０６２４４号公報には、セット端子とリセット端子に、論理回路を接続した構成のフリップフロップが開示されている。すなわち、セット端子とリセット端子に第１ＡＮＤ素子、第２ＡＮＤ素子の出力を接続し、第２ＡＮＤ素子の一方の入力を反転素子の出力と接続し、第１ＡＮＤ素子の一方の入力及び第２ＡＮＤ素子の一方の入力をロードタイミング（ＬＴ）入力とし、第１ＡＮＤ素子の他方の入力及び反転素子の入力をロードデータ（ＬＤ）入力としたフリップフロップが開示されており、通常動作時には、非同期系のクロックを、直接フリップフロップに供給し、テスト動作時にはフリップフロップのスキャンパスを構成するようにし、通常動作時には、同期系のクロックを使わなければならないという回路設計上の制約をなくし、非同期系クロックをセレクタを介することなく、直接フリップフロップに供給することで、通常動作時の非同期系クロック又はテスト時の同期系クロックをセレクタを介してフリップフロップのクロックを供給している場合に、通常動作時のクロック・スキューのずれが問題となる高速動作は困難であるという問題点を解消している。しかしながら、かかる回路構成も、スキャンパステストのシフト動作時のセット、リセットの誤設定等を回避することにはならない。
【００４８】
【発明が解決しようとする課題】
したがって、本発明が解決しようとする課題は、スキャンパスを構成するシフトレジスタの動作を正しく行なうために、シフト動作時、セット、リセット信号入力により、スキャンパスフリップフロップの値が変化することがないようにしたフリップフロップ及びスキャンパス回路を提供することにある。
【００４９】
本発明が解決しようとする他の課題は、半導体集積回路装置の回路設計工程の簡易化に貢献するとともに、半導体集積回路装置のテストの容易化を図るフリップフロップ及びスキャンパス回路を提供することにある。
【００５０】
【課題を解決するための手段】
前記課題を解決するための手段を提供する本発明に係るスキャンパス回路は、スキャンパステストと通常動作のモード切替を制御する制御信号がスキャンパステストモードを示すときに、セット信号の伝達を抑止する回路手段を備えている。また、本発明に係るフリップフロップは、その内部に、制御信号がスキャンパステストモードを示すときに、リセット信号の伝達を抑止する回路手段を、備えている。これらの回路手段は、好ましくは、フリップフロップ内部に設けられる。
【００５１】
本発明に係るフリップフロップは、通常動作時には、データ端子からのデータ信号を取りこんでラッチするとともに、スキャンパステスト時には、スキャン入力端子からの信号を取りこんでラッチするフリップフロップにおいて、スキャンパステストと通常動作のモードを制御する制御信号を入力する制御端子と、前記フリップフロップの状態をセットするセット信号を入力するセット端子と、を備え、前記制御端子と前記セット端子からの信号をそれぞれ入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記セット端子に入力されたセット信号の伝達を抑止し、前記入力されたセット信号により、前記フリップフロップの状態がセットされないように制御する論理回路を備えている。
【００５２】
また本発明に係るフリップフロップは、スキャンパステストと通常動作のモード切替を制御する制御信号を入力する制御端子と、前記フリップフロップの状態をリセットするリセット信号を入力するリセット端子と、を備え、前記制御端子と前記リセット端子からの信号をそれぞれ入力し、前記制御信号がスキャンパステスト・モードを示しているときには、前記リセット端子に入力されたリセット信号の伝達を抑止し、前記入力されたリセット信号により、前記フリップフロップの状態がリセットされないように制御する論理回路を備えている。
【００５３】
【発明の実施の形態】
本発明について説明する。半導体集積回路の自動設計等で用いられる設計ツールにおいて、論理合成後、回路設計情報であるネットリスト等から、セット、リセット端子を備えたフリップフロップを探索し、当該フリップフロップのセット端子、リセット端子に、スキャンパステスト時に、他の論理回路から出力されるセット、リセット信号をマスクするためのコントロールバッファ回路を自動挿入する手法（計算機上で自動挿入する設計ツール等）について説明する。
【００５４】
図３は、コントロールバッファ回路が新たに挿入されたスキャンパス回路の構成を模式的に示す図である。なお、図３において、フリップフロップ１０の構成は、図４等に示した構成と同様のものとされる。
【００５５】
セット、リセット端子を備えたフリップフロップ１０のセット端子ＳＥＴＢにその出力端が接続され、スキャンパステスト時に、論理回路部２０から出力されるセット信号をマスクするコントロールバッファ回路は、スキャンパステストモード、通常動作モードを規定する制御信号ＳＭＣ（Scan  path  test  Mode  Control：スキャンパステストモード制御端子）と、セット信号を生成、伝搬する論理回路部２０からのセット信号とのＯＲ演算結果をＳＥＴＢ端子に出力する第１の論理和（ＯＲ）回路１１から構成されている。また、フリップフロップ１０のリセット端子ＲＥＳＥＴＢにその出力端が接続され、スキャンパステスト時に、論理回路部２１から出力されるリセット信号をマスクするコントロールバッファ回路は、スキャンパスモードの制御信号と、リセット信号を生成、伝搬する論理回路部２１からのリセット信号とのＯＲ演算結果を、ＲＥＳＥＴＢ端子に出力する第２の論理和（ＯＲ）回路１２から構成されている。
【００５６】
図３に示した構成のスキャンパス回路について説明すると、制御信号ＳＭＣがＨｉｇｈレベルのとき（スキャンパステスト・モード）、第１、第２の論理和回路１１、１２の出力は、常に、Ｈｉｇｈレベルを出力し、フリップフロップ１０のセット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢには、Ｌｏｗレベルの信号は供給されず、フリップフロップ１０は、セット、リセット動作しない。このため、シフト動作時にフリップフロップ１０がセット、リセットされることはない。
【００５７】
一方、制御信号ＳＭＣがＬｏｗレベルのとき（通常動作モード）、第１、第２の論理和回路１１、１２には、セット信号、リセット信号に対応する信号を、フリップフロップ１０のセット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢに供給し、フリップフロップ１０は、入力された信号の値に応じて、セット、リセット動作する。以上のとおり、この手法により、上記課題を解決することはできる。
【００５８】
しかしながら、上記手法は、考慮されるべき以下の点を有している。
【００５９】
セット、リセット信号を生成する論理回路部２０、２１と、フリップフロップ１０のセットＳＥＴＢ端子、リセット端子ＲＥＳＥＴＢとの間にそれぞれコントロールバッファ回路を、回路設計段階等で、別途、挿入する必要がある。すなわち、半導体集積回路（ＬＳＩ）の設計工程において、ＬＳＩ中の複数のフリップフロップ回路のセット、リセット端子に、コントロールバッファ回路を挿入するため、例えば論理合成後に、コントロールバッファを挿入する処理工程が、別途必要とされる。
【００６０】
さらに、コントロールバッファ回路の挿入後の遅延時間が、当初設計時のものと相違することになる。このため、別途、遅延検証、ＣＴＳ（クロックツリーシンセシス）バッファの挿入等による遅延の調整等を行う必要が生じる場合もある。
【００６１】
そして、上記した方法を用いる場合、コントロールバッファ回路をフリップフロップのセット端子とリセット端子の近傍に配置する必要があり、場合によっては、レイアウト設計等に影響を与える。
【００６２】
一つのコントロールバッファの出力を、異なる場所の複数のフリップフロップ回路に供給する場合、セット、リセット信号配線のフリップフロップ間での配線長、負荷等の相違により、セット、リセット信号に遅延差が生じる場合があり、別途、合わせこみが必要となる。
【００６３】
本発明に係る回路は、上記した事項の改良を図るものであり、好ましくは、フリップフロップ回路の回路内部に、スキャンパステストと通常動作のモードを制御する制御信号ＳＭＣがアクティブのときに、入力されたセット信号、及び／又はリセット信号の伝達を抑止するマスク制御を行う論理回路を備えている。すなわち、フリップフロップが、制御信号ＳＭＣがＨｉｇｈのとき（スキャンパステストモードであることを示すとき）、セット、リセット信号をマスク制御する回路（図１の１０５、１０６）を内蔵している。
【００６４】
かかる構成のフリップフロップによれば、スキャンパステストのシフト動作時に、フリップフロップがセット、リセットされることを防ぐとともに、論理合成後に、コントロールバッファを挿入する工程は不用とされ、コントロールバッファ挿入後の遅延検証等も不用とされ、一つのコントロールバッファの出力を、異なる場所の複数のフリップフロップ回路に供給する必要もなく、回路設計を簡易化する。
【００６５】
【実施例】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の実施例について図面を参照して説明する。図１は、本発明の一実施例のフリップフロップの構成の一例を示す図である。図１に示すように、このフリップフロップは、リセット、セット機能付きのマスタスレーブ型フリップフロップ構成とされており、第１のＮＡＮＤ回路１０１と第２のＮＡＮＤ回路１０２がマスターラッチ部、第３のＮＡＮＤ回路１０３と第４のＮＡＮＤ回路１０４がスレーブラッチ部を構成している。
【００６６】
図１を参照すると、このフリップフロップにおいては、セット信号が入力されるセット端子ＳＥＴＢと、スキャンパステストと通常動作のモード切替を制御する制御信号が入力される制御端子ＳＭＣ（Scan  path  test  Mode  control：スキャンパステストモード制御端子）に入力が接続された第１のＯＲ（論理和）回路１０５と、リセット信号が入力されるリセット端子ＳＥＴＢと、制御端子ＳＭＣに入力が接続された第２のＯＲ回路１０６とが、図４に示した構成に追加されている。第１のＯＲ回路１０５の出力は、第１、第４のＮＡＮＤ回路１０１、１０４の第１の入力端に入力されている。
【００６７】
データ端子ＤＡＴＡに入力端が接続された第１のインバータ１１１を備え、インバータ１１１の出力端と第１のＮＡＮＤ回路１０１の第２入力端との間に接続され、クロックＣＬＫでオン、オフ制御される第１のＣＭＯＳトランスファゲート１２１を備えている。
【００６８】
第２のＮＡＮＤ回路１０２の第２の入力端には、第１のＮＡＮＤ回路１０１の出力端が接続されており、第２のＮＡＮＤ回路１０２の第１入力端には、リセット端子ＲＥＳＥＴＢ（反転）が接続されており、第２のＮＡＮＤ回路１０２の出力端と、第１のＮＡＮＤ回路１０１の第２入力端との間には、第２、及び第３のＣＭＯＳトランスファゲート１２２、１２３が直列に接続されている。第２、及び第３のＣＭＯＳトランスファゲート１２２、１２３は、それぞれ第１のスキャンクロックＳＣ１と、クロックＣＬＫでオン、オフ制御される。
【００６９】
スキャンイン入力端子ＳＩＮに入力端が接続された第２のインバータ１１２を備え、第２のインバータ１１２の出力端と、第２、及び第３のＣＭＯＳトランスファゲート１２２、１２３の接続点との間には、第１のスキャンクロックＳＣ１でオン、オフ制御される第４のＣＭＯＳトランスファゲート１２４が接続されている。
【００７０】
第１のＮＡＮＤ回路１０１の出力端と、第３のＮＡＮＤ回路１０３の第１入力端との間には、第５、及び第６のＣＭＯＳトランスファゲート１２５、１２６が直列に接続されている。第５、及び第６のＣＭＯＳトランスファゲート１２５、１２６は、それぞれ第２のスキャンクロックＳＣ２と、クロックＣＬＫでオン、オフ制御される。第３のＮＡＮＤ回路１０３の第２入力端は、第２のＯＲ回路１０６の出力端に接続されている。
【００７１】
第３のＮＡＮＤ回路１０３の出力端は第３のインバータ１１３を介して出力端子Ｑに接続されており、第３のＮＡＮＤ回路１０３の出力端は、第４のＮＡＮＤ回路１０４の第２入力端に接続されており、この第４のＮＡＮＤ回路１０４の第１入力端は、第１ＯＲ回路１０５の出力端に接続されている。
【００７２】
第４のＮＡＮＤ回路１０４の出力端と、第３のＮＡＮＤ回路１０３の入力端との間には、クロックＣＬＫでオン、オフ制御される第７のＣＭＯＳトランスファゲート１２７が接続されており、第４のＮＡＮＤ回路１０４の出力端はスキャンアウト出力端子ＳＯＵＴに接続されており、第４のＮＡＮＤ回路１０４の出力端と、第５、及び第６のＣＭＯＳトランスファゲート１２５、１２６の接続点との間には、第２のスキャンクロックＳＣ２でオン、オフ制御される第８のＣＭＯＳトランスファゲート１２８が接続されている。
【００７３】
第１、第７のＣＭＯＳトランスファゲート１２１、１２７のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転クロックＣＬＫＢと正転クロックＣＬＫが供給され、第３、第６のＣＭＯＳトランスファゲート１２３、１２６のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転クロックＣＬＫと反転クロックＣＬＫＢが供給される。
【００７４】
第２のＣＭＯＳトランスファゲート１２２のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転スキャンクロックＳＣ１と反転スキャンクロックＳＣ１Ｂが供給される。
【００７５】
第４のＣＭＯＳトランスファゲート１２４のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転スキャンクロックＳＣ１Ｂと正転スキャンクロックＳＣ１が供給される。
【００７６】
第５のＣＭＯＳトランスファゲート１２５のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、反転スキャンクロックＳＣ２Ｂと正転スキャンクロックＳＣ２が供給される。
【００７７】
第８のＣＭＯＳトランスファゲート１２８のＰチャネルＭＯＳトランジスタ、ＮチャネルＭＯＳトランジスタのゲートには、正転スキャンクロックＳＣ２と反転スキャンクロックＳＣ２Ｂが供給される。
【００７８】
通常動作時、制御信号ＳＭＣはＬｏｗレベルとされ、第１のスキャンクロックＳＣ１はＬｏｗレベルとされ、第２のスキャンクロックＳＣ２はＨｉｇｈレベルとされる。
【００７９】
第１のスキャンクロックＳＣ１がＬｏｗレベル、第２のスキャンクロックＳＣ２のＨｉｇｈレベル固定により、第２のＣＭＯＳトランスファゲート１２２はオン状態、第４のＣＭＯＳトランスファゲート１２４はオフ状態、第５のＣＭＯＳトランスファゲート１２５はオン状態、第８のＣＭＯＳトランスファゲート１２８はオフ状態とされ、スキャンイン端子ＳＩＮからマスターラッチ部への入力パス、スレーブラッチ部とスキャンアウト端子ＳＯＵＴとの接続は断状態とされる。
【００８０】
制御端子ＳＭＣの信号値がＬｏｗレベルのとき、第１、第２のＯＲ回路１０５、１０６は、セット端子ＳＥＴＢ、リセット端子、ＲＥＳＥＴＢの信号をそのまま出力する。セット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢがＨｉｇｈレベルのとき、セット、リセット動作は行わない。すなわち、この場合、本実施例のフリップフロップは、図５を参照して説明したものと同様の動作とされており、ここでは、その説明は省略する（図５の関連説明が参照される）。なお、第５、第８のＣＭＯＳトランスファゲート１２５、１２８のＰチャネルＭＯＳトランジスタとＮチャネルＭＯＳトランジスタのゲートに接続される第２のスキャンパスクロックＳＣ２とその反転信号ＳＣ２Ｂを図１に示したものと逆とした場合、通常動作時において、第２のスキャンパスクロックＳＣ２はＬｏｗレベル固定とされる。
【００８１】
セット端子ＳＥＴＢがＬｏｗレベルのとき、第１のＯＲ回路１０５は、第１、第４のＮＡＮＤ回路１０１、１０４の入力端にＬｏｗレベルを出力し、クロックＣＬＫがＬｏｗレベルで出力端子ＱからＨｉｇｈレベルが出力され、リセット端子ＲＥＳＥＴＢがＬｏｗレベルのとき、第２のＯＲ回路１０６は第２、第３のＮＡＮＤ回路１０２、１０３の入力端にＬｏｗレベルを出力し、出力端子ＱからＬｏｗレベルが出力される。
【００８２】
次に、スキャンパステスト時の動作について説明する。制御端子ＳＭＣの信号値がＨｉｇｈレベルのとき、第１、第２のＯＲ回路１０５、１０６は、セット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢの入力信号をマスクして、固定値Ｈｉｇｈレベルを出力する。セット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢのＬｏｗレベル信号は、第１、第２のＯＲ回路１０５、１０６の出力端には伝達出力されず、セット端子ＳＥＴＢ、リセット端子ＲＥＳＥＴＢの信号がＬｏｗレベルとなっても、フリップフロップの状態はセットも、リセットもされない。
【００８３】
より詳細には、制御端子ＳＭＣの信号がＨｉｇｈレベルのとき、スキャンモード動作とされ、セット端子ＳＥＴＢの信号がＬｏｗレベルとなった場合でも、第１のＯＲ回路１０５の出力信号はＨｉｇｈレベルのままとされ、第１のＮＡＮＤ回路１０１、第４のＮＡＮＤ回路１０４は、その第２の入力端の論理レベルを反転する２段のインバータ（ラッチ回路）として機能し、フリップフロップはセット状態とはならない。すなわち、第１のＮＡＮＤ回路１０１、第２のＮＡＮＤ回路１０２のマスターラッチ部はスキャンイン端子ＳＩＮの信号を第１のスキャンクロックＳＣ１のＨｉｇｈレベルで取りこみ、第３のＮＡＮＤ回路１０３、第４のＮＡＮＤ回路１０４のスレーブラッチ部は第２のスキャンクロックＳＣ２のＨｉｇｈレベルでマスターラッチ部の出力を取りこみ出力端子Ｑ、スキャンアウト端子ＳＯＵＴから、スキャンイン端子ＳＩＮの信号を出力する。
【００８４】
制御端子ＳＭＣの信号がＨｉｇｈレベルのとき、リセット端子ＲＥＳＥＴＢの信号がＬｏｗレベルとなった場合でも、第２のＯＲ回路１０５の出力信号はＨｉｇｈレベルのままとされ、第２のＮＡＮＤ回路１０２、第３のＮＡＮＤ回路１０３は、その第２の入力端の論理レベルを反転する２段のインバータ（ラッチ回路）として機能し、フリップフロップはリセット状態とはならない。この場合も、第１のＮＡＮＤ回路１０１、第２のＮＡＮＤ回路１０２のマスターラッチ部はスキャンイン端子ＳＩＮの信号を第１のスキャンクロックＳＣ１のＨｉｇｈレベルで取りこみ、第３のＮＡＮＤ回路１０３、第４のＮＡＮＤ回路１０４のスレーブラッチ部は第２のスキャンクロックＳＣ２のＨｉｇｈレベルでマスターラッチ部の出力を取りこみ出力端子Ｑ、スキャンアウト端子ＳＯＵＴから、スキャンイン端子ＳＩＮの信号を出力する。
【００８５】
本実施例において、スキャンパステスト時、セット信号とリセット信号がアクティブとされない場合の動作は、図６を参照して説明した場合と同様の動作とされており、ここでは、その説明は省略する（図６の関連説明が参照される）。なお、第５、第８のＣＭＯＳトランスファゲート１２５、１２８のＰチャネルＭＯＳトランジスタとＮチャネルＭＯＳトランジスタのゲートに接続される第２のスキャンパスクロックＳＣ２とその反転信号ＳＣ２Ｂを図１に示したものと逆とした場合、第２のスキャンパスクロックＳＣ２は、スキャンパステスト時の動作を示す図６に示した信号の反転信号（そのＨｉｇｈ ／Ｌｏｗが逆）となる。
【００８６】
図２は、上記した本実施例のフリップフロップの動作を表形式にまとめた図である。図２を参照すると、制御端子ＳＭＣがアクティブ状態とされるスキャンシフト（Scan  shift）モード時には、セット、リセット信号の値にかかわりなく、フリップフロップのスキャンアウト端子ＳＯＵＴ、出力端子Ｑには、スキャンイン端子ＳＩＮの信号が出力されている。なお、通常動作（Normal）モードと、制御端子ＳＭＣがインアクティブ状態におけるリセット、セット（図２では、Set、Reset）モードでは、上記した通り、それぞれ、出力端子Ｑからのデータ出力、セット、リセット動作が行われる。
【００８７】
図１に示したフリップフロップは、好ましくは、論理設計、論理合成に用いられるスタンダードセル（プリミティブセル）としてライブラリに登録される。個の場合、フリップフロップの伝搬遅延時間情報等はライブラリに予め登録される。
【００８８】
本実施例によれば、フリップフロップに、スキャンパステストモード信号の値に応じて、セット、リセット信号をマスクする回路を内蔵する構成としたことにより、スキャンパステスト時、シフトレジスタを構成するフリップフロップがリセット、セットされることはない構成とされており、テストパタン設計を容易化する。
【００８９】
本実施例によれば、このフリップフロップをマクロ（プリミティブセル）として論理合成に供することで、論理合成後、コントロールバッファ回路を挿入する工程が不要とされる。このため、回路設計工程を簡易化している。
【００９０】
また、本実施例によれば、コントロールバッファ回路が挿入されないため、コントロールバッファ回路の挿入による遅延解析、遅延調整工程を不用としている、という利点を有する。
【００９１】
さらに、本実施例によれば、たとえ、シフト動作時に、ノイズ等によるリセット、セット信号がアクティブとされた場合にも、シフトレジスタを構成するフリップフロップがリセット、セットされることはなく、また、本実施例のフリップフロップを備えた半導体集積回路装置のＬＳＩテスタ等によるテストを容易化する。
【００９２】
以上、本発明を上記実施例に即して説明したが、本発明は、上記実施例の構成にのみ限定されるものではなく、本願特許請求の範囲の請求項の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【００９３】
【発明の効果】
以上説明したように、本発明によれば、スキャンパステストのシフト動作時に、セット信号、リセット信号の入力によりフリップフロップがセット、リセットされることを抑止する回路手段を具備したことにより、スキャンパステスト時にシフトレジスタを構成するフリップフロップの状態が破壊されることを回避し、シフト動作を保証し、回路設計の簡易化、テストの容易化、信頼性を向上する、という効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を示す図である。
【図２】本発明の一実施例の動作を示す真理値表である。
【図３】コントロールバッファ回路による制御を説明する図である。
【図４】従来のセット、リセット機能付きのスキャンパスフリップフロップの構成を示す図である。
【図５】従来のセット、リセット機能付きのスキャンパスフリップフロップの動作例（通常動作時）を示すタイミング図である。
【図６】従来のセット、リセット機能付きのスキャンパスフリップフロップの動作例（スキャンパステスト時）を示すタイミング図である。
【符号の説明】
１０  フリップフロップ
１１、１２  論理和（ＯＲ）回路
２０、２１  論理回路部
１０１〜１０４  否定論理積（ＮＡＮＤ）回路
１０５、１０６  論理和（ＯＲ）回路
１１０  バッファ
１１１〜１１３  インバータ
１２１〜１２８  ＣＭＯＳトランスファゲート
【図１】
0003802377.tif 000002
【図２】
0003802377.tif 000003
【図３】
0003802377.tif 000004
【図４】
0003802377.tif 000005
【図５】
0003802377.tif 000006
【図６】
0003802377.tif 000007