JP2012128712A - Activated path extraction program, activated path extraction device, and activated path extraction method - Google Patents

Activated path extraction program, activated path extraction device, and activated path extraction method Download PDF

Info

Publication number
JP2012128712A
JP2012128712A JP2010280329A JP2010280329A JP2012128712A JP 2012128712 A JP2012128712 A JP 2012128712A JP 2010280329 A JP2010280329 A JP 2010280329A JP 2010280329 A JP2010280329 A JP 2010280329A JP 2012128712 A JP2012128712 A JP 2012128712A
Authority
JP
Japan
Prior art keywords
pin
path
simulation
signal value
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010280329A
Other languages
Japanese (ja)
Other versions
JP5707921B2 (en
Inventor
Tsutomu Ishida
勉 石田
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 Ltd
Original Assignee
Fujitsu 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 Ltd filed Critical Fujitsu Ltd
Priority to JP2010280329A priority Critical patent/JP5707921B2/en
Publication of JP2012128712A publication Critical patent/JP2012128712A/en
Application granted granted Critical
Publication of JP5707921B2 publication Critical patent/JP5707921B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To quickly extract an activated path through which a signal propagates in the case of the delay test of an actual chip.SOLUTION: This activated path extraction device includes: a simulation part 11 for specifying a signal value change pin whose signal value has changed in the case of a delay test by performing the simulation of the delay test on the basis of a test pattern in the case of the delay test and the net list of an actual chip; and a path trace part 12 for tracing the activated path by following the signal value change pin on the basis of the signal value change pin specified by the simulation part 11 and the net list of the actual chip.

Description

本件は、実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出するプログラム,装置および装置に関する。   The present invention relates to a program, an apparatus, and an apparatus for extracting an activation path through which a signal has propagated during a delay test on an actual chip.

近年、チップ、例えばLSI(Large Scale Integration)等の集積回路を設計製造する際には、プロセスの微細化に伴って、実際に製造された実チップが、設計段階での基準性能値つまりスペックを満たせないケースが増加している。つまり、設計段階でシミュレーションツール等によって算出された、設計対象のチップ中のパス遅延の予測値と、実チップにおいて実際に得られるパス遅延値(真値)とに「ずれ」が生じ、実チップが設計段階でのスペックを満たせなくなる場合が多々生じている。   In recent years, when designing and manufacturing a chip, for example, an integrated circuit such as an LSI (Large Scale Integration), an actual chip actually manufactured has a reference performance value, that is, a specification at the design stage as the process is miniaturized. The number of cases that cannot be satisfied is increasing. In other words, a “deviation” occurs between the path delay predicted value in the design target chip calculated by a simulation tool or the like in the design stage and the path delay value (true value) actually obtained in the actual chip. Often fail to meet the specifications at the design stage.

このため、チップの設計製造に際して、実チップに対するディレイテスト(遅延試験)が必要不可欠になっている。図12は、ディレイテストを含む一般的なチップの設計製造の手順を概略的に説明するためのフローチャートである。この図12に示すように、設計対象チップの設計(ステップS1)が行なわれると、設計されたチップの試作チップつまり実チップの作成(ステップS2)が行なわれる。そして、実チップに対するディレイテスト(ステップS3)が行なわれ、そのディレイテストの結果が所定スペックを満たしているか否かが判定される。   For this reason, a delay test for a real chip is indispensable when designing and manufacturing the chip. FIG. 12 is a flowchart for schematically explaining a general chip design and manufacturing procedure including a delay test. As shown in FIG. 12, when the design target chip is designed (step S1), a prototype chip of the designed chip, that is, an actual chip is created (step S2). Then, a delay test (step S3) is performed on the actual chip, and it is determined whether or not the result of the delay test satisfies a predetermined specification.

ディレイテストの結果が所定スペックを満たしている場合(ステップS3のYESルート)、ステップS1での設計結果に基づく実チップの生産(ステップS4)が開始される。一方、ディレイテストの結果が所定スペックを満たしていない場合(ステップS3のNOルート)、ディレイテストの結果に基づいて故障解析つまり遅延要因の解析(ステップS5)が行なわれる。そして、ステップS1に戻り、ステップS5での解析結果に従って設計対象チップの設計が再度行なわれる。   If the result of the delay test satisfies a predetermined specification (YES route in step S3), production of an actual chip based on the design result in step S1 (step S4) is started. On the other hand, when the result of the delay test does not satisfy the predetermined specification (NO route of step S3), failure analysis, that is, analysis of the delay factor (step S5) is performed based on the result of the delay test. Then, returning to step S1, the design target chip is designed again according to the analysis result in step S5.

ここで、ディレイテストは、実チップがどの程度のクロック周波数またはクロック周期で動作するかを測定して確認するもので、一回のディレイテストでは、以下のような処理が行なわれる。なお、図13は、ディレイテストを説明すべく試験対象の実チップ上の回路構成の例を示す図である。この図13において、101は実チップ上の入力側フリップフロップ(またはラッチ)、102は同チップ上の出力側フリップフロップ(またはラッチ)である。以下「フリップフロップ」のことを「FF」と記載する。これらのFF101とFF102との間に、各種ゲートを含む組み合わせ回路が配置されている。この組み合わせ回路の接続関係は、設計対象回路のネットリストに基づいて特定される。   Here, the delay test is performed by measuring at what clock frequency or clock period the actual chip operates, and the following processing is performed in one delay test. FIG. 13 is a diagram illustrating an example of a circuit configuration on an actual chip to be tested in order to explain the delay test. In FIG. 13, 101 is an input side flip-flop (or latch) on the actual chip, and 102 is an output side flip-flop (or latch) on the same chip. Hereinafter, the “flip-flop” is referred to as “FF”. A combinational circuit including various gates is arranged between these FF101 and FF102. The connection relationship of the combinational circuit is specified based on the net list of the circuit to be designed.

まず、2組のテストベクトルが用意され、これら2組のテストベクトルに基づく信号が実チップの入力側FF101から出力側FF102へ伝播される。つまり、1つ目のテストベクトルに基づく値が実チップ中の各ゲートの入力ピンや出力ピンにセットされた後、所定時間間隔をあけた2回のクロックが発せられる。これにより、1つ目のクロックエッジで2つ目のテストベクトルが入力側FF101からパス上へ出力(launch)されてパスが活性化され、信号が入力側FF101から出力側FF102へ伝播される。続く2つ目のクロックエッジで、出力側FF102に伝播した信号値が、出力側FF102にキャプチャされる。そして、出力側FF102における値と、上記2つのテストベクトルを入力した際に出力側FF102で得られるべき期待値(予測値)とが比較され、これらの値の一致/不一致が判定される。   First, two sets of test vectors are prepared, and signals based on these two sets of test vectors are propagated from the input side FF101 of the actual chip to the output side FF102. That is, after a value based on the first test vector is set to the input pin and output pin of each gate in the actual chip, two clocks with a predetermined time interval are generated. As a result, the second test vector is launched from the input side FF 101 onto the path at the first clock edge to activate the path, and the signal is propagated from the input side FF 101 to the output side FF 102. At the subsequent second clock edge, the signal value propagated to the output FF 102 is captured by the output FF 102. Then, the value in the output FF 102 is compared with the expected value (predicted value) that should be obtained in the output FF 102 when the two test vectors are input, and a match / mismatch between these values is determined.

出力側FF102での値と予測値とが一致した場合には、上記所定時間間隔を一定量、例えば20MHzずつ小さくして、上記2つのテストベクトルが再度入力され、出力側FF102での値と期待値との一致/不一致が判定される。以上の処理が、出力側FF102での値と期待値とが不一致と判定されるまで繰り返し実行され、不一致と判定される直前の時間間隔(周期)が、ディレイテストの結果、つまり今回のディレイテストでの遅延時間の測定値として測定される。   When the value at the output side FF102 matches the predicted value, the predetermined time interval is reduced by a fixed amount, for example, 20 MHz, and the two test vectors are input again, and the value at the output side FF102 and the expected value are expected. A match / mismatch with the value is determined. The above processing is repeatedly executed until it is determined that the value at the output side FF 102 does not match the expected value, and the time interval (cycle) immediately before the determination is made is the result of the delay test, that is, the current delay test. It is measured as a measured value of the delay time.

このようにして得られた測定値が所定スペックを満たすか否かが判断され、所定スペックを満たす、つまり試作された実チップが目標とするクロック周期で正常に動作すると判断されれば、上述のように、実チップの生産(ステップS4)が開始される。一方、上記測定値が所定スペックを満たしていないと判断されれば、上述のように、ディレイテストの結果に基づいて遅延要因の解析(ステップS5)および再設計(ステップS1)が行なわれる。   If it is determined whether or not the measurement value obtained in this way satisfies a predetermined specification, and if it is determined that the predetermined chip satisfies the predetermined specification, that is, if the prototyped actual chip operates normally in the target clock cycle, As described above, production of actual chips (step S4) is started. On the other hand, if it is determined that the measured value does not satisfy the predetermined specification, the delay factor is analyzed (step S5) and redesigned (step S1) based on the result of the delay test as described above.

ステップS5では、例えば、スピードパス解析と呼ばれる故障解析手法が用いられ、遅延要因の解析が行なわれる。なお、以下では、ディレイテストに際し上記2つのテストベクトルの入力によって信号が伝播したパス、つまり「活性化したパス」のことを「活性化パス」という。なお、図13において、活性化パスは太線によって示されている。   In step S5, for example, a failure analysis method called speed path analysis is used to analyze a delay factor. In the following, a path in which a signal is propagated by the input of the two test vectors in the delay test, that is, an “activated path” is referred to as an “activation path”. In FIG. 13, the activation path is indicated by a bold line.

スピードパス解析では、フェイルした出力側FF102に到達する各活性化パスに対し、ディレイテストで得られた遅延時間の測定値が割り当てられて解析が行なわれる。フェイルした出力側FF102とは、ステップS3で上記測定値が上記所定スペックを満たしていないと判断された出力側FF102のことである。ここで、図14〜図16を参照しながら、一般的なスピードパス解析について説明する。なお、図14は解析対象パス毎に設定される特徴ベクトルの各ベクトル成分の定義を示す図、図15は図14に示す特徴ベクトルの具体例を示す図、図16はスピードパス解析結果の例を示す図である。   In the speed path analysis, the measurement of the delay time obtained by the delay test is assigned to each activation path that reaches the failed output side FF 102 for analysis. The failed output FF 102 is the output FF 102 that is determined in step S3 that the measured value does not satisfy the predetermined specification. Here, a general speed path analysis will be described with reference to FIGS. 14 is a diagram showing the definition of each vector component of the feature vector set for each analysis target path, FIG. 15 is a diagram showing a specific example of the feature vector shown in FIG. 14, and FIG. 16 is an example of the speed path analysis result. FIG.

まず、図14および図15を参照しながら、スピードパス解析における「特徴」について説明する。スピードパス解析では、各パスの特徴をベクトルによって表現する。ここでは、そのベクトルを特徴ベクトルVと表記する。また、特徴ベクトルVは、解析対象のパス毎に設定され、パスpxの特徴ベクトルVをV(px)と表記する。この特徴ベクトルV(px)の各ベクトル成分は、パスpxにおける特徴の値であり、例えば、図14に示すごとく定義されて与えられる。特徴ベクトルV(px)にベクトル成分として含まれる複数の特徴は、後述する(2)式で示すように、各解析対象パスpxに割り当てられる遅延時間の実測値d_silicon(px)と遅延時間の予測値d_predict(px)との差D(px)の発生要因(遅延要因)となるものである。   First, “features” in the speed path analysis will be described with reference to FIGS. 14 and 15. In speed path analysis, the features of each path are represented by vectors. Here, the vector is referred to as a feature vector V. The feature vector V is set for each path to be analyzed, and the feature vector V of the path px is denoted as V (px). Each vector component of the feature vector V (px) is a feature value in the path px, and is defined and given as shown in FIG. 14, for example. A plurality of features included as vector components in the feature vector V (px) are, as shown in equation (2) described later, an actual measurement value d_silicon (px) of a delay time allocated to each analysis target path px and a prediction of the delay time. This is a cause (delay factor) of generating a difference D (px) from the value d_predict (px).

各特徴の定義は、例えば図14に示すように、以下の通りである。特徴g_low(px)は、パスpx上の低電力トランジスタ(low_vth)の数であり、特徴loc1(px)は、パスpxが指定領域1(loc1)を通過する場合に“1”/通過しない場合に“0”となる値である。また、特徴loc2(px)は、パスpxが指定領域2(loc2)を通過する場合に“1”/通過しない場合に“0”となる値であり、特徴len(px)は、パスpxの配線長である。なお、図15に示すパスpiに係る特徴ベクトルV(pi)では、パスpi上の低電力トランジスタの数が2であり、パスpiが指定領域2を通過する一方で指定領域1を通過せず、パスpiの配線長が6である。また、図15に示すパスpjに係る特徴ベクトルV(pj)では、パスpj上の低電力トランジスタの数が4であり、パスpjが指定領域1を通過する一方で指定領域2を通過せず、パスpjの配線長が15である。   The definition of each feature is as follows, for example, as shown in FIG. The feature g_low (px) is the number of low power transistors (low_vth) on the path px, and the feature loc1 (px) is “1” when the path px passes through the specified region 1 (loc1) / when it does not pass This value is “0”. The feature loc2 (px) is “1” when the path px passes through the designated area 2 (loc2) / “0” when it does not pass, and the feature len (px) is the value of the path px. Wiring length. In the feature vector V (pi) related to the path pi shown in FIG. 15, the number of low-power transistors on the path pi is 2, and the path pi passes through the designated area 2 but does not pass through the designated area 1. The path pi has a wiring length of 6. In the feature vector V (pj) related to the path pj shown in FIG. 15, the number of low-power transistors on the path pj is 4, and the path pj passes through the designated area 1 but does not pass through the designated area 2. The wiring length of the path pj is 15.

上述のように、解析対象パスpx毎に特徴ベクトルV(px)が抽出されると、以下のようにして、スピードパス解析が実行される。
ここで、ディレイテストによって取得され各解析対象パスpxに割り当てられる遅延時間の測定値を“d_silicon(Pi)”とし、各解析対象パスpxについてツール等によって算出された遅延時間の予測値を“d_predict(Pi)”とすると、これらの測定値と予測値との差D(px)は、下記(1)式のように与えられる。
d_silicon(px)=d_predict(px)+D(px) (1)
As described above, when the feature vector V (px) is extracted for each analysis target path px, the speed path analysis is executed as follows.
Here, the measurement value of the delay time acquired by the delay test and assigned to each analysis target path px is “d_silicon (Pi)”, and the predicted delay time calculated by a tool or the like for each analysis target path px is “d_predict”. Assuming that (Pi) ″, the difference D (px) between these measured values and predicted values is given by the following equation (1).
d_silicon (px) = d_predict (px) + D (px) (1)

上記(1)式において、D(px)<<d_predict(px)、つまりD(px)はd_predict(px)に対し十分に小さい。このため、差D(px)は、簡略的にしかモデル化されていなかった現象を示す複数の特徴g_low(px), loc1(px), loc2(px), …, len(px)について、線形近似することができると考えられるので、各解析対象パスpxについて、下記(2)式が成り立つことになる。下記(2)式において、解析対象パスpxは、例えばp3, p7, …, pnである。   In the above equation (1), D (px) << d_predict (px), that is, D (px) is sufficiently smaller than d_predict (px). Therefore, the difference D (px) is linear with respect to a plurality of features g_low (px), loc1 (px), loc2 (px),..., Len (px) indicating a phenomenon that has been modeled only in a simplified manner. Since it can be approximated, the following equation (2) is established for each analysis target path px. In the following equation (2), the analysis target path px is, for example, p3, p7,.

D(p3)=W_g_low*g_low(p3)+W_loc1*loc1(p3)+W_loc2*loc2(p3)+…+W_len*len(p3)
D(p7)=W_g_low*g_low(p7)+W_loc1*loc1(p7)+W_loc2*loc2(p7)+…+W_len*len(p7)
: : (2)
D(pn)=W_g_low*g_low(pn)+W_loc1*loc1(pn)+W_loc2*loc2(pn)+…+W_len*len(pn)
ここで、W_g_low, W_loc1, W_loc2, …, W_lenは、それぞれ、パスpxの特徴ベクトルV(px)のベクトル成分g_low(px), loc1(px), loc2(px), …, len(px)に対する重み係数[ps]である。
D (p3) = W_g_low * g_low (p3) + W_loc1 * loc1 (p3) + W_loc2 * loc2 (p3) +… + W_len * len (p3)
D (p7) = W_g_low * g_low (p7) + W_loc1 * loc1 (p7) + W_loc2 * loc2 (p7) +… + W_len * len (p7)
:: (2)
D (pn) = W_g_low * g_low (pn) + W_loc1 * loc1 (pn) + W_loc2 * loc2 (pn) +… + W_len * len (pn)
Here, W_g_low, W_loc1, W_loc2,..., W_len correspond to the vector components g_low (px), loc1 (px), loc2 (px),..., Len (px) of the feature vector V (px) of the path px, respectively. Weight coefficient [ps].

そして、各解析対象パスpxについて導出された(2)式を、SVM(Support Vector Machine)回帰などの線形回帰解析により、重み係数W_g_low, W_loc1, W_loc2, …, W_lenについて解くことで、重み係数W_g_low, W_loc1, W_loc2, …, W_lenの値が取得される。このように取得された重み係数のうち、値が大きいものに対応する特徴が誤差D(px)を発生させる要因になっていると考えられる。より具体的に、重み係数W_g_low, W_loc1, W_loc2, …, W_lenとして、例えば図16に示すような値が取得されたものとする。なお、図16では、最大値を示す重み係数W_g_lowを100として、各値の正規化処理が施されている。この図16に示すスピードパス解析結果の例では、特徴g_lowつまり低電力トランジスタが、誤差D(px)の発生する最大要因であると解析される。   Then, the weighting coefficient W_g_low is obtained by solving the expression (2) derived for each analysis target path px with respect to the weighting coefficients W_g_low, W_loc1, W_loc2, ..., W_len by linear regression analysis such as SVM (Support Vector Machine) regression. , W_loc1, W_loc2, ..., W_len values are obtained. It can be considered that a feature corresponding to a large value among the weighting coefficients obtained in this way is a factor causing the error D (px). More specifically, it is assumed that, for example, values as shown in FIG. 16 are acquired as the weighting factors W_g_low, W_loc1, W_loc2,. In FIG. 16, each value is normalized by setting the weighting factor W_g_low indicating the maximum value to 100. In the example of the speed path analysis result shown in FIG. 16, it is analyzed that the feature g_low, that is, the low power transistor is the largest cause of the error D (px).

ところで、上述したように、スピードパス解析では、フェイルした出力側FF102に到達する各活性化パスに対し、ディレイテストで得られた遅延時間の測定値が割り当てられて解析が行なわれる。このため、スピードパス解析を実行する際には、前もって活性化パスを抽出して特定しておく必要がある。
通常、ディレイテストでは、入力された2つのテストベクトルと、これら2つのテストベクトルを入力した際に出力側FF102で得られるべき期待値と、遅延時間の測定値とが、テストパターンとして得られる。また、フェイルした出力側FF102を特定する情報(FF名等)をリストアップしたフェイルリストも得られる。
By the way, as described above, in the speed path analysis, the measurement of the delay time obtained in the delay test is assigned to each activation path that reaches the failed output side FF 102 for analysis. For this reason, when performing the speed path analysis, it is necessary to extract and specify the activation path in advance.
Normally, in the delay test, two input test vectors, an expected value to be obtained at the output FF 102 when these two test vectors are input, and a measured value of the delay time are obtained as test patterns. Further, a fail list in which information (FF name or the like) specifying the failed output side FF 102 is listed is also obtained.

しかしながら、ディレイテストでは、スピードパス解析で必要になる活性化パスを特定する情報、具体的には、入力側FFと出力側FFとの間で活性化パスが通過するピンやネットを特定する情報は、取得・保存されていない。その理由としては、活性化パスに関する情報を必要とするスピードパス解析等の解析手法が注目されるようになったのは近年のことであり、活性化パスを特定する情報を取得する必要性が無かったことが挙げられる。また、他の理由としては、ディレイテストの実行中に活性化パスを特定する情報を取得すると、ディレイテストに要する時間が膨大になるとともに、取得される情報のデータ量が膨大になることが挙げられる。   However, in the delay test, information for identifying an activation path required for speed path analysis, specifically, information for identifying a pin or a net through which the activation path passes between the input side FF and the output side FF Is not acquired or stored. The reason for this is that analysis methods such as speed path analysis that require information on activation paths have recently attracted attention, and there is a need to acquire information for identifying activation paths. It was mentioned that there was nothing. Another reason is that acquiring information for identifying an activation path during execution of a delay test results in an enormous amount of time for the delay test and an enormous amount of data to be acquired. It is done.

特開平04−055776号公報Japanese Patent Laid-Open No. 04-055776 特開平04−038568号公報Japanese Patent Laid-Open No. 04-038568

P. Bastani, N. Callegari, Li-C. Wang, et al., “Statistical Diagnosis of Unmodeled Systematic Timing Effects”, DAC’08, 22.1, pp.355-360P. Bastani, N. Callegari, Li-C. Wang, et al., “Statistical Diagnosis of Unmodeled Systematic Timing Effects”, DAC’08, 22.1, pp.355-360 P. Bastani, K. Killpack, et al., “Speedpath Prediction Based on Learning from a Small Set of Examples”, DAC’08, 12.3, pp.217-222P. Bastani, K. Killpack, et al., “Speedpath Prediction Based on Learning from a Small Set of Examples”, DAC’08, 12.3, pp.217-222

1つの側面では、本件は、実チップの遅延試験の際に信号が伝播した活性化パスを高速に抽出することを目的とする。   In one aspect, the object of the present invention is to quickly extract an activation path through which a signal has propagated during a delay test of an actual chip.

本件の活性化パス抽出プログラムは、実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出するコンピュータに、前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定し、前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう、処理を実行させる。   The activation path extraction program of the present case is a computer that extracts an activation path through which a signal has been propagated during a delay test on an actual chip, and the delay path based on the test pattern in the delay test and the net list of the actual chip. By performing a test simulation, a signal value change pin whose signal value has changed during the delay test is specified, and the signal value is determined based on the signal value change pin specified by the simulation and a netlist of the actual chip. By tracing the change pin, the process of tracing the activation path is executed.

また、本件の活性化パス抽出装置は、実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出するもので、以下のシミュレーション部およびパストレース部を有することを要件としている。ここで、前記シミュレーション部は、前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定する。前記パストレース部は、前記シミュレーション部によって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう。   In addition, the activation path extraction apparatus of the present case extracts an activation path through which a signal has propagated during a delay test on an actual chip, and is required to have the following simulation unit and path trace unit. Here, the simulation unit performs a simulation of the delay test based on a test pattern at the time of the delay test and a net list of the real chip, thereby changing a signal value at which the signal value has changed at the time of the delay test. Identify the pin. The path trace unit traces the activation path by tracing the signal value change pin based on the signal value change pin specified by the simulation unit and the net list of the real chip.

さらに、本件の活性化パス抽出方法は、実チップに対する遅延試験の際に信号が伝播した活性化パスをコンピュータにより抽出するものであって、前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験時に信号値が変化した信号値変化ピンを特定し、前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう。   Further, the activation path extraction method of the present invention is to extract an activation path through which a signal has propagated during a delay test for an actual chip by a computer, and the test pattern and the net of the actual chip are extracted from the delay test. By performing simulation of the delay test based on the list, a signal value change pin whose signal value has changed during the delay test is specified, and the signal value change pin specified by the simulation and the netlist of the actual chip are Based on the signal value change pin, the activation path is traced.

実チップの遅延試験の際に信号が伝播した活性化パスが、遅延試験の際のテストパターンに基づき、高速に抽出される。   An activation path through which a signal propagates during a delay test of an actual chip is extracted at high speed based on a test pattern in the delay test.

本実施形態の活性化パス抽出装置の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置におけるシミュレーション部によって得られる信号値変化ピン情報の例を示す図である。It is a figure which shows the example of the signal value change pin information obtained by the simulation part in the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置におけるシミュレーション部によって得られるクロック制御系ピン情報の例を示す図である。It is a figure which shows the example of the clock control system pin information obtained by the simulation part in the activation path | pass extraction apparatus of this embodiment. クロック制御系パスおよびクロック制御系ピンを説明するための図である。It is a figure for demonstrating a clock control system path | route and a clock control system pin. グリッチを説明するための図である。It is a figure for demonstrating a glitch. 本実施形態の活性化パス抽出装置におけるグリッチ検出手法を説明するための図である。It is a figure for demonstrating the glitch detection method in the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置における不定値設定手段としての機能を説明すべくセルライブラリ(Verilogソースコード)の要部記述を示す図である。It is a figure which shows the principal part description of a cell library (Verilog source code) in order to demonstrate the function as an indefinite value setting means in the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置におけるパストレース部によるトレース動作を説明するための図である。It is a figure for demonstrating the trace operation | movement by the path trace part in the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置における処理の流れを説明するためのフローチャートである。It is a flowchart for demonstrating the flow of a process in the activation path | pass extraction apparatus of this embodiment. 本実施形態の活性化パス抽出装置におけるパストレース部の動作を説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of the path trace part in the activation path | pass extraction apparatus of this embodiment. (A)〜(H)は本実施形態の活性化パス抽出装置におけるパストレース部による活性化パスの深さ優先探索および計数動作を説明するための図である。(A)-(H) is a figure for demonstrating the depth priority search and counting operation | movement of the activated path by the path trace part in the activated path extracting device of this embodiment. ディレイテストを含む一般的なチップの設計製造の手順を概略的に説明するためのフローチャートである。It is a flowchart for demonstrating roughly the procedure of the design and manufacture of the general chip | tip containing a delay test. ディレイテストを説明すべく試験対象の実チップ上の回路構成の例を示す図である。It is a figure which shows the example of the circuit structure on the real chip | tip of a test object in order to demonstrate a delay test. 解析対象パス毎に設定される特徴ベクトルの各ベクトル成分の定義を示す図である。It is a figure which shows the definition of each vector component of the feature vector set for every analysis object path. 図14に示す特徴ベクトルの具体例を示す図である。It is a figure which shows the specific example of the feature vector shown in FIG. スピードパス解析結果の例を示す図である。It is a figure which shows the example of a speed path analysis result.

以下、図面を参照して実施の形態を説明する。
〔1〕本実施形態の活性化パス抽出装置の構成および機能
〔1−1〕全体構成
図1は、本実施形態の活性化パス抽出装置1の機能構成を示すブロック図である。この図1に示す活性化パス抽出装置1は、実チップに対するディレイテスト(遅延試験)時に信号が伝播した活性化パスを抽出する機能を果たす。この機能を実現するため、活性化パス抽出装置1は、一般的なパーソナルコンピュータ等の計算機から構成され、処理部10および記憶部20を有するほか、設計者によって操作され各種情報を本装置1に入力するマンマシンインタフェース(図示略)を有している。なお、処理部10は、CPU(Central Processing Unit)等であり、記憶部20は、RAM(Random Access Memory),ROM(Read Only Memory),ハードディスク等の内部記憶装置であってもよいし、外部記憶装置であってもよい。
Hereinafter, embodiments will be described with reference to the drawings.
[1] Configuration and Function of Activation Path Extraction Device of this Embodiment [1-1] Overall Configuration FIG. 1 is a block diagram showing a functional configuration of the activation path extraction device 1 of this embodiment. The activation path extraction apparatus 1 shown in FIG. 1 functions to extract an activation path through which a signal has propagated during a delay test for a real chip. In order to realize this function, the activation path extraction device 1 is composed of a computer such as a general personal computer, and has a processing unit 10 and a storage unit 20 and is operated by a designer to store various information in the device 1. It has a man-machine interface (not shown) for inputting. The processing unit 10 is a CPU (Central Processing Unit) or the like, and the storage unit 20 may be an internal storage device such as a RAM (Random Access Memory), a ROM (Read Only Memory), a hard disk, or the like. It may be a storage device.

処理部10は、活性化パス抽出プログラムを実行することにより、後述するシミュレーション部11およびパストレース部12としての機能を果たす。
また、記憶部20は、後述するディレイテスト結果データベース21,ネットリスト22,トグルピン情報リスト23,クロック制御系ピン情報リスト24および活性化パストレース結果データベース25を格納するとともに、設計者によって設定される各種情報や上記活性化パス抽出プログラムなども格納する。
The processing unit 10 functions as a simulation unit 11 and a path trace unit 12 described later by executing the activation path extraction program.
The storage unit 20 stores a delay test result database 21, a net list 22, a toggle pin information list 23, a clock control system pin information list 24, and an activation path trace result database 25, which will be described later, and is set by the designer. Various information and the activation path extraction program are also stored.

〔1−2〕記憶部における保存データ
ディレイテスト結果データベース21は、図12および図13を参照しながら前述した手順で得られたディレイテスト結果を格納する。一回のディレイテストで得られたディレイテスト結果には、一組のテストパターン211およびフェイルリスト212が含まれている。これら一組のテストパターン211およびフェイルリスト212は、前記一回のディレイテストを特定する識別情報(ID)に対応付けられて、データベース21に保存される。
[1-2] Stored Data in the Storage Unit The delay test result database 21 stores the delay test results obtained by the procedure described above with reference to FIGS. The delay test result obtained by one delay test includes a set of test patterns 211 and a fail list 212. The set of test patterns 211 and the fail list 212 is stored in the database 21 in association with identification information (ID) that identifies the one-time delay test.

テストパターン211には、上述したように、ディレイテストで用いられた2つのテストベクトルと、これら2つのテストベクトルを入力した際に出力側FF102で得られるべき期待値と、ディレイテストで得られた遅延時間の測定値とが含まれている。ここで、遅延時間の測定値は、実チップ上の活性化パスにおいて信号が入力側FF101から出力側FF102までに到達する時間の測定値(図1中では“t [ps]”)である。   In the test pattern 211, as described above, the two test vectors used in the delay test, the expected value to be obtained at the output FF 102 when these two test vectors are input, and the delay test obtained Delay time measurements. Here, the measured value of the delay time is a measured value of the time for the signal to reach from the input side FF 101 to the output side FF 102 in the activation path on the actual chip (“t [ps]” in FIG. 1).

フェイルリスト212には、ディレイテストでフェイルした出力側FF102を特定する情報(FF名等)がリストアップされている。ここで、フェイルした出力側FF102とは、上述した通り、図12のステップS3で出力側FF102における値が所定スペックを満たしていないと判断された出力側FF102のことである。換言すれば、フェイルリスト212に登録された出力側FF102は、ディレイテストの結果、所定時間内に期待値を得られなかったFF、さらに換言すれば、実チップのディレイテストにおいて期待値と異なる値を出力したFFである。このような出力側FFのことを、以下では、「フェイルFF」という。   The fail list 212 lists information (such as FF name) that identifies the output FF 102 that has failed in the delay test. Here, as described above, the failed output FF 102 is the output FF 102 for which it is determined in step S3 in FIG. 12 that the value in the output FF 102 does not satisfy the predetermined specification. In other words, the output-side FF 102 registered in the fail list 212 is an FF that did not obtain an expected value within a predetermined time as a result of the delay test, in other words, a value different from the expected value in the delay test of the actual chip. It is FF which output. Such an output FF is hereinafter referred to as “fail FF”.

ネットリスト22は、設計(図12のステップS1)によって得られる設計データで、設計対象のチップ上におけるセル等の回路素子に関する情報や、セルの接続関係を含む、端子間の接続情報を保持している。ネットリスト22は、設計対象の回路を、セルライブラリ,サブモジュール,モジュールおよびチップとして階層的に記述するVerilogソースコードである(例えば図7参照)。   The netlist 22 is design data obtained by design (step S1 in FIG. 12), and holds connection information between terminals including information on circuit elements such as cells on the chip to be designed, and cell connection relationships. ing. The netlist 22 is Verilog source code that hierarchically describes circuits to be designed as cell libraries, submodules, modules, and chips (see, for example, FIG. 7).

トグルピン情報リスト23は、後述するごとくシミュレーション部11によって特定された信号値変化ピンの情報を保存する。なお、信号値変化ピンとは、ディレイテスト時に信号値が変化したピンのことであり、「トグル(toggle)したピン」または「トグルピン」とも呼ばれる。ここで、信号値の変化とは、信号値が、0から1へ、1から0へ、0からx(不定値)へ、xから0へ、1からxへ、xから1へのうちのいずれか一つの変化を示すことである。そして、トグルピン情報リスト23には、例えば図2に示すように、トグルピンを特定する情報として、そのトグルピンのピン名もしくは識別情報(ID)がリストアップされ登録される。なお、図2は、シミュレーション部11によって得られるトグルピン情報(リスト23)の例を示す図である。   The toggle pin information list 23 stores information on signal value change pins specified by the simulation unit 11 as described later. The signal value change pin is a pin whose signal value has changed during the delay test, and is also referred to as a “toggle pin” or “toggle pin”. Here, the change of the signal value means that the signal value is from 0 to 1, from 1 to 0, from 0 to x (indefinite value), from x to 0, from 1 to x, from x to 1. It is to show any one change. In the toggle pin information list 23, for example, as shown in FIG. 2, the pin name or identification information (ID) of the toggle pin is listed and registered as information for identifying the toggle pin. FIG. 2 is a diagram illustrating an example of toggle pin information (list 23) obtained by the simulation unit 11.

クロック制御系ピン情報リスト24は、後述するごとくシミュレーション部11によって特定されたクロック制御系ピンの値1または0を、例えば図3に示すように、そのクロック制御系ピンを特定するピン名(ピンID)に対応付けて保存する。ここで、クロック制御系ピンは、例えば、図4に示すように、クロック信号CKを各出力側FF102のクロック端子に入力する否かを制御する信号値を設定されるIH(inhibit)ピンである。なお、図3は、シミュレーション部11によって得られるクロック制御系ピン情報(リスト24)の例を示す図であり、図4は、クロック制御系パスおよびクロック制御系ピンを説明するための図である。   As will be described later, the clock control system pin information list 24 indicates the value 1 or 0 of the clock control system pin specified by the simulation unit 11, for example, as shown in FIG. ID). Here, for example, as shown in FIG. 4, the clock control system pin is an IH (inhibit) pin to which a signal value for controlling whether or not to input the clock signal CK to the clock terminal of each output FF 102 is set. . 3 is a diagram illustrating an example of clock control system pin information (list 24) obtained by the simulation unit 11, and FIG. 4 is a diagram for explaining a clock control system path and clock control system pins. .

図4に示す例では、出力側FF102のクロック端子には、クロック信号CKとIHピンの信号値との論理和を出力するORゲート103が接続されている。このため、IHピンの信号値が1に設定された場合、クロック信号CKは、ORゲート103を通過できず出力側FF102のクロック端子に入力されるのを禁止される。一方、IHピンの信号値が0に設定された場合、クロック信号CKは、ORゲート103を通過し出力側FF102のクロック端子に入力される。   In the example shown in FIG. 4, an OR gate 103 that outputs a logical sum of the clock signal CK and the signal value of the IH pin is connected to the clock terminal of the output side FF102. Therefore, when the signal value of the IH pin is set to 1, the clock signal CK cannot be passed through the OR gate 103 and is prohibited from being input to the clock terminal of the output side FF102. On the other hand, when the signal value of the IH pin is set to 0, the clock signal CK passes through the OR gate 103 and is input to the clock terminal of the output side FF102.

IHピンは、各種ゲートを含む組み合わせ回路(図示略)を介して入力側FF101に接続されており、入力側FF101からIHピンに到達するパスは、クロック制御系パスまたはIHパスと呼ばれる。本実施形態では、上述したIHパスと、入力側FF101から出力側FF102のデータピンに到達しデータが伝播するデータパスとが、活性化パスとして特定・抽出される対象になっている。   The IH pin is connected to the input side FF 101 via a combinational circuit (not shown) including various gates, and a path reaching the IH pin from the input side FF 101 is called a clock control system path or an IH path. In the present embodiment, the above-described IH path and the data path through which data propagates from the input FF 101 to the data pin of the output FF 102 are targets to be identified and extracted as activation paths.

活性化パストレース結果データベース25は、後述するごとくパストレース部12が活性化パスのトレースを行なって得た、活性化パスに関する情報を保存する。活性化パスに関する情報は、例えば、活性化パスが通過したピンのピン名(ピンID)や活性化パスが通過したネットのネット名(ネットID)であり、これらの情報は、活性化パスを特定するパス名(パスID)に対応付けられてデータベース25に保存される。また、データベース25は、後述するごとくパストレース部12の計数機能によって得られた活性化パスの数も保存される。   The activation path trace result database 25 stores information about the activation path obtained by the path trace unit 12 tracing the activation path as described later. The information on the activation path is, for example, the pin name (pin ID) of the pin through which the activation path has passed or the net name (net ID) of the net through which the activation path has passed. The data is stored in the database 25 in association with the path name (path ID) to be specified. The database 25 also stores the number of activation paths obtained by the counting function of the path trace unit 12 as described later.

〔1−3〕処理部の機能
次に、処理部10によって実現されるシミュレーション部11およびパストレース部12の機能について説明する。
〔1−3−1〕シミュレーション部の基本的な機能
シミュレーション部11は、実チップに対するディレイテスト時のテストパターン211と実チップのネットリスト22とに基づき、ディレイテストのシミュレーションを行なうことにより、ディレイテスト時に信号値が変化した信号値変化ピンを特定する。このとき、シミュレーション部11は、タイミングを考慮することなく、つまり遅延時間に関する情報を保持するSDF(Standard Delay Format)ファイルを用いることなく、ディレイテストのシミュレーションを行なう。
[1-3] Functions of Processing Unit Next, functions of the simulation unit 11 and the path tracing unit 12 realized by the processing unit 10 will be described.
[1-3-1] Basic Function of Simulation Unit The simulation unit 11 performs a delay test simulation based on the test pattern 211 at the time of the delay test for the real chip and the net list 22 of the real chip, thereby delaying the delay. The signal value changing pin whose signal value has changed during the test is specified. At this time, the simulation unit 11 performs a delay test simulation without considering the timing, that is, without using an SDF (Standard Delay Format) file that holds information about the delay time.

具体的に、シミュレーション部11は、実チップに対するディレイテストで用いられた2組のテストベクトルをデータベース21(テストパターン211)から読み出す。そして、シミュレーション部11は、これら2組のテストベクトルに基づく信号を、データベース21のネットリスト22に基づいて入力側FF101から出力側FF102へ伝播させる一連のディレイテスト動作を、タイミングを考慮することなくシミュレーションによって実行する。つまり、シミュレーション部11は、シミュレーションによって、1つ目のテストベクトルに基づく値を各ゲートの入力ピンや出力ピンにセットした後、所定時間間隔をあけた2回のクロックを発する。さらに、シミュレーション部11は、シミュレーションによって、1つ目のクロックエッジで2つ目のテストベクトルを入力側FF101からパス上へ出力(launch)してパスを活性化し、信号を入力側FF101から出力側FF102へ伝播させる。シミュレーション部11は、続く2つ目のクロックエッジで、出力側FF102に伝播した信号値を出力側FF102にキャプチャし、出力側FF102における値とテストパターン211から読み出された期待値とを比較し、これらの値の一致/不一致を判定する。   Specifically, the simulation unit 11 reads two sets of test vectors used in the delay test for the actual chip from the database 21 (test pattern 211). The simulation unit 11 then performs a series of delay test operations in which signals based on these two sets of test vectors are propagated from the input-side FF 101 to the output-side FF 102 based on the net list 22 of the database 21 without considering timing. Run by simulation. That is, the simulation unit 11 sets a value based on the first test vector to the input pin and the output pin of each gate by simulation, and then generates two clocks with a predetermined time interval. Further, the simulation unit 11 activates the path by launching the second test vector from the input side FF 101 on the path at the first clock edge by simulation, and the signal is output from the input side FF 101 to the output side. Propagate to FF102. The simulation unit 11 captures the signal value propagated to the output side FF102 at the second clock edge that follows, and compares the value in the output side FF102 with the expected value read from the test pattern 211. The match / mismatch of these values is determined.

このとき、シミュレーション部11は、信号を入力側FF101から出力側FF102へ伝播させるシミュレーションを行ないながら、信号値が変化したトグルピンを特定し、特定したトグルピンのピン名を、図2に示すように、トグルピン情報リスト23に保存する。ここで、シミュレーション部11が信号値が変化したか否かの判定を行なう対象ピンは、例えば、入力側FF101の出力ピン,出力側FF102の入力ピン,入力側FF101と出力側FF102との間の各種ゲートの入力ピンおよび出力ピン,上述したIHピンなどである。   At this time, the simulation unit 11 identifies the toggle pin whose signal value has changed while performing the simulation of propagating the signal from the input side FF101 to the output side FF102, and the pin name of the identified toggle pin is shown in FIG. Saved in the toggle pin information list 23. Here, the target pins for which the simulation unit 11 determines whether or not the signal value has changed are, for example, the output pins of the input side FF101, the input pins of the output side FF102, and between the input side FF101 and the output side FF102. These include input pins and output pins of various gates, the IH pins described above, and the like.

また、シミュレーション部11は、上述したシミュレーションにより、IHピンの値、特に本実施形態では2回目のクロックエッジでORゲート103のIHピン(図4参照)に設定された値を特定し、特定した値を、IHピンのピン名に対応付け、図3に示すように、クロック制御系ピン情報リスト24に保存する。このようにクロック制御系ピン情報リスト24に保存された情報と、トグルピン情報リスト23に保存された情報とは、後述するごとく、トレースすべき活性化パスを絞り込むための判定処理(図10のステップS31参照)に用いられる。   Further, the simulation unit 11 identifies and identifies the value of the IH pin, particularly the value set in the IH pin (see FIG. 4) of the OR gate 103 at the second clock edge in the present embodiment, by the above-described simulation. The value is associated with the pin name of the IH pin and stored in the clock control system pin information list 24 as shown in FIG. As described later, the information stored in the clock control system pin information list 24 and the information stored in the toggle pin information list 23 are determined according to the determination process (step of FIG. 10) for narrowing the activation paths to be traced. S31).

なお、シミュレーション部11は、シミュレーションによって得られた各出力側FF102の出力値とテストパターン211に含まれる期待値とを比較し、これらの出力値と期待値とが全て一致した場合、シミュレーションによって特定されリスト23,24に保存された活性化パスの情報を有効にしている。これにより、シミュレーション部11は、シミュレーションによって得られた情報の信頼性のチェックを行なっている。つまり、シミュレーション部11は、出力値と期待値とが全て一致した場合、シミュレーションの信頼性が確保されていると判断し、今回のシミュレーションで得られた情報を有効にし、以下の処理で利用する。一方、シミュレーション部11は、出力値と期待値とが一致しない場合、シミュレーションの信頼性が確保されていないと判断し、今回のシミュレーションで得られた情報を無効にし、シミュレーションを再度行なったりエラー通知を設計者等に通知したりする。   The simulation unit 11 compares the output value of each output-side FF 102 obtained by the simulation with the expected value included in the test pattern 211, and if the output value and the expected value all match, the simulation unit 11 specifies by simulation. The activation path information stored in the lists 23 and 24 is validated. Thereby, the simulation part 11 is checking the reliability of the information obtained by simulation. In other words, the simulation unit 11 determines that the reliability of the simulation is ensured when the output value and the expected value all match, validates the information obtained in this simulation, and uses it in the following processing. . On the other hand, if the output value and the expected value do not match, the simulation unit 11 determines that the reliability of the simulation is not ensured, invalidates the information obtained in the current simulation, performs the simulation again, or notifies an error. To the designers.

上述したように、シミュレーション部11は、遅延時間を考慮することなく実チップに対するディレイテストのシミュレーションを簡易的に行なって、ディレイテスト時における、入力側FF101と出力側FF102との間における各ピンの信号値の変化を追っている。このように、タイミングを考慮しないで行なう、ディレイテストのシミュレーションは、タイミングを考慮し遅延時間を算出しながら行なう、ディレイテストのシミュレーションに比べ、極めて高速に実行される。   As described above, the simulation unit 11 simply performs a delay test simulation for an actual chip without considering the delay time, and sets each pin between the input FF 101 and the output FF 102 during the delay test. The change in signal value is being followed. As described above, the delay test simulation performed without considering the timing is executed at a very high speed as compared with the delay test simulation performed while calculating the delay time in consideration of the timing.

〔1−3−2〕グリッチの検出手法および不定値設定手段の機能
ところで、複数の信号がゲートに入力される場合、これらの信号の微妙なタイミングずれによって、そのゲートの出力信号に、グリッチ(glitch)と呼ばれるノイズ波形が出現することがある。
ここで、図5を参照しながら、ANDゲート104の出力信号に出現するグリッチについて説明する。なお、図5はグリッチを説明するための図である。この図5に示すANDゲート104は、2つの入力ピンa,bから2つの入力信号を入力され、これら2つの入力信号の論理積結果を出力信号として出力ピンcから出力する。このようなANDゲート104に対して、0から1に立ち上がる第1入力信号と、1から0に立ち下がる第2入力信号とが、同じタイミングで、それぞれ入力ピンa,bから入力された場合について考える。
[1-3-2] Glitch detection method and function of indeterminate value setting means By the way, when a plurality of signals are input to the gate, the glitch ( A noise waveform called glitch) may appear.
Here, the glitch appearing in the output signal of the AND gate 104 will be described with reference to FIG. FIG. 5 is a diagram for explaining the glitch. The AND gate 104 shown in FIG. 5 receives two input signals from the two input pins a and b, and outputs the logical product result of these two input signals from the output pin c as an output signal. When the first input signal rising from 0 to 1 and the second input signal falling from 1 to 0 are input from the input pins a and b to the AND gate 104 at the same timing, respectively. Think.

このとき、実チップ上において第1入力信号の立ち上がりタイミングと第2入力信号の立ち上がりタイミングとをできるかぎり一致させたとしても、微妙なタイミングずれは必ず発生する。このため、実チップ上のANDゲート104の出力ピンcから出力される信号には、図5の右上に示すように、微小な時間間隔で0→1→0と変化するグリッチが出現する可能性がある。   At this time, even if the rising timing of the first input signal and the rising timing of the second input signal are matched as much as possible on the actual chip, a slight timing deviation always occurs. Therefore, there is a possibility that a glitch that changes from 0 → 1 → 0 at a minute time interval appears in the signal output from the output pin c of the AND gate 104 on the actual chip as shown in the upper right of FIG. There is.

一方、シミュレーション部11がタイミングを考慮することなくディレイテストのシミュレーションを行なう場合、第1入力信号の立ち上がりタイミングと第2入力信号の立ち上がりタイミングとは完全に同一であるとして取り扱われる。このため、ANDゲート104の出力ピンcから出力される信号は、図5の右下に示すように、0のまま何ら変化を示さなくなる。つまり、以降のシミュレーションでは、ANDゲート104の出力ピンcに続くパスに、論理上、何ら信号が伝播していないものとして取り扱われることになり、グリッチの存在が無視され、グリッチが伝播する活性化パスの存在も無視されてしまう。   On the other hand, when the simulation unit 11 performs the delay test simulation without considering the timing, the rising timing of the first input signal and the rising timing of the second input signal are handled as completely the same. For this reason, the signal output from the output pin c of the AND gate 104 remains 0 and does not show any change as shown in the lower right of FIG. That is, in the following simulation, the path following the output pin c of the AND gate 104 is treated as a logical signal that no signal is propagated, and the presence of the glitch is ignored and the glitch propagation is activated. The existence of the path is also ignored.

上述したグリッチ自体は、回路を動作させるために積極的に利用されるものではない。しかし、グリッチの出現は、回路における故障の要因になる可能性があるため、故障解析を行なう際にグリッチを無視することはできない。このため、タイミングを考慮しないディレイテストのシミュレーションを行ないながらも、グリッチによって信号値が変化するトグルピンを確実に特定し、グリッチが出現する可能性のあるパスを活性化パスとして抽出できるようにする必要がある。   The glitch itself described above is not actively used to operate the circuit. However, since the appearance of a glitch may cause a failure in the circuit, the glitch cannot be ignored when performing a failure analysis. Therefore, while performing a delay test simulation that does not consider the timing, it is necessary to reliably identify the toggle pin whose signal value changes due to the glitch and extract the path where the glitch may appear as the activation path There is.

そこで、本実施形態では不定値設定手段がそなえられている。この不定値設定手段は、シミュレーションの実行時に入力側FF101の出力ピンの信号値が変化する場合、その出力ピンの変化前の信号値と変化後の信号値との間に不定値xを所定時間txだけ設定する。そして、シミュレーション部11は、不定値設定手段によって不定値xを設定された信号値に基づいて、タイミングを考慮することなくディレイテストのシミュレーションを行なう。これにより、後述するごとく、シミュレーション部11は、通常の信号伝播によって信号値が変化するトグルピンのみならず、グリッチによって信号値が変化するトグルピンを特定することが可能になる。   Therefore, in this embodiment, an indefinite value setting means is provided. When the signal value of the output pin of the input side FF 101 changes during execution of the simulation, the indefinite value setting means sets the indefinite value x between the signal value before the change of the output pin and the signal value after the change for a predetermined time. Only tx is set. Then, the simulation unit 11 performs a delay test simulation without considering the timing based on the signal value for which the indeterminate value x is set by the indeterminate value setting means. As a result, as described later, the simulation unit 11 can specify not only a toggle pin whose signal value changes due to normal signal propagation but also a toggle pin whose signal value changes due to a glitch.

ここで、図6および図7を参照しながら、本実施形態でのグリッチ検出手法について具体的に説明する。なお、図6は、本実施形態におけるグリッチ検出手法を説明するための図、図7は、本実施形態における不定値設定手段としての機能を説明すべくセルライブラリの要部記述を示す図である。   Here, the glitch detection method in the present embodiment will be specifically described with reference to FIGS. 6 and 7. FIG. 6 is a diagram for explaining the glitch detection method in the present embodiment, and FIG. 7 is a diagram showing a main part description of the cell library for explaining the function as the indefinite value setting means in the present embodiment. .

不定値設定手段は、入力側FFの出力ピンの信号値が0から1に立ち上がる場合や1から0に立ち下がる場合、例えば図6の左側に示すように、信号値0と1との間や信号値1と0との間に不定値xを所定時間txだけ設定する。つまり、入力側FFの出力ピンの信号値が0から1に立ち上がる場合、出力ピンの信号値は0を示した後に所定時間txだけ不定値xを維持してから1に変化する(0→x→1)。また、入力側FFの出力ピンの信号値が1から0に立ち下がる場合、出力ピンの信号値は1を示した後に所定時間txだけ不定値xを維持してから0に変化する(1→x→0)。このとき、所定時間txは、ネットリスト22における各セルの内部遅延値よりも長く且つシミュレーションでのクロック周期(2発のクロックの時間間隔)よりも短く設定されるが、その理由については後述する。   When the signal value of the output pin of the input side FF rises from 0 to 1 or falls from 1 to 0, for example, as shown on the left side of FIG. An indefinite value x is set between the signal values 1 and 0 for a predetermined time tx. That is, when the signal value of the output pin of the input side FF rises from 0 to 1, the signal value of the output pin changes to 1 after maintaining the indefinite value x for a predetermined time tx after showing 0 (0 → x → 1). Further, when the signal value of the output pin of the input side FF falls from 1 to 0, the signal value of the output pin changes to 0 after maintaining the indefinite value x for a predetermined time tx after showing 1 (1 → x → 0). At this time, the predetermined time tx is set to be longer than the internal delay value of each cell in the netlist 22 and shorter than the clock cycle (time interval of two clocks) in the simulation, and the reason will be described later. .

不定値設定手段としての機能は、例えば図7に示すように、入力側FFを定義するVerilogソースコードの記述によって実現される。この記述は、実チップのネットリスト22に含まれている。図7に示す記述のうち、符号Aで示す領域の記述は、上記不定値設定手段としての機能を実現するための記述である。具体的に、この領域Aでは、出力mと入力dとが異なる場合つまりFFの出力ピンの値が変化する場合、不定値xを10単位時間だけ出力mに代入してから入力dを出力mに代入することが定義されている。   The function as the indefinite value setting means is realized by the description of the Verilog source code that defines the input-side FF as shown in FIG. This description is included in the net list 22 of the actual chip. In the description shown in FIG. 7, the description of the area indicated by the symbol A is a description for realizing the function as the indefinite value setting means. Specifically, in this region A, when the output m and the input d are different, that is, when the value of the output pin of the FF changes, the indefinite value x is substituted for the output m for 10 unit time, and then the input d is output m It is defined to be assigned to.

また、不定値設定手段を定義する記述は、シミュレーション部11がディレイテストのシミュレーションを実行すべく入力側FFの定義記述をネットリスト(セルライブラリ)22から読み出した際に、入力側FFを定義する記述に対し新たに追加されるか、入力側FFの定義記述を修正することにより追加される(図9のステップS10参照)。このように入力側FFの定義記述が読み出されたことを判定しその定義記述に不定値設定手段を定義する記述を自動的に追加する機能は、例えば、処理部10が上記活性化パス抽出プログラムを実行することにより実現される。そして、シミュレーション部11が、不定値設定手段を定義する記述を追加された入力側FFの定義記述に基づいて、入力側FFの動作をシミュレートすることにより、上述した不定値設定手段としての機能がシミュレーション部11において実現される。   The description defining the indefinite value setting means defines the input side FF when the simulation unit 11 reads the definition description of the input side FF from the netlist (cell library) 22 to execute the delay test simulation. It is newly added to the description or added by modifying the definition description of the input side FF (see step S10 in FIG. 9). The function of determining that the definition description of the input-side FF has been read in this way and automatically adding a description defining the indefinite value setting means to the definition description is, for example, that the processing unit 10 extracts the activation path. It is realized by executing the program. The simulation unit 11 simulates the operation of the input-side FF based on the definition description of the input-side FF to which the description defining the indefinite-value setting unit is added, thereby functioning as the above-described indefinite-value setting unit. Is realized in the simulation unit 11.

図6に示すように、不定値設定手段によって不定値xを設定された第1入力信号および第2入力信号が、それぞれ、入力ピンa,bからANDゲート104に入力されると、このANDゲート104の出力ピンcからは、グリッチに対応する信号波形が出力される。このグリッチに対応する信号波形による信号値は、0を示した後に所定時間txだけ不定値xを維持してから0に戻る(0→x→0)。このように不定値xを含む信号波形は、ANDゲート104以降のパスを伝播することになり、不定値xを含む信号波形が通過したピンは、シミュレーション部11によって、トグルピンとして特定されることになる。   As shown in FIG. 6, when the first input signal and the second input signal set with the indefinite value x by the indeterminate value setting means are input to the AND gate 104 from the input pins a and b, respectively, the AND gate A signal waveform corresponding to the glitch is output from the output pin c 104. The signal value by the signal waveform corresponding to the glitch returns to 0 after maintaining 0 at an indefinite value x for a predetermined time tx after indicating 0 (0 → x → 0). Thus, the signal waveform including the indefinite value x propagates through the path after the AND gate 104, and the pin through which the signal waveform including the indefinite value x passes is specified as a toggle pin by the simulation unit 11. Become.

ここで、上述した第1入力信号や第2入力信号のごとく、不定値xを入力側FFの出力ピンの変化前信号値と変化後信号値との間に不定値xを設定する理由について説明する。
例えば、文献R. Guo, W.-T. Cheng, K.-H. Tsai, “Speed-Path Debug Using At-Speed Scan Test Patterns”, IEEE Conference 2009 Papers (URL: http://www.mentor.com/products/silicon-yield/ieee_conference_papers/)には、入力側の信号値が0から1へまたは1から0へ変化する際(0→1または1→0)、信号値の変化先を不定値xに置き換えてシミュレーションを行ない、不定値xが伝播したデータパスを、ノイズを含めた信号が伝播したパスとして探索することが記載されている。
Here, the reason why the indefinite value x is set between the pre-change signal value and the post-change signal value of the output pin of the input side FF as in the first input signal and the second input signal described above will be described. To do.
For example, the document R. Guo, W.-T. Cheng, K.-H. Tsai, “Speed-Path Debug Using At-Speed Scan Test Patterns”, IEEE Conference 2009 Papers (URL: http: //www.mentor. com / products / silicon-yield / ieee_conference_papers /) When the signal value on the input side changes from 0 to 1 or from 1 to 0 (0 → 1 or 1 → 0), the destination of the change of the signal value is indefinite It is described that a simulation is performed by replacing x and a data path in which an indefinite value x is propagated is searched as a path in which a signal including noise is propagated.

しかし、上記文献のごとく入力側の信号値を不定値xに変化させてシミュレーションを行なって不定値xが伝播したパスを探索する場合、データパスを探索対象とすることはできるが、IHパスのごときクロック制御系パスを探索対象とすることはできない。例えば図4に示す回路構成において、不定値xが入力側からIHパスを伝播してIHピンに到達し維持されると、不定値xが出力側FF102のクロック端子に入力されることになるため、シミュレーション部11はシミュレーションを正常に実行することができなくなる。   However, when searching for a path through which the indefinite value x has been propagated by changing the signal value on the input side to the indefinite value x as described in the above document, the data path can be searched, but the IH path can be searched. The clock control system path cannot be searched. For example, in the circuit configuration shown in FIG. 4, when the indefinite value x propagates through the IH path from the input side and reaches the IH pin and is maintained, the indefinite value x is input to the clock terminal of the output side FF102. The simulation unit 11 cannot normally execute the simulation.

そこで、本実施形態では、入力側FF101から各パスへ出力される信号値が変化する場合、不定値設定手段の機能により、変化前信号値と変化後信号値との間に不定値xが所定時間txだけ設定される。これにより、各パスを伝播する信号値は、不定値xに維持されたままになることがなく、不定値xを所定時間txだけ維持した後、必ず0または1に変化する。   Therefore, in this embodiment, when the signal value output from the input side FF 101 to each path changes, the function of the indefinite value setting means sets an indefinite value x between the pre-change signal value and the post-change signal value. Only time tx is set. As a result, the signal value propagated through each path does not remain at the indefinite value x, and always changes to 0 or 1 after the indefinite value x is maintained for the predetermined time tx.

つまり、入力側FF101から各パスへ出力される信号値は、0→x→1または1→x→0のいずれかの変化を示すので、各パスを伝播する信号値は、各種ゲートの通過に伴って、0→x→1,1→x→0,0→x→0,1→x→1のいずれかの変化を示しながら、データピンまたはIHピンに到達する。   That is, the signal value output from the input side FF 101 to each path shows a change of either 0 → x → 1 or 1 → x → 0, so that the signal value propagating through each path passes through various gates. Accordingly, the data pin or the IH pin is reached while showing any change of 0 → x → 1, 1 → x → 0, 0 → x → 0, 1 → x → 1.

したがって、本活性化パス抽出装置1では、データピンやIHピンに到達した信号値は不定値xに維持され続けることがないので、シミュレーションの正常な動作を阻害することなく、データパスとIHパスとの両方を、活性化パスとして特定・抽出される対象にすることができる。   Therefore, in this activation path extraction device 1, since the signal value that has reached the data pin or the IH pin does not continue to be maintained at the indefinite value x, the data path and the IH path can be prevented without hindering the normal operation of the simulation. Both can be specified and extracted as activation paths.

次に、変化前信号値と変化後信号値との間において不定値xを維持する時間、つまり上記所定時間txについて説明する。
所定時間txがネットリスト22における各セルの内部遅延値以下であると、不定値xを含む信号波形、例えば図6に示すグリッチに対応する信号波形(0→x→0)は、セルの内部遅延によって吸収される。このため、セルの出力信号から、不定値xを含む信号波形は消えてしまう。したがって、ネットリスト22におけるVerilogソースコード中の各セルの内部遅延値がチェックされ、最大の内部遅延値よりも長くなるように上記所定時間txは決定される。これにより、各セルにおいて不定値xを含む信号波形が消えてしまうのを抑止でき、不定値xを含む信号波形は、各パスを確実に伝播する。
Next, the time for maintaining the indefinite value x between the pre-change signal value and the post-change signal value, that is, the predetermined time tx will be described.
When the predetermined time tx is less than or equal to the internal delay value of each cell in the netlist 22, a signal waveform including an indefinite value x, for example, a signal waveform (0 → x → 0) corresponding to the glitch shown in FIG. Absorbed by delay. For this reason, the signal waveform including the indefinite value x disappears from the cell output signal. Therefore, the internal delay value of each cell in the Verilog source code in the netlist 22 is checked, and the predetermined time tx is determined so as to be longer than the maximum internal delay value. Thereby, it is possible to prevent the signal waveform including the indefinite value x from disappearing in each cell, and the signal waveform including the indefinite value x reliably propagates through each path.

また、所定時間txが、シミュレーションでのクロック周期Tつまり上述した2発のクロックの時間間隔T以上であると、その時間間隔Tの間中、不定値xが維持されることになる。この場合、IHパスおよびIHピンから出力側FF102のクロック端子に不定値xが入力されてしまい、シミュレーション部11はシミュレーションを正常に実行することができなくなる。したがって、クロック周期Tよりも短くなるように上記所定時間txは決定される。これにより、出力側FF102のクロック端子に不定値xが入力されるのを抑止でき、シミュレーションの正常な動作を阻害することなく、データパスとIHパスとの両方を、活性化パスとして特定・抽出される対象にすることができる。   If the predetermined time tx is equal to or longer than the clock period T in the simulation, that is, the time interval T between the two clocks described above, the indefinite value x is maintained throughout the time interval T. In this case, the indefinite value x is input from the IH path and the IH pin to the clock terminal of the output FF 102, and the simulation unit 11 cannot normally execute the simulation. Therefore, the predetermined time tx is determined so as to be shorter than the clock cycle T. As a result, the indefinite value x can be prevented from being input to the clock terminal of the output side FF102, and both the data path and the IH path can be identified and extracted as activation paths without hindering the normal operation of the simulation. Can be targeted.

上述のように、本実施形態では、タイミングを考慮しないシミュレーションにおいて、グリッチが、不定値xを所定時間だけ維持する信号波形として出現するようになる。これにより、シミュレーション部11は、高速なシミュレーションを行ないながら、グリッチによる信号値変化も見逃すことなく、信号値変化ピン(トグルピン)を確実に特定し、そのピン名をトグルピン情報リスト23にリストアップすることができる。また、同様にして、2回目のクロックエッジでORゲート103のIHピンに設定された値を確実に特定し、その値をIHピンのピン名に対応付けてクロック制御系ピン情報リスト24に保存することができる。   As described above, in the present embodiment, the glitch appears as a signal waveform that maintains the indefinite value x for a predetermined time in a simulation that does not consider timing. As a result, the simulation unit 11 reliably identifies the signal value change pin (toggle pin) without overlooking the signal value change due to the glitch while performing a high-speed simulation, and lists the pin name in the toggle pin information list 23. be able to. Similarly, the value set in the IH pin of the OR gate 103 at the second clock edge is surely specified, and the value is associated with the pin name of the IH pin and stored in the clock control system pin information list 24. can do.

〔1−3−3〕パストレース部の機能
パストレース部12は、トグルピン情報リスト23にリストアップされたトグルピンのピン名と、実チップのネットリスト22とに基づき、トグルピンを辿ることにより、活性化パスのトレースを行なう。
[1-3-3] Function of Path Trace Unit The path trace unit 12 is activated by tracing the toggle pin based on the pin name of the toggle pin listed in the toggle pin information list 23 and the net list 22 of the actual chip. Trace of the activation path.

具体的に、パストレース部12は、フェイルリスト212からターゲットのフェイルFF(出力側FF)を一つ選択し、選択したフェイルFFのトグルピンをトグルピン情報リスト23から検索し、一のトグルピン(データピンまたはIHピン)を起点として選択する。パストレース部12は、図8に示すように、起点として選択されたトグルピンから入力側FFへ向かうバックワードトレースを行なう。なお、図8は、パストレース部12によるトレース動作を説明するための図である。また、トレースに際しては、例えば深さ優先探索が用いられる。この深さ優先探索については、図11を参照しながら後述する。   Specifically, the path trace unit 12 selects one target fail FF (output FF) from the fail list 212, searches the toggle pin information list 23 for the toggle pin of the selected fail FF, and selects one toggle pin (data pin). Or, IH pin) is selected as the starting point. As shown in FIG. 8, the path trace unit 12 performs backward tracing from the toggle pin selected as the starting point toward the input side FF. FIG. 8 is a diagram for explaining the trace operation by the path trace unit 12. For tracing, for example, depth priority search is used. This depth priority search will be described later with reference to FIG.

このとき、パストレース部12は、上記起点に物理的に接続されているピンをネットリスト22から探索し、探索されたピンのうち、トグルピンとしてトグルピン情報リスト23に登録されているピンを探索する。以下、同様に、パストレース部12は、探索されたトグルピンよりも入力側で同トグルピンに物理的に接続されているピンをネットリスト22から探索し、探索されたピンのうち、トグルピンとしてトグルピン情報リスト23に登録されているピンを探索する。パストレース部12は、同様の処理を、トレース中の活性化パスが入力側FFの入力ピンに到達するまで繰り返し実行する。   At this time, the path trace unit 12 searches the net list 22 for pins physically connected to the starting point, and searches for the pins registered in the toggle pin information list 23 as toggle pins among the searched pins. . Hereinafter, similarly, the path trace unit 12 searches the netlist 22 for a pin physically connected to the toggle pin on the input side with respect to the searched toggle pin, and toggle pin information as a toggle pin among the searched pins. The pins registered in the list 23 are searched. The path trace unit 12 repeatedly performs the same processing until the activation path being traced reaches the input pin of the input side FF.

このようにして、パストレース部12は、トグルピンを辿ることにより、活性化パスのバックワードトレースを行なう。また、パストレース部12は、バックワードトレースを行ないながら、活性化パスが通過したピン/ネットのピン名/ネット名を取得する。そして、パストレース部12は、取得されたピン名/ネット名を、フェイルFFの入力ピンから入力側FFの出力ピンまでの一本の活性化パスに関する情報として、その活性化パスを特定するパス名に対応付けて活性化パストレース結果データベース25に保存する。   In this way, the path trace unit 12 performs backward tracing of the activation path by following the toggle pin. Further, the path trace unit 12 acquires the pin name / net name of the pin / net through which the activation path has passed while performing backward tracing. Then, the path trace unit 12 uses the acquired pin name / net name as information about one activation path from the input pin of the fail FF to the output pin of the input side FF, and specifies the activation path. The name is stored in the activation path trace result database 25 in association with the name.

〔パストレース部の判定機能〕
パストレース部12は、以下に説明する判定機能をそなえ、トレースすべき活性化パスの絞り込みを行なってもよい。以下では、パストレース部12が、上記判定機能をそなえ上記絞り込みを行なう場合について説明する。
[Judgment function of path trace part]
The path trace unit 12 may have a determination function described below to narrow down activation paths to be traced. Hereinafter, a case where the path trace unit 12 performs the above-described narrowing down with the above-described determination function will be described.

判定機能は、トグルピン情報リスト23におけるトグルピンの情報と、クロック制御系ピン情報リスト24における各IHピンでの値とに基づき、フェイルFFへのデータパスおよびIHパスのいずれのパスが故障に関わる可能性があるかを判定する機能を有している。そして、パストレース部12は、その判定機能によって故障に関わる可能性があると判定されたパスを接続された、フェイルFFのトグルピンを起点にして、その起点から当該パスのバックワードトレースを上述と同様にして行なう。   The determination function is based on the toggle pin information in the toggle pin information list 23 and the value at each IH pin in the clock control system pin information list 24, and any of the data path to the fail FF and the IH path may be involved in the failure. It has a function to determine whether there is Then, the path trace unit 12 starts from the toggle pin of the fail FF connected to the path determined to be related to the failure by the determination function, and the backward trace of the path from the start point is described above. Do the same.

上述したパストレース部12の判定機能について、より詳細に説明する。
フェイルFFの故障要因となるパスとしては、図4に示すように、フェイルFF102のDピンに繋がるデータパスと、IHピンおよびORゲート103を介してフェイルFF102のクロック端子に繋がるIHパスとの2つが挙げられる。ディレイテストで出力側FF102がフェイルするケースとしては、以下の3つのケース1〜3が考えられる。
The determination function of the path trace unit 12 described above will be described in more detail.
As shown in FIG. 4, there are two paths that cause failure of the fail FF: a data path connected to the D pin of the fail FF 102 and an IH path connected to the clock terminal of the fail FF 102 via the IH pin and the OR gate 103. One of them. The following three cases 1 to 3 can be considered as cases where the output side FF 102 fails in the delay test.

ケース1: データパスからDピンへの信号伝播が間に合わない場合、つまりデータパスが故障要因である場合。
ケース2: IHパスからIHピンへの信号伝播が間に合わない場合、つまりIHパスが故障要因である場合。
ケース3: ケース1かケース2かを判別できない場合、つまりデータパスもIHパスも故障要因になりうる場合。
Case 1: When signal propagation from the data path to the D pin is not in time, that is, when the data path is a failure factor.
Case 2: When signal propagation from the IH path to the IH pin is not in time, that is, when the IH path is a failure factor.
Case 3: Case 1 or Case 2 cannot be determined, that is, the data path or the IH path can be a failure factor.

上記判定機能は、トグルピン情報リスト23におけるトグルピンの情報と、クロック制御系ピン情報リスト24における各IHピンでの値とに基づき、フェイルFFが上述したケース1〜3のいずれに相当するかを判定する。なお、クロック制御系ピン情報リスト24における各IHピンでの値は、前述したように、2回目のクロックエッジでIHピンに設定された値(図3参照;以下「IH2」と表記)である。   The determination function determines whether the fail FF corresponds to any of the cases 1 to 3 described above based on the toggle pin information in the toggle pin information list 23 and the value at each IH pin in the clock control system pin information list 24. To do. As described above, the value at each IH pin in the clock control system pin information list 24 is the value set in the IH pin at the second clock edge (see FIG. 3; hereinafter referred to as “IH2”). .

ここで、例えば、図4に示す回路構成において、クロックCKの立ち下がり(1→0)時に出力側FF102がデータを格納する場合について考える。このような場合、上記判定機能による、ケース1〜3の判定は、以下のように行なわれる。なお、ここで説明する判定例は、あくまで一例であり、回路の仕様によって、判定を行なうプログラム内のIH2等の判定基準値は変わる。   Here, for example, consider the case where the output side FF 102 stores data when the clock CK falls (1 → 0) in the circuit configuration shown in FIG. In such a case, the determination of cases 1 to 3 by the determination function is performed as follows. Note that the determination example described here is merely an example, and the determination reference value such as IH2 in the determination program varies depending on the circuit specifications.

IH2=0且つIHピンがトグルしている場合、つまりクロック制御系ピン情報リスト24に保存されたIHピンの値IH2が0で且つIHピンのピン名がトグルピン情報リスト23に登録されている場合、フェイルFFはケース3に相当すると判定される。このとき、上記判定機能は、データパスもIHパスも故障要因になりうるものと判定し、データパスおよびIHパストレースの両方を、トレースすべき活性化パスとする。   When IH2 = 0 and the IH pin is toggled, that is, when the IH pin value IH2 stored in the clock control pin information list 24 is 0 and the pin name of the IH pin is registered in the toggle pin information list 23 , Fail FF is determined to correspond to case 3. At this time, the determination function determines that both the data path and the IH path can be a failure factor, and sets both the data path and the IH path trace as activation paths to be traced.

IH2=0且つIHピンがトグルしていない場合、つまりクロック制御系ピン情報リスト24に保存されたIHピンの値IH2が0で且つIHピンのピン名がトグルピン情報リスト23に登録されていない場合、フェイルFFはケース1に相当すると判定される。このとき、上記判定機能は、データパスが故障要因になりうるものと判定し、データパスをトレースすべき活性化パスと判定する。   When IH2 = 0 and the IH pin is not toggled, that is, when the IH pin value IH2 stored in the clock control system pin information list 24 is 0 and the pin name of the IH pin is not registered in the toggle pin information list 23 , Fail FF is determined to correspond to case 1. At this time, the determination function determines that the data path can be a failure factor, and determines that the data path is an activation path to be traced.

IH2=1の場合、つまりクロック制御系ピン情報リスト24に保存されたIHピンの値IH2が1である場合、そのIHピンのピン名がトグルピン情報リスト23に登録されているか否かに関わらず、フェイルFFはケース2に相当すると判定される。このとき、上記判定機能は、IHパスが故障要因になりうるものと判定し、IHパスをトレースすべき活性化パスと判定する。   When IH2 = 1, that is, when the IH pin value IH2 stored in the clock control system pin information list 24 is 1, regardless of whether the pin name of the IH pin is registered in the toggle pin information list 23 or not. , Fail FF is determined to correspond to case 2. At this time, the determination function determines that the IH path can be a failure factor, and determines that the IH path is an activation path to be traced.

このようにパストレース部12の判定機能により、トレースすべき活性化パスが絞り込まれ、絞り込まれた活性化パスについてトレースが行なわれるので、スピードパス解析を行なう際に必要になる活性化パスの情報が、高速かつ確実に抽出される。   As described above, since the activation path to be traced is narrowed down by the determination function of the path trace unit 12 and tracing is performed for the narrowed activation path, information on the activation path necessary for performing the speed path analysis is performed. Are extracted at high speed and reliably.

〔パストレース部の計数機能〕
パストレース部12は、トグルピン情報リスト23にリストアップされたトグルピンのピン名と、実チップのネットリスト22とに基づき、トグルピンを辿ることにより、活性化パスの数、つまり一つのフェイルFFから入力側FFに到る活性化パスの数を計数する機能を有している。この計数機能によって得られた計数値は、活性化パストレース結果データベース25に保存される。
[Counting function of path trace part]
Based on the pin name of the toggle pin listed in the toggle pin information list 23 and the net list 22 of the actual chip, the path trace unit 12 traces the toggle pin to input from the number of activation paths, that is, one fail FF. It has a function of counting the number of activation paths reaching the side FF. The count value obtained by this count function is stored in the activation path trace result database 25.

この計数機能によるパス数の計数処理は、パストレース部12が活性化パスのバックワードトレースを行なって活性化パスの通過したピン/ネットの情報を取得するトレース処理と同時に実行されてもよい。
また、上記計数処理は、上記トレース処理と別個に実行されてもよい。例えば、上記トレース処理を実行する前に上記計数処理のみを実行して、フェイルFF毎に、トレースされるべき活性化パスの数を計数する。これにより、設計者は、各フェイルFFの活性化パスの数を参照して、どのフェイルFFをターゲットにして活性化パスのトレースを行なうかなどの各種判断を、上記トレース処理の開始前に行なうことができる。
The path number counting process by the counting function may be executed simultaneously with the trace process in which the path trace unit 12 performs backward tracing of the activation path to acquire information on the pin / net through which the activation path has passed.
The counting process may be executed separately from the tracing process. For example, only the counting process is executed before the tracing process is executed, and the number of activation paths to be traced is counted for each fail FF. As a result, the designer refers to the number of activation paths of each fail FF and makes various determinations such as which fail FF is targeted for activation path tracing before the start of the trace processing. be able to.

具体的に、パストレース部12の計数機能は、上述したトレース処理と同様、フェイルFFのトグルピンを起点にして、その起点から、深さ優先探索を行ない、各ピンに対し、そのピンよりも深い側の活性化パスの本数をラベルとして付与しながらトグルピンを辿ることにより、活性化パスの数を計数する。この計数処理については、図11を参照しながら詳述する。   Specifically, the counting function of the path trace unit 12 starts with the toggle pin of the fail FF as the starting point, and performs a depth-first search from the starting point, and is deeper than that pin for each pin. The number of activation paths is counted by following the toggle pin while giving the number of activation paths on the side as a label. This counting process will be described in detail with reference to FIG.

〔2〕本実施形態の活性化パス抽出装置の動作
次に、上述のごとく構成された本実施形態の活性化パス抽出装置1の具体的な機能や動作について、図9〜図11を参照しながら説明する。
〔2−1〕活性化パス抽出装置における処理の流れ
まず、図9に示すフローチャート(ステップS10〜S30)に従って、活性化パス抽出装置1における処理の流れについて説明する。
[2] Operation of Activation Path Extraction Device of the Present Embodiment Next, with reference to FIGS. 9 to 11 for specific functions and operations of the activation path extraction device 1 of the present embodiment configured as described above. While explaining.
[2-1] Process Flow in Activation Path Extraction Device First, the process flow in the activation path extraction device 1 will be described with reference to the flowchart (steps S10 to S30) shown in FIG.

実チップに対するディレイテストが行なわれると、ディレイテストで用いられたテストパターン211とディレイテストによって得られたフェイルリスト212とが、記憶部20のディレイテスト結果データベース21に格納される。また、記憶部20には、実チップの設計データ(Verilogソースコード)であるネットリスト22が格納される。ネットリスト22には、各セルを定義するセルライブラリが含まれている。   When the delay test is performed on the actual chip, the test pattern 211 used in the delay test and the fail list 212 obtained by the delay test are stored in the delay test result database 21 of the storage unit 20. Further, the storage unit 20 stores a net list 22 which is design data (Verilog source code) of an actual chip. The netlist 22 includes a cell library that defines each cell.

このように各種データが記憶部20に格納されると、シミュレーション部11およびパストレース部12により、以下のような手順で活性化パスが抽出される。
まず、シミュレーション部11により、ディレイテストのシミュレーションを実行すべく、テストパターン211およびネットリスト(セルライブラリ)22から必要なデータが読み出される。このとき、入力側FFの定義記述がネットリスト22から読み出されると、シミュレーション部11により、上記不定値設定手段を定義する記述(例えば図7の領域A参照)が、入力側FFを定義する記述に対し追加・修正される。つまり、グリッチを検出するためのソースコード記述が追加・修正される(ステップS10)。
When various data is stored in the storage unit 20 in this way, the activation path is extracted by the simulation unit 11 and the path trace unit 12 in the following procedure.
First, the simulation unit 11 reads necessary data from the test pattern 211 and the netlist (cell library) 22 in order to execute a delay test simulation. At this time, when the definition description of the input-side FF is read from the netlist 22, the description defining the indefinite value setting means (see, for example, the area A in FIG. 7) by the simulation unit 11 is the description defining the input-side FF. Added / modified. That is, a source code description for detecting a glitch is added / modified (step S10).

この後、ステップS20において、シミュレーション部11により、実チップに対するディレイテスト時のテストパターン211と実チップのネットリスト22とに基づき、ディレイテストのシミュレーションが、タイミングを考慮することなく実行される。これにより、シミュレーション部11により、ディレイテスト時に信号値が変化したトグルピンが特定され、そのトグルピンのピン名がトグルピン情報リスト23に保存される(図2参照)。   Thereafter, in step S20, the simulation unit 11 executes the delay test simulation without considering the timing based on the test pattern 211 at the time of the delay test for the actual chip and the net list 22 of the actual chip. As a result, the toggle pin whose signal value has changed during the delay test is specified by the simulation unit 11, and the pin name of the toggle pin is stored in the toggle pin information list 23 (see FIG. 2).

このとき、シミュレーション部11が、不定値設定手段を定義する記述を追加された入力側FFの定義記述に基づいて、入力側FFの動作をシミュレートすることにより、上記不定値設定手段としての機能がシミュレーション部11において実現される。つまり、入力側FFの出力ピンの信号値が0から1に立ち上がる場合や1から0に立ち下がる場合、不定値設定手段により、例えば図6の左側に示すように、信号値0と1との間や信号値1と0との間に不定値xが所定時間txだけ設定される。   At this time, the simulation unit 11 simulates the operation of the input side FF based on the definition description of the input side FF to which the description defining the indefinite value setting unit is added, thereby functioning as the indefinite value setting unit. Is realized in the simulation unit 11. That is, when the signal value of the output pin of the input side FF rises from 0 to 1 or falls from 1 to 0, the signal values 0 and 1 are set by the indefinite value setting means, for example, as shown on the left side of FIG. An indefinite value x is set for a predetermined time tx between the signal values 1 and 0.

このように不定値設定手段によって不定値xを設定された信号が、各パスに入力されると、図6を参照しながら上述したように、タイミングを考慮しないシミュレーションにおいて、グリッチが、不定値xを所定時間だけ維持する信号波形として出現する。このように不定値xを含む信号波形はグリッチの発生したセル以降のパスを伝播する。このため、不定値xを含む信号波形が通過したピンは、シミュレーション部11によって、トグルピンとして特定され、特定したトグルピンのピン名はトグルピン情報リスト23に保存される。   When the signal set with the indefinite value x by the indefinite value setting means is input to each path, as described above with reference to FIG. Appears as a signal waveform that maintains for a predetermined time. Thus, the signal waveform including the indefinite value x propagates the path after the cell where the glitch occurs. Therefore, the pin through which the signal waveform including the indefinite value x has passed is specified as a toggle pin by the simulation unit 11, and the pin name of the specified toggle pin is stored in the toggle pin information list 23.

また、ステップS20においては、シミュレーション部11により、2回目のクロックエッジでクロック制御系ピン(例えばIHピン;図4参照)に設定された値が特定され、その値が、IHピンのピン名に対応付け、クロック制御系ピン情報リスト24に保存される(図3参照)。   In step S20, the simulation unit 11 identifies the value set in the clock control system pin (for example, the IH pin; see FIG. 4) at the second clock edge, and the value is used as the pin name of the IH pin. The correspondence is stored in the clock control system pin information list 24 (see FIG. 3).

シミュレーション部11により、以上のようなシミュレーションが行なわれると、シミュレーションによって得られた各出力側FFの出力値とテストパターン211に含まれる期待値とが比較される。これらの出力値と期待値とが全て一致した場合、シミュレーションの信頼性が確保されていると判断され、シミュレーションによって特定されリスト23,24に保存された活性化パスの情報が、以降のパストレース処理に用いられる。これらの出力値と期待値とが一致しない場合、シミュレーションの信頼性が確保されていないと判断され、今回のシミュレーションで得られた情報が無効にされ、シミュレーションが再度行なわれたりエラー通知が行なわれたりする。   When the simulation as described above is performed by the simulation unit 11, the output value of each output FF obtained by the simulation is compared with the expected value included in the test pattern 211. When all of these output values and expected values match, it is determined that the reliability of the simulation is ensured, and the activation path information specified by the simulation and stored in the lists 23 and 24 is the subsequent path trace. Used for processing. If these output values do not match the expected values, it is determined that the reliability of the simulation is not secured, the information obtained in this simulation is invalidated, and the simulation is performed again or an error notification is given. Or

シミュレーション部11によるディレイテストのシミュレーションによって、記憶部20におけるトグルピン情報リスト23およびクロック制御系ピンリスト24に、必要な情報が保存されると、パストレース部12によるトレース処理が、フェイルFFに対して実行される(ステップS30)。そして、このトレース処理によって取得された活性化パスの情報、例えば、活性化パスが通過したピン/ネットのピン名/ネット名や、活性化パスの数が、活性化パスを特定するパス名に対応付けられて活性化パストレース結果データベース25に保存される。   When necessary information is stored in the toggle pin information list 23 and the clock control system pin list 24 in the storage unit 20 by the simulation of the delay test by the simulation unit 11, the trace processing by the path trace unit 12 is performed on the fail FF. It is executed (step S30). The activation path information acquired by this trace processing, for example, the pin name / net name of the pin / net that the activation path has passed, and the number of activation paths are the path names that identify the activation path. Correspondingly stored in the activation path trace result database 25.

〔2−2〕パストレース処理
次に、図10に示すフローチャート(ステップS31,S32)に従って、パストレース部12の動作つまり図9のステップ30におけるパストレース処理について説明する。
上述のように、シミュレーション部11によるディレイテストのシミュレーションが行なわれ、トグルピン情報リスト23およびクロック制御系ピンリスト24に、必要な情報が保存されると、パストレース部12によるパストレース処理が開始される。
[2-2] Path Trace Process Next, the operation of the path trace unit 12, that is, the path trace process in step 30 of FIG. 9, will be described with reference to the flowchart (steps S31 and S32) shown in FIG.
As described above, when the simulation of the delay test is performed by the simulation unit 11 and necessary information is stored in the toggle pin information list 23 and the clock control system pin list 24, the path trace processing by the path trace unit 12 is started. The

まず、ステップS31において、パストレース部12により、フェイルリスト212からターゲットのフェイルFF(出力側FF)が一つ選択される。そして、パストレース部12の判定機能により、選択されたフェイルFFが、データパスとクロック制御系パス(IHパス)とのどちらが原因でフェイルしたかが判定される。この判定は、上述したように、トグルピン情報リスト23におけるトグルピンの情報と、クロック制御系ピン情報リスト24における各IHピンでの値とに基づいて行なわれる。この判定により、活性化パスのトレース対象が、故障要因であると判定された、データパスとIHパスとの少なくとも一方に絞り込まれる。   First, in step S31, the path trace unit 12 selects one target fail FF (output FF) from the fail list 212. The determination function of the path trace unit 12 determines whether the selected fail FF has failed due to a data path or a clock control system path (IH path). This determination is performed based on the toggle pin information in the toggle pin information list 23 and the value at each IH pin in the clock control system pin information list 24 as described above. By this determination, the trace target of the activation path is narrowed down to at least one of the data path and the IH path determined to be the cause of the failure.

そして、ステップS32において、判定機能によってフェイルの原因であると判定されたパスを接続された、フェイルFFのトグルピンを起点にして、その起点から当該パスのバックワードトレースが実行される。このとき、パストレース部12により、上記起点に物理的に接続されているピンがネットリスト22から探索され、探索されたピンのうち、トグルピンとしてトグルピン情報リスト23に登録されているピンが探索される。以下、同様に、パストレース部12により、探索されたトグルピンよりも入力側で同トグルピンに物理的に接続されているピンがネットリスト22から探索され、探索されたピンのうち、トグルピンとしてトグルピン情報リスト23に登録されているピンが探索される。同様の処理は、トレース中の活性化パスが入力側FFの入力ピンに到達するまで繰り返し実行される。   In step S32, the backward trace of the path is executed from the start point of the toggle pin of the fail FF connected to the path determined to be the cause of the failure by the determination function. At this time, the path trace unit 12 searches the net list 22 for pins physically connected to the starting point, and searches for the pins registered in the toggle pin information list 23 as toggle pins among the searched pins. The Similarly, the path trace unit 12 searches the netlist 22 for pins that are physically connected to the toggle pin on the input side of the searched toggle pin, and toggle pin information as a toggle pin among the searched pins. The pins registered in the list 23 are searched. Similar processing is repeatedly executed until the activation path in the trace reaches the input pin of the input side FF.

このようにして、パストレース部12により、トグルピンを辿ることで、活性化パスのバックワードトレースが行なわれる。このとき、パストレース部12は、バックワードトレースを行ないながら、活性化パスが通過したピン/ネットのピン名/ネット名を取得する。取得されたピン名/ネット名は、パストレース部12により、フェイルFFの入力ピンから入力側FFの出力ピンまでの一本の活性化パスに関する情報として、その活性化パスを特定するパス名に対応付けられて活性化パストレース結果データベース25に保存される。   In this way, the path trace unit 12 traces the toggle pin to perform backward trace of the activation path. At this time, the path trace unit 12 acquires the pin name / net name of the pin / net through which the activation path has passed while performing backward tracing. The acquired pin name / net name is used as a path name for identifying the activation path by the path trace unit 12 as information on one activation path from the input pin of the fail FF to the output pin of the input side FF. Correspondingly stored in the activation path trace result database 25.

〔2−3〕活性化パスの深さ優先探索および計数処理
次に、図11(A)〜図11(H)を参照しながら、パストレース部12によって実行される活性化パスの深さ優先探索および計数動作(計数機能)について、具体的に説明する。なお、図11(A)は、以下の説明において深さ優先探索および計数処理の対象となる活性化パスの全体構成の一例を示す図である。また、図11(B)〜図11(H)は、図11(A)に示す活性化パスに対して実行されるパストレース部12による深さ優先探索および計数動作の手順の一例を説明するための図である。ただし、本件の深さ優先探索および計数処理の対象や手順は、図11(A)〜図11(H)に示す例に限定されるものではない。
[2-3] Activation Path Depth Priority Search and Counting Processing Next, the activation path depth priority executed by the path trace unit 12 will be described with reference to FIGS. 11 (A) to 11 (H). The search and counting operation (counting function) will be specifically described. FIG. 11A is a diagram illustrating an example of the entire configuration of the activation path that is the target of the depth-first search and the counting process in the following description. FIG. 11B to FIG. 11H illustrate an example of the depth priority search and counting operation procedure performed by the path trace unit 12 performed on the activation path shown in FIG. 11A. FIG. However, the depth priority search and the count processing target and procedure in this case are not limited to the examples shown in FIGS. 11 (A) to 11 (H).

なお、図11(A)〜図11(H)において、右側の矩形ブロックは、バックワードトレースの起点となるトグルピンを有するフェイルFFを示し、左側の矩形ブロックは、バックワードトレースにより活性化パスが到達する入力側FFを示す。また、丸ブロックは、活性化パスが通過したトグルピンを示す。各ブロック内の符号は、FF名またはピン名を示す。つまり、フェイルFFのFF名はF0であり、7つの入力側FFのFF名はそれぞれF1〜F7である。また、フェイルFFのトグルピンのピン名はp0であり、フェイルFFと7つの入力側FFとの間で活性化パスが通過する5つのピンのピン名はそれぞれp1〜p5である。   11A to 11H, the right rectangular block indicates a fail FF having a toggle pin as a starting point of the backward trace, and the left rectangular block has an activation path due to the backward trace. The input side FF to be reached is shown. A circle block indicates a toggle pin through which the activation path has passed. The code in each block indicates an FF name or a pin name. That is, the FF name of the fail FF is F0, and the FF names of the seven input side FFs are F1 to F7, respectively. The pin name of the toggle pin of the fail FF is p0, and the pin names of the five pins through which the activation path passes between the fail FF and the seven input side FFs are p1 to p5, respectively.

さらに、図11(B),図11(D)〜図11(H)における太実線は、深さ優先探索の各手順で始めて探索されたパスを示す。また、図11(C)〜図11(H)において、ピンを示す各丸ブロックに付された吹き出しブロックは、そのピンよりも深い側の活性化パスの本数を、パストレース部12によって記入されるラベルを示す。各ラベルは、実際には、記憶部20において各ピンのピン名に対応付けられて保存される。   Further, the thick solid lines in FIG. 11B and FIG. 11D to FIG. 11H indicate paths searched for first in each procedure of depth-first search. In FIG. 11C to FIG. 11H, the blowing block attached to each circular block indicating a pin is filled in by the path trace unit 12 with the number of activation paths deeper than the pin. Label. Each label is actually stored in the storage unit 20 in association with the pin name of each pin.

まず、パストレース部12は、図11(B)の矢印A1で示すように、起点となるフェイルFF(F0)のトグルピンp0から深さ方向(図中左方向;入力側)へ向かいトグルピンの探索を実行し、ピンp1,p3経由で入力側FF(F1)に到達する。これにより、経路p0→p1→p3→F1が1本目の活性化パスとしてトレースされる。そして、パストレース部12は、図11(C)の矢印A2で示すように、入力側FF(F1)に繋がるピンp3に戻り、ピンp3のラベルに計数値1を記入してから、ピンp3よりも深い側におけるF1以外の入力側FFまたはトグルピンを探索する。   First, as indicated by an arrow A1 in FIG. 11B, the path trace unit 12 searches for a toggle pin from the toggle pin p0 of the fail FF (F0) as a starting point toward the depth direction (left direction in the figure; input side). To reach the input side FF (F1) via the pins p1 and p3. Thereby, the path p0 → p1 → p3 → F1 is traced as the first activation path. Then, as indicated by an arrow A2 in FIG. 11C, the path trace unit 12 returns to the pin p3 connected to the input side FF (F1), enters the count value 1 on the label of the pin p3, and then returns to the pin p3. The input side FF or toggle pin other than F1 on the deeper side is searched.

図11(A)に示す例ではピンp3にはF1以外にF2が接続されているので、パストレース部12は、図11(D)の矢印A3で示すように、F2を探索する。これにより、経路p0→p1→p3→F2が2本目の活性化パスとしてトレースされる。そして、パストレース部12は、同図の矢印A4で示すようにピンp3に戻り、ピンp3での計数値1に1を加算することにより、ピンp3のラベルに、このピンp3よりも深い側の活性化パスの本数2を記入する。   In the example shown in FIG. 11A, since F2 is connected to the pin p3 in addition to F1, the path trace unit 12 searches for F2, as indicated by an arrow A3 in FIG. As a result, the path p0 → p1 → p3 → F2 is traced as the second activation path. Then, the path trace unit 12 returns to the pin p3 as indicated by the arrow A4 in the figure, and adds 1 to the count value 1 at the pin p3, so that the label of the pin p3 has a deeper side than the pin p3. Enter the number 2 of activation paths.

ピンp3にはF1,F2以外に入力側FFやトグルピンは接続されていないので、パストレース部12は、図11(E)の矢印A5で示すように、ピンp1に戻り、ピンp1のラベルにピンp3での計数値2を記入してから、ピンp1よりも深い側におけるピンp3以外のトグルピン等を探索する。図11(A)に示す例ではピンp1にはピンp3以外にピンp4が接続されているので、パストレース部12は、ピンp4を探索し、さらに図11(E)の矢印A6〜A8で示すように、ピンp4よりも深い側におけるF3,F4を探索する。これにより、経路p0→p1→p4→F3および経路p0→p1→p4→F4が3本目および4本目の活性化パスとみなされる。この時点で、ピンp4のラベルには、このピンp4よりも深い側の活性化パスの本数2が記入される。   Since no input side FF or toggle pin other than F1 and F2 is connected to the pin p3, the path trace unit 12 returns to the pin p1 as indicated by an arrow A5 in FIG. After entering the count value 2 at the pin p3, a search is made for a toggle pin other than the pin p3 on the deeper side than the pin p1. In the example shown in FIG. 11A, since the pin p4 is connected to the pin p1 in addition to the pin p3, the path trace unit 12 searches for the pin p4 and further uses arrows A6 to A8 in FIG. 11E. As shown, F3 and F4 on the deeper side than the pin p4 are searched. Accordingly, the path p0 → p1 → p4 → F3 and the path p0 → p1 → p4 → F4 are regarded as the third and fourth activation paths. At this time, the number of activation paths 2 deeper than the pin p4 is entered in the label of the pin p4.

ピンp4にはF3,F4以外に入力側FFやトグルピンは接続されていないので、パストレース部12は、図11(F)の矢印A9で示すように、ピンp1に戻る。そして、パストレース部12は、ピンp1での計数値2にピンp4での計数値2を加算することにより、ピンp1のラベルに、このピンp1よりも深い側の活性化パスの本数4を記入する。また、ピンp1にはピンp3,p4以外のトグルピンは接続されていないので、パストレース部12は、同図の矢印A10で示すように、ピンp0に戻り、ピンp0のラベルにピンp1での計数値4を記入してから、ピンp0よりも深い側におけるピンp1以外のトグルピン等を探索する。図11(A)に示す例ではピンp0にはピンp1以外にピンp2が接続されているので、パストレース部12は、図11(F)の矢印A11で示すように、ピンp2を探索する。   Since no input side FF or toggle pin other than F3 and F4 are connected to the pin p4, the path trace unit 12 returns to the pin p1 as indicated by an arrow A9 in FIG. Then, the path trace unit 12 adds the count value 2 at the pin p4 to the count value 2 at the pin p1, thereby adding the activation path number 4 deeper than the pin p1 to the label of the pin p1. Fill out. Further, since no toggle pins other than the pins p3 and p4 are connected to the pin p1, the path trace unit 12 returns to the pin p0 as indicated by an arrow A10 in FIG. After the count value 4 is entered, a toggle pin other than the pin p1 on the deeper side than the pin p0 is searched. In the example shown in FIG. 11A, since the pin p2 is connected to the pin p0 in addition to the pin p1, the path trace unit 12 searches for the pin p2 as indicated by an arrow A11 in FIG. 11F. .

パストレース部12は、ピンp2を探索すると、図11(G)の矢印A12〜A14に示すように、ピンp2よりも深い側における3つのピンp3〜p5を順に探索する。パストレース部12は、ピンp3を探索すると、ピンp3よりも深い側の活性化パスの探索を既に完了しているので、その探索を行なわず、ピンp3での計数値2をピンp2のラベルに記入する。ついで、パストレース部12は、ピンp4を探索すると、ピンp4よりも深い側の活性化パスの探索も既に完了しているので、その探索を行なわず、ピンp4での計数値2をピンp2での計数値2に加算し、ピンp2のラベルにおける計数値として4を記入する。   When searching for the pin p2, the path trace unit 12 sequentially searches for the three pins p3 to p5 on the deeper side than the pin p2, as indicated by arrows A12 to A14 in FIG. When the path trace unit 12 searches for the pin p3, the search for the activation path deeper than the pin p3 has already been completed. Therefore, the search is not performed, and the count value 2 at the pin p3 is the label of the pin p2. To fill in. Next, when the path trace unit 12 searches for the pin p4, the search for the activation path deeper than the pin p4 has already been completed. Therefore, the search is not performed, and the count value 2 at the pin p4 is set to the pin p2. Is added to the count value 2 and 4 is entered as the count value in the label of the pin p2.

さらに、パストレース部12は、ピンp5を探索すると、図11(H)の矢印A15〜A18に示すように、ピンp5よりも深い側における3つの入力側FF(F5〜F7)を順に探索する。これにより、経路p0→p2→p5→F5,経路p0→p2→p5→F6および経路p0→p2→p5→F7が活性化パスとしてトレースされる。この時点で、ピンp5のラベルには、このピンp5よりも深い側の活性化パスの本数3が記入される。   Further, when searching for the pin p5, the path trace unit 12 sequentially searches the three input side FFs (F5 to F7) on the deeper side than the pin p5 as indicated by arrows A15 to A18 in FIG. . Thereby, the path p0 → p2 → p5 → F5, the path p0 → p2 → p5 → F6 and the path p0 → p2 → p5 → F7 are traced as activation paths. At this time, the number of activation paths 3 on the deeper side than the pin p5 is entered in the label of the pin p5.

ピンp5にはF5〜F7以外に入力側FFやトグルピンは接続されていないので、パストレース部12は、図11(H)の矢印A19で示すように、ピンp2に戻り、ピンp2での計数値4にピンp5での計数値3を加算することにより、ピンp2のラベルに、このピンp2よりも深い側の活性化パスの本数7を記入する。また、ピンp2にはピンp3〜p5以外のトグルピンは接続されていないので、パストレース部12は、同図の矢印A20で示すように、ピンp0に戻る。そして、パストレース部12は、ピンp0での計数値4にピンp2での計数値7を加算することにより、ピンp0のラベルに、このピンp0よりも深い側の活性化パスの本数11を記入する。そして、ピンp0にはピンp1,p2以外のトグルピンは接続されていないので、この時点で、パストレース部12は、フェイルFF(F0)についての活性化パスの深さ優先探索および計数処理を完了する。つまり、図11(A)に示すフェイルFF(F0)について、活性化パスの数として11が計数される。   Since no input side FF or toggle pin other than F5 to F7 is connected to the pin p5, the path trace unit 12 returns to the pin p2 as indicated by an arrow A19 in FIG. By adding the count value 3 at the pin p5 to the numerical value 4, the number 7 of activation paths deeper than the pin p2 is entered on the label of the pin p2. Further, since no toggle pins other than the pins p3 to p5 are connected to the pin p2, the path trace unit 12 returns to the pin p0 as indicated by an arrow A20 in FIG. The path trace unit 12 adds the count value 7 at the pin p0 to the count value 4 at the pin p0, thereby adding the number 11 of activation paths deeper than the pin p0 to the label of the pin p0. Fill out. Since no toggle pins other than the pins p1 and p2 are connected to the pin p0, the path trace unit 12 completes the activation path depth priority search and count processing for the fail FF (F0) at this time. To do. That is, 11 is counted as the number of activation paths for the fail FF (F0) shown in FIG.

このように、パストレース部12は、計数対象のフェイルFFのトグルピンから、深さ優先探索を行ない、各ピンに対し、そのピンよりも深い側の活性化パスの本数をラベルとして付与しながらトグルピンを辿り、活性化パスの数を計数する。このとき、パストレース部12は、バックワードトレースによって、計数値を記入されたラベルを付与されたピンに到達した場合、そのピン以降のトレースを行なうことなくそのピンに付与されたラベルに記入された計数値を読み出し、そのピンよりも浅い側のピンのラベルに記入された計数値に加算する。これにより、極めて高速に活性化パスの計数を行なうことができる。このようにして計数された計数値つまり活性化パスの数は、活性化パストレース結果データベース25に保存される。   In this manner, the path trace unit 12 performs a depth-first search from the toggle pin of the fail FF to be counted, and assigns the number of activation paths deeper than that pin to each pin as a label. And count the number of activation paths. At this time, if the path trace unit 12 reaches the pin assigned the label with the count value by the backward trace, the path trace unit 12 fills in the label attached to the pin without performing the trace after the pin. The counted value is read and added to the counted value written on the label of the pin shallower than the pin. As a result, the activation path can be counted very quickly. The count value thus counted, that is, the number of activation paths, is stored in the activation path trace result database 25.

〔3〕本実施形態の活性化パス抽出装置の効果
本実施形態では、シミュレーション部11は、遅延時間を考慮することなく実チップに対するディレイテストのシミュレーションを簡易的に行なって、ディレイテスト時における、入力側FF101と出力側FF102との間における各ピンの信号値の変化を追っている。これにより、実チップのディレイテスト時に信号が伝播した活性化パスが、ディレイテスト時のテストパターンに基づき、高速に抽出される。特に、フェイルFFをトレース対象とすることにより、スピードパス解析を行なう際に必要な、フェイルFFの遅延つまり故障に関わる可能性の高い活性化パスが、高速かつ確実に抽出される。これにより、故障診断に要する時間やコストを大幅に削減することができる。このとき、シミュレーション部11は、出力値と期待値とが全て一致した場合に、シミュレーションで得られた情報を有効にするので、シミュレーションの信頼性が確保される。
[3] Effect of Activation Path Extraction Device of this Embodiment In this embodiment, the simulation unit 11 simply performs a delay test simulation for an actual chip without considering the delay time, and at the time of the delay test, The change of the signal value of each pin between the input side FF101 and the output side FF102 is followed. As a result, the activation path through which the signal propagates during the delay test of the actual chip is extracted at high speed based on the test pattern during the delay test. In particular, by setting the fail FF as a trace target, an activation path that is highly likely to be related to a delay of the fail FF, that is, a failure, necessary for performing the speed path analysis can be extracted quickly and reliably. Thereby, the time and cost required for failure diagnosis can be significantly reduced. At this time, since the simulation unit 11 validates the information obtained by the simulation when the output value and the expected value all match, the reliability of the simulation is ensured.

また、本実施形態では、タイミングを考慮しないシミュレーションにおいて、グリッチが、不定値xを所定時間だけ維持する信号波形として出現するようになる。これにより、シミュレーション部11は、高速なシミュレーションを行ないながら、グリッチによる信号値変化も見逃すことなく、トグルピンを確実に特定し、そのピン名をトグルピン情報リスト23にリストアップすることができる。したがって、グリッチを加味した故障診断を行なうことが可能であり、故障診断の信頼性も向上することになる。   In the present embodiment, in a simulation that does not consider timing, a glitch appears as a signal waveform that maintains the indefinite value x for a predetermined time. As a result, the simulation unit 11 can reliably identify the toggle pin and list the pin name in the toggle pin information list 23 without overlooking the signal value change due to the glitch while performing the high-speed simulation. Therefore, it is possible to perform failure diagnosis taking glitches into account, and the reliability of failure diagnosis is improved.

さらに、本実施形態では、データピンやIHピンに到達した信号値は不定値xに維持され続けることがないので、シミュレーションの正常な動作を阻害することなく、データパスとIHパスとの両方を、活性化パスとして特定・抽出される対象にすることができる。また、パストレース部12の判定機能により、トレースすべき活性化パスが絞り込まれ、絞り込まれた活性化パスについてトレースが行なわれるので、スピードパス解析を行なう際に必要になる活性化パスの情報が、より高速かつ確実に抽出される。   Furthermore, in this embodiment, since the signal value that has reached the data pin or the IH pin is not maintained at the indefinite value x, both the data path and the IH path can be performed without hindering the normal operation of the simulation. The target can be specified and extracted as an activation path. Further, the activation function to be traced is narrowed down by the determination function of the path trace unit 12, and tracing is performed for the narrowed activation path. Therefore, information on the activation path necessary for speed path analysis is obtained. Extracted faster and more reliably.

また、活性化パスの計数処理をトレース処理を実行する前に実行して、フェイルFF毎に、トレースされるべき活性化パスの数を計数することにより、設計者は、各フェイルFFの活性化パスの数を参照して、どのフェイルFFをターゲットにして活性化パスのトレースを行なうかなどの各種判断を、トレース処理の開始前に行なうことができる。   Further, the activation path counting process is executed before the trace process is executed, and the number of activation paths to be traced is counted for each fail FF, so that the designer can activate each fail FF. By referring to the number of paths, various determinations such as which fail FFs are targeted for activation path tracing can be performed before the start of the tracing process.

計数処理に際して、パストレース部12は、深さ優先探索によるバックワードトレースで、計数値を記入されたラベルを付与されたピンに到達すると、そのピン以降のトレースを行なうことなくそのピンに付与されたラベルに記入された計数値を読み出し、そのピンよりも浅い側のピンのラベルに記入された計数値に加算する。これにより、極めて高速に活性化パスの計数を行なうことができる。   In the counting process, when the path trace unit 12 reaches a pin assigned with a count value in a backward trace based on a depth-first search, the path trace unit 12 assigns the pin to the pin without performing the trace after the pin. The count value written on the label is read and added to the count value written on the label of the pin shallower than the pin. As a result, the activation path can be counted very quickly.

〔4〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
なお、上述した実施形態において、パストレース部12は、出力側FF102から入力側FF101へ向かうバックワードトレースによって活性化パスのトレースを行なっているが、入力側FF101から出力側FF102へ向かうフォワードトレースによって活性化パスのトレースを行なってもよい。また、上述した実施形態において、パストレース部12は、深さ優先探索によって活性化パスのトレースを行なっているが、幅優先探索によって活性化パスのトレースを行なってもよい。
[4] Others While the preferred embodiment of the present invention has been described in detail above, the present invention is not limited to such a specific embodiment, and various modifications and changes can be made without departing from the spirit of the present invention. It can be changed and implemented.
In the above-described embodiment, the path trace unit 12 traces the activation path by the backward trace from the output side FF102 to the input side FF101, but by the forward trace from the input side FF101 to the output side FF102. The activation path may be traced. In the above-described embodiment, the path trace unit 12 traces the activation path by the depth-first search. However, the path trace unit 12 may trace the activation path by the width-first search.

また、上述したシミュレーション部11およびパストレース部12としての機能や、不定値設定手段を定義する記述を自動的に追加する機能の全部もしくは一部は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラム(活性化パス抽出プログラム)を実行することによって実現される。   In addition, all or a part of the functions as the simulation unit 11 and the path trace unit 12 described above and the function for automatically adding the description defining the indefinite value setting means are implemented by a computer (CPU, information processing apparatus, various terminals). Are implemented) by executing a predetermined application program (activation path extraction program).

そのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RWなど),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD−RW,DVD+R,DVD+RW,ブルーレイディスクなど)等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。   The program is, for example, a flexible disk, CD (CD-ROM, CD-R, CD-RW, etc.), DVD (DVD-ROM, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, Blu-ray disc, etc.) And the like recorded in a computer-readable recording medium. In this case, the computer reads the program from the recording medium, transfers it to the internal storage device or the external storage device, and uses it.

ここで、コンピュータとは、ハードウエアとOS(オペレーティングシステム)とを含む概念であり、OSの制御の下で動作するハードウエアを意味している。また、OSが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウエアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取る手段とをそなえている。上記活性化パス抽出プログラムは、上述のようなコンピュータに、シミュレーション部11およびパストレース部12の機能や、不定値設定手段を定義する記述を自動的に追加する機能を実現させるプログラムコードを含んでいる。また、その機能の一部は、アプリケーションプログラムではなくOSによって実現されてもよい。   Here, the computer is a concept including hardware and an OS (operating system), and means hardware operating under the control of the OS. Further, when the OS is unnecessary and the hardware is operated by the application program alone, the hardware itself corresponds to the computer. The hardware includes at least a microprocessor such as a CPU and means for reading a computer program recorded on a recording medium. The activation path extraction program includes program code for realizing the functions of the simulation unit 11 and the path trace unit 12 and the function of automatically adding the description defining the indefinite value setting means in the computer as described above. Yes. Also, some of the functions may be realized by the OS instead of the application program.

〔5〕付記
以上の本実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出するコンピュータに、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定し、
前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう、
処理を実行させる活性化パス抽出プログラム。
[5] Supplementary Notes The following supplementary notes are further disclosed regarding the embodiment including the above-described embodiment.
(Appendix 1)
In the computer that extracts the activation path that the signal propagated during the delay test on the actual chip,
By performing a simulation of the delay test based on the test pattern at the time of the delay test and the net list of the actual chip, the signal value change pin that has changed the signal value at the time of the delay test,
Tracing the activation path by following the signal value change pin based on the signal value change pin specified by the simulation and the netlist of the real chip;
Activation path extraction program that executes processing.

(付記2)
前記シミュレーションの実行時に入力側フリップフロップまたはラッチの出力ピンの信号値が変化する場合、前記出力ピンの変化前の信号値と変化後の信号値との間に不定値を所定時間だけ設定し、
前記不定値を設定された信号値に基づき、タイミングを考慮することなく前記シミュレーションを行なうことにより、前記信号値変化ピンを特定する、
処理を、前記コンピュータに実行させる、付記1記載の活性化パス抽出プログラム。
(Appendix 2)
When the signal value of the output pin of the input side flip-flop or latch changes during the execution of the simulation, an indefinite value is set for a predetermined time between the signal value before the change of the output pin and the signal value after the change,
The signal value change pin is identified by performing the simulation without considering timing based on the signal value set with the indefinite value.
The activation path extraction program according to appendix 1, which causes the computer to execute processing.

(付記3)
前記不定値を設定する機能は、前記実チップのネットリストに含まれる、前記入力側フリップフロップまたはラッチを定義するソースコードの記述によって実現される、付記2記載の活性化パス抽出プログラム。
(付記4)
前記所定時間は、前記ネットリストにおける各セルの内部遅延値よりも長く且つ前記シミュレーションでのクロック周期よりも短く設定される、付記2または付記3記載の活性化パス抽出プログラム。
(Appendix 3)
The activation path extraction program according to appendix 2, wherein the function of setting the indefinite value is realized by a description of source code defining the input-side flip-flop or latch included in the netlist of the real chip.
(Appendix 4)
The activation path extraction program according to appendix 2 or appendix 3, wherein the predetermined time is set longer than an internal delay value of each cell in the netlist and shorter than a clock cycle in the simulation.

(付記5)
前記シミュレーションによって得られた出力値と前記テストパターンに含まれる期待値とを比較し、これらの出力値と期待値とが一致した場合、前記シミュレーションによって特定された前記活性化パスの情報を有効にする処理を、前記コンピュータに実行させる、付記1〜付記4のいずれか一項に記載の活性化パス抽出プログラム。
(Appendix 5)
The output value obtained by the simulation is compared with the expected value included in the test pattern, and when the output value and the expected value match, the information on the activation path specified by the simulation is validated. The activation path extraction program according to any one of Supplementary Note 1 to Supplementary Note 4, which causes the computer to execute processing to be performed.

(付記6)
前記実チップの前記遅延試験において期待値と異なる値を出力した出力側フリップフロップまたはラッチの信号値変化ピンを起点にして、前記トレースを行なう処理を、前記コンピュータに実行させる、付記1〜付記5のいずれか一項に記載の活性化パス抽出プログラム。
(Appendix 6)
Supplementary notes 1 to 5 that cause the computer to execute the process of performing the trace starting from a signal value change pin of an output side flip-flop or latch that outputs a value different from an expected value in the delay test of the real chip The activation path extraction program according to any one of the above.

(付記7)
前記シミュレーションにより、出力側フリップフロップまたはラッチのクロック制御系ピンの値を特定し、
前記シミュレーションによって特定された、前記信号値変化ピンと前記クロック制御系ピンの値とに基づき、前記実チップの前記遅延試験において期待値と異なる値を出力した出力側フリップフロップまたはラッチへのデータパスおよびクロック制御系パスのいずれのパスが故障に関わる可能性があるかを判定し、故障に関わる可能性のあるパスに係る信号値変化ピンを起点にして、故障に関わる可能性のある活性化パスのトレースを行なう、
処理を、前記コンピュータに実行させる、付記1〜付記5のいずれか一項に記載の活性化パス抽出プログラム。
(Appendix 7)
By the simulation, specify the value of the clock control system pin of the output side flip-flop or latch,
A data path to an output-side flip-flop or latch that outputs a value different from an expected value in the delay test of the real chip based on the value of the signal value change pin and the clock control system pin specified by the simulation, and Determine which path of the clock control system path may be involved in the failure, and use the signal value change pin for the path that may be involved in the failure as the starting point. Tracing
The activation path extraction program according to any one of supplementary notes 1 to 5, which causes the computer to execute processing.

(付記8)
前記起点から深さ優先探索によって前記トレースを行なう処理を、前記コンピュータに実行させる、付記6または付記7に記載の活性化パス抽出プログラム。
(付記9)
前記信号値変化ピンを辿ることにより、前記活性化パスの数を計数する処理を、前記コンピュータに実行させる、付記1〜付記8のいずれか一項に記載の活性化パス抽出プログラム。
(Appendix 8)
The activation path extraction program according to appendix 6 or appendix 7, which causes the computer to execute a process of performing the trace by depth-first search from the starting point.
(Appendix 9)
The activation path extraction program according to any one of appendix 1 to appendix 8, which causes the computer to execute a process of counting the number of activation paths by tracing the signal value change pin.

(付記10)
対象フリップフロップまたはラッチの信号値変化ピンから深さ優先探索を行ない、各ピンに対し、そのピンよりも深い側の活性化パスの本数をラベルとして付与しながら前記信号値変化ピンを辿ることにより、前記活性化パスの数を計数する処理を、前記コンピュータに実行させる、付記9記載の活性化パス抽出プログラム。
(Appendix 10)
A depth-first search is performed from the signal value change pin of the target flip-flop or latch, and the signal value change pin is traced to each pin while giving the number of activation paths deeper than that pin as a label. The activation path extraction program according to appendix 9, which causes the computer to execute a process of counting the number of the activation paths.

(付記11)
実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出する活性化パス抽出装置であって、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定するシミュレーション部と、
前記シミュレーション部によって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なうパストレース部とを有する活性化パス抽出装置。
(Appendix 11)
An activation path extraction device that extracts an activation path through which a signal has propagated during a delay test on an actual chip,
A simulation unit for identifying a signal value change pin whose signal value has changed during the delay test by performing a simulation of the delay test based on a test pattern in the delay test and a net list of the real chip;
An activation path extraction device comprising: a path trace unit that traces the activation path by tracing the signal value change pin based on the signal value change pin specified by the simulation unit and a net list of the real chip. .

(付記12)
前記シミュレーションの実行時に入力側フリップフロップまたはラッチの出力ピンの信号値が変化する場合、前記出力ピンの変化前の信号値と変化後の信号値との間に不定値を所定時間だけ設定する不定値設定手段をさらに有し、
前記シミュレーション部は、前記不定値設定手段によって前記不定値を設定された信号値に基づき、タイミングを考慮することなく前記シミュレーションを行なうことにより、前記信号値変化ピンを特定する、付記11記載の活性化パス抽出装置。
(Appendix 12)
When the signal value of the output pin of the input side flip-flop or latch changes during the execution of the simulation, an indefinite value is set for a predetermined time between the signal value before the change of the output pin and the signal value after the change. Further comprising value setting means,
The activity according to claim 11, wherein the simulation unit specifies the signal value change pin by performing the simulation without considering timing based on the signal value for which the indeterminate value is set by the indeterminate value setting unit. Path extractor.

(付記13)
前記不定値設定手段としての機能は、前記実チップのネットリストに含まれる、前記入力側フリップフロップまたはラッチを定義するソースコードの記述によって実現される、付記12記載の活性化パス抽出装置。
(付記14)
前記所定時間は、前記ネットリストにおける各セルの内部遅延値よりも長く且つ前記シミュレーションでのクロック周期よりも短く設定される、付記12または付記13記載の活性化パス抽出装置。
(Appendix 13)
The activation path extraction device according to appendix 12, wherein the function as the indefinite value setting means is realized by a description of source code defining the input side flip-flop or latch included in the net list of the real chip.
(Appendix 14)
14. The activation path extraction device according to appendix 12 or appendix 13, wherein the predetermined time is set longer than an internal delay value of each cell in the net list and shorter than a clock cycle in the simulation.

(付記15)
前記シミュレーション部は、前記シミュレーションによって得られた出力値と前記テストパターンに含まれる期待値とを比較し、これらの出力値と期待値とが一致した場合、前記シミュレーションによって特定された前記活性化パスの情報を有効にする、付記11〜付記14のいずれか一項に記載の活性化パス抽出装置。
(Appendix 15)
The simulation unit compares an output value obtained by the simulation with an expected value included in the test pattern, and if the output value and the expected value match, the activation path specified by the simulation The activation path extraction device according to any one of Supplementary Note 11 to Supplementary Note 14, which validates the information.

(付記16)
前記パストレース部は、前記実チップの前記遅延試験において期待値と異なる値を出力した出力側フリップフロップまたはラッチの信号値変化ピンを起点にして、前記トレースを行なう、付記11〜付記15のいずれか一項に記載の活性化パス抽出装置。
(Appendix 16)
Any one of appendix 11 to appendix 15, wherein the path trace unit performs the trace from a signal value change pin of an output flip-flop or a latch that outputs a value different from an expected value in the delay test of the real chip. The activation path extracting device according to claim 1.

(付記17)
前記シミュレーション部は、前記シミュレーションにより、出力側フリップフロップまたはラッチのクロック制御系ピンの値を特定し、
前記パストレース部は、前記シミュレーション部によって特定された、前記信号値変化ピンと前記クロック制御系ピンの値とに基づき、前記実チップの前記遅延試験において期待値と異なる値を出力した出力側フリップフロップまたはラッチへのデータパスおよびクロック制御系パスのいずれのパスが故障に関わる可能性があるかを判定し、故障に関わる可能性のあるパスに係る信号値変化ピンを起点にして、故障に関わる可能性のある活性化パスのトレースを行なう、付記11〜付記15のいずれか一項に記載の活性化パス抽出装置。
(Appendix 17)
The simulation unit specifies the value of the clock control system pin of the output side flip-flop or latch by the simulation,
The path trace unit is an output side flip-flop that outputs a value different from an expected value in the delay test of the real chip based on the value of the signal value change pin and the clock control system pin specified by the simulation unit. Or, determine which of the data path to the latch and the clock control system path may be involved in the failure, and use the signal value change pin related to the path that may be involved in the failure as a starting point. The activation path extraction device according to any one of appendix 11 to appendix 15, which traces a possible activation path.

(付記18)
前記パストレース部は、前記起点から深さ優先探索によって前記トレースを行なう、付記16または付記17に記載の活性化パス抽出装置。
(付記19)
前記パストレース部は、対象フリップフロップまたはラッチの信号値変化ピンから深さ優先探索を行ない、各ピンに対し、そのピンよりも深い側の活性化パスの本数をラベルとして付与しながら前記信号値変化ピンを辿ることにより、前記活性化パスの数を計数する、付記11〜付記18のいずれか一項に記載の活性化パス抽出装置。
(Appendix 18)
The activation path extraction device according to appendix 16 or appendix 17, wherein the path trace unit performs the trace by depth-first search from the starting point.
(Appendix 19)
The path trace unit performs a depth-first search from the signal value change pin of the target flip-flop or latch, and assigns the number of activation paths deeper than the pin to each pin as a label. The activation path extraction device according to any one of appendix 11 to appendix 18, wherein the number of the activation paths is counted by tracing a change pin.

(付記20)
実チップに対する遅延試験の際に信号が伝播した活性化パスをコンピュータにより抽出する活性化パス抽出方法であって、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験時に信号値が変化した信号値変化ピンを特定し、
前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう、活性化パス抽出方法。
(Appendix 20)
An activation path extraction method in which an activation path through which a signal propagates during a delay test on an actual chip is extracted by a computer,
By performing a simulation of the delay test based on the test pattern at the time of the delay test and the netlist of the actual chip, the signal value change pin that has changed the signal value during the delay test is specified,
An activation path extraction method for tracing the activation path by tracing the signal value change pin based on the signal value change pin specified by the simulation and a net list of the real chip.

1 活性化パス抽出装置
10 処理部(コンピュータ)
11 シミュレーション部
12 パストレース部
20 記憶部
21 ディレイテスト結果データベース
211 テストパターン
212 フェイルリスト
22 ネットリスト(Verilogソースコード;不定値設定手段)
23 トグルピン情報リスト(信号値変化ピン情報リスト)
24 クロック制御系ピン情報リスト
25 活性化パストレース結果データベース
101 入力側フリップフロップ(またはラッチ)
102 出力側フリップフロップ(またはラッチ)
103 ORゲート
104 ANDゲート
DESCRIPTION OF SYMBOLS 1 Activation path extraction apparatus 10 Processing part (computer)
DESCRIPTION OF SYMBOLS 11 Simulation part 12 Path trace part 20 Memory | storage part 21 Delay test result database 211 Test pattern 212 Fail list 22 Net list (Verilog source code; undefined value setting means)
23 Toggle pin information list (Signal value change pin information list)
24 Clock control system pin information list 25 Activation path trace result database 101 Input side flip-flop (or latch)
102 Output side flip-flop (or latch)
103 OR gate 104 AND gate

Claims (7)

実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出するコンピュータに、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定し、
前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう、
処理を実行させる活性化パス抽出プログラム。
In the computer that extracts the activation path that the signal propagated during the delay test on the actual chip,
By performing a simulation of the delay test based on the test pattern at the time of the delay test and the net list of the actual chip, the signal value change pin that has changed the signal value at the time of the delay test,
Tracing the activation path by following the signal value change pin based on the signal value change pin specified by the simulation and the netlist of the real chip;
Activation path extraction program that executes processing.
前記シミュレーションの実行の際に入力側フリップフロップまたはラッチの出力ピンの信号値が変化する場合、前記出力ピンの変化前の信号値と変化後の信号値との間に不定値を所定時間だけ設定し、
前記不定値を設定された信号値に基づき、タイミングを考慮することなく前記シミュレーションを行なうことにより、前記信号値変化ピンを特定する、
処理を、前記コンピュータに実行させる、請求項1記載の活性化パス抽出プログラム。
If the signal value of the output pin of the input side flip-flop or latch changes during the execution of the simulation, an indefinite value is set for a predetermined time between the signal value before the change of the output pin and the signal value after the change And
The signal value change pin is identified by performing the simulation without considering timing based on the signal value set with the indefinite value.
The activation path extraction program according to claim 1, which causes the computer to execute processing.
前記不定値を設定する機能は、前記実チップのネットリストに含まれる、前記入力側フリップフロップを定義するソースコードの記述によって実現される、請求項2記載の活性化パス抽出プログラム。   The activation path extraction program according to claim 2, wherein the function of setting the indefinite value is realized by a description of a source code that defines the input-side flip-flop included in the net list of the real chip. 前記所定時間は、前記ネットリストにおける各セルの内部遅延値よりも長く且つ前記シミュレーションでのクロック周期よりも短く設定される、請求項2または請求項3記載の活性化パス抽出プログラム。   4. The activation path extraction program according to claim 2, wherein the predetermined time is set longer than an internal delay value of each cell in the net list and shorter than a clock cycle in the simulation. 前記シミュレーションにより、出力側フリップフロップまたはラッチのクロック制御系ピンの値を特定し、
前記シミュレーションによって特定された、前記信号値変化ピンと前記クロック制御系ピンの値とに基づき、前記実チップの前記遅延試験において期待値と異なる値を出力した出力側フリップフロップまたはラッチへのデータパスおよびクロック制御系パスのいずれのパスが故障に関わる可能性があるかを判定し、故障に関わる可能性のあるパスに係る信号値変化ピンを起点にして、故障に関わる可能性のある活性化パスのトレースを行なう、
処理を、前記コンピュータに実行させる、請求項1〜請求項4のいずれか一項に記載の活性化パス抽出プログラム。
By the simulation, specify the value of the clock control system pin of the output side flip-flop or latch,
A data path to an output-side flip-flop or latch that outputs a value different from an expected value in the delay test of the real chip based on the value of the signal value change pin and the clock control system pin specified by the simulation, and Determine which path of the clock control system path may be involved in the failure, and use the signal value change pin for the path that may be involved in the failure as the starting point. Tracing
The activation path extraction program according to any one of claims 1 to 4, which causes the computer to execute processing.
実チップに対する遅延試験の際に信号が伝播した活性化パスを抽出する活性化パス抽出装置であって、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験の際に信号値が変化した信号値変化ピンを特定するシミュレーション部と、
前記シミュレーション部によって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なうパストレース部と、を有する活性化パス抽出装置。
An activation path extraction device that extracts an activation path through which a signal has propagated during a delay test on an actual chip,
A simulation unit for identifying a signal value change pin whose signal value has changed during the delay test by performing a simulation of the delay test based on a test pattern in the delay test and a net list of the real chip;
A path trace unit that traces the activation path by tracing the signal value change pin based on the signal value change pin specified by the simulation unit and the netlist of the real chip; apparatus.
実チップに対する遅延試験の際に信号が伝播した活性化パスをコンピュータにより抽出する活性化パス抽出方法であって、
前記遅延試験の際のテストパターンと前記実チップのネットリストとに基づき前記遅延試験のシミュレーションを行なうことにより、前記遅延試験時に信号値が変化した信号値変化ピンを特定し、
前記シミュレーションによって特定された前記信号値変化ピンと前記実チップのネットリストとに基づき前記信号値変化ピンを辿ることにより、前記活性化パスのトレースを行なう、活性化パス抽出方法。
An activation path extraction method in which an activation path through which a signal propagates during a delay test on an actual chip is extracted by a computer,
By performing a simulation of the delay test based on the test pattern at the time of the delay test and the netlist of the actual chip, the signal value change pin that has changed the signal value during the delay test is specified,
An activation path extraction method for tracing the activation path by tracing the signal value change pin based on the signal value change pin specified by the simulation and a net list of the real chip.
JP2010280329A 2010-12-16 2010-12-16 Activation path extraction program, activation path extraction apparatus, and activation path extraction method Expired - Fee Related JP5707921B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010280329A JP5707921B2 (en) 2010-12-16 2010-12-16 Activation path extraction program, activation path extraction apparatus, and activation path extraction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010280329A JP5707921B2 (en) 2010-12-16 2010-12-16 Activation path extraction program, activation path extraction apparatus, and activation path extraction method

Publications (2)

Publication Number Publication Date
JP2012128712A true JP2012128712A (en) 2012-07-05
JP5707921B2 JP5707921B2 (en) 2015-04-30

Family

ID=46645639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010280329A Expired - Fee Related JP5707921B2 (en) 2010-12-16 2010-12-16 Activation path extraction program, activation path extraction apparatus, and activation path extraction method

Country Status (1)

Country Link
JP (1) JP5707921B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150064061A (en) 2012-10-03 2015-06-10 도쿄엘렉트론가부시키가이샤 Wafer mounting method and wafer inspection device
US20170160339A1 (en) * 2015-12-08 2017-06-08 International Business Machines Corporation Degradation monitoring of semiconductor chips

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020149312A (en) 2019-03-13 2020-09-17 株式会社東芝 Circuit design support method and circuit design support program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6483168A (en) * 1987-09-25 1989-03-28 Nec Corp Estimating device for occurrence of glitch in logic circuit
JPH0438568A (en) * 1990-06-04 1992-02-07 Fujitsu Ltd Logic simulation processing system between synchronous type ffs
JPH0455776A (en) * 1990-06-25 1992-02-24 Nippon Telegr & Teleph Corp <Ntt> Trouble shooting device for logic integrated circuit
JPH04238576A (en) * 1991-01-23 1992-08-26 Nec Corp Delay simulation system
JPH08240641A (en) * 1995-03-06 1996-09-17 Nec Eng Ltd Inspecting method for limitation of number of output synchronous operations in semiconductor integrated circuit
JP2004085333A (en) * 2002-08-27 2004-03-18 Matsushita Electric Ind Co Ltd Failure diagnostic program for semiconductor integrated circuit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6483168A (en) * 1987-09-25 1989-03-28 Nec Corp Estimating device for occurrence of glitch in logic circuit
JPH0438568A (en) * 1990-06-04 1992-02-07 Fujitsu Ltd Logic simulation processing system between synchronous type ffs
JPH0455776A (en) * 1990-06-25 1992-02-24 Nippon Telegr & Teleph Corp <Ntt> Trouble shooting device for logic integrated circuit
JPH04238576A (en) * 1991-01-23 1992-08-26 Nec Corp Delay simulation system
JPH08240641A (en) * 1995-03-06 1996-09-17 Nec Eng Ltd Inspecting method for limitation of number of output synchronous operations in semiconductor integrated circuit
JP2004085333A (en) * 2002-08-27 2004-03-18 Matsushita Electric Ind Co Ltd Failure diagnostic program for semiconductor integrated circuit

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150064061A (en) 2012-10-03 2015-06-10 도쿄엘렉트론가부시키가이샤 Wafer mounting method and wafer inspection device
US20170160339A1 (en) * 2015-12-08 2017-06-08 International Business Machines Corporation Degradation monitoring of semiconductor chips
US11131706B2 (en) * 2015-12-08 2021-09-28 International Business Machines Corporation Degradation monitoring of semiconductor chips

Also Published As

Publication number Publication date
JP5707921B2 (en) 2015-04-30

Similar Documents

Publication Publication Date Title
Holst et al. Adaptive debug and diagnosis without fault dictionaries
Kim et al. Delay defect characteristics and testing strategies
US9218440B2 (en) Timing verification of an integrated circuit
US10657207B1 (en) Inter-cell bridge defect diagnosis
Wang et al. Delay-fault diagnosis using timing information
US11216607B2 (en) Double glitch capture mode power integrity analysis
JP5707921B2 (en) Activation path extraction program, activation path extraction apparatus, and activation path extraction method
Chen et al. Diagnosis framework for locating failed segments of path delay faults
US11579194B1 (en) Utilizing single cycle ATPG test patterns to detect multicycle cell-aware defects
JP2010271067A (en) Program, device, and method for inspecting delay fault
US10107859B1 (en) Determining test conditions for at-speed transition delay fault tests on semiconductor devices
US9489478B2 (en) Simplifying modes of an electronic circuit by reducing constraints
JP5292164B2 (en) Failure diagnosis method and failure diagnosis system
Dehbashi et al. Debug automation for logic circuits under timing variations
Yu et al. Improving diagnosis through failing behavior identification
US11461520B1 (en) SDD ATPG using fault rules files, SDF and node slack for testing an IC chip
US10234502B1 (en) Circuit defect diagnosis based on sink cell fault models
US11429776B1 (en) Fault rules files for testing an IC chip
US11740284B1 (en) Diagnosing multicycle faults and/or defects with single cycle ATPG test patterns
Wang et al. Diagnosis of hold time defects
US8468409B2 (en) Speed-path debug using at-speed scan test patterns
Bosio et al. A comprehensive framework for logic diagnosis of arbitrary defects
Tsai et al. Structural reduction techniques for logic-chain bridging fault diagnosis
JP5652003B2 (en) Delay analysis program, delay analysis apparatus, and delay analysis method
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: 20130904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140819

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140916

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150216

R150 Certificate of patent or registration of utility model

Ref document number: 5707921

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees