(57)【要約】【課題】パルス制御レジスタのシフト数を少なくして、テスト時間を短縮する。【解決手段】半導体集積回路１は、発振器の発振出力を制御するためのパルス制御パターンのビット数より短いビット数の割当コードを保持するパルス制御レジスタ１１と、パルス制御レジスタ１１が保持した割当コードをパルス制御パターンに変換するコード変換部１２と、コード変換部１２が変換したパルス制御パターンに基づいて、発振器の発振出力のパルスを制御し、テスト用のパルスを生成するパルス制御部１３ａとを有する。【選択図】図１
2010038733.tif 000002
【特許請求の範囲】
【請求項１】
発振器の発振出力を制御し複数のフリップフロップにテスト用のパルスを供給する半導体集積回路であって、
前記発振器の発振出力を制御するためのパルス制御パターンのビット数より短いビット数の割当コードを保持するパルス制御レジスタと、
前記パルス制御レジスタが保持した前記割当コードを前記パルス制御パターンに変換するコード変換部と、
前記コード変換部が変換した前記パルス制御パターンに基づいて、前記発振器の発振出力を制御し、前記テスト用のパルスを生成するパルス制御部と、
を有することを特徴とする半導体集積回路。
【請求項２】
前記パルス制御レジスタは、前記パルス制御パターンのビット数と同じビット数の割当コードを保持し、
前記パルス制御レジスタの出力または前記コード変換部の出力のいずれか一方を選択する選択部を有し、
前記選択部は、切換制御信号に基づいて、選択した前記パルス制御レジスタの出力または前記コード変換部の出力のいずれか一方を、前記パルス制御パターンとして前記パルス制御部に供給することを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記コード変換部は、前記パルス制御パターンを書き換え可能な記憶素子を有することを特徴とする請求項１に記載の半導体集積回路。
【請求項４】
前記記憶素子は、フリップフロップまたはラッチ回路であることを特徴とする請求項３に記載の半導体集積回路。
【請求項５】
前記発振出力とは周波数が異なる複数の発振出力に対し、それぞれ前記パルス制御部を設けたことを特徴とする請求項１から４の何れか１項に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に関し、特に、パルス制御レジスタが保持した割当コードをパルス制御パターンに変換するコード変換部を有する半導体集積回路に関する。
【背景技術】
【０００２】
従来、順序回路を備えた大規模集積回路（ＬＳＩ）においては、多数のフリップフロップ回路が構成されている。このようなＬＳＩの故障検出のために、スキャンテストが採用されることがある。スキャンテストは、回路内部のフリップフロップをチェイン状の経路を有するスキャンフリップフロップとして構成し、入出力を観測することで、故障の有無を判定するものである。
【０００３】
このようなスキャンテストを可能にした半導体集積回路としては、特許文献１に記載されたもの等、種々の回路が提案されている。
【０００４】
更に、近年、対象回路の高速化に伴い、遅延故障に対するテスト（遅延故障テスト）も採用されるようになってきた。遅延故障テストは、スキャン設計された回路のフリップフロップ間の組合せ回路部を対象にして、所定の遅延時間内にデータが遷移可能であるか否かをテストするものである。
【０００５】
遅延故障テストにおいては、先ず、スキャンチェーンを利用してフリップフロップに必要な値をセットする。次に、テストしたい周波数で高速にクロック信号を２つ以上印加する。そうすると、最初のクロックで前段のフリップフロップに発生した値の変化が、２番目以降のクロックで後段のフリップフロップに取り込まれる。フリップフロップの出力を観測することで、前段のフリップフロップと後段のフリップフロップ間のテスト周波数における遅延故障を検出することができる。
【０００６】
ところで、近年、ＬＳＩ内の各素子の駆動周波数は極めて高くなっており、例えば、周波数が１ＧＨｚの高速クロックが用いられることがある。この場合には、フリップフロップは１ｎｓ（秒）以内に高速に動作する必要があり、遅延故障テストにおいても、このような高速動作に対応するために高速クロックを用いたテストが必要である。この場合に、テスト用のクロックをＬＳＩの外部のテスタから供給しようとすると、波形歪みによって遅延故障テストの計測が困難である。そこで、ＬＳＩ内に構成されたＰＬＬ回路の出力を用いて、テストクロックを発生させることが考えられる。即ち、テストクロックは、ＰＬＬ回路の出力クロックをテストパターンに応じたタイミングで選択することで発生される。
【０００７】
このようなパルス制御回路は、基本的に、異なる周波数のクロックを出力するＰＬＬ回路毎に及びその分周クロック毎に用意する。もし、異なる周波数のクロックを単一のパルス制御回路で制御すると、高速な周波数のクロックで動作するフリップフロップと、低速な周波数のクロックで動作するフリップフロップとが同じ周波数のクロックで動作することになる。この場合、低速な周波数のクロックで動作するフリップフロップを高速な周波数のクロックで動作させると、低速な周波数のクロックで動作するフリップフロップは正しく動作しない可能性がある。逆に、高速な周波数のクロックで動作するフリップフロップを低速な周波数のクロックで動作させると、高速な周波数のクロックで動作するフリップフロップは実際の速度での遅延故障テストができない。
【０００８】
特許文献１に記載のパルス制御回路では、パルスの発生パターンをレジスタ（パルス制御レジスタ）に格納しており、それらはシフトレジスタとして構成され、他のスキャンチェーンと同様にスキャンシフト毎に値が更新される。例えば、ＰＬＬ回路のパルスを１０パルスまで制御を可能とすると、スキャンシフト時に１０サイクル分が必要となる。
【０００９】
近年、ＬＳＩ内のクロック数も増加しており、例えば、異なる周波数のＰＬＬ回路を１０個持ち、それぞれに１／２分周、１／４分周も用いるとすると異なる周波数のクロックは３０種類となる。これらに対して、パルス制御回路を挿入した場合、それらに必要なパルス制御レジスタは３００ビット分、即ち、３００個のフリップフロップが必要となり、それら３００個のフリップフロップを１本のスキャンチェーンとして構築すると、スキャンシフト時に３００サイクルを必要とする。
【００１０】
更に、近年、スキャンパターンの圧縮技術に関連し、スキャンチェーンの長さを短くし、スキャンシフトに要するサイクルを少なくすることが行われている。例えば、スキャンチェーンが１本あたり１００個のフリップフロップを有すると、パルス制御レジスタのほうがスキャンチェーンより２００個分多くフリップフロップを有することになる。
【００１１】
このように従来ではパルス制御レジスタのスキャンチェーンが長くなってしまい、パルス制御レジスタにパルスの発生パターンを格納するためのスキャンシフト時間が多くなり、テスト時間が長くなってしまうという問題があった。
【特許文献１】特開２００７−３２７８３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、パルス制御レジスタのシフト数を少なくして、テスト時間を短縮することができる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一態様によれば、発振器の発振出力を制御し複数のフリップフロップにテスト用のパルスを供給する半導体集積回路であって、前記発振器の発振出力を制御するためのパルス制御パターンのビット数より短いビット数の割当コードを保持するパルス制御レジスタと、前記パルス制御レジスタが保持した前記割当コードを前記パルス制御パターンに変換するコード変換部と、前記コード変換部が変換した前記パルス制御パターンに基づいて、前記発振器の発振出力を制御し、前記テスト用のパルスを生成するパルス制御部と、を有することを特徴とする半導体集積回路を提供することができる。
【発明の効果】
【００１４】
本発明の半導体集積回路によれば、パルス制御レジスタのシフト数を少なくして、テスト時間を短縮することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施の形態について詳細に説明する。  
（第１の実施の形態）  
まず、図１に基づき、第１の実施の形態に係る半導体集積回路の構成について説明する。図１は、第１の実施の形態に係る半導体集積回路の構成を示すブロック図である。
【００１６】
図１に示すように、本実施の形態の半導体集積回路１は、パルス制御レジスタ１１と、コード変換部１２と、複数、ここでは、２つのパルス制御部１３ａ及び１３ｂとを有して構成されている。なお、半導体集積回路１は、２つのパルス制御部１３ａ及び１３ｂを有しているが、１つ、あるいは、３つ以上のパルス制御部を有していてもよい。即ち、半導体集積回路１は、異なる周波数のクロック毎に、対応するパルス制御部を有する構成にするとよい。
【００１７】
パルス制御レジスタ１１は、３つのフリップフロップ１４ａ、１４ｂ及び１４ｃを有して構成されている。この３つのＦＦ１４ａ〜１４ｃは、直列に接続され、シフトレジスタとして構成されている。
【００１８】
ＦＦ１４ａには、シフト入力としてシリアルなデータが供給される。ＦＦ１４ａは、シフトクロックの立ち上がりエッジに基づいて、このシリアルなデータを取り込み、取り込んだデータを保持すると共に、ＦＦ１４ｂに供給する。ＦＦ１４ｂは、シフトクロックの立ち上がりエッジに基づいて、ＦＦ１４ａから供給されるデータを取り込み、取り込んだデータを保持すると共に、ＦＦ１４ｃに出力する。同様に、ＦＦ１４ｃは、シフトクロックの立ち上がりエッジに基づいて、ＦＦ１４ｂから供給されるデータを取り込み、取り込んだデータを保持すると共に、シフト出力として出力する。なお、ＦＦ１４ａ〜１４ｃのそれぞれは、シフトクロックの立ち上がりエッジに基づいて、供給されるデータを取り込むが、シフトクロックの立ち下がりエッジに基づいて、供給されるデータを取り込んでもよい。
【００１９】
更に、ＦＦ１４ａ〜１４ｃのそれぞれは、保持したデータをコード変換部１２に供給する。即ち、パルス制御レジスタ１１は、ＦＦ１４ａ〜１４ｃが保持したデータを３ビットの割当コードとしてコード変換部１２に出力する。特に、パルス制御レジスタ１１は、ＦＦ１４ａが保持したデータを１ビット目、ＦＦ１４ｂが保持したデータを２ビット目、ＦＦ１４ｃが保持したデータを３ビット目としてコード変換部１２に出力する。
【００２０】
コード変換部１２には、その３ビットの割当コードに対して、頻繁に用いるパルス制御パターンが対応付けられたコード変換テーブルが格納されている。コード変換部１２は、コード変換テーブルに基づいて、３ビットの割当コードを対応する２０ビットのパルス制御パターンに変換し、変換したパルス制御パターンをパルス制御部１３ａ及び１３ｂに出力する。特に、コード変換部１２は、この２０ビットのデータのうち、１ビット目から１０ビット目までの１０ビット分のパルス制御パターンをパルス制御部１３ａに出力し、１１ビット目から２０ビット目までの１０ビット分のパルス制御パターンをパルス制御部１３ｂに出力する。
【００２１】
パルス制御部１３ａは、入力される１０ビットのパルス制御パターンに基づいて、クロックＣＬＫ１を１０サイクル制御し、制御して得られた所定のパルス、または、シフトクロックを図示しないユーザ回路等のＦＦに出力する。特に、パルス制御部１３ａは、パルス制御パターンに基づいて、クロックＣＬＫ１の発振出力を制御し、例えば、遅延故障テスト用のパルスを生成する。また、パルス制御部１３ｂは、入力される１０ビットのパルス制御パターンに基づいて、クロックＣＬＫ２を１０サイクル制御し、制御して得られた所定のパルス、または、シフトクロックを図示しないユーザ回路等のＦＦに出力する。
【００２２】
パルス制御部１３ａは、制御回路１５ａと、クロックゲーティング回路１６ａと、マルチプレクサ（以下、ＭＵＸという）１７ａとを有して構成され、パルス制御部１３ｂは、制御回路１５ｂと、クロックゲーティング回路１６ｂと、ＭＵＸ１７ｂとを有して構成されている。
【００２３】
制御回路１５ａには、上述した１ビット目から１０ビット目のパルス制御パターンが供給されると共に、シフトイネーブル及びテストモード信号が供給される。制御回路１５ａは、パルス制御パターン、シフトイネーブル及びテストモード信号に基づいて、所定のパルス制御データをクロックゲーティング回路１６ａに出力すると共に、切り換え制御信号をＭＵＸ１７ａに出力する。
【００２４】
クロックゲーティング回路１６ａには、図示しないＰＬＬ回路からＰＬＬクロックＣＬＫ１（以下、単にクロックＣＬＫ１という）が供給されている。クロックゲーティング回路１６ａは、制御回路１５ａからのパルス制御データに基づいて、クロックＣＬＫ１をゲーティングして、ゲーティングした所定のパルスをＭＵＸ１７ａに出力する。
【００２５】
ＭＵＸ１７ａには、クロックゲーティング回路１６ａからの所定のパルスと、シフトクロックとが供給される。ＭＵＸ１７ａは、上述した切り換え制御信号に基づいて、所定のパルスまたはシフトクロックのいずれか一方を選択し、選択した所定のパルスまたはシフトクロックを図示しないユーザ回路等に出力する。
【００２６】
例えば、制御回路１５ａは、シフトイネーブルが有効の場合、シフトクロックを選択するための切り換え制御信号をＭＵＸ１７ａに出力する。また、制御回路１５ａは、シフトイネーブルが無効の場合、テストモード信号とパルス制御パターンに基づいて、ＰＬＬクロックＣＬＫ１を制御するためのパルス制御データをクロックゲーティング回路１６ａに出力する。更に、制御回路１５ａは、クロックゲーティング回路１６ａの出力を選択するための切り換え制御信号をＭＵＸ１７ａに出力する。制御回路１５ａは、例えば、遅延故障テストを示すテストモードが入力された場合、ラウンチパルス及びキャプチャパルスを１つ以上発生させるためのパルス制御データをクロックゲーティング回路１６ａに出力する。
【００２７】
パルス制御部１３ｂの制御回路１５ｂには、上述した１１ビット目から２０ビット目のパルス制御パターンが供給される。また、クロックゲーティング回路１６ｂには、クロックＣＬＫ１とは周波数が異なるＰＬＬクロックＣＬＫ２（以下、単にクロックＣＬＫ２という）が供給される。その他の構成は、パルス制御部１３ａと同一のため、説明を省略する。ここで、クロックＣＬＫ１とは周波数が異なるクロックＣＬＫ２は、例えば、上述したＰＬＬ回路とは異なるＰＬＬ回路から出力されるクロック、あるいは、クロックＣＬＫ１が分周されたクロック等である。
【００２８】
なお、パルス制御レジスタ１１は、３ビットの割当コードをコード変換部１２に出力するが、他のビット数の割当コードをコード変換部１２に出力してもよい。特に、割当コードのビット数は、異なる周波数のクロック数（Ｎ）、言い換えると、パルス制御部の個数と、そのパルス制御部に入力されるパルス制御パターンのビット数（Ｍ）とのの積（Ｎ×Ｍ）より小さければよい。
【００２９】
図２は、パルスの発生パターンと発生率の例を説明するための説明図である。
【００３０】
パルス制御部１３ａ及び１３ｂが出力する所定のパルスの発生パターンと、その発生パターンの発生率の例であり、パターンＰ１からパターンＰ８までの上位８パターンにより発生率全体の99.2％を占めている。最も発生率が高いパターンは、クロックＣＬＫ１のパルスが２つ発生するパターンであり、クロックＣＬＫ１により動作する２つのＦＦ間の遅延故障テストに用いられる。次に発生率が高いパターンは、クロックＣＬＫ２のパルスが２つ発生するパターンであり、クロックＣＬＫ２により動作する２つのＦＦ間の遅延故障テストに用いられる。
【００３１】
コード変換部１２のコード変換テーブルには、パルス制御レジスタ１１の３ビットの割当コードに対して、上述したパルスを発生させるためのパルス制御パターンが対応付けられている。図３は、コード変換部のコード変換テーブルの設定の例を説明するための説明図である。
【００３２】
コード変換テーブルには、パルス制御レジスタ１１の３ビットの割当コードに対して、図２に示した上位８パターンのパルスを発生させるためのパルス制御パターンが割り当てられている。上述したように、割当コードは３ビットに限定されることなく、例えば、割当コードが４ビットの場合、その４ビットの割当コードに対して、上位１６パターンのパルスを発生させるためのパルス制御パターンを割り当てることができる。
【００３３】
例えば、割当コードの１ビット目から３ビット目までが全てＬの場合、パルス制御パターンの１ビット目と２ビット目がＨで、パルス制御パターンの３ビット目から２０ビット目がＬとなるパルス制御パターンに変換する。同様に、割当コードの１ビット目及び２ビット目がＬで、３ビット目がＨの場合、パルス制御パターンの１１ビット目と１２ビット目がＨで、他のビットがＬとなるパルス制御パターンに変換する。
【００３４】
ここで、コード変換部１２のコード変換テーブルを実現するための組み合わせ回路の構成について説明する。図４は、コード変換部の組み合わせ回路の構成の例を示すブロック図である。なお、図４は、説明を簡単にするために、パルス制御パターンの１ビット目及び２ビット目部分の回路の構成を示す。
【００３５】
図４に示すように、コード変換部１２は、８個の３入力１出力のＡＮＤ回路２１ａ〜２１ｈと、１６個の２入力１出力のＡＮＤ回路２２ａ〜２２ｈ及び２３ａ〜２３ｈと、８入力１出力のＯＲ回路２４ａ及び２４ｂを有して構成されている。
【００３６】
ＡＮＤ回路２１ａ〜２１ｈのそれぞれには、３ビットの割当コードが入力される。ＡＮＤ回路２１ａには、割当コードの３ビット全てが反転された信号が供給される。即ち、ＡＮＤ回路２１ａは、割当コードの３ビット全てがＬの場合に、ＨをＡＮＤ回路２２ａ及び２３ａに出力する。ＡＮＤ回路２１ｂは、割当コードの１ビット目と２ビット目がＬの場合に、ＨをＡＮＤ回路２２ｂ及び２３ｂに出力する。以降、同様にして、ＡＮＤ回路２１ｈは、割当コードの３ビット全てがＨの場合に、ＨをＡＮＤ回路２２ｈ及び２３ｈに出力する。
【００３７】
ＡＮＤ回路２２ａ〜２２ｈ及び２３ａ〜２３ｈの一方の入力端子は、ＨまたはＬに固定されている。ＡＮＤ回路２２ａ〜２２ｈは、ＡＮＤ演算の結果をＯＲ回路２４ａに出力し、ＡＮＤ回路２３ａ〜２３ｈは、ＡＮＤ演算の結果をＯＲ回路２４ｂに出力する。
【００３８】
ＯＲ回路２４ａは、ＡＮＤ回路２２ａ〜２２ｈの出力にＯＲ演算を施し、ＯＲ演算結果をパルス制御パターンのビット１として出力する。同様に、ＯＲ回路２４ｂは、ＡＮＤ回路２３ａ〜２３ｈの出力にＯＲ演算を施し、ＯＲ演算結果をパルス制御パターンのビット２として出力する。
【００３９】
例えば、図３のコード変換テーブルのパターン３では、割当コードの１ビット目がＬ、２ビット目がＨ、３ビット目がＬの場合、パルス制御パターンの１ビット目がＬ、２ビット目がＨとなっている。割当コードの１ビット目がＬ、２ビット目がＨ、３ビット目がＬの場合、ＡＮＤ回路２１ｃのＡＮＤ演算の結果はＨになり、ＡＮＤ回路２１ａ、２１ｂ及び２１ｄ〜２１ｈのそれぞれのＡＮＤ演算の結果はＬになる。ＡＮＤ回路２１ａ〜２１ｈの演算結果は、それぞれＡＮＤ回路２２ａ〜２２ｈに供給される。即ち、ＡＮＤ回路２２ｃにはＨが供給され、ＡＮＤ回路２２ａ、２２ｂ及び２２ｄ〜２２ｈにはそれぞれＬが供給される。そのため、ＡＮＤ回路２２ａ、２２ｂ及び２２ｄ〜２２ｈのそれぞれのＡＮＤ演算の結果はＬとなる。また、ＡＮＤ回路２２ｃのＡＮＤ演算結果も、一方の入力端子がＬに固定されているため、Ｌとなる。この結果、ＯＲ回路２４ａには全てＬが入力されることとなり、ＯＲ回路２４ａのＯＲ演算結果、即ち、パルス制御パターンの１ビット目は、Ｌとなる。
【００４０】
更に、ＡＮＤ回路２１ａ〜２１ｈの演算結果は、それぞれＡＮＤ回路２３ａ〜２３ｈにも供給される。即ち、ＡＮＤ回路２３ｃにはＨが供給され、ＡＮＤ回路２３ａ、２３ｂ及び２３ｄ〜２３ｈにはそれぞれＬが供給される。そのため、ＡＮＤ回路２３ａ、２３ｂ及び２３ｄ〜２３ｈのそれぞれのＡＮＤ演算の結果はＬとなる。一方、ＡＮＤ回路２３ｃの演算結果は、一方の入力端子がＨに固定されているため、Ｈとなる。この結果、ＯＲ回路２４ｂには、ＡＮＤ回路２３ｃからＨが入力されることとなり、ＯＲ回路２４ｂのＯＲ演算結果、即ち、パルス制御パターンの２ビット目は、Ｈとなる。
【００４１】
パルス制御パターンの３ビット目から２０ビット目までについても同様の構成にすることにより、図３のコード変換テーブルに対応するコード変換を実現することができる。なお、コード変換部１２の回路構成は、図４に限定されることなく、図３のコード変換を行うものであれば、他の回路構成であってもよい。
【００４２】
以上のように、半導体集積回路１は、パルス制御レジスタから供給される割当コードをパルス制御パターンに変換するコード変換部１２を有する構成にした。この結果、従来のパルス制御部であれば２０サイクルを要するところ、３サイクルに短縮することができる。
【００４３】
よって、本実施の形態の半導体集積回路によれば、パルス制御レジスタのシフト数を少なくして、テスト時間を短縮することができる。
【００４４】
（第２の実施の形態）
次に、第２の実施の形態について説明する。第１の実施の形態の半導体集積回路１は、頻繁に用いられる上位８パターンのクロック発生パターンでしかテストが実施できない。即ち、99.2%のテストは実施できるが、残り0.8％のテストは実施できない。そのため、故障検出率が下がってしまうことになる。そこで、本実施の形態の半導体集積回路は、コード変換部により変換できない、残りの0.8%のパルス制御パターンについても、テストを実施することができるようにしている。
【００４５】
図５は、第２の実施の形態の係る半導体集積回路の構成を示すブロック図である。なお、図５において図１と同様の構成については、同一の符号を付して説明を省略する。図５に示すように、本実施の形態の半導体集積回路１ａは、図１のパルス制御レジスタ１１に代わりパルス制御レジスタ１１ａを用いると共に、切換部３１が追加され構成されている。
【００４６】
パルス制御レジスタ１１ａは、２０個のフリップフロップ１４ａ〜１４ｔを有して構成されている。この２０個のＦＦ１４ａ〜１４ｔは、直列に接続され、シフトレジスタを構成する。
【００４７】
切換部３１は、２０個のＭＵＸ３２ａ〜３２ｔを有して構成されている。ＦＦ１４ａ〜１４ｔの出力は、それぞれＭＵＸ３２ａ〜３２ｔに供給される。更に、ＦＦ１４ａ、１４ｂ及び１４ｃからの３ビットの出力は、コード変換部１２に供給される。コード変換部１２は、３ビットの出力から変換したパルス制御パターンを切換部３１に供給する。特に、コード変換部１２は、パルス制御パターンの１ビット目から２０ビット目をそれぞれＭＵＸ３２ａ〜３２ｔに供給する。
【００４８】
各ＭＵＸ３２ａ〜３２ｊは、コード変換モード信号に基づいて、ＦＦ１４ａ〜１４ｊの出力又はコード変換部１２からの１ビット目から１０目のパルス制御パターンのいずれか一方を選択し、制御回路１５ａに出力する。また、各ＭＵＸ３２ｋ〜３２ｔは、コード変換モード信号に基づいて、ＦＦ１４ｋ〜１４ｔの出力又はコード変換部１２からの１１ビット目から２０目のパルス制御パターンのいずれか一方を選択し、制御回路１５ｂに出力する。即ち、コード変換部１２により変換できない残りの0.8％のパルス制御パターンについては、ＦＦ１４ａ〜１４ｔに保持される２０ビット分のデータをパルス制御パターンとしてパルス制御部１３ａ及び１３ｂに供給する。このように、切換部３１は、パルス制御レジスタ１１ａの出力又はコード変換部１２の出力のいずれか一方を選択し、選択した出力をパルス制御パターンとしてパルス制御部１３ａ及び１３ｂに供給する。
【００４９】
コード変換部１２を用いるモードでは、パルス制御レジスタ１１ａへのシフト入力はコード変換部１２の入力ビット幅分、即ち、３ビット幅分でよい。一方、コード変換部１２にないパターンの場合、２０ビット幅分のシフト入力が必要となるが、発生率が少ないためテスト時間への影響は小さい。
【００５０】
以上のように、半導体集積回路１ａは、パルス制御レジスタ１１ａの出力とコード変換部１２の出力とを切換部３１により切り換えるようにした。この結果、頻繁に用いられるパルス制御パターンについては、コード変換部１２からの出力を選択し、パルス制御部１３ａ及び１３ｂに供給し、コード変換部１２にないパルス制御パターンについては、パルス制御レジスタ１１ａからの出力を選択し、パルス制御部１３ａ及び１３ｂに供給することができる。
【００５１】
よって、本実施の形態の半導体集積回路によれば、第１の実施の形態と同様に、パルス制御レジスタのシフト数を少なくして、テスト時間を短縮することができると共に、コード変換部にないパルス制御パターンについてもテストを実施することが可能となる。
【００５２】
（第３の実施の形態）
次に、第３の実施の形態について説明する。第１の実施の形態の半導体集積回路１は、頻繁に用いられる上位８パターンのクロック発生パターンでしかテストが実施できない。これは、コード変換部１２の変換テーブルが固定されているからである。本実施の形態の半導体集積回路は、コード変換部の変換テーブルを任意の値に書き換えることができるようにしている。
【００５３】
図６は、第３の実施の形態に係る半導体集積回路の構成を示すブロック図である。なお、図６において図１と同様の構成については、同一の符号を付して説明を省略する。図６に示すように、本実施の形態の半導体集積回路１ｂは、図１のコード変換部１２に代わりコード変換部１２ａを用いて構成されている。
【００５４】
コード変換部１２ａには、変換テーブルを任意の値に書き換えるため、変換テーブル入力とシフトクロックとは異なる変換テーブルシフトクロックとが供給される。
【００５５】
ここで、コード変換部１２ａのコード変換テーブルを実現するための組み合わせ回路の構成について説明する。図７は、コード変換部の組み合わせ回路の構成の例を示すブロック図である。なお、図７において図４と同様の構成については、同一の符号を付して説明を省略する。
【００５６】
図４のＡＮＤ回路２２ａ〜２２ｈ及び２３ａ〜２３ｈのそれぞれは、一方の入力端子がＨ又はＬに固定され、構成されている。図７のコード変換部１２ａは、ＡＮＤ回路２２ａ〜２２ｈ及び２３ａ〜２３ｈの一方の入力端子の前段に、それぞれＦＦ４１ａ〜４１ｈ及び４２ａ〜４２ｈが配置され、構成されている。ＦＦ４１ａ〜４１ｈ、４２ａ〜４２ｈは、直列に接続され、シフトレジスタを構成する。
【００５７】
ＦＦ４１ａには、変換テーブル入力からシリアルなデータが入力される。ＦＦ４１ａは、入力されるデータを変換テーブルシフトクロックの立ち上がりエッジにおいて取り込み、取り込んだデータである値を保持する。ＦＦ４１ａは、取り込んだ値をＡＮＤ回路２２ａに出力すると共に、次段のＦＦ４１ｂに出力する。ＦＦ４１ｂは、入力された値を変換テーブルシフトクロックの立ち上がりエッジにおいて取り込み、取り込んだ値を保持する。このように、各ＦＦ４１ａ〜４１ｈ及び４２ａ〜４２ｈは、前段のＦＦの値を変換テーブルシフトクロックの立ち上がりエッジにおいて取り込み、取り込んだ値を保持する。この結果、各ＦＦ４１ａ〜４１ｈ及び４２ａ〜４２ｈは、それぞれ任意の値を保持することが可能となる。即ち、コード変換部１２ａの変換テーブルを任意の値に書き換え可能となり、任意のパルス制御パターンを発生することができる。コード変換部１２ａは、パルス制御レジスタ１１からの３ビットの割当コードに基づいて、任意の値に書き換えられたパルス制御パターンをパルス制御部１３ａ及び１３ｂに出力する。なお、任意の値を保持する記憶素子として、ＦＦを用いて説明したが、ＦＦに限定されることなく、他の記憶素子、例えば、ラッチ回路などでもよい。
【００５８】
以上のように、半導体集積回路１ｂは、コード変換部１２ａにシフトレジスタを構成するようにした。この結果、変換テーブル入力からのデータを変換テーブルシフトクロックに基づいて取り込み、コード変換部１２ａの変換テーブルを任意の値に書き換え可能となる。
【００５９】
よって、本実施の形態の半導体集積回路によれば、第１の実施の形態と同様に、パルス制御レジスタのシフト数を少なくして、テスト時間を短縮することができると共に、コード変換部にないパルス制御パターンについてもテストを実施することが可能となる。
【００６０】
本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【図面の簡単な説明】
【００６１】
【図１】第１の実施の形態に係る半導体集積回路の構成を示すブロック図である。
【図２】パルスの発生パターンと発生率の例を説明するための説明図である。
【図３】コード変換部のコード変換テーブルの設定の例を説明するための説明図である。
【図４】コード変換部の組み合わせ回路の構成の例を示すブロック図である。
【図５】第２の実施の形態の係る半導体集積回路の構成を示すブロック図である。
【図６】第３の実施の形態に係る半導体集積回路の構成を示すブロック図である。
【図７】コード変換部の組み合わせ回路の構成の例を示すブロック図である。
【符号の説明】
【００６２】
１，１ａ，１ｂ…半導体集積回路、１１，１１ａ…パルス制御レジスタ、１２，１２ａ…コード変換部、１３ａ，１３ｂ…パルス制御部、１４ａ〜１４ｔ…フリップフロップ、１５ａ，１５ｂ…制御回路、１６ａ，１６ｂ…クロックゲーティング回路、１７ａ，１７ｂ…マルチプレクサ、２１ａ〜２１ｈ，２２ａ〜２２ｈ，２３ａ〜２３ｈ…ＡＮＤ回路、２４ａ，２４ｂ…ＯＲ回路、３１…切換部、３２ａ〜３２ｔ…マルチプレクサ、４１ａ〜４１ｈ，４２ａ〜４２ｈ…フリップフロップ
【図１】
2010038733.tif 000003
【図２】
2010038733.tif 000004
【図３】
2010038733.tif 000005
【図４】
2010038733.tif 000006
【図５】
2010038733.tif 000007
【図６】
2010038733.tif 000008
【図７】
2010038733.tif 000009