(57)【特許請求の範囲】
【請求項１】
回路記述を予め記憶する回路記述記憶手段と、
テストベクタを予め記憶するテストベクタ記憶手段と、
前記回路記述記憶手段とテストベクタ記憶手段に記憶された情報に基づいて前記回路の動作をシミュレーションする機能シミュレーション手段と、
前記両記憶手段の情報に基づいて前記回路を構成する部分回路の出力データの変化タイミングと前記部分回路に供給されるクロックパルスの変化タイミングを取得し、前記部分回路に入力されるクロックパルスの内で、レジスタ記述のインスタンスに入力されるクロックパルス信号の内で回路記述の出力信号変化に影響しないパルス信号を除いたクロックパルスを抽出する有効クロックパルス算出手段と、
前記有効クロックパルス算出手段で抽出されたクロックパルスを前記テストベクタ記憶手段に記憶されたクロックパルスと置換するテストベクタ変更手段と、
を備えることを特徴とするクロック最適化装置。
【請求項２】
請求項１記載のクロック最適化装置において、
前記有効クロックパルス算出手段で算出された有効クロックパルスが、前記各インスタンスに入力される全クロックパルスに占める割合に基づいて、クロックパルスの削減率を算出するクロック削減率算出手段を備えることを特徴とするクロック最適化装置。
【請求項３】
請求項１記載のクロック最適化装置において、
前記回路記述記憶手段に記憶されている回路記述にクロックパルス削減用のクロック制御回路を挿入して最適化された新たな回路記述を構成した場合に、この新たな回路記述に対して前記テストベクタを加えた場合の信号変化を算出して記憶する信号変化記憶手段と、
前記有効クロックパルス算出手段で算出された有効クロックパルスの信号変化を記憶する有効クロック信号変化記憶手段と、
前記両記憶手段に記憶されている各信号変化の差分を算出するクロック信号変化差分算出手段と、
を備えることを特徴とするクロック最適化装置。
【請求項４】
請求項１記載のクロック最適化装置において、
前記有効クロックパルス算出手段で算出された有効クロックパルスを発生するクロック制御回路の記述を算出するクロック制御記述作成手段と、
このクロック制御記述記憶手段に記憶されたクロック制御回路記述を、前記回路記述記憶手段に予め記憶されている回路記述のクロック配線の途中に挿入するクロック制御記述挿入手段と、
このクロック制御記述挿入手段で得られた最適化済の回路記述を記憶する最適化済回路記述記憶手段と、
を備えることを特徴とするクロック最適化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＬＳＩに対するクロックパルスの供給を最適化することにより、消費電力の低減を図るために使用されるクロック最適化装置に関する。
【０００２】
【従来の技術】
近年、ＬＳＩには、設計のし易さからクロックに同期して動作する同期回路が用いられている。この同期回路は、外部からのクロック入力に同期して回路内部のフリップフロップ等のレジスタ素子を動作させて信号伝搬し、その信号を受けた組み合わせ回路で必要な演算を行い、また、次のレジスタ素子でクロックに同期して信号伝搬するという繰り返しで、ＬＳＩの機能を実現している。
【０００３】
ここで、レジスタ素子に常時クロックパルスを供給し続ける構成とした場合には、ＬＳＩが実質的に有効に機能していない場合でも、その回路素子に電流が流れるなどして余分な電力を消費することになる。
【０００４】
そこで、従来技術では、ＬＳＩの機能に実質的に影響しないクロックパルスを削減し、ＬＳＩの消費電力を低減させるために、クロック制御装置を設けたものがある。
【０００５】
このＬＳＩのクロック制御装置は、ＬＳＩ設計者がクロックを停止しても良い状況を考慮して、クロック停止のタイミングを設定する回路を作成するものであった。たとえば、特開平８−２２１１４８号公報に開示されている技術では、一定時間以上継続して外部信号の入力がない無い場合には、ＬＳＩへのクロック入力を一時的に停止させるような構成を採用している。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記のような従来のクロック制御装置では、ＬＳＩ設計者が仕様設計の時点から上記構成を考えておく必要があるが、そのＬＳＩの仕様が完全には明確化されていない場合、例えば他社から購入した回路情報を流用した設計の場合、あるいはＡＳＩＣ(特定向け用ＩＣ)のように設計委託の場合には、ＬＳＩ設計者は、ＬＳＩの仕様を熟知していないため、クロックの停止可能な状況を十分に把握することができず、したがって、上記構成を実現することは困難であるという問題があった。
【０００７】
本発明は、上記の課題を解決し、ＬＳＩの仕様が不明確な場合であっても、その回路情報やＬＳＩに対する入力信号がどのようなものか分かっている限りにおいて、クロックの停止可能な状況を十分に把握できるようにして、不要なクロックパルスを削減し、無駄な消費電力を低減できるクロック最適化装置を提供するものである。
【０００８】
【課題を解決するための手段】
本発明は、上記の課題を解決するため、次のように構成している。
【０００９】
請求項１記載のクロック最適化装置では、回路記述を予め記憶する回路記述記憶手段と、テストベクタを予め記憶するテストベクタ記憶手段と、前記回路記述記憶手段とテストベクタ記憶手段に記憶された情報に基づいて前記回路の動作をシミュレーションする機能シミュレーション手段と、前記両記憶手段の情報に基づいて前記回路を構成する部分回路の出力データの変化タイミングと前記部分回路に供給されるクロックパルスの変化タイミングを取得し、前記部分回路に入力されるクロックパルスの内で、レジスタ記述のインスタンスに入力されるクロックパルス信号の内で回路記述の出力信号変化に影響しないパルス信号を除いたクロックパルスを抽出する有効クロックパルス算出手段と、前記有効クロックパルス算出手段で抽出されたクロックパルスを前記テストベクタ記憶手段に記憶されたクロックパルスと置換するテストベクタ変更手段とを備えている。
【００１１】
請求項２記載のクロック最適化装置では、請求項１記載の構成において、前記有効クロックパルス算出手段で算出された有効クロックパルスが、前記各インスタンスに入力される全クロックパルスに占める割合に基づいて、クロックパルスの削減率を算出するクロック削減率算出手段を備えている。
【００１２】
請求項３記載のクロック最適化装置では、請求項１記載の構成において、前記回路記述記憶手段に記憶されている回路記述にクロックパルス削減用のクロック制御回路を挿入して最適化された新たな回路記述を構成した場合に、この新たな回路記述に対して前記テストベクタを加えた場合の信号変化を算出して記憶する信号変化記憶手段と、前記有効クロックパルス算出手段で算出された有効クロックパルスの信号変化を記憶する有効クロック信号変化記憶手段と、前記両記憶手段に記憶されている各信号変化の差分を算出するクロック信号変化差分算出手段とを備えている。
【００１３】
請求項４記載のクロック最適化装置では、請求項１記載の構成において、前記有効クロックパルス算出手段で算出された有効クロックパルスを発生するクロック制御回路の記述を算出するクロック制御記述作成手段と、このクロック制御記述記憶手段に記憶されたクロック制御回路記述を、前記回路記述記憶手段に予め記憶されている回路記述のクロック配線の途中に挿入するクロック制御記述挿入手段と、このクロック制御記述挿入手段で得られた最適化済の回路記述を記憶する最適化済回路記述記憶手段とを備えている。
【００１４】
【発明の実施の形態】
実施形態１
図１は本発明の実施形態１に関わるクロック最適化装置の構成を示すブロック図である。
【００１５】
この実施形態１のクロック最適化装置は、回路記述記憶手段１０１と、テストベクタ記憶手段１０２と、機能シミュレーション手段１０３と、信号変化記憶手段１０４と、有効クロックパルス算出手段１０５と、有効クロック信号変化記憶手段１０６とからなる。
【００１６】
上記の回路記述記憶手段１０１は、たとえば図１１に示すような回路図や、ネットリスト(回路接続情報)、あるいは回路を機能記述で表記したデータを記憶するものである。このような回路記述の情報は、予めＬＳＩの設計者や、他社からＬＳＩを購入した際に提供されるので、その情報を回路記述記憶手段１０１に事前に登録しておく。
【００１７】
図１１に示す回路記述の例では、３つの外部入力ポートＣＫ、Ｄ、Ｓ、１つの外部出力ポートＱ、および３つのインスタンスＦＦ１、ＦＦ２、ＡＮＤ１からなる。
【００１８】
インスタンスは、回路記述上で各論理素子を区別するために名称を付けたものであり、ＦＦ１，ＦＦ２で示すインスタンスはフリップフロップであって、入力端子ＣＫ、Ｄと出力端子Ｑとを有し、クロックパルスＣＫの立ち上がりエッジの直前の時刻の入力データＤの値を取り込み、これを出力端子Ｑに出力する。また、ＡＮＤ１で示すインスタンスはアンドゲートで、入力端子Ａ、Ｂと出力端子Ｙとを有する。
【００１９】
そして、外部入力ポートＣＫには、インスタンスＦＦ１の入力端子ＣＫ(以下、ＦＦ１／ＣＫと表記)およびインスタンスＦＦ２の入力端子ＣＫ(以下、ＦＦ２／ＣＫと表記)が共に接続され、外部入力ポートＤにインスタンスＦＦ１の入力端子Ｄ(以下、ＦＦ１／Ｄと表記)が接続され、また、外部入力ポートＳはインスタンスＡＮＤ１の入力端子Ｂ(以下、ＡＮＤ１／Ｂと表記)に接続されている。さらに、インスタンスＦＦ１の出力端子Ｑ(以下、ＦＦ１／Ｑと表記)はインスタンスＡＮＤ１の入力端子Ａ(以下、ＡＮＤ１／Ａと表記)に接続され、インスタンスＡＮＤ１の出力端子Ｙ(以下、ＡＮＤ１／Ｙと表記)はインスタンスＦＦ２の入力端子Ｄ(以下、ＦＦ２／Ｄと表記)に接続され、インスタンスＦＦ２の出力端子Ｑ(以下、ＦＦ２／Ｑと表記)は出力ポートＱ(以下、ＦＦ２／Ｄと表記)に接続されている。
【００２０】
テストベクタ記憶手段１０２は、回路記述記憶手段１０１に記憶された回路記述の外部入力ポートに与えるテストベクタ(入力波形の情報や、テーブル形式で表記された入力情報)を記憶するものである。
【００２１】
このテストベクタは、予めＬＳＩの設計者や、他社からＬＳＩを購入した際に提供されるので、その情報をテストベクタ記憶手段１０２に事前に記憶しておく。
【００２２】
たとえば、図１２に示すテストベクタでは、図１１に示す回路の外部入力ポートＣＫ、Ｄ、Ｓに与える信号変化を表しており、各時刻における信号値(論理“１”および“０”)から構成される。
【００２３】
機能シミュレーション手段１０３は、回路記述記憶手段１０１に記憶された回路にテストベクタ記憶手段１０２に記憶されたテストベクタを印加した場合に各インスタンスの入力端子と出力端子の信号変化がどのようになるかを擬似的に算出(シミュレーション)するものである。
【００２４】
なお、この機能シミュレーション手段１０３は、ＶerilogＨＤＬやＶＨＤＬといった回路記述言語を用いた回路記述を対象に多数の市販シミュレータが存在しており、一般的なものである。
【００２５】
信号変化記憶手段１０４は、機能シミュレーション手段１０３で算出された各インスタンスの入力端子と出力端子の信号変化情報を記憶するものである。
【００２６】
したがって、本例の場合は、図１３に示すように、図１１に示す回路の全インスタンスの入力端子と出力端子の信号変化を表すものとなる。信号変化の情報は、インスタンス名、その端子名、および各時刻における信号値(論理論理“１”および“０”)から構成される。
【００２７】
有効クロックパルス算出手段１０５は、図２のフローチャートに示すような機能を有し、信号変化記憶手段１０４に記憶された入力クロックパルスの内で、回路記述の出力信号変化に影響を及ぼす入力クロックパルスのみを抽出するものである。
【００２８】
したがって、本例の場合は、信号変化記憶手段１０４に記憶された図１３に示す入力クロックパルスＦＦ１／ＣＫ，ＦＦ２／ＣＫの内で、図１１に示した回路のレジスタ記述のインスタンス(つまり、フリップフロップＦＦ１，ＦＦ２)の出力に影響を及ぼす入力クロックパルスのみが抽出される。
【００２９】
有効クロック信号変化記憶手段１０６は、有効クロックパルス算出手段１０５で算出された回路記述の機能に影響する入力クロックパルスの信号変化を記憶すものである。
【００３０】
したがって、本例の場合は、図１４に示すように、図１１に示す回路のインスタンスＦＦ１、ＦＦ２のクロック入力端子ＦＦ１／ＣＫ、ＦＦ２／ＣＫの信号変化の内、ＦＦ１／Ｑ、ＦＦ２／Ｑの信号変化を引き起こしたもののみが抽出されている。この信号変化情報は、インスタンス名、その端子名、および各時刻における信号値(論理“１”および“０”)から構成される。
【００３１】
次に、この実施形態１のクロック最適化装置において、有効クロック信号変化を算出する場合の動作について説明する。
【００３２】
機能シミュレーション手段１０３は、回路記述記憶手段１０１に記憶された回路(図１１参照)にテストベクタ記憶手段１０２に記憶されたテストベクタ(図１２参照)を印加した場合に、各インスタンスの入力端子ＦＦ１／ＣＫ，ＦＦ１／Ｄ，ＡＮＤ１／Ａ，ＡＮＤ１／Ｂ，ＦＦ２／ＣＫ，ＦＦ２／Ｄ、出力端子ＦＦ１／Ｑ，ＡＮＤ１／Ｙ，ＦＦ２／Ｑの信号変化がどのようになるかを擬似的に算出(シミュレーション)し、図１３に示す形式で信号変化記憶手段１０４に出力するので、この情報が信号変化記憶手段１０４に一旦記憶される。
【００３３】
続いて、有効クロックパルス算出手段１０５は、まず、ステップ２０１で回路記述記憶手段１０１より図１１に示す回路記述中のレジスタ記述ＦＦ１、ＦＦ２を読み込む。
【００３４】
次いで、ステップ２０２で全てのレジスタＦＦ１、ＦＦ２を処理したかどうか検査し、処理していなければ、次のステップ２０３に進む。
【００３５】
ステップ２０３では未処理のレジスタの内の１つＦＦ１を対象レジスタとする。
【００３６】
ステップ２０４で信号変化記憶手段１０４より図１３に示す信号変化の情報中のレジスタＦＦ１のクロック端子ＦＦ１／ＣＫの信号変化と、レジスタＦＦ１の出力端子ＦＦ１／Ｑの信号変化とを読み込む。
【００３７】
レジスタＦＦ１のクロック端子ＦＦ１／ＣＫのデータ伝搬クロックエッジ(図１３の例では、０ns〜３０nsまでの各２nsごとの立ち上がり信号変化)間にレジスタの出力端子ＦＦ１／Ｑの信号変化のあるクロックパルスからなるクロック信号変化を図１４に示す形式で算出し、有効クロック信号変化記憶手段１０６に記憶する。そして、ステップ２０２に戻る。
【００３８】
ステップ２０２で全てのレジスタＦＦ１、ＦＦ２を処理したかどうか検査しＦＦ２について処理していないのでステップ２０３に進む。
【００３９】
続いて、ステップ２０３で未処理のレジスタの１つＦＦ２を対象レジスタとする。ステップ２０４で信号変化記憶手段１０４より図１３に示す信号変化情報中のレジスタＦＦ２のクロック端子ＦＦ２／ＣＫの信号変化と、レジスタＦＦ２の出力端子ＦＦ２／Ｑの信号変化とを読み込む。
【００４０】
レジスタＦＦ２のクロック端子ＦＦ２／ＣＫのデータ伝搬クロックエッジ(図１３の例では、０ns〜３０nsまでの２nsごとの立ち上がり信号変化)間にレジスタＦＦ２の出力端子ＦＦ２／Ｑの信号変化のあるクロックパルスからなるクロック信号変化を図１４に示す形式で算出し、有効クロック信号変化記憶手段１０６に記憶する。そして、ステップ２０２に戻る。
【００４１】
したがって、有効クロック信号変化記憶手段１０６には、図１４に示すように、有効クロックパルス算出手段１０５で得られたインスタンスＦＦ１、ＦＦ２のクロック入力端子ＦＦ１／ＣＫ、ＦＦ２／ＣＫの信号変化の内、ＦＦ１／Ｑ、ＦＦ２／Ｑの信号変化を引き起こしたもののみが抽出されたことになる。
【００４２】
ステップ２０２で全てのレジスタを処理したかどうか検査し、処理しているので終了する。
【００４３】
このようにして、ＬＳＩの回路記述とテストベクタとが既知である状況において、回路記述記憶手段１０１に回路記述(図１１参照)を、テストベクタ記憶手段１０２にテストベクタ(図１２)を予め記憶しておけば、図１の構成によって、有効クロックパルス算出手段１０５によって図１４に示すような有効クロック信号変化を算出することができる。
【００４４】
そして、この有効クロック信号変化が分かれば、クロックの停止可能な状況を明確に把握することができる。つまり、図１４の一方のインスタンスＦＦ１のクロック入力端子ＦＦ１／ＣＫに加わるクロックパルスの内、そのインスタンスＦＦ１の機能に影響を及ぼす入力クロックパルスは、２ns、６ns、１０ns、１４ns、１８ns、２２ns、２６ns、３０ns、…のときなので、それ以外のタイミングに入力されるクロックパルスは停止させることができる。また、他方のインスタンスＦＦ２のクロック入力端子ＦＦ２／ＣＫに加わるクロックパルスの内、そのインスタンスＦＦ２の機能に影響を及ぼすクロックパルスは、１２ns、１６ns、２８ns、…のときなので、それ以外のタイミングに入力されるクロックパルスは停止させることができる。
【００４５】
したがって、図１１に示す回路記述の仕様が明確化されていない場合でも、本発明の装置を用いてクロックパルスの停止可能なタイミングを把握した上で、図１４に示すクロックパルス以外の不要なクロックパルスを削減(クロック入力を停止)するクロック制御回路を設計すれば、回路記述の機能を何ら損なうことなく、無駄な消費電力を低減することができる。
【００４６】
このため、ＬＳＩ設計者がクロック制御回路を設計する際の機能仕様を与えることが可能となる。また、この手段は、他の考えられる手段と比べて高速に算出可能である。
【００４７】
実施形態２
この実施形態２では、クロック最適化装置の全体構成は、図１に示したものと基本的に同じである。ただし、有効クロックパルス算出手段１０５が図３に示すフローチャートに従って動作するように構成されている点が実施形態１の場合と異なっている。
【００４８】
次に、この実施形態２のクロック最適化装置において、有効クロック信号変化を算出する場合の動作について説明する。
【００４９】
なお、ここでは、一例として、回路記述記憶手段１０１には図１１に示す回路記述が、テストベクタ記憶手段１０２には図１２に示すテストベクタ記述がそれぞれ事前に記憶されているものとする。
【００５０】
機能シミュレーション手段１０３は、回路記述記憶手段１０１に記憶された図１１に示す回路記述にテストベクタ記憶手段１０２に記憶された図１２に示すテストベクタ記述を印加した場合に各インスタンスの入力端子ＦＦ１／ＣＫ，ＦＦ１／Ｄ，ＡＮＤ１／Ａ，ＡＮＤ１／Ｂ，ＦＦ２／ＣＫ，ＦＦ２／Ｄ・出力端子ＦＦ１／Ｑ，ＡＮＤ１／Ｙ，ＦＦ２／Ｑの信号変化がどのようになるかを擬似的に算出(シミュレーション)し、この信号変化の情報が図１３に示す形式で信号変化記憶手段１０４に記憶される。ここまでの動作は、実施形態１の場合と同様であるが、次の有効クロックパルス算出手段１０５の動作が実施形態１の場合と異なる。
【００５１】
すなわち、この実施形態２における有効クロックパルス算出手段１０５は、あるレジスタ素子すなわちフリップフロップのクロックに同期して転送した信号が、伝搬先であるレジスタ素子の出力値に影響を及ぼす入力クロックパルスのみを抽出する。つまり、レジスタ素子のクロックにクロックパルスが無かった場合に、伝搬先のレジスタ素子の出力値が異なる結果となってしまうようなクロックパルスのみを抽出する。
【００５２】
そこで、この実施形態２における有効クロックパルス算出手段１０５は、図３のフローチャートに示すように動作する。
【００５３】
まず、ステップ３０１で回路記述記憶手段１０１より図１１に示す回路記述情報を読み込む。
【００５４】
続いて、ステップ３０２で、全てのレジスタＦＦ１、ＦＦ２を処理したかどうか検査し、処理していなければ、ステップ３０３に進む。
【００５５】
このステップ３０３では、未処理のレジスタ記述のインスタンスの１つ(ここではＦＦ１)を対象レジスタとする。
【００５６】
ステップ３０４で、このレジスタＦＦ１の出力端子ＦＦ１／Ｑの信号変化の影響を受ける最初の伝搬先のレジスタ記述のインスタンスの出力端子(ここでは、ＦＦ２の出力端子ＦＦ２／Ｑ)を求める。
【００５７】
次に、ステップ３０５で信号変化記憶手段１０４より図１３に示す信号変化情報を読み込み、対象レジスタの出力端子ＦＦ１／Ｑの出力が変化しないと仮定した場合の伝搬先のレジスタ記述のインスタンスＦＦ２の出力端子ＦＦ２／Ｑの信号変化の有無を調べる。
【００５８】
ステップ３０６で、対象レジスタＦＦ１の出力端子ＦＦ１／Ｑが変化しないと仮定した場合と、仮定しない場合とで伝搬先のインスタンスＦＦ２の出力端子ＦＦ２／Ｑの信号変化が異なるクロックパルスからなるクロック信号変化を図１５に示す形式で算出し、有効クロック信号変化記憶手段１０６に記憶する。そしてステップ３０２に戻る。
【００５９】
ステップ３０２で全てのレジスタＦＦ１、ＦＦ２を処理したかどうか検査し、ＦＦ２について処理していないのでステップ３０３に進む。
【００６０】
次に、ステップ３０３で未処理のレジスタの１つＦＦ２を対象レジスタとする。ステップ３０４でこのレジスタＦＦ２の出力端子ＦＦ２／Ｑの信号変化の影響を受ける最初の伝搬先端子Ｑを算出する。
【００６１】
ステップ３０５で信号変化記憶手段１０４より信号変化情報を読み込み対象レジスタの出力端子ＦＦ１／Ｑが変化しないと仮定した場合の伝搬先端子Ｑの信号変化を算出する。
【００６２】
ステップ３０６で対象レジスタＦＦ２の出力端子ＦＦ２／Ｑが変化しないと仮定した場合と、仮定しない場合とで伝搬先端子Ｑの信号変化が異なるクロックパルスからなるクロック信号変化を図１５に示す形式で算出し、有効クロック信号変化記憶手段１０６に記憶する(ステップ３０６)。そして、ステップ３０２に戻る。
【００６３】
ステップ３０２で全てのレジスタを処理したかどうか検査し、処理しているので終了する。
【００６４】
以上により、この実施形態２では、あるレジスタ素子のクロックに同期して転送した信号が伝搬先であるレジスタ素子の出力値に影響を及ぼす入力クロックパルスのみを抽出するので、図２のフローチャートに基づいて有効クロックパルスを算出する実施形態１の場合よりも、クロックパルスをより一層削減したクロック信号変化を算出することが可能となる。
【００６５】
実施形態３
図４は本発明の実施形態３に関わるクロック最適化装置の構成を示すブロック図である。
【００６６】
この実施形態３のクロック最適化装置は、クロックパルスの削減効果がどの程度であるかを判断できるように、図１の構成に加えて、さらにクロック削減率算出手段４０１と、クロック削減率記憶手段４０２とを設けた点に特徴がある。
【００６７】
上記のクロック削減率算出手段４０１は、図５のフローチャートに示すような機能を有し、信号変化記憶手段１０４に記憶されたレジスタ記述のクロック入力端子における信号変化と、有効クロック信号変化記憶手段１０６に記憶されたレジスタ記述のクロック入力端子における信号変化とを比較し、回路記述の機能に影響しないクロックパルスをどの程度削減しうるかを表すクロック削減率を算出するものである。
【００６８】
また、クロック削減率記憶手段４０２は、クロック削減率算出手段４０１で算出された図１６に示すようなクロック削減率を記憶するものである。
【００６９】
なお、この実施形態３において、回路記述記憶手段１０１と、テストベクタ記憶手段１０２と、機能シミュレーション手段１０３と、信号変化記憶手段１０４と、有効クロックパルス算出手段１０５と、有効クロック信号変化記憶手段１０６の各構成は、実施形態１の場合と基本的に同じであるから、ここでは詳しい説明は省略する。
【００７０】
次に、この実施形態３のクロック最適化装置において、クロック削減率を求める場合の動作について説明する。
【００７１】
なお、ここでは、一例として、回路記述記憶手段１０１には図１１に示す回路記述が、テストベクタ記憶手段１０２には図１２に示すテストベクタ記述がそれぞれ事前に記憶されており、また、有効クロックパルス算出手段１０５は図２に示すフローチャートを用いて有効クロック信号変化を算出するものとする。
【００７２】
ここで、機能シミュレーション手段１０３が図１１に示す回路記述に対して図１２に示すテストベクタ記述を印加した場合を擬似的に算出(シミュレーション)し、続いて、有効クロックパルス算出手段１０４が図２に示すフローチャートを用いて図１４に示す形式の有効クロック信号変化を算出し、これを有効クロック信号変化記憶手段１０６に記憶するまでの動作は、実施形態１の場合と同様であるから、ここでは詳しい説明は省略する。
【００７３】
クロック削減率算出手段４０１は、図５のフローチャートにおいて、まず、ステップ５０１で信号変化記憶手段１０４より図１３に示すレジスタ記述のインスタンスＦＦ１，ＦＦ２のクロック信号変化の情報ＦＦ１／ＣＫ，ＦＦ２／ＣＫを比較元の情報として読み込む。
【００７４】
次に、ステップ５０２で有効クロック信号変化記憶手段１０４より図１４に示すクロック信号変化の情報ＦＦ１／ＣＫ，ＦＦ２／ＣＫを比較先の情報として読み込む。
【００７５】
ステップ５０３で、全てのレジスタ記述のインスタンスＦＦ１，ＦＦ２のクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査する。処理していなければ、次のステップ５０４に進み、未処理の比較元の１つのクロック信号変化の情報ＦＦ１／ＣＫを対象比較元クロック信号変化とする。
【００７６】
ステップ５０５で、この対象比較元クロック信号変化ＦＦ１／ＣＫと同じ図１４の比較先のクロック信号変化ＦＦ１／ＣＫを対象比較先クロック信号変化とする。
【００７７】
ステップ５０６で、ステップ５０４とステップ５０５で得られる各クロック信号変化の情報に基づいてクロック削減率を次式▲１▼によって算出する。
【００７８】
クロック削減率＝１−(対象比較先クロック信号変化のクロックパルス数÷対象比較元クロック信号変化のクロックパルス数)                …  ▲１▼
たとえば、このクロックパルスＦＦ１／ＣＫの場合は、１−(８÷１６)＝０.５となる。
【００７９】
こうして得られたクロック削減率の値がクロック削減率記憶手段２０２に記憶される。そして、ステップ５０３に戻る。
【００８０】
ステップ５０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、ＦＦ２／ＣＫについて処理していないのでステップ５０４に進む。
【００８１】
ステップ５０４で、次に未処理のクロック信号変化の１つＦＦ２／ＣＫを対象比較元のクロック信号変化とする。
【００８２】
ステップ５０５で、図１３の対象比較元クロック信号変化ＦＦ２／ＣＫと同じ図１４のクロック入力の比較先クロック信号変化ＦＦ２／ＣＫを対象比較先のクロック信号変化とする。
【００８３】
ステップ５０６で、上記▲１▼式に基づいてクロック削減率を算出する。すなわち、このクロックパルスＦＦ２／ＣＫの場合には、１−(４÷１６)＝０.２５となる。
【００８４】
こうして得られたクロック削減率の値がクロック削減率記憶手段２０２に記憶される。そして、ステップ５０３に戻る。
【００８５】
ステップ５０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理したので終了する。
【００８６】
このようにして、クロック削減率記憶手段４０２には、図１６に示すように、クロック削減率算出手段４０１で得られた図１１に示す回路記述のレジスタ記述のインスタンスＦＦ１，ＦＦ２のクロック入力端子ＦＦ１／ＣＫ、ＦＦ２／ＣＫにおけるクロック削減率が記憶される。
【００８７】
したがって、クロック削減率記憶手段４０２に記憶されているクロック削減率の値を検討することで、たとえば、ＬＳＩ設計者に対して、どのレジスタ記述のインスタンスのクロックパルスを削減すれば、一層消費電力の削減に効果的かといった指針を与えることが可能となる。また、このクロック削減率により、具体的な消費電力の低減効果を試算して報告することが可能となる。
【００８８】
実施形態４
図６はこの実施形態４に関わるクロック最適化装置の構成を示すブロック図である。
【００８９】
実施形態１〜３に示したようなクロック最適化装置を用いてクロックパルスの最適化を図り、クロックパルスを削減するクロック制御回路を新たに製作した場合、この新たに製作されたクロック制御回路が所期の動作を確実に実行するものかどうかを予め検証することが必要となる。
【００９０】
たとえば、図１１に示した回路記述の情報に対して、本発明のクロック最適化装置を用いてクロックパルスの最適化を図り、図１５に示すような有効クロックパルスが各インスタンスＦＦ１，ＦＦ２に加わるようなクロック制御回路Ｘ１，Ｘ２を開発し、このクロック制御回路Ｘ１，Ｘ２を図１７に示すように接続した場合、これらの各クロック制御回路Ｘ１，Ｘ２が図１５に示すような有効クロックパルスを含むクロックパルスを確実に発生することを確認する作業が必要である。
【００９１】
そこで、この実施形態４では、図１１に示す回路記述と、図１７に示す回路記述とを共に回路記述記憶手段１０１に予め記憶しておくとともに、図１に示した構成に加えて、さらに、クロック信号変化差分算出手段６０１と、クロック信号変化差分記憶手段６０２とを設けている。
【００９２】
上記のクロック信号変化差分算出手段６０１は、図７のフローチャートに示すような機能を有し、信号変化記憶手段１０４に記憶された図１７の回路記述の場合のレジスタ記述のクロック入力端子ＦＦ１／ＣＫ，ＦＦ２／ＣＫにおける信号変化(比較元)と、図１１の回路記述の場合のレジスタ記述のクロック入力端子ＦＦ１／ＣＫ，ＦＦ２／ＣＫにおける信号変化(比較先)とを比較して、比較先のクロック信号変化に不足しているクロックパルスを算出するものである。
【００９３】
また、クロック信号変化差分記憶手段６０２は、クロック信号変化差分算出手段６０１で算出された不足しているクロックパルスを記憶するものである。
【００９４】
なお、この実施形態４において、回路記述記憶手段１０１と、テストベクタ記憶手段１０２と、機能シミュレーション手段１０３と、信号変化記憶手段１０４と、有効クロックパルス算出手段１０５と、有効クロック信号変化記憶手段１０６の各構成は、実施形態２の場合と基本的に同じであるから、ここで詳しい説明は省略する。
【００９５】
次に、この実施形態４において、クロック信号変化の差分を算出する場合の動作について説明する。
【００９６】
なお、ここでは、一例として、回路記述記憶手段１０１には図１１に示す回路記述と図１７に示す回路記述とが事前に記憶されており、また、テストベクタ記憶手段１０２には図１２に示すテストベクタ記述がそれぞれ事前に記憶されており、さらに、有効クロックパルス算出手段１０５は図３に示すフローチャートを用いて有効クロック信号変化を算出するものとする。
【００９７】
機能シミュレーション手段１０３は、まず、回路記述記憶手段１０１に記憶された図１１に示す回路記述にテストベクタ記憶手段１０２に記憶された図１２に示すテストベクタ記述を印加した場合の各インスタンスの入力端子・出力端子の信号変化がどのようになるかを擬似的に算出(シミュレーション)し、図１３に示すような信号変化を信号変化記憶手段１０４に出力する。
【００９８】
次に、機能シミュレーション手段１０３は、同様にして、回路記述記憶手段１０１に記憶された図１７に示す回路記述にテストベクタ記憶手段１０２に記憶された図１２に示すテストベクタ記述を印加した場合に各インスタンスの入力端子・出力端子の信号変化がどのようになるかを擬似的に算出(シミュレーション)し、図１８に示す信号変化記憶手段１０４に出力する。
【００９９】
したがって、信号変化記憶手段１０４には、図１１の回路記述に基づく図１３に示すような信号変化と、図１７の回路記述に基づく図１８に示すような信号変化とがそれぞれ記憶されることになる。
【０１００】
続いて、有効クロックパルス算出手段１０５は、実施形態２の場合と同様に、図３に示すフローチャートに基づいて、回路記述記憶手段１０１に記憶された図１１に示す回路記述と、信号変化記憶手段１０に記憶されたレジスタ記述の各クロック端子ＦＦ１／ＣＫ、ＦＦ２／ＣＫの信号変化とレジスタ記述の出力端子ＦＦ１／Ｑ，ＦＦ２／Ｑの信号変化とから有効クロック信号変化を図１５に示す形式で抽出し、これを有効クロック信号変化記憶手段１０６に記憶する。
【０１０１】
引き続いて、クロック信号変化差分算出手段６０１は、図７のフローチャートに示すように、まず、ステップ７０１で信号変化記憶手段１０４より図１８に示すレジスタのクロック信号変化情報を比較元のクロック信号変化情報として読み込む。
【０１０２】
次に、ステップ７０２で有効クロック信号変化記憶手段１０６から図１５に示すクロック信号変化情報を比較先のクロック信号変化情報として読み込む。
【０１０３】
続いて、ステップ７０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理していなければステップ５０４に進み、未処理の比較元のクロック信号変化の１つＦＦ１／ＣＫを対象比較元のクロック信号変化とする。
【０１０４】
ステップ７０５で、図１８に示す対象比較元のクロック信号変化ＦＦ１／ＣＫと同じ図１５に示すクロック入力のクロック信号変化ＦＦ１／ＣＫを対象比較先のクロック信号変化とする。
【０１０５】
そして、ステップ７０６で、図１５の比較先のクロック信号変化ＦＦ１／ＣＫとしては存在するが、図１８の比較元のクロック信号変化ＦＦ１／ＣＫとしては存在しないクロックパルスをクロック信号変化差分情報として算出し(図１９参照)、この情報をクロック信号変化差分記憶手段６０２に記憶する。そして、ステップ７０３に戻る。
【０１０６】
ステップ７０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、ＦＦ２／ＣＫについて処理していないのでステップ５０４に進む。
【０１０７】
ステップ７０４で、次に未処理の比較元クロック信号変化の１つＦＦ２／ＣＫを対象比較元クロック信号変化とする。
【０１０８】
ステップ７０５で、図１８に示す対象比較元クロック信号変化ＦＦ２／ＣＫと同じ図１５に示すクロック入力の比較先クロック信号変化ＦＦ２／ＣＫを対象比較先クロック信号変化とする。
【０１０９】
ステップ７０６で、図１５の比較先のクロック信号変化にあって図１８の比較元のクロック信号変化には無いクロックパルスをクロック信号変化差分情報として算出し(図１９参照)、クロック信号変化差分記憶手段６０２に記憶する。そして、ステップ５０３に戻る。
【０１１０】
ステップ７０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理したので終了する。
【０１１１】
このようにして、図１１に示す回路記述と、図１７に示すクロック制御回路Ｘ１，Ｘ２を挿入した回路記述と、図１２に示すテストベクタ記述とから、図１９に示すようなクロック信号変化差分情報を算出することにより、ＬＳＩ設計者の挿入したクロック制御回路Ｘ１，Ｘ２における制御動作の誤りを検証することが可能となる。
【０１１２】
これは、従来、シミュレーション結果のみから誤りを検証する方法と比較して、原因個所が即座に特定できるので効率的である。
【０１１３】
実施形態５
図８はこの実施形態５に関わるクロック最適化装置の構成を示すブロック図である。
【０１１４】
実施形態１〜３に示したような本発明のクロック最適化装置を用いてクロッパルスの最適化を図るのみならず、その最適化を実現するためのクロック制御回路を元の回路記述に挿入した最適化済の回路記述が自動的に設計できれば、設計に要する労力を削減できるために都合がよい。
【０１１５】
そこで、この実施形態５では、図１に示した構成に加えて、さらに、クロック制御記述作成手段８０１と、クロック制御記述記憶手段８０２と、クロック制御記述挿入手段８０３と、最適化済回路記述記憶手段８０４とを設けている。
【０１１６】
上記のクロック制御記述作成手段８０１は、図９のフローチャートに示す機能を有し、信号変化記憶手段１０４に記憶された、レジスタ記述のインスタンスのクロック入力端子ＦＦ１／ＣＫ，ＦＦ２／ＣＫにおける信号変化と、有効クロック信号変化記憶手段１０６に記憶された有効クロックパルスとから、レジスタ記述のインスタンスに入力されるクロックパルスの内で各インスタンスのデータ転送に寄与するクロックパルスのみを発生するクロック制御回路(図２０，図２１参照)の記述を算出するものである。
【０１１７】
クロック制御記述記憶手段８０２は、上記のクロック制御記述作成手段８０１で算出されたクロック制御回路記述を記憶する。
【０１１８】
クロック制御記述挿入手段８０３は、図１０のフローチャートに示す機能を有し、クロック制御記述記憶手段８０２に記憶されたクロック制御回路記述を回路記述記憶手段１０１に予め記憶されている回路記述のクロック配線の途中に挿入した回路記述を得るものである。
【０１１９】
最適化済回路記述記憶手段８０４は、上記のクロック制御記述挿入手段８０３で算出されたクロック制御回路記述を記憶する。
【０１２０】
なお、この実施形態５において、回路記述記憶手段１０１と、テストベクタ記憶手段１０２と、機能シミュレーション手段１０３と、信号変化記憶手段１０４と、有効クロックパルス算出手段１０５と、有効クロック信号変化記憶手段１０６の各構成は、実施形態２の場合と基本的に同じであるから、ここでは詳しい説明は省略する。
【０１２１】
次に、この実施形態５のクロック最適化装置において、最適化された回路記述を算出する場合の動作について説明する。
【０１２２】
なお、ここでは、一例として、回路記述記憶手段１０１には図１１に示す回路記述が、テストベクタ記憶手段１０２には図１２に示すテストベクタ記述がそれぞれ事前に記憶されており、また、有効クロックパルス算出手段１０５は図３に示すフローチャートを用いて有効クロック信号変化を算出するものとする。
【０１２３】
ここで、機能シミュレーション手段１０３が図１１に示す回路記述に対して図１２に示すテストベクタ記述を印加した場合を擬似的に算出(シミュレーション)し、続いて、有効クロックパルス算出手段１０４が図３に示すフローチャートを用いて図１５に示す形式の有効クロック信号変化を算出し、これを有効クロック信号変化記憶手段１０６に記憶するまでの動作は、実施形態２の場合と同様であるから、ここでは詳しい説明は省略する。
【０１２４】
次に、クロック制御記述作成手段８０１は、図９のフローチャートに示すように、まず、ステップ９０１で信号変化記憶手段１０４より図１３に示すレジスタのクロック信号変化情報を比較元のクロック信号変化情報として読み込む。
【０１２５】
次に、ステップ９０２で有効クロック信号変化記憶手段１０６より図１５に示すクロック信号変化情報を比較先のクロック信号変化情報として読み込む。
【０１２６】
ステップ９０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理していなければステップ９０４に進み、未処理の比較元のクロック信号変化の１つＦＦ１／ＣＫを対象比較元のクロック信号変化とする。
【０１２７】
続いて、ステップ９０５で、この対象比較元のクロック信号変化ＦＦ１／ＣＫ(図１３参照)と同じクロック入力となる有効クロック信号変化ＦＦ１／ＣＫ(図１５参照)を対象比較先のクロック信号変化とする。
【０１２８】
ステップ９０６で比較元と比較先の両クロックの信号変化ＦＦ１／ＣＫに基づいて、図２０に示すようなステートマシン２００１を生成し、このステートマシン２００１の出力と比較元のクロック信号変化とを共に入力とする論理積記述を含めたクロック制御記述を算出する。そして、この記述情報をクロック制御記述記憶手段８０２に記憶した後、ステップ５０３に戻る。
【０１２９】
ここで、図２０に示すステートマシン２００１は、比較元のクロック信号変化を入力とし、クロックパルスが比較元のクロック信号変化として存在するが、比較先のクロック入力変化としては存在しないときには“１”を、それ以外は“０”を出力する。
【０１３０】
ステップ９０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、ＦＦ２／ＣＫについて処理していないのでステップ５０４に進む。
【０１３１】
ステップ９０４で、次に未処理の比較元クロック信号変化の１つＦＦ２／ＣＫを対象比較元のクロック信号変化とする。
【０１３２】
ステップ９０５で、対象比較元のクロック信号変化ＦＦ２／ＣＫ(図１３参照)と同じクロック入力となる有効クロック信号変化ＦＦ２／ＣＫ(図１５参照)を対象比較先クロック信号変化とする。
【０１３３】
ステップ９０６で、比較元と比較先の両クロックの信号変化ＦＦ２／ＣＫに基づいて、図２１に示すようなステートマシン２００２を生成し、このステートマシン２００２の出力と比較元のクロック信号変化とを共に入力とする論理積記述を含めたクロック制御記述を算出する。そして、この記述情報をクロック制御記述記憶手段８０２に記憶した後、ステップ５０３に戻る。
【０１３４】
ステップ９０３で、全てのレジスタのクロック信号変化ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理しておれば終了する。
【０１３５】
引き続いて、クロック制御記述挿入手段８０３は、図１０のフローチャートに示すように、まず、ステップ１００１で、クロック制御記述記憶手段８０２から図２０および図２１に示すクロック制御記述情報を読み込む。
【０１３６】
次に、ステップ１００２で、回路記述記憶手段１０１より図１１に示す回路記述を読み込む。
【０１３７】
ステップ１００３で、全てのレジスタＦＦ１、ＦＦ２のクロック制御記述を処理したかどうか検査し、処理していない場合にはステップ１００４に進み、図２０に示す未処理のクロック制御記述の１つを対象クロック制御記述とする。
【０１３８】
ステップ１００５で、対象クロック記述に対応するレジスタ記述のクロック入力ＦＦ１／ＣＫを対象クロック入力とする。
【０１３９】
ステップ１００６で、対象クロック入力ＦＦ１／ＣＫと対象クロック入力につながる配線を切断し、図２０に示すクロック制御記述を挿入する。これにより、たとえば、図１７における一方のクロック制御回路Ｘ１が付加されたことになる。そして、ステップ１００３に戻る。
【０１４０】
ステップ１００３で、全てのレジスタＦＦ１、ＦＦ２のクロック制御記述を処理したかどうか検査し、ＦＦ２について処理していないのでステップ１００４に進む。
【０１４１】
次に、ステップ１００４で図２１に示す未処理のクロック制御記述の１つを対象クロック制御記述とする。
【０１４２】
ステップ１００５で、対象クロック記述に対応するレジスタ記述のクロック入力ＦＦ２／ＣＫを対象クロック入力とする。
【０１４３】
ステップ１００６で、対象クロック入力ＦＦ２／ＣＫと対象クロック入力につながる配線を切断し、図２１に示すクロック制御記述を挿入する。これにより、たとえば、図１７における他方のクロック制御回路Ｘ２が付加されたことになる。そして、ステップ１００３に戻る。
【０１４４】
ステップ１００３で、全てのレジスタのクロック制御記述ＦＦ１／ＣＫ、ＦＦ２／ＣＫを処理したかどうか検査し、処理したので、ステップ１００７でクロック制御記述挿入後の最適化された回路記述(図１７参照)を最適化済回路記述記憶手段８０４に記憶する。
【０１４５】
このように、この実施形態５では、図１１に示す回路記述と、図１２に示すテストベクタ記述とから、図１７に示すクロック制御回路Ｘ１，Ｘ２の回路記述を算出することにより、図１１に示す回路記述の仕様が明確化されていない場合でも、図１１に示す回路記述の機能を満足するクロックパルスの削減されたクロック制御回路Ｘ１，Ｘ２を設計することが可能となる。
【０１４６】
【発明の効果】
本発明は、次の効果を奏する。
【０１４７】
(１)  請求項１記載の発明では、回路記述の仕様が明確化されていない場合でも、削減可能なクロックパルスを短時間の内に自動的に調べることできる。そして、この情報に基づいてクロック最適化のためのクロック制御回路を設計する際の機能仕様を与えることが可能となる。したがって、回路記述の機能を何ら損なうことなく、無駄な消費電力を低減したＬＳＩを得ることができる。
【０１４８】
(２)  請求項２記載の発明では、請求項１の構成よりも有効クロックパルスの削減率を一層向上させることができる。
【０１４９】
(３)  請求項３記載の発明では、クロック削減率を判断できるので、回路記述の内のいずれのレジスタ記述のインスタンスに対してクロックパルスを削減すれば消費電力の削減に効果的かといった指針を与えることが可能となる。
【０１５０】
(４)  請求項４記載の発明では、クロック最適化のためにクロックパルスを削減するクロック制御回路を新たに設計する場合、そのクロック制御回路が機能的に誤りが無いかどうかを確実に検証することができる。
【０１５１】
(５)  請求項５記載の発明では、最適化された回路記述を自動的に作成することができ、回路設計の手間と労力を削減することができる。
【図面の簡単な説明】
【図１】本発明の実施形態１および実施形態２に関わるクロック最適化装置のブロック図
【図２】本発明の実施形態１に関わる有効クロックパルス算出手段の動作説明のフローチャート
【図３】本発明の実施形態２に関わる有効クロックパルス算出手段の動作説明のフローチャート
【図４】本発明の実施形態３に関わるクロック最適化装置のブロック図
【図５】図４の装置のクロック削減率算出手段の動作説明のフローチャート
【図６】本発明の実施形態４に関わるクロック最適化装置のブロック図
【図７】図６の装置のクロック信号変化比較手段の動作説明のフローチャート
【図８】本発明の実施形態５に関わるクロック最適化装置のブロック図
【図９】図８の装置のクロック制御記述作成手段の動作説明のフローチャート
【図１０】図８の装置のクロック制御記述挿入手段の動作説明のフローチャート
【図１１】回路記述記憶手段に記憶された回路記述のデータ例を示す図
【図１２】テストベクタ記憶手段に記憶されたテストベクタのデータ例を示す図
【図１３】信号変化記憶手段に記憶されたデータ例を示す図
【図１４】有効クロック信号変化記憶手段に記憶されたデータ例を示す図
【図１５】有効クロック信号変化記憶手段に記憶されたデータ例を示す図
【図１６】クロック削減率記憶手段に記憶されたクロック削減率のデータ例を示す図
【図１７】本発明の実施形態４において回路記述記憶手段に記憶された回路記述のデータ例を示す図
【図１８】図１７の回路に基づいて信号変化記憶手段に記憶された信号変化のデータ例を示す図
【図１９】クロック信号変化差分記憶手段に記憶されたクロック信号変化の差分データの一例を示す図
【図２０】クロック制御記述記憶手段に記憶されたクロック制御回路の回路記述の一例を示す図
【図２１】クロック制御記述記憶手段に記憶されたクロック制御回路の回路記述の一例を示す図
【符号の説明】
１０１…回路記述記憶手段、１０２…テストベクタ記憶手段、１０３…機能シミュレーション手段、１０４…信号変化記憶手段、１０５…有効クロックパルス算出手段、１０６…有効クロック信号変化記憶手段、４０１…クロック削減率算出手段、４０２…クロック削減率記憶手段、６０１…クロック信号変化差分算出手段、６０２…クロック信号変化差分記憶手段、８０１…クロック制御記述作成手段、８０２…クロック制御記述記憶手段、８０３…クロック制御記述挿入手段、８０４…最適化済回路記述記憶手段、Ｘ１，Ｘ２…クロック制御回路。
【図１】
0004209010.tif 000002
【図２】
0004209010.tif 000003
【図３】
0004209010.tif 000004
【図４】
0004209010.tif 000005
【図５】
0004209010.tif 000006
【図６】
0004209010.tif 000007
【図７】
0004209010.tif 000008
【図８】
0004209010.tif 000009
【図９】
0004209010.tif 000010
【図１０】
0004209010.tif 000011
【図１１】
0004209010.tif 000012
【図１２】
0004209010.tif 000013
【図１３】
0004209010.tif 000014
【図１４】
0004209010.tif 000015
【図１５】
0004209010.tif 000016
【図１６】
0004209010.tif 000017
【図１７】
0004209010.tif 000018
【図１８】
0004209010.tif 000019
【図１９】
0004209010.tif 000020
【図２０】
0004209010.tif 000021
【図２１】
0004209010.tif 000022