図面 (/)

技術 設計検証プログラム、設計検証方法および設計検証装置

出願人 富士通セミコンダクター株式会社
発明者 近藤直広
出願日 2008年2月20日 (12年10ヶ月経過) 出願番号 2008-039363
公開日 2009年9月3日 (11年3ヶ月経過) 公開番号 2009-199274
状態 特許登録済
技術分野 CAD
主要キーワード 実機動作 モデル回路 定義箇所 モジュール回路 論理圧縮 モデル記述 テストベンチ コメントアウト
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2009年9月3日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

ネットリスト検証でRTL記述と同等のアサーションチェックを可能とする。

解決手段

コンピュータ1を、作成処理手段2、関連づけ処理手段3、として機能させる。作成処理手段2は、作成されたRTLのRTL記述4からレジスタに関する記述を削除した組み合わせ回路モニタモニタ記述を作成する。関連づけ処理手段3は、RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名をモニタ記述の入力信号の信号名に関連づける。

概要

背景

LSI(Large Scale Integration)の回路設計では、一般的にハードウェア記述言語HDL:Hardware Description Language)を用いて、論理回路を設計する技術が知られている(例えば、特許文献1、2参照)。

図36は、設計検証フローを示すフローチャートである。
論理検証においては、まず、作成したRTL記述(Resister Transfer Level)のシミュレーションによる論理検証を行い回路論理機能動作を確認する(ステップS91)。

論理検証後、論理合成を行いゲートレベルネットリスト(Netlist)記述を生成する(ステップS92)。
ネットリスト記述とRTL記述のFormal検証(論理等価検証)を行い、論理が等価であることを確認する(ステップS93)。

論理等価の確認ができたら、レイアウトを行い、タイミング調整テスト回路追加等を行った実配線のネットリスト記述および遅延情報ファイル(SDF:Standard Delay Format)を生成する(ステップS94)。

実配線のネットリスト記述および遅延情報ファイルを用いて、ゲートレベルのダイナミック・シミュレーションによる論理検証、タイミング検証を行い、回路の論理機能動作の確認およびタイミンスペックの確認を行う(ステップS95)。
特開2005−202701号公報
特開平9−311882号公報

概要

ネットリスト検証でRTL記述と同等のアサーションチェックを可能とする。コンピュータ1を、作成処理手段2、関連づけ処理手段3、として機能させる。作成処理手段2は、作成されたRTLのRTL記述4からレジスタに関する記述を削除した組み合わせ回路モニタモニタ記述を作成する。関連づけ処理手段3は、RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名をモニタ記述の入力信号の信号名に関連づける。

目的

また誤動作外部端子まで伝搬しない場合、誤動作を発見することができないという問題がある。
本発明はこのような点に鑑みてなされたものであり、ネットリスト検証でRTL記述と同等のアサーションチェックを可能とする設計検証プログラム設計検証方法および設計検証装置を提供することを目的とする。

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ゲートレベルネットリストを用いた設計検証を行う設計検証プログラムにおいて、コンピュータを、作成されたRTLRTL記述からレジスタに関する記述を削除した組み合わせ回路モニタモニタ記述を作成する作成処理手段、前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける関連づけ処理手段、として機能させることを特徴とする設計検証プログラム。

請求項2

前記作成処理手段は、前記RTL記述のモジュール名を変更し、前記RTL記述のレジスタに関する記述を全て削除し、削除したレジスタが出力する信号の信号名を、前記RTL回路外部からの入力信号の信号名とした前記モニタ記述を作成することを特徴とする請求項1記載の設計検証プログラム。

請求項3

前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述またはテストベンチ記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記入力信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする請求項2記載の設計検証プログラム。

請求項4

前記作成処理手段は、前記RTL記述のモジュール名および入出力信号名の定義文を削除し、前記RTL記述のレジスタに関する記述を全て削除し、前記ネットリストの内部信号または出力信号に対応する信号を出力する組み合わせ回路に関する記述を削除した前記モニタ記述を作成することを特徴とする請求項1記載の設計検証プログラム。

請求項5

前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述またはテストベンチ記述またはアサーションチェッカモデル記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記モニタの削除された前記レジスタが出力していた信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする請求項4記載の設計検証プログラム。

請求項6

ゲートレベルのネットリストを用いた設計検証を行う設計検証方法において、作成処理手段が、作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成し、関連づけ処理手段が、前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける、ことを特徴とする設計検証方法。

請求項7

ゲートレベルのネットリストを用いた設計検証を行う設計検証装置において、作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成する作成処理部と、前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける関連づけ処理部と、を有することを特徴とする設計検証装置。

技術分野

0001

本発明は設計検証プログラム設計検証方法および設計検証装置に関し、特に、ゲートレベルネットリスト記述を用いた設計検証プログラム、設計検証方法および設計検証装置に関する。

背景技術

0002

LSI(Large Scale Integration)の回路設計では、一般的にハードウェア記述言語HDL:Hardware Description Language)を用いて、論理回路を設計する技術が知られている(例えば、特許文献1、2参照)。

0003

図36は、設計検証フローを示すフローチャートである。
論理検証においては、まず、作成したRTL記述(Resister Transfer Level)のシミュレーションによる論理検証を行い回路論理機能動作を確認する(ステップS91)。

0004

論理検証後、論理合成を行いゲートレベルのネットリスト(Netlist)記述を生成する(ステップS92)。
ネットリスト記述とRTL記述のFormal検証(論理等価検証)を行い、論理が等価であることを確認する(ステップS93)。

0005

論理等価の確認ができたら、レイアウトを行い、タイミング調整テスト回路追加等を行った実配線のネットリスト記述および遅延情報ファイル(SDF:Standard Delay Format)を生成する(ステップS94)。

0006

実配線のネットリスト記述および遅延情報ファイルを用いて、ゲートレベルのダイナミック・シミュレーションによる論理検証、タイミング検証を行い、回路の論理機能動作の確認およびタイミンスペックの確認を行う(ステップS95)。
特開2005−202701号公報
特開平9−311882号公報

発明が解決しようとする課題

0007

RTL記述の検証の際には、PSL(Property Specification Language)やSVA(SystemVerilog Assertion)等のアサーション言語のアサーションチェッカを用いて内部信号アサーションチェックプロパティチェック)を行っている。詳しくは、ある条件が成立していなければならない部分にアサーションチェッカを用いてチェック用のコードを入れ、その条件に違反している場合はエラーを出力することでプログラムをチェックしている。

0008

ゲートレベルのダイナミック・シミュレーションによる論理検証においては、RTL記述検証では発見できない非同期回路による誤動作やSTA(Static Timing Analyzer)でのタイミングケア漏れによる誤動作等を発見するための検証を行うが、現状のネットリスト検証ではRTL記述の検証で使用したアサーションチェッカをそのまま使うことができない。

0009

これは論理合成後のネットリスト記述が、RTL記述と論理が等価であっても異なる回路構成になってしまったり、RTL記述とは異なる信号名に変わってしまったりするためである。

0010

図37は、RTL記述により実現されるモジュール回路の一例を示す図である。
モジュール回路90は、入力側からレジスタ(D−FF回路)F91と、AND回路AND91と、レジスタF92と、AND回路AND92と、AND回路AND93とを有している。

0011

レジスタF91には信号名「DIN」の信号が入力され、信号名「CLK」の信号に同期して動作する。
AND回路AND91の入力には、それぞれ信号名「XMSK」の信号およびレジスタF91が出力する信号が入力される。

0012

レジスタF92には、AND回路AND91が出力する信号名「a」の信号が入力され、信号名「CLK」の信号に同期して動作する。
AND回路AND92の入力には、信号名「XMSK」の信号およびレジスタF92が出力する信号が入力される。

0013

AND回路AND93の入力には、信号名「a」の信号の論理を反転させた信号およびAND回路AND92が出力する信号名「b」の信号が入力される。
ここで、アサーションチェッカ91は、信号名「CLK」の信号に同期して動作し、信号名「a」の信号および信号名「b」の信号をチェックする。

0014

図38は、ネットリスト記述により実現されるネットリスト回路の一例を示す図である。
ネットリスト回路90aは、図37に示すモジュール回路90を実現するRTL記述を論理合成して得られたネットリスト記述により実現される回路である。

0015

ネットリスト回路90aでは、AND回路AND92の論理とAND回路AND93の論理とがまとめられてAND回路AND94になっており、信号名「a」の信号は、信号名「n0」の信号に変わってしまっている。また、信号名「b」の信号は、論理圧縮されて対応する信号が存在しなくなっている。このため、アサーションチェッカ91は、対象となる信号が存在せず、チェックすることができない(動作しない)。

0016

ここで、アサーションチェッカ91をネットリスト回路90a用に作り直すことも考えられるが、論理合成の度に異なる回路構成に変わる可能性があり、アサーションチェッカ91の構成を一義的に定めることはできず、実現させるのは難しい。

0017

このように、論理合成によって回路構成が変化した場合や、RTL記述とは異なる信号名に変わってしまった場合、アサーションチェックを行うことができず、誤動作が発生したとき、どこの内部信号で誤動作が発生しているのかを解析するのに非常に時間がかかるという問題がある。

0018

また誤動作が外部端子まで伝搬しない場合、誤動作を発見することができないという問題がある。
本発明はこのような点に鑑みてなされたものであり、ネットリスト検証でRTL記述と同等のアサーションチェックを可能とする設計検証プログラム、設計検証方法および設計検証装置を提供することを目的とする。

課題を解決するための手段

0019

上記目的を達成するために、以下のような設計検証プログラムが提供される。この設計検証プログラムは、ゲートレベルのネットリスト記述を用いた設計検証を行うプログラムであり、コンピュータを、作成処理手段、関連づけ処理手段、として機能させる。

0020

作成処理手段は、作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路モニタモニタ記述を作成する。
関連づけ処理手段は、RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名をモニタ記述の入力信号の信号名に関連づける。

0021

このような設計検証プログラムによれば、作成処理手段によりモニタ記述が作成され、関連づけ処理手段により、ネットリスト記述の入出力信号に対応するモニタ記述の入力信号が関連づけられる。従って、レジスタ・トランスファ・レベルで使用していた組み合わせ回路の内部信号名でアサーションチェックが可能となる。

発明の効果

0022

開示の設計検証プログラム、設計検証方法および設計検証装置によれば、ネットリスト検証でRTL記述と同等のアサーションチェックが可能となるため、誤動作発生箇所を容易に発見することができる。

発明を実施するための最良の形態

0023

以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。

0024

設計検証プログラムは、ゲートレベルのネットリスト記述を用いた設計検証を行うプログラムであり、コンピュータ1を、作成処理手段2、関連づけ処理手段3、として機能させる。

0025

作成処理手段2は、作成されたRTLのRTL記述4からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成する。
ここで、組み合わせ回路は、論理式に基づき、AND回路やOR回路等のゲート素子を組み合わせたもので、入力の値だけで出力が定まり、過去の状態には影響されない回路である。また、レジスタは、組み合わせ回路と記憶回路で構成され、出力は入力と回路の現在の状態によって定まるものを言う。

0026

関連づけ処理手段3は、RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名をモニタ記述の入力信号の信号名に関連づける。

0027

詳しくは、モニタ記述に記述された入力信号の信号名に等しい、ネットリスト記述に記述された入力信号の信号名を互いに関連づける。また、モニタ記述を作成する際に、削除したレジスタが出力していた信号の信号名に等しい、ネットリスト記述に記述されたレジスタが出力する信号の信号名を互いに関連づける。

0028

このような設計検証プログラムによれば、作成処理手段2によりモニタ記述が作成され、関連づけ処理手段3により、ネットリスト記述の入出力信号に対応するモニタ記述の入力信号が関連づけられる。従って、RTLで使用していた組み合わせ回路の内部信号名でアサーションチェックが可能となり、RTLと同等のアサーションチェックがネットリスト検証で可能になる。

0029

以下、本発明の実施の形態を説明する。
図2は、設計検証装置のハードウェア構成例を示す図である。
設計検証装置100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、ハードディスクドライブ(HDD:Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、および通信インタフェース106が接続されている。

0030

RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103には、OSやアプリケーションプログラムが格納される。また、HDD103内には、プログラムファイルが格納される。

0031

グラフィック処理装置104には、モニタ104aが接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ104aの画面に表示させる。入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号を、バス107を介してCPU101に送信する。

0032

通信インタフェース106は、ネットワーク10に接続されている。通信インタフェース106は、ネットワーク10を介して、他のコンピュータとの間でデータの送受信を行う。

0033

以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。このようなハードウェア構成のシステムにおいて設計検証を行うために、設計検証装置100内には、以下のような機能が設けられる。

0034

図3は、設計検証装置の構成を示すブロック図である。
設計検証装置100は、アサーションチェック部200と、設計検証部300と、RTL記述格納部400と、ネットリスト記述格納部500と、実配線SDF格納部600と、モニタ記述格納部700と、テストベンチ記述格納部800と、ライブラリ格納部900と、FV(Formal Verification)スクリプト格納部1000とを有している。

0035

LSIの回路設計ではユーザが、ハードウェア記述言語(HDL)を用いて、RTLで回路の論理機能の記述を行う。
アサーションチェック部200は、ある条件が成立していなければならない部分にチェック用のコードを入れ、その条件に違反している場合はエラーを出力することで、プログラムをチェックする。

0036

設計検証部300は、後述する設計検証処理を行うことによって、作成されたRTL記述の検証を行う。
RTL記述格納部400には、アサーションチェックが行われたRTL記述が格納される。

0037

ネットリスト記述格納部500には、RTL記述の論理合成およびレイアウト処理により作成されたネットリスト記述が格納される。
実配線SDF格納部600には、レイアウト処理によって配設された実配線SDFが格納される。

0038

モニタ記述格納部700には、アサーションチェックを行うために作成されたモニタ記述が格納される。
テストベンチ記述格納部800には、論理的に正常に動作するか否かを確認するための入力値期待値集合を備えるテストベンチ記述が格納される。

0039

ライブラリ格納部900には、RTL記述とネットリスト記述を関連づけたライブラリが格納される。
FVスクリプト格納部1000には、RTL記述からの変更内容が設定されたFVスクリプトが格納される。

0040

図4は、設計検証部の機能を示すブロック図である。
設計検証部300は、シミュレーション実行部310と、論理合成部320と、Formal検証部330と、レイアウト実行部340と、モニタ記述作成部350と、関連づけ処理部360と、タイミング検証部370とを有している。

0041

シミュレーション実行部310は、作成されたRTL記述のシミュレーションを行って回路の論理機能動作を確認する。
論理合成部320は、HDLで記述された論理機能を実際のゲート回路に変換してネットリスト記述を出力する。

0042

Formal検証部330は、出力されたネットリスト記述がRTL記述と等価であることを検証するFormal検証を行う。
レイアウト実行部340は、論理等価の検証ができたネットリスト記述に対してレイアウトを行い、タイミング調整やテスト回路追加等を行った実配線のネットリスト記述および寄生容量、抵抗を含んだ遅延情報ファイル(SDF)を作成する。

0043

モニタ記述作成部350は、アサーションチェックを行ったRTL記述からレジスタを全て削除した組み合わせ回路のみのモニタ記述を作成する。
関連づけ処理部360は、モニタ記述作成部350が作成したモニタ記述の入力信号と、ネットリスト記述の入力信号およびネットリスト記述内部のレジスタが出力する信号とを関連づける。

0044

タイミング検証部370は、実配線のネットリスト記述および遅延情報ファイルに加え、モニタ記述を用いてゲートレベルのダイナミック・シミュレーションによる論理検証、STAによるタイミング検証を行い、回路の論理機能動作の確認およびタイミングスペックの確認を行う。

0045

次に、本実施の形態の設計検証方法について説明する。
<第1の実施の形態の設計検証方法>
図5は、第1の実施の形態の設計検証処理を示す処理フローである。

0046

まず、シミュレーション実行部310が、作成され、RTL記述格納部400に格納されているRTL記述のシミュレーションによる論理検証を行い、回路の論理機能動作を確認する(ステップS1)。

0047

論理機能動作が期待通りでなかった場合(ステップS1のNo)、処理を終了する。
論理検証動作が期待通りであった場合(ステップS1のYes)、論理合成部320が、論理合成を行いゲートレベルのネットリスト記述を生成する(ステップS2)。生成したネットリスト記述はネットリスト記述格納部500に格納する。

0048

次に、Formal検証部330が、ネットリスト記述とRTL記述のFormal検証を行い、論理が等価であることを確認する(ステップS3)。
論理が等価でない場合(ステップS3のNo)、処理を終了する。

0049

論理が等価である場合(ステップS3のYes)、レイアウト実行部340が、レイアウトを行い、実配線のネットリスト記述および遅延情報ファイルを生成する(ステップS4)。生成したネットリスト記述はネットリスト記述格納部500に格納し、生成した遅延情報ファイルは、実配線SDF格納部600に格納する。

0050

一方、モニタ記述作成部350は、RTL記述格納部400からRTL記述を取り出し、モジュール回路(組み合わせ回路)のモニタ記述を作成するモニタ記述作成処理を行う(ステップS5)。この処理については後に詳述する。

0051

そして、作成されたモジュール回路のモニタ記述をモニタ記述格納部700に格納する。
また、関連づけ処理部360は、モニタ記述の信号をネットリスト記述格納部500に格納されているネットリスト記述の信号またはテストベンチ記述格納部800に格納されているテストベンチ記述の信号に関連づけてこれらの信号同士を互いに関連づける関連づけ処理を行う(ステップS6)。この処理についても後に詳述する。

0052

タイミング検証部370は、実配線のネットリスト記述および遅延情報ファイルに加え、モニタ記述を用いてゲートレベルのダイナミック・シミュレーションによる論理検証、タイミング検証を行う(ステップS7)。

0053

論理機能動作が期待通りでなかった場合(ステップS7の動作No)、処理を終了する。
タイミングスペックが満たされなかった場合(ステップS7のタイミングNo)、ステップS4に移行し、再度レイアウトを行う。

0054

論理機能動作が期待通りであり、かつ、タイミングスペックを満たした場合(ステップS7のYes)、タイミング検証部370が、実配線のネットリスト記述および遅延情報ファイルを用いて、STAによるタイミング検証およびタイミングスペックの確認を行う(ステップS8)。

0055

論理的に問題がある場合(ステップS8の動作No)、処理を終了する。
タイミングスペックが満たされなかった場合(ステップS8のタイミングNo)、ステップS4に移行し、再度レイアウトを行う。

0056

論理的に問題がなく、かつ、タイミングスペックを満たした場合(ステップS8のYes)、処理フローを終了する。
なお、論理機能動作が期待通りでなかった場合(ステップS1のNo)、論理が等価でない場合(ステップS3のNo)、論理機能動作が期待通りでなかった場合(ステップS7の動作No)、および論理的に問題がある場合(ステップS8の動作No)は、ユーザによって再度RTL記述が作成(再調整)され、第1の設計検証処理が再度繰り返される。

0057

このようにして論理検証およびタイミング検証を行った後に、試作品チップを作成し、実機評価での動作確認を行う。
実機動作が期待通りでなかった場合、回路の論理に問題がある場合は再度RTL記述を作成し、タイミングに問題がある場合は再度レイアウトを行う。

0058

実機評価の確認ができたら、回路の量産に入り、LSIの回路設計は完了する。
<第1のモニタ記述作成処理>
次に、図5に示すステップS5のモニタ記述作成処理(第1のモニタ記述作成処理)について詳しく説明する。

0059

図6は、第1のモニタ記述作成処理を示すフローチャートである。
まず、モニタ記述作成部350が、RTL記述格納部400に格納されているRTL記述を取り出し、RTL記述のモジュール回路名を別の名前に変更する(ステップS11)。

0060

次に、モニタ記述作成部350が、別の名前に変更したRTL記述からレジスタ記述に関する部位を全て削除する(ステップS12)。
次に、モニタ記述作成部350が、削除したモニタ記述に含まれる信号の信号名を、モニタ記述の外部から入力される信号の信号名として追加する(ステップS13)。

0061

以上で、第1のモニタ記述作成処理を終了する。
次に、第1のモニタ記述作成処理の具体例を説明する。
図7は、RTL記述格納部に格納されているRTL記述の一例を示す図であり、図8は、図7に示すRTL記述により実現されるモジュール回路を示す図である。

0062

図8に示すモジュール回路11は、図7に示すRTL記述r1により実現される回路である。
モジュール回路11のモジュール回路名は、「dut」であり、入力側からレジスタ(D−FF)F0_regと、AND回路and2と、レジスタF1_regと、AND回路and3と、AND回路and4とを有している。

0063

レジスタF0_regには信号名「DIN」の信号が入力され、信号名「CLK」の信号に同期して動作する。
AND回路and2には、モジュール回路11外部から入力される信号名「XMSK」の信号およびレジスタF0_regが出力する信号名「f0」の信号が入力される。

0064

レジスタF1_regの入力には、AND回路and2が出力する信号名「a」の信号が入力され、信号名「CLK」の信号に同期して動作する。
AND回路and3の入力には、信号名「XMSK」の信号およびレジスタF1_regが出力する信号名「f1」の信号が入力される。

0065

AND回路and4の入力には、信号名「a」の信号の論理を反転させた信号およびAND回路AND2が出力する信号名「b」の信号が入力される。
アサーションチェック部200は、信号名「CLK」の信号に同期して動作し、信号名「a」の信号および信号名「b」の信号をチェックする。

0066

以下、この回路を用いて第1のモニタ記述作成処理の具体例を説明する。
図9は、図7に示すRTL記述に第1のモニタ記述作成処理を施したモニタ記述を示す図である。

0067

まず、図7に示すRTL記述r1のモジュール回路名「dut」を、図9に示すモニタ記述の別の名前「check_dut」に書き替える。
また、RTL記述のレジスタに関する記述、すなわち、7行目の「reg f0,f1;」、および17〜20行目の「always @(posedge CLK) begin・・・end」を削除する。なお、図9ではコメントアウトしている。

0068

そして、1行目のmodule文に「f0,f1」を追加し、4行目(input定義箇所)に「input f0,f1」を追加する。これにより第1のモニタ記述作成処理によって作成されたモニタ記述m1が得られる。

0069

図10は、第1のモニタ記述作成処理によって作成されたモジュール回路を示す図である。
図10中、点線で示したデバイスは、削除されたデバイスを示している。

0070

モジュール回路11aは、モニタ記述m1により実現される回路であり、モジュール回路11のモジュール回路名「dut」が、「check_dut」に変更されている。
また、レジスタF0_regおよびレジスタF1_regが削除されている。

0071

そして、AND回路and2に入力される信号名「f0」の信号の入力元が、レジスタF0_regからモジュール回路11aの外部に変わっている。また、AND回路and3に入力される信号名「f1」の信号の入力元が、レジスタF1_regからモジュール回路11aの外部に変わっている。

0072

<第1の関連づけ処理>
次に、図5に示すステップS6の関連づけ処理(第1の関連づけ処理)について説明する。

0073

図11は、第1の関連づけ処理を示すフローチャートである。
まず、関連づけ処理部360が、モニタ記述作成処理にて生成したモジュール回路のモニタ記述をネットリスト記述またはテストベンチ記述に追加する(ステップS21)。このステップでは、モニタ記述の信号をネットリスト記述またはテストベンチ記述の信号に関連づける処理は行わない。

0074

次に、関連づけ処理部360が、図6のステップS13にて追加したモニタ記述の外部から入力される信号の信号名とネットリスト記述のレジスタが出力する信号の信号名とをネットリスト記述またはテストベンチ記述上で関連づける。

0075

具体的には、ライブラリ格納部900に格納されているライブラリを検索し、RTL記述に記述されているレジスタと同等のレジスタがネットリスト記述に存在しているか否かを判断する(ステップS22)。

0076

同等のレジスタが存在している場合(ステップS22のYes)、そのレジスタが出力する信号の信号名を、RTL記述に記述されているレジスタが出力する信号の信号名に関連づける(ステップS23)。

0077

一方、存在していない場合(ステップS22のNo)、削除されたレジスタの内容をFVスクリプト格納部1000に格納されているFVスクリプトから検索し、代わりの信号名または固定値をRTL記述に記述されているレジスタが出力する信号の信号名に関連づける(ステップS24)。このFVスクリプトを用いる処理は、モニタ記述の特殊関連づけ処理として後に詳述する。

0078

次に、関連づけ処理部360が、モニタ記述に入力される信号の信号名にネットリスト記述に入力される信号の信号名をネットリスト記述上で関連づける。
具体的には、RTL記述に入力される信号の信号名と同等の信号名がネットリスト記述に存在するか否かを判断する(ステップS25)。

0079

存在する場合(ステップS25のYes)、同等の信号名を関連づける(ステップS26)。
一方、存在しない場合(ステップS25のNo)、変更された信号名をFVスクリプト格納部1000に格納されているFVスクリプトから検索し、その信号名をRTL記述に入力される信号の信号名に関連づける(ステップS27)。この処理についてもモニタ記述の特殊関連づけ処理として後に詳述する。

0080

次に、関連づけ処理部360は、処理結果を格納先に格納する(ステップS28)。具体的には、ステップS21でモニタ記述をネットリスト記述に追加した場合、ステップS22〜ステップS27の処理が施されたネットリスト記述をネットリスト記述格納部500に格納する。また、モニタ記述をテストベンチ記述に記載した場合、ステップS42〜ステップS47の処理が施されたテストベンチ記述をテストベンチ記述格納部800に格納する。

0081

以上で第1の関連づけ処理を終了する。
次に、第1の関連づけ処理の具体例を説明する。ステップS28にて説明したように、モニタ記述をネットリスト記述に追加する方法とテストベンチ記述に追加する方法がある。以下順番に説明する。

0082

<第1の関連づけ処理の第1の具体例>
本具体例は、図7に示すRTL記述r1を論理合成したネットリスト記述に、図9に示すモニタ記述m1を追加する例である。

0083

図12は、図7に示すRTL記述を論理合成したネットリスト記述を示す図であり、図13は、第1の関連づけ処理を施したネットリスト記述を示す図である。
まず、第1のモニタ記述作成処理で作成したモニタ記述m1を下記のようにインスタンス化して未接続で図12に示すネットリスト記述n1に追加する。
check_dut inst_check_dut( .CLK(), .XMSK(),
.DIN(), .f0(), .f1(), .DOUT() );
次に、モニタ記述m1における外部から入力される信号の信号名「f0」、「f1」にネットリスト記述n1のレジスタが出力する信号の信号名を関連づける。

0084

前述したように、RTL記述r1に記述されているレジスタと同等のレジスタがネットリスト記述n1に存在するか否かを、ライブラリ格納部900に格納されているライブラリから検索する。本具体例では、信号名「f0」の信号を出力するレジスタf0_regおよび信号名「q1」の信号を出力するレジスタf1_regがネットリスト記述n1に存在するので、外部から入力される信号の信号名「f0」にネットリスト記述n1のレジスタf0_regが出力する信号の信号名「f0」を関連づけ、外部から入力される信号の信号名「f1」にネットリスト記述n1のレジスタf1_regが出力する信号の信号名「q1」を関連づける(下記下線部参照)。
check_dut inst_check_dut( .CLK(), .XMSK(),
.DIN(), .f0(f0), .f1(q1), .DOUT() );
次に、モニタ記述m1に入力される信号の信号名にネットリスト記述n1に入力される信号の信号名を関連づける。

0085

前述したように、RTL記述r1に入力される信号の信号名に同等の信号名をネットリスト記述n1から検索する。本具体例では信号名「CLK」の信号、信号名「XMSK」の信号、信号名「DIN」の信号が存在するので、これらの信号名を関連づける(下記下線部参照)。
check_dut inst_check_dut ( .CLK(CLK), .XMSK(XMSK),
.DIN(DIN), .f0(f0), .f1(q1), .DOUT() );
以上の処理を行うことで、第1の関連づけ処理を施したネットリスト記述n2が得られる。このネットリスト記述n2に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0086

図14は、第1の関連づけ処理によって関連づけられたネットリスト回路を示す図である。
ネットリスト回路21は、図13に示すネットリスト記述n2により実現される(タイミング検証用の)回路である。

0087

このネットリスト回路21には、モジュール回路11aが追加され、モジュール回路11aの信号名「f0」の信号にネットリスト回路21のレジスタf0_regが出力する信号名「f0」の信号が接続され、モジュール回路11aの信号名「f1」の信号にレジスタf1_regの信号名「q1」の信号が接続されている。

0088

また、ネットリスト回路21に入力される信号名「XMSK」の信号、信号名「DIN」の信号、信号名「CLK」の信号がそのままモジュール回路11aの同じ信号名の入力信号に接続されている。

0089

アサーションチェック部200は、モジュール回路11aの信号名「a」の信号および信号名「b」の信号をチェックすることにより、ネットリスト回路21のアサーションチェックを行うことができる。

0090

次に、第1の関連づけ処理の第2の具体例について説明する。
<第1の関連づけ処理の第2の具体例>
本具体例は、図7に示すRTL記述r1を論理合成したネットリスト記述外部のテストベンチ記述上に、図9に示すモニタ記述m1を追加する例である。

0091

図15は、第1の関連づけ処理を施したテストベンチ記述を示す図である。
まず、第1のモニタ記述作成処理で作成したモニタ記述m1を第1の具体例と同様にインスタンス化してテストベンチ記述へ追加する。
check_dut inst_check_dut ( .CLK(), .XMSK(),
.DIN(), .f0(), .f1(), .DOUT() );
次に、モニタ記述m1の外部から入力される信号の信号名「f0」、「f1」にネットリスト記述のレジスタが出力する信号の信号名を関連づける。

0092

前述したように、RTL記述r1に記述されているレジスタと同等のレジスタがネットリスト記述n1に存在するか否かを、ライブラリ格納部900に格納されているライブラリから検索する。本具体例では、信号名「f0」の信号を出力するレジスタf0_regおよび信号名「q1」の信号を出力するレジスタf1_regがネットリスト記述n1に存在するので、外部から入力される信号の信号名「f0」にネットリスト記述n1のレジスタf0_regが出力する信号の信号名「f0」を関連づけ、外部から入力される信号の信号名「f1」にネットリスト記述n1のレジスタf1_regが出力する信号の信号名「q1」を関連づける(下記下線部参照)。なお、信号名の前にインスタンス名を付加する。
check_dut inst_check_dut (.CLK(), .XMSK(),
.DIN(), .f0(inst_dut.f0), .f1(inst_dut.q1), .DOUT() );」
次に、モニタ記述m1に入力される信号の信号名にネットリスト記述n1に入力される信号の信号名を関連づける。

0093

前述したように、RTL記述r1に入力される信号の信号名に同等の信号名をネットリスト記述n1から検索する。本具体例では信号名「CLK」の信号、信号名「XMSK」の信号および信号名「DIN」の信号が存在するので、これらの信号名を関連づける(下記下線部参照)。なお、信号名の前にインスタンス名を付加する。
check_dut inst_check_dut(.CLK(inst_dut.CLK), .XMSK(inst_dut.XMSK),
.DIN(inst_dut.DIN), .f0(inst_dut.f0), .f1(inst_dut.q1), .DOUT() );
以上の処理を行うことで、第1の関連づけ処理を施したテストベンチ記述t1が得られる。このテストベンチ記述t1に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0094

また、本具体例は、ネットリスト記述およびテストベンチ記述がVerilogの場合のみ適用することができる。
図16は、第1の関連づけ処理によって関連づけられたテストベンチ回路を示す図である。

0095

テストベンチ回路31は、図15に示すテストベンチ記述t1により実現される回路である。
このテストベンチ回路31は、ネットリスト回路21aとは別個にモジュール回路11aが追加され、モジュール回路11aの信号名「f0」の信号にネットリスト回路21aのレジスタf0_regが出力する信号名「f0」の信号が接続され、モジュール回路11aの信号名「f1」の信号にレジスタf1_regの信号名「q1」の信号が接続されている。

0096

また、ネットリスト回路21aに入力される信号名「XMSK」の信号、信号名「DIN」の信号、信号名「CLK」の信号がそのままモジュール回路11aの同じ信号名の入力信号に接続されている。

0097

アサーションチェック部200は、モジュール回路11aの信号名「a」の信号および信号名「b」の信号をチェックすることにより、ネットリスト回路21aのアサーションチェックを行うことができる。
<モニタ記述の特殊関連づけ処理>
次に、図11に示すステップS24、S27のモニタ記述の特殊関連づけ処理について説明する。

0098

複数のレジスタに同じ論理が入力される場合や、固定値がレジスタに入力される場合は、論理合成したネットリスト記述ではそのレジスタが削除される場合がある。
またネットリスト記述の信号名がRTL記述とは異なる信号名に変更される場合もある。

0099

このようなケースでは、単純にネットリスト記述に記述されているレジスタが出力する信号の信号名やモジュール回路に入力する信号の信号名をモニタ記述の信号名に関連づける処理ができない。より詳しくは、ネットリスト記述のレジスタが削除された場合や入力信号名が変更された場合、そのままRTL記述とネットリスト記述のFormal検証を行うと不一致になる。そのためモニタ記述の特殊関連づけ処理を行うことになる。

0100

具体的には、変更内容に対応するFVスクリプトを用意してRTL記述とネットリスト記述が等価であることを検証する。このFVスクリプトにRTL記述からの変更内容が設定されているため、変更内容を読み取りモニタ記述の関連づけ処理に使用する。なお、論理合成時のログファイル等でも変更内容が出力されている場合、ログファイルを読み込んで処理を行ってもよい。

0101

以下、第1の関連づけ処理の第1の具体例で述べた例と同様のケース、すなわち、モジュール回路のモニタ記述をネットリスト記述に追加してネットリスト記述と関連づける例を用いてモニタ記述の特殊関連づけ処理を説明する。

0102

図17は、RTL記述の他の例を示す図であり、図18は、図17に示すRTL記述により実現されるモジュール回路を示す図である。
図17に示すRTL記述r2により図18に示すモジュール回路41が実現される。

0103

モジュール回路41は、レジスタQ0_regと、レジスタQ1_reg0〜Q1_reg2と、AND回路and5と、セレクタ42とを有している。
レジスタQ0_regと、レジスタQ1_reg0〜Q1_reg2とは、それぞれ信号名「CLK」の信号により動作する。レジスタQ1_reg0の入力には論理‘0’(固定値)の信号が入力され、レジスタQ0_regおよびレジスタQ1_reg2の入力には、それぞれ信号名「A」の信号が入力される。また、レジスタQ1_reg1の入力には、信号名「A」の信号の論理を反転させた信号が入力される。

0104

AND回路and5の入力には、信号名「B」の信号とレジスタQ0_regが出力する信号名「q0」の信号とが入力され、これらの信号の論理に応じて信号名「C」の信号を出力する。

0105

セレクタ42の入力には、レジスタQ1_reg0が出力する信号名「q1[0]」の信号とレジスタQ1_reg1が出力する信号名「q1[1]」の信号とレジスタQ1_reg2が出力する信号名「q1[2]」の信号とが入力され、これらのうちの1つを選択した信号名「D」の信号を出力する。

0106

レジスタQ0_regおよびレジスタQ1_reg2のように、複数のレジスタで同じ信号名「A」の信号が入力される場合や、レジスタQ1_reg0のように固定値が入力される場合は、論理合成したネットリスト記述ではそのレジスタが削除される場合がある。

0107

図19は、図17に示すRTL記述を論理合成したネットリスト記述により実現されるネットリスト回路を示す図である。
図19に示すネットリスト回路51では前者の例としてレジスタQ0_regに対応するレジスタq0_regが削除されている。また、後者の例としてレジスタQ1_reg0に対応するレジスタq1_reg_0が削除され、セレクタ42の代わりにAND回路AND6が設けられている。このような場合、モニタ記述の特殊関連づけ処理を行ってFVスクリプト格納部1000に格納されているFVスクリプトから、削除されたレジスタの内容を検索し、代わりの信号または固定値を関連づける。

0108

また、RTL記述r2の信号名「B」の信号がネットリスト回路51では信号名「B_0」の信号に変更されている。このような場合、モニタ記述の特殊関連づけ処理を行ってFVスクリプト格納部1000に格納されているFVスクリプトから、変更した信号名を検索し、その信号名を関連づける。

0109

図20は、図17に示すRTL記述に、モニタ記述の特殊関連づけ処理を施したモニタ記述を示す図である。
モニタ記述については、前述したように、RTL記述r2のモジュール回路名「dut2」を別の名前「check_dut2」に変更する。

0110

また、モニタ記述のレジスタに関する記述、すなわち、
reg q0;
reg [2:0] q1;
always @(posedge CLK) begin
q0 <= A;
end
always @(posedge CLK) begin
if( A )
q1 <= 3'b100;
else
q1 <= 3'b010;
end
を削除する。

0111

そして、1行目のmodule文に「q0、q1」を追加し、2行目(input定義箇所)に「q0」を追加し、3行目(input定義箇所)に「input [2:0] q1;」を追加する。これにより図20に示すモニタ記述m2が得られる。

0112

図21は、図17に示すRTL記述に、モニタ記述の特殊関連づけ処理を施すときのFVスクリプトを示す図であり、図22は、図17に示すRTL記述に、モニタ記述の特殊関連づけ処理を施したネットリスト記述を示す図である。

0113

図21に示すように、変更内容に対応するFVスクリプトfv1を用意する。
まず、レジスタq0_regは削除されているため、FVスクリプトfv1の3行目から信号名「q0]」の信号は信号名「q1[2]」の信号と同等であることを読み込んで、レジスタq0_regが出力する信号の信号名「q0」には信号名「q1[2]」を関連づける。すなわち図22に示すネットリスト記述n3の13行目を「q0(q1_2_),」のように記述する。

0114

またレジスタq1_reg_0が削除されているため、FVスクリプトfv1の2行目からレジスタq1_reg_0が出力する信号の信号名「q1[0]」は論理‘0’の信号の信号名であることを読み込んで、レジスタQ0_regが出力する信号の信号名「q1[0]」には論理‘0’の信号の信号名を関連づける。すなわち、ネットリスト記述n3の14行目を「q1({q1_2_, q1_1_, 1'b0}));」のように記述する。

0115

さらに、信号名「B」の信号が信号名「B_0」の信号に変更されているため、FVスクリプトfv1の1行目から信号名「B」の信号が信号名「B_0」の信号に変更されたことを読み込んで、信号名「B」に信号名「B_0」を関連づける。すなわち、ネットリスト記述n3の13行目を「.B(B_0),」のように記述する。

0116

以上の処理を行うことで、モニタ記述m2の信号がネットリスト記述の信号に関連づけられたネットリスト記述n3が得られる。このネットリスト記述n3に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0117

図23は、特殊関連づけ処理が施されたネットリスト記述により実現されるネットリスト回路を示す図である。
ネットリスト記述n3により実現されるネットリスト回路51aには、モジュール回路41aが追加されている。

0118

ネットリスト回路51aでは、モジュール回路41aの信号名「q0」の信号に信号名「q1[2]」の信号が接続されている。
また、モジュール回路41aの信号名「q1[0]」の信号に論理‘0’の信号が接続されている。

0119

また、モジュール回路41aの信号名「B」の信号に信号名「B_0」の信号が接続されている。
このように、ネットリスト記述のレジスタが削除された場合や入力信号名が変更された場合についてもモニタ記述の信号をネットリスト記述へ関連づけることができる。

0120

以上述べたように、第1の実施の形態の設計検証装置100によれば、ネットリスト記述で動作しているレジスタの出力について、RTL記述で使用していた組み合わせ回路の内部信号名でアサーションチェックすることができるので、ネットリスト検証でRTL記述と同等のアサーションチェックが可能になり、誤動作発生箇所を容易かつ確実に発見することができる。また、外部端子まで伝搬せずに発見できなかった誤動作を容易かつ確実に発見することができる。

0121

<第2の実施の形態>
次に、第2の実施の形態の設計検証装置について説明する。
以下、第2の実施の形態の設計検証装置について、前述した第1の実施の形態の設計検証装置との相違点を中心に説明し、同様の事項については、その説明を省略する。

0122

図24は、第2の実施の形態の構成を示すブロック図である。
第2の実施の形態の設計検証装置100aは、アサーションチェッカがPSLの場合であり、vunitを使ってRTL記述とは別個に記述してあるアサーションチェッカモデル記述を格納するアサーションチェッカモデル記述格納部1100をさらに有している。

0123

以下、第2の実施の形態の設計検証装置100aによる設計検証方法(第2の設計検証方法)について説明する。
<第2の設計検証方法>
第2の設計検証方法は、モニタ記述作成処理および関連づけ処理が第1の設計検証方法とは異なっている。

0124

図25は、第2の設計検証方法を示す処理フローである。
モニタ記述作成部350は、RTL記述に加え、ステップS4のレイアウトによって得られたネットリスト記述を用いてモニタ記述作成処理を行う(ステップS5a)。そして、モニタ記述作成処理が施されたモニタ記述をモニタ記述格納部700に格納する。

0125

また、関連づけ処理部360は、モニタ記述作成処理が施されたモニタ記述の信号をネットリスト記述格納部500に格納されているネットリスト記述の信号、テストベンチ記述の信号またはアサーションチェッカモデル記述の信号に関連づけてこれらの信号を関連づける関連づけ処理を行う(ステップS6a)。

0126

<第2のモニタ記述作成処理>
以下、本実施の形態のステップS5aのモニタ記述作成処理(第2のモニタ記述作成処理)について詳しく説明する。

0127

図26は、第2のモニタ記述作成処理を示すフローチャートである。
まず、モニタ記述作成部350が、RTL記述のモジュール回路名および入出力信号名の定義文を削除する(ステップS31)。

0128

次に、モニタ記述作成部350が、別の名前に変更したRTL記述からレジスタ記述に関する部位を全て削除する(ステップS32)。
次に、モニタ記述作成部350が、RTL記述に残った組み合わせ回路で生成される信号で、その信号がネットリスト記述の内部信号または出力信号に存在する場合は、組み合わせ回路内のその部分を削除する(ステップS33)。

0129

以上で第2のモニタ記述作成処理を終了する。
次に、モニタ記述作成処理の具体例を説明する。
図27は、図7に示すRTL記述に、第2のモニタ記述作成処理を施したモニタ記述を示す図である。

0130

まず、RTL記述r1のモジュール回路名、入出力信号名の定義文すなわち、1行目〜3行目の「module dut ( CLK, DIN, XMSK,DOUT)・・・DOUT;」および21行目の「endmodule」を削除する。なお、図27ではコメントアウトしている。

0131

また、RTL記述r1からレジスタ記述、すなわち、6行目の「reg f0,f1;」、および17〜20行目の「always @(posedge CLK) begin・・・end」を削除する。なお、図27ではコメントアウトしている。

0132

そして、RTL記述r1の組み合わせ回路で生成される信号で、その信号が図12に示すネットリスト記述n1の内部信号または出力信号に存在する15行目の「assignDOUT=b & ~a;」を削除する。

0133

これにより、図27に示すモニタ記述m3が得られる。
図28は、図27に示すモニタ記述により実現される組み合わせ回路を示す図である。
図28中、点線で示した部分は、削除されたことを示している。

0134

組み合わせ回路61は、第2のモニタ記述作成処理により、モジュール回路11の枠組みが削除されている。
また、レジスタF0_reg、F1_regが削除されている。

0135

そして、AND回路and4が削除されている。
<第2の関連づけ処理>
次に、図25に示す本実施の形態のステップS6aの関連づけ処理(第2の関連づけ処理)について説明する。

0136

図29は、第2の関連づけ処理の処理フローを示す図である。
まず、関連づけ処理部360が、第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述を、ネットリスト記述、テストベンチ記述、またはアサーションチェッカモデル記述に直接記述し追加する(ステップS41)。

0137

次に、関連づけ処理部360が、RTL記述のレジスタが出力する信号にネットリスト記述格納部500に格納されているネットリスト記述のレジスタが出力する信号を関連づける。

0138

具体的には、ライブラリ格納部900に格納されているライブラリを検索し、RTL記述と同等のレジスタがネットリスト記述に存在するか否かを判断する(ステップS42)。

0139

同等のレジスタが存在しない場合(ステップS42のNo)、モニタ記述の特殊関連づけ処理を行う。すなわち、FVスクリプト格納部1000に格納されているFVスクリプトから、削除されたレジスタの内容を検索し、代わりの信号または固定値をモニタ記述のレジスタに関連づける(ステップS43)。

0140

一方、存在する場合(ステップS42のYes)、モニタ記述にネットリスト記述のレジスタが出力する信号と同じ信号名が存在しているか否かを判断する(ステップS44)。

0141

存在する場合(ステップS44のYes)、ステップS46に移行する。
一方、存在しない場合(ステップS44のNo)、ネットリスト記述のレジスタが出力する信号の信号名をモニタ記述のレジスタに関連づける(ステップS45)。

0142

次に、関連づけ処理部360が、組み合わせ回路に入力される信号にネットリスト記述またはテストベンチ記述に入力される信号を関連づける。
具体的には、ステップS41にて追加した組み合わせ回路の信号にネットリスト記述またはテストベンチ記述と同じ信号名が存在するか否かを判断する(ステップS46)。

0143

存在しない場合(ステップS46のNo)、モニタ記述の特殊関連づけ処理を行う。すなわち、変更された信号名をFVスクリプトから検索し、その信号を関連づける(ステップS47)。

0144

一方、存在する場合(ステップS46のYes)、ステップS48に移行する。
次に、関連づけ処理部360が、処理結果を格納先に格納する(ステップS48)。
具体的には、ステップS41でモニタ記述をネットリスト記述に追加した場合、ステップS42〜ステップS47の処理が施されたモニタ記述が追加されたネットリスト記述をネットリスト記述格納部500に格納する。ステップS41でモニタ記述をテストベンチ記述に追加した場合、ステップS42〜ステップS47の処理が施されたモニタ記述が追加されたテストベンチ記述をテストベンチ記述格納部800に格納する。ステップS41でモニタ記述をアサーションチェッカモデル記述に追加した場合、ステップS42〜ステップS47の処理が施されたモニタ記述が追加されたアサーションチェッカモデル記述をアサーションチェッカモデル記述格納部1100に格納する。

0145

以上で第2の関連づけ処理を終了する。
次に、第2の関連づけ処理の具体例を説明する。ステップS48にて説明したように、モニタ記述をネットリスト記述に追加する方法とテストベンチ記述に追加する方法とアサーションチェッカモデル記述に追加する方法とがある。以下順番に説明する。

0146

<第2の関連づけ処理の第1の具体例>
本具体例は、第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述を第2の関連づけ処理を行うことによりネットリスト記述内部に追加してネットリスト記述に関連づける例である。

0147

図30は、図12に示すネットリスト記述n1に、第2の関連づけ処理を施したネットリスト記述を示す図である。
まず、第2のモニタ記述作成処理で作成した組み合わせ回路のモニタ記述m3を下記のようにネットリスト記述n1へ直接記述し追加する。また、RTL記述r1にアサーションチェッカが記述されている場合、ここでアサーションチェッカも追加する。
// psl default clock = ( posedge CLK ) ;
// psl property
// chk = always { a } |=> { b } ;
// psl assert chk ;
wire a, b;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、RTL記述r1のレジスタが出力していた信号名「f0」、「f1」の信号に、ネットリスト記述n1のレジスタが出力する信号名の信号を関連づける。

0148

具体的には、ライブラリ格納部900に格納されているライブラリを検索し、RTL記述r1と同等のレジスタがネットリスト記述n1に存在するか否かを判断する。
本具体例では、レジスタF0_regに対応するレジスタf0_regおよびレジスタF1_regに対応するレジスタf1_regが存在する。

0149

ここで、レジスタF0_regが出力していた信号の信号名「f0」はネットリスト記述n1に存在するため何もしない。何もしなくても、モニタ記述m3の信号名「f0」の信号は、ネットリスト記述n1のレジスタf0_regが出力する信号名「f0」の信号に接続されたことになる。

0150

一方、レジスタF1_regが出力していた信号の信号名「f1」はネットリスト記述n1に存在しないため、ネットリスト記述のレジスタf1_regが出力する信号の信号名「q1」を関連づける(下記下線部参照)。
// psl default clock = ( posedge CLK ) ;
// psl property
// chk = always { a } |=> { b } ;
// psl assert chk ;
wire a, b;
wire f1;
assign f1 = q1;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、モニタ記述m3の組み合わせ回路に入力される信号名「XMSK」の信号および信号名「CLK」の信号にネットリスト記述n1に入力される信号を関連づける。

0151

具体的には、ネットリスト記述n1を検索し、これらの信号名の信号と同等の信号名の信号が存在するか否かを判断する。
本具体例では信号名「XMSK」の信号、信号名「CLK」の信号は存在するので何もしない。何もしなくても、モニタ記述m3の信号名「XMSK」の信号および信号名「CLK」の信号はネットリスト記述n1の信号名「XMSK」の信号および信号名「CLK」の信号とそれぞれ関連づけられたことになる。

0152

以上の処理を行うことで、モニタ記述m3の信号がネットリスト記述n1の信号に関連づけられたネットリスト記述n4が得られる。このネットリスト記述n4に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0153

図31は、図30に示すネットリスト記述により実現されるネットリスト回路を示す図である。
ネットリスト記述n4により実現されるネットリスト回路71には、組み合わせ回路61が追加されている。

0154

組み合わせ回路61の信号名「f0」の信号にネットリスト回路71のレジスタf0_regが出力する信号名「f0」の信号が接続され、組み合わせ回路61の信号名「f1」の信号にレジスタf1_regが出力する信号名「q1」の信号が接続されている。

0155

また、ネットリスト回路71に入力される信号名「XMSK」の信号、信号名「DIN」の信号、信号名「CLK」の信号がそのまま組み合わせ回路61の同じ信号名の入力信号に接続されている。

0156

アサーションチェック部200は、組み合わせ回路61の信号名「a」の信号および信号名「b」の信号をチェックすることにより、ネットリスト回路71のアサーションチェックを行うことができる。

0157

<第2の関連づけ処理の第2の具体例>
本具体例は、第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述を第2の関連づけ処理を行うことによりテストベンチ記述に追加してネットリスト記述に関連づける例である。

0158

図32は、第2の関連づけ処理を施したテストベンチ記述を示す図である。
第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述m3を下記のようにテストベンチ記述へ直接記述し追加する。RTL記述r1内部にアサーションチェッカが記述されている場合、ここでアサーションチェッカも追加される。
// psl default clock = ( posedge CLK ) ;
// psl property
// chk = always { a } |=> { b } ;
// psl assert chk ;
wire a, b;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、RTL記述r1のレジスタが出力していた信号名「f0」、「f1」の信号に、ネットリスト記述n1のレジスタが出力する信号名の信号を関連づける。

0159

具体的には、ライブラリ格納部900に格納されているライブラリを検索し、RTL記述r1と同等のレジスタがネットリスト記述n1に存在するか否かを判断する。
本具体例ではレジスタF0_regに対応するレジスタf0_regおよびレジスタF1_regに対応するレジスタf1_regが存在するので、ネットリスト記述n1のレジスタが出力する信号と同じ信号名がモニタ記述m3に存在しているか否かを判断する。

0160

本具体例では、ネットリスト記述n1のレジスタf0_regが出力する信号の信号名はインスタンス名を含む「inst_dut.f0」であり、ネットリスト記述n1のレジスタf1_regが出力する信号の信号名はインスタンス名を含む「inst_dut.f1」であるため、同じ信号名はモニタ記述m3に存在しない。従って、信号名「inst_dut.f0」に信号名「f0」の信号を関連づけ、信号名「inst_dut.f1」に信号名「f1」の信号を関連づける(下記下線部参照)。
// psl default clock = ( posedge CLK ) ;
// psl property
// chk = always { a } |=> { b } ;
// psl assert chk ;
wire a, b;
wire f0, f1;
assign f0 = inst_dut.f0;
assign f1 = inst_dut.q1;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、モニタ記述m3の組み合わせ回路に入力される信号名「XMSK」の信号および信号名「CLK」の信号にネットリスト記述n1に入力される信号を関連づける。

0161

具体的には、ネットリスト記述n1を検索し、これらの信号名の信号と同等の信号名の信号が存在するか否かを判断する。
本具体例では信号名「XMSK」の信号、信号名「CLK」の信号は存在するので何もしない。何もしなくても、モニタ記述m3の信号名「XMSK」の信号および信号名「CLK」の信号はネットリスト記述n1の信号名「XMSK」の信号および信号名「CLK」の信号とそれぞれ接続されたことになる。

0162

以上の処理を行うことで、モニタ記述m3の信号がネットリスト記述n1の信号に関連づけられたテストベンチ記述t2が得られる。このテストベンチ記述t2に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0163

図33は、図32に示すテストベンチ記述により実現されるテストベンチ回路を示す図である。
テストベンチ記述t2により実現されるテストベンチ回路81には、組み合わせ回路61が追加されている。また、ネットリスト回路21aは、図12に示すネットリスト記述n1により実現される回路である。すなわち、モニタ記述を第2の関連づけ処理を行うことによりテストベンチ記述に追加する場合はネットリスト記述には手を加えない。

0164

組み合わせ回路61の信号名「f0」の信号にネットリスト回路21aのレジスタf0_regが出力する信号名「f0」の信号が接続され、組み合わせ回路61の信号名「f1」の信号にレジスタf1_regが出力する信号名「q1」の信号が接続されている。

0165

また、ネットリスト回路21aに入力される信号名「XMSK」の信号、信号名「DIN」の信号、信号名「CLK」の信号がそのまま組み合わせ回路61の同じ信号名の入力信号に接続されている。

0166

アサーションチェック部200は、組み合わせ回路61の信号名「a」の信号および信号名「b」の信号をチェックすることにより、ネットリスト回路21aのアサーションチェックを行うことができる。

0167

<第2の関連づけ処理の第3の具体例>
本具体例は、第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述を第2の関連づけ処理を行うことによりアサーションチェッカモデル記述内部に追加してネットリスト記述に関連づける例である。

0168

図34は、第2の関連づけ処理を施したアサーションチェッカモデル記述を示す図である。
第2のモニタ記述作成処理で生成した組み合わせ回路のモニタ記述m3を下記のようにアサーションチェッカへ直接記述し追加する。この例でのアサーションチェッカはRTL記述とは別ファイルである。
wire a, b;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、RTL記述r1のレジスタが出力していた信号名「f0」、「f1」の信号に、ネットリスト記述n1のレジスタが出力する信号名の信号を関連づける。

0169

具体的には、ライブラリ格納部900に格納されているライブラリを検索し、RTL記述r1と同等のレジスタがネットリスト記述n1に存在するか否かを判断する。
本具体例では、レジスタF0_regに対応するレジスタf0_regおよびレジスタF1_regに対応するレジスタf1_regが存在する。

0170

ここで、レジスタF0_regが出力していた信号の信号名「f0」はネットリスト記述n1に存在するため何もしない。何もしなくても、モニタ記述の信号名「f0」の信号は、ネットリスト記述n1のレジスタf0_regが出力する信号名「f0」の信号に接続されたことになる。

0171

一方、レジスタF1_regが出力していた信号の信号名「f1」はネットリスト記述n1に存在しないため、ネットリスト記述n1のレジスタf1_regが出力する信号の信号名「q1」を関連づける(下記下線部参照)。
wire a, b;
wire f1;
assign f1 = q1;
assign a = f0 & XMSK;
assign b = f1 & XMSK;
次に、モニタ記述m3の組み合わせ回路に入力される信号名「XMSK」の信号および信号名「CLK」の信号にネットリスト記述n1に入力される信号を関連づける。

0172

具体的には、ネットリスト記述n1を検索し、これらの信号名の信号と同等の信号名の信号が存在するか否かを判断する。
本具体例では信号名「XMSK」の信号、信号名「CLK」の信号は存在するので何もしない。何もしなくても、モニタ記述m3の信号名「XMSK」の信号および信号名「CLK」の信号はネットリスト記述n1の信号名「XMSK」の信号および信号名「CLK」の信号とそれぞれ接続されたことになる。

0173

以上の処理を行うことで、モニタ記述m3の信号がネットリスト記述n1の信号に接続されたアサーションチェッカモデル記述a1が得られる。このアサーションチェッカモデル記述a1に追加されたモニタ記述部分のアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。

0174

図35は、図34に示すアサーションチェッカモデル記述により実現されるネットリスト回路を示す図である。
ネットリスト記述n1により実現されるネットリスト回路21aに組み合わせ回路61を備えるアサーションチェッカモデル回路61aが追加されている。このように、本具体例においてもネットリスト記述には手を加えない。

0175

アサーションチェッカモデル回路61aの信号名「f0」の信号にネットリスト回路21aのレジスタf0_regが出力する信号名「f0」の信号が接続され、アサーションチェッカモデル回路61aの信号名「f1」の信号にレジスタf1_regが出力する信号名「q1」の信号が接続されている。

0176

また、ネットリスト回路21aに入力される信号名「XMSK」の信号、信号名「DIN」の信号、信号名「CLK」の信号がそのままアサーションチェッカモデル回路61aの同じ信号名の入力信号に接続されている。

0177

このアサーションチェッカモデル回路61aのアサーションチェックを行うことでネットリスト検証でのアサーションチェックが可能となる。
アサーションチェック部200は、アサーションチェッカモデル回路61aの信号名「a」の信号および信号名「b」の信号をチェックすることにより、ネットリスト回路21aのアサーションチェックを行うことができる。

0178

以上、本発明の設計検証プログラム、設計検証方法および設計検証装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。

0179

また、本発明は、前述した各実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、設計検証装置100が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置光ディスク光磁気記録媒体半導体メモリ等が挙げられる。磁気記録装置としては、例えば、ハードディスク装置(HDD)、フレキシブルディスクFD)、磁気テープ等が挙げられる。光ディスクとしては、例えば、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等が挙げられる。光磁気記録媒体としては、例えば、MO(Magneto-Optical disk)等が挙げられる。

0180

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体販売される。また、プログラムをサーバコンピュータ記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。

0181

設計検証プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。

0182

以上の実施形態に関し、更に以下の付記を開示する。
(付記1)ゲートレベルのネットリストを用いた設計検証を行う設計検証プログラムにおいて、
コンピュータを、
作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成する作成処理手段、
前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける関連づけ処理手段、
として機能させることを特徴とする設計検証プログラム。

0183

(付記2) 前記作成処理手段は、前記RTL記述のモジュール名を変更し、前記RTL記述のレジスタに関する記述を全て削除し、削除したレジスタが出力する信号の信号名を、前記RTL回路外部からの入力信号の信号名とした前記モニタ記述を作成することを特徴とする付記1記載の設計検証プログラム。

0184

(付記3) 前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記入力信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記2記載の設計検証プログラム。

0185

(付記4) 前記関連づけ処理手段は、前記モニタ記述を、テストベンチ記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記入力信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記2記載の設計検証プログラム。

0186

(付記5) 前記作成処理手段は、前記RTL記述のモジュール名および入出力信号名の定義文を削除し、前記RTL記述のレジスタに関する記述を全て削除し、前記ネットリストの内部信号または出力信号に対応する信号を出力する組み合わせ回路に関する記述を削除した前記モニタ記述を作成することを特徴とする付記1記載の設計検証プログラム。

0187

(付記6) 前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記モニタの削除された前記レジスタが出力していた信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記5記載の設計検証プログラム。

0188

(付記7) 前記関連づけ処理手段は、前記モニタ記述を、テストベンチ記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記モニタの削除された前記レジスタが出力していた信号のインスタンス名を含む信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記5記載の設計検証プログラム。

0189

(付記8) 前記関連づけ処理手段は、前記モニタ記述を、アサーションチェッカモデル記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記モニタの削除された前記レジスタが出力していた信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記5記載の設計検証プログラム。

0190

(付記9) 前記関連づけ処理手段は、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが存在するか否かを判断し、存在しない場合は論理等価検証用スクリプトから、削除された前記レジスタが出力していた信号の信号名に対応する前記ネットリストの信号名を検索し、検索された信号の信号名を、削除された前記レジスタが出力していた信号の信号名に関連づけることを特徴とする付記3または4もしくは6ないし8のいずれかに記載の設計検証プログラム。

0191

(付記10) 前記関連づけ処理手段は、前記モニタに入力される信号の信号名に等しい前記ネットリストに入力される信号の信号名が存在するか否かを判断し、存在しない場合は論理等価検証用スクリプトから、前記モニタに入力される信号の信号名に対応する前記ネットリストの信号名を検索し、検索された信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記3または4もしくは6ないし8のいずれかに記載の設計検証プログラム。

0192

(付記11) 前記関連づけ処理手段は、ライブラリの検索結果に基づいて前記判断を行うことを特徴とする付記10記載の設計検証プログラム。
(付記12) 前記関連づけ処理手段により信号が接続された状態で、前記組み合わせ回路のアサーションチェックを行うことを特徴とする付記1記載の設計検証プログラム。

0193

(付記13)ゲートレベルのネットリストを用いた設計検証を行う設計検証方法において、
作成処理手段が、作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成し、
関連づけ処理手段が、前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける、
ことを特徴とする設計検証方法。

0194

(付記14)ゲートレベルのネットリストを用いた設計検証を行う設計検証装置において、
作成されたRTLのRTL記述からレジスタに関する記述を削除した組み合わせ回路のモニタのモニタ記述を作成する作成処理部と、
前記RTLを論理合成して得られるネットリストのネットリスト記述における入出力信号の信号名のうち、対応する信号の信号名を前記モニタ記述の入力信号の信号名に関連づける関連づけ処理部と、
を有することを特徴とする設計検証装置。

0195

(付記15) 前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述またはテストベンチ記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記入力信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記2記載の設計検証プログラム。

0196

(付記16) 前記関連づけ処理手段は、前記モニタ記述を、前記ネットリスト記述またはテストベンチ記述またはアサーションチェッカモデル記述に追加し、削除された前記レジスタに対応する前記ネットリスト記述に記述された前記レジスタが出力する信号の信号名を、前記モニタの削除された前記レジスタが出力していた信号の信号名に関連づけ、前記モニタに入力される信号の信号名に等しい前記ネットリストの信号の信号名を、前記モニタに入力される信号の信号名に関連づけることを特徴とする付記5記載の設計検証プログラム。

図面の簡単な説明

0197

本発明の概要を示す図である。
設計検証装置のハードウェア構成例を示す図である。
設計検証装置の構成を示すブロック図である。
設計検証部の機能を示すブロック図である。
第1の設計検証処理を示す処理フローである。
第1のモニタ記述作成処理を示すフローチャートである。
RTL記述格納部に格納されているRTL記述の一例を示す図である。
図7に示すRTL記述により実現されるモジュール回路を示す図である。
第1のモニタ記述作成処理を施したモニタ記述を示す図である。
作成されたモジュール回路を示す図である。
第1の関連づけ処理を示すフローチャートである。
論理合成したネットリスト記述を示す図である。
第1の関連づけ処理を施したネットリスト記述を示す図である。
関連づけられたネットリスト回路を示す図である。
第1の関連づけ処理を施したテストベンチ記述を示す図である。
関連づけられたテストベンチ回路を示す図である。
RTL記述の他の例を示す図である。
RTL記述により実現されるモジュール回路を示す図である。
ネットリスト記述により実現されるネットリスト回路を示す図である。
モニタ記述の特殊関連づけ処理を施したモニタ記述を示す図である。
モニタ記述の特殊関連づけ処理用のFVスクリプトを示す図である。
モニタ記述の特殊関連づけ処理を施したネットリスト記述を示す図である。
ネットリスト記述により実現されるネットリスト回路を示す図である。
第2の実施の形態の構成を示すブロック図である。
第2の設計検証方法を示す処理フローである。
第2のモニタ記述作成処理を示すフローチャートである。
第2のモニタ記述作成処理を施したモニタ記述を示す図である。
モニタ記述により実現される組み合わせ回路を示す図である。
第2の関連づけ処理の処理フローを示す図である。
第2の関連づけ処理を施したネットリスト記述を示す図である。
ネットリスト記述により実現されるネットリスト回路を示す図である。
第2の関連づけ処理を施したテストベンチ記述を示す図である。
テストベンチ記述により実現されるテストベンチ回路を示す図である。
第2の関連づけ処理を施したアサーションチェッカモデル記述を示す図である。
アサーションチェッカモデル記述により実現されるネットリスト回路を示す図である。
設計検証フローを示すフローチャートである。
RTL記述により実現されるモジュール回路の一例を示す図である。
ネットリスト記述により実現されるネットリスト回路の一例を示す図である。

符号の説明

0198

11、11a、41、41aモジュール回路
21、21a、51、51a、71ネットリスト回路
31、81テストベンチ回路
61組み合わせ回路
61aアサーションチェッカモデル回路
100、100a設計検証装置
200アサーションチェック部
300設計検証部
310シミュレーション実行部
320論理合成部
330 Formal検証部
340レイアウト実行部
350モニタ記述作成部
360 関連づけ処理部
370タイミング検証部
400RTL記述格納部
500ネットリスト記述格納部
600 実配線SDF格納部
700 モニタ記述格納部
800テストベンチ記述格納部
900ライブラリ格納部
1000 FVスクリプト格納部
1100 アサーションチェッカモデル記述格納部
a1 アサーションチェッカモデル記述
fv1 FVスクリプト
m1、m2、m3 モニタ記述
n1、n2、n3、n4 ネットリスト記述
r1、r2 RTL記述
t1、t2 テストベンチ記述

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ