(57)【特許請求の範囲】
【請求項１】
分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現する論理シミュレーション方法において、
プロセッサが、前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出し、
前記プロセッサが、前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの第１の周波数値を示す第１の周波数情報を生成し、
前記プロセッサが、前記第１の周波数情報を平滑化して前記出力クロックの第２の周波数値を示す第２の周波数情報を生成し、
前記プロセッサが、前記第２の周波数情報に基づき周波数が前記第２の周波数値である前記出力クロックを生成する、
ことを特徴とする論理シミュレーション方法。
【請求項２】
前記プロセッサは、連続するＮ（Ｎ≧２）回分の前記位相差の検出結果に基づいて生成したＮ個の前記第１の周波数値を平均化することで、前記第２の周波数値を生成する、ことを特徴とする請求項１に記載の論理シミュレーション方法。
【請求項３】
前記プロセッサは、
前記第１の周波数値と予め保持している第３の周波数値との第１の差分に第１の係数を乗じて、前記第１の差分より小さい第２の差分を算出し、
前記第３の周波数値に前記第１の係数より大きい第２の係数を乗じた値を、前記第２の差分に加算することで、前記第２の周波数値を生成し、
前記第２の差分に前記第３の周波数値を加えた値で、前記第３の周波数値を更新する、ことを特徴とする請求項１に記載の論理シミュレーション方法。
【請求項４】
前記ＰＬＬ回路は、スペクトラム拡散クロック生成器または小数逓倍機能を有するＰＬＬ回路であることを特徴とする請求項１に記載の論理シミュレーション方法。
【請求項５】
分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現する論理シミュレーション装置において、
前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出する位相差検出部と、
前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの第１の周波数値を示す第１の周波数情報を生成する周波数調整部と、
前記第１の周波数情報を平滑化して前記出力クロックの第２の周波数値を示す第２の周波数情報を生成する平滑化処理部と、
前記第２の周波数情報に基づき周波数が前記第２の周波数値である前記出力クロックを生成する出力部と、
を有することを特徴とする論理シミュレーション装置。
【請求項６】
分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現するプログラムであって、
前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出し、
前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの第１の周波数値を示す第１の周波数情報を生成し、
前記第１の周波数情報を平滑化して前記出力クロックの第２の周波数値を示す第２の周波数情報を生成し、
前記第２の周波数情報に基づき周波数が前記第２の周波数値である前記出力クロックを生成する、
処理をコンピュータに実行させるプログラム。
【請求項７】
前記プロセッサは、現在の前記位相差に基づいて生成された前記第１の周波数値を、過去の前記位相差に基づいて生成された前記第１の周波数値を用いて平滑化することで前記第２の周波数値を生成する、ことを特徴とする請求項１に記載の論理シミュレーション方法。
【請求項８】
前記平滑化処理部は、現在の前記位相差に基づいて生成された前記第１の周波数値を、過去の前記位相差に基づいて生成された前記第１の周波数値を用いて平滑化することで前記第２の周波数値を生成する、ことを特徴とする請求項５に記載の論理シミュレーション装置。
【請求項９】
現在の前記位相差に基づいて生成された前記第１の周波数値を、過去の前記位相差に基づいて生成された前記第１の周波数値を用いて平滑化することで前記第２の周波数値を生成する、処理を前記コンピュータに実行させることを特徴とする請求項６に記載のプログラム。
【請求項１０】
前記プロセッサが、前記出力クロックが前記ＰＬＬ回路の物理仕様を満たすか否かを判定し、
前記プロセッサが、前記出力クロックが前記物理仕様を満たしていないとき、警告を出力し、
前記警告が出力されたとき、前記プロセッサがシミュレーションを終了する、
ことを特徴とする請求項１に記載の論理シミュレーション方法。
【請求項１１】
監視部が、前記出力クロックが前記ＰＬＬ回路の物理仕様を満たすか否かを判定し、
警告出力部が、前記出力クロックが前記物理仕様を満たしていないとき、警告を出力し、
前記警告が出力されたとき、シミュレーションが終了される、
ことを特徴とする請求項５に記載の論理シミュレーション装置。
【請求項１２】
前記出力クロックが前記ＰＬＬ回路の物理仕様を満たすか否かを判定し、
前記出力クロックが前記物理仕様を満たしていないとき、警告を出力し、
前記警告が出力されたとき、シミュレーションを終了する、
処理を前記コンピュータに実行させることを特徴とする請求項６に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理シミュレーション方法、論理シミュレーション装置及びプログラムに関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integrated circuit）には、ＰＬＬ（Phase Locked Loop）回路などのアナログ回路を搭載しているものがある。ＰＬＬ回路は、クロック周波数の逓倍やＬＳＩ内部のクロックのスキュー調整などを行う機能を有しており、ＬＳＩの高速化及び大規模化を実現させるための回路として適用されている。
【０００３】
また、近年では、周波数を整数逓倍するＰＬＬ回路に加えて、ＳＳＣＧ（Spread Spectrum Clock Generator、スペクトラム拡散クロック生成器）や、小数逓倍機能を有するＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬなど、分周比が変動する分周回路を備えたＰＬＬ回路も提案されている。
【０００４】
ＬＳＩの設計の際、ＰＬＬ回路の動作を検証するために、Ｖｅｒｉｌｏｇなどのハードウェア記述言語でＰＬＬ回路を機能的に記述したシミュレーションモデルが作成され、論理シミュレーションが行われる。
【０００５】
周波数を整数逓倍するＰＬＬ回路のシミュレーションモデルには、リファレンスクロックとフィードバッククロックとの位相差を検出する位相差検出部と、位相差から出力クロックが目標周波数に達したか否かを判定するロック検出部が含まれる。また、位相差に基づき周波数を調整する周波数調整部と、調整された周波数のクロックを出力するクロック出力部や、出力クロックを分周してフィードバッククロックを生成する分周部が含まれる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開２００８／１１７３６１号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、ＳＳＣＧなどの分周比が変動するＰＬＬ回路では、分周比が常に変動しているため、出力クロックの周波数が目標とする周波数に近づいても、リファレンスクロックとフィードバッククロックとの間には位相差が発生する。上記のようなシミュレーションモデルを用いた論理シミュレーションでは、リファレンスクロックとフィードバッククロックとの位相差に基づいて出力クロックの次の周波数が直ちに決定される。そのため、実際のＰＬＬ回路よりも急激な周波数変動が起こりやすく、回路動作を精度よく再現することが困難であった。
【課題を解決するための手段】
【０００８】
発明の一観点によれば、分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現する論理シミュレーション方法として、プロセッサが、前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出し、前記プロセッサが、前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの周波数の候補値を示す第１の周波数情報を生成し、前記プロセッサが、前記第１の周波数情報を平滑化して第２の周波数情報を生成し、前記プロセッサが、前記第２の周波数情報に基づき前記周波数を決定し前記出力クロックを生成する、論理シミュレーション方法が提供される。
【０００９】
また、発明の一観点によれば、分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現する論理シミュレーション装置として、前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出する位相差検出部と、前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの周波数の候補値を示す第１の周波数情報を生成する周波数調整部と、前記第１の周波数情報を平滑化して第２の周波数情報を生成する平滑化処理部と、前記第２の周波数情報に基づき前記周波数を決定し前記出力クロックを生成する出力部と、を有する論理シミュレーション装置が提供される。
【００１０】
また、発明の一観点によれば、分周比が変動する分周回路を備えたＰＬＬ回路の動作を再現するプログラムとして、前記ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出し、前記位相差に基づいて、前記ＰＬＬ回路から出力される出力クロックの周波数の候補値を示す第１の周波数情報を生成し、前記第１の周波数情報を平滑化して第２の周波数情報を生成し、前記第２の周波数情報に基づき前記周波数を決定し前記出力クロックを生成する、処理をコンピュータに実行させるプログラムが提供される。
【発明の効果】
【００１１】
開示の論理シミュレーション方法、論理シミュレーション装置及びプログラムによれば、分周比が変動する分周回路を備えたＰＬＬ回路の動作を精度よく再現できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態の論理シミュレーション方法及び論理シミュレーション装置の一例を示す図である。
【図２】第２の実施の形態の論理シミュレーション装置のハードウェア例を示す図である。
【図３】論理シミュレーション装置の一例の機能ブロック図である。
【図４】ＳＳＣＧの物理仕様の一例を示す図である（その１）。
【図５】ＳＳＣＧの物理仕様の一例を示す図である（その２）。
【図６】シミュレーション実行部の一例の機能ブロック図である。
【図７】平滑化処理部の一例を示す図である。
【図８】ＳＳＣＧにおける平滑化処理前後の出力周波数の時間変化の一例の様子を示す図である。
【図９】Ｆｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬにおける平滑化処理前後の周波数の時間変化の一例の様子を示す図である。
【図１０】整数逓倍ＰＬＬ回路のシミュレーションモデルの一例を示す図である。
【図１１】平滑化処理部を有さないシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
【図１２】平滑化処理部を有さないシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【図１３】平滑化処理部を有するシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
【図１４】平滑化処理部を有するシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【図１５】平滑化処理部の他の例を示す図である。
【図１６】図１５に示した平滑化処理部を有するシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
【図１７】図１５に示した平滑化処理部を有するシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【図１８】論理シミュレーションの一例の流れを示すフローチャートである（その１）。
【図１９】論理シミュレーションの一例の流れを示すフローチャートである（その２）。
【図２０】図７に示した平滑化処理部を用いる場合の平滑化処理の一例の流れを示す図である。
【図２１】図１５に示した平滑化処理部を用いる場合の平滑化処理の一例の流れを示す図である。
【発明を実施するための形態】
【００１３】
以下、発明を実施するための形態を、図面を参照しつつ説明する。
（第１の実施の形態）
図１は、第１の実施の形態の論理シミュレーション方法及び論理シミュレーション装置の一例を示す図である。
【００１４】
本実施の形態の論理シミュレーション方法及び論理シミュレーション装置は、ＳＳＣＧやＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬといった分周比が変動するＰＬＬ回路の動作を再現するものである。
【００１５】
論理シミュレーション装置１は、たとえば、コンピュータであり、プロセッサ２と記憶部３を有している。プロセッサ２は、記憶部３に記憶されているデータ及びプログラムに基づき、分周比が変動する分周回路を備えたＰＬＬ回路のシミュレーションモデル１０の各機能を実現する。記憶部３は、プロセッサ２が実行するプログラムや、ＰＬＬ回路の物理仕様など、論理シミュレーションに用いる各種データを記憶する。
【００１６】
図１のシミュレーションモデル１０には、位相差検出部１１、ロック検出部１２、周波数調整部１３、平滑化処理部１４、出力部１５、分周部１６が含まれている。このような各機能部は、たとえば、Ｖｅｒｉｌｏｇなどのハードウェア記述言語で記述されている。
【００１７】
位相差検出部１１は、ＰＬＬ回路のフィードバッククロックと、所定の周波数をもつリファレンスクロックとの位相差を検出する。
ロック検出部１２は、検出された位相差に基づき、ＰＬＬ回路の出力クロックの周波数（以下出力周波数という）が目標とする周波数（以下目標周波数という）に対して所定の範囲内に収束しているか否かを判定する。
【００１８】
周波数調整部１３は、検出された位相差に基づいて、出力周波数の候補値を示す周波数情報を生成する。
平滑化処理部１４は、生成された周波数情報を平滑化する。
【００１９】
出力部１５は、平滑化された周波数情報に基づき出力クロックを生成する。
分周部１６は、生成された出力クロックを分周してフィードバッククロックを生成する。
【００２０】
以下、上記のような論理シミュレーション装置１を用いた論理シミュレーション方法において、出力クロックを生成する際の処理の流れを、図１を用いて説明する。なお、前述したようにシミュレーションモデル１０の各機能は、プロセッサ２により実現されるため、以下では各処理の主体を、プロセッサ２として説明する。
【００２１】
まず、プロセッサ２は、ＰＬＬ回路のフィードバッククロックとリファレンスクロックとの位相差を検出する（ステップＳ１）。なお、リファレンスクロックの周波数は予め一定の値に定められている。
【００２２】
そして、プロセッサ２は、検出した位相差に基づき、出力周波数の候補値を示す周波数情報を生成する（ステップＳ２）。
その後、プロセッサ２は、生成した周波数情報を平滑化する（ステップＳ３）。図１には、ステップＳ２の処理で生成される周波数情報（周波数調整部１３の出力）と、平滑化後の周波数情報（平滑化処理部１４の出力）の一例が示されている。これらは、ＳＳＣＧのシミュレーションモデルにおいて生成される周波数情報の例である。縦軸はＳＳＣＧの出力周波数を示し、横軸は時間を示している。図１のように、平滑化前には、時間に対して急激な周波数変動がみられるが、平滑化後には、急激な周波数変動が抑えられている。
【００２３】
平滑化処理の例については後述するが、たとえば、プロセッサ２は、過去の位相差の検出結果に基づいて生成した周波数情報を、記憶部３に保持しておく。そして、プロセッサ２は、連続するＮ（Ｎ≧２）回分の位相差の検出結果に基づいて生成した周波数情報であるＮ個の周波数値（候補値）を平均化することで、上記のような急激な周波数変動を抑えることができる。
【００２４】
次に、プロセッサ２は、平滑化後の周波数情報に基づき出力クロックを生成する（ステップＳ４）。
以上のように、本実施の形態の論理シミュレーション方法及び論理シミュレーション装置では、フィードバッククロックとリファレンスクロックとの位相差に基づく周波数情報を平滑化することで、シミュレーション特有の急激な周波数変動を抑えられる。そのため、分周比が変動する分周回路を備えたＰＬＬ回路の実際の動作を精度よく再現できる。
【００２５】
また、上記のようなシミュレーションモデル１０は、周波数を整数逓倍するＰＬＬ回路のシミュレーションモデルを大きく変更するものではないため、論理シミュレーションにかかる工数の増大を少なくできる。
【００２６】
（第２の実施の形態）
以下、第２の実施の形態の論理シミュレーション方法及び論理シミュレーション装置の一例を示す。
【００２７】
図２は、第２の実施の形態の論理シミュレーション装置のハードウェア例を示す図である。
論理シミュレーション装置２０は、たとえば、コンピュータであり、プロセッサ２１によって装置全体が制御されている。プロセッサ２１には、バス２９を介してＲＡＭ（Random Access Memory）２２と複数の周辺機器が接続されている。プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、たとえばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ２１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００２８】
ＲＡＭ２２は、論理シミュレーション装置２０の主記憶装置として使用される。ＲＡＭ２２には、プロセッサ２１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ２２には、プロセッサ２１による処理に必要な各種データが格納される。
【００２９】
バス２９に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）２３、グラフィック処理装置２４、入力インタフェース２５、光学ドライブ装置２６、機器接続インタフェース２７及びネットワークインタフェース２８がある。
【００３０】
ＨＤＤ２３は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行う。ＨＤＤ２３は、論理シミュレーション装置２０の補助記憶装置として使用される。ＨＤＤ２３には、ＯＳのプログラム、アプリケーションプログラム、及び各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
【００３１】
グラフィック処理装置２４には、モニタ２４ａが接続されている。グラフィック処理装置２４は、プロセッサ２１からの命令にしたがって、画像をモニタ２４ａの画面に表示させる。モニタ２４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３２】
入力インタフェース２５には、キーボード２５ａとマウス２５ｂとが接続されている。入力インタフェース２５は、キーボード２５ａやマウス２５ｂから送られてくる信号をプロセッサ２１に送信する。なお、マウス２５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３３】
光学ドライブ装置２６は、レーザ光などを利用して、光ディスク２６ａに記録されたデータの読み取りを行う。光ディスク２６ａは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク２６ａには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００３４】
機器接続インタフェース２７は、論理シミュレーション装置２０に周辺機器を接続するための通信インタフェースである。たとえば機器接続インタフェース２７には、メモリ装置２７ａやメモリリーダライタ２７ｂを接続することができる。メモリ装置２７ａは、機器接続インタフェース２７との通信機能を搭載した記録媒体である。メモリリーダライタ２７ｂは、メモリカード２７ｃへのデータの書き込み、またはメモリカード２７ｃからのデータの読み出しを行う装置である。メモリカード２７ｃは、カード型の記録媒体である。
【００３５】
ネットワークインタフェース２８は、ネットワーク２８ａに接続されている。ネットワークインタフェース２８は、ネットワーク２８ａを介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００３６】
以上のようなハードウェア構成によって、第２の実施の形態の処理機能を実現することができる。なお、図１に示した第１の実施の形態の論理シミュレーション装置１も、図２に示した論理シミュレーション装置２０と同様のハードウェアにより実現することができる。
【００３７】
論理シミュレーション装置２０は、たとえばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施の形態の処理機能を実現する。論理シミュレーション装置２０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。たとえば、論理シミュレーション装置２０に実行させるプログラムをＨＤＤ２３に格納しておくことができる。プロセッサ２１は、ＨＤＤ２３内のプログラムの少なくとも一部をＲＡＭ２２にロードし、プログラムを実行する。また論理シミュレーション装置２０に実行させるプログラムを、光ディスク２６ａ、メモリ装置２７ａ、メモリカード２７ｃなどの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、たとえばプロセッサ２１からの制御により、ＨＤＤ２３にインストールされた後、実行可能となる。またプロセッサ２１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００３８】
（論理シミュレーション装置の機能ブロック図）
図３は、論理シミュレーション装置の一例の機能ブロック図である。
論理シミュレーション装置２０は、論理ライブラリ３１、物理仕様検出部３２、監視部３３、警告出力部３４、シミュレーション実行部３５を有している。
【００３９】
論理ライブラリ３１には、検証対象のアナログ回路の論理動作の他に、アナログ回路の物理仕様が記述されている。論理ライブラリ３１は、たとえば、図２に示したＨＤＤ２３に格納されている。
【００４０】
物理仕様検出部３２、監視部３３、警告出力部３４、シミュレーション実行部３５は、たとえば、図２に示したプロセッサ２１が、ＨＤＤ２３に格納されているプログラムを実行することによって実現される。
【００４１】
物理仕様検出部３２は、論理ライブラリ３１から検証対象のアナログ回路の物理仕様を検出する。検証対象のアナログ回路の物理仕様とは、ＰＬＬ回路などのアナログ回路を起動する際に入力すべき信号の設定を示す起動シーケンスや、出力クロックやフィードバッククロックの周波数の許容範囲などである。
【００４２】
本実施の形態の論理シミュレーション装置２０では、分周比が整数逓倍の分周回路を備えたＰＬＬ回路のほか、ＳＳＣＧやＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬなど、分周比が変動する分周回路を備えたＰＬＬ回路の物理仕様についても検出される。
【００４３】
図４、図５は、ＳＳＣＧの物理仕様の一例を示す図である。縦軸は周波数を示し、横軸は時間を示している。
ＳＳＣＧには、目標周波数を上限として周波数を変動させるダウンスプレッドと、目標周波数を中心として周波数を変動させるセンタースプレッドがある。図４には、ダウンスプレッドの場合の周波数の変動の様子が示されており、図５には、センタースプレッドの場合の周波数の変動の様子が示されている。
【００４４】
ＳＳＣＧにおいて、たとえば、図４、図５に示すような変調周期や、変調幅が満たすべき値が、物理仕様となる。変調周期は、変調周波数によって決まり、変調幅は、目標周波数に対する変調率で決まる。
【００４５】
なお、図４、図５ではＳＳＣＧの出力周波数の変動は三角波で表されているが、サイン波などであってもよい。
図３の説明に戻る。
【００４６】
監視部３３は、論理シミュレーション時の信号または設定が、上記の物理仕様を満たすか否かを監視する。論理シミュレーション時の信号または設定とは、たとえば、前述した起動シーケンスや各クロックなどである。
【００４７】
警告出力部３４は、論理シミュレーション時の信号または設定が物理仕様を満たさない場合、たとえば、図２に示したモニタ２４ａに警告を表示する。
シミュレーション実行部３５は、論理ライブラリ３１の記述をもとに、アナログ回路の論理シミュレーションを実行する。
【００４８】
以下、分周比が変動する分周回路を備えたＰＬＬ回路の論理シミュレーションを行う際のシミュレーション実行部３５の一例を示す。
（シミュレーション実行部３５の機能ブロック図）
図６は、シミュレーション実行部の一例の機能ブロック図である。シミュレーション実行部３５の要素は、図１に示した、シミュレーションモデル１０の要素に対応しているものも含む。
【００４９】
シミュレーション実行部３５は、リファレンスクロック生成部４０、ＰＬＬ部４１、分周部４２を有している。
リファレンスクロック生成部４０は、所定の周波数のリファレンスクロックを生成する。
【００５０】
ＰＬＬ部４１は、リファレンスクロックと分周部４２から供給されるフィードバッククロックに基づきＰＬＬ動作を行い、出力クロックと、リファレンスクロックとフィードバッククロックとの位相差が所定の範囲内であるか否かを示すロック信号を出力する。
【００５１】
分周部４２は、出力クロックの周波数を分周してフィードバッククロックを生成する。分周部４２が用いる分周比は変動する。たとえば、ＳＳＣＧの場合は、分周部４２は、出力周波数を、図４、図５のように変動させるように分周比を変動する。
【００５２】
ＰＬＬ部４１は、位相差検出部４１ａ、ロック検出部４１ｂ、周波数調整部４１ｃ、平滑化処理部４１ｄ、出力部４１ｅを有する。
位相差検出部４１ａは、上記のフィードバッククロックと、リファレンスクロックとの位相差を検出する。
【００５３】
ロック検出部４１ｂは、検出された位相差に基づき、出力周波数が目標周波数に対して、論理ライブラリ３１に記述された所定の範囲内に収束しているか否かを判定し、判定結果に基づくロック信号を生成する。ロック信号は、監視部３３に供給される。
【００５４】
周波数調整部４１ｃは、検出された位相差に基づいて、出力周波数の候補値を示す周波数情報を生成する。
平滑化処理部４１ｄは、生成された周波数情報を平滑化する。平滑化処理部４１ｄは、ローパスフィルタなどで実現が可能である。
【００５５】
出力部４１ｅは、平滑化された周波数情報に基づき出力クロックを生成する。出力クロックは、監視部３３に供給される。
以下、平滑化処理部４１ｄの例を説明する。
【００５６】
（平滑化処理部４１ｄの例）
図７は、平滑化処理部の一例を示す図である。
平滑化処理部４１ｄは、Ｎ−１（Ｎ≧２）個の遅延部５１ａ１，５１ａ２，５１ａ３，…，５１ａＮ−１及び加算部５２ａ１，５２ａ２，…，５２ａＮ−２，５２ａＮ−１と、除算部５３を有している。
【００５７】
遅延部５１ａ１〜５１ａＮ−１は、直列に接続されている。遅延部５１ａ１〜５１ａＮ−１のそれぞれは、フィードバッククロックとリファレンスクロックとの１回の位相比較の結果に基づき周波数調整部４１ｃから周波数値（候補値）を出力する時間分、入力される周波数の値を保持してから出力する。そのため、周波数調整部４１ｃから、フィードバッククロックとリファレンスクロックとの位相比較の結果に基づくある周波数値が出力されたとき、過去Ｎ−１回分の位相比較の結果に基づく周波数値が、遅延部５１ａ１〜５１ａＮ−１から出力される。
【００５８】
加算部５２ａ１〜５２ａＮ−１は、直列に接続されている。加算部５２ａ１は、周波数調整部４１ｃから出力される周波数値に、遅延部５１ａ１から出力される周波数値を加算する。加算部５２ａ２〜５２ａＮ−１のそれぞれは、前段の加算部の出力値に、遅延部５１ａ２〜５１ａＮ−１のうち対応するものから出力される周波数値を加算する。
【００５９】
除算部５３は、最後段の加算部５２ａＮ−１の出力値をＮで割った値を、出力周波数として出力する。
このような平滑化処理部４１ｄによれば、周波数調整部４１ｃから出力される、最新の周波数値と、過去Ｎ−１回分の周波数値、すなわちＮ回分の周波数値の平均値が最新の出力周波数となる。
【００６０】
図８は、ＳＳＣＧにおける平滑化処理前後の出力周波数の時間変化の一例の様子を示す図である。縦軸は出力周波数を示し、横軸は時間を示している。破線は平滑化処理前の周波数の時間変化を示し、実線は平滑化処理後の周波数の時間変化を示している。
【００６１】
図８に示すように、平滑化処理前の、短期間で発生する急激な周波数変動（シミュレーション特有の周波数変動）は、平滑化処理部４１ｄによって平滑化され、緩やかな周波数変化は、遅延部５１ａ１〜５１ａＮ−１による遅延を伴って出力周波数に反映される。
【００６２】
図９は、Ｆｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬにおける平滑化処理前後の周波数の時間変化の一例の様子を示す図である。縦軸は出力周波数を示し、横軸は時間を示している。破線は平滑化処理前の周波数の時間変化を示し、実線は平滑化処理後の周波数の時間変化を示している。
【００６３】
図９に示すように、平滑化処理前の、短期間で発生する急激な周波数変動（シミュレーション特有の周波数変動）は、平滑化処理部４１ｄによって平滑化され、所望の出力周波数が得られている。
【００６４】
ところで、図６のシミュレーション実行部３５のようなＰＬＬ回路のシミュレーションモデルは、周波数を整数逓倍するＰＬＬ回路（以下整数逓倍ＰＬＬ回路という）のシミュレーションモデルからの変更も少ない。以下、比較例とし、整数逓倍ＰＬＬ回路のシミュレーションモデルの一例を示す。
【００６５】
（比較例）
図１０は、整数逓倍ＰＬＬ回路のシミュレーションモデルの一例を示す図である。図６に示した要素と同じ要素については同一符号が付されている。
【００６６】
整数逓倍ＰＬＬ回路のシミュレーションモデル６０におけるＰＬＬ部６１では、図６に示したＰＬＬ部４１と異なり、周波数調整部４１ｃが出力する周波数情報が、出力部４１ｅに直接供給される。また、分周部６２は、出力クロックの周波数を整数逓倍する。
【００６７】
このようなシミュレーションモデル６０のＰＬＬ部６１を用い、分周部６２を図６に示した分周比が変動する分周部４２とした場合、出力周波数は、たとえば、以下のようになる。
【００６８】
図１１は、平滑化処理部を有さないシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
また、図１２は、平滑化処理部を有さないシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【００６９】
縦軸は出力周波数［ＭＨｚ］を示し、横軸は時間［ｐｓ］を示している。
なお、図１１の例において、目標周波数は１０００ＭＨｚ（リファレンスクロックの周波数の１００逓倍）で、前述したセンタースプレッドで、出力周波数が変動している。変調率は５％（目標周波数に対して±２．５％）、変調周波数は９．８ｋＨｚ（リファレンスクロックの周波数の１／１０２４）である。
【００７０】
また、図１２では、１０ＭＨｚのリファレンスクロックを１００．５倍して１００５ＭＨｚの出力周波数を得る例が示されている。
図１１、図１２のいずれの場合も、短期間で発生する急激な周波数変動（シミュレーション特有の周波数変動）が多くみられる。たとえば、図１２の例では、出力周波数の全体の平均は１００５ＭＨｚ程度となるが、１００５ＭＨｚ−１０ＭＨｚから、１００５ＭＨｚ＋２０ＭＨｚの範囲で出力周波数の急激な変動がみられる。
【００７１】
大きな出力周波数の変動を抑制するため、リファレンスクロックとフィードバッククロックとの一回の位相比較によって変動させる周波数を小さくすることが考えられるが、その場合、ＰＬＬ回路がロックするまでの時間が増大してしまう。
【００７２】
これに対して、図６のシミュレーション実行部３５のようなシミュレーションモデルにおいて、平滑化処理部４１ｄとして、図７に示したものを適用することで、出力周波数は、たとえば以下のようになる。
【００７３】
図１３は、平滑化処理部を有するシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
また、図１４は、平滑化処理部を有するシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【００７４】
縦軸は出力周波数［ＭＨｚ］を示し、横軸は時間［ｐｓ］を示している。
なお、入力条件は、平滑化処理部４１ｄにおける前述のＮを、Ｎ＝１２８とした以外は、図１１、図１２に示した例と同じである。
【００７５】
平滑化処理部４１ｄを適用することで、図１３に示すように、短期間で発生する急激な周波数変動が、平滑化処理を行わない図１１の例と比較して、１／１０以下程度に抑えられている。
【００７６】
また、Ｆｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬに関しても、平滑化処理部４１ｄを適用する場合は、平滑化処理を行わない図１２の例と比較して急激な周波数変動が抑えられている。図１４の例では、出力周波数の変動は、１００５ＭＨｚ±１ＭＨｚの範囲に収まっている。
【００７７】
また、平滑化処理は、緩やかな周波数変動を出力周波数に伝えるものであるため、ロック時間の増大も抑制できる。
以上のように、平滑化処理を行うことで、シミュレーション特有の短期間での急激な周波数変動が抑えられ、分周比が変動する分周回路を備えた実際のＰＬＬ回路の回路動作を精度よく再現できるようになる。
【００７８】
なお、シミュレーション実行部３５は、整数逓倍ＰＬＬ回路の論理シミュレーションを行う場合は、図１０に示すようなシミュレーションモデル６０であってもよい。
ところで、平滑化処理部４１ｄは、図７に示したようなものに限定されない。以下、平滑化処理部４１ｄの他の例を説明する。
【００７９】
（平滑化処理部の他の例）
図１５は、平滑化処理部の他の例を示す図である。
平滑化処理部４１ｄａは、加算部７０、乗算部７１、加算部７２、レジスタ部７３、乗算部７４、加算部７５を有している。
【００８０】
加算部７０は、周波数調整部４１ｃから出力される周波数情報（位相比較結果に基づく周波数値）から、レジスタ部７３の出力値を減算する。
乗算部７１は、加算部７０の出力値に係数αを乗ずる。
【００８１】
加算部７２は、乗算部７１の出力値に、レジスタ部７３の出力値を加算する。
レジスタ部７３は、加算部７２の出力値を、たとえば、トリガ信号による所定の周期で取得する。そして、レジスタ部７３は、取得した加算部７２の出力値を、その周期の時間分、出力する。なお、トリガ信号による上記の周期は、長くなると緩やかな周波数変動も抑制してしまうため、位相差検出部４１ａが位相比較を行う周期や、周波数調整部４１ｃが周波数情報を出力する周期よりも短いことが望ましい。
【００８２】
乗算部７４は、レジスタ部７３の出力値に係数ρを乗ずる。
加算部７５は、乗算部７１，７４の出力値を加算して、平滑化後の周波数情報として出力する。
【００８３】
なお、係数αは１より小さい値であり、係数ρは１以下の値であり、両者の関係は、α＜ρである。これらの係数の値によって出力周波数の変動幅が決まる。
このような平滑化処理部４１ｄａにおいて、レジスタ部７３には、初期値として、たとえば、目標周波数の値が保持されている。周波数調整部４１ｃから、周波数情報として、ある周波数値が加算部７０に供給されると、加算部７０によって、その周波数値とレジスタ部７３に保持されている周波数値（初期値は目標周波数の値）との差分がとられる。この差分に対して、乗算部７１で係数αが乗ぜられることによって、差分は小さくなる。そのため、加算部７５から出力される周波数値において、差分の影響は小さくなる。
【００８４】
ただ、抑制された差分によって、レジスタ部７３に保持されている周波数値が更新されていくので、緩やかな周波数変動は出力周波数に反映される。そのため、ＳＳＣＧやＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の変動を再現できる。
【００８５】
図１６は、図１５に示した平滑化処理部を有するシミュレーションモデルを用いた場合のＳＳＣＧの出力周波数の一例の様子を示す図である。
また、図１７は、図１５に示した平滑化処理部を有するシミュレーションモデルを用いた場合のＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの出力周波数の一例の様子を示す図である。
【００８６】
縦軸は出力周波数［ＭＨｚ］を示し、横軸は時間［ｐｓ］を示している。
なお、入力条件は、図１５の平滑化処理部４１ｄａのα、ρをそれぞれ０．００１、０．９９９とした他は、図１１、図１２に示した例と同じである。
【００８７】
図１５に示した平滑化処理部４１ｄａを適用することでも、図１１、図１２にみられたような短期間で発生する急激な周波数変動が抑えられている。
以下、図３に示した論理シミュレーション装置２０及び図６に示したようなシミュレーション実行部３５による論理シミュレーション方法の一例の流れをフローチャートで説明する。なお、論理シミュレーション装置２０及びシミュレーション実行部３５は、図２に示したプロセッサ２１による制御で実現されるため、以下では処理の主体をプロセッサ２１として説明する。
【００８８】
（論理シミュレーション方法の流れ）
図１８、図１９は、論理シミュレーションの一例の流れを示すフローチャートである。
プロセッサ２１は、ＨＤＤ２３から論理シミュレーションのためのプログラムを読み出し実行する。これにより、論理シミュレーションが開始される。図１８の例では、まず、プロセッサ２１は、たとえば、ＨＤＤ２３に格納されている論理ライブラリ３１を読み出し、論理ライブラリ３１に記述されている検証対象のアナログ回路の物理仕様を検出する（ステップＳ１０）。
【００８９】
プロセッサ２１は、アナログ回路の論理シミュレーション中に、たとえば、アナログ回路の入出力信号を監視し、まず、アナログ回路の起動時の起動シーケンスが、物理仕様を満たすか否かを判定する（ステップＳ１１）。ＰＬＬ回路において、たとえば、リセットの解除とフィードバッククロックの設定の順序や、１／ｎ分周回路のリセットの解除とＰＬＬブロックのリセットの解除の順番などは、電気的な物理仕様で決まっている場合がある。この順番を守らないと、実際の物理動作時に不具合を発生する可能性がある。そのため、論理ライブラリ３１には、予め物理仕様で定められた起動シーケンスが記述されており、プロセッサ２１は、論理シミュレーション時に、たとえば、ユーザにより設定された起動シーケンスが物理仕様で定められたものにしたがっているか否かを判定する。
【００９０】
プロセッサ２１は、起動シーケンスが物理仕様で定められているものにしたがっていないと判定した場合、たとえば、グラフィック処理装置２４を制御して、モニタ２４ａに警告を表示させる（ステップＳ２３）。
【００９１】
プロセッサ２１は、起動シーケンスが物理仕様で定められているものにしたがっていると判定した場合、たとえば、ユーザによって設定されたリファレンスクロックが物理仕様を満たすか否かを判定する（ステップＳ１２）。
【００９２】
ＰＬＬ回路としての、性能、機能を実現させるために、リファレンスクロックの周波数などは、電気的な物理仕様で制限されている。この仕様を守らない場合、ＰＬＬ回路としての本来の位相調整機能、逓倍機能を実現できなくなってしまう。よって、プロセッサ２１は、リファレンスクロックを監視して、物理仕様を満たしているかを判定する。
【００９３】
ＰＬＬ回路の安定した動作を保証するためのリファレンスクロックの物理仕様として、最低入力可能周波数、最大入力可能周波数、Ｈ（High）レベルのパルス及びＬ（Low）レベルのパルスの最小デューティ幅などがある。
【００９４】
プロセッサ２１は、リファレンスクロックが物理仕様を満たしていないと判定した場合、ステップＳ２３の処理を行い、モニタ２４ａに警告を表示させる。
プロセッサ２１は、リファレンスクロックが物理仕様を満たしていると判定した場合、ＰＬＬ回路の出力クロックが物理仕様を満たすか否かを判定する（ステップＳ１３）。
【００９５】
ＰＬＬ回路としての性能、機能を実現させるために、出力クロックの出力周波数は、電気的な物理仕様で制限されている。この仕様を守らない場合、ＰＬＬ回路としての本来の位相調整機能、逓倍機能を実現できなくなってしまう。よって、プロセッサ２１は、出力クロックを監視して、物理仕様を満たしているかを判定する。
【００９６】
ＰＬＬ回路の安定した動作を保証するための出力クロックの物理仕様として、最低出力可能周波数、最大出力可能周波数などがある。また、検証対象のＰＬＬ回路がＳＳＣＧの場合には、物理仕様として、前述した変調周期や変調幅などがある。
【００９７】
プロセッサ２１は、出力クロックが物理仕様を満たしていないと判定した場合、ステップＳ２３の処理を行い、モニタ２４ａに警告を表示させる。
プロセッサ２１は、出力クロックが物理仕様を満たしていると判定した場合、シミュレーション実行部３５の分周部４２の機能を実行し、所定の分周比でフィードバッククロックを生成する（ステップＳ１４）。分周比が変動する分周回路を備えたＰＬＬ回路の論理シミュレーションを行う場合は、次回のフィードバッククロック生成時に用いる分周比を生成する（ステップＳ１５）。
【００９８】
その後、プロセッサ２１は、フィードバッククロックが物理仕様を満たすか否かを判定する（ステップＳ１６）。フィードバッククロックの物理仕様としては、最低入力可能周波数、最大入力可能周波数、最小デューティ幅、許容逓倍数設定範囲（最小逓倍数、最大逓倍数により規定される）などがある。
【００９９】
プロセッサ２１は、フィードバッククロックが物理仕様を満たしていないと判定した場合、ステップＳ２３の処理を行い、モニタ２４ａに警告を表示させる。
プロセッサ２１は、フィードバッククロックが物理仕様を満たしていると判定した場合、シミュレーション実行部３５の位相差検出部４１ａの機能を実行し、リファレンスクロックとフィードバッククロックの位相差を検出する（ステップＳ１７）。プロセッサ２１は、位相差を検出すると、周波数調整部４１ｃの機能を実行し、出力周波数の候補値を示す周波数情報を生成する（ステップＳ１８）。そして、プロセッサ２１は、平滑化処理部４１ｄ，４１ｄａの機能を実行し、生成した周波数情報に対して、前述したような平滑化処理を行う（ステップＳ１９）。
【０１００】
また、プロセッサ２１は、位相差を検出すると、ロック検出部４１ｂの機能を実行し、ロック検出処理を行う（ステップＳ２０）。
ステップＳ１９，Ｓ２０の後、プロセッサ２１は、出力部４１ｅの機能を実行し、出力クロックを生成する（ステップＳ２１）。また、プロセッサ２１は、ステップＳ２０の処理でロックを検出した場合には、位相差が所定の範囲内に収まった旨を示すロック信号を生成する（ステップＳ２２）。プロセッサ２１は、ステップＳ２０の処理でロックを検出しなかった場合には、ロックしていない旨を示すロック信号を生成する。
【０１０１】
プロセッサ２１は、ステップＳ２２，Ｓ２３の後、シミュレーション終了条件が成立しているか否かを判定する（ステップＳ２４）。たとえば、プロセッサ２１は、位相差が所定の範囲内に収まった旨を示すロック信号を生成した場合、または警告を表示させた場合には、シミュレーション終了条件が成立したと判定し、論理シミュレーションを終了する。シミュレーション終了条件が成立しないときは、ステップＳ１２からの処理が繰り返される。
【０１０２】
なお、ステップＳ１９の平滑化処理は、図７に示したような平滑化処理部４１ｄを用いるか、図１５に示したような平滑化処理部４１ｄａを用いるかで異なっている。
図２０は、図７に示した平滑化処理部を用いる場合の平滑化処理の一例の流れを示す図である。
【０１０３】
平滑化処理部４１ｄを用いた平滑化処理では、プロセッサ２１は、周波数調整部４１ｃの機能により生成した周波数値を、たとえば、ＲＡＭ２２に連続してＮ−１回分保持させる（ステップＳ１９ａ）。この処理は、図５に示した平滑化処理部４１ｄの遅延部５１ａ１〜５１ａＮ−１の処理に相当する。
【０１０４】
そして、プロセッサ２１は、新たに生成した周波数値と、保持されている過去Ｎ−１回分の周波数値と合わせたＮ回分の周波数値の平均値を算出する（ステップＳ１９ｂ）。この平均値が、最新の出力周波数となる。この処理は、平滑化処理部４１ｄの加算部５２ａ１〜５２ａＮ−１と、除算部５３の処理に対応する。
【０１０５】
図２１は、図１５に示した平滑化処理部を用いる場合の平滑化処理の一例の流れを示す図である。
平滑化処理部４１ｄａを用いた平滑化処理では、プロセッサ２１は、周波数調整部４１ｃの機能により生成した周波数値と、予め、たとえば、ＲＡＭ２２に保持している周波数値との差分を算出する（ステップＳ１９ｃ）。この処理は、図１５に示した平滑化処理部４１ｄａの加算部７０の処理に相当する。
【０１０６】
次に、プロセッサ２１は、算出した差分に、前述した係数αを乗じる（ステップＳ１９ｄ）。係数αは１よりも小さい値であるため、算出された差分は小さくなる。なお、この処理は、平滑化処理部４１ｄａの乗算部７１の処理に相当する。
【０１０７】
さらに、プロセッサ２１は、保持している周波数値に、前述した係数ρを乗じる（ステップＳ１９ｅ）。この処理は、平滑化処理部４１ｄａの乗算部７４の処理に相当する。
その後、プロセッサ２１は、ステップＳ１９ｄとステップＳ１９ｅの処理で得られた値を加算する。これによって出力周波数が算出される（ステップＳ１９ｆ）。この処理は、平滑化処理部４１ｄａの加算部７５の処理に相当する。
【０１０８】
また、プロセッサ２１は、ステップＳ１９ｄの処理で得られた値に、保持している周波数値を加えた値で、保持している周波数値を更新する（ステップＳ１９ｇ）。この処理は、平滑化処理部４１ｄａの加算部７２とレジスタ部７３の処理に相当する。
【０１０９】
図２０、図２１に示したような平滑化処理によって、図１３、図１４、図１６、図１７に示したように、周波数調整部４１ｃの機能によって生成された周波数情報における急激な周波数変動が抑制される。また、緩やかな周波数変動は出力周波数に反映されるので、分周比が変動する分周回路を備えたＳＳＣＧなどのＰＬＬ回路の実際の動作を精度よく再現できる。
【０１１０】
また、周波数を整数逓倍するＰＬＬ回路（以下整数逓倍ＰＬＬ回路という）のシミュレーションモデルに対して、平滑化処理部４１ｄ，４１ｄａを追加するだけで、ＳＳＣＧやＦｒａｃｔｉｏｎａｌ−Ｎ  ＰＬＬの動作を精度よく再現できる。つまり、シミュレーションモデルの変更も少なくてすむ。
【０１１１】
なお、図６に示したシミュレーション実行部３５で表されるシミュレーションモデルを整数逓倍ＰＬＬ回路のシミュレーションモデルとして使用することもできる。この場合、時間的に周波数が変動するようなリファレンスクロックを入力し、リファレンスクロックの周波数変動に追従して出力周波数が変動する様子も精度よく再現できるようになる。たとえば、ＳＳＣＧと整数逓倍ＰＬＬを直列接続し、ＳＳＣＧの出力クロックが整数逓倍ＰＬＬのリファレンスクロックとなる構成について、物理動作に近い動作を論理シミュレーションで精度良く再現することが可能となる。
【０１１２】
以上、実施の形態に基づき、本発明の論理シミュレーション方法、論理シミュレーション装置及びプログラムの一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
【符号の説明】
【０１１３】
１  論理シミュレーション装置（コンピュータ）
２  プロセッサ
３  記憶部
１０  シミュレーションモデル
１１  位相差検出部
１２  ロック検出部
１３  周波数調整部
１４  平滑化処理部
１５  出力部
１６  分周部
【図１】
0006572542.tif 000002
【図２】
0006572542.tif 000003
【図３】
0006572542.tif 000004
【図４】
0006572542.tif 000005
【図５】
0006572542.tif 000006
【図６】
0006572542.tif 000007
【図７】
0006572542.tif 000008
【図８】
0006572542.tif 000009
【図９】
0006572542.tif 000010
【図１０】
0006572542.tif 000011
【図１１】
0006572542.tif 000012
【図１２】
0006572542.tif 000013
【図１３】
0006572542.tif 000014
【図１４】
0006572542.tif 000015
【図１５】
0006572542.tif 000016
【図１６】
0006572542.tif 000017
【図１７】
0006572542.tif 000018
【図１８】
0006572542.tif 000019
【図１９】
0006572542.tif 000020
【図２０】
0006572542.tif 000021
【図２１】
0006572542.tif 000022