【事件の表示】
　平成１０年特許願第１０６０６９号「ＬＳＩテスタのテストパタン生成方法および装置」拒絶査定に対する審判事件［平成１１年１１月　５日出願公開、特開平１１−３０４８９０］について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
１．出願の経緯・本願発明
　この出願は、平成１０年４月１６日の出願であって、その請求項１〜７に係る発明は、明細書及び図面の記載からみて、その請求項１〜７に記載されたとおりのものであるところ、その請求項３に係る発明は次のとおりである。(以下「本願発明３」という。)
　
「【請求項３】半導体集積回路をＬＳＩテスタでテストする場合のテストパタンを生成する方法において、
　（ａ）回路接続情報から、競合する外部端子対と、競合する外部端子対に対応するフリップフロップとを検出するステップと、
　（ｂ）前記競合する外部端子対のうちで、入力されるテストパタンが同時に変化している外部対を検出するステップと、
　（ｃ）前記ステップ（ｂ）で検出された外部端子対と、対応するフリップフロップとの間のパス遅延を計算し、計算されたパス遅延とフリップフロップのセットアップ時間およびホールド時間とから、テスタスキューマージンを求めるステップと、
　（ｄ）テスタスキューが存在する場合に、前記スキューマージンを参照して、フリップフロップのセットアップエラーまたはホールドエラーが発生するか否かを判定するステップと、
　（ｅ）セットアップエラーまたはホールドエラーが発生する場合には、エラーが発生しないように最適タイミング条件を生成するステップと、
　（ｆ）生成された最適タイミング条件に基づきタイミングをずらしたテストパタンでシミュレーションを実行し、結果が良好であれば、前記タイミングをずらしたテストパタンを、ＬＳＩテスタ用のテストパタンとするステップと、を含むことを特徴とするＬＳＩテスタのテストパタン生成方法。」
　
２．刊行物
　原査定の拒絶の理由で引用された特開平９−１５３０７３号公報(以下「刊行物」という。)には下記の記載がある。
　
「【０００２】
【従来の技術】ＡＳＩＣ等の半導体集積回路の設計においては、その論理回路の正当性を確認する論理検証が重要であり、特に集積度の増大に伴ないコンピュータによる論理シミュレーションを用いた論理検証方法が広く採用されている。すなわち、設計対象の論理回路の設計言語による記述とシミュレーション実行制御データとを入力として論理シミュレーションを行い、結果として動作を表すタイムチャートを出力し、設計者はこのタイムチャートの内容を確認することにより論理回路の動作の正当性を確認する。また、シミュレーション結果が設計者の期待値と同一であるか否かの自動チエックを目的として、ＬＳＩテスタにサイクル毎の期待値を入力したサイクリックなシミュレーション用テストパターンを用い、その期待値とシミュレーション結果とを比較することにより自動的に検証するＡＳＩＣ用のシミュレーション装置もある。
【０００３】従来のこの種のＡＳＩＣ用のシミュレーション装置は、テスタの持つ電気的な入力信号のタイミング差であるテスタスキューを考慮しておらず、ある種のＡＳＩＣ製品がこのテスタスキューの影響によりシミュレーション結果が合格しているのに、出荷テスト時には不合格となるというトラブルが頻発していた。
」(公報第２欄第４６行〜第３欄第１８行)
「【００１０】
【発明が解決しようとする課題】上述した従来の第１のシミュレーション装置およびその方法は、回路中のすべての順序回路素子のタイミング規定を一律に素子単体の満足すべき特性値で定義し、このライブラリを基準に、内部順序回路素子部のタイミング判定や出力論理判定を行っているため、データ系入力信号と制御系入力信号のスキューの影響を直接受ける不特定多数の順序回路素子が内在する回路であっても、これらの順序回路素子に対して本来考慮すべき外部スキューの影響を考慮したタイミング判定ができないという問題点を有しているため、デバイス出荷テスト時に不特定な入力の組み合せで発生するテスタスキューにより回路が誤動作する可能性を洩れなく検出することは不可能であるので、あらかじめ予期できない不特定入力の組み合せで発生するテスタスキューによる出荷テストトラブルを未然に防止できないという欠点があった。」(公報第４欄第３４〜５０行)
「【００１５】このような構成により本実施の形態のシミュレーション装置は、入力側に位置しテスタスキューの影響を受ける可能性のある全ての初段順序回路素子を回路の全入力経路に対して追跡・抽出し、かつ、ここで抽出した初段順序回路素子のみをテスタスキュー値変動を考慮したスキュー値ライブラリで置換してシミュレーションを行うことにより、テスタスキュー値変動の影響により誤動作し得る全てのタイミング要因を回路検証段階で検出する。」(公報第６欄第３０〜３８行)
「【００１７】次に、図１および処理手順をフローチャートで示す図２および図３を参照して本実施の形態の動作について説明すると、まず、回路接続情報であるネットリスト７より、データ系，制御系各入力端子１３，１４を含む全入力端子を選定する（ステップ２０１）。そして、ただちに全入力端子のネット名をトレースし、全入力端子の１つ後段の素子タイプをチェックする（ステップ２０２）。ここで、入力端子に最も近い初段の順序回路素子（ここではスキュー値順序回路素子１７）が検出されたか否かを判定し（ステップ２０３）、検出された場合は初段の順序回路素子タイプすなわちフリップフロップ等の種類，および素子名すなわちネットリスト中で付加されたユニークな素子名を記憶し（ステップ２０４）、続いて初段順序回路素子の次に位置する２段目の順序回路素子を追跡し、この有無を判定する（ステップ２０５）。ここで、２段目の順序回路素子（ここでは１８）が検出された場合は、スキューの影響を受ける順序回路素子は、ステップ２０３で検出した初段の順序回路素子に特定されることからネットリストを追跡を終了し、ステップ２０４の記憶内容より、初段の順序回路素子タイプおよび素子名を出力する（ステップ２０８）。」(公報第７欄第２〜２２行)
「【００２２】テスタスキュー値変動を加えたスキュー値順序回路素子１７にかかわるタイミング規定を示す図３（Ｂ）を参照すると、このタイミング規定は、テスタスキュー値変動範囲の絶対値βをデータ系入力端子１３に対して＋β，制御系入力端子１４に対して−βと定義すると、テスタスキュー値変動を加えたスキュー値順序回路素子１７のセットアップタイムの規定は、素子単体のセットアップタイムの規定を従来と同様αとすれば、ｔｓｅｔｕｐ≧（２β＋α）となる。
【００２３】つまり、スキュー値順序回路素子１７にかかわる動作タイミング関係がｔｓｅｔｕｐ≧（２β＋α）を満足すれば、テスタスキューの影響を受けても回路は正常動作するが、上記タイミング関係がｔｓｅｔｕｐ＜（２β＋α）となれば回路は誤動作することを意味しており、これは全ての検出された順序回路素子に対しても同様である。したがって、ステップ２１３のシミュレーション結果に対しては、ｔｓｅｔｕｐ＜（２β＋α）であるか否かでタイミング判定を行い（ステップ２１４）、かつ出力期待値に対するファンクションエラーの有無を判定することにより（ステップ２１５）、テスタスキューにより誤動作する（ステップ２１６）かテスタスキューの影響を受けない（ステップ２１７）かを容易に検証することが可能である。
【００２４】なお、本実施の形態では、タイミング規定として代表してセットアップタイムを引用したが、ホールドタイム，リリースタイム，リムーバタイムに対するテスタスキューの影響も同様の構成、手順にて検出可能である。
【００２５】次に、本発明の第２の実施の形態を図１と共通の構成要素は共通の文字を付して同様にブロックで示す図４を参照すると、本実施の形態の前述の第１の実施の形態との相違点は、記憶回路２Ａ，データ置換処理部３，演算部６の代りに、順序回路検出処理部１で検出した初段順序回路素子を１つずつ選択しかつ選択した１つの順序回路素子の入力部よりシミュレーション対象回路の入力端子に向けてネットリストをトレースバックするネットリストトレースバック処理部９と、ネットリストトレースバック処理部９にて特定したデータ系および制御系のパスに対して入力端子までのパス遅延を計算するパス遅延演算部１０と、パス遅延演算部１０にて計算したデータ系および制御系のパス遅延値を全てのデータ系，制御系信号の組み合せに対して各々比較するスキュー判定部１１と、スキュー判定部１１によりテスタスキューマージンがないと判定されたデータ系，制御系信号の組み合せに対し各入力端子名と入力端子間の遅延差を表示するエラー情報出力部１２とを備えることである。
【００２６】このような構成により、本実施の形態のシミュレーション装置は、先に第１の実施の形態により抽出した入力端子側に位置する全ての初段順序回路素子の各々にに対して、各々の素子の入力部よりネットリストをトレースバックすることで、上記初段順序回路素子の動作に影響を与える入力信号端子とその入力経路（パス）を特定し、かつ、ここで特定した入力経路の遅延値を、データ系と制御系に分けて独立に算出し、さらにデータ系，制御系の全ての入力信号の組み合せに対して各入力信号間の遅延差を算出することにより、データ系信号と制御系信号の間で、テスタスキューの余裕度があるかどうかを判定することができる。」(公報第８欄第７行〜第９欄第１４行)
「【００２８】次に、図４および処理手順を図２と共通の構成要素は共通の文字を付して同様にフローチャートで示す図５を参照して本実施の形態の動作について説明すると、まず、ステップ２０１〜２０７は上述の第１の実施の形態と全く同様であるため説明を省略し、ステップ２１８以降の処理について説明する。まず、ステップ２０４で記憶された初段順序回路素子の１つを選択し（ステップ２１８）、この順序回路素子の入力部よりネットリストをトレースバックし、外部入力端子に到達する経路を特定する（ステップ１９）。次に、ステップ２１９におけるトレース結果をもとに、データ系入力部に対するパス遅延を計算し（ステップ２２０）、つづいて制御系入力部に対するパス遅延を計算する（ステップ２２１）。そして、ステップ２２１とステップ２２０で算出された各々のパス遅延値を比較し（ステップ２２２）、このパス遅延差がテスタスキューβの２倍、すなわち２β以上であれば、上記２つの信号は最大限に競合したときでも入力のタイミング関係は逆転しないので、テスタスキューの影響はないと判定する。
【００２９】一方、ステップ２２２において、上記２つの信号の遅延差が２β未満ならば、これらの遅延差はワーストのテスタスキュー値変動２βに対して入力のタイミング関係を逆転させる可能性を示すものであり、判定結果はスキューマージン不足によるエラーとして各々の入力端子名と入力端子間の実際の遅延差を出力する（ステップ２２３）。ステップ２１８〜２２３までの処理が１通り終了したら次の初段順序回路素子の有無をチェックし（ステップ２２４）、調査対象の素子がなくなるまでステップ２１８〜２２３の処理を同様に反復する。
【００３０】したがって、本実施の形態では、テスタスキューの影響を受ける可能性のあるデータ系および制御系の入力を組として検出し、さらにこれら２つの入力信号間の遅延差出力処理を所要の入力系に対して洩れなく行うことにより、不特定な組み合せのテスタスキューに対する回路の動作余裕度を定量的に把握することが可能で、これを回路やテストパターン設計に反映することにより出荷テストトラブルの未然防止に役立つ。」(公報第９欄第２１行〜第１０欄第７行)
　
　また、公報第９頁図３には、シュミレーション対象回路の一例としてのブロック図(図３(A))と、この回路のタイミング規定を示す説明図(図３(B))が記載されている。
　このブロック図(図３(A))には、データ側組合せ論理１５を介してスキュー値順序回路素子１７の入力端Ｄに接続されるデータ系入力端子１３と、制御側組合せ論理１６を介してスキュー値順序回路素子１７及び順序回路素子１８の入力端Ｃに接続される制御系入力端子と、順序回路素子１８の入力端Ｄがスキュー値順序回路素子１７の出力端Ｑに接続されていることと、順序回路素子１８の出力端Ｑが内部回路へ接続されていることが記載されており、そして、データ系入力端子１３に加わる信号がテスタスキュー値であるβ時間だけ遅れる可能性があることが、また、制御系入力端子１４に加わる信号がテスタスキュー値であるβ時間だけ早まる可能性があることが記載されている。
　この回路のタイミング規定を示す説明図(図３(B))には、図面とともに「テスタスキュー値変動を含む順序回路素子１７のｔｓｅｔｕｐ：（２β＋α）」との記載があり、これらの記載からは、スキュー値順序回路素子１７の入力端Ｄと入力端Ｃへ加えられる信号が、テスタスキュー値変動によって、それぞれ時間β変動したとしてもスキュー値順序回路素子１７のセットアップタイムαを満足させるためには、スキュー値順序回路素子１７の入力端Ｄと入力端Ｃに時間差ｔｓｅｔｕｐが、２β＋αとなることがみてとれる。
　
３．対比
　本願発明３と上記刊行物記載の発明を比較する。
　第一に、刊行物の「また、シミュレーション結果が設計者の期待値と同一であるか否かの自動チエックを目的として、ＬＳＩテスタにサイクル毎の期待値を入力したサイクリックなシミュレーション用テストパターンを用い、その期待値とシミュレーション結果とを比較することにより自動的に検証するＡＳＩＣ用のシミュレーション装置もある。」「従来のこの種のＡＳＩＣ用のシミュレーション装置は、テスタの持つ電気的な入力信号のタイミング差であるテスタスキューを考慮しておらず、ある種のＡＳＩＣ製品がこのテスタスキューの影響によりシミュレーション結果が合格しているのに、出荷テスト時には不合格となるというトラブルが頻発していた。」「したがって、本実施の形態では、テスタスキューの影響を受ける可能性のあるデータ系および制御系の入力を組として検出し、さらにこれら２つの入力信号間の遅延差出力処理を所要の入力系に対して洩れなく行うことにより、不特定な組み合せのテスタスキューに対する回路の動作余裕度を定量的に把握することが可能で、これを回路やテストパターン設計に反映することにより出荷テストトラブルの未然防止に役立つ。」との記載からみて、上記刊行物１記載の発明も本願発明３と同様に「半導体集積回路をＬＳＩテスタでテストする場合のテストパタンを生成する方法」である。
　第二に、刊行物の「まず、回路接続情報であるネットリスト７より、データ系，制御系各入力端子１３，１４を含む全入力端子を選定する（ステップ２０１）。そして、ただちに全入力端子のネット名をトレースし、全入力端子の１つ後段の素子タイプをチェックする（ステップ２０２）。ここで、入力端子に最も近い初段の順序回路素子（ここではスキュー値順序回路素子１７）が検出されたか否かを判定し（ステップ２０３）、検出された場合は初段の順序回路素子タイプすなわちフリップフロップ等の種類，および素子名すなわちネットリスト中で付加されたユニークな素子名を記憶し（ステップ２０４）、続いて初段順序回路素子の次に位置する２段目の順序回路素子を追跡し、この有無を判定する（ステップ２０５）。」という記載からみて、上記刊行物記載の発明は、入力端子からそれに対応する「初段の順序回路素子」を検出しており、この「初段の順序回路素子」は本願発明３の「フリップフロップ」に相当するから、上記刊行物記載の発明も本願発明３と同様に「回路接続情報から」「外部端子対に対応するフリップフロップを検出」する「ステップ」を有している。
　第三に、上記刊行物の「先に第１の実施の形態により抽出した入力端子側に位置する全ての初段順序回路素子の各々にに対して、各々の素子の入力部よりネットリストをトレースバックすることで、上記初段順序回路素子の動作に影響を与える入力信号端子とその入力経路（パス）を特定し」という記載からみて、上記刊行物記載の発明も本願発明３と同様に「競合する外部端子対」を検出する「ステップ」を有している。
　第四に、上記刊行物の「テスタスキュー値変動を加えたスキュー値順序回路素子１７にかかわるタイミング規定を示す図３（Ｂ）を参照すると、このタイミング規定は、テスタスキュー値変動範囲の絶対値βをデータ系入力端子１３に対して＋β，制御系入力端子１４に対して−βと定義すると、テスタスキュー値変動を加えたスキュー値順序回路素子１７のセットアップタイムの規定は、素子単体のセットアップタイムの規定を従来と同様αとすれば、ｔｓｅｔｕｐ≧（２β＋α）となる。」という記載、及び、図３の記載からみて、上記刊行物記載の発明はスキュー値順序回路素子１７の入力端Ｄと入力端Ｃに加わる信号間の時間関係がセットアップタイムαを満足することを目的とするものである。また、組合せ論理回路による時間遅延は、その組合せ論理回路の規模に依存するが、通常セットアップタイムと同程度の大きさである。そして、信号の変化の時間関係がセットアップタイムや組合せ論理回路による時間遅延程度の時間差しか有しない場合、その信号の変化を「同時」と表現することは、この出願の発明の属する分野で通常良く用いられている表現にすぎない。したがって、上記刊行物記載の発明も本願発明３と同様に「外部端子対」に「入力されるテストパタンが同時に変化する」場合を前提として処理を行うものである。
　第五に、上記刊行物の「まず、ステップ２０４で記憶された初段順序回路素子の１つを選択し（ステップ２１８）、この順序回路素子の入力部よりネットリストをトレースバックし、外部入力端子に到達する経路を特定する（ステップ１９）。次に、ステップ２１９におけるトレース結果をもとに、データ系入力部に対するパス遅延を計算し（ステップ２２０）、つづいて制御系入力部に対するパス遅延を計算する（ステップ２２１）。」という記載からみて、上記刊行物記載の発明も本願発明３と同様に「外部端子からこのフリップフロップへのパス遅延」を求める「ステップ」を有している。
　第六に、上記刊行物の「そして、ステップ２２１とステップ２２０で算出された各々のパス遅延値を比較し（ステップ２２２）、このパス遅延差がテスタスキューβの２倍、すなわち２β以上であれば、上記２つの信号は最大限に競合したときでも入力のタイミング関係は逆転しないので、テスタスキューの影響はないと判定する。」「一方、ステップ２２２において、上記２つの信号の遅延差が２β未満ならば、これらの遅延差はワーストのテスタスキュー値変動２βに対して入力のタイミング関係を逆転させる可能性を示すものであり、判定結果はスキューマージン不足によるエラーとして各々の入力端子名と入力端子間の実際の遅延差を出力する（ステップ２２３）。」なお、本実施の形態では、タイミング規定として代表してセットアップタイムを引用したが、ホールドタイム，リリースタイム，リムーバタイムに対するテスタスキューの影響も同様の構成、手順にて検出可能である。」という記載からみて、上記刊行物記載の発明も本願発明３と同様に「外部端子対と、対応するフリップフロップとの間のパス遅延を計算し、計算されたパス遅延とフリップフロップのセットアップ時間およびホールド時間とから、テスタスキューマージンを求め」「テスタスキューが存在する場合に、前記スキューマージンを参照して、フリップフロップのセットアップエラーまたはホールドエラーが発生するか否かを判定」するか否か判断する「ステップ」を有している。
　第七に、上記刊行物の「したがって、本実施の形態では、テスタスキューの影響を受ける可能性のあるデータ系および制御系の入力を組として検出し、さらにこれら２つの入力信号間の遅延差出力処理を所要の入力系に対して洩れなく行うことにより、不特定な組み合せのテスタスキューに対する回路の動作余裕度を定量的に把握することが可能で、これを回路やテストパターン設計に反映することにより出荷テストトラブルの未然防止に役立つ。」という記載からみて、上記刊行物記載の発明も本願発明３と同様に「セットアップエラーまたはホールドエラーが発生する場合には、エラーが発生しないように最適タイミング条件を生成」し、「生成された最適タイミング条件に基づきタイミングをずらしたテストパタンでシミュレーションを実行し、結果が良好であれば、前記タイミングをずらしたテストパタンを、ＬＳＩテスタ用のテストパタンと」する「ステップ」を有している。
　したがって、本願発明３と上記刊行物記載の発明は「半導体集積回路をＬＳＩテスタでテストする場合のテストパタンを生成する方法において、回路接続情報から、競合する外部端子対と外部端子対に対応するフリップフロップとを検出するステップと、入力されるテストパタンが同時に変化していることを前提として、外部端子対と対応するフリップフロップとの間のパス遅延を計算し、計算されたパス遅延とフリップフロップのセットアップ時間およびホールド時間とから、テスタスキューマージンを求めるステップと、テスタスキューが存在する場合に、前記スキューマージンを参照して、フリップフロップのセットアップエラーまたはホールドエラーが発生するか否かを判定するステップと、セットアップエラーまたはホールドエラーが発生する場合には、エラーが発生しないように最適タイミング条件を生成するステップと、生成された最適タイミング条件に基づきタイミングをずらしたテストパタンでシミュレーションを実行し、結果が良好であれば、前記タイミングをずらしたテストパタンを、ＬＳＩテスタ用のテストパタンとするステップと、を含むことを特徴とするＬＳＩテスタのテストパタン生成方法。」という点で一致し、下記の点で相違する。
　
(相違点)　本願発明３は入力されるテストパタンが同時に変化している外部端子対を「検出」し、その外部端子対に対してのみパス遅延を計算しているのに対し、上記刊行物記載の発明では、全ての外部端子対に対しパス遅延を計算している点。
　　
４．当審の判断
　上記相違点について検討する。
　入力されるテストパタンが同時に変化しない外部端子対に対してパス遅延を計算する必要がないことは明らかなことであるから、上記刊行物記載の発明において、入力されるテストパタンが同時に変化している外部端子対を検出し、その外部端子対に対してのみパス遅延を計算することは、当業者が当業者が必要に応じてなす程度のことにすぎない。
　そして、本願発明３の奏する効果は、上記刊行物記載の発明から予測しうる程度のものに過ぎない。
　したがって、本願発明３は、上記刊行物記載の発明に基づき当業者が容易に発明できたものである。
　
５．むすび
　したがって、本願発明３は、上記刊行物に記載された発明に基づき当業者が容易に発明をすることができたものであるので、特許法第２９条第２項の規定により特許を受けることができない。
　よって、結論のとおり審決する。