(57)【要約】【課題】システムＬＳＩの機能テスト方法において、テスト実施者がテスト手順書を作成するためにシステムＬＳＩ仕様書を分析することを不要にし、システムＬＳＩ仕様書と機能記述との間の制御手順確認作業をテスト実施者を介さずに実施可能にする。【解決手段】制御手順自動生成部１０５においてシステムＬＳＩの機能記述１０１から機能テストを実施するための制御手順を自動生成し、システムＬＳＩ仕様書１００から全てのハードウェアの設定パターンを抽出し、比較部１０６において前記制御手順と前記設定パターンを比較することにより、システムＬＳＩ仕様書１００に対する前記制御手順の整合性を検証することにより、テスト実施者が前記制御手順に基づいて容易に正確なテスト手順書を作成することを可能にする。【選択図】  図１
2005092598.tif 000002
【特許請求の範囲】
【請求項１】
システムＬＳＩの機能検証を行うためのシステム制御手順の自動生成方法において、
前記システムＬＳＩの出力に指定パターンを得るための制御手順を前記システムＬＳＩの機能記述から自動生成するシステム制御手順自動生成方法。
【請求項２】
前記システムＬＳＩの仕様書から全てのハードウェアの設定パターンを抽出し、前記制御手順を前記設定パターンと比較し、前記システムＬＳＩの仕様書に対する前記制御手順の整合性を検証する請求項１記載のシステム制御手順自動生成方法。
【請求項３】
前記制御手順を実行するテストプログラムを自動生成する請求項１記載のシステム制御手順自動生成方法。
【請求項４】
システムＬＳＩの機能検証を行うためのシステム手順の自動生成装置において、
前記システムＬＳＩの出力に指定パターンを得るための制御手順を前記システムＬＳＩの機能記述から自動生成する制御手順自動生成部と、前記システムＬＳＩの仕様書から全てのハードウェアの設定パターンを抽出する設定パターン抽出部と、前記制御手順と前記設定パターンを比較する比較部とを備えるシステム制御手順自動生成装置。
【請求項５】
請求項１から３のいずれか一項記載のシステム制御手順自動生成方法をコンピュータに実行させるプログラム。
【請求項６】
請求項５記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステムＬＳＩの機能検証を行うためのシステム制御手順の自動生成方法および装置に関するものである。
【背景技術】
【０００２】
ＬＳＩが大規模化、複雑化するにつれて、人手作成によるテストパターンでは十分なテストケースをカバーすることが不可能になり、また、テストパターン自体にバグが混入する危険も大きいことから、従来、システムＬＳＩの機能テストを効率的かつ自動的に行う方法が研究され、多く技術が実用化されてきた。
【０００３】
その中でも、システムＬＳＩのテストパターンを自動生成することは重要な課題であり、テストカバレージを高めて効率の良いテストパターンを自動生成する技術が追求されてきた。例えば、特許文献１に開示されているように、事象発生確率の設定に基づいてテストカバレージを一定のレベルに維持し、品質の高いテストパターンを生成する技術がある。
【０００４】
しかしながら、設計されたシステムＬＳＩがシステムＬＳＩ仕様書に記述された機能を満たしているかどうかを検証することに関しては、やはり人手に頼っているのが実状である。図７は、システムＬＳＩの機能検証を行うための従来の機能テスト方法を示す図である。
【０００５】
図７において、機能仕様作成者はシステムＬＳＩ仕様書７００を作成し、テスト実施者はシステムＬＳＩ仕様書７００を分析してテスト手順書（制御手順、期待値）７０２を作成し、各ハード設計者はシステムＬＳＩ仕様書７００に基づいて機能記述（ＲＴＬ）７０１を作成し、最後に、テスト実施処理部７０３において、テスト手順書７０２に従って機能記述７０１をテストしている。
【特許文献１】特開平１０−２２１４１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前記システムＬＳＩの機能検証を行うための従来の機能テスト方法においては、テスト実施者がシステムＬＳＩ仕様書を分析してテスト手順書を作成しているが、システムの大規模化、複雑化、短期開発化により、テスト実施者がシステムＬＳＩの制御機能を把握するのが困難になっているという問題がある。
【０００７】
システムＬＳＩ仕様書には、機能仕様、回路構成図、レジスタ仕様等は明記されていても、１チップとしてのシステムＬＳＩ全体の制御機能を把握している技術者は少なく、制御手順（設定例）が明記されていないことが多い。
【０００８】
そのため、テスト実施者は、テスト手順書を作成する工程において、制御手順が不明な機能があれば、都度、機能仕様作成者あるいは機能仕様作成者経由で各ハードウェア設計者に対して問合せ、制御手順を確認するといった手間がかかってしまう。
【０００９】
またテスト実施工程においても同様の問題が生じ、テスト結果が不合格であった場合の解析においては、それぞれの部署で制御手順確認作業が発生してしまうため、本来の評価以外の工数が多く発生していた。
【００１０】
本発明は前記従来の問題を解決するもので、システムＬＳＩの機能検証を行うための機能テスト方法において、テスト実施者がテスト手順書を作成するためにシステムＬＳＩ仕様書を分析することを不要にし、システムＬＳＩ仕様書と機能記述との間の制御手順確認作業をテスト実施者を介さずに実施することができるシステム制御手順自動生成装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明のシステム制御手順自動生成方法は、システムＬＳＩの機能検証を行うためのシステム制御手順の自動生成方法において、前記システムＬＳＩの出力に指定パターンを得るための制御手順を前記システムＬＳＩの機能記述から自動生成する。
【００１２】
上記構成によれば、システムＬＳＩの機能検証を行うために必要なシステムＬＳＩの出力パターンを指定し、これを与える制御手順を機能記述から直接生成することができるため、機能テストのための精度の高い制御手順を効率よく得ることができ、正確な機能テストを実施することができる。
【００１３】
本発明のシステム制御手順自動生成方法は、さらに、前記システムＬＳＩの仕様書から全てのハードウェアの設定パターンを抽出し、前記制御手順を前記設定パターンと比較し、前記システムＬＳＩの仕様書に対する前記制御手順の整合性を検証する。
【００１４】
上記構成によれば、機能記述から自動生成された制御手順を、システムＬＳＩ仕様書から抽出されたハードウェアの設定パターンと比較することにより、機能テスト実施前にシステム制御手順とシステムＬＳＩ仕様書との整合性が確認でき、効率よくかつ正確な機能テストを実施することができる。
【００１５】
制御手順とシステムＬＳＩ仕様書との整合がとれなかった場合、これを各ハード設計者に通知し、機能仕様作成者との間で仕様を確認してもらうが、そこにはテスト実施者は介入する必要がないため、テスト手順書作成段階において非熟練者でも容易にテスト手順書を作成し、テストを実施することができる。
【００１６】
本発明のシステム制御手順自動生成方法において、前記制御手順を実行するテストプログラムを自動生成することが好ましい。
【００１７】
本発明のシステム制御手順自動生成装置は、システムＬＳＩの機能検証を行うためのシステム手順の自動生成装置において、前記システムＬＳＩの出力に指定パターンを得るための制御手順を前記システムＬＳＩの機能記述から自動生成する制御手順自動生成部と、前記システムＬＳＩの仕様書から全てのハードウェアの設定パターンを抽出する設定パターン抽出部と、前記制御手順と前記設定パターンを比較する比較部とを備える。
【００１８】
上記構成によれば、機能記述から直接生成された精度の高い制御手順を、システムＬＳＩ仕様書から抽出されたハードウェアの設定パターンと比較することができるため、機能テスト実施前にシステム制御手順とシステムＬＳＩ仕様書との整合性が確認でき、効率よくかつ正確な機能テストを実施することができる。
【発明の効果】
【００１９】
本発明によれば、機能テスト実施前にシステム制御手順とシステムＬＳＩ仕様書との整合性が検証されるため、テスト実施者と機能仕様作成者および各ハード設計者との間での人手による制御手順確認作業が大幅に削減できる。
【００２０】
また、機能記述で明示されているレジスタや結線情報等から制御手順が自動生成されるため、人為的な制御手順作成ミスおよびミスよる後戻り作業が発生せず、テストの精度も向上するとともに、システムＬＳＩの機能テストを従来よりも正確かつ効率的に実施することが可能となる。
【００２１】
さらに、システムＬＳＩ仕様書に網羅されていない制御手順書（設定例）も作成できるため、ユーザに対してシステムＬＳＩ仕様書とともに制御手順書も提供でき、システムＬＳＩの制御が容易かつ正確に実現可能となり、ユーザにおける製品の開発効率も向上する。
【発明を実施するための最良の形態】
【００２２】
図１は本発明の一実施の形態に係るシステム制御手順自動生成方法を示す図である。図１において、機能仕様作成者はシステムＬＳＩ仕様書１００を作成し、各ハード設計者はシステムＬＳＩ仕様書１００により機能記述（ＲＴＬ）１０１を作成する。テスト実施者はシステムＬＳＩ仕様書１００と機能記述１０１からシステム制御手順自動生成装置１０４によりテスト手順書１０２（制御手順、期待値等）を作成する。
【００２３】
ここでは機能記述のレベルとしてＲＴＬ（Register Transfer Level）を例に挙げて説明するが、これに限定するものではなく、動作レベル（Behavior Level）や構造記述（Structure Level）であってもよい。また、ハードウェア記述言語（ＨＤＬ）に関しても、ＶＨＤＬやVerilogＨＤＬあるいはシステムＣ等のいずれであってもよい。
【００２４】
システム制御手順自動生成装置１０４においては、制御手順自動生成部１０５により機能記述１０１のレジスタや結線情報等から制御手順を自動生成する。また、比較部１０６はシステムＬＳＩ仕様書１００と制御手順自動生成部１０５が生成する制御手順との比較を行う。
【００２５】
比較部１０６によりシステムＬＳＩ仕様書１００と制御手順自動生成部１０５が生成する制御手順とが一致していた場合は、それがテスト手順書１０２となる。しかしながら不一致であった場合は、各ハード設計者に対して整合性がとれていない内容を通知し、機能仕様作成者との間で不一致箇所の仕様を確認し、システムＬＳＩ仕様書１００か機能記述１０１かのいずれかに修正を施す。
【００２６】
テスト手順書１０２の作成完了後、ツールを使用するテスト実施処理部１０３にてテスト手順書１０２に従って機能記述１０１のテストを行う。そこでテスト結果が不合格になった場合は、各ハード設計者に対して不合格内容を通知し、各ハード設計者は機能仕様作成者との間で不合格箇所の仕様を確認し、システムＬＳＩ仕様書１００か機能記述１０１かのいずれかに修正を施す。
【００２７】
このようにすることで、システム制御手順自動生成装置１０４の比較部１０６にて不合格となった場合や、テスト実施処理１０３で不合格となった場合は、テスト実施者は不合格内容を各ハード担当者に通知するだけで済み、仕様確認には介入する必要が無くなる。
【００２８】
次に、制御手順自動生成部１０５の動作について、図２に構成を示す論理回路例を用いて説明する。図２において、２００はフラグＡを含むレジスタＡ、２０１はフラグＩとフラグＪを含むレジスタＢ、２０２は機能ブロックＡ、２０３はセレクタ、２０４はトライステートバッファ、２０５は端子である。
【００２９】
端子２０５からの出力信号２１２としてＨレベルを出力させたい場合、レジスタＡのフラグＡに１を設定し、レジスタＢのフラグＩに１を設定する。この設定により、セレクタ２０３ではフラグＡの出力信号２０７が選択され、その出力信号線２０９にはＨレベルが出力される。さらに、レジスタＢのフラグＪを１に設定することによりトライステートバッファ２０４がイネーブルとなり、信号線２０９の信号レベルがそのまま出力信号２１２となるため、端子２０５からＨレベルを出力させることができる。
【００３０】
また、機能ブロックＡ２０２から出力される信号２０８が常にＨレベルであれば、フラグＡは１あるいは０のどちらでもよく、フラグＩに０を設定する。この設定によりセレクタ２０３では信号２０８が選択され、その出力信号線２０９はＨレベルが出力される。以降は前記同様に、フラグＪを１に設定することによりトライステートバッファ２０４がイネーブルとなり、信号線２０９の信号レベルがそのまま出力信号２１２となるため、端子２０５からＨレベルを出力させることができる。
【００３１】
このように、制御手順自動生成部１０５は、機能記述１０１のレジスタや論理セルおよび結線情報により、出力させたい端子、あるいは信号レベルの指定により、どのレジスタにどんな値を設定すればよいかを出力する。
【００３２】
図３は自動生成される制御手順の出力形式の構成例を示す図である。図３において、３００は設定順序欄、３０１はレジスタ名欄、３０２はアドレス欄、３０３は設定値欄である。図２の論理回路例を用いると、まず１番目の設定項目３０４で「０ｘ００００Ｂ０６０番地のレジスタＡに０ｘ０１を設定する」という内容が記述される。次に２番目の設定項目３０５で同じく「０ｘ００００Ｂ０６４番地のレジスタＢに０ｘ０３を設定する」という内容が記述されファイルに出力される。
【００３３】
次に比較部１０６の動作について説明する。図４は比較部１０６の処理の流れを示す図である。図４において、システムＬＳＩ仕様書１００、制御手順自動生成部１０５、比較部１０６は図１の構成部分である。
【００３４】
比較部１０６において、４０２はシステムＬＳＩ仕様書１００からレジスタ仕様を抜粋し全ての設定パターンを抽出する設定パターン抽出部、４０３は設定パターン抽出部４０２で抽出した全ての設定パターンを設定パターンテーブルファイル４０４として生成する設定パターンテーブルファイル生成部、４０５は制御手順自動生成部１０５により自動生成された制御手順ファイル４０１と設定パターンテーブルファイル４０４を比較する比較判定部である。
【００３５】
比較判定部４０５で制御手順ファイル４０１の内容が設定パターンテーブルファイル４０４に整合するものであれば、その制御手順ファイル４０１をリファレンスにしてテスト実施者はテスト手順書を作成する。逆に整合していなければ、ハード設計者に対して設計および仕様の確認を依頼する。
【００３６】
このように、本実施の形態のシステム制御手順自動生成方法および装置によれば、人手を伴わず機能記述から制御手順が自動生成でき、また生成した制御手順をシステムＬＳＩ仕様書と比較して整合をとるため、設計ミスが早期に発見可能であり、効率よくかつ正確な制御手順を生成することができる。
【００３７】
次に、上記システム制御手順自動生成方法をコンピュータで実行させるプログラムについて説明する。図５は、機能記述で表現された論理回路図のレジスタや論理セルおよび結線情報からユーザ指定条件を満たす制御手順を自動生成させる制御プログラムを示すフロー図である。
【００３８】
図５のフロー図において、ステップ５００でユーザ指定条件を入力し、ステップ５０１で機能記述を入力し、ステップ５０２でユーザ指定条件を満たすレジスタ制御手順を探索し、ステップ５０３で探索結果の制御手順をファイルに出力する。
【００３９】
また、図６は自動生成された制御手順生成ファイルとシステムＬＳＩ仕様書のレジスタ仕様から抽出した設定パターンテーブルファイルとを比較する制御プログラムを示すフロー図である。
【００４０】
図６のフロー図において、ステップ６００でシステムＬＳＩ仕様書のレジスタ仕様を入力し、ステップ６０１でレジスタ仕様から全ての設定パターンを抽出し、ステップ６０２で抽出した設定パターンをテーブルファイルとして生成し、ステップ６０３でテーブルファイルと自動生成された制御手順ファイルとを比較し、ステップ６０４、６０５で合否を判定する。
【００４１】
このように、制御手順を自動生成する方法および自動生成された制御手順とシステムＬＳＩ仕様書を比較する方法を実現する制御プログラムを使用することにより、制御手順の作成が自動化でき、効率よく正確な制御手順を生成することが可能となる。
【産業上の利用可能性】
【００４２】
本発明のシステム制御手順自動生成方法および装置は、機能テスト実施前にシステム制御手順とシステムＬＳＩ仕様書との整合性が検証されるため、テスト実施者と機能仕様作成者および各ハード設計者との間での人手による制御手順確認作業が大幅に削減できる効果を有し、システムＬＳＩの機能検証を行うためのシステム制御手順の自動生成方法および装置等として有用である。
【図面の簡単な説明】
【００４３】
【図１】本発明の一実施の形態に係るシステム制御手順自動生成方法を示す図。
【図２】論理回路例を示す回路図。
【図３】自動生成される制御手順の出力形式の構成例を示す図。
【図４】本発明の一実施の形態における比較部の処理の流れを示す図。
【図５】制御手順を自動生成させる制御プログラムを示すフロー図。
【図６】制御手順生成ファイルと設定パターンテーブルファイルとを比較する制御プログラムを示すフロー図。
【図７】従来のシステムＬＳＩの機能テスト方法を示す図。
【符号の説明】
【００４４】
１００、７００  システムＬＳＩ仕様書
１０１、７０１  機能記述（ＲＴＬ）
１０２、７０２  テスト手順書
１０３、７０３  テスト実施処理部
１０４  システム制御手順自動生成装置
１０５  制御手順自動生成部
１０６  比較部
１０７  制御手順書
２００  レジスタＡ
２０１  レジスタＢ
２０２  機能ブロックＡ
２０３  セレクタ
２０４  トライステートバッファ
２０５  端子
２０７  レジスタＡのフラグＡからの出力信号
２０８  機能ブロックＡの出力信号
２０９  セレクタ２０３の出力信号
２１０  レジスタＢのフラグＩからの出力信号
２１１  レジスタＢのフラグＪからの出力信号
２１２  端子の出力信号
３００  設定順序欄
３０１  レジスタ名欄
３０２  アドレス欄
３０３  設定値欄
３０４  １番目の設定項目
３０５  ２番目の設定項目
４０１  制御手順ファイル
４０２  設定パターン抽出部
４０３  設定パターンテーブルファイル生成部
４０４  設定パターンテーブルファイル
４０５  比較判定部
５００〜５０３、６００〜６０５  ステップ
【図１】
2005092598.tif 000003
【図２】
2005092598.tif 000004
【図３】
2005092598.tif 000005
【図４】
2005092598.tif 000006
【図５】
2005092598.tif 000007
【図６】
2005092598.tif 000008
【図７】
2005092598.tif 000009