(57)【要約】【課題】テストが容易な半導体装置を提供する。【解決手段】半導体装置は、動作クロック信号が供給される入力端子Ｐｅｔと、動作クロック信号に同期する複数のＦ／Ｆ回路ＦＦを備える処理ユニットＣＰＵと、処理ユニットＣＰＵの出力信号が伝達される出力端子Ｐｏ１〜Ｐｏｎと、処理ユニットと出力端子との間に結合された出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐと、テスト信号が供給される入力端子Ｐｄｉと、テストクロック信号が供給される入力端子Ｐｃｋと、信号配線Ｌ２を介してテストクロック信号が伝達される出力端子Ｐｃｏと、出力段Ｆ／Ｆ回路が同期するクロック信号と出力段Ｆ／Ｆ回路の入力とを選択する第１選択回路ＴＳＯ−１〜ＴＳＯ−ｐを備える。【選択図】図１
2016170064.tif 000002
【特許請求の範囲】
【請求項１】
動作クロック信号が供給される第１外部端子と、
論理回路と、それぞれ前記動作クロック信号に同期して動作する複数のフリップフロップ回路を備える処理ユニットと、
前記処理ユニットにより形成された出力信号が伝達される第２外部端子と、
前記処理ユニットと前記第２外部端子との間に結合された出力段フリップフロップ回路と、
テスト信号が供給される第３外部端子と、
テストクロック信号が供給される第４外部端子と、
信号配線を介して、前記テストクロック信号が伝達される第５外部端子と、
前記出力段フリップフロップ回路が同期するクロック信号と、前記出力段フリップフロップ回路の入力とを選択する第１選択回路と、
を備え、
前記第１選択回路は、前記処理ユニットにより形成された出力信号を、前記第２外部端子へ伝達するとき、前記出力段フリップフロップ回路に、前記出力信号を入力し、前記動作クロック信号を同期クロック信号として供給し、テストのとき、前記出力段フリップフロップ回路に、前記テスト信号を入力し、前記テストクロック信号を同期クロック信号として供給する、半導体装置。
【請求項２】
請求項１に記載の半導体装置において、
前記半導体装置は、前記第２外部端子、前記出力段フリップフロップ回路および前記第１選択回路のそれぞれを、複数個備え、
前記半導体装置は、
複数の出力段フリップフロップ回路と複数の第２外部端子との間に結合され、出力経路選択信号に従って、前記複数の出力段フリップフロップ回路のそれぞれと、前記複数の第２外部端子のそれぞれとの結合経路を形成する出力経路選択回路と、
テストのとき、前記出力経路選択信号を形成する第２選択回路と、
を備える、半導体装置。
【請求項３】
請求項２に記載の半導体装置において、
前記半導体装置は、テストのとき、信号が供給される第６外部端子を備え、前記第２選択回路は、前記第６外部端子に供給される信号に従って、前記出力経路選択信号を形成する、半導体装置。
【請求項４】
請求項３に記載の半導体装置において、
テストのとき、前記複数の出力段フリップフロップ回路が直列的に接続されるように、前記複数の第１選択回路のそれぞれは、対応する出力段フリップフロップ回路に、直列的に接続される前段の出力段フリップフロップ回路の出力を入力として選択する、半導体装置。
【請求項５】
請求項４に記載の半導体装置において、
前記半導体装置は、
それぞれ入力信号が供給される複数の第７外部端子と、
前記複数の第７外部端子と前記処理ユニットとの間に結合された複数の入力段フリップフロップ回路と、
前記複数の入力段フリップフロップ回路の出力が伝達される第８外部端子と、
前記複数の入力段フリップフロップ回路が同期するクロック信号を選択する第３選択回路と、
前記複数の入力段フリップフロップ回路と前記複数の第７外部端子との間に結合され、入力経路選択信号に従って、前記複数の入力段フリップフロップ回路のそれぞれと、前記複数の第７外部端子のそれぞれとの結合経路を形成する入力経路選択回路と、
テストのとき、前記入力経路選択信号を形成する第４選択回路と、
を備え、
前記第３選択回路は、前記処理ユニットが、前記複数の入力信号を処理するとき、前記複数の入力段フリップフロップ回路の同期クロック信号として、前記動作クロック信号を選択し、テストのとき、前記複数の入力段フリップフロップ回路の同期クロック信号として、前記テストクロック信号を選択し、前記第４選択回路は、前記第６外部端子に供給される信号に従って、前記入力経路選択信号を形成する、半導体装置。
【請求項６】
請求項５に記載の半導体装置において、
前記半導体装置は、前記処理ユニットが動作する処理モードと、テストモードとを備え、前記テストモードにおいて、前記第１選択回路および前記第３選択回路のうちの少なくとも一つが動作する、半導体装置。
【請求項７】
動作クロック信号が供給される第１外部端子と、
入力信号が供給される第２外部端子と、
論理回路と、それぞれ前記動作クロック信号に同期して動作する複数のフリップフロップ回路を備える処理ユニットと、
テストクロック信号が供給される第３外部端子と、
前記第２外部端子と前記処理ユニットとの間に結合された入力段フリップフロップ回路と、
前記入力段フリップフロップ回路の出力が伝達される第４外部端子と、
前記入力段フリップフロップ回路が同期するクロック信号を選択する第１選択回路と、
を備え、
前記第１選択回路は、前記処理ユニットが、前記入力信号を処理するとき、前記入力段フリップフロップ回路の同期クロック信号として、前記動作クロック信号を選択し、テストのとき、前記入力段フリップフロップ回路の同期クロック信号として、前記テストクロック信号を選択する、半導体装置。
【請求項８】
請求項７に記載の半導体装置において、
前記半導体装置は、前記第２外部端子、前記入力段フリップフロップ回路および前記第１選択回路のそれぞれを、複数個備え、
前記半導体装置は、
複数の第２外部端子と複数の入力段フリップフロップ回路との間に結合され、入力経路選択信号に従って、前記複数の第２外部端子と前記複数の入力段フリップフロップ回路との間の結合経路を形成する入力経路選択回路と、
テストのとき、前記入力経路選択信号を形成する第２選択回路と、
を備える、半導体装置。
【請求項９】
請求項８に記載の半導体装置において、
前記入力段フリップフロップ回路の出力を前記第４外部端子へ伝達するとき、前記複数の入力段フリップフロップ回路が直列的に接続されるように、前記第１選択回路は、対応する入力段フリップフロップ回路の入力として、直列的に接続される前段の入力段フリップフロップ回路の出力を選択する、半導体装置。
【請求項１０】
動作クロック信号が供給される第１外部端子と、
テストクロック信号が供給される第２外部端子と、
論理回路と、それぞれ前記動作クロック信号に同期して動作する複数のフリップフロップ回路を備え、第１出力信号および第２出力信号を形成する処理ユニットと、
前記処理ユニットが、前記第１出力信号および第２出力信号を形成するとき、前記第１出力信号および前記第２出力信号が伝達される第３外部端子および第４外部端子と、
前記処理ユニットと前記第３外部端子との間に結合された第１出力段フリップフロップ回路と、
前記処理ユニットと前記第４外部端子との間に結合された第２出力段フリップフロップ回路と、
前記第１出力段フリップフロップ回路に結合され、前記第１出力段フリップフロップ回路が同期する同期クロック信号と、前記第１出力段フリップフロップ回路の入力とを選択する第１選択回路と、
前記第２出力段フリップフロップ回路に結合され、前記第２出力段フリップフロップ回路が同期する同期クロック信号と、前記第２出力段フリップフロップ回路の入力とを選択する第２選択回路と、
を備え、
前記第１選択回路および前記第２選択回路は、前記処理ユニットが前記第１出力信号および前記第２出力信号を形成するとき、前記同期クロック信号として、前記動作クロック信号を選択し、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路の入力として、前記第１出力信号および前記第２出力信号を選択し、
前記第１選択回路および前記第２選択回路は、テストのとき、前記同期クロック信号として、前記テストクロック信号を選択し、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路のそれぞれの出力が、前記テストクロック信号に同期して変化するように、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路の入力として、それぞれの出力を選択する、半導体装置。
【請求項１１】
請求項１０に記載の半導体装置において、
前記半導体装置は、前記第３外部端子と前記第４外部端子に結合され、テストのとき、前記第３外部端子における信号の変化と前記第４外部端子における信号の変化との間の時間差に応じた値を出力するテスト回路を備える、半導体装置。
【請求項１２】
請求項１１に記載の半導体装置において、
前記テスト回路は、容量回路と、前記容量回路の出力をデジタル信号へ変換するアナログ／デジタル変換回路とを備え、前記容量回路は、前記第３外部端子における信号と前記第４外部端子における信号とが、異なっている期間、放電により、その出力が変化する、半導体装置。
【請求項１３】
請求項１１に記載の半導体装置において、
前記テスト回路は、カウンタ回路を備え、前記第３外部端子における信号と前記第４外部端子における信号とが、異なっている期間、前記カウンタ回路によりカウント動作を行う、半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、特に複数のフリップフロップ回路を備えた半導体装置に関する。
【背景技術】
【０００２】
半導体装置は、種々のテストが実施されてから、出荷される。テストの一つとして、半導体装置の外部端子（外部入力端子、外部出力端子または外部入出力端子）の動作タイミングをテストする動作タイミングテストがある。この動作タイミングテストにおいては、例えば外部出力端子から出力される出力信号の遅延時間が、仕様を満たしているか否かが調べられる。
【０００３】
特許文献１には、同種の半導体装置に対して予め出力信号のタイミングが同じになるようにする技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２１７３９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
半導体装置に実施されるテストとしては、例えば、ファンクションテストとスキャンテストとがある。ここで、ファンクションテストは、半導体装置に搭載されている各種機能が、正しく動作するか否かを、主に調べるテストであり、スキャンテストは、半導体装置内での結線が、正しいか否かを、主に調べるテストである。
【０００６】
動作タイミングテストは、ファンクションテストに含まれている。動作タイミングテストを含めたファンクションテストを実施するために、予めテストパターンを作成する。作成したテストパターンを発生するための、例えばプログラムを半導体装置に格納し、半導体装置を動作させることにより、例えば出力される出力信号と期待値とを比較することにより、遅延時間等のタイミングも含めて各種機能が正しく動作しているか否かを調べることが可能となる。この場合、各種機能が正しく動作しているか否かを調べるために、各種機能の動作仕様を把握して、各種機能が正しく動作しているか否かを判定することが可能なテストパターンを作成する必要がある。
【０００７】
本発明者らが、検討したところでは、動作タイミングテストに要するテスト時間は、ファンクションテストに要するテスト時間のうち、およそ５０％の時間に達する場合もある。同様に、動作タイミングテスト用のテストパターンを作成するのに要する時間も、ファンクションテスト用のテストパターンを作成するのに要する時間のうち、およそ５０％の時間に達する場合がある。これは、動作タイミングテスト用のテストパターンを作成する場合にも、各種機能の動作仕様を把握し、把握した上で、外部端子からの出力信号または入力信号の遅延時間が、仕様を満たすか否かを判定することが可能なパターンを作成する必要があり、それを半導体装置内で発生することが可能なプログラムを作成する必要があるためである。
【０００８】
一方、動作タイミングテストにおいては、例示したように、出力信号の遅延時間が、仕様を満たしているか否かが調べられる。テストを実施する半導体装置が、動作クロック信号に同期して動作している場合、半導体装置に動作クロック信号に同期したクロック信号を出力する外部端子を設け、この外部端子から出力されるクロック信号を基にして、出力信号の遅延時間を調べることが可能である。しかしながら、半導体装置の大規模化が進むにつれて、半導体装置におけるタイミング設計が困難になってきている。すなわち、半導体装置には、論理回路と複数のフリップフロップ回路（以下、Ｆ／Ｆ回路とも称する）が設けられるが、大規模化が進むにつれて、Ｆ／Ｆ回路の数が膨大となり、これらのＦ／Ｆ回路間を同期させることが困難になってきている。そのため、これらのＦ／Ｆ回路に同期した動作クロック信号を得ることが困難になっており、動作クロック信号に同期したクロック信号を外部端子から出力することが困難になってきている。
【０００９】
特許文献１には、同種の半導体装置において、予め出力信号のタイミングを同じにすることが示されているが、動作タイミングテスト用のテストパターンについては、認識されていない。
【００１０】
そのほかの課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
一実施の形態において、半導体装置は、動作クロック信号が供給される第１外部端子と、論理回路と、それぞれ動作クロック信号に同期して動作する複数のＦ／Ｆ回路を備える処理ユニットと、処理ユニットにより形成された出力信号が伝達される第２外部端子を備えている。また、半導体装置は、処理ユニットと第２外部端子との間に結合された出力段Ｆ／Ｆ回路と、テスト信号が供給される第３外部端子と、テストクロック信号が供給される第４外部端子と、信号配線を介して、テストクロック信号が伝達される第５外部端子を備えている。さらに、半導体装置は、出力段Ｆ／Ｆ回路が同期するクロック信号と、出力段Ｆ／Ｆ回路の入力とを選択する第１選択回路を備えている。ここで、第１選択回路は、処理ユニットにより形成された出力信号を、第２外部端子へ伝達するとき、出力段Ｆ／Ｆ回路に、出力信号を入力し、動作クロック信号を同期クロック信号として供給し、テストのとき、出力段Ｆ／Ｆ回路に、テスト信号を入力し、テストクロック信号を同期クロック信号として供給する。
【００１２】
テストのとき、第１選択回路によって、出力段Ｆ／Ｆ回路には、テスト信号が入力され、出力段Ｆ／Ｆ回路は、テストクロック信号に同期して動作する。そのため、第２外部端子に伝達されたテスト信号と、第５外部端子に伝達されたテストクロック信号との間の遅延時間を調べることにより、半導体装置の動作タイミングテストを容易に実施することが可能となる。
【００１３】
また、他の一実施の形態において、半導体装置は、動作クロック信号が供給される第１外部端子と、入力信号が供給される第２外部端子と、論理回路と、それぞれ動作クロック信号に同期して動作する複数のＦ／Ｆ回路を備える処理ユニットを備えている。また、半導体装置は、テストクロック信号が供給される第３外部端子と、第２外部端子と処理ユニットとの間に結合された入力段Ｆ／Ｆ回路と、入力段Ｆ／Ｆ回路の出力が伝達される第４外部端子を備えている。さらに、半導体装置は、入力段Ｆ／Ｆ回路が同期するクロック信号を選択する第１選択回路を備えている。ここで、第１選択回路は、処理ユニットが、入力信号を処理するとき、入力段Ｆ／Ｆ回路の同期クロック信号として、動作クロック信号を選択し、テストのとき、入力段Ｆ／Ｆ回路の同期クロック信号として、テストクロック信号を選択する。
【００１４】
テストのとき、第１選択回路は、入力段Ｆ／Ｆ回路の同期クロック信号として、テストクロック信号を選択する。これにより、入力段Ｆ／Ｆ回路は、テストクロック信号に同期して、入力信号に応じた信号を取り込む。第４外部端子に伝達された入力段Ｆ／Ｆ回路の出力を調べることにより、第２外部端子に供給された入力信号に応じた信号が、テストクロック信号に同期して、入力段Ｆ／Ｆ回路に取り込まれたか否かの判定を容易に実施することが可能となる。
【００１５】
さらに、他の実施の形態において、半導体装置は、動作クロック信号が供給される第１外部端子と、テストクロック信号が供給される第２外部端子と、論理回路と、それぞれ動作クロック信号に同期して動作する複数のフリップフロップ回路を備え、第１出力信号および第２出力信号を形成する処理ユニットを備える。また、半導体装置は、処理ユニットが、第１出力信号および第２出力信号を形成するとき、第１出力信号および第２出力信号が伝達される第３外部端子および第４外部端子と、処理ユニットと第３外部端子との間に結合された第１出力段Ｆ／Ｆ回路と、処理ユニットと第４外部端子との間に結合された第２出力段Ｆ／Ｆ回路を備える。さらに、半導体装置は、第１出力段Ｆ／Ｆ回路に結合され、第１出力段Ｆ／Ｆ回路が同期する同期クロックと、第１出力段Ｆ／Ｆ回路の入力とを選択する第１選択回路と、第２出力段Ｆ／Ｆ回路に結合され、第２出力段Ｆ／Ｆ回路が同期する同期クロックと、第２出力段Ｆ／Ｆ回路の入力とを選択する第２選択回路を備える。
【００１６】
ここで、第１選択回路および第２選択回路は、処理ユニットが第１出力信号および第２出力信号を形成するとき、同期クロック信号として、動作クロックを選択し、第１出力段Ｆ／Ｆ回路および第２出力段Ｆ／Ｆ回路の入力として、第１出力信号および第２出力信号を選択する。また、第１選択回路および第２選択回路は、テストのとき、同期クロック信号として、テストクロック信号を選択し、第１出力段Ｆ／Ｆ回路および第２出力段Ｆ／Ｆ回路のそれぞれの出力が、テストクロック信号に同期して変化するように、第１出力段Ｆ／Ｆ回路および第２出力段Ｆ／Ｆ回路の入力として、それぞれの出力を選択する。
【００１７】
テストのとき、第１選択回路および第２選択回路は、第１出力段Ｆ／Ｆ回路および第２出力段Ｆ／Ｆ回路が、テストクロック信号に同期して変化する出力を形成するように制御する。これにより、第３外部端子に伝達された第１出力段Ｆ／Ｆ回路の出力と、第４外部端子に伝達された第２出力段Ｆ／Ｆ回路の出力との間の時間差を調べることにより、動作タイミングテストを容易に実施することが可能となる。また、この実施の形態においては、テストのときに、第１出力段Ｆ／Ｆ回路および第２出力段Ｆ／Ｆ回路は、テストクロック信号に同期して、論理値（“１”、“０”）が反転するテスト信号（テストパターン）を形成する。そのため、テストのときに、テスト信号を半導体装置へ供給しなくてもよい。
【発明の効果】
【００１８】
一実施の形態によれば、テストが容易な半導体装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】実施の形態１に係わる半導体装置の構成を示すブロック図である。
【図２】実施の形態１に係わる半導体装置の出力系の構成を示すブロック図である。
【図３】実施の形態１に係わる出力段テスト回路、出力段Ｆ／Ｆ回路、入力段テスト回路および入力段Ｆ／Ｆ回路の構成を示すブロック図である。
【図４】実施の形態１に係わる半導体装置の入力系の構成を示すブロック図である。
【図５】実施の形態１に係わる半導体装置の動作を示すフロチャート図である。
【図６】実施の形態１に係わる半導体装置の動作を示すフロチャート図である。
【図７】実施の形態１の変形例に係わる出力段テスト回路、出力段Ｆ／Ｆ回路、入力段テスト回路および入力段Ｆ／Ｆ回路の構成を示すブロック図である。
【図８】（Ａ）〜（Ｅ）は、実施の形態２に係わる半導体装置の動作を示す波形図である。
【図９】（Ａ）〜（Ｆ）は、実施の形態２に係わる半導体装置の動作を示す波形図である。
【図１０】（Ａ）〜（Ｇ）は、実施の形態２に係わる半導体装置の動作を示す波形図である。
【図１１】実施の形態３に係わる半導体装置の構成を示すブロック図である。
【図１２】実施の形態３に係わる出力段テスト回路および出力段Ｆ／Ｆ回路の構成を示すブロック図である。
【図１３】（Ａ）〜（Ｄ）は、実施の形態３に係わる動作を説明するための波形図である。
【図１４】実施の形態３の変形例１に係わるテスト回路の構成を示すブロック図である。
【図１５】実施の形態３の変形例１の動作を説明するための波形図である。
【図１６】実施の形態３の変形例２に係わるテスト回路の構成を示すブロック図である。
【図１７】（Ａ）および（Ｂ）は、実施の形態３の変形例２の動作を説明するための波形図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部分には原則として同一の符号を付し、その繰り返しの説明は、原則として省略する。
【００２１】
本発明者らは、テストが容易な半導体装置を提供するために、ファンクションテストを、動作タイミングテストと、それ以外のテストに分離することを考えた。すなわち、半導体装置を、半導体装置の機能を達成する処理ユニットと、処理ユニットと半導体装置の外部端子との間を結合する入力・出力回路とに分ける。分けた入力・出力回路に対して、動作タイミングテストを実施し、処理ユニットに対して、ファンクションテストを実施する。この場合、処理ユニットに対して実行するファンクションテストは、処理ユニットが達成する機能動作を把握して作成する。このようにすることにより、動作タイミングテストの際に用いるテストパターンは、処理ユニットによって達成する機能を把握しなくても、作成することが可能となる。
【００２２】
処理ユニットによって達成する機能は、例えば半導体装置のユーザによって定められる。言い換えるならば、半導体装置毎に、処理ユニットによって達成する機能が変わる。このように、処理ユニットにより達成する機能が変わっても、動作タイミングテスト用のテストパターンは、処理ユニットの機能を把握しなくても作成することが可能であるため、動作タイミングテストに要する時間の短縮化を図ることが可能となる。
【００２３】
以下で説明する実施の形態においては、処理ユニットが、マイクロコントローラ（以下、プロセッサとも称する）を有する場合を例として、説明する。この場合、処理ユニットに対するファンクションテスト用のテストパターンは、処理ユニット内のプロセッサがプログラムを実行することにより達成される。すなわち、テストパターンを発生するようなプログラムを作成することが必要とされる。これに対して、動作タイミングテスト用のテストパターンは、テストの際に、半導体装置の外部に設けられているテスターから、半導体装置へ与えることになる。そのため、処理ユニット内のプロセッサの構成が変わっても、動作タイミングテストを実施することが可能である。
【００２４】
（実施の形態１）
＜半導体装置の全体構成＞
先ず、半導体装置の全体構成を、図１を用いて説明する。図１は、半導体装置の構成を示すブロック図である。図１において、ＣＨＰは、半導体装置を示している。半導体装置ＣＨＰは、半導体チップと、半導体チップを封止したパッケージとを有している。半導体チップには、複数の回路ブロックが、周知の半導体製造技術によって、形成され、パッケージに封止されている。図１では、回路ブロックが、ボックスとして示されている。また、パッケージには、複数の外部端子が設けられており、これらの外部端子と、半導体チップに形成された回路ブロックとの間は、ワイヤ等により電気的に接続されている。半導体装置ＣＨＰは、上記したように複数の外部端子を有しているが、図１には、入力外部端子（以下、入力端子とも称する）Ｐｄｉ、Ｐｃｔ、Ｐｅｔ、Ｐｃｋ、Ｐｉ１〜Ｐｉｎおよび出力外部端子（以下、出力端子とも称する）Ｐｃｏ、Ｐｄｏ、Ｐｏ１〜Ｐｏｎのみが示されている。なお、ここでは、パッケージに１個の半導体チップが封止されている例が示されているが、勿論複数の半導体チップが１個のパッケージに封止されていてもよい。
【００２５】
ここで、入力端子Ｐｅｔは、半導体装置ＣＨＰを動作させるための外部動作クロック信号（以下、単に動作クロック信号とも称する）Ｅｘ−ＣＬＫが供給される外部端子であり、入力端子Ｐｄｉ、Ｐｃｔ、Ｐｃｋおよび出力端子Ｐｃｏ、Ｐｄｏは、テストの際に用いられる外部端子を示している。すなわち、入力端子Ｐｄｉは、テスト信号Ｔ−ＤＩが供給される外部端子を示し、入力端子Ｐｃｔは、外部テスト制御信号（以下、単にテスト制御信号とも称する）Ｔ−ＣＴＬが供給される入力端子を示している。また、入力端子Ｐｃｋは、外部テストクロック信号（以下、単にテストクロック信号とも称する）Ｔ−ＣＬＫが供給される外部端子を示しており、出力端子Ｐｃｏは、テストクロック信号Ｔ−ＣＬＫが伝達され、伝達されたテストクロック信号Ｔ−ＣＬＫを外部テストクロック信号（以下、単にテストクロック信号とも称する）Ｔ−ＣＫＯとして出力する外部端子を示している。さらに、出力端子Ｐｄｏは、出力信号Ｔ−ＤＯを出力する外部端子を示している。
【００２６】
図１において、ＣＰＵは、プロセッサを示している。本明細書においては、ユーザによって半導体装置ＣＨＰの機能を定められる処理ユニットが、プロセッサＣＰＵの場合を例として説明するが、勿論これに限定されるものではない。プロセッサＣＰＵは、プログラムを格納するメモリＥＲＯＭと、論理回路ＬＧと、複数のＦ／Ｆ回路ＦＦを有している。論理回路ＬＧと複数のＦ／Ｆ回路ＦＦにより、メモリＥＲＯＭに格納されているプログラムに従った処理を実行する処理回路が構成されている。この実施の形態においては、上記した複数のＦ／Ｆ回路ＦＦのそれぞれは、内部動作クロック信号ＯＣＬＫに同期して動作する。すなわち、プロセッサＣＰＵは、内部動作クロック信号ＯＣＬＫに同期して動作することになる。また、メモリＥＲＯＭは、揮発性メモリであってもよいし、電気的に書換可能な不揮発性メモリであってもよい。
【００２７】
同図において、ＦＦＩは、入力初段Ｆ／Ｆ回路を示しており、ＦＦＯは、出力最終段Ｆ／Ｆ回路を示している。入力初段Ｆ／Ｆ回路ＦＦＩは、複数の入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐと入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐを備えている。それぞれの入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、１個の入力Ｆ／Ｆ回路で構成してもよいし、複数の入力Ｆ／Ｆ回路で構成してもよい。入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐと１対１に対応している。特に制限されないが、この実施の形態１において、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐを構成する入力Ｆ／Ｆ回路は、互いに同じ構成を有しており、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐも互いに類似した構成を有している。
【００２８】
入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐのそれぞれは、入力端子Ｐｃｔ、Ｐｄｉを介して供給される外部テスト制御信号Ｔ−ＣＴＬ、テスト信号Ｔ−ＤＩによって制御される。すなわち、動作タイミングテストのとき、入力初段Ｆ／Ｆ回路ＦＦＩに含まれている入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐから、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって指定された入力段Ｆ／Ｆ回路が選択され、選択された入力段Ｆ／Ｆ回路には、同期クロック信号として内部テストクロック信号ＴＳＣＬＫが供給される。これに対して、処理ユニットであるプロセッサＣＰＵが動作している通常動作のときには、入力段Ｆ／Ｆ回路に、同期クロック信号として、プロセッサＣＰＵと同じ内部動作クロック信号ＯＣＬＫが供給される。
【００２９】
例えば、入力段Ｆ／Ｆ回路ＦＦＩ１について述べると、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって、入力段Ｆ／Ｆ回路ＦＦＩ１が、指定されている場合、この入力段Ｆ／Ｆ回路ＦＦＩ１に対応する入力段テスト回路ＴＳＩ−１は、入力段Ｆ／Ｆ回路ＦＦＩ１の同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを供給する。これに対して、通常動作のとき、対応する入力段テスト回路ＴＳＩ−１は、入力段Ｆ／Ｆ回路ＦＦＩ１に、同期クロック信号として内部動作クロック信号ＯＣＬＫを供給する。
【００３０】
言い換えるならば、入力段テスト回路は、対応する入力段Ｆ／Ｆ回路へ供給される同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを用いるか、内部動作クロック信号ＯＣＬＫを用いるかを選択する選択回路と見なすことができる。
【００３１】
入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐのそれぞれの出力は、プロセッサＣＰＵの入力に接続されている。また、動作タイミングテストの結果を出力する際には、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続されるように、対応する入力段テスト回路によって制御される。
【００３２】
すなわち、動作タイミングテストの結果を出力するとき、入力段テスト回路は、対応する入力段Ｆ／Ｆ回路の入力を、直列接続される入力段Ｆ／Ｆ回路において前段に相当する入力段Ｆ／Ｆ回路の出力に接続する。例えば、入力段テスト回路ＴＳＩ−２は、対応する入力段Ｆ／Ｆ回路ＦＦＩ２の入力を、前段の入力段Ｆ／Ｆ回路ＦＦＩ１の出力に接続する。この入力段Ｆ／Ｆ回路ＦＦＩ１の入力は、対応する入力段テスト回路ＴＳＩ−１によって、動作タイミングテストの結果を出力するときには、入力端子Ｐｄｉに接続され、入力段Ｆ／Ｆ回路ＦＦＩｐの出力は、出力端子Ｐｄｏに接続される。動作タイミングテストの結果を出力するとき、入力段Ｆ／Ｆ回路は、直列的に接続されるため、シフトレジスタを構成すると見なすことができる。この場合、シフト動作は、内部テストクロック信号ＴＳＣＬＫに同期して行われる。言い換えるならば、入力段テスト回路は、対応する入力段Ｆ／Ｆ回路の入力を選択する選択回路と見なすこともできる。
【００３３】
図１において、ＩＲＳＬは、入力経路選択回路を示している。入力経路選択回路ＩＲＳＬと入力初段Ｆ／Ｆ回路ＦＦＩを介して、入力端子Ｐｉ１〜Ｐｉｎは、プロセッサＣＰＵに結合されている。入力経路選択回路ＩＲＳＬは、入力経路選択信号に従って、入力端子Ｐｉ１〜Ｐｉｎと入力初段Ｆ／Ｆ回路ＦＦＩとの間を結合する経路を選択する。すなわち、入力経路選択信号によって指示された入力経路が、入力端子と入力段Ｆ／Ｆ回路との間に形成される。例えば、入力経路選択信号によって、入力端子Ｐｉ１と入力段Ｆ／Ｆ回路ＦＦＩ２との間に、入力経路が形成される。このようにすることにより、任意の入力端子を任意の入力段Ｆ／Ｆ回路に接続することが可能となる。
【００３４】
入力経路選択信号は、入力経路選択制御回路ＲＳＣ−Ｉおよび入力経路テスト回路ＴＳＴ−Ｉにより形成される。
【００３５】
入力経路選択制御回路ＲＳＣ−Ｉは、半導体装置ＣＨＰを通常動作させるとき、すなわち処理ユニットであるプロセッサＣＰＵによって、ユーザが定めた所定の処理を実施するとき、内部動作クロック信号ＯＣＬＫに同期して、入力経路選択信号を形成する。半導体装置ＣＨＰを通常動作させたとき、半導体装置ＣＨＰの入力端子Ｐｉ１〜Ｐｉｎのうちの所望の入力端子における入力信号が、プロセッサＣＰＵの所望の入力に伝達されるように、入力経路選択制御回路ＲＳＣ−Ｉは、ユーザによって設定される。すなわち、通常動作のときに、所望の入力端子における入力信号が、プロセッサＣＰＵの所望の入力に伝達されるような入力経路選択信号が、入力経路選択制御回路ＲＳＣ−Ｉによって形成されるように、ユーザによって入力経路制御回路ＲＳＣ−Ｉは構成される。例えば、通常動作のとき、所望の入力経路が形成されるように、ユーザによってプログラムが作成され、メモリＥＲＯＭに格納される。通常動作のとき、当該プログラムを、プロセッサＣＰＵが、実行することにより、プロセッサＣＰＵによって入力経路選択制御回路ＲＳＣ−Ｉが制御され、所望の入力経路が形成される。
【００３６】
これに対して、入力経路テスト回路ＴＳＴ−Ｉは、動作タイミングテストのとき、内部テストクロック信号ＴＳＣＬＫに同期して、入力経路選択信号を形成する。この場合には、入力経路テスト回路ＴＳＴ−Ｉにより形成される入力経路選択信号は、入力端子Ｐｃｔに供給される外部テスト制御信号Ｔ−ＣＴＬによって定められる。すなわち、外部テスト制御信号Ｔ−ＣＴＬの値によって、入力経路選択回路ＩＲＳＬは、入力端子と入力段Ｆ／Ｆ回路との間に経路を形成する。
【００３７】
入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐのそれぞれの出力は、プロセッサＣＰＵの入力に接続されている。半導体装置ＣＨＰを通常動作させるとき、入力経路選択信号により、任意の入力端子に供給されている入力信号を、プロセッサＣＰＵの所望の入力に伝達することが可能となる。また、動作タイミングテストのときには、外部テスト制御信号Ｔ−ＣＴＬに従った入力経路選択信号が形成されるため、所望の入力端子における入力信号を、所望の入力段Ｆ／Ｆ回路の入力へ伝達することが可能となる。
【００３８】
出力最終段Ｆ／Ｆ回路ＦＦＯも、複数の出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐと、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐを備えている。ここでも、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐのそれぞれは、１個の出力Ｆ／Ｆ回路で構成してもよいし、複数の出力Ｆ／Ｆ回路で構成してもよい。出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐは、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐと１対１に対応している。特に制限されないが、この実施の形態１において、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐを構成する出力Ｆ／Ｆ回路は、互いに同じ構成を有しており、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐも互いに類似した構成を有している。
【００３９】
出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐのそれぞれは、動作タイミングテストのとき、テスト信号Ｔ−ＤＩ、テスト制御信号Ｔ−ＣＴＬによって制御される。すなわち、動作タイミングテストのとき、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐは、出力最終段Ｆ／Ｆ回路を構成する出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐのうち、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって指定されている出力段Ｆ／Ｆ回路を選択する。選択した出力段Ｆ／Ｆ回路には、入力端子Ｐｄｉからのテスト信号Ｔ−ＤＩが供給され、また選択した出力段Ｆ／Ｆ回路には、同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを供給する。これに対して、通常動作のときに、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐは、対応した出力段Ｆ／Ｆ回路の入力に、プロセッサＣＰＵからの出力信号を伝達し、同期クロック信号として内部動作クロック信号ＯＣＬＫを供給する。
【００４０】
出力段Ｆ／Ｆ回路ＦＦＯ１を例にして説明すると、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって、出力段Ｆ／Ｆ回路ＦＦＯ１が指定されている場合、動作タイミングテストのとき、対応する出力段テスト回路ＴＳＯ−１は、出力段Ｆ／Ｆ回路ＦＦＯ１の入力に、入力端子Ｐｄｉを介してテスト信号Ｔ−ＤＩを供給し、同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを供給する。これに対して、通常動作のとき、出力段テスト回路ＴＳＯ−１は、対応する出力段Ｆ／Ｆ回路ＦＦＯ１の入力に、プロセッサＣＰＵからの出力信号を伝達し、同期クロック信号として、内部動作クロック信号ＯＣＬＫを供給する。
【００４１】
動作タイミングテストのとき、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐは、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐによって、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続されるように制御される。すなわち、出力段Ｆ／Ｆ回路ＦＦＯ２〜ＦＦＯｐのそれぞれの入力は、直列的に接続されたとき、その前段に相当する出力段Ｆ／Ｆ回路の出力に接続される。出力段Ｆ／Ｆ回路ＦＦＯ２を例にすると、出力段Ｆ／Ｆ回路ＦＦＯ２の入力は、前段の出力段Ｆ／Ｆ回路ＦＦＯ１の出力に接続されるように、対応する出力段テスト回路ＴＳＯ−２によって制御される。なお、出力段Ｆ／Ｆ回路ＦＦＯｐの出力は、出力端子Ｐｄｏに接続される。これにより、動作タイミングテストのときには、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐによってシフトレジスタが構成されると見なすことができる。この場合、シフトレジスタのシフト動作は、内部テストクロック信号ＴＳＣＬＫに同期して行われる。
【００４２】
言い換えるならば、出力段テスト回路は、対応する出力段Ｆ／Ｆ回路の入力に供給される入力信号の選択と、対応する出力段Ｆ／Ｆ回路の同期クロック信号を選択する選択回路と見なすことができる。
【００４３】
出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐのそれぞれの出力は、出力経路選択回路ＯＲＳＬを介して、出力端子Ｐｏ１〜Ｐｏｎに結合されている。出力経路選択回路ＯＲＳＬは、入力経路選択回路ＩＳＲＬと同様に、出力経路選択信号に従って、出力端子Ｐｏ１〜Ｐｏｎと出力最終段Ｆ／Ｆ回路ＦＦＯとの間を結合する経路を選択する。すなわち、出力経路選択信号によって指示された出力経路が、出力端子と出力段Ｆ／Ｆ回路との間に形成される。例えば、出力経路選択信号によって、出力端子Ｐｏ１と出力段Ｆ／Ｆ回路ＦＦＩ２との間に、出力経路が形成される。このようにすることにより、任意の出力端子を任意の出力段Ｆ／Ｆ回路に接続することが可能となる。
【００４４】
出力経路選択信号は、出力経路選択制御回路ＲＳＣ−Ｏおよび出力経路テスト回路ＴＳＴ−Ｏにより形成される。
【００４５】
出力経路選択制御回路ＲＳＣ−Ｏは、半導体装置ＣＨＰを通常動作させるとき、内部動作クロック信号ＯＣＬＫに同期して、出力経路選択信号を形成する。半導体装置ＣＨＰを通常動作させたとき、半導体装置ＣＨＰの出力端子Ｐｏ１〜Ｐｏｎのうちの所望の出力端子に、プロセッサＣＰＵからの所望の出力信号が伝達されるように、出力経路選択制御回路ＲＳＣ−Ｏは、ユーザによって設定される。すなわち、通常動作のときに、所望の出力端子に、プロセッサＣＰＵからの所望の出力信号が伝達されるような出力経路選択信号が、出力経路選択制御回路ＲＳＣ−Ｏによって形成されるように、ユーザによって出力経路制御回路ＲＳＣ−Ｏは構成される。例えば、入力経路選択回路と同様に、プロセッサＣＰＵが、ユーザのプログラムを実行することにより、所望の出力経路が形成される。
【００４６】
これに対して、出力経路テスト回路ＴＳＴ−Ｏは、動作タイミングテストのとき、内部テストクロック信号ＴＳＣＬＫに同期して、出力経路選択信号を形成する。この場合、出力経路テスト回路ＴＳＴ−Ｏにより形成される出力経路選択信号は、入力端子Ｐｃｔに供給される外部テスト制御信号Ｔ−ＣＴＬによって定められる。すなわち、外部テスト制御信号Ｔ−ＣＴＬの値によって、出力経路選択回路ＯＲＳＬは、出力端子Ｐｏ１〜Ｐｏｎと出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐとの間に出力経路を形成する。
【００４７】
図１においては、図面が複雑になるのを避けるために、入力端子ＰｄｉおよびＰｃｔは、それぞれ１個の端子として示されているが、複数の端子であると理解されるべきである。また、入力端子Ｐｃｋと出力端子Ｐｃｏとの間は、信号配線Ｌ２により接続されている。入力端子Ｐｃｋに供給された外部テストクロック信号Ｔ−ＣＬＫは、内部テストクロック信号ＴＳＣＬＫとして、信号配線Ｌ２を伝搬し、出力端子Ｐｃｏへ伝わる。入力端子Ｐｅｔには、外部動作クロック信号Ｅｘ−ＣＬＫが供給される。外部動作クロック信号Ｅｘ−ＣＬＫは、入力端子Ｐｅｔを介して、クロック生成回路ＣＬＫＧに供給され、クロック生成回路ＣＬＫＧにおいて、外部動作クロック信号Ｅｘ−ＣＬＫに同期した内部動作クロック信号ＯＣＬＫが生成され、信号配線Ｌ１を介して、上記した回路ブロックに供給される。
【００４８】
上記した回路ブロックのうち、クロック生成回路ＣＬＫＧ、入力経路選択回路ＩＲＳＬ、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐ、入力経路選択制御回路ＲＳＣ−Ｉ、プロセッサＣＰＵ、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐ、信号配線Ｌ１、出力経路選択回路ＯＲＳＬおよび出力経路制御回路ＲＳＣ−Ｏは、ユーザが、この半導体装置ＣＨＰにより所望の機能を達成するために、半導体装置ＣＨＰに設けたユーザ回路と見なすことができる。同様に、外部端子Ｐｉ１〜Ｐｉｎ、Ｐｅｔ、Ｐｏ１〜Ｐｏｎおよび信号配線Ｌ１も、ユーザ回路の一部であると見なすことができる。これに対して、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐ（第１選択回路）、出力経路テスト回路ＴＳＴ−Ｏ（第２選択回路）、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐ（第３選択回路または第１選択回路）および入力経路テスト回路ＴＳＴ−Ｉ（第４選択回路または第２選択回路）は、動作タイミングテストのために追加された回路ブロックであると見なすことができる。また、信号配線Ｌ２および外部端子Ｐｄｉ、Ｐｃｔ、Ｐｃｋ、Ｐｃｏ、Ｐｄｏも、動作タイミングテストのために追加された要素であると見なすことができる。
【００４９】
＜動作概要＞
＜＜通常動作＞＞
入力経路選択制御回路ＲＳＣ−Ｉにより形成された経路選択信号によって、入力経路選択回路ＩＲＳＬは、入力端子Ｐｉ１〜Ｐｉｎと入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐとの間に入力経路を形成する。これにより、例えば入力端子Ｐｉ１〜Ｐｉｎのそれぞれが、ユーザが所望している入力段Ｆ／Ｆ回路の入力に接続される。同様に、出力経路選択制御回路ＲＳＣ−Ｏにより形成された経路選択信号によって、出力経路選択回路ＯＲＳＬは、出力端子Ｐｏ１〜Ｐｏｎと出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐとの間に出力経路を形成する。これにより、例えば出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｎのそれぞれの出力信号が、ユーザが所望している出力端子Ｐｏ１〜Ｐｏｎへ伝達されるようになる。
【００５０】
入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、内部動作クロック信号ＯＣＬＫに同期して、入力端子Ｐｉ１〜Ｐｉｎに供給されている入力信号に応じた信号を取り込み、出力する。入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐから出力された出力信号は、プロセッサＣＰＵに入力される。プロセッサＣＰＵは、入力した入力段Ｆ／Ｆ回路からの出力信号に対して、メモリＥＲＯＭに格納されているプログラムに従って処理を実施する。このときの処理において、内部動作クロック信号ＯＣＬＫに同期した複数のＦ／Ｆ回路ＦＦが用いられるため、プロセッサＣＰＵは、内部動作クロック信号ＯＣＬＫに同期して処理を実施することになる。
【００５１】
プロセッサＣＰＵにおいて実施された処理により、プロセッサＣＰＵは、複数の出力信号を形成し、出力する。プロセッサＣＰＵから出力された出力信号は、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦ０ｐに伝達され、内部動作クロック信号ＯＣＬＫに同期して、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐに取り込まれ、出力される。出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐから出力された出力信号は、出力経路選択回路ＯＲＳＬを介して、ユーザが所望した出力端子Ｐｏ１〜Ｐｏｎへ伝達され、出力される。
【００５２】
＜＜動作タイミングテスト＞＞
まず、出力系の動作タイミングテストについて説明する。例えば、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐを選択する。これにより、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐのそれぞれは、対応する出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐに対して、それぞれの同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを選択し、供給する。また、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐを、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続するように、それぞれの出力段Ｆ／Ｆ回路の入力を選択する。
【００５３】
例えば論理値“１”、“０”の直列データを、テストパターンとし、このテストパターンを、テスト信号Ｔ−ＤＩとして、入力端子Ｐｄｉへ供給する。これにより、内部テストクロック信号ＴＳＣＬＫが周期的に変化することにより、順次テストパターンが、直列的に接続された出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐ内で転送される。すなわち、テストパターンが、内部テストクロック信号ＴＳＣＬＫに同期して、順次シフトレジスタ内を移動する。
【００５４】
外部テスト制御信号Ｔ−ＣＴＬに基づいて、出力経路テスト回路ＴＳＴ−Ｏが経路選択信号を形成し、出力段Ｆ／Ｆ回路の出力が、出力経路選択回路を介して、所望の出力端子Ｐｏ１〜Ｐｏｎに伝達されるようにする。
【００５５】
このとき、出力端子Ｐｃｏには、信号配線Ｌ２を伝搬した内部テストクロック信号ＴＳＣＬＫが伝えられる。そのため、出力端子Ｐｃｏにおける信号変化と、出力端子Ｐｏ１〜Ｐｏｎにおける信号変化との間の時間差を求めることにより、遅延時間を求めることが可能となる。例えば、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐと外部端子Ｐｏ１〜Ｐｏｎとの間の配線（リードを含む）が、不所望にインピーダンスが高くなっていた場合、遅延時間が長くなるため、この動作タイミングテストで検出することが可能となる。
【００５６】
次に、入力系の動作タイミングテストについて説明する。例えば、外部テスト制御信号Ｔ−ＣＴＬおよびテスト信号Ｔ−ＤＩによって、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐを選択する。これにより、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−ｐのそれぞれは、対応する入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐに対して、それぞれの同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを選択し、供給する。
【００５７】
また、テスト制御信号Ｔ−ＣＴＬに基づいて、入力経路テスト回路ＴＳＴ−Ｉが、経路選択信号を形成し、所望の入力段Ｆ／Ｆ回路に、入力経路選択回路ＩＲＳＬを介して、入力端子Ｐｉ１〜Ｐｉｎのそれぞれにおける入力信号が伝達されるようにしておく。次に、入力端子Ｐｉ１〜Ｐｉｎに、例えば時間的に並列に、テストパターンを供給する。これにより、入力端子Ｐｉ１〜Ｐｉｎに供給されたテストパターンは、入力経路選択回路ＩＲＳＬを介して、それぞれの入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐの入力に伝達される。入力に伝達されたテストパターンは、内部テストクロック信号ＴＳＣＬＫに同期して、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐに取り込まれる。
【００５８】
次に、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐが、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続されるようにする。内部テストクロック信号ＴＳＣＬＫを変化させることにより、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐに取り込まれたテストパターンは、直列的に接続された入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐ内を、順次転送され、出力端子Ｐｄｏから出力される。
【００５９】
出力端子Ｐｄｏから出力されている出力信号の論理値が、テストパターンに対する期待値と一致しているか否かの判定を行うことにより、外部テストクロック信号Ｔ−ＣＬＫに同期して、テストパターンに応じた信号が、入力段Ｆ／Ｆ回路に取り込まれたか否かの判定を行う。例えば、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐと入力端子Ｐｉ１〜Ｐｉｎとの間の配線（リードを含む）が、不所望にインピーダンスが高くなっていた場合、テストパターンに応じた信号が、入力段Ｆ／Ｆ回路に到達するまでの時間が長くなる。そのため、内部テストクロック信号ＴＳＣＬＫが変化したときに、テストパターンに応じた信号が、入力段Ｆ／Ｆ回路に取り込まれず、出力端子Ｐｄｏから出力された値が、テストパターンの期待値と一致しないことが発生する。この場合、テストパターンの期待値と出力端子Ｐｄｏからの出力とが一致したときの外部テストクロック信号Ｔ−ＣＬＫと入力端子へテストパターンを供給したタイミングとの間の時間差が、入力信号の遅延時間に相当することになる。
【００６０】
図１には、出力系の動作タイミングテストにおけるテストパターンの流れが、矢印付きの破線Ｏ１〜Ｏｐで示されており、入力系の動作タイミングテストにおけるテストパターンの流れが、矢印付きの破線Ｉ１〜Ｉｐで示されている。また、内部テストクロック信号ＴＳＣＬＫの主な流れが、矢印付きの破線ＴＣＫで示されている。
【００６１】
出力系の動作タイミングテストと入力系の動作タイミングテストは、同時に実施してもよいし、時間的分けて実施してもよい。
【００６２】
また、実施の形態１においては、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐを直列的に接続し、出力端子Ｐｄｏから入力段Ｆ／Ｆ回路が取り込んだテストパターンに応じた信号を取り出す例を説明したが、これに限定されない。例えば、入力段Ｆ／Ｆ回路が取り込んだテストパターンに応じた値を、並列的に取り出すようにしてもよい。同様に、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐも直列的に接続するように説明したが、それぞれの出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐにテストパターンを設定するようにしてもよい。しかしながら、入力段Ｆ／Ｆ回路を直列的に接続し、出力段Ｆ／Ｆ回路も直列的に接続することにより、外部端子の個数が増加するのを抑制することが可能である。
【００６３】
また、直列的に接続した入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、内部テストクロック信号ＴＳＣＬＫに同期して動作する入力側シフトレジスタとして機能し、直列的に接続した出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐも、内部テストクロック信号ＴＳＣＬＫに同期して動作する出力側シフトレジスタとして機能する。これらの入力側シフトレジスタおよび出力側シフトレジスタは、プロセッサＣＰＵに対して、スキャンパステストを実施する際のシフトレジスタとして用いることが可能である。すなわち、スキャンパステストのテストパターンを、入力端子Ｐｄｉから順次、入力側シフトレジスタに設定する。その後、プロセッサＣＰＵからの出力を出力側シフトレジスタに取り込む。出力側シフトレジスタに取り込まれた値を順次、出力端子Ｐｄｏから取り出すことにより、スキャンパステストを実施することが可能となる。
【００６４】
なお、図１において、入力段Ｆ／Ｆ回路および出力段Ｆ／Ｆ回路内に付した黒塗りの三角形は、Ｆ／Ｆ回路のクロック入力端子を示しており、同期クロック信号が供給される。
【００６５】
＜出力系の構成＞
図２は、図１に示した半導体装置ＣＨＰにおいて、出力系の構成をより詳しく示したブロック図である。図１においては、プロセッサＣＰＵが、１個の回路ブロックとして示されていたが、プロセッサＣＰＵは、処理の制御を行う制御ユニットと、制御ユニットにより制御され、各種機能を担当する複数の機能ユニットとを有している。機能ユニットとしては、例えば、シリアル通信を行う機能ユニット、ＳＰＩ（シリアル・ペリフェラル・インターフェース）を行う機能ユニット、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を行う機能ユニット等がある。図２には、制御ユニットが、ＣＰＵ−Ｃとして示され、機能ユニットが、ＩＰ１〜ＩＰ３として示されている。
【００６６】
制御ユニットＣＰＵ−Ｃおよび機能ユニットＩＰ１〜ＩＰ３には、クロック生成回路ＣＬＫＧにより生成された内部動作クロック信号ＯＣＬＫが供給される。図１では、内部動作クロック信号は、１個の信号として示していたが、具体的には、複数のクロック信号である。すなわち、制御ユニットＣＰＵ−Ｃ、機能ユニットＩＰ１〜ＩＰ３のそれぞれにおいて、適切な周波数のクロック信号が、クロック生成回路ＣＬＫＧにおいて生成される。勿論、これらのクロック信号は、互いに同期している。そのため、ここでは、クロック生成回路ＣＬＫＧが生成する複数のクロック信号を纏めて、内部動作クロック信号ＯＣＬＫとして説明する。
【００６７】
機能ユニットＩＰ１〜ＩＰ３のそれぞれは、制御ユニットＣＰＵ−Ｃからの制御信号およびデータを受けて、それぞれの機能に応じた出力信号を形成する。勿論、それぞれの機能ユニットは、内部動作クロック信号ＯＣＬＫに同期して動作する。この実施の形態１において、機能ユニットＩＰ１の出力信号は、出力段Ｆ／Ｆ回路ＦＦＯ１に供給され、機能ユニットＩＰ２の出力信号は、出力段Ｆ／Ｆ回路ＦＦＯ２に供給され、機能ユニットＩＰ３の出力信号は、出力段Ｆ／Ｆ回路ＦＦＯ３に供給される。また、この実施の形態１においては、出力段Ｆ／Ｆ回路ＦＦＯ１およびＦＦＯ２は、それぞれ複数の出力Ｆ／Ｆ回路を有しているが、図２には、その内の２個の出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２および出力Ｆ／Ｆ回路ＦＦＯ２−１、ＦＦＯ２−２が示されている。なお、出力段Ｆ／Ｆ回路ＦＦＯ３は、１個の出力Ｆ／Ｆ回路ＦＦ０３−１により構成されている例が示されている。図２において、出力Ｆ／Ｆ回路内に示した黒塗りの三角形は、Ｆ／Ｆ回路のクロック入力端子を示している。
【００６８】
出力段テスト回路ＴＳＯ−１は、通常動作のとき、対応する出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）のクロック入力端子（黒塗りの三角形）に供給される同期クロック信号として、内部動作クロック信号ＯＣＬＫを選択し、供給する。また、通常動作のときに、出力段テスト回路ＴＳＯ−１は、機能ユニットＩＰ１からの出力信号を、出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）へ供給する。出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）は、内部動作クロック信号ＯＣＬＫが変化することにより、そのときの機能ユニットＩＰ１からの出力信号を取り込み、保持して、出力する。図２では、出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２等）から出力された出力信号が、ＩＰ１−１〜ＩＰ１−ｎとして示されている。
【００６９】
これに対して、動作タイミングテストのとき、出力段テスト回路ＴＳＯ−１は、テスト信号Ｔ−ＤＩを、対応する出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）へ供給し、クロック入力端子（黒塗りの三角形）に供給される同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを供給する。これにより、出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）は、内部テストクロック信号ＴＳＣＬＫが変化することにより、テスト信号Ｔ−ＤＩを取り込み、保持し、出力信号ＩＰ１−１〜ＩＰ１−ｎとして出力する。
【００７０】
出力段テスト回路ＴＳＯ−２は、出力段テスト回路ＴＳＯ−１と類似している。すなわち、通常動作のときには、対応する機能ユニットＩＰ２からの出力信号と内部動作クロック信号ＯＣＬＫを、対応する出力段Ｆ／Ｆ回路ＦＦＯ２へ供給する。出力段Ｆ／Ｆ回路ＦＦＯ２は、内部動作クロック信号ＯＣＬＫに同期して、機能ユニットＩＰ２からの出力信号を取り込み、出力信号ＩＰ２−１〜ＩＰ２−ｎとして出力する。動作タイミングテストのときには、対応する機能ユニットＩＰ２からの出力信号と内部テストクロック信号ＴＳＣＬＫを、対応する出力段Ｆ／Ｆ回路ＦＦＯ２へ供給する。出力段Ｆ／Ｆ回路ＦＦＯ２は、内部テストクロック信号ＴＳＣＬＫに同期して、機能ユニットＩＰ２からの出力信号を取り込み、出力信号ＩＰ２−１〜ＩＰ２−ｎとして出力する。
【００７１】
出力段テスト回路ＴＳＯ−３は、出力段テスト回路ＴＳＯ−２と同様に、通常動作のときには、対応する機能ユニットＩＰ３からの出力信号と内部動作クロック信号ＯＣＬＫを、対応する出力段Ｆ／Ｆ回路ＦＦＯ３へ供給する。出力段Ｆ／Ｆ回路ＦＦＯ３は、内部動作クロック信号ＯＣＬＫに同期して、機能ユニットＩＰ３からの出力信号を取り込み、出力信号ＩＰ３−１として出力する。動作タイミングテストのときには、対応する機能ユニットＩＰ３からの出力信号と内部テストクロック信号ＴＳＣＬＫを、対応する出力段Ｆ／Ｆ回路ＦＦＯ３へ供給する。出力段Ｆ／Ｆ回路ＦＦＯ３は、内部テストクロック信号ＴＳＣＬＫに同期して、機能ユニットＩＰ３からの出力信号を取り込み、出力信号ＩＰ３−１として出力する。
【００７２】
出力段テスト回路ＴＳＯ−１〜ＴＳＯ−３から出力される出力信号をＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１として説明したが、通常動作のときと、動作タイミングテストのときとで、異なることに注意して頂きたい。すなわち、通常動作のときの出力信号ＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１は、対応する機能ユニットからの出力信号に応じた値であるのに対して、動作タイミングテストのときは、テストパターンに応じた値である。
【００７３】
これらの出力信号ＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１は、出力経路選択回路ＯＲＳＬに供給される。図１においては、出力経路選択回路ＯＲＳＬと、出力経路テスト回路ＴＳＴ−Ｏと、出力経路選択制御回路ＲＳＣ−Ｏとを別々に描いていたが、説明の都合上、図２においては、出力経路選択回路ＯＲＳＬが、出力経路テスト回路ＴＳＴ−Ｏおよび出力経路選択制御回路ＲＳＣ−Ｏを含むように描いている。勿論、出力経路テスト回路ＴＳＴ−Ｏおよび出力経路選択制御回路ＲＳＣ−Ｏは、図１と同様に、出力経路選択回路ＯＲＳＬと別に設けるようにしてもよい。
【００７４】
この実施の形態１において、出力経路選択回路ＯＲＳＬは、さらに複数のセレクタを備えており、セレクタは、出力経路テスト回路ＴＳＴ−Ｏまたは出力経路選択制御回路ＲＳＣ−Ｏからの出力経路選択信号によって指定された、出力段テスト回路からの出力信号を、出力端子Ｐｏ１〜Ｐｏｎへ伝達する。図２には、これらのセレクタのうち、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−３に対応したセレクタが、セレクタＭＵＸ１、ＭＵＸ２として示されている。特に制限されないが、セレクタＭＵＸ１には、出力信号ＩＰ１−１、ＩＰ２−１およびＩＰ３−１が供給され、セレクタＭＵＸ２には、出力信号ＩＰ１−ｎおよびＩＰ２−ｎが供給されている。また、セレクタＭＵＸ１の出力は、出力端子Ｐｏ１に接続され、セレクタＭＵＸ２の出力は、出力端子Ｐｏ２に接続されている。
【００７５】
セレクタＭＵＸ１、ＭＵＸ２には、入力を選択する選択信号として、出力経路テスト回路ＴＳＴ−Ｏおよび出力経路選択制御回路ＲＳＣ−Ｏからの出力経路選択信号が供給されている。通常動作のときには、出力経路選択制御回路ＲＳＣ−Ｏからの出力経路選択信号に従って、セレクタＭＵＸ１は、出力信号ＩＰ１−１、ＩＰ２−１およびＩＰ３−１のいずれかを選択し、選択した出力信号を出力端子Ｐｏ１へ伝達する。同様に、セレクタＭＵＸ２は、出力経路選択制御回路ＲＳＣ−Ｏからの出力経路選択信号に従って、出力信号ＩＰ１−ｎおよびＩＰ２−ｎのいずれかを選択し、選択した出力信号を出力端子Ｐｏ２へ伝達する。通常動作のとき、どの出力信号を選択するかは、ユーザによって定められる。例えば、メモリＥＲＯＭに格納したプログラムによって、どの出力信号を選択するかを定める。
【００７６】
これに対して、動作タイミングテストの際には、外部テスト制御信号Ｔ−ＣＴＬに従って、出力経路テスト回路ＴＳＴ−Ｏが、出力経路選択信号を形成する。すなわち、外部テスト制御信号Ｔ−ＣＴＬによって、セレクタＭＵＸ１およびＭＵＸ２のそれぞれが、選択する出力信号を定めることができる。外部テスト制御信号Ｔ−ＣＴＬによって指定された出力信号は、セレクタＭＵＸ１、ＭＵＸ２を介して、出力端子Ｐｏ１、Ｐｏ２へ伝達される。この実施の形態においては、出力経路テスト回路ＴＳＴ−Ｏは、内部テストクロック信号ＴＳＣＬＫに同期して動作する。すなわち、動作タイミングテストのとき、出力経路選択信号は、内部テストクロック信号ＴＳＣＬＫに同期して形成されることになる。これにより、動作タイミングテストの際に、確実に出力経路選択信号を形成することが可能となる。
【００７７】
この実施の形態１においては、出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２、ＦＦＯ２−１、ＦＦＯ２−２、ＦＦＯ３−１のそれぞれのクロック入力端子（黒塗りの三角形）に到達する内部テストクロック信号ＴＳＣＬＫと、出力端子Ｐｃｏに到達するテストクロック信号のタイミングが一致するように、信号配線（例えば図１のＬ２）の配置等が調整される。図２では、タイミングを一致させる部分が○印で囲まれている。
【００７８】
＜出力段テスト回路および出力段Ｆ／Ｆ回路の構成＞
図３は、出力段テスト回路および出力段Ｆ／Ｆ回路の構成を示すブロック図である。図３には、図２に示した出力段テスト回路ＴＳＯ−１と出力段Ｆ／Ｆ回路ＦＦＯ１のうち出力Ｆ／Ｆ回路ＦＦ０１−１の構成が示されている。出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐのそれぞれは、互いに同様な構成を有しており、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐも互いに同様な構成を有している。そのため、ここでは、出力段テスト回路ＴＳＯ−１と出力段Ｆ／Ｆ回路ＦＦＯ１のうち出力Ｆ／Ｆ回路ＦＦ０１−１を例にして、出力段テスト回路および出力段Ｆ／Ｆ回路の構成を説明する。
【００７９】
出力段Ｆ／Ｆ回路ＦＦＯ１を構成する出力Ｆ／Ｆ回路ＦＦＯ１−１は、クロック入力端子ＣＫ、データ入力端子Ｄおよびデータ出力端子Ｑを有するフリップフロップ回路によって構成されている。出力Ｆ／Ｆ回路ＦＦＯ１−１は、クロック入力端子ＣＫに供給されるクロック信号が変化すると、そのときデータ入力端子Ｄに供給されている入力信号を取り込み、保持する。また、データ出力端子Ｑから、保持している値に対応する出力信号（論理値）を出力する。例えば、クロック入力端子ＣＫに供給されているクロック信号が、ロウレベルからハイレベルへ変化すると、そのとき、データ入力端子Ｄに供給されている入力信号の論理値を、出力Ｆ／Ｆ回路ＦＦＯ１−１は取り込み、取り込んだ論理値を保持する。また、出力Ｆ／Ｆ回路ＦＦＯ１−１は、保持している論理値に応じた電圧を有する出力信号を、データ出力端子Ｑから出力する。
【００８０】
実施の形態１においては、クロック入力端子ＣＫに供給されるクロック信号が、同期クロック信号となる。これにより、クロック入力端子ＣＫに供給される同期クロック信号の変化に同期して、出力Ｆ／Ｆ回路ＦＦＯ１−１は、入力信号を取り込み、出力することになる。
【００８１】
出力段テスト回路ＴＳＯ−１は、セレクタＭＵＸ３とＭＵＸ４とを備えている。この実施の形態において、セレクタＭＵＸ３、ＭＵＸ４のそれぞれは、２個の入力端子Ｎ１、Ｎ２と、選択端子Ｓ１と、出力端子Ｏ１とを備えている。セレクタＭＵＸ３、ＭＵＸ４のそれぞれは、選択端子Ｓ１に供給される制御信号に従って、入力端子Ｎ１およびＮ２に供給されている信号のうちのいずれか一方を選択し、出力端子Ｏ１へ伝達する。
【００８２】
出力段テスト回路ＴＳＯ−１においては、セレクタＭＵＸ３、ＭＵＸ４のそれぞれの選択端子Ｓ１に、テスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）が供給される。セレクタＭＵＸ３の入力端子Ｎ１には、機能ユニットＩＰ１からの出力信号が供給され、入力端子Ｎ２には、入力端子Ｐｄｉからテスト信号Ｔ−ＤＩが供給される。また、セレクタＭＵＸ４の入力端子Ｎ１には、内部動作クロック信号ＯＣＬＫが供給され、入力端子Ｎ２には、内部テストクロック信号ＴＳＣＬＫが供給される。セレクタＭＵＸ３の出力端子Ｏ１は、出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄに接続され、セレクタＭＵＸ４の出力端子Ｏ１は、出力Ｆ／Ｆ回路ＦＦＯ１−１のクロック入力端子ＣＫに供給されている。
【００８３】
出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ出力端子Ｑは、図示していない信号配線を介して、出力信号ＩＰ１−１として、出力経路選択回路ＯＲＳＬ内のセレクタＭＵＸ１の入力に接続されている。また、出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ出力端子Ｑは、出力Ｆ／Ｆ回路を直列接続したとき、次段となる出力Ｆ／Ｆ回路に対応するセレクタＭＵＸ３の入力端子Ｎ２に接続される。図２を参照にすると、テスト信号Ｔ−ＤＩによって、出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２、ＦＦＯ２−１、ＦＦＯ２−２およびＦＦＯ３−１にテストパターンを設定するとき、これらの出力Ｆ／Ｆ回路が、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続される。すなわち、出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２、ＦＦＯ２−１、ＦＦＯ２−２およびＦＦＯ３−１の順に、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に接続されることになる。そのため、出力Ｆ／Ｆ回路ＦＦＯ１−１の次段となる出力Ｆ／Ｆ回路は、出力Ｆ／Ｆ回路ＦＦＯ１−２となる。従って、図３に示す出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ出力端子Ｑは、出力Ｆ／Ｆ回路ＦＦＯ１−２に対応するセレクタＭＵＸ３の入力端子Ｎ２に接続されることになる。
【００８４】
出力段テスト回路ＴＳＯ−１において、セレクタＭＵＸ３とＭＵＸ４は、同期して、入力端子Ｎ１またはＮ２に供給されている信号を選択し、選択した信号を出力端子Ｏ１へ伝達する。セレクタＭＵＸ３が、テスト選択制御信号Ｔ−ＣＴＬｉにより、入力端子Ｎ１に供給されている機能ユニットＩＰ１からの出力信号を選択し、出力端子Ｏ１から出力するとき、セレクタＭＵＸ４は、テスト選択制御信号Ｔ−ＣＴＬｉによって、入力端子Ｎ１に供給されている内部動作クロック信号ＯＣＬＫを選択し、出力端子Ｏ１から出力する。また、セレクタＭＵＸ３が、テスト選択制御信号Ｔ−ＣＴＬｉにより、入力端子Ｎ２に供給されているテスト信号Ｔ−ＤＩを選択し、出力端子Ｏ１から出力するとき、セレクタＭＵＸ４は、テスト選択制御信号Ｔ−ＣＴＬｉによって、入力端子Ｎ２に供給されている内部テストクロック信号ＴＳＣＬＫを選択し、出力端子Ｏ１から出力する。
【００８５】
テスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）は、特に制限されないが、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐにそれぞれ１対１に対応している。すなわち、図２を例にして述べると、出力段テスト回路ＴＳＯ−１に対してテスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１）が供給され、出力段テスト回路ＴＳＯ−２に対してテスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝２）が供給され、出力段テスト回路ＴＳＯ−３に対してテスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝３）が供給される。テスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）は、図示しないテスト制御回路によって、外部テスト制御信号Ｔ−ＣＴＬとテスト信号Ｔ−ＤＩに基づいて形成される。このテスト制御回路は、特に制限されないが、動作タイミングテストのときには、内部テストクロック信号ＴＳＣＬＫに同期して動作し、通常動作のときには、内部動作クロック信号ＯＣＬＫに同期して動作する。
【００８６】
あとで、一例を説明するが、動作タイミングテストのとき、テスト対象の出力段Ｆ／Ｆ回路を指定する指定信号が、テスト信号Ｔ−ＤＩとして入力端子Ｐｄｉに供給される。テスト制御回路は、指定信号に基づいて、テスト対象として指定された出力段Ｆ／Ｆ回路に、外部テスト制御信号Ｔ−ＣＴＬをテスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）として供給する。
【００８７】
セレクタＭＵＸ３およびＭＵＸ４のそれぞれは、テスト選択制御信号Ｔ−ＣＴＬｉが、動作タイミングテストを指示していないとき（例えば、通常動作のとき）、あるいは動作タイミングテストにおいて、出力Ｆ／Ｆ段回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１）を指定していないとき、入力端子Ｎ１に供給されている信号を選択する。一方、テスト選択制御信号Ｔ−ＣＴＬｉが、動作タイミングテストであって、出力Ｆ／Ｆ回路ＦＦＯ１−１を指示しているとき、セレクタＭＵＸ３およびＭＵＸ４は、入力端子Ｎ２に供給されている信号を選択する。
【００８８】
これにより、通常動作のとき、あるいは動作タイミングテストにおいて、出力Ｆ／Ｆ回路ＦＦＯ１−１が指定されていないとき、出力段テスト回路ＴＳＯ−１は、対応する出力Ｆ／Ｆ回路ＦＦＯ１−１のクロック入力端子ＣＫに、同期クロック信号として内部動作クロック信号ＯＣＬＫを供給する。また、このときには、機能ユニットＩＰ１からの出力信号を、出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄに供給する。
【００８９】
その結果、通常動作のとき、あるいは動作タイミングテストにおいて、出力Ｆ／Ｆ回路ＦＦＯ１−１が指定されていないとき、出力Ｆ／Ｆ回路ＦＦＯ１−１は、内部動作クロック信号ＯＣＬＫに同期して、機能ユニットＩＰ１からの出力信号を取り込み、保持して、保持した値に対応する信号を、出力信号ＩＰ１−１として出力する。なお、このとき、出力信号ＩＰ１−１は、次段の出力Ｆ／Ｆ回路ＦＦＯ１−２に対応するセレクタＭＵＸ３の入力端子Ｎ２にも供給される。しかしながら、通常動作のときには、次段の出力Ｆ／Ｆ回路ＦＦＯ１−２に対応するセレクタＭＵＸ３、ＭＵＸ４は、入力端子Ｎ１に供給されている信号を選択するため、次段の出力Ｆ／Ｆ回路ＦＦＯ１−２のデータ入力端子Ｄには、前段の出力Ｆ／Ｆ回路ＦＦＯ１−１からの出力信号は伝達されない。
【００９０】
また、動作タイミングテストにおいて、出力Ｆ／Ｆ回路ＦＦＯ１−１が指定されている場合には、出力段テスト回路ＴＳＯ−１から、出力Ｆ／Ｆ回路ＦＦＯ１−１へ、同期クロック信号として内部テストクロック信号ＴＳＣＬＫが、クロック入力端子ＣＫに供給され、テスト信号Ｔ−ＤＩが、データ入力端子Ｄに供給される。動作タイミングテストにおいて、内部テストクロック信号ＴＳＣＬＫを変化させることにより、出力Ｆ／Ｆ回路ＦＦＯ１−１は、テスト信号Ｔ−ＤＩを取り込み、保持するとともに、出力する。出力Ｆ／Ｆ回路ＦＦＯ１−１からの出力は、信号配線（図示せず）を伝搬し、さらに出力経路選択回路ＯＲＳＬを介して、出力端子Ｐｏ１、Ｐｏ２に伝達される。内部テストクロック信号ＴＳＣＬＫは、出力端子Ｐｃｏにも伝達されるため、この出力端子Ｐｃｏにおけるテストクロック信号Ｔ−ＣＫＯの変化と、出力Ｆ／Ｆ回路ＦＦＯ１−１の出力信号が、伝達された外部端子Ｐｏ１、Ｐｏ２における信号の変化との間の時間差を求めることにより、出力Ｆ／Ｆ回路ＦＦＯ１−１（出力段Ｆ／Ｆ回路ＦＦＯ１）と出力端子との間の動作タイミングテストの結果を得ることができる。
【００９１】
例えば、図２に示した出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２、ＦＦＯ２−１、ＦＦＯ２−２およびＦＦＯ３−１を、動作タイミングテストにおいて、指定した場合、これらの出力Ｆ／Ｆ回路は、出力段テスト回路によって、直列的に接続され、シフトレジスタ（レジスタチェーン）を構成することになる。この場合、入力端子Ｐｄｉに供給するテスト信号Ｔ−ＤＩは、内部テストクロック信号ＴＳＣＬＫの変化に同期して、順次、シフトレジスタ内を転送される。その後、出力端子Ｐｃｏにおけるテストクロック信号Ｔ−ＣＫＯの変化と、出力端子Ｐｏ１、Ｐｏ２における信号の変化との間の時間差を求めることにより、出力Ｆ／Ｆ回路、言い換えるならば出力段Ｆ／Ｆ回路と出力端子Ｐｏ１、Ｐｏ２との間の動作タイミングテストの結果を得ることができる。
【００９２】
ここで、テスト選択制御信号Ｔ−ＣＴＬｉによって、出力Ｆ／Ｆ回路（あるいは出力段Ｆ／Ｆ回路）を指定すると言うことは、その出力Ｆ／Ｆ回路（出力段Ｆ／Ｆ回路）と出力端子との間の出力経路について、動作タイミングのテストを実施することを意味している。これに対して、出力Ｆ／Ｆ回路（出力段Ｆ／Ｆ回路）を指定しないと言うことは、当該出力Ｆ／Ｆ回路（出力段Ｆ／Ｆ回路）と出力端子との間の出力経路について、動作タイミングのテストを実施しないことを意味している。
【００９３】
なお、Ｆ／Ｆ回路が有するクロック入力端子ＣＫは、図３を除いた図面においては、黒塗りの三角形で示されている。
【００９４】
＜入力系の構成＞
図４は、図１に示した半導体装置ＣＨＰにおいて、入力系の構成をより詳しく示したブロック図である。図２において説明したように、プロセッサＣＰＵは、処理の制御を行う制御ユニットＣＰＵ−Ｃと、各種機能を担当する複数の機能ユニットを有している。図４には、機能ユニットが、ＩＰ４〜ＩＰ６として示されている。なお、図面が複雑になるのを避けるために、同図では、制御ユニットＣＰＵ−Ｃは省略されているが、機能ユニットＩＰ４〜ＩＰ６のそれぞれの出力が、制御ユニットＣＰＵ−Ｃへ供給される。
【００９５】
機能ユニットＩＰ４〜ＩＰ６には、内部テストクロック信号ＴＳＣＬＫとクロック生成回路ＣＬＫＧにより生成された内部動作クロック信号ＯＣＬＫが供給される。クロック生成回路ＣＬＫＧは、機能ユニットＩＰ４〜ＩＰ６のそれぞれにおいて、適切な周波数のクロック信号を生成するが、これらのクロック信号は、互いに同期している。そのため、図４においても、クロック生成回路ＣＬＫＧが生成する複数のクロック信号を纏めて、内部動作クロック信号ＯＣＬＫとして説明する。
【００９６】
機能ユニットＩＰ４〜ＩＰ６のそれぞれは、図示しない制御ユニットＣＰＵ−Ｃからの制御信号（図示しない）により制御され、入力端子Ｐｉ１、Ｐｉ２から入力データを受けて、それぞれの機能に応じた出力信号を形成する。ここでは、それぞれの機能ユニットに、入力段Ｆ／Ｆ回路および入力段テスト回路が設けられている例を説明するが、これに限定されるものではない。
【００９７】
機能ユニットＩＰ４は、機能を達成するための論理回路ＬＧ１１とＬＧ１２とを有しており、論理回路ＬＧ１１の出力は、入力段テスト回路ＴＳＩ−１および入力段Ｆ／Ｆ回路ＦＦＩ１を介して論理回路ＬＧ１２へ供給される。また、入力段Ｆ／Ｆ回路ＦＦＩ１は、複数の入力Ｆ／Ｆ回路によって構成されている。図４では、これらの入力Ｆ／Ｆ回路のうち、入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２が例示として示されている。論理回路ＬＧ１１は、入力経路選択回路ＩＲＳＬからの信号を入力信号として受け、出力信号を形成し、入力段テスト回路ＴＳＩ−１および入力段Ｆ／Ｆ回路ＦＦＩ１を介して論理回路ＬＧ１２に供給する。論理回路ＬＧ１２からは、機能ユニットＩＰ４の出力信号ＩＰ４−Ｏが、例えば制御ユニットＣＰＵ−Ｃへ供給される。図４では、論理回路ＬＧ１１へ供給される入力経路選択回路ＩＲＳＬからの信号のうち、入力信号ＩＰ４−Ｉ１、ＩＰ４−Ｉｎが例示として示されている。
【００９８】
機能ユニットＩＰ５も、機能ユニットＩＰ４と同様に、機能を達成するための論理回路ＬＧ２１とＬＧ２２とを有しており、論理回路ＬＧ２１の出力は、入力段テスト回路ＴＳＩ−２および入力段Ｆ／Ｆ回路ＦＦＩ２を介して論理回路ＬＧ２２へ供給される。また、入力段Ｆ／Ｆ回路ＦＦＩ２も、複数の入力Ｆ／Ｆ回路によって構成されている。図４では、これらの入力Ｆ／Ｆ回路のうち、入力Ｆ／Ｆ回路ＦＦＩ２−１、ＦＦＩ２−２が例示として示されている。論理回路ＬＧ２１は、入力経路選択回路ＩＲＳＬからの信号を入力信号として受け、出力信号を形成し、入力段テスト回路ＴＳＩ−２および入力段Ｆ／Ｆ回路ＦＦＩ２を介して論理回路ＬＧ２２に供給する。論理回路ＬＧ２２からは、機能ユニットＩＰ５の出力信号ＩＰ５−Ｏが、例えば制御ユニットＣＰＵ−Ｃへ供給される。図４では、論理回路ＬＧ２１へ供給される入力経路選択回路ＩＲＳＬからの信号のうち、入力信号ＩＰ５−Ｉ１、ＩＰ５−Ｉｎが例示として示されている。
【００９９】
また、機能ユニットＩＰ６も、機能を達成するための論理回路ＬＧ３１とＬＧ３２とを有しており、論理回路ＬＧ３１の出力は、入力段テスト回路ＴＳＩ−３および入力段Ｆ／Ｆ回路ＦＦＩ３を介して論理回路ＬＧ３２へ供給される。また、入力段Ｆ／Ｆ回路ＦＦＩ３は、入力Ｆ／Ｆ回路ＦＦＩ３−１により構成されている。論理回路ＬＧ３１は、入力経路選択回路ＩＲＳＬからの信号を入力信号ＩＰ６−Ｉ１として受け、出力信号を形成し、入力段テスト回路ＴＳＩ−３および入力Ｆ／Ｆ回路ＦＦＩ３−１を介して論理回路ＬＧ３２に供給する。論理回路ＬＧ３２からは、機能ユニットＩＰ６の出力信号ＩＰ６−Ｏが、例えば制御ユニットＣＰＵ−Ｃへ供給される。
【０１００】
入力段テスト回路ＴＳＩ−１は、通常動作のとき、対応する出力段Ｆ／Ｆ回路ＦＦＩ１（入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２）のクロック入力端子（黒塗りの三角形）に供給される同期クロック信号として、内部動作クロック信号ＯＣＬＫを選択し、供給する。また、通常動作のときに、入力段テスト回路ＴＳＩ−１は、論理回路ＬＧ１１からの出力信号を、入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２へ供給する。入力Ｆ／Ｆ回路ＦＦＩ−１、ＦＦＩ１−２は、内部動作クロック信号ＯＣＬＫが変化することにより、そのときの論理回路ＬＧ１１からの出力信号を取り込み、保持して、論理回路ＬＧ１２へ供給する。
【０１０１】
これに対して、動作タイミングテストのとき、入力段テスト回路ＴＳＩ−１は、対応する入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２のクロック入力端子（黒塗りの三角形）に供給される同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを供給する。これにより、入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２は、内部テストクロック信号ＴＳＣＬＫが変化することにより、論理回路ＬＧ１１からの出力信号を取り込み、保持する。すなわち、入力信号ＩＰ４−Ｉ１〜ＩＰ４−Ｉｎに基づいて、論理回路ＬＧ１１が形成した論理回路ＬＧ１１の出力信号が、入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２に、取り込まれ、保持されることになる。
【０１０２】
入力段テスト回路ＴＳＩ−２は、入力段テスト回路ＴＳＩ−１と類似している。すなわち、通常動作のときには、対応する論理回路ＬＧ２１からの出力信号を、入力段Ｆ／Ｆ回路ＦＦＩ２（入力Ｆ／Ｆ回路ＦＦＩ２−１、ＦＦＩ２−２）が、内部動作クロック信号ＯＣＬＫに同期して取り込むように、入力段テスト回路ＴＳＩ−２は、入力段Ｆ／Ｆ回路ＦＦＩ２の同期クロック信号を選択する。また、入力段Ｆ／Ｆ回路ＦＦＩ２に取り込み、保持した論理回路ＬＧ２１からの出力信号を論理回路ＬＧ２２へ供給する。一方、動作タイミングテストのときには、対応する論理回路ＬＧ２１の出力信号を、入力段Ｆ／Ｆ回路ＦＦＩ２が、内部テストクロック信号ＴＳＣＬＫに同期して取り込むように、入力段テスト回路ＴＳＩ−２は、入力段Ｆ／Ｆ回路ＦＦＩ２の同期クロック信号を選択する。
【０１０３】
入力テスト回路ＴＳＩ−３は、入力テスト回路ＴＳＩ−１、ＴＳＩ−２と同様に、通常動作のときには、論理回路ＬＧ３１からの出力信号を、入力段Ｆ／Ｆ回路ＦＦＩ３（入力Ｆ／Ｆ回路ＦＦＩ３−１）が、内部動作クロック信号ＯＣＬＫに同期して取り込むように、入力段Ｆ／Ｆ回路ＦＦＩ３の同期クロック信号を選択する。また、入力段Ｆ／Ｆ回路ＦＦＩ３に取り込み、保持した論理回路ＬＧ３１からの出力信号を論理回路ＬＧ３２へ供給する。一方、動作タイミングテストのときには、対応する論理回路の出力信号を、入力段Ｆ／Ｆ回路ＦＦＩ３が、テストクロック信号ＴＳＣＬＫに同期して取り込むように、入力段テスト回路ＴＳＩ−３は、入力段Ｆ／Ｆ回路ＦＦＩ３の同期クロック信号を選択する。
【０１０４】
動作タイミングテストのとき、入力端子Ｐｉ１、Ｐｉ２には、テストパターンが供給される。そのため、動作タイミングテストのとき、論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１は、テストパターンに従った出力信号を形成し、出力することになる。動作タイミングテストのとき、入力段Ｆ／Ｆ回路ＦＦＩ１（ＦＦＩ１−１、ＦＦＩ１−２）、ＦＦＩ２（ＦＦＩ２−１、ＦＦＩ２−２）、ＦＦＩ３（ＦＦＩ３−１）のそれぞれに保持された論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１の出力信号は、これらの入力段Ｆ／Ｆ回路を直列的に接続することにより、出力端子Ｐｄｏから出力される。
【０１０５】
すなわち、動作タイミングテストの期間において、入力段Ｆ／Ｆ回路ＦＦＩ１（ＦＦＩ１−１、ＦＦＩ１−２）、ＦＦＩ２（ＦＦＩ２−１、ＦＦＩ２−２）、ＦＦＩ３（ＦＦＩ３−１）は、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続される。これにより、これらの入力段Ｆ／Ｆ回路によってシフトレジスタ（レジスタチェーン）を構成する。シフトレジスタを構成したとき、内部テストクロック信号ＴＳＣＬＫが、シフトクロック信号として用いられる。これにより、内部テストクロック信号ＴＳＣＬＫを変化させることによって、これらの入力段Ｆ／Ｆ回路に保持されている出力信号が、出力端子Ｐｄｏから順次出力されることになる。
【０１０６】
論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１へ供給される入力信号ＩＰ４−Ｉ１〜ＩＰ４−Ｉｎ、ＩＰ５−Ｉ１〜ＩＰ５−Ｉｎ、ＩＰ６−Ｉ１は、入力経路選択回路ＩＲＳＬから供給される。図１においては、入力経路選択回路ＩＲＳＬと、入力経路テスト回路ＴＳＴ−Ｉと、入力経路選択制御回路ＲＳＣ−Ｉとを別々に描いていたが、説明の都合上、図４においては、入力経路選択回路ＩＲＳＬが、入力経路テスト回路ＴＳＴ−Ｉおよび入力経路選択制御回路ＲＳＣ−Ｉを含むように描いている。勿論、入力経路テスト回路ＴＳＴ−Ｉおよび入力経路選択制御回路ＲＳＣ−Ｉは、図１と同様に、入力経路選択回路ＩＲＳＬと別に設けるようにしてもよい。
【０１０７】
この実施の形態１において、入力経路選択回路ＩＲＳＬは、さらに複数のセレクタを備えており、セレクタは、入力経路テスト回路ＴＳＴ−Ｉまたは入力経路選択制御回路ＲＳＣ−Ｉからの入力経路選択信号によって指定された、入力端子からの入力信号を、論理回路へ伝達する。図４には、これらのセレクタのうち、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−３に対応したセレクタが、セレクタＭＵＸ５、ＭＵＸ６として示されている。特に制限されないが、セレクタＭＵＸ５には、入力端子Ｐｉ１からの信号が供給され、入力信号ＩＰ４−Ｉ１、ＩＰ５−Ｉ１またはＩＰ６−Ｉ１として、信号配線を介して論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１へ供給する。また、セレクタＭＵＸ６には、入力端子Ｐｉ２からの信号が供給され、入力信号ＩＰ４−ＩｎまたはＩＰ５−Ｉｎとして、信号配線を介して、論理回路ＬＧ１１、ＬＧ２１へ供給する。
【０１０８】
セレクタＭＵＸ５、ＭＵＸ６には、出力を選択する選択信号として、入力経路テスト回路ＴＳＴ−Ｉおよび入力経路選択制御回路ＲＳＣ−Ｉからの入力経路選択信号が供給されている。
【０１０９】
通常動作のときには、入力経路選択制御回路ＲＳＣ−Ｉからの入力経路選択信号に従って、セレクタＭＵＸ５は、入力端子Ｐｉ１に供給されている信号を、入力信号ＩＰ４−Ｉ１、ＩＰ５−Ｉ１またはＩＰ６−Ｉ１として、論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１へ伝達する。同様に、セレクタＭＵＸ６は、入力経路選択制御回路ＲＳＣ−Ｉからの入力経路選択信号に従って、入力端子Ｐｉ２に供給されている信号を、入力信号ＩＰ４−ＩｎまたはＩＰ５−Ｉｎとして、論理回路ＬＧ１１、ＬＧ２１へ供給する。通常動作のとき、入力端子Ｐｉ１、Ｐｉ２に供給されている信号を、どの入力信号として選択するかは、ユーザによって定められる。例えば、メモリＥＲＯＭに格納したプログラムによって、定められる。この場合、入力経路選択制御回路ＲＳＣ−Ｉは、内部動作クロック信号ＯＣＬＫに同期して動作する。
【０１１０】
これに対して、動作タイミングテストの際には、外部テスト制御信号Ｔ−ＣＴＬに従って、入力経路テスト回路ＴＳＴ−Ｉが、入力経路選択信号を形成する。すなわち、外部テスト制御信号Ｔ−ＣＴＬによって、セレクタＭＵＸ５およびＭＵＸ６のそれぞれが、選択する入力信号を定めることができる。外部テスト制御信号Ｔ−ＣＴＬによって指定された入力信号は、セレクタＭＵＸ５、ＭＵＸ６を介して、論理回路ＬＧ１１、ＬＧ２１、ＬＧ３１へ伝達される。この実施の形態においては、入力経路テスト回路ＴＳＴ−Ｉは、内部テストクロック信号ＴＳＣＬＫに同期して動作する。すなわち、動作タイミングテストのとき、入力経路選択信号は、内部テストクロック信号ＴＳＣＬＫに同期して形成されることになる。これにより、動作タイミングテストの際に、確実に入力経路選択信号を形成することが可能となる。
【０１１１】
図４においても、入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２、ＦＦＩ２−１、ＦＦＩ２−２、ＦＦＩ３−１のそれぞれのクロック入力端子（黒塗りの三角形）に到達する内部テストクロック信号ＴＳＣＬＫと、出力端子Ｐｃｏに到達するテストクロック信号のタイミングが一致するように、信号配線（例えば図１のＬ２）の配置等が調整される。図４でも、タイミングを一致させる部分が○印で囲まれている。
【０１１２】
＜入力段テスト回路および入力段Ｆ／Ｆ回路の構成＞
入力段テスト回路ＴＳＩ−１〜ＴＳＩ−３および入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩ３の構成は、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−３および出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯ３の構成と類似している。そのため、図３を用いて、入力段テスト回路および入力段Ｆ／Ｆ回路の構成について、出力段テスト回路および出力段Ｆ／Ｆ回路と相違する部分を主に説明する。入力段テスト回路は互いに類似し、入力段Ｆ／Ｆ回路も互いに類似している。ここでは、入力段テスト回路ＴＳＩ−１と、入力段Ｆ／Ｆ回路ＦＦＩ１（入力Ｆ／Ｆ回路ＦＦＩ−１）を例にして説明する。なお、図３において、入力段テスト回路と出力段テスト回路とで、符号が異なる部分については、（）内に入力段テスト回路の符号を記載している。同様に、入力段Ｆ／Ｆ回路（入力Ｆ／Ｆ回路）と出力段Ｆ／Ｆ回路（出力Ｆ／Ｆ回路）とで、符号が異なる部分については、（）内に入力段Ｆ／Ｆ回路（入力Ｆ／Ｆ回路）の符号が付されている。符号のあとに（）が付されていない部分については、入力段テスト回路と出力段テスト回路とで、共通であり、入力段Ｆ／Ｆ回路と出力段Ｆ／Ｆ回路とで、共通である。
【０１１３】
入力段Ｆ／Ｆ回路ＦＦＩ１は、出力段Ｆ／Ｆ回路ＦＦＯ１と同様に、複数の入力Ｆ／Ｆ回路を有しているが、図３には１個の入力Ｆ／Ｆ回路ＦＦＩ１−１のみが示されている。この入力Ｆ／Ｆ回路ＦＦＩ１−１の構成は、出力Ｆ／Ｆ回路ＦＦＯ１−１と同じ構成を有している。すなわち、入力Ｆ／Ｆ回路ＦＦＩ１−１は、クロック入力端子ＣＫ、データ入力端子Ｄおよびデータ出力端子Ｑを備えており、クロック入力端子ＣＫに供給されるクロック信号が変化することにより、データ入力端子Ｄに供給されている入力信号を取り込み、保持し、保持している信号に対応した出力信号をデータ出力端子Ｑから出力する。
【０１１４】
入力段テスト回路ＴＳＩ−１は、出力段テスト回路ＴＳＯ−１と同様に、セレクタＭＵＸ３、ＭＵＸ４を備えている。入力段テスト回路ＴＳＩ−１において、セレクタＭＵＸ３の入力端子Ｎ１には、機能ユニットＩＰ１からの出力信号の代わりに、論理回路ＬＧ１１からの出力信号が供給され、入力端子Ｎ２には、テスト信号Ｔ−ＤＩが供給される。セレクタＭＵＸ４の入力端子Ｎ１およびＮ２については、出力段テスト回路ＴＳＯ−１のセレクタＭＵＸ４と同様に、内部動作クロック信号ＯＣＬＫおよび内部テストクロック信号ＴＳＣＬＫが供給される。また、入力段テスト回路ＴＳＩ−１のセレクタＭＵＸ３、ＭＵＸ４のそれぞれの出力端子Ｏ１も、出力段テスト回路ＴＳＯ−１のセレクタＭＵＸ３、ＭＵＸ４の出力端子Ｏ１と同様に、入力Ｆ／Ｆ回路ＦＦＩ１−１のデータ入力端子Ｄ、クロック入力端子ＣＫに接続されている。
【０１１５】
入力段テスト回路ＴＳＩ−１のセレクタＭＵＸ３、ＭＵＸ４のそれぞれの選択端子Ｓ１には、出力段テスト回路ＴＳＯ−１のセレクタＭＵＸ３、ＭＵＸ４のそれぞれの選択端子Ｓ１と同様に、テスト制御回路（図示せず）により形成されたテスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）が供給される。しかしながら、この実施の形態において、テスト選択制御信号Ｔ−ＣＴＬｉによって指定されるセレクタＭＵＸ３、ＭＵＸ４の状態が、入力段テスト回路ＴＳＩ−１と出力段テスト回路ＴＳＯ−１とでは、異なっている。すなわち、入力段テスト回路ＴＳＩ−１において、通常動作のときには、出力段テスト回路ＴＳＯ−１と同様に、セレクタＭＵＸ３は、入力端子Ｎ１に供給されている論理回路ＬＧ１１からの出力信号を選択し、入力Ｆ／Ｆ回路ＦＦＩ１−１のデータ入力端子Ｄへ伝達し、セレクタＭＵＸ４は、入力端子Ｎ１に供給されている内部動作クロック信号ＯＣＬＫを選択し、入力Ｆ／Ｆ回路ＦＦＩ１−１のクロック入力端子ＣＫへ伝達する。
【０１１６】
一方、動作タイミングテストにおいて、入力Ｆ／Ｆ回路ＦＦＩ１−１が指定されている場合、テスト選択制御信号Ｔ−ＣＴＬｉによって、セレクタＭＵＸ３は、入力端子Ｎ１を選択し、セレクタＭＵＸ４は、入力端子Ｎ２を選択する。すなわち、セレクタＭＵＸ３は、論理回路ＬＧ１１からの出力信号を選択し、データ入力端子Ｄへ伝達し、セレクタＭＵＸ４は、内部テストクロック信号ＴＳＣＬＫを選択し、クロック入力端子ＣＫへ伝達する。
【０１１７】
これにより、通常動作のときには、論理回路ＬＧ１１からの出力信号は、内部動作クロック信号ＯＣＬＫに同期して、入力Ｆ／Ｆ回路ＦＦＩ１−１に取り込まれ、入力Ｆ／Ｆ回路ＦＦＩ１−１のデータ出力端子Ｑから、論理回路ＬＧ１２へ供給されることになる。その結果、図４に示した入力端子Ｐｉ１、Ｐｉ２に供給されている入力信号に対して、機能ユニットＩＰ４の処理が行われ、機能ユニットＩＰ４の出力信号ＩＰ４−Ｏが、制御ユニットＣＰＵ−Ｃに供給されることになる。すなわち、機能ユニットＩＰ４の処理が行われ、その結果が制御ユニットＣＰＵ−Ｃへ提供されることになる。
【０１１８】
一方、動作タイミングテストにおいて、入力Ｆ／Ｆ回路ＦＦＩ１−１が指定されている場合、すなわち、入力端子Ｐｉ１、Ｐｉ２と入力Ｆ／Ｆ回路ＦＦＩ１−１との間の経路に設けられている信号配線および論理回路に対する動作タイミングテストが指示されている場合は、次のようになる。すなわち、入力段テスト回路ＴＳＩ−１は、入力Ｆ／Ｆ回路ＦＦＩ１−１の同期クロック信号として、内部テストクロック信号ＴＳＣＬＫを選択し、クロック入力端子ＣＫへ供給する。このとき、入力段テスト回路ＴＳＩ−１は、論理回路ＬＧ１１からの出力信号を選択し、データ入力端子Ｄに供給する。
【０１１９】
これにより、入力Ｆ／Ｆ回路ＦＦＩ１−１は、内部テストクロック信号ＴＳＣＬＫに同期して、論理回路ＬＧ１１からの出力信号を取り込み、保持する。そのため、動作タイミングテストのときに、入力端子Ｐｉ１、Ｐｉ２にテストパターンを供給することにより、テストパターンに従った論理回路ＬＧ１１からの出力信号が、内部テストクロック信号ＴＳＣＬＫの変化タイミングで、入力Ｆ／Ｆ回路ＦＦＩ１−１に取り込まれ、保持されることになる。入力端子Ｐｉ１、Ｐｉ２と入力Ｆ／Ｆ回路ＦＦＩ１−１との間の入力経路に設けられている信号配線、論理回路ＬＧ１１および／または入力経路選択回路ＩＲＳＬにおいて、例えば所定を超える信号遅延が発生しているか否かに応じて、内部テストクロック信号ＴＳＣＬＫの変化に同期して、入力Ｆ／Ｆ回路ＦＦＩ１−１に取り込まれ、保持されている出力信号の論理値が異なる。すなわち、入力経路における遅延時間によって、入力Ｆ／Ｆ回路ＦＦＩ１−１に保持される論理値が異なることになる。
【０１２０】
動作タイミングテストにおいて、入力Ｆ／Ｆ回路（入力段Ｆ／Ｆ回路）に保持されている結果を出力するために、テスト選択制御信号Ｔ−ＣＴＬｉによって、入力段テスト回路ＴＳＩ−１のセレクタＭＵＸ３は、入力端子Ｎ２を選択し、セレクタＭＵＸ４は、入力端子Ｎ２を選択する。これにより、入力Ｆ／Ｆ回路ＦＦＩ１−１のデータ入力端子Ｄは、入力端子Ｐｄｉに電気的に接続され、入力Ｆ／Ｆ回路ＦＦＩ１−１のデータ出力端子Ｑは、次段の入力Ｆ／Ｆ回路ＦＦＩ１−２のデータ入力端子Ｄに電気的に接続されることになる。
【０１２１】
すなわち、図４に示した入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦＩ１−２、ＦＦＩ２−１、ＦＦＩ２−２およびＦＦＩ３−１が、入力端子Ｐｄｉと出力端子Ｐｄｏとの間に直列的に接続され、シフトレジスタが構成される。このとき、それぞれの入力Ｆ／Ｆ回路には、内部テストクロック信号ＴＳＣＬＫが同期クロック信号として、クロック入力端子ＣＫに供給されているため、シフトレジスタのシフトクロック信号は、内部テストクロック信号ＴＳＣＬＫとなり、内部テストクロック信号ＴＳＣＬＫの変化に同期して、それぞれの入力Ｆ／Ｆ回路に保持されている出力信号の論理値が、出力端子Ｐｄｏから順次出力されることになる。これにより、動作タイミングテストの結果を取得することが可能となる。
【０１２２】
なお、動作タイミングテストにおいて、例えば入力Ｆ／Ｆ回路ＦＦＩ１−１を指定しない場合、対応する入力段テスト回路ＴＳＩ−１のセレクタＭＵＸ３、ＭＵＸ４は、任意の入力端子を選択するようにすればよい。しかしながら、テスト選択制御信号Ｔ−ＣＴＬｉによって、例えば、指定した場合と同様に、セレクタＭＵＸ４は、入力端子Ｎ２を選択し、セレクタＭＵＸ３は、入力端子Ｎ１を選択するようにしてもよい。
【０１２３】
図１〜図４においては、入力経路テスト回路ＴＳＴ−Ｉおよび出力経路テスト回路ＴＳＴ−Ｏのそれぞれが、外部テスト制御信号Ｔ−ＣＴＬに従って、入力経路選択信号および出力経路選択信号を形成する旨を説明したが、これに限定されない。例えば、入力経路テスト回路ＴＳＴ−Ｉおよび出力経路テスト回路ＴＳＴ−Ｏのそれぞれは、外部テスト制御信号Ｔ−ＣＴＬとテスト信号Ｔ−ＤＩとに従って、入力経路選択信号および出力経路選択信号を形成するようにしてもよい。この場合、入力経路テスト回路ＴＳＴ−Ｉは、テスト制御信号Ｔ−ＣＴＬによって、入力経路を選択状態にし、テスト信号Ｔ−ＤＩの値によって、選択する入力経路を指定するようにすればよい。同様に、出力経路テスト回路ＴＳＴ−Ｏは、テスト制御信号Ｔ−ＣＴＬによって、出力経路を選択状態にし、テスト信号Ｔ−ＤＩの値によって、選択する出力経路を指定するようにすればよい。
【０１２４】
＜動作タイミングテスト＞
＜＜半導体装置の製造工程における動作タイミングテスト＞＞
次に、動作タイミングテストの動作を、図５および図６を用いて説明する。図５は、半導体装置の製造方法において、行われる動作タイミングテストの動作を説明するフロチャート図である。半導体装置の製造方法は、半導体装置を製造する製造工程と、製造工程において製造された半導体装置をテストするテスト工程を備えている。テスト工程においては、製造された半導体装置にテスト回路またはテスト装置（テスター）を結合し、半導体装置のテストを行う。このテスト工程において、動作タイミングテストを含む複数のテストが実施される。図５には、テスト工程で行われる複数のテストのうち、動作タイミングテストについてのみ、詳しく示されている。
【０１２５】
動作タイミングテストは、入力系に対して実施する入力系動作タイミングテストのステップと、出力系に対して実施する出力系動作タイミングテストのステップと、入力系動作タイミングテストと出力系動作タイミングテストとに共通な共通ステップとが存在する。図１〜図５を参照にして、動作タイミングテストを説明する。図５において、ステップＳ００およびＳ０１は、共通ステップであり、ステップＳ０２は、入力系動作タイミングテストのステップであり、ステップＳ０３は、出力系動作タイミングテストのステップである。
【０１２６】
半導体装置をテスターに結合して、ステップＳ００を実施する。ステップＳ００においては、テスターから入力端子Ｐｃｋに外部テストクロック信号Ｔ−ＣＬＫを供給し、出力端子Ｐｃｏから出力されるテストクロック信号Ｔ−ＣＫＯを調べる。すなわち、外部テストクロック信号Ｔ−ＣＬＫの立ち上がりに同期して、テストクロック信号Ｔ−ＣＫＯが立ち上がるタイミングを、テスターによりサーチして調べる。これにより、入力段Ｆ／Ｆ回路および出力段Ｆ／Ｆ回路のクロック入力端子ＣＫに供給されるクロック信号（テストのときの同期クロック信号）のタイミングを調べて、把握する。
【０１２７】
図１〜図４では、入力端子Ｐｄｉ、Ｐｃｔ、Ｐｃｋ、Ｐｅｔおよび出力端子Ｐｃｏ、Ｐｄｏが、半導体装置ＣＨＰに独立して設けられているように示されているが、これらの入力端子および出力端子は、半導体装置ＣＨＰに設けられている別の入力端子あるいは出力端子と兼用にしてもよい。兼用にすることにより、半導体装置ＣＨＰの端子数を削減あるいは有効に用いることが可能となる。このように入力端子および出力端子を兼用にする場合、例えば、半導体装置ＣＨＰには、上記したテスト回路（入力経路テスト回路、出力経路テスト回路、入力段テスト回路および出力段テスト回路）を有効にするテストモードと、プロセッサＣＰＵ等の処理ユニットを動作させる処理モードを設ける。ステップＳ０１において、テスト回路を有効にするモード（テストモード）に半導体装置ＣＨＰを設定し、兼用となっている端子が、入力端子Ｐｄｉ、Ｐｃｔ、Ｐｃｋ、Ｐｅｔおよび出力端子Ｐｃｏ、Ｐｄｏとして機能するように設定する。なお、テストモードにおいて、入力系動作タイミングテストが指定された場合には、入力経路テスト回路、出力経路テスト回路、入力段テスト回路および出力段テスト回路のうち、入力経路テスト回路および入力段テスト回路が動作することになる。一方、テストモードにおいて、出力系動作タイミングテストが指定された場合には、入力経路テスト回路、出力経路テスト回路、入力段テスト回路および出力段テスト回路のうち、出力経路テスト回路および出力段テスト回路が動作することになる。
【０１２８】
次に、入力系動作タイミングテストの動作を説明する。入力系動作タイミングテストのステップＳ０３は、ステップＳ１０〜Ｓ１４を備えている。入力系動作タイミングテストにおいては、まず、ステップＳ１０が実行される、ステップＳ１０においては、入力経路テスト回路ＴＳＴ−Ｉによって、入力経路選択信号を形成させる。すなわち、テスターから、外部テストクロック信号Ｔ−ＣＬＫ、テスト信号Ｔ−ＤＩおよび外部テスト制御信号Ｔ−ＣＴＬを、入力端子Ｐｃｋ、ＰｃｔおよびＰｄｉへ供給する。このとき、テスターが供給するテスト制御信号Ｔ−ＣＴＬは、入力経路を選択する入力経路選択状態を表す制御信号である。また、このとき、テスターは、テストする入力経路を指定する指定情報を、テスト信号Ｔ−ＤＩとして供給する。テスト制御信号Ｔ−ＣＴＬを、入力経路選択状態を表す制御信号とすることによって、入力経路テスト回路ＴＳＴ−Ｉは動作可能状態となり、そのときに供給されているテスト信号Ｔ−ＤＩに従って、入力経路選択信号を形成する。この入力経路選択信号が入力経路選択回路ＩＲＳＬに供給され、テストの対象となるテスト経路が有効にされる。なお、このとき、入力経路選択制御回路ＲＳＣ−Ｉは無効にされ、ユーザが定めた入力経路は無効にされる。
【０１２９】
ステップＳ１１において、テスターは、外部テストクロック信号Ｔ−ＣＬＫ、テスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬを、入力端子Ｐｃｋ、ＰｃｔおよびＰｄｉへ供給する。このとき、テスターは、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−３内のセレクタＭＵＸ４が、内部テストクロック信号ＴＳＣＬＫを選択し、セレクタＭＵＸ３が、論理回路からの出力信号を選択するような制御信号を、テスト制御信号Ｔ−ＣＴＬとして出力する。また、このとき、テスターは、テストの対象となる入力段Ｆ／Ｆ回路を指定する指定信号をテスト信号Ｔ−ＤＩとして供給する。テスターからのテスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬに基づいて、図３で説明したテスト制御回路が、テスト選択制御信号Ｔ−ＣＴＬｉを形成する。これにより、指定された入力段Ｆ／Ｆ回路に、出力信号を供給する論理回路（例えば、論理回路ＬＧ１１）を含む機能ユニットが、テスト対象の機能ユニットとなる。すなわち、テスト対象の機能ユニット（ＩＰ）に含まれる入力段Ｆ／Ｆ回路が、入力データを受け付け（取り込み）可能となる。
【０１３０】
ステップＳ１２において、テスターは、外部動作クロック信号Ｅｘ−ＣＬＫに対して、半導体装置ＣＨＰの仕様を満たすタイミングで、テストの対象となる入力端子Ｐｉ１〜Ｐｉｎに、入力信号を印加する。すなわち、外部動作クロック信号Ｅｘ−ＣＬＫの変化に対して、仕様で定められた時間内のタイミングで、入力信号を対象となる入力端子へ供給する。このときの、入力信号が、テストパターンに該当する。
【０１３１】
ステップＳ１３において、テスターは、テスト対象の入力端子に印加された入力信号に対応したデータが正しく入力段Ｆ／Ｆ回路によって保持（ラッチ）されたか否かを判別するために、外部テストクロック信号Ｔ−ＣＬＫ、テスト制御信号Ｔ−ＣＴＬ、テスト信号Ｔ−ＤＩを、入力端子Ｐｃｋ、Ｐｃｔ、Ｐｄｉへ供給する。このとき、テスターは、入力段テスト回路ＴＳＩ−１〜ＴＳＩ−３のそれぞれにおけるセレクタＭＵＸ４が、入力端子Ｎ２を選択し、セレクタＭＵＸ３が、入力端子Ｎ１を選択するような制御信号を、テスト制御信号Ｔ−ＣＴＬとして出力する。これにより、入力段Ｆ／Ｆ回路が直列的に接続され、シフトレジスタが構成される。外部テストクロック信号Ｔ−ＣＬＫを変化させることにより、入力段Ｆ／Ｆ回路に保持（ラッチ）された値は、出力端子Ｐｄｏから、順次出力される。なお、テスターは、ステップＳ１３のとき、シフトレジスタのシフト入力として、テスト信号Ｔ−ＤＩを供給する。
【０１３２】
ステップＳ１４においては、ステップＳ１３で、出力端子Ｐｄｏから出力された値（出力値）が、テストパターンに対する期待値と一致するか否かの判定を、テスターが行う。ここで、一致していれば、対象入力端子と対象の機能ユニット（ＩＰ）とに関しての動作タイミングテストは成功（ＰＡＳＳ）と判定し、不一致であれば、失敗（ＦＡＩＬ）と判定する。
【０１３３】
次に、出力系動作タイミングテストの動作を説明する。出力系動作タイミングテストのステップＳ０３は、ステップＳ２０〜Ｓ２４を含んでいる。先ず、ステップＳ２０において、テスターは、ステップＳ００で調べた外部テストクロック信号Ｔ−ＣＫＯの立ち上がるタイミングに対して、半導体装置ＣＨＰの仕様を満たすタイミングで、出力端子Ｐｏ１〜Ｐｏｎにおける出力信号を比較する比較ポイント（ストローブポイント）を設定する。すなわち、外部テストクロック信号Ｔ−ＣＫＯが立ち上がってから、仕様を満たす時間内で、出力端子Ｐｏ１〜Ｐｏｎの信号と、テストパターンに対する期待値とを比較するタイミング（比較ポイント）を定める。
【０１３４】
ステップＳ２１において、テスターは、外部テストクロック信号Ｔ−ＣＬＫ、テスト制御信号Ｔ−ＣＴＬ、テスト信号Ｔ−ＤＩを、入力端子Ｐｃｋ、Ｐｃｔ、Ｐｄｉへ供給する。このとき、テスターが供給するテスト制御信号Ｔ−ＣＴＬは、出力経路を選択する出力経路選択状態を表す制御信号である。また、このとき、テスターは、テストする出力経路を指定する指定情報を、テスト信号Ｔ−ＤＩとして供給する。テスト制御信号Ｔ−ＣＴＬを、出力経路選択状態を表す制御信号とすることによって、出力経路テスト回路ＴＳＴ−Ｏは動作可能状態となり、そのときに供給されているテスト信号Ｔ−ＤＩに従って、出力経路選択信号を形成する。この出力経路選択信号が出力経路選択回路ＯＲＳＬに供給され、テストの対象となるテスト経路が有効にされる。なお、このとき、出力経路選択制御回路ＲＳＣ−Ｏは無効にされ、ユーザが定めた出力経路は無効にされる。
【０１３５】
ステップＳ２２において、テスターは、外部テストクロック信号Ｔ−ＣＬＫ、テスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬを、入力端子Ｐｃｋ、ＰｃｔおよびＰｄｉへ供給する。このとき、テスターは、出力段テスト回路ＴＳＯ−１〜ＴＳＯ−３内のセレクタＭＵＸ４が、内部テストクロック信号ＴＳＣＬＫを選択し、セレクタＭＵＸ３が、テスト信号Ｔ−ＤＩまたは前段の出力段Ｆ／Ｆ回路（出力Ｆ／Ｆ回路）からの出力信号を選択するような制御信号を、テスト制御信号Ｔ−ＣＴＬとして出力する。また、このとき、テスターは、テストの対象となる出力段Ｆ／Ｆ回路を指定する指定信号を、テスト信号Ｔ−ＤＩとして供給する。テスターからのテスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬに基づいて、図３で説明したテスト制御回路が、テスト選択制御信号Ｔ−ＣＴＬｉを形成する。これにより、テスト対象として指定された出力段Ｆ／Ｆ回路に、順次、テスト信号Ｔ−ＤＩが供給される。このときのテスト信号Ｔ−ＤＩによってテストパターンが構成される。その結果として、テスト対象の出力段Ｆ／Ｆ回路にテストパターンが設定されることになる。
【０１３６】
ステップＳ２３において、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐからテストパターンが出力される。ステップＳ２４において、テスターは、ステップＳ２０で設定した比較ポイントで、出力端子Ｐｏ１〜Ｐｏｎの値が、テストパターンに対応した期待値であるか否かの判別を行う。ここで、期待値と一致していれば、指定した出力段Ｆ／Ｆ回路と出力端子との間に関する動作タイミングテストは成功（ＰＡＳＳ）と判定し、不一致であれば、失敗（ＦＡＩＬ）と判定する。
【０１３７】
＜＜半導体装置の評価における動作タイミングテスト＞＞
半導体装置の性能を評価する際にも、動作タイミングテストは実施される。図６は、半導体装置ＣＨＰを評価する際に実施される動作タイミングテストの動作を示すフロチャート図である。同図において、ステップＳ００とステップＳ０１は、図５に示したステップＳ００とＳ０１と同じである。すなわち、共通ステップは、図５と図６とにおいて同じであるため、説明は省略する。半導体装置ＣＨＰを評価する際に実施する入力系動作タイミングテスト（入力系動作タイミング評価）は、図６においてステップＳ０４として示されており、出力系動作タイミングテスト（出力系動作タイミング評価）は、ステップＳ０５として示されている。
【０１３８】
入力系動作タイミング評価のステップＳ０４は、ステップＳ３０〜Ｓ３７を含んでいる。ステップＳ３０において、テスターは、入力端子Ｐｉ１〜Ｐｉｎに信号を印加する信号印加タイミングを、ステップＳ００で調べた外部テストクロック信号Ｔ−ＣＫＯの立ち上がりタイミングを基準にして、半導体装置ＣＨＰの仕様よりも緩く、必ず成功（ＰＡＳＳ）するタイミングに設定する。
【０１３９】
ステップＳ３１は、ステップＳ１０と同じであり、ステップＳ３２は、ステップＳ１１と同じであるため、ステップＳ３１およびＳ３２の説明は省略する。ステップＳ３３は、ステップＳ１２と類似しているが、テスターからテスト対象の入力端子Ｐｉ１〜Ｐｉｎに入力信号を印加するタイミングを、ステップＳ３０で設定した信号印加タイミングにして実施する。ステップＳ３４およびステップＳ３５は、ステップＳ１３およびステップＳ１４と同じであるため、説明は省略する。
【０１４０】
テスターは、ステップＳ３５において、不一致の場合、失敗（ＦＡＩＬ）と判定し、次にステップＳ３６を実行し、一致の場合、成功（ＰＡＳＳ）と判定し、次にステップＳ３７を実行する。
【０１４１】
ステップＳ３７においては、信号印加タイミングの値を厳しく設定し、再び、ステップＳ３３〜Ｓ３５実施する。このステップＳ３３〜Ｓ３５とステップＳ３７とが、ステップＳ３５において、不一致と判定されるまで、繰り返される。ステップＳ３６において、テスターは、失敗（ＦＡＩＬ）する直前に成功（ＰＡＳＳ）した信号印加タイミングの値を、入力信号に対して動作できる限界の値として把握する。
【０１４２】
出力系動作タイミング評価のステップＳ０５は、ステップＳ４０〜Ｓ４７を含んでいる。ステップＳ４０において、テスターは、出力端子Ｐｏ１〜Ｐｏｎから出力される出力信号を検査するタイミングの値（出力検査タイミング値）を、ステップＳ００で調べた外部テストクロック信号Ｔ−ＣＫＯの立ち上がりタイミングを基準にして、半導体装置ＣＨＰの仕様よりも緩く、必ず成功（ＰＡＳＳ）するタイミングに設定する。
【０１４３】
ステップＳ４１は、ステップＳ２１と同じでありステップＳ４２は、ステップＳ２２と同じであるため、ステップＳ４１およびＳ４２の説明は省略する。ステップＳ４３は、ステップＳ２０と類似しているが、テスターでの比較ポイント（ストローブポイント）が、ステップＳ４０により設定された出力検査タイミング値とされる。ステップＳ４４は、ステップＳ２３と同じであるため、説明は省略する。
【０１４４】
ステップＳ４５において、テスターは、出力検査タイミング値のときに、出力端子Ｐｏ１〜Ｐｏｎに出力されている出力信号の値が、テストパターンに対する期待値と一致しているか否かの判定を行う。ステップＳ４５の判定において、不一致の場合、失敗（ＦＡＩＬ）と判定し、次にステップＳ４６を実行し、一致の場合、成功（ＰＡＳＳ）と判定し、次にステップＳ４７を実行する。
【０１４５】
ステップＳ４７においては、出力検査タイミングの値を厳しく設定し、再び、ステップＳ４３〜Ｓ４５実施する。このステップＳ４３〜Ｓ４５とステップＳ４７とが、ステップＳ４５において、不一致と判定されるまで、繰り返される。ステップＳ４６において、テスターは、失敗（ＦＡＩＬ）する直前に成功（ＰＡＳＳ）した出力検査タイミングの値を、出力信号に対する動作できる限界の値として把握する。
【０１４６】
実施の形態１によれば、出力端子Ｐｃｏから出力されるテストクロック信号を基準として、動作タイミングテストを行うことが可能である。そのため、半導体装置ＣＨＰに内蔵されるＦ／Ｆ回路が増加しても、容易に動作タイミングテストを行うことが可能な半導体装置ＣＨＰを提供することができる。
【０１４７】
実施の形態１によれば、処理ユニットの機能を把握しなくても、動作タイミング用のテストパターンを作成することが可能となる。テスターから半導体装置へテストパターンを供給することにより、動作タイミングテストを行うことが可能であるため、処理ユニットを構成するプロセッサの構成が変わっても、テストパターンの作成をすることが可能である。さらに、テストパターンが、半導体装置内のプロセッサのプログラムによって生成されるものでないため、プログラムの検証を行わなくて済む。
【０１４８】
＜変形例＞
図７は、出力段テスト回路ＴＳＯまたは入力段テスト回路ＴＳＩの変形例の構成を示すブロック図である。同図に示す構成は、図３で示したテスト回路と同様に、出力段テスト回路ＴＳＯまたは入力段テスト回路ＴＳＩとして用いることができる。先ず、図７の構成を、出力段テスト回路として用いる場合を説明する。なお、図７には、出力段テスト回路ＴＳＯのうち、出力段テスト回路ＴＳＯ−１の構成が代表として示されている。
【０１４９】
図７において、ＦＦＯ１−１は、図３と同様に、出力Ｆ／Ｆ回路を示しており、ＴＳＯ−１は、図３と同様に、出力段テスト回路を示している。出力Ｆ／Ｆ回路ＦＦＯ１−１の構成は、図３と同じであるため、説明は省略する。
【０１５０】
出力段テスト回路ＴＳＯ−１は、図３と同様に、セレクタＭＵＸ３、ＭＵＸ４を有しており、セレクタＭＵＸ３、ＭＵＸ４の入力端子Ｎ１には、図３と同様に、出力信号ＩＰ１、内部動作クロック信号ＯＣＬＫが供給され、それぞれの出力端子Ｏ１は、出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄ、クロック入力端子ＣＫに接続されている。また、出力段テスト回路ＴＳＯ−１は、セレクタＭＵＸ７とＦ／Ｆ回路ＦＦＴとを備えている。
【０１５１】
この変形例における出力段テスト回路ＴＳＯ−１は、ＩＥＥＥ（アイ・トリプル・イー）１１４９．１（バウンダリスキャン）で定義されているテストデータレジスタとして構成されている。この場合、テスト選択制御信号Ｔ−ＣＴＬｉ（ｉ＝１〜ｐ）は、ＴｅｓｔＭＯＤＥ信号、ＳｈｉｆｔＤＲ信号、ＵｐｄａｔｅＤＲ信号により構成される。上記したセレクタＭＵＸ７の選択端子には、ＳｈｉｆｔＤＲ信号が供給され、セレクタＭＵＸ７のデータ出力端子は、Ｆ／Ｆ回路ＦＦＴのデータ入力端子に接続され、セレクタＭＵＸ７の一方の入力端子には、Ｆ／Ｆ回路ＦＦＴのデータ出力端子が接続され、セレクタＭＵＸ７の他方の入力端子には、テスト信号Ｔ−ＤＩが供給される。また、Ｆ／Ｆ回路ＦＦＴのクロック入力端子には、内部テストクロック信号ＴＳＣＬＫが供給されている。ＳｈｉｆｔＤＲ信号によって、セレクタＭＵＸ７の他方の入力端子とＦ／Ｆ回路ＦＦＴのデータ入力端子とを接続することによって、複数の出力段テスト回路ＴＳＯ−１〜ＴＳＯ−ｐのそれぞれにおけるＦ／Ｆ回路ＦＦＴが、直列的に接続され、テスト専用のシフトレジスタが構成される。
【０１５２】
出力Ｆ／Ｆ回路ＦＦＯ１−１に、設定したい値（テストパターン）を設定する場合、このテスト専用のシフトレジスタを用いる。すなわち、テスト信号Ｔ−ＤＩを、順次シフトレジスタ内で転送し、Ｆ／Ｆ回路ＦＦＴに、設定したい値を設定する。そのとき、ＴｅｓｔＭＯＤＥ信号によって、セレクタＭＵＸ３およびＭＵＸ４が入力端子Ｎ２を選択するようにする。これにより、ＵｐｄａｔｅＤＲ信号が、出力Ｆ／Ｆ回路ＦＦＯ１−１の同期信号として、クロック入力端子ＣＫに供給され、設定したい値が、出力Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄに供給される。その結果、動作タイミングテストのとき、ＵｐｄａｔｅＤＲ信号に同期して、設定したい値が、出力Ｆ／Ｆ回路ＦＦＯ１−１に取り込まれることになる。これにより、図３で示した出力段テスト回路と同様な機能を達成することができる。
【０１５３】
図７に示す構成を、入力段テスト回路ＴＳＩ−１として用いる場合、図３と同様に、（）内に示した符号に変わる。入力段テスト回路ＴＳＩ−１として用いる場合も、図３で説明したのと同様に制御することによって、動作タイミングテストのときに、論理回路ＬＧ１１からの出力信号を、ＵｐｄａｔｅＤＲ信号に同期して、入力Ｆ／Ｆ回路ＦＦＩ１−１に取り込むことが可能である。この場合、それぞれの入力Ｆ／Ｆ回路に取り込まれた出力信号の論理値は、例えば並列的に半導体装置ＣＨＰから出力させることが可能である。
【０１５４】
上記した出力段Ｆ／Ｆ回路ＦＦＯ１（出力Ｆ／Ｆ回路ＦＦＯ１−１、ＦＦＯ１−２）、ＦＦＯ２（出力Ｆ／Ｆ回路ＦＦＯ２−１、ＦＦＯ２−２）およびＦＦＯ３（ＦＦＯ３−１）は、例えば、対応する機能ユニットＩＰ１、ＩＰ２およびＩＰ３の最終出力段Ｆ／Ｆ回路である。また、上記した入力段Ｆ／Ｆ回路ＦＦＩ１（入力Ｆ／Ｆ回路ＦＦＩ１−１、ＦＦ１Ｉ−ｎ）、ＦＦＯ２（入力Ｆ／Ｆ回路ＦＦＩ２−１、ＦＦＩ２−ｎ）、ＦＦＩ３（ＦＦＩ３−１）は、例えば、対応する機能ユニットＩＰ４、ＩＰ５、ＩＰ６の初段入力段Ｆ／Ｆ回路である。すなわち、上記した出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯ３および入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩ３として、ユーザが定める機能ユニットに含まれているＦ／Ｆ回路を用いている。しかしながら、機能ユニットに、上記した出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯ−３および入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩ３を追加するようにしてもよい。
【０１５５】
（実施の形態２）
図８〜図１０は、実施の形態２に係わる動作タイミングテストの動作を示す波形図である。半導体装置ＣＨＰの構成は、実施の形態１で説明した構成と同じである。図８〜図１０において、横軸は時間を示している。
【０１５６】
図５および図６を用いて説明した動作タイミングテストの動作と、同様に、実施の形態２に係わる動作タイミングテストの動作においても、動作タイミングテストは、共通のステップと、入力系動作タイミングテストのステップと、出力系動作タイミングテストのステップとを有している。勿論、１回の動作タイミングテストにおいて、入力系動作タイミングのステップと、出力系動作タイミングテストのステップの両方を実施しなくてもよい。
【０１５７】
＜共通動作＞
先ず、共通のステップに関する動作（共通動作）を、図８を用いて説明する。図８（Ａ）は、半導体装置ＣＨＰに、モードを指定するモード信号の波形を示し、図８（Ｂ）は、外部テストクロック信号Ｔ−ＣＬＫの波形を示し、図８（Ｃ）は、外部テストクロック信号Ｔ−ＣＫＯの波形を示し、図８（Ｄ）は、テスト制御信号Ｔ−ＣＴＬの波形を示し、図８（Ｅ）は、テスト信号Ｔ−ＤＩの波形を示している。これらの信号は、テスト工程において、テスターが発生する。
【０１５８】
先ず、テスターは、図８（Ａ）に示すように、モード信号を変化させて、テスト回路（入力経路テスト回路、出力経路テスト回路、入力段テスト回路および出力段テスト回路）が有効となるモード（テストモード）へエントリする。テスト回路が有効となるテストモードへエントリすることにより、半導体装置ＣＨＰにおいては、テスト関連の端子と兼用している端子が、図１に示すように、テスト関連の入力端子および出力端子となるように、変更が行われる。
【０１５９】
テスト回路が有効となるモードへエントリされると、次に外部テストクロック信号Ｔ−ＣＫＯのサーチを行う。外部テストクロック信号Ｔ−ＣＫＯのサーチにおいては、図８（Ｂ）に示すように、テスターは、外部テストクロック信号Ｔ−ＣＬＫを変化させる。この外部テストクロック信号Ｔ−ＣＬＫの変化により、出力端子Ｐｃｏから出力されるテストクロック信号Ｔ−ＣＫＯも変化する。テスターは、テストクロック信号Ｔ−ＣＫＯを入力し、外部テストクロック信号Ｔ−ＣＬＫとテストクロック信号Ｔ−ＣＫＯとの間の時間差、すなわち遅延時間を測定する。
【０１６０】
テストクロック信号Ｔ−ＣＫＯの遅延時間を測定すると、次に、テスターは、入力段テスト回路ＴＳＩおよび／または出力段テスト回路ＴＳＯの設定を実施する。この入力段テスト回路ＴＳＩおよび／または出力段テスト回路ＴＳＯの設定により、動作タイミングテストの際に用いる入力段Ｆ／Ｆ回路および／または出力段Ｆ／Ｆ回路が、テスターから対象として選択（指定）される。
【０１６１】
すなわち、テスターは、入力段テスト回路ＴＳＩおよび／または出力段テスト回路ＴＳＯの設定において、テスト制御信号Ｔ−ＣＴＬを、対象Ｆ／Ｆ回路（入力段Ｆ／Ｆ回路、出力段Ｆ／Ｆ回路）を選択状態に設定する制御信号にして、外部テストクロック信号Ｔ−ＣＬＫに同期して供給する（図８（Ｄ））。また、このとき、テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、対象Ｆ／Ｆ回路を指定する指定信号をテスト信号Ｔ−ＤＩとして供給する（図８（Ｅ））。図３において説明したテスト制御回路が、対象Ｆ／Ｆ回路を指定する指定信号により指定されている対象Ｆ／Ｆ回路に対して、選択状態に設定する制御信号をテスト選択制御信号として供給する。これにより、複数のＦ／Ｆ回路から、指定信号により指定された対象Ｆ／Ｆ回路が、選択状態にされる。
【０１６２】
このあと、出力系動作タイミングテストまたは／および入力系動作タイミングテストが行われる。
【０１６３】
＜出力系動作タイミングテスト＞
次に、出力系動作タイミングテストの動作を、図９を用いて説明する。図９（Ａ）〜図９（Ｅ）は、図８（Ａ）〜図８（Ｅ）と同じに、モード信号の波形、外部テストクロック信号Ｔ−ＣＬＫの波形、テストクロック信号Ｔ−ＣＫＯの波形、テスト制御信号Ｔ−ＣＴＬの波形およびテスト信号Ｔ−ＤＩの波形を示しており、図８（Ａ）〜図８（Ｅ）のあとに続いた波形の変化を示している。
【０１６４】
図９（Ａ）に示すモード信号の波形は、特に制限されないが、テスト回路が有効となるモードを維持していることを示している。テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、出力経路を選択状態にする制御信号を、テスト制御信号Ｔ−ＣＴＬとして供給し、出力経路を指定する指定信号を、テスト信号Ｔ−ＤＩとして供給する（図９（Ｄ）、図９（Ｅ））。これにより、出力経路選択の設定が行われる。すなわち、出力経路テスト回路ＴＳＴ−Ｏが、このときのテスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬに基づいて、出力経路選択信号を形成し、出力経路選択回路ＯＲＳＬへ供給する。出力経路選択回路ＯＲＳＬにおいては、出力経路選択信号に従って、セレクタの接続状態が決められ、出力経路を指定する指定信号によって指定された出力経路が、機能ユニットと出力端子Ｐｏ１〜Ｐｏｎの間に形成される。
【０１６５】
次に、テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、出力段Ｆ／Ｆ回路ＦＦＯ１〜ＦＦＯｐに出力データをセットする状態に設定する制御信号を、テスト制御信号Ｔ−ＣＴＬとして供給する（図９（Ｄ））。そのあとで、テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、セットされるべき出力データを、テスト信号Ｔ−ＤＩとして供給する。このときのテスト制御信号Ｔ−ＣＴＬによって、出力段Ｆ／Ｆ回路は直列的に接続され、シフトレジスタを構成する。このシフトレジスタに、テスト信号Ｔ−ＤＩが供給される。テスト信号Ｔ−ＤＩは、内部テストクロック信号ＴＳＣＬＫをシフトクロック信号として、シフトレジスタ内を移動し、シフトレジスタを構成している各出力段Ｆ／Ｆ回路に保持される。
【０１６６】
その後、所定のタイミング（比較ポイント）で、出力端子Ｐｏ１〜Ｐｏｎにおける出力信号の変化を、テスターは検出する。図９（Ｆ）には、出力端子Ｐｏ１〜Ｐｏｎのうち、出力端子Ｐｏｎにおける出力信号の変化が示されている。テスターは、半導体装置ＣＨＰの出力端子Ｐｃｏから出力されているテストクロック信号Ｔ−ＣＫＯの立ち上がりタイミングを基準として、出力端子Ｐｏｎにおける出力信号の立ち上がりタイミングおよび／または立ち下がりタイミングとの時間差を、出力遅延時間として取得する。残りの出力端子における出力信号の出力遅延時間も、同様にして取得する。これにより、出力データの設定と出力遅延時間の測定とが行われる。
【０１６７】
図８に示した共通ステップのときに、半導体装置ＣＨＰに供給した外部テストクロック信号Ｔ−ＣＬＫと半導体装置ＣＨＰから出力されたテストクロックＴ−ＣＫＯとの間の遅延時間を求めているため、テスターは、外部テストクロック信号Ｔ−ＣＬＫを基準として、出力端子Ｐｏ１〜Ｐｏｎにおける信号変化の遅延時間を取得することができる。また、テスターは、比較ポイントにおいて、テストパターンに対する期待値と一致しているか否かを判定することができる。
【０１６８】
＜入力系動作タイミングテスト＞
入力系動作タイミングテストの動作を、図１０を用いて説明する。図１０（Ａ）〜図１０（Ｅ）は、図８（Ａ）〜図８（Ｅ）と同じに、モード信号の波形、外部テストクロック信号Ｔ−ＣＬＫの波形、テストクロック信号Ｔ−ＣＫＯの波形、テスト制御信号Ｔ−ＣＴＬの波形およびテスト信号Ｔ−ＤＩの波形を示しており、図８（Ａ）〜図８（Ｅ）のあとに続いた波形の変化を示している。
【０１６９】
図１０（Ａ）に示すモード信号の波形は、特に制限されないが、テスト回路が有効となるモードを維持していることを示している。テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、入力経路を選択状態にする制御信号を、テスト制御信号Ｔ−ＣＴＬとして供給し、入力経路を指定する指定信号を、テスト信号Ｔ−ＤＩとして供給する（図１０（Ｄ）、図１０（Ｅ））。これにより、入力経路選択の設定が行われる。すなわち、入力経路テスト回路ＴＳＴ−Ｉが、このときのテスト信号Ｔ−ＤＩおよびテスト制御信号Ｔ−ＣＴＬに基づいて、入力経路選択信号を形成し、入力経路選択回路ＩＲＳＬへ供給する。入力経路選択回路ＩＲＳＬにおいては、入力経路選択信号に従って、セレクタの接続状態が決められ、入力経路を指定する指定信号によって指定された入力経路が、入力端子Ｐｉ１〜Ｐｉｎと機能ユニットの間に形成される。
【０１７０】
次に、テスターは、外部テストクロック信号Ｔ−ＣＬＫに同期して、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐに入力データをセットする状態に設定する制御信号を、テスト制御信号Ｔ−ＣＴＬとして供給する（図１０（Ｄ））。そのあとで、テスターは、入力端子Ｐｉ１〜Ｐｉｎに入力信号（入力データ）を供給する。図１０には、例として入力端子Ｐｉｎに入力信号を供給したときの波形が、図１０（Ｆ）として示されている。テスターは、半導体装置ＣＨＰの出力端子Ｐｃｏから出力されるテストクロック信号Ｔ−ＣＫＯの立ち上がりタイミングを基準として、入力信号の立ち上がりタイミングおよび／または立ち下がりタイミングとの間の時間差を、入力遅延時間として測定する。
【０１７１】
所定時間後に、テスターは、テスト結果を出力させる状態を示す制御信号をテスト制御信号Ｔ−ＣＴＬとして、半導体装置ＣＨＰへ供給する。これにより、半導体装置ＣＨＰにおいて、入力段Ｆ／Ｆ回路ＦＦＩ１〜ＦＦＩｐは、直列的に接続され、シフトレジスタが構成される。内部テストクロック信号ＴＳＣＬＫをシフトクロック信号とし、シフトレジスタの値は、順次、出力端子Ｐｄｏから出力信号Ｔ−ＤＯとして出力される。これがテスト結果出力となる。
【０１７２】
テスターは、入力端子Ｐｉ１〜Ｐｉｎに供給した入力データをテストパターンとし、出力信号Ｔ−ＤＯが、テストパターンに対応する期待値と一致しているか否かを判定する。一致している場合、テストクロック信号Ｔ−ＣＬＫを基準とした入力遅延時間は、図８において予め測定した遅延時間と、テストクロック信号Ｔ−ＣＫＯを基準とした入力遅延時間とによって求められる。
【０１７３】
実施の形態１および２において、出力系動作タイミングテストと入力系動作タイミングテストは、実質的に同時に実施するようにしてもよいし、別々に実施するようにしてもよい。また、動作タイミングテストに用いる端子、例えば端子Ｐｄｉ、Ｐｃｋ、Ｐｄｏ等を、出力系動作タイミングテスト用と、入力系動作タイミングテスト用の２系統にし、それぞれの系の端子を半導体装置ＣＨＰに設けるようにしてもよい。
【０１７４】
（実施の形態３）
図１１は、実施の形態３に係わる半導体装置ＣＨＰの構成を示すブロック図である。図１１には、半導体装置ＣＨＰの出力系が主に示されており、その構成は、図２に示した半導体装置ＣＨＰと類似している。ここでは、図２に示した構成との相違点を主に説明する。先ず、プロセッサＣＰＵを構成する制御ユニットＣＰＵ−Ｃと機能ユニットＩＰ１〜ＩＰ３は、両者間で同じであり、クロック生成回路ＣＬＫＧ、セレクタＭＵＸ１、ＭＵＸ２および出力経路選択制御回路ＲＳＣ−Ｏも、両者間で同じである。そのため、これらについての説明は、説明の都合上必要な場合を除き、省略する。
【０１７５】
実施の形態３においては、半導体装置ＣＨＰに、入力端子Ｐｄｉおよび出力端子Ｐｃｏ、Ｐｄｏが、設けられていない。また、出力段テスト回路の構成が、図２に示した出力段テスト回路と異なっており、出力経路テスト回路の構成も、図に示した出力経路テスト回路と異なっている。
【０１７６】
図１１において、ＦＦＯ１−１〜ＦＦＯ１−ｎ、ＦＦＯ２−１〜ＦＦＯ２−ｎおよびＦＦＯ３−１は、出力段Ｆ／Ｆ回路を示しており、ＴＳＯ１−１〜ＴＳＯ１−ｎ、ＴＳＯ２−１〜ＴＳＯ２−ｎおよびＴＳＯ３−１は、出力段テスト回路（第１選択回路）を示している。それぞれの出力段Ｆ／Ｆ回路ＦＦＯ１−１〜ＦＦＯ１−ｎ、ＦＦＯ２−１〜ＦＦＯ２−ｎおよびＦＦＯ３−１は、互いに同じ構成を有しており、出力段テスト回路ＴＳＯ１−１〜ＴＳＯ１−ｎ、ＴＳＯ２−１〜ＴＳＯ２−ｎおよびＴＳＯ３−１も、互いに同じ構成を有している。出力段テスト回路および出力段Ｆ／Ｆ回路の構成および動作については、後で、図１２および図１３を用いて一例を説明するので、ここでは簡単に説明する。
【０１７７】
特に制限されないが、この実施の形態３において、出力段テスト回路は、出力段Ｆ／Ｆ回路に１対１で対応している。出力段テスト回路ＴＳＯ１−１を例にして説明すると、出力段テスト回路ＴＳＯ１−１は、出力段Ｆ／Ｆ回路ＦＦＯ１−１に対応している。この出力段テスト回路ＴＳＯ１−１は、入力端子Ｐｃｔに供給されるテスト制御信号Ｔ−ＣＴＬ、内部動作クロック信号ＯＣＬＫ、内部テストクロック信号ＴＳＣＬＫおよび機能ユニットＩＰ１からの出力信号を受け、通常動作のときと動作タイミングテストのときとで、対応する出力段Ｆ／Ｆ回路ＦＦＯ１−１へ供給される同期クロック信号と供給される入力信号とを変更する。
【０１７８】
すなわち、出力段テスト回路ＴＳＯ１−１は、通常動作のとき、内部動作クロック信号ＯＣＬＫを、出力段Ｆ／Ｆ回路ＦＦＯ１−１の同期クロック信号として選択し、供給する。また、通常動作のときには、出力段テスト回路ＴＳＯ１−１は、機能ユニットＩＰ１からの出力信号を、出力段Ｆ／Ｆ回路ＦＦＯ１−１の入力信号として選択して、供給する。これにより、通常動作のときには、内部動作クロック信号ＯＣＬＫに同期して、出力段Ｆ／Ｆ回路ＦＦＯ１−１が、機能ユニットＩＰ１からの出力信号を取り込み、取り込んだ出力信号に対応する論理値の出力信号ＩＰ１−１が、出力段テスト回路ＴＳＯ１−１から、出力経路選択回路ＯＲＳＬへ伝達される。
【０１７９】
これに対して、動作タイミングテストの際には、内部テストクロック信号ＴＳＣＬＫを、出力段Ｆ／Ｆ回路ＦＦＯ１−１の同期クロック信号として選択し、供給する。また、動作タイミングテストの際には、対応する出力段Ｆ／Ｆ回路ＦＦＯ１−１を用いて、内部テストクロック信号ＴＳＣＬＫに同期したテスト信号を発生し、これを出力信号ＩＰ１−１として、出力経路選択回路ＯＲＳＬへ伝達する。
【０１８０】
残りの出力段テスト回路および出力段Ｆ／Ｆ回路も同様な動作を行う。その結果、通常動作のときには、機能ユニットＩＰ１〜ＩＰ３からの出力信号が、内部動作クロック信号ＯＣＬＫに同期して、出力段Ｆ／Ｆ回路ＦＦＯ１−１〜ＦＦＯ１−ｎ、ＦＦＯ２−１〜ＦＦＯ２−ｎおよびＦＦＯ３−１に取り込まれ、出力信号ＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１として、出力経路選択回路ＯＲＳＬへ伝達される。また、動作タイミングテストのときには、内部テストクロック信号ＴＳＣＬＫに同期した信号が、出力信号ＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１として、出力経路選択回路ＯＲＳＬへ伝達されることになる。
【０１８１】
出力経路テスト回路ＴＳＴ−Ｏ（第２選択回路）は、動作タイミングテストのとき、テスト制御信号Ｔ−ＣＴＬを受け、出力経路選択制御信号を形成する。実施の形態１と同様に、通常動作のときには、ユーザによって定められた出力経路が形成されるように、出力経路選択制御回路ＲＳＣ−Ｏが出力経路選択制御信号を形成するが、動作タイミングテストのときには、出力経路選択制御回路ＲＳＣ−Ｏは無効とされ、出力経路テスト回路ＴＳＴ−Ｏによって形成された出力経路選択制御信号によって、セレクタＭＵＸ１、ＭＵＸ２が制御され、出力経路が定められる。この実施の形態３においては、テスト入力信号Ｔ−ＤＩが供給されないため、テスト入力信号Ｔ−ＤＩによって出力経路を指定することはできない。しかしながら、テスト制御信号Ｔ−ＣＴＬが複数の信号によって構成されているため、例えば、テスト制御信号Ｔ−ＣＴＬを構成する信号のうちの一部の信号によって、出力経路を指定するようにしてもよい。
【０１８２】
この実施の形態３においては、動作タイミングテストのとき、出力段テスト回路ＴＳＯ１−１〜ＴＳＯ１−ｎ、ＴＳＯ２−１〜ＴＳＯ２−ｎおよびＴＳＯ３−１のそれぞれによって形成された信号が、出力信号ＩＰ１−１〜ＩＰ１−ｎ、ＩＰ２−１〜ＩＰ２−ｎ、ＩＰ３−１として、信号配線（図示せず）およびセレクタを介して出力端子Ｐｏ１、Ｐｏ２に伝達されることになる。この場合、それぞれの出力段テスト回路において形成される信号は、内部テストクロック信号ＴＳＣＬＫに同期したクロック信号となる。
【０１８３】
この実施の形態においては、出力端子Ｐｏ１、Ｐｏ２に伝達されたクロック信号間の時間差を測定することにより、動作タイミングテストを実施する。すなわち、複数の出力端子に伝達されたクロック信号間の時間差が所定時間よりも長い場合、動作タイミングテストは失敗（ＦＡＩＬ）と判定し、所定時間よりも短い場合には、動作タイミングテストは成功（ＰＡＳＳ）と判定する。このようにすることにより、基準となるクロック信号を半導体装置ＣＨＰで形成する必要がなくなり、半導体装置ＣＨＰから基準となるクロック信号を出力する必要も無くなる。
【０１８４】
図１１において、ＴＳＣＣは、半導体装置ＣＨＰの外部に設けられたテスト回路である。テスト回路ＴＳＣＣは、半導体装置ＣＨＰの２個の出力端子に接続され、動作タイミングテストのとき、この２個の出力端子における信号の変化の時間差を求め、テスターＡＴＥへ供給する。図１１においては、例として半導体装置ＣＨＰの出力端子Ｐｏ１とＰｏ２に、テスト回路ＴＳＣＣは接続されており、出力端子Ｐｏ１における信号の変化と出力端子Ｐｏ２における信号の変化との間の時間差に応じた信号を、テストクロック信号Ｔ−ＣＬＫに同期して、テスターＡＴＥへ供給する。例えば、動作タイミングテストのとき、出力経路テスト回路ＴＳＴ−Ｏにより形成された出力経路選択制御信号によって、セレクタＭＵＸ１は、出力信号ＩＰ１−１を出力端子Ｐｏ１へ伝達し、セレクタＭＵＸ２は、出力信号ＩＰ１−ｎを出力端子Ｐｏ２へ伝達する場合、出力信号ＩＰ１−１による出力端子Ｐｏ１における信号の変化と出力信号ＩＰ１−ｎによる出力端子Ｐｏ２における信号の変化との間の時間差に応じた信号を、テスト回路ＴＳＣＣが形成する。
【０１８５】
テスト回路ＴＳＣＣからの信号に基づいて、テスターＡＴＥが、所定の時間よりも長いか、短いかの判定を行い、動作タイミングテストが成功か失敗かを判定する。
【０１８６】
テスト回路ＴＳＣＣは、２入力の排他的オア（ＯＲ）回路ＥＲと、パルス幅測定回路ＴＦＣとを備えている。ここで、排他的オア回路ＥＲの一方の入力は、出力端子Ｐｏ１に接続され、他方の入力は、出力端子Ｐｏ２に接続される。これにより、排他的オア回路ＥＲは、出力端子Ｐｏ１における信号の電圧と、出力端子Ｐｏ２における信号の電圧とが異なっている期間、ハイレベルの出力信号を形成する。パルス幅測定回路ＴＦＣは、排他的オア回路の出力信号がハイレベルの期間、パルス幅測定用クロック信号発生回路ＰＷＧにより発生したクロック信号を用いて、測定し、テストクロック信号Ｔ−ＣＬＫに同期して、出力する。これにより、パルス幅測定回路ＴＦＣから、出力端子Ｐｏ１、Ｐｏ２が異なる電圧になっている期間に対応した信号がテスターＡＴＥへ供給される。
【０１８７】
＜出力段テスト回路および出力段Ｆ／Ｆ回路の構成＞
次に、出力段テスト回路および出力段Ｆ／Ｆ回路の構成を、図１２を用いて説明する。ここでは、図１１に示した出力段テスト回路ＴＳＯ１−１およびこの出力段テスト回路ＴＳＯ１−１に対応する出力段Ｆ／Ｆ回路ＦＦＯ１−１を例として説明する。
【０１８８】
図１２において、出力段Ｆ／Ｆ回路ＦＦＯ１−１は、リセット端子Ｒ、データ入力端子Ｄ、データ出力端子Ｑ、データ反転出力端子Ｑ／およびクロック入力端子ＣＫを有するフリップフロップ回路である。ここで、データ反転出力端子Ｑ／は、データ出力端子Ｑからの出力信号に対して、論理反転した出力信号を出力する端子である。
【０１８９】
この出力段Ｆ／Ｆ回路ＦＦＯ１−１は、リセット端子Ｒにロウレベル（論理値“０”）が供給されると、リセット状態となり、データ出力端子Ｑはロウレベルとなり、データ反転出力端子Ｑ／はハイレベル（論理値“１”）となる。リセット端子Ｒがハイレベルにされているとき、クロック入力端子ＣＫに供給されている信号が立ち上がると、データ入力端Ｄに供給されている信号を取り込み、取り込んだ信号の論理値を保持し、保持している論理値に対応した信号を、データ出力端子Ｑから出力する。また、このとき、保持している論理値を反転した論理値に対応する信号を、データ反転出力端子Ｑ／から出力する。
【０１９０】
出力段テスト回路ＴＳＯ１−１は、セレクタＭＵＸ８、ＭＵＸ９およびＭＵＸ１０を備えている。それぞれのセレクタＭＵＸ８〜ＭＵＸ１０は、出力端子Ｏ１、入力端子Ｎ１、Ｎ２および選択端子Ｓ１を有しており、選択端子Ｓ１に供給される信号の電圧に従って、入力端子Ｎ１またはＮ２を選択し、選択した入力端子を出力端子Ｏ１へ接続する。
【０１９１】
この実施の形態において、テスターＡＴＥは、テストモード信号Ｔ−ＭＯＤとリセットパルス信号ＲＳＴを含むテスト制御信号Ｔ−ＣＴＬを発生する。ここで、テストモード信号Ｔ−ＭＯＤは、例えば動作タイミングテストか、通常動作（処理モード）かを示すモード信号である。
【０１９２】
上記したテストモード信号Ｔ−ＭＯＤは、セレクタＭＵＸ８〜ＭＵＸ１０のそれぞれの選択端子Ｓ１に供給されている。セレクタＭＵＸ８の入力端子Ｎ１には、機能ユニットＩＰ１からの出力信号が供給され、入力端子Ｎ２は、出力段Ｆ／Ｆ回路ＦＦＯ１−１のデータ反転出力端子Ｑ／に接続されており、出力端子Ｏ１は、出力段Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄに接続されている。セレクタＭＵＸ９の入力端子Ｎ１には、内部動作クロック信号ＯＣＬＫが供給され、入力端子Ｎ２には、内部テストクロック信号ＴＳＣＬＫが供給され、出力端子Ｏ１は、出力段Ｆ／Ｆ回路ＦＦＯ１−１のクロック入力端子ＣＫに接続されている。また、セレクタＭＵＸ１０の入力端子Ｎ２には、リセットパルス信号ＲＳＴが供給され、出力端子Ｏ１は、出力段Ｆ／Ｆ回路ＦＦＯ１−１のリセット端子Ｒに接続されている。特に制限されないが、セレクタＭＵＸ１０の入力端子Ｎ１は、例えばハイレベルの電圧に接続されている。出力段Ｆ／Ｆ回路ＦＦＯ１−１のデータ出力端子Ｑが、出力段テスト回路ＴＳＯ１−１の出力となる。
【０１９３】
テスターＡＴＥは、通常動作（処理モード）のとき、テストモード信号Ｔ−ＭＯＤを、ハイレベルにする。これにより、セレクタＭＵＸ８〜ＭＵＸ１０のそれぞれは、入力端子Ｎ１を選択し、出力端子Ｏ１へ接続する。セレクタＭＵＸ８の入力端子Ｎ１が、出力端子Ｏ１に接続されるため、機能ユニットＩＰ１からの出力信号が、出力段Ｆ／Ｆ回路ＦＦＯ１−１のデータ入力端子Ｄに供給される。このとき、セレクタＭＵＸ９の入力端子Ｎ１が、出力端子Ｏ１に接続されているため、出力段Ｆ／Ｆ回路ＦＦＯ１−１のクロック入力端子ＣＫには、同期クロック信号として、内部動作クロック信号ＯＣＬＫが供給される。また、セレクタＭＵＸ１０は、入力端子Ｎ１が選択されているため、出力段Ｆ／Ｆ回路ＦＦＯ１−１のリセット端子ＲＳＴには、ハイレベルが供給される。その結果、内部動作クロック信号ＯＣＬＫが変化することにより、出力段Ｆ／Ｆ回路ＦＦＯ１−１は、機能ユニットＩＰ１からの出力信号を取り込み、データ出力端子Ｑから出力する。
【０１９４】
すなわち、通常動作のときには、内部動作クロック信号ＯＣＬＫに同期して、機能ユニットＩＰ１からの出力信号を取り込み、出力信号ＩＰ１−１として、出力経路選択回路ＯＲＳＬへ供給する。
【０１９５】
動作タイミングテストを実施するとき、テスターＡＴＥは、テストモード信号Ｔ−ＭＯＤを、ロウレベルにする。また、このとき、テスターＡＴＥは、リセットパルス信号ＲＳＴを、ロウレベルにし、その後、再びハイレベルにする。テストモード信号Ｔ−ＭＯＤがロウレベルとなることにより、セレクタＭＵＸ８〜ＭＵＸ１０のそれぞれは、入力端子Ｎ２を選択し、選択した入力端子Ｎ２を出力端子Ｏ１へ接続する。
【０１９６】
セレクタＭＵＸ１０の入力端子Ｎ２が出力端子Ｏ１に接続されるため、リセットパルス信号ＲＳＴが、出力段Ｆ／Ｆ回路ＦＦＯ１−１のリセット端子Ｒに供給される。テスターＡＴＥが、動作タイミングテストのとき、一旦、リセットパルス信号ＲＳＴをロウレベルにすることにより、出力段Ｆ／Ｆ回路ＦＦＯ１−１は、リセット状態となる。すなわち、出力段Ｆ／Ｆ回路ＦＦＯ１−１のデータ出力端子Ｑからはロウレベルの出力信号が出力され、データ反転出力端子Ｑ／からは、ハイレベルの出力信号が出力されることになる。残りの出力段テスト回路および出力段Ｆ／Ｆ回路についても、同様に、出力段Ｆ／Ｆ回路がリセット状態とされる。
【０１９７】
テスターＡＴＥが、リセットパルス信号ＲＳＴを、再びハイレベルにすると、セレクタＭＵＸ８よびＭＵＸ９のそれぞれの入力端子Ｎ２が選択されているため、出力段Ｆ／Ｆ回路ＦＦＯ１−１のクロック入力端子ＣＫには、内部テストクロック信号ＴＳＣＬＫが同期クロック信号として供給され、データ入力端子Ｄには、データ反転出力端子Ｑ／からの出力信号が供給される。そのため、出力段Ｆ／Ｆ回路ＦＦＯ１−１は、内部テストクロック信号ＴＳＣＬＫの立ち上がりに同期して、データ反転出力端子Ｑ／から出力されているハイレベルの出力信号を取り込んで、データ出力端子Ｑからハイレベルの出力信号を出力し、データ反転出力端子Ｑ／からロウレベルの出力信号を出力する。すなわち、出力段Ｆ／Ｆ回路ＦＦＯ１−１は、内部テストクロック信号ＴＳＣＬＫの変化に同期して、データ出力端子Ｑから出力している出力信号の論理値を反転した信号を取り込み、反転した出力信号を、データ出力端子Ｑから出力することになる。これにより、内部テストクロック信号ＴＳＣＬＫに同期して、交互の論理値が変化する信号が、出力信号ＩＰ１−１として、出力経路選択回路ＯＲＳＬへ供給される。
【０１９８】
残りの出力段テスト回路および出力段Ｆ／Ｆ回路においても同様に、動作タイミングテストのときには、内部テストクロック信号ＴＳＣＬＫに同期して、交互に論理値が変わる信号を、出力信号として、出力経路選択回路ＯＲＳＬへ供給する。
【０１９９】
図１３は、図１２に示した出力段テスト回路および出力段Ｆ／Ｆ回路を、図１１に示した出力段テスト回路ＴＳＯ１−１〜ＴＳＯ１−ｎ、ＴＳＯ２−１〜ＴＳＯ２−ｎおよびＴＳＯ３−１および出力段Ｆ／Ｆ回路ＦＦＯ１−１〜ＦＦＯ１−ｎ、ＦＦＯ２−１〜ＦＦＯ２−ｎおよびＦＦＯ３−１として用いた場合の動作を示す波形図である。図１３において、横軸は時間を示している。図１３（Ａ）は、内部テストクロック信号ＴＳＣＬＫの波形を示しており、図１３（Ｂ）は、出力端子Ｐｏ１における電圧の変化を示しており、図１３（Ｃ）は、出力端子Ｐｏ２における電圧の変化を示している。また、図１３（Ｄ）は、排他的オア回路ＥＲの出力の変化を示している。
【０２００】
図１３では、動作タイミングテストのときを示しており、動作タイミングテストにおいて、出力経路テスト回路ＴＳＴ−Ｏによって、例えば、出力信号ＩＰ１−１を、出力端子Ｐｏ１に伝達する出力経路が形成され、出力信号ＩＰ１−ｎを、出力端子Ｐｏ２へ伝達する出力系路が形成されている場合を示している。
【０２０１】
動作タイミングテストのときには、上記したことから分かるように、内部テストクロック信号ＴＳＣＬＫに同期して、出力段Ｆ／Ｆ回路ＦＦＯ１−１およびＦＦＯ１−ｎに保持している論理値が、交互に変わる。これによって、出力信号Ｐｏ１およびＰｏ２の電圧も周期的に変化する。例えば、出力信号ＩＰ１−１、ＩＰ１−ｎを伝達する出力経路に含まれている信号配線のインピーダンスが異なることにより、図１３（Ｂ）および（Ｃ）に示すように、出力端子Ｐｏ１において電圧が立ち上がるタイミングまたは／および立ち下がるタイミングが、出力端子Ｐｏ２において電圧が立ち上がるタイミングまたは／および立ち下がるタイミングと異なる。そのため、出力端子Ｐｏ１とＰｏ２において、電圧（論理値）が異なっている期間が発生する。この期間のとき、排他的オア回路ＥＲは、図１３（Ｄ）に示すようにハイレベルとなる。
【０２０２】
排他的オア回路ＥＲの出力が、ハイレベルとなっている期間が、図１１に示したパルス幅測定回路ＴＦＣにより、カウント値に変換され、テスターＡＴＥに伝えられることになる。
【０２０３】
なお、出力信号ＩＰ１−１、ＩＰ１−ｎを伝達する出力経路は、図示しない信号配線およびセレクタを構成する素子等を含んでいるため、出力端子Ｐｏ１、Ｐｏ２における電圧の変化は、内部テストクロック信号ＴＳＣＬＫを基準とした場合、遅延している。
【０２０４】
＜変形例１＞
図１４は、テスト回路ＴＳＣＣの変形例の構成を示すブロック図である。また、図１５は、図１４に示すテスト回路ＴＳＣＣの動作を示す波形図である。変形例１においては、図１１に示したテスト回路ＴＳＣＣに含まれているパルス幅測定回路ＴＦＣが、変更されている。すなわち、変形例１において、パルス幅測定回路ＴＦＣは、パルス幅を電圧に変換するパルス幅電圧変換回路ＰＶＣと、パルス幅電圧変換回路ＰＶＣからの電圧をデジタル信号へ変換するアナログ／デジタル（以下、Ａ／Ｄとも称する）変換回路ＡＤＣとを備えている。
【０２０５】
排他的オア回路ＥＲは、図１１において述べたように、動作タイミングテストのとき、出力端子Ｐｏ１とＰｏ２との間で、電圧（論理値）が異なっている期間、ハイレベルを出力する。パルス幅電圧変換回路ＰＶＣは、排他的オア回路ＥＲから、ハイレベルの出力信号が出力されている期間において、電圧値がアナログ的に変化する出力信号を出力する。例えば、パルス幅電圧変換回路ＰＶＣは、容量素子とスイッチ回路とによって構成された容量回路とすることが可能である。この場合、図１５に示すように、排他的オア回路ＥＲの出力がロウレベルのときに、スイッチ回路によって容量素子を充電する。排他的オア回路ＥＲの出力がハイレベルへ変化したら、スイッチ回路によって容量素子の電荷の放電を開始し、排他的オア回路ＥＲの出力がハイレベルとなっている期間ｔの間、放電を継続する。
【０２０６】
Ａ／Ｄ変換回路ＡＤＣは、例えば、排他的オア回路ＥＲの出力が、ロウレベルへ変化するタイミングで、パルス幅電圧変換回路ＰＶＣからの出力、すなわち容量回路からの電圧をデジタル信号へ変換する。これにより出力端子Ｐｏ１とＰｏ２との間で電圧（論理値）が異なっている時間に対応した、デジタル信号が、Ａ／Ｄ変換回路ＡＤＣから、テスターＡＴＥへ供給することが可能となる。
【０２０７】
なお、この変形例１においては、Ａ／Ｄ変換回路ＡＤＣが、適切なタイミングでＡ／Ｄ変換を開始することができるように、Ａ／Ｄ変換回路ＡＤＣは、テストクロック信号Ｔ−ＣＬＫに同期している。
【０２０８】
変形例１として、容量素子が、期間ｔにおいて放電した電圧をＡ／Ｄ変換する例を説明したが、期間ｔにおいて、容量素子を充電し、充電された電圧をＡ／Ｄ変換してもよい。
【０２０９】
＜変形例２＞
図１６は、テスト回路ＴＳＣＣの変形例の構成を示すブロック図である。また、図１７は、図１６に示すテスト回路ＴＳＣＣの動作を示す波形図である。変形例２においては、図１１に示したテスト回路ＴＳＣＣに含まれているパルス幅測定回路ＴＦＣが、変更されている。すなわち、変形例２において、パルス幅測定回路ＴＦＣは、パルス幅測定用クロック信号発生回路ＰＷＧによって発生したクロック信号ＣＰをカウントするカウンタＣＮＴを備えている。
【０２１０】
図１７において、横軸は時間を示している。図１７（Ａ）は、排他的オア回路ＥＲの波形を示しており、図１７（Ｂ）は、パルス幅測定用クロック信号発生回路ＰＷＧによって発生するクロック信号ＣＰの波形を示している。排他的オア回路ＥＲが、ハイレベルとなっている期間は、例えば３０ｎｓである。パルス幅測定用クロック信号発生回路ＰＷＧが発生するクロック信号の周期は、排他的オア回路ＥＲの出力がハイレベルとなっている期間に対して、十分に短くなるような周波数のクロック信号とされる。
【０２１１】
カウンタＣＮＴは、排他的オア回路ＥＲの出力がハイレベルとなっている期間、クロック信号ＣＰの数をカウントする。カウントにより得たカウント値をテスターＡＴＥに供給する。
【０２１２】
実施の形態３およびその変形例として、テスト回路ＴＳＣＣに、排他的オア回路ＥＲを用いる例を示したが、これに限定されない。排他的オア回路ＥＲを用いずに、例えば、出力端子Ｐｏ１の電圧変化をスタート信号とし、出力端子Ｐｏ２に電圧変化をストップ信号として用いるカウンタを設けるようにしてもよい。この場合には、カウンタがスタートしてからストップするまでのカウント値をテスターＡＴＥに供給すればよい。
【０２１３】
この実施の形態３においては、テストクロック信号Ｔ−ＣＬＫに同期して、２個以上の出力端子のそれぞれにおいて信号の変化が発生する。動作タイミングテストの判定は、出力端子間における信号変化の時間差に基づいて行われる。出力端子間における信号変化の時間差は、テストクロック信号Ｔ−ＣＬＫの周波数に依存しない。すなわち、排他的オア回路ＥＲをテスト回路ＴＳＣＣに用いる例で説明すれば、排他的オア回路ＥＲの出力がハイレベルとなっている期間は、テストクロック信号Ｔ−ＣＬＫの周波数に依存せず、ロウレベルとなっている期間が、周波数によって変化（依存）する。
【０２１４】
テストクロック信号Ｔ−ＣＬＫの周期において、排他的オア回路ＥＲの出力がハイレベルとなる期間が発生するタイミングは不明であるが、テストクロック信号Ｔ−ＣＬＫの周期内で発生する。そのため、テスト回路ＴＳＣＣから出力されたデジタル値を、テストクロック信号Ｔ−ＣＬＫに同期して、期待値と比較することにより、動作タイミングテストの結果を得ることが可能となる。
【０２１５】
また、排他的オア回路ＥＲから出力されているハイレベルの期間は、テストクロック信号Ｔ−ＣＬＫの周波数に依存しないため、例えばテストクロック信号Ｔ−ＣＬＫの周波数を低くし、低消費電力化を図りながら、動作タイミングテストを実施することも可能である。
【０２１６】
実施の形態３においては、テスト回路ＴＳＣＣを、半導体装置ＣＨＰおよびテスターＡＴＥの外部に設ける例を説明したが、これに限定されるものではない。テスト回路ＴＳＣＣは、半導体装置ＣＨＰに内蔵させてもよいし、テスターＡＴＥに内蔵させてもよい。
【０２１７】
実施の形態１〜３においては、プロセッサＣＰＵ等（ユーザー回路）の処理ユニットに対するファンクションテストと、動作タイミングテストとが分離される。そのため、動作タイミングテストを実施するときに、処理ユニットに対するファンクションテストを実施しなくてもよい。これにより、動作タイミングテストのときの半導体装置の消費電力を低減することが可能となる。半導体装置を製造する工程におけるテスト工程では、多数の半導体装置を、実質的に同時に動作させる。そのため、テストのときの半導体装置の消費電力を低減することにより、テスト工程で用いる電源の小型化を図ることも可能となる。
【０２１８】
また、実施の形態１〜３において、動作タイミングテストに用いるテストパターンは、半導体装置に内蔵されているプロセッサＣＰＵ等の処理ユニットを動作させずに、テスター等から半導体装置へ供給する。そのため、動作タイミングテストのために、プロセッサＣＰＵに適したテスト用のプログラムを作成しなくても済み、テストに掛かる時間の短縮化を図ることが可能となる。例えば、テスト用のプログラムを作成して、動作タイミングテストを実施するようにした場合には、動作タイミングテストにおいて例えば失敗と判定されたとき、その失敗の要因が、テスト用のプログラムに起因したものでないことを保証するために、テスト用のプログラムの検証を十分に行うことが要求され、テストに要する時間が長くなる。また、プロセッサＣＰＵ等の機能を把握しなくても、動作タイミングテスト用のテストパターンを作成することが可能となり、テストに掛かる時間の短縮化を図ることが可能となる。
【０２１９】
さらに、入力経路テスト回路によって、入力端子と入力段Ｆ／Ｆ回路との間の入力経路を定めるようにしてあるため、入力端子に供給するテストパターンと入力段Ｆ／Ｆ回路に格納されるパターンとの関係を任意に定めることが可能となる。また、出力経路テスト回路によって、出力段Ｆ／Ｆ回路と出力端子との間の出力経路を定めるようにしてあるため、出力段Ｆ／Ｆ回路に格納するテストパターンと出力端子におけるパターンとの関係を任意に定めることが可能となる。
【０２２０】
半導体装置ＣＨＰには、多数のＦ／Ｆ回路が内蔵されており、半導体装置ＣＨＰに内蔵されている全てのＦ／Ｆ回路で同期のタイミングを合わせるのは困難である。半導体装置ＣＨＰに内蔵されるＦ／Ｆ回路の全数に対して、入力段Ｆ／Ｆ回路および出力段Ｆ／Ｆ回路の割合は、１％未満程度であり、入力段Ｆ／Ｆ回路あるいは出力段Ｆ／Ｆ回路間で同期のタイミングを合わせるのは比較的容易であるため、半導体装置ＣＨＰのタイミング設計あるいはタイミング管理が容易となる。
【０２２１】
＜付記＞
本明細書には、複数の発明が開示されており、その内のいくつかは、特許請求の範囲に記載しているが、これ以外の発明も開示しており、その代表的なものを次に列記する。
【０２２２】
（Ａ）  半導体装置を製造する製造工程と、前記製造工程において製造された半導体装置を、テスト回路を用いて、テストするテスト工程とを備える半導体装置の製造方法であって、
前記半導体装置は、
動作クロック信号が供給される第１外部端子と、
前記テスト工程において、テストクロック信号が供給される第２外部端子と、
論理回路と、それぞれ前記動作クロック信号に同期して動作する複数のフリップフロップ回路を備え、第１出力信号および第２出力信号を形成する処理ユニットと、
前記処理ユニットが、前記第１出力信号および第２出力信号を形成するとき、前記第１出力信号および前記第２出力信号が伝達される第３外部端子および第４外部端子と、
前記処理ユニットと前記第３外部端子との間に結合された第１出力段フリップフロップ回路と、
前記処理ユニットと前記第４外部端子との間に結合された第２出力段フリップフロップ回路と、
前記第１出力段フリップフロップ回路に結合され、前記第１出力段フリップフロップ回路が同期する同期クロックと、前記第１出力段フリップフロップ回路の入力とを選択する第１選択回路と、
前記第２出力段フリップフロップ回路に結合され、前記第２出力段フリップフロップ回路が同期する同期クロックと、前記第２出力段フリップフロップ回路の入力とを選択する第２選択回路と、
を備え、
前記第１選択回路および前記第２選択回路は、前記処理ユニットが前記第１出力信号および前記第２出力信号を形成するとき、前記同期クロック信号として、前記動作クロックを選択し、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路の入力として、前記第１出力信号および前記第２出力信号を選択し、
前記第１選択回路および前記第２選択回路は、前記テスト工程において、前記同期クロック信号として、前記テストクロック信号を選択し、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路のそれぞれの出力が、前記テストクロック信号に同期して変化するように、前記第１出力段フリップフロップ回路および前記第２出力段フリップフロップ回路の入力として、それぞれの出力を選択し、
前記テスト回路は、前記第３外部端子と前記第４外部端子とに結合され、前記テスト工程において、前記第３外部端子における信号の変化と前記第４外部端子における信号の変化との間の時間差を求める、半導体装置の製造方法。
【０２２３】
（Ｂ）  （Ａ）に記載の半導体装置の製造方法において、
前記テスト回路は、前記テストクロック信号に同期して動作する、半導体製造方法。
【０２２４】
（Ｃ）  （Ｂ）に記載の半導体装置の製造方法において、
前記テスト回路は、
前記第３外部端子および前記第４外部端子に結合され、前記テスト工程において、前記第３外部端子における信号の電圧と前記第４外部端子における信号の電圧とが異なるとき、検出信号を出力する論理回路と、
前記論理回路からの検出信号に応答して、電荷の放電を行う容量回路と、
電荷の放電に従って変化する前記容量回路の出力信号をデジタル信号へ変換するアナログ／デジタル変換回路と、
を備える。
【０２２５】
（Ｄ）  （Ｃ）に記載の半導体装置の製造方法において、
前記アナログ／デジタル変換回路は、前記テストクロック信号に同期して、前記容量回路の出力信号をデジタル信号へ変換する、半導体装置の製造方法。
【０２２６】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０２２７】
ＣＨＰ  半導体装置
ＣＰＵ  マイクロコントローラ
ＣＬＫＧ  クロック生成回路
ＦＦＩ１〜ＦＦＩｐ  入力段フリップフロップ回路
ＦＦＯ１〜ＦＦＯｐ  出力段フリップフロップ回路
ＦＦ  フリップフロップ回路
ＥＲＯＭ  メモリ
ＴＳＩ−１〜ＴＳＩ−ｐ  入力段テスト回路
ＴＳＯ−１〜ＴＳＯ−ｐ  出力段テスト回路
ＩＲＳＬ  入力経路選択回路
ＯＲＳＬ  出力経路選択回路
ＲＳＣ−Ｉ  入力経路選択制御回路
ＲＳＣ−Ｏ  出力経路選択制御回路
ＴＳＴ−Ｉ  入力経路テスト回路
ＴＳＴ−Ｏ  出力経路テスト回路
Ｌ１、Ｌ２  信号配線
Ｐｄｉ、Ｐｃｔ、Ｐｅｔ、Ｐｃｋ，Ｐｉ１〜Ｐｉｎ  入力端子
Ｐｃｏ、Ｐｄｏ、Ｐｏ１〜Ｐｏｎ  出力端子
Ｔ−ＤＩ  テスト信号
Ｔ−ＣＴＬ  テスト制御信号
Ｔ−ＣＬＫ  テストクロック信号
Ｔ−ＣＫＯ  外部テストクロック信号
Ｅｘ−ＣＬＫ  動作クロック信号
ＭＵＸ１〜ＭＵＸ１０  セレクタ
ＴＳＣＣ  テスト回路
ＰＷＧ  パルス幅測定用クロック信号発生回路
【図１】
2016170064.tif 000003
【図２】
2016170064.tif 000004
【図３】
2016170064.tif 000005
【図４】
2016170064.tif 000006
【図５】
2016170064.tif 000007
【図６】
2016170064.tif 000008
【図７】
2016170064.tif 000009
【図８】
2016170064.tif 000010
【図９】
2016170064.tif 000011
【図１０】
2016170064.tif 000012
【図１１】
2016170064.tif 000013
【図１２】
2016170064.tif 000014
【図１３】
2016170064.tif 000015
【図１４】
2016170064.tif 000016
【図１５】
2016170064.tif 000017
【図１６】
2016170064.tif 000018
【図１７】
2016170064.tif 000019