(57)【要約】【課題】簡易な構成であり、汎用ＬＳＩテスタを用いて実動作速度でテストすることが可能な半導体集積回路装置を提供する。【解決手段】機能ブロックＦＡは、実動作速度に等しいクロック信号に同期して、入力されるファンクションパターンに応じた出力データＹ１，Ｙ２を出力する。出力データＹ１，Ｙ２は、セレクタ回路ＳＥＬ１，ＳＥＬ２において選択されて、機能ブロックＦＢ，ＦＣのスキャン挿入済回路ＳＣＢ，ＳＣＣに入力される。スキャン挿入済回路ＳＣＢ，ＳＣＣがスキャンモードに設定されると、スキャンフリップフロップ回路ＳＦＦは、クロック信号に同期して、出力データＹ１，Ｙ２を格納する。機能ブロックＦＡのファンクションパターンが終了すると、スキャンフリップフロップ回路ＳＦＦに格納されている出力データを、低速のスキャンクロック信号に同期して出力し、各々を対応する期待値と比較する。【選択図】        図１
2005024358.tif 000002
【特許請求の範囲】
【請求項１】
各々が、所定の演算処理を行なう組合せ回路と、前記組合せ回路の入力端子または出力端子に対応して配置される複数のフリップフロップ回路とを含む複数の機能ブロックと、
各前記複数の機能ブロックに、周波数の異なる第１および第２のクロックを供給する手段と、
ファンクションテストのテスト対象となる第１の機能ブロックと非テスト対象となる第２の機能ブロックとの間に配され、前記ファンクションテスト時に、前記第１の機能ブロックの出力データを前記第２の機能ブロックに伝達するための選択回路とを備え、
前記複数のフリップフロップ回路は、
シフトレジスタ構造からなるスキャンパスを形成してデータを直列に転送するスキャンモードと、前記組合せ回路からの対応のデータに所定の処理を行なう通常動作モードとで動作可能であり、
前記ファンクションテストにおいて、前記第１の機能ブロックは、入力されたファンクションパターンに応答した出力データを前記第１のクロックに同期して出力し、
前記選択回路は、前記出力データを前記第２の機能ブロックの前記スキャンパスへ伝達し、
前記第２の機能ブロックは、内包する前記複数のフリップフロップ回路が前記スキャンモードに設定されて前記スキャンパスを形成し、前記第１のクロックに同期して、前記スキャンパスに前記出力データを格納し、前記ファンクションパターン入力終了後において、前記第２のクロックに同期して、前記出力データをシフト動作により順次外部に出力する、半導体集積回路装置。
【請求項２】
前記クロック供給手段は、前記ファンクションパターン入力時には、汎用テスタの最高動作周波数以上の周波数であり、前記第１の機能ブロックの実動作速度に等しい周波数の前記第１のクロックを供給し、前記ファンクションパターン入力終了後には、前記汎用テスタの最高動作周波数以下の周波数の前記第２のクロックを供給する、請求項１に記載の半導体集積回路装置。
【請求項３】
前記クロック供給手段から前記第１の機能ブロックへの前記第１および第２のクロックの供給を実行／停止するためのクロック制御回路をさらに備え、
前記クロック供給手段は、前記クロック制御回路からの前記ファンクションパターンを区切るための制御信号に応答して、前記第１の機能ブロックに対して前記第１および第２のクロックの供給を所定の期間停止し、
前記第１の機能ブロックは、前記第１および第２のクロックの供給が停止されたことに応じて、前記ファンクションパターンの入力が停止され、
前記クロック供給手段は、前記所定の期間において、前記第２の機能ブロックに前記第２のクロックを供給し、
前記第２の機能ブロックは、格納している前記出力データを前記第２のクロックに同期して順次外部に出力する、請求項１または２に記載の半導体集積回路装置。
【請求項４】
前記クロック供給手段から前記第２の機能ブロックへの前記第１および第２のクロックの供給を実行／停止するための期待値格納制御回路をさらに備え、
前記クロック供給手段は、前記第１の機能ブロックが出力する前記出力データに対応する期待値が存在しないときに、前記期待値格納制御回路の出力する制御信号に応答して、前記第２の機能ブロックへの前記第１のクロックの供給を停止し、
前記第２の機能ブロックは、前記第１のクロックの供給が停止されたことに応じて、前記出力データの格納を停止する、請求項１または３に記載の半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路装置に関し、より特定的には、複数の機能ブロックを備えた半導体集積回路装置での動作テストに関する。
【０００２】
【従来の技術】
半導体集積回路装置（以下、ＬＳＩとも称する）においては、論理回路、メモリ回路、アナログ回路などの複数の機能ブロックが、半導体チップ上に集積されて構成される。
【０００３】
このようなＬＳＩにおいて、近年、プロセスの微細化に伴ない、大規模化および高速化が進んでいる。このため、ＬＳＩに搭載される機能ブロックの故障検出を行なうためのファンクションテストにおいては、回路内部のフリップフロップ数が増加すること、クロックツリーによるクロック遅延が大きいこと、およびＬＳＩに装着されるテスタの負荷容量が大きいことなどに起因して、測定条件によっては、ＬＳＩの出力信号が測定周期内に収まったり、収まらなかったりするという不具合の発生が増加している。
【０００４】
さらに、高速動作の要求が高まるにつれて、機能ブロックの動作周波数が高くなり、ＬＳＩテスタの測定周期内に出力信号を収めることが、ますます困難なものとなっている。
【０００５】
一方、ＬＳＩのファンクションテストに汎用されるテスタは、テストにかかるコストの上昇を抑えることができるという反面、安価なものほど、動作速度が低く、かつテスタの負荷容量が大きいため、出力遅延が大きくなるという問題を抱えている。
【０００６】
このため、従来では、安価なＬＳＩテスタを使用して、いかなる測定条件をも満足するために、テスト時には機能ブロックの動作する周期幅を広げ、出力信号が安定したタイミングにおいて、出力信号と期待値とを比較してテストを行なっていた。
【０００７】
最近では、これらの問題を解決して、十分なテスト品質を確保すべく、内部回路を実動作速度で動作させてテストを行なうことを可能とするＬＳＩが数々提案されている（例えば、特許文献１，２参照）。
【０００８】
例えば、特許文献１に記載のＬＳＩは、内部に、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）メモリを備える。ＦＩＦＯメモリは、出力端がテスト対象となる回路ブロックのデータ入力端に接続され、入力端がテスト対象ブロックのデータ出力端に接続される。本構成において、テスト時には、このＦＩＦＯメモリに、外部からスキャンインされたテストデータを蓄積する。なお、この動作は、テストデータをスキャンクロックに同期させてスキャンインするので、比較的低速で行なわれる。
【０００９】
次に、蓄積されたテストデータを、ＬＳＩのテスト対象ブロックに入力する。このとき、テストデータは、ＬＳＩのシステムクロックに同期させることにより、ＬＳＩの実動作速度（高速度）で入力される。
【００１０】
さらに、ＬＳＩのテスト対象ブロックからは、実動作速度でテストされた出力データが出力され、上記のＦＩＦＯメモリに蓄積される。このデータをスキャンクロックに同期させて取出すことにより、比較的低速で内部状態を知ることができる。
【００１１】
以上のように、特許文献１に記載のＬＳＩによれば、回路ブロックに対して実動作速度でテストを行なうことができることから、テストの信頼性を確保することができる。
【００１２】
さらに、特許文献２にかかるＬＳＩについても同様に、低速のスキャンククロックに同期して供給されるテストデータを保持し、かつ、高速のシステムクロックに同期して内部回路ブロックから出力される出力データを保持するという状態保持手段を備え、内部回路ブロックをシステムクロックに基づいて高速でテストすることを可能としている。
【００１３】
【特許文献１】
特開平２−２４７５８６号公報（第１図）
【００１４】
【特許文献２】
特開平９−６１４９５号公報（図１）
【００１５】
【発明が解決しようとする課題】
しかしながら、上記のＬＳＩはいずれも、データを蓄積するためのＦＩＦＯメモリ等の状態保持手段を内部に備えることが必要とされる。このため、回路規模の増大および回路構成の複雑化といった新たな不具合の発生を否定することはできない。
【００１６】
それゆえ、この発明の目的は、簡易な構成において、汎用のＬＳＩテスタを用いて、実動作速度でテストすることが可能な半導体集積回路装置を提供することである。
【００１７】
【課題を解決するための手段】
この発明に係る半導体集積回路装置によれば、各々が、所定の演算処理を行なう組合せ回路と、組合せ回路の入力端子または出力端子に対応して配置される複数のフリップフロップ回路とを含む複数の機能ブロックと、各複数の機能ブロックに、周波数の異なる第１および第２のクロックを供給する手段と、ファンクションテストのテスト対象となる第１の機能ブロックと非テスト対象となる第２の機能ブロックとの間に配され、ファンクションテスト時に、第１の機能ブロックの出力データを第２の機能ブロックに伝達するための選択回路とを備える。複数のフリップフロップ回路は、シフトレジスタ構造からなるスキャンパスを形成してデータを直列に転送するスキャンモードと、組合せ回路からの対応のデータに所定の処理を行なう通常動作モードとで動作可能であり、ファンクションテストにおいて、第１の機能ブロックは、入力されたファンクションパターンに応答した出力データを第１のクロックに同期して出力し、選択回路は、出力データを第２の機能ブロックのスキャンパスへ伝達し、第２の機能ブロックは、内包する複数のフリップフロップ回路がスキャンモードに設定されてスキャンパスを形成し、第１のクロックに同期して、スキャンパスに出力データを格納し、ファンクションパターン入力終了後において、第２のクロックに同期して、出力データをシフト動作により順次外部に出力する。
【００１８】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰返さない。
【００１９】
図１は、この発明の実施の形態に従う半導体集積回路装置の構成を示すブロック図である。
【００２０】
図１を参照して、ＬＳＩ１００は、回路設計効率化のため、特定の機能を有する機能ブロックＦＡ，ＦＢ，ＦＣとして、機能ブロック単位で分割設計されている。
【００２１】
これらの機能ブロックの試験にあたっては、テスト容易化設計として、順序回路の複数のフリップフロップ回路をシリアルに接続してシフトレジスタとして構成し、テスト時にこのシフトパス（スキャンパス）を介して信号／データを転送して内部状態を外部で観測可能とする、スキャンパス方式が採用される。
【００２２】
図１に示すように、例えば、機能ブロックＦＡは、スキャンパスが挿入されたスキャン挿入済回路ＳＣＡ１，ＳＣＡ２を備える。なお、以下において、スキャン挿入済回路ＳＣＡ１，ＳＣＡ２を総称するときには、符号ＳＣを用いて表記するものとする。
【００２３】
スキャン挿入済回路ＳＣＡ１，ＳＣＡ２の各々は、複数の組合せ回路とフリップフロップ回路とから構成される。フリップフロップ回路は、後述するように、スキャンモードにおいて、スキャンフリップフロップ回路（以下、ＳＦＦとも称する）に置換えられ、シリアルに接続されてスキャンパスを構成する。
【００２４】
スキャン挿入済回路ＳＣＡ１，ＳＣＡ２には、それぞれ、データ入力端子ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄとデータ出力端子ＯＴ１，ＯＴ２が設けられる。通常動作時には、これらのデータ入力端子ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄに入力された入力データＤＩＮに対して、対応する組合せ回路による所定の論理演算が順次施されて、得られた出力データＹ１，Ｙ２がデータ出力端子ＯＴ１，ＯＴ２のそれぞれから出力される。
【００２５】
スキャン挿入済回路ＳＣＡ１，ＳＣＡ２の各々は、通常動作時には、ＬＳＩ１００の外部から供給されるクロック信号ＣＬＫに応答して動作する。
【００２６】
さらに、機能ブロックＡに対して動作テストを実行するための構成として、スキャン入力端子ＳＩＴ１，ＳＩＴ２およびスキャン出力端子ＳＯＴ１，ＳＯＴ２が、スキャン挿入済回路ＳＣＡ１，ＳＣＡ２にそれぞれ対応して配置されている。
【００２７】
図２は、スキャン挿入済回路ＳＣの構成の一例を示す回路図である。
図２を参照して、スキャン挿入済回路ＳＣは、組合せ回路の所定数の出力データのぞれぞれに対応して配置されるスキャンフリップフロップ回路ＳＦＦを含む。図２に示す構成においては、これらのスキャンフリップフロップ回路ＳＦＦは、組合せ回路の４つの出力データをデータ入力端子Ｄにそれぞれ受ける。
【００２８】
スキャンフリップフロップ回路ＳＦＦは、通常動作モード時には、これらの出力データを、データ出力端子Ｑを介して次段の組合せ回路へ出力する。
【００２９】
一方、スキャンフリップフロップ回路ＳＦＦは、データを転送するスキャンモード時には、スキャンパスを構成する。スキャン挿入済回路ＳＣのスキャン入力端子ＳＩＴにスキャンインデータＳＩＤが入力されると、スキャンインデータＳＩＤは、スキャンパスを構成する先頭のスキャンフリップフロップ回路ＳＦＦのシフトイン端子ＳＩへ伝達される。
【００３０】
さらに、スキャンインデータＳＩＤは、クロック信号ＣＬＫに同期して、スキャンフリップフロップ回路ＳＦＦのシフトアウト端子ＳＯから出力され、次段のスキャンフリップフロップ回路ＳＦＦのシフトイン端子ＳＩに入力される。このように、シリアルインデータＳＩＤは、シフトイン端子ＳＩおよびシフトアウト端子ＳＯを介して順次転送され、スキャンアウトデータＳＯＤとして、スキャン出力端子ＳＯＴから出力される。
【００３１】
各スキャンフリップフロップ回路ＳＦＦにおける、通常動作モードとスキャンモードとの切換えは、スキャンモード信号ＳＭによって行なわれる。スキャンモード信号ＳＭは、スキャンフリップフロップ回路ＳＦＦの各々を通常動作モードまたはスキャンモードに設定するための制御信号であり、スキャン挿入済回路ＳＣ外部から与えられる。
【００３２】
図３は、スキャンフリップフロップ回路ＳＦＦの構成の一例を概略的に示す図である。
【００３３】
図３を参照して、スキャンフリップフロップ回路ＳＦＦは、セレクタ回路ＳＥＬＦとフリップフロップ部ＦＦとを含む。
【００３４】
セレクタ回路ＳＥＬＦは、入力されるスキャンモード信号ＳＭに応答して動作する。セレクタ回路ＳＥＬＦは、シフトイン端子ＳＩに入力されたスキャンインデータＳＩＤと、データ入力端子Ｄに入力された対応する組合せ回路の出力データＤＩＮとのいずれか一方を、スキャンモード信号ＳＭに応答して後段のフリップフロップ部ＦＦに入力する。例えば、スキャンモード信号ＳＭが「Ｈ」のときには、スキャンモードとなり、スキャンインデータＳＩＤがフリップフロップ部ＦＦに入力され、スキャンモード信号ＳＭが「Ｌ」のときには、通常動作モードとなり、出力データＤＩＮがフリップフロップ部ＦＦに入力される。
【００３５】
フリップフロップ部ＦＦは、スキャンモードにおいて、入力されたスキャンインデータＳＩＤを、さらに、シフトアウト端子ＳＯを介して、スキャンパスを構成する次段のスキャンフリップフロップ回路ＳＦＦのシフトイン端子ＳＩへ伝達する。
【００３６】
一方、フリップフロップ部ＦＦは、通常動作モードにおいては、出力データをデータ出力端子Ｑを介して、図示しない組合せ回路へと伝達する。
【００３７】
このように、スキャンモードでは、スキャンフリップフロップ回路ＳＦＦに対して、外部端子から直接データの書込み・読出しを行なうことにより、順序回路を組合せ回路としてテストすることができる。
【００３８】
再び図１を参照して、ＬＳＩ１００に搭載される他の機能ブロックＦＢ，ＦＣにおいても、機能ブロックＦＡと同様に、内部回路として、スキャン挿入済回路ＳＣＢ，ＳＣＣがそれぞれ配される。
【００３９】
スキャン挿入済回路ＳＣＢは、スキャン挿入済回路ＳＣＡ１，ＳＣＡ２と同様に、スキャンフリップフロップ回路ＳＦＦがシリアルに接続されてスキャンパスを構成する。スキャン入力端子ＳＩＴｂに入力されスキャンインデータＳＩＤは、スキャンパスを順次シフトされ、スキャン出力端子ＳＯＴｂから出力される。
【００４０】
スキャン挿入済回路ＳＣＣも同様に、スキャン入力端子ＳＩＴｃに入力されたスキャンインデータＳＩＤは、スキャンパスを順次シフトされて、スキャン出力端子ＳＯＴｃから出力される。
【００４１】
以上のように、ＬＳＩ１００は、複数の機能ブロックＦＡ，ＦＢ，ＦＣを有し、各機能ブロックは、内部にスキャン挿入済回路ＳＣを含む構成となっている。以下に、この構成において、機能ブロックの各々のファンクションテストを行なうときの動作について説明する。なお、本実施の形態では、機能ブロックＦＡをテストする場合を例として、従来のテスト方法と比較しながら説明する。
【００４２】
ＬＳＩ１００において、一部の機能ブロックのみを使用してテストする場合、テスト対象となる機能ブロックにのみファンクションパターンを入力してテストするのが一般的である。機能ブロックＦＡをテストする場合は、機能ブロックＦＡに対して、ファンクションパターンをＬＳＩ１００外部のテスタ（図示せず）からデータ入力端子ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄに入力し、データ出力端子ＯＴ１，ＯＴ２から出力される出力データ信号Ｙ１，Ｙ２を検出して行なわれる。このとき、非テスト対象の機能ブロックＦＢ，ＦＣは、非動作状態に設定される。
【００４３】
ここで、機能ブロックＦＡに実動作速度に等しいタイミングでファンクションテストを行なうためには、実動作速度でのテストパターンの入力、および機能ブロックＦＡから出力されるデータの検出を実動作速度で行なうことが必要とされる。しかしながら、汎用されるＬＳＩテスタでは、入出力できる信号の速度（最高動作周波数）に制限があるため、実動作速度でのファンクションテストを実行できないという問題が生じていた。
【００４４】
そこで、本実施の形態では、非テスト対象の機能ブロックＦＢ，ＦＣを活用し、機能ブロックＦＡの実動作速度でのファンクションテストを汎用テスタで行なうことを可能とする。
【００４５】
再び図１を参照して、ＬＳＩ１００は、機能ブロックＦＡの出力側に設けられたセレクタ回路ＳＥＬ１，ＳＥＬ２と、クロック制御回路２０と、期待値格納制御回路３０と、ＡＮＤゲート１０，１１，１２とをさらに備える。
【００４６】
セレクタ回路ＳＥＬ１は、機能ブロックＦＡのスキャン挿入済回路ＳＣＡ１のスキャンパスから出力されるスキャンアウトデータＳＯＤ１と出力データＹ１とのいずれか一方を、テストモード信号ＴＭに応答して、機能ブロックＦＢのスキャン挿入済回路ＳＣＢ内部のスキャンパスへ伝達する。
【００４７】
例えば、テストモード信号ＴＭが「Ｈ」のときには、スキャンアウトデータＳＯＤ１を選択して、スキャン挿入済回路ＳＣＢのスキャン入力端子ＳＩＴｂに伝達する。一方、テストモード信号ＴＭが「Ｌ」のときには、セレクタ回路ＳＥＬ１は、出力データＹ１を選択してスキャン挿入済回路ＳＣＢのスキャン入力端子ＳＩＴｂに伝達する。
【００４８】
セレクタ回路ＳＥＬ２は、機能ブロックＦＡのスキャン挿入済回路ＳＣＡ２のスキャンパスから出力されるスキャンアウトデータＳＯＤ２と出力データＹ２とのいずれか一方を、テストモード信号ＴＭに応答して、機能ブロックＦＣのスキャン挿入済回路ＳＣＣのシリアルスキャンパスへ伝達する。
【００４９】
例えば、テストモード信号ＴＭが「Ｈ」のときには、スキャンアウトデータＳＯＤ２を選択して、スキャン挿入済回路ＳＣＣのスキャン入力端子ＳＩＴｃに伝達する。一方、テストモード信号ＴＭが「Ｌ」のときには、セレクタ回路ＳＥＬ２は、出力データＹ２を選択してスキャン挿入済回路ＳＣＣのスキャン入力端子ＳＩＴｃに伝達する。
【００５０】
したがって、テストモード信号ＴＭが「Ｌ」のときには、機能ブロックＦＡの出力データＹ１，Ｙ２は、セレクタ回路ＳＥＬ１，ＳＥＬ２を介して、機能ブロックＦＢ，ＦＣのスキャン入力端子ＳＩＴｂ，ＳＩＴｃにそれぞれ入力される。
【００５１】
クロック制御回路２０は、機能ブロックＦＡへのクロック信号ＣＬＫの供給を制御するための部位である。ＬＳＩ１００外部からの入力信号に応答して、クロック制御信号ＣＬＣＮＴを生成する。
【００５２】
ＡＮＤゲート１０は、第１の入力端子にクロック信号ＣＬＫを受け、第２の入力端子にクロック制御回路２０からのクロック制御信号ＣＬＣＮＴを受けると、これら２入力の論理積の演算結果を機能ブロックＦＡのスキャン挿入済回路ＳＣＡ１，ＳＣＡ２にそれぞれ出力する。すなわち、クロック制御信号ＣＬＣＮＴが「Ｈ」のときには、入力されたクロック信号ＣＬＫがスキャン挿入済回路ＳＣＡ１，ＳＣＡ２に供給され、クロック制御信号ＣＬＣＮＴが「Ｌ」のときには、クロック信号ＣＬＫの供給が停止される。クロック信号ＣＬＫの供給が停止されると、スキャン挿入済回路ＳＣＡ１，ＳＣＡ２は、動作を停止する。
【００５３】
期待値格納制御回路３０は、機能ブロックＦＢ，ＦＣへのクロック信号ＣＬＫの供給を制御するための部位である。ＬＳＩ１００外部からの入力信号に応答して、期待値格納制御信号ＥＸＰＬを生成する。
【００５４】
ＡＮＤゲート１１，１２は、第１の入力端子にクロック信号ＣＬＫを受け、第２の入力端子に期待値格納制御回路３０からの期待値格納制御信号ＥＸＰＬを受けると、これら２入力の論理積の演算結果を機能ブロックＦＢ，ＦＣのスキャン挿入済回路ＳＣＢ，ＳＣＣに出力する。すなわち、期待値格納制御信号ＥＸＰＬは「Ｈ」のときには、入力されたクロック信号ＣＬＫがスキャン挿入済回路ＳＣＢ，ＳＣＣにそれぞれ供給され、期待値格納制御信号ＥＸＰＬが「Ｌ」のときには、クロック信号ＣＬＫの供給が停止される。クロック信号ＣＬＫの供給が停止されると、スキャン挿入済回路ＳＣＢ，ＳＣＣは、それぞれ動作を停止する。
【００５５】
以上のことから、機能ブロックＦＡと機能ブロックＦＢ，ＦＣとへのクロック信号ＣＬＫの供給は、対応する制御信号によって個別に制御される。特に、クロック制御信号ＣＬＣＮＴ，期待値格納制御信号ＥＸＰＬのいずれもが「Ｈ」のときには、機能ブロックＦＡ，ＦＢ，ＦＣは、いずれも同じ周波数のクロック信号ＣＬＫに同期して動作することとなる。
【００５６】
以上の構成からなるＬＳＩ１００における機能ブロックＦＡのファンクションテストについて説明する。
【００５７】
最初に、機能ブロックＦＡに対して、図示しないＬＳＩテスタからファンクションパターンを入力端子ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄに入力する。このとき、機能ブロックＦＡに供給するクロック信号ＣＬＫの周波数は、内部回路の実動作速度と同じに設定する。したがって、機能ブロックＦＡは、実動作速度に等しいタイミングで、出力データＹ１，Ｙ２を出力する。
【００５８】
次に、セレクタ回路ＳＥＬ１，ＳＥＬ２に対して、「０」のテストモード信号ＴＭを入力し、出力データＹ１，Ｙ２を選択する。これにより、出力データＹ１，Ｙ２は、セレクタ回路ＳＥＬ１，ＳＥＬ２を介して、機能ブロックＦＢ，ＦＣのスキャン挿入済回路ＳＣＢ，ＳＣＣのスキャン入力端子ＳＩＴｂ，ＳＩＴｃにぞれぞれ入力される。
【００５９】
スキャン挿入済回路ＳＣＢ，ＳＣＣでは、スキャンフリップフロップ回路ＳＦＦの各々に対して、「Ｈ」レベルのスキャンモード信号ＳＭが入力される。これにより、スキャンフリップフロップ回路ＳＦＦは、シリアルに接続され、スキャンパスを構成する。
【００６０】
さらに、スキャン挿入済回路ＳＣＢ，ＳＣＣには、ＡＮＤゲート１１，１２を介して機能ブロックＦＡの実動作速度に等しい周波数のクロック信号ＣＬＫが供給される。結果として、機能ブロックＦＡの出力データは、クロック信号ＣＬＫに同期して、機能ブロックＦＢ，ＦＣのスキャンフリップフロップ回路ＳＦＦに格納される。
【００６１】
格納された出力データは、さらにスキャンシフトにより、ファンクションパターンによってクロック信号ＣＬＫが動作する度に、次々とスキャンパスを構成するスキャンフリップフロップ回路ＳＦＦに格納される。
【００６２】
機能ブロックＦＡのファンクションパターンが終了すると、機能ブロックＦＡ内の回路はすべて実動作速度で動作し、出力データはすべて機能ブロックＦＢ，ＦＣのスキャンフリップフロップ回路ＳＦＦに格納されている。
【００６３】
この段階で、機能ブロックＦＢ，ＦＣをスキャンクロック信号で動作させて、スキャンフリップフロップ回路ＳＦＦに格納される出力データを、機能ブロックＦＢ，ＦＣのスキャン出力端子ＳＯＴｂ，ＳＯＴｃからＬＳＩ１００の出力ポートに出力する。このとき、機能ブロックＦＢ，ＦＣに与えられるスキャンクロック信号は、先述の機能ブロックＦＡの動作クロックと同様に、ＬＳＩ１００外部から供給されるが、その周波数は、テスタの負荷容量による出力遅延やクロックツリーによる遅延を考慮して、出力が安定する程度まで低く設定される。
【００６４】
スキャンクロック信号に同期して、機能ブロックＦＢ，ＦＣに内包されるスキャンパスを経由して出力されたスキャンアウトデータＳＯＤ１，ＳＯＤ２は、機能ブロックＦＡのファンクションパターン実行時において、機能ブロックＦＡから出力される出力データＹ１，Ｙ２と同一である。
【００６５】
したがって、スキャンアウトされた出力データＳＯＤ１，ＳＯＤ２を予めテスタに格納していた期待値と比較することにより、機能ブロックＦＡのファンクションテストを行なうことができる。
【００６６】
すなわち、機能ブロックＦＡに対するファンクションパターン実行時の動作は実動作速度で行ない、得られた出力データと期待値との比較のときには周期を広げて行なうことによって、低速な汎用テスタを用いて実動作状態でのファンクションテストを安価に行なうことができる。
【００６７】
また、機能ブロックＦＡの出力データを、非テスト対象の他の機能ブロックＦＢ，ＦＣの有するスキャンフリップフロップ回路ＳＦＦを流用して格納することにより、出力データを格納するためのメモリやレジスタをＬＳＩ１００内部に新たに必要としないことから、回路規模の増大および複雑化を抑制することができる。
【００６８】
さらに、機能ブロックＦＡのファンクションパターンで出力される出力データはすべて必要でなく、期待値の存在するデータのみであれば良いことから、機能ブロックＦＢ，ＦＣのクロック入力に期待格納制御回路３０を挿入し、期待値格納制御信号ＥＸＰＬによって、期待値が必要なときにのみクロック信号ＣＬＫを供給し、スキャンパスを動作させるようにする。
【００６９】
図４は、機能ブロックＦＡのファンクションテストにおいて、機能ブロックＦＢ，ＦＣへのクロック入力の制御を説明するためのフロー図である。
【００７０】
図４を参照して、機能ブロックＦＡには、上記のように、実動作速度に等しいタイミングでファンクションパターンが入力される（ステップＳ０２）。
【００７１】
機能ブロックＦＡでは、ファンクションパターンに対して、スキャン挿入済回路ＳＣＡ１，ＳＣＡ２が所定の動作を実行し、出力データＹ１，Ｙ２が生成される。このとき、期待値格納制御回路３０では、出力データＹ１，Ｙ２が期待値との比較に必要か否かが判断される（ステップＳ０３）。
【００７２】
ステップＳ０３において、出力データが必要であると判断されたときには、期待値格納制御信号ＥＸＰＬは「Ｈ」となり、スキャン挿入済回路ＳＣＢ，ＳＣＣに対してクロック信号ＣＬＫを供給する。このとき供給されるクロック信号ＣＬＫは、機能ブロックＦＡに供給されるクロック信号ＣＬＫと同じであり、機能ブロックＦＡの実動作速度に等しい周波数を有する。スキャン挿入済回路ＳＣＢ，ＳＣＣのスキャンフリップフロップＳＦＦは、与えられたクロック信号ＣＬＫに応じて、出力データＹ１，Ｙ２を逐次格納する（ステップＳ０４）。
【００７３】
一方、ステップＳ０３において、出力データＹ１，Ｙ２が不要であると判断されたときには、期待値格納制御信号ＥＸＰＬは「Ｌ」となり、スキャン挿入済回路ＳＣＢ，ＳＣＣに対してクロック信号ＣＬＫの供給を停止する。したがって、クロック信号ＣＬＫの供給が停止される期間において、機能ブロックＦＡの出力データＹ１，Ｙ２は、スキャン挿入済回路ＳＣＢ，ＳＣＣのスキャンフリップフロップ回路ＳＦＦには格納されないこととなる（ステップＳ０５）。
【００７４】
このように、ファンクションパターンの入力に応じて、出力データが、要／不要の判断に基づいて選択されて、非テスト対象の機能ブロックのスキャンフリップフロップ回路ＳＦＦに格納される。ステップＳ０２〜Ｓ０５までの動作は、ファンクションパターンが終了するまで継続される。
【００７５】
ファンクションパターンが終了したときには（ステップＳ０６）、格納された出力データＹ１，Ｙ２は、低速のスキャンクロック信号に同期してスキャンアウトされる。スキャンアウトされた出力データＹ１，Ｙ２は、それぞれ期待値と比較され、ファンクションテストが実行される（ステップＳ０７）。
【００７６】
このように、期待値が必要な出力データのみを選択的にスキャンフリップフロップ回路ＳＦＦに格納することにより、限られたスキャンフリップフロップ回路ＳＦＦを有効に使用することが可能となる。
【００７７】
さらに、機能ブロックＦＡのファンクションパターンにおいて、実動作速度で動作させなくても良いファンクションパターンがあるときには、以下に示す制御を行なうことにより、そのパターン部分でのファンクション入力を一時停止することができる。
【００７８】
図５は、機能ブロックＦＡのファンクションテストにおいて、機能ブロックＦＡへのファンクションパターン入力の制御を説明するためのフロー図である。
【００７９】
図５を参照して、機能ブロックＦＡには、入力端子ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄを介してファンクションパターンが入力される（ステップＳ１１）。
【００８０】
このとき、入力されるファンクションパターンにおいて、実動作速度で動作させなくても良いパターン部分があるか否かの判断がなされる。該当するパターン部分があると判断されたときには、ファンクションパターンをこのパターン部分で区切ることができると判断される（ステップＳ１２）。
【００８１】
ステップＳ１２において、ファンクションパターンを区切ることが可能であると判断されたときには、クロック制御回路２０から「Ｌ」レベルのクロック制御信号ＣＬＣＮＴが出力される。クロック制御信号ＣＬＣＮＴに応答して機能ブロックＦＡへのクロック信号ＣＬＫの供給が停止されることにより、ファンクションパターンの入力が一時停止される（ステップＳ１３）。
【００８２】
ファンクションパターンの入力が一時停止されている期間において、機能ブロックＦＢ，ＦＣには、スキャンクロック信号が供給される。スキャンクロック信号に同期して、スキャン挿入済回路ＳＣＢ，ＳＣＣのスキャンフリップフロップ回路ＳＦＦに格納された出力データＹ１，Ｙ２はスキャンアウトされ、予めテスタに格納されている期待値と比較される。この間、機能ブロックＦＡへのクロック供給は停止されている（ステップＳ１４）。なお、期待値との比較が終了した時点で、クロック制御回路２０からは「Ｈ」レベルのクロック制御信号ＣＬＣＮＴが出力される。これにより、再び機能ブロックＦＡにはクロック信号ＣＬＫが供給され、ファンクションパターンが入力される。
【００８３】
ステップＳ１１〜Ｓ１４までの一連の動作は、ファンクションパターンが終了するまで実行される（ステップＳ１５）。
【００８４】
以上のように、クロック制御回路２０において、機能ブロックＦＡへのクロック信号の供給を制御することによって、分割可能な箇所でファンクションパターンを区切り、その都度、出力データと期待値との比較を行なうことで、限られたスキャンフリップフロップ回路ＳＦＦを有効に使用することができる。また、大規模化に伴なうテスト時間の増加を抑えることができる。
【００８５】
以上のように、この発明の実施の形態に従えば、機能ブロックに対するファンクションパターン実行時の動作は実動作速度で行ない、得られた出力データと期待値との比較は周期を広げて行なうことから、実動作速度でのファンクションテストを、汎用のＬＳＩテスタを用いて安価に行なうことができる。
【００８６】
また、テスト対象となる機能ブロックの出力データを、非テスト対象の機能ブロックの有するスキャンフリップフロップ回路を流用して格納することから、出力データを格納するためのメモリ回路やレジスタを新たに必要としないことから、回路規模の増大および複雑化を抑制することができる。
【００８７】
また、期待値との比較を要しない出力データについては、非テスト対象の機能ブロックのスキャンフリップフロップ回路に格納しない構成とすることにより、限られたスキャンフリップフロップ回路を有効に使用することができる。
【００８８】
さらに、分割可能な箇所でファンクションパターンを区切り、その都度、出力データと期待値との比較を行なうことで、限られたスキャンフリップフロップ回路を有効に使用することができ、テスト時間の低減を図ることができる。
【００８９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００９０】
【発明の効果】
以上のように、この発明によれば、機能ブロックに対する実動作速度でのファンクションテストを、汎用のＬＳＩテスタを用いて安価に行なうことができる。
【００９１】
また、テスト対象の機能ブロックの出力データを、非テスト対象の機能ブロックの有するスキャンフリップフロップ回路を流用して格納することにより、出力データを格納するためのメモリ回路やレジスタを新たに必要としないことから、回路規模の増大および複雑化を抑制することができる。
【図面の簡単な説明】
【図１】この発明の実施の形態に従う半導体集積回路装置の構成を示すブロック図である。
【図２】図１に示すスキャン挿入済回路ＳＣの構成を示す回路図である。
【図３】図２に示すスキャンフリップフロップ回路ＳＦＦの構成を概略的に示す図である。
【図４】機能ブロックＦＡのファンクションテストにおいて、機能ブロックＦＢ，ＦＣへのクロック入力の制御を説明するためのフロー図である。
【図５】機能ブロックＦＡのファンクションテストにおいて、機能ブロックＦＡへのファンクションパターン入力の制御を説明するためのフロー図である。
【符号の説明】
ＦＡ，ＦＢ，ＦＣ  機能ブロック、ＳＣＡ１，ＳＣＡ２，ＳＣＢ，ＳＣＣ  スキャン挿入済回路、ＳＦＦ  スキャンフリップフロップ回路、ＳＥＬ１，ＳＥＬ２，ＳＥＬＦ  セレクタ回路、ＦＦ  フリップフロップ部、ＩＴ１，ＩＴ２ａ〜ＩＴ２ｄ  データ入力端子、ＯＴ１，ＯＴ２  データ出力端子、ＳＩＴ１，ＳＩＴ２ａ〜ＳＩＴ２ｄ，ＳＩＴｂ，ＳＩＴｃ  スキャン入力端子、ＳＯＴ１，ＳＯＴ２，ＳＯＴｂ，ＳＯＴｃ  スキャン出力端子、ＤＩＮ  入力データ、Ｙ１，Ｙ２  出力データ、ＳＩＤ１，ＳＩＤ２  スキャンインデータ、ＳＯＤ１，ＳＯＤ２  スキャンアウトデータ、ＳＭ  スキャンモード信号、ＴＭ  テストモード信号、１０，１１，１２  ＡＮＤゲート、ＣＬＣＮＴ  クロック制御信号、ＥＸＰＬ  期待値格納制御信号、２０  クロック制御回路、３０  期待値格納制御回路、１００  ＬＳＩ。
【図１】
2005024358.tif 000003
【図２】
2005024358.tif 000004
【図３】
2005024358.tif 000005
【図４】
2005024358.tif 000006
【図５】
2005024358.tif 000007