WO2007142201A1 - マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の検証装置 - Google Patents

マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の検証装置 Download PDF

Info

Publication number
WO2007142201A1
WO2007142201A1 PCT/JP2007/061308 JP2007061308W WO2007142201A1 WO 2007142201 A1 WO2007142201 A1 WO 2007142201A1 JP 2007061308 W JP2007061308 W JP 2007061308W WO 2007142201 A1 WO2007142201 A1 WO 2007142201A1
Authority
WO
WIPO (PCT)
Prior art keywords
cycle path
path information
cycle
signal
verification
Prior art date
Application number
PCT/JP2007/061308
Other languages
English (en)
French (fr)
Inventor
Shinichi Gotoh
Original Assignee
Panasonic Corporation
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 Panasonic Corporation filed Critical Panasonic Corporation
Priority to US12/278,913 priority Critical patent/US20090070619A1/en
Publication of WO2007142201A1 publication Critical patent/WO2007142201A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking

Definitions

  • the present invention relates to multi-cycle path information indicating a multi-cycle path that requires multiple clock cycles for signal propagation in a digital circuit designed based on the functional specifications (operation specifications, design specifications) of the circuit.
  • the present invention relates to a verification method and verification device for multi-cycle path information for verifying the legitimacy.
  • a digital circuit is designed based on a functional specification, and an RTL description of a register transfer level (RTL, Register Transfer Level) is created.
  • RTL Register Transfer Level
  • logic synthesis constraint conditions that take timing constraints into account are created.
  • the above RTL description and logic synthesis constraints are input to the logic synthesis tool, and a gate-level netlist that satisfies the timing constraints (timing specifications) is generated.
  • the logic synthesis constraint condition includes, as a timing exception, a multi-cycle path designation indicating that a signal propagation path between two points in a digital circuit is a multi-cycle path that requires a plurality of clock cycles for signal propagation. It is.
  • the logic synthesis tool if there is no multi-cycle path specification (or timing exception specification such as false noise specification) as described above, the logic synthesis is performed so that the signal propagation power cycle between sequential circuits.
  • Patent Document 1 JP 2001-273351 A
  • Patent Document 2 JP 2004-171149 A
  • Patent Document 2 does not clearly specify what information is used and what kind of processing is performed, but it depends on the name of each element and the meaning and relationship of signals to terminals.
  • the description of the target circuit is analyzed and a description is given to automatically detect the multicycle path, it is considered that the multicycle path is detected based on the functional specification and the RTL description. Therefore, if there is an error in the RTL description itself, an inappropriate multicycle path specification can be obtained.
  • the present invention has been made in view of the strong points, and the validity of the multicycle path information indicating the multicycle path in the logic circuit obtained from the functional specification of the logic circuit is more reliably and easily determined. For the purpose of making it possible to verify!
  • the present invention provides:
  • a method for verifying multi-cycle path information indicating a multi-cycle path in a logic circuit obtained from a functional specification of the logic circuit,
  • the analysis step includes, for example, formal verification and simulation of circuit operation. This can be done by dynamic verification.
  • the multi-cycle path information may be extracted from a constraint condition (logic synthesis constraint) used for synthesizing the logic circuit, or the multi-cycle path information after the verification is logic Even if it is synthesized into a synthesis constraint.
  • a constraint condition logic synthesis constraint
  • the validity of multi-cycle path information can be verified more reliably and easily.
  • FIG. 1 is a circuit diagram showing an example of a logic circuit to be verified in the multi-cycle path information verification apparatus according to the embodiment of the present invention.
  • FIG. 2 is a timing chart showing an operation example of a logic circuit to be verified.
  • FIG. 3 is an explanatory diagram showing an example of an RTL circuit description of a logic circuit to be verified.
  • FIG. 4 is an explanatory diagram showing an example of logic synthesis constraints.
  • FIG. 5 is a flowchart showing the operation of the verification apparatus for multi-cycle path information according to the first embodiment.
  • FIG. 6 is an explanatory diagram showing an example of multi-cycle path verification properties.
  • FIG. 7 is an explanatory diagram showing an example of the verification result.
  • FIG. 8 is a flowchart showing the operation of the verification apparatus for multi-cycle path information according to the second embodiment.
  • FIG. 9 is an explanatory diagram showing an example of an activity key confirmation property.
  • FIG. 10 is an explanatory diagram showing an example of the execution result of the activation confirmation property.
  • FIG. 11 is an explanatory diagram showing an example of an indefinite value setting property according to the third embodiment.
  • FIG. 12 is a timing chart showing an example in which an indefinite value is set.
  • FIG. 13 is a flowchart showing a process for obtaining a location where a multi-cycle path is specified incorrectly. Explanation of symbols
  • the logic circuit to be verified includes four flip-flops FF1 to FF4, two AND circuits AND1'AND2, and two inverters INV1'INV2. As shown in FIG. 2, this logic circuit operates in synchronization with the clock signal elk after the reset signal rst becomes L (Low) level. In this logic circuit, the path between the outputs sig-ql and sig-q2 of the flip-flop FF1 'FF2 is a multi-site path with 3 multicycles.
  • the logic circuit is represented by an RTL circuit description (for example, a text file whose file name is mul ticycle3.v) as shown in FIG.
  • the multi-cycle path information verified in the present embodiment is included in a logic synthesis constraint as shown in FIG. 4, for example.
  • This logic synthesis constraint indicates timing constraints used when synthesizing gate-level logic circuits based on RTL circuit descriptions and static timing analysis.
  • (b) and (c) lines indicate the signal propagation routing of the multi-cycle path, the number of multi-cycles, and the reference clock corresponding to the above cycle. That is, it is shown that the number of multicycles is 3 for the path power clock elk starting from the flip-flop FF1 and ending at the flip-flop FF2.
  • the rows (a) and (e) in the figure are not directly related to the multi-cycle path information, but are circuit read instructions or logic synthesis execution instructions that indicate instructions to the logic synthesis device.
  • Line (b) is an instruction to specify the clock name, clock period, and phase.
  • the path starting from the reset signal rst is a false path. This is an instruction for designating.
  • the multi-cycle path information verification device is configured, for example, by incorporating software into a computer having a CPU, memory, storage device, input / output device, etc., and functionally, for example, as shown in FIG. Each unit has a function to execute each step.
  • a multi-cycle path verification property indicating the verification content is generated. Specifically, for example, information as shown in FIG. 6 is generated.
  • the output signal sigl-q of the flip-flop FF1 which is the start point of the multi-cycle path, is a desired operation based on the part (a). It is verified that the output signal sig2-q of the flip-flop FF2, which is the end point of the multi-cycle path, is verified based on the part (b). It is.
  • the falling edge of sigl-q is detected by the previous term of the logical sum operator II in the above evaluation formula, and the rising edge is detected by the subsequent term.
  • the logical sum is used to detect changes in both rising and falling edges (for example, timings A and C in Fig. 2), and the evaluation formula in the next section is evaluated.
  • the flip-flop FF2 it is detected whether or not the value of sig2-q is the same value for a period of 3 cycles or more, which is the number of multicycles.
  • the logic circuit in FIG. 1 (the RTL circuit description in FIG. 3) includes multi-cycle path information indicating that it is multi-cycle power in the logic synthesis constraint, (S 103)
  • the logic circuit in FIG. 1 (the RTL circuit description in FIG. 3) includes multi-cycle path information indicating that it is multi-cycle power in the logic synthesis constraint, (S 103)
  • the levels of the signals sigl — q and sig2 — q can change during the period of 4 cycles from B to D in FIG.
  • it can change at the timing of C in Fig. 2, that is, it is not necessarily the same value for a period of 4 cycles or more, so the path between the signals sigl-q and sig2-q will result in an error
  • the multi-cycle path information and the netlist are consistent.
  • test pattern it is ideal that the pattern of the signal actually input to the logic circuit is covered.
  • reliable verification is not always performed. For example, when verifying multi-site path information, if the period of change of the signal input to the multi-cycle path is longer than the number of multi-cycles, the verification operation will not be activated reliably, resulting in inconsistency. The possibility of being judged increases. Therefore, in this embodiment, the reliability of the verification result can be confirmed by measuring how many times a signal having a period shorter than the number of multicycles is input to the multicycle path.
  • an active key confirmation property such as that shown in FIG. 9 is generated in (S 210).
  • the number of times a signal (valid signal) with a period shorter than the number of multicycles (less than 3 cycles) (valid signal) is input during the verification time in the signal input to the start point sigl-d (inl) of the multi-site path. Shown to measure.
  • the verification based on the verification property is performed in the same manner as in the first embodiment, and the valid signal input count is measured based on the activity key confirmation property.
  • the measurement result is displayed in (S104) as shown in FIG. 10, for example, that the valid signal is generated 5 times out of the 20 evaluations.
  • the measurement method is not limited to the above, and information that can confirm the reliability of verification, such as the number of clock cycles of the effective signal and the ratio of the input time of the effective signal to the total verification time, should be obtained.
  • the simulation may be performed based on the logically synthesized netlist, and may be performed based on the RTL circuit description.
  • the simulation is performed by forcibly setting an indefinite value (a value indicating that neither the H (High) level nor the L (Low) level) is applied to a signal that has passed a period longer than the number of multicycles. Based on the signal output from the logic circuit (final output stage) as the result of the determination, the above error can be easily detected.
  • an indefinite value a value indicating that neither the H (High) level nor the L (Low) level
  • indefinite value setting properties as shown in FIG. 11 (a) are generated in the same manner as the verification properties and activation confirmation properties of the first and second embodiments.
  • Step S304 is repeated to back trace the signal propagation path.
  • (S305) If the signal at the input stage is not an indefinite value, it is determined whether or not the signal is a signal force that also receives an external force of the logic circuit.
  • Embodiment 1 or 2 may be combined with the configuration described in Embodiment 3.
  • the multi-cycle path information matches the circuit information indicating the circuit configuration ( It is possible to judge comprehensively. In other words, the number of multi-cycle paths indicated by the multi-cycle path information is not too large. Therefore, an actual circuit manufactured based on the multi-cycle path information operates normally even if a delay corresponding to the multi-cycle path is generated, However, the actual circuit without the number of multi-cycle paths is not too small, and the possibility is high.
  • the multi-cycle path information verification method and verification apparatus have the effect of more reliably and easily verifying the validity of multi-site path information, and are designed based on circuit operation specifications. It is useful as a verification method and verification device for multi-cycle path information for verifying the validity of multi-cycle path information indicating a multi-cycle path that requires a plurality of clock cycles for signal propagation in a digital circuit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

 例えば、論理合成制約からマルチサイクルパス情報の抽出が行われ(S101)、検証内容を示すマルチサイクルパス検証用プロパティが生成された後(S102)、別途論理合成ツールによりRTL回路記述に基づく論理合成によって生成されたゲートレベルのネットリストに基づいて、フォーマル検証が行われるとともに、マルチサイクルパス検証用プロパティが参照され実行されることによって、マルチサイクルパスの検証が行われる(S103)。これにより、マルチサイクルパス情報の正当性をより確実かつ容易に検証できる。

Description

明 細 書
マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の 検証装置
技術分野
[0001] 本発明は、回路の機能仕様 (動作仕様、設計仕様)に基づ!ヽて設計されたディジタ ル回路における、信号伝播に複数のクロック周期を要するマルチサイクルパスを示す マルチサイクルパス情報の正当性を検証するマルチサイクルパス情報の検証方法お よび検証装置に関するものである。
背景技術
[0002] 一般に、ディジタル回路は、機能仕様に基づ!/ヽて設計され、レジスタトランスファレ ベル (RTL , Register TransferLevel )の RTL記述等が作成される。また、機能仕様 に基づいて、タイミング制約を考慮した論理合成制約条件が作成される。上記 RTL 記述および論理合成制約条件は、論理合成ツールに入力されて、タイミング制約 (タ イミング仕様)を満足するゲートレベルのネットリストが生成される。
[0003] 上記論理合成制約条件には、タイミング例外として、ディジタル回路における 2点間 の信号伝播経路が、信号伝播に複数のクロック周期を要するマルチサイクルパスで あることを示すマルチサイクルパス指定が含まれる。論理合成ツールでは、上記のよ うなマルチサイクルパス指定 (やフォルスノ ス指定などのタイミング例外指定)がな 、 場合には、順序回路間の信号伝播力 サイクルになるように論理合成される。
[0004] 上記マルチサイクルパス指定は、通常、機能仕様に基づ!/、て人手で行われて!/、る ため、往々にして誤ったマルチサイクルパス指定が生じがちである。この場合、生成 される論理回路が適切に動作しな力つたり、適切に動作しても、過剰なタイミング調 整のために回路規模が大きくなつたりする。
[0005] そこで、 RTL記述に遅延情報を埋め込み、これを解析することによって、マルチサ イタルパス候補を抽出し、別途作成されたマルチサイクルパス指定と突き合わせるこ とによって検証する手法が提案されている(例えば、特許文献 1参照。 ) o
[0006] また、例えば各素子の名称、端子への信号の意味や関係に対応して対象回路の 分析を行 、、自動的にマルチサイクルパスを検出する技術も提案されて 、る(例えば
、特許文献 2参照。)。
特許文献 1 :特開 2001— 273351号公報
特許文献 2 :特開 2004— 171149号公報
発明の開示
発明が解決しょうとする課題
[0007] し力しながら、 RTL記述に遅延情報を埋め込んで解析する手法では、埋め込む遅 延情報自体に誤りがあると適切な検証が行われないうえ、遅延情報を埋め込むため の手間も要する。
[0008] また、上記特許文献 2には、具体的にどのような情報を用いてどのような処理を行う のかは明記されていないが、各素子の名称、端子への信号の意味や関係に対応し て対象回路の分析を行い自動的にマルチサイクルパスを検出する旨の記載力もする と、機能仕様と RTL記述とに基づいてマルチサイクルパスが検出されると考えられる 。したがって、 RTL記述自体に誤りがある場合には、不適切なマルチサイクルパス指 定が得られること〖こなる。
[0009] 本発明は、力かる点に鑑みてなされたものであり、論理回路の機能仕様から得られ た、論理回路中のマルチサイクルパスを示すマルチサイクルパス情報の正当性をより 確実かつ容易に検証できるようにすることを目的として!/、る。
課題を解決するための手段
[0010] 上記の課題を解決するため、本発明は、
論理回路の機能仕様から得られた、論理回路中のマルチサイクルパスを示すマル チサイクルパス情報の検証方法であって、
上記機能仕様に基づいた回路構成を示す回路情報を解析部が解析する解析ステ ップと、
解析結果に基づ 、て、上記マルチサイクルパス情報の正当性を検証部が検証する 検証ステップと、
を有することを特徴とする。
[0011] ここで、上記解析ステップは、例えば、フォーマル検証や、回路動作をシミュレーシ ヨンするダイナミック検証によって行うことができる。
[0012] また、マルチサイクルパス情報は、論理回路の合成のために用いられる制約条件( 論理合成制約)から抽出されるようにしてもよいし、検証された後のマルチサイクルパ ス情報が論理合成制約に合成されるようにしてもょ 、。
発明の効果
[0013] 本発明によれば、マルチサイクルパス情報の正当性をより確実かつ容易に検証で きる。
図面の簡単な説明
[0014] [図 1]図 1は、本発明の実施形態のマルチサイクルパス情報の検証装置で検証の対 象となる論理回路の例を示す回路図である。
[図 2]図 2は、検証の対象となる論理回路の動作例を示すタイミングチャートである。
[図 3]図 3は、検証の対象となる論理回路の RTL回路記述の例を示す説明図である。
[図 4]図 4は、論理合成制約の例を示す説明図である。
[図 5]図 5は、実施形態 1のマルチサイクルパス情報の検証装置の動作を示すフロー チャートである。
[図 6]図 6は、同、マルチサイクルパス検証用プロパティの例を示す説明図である。
[図 7]図 7は、同、検証結果の例を示す説明図である。
[図 8]図 8は、実施形態 2のマルチサイクルパス情報の検証装置の動作を示すフロー チャートである。
[図 9]図 9は、同、活性ィ匕確認用プロパティの例を示す説明図である。
[図 10]図 10は、同、活性化確認用プロパティの実行結果の例を示す説明図である。
[図 11]図 11は、実施形態 3の不定値設定用プロパティの例を示す説明図である。
[図 12]図 12は、同、不定値が設定される例を示すタイミングチャートである。
[図 13]図 13は、同、マルチサイクルパスの指定が誤っている箇所を求める処理を示 すフローチャートである。 符号の説明
[0015] FF1〜FF4 フリップフロップ
AND1 -AND2 アンド回路 INV1 -INV2 インバータ
発明を実施するための最良の形態
[0016] 以下、本発明の実施形態を図面に基づいて詳細に説明する。なお、以下の各実施 形態において、他の実施形態と同様の機能を有する構成要素については同一の符 号を付して説明を省略する。
[0017] 《発明の実施形態 1》
(検証対象論理回路等について)
まず、本実施形態のマルチサイクルパス情報の検証装置で検証の対象となる論理 回路等の例について説明する。
[0018] 検証対象の論理回路は、例えば図 1に示すように、 4つのフリップフロップ FF1〜F F4、 2つのアンド回路 AND1 'AND2、および 2つのインバータ INV1 'INV2から構 成されている。この論理回路は、図 2に示すように、リセット信号 rstが L (Low)レベル になった後に、クロック信号 elkに同期して動作する。この論理回路では、フリップフロ ップ FF1 'FF2の出力 sig— ql、 sig—q2間のパスがマルチサイクル数 3のマルチサ イタルパスになっている。
[0019] 上記論理回路は、例えば図 3に示すような RTL回路記述 (例えばファイル名が mul ticycle3. vであるテキストファイル)で表される。
[0020] また、本実施形態で検証されるマルチサイクルパス情報は、例えば図 4に示すよう な論理合成制約中に含まれている。この論理合成制約は、 RTL回路記述に基づい てゲートレベルの論理回路を合成する際や、静的タイミング解析の際に用いられるタ イミングの制約条件を示すものである。同図の例では、(b) (c)の行によって、マルチ サイクルパスの信号伝播経路指定、マルチサイクル数、および上記サイクルに対応 する基準クロックが示されている。すなわちフリップフロップ FF1を始点としフリップフ ロップ FF2を終点とした経路力 クロック elkにつ!/、てマルチサイクル数 3であることが 示されている。なお、同図の(a) (e)の行は、マルチサイクルパス情報とは直接関係し ないが、論理合成装置に対する指示を示す回路読み出し命令または論理合成実行 命令である。また、(b)の行は、クロック名や、クロック周期、位相を指定するための命 令である。さらに、(d)の行は、リセット信号 rstを始点とする経路がフォルスパスである ことを指定するための命令である。
[0021] 上記 RTL回路記述や論理合成制約は、論理回路の機能仕様に基づ!/ヽて作成され る。
[0022] (マルチサイクルパス情報の検証装置の機能的構成および動作)
マルチサイクルパス情報の検証装置は、例えば、 CPU,メモリ、記憶装置、および 入出力装置等を備えたコンピュータにソフトウェアが組み込まれて構成されるが、機 能的には、例えば図 5に示すような各ステップが実行される機能を有する各部を備え て構成されている。
[0023] (S101) まず、 RTL回路記述が参照されつつ、論理合成制約(図 4)からマルチ サイクルパス情報の抽出が行われる。
[0024] (S102) 次に、抽出されたマルチサイクルパス情報に基づいて、その検証内容を 示すマルチサイクルパス検証用プロパティが生成される。具体的には、例えば図 6に 示すような情報が生成される。
[0025] 具体的には、図 6に示す検証用プロパティの例では、(a)の部分に基づいて、マル チサイクルパスの始点であるフリップフロップ FF1の出力信号 sigl—qが所望の動作 であることの検証が行われ、(b)の部分に基づいて、マルチサイクルパスの終点であ るフリップフロップ FF2の出力信号 sig2—qが所望の動作であることの検証が行われ ることが示される。
[0026] (S103) 別途論理合成ツールにより RTL回路記述に基づく論理合成によって生 成されたゲートレベルのネットリストに基づいてフォーマル検証が行われる。その際に 、上記マルチサイクルパス検証用プロパティが参照され実行されることによって、マル チサイクルパスの検証が行われる。
[0027] より詳しくは、例えばフリップフロップ FF1について、検証用プロパティの @ (posedg e elk)により、以降に続く評価式のサンプリングタイミングが示され、クロック信号 elk の立ち上がりタイミングで評価式の評価が行われる。以降の評価式の一部である、( $ fall (sigl— q) & & $ past (sigl— q, l) = = = l,bl) | | ( $ rise (sigl—q) & & $ past (sigl—q, 1) = = = 1 ' bO)では、評価が行われる為の条件が示されてお り、 1サイクル前のサンプリングタイミングの sigl—qの信号値を保持比較し、現サイク ルでの信号変化が生じたことが検出される。さらに詳細には上記評価式中の論理和 演算子 I Iの前の項によって sigl— qの立下りエッジ、後ろの項によって立ち上がり エッジが検出される。すなわち、論理和がとられることで立ち上がり及び立下りエッジ の両エッジの変化が検出され (例えば図 2の A、 Cのタイミング)、次項の評価式が評 価される。
[0028] 次項の評価式 I > # # 3 (sigl— q = = $ past (sigl— q, 1)では、 1サイク ル前の sig 1—qの値がマルチサイクル数である 3サイクル以上の期間(例えば図 2の Bから Cまでの期間)、同一値であるかどうかが検出される。
[0029] 同様に、フリップフロップ FF2についても、 sig2— qの値がマルチサイクル数である 3 サイクル以上の期間、同一値であるかどうかが検出される。上記のように FF2につい ても判定することによって、 FF1—FF2間にゲートが介在すること等によって FF2の 出力がマルチサイクルノ ス数未満のタイミングで変化することなども検出できる。
[0030] (S104) 上記の検証によって、 sigl— q、 sig2— qが共に 3サイクル以上同一であ ることが検出された場合には、論理合成制約(図 4)に含まれていたマルチサイクルパ ス情報と、ネットリスト (したがって RTL回路記述)とは整合していることが検証され、例 えば図示しない表示装置に図 7に示すような表示がなされる。
[0031] (不整合が生じる場合の例)
図 1の論理回路(図 3の RTL回路記述)に対して、例えば論理合成制約中にマルチ サイクル数力 であることを示すマルチサイクルパス情報が含まれて 、たとすると、 (S 103)では、上記と同様にして、図 2の Bから Dまでの 4サイクルの期間、各信号 sigl — q、 sig2—qのレベルが変化し得るかどうかが判定される。ところが、この例では、図 2の Cのタイミングで変化し得るので、すなわち 4サイクル以上の期間、同一値である とは限らないので、信号 sigl— q、 sig2— q間のパスがエラーとなり、マルチサイクル パス情報とネットリストとは整合して 、な 、と判定される。
[0032] なお、実際には、上記のような評価が行われる Cの時点に対して、 B力 4サイクル 後の Dは後のタイミングになるので、 Cの時点では、例えば Dの時点で改めて評価す べきことを示す情報を保持させて、後に評価されるようにすればよい。また、 C力も 4サ イタル遡った Aのタイミングまでの間で変化が生じて 、たかどうかや、前回変化した A カゝら cまでのサイクル数力 以上であることなど、論理的にマルチサイクル数力 では あり得ないことが判定されればよい。さらに、サンプリングクロックの各立ち上がり及び Z又は立ち下がりエッジごとに上記のような評価が行われるようにして、検出頻度を 高くできるようにしてもょ 、し、エラーを検出できる可能性のある(高 、)タイミングでだ け評価が行われるようにして、シミュレーション動作の負荷の軽減等を図るようにして ちょい。
[0033] 一方、マルチサイクルパス情報によってマルチサイクルパスが 2であると示されてい たとすると、この場合には、図 2の B力も Eや D力も Fまでの 2サイクルの間は各信号 si gl_q, sig2— qのレベルが常に変化しないので、エラーとはならない。すなわち、そ のようなマルチサイクルパス情報が設定されている場合、 sigl— q、 sig2— q間の遅 延が 2サイクルになるように論理合成されるために駆動能力の大き 、素子が用いられ たりする可能性があるが、論理合成された回路自体は、適切に動作する。
[0034] なお、上記の例では論理合成されたネットリストに基づいてフォーマル検証が行わ れる例を示した力 RTL回路記述に基づ 、て行われるなどしてもよ!、。
[0035] 《発明の実施形態 2》
機能検証が回路動作のシミュレーションによって行われることにより、マルチサイク ルパスの検証が行われる例を説明する。ここで、前期実施形態 1における機能検証( 図 5、 S103)として、ネットリストまたは RTL回路記述などとテストパターンが与えられ てダイナミックシミュレーションが行われるようにしてもよいが、以下の例では、さらに、 検証結果の信頼性が確認される例を示す。
[0036] この実施形態 2では、図 8に示すように、 (S101) (S102) (S104)は実施形態 1 (図 5)と同じ動作が行われる力 (S203)では、テストパターンによって示される信号が論 理回路に入力された場合の回路動作のシミュレーション (ダイナミック検証)が行われ ることにより、各部の信号レベルの変化が求められる。求められた信号レベルの変化 に応じて、検証用プロパティに基づくマルチサイクルパス情報の検証が行われる点は 、実施形態 1と同様である。
[0037] ここで、上記テストパターンとしては、実際に論理回路に入力される信号のパターン を網羅していることが理想的である力 代表的なパターンだけについてシミュレーショ ンが行われる場合、必ずしも確実な検証が行われるとは限らない。例えば、マルチサ イタルパス情報の検証の場合には、マルチサイクルパスに入力される信号の変化周 期がマルチサイクル数よりも長いと、検証動作が確実に活性化されない結果、誤って 整合性があると判定されるなどの可能性が大きくなる。そこで、本実施形態では、マ ルチサイクル数よりも短い周期の信号がマルチサイクルパスに何回入力されたかを計 測することにより、検証結果の信頼性を確認できるようになって ヽる。
[0038] 具体的には、まず、(S 102)で検証用プロパティが生成される際に、(S210)で例 えば図 9に示すような活性ィ匕確認用プロパティが生成される。この例では、マルチサ イタルパスの始点 sigl—d (inl)に入力される信号においてマルチサイクル数よりも 短 、周期(3サイクル未満)の信号 (有効信号)が検証時間中に何回入力されたかを 計測することが示されている。
[0039] (S203)では、実施形態 1と同様に検証用プロパティに基づいた検証が行われると 伴に、上記活性ィ匕確認用プロパティに基づいて、有効信号の入力回数が計測される 。計測結果は、(S 104)で例えば図 10に示すように、 20回の評価回数のうち、有効 信号が 5回発生したなどと表示される。なお、計測方法は上記に限らず、有効信号の クロックサイクル数や、全検証時間に対する有効信号の入力時間の割合など、検証 の信頼性が確認できる情報が得られればよ 、。
[0040] なお、上記の例では論理合成されたネットリストに基づいてシミュレーションが行わ れる例を示した力 RTL回路記述に基づ 、て行われるなどしてもよ!、。
[0041] 《発明の実施形態 3》
上記のようなシミュレーションを行った場合でも、マルチサイクル数よりも長 、期間経 過後に後段のフリップフロップが取り込みを行ったことを検出できないことがある。す なわち、各階路要素の出力信号レベルは、通常、何らかの確定値であるため、マル チサイクル数よりも長い時間経過したとしても、後段のフリップフロップによる取り込み 動作自体は行われる。このため、シミュレーション結果によって上記のような誤りを見 つけることは困難である。
[0042] そこで、マルチサイクル数よりも長い期間を経過した信号に、強制的に不定値 (H ( High)レベルでも L (Low)レベルでもな ヽことを示す値)を設定することにより、シミュ レーシヨン結果として論理回路 (最終出力段)から出力される信号に基づいて、上記 のような誤りを容易に検出することができる。
[0043] 具体的には、例えば実施形態 1、 2の検証用プロパティや活性化確認用プロパティ と同じようにして、図 11 (a)に示すような不定値設定用プロパティが生成される。この 不定値設定用プロパティが機能検証の際に参照され実行されることによって、図 12 ( a)に示すように、検証用プロパティの評価式が評価されるのと同じタイミング (sigl— qの変化エッジが検出されるタイミング)で、 # l (sigl— q, 3) = l ' bxが評価され、 上記変化エッジが検出されてから 3サイクル後(sigl— q, 3)に、 1サイクル幅分(# 1 )だけ、不定値(l ' bx)力 gl— qに代入される。この場合には、マルチサイクル数が 3で、マルチサイクルパス情報とネットリストとが整合しているので、フリップフロップ FF 2の出力信号 sig2—qとしては上記不定値は出力されない。
[0044] 一方、例えばマルチサイクルパス情報によって指定されるマルチサイクル数が 2だ つたとすると、図 11 (b)に示すような不定値設定用プロパティが生成され、図 12 (b) に示すように、 sigl— qの変化エッジが検出されてから 2サイクル後(sigl— q, 2)に、 2サイクル幅分(# 2)だけ、不定値(l ' bx)力 igl— qに代入される。そこで、上記不 定値がフリップフロップ FF2にラッチされて出力信号 sig2—q等に伝播し、論理回路 力も出力されれば、マルチサイクルパスの指定が短く設定されるような誤りを確認する ことができる。
[0045] 上記のように機能検証の際のシミュレーションによって論理回路力 外部に不定値 が出力された場合、論理回路におけるマルチサイクルパスの指定が誤っている箇所 は、例えば図 13に示すような処理によって求められる。
[0046] (S301) 論理回路における不定値が出力された最終出力段の信号名を認識する
[0047] (S302) 認識された信号名を起点に、論理回路の接続情報に基づいて、論理回 路中の信号接続経路を得る。
[0048] (S303) 得られた接続情報を基に入力段に向けて回路接続を探索する。
[0049] (S304) 入力段の信号が不定値かどうかを判定し、不定値であれば、(S302)〜(
S304)を繰り返して信号伝播経路をバックトレースする。 [0050] (S305) 入力段の信号が不定値でなければ、その信号が論理回路の外部力も入 力される信号力どうかが判定される。
[0051] (S306) 上記(S305)で、外部力 入力される信号であれば、不定値の出力の発 生原因がマルチサイクルノ ス不定値設定用プロパティによって発生したものでなぐ 外部信号から直接不定値が入力されたことによるものとして終了し、別の経路を検索 して、(S302)以降が繰り返される。
[0052] (S307) また、上記(S305)で外部力 入力される信号でなければ、マルチサイク ルパス指定の誤りによって不定値をラッチした信号として図示しない表示装置に表示 される。
[0053] 《発明の実施形態 4》
実施形態 1、または実施形態 2で説明したような構成と実施形態 3で説明したような 構成とを組み合わせてもよ ヽ。
[0054] これにより、実施形態 1、 2の判定がパスになり、かつ実施形態 3の判定もパスした場 合には、マルチサイクルパス情報が、回路構成を示す回路情報に整合している(可 能性が大きい)と総合的に判定することができる。すなわち、マルチサイクルパス情報 によって示されるマルチサイクルパス数は大きすぎず、それゆえ、これに基づいて作 製される実際の回路は、これに応じた遅延が生じても正常に動作するとともに、さらに 、マルチサイクルパス数は小さすぎることもなぐ実際の回路は過剰に遅延を抑制し たものでもな 、可能性が大き 、と考えられる。
[0055] また、何れか一方の判定だけがパスの場合には、マルチサイクルパス情報が大きす ぎる力または小さすぎる可能性があると総合的に判定し、マルチサイクルパス情報の 確認、修正等を効率よく行うことができる。
産業上の利用可能性
[0056] 本発明に力かるマルチサイクルパス情報の検証方法および検証装置は、マルチサ イタルパス情報の正当性をより確実かつ容易に検証できる効果を有し、回路の動作 仕様に基づ 、て設計されたディジタル回路における、信号伝播に複数のクロック周 期を要するマルチサイクルパスを示すマルチサイクルパス情報の正当性を検証する マルチサイクルパス情報の検証方法および検証装置等として有用である。

Claims

請求の範囲
[1] 論理回路の機能仕様から得られた、論理回路中のマルチサイクルパスを示すマル チサイクルパス情報の検証方法であって、
上記機能仕様に基づいた回路構成を示す回路情報を解析部が解析する解析ステ ップと、
解析結果に基づ 、て、上記マルチサイクルパス情報の正当性を検証部が検証する 検証ステップと、
を有することを特徴とするマルチサイクルパス情報の検証方法。
[2] 請求項 1のマルチサイクルパス情報の検証方法であって、
上記マルチサイクルパス情報は、各マルチサイクルパスで信号の伝播に許容される マルチサイクル数を示す情報を含み、
上記解析ステップは、各マルチサイクルパスの信号の変化タイミングを解析し、 上記検証ステップは、各マルチサイクルパスの信号力 上記マルチサイクル数と異 なるタイミングで変化する場合に、上記回路情報とマルチサイクルパス情報とが不整 合であると判定することを特徴とするマルチサイクルパス情報の検証方法。
[3] 請求項 2のマルチサイクルパス情報の検証方法であって、
上記解析ステップは、上記回路情報に基づくフォーマル検証を行うことにより、上記 信号の変化タイミングの解析をすることを特徴とするマルチサイクルパス情報の検証 方法。
[4] 請求項 2のマルチサイクルパス情報の検証方法であって、
上記解析ステップは、上記論理回路に入力される信号のテストパターンに基づいて 回路動作をシミュレーションすることにより、上記信号の変化タイミングの解析をするこ とを特徴とするマルチサイクルパス情報の検証方法。
[5] 請求項 4のマルチサイクルパス情報の検証方法であって、
さらに、上記マルチサイクルパスに入力される信号力 上記マルチサイクル数よりも 短いタイミングで変化したかどうかを検出する入力信号変化検出ステップを有するこ とを特徴とするマルチサイクルパス情報の検証方法。
[6] 請求項 5のマルチサイクルパス情報の検証方法であって、 上記信号変化検出ステップは、上記マルチサイクル数よりも短 、タイミングでの変 化の回数に応じた値を求めることを特徴とするマルチサイクルパス情報の検証方法。
[7] 請求項 4のマルチサイクルパス情報の検証方法であって、
さらに、上記マルチサイクルパスの信号力 上記マルチサイクル数よりも長い期間変 化しない場合に、上記マルチサイクル数より後の信号レベルを不定レベルに設定す る不定レベル設定ステップを有することを特徴とするマルチサイクルパス情報の検証 方法。
[8] 請求項 7のマルチサイクルパス情報の検証方法であって、
さらに、上記論理回路力も不定レベルの信号が出力された場合に、上記不定レべ ルの信号の伝播経路をさかのぼって、上記不定レベル設定ステップで不定レベルに 設定された信号を検出する不定レベル設定信号検出ステップを有することを特徴と するマルチサイクルパス情報の検証方法。
[9] 請求項 1のマルチサイクルパス情報の検証方法であって、
さらに、上記論理回路の合成のための制約条件に含まれる上記マルチサイクルパ ス情報を抽出する抽出ステップを有することを特徴とするマルチサイクルパス情報の 検証方法。
[10] 請求項 1のマルチサイクルパス情報の検証方法であって、
さらに、上記マルチサイクルパス情報を上記論理回路の合成のための制約条件に 合成する合成ステップを有することを特徴とするマルチサイクルパス情報の検証方法
[11] 論理回路の機能仕様力 得られた、論理回路中のマルチサイクルパスを示すマル チサイクルパス情報の検証装置であって、
上記機能仕様に基づいた回路構成を示す回路情報を解析する解析部と、 解析結果に基づ 、て、上記マルチサイクルパス情報の正当性を検証する検証部と を有することを特徴とするマルチサイクルパス情報の検証装置。
PCT/JP2007/061308 2006-06-05 2007-06-04 マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の検証装置 WO2007142201A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/278,913 US20090070619A1 (en) 2006-06-05 2007-06-04 Multi-cycle path information verification method and multi-cycle path information verification device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006156370 2006-06-05
JP2006-156370 2006-06-05

Publications (1)

Publication Number Publication Date
WO2007142201A1 true WO2007142201A1 (ja) 2007-12-13

Family

ID=38801452

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/061308 WO2007142201A1 (ja) 2006-06-05 2007-06-04 マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の検証装置

Country Status (2)

Country Link
US (1) US20090070619A1 (ja)
WO (1) WO2007142201A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230392A (ja) * 2008-03-21 2009-10-08 Fujitsu Microelectronics Ltd シミュレーション装置、シミュレーション方法及びプログラム
JP2012248038A (ja) * 2011-05-30 2012-12-13 Mitsubishi Electric Corp マルチサイクルパス検出装置及びマルチサイクルパス検出プログラム
CN117422032A (zh) * 2023-12-19 2024-01-19 苏州旗芯微半导体有限公司 一种包含多个子系统的复杂系统的局部复位电路

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8122410B2 (en) * 2008-11-05 2012-02-21 International Business Machines Corporation Specifying and validating untimed nets
JP5262996B2 (ja) * 2009-05-26 2013-08-14 富士通セミコンダクター株式会社 論理シミュレーション装置、方法、及びプログラム
US9613171B1 (en) 2016-01-15 2017-04-04 International Business Machines Corporation Multi-cycle signal identification for static timing analysis

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273351A (ja) * 2000-03-28 2001-10-05 Toshiba Corp マルチサイクルパス検証装置、検証方法及び検証プログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP2001297125A (ja) * 2000-04-11 2001-10-26 Nec Eng Ltd 論理合成・遅延解析システム
JP2003067442A (ja) * 2001-08-27 2003-03-07 Nec Microsystems Ltd 非同期回路のタイミング検証装置とそのタイミング検証方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263478B1 (en) * 1997-08-12 2001-07-17 Cadence Design Systems, Inc. System and method for generating and using stage-based constraints for timing-driven design
JPH1185810A (ja) * 1997-09-09 1999-03-30 Mitsubishi Electric Corp 半導体集積回路の論理回路検証装置および論理回路検証装置における論理回路検証方法
US6336205B1 (en) * 1998-11-12 2002-01-01 Matsushita Electric Industrial Co., Ltd. Method for designing semiconductor integrated circuit
EP1198502B1 (en) * 1999-04-12 2004-10-13 Ashland Inc. Pressure sensitive adhesives
JP4083544B2 (ja) * 2002-11-18 2008-04-30 富士通株式会社 マルチサイクルパス解析方法
US7299433B2 (en) * 2003-06-09 2007-11-20 Intel Corporation Timing analysis apparatus, systems, and methods
US7194715B2 (en) * 2004-04-30 2007-03-20 International Business Machines Corporation Method and system for performing static timing analysis on digital electronic circuits

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273351A (ja) * 2000-03-28 2001-10-05 Toshiba Corp マルチサイクルパス検証装置、検証方法及び検証プログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP2001297125A (ja) * 2000-04-11 2001-10-26 Nec Eng Ltd 論理合成・遅延解析システム
JP2003067442A (ja) * 2001-08-27 2003-03-07 Nec Microsystems Ltd 非同期回路のタイミング検証装置とそのタイミング検証方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230392A (ja) * 2008-03-21 2009-10-08 Fujitsu Microelectronics Ltd シミュレーション装置、シミュレーション方法及びプログラム
US8504347B2 (en) 2008-03-21 2013-08-06 Fujitsu Semiconductor Limited Simulation apparatus, simulation method, and program to perform simulation on design data of a target circuit
JP2012248038A (ja) * 2011-05-30 2012-12-13 Mitsubishi Electric Corp マルチサイクルパス検出装置及びマルチサイクルパス検出プログラム
CN117422032A (zh) * 2023-12-19 2024-01-19 苏州旗芯微半导体有限公司 一种包含多个子系统的复杂系统的局部复位电路
CN117422032B (zh) * 2023-12-19 2024-03-12 苏州旗芯微半导体有限公司 一种包含多个子系统的复杂系统的局部复位电路

Also Published As

Publication number Publication date
US20090070619A1 (en) 2009-03-12

Similar Documents

Publication Publication Date Title
WO2007142201A1 (ja) マルチサイクルパス情報の検証方法、およびマルチサイクルパス情報の検証装置
JP2006244073A (ja) 半導体設計装置
US10546086B2 (en) Hard error simulation and usage thereof
JP2001273165A (ja) 中央処理装置の挙動モデルの細粒度妥当性を検証するための方法および装置
JP2004038617A (ja) 論理検証システム及び方法、論理コーン抽出装置及び方法、論理検証及び論理コーン抽出プログラム
JP2007108863A (ja) 遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体
CN117094269B (zh) 一种验证方法、装置、电子设备及可读存储介质
US8117578B2 (en) Static hazard detection device, static hazard detection method, and recording medium
US20100269003A1 (en) Delay fault diagnosis program
JP4272687B2 (ja) シミュレーション装置
Nyberg et al. Closing the gap between speed and configurability of multi-bit fault emulation environments for security and safety–critical designs
US20050108596A1 (en) Method of verifying circuitry used for testing a new logic component prior to the first release of the component
JP3152205B2 (ja) 論理シミュレーション装置及びその方法並びにその制御プログラムを記録した記録媒体
JP2002259488A (ja) クロックスキュー検証方法
JP2011034517A (ja) 等価性検証装置、そのデータ処理方法、およびプログラム
JP2007017179A (ja) 半導体集積回路の検証方法および検査方法
WO2022239226A1 (ja) 組込み回路、回路品質確認装置、及び回路品質確認方法
JP2001155043A (ja) 論理シミュレーションにおけるタイミングチェック方法およびタイミングチェック方法を記録した記録媒体
US7467366B2 (en) Method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between components
JP3077617B2 (ja) 遅延シミュレータ
JP2007140877A (ja) 論理等価性検証システム及びそれを用いた検証方法
JP2872076B2 (ja) 論理検証装置およびその方法
JP3171236B2 (ja) 入力端子競合パターン検出システム
US20100050061A1 (en) Clock domain check method, clock domain check program, and recording medium
Riazati et al. Non-overlapping set of efficient assertions

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07744667

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12278913

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 07744667

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP