JP4651023B2 - Circuit simulation device - Google Patents

Circuit simulation device Download PDF

Info

Publication number
JP4651023B2
JP4651023B2 JP2005358048A JP2005358048A JP4651023B2 JP 4651023 B2 JP4651023 B2 JP 4651023B2 JP 2005358048 A JP2005358048 A JP 2005358048A JP 2005358048 A JP2005358048 A JP 2005358048A JP 4651023 B2 JP4651023 B2 JP 4651023B2
Authority
JP
Japan
Prior art keywords
clock
output
input
feedback
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005358048A
Other languages
Japanese (ja)
Other versions
JP2007164363A (en
Inventor
秀実 加賀谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2005358048A priority Critical patent/JP4651023B2/en
Publication of JP2007164363A publication Critical patent/JP2007164363A/en
Application granted granted Critical
Publication of JP4651023B2 publication Critical patent/JP4651023B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Description

本発明は、回路シミュレーション装置に関し、特に、PLL(Phase Locked Loop:)回路を含む半導体装置の論理検証における回路シミュレーションに関する。   The present invention relates to a circuit simulation apparatus, and more particularly to a circuit simulation in logic verification of a semiconductor device including a PLL (Phase Locked Loop :) circuit.

現在市場に流通している様々な電子機器には、半導体集積回路が搭載されている。電子機器に搭載される半導体集積回路に対し、動作速度の高速化の要求が年々増加してきている。動作速度を向上させる手法の一つとして、半導体集積回路にPLL回路を搭載する技術があげられる。PLL回路を搭載した半導体集積回路では、内部クロック周波数を外部クロックの整数倍にして、動作速度の高速化を実現している。   Various electronic devices currently on the market are equipped with semiconductor integrated circuits. The demand for higher operating speed is increasing year by year for semiconductor integrated circuits mounted on electronic devices. One technique for improving the operation speed is to mount a PLL circuit on a semiconductor integrated circuit. In a semiconductor integrated circuit equipped with a PLL circuit, the internal clock frequency is set to an integral multiple of the external clock to increase the operation speed.

上述のような半導体集積回路は、様々な工程を経て開発されている。半導体開発において、開発の様々な段階においてシミュレーション技術が用いられている。シミュレーションが有効であるためには、モデルの構築を適切に行うことが必要である。従来のシミュレーション装置において、PLL回路を搭載した半導体集積回路のシミュレーションを行なう場合には、入力クロックをそのまま出力する簡易的な論理シミュレーションモデル(以下、第1従来モデルと呼ぶ。)をPLL回路の論理シミュレーションモデルとして用いていた。   The semiconductor integrated circuit as described above has been developed through various processes. In semiconductor development, simulation techniques are used at various stages of development. In order for the simulation to be effective, it is necessary to construct the model appropriately. In a conventional simulation apparatus, when a semiconductor integrated circuit equipped with a PLL circuit is simulated, a simple logic simulation model (hereinafter referred to as a first conventional model) that directly outputs an input clock is used. Used as a simulation model.

近年の半導体集積回路の微細化・複雑化に対応して、より高精度にシミュレーションを行うことができるシミュレーション装置やシミュレーション方法が求められてきている。例えば、実際の半導体集積回路において、搭載されるPLL回路には、逓倍動作中に安定した入力クロックが供給されている必要がある。何らかの要因によって実際の入力クロックが停止してしまった場合、実際の半導体集積回路の動作に不具合が生じることがある。そのため、論理シミュレーション段階において、上記の不具合を予測することが要求されることがある。しかしながら、第1従来モデルにおいては、何らかの要因で入力クロックが停止している場合であっても、その状態(入力クロックが停止した状態)を検出する事が不可能であった。   In response to the recent miniaturization and complexity of semiconductor integrated circuits, there has been a demand for a simulation apparatus and a simulation method capable of performing simulation with higher accuracy. For example, in an actual semiconductor integrated circuit, a stable input clock needs to be supplied to a PLL circuit to be mounted during a multiplication operation. When the actual input clock is stopped for some reason, a problem may occur in the actual operation of the semiconductor integrated circuit. For this reason, in the logic simulation stage, it may be required to predict the above-mentioned problem. However, in the first conventional model, even when the input clock is stopped for some reason, it is impossible to detect the state (the state where the input clock is stopped).

第1従来モデルに対応したシミュレーションに比較して、より実際のデバイスにより近い検証を行う技術として、特許文献1(特開2001−358581号公報)に記載の技術が知られている。特許文献1に記載されている技術は、論理シミュレーションモデル内にカウンター回路を搭載し、正常入力時についてのみリセットさせる事により正常波形を出力させ、リセットされない場合は、出力を停止させている。特許文献1の技術は、この動作によって、不正値の入力を論理シミュレーション結果に反映させる事で、実デバイスに近い検証を可能にしたものである。   As a technique for performing verification closer to an actual device as compared with the simulation corresponding to the first conventional model, a technique described in Patent Document 1 (Japanese Patent Laid-Open No. 2001-358581) is known. The technique described in Patent Document 1 includes a counter circuit in a logic simulation model, and outputs a normal waveform by resetting only at the time of normal input, and stops output when not reset. The technique of Patent Document 1 enables verification close to an actual device by reflecting an incorrect value input in a logic simulation result by this operation.

また、特許文献1とは異なる構成で、より実デバイスに近いPLL回路の動作を再現可能な論理シミュレーションモデル(以下、第2従来モデルと呼ぶ)が知られている。図1は、上述の第2従来モデル100の構成を示すブロック図である。図1を参照すると、第2従来モデル100は、逓倍設定値入力端子DIVと、入力クロック供給端子106と、逓倍クロック出力端子OUTと、クロック周期測定部101と、クロック周期変動検出部102と、逓倍波形生成部103、エラー処理部104を含んで構成されている。   Further, a logic simulation model (hereinafter referred to as a second conventional model) is known that has a configuration different from that of Patent Document 1 and can reproduce the operation of a PLL circuit closer to an actual device. FIG. 1 is a block diagram showing the configuration of the second conventional model 100 described above. Referring to FIG. 1, the second conventional model 100 includes a multiplication set value input terminal DIV, an input clock supply terminal 106, a multiplication clock output terminal OUT, a clock period measurement unit 101, a clock period variation detection unit 102, The multiplication waveform generation unit 103 and the error processing unit 104 are included.

クロック周期測定部101は、入力クロック供給端子106を介して供給される入力クロックを検出し、入力クロックの前変化時刻と現在の時刻の差を計算する。クロック周期変動検出部102は、クロック周期測定部101から出力される入力クロックの周期値を受け取り、前サイクルの周期値と今サイクルの周期値を比較する。逓倍波形生成部103は、クロック周期測定部101から出力される入力クロックの周期値と、逓倍設定値入力端子DIVを介して供給される逓倍設定入力値とを受け取り、出力逓倍波形周期を決定する。エラー処理部104は、クロック周期変動検出部102が周期変動を検出した場合に、エラー処理を行う。   The clock cycle measuring unit 101 detects the input clock supplied via the input clock supply terminal 106 and calculates the difference between the previous change time of the input clock and the current time. The clock cycle variation detection unit 102 receives the cycle value of the input clock output from the clock cycle measurement unit 101, and compares the cycle value of the previous cycle with the cycle value of the current cycle. The multiplication waveform generation unit 103 receives the cycle value of the input clock output from the clock cycle measurement unit 101 and the multiplication setting input value supplied via the multiplication setting value input terminal DIV, and determines the output multiplication waveform cycle. . The error processing unit 104 performs error processing when the clock cycle variation detection unit 102 detects a cycle variation.

上述したように、実際のPLL回路においては、逓倍動作中に供給される入力クロックは、周波数の変動しない安定したものであることが必要である。第2従来モデル100に対応した論理シミュレーションにおいて、入力クロックの周波数が変動した場合には、シミュレーション上の逓倍動作を停止させ、不正入力があった事をシミュレーション結果に反映させている。   As described above, in an actual PLL circuit, the input clock supplied during the multiplication operation needs to be stable without frequency fluctuation. In the logic simulation corresponding to the second conventional model 100, when the frequency of the input clock fluctuates, the multiplication operation on the simulation is stopped, and the fact that there was an illegal input is reflected in the simulation result.

このシミュレーション結果は、第2従来モデルに対応した論理シミュレータ(以下、従来シミュレータと呼ぶ。)を用いたシミュレーションを実行することによって得ることができる。なお、従来シミュレータは、設計回路の接続情報及び入力パターン及び各セルの論理シミュレーションモデルを情報として、時刻毎のイベントの演算を行っている。ここにおいて、従来シミュレータは、第2従来モデルが示すPLL回路に対し、入力クロックの供給に応答してシミュレーションの実行を開始する。従来シミュレータは、第2従来モデルの記述に基づいた処理を行うことで、PLL回路の出力論理値を決定している。   This simulation result can be obtained by executing a simulation using a logic simulator corresponding to the second conventional model (hereinafter referred to as a conventional simulator). The conventional simulator calculates events for each time using the connection information of the design circuit, the input pattern, and the logic simulation model of each cell as information. Here, the conventional simulator starts simulation execution in response to the supply of the input clock to the PLL circuit indicated by the second conventional model. The conventional simulator determines the output logic value of the PLL circuit by performing processing based on the description of the second conventional model.

ここで、上記動作に関し図面を参照して具体的に説明をする。図2は、従来シミュレータの動作を示すフローチャートである。従来シミュレータは、ステップS1において、入力クロックのイベントを監視し、イベントが発生したか否かの判断を行う。その判断の結果、イベントを検出すると処理はステップS2に進み、イベントの検出が行なわれない場合処理は終了する。ステップS2において、クロック周期測定部101は、入力クロックの周期の測定を行い、測定結果をクロック周期変動検出部102に供給する。ステップS3において、クロック周期変動検出部102は、クロック周期測定部101から供給される測定結果に基づいて、前サイクル周期と現サイクル周期との値を比較し、一致していない場合は不正入力と判定する。クロック周期変動検出部102は、不正入力が発生した場合、その旨をエラー処理部104に通知して処理はステップS7に進む。不正入力が発生していない場合には、処理はステップS4に進む。ステップS7において、エラー処理部104は、不定値を出力し逓倍出力を禁止する。   Here, the above operation will be specifically described with reference to the drawings. FIG. 2 is a flowchart showing the operation of the conventional simulator. In step S1, the conventional simulator monitors an input clock event and determines whether an event has occurred. If an event is detected as a result of the determination, the process proceeds to step S2, and if no event is detected, the process ends. In step S <b> 2, the clock cycle measurement unit 101 measures the cycle of the input clock and supplies the measurement result to the clock cycle variation detection unit 102. In step S3, the clock cycle fluctuation detection unit 102 compares the values of the previous cycle period and the current cycle cycle based on the measurement result supplied from the clock cycle measurement unit 101. judge. When an illegal input occurs, the clock cycle variation detection unit 102 notifies the error processing unit 104 to that effect, and the process proceeds to step S7. If unauthorized input has not occurred, the process proceeds to step S4. In step S7, the error processing unit 104 outputs an indefinite value and prohibits multiplication output.

ステップS4において、逓倍波形生成部103は、逓倍波形生成が完了しているか否かの判断を行う。その判断の結果、逓倍波形生成が完了している場合には、処理は終了する。未生成の場合は、処理はステップS5に進む。ステップS5において、逓倍波形生成部103が有する時刻判定部は、現在の時刻が位相調整に必要な期間を示すスペックであるロックアップタイム時間を経過しているか判定する。ロックアップタイム時刻を経過していた場合、処理はステップS6に進む。ステップS6において逓倍波形生成部103は逓倍波形出力を開始する。逓倍波形は、一定時間毎に出力を反転させる事で出力波形を生成する。また、ステップS8において、逓倍波形生成部103にて生成した出力波形をスケジュールし入力イベントよる処理は終了する。   In step S4, the multiplied waveform generation unit 103 determines whether or not the multiplied waveform generation is completed. As a result of the determination, if the multiplied waveform generation is completed, the process ends. If not generated, the process proceeds to step S5. In step S <b> 5, the time determination unit included in the multiplied waveform generation unit 103 determines whether the current time has passed a lock-up time that is a specification indicating a period necessary for phase adjustment. If the lock-up time has elapsed, the process proceeds to step S6. In step S6, the multiplied waveform generation unit 103 starts outputting the multiplied waveform. The multiplied waveform generates an output waveform by inverting the output at regular intervals. In step S8, the output waveform generated by the multiplied waveform generation unit 103 is scheduled, and the process according to the input event ends.

ここで、スケジュールとは、決定されたPLLの出力値をイベントとして生成する事である。本イベントが当該PLL以降のセルに伝播していく。第2従来モデルに対応した論理シミュレータは、本処理により不正入力時には、PLLより不定値を出力する。その動作によって、PLL以降のセルは正常動作しなくなり、シミュレーション結果は、期待動作とは異なる為、回路設計者は、当該PLLに違反動作が発生している事を発見できる。   Here, the schedule is to generate an output value of the determined PLL as an event. This event propagates to cells after the PLL. The logic simulator corresponding to the second conventional model outputs an indefinite value from the PLL when an illegal input is made by this processing. Due to this operation, the cells after the PLL do not operate normally, and the simulation result is different from the expected operation. Therefore, the circuit designer can find out that the violation operation has occurred in the PLL.

以下に、タイミングチャートを用いて上述した動作の説明をする。図3は、従来シミュレータの動作を示すタイミングチャートである。図3の(a)は入力クロック供給端子106に供給される入力クロックの信号波形を示している。また、図3の(b)は、逓倍クロック出力端子OUTから出力される出力信号の波形を示している。なお、本タイミングチャート以前の入力クロック供給端子106に入力されている入力クロックの周期は、周期値T1で安定しているものとする。また、時刻A1にて、PLLの位相調整が完了し、安定した逓倍波形の出力可能になるものとする。   Hereinafter, the above-described operation will be described using a timing chart. FIG. 3 is a timing chart showing the operation of the conventional simulator. FIG. 3A shows the signal waveform of the input clock supplied to the input clock supply terminal 106. FIG. 3B shows the waveform of the output signal output from the multiplied clock output terminal OUT. It is assumed that the period of the input clock input to the input clock supply terminal 106 before this timing chart is stable at the period value T1. Further, it is assumed that the phase adjustment of the PLL is completed at time A1, and a stable multiplied waveform can be output.

PLLは、逓倍波形出力に関して、PLL内部で位相調整期間が必要であり、位相調整期間中は、出力は安定しないので、論理シミュレーションモデルでは、不定を出力する。よって、逓倍出力モード変化イベント検出後、一定時間後より逓倍波形の出力が開始される。   The PLL requires a phase adjustment period inside the PLL for the output of the multiplied waveform, and the output is not stable during the phase adjustment period, so the logic simulation model outputs indefinite. Therefore, after detecting the multiplied output mode change event, output of the multiplied waveform is started after a certain time.

時刻A1では、入力クロックのイベントが発生している。その為、上述のステップS1の判断ではYESと判定される。ステップS2において、入力クロックの周期測定が行われる。ステップS3で、その測定結果に基づいて周波数の変動チェックが行われる。時刻A1では、前サイクル、現サイクルともに、周期値T1である。その為、周波数の変動が無いものと判定され、処理はステップS4に進む。ステップS4においては、時刻A1での逓倍波形生成は行われていない。その為、逓倍波形生成は行われていないと判定され、処理はステップS5進む。ステップS5おいて、現在時刻がロックアップタイムの経過している為、YESと判定し、ステップS6に進む。ステップS6において逓倍波形の生成を行い、処理はステップS8に進み、スケジュール登録し終了する。   At time A1, an input clock event has occurred. Therefore, it is determined as YES in the above-described determination in step S1. In step S2, the period of the input clock is measured. In step S3, a frequency variation check is performed based on the measurement result. At time A1, both the previous cycle and the current cycle are the period value T1. Therefore, it is determined that there is no frequency variation, and the process proceeds to step S4. In step S4, the multiplied waveform generation at time A1 is not performed. Therefore, it is determined that the multiplied waveform is not generated, and the process proceeds to step S5. In step S5, since the current time has passed the lock-up time, it is determined YES and the process proceeds to step S6. In step S6, a multiplied waveform is generated, the process proceeds to step S8, the schedule is registered, and the process ends.

その後、時刻A2にて、入力クロックのイベントが発生する為、ステップS1でYESと判定され、処理はステップS2に進む。ステップS2において入力クロックの周期測定が行われ、その測定結果が出力される。ステップS3において、時刻A2では、周波数の変動チェックを行うが、前サイクル、現サイクルともに、周期値T1である。その為、NOと判定され、処理はステップS4に進む。ステップS4においては、逓倍波形生成済みである為、NOと判定し、処理は終了する。その後、時刻A3、時刻A4においても同様の処理が繰り返される。   Thereafter, since an event of the input clock occurs at time A2, YES is determined in step S1, and the process proceeds to step S2. In step S2, the period of the input clock is measured, and the measurement result is output. In step S3, at time A2, a frequency variation check is performed, and both the previous cycle and the current cycle have the period value T1. Therefore, it is determined as NO, and the process proceeds to step S4. In step S4, since the multiplied waveform has been generated, it is determined as NO, and the process ends. Thereafter, similar processing is repeated at time A3 and time A4.

時刻A5において、入力クロックのイベントが発生する為、ステップS1でYESと判定され、処理はステップS2に進む。ステップS2において、入力クロックの周期測定を行い、測定結果を出力して処理はステップS3に進む。   Since an input clock event occurs at time A5, it is determined YES in step S1, and the process proceeds to step S2. In step S2, the period of the input clock is measured, the measurement result is output, and the process proceeds to step S3.

ステップS3において、周波数の変動チェックが行われる。図3を参照すると、前サイクルの周期値T1に対して、現周期値は周期値T2である。クロック周期変動検出部102は、周期値T1と周期値T2との差分を検出する為、周波数が変動したと判定し、処理はステップS7に進む。ステップS7において、エラー処理部104はエラー処理を行う。その後、処理はS8に進み、不定値出力をスケジュールして処理は終了する。本動作にて、周波数の変動に関して、不正動作として検出可能である。   In step S3, a frequency variation check is performed. Referring to FIG. 3, the current cycle value is the cycle value T2 with respect to the cycle value T1 of the previous cycle. Since the clock cycle variation detector 102 detects the difference between the cycle value T1 and the cycle value T2, the clock cycle variation detector 102 determines that the frequency has fluctuated, and the process proceeds to step S7. In step S7, the error processing unit 104 performs error processing. Thereafter, the process proceeds to S8, the indeterminate value output is scheduled, and the process ends. In this operation, the frequency fluctuation can be detected as an illegal operation.

第2従来モデルでシミュレーションを行う従来シミュレータは、現在主流であるイベントドリブン方式の論理シミュレータである。イベントドリブン方式では、信号のイベントを検出して、ネットリストの接続先の各セルの論理シミュレーションモデルを呼び出している。論理シミュレータは、セルの論理シミュレーションモデルの端子にイベントを与え、セルの論理シミュレーションモデル記述に従い、動作処理、出力値スケジュールを行っている。その後、ネットリストを介して、次の信号伝播が行われる。したがって、イベントが発生していないときは、シミュレータは待機状態に移行する。   A conventional simulator that performs simulation using the second conventional model is an event-driven logic simulator that is currently mainstream. In the event-driven method, a signal event is detected and a logic simulation model of each cell connected to a netlist is called. The logic simulator gives an event to a terminal of a cell logic simulation model, and performs operation processing and output value schedule according to the cell logic simulation model description. Thereafter, the next signal propagation is performed via the netlist. Therefore, when no event occurs, the simulator shifts to a standby state.

以下に、従来シミュレータにおいて、入力クロックの信号供給が停止した場合の動作に関して説明を行う。図4は、入力クロックの信号供給が停止した場合の従来シミュレータの動作を示すタイミングチャートである。   The operation when the input clock signal supply is stopped in the conventional simulator will be described below. FIG. 4 is a timing chart showing the operation of the conventional simulator when the input clock signal supply is stopped.

図4を参照すると、時刻B1から時刻B4までの動作は図3の時刻A1から時刻A4までと同様である。図4に示されているように、時刻B4において、入力クロックの信号供給が停止している。安定した周波数で入力クロックの入力が続いていた場合は、時刻B5で、入力クロックにイベントが発生するはずである。しかし、入力クロックの供給が停止してしまった場合は、周波数変動を検出し、供給停止を判定するイベント自体が発生しない。そのため、時刻B5以降であっても、正常状態での出力信号が継続的に出力される。   Referring to FIG. 4, the operation from time B1 to time B4 is the same as from time A1 to time A4 in FIG. As shown in FIG. 4, the signal supply of the input clock is stopped at time B4. If input clock input continues at a stable frequency, an event should occur in the input clock at time B5. However, when the supply of the input clock is stopped, the event itself for detecting the frequency fluctuation and determining the supply stop does not occur. Therefore, the output signal in the normal state is continuously output even after time B5.

特開2001−358581号公報JP 2001-358581 A

上述のように、第1従来モデルに対応した論理シミュレーションでは、論理検証時に本不正入力が発生しているか否かを自動的に検証できず、その不正入力を見逃す可能性があった。これによって、実回路において正常動作しない不具合に繋がる場合があった。   As described above, in the logic simulation corresponding to the first conventional model, it is not possible to automatically verify whether or not the illegal input is generated at the time of logic verification, and there is a possibility that the illegal input is missed. This may lead to a malfunction that does not operate normally in the actual circuit.

また、特許文献1の技術では、一時的に不正値入力を検出し、出力を停止させる事が可能である。特許文献1の技術では、その後に入力が正常値に復帰した場合、即座に正常波形出力に復帰してしまう。また、入力周波数が変動した場合は、不正入力として検出できず正常波形が出力され続けることになる。つまり、特許文献1に記載の技術では、実デバイスでの出力の不安定状態が論理シミュレーションに反映されない場合がある。   Also, with the technique of Patent Document 1, it is possible to temporarily detect an illegal value input and stop the output. In the technique of Patent Document 1, when the input subsequently returns to a normal value, the output immediately returns to the normal waveform output. If the input frequency fluctuates, it cannot be detected as an illegal input, and a normal waveform continues to be output. In other words, in the technique described in Patent Document 1, the unstable state of the output in the actual device may not be reflected in the logic simulation.

さらに、第2従来モデルに対応してシミュレーションを行う従来シミュレータにおいて、論理シミュレーションモデル内には、入力イベント発生をもとに、各種タイミングチェックに関連する情報が記述されている。従来シミュレータでは、その記述に従い、チェックを行っていた。入力に関するタイミングチェック処理としては、シミュレータ言語では、入力信号のパルス幅チェック、サイクル値チェックが関数として用意されているが、いずれも入力イベントを基に処理される。周波数の変動チェックについては、関数は用意されていないが、入力イベントを前記した用に入力イベントを基に一連の処理を記述することで実現していた。   Further, in a conventional simulator that performs a simulation corresponding to the second conventional model, information related to various timing checks is described in the logic simulation model based on the occurrence of an input event. In the conventional simulator, the check was performed according to the description. In the simulator language, the input signal pulse width check and cycle value check are prepared as functions as the timing check process related to input, and both are processed based on the input event. Although no function is prepared for the frequency fluctuation check, the input event is realized by describing a series of processes based on the input event as described above.

しかし、入力クロックの供給が停止するという事は、チェックのトリガーとなるイベントが無くなる事を意味する為、チェック処理が実行されない。実際のデバイスでは、PLL回路に安定した入力クロックが入力されない場合には、PLL回路は適切な動作をしなくなる。論理シミュレーションモデルにおいても、本入力不正動作として検出できなければならない。本発明が解決しようとする課題は、入力イベントに依存しないチェック手法を提供することにある。   However, the fact that the supply of the input clock is stopped means that there is no event that triggers the check, and therefore the check process is not executed. In an actual device, when a stable input clock is not input to the PLL circuit, the PLL circuit does not operate properly. Even in a logic simulation model, this input illegal operation must be detected. The problem to be solved by the present invention is to provide a check method that does not depend on an input event.

以下に、[発明を実施するための最良の形態]で使用される番号を用いて、課題を解決するための手段を説明する。これらの番号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。   The means for solving the problem will be described below using the numbers used in [Best Mode for Carrying Out the Invention]. These numbers are added to clarify the correspondence between the description of [Claims] and [Best Mode for Carrying Out the Invention]. However, these numbers should not be used to interpret the technical scope of the invention described in [Claims].

上記課題を解決するために、以下のようなシミュレーションプログラム(24)によって回路シミュレーションを実行する、そのシミュレーションプログラム(24)は、入力クロックを基に少なくとも1つの出力クロックを出力するPLL(27)を備える回路(25)の動作を、前記PLL(27)を示すPLLモデル(30)(50)を用いてコンピュータ(10)に実行させるシミュレーションプログラム(24)であって、
(a)前記回路に関する回路情報を読み込んで、前記回路情報に基づいてシミュレーションを実行するステップと、
(b)前記シミュレーションにおける前記入力クロックの供給を監視し、前記PLLモデルに対する前記入力クロックの供給開始に応答して、前記入力クロックの変化を監視するための予想クロックを生成するステップを具備する方法を前記コンピュータ(10)に実行させることを特徴とするシミュレーションプログラム(24)であることが好ましい。
In order to solve the above problems, a circuit simulation is executed by the following simulation program (24). The simulation program (24) includes a PLL (27) that outputs at least one output clock based on the input clock. A simulation program (24) for causing a computer (10) to execute an operation of a circuit (25) comprising a PLL model (30) (50) representing the PLL (27),
(A) reading circuit information related to the circuit and executing a simulation based on the circuit information;
(B) monitoring the supply of the input clock in the simulation and generating an expected clock for monitoring changes in the input clock in response to the start of supply of the input clock to the PLL model. Is preferably a simulation program (24) characterized in that the computer (10) is executed.

また、そのシミュレーションプログラムにおいて、更に
(c)前記予想クロックと前記入力クロックとの比較に基づいて前記PLLによる出力クロックの出力を禁止するステップを具備するものであってもよい。ここにおいて、前記(b)ステップは、前記入力クロックと同じ周期のクロックを前記予想クロックとして生成するステップと、前記予想クロックと前記入力クロックとが同期しているか否かに基づいて、前記入力クロックが停止しているか否かを判定するステップを含むことが好ましい。
The simulation program may further include (c) a step of prohibiting output of the output clock from the PLL based on a comparison between the expected clock and the input clock. Here, the step (b) includes generating the clock having the same period as the input clock as the predicted clock, and whether the predicted clock and the input clock are synchronized with each other. Preferably, the method includes a step of determining whether or not is stopped.

また、上記シミュレーションプログラムを実行するために、PLL回路(27)を含む半導体集積回路(25)の動作を模擬する論理シミュレーション装置(10)を構成する。その装置(10)は、シミュレーションモデル(23)とシミュレーションプログラム(24)とを保持する記憶部(7)と、前記シミュレーションプログラム(24)に示される手順に従って回路シミュレーションを実行する演算処理部(4)とを具備する構成であることが好ましい。ここで、その記憶部(7)に保持される前記シミュレーションモデル(23)は、前記PLL回路(27)に対応するPLL回路モデル(30)(50)を含むことが好ましい。   Further, in order to execute the simulation program, a logic simulation apparatus (10) that simulates the operation of the semiconductor integrated circuit (25) including the PLL circuit (27) is configured. The apparatus (10) includes a storage unit (7) that holds a simulation model (23) and a simulation program (24), and an arithmetic processing unit (4) that executes circuit simulation according to the procedure shown in the simulation program (24). ) Is preferable. Here, it is preferable that the simulation model (23) held in the storage unit (7) includes PLL circuit models (30) and (50) corresponding to the PLL circuit (27).

そして、前記PLL回路モデル(30)(50)は、入力クロック応答して出力クロックを生成する出力クロック生成部(31)と、前記入力クロックの状態を監視するクロック監視部(32)とを示すものであることが好ましい。また、前記クロック監視部(32)は、前記入力クロックと同じ周期の予想クロックを生成し、前記予想クロックと前記入力クロックとの比較に基づいて、前記入力クロックの変化を監視する。さらに、前記クロック監視部の監視結果に基づいて、前記出力クロック生成部での前記出力クロックの生成を停止する論理シミュレーション装置であることが好ましい。   The PLL circuit models (30) and (50) show an output clock generator (31) that generates an output clock in response to an input clock, and a clock monitor (32) that monitors the state of the input clock. It is preferable. The clock monitoring unit (32) generates an expected clock having the same cycle as the input clock, and monitors the change of the input clock based on the comparison between the expected clock and the input clock. Furthermore, it is preferable that the logic simulation device stop the generation of the output clock in the output clock generation unit based on the monitoring result of the clock monitoring unit.

本発明によると、入力イベントに依存しないチェック手法を提供することが可能である。
また、回路設計の論理検証フェイズにおいて、逓倍、スキュー調整などの動作をより高精度に検証することが可能な論理シミュレーションモデルを提供することができる。
また、設計回路の問題を早期発見する為、不正入力の検出機能を搭載した論理シミュレーションモデルを提供することができる。
According to the present invention, it is possible to provide a check method that does not depend on an input event.
Further, it is possible to provide a logic simulation model capable of verifying operations such as multiplication and skew adjustment with higher accuracy in the logic verification phase of circuit design.
In addition, in order to detect a problem in the design circuit at an early stage, a logic simulation model equipped with an illegal input detection function can be provided.

以下に、本発明のシミュレーション装置の構成・動作に関して、図面を参照して説明を行う。半導体装置の開発においては、開発の対象となる半導体装置の設計に係る様々な工程でCAD(Computer Aided Design)が用いられている。したがって、本明細書では、CADを用いて半導体の設計・検証・最適化などを行う場合に対応して、本発明に実施するための形態について説明を行う。   The configuration and operation of the simulation apparatus of the present invention will be described below with reference to the drawings. In the development of semiconductor devices, CAD (Computer Aided Design) is used in various processes related to the design of a semiconductor device to be developed. Therefore, in this specification, the form for implementing this invention is demonstrated corresponding to the case where design, verification, optimization, etc. of a semiconductor are performed using CAD.

[第1の実施形態]
図5は、本発明のシミュレーション装置の構成を例示するブロック図である。図5に示されているように、第1の実施形態のシミュレーション装置10は、情報処理装置1と、入力装置2と、表示装置3とを含んで構成されている。また、図5を参照すると、情報処理装置1は、CPU(Central Processing Unit:中央演算処理装置)4と、メモリ5と、入出力インターフェース6と、大容量記憶装置7とを備え、それらはバス8を介して接続されている。また、大容量記憶装置7はデータ記憶部11とプログラム記憶部12とを含んで構成されている。
[First Embodiment]
FIG. 5 is a block diagram illustrating the configuration of the simulation apparatus of the present invention. As illustrated in FIG. 5, the simulation apparatus 10 according to the first embodiment includes an information processing apparatus 1, an input apparatus 2, and a display apparatus 3. 5, the information processing apparatus 1 includes a CPU (Central Processing Unit) 4, a memory 5, an input / output interface 6, and a mass storage device 7, which are buses. 8 is connected. The mass storage device 7 includes a data storage unit 11 and a program storage unit 12.

情報処理装置1は、パーソナルコンピュータやワークステーションなどに代表される高速演算処理装置である。入力装置2は、情報処理装置1に対して、データを入力する機能を備えたマンマシンインターフェースであり、例えば、キーボードやマウスなどがその代表である。以下の実施形態においては、入力装置2が、キーボードである場合を例示して説明を行う。表示装置3は、情報処理装置1の処理結果を外部に出力する機能を有するマンマシンインターフェースであり、例えば、CRTや液晶ディスプレイがその代表である。以下の実施形態においては、表示装置3が、ディスプレイ装置である場合を例示し、レイアウト検証結果などを視覚的に表示するものとして説明を行う。   The information processing apparatus 1 is a high-speed arithmetic processing apparatus typified by a personal computer or a workstation. The input device 2 is a man-machine interface having a function of inputting data to the information processing device 1, and representative examples thereof include a keyboard and a mouse. In the following embodiment, the case where the input device 2 is a keyboard will be described as an example. The display device 3 is a man-machine interface having a function of outputting the processing result of the information processing device 1 to the outside, and representative examples thereof include a CRT and a liquid crystal display. In the following embodiments, the case where the display device 3 is a display device will be described as an example, and a description will be given assuming that a layout verification result and the like are visually displayed.

CPU4は、シミュレーション装置10に備えられた各種装置の制御や、情報処理装置1に入出力されるデータの処理を行う演算処理装置であり、入力装置2などから受け取ったデータを解釈して演算し、その演算結果を表示装置3などで出力する。メモリ5は、データの書き込みと読み出しができる記憶媒体であり、例えば、SDRAMやDDR−SDRAMなどがその代表として例示される。入出力インターフェース6は、上述の入力装置2や表示装置3と情報処理装置1との間で実行されるデータ通信を制御する装置である。大容量記憶装置7は、記憶媒体に大量のデータを記録させるために使用する装置であり、例えば、HDD(Hard Disk Drive)などがその代表として例示される。図5に示されているように、大容量記憶装置7はデータ記憶部11とプログラム記憶部12とを含んで構成されている。   The CPU 4 is an arithmetic processing device that controls various devices provided in the simulation device 10 and processes data input to and output from the information processing device 1, and interprets and calculates data received from the input device 2 and the like. The calculation result is output by the display device 3 or the like. The memory 5 is a storage medium on which data can be written and read, and examples thereof include SDRAM and DDR-SDRAM. The input / output interface 6 is a device that controls data communication executed between the information processing device 1 and the input device 2 or the display device 3 described above. The large-capacity storage device 7 is a device used for recording a large amount of data on a storage medium. For example, an HDD (Hard Disk Drive) is exemplified as a representative example. As shown in FIG. 5, the mass storage device 7 includes a data storage unit 11 and a program storage unit 12.

データ記憶部11は、大容量記憶装置7が保持する各種データの中で本実施形態に関連するデータを格納する記憶領域を示している。また同様に、プログラム記憶部12は、大容量記憶装置7が保持する各種データの中で本実施形態の動作に関連するコンピュータプログラムを格納する記憶領域を示している。以下に、図面を参照してデータ記憶部11とプログラム記憶部12の詳細な構成に関して説明を行う。   The data storage unit 11 indicates a storage area for storing data related to the present embodiment among various data held by the mass storage device 7. Similarly, the program storage unit 12 indicates a storage area for storing a computer program related to the operation of the present embodiment among various data held by the mass storage device 7. Hereinafter, detailed configurations of the data storage unit 11 and the program storage unit 12 will be described with reference to the drawings.

図6は、データ記憶部11の構成を例示するブロック図である。図6を参照すると、データ記憶部11は、ネットリスト21と、ライブラリ22と、シミュレーションモデル23とを含んで構成されている。ネットリスト21は、回路の接続状態を表現したデータである。ライブラリ22は、よく利用される機能ブロックや基本論理ゲートのデータをマクロデータとして保持している。シミュレーションモデル23は、本実施形態のシミュレーション装置10を用いて回路特性を予測する際に、後述の論理シミュレーションプログラム24を実行する際に用いられるモデルである。図7は、プログラム記憶部12の構成を例示するブロック図である。図7を参照すると、プログラム記憶部12は、論理シミュレーションプログラム24を備えて構成されている。論理シミュレーションプログラム24は、本実施形態のシミュレーション装置10に実行させる回路シミュレーションの手順を示すコンピュータプログラムである。   FIG. 6 is a block diagram illustrating the configuration of the data storage unit 11. Referring to FIG. 6, the data storage unit 11 includes a net list 21, a library 22, and a simulation model 23. The net list 21 is data representing the connection state of the circuit. The library 22 holds frequently used function blocks and basic logic gate data as macro data. The simulation model 23 is a model used when a logic simulation program 24 described later is executed when predicting circuit characteristics using the simulation apparatus 10 of the present embodiment. FIG. 7 is a block diagram illustrating the configuration of the program storage unit 12. Referring to FIG. 7, the program storage unit 12 includes a logic simulation program 24. The logic simulation program 24 is a computer program showing a circuit simulation procedure to be executed by the simulation apparatus 10 of the present embodiment.

図8は、本実施形態におけるシミュレーション対象の半導体装置の構成を例示するブロック図である。本実施形態のシミュレーション装置10は、PLL回路を搭載する半導体デバイスのシミュレーションに適用可能である。図8を参照すると、シミュレーション対象の半導体装置25は、信号処理部26とPLL回路27を含んで構成されている。信号処理部26は、PLL回路27から出力されるクロックに同期して動作する回路ブロックである。図8に示されているように、PLL回路は、内部クロック周波数を外部クロックの整数倍にして、PLL回路出力クロックを生成している。PLL回路を搭載した半導体集積回路では、そのPLL回路から出力されるクロックで動作することで、動作速度の高速化を実現している。なお、ここに示されている半導体装置25の構成は、本発明におけるシミュレーション対象のデバイスを限定するものではない。   FIG. 8 is a block diagram illustrating the configuration of a semiconductor device to be simulated in this embodiment. The simulation apparatus 10 of this embodiment can be applied to the simulation of a semiconductor device on which a PLL circuit is mounted. Referring to FIG. 8, a semiconductor device 25 to be simulated includes a signal processing unit 26 and a PLL circuit 27. The signal processing unit 26 is a circuit block that operates in synchronization with the clock output from the PLL circuit 27. As shown in FIG. 8, the PLL circuit generates the PLL circuit output clock by setting the internal clock frequency to an integral multiple of the external clock. In a semiconductor integrated circuit equipped with a PLL circuit, the operation speed is increased by operating with a clock output from the PLL circuit. The configuration of the semiconductor device 25 shown here does not limit the simulation target device in the present invention.

図9は、第1の実施形態のPLL回路モデルの構成を例示するブロック図である。図9を参照すると、本実施形態のPLL回路モデル30は、逓倍クロック生成部31と、クロック監視部32とを含んで構成されている。逓倍クロック生成部31は、入力クロックに応答して逓倍クロックを生成する機能ブロックである。クロック監視部32は、入力クロックの状態を監視する機能ブロックである。また、PLL回路モデル30は、逓倍設定値入力端子41と入力クロック供給端子42と逓倍クロック出力端子43とを備えている。逓倍設定値入力端子41には逓倍設定値が供給されている。入力クロック供給端子42には、入力クロックが供給されている。逓倍クロック出力端子43からは逓倍クロックが出力される。   FIG. 9 is a block diagram illustrating the configuration of the PLL circuit model according to the first embodiment. Referring to FIG. 9, the PLL circuit model 30 of this embodiment includes a multiplied clock generation unit 31 and a clock monitoring unit 32. The multiplied clock generator 31 is a functional block that generates a multiplied clock in response to an input clock. The clock monitoring unit 32 is a functional block that monitors the state of the input clock. The PLL circuit model 30 includes a multiplication set value input terminal 41, an input clock supply terminal 42, and a multiplication clock output terminal 43. A multiplication set value is supplied to the multiplication set value input terminal 41. An input clock is supplied to the input clock supply terminal 42. A multiplied clock is output from the multiplied clock output terminal 43.

図9に示されているように、逓倍クロック生成部31は、クロック周期測定部33とクロック周期変化検出部34と逓倍波形生成部35とエラー処理部36を含んで構成されている。クロック周期測定部33は、入力クロックに応答して、その入力クロックの周期を測定する機能ブロックである。クロック周期測定部33には、入力クロック供給端子42を介して入力クロックが供給されている。クロック周期測定部33は、入力クロックの前変化時刻と現在の時刻の差を計算する。例えば、入力クロックの立ち上がり時刻を測定し、次に入力クロックが立ち上がる時刻との差に基づいてクロック周期を測定する。クロック周期測定部33は、測定した入力クロックの周期を示す値をクロック周期変化検出部34に供給している。   As shown in FIG. 9, the multiplied clock generation unit 31 includes a clock cycle measurement unit 33, a clock cycle change detection unit 34, a multiplied waveform generation unit 35, and an error processing unit 36. The clock cycle measuring unit 33 is a functional block that measures the cycle of the input clock in response to the input clock. An input clock is supplied to the clock period measurement unit 33 via an input clock supply terminal 42. The clock cycle measuring unit 33 calculates the difference between the previous change time of the input clock and the current time. For example, the rising time of the input clock is measured, and then the clock cycle is measured based on the difference from the rising time of the input clock. The clock cycle measuring unit 33 supplies a value indicating the measured cycle of the input clock to the clock cycle change detecting unit 34.

クロック周期変化検出部34は、クロック周期測定部33から供給される入力クロックの測定値を、1周期前に供給され入力クロックの測定値と比較して、入力クロックが変動しているか否かを鑑定する機能ブロックである。クロック周期変化検出部34は、入力クロックの周期が変動している場合には、その旨を後述するエラー処理部36に通知する。   The clock cycle change detection unit 34 compares the measured value of the input clock supplied from the clock cycle measuring unit 33 with the measured value of the input clock supplied one cycle before and determines whether or not the input clock is fluctuating. It is a functional block to be identified. When the cycle of the input clock fluctuates, the clock cycle change detection unit 34 notifies the error processing unit 36 (to be described later) to that effect.

逓倍波形生成部35は、逓倍設定値入力端子41から供給される逓倍波形設定値とクロック周期測定部33から出力される入力クロックの周期の測定値とに基づいて、入力クロックを整数倍した逓倍クック生成する機能ブロックである。エラー処理部36は、クロック周期変化検出部34から供給される入力クロックが変動した旨の通知や、後述するクロック監視部32から供給される入力クロックが停止した旨の通知に応答して、逓倍クロックの出力を制限する機能ブロックである。   The multiplied waveform generation unit 35 multiplies the input clock by an integral multiple based on the multiplied waveform set value supplied from the multiplied set value input terminal 41 and the measured value of the cycle of the input clock output from the clock cycle measuring unit 33. It is a functional block that generates a cook. The error processing unit 36 multiplies in response to a notification that the input clock supplied from the clock cycle change detection unit 34 has changed or a notification that the input clock supplied from the clock monitoring unit 32 described later has stopped. This is a functional block that limits clock output.

また、図9に示されているように、クロック監視部32は、予想クロック生成部37とクロック比較部38とを含んで構成されている。予想クロック生成部37は、クロック周期測定部33から出力される測定周期と同じ周期で変化する予想クロックを生成する機能ブロックである。予想クロック生成部37は、ロックアップ時間(逓倍波形生成部35から出力される逓倍クロックの波形が安定するまでの時間)が経過した後、1クロック周期のみ実行される。予想クロック生成部37は、このとき生成した周期のクロックを予想クロックとして継続的に出力している。クロック比較部38は、予想クロック生成のイベントに応答して、その時刻の入力クロックと、供給される予想クロックとの比較を行う機能ブロックである。以下に、上記の構成によるシミュレーションの動作に関して説明を行う。   As shown in FIG. 9, the clock monitoring unit 32 includes an expected clock generation unit 37 and a clock comparison unit 38. The expected clock generation unit 37 is a functional block that generates an expected clock that changes in the same cycle as the measurement cycle output from the clock cycle measurement unit 33. The expected clock generation unit 37 is executed only for one clock cycle after the lockup time (the time until the waveform of the multiplied clock output from the multiplied waveform generating unit 35 becomes stable) has elapsed. The predicted clock generation unit 37 continuously outputs the clock having the cycle generated at this time as the predicted clock. The clock comparison unit 38 is a functional block that compares the input clock at that time with the supplied expected clock in response to an event of the expected clock generation. The simulation operation with the above configuration will be described below.

図10は、第1の実施形態の動作を例示するフローチャートである。図10に示されているフローチャートは、本実施形態のシミュレーション装置10を用いて半導体デバイスの論理シミュレーションを実行した場合の、上述のPLL回路モデル30の動作を例示している。また、この動作は、情報処理装置1のCPU4が、プログラム記憶部12の論理シミュレーションプログラム24を読み込み、その論理シミュレーションプログラム24に示される手順に従って情報処理装置1が動作することによって実現される。図10を参照すると、シミュレーション装置10の動作は、上述した従来シミュレータと同様の手順で動作する。   FIG. 10 is a flowchart illustrating the operation of the first embodiment. The flowchart shown in FIG. 10 illustrates the operation of the above-described PLL circuit model 30 when a logic simulation of a semiconductor device is executed using the simulation apparatus 10 of the present embodiment. This operation is realized by the CPU 4 of the information processing apparatus 1 reading the logic simulation program 24 in the program storage unit 12 and operating the information processing apparatus 1 according to the procedure indicated by the logic simulation program 24. Referring to FIG. 10, the operation of the simulation apparatus 10 operates in the same procedure as that of the conventional simulator described above.

ステップS101において、クロック周期測定部33は、入力クロック供給端子42を介して供給される入力クロックのイベントの発生を監視する。クロック周期測定部33は、その監視結果に基づいて入力クロックの供給に対応するイベントが発生したか否かの判断を行う。その判断の結果、そのイベントを検出すると処理はステップS102に進み、イベントの検出が行なわれない場合処理は終了する。   In step S <b> 101, the clock cycle measurement unit 33 monitors the occurrence of an event of the input clock supplied via the input clock supply terminal 42. The clock cycle measuring unit 33 determines whether an event corresponding to the supply of the input clock has occurred based on the monitoring result. If the event is detected as a result of the determination, the process proceeds to step S102. If no event is detected, the process ends.

ステップS102において、クロック周期測定部33は、入力クロックの周期の測定を行い、測定結果をクロック周期変化検出部34、逓倍波形生成部35およびに予想クロック生成部37に供給する。ここにおいて、クロック周期変化検出部34は、1クロックごとに入力クロックの周期を測定して測定結果を出力する。   In step S <b> 102, the clock cycle measurement unit 33 measures the cycle of the input clock and supplies the measurement result to the clock cycle change detection unit 34, the multiplied waveform generation unit 35, and the expected clock generation unit 37. Here, the clock cycle change detection unit 34 measures the cycle of the input clock every clock and outputs the measurement result.

ステップS103において、クロック周期変化検出部34は、クロック周期測定部33から供給される測定結果に基づいて、前サイクル周期と現サイクル周期との値を比較し、一致していない場合は不正入力と判定する。クロック周期変化検出部34は、不正入力が発生した場合、その旨をエラー処理部36に通知して処理はステップS105に進む。不正入力が発生していない場合には、処理はステップS104に進む。   In step S103, the clock period change detection unit 34 compares the values of the previous cycle period and the current cycle period based on the measurement result supplied from the clock period measurement unit 33. judge. When an illegal input occurs, the clock cycle change detection unit 34 notifies the error processing unit 36 to that effect, and the process proceeds to step S105. If unauthorized input has not occurred, the process proceeds to step S104.

ステップS105において、エラー処理部36は、不定値を出力し逓倍出力を禁止する。ステップS104において、逓倍波形生成部35は、逓倍波形生成が完了しているか否かの判断を行う。その判断の結果、逓倍波形生成が完了している場合には、処理は終了する。未生成の場合は、処理はステップS106に進む。   In step S105, the error processing unit 36 outputs an indefinite value and prohibits multiplication output. In step S104, the multiplied waveform generation unit 35 determines whether or not the multiplied waveform generation is completed. As a result of the determination, if the multiplied waveform generation is completed, the process ends. If not, the process proceeds to step S106.

ステップS106において、逓倍波形生成部35は、内部に備えられた時刻判定部を用いて、現在の時刻が位相調整に必要な期間を示すスペックであるロックアップタイム時間を経過しているか判定する。その判定において、ロックアップタイム時刻を経過していた場合、処理はステップS107に進む。   In step S <b> 106, the multiplied waveform generation unit 35 determines whether or not the current time has passed a lock-up time that is a specification indicating a period necessary for phase adjustment, using a time determination unit provided therein. If the lock-up time has elapsed in the determination, the process proceeds to step S107.

ステップS107において、逓倍波形生成部35は、入力クロックの周波数を整数倍にして逓倍クロックを生成し、その逓倍クロックの出力を開始する。ここにおいて、逓倍波形生成部35によって生成される逓倍クロックは、一定時間毎に出力を反転させて生成された出力波形を有している。   In step S107, the multiplied waveform generation unit 35 generates a multiplied clock by multiplying the frequency of the input clock by an integral multiple, and starts outputting the multiplied clock. Here, the multiplied clock generated by the multiplied waveform generator 35 has an output waveform generated by inverting the output at regular intervals.

ステップS108において、論理シミュレーションモデル内部の予想クロック生成部37は、ステップS102で得られた測定周期と同じ周期で変化する予想クロックを生成する。予想クロックの生成動作はロックアップ時間(逓倍波形生成部35から出力される逓倍クロックの波形が安定するまでの時間)が経過した後、一度のみ実行される。予想クロック生成部37は、このとき生成した予想クロックと同じ周期のクロック継続的に出力する。   In step S108, the expected clock generation unit 37 inside the logic simulation model generates an expected clock that changes in the same cycle as the measurement cycle obtained in step S102. The operation of generating the expected clock is executed only once after the lock-up time (the time until the waveform of the multiplied clock output from the multiplied waveform generator 35 is stabilized) has elapsed. The predicted clock generation unit 37 continuously outputs a clock having the same cycle as the predicted clock generated at this time.

ステップS109において、逓倍波形生成部35にて生成した出力波形をスケジュールし入力イベントよる処理は終了する。ここで、スケジュールとは、決定されたPLL回路の出力値をイベントとして生成する事である。本イベントが当該PLL回路の後段に備えられているセルに伝播していく。本実施形態のシミュレーション装置10は、上述の処理を行うことにより、入力クロックとして適切でない信号が供給された時には、その入力を不正入力として扱い、PLL回路出力として不定値を出力する。不定値が出力されることによって、PLL回路の後段のセルは正常動作しなくなる。したがって、期待動作とは異なるシミュレーション結果が出力される為、回路設計者は、当該PLLに違反動作が発生している事を発見できる。   In step S109, the output waveform generated by the multiplied waveform generator 35 is scheduled, and the process according to the input event ends. Here, the schedule is to generate the determined output value of the PLL circuit as an event. This event propagates to a cell provided in the subsequent stage of the PLL circuit. The simulation apparatus 10 according to the present embodiment performs the above-described processing, so that when an inappropriate signal is supplied as an input clock, the simulation apparatus 10 treats the input as an illegal input and outputs an indefinite value as a PLL circuit output. Since the indefinite value is output, the subsequent cell of the PLL circuit does not operate normally. Therefore, since a simulation result different from the expected operation is output, the circuit designer can find out that a violation operation has occurred in the PLL.

以下に、クロック監視部32に動作に関して図面を参照して説明を行う。図11は、クロック監視部32の動作を例示するフローチャートである。図11を参照すると、ステップS201において、クロック比較部38は、予想クロック生成部37が生成する予想クロックが、供給されるか否かを監視する。予想クロックが供給されると、供給されたクロックをイベント発生として認識する。クロック比較部38が予想クロック生成のイベントを検出すると、処理はステップS202に進む。予想クロック生成のイベントを検出しない場合には、処理は終了する。   The operation of the clock monitoring unit 32 will be described below with reference to the drawings. FIG. 11 is a flowchart illustrating the operation of the clock monitoring unit 32. Referring to FIG. 11, in step S201, the clock comparison unit 38 monitors whether or not the predicted clock generated by the predicted clock generation unit 37 is supplied. When the expected clock is supplied, the supplied clock is recognized as an event occurrence. When the clock comparison unit 38 detects an event of expected clock generation, the process proceeds to step S202. If no expected clock generation event is detected, the process ends.

ステップS202において、クロック比較部38は、予想クロック生成のイベントに応答して、その時刻の入力クロックと、供給される予想クロックとの比較を行う。クロック比較部38は、その比較に基づいて、入力クロックが停止しているか否かを検出する。その比較の結果、入力クロックが停止していることを検出した場合は、処理はステップS203に進む。入力クロックの停止を検出しなかった場合には、処理は終了する。   In step S202, the clock comparison unit 38 compares the input clock at that time with the expected clock to be supplied in response to the event of the expected clock generation. The clock comparison unit 38 detects whether or not the input clock is stopped based on the comparison. As a result of the comparison, if it is detected that the input clock is stopped, the process proceeds to step S203. If the stop of the input clock is not detected, the process ends.

ステップS203において、クロック比較部38は、入力クロックが停止している旨をエラー処理部36に通知する。エラー処理部36は、その通知に応答して逓倍波形生成部35から供給される逓倍クロックの出力を禁止する。その後処理はステップS204に進む。ステップS204において、PLL回路モデル30の出力をスケジュールして処理を終了する。   In step S203, the clock comparison unit 38 notifies the error processing unit 36 that the input clock is stopped. The error processing unit 36 inhibits the output of the multiplied clock supplied from the multiplied waveform generating unit 35 in response to the notification. Thereafter, the processing proceeds to step S204. In step S204, the output of the PLL circuit model 30 is scheduled and the process ends.

このとき、クロック監視部32では、正常状態のときに入力される入力クロックと同じ周波数で、かつ、同じ動作タイミングのクロックを予想クロックとして、入力クロックとは別に生成している。そして、生成した予想クロックのイベントを検出し、予想クロックと入力クロックとが同期している否かを判定している。クロック監視部32のクロック比較部38は、その判定に基づいて同時刻に外部からの入力クロックが停止しているか否かの判定を行い、停止している場合は入力クロック供給端子42から定常値が供給されるので、その値が不正入力であるとする。   At this time, the clock monitoring unit 32 generates a clock having the same frequency as that of the input clock input in the normal state and the same operation timing as an expected clock, separately from the input clock. Then, an event of the generated predicted clock is detected, and it is determined whether or not the predicted clock and the input clock are synchronized. Based on this determination, the clock comparison unit 38 of the clock monitoring unit 32 determines whether or not the input clock from the outside is stopped at the same time, and if it is stopped, the steady value is input from the input clock supply terminal 42. Suppose that the value is an illegal input.

上述の動作に対応してシミュレーションを実行することにより、入力クロックが停止したときには、その入力を不正入力として扱い、計算機上のPLL回路は、その出力として不定値を出力する。不定値が出力されることによって、PLL回路の後段のセルは正常動作しなくなる。したがって、期待動作とは異なるシミュレーション結果が出力される為、回路設計者は、当該PLLに違反動作が発生している事を発見できる。   When the input clock is stopped by executing the simulation corresponding to the above-described operation, the input is treated as an illegal input, and the PLL circuit on the computer outputs an indefinite value as the output. Since the indefinite value is output, the subsequent cell of the PLL circuit does not operate normally. Therefore, since a simulation result different from the expected operation is output, the circuit designer can find out that a violation operation has occurred in the PLL.

図12は、本実施形態の動作を例示するタイミングチャートである。図12の(a)は、入力クロック供給端子42を介して供給される入力クロックの動作波形を示している。図12の(b)は、予想クロック生成部37から出力され、クロック比較部38に供給される予想クロックの波形を例示している。図12の(c)は、逓倍クロック出力端子43から出力される逓倍クロックの波形を例示している。以下に述べる動作においては、時刻t1にてロックアップタイムに達したものとする。   FIG. 12 is a timing chart illustrating the operation of this embodiment. FIG. 12A shows the operation waveform of the input clock supplied via the input clock supply terminal 42. FIG. 12B illustrates the waveform of the expected clock output from the expected clock generation unit 37 and supplied to the clock comparison unit 38. FIG. 12C illustrates the waveform of the multiplied clock output from the multiplied clock output terminal 43. In the operation described below, it is assumed that the lock-up time is reached at time t1.

図12を参照すると、時刻t1で入力クロックのイベントが発生している。したがって、クロック周期測定部33は、時刻t1において入力クロックの周期を測定し、その測定結果をクロック周期変化検出部34に供給する。クロック周期変化検出部34は、時刻t0から時刻t1にかけて周波数の変動チェックを行う。このとき前サイクル(時刻t0以前)の入力クロックの周期と、現サイクル(時刻t1から時刻t2)の入力クロックの周期はともに周期は時間T1である。したがって、上述のフローチャートのステップS103において、周期が変動していない判断され、その後、逓倍波形生成が行われているか否かの判断が行われる。   Referring to FIG. 12, an input clock event occurs at time t1. Therefore, the clock cycle measuring unit 33 measures the cycle of the input clock at time t1 and supplies the measurement result to the clock cycle change detecting unit 34. The clock cycle change detector 34 checks the frequency variation from time t0 to time t1. At this time, the period of the input clock in the previous cycle (before time t0) and the period of the input clock in the current cycle (from time t1 to time t2) are both times T1. Accordingly, in step S103 of the above-described flowchart, it is determined that the cycle has not fluctuated, and thereafter, it is determined whether a multiplied waveform is being generated.

図12を参照すると、時刻t1のとき、逓倍波形生成は行われていない。そのため、時刻t1において、逓倍波形を生成するための処理が実行される。上述のように、現在時刻t1において、がロックアップタイムを経過している為、逓倍波形生成部35は、逓倍波形の生成を行い、処理は予想クロック生成動作に進む。このとき、予想クロック生成部37は、逓倍クロック生成部31によって観測されている周期値と同周期で動作する予想クロック信号を内部イベントとして生成する。   Referring to FIG. 12, at time t1, multiplication waveform generation is not performed. Therefore, at time t1, a process for generating a multiplied waveform is executed. As described above, since the lock-up time has elapsed at the current time t1, the multiplied waveform generation unit 35 generates a multiplied waveform, and the process proceeds to an expected clock generation operation. At this time, the expected clock generation unit 37 generates, as an internal event, an expected clock signal that operates in the same cycle as the cycle value observed by the multiplied clock generation unit 31.

シミュレーション装置10は、予想クロック生成に応答して、スケジュール登録し終了する。またこのとき、クロック比較部38は、予想クロックのイベントの発生を検出し、予想クロックのイベントに応答して入力クロックのイベントが発生しているかの判定を行う。時刻t1においては、入力クロックが停止することなく供給されているので、処理を終了する。   In response to the expected clock generation, the simulation apparatus 10 registers the schedule and ends. At this time, the clock comparison unit 38 detects the occurrence of an expected clock event and determines whether an input clock event has occurred in response to the expected clock event. At time t1, since the input clock is supplied without stopping, the process ends.

その後、時刻t2〜時刻t4において、入力クロックのイベントが発生するごとに、周期が変動しているか否かの判断、および、逓倍波形生成が行われているか否かの判断が行われる。時刻t1において、逓倍波形生成が行われているため、時刻t2〜時刻t4においては、時刻t1で生成された逓倍クロックが継続的に出力される。   Thereafter, at times t2 to t4, every time an event of the input clock occurs, a determination is made as to whether the period has changed and a determination as to whether a multiplied waveform is being generated. Since the multiplied waveform is generated at time t1, the multiplied clock generated at time t1 is continuously output from time t2 to time t4.

図12の(a)を参照すると、時刻t5において、入力クロックが停止していることが示されている。このとき、予想クロック生成部37からは予想クロックが出力されている。クロック比較部38は、時刻t5において、予想クロックのイベントの発生に応答して、入力クロックと予想クロックとの比較を行う。クロック比較部38は、入力クロックが停止しているので、その旨をエラー処理部36に通知する。エラー処理部36は、クロック比較部38から入力クロックの停止が通知されたことに基づいて、エラー処理を行う。エラー処理を実行した後、不定値出力をスケジュールし処理は終了する。本動作にて、入力クロックの供給が停止された場合に、その供給停止を不正動作として検出可能である。   Referring to (a) of FIG. 12, it is shown that the input clock is stopped at time t5. At this time, an expected clock is output from the expected clock generation unit 37. The clock comparison unit 38 compares the input clock with the expected clock in response to the occurrence of the expected clock event at time t5. Since the input clock is stopped, the clock comparison unit 38 notifies the error processing unit 36 to that effect. The error processing unit 36 performs error processing based on the notification of the stop of the input clock from the clock comparison unit 38. After executing the error process, the indefinite value output is scheduled and the process ends. In this operation, when the supply of the input clock is stopped, the supply stop can be detected as an illegal operation.

[第2の実施形態]
以下に、本発明の第2の実施形態について説明を行う。なお、第2の実施形態の説明に用いる図面に、上述の第1の実施形態で用いた図面と同じ符号を用いている要素は、第1の実施形態の構成要素と同様の構成・動作であるので、その詳細な説明は省略する。
[Second Embodiment]
The second embodiment of the present invention will be described below. In the drawing used for the description of the second embodiment, the elements using the same reference numerals as those used in the first embodiment described above have the same configuration and operation as the components of the first embodiment. Therefore, detailed description thereof is omitted.

図13は、本発明における第2の実施形態のPLL回路モデル50の構成を例示するブロック図である。図13を参照すると、第2の実施形態におけるPLL回路モデル50は、第1の実施形態のPLL回路モデル30に、さらに、フィードバッククロック周期変動監視部51とフィードバッククロック監視部52とフィードバッククロック供給端子58とを含んで構成されている。また、フィードバッククロック周期変動監視部51には、フィードバッククロック供給端子58を介して、逓倍クロック出力端子43から出力される逓倍クロックがフィードバックされている。   FIG. 13 is a block diagram illustrating the configuration of the PLL circuit model 50 according to the second embodiment of the invention. Referring to FIG. 13, the PLL circuit model 50 in the second embodiment is similar to the PLL circuit model 30 in the first embodiment, and further includes a feedback clock cycle variation monitoring unit 51, a feedback clock monitoring unit 52, and a feedback clock supply terminal. 58. The feedback clock cycle fluctuation monitoring unit 51 is fed back the multiplied clock output from the multiplied clock output terminal 43 via the feedback clock supply terminal 58.

第2の実施形態のPLL回路モデル50は、フィードバッククロック供給端子58を有し、PLL回路モデル50の出力信号をCTSを介してフィードバックさせている。したがって、PLL回路モデル50は、外部入力クロックと内部ロジックの動作クロック信号の位相を一致させる事が可能な、位相調整機能つきのPLL回路を有するは半導体装置の論理シミュレーションに適用可能である。   The PLL circuit model 50 of the second embodiment has a feedback clock supply terminal 58 and feeds back the output signal of the PLL circuit model 50 via the CTS. Therefore, the PLL circuit model 50 has a PLL circuit with a phase adjustment function that can match the phases of the external input clock and the operation clock signal of the internal logic, and can be applied to logic simulation of a semiconductor device.

図13に示されているように、フィードバッククロック周期変動監視部51は、フィードバッククロック周期測定部53と、フィードバッククロック周期変化検出部54とを含んで構成されている。また、フィードバッククロック監視部52は、予想フィードバッククロック生成部55とフィードバッククロック比較部56と含んで構成されている。   As shown in FIG. 13, the feedback clock cycle variation monitoring unit 51 includes a feedback clock cycle measurement unit 53 and a feedback clock cycle change detection unit 54. The feedback clock monitoring unit 52 includes an expected feedback clock generation unit 55 and a feedback clock comparison unit 56.

フィードバッククロック周期測定部53は、フィードバッククロック供給端子58を介して供給される逓倍クロック(以下、フィードバッククロックと呼ぶ。)の周期を測定する機能ブロックである。フィードバッククロック周期変化検出部54は、フィードバッククロック周期測定部53から供給されるフィードバッククロック周期の測定値に基づいて、そのフィードバッククロックの周期が安定しているか否かの判断を行う機能ブロックである。   The feedback clock cycle measuring unit 53 is a functional block that measures the cycle of a multiplied clock (hereinafter referred to as feedback clock) supplied via the feedback clock supply terminal 58. The feedback clock cycle change detection unit 54 is a functional block that determines whether the cycle of the feedback clock is stable based on the measurement value of the feedback clock cycle supplied from the feedback clock cycle measurement unit 53.

予想フィードバッククロック生成部55は、逓倍設定値入力端子41を介して供給される逓倍設定値とクロック周期測定部33から出力される入力クロック周期の測定値とに基づいて、予想フィードバッククロックを生成する機能ブロックである。フィードバッククロックは、逓倍クロック出力端子43から出力される逓倍クロックと同じ周期のクロックである。したがって、予想フィードバッククロック生成部55は、逓倍クロックを生成する逓倍波形生成部35と同様の動作によって、予想フィードバッククロックを生成する。   The expected feedback clock generation unit 55 generates an expected feedback clock based on the multiplied set value supplied via the multiplied set value input terminal 41 and the measured value of the input clock period output from the clock period measuring unit 33. It is a functional block. The feedback clock is a clock having the same cycle as the multiplied clock output from the multiplied clock output terminal 43. Therefore, the expected feedback clock generation unit 55 generates an expected feedback clock by the same operation as the multiplied waveform generation unit 35 that generates a multiplied clock.

フィードバッククロック比較部56は、予想フィードバッククロック生成部55から供給される予想フィードバッククロックと、フィードバッククロック供給端子58を介して供給されるフィードバッククロックとが同期しているかどうかを判定する機能ブロックである。遅延付加部57は、逓倍波形生成部35から出力される逓倍クロックに、所定の演算処理を実行して遅延クロックを生成する機能ブロックである。   The feedback clock comparison unit 56 is a functional block that determines whether or not the expected feedback clock supplied from the expected feedback clock generation unit 55 is synchronized with the feedback clock supplied via the feedback clock supply terminal 58. The delay adding unit 57 is a functional block that generates a delay clock by executing predetermined arithmetic processing on the multiplied clock output from the multiplied waveform generating unit 35.

以下に、図面を参照して第2の実施形態におけるPLL回路モデル50の動作に関して説明を行う。図14は、第2の実施形態の動作を例示するフローチャートである。図14を参照すると、ステップS101からステップS108までの動作は、第1の実施形態の動作と同様である。   The operation of the PLL circuit model 50 in the second embodiment will be described below with reference to the drawings. FIG. 14 is a flowchart illustrating the operation of the second embodiment. Referring to FIG. 14, the operations from step S101 to step S108 are the same as the operations of the first embodiment.

図14のステップS110において、クロック周期測定部33から供給される入力クロックの測定周期と、逓倍設定値入力端子41介して供給される逓倍設定値とに基づいて、逓倍クロック出力端子43から出力される逓倍クロックがフィードバックされたクロックを予測した予測フィードバッククロックを生成する。ここにおいて、入力クロックの周期を測定する動作は第1の実施形態と同様に行われる。   In step S110 of FIG. 14, the output is output from the multiplied clock output terminal 43 based on the measurement period of the input clock supplied from the clock period measuring unit 33 and the multiplied set value supplied via the multiplied set value input terminal 41. A predicted feedback clock is generated by predicting a clock to which the multiplied clock is fed back. Here, the operation of measuring the period of the input clock is performed in the same manner as in the first embodiment.

図15は、フィードバッククロック周期変動監視部51の動作を例示するフローチャートである。図15を参照すると、ステップS301において、フィードバッククロック周期測定部53はフィードバッククロックのイベントが発生したか否かの判断を行う。その判断の結果、イベントが発生したことを検出した場合、処理はステップS302に進む。フィードバッククロックのイベントが発生していない場合には、処理は終了する。を行い。   FIG. 15 is a flowchart illustrating the operation of the feedback clock cycle variation monitoring unit 51. Referring to FIG. 15, in step S301, the feedback clock period measurement unit 53 determines whether or not a feedback clock event has occurred. As a result of the determination, if it is detected that an event has occurred, the process proceeds to step S302. If no feedback clock event has occurred, the process ends. To do.

ステップS302において、フィードバッククロック周期測定部53はフィードバッククロックの周期測定を行い、測定結果をフィードバッククロック周期変化検出部54に供給する。ステップS303において、フィードバッククロック周期変化検出部54は、フィードバッククロック周期測定部53から供給される測定結果に基づいて、フィードバッククロックの周期の変動を監視する。ここにおいて、フィードバッククロックの周期の変動を検出した場合は、フィードバッククロック周期変化検出部54はフィードバッククロックが変動している旨をエラー処理部36に通知し、処理はステップ304に進む。フィードバッククロックが変動していない場合には処理は終了する。   In step S <b> 302, the feedback clock cycle measurement unit 53 measures the cycle of the feedback clock and supplies the measurement result to the feedback clock cycle change detection unit 54. In step S <b> 303, the feedback clock cycle change detection unit 54 monitors the fluctuation of the feedback clock cycle based on the measurement result supplied from the feedback clock cycle measurement unit 53. Here, when a change in the period of the feedback clock is detected, the feedback clock period change detecting unit 54 notifies the error processing unit 36 that the feedback clock is changing, and the process proceeds to step 304. If the feedback clock has not changed, the process ends.

ステップS304において、エラー処理部36は、フィードバッククロック周期変化検出部54からの通知に基づいてエラー処理を行う。エラー処理部36におけるエラー処理の完了に応答して、処理はステップS305に進む。ステップS305において、PLL回路の出力をスケジュールし処理を終了する。   In step S <b> 304, the error processing unit 36 performs error processing based on the notification from the feedback clock cycle change detection unit 54. In response to the completion of the error processing in the error processing unit 36, the processing proceeds to step S305. In step S305, the output of the PLL circuit is scheduled and the process ends.

図16は、フィードバッククロック監視部52の動作を例示するフローチャートである。図16を参照すると、ステップS401において、フィードバッククロック比較部56は、予想フィードバッククロック生成部55から供給される信号に基づいて、予測フィードバッククロックを生成するイベントが発生しているか否かの判定を行う。   FIG. 16 is a flowchart illustrating the operation of the feedback clock monitoring unit 52. Referring to FIG. 16, in step S <b> 401, the feedback clock comparison unit 56 determines whether or not an event for generating a predicted feedback clock has occurred based on the signal supplied from the predicted feedback clock generation unit 55. .

予測フィードバッククロックを生成するイベントが発生している時には、処理はステップS402に進む。ステップS402において、フィードバッククロック比較部56は、予測フィードバッククロックと、フィードバッククロック供給端子58を介して供給される入力フィードバッククロックとが同期しているか否かを判断する。フィードバッククロック比較部56はその判断に基づいて、フィードバッククロックを供給するイベントが停止しているか否か判定する。イベントが発生していない場合は、フィードバッククロック比較部56は、フィードバッククロックの停止をエラー処理部36に通知し、処理はステップS403に進む。ステップS403において、エラー処理部36は、その通知に基づいてエラー処理を実行し、PLL回路モデル50の出力値を不定とする。エラー処理部36によるエラー処理の実行後、処理はステップS404に進む。ステップS404において、PLL回路モデル50の出力値を不定とするスケジュールを行い処理は終了する。   When the event for generating the predicted feedback clock has occurred, the process proceeds to step S402. In step S <b> 402, the feedback clock comparison unit 56 determines whether or not the predicted feedback clock and the input feedback clock supplied via the feedback clock supply terminal 58 are synchronized. Based on the determination, the feedback clock comparison unit 56 determines whether or not the event for supplying the feedback clock is stopped. If no event has occurred, the feedback clock comparison unit 56 notifies the error processing unit 36 of the stoppage of the feedback clock, and the process proceeds to step S403. In step S403, the error processing unit 36 performs error processing based on the notification, and makes the output value of the PLL circuit model 50 undefined. After the error processing by the error processing unit 36, the process proceeds to step S404. In step S404, a schedule is made to make the output value of the PLL circuit model 50 indefinite, and the process ends.

位相調整機能付きPLLにおいては、フィードバッククロックについても、入力クロックと同様に安定したクロックを入力する必要がある。入力クロックの周波数測定結果と逓倍設定値より、予測フィードバッククロック信号のイベントを生成し、入力フィードバッククロック信号と比較することで、フィードバックループの不正動作を検出する事が可能になるなお、上述してきた複数の実施形態は、その構成・動作に矛盾が発生しない場合において組み合わせて実行することが可能である。   In a PLL with a phase adjustment function, it is necessary to input a stable clock for the feedback clock as well as the input clock. By generating an event of the predicted feedback clock signal from the frequency measurement result of the input clock and the multiplication setting value, and comparing it with the input feedback clock signal, it is possible to detect an illegal operation of the feedback loop. A plurality of embodiments can be executed in combination when there is no contradiction in the configuration and operation.

図1は、従来の論理シミュレータの構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of a conventional logic simulator. 図2は、従来の論理シミュレータの動作を示すフローチャートである。FIG. 2 is a flowchart showing the operation of a conventional logic simulator. 図3は、従来の論理シミュレータの動作を示すタイミングチャートである。FIG. 3 is a timing chart showing the operation of the conventional logic simulator. 図4は、従来の論理シミュレータの動作を示すタイミングチャートである。FIG. 4 is a timing chart showing the operation of the conventional logic simulator. 図5は、本発明の倫理シミュレーション装置の構成を例示するブロック図である。FIG. 5 is a block diagram illustrating the configuration of the ethics simulation apparatus of the present invention. 図6は、データ記憶部11の構成を例示するブロック図である。FIG. 6 is a block diagram illustrating the configuration of the data storage unit 11. 図7は、プログラム記憶部12の構成を例示するブロック図である。FIG. 7 is a block diagram illustrating the configuration of the program storage unit 12. 図8は、PLL回路を搭載する半導体デバイスの構成を例示するブロック図である。FIG. 8 is a block diagram illustrating the configuration of a semiconductor device on which a PLL circuit is mounted. 図9は、第1の実施形態のPLL回路モデルの構成を例示するブロック図である。FIG. 9 is a block diagram illustrating the configuration of the PLL circuit model according to the first embodiment. 図10は、第1の実施形態の動作を例示するフローチャートである。FIG. 10 is a flowchart illustrating the operation of the first embodiment. 図11は、第1の実施形態の動作を例示するフローチャートである。FIG. 11 is a flowchart illustrating the operation of the first embodiment. 図12は、第1の実施形態の動作を例示するタイミングチャートである。FIG. 12 is a timing chart illustrating the operation of the first embodiment. 図13は、第2の実施形態の構成を例示するブロック図である。FIG. 13 is a block diagram illustrating the configuration of the second embodiment. 図14は、第2の実施形態の動作を例示するフローチャートである。FIG. 14 is a flowchart illustrating the operation of the second embodiment. 図15は、第2の実施形態の動作を例示するフローチャートである。FIG. 15 is a flowchart illustrating the operation of the second embodiment. 図16は、第2の実施形態の動作を例示するフローチャートである。FIG. 16 is a flowchart illustrating the operation of the second embodiment.

符号の説明Explanation of symbols

1…情報処理装置
2…入力装置
3…表示装置
4…CPU
5…メモリ
6…入出力インターフェース
7…大容量記憶装置
8…バス
10…シミュレーション装置
11…データ記憶部
12…プログラム記憶部
21…ネットリスト
22…ライブラリ
23…シミュレーションモデル
24…論理シミュレーションプログラム
25…半導体装置
26…信号処理部
27…PLL回路
30…PLL回路モデル
31…逓倍クロック生成部
32…クロック監視部
33…クロック周期測定部
34…クロック周期変化検出部
35…逓倍波形生成部
36…エラー処理部
37…予想クロック生成部
38…クロック比較部
41…逓倍設定値入力端子
42…入力クロック供給端子
43…逓倍クロック出力端子
50…PLL回路モデル
51…フィードバッククロック周期変動監視部
52…フィードバッククロック監視部
53…フィードバッククロック周期測定部
54…フィードバッククロック周期変化検出部
55…予想フィードバッククロック生成部
56…フィードバッククロック比較部
57…遅延付加部
58…フィードバッククロック供給端子
100…第2従来モデル
101…クロック周期測定部
102…クロック周期変動検出部
103…逓倍波形生成部
104…エラー処理部
106…入力クロック供給端子
DIV…逓倍設定値入力端子
OUT…逓倍クロック出力端子
DESCRIPTION OF SYMBOLS 1 ... Information processing apparatus 2 ... Input device 3 ... Display apparatus 4 ... CPU
DESCRIPTION OF SYMBOLS 5 ... Memory 6 ... Input / output interface 7 ... Mass storage device 8 ... Bus 10 ... Simulation device 11 ... Data storage unit 12 ... Program storage unit 21 ... Net list 22 ... Library 23 ... Simulation model 24 ... Logic simulation program 25 ... Semiconductor Device 26 ... Signal processing unit 27 ... PLL circuit 30 ... PLL circuit model 31 ... Multiplication clock generation unit 32 ... Clock monitoring unit 33 ... Clock cycle measurement unit 34 ... Clock cycle change detection unit 35 ... Multiplication waveform generation unit 36 ... Error processing unit 37 ... Expected clock generation unit 38 ... Clock comparison unit 41 ... Multiplication set value input terminal 42 ... Input clock supply terminal 43 ... Multiplication clock output terminal 50 ... PLL circuit model 51 ... Feedback clock cycle variation monitoring unit 52 ... Feedback clock monitoring unit 53 ... Feedback clock cycle measurement unit 54 ... Feedback clock cycle change detection unit 55 ... Expected feedback clock generation unit 56 ... Feedback clock comparison unit 57 ... Delay addition unit 58 ... Feedback clock supply terminal 100 ... Second conventional model 101 ... Clock cycle measurement Reference numeral 102: Clock cycle variation detection part 103: Multiplication waveform generation part 104 ... Error processing part 106 ... Input clock supply terminal DIV: Multiplication set value input terminal OUT: Multiplication clock output terminal

Claims (8)

入力クロックを基に少なくとも1つの出力クロックを出力するPLLを備える回路の動作を、前記PLLを示すPLLモデルを用いてコンピュータに実行させるシミュレーションプログラムであって、
(a)前記回路に関する回路情報を読み込んで、前記回路情報に基づいてシミュレーションを実行するステップと、
(b)前記シミュレーションにおける前記入力クロックの供給を監視し、前記PLLモデルに対する前記入力クロックの供給開始に応答して、前記入力クロックの変化を監視するための予想クロックを生成するステップと
(c)前記予想クロックと前記入力クロックとの比較に基づいて前記PLLによる出力クロックの出力を禁止するステップと
を具備し、
前記(b)ステップは、
前記入力クロックと同じ周期のクロックを前記予想クロックとして生成するステップと、
前記予想クロックと前記入力クロックとが同期しているか否かを判定し、前記予想クロックと前記入力クロックとが同期していないときに、前記入力クロックが停止していると判定するステップと、
前記入力クロックが停止していると判定されたことに基づいて、PLL回路出力として不定値をスケジュールするステップと
を含む
法を前記コンピュータに実行させることを特徴とする
シミュレーションプログラム。
A simulation program for causing a computer to execute an operation of a circuit including a PLL that outputs at least one output clock based on an input clock using a PLL model indicating the PLL,
(A) reading circuit information related to the circuit and executing a simulation based on the circuit information;
(B) monitoring the supply of the input clock in the simulation and generating an expected clock for monitoring the change of the input clock in response to the start of supply of the input clock to the PLL model ;
(C) prohibiting output of an output clock by the PLL based on a comparison between the expected clock and the input clock;
Comprising
The step (b)
Generating a clock having the same period as the input clock as the expected clock;
Determining whether the expected clock and the input clock are synchronized, and determining that the input clock is stopped when the predicted clock and the input clock are not synchronized;
Scheduling an indefinite value as the PLL circuit output based on determining that the input clock is stopped; and
including
Simulation program for causing execute METHODS into the computer.
請求項に記載のシミュレーションプログラムにおいて、
前記(b)ステップは、
前記シミュレーションにおける前記入力クロックが安定した時刻をロックアップ時刻として特定し、前記ロックアップ時刻における前記入力クロックの周期と同じ周期のクロックを1クロック生成するステップと、
前記1クロックを繰り返して出力することで前記予想クロックを生成するステップ
を含む
シミュレーションプログラム。
The simulation program according to claim 1 ,
The step (b)
Identifying a time when the input clock in the simulation is stable as a lockup time, and generating one clock having the same period as the period of the input clock at the lockup time;
A simulation program comprising: generating the predicted clock by repeatedly outputting the one clock.
請求項に記載のシミュレーションプログラムにおいて、更に、
(d)前記PLLから出力される出力クロックを帰還させたフィードバッククロックを前記PLLに供給するステップと、
(e)前記フィードバッククロックが帰還したか否かを判断するための予測フィードバッククロックを生成するステップと
(f)前記予測フィードバッククロックと前記フィードバッククロックとの比較に基づいて前記PLLによる出力クロックの出力を禁止するステップ
を具備し、
前記(f)ステップは、
前記予測フィードバッククロックと前記入力フィードバッククロックとが同期していないとき、前記フィードバッククロックが停止していると判定するステップと、
前記フィードバッククロックが停止していると判定されたとき、前記PLLの出力値を不定とするスケジュールを行うステップ
を含む
シミュレーションプログラム。
The simulation program according to claim 2 , further comprising:
(D) supplying a feedback clock obtained by feeding back an output clock output from the PLL to the PLL;
(E) generating a predicted feedback clock for determining whether or not the feedback clock has returned; and (f) outputting an output clock from the PLL based on a comparison between the predicted feedback clock and the feedback clock. A step to prohibit ,
The step (f)
Determining that the feedback clock is stopped when the predicted feedback clock and the input feedback clock are not synchronized;
Performing a schedule for making the output value of the PLL undefined when it is determined that the feedback clock is stopped;
Including simulation program.
PLL回路を含む半導体集積回路の動作を模擬する論理シミュレーション装置であって、
シミュレーションモデルとシミュレーションプログラムとを保持する記憶部と、前記シミュレーションモデルは、前記PLL回路に対応するシミュレーションモデルであるPLL回路モデルを含み、
前記シミュレーションプログラムに示される手順に従って回路シミュレーションを実行する演算処理部と
を具備し、
前記PLL回路モデルは、
入力クロック応答して出力クロックを生成する出力クロック生成部と、
前記入力クロックの状態を監視するクロック監視部と
を示し、
前記クロック監視部は、
前記入力クロックと同じ周期の予想クロックを生成する予想クロック生成部と、前記予想クロック生成部から出力される前記予想クロックと前記入力クロックとを受け、前記入力クロックと前記予想クロックとが同期しているか否かを判定し、前記予想クロックと前記入力クロックとが同期していないときに、前記入力クロック前記入力クロックが停止していると判定するクロック比較部と
を含み、
前記出力クロック生成部は、
前記クロック監視部で前記入力クロックが停止していると判定されたことに基づいて、PLL回路出力として不定値をスケジュールして前記出力クロック生成部での前記出力クロックの生成を停止する
論理シミュレーション装置。
A logic simulation apparatus for simulating the operation of a semiconductor integrated circuit including a PLL circuit,
A storage unit that holds a simulation model and a simulation program, and the simulation model includes a PLL circuit model that is a simulation model corresponding to the PLL circuit;
An arithmetic processing unit that executes circuit simulation according to the procedure shown in the simulation program,
The PLL circuit model is:
An output clock generator for generating an output clock in response to an input clock;
A clock monitoring unit for monitoring the state of the input clock;
The clock monitoring unit
An expected clock generator that generates an expected clock having the same period as the input clock; and the expected clock and the input clock output from the expected clock generator, and the input clock and the expected clock are synchronized with each other. A clock comparison unit that determines whether or not the input clock and the input clock are stopped when the predicted clock and the input clock are not synchronized ;
Including
The output clock generator is
A logic simulation device that schedules an indefinite value as an output of a PLL circuit and stops generation of the output clock in the output clock generation unit based on the determination that the input clock is stopped in the clock monitoring unit .
請求項に記載の論理シミュレーション装置において、
記予想クロック生成部は、前記出力クロックの周期が安定した時刻の前記入力クロックに同期して前記予想クロックを生成し、前記予想クロックを継続的に出力する
論理シミュレーション装置。
The logic simulation apparatus according to claim 4 ,
Prior Symbol expected clock generator, a logic simulation apparatus cycle of the output clock is in synchronization with the input clock stable time to generate the expected clock, and outputs the estimated clock continuously.
請求項に記載の論理シミュレーション装置において、
前記出力クロック生成部は、
前記入力クロックのクロック周期を測定するクロック周期測定部と、
現在時間における前記クロック周期と、過去時間における前記クロック周期とに基づいて、前記入力クロックの周期の変化を検出し、前記入力クロックの周期が変化したときに前記出力クロックの生成の禁止を指示するクロック周期変化検出部と、
前記クロック周期と遁倍設定値とに基づいて前記出力クロックを生成する遁倍波形生成部と、
前記クロック周期変化検出部からの指示に基づいて前記出力クロックを出力するか否かを判断するエラー処理部と
を含み、
前記クロック比較部は、前記入力クロックが停止していると判定したときに、前記入力クロックが停止していることを前記エラー処理部に通知し、
前記エラー処理部は、
前記クロック比較部から出力される前記通知、または、前記クロック周期変化検出部から出力される前記指示の少なくとも一方に応答して、前記遁倍波形生成部から出力される前記出力クロック出力を禁止する
論理シミュレーション装置。
The logic simulation apparatus according to claim 5 ,
The output clock generator is
A clock period measuring unit for measuring a clock period of the input clock;
Based on the clock cycle at the current time and the clock cycle at the past time, a change in the cycle of the input clock is detected, and an instruction to prohibit the generation of the output clock is issued when the cycle of the input clock changes. A clock cycle change detector;
A multiplying waveform generating unit that generates the output clock based on the clock period and the multiplying setting value;
An error processing unit that determines whether to output the output clock based on an instruction from the clock cycle change detection unit,
When the clock comparison unit determines that the input clock is stopped, it notifies the error processing unit that the input clock is stopped ,
The error processing unit
Said notification output from the clock comparator unit, or in response to at least one of the instruction outputted from said clock period change detection unit, prohibits output of the output clock output from the遁倍waveform generator Yes Logic simulation device.
請求項に記載の論理シミュレーション装置において、さらに、
前記出力クロックが帰還された帰還クロックを受け、前記帰還クロックの周期の変化を検出する帰還クロック判定部と、
前記帰還クロックが停止されたか否かを監視する帰還クロック監視部と
を具備し、
前記帰還クロック判定部は、
前記帰還クロックの周期が変化したときに、前記出力クロック生成部に前記出力クロックの生成禁止を指示し、
前記帰還クロック監視部は、
前記帰還クロックに同期した予想帰還クロックを生成し、前記予想帰還クロックと前記帰還クロックとの比較に基づいて、前記帰還クロックが停止さしていることを検出し、前記帰還クロックの停止が検出されたときに、前記出力クロック生成部に前記出力クロックの生成禁止を指示する
論理シミュレーション装置。
The logic simulation apparatus according to claim 6 , further comprising:
A feedback clock determination unit that receives a feedback clock to which the output clock is fed back and detects a change in the period of the feedback clock;
A feedback clock monitoring unit for monitoring whether or not the feedback clock is stopped;
The feedback clock determination unit
When the period of the feedback clock changes, the output clock generation unit is instructed to prohibit generation of the output clock,
The feedback clock monitoring unit
When generating an expected feedback clock synchronized with the feedback clock, detecting that the feedback clock is stopped based on a comparison between the predicted feedback clock and the feedback clock, and detecting a stop of the feedback clock And a logic simulation device that instructs the output clock generation unit to prohibit generation of the output clock.
請求項に記載の論理シミュレーション装置において、
前記帰還クロック判定部は、
前記帰還クロックの周期を測定する帰還クロック周期測定部と、
前記帰還クロック周期測定部が現在時間に測定した前記帰還クロックの周期と、過去時間に測定された前記帰還クロックの周期とを比較し、その比較の結果に基づいて前記帰還クロックの周期の変化を検出する帰還クロック変化検出部と
を含み、
前記帰還クロック監視部は、
前記遁倍設定値と前記クロック周期測定部から出力される前記入力クロックの周期の測定値とに基づいて前記予想帰還クロックを生成する予想帰還クロック生成部と、
前記予想帰還クロックと前記予想クロックとの比較に基づいて、前記帰還クロックが停止しているか否か検出し、前記帰還クロックが停止していることを検出したときに前記質力クロック生成部に前記出力クロックの出力禁止を指示する予想帰還クロック比較部と
を含む
論理シミュレーション装置。
The logic simulation apparatus according to claim 7 , wherein
The feedback clock determination unit
A feedback clock period measuring unit for measuring the period of the feedback clock;
The feedback clock cycle measurement unit compares the cycle of the feedback clock measured at the current time with the cycle of the feedback clock measured at the past time, and changes the cycle of the feedback clock based on the comparison result. A feedback clock change detection unit for detecting,
The feedback clock monitoring unit
An expected feedback clock generating unit that generates the predicted feedback clock based on the multiplication setting value and a measured value of the period of the input clock output from the clock period measuring unit;
Based on the comparison between the expected feedback clock and the expected clock, it is detected whether the feedback clock is stopped, and when it is detected that the feedback clock is stopped, the quality clock generation unit A logic simulation device including an expected feedback clock comparison unit that instructs output prohibition of an output clock.
JP2005358048A 2005-12-12 2005-12-12 Circuit simulation device Expired - Fee Related JP4651023B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005358048A JP4651023B2 (en) 2005-12-12 2005-12-12 Circuit simulation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005358048A JP4651023B2 (en) 2005-12-12 2005-12-12 Circuit simulation device

Publications (2)

Publication Number Publication Date
JP2007164363A JP2007164363A (en) 2007-06-28
JP4651023B2 true JP4651023B2 (en) 2011-03-16

Family

ID=38247199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005358048A Expired - Fee Related JP4651023B2 (en) 2005-12-12 2005-12-12 Circuit simulation device

Country Status (1)

Country Link
JP (1) JP4651023B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6572542B2 (en) 2015-01-26 2019-09-11 株式会社ソシオネクスト Logic simulation method, logic simulation apparatus and program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297684A (en) * 2001-03-30 2002-10-11 Nec Microsystems Ltd Simulation method and simulation program for pll circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297684A (en) * 2001-03-30 2002-10-11 Nec Microsystems Ltd Simulation method and simulation program for pll circuit

Also Published As

Publication number Publication date
JP2007164363A (en) 2007-06-28

Similar Documents

Publication Publication Date Title
US8255850B2 (en) Fabricating IC with NBTI path delay within timing constraints
JP2005092885A (en) System and method for statistical timing analysis of digital circuits
US9043737B2 (en) Integrated circuit design verification through forced clock glitches
KR20170039073A (en) Calibrating a power supply using power supply monitors
CN112069763A (en) Method for correcting circuit
US20110295536A1 (en) Clock jitter analyzing method and apparatus
US20070106488A1 (en) Incremental circuit re-simulation system
US10354029B2 (en) Method for equipping registers of an integrated circuit to detect timing violations
US20130036394A1 (en) Vectorless IVD Analysis Prior to Tapeout to Prevent Scan Test Failure Due to Voltage Drop
JP4651023B2 (en) Circuit simulation device
JP2007142094A (en) Flip-flop functional element, semiconductor integrated circuit and method and device for designing the same
JP5119506B2 (en) Semiconductor integrated circuit design apparatus, data processing method thereof, and control program thereof
US20080300806A1 (en) Power consumption calculating method
US7930609B2 (en) Apparatus and method for verifying target circuit
JP2005141434A (en) Timing verification system and program for integrated circuit
JP2005108007A (en) Lsi design verification apparatus and lsi design verification method
US20210132147A1 (en) Test pattern generating method, test pattern generating device and fault model generating method
Anghel et al. Design-time exploration for process, environment and aging compensation techniques for low power reliable-aware design
US20230351085A1 (en) Detecting instability in combinational loops in electronic circuit designs
US11062069B1 (en) Bounded deadlock check
US8392860B1 (en) Identifying speed binning test vectors during simulation of an integrated circuit design
US20230195984A1 (en) Method for timing signoff in mixed-transistor designs
JP2008217413A (en) Static timing analysis method and program
JP7078428B2 (en) Simulation execution control device, simulation execution control method, and simulation execution control program
JP4181987B2 (en) Semiconductor integrated circuit, electronic device, and clock supply state detection method for semiconductor integrated circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100903

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101101

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101210

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees