JP5232767B2 - 検証装置および検証方法 - Google Patents

検証装置および検証方法 Download PDF

Info

Publication number
JP5232767B2
JP5232767B2 JP2009299137A JP2009299137A JP5232767B2 JP 5232767 B2 JP5232767 B2 JP 5232767B2 JP 2009299137 A JP2009299137 A JP 2009299137A JP 2009299137 A JP2009299137 A JP 2009299137A JP 5232767 B2 JP5232767 B2 JP 5232767B2
Authority
JP
Japan
Prior art keywords
circuit
coverage
program
competing
verification
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.)
Active
Application number
JP2009299137A
Other languages
English (en)
Other versions
JP2011138428A (ja
Inventor
哲也 中嶋
正樹 澤幡
左妃代 早瀬
久博 近藤
克修 名取
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009299137A priority Critical patent/JP5232767B2/ja
Publication of JP2011138428A publication Critical patent/JP2011138428A/ja
Application granted granted Critical
Publication of JP5232767B2 publication Critical patent/JP5232767B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、検証装置および検証方法に係り、特に、ハードウェア記述言語でプログラミングされた論理回路の検証装置および検証方法に関する。
ソフトウェアプログラムの検証完了基準としては、C0(命令カバレッジ)、C1(分岐カバレッジ)、C2(経路カバレッジ)がある。それらは元々ソフトウェアプログラムの検証完了基準として考案されたものである。検証完了基準は、作成されたプログラム毎の構文構造から一意的に決まるカバレッジポイント群が検証時に活性化されたか否か、の百分率として測られるものである。非特許文献1、非特許文献2は、カバレッジの簡単な解説を記載している。
一方、ハードウェア設計に於いても、論理合成技術の実用化に伴い、ディジタル回路をハードウェア記述言語(HDL:Hardware Description Language)プログラミングによってソフトウェアライクに設計するに至っている。これに伴って、論理シミュレーション等の、ハードウェア設計に於ける検証でも、C0、C1、C2が検証完了基準として用いられるようになっている。
玉井 哲雄、外2名、「ソフトウェアのテスト技法」、共立出版、1988年 坂本 直史、外2名、"組込みソフトウェア管理者・技術者向け用語集"、[online]、第3.1版、2008年4月17日改訂、カバレッジ、NPO法人 組込みソフトウェア管理者・技術者育成研究会、[平成21年11月11日検索]、インターネット<http://www.sessame.jp>
しかし、元々ソフトウェアの検証完了指標として考案されたC0、C1、C2だけでは、論理シミュレーション等の、ハードウェア設計に於ける検証の完了指標とは成り得ない。これは、複数の部品が同時に動作し合う特徴を有するハードウェアをハードウェア記述言語(HDL)でプログラミングしたハードウェアプログラム(回路プログラム、とも言う)の論理シミュレーションの検証完了指標として、同時動作の特徴を有さないソフトウェアプログラムの検証指標だけでは甚だ不十分だからである。したがって、C0、C1、C2を以て検証完了指標とするのは非常に危険である。本発明が解決しようとする課題は、ハードウェアならではの同時動作の特徴を考慮に入れたハードウェアプログラムの論理シミュレーションの検証方法とその検証装置の提供である。
ハードウェアならではの同時動作によって発生し得る競合状態を想定した回路構成、具体的には、同時にリクエストが到着することを想定した優先付けが成されている回路構成をハードウェアプログラムから意味解釈によってカバレッジポイント群として抽出する。論理シミュレーションによって、カバレッジポイント群が、活性化されたか否か、の百分率として測るCX(競合カバレッジ)を創出した。本発明は、同時に、CXカバレッジポイント群の自動抽出手段、および、上記CXカバレッジ値の算出手段を提供する。
上述した課題は、ハードウェア記述言語でプログラミングされた論理回路の検証装置において、回路プログラム受付部と、回路プログラム内の競合状態想定回路構成、及びその競合条件を、競合カバレッジポイントとして検出する競合カバレッジポイント抽出部と、回路プログラムをテストプログラムによってテストするシミュレーション部と、競合カバレッジポイントでの競合条件の同時発生を監視し、集計することにより、競合カバレッジ率を算出する競合カバレッジ率算出部と、競合カバレッジ率表示部とからなる検証装置により、達成できる。
また、ハードウェア記述言語でプログラミングされた論理回路の回路プログラムを受け付けるステップと、回路プログラム内の競合状態想定回路構成、及びその競合条件を競合カバレッジポイントとして抽出するステップと、回路プログラムをテストプログラムによってテストするためにシミュレーションするステップと、競合カバレッジポイントでの競合条件の同時発生を監視し、集計することにより、競合カバレッジ率を算出するステップと、競合カバレッジ率を表示するステップとからなる検証方法により、達成できる。
ハードウェア設計に於ける論理シミュレーション等の検証完了基準として、ハードウェアならではの特徴である同時動作性が考慮され、しかも自動的にカバレッジポイント群とカバレッジ値が得られる。すなわち、客観的かつ実用的な完了基準が得られる。これによって、LSI等のハードウェア開発に於ける論理シミュレーション等の検証品質を測り、検証戦略にフィードバックする。この結果、検証を不足なく、しかも無駄なく、効率的に行なうことが可能となる。
競合状態発生を想定した回路の構成を説明するブロック図である。 回路をシーケンシャルに表現したフローチャートである。 ハードウェアプログラミングリストである。 ハードウェア検証装置のハードウェアブロック図である。 ハードウェア検証装置の処理を説明するフローチャートである。 ハードウェア検証装置の出力であるカバレッジ集計結果を説明する図である。 CXカバレッジポイント抽出の詳細を説明する図である。 回路プログラムを説明する図である。 ターゲットパターンを説明する図である。 パターンマッチング結果を説明する図である。 パターンマッチング判定処理の詳細を説明する図である。 ターゲットパターンを説明する図である。 ハードウェア検証装置の処理を説明するフローチャートである。 ブール式化した回路記述を説明する図である。 ターゲットブール式パターンを説明する図である。 パターンマッチング結果を説明する図である。 パターンマッチング判定処理の詳細を説明する図である。 ターゲットパターンを説明する図である。 回路データベースの視覚化表現である。 ロジックコーンを説明する図である。
以下、本発明の実施の形態について、実施例を用い図面を参照しながら詳細に説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
全搭載部品がコンカレント動作するハードウェア(論理回路)に於いて、競合状態の発生を回避する回路構成、および競合状態が発生した場合の処理の優先順を持たせた回路構成は、ハードウェア中に頻出する。
図1を参照して、競合状態が発生した場合の処理の優先順を持たせた回路100の構成を説明する。図1の回路100において、ハードウェア(論理回路)中の機能Faと機能Fbは、リソースRxを時分割に共有して使用する。一方、機能Fcは、リソースRyを占有して使用する。図1の→印は、機能Fがリソースを使用するためのリクエストを示す。☆印は、リクエストが同時到着した場合の優先順が高いことを表している。リクエストssは、セットのリクエストである。リクエストsrは、リセットのリクエストである。
リクエストssとリクエストsrの同時到着時の優先順を明示的に指定している理由は、次のいずれかである。すなわち、(1)リソースRx、またはリソースRxを含む機能Fcが同時に複数のリクエストの処理ができない。(2)その他の制約のためである。いずれも、何らかの理由により設計者は意図を持って、この回路構成にしている筈である。
この設計者の意図、すなわち”同時動作要求時の優先順位”に着目して、意図通りの回路構成になっているか否かのテストを実施したか?確認したか?をカバレッジポイントとしたのが、今回独自に創出したカバレッジ指標、競合カバレッジである。すなわち、CXは、回路の検証時点で、競合状態を再現させ、確認したか否かを検証品質の指標とする。CXとしては、優先順位付きの同期セット・リセット・フリップフロップ、カウンタ系回路(ロードとクリアの優先順位等)、FSM(Finite State Machine)系回路(遷移先の優先順位等)等、が考えられる。
ハードウェア記述言語(HDL)プログラミングにおいては、本来、全搭載部品がコンカレントに動作するものをシーケンシャルに表現してプログラミングする。図2は、図1のハードウェアをシーケンシャルに表現したフローチャートである。また、図3は、実際のハードウェアプログラミングリストである。
図2において、回路100は、リクエストssを送信するか判定する(S11)。YESのとき、回路100は、リソースRxでセット処理を実行する(S12)。回路100は、リクエストpを送信するか判定する(S13)。YESのとき、回路100は、リソースRyで何らかの処理(Ry(p))を実行して(S14)、終了する。
ステップ11(S11)でNOのとき、回路100は、リクエストsrを送信するか判定する(S16)。YESのとき、回路100は、リソースRxでリセット処理を実行する(S17)。ステップ16(S16)でNOのとき、回路100は、ステップ13(S13)に遷移する。ステップ13(S13)でNOのとき、回路100は、終了する。
図3において、同期セット・リセット付きフリップフロップのHDLのプログラミングリストは、1:〜13:の行番号と制御文および実行文とから構成される。
HDLは、図2および図3に示したように、ハードウェア動作をソフトウェア動作に置き換えて表現するので、ソフトウェア用の検証指標C0、C1、C2を用いることとなった訳である。しかし、それと同時に、本来のハードウェアの検証において留意すべき同時動作の考慮が抜け落ちてしまった。
CXは、図1ではリクエストssとリクエストsrの同時発生によるリソースRx使用要求の競合を、図2ではステップ12(S12)を実行する際の、その裏で成立しているステップ17(S17)の実際には実行されない実行要求の競合を、さらに図3では行番号6と行番号8との競合を、カバレッジポイントとしたカバレッジ指標である。
図4を参照して、ハードウェア検証装置200を説明する。図4において、ハードウェア検証装置200は、内部バス270で相互接続されたCPU210、メインメモリ220、記憶装置230、入力装置240、出力装置250、LANインタフェース部260で構成されている。ハードウェア検証装置200は、メモリ220上のプログラムをCPU210が実行することにより、ハードウェアの論理シミュレーションを実行する。入力装置240は、回路プログラムおよびテストプログラムを読み込む。出力装置250は、カバレッジ出力結果を表示する。記憶装置230は、回路プログラム、テストプログラム、ターゲットの記述パターン、カバレッジ出力結果等を一次記憶する。LANインタフェース部260は、ハードウェア検証装置200を図示しないLANに接続する。
図5を参照して、ハードウェア検証装置200の処理を説明する。ハードウェア検証装置200は、ハードウェア記述言語(HDL)による回路プログラムを受け付ける(S10)。ハードウェア検証装置200は、カバレッジポイントを抽出する(S20)。ステップ20は、従来と同様にC0、C1、C2のカバレッジポイントを抽出する(S21〜S23)と共にCXのカバレッジポイントを抽出する(S24)。ハードウェア検証装置200は、テストプログラムを受け付ける(S30)。ハードウェア検証装置200は、テストプログラムを実行して、シミュレーションを実施する(S40)。ハードウェア検証装置200は、結果として各カバレッジ率を算出する(S50)。ハードウェア検証装置200は、最後に各カバレッジ率を表示する(S60)。
図6を参照して、ハードウェア検証装置200の出力であるカバレッジ集計結果300を説明する。図6において、カバレッジ出力結果300は、blk0〜blkNのブロック別310と、全体320とに分けられて、C0、C1、C2、CXのカバレッジ率とその生データを表示する。
図7を参照して、図5のCXカバレッジポイント抽出(S24)の詳細を説明する。ハードウェア検証装置200は、CXカバレッジポイント抽出において、回路プログラムとターゲット記述パターン(即ち、CXカバレッジポイントの記述パターン)を受け付けて、パターンマッチングを行なう。ここで、パターンマッチングは、回路プログラムからターゲット記述パターンにマッチした個所を検出する処理である。ハードウェア検証装置200は、パターンマッチング結果を出力する。
図8を参照して、図7の回路プログラムを説明する。図8の回路プログラムは、図3の回路プログラムとほぼ同じであり、”Rx<=’1’;”と”Rx<=’0’”;に競合がある。
図9を参照して、ターゲットパターンを説明する。図9において、ターゲットパターンは、2種類ある。ターゲットパターンは、最初がセット優先の同期セット・リセットのフリップフロップ(以下FFと記載)、2番目がリセット優先の同期セット・リセットのFFである。図9において、○、△、□の記載は、変数であり、このパターンをパターンマッチングする。
図10を参照して、パターンマッチング結果を説明する。図10において、パターンマッチング結果は、ターゲットパターンごとに出力され、セット優先の同期セット・リセットのFFでは、○=Rx、△=sr、□=ssを検出している。これは、図8の競合ポイント(競合状態想定回路(○=Rx)と、その競合条件(△=sr、□=ss))である。一方、リセット優先の同期セット・リセットのFFでは、ヒットなしである。
図11を参照して、図7を参照して説明したパターンマッチング判定処理の詳細を説明する。図11において、ハードウェア検証装置200は、回路プログラムと予め登録されたターゲットパターンと比較し、一致するパターンがあるか判定する。一致するとき、ハードウェア検証装置200は、競合パターン別に、競合ポイントごとに、リソース名、競合条件を判定し検出する。一致するパターンの有無判定で不一致のとき、ハードウェア検証装置200は、そのまま終了する。
図12を参照して、ハードウェア検証装置200に予め登録されたターゲットパターンを説明する。図12において、ターゲット記述パターンは、(A)がセット優先の同期セット・リセットFF、(B)がリセット優先の同期セット・リセットのFFである。しかし、ターゲットパターンの各々には多くのバリエーションがある。基本的に各パターンには、数多くの記述バリエーションが考え得るからである。(A)(B)パターンに関して、各々図12の2つのバリエーションのみを示した。指定したパターンとバリエーションのみがパターンマッチ対象となるので、セット優先の同期セット・リセットFFを全て抽出するためにはバリエーションを全て登録する必要がある。しかし、同じ結果を得るプログラミング記法は無数にあり、バリエーションを全て登録するのは、困難である。
バリエーションを全て列挙し尽くすことに終りがないのみならず、バリエーションをライブラリとして登録するだけで、動作するように抽出プログラムを工夫する必要がある。また、バリエーションの数をnとすると、処理時間は、nのオーダO(n)となる(nが2nとなると、処理時間も2倍となる)ことにも留意が必要である。
図13を参照して、図5のCXカバレッジポイント抽出(S24)の改良された詳細を説明する。ハードウェア検証装置200は、図8を用いて説明した回路プログラムを受け付け、ブール式に変換する。ハードウェア検証装置200は、ターゲットブール式パターンを受け付け、ブール式に変換された回路プログラムとのパターンマッチング判定を実施する。ハードウェア検証装置200は、パターンマッチング結果を出力する。
図14を参照して、ブール化した回路記述を説明する。図14は、図8を用いて説明した回路プログラムをブール式に変換したものである。回路プログラムのブール式表現への変換は、クワイン・マクラスキーの方法、または、カルノー図表による方法で行なう。
図15を参照して、ターゲットブール式パターンを説明する。図15は、セット優先のセット・リセット競合FFのブール式パターンと、リセット優先のセット・リセット競合FFのブール式パターンである。図15において、:=の左辺のQは、次のQ出力(Qn)である。:=の右辺のQは、現在のQ出力(Qp)である。また、!はnot、&はand、|はorである。また、SSはセット、SRはリセットである。
図16を参照して、ターゲットパターンにマッチしたブール式を説明する。図16において、セット優先のセット・リセット競合FFのブール式パターンでは、Q=Rx、SR=sr、SS=srが検出されている。一方、リセット優先のセット・リセット競合FFのブール式パターンでは、検出がない。
図17を参照して、図13で示したCXカバレッジポイント抽出フロー中の、パターンマッチング判定(真理値ベースのパターンマッチング)処理の詳細を説明する。図17において、ハードウェア検証装置200は、ブール式に変換された回路プログラムと予め登録されたターゲットブール式パターンとを比較し、一致するパターンがあるか判定する。一致するとき、ハードウェア検証装置200は、競合パターン別に、競合ポイントごとに、リソース名、競合条件を判定し検出する。一致するパターンの有無判定で不一致のとき、ハードウェア検証装置200は、そのまま終了する。
図18を参照して、ターゲットブール式パターンを説明する。図18において、ターゲットブール式パターンは、(A)セット優先の同期セット・リセットFF、(B)リセット優先の同期セット・リセットのFFである。
ターゲットブール式パターンは、表面上の書き方の違いによるバリエーションは数多く存在する。しかし、どのバリエーションのものも真理値表化すれば全く同一のものに帰着される。したがって、1つのパターンに付き1つのバリエーションのみ指定すれば、図11に於いて1つのパターンに付き考え得る全てのバリエーションを指定したことと等価となる。よって、考え得るバリエーションを全て列挙すると云う終りのない作業をせずに、ブール式パターン1つで全てのバリエーションを一網打尽にすることができる。また、処理時間もバリエーション数nのオーダO(n)となることもない。
以下、回路プログラム(RTL:Register Transfer Level)がブール式に変換できる理由を説明する。RTLをコンパイルすることにより、回路データベースを得る。回路データベースを視覚化して表現すれば、図19となる。図19は、いわゆる論理回路図に他ならない。
よって、ブール式変換の処理内容を図19を用いて説明する。論理回路は、ロジックコーンと呼ばれる単位に分解して考えることができる。ロジックコーンとは、図19中の点線の三角形で表された、頂点がフリップフロップ(FF)のQ出力またはプライマリアウトプット(PO)で、底辺がプリライマリインプット(PI)または、他のロジックコーン(厳密には、自分自身も含めたロジックコーン)の頂点からなる三角形である。論理回路は、各ロジックコーンとその接続を指定することにより一意に表現することができる。
図20に典型的なロジックコーンを示す。図20において、底辺側入力にQがあるのは、自己回帰のルートと表現している。ロジックコーンの内側にあるFFのD入力を頂点とする三角形部の回路は、純粋に組合せ論理だけから成るので、この部分をブール関数f(Q,A,B,C,D)で表わすと、図20が以下の式で表現可能である。
Qn:=f(Qp,A,B,C,D),clock_signal,clock_edge,async_signal,async_value…(式1)
ここで、clock_signalは、クロック信号を表わす。clock_edgeは、pos(立ち上り)、neg(立下り)の値を取り、クロックの立ち上り、立ち下りの何れで動作するかを表わす。async_signalは、非同期動作信号名を表す。async_valueは、0(非同期リセット)、1(非同期セット)、任意の信号名(非同期セット・リセット等)の値を取り、非同期動作を表わす。
回路図データベースから作成可能な内側の三角形に対応する真理値表に、クワイン・マクラスキーの方法を適用することにより、f(Qp,A,B,C,D)が具体的な式として算出できる。また、clock_signal, clock_edge, async_signal, async_valueは、回路図データベースから得ることができる。
図19の論理回路も、ロジックコーンとその接続を指定することにより一意に表現することができるので、定式化できる。
図15に記載したターゲットブール式と等価な真理値表を説明する。セット優先のセット・リセット競合FFは、表1と等価である。また、リセット優先のセット・リセット競合FFは、表2と等価である。
表1 セット優先の競合FF 表2 リセット優先の競合FF
−−−−−−−−−−−−− −−−−−−−−−−−−−
入力 | 出力 入力 | 出力
SS SR | Qn SS SR | Qn
0 0 | Qp 0 0 | Qp
0 1 | 0 0 1 | 0
1 0 | 1 1 0 | 1
1 1 | 1 1 1 | 0
−−−−−−−−−−−−− −−−−−−−−−−−−−

フリップフロップの真理値表から、セット優先/リセット優先のセット・リセット競合FFのいずれかも判定することができる。入力リテラルがa、b、c、dで、出力の現状態をQp、次状態をQnとして、表3の真理値表を持つFFを考える。
表3 FFの真理値表 表4 関数置換した真理値表
−−−−−−−−−−−−−−−−− −−−−−−−−−−−−−−−
入力 | 出力 入力 | 出力
a b c d | Qn a&b c|d | Qn
−−−−−−−−−−−−−−−−− −−−−−−−−−−−−−−−
0 0 0 0 | Qp 0 0 | Qp
0 0 0 1 | 0 0 1 | 0
0 0 1 0 | 0 1 0 | 1
0 0 1 1 | 0 1 1 | 1
0 1 0 0 | Qp −−−−−−−−−−−−−−−
0 1 0 1 | 0
0 1 1 0 | 0
0 1 1 1 | 0
1 0 0 0 | Qp
1 0 0 1 | 0
1 0 1 0 | 0
1 0 1 1 | 0
1 1 0 0 | 1
1 1 0 1 | 1
1 1 1 0 | 1
1 1 1 1 | 1
−−−−−−−−−−−−−−−−−

真理値表3に基づいて、入力を関数で置換すると表4を得る。表4と表1の対比から、このFFは、a&b(a and b)をセットリクエスト、c|d(c or d)をリセットリクエストとするセット優先のセット・リセット競合FFであることが分かる。
100…回路、200…ハードウェア検証装置、210…CPU、220…メインメモリ、230…記憶装置、240…入力装置、250…出力装置、260…LANインタフェース部、270…内部バス。

Claims (3)

  1. ハードウェア記述言語でプログラミングされた論理回路の検証装置において、
    回路プログラムを受け付ける回路プログラム受付部と、前記回路プログラム内の競合状態想定回路構成、及びその競合条件を、競合カバレッジポイントとして検出する競合カバレッジポイント抽出部と、前記回路プログラムをテストプログラムによってテストするシミュレーション部と、競合カバレッジポイントでの競合条件の同時発生を監視し、集計することにより、競合カバレッジ率を算出する競合カバレッジ率算出部と、前記競合カバッレッジ率を表示する競合カバレッジ率表示部とからなることを特徴とする検証装置。
  2. 請求項1に記載の検証装置であって、
    前記回路プログラム受付部は、前記回路プログラムをブール式に変換し、
    前記競合カバッレッジポイント抽出部は、ブール式に変換されたターゲットパターンと前記ブール式とのパターンマッチングにより、前記競合カバッレッジポイントを検出することを特徴とする検証装置。
  3. ハードウェア記述言語でプログラミングされた論理回路の回路プログラムを受け付けるステップと、前記回路プログラム内の競合状態想定回路構成、及びその競合条件を競合カバレッジポイントとして抽出するステップと、前記回路プログラムをテストプログラムによってテストするためにシミュレーションするステップと、競合カバレッジポイントでの競合条件の同時発生を監視し、集計することにより、競合カバレッジ率を算出するステップと、競合カバレッジ率を表示するステップとからなる検証方法。
JP2009299137A 2009-12-29 2009-12-29 検証装置および検証方法 Active JP5232767B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009299137A JP5232767B2 (ja) 2009-12-29 2009-12-29 検証装置および検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009299137A JP5232767B2 (ja) 2009-12-29 2009-12-29 検証装置および検証方法

Publications (2)

Publication Number Publication Date
JP2011138428A JP2011138428A (ja) 2011-07-14
JP5232767B2 true JP5232767B2 (ja) 2013-07-10

Family

ID=44349770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009299137A Active JP5232767B2 (ja) 2009-12-29 2009-12-29 検証装置および検証方法

Country Status (1)

Country Link
JP (1) JP5232767B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5644899B1 (ja) 2013-06-14 2014-12-24 日本電気株式会社 回路検証装置、回路検証方法および回路検証プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0512366A (ja) * 1991-07-02 1993-01-22 Hitachi Ltd 論理シミユレーシヨンにおける競合動作チエツク方式
JP2009163636A (ja) * 2008-01-09 2009-07-23 Toyota Motor Corp 一致性検査方法、一致性検査装置およびプログラム

Also Published As

Publication number Publication date
JP2011138428A (ja) 2011-07-14

Similar Documents

Publication Publication Date Title
US8856706B2 (en) System and method for metastability verification of circuits of an integrated circuit
JP2000148808A (ja) スケジュ―リングされた動作記述に対するストラクチュラルrtlの正当性検証方法
US9569575B2 (en) Digital circuit design method and associated computer program product
JP5016119B2 (ja) 自然言語アサーションプロセッサ
JP2010033208A (ja) 回路設計支援装置、回路設計支援プログラム、回路設計支援方法
US8522182B2 (en) Generation of an end point report for a timing simulation of an integrated circuit
CN113901745A (zh) 芯片测试方法、装置、电子设备及计算机可读存储介质
CN106708730A (zh) 一种针对嵌入式实时操作系统形式化验证方法
JP2010003008A (ja) 検出プログラム、検出装置および検出方法
JP4147842B2 (ja) 論理検証システム及び方法、論理コーン抽出装置及び方法、論理検証及び論理コーン抽出プログラム
JP5287092B2 (ja) 検証支援プログラム、検証支援装置および検証支援方法
CN113343629B (zh) 集成电路验证方法、代码生成方法、系统、设备和介质
US9672317B2 (en) Quality of results system
JP5232767B2 (ja) 検証装置および検証方法
US10430535B2 (en) Verification support program medium, verification support method, and information processing device for verification of a circuit
JP4736822B2 (ja) 半導体集積回路の設計支援装置、設計支援方法および設計支援プログラム
Schmidt et al. Automatic generation of thread communication graphs from SystemC source code
JP2009230677A (ja) プロパティ生成システムおよびプロパティ検証システム
JP6352607B2 (ja) アサーション生成装置及び方法並びにプロセッサ検証装置及び方法
JP2011138247A (ja) プログラム影響範囲検証方法及び装置
CN102788950B (zh) 一种周期精确转换器及其集成电路验证方法和系统
JP2010244300A (ja) テストパターン作成手法、シミュレーション方法、情報処理装置およびシミュレーション装置
US20240046014A1 (en) Process to relay knowledge and guide synthesis alongside early detection of logic optimizations
Plassan et al. Improving the efficiency of formal verification: the case of clock-domain crossings
US8745553B2 (en) Method and apparatus for applying post graphic data system stream enhancements

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121128

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: 20130305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130325

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5232767

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150