(57)【要約】【課題】ＪＴＡＧバウンダリスキャン操作をリアルタイムに可視化する。【解決手段】ＢＳＤＬファイルを解釈した結果と、集積回路のパッケージ上における端子の位置を記述したファイルを組み合わせ、バウンダリスキャンで得られたビット列に応じて、表示装置上に端子の絵を描画する方法を変化させる。【選択図】図１
2005214957.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上の集積回路が接続されたＪＴＡＧチェーンの操作を行う際に、各々の集積回路について、バウンダリスキャンレジスタのセル番号と端子番号とを対応付けたリストと、当該集積回路のパッケージにおける端子の位置と端子番号を対応付けたリストを用意し、ＪＴＡＧ操作によって得られたデータから個々の集積回路におけるバウンダリスキャンレジスタの内容を表すビット列を分離し、前者のリストによってバウンダリスキャンレジスタの各セルに対応する端子番号を求め、次いで当該バウンダリスキャンレジスタの値から対応する端子の論理値を求め、後者のリストによって端子番号から当該集積回路パッケージにおける当該端子の位置を求め、表示装置上に集積回路のパッケージおよび端子の絵を、その端子状態に応じた方法で表示することを特徴としたバウンダリスキャン可視化方法。
【請求項２】
１つの集積回路が接続されたＪＴＡＧチェーンの操作を行う際に、当該集積回路について、バウンダリスキャンレジスタのセル番号と端子番号とを対応付けたリストと、当該集積回路のパッケージにおける端子の位置と端子番号を対応付けたリストを用意し、ＪＴＡＧ操作によって得られたデータからバウンダリスキャンレジスタの内容を表すビット列を取得し、前者のリストによってバウンダリスキャンレジスタの各セルに対応する端子番号を求め、次いで当該バウンダリスキャンレジスタの値から対応する端子の論理値を求め、後者のリストによって端子番号から当該集積回路パッケージにおける当該端子の位置を求め、表示装置上に集積回路のパッケージおよび端子の絵を、その端子状態に応じた方法で表示することを特徴としたバウンダリスキャン可視化方法。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のバウンダリスキャン可視化方法において、当該集積回路の各端子の入出力する論理値を、端子の絵を表示する際の、色もしくは形状もしくは塗りつぶし方法もしくはそれらの組み合わせのいずれかの方法によって表現することを特徴としたバウンダリスキャン可視化方法。
【請求項４】
請求項１〜請求項３のいずれかに記載のバウンダリスキャン可視化方法において、当該集積回路の端子の状態が入力状態か出力状態か出力禁止状態か、もしくは当該端子がＪＴＡＧ操作可能か否かの相違を、端子の絵を表示する際の、色もしくは形状もしくは塗りつぶし方法もしくはそれらの組み合わせのいずれかの方法によって表現することを特徴としたバウンダリスキャン可視化方法。
【請求項５】
請求項１〜請求項４のいずれかに記載のバウンダリスキャン可視化方法において、表示装置上に表示された集積回路の端子の絵を、ポインティング入力装置によって操作した際に操作された座標を読み取り、請求項１に記載された当該集積回路のパッケージにおける端子の位置と端子番号を対応付けたリストを用いて、操作された座標から端子の端子番号を求め、次いで請求項１に記載の当該集積回路におけるバウンダリスキャンレジスタのセル番号と端子番号とを対応付けたリストを用いて当該端子に対応したバウンダリスキャンレジスタのセル番号を求め、次いで集積回路に対してＪＴＡＧ操作を行って当該バウンダリスキャンレジスタを操作し、当該端子の状態を操作することを特徴とするバウンダリスキャン可視化方法。
【発明の詳細な説明】
【技術分野】
【０００１】本発明は、電子回路開発及び検査手法に関し、さらに詳しくはＪＴＡＧバウンダリスキャン応用技術に関する。
【背景技術】
【０００２】ＪＴＡＧバウンダリスキャンはプリント基板の導通検査のために策定された規格であり、ＩＥＥＥ１１４９．１で標準化されている。バウンダリスキャン対応の集積回路（以下ＩＣと略す）にバウンダリスキャン操作を実行すると、バウンダリスキャンに対応した任意の端子から、任意の信号を出力あるいは入力することができる。【０００３】ＪＴＡＧバウンダリスキャンを用いればＩＣの各端子の状態を操作する事ができるため、ＩＣの任意の端子から任意の波形パターンを出力し、同一あるいは別のＩＣからその信号を入力し、それらの一致不一致を照合することでプリント基板の製造上の欠陥、あるいは部品実装上の欠陥を、部品実装完了後に検査することができる。【０００４】上記方法によるプリント基板の検査では、任意のメーカーが製造する任意のＩＣに対応するために、ＩＥＥＥ１１４９．１で規格化されたバウンダリスキャン定義ファイル（以下、ＢＳＤＬファイルと略す）が用いられる。ＢＳＤＬファイルは通常はＩＣの設計もしくは製造を行った製造元メーカーによって提供され、当該ＩＣの端子番号とそれに対応する内部信号名、および内部信号名とそれに対応するバウンダリスキャンレジスタのセルの番号を含む情報が記述されている。【０００５】その他のＪＴＡＧ応用例には、特定のメーカーが製造するプログラム可能な論理デバイス（以下、ＰＬＤと略す）について、その内部回路の論理状態をＪＴＡＧ操作によって取得し、そのデータを時系列に並べてコンピュータ画面上に波形として表示するソフトウェアが存在する。このようなソフトウェアは扱うことができるＩＣが特定のメーカーのＩＣに限定されているため、任意のメーカーが製造する任意のＩＣの端子に対して同様の機能を提供することはできない。なお、上記の波形表示方法は、ＩＥＥＥ１１４９．１で定められた標準的な方法ではなく、当該ＩＣメーカーが独自に用意したＪＴＡＧ拡張命令を利用してＩＣの内部信号を取得し、表示するものである。
【発明の開示】
【発明が解決しようとする課題】
【０００６】プリント基板の検査に用いられる方法はバッチ処理であり、リアルタイム性がない。プリント基板検査のためにはテストパターンを出力し、入力した結果と照合し、欠陥の生じた個所をコンピュータ画面上に回路図もしくはプリント基板設計図を用いて図示するが、その方法は故障個所を発見することを目的としており、バウンダリスキャンを実行する毎に取得された端子の状態をリアルタイムに視覚化しない。【０００７】上記の方法ではＢＳＤＬファイルを用いて任意のメーカーのＩＣが扱えるが、あらかじめテストパターンを作成する必要があり、テストパターンの作成にはＪＴＡＧと当該回路に対する理解と膨大な知識が必要である。さらに、発見した欠陥の存在個所を人間にわかりやすい方法で図示するためには、回路図データもしくはプリント基板図データなどの設計データをあらかじめ用意する必要がある。以上に述べたように、従来の技術ではＢＳＤＬファイル以外に、対象とする電子回路の設計データが必要である。【０００８】一方、ＰＬＤの内部回路の論理状態を、ＪＴＡＧインタフェースを通じて取得し、それをコンピュータ画面上に表示するソフトウェアでは、特定のメーカーのＰＬＤのみを扱うことができるように特化されており、任意のメーカーが製造する任意のＩＣの外部端子状態を扱うことができない。【０００９】本発明の目的は、ＪＴＡＧに対する前提知識を持たない者であっても、複数のＪＴＡＧ対応ＩＣが接続された電子回路において、事前に当該電子回路に係るテストパターンデータあるいは設計データあるいはプロジェクトファイルを作成することを必要とせずに、各々のＩＣの端子状態をコンピュータ画面などの表示装置上にリアルタイムに表示する方法を提供することである。さらに、表示された個々のＩＣの端子の絵を操作することで実際のＩＣを操作する方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】バウンダリスキャンは、ＩＣ内に構成された一種のシフトレジスタに対してデータを入出力することによって行われる。バウンダリスキャンで取得されるデータは、各バウンダリスキャンレジスタの各セルに対応した０と１のビット列であり、それぞれのビットがどのような役割をもっているかはそれだけからは判断できない。【００１１】そこで、本発明の最初の手順では、当該ＩＣのＢＳＤＬファイル中に記載の、バウンダリスキャンレジスタのセル番号と内部信号名の対応リスト、および、内部信号名とパッケージ上の端子番号の対応リストを結合し、バウンダリスキャンレジスタのセル番号と当該集積回路の端子番号とを対応付けたリストを作成する。なお、ここでリストと表現しているものを最も簡単にソフトウェアで構成するためには配列を用いることができるが、その実装方法は配列だけに限るものではなく、データベースであってもよい。すなわち、当該ＩＣにおけるバウンダリスキャンレジスタのセル番号を入力し、そのセル番号に対応した端子番号が出力結果として得られものであればよい。【００１２】一方、ＩＣパッケージの形状と端子の位置配置および端子番号はＪＥＤＥＣなどの規格団体によって規格化されており、例えばＱＦＰ１００パッケージといえばその形状と端子の位置と番号は当業者には一意に特定できる。そこで、ＤＩＰ、ＳＩＰ、ＴＳＯＰ、ＳＯＩＣ、ＱＦＰ、ＢＧＡなどの一般に用いられるＩＣパッケージについて、形状および端子の位置もしくは配置を示す座標および端子番号を含む情報を記述したパッケージ形状記述ファイルというデータを、個々のパッケージごとにあらかじめ用意する。【００１３】バウンダリスキャンによってビット列を取得する毎に、その取得したビット列を各ＩＣのその時点でのバウンダリスキャンレジスタの長さで分け、単一のＩＣに対するバウンダリスキャンレジスタのセルを分離し、前述のバウンダリスキャンレジスタのセル番号と当該集積回路の端子番号とを対応付けたリストを用いて、端子番号とその論理状態を表したリストに変換し、次いでパッケージ形状記述ファイルに記述された端子番号と座標から、コンピュータ画面などの表示装置上に表示するべき座標を求め、あらかじめ定めた方法で表示する。その表示方法には、論理値を端子の絵の近傍に表示させる他、論理値の違いを端子の絵を表示する色の違いに対応させる方法等があるが、当然ながらこれらの表現だけに制限されるものではない。【００１４】なお、バウンダリスキャンレジスタには端子の論理値を示すセル以外に、端子の入出力の区別あるいは端子が出力禁止状態か否かを示すセルがある。それらのセルの機能はＢＳＤＬファイルに記述されており、本発明では各端子の状態が入力か出力かの区別を、あらかじめ定めた方法で表示する。その方法には、色あるいは塗りつぶし方法あるいは形状によって表現する方法等があるが、当然ながらこれらの方法だけに制限されるものではない。【００１５】逆に、コンピュータ画面などの表示装置に表示されたＩＣの端子の絵に対してポインティング入力装置による操作が行われた場合に、表示装置上の座標を読み取り、パッケージ形状記述ファイル中のリストを逆に用いて、操作されたＩＣの番号と端子番号を求める。次いで、当該ＩＣの端子番号とバウンダリスキャンレジスタのセル番号のリストを逆に参照して、当該ＩＣの端子番号から対応するセル番号を求める。そのセルの値を書き換えることで、実際のＩＣの端子状態を操作する。次いで、変化後のバウンダリスキャンレジスタを再度取得し、再度可視化する。なお、ポインティング入力装置とは、マウス、タッチパネル、トラックボール、ペン型入力装置等の入力装置を意味する。
【発明の効果】
【００１６】本発明によれば、複数のＩＣが存在する場合でも、ＢＳＤＬファイルとパッケージ形状記述ファイルのみを用いて、任意のＩＣの端子状態をリアルタイムに可視化できる。本発明では、当該ＩＣのパッケージと端子の状態のみを可視化し、周囲の回路についての可視化を行う必要がないため、回路図データやプリント基板データ等の設計データ、およびテストパターンは不要である。このため、ＪＴＡＧに関する十分な知識を有していない者でも容易に使用可能であり、表示装置上に表示された個々のＩＣの絵を見ることで実際のＩＣにおける各端子の状態を容易かつ速やかに把握することができる。【００１７】さらに、表示装置上に表示されたＩＣの絵をポインティング入力装置で操作することにより、実際のＩＣの端子状態を変化させ、さらに変化後の当該端子を含むＩＣの各端子の状態をリアルタイムに知ることができる。
【発明を実施するための最良の形態】
【００１８】以下、本発明を実施するための最良の形態について、図を用いて説明する。【００１９】図１に示すように、本発明は、コンピュータ１０１と、コンピュータ画面１０２、コンピュータ１０１に接続されたＪＴＡＧインタフェースケーブル１０３、操作される対象となる電子回路１０４から構成されるシステムにおいて実施する。図１の例では、電子回路には２つのＩＣ（１１０及び１１１）が搭載されており、回路上のＪＴＡＧ配線（１０６及び１０７）を通じてＪＴＡＧコネクタ１０５によってＪＴＡＧケーブル１０３と接続されている。このＪＴＡＧケーブルを通じて、バウンダリスキャンレジスタのビット列を取得し、２つのＩＣの状態を可視化し、画面１０２上に表示する。【００２０】画面１０２上に表示されているＩＣの絵（１１２及び１１３）は、それぞれ実際のＩＣ（１１０及び１１１）の状態をリアルタイムに反映しており、描画する端子の色の違いによって端子状態の論理値１と論理値０を表現している。表示する色は、論理値０は青系統などの寒色系の色が好ましく、論理値１は赤系統などの暖色系の色が好ましい。また、ＢＳＤＬファイル中には端子番号と内部信号名の対応が記述されていることが多く、端子の内部信号名にＶＣＣおよびＧＮＤという文字列が含まれている端子は電源端子と解釈し、純粋な赤および黒で塗りつぶすことが好ましい。【００２１】次に、本発明おける可視化方法を、図２を用いてさらに詳しく解説する。【００２２】２つの操作対象ＩＣの品種を、手動で入力するかあるいはＪＴＡＧのＩＤＣＯＤＥによって自動で識別し、それぞれのＩＣのＢＳＤＬファイルを読み込む。それぞれのＢＳＤＬファイルについて、記述されている端子番号と内部信号名の対応リスト２０１とセル番号と内部信号名の対応リスト２０２を結合し、セル番号と端子番号の対応リスト２０３を作成する。【００２３】一方、ＪＴＡＧケーブルに接続されたＪＴＡＧ対応ＩＣに対して、ＥＸＴＥＳＴ命令あるいはＩＮＴＥＳＴ命令あるいはＳＡＭＰＬＥ／ＰＲＥＬＯＡＤ命令を実行した後、バウンダリスキャンレジスタに入出力操作を実行することによって、バウンダリスキャンレジスタの状態を取得し、取得した時点での各ＩＣのバウンダリスキャンレジスタの長さごとに分離する。【００２４】次に、各々のＩＣに対して、リスト２０３に記載された全ての端子についてリスト２０３からセル番号を得て、ビット列２０６に記載された当該セル番号に対応した値を参照する。その手順を全ての端子について繰り返し、端子番号とその状態を表すリスト２０７を作成する。この操作を各々のＩＣについて実行する。【００２５】リスト２０７に記載された端子番号を、パッケージ形状記述ファイルから得られるリスト２０４を用いて、描画するべき座標に変換し、描画するべき座標と端子状態のリスト２０８を作成する。この操作を各々のＩＣについて実行する。【００２６】リスト２０８に記載された全ての端子についてコンピュータ画面上に描画する際に、端子の状態に応じて塗りつぶす色、形状、塗りつぶし方法を適宜変え、端子の状態が視覚的に容易に区別できるよう描画する。この操作を各々のＩＣについて実行する。また、ＩＣのパッケージ全体とその向きを表すマークを描画するため、パッケージ形状記述ファイルにはリスト２０５に示すように、各種の図形とその描画するべき座標が記載されている。【００２７】このようにして、ＢＳＤＬファイルとパッケージ形状記述ファイルのみを用いてＪＴＡＧバウンダリスキャンを可視化することができるが、パッケージ形状記述ファイルは、特定の電子回路あるいは特定のＩＣのために作成されたものではなく、同一のパッケージ形状を持つ全てのＩＣにおいて使用できることに注意されたい。したがって、本発明を実施するソフトウェアは、その配布と同時に数多くの標準的なパッケージに対する形状記述ファイルを合わせて配布することが望ましい。【００２８】また、パッケージ記述ファイルには、端子の位置もしくは配置が座標で記述されている。このため表示されたＩＣの絵は、ＩＣの各端子がパッケージの向きと正しい位置関係を保ち、正しい順番で表示される。【００２９】次に、図３はユーザーからの視覚的な操作により、実際のＩＣの端子状態を操作する可視化方法を解説したものである。【００３０】コンピュータ画面３０１上に表示されたＩＣ３０２の端子の絵３０３を、マウスを用いてクリックあるいはドラッグなどの操作を行った際に、マウスカーソル３０４の画面上の座標を読み取り、パッケージ形状記述ファイル中のリストを参照して当該端子の端子番号を特定する。次いで、端子番号とバウンダリスキャンレジスタのセルの対応リストを参照して、端子番号から対応するセルを特定する（手順３０６）。【００３１】また、マウス操作が行われた端子に対して、当該端子の論理値を０または１に変化させるか、あるいは論理値を反転させるかという規則をあらかじめ定めておき、手順３０６によって計算されたセルに対応するビット列のビットを手順３０５で求めた値で上書きする。この手順によって、送信するべきビット列を作成し（手順３０７）、ＪＴＡＧに対して送信と受信を行う（手順３０８）。【００３２】なお、ＪＴＡＧは送信と受信が同時に行われるため、受信したビット列は、端子の状態を更新する前の状態が格納されている。このため、手順３０８で受信したビット列は、最後に更新した端子の状態が反映されていない。整合性を確保するための方法としては、例えば図３の手順３０９に示すように、同じ値で２回送信し２回目に受信したビット列３１０を用いるという方法がある。【００３３】受信したビット列３１０は、本発明の方法により視覚化３１１される。また、受信したビット列３１０は、次の端子状態の操作に用いられる。【００３４】なお、ビット列の初期値は、ＢＳＤＬファイルとユーザーの指示に従って適切な値で新規に作成することもできる（手順３１２）。また、過去にＪＴＡＧバウンダリスキャンのＳＡＭＰＬＥ／ＰＲＥＬＯＡＤ命令によって取得した値を用いることもできる。
【図面の簡単な説明】
【図１】本発明の実施例を表した図である
【図２】バウンダリスキャンを可視化する方法を、各種データの処理手順によって表現した図である。
【図３】視覚的なバウンダリスキャンによって実際のＩＣの端子を操作する手順を表現した図である。
【符号の説明】
１０１  コンピュータ
１０２  コンピュータの画面
１０３  ＪＴＡＧインタフェースケーブル
１０４  操作対象電子回路
１０５  電子回路上のＪＴＡＧインタフェースコネクタ
１０６  電子回路上のＪＴＡＧ配線
１０７  電子回路上のＪＴＡＧ配線
１０８  キーボード
１０９  マウス
１１０  操作対象ＩＣ１
１１１  操作対象ＩＣ２
１１２  ＩＣ１の状態をコンピュータ画面上に表示したもの
１１３  ＩＣ２の状態をコンピュータ画面上に表示したもの
２０１  端子番号と内部信号名の対応リスト
２０２  バウンダリスキャンレジスタのセル番号と内部信号名の対応リスト
２０３  バウンダリスキャンレジスタのセル番号と端子番号の対応リスト
２０４  端子番号とその端子を描画する際の座標リスト
２０５  図形種別とその図形を描画する際の座標リスト
２０６  バウンダリスキャン操作によって取得されたビット列
２０７  端子番号とその端子の状態を表したリスト
２０８  端子を描画する座標とその端子の状態を表したリスト
２０９  コンピュータ画面への描画操作
３０１  コンピュータ画面上への表示例
３０２  コンピュータ画面上に表示されたＩＣのパッケージの絵
３０３  コンピュータ画面上に表示されたＩＣの端子の絵
３０４  コンピュータ画面上に表示されたマウスカーソル
３０５  出力するべき値の計算手順
３０６  書き換えるセル番号を求める手順
３０７  送信するビット列を作成する手順
３０８  １回目のＪＴＡＧ送受信操作
３０９  ２回目のＪＴＡＧ送受信操作
３１０  受信したビット列
３１１  本発明の方法により視覚化する手順
３１２  ビット列を新規に作成する手順
【図１】
2005214957.tif 000003
【図２】
2005214957.tif 000004
【図３】
2005214957.tif 000005