(57)【特許請求の範囲】
【請求項１】
再構成可能な集積回路上に実現されるテスト制御回路であって、当該再構成可能な集積回路における組込み部の通信路をテストするテスト制御回路において、
所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ上、下、左、右へ戻る第１の通信路を作成する第１の通信路作成手段と；
上記作成された第１の通信路に所定のデータを流す第１のデータ供給手段と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ下、上、右、左へ直進して通過する第２の通信路を作成する第２の通信路作成手段と；
上記作成された第２の通信路に所定のデータを流す第２のデータ供給手段と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ左、右、上、下へ曲がる第３の通信路を作成する第３の通信路作成手段と；
上記作成された第３の通信路に所定のデータを流す第３のデータ供給手段と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ右、左、下、上へ曲がる第４の通信路を作成する第４の通信路作成手段と；
上記作成された第４の通信路に所定のデータを流す第４のデータ供給手段と；
を有し、
上記第１、第２、第３、第４の通信路の作成と、上記作成された第１、第２、第３、第４の通信路へのデータの供給とを順次行うことを特徴とする再構成可能な集積回路におけるテスト制御回路。
【請求項２】
請求項１において、
上記テスト制御回路を複製する複製命令を発行する複製命令発行手段を有することを特徴とする再構成可能な集積回路におけるテスト制御回路。
【請求項３】
請求項２において、
上記複製命令は、上記回路の設計情報を読み出す読出し命令と、上記回路の設計情報を書き込む書き込み命令と、上記複製した回路を起動する起動命令とを有する命令であることを特徴とする再構成可能な集積回路におけるテスト制御回路。
【請求項４】
請求項１〜請求項３のいずれか１項において、
上記所定のデータを格納するメモリと；
上記メモリに格納されているデータを変換するフィルタと；
を有することを特徴とする再構成可能な集積回路におけるテスト制御回路。
【請求項５】
再構成可能な集積回路上に実現されるテスト制御回路が、当該再構成可能な集積回路における組込み部の通信路をテストするテスト制御方法において、
所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ上、下、左、右へ戻る第１の通信路を作成する第１の通信路作成段階と；
上記作成された第１の通信路に所定のデータを流す第１のデータ供給段階と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ下、上、右、左へ直進して通過する第２の通信路作成段階と；
上記作成された第２の通信路に所定のデータを流す第２のデータ供給段階と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ左、右、上、下へ曲がる第３の通信路を作成する第３の通信路作成段階と；
上記作成された第３の通信路に所定のデータを流す第３のデータ供給段階と；
上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ右、左、下、上へ曲がる第４の通信路を作成する第４の通信路を作成する第４の通信路作成段階と；
上記作成された第４の通信路に所定のデータを流す第４のデータ供給段階と；
を有し、
上記第１、第２、第３、第４の通信路作成段階と、上記作成された第１、第２、第３、第４のデータ供給段階とを順次実行することを特徴とする再構成可能な集積回路におけるテスト制御方法。
【請求項６】
請求項５において、
上記集積回路におけるテスト制御方法を実現する回路を複製する複製命令を発行する複製命令発行段階を有することを特徴とする再構成可能な集積回路におけるテスト制御方法。
【請求項７】
請求項６において、
上記複製命令は、上記回路の設計情報を読み出す読出し命令と、上記回路の設計情報を書き込む書き込み命令と、上記複製した回路を起動する起動命令とを有する命令であることを特徴とする再構成可能な集積回路におけるテスト制御方法。
【請求項８】
請求項５〜請求項７のいずれか１項において、
上記所定のデータをメモリに格納するデータ格納段階と；
上記メモリに格納されているデータをフィルタによって変換するデータ変換段階と；
を有することを特徴とする再構成可能な集積回路におけるテスト制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路等ハードウェアによって実現される回路間で、信号やデータの受け渡しを担う通信路をテストするテスト制御回路に関する。
【０００２】
【従来の技術】
集積回路として、様々な機能をもつ回路（オブジェクト）が存在する。
【０００３】
また、集積回路には、それら幾つものオブジェクト間の通信、または集積回路の外部とオブジェクトとの間における通信が行われる。つまり、集積回路には、様々な機能をもつ回路が組み込まれ、これらの回路間で信号をやり取りする通信路が設けられている。
【０００４】
また、特に、ユーザの手元でプログラムできる再構成可能なハードウェア（Reconfigurable Hardware）は、様々な機能を実現する部分と、その機能を実現する部分同士の間で信号を送受する通信路とを有する。
【０００５】
図１は、再構成可能なハードウェアとしてＦＰＧＡ、ＣＰＬＤ、ＰＣＡを示す図である。
【０００６】
ＦＰＧＡ（Field Programmable Gate Array）、ＣＰＬＤ（Complex Programmable Logic Device）では、様々な機能を実現する部分として、それぞれ、基本セル、ＰＬＤブロックが存在する。これら基本セル、ＰＬＤブロックを含め、集積回路上で実現されている様々な機能を実現する回路を、本明細書では、「オブジェクト」と呼ぶ。
【０００７】
これら幾つかのオブジェクト同士の間や、集積回路の外部とオブジェクトとの間で、信号の送受を行う配線部や、スイッチ・マトリックスが、それぞれに設けられている。この再構成可能なハードウェアＲＨに関しては、特許庁のホームページ内の「テクノトレンド 特許から見た『プログラマブル・ロジック・デバイス（Programmable Logic Device: ＰＬＤ）』の展望」、（ HYPERLINK "http://www.jpo-miti.go.jp/techno/tt1301#062.htm" http://www。jpo-miti.go.jp/techno/tt１30１#062.htm）に解説がある。
【０００８】
図２は、オブジェクト間の通信路テストを示す図である。
【０００９】
上記のように、集積回路上の様々な機能をもつ回路、または、機能を実現するオブジェクト間や、集積回路の外部と上記オブジェクトとの間における通信路テストは、図２に示すように、信号を送信するオブジェクトからデータを送り出し、それを受信する側で正しく受けたことを確認する形態でテストする。
【００１０】
この時に、外部から送信側のオブジェクトまで、送信データを、入力するようにしてもよく、また、受信側のオブジェクトが受けるデータを、外部に取り出し、測定器が解析するようにしてもよい。
【００１１】
上記方法では、送信側のオブジェクトと受信側のオブジェクトとの間の通信路流れるデータを、上記通信路の全てにおいて解析する。したがって、集積回路の機能が特定されている設計であれば、上記の手法で、オブジェクト間の通信路をチェックすることができる。
【００１２】
また、再構成可能なハードウェアＲＨにおいても、集積度があまり高くない場合は、プログラムによって実現されるオブジェクトの数は多くない。このような場合、オブジェクト同士の間や、集積回路の外部とオブジェクトとの通信路総数が、上記手法でチェックできる範囲に収まる場合もある。
【００１３】
一方で、この再構成可能なハードウェアＲＨのうちで、特に、ＰＣＡ（Plastic Cell Architecture）上でオブジェクトを実現する可変部分ＰＰ（Plastic Part）自体の中身を効率的に調べる方法が、既に提案されている。
【００１４】
なお、ＰＣＡは、図１に示す構造を有し、上記オブジェクトを実現する可変部分可変部ＰＰの中身を調べる方法は、複製機能を利用したテスト方法であり、以下の研究会資料において、詳細に説明されている。なお、以下の解説記事は、ＰＣＡを、その概要から詳しく述べている。
【００１５】
解説記事：「名古屋 彰、 小栗 清: "プラスティックセルアーキテクチャ(ＰＣＡ)技術の概要、" NTT R&D、 Vol。 49、 No. 9、 可変部ＰＰ. 5１3-5１7、 Sep. 2000」
研究会資料：「坪井 秀幸、 小林 英史、 塩澤 恒道、 永見 康一、 名古屋 彰『自律的再構成可能なハードウェアにおけるテスト方式の検討』 電子情報通信学会技術研究報告、 VLD2000-80、 ICD2000-１37、 FTS2000-45、 可変部ＰＰ. 65-70、 Nov. 2000」
ただし、上記従来手法では、テストの対象を可変部ＰＰとし、オブジェクト間の通信路のテストと、集積回路の外部との通信を担う組込み部ＢＰ（Built-in Part）とオブジェクトとの通信路のテストにおける結果が正しいうことが、前提条件である。
【００１６】
図３は、集積回路が、その規模を拡大してきた様子を示す図である。
【００１７】
ところで、集積回路の規模がさらに拡大し、それを集積化するとオブジェクトの数も多くなる傾向にある。図３に示すように、集積回路の設計・製造プロセスが、年を追う毎に微細化され、この技術の進展によって、集積回路内に、様々な機能をもつ回路（オブジェクト）が多く搭載されている。
【００１８】
この参考文献として、「特集論文 システム オン シリコン時代における半導体キー技術、森安俊紀『イマージング マーケットとシステムLSI』東芝レビュー１2月号、Vol.52、No.１2、１997」、（ HYPERLINK "http://www.toshiba.co.jp/tech/review/1997/12/index#j.htm" http://www.toshiba.co.jp/tech/review/１997/１2/index#j.htm）がある。
【００１９】
【発明が解決しようとする課題】
集積回路の規模が拡大することに伴って、オブジェクト間の通信路や、集積回路の外部とオブジェクトとの通信路も、増加する。特に、ユーザのプログラムによって、任意のオブジェクトが実現されるような再構成可能なハードウェアＲＨの場合には、集積規模の増加によって、オブジェクト間の通信路や、集積回路の外部とオブジェクトとの間の通信路が飛躍的に多くなる。
【００２０】
したがって、このような集積化の進展で多くなるオブジェクト間の通信路や、集積回路の外部とオブジェクトとの間の通信路のテストを、これまで以上に効率的に行う手法が求められている。
【００２１】
本発明は、再構成可能なハードウェアにおけるオブジェクト間の通信路や、集積回路の外部と上記オブジェクトとの間の通信路を、効率的にテストする集積回路におけるテスト制御回路およびテスト制御方法を提供することを目的とするものである。
【００２２】
【課題を解決するための手段】
本発明は、再構成可能な集積回路上に実現されるテスト制御回路であって、当該再構成可能な集積回路における組込み部の通信路をテストするテスト制御回路において、所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ上、下、左、右へ戻る第１の通信路を作成する第１の通信路作成手段と、 上記作成された第１の通信路に所定のデータを流す第１のデータ供給手段と、上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ下、上、右、左へ直進して通過する第２の通信路を作成する第２の通信路作成手段と、上記作成された第２の通信路に所定のデータを流す第２のデータ供給手段と、上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ左、右、上、下へ曲がる第３の通信路を作成する第３の通信路作成手段と、上記作成された第３の通信路に所定のデータを流す第３のデータ供給手段と、上記所定の組込み部の通信路に、上、下、左、右の４方向から、それぞれ右、左、下、上へ曲がる第４の通信路を作成する第４の通信路作成手段と、上記作成された第４の通信路に所定のデータを流す第４のデータ供給手段とを有し、上記第１、第２、第３、第４の通信路の作成と、上記作成された第１、第２、第３、第４の通信路へのデータの供給とを順次行うことを特徴とする再構成可能な集積回路におけるテスト制御回路である。
【００２３】
【発明の実施の形態および実施例】
図１は、本発明の実施例に使用する再構成可能なハードウェアＲＨを示す図である。
【００２４】
再構成可能なハードウェアＲＨ（Reconfigurable Hardware）の集積回路の１つの種類が、ＰＣＡ（Plastic Cell Architecture）である。ＰＣＡは、可変部ＰＰと、組込み部ＢＰとを有する。
【００２５】
可変部ＰＰは、様々な機能を実現してオブジェクト（回路）になり、組込み部ＢＰは、オブジェクト間のデータ伝送や、再構成可能なハードウェアＲＨの外部とオブジェクトとの間のデータ転送を行う通信路である。なお、各組込み部ＢＰは、同じ位置の可変部ＰＰとの間で、データを送受信することができ、さらに、組込み部ＢＰ自身が、図１の上下左右（北南西東）の方向へ通信路を設定することができる。
【００２６】
次に、通信路をテストする様子を、シミュレーションの画面を示し、順次、説明する。
【００２７】
［初期の様子］
図４は、上記実施例において、再構成可能なハードウェアＲＨにおける最初の様子（初期プログラム後の回路構成）を示す図である。
【００２８】
図４（１）は、可変部ＰＰの様子を示す図であり、可変部ＰＰには、テスト制御回路ＴＣ１がプログラムされている。
【００２９】
テスト制御回路ＴＣ１は、メモリ（Ｍｅｍｏｒｙ Ｏｂｊｉｅｃｔ）と、メモリに格納されているデータを変換する回路Ｆｉｌｔｅｒとによって構成されている。
【００３０】
図４（２）は、図４（１）に示す可変部ＰＰの内部を詳細に示す図である。
【００３１】
［テストの実行］
図５は、上記実施例において、再構成可能なハードウェアＲＨにおける回路テスト時のデータの流れを示す図である。
【００３２】
図５に示す例では、１つの組込み部ＢＰの通信路についてテストする場合、４種類のテストパターンＴＰ１、ＴＰ２、ＴＰ３、ＴＰ４を使用し、ＴＰ１、ＴＰ２、ＴＰ３、ＴＰ４の順で使用する。
【００３３】
つまり、テスト制御回路ＴＣ１の右隣に位置するブロック１つ分の組込み部ＢＰを組込み部の通信路とし、組込み部ＢＰ上に設定する4種類の通信路に、様々な通信データを流す様子を示す。
【００３４】
そして、各通信路は、いずれも外部の出力端子に到達し、この出力端子に接続した外部の測定器が、上記通信路を流れた通信データを測定することによって、組込み部ＢＰの通信路のテストを行う。
【００３５】
これらの図５（１）〜（４）に示す通信路設定（テストパターンの設定）に伴うデータ測定を、順次実行することによって、組込み部ＢＰの通信路上に作られる様々な通信路の全てを自動的にテストする。
【００３６】
次に、順次行われるテスト内容について説明する。
【００３７】
図６は、上記実施例において、組込み部ＢＰの通信路をテストするテストパターンＴＰ１〜ＴＰ４を示す図である。
【００３８】
テスト制御回路ＴＣ１は、図６の左上隅の2つの四角いブロックで示してあり、メモリＭｅｍと、回路Ｆｉｌｔｅｒとによって構成されている。
【００３９】
テスト制御回路ＴＣ１の右下隣が、組込み部の通信路であり、4種類のテストパターンＴＰ１〜ＴＰ４が記載されている。組込み部の通信路をテストするときに、電流を流す通信路は、四角いブロックの各々において、上下右左（北南東西）の4方向から設定することができ、また、上下右左の4方向へ任意に設定することが可能である。
【００４０】
テストパターンＴＰ１は、北、南、東、西の4方向から、同じ方向（北、南、東、西）へ戻る通信路である。テストパターンＴＰ２は、北、南、東、西の4方向から、直進して（南、北、西、東へ）通過する通信路である。テストパターンＴＰ３は、北、南、東、西の4方向から、それぞれ西、東、南、北へ曲がる通信路である。テストパターンＴＰ４は、北、南、東、西の4方向から、東、西、北、南へ曲がる通信路である。
【００４１】
上記テストパターンＴＰ１〜ＴＰ４を設定をすることによって、１つの四角いブロックである組込み部の通信路において、その全ての通信路についてテストすることができる。
【００４２】
つまり、上記実施例は、再構成可能なハードウェアにおける組込み部の通信路をテストするテスト制御回路であり、テスト制御回路ＴＣ１は、所定の組込み部の通信路に第１の通信路を作成する第１の通信路作成手段の例であり、上記作成された第１の通信路に所定のデータを流す第１のデータ供給手段の例である。
【００４３】
すなわち、上記実施例は、テスト制御回路が、組込み部の通信路に４つの通信路を作成しているが、１つのテストパターンで、１つの組込み部の通信路をすべてカバーできるものがあれば、１つの通信路を作成するだけで足りる。また、２つのテストパターンで、１つの組込み部の通信路をすべてカバーできるものがあれば、２つの通信路を作成するだけで足り、さらに、３つのテストパターンで、１つの組込み部の通信路をすべてカバーできるものがあれば、３つの通信路を作成するだけで足りる。
【００４４】
また、テスト制御回路ＴＣ１は、上記所定のデータを格納するメモリと、上記メモリに格納されているデータを変換するフィルタとを有する。さらに、テスト制御回路ＴＣ１は、テスト制御回路を複製する複製命令を発行する複製命令発行手段を有する。そして、上記複製命令は、回路の設計情報を読み出す読出し命令と、上記回路の設計情報を書き込む書き込み命令と、上記複製した回路を起動する起動命令とを有する命令である。
【００４５】
また、テスト制御回路ＴＣ１は、上記所定の組込み部の通信路に、上記第１の通信路とは異なる第２の通信路を作成する第２の通信路作成手段の例であり、上記作成された第２の通信路に所定のデータを流す第２のデータ供給手段の例であり、上記所定の組込み部の通信路に、上記第１、２の通信路とは異なる第３の通信路を作成する第３の通信路作成手段の例であり、上記作成された第３の通信路に所定のデータを流す第３のデータ供給手段の例であり、上記所定の組込み部の通信路に、上記第１、２、３の通信路とは異なる第４の通信路を作成する第４の通信路作成手段の例であり、上記作成された第４の通信路に所定のデータを流す第４のデータ供給手段の例である。
【００４６】
なお、第２のデータ供給手段と第１のデータ供給手段とが同じものであってもよく、第３のデータ供給手段が、第１のデータ供給手段等、他のデータ供給手段と同じものであってもよく、第４のデータ供給手段が、第１のデータ供給手段等、他のデータ供給手段と同じものであってもよい。
【００４７】
［回路の複製］
図７は、図５に示した１回目のテストを終えた再構成可能なハードウェアＲＨについて、その複製と起動とを示す図である。
【００４８】
テスト制御回路ＴＣ１からは、テスト制御回路ＴＣ１そのものを複製する命令列と、複製の直後に、その複製されたテスト制御回路ＴＣ２を起動する２つの命令列とを発行する。
【００４９】
図７（１）は、テスト制御回路ＴＣ１が、上記複製（Ｃｏｃｉ）の命令列を発行する様子を示す図である。
【００５０】
つまり、図７（１）に曲線で示す通信路と、その通信路上の１６進数（たとえば、５、ｂ、ａ）が、上記複製（Ｃｏｃｉ）の命令列である。
【００５１】
また、図７（２）には、曲線で示す通信路と、その上の１６進数（たとえば、５、ｂ、ａ、０）が、上記複製（Ｃｏｃｉ）の命令列であり、図７（１）と同じある。
【００５２】
この複製（Ｃｏｃｉ）の命令列に加え、図７（２）には、２本目の曲線で示す通信路と、その上の１６進数（９、ａ、４、ｂ、０）とが、直後に発行する起動の命令列（Ｍｅｍｏｒｙ Ｏｂｊｉｅｃｔを読み出す：Co）である。このように、複製の命令列と起動の命令列との両者が、図７（２）に示すように、現れる。
【００５３】
図８は、上記実施例において、複製命令と起動命令列とを詳細に示す図である。
【００５４】
図８（１）は、Ｃｏｐｙ  ｍｅｓｓａｇｅ（Ｃｏｃｉ）を示す図であり、Ｃｏｐｙ  ｍｅｓｓａｇｅ（Ｃｏｃｉ）は、テスト制御回路（ＭｅｍとＦｉｌｔｅｒ）が発行する複製の命令列である。
【００５５】
この命令列の前方の位置にある命令が、通信路を設定することによって、その通信路上に順次後方に位置する命令列が、データが流れるルート（通信路）を作ることを示す。なお、一連の命令列それ自体の中身について、South、East、North、Westは、それぞれ南、東、北、西（図中、下、右、上、左）方向への通信路の設定であり、Ｃｏｃｉが、回路自身を複製する複製命令であり、Ｃｌｅａｒは、命令列の消去（開放）を示す。「×（数字）」は、その命令の繰り返し回数を示す。
【００５６】
図８（２）は、Ｔｒｉｇｇｅｒ  ｍｅｓｓａｇｅ （Ｃｏ） を示す図であり、Ｔｒｉｇｇｅｒ  ｍｅｓｓａｇｅ （Ｃｏ）は、回路を起動する命令列である。通信路の説明は、左側の複製命令列と同じである。また、命令列の命令Co は、Ｍｅｍｏｒｙ Ｏｂｊｉｅｃｔに格納されているデータを読み出す命令である。
【００５７】
図９は、上記実施例において、複製中の組込み部ＢＰの様子と、可変部ＰＰの様子とを示す図である。
【００５８】
図９（１）は、複製中の組込み部ＢＰ上の様子を示す図である。
【００５９】
図９（１）には、図７で説明した複製命令列（直線で示す通信路）と、その上の１６進数（０、０）と、起動の命令列（曲線で示す通信路）と、その上の１６進数（９、ａ、４、ｂ、０）とがある。
【００６０】
これらの命令列に加えて、複製の命令列によって、テスト制御回路の設計情報を読み出し、そのテスト制御回路のすぐ右隣に、その回路の設計情報を書き込む様子、つまりテスト制御回路の複製途中の様子が示されている。
【００６１】
図９（２）は、複製中の可変部ＰＰ（テスト制御回路ＴＣ２）の様子を示す図である。複製が途中であるので、テスト制御回路ＴＣ２の一部分を欠いている。また、図９（２）の複製途中部分以外の部分は、テスト制御回路ＴＣ１と同じ構成のものが複製される。
【００６２】
［複製後の様子］
図１０は、上記実施例において、１回複製した後における可変部ＰＰ（テスト制御回路ＴＣ２）の様子を示す図である。
【００６３】
図１０は、元の初期テスト制御回路ＴＣ１がプログラムしたハードウェアＲＨ上の状態（図４を用いて説明した状態）と、全く同じテスト制御回路ＴＣ２が複製され、この複製後に動作中であることを示している。
【００６４】
図１０（１）は、可変部ＰＰの様子を示す図であり、初期のテスト制御回路ＴＣ１と、複製後動作中のテスト制御回路ＴＣ２とが示されている。
【００６５】
また、図１０（２）は、複製されたテスト制御回路ＴＣ２の構成を示す図である。初期のテスト制御回路ＴＣ２は、Ｍｅｍｏｒｙ  ＯｂｊｉｅｃｔとＦｉｌｔｅｒ回路とによって構成され、複製後動作中のテスト制御回路ＴＣ２も、Ｍｅｍｏｒｙ  ＯｂｊｉｅｃｔとＦｉｌｔｅｒ回路とによって構成されている。
【００６６】
つまり、図１０に示すテスト制御回路ＴＣ２における複製後の動作は、基本的には、図４で説明した初期のテスト制御回路ＴＣ１における複製後の動作と同じであり、テスト制御回路ＴＣ２における動作位置が、テスト制御回路ＴＣ１における動作位置よりも、右に移動した点のみが異なり、テスト制御回路そのものは互いに同じである。
【００６７】
図１１は、上記実施例において、１回複製後における組込み部ＢＰの通信路のテスト状態を示す図である。
【００６８】
図１１に示す１回複製後における組込み部ＢＰの通信路のテストは、元の初期テスト制御回路ＴＣ１が組込み部ＢＰに通信路設定した通信路について行ったテスト（図５を用いて説明したテスト）と、全く同じ動作であり、この動作を、複製後動作中のテスト制御回路ＴＣ２が実行している。
【００６９】
図６に示したテストパターンＴＰ１〜ＴＰ４と同じパターンを、図５（１）〜（４）で示す通信路設定した順序と同じ順序で使う。
【００７０】
したがって、図１１に示す複製後動作中のテスト制御回路ＴＣ２における動作は、図５に示す組込み部ＢＰテスト時で説明した初期のテスト制御回路ＴＣ１の動作と同じであり、ただ、その動作位置が右にずれただけである。
【００７１】
図１２は、組込み部ＢＰの通信路を複数回テストした後に、複製命令を発呼する状態を示す図である。
【００７２】
図１２（１）は、複製後動作中のテスト制御回路ＴＣ２が、複製（Ｃｏｃｉ）命令列を発行する様子を示す図である。
【００７３】
図１２（２）は、複製の命令列の後に、起動（Ｍｅｍｏｒｙ Ｏｂｊｉｅｃｔを読み出す：Co）命令列を発行する様子を示す図である。
【００７４】
初期のテスト制御回路ＴＣ１を、破線の長方形で示してあり、複製後動作中のテスト制御回路ＴＣ２を、実線の長方形で示してある。この複製後動作中のテスト制御回路ＴＣ２を、初期のテスト制御回路ＴＣ１と見なせば、図１２（１）、（２）の様子は、それぞれ図７（１）、（２）の様子と同じである。
【００７５】
言い換えれば、図１２（１）、（２）の様子は、初期のテスト制御回路ＴＣ１が複製命令を発行することと、位置が右に移動したことと以外は、全く同じである。この各命令列発行における内容の詳細な説明は、１回目のテストを終えたハードウェアＲＨについてその複製と起動とを示す図７についての説明と同様である。
【００７６】
［一連の動作経過後の様子］
図１３は、上記一連の動作を繰り返している途中の結果（複数回テスト後で複製中の様子）を示す図である。
【００７７】
図１３（１）は、複製途中の組込み部ＢＰ上の動作を示す図である。一番右端に当たるテスト制御回路が、複製動作を行う途中である。この複製動作の途中の様子は、図９に示す初期のテスト制御回路における複製中の様子と同じである。
【００７８】
また、一番右のテスト制御回路ＴＣｎの左隣には、１つ前に複製したテスト制御回路ＴＣ（ｎ−１）があり、そのまた左隣には、さらに前に複製したテスト制御回路ＴＣ（ｎ−２）があり、……というように、左へ順に存在している。
【００７９】
図１３（２）は、複製途中の可変部ＰＰ上の様子を示す図である。この可変部ＰＰ上のテスト制御回路の様子も、組込み部ＢＰと同じであり、一番右側に、複製後に動作中のテスト制御回路ＴＣｎがあり、その左隣に１つ前に複製されたテスト制御回路ＴＣ（ｎ−１）があり、そのまた左隣に、さらに前に複製したテスト制御回路ＴＣ（ｎ−２）があり、……というように、順に続く。
【００８０】
上記のように、図４〜図９を１サイクルとするテストと、テスト制御回路を複製する動作とを、何度も繰り返す。この動作の繰り返しの度に、１つの組込み部ＢＰについて、設定された様々な種類の通信路にデータを流し、これによって、通信路のテストを効率的に実行することができる。
【００８１】
上記実施例によれば、集積回路等のハードウェアによって実現されるオブジェクト間や、集積回路の外部とオブジェクトとの間で、信号やデータの受け渡しを担う通信路を対象とするテストを実行することができる。
【００８２】
特に、様々な通信路を非常に多く持つ再構成可能なハードウェアＲＨ等の集積回路では、上記実施例による通信路のテストは、極めて効果的である。
【００８３】
その第１の理由は、上記実施例では、幾つものテスト制御回路用の通信路を作成する場合、１つのテスト制御回路用の通信路を作成すれば足りるので、従来技術のように、全てのテスト制御回路のそれぞれについて、通信路テスト用のプログラムを準備する場合よりも、テスト準備が短時間で足りる点である。また、メモリとフィルタとによってテスト制御回路を構成すると、テスト制御回路の形状がコンパクトになる。
【００８４】
第２の理由は、同じテスト制御回路を複製し、テスト動作することによって多数の組込み部の通信路をテストすることができる点である。
【００８５】
さらに、このテストの動作は、再構成可能なハードウェアＲＨ内部で自動的に行われ、外部からテストデータを入力するような低速なインタフェースを介さないので、再構成可能なハードウェアＲＨが実際に使用されるような高速な内部処理で、テストできる。
【００８６】
上記実施例は、集積回路をテストすることもでき、その中でも特に再構成可能なハードウェアＲＨ等の集積回路をテストすることが効果的である。
【００８７】
【発明の効果】
本発明によれば、再構成可能なハードウェアにおけるオブジェクト間の通信路や、集積回路の外部と上記オブジェクトとの間の通信路を、効率的にテストすることができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施例に使用する再構成可能なハードウェアＲＨを示す図であり、再構成可能なハードウェアとしてＦＰＧＡ、ＣＰＬＤ、ＰＣＡを示す図である。
【図２】オブジェクト間の通信路テストを示す図である。
【図３】集積回路が、その規模を拡大してきた様子を示す図である。
【図４】上記実施例において、再構成可能なハードウェアＲＨにおける最初の様子（初期プログラム後の回路構成）を示す図である。
【図５】上記実施例において、再構成可能なハードウェアＲＨにおける回路テスト時のデータの流れを示す図である。
【図６】上記実施例において、組込み部ＢＰの通信路をテストするテストパターンＴＰ１〜ＴＰ４を示す図である。
【図７】図５に示した１回目のテストを終えた再構成可能なハードウェアＲＨについて、その複製と起動とを示す図である。
【図８】上記実施例において、複製命令と起動命令列とを詳細に示す図である。
【図９】上記実施例において、複製中の組込み部ＢＰの様子と、可変部ＰＰの様子とを示す図である。
【図１０】上記実施例において、１回複製した後における可変部ＰＰ（テスト制御回路ＴＣ２）の様子を示す図である。
【図１１】上記実施例において、１回複製後における組込み部ＢＰの通信路のテスト状態を示す図である。
【図１２】組込み部ＢＰの通信路を複数回テストした後に、複製命令を発呼する状態を示す図である。
【図１３】上記一連の動作を繰り返している途中の結果（複数回テスト後で複製中の様子）を示す図である。
【符号の説明】
ＴＣ１、ＴＣ２…テスト制御回路、
ＲＨ…再構成可能なハードウェア、
ＴＰ１〜ＴＰ４…テストパターン、
ＢＰ…組込み部、
ＰＰ…可変部。
【図１】
0004049360.tif 000002
【図２】
0004049360.tif 000003
【図３】
0004049360.tif 000004
【図４】
0004049360.tif 000005
【図５】
0004049360.tif 000006
【図６】
0004049360.tif 000007
【図７】
0004049360.tif 000008
【図８】
0004049360.tif 000009
【図９】
0004049360.tif 000010
【図１０】
0004049360.tif 000011
【図１１】
0004049360.tif 000012
【図１２】
0004049360.tif 000013
【図１３】
0004049360.tif 000014