(57)【要約】【課題】テスト時の動作モードを設定するための端子数を最小限に抑えたうえで、複数備えられる機能ブロックを個別にテストすることができる半導体集積回路を提供する。【解決手段】動作モード設定回路２０は、端子１２，１４，１６からそれぞれテスト信号ＴＥＳＴ，リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、半導体集積回路１０の動作モードを設定し、ｎビット長の動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコーダ２２へ出力する。デコーダ２２は、動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコードし、テストモード選択信号ＴＭ１〜ＴＭ２ｎ−１および通常動作モード選択信号ＮＭのいずれかをアサートしてセレクタ２４へ出力する。セレクタ２４は、これら選択信号に応じて所定の機能ブロックを入出力端子１８と接続し、設定された動作モードに応じた機能ブロックのテストが行なわれる。【選択図】　　　　図１
2004045090.tif 000002
【特許請求の範囲】
【請求項１】
複数の動作モードを有する半導体集積回路であって、
所定の端子から入力される制御信号に基づいて前記複数の動作モードのいずれかを設定する動作モード設定回路と、
前記動作モード設定回路によって設定された動作モードで動作する内部回路とを備える半導体集積回路。
【請求項２】
前記所定の端子は、１つの端子で構成される、請求項１に記載の半導体集積回路。
【請求項３】
前記複数の動作モードの各々は、少なくとも１つのテストモードの各々および通常動作モードのいずれかであり、
前記動作モード設定回路は、
所定のタイミングにおいて前記制御信号が第１の論理レベルのとき、その後に入力される前記制御信号に基づいて前記少なくとも１つのテストモードのいずれかを設定し、
前記所定のタイミングにおいて前記制御信号が第２の論理レベルのとき、前記通常動作モードを設定する、請求項１または請求項２に記載の半導体集積回路。
【請求項４】
前記動作モード設定回路は、外部クロックを受け、前記所定のタイミングにおいて前記制御信号が前記第１の論理レベルのとき、その後に入力される前記制御信号が前記第１の論理レベルである期間中の前記外部クロックのサイクル数をカウントし、そのカウント値に基づいて前記少なくとも１つのテストモードのいずれかを設定する、請求項３に記載の半導体集積回路。
【請求項５】
前記制御信号は、前記動作モードを表わすコードからなるシリアルデータを含み、
前記動作モード設定回路は、前記所定のタイミングにおいて前記制御信号が前記第１の論理レベルのとき、その後に入力される前記シリアルデータを取込み、前記取込んだシリアルデータに基づいて前記少なくとも１つのテストモードのいずれかを設定する、請求項３に記載の半導体集積回路。
【請求項６】
前記動作モード設定回路は、前記所定のタイミングにおいて前記制御信号が前記第１の論理レベルのとき、当該半導体集積回路の通常動作時に使用される少なくとも１つの端子から入力されるデータに基づいて前記少なくとも１つのテストモードのいずれかを設定する、請求項３に記載の半導体集積回路。
【請求項７】
前記動作モード設定回路は、前記所定のタイミングにおいて前記制御信号が前記第１の論理レベルのとき、その後の前記制御信号の変化に同期して、当該半導体集積回路の通常動作時に使用される少なくとも１つの端子からデータを取込み、前記取込んだデータに基づいて前記少なくとも１つのテストモードのいずれかを設定する、請求項３に記載の半導体集積回路。
【請求項８】
前記動作モード設定回路は、前記所定のタイミングにおいて前記制御信号が前記第１の論理レベルのとき、その後の前記制御信号の変化に同期して、その変化の際に設定されていた動作モードから前記少なくとも１つのテストモードのいずれかへ前記動作モードの設定を所定の順で遷移させる、請求項３に記載の半導体集積回路。
【請求項９】
前記所定のタイミングは、前記動作モード設定回路においてリセット動作が解除されるタイミングである、請求項３から請求項８のいずれか１項に記載の半導体集積回路。
【請求項１０】
前記動作モード設定回路は、前記リセット動作時、予め定められた所定の動作モードを設定する、請求項９に記載の半導体集積回路。
【請求項１１】
前記所定の動作モードは、ＤＣテストモードであり、
前記動作モード設定回路は、外部クロックを受け、前記リセット動作の解除後に前記外部クロックが入力されないとき、前記ＤＣテストモードの設定を保持する、請求項１０に記載の半導体集積回路。
【請求項１２】
前記動作モード設定回路は、前記制御信号に基づいて前記動作モードを設定した後、前記設定された動作モードを外部へ出力する、請求項３から請求項１１のいずれか１項に記載の半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路に関し、特に、複数の機能ブロックを備え、各機能ブロック毎に可能なテストに対応する複数の動作モードを備える半導体集積回路に関する。
【０００２】
【従来の技術】
近年、半導体集積回路の高機能化・多機能化が進み、１つの半導体集積回路は、複数の機能ブロックで構成されているのが一般的である。複数の機能ブロックを備える半導体集積回路では、各機能ブロックが相互に影響を及ぼしあうため、半導体集積回路を全体としてテストしてもいずれの機能ブロックに欠陥があるかを検出することは容易でない。そこで、このような複数の機能ブロックを備える半導体集積回路においては、各機能ブロックが単体で外部接続端子と接続され、各機能ブロック毎に機能テストを実行できる動作モードを各機能ブロックに対応して備えることによって、従来よりテストの容易化が図られている。
【０００３】
そして、各機能ブロックのテストに対応した動作モードを外部から設定するための専用の動作モード設定端子が設けられ、この動作モード設定端子に与えられる信号によって、テストを行なう機能ブロックの選択が行なわれる。
【０００４】
図１８は、複数の機能ブロックを備え、かつ、各機能ブロック毎にテストが可能な従来の半導体集積回路の全体構成を示す概略ブロック図である。
【０００５】
図１８を参照して、半導体集積回路１００は、動作モード設定端子１１２と、入出力端子１８と、デコーダ２２と、セレクタ２４と、機能ブロックＦＢ１〜ＦＢｍと、バス２６とを備える。なお、図１８においては、半導体集積回路１００について、半導体集積回路１００の動作モードの設定に関する主要部分が代表的に示されている。
【０００６】
動作モード設定端子１１２は、半導体集積回路１００のテスト時、半導体集積回路１００の動作モードを設定する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞（ｎは自然数）を外部から受けるテスト専用端子である。動作モード設定端子１１２は、ｎ個の端子で構成され、動作モード設定端子１１２に入力される動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞によって２ｎ通りの動作モードが設定され得る。
【０００７】
デコーダ２２は、動作モード設定端子１１２から入力される動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞をデコードし、テストモード選択信号ＴＭ１〜ＴＭ２ｎ−１および通常動作モード選択信号ＮＭのいずれかをアサートしてセレクタ２４へ出力する。
【０００８】
入出力端子１８は、半導体集積回路１００に入出力されるデータやコマンドなどを外部とやり取りする端子であって、特にテスト専用に設けられたものではなく、通常動作時に使用される端子である。入出力端子１８は、通常動作時は半導体集積回路１００に入力されるデータ等を外部から受け、また、半導体集積回路１００から出力されるデータ等を外部へ出力する。一方、テスト時においては、入出力端子１８は、設定された動作モードに対応する機能ブロックに入力されるテストデータを外部から受け、また、その機能ブロックから出力されたテスト結果に対応するデータを外部へ出力する。
【０００９】
セレクタ２４は、デコーダ２２から受けるテストモード選択信号ＴＭ１〜ＴＭ２ｎ−１および通常動作モード選択信号ＮＭに応じて、対応する機能ブロックを入出力端子１８と接続する。すなわち、セレクタ２４は、機能ブロックＦＢ１のテストに対応するテストモード選択信号ＴＭ１がアサートされているときは、機能ブロックＦＢ１を入出力端子１８と接続する。同様にして、セレクタ２４は、機能ブロックＦＢｍ（ｍは２以上の自然数）のテストに対応するテストモード選択信号ＴＭｍがアサートされているときは、機能ブロックＦＢｍを入出力端子１８と接続する。
【００１０】
また、セレクタ２４は、通常動作モード選択信号ＮＭがアサートされているときは、この半導体集積回路１００が全体として通常動作を行なうように、所定の接続関係で各機能ブロックを入出力端子１８と接続する。
【００１１】
機能ブロックＦＢ１〜ＦＢｍは、この半導体集積回路１００において個別の機能を有する機能ブロックである。機能ブロックＦＢ１〜ＦＢｍの各々は、自己の機能ブロックに対応するテストモード選択信号をデコーダ２２から受け、そのテストモード選択信号がアサートされているときは、セレクタ２４のみに接続され、そのテストモード選択信号がアサートされていなければ、セレクタ２４およびバス２６に接続される。
【００１２】
バス２６は、機能ブロックＦＢ１〜ＦＢｍ間でデータや指示など各種信号のやり取りを行なうための内部バスである。
【００１３】
図１９は、動作モード設定端子１１２から入力される動作モードの設定値とその動作モードの内容との対応関係を示した図である。
【００１４】
図１９を参照して、半導体集積回路１００においては、動作モード設定端子１１２から値“０”に対応する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が設定されると、通常動作モードが選択される。動作モード設定端子１１２から値“１”に対応する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が設定されると、機能ブロックＦＢ１の機能テストを行なう機能ブロックＦＢ１テストモードが選択される。同様にして、動作モード設定端子１１２から値“ｍ”に対応する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が設定されると、機能ブロックＦＢｍの機能テストを行なう機能ブロックＦＢｍテストモードが選択される。
【００１５】
なお、設定値“ｍ＋１”〜“２ｎ−１”については、特に動作モードが割当てられていないが、この半導体集積回路１００においては、最大２ｎ通り（動作モード設定値としては“２ｎ−１”まで）動作モードを設定できる。
【００１６】
再び図１８を参照して、半導体集積回路１００においては、たとえば、動作モード設定端子１１２から値“１”に対応する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が設定されると、デコーダ２２は、動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞をデコードし、テストモード選択信号ＴＭ１をアサートする。
【００１７】
テストモード選択信号ＴＭ１がアサートされると、機能ブロックＦＢ１は、セレクタ２４のみとデータのやり取りを行なう。一方、セレクタ２４は、機能ブロックＦＢ１のみを入出力端子１８と接続する。したがって、入出力端子１８から機能ブロックＦＢ１に対応するテストデータを入力することによって、機能ブロックＦＢ１を他の機能ブロックから独立してテストすることができる。
【００１８】
なお、その他の機能ブロックのテストに対応する動作モード設定値が動作モード設定端子１１２に入力されたときも、対応する機能ブロック毎に独立したテストが同様にして行なわれる。
【００１９】
一方、動作モード設定端子１１２から値“０”に対応する動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が設定されると、デコーダ２２は、動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞をデコードし、通常動作モード選択信号ＮＭをアサートする。通常動作モード選択信号ＮＭがアサートされると、セレクタ２４は、この半導体集積回路１００が全体として通常動作を行なうように、所定の接続関係で各機能ブロックを入出力端子１８と接続する。そして、入出力端子１８からデータが入力されると、半導体集積回路１００は、各機能ブロックＦＢ１〜ＦＢｍが相互に関連して動作し、通常通りの機能を実現する。
【００２０】
図２０は、図１８に示したセレクタ２４を機能的に説明する機能ブロック図である。
【００２１】
図２０を参照して、セレクタ２４は、入出力端子１８の各端子毎に対応した複数の回路２４１を含む。回路２４１の各々は、内部セレクタ２４３，２４５と、出力バッファ２４７と、入力バッファ２４９と、ＡＮＤゲートＧ１〜Ｇｍとからなる。
【００２２】
以下、入出力端子１８の一端子である端子１８１と接続される回路２４１について説明する。内部セレクタ２４３は、テストモード選択信号ＴＭ１〜ＴＭ２ｎ−１および通常動作モード選択信号ＮＭをデコーダ２２から受ける。また、内部セレクタ２４３は、各機能ブロックＦＢ１〜ＦＢｍから出力された信号を受ける。そして、内部セレクタ２４３は、アサートされているテストモード選択信号に対応する機能ブロックからの出力信号を出力バッファ２４７へ出力する。
【００２３】
出力バッファ２４７は、内部セレクタ２４３から出力された信号を端子１８１へ出力する。
【００２４】
内部セレクタ２４５は、テストモード選択信号ＴＭ１〜ＴＭｍおよび通常動作モード選択信号ＮＭをデコーダ２２から受ける。内部セレクタ２４５は、テストモード選択信号ＴＭ１〜ＴＭｍのいずれかがアサートされているときは、そのアサートされているテストモード選択信号をＡＮＤゲートＧ１〜Ｇｍの対応するＡＮＤゲートにそのまま出力する。また、内部セレクタ２４５は、通常動作モード選択信号ＮＭがアサートされているときは、この半導体集積回路１００が全体として通常動作を行なうように、予め定められた所定の信号をアサートしてＡＮＤゲートＧ１〜Ｇｍへ出力する。
【００２５】
入力バッファ２４９は、端子１８１が受けた信号を入力してＡＮＤゲートＧ１〜Ｇｍへ出力する。ＡＮＤゲートＧ１は、内部セレクタ２４５および入力バッファ２４９から受ける信号の論理積を演算し、その演算結果を機能ブロックＦＢ１へ出力する。その他のＡＮＤゲートＧ２〜Ｇｍについても同様に機能するので、その説明は繰返さない。
【００２６】
以下、テストモード選択信号ＴＭ１がアサートされているときを例に、セレクタ２４の動作を説明する。内部セレクタ２４５は、テストモード選択信号ＴＭ１がアサートされていると、ＡＮＤゲートＧ１へ出力する信号をアサートし、その他のＡＮＤゲートＧ２〜Ｇｍへ出力する信号をネゲートする。したがって、各回路２４１において、ＡＮＤゲートＧ１のみが入力バッファ２４９から出力された信号を出力し、その他のＡＮＤゲートＧ２〜Ｇｍからは対応する各機能ブロックへ信号は出力されない。すなわち、入出力端子１８から入力された信号は、各回路２４１から機能ブロックＦＢ１へのみ出力される。
【００２７】
一方、内部セレクタ２４３は、テストモード選択信号ＴＭ１がアサートされていると、機能ブロックＦＢ１から出力された信号を出力バッファ２４７へ出力する。したがって、機能ブロックＦＢ１から出力された信号が入出力端子１８へ出力される。
【００２８】
以上のように、動作モード設定端子１１２から入力される動作モード設定値に基づいて、半導体集積回路１００の動作モードが設定され、半導体集積回路１００の各機能ブロック毎のテストが実行される。
【００２９】
【発明が解決しようとする課題】
上述した従来の半導体集積回路１００では、各機能ブロック毎にテストを実行するための動作モード設定信号ＴＥＳＴ＜０：ｎ−１＞が入力される動作モード設定端子１１２は、ｎ個の端子で構成される。したがって、半導体集積回路を構成する機能ブロックの数が増加すると動作モードの数も増加し、それに応じて動作モード設定端子１１２を構成する端子の数も増加する。
【００３０】
近年、半導体集積回路は、その高機能化・多機能化が進み、半導体集積回路が備える機能ブロックの数はさらに増加する傾向にある。これに伴って、データやコマンドなどを入出力する通常端子の数は増加する一方、上述したように、機能ブロック数の増加に応じて、テスト専用端子である動作モード設定端子を構成する端子の数も増加すると、半導体集積回路が備えることができる端子の総数には制約があることから、通常端子の数が制約され、さらなる高機能化および多機能化が制約される。
【００３１】
また、テスト専用端子である動作モード設定端子を構成する端子数の増加は、半導体集積回路の小型化の制約ともなり、近年の半導体集積回路に対する小型化の要求に対応することができなくなる。
【００３２】
そこで、この発明は、かかる課題を解決するためになされたものであり、その目的は、テスト時の動作モードを設定するための端子数を最小限に抑えたうえで、複数備えられる機能ブロックを個別にテストすることができる半導体集積回路を提供することである。
【００３３】
【課題を解決するための手段】
この発明によれば、半導体集積回路は、複数の動作モードを有する半導体集積回路であって、所定の端子から入力される制御信号に基づいて複数の動作モードのいずれかを設定する動作モード設定回路と、動作モード設定回路によって設定された動作モードで動作する内部回路とを備える。
【００３４】
好ましくは、所定の端子は、１つの端子で構成される。
好ましくは、複数の動作モードの各々は、少なくとも１つのテストモードの各々および通常動作モードのいずれかであり、動作モード設定回路は、所定のタイミングにおいて制御信号が第１の論理レベルのとき、その後に入力される制御信号に基づいて少なくとも１つのテストモードのいずれかを設定し、所定のタイミングにおいて制御信号が第２の論理レベルのとき、通常動作モードを設定する。
【００３５】
好ましくは、動作モード設定回路は、外部クロックを受け、所定のタイミングにおいて制御信号が第１の論理レベルのとき、その後に入力される制御信号が第１の論理レベルである期間中の外部クロックのサイクル数をカウントし、そのカウント値に基づいて少なくとも１つのテストモードのいずれかを設定する。
【００３６】
好ましくは、制御信号は、動作モードを表わすコードからなるシリアルデータを含み、動作モード設定回路は、所定のタイミングにおいて制御信号が第１の論理レベルのとき、その後に入力されるシリアルデータを取込み、取込んだシリアルデータに基づいて少なくとも１つのテストモードのいずれかを設定する。
【００３７】
好ましくは、動作モード設定回路は、所定のタイミングにおいて制御信号が第１の論理レベルのとき、当該半導体集積回路の通常動作時に使用される少なくとも１つの端子から入力されるデータに基づいて少なくとも１つのテストモードのいずれかを設定する。
【００３８】
好ましくは、動作モード設定回路は、所定のタイミングにおいて制御信号が第１の論理レベルのとき、その後の制御信号の変化に同期して、当該半導体集積回路の通常動作時に使用される少なくとも１つの端子からデータを取込み、取込んだデータに基づいて少なくとも１つのテストモードのいずれかを設定する。
【００３９】
好ましくは、動作モード設定回路は、所定のタイミングにおいて制御信号が第１の論理レベルのとき、その後の制御信号の変化に同期して、その変化の際に設定されていた動作モードから少なくとも１つのテストモードのいずれかへ動作モードの設定を所定の順で遷移させる。
【００４０】
好ましくは、所定のタイミングは、動作モード設定回路においてリセット動作が解除されるタイミングである。
【００４１】
好ましくは、動作モード設定回路は、リセット動作時、予め定められた所定の動作モードを設定する。
【００４２】
好ましくは、所定の動作モードは、ＤＣテストモードであり、動作モード設定回路は、外部クロックを受け、リセット動作の解除後に外部クロックが入力されないとき、ＤＣテストモードの設定を保持する。
【００４３】
好ましくは、動作モード設定回路は、制御信号に基づいて動作モードを設定した後、設定された動作モードを外部へ出力する。
【００４４】
以上のように、この発明による半導体集積回路においては、動作モード設定回路は、所定の端子から入力される制御信号に基づいて、複数備えられる動作モードのいずれかを設定する。
【００４５】
したがって、この発明によれば、半導体集積回路は、テスト専用の動作モード設定端子を多数備える必要がなく、動作モードの設定に必要な専用の端子数を削減できる。
【００４６】
そして、動作モードの設定に必要な専用の端子数が削減されることによって、数に制約のある端子を半導体集積回路の本来の機能を達成するための端子として用いることができ、半導体集積回路のさらなる高機能化を実現できる。
【００４７】
さらに、端子数が削減されれば、半導体集積回路の小型化も実現できる。
【００４８】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【００４９】
［実施の形態１］
図１は、この発明の実施の形態１による半導体集積回路の全体構成を示す概略ブロック図である。
【００５０】
図１を参照して、半導体集積回路１０は、端子１２，１４，１６と、入出力端子１８と、動作モード設定回路２０と、デコーダ２２と、セレクタ２４と、機能ブロックＦＢ１〜ＦＢｍと、バス２６とを備える。なお、図１においては、半導体集積回路１０について、半導体集積回路１０の動作モードの設定に関する主要部分が代表的に示されている。
【００５１】
半導体集積回路１０は、従来技術において説明した半導体集積回路１００の構成において、ｎ個の端子で構成される動作モード設定端子１１２に代えて１つの端子で構成される端子１２を備え、また、動作モード設定回路２０をさらに備えている点において、従来技術の半導体集積回路１００の構成と異なる。
【００５２】
端子１２は、半導体集積回路１０のテスト時、後述する動作モード設定回路２０において半導体集積回路１０の動作モードを設定するために用いられる制御信号ＣＮＴＬを受ける。端子１２は、上述したように１個の端子で構成され、端子１２から入力される制御信号ＣＮＴＬを用いて、動作モード設定回路２０において２ｎ通りの動作モードが設定され得る。
【００５３】
端子１４は、リセット信号ＲＥＳＥＴを受け、端子１６は、外部クロックＣＬＫを受ける。これらの端子は、従来技術の半導体集積回路１００の説明においては示されていないが、従来の半導体集積回路１００においても設けられている端子であり、実施の形態１による半導体集積回路１０において新たに設けたものではない。
【００５４】
動作モード設定回路２０は、端子１２，１４，１６からそれぞれ制御信号ＣＮＴＬ，リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、半導体集積回路１０の動作モードを設定し、ｎビット長の動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコーダ２２へ出力する。そして、デコーダ２２は、動作モード設定回路２０から出力された動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコードし、テストモード選択信号ＴＭ１〜ＴＭ２ｎ−１および通常動作モード選択信号ＮＭのいずれかをアサートしてセレクタ２４へ出力する。
【００５５】
半導体集積回路１０におけるその他の構成および動作については、従来技術の半導体集積回路１００と同じであるので、その説明は繰返さない。
【００５６】
図２は、実施の形態１による半導体集積回路１０における動作モード設定回路２０を機能的に説明するための機能ブロック図である。
【００５７】
図２を参照して、動作モード設定回路２０は、カウンタ２０１を含む。カウンタ２０１は、リセット信号ＲＥＳＥＴがアサートされているとき、内部のカウンタ値を０にリセットする。カウンタ２０１は、リセット信号ＲＥＳＥＴがネゲートされてリセットが解除されたとき、制御信号ＣＮＴＬがアサートされていれば、その後制御信号ＣＮＴＬがアサートされる期間の外部クロックＣＬＫのサイクル数をカウントし、そのカウント値を動作モード設定信号ＳＥＴ＜０：ｎ−１＞としてデコーダ２２へ出力する。
【００５８】
一方、カウンタ２０１は、リセット信号ＲＥＳＥＴがネゲートされたとき、制御信号ＣＮＴＬがアサートされていなければ、外部クロックＣＬＫのカウントは行なわず、リセット後のカウンタ値０をデコーダ２２へ出力する。すなわち、半導体集積回路１０の動作モードは、通常動作モードに設定される。
【００５９】
図３は、実施の形態１による半導体集積回路１０において通常動作モードが設定されるときの各信号の動作波形図である。
【００６０】
図３を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、カウンタ２０１のカウンタ値が０にリセットされる。制御信号ＣＮＴＬは、時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前にネゲートされる。なお、図において、制御信号ＣＮＴＬにおける斜線部は、信号状態を規定していないことを示す。
【００６１】
そして、時刻Ｔ２において、リセット信号ＲＥＳＥＴがネゲートされるが、制御信号ＣＮＴＬがネゲートされているので、カウンタ２０１は外部クロックＣＬＫのカウントを行なわず、カウンタ２０１は、動作モード設定信号ＳＥＴ＜０：ｎ−１＞を０で出力する。
【００６２】
したがって、デコーダ２２は、動作モード設定信号ＳＥＴ＜０：ｎ−１＞が０に設定されたことに基づいて、通常動作モード選択信号ＮＭをアサートしてセレクタ２４へ出力する。したがって、半導体集積回路１０は、通常動作モードで動作する。
【００６３】
図４は、半導体集積回路１０においてテストモードが設定されるときの各信号の動作波形図である。
【００６４】
図４を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、カウンタ２０１のカウンタ値が０にリセットされる。制御信号ＣＮＴＬは、時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前にアサートされる。
【００６５】
時刻Ｔ２において、リセット信号ＲＥＳＥＴがネゲートされると、カウンタ２０１は、次に外部クロックＣＬＫが立上る時刻Ｔ３から外部クロックＣＬＫのサイクル数のカウントを開始する。そして、カウンタ２０１は、時刻Ｔ５において制御信号ＣＮＴＬがネゲートされるまでの、時刻Ｔ３〜Ｔ４までの外部クロックＣＬＫの立上り回数をカウントし、そのカウンタ値を動作モード設定値としてデコーダ２２へ出力する。
【００６６】
そして、デコーダ２２は、カウンタ２０１から受けた動作モード設定信号ＳＥＴ＜０：ｎ−１＞に基づいて、テストモード選択信号ＴＭ１〜ＴＭ２ｎ−１のうちの対応するテストモード選択信号をアサートしてセレクタ２４へ出力し、セレクタ２４において、アサートされたテストモード選択信号に対応する機能ブロックが入出力端子１８と接続される。これによって、半導体集積回路１０において、設定された動作モードに対応する機能ブロックのテストが実行される。
【００６７】
このように、実施の形態１による半導体集積回路１０によれば、動作モードを設定する動作モード設定回路２０を半導体集積回路１０内に備えたので、動作モードを設定するための信号を入力する端子の数を大幅に削減できる。これによって、数に制約のある端子を半導体集積回路１０の本来の機能を達成するための信号入出力端子として用いることができ、半導体集積回路１０のさらなる高機能化を実現できる。さらに、端子数自体を削減できることによって、半導体集積回路１０の小型化を図ることもできる。
【００６８】
［実施の形態２］
実施の形態２による半導体集積回路１０Ａは、実施の形態１による半導体集積回路１０の構成において、動作モード設定回路２０に代えて動作モード設定回路２０Ａを備える。
【００６９】
動作モード設定回路２０Ａも、実施の形態１における動作モード設定回路２０と同様に、端子１２，１４，１６からそれぞれ制御信号ＣＮＴＬ，リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、半導体集積回路１０Ａの動作モードを設定し、ｎビット長の動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコーダ２２へ出力する。
【００７０】
半導体集積回路１０Ａにおけるその他の構成および動作については、実施の形態１による半導体集積回路１０と同じであるので、その説明は繰返さない。
【００７１】
実施の形態２による半導体集積回路１０Ａにおいては、動作モード設定値がシリアルデータで端子１２から制御信号ＣＮＴＬとして入力される。動作モード設定回路２０Ａは、制御信号ＣＮＴＬ、リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、それらの信号状態に基づいてテストモードであるか否かを検出し、テストモードを検出すると、シリアルデータの制御信号ＣＮＴＬをｎビット長のパラレルデータの動作モード設定信号ＳＥＴ＜０：ｎ−１＞に変換してデコーダ２２へ出力する。
【００７２】
図５は、実施の形態２による半導体集積回路１０Ａにおける動作モード設定回路２０Ａを機能的に説明するための機能ブロック図である。
【００７３】
図５を参照して、動作モード設定回路２０Ａは、シフトレジスタ２０２と、テストモード検出回路２０４とを含む。
【００７４】
シフトレジスタ２０２は、リセット信号ＲＥＳＥＴがアサートされると、内部状態をリセットする。また、シフトレジスタ２０２は、リセット信号ＲＥＳＥＴがネゲートされたとき、テストモード検出回路２０４から受けるイネーブル信号ＥＮＡＢＬＥがアサートされていれば、外部クロックＣＬＫに同期してシリアルデータである制御信号ＣＮＴＬを取込み、取込んだシリアルデータをｎビット長のパラレルデータである動作モード設定信号ＳＥＴ＜０：ｎ−１＞としてデコーダ２２へ出力する。
【００７５】
テストモード検出回路２０４は、制御信号ＣＮＴＬ、リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、リセット信号ＲＥＳＥＴがネゲートされたとき、制御信号ＣＮＴＬがアサートされていればテストモードであると認識し、その後シフトレジスタ２０２に制御信号ＣＮＴＬが読込まれるのに必要な時間だけイネーブル信号ＥＮＡＢＬＥをアサートする。外部クロックＣＬＫは、シフトレジスタ２０２に制御信号ＣＮＴＬが読込まれるのに必要な予め定められた時間をカウントするのに用いられ、そのカウント中は信号ＥＮＡＢＬＥがアサートされる。
【００７６】
一方、テストモード検出回路２０４は、リセット信号がネゲートされたとき、制御信号ＣＮＴＬがアサートされていなければイネーブル信号ＥＮＡＢＬＥをアサートしない。したがって、シフトレジスタ２０２は、制御信号ＣＮＴＬを取込まず、リセット後の値０をデコーダ２２へ出力する。すなわち、半導体集積回路１０Ａの動作モードは、通常動作モードに設定される。
【００７７】
図６は、実施の形態２による半導体集積回路１０Ａにおいてテストモードが設定されるときの各信号の動作波形図である。
【００７８】
図６を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、シフトレジスタ２０２の状態がリセットされる。制御信号ＣＮＴＬは、時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前にアサートされる。
【００７９】
時刻Ｔ２において、リセット信号ＲＥＳＥＴがネゲートされたとき、制御信号ＣＮＴＬがアサートされていると、テストモード検出回路２０４は、テストモードであると認識し、イネーブル信号ＥＮＡＢＬＥをアサートする。イネーブル信号ＥＮＡＢＬＥがアサートされると、シフトレジスタ２０２は、動作モード設定値のシリアルデータである制御信号ＣＮＴＬの取込みを開始する。その後、制御信号ＣＮＴＬがシフトレジスタ２０２に入力され、時刻Ｔ３までにその入力が終了される。テストモード検出回路２０４は、時刻Ｔ３においてイネーブル信号ＥＮＡＢＬＥをネゲートする。
【００８０】
そして、シフトレジスタ２０２は、シリアルデータで取込んだ動作モード設定値を、パラレルデータの動作モード設定信号ＳＥＴ＜０：ｎ−１＞としてデコーダ２２へ出力する。その後の動作については、実施の形態１による半導体集積回路１０と同じであるので、その説明は繰返さない。
【００８１】
このように、実施の形態２よる半導体集積回路１０Ａによっても、動作モードを設定するための信号を入力する端子の数が大幅に削減され、実施の形態１と同様の効果が得られる。
【００８２】
［実施の形態３］
図７は、実施の形態３による半導体集積回路の全体構成を示す概略ブロック図である。
【００８３】
図７を参照して、実施の形態３による半導体集積回路１０Ｂは、実施の形態１による半導体集積回路１０の構成において、動作モード設定回路２０に代えて動作モード設定回路２０Ｂを備え、動作モード設定回路２０Ｂは、入出力端子１８と接続される。
【００８４】
動作モード設定回路２０Ｂは、端子１２，１４，１６からそれぞれ制御信号ＣＮＴＬ、リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、さらに、動作モード設定期間中は、入出力端子１８から動作モード設定値を受ける。そして、動作モード設定回路２０Ｂは、その受けた動作モード設定値に基づいて、動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコーダ２２へ出力する。
【００８５】
半導体集積回路１０Ｂにおけるその他の構成および動作については、実施の形態１による半導体集積回路１０と同じであるので、その説明は繰返さない。
【００８６】
実施の形態３による半導体集積回路１０Ｂにおいては、動作モード設定期間中は、入出力端子１８から動作モード設定値が入力される。そして、動作モード設定値の入力が終了し、動作モードの設定がなされると、入出力端子１８からは設定された動作モードに対応するテストデータが入出力され、その動作モードに対応する機能ブロックのテストが実行される。
【００８７】
図８は、実施の形態３による半導体集積回路１０Ｂにおける動作モード設定回路２０Ｂを機能的に説明するための機能ブロック図である。
【００８８】
図８を参照して、動作モード設定回路２０Ｂは、フリップフロップ２０６を含む。フリップフロップ２０６は、リセット信号ＲＥＳＥＴがアサートされているとき、内部状態をリセットする。フリップフロップ２０６は、リセット信号ＲＥＳＥＴがネゲートされてリセット状態が解除され、制御信号ＣＮＴＬがアサートされると、動作モード設定値を入出力端子１８から取込んでデコーダ２２へ出力する。
【００８９】
フリップフロップ２０６は、制御信号ＣＮＴＬがネゲートされると、入出力端子１８からデータを取込まず、制御信号ＣＮＴＬがネゲートされる前のデータを保持して出力する。したがって、その後入出力端子１８からのデータが変化しても、フリップフロップ２０６は、制御信号ＣＮＴＬがアサートされていた期間に設定された動作モードを保持し続け、デコーダ２２へその動作モードを出力する。なお、外部クロックＣＬＫは、フリップフロップ２０６において、入力端子Ｄからの信号の取込みタイミングを与えるために用いられる。
【００９０】
一方、リセット信号ＲＥＳＥＴがネゲートされたとき、制御信号ＣＮＴＬがアサートされていなければ、リセット後の値０をデコーダ２２へ出力する。すなわち、半導体集積回路１０Ｂの動作モードは、通常動作モードに設定される。
【００９１】
図９は、実施の形態３による半導体集積回路１０Ｂにおいてテストモードが設定されるときの各信号の動作波形図である。
【００９２】
図９を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、フリップフロップ２０６の内部状態がリセットされる。時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前に、制御信号ＣＮＴＬはアサートされ、また、入出力端子１８には動作モード設定値が入力される。
【００９３】
時刻Ｔ２において、リセット信号ＲＥＳＥＴがネゲートされ、フリップフロップ２０６においてリセット状態が解除されると、制御信号ＣＮＴＬがアサートされているため、フリップフロップ２０６は入出力端子１８から動作モード設定値を取込んでデコーダ２２へ出力する。そして、時刻Ｔ３において、制御信号ＣＮＴＬがネゲートされると、フリップフロップ２０６は、動作モード設定値をラッチし、その後入出力端子１８から入力されるデータの変化に拘わらず、ラッチした動作モード設定値をデコーダ２２へ出力する。
【００９４】
時刻Ｔ３経過後は、入出力端子１８からはテストデータが入出力され、設定された動作モードに対応する機能ブロックに対してそのテストデータが入出力され、テストが実行される。
【００９５】
なお、動作モード設定回路をフリップフロップで構成する場合、各入力信号の取込みタイミングを与える外部クロックＣＬＫに代えて、制御信号ＣＮＴＬを用いることもできる。
【００９６】
図１０は、実施の形態３による半導体集積回路１０Ｂにおける他の動作モード設定回路２０Ｃを機能的に説明するための機能ブロック図である。
【００９７】
図１０を参照して、動作モード設定回路２０Ｃは、フリップフロップ２０８を含む。フリップフロップ２０８は、入力端子Ｄからの信号の取込みタイミングを与える外部クロックＣＬＫの代わりに制御信号ＣＮＴＬが用いられる。フリップフロップ２０８は、制御信号ＣＮＴＬの立上りタイミングで入出力端子１８からデータを取込み、取込んだデータをラッチしてデコーダ２２へ出力する。制御信号ＣＮＴＬが変化しないときは、入出力端子１８からのデータの取込みは行なわれないため、その後入出力端子１８からテストデータが入力されても、動作モードが改変されることはない。
【００９８】
図１１は、半導体集積回路１０Ｂにおいて動作モード設定回路２０Ｃが用いられたときの各信号の動作波形図である。
【００９９】
図１１を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、フリップフロップ２０８の内部状態がリセットされる。時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前に、制御信号ＣＮＴＬはアサートされる。
【０１００】
時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされた後、時刻Ｔ３において制御信号ＣＮＴＬが一旦立下り、再び時刻Ｔ４において立上ると、フリップフロップ２０８は、その立上りタイミングで入出力端子１８から動作モード設定値Ｄ１を取込んでラッチし、その動作モード設定値Ｄ１をデコーダ２２へ出力する。その後の時刻Ｔ４〜Ｔ５間では、制御信号ＣＮＴＬは変化せず、入出力端子１８から入力されるデータが変化しても、フリップフロップ２０８からデコーダ２２へ出力される動作モード設定値はＤ１から変化せず、この間に入出力端子１８からテストデータを入出力してテストを行なうことができる。
【０１０１】
次に、時刻Ｔ５において制御信号ＣＮＴＬが一旦立下り、時刻Ｔ６において再び立上ると、フリップフロップ２０８は、その立上りタイミングで入出力端子１８から動作モード設定値Ｄ２を取込んでラッチし、その動作モード設定値Ｄ２をデコーダ２２へ出力する。時刻Ｔ６以降は、制御信号ＣＮＴＬは変化せず、入出力端子１８から入力されるデータが変化しても、フリップフロップ２０８からデコーダ２２へ出力される動作モード設定値はＤ２から変化せず、入出力端子１８からテストデータを入出力してテストを行なうことができる。
【０１０２】
以上のように、実施の形態３よる半導体集積回路１０Ｂによれば、動作モード設定値は、テスト専用でない通常の入出力端子１８から入力されるので、テスト時の動作モードを設定するための信号を入力するテスト専用の端子数が大幅に削減され、実施の形態１と同様の効果が得られる。
【０１０３】
［実施の形態４］
実施の形態４による半導体集積回路１０Ｄは、実施の形態１による半導体集積回路１０の構成において、動作モード設定回路２０に代えて動作モード設定回路２０Ｄを備える。
【０１０４】
動作モード設定回路２０Ｄも、実施の形態１における動作モード設定回路２０と同様に、端子１２，１４から制御信号ＣＮＴＬおよびリセット信号ＲＥＳＥＴを受け、半導体集積回路１０Ｄの動作モードを設定し、ｎビット長の動作モード設定信号ＳＥＴ＜０：ｎ−１＞をデコーダ２２へ出力する。
【０１０５】
そして、動作モード設定回路２０Ｄは、端子１２から入力される制御信号ＣＮＴＬが変化する毎に、予め定められた所定の順に従って動作モードを設定し、その設定した動作モードをデコーダ２２へ出力する。
【０１０６】
半導体集積回路１０Ｄにおけるその他の構成については、実施の形態１による半導体集積回路１０の構成と同じであるので、その説明は繰返さない。
【０１０７】
図１２は、実施の形態４による半導体集積回路１０Ｄにおいて、動作モードの遷移状態の一例を示す遷移図である。
【０１０８】
図１２を参照して、半導体集積回路１０Ｄは、動作モード設定回路２０Ｄにおいてリセット状態が解除されたとき、制御信号ＣＮＴＬがネゲートされていると、通常動作モードに移行する。一方、リセット解除時、制御信号ＣＮＴＬがアサートされていると、動作モード１が設定される。次いで、制御信号ＣＮＴＬの立上りエッジに同期して動作モード設定値が１つインクリメントされ、動作モード２が設定される。以降、制御信号ＣＮＴＬが立上る毎に動作モード設定値が１ずつインクリメントされる。そして、動作モードｍが設定された後、制御信号ＣＮＴＬが変化すると、再び動作モード１が設定され、以下、サイクリックに動作モードが遷移する。
【０１０９】
なお、上述した例では、動作モードが１ずつインクリメントされていくものとしたが、予め定めた他の所定の順で動作モードを遷移するようにしてもよい。
【０１１０】
図１３は、実施の形態４による半導体集積回路１０Ｄにおける動作モード設定回路２０Ｄを機能的に説明するための機能ブロック図である。
【０１１１】
図１３を参照して、動作モード設定回路２０Ｄは、次動作モード設定回路２３２と、フリップフロップ２３４とを含む。次動作モード設定回路２３２は、制御信号ＣＮＴＬと、リセット信号ＲＥＳＥＴと、フリップフロップ２３４からデコーダ２２へ出力される動作モード設定信号ＳＥＴ＜０：ｎ−１＞とを受け、制御信号ＣＮＴＬの立上りエッジに同期して動作モードを所定の順に従って遷移させ、遷移後の動作モード設定値をフリップフロップ２３４へ出力する。また、次動作モード設定回路２３２は、リセット信号ＲＥＳＥＴがアサートされると、動作モードを予め定められた初期の動作モードに設定する。
【０１１２】
フリップフロップ２３４は、リセット信号ＲＥＳＥＴがアサートされているとき、内部状態をリセットする。フリップフロップ２３４は、リセット信号ＲＥＳＥＴがネゲートされた後、制御信号ＣＮＴＬの立上りに応じて次動作モード設定回路２３２から出力された動作モード設定値を取込んでラッチし、デコーダ２２へ出力する。そして、制御信号ＣＮＴＬの立上りエッジを検出しない限り、取込んだ動作モード設定値を保持する。
【０１１３】
一方、リセット信号ＲＥＳＥＴがネゲートされたとき、制御信号ＣＮＴＬがアサートされていなければ、フリップフロップ２３４は、リセット後の値０をデコーダ２２へ出力する。すなわち、半導体集積回路１０Ｄの動作モードは、通常動作モードに設定される。
【０１１４】
図１４は、実施の形態４による半導体集積回路１０Ｄにおいてテストモードが設定されるときの各信号の動作波形図である。なお、この動作波形図においては、図１２に示した順で動作モードが遷移する場合について説明される。
【０１１５】
図１４を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされると、次動作モード設定回路２３２は、動作モードの初期状態として動作モード設定値を“１”に設定する。また、フリップフロップ２３４は、内部状態をリセットする。また、時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前に、制御信号ＣＮＴＬがアサートされる。
【０１１６】
時刻Ｔ２において、リセット信号ＲＥＳＥＴがネゲートされた後、時刻Ｔ３において制御信号ＣＮＴＬが一旦立下り、その後時刻Ｔ４において制御信号ＣＮＴＬが立上ると、次動作モード設定回路２３２は、動作モード設定値を“１”から“２”へ遷移させる。また、そのタイミングで、フリップフロップ２３４は、次動作モード設定回路２３２から出力された遷移後の動作モードを取込んでラッチし、その取込んだ動作モード設定値をデコーダ２２へ出力する。
【０１１７】
次いで、時刻Ｔ５において再び制御信号ＣＮＴＬが一旦立下り、時刻Ｔ６において制御信号ＣＮＴＬが立上ると、そのタイミングで次動作モード設定回路２３２は動作モードを“２”から“３”へ遷移させ、また、フリップフロップ２３４は、遷移後の動作モード設定値“３”を次動作モード設定回路２３２から取り込んでラッチし、デコーダ２２へ出力する。
【０１１８】
このようにして、制御信号ＣＮＴＬの変化に応じて、動作モードが所定の順で順次遷移する。
【０１１９】
以上のように、実施の形態４による半導体集積回路１０Ｄによれば、制御信号ＣＮＴＬの変化に応じて動作モードを遷移させるようにしたので、実施の形態１と同様の効果が得られるとともに、外部から設定される制御信号ＣＮＴＬをパルス状に変化させるだけで動作モードを順次設定することができる。
【０１２０】
［実施の形態５］
実施の形態１，２においては、外部クロックＣＬＫが変化し、そのタイミングで制御信号ＣＮＴＬが取込まれ、動作モードが設定された。また、実施の形態３では、外部クロックＣＬＫあるいは制御信号ＣＮＴＬが変化したタイミングで入出力端子１８から動作モード設定値が取込まれ、動作モードが設定された。さらに、実施の形態４では、制御信号ＣＮＴＬが変化したタイミングで動作モードが遷移し、動作モードが設定された。
【０１２１】
実施の形態５による半導体集積回路は、動作モード設定回路において、リセット状態が解除された後、信号の取込みタイミングを与える外部クロックＣＬＫもしくは制御信号ＣＮＴＬが変化しないときは、ＤＣテストモードとして動作する。ここで、ＤＣテストモードとは、半導体集積回路の各端子のパッドのＤＣ特性を測定するテストモードであって、パッドの電圧出力特性やリーク電流などが測定される。
【０１２２】
実施の形態５による半導体集積回路１０Ｅは、実施の形態１による半導体集積回路１０の構成において、動作モード設定回路２０に代えて動作モード設定回路２０Ｅを備える。半導体集積回路１０Ｅのその他の構成については、実施の形態１による半導体集積回路１０の構成と同じであるので、その説明は繰返さない。
【０１２３】
図１５は、実施の形態５による半導体集積回路１０Ｅにおける動作モード設定回路２０Ｅを機能的に説明するための機能ブロック図である。
【０１２４】
図１５を参照して、動作モード設定回路２０Ｅは、動作モード設定部２１２と、セレクタ２１４とを含む。動作モード設定部２１２は、実施の形態１による半導体集積回路１０における動作モード設定回路２０の動作モード設定機能を備え、さらに、リセット信号ＲＥＳＥＴによってリセット動作が行なわれると、動作モード設定値“ｍ＋１”をデフォルトとして内部設定する。そして、この動作モード設定値“ｍ＋１”は、ＤＣテストモードに対応する。
【０１２５】
セレクタ２１４は、制御信号ＣＮＴＬを入力し、制御信号ＣＮＴＬがアサートされているときは、動作モード設定部２１２によって設定された動作モード設定値をデコーダ２２へ出力する。一方、セレクタ２１４は、制御信号ＣＮＴＬがネゲートされているときは、予め内部定数として有する通常動作モード設定値をデコーダ２２へ出力する。
【０１２６】
この動作モード設定回路２０Ｅにおいては、リセット信号ＲＥＳＥＴがアサートされると、動作モード設定部２１２は、内部状態をリセットし、デフォルトとしての動作モード設定値“ｍ＋１”を内部設定する。そして、リセット信号ＲＥＳＥＴがネゲートされ、動作モード設定部２１２においてリセット状態が解除されると、制御信号ＣＮＴＬがアサートされていれば、セレクタ２１４は、動作モード設定部２１２によって設定されたＤＣテストモードを示す動作モード設定値“ｍ＋１”をデコーダ２２へ出力する。
【０１２７】
一方、リセット信号ＲＥＳＥＴがネゲートされ、動作モード設定部２１２においてリセット状態が解除されたとき、制御信号ＣＮＴＬがアサートされていなければ、セレクタ２１４は、内部定数として予め有する通常動作モード設定値をデコーダ２２へ出力する。
【０１２８】
そして、いずれの場合も、リセット信号ＲＥＳＥＴがネゲートされた後は、外部クロックＣＬＫは変化せず、テストモードであればＤＣテストが行なわれる。
【０１２９】
なお、動作モード設定部２１２は、実施の形態２，４に対応して、動作モード設定回路２０Ａ，２０Ｄに上述したデフォルト設定機能を備えたものであってもよい。
【０１３０】
また、実施の形態３による半導体集積回路１０Ｂにおいても、同様にして、動作モード設定回路２０Ｂ，２０Ｃに上述したようなデフォルト設定機能を備えることもできる。
【０１３１】
以上のように、実施の形態５による半導体集積回路１０Ｅによれば、動作モード設定回路２０Ｅのリセット時、デフォルトとしてＤＣテストモードに対応する動作モード設定値を設定するようにしたので、リセット解除後、動作モードを設定するための信号を取込むための外部クロックＣＬＫもしくは制御信号ＣＮＴＬを変化させなくても、ＤＣテストモードで動作することができる。
【０１３２】
［実施の形態６］
実施の形態６による半導体集積回路では、動作モードが設定された後、設定された動作モード設定値が外部に出力される。これによって、設定された動作モードを確認することができる。
【０１３３】
実施の形態６による半導体集積回路１０Ｆは、実施の形態１による半導体集積回路１０の構成において、動作モード設定回路２０に代えて動作モード設定回路２０Ｆを備える。半導体集積回路１０Ｆのその他の構成については、実施の形態１による半導体集積回路１０の構成と同じであるので、その説明は繰返さない。
【０１３４】
図１６は、実施の形態６による半導体集積回路１０Ｆにおける動作モード設定回路２０Ｆを機能的に説明するための機能ブロック図である。
【０１３５】
図１６を参照して、動作モード設定回路２０Ｆは、動作モード設定部２２２と、制御回路２２４と、動作モード出力回路２２６と、バッファ２２８とを含む。
【０１３６】
動作モード設定部２２２は、実施の形態１による半導体集積回路１０における動作モード設定回路２０であり、リセット信号ＲＥＳＥＴがネゲートされた後のｎサイクルで、動作モードを設定し、その設定した動作モードをデコーダ２２へ出力する。
【０１３７】
動作モード出力回路２２６は、動作モード設定部２２２によって設定された動作モード設定値を受け、動作モード設定部２２２によって動作モードが設定された後のｎサイクルにおいて、制御回路２２４から受ける指令に応じて、動作モード設定値をシリアルデータでバッファ２２８へ出力する。
【０１３８】
制御回路２２４は、リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、動作モード設定部２２２によって動作モードが設定された後のｎサイクルにおいて、動作モード出力回路２２６からバッファ２２８を介して端子１２へ動作モード設定値が出力されるように、動作モード出力回路２２６およびバッファ２２８を制御する。
【０１３９】
バッファ２２８は、制御回路２２４からの指令に応じて、動作モード出力回路２２６から出力された動作モードを端子１２へ出力する。
【０１４０】
なお、図１６においては、制御回路２２４には制御信号ＣＮＴＬが入力されず、制御回路２２４は、リセット信号ＲＥＳＥＴがネゲートされた後、制御信号ＣＮＴＬの状態に拘わらず、動作モード設定後に動作モードの出力動作を行なうが、制御回路２２４に制御信号ＣＮＴＬを入力し、リセット信号ＲＥＳＥＴがネゲートされたときに制御信号ＣＮＴＬがアサートされているときのみ、その後に動作モードの出力動作が行なわれるようにしてもよい。すなわち、通常動作モード時は、動作モード設定値の確認は行なわず、テストモード時のみ動作モード設定値の確認が行なわれるようにしてもよい。
【０１４１】
図１７は、実施の形態６による半導体集積回路１０Ｆにおいてテストモードが設定されるときの各信号の動作波形図である。
【０１４２】
図１７を参照して、時刻Ｔ１においてリセット信号ＲＥＳＥＴがアサートされ、動作モード設定部２２２の内部状態がリセットされる。時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされる前に、制御信号ＣＮＴＬはアサートされる。時刻Ｔ２においてリセット信号ＲＥＳＥＴがネゲートされると、制御信号ＣＮＴＬがアサートされているので、動作モード設定部２２２は、テストモードであると認識し、時刻Ｔ３までのｎサイクルにおいて端子１２から入力される制御信号ＣＮＴＬに基づいて動作モードを設定する。
【０１４３】
一方、制御回路２２４は、リセット信号ＲＥＳＥＴおよび外部クロックＣＬＫを受け、リセット信号ＲＥＳＥＴがネゲートされてからｎサイクル後の時刻Ｔ３になると、動作モード出力回路２２６およびバッファ２２８を活性化する。制御回路２２４からの指令に応じて、動作モード出力回路２２６は、時刻Ｔ３〜Ｔ４のｎサイクルにおいて、動作モード設定部２２２から出力されたパラレルデータである動作モード設定値をシリアルデータに変換してバッファ２２８へ出力し、バッファ２２８は、端子１２へ動作モード設定値を出力する。
【０１４４】
なお、動作モード設定部２２２は、実施の形態２〜５に対応して、動作モード設定回路２０Ａ〜２０Ｅであってもよく、また、実施の形態３に対応する場合には、実施の形態６による半導体集積回路１０Ｆは、図７に示した半導体集積回路１０Ｂに対応した構成となる。
【０１４５】
以上のように、実施の形態６による半導体集積回路１０Ｆによれば、設定された動作モードを確認できるようにしたので、実施の形態１〜５と同様にテスト時の動作モードを設定するための信号を入力するテスト専用の端子数が大幅に削減されるとともに、さらに、設定された動作モードが所望の動作モードであるかを半導体集積回路の外部において確認することができる。
【０１４６】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】実施の形態１による半導体集積回路の全体構成を示す概略ブロック図である。
【図２】実施の形態１による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図３】実施の形態１による半導体集積回路において通常動作モードが設定されるときの各信号の動作波形図である。
【図４】実施の形態１による半導体集積回路においてテストモードが設定されるときの各信号の動作波形図である。
【図５】実施の形態２による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図６】実施の形態２による半導体集積回路においてテストモードが設定されるときの各信号の動作波形図である。
【図７】実施の形態３による半導体集積回路の全体構成を示す概略ブロック図である。
【図８】実施の形態３による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図９】実施の形態３による半導体集積回路においてテストモードが設定されるときの各信号の動作波形図である。
【図１０】実施の形態３による半導体集積回路における他の動作モード設定回路を機能的に説明するための機能ブロック図である。
【図１１】実施の形態３による半導体集積回路において図１０に示す動作モード設定回路が用いられたときの各信号の動作波形図である。
【図１２】実施の形態４による半導体集積回路において、動作モードの遷移状態の一例を示す遷移図である。
【図１３】実施の形態４による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図１４】実施の形態４による半導体集積回路においてテストモードが設定されるときの各信号の動作波形図である。
【図１５】実施の形態５による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図１６】実施の形態６による半導体集積回路における動作モード設定回路を機能的に説明するための機能ブロック図である。
【図１７】実施の形態６による半導体集積回路においてテストモードが設定されるときの各信号の動作波形図である。
【図１８】複数の機能ブロックを備え、かつ、各機能ブロック毎にテストが可能な従来の半導体集積回路の全体構成を示す概略ブロック図である。
【図１９】図１８に示す半導体集積回路において、動作モードの設定値とその動作モードの内容との対応関係を示す図である。
【図２０】図１８に示すセレクタを機能的に説明するための機能ブロック図である。
【符号の説明】
１０，１０Ａ，１０Ｂ，１０Ｄ〜１０Ｆ　半導体集積回路、１２，１４，１６端子、１８，１８１，１８２　入出力端子、２０，２０Ａ〜２０Ｆ　動作モード設定回路、２２　デコーダ、２４，２１４　セレクタ、２６　バス、１１２　動作モード設定端子、２０１　カウンタ、２０２　シフトレジスタ、２０４　テストモード検出回路、２０６，２０８，２３４　フリップフロップ、２１２，２２２　動作モード設定部、２２４　制御回路、２２６　動作モード出力回路、２２８　バッファ、２３２　次動作モード設定回路、２４１　回路、２４３，２４５　内部セレクタ、２４７　出力バッファ、２４９　入力バッファ、２５１〜２５５　信号線、Ｇ１〜Ｇｍ　ＡＮＤゲート、ＦＢ１〜ＦＢｍ　機能ブロック。
【図１】
2004045090.tif 000003
【図２】
2004045090.tif 000004
【図３】
2004045090.tif 000005
【図４】
2004045090.tif 000006
【図５】
2004045090.tif 000007
【図６】
2004045090.tif 000008
【図７】
2004045090.tif 000009
【図８】
2004045090.tif 000010
【図９】
2004045090.tif 000011
【図１０】
2004045090.tif 000012
【図１１】
2004045090.tif 000013
【図１２】
2004045090.tif 000014
【図１３】
2004045090.tif 000015
【図１４】
2004045090.tif 000016
【図１５】
2004045090.tif 000017
【図１６】
2004045090.tif 000018
【図１７】
2004045090.tif 000019
【図１８】
2004045090.tif 000020
【図１９】
2004045090.tif 000021
【図２０】
2004045090.tif 000022