(57)【特許請求の範囲】
【請求項１】
バウンダリスキャン対応集積回路の設計支援装置において、
前記集積回路の論理回路としての構成を示す論理接続情報を格納する第１格納手段と、
前記集積回路に組み込まれたバウンダリスキャンチェーンによって実行することができるボードテストの命令の命令名および命令コードを記述したテスト命令記述ファイルを格納する第２格納手段と、
前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルの機能および端子を記述したバウンダリスキャンセル情報ファイルを格納する第３格納手段と、
前記集積回路の各外部端子のポート名およびピン番号を示す情報を含むパッケージ端子データを格納する第４格納手段と、
前記バウンダリスキャンチェーンの接続順序が前記パッケージ端子データによって示される前記ピン番号の順序で前記集積回路の各外部端子のピンの配置に対応するように前記論理接続情報を変更し、該変更後の論理接続情報を出力するバウンダリスキャンチェーン最適化手段と、
バウンダリスキャンチェーン最適化手段によって変更された後の前記論理接続情報を用いて前記バウンダリスキャンチェーンの接続関係を調べるとともに、前記テスト命令記述ファイル、前記バウンダリスキャンセル情報ファイル、および前記パッケージ端子データを参照することにより、前記集積回路の外部端子のポート名およびピン番号を示す情報、前記バウンダリスキャンチェーンで実行可能なボードテストの命令の命令名および命令コードを示す情報、ならびに、前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルを該バウンダリスキャンセルの前段または次段の入力または出力パッドに対するポート名および該バウンダリスキャンセルの機能名とともに前記バウンダリスキャンチェーンの接続順に示す情報を抽出し、抽出された情報をＢＳＤＬのフォーマットで記述したファイルとして出力するＢＳＤＬファイル作成手段と、
を備えることを特徴とする設計支援装置。
【請求項２】
請求項１に記載の設計支援装置において、
前記バウンダリスキャンチェーン最適化手段によって変更された後の論理接続情報により示されるバウンダリスキャンチェーンの接続順序と、該バウンダリスキャンチェーンを構成する各バウンダリスキャンセルの前段または次段の入力または出力パッドに対するポート名とに基づき、前記集積回路内部のバウンダリスキャン機構を検査するためのテストパターンを生成するテストパターン生成手段を更に備えることを特徴とする設計支援装置。
【請求項３】
第１格納手段と、第２格納手段と、第３格納手段と、第４格納手段とを備え、バウンダリスキャン対応集積回路の設計支援装置を用いてバウンダリスキャン対応集積回路の設計を支援する設計支援方法において、
前記集積回路の論理回路としての構成を示す論理接続情報を前記第１格納手段に格納する工程と、
前記集積回路に組み込まれたバウンダリスキャンチェーンによって実行することができるボードテストの命令の命令名および命令コードを記述したテスト命令記述ファイルを前記第２格納手段に格納する工程と、
前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルの機能および端子を記述したバウンダリスキャンセル情報ファイルを前記第３格納手段に格納する工程と、
前記集積回路の各外部端子のポート名およびピン番号を示す情報を含むパッケージ端子データを前記第４格納手段に格納する工程と、
前記バウンダリスキャンチェーンの接続順序が前記パッケージ端子データによって示される前記ピン番号の順序で前記集積回路の各外部端子のピンの配置に対応するように前記論理接続情報を変更し、該変更後の論理接続情報を出力する工程と、
前記変更された後の前記論理接続情報を用いて前記バウンダリスキャンチェーンの接続関係を調べるとともに、前記テスト命令記述ファイル、前記バウンダリスキャンセル情報ファイル、および前記パッケージ端子データを参照することにより、前記集積回路の外部端子のポート名およびピン番号を示す情報、前記バウンダリスキャンチェーンで実行可能なボードテストの命令の命令名および命令コードを示す情報、ならびに、前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルを該バウンダリスキャンセルの前段または次段の入力または出力パッドに対するポート名および該バウンダリスキャンセルの機能名とともに前記バウンダリスキャンチェーンの接続順に示す情報を抽出し、抽出された情報をＢＳＤＬのフォーマットで記述したファイルとして出力する工程とを含むことを特徴とする設計支援方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、バウンダリスキャン対応集積回路の設計支援装置に関する。
【０００２】
【従来の技術】
従来、ＰＣＢ(Printed Circuit Board)（印刷回路基板）の検査は主にインサーキットテスト方法より行われてきた。インサーキットテスト方法による検査では、ＰＣＢ（以下、単に「ボード」という）上に形成された各信号線上にテスタ用プローブピンを接触させるためのテストパッドを設け、これにテスタから直接プロービングすることにより、ボードに実装された各ＩＣ（集積回路）の入力値の制御と出力値の観測を行う。
【０００３】
しかし、最近、ボード上への部品の実装の高密度化と各部品のパッケージの多ピン化が進み、その結果、インサーキットテスト方法におけるプロービングが非常に困難となった。そのため、インサーキットテスト方法に代わるテスト法として「バウンダリスキャン(boundary scan)によるボードテスト法」がＬＳＩ（大規模集積回路）のベンダの間で構成するＪＴＡＧ(Joint Test Action Groupe)によって提案され、ＩＥＥＥ(Institute of Electrical and Electronics Engineers)において規格IEEE1149.1として標準化された。
【０００４】
バウンダリスキャンによるボードテスト法では、ボード上の各ＩＣの内部にバウンダリスキャンレジスタから成るスキャンチェーン（「バウンダリスキャンチェーン」と呼ばれる）を組み込んでおき、ＩＣの外部からバウンダリスキャンチェーンのシフト操作が行えるようにする。そして、ＩＣ内部のバウンダリスキャンレジスタは、入力パッドから受け取るべき信号値をロードしたり、バウンダリスキャンレジスタに保持された値を出力パッドへ直接セットできるようにする。このような構成によれば、ＩＣ内部に組み込まれたバウンダリスキャンレジスタが上記のインサーキットテスト方法におけるテストパッドとして機能する。したがって、バウンダリスキャンによるボードテスト法によれば、プローブピンを物理的に接触させることなく、ボード上の信号線のショートやオープン等の故障検査を実施できるようになる。
【０００５】
ボード上の各ＩＣに組み込まれたバウンダリスキャンチェーン（以下「ＢＳチェーン」という）の内容は、ボードテスト時にテスタからテストアクセスポート(Test Access Port)（以下「ＴＡＰ」という）を介して制御し観測することが可能であり、このような機構を利用して被試験ボードをテストするためのテストパターンが、ボードテスト用ＡＴＰＧ(Automatic Test Pattern Generator)によって生成される。このボードテスト用ＡＴＰＧによるテストパターン生成の際には、各ＩＣについてＢＳＤＬ(Boundary Scan Description Language)ファイルが必要となる。このＢＳＤＬファイルは、ＩＣ内のバウンダリスキャンレジスタのＢＳチェーンの構成を記述したものであって、ボードテスト用ＡＴＰＧによるテストパターン生成の際にＩＣの内部モデルの代用となる。具体的には、ＩＣパッケージのデバイスピンすなわち外部端子に関する情報（入力と出力の種別、ポート名とピン番号の対応など）、実施可能なバウンダリスキャンによるボードテストの命令の命令名と命令コード、および、バウンダリスキャンレジスタの接続順序と各バウンダリスキャンレジスタが制御し観測するデバイスピンのポート名が記述されている。このようなＢＳＤＬファイルはＩＣメーカによって作成されて提供される。
【０００６】
【発明が解決しようとする課題】
しかし現状では、ＢＳＤＬファイルは手作業で作成される場合がほとんどであるため、提供されるＢＳＤＬファイルの信頼性が低く、バウンダリスキャンレジスタの接続順序の記述が誤っていたり、各バウンダリスキャンレジスタに対応するデバイスピンのポート名の記述が誤っていたりというような単純なミスが多い。このため、ボードテスタの技術者は、ＢＳＤＬにおける記述の誤りの修正に多くの時間を費やしている。一方、ＬＳＩ設計用ＣＡＤ(Computer Aided Design)ツールの中には、バウンダリスキャンを設計対象のＩＣ内に自動的に挿入してＢＳＤＬファイルを自動作成する機能を有するものもある。しかし、このＢＳＤＬファイルにはＩＣのパッケージのデバイスピンの情報が加味されていないため、ボードテスト用ＡＴＰＧで使用するには、そのＢＳＤＬファイルを手作業で修正する必要があり、その結果、ＢＳＤＬファイルに誤りが混入するおそれがある。
【０００７】
また、ＢＳチェーンが組み込まれたＩＣでは、ＢＳチェーンの接続順序がＩＣのパッケージにおけるデバイスピンの配置と整合せず、レイアウトにおける配線の効率が悪くなることがある。この場合には、ＢＳチェーンの組み込みによってＩＣのコストが大きく上昇することになる。
【０００８】
そこで本発明では、レイアウトにおける配線効率が劣化しないようにＢＳチェーンをＩＣに組み込み、かつそのようなＢＳチェーンに対応するＢＳＤＬファイルを自動的に作成することを可能とするバウンダリスキャン対応集積回路の設計支援装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するために成された本発明に係る第１の設計支援装置では、バウンダリスキャン対応集積回路の設計支援装置において、
前記集積回路の論理回路としての構成を示す論理接続情報を格納する第１格納手段と、
前記集積回路に組み込まれたバウンダリスキャンチェーンによって実行することができるボードテストの命令の命令名および命令コードを記述したテスト命令記述ファイルを格納する第２格納手段と、
前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルの機能および端子を記述したバウンダリスキャンセル情報ファイルを格納する第３格納手段と、
前記集積回路の各外部端子のポート名およびピン番号を示す情報を含むパッケージ端子データを格納する第４格納手段と、
前記バウンダリスキャンチェーンの接続順序が前記パッケージ端子データによって示される前記ピン番号の順序で前記集積回路の各外部端子のピンの配置に対応するように前記論理接続情報を変更し、該変更後の論理接続情報を出力するバウンダリスキャンチェーン最適化手段と、
バウンダリスキャンチェーン最適化手段によって変更された後の前記論理接続情報を用いて前記バウンダリスキャンチェーンの接続関係を調べるとともに、前記テスト命令記述ファイル、前記バウンダリスキャンセル情報ファイル、および前記パッケージ端子データを参照することにより、前記集積回路の外部端子のポート名およびピン番号を示す情報、前記バウンダリスキャンチェーンで実行可能なボードテストの命令の命令名および命令コードを示す情報、ならびに、前記バウンダリスキャンチェーンを構成する各バウンダリスキャンセルを該バウンダリスキャンセルの前段または次段の入力または出力パッドに対するポート名および該バウンダリスキャンセルの機能名とともに前記バウンダリスキャンチェーンの接続順に示す情報を抽出し、抽出された情報をＢＳＤＬのフォーマットで記述したファイルとして出力するＢＳＤＬファイル作成手段と、
を備えた構成としている。
【００１０】
本発明に係る第２の設計支援装置では、上記第１の設計支援装置において、
前記バウンダリスキャンチェーン最適化手段によって変更された後の論理接続情報により示されるバウンダリスキャンチェーンの接続順序と、該バウンダリスキャンチェーンを構成する各バウンダリスキャンセルの前段または次段の入力または出力パッドに対するポート名とに基づき、前記集積回路内部のバウンダリスキャン機構を検査するためのテストパターンを生成するテストパターン生成手段を更に備えることを特徴としている。
【００１１】
【発明の効果】
本発明に係る第１の設計支援装置によれば、バウンダリスキャンチェーン最適化手段により、バウンダリスキャンチェーンの接続順序がパッケージ端子データによって示されるピン番号の順序でＩＣの各外部端子のピンの配置に対応するようにＩＣの論理接続情報が変更されるため、そのバウンダリスキャンチェーンの組み込まれるＩＣのレイアウトにおいて配線効率が向上する。また、ＩＣのパッケージが変わって外部端子の配置が変更された場合であっても、本設計支援装置により、バウンダリスキャンチェーンの接続順序が外部端子の配置に合ったＩＣの論理接続情報が容易に得られる。これらにより、ＩＣへのバウンダリスキャンチェーンの組み込みによるコストの増大を抑えることができる。さらに、本設計支援装置によれば、ＢＳＤＬファイル作成手段により、ＩＣの外部端子の情報が加味されたＢＳＤＬファイルが自動的に作成されるため、従来とは異なり、ＢＳＤＬファイルの手修正が不要となる。これにより、バウンダリスキャン方式によるボードテストにおける作業効率が向上する。
【００１２】
本発明に係る第２の設計支援装置によれば、テストパターン作成手段により、ＩＣに組み込まれるバウンダリスキャン機構を検査するためのテストパターンが生成されるため、これを用いることにより、ボードの組み立てを行う前にＩＣ単体でバウンダリスキャンチェーンの検査を行うことができる。また、このテストパターンをＩＣの設計段階における論理検証に利用すると、マスク改訂の回避によるコスト低減においても効果がある。
【００１３】
【発明の実施の形態】
＜１  実施形態の全体構成＞
図２は、本発明の一実施形態であるバウンダリスキャン対応ＩＣの設計支援装置（以下、単に「設計支援装置」という）のハードウェア構成を示す概略ブロック図である。本設計支援装置のハードウェアは、ワークステーションなどのコンピュータシステムであって、プロセッサ（ＣＰＵ）１０１とメモリ１０２と入出力コントローラ１０３とがバスに接続された構成となっており、入出力コントローラ１０３には、ＣＲＴディスプレイ等の表示装置１０４、ハードディスク装置等の外部記憶装置１０５、キーボードやマウス等の入力装置１０６が接続されている。そして、メモリ１０２に格納される所定のプログラムをＣＰＵ１０１が実行することにより、バウンダリスキャン方式のボードテスト用のＡＴＰＧによるテストパターン生成の際に必要なＢＳＤＬファイルの作成機能や、レイアウトにおける配線効率の悪くならないようにＢＳチェーンをＩＣに組み込むための機能等、バウンダリスキャン対応ＩＣの開発を支援するための機能が実現される。
【００１４】
図１は、本設計支援装置の構成を概念的に示す機能ブロック図である。この図に示すように、本設計支援装置は、概念的には、ＢＳＤＬファイル作成の対象となるＩＣの論理回路としての構成を示す論理接続情報、バウンダリスキャンセル情報ファイル、パッケージ端子データおよびテスト命令記述ファイルをそれぞれ格納する第１〜第４格納部１１〜１４と、ＢＳチェーン最適化部２２と、ＢＳＤＬファイル作成部２４と、テストパターン作成部２６と、ＢＳチェーン最適化後のＩＣの論理接続情報（詳細は後述）、ＢＳＤＬファイルおよびテストパターンをそれぞれ格納するための第５〜第７格納部３１〜３３とから構成される。これらのうち第１〜第７格納部１１〜１４、３１〜３３は外部記憶装置１０５によって実現され、他の機能ブロック２２、２４、２６は、メモリ１０２に格納される所定のプログラムによって実現される。
【００１５】
上記構成の設計支援装置は、テスト対象のボードに実装される各ＩＣについての所定の情報、すなわち、第１〜第４格納手段１１〜１４のそれぞれに格納されたＩＣの論理接続情報、バウンダリスキャンセル情報ファイル（以下「ＢＳセル情報ファイル」という）、パッケージ端子データ、およびテスト命令記述ファイルを読み込み、これらを用いて、各ＩＣに対し、ＢＳチェーンの接続順序の最適化されたＩＣの論理接続情報の生成や、ＢＳＤＬファイルの作成、ＢＳチェーンによるバウンダリスキャン機構を検査するためのテストパターンの生成を行う。ここで入力データとなるＩＣの論理接続情報、ＢＳセル情報ファイル、パッケージ端子データ、およびテスト命令記述ファイルの内容は以下の通りである。
【００１６】
ＩＣの論理接続情報は、ボードに実装するＩＣの論理回路としての構成を示す接続情報であって、そのＩＣの論理設計の結果として得られるものである。この論理接続情報は、Verilog-ＨＤＬやＶＨＤＬのようなハードウェア記述言語で記述されたものでもよい。本設計支援装置は、このＩＣの論理接続情報を第１格納部１１から読み込んで、所定のデータ構造によりメモリ１０２上にデータベース化する。
【００１７】
ＢＳセル情報ファイルは、ｉ）ＢＳチェーンを構成するバウンダリスキャンセル（以下「ＢＳセル」という）の入力であるスキャンインやＢＳセルの出力であるスキャンアウト等の端子情報と、ii）各ＢＳセルについて、そのＢＳセルは入力Ｉ／Ｏパッドの次段に置かれて外部から信号を入力するものであるか、出力Ｉ／Ｏパッドの前段に置かれて外部へ信号を出力するものであるか等の機能（以下、このような機能を示す名称を「機能名」という）を定義する情報とを記述したファイルである。このＢＳセル情報ファイルは、例えばＩＣの設計者によりエディタを用いて作成される。図３に、このＢＳセル情報ファイルの一例を示す。本設計支援装置は、このようなＢＳセル情報ファイルを第２格納部１２から読み込んでメモリ１０２上にデータベース化し、メモリ１０２上の前記論理接続情報とリンクさせて保持する。図４に、ＢＳセル情報ファイルの内容をこのようにしてメモリ１０２上にデータベース化するためのデータ構造の一例を示す。この例では、ＢＳチェーンを構成する各ＢＳセルに対して一つの構造体２０１が用意されている。各構造体２０１は、ＩＣ内部の論理回路の接続情報を示すデータに含まれるポインタによって指し示され、ＢＳチェーンにおける各ＢＳセル間の接続関係を示す情報等を保持している（この構造体によって保持される情報も論理接続情報の一部であり、以下、この構造体を「ＢＳチェーン情報構造体」という）。すなわち、各ＢＳチェーン情報構造体２０１は、ＩＣの外部端子のポート名およびピン番号（デバイスピン番号）とともに、ＢＳチェーンの接続順序を示す数値であるチェーン接続オーダと、次段のＢＳセルを指し示すポインタとを保持している。また、ＢＳセルのセル名、スキャンインの端子名、スキャンアウトの端子名および機能名から成るＢＳセル情報を保持するための構造体２０２が用意されており（以下、この構造体を「ＢＳセル情報構造体」という）、各ＢＳチェーン情報構造体２０１は、対応するＢＳセル情報構造体２０２を指し示すポインタも保持している。なお、上記の構造体２０１および２０２は、例えばＣ言語における「構造体」により実現することができる。
【００１８】
パッケージ端子データは、ＩＣの外部端子の番号（デバイスピン番号）とポート名と種類（入力ピンか出力ピン）とを羅列したものである。図５に、パッケージ端子データの一例を示す。例えば、パッドの配置図や端子表を編集するためのパッケージ端子表編集装置から、このようなパッケージ端子データをファイルとして出力することができる。
【００１９】
テスト命令記述ファイルは、バウンダリスキャン方式によるボードテストの命令のうち対象とするＩＣで使用可能な命令の命令名と命令コードを羅列したものであって、例えば、ＩＣの設計者によりエディタを用いて作成される。このテスト命令記述ファイルには、ＢＹＰＡＳＳ命令やＥＸＴＥＳＴ命令等、規格IEEE1149.1として標準化されている命令を記述することができるが、これに加えてユーザ定義の命令を記述することもできる。図６に、テスト命令記述ファイルの一例を示す。
【００２０】
次に、本設計支援装置を構成する機能ブロックであるＢＳチェーン最適化部２２、ＢＳＤＬファイル作成部２４、およびテストパターン作成部２６について説明する。
ＢＳチェーン最適化部２２は、第１格納部１１からＩＣの論理接続情報を、第２格納部１２からＢＳセル情報ファイルを、第３格納部１３からパッケージ端子データを、それぞれ読み込み、読み込まれた情報に基づき、効率のよいレイアウトができるようにＢＳチェーンの接続順序を最適化すべく、ＩＣの論理接続情報を修正し、修正後のＩＣの論理接続情報を「ＢＳチェーン最適化後の論理接続情報」として第５格納部３１に出力する。
【００２１】
ＢＳＤＬファイル作成部２４は、テスト命令記述ファイル１４を第４格納部１４から読み込み、これと、ＢＳチェーン最適化部２２により得られたＢＳチェーン最適化後の論理接続情報（これにはＢＳセル情報もリンクされている）と、パッケージ端子データとから、そのＩＣに対するＢＳＤＬファイルを作成し、これを第６格納部３２に出力する。
【００２２】
テストパターン作成部２６は、ＢＳチェーン最適化部２２によってメモリ１０２上に得られたＢＳチェーン最適化後の論理接続情報に基づき、ＩＣに組み込まれたＢＳチェーンによって実現されるバウンダリスキャン機構を検査するためのテストパターンを第７格納部３３に出力する。
【００２３】
＜２  実施形態の動作＞
規格IEEE1149.1によれば、ＢＳチェーンは、ＩＣの外部からのＴＡＰ（テストアクセスポート）を介してシフト操作が可能であって、スキャンインのポート名を「ＴＤＩ」と、スキャンアウトのポート名を「ＴＤＯ」と定めている。ＢＳセルは基本的に入力Ｉ／Ｏパッドの次段と出力Ｉ／Ｏパッドの前段に挿入される。これらのＢＳセルは互いに接続されて上記ＢＳチェーンを構成する。このＢＳチェーンの入口がポートＴＤＩであり、出口がポートＴＤＯである。この場合の接続順序はＴＤＯに近いものから順にカウントされ、そのカウント値が「チェーン接続オーダ」を示す数値となっている（図４参照）。
【００２４】
図７（ａ）に、このようなＢＳチェーンの構成例を示す。以下では、この構成のＢＳチェーンが組み込まれたＩＣに対する論理接続情報、ＢＳセル情報ファイル、パッケージ端子データおよびテスト命令記述ファイルが、予め第１〜第４格納部１１〜１４にそれぞれ格納されているものとして、上記設計支援装置の動作を説明する。なお、規格IEEE1149.1によれば、テストクロックポート（ＴＣＫ）やモードセレクトポート（ＴＭＳ）の他、ＩＣ内部にＴＡＰコントローラや命令レジスタ、ＢＹＰＡＳＳレジスタが必要であるが、図７（ａ）では、実施形態の説明に最低必要となるＴＤＩ、ＴＤＯ、Ｉ／Ｏパッド、ＢＳセルのみを示している。
【００２５】
本設計支援装置では、まずＢＳチェーン最適化部２２が、前述のように、図７（ａ）の例に対応するＩＣの論理接続情報、ＢＳセル情報ファイルおよびパッケージ端子データを読み込む。これにより、ＩＣの論理接続情報とＢＳセル情報とがリンクされてメモリ１０２上にデータベース化される。このデータベース化のためのデータ構造の形式は図４に示した通りであり、図７（ａ）に対しては図８に示すデータ構造が生成される。図８において、Ｐ１，Ｐ２，Ｐ３はＢＳチェーン情報構造体２０１のアドレス（ポインタ）であって、これらによって各ＢＳチェーン情報構造体２０１がＢＳチェーンの接続順序でリンクされることにより、一方向リスト（以下「ＢＳチェーンリスト」という）が形成される。また、Ｐ０１，Ｐ０２は、ＢＳチェーンを構成する各ＢＳセルに関する情報が保持されているＢＳセル情報構造体２０２のアドレス（ポインタ）である。
【００２６】
図７（ａ）の例では、ＩＣの外部端子のポート名をその外部端子に接続されるＩ／Ｏパッドに対応するＢＳセルの接続順に並べるとＢ→Ｃ→Ａとなり、これをＢＳチェーンの接続順序を示すものとみなすことができるが、この接続順序はＩＣのデバイスピン（外部端子）の並びとは整合していない。しかし、ＩＣに対するレイアウトにおける配線効率を考慮すると、ＢＳセルの接続順序はＩ／Ｏパッドの接続先であるパッケージのデバイスピンの並びに従うことが望ましい。
【００２７】
＜２.１  ＢＳチェーン最適化＞
そこで本設計支援装置におけるＢＳチェーン最適化部２２は、ＢＳチェーンの接続順序をパッケージのデバイスピンの並び、すなわちＩＣの外部端子の配置に合うように変更し、この変更を反映させたＩＣの論理接続情報をＢＳチェーン最適化後の論理接続情報として第５格納部３１にファイルとして出力する。以下、図７（ａ）のＢＳチェーンを例に、ＢＳチェーン最適化部２２によるＢＳチェーンの並び替えの手順（ＢＳチェーンの接続順序変更の手順）を説明する。
【００２８】
図９は、ＢＳチェーン最適化部２２によるＢＳチェーンの並び替えの手順を示すフローチャートである。この図に示すように、まずステップＳ１０において、各ＢＳチェーン情報構造体２０１がリンクされて形成されるＢＳチェーンリストのリンクを解除する。これは、ＢＳチェーンにおける隣接するＢＳセルのスキャンイン端子とスキャンアウト端子との接続を切断することを意味する。
【００２９】
次にステップＳ２０において、キューを作成し、図１０（ａ）に示すように、各ＢＳチェーン情報構造体２０１へのポインタをキューに格納し、ステップＳ３０において、キューに格納されたポインタに対しパッケージのデバイスピン番号によりソーティングを行う。これによりキュー内のポインタは、図１０（ｂ）に示すようにデバイスピン番号順に並ぶ。ところで、デバイスピン番号はパッケージにおけるデバイスピンの配置順にカウントした値が対応している。したがって、このソーティングにより、各ＢＳチェーン情報構造体２０１へのポインタはパッケージにおけるデバイスピンの配置に応じた順序でキューに格納された状態となる。なお図１０において、「head」がキューの先頭を、「tail」がキューの最後尾をそれぞれ示している。また、各ポインタＰ１〜Ｐ３の下に記載された括弧内のアルファベットおよび数値は、そのポインタで指し示されるＢＳチェーン情報構造体２０１に対応するＢＳセルに接続されるＩ／Ｏパッドに対するポート名およびデバイスピン番号をそれぞれ示している。
【００３０】
上記のようなソーティングを行った後、ステップＳ４０において、キューの先頭からポインタを１個取り出し、取り出したポインタに対応するＢＳチェーン情報構造体２０１に、次段のＢＳセルへのポインタとして空値「ＮＵＬＬ」を設定する。これは、キューから取り出したポインタに対応するＢＳセルは、接続順序変更後のＢＳチェーンの先頭のＢＳセルであることを意味する。したがって、その先頭のＢＳセルのスキャンアウト端子ｓｏには、ＢＳチェーンのスキャンアウトのポートＴＤＯの端子が接続されることになる。以降、ステップＳ５０〜Ｓ８０により、キューの先頭からポインタを１個ずつ取り出し、そのポインタの指し示すＢＳチェーン情報構造体２０１に、直前にキューから取り出したポインタ（ｐｒｅｖ）を次段のＢＳセルへのポインタとして設定していく。これは、直前にキューから取り出したポインタに対応するＢＳセルのスキャンイン端子ｓｉに、新たにキューから取り出したポインタに対応するＢＳセルのスキャンアウト端子ｓｏを接続することを意味する。
【００３１】
このようにして、キューの先頭からポインタが一つずつ取り出されてＢＳチェーン情報構造体２０１がリンクされていく。そして、キューに格納されるポインタが無くなると、ステップＳ９０へ進む。この時点で、キューから最後に取り出したポインタに対応するＢＳセルは、接続順序変更後のＢＳチェーンの最後尾のＢＳセルである。したがって、そのポインタに対応するＢＳセルのスキャンイン端子ｓｉには、ＢＳチェーンのスキャンインのポートＴＤＩの端子が接続されることになる。
【００３２】
ＢＳチェーン最適化部２２によって実行される以上のような処理により、図８に示したデータ構造は図１１に示すデータ構造に変更される。これは、図７（ａ）によって示される構成のＢＳチェーンが図７（ｂ）によって示される構成に変更されたことを意味する。ＢＳチェーン最適化部２２は、上記のようにしてＢＳチェーンの並び替えの手順を実行した後に、図７（ｂ）の構成に対応する論理接続情報（図１１参照）をＢＳチェーン最適化後のＩＣの論理接続情報として第５格納部３１に出力する。図７（ｂ）からわかるように、変更後のＢＳチェーンの接続順序はパッケージのデバイスピンの配置に対応したものとなっているため、ＢＳチェーン最適化後のＩＣの論理接続情報に基づくＩＣのレイアウトにおいて配線効率が向上する。
【００３３】
＜２.２  ＢＳＤＬファイルの作成＞
本設計支援装置では、次にＢＳＤＬファイル作成部２４が、上記ＢＳチェーン並び替え後の図１１のデータ構造を参照することにより接続順序変更後のＢＳチェーン（以下「最適化ＢＳチェーン」という）を走査して最適化ＢＳチェーンの接続情報を調べ、テスト命令記述ファイル、ＢＳセル情報ファイルおよびパッケージ端子データを参照してＢＳＤＬファイルを作成する。
【００３４】
ＢＳＤＬファイルは３つの部分から構成される。第１の部分は、パッケージのデバイスピン番号とポート名を羅列したリストであって、このリストの作成に必要な情報はパッケージ端子データ（図５）から得ることができる。第２の部分は、ボードテストの命令の命令名と命令コードを羅列したリストであって、このリストの作成に必要な情報はテスト命令記述ファイル（図６）から得ることができる。第３の部分は、ＢＳチェーンを構成する各ＢＳセルを、ポートＴＤＯからポートＴＤＩに向かう順に、ＢＳセルの前段または次段のＩ／Ｏパッドの機能名（「input」や「output」など）とともに羅列したリストであって、このリストの作成に必要な情報は、図１１のデータ構造を参照してＢＳチェーンを走査しＢＳチェーンの接続情報を調べることにより得ることができる。図１１のデータ構造では、各ＢＳチェーン情報構造体２０１がアドレスポインタによりＢＳチェーンの接続順にリンクしているため、アドレスポインタによってこのリンクを辿ることにより、ＢＳチェーンの走査を容易に行うことができる。さらにこのデータ構造では、ＢＳセル情報構造体２０２がＢＳチェーン情報構造体２０１にリンクしているため、ＢＳセルの機能名も容易に得ることができる。
【００３５】
ＢＳＤＬファイル作成部２４は、上記のようにして、上記第１〜第３の部分に対応するリストの作成に必要な情報を得た後、これらの情報をＢＳＤＬのフォーマットに従って第６格納部３２に出力する。図１２は、図７（ｂ）に対応するＢＳチェーン最適化後のＩＣの論理接続情報と、図３に示したＢＳセル情報ファイルと、図５に示したパッケージ端子データと、図６に示したテスト命令記述ファイルとから作成されたＢＳＤＬファイルを示す。図１２に示したＢＳＤＬファイルでは、記述３０１が上記第１の部分に、記述３０２が上記第２の部分に、記述３０３が上記第３の部分に、それぞれ相当する。
【００３６】
＜２.３  バウンダリスキャン機構検査用テストパターンの作成＞
本設計支援装置では、次にテストパターン作成部２６が、ＩＣに組み込まれるバウンダリスキャン機構を検査するためのテストパターンを作成する。ここでＩＣは、ＢＳチェーン最適化後のＩＣの論理接続情報に基づいて作製されるものである。図１１のデータ構造では、各ＢＳチェーン情報構造体２０１がアドレスポインタによりＢＳチェーンの接続順にリンクしており、各デバイスピンのポート名の参照も容易であるため、入力用の各デバイスピン（各入力ポート）に与えるテストパターンとＢＳチェーンに与えるスキャンインデータ（ポートＴＤＩから入力するテストパターンとしてのデータ）とを決めれば、これに対する期待値は自明である。例えば、ＥＸＴＥＳＴ命令では、ＩＣの入力ポート（入力デバイスピン）へ与えられた信号値（以下「パラレル入力」という）のキャプチャ（捕捉）とＩＣの出力ポート（出力デバイスピン）から出力させる信号値（以下「パラレル出力」という）のアップデータ（更新）とをＢＳチェーンを使用して行う。このため、パラレル入力に対するスキャンアウトデータ（ポートＴＤＯから出力されるデータ）の期待値と、スキャンインデータに対するパラレル出力の期待値とは自明である。
【００３７】
そこでテストパターン作成部２６は、パラレル入力とこれに対するスキャンアウトデータの期待値、および、スキャンインデータとこれに対するパラレル出力の期待値を求め、これらをテストパターン用フォーマットに従って第７格納部３３に出力する。このようにして作成されるテストパターンの一例として、図７（ｂ）に示したＢＳチェーンによるバウンダリスキャン機構を検査するためのテストパターンの一部を図１３に示す。図１３では、信号値の属性を明確にするために、入力される信号値を「１」、「０」で表し、出力される信号値を「Ｈ」、「Ｌ」で表している。図１３に示した例では、サイクル１〜３、５〜７においてシリアル入出力が行われ、サイクル４、８においてパラレル入出力が行われる。
【００３８】
本設計支援装置によれば、以上のようにして、ボードに実装するＩＣに対するＢＳチェーン最適化後のＩＣの論理接続情報、ＢＳＤＬファイル、およびバウンダリスキャン機構検査用テストパターンが自動的に作成される。そして、この論理接続情報を用いてＢＳチェーンが組み込まれたＩＣが作製され、このＢＳＤＬファイルを用いてボードテスト用ＡＴＰＧによりテストパターンが生成され、このテストパターンを用いてそのＩＣ内部のバウンダリスキャン機構の検査が行われる。
【００３９】
＜３  効果＞
上記実施形態の設計支援装置によれば、ＢＳチェーン最適化部２２において、ＢＳチェーンの接続順序がデバイスピン番号順となるように変更され（図１０、図１１）、その変更に対応した新たな論理接続情報としてＢＳチェーン最適化後のＩＣの論理接続情報が出力され、これに基づいてＩＣが製造される。したがって、製造すべきＩＣでは、ＢＳチェーンの接続順序がパッケージのデバイスピンの配置に対応したものとなるため（図７（ｂ）参照）、そのＩＣのレイアウトにおける配線効率が向上する。また、ＩＣのパッケージが変わってデバイスピンの配置が変更された場合でも、本実施形態の設計支援装置により、変更後のデバイスピンの配置に対応したＢＳチェーン最適化後の論理接続情報が容易に得られる。
【００４０】
また、本実施形態の設計支援装置によれば、ＢＳＤＬファイル作成部２４において、ＢＳチェーンの接続情報が調べられ、パッケージ端子データが使用されてデバイスピン情報が加味されたＢＳＤＬファイルが自動的に作成されるため、従来とは異なり、ＢＳＤＬファイルの手修正が不要となる。
【００４１】
さらに、本実施形態の設計支援装置によれば、テストパターン作成部２６において、ＩＣ内部のバウンダリスキャン機構を検査するためのテストパターンが生成されるため、これを用いることにより、ボードの組み立てを行う前にＩＣ単体でバウンダリスキャン機構の検査を行うことができる。
【図面の簡単な説明】
【図１】  本発明の一実施形態であるバウンダリスキャン対応ＩＣの設計支援装置の構成を示す機能ブロック図。
【図２】  前記実施形態のバウンダリスキャン対応ＩＣの設計支援装置のハードウェア構成を示すブロック図。
【図３】  ＢＳセル情報ファイルの一例を示す図。
【図４】  ＢＳセル情報ファイルの内容をＩＣの論理接続情報とリンクしてメモリ上にデータベース化するためのデータ構造の一例を示す図。
【図５】  パッケージ端子データの一例を示す図。
【図６】  テスト命令記述ファイルの一例を示す図。
【図７】  接続順序変更前のＢＳチェーンの構成を示す図（ａ）、および、接続順序変更後のＢＳチェーンの構成を示す図（ｂ）。
【図８】  接続順序変更前のＢＳチェーンに対応するデータ構造を示す図。
【図９】  ＢＳチェーンの並び替えの手順を示すフローチャート。
【図１０】  ＢＳチェーンの並び替えに使用されるキューを示す図。
【図１１】  接続順序変更後のＢＳチェーンに対応するデータ構造を示す図。
【図１２】  ＢＳＤＬファイルの内容を示す図。
【図１３】  ＢＳチェーンに対するテストパターンの一例を示す図。
【符号の説明】
１１  …第１格納部（ＩＣの論理接続情報の格納部）
１２  …第２格納部（ＢＳセルの格納部）
１３  …第３格納部（パッケージ端子データの格納部）
１４  …第４格納部（テスト命令記述ファイルの格納部）
２２  …ＢＳチェーン最適化部
２４  …ＢＳＤＬファイル作成部
２６  …テストパターン作成部
３１  …第５格納部（ＢＳチェーン最適化後のＩＣの論理接続情報の格納部）
３２  …第６格納部（ＢＳＤＬファイルの格納部）
３３  …第７格納部（バウンダリスキャン機構検査用テストパターンの格納部）
【図１】
0003709034.tif 000002
【図２】
0003709034.tif 000003
【図３】
0003709034.tif 000004
【図４】
0003709034.tif 000005
【図５】
0003709034.tif 000006
【図６】
0003709034.tif 000007
【図７】
0003709034.tif 000008
【図８】
0003709034.tif 000009
【図９】
0003709034.tif 000010
【図１０】
0003709034.tif 000011
【図１１】
0003709034.tif 000012
【図１２】
0003709034.tif 000013
【図１３】
0003709034.tif 000014