JP2011053764A - 動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 - Google Patents
動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 Download PDFInfo
- Publication number
- JP2011053764A JP2011053764A JP2009199813A JP2009199813A JP2011053764A JP 2011053764 A JP2011053764 A JP 2011053764A JP 2009199813 A JP2009199813 A JP 2009199813A JP 2009199813 A JP2009199813 A JP 2009199813A JP 2011053764 A JP2011053764 A JP 2011053764A
- Authority
- JP
- Japan
- Prior art keywords
- information
- parameter
- test
- verification
- test vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
【解決手段】設計仕様書と検証手法DBとを用いて、テストベクタを含む検証環境を自動で生成することにより、ヒューマンエラーの混入を防ぎながら検証精度の高い検証環境を提供することができ、従ってバグの混入や設定ミス、設定漏れの発生を抑えることができる。
【選択図】図1
Description
また近年の機能集約化による回路規模の増大により、検証環境もより複雑化し、人手によって検証環境を作成することによるバグの混入や、テストの漏れ、テストミスが問題視されてきている。
特許文献1には、インターフェースに関する回路を自動生成しならが、自動生成した際のタイミング情報から入力タイミングを考慮したテストベンチを作成することでテストの効率化を図ることが開示されている。
ここで、「Cアルゴリズムの機能部分に特化したテストベクタ」とは、Cアルゴリズムの論理的な部分である。
特願2008−314112は、「ハードウェア化構成検討」から「機能モデル作成」までの作業を補助するための発明であり、本願発明は、「機能モデル検証」及び「RTL機能・性能検証」を行なうための環境作成の補助を行なうための発明である。
図1は、本発明に係る動作合成検証補助方法の一実施の形態を示すフローである。
はじめに図1を参照して動作合成について述べる。
フローは大きく分けて、「アルゴリズム開発フェーズ」(フェーズP1-1)と「動作合成フェーズ」(フェーズP1-2)との二つに分けられる。
「アルゴリズム開発フェーズ」では、アルゴリズムの開発を行なう(ステップS1-1-1,S1-1-2)。アルゴリズムはソフトウェアとして開発される。その後、ハードウェア化を行なうか否かの判断がなされ(ステップS1-1-3)、ハードウェア化を行なう場合(YES)は動作合成フェーズへ移行する。ハードウェア化されない場合(NO)は、そのままソフトウェアとして実装される(ステップS1-1-4)。
尚、「スループット」とは、コンピュータの単位時間当たりの処理量である。「レイテンシ」とは、データの転送要求などのリクエストを発してから、リクエストの要求が返ってくるまでにかかる遅延時間のことである。「パイプライン」とは、コンピュータにおける処理要素を直列に連結したものである。
10は、検証環境自動生成プログラムを実行するCPU(Central Processing Unit:中央演算処理装置)である。
11は、プログラムへの実行命令およびプログラムの実行結果を出力(表示)する入出力装置である。
12は、検証環境自動生成プログラム実行時に利用するメモリである。
13は、検証手法DBおよび出力される検証環境を保存するHDDである。
14は、検証手法DBである。検証手法DB(14)については、実際の動作説明で詳細を説明する。
15は、出力結果を表示するモニタである。
16は、インターネット接続するためのネットワークである。
検証手法DB(14)や検証環境自動生成プログラム自体もネットワーク上に存在していても良い。
テストベンチトップ(5-14)で囲まれている部分が生成された機能モデル及びRTL回路の機能検証、機能・性能検証を行なう環境であり、今回自動で生成するテスト環境である。
「DUT(Device Under Test)」(5-10)は「機能モデル作成」で作られた機能モデル及び動作合成ツールにより出力されたRTL回路を指す。
「バスモデル」(5-9,5-11)は、DUTの機能や性能を検証するためにDUTとのデータ通信を行なうモデルである。
「テストベンチ」(5-15)は、DUTの機能や性能を検証するための環境である。「テストベンチ」は、「入力データ」(5-5)、「期待値データ」(5-7)、「テストシナリオ」(5-6)、「パラメータ」(5-8)、及び「Cアルゴ(アルゴリズム開発フェーズで作成したアルゴリズムのこと)」(5-4)から構成される。
「期待値データ」(5-7)はDUTから出力されると予測されるデータを保持するデータベースである。
バスモデル(5-9,5-11)はDUTから出力されたデータと期待値データを比較して、予測通りにデータが出力されたか否かを確認する。
「パラメータ」(5-8)はDUTやバスモデル(5-9,5-11)に対して動作内容の指示を行なうためのデータ群である。
「テストシナリオ」(5-6)は、DUTの動作やバスモデル(5-9,5-11)の動作を指示するテストのためのシナリオである。
「検証手法DB」(5-1)は、検証手法を登録してあるDBである。レジスタの種類やI/F(インターフェース)の種類、FIFO(First In First Out:先入れ先出し)の段数やバス幅をキーとして、効果のある検証手法を引き出すことが可能である。
テストベクタ自動生成手段としての「テストベクタ自動生成装置」(5-2)は、DUTやバスモデル(5-9,5-11)へ与える制御パラメータの組み合わせをテスト仕様書に従い、自動で生成する装置である。詳細は、「変換フロー」で説明する。
「テスト環境自動生成装置」(5-3)は、テストベンチ構成と、テストベンチとDUT、バスモデルの接続を記述するテストベンチトップとを生成する。
「DUT自動生成装置」(5-4)は、設計仕様書およびCアルゴからハードウェアを考慮したC++記述を自動で生成する装置である。
図4を参照して、自動生成のフローを説明する。
初めに、与えられたCアルゴリズム(画像処理アルゴリズム、もしくはC言語で記述されたソースコード)と設計情報とからDUTの生成を行なう(ステップS6-1)。
次に、DUT生成時に抽出された端子情報、パラメータ情報を利用し、テスト環境の自動生成を行なう。はじめに設計仕様からテストを行なうパラメータを抽出する(ステップS6-2)。
パラメータ情報には少なくともパラメータ名、パラメータ属性、ビット幅、最小値、最大値の項目が含まれる。それぞれの情報の詳細は図5で説明する。また、DUTの生成から得られるインターフェース情報を元に検証手法DBからテストパラメータを取得する(ステップS6-3)。
インターフェース情報には、起動トリガ、起動タイミングの情報が含まれる。また、そのインターフェースをテストするためのバスモデルを同時に取得しておく(S6-4)。
テストベクタは機能モデル検証用とRTL機能・性能検証用の少なくとも2種類のテストベクタが生成される。詳細な説明は、図5で行なう。
バスモデルとDUTとの接続はインターフェースが既知のため接続は容易である。また、バスモデルは入力データや出力データを保持するバッファと接続される。これはソフトウェア上で接続されるため、接続は容易である。また、これらの接続方法がわかれば、テストベンチおよびテストベンチトップ等のテスト環境を構築するのも容易である。最後にテストベクタの組み込みを行なう(ステップS6-8)。
テストベクタの組み込み時は、機能モデル検証とRTL機能・性能検証の両方で利用できるようにフラグを用意する。このフラグは、利用するテストベクタおよびバスモデルの切り替えを行なう。
図5は、図1に示した動作合成検証補助装置におけるテスタベクタの生成方法を説明するためのフローの一例である。図6は、図1に示した動作合成検証補助装置におけるパラメータファイルの一例である。
パラメータ情報には図6のようにパラメータ名、属性、ビット幅、初期値、最小値、最大値、分割方法が含まれる。パラメータ名はパラメータの名前である。属性はそのパラメータがどのように使われるかを表す。
設計によりさまざまな種類のパラメータが得られるが、機能の動作モードを設定するパラメータにはそれを示すフラグ(図6でのMODE)、動作を制御するパラメータにはそれを示すフラグ(図6でのPARAM)を指定する。
ビット幅はそのパラメータの持つビット幅である。初期値はそのパラメータがリセット時にセットされる値である。最小値はそのパラメータに設定可能である最小値である。最大値はそのパラメータに設定可能である最大値である。分割方法は、そのパラメータをテストするためにどのような方法でパラメータを設定するかを指定する。これは一般に境界値分析や同値分割などが一般的である。
はじめに、パラメータ分割方法が記述されているかを確認する。パラメータ分割方法が記述されている場合は、その分割方法に従いパラメータ値の決定を行なう。パラメータ分割方法が記述されていない場合は、パラメータの属性を利用して、検証手法DBから分割方法を取得する。
また、RTL・パフォーマンス検証用のテストベクタ生成時はパラメータの属性がMODEであるものと、タイミング情報からアルゴリズムの組み合わせを生成する(ステップS7-3)。
制約はパラメータ間での成り立たない条件、または必ず成り立つ条件を指定する。たとえば、図7に示すように2パラメータ間の条件を式として記述し、パラメータ設定情報で設定された値をこの制約式に代入することで成り立たない組み合わせを調べることが可能となり、組み合わせの作成時にパターンを減らすことが可能となる。尚、図7は、図1に示した動作合成検証補助装置における制約ファイルの一例である。
以上で説明した本発明にかかる動作合成検証補助装置は、コンピュータで処理を実行させるプログラムによって実現されている。コンピュータとしては、例えばパーソナルコンピュータやワークステーションなどの汎用的なものが挙げられるが、本発明はこれに限定されるものではない。よって、一例として、プログラムにより本発明を実現する場合の説明を以下で行う。
設定されたレジスタ情報を抽出する抽出手段と、
ハードウェア化時に利用するインターフェース情報を入力する利用インターフェース情報、アルゴリズムの主走査ループ処理及び副走査ループ処理を検出し、記述変換ルールに従い画像処理アルゴリズムの記述変換を行なう記述変換手段と、
を備えた回路設計補助方法によって得られた回路を検証する環境を生成する装置を制御するためのプログラムであって、
コンピュータを、
(A) 設計仕様書と検証手法DBの情報から検証の目的に応じたテストベクタを自動で生成するテストベクタ自動生成装置と検証すべきパラメータ値を決定するための情報が蓄えられている検証手法DBと生成されたDUTと、テストベクタ自動生成手段から生成されたテストベクタと任意のタイミングでDUTへの入出力が行なうことができるバスモデルと入力・期待値データを生成する手段、
(B) バスモデルを制御するテストベンチとそれらの接続を行なうテストベンチトップを含むテスト環境を生成する手段、
として機能させるためのプログラムが挙げられる。
このようなプログラムは、コンピュータに読み取り可能な記憶媒体に記憶されていてもよい。
ここで、記憶媒体としては、例えば、CD-ROM(Compact Disc Read Only Memory)、フレキシブルディスク(FD)、CD-R(CD Recordable)などのコンピュータで読み取り可能な記憶媒体、フラッシュメモリ、RAM(Random Access Memory)、ROM(Read Only Memory)、FeRAM(強誘電体メモリ)等の半導体メモリやHDD(Hard Disc Drive)が挙げられる。
本実施形態によれば、設計仕様書と検証手法DBを用いて、テストベクタを含む検証環境を自動で生成しているので、ヒューマンエラーの混入を防ぎながら検証精度の高い検証環境を提供できる。
5−2 テストベクタ自動生成装置
5−3 テスト環境自動生成装置
5−4、5−13 Cアルゴ
5−5 入力データ
5−6 テストシナリオ
5−7 期待値データ
5−8 パラメータ
5−9、5−11 バスモデル
5−10 DUT
5−12 DUT自動生成装置
5−14 テストベンチトップ
5−15 テストベンチ
10 CPU
11 入出力装置
12 メモリ
13 HDD
15 モニタ
16 ネットワーク
Claims (9)
- 外部から設定可能なパラメータと、画像を走査するための副走査方向への処理ループと、主走査方向への処理ループと、を有する画像処理アルゴリズムについて、前記パラメータがレジスタであることを示す情報を追加する追加手段と、
設定されたレジスタ情報を抽出する抽出手段と、
ハードウェア化時に利用するインターフェース情報を入力する利用インターフェース情報、アルゴリズムの主走査ループ処理及び副走査ループ処理を検出し、記述変換ルールに従い前記画像処理アルゴリズムの記述変換を行なう記述変換手段と、
を備えた回路設計補助方法によって得られた回路を検証する環境を生成する装置であって、
設計仕様書と検証手法DBの情報から検証の目的に応じたテストベクタを自動で生成するテストベクタ自動生成手段と検証すべきパラメータ値を決定するための情報が蓄えられている検証手法DBと生成されたDUTと、テストベクタ自動生成手段から生成されたテストベクタと任意のタイミングでDUTへの入出力が行なうことができるバスモデルと入力・期待値データを生成し、バスモデルを制御するテストベンチとそれらの接続を行なうテストベンチトップを含むテスト環境を生成するテスト環境自動生成手段を備えたことを特徴とする動作合成検証補助装置。 - 前記テストベクタ自動生成手段は、設計仕様書からのパラメータ情報および生成されたDUTのインターフェース情報を用いてテストベクタを生成することを特徴とする請求項1記載の動作合成検証補助装置。
- 設計仕様の情報を元にCアルゴリズムの機能部分に特化したテストベクタとRTL回路でのタイミングを考慮したテストベクタを区別して検証環境を出力することを特徴とする請求項2記載の動作合成検証補助装置。
- Cアルゴリズムの機能部分に特化したテストベクタを生成する場合は、入力されるパラメータ情報は、少なくとも、パラメータ名、パラメータ属性、ビット幅、最小値、最大値の項目を持ち、テストパラメータ自動生成手段は、パラメータ属性、ビット幅、最小値、最大値により、テストパラメータの生成方法を変更することを特徴とする請求項3記載の動作合成検証補助装置。
- テストパラメータ自動生成手段において、RTL回路でのタイミングを考慮したテストベクタを生成する場合は、入力されるパラメータ情報は、少なくとも、パラメータ名、ビット幅、初期値、最小値、最大値の項目を持ち、インターフェース情報はインターフェース信号間のタイミング情報を持ち、テストパラメータ自動生成手段は、パラメータ情報からはパラメータ属性、インターフェース情報からはインターフェース信号間のタイミング情報を用いて、テストパラメータを自動生成することを特徴とする請求項3記載の動作合成検証補助装置。
- パラメータ属性に対するパラメータ値の決定方法をパラメータ情報と、DUTのインターフェースから各インターフェース信号間のタイミング情報と、複数インターフェースがあった場合のインターフェース間のタイミング情報を持つことを特徴とする請求項1記載の動作合成検証補助装置。
- 外部から設定可能なパラメータと、画像を走査するための副走査方向への処理ループと、主走査方向への処理ループと、を有する画像処理アルゴリズムについて、前記パラメータがレジスタであることを示す情報を追加する追加手段と、
設定されたレジスタ情報を抽出する抽出手段と、
ハードウェア化時に利用するインターフェース情報を入力する利用インターフェース情報、アルゴリズムの主走査ループ処理及び副走査ループ処理を検出し、記述変換ルールに従い前記画像処理アルゴリズムの記述変換を行なう記述変換手段と、
を備えた回路設計補助方法によって得られた回路を検証する環境を生成する方法であって、
設計仕様書と検証手法DBの情報から検証の目的に応じたテストベクタを自動で生成するテストベクタ自動生成手段と検証すべきパラメータ値を決定するための情報が蓄えられている検証手法DBと生成されたDUTと、テストベクタ自動生成手段から生成されたテストベクタと任意のタイミングでDUTへの入出力が行なうことができるバスモデルと入力・期待値データを生成し、バスモデルを制御するテストベンチとそれらの接続を行なうテストベンチトップを含むテスト環境を生成することを特徴とする動作合成検証補助方法。 - 外部から設定可能なパラメータと、画像を走査するための副走査方向への処理ループと、主走査方向への処理ループと、を有する画像処理アルゴリズムについて、前記パラメータがレジスタであることを示す情報を追加する追加手段と、
設定されたレジスタ情報を抽出する抽出手段と、
ハードウェア化時に利用するインターフェース情報を入力する利用インターフェース情報、アルゴリズムの主走査ループ処理及び副走査ループ処理を検出し、記述変換ルールに従い前記画像処理アルゴリズムの記述変換を行なう記述変換手段と、
を備えた回路設計補助方法によって得られた回路を検証する環境を生成する装置を制御するためのプログラムであって、
コンピュータを、
設計仕様書と検証手法DBの情報から検証の目的に応じたテストベクタを自動で生成するテストベクタ自動生成手段と検証すべきパラメータ値を決定するための情報が蓄えられている検証手法DBと生成されたDUTと、テストベクタ自動生成手段から生成されたテストベクタと任意のタイミングでDUTへの入出力が行なうことができるバスモデルと入力・期待値データを生成する手段、
バスモデルを制御するテストベンチとそれらの接続を行なうテストベンチトップを含むテスト環境を生成する手段、
として機能させるためのプログラム。 - 請求項8記載のプログラムを記録したことを特徴とする記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009199813A JP5310397B2 (ja) | 2009-08-31 | 2009-08-31 | 動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009199813A JP5310397B2 (ja) | 2009-08-31 | 2009-08-31 | 動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011053764A true JP2011053764A (ja) | 2011-03-17 |
JP5310397B2 JP5310397B2 (ja) | 2013-10-09 |
Family
ID=43942733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009199813A Expired - Fee Related JP5310397B2 (ja) | 2009-08-31 | 2009-08-31 | 動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5310397B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612718A (zh) * | 2020-12-30 | 2021-04-06 | 上海中通吉网络技术有限公司 | 秒杀测试平台 |
CN115452383A (zh) * | 2022-09-20 | 2022-12-09 | 广州汽车集团股份有限公司 | 发动机台架自动测试方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010140139A (ja) * | 2008-12-10 | 2010-06-24 | Ricoh Co Ltd | 回路設計補助方法、プログラム、及び記録媒体 |
-
2009
- 2009-08-31 JP JP2009199813A patent/JP5310397B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010140139A (ja) * | 2008-12-10 | 2010-06-24 | Ricoh Co Ltd | 回路設計補助方法、プログラム、及び記録媒体 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612718A (zh) * | 2020-12-30 | 2021-04-06 | 上海中通吉网络技术有限公司 | 秒杀测试平台 |
CN115452383A (zh) * | 2022-09-20 | 2022-12-09 | 广州汽车集团股份有限公司 | 发动机台架自动测试方法、装置、电子设备及存储介质 |
CN115452383B (zh) * | 2022-09-20 | 2024-01-23 | 广州汽车集团股份有限公司 | 发动机台架自动测试方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP5310397B2 (ja) | 2013-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8161440B2 (en) | Highly specialized scenarios in random test generation | |
JP2006244073A (ja) | 半導体設計装置 | |
US8578309B2 (en) | Format conversion from value change dump (VCD) to universal verification methodology (UVM) | |
JP4492803B2 (ja) | 動作合成装置及びプログラム | |
US8762907B2 (en) | Hierarchical equivalence checking and efficient handling of equivalence checks when engineering change orders are in an unsharable register transfer level | |
JP2000207440A (ja) | 半導体集積回路の設計検証装置、方法及び記憶媒体 | |
JP2003141206A (ja) | Lsiテスト・データのタイミング検証方法およびlsiテスト・データのタイミング検証プログラム | |
JP5310397B2 (ja) | 動作合成検証補助装置、動作合成検証補助方法、プログラム、及び記録媒体 | |
CN117350205A (zh) | 芯片的验证方法、装置、电子设备和存储介质 | |
JP6787045B2 (ja) | 検証支援プログラム、検証支援方法、および情報処理装置 | |
JP7045921B2 (ja) | 半導体lsi設計装置および設計方法 | |
JP2009517759A (ja) | Ic設計方法およびic設計ツール | |
JP2010267209A (ja) | 検証支援プログラム、検証支援装置および検証支援方法 | |
US7065724B2 (en) | Method and apparatus for generating and verifying libraries for ATPG tool | |
US7962796B2 (en) | State testing device and methods thereof | |
US20070266361A1 (en) | Logic verification method, logic verification apparatus and recording medium | |
US7275223B2 (en) | Facilitating high-level validation of integrated circuits in parallel with development of blocks in a hierarchical design approach | |
JP2006268165A (ja) | 集積回路のタイミング解析装置、集積回路のタイミング最適化装置、集積回路のタイミング解析方法、集積回路のタイミング最適化方法、集積回路基板の製造方法、制御プログラムおよび可読記録媒体 | |
JPWO2012049816A1 (ja) | モデル検査装置、方法及びプログラム | |
JP2021117666A (ja) | コード検査ツール、コード検査方法 | |
JP2011034517A (ja) | 等価性検証装置、そのデータ処理方法、およびプログラム | |
US9047428B2 (en) | Determining method, computer product, and determining apparatus | |
US9183331B1 (en) | Formalizing IP driver interface | |
US9710581B1 (en) | VIP assisted method and apparatus to enable SOC integration and software development | |
JP7274063B2 (ja) | テストケース生成装置、テストケース生成方法及びテストケース生成プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120612 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130306 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130312 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130401 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130430 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130509 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130604 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130617 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5310397 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |