JP5691890B2 - Verification device, verification program, and verification method - Google Patents

Verification device, verification program, and verification method Download PDF

Info

Publication number
JP5691890B2
JP5691890B2 JP2011148377A JP2011148377A JP5691890B2 JP 5691890 B2 JP5691890 B2 JP 5691890B2 JP 2011148377 A JP2011148377 A JP 2011148377A JP 2011148377 A JP2011148377 A JP 2011148377A JP 5691890 B2 JP5691890 B2 JP 5691890B2
Authority
JP
Japan
Prior art keywords
measurement
assertion
unit
verification
asynchronous
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.)
Expired - Fee Related
Application number
JP2011148377A
Other languages
Japanese (ja)
Other versions
JP2013016025A (en
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor 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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2011148377A priority Critical patent/JP5691890B2/en
Publication of JP2013016025A publication Critical patent/JP2013016025A/en
Application granted granted Critical
Publication of JP5691890B2 publication Critical patent/JP5691890B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本件は、検証対象を検証する検証装置、検証プログラム、および、検証方法に関する。   This case relates to a verification apparatus, a verification program, and a verification method for verifying a verification target.

非同期パスを含む回路の検証方法として、非同期パス遅延およびクロックジッターを付与した条件下で、検証対象のシミュレーション(非同期シミュレーションとも称す)を行う方法がある。この方法では、検証のもれを抑制するため、非同期シミュレーション実行時に非同期回路(非同期パスおよび非同期パスの影響を受ける回路)が活性化されていることを確認する必要がある。   As a method for verifying a circuit including an asynchronous path, there is a method of performing a simulation to be verified (also referred to as an asynchronous simulation) under a condition where an asynchronous path delay and clock jitter are added. In this method, it is necessary to confirm that an asynchronous circuit (an asynchronous path and a circuit affected by the asynchronous path) is activated at the time of executing an asynchronous simulation in order to suppress verification leakage.

これを確認する方法としては、非同期シミュレーションを実行する前に、非同期パス遅延およびクロックジッターを含まない条件下で、検証対象のシミュレーションを行い、非同期回路の活性化回数を測定する方法がある。しかし、この方法では、非同期シミュレーションにおいて、非同期パス遅延およびクロックジッターの影響により、非同期回路の活性化回数が、事前に測定した回数から変化してしまう可能性がある。   As a method for confirming this, there is a method of performing a simulation to be verified and measuring the number of times of activation of the asynchronous circuit under a condition that does not include the asynchronous path delay and clock jitter before executing the asynchronous simulation. However, in this method, in the asynchronous simulation, the number of times of activation of the asynchronous circuit may change from the number of times measured in advance due to the influence of asynchronous path delay and clock jitter.

これに対して、非同期シミュレーション実行時の非同期回路の活性化回数を直接測定するため、非同期シミュレーション実行中に、シミュレータのコードカバレッジ機能を用いて、非同期回路の活性化回数を測定する方法がある。   On the other hand, in order to directly measure the number of times of activation of the asynchronous circuit during execution of the asynchronous simulation, there is a method of measuring the number of times of activation of the asynchronous circuit using the code coverage function of the simulator during execution of the asynchronous simulation.

特開2007−18255号公報JP 2007-18255 A 特開平5−151295号公報JP-A-5-151295 特許第4271067号公報Japanese Patent No. 4271667

しかしながら、非同期シミュレーション実行中に、シミュレータのコードカバレッジ機能を用いて、非同期回路の活性化回数を測定する方法では、非同期回路だけではなく、回路中の全てのブロックを測定対象としているため、データ量が膨大となり、非同期シミュレーションに係る時間が大幅に増大してしまう可能性がある。   However, in the method of measuring the number of activations of an asynchronous circuit using the code coverage function of the simulator during execution of asynchronous simulation, not only the asynchronous circuit but all blocks in the circuit are measured, so the amount of data May become enormous, and the time for asynchronous simulation may increase significantly.

発明の一観点によれば、以下のような検証装置が提供される。
この検証装置は、論理式で表現した回路データである検証対象から非同期パスの構造タイプを抽出する抽出部と、抽出部が抽出した非同期パスの構造タイプに基づいて、検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定する特定部と、特定部が特定した第1および第2の測定箇所間の信号伝播所要サイクル数を検証対象から検出する検出部と、検出部が検出した信号伝播所要サイクル数に基づくタイミングで、特定部が特定した複数の測定箇所の活性化回数を測定するアサーションを生成するアサーション生成部と、非同期パス遅延およびクロックジッターを付与した条件下で実行される検証対象のシミュレーションの実行中、アサーション生成部が生成したアサーションを用いて、特定部が特定した複数の測定箇所の活性化回数を測定する測定部と、測定部による測定結果を期待値と比較する比較部と、を有する。
According to one aspect of the invention, the following verification device is provided.
The verification apparatus extracts an asynchronous path structure type from a verification target, which is circuit data expressed by a logical expression, and first and second verification targets for the verification target based on the asynchronous path structure type extracted by the extraction unit. A detection unit that detects a plurality of measurement points including two measurement points, a detection unit that detects the number of required cycles of signal propagation between the first and second measurement points specified by the specification unit, and a detection unit; at a timing based on the detected signal propagation required number of cycles, to measure the number of times of activation of a plurality of measurement points in which the identifying unit has identified, and the assertion generating unit that generates an assertion, under the conditions applying asynchronous path delay and clock jitter During the execution of the simulation to be verified executed in step (b), a plurality of measurement points identified by the identification unit are identified using the assertions generated by the assertion generation unit. Having a measurement unit for measuring the number of times of activation, and a comparator for comparing the expected value of the measurement result by the measuring unit.

開示の検証装置によれば、非同期回路の活性化回数を選択的に測定することができ、検証時間を短縮することが可能となる。   According to the disclosed verification apparatus, the number of times of activation of the asynchronous circuit can be selectively measured, and the verification time can be shortened.

第1の実施の形態に係る検証装置の一例を示す図である。It is a figure which shows an example of the verification apparatus which concerns on 1st Embodiment. 第2の実施の形態に係る検証装置のハードウェアの一例を示す図である。It is a figure which shows an example of the hardware of the verification apparatus which concerns on 2nd Embodiment. 第2の実施の形態に係る検証装置の機能の一例を示す図である。It is a figure which shows an example of the function of the verification apparatus which concerns on 2nd Embodiment. 第2の実施の形態に係る非同期リストの一例を示す図である。It is a figure which shows an example of the asynchronous list | wrist concerning 2nd Embodiment. 第2の実施の形態に係るアサーション生成用リストの一例を示す図である。It is a figure which shows an example of the list | wrist for assertion production | generation concerning 2nd Embodiment. 第2の実施の形態に係るアサーション生成用のテンプレートの一例を示す図である。It is a figure which shows an example of the template for assertion production | generation concerning 2nd Embodiment. 第2の実施の形態に係るアサーションの一例を示す図である。It is a figure which shows an example of the assertion which concerns on 2nd Embodiment. 第2の実施の形態に係る判定結果リストの一例を示す図である。It is a figure which shows an example of the determination result list | wrist concerning 2nd Embodiment. 第2の実施の形態に係る検証手順の一例を示すフローチャートである。It is a flowchart which shows an example of the verification procedure which concerns on 2nd Embodiment. 第2の実施の形態に係るアサーション生成手順の一例を示すフローチャートである。It is a flowchart which shows an example of the assertion production | generation procedure which concerns on 2nd Embodiment. 第2の実施の形態に係るアサーション生成手順の一例を示すフローチャートである。It is a flowchart which shows an example of the assertion production | generation procedure which concerns on 2nd Embodiment. 第2の実施の形態に係る出力信号抽出処理の一例を示すフローチャートである。It is a flowchart which shows an example of the output signal extraction process which concerns on 2nd Embodiment. 第2の実施の形態に係るFSM有無の判定処理の一例を示すフローチャートである。It is a flowchart which shows an example of the determination process of the presence or absence of FSM which concerns on 2nd Embodiment. 第2の実施の形態に係る測定箇所の抽出処理の一例を示すフローチャートである。It is a flowchart which shows an example of the extraction process of the measurement location which concerns on 2nd Embodiment. 第2の実施の形態に係るリコンバージェンスレジスタ判定処理の一例を示すフローチャートである。It is a flowchart which shows an example of the reconvergence register determination process which concerns on 2nd Embodiment. 第2の実施の形態に係る判定の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the determination which concerns on 2nd Embodiment. 第2の実施の形態に係る具体例1の回路ブロックを示す図である。It is a figure which shows the circuit block of the specific example 1 which concerns on 2nd Embodiment. 第2の実施の形態に係る具体例2の回路ブロックを示す図である。It is a figure which shows the circuit block of the specific example 2 which concerns on 2nd Embodiment. 第2の実施の形態に係る具体例3の回路ブロックを示す図である。It is a figure which shows the circuit block of the specific example 3 which concerns on 2nd Embodiment. 第2の実施の形態に係る具体例4の回路ブロックを示す図である。It is a figure which shows the circuit block of the specific example 4 which concerns on 2nd Embodiment. 第2の実施の形態に係る具体例5の回路ブロックを示す図である。It is a figure which shows the circuit block of the specific example 5 which concerns on 2nd Embodiment. 第3の実施の形態に係る検証装置の機能の一例を示す図である。It is a figure which shows an example of the function of the verification apparatus which concerns on 3rd Embodiment. 第3の実施の形態に係る網羅性判定結果リストの一例を示す図である。It is a figure which shows an example of the comprehensiveness determination result list | wrist which concerns on 3rd Embodiment. 第3の実施の形態に係る判定手順の一例を示すフローチャートである。It is a flowchart which shows an example of the determination procedure which concerns on 3rd Embodiment. 第3の実施の形態に係る判定手順の一例を示すフローチャートである。It is a flowchart which shows an example of the determination procedure which concerns on 3rd Embodiment.

以下、実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態に係る検証装置の一例を示す図である。
Hereinafter, embodiments will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating an example of a verification apparatus according to the first embodiment.

検証装置1は、検証対象2を検証する装置であり、抽出部1aと、特定部1bと、検出部1cと、アサーション生成部1dと、測定部1eと、比較部1fとを有している。
なお、検証対象2は、例えば、LSI(Large Scale Integration)などの集積回路を、レジスタ・トランスファ・レベル(RTL:Resistor Transfer Level)と呼ばれる論理式で表現した回路データである。検証対象2は、複数のクロックドメイン間をまたぐ非同期パスを含んでいる。
The verification device 1 is a device that verifies the verification target 2, and includes an extraction unit 1a, a specification unit 1b, a detection unit 1c, an assertion generation unit 1d, a measurement unit 1e, and a comparison unit 1f. .
The verification target 2 is circuit data that expresses an integrated circuit such as an LSI (Large Scale Integration), for example, by a logical expression called a register transfer level (RTL). The verification target 2 includes an asynchronous path across a plurality of clock domains.

抽出部1aは、検証対象2から非同期パスの構造タイプを抽出する。例えば、非同期パスの構造タイプとしては、2DFF,1DFF、コンビネーション(Combination)、リコンバージェンス、DMUXがある。特定部1bは、抽出部1aが抽出した非同期パスの構造タイプに基づいて、検証対象2に対する測定箇所を特定する。   The extraction unit 1a extracts the structure type of the asynchronous path from the verification target 2. For example, there are 2DFF, 1DFF, Combination, Reconvergence, and DMUX as the structure type of the asynchronous path. The identification unit 1b identifies the measurement location for the verification target 2 based on the structure type of the asynchronous path extracted by the extraction unit 1a.

検出部1cは、特定部1bが特定した測定箇所間の信号伝播所要サイクル数を検証対象2から検出する。アサーション生成部1dは、検出部1cが検出した信号伝播所要サイクル数を用いて、特定部1bが特定した測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する。   The detection unit 1c detects from the verification target 2 the number of required signal propagation cycles between the measurement locations specified by the specification unit 1b. The assertion generation unit 1d generates an assertion that measures the number of activations of the measurement location specified by the specification unit 1b at a predetermined timing using the number of required signal propagation cycles detected by the detection unit 1c.

測定部1eは、非同期パス遅延およびクロックジッターを付与した条件下で実行される検証対象2のシミュレーション(非同期シミュレーションとも称す)の実行中、アサーション生成部1dが生成したアサーションを用いて、特定部1bが特定した測定箇所の活性化回数を測定する。比較部1fは、測定部1eによる測定結果を期待値と比較する。   The measurement unit 1e uses the assertion generated by the assertion generation unit 1d during execution of the simulation of the verification target 2 (also referred to as asynchronous simulation) that is executed under the condition where the asynchronous path delay and clock jitter are applied. Measure the number of times of activation of the specified measurement location. The comparison unit 1f compares the measurement result obtained by the measurement unit 1e with an expected value.

次に、検証装置1による検証手順について説明する。
まず、抽出部1aが、検証対象2から、非同期パスの構造タイプを抽出する。
次に、特定部1bが、抽出部1aが抽出した非同期パスの構造タイプに基づいて、検証対象2に対する測定箇所を特定する。
Next, a verification procedure by the verification apparatus 1 will be described.
First, the extraction unit 1a extracts the structure type of the asynchronous path from the verification target 2.
Next, the specifying unit 1b specifies a measurement location for the verification target 2 based on the structure type of the asynchronous path extracted by the extracting unit 1a.

次に、検出部1cが、特定部1bが特定した測定箇所間の信号伝播所要サイクル数を検出する。
次に、アサーション生成部1dが、検出部1cが検出した信号伝播所要サイクル数を用いて、特定部1bが特定した測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する。
Next, the detection unit 1c detects the required number of signal propagation cycles between the measurement points specified by the specification unit 1b.
Next, the assertion generation unit 1d generates an assertion that measures the number of activations of the measurement location specified by the specification unit 1b at a predetermined timing, using the number of required signal propagation cycles detected by the detection unit 1c.

そして、検証対象2の非同期シミュレーションが実行されると、測定部1eが、非同期シミュレーションの実行中、アサーション生成部1dが生成したアサーションを用いて、特定部1bが特定した測定箇所の活性化回数を測定する。   Then, when the asynchronous simulation of the verification target 2 is executed, the measurement unit 1e uses the assertion generated by the assertion generation unit 1d during the execution of the asynchronous simulation to determine the number of activations of the measurement location specified by the specification unit 1b. taking measurement.

次に、比較部1fが、測定部1eによる測定結果を期待値と比較する。このようにして、検証対象2の検証が行われる。
このように、検証装置1は、非同期パスの構造タイプに基づいて検証対象2に対する測定箇所を特定し、特定した測定箇所間の信号伝播所要サイクル数を検出し、さらに、検出した信号伝播所要サイクル数を用いて、特定した測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する。さらに、検証装置1は、非同期シミュレーションの実行中、生成したアサーションを用いて、特定した測定箇所の活性化回数を測定する。
Next, the comparison part 1f compares the measurement result by the measurement part 1e with an expected value. In this way, verification of the verification target 2 is performed.
Thus, the verification apparatus 1 identifies the measurement location for the verification target 2 based on the structure type of the asynchronous path, detects the number of required signal propagation cycles between the identified measurement locations, and further detects the required signal propagation cycle. The number is used to generate an assertion that measures the number of times of activation of the specified measurement location at a predetermined timing. Furthermore, the verification apparatus 1 measures the number of times of activation of the specified measurement location using the generated assertion during execution of the asynchronous simulation.

これによれば、非同期回路(非同期パスおよび非同期パスの影響を受ける回路)の活性化回数を選択的に測定することができ、検証時間を短縮することが可能となる。
[第2の実施の形態]
次に、第1の実施の形態の検証装置1をより具体的にした実施の形態を、第2の実施の形態として説明する。
According to this, the number of activations of the asynchronous circuit (the asynchronous path and the circuit affected by the asynchronous path) can be selectively measured, and the verification time can be shortened.
[Second Embodiment]
Next, a more specific embodiment of the verification apparatus 1 of the first embodiment will be described as a second embodiment.

図2は、第2の実施の形態に係る検証装置のハードウェアの一例を示す図である。
検証装置100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス108を介してRAM(Random Access Memory)102と複数の周辺機器が接続されている。
FIG. 2 is a diagram illustrating an example of hardware of the verification apparatus according to the second embodiment.
The entire verification apparatus 100 is controlled by a CPU (Central Processing Unit) 101. A RAM (Random Access Memory) 102 and a plurality of peripheral devices are connected to the CPU 101 via a bus 108.

RAM102は、検証装置100の主記憶装置として使用される。RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。   The RAM 102 is used as a main storage device of the verification device 100. The RAM 102 temporarily stores at least part of an OS (Operating System) program and application programs to be executed by the CPU 101. The RAM 102 stores various data necessary for processing by the CPU 101.

バス108に接続されている周辺機器としては、ハードディスクドライブ(HDD:Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、および通信インタフェース107がある。   Peripheral devices connected to the bus 108 include a hard disk drive (HDD) 103, a graphic processing device 104, an input interface 105, an optical drive device 106, and a communication interface 107.

HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、コンピュータ100の二次記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。   The HDD 103 magnetically writes and reads data to and from the built-in disk. The HDD 103 is used as a secondary storage device of the computer 100. The HDD 103 stores an OS program, application programs, and various data. Note that a semiconductor storage device such as a flash memory can also be used as the secondary storage device.

グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ11の画面に表示させる。モニタ11としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。   A monitor 11 is connected to the graphic processing device 104. The graphic processing device 104 displays an image on the screen of the monitor 11 in accordance with a command from the CPU 101. Examples of the monitor 11 include a display device using a CRT (Cathode Ray Tube) and a liquid crystal display device.

入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号をCPU101に送信する。なお、マウス13は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。   A keyboard 12 and a mouse 13 are connected to the input interface 105. The input interface 105 transmits a signal sent from the keyboard 12 or the mouse 13 to the CPU 101. The mouse 13 is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a trackball.

光学ドライブ装置106は、レーザ光などを利用して、光ディスク14に記録されたデータの読み取りを行う。光ディスク14は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク14には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。   The optical drive device 106 reads data recorded on the optical disk 14 using laser light or the like. The optical disk 14 is a portable recording medium on which data is recorded so that it can be read by reflection of light. The optical disk 14 includes a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc Read Only Memory), a CD-R (Recordable) / RW (ReWritable), and the like.

通信インタフェース107は、ネットワーク10に接続されている。通信インタフェース107は、ネットワーク10を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。   The communication interface 107 is connected to the network 10. The communication interface 107 transmits and receives data to and from other computers or communication devices via the network 10.

以上のようなハードウェアによって、第2の実施の形態の処理機能を実現することができる。なお、検証装置100の処理機能を、複数の検証装置によって実現するようにしてもよい。   The processing functions of the second embodiment can be realized by the hardware as described above. Note that the processing function of the verification apparatus 100 may be realized by a plurality of verification apparatuses.

次に、検証装置100の機能について説明する。
図3は、第2の実施の形態に係る検証装置の機能の一例を示す図である。
検証装置100は、検証対象格納部111と、非同期パス抽出部112と、非同期リスト格納部113と、アサーション抽出生成部114と、アサーション生成用リスト格納部114aと、テンプレート格納部114bと、アサーション格納部115とを有している。
Next, functions of the verification apparatus 100 will be described.
FIG. 3 is a diagram illustrating an example of a function of the verification apparatus according to the second embodiment.
The verification apparatus 100 includes a verification target storage unit 111, an asynchronous path extraction unit 112, an asynchronous list storage unit 113, an assertion extraction generation unit 114, an assertion generation list storage unit 114a, a template storage unit 114b, and an assertion storage. Part 115.

さらに、検証装置100は、シナリオ調整用シミュレーション実行部116と、固定シナリオ格納部117と、回数基準値格納部118と、非同期シミュレーション実行部119と、回数測定結果格納部120と、判定部121と、判定結果リスト格納部122とを有している。   Furthermore, the verification apparatus 100 includes a scenario adjustment simulation execution unit 116, a fixed scenario storage unit 117, a frequency reference value storage unit 118, an asynchronous simulation execution unit 119, a frequency measurement result storage unit 120, and a determination unit 121. And a determination result list storage unit 122.

検証対象格納部111には、LSIなどの集積回路を、レジスタ・トランスファ・レベルと呼ばれる論理式で表現した回路データが、検証対象として格納されている。検証対象には、非同期パスが含まれている。ここで、検証対象は、DUT(Design Under Test)とも称される。   The verification target storage unit 111 stores circuit data representing an integrated circuit such as an LSI by a logical expression called a register transfer level as a verification target. The verification target includes an asynchronous path. Here, the verification target is also referred to as a DUT (Design Under Test).

非同期パス抽出部112は、検証対象格納部111に格納された検証対象から、非同期パスの信号および非同期パスの構造タイプを抽出して、非同期リストに格納する。非同期リスト格納部113は、非同期リストを格納する。   The asynchronous path extraction unit 112 extracts the asynchronous path signal and the asynchronous path structure type from the verification target stored in the verification target storage unit 111 and stores them in the asynchronous list. The asynchronous list storage unit 113 stores an asynchronous list.

アサーション抽出生成部114は、非同期パスの構造タイプに基づいて、検証対象に対する測定箇所を特定する。さらに、アサーション抽出生成部114は、特定した測定箇所間の信号伝播所要サイクル数を検証対象から検出する。   The assertion extraction generation unit 114 specifies the measurement location for the verification target based on the asynchronous path structure type. Further, the assertion extraction / generation unit 114 detects the number of required signal propagation cycles between the specified measurement locations from the verification target.

そして、アサーション抽出生成部114は、特定した測定箇所および検出した信号伝播所要サイクル数をアサーション生成用リストに格納する。ここで、アサーション生成用リストは、アサーション生成用リスト格納部114aに格納される。   And the assertion extraction production | generation part 114 stores the specified measurement location and the detected number of signal propagation cycles in the assertion production list. Here, the assertion generation list is stored in the assertion generation list storage unit 114a.

さらに、アサーション抽出生成部114は、アサーション生成用リストに格納された測定箇所および信号伝播所要サイクル数を、アサーション生成用のテンプレートに埋め込むことで、特定した測定箇所の活性化回数(信号変化回数)を所定のタイミングで測定するアサーションを生成する。そして、アサーション抽出生成部114は、生成したアサーションを、アサーション格納部115に格納する。   Furthermore, the assertion extraction generation unit 114 embeds the measurement location and the number of signal propagation cycles stored in the assertion generation list in the assertion generation template, thereby activating the number of times of the specified measurement location (signal change count). Generate an assertion that measures at a predetermined timing. Then, the assertion extraction generation unit 114 stores the generated assertion in the assertion storage unit 115.

なお、アサーションの記述には、例えば、SVA(System Verilog Assertion)、PSL(Property Specification Language)などのアサーション記述言語、または、System Verilog, System C, Verilogなどのテストベンチ記述言語が用いられる。   For the description of the assertion, for example, an assertion description language such as SVA (System Verilog Assertion) or PSL (Property Specification Language) or a test bench description language such as System Verilog, System C, or Verilog is used.

ここで、アサーション生成用のテンプレートは、測定箇所別に用意されている。また、非同期パスの後段がFSM(Finite State Machine)またはカウンタである場合と、そうではない場合とで、それぞれ別に用意されている。アサーション生成用のテンプレートは、テンプレート格納部114bに格納されている。   Here, templates for generating assertions are prepared for each measurement location. In addition, a case where the latter stage of the asynchronous path is an FSM (Finite State Machine) or a counter and a case where it is not so are prepared separately. The template for generating the assertion is stored in the template storage unit 114b.

シナリオ調整用シミュレーション実行部116は、非同期リスト、および、調整用シナリオを用いて、非同期パス遅延およびクロックジッターを付与しない条件下で、検証対象のシミュレーションを実行する。そして、シナリオ調整用シミュレーション実行部116は、シミュレーション結果に基づいて、調整用シナリオを調整してより精度の高い検証が可能な固定シナリオを生成し、生成した固定シナリオを固定シナリオ格納部117に格納する。   The scenario adjustment simulation execution unit 116 executes a simulation to be verified using the asynchronous list and the adjustment scenario under the condition that asynchronous path delay and clock jitter are not given. Then, the scenario adjustment simulation execution unit 116 adjusts the adjustment scenario based on the simulation result to generate a fixed scenario that can be verified with higher accuracy, and stores the generated fixed scenario in the fixed scenario storage unit 117. To do.

また、シナリオ調整用シミュレーション実行部116は、シミュレーション実行中、アサーション格納部115に格納されたアサーションを用いて、アサーション抽出生成部114が特定した測定箇所の活性化回数を測定する。そして、シナリオ調整用シミュレーション実行部116は、測定結果を回数基準値として回数基準値格納部118に格納する。   In addition, the scenario adjustment simulation execution unit 116 measures the number of times of activation of the measurement location specified by the assertion extraction generation unit 114 using the assertion stored in the assertion storage unit 115 during the simulation. Then, the scenario adjustment simulation executing unit 116 stores the measurement result in the frequency reference value storage unit 118 as the frequency reference value.

非同期シミュレーション実行部119は、非同期リスト、および、固定シナリオ格納部117に格納された固定シナリオを用いて、非同期パス遅延およびクロックジッターをランダムに付与した条件下で、検証対象のシミュレーション(非同期シミュレーションとも称す)を所定回数(例えば、1000回)実行する。   The asynchronous simulation execution unit 119 uses the asynchronous list and the fixed scenario stored in the fixed scenario storage unit 117 to perform a simulation to be verified (also referred to as an asynchronous simulation) under a condition in which asynchronous path delay and clock jitter are randomly assigned. Is executed a predetermined number of times (for example, 1000 times).

また、非同期シミュレーション実行部119は、非同期シミュレーション実行中、アサーション格納部115に格納されたアサーションを用いて、アサーション抽出生成部114が特定した測定箇所の活性化回数を測定する。そして、非同期シミュレーション実行部119は、測定結果を回数測定結果として回数測定結果格納部120に格納する。測定結果は、1回の非同期シミュレーションの実行につき、1つ得られるものである。   Further, the asynchronous simulation execution unit 119 measures the number of times of activation of the measurement location specified by the assertion extraction generation unit 114 using the assertion stored in the assertion storage unit 115 during execution of the asynchronous simulation. And the asynchronous simulation execution part 119 stores a measurement result in the frequency | count measurement result storage part 120 as a frequency | count measurement result. One measurement result is obtained for each asynchronous simulation.

判定部121は、回数測定結果格納部120に格納された回数測定結果と、回数基準値格納部118に格納された回数基準値とを比較する。そして、判定部121は、有意な差がある測定箇所がない場合には、回数測定結果を「OK」と判定し、有意な差がある測定箇所がある場合には、回数測定結果を「ERROR」と判定する。そして、判定部121は、判定結果を判定結果リストにリストアップする。判定結果リスト格納部122は、判定結果リストを格納する。   The determination unit 121 compares the number measurement result stored in the number measurement result storage unit 120 with the number reference value stored in the number reference value storage unit 118. Then, the determination unit 121 determines that the number measurement result is “OK” when there is no measurement point with a significant difference, and when there is a measurement point with a significant difference, the determination unit 121 sets the number measurement result as “ERROR”. Is determined. Then, the determination unit 121 lists the determination result in the determination result list. The determination result list storage unit 122 stores a determination result list.

次に、非同期リスト格納部113に格納される非同期リストのデータ構造について説明する。
図4は、第2の実施の形態に係る非同期リストの一例を示す図である。
Next, the data structure of the asynchronous list stored in the asynchronous list storage unit 113 will be described.
FIG. 4 is a diagram illustrating an example of the asynchronous list according to the second embodiment.

非同期リスト130には、非同期パス毎に、送信側フリップフロップ(FF:Flip Flop)回路の出力信号131と、送信側フリップフロップ回路のクロック132と、受信側フリップフロップ回路の出力信号133と、受信側フリップフロップ回路のクロック134と、リコンバージェンス(Reconvergence)信号135と、非同期パスの構造タイプ136とが格納されている。   The asynchronous list 130 includes, for each asynchronous path, an output signal 131 of a transmission side flip-flop (FF) circuit, a clock 132 of a transmission side flip-flop circuit, an output signal 133 of a reception side flip-flop circuit, and reception. A clock 134 of the side flip-flop circuit, a reconvergence signal 135, and an asynchronous path structure type 136 are stored.

非同期パスの構造タイプとしては、2DFF,1DFF、コンビネーション、リコンバージェンス、DMUXがある。ここで、コンビネーションとは、非同期パスの送信側フリップフロップ回路と受信側フリップフロップ回路との間に、組合せ論理回路が接続されている構造である。   As the structure type of the asynchronous path, there are 2DFF, 1DFF, combination, reconvergence, and DMUX. Here, the combination is a structure in which a combinational logic circuit is connected between a transmission-side flip-flop circuit and a reception-side flip-flop circuit in an asynchronous path.

リコンバージェンスとは、複数の非同期パスの出力先が、1つのフリップフロップ回路に収斂している構造である。DMUXは、多ビット信号の非同期パス(データパスとも称す)と、シングルビット信号の非同期パス(制御パスとも称す)の組合せであり、制御パスの受信側フリップフロップ回路が、データパスの受信側フリップフロップ回路の入力の制御に用いられている構造である。   Reconvergence is a structure in which output destinations of a plurality of asynchronous paths are converged on one flip-flop circuit. DMUX is a combination of an asynchronous path (also referred to as a data path) of a multi-bit signal and an asynchronous path (also referred to as a control path) of a single bit signal, and a reception side flip-flop circuit of the control path is a reception side flip-flop of the data path. This is a structure used to control the input of a circuit.

次に、アサーション生成用リスト格納部114aに格納されるアサーション生成用リストのデータ構造について説明する。
図5は、第2の実施の形態に係るアサーション生成用リストの一例を示す図である。
Next, the data structure of the assertion generation list stored in the assertion generation list storage unit 114a will be described.
FIG. 5 is a diagram illustrating an example of an assertion generation list according to the second embodiment.

アサーション生成用リスト140には、非同期パス毎に、測定箇所「A」、「B」、「D」、「E」、「H」を示す信号141〜145と、測定箇所「A」、「B」のクロック146,147と、測定箇所「B−D」間(「D−E」間)の信号伝播所要サイクル数148と、非同期パスの後段がFSMまたはカウンタであることを示すフラグ149とが格納されている。   The assertion generation list 140 includes signals 141 to 145 indicating measurement points “A”, “B”, “D”, “E”, “H” and measurement points “A”, “B” for each asynchronous path. ”, Clock frequency 148 required for signal propagation between measurement points“ BD ”(between“ DE ”), and a flag 149 indicating that the subsequent stage of the asynchronous path is an FSM or a counter. Stored.

次に、テンプレート格納部114bに格納されるアサーション生成用のテンプレートについて説明する。
図6は、第2の実施の形態に係るアサーション生成用のテンプレートの一例を示す図である。
Next, an assertion generation template stored in the template storage unit 114b will be described.
FIG. 6 is a diagram illustrating an example of an assertion generation template according to the second embodiment.

テンプレート150は、測定箇所「A」および「D」に対応したものである。テンプレート150中の下線部分は、情報の埋め込み欄である。例えば、テンプレート150には、測定箇所が埋め込まれる埋め込み欄151〜153と、信号伝播所要サイクル数が埋め込まれる埋め込み欄154とが含まれている。   The template 150 corresponds to the measurement locations “A” and “D”. The underlined portion in the template 150 is an information embedding column. For example, the template 150 includes embedding fields 151 to 153 in which measurement locations are embedded, and an embedding field 154 in which the number of required signal propagation cycles is embedded.

次に、アサーション格納部115に格納されるアサーションについて説明する。
図7は、第2の実施の形態に係るアサーションの一例を示す図である。
アサーション160は、図6に示したテンプレート150に対応したものである。
Next, the assertion stored in the assertion storage unit 115 will be described.
FIG. 7 is a diagram illustrating an example of an assertion according to the second embodiment.
The assertion 160 corresponds to the template 150 shown in FIG.

次に、判定結果リスト格納部122に格納される判定結果リストについて説明する。
図8は、第2の実施の形態に係る判定結果リストの一例を示す図である。
判定結果リスト170には、実施されたシミュレーション毎に、「OK」または「ERROR」の判定結果171が格納されている。
Next, the determination result list stored in the determination result list storage unit 122 will be described.
FIG. 8 is a diagram illustrating an example of a determination result list according to the second embodiment.
The determination result list 170 stores a determination result 171 of “OK” or “ERROR” for each simulation performed.

次に、検証装置100による検証手順について説明する。
図9は、第2の実施の形態に係る検証手順の一例を示すフローチャートである。
[ステップS11]非同期パス抽出部112が、検証対象格納部111に格納された検証対象から、非同期パスの信号および非同期パスの構造タイプを抽出して、非同期リストに格納する。
Next, a verification procedure performed by the verification apparatus 100 will be described.
FIG. 9 is a flowchart illustrating an example of a verification procedure according to the second embodiment.
[Step S11] The asynchronous path extraction unit 112 extracts the asynchronous path signal and the asynchronous path structure type from the verification target stored in the verification target storage unit 111, and stores them in the asynchronous list.

[ステップS12]アサーション抽出生成部114が、検証対象に対する測定箇所を特定し、特定した測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成し、生成したアサーションをアサーション格納部115に格納する。   [Step S12] The assertion extraction generation unit 114 specifies a measurement location for the verification target, generates an assertion for measuring the number of times of activation of the specified measurement location at a predetermined timing, and stores the generated assertion in the assertion storage unit 115 To do.

[ステップS13]シナリオ調整用シミュレーション実行部116が、非同期リスト、および、調整用シナリオを用いて、非同期パス遅延およびクロックジッターを付与しない条件下で、検証対象のシミュレーションを実行する。   [Step S13] The scenario adjustment simulation execution unit 116 uses the asynchronous list and the adjustment scenario to execute a simulation to be verified under the condition that asynchronous path delay and clock jitter are not given.

そして、シナリオ調整用シミュレーション実行部116は、シミュレーション結果に基づいて、固定シナリオを生成し、生成した固定シナリオを固定シナリオ格納部117に格納する。   Then, the scenario adjustment simulation execution unit 116 generates a fixed scenario based on the simulation result, and stores the generated fixed scenario in the fixed scenario storage unit 117.

また、シナリオ調整用シミュレーション実行部116は、シミュレーション実行中、アサーション格納部115に格納されたアサーションを用いて、アサーション抽出生成部114が特定した測定箇所の活性化回数を測定する。そして、シナリオ調整用シミュレーション実行部116は、測定結果を回数基準値として回数基準値格納部118に格納する。   In addition, the scenario adjustment simulation execution unit 116 measures the number of times of activation of the measurement location specified by the assertion extraction generation unit 114 using the assertion stored in the assertion storage unit 115 during the simulation. Then, the scenario adjustment simulation executing unit 116 stores the measurement result in the frequency reference value storage unit 118 as the frequency reference value.

[ステップS14]非同期シミュレーション実行部119が、非同期リスト、および、固定シナリオ格納部117に格納された固定シナリオを用いて、非同期シミュレーションを所定回数実行する。   [Step S14] The asynchronous simulation execution unit 119 executes the asynchronous simulation a predetermined number of times using the asynchronous list and the fixed scenario stored in the fixed scenario storage unit 117.

また、非同期シミュレーション実行部119は、非同期シミュレーション実行中、アサーション格納部115に格納されたアサーションを用いて、アサーション抽出生成部114が特定した測定箇所の活性化回数を測定する。そして、非同期シミュレーション実行部119は、測定結果を回数測定結果として回数測定結果格納部120に格納する。   Further, the asynchronous simulation execution unit 119 measures the number of times of activation of the measurement location specified by the assertion extraction generation unit 114 using the assertion stored in the assertion storage unit 115 during execution of the asynchronous simulation. And the asynchronous simulation execution part 119 stores a measurement result in the frequency | count measurement result storage part 120 as a frequency | count measurement result.

[ステップS15]判定部121が、回数測定結果格納部120に格納された回数測定結果と、回数基準値格納部118に格納された回数基準値とを比較する。そして、判定部121は、判定結果を判定結果リストに格納して処理を終了する。   [Step S <b> 15] The determination unit 121 compares the number measurement result stored in the number measurement result storage unit 120 with the number reference value stored in the number reference value storage unit 118. And the determination part 121 stores a determination result in a determination result list | wrist, and complete | finishes a process.

次に、図9のステップS12のアサーション生成手順について詳細に説明する。
図10、図11は、第2の実施の形態に係るアサーション生成手順の一例を示すフローチャートである。まず、図10を用いて説明する。
Next, the assertion generation procedure in step S12 of FIG. 9 will be described in detail.
10 and 11 are flowcharts illustrating an example of an assertion generation procedure according to the second embodiment. First, it demonstrates using FIG.

[ステップS21]アサーション抽出生成部114が、非同期リスト格納部113の非同期リストから非同期パスを1つ選択する。
[ステップS22]アサーション抽出生成部114が、選択した非同期パスに対応する送信側フリップフロップ回路の出力信号を非同期リストから抽出し、測定箇所「A」としてアサーション生成用リストに格納する。
[Step S <b> 21] The assertion extraction generation unit 114 selects one asynchronous path from the asynchronous list in the asynchronous list storage unit 113.
[Step S22] The assertion extraction / generation unit 114 extracts the output signal of the transmission-side flip-flop circuit corresponding to the selected asynchronous path from the asynchronous list, and stores it as the measurement location “A” in the assertion generation list.

[ステップS23]アサーション抽出生成部114が、選択した非同期パスに対応する受信側フリップフロップ回路の出力信号を非同期リストから抽出し、測定箇所「B」としてアサーション生成用リストに格納する。   [Step S23] The assertion extraction / generation unit 114 extracts the output signal of the reception-side flip-flop circuit corresponding to the selected asynchronous path from the asynchronous list, and stores it as the measurement location “B” in the assertion generation list.

[ステップS24]アサーション抽出生成部114が、測定箇所「B」を起点として、出力先信号抽出処理を実行し、終点および起点−終点信号伝播所要サイクル数を検出する。   [Step S24] The assertion extraction / generation unit 114 executes output destination signal extraction processing from the measurement location “B” as a starting point, and detects the end point and the number of required cycles of starting point-ending point signal propagation.

[ステップS25]アサーション抽出生成部114が、出力先信号抽出処理により検出した終点を、測定箇所「D」としてアサーション生成用リストに格納する。
[ステップS26]アサーション抽出生成部114が、出力先信号抽出処理により検出した起点−終点信号伝播所要サイクル数を、測定箇所「B−D」間の信号伝播所要サイクル数としてアサーション生成用リストに格納する。
[Step S25] The assertion extraction / generation unit 114 stores the end point detected by the output signal extraction process in the assertion generation list as the measurement location “D”.
[Step S26] The number of required start-end signal propagation cycles detected by the output signal extraction process by the assertion extraction / generation unit 114 is stored in the assertion generation list as the number of required signal propagation cycles between the measurement points “BD”. To do.

[ステップS27]アサーション抽出生成部114が、測定箇所「D」に対して、FSM有無の判定処理を実行する。
[ステップS28]アサーション抽出生成部114が、選択した非同期パスの構造タイプを非同期リストから抽出し、抽出した構造タイプがコンビネーションであるかどうかを判定する。コンビネーションである場合、アサーション抽出生成部114は、処理をステップS29に進める。コンビネーションではない場合、アサーション抽出生成部114は、処理をステップS30に進める。
[Step S <b> 27] The assertion extraction / generation unit 114 executes the FSM presence / absence determination process for the measurement location “D”.
[Step S28] The assertion extraction / generation unit 114 extracts the structure type of the selected asynchronous path from the asynchronous list, and determines whether or not the extracted structure type is a combination. If it is a combination, the assertion extraction / generation unit 114 proceeds with the process to step S29. When it is not a combination, the assertion extraction generation unit 114 proceeds with the process to step S30.

[ステップS29]アサーション抽出生成部114が、測定箇所「H」の抽出処理を実行する。
[ステップS30]アサーション抽出生成部114が、測定箇所「D」に対して、リコンバージェンスレジスタ判定処理を実行する。
[Step S29] The assertion extraction / generation unit 114 performs an extraction process of the measurement location “H”.
[Step S30] The assertion extraction / generation unit 114 performs reconvergence register determination processing on the measurement location “D”.

ここからは、図11を用いて説明を行う。
[ステップS41]アサーション抽出生成部114が、リコンバージェンスレジスタ判定処理の結果、リコンバージェンスレジスタと判定されたかどうかを判定する。リコンバージェンスレジスタと判定された場合、アサーション抽出生成部114は、処理をステップS42に進める。リコンバージェンスレジスタと判定されなかった場合、アサーション抽出生成部114は、処理をステップS46に進める。
From here, it demonstrates using FIG.
[Step S41] The assertion extraction generation unit 114 determines whether or not the reconvergence register is determined as a result of the reconvergence register determination process. When the reconvergence register is determined, the assertion extraction generation unit 114 proceeds with the process to step S42. If it is not determined to be a reconvergence register, the assertion extraction generation unit 114 proceeds with the process to step S46.

[ステップS42]アサーション抽出生成部114が、測定箇所「D」を起点として、出力先信号抽出処理を実行し、終点および起点−終点信号伝播所要サイクル数を検出する。   [Step S42] The assertion extraction / generation unit 114 executes the output destination signal extraction process from the measurement location “D” as a starting point, and detects the end point and the number of cycles required for starting point-ending point signal propagation.

[ステップS43]アサーション抽出生成部114が、出力先信号抽出処理により検出した終点を、測定箇所「E」としてアサーション生成用リストに格納する。
[ステップS44]アサーション抽出生成部114が、出力先信号抽出処理により検出した起点−終点信号伝播所要サイクル数を、測定箇所「D−E」間の信号伝播所要サイクル数としてアサーション生成用リストに格納する。
[Step S43] The assertion extraction / generation unit 114 stores the end point detected by the output signal extraction process in the assertion generation list as the measurement location “E”.
[Step S44] The number of required start-end signal propagation cycles detected by the output signal extraction process by the assertion extraction / generation unit 114 is stored in the assertion generation list as the required number of signal propagation cycles between the measurement points “DE”. To do.

[ステップS45]アサーション抽出生成部114が、測定箇所「E」に対して、FSM有無の判定処理を実行する。
[ステップS46]アサーション抽出生成部114が、非同期リストから非同期パスを全て選択したかどうかを判定する。全て選択した場合、アサーション抽出生成部114は、処理をステップS47に進める。全て選択していない場合、アサーション抽出生成部114は、処理をステップS21に戻す。
[Step S <b> 45] The assertion extraction / generation unit 114 performs the FSM presence / absence determination process on the measurement location “E”.
[Step S46] The assertion extraction generation unit 114 determines whether all asynchronous paths have been selected from the asynchronous list. When all are selected, the assertion extraction generation unit 114 proceeds with the process to step S47. When not all are selected, the assertion extraction generation unit 114 returns the process to step S21.

[ステップS47]アサーション抽出生成部114が、アサーション生成用リストに格納された測定箇所および信号伝播所要サイクル数を、テンプレート格納部114bに格納されたアサーション生成用のテンプレートに埋め込むことで、アサーションを生成し、生成したアサーションをアサーション格納部115に格納する。   [Step S47] The assertion extraction / generation unit 114 generates an assertion by embedding the measurement location and the number of required signal propagation cycles stored in the assertion generation list in the template for assertion generation stored in the template storage unit 114b. Then, the generated assertion is stored in the assertion storage unit 115.

[ステップS48]アサーション抽出生成部114が、アサーション生成用リストに情報が格納された非同期パスの全てについて、アサーションを生成したかどうかを判定する。非同期パスの全てについてアサーションを生成した場合、アサーション抽出生成部114は、処理を終了する。アサーションを生成していない非同期パスがある場合、アサーション抽出生成部114は、処理をステップS47に戻す。   [Step S48] The assertion extraction / generation unit 114 determines whether assertions have been generated for all of the asynchronous paths whose information is stored in the assertion generation list. When the assertion is generated for all of the asynchronous paths, the assertion extraction generation unit 114 ends the process. If there is an asynchronous path for which no assertion has been generated, the assertion extraction generation unit 114 returns the process to step S47.

次に、図10のステップS24および図11のステップS42の出力先信号抽出処理について詳細に説明する。
図12は、第2の実施の形態に係る出力信号抽出処理の一例を示すフローチャートである。
Next, the output destination signal extraction processing in step S24 in FIG. 10 and step S42 in FIG. 11 will be described in detail.
FIG. 12 is a flowchart illustrating an example of an output signal extraction process according to the second embodiment.

[ステップS51]アサーション抽出生成部114が、検証対象を解析し、起点の次段に接続されているフリップフロップ回路および出力端子の出力信号を、終点として検出する。   [Step S51] The assertion extraction / generation unit 114 analyzes the verification target, and detects the output signal of the flip-flop circuit connected to the next stage of the starting point and the output terminal as the end point.

[ステップS52]アサーション抽出生成部114が、検出した終点の1つを選択する。
[ステップS53]アサーション抽出生成部114が、選択した終点が出力端子の出力信号かどうかを判定する。出力端子の出力信号である場合、アサーション抽出生成部114は、処理をステップS57に進める。出力端子の出力信号ではない場合、アサーション抽出生成部114は、処理をステップS54に進める。
[Step S52] The assertion extraction / generation unit 114 selects one of the detected end points.
[Step S53] The assertion extraction generation unit 114 determines whether the selected end point is an output signal of the output terminal. When the output signal is the output signal of the output terminal, the assertion extraction generation unit 114 proceeds with the process to step S57. If it is not the output signal of the output terminal, the assertion extraction / generation unit 114 proceeds with the process to step S54.

[ステップS54]アサーション抽出生成部114が、検証対象を解析し、起点から選択した終点に至る信号経路に接続されている組合せ論理回路を抽出する。
[ステップS55]アサーション抽出生成部114が、起点から選択した終点に至る信号経路に組合せ論理回路が抽出されたかどうかを判定する。組合せ論理回路が抽出された場合、アサーション抽出生成部114は、処理をステップS57に進める。組合せ論理回路が抽出されなかった場合、アサーション抽出生成部114は、処理をステップS56に進める。
[Step S54] The assertion extraction / generation unit 114 analyzes the verification target and extracts the combinational logic circuit connected to the signal path from the starting point to the selected end point.
[Step S55] The assertion extraction / generation unit 114 determines whether a combinational logic circuit has been extracted from the signal path from the starting point to the selected end point. When the combinational logic circuit is extracted, the assertion extraction / generation unit 114 proceeds with the process to step S57. When the combinational logic circuit is not extracted, the assertion extraction generation unit 114 proceeds with the process to step S56.

[ステップS56]アサーション抽出生成部114が、選択した終点を起点にして、検証対象を解析し、起点の次段に接続されているフリップフロップ回路および出力端子の出力信号を、終点として検出し、処理をステップS52に戻す。   [Step S56] The assertion extraction / generation unit 114 analyzes the verification target with the selected end point as the starting point, detects the flip-flop circuit connected to the next stage of the starting point and the output signal of the output terminal as the end point, The process returns to step S52.

[ステップS57]アサーション抽出生成部114が、検証対象を解析し、起点から選択した終点に至る信号経路に接続されているフリップフロップ回路の数をカウントし、カウント結果を、起点−終点信号伝播所要サイクル数として検出する。   [Step S57] The assertion extraction / generation unit 114 analyzes the verification target, counts the number of flip-flop circuits connected to the signal path from the start point to the selected end point, and outputs the count result as the start point-end point signal propagation requirement. Detect as cycle number.

[ステップS58]アサーション抽出生成部114が、検出した全ての終点を選択したかどうかを判定する。全ての終点を選択した場合、アサーション抽出生成部114は、処理を終了する。選択していない終点がある場合、アサーション抽出生成部114は、処理をステップS52に戻す。   [Step S58] The assertion extraction generation unit 114 determines whether all detected end points have been selected. When all end points are selected, the assertion extraction generation unit 114 ends the process. If there is an unselected end point, the assertion extraction generation unit 114 returns the process to step S52.

次に、図10のステップS27および図11のステップS45のFSM有無の判定処理について詳細に説明する。
測定箇所D,Eについては、対応するフリップフロップ回路が、FSMまたはカウンタであるかどうかを判定する必要がある。測定箇所D,Eに対応するフリップフロップ回路がFSMまたはカウンタの場合、非同期パスから出力された信号に起因して、どのステートからどのステートに変化したかが重要である。
Next, the FSM presence / absence determination processing in step S27 in FIG. 10 and step S45 in FIG. 11 will be described in detail.
For measurement points D and E, it is necessary to determine whether the corresponding flip-flop circuit is an FSM or a counter. When the flip-flop circuit corresponding to the measurement points D and E is an FSM or a counter, it is important which state is changed from which state due to the signal output from the asynchronous path.

それは、どのステートをとるかによって、後段の動作する回路が異なってくるため、ただ「何らかの変化をした」という見方ではなく、「○○ステートから△△ステートへ変化した」という見方をしないと、意図した動作が発生したのか把握できないためである。なお、カウンタはFSMの一種として扱うことができる。   The circuit that operates in the subsequent stage differs depending on which state is taken, so it is not just a view that "changed something", but a view that "changed from XX state to △△ state" This is because it is impossible to grasp whether the intended operation has occurred. The counter can be handled as a kind of FSM.

図13は、第2の実施の形態に係るFSM有無の判定処理の一例を示すフローチャートである。
[ステップS61]アサーション抽出生成部114が、測定箇所の1つを選択する。
FIG. 13 is a flowchart illustrating an example of the FSM presence / absence determination process according to the second embodiment.
[Step S61] The assertion extraction / generation unit 114 selects one of the measurement points.

[ステップS62]アサーション抽出生成部114が、選択した測定箇所の信号ビット幅を、検証対象から抽出する。
[ステップS63]アサーション抽出生成部114が、抽出した信号ビット幅が2以上であるかどうかを判定する。信号ビット幅が2以上である場合、アサーション抽出生成部114は、処理をステップS64に進める。信号ビット幅が2以上ではない場合、アサーション抽出生成部114は、処理をステップS68に進める。
[Step S62] The assertion extraction / generation unit 114 extracts the signal bit width of the selected measurement location from the verification target.
[Step S63] The assertion extraction generator 114 determines whether the extracted signal bit width is 2 or more. When the signal bit width is 2 or more, the assertion extraction generation unit 114 proceeds with the process to step S64. If the signal bit width is not 2 or more, the assertion extraction / generation unit 114 proceeds with the process to step S68.

[ステップS64]アサーション抽出生成部114が、検証対象を解析し、選択した測定箇所の次段に接続されているフリップフロップ回路の出力信号を抽出する。
[ステップS65]アサーション抽出生成部114が、抽出した出力信号に、選択した測定箇所が含まれているかどうかを判定する。選択した測定箇所が含まれている場合、アサーション抽出生成部114は、処理をステップS66に進める。選択した測定箇所が含まれていない場合、アサーション抽出生成部114は、処理をステップS68に進める。
[Step S64] The assertion extraction generator 114 analyzes the verification target and extracts the output signal of the flip-flop circuit connected to the next stage of the selected measurement location.
[Step S65] The assertion extraction / generation unit 114 determines whether or not the selected output location includes the extracted output signal. If the selected measurement location is included, the assertion extraction generation unit 114 proceeds with the process to step S66. If the selected measurement location is not included, the assertion extraction generation unit 114 proceeds with the process to step S68.

[ステップS66]アサーション抽出生成部114が、選択した測定箇所に対応するフリップフロップ回路は、FSMであると判定する。
[ステップS67]アサーション抽出生成部114が、アサーション生成用リストに、非同期パスの後段がFSMまたはカウンタであることを示すフラグとして「True」を格納する。
[Step S66] The assertion extraction / generation unit 114 determines that the flip-flop circuit corresponding to the selected measurement location is an FSM.
[Step S67] The assertion extraction / generation unit 114 stores “True” in the assertion generation list as a flag indicating that the subsequent stage of the asynchronous path is an FSM or a counter.

[ステップS68]アサーション抽出生成部114が、選択した測定箇所に対応するフリップフロップ回路は、FSMではないと判定する。
[ステップS69]アサーション抽出生成部114が、アサーション生成用リストに、非同期パスの後段がFSMまたはカウンタではないことを示すフラグとして「False」を格納する。
[Step S68] The assertion extraction / generation unit 114 determines that the flip-flop circuit corresponding to the selected measurement location is not an FSM.
[Step S69] The assertion extraction / generation unit 114 stores “False” in the assertion generation list as a flag indicating that the subsequent stage of the asynchronous path is not FSM or a counter.

[ステップS70]アサーション抽出生成部114が、全ての測定箇所を選択したかどうかを判定する。全ての測定箇所を選択した場合、アサーション抽出生成部114は、処理を終了する。選択していない測定箇所がある場合、アサーション抽出生成部114は、処理をステップS61に戻す。   [Step S70] The assertion extraction generation unit 114 determines whether all measurement locations have been selected. When all the measurement locations are selected, the assertion extraction generation unit 114 ends the process. If there is a measurement location that has not been selected, the assertion extraction / generation unit 114 returns the process to step S61.

次に、図10のステップS29の測定箇所「H」の抽出処理について詳細に説明する。
図14は、第2の実施の形態に係る測定箇所の抽出処理の一例を示すフローチャートである。
Next, the measurement point “H” extraction process in step S29 of FIG. 10 will be described in detail.
FIG. 14 is a flowchart illustrating an example of the measurement location extraction processing according to the second embodiment.

[ステップS81]アサーション抽出生成部114が、検証対象を解析し、測定箇所「A」と測定箇所「B」との間に接続されている組合せ論理回路の入力信号を抽出する。
[ステップS82]アサーション抽出生成部114が、抽出した入力信号の1つを選択する。
[Step S81] The assertion extraction / generation unit 114 analyzes the verification target and extracts the input signal of the combinational logic circuit connected between the measurement location “A” and the measurement location “B”.
[Step S82] The assertion extraction generator 114 selects one of the extracted input signals.

[ステップS83]アサーション抽出生成部114が、選択した入力信号が測定箇所「A」であるかどうかを判定する。測定箇所「A」である場合、アサーション抽出生成部114は、処理をステップS88に進める。測定箇所「A」ではない場合、アサーション抽出生成部114は、処理をステップS84に進める。   [Step S83] The assertion extraction generator 114 determines whether the selected input signal is the measurement location “A”. When the measurement location is “A”, the assertion extraction / generation unit 114 proceeds with the process to step S88. If it is not the measurement location “A”, the assertion extraction / generation unit 114 proceeds with the process to step S84.

[ステップS84]アサーション抽出生成部114が、選択した入力信号が、フリップフロップ回路または入力端子の出力信号であるかどうかを判定する。フリップフロップ回路または入力端子の出力信号である場合、アサーション抽出生成部114は、処理をステップS85に進める。フリップフロップ回路または入力端子の出力信号ではない場合、アサーション抽出生成部114は、処理をステップS86に進める。   [Step S84] The assertion extraction generation unit 114 determines whether the selected input signal is a flip-flop circuit or an output signal of the input terminal. If the output signal is the output signal of the flip-flop circuit or the input terminal, the assertion extraction / generation unit 114 proceeds with the process to step S85. When it is not the output signal of the flip-flop circuit or the input terminal, the assertion extraction / generation unit 114 proceeds with the process to step S86.

[ステップS85]アサーション抽出生成部114が、選択した入力信号を、測定箇所「H」として、アサーション生成用リストに格納する。
[ステップS86]アサーション抽出生成部114が、検証対象を解析し、選択した入力信号の前段に接続されているフリップフロップ回路および入力端子の出力信号を抽出する。
[Step S85] The assertion extraction / generation unit 114 stores the selected input signal as a measurement location “H” in the assertion generation list.
[Step S86] The assertion extraction / generation unit 114 analyzes the verification target, and extracts the output signal of the flip-flop circuit connected to the previous stage of the selected input signal and the input terminal.

[ステップS87]アサーション抽出生成部114が、抽出したフリップフロップ回路および入力端子の出力信号を測定箇所「H」として、アサーション生成用リストに格納する。   [Step S87] The assertion extraction generation unit 114 stores the extracted flip-flop circuit and the output signal of the input terminal in the assertion generation list as the measurement location “H”.

[ステップS88]アサーション抽出生成部114が、全ての入力信号を選択したかどうかを判定する。全ての入力信号を選択した場合、アサーション抽出生成部114は、処理を終了する。選択していない入力信号がある場合、アサーション抽出生成部114は、処理をステップS82に戻す。   [Step S88] The assertion extraction generator 114 determines whether all input signals have been selected. When all the input signals are selected, the assertion extraction generation unit 114 ends the process. If there is an input signal that has not been selected, the assertion extraction / generation unit 114 returns the process to step S82.

次に、図10のステップS30のリコンバージェンスレジスタ判定処理について詳細に説明する。
図15は、第2の実施の形態に係るリコンバージェンスレジスタ判定処理の一例を示すフローチャートである。
Next, the reconvergence register determination process in step S30 of FIG. 10 will be described in detail.
FIG. 15 is a flowchart illustrating an example of the reconvergence register determination process according to the second embodiment.

[ステップS91]アサーション抽出生成部114が、測定箇所「D」の1つを選択する。
[ステップS92]アサーション抽出生成部114が、検証対象を解析し、測定箇所「D」に対応するフリップフロップ回路の前段に接続されているフリップフロップ回路および入力端子の出力信号を抽出する。
[Step S91] The assertion extraction generator 114 selects one of the measurement locations “D”.
[Step S92] The assertion extraction / generation unit 114 analyzes the verification target and extracts the output signal of the flip-flop circuit connected to the preceding stage of the flip-flop circuit corresponding to the measurement location “D” and the input terminal.

[ステップS93]アサーション抽出生成部114が、抽出した出力信号と一致する受信側フリップフロップ回路の出力信号があるかどうか、非同期リストを検索する。
[ステップS94]非同期リストを検索した結果、一致する受信側フリップフロップ回路の出力信号が存在した場合、アサーション抽出生成部114は、処理をステップS95に進める。一致するリコンバージェンス信号が存在しなかった場合、アサーション抽出生成部114は、処理をステップS96に進める。
[Step S93] The assertion extraction / generation unit 114 searches the asynchronous list to determine whether there is an output signal of the receiving flip-flop circuit that matches the extracted output signal.
[Step S94] As a result of searching the asynchronous list, if there is a matching output signal from the flip-flop circuit on the receiving side, the assertion extraction generator 114 advances the process to step S95. If there is no matching reconvergence signal, the assertion extraction / generation unit 114 proceeds with the process to step S96.

[ステップS95]アサーション抽出生成部114が、選択した測定箇所「D」に対応するフリップフロップ回路を、リコンバージェンスレジスタと判定する。
[ステップS96]アサーション抽出生成部114が、全ての測定箇所「D」を選択したかどうかを判定する。全ての測定箇所「D」を選択した場合、アサーション抽出生成部114は、処理を終了する。選択していない測定箇所「D」がある場合、アサーション抽出生成部114は、処理をステップS91に戻す。
[Step S95] The assertion extraction / generation unit 114 determines that the flip-flop circuit corresponding to the selected measurement location “D” is a reconvergence register.
[Step S96] The assertion extraction / generation unit 114 determines whether all measurement locations “D” have been selected. When all the measurement locations “D” are selected, the assertion extraction generation unit 114 ends the process. If there is an unselected measurement location “D”, the assertion extraction / generation unit 114 returns the process to step S91.

次に、図9のステップS15の判定の手順について詳細に説明する。
図16は、第2の実施の形態に係る判定の手順の一例を示すフローチャートである。
[ステップS101]判定部121が、回数測定結果格納部120に格納された回数測定結果の1つを選択する。
Next, the determination procedure in step S15 in FIG. 9 will be described in detail.
FIG. 16 is a flowchart illustrating an example of a determination procedure according to the second embodiment.
[Step S <b> 101] The determination unit 121 selects one of the number measurement results stored in the number measurement result storage unit 120.

[ステップS102]判定部121が、選択した回数測定結果を、回数基準値格納部118に格納された回数基準値と、「t」検定などの統計処理を用いて比較する。
[ステップS103]判定部121が、回数測定結果を回数基準値と比較した結果、有意な差を含む測定箇所があるかどうかを判定する。有意な差を含む測定箇所がある場合、判定部121は、処理をステップS105に進める。有意な差を含む測定箇所が全くない場合、判定部121は、処理をステップS104に進める。
[Step S102] The determination unit 121 compares the selected number measurement result with the number of times reference value stored in the number of times reference value storage unit 118 using a statistical process such as a “t” test.
[Step S103] As a result of comparing the number measurement result with the number reference value, the determination unit 121 determines whether there is a measurement location including a significant difference. When there is a measurement location including a significant difference, the determination unit 121 advances the process to step S105. When there is no measurement location including a significant difference, the determination unit 121 proceeds with the process to step S104.

[ステップS104]判定部121が、判定結果リストに、判定結果として「OK」を格納する。
[ステップS105]判定部121が、判定結果リストに、判定結果として「ERROR」を格納する。
[Step S104] The determination unit 121 stores “OK” as a determination result in the determination result list.
[Step S105] The determination unit 121 stores “ERROR” as a determination result in the determination result list.

[ステップS106]判定部121が、回数測定結果格納部120に格納された全ての回数測定結果を選択したかどうかを判定する。全ての回数測定結果を選択した場合、判定部121は、処理を終了する。選択していない回数測定結果がある場合、判定部121は、処理をステップS101に戻す。   [Step S <b> 106] The determination unit 121 determines whether all the number measurement results stored in the number measurement result storage unit 120 have been selected. When all the count measurement results are selected, the determination unit 121 ends the process. If there is a count measurement result that has not been selected, the determination unit 121 returns the process to step S101.

次に、アサーション抽出生成部114が特定する検証対象に対する測定箇所について、具体例1〜5を用いて説明する。
図17は、第2の実施の形態に係る具体例1の回路ブロックを示す図である。
Next, measurement points for the verification target specified by the assertion extraction / generation unit 114 will be described using specific examples 1 to 5.
FIG. 17 is a diagram illustrating a circuit block of specific example 1 according to the second embodiment.

回路ブロック210は、2DFFまたは1DFFの構造タイプを備える非同期パスを含む回路ブロックである。回路ブロック210は、異なるクロックドメインに属する、送信側フリップフロップ回路(sig0_s)と、受信側フリップフロップ回路(sig0_d)とを有している。   The circuit block 210 is a circuit block including an asynchronous path having a 2DFF or 1DFF structure type. The circuit block 210 includes a transmission side flip-flop circuit (sig0_s) and a reception side flip-flop circuit (sig0_d) belonging to different clock domains.

受信側フリップフロップ回路(sig0_d)の後段には、組合せ論理回路211を介してフリップフロップ回路(sig0_d_1)が接続されている。さらに、受信側フリップフロップ回路(sig0_d)の後段には、組合せ論理回路212を介してフリップフロップ回路(sig0_d_2)が接続されている。   The flip-flop circuit (sig0_d_1) is connected to the subsequent stage of the reception-side flip-flop circuit (sig0_d) via the combinational logic circuit 211. Further, the flip-flop circuit (sig0_d_2) is connected to the subsequent stage of the reception-side flip-flop circuit (sig0_d) via the combinational logic circuit 212.

さらに、受信側フリップフロップ回路(sig0_d)の後段には、組合せ論理回路を介さずにフリップフロップ回路(sig0_d_3)が接続されている。フリップフロップ回路(sig0_d_3)の後段には、組合せ論理回路213を介してフリップフロップ回路(sig0_d_4)が接続されている。   Further, the flip-flop circuit (sig0_d_3) is connected to the subsequent stage of the reception-side flip-flop circuit (sig0_d) without passing through the combinational logic circuit. A flip-flop circuit (sig0_d_4) is connected to the subsequent stage of the flip-flop circuit (sig0_d_3) through a combinational logic circuit 213.

回路ブロック210では、送信側フリップフロップ回路(sig0_s)の出力信号214が測定箇所「A」とされ、受信側フリップフロップ回路(sig0_d)の出力信号215が測定箇所「B」とされる。さらに、回路ブロック210では、フリップフロップ回路(sig0_d_1)、(sig0_d_2)、(sig0_d_4)の出力信号216〜218が測定箇所「D」とされる。   In the circuit block 210, the output signal 214 of the transmission side flip-flop circuit (sig0_s) is set as the measurement location “A”, and the output signal 215 of the reception side flip-flop circuit (sig0_d) is set as the measurement location “B”. Further, in the circuit block 210, the output signals 216 to 218 of the flip-flop circuits (sig0_d_1), (sig0_d_2), and (sig0_d_4) are set as measurement points “D”.

また、出力信号216における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号217における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号218における測定箇所「B−D」間の信号伝播所要サイクル数は、「2」である。   Further, the required number of signal propagation cycles between measurement points “BD” in the output signal 216 is “1”, and the required number of signal propagation cycles between measurement points “BD” in the output signal 217 is “1”. The number of required signal propagation cycles between the measurement points “BD” in the output signal 218 is “2”.

なお、回路ブロック210は、DMUXを構成しないマルチビット信号も含む。この場合、測定箇所「A」は、ビット毎に分割して定義される。
図18は、第2の実施の形態に係る具体例2の回路ブロックを示す図である。
Note that the circuit block 210 also includes a multi-bit signal that does not constitute a DMUX. In this case, the measurement location “A” is defined by being divided for each bit.
FIG. 18 is a diagram illustrating a circuit block of a specific example 2 according to the second embodiment.

回路ブロック220は、コンビネーションの構造タイプを備える非同期パスを含む回路ブロックである。回路ブロック220は、異なるクロックドメインに属する、送信側フリップフロップ回路(sig1_s)と、受信側フリップフロップ回路(sig1_d)とを有している。   The circuit block 220 is a circuit block including an asynchronous path having a combination structure type. The circuit block 220 includes a transmission side flip-flop circuit (sig1_s) and a reception side flip-flop circuit (sig1_d) belonging to different clock domains.

送信側フリップフロップ回路(sig1_s)と受信側フリップフロップ回路(sig1_d)との間には、組合せ論理回路221が接続されている。組合せ論理回路221の前段には、送信側フリップフロップ回路(sig1_s)とは異なるクロックドメインに属するフリップフロップ回路(comb1)、(comb2)が接続されている。   A combinational logic circuit 221 is connected between the transmission side flip-flop circuit (sig1_s) and the reception side flip-flop circuit (sig1_d). In front of the combinational logic circuit 221, flip-flop circuits (comb1) and (comb2) belonging to a clock domain different from that of the transmission-side flip-flop circuit (sig1_s) are connected.

受信側フリップフロップ回路(sig1_d)の後段には、組合せ論理回路222を介してフリップフロップ回路(sig1_d_1)が接続されている。さらに、受信側フリップフロップ回路(sig1_d)の後段には、組合せ論理回路223を介してフリップフロップ回路(sig1_d_2)が接続されている。   The flip-flop circuit (sig1_d_1) is connected to the subsequent stage of the reception-side flip-flop circuit (sig1_d) via the combinational logic circuit 222. Further, the flip-flop circuit (sig1_d_2) is connected to the subsequent stage of the reception-side flip-flop circuit (sig1_d) via the combinational logic circuit 223.

さらに、受信側フリップフロップ回路(sig1_d)の後段には、組合せ論理回路を介さずにフリップフロップ回路(sig1_d_3)が接続されている。フリップフロップ回路(sig1_d_3)の後段には、組合せ論理回路224を介してフリップフロップ回路(sig1_d_4)が接続されている。   Further, the flip-flop circuit (sig1_d_3) is connected to the subsequent stage of the reception-side flip-flop circuit (sig1_d) without passing through the combinational logic circuit. A flip-flop circuit (sig1_d_4) is connected to the subsequent stage of the flip-flop circuit (sig1_d_3) through a combinational logic circuit 224.

回路ブロック220では、送信側フリップフロップ回路(sig1_s)の出力信号225が測定箇所「A」とされ、受信側フリップフロップ回路(sig1_d)の出力信号226が測定箇所「B」とされる。さらに、フリップフロップ回路(sig1_d_1)、(sig1_d_2)、(sig1_d_4)の出力信号227〜229が測定箇所「D」とされる。さらに、フリップフロップ回路(comb1)、(comb2)の出力信号230,231が測定箇所「H」とされる。   In the circuit block 220, the output signal 225 of the transmission side flip-flop circuit (sig1_s) is set as the measurement location “A”, and the output signal 226 of the reception side flip-flop circuit (sig1_d) is set as the measurement location “B”. Further, the output signals 227 to 229 of the flip-flop circuits (sig1_d_1), (sig1_d_2), and (sig1_d_4) are set as measurement points “D”. Further, the output signals 230 and 231 of the flip-flop circuits (comb1) and (comb2) are set to the measurement location “H”.

また、出力信号227における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号228における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号229における測定箇所「B−D」間の信号伝播所要サイクル数は、「2」である。   Further, the required number of signal propagation cycles between the measurement points “BD” in the output signal 227 is “1”, and the required number of signal propagation cycles between the measurement points “BD” in the output signal 228 is “1”. , And the required number of signal propagation cycles between the measurement points “BD” in the output signal 229 is “2”.

なお、回路ブロック220では、アサーションの生成において、測定箇所「H」の変化も含めてカバーアサーションを生成する。
図19は、第2の実施の形態に係る具体例3の回路ブロックを示す図である。
In the circuit block 220, in the generation of the assertion, the cover assertion is generated including the change of the measurement location “H”.
FIG. 19 is a diagram illustrating a circuit block of a specific example 3 according to the second embodiment.

回路ブロック240は、リコンバージェンスの構造タイプを備える非同期パスを含む回路ブロックである。回路ブロック240は、異なるクロックドメインに属する、送信側フリップフロップ回路(sig2_s)と、受信側フリップフロップ回路(sig2_d)とを有している。   The circuit block 240 is a circuit block including an asynchronous path having a reconvergence structure type. The circuit block 240 includes a transmission side flip-flop circuit (sig2_s) and a reception side flip-flop circuit (sig2_d) belonging to different clock domains.

さらに、受信側フリップフロップ回路(sig2_d)の後段には、組合せ論理回路241を介してフリップフロップ回路(sig4)が接続されている。組合せ論理回路241の前段には、他の非同期パスの受信側フリップフロップ回路(sig3_d)および送信側フリップフロップ回路(sig3_s)が接続されている。   Further, the flip-flop circuit (sig4) is connected to the subsequent stage of the reception-side flip-flop circuit (sig2_d) via the combinational logic circuit 241. The reception-side flip-flop circuit (sig3_d) and the transmission-side flip-flop circuit (sig3_s) of other asynchronous paths are connected to the preceding stage of the combinational logic circuit 241.

さらに、フリップフロップ回路(sig4)の後段には、組合せ論理回路242を介してフリップフロップ回路(sig4_d_1)が接続されている。さらに、フリップフロップ回路(sig4)の後段には、組合せ論理回路243を介してフリップフロップ回路(sig4_d_2)が接続されている。   Further, a flip-flop circuit (sig4_d_1) is connected to the subsequent stage of the flip-flop circuit (sig4) through a combinational logic circuit 242. Further, a flip-flop circuit (sig4_d_2) is connected to the subsequent stage of the flip-flop circuit (sig4) through a combinational logic circuit 243.

さらに、フリップフロップ回路(sig4)の後段には、組合せ論理回路を介さずにフリップフロップ回路(sig4_d_3)が接続されている。フリップフロップ回路(sig4_d_3)の後段には、組合せ論理回路244を介してフリップフロップ回路(sig4_d_4)が接続されている。   Further, the flip-flop circuit (sig4_d_3) is connected to the subsequent stage of the flip-flop circuit (sig4) without passing through the combinational logic circuit. A flip-flop circuit (sig4_d_4) is connected to the subsequent stage of the flip-flop circuit (sig4_d_3) through a combinational logic circuit 244.

回路ブロック240では、フリップフロップ回路(sig4)が、リコンバージェンスレジスタとされる。さらに、回路ブロック240では、送信側フリップフロップ回路(sig2_s)、(sig3_s)の出力信号245,246が測定箇所「A」とされ、受信側フリップフロップ回路(sig2_d),(sig3_d)の出力信号247,248が測定箇所「B」とされる。   In the circuit block 240, the flip-flop circuit (sig4) is a reconvergence register. Further, in the circuit block 240, the output signals 245 and 246 of the transmission side flip-flop circuits (sig2_s) and (sig3_s) are set as measurement points “A”, and the output signals 247 of the reception side flip-flop circuits (sig2_d) and (sig3_d) , 248 are measurement points “B”.

さらに、フリップフロップ回路(sig4)の出力信号249が測定箇所「D」とされる。さらに、フリップフロップ回路(sig4_d_1)、(sig4_d_2)、(sig4_d_4)の出力信号250〜252が測定箇所「E」とされる。   Further, the output signal 249 of the flip-flop circuit (sig4) is set as a measurement location “D”. Further, the output signals 250 to 252 of the flip-flop circuits (sig4_d_1), (sig4_d_2), and (sig4_d_4) are set as measurement points “E”.

また、出力信号250における測定箇所「D−E」間の信号伝播所要サイクル数は、「1」であり、出力信号251における測定箇所「D−E」間の信号伝播所要サイクル数は、「1」であり、出力信号252における測定箇所「D−E」間の信号伝播所要サイクル数は、「2」である。   Further, the required number of signal propagation cycles between the measurement points “DE” in the output signal 250 is “1”, and the required number of signal propagation cycles between the measurement points “DE” in the output signal 251 is “1”. The number of signal propagation cycles between the measurement points “DE” in the output signal 252 is “2”.

図20は、第2の実施の形態に係る具体例4の回路ブロックを示す図である。
回路ブロック260は、DMUXの構造タイプを備える非同期パスを含む回路ブロックである。回路ブロック260は、多ビット信号の非同期パスに含まれる、異なるクロックドメインに属する、送信側フリップフロップ回路(data_s)と、受信側フリップフロップ回路(data_d)とを有している。
FIG. 20 is a diagram illustrating a circuit block of a specific example 4 according to the second embodiment.
The circuit block 260 is a circuit block including an asynchronous path having a DMUX structure type. The circuit block 260 includes a transmission-side flip-flop circuit (data_s) and a reception-side flip-flop circuit (data_d) that belong to different clock domains and are included in an asynchronous path of a multi-bit signal.

さらに、回路ブロック260は、シングルビット信号の非同期パスに含まれる、異なるクロックドメインに属する、送信側フリップフロップ回路(ctrl_s)と、受信側フリップフロップ回路(ctrl_d)とを有している。受信側フリップフロップ回路(ctrl_d)は、受信側フリップフロップ回路(data_d)の入力の制御に用いられている。   Further, the circuit block 260 includes a transmission-side flip-flop circuit (ctrl_s) and a reception-side flip-flop circuit (ctrl_d) that belong to different clock domains and are included in the asynchronous path of the single bit signal. The reception side flip-flop circuit (ctrl_d) is used to control the input of the reception side flip-flop circuit (data_d).

受信側フリップフロップ回路(data_d)の後段には、組合せ論理回路261を介してフリップフロップ回路(data_d_1)が接続されている。受信側フリップフロップ回路(ctrl_d)の後段には、フリップフロップ回路(ctrl_d_1)が接続されている。さらに、フリップフロップ回路(ctrl_d_1)の後段には、組合せ論理回路262を介してフリップフロップ回路(ctrl_d_2)が接続されている。   A flip-flop circuit (data_d_1) is connected to the subsequent stage of the reception-side flip-flop circuit (data_d) through a combinational logic circuit 261. A flip-flop circuit (ctrl_d_1) is connected to the subsequent stage of the reception-side flip-flop circuit (ctrl_d). Further, the flip-flop circuit (ctrl_d_2) is connected to the subsequent stage of the flip-flop circuit (ctrl_d_1) through the combinational logic circuit 262.

回路ブロック260では、送信側フリップフロップ回路(data_s)、(ctrl_s)の出力信号263,264が測定箇所「A」とされる。さらに、受信側フリップフロップ回路(data_d)、(ctrl_d)の出力信号265,266が測定箇所「B」とされる。また、出力信号265は、測定箇所「D」ともされる。さらに、フリップフロップ回路(data_d_1)、(ctrl_d_2)の出力信号267,268が測定箇所「D」とされる。   In the circuit block 260, the output signals 263 and 264 of the transmission side flip-flop circuits (data_s) and (ctrl_s) are set as the measurement location “A”. Further, the output signals 265 and 266 of the reception side flip-flop circuits (data_d) and (ctrl_d) are set as the measurement location “B”. The output signal 265 is also referred to as a measurement location “D”. Further, the output signals 267 and 268 of the flip-flop circuits (data_d_1) and (ctrl_d_2) are set as measurement points “D”.

また、出力信号265における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号267における測定箇所「B−D」間の信号伝播所要サイクル数は、「1」であり、出力信号268における測定箇所「B−D」間の信号伝播所要サイクル数は、「2」である。   Further, the required number of signal propagation cycles between the measurement points “BD” in the output signal 265 is “1”, and the required number of signal propagation cycles between the measurement points “BD” in the output signal 267 is “1”. , And the required number of signal propagation cycles between the measurement points “BD” in the output signal 268 is “2”.

図21は、第2の実施の形態に係る具体例5の回路ブロックを示す図である。
回路ブロック270は、異なるクロックドメインに属する、送信側フリップフロップ回路(sig5_s)と、受信側フリップフロップ回路(sig5_d)とを有している。さらに、受信側フリップフロップ回路(sig5_d)の後段には、組合せ論理回路271を介してフリップフロップ回路(sig5_d_1)が接続されている。フリップフロップ回路(sig5_d_1)の出力信号274は多ビット信号であり、組合せ論理回路271を経由して、フリップフロップ回路(sig5_d_1)に再び入力されている。
FIG. 21 is a diagram illustrating a circuit block of a specific example 5 according to the second embodiment.
The circuit block 270 includes a transmission side flip-flop circuit (sig5_s) and a reception side flip-flop circuit (sig5_d) belonging to different clock domains. Further, the flip-flop circuit (sig5_d_1) is connected to the subsequent stage of the reception-side flip-flop circuit (sig5_d) via the combinational logic circuit 271. The output signal 274 of the flip-flop circuit (sig5_d_1) is a multi-bit signal and is input again to the flip-flop circuit (sig5_d_1) via the combinational logic circuit 271.

回路ブロック270では、送信側フリップフロップ回路(sig5_s)の出力信号272が測定箇所「A」とされ、受信側フリップフロップ回路(sig5_d)の出力信号273が測定箇所「B」とされる。さらに、回路ブロック270では、フリップフロップ回路(sig5_d_1)の出力信号274が測定箇所「D」とされる。また、測定箇所「D」は、FSMであるとされる。   In the circuit block 270, the output signal 272 of the transmission side flip-flop circuit (sig5_s) is set as the measurement location “A”, and the output signal 273 of the reception side flip-flop circuit (sig5_d) is set as the measurement location “B”. Further, in the circuit block 270, the output signal 274 of the flip-flop circuit (sig5_d_1) is set as a measurement location “D”. The measurement location “D” is assumed to be FSM.

以上説明してきたように、検証装置100は、非同期パスの構造タイプに基づいて検証対象に対する測定箇所を特定し、特定した測定箇所間の信号伝播所要サイクル数を検出する。さらに、検出した信号伝播所要サイクル数を用いて、特定した測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する。検証装置100は、非同期シミュレーションの実行中、生成したアサーションを用いて、特定した測定箇所の活性化回数を測定する。   As described above, the verification apparatus 100 identifies the measurement location for the verification target based on the structure type of the asynchronous path, and detects the required number of signal propagation cycles between the identified measurement locations. Further, using the detected number of required signal propagation cycles, an assertion for measuring the number of times of activation of the specified measurement location at a predetermined timing is generated. During the execution of the asynchronous simulation, the verification device 100 measures the number of times of activation of the specified measurement location using the generated assertion.

これによれば、非同期回路の活性化回数を選択的に測定することができ、検証時間を短縮することが可能となる。
さらに、検証装置100は、測定箇所別に用意されたアサーション生成用のテンプレートに、特定した測定箇所および検出した信号伝播所要サイクル数を埋め込むことで、測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する。
According to this, the number of times of activation of the asynchronous circuit can be selectively measured, and the verification time can be shortened.
Furthermore, the verification apparatus 100 measures the number of times of activation of the measurement location at a predetermined timing by embedding the specified measurement location and the number of required signal propagation cycles in the assertion generation template prepared for each measurement location. Generate an assertion.

これによれば、測定箇所に応じたテンプレートを選択することでアサーションを生成することができるため、複雑な処理を施すことなくアサーションを生成することが可能となる。   According to this, since an assertion can be generated by selecting a template corresponding to a measurement location, it is possible to generate an assertion without performing complicated processing.

さらに、検証装置100は、回数測定結果を、統計処理を用いて回数基準値と比較する。これによれば、判定の精度を向上させることが可能となる。
すなわち、非同期シミュレーション中、非同期パス遅延およびクロックジッターの影響で、パスの変化回数が多少変化する(ゆらぐ)ことがあるが、シナリオの意図から外れた動作になっていない場合もある。ここで、シナリオの意図から外れるとは、シミュレーションで動かすつもりであった機能が、動かなかったことを指す。
Furthermore, the verification apparatus 100 compares the count measurement result with the count reference value using statistical processing. According to this, it becomes possible to improve the accuracy of determination.
That is, during the asynchronous simulation, the number of path changes may slightly change (fluctuate) due to the influence of the asynchronous path delay and clock jitter, but the operation may not be out of the scenario. Here, deviating from the intention of the scenario means that the function that was intended to move in the simulation did not move.

回数測定結果を回数基準値と単純に一致比較する方法では、このようなシナリオの意図から外れた動作になっていない場合であっても、パスの変化回数が多少変化していれば、「ERROR」と判定されてしまう。しかしながら、検証装置100では、回数測定結果を統計処理を用いて回数基準値と比較するので、パスの変化回数が多少変化していても、シナリオの意図から外れた動作になっていない場合には、「OK」と判定することが可能となる。   In the method of simply comparing the number measurement result with the number reference value, even if the operation is not deviated from the intention of such a scenario, if the number of times the path changes slightly changes, “ERROR”. Is determined. However, since the verification device 100 compares the frequency measurement result with the frequency reference value using statistical processing, even if the path change frequency has changed slightly, if the operation does not deviate from the scenario intent. , “OK” can be determined.

[第3の実施の形態]
次に、第1の実施の形態の検証装置1をより具体的にした他の実施の形態を、第3の実施の形態として説明する。
[Third Embodiment]
Next, another embodiment in which the verification device 1 according to the first embodiment is made more specific will be described as a third embodiment.

図22は、第3の実施の形態に係る検証装置の機能の一例を示す図である。
検証装置100aは、第1の実施の形態の検証装置100に対して、シナリオ調整用シミュレーション実行部116、固定シナリオ格納部117、回数基準値格納部118、判定部121、判定結果リスト格納部122を削除し、回数目標値設定部180、ランダムシナリオ格納部181、回数目標値格納部182、シナリオ網羅性チェック部183、グループ平均値格納部184、網羅性判定結果リスト格納部185を追加したものに相当する。
FIG. 22 is a diagram illustrating an example of functions of the verification apparatus according to the third embodiment.
The verification apparatus 100a is different from the verification apparatus 100 according to the first embodiment in a scenario adjustment simulation execution unit 116, a fixed scenario storage unit 117, a number reference value storage unit 118, a determination unit 121, and a determination result list storage unit 122. Is added, and the number of times target value setting unit 180, the random scenario storage unit 181, the number of times target value storage unit 182, the scenario coverage check unit 183, the group average value storage unit 184, and the coverage determination result list storage unit 185 are added. It corresponds to.

回数目標値設定部180は、アサーション抽出生成部114が特定した測定箇所に対して、回数目標値を設定し、回数目標値格納部182に格納する。回数目標値は、非同期シミュレーションにおいて期待する最低限の変化回数である。回数目標値は、例えば、「1回」と設定される。また、回数目標値は、外部から設定することもできる。   The number-of-times target value setting unit 180 sets a number-of-times target value for the measurement location specified by the assertion extraction generation unit 114 and stores the number of times in the number-of-times target value storage unit 182. The target number of times is the minimum number of changes expected in the asynchronous simulation. The target number of times is set to “1 time”, for example. The target number of times can also be set from the outside.

ランダムシナリオ181には、ランダムシナリオが格納されている。非同期シミュレーション実行部119は、このランダムシナリオを用いて、検証対象の非同期シミュレーションを実行する。   The random scenario 181 stores a random scenario. The asynchronous simulation execution unit 119 executes an asynchronous simulation to be verified using this random scenario.

シナリオ網羅性チェック部183は、回数測定結果格納部120に格納された回数測定結果を、活性化回数に基づいて複数のグループに分類し、各グループの回数測定結果の平均値を、回数目標値182に格納された回数目標値と比較する。各グループの回数測定結果の平均値は、グループ平均値格納部184に格納される。   The scenario completeness check unit 183 classifies the frequency measurement results stored in the frequency measurement result storage unit 120 into a plurality of groups based on the number of activations, and calculates the average value of the frequency measurement results of each group as the frequency target value. Compare with the target number of times stored in 182. The average value of the count measurement results of each group is stored in the group average value storage unit 184.

そして、シナリオ網羅性チェック部183は、測定箇所のそれぞれについて、複数のグループのうち少なくとも1つのグループの回数測定結果の平均値が、回数目標値を満たしているかどうかを判定する。さらに、シナリオ網羅性チェック部183は、判定結果を網羅性判定結果リストに格納する。網羅性判定結果リストは、網羅性判定結果リスト格納部185に格納される。   Then, the scenario completeness check unit 183 determines whether or not the average value of the number measurement results of at least one group among the plurality of groups satisfies the number target value for each measurement location. Further, the scenario completeness check unit 183 stores the determination result in the comprehensiveness determination result list. The comprehensiveness determination result list is stored in the comprehensiveness determination result list storage unit 185.

なお、検証装置100aの処理機能は、図2に示したハードウェアにより実現することができる。
次に、網羅性判定結果リストのデータ構造について説明する。
The processing function of the verification device 100a can be realized by the hardware shown in FIG.
Next, the data structure of the comprehensiveness determination result list will be described.

図23は、第3の実施の形態に係る網羅性判定結果リストの一例を示す図である。
網羅性判定結果リスト280には、非同期パス毎に、測定箇所「B」、「D」、「E」を示す信号281〜283と、測定箇所「B」のクロック284と、非同期パスの後段がFSMまたはカウンタであることを示すフラグ285と、FSMまたはカウンタの遷移状態286とが格納されている。
FIG. 23 is a diagram illustrating an example of a completeness determination result list according to the third embodiment.
In the comprehensiveness determination result list 280, for each asynchronous path, signals 281 to 283 indicating measurement points “B”, “D”, and “E”, a clock 284 of the measurement point “B”, and a subsequent stage of the asynchronous path are displayed. A flag 285 indicating the FSM or counter and a transition state 286 of the FSM or counter are stored.

さらに、網羅性判定結果リスト280には、各測定箇所に対して、回数目標値287と、各グループの回数測定結果の平均値288,289と、各グループの判定結果290,291と、全グループの判定結果をマージした判定結果292とが格納されている。なお、図中の「ERR」は、「ERROR」を意図する。   Further, the comprehensiveness determination result list 280 includes, for each measurement location, a target number of times 287, average values 288 and 289 of the number measurement results of each group, determination results 290 and 291 of each group, and all groups. The determination result 292 obtained by merging the determination results is stored. Note that “ERR” in the figure is intended to be “ERROR”.

次に、シナリオ網羅性チェック部183による判定手順について説明する。
図24、図25は、第3の実施の形態に係る判定手順の一例を示すフローチャートである。まず、図24を用いて説明を行う。
Next, the determination procedure by the scenario completeness check unit 183 will be described.
24 and 25 are flowcharts illustrating an example of a determination procedure according to the third embodiment. First, description will be made with reference to FIG.

[ステップS111]シナリオ網羅性チェック部183が、回数測定結果格納部120から、回数測定結果の1つを選択する。
[ステップS112]シナリオ網羅性チェック部183が、N(作成済みグループ数)が、「0」であるかどうかを判定する。「0」である場合、シナリオ網羅性チェック部183は、処理をステップS113に進める。「0」ではない場合、シナリオ網羅性チェック部183は、処理をステップS114に進める。
[Step S <b> 111] The scenario completeness check unit 183 selects one of the number measurement results from the number measurement result storage unit 120.
[Step S112] The scenario completeness check unit 183 determines whether N (number of created groups) is “0”. When it is “0”, the scenario completeness check unit 183 advances the processing to step S113. When it is not “0”, the scenario completeness check unit 183 advances the processing to step S114.

[ステップS113]シナリオ網羅性チェック部183が、選択した回数測定結果を、グループ「1」の平均値とする。
[ステップS114]シナリオ網羅性チェック部183が、n(グループ番号)を「1」とする。
[Step S113] The scenario completeness check unit 183 sets the selected count measurement result as the average value of the group “1”.
[Step S114] The scenario completeness check unit 183 sets n (group number) to “1”.

[ステップS115]シナリオ網羅性チェック部183が、選択した回数測定結果を、測定箇所毎に、グループnの平均値と比較する。比較には、例えば、t検討などの統計処理が用いられる。   [Step S115] The scenario completeness check unit 183 compares the selected count measurement result with the average value of the group n for each measurement location. For the comparison, for example, statistical processing such as t examination is used.

[ステップS116]選択した回数測定結果をグループnの平均値と比較した結果、有意な差がある測定箇所がある場合、シナリオ網羅性チェック部183は、処理をステップS118に進める。有意な差がある測定箇所が全くない場合、シナリオ網羅性チェック部183は、処理をステップS117に進める。   [Step S116] As a result of comparing the selected count measurement result with the average value of group n, if there is a measurement location with a significant difference, the scenario completeness check unit 183 advances the processing to step S118. When there is no measurement location having a significant difference, the scenario completeness check unit 183 advances the processing to step S117.

[ステップS117]シナリオ網羅性チェック部183が、選択した回数測定結果をグループnの回数測定結果に加えた上で、グループnの回数測定結果の平均値を算出し、算出した平均値を、グループnの平均値とする。   [Step S117] The scenario completeness check unit 183 adds the selected number measurement result to the number measurement result of group n, calculates an average value of the number measurement result of group n, and calculates the calculated average value to the group Let n be the average value.

[ステップS118]シナリオ網羅性チェック部183が、nがNであるかどうかを判定する。Nである場合、シナリオ網羅性チェック部183は、処理をステップS120に進める。Nではない場合、シナリオ網羅性チェック部183は、処理をステップS119に進める。   [Step S118] The scenario completeness check unit 183 determines whether n is N. In the case of N, the scenario completeness check unit 183 advances the processing to step S120. When it is not N, the scenario completeness check unit 183 advances the processing to step S119.

[ステップS119]シナリオ網羅性チェック部183が、nを「n+1」として、処理をステップS115に戻す。
[ステップS120]シナリオ網羅性チェック部183が、選択した回数測定結果を、グループ「N+1」の平均値とする。
[Step S119] The scenario completeness check unit 183 sets n to “n + 1” and returns the process to step S115.
[Step S120] The scenario completeness check unit 183 sets the selected count measurement result as the average value of the group “N + 1”.

[ステップS121]シナリオ網羅性チェック部183が、回数測定結果を全て選択したかどうかを判定する。全て選択した場合、シナリオ網羅性チェック部183は、処理をステップS131に進める。選択していない回数測定結果がある場合、シナリオ網羅性チェック部183は、処理をステップS111に戻す。   [Step S121] The scenario completeness check unit 183 determines whether all the frequency measurement results have been selected. When all the items are selected, the scenario completeness check unit 183 advances the processing to step S131. If there is a count measurement result that has not been selected, the scenario completeness check unit 183 returns the process to step S111.

ここからは、図25を用いて説明を進める。
[ステップS131]シナリオ網羅性チェック部183が、nを「1」とする。
[ステップS132]シナリオ網羅性チェック部183が、グループnの回数測定結果の平均値を、測定箇所毎に、回数目標値以上であるかを比較する。
From here, description will be given with reference to FIG.
[Step S131] The scenario completeness check unit 183 sets n to “1”.
[Step S132] The scenario completeness checking unit 183 compares the average value of the number measurement results of the group n with respect to the number of times target value for each measurement point.

[ステップS133]シナリオ網羅性チェック部183が、nがNであるかどうかを判定する。Nである場合、シナリオ網羅性チェック部183は、処理をステップS135に進める。Nではない場合、シナリオ網羅性チェック部183は、処理をステップS134に進める。   [Step S133] The scenario completeness checking unit 183 determines whether n is N or not. In the case of N, the scenario completeness check unit 183 advances the processing to step S135. When it is not N, the scenario completeness check unit 183 advances the processing to step S134.

[ステップS134]シナリオ網羅性チェック部183が、nを「n+1」として、処理をステップS132に戻す。
[ステップS135]シナリオ網羅性チェック部183が、測定箇所のそれぞれについて、複数のグループのうち少なくとも1つのグループの回数測定結果の平均値が、回数目標値以上であるかどうかを判定して処理を終了する。
[Step S134] The scenario completeness check unit 183 sets n to “n + 1” and returns the process to step S132.
[Step S135] The scenario completeness check unit 183 determines whether or not the average value of the number measurement results of at least one group out of a plurality of groups is greater than or equal to the target number of times for each measurement location. finish.

以上説明してきたように、検証装置100aでは、回数測定結果を複数のグループに分類し、測定箇所のそれぞれに対して、複数のグループのうち少なくとも1つのグループの回数測定結果の平均値が、回数目標値以上であるかどうかを判定する。これによれば、測定箇所が活性されたかどうかを網羅的にチェックすることが可能となる。   As described above, the verification apparatus 100a classifies the count measurement results into a plurality of groups, and the average value of the count measurement results of at least one group out of the plurality of groups is the number of times for each measurement location. It is determined whether or not the target value is exceeded. According to this, it is possible to comprehensively check whether the measurement location is activated.

また、検証装置100aは、第2の実施の形態の検証装置100と同様に、非同期回路の活性化回数を選択的に測定することができ、検証時間を短縮することが可能となる。また、検証装置100aは、測定箇所に応じたテンプレートを選択することでアサーションを生成することができるため、複雑な処理を施すことなくアサーションを生成することが可能となる。   In addition, the verification apparatus 100a can selectively measure the number of times the asynchronous circuit is activated, similarly to the verification apparatus 100 of the second embodiment, and can shorten the verification time. Moreover, since the verification apparatus 100a can generate an assertion by selecting a template corresponding to a measurement location, it is possible to generate an assertion without performing complicated processing.

なお、第1〜第3の実施の形態の上記の処理機能は、コンピュータによって実現することができる。その場合、検証装置1,100,100aが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD、DVD−RAM、CD−ROM/RWなどがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。   Note that the processing functions of the first to third embodiments can be realized by a computer. In that case, a program describing the processing contents of the functions that the verification apparatuses 1, 100, 100a should have is provided. By executing the program on a computer, the above processing functions are realized on the computer. The program describing the processing contents can be recorded on a computer-readable recording medium. Examples of the computer-readable recording medium include a magnetic storage device, an optical disk, a magneto-optical recording medium, and a semiconductor memory. Examples of the magnetic storage device include a hard disk device (HDD), a flexible disk (FD), and a magnetic tape. Optical discs include DVD, DVD-RAM, CD-ROM / RW, and the like. Magneto-optical recording media include MO (Magneto-Optical disk).

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。   When distributing the program, for example, a portable recording medium such as a DVD or a CD-ROM in which the program is recorded is sold. It is also possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer via a network.

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。   The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. In addition, each time a program is transferred from a server computer connected via a network, the computer can sequentially execute processing according to the received program.

また、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現することもできる。   In addition, at least a part of the above processing functions can be realized by an electronic circuit such as a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), or a PLD (Programmable Logic Device).

以上説明した第1〜第3の実施の形態を含む実施の形態に関し、さらに以下の付記を開示する。
(付記1) 検証対象から非同期パスの構造タイプを抽出する抽出部と、
前記抽出部が抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定する特定部と、
前記特定部が特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出する検出部と、
前記検出部が検出した信号伝播所要サイクル数を用いて、前記特定部が特定した前記複数の測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成するアサーション生成部と、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、前記アサーション生成部が生成したアサーションを用いて、前記特定部が特定した前記複数の測定箇所の活性化回数を測定する測定部と、
前記測定部による測定結果を期待値と比較する比較部と、
を有することを特徴とする検証装置。
The following additional notes are further disclosed with respect to the embodiments including the first to third embodiments described above.
(Supplementary Note 1) An extraction unit that extracts the structure type of the asynchronous path from the verification target;
Based on the structure type of the asynchronous path extracted by the extraction unit, a specifying unit that specifies a plurality of measurement locations including the first and second measurement locations for the verification target;
A detection unit for detecting the number of required signal propagation cycles between the first and second measurement points specified by the specifying unit from the verification target;
Using the number of required signal propagation cycles detected by the detection unit, an assertion generation unit for generating an assertion for measuring the number of times of activation of the plurality of measurement locations specified by the specification unit at a predetermined timing;
Activation of the plurality of measurement points specified by the specification unit using the assertion generated by the assertion generation unit during execution of the simulation to be verified, which is executed under the condition of providing asynchronous path delay and clock jitter A measuring unit for measuring the number of times;
A comparison unit for comparing a measurement result by the measurement unit with an expected value;
The verification apparatus characterized by having.

(付記2) 前記アサーション生成部は、測定箇所別に用意されたアサーション生成用のテンプレートに、前記特定部が特定した前記複数の測定箇所および前記検出部が検出した信号伝播所要サイクル数を埋め込むことで、前記特定部が特定した前記複数の測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成する、
ことを特徴とする付記1記載の検証装置。
(Additional remark 2) The said assertion production | generation part embeds the signal measurement required cycle number which the said several measurement location which the said specific part specified, and the said detection part detected in the template for assertion generation prepared for every measurement location. , Generating an assertion for measuring the number of times of activation of the plurality of measurement points specified by the specifying unit at a predetermined timing;
The verification apparatus according to Supplementary Note 1, wherein

(付記3) 前記比較部は、前記測定部による測定結果を、統計処理を用いて期待値と比較する、
ことを特徴とする付記1または2記載の検証装置。
(Additional remark 3) The said comparison part compares the measurement result by the said measurement part with an expected value using a statistical process,
The verification apparatus according to Supplementary Note 1 or 2, characterized in that:

(付記4) 前記比較部は、前記測定部による測定結果を複数のグループに分類し、各グループの測定結果の平均値を、期待値と比較する、
ことを特徴とする付記1〜3のいずれか1つに記載の検証装置。
(Additional remark 4) The said comparison part classifies the measurement result by the said measurement part into a some group, and compares the average value of the measurement result of each group with an expected value,
The verification device according to any one of appendices 1 to 3, wherein

(付記5) 前記比較部は、前記特定部が特定した前記複数の測定箇所のそれぞれに対して、前記複数のグループのうち少なくとも1つのグループの測定結果の平均値が、期待値以上であるかどうかを判定する、
ことを特徴とする付記4記載の検証装置。
(Supplementary Note 5) Whether the comparison unit has an average value of measurement results of at least one group out of the plurality of groups equal to or higher than an expected value for each of the plurality of measurement locations specified by the specifying unit. To determine whether
The verification device according to supplementary note 4, characterized by:

(付記6) 前記特定部が特定した前記第1の測定箇所は、前記抽出部が構造タイプを抽出した非同期パスの受信側フリップフロップ回路の出力信号であり、
前記特定部が特定した前記第2の測定箇所は、前記抽出部が構造タイプを抽出した非同期パスの送信側フリップフロップ回路の次段に組合せ論理回路を介して接続されたフリップフロップ回路の出力信号であり、
さらに、前記特定部は、前記抽出部が構造タイプを抽出した非同期パスの送信側フリップフロップ回路の出力信号を、第3の測定箇所に特定する、
ことを特徴とする付記1〜5のいずれか1つに記載の検証装置。
(Additional remark 6) The said 1st measurement location which the said specific part specified is the output signal of the receiving side flip-flop circuit of the asynchronous path | route which the said extraction part extracted the structure type,
The second measurement location specified by the specifying unit is an output signal of a flip-flop circuit connected via a combinational logic circuit to the next stage of the transmission-side flip-flop circuit of the asynchronous path from which the extraction unit has extracted the structure type. And
Further, the specifying unit specifies the output signal of the transmission-side flip-flop circuit of the asynchronous path from which the extraction unit has extracted the structure type as a third measurement location.
The verification device according to any one of appendices 1 to 5, characterized in that:

(付記7) 前記特定部は、
前記抽出部が抽出した非同期パスの構造タイプがコンビネーションの場合、
前記抽出部が構造タイプを抽出した非同期パスの送信側フリップフロップ回路と受信側フリップフロップ回路との間に接続されている組合せ論理回路の入力信号のうち、前記第1の測定箇所に特定している信号を除いた信号を、第4の測定箇所に特定する、
ことを特徴とする付記6記載の検証装置。
(Supplementary note 7)
When the asynchronous path structure type extracted by the extraction unit is a combination,
Among the input signals of the combinational logic circuit connected between the transmission-side flip-flop circuit and the reception-side flip-flop circuit of the asynchronous path from which the extraction unit has extracted the structure type, specify the first measurement location The signal excluding the existing signal is specified as the fourth measurement point.
The verification device according to supplementary note 6, characterized by:

(付記8) 前記特定部は、
前記抽出部が抽出した非同期パスの構造タイプがリコンバージェンスの場合、
特定した前記第2の測定箇所の次段に組合せ論理回路を介して接続されたフリップフロップ回路の出力信号を、第5の測定箇所に特定する、
ことを特徴とする付記6または7記載の検証装置。
(Additional remark 8) The said specific part is
When the structure type of the asynchronous path extracted by the extraction unit is reconvergence,
An output signal of a flip-flop circuit connected to the next stage of the identified second measurement location via a combinational logic circuit is identified as a fifth measurement location;
The verification device according to appendix 6 or 7, characterized by the above.

(付記9) コンピュータに、
検証対象から非同期パスの構造タイプを抽出し、
抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定し、
特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出し、
検出した信号伝播所要サイクル数を用いて、特定した前記複数の測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成し、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、生成したアサーションを用いて、特定した前記複数の測定箇所の活性化回数を測定し、
測定結果を期待値と比較する、
処理を実行させることを特徴とする検証プログラム。
(Supplementary note 9)
Extract the asynchronous path structure type from the verification target,
Based on the extracted asynchronous path structure type, identify a plurality of measurement locations including the first and second measurement locations for the verification target,
Detecting the required number of signal propagation cycles between the identified first and second measurement points from the verification target;
Using the detected number of required signal propagation cycles, generate an assertion that measures the number of times of activation of the plurality of specified measurement locations at a predetermined timing,
During the execution of the simulation to be verified that is executed under a condition with asynchronous path delay and clock jitter, the generated assertion is used to measure the number of activation times of the plurality of specified measurement points,
Compare the measurement results with expected values,
A verification program characterized by causing processing to be executed.

(付記10) コンピュータが、
検証対象から非同期パスの構造タイプを抽出し、
抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定し、
特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出し、
検出した信号伝播所要サイクル数を用いて、特定した前記複数の測定箇所の活性化回数を所定のタイミングで測定するアサーションを生成し、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、生成したアサーションを用いて、特定した前記複数の測定箇所の活性化回数を測定し、
測定結果を期待値と比較する、
ことを特徴とする検証方法。
(Appendix 10) The computer
Extract the asynchronous path structure type from the verification target,
Based on the extracted asynchronous path structure type, identify a plurality of measurement locations including the first and second measurement locations for the verification target,
Detecting the required number of signal propagation cycles between the identified first and second measurement points from the verification target;
Using the detected number of required signal propagation cycles, generate an assertion that measures the number of times of activation of the plurality of specified measurement locations at a predetermined timing,
During the execution of the simulation to be verified that is executed under a condition with asynchronous path delay and clock jitter, the generated assertion is used to measure the number of activation times of the plurality of specified measurement points,
Compare the measurement results with expected values,
A verification method characterized by that.

1,100,100a 検証装置
1a 抽出部
1b 特定部
1c 検出部
1d アサーション生成部
1e 測定部
1f 比較部
2 検証対象
111 検証対象格納部
112 非同期パス抽出部
113 非同期リスト格納部
114 アサーション抽出生成部
114a アサーション生成用リスト格納部
114b テンプレート格納部
115 アサーション格納部
116 シナリオ調整用シミュレーション実行部
117 固定シナリオ格納部
118 回数基準値格納部
119 非同期シミュレーション実行部
120 回数測定結果格納部
121 判定部
122 判定結果リスト格納部
180 回数目標値設定部
181 ランダムシナリオ格納部
182 回数目標値格納部
183 シナリオ網羅性チェック部
184 グループ平均値格納部
185 網羅性判定結果リスト格納部
1,100,100a Verification apparatus 1a Extraction unit 1b Identification unit 1c Detection unit 1d Assertion generation unit 1e Measurement unit 1f Comparison unit 2 Verification target 111 Verification target storage unit 112 Asynchronous path extraction unit 113 Asynchronous list storage unit 114 Assertion extraction generation unit 114a Assertion generation list storage unit 114b Template storage unit 115 Assertion storage unit 116 Scenario adjustment simulation execution unit 117 Fixed scenario storage unit 118 Time reference value storage unit 119 Asynchronous simulation execution unit 120 Time measurement result storage unit 121 Determination unit 122 Determination result list Storage unit 180 Number of times target value setting unit 181 Random scenario storage unit 182 Number of times target value storage unit 183 Scenario coverage check unit 184 Group average value storage unit 185 Coverage determination result list Storage

Claims (7)

論理式で表現した回路データである検証対象から非同期パスの構造タイプを抽出する抽出部と、
前記抽出部が抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定する特定部と、
前記特定部が特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出する検出部と、
前記検出部が検出した信号伝播所要サイクル数に基づくタイミングで、前記特定部が特定した前記複数の測定箇所の活性化回数を測定するアサーションを生成するアサーション生成部と、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、前記アサーション生成部が生成したアサーションを用いて、前記特定部が特定した前記複数の測定箇所の活性化回数を測定する測定部と、
前記測定部による測定結果を期待値と比較する比較部と、
を有することを特徴とする検証装置。
An extraction unit that extracts a structure type of an asynchronous path from a verification target that is circuit data expressed by a logical expression ;
Based on the structure type of the asynchronous path extracted by the extraction unit, a specifying unit that specifies a plurality of measurement locations including the first and second measurement locations for the verification target;
A detection unit for detecting the number of required signal propagation cycles between the first and second measurement points specified by the specifying unit from the verification target;
The detection unit at a timing based on the signal propagation required number of cycles has been detected, to measure the number of times of activation of the plurality of measurement points in which the identifying unit has identified, and the assertion generating unit that generates an assertion,
Activation of the plurality of measurement points specified by the specification unit using the assertion generated by the assertion generation unit during execution of the simulation to be verified, which is executed under the condition of providing asynchronous path delay and clock jitter A measuring unit for measuring the number of times;
A comparison unit for comparing a measurement result by the measurement unit with an expected value;
The verification apparatus characterized by having.
前記アサーション生成部は、測定箇所別に用意されたアサーション生成用のテンプレートに、前記特定部が特定した前記複数の測定箇所および前記検出部が検出した信号伝播所要サイクル数を埋め込むことで、前記特定部が特定した前記複数の測定箇所の活性化回数を前記タイミングで測定するアサーションを生成する、
ことを特徴とする請求項1記載の検証装置。
The assertion generation unit embeds the plurality of measurement locations specified by the specification unit and the number of required signal propagation cycles detected by the detection unit in an assertion generation template prepared for each measurement location. There generating an assertion of measuring the number of times of activation of the specified plurality of measurement points in said timing,
The verification apparatus according to claim 1.
前記比較部は、前記測定部による測定結果を、統計処理を用いて期待値と比較する、
ことを特徴とする請求項1または2記載の検証装置。
The comparison unit compares the measurement result by the measurement unit with an expected value using statistical processing.
The verification apparatus according to claim 1 or 2, wherein
前記比較部は、前記測定部による測定結果を複数のグループに分類し、各グループの測定結果の平均値を、期待値と比較する、
ことを特徴とする請求項1〜3のいずれか1項に記載の検証装置。
The comparison unit classifies the measurement results by the measurement unit into a plurality of groups, and compares the average value of the measurement results of each group with an expected value.
The verification apparatus according to any one of claims 1 to 3, wherein
前記比較部は、前記特定部が特定した前記複数の測定箇所のそれぞれに対して、前記複数のグループのうち少なくとも1つのグループの測定結果の平均値が、期待値以上であるかどうかを判定する、
ことを特徴とする請求項4記載の検証装置。
The comparison unit determines whether an average value of measurement results of at least one group among the plurality of groups is equal to or higher than an expected value for each of the plurality of measurement locations specified by the specifying unit. ,
The verification apparatus according to claim 4, wherein:
コンピュータに、
論理式で表現した回路データである検証対象から非同期パスの構造タイプを抽出し、
抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定し、
特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出し、
検出した信号伝播所要サイクル数に基づくタイミングで、特定した前記複数の測定箇所の活性化回数を測定するアサーションを生成し、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、生成したアサーションを用いて、特定した前記複数の測定箇所の活性化回数を測定し、
測定結果を期待値と比較する、
処理を実行させることを特徴とする検証プログラム。
On the computer,
Extract the asynchronous path structure type from the verification target, which is the circuit data expressed by the logical expression ,
Based on the extracted asynchronous path structure type, identify a plurality of measurement locations including the first and second measurement locations for the verification target,
Detecting the required number of signal propagation cycles between the identified first and second measurement points from the verification target;
At a timing based on the detected signal propagation required number of cycles, to measure the number of times of activation of the specified plurality of measurement points, and generates an assertion,
During the execution of the simulation to be verified that is executed under a condition with asynchronous path delay and clock jitter, the generated assertion is used to measure the number of activation times of the plurality of specified measurement points,
Compare the measurement results with expected values,
A verification program characterized by causing processing to be executed.
コンピュータが、
論理式で表現した回路データである検証対象から非同期パスの構造タイプを抽出し、
抽出した非同期パスの構造タイプに基づいて、前記検証対象に対する第1および第2の測定箇所を含む複数の測定箇所を特定し、
特定した前記第1および第2の測定箇所間の信号伝播所要サイクル数を前記検証対象から検出し、
検出した信号伝播所要サイクル数に基づくタイミングで、特定した前記複数の測定箇所の活性化回数を測定するアサーションを生成し、
非同期パス遅延およびクロックジッターを付与した条件下で実行される前記検証対象のシミュレーションの実行中、生成したアサーションを用いて、特定した前記複数の測定箇所の活性化回数を測定し、
測定結果を期待値と比較する、
ことを特徴とする検証方法。
Computer
Extract the asynchronous path structure type from the verification target, which is the circuit data expressed by the logical expression ,
Based on the extracted asynchronous path structure type, identify a plurality of measurement locations including the first and second measurement locations for the verification target,
Detecting the required number of signal propagation cycles between the identified first and second measurement points from the verification target;
At a timing based on the detected signal propagation required number of cycles, to measure the number of times of activation of the specified plurality of measurement points, and generates an assertion,
During the execution of the simulation to be verified that is executed under a condition with asynchronous path delay and clock jitter, the generated assertion is used to measure the number of activation times of the plurality of specified measurement points,
Compare the measurement results with expected values,
A verification method characterized by that.
JP2011148377A 2011-07-04 2011-07-04 Verification device, verification program, and verification method Expired - Fee Related JP5691890B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011148377A JP5691890B2 (en) 2011-07-04 2011-07-04 Verification device, verification program, and verification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011148377A JP5691890B2 (en) 2011-07-04 2011-07-04 Verification device, verification program, and verification method

Publications (2)

Publication Number Publication Date
JP2013016025A JP2013016025A (en) 2013-01-24
JP5691890B2 true JP5691890B2 (en) 2015-04-01

Family

ID=47688658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011148377A Expired - Fee Related JP5691890B2 (en) 2011-07-04 2011-07-04 Verification device, verification program, and verification method

Country Status (1)

Country Link
JP (1) JP5691890B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309592B (en) * 2019-07-01 2023-04-07 成都奥卡思微电科技有限公司 Method, system, storage medium and terminal for extracting and visualizing activity conditions in attribute synthesis

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5026A (en) * 1847-03-20 Cut-off valve
JP4271067B2 (en) * 2004-03-29 2009-06-03 富士通マイクロエレクトロニクス株式会社 Asynchronous circuit verification method and asynchronous circuit verification program
JP5310036B2 (en) * 2009-01-30 2013-10-09 富士通株式会社 Verification support program and verification support apparatus

Also Published As

Publication number Publication date
JP2013016025A (en) 2013-01-24

Similar Documents

Publication Publication Date Title
US7698674B2 (en) System and method for efficient analysis of point-to-point delay constraints in static timing
US8543966B2 (en) Test path selection and test program generation for performance testing integrated circuit chips
JP2011138183A (en) Verification support program and verification support device
US9218447B2 (en) Automatic test pattern generation (ATPG) considering crosstalk effects
US20080263489A1 (en) Method to identify and generate critical timing path test vectors
US7888971B2 (en) Verification support system and method
US20060045226A1 (en) System and method for analyzing jitter of signals
US10482207B2 (en) Verification support apparatus and design verification support method
US7996802B2 (en) Method of verifying circuit and computer-readable storage medium for storing computer program
JP5691890B2 (en) Verification device, verification program, and verification method
JP4861734B2 (en) Failure analysis program, recording medium recording the program, failure analysis method, and failure analysis apparatus
US20110077893A1 (en) Delay Test Apparatus, Delay Test Method and Delay Test Program
JP2005257654A (en) Method and device for judging quality of circuit, program for judging quality of circuit, and medium recorded with the program
JP5567322B2 (en) Test flow presentation computer program, test flow presentation computer system
US8015523B2 (en) Method and system for sequential netlist reduction through trace-containment
US7945882B2 (en) Asynchronous circuit logical verification method, logical verification apparatus, and computer readable storage medium
US10896275B2 (en) Verification apparatus and method for verifying operation of integrated circuit
JP5707921B2 (en) Activation path extraction program, activation path extraction apparatus, and activation path extraction method
US8341579B2 (en) Method, apparatus, and system for analyzing operation of semiconductor integrated circuits
JP2010249662A (en) Delay fault diagnosis program
US7689399B1 (en) Automatic extraction of design properties
JP5408052B2 (en) Integrated circuit, simulation apparatus, and simulation method
KR100901522B1 (en) Scan chain diagnosis method and apparatus using symbolic simulation
US20120253712A1 (en) Power consumption calculation method, power consumption calculation apparatus, and non-transitory computer-readble medium storing power consumption calculation program
Lin et al. Speed binning with high-quality structural patterns from functional timing analysis (FTA)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150119

R150 Certificate of patent or registration of utility model

Ref document number: 5691890

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees