(57)【要約】【課題】検査対象回路の入力信号を検査できるようにすることを目的とする。【解決手段】検査情報データ１８１は、端子識別子に対応付けて信号識別子と時間帯情報とを含む。重複数計数部１１１は、単位時間帯毎に、単位時間帯を含んだ入力時間帯を示す時間帯情報と第一種類の入力信号を識別する第一種類の信号識別子とに対応付けられた端子識別子の個数を示す第一種類の重複数を検査情報データ１８１に基づいて計数する。判定回路数決定部１１２は、各単位時間帯の第一種類の重複数のうちの最大の重複数を第一種類の判定回路数に決定する。設計データ生成部１１３は、第一種類の判定回路を第一種類の判定回路数だけ備える検査回路の設計データを生成する。【選択図】図１
2016053532.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力端子を備える検査対象回路の入力端子毎に、入力端子を識別する端子識別子に対応付けて、入力端子に入力される入力信号の種類を識別する信号識別子と、入力信号が入力される入力時間帯を示す時間帯情報と、を含む検査情報データを記憶する検査情報データ記憶部と、
前記検査対象回路に入力される入力信号が検査される検査時間帯を単位時間で区切った単位時間帯毎に、前記検査情報データに含まれる端子識別子のうちで、単位時間帯を含んだ入力時間帯を示す時間帯情報と、第一種類の入力信号を識別する第一種類の信号識別子と、に対応付けられた端子識別子の個数を示す第一種類の重複数を計数する重複数計数部と、
前記重複数計数部によって計数された各単位時間帯の第一種類の重複数に基づいて、前記第一種類の入力信号が入力されたか判定する第一種類の判定回路の個数を示す第一種類の判定回路数を決定する判定回路数決定部と
を備えることを特徴とする検査回路設計装置。
【請求項２】
前記判定回路数決定部は、各単位時間帯の第一種類の重複数のうちの最大の重複数を、前記第一種類の判定回路数に決定する
ことを特徴とする請求項１に記載の検査回路設計装置。
【請求項３】
前記判定回路数決定部によって決定された第一種類の判定回路数と同じ個数の第一種類の判定回路を備える検査回路の設計データを生成する設計データ生成部を備える
ことを特徴とする請求項１に記載の検査回路設計装置。
【請求項４】
前記検査回路設計装置は、
信号識別子に対応付けて判定回路を表す判定回路データを含む判定回路データベースを記憶する判定回路データベース記憶部を備え、
前記設計データ生成部は、前記判定回路データベースに含まれる判定回路データのうちで前記第一種類の信号識別子に対応付けられた判定回路データを、前記第一種類の判定回路を表す判定回路データとして用いて、前記設計データを生成する
ことを特徴とする請求項３に記載の検査回路設計装置。
【請求項５】
前記検査回路は、前記第一種類の判定回路数と同じ個数の第一種類の判定回路のうちの第一の判定回路と、前記第一の判定回路に判定させる入力信号を選択する第一の選択回路と、前記第一種類の入力信号が第一の入力端子に入力される第一の入力時間帯に前記第一の入力端子に入力される入力信号を前記第一の選択回路に選択させる制御回路と、を備える
ことを特徴とする請求項３に記載の検査回路設計装置。
【請求項６】
前記制御回路は、判定回路識別子に対応付けて端子識別子と時間帯情報とを含む検査シーケンスから前記第一の判定回路を識別する第一の判定回路識別子に対応付けられた第一の端子識別子と第一の時間帯情報とを取得し、前記第一の時間帯情報が示す前記第一の入力時間帯に前記第一の端子識別子によって識別される前記第一の入力端子に入力される入力信号を前記第一の選択回路に選択させる
ことを特徴とする請求項５に記載の検査回路設計装置。
【請求項７】
信号識別子に対応付けて判定回路識別子を含む判定回路データベースを記憶する判定回路データベース記憶部と、
前記検査情報データから前記第一の端子識別子に対応付けられる前記第一種類の信号識別子と前記第一の時間帯情報とを取得し、前記判定回路データベースから前記第一種類の信号識別子に対応付けられる前記第一種類の判定回路識別子を取得し、前記第一種類の判定回路識別子に基づいた前記第一の判定回路識別子に前記第一の端子識別子と前記第一の時間帯情報とを対応付けることによって前記検査シーケンスを生成する検査シーケンス生成部と
を備えることを特徴とする請求項６に記載の検査回路設計装置。
【請求項８】
検査情報データを用いる検査回路設計プログラムであって、
前記検査情報データは、複数の入力端子を備える検査対象回路の入力端子毎に、入力端子を識別する端子識別子に対応付けて、入力端子に入力される入力信号の種類を識別する信号識別子と、入力信号が入力される入力時間帯を示す時間帯情報と、を含むデータであり、
前記検査対象回路に入力される入力信号が検査される検査時間帯を単位時間で区切った単位時間帯毎に、前記検査情報データに含まれる端子識別子のうちで、単位時間帯を含んだ入力時間帯を示す時間帯情報と、第一種類の入力信号を識別する第一種類の信号識別子と、に対応付けられた端子識別子の個数を示す第一種類の重複数を計数する重複数計数部と、
前記重複数計数部によって計数された各単位時間帯の第一種類の重複数に基づいて、前記第一種類の入力信号が入力されたか判定する第一種類の判定回路の個数を示す第一種類の判定回路数を決定する判定回路数決定部として、
コンピュータを機能させる検査回路設計プログラム。
【請求項９】
複数の入力端子を備える検査対象回路に入力される入力信号の種類毎に、前記複数の入力端子のいずれかの入力端子に入力される入力信号を選択する選択回路を備え、
選択回路毎に、選択回路によって選択される入力信号の種類を判定する判定回路を備える
ことを特徴とする検査回路。
【請求項１０】
前記複数の入力端子のうちの第一の入力端子に第一の入力時間帯に入力される第一の入力信号を選択する第一の選択回路と、
前記第一の選択回路によって選択される前記第一の入力信号が第一種類の入力信号であるか判定する第一の判定回路と、
前記複数の入力端子のうちの第二の入力端子に前記第一の入力時間帯と重複する第二の入力時間帯に入力される第二の入力信号を選択する第二の選択回路と、
前記第二の選択回路によって選択される前記第二の入力信号が前記第一種類の入力信号であるか判定する第二の判定回路と
を備えることを特徴とする請求項９に記載の検査回路。
【請求項１１】
前記第一種類の入力信号が前記第一の入力端子に入力される前記第一の入力時間帯に前記第一の入力端子に入力される前記第一の入力信号を前記第一の選択回路に選択させる制御回路を備える
ことを特徴とする請求項１０に記載の検査回路。
【請求項１２】
前記制御回路は、判定回路識別子に対応付けて端子識別子と時間帯情報とを含む検査シーケンスから前記第一の判定回路を識別する第一の判定回路識別子に対応付けられた第一の端子識別子と第一の時間帯情報とを取得し、前記第一の時間帯情報が示す前記第一の入力時間帯に前記第一の端子識別子によって識別される前記第一の入力端子に入力される前記第一の入力信号を前記第一の選択回路に選択させる
ことを特徴とする請求項１１に記載の検査回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路の入力信号を検査する技術に関するものである。
【背景技術】
【０００２】
ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）を基板に実装する際、基板の論理設計ミスまたは周辺デバイスの設計ミスのため、ＬＳＩの入力端子に正しい入力信号が入力されず、ＬＳＩが正しく動作しない場合がある。
このため、ＬＳＩを基板に実装後、通常動作の速度でＬＳＩの機能試験が実施される。そして、ＬＳＩが正しく動作しない場合、デバッグ作業によって不具合の原因を特定する必要がある。
【０００３】
しかし、機能試験およびデバッグによって不具合の原因を特定するためには、労力を要する。
例えば、ロジックアナライザを用いて不具合の原因を特定する場合、各種の信号を観測するための準備、設定および解析に時間がかかってしまう。また、観測できる信号そのものにも制限がある。さらに、ＬＳＩの機能ブロックの異常動作が検出されたとしても、異常動作が機能ブロックの異常によるものか、または、ＬＳＩに入力された信号の不正によるものかを判断するために、機能ブロックから信号を遡ってトレースする必要がある。以上のように、不具合の原因を特定することは容易なことではない。
【０００４】
また、ＬＳＩが基板に実装された後にＬＳＩの入出力端子を検査する技術として、バウンダリスキャンと呼ばれる技術がある。このバウンダリスキャンにより、ＬＳＩの入出力端子と基板との間の導通試験を実施することができる。
但し、バウンダリスキャンによって検査を行う場合、バウンダリスキャンセルを用いてＬＳＩの入力端子に入力された入力信号をサンプリングし、サンプリングした結果を１ビットずつ出力し、出力した結果を順次検査する必要がある。そのため、バウンダリスキャンによって、ＬＳＩが動作する１サイクルの期間で観測結果を全て検査することは困難である。
したがって、バウンダリスキャンでは、連続する複数サイクルにおいて、ＬＳＩに対する入力動作が正当であるか検査することは困難である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０４−２９７８８０号公報
【特許文献２】特開平０８−１１６０３３号公報
【特許文献３】特開平０５−０８７８８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、検査対象回路の入力信号を検査できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の検査回路設計装置は、
複数の入力端子を備える検査対象回路の入力端子毎に、入力端子を識別する端子識別子に対応付けて、入力端子に入力される入力信号の種類を識別する信号識別子と、入力信号が入力される入力時間帯を示す時間帯情報と、を含む検査情報データを記憶する検査情報データ記憶部と、
前記検査対象回路に入力される入力信号が検査される検査時間帯を単位時間で区切った単位時間帯毎に、前記検査情報データに含まれる端子識別子のうちで単位時間帯を含んだ入力時間帯を示す時間帯情報と、第一種類の入力信号を識別する第一種類の信号識別子と、に対応付けられた端子識別子の個数を示す第一種類の重複数を計数する重複数計数部と、
前記重複数計数部によって計数された各単位時間帯の第一種類の重複数に基づいて、前記第一種類の入力信号が入力されたか判定する第一種類の判定回路の個数を示す第一種類の判定回路数を決定する判定回路数決定部とを備える。
【発明の効果】
【０００８】
本発明によれば、必要な個数の判定回路を備える検査回路を設計することができる。そして、検査回路によって検査対象回路の入力信号を検査することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１における検査回路設計装置１００の機能構成図である。
【図２】実施の形態１における検査情報データ１８１の一例を示す図である。
【図３】実施の形態１における判定回路データベース１８２の一例を示す図である。
【図４】実施の形態１における検査回路設計装置１００の検査回路設計処理を示すフローチャートである。
【図５】実施の形態１における検査回路設計部１１０の判定回路数決定処理（Ｓ１１０）のフローチャートである。
【図６】実施の形態１におけるＬＳＩ２００および検査回路２１０の構成の一例を示す図である。
【図７】実施の形態１における検査シーケンス１９２の一例を示す図である。
【図８】実施の形態１における検査シーケンス生成部１２２の検査シーケンス生成処理（Ｓ２２０）を示すフローチャートである。
【図９】実施の形態１における検査回路２１０の動作を示すフローチャートである。
【図１０】実施の形態１における検査回路設計装置１００のハードウェア構成図である。
【発明を実施するための形態】
【００１０】
実施の形態１．
検査対象回路の入力信号を検査する検査回路を設計する形態について説明する。
【００１１】
図１は、実施の形態１における検査回路設計装置１００の機能構成図である。
実施の形態１における検査回路設計装置１００の機能構成について、図１に基づいて説明する。但し、検査回路設計装置１００の機能構成は、図１に示す機能構成と同一でなくてもよい。
【００１２】
検査回路設計装置１００は、ＬＳＩの入力端子に入力される入力信号を検査する検査回路を設計する装置である。ＬＳＩはＬａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎの略称であり、集積回路を意味する。実施の形態１において、ＬＳＩは検査の対象になる検査対象回路である。
【００１３】
検査回路設計装置１００は、検査回路設計部１１０と、スケジュール部１２０と、データ記憶部１８０とを備える。
データ記憶部１８０（検査情報データ記憶部および判定回路データベース記憶部の一例）は、検査回路設計装置１００で使用するデータを記憶する。例えば、データ記憶部１８０は、検査情報データ１８１、判定回路データベース１８２、検査回路設計データ１９１および検査シーケンス１９２などを記憶する。
【００１４】
検査情報データ１８１は、ＬＳＩの入力端子毎に各入力時間帯の入力信号の種類を示すデータである。例えば、検査情報データ１８１は、第一の入力端子を識別する第一の端子識別子に対応付けて、第一の入力端子に入力される第一種類の入力信号を識別する第一の信号識別子と、第一種類の入力信号が第一の入力端子に入力される第一の入力時間帯を示す第一の時間帯情報とを含む。
判定回路データベース１８２は、入力信号の種類を判定する判定回路を表す判定回路データを入力信号の種類毎に含んだデータベースである。例えば、判定回路データベース１８２は、第一の信号識別子に対応付けて、第一種類の入力信号が入力されたか判定する第一種類の判定回路を識別する第一の判定回路識別子と、第一種類の判定回路を表す第一種類の判定回路データとを含む。
検査回路設計データ１９１は、入力信号の種類毎に必要な個数の判定回路を備える検査回路の設計データである。例えば、検査回路設計データ１９１は第一種類の判定回路の判定回路データを含む。
検査シーケンス１９２は、検査回路に備わる判定回路毎の検査スケジュールを示すデータである。例えば、検査シーケンス１９２は、第一種類の判定回路のうちの第一の判定回路を識別する第一の判定回路識別子に対応付けて、第一種類の入力信号が入力される第一の入力端子を識別する第一の端子識別子と、第一種類の入力信号が第一の入力端子に入力される第一の入力時間帯を示す第一の時間帯情報とを含む。
【００１５】
検査回路設計部１１０は、検査情報データ１８１と判定回路データベース１８２とに基づいて、検査回路設計データ１９１を生成する。
検査回路設計部１１０は、重複数計数部１１１と、判定回路数決定部１１２と、設計データ生成部１１３とを備える。
【００１６】
重複数計数部１１１は、検査情報データ１８１に基づいて、同じ時間帯に同じ種類の入力信号が入力される入力端子の個数を入力信号の種類毎に計数する。以下、これらの個数を重複数という。例えば、重複数計数部１１１は、単位時間帯毎に、第一種類の入力信号が入力される入力端子の個数を示す第一種類の重複数を計数する。
判定回路数決定部１１２は、入力信号の種類毎に、各時間帯の重複数に基づいて必要な判定回路の個数を決定する。例えば、判定回路数決定部１１２は、各単位時間帯の第一種類の重複数のうちの最大の重複数を第一種類の判定回路の個数に決定する。
設計データ生成部１１３は、入力信号の種類毎の必要な判定回路の個数に基づいて、検査回路設計データ１９１を生成する。例えば、設計データ生成部１１３は、判定回路データベース１８２に含まれる第一種類の判定回路データを用いて、検査回路設計データ１９１を生成する。検査回路設計データ１９１は検査回路の設計データであり、検査回路は必要な個数の第一種類の判定回路を含む回路である。
【００１７】
スケジュール部１２０は、検査情報データ１８１と判定回路データベース１８２とに基づいて、検査シーケンス１９２を生成する。
スケジュール部１２０は、総シーケンス数計数部１２１と、検査シーケンス生成部１２２とを備える。
【００１８】
総シーケンス数計数部１２１は、検査情報データ１８１に基づいて、少なくともいずれかの入力端子に入力信号が入力される入力時間帯の数を計数する。以下、この入力時間帯の数を総シーケンス数という。
検査シーケンス生成部１２２は、総シーケンス数、検査情報データ１８１および判定回路データベース１８２に基づいて、検査シーケンス１９２を生成する。例えば、検査シーケンス生成部１２２は、検査情報データ１８１から第一の端子識別子に対応付けられた第一種類の信号識別子と第一の時間帯情報とを取得し、判定回路データベース１８２から第一種類の信号識別子に対応付けられた第一種類の判定回路識別子を取得する。そして、検査シーケンス生成部１２２は、第一種類の判定回路識別子に基づいた第一の判定回路識別子に第一の端子識別子と第一の時間帯情報とを対応付けることによって、検査シーケンス１９２を生成する。また、検査シーケンス生成部１２２は、総シーケンス数の入力時間帯毎にシーケンス番号を検査シーケンス１９２に含める。
【００１９】
図２は、実施の形態１における検査情報データ１８１の一例を示す図である。
実施の形態１における検査情報データ１８１の一例について、図２に基づいて説明する。
検査情報データ１８１は、入力端子名と検査サイクルとに対応付けて入力信号名を示している。
入力端子名は入力端子を識別する端子識別子の一例である。入力信号名は入力信号を識別する信号識別子の一例である。
検査サイクルは検査が開始された後の経過時間を示す。経過時間の単位時間は１サイクルであり、１サイクルはＬＳＩの１クロックに相当する。先頭の検査サイクルから最終の検査サイクルまでの全期間は検査が行われる検査時間帯を意味する。
検査情報データ１８１は、表形式のデータ、検証用言語（例えば、アサーション言語）で記述されたデータまたはその他の形式のデータのいずれであっても構わない。
【００２０】
例えば、検査情報データ１８１は、１００サイクル目から２００サイクル目までの入力時間帯に信号Ｓａが端子ＩＴ−１に入力されることを示している。また、検査情報データ１８１は、１０００サイクル目から１５００目までの入力時間帯に信号Ｓｂが端子ＩＴ−１に入力されて、３０００サイクル目から５０００サイクル目までの入力時間帯に信号Ｓｃが端子ＩＴ−１に入力されることを示している。
信号Ｓａは信号値が０である入力信号であり、信号Ｓｂは信号値が１である入力信号であり、信号Ｓｃは入力時間帯の間に信号値が０から１に変化する入力信号である。
【００２１】
図３は、実施の形態１における判定回路データベース１８２の一例を示す図である。
実施の形態１における判定回路データベース１８２の一例について、図３に基づいて説明する。
判定回路データベース１８２は、入力信号名に対応付けて判定回路名と判定回路データとを含んでいる。判定回路名は判定回路を識別する判定回路識別子の一例である。
判定回路データは判定回路を表すデータである。例えば、判定回路データは判定回路の構成をＨＤＬで記述したデータである。ＨＤＬはＨａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅの略称である。
例えば、判定回路データベース１８２は、信号Ｓａに対応付けて判定回路ＤＣａと回路データＤａとを含んでいる。
【００２２】
図４は、実施の形態１における検査回路設計装置１００の検査回路設計処理を示すフローチャートである。
実施の形態１における検査回路設計装置１００の検査回路設計処理について、図４に基づいて説明する。但し、検査回路設計装置１００の検査回路設計処理は、図４に示す検査回路設計処理と同一でなくてもよい。
【００２３】
Ｓ１１０において、重複数計数部１１１は、検査情報データ１８１に基づいて、入力信号の種類毎に各検査サイクルの重複数を計数する。
そして、判定回路数決定部１１２は、入力信号の種類毎に、各検査サイクルの重複数に基づいて判定回路の個数を決定する。
Ｓ１１０の後、処理はＳ１２０に進む。
【００２４】
図５は、実施の形態１における検査回路設計部１１０の判定回路数決定処理（Ｓ１１０）のフローチャートである。
実施の形態１における検査回路設計部１１０の判定回路数決定処理（Ｓ１１０）について、図５に基づいて説明する。但し、検査回路設計部１１０の判定回路数決定処理（Ｓ１１０）は、図５に示す判定回路数決定処理（Ｓ１１０）と同一でなくてもよい。
【００２５】
Ｓ１１１において、重複数計数部１１１は、検査情報データ１８１から、入力信号名を抽出する。
例えば、重複数計数部１１１は、図２の検査情報データ１８１から、３つの入力信号名（信号Ｓａ、信号Ｓｂ、信号Ｓｃ）を抽出する。
Ｓ１１１の後、処理はＳ１１２に進む。
【００２６】
Ｓ１１２において、重複数計数部１１１は、Ｓ１１１で抽出した入力信号名から、未選択の入力信号名を一つ選択する。以下、選択された入力信号名を選択信号名という。
例えば、重複数計数部１１１は、３つの入力信号名（信号Ｓａ、信号Ｓｂ、信号Ｓｃ）から、信号Ｓａを選択する。
Ｓ１１２の後、処理はＳ１１３に進む。
【００２７】
Ｓ１１３において、重複数計数部１１１は、検査サイクル毎に、選択信号名に対応付けられた入力端子名の個数を計数する。
図２の検査情報データ１８１の場合、信号Ｓａに対応付けられた入力端子名の個数は、１００サイクル目から１４９サイクル目までは１つ（端子ＩＴ−１）であり、１５０サイクル目から９００サイクル目までは２つ（端子ＩＴ−１、端子ＩＴ−２）である。また、その他の検査サイクルでは信号Ｓａに対応付けられた入力端子名の個数は０である。
Ｓ１１３の後、処理はＳ１１４に進む。
【００２８】
Ｓ１１４において、判定回路数決定部１１２は、検査サイクル毎の入力端子名の個数のうちの最大の個数を判定回路数に決定する。
図２の検査情報データ１８１の場合、信号Ｓａ用の判定回路の個数は２つに決定される。
Ｓ１１４の後、処理はＳ１１５に進む。
【００２９】
Ｓ１１５において、重複数計数部１１１は、Ｓ１１２で選択していない未選択の入力信号名があるか判定する。
未選択の入力信号名がある場合（ＹＥＳ）、処理はＳ１１２に戻る。
未選択の入力信号名がない場合（ＮＯ）、判定回路数決定処理（Ｓ１１０）は終了する。
Ｓ１１０の後、処理はＳ１２０に進む（図４参照）。
【００３０】
Ｓ１２０において、設計データ生成部１１３は、Ｓ１１０で決定された入力信号の種類毎の判定回路数に基づいて、検査回路設計データ１９１を生成する。検査回路設計データ１９１は検査回路２１０の設計データであり、検査回路２１０は、入力信号の種類毎に判定回路数と同じ個数の判定回路を備える回路である。例えば、検査回路設計データ１９１はＨＤＬで記述される。
このとき、設計データ生成部１１３は、入力信号の種類毎に、入力信号名に対応付けられた判定回路データを判定回路データベース１８２から取得する。そして、設計データ生成部１１３は、入力信号の種類毎の判定回路データを用いて、検査回路設計データ１９１を生成する。
例えば、設計者は、検査回路設計データ１９１の基礎となる基礎設計データをデータ記憶部１８０に予め記憶しておく。そして、設計データ生成部１１３は、基礎設計データに対して各判定回路データの挿入などの編集を行って、検査回路設計データ１９１を生成する。
【００３１】
信号Ｓａ用の判定回路の個数が２つであり、信号Ｓｂ用の判定回路の個数が１つであり、信号Ｓｃ用の判定回路の個数が１つである場合、設計データ生成部１１３は、図６に示すような検査回路２１０を表す検査回路設計データ１９１を生成する。
Ｓ１２０の後、処理はＳ２１０に進む。
【００３２】
図６は、実施の形態１におけるＬＳＩ２００および検査回路２１０の構成の一例を示す図である。
実施の形態１におけるＬＳＩ２００および検査回路２１０の構成の一例について、図６に基づいて説明する。
図６において、部品同士を繋いだ線は信号線を表し、信号線の矢印は信号の入力方向を表している。
【００３３】
ＬＳＩ２００は検査対象回路であり、３つの入力端子（ＩＴ−１、ＩＴ−２、ＩＴ−３）と、１つのシステムロジック回路ＬＣと、３つの出力端子（ＯＴ−１、ＯＴ−２、ＯＴ−３）とを備える。
３つの入力端子は、ＬＳＩ２００の外部から入力信号が入力される端子である。
システムロジック回路ＬＣは、３つの入力端子に入力される入力信号を処理して出力信号を生成する回路である。
３つの出力端子は、システムロジック回路ＬＣによって生成された出力信号をＬＳＩ２００の外部に出力する端子である。
【００３４】
さらに、ＬＳＩ２００は、３つの入力端子に入力される入力信号の種類を検査する検査回路２１０を備える。
検査回路２１０は、信号Ｓａ用の２つの判定回路（ＤＣａ−１、ＤＣａ−２）と、信号Ｓｂ用の判定回路ＤＣｂと、信号Ｓｃ用の判定回路ＤＣｃとを備える。
また、検査回路２１０は、判定回路の検査結果を記憶する記憶素子ＭＥを備える。
【００３５】
さらに、検査回路２１０は、以下の部品を備える。
検査回路２１０は、判定回路ＤＣａ−１用の選択回路ＳＣａ−１と、判定回路ＤＣａ−２用の選択回路ＳＣａ−２とを備える。また、検査回路２１０は、判定回路ＤＣｂ用の選択回路ＳＣｂと、判定回路ＤＣｃ用の選択回路ＳＣｃとを備える。
選択回路は、３つの入力端子から１つの入力端子を選択し、選択した入力端子に入力された入力信号の種類を判定回路に判定させる。選択回路はセレクタまたはマルチプレクサともいう。
【００３６】
検査回路２１０は、検査シーケンス１９２（ＴＳ）に基づいて選択回路と判定回路とを制御する制御回路ＣＣを備える。
制御回路ＣＣは、入力信号が入力される入力時間帯毎に、入力信号の種類に対応した選択回路に入力信号を選択させて、その選択回路に接続された判定回路に入力信号の種類を検査させる。
【００３７】
制御回路ＣＣには、検査シーケンス１９２（ＴＳ）、クロック信号ＣＬ、リセット信号ＲＥおよびイネーブル信号ＥＮが入力される。
クロック信号ＣＬは、検査サイクル毎に発生する信号である。検査が開始されたときからクロック信号ＣＬが発生した回数を数えることによって、検査サイクル数を計数することができる。なお、制御回路ＣＣは検査サイクル数を計数するカウンタを備える。
リセット信号ＲＥは、制御回路ＣＣの動作を停止して制御回路ＣＣを初期化するための信号である。リセット信号ＲＥが入力されている間、制御回路ＣＣは動作しない。つまり、動作している制御回路ＣＣは、リセット信号ＲＥが入力されたときに動作を停止する。また、制御回路ＣＣは、検査サイクル数を計数するカウンタのカウンタ値を初期化する。
イネーブル信号ＥＮは、制御回路ＣＣを動作させるための信号である。制御回路ＣＣは、イネーブル信号ＥＮが入力されていて、リセット信号ＲＥが入力されていないときに動作する。
【００３８】
検査シーケンス１９２（ＴＳ）は、記憶素子から制御回路ＣＣに入力される。検査シーケンス１９２を記憶する記憶素子は、検査回路２１０の外部と内部とのいずれにあってもよい。
クロック信号ＣＬ、リセット信号ＲＥおよびイネーブル信号ＥＮは、ＬＳＩ２００の外部から入力される信号と、ＬＳＩ２００の端子から分岐して入力される信号と、検査回路２１０の内部で生成される信号とのいずれであってもよい。
【００３９】
Ｓ２１０（図４参照）において、総シーケンス数計数部１２１は、検査情報データ１８１に基づいて、少なくともいずれかの入力端子に入力信号が入力される入力時間帯を特定する。
そして、総シーケンス数計数部１２１は、特定した入力時間帯の数を計数する。特定した入力時間帯の数が総シーケンス数である。
図２の検査情報データ１８１は、１００サイクル目から９００サイクル目までの入力時間帯と、１０００サイクル目から１５００サイクル目までの入力時間帯と、３０００サイクル目から５０００サイクル目までの入力時間帯との３つの入力時間帯に、１つ以上の入力信号が入力されることを示している。したがって、総シーケンス数は３である。
Ｓ２１０の後、処理はＳ２２０に進む。
【００４０】
Ｓ２２０において、検査シーケンス生成部１２２は、検査情報データ１８１および総シーケンス数に基づいて、検査シーケンス１９２を生成する。
例えば、検査シーケンス生成部１２２は、図２の検査情報データ１８１に基づいて、図７に示すような検査シーケンス１９２を生成する。
Ｓ２２０の後、検査回路設計処理は終了する。
【００４１】
図７は、実施の形態１における検査シーケンス１９２の一例を示す図である。
実施の形態１における検査シーケンス１９２の一例について、図７に基づいて説明する。
検査シーケンス１９２は、シーケンス番号と、検査サイクルと、判定回路名（または判定回路番号）と選択回路名（または選択回路番号）に対応付けて、入力端子名（または入力端子番号）を含んでいる。
例えば、検査シーケンス１９２は、シーケンス番号“１”と、検査サイクル“１００〜２００”と、判定回路ＤＣａ−１と、選択回路ＳＣａ−１に対応付けて、端子ＩＴ−１を含んでいる。
【００４２】
図８は、実施の形態１における検査シーケンス生成部１２２の検査シーケンス生成処理（Ｓ２２０）を示すフローチャートである。
実施の形態１における検査シーケンス生成部１２２の検査シーケンス生成処理（Ｓ２２０）について、図８に基づいて説明する。但し、検査シーケンス生成部１２２の検査シーケンス生成処理（Ｓ２２０）は、図８に示す検査シーケンス生成処理（Ｓ２２０）と同一でなくてもよい。
【００４３】
Ｓ２２１−１において、検査シーケンス生成部１２２は、シーケンス番号用の変数Ｓｎに初期値“１”を設定する。
Ｓ２２１−１の後、処理はＳ２２１−２に進む。
【００４４】
Ｓ２２１−２において、検査シーケンス生成部１２２は、総シーケンス数計数部１２１によって特定された入力時間帯（Ｓ２１０参照）から、Ｓｎ番目の入力時間帯を選択する。以下、Ｓｎ番目の入力時間帯を入力時間帯［Ｓｎ］と記す。
図２の検査情報データ１８１の場合、入力時間帯［１］は１００サイクル目から９００サイクル目までの時間帯である。
Ｓ２２１−２の後、処理はＳ２２２に進む。
【００４５】
Ｓ２２２において、検査シーケンス生成部１２２は、検査情報データ１８１から未選択の入力端子名を一つ選択する。以下、選択された入力端子名を選択端子名という。
例えば、検査シーケンス生成部１２２は、図２の検査情報データ１８１から端子ＩＴ−１を選択する。
Ｓ２２２の後、処理はＳ２２３に進む。
【００４６】
Ｓ２２３において、検査シーケンス生成部１２２は、検査情報データ１８１に示される入力時間帯［Ｓｎ］から、選択端子名に対応付けられた未選択の入力時間帯を一つ選択する。以下、選択された入力時間帯を個別時間帯という。
例えば、検査シーケンス生成部１２２は、図２の検査情報データ１８１に示される１００サイクル目から９００サイクル目までの入力時間帯［１］から、端子ＩＴ−１に対応付けられた１００サイクル目から２００サイクル目までの個別時間帯を選択する。
Ｓ２２３の後、処理はＳ２２４に進む。
【００４７】
Ｓ２２４において、検査シーケンス生成部１２２は、個別時間帯の入力信号名を検査情報データ１８１から取得する。
そして、検査シーケンス生成部１２２は、個別時間帯の入力信号名に対応付けられた判定回路名を判定回路データベース１８２から取得する。
例えば、検査シーケンス生成部１２２は、図２の検査情報データ１８１から、端子ＩＴ−１と１００サイクル目から２００サイクル目までの個別時間帯とに対応付けられた信号Ｓａを取得する。そして、検査シーケンス生成部１２２は、図３の判定回路データベース１８２から、信号Ｓａに対応付けられた判定回路ＤＣａを取得する。
Ｓ２２４の後、処理はＳ２２５に進む。
【００４８】
Ｓ２２５において、検査シーケンス生成部１２２は、シーケンス番号Ｓｎと入力時間帯［Ｓｎ］と判定回路名と選択回路名とに対応付けて、選択端子名を検査シーケンス１９２に設定する。選択回路名は判定回路名に基づいて生成することができる。判定回路名、選択回路名および選択端子名は識別番号に置き換えることができる。
例えば、検査シーケンス生成部１２２は、シーケンス番号“１”と、検査サイクル“１００〜２００”と、判定回路ＤＣａ−１と選択回路ＳＣａ−１とに対応付けて、端子ＩＴ−１を検査シーケンス１９２に設定する（図７参照）。
【００４９】
判定回路名で識別される判定回路の個数（Ｓ１１０参照）が複数である場合、検査シーケンス生成部１２２は、複数の判定回路に異なる識別子を付ける。また、検査シーケンス生成部１２２は、複数の選択回路に異なる識別子を付ける。
例えば、検査シーケンス生成部１２２は、信号Ｓａ用の第一の判定回路に“ＤＣａ−１”という識別子を付けて、信号Ｓａ用の第二の判定回路に“ＤＣａ−２”という識別子を付ける。また、検査シーケンス生成部１２２は、判定回路ＤＣａ−１用の選択回路に“ＳＣａ−１”という識別子を付けて、判定回路ＤＣａ−２用の選択回路に“ＳＣａ−２”という識別子を付ける（図７参照）。
【００５０】
判定回路名で識別される判定回路の個数（Ｓ１１０参照）が複数である場合、検査シーケンス生成部１２２は、入力端子名に対応付けられていない判定回路名に対応付けて、選択端子名を検査シーケンス１９２に設定する。
例えば、１００サイクル目から２００サイクル目までの入力時間帯と判定回路ＤＣａ−１とに対応付けて端子ＩＴ−１が設定されている場合、検査シーケンス生成部１２２は、１５０サイクル目から９００サイクル目までの入力時間帯と判定回路ＤＣａ−２とに対応付けて、端子ＩＴ−２を設定する（図７参照）。
Ｓ２２５の後、処理はＳ２２６−１に進む。
【００５１】
Ｓ２２６−１において、検査シーケンス生成部１２２は、Ｓ２２３で選択していない未選択の個別時間帯があるか判定する。
未選択の個別時間帯がある場合（ＹＥＳ）、処理はＳ２２３に戻る。
未選択の個別時間帯がない場合（ＮＯ）、処理はＳ２２６−２に進む。
【００５２】
Ｓ２２６−２において、検査シーケンス生成部１２２は、Ｓ２２２で選択していない未選択の入力端子名があるか判定する。
未選択の入力端子名がある場合（ＹＥＳ）、処理はＳ２２２に戻る。
未選択の入力端子名がない場合（ＮＯ）、処理はＳ２２７に進む。
【００５３】
Ｓ２２７において、検査シーケンス生成部１２２は、シーケンス番号Ｓｎが総シーケンス数Ｔｎよりも小さいか判定する。
シーケンス番号Ｓｎが総シーケンス数Ｔｎよりも小さい場合（ＹＥＳ）、処理はＳ２２８に進む。
シーケンス番号Ｓｎが総シーケンス数Ｔｎ以上である場合（ＮＯ）、検査シーケンス生成処理（Ｓ２２０）は終了する。
【００５４】
Ｓ２２８において、検査シーケンス生成部１２２は、シーケンス番号Ｓｎに１を加算する。
Ｓ２２８の後、処理はＳ２２１−２に戻る。
【００５５】
図９は、実施の形態１における検査回路２１０の動作を示すフローチャートである。
実施の形態１における検査回路２１０（図６参照）の制御回路ＣＣの動作について、図９に基づいて説明する。
【００５６】
図９の動作が開始する前に、検査回路２１０の制御回路ＣＣにはリセット信号ＲＥが入力され、検査サイクル用のカウンタのカウンタ値が０に初期化される。そして、イネーブル信号ＥＮが制御回路ＣＣに入力される。その後、制御回路ＣＣは、クロック信号ＣＬが入力される毎に図９の動作を実行する。
【００５７】
Ｓ３１０において、制御回路ＣＣは、検査シーケンス１９２（ＴＳ）を参照し、今回の検査サイクルが該当サイクルであるか判定する。該当サイクルは、少なくともいずれかの入力端子に入力信号が入力される入力時間帯が開始する検査サイクルである。
このとき、制御回路ＣＣは、カウンタのカウンタ値をカウントアップする。そして、カウンタ値が該当サイクルのサイクル数と同じである場合、制御回路ＣＣは、今回の検査サイクルが該当サイクルであると判定する。
例えば、図７の検査シーケンス１９２は、検査サイクルが１００のときに端子ＩＴ−１と端子ＩＴ−３とのそれぞれに入力信号が入力し始めることを示している。したがって、検査サイクル“１００”は該当サイクルである。
今回の検査サイクルが該当サイクルである場合（ＹＥＳ）、処理はＳ３１１およびＳ３１２に進む。
今回の検査サイクルが該当サイクルでない場合（ＮＯ）、今回の検査サイクルにおける動作は終了する。
【００５８】
Ｓ３１１において、制御回路ＣＣは、検査シーケンス１９２（ＴＳ）を参照し、該当選択回路に端子信号を入力する。該当選択回路は、検査シーケンス１９２において該当サイクルを含んだ入力時間帯（該当時間帯）に対応付けられた選択回路名で識別される選択回路である。端子信号は該当端子を指定する信号であり、該当端子は検査シーケンス１９２において該当時間帯と該当選択回路とに対応付けられた入力端子名で識別される入力端子である。
その後、該当選択回路は、複数の入力端子のうち端子信号が指定する入力端子を選択し、選択した入力端子に入力される入力信号を次に端子信号が入力されるまで該当判定回路に入力し続ける。該当判定回路は該当選択回路に接続された判定回路である。
【００５９】
例えば、図７の検査シーケンス１９２は、１００サイクル目から２００サイクル目までの入力時間帯に対応付けて選択回路ＳＣａ−１と端子ＩＴ−１とを示している。また、検査シーケンス１９２は、１００サイクル目から９００サイクル目までの入力時間帯に対応付けて選択回路ＳＣｄと端子ＩＴ−３とを示している。
そのため、検査サイクルが１００になったとき、制御回路ＣＣは、端子ＩＴ−１を指定する端子信号を選択回路ＳＣａ−１に入力する。その後、選択回路ＳＣａ−１は、端子ＩＴ−１に入力される入力信号を次に端子信号が入力されるまで判定回路ＤＣａ−１（該当判定回路）に入力し続ける。
また、制御回路ＣＣは、端子ＩＴ−３を指定する端子信号を選択回路ＳＣｄに入力する。その後、選択回路ＳＣｄは、端子ＩＴ−３に入力される入力信号を次に端子信号が入力されるまで判定回路ＤＣｄ（該当判定回路）に入力し続ける。
Ｓ３１１の後、今回の検査サイクルにおける動作は終了する。
【００６０】
Ｓ３１２において、制御回路ＣＣは、検査シーケンス１９２（ＴＳ）を参照し、該当時間帯に該当判定回路に検査信号およびシーケンス情報を入力する。
該当判定回路は、該当選択回路に接続された判定回路であり、検査シーケンス１９２において該当サイクルを含んだ入力時間帯（該当時間帯）に対応付けられた判定回路名で識別される判定回路である。
検査信号は、入力信号の種類を判定する判定時間帯（該当時間帯）を指定する信号である。
シーケンス情報は、シーケンス番号および該当時間帯を示す情報である。
【００６１】
その後、該当判定回路は、検査信号が入力される間、該当選択回路から入力される入力信号の種類を判定する。そして、該当判定回路は、判定結果とシーケンス情報と判定回路識別子と含む検査結果情報を記憶素子ＭＥに記憶する。例えば、判定結果は１ビットの情報である。
【００６２】
例えば、図７の検査シーケンス１９２は、１００サイクル目から２００サイクル目までの入力時間帯に対応付けて判定回路ＤＣａ−１を示している。また、検査シーケンス１９２は、１００サイクル目から９００サイクル目までの入力時間帯に対応付けて判定回路ＤＣｄを示している。
そのため、制御回路ＣＣは、１００サイクル目から２００サイクル目までの入力時間帯に検査信号とシーケンス情報とを判定回路ＤＣａ−１に入力する。その後、判定回路ＤＣａ−１は、検査信号が入力されている間、選択回路ＳＣａ−１（該当選択回路）から入力される入力信号が信号Ｓａであるか判定する。信号Ｓａは信号値が０である入力信号である。そして、判定回路ＤＣａ−１は、判定結果を含む検査結果情報を記憶素子ＭＥに記憶する。
また、制御回路ＣＣは、１００サイクル目から９００サイクル目までの入力時間帯に検査信号とシーケンス情報とを判定回路ＤＣｄに入力する。その後、判定回路ＤＣｄは、検査信号が入力されている間、選択回路ＳＣｄから入力される入力信号が信号Ｓｃであるか判定する。信号Ｓｃは信号値が０から１に変化する入力信号である。そして、判定回路ＤＣｄは、判定結果を含む検査結果情報を記憶素子ＭＥに記憶する。
Ｓ３１２の後、今回の検査サイクルにおける動作は終了する。
【００６３】
検査シーケンス１９２の全ての検査が終了した後、検査回路２１０の記憶素子ＭＥに記憶された検査結果情報は、検査回路２１０の出力端子（図示省略）から出力される。例えば、検査結果情報は、コンピュータによって読み出されてディスプレイに表示される。
利用者は、検査結果情報毎の判定結果を参照することによって、ＬＳＩ２００の入力信号の不具合の有無を特定することができる。正しい入力信号が入力されなかったことを判定結果が示す場合、利用者は、シーケンス情報と判定回路識別子とを参照することによって、ＬＳＩ２００の入力信号の不具合を特定することができる。
【００６４】
図１０は、実施の形態１における検査回路設計装置１００のハードウェア構成図である。
実施の形態１における検査回路設計装置１００のハードウェア構成について、図１０に基づいて説明する。但し、検査回路設計装置１００のハードウェア構成は図１０に示す構成と同一でなくても構わない。
【００６５】
検査回路設計装置１００は、演算装置９０１、補助記憶装置９０２、主記憶装置９０３、通信装置９０４および入出力装置９０５を備えるコンピュータである。
演算装置９０１、補助記憶装置９０２、主記憶装置９０３、通信装置９０４および入出力装置９０５はバス９０９に接続している。
【００６６】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
補助記憶装置９０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリまたはハードディスク装置である。
主記憶装置９０３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置９０４は、有線または無線でインターネット、ＬＡＮ（ローカルエリアネットワーク）、電話回線網またはその他のネットワークを介して通信を行う。
入出力装置９０５は、例えば、マウス、キーボード、ディスプレイ装置である。
【００６７】
プログラムは、補助記憶装置９０２に記憶されている。
例えば、オペレーティングシステム（ＯＳ）が補助記憶装置９０２に記憶される。また、「〜部」として説明している機能を実現するプログラムが補助記憶装置９０２に記憶される。
プログラムは、補助記憶装置９０２に記憶されており、主記憶装置９０３にロードされ、演算装置９０１に読み込まれ、演算装置９０１によって実行される。
【００６８】
「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検知」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の入力」、「〜の出力」等の処理の結果を示す情報、データ、ファイル、信号値または変数値が主記憶装置９０３または補助記憶装置９０２に記憶される。
【００６９】
実施の形態１により、ＬＳＩ２００の入力端子に入力される入力信号を検査する検査回路２１０を設計することができる。そして、検査回路２１０による検査により、ＬＳＩ２００の入力信号の不具合を容易に特定することができる。
【００７０】
実施の形態１は、検査回路設計装置１００および検査回路２１０の形態の一例である。
つまり、検査回路設計装置１００および検査回路２１０は、実施の形態１で説明した構成要素の一部を備えなくても構わない。また、検査回路設計装置１００および検査回路２１０は、実施の形態１で説明していない構成要素を備えても構わない。
【００７１】
実施の形態１においてフローチャート等を用いて説明した処理手順は、実施の形態１に係る方法およびプログラムの処理手順の一例である。実施の形態１に係る方法およびプログラムは、実施の形態１で説明した処理手順と一部異なる処理手順で実現されても構わない。
【００７２】
実施の形態１において「〜部」は「〜処理」「〜工程」「〜プログラム」「〜装置」などに読み替えることができる。
【符号の説明】
【００７３】
１００  検査回路設計装置、１１０  検査回路設計部、１１１  重複数計数部、１１２  判定回路数決定部、１１３  設計データ生成部、１２０  スケジュール部、１２１  総シーケンス数計数部、１２２  検査シーケンス生成部、１８０  データ記憶部、１８１  検査情報データ、１８２  判定回路データベース、１９１  検査回路設計データ、１９２  検査シーケンス、２００  ＬＳＩ、２１０  検査回路、９０１  演算装置、９０２  補助記憶装置、９０３  主記憶装置、９０４  通信装置、９０５  入出力装置、９０９  バス。
【図１】
2016053532.tif 000003
【図２】
2016053532.tif 000004
【図３】
2016053532.tif 000005
【図４】
2016053532.tif 000006
【図５】
2016053532.tif 000007
【図６】
2016053532.tif 000008
【図７】
2016053532.tif 000009
【図８】
2016053532.tif 000010
【図９】
2016053532.tif 000011
【図１０】
2016053532.tif 000012