(57)【特許請求の範囲】
【請求項１】
集積回路であって、
クロック信号を使用して前記集積回路内にターゲット信号を転送するように構成されたターゲット回路と、
前記クロック信号のクロック周期内の複数の可能なタイミングの中から選択されたタイミングを示すテスト信号に応答して、前記選択されたタイミングで、前記ターゲット信号をサンプリングするように構成されたテスト回路
を備える、集積回路。
【請求項２】
前記選択されたタイミングが、前記クロック信号内のあるタイミングポイントからある時間遅延されたものである、請求項１の集積回路。
【請求項３】
前記テスト回路は、前記遅延の後にパルスを生成し、該パルスに応答して前記ターゲット信号をサンプリングするように構成される、請求項２の集積回路。
【請求項４】
前記遅延がデジタル数として指定され、前記テスト回路が前記テスト信号を外部システムから受け取るように構成される、請求項２の集積回路。
【請求項５】
前記テスト回路は、トリガに応答して前記ターゲット信号をサンプリングするように構成される、請求項１の集積回路。
【請求項６】
前記テスト回路は、トリガ条件を前記集積回路からの他の信号と比較し、前記トリガ条件が前記他の信号とマッチした場合に、前記トリガを生成するように構成される、請求項５の集積回路。
【請求項７】
前記テスト信号が、前記トリガ条件を示し、前記テスト回路が、前記テスト信号を外部システムから受け取るように構成される、請求項６の集積回路。
【請求項８】
前記ターゲット信号は、前記ターゲット回路内の記憶要素に対する入力であるか、または前記ターゲット回路内の前記記憶要素からの出力であり、前記テスト回路は、入力／出力の選択に応答して前記入力または前記出力のいずれかをサンプリングするように構成される、請求項１の集積回路。
【請求項９】
前記テスト信号が、前記入力／出力の選択を示し、前記テスト回路が、前記テスト信号を外部システムから受け取るように構成される、請求項８の集積回路。
【請求項１０】
前記テスト回路が、前記ターゲット信号を非破壊的にサンプリングして、そのサンプルを外部システムに転送するように構成される、請求項１の集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路のテストの分野に関し、特に、１クロック周期内にてテストサンプルを得るタイミングを制御する、集積回路内のテスト回路に関する。
【０００２】
【従来の技術】
集積回路は、製造上の欠陥や性能上の問題点を見つけるためにテストされる。テストはしばしば、その集積回路内に設けられたテスト回路を使用して行われる。テスト回路は、集積回路内の信号をサンプリングして、これらのテストサンプルを、分析のために外部のテストシステムに提供する。集積回路のテストについては、ＩＥＥＥ規格１１４９．１（ＩＥＥＥ  ｓｔａｎｄａｒｄ  １１４９．１）に記載されている。
【０００３】
【発明が解決しようとする課題】
いくつかのテスト回路では、記憶素子（記憶要素）の中の値をスキャンしてテストサンプルを提供するが、残念ながら、このスキャン処理の実行のために集積回路の動作は停止され、且つ、スキャン処理によって記憶素子内の値が破壊される。集積回路をスキャン処理の直前の状態に戻すためには、集積回路はリセットされ、中断点に達するまで、前と同じ動作を行わなければならない。スキャン処理およびリセット処理の実行には、どちらも時間がかかる。加えて、このスキャン処理では、記憶素子内の静的な値が得られるに過ぎず、到着の遅延やグリッチのような時間変化する信号の問題を示すことはできない。
【０００４】
別のテスト回路では、動作中の記憶素子からの出力を受動的に受け取る冗長記憶素子を使用する。そのようなテスト回路の一例が米国特許第５，５３０，７０６号に説明されており、その記載内容を、参照によって本明細書に組み込む。これらのテスト回路のうちのいくつかは、クロックを使用して出力をサンプリングする。他のテスト回路では、クロック周期のエッジにおけるパルスを使用して、出力をサンプリングする。しかし、残念ながら、出力は、クロック周期に対して同じタイミングで、連続的にサンプリングされる。サンプリング時間中に動的な制御ができないために、到着の遅延やグリッチのような時間変化する信号の問題の特定が困難になっている。
【０００５】
いくつかのテスト回路では、トリガ回路を使用してテストを開始する。そのようなトリガ回路の一例が米国特許第５，８６７，６４４号に記載されており、その記載内容を、参照により本明細書に組み込む。残念ながら、これらのテストシステムもまた１クロックパルス内でサンプリングタイミングを動的にコントロールすることができない。
【０００６】
【課題を解決するための手段】
本発明は、クロック周期内の選択されたタイミングでターゲット信号をサンプリングするテスト回路を用いて、上記の問題を解決する。クロック周期内でタイミングをサンプリングする能力により、信号遅延やグリッチのような時間変化する問題の特徴を明らかにするテストの実施が容易になる。従って、このテスト回路により、集積回路の速度およびシステムの内部動作（または、システム間動作）についての進んだテストが可能になる。
【０００７】
集積回路は、ターゲット回路およびテスト回路を備える。ターゲット回路は、クロック信号を使用して、集積回路内においてターゲット信号を転送する。テスト回路は、クロック信号のクロック周期内の複数の可能なタイミングから選択されたタイミングで、このターゲット信号をサンプリングする。テスト回路は、その選択されたタイミングを示すテスト信号に応答して、ターゲット信号をサンプリングする。
【０００８】
本発明の様々な実施形態では、選択されたタイミングは、クロック信号におけるあるタイミングポイントから遅延されたものである。テスト回路は、その遅延後にパルスを生成し、そのパルスに応答して、ターゲット信号をサンプリングする。本発明の様々な実施形態では、テスト回路は、トリガに応答してターゲット信号をサンプリングする。テスト回路は、集積回路からの内部信号をトリガ条件と比較し、内部信号がトリガ条件にマッチすると、トリガ信号を生成する。
【０００９】
【発明の実施の形態】
［集積回路の構成および動作−図１及び図２］
図１は、集積回路１００の構成を示すブロック図である。この集積回路１００は、ターゲット回路１０２とテスト回路１０４とを有している。ターゲット回路１０２は、ターゲット信号１０３を転送する。ターゲット信号１０３は、テストされる任意の信号である。集積回路１００は、単一の集積回路チップであっても、１セットのチップであってもよい。
【００１０】
ターゲット回路１０２は、クロック信号１０１を使用して、ターゲット信号１０３を転送する。テスト回路１０４は、クロック信号１０１、ターゲット信号１０３、およびテスト信号１０５を受け取る。テスト信号１０５は、クロック信号１０１の１クロック周期内の選択されたタイミングを示す。様々なタイミングの選択が可能である。テスト信号１０５に応答して、テスト回路１０４は、選択されたタイミングでターゲット信号１０３をサンプリングして、テストサンプルを取得する。テスト回路１０３は、このテストサンプルを示すテスト信号１０７を生成する。
【００１１】
図２は、集積回路１００の動作を示すタイミング図である。ターゲット信号１０３とクロック信号１０１のクロック周期とが、時間軸上に時間的に同期して示されている。クロック周期内に、４つの可能なタイミングＴ１、Ｔ２、Ｔ３、およびＴ４が示されている。テスト回路１０４は、テスト信号１０５によって示される選択されたタイミングで、ターゲット信号１０３をサンプリングする。テスト信号１０５がＴ２を示すと、テスト回路１０４はタイミングＴ２でターゲット信号１０３をサンプリングして、テストサンプルを取得する。都合のよいことに、テスト回路１０４は、クロック周期内の制御可能なウインドウにおいて、テストサンプルを取得する。さまざまなサンプリングタイミングを選択することによって、到達遅延（Ｔ１）およびグリッチ（Ｔ２）のような種々の特性に関して、ターゲット信号１０３を分析することができる。
【００１２】
図１および図２は、本発明の一実施形態を当業者に対して示したものであり、明瞭にするために、従来の構成要素のいくつかを省略して単純化している。当業者には、本発明の範囲において、可能なサンプリングタイミングの数やタイミングの選択基準などをこの実施形態から変更可能であることが明らかであろう。
［プログラマブル遅延およびトリガ機能を有する集積回路−図３及び図４］
図３および図４は、本発明に従った集積回路の具体的な例を示す。当業者には、本発明の範囲において、この実施例について種々の変更を実施できることが明らかであろう。さらに、当業者には、以下に説明するさまざまな特徴を前述の実施形態に組み合わせて本発明の複数の変形態様を成し得ることも明らかであろう。
【００１３】
図３に集積回路３１６を示す。集積回路３１６は、クロック３１８、パルス発生器３２０、ラッチ３２２、およびテスト回路３２４を備えている。テスト回路３２４は、ラッチ３２６、テストポート３２８、シフトレジスタ３３０、シフトレジスタ３３２、遅延回路３３４、トリガ回路３３６、およびパルス発生器３３８を備えている。ラッチ３２６は、典型的にはシフトレジスタ３３０内に組み込まれるが、明瞭化のために外部に示している。これらの構成要素はすべて、従来のものを用いることができる。
【００１４】
集積回路３１６は、非常に多数のラッチを使用して論理ブロック間で信号を転送し、テスト回路３２４は、非常に多数の他のラッチを使用して、これらの信号を非破壊的にサンプリングする。これらのサンプルを使用して、性能上の欠陥に関して集積回路３１６を分析する。ラッチ３２２および３２６は、これらのラッチの例である。
【００１５】
クロック３１８は、クロック信号３２７を、パルス発生器３２０および遅延回路３３４に供給する。クロック信号３２７のクロック周期のエッジで、パルス発生器３２０は、パルスをパルス信号３２９としてラッチ３２２に供給する。パルスに応答して、ラッチ３２２は、入力信号３２３に基づいて新しい値を記憶し、この記憶した値を出力信号３２５として出力する。ラッチ３２２は、次のパルスまで、この記憶した値を維持する。
【００１６】
テストポート３２８は、集積回路３１６の外部にあるテストシステムと、テスト信号３３５を交換する。このテスト信号３３５は、遅延、トリガ条件、および入力／出力信号の選択を示すテスト情報を含む。テストポート３２８は、このテスト情報をシフトレジスタ３３０に転送する。シフトレジスタ３３０の例は、米国特許第５，５３０，７０６号に記載されている。シフトレジスタ３３０は、遅延を指定する遅延信号３４５を、遅延回路３３４に供給する。シフトレジスタ３３０は、トリガ条件を指定するトリガ信号３４７を、トリガ回路３３４に供給する。シフトレジスタ３３０は、入力／出力信号の選択を示すラッチ信号３５７を、ラッチ３２６に供給する。
【００１７】
シフトレジスタ３３０は、テストサンプルを示すテスト信号３５９を、ラッチ３２６から受け取る。シフトレジスタ３３０は、テストサンプルを、他のラッチからも受け取る。シフトレジスタ３３０は、テストサンプルを示すテスト信号３３９を、テストポート３２８に供給する。テストポート３２８は、テストサンプルをテスト信号３３５として、外部のテストシステムに供給する。
【００１８】
遅延回路３３４は、クロック信号３２７を受け取り、遅延信号３４５で指定されたプログラムされた遅延に基づいて、遅延させる。この遅延はデジタル的に指定されており、正確なサンプリングタイミングを選択できるように高分解能である。遅延回路３３４は、遅延されたクロック信号３５１をパルス発生器３３８に転送する。
【００１９】
トリガ回路３３６は、内部信号３４９を集積回路３１６から受け取る。この内部信号３４９は、バスからきてもメモリからきてもよく、命令を示すものであっても、状態を示すものであってもよい。トリガ回路３３６は、トリガ条件を内部信号３４９と比較し、これらがマッチ（一致、または、整合）していると、トリガ信号３５３をパルス発生器３３８に供給する。トリガ回路３３６の例は、米国特許第５，８６７，６４４号に記載されている。
【００２０】
パルス発生器３３８は、遅延されたクロック信号３５１とトリガ信号３５３とに基づいて、パルス信号３５５としてパルスを生成し、ラッチ３２６に供給する。パルス信号３５５としてのパルスに応答して、ラッチ３２６は、入力／出力信号の選択に基づいて、入力信号３２３または出力信号３２５のいずれかの値を記憶する。この記憶された値がテストサンプルであり、テスト信号３５９として、シフトレジスタ３３０に供給される。
【００２１】
テスト回路３２４を、オプションと共に構成することもできる。デフォルトのオプションは、零遅延を用い、および／または、トリガが要件とされない。別のデフォルトのオプションには、クロック信号３２７を使用してラッチ３２６を駆動し、出力信号３２５をサンプリングすることが含まれる。テストポート３２８、シフトレジスタ３３２、および関連するテスト信号３３１、３３３、３３５、３４１、および３４３を使用して、従来の方法でラッチ３２２をスキャンすることができる。これらのスキャンは破壊的なテストであって、集積回路３１６の動作を中断し、且つテスト後にリセットする必要がある。これらの破壊的なテストは、典型的には、製造欠陥を検出するために用いられる。
【００２２】
図４に集積回路３１６の動作を示す。クロック信号３２７、パルス信号３２９、トリガ信号３５３、パルス信号３５５、および入力信号３２３が、時間軸上に時間的に同期して示されている。クロック信号３２７のクロック周期は、タイミングＴ１、Ｔ２、およびＴ３においてエッジを有している。パルス信号３２９は、タイミングＴ１、Ｔ２、およびＴ３において対応するパルスを有し、これらのパルスがラッチ３２２を駆動して、入力信号３２３からの値を記憶する。典型的には、記憶された値をラッチ３２６からシフトするために、Ｔ１とＴ２との間に、ある時間期間が必要となる。しかし、この時間期間は、明瞭化のために示していない。
【００２３】
トリガ信号３５３は、Ｔ１の前にｈｉｇｈ（ハイ）になり、これによって、内部信号３４９がトリガ条件にマッチしたことを示す。トリガ信号３５３がｈｉｇｈになると、パルス信号３５５は、クロック周期のエッジから選択された遅延後に、パルスを有する。パルス信号３５５は、タイミングＴ１から選択された遅延Ｄ１の後に、第１クロック周期の中間にて第１のパルスを有する。パルス信号３５５は、タイミングＴ２から選択された遅延Ｄ２の後に、第２クロック周期の終了点の近傍に第２のパルスを有する。トリガ信号３５３がＴ２とＴ３との間でｌｏｗ（ロー）になるので、第３のクロック周期の間にパルスはない。パルス信号３５５の第１および第２のパルスはラッチ３２６を駆動し、（入力信号が選択されているとすれば）入力信号３２３からのサンプル値Ｓ１およびＳ２を記憶する。遅延Ｄ２が、入力信号３２３内のグリッチを検出するサンプルＳ２をもたらしていることに留意されたい。
【００２４】
集積回路３１６の動作中に、集積回路３１６内の数多くの信号を非破壊的にサンプリングすることができることに留意されたい。トリガ条件を指定することによって、サンプリングは、集積回路３１６内のイベントに応答して自動的に行われる。遅延を指定することによって、サンプリングは、クロック周期内の選択されたタイミングポイントで行われる。従って、本発明によれば、動作中の集積回路について、正確且つロバストなテストを行うことができる。
【００２５】
当業者は、上記の実施形態の変形態様を実施することができようが、そのような変更も本発明の範囲内のものである。結局のところ、本発明は、上述の特定の実施形態および説明事項に限定されるものではなく、特許請求の範囲およびそれらの均等物によってのみ限定される。
【００２６】
以下においては、本発明の種々の構成要件の組み合わせからなる例示的な実施態様を示す。
１．ターゲット回路（１０２）を含む集積回路（１００）であって、該ターゲット回路が、クロック信号（１０１）を使用して前記集積回路（１００）内にターゲット信号（１０３）を転送するように構成されており、
前記クロック信号（１０１）のクロック周期内の複数の可能なタイミングの中から選択されたタイミングを示すテスト信号（１０５）に応答して、前記選択されたタイミングで、前記ターゲット信号（１０３）をサンプリングするように構成されたテスト回路（１０４）を備える集積回路（１００）。
２．前記選択されたタイミングが、前記クロック信号（１０１）内のタイミングポイントからある時間遅延されたものである、上項１の集積回路（１００）。
３．前記テスト回路（１０４）は、前記遅延された後にパルスを生成し、該パルスに応答して前記ターゲット信号（１０３）をサンプリングするように構成されている、上項２の集積回路（１００）。
４．前記遅延がデジタル数として指定され、前記テスト回路（１０４）が前記テスト信号（１０５）を外部システムから受け取るように構成されている、上項２の集積回路（１００）。
５．前記テスト回路（１０４）は、トリガに応答して前記ターゲット信号（１０３）をサンプリングするように構成されている、上項１の集積回路（１００）。
６．前記テスト回路（１０４）は、トリガ条件を前記集積回路（１００）からの他の信号と比較し、前記トリガ条件が前記他の信号とマッチした場合に、前記トリガを生成するように構成されている、上項５の集積回路（１００）。
７．前記テスト信号（１０５）が、前記トリガ条件を示し、前記テスト回路（１０４）が、前記テスト信号（１０５）を外部システムから受け取るように構成されている、上項６の集積回路（１００）。
８．前記ターゲット信号（１０３）は、前記ターゲット回路（１０２）内の記憶要素に対する入力であるか、または前記ターゲット回路（１０２）内の前記記憶要素からの出力であり、前記テスト回路（１０４）は、入力／出力の選択に応答して前記入力または前記出力のいずれかをサンプリングするように構成されている、上項１の集積回路（１００）。
９．前記テスト信号（１０５）が、前記入力／出力の選択を示し、前記テスト回路（１０４）が、前記テスト信号（１０５）を外部システムから受け取るように構成されている、上項８の集積回路（１００）。
１０．前記テスト回路（１０４）が、前記ターゲット信号（１０３）を非破壊的にサンプリングして、そのサンプルを外部システムに転送するように構成されている、上項１の集積回路（１００）。
１１．クロック信号（１０１）を使用して集積回路（１００）内にターゲット信号（１０３）を転送する、集積回路（１００）の動作方法であって、
前記クロック信号（１０１）のクロック周期内の複数の可能なタイミングの中から選択されたタイミングを示すテスト信号（１０５）に応答して、前記選択されたタイミングで、前記ターゲット信号（１０３）をサンプリングするステップを含む、集積回路の動作方法。
１２．前記選択されたタイミングは、前記クロック信号（１０１）内のタイミングポイントから遅延されたものである、上項１１の方法。
１３．前記ターゲット信号（１０３）をサンプリングするステップが、前記遅延の後にパルスを生成し、該パルスに応答して前記ターゲット信号（１０３）をサンプリングするステップを含む、上項１２の方法。
１４．前記遅延がデジタル数として指定されており、外部システムから前記集積回路（１００）に前記テスト信号（１０５）を受け入れるステップをさらに含む、上項１２の方法。
１５．前記ターゲット信号（１０３）をサンプリングするステップが、トリガに応答して前記ターゲット信号（１０３）をサンプリングするステップを含む、上項１１の方法。
１６．トリガ条件を前記集積回路（１００）からの他の信号と比較し、前記トリガ条件が前記他の信号とマッチした場合に、前記トリガを生成するステップを含む、上項１５の方法。
１７．前記テスト信号（１０５）が前記トリガ条件を示しており、前記テスト信号（１０５）を外部システムから前記集積回路（１００）に受け入れるステップをさらに含む、上項１６の方法。
１８．前記ターゲット信号（１０３）は、前記ターゲット回路（１０２）内の記憶要素に対する入力であるか、または前記ターゲット回路（１０２）内の前記記憶要素からの出力であり、前記ターゲット信号（１０３）をサンプリングするステップが、入力／出力の選択に応答して前記入力または前記出力のいずれかをサンプリングするステップを含む、上項１１の方法。
１９．前記テスト信号（１０５）が前記入力／出力の選択を示すものであり、前記テスト信号（１０５）を外部システムから前記集積回路（１００）に受け入れるステップをさらに含む、上項１８の方法。
２０．前記ターゲット信号（１０３）をサンプリングするステップが、前記ターゲット信号（１０３）を非破壊的にサンプリングするステップを含み、
そのサンプルを外部システムに転送するステップをさらに含む、上項１１の方法。
【００２７】
【発明の効果】
本発明のテスト回路によれば、トリガ条件及びサンプリング時間の遅延時間を動的に指定することができるので、遅延した信号やグリッチなどの時間変化する信号を容易に捕捉できる。
【図面の簡単な説明】
【図１】本発明の一実施形態における集積回路のブロック図である。
【図２】本発明の一実施形態における集積回路の動作タイミングを示す図である。
【図３】本発明の一実施形態における、プログラマブル遅延およびトリガ機能を有する集積回路のブロック図である。
【図４】本発明の一実施形態における、プログラマブル遅延およびトリガ機能を有する集積回路の動作タイミングを示すタイミング図である。
【符号の説明】
１００    集積回路
１０１    クロック信号
１０２    ターゲット回路
１０３    ターゲット信号
１０４    テスト回路
１０５    テスト信号
【図１】
0003631672.tif 000002
【図２】
0003631672.tif 000003
【図３】
0003631672.tif 000004
【図４】
0003631672.tif 000005