(57)【要約】【課題】ホールド時間に関する設計保証、及びホールド保証遅延素子の挿入に伴う設計工程の削減が可能となる半導体集積回路を提供する。【解決手段】クロック信号供給手段によって、所定動作時には各フリップフロップ回路に遅延素子を介さずにクロック信号を供給し、テスト動作時には各ラッチ回路にクロック信号が供給されると共に各フリップフロップ回路に遅延素子を介してクロック信号を供給する。【選択図】図１
2008172156.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に応じて動作する複数のフリップフロップ回路と、
前記複数のフリップフロップ回路間にそれぞれ１つずつ挿入され、任意の１つの前記フリップフロップ回路から出力された信号をクロック信号に応じてラッチして、他の１つの前記フリップフロップ回路に供給する複数のラッチ回路と、
クロック信号を遅延させるための遅延素子を含み、所定動作時では、入力されたクロック信号を各フリップフロップ回路に供給し、テスト動作時では、入力されたクロック信号を各ラッチ回路に供給すると共に前記入力されたクロック信号を前記遅延素子を介して各フリップフロップ回路に供給するクロック信号供給手段と、
を含む半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に係り、特に、設計工程の削減が可能となる半導体集積回路に関する。
【背景技術】
【０００２】
従来、図４に示すように、半導体集積回路の検査容易化のために、複数のフリップフロップ回路１００をシフトレジスタとして用いることによりスキャンチェーンを構成するスキャンチェーン設計が用いられている（例えば、特許文献１参照）。このスキャンチェーンを用いることによってスキャンテストが行われる。
【０００３】
同図に示されるように、スキャンチェーンを構成する各フリップフロップ回路１００間には、後段のフリップフロップ回路１００のホールド保証のための遅延手段としてのラッチ回路１０２が挿入されている。ラッチ回路１０２は、配置配線工程終了前に上記のように各フリップフロップ回路１００間に挿入することができ、また、通常動作時には動作しないように制御することが可能であるので、配置配線工程終了後に遅延セルを各フリップフロップ回路１００間に挿入することによって後段のフリップフロップ回路１００のホールド保証を行う場合に比べて、設計期間の短縮や消費電力の削減などの効果がある。
【０００４】
更に、ラッチ回路１０２自体のホールド保証を行うために、クロック信号生成部１０６からのラッチ回路１０２へのクロック信号の到達を、スキャンチェーンを構成する各フリップフロップ回路１００へのクロック信号の到達より早める必要がある。そのため、特許文献１の半導体集積回路では、クロックツリー合成後、すなわち、配置配線工程終了後に特定箇所へのクロック信号の到達を速くすることは困難であるので、各フリップフロップ回路１００へのクロック経路上に遅延セル１０４を挿入して各フリップフロップ回路１００へのクロック信号の到達を遅らせることにより、相対的にラッチ回路１０２へのクロック信号の到達を早めている。
【０００５】
図５に示すように、相対的にラッチ回路１０２へのクロック信号の到達を早めることによって、ラッチ回路１０２のホールドタイム内において、前段のフリップフロップ回路１００から出力される信号の状態が変化することがなくなる。このように、各フリップフロップ回路１００へのクロック経路上に遅延セル１０４を挿入することによって、ラッチ回路１０２のホールド保証を行っている。
【特許文献１】特開平１１−５２０２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の半導体集積回路では、クロックツリー合成後に遅延セル１０４を挿入する遅延挿入工程は多くの日数を必要としてしまう、という問題がある。また、上記のようなクロックツリー合成後に挿入された遅延セル１０４を含む回路構成が、半導体集積回路中に複数存在する場合、フリップフロップ回路１００間のスキューが増加し、通常動作のタイミングが悪化してしまうので、悪化したタイミングを改善するための工程において多くの日数を必要としてしまう、という問題もある。
【０００７】
本発明は上記問題点を解決するために成されたもので、ホールド時間に関する設計保証、及びホールド保証遅延素子の挿入に伴う設計工程の削減が可能となる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために本発明に係る半導体集積回路は、クロック信号に応じて動作する複数のフリップフロップ回路と、前記複数のフリップフロップ回路間にそれぞれ１つずつ挿入され、任意の１つの前記フリップフロップ回路から出力された信号をクロック信号に応じてラッチして、他の１つの前記フリップフロップ回路に供給する複数のラッチ回路と、クロック信号を遅延させるための遅延素子を含み、所定動作時では、入力されたクロック信号を各フリップフロップ回路に供給し、テスト動作時では、入力されたクロック信号を各ラッチ回路に供給すると共に前記入力されたクロック信号を前記遅延素子を介して各フリップフロップ回路に供給するクロック信号供給手段とを含んで構成されている。
【０００９】
本発明に係る半導体集積回路によれば、クロック信号供給手段によって、所定動作時には各フリップフロップ回路に遅延素子を介さずにクロック信号が供給され、テスト動作時には各ラッチ回路にクロック信号が供給されると共に各フリップフロップ回路に遅延されたクロック信号が供給される。これにより、各フリップフロップ回路及び各ラッチ回路のホールド時間に関する設計保証が可能となる。
【００１０】
また、所定動作時に、遅延素子を介さずに各フリップフロップ回路にクロック信号が供給されるので、フリップフロップ回路間のスキューが増加することはなく、通常動作のタイミングを悪化させることはないので、クロックツリー合成後に遅延セルを挿入した場合と比較して悪化したタイミングを改善する工程が必要とならない。
【００１１】
なお、このようなクロック信号供給手段は、クロックツリー合成前に半導体集積回路において設計することが可能である。これにより、クロックツリー合成後に遅延セルを挿入する場合には多大な日数を必要とするが、その場合と比較して設計期間を大幅に短縮することができる。
【００１２】
従って、本発明に係る半導体集積回路によれば、ホールド時間に関する設計保証、及びホールド保証遅延素子の挿入に伴う設計工程の削減が可能となる。
【発明の効果】
【００１３】
以上説明したように、本発明の半導体集積回路によれば、ホールド時間に関する設計保証、及びホールド保証遅延素子の挿入に伴う設計工程の削減が可能となる、という効果が得られる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１５】
図１に示すように、本実施の形態に係る半導体集積回路１には、複数のフリップフロップ回路１０が設けられている。
【００１６】
フリップフロップ回路１０は、通常動作時のデータ入力端子（Ｄ端子）と、スキャンテスト時のテストデータ入力端子（ＴＤ端子）と、データ入力及びテストデータ入力の何れか一方を選択するためのイネーブル信号入力端子（ＮＴ端子）と、クロック信号入力端子（ＣＬＫ端子）と、データ出力端子（Ｑ端子）とを備えている。
【００１７】
フリップフロップ回路１０は、イネーブル信号入力端子に、通常動作を示す論理値”０”が入力されると、データ入力端子に入力されたデータをクロック信号入力端子に入力されたクロック信号に同期させて、所定の回路（図示せず）に出力する。また、フリップフロップ回路１０は、イネーブル信号入力端子に、スキャンテストを示す論理値”１”が入力されると、テストデータ入力端子に入力されたテストデータをクロック信号入力端子に入力されたクロック信号に同期させて、データ出力端子から出力する。
【００１８】
フリップフロップ回路１０間には、フリップフロップ回路１０のホールド保証を行うためのラッチ回路１２が設けられている。
【００１９】
ラッチ回路１２は、データ入力端子（Ｄ端子）と、クロック信号入力端子（ＣＬＫ端子）と、データ出力端子（Ｑ端子）とを備えている。
【００２０】
ラッチ回路１２のデータ入力端子には、前段のフリップフロップ回路１０のデータ出力端子が接続され、ラッチ回路１２の出力端子には、後段のフリップフロップ回路１０のテストデータ入力端子が接続されている。
【００２１】
フリップフロップ回路１０のクロック信号入力端子、及びラッチ回路１２のクロック信号入力端子は、クロック信号供給回路１４に接続されている。
【００２２】
クロック信号供給回路１４は、スキャンイネーブルピン１６で入力された論理値に基づいて各フリップフロップ回路１０及び各ラッチ回路１２にクロック信号を供給する回路であり、インバータ１８と、ＯＲ回路２０と、マルチプレクサ２２と、遅延セル２４とを備えている。
【００２３】
ＯＲ回路２０の入力端子は、インバータ１８を介して、スキャンイネーブルピン１６に接続されている。また、ＯＲ回路２０のもう一方の入力端子は、クロック信号生成部２６に接続されている。クロック信号生成部２６は、マルチプレクサ２２の入力端子に接続されている。また、マルチプレクサ２２のもう一方の入力端子は、遅延セル２４を介して、ＯＲ回路２０の出力端子に接続されている。また、マルチプレクサ２２の選択入力端子は、スキャンイネーブルピン１６に接続されている。なお、マルチプレクサ２２の選択入力端子には、マルチプレクサ２２の２つの入力端子のうち何れか一方を選択するための論理値が入力される。
【００２４】
スキャンイネーブルピン１６には、通常動作時は論理値”０”が入力され、スキャンテスト時は論理値”１”が入力される。
【００２５】
クロック信号生成部２６は、クロック信号を生成する。
【００２６】
マルチプレクサ２２は、マルチプレクサ２２の選択入力端子に論理値”０”が入力されると、クロック信号生成部２６で生成されたクロック信号を出力端子を介して出力する。また、マルチプレクサ２２は、マルチプレクサ２２の選択入力端子に論理値”１”が入力されると、遅延素子２４を介したＯＲ回路２０の出力端子からの信号を出力端子を介して出力する。
【００２７】
また、ＯＲ回路２０の出力端子は、ラッチ回路１２のクロック信号入力端子に接続されている。また、スキャンイネーブルピン１６は、各フリップフロップ回路１０のイネーブル信号入力端子に接続されている。
【００２８】
なお、このようなクロック信号供給回路１４は、半導体集積回路１を設計する際の配置配線工程終了前に設けることが可能である。
【００２９】
次に、本発明の半導体集積回路１の作用について説明する。
【００３０】
図２に示すように、マルチプレクサ２２は、スキャンイネーブルピン１６に通常動作を示す論理値”０”が入力されると、クロック信号生成部２６で生成されたクロック信号を各フリップフロップ回路１０のクロック信号入力端子に供給する（経路Ａ）。そして、各フリップフロップ回路１０は、イネーブル信号入力端子に通常動作を示す論理値”０”が入力されるので、データ入力端子に入力されたデータをクロック信号入力端子に入力されたクロック信号に同期させて、所定の回路（図示せず）に出力して通常動作を行う。
【００３１】
また、ＯＲ回路２０は、論理値”０”がインバータ１８で反転された論理値”１”が入力されるので、出力端子から論理値”１”を出力する。これにより、各ラッチ回路１２にはクロック信号生成部２６からのクロック信号が供給されないので、各ラッチ回路１２は、通常動作時には、動作しないように制御される。
【００３２】
また、図３に示すように、マルチプレクサ２２は、スキャンイネーブルピン１６にスキャンテストを示す論理値”１”が入力されると、クロック信号生成部２６で生成されたクロック信号を、ＯＲ回路２０、遅延セル２４を経由して、各フリップフロップ回路１０のクロック信号入力端子に供給する（経路Ｂ）。また、ＯＲ回路２０は、クロック信号生成部２６で生成されたクロック信号を各ラッチ回路１２のクロック信号入力端子に供給する（経路Ｃ）。そして、各フリップフロップ回路１０のイネーブル信号入力端子に、スキャンテストを示す論理値”１”が入力されるので、テストデータ入力端子に入力されたテストデータをクロック信号入力端子に入力されたクロック信号に同期させて、データ出力端子から出力する。各ラッチ回路１２は、前段のフリップフロップ回路１０からのテストデータをラッチして、後段のフリップフロップ回路１０に出力する。このような動作を順次繰り返すことによってスキャンテストを行う。
【００３３】
以上、説明したように、本発明に係る半導体集積回路１によれば、クロック信号供給回路１４によって、通常動作時には各フリップフロップ回路１０に遅延セル２４を介さずにクロック信号が供給され、スキャンテスト時には各ラッチ回路１２にクロック信号が供給されると共に各フリップフロップ回路１０に遅延セル２４を経由したことにより遅延されたクロック信号が供給される。これにより、各フリップフロップ回路１０及び各ラッチ回路１２のホールド時間に関する設計保証が可能となる。
【００３４】
また、このようなクロック信号供給回路１４は、各フリップフロップ回路１０や各ラッチ回路１２へのクロック供給経路であるクロックツリー合成前に半導体集積回路１において設計することが可能である。これにより、クロックツリー合成後に遅延セルを挿入する場合には多大な日数を必要とするが、その場合と比較して設計期間を大幅に短縮することが可能となる。
【００３５】
また、通常動作時に、遅延セル２４を介さずに各フリップフロップ回路１０にクロック信号が供給されるので、フリップフロップ回路１０間のスキューが増加することはなく、通常動作のタイミングを悪化させることはないので、クロックツリー合成後に遅延セルを挿入した場合と比較して悪化したタイミングを改善する工程が必要とならない。
【００３６】
従って、本発明に係る半導体集積回路によれば、ホールド時間に関する設計保証、及びホールド保証遅延素子の挿入に伴う設計工程の削減が可能となる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施の形態に係る半導体集積回路の構成を示す概略図である。
【図２】本発明の実施の形態に係る半導体集積回路の通常動作時のクロック経路を示す図である。
【図３】本発明の実施の形態に係る半導体集積回路のスキャンテスト時のクロック経路を示す図である。
【図４】従来の半導体集積回路の構成を示す概略図である。
【図５】遅延セルが挿入されたことによりラッチのホールド保証がされることを示す図である。
【符号の説明】
【００３８】
１０      フリップフロップ回路
１２      ラッチ回路
１４      クロック信号供給回路
１６      スキャンイネーブルピン
１８      インバータ
２０      ＯＲ回路
２２      マルチプレクサ
２４      遅延セル
２６      クロック信号生成部
【図１】
2008172156.tif 000003
【図２】
2008172156.tif 000004
【図３】
2008172156.tif 000005
【図４】
2008172156.tif 000006
【図５】
2008172156.tif 000007