(57)【要約】フィールドプログラマブルゲートアレイ（ＦＰＧＡ）デバイスは、高速シリアライザ／デシリアライザ（ＳＥＲＤＥＳ）を含む。このフィールドプログラマブルゲートアレイにより、動作速度で、ＳＥＲＤＥＳの、プログラム可能なビルトインテストが可能になる。デジタルクロックマネージャ回路により、クロック信号は、ＳＥＲＤＥＳ回路に負荷をかけるように結合される。ＦＰＧＡのロジックアレイは、テストパターンを生成してＳＥＲＤＥＳ回路によって受取られたデータを分析するように、プログラムすることができる。巡回冗長検査（ＣＲＣ）キャラクタ、または他の誤り検査キャラクタを、ロジックアレイを用いて生成することもできる。ＦＰＧＡは、テスト中に通信回路に大規模なテストを行ない、そのテストの結果を記憶することができる。実質的にテスト時間をかけずに、または複雑なテスト装置なしに、外部のテスタがテストの結果を読出すことができる。テストが完了した後、このデバイスは、テストを行なうためにデバイスに何ら費用をかけることなく、エンドユーザ機能を実行するように再びプログラムされ得る。
2004537054.tif 000002
【特許請求の範囲】
【請求項１】
ロジックアレイと、
データ通信接続部と、
前記データ通信接続部および前記ロジックアレイに結合されたシリアライザ／デシリアライザ回路とを含み、前記ロジックアレイは、前記シリアライザ／デシリアライザ回路にテスト動作を行なうようにプログラム可能であり、エンドアプリケーションを実行するように後で再びプログラムされる、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）。
【請求項２】
前記ロジックアレイに結合されて、クロック信号を生成することのできるデジタルクロックマネージャをさらに含む、請求項１に記載のＦＰＧＡ。
【請求項３】
前記デジタルクロックマネージャは、テスト動作中に前記クロック信号に負荷をかける、請求項２に記載のＦＰＧＡ。
【請求項４】
前記ロジックアレイは、前記データ通信接続部に与えられるテストデータパターンを生成するように、プログラム可能であり、かつ、再プログラム可能である、請求項１に記載のＦＰＧＡ。
【請求項５】
入力データ通信接続部および出力データ通信接続部と、
前記入力データ通信接続部および前記出力データ通信接続部に結合されたシリアライザ／デシリアライザ回路と、
前記出力データ通信接続部に結合されるテストデータパターンを生成するようにプログラムされるロジックアレイとを含み、前記ロジックアレイは、ビルトインセルフテスト動作を行なう間に、前記入力データ通信接続部で受取られたデータパターンをチェックするように、さらにプログラムされる、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）。
【請求項６】
前記ロジックアレイに結合可能なクロック信号を生成するためのデジタルクロックマネージャ回路をさらに含み、デジタルクロックマネージャは、ビルトインセルフテスト動作中に、プログラム可能なジッタ振幅およびプログラム可能なジッタ周波数の両方内において、制御可能な態様で雑音およびジッタを前記クロック信号に加える、請求項５に記載のＦＰＧＡ。
【請求項７】
前記ロジックアレイに結合可能なクロック信号を生成するためのデジタルクロックマネージャ回路をさらに含み、デジタルクロックマネージャは、テスト動作中にクロック信号間に周波数オフセットおよび位相シフトを生じる、請求項５に記載のＦＰＧＡ。
【請求項８】
前記ロジックアレイは、前記テストデータパターンに巡回冗長検査キャラクタを挿入するようにさらにプログラムされる、請求項５に記載のＦＰＧＡ。
【請求項９】
テスト動作の結果を示すデータを記憶するメモリをさらに含む、請求項５に記載のＦＰＧＡ。
【請求項１０】
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）の高速配線回路をテストする方法であって、
前記ＦＰＧＡの、プログラムされたロジック回路を用いて、テストパターンを生成するステップと、
出力接続部に前記テストパターンを出力するステップと、
前記高速配線回路の入力接続部に、前記テストパターンを結合するステップと、
前記プログラムされたロジック回路を用いて、前記入力接続部で受取られたデータを評価するステップと、
評価の結果を示すデータを記憶するステップとを含む、方法。
【請求項１１】
前記ロジックアレイは、線形フィードバックシフトレジスタとして作動して前記テストパターンとして擬似ランダムビットストリームを与えるようにプログラムされる、請求項１０に記載の方法。
【請求項１２】
前記出力接続部に前記テストパターンを出力するステップの前に、前記テストパターンに誤り検査キャラクタを加えるステップをさらに含む、請求項１０に記載の方法。
【請求項１３】
前記受取られたデータを評価するステップは、前記誤り検査キャラクタを評価するステップを含む、請求項１２に記載の方法。
【請求項１４】
テスト回路と、
前記テスト回路に結合されたフィールドプログラマブルゲートアレイ（ＦＰＧＡ）とを含み、前記ＦＰＧＡは、
前記テスト回路を介して、ともに結合された入力データ通信接続部および出力データ通信接続部と、
前記入力データ通信接続部および前記出力データ通信接続部に結合されたシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）回路と、
前記出力データ通信接続部に結合されるテストデータパターンを生成するようにプログラムされるロジックアレイとを含み、前記ロジックアレイは、ビルトインセルフテスト動作を行なう間に、入力接続部で受取られたデータパターンをチェックするように、さらにプログラムされる、テストシステム。
【請求項１５】
前記ＦＰＧＡは、前記受取られたデータパターンのチェックの結果を示すデータを記憶するためのメモリを含む、請求項１４に記載のテストシステム。
【請求項１６】
前記テスト回路は、前記ＦＰＧＡのメモリにアクセスして、前記ＦＰＧＡの誤り状態を判断する、請求項１５に記載のテストシステム。
【請求項１７】
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）のシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）回路をテストする方法であって、
前記ＦＰＧＡのロジックアレイをプログラムするステップと、
前記ＦＰＧＡの、プログラムされたロジック回路を用いて、テストパターンを生成するステップと、
前記ＳＥＲＤＥＳの出力接続部に、前記テストパターンを出力するステップと、
前記ＳＥＲＤＥＳの入力接続部に、前記テストパターンを外部で結合するステップと、
プログラムされたロジックアレイを用いて、前記入力接続部で受取られたデータを評価するステップと、
評価の結果を示すデータを前記ＦＰＧＡのメモリ回路に記憶するステップと、
エンドユーザアプリケーションを実行するように、アレイを再びプログラムするステップとを含む、方法。
【請求項１８】
前記ロジックアレイは、擬似ランダムビット生成器の機能、または他の負荷またはテストパターンを含むようにプログラムされる、請求項１７に記載の方法。
【請求項１９】
デジタルクロックマネージャ（ＤＣＭ）回路を用いてクロック信号を生成するステップと、
前記クロック信号を前記ＳＥＲＤＥＳに結合するステップとをさらに含む、請求項１７に記載の方法。
【請求項２０】
デジタルクロックマネージャ（ＤＣＭ）回路を用いて、送信クロック信号および受信クロック信号を生成するステップをさらに含み、デジタルクロックマネージャは、送受信クロック信号間に周波数オフセット、ジッタ振幅、ジッタ周波数、および位相シフトを生じ、さらに、
前記クロック信号を前記ＳＥＲＤＥＳに結合するステップを含む、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
この発明は、一般に、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）に関し、特に、ＦＰＧＡの統合型テストに関する。
【背景技術】
【０００２】
発明の背景
デジタルデータストリームの光ファイバ伝送が開発されたことにより、ファイバチャネルと呼ばれるインターフェイスシステムおよびデータ転送プロトコルが生じた。ファイバチャネル技術は、光ファイバまたはファイバチャネル互換の導電（銅）ケーブルに、さまざまなコンピュータシステムを結合することを伴い、比較的長い距離隔たった機器間において、極めて速いデータ伝送速度を可能にする。標準ファイバチャネルファミリー（米国規格協会（the American National Standards Institute）（ＡＮＳＩ）によって開発）は、パーソナルコンピュータ、ワークステーション、メインフレーム、スーパーコンピュータ、記憶装置等のさまざまなハードウェアシステムと、ファイバチャネルインターフェイスを有するサーバとの間で大量のデータを転送するための高速通信インターフェイスを規定する。ファイバチャネルの使用は、高帯域幅かつ低待ち時間のＩ／Ｏを必要とするクライアント／サーバアプリケーションにおいて急増している。ファイバチャネルは高性能を実現し、このことは、コンピュータ対記憶装置およびコンピュータ対コンピュータの現在のインターフェイスの帯域幅の限界を、秒速１ギガビット以上に広げる際に不可欠である。
【０００３】
ファイバ線またはケーブルを介して伝送される情報は、一度に８ビットずつ、１０ビットの伝送キャラクタに符号化され、この１０ビットの伝送キャラクタは、後に、順次１ビットずつ伝送される。典型的なコンピュータシステムの並列アーキテクチャを介してもたらされるデータは、各データバイト（コンピュータシステムの観点から８ビット）がファイバチャネルの８Ｂ／１０Ｂの伝送符号に従って伝送キャラクタに生成されるように、符号化されてフレーム化される。次に、結果的に得られた８Ｂ／１０Ｂのキャラクタは、１．０６ＧＨｚのデータ転送速度で１０個のシーケンシャルなビットとして伝送される。同様に、入来する、８Ｂ／１０Ｂに符号化された伝送キャラクタもまた、１．０６ＧＨｚのデータ転送速度で順次受信されて、対応する１０ビットの伝送キャラクタに変換（フレーム化）されなければならない。次に、この１０ビットの伝送キャラクタは、さらに、従来のコンピュータアーキテクチャによって認識可能な８ビットのバイトに復号化される。
【０００４】
データ処理システムおよびデータネットワークにおいて、情報は、システム間をシリアルバスおよびパラレルバスを介して転送され、データ処理システムと、データ処理システムが接続するバスとの間に互換性を与えるために、インターフェイスが存在する。さらに、ネットワークの中には、異なる特性を有するさまざまなバス間にインターフェイスを設けるものもある。たとえば、インターフェイスは、データ処理システムのＰＣＩバスをファイバチャネルに結合することができる。ＰＣＩバスが並列のデータ経路とともに作動する一方で、ファイバチャネルは直列のデータ経路とともに作動する。
【０００５】
ファイバチャネルの直列化されたデータ経路と、集積回路のインターフェイスの並列なデータ経路との間に、シリアライザ／デシリアライザ（ＳＥＲＤＥＳ）が、ファイバチャネルインターフェイス回路と一体化した部分を形成する。ファイバチャネルインターフェイスは、接続部を介してＳＥＲＤＥＳに接続し、パラレルデータバスを介してフレーム処理回路に接続する。このパラレルデータバスは、実質的に、フレーム処理回路に、およびフレーム処理回路から、情報を転送する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
集積回路が複雑さを増していくにつれて、デバイスをテストすることがますます難しくなっている。特に、集積回路をテストするために、多数のテストパターンおよびテスト構成が必要とされ得る。次に、これらのテストパターンの応答がモニタされて、欠陥があるかどうかを判断する。このテストは時間がかかるうえに、集積回路の入力／出力ピンのすべてを用い得る。したがって、集積回路デバイス自体の中に回路を設けてビルトインセルフテスト（Built-In Self Test）（ＢＩＳＴ）を行なうことが公知である。
【０００７】
プログラム可能なロジックデバイス（ＰＬＤ）は、ユーザ（回路設計者等）によってプログラムされて特定のロジック機能を実行することのできる、周知のタイプのデジタル集積回路である。ＰＬＤの一種であるフィールドプログラマブルゲートアレイ（ＦＰＧＡ）は、構成可能なロジックブロック、すなわちＣＬＢのアレイを一般に含み、ＣＬＢは、プログラム可能な態様で、互いにかつプログラム可能な入力／出力ブロック（ＩＯＢ）に相互接続される。ＳＥＲＤＥＳを必要とする高速配線を含むＦＰＧＡを設けることができる。
【０００８】
上で述べた理由と、当業者がこの明細書を読んで理解されると明らかになるであろう、以下に述べる他の理由とにより、当該技術では、ＦＰＧＡ内の高速ＳＥＲＤＥＳ回路をテストする方法が必要とされる。
【課題を解決するための手段】
【０００９】
発明の概要
ＦＰＧＡ内の高速ＳＥＲＤＥＳ回路をテストすることに関する上述の問題および他の問題は、この発明によって対処され、以下の明細書を読んで研究されることによって理解されるであろう。一実施例において、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）は、ロジックアレイと、データ通信接続部と、データ通信接続部およびロジックアレイに結合されるシリアライザ／デシリアライザ回路とを含む。ロジックアレイは、シリアライザ／デシリアライザ回路にテスト動作を行なうようにプログラム可能である。テストが完了した後、このプログラム可能な回路を、エンドユーザアプリケーションを実行するように再びプログラムすることができ、それによってシリコンにテスト特性を与えるための追加費用は生じない。
【００１０】
別の実施例において、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）は、入力データ通信接続部および出力データ通信接続部と、入力データ通信接続部および出力データ通信接続部に結合されたシリアライザ／デシリアライザ回路と、出力データ接続部に結合されるテストデータパターンを生成するようにプログラムされるロジックアレイとを含む。このロジックアレイは、ビルトインセルフテスト動作を行なう間に、入力接続部で受取られたデータパターンをチェックするように、さらにプログラムされる。テスト後に、この回路は、上述のように再びプログラムされ得る。
【００１１】
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）の高速配線回路をテストする方法は、ＦＰＧＡの、プログラムされたロジック回路を用いて、テストパターンを生成するステップと、出力接続部にテストパターンを出力するステップと、高速配線回路の入力接続部にテストパターンを結合するステップと、プログラムされたロジック回路を用いて、入力接続部で受取られたデータを評価するステップと、評価の結果を示すデータを記憶するステップとを含む。テスト後に、この回路は、上述のように再びプログラムされ得る。
【００１２】
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）のシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）回路をテストするさらに別の方法は、ＦＰＧＡのロジックアレイをプログラムするステップと、ＦＰＧＡの、プログラムされたロジック回路を用いて、テストパターンを生成するステップとを含む。テストパターンは、ＳＥＲＤＥＳの出力接続部に出力され、この出力接続部は、ＳＥＲＤＥＳの入力接続部に外部で結合される。プログラムされたロジックアレイを用いて、入力接続部で受取られたデータが評価され、その評価の結果を示すデータが、ＦＰＧＡのメモリ回路に記憶される。テスト後に、この回路は、上述のように再びプログラムされ得る。
【発明の効果】
【００１３】
結論
高速シリアライザ／デシリアライザ（ＳＥＲＤＥＳ）を含むフィールドプログラマブルゲートアレイ（ＦＰＧＡ）デバイスを説明してきた。このフィールドプログラマブルゲートアレイにより、動作速度でＳＥＲＤＥＳのビルトインテストが可能になる。デジタルクロックマネージャ回路により、ＳＥＲＤＥＳに結合されたクロック信号が、テスト動作中に変更されて、ＳＥＲＤＥＳ回路に負荷をかけることができる。ＦＰＧＡのロジックアレイは、テストパターンを生成してＳＥＲＤＥＳ回路によって受取られたデータを分析するように、プログラムすることができる。巡回冗長検査（ＣＲＣ）キャラクタもまた、ロジックアレイを用いて生成することができる。テスト中に、ＦＰＧＡは、通信回路に大規模なテストを行なって、そのテストの結果を記憶することができる。外部テスタは、実質的にテスト時間をかけずに、または複雑なテスト装置なしに、テストの結果を読出すことができる。
【発明を実施するための最良の形態】
【００１４】
図面の詳細な説明
以下の、好ましい実施例の詳細な説明において、添付の図面を参照する。添付の図面はこの発明の一部をなし、この発明が実施され得る特定の好ましい実施例を一例として示す。これらの実施例は、当業者がこの発明を実施することができるように、十分に詳しく説明される。他の実施例も用いることができ、この発明の精神および範囲から逸脱することなく、論理的、機械的および電気的な変更を行なってよいことが理解されるべきである。したがって、以下の詳細な説明は、限定的な意味で捉えられるべきではなく、この発明の範囲は、請求項によってのみ規定される。
【００１５】
図１は、先行技術のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）１００の簡易ブロック図である。ＦＰＧＡ１００は、構成可能なロジックブロック（ＣＬＢ）１１０のアレイを含み、構成可能なロジックブロック１１０は、プログラム可能な態様で、互いにかつプログラム可能な入力／出力ブロック（ＩＯＢ）１２０に、相互接続される。水平および垂直な配線１３０および１４０として示される複雑なマトリクスからなる配線により、配線が設けられる。ＦＰＧＡのアーキテクチャの詳細な説明は、この明細書において引用によって援用される米国特許３４，３６３および５，９１４，６１６に見ることができる。
【００１６】
構成可能な素子および配線からなるこの集合体は、ＣＬＢ、配線およびＩＯＢがどのように構成されるべきかを規定する構成データを、内部構成メモリセル（図示せず）にロードすることによってカスタマイズすることができる。ＦＰＧＡの構成構造の詳細な説明は、この明細書において引用によって援用される米国特許５，８４４，８２９に見ることができる。この構成データは、メモリから読出すか、または、外部のデバイスからＦＰＧＡ１００に書込むことができる。次に、個々のメモリセルの、まとまったプログラム状態が、ＦＰＧＡ１００の機能を決定する。ＦＰＧＡ１００の価値は、新規であるか、部分的に新規であるか、または異なった構成をロードすること（再びプログラムすること）によって、その論理的な機能を自在に変更できることにある。このような変更は、構成メモリセルをロードしてユーザロジックをリセット（またはプリセット）することによって、または、構成可能なロジック自体を介して（自己再構成）、達成される。
【００１７】
ＣＬＢ１１０およびＩＯＢ１２０は、ユーザによるアクセス可能なメモリ素子（図示せず）をさらに含み、その内容は、ＦＰＧＡ１００がロジック回路として作動する際に変更され得る。ユーザによるアクセス可能なこれらのメモリ素子、すなわち「ユーザロジック」は、ブロックＲＡＭ、ラッチ、およびフリップフロップを含む。ユーザロジックに記憶されたデータは、代替的に、「ユーザデータ」または「状態データ」と呼ばれる。
【００１８】
この発明は、ギガビットの通信等の高速通信のための双方向インターフェイスを有するＦＰＧＡを提供する。外部の高速バスのインターフェイスとなるように、シリアライザ／デシリアライザ（ＳＥＲＤＥＳ）が設けられる。製造中に、秒速３＋ギガビット等の通信速度で機能上の整合性と適切な動作との両方が得られるかどうか、ＳＥＲＤＥＳ回路をテストすることが望まれる。以下に説明するように、この発明の実施例により、通信速度で、負荷のかかっている間に、ＳＥＲＤＥＳ回路のテストを行なうことができる。
【００１９】
このＦＰＧＡの一実施例は、各々がギガビットの速度で通信することのできる１６個のＳＥＲＤＥＳ回路を含む。これらのＳＥＲＤＥＳ回路は、内部のデジタルクロックマネージャ（ＤＣＭ）回路に結合可能である。ＤＣＭは、ＳＥＲＤＥＳ回路に対し、送信クロックおよび受信クロックの両方を生成する。ＤＣＭは、これらのクロック信号に雑音またはジッタを加えることができる。加えて、ＤＣＭは、予め規定された量だけ、周波数オフセットおよび位相シフトを生じることができる。したがって、ＦＰＧＡは、クロック信号の特性を操作することによって、ＳＥＲＤＥＳ回路に負荷をかけることができる。
【００２０】
ＦＰＧＡのロジック構成要素は、テスト回路として作動してＳＥＲＤＥＳ回路の動作テストを行なうように、テスト中にプログラムすることができる。このビルトインセルフテスト（ＢＩＳＴ）の特性により、従来の集積回路では得られなかった利点がもたらされる。ＢＩＳＴを実施して高速ＳＥＲＤＥＳ回路をテストするのに必要とされるテスト回路は、集積回路の一部として製造するにはあまりに拡張性が大きく、非常に費用がかかる。
【００２１】
ＳＥＲＤＥＳ回路をテストするために、ＦＰＧＡロジックは、擬似ランダムビットストリーム生成器、負荷パターン生成器、巡回冗長検査（ＣＲＣ）回路、およびビット誤り率のテスタを設けるようにプログラムされる。以下に説明するように、擬似ランダムビットストリーム生成器は、線形フィードバックシフトレジスタ（ＬＦＳＲ）を用いて実現することができる。
【００２２】
図２を参照すると、この発明のＦＰＧＡ２００のブロック図が記載されている。このデバイスは、外部送信接続部２０４および外部受信接続部２０６に結合されたＳＥＲＤＥＳ回路２０２を含む。このＳＥＲＤＥＳ回路は、ＦＰＧＡの内部ロジック回路に結合される。このロジック回路に、デジタルクロックマネージャ回路２１２が結合されて、送信クロック信号および受信クロック信号を与える。このロジックは、その入力にＳＥＲＤＥＳ回路の出力を結合することによって、通信回路にテストパターンを適用する。負荷に関しては、テストが行なわれている間に、ジッタをクロック信号に加えることができる。次に、テストの結果がＦＰＧＡの内部メモリ２１４に記憶される。このテスト結果を後で読出して、このデバイスが性能の問題を抱えているかどうかを判断することができる。
【００２３】
図３は、この発明のビット誤り率のテスタのブロック図を示す。このテスタは、ＦＰＧＡアレイにおいてプログラムされたパターン生成器２３０を含む。パターン生成器は、線形フィードバックシフトレジスタとして実現することができる。任意の巡回冗長検査（ＣＲＣ）回路２３２が、ＣＲＣキャラクタをテストプログラムに与えるように、ＦＰＧＡにおいてプログラムされ得る。単純なパリティチェックを含む、他の誤り検査キャラクタを用いることもできる。したがって、この発明は、ＣＲＣキャラクタに限定されない。テストデータパターンは、テスト中に、ＳＥＲＤＥＳチャネル２０２に結合される。テストパターンを制御するために用いるクロック２４０には、上で述べたように負荷をかけて、テスト動作を高めることができる。次に、ＳＥＲＤＥＳによって受取られたデータは、ＦＰＧＡアレイにおいてプログラムされたチェック回路２４２を用いて、誤りの可能性がないかチェックされる。ＣＲＣ２３２が与えられる場合は、受取られたＣＲＣキャラクタもまたチェックされる。誤りカウンタ２４４がＦＰＧＡロジックにおいてプログラムされて、テスト中に発見された誤りの総数を保持する。カウンタからの誤りの数は、ビット誤り率（ＢＥＲ）回路２４６によって分析されて、テストされたビットの数に対する、発見された誤りの数を求めて、ＢＥＲを算出する。このＢＥＲを、検索用にメモリに記憶するか、または、ＢＥＲのしきい値に基づいて、合否符号を記憶することができる。すなわち、テスタはＦＰＧＡメモリを読出して、その部分がテストに合格したかどうかを判断することができ、または、記憶されたＢＥＲを分析して、そのデバイスが容認可能な基準を満たしているかどうかを判断することができる。
【００２４】
テスト回路３００およびＦＰＧＡ２００を含むテストシステムが、図４に示される。ＦＰＧＡは、上述のように、ＦＰＧＡに設けられたデータ通信回路のビルトインセルフテスト（ＢＩＳＴ）を行なうようにプログラムされている。テスト回路は、マイクロプロセッサデバイスであるか、または、この明細書において引用によって援用される米国特許６，２３２，８４５に記載されたリング発振器等のテスト専用デバイスであり得る。マイクロプロセッサが用いられる場合、これは、ＦＰＧＡ内のロジックの専用のコアとして、または、ＣＬＢと同様のマイクロプロセッサの機能を果たす、１組のプログラムされたロジックブロックとして、実現することができる。テスト動作中に、ＦＰＧＡは、出力通信接続部に出力されるテストパターンを生成する。出力接続部は、ＦＰＧＡの入力接続部に結合されて、受取られたデータパターンが評価される。誤りが検出された場合、ＦＰＧＡの誤り率の状態を示すデータが、ＦＰＧＡのメモリにプログラムされる。テスト回路は、ＦＰＧＡのメモリの内容にアクセスするか、またはそれを読出して、ＦＰＧＡが良好であるか、または、容認可能な誤り率のレベルを有しているかどうかを判断する。この発明のＦＰＧＡは、高速通信回路のＢＩＳＴを行なうため集積回路にテスト専用回路を作製することに勝る利点を有する。特に、この発明のＦＰＧＡは、クロック信号の周波数、位相、ジッタ振幅およびジッタ周波数を変化させることによって、テスト動作に負荷をかけるためにクロック信号を生成することのできる、デジタルクロックマネージャ回路を含む。このようなテストを行なうため集積回路にテスト専用回路を実現すると、多くの空間を消費し、費用がかかってしまう。プログラム可能なロジックを、再びプログラムすることによって、エンドアプリケーション用に再び用いることができ、結果的に、テスト特性には費用がかからない。
【００２５】
特定の実施例をこの明細書において示し、説明してきたが、当業者は、同じ目的を達成するように計算された任意の構成を、示されたこの特定の実施例の代わりに用いてよいことを認識するであろう。この出願は、この発明のどのような変更または変形も包含するように意図される。したがって、この発明が、請求項およびその等価物によってのみ限定されることが明らかに意図される。
【図面の簡単な説明】
【００２６】
【図１】先行技術のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のロジックアレイを示す図である。
【図２】この発明の、ＦＰＧＡの一実施例のブロック図である。
【図３】この発明の一実施例の、ＦＰＧＡテスト回路のブロック図である。
【図４】テスタ回路に結合されたＦＰＧＡを示す図である。
【図２】
2004537054.tif 000003
【図３】
2004537054.tif 000004
【図４】
2004537054.tif 000005
【国際公開パンフレット】
2004537054.tif 000006
2004537054.tif 000007
2004537054.tif 000008
2004537054.tif 000009
2004537054.tif 000010
2004537054.tif 000011
2004537054.tif 000012
2004537054.tif 000013
2004537054.tif 000014
2004537054.tif 000015
2004537054.tif 000016
2004537054.tif 000017
2004537054.tif 000018
2004537054.tif 000019
2004537054.tif 000020
2004537054.tif 000021
2004537054.tif 000022
【国際公開パンフレット（コレクトバージョン）】
2004537054.tif 000023
【国際調査報告】
2004537054.tif 000024
2004537054.tif 000025
2004537054.tif 000026