(57)【特許請求の範囲】
【請求項１】
テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、
上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製する手段を有することを特徴とするテスト回路。
【請求項２】
請求項１において、
上記複製したテスト実行制御部が、上記複製されたテスト実行制御部を起動する手段を有することを特徴とするテスト回路。
【請求項３】
請求項１において、
テスト結果のデータを出力する出力パスを、上記テスト対象回路から所定の出力端子へ設ける手段を有することを特徴とするテスト回路。
【請求項４】
請求項１において、
上記テスト回路が設けられる再構成可能な回路の上部、真中、下部のいずれかに、上記テスト回路が設けられていることを特徴とするテスト回路。
【請求項５】
請求項１において、
上記テスト対象回路を、上記テスト回路において、９０度回転した状態で、上記テスト対象回路をテストすることを特徴とするテスト回路。
【請求項６】
請求項１において、
上記テスト実行制御部から上記テスト対象回路にテストパターンを供給し、このテストパターンが上記テスト対象回路内の論理回路を経由して出力された値と、所定の期待値とを比較し、この比較結果を出力する回路を有することを特徴とするテスト回路。
【請求項７】
テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、
上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製するものであり、
上記テスト回路の複製先の一部が、上記テスト回路の複製元と重なるように複製する手段を有することを特徴とするテスト回路。
【請求項８】
請求項７において、
上記重なるテスト回路の複製先の一部は、上記テスト回路の複製先における上記テスト実行制御部であることを特徴とするテスト回路。
【請求項９】
テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、
上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製するものであり、
上記テスト対象回路のみを連ねて複製する手段を有することを特徴とするテスト回路。
【請求項１０】
請求項９において、
上記テスト対象回路のみを連ねて複製した後に、上記テスト回路の複製先の一部が、上記テスト回路の複製元と重なるように複製する手段を有することを特徴とするテスト回路。
【請求項１１】
請求項７〜請求項１０のいずれか１項において、
上記テスト対象回路は、互いに異なる複数のテスト対象回路であり、１つの上記テスト実行制御部が、上記互いに異なる複数のテスト対象回路について、複製とテストとを、繰り返して実行することを特徴とするテスト回路。
【請求項１２】
テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、
上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製し、しかも、テスト対象回路の複製先が、既にテストが終わっているテスト対象回路の一部と重なるように複製する手段を有することを特徴とするテスト回路。
【請求項１３】
請求項１２において、
上記テスト対象回路は、互いに異なる複数のテスト対象回路であり、１つの上記テスト実行制御部が、上記互いに異なる複数のテスト対象回路について、複製とテストとを、繰り返して実行することを特徴とするテスト回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路に関する。
【０００２】
【従来の技術】
図１９は、第１の従来例である再構成可能な回路のテスト方法を説明する図である。
【０００３】
再構成可能な回路（たとえば、ＦＰＧＡ：Ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）は、本来、使用者が希望する回路をプログラムすることによって、上記希望する回路を様々に実現するものである。したがって、再構成可能な回路が、特定の機能を有するのではないので、再構成可能な回路をテストする場合、従来は、テストする度に、再構成可能な回路をプログラミングし、テストしている。
【０００４】
図１９において、１つ目のテストでは、１つ目のテスト対象回路ＴＣ１１をプログラミングし、このプログラミングされたテスト対象回路ＴＣ１１をテストし、２つ目のテストでは、テスト対象回路ＴＣ１２をプログラミングし、このプログラミングされたテスト対象回路ＴＣ１２をテストし、さらに、３つ目以降のテストでは、上記と同様に、テスト対象回路ＴＣ１３、テスト対象回路ＴＣ１４、……、テスト対象回路ＴＣ１ｎをプログラミングし、テストする。
【０００５】
図２０は、再構成可能な回路を対象としてテストした場合おける第１の従来のテスト方法における動作を示すフローチャートである。
【０００６】
まず、１つ目の論理回路をプログラミングし（Ｓ１０１）、このプログラミングされた論理回路を１つ目のテスト対象回路とみなし、入力データを与え、テストし（Ｓ１０２）、出力値を観測する。
【０００７】
上記出力値と、上記プログラミングされた回路（テスト対象回路）が正常な場合に期待されている値とが、一致するか否かを調べるために比較し（Ｓ１０３）、両値が互いに一致していなければ、再構成可能な回路に故障が存在していると判断し（Ｓ１０４）、一方、両値が互いに一致していれば（Ｓ１０３）、故障が存在していないと判断する。
【０００８】
そして、両値が互いに一致していれば（Ｓ１０３）、再構成可能な回路に、２つ目の論理回路をプログラミングし（Ｓ１０１）、２つ目のテスト対象回路とみなし、これをテストし（Ｓ１０２）、上記プログラミング、テスト、比較を繰り返し実行する（Ｓ１０１、Ｓ１０２、Ｓ１０３、Ｓ１０５）。そして、再構成可能な回路の全ての面において、上記テストが終わると（Ｓ１０５）、１つの再構成可能な回路における全てのテストが終了する。
【０００９】
図２１は、第２の従来例であるＢＩＳＴの説明図である。
【００１０】
上記ＢＩＳＴは、自己組込テスト回路（Ｂｕｉｌｔ−ｉｎ  ｓｅｌｆｔｅｓｔ）と呼ばれるテスト回路であり、このＢＩＳＴ（自己組込テスト回路）をメモリヘ適用した例が、特開２０００−３０４８３公報に記載されている「大規模メモリ用ＢＩＳＴ回路」である。
【００１１】
上記第２の従来例であるＢＩＳＴは、上記第１の従来例である再構成可能な回路のテスト方法よりも、簡単なテスト方法である。
【００１２】
従来のＢＩＳＴは、通常、特定の機能をもったテスト対象回路と、テスト制御部とが、ＬＳＩ内に予め作り込まれている。そして、上記テスト制御部は、テストパターン発生器と、比較器とを有する。上記テストパターン発生器は、上記テスト対象回路におけるテスト入力データであるテストパターンを発生する回路であり、上記比較器は、テスト対象回路が出力したデータと、そのテスト対象回路が正常である場合に期待される期待値とを比較する回路である。
【００１３】
テストに際して、ＢＩＳＴの外部から起動トリガを受信すると、上記テスト制御部が動作を開始し、テスト終了時に、テストがＯＫであるか否かを示す結果出力が、上記比較器からＬＳＩの外部へ出力される。
【００１４】
【発明が解決しようとする課題】
上記第１の従来例において、１つ目のテスト対象回路ＴＣ１１をテストするには、入力端子からテスト対象回路ＴＣ１１の位置までテストパターンを通す入力パスＩＰ１１を準備し、テスト対象回路ＴＣ１１から出力端子まで出力結果を運ぶ出力パスＯＰ１１を準備しなければならない。この場合、上記入力パスＩＰ１１、出力パスＯＰ１１のプログラミングは、テスト対象回路ＴＣ１１のプログラミングと一緒に扱われる。
【００１５】
そして、テスト対象回路ＴＣ１２をプログラミングするときに、入力パスＩＰ１２、出力パスＯＰ１２のプログラミングが一緒に行われ、テスト対象回路ＴＣ１３、テスト対象回路ＴＣ１４、……、テスト対象回路ＴＣ１ｎのそれぞれをプログラミングする場合も、上記と同様である。
【００１６】
つまり、各テスト対象回路をプログラミングするときに、それに付随する入力パス、出力パスのプログラミングを行う。
【００１７】
しかし、１つ目のテスト対象回路ＴＣ１１と、２つ目のテスト対象回路ＴＣ１２と、３つ目のテスト対象回路ＴＣ１３と、……、ｎ個目のテスト対象回路ＴＣ１ｎとが、互いに同じ機能回路であるようにプログラミングしたとしても、プログラムされた各テスト対象回路の配置位置が、再構成可能な回路上で異なれば、各テスト対象回路における入出力パス、入出力端子の位置が互いに異なる。
【００１８】
したがって、上記第１の従来例では、テスト対象回路毎に（テスト対象回路を論理回路としてプログラミングする毎に）、異なる入出力パスを個別に設定する必要があり（プログラミングする必要があり）、また、異なる入出端子を個別に設定する必要がある（プログラミングする必要がある）という問題がある。
【００１９】
ところで、第２の従来例であるＢＩＳＴでは、テスト対象回路が特定の機能回路であることを前提にしている。すなわち、テスト対象回路に入力するテストパターン信号が、どのような信号であるのか、また、期待値がどのような値であるのかについて、ＬＳＩを製造する前に（設計時に）分かっている必要があり、しかも、上記入力するテストパターン信号とその期待値とを、ＬＳＩ製造前に準備する必要がある。
【００２０】
したがって、再構成可能な回路のように論理回路をプログラミングする回路に、従来のＢＩＳＴを単純に適用することが困難であるという問題がある。
【００２１】
また、上記従来のＢＩＳＴにおいて、ＬＳＩにテスト制御部が予め設けられ、テストが終了しても、そのテスト制御部が、そのまま残り、テスト制御部以外の用途には使用できないという問題がある。つまり、オーバーヘッドが生じるという問題がある。
【００２２】
本発明は、テストを行うべき回路の全体が大きくても、同じ手法で対応可能であり、また、テストの準備が簡単であり、テストそのものの仕方が簡単であり、さらに、入力端子からテスト対象回路まで入力パスを通じてテストパターンを入力する必要がなく、加えてテスト結果のデータを出力端子まで運ぶための出力パスを、テストする度にプログラム等によって設定し直す必要がないテスト回路を提供することを目的とするものである。
【００２３】
【課題を解決するための手段】
本発明は、テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、上記テスト実行制御部は、テスト回路を複製する手段を有するテスト回路である。
【００２４】
また、本発明は、上記複製したテスト実行制御部（複製元のテスト実行制御部）が、上記複製されたテスト実行制御部を起動する手段を有するテスト回路である。
【００２５】
さらに、本発明は、テスト結果のデータを出力する出力パスを、上記テスト対象回路から所定の出力端子へ設ける手段を有するテスト回路である。
【００２６】
【発明の実施の形態および実施例】
［第１の実施例］
本発明の一実施例であるテスト回路ＴＣ１は、再構成可能な論理回路をテストする回路であり、この再構成可能な論理回路の一例が、ＰＣＡ（ＰｌａｓｔｉｃＣｅｌｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）であり、まず、このＰＣＡについて簡単に説明する。
【００２７】
ＰＣＡは、任意の機能（オブジェクト）を実現するための可変部（ＰＰ：Ｐｌａｓｔｉｃ  Ｐａｒｔ）と、オブジェクト間や、外部との間で、通信を行う組込部（ＢＰ：Ｂｕｉｌｔ−ｉｎ  Ｐａｒｔ）とによって構成されている。
【００２８】
図１は、本発明の一実施例であるテスト回路ＴＣがテストする対象である再構成可能な論理回路の一例としてのＰＣＡの構造を示す図である。
【００２９】
図１に示すように、ＰＣＡセルは、再構成可能な論理回路の構造を持ち、通信路と可変部（ＰＰ）との制御を行い、このＰＣＡセルを２次元的に並べたものが、ＰＣＡである。
【００３０】
図２は、ＰＣＡにおけるオブジェクトとメッセージとの関係を示す図である。
【００３１】
図２に示すように、各組込部（ＢＰ）は、メッシュネットワークを構成し、可変部（ＰＰ）の機能設定や、可変部（ＰＰ）上に構成されるオブジェクト間のメッセージのルーティングを行う。また、各可変部（ＰＰ）も、隣接するセルの可変部（ＰＰ）と接続を持ち、複数のセルにまたがって任意の大きさのオブジェクトを構成することができる。
【００３２】
可変部（ＰＰ）は、４入力１出力のＬＵＴ（Ｌｏｏｋ−Ｕｐ  Ｔａｂｌｅ）の結合網によって構成されている。ＬＵＴは、４単位で基本セルを構成する。各基本セルは、四方に隣接する基本セルからの１ビットずつの出力信号をそのまま入力信号とする。
【００３３】
これらの４ビットの信号は、基本セル内の４つのＬＵＴ共通の入力信号となる。そして、これら各ＬＵＴの出力が、それぞれ、四方に隣接する基本セルの入力信号になる。これによって、基本セルの双方向隣接結合のネットワークを構成することができ、ＰＣＡにおいて、上記各ＰＣＡセルの可変部（ＰＰ）は、図１に示すように、８×８個の基本セルのアレイによって構成されている。つまり、１個の組込部（ＢＰ）が管理する対象の可変部（ＰＰ）は、６４個の基本セル（＝２５６個のＬＵＴ）であり、これがオブジェクトの最小単位となる。
【００３４】
この可変部（ＰＰ）上のＬＵＴに、メモリとしてデータを書き込むことによって、種々の論理回路を実現することができる。
【００３５】
図３は、上記実施例において、可変部（ＰＰ）上のＬＵＴに、メモリとしてデータを書き込むことによって実現される論理回路を示す図である。
【００３６】
各基本セルは、任意の組み合わせ論理を実現するばかりでなく、論理素子を結ぶ配線要素も実現する。所定の基本セルにおいて、たとえば、Ｗ方向からＥ方向への結線を実現するためには、図３（２）に示すように、基本セル内の４つのＬＵＴのうちのＥＬＵＴの１６個のメモリセルに対し、Ｗ方向からの入力（Ｗin）を透過させるように、データを書き込んでおけばよい。また、２つの隣接する基本セル内のＬＵＴで、フィードバックを構成することによって、非同期式レジスタやＭｕｌｌｅｒ−Ｃ素子を実現することができる。
【００３７】
なお、ＰＣＡの技術の概要、詳細な構造（ハードウェア）や実現される回路等は、「名古屋彰、他、特集論文２“プラスティックセルアーキテクチャ”ＮＴＴＲ＆Ｄ  Ｖｏｌ．４９  Ｎｏ．９  ｐｐ５１３−５４５  Ｓｅｐ．１０ｔｈ．２０００．」に、多くが述べられている。
【００３８】
図４は、本発明の一実施例であるテスト回路ＴＣのうちの１つ目のテスト回路ＴＣ１をテストした後に、２つ目のテスト回路ＴＣ２を複製する動作を説明する図である。
【００３９】
なお、テスト回路ＴＣは、１つ目のテスト回路ＴＣ１、２つ目のテスト回路ＴＣ２、……、ｎ個目のテスト回路ＴＣｎの総称であり、再構成可能な回路ＲＣＣ（たとえばＰＣＡ）上に設けられ、可変部（ＰＰ）の構造をテストするテスト回路に適用したものである。
【００４０】
テスト回路ＴＣ１は、テスト実行制御部１０１とテスト対象回路２０１とを有し、テスト回路ＴＣ２は、テスト実行制御部１０２とテスト対象回路２０２とを有し、……、テスト回路ＴＣｎは、テスト実行制御部１０ｎとテスト対象回路２０ｎとを有する。
【００４１】
テスト実行制御部１０１は、所定のテストパターンをテスト対象回路２０１に与える回路であり、図４に示すように、テスト回路ＴＣ２を複製する手段を有する回路である。つまり、テスト実行制御部１０１は、テスト実行制御部１０２とテスト対象回路２０２とを複製する手段を有する回路である。
【００４２】
また、テスト実行制御部１０２は、所定のテストパターンをテスト対象回路２０２に与える回路であり、テスト回路ＴＣ３を複製する手段を有する回路である。つまり、テスト実行制御部１０２は、テスト実行制御部１０３とテスト対象回路２０３とを複製する手段を有する回路である。
【００４３】
さらに、以下、上記と同様にして、テスト実行制御部１０（ｎ−１）は、所定のテストパターンをテスト対象回路２０（ｎ−１）に与える回路であり、テスト回路ＴＣｎを複製する手段を有する回路である。つまり、テスト実行制御部１０（ｎ−１）は、テスト対象回路２０ｎとテスト実行制御部１０ｎとを複製する手段を有する回路である。
【００４４】
すなわち、テスト実行制御部１０１、１０２、……、１０（ｎ−１）は、テスト実行制御部とテスト対象回路とを複製する手段の例である。
【００４５】
そして、テスト実行制御部１０１は、上記複製されたテスト回路ＴＣ２を起動する機能を有し、また、テスト結果のデータを出力する出力パスを、テスト対象回路２０２から所定の出力端子へ設ける機能を有する。
【００４６】
また、テスト実行制御部１０２は、上記複製されたテスト回路ＴＣ３を起動する機能を有し、また、テスト結果のデータを出力する出力パスを、テスト対象回路２０３から所定の出力端子へ設ける機能を有する。
【００４７】
そして、以下、上記と同様にして、テスト実行制御部１０（ｎ−１）は、上記複製されたテスト回路ＴＣｎを起動する機能を有し、また、テスト結果のデータを出力する出力パスを、テスト対象回路２０ｎから所定の出力端子へ設ける機能を有する。
【００４８】
すなわち、テスト実行制御部１０１、１０２、……、１０（ｎ−１）は、複製したテスト実行制御部（複製元のテスト実行制御部）が、複製されたテスト実行制御部を起動する手段の例である。
【００４９】
また、テスト実行制御部１０１、１０２、……、１０（ｎ−１）は、テスト結果のデータを出力する出力パスを、各テスト対象回路から所定の出力端子へ設ける手段の例である。
【００５０】
次に、上記実施例の動作について、説明する。
【００５１】
図５は、上記実施例におけるテスト動作を示すフローチャートである。
【００５２】
まず、テスト回路ＴＣのうちで、最初に準備する１つ目のテスト回路ＴＣ１が、論理回路としてプログラミングされる（Ｓ１）。このプログラミングにおいて、入力パス、出力パスが形成され、また、再構成可能な回路ＲＣＣの出力端子が形成される。
【００５３】
上記１つ目のテスト回路ＴＣ１を起動する場合、再構成可能な回路ＲＣＣの外部から、１回だけトリガ信号が入力され（Ｓ１）、この入力されたトリガ信号によって、１つ目のテスト回路ＴＣ１が起動される。
【００５４】
そして、テスト実行制御部１０１が、テスト対象回路２０１にテストパターンを与え、テストが実行される（Ｓ２）。このテストの結果が、テスト対象回路２０１の出力端子、出力パスを介して、再構成可能な回路ＲＣＣの出力端子まで運ばれる（Ｓ３）。そして、このテストの結果が、再構成可能な回路ＲＣＣの外部において期待値と比較され、テスト対象回路２０１の良否が判断される。
【００５５】
ここで、上記期待値の冒頭の一部が、組込部（ＢＰ）への指示命令の一部を兼ね、上記組込部（ＢＰ）への指示命令によって、出力データ用の出力パスが形成される。上記上記期待値の冒頭の一部に、たとえば、「８」、「９」、「ａ」、「ｂ」が含まれていれば、組込部（ＢＰ）は、自分の位置から、それぞれ、「西」、「北」、「東」、「南」にパスを設定する命令であると解釈する。なお、「ＮＴＴ  Ｒ＆Ｄ  Ｖｏｌ．４９  Ｎｏ．９  ２０００」の第５２２（４２）頁の表１には、ＰＣＡの組込部（ＢＰ）間メッセージの命令セットの例が記載され、ここには、パスの設定以外についても、記載されている。
【００５６】
したがって、上記実施例では、テスト回路ＴＣ２から出力端子に向かう出力パスを形成するに際して、その都度、出力パス形成のための命令を、再構成可能な回路ＲＣＣの外部から送り込む必要がない。
【００５７】
その出力パスが実現された後に、テストパターンに対するテスト対象回路２０１のテスト結果が、出力端子へ出力される。
【００５８】
上記のように、１つ目のテスト回路ＴＣ１についてのテストが終わると（Ｓ４）、テスト実行制御部１０１が、２つ目のテスト回路ＴＣ２を、１つ目のテスト回路ＴＣ１の隣に複製する（Ｓ５）。
【００５９】
２つ目のテスト回路ＴＣ２以降のテスト回路を複製する場合、再構成可能な論理回路ＲＣＣ上の範囲から外れるまで、テスト回路ＴＣ１と同じテスト回路を複製し、また、同じテストが繰り返される。
【００６０】
そして、複製された２つ目のテスト回路ＴＣ２のテスト実行制御部１０２に、１つ目のテスト回路ＴＣ１のテスト実行制御部１０１が起動トリガをかける。
【００６１】
上記のように、上記実施例では、再構成可能な回路ＲＣＣの外部端子から、トリガ供給のための入力パスを、テスト回路ＴＣ２に設ける必要がない。
【００６２】
ところで、上記第１の従来例（再構成可能な回路のテスト）では、テストパターンを外部端子からテスト対象回路へ入力するための入力パスを設ける必要があるが、しかし、上記実施例では、複製されたテスト実行制御部からテスト対象回路に、テストパターンが与えられるので、上記テストパターンを外部端子から入力する必要がなく、したがって、テストパターンを入力するための入力パスを設ける必要がない。
【００６３】
また、上記第２の従来例（ＢＩＳＴ）では、起動トリガを外部端子から入力する必要があるが、しかし、上記実施例において、最初のテスト回路ＴＣ１では、起動のためのトリガを外部から入力する必要があるものの、複製されたテスト回路（２つ目以降のテスト回路）ＴＣ２、ＴＣ３、……、ＴＣｎについては、複製元のテスト回路のテスト実行制御部から、起動トリガを受けるので、外部端子から起動トリガを入力する必要がない。
【００６４】
テスト実行制御部１０２が起動トリガを受けることによって、テスト実行制御部１０２が、テスト対象回路２０２にテストパターンを与え、テスト対象回路２０２内で形成された論理回路を経由し、テストが実行され（Ｓ２）、このテストの結果が、出力パスを介して、再構成可能な回路ＲＣＣの出力端子から出力される（Ｓ３）。
【００６５】
その後、テスト実行制御部１０２が第３のテスト回路ＴＣ３を、第２のテスト回路ＴＣ２の隣に、複製し（Ｓ５）、２つ目のテスト回路ＴＣ２のテスト実行制御部１０２がテスト実行制御部１０３に起動トリガをかけ、テスト対象回路２０３をテストし（Ｓ２）、このテストの結果が、出力パスを介して、再構成可能な回路ＲＣＣの出力端子から出力される（Ｓ３）。
【００６６】
そして、上記動作を繰り返し、第（ｎ−１）のテスト回路ＴＣ（ｎ−１）の隣に、テスト実行制御部１０（ｎ−１）が第ｎのテスト回路ＴＣｎを複製し（Ｓ５）、ｎ−１個目のテスト回路ＴＣ（ｎ−１）のテスト実行制御部１０（ｎ−１）が、テスト実行制御部１０ｎに起動トリガをかけ、テスト対象回路２０ｎをテストし（Ｓ２）、このテストの結果が、出力パスを介して、再構成可能な回路ＲＣＣの出力端子から出力される（Ｓ３）。
【００６７】
上記実施例においては、上記のように、再構成可能な回路ＲＣＣの外部端子と、テスト回路ＴＣ３、ＴＣ４、……、ＴＣｎのそれぞれとの間で、トリガ供給のための入力パスを設ける必要がない。
【００６８】
また、上記テストの結果が、出力パスを介して、再構成可能な回路ＲＣＣの出力端子から出力される（Ｓ３）と、再構成可能な回路ＲＣＣの外部において、上記出力されたテストの結果が、期待値と比較され、テスト対象回路２０１、２０２、……、２０ｎの良否が判断される。
【００６９】
図６は、上記実施例において、再構成可能な論理回路ＲＣＣ上の範囲（たとえばＰＣＡシステム上）で、テスト回路ＴＣ１の隣に、テスト回路ＴＣ２が複製された状態を示す図である。
【００７０】
図６では、左辺の入力端子から、１つ目のテスト回路ＴＣ１に対応する論理回路のプログラムが入力され、１つ目のテスト回路ＴＣ１のテスト実行制御部１０１を起動する起動トリガが入力される。これによって、テスト対象回路２０１から出力パスＯＰ１を介して、右辺の出力端子へテスト結果が出力される。
【００７１】
テスト対象回路２０１の右隣に、テスト回路ＴＣ２が複製される。同様にして複製されたテスト対象回路２０２は、出力パスＯＰ１と同じ経路の出力パスＯＰ２を通じ、結果を右辺端子へ出す。この場合、複製元のテスト実行制御部１０１が、複製したテスト回路ＴＣ２にトリガを送り、テスト回路ＴＣ２を起動させる。
【００７２】
以降、上記と同様に、さらにテスト回路ＴＣの複製と、トリガの供給と、テスト実行とを、再構成可能な回路ＲＣＣ（ＰＣＡシステム）の右辺へ到達するまで繰り返す。
【００７３】
また、上記実施例において、起動トリガは、１つ目のテスト回路ＴＣ１にのみ、印加し、２つ目のテスト回路ＴＣ２以降については、その１つ前のテスト回路から起動トリガが供給され、つまり、再構成可能な回路ＲＣＣから、２つ目のテスト回路ＴＣ２以降に、起動トリガを供給する必要がない。
【００７４】
上記実施例によれば、比較的小規模なテスト回路ＴＣによるテストを繰り返し行うことによって、極めて大きな再構成可能な論理回路ＲＣＣの範囲の全体（ＰＣＡシステムの全体）を、テストすることができる。
【００７５】
極めて大きな再構成可能な論理回路ＲＣＣの範囲の全体（ＰＣＡシステムの全体）を一度にテストするテスト回路を準備する場合よりも、小規模なテスト回路ＴＣを準備する場合が、はるかに簡単であり、つまり、テスト回路の設計、検証、テスト等の実行が、はるかに簡単である。
【００７６】
ところで、再構成可能な論理回路をテストする第１の従来方法では、ＰＣＡシステム（再構成可能な論理回路）の範囲で、同じテスト回路を、位置を移してテストする場合に、テストパターンをテスト対象回路に与える入力パスや、テスト結果を出力する出力パスを変更しなければならない。
【００７７】
しかし、上記実施例では、テスト対象回路２０２にテストパターンを与えるテスト実行制御部１０２が、テスト回路ＴＣ２を複製することに伴い、複製されるので、入力パスを別途設ける必要がない。また、上記実施例では、上記期待値に応じて出力パスを生成する命令の意味を持たせる等のように、テストパターンを工夫することによって、テスト毎に、出力パスが自動的に作られる。
【００７８】
次に、上記実施例について、ＰＣＡに基づくデバイスシミュレーションを例にとって、具体的な動作を説明する。
【００７９】
まず、ＰＣＡに基づくシュミレーションの概要、図面の説明については、文献「小西ほか、“ＰＣＡの実現を支援するソフトウェア”第１６回パルテノン研究会資料集、Ｖｏｌ１６、ｐ４−１２、（財）青梅佐藤財団パルテノン研究会発行、２０００年５月１９日」に記載されている。
【００８０】
図７は、上記実施例において、論理回路（テスト回路ＴＣ１）をプログラミングした後における初期の回路を示す図である。
【００８１】
図８は、図７に示す状態と同じ状態を簡略して示した図である。
【００８２】
図７の左上隅に、テスト回路ＴＣ１がプログラムされている。テスト実行制御部１０１とテスト対象回路２０１とによって、テスト回路ＴＣ１が構成されている。この図７において、細かな回路の配線の１本毎に、レジスタやゲートが１個ずつ設けられている。しかし、以降は、図８に示す起動後の可変部（ＰＰ）にあるように、抽象的に簡略化した表示として、シミュレーションの動作途中の状態図を使って説明する。
【００８３】
図９は、上記実施例において、テスト時の組込部（ＢＰ）を示す図である。
【００８４】
図８に示す起動後の可変部（ＰＰ）と同じ１つ目のテスト回路ＴＣ１から出力パスが外部端子へ伸び、データを送っている様子が示されている。
【００８５】
テスト実行制御部１０１に格納されているテストパターンが、テスト対象回路２０１に与えられている様子も見て取れる。つまり、図９において、テスト回路のテスト実行制御部中に描かれている太い横棒の部分のデータが読み出される。
【００８６】
図１０は、上記実施例において、１つ目のテスト回路ＴＣ１に出力する複製命令を示す図である。
【００８７】
テスト回路ＴＣ１のテストが終わると、図１０に示す複製命令のように、テスト実行制御部１０１から、テスト回路ＴＣ１を複製する命令列と、この複製された回路を起動する命令列とが発行される。テスト実行制御部１０１からテスト回路ＴＣ１へ戻る経路上に描かれている英数字は、上記命令列である。
【００８８】
図１０において、英数字は、テスト時に組込部（ＢＰ）層上で転送されるデータが１６進表記された値であり、命令の区切りを意味する。なお、白丸は、高から低への信号遷移を表し、命令の区切りを意味する。
【００８９】
そして、上記命令列がテスト実行制御部１０１から全て発行され、その命令列に従って、テスト機構（テスト回路ＴＣ１全体）が右隣へ複製される。
【００９０】
図１１は、上記実施例において、複製中の組込部（ＢＰ）を示す図であり、テスト回路ＴＣ１の隣りのテスト回路におけるテスト対象回路の最終に近い部分を複製している途中を示す図である。
【００９１】
図１１において、テスト回路ＴＣ１の情報を吸い出し、複製される領域へ、吐き出している様子を示している。つまり、図１１において、テスト回路ＴＣ１のテスト対象回路２０１中に描かれている太い横棒が、テスト対象回路２０１を読み出し、テスト回路ＴＣ１の右側に描かれている太い横棒が、上記読み出されたテスト対象回路２０１を、テスト回路ＴＣ１の右側に、複製する途中で書き込んでいることを示している。
【００９２】
図１２は、上記実施例において、図１１に示す複製の途中のタイミングと同じタイミングにおける複製中の可変部（ＰＰ）を示す図である。
【００９３】
図１２において、テスト対象回路２０２の最終に近い部分が、まだ複製されず、複製途中であることを示している。
【００９４】
その後、複製が終ると、図１０に示す複製命令によって発行された命令列の後半部で複製された回路が起動される。
【００９５】
図１３は、上記実施例において、テスト回路ＴＣが１回複製された後に、動作中の可変部（ＰＰ）を示す図である。
【００９６】
図１２に示す可変部（ＰＰ）で複製途中であった部分も、図１３に示す状態では、全て複製が終わり、図１２に示す配線と比較すると、図１３に示す回路内の配線が変化し、起動命令によってテスト回路が動作している。
【００９７】
図１４は、図１２に示すテスト回路ＴＣ１、ＴＣ２を拡大して示す図である。
【００９８】
図１５は、図１３に示すテスト回路ＴＣ１、ＴＣ２を拡大して示す図である。
【００９９】
なお、図１４、図１５においては、動作している配線を破線で示し、動作していない配線を実線で示してある。
【０１００】
図１４に示す状態は、テスト回路ＴＣ２を複製する途中の状態であり、テスト回路ＴＣ２の配線のほとんどが動作していない（ほとんどが実線で示されている）が、図１５に示す状態は、テスト回路ＴＣ２の複製が終了し、可変部（ＰＰ）が動作中の状態であり、テスト回路ＴＣ２中の左上の部分、右下の部分がほとんど動作し（ほとんどが破線で示され）、右上の部分の一部が動作している（一部が破線で示されている）。
【０１０１】
このテスト回路の動作は、図７、図８、図９で示した第１のテスト回路ＴＣ１におけるテスト動作と同じ動作である。
【０１０２】
図１６は、上記実施例において、１回複製を行った後（第２のテスト回路ＴＣ２が複製された後）におけるテスト時の組込部（ＢＰ）を示す図である。
【０１０３】
図１６に示す第２のテスト回路ＴＣ２におけるテスト動作は、図９に示す第１のテスト回路ＴＣ１におけるテスト動作と同じである。つまり、図１６に示す第２のテスト回路ＴＣ２におけるテスト実行制御部１０２から、テスト対象回路２０２ヘテストパターンが与えられ、テスト対象回路２０２から、図９における出力端子と同じ出力端子まで、出力パスが延び、データが送り出される。
【０１０４】
図１７は、上記実施例において、複数回、テストを行った後における可変部（ＰＰ）を示す図である。
【０１０５】
上記動作を繰り返すと、図１７に示す複数回テスト後の可変部（ＰＰ）のようになる。複製後に動作中のテスト回路ＴＣｋが、一番右（出力端子に近い側）に存在し、その左隣には、その１つ前に複製されたテスト回路ＴＣ（ｋ−１）、さらに、その前に複製されたテスト回路ＴＣ（ｋ−２）が、その左隣に続いている。
【０１０６】
図１８は、上記実施例において、複数回、テストした後に、複製命令を発行した組込部（ＢＰ）を示す図である。
【０１０７】
勿論、動作の様子を見てみると、図１８に示す複数回、テストした後に複製命令を発行した組込部（ＢＰ）では、一番右側で、テスト回路ＴＣｋがさらに右隣へ回路を複製しようとして、図１０に示す複製命令と同じように、命令列を出している様子が確認できる。
【０１０８】
図１７に示す可変部（ＰＰ）と同様に、図１８において、組込部（ＢＰ）が、１つ前に複製された回路ＴＣ（ｋ−１）の左隣に設けられ、さらに前に複製された回路ＴＣ（ｋ−２）が、その左隣へ続いている。
【０１０９】
上記のように、デバイスシミュレーションの表示を参照しながら、回路が部分的に左から右へ、テスト回路ＴＣを１つ複製する度に、新たなテスト対象回路がテストされる。
【０１１０】
上記実施例において、テスト対象回路２０１は、テスト回路ＴＣ１を４等分に分割した場合、その４分割のうちの１つの部分であり、つまり、テスト回路ＴＣ１の１／４の面積の部分である。したがって、テスト回路ＴＣ１に着目すれば、テスト回路ＴＣ１の右上部分のみが、テスト対象回路２０１としてテストされ、つまり、テスト回路ＴＣ１の１／４だけが、テストされたことになる。テスト回路ＴＣ１の残りの３／４の部分についても上記テストを実行しなければ、テスト回路ＴＣ１の全てについてテストしたことにはならない。
【０１１１】
テスト回路ＴＣ１の残りの３／４の部分について上記テストするには、テスト回路ＴＣ１の左上部分にテスト対象回路２０１を改めて設定し、テストを行い、また、テスト回路ＴＣ１の左下部分にテスト対象回路２０１を改めて設定し、テストを行い、さらに、テスト回路ＴＣ１の右下部分にテスト対象回路２０１を改めて設定し、テストを行えばよい。つまり、テスト回路ＴＣ１の中心点を中心として、図１０に示すテスト回路ＴＣ１の状態を、９０度ずつ回転し、その都度、上記テストを実行すれば、テスト回路ＴＣ１の全てについてテストしたことになる。
【０１１２】
なお、図１０において、命令列を上下方向に出すことができ、また、テスト回路ＴＣ１のうちで、一番下や真ん中等のように、任意の位置にテスト対象回路を配置することができるので、上記のように９０度回転した状態でテストすることができる。
【０１１３】
また、テスト回路ＴＣ２、ＴＣ３、……、ＴＣｎ等、テスト回路ＴＣ１以外のテスト回路についても、上記のように９０度づつ回転した状態でテストすると、再構成可能な回路ＲＣＣの全ての部分について、洩れなくテストすることができる。
【０１１４】
上記実施例によれば、テスト回路自身の複製によって均質な構造を複製し、テストするので、テストを行うべき全体の部分が大きくても、同じ手法で対応可能である。つまり、テストにおける拡張性に優れている。
【０１１５】
また、上記実施例によれば、一度のテストにおけるテスト対象回路を小さな回路規模に押えることができるので、テストの準備が簡単であり、テストそのものの仕方が簡単である。つまり、テストが単純になる。
【０１１６】
さらに、上記実施例によれば、入力端子からテスト対象回路まで入力パスを通じてテストパターンを入力する必要がなく、加えてテスト結果のデータを出力端子まで運ぶための出力パスを、テストする度にプログラム等によって設定し直す必要がない。つまり、テストにおけるパスが簡略になる。
【０１１７】
また、上記実施例では、１つ目のテスト回路ＴＣ１のテスト実行制御部１０１に、テストパターンが格納され、このテスト実行制御部１０１が順次複製されるので、このテスト実行制御部の複製に伴って、テストパターンも複製され、したがって、１つ目のテスト回路ＴＣ１〜最後のテスト回路ＴＣｎをテストするに際して、再構成可能な回路ＲＣＣの外部から、テストパターンを入力する必要が全くない。このために、再構成可能な回路ＲＣＣの全部についてテストする時間が、非常に短くなり、つまり、再構成可能な回路ＲＣＣについて、高速にテストすることができる。なお、再構成可能な回路ＲＣＣを使用する際の動作速度と同じ速度で、上記テストが高速に実行される。
【０１１８】
また、１つ目のテスト回路ＴＣ１にのみ、再構成可能な回路ＲＣＣの外部から、トリガ供給用の専用入力パスを介して、トリガを供給し、２つ目のテスト回路ＴＣ２以降には、テスト回路ＴＣ１から順次、トリガが供給されるようにしてもよい。
【０１１９】
さらに、ＢＩＳＴによる従来例では、ＬＳＩにテスト制御部が予め設けられ、テストが終了しても、そのテスト制御部が、そのまま残り、テスト制御部以外の用途には使用できない（オーバーヘッドが生じる）が、上記実施例では、テストが終了すると、テスト実行制御部を、テスト実行制御部以外の用途に使用することができる。
【０１２０】
なお、上記実施例では、テスト実行制御部１０１からテスト対象回路２０１にテストパターンを供給し、このテストパターンがテスト対象回路２０１内の論理回路を経由し、出力パスを介して、再構成可能な回路ＲＣＣの出力端子に送られ、再構成可能な回路ＲＣＣの外部において、所定の期待値と比較され、この比較結果に応じて、テスト回路ＴＣ１の良否が判別されている。つまり、テスト実行制御部１０１が比較動作を実行していない。この代わりに、テスト実行制御部１０１が比較動作を実行するようにしてもよい。
【０１２１】
つまり、テスト実行制御部１０１からテスト対象回路２０１にテストパターンを供給し、このテストパターンがテスト対象回路２０１内の論理回路を経由し、テスト実行制御部１０１に戻り、このテスト実行制御部１０１に戻ったテストパターンと、所定の期待値とを、テスト実行制御部１０１において比較し、この比較結果に応じて、テスト回路ＴＣ１の良否を判別し、この判別結果を、出力パスを介して、再構成可能な回路ＲＣＣの出力端子に送るようにしてもよい。この場合、テスト実行制御部１０１には、上記比較を行う比較回路を設ける必要があり、また、上記期待値を保持する機能を設ける必要がある。
【０１２２】
なお、上記の場合、テスト実行制御部１０２、１０３、……、１０ｎについても、テスト実行制御部１０１における上記の場合と同様に、上記比較回路、上記期待値を保持する機能を設ける。そして、テスト回路ＴＣ２、ＴＣ３、……、ＴＣｎの複製に伴って、上記比較回路、上記期待値を保持する機能も複製されるようにする。
【０１２３】
［第２の実施例］
ところで、上記第１の実施例において、テスト回路が、テスト実行制御部とテスト対象回路とによって構成され、複製元のテスト回路と、複製先のテスト回路とが、互いに重なることなく複製される。したがって、１つのテスト回路のうちで、テスト実行制御部として複製された領域は、テスト対象回路として動作せず、このテスト対象回路として動作しない部分が、テストされない領域として残るという課題がある。
【０１２４】
つまり、たとえば、左のブロックに、テスト実行制御部が存在し、このテスト実行制御部の右のブロックに、テスト対象回路が存在するテスト回路を使用し、横方向（右方向）にテスト回路を複製する場合、左端から数えて、奇数番目のブロックを、テスト実行制御部が占めるので、この領域が、テストされない領域として残る。
【０１２５】
一方、テスト対象回路が複製される偶数列においても、縦方向へはテストされない領域が残され、これらのテストされない領域をテストするために、別のテスト回路を用意する必要がある（テスト回路を外部から改めて読み込み、この読み込んだテスト回路に基づいて、テスト、複製を繰り返す必要がある。）という課題がある。
【０１２６】
ここで、上記テスト回路の外部から改めて読み込む場合、テスト回路の書き込みの位置を（たとえば３、４行目に）変えるか、または外部の読み込み位置を変えて、結果としてテスト回路の位置を変えて、テスト回路の外部から改めて読み込む。
【０１２７】
また、互いに異なる複数のテスト対象回路を使用してテストしようとする場合、上記複数のテスト対象回路のうちでテスト対象回路毎に、個別にテスト対象回路を準備し、個別にテストを実施する必要があり、この個別にテスト回路を準備することが煩雑であり、全体のテスト時間が長くなるという課題がある。つまり、１つ目のテスト対象回路について、テスト、複製を行った後に、２つ目のテスト対象回路について、外部から読み込み、テスト、複製を行い、これらの動作を、テストすべきテスト対象回路の数だけ、繰り返す必要があり、この動作が煩雑であり、全体のテスト時間が長くなるという課題がある。
【０１２８】
さらに、テスト対象回路が複数ブロック（たとえば２×２ブロック）で構成されている場合、テスト回路の複製先の一部と複製元とが重なるように複製したとしても、テスト対象回路が前に試験したテスト対象回路と重なりを持たないとテストできない領域が残る場合があるという課題があり、上記テストされない領域をテストするためには、別のテスト回路をさらに用意する必要があるという課題がある。
【０１２９】
第２の実施例以下の実施例では、一度のテストでほぼ全ての領域をテストすることができ、テストを効率化（合理化）することができるテスト回路を提供することを目的とするものである。
【０１３０】
第１の実施例と、これから述べる第２〜５の実施例とが原理的に違っている点は、複製のやり方である。第１の実施例は、テスト回路全体を１つとして一括した複製を行う実施例である。これに対して、第２〜５の実施例は、テスト実行制御部の複製とテスト対象回路の複製とを個別に行うことを基本とする実施例である。
【０１３１】
本発明の第２の実施例は、テスト回路を複製する場合、テスト回路の複製先の一部を、テスト回路の複製元と重ねるようにして複製する実施例である。
【０１３２】
図２２は、本発明の第２の実施例の説明図である。
【０１３３】
図２２（１）〜（３）は、第１の実施例の説明図であり、第２の実施例を説明するために記載されている図である。
【０１３４】
図２２（１）は、２×２ブロックで構成されているテスト回路を示す図であり、複製元のテスト回路を示す図である。このテスト回路は、メモリＭとフィルタ回路Ｆとを有するテスト実行制御部と、テスト対象回路Ｔとによって構成されている。この例では、１つのテスト回路に２つのブロックのテスト対象回路Ｔが設けられている。
【０１３５】
図２２（２）は、第１の実施例において、テスト回路内の２つのテスト対象回路Ｔがテストされた後に、その右隣に、テスト回路を複製した状態を示す図である。
【０１３６】
図２２（３）は、第１の実施例において、１回目に複製されたテスト回路内のテスト対象回路Ｔがテストされた後に、その右隣に、テスト回路を２回目に複製した状態を示す図である。
【０１３７】
ここで、メモリＭとフィルタ回路Ｆとが複製された領域（テスト実行制御部が複製された領域）には、テスト対象回路Ｔが複製されていない。
【０１３８】
したがって、これらの領域（テスト実行制御部が複製された領域）をテストするには、別のテスト回路（たとえば、図２２（１）に示すテスト回路において、テスト実行制御部とテスト対象回路との位置が左右反転しているテスト回路）を用いて、テストを実行しなければならない。つまり、第１の実施例では、テスト回路を連続して重なりなく複製するので、一列おきに、飛び飛びにテストされていない領域が残り、したがって、別のテスト回路を外部から読み込み、使用する等して、外部からの読み込みを含めたテストを、２度実行する必要がある。
【０１３９】
図２２（４）〜（６）は、第２の実施例の特徴を説明する図である。
【０１４０】
図２２（４）は、図２２（１）に示したテスト回路と同じテスト回路であり、テスト回路を複製する前の状態を示す図である。
【０１４１】
図２２（５）は、第２の実施例において、１回目にテストを実行した後、１回目の複製を実行した後の状態を示す図である。この複製において、テスト回路の複製先の半分が、テスト回路の複製元と重なるように複製されている。つまり、上記重なるテスト回路の複製先の半分は、上記テスト回路の複製先におけるテスト実行制御部である
図２２（６）は、第２の実施例において、１回目に複製したテスト回路をテストし、２回目の複製を実行した後の状態を示す図である。この場合も、テスト回路の複製先の半分が、テスト回路の複製元と重なるように複製されている。
【０１４２】
したがって、複製先におけるテスト実行制御部は、複製元におけるテスト対象回路Ｔが存在していた領域に複製され、テスト対象回路Ｔのみが常に新しい領域（まだ複製されていない領域）に複製される。
【０１４３】
なお、テスト回路の複製先の半分が、上記テスト回路の複製元と重なる場合も含めて、テスト回路の複製先の一部が、上記テスト回路の複製元と重なるように複製すればよい。
【０１４４】
つまり、第２の実施例は、テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製し、しかも、テスト回路の複製先の一部が、上記テスト回路の複製元と重なるように複製する手段を有するテスト回路である。
【０１４５】
上記のように、複製元のテスト回路と重なりをもって複製先のテスト回路を複製することによって、複製された領域の殆ど全ての領域をテストすることができる。
【０１４６】
図２３は、第２の実施例において、シミュレータで、その複製とテストとを実行する様子を示す図である。
【０１４７】
図２４は、図２３の拡大図である。
【０１４８】
図２３における右端に示す上下同じ回路が、テスト対象回路Ｔであり、その上側の回路は、その回路内の配線が全て実線で描かれ、この回路が動作していない（停止状態である）ことを示しており、その下側の回路は、殆どの配線が淡い色の線（図２４の拡大図では破線）で描かれ、信号が伝播し、テストを実行中であることを確認することができる。
【０１４９】
また、テスト対象回路Ｔの左がテスト実行制御部であり、テスト実行制御部における上側がメモリＭであり、テスト実行制御部における下側がフィルタ回路Ｆである。同じテスト実行制御部（メモリＭとフィルタ回路Ｆ）が３つ横に並んでおり、テスト回路を３回複製したことがわかる。また、これら３つのテスト実行制御部のうちで、右側（テスト動作をしているテスト対象回路の左隣）のフィルタ回路Ｆだけが、一部の配線が淡い色（図２４の拡大図では破線）である。これは、右隣のテスト対象回路Ｔのテスト動作を制御していることを示している。
【０１５０】
［第３の実施例］
本発明の第３の実施例は、テスト対象回路のみの複製を行う実施例である。
【０１５１】
図２５は、本発明の第３の実施例の説明図である。
【０１５２】
図２５（１）、（２）、（３）は、図２２（１）、（２）、（３）と同じ図である。この場合において、テスト回路が複製された領域のうちで、テストされる領域の割合、つまりカバー率Ｒは、テスト回路毎に、テスト実行制御部とテスト対象回路Ｔとを併せて一緒に複製するので、
Ｒ＝テスト対象回路／（テスト実行制御部＋テスト対象回路）
である。
【０１５３】
ここで、第１の実施例では、横方向のみにテスト回路の複製を繰り返すので、テストできない領域は、テスト実行制御部（メモリＭとフィルタ回路Ｆの箇所）だけでなく、横方向にテスト回路を複製する２行分を除く縦方向の全ての領域である。この２行分を除く領域について、外部からテスト回路を再び読み込み、テストし、複製する動作を繰り返す必要がある。
【０１５４】
ここで、上記外部からテスト回路を再び読み込む場合、テスト回路の書き込みの位置を３、４行目に変えるか、または、外部の読み込み位置を変えて、結果としてテスト回路の位置を同様に変える。
【０１５５】
図２５（４）は、テスト実行制御部とテスト対象回路Ｔとを併せたテスト回路を複製し、しかも、テスト対象回路Ｔのみを縦方向に複製する実施例を示す図である。
【０１５６】
図２５（４）は、左端のテスト実行制御部（メモリＭとフィルタ回路Ｆ）が、その右隣の最上部に存在している２つのテスト対象回路Ｔをテストした後に、この２つのテスト対象回路Ｔのみを、１つ下隣に複製し、この複製されたテスト対象回路Ｔをテストし、上記複製されたテスト対象回路Ｔの下隣へ行うテスト対象回路Ｔの複製と、この複製されたテスト対象回路Ｔのテストとを必要な回数、繰り返す。
【０１５７】
図２５（４）に示す実施例では、２つのテスト対象回路Ｔを、それぞれ２回複製し、縦方向へ合計６つのテスト対象回路Ｔをテストする。このように、テスト対象回路Ｔのみの複製と、この複製されたテスト対象回路Ｔのテストとを実行した後に、最初のテスト回路（テスト実行制御部とテスト対象回路Ｔとを併せたもの）を右隣へ複製する。そして、再びテストし、テスト対象回路Ｔのみの下隣への複製と、この複製されたテスト対象回路Ｔのテストとを、何回か繰り返す。この図では、テスト回路を２回複製し、２回目に複製されたテスト回路のテスト対象回路Ｔが、１回目の複製をし終えた段階までを表示してある。
【０１５８】
上記のように、第２の実施例であるテスト回路の横方向の複製に加えて、第３の実施例であるテスト対象回路Ｔのみの縦方向への複製を実行することによって、テストによるカバー率Ｒは、
Ｒ＝ｋ×テスト対象回路／（テスト実行制御部＋ｋ×テスト対象回路）
であり、改善することができる。
【０１５９】
なお、ｋは、テストを実施したテスト対象回路の数を指す。つまり、各複製が重なりを持たない条件の下では、１箇所のテスト実行制御部について、テスト実行制御部を複製した直後から、次のテスト実行制御部を複製する直前までの間に、複製されたテスト対象回路の数を、ｋとすることができる。
【０１６０】
図２５（４）に示す例の場合では、テスト実行制御部を複製した後に、２つのテスト対象回路を縦方向に２回複製し、テスト実行制御部を複製する直前に、２つのテスト対象回路を横方向へ１回複製していることを加える。したがって、ｋ＝２×２×（縦方向の複製によるテスト対象回路数）＋１×２×（横方向の複製によるテスト対象回路数）＝６である。
【０１６１】
図２６は、第３の実施例において、テスト対象回路Ｔのみを縦方向に複製し、しかも、複製先の一部が複製元と重なるようにテスト回路を横方向に複製した場合におけるシミュレーションの状態を示す図である。
【０１６２】
図２７は、図２６の拡大図である。
【０１６３】
図２６中、その左端が、メモリＭとフィルタ回路Ｆとを有するテスト実行制御部であり、その右隣に、同じテスト実行制御部が２つ複製され、テスト実行制御部を２回、複製した状態であることを示している。この中で、特に、左から３番目に存在しているテスト実行制御部のフィルタ回路Ｆだけ、その一部の配線が淡い色（図２７の拡大図では破線）に変化し、テスト実行制御部が動作している状態を示している。
【０１６４】
また、図２６中、右端に、テスト対象回路が４つ縦に並んでいる。これらのうちで、下に並ぶテスト対象回路Ｔは、テスト対象回路Ｔのみの複製が行われている。特に、上から４つ目のブロックに複製されたテスト対象回路（一番下のテスト対象回路）Ｔは、一部の配線が淡い色（図２７の拡大図では破線）に変化し、上記動作中のテスト実行制御部によってテスト動作している状態を示している。
【０１６５】
また、左から２番目、３番目の列の上から３番〜６番目のブロックに複製されたテスト対象回路Ｔは、最初のテスト対象回路Ｔのみを数回、複製し、テスト回路（テスト実行制御部とテスト対象回路Ｔとを併せて）を１回複製した後に、数回に亘りテスト対象回路Ｔのみを複製したテスト対象回路である。
【０１６６】
ここで、図２６（図２７）のテスト途中の時点での結果において、テストを実施したテスト対象回路の総数ｋは、左から２、３列目に位置しているテスト対象回路の数と、縦方向の６×横方向の２と、４列目のテスト対象回路の数と、縦方向の４とを加え、ｋ＝１６である。それに、テスト実行制御部の全て複製された箇所は、テスト対象回路が既に位置していた領域であるので、初の１箇所のテスト実行制御部が存在している領域のみテストが実施されていない。
【０１６７】
したがって、この時点でのカバー率Ｒ＝１６×テスト対象回路／（テスト実行制御部＋１６×テスト対象回路）となる。
【０１６８】
上記のように、１つのテスト対象回路Ｔによって、横方向のみならず縦方向にも全面へ、テスト対象回路Ｔを複製し、これによって、テストをより効率的に行うことができる。
【０１６９】
つまり、第３の実施例は、テスト対象回路が、互いに異なる複数のテスト対象回路であり、１つのテスト実行制御部が、上記互いに異なる複数のテスト対象回路について、複製とテストとを、繰り返して実行する例である。
【０１７０】
［第４の実施例］
本発明の第４の実施例は、互いに異なる複数のテスト対象回路を、ほぼ同時に扱う（複製し、テストする）実施例である。
【０１７１】
図２８は、本発明の第４の実施例の説明図である。
【０１７２】
図２８（１）は、図２５（４）に示した第３の実施例と同じ図である。図２８（１）に示す第３の実施例は、テスト回路を重ねながら横方向へ複製し、しかも、テスト対象回路Ｔのみを縦方向へ行う複製をｋ回実行することによって、テストの効率化を図ることができる。ところが、互いに異なる複数のテスト対象回路でテストするには、異なる複数のテスト対象回路をそれぞれ用意し、個別に複製し、テストする必要があり、この個別に複製、テストを繰り返す作業が煩雑である。
【０１７３】
つまり、１つ目のテスト対象回路について、テスト、複製を行った後に、２つ目のテスト対象回路について、外部から読み込み、テスト、複製を行い、これらの動作を、テストすべきテスト対象回路の数だけ、繰り返す必要があり、この動作が煩雑であり、全体のテスト時間が長くなるという課題がある。
【０１７４】
図２８（２）〜（４）に示す第４の実施例は、テスト実行制御部（メモリＭとフィルタ回路Ｆ）の右隣の列に、互いに異なるテスト対象回路Ｔ１〜Ｔ５を、テスト対象回路Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５の順で、上から縦に並べて配置し、この場合、テスト対象回路が複製されていない領域、つまり、「空」と表示されている領域を設ける。そして、テスト対象回路Ｔ１〜Ｔ５をテストし、「空」領域を使用して、テスト対象回路Ｔ１〜Ｔ５を、１つづつ位置を移動させて複製し、テストし、これを繰り返す実施例である。
【０１７５】
すなわち、第４の実施例において、テスト実行制御部（メモリＭとフィルタ回路Ｆ）の右隣の列に、テスト対象回路Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５の順で、上から縦に並べて配置した後に、テスト対象回路Ｔ１〜Ｔ５をそれぞれテストし、これらのテスト対象回路を１つ下に移動するように複製する。すなわち、「空」領域にテスト対象回路Ｔ５を複製し、複製元のテスト対象回路Ｔ５が存在している領域に、テスト対象回路Ｔ４を複製し、複製元のテスト対象回路Ｔ４が存在している領域に、テスト対象回路Ｔ３を複製し、複製元のテスト対象回路Ｔ３が存在している領域に、テスト対象回路Ｔ２を複製し、複製元のテスト対象回路Ｔ２が存在している領域に、テスト対象回路Ｔ１を複製する。そして、この状態で、テスト対象回路Ｔ１〜Ｔ５をテストする。このテストによって、１つの領域で、２つのテスト対象回路によるテストが実行されたことになる。
【０１７６】
ここで、複製元のテスト対象回路Ｔ１が「空」領域と同じ意味を持つ。つまり、複製元のテスト対象回路Ｔ１に他のテスト対象回路を複製しても、複製先のテスト対象回路Ｔ１が別に存在するので、テスト対象回路Ｔ１を別に複製することに支障がないという意味で、「空」領域と同じ意味を持つ。この「空」領域と同じ意味を持つ領域に、テスト対象回路Ｔ５を複製し、複製元のテスト対象回路Ｔ５が存在している領域に、テスト対象回路Ｔ４を複製し、複製元のテスト対象回路Ｔ４が存在している領域に、テスト対象回路Ｔ３を複製し、複製元のテスト対象回路Ｔ３が存在している領域に、テスト対象回路Ｔ２を複製し、複製元のテスト対象回路Ｔ２が存在している領域に、テスト対象回路Ｔ１を複製する。そして、この状態で、テスト対象回路Ｔ１〜Ｔ５をテストする。このテストによって、１つの領域で、３つのテスト対象回路によるテストが実行されたことになる。
【０１７７】
上記のように、「空」領域と同じ意味を持つ領域に、テスト対象回路Ｔ５を複製し、順次、テスト対象回路Ｔ４〜Ｔ１を移動させるように複製し、テストすると、結局、１つの領域で、５つのテスト対象回路によるテストが実行されたことになる。
【０１７８】
このようにして、１つの領域で、５つのテスト対象回路によるテストが終了すると、図２８（３）に示すように、テスト対象回路は、上から、Ｔ２、Ｔ３、Ｔ４、Ｔ５、「空」、Ｔ１の順で、位置する。ここで、一番下に位置するテスト対象回路Ｔ１を、１列右の一番上のブロックに複製し、図２８（４）に示すように、テスト対象回路Ｔ２、Ｔ３、Ｔ４、Ｔ５の順で、複製先のテスト対象回路Ｔ１の下に連ねて複製する。
【０１７９】
そして、テスト実行制御部（メモリＭとフィルタ回路Ｆ）を右隣の列に、複製し、上記複製されたテスト対象回路Ｔ１〜Ｔ５をテストする。
【０１８０】
上記のように、互いに異なる複数のテスト対象回路を、縦方向に並べ、テストし、複製によって縦方向へ移動させるように複製し、テストし、これを繰り返し、その列における異なるテスト対象回路のテストが全て完了すると、横方向へ、テスト実行制御部とテスト対象回路とを併せて複製する。このような動作によって、いくつも異なる種類のテスト対象回路をまとめて１度にテストすることが可能になる。
【０１８１】
つまり、互いに異なる複数のテスト対象回路についてテストする場合、テスト対象回路を含むテスト回路を１回だけ、外部から読み込めば足り、テスト作業が、極めて効率化される。
【０１８２】
図２９は、第４の実施例において、互いに異なる種類のテスト対象回路を扱い、これらをまとめて１度でテストする場合におけるシミュレータ上の状態を示す図である。
【０１８３】
左端の上の２つのブロックが、メモリＭであり、左端の最下ブロック（上から３つ目のブロック）が、フィルタ回路Ｆであり、両者を併せて、１つのテスト実行制御部を構成している。
【０１８４】
図３０は、図２９の拡大図である。
【０１８５】
また、図２９中、右端の５つのブロックは、全て互いに異なるテスト対象回路Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５である。これら５つのテスト対象回路Ｔ１〜Ｔ５うちで、最下ブロック（上から５つ目のブロック）のテスト対象回路Ｔ５の一部配線が、淡い色（図３０の拡大図では破線）で示され、テスト動作をしている状態を示している。
【０１８６】
さらに、図２９中、右から２番目の行の上から３番目のフィルタ回路Ｆは、配線が淡い色（図３０の拡大図では破線）で示され、最も右下のテスト対象回路Ｔ５をテストする制御動作を実行していることを示している。
【０１８７】
また、図２９中、右から２列目と３列目の上２つのブロックであるメモリＭと、上から３番目のフィルタ回路Ｆとを併せたテスト実行制御部は、１回目の複製と２回目の複製とによって複製されたものである。また、右から２列目、３列目における下３つ分のテスト対象回路は、異なるテスト対象回路を１つずつ複製によって移動しながらテストした後に、複製の上書きがされていない部分である。
【０１８８】
なお、第４の実施例は、異なる種類のテスト対象回路を扱う場合の実施例である。しかし、同じ第４の実施例において、図２８（２）に示すテスト対象回路のみの複製に関して、この１つ１つのテスト対象回路に着目して考えると、先に述べた第３の実施例の縦方向に、テスト対象回路のみを複製することが、全てのテスト対象回路のそれぞれに適用されていることが分かる。
【０１８９】
第１〜４の実施例を単独で実施してもよく、また、第１〜４の実施例のうちの複数の実施例を組み合わせて実施するようにしてもよい。この組み合わせて実施した場合におけるテストの効率は、相乗的に向上し、この点は、注目すべき重要なことである。
【０１９０】
［第５の実施例］
第５の実施例は、複製されたテスト対象回路同士の間における隙間を埋めるように、テスト対象回路を複製する実施例である。
【０１９１】
そもそも、これまでに述べてきた１ブロック分は、図１に示すＰＣＡセルの１つ分に相当する。ここで、図１のＰＣＡセルを見ると、この可変部（ＰＰ）はさらに、２次元的に並べられた基本セルで構成され、隣接するＰＰ間は、ブロックの境界にあたる基本セルの入出力線で結線されている。したがって、ＰＰ間にまたがる入出力線が関わる境界の基本セルのテストは、それらに該当する複数のブロックをテスト対象回路にして実施する必要がある。
【０１９２】
図３１は、本発明の第５の実施例の説明図である。
【０１９３】
図３１に示すテスト対象回路は、可変部の角に位置する基本セルが、上下左右の隣接するＰＰに含まれる基本セルと、入出力線とが繋がっているので、この角に位置する基本セルをテストするために、２×２ブロック分の領域を占めている。
【０１９４】
図３１（１）に示す第４の実施例において、２×２ブロック分の領域を占めるテスト対象回路Ｔのみを下隣へ連ねて２回複製し、それぞれテストし、その後に、テスト実行制御部が、複製元のテスト対象回路の一部に重なるように、テスト対象回路を右隣に複製し、テストする。また、上記と同じく、テスト対象回路Ｔのみを下隣へ連ねて２回複製し、テストする。このように、複製とテストとを実施すると、テスト対象回路Ｔによって縦方向も横方向も、全ての領域を敷詰めたようにテストすることができる。
【０１９５】
ところが、テスト対象回路Ｔが２×２ブロックサイズを持つ理由は、ブロック間にまたがる領域（図３１（１）に示す例では、４つのブロックの中央部分（破線で示した交点部分）をテストするためである。
【０１９６】
上記のように、この中央部分を図１のＰＰで示すと、１つのＰＰの角に位置する基本セルに当たる。あるＰＰの角の基本セルは、上下左右にその隣接のＰＰに含まれる基本セルと、入力信号線と、出力信号線とが相互に接続されている。
【０１９７】
したがって、図３１（１）において、４ブロックの交点（斜線を付した部分）は、このような手法ではテストされずに残る。
【０１９８】
そこで、テスト対象回路Ｔを複製する場合、図３１（２）に示すように、既にテストが終了したテスト対象回路Ｔの一部に重ねて、テスト対象回路Ｔを複製する。この場合、所定の順番で、テスト対象回路Ｔを複製する。つまり、テスト対象回路Ｔの複製元（回路の構成情報を読み出す領域）を、テスト対象回路Ｔの複製先（回路の構成情報を書き込む領域）に複製する動作が終了する前に、複製元を複製先に重ねようとすると、その複製が正常に行われないので、テスト対象回路Ｔの複製元を、テスト対象回路Ｔの複製先に複製した後に、上記複製元に重ねて複製する。このような順番で、テスト対象回路Ｔを複製する。
【０１９９】
第５の実施例では、テスト対象回路Ｔを、１回目に複製する場合、２回目に複製する場合、下隣へ順に複製する。つまり、１回目に複製する場合、図３１（２）中、▲１▼を付した矢印に従って、上から３〜４行目にテスト対象回路Ｔａ（左下がりの斜線を付した回路）を複製し、２回目に複製する場合、▲２▼を付した矢印に従って、５〜６行目に、テスト対象回路Ｔｂ（右下がりの斜線を付した回路）を複製する。
【０２００】
そして、１、２回目に複製したテスト対象回路Ｔａ、Ｔｂをテストした後に、３、４回目の複製を行う。つまり、３回目に複製する場合、図３１（２）中、▲３▼を付した矢印に従って、上から２〜３行目にテスト対象回路Ｔｃを複製し、４回目に複製する場合、▲４▼を付した矢印に従って、４〜５行目に、テスト対象回路Ｔｄを複製する。そして、３、４回目に複製したテスト対象回路Ｔｃ、Ｔｄをテストする。
【０２０１】
このような順番で複製すると、ある時点で複製したテスト対象回路（複製元のテスト対象回路）と、その次の時点で複製すべきテスト対象回路（複製先のテスト対象回路）とが重なることはない。上記４回の複製によって、そのテスト対象回路の２列を縦方向に見ると、１、２行目の領域と、２、３行目の領域と、３、４行目の領域と、４、５行目の領域と、５、６行目の領域とのそれぞれに複製されたテスト対象回路をテストするので、４つのブロックの交点（境界領域）を全てテストしたことになる。
【０２０２】
テスト対象回路Ｔが、２×２ブロックサイズを持つ理由は、ブロック間にまたがる領域（図３１（１）に示す例では、４つのブロックの中央部分（破線で示した交点部分））をテストするためである。
【０２０３】
上記のように、この中央部分を図１のＰＰで示すと、１つのＰＰの角に位置する基本セルに当たる。あるＰＰの角の基本セルは、上下左右にその隣接のＰＰに含まれる基本セル、と入力信号線と、出力信号線とが相互に接続されている。
【０２０４】
また、図３１（３）は、テスト実行制御部とテスト対象回路とを併せたテスト回路を、横方向へ複製する場合を示す図である。まず、図３１（３）中、▲５▼−１を付した矢印に従って、４、５行目の領域に存在するテスト対象回路Ｔｄを、その１列分だけ右隣の列で重なるように、しかも１、２行目へ複製する。つまり、この複製結果がテスト対象回路Ｔｅである。次に、図３１（３）中、▲５▼−２の矢印に従ってメモリＭとフィルタ回路Ｆとを有するテスト実行制御部を右隣へ複製する。
【０２０５】
このようにすれば、横方向に複製する場合も、１行ずつテスト対象回路Ｔが重なり、複製されたことになる。したがって、４ブロックの交点の境界を、縦方向にも、横方向にも、洩れなくテストすることができる。
【０２０６】
図３２は、第５の実施例においてシミュレーション動作させている状態を示す図である。
【０２０７】
図３３は、図３２の拡大図である。
【０２０８】
テスト実行制御部は、左端に示す２つのブロック分で構成され、その上側がメモリＭであり、その下側がフィルタ回路Ｆで構成されている。また、テスト対象回路Ｔは、最も右下の２×２ブロック（右から２列分、上から５〜６行分である２×２ブロック）である。正に、右から２列分、上から２、３行目の２×２ブロック分も、同じテスト対象回路であるが、このテスト対象回路の所々の配線は淡い色（図３３の拡大図では破線）で示され、試験動作している状態を示している。また、その左隣のテスト実行制御部のフィルタ回路Ｆも、配線が一部淡い色（図３３の拡大図では破線）であり、テストの制御動作中であることを示している。
【０２０９】
さらに、左から２、３列で、１、２行目の部分のテスト実行制御部は、テスト実行制御部が、それぞれ１回目、２回目に複製されたものである。また、左から２、３列で３〜６行目の領域は、テスト対象回路の断片である。この領域は、元は完全なテスト対象回路が複製され、テストを完了した痕跡である。
【０２１０】
第５の実施例によれば、縦横２次元の平面上に散在するテスト箇所を、効率的にテストすることができる。
【０２１１】
また、第５の実施例によれば、上記のように、同じテスト回路を使用し、その複製の回数を増やし、また、異なるテスト対象回路をまとめて１度で扱う（複製し、テストする）ので、テスト全体として、用意するテスト回路を削減することができるので、そのテストの準備作業が軽減される。
【０２１２】
さらに、第５の実施例において、テストを実行する場合、別々に扱うテスト対象回路を、外部からプログラムする必要回数を削減することができる。この削減分は、内部の高速な複製回数の増加分に置き換わる。したがって、その分のテスト時間も短縮される。
【０２１３】
なお、上記説明したいくつかの実施例を、様々に組み合わせて利用することができる。これら実施例の組み合わせによって、多様な形態が考えられるが、上記各実施例を組み合わせれば、テスト時間が相乗的に短縮される。
【０２１４】
たとえば、テスト対象回路Ｔのみの複製と、テスト回路の一部が重なるように複製することとを、２つの組み合わせることによって、テスト対象回路が複製されそれをテストする箇所を、縦方向横方向の２次元的に増やし、そのテストのカバー率を一挙に向上させることができる。
【０２１５】
また、別の実施例で説明したように、上のテスト回路の複製と、テスト対象回路Ｔのみの複製とを組み合わせ、しかも、テスト対象回路として、互いに異なるテスト対象回路をいくつかまとめて扱うようにすれば、つまり、一度に３つ組み合わせれば、３つの実施例の利点を相乗的に発揮することができる。すなわち、単に異なるテスト対象回路を扱うだけでなく、異なるテスト対象回路をそれぞれ１つずつ個別に見ても、２次元平面の全ての領域で、テストを隈なく実行することができる。
【０２１６】
すなわち、テスト対象回路と、テストパターンを上記テスト対象回路に与えるテスト実行制御部とを具備するテスト回路において、上記テスト実行制御部は、上記テスト対象回路と上記テスト実行制御部とを複製し、しかも、テスト対象回路の複製先が、既にテストが終わっているテスト対象回路の一部と重なるように複製する手段を有し、この場合、上記テスト対象回路は、互いに異なる複数のテスト対象回路であり、１つの上記テスト実行制御部が、上記互いに異なる複数のテスト対象回路について、複製とテストとを、繰り返して実行するようにしてもよい。
【０２１７】
なお、本発明の参考文献として、「坪井秀幸、小林英史、塩澤恒道、氷見康一、名古屋彰：“自律的再構成可能なハードウェアにおけるテスト方式の検討、”電子情報通信学会技術研究報告、ＶＬＤ２０００−８０，ＩＣＤ２０００−１３７，ＦＴＳ２０００−４５，ｐｐ．６５−７０，Ｎｏｖ．２０００」を挙げることができる。
【０２１８】
［第１の実施例の変形例］
図３４は、第１の実施例の変形例を示す図である。
【０２１９】
この変形例は、再構成可能な回路ＲＣＣに設けるテスト回路ＴＣ１の位置を変えた例である。図３４（１）は、再構成可能な回路ＲＣＣの上部に、テスト回路ＴＣ１を設けた例であり、図３４（２）は、再構成可能な回路ＲＣＣの中央部に、テスト回路ＴＣ１を設けた例であり、図３４（３）は、再構成可能な回路ＲＣＣの下部に、テスト回路ＴＣ１を設けた例である。
【０２２０】
図３５は、第１の実施例における別の変形例を示す図である。
【０２２１】
この変形例は、テスト回路ＴＣ１におけるテスト対象回路の位置を変えた例である。図３５（１）は、テスト回路ＴＣａの右下部分にテスト対象回路２０１ａが設けられている例であり、図３５（２）は、テスト回路ＴＣｂの右上部分にテスト対象回路２０１ｂが設けられている例であり、図３５（３）は、テスト回路ＴＣｃの左下部分にテスト対象回路２０１ｃが設けられている例であり、図３５（４）は、テスト回路ＴＣｅの左上部分にテスト対象回路２０１ｅが設けられている例である。
【０２２２】
つまり、第１の実施例における別の変形例は、テスト対象回路を、上記テスト回路において、９０度回転した状態で、上記テスト対象回路をテストするテスト回路である。
【０２２３】
また、上記第１の実施例におけるさらに別の実施例は、上記テスト実行制御部から上記テスト対象回路にテストパターンを供給し、このテストパターンが上記テスト対象回路内の論理回路を経由して出力された値と、所定の期待値とを比較し、この比較結果を出力する回路を有するテスト回路である。
【０２２４】
【発明の効果】
本発明によれば、テスト回路自身の複製によって均質な構造を複製し、テストするので、テストを行うべき全体の部分が大きくても、同じ手法で対応可能であるという効果を奏し、また、一度のテストにおけるテスト対象回路を小さな回路規模に押えることができるので、テストの準備が簡単であり、テストそのものの仕方が簡単であるという効果を奏し、さらに、入力端子からテスト対象回路まで入力パスを通じてテストパターンを入力する必要がなく、加えてテスト結果のデータを出力端子まで運ぶための出力パスを、テストする度にプログラム等によって設定し直す必要がないという効果を奏し、また、テストを高速に実行することができ、オーバーヘッドが不用になるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施例であるテスト回路ＴＣがテストする対象である再構成可能な論理回路の一例としてのＰＣＡの構造を示す図である。
【図２】ＰＣＡにおけるオブジェクトとメッセージとの関係を示す図である。
【図３】上記実施例において、可変部（ＰＰ）上のＬＵＴに、メモリとしてデータを書き込むことによって実現される論理回路を示す図である。
【図４】本発明の一実施例であるテスト回路ＴＣのうちの１つ目のテスト回路ＴＣ１をテストした後に、２つ目のテスト回路ＴＣ２を複製する動作の説明図である。
【図５】上記実施例におけるテスト動作を示すフローチャートである。
【図６】上記実施例において、再構成可能な論理回路ＲＣＣ上の範囲（たとえばＰＣＡシステム上）で、テスト回路ＴＣ１の隣に、テスト回路ＴＣ２が複製された状態を示す図である。
【図７】上記実施例において、論理回路（テスト回路ＴＣ１）をプログラミングした後における初期の回路を示す図である。
【図８】図７に示す状態と同じ状態を簡略して示した図である。
【図９】上記実施例において、テスト時の組込部（ＢＰ）を示す図である。
【図１０】上記実施例において、１つ目のテスト回路ＴＣ１に出力する複製命令を示す図である。
【図１１】上記実施例において、複製中の組込部（ＢＰ）を示す図であり、テスト回路ＴＣ１の隣りのテスト回路におけるテスト対象回路の最終に近い部分を複製している途中を示す図である。
【図１２】上記実施例において、図１１に示す複製の途中のタイミングと同じタイミングにおける複製中の可変部（ＰＰ）を示す図である。
【図１３】上記実施例において、テスト回路ＴＣが１回複製された後に、動作中の可変部（ＰＰ）を示す図である。
【図１４】図１２に示すテスト回路ＴＣ１、ＴＣ２を拡大して示す図である。
【図１５】図１３に示すテスト回路ＴＣ１、ＴＣ２を拡大して示す図である。
【図１６】上記実施例において、１回複製を行った後（第２のテスト回路ＴＣ２が複製された後）におけるテスト時の組込部（ＢＰ）を示す図である。
【図１７】上記実施例において、複数回、テストを行った後における可変部（ＰＰ）を示す図である。
【図１８】上記実施例において、複数回、テストした後に、複製命令を発行した組込部（ＢＰ）を示す図である。
【図１９】第１の従来例である再構成可能な回路のテスト方法を説明する図である。
【図２０】再構成可能な回路を対象としてテストした場合おける第１の従来のテスト方法における動作を示すフローチャートである。
【図２１】第２の従来例であるＢＩＳＴの説明図である。
【図２２】本発明の第２の実施例の説明図である。
【図２３】第２の実施例において、シミュレータで、その複製とテストとを実行する様子を示す図である。
【図２４】図２３の拡大図である。
【図２５】本発明の第３の実施例の説明図である。
【図２６】第３の実施例において、テスト対象回路Ｔのみを縦方向に複製し、しかも、複製先の一部が複製元と重なるようにテスト回路を横方向に複製した場合におけるシミュレーションの状態を示す図である。
【図２７】図２６の拡大図である。
【図２８】本発明の第４の実施例の説明図である。
【図２９】第４の実施例において、互いに異なる種類のテスト対象回路を扱い、これらをまとめて１度でテストする場合におけるシミュレータ上の状態を示す図である。
【図３０】図２９の拡大図である。
【図３１】本発明の第５の実施例の説明図である。
【図３２】第５の実施例においてシミュレーション動作させている状態を示す図である。
【図３３】図３２の拡大図である。
【図３４】第１の実施例の変形例を示す図である。
【図３５】第１の実施例における別の変形例を示す図である。
【符号の説明】
ＲＣＣ…再構成可能な回路、
ＴＣ…テスト回路、
ＴＣ１…１つ目のテスト回路、
ＴＣ２…２つ目のテスト回路、
ＴＣｎ…ｎ個目のテスト回路、
１０１、１０２〜１０ｎ…テスト実行制御部、
２０１、２０２〜２０ｎ…テスト対象回路、
ＰＰ…可変部、
ＢＰ…組込部、
Ｍ…メモリ、
Ｆ…フィルタ回路、
Ｔ、Ｔ１〜Ｔ５、Ｔａ〜Ｔｅ…テスト対象回路。
【図１】
0003803053.tif 000002
【図２】
0003803053.tif 000003
【図３】
0003803053.tif 000004
【図４】
0003803053.tif 000005
【図５】
0003803053.tif 000006
【図６】
0003803053.tif 000007
【図７】
0003803053.tif 000008
【図８】
0003803053.tif 000009
【図９】
0003803053.tif 000010
【図１０】
0003803053.tif 000011
【図１１】
0003803053.tif 000012
【図１２】
0003803053.tif 000013
【図１３】
0003803053.tif 000014
【図１４】
0003803053.tif 000015
【図１５】
0003803053.tif 000016
【図１６】
0003803053.tif 000017
【図１７】
0003803053.tif 000018
【図１８】
0003803053.tif 000019
【図１９】
0003803053.tif 000020
【図２０】
0003803053.tif 000021
【図２１】
0003803053.tif 000022
【図２２】
0003803053.tif 000023
【図２３】
0003803053.tif 000024
【図２４】
0003803053.tif 000025
【図２５】
0003803053.tif 000026
【図２６】
0003803053.tif 000027
【図２７】
0003803053.tif 000028
【図２８】
0003803053.tif 000029
【図２９】
0003803053.tif 000030
【図３０】
0003803053.tif 000031
【図３１】
0003803053.tif 000032
【図３２】
0003803053.tif 000033
【図３３】
0003803053.tif 000034
【図３４】
0003803053.tif 000035
【図３５】
0003803053.tif 000036