| 【発明の名称】 |
回路装置の試験方法 |
| 【発明者】 |
【氏名】山元 浩幸
【氏名】橘田 光弘
【氏名】鍋田 芳則
【氏名】千葉 一雄
|
| 【要約】 |
【課題】プログラマブル論理素子を含んだ回路試験を簡単にする。
【解決手段】回路装置200内において、試験対象素子204の周辺のFPGA202a〜202dの演算論理を原回路の構成から書き換える。具体的には、回路装置200の入出力端子206と試験対象素子204との間の信号が素通りするように、周辺のFPGA内にスルーパスが構成されるように書き換えを行う。これにより、試験対象となる回路の構成をプローブ針等を用いることなく簡単にすることができ、テストパターンの削減による試験時間の短縮等が図られる。 |
【特許請求の範囲】
【請求項1】 外部からのアクセスによりその内部の演算論理を書き換え可能なプログラマブル論理素子を含んで構成される回路装置を試験する回路試験方法であって、前記回路装置に含まれる試験対象素子の試験を行う際に、当該試験対象素子と前記回路装置の入出力端子との間に介在する前記プログラマブル論理素子の前記演算論理を書き換えて、当該プログラマブル論理素子内に前記試験対象素子と前記入出力端子との間の信号を透過させるスルーパスを形成することを特徴とする回路装置の試験方法。 【請求項2】 前記回路装置を試験する試験装置が、前記回路装置の基板配線にプローブ針を接触させプロービングによる回路試験を行うことができ、前記プロービングを制御するプローブ制御部を備えた装置であり、前記試験対象素子の信号端子のうち前記回路装置の前記入出力端子との間で直接、前記信号を伝達できないものについては、前記プローブ制御部が、前記スルーパスの形成情報及び前記回路装置の基板配線情報に基づいて、当該信号端子につながる前記基板配線に前記プローブ針を接触させ、前記回路装置の前記入出力端子及び前記プローブ針と前記試験対象素子との間で前記信号を伝達させて前記試験対象素子の前記回路試験を行うことを特徴とする請求項1記載の回路装置の試験方法。 【請求項3】 前記試験対象素子の信号端子の少なくとも一部に関して、当該信号端子と前記回路装置の前記入出力端子との間に介在する前記プログラマブル論理素子のうち、信号経路上、当該信号端子に最も近い近傍プログラマブル論理素子を選択し、前記近傍プログラマブル論理素子の前記演算論理を書き換えて、当該近傍プログラマブル論理素子内に、前記入出力端子から当該信号端子への入力データ又は当該信号端子から前記入出力端子への出力データを一時保持するスキャンレジスタを構成すること、を特徴とする請求項1記載の回路装置の試験方法。 【請求項4】 前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記入力データを一時保持する前記スキャンレジスタの後段に複数の前記信号端子に対応してその出力を振り分け可能なデコーダが形成され、前記スキャンレジスタには複数の前記入力データが一つにまとめられた符号化データが前記入出力端子から入力されて格納され、前記デコーダは、前記符号化データを読み出し、複数の前記入力データを復元し、それら前記入力データをそれぞれ対応する前記信号端子へ向けて出力すること、を特徴とする請求項3記載の回路装置の試験方法。 【請求項5】 前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記出力データを一時保持する前記スキャンレジスタの前段に複数の前記信号端子に対応する前記出力データを受け付け可能なコーダが形成され、前記コーダは受け付けた複数の前記出力データを一つの符号化データに統合し、前記スキャンレジスタは、前記符号化データを一時保持すること、を特徴とする請求項3記載の回路装置の試験方法。 【請求項6】 前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記入力データを一時保持する前記スキャンレジスタの後段に、前記信号端子にそれぞれ対応した複数の出力線の一つを選択するセレクタが形成され、前記セレクタは、選択した前記出力線に前記スキャンレジスタから読み出した前記入力データを出力すること、を特徴とする請求項3記載の回路装置の試験方法。 【請求項7】 前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記出力データを一時保持する前記スキャンレジスタの前段に、前記信号端子にそれぞれ対応した複数の入力線の一つを選択するセレクタが形成され、前記セレクタは、選択した前記入力線から得られる前記出力データを前記スキャンレジスタに出力すること、を特徴とする請求項3記載の回路装置の試験方法。 【請求項8】 外部からのアクセスによりその内部の演算論理を書き換え可能なプログラマブル論理素子を含んで構成される回路装置を試験する回路試験方法であって、前記プログラマブル論理素子の2つの信号端子を選択して、当該プログラマブル論理素子の前記演算論理を書き換えて当該2信号端子間を接続し、当該2信号端子間での信号の導通の有無に基づいて、当該2信号端子に関わる基板配線の不良を検知し、前記2信号端子の一方と当該2信号端子以外の前記信号端子とからなる2信号端子の組合せを生成し、前記プログラマブル論理素子の前記演算論理を書き換えて当該2信号端子間を接続し、当該2信号端子間での信号の導通の有無に基づいて、いずれの信号端子に関わる基板配線が不良であるかを特定すること、を特徴とする回路装置の試験方法。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、プログラムにより外部から論理回路構成を書き換え可能なプログラマブル論理素子を含んで構成される回路装置の回路試験を行う試験方法に関する。 【0002】 【従来の技術】プログラマブル論理素子としては、例えば、FPGA(Field Programmable Gate Array)がある。FPGAは、ANDやORのエレメントのアレイを含んでおり、端子から所定の電流パルスを印加することによりアレイ状の配線の交点を溶断したりすることにより、チップ内に所望の論理回路構成をプログラミングすることができる。配線を溶断する種類のものは、一旦書き込んだ内容を書き換えることは困難であるが、他にフローティングゲートなどを用いて繰り返し電気的に書き換え可能とした構成を有するものがある。 【0003】この書き換え可能なFPGAを含んで構成される回路装置を試験する回路試験方法の従来技術として、特開平7−198784号公報に開示される「演算論理診断装置」がある。これを以下、説明する。図13は、FPGAデバイスの内部を構成する基本論理ブロックの一般的なブロック構成図である。基本論理ブロック2は、少なくとも一つの入力信号4を入力され、出力信号6を出力する。基本論理ブロック2内には、入力信号4の値“a”、“b”、“c”に基づいて論理演算“x=f(a,b,c)”を行う論理セル8が含まれる。この論理セル8の出力xは、レジスタ10とセレクタ12に渡される。セレクタ12は、論理セル8から直接渡される当該論理セル8の出力と、一旦レジスタ10に保持された論理セル8の出力とを入力され、これらのいずれかを選択して、基本論理ブロック2の出力信号6として出力する。図13に示す構成は、一般形であり、実際にはレジスタ10やセレクタ12を含まない構成もあり得る。 【0004】図14は、このような基本論理ブロック2が9個含まれて構成されるFPGAの一例の概略の回路構成図である。図において、FPGA20は、点線で区切られる縦3列、横3行の9個の基本論理ブロック2からなることが示されている。ここで述べる従来技術は、この原回路にスキャンレジスタを内蔵させて、故障箇所の特定を図るものである。図15は、スキャンレジスタが内蔵されたFPGAの一例の概略の回路構成図である。従来技術は、FPGAのプログラミングを行うに際して、原回路の回路情報に基づいて、スキャンレジスタ30を組み込む修正処理を行い、スキャンレジスタ30を含んだ回路情報を生成する。そしてその生成された回路情報によってFPGAのプログラミングが行われる。スキャンレジスタ30は、FPGA20の信号端子32、34の間でチェーン状に接続される。これらスキャンレジスタ30は、各基本論理ブロック2の演算結果を一時保持して、FPGA外部で観測するために用いられる。またスキャンレジスタ30は、例えば信号端子32から制御信号にて指定され値を設定されたり、信号端子34へ値を読み出されたりする。 【0005】このようにスキャンレジスタ30を各基本論理ブロック2間に配置することにより、各基本論理ブロック2の入力側のスキャンレジスタ30に既知の値を設定し、それに対する基本論理ブロック2の出力をその出力側のスキャンレジスタ30にて観測することができる。すなわち、これにより、FPGA内の故障箇所の特定が容易となる。 【0006】なお、故障箇所が回路の信号経路上に一つのみ存在する単一縮退故障を検出できるような入出力データのパターンは例えばATPG(Auto Test Pattern Generator)で生成される。このATPGのアルゴリズムについては、例えば渡部誠:編著「超LSI設計」株式会社企画センター:発行(昭和58年)p.198〜207に示されている。 【0007】図16は、上記従来技術の回路試験方法の手順を示すフロー図である。まず、図14に示す原回路(S100)を構成する各基本論理ブロック2の出力側にスキャンレジスタを挿入し(S102)、第2の回路を得る(S104)。 【0008】このスキャンレジスタにおいて、各基本論理ブロックの出力結果を観測することができるので、このスキャンレジスタはあたかも出力値を観測するためのピンと見立てられる。よって、スキャンレジスタをピンと見立てる変換を回路構成情報に対して行い(S106)、第3の回路の回路構成情報を得る(S108)。この第3の回路に対して、単一縮退故障を仮定してテストパターンを生成し(S110)、入力試験データ(S112)とそれに対する期待値(S114)とを得る。 【0009】レジスタを挿入された第2の回路の回路構成情報は、FPGAに書き込まれる(S116)。このFPGAのレジスタに、上記入力試験データが設定されS118)、論理演算を1クロック進める(S120)。その結果、レジスタに出力データが格納され、これが読み出される(S122)。この出力データと上記期待値とが比較され(S124)、不一致であればその基本論理ブロックに関して故障が存在することになる(S126)。処理S118〜S124は、入力データが残っている限り(S128)、繰り返され、入力データが無くなれば試験が終了する(S130)。上述した従来方法によれば、FPGA内部の故障箇所を特定することができる。 【0010】また、他の従来技術は、複数の素子が配置された基板上の特定の素子を試験対象素子とするものである。これは、試験対象素子の信号端子につながる当該素子の周辺の配線にプローブ針を配置、接触させ、このプローブ針を介して試験のための信号の入出力を行うというものである。これには、例えば各端子ごとにプローブ針の位置調整を行う方法と、信号端子の配置が同一である試験を多数行う場合によく用いられるプローブカードによる方法とがある。後者のプローブカードは、単一の基板にプローブ針が試験対象素子の信号端子配列に合わせて予め取り付けられているので、プローブ針の位置調整の手間が削減される。 【0011】複数の素子が配置された基板の回路試験を行う他の従来技術として、基板全体を対象としてファンクション試験を行うという方法と、境界スキャン法により試験する方法がある。このうち前者は、回路装置の基板上の全素子に対応して考えられる様々なテストパターンを入力し、その出力によって故障箇所を特定するものである。後者の境界スキャン法は、試験対象素子のなるべく近傍に配置されるスキャンレジスタ等を介してテストパターンの入力及びその出力の取り出しを行うものである。 【0012】また、FPGAの外部の故障、つまりFPGAが取り付けられる基板配線の不良などの検出に関連する従来技術として、特開昭60−167554号公報に開示される「導通試験方式」がある。この導通試験方式は、時分割交換機のサービス呼ごとの、通話路に発生し得る障害箇所を発見するためのものであるが、FPGAに適用することができる。 【0013】図17、図18は、上記導通試験方式を説明する伝送システムの概略の構成図である。図において、個別終端回路40a、40bは、各種の回線に係る加入者電話機42a、42bにて使用されるデータと、伝送路に適用される伝送方式に適した信号とを変換する装置である。個別終端回路40a、40b内には、それぞれ導通試験機能部48a、48bが設けられる。個別終端回路40a、40bと伝送路との間には通信端末インターフェース44a、44bが設けられ、これにより所定のプロトコル変換が行われる。伝送路上には交換機が存在し、交換機の時間スイッチ46a〜46cを介して、個別終端回路40a、40bは相互に接続される。 【0014】サービス発呼側の加入者電話機と被呼側の加入者電話機とは、各時間スイッチにおいて、図に示す点線矢印の接続によって、相互に接続される。上記従来技術は、この実際の通話接続をする前に、各時間スイッチにおいて図17又は図18に示す幅広空白矢印の接続によって実現される折り返し接続を行う。例えば、図17に示す例では、発呼側の導通試験機能部48aが、通話に使用するチャネルにデジタル試験パターンを送出する。この試験パターンは時間スイッチ46aで折り返して、導通試験機能部48aに戻る。導通試験機能部48aは、送出したパターンと受信したパターンとを比較して伝送路50a、50bの導通を確認する。伝送路50a、50bの導通を確認すると、時間スイッチ46aと時間スイッチ46aの次に接続される時間スイッチ46bとの間の伝送路52a、52bの導通が確認される。これは、伝送路50a、50bについての上記導通試験と同様に、時間スイッチ46bにおいて折り返し接続を形成して行われる。このようにして、順次発呼側から被呼側までの伝送路の導通が確認される。もしある時間スイッチでの折り返し接続試験において異常が検出された場合には、その時間スイッチを含んだ折り返し伝送路に異常があることが特定される。 【0015】図18も、折り返し接続による導通試験の順序が図17と異なるのみで、基本的に同様である。この技術を用いれば、ある素子からFPGAへの2線について、FPGA内で折り返し接続を構成して、それら2線に関する配線の異常を検出することが可能である。 【0016】 【発明が解決しようとする課題】このように、特開平7−198784号公報に示される従来技術は、FPGAを構成する基本論理ブロック内に起こる縮退故障を検出することに対しては有効であるが、FPGAが搭載された基板やマルチチップモジュール(以下、MCMと略す。)において部品実装時、並びに装置使用時の振動などで発生し得る部品接合部や基板上でのオープン故障、ショート故障の検出には適していないという問題点があった。また、FPGAを含んで構成される回路装置には、FPGA以外の部品も使用されるため、上述したFPGA内部の縮退故障を検出する回路試験方法は、FPGA以外の部品で発生する不良の検出に適したものではないという問題点もあった。 【0017】また、プローブ針を用いるプロービングでは、プローブ針の位置合わせが大変であるという問題があった。特にこの問題は素子の集積度が高い場合など、その信号端子数が多くなるほど重大となる。一方、プローブカード等の治具を用いるプロービングでは、治具を制作する必要があるため、そのための制作時間やコストを要し、回路試験を簡単に行うことができないという問題があった。プローブカードのメリットは同じ端子配列に対する試験を繰り返し行う場合には発揮されるが、そうでない場合にはこの問題点によるデメリットの方が大きくなる。 【0018】次に、基板全体を対象としてファンクション試験を行う方法では、試験対象を特定の素子に絞り込むことができないという問題がある。よって、試験対象が基板上の全素子となり、対象が複雑となるのに応じて級数的にテストパターンの数が増大する。そのため、テストパターンの生成やそれを用いた試験の実施に長時間を要するという問題があった。 【0019】また、境界スキャン法による方法は、試験対象素子が境界スキャンを内蔵していない場合には適用できないという問題があった。なお。その場合でも、試験対象素子の周辺の素子が境界スキャンを有している場合には、それを介してテストパターンの入出力を行うことができる。しかし、その場合、境界スキャンにより定義される範囲内には試験対象素子以外の部分も含まれることになり、その分、対象が複雑となる。よって、上記基板全体を対象とする場合ほどではないが、同種の問題を生じる。 【0020】特開昭60−167554号公報に開示される「導通試験方式」を用いた試験方法では、FPGA内での折り返しにより接続される2信号線のいずれに異常があるのかまでは特定できないという問題があった。 【0021】本発明は上記問題点を解消するためになされたもので、FPGA等のプログラマブル論理素子を含んで構成される回路装置において発生し得る故障の箇所の特定を簡単に行うことができる回路試験方法を提供することを目的とする。 【0022】 【課題を解決するための手段】第1の本発明に係る回路試験方法は、外部からのアクセスによりその内部の演算論理を書き換え可能なプログラマブル論理素子を含んで構成される回路装置を試験する回路試験方法であって、前記回路装置に含まれる試験対象素子の試験を行う際に、当該試験対象素子と前記回路装置の入出力端子との間に介在する前記プログラマブル論理素子の前記演算論理を書き換えて、当該プログラマブル論理素子内に前記試験対象素子と前記入出力端子との間の信号を透過させるスルーパスを形成するものである。 【0023】第2の本発明に係る回路試験方法は、第1の発明に係る回路試験方法を、前記回路装置の基板配線にプローブ針を接触させプロービングによる回路試験を行うことができ、前記プロービングを制御するプローブ制御部を備えた回路装置の試験装置に適用するものであり、前記試験対象素子の信号端子のうち前記回路装置の前記入出力端子との間で直接、前記信号を伝達できないものについては、前記プローブ制御部が、前記スルーパスの形成情報及び前記回路装置の基板配線情報に基づいて、当該信号端子につながる前記基板配線に前記プローブ針を接触させ、前記回路装置の前記入出力端子及び前記プローブ針と前記試験対象素子との間で前記信号を伝達させて前記試験対象素子の前記回路試験を行うものである。 【0024】第3の本発明に係る回路試験方法は、第1の発明に係る回路試験方法において、前記試験対象素子の信号端子の少なくとも一部に関して、当該信号端子と前記回路装置の前記入出力端子との間に介在する前記プログラマブル論理素子のうち、信号経路上、当該信号端子に最も近い近傍プログラマブル論理素子を選択し、前記近傍プログラマブル論理素子の前記演算論理を書き換えて、当該近傍プログラマブル論理素子内に、前記入出力端子から当該信号端子への入力データ又は当該信号端子から前記入出力端子への出力データを一時保持するスキャンレジスタを構成するというものである。 【0025】第4の本発明に係る回路試験方法は、第3の発明に係る回路試験方法において、前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記入力データを一時保持する前記スキャンレジスタの後段に複数の前記信号端子に対応してその出力を振り分け可能なデコーダが形成され、前記スキャンレジスタには複数の前記入力データが一つにまとめられた符号化データが前記入出力端子から入力されて格納され、前記デコーダは、前記符号化データを読み出し、複数の前記入力データを復元し、それら前記入力データをそれぞれ対応する前記信号端子へ向けて出力するというものである。 【0026】第5の本発明に係る回路試験方法は、第3の発明に係る回路試験方法において、前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記出力データを一時保持する前記スキャンレジスタの前段に複数の前記信号端子に対応する前記出力データを受け付け可能なコーダが形成され、前記コーダは受け付けた複数の前記出力データを一つの符号化データに統合し、前記スキャンレジスタは、前記符号化データを一時保持するというものである。 【0027】第6の本発明に係る回路試験方法は、第3の発明に係る回路試験方法において、前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記入力データを一時保持する前記スキャンレジスタの後段に、前記信号端子にそれぞれ対応した複数の出力線の一つを選択するセレクタが形成され、前記セレクタは、選択した前記出力線に前記スキャンレジスタから読み出した前記入力データを出力するというものである。 【0028】第7の本発明に係る回路試験方法は、第3の発明に係る回路試験方法において、前記回路装置に含まれる試験対象素子の試験を行う際に、前記プログラマブル論理素子には、前記出力データを一時保持する前記スキャンレジスタの前段に、前記信号端子にそれぞれ対応した複数の入力線の一つを選択するセレクタが形成され、前記セレクタは、選択した前記入力線から得られる前記出力データを前記スキャンレジスタに出力するというものである。 【0029】第8の本発明に係る回路試験方法は、外部からのアクセスによりその内部の演算論理を書き換え可能なプログラマブル論理素子を含んで構成される回路装置を試験する回路試験方法であって、前記プログラマブル論理素子の2つの信号端子を選択して、当該プログラマブル論理素子の前記演算論理を書き換えて当該2信号端子間を接続し、当該2信号端子間での信号の導通の有無に基づいて、当該2信号端子に関わる基板配線の不良を検知し、前記2信号端子の一方と当該2信号端子以外の前記信号端子とからなる2信号端子の組合せを生成し、前記プログラマブル論理素子の前記演算論理を書き換えて当該2信号端子間を接続し、当該2信号端子間での信号の導通の有無に基づいて、いずれの信号端子に関わる基板配線が不良であるかを特定するというものである。 【0030】 【発明の実施の形態】次に、本発明の実施形態について図面を参照して説明する。 【0031】[実施の形態1]図1は、第1の実施の形態に係るFPGAを含んだ回路装置の原回路の一例を示す模式的な回路構成図である。この回路装置200は、基板に4つの書き換え可能なFPGA202a〜202dと試験対象素子204が搭載されて構成される。試験対象素子204は、FPGAであってもよいし、そうでなくても構わない。基板には、この回路装置への入出力端子206を集めたコネクタ208a、208bが設けられている。一般に、試験対象素子204の信号端子の少なくとも一部は、他の部品を介在して入出力端子206と接続される。ここで実施される本発明は、その介在する部品にFPGA等のプログラマブル論理素子が含まれる場合に効力を発揮するものである。 【0032】図に示す例では、試験対象素子204の各信号端子はそれぞれFPGA202a〜202dのいずれかを介して入出力端子206に接続されている。FPGA202a〜202d内には、演算論理がプログラムされている。つまり、試験対象素子204の信号端子と入出力端子206との間には、それら演算論理が介在するので、一般には入出力端子206から入力されたテストデータは直接、試験対象素子204の信号端子には届かないし、試験対象素子204から出力された出力結果も直接、入出力端子206に届かない。そのため、試験対象素子204の試験を行うことが難しい。すなわち、基板全体が試験対象とされる場合における上述した問題が生じる。 【0033】図2は、第1の実施の形態に係る回路試験方法を適用した回路装置の一例を示す模式的な回路構成図である。本方法では、試験対象素子204の周辺に存在するFPGA202a〜202dの演算論理を、当該試験対象素子204の試験に際して書き換え、各FPGA202a〜202d内に、試験対象素子204の信号端子と入出力端子206との間の信号を透過させるスルーパスを形成する。ここで、「信号を透過させる」とは、FPGAのある信号端子から入力された入力信号がそのまま他の信号端子から出力される、いわばFPGAがバイパスされることをいう。このFPGAの書き換えは、入出力端子206からの入力信号によって行われる。 【0034】このFPGAをバイパスする書き換えにより、試験対象素子204への入力信号端子の可制御性、及び出力信号端子の可観測性が向上し、試験対象素子204の試験が容易となる。 【0035】図2に示す例では、試験対象素子204の各信号端子が、入出力端子206と一対一対応で直接接続される。つまり、テストパターンは試験対象素子204のみを対象としたものでよいので、その数が必要最小限に限定される。通常、各素子は一つの基板に搭載される前に、個々に試験を行われる。図2に示す例では、そのような試験対象素子204単体での試験に用いられたテストパターンを用いて、試験対象素子204に関する試験を行うことができる。ここで、試験対象素子204に関する試験とは、基板への組み付け後に生じる試験対象素子204自体の不良だけでなく、試験対象素子204と基板との接続不良や、試験対象素子204周辺の配線の不良をも検知対象とするものである。 【0036】なお、試験対象素子204の信号端子と入出力端子206との間に、プログラマブル論理素子以外の部品も存在する場合には、試験対象素子204の信号端子と入出力端子206とを直接接続することはできない。しかし、プログラマブル論理素子を上記のようにバイパスする書き換えを行うことによって、原回路に比べて回路構成は単純化されるので、この場合においても上記入力端子の可制御性、出力端子の可観測性の向上は図られ、原回路全体を試験対象とする場合よりも少ないテストパターンで試験を実施することができる。 【0037】試験対象素子が複数ある場合には、それらを一つずつ対象として上記試験を行う。全試験が終了したら、入出力端子206から入力信号を与えてFPGA202a〜202dの内容を原回路の演算論理に復元する処理が行われる。このように、試験においては、他に新たな部品を追加する必要がなく、基板上のFPGAが有効に活用される。 【0038】本実施の形態の回路試験方法は、例えば、回路装置200の全体の回路構成情報、また各部品ごとの回路構成情報を記憶した電子計算機を用いて実現することができる。そのような電子計算機は、例えばインターフェースを介して入出力端子206に接続され、回路構成情報に基づいてFPGAの書き換えのための入力信号を生成したり、書き換えられFPGAがバイパスされた回路構成におけるテストパターンの生成及びそのパターンを回路装置200にインターフェースを介して入力することなどを行うように構成される。 【0039】[実施の形態2]本発明の第2の実施の形態は、プローブ針の移動装置を備えた試験装置(プローバー)に関するものである。図3は、第2の実施の形態に係る試験装置の概略の構成を示す模式図である。試験対象となる基板220上には、複数の素子222が配置されている。基板220は試験台224上に載置され、その入出力端子が試験台224に設けられた、例えばコネクタ等に接続される。 【0040】一方、基板220上には、これら素子222を相互に接続する配線が設けられる。プローブ針230は、プローブ移動装置232に取り付けられ、これにより移動されて基板220上の配線に位置合わせされた後、降下され当該配線にコンタクトされる。 【0041】制御装置234は、プローブ移動装置232の制御や、試験台224及びプローブ針230と基板220との間のテストパターンの入出力の制御を行う。制御装置234には入力装置236と表示装置238とが接続される。入力装置236は制御装置234へのテストパターンデータや基板220の配線パターンデータ等の入力を行うために用いられる。表示装置238は、テスト結果の表示を行う。制御装置234は、例えばプローバーに接続された、又はプローバーに内蔵されたコンピュータである。 【0042】図4は、本実施の形態に係る回路試験方法を適用した回路装置の一例を示す模式的な回路構成図である。図に示す構成でのFPGA242a〜242dは、実施の形態1で説明したように、原回路の演算論理が、入出力端子206と試験対象素子244との間の信号をスルーパスするような論理に書き換えられたものである。 【0043】本実施の形態が上記実施の形態1と異なるのは、試験対象素子244が入出力端子206に通じていない信号端子246a、246bを有している点にある。つまり、これらの信号端子246a、246bには、基板220の配線248a、248bを介して素子250a、250bが接続されているが、これらの素子250a、250bは、入出力端子206に接続されていない。そのため、入出力端子206を介したテストパターンの入出力では、配線248a、248bの断線や当該配線と信号端子246a、246bとの接触不良を検出することができない。 【0044】本実施の形態では、このような信号端子246a、246bに関わる故障検出をも行うため、2つのプローブ針230をそれぞれ配線248a、248bに移動させ、これら配線にコンタクトさせる。なお、プローブ針230は必ずしもこのような場合のみだけでなく、入出力端子206からの信号の入出力が可能な試験対象素子244の信号端子に対しても用いることができる。例えば、設計上は入出力端子206からの入出力が可能であっても、試験対象素子244の周辺の素子、図に示す例ではFPGA242a〜242dに関する故障等があり、実際には入出力端子206からの入出力が困難となっているような場合に、プローブ針230を用いてその故障箇所を回避した試験を行うことができる。 【0045】図5は、本実施の形態の試験方法の処理の流れを示すフロー図である。まず、制御装置234は、FPGA242a〜242dに書き込まれた原回路を試験回路に書き換える(S300〜S304)。試験回路は基本的に、実施の形態1で説明したように、信号のスルーパスを行うように構成される。制御装置234は、基板220の配線パターン情報や、すでに行われた試験により得られた故障箇所情報に基づいて、プローブ針230をコンタクトさせる位置を決定する。そしてこの決定された位置へ、プローブ移動装置232を制御してプローブ針230の位置を変更する(S306)。 【0046】さらに制御装置234は、このように構成された試験回路に対してテストパターンを生成する(S308)。ここでは、既検出の故障箇所を考慮してプローブ針230の配置を決定することにより試験回路が定められるので、一般にテストパターンも、既得の試験結果に応じて変更される。 【0047】ここでテストパターンは、試験回路への入力のパターンと、それに対してシミュレートされた出力のパターンとから構成される。制御装置234は、入力のパターンを試験回路に入力し、それに対する出力を、テストパターンに含まれる出力のパターンと比較する(S310)。 【0048】比較の結果が不一致の場合は、故障が存在する可能性が示されたことになるので、その故障箇所の特定を行う(S312)。故障箇所を特定できない場合には、制御装置234は、さらにその絞り込みを行うことができるようなテストパターンを生成したり、プローブ針230の配置を変更したりして、処理S308又はS306に戻り、故障箇所の特定を試みる。 【0049】試験はさまざまな箇所について行われる。予定された箇所についての試験が残っている場合には(S314)、試験回路を変更して(S316)処理S304に戻り試験を続行する。全ての試験箇所についての試験が終了した場合には、回路試験処理を終了する(S318)。 【0050】[実施の形態3]図6は、第3の実施の形態に係る回路試験方法を適用した回路装置の一例を示す模式的な回路構成図である。図に示す構成でのFPGA332a〜332dは、基本的には実施の形態1で説明したように、原回路の演算論理が、入出力端子206と試験対象素子244との間の信号をスルーパスするような論理に書き換えられたものである。但し、本実施の形態では、試験対象素子334の信号端子の全てに対して、入出力端子206との間で信号をスルーパスさせる回路をFPGA332a〜332dに書き込むわけではない点で、第1の実施の形態と相違する。つまり、試験対象素子334の信号端子の一部に対しては、FPGA332a〜332d内にスキャンレジスタ(境界スキャンレジスタ)を構成する。図に示す例では、試験対象素子334の信号端子336a、336bに対して、それぞれスキャンレジスタ338a、338bがFPGA332b、332dに書き込まれる。 【0051】例えば、FPGA332a〜332dの信号端子のうち、コネクタ208に接続されている本数が、試験対象素子334の信号端子の数より少ないような場合、コネクタ208に用意される入出力端子206のみでは、試験対象素子334の全信号端子を独立に制御することができない。 【0052】このような場合、実施の形態2のようにプローブ針230を備えたプローバーでは、入出力端子206が不足する分は、プローブ針230で補って回路試験を行うこともできる。しかし、プローブ針230を基板220に立てるための機構を有していない試験装置では、それは不可能である。また、プローブ針230の位置を自動制御するためのプローブ移動装置232及び制御装置234を有していない装置では、プローブ針230を手動で調整しなければならず、これは多数のテストパターンによる試験において現実的な困難をもたらす。 【0053】本実施の形態の回路試験方法は、これらプローブ針230を用いた試験を行うことができないような試験装置に適用可能な方法である。つまり、FPGA332a〜332d内に、入出力端子206が不足する分に応じた数のスキャンレジスタを構成し、それらをチェーン状に接続する。チェーンは1つの場合もあるし、複数の場合もある。スキャンレジスタと基板220外の制御装置との間の入出力のために、各チェーン端に通常それぞれ一つの入出力端子206が割り当てられる。このチェーン端の入出力端子206から、そのチェーン上のスキャンレジスタに一つずつデータが設定される。設定されたデータは、そのチェーン端の入出力端子からの制御信号によって一斉に試験対象素子334へ出力される。また、試験対象素子334からスキャンレジスタに設定されたデータは、そのチェーン端の入出力端子206から一つずつ読み出すことができる。このように各スキャンレジスタへのデータの設定、読み出しはスキャンレジスタの数より少ない入出力端子で制御することができ、上記入出力端子206の不足という問題を、プローブ針230やその移動装置を用いることなく回避することができる。 【0054】[実施の形態4]本実施の形態は、上記実施の形態3と同様の場合に適用される回路試験方法である。つまり、本方法は、入出力端子206の本数が不足する場合に、スキャンレジスタを用いてその不足を補う方法の一つである。図7、図8は本実施の形態と実施の形態3との差異を説明するための模式図である。図7は、実施の形態3での試験対象素子からの出力とスキャンレジスタの対応関係を示す模式図である。図において、試験対象素子からの出力350a〜350dに対してはそれぞれ別個のスキャンレジスタ352a〜352dが設けられるのが、実施の形態3で説明した形態であった。 【0055】これに対して、図8は本実施の形態での試験対象素子からの出力とスキャンレジスタの対応関係を示す模式図である。本実施の形態では、試験対象素子からの出力350a〜350dはそれぞれ、まずコーダ354に入力される。コーダ354は、入力された出力350a〜350dを一つの符号化データに統合して出力する。このコーダ354に対して、スキャンレジスタ356は一つだけ用意され、コーダ354から出力される符号化データ358を格納する。基板からはこの符号化データが読み出される。 【0056】これらコーダ354とスキャンレジスタ356は試験対象素子の周辺のFPGA内の演算論理を書き換えて構成される。このような書き換えを行うことにより、スキャンレジスタの個数を減少することができる。 【0057】上述したのは、試験対象素子の出力側での例であるが、同様に試験対象素子の入力側においても類似のことを行うことができる。この場合には、試験対象素子への入力が通過する周辺FPGA内に、複数の入力データを統合した符号化データを格納するスキャンレジスタとこれに対応したデコーダとが構成される。そして、基板の入出力端子からは符号化データが入力され、これはスキャンレジスタに格納される。そして試験開始のトリガ制御信号を受けてデコーダに読み出され、このデコーダで、試験対象素子の複数の信号端子への入力データにデコードされ、これが試験対象素子に入力される。 【0058】これにより、やはり、入力データを保持するためのスキャンレジスタの個数を減少することができる。 【0059】このようにデコーダ、コーダを用いてスキャンレジスタを減少することにより、スキャンレジスタへのデータの格納や逆に読み出しの動作のオーバーヘッドを軽減することができる。 【0060】[実施の形態5]本実施の形態は、上記実施の形態3と同様の場合に適用される回路試験方法である。つまり、本方法は、入出力端子206の本数が不足する場合に、スキャンレジスタを用いてその不足を補う方法の一つである。図9は本実施の形態での試験対象素子からの出力とスキャンレジスタの対応関係を示す模式図である。これに対応する実施の形態3での図は、上記実施の形態4で用いた図7である。ここでは、図7を援用しつつ、説明を行う。 【0061】本実施の形態では、試験対象素子からの出力350a〜350dはそれぞれ、まずセレクタ370に入力される。セレクタ370は、制御信号372a、372bにより入力信号のうちの一つを選択して出力する。このセレクタ370に対して、スキャンレジスタ374は一つだけ用意され、セレクタ370からの出力されるデータ376を格納する。スキャンレジスタ374に対して読み出し動作を行うことにより、基板からはこのデータ376が読み出される。 【0062】これらセレクタ370とスキャンレジスタ374は試験対象素子の周辺のFPGA内の演算論理を書き換えて構成される。このような書き換えを行うことにより、スキャンレジスタの個数を減少することができる。なお、セレクタ370に入力される4つのデータそれぞれを読み出すには、同じ入力データのテストパターンを用いて4回試験を行えばよい。これにより、試験に要する時間すなわちクロック数は4倍になるが、逆にスキャンレジスタからの読み出し動作は単純化され、そのオーバーヘッドが減少する。 【0063】上述したのは、試験対象素子の出力側での例であるが、同様に試験対象素子の入力側においても類似のことを行うことができる。この場合には、試験対象素子への入力が通過する周辺FPGA内に、一つの入力データを格納するスキャンレジスタとこれに対応したセレクタとが構成される。セレクタは、その切り換えを行う制御信号に応じて、スキャンレジスタから読み出したデータの出力先となる試験対象素子の信号端子を切り換える。 【0064】これにより、やはり、入力データを保持するためのスキャンレジスタの個数を減少することができる。 【0065】このようにセレクタを用いてスキャンレジスタを減少することにより、スキャンレジスタへのデータの格納や逆に読み出しの動作のオーバーヘッドを軽減することができる。 【0066】[実施の形態6]図10、図11は、それぞれ本発明の第6の実施の形態である回路試験方法を説明するためのFPGAの接続例を示す模式図である。 【0067】図において左側が基板の入出力端子に近い側である。また、図に示す例では入出力端子に近いFPGA400とその後段に位置するFPGA402とが接続されている。まず、FPGA400の信号端子のうち基板の入出力端子につながる2つの信号端子404a、404b間で折り返し接続がされるように、FPGA400の演算論理を書き換える(図10(a))。この状態で、基板の入出力端子につながる信号端子404a〜404c等にテストパターンを与える。これにより特に信号端子404a、404bを中心としたFPGAの信号端子に係わる故障の有無が検知される。 【0068】その故障とは、例えば、FPGA内部の故障も含まれるが、むしろFPGA400を基板に搭載する際に発生し得るオープン故障、ショート故障であることが多いと思われる。もし、図10(a)に示す接続において故障がなければ、信号端子404a−404b間は導通し、その他の信号端子404a−404c間や404b−404c間は非導通となるはずである。従って、信号端子404a−404b間が非道通の場合には、信号端子404a又は404bのいずれかに関して基板と端子との接触不良等のオープン故障があることが推定される。しかし、そのどちらの端子に関係するかまでは、この接続パターンだけでは特定できない。また、信号端子404a−404c間が導通状態となる場合には、これらの端子間又はそれらに関係する配線間にショート故障がある可能性が示される。しかし、信号端子404aと404bとがFPGA内で接続されているため、この場合には通常、信号端子404b−404c間も期待に反して導通状態となるはずである。よって、やはりこの接続パターンだけでは、信号端子404a−404c間と信号端子404b−404c間のどちらにショート故障の原因があるのかまでは特定できない。 【0069】本実施の形態に係る回路試験方法の特徴は、さらにFPGA内の接続パターンを変えて、上述したような故障の原因箇所を特定する点にある。図10(b)、(c)は故障箇所の特定を行う回路試験手続を説明する図である。 【0070】図10(b)は、信号端子404a、404c間で折り返し接続がされるように、FPGA400の演算論理を書き換えた状態を示している。また図10(c)は、信号端子404b、404c間で折り返し接続がされるように、FPGA400の演算論理を書き換えた状態を示している。それぞれこの状態で、信号端子404a〜404c等にテストパターンが与えられる。 【0071】例えば、図10(a)に示す試験で信号端子404a−404b間でオープン故障が検知された場合には、図10(b)での信号端子404a−404c間、図10(c)での信号端子404b−404c間のいずれかでオープン故障が検知されることが予想される。もし、信号端子404a−404c間でそれが検知されたならば、そのオープン故障は信号端子404aに関係するものであると特定される。一方、信号端子404b−404c間で検知されたならば、信号端子404bに関係するものと特定される。 【0072】また、図10(a)に示す試験で信号端子404a−404c間が導通状態となる場合についても、図10(b)、(c)に示す異なる接続パターンでの様々な信号端子間での導通/非導通の情報からショート故障の箇所が特定される。 【0073】このようにして、入出力端子とそれに直接接続されるFPGA400との間でのオープン故障やショート故障が特定される。その上で本回路試験方法は、FPGA400とその後段に位置するFPGA402との間でのオープン故障やショート故障の特定する回路試験を行う。図11(a)〜(c)は、その方法を説明する模式図である。ここでは、FPGA400での回路試験では、故障はなかった例を示している。その場合、FPGA400の入出力端子側の信号端子とFPGA402側の信号端子との間にスルーパスが形成される。これにより入出力端子からFPGA402に直接、テストパターンを供給することができ、そのテストパターンを用いて、FPGA400について行ったと同様の回路試験が行われる。 【0074】以下、同様にして、対象を配線上、入出力端子から遠いFPGAへ順次、進めることができ、基板上の広範な部分に対してこの回路試験を行うことができる。 【0075】図12は、本実施の形態の試験方法の処理の流れを示すフロー図である。まず、この回路試験を行う回路試験装置の制御装置は、例えば図10、図11に示すFPGA400、402に書き込まれた原回路を書き換え、折り返し接続を含んだ試験回路を構成する(S500〜S504)。 【0076】さらに制御装置は、このように構成された試験回路に対して入力されるテストパターンを生成する(S506)。また、テストパターンに対する出力パターンを生成し、これと実際の出力とを比較して、両者が相違する場合には、故障箇所の特定を試みる(S508、S510)。 【0077】故障箇所が特定されていない場合には(S512)、さらに別の接続パターンへの回路変更やテストパターンの変更を行って(S514)、処理S504からの処理を繰り返す。故障箇所が特定され、さらに他の予定された箇所についての試験が残っている場合には(S516)、試験回路を変更して(S518)、処理S504に戻り試験を続行する。全ての試験箇所についての試験が終了した場合には、回路試験処理を終了する(S520)。 【0078】 【発明の効果】第1の発明によれば、試験対象素子の周辺のプログラマブル論理素子にスルーパスが形成され、回路装置の入出力端子と試験対象素子との間の信号に対して透過が図られる。これにより、試験対象となる回路構成を単純化することができるので、テストパターンの種類が削減され、回路試験が簡単になるという効果が得られる。また、試験にプローブ針やプローブカードといった治具、それらの移動手段等を必要としないので、試験自体が簡単に行えるようになるとともに、試験装置の構成が簡単となり低い経費での回路試験が可能となるという効果も得られる。 【0079】第2の発明によれば、試験対象素子の信号端子のうち入出力端子との間で直接信号を伝達できないものについては、プローブ針を用いて、試験対象素子との信号の伝達が行われる。これにより、プローブ針の使用本数が減少し、それらの相互位置の調整が容易となったり、その移動装置の構成が容易となるという効果が得られる。また、プローブカードを作成する場合においても、それに取り付けられるプローブ針の本数が少ないことにより、低価格での作成が可能となり、回路試験を容易に行えるようになるという効果が得られる。 【0080】第3の発明によれば、試験対象素子への入力データ、又はそれからの出力データを一時保持するスキャンレジスタが、試験対象素子周辺のプログラマブル論理素子に構成される。1つのプログラマブル論理素子内に設けられる複数のスキャンレジスタはチェーン状に接続され、それらへのデータの設定、又は読み出しにはレジスタ数より少ない数の信号端子しか必要としない。これにより、例えば、回路装置への入出力端子が、試験対象素子の信号端子より少ない場合等においても、試験対象素子の各信号端子に独立の信号を供給したり、逆に試験対象素子の各信号端子からの独立の信号を読み出すことが可能になるという効果が得られる。 【0081】第4の発明によれば、1つのスキャンレジスタに対して、プログラマブル論理素子内にデコーダ、コーダが設けられる。デコーダはスキャンレジスタに格納される複数の入力データを符号化した符号化データをデコードし、試験対象素子の対応する各信号端子へ出力し、コーダは試験対象素子からの複数の出力データを符号化してスキャンレジスタに格納する。これにより、スキャンレジスタの数を減少させることができ、プログラマブル論理素子内に構成されるこれらスキャンレジスタに関するデータの入出力処理のオーバーヘッドが低減するという効果が得られる。 【0082】第5の発明によれば、1つのスキャンレジスタに対して、プログラマブル論理素子内にセレクタが設けられる。スキャンレジスタに保持されたデータは、セレクタによりその複数の出力端にそれぞれ接続された、試験対象素子の信号端子のうちの一つに供給される。または試験対象素子からの複数の出力データのうちの一つがセレクタにより選択され、そのデータがスキャンレジスタに格納される。これにより、スキャンレジスタの数を減少させることができ、プログラマブル論理素子内に構成されるこれらスキャンレジスタに関するデータの入出力処理のオーバーヘッドが低減するという効果が得られる。 【0083】第6の発明によれば、プログラマブル論理素子の演算論理を書き換えて、その2信号端子の間を折り返し接続する。折り返し接続箇所を変える等により、当該2信号端子のいずれにオープン故障、ショート故障があるのかまで故障箇所を特定することができるという効果が得られる。
|
| 【出願人】 |
【識別番号】000006013 【氏名又は名称】三菱電機株式会社
|
| 【出願日】 |
平成9年(1997)7月3日 |
| 【代理人】 |
【弁理士】 【氏名又は名称】吉田 研二 (外2名)
|
| 【公開番号】 |
特開平11−23667 |
| 【公開日】 |
平成11年(1999)1月29日 |
| 【出願番号】 |
特願平9−178726 |
|