(57)【要約】【課題】省電力化が可能な回路を生成する。【解決手段】設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置が、経路上の回路素子のいずれかを、記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割し、第１の記憶回路から経路をトレースさせるとともに、第２の記憶回路から経路をトレースし、トレース対象の経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定する。【選択図】図５
2014067222.tif 000002
【特許請求の範囲】
【請求項１】
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置に、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割させ、
前記第１の記憶回路から前記経路をトレースさせるとともに、前記第２の記憶回路から前記経路をトレースさせ、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定させることを特徴とする設計支援プログラム。
【請求項２】
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧が、所定の下限電圧以上になるように設定させることを特徴とする請求項１記載の設計支援プログラム。
【請求項３】
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
トレース対象の前記経路上で、既に新たな電源電圧の設定がされた回路素子がトレースされた場合、前記経路についてのトレースを停止させることを特徴とする請求項１記載の設計支援プログラム。
【請求項４】
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
設定された電源電圧の種類の数が所定数に達したとき、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧を電源電圧として設定させることを特徴とする請求項１記載の設計支援プログラム。
【請求項５】
前記設計支援プログラムにおいて、
前記設計支援装置はさらに、
前記新たな設定電圧を電源電圧として設定させた後、前記新たな設定電圧を電源電圧として設定された回路素子を含む経路のディレイ情報に基づき、前記新たな設定電圧を電源電圧として設定された回路そしを含む経路に、回路素子を挿入させ、
前記新たな設定電圧を電源電圧として設定されるとともに、回路素子が挿入された後の設計支援対象の回路の消費電力が、回路素子が挿入される前の設計支援対象の回路の消費電力よりも小さく、且つ、回路素子を挿入された経路のディレイが、設計支援対象の回路の最大動作周波数における許容ディレイよりも小さい場合、回路素子が挿入された後の設計支援対象の回路の接続情報を前記記憶部に記憶させることを特徴とする請求項１記載の設計支援プログラム。
【請求項６】
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置が、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割し、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき前記第１の記憶回路から前記経路をトレースするとともに、前記第２の記憶回路から前記経路をトレースし、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定することを特徴とする設計支援方法。
【請求項７】
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部と、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割する分割部と、
前記第１の記憶回路から前記経路をトレースするとともに、前記第２の記憶回路から前記経路をトレースするトレース部と、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定する設定部を有することを特徴とする設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、回路設計支援方法及び回路設計支援装置に関する。
【背景技術】
【０００２】
従来、ＬＳＩ（Large Scale Integration）においては、ＲＡＭ（Random Access Memory）や、ラッチ、フリップフロップ、レジスタなどの記憶回路が、ＬＳＩの動作下限電圧を決定しており、ＬＳＩ内に含まれる全ての回路に同一電圧を供給する単一電源電圧の場合には、記憶回路等により決定される動作下限電圧より電圧を下げることはできなかった。
【０００３】
このため、単一電源電圧ではなく、記憶回路以外の組み合わせ回路の電源電圧と記憶回路の電源電圧を別にして、組み合わせ回路の電源電圧を記憶回路の電源電圧よりも低くする方式を採用して、省電力化を図ることになる。しかしながら、記憶回路と組み合わせ回路との境界にレベルシフタを挿入することになる。
【０００４】
例えば、記憶回路の例としてレジスタを用いた場合においてレジスタの動作下限電圧が０．７Ｖであり、レジスタ以外の組み合わせ回路の動作下限電圧が０．５Ｖであるものとすると、レベルシフタを用いない場合には、低電圧且つ低周波数動作の場合には、図１に示すように、レジスタ及び組み合わせ回路の電源電圧の双方を０．７Ｖに設定する。図１の回路には、左端及び右端に矩形で表されたレジスタが設けられており、それらの間に組み合わせ回路（ＮＡＮＤ回路、ＡＮＤ回路、ＮＯＴ回路及びＯＲ回路等を含む）が設けられている。また、高電圧且つ高周波数動作の場合には、図２に示すように、レジスタ及び組み合わせ回路の電源電圧を０．９Ｖに設定することになる。これでは、レジスタ以外の組み合わせ回路の動作下限電圧が０．５Ｖであるのに、組み合わせ回路の電源電圧を０．５Ｖに設定できない。
【０００５】
そこで、図３に示すように、左端のレジスタと組み合わせ回路との境界にレベルシフタ群１０００を挿入し、右端のレジスタと組み合わせ回路との境界にレベルシフタ群１１００を挿入することになる。そうすると、低電圧且つ低周波数動作の場合には、レジスタ側には０．７Ｖの電源電圧を供給し、組み合わせ回路側には０．５Ｖの電源電圧を供給できる。このように組み合わせ回路側ではレジスタ側よりも電源電圧を下げることができ、省電力化が図られる。
【０００６】
一方、シフトレジスタを用いてしまうと、高電圧且つ高周波数動作の場合に、図４に示すように、レジスタも組み合わせ回路も０．９Ｖの電源電圧を供給した場合には、高速動作を求められているにも拘わらず、レベルシフタ群１０００及び１１００分だけディレイが増加してしまう。
【０００７】
従ってレベルシフタを用いない手法が望まれているが、動的に電源電圧と周波数を変化させる制御手法で、例えば処理負荷の高いときに電圧と周波数を上げ、処理負荷の低いときに電圧と周波数を下げる制御を行うＤＶＦＳ（Dynamic Voltage and Frequency Scaling）制御に適切なものは存在していない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−２３７３８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本技術の目的は、一側面によれば、省電力化が可能な回路を生成するための技術を提供することである。
【課題を解決するための手段】
【００１０】
本技術に係る設計支援方法は、設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置により、（Ａ）経路上の回路素子のいずれかを、記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割し、（Ｂ）上記第１の記憶回路から経路をトレースするとともに、第２の記憶回路から経路をトレースし、（Ｃ）トレース対象の経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定する処理を含む。
【発明の効果】
【００１１】
省電力化が可能な回路を生成することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】図１は、低電圧且つ低周波数動作時であってレベルシフタを用いない場合における電圧設定の一例を示す図である。
【図２】図２は、高電圧且つ高周波数動作時であってレベルシフタを用いない場合における電圧設定の一例を示す図である。
【図３】図３は、低電圧且つ低周波数動作時であってレベルシフタを用いる場合における電圧設定の一例を示す図である。
【図４】図４は、高電圧且つ高周波数動作時であってレベルシフタを用いる場合における電圧設定の一例を示す図である。
【図５】図５は、本技術の実施の形態に係る設計支援装置の機能ブロック図である。
【図６】図６は、本実施の形態に係る処理フローを示す図である。
【図７】図７は、ＯＲ回路のＦＥＴ表現を示す図である。
【図８】図８は、ＯＲ回路のセル分割例を示す図である。
【図９】図９は、組み合わせ回路のＦＥＴ表現を示す図である。
【図１０】図１０は、組み合わせ回路のセル分割例を示す図である。
【図１１】図１１は、セル分割を行う場合におけるレイアウト構成例を示す図である。
【図１２】図１２は、セル分割のルールの一例を示す図である。
【図１３】図１３は、回路の具体例を示す図である。
【図１４】図１４は、セル分割後の回路の例を示す図である。
【図１５】図１５は、１つセルをたどる毎に低下される電圧の設定方法を説明するための図である。
【図１６】図１６は、１つセルをたどる毎に低下される電圧の設定方法を説明するための図である。
【図１７】図１７は、電圧設定処理の第１段階を説明するための図である。
【図１８】図１８は、電圧設定処理の第２段階を説明するための図である。
【図１９】図１９は、電圧設定処理の第３段階を説明するための図である。
【図２０】図２０は、電圧設定処理の第４段階を説明するための図である。
【図２１】図２１は、クリティカルパス及び非クリティカルパスを説明するための図である。
【図２２】図２２は、本実施の形態に係る処理フローを示す図である。
【図２３】図２３は、インバータを挿入した場合の回路例を示す図である。
【図２４】図２４は、インバータを挿入した回路例に対して実行された電源設定処理の第１段階を説明するための図である。
【図２５】図２５は、インバータを挿入した回路例に対して実行された電源設定処理の第２段階を説明するための図である。
【図２６】図２６は、インバータを挿入した回路例に対して実行された電源設定処理の第３段階を説明するための図である。
【図２７】図２７は、インバータを挿入した回路例に対して実行された電源設定処理の第４段階を説明するための図である。
【図２８】図２８は、インバータ等の挿入についてのバリエーションを示す図である。
【図２９】図２９は、インバータ等の挿入についてのバリエーションを示す図である。
【図３０】図３０は、インバータ等の挿入についてのバリエーションを示す図である。
【図３１】図３１は、セル分割を行わない場合の電源電圧設定状態の一例を示す図である。
【図３２】図３２は、セル及びサブセルの電源電圧による分類例を示す図である。
【図３３】図３３は、電源電圧及び動作周波数の時間変化の一例を示す図である。
【図３４】図３４は、ＲＡＭを含む場合のエレメント分割を説明するための図である。
【図３５】図３５は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１３】
本技術の実施の形態に係る設計支援装置１００の機能ブロック図を図５に示す。設計支援装置１００は、回路データ格納部１０１と、セル分割データ格納部１０２と、セル分割部１０３と、変更後回路データ格納部１０４と、入力部１０５と、設定データ格納部１０６と、電圧設定部１０７と、非クリティカルパス処理部１０８と、データ格納部１０９と、解析部１１０と、出力部１１１とを有する。
【００１４】
回路データ格納部１０１には、以下で処理を行うデータ（回路の接続情報を規定するネットリストのデータなど）が格納される。セル分割データ格納部１０２は、異なる電源ラインに接続することによって分割可能なセル（回路素子）についてのデータを格納する。セル分割部１０３は、回路データ格納部１０１に格納されている回路のデータに対して、セル分割データ格納部１０２に格納された分割可能なセルについてのデータを用いてセル分割処理を実行して、処理結果を変更後回路データ格納部１０４に格納する。入力部１０５は、ユーザから各種設定データの入力を受け付け、設定データ格納部１０６に格納する。
【００１５】
電圧設定部１０７は、設定データ格納部１０６に格納されている設定データに従って、変更後回路データ格納部１０４に格納された変更後回路データに対して電圧設定処理を実行し、処理結果を変更後回路データ格納部１０４に格納する。
【００１６】
また、非クリティカルパス処理部１０８は、電圧設定部１０７と、ディレイ及び消費電力を見積もる解析部１１０と連携して、変更後回路データ格納部１０４に格納された変更後回路において、非クリティカルパスに対して変更を加えることで消費電力をより削減するための電源電圧の設定を行う。この際、非クリティカルパス処理部１０８は、処理途中のデータをデータ格納部１０９に格納する。ここで、「クリティカルパス」とは、設計対象の回路を含むLSI（Large Scale Integrated circuit）の最大動作可能周波数の逆数である許容ディレイ値を超える記憶回路（RAM、レジスタ、ラッチやFF等）間の経路（パス）をいう。また、「非クリティカルパス」とは、許容ディレイ値に対してディレイ値の余裕がある記憶回路間の経路をいう。
【００１７】
なお、解析部１１０は、従来から存在しているディレイ及び消費電力を見積もるモジュールであり、例えば、ディレイ解析プログラム等により実現される。本実施の形態においては、既知のディレイ解析プログラム等を用いるので、本実施の形態ではこれ以上説明しない。また、解析部１１０は、設計支援装置１００に含まれる場合もあれば、設計支援装置１００とネットワークで接続される他のコンピュータなどに実装される場合もある。
【００１８】
次に、図６乃至図３４を用いて、設計支援装置１００の処理内容を説明する。入力部１０５は、ユーザから、電圧設定部１０７で用いるデータ（例えば、レジスタ間を接続する経路であるパス上の組み合わせ回路に含まれるセルを１つたどる毎に低下される電圧幅、各種セルの最低動作保証電圧についてのデータなど）の入力を受け付け、設定データ格納部１０６に格納する（ステップＳ１）。
【００１９】
そして、セル分割部１０３は、セル分割データ格納部１０２に格納されている分割可能セルのデータを用いて、回路データ格納部１０１に格納されている回路データにおいて分割可能セルを探索し、分割可能セルを検出すると、当該分割可能セルについて予め定められている複数のサブセルに分割し、変更後の回路データを変更後回路データ格納部１０４に格納する（ステップＳ３）。
【００２０】
セルは、ＬＳＩの設計過程において、レイアウトで扱う回路素子の最小単位を表す。セルは、ＦＥＴ（Field Effect Transistor）をいくつか組合せることで得られ、フリップフロップやＡＮＤ論理などの機能単位にまとめたものである。例えば、図７の左側に示すようなＯＲ回路の場合、入力Ａ及びＢのＯＲ演算結果が出力Ｙから出力される。このＯＲ回路では、電源ラインＶＤＤから電源ラインＶＳＳに電流が流れるようになっている。このＯＲ回路を、ＦＥＴで表現すると図７の右側に示すような回路となる。ドレイン電極とゲート電極間、ソース電極とゲート電極間はリーク電流を除けば電流は流れないので、適切なゲート電極部分で回路の分離を行うことができる。すなわち、前半のＦＥＴｆ１乃至ｆ４と、後半のＦＥＴｆ５及びｆ６とで分ければ、電源ラインＶＤＤをＶＤＤ１とＶＤＤ２とで異なるものを用いることができるようになる。すなわち、図７に示したＯＲ回路を、図８に示すようにＦＥＴｆ１乃至ｆ４を含むＮＯＲ回路と、ＦＥＴｆ５及びｆ６を含むインバータとを有する等価論理に分割すれば、２つの電源ラインで２種類の電源電圧を適用できるようになる。
【００２１】
また、図９の左側に示すような２つのＡＮＤと１つのＮＯＲの組み合わせ回路であるＡＮＤ-ＮＯＲ回路については、図９の右側に示すように４つのＦＥＴ群に分けることができる。すなわち、ＶＤＤ１に関係するＦＥＴｆ１１乃至ｆ１４と、ＶＤＤ２に関係するＦＥＴｆ１５乃至ｆ１８と、ＶＤＤ３に関係するＦＥＴｆ１９乃至ｆ２２と、ＶＤＤ４に関係するＦＥＴｆ２３及びｆ２４とである。従って、図１０に示すように、３つのＮＡＮＤと１つのインバータとを含む等価論理に分割することができる。
【００２２】
このようにセル分割する場合、実際にＬＳＩ上のレイアウトとしても、図１１に模式的に示すように形成できる。図１１の例では、縦方向に３本ずつ伸びる電源ラインと、当該電源ラインと電源接続コンタクトビアを介して接続する横方向の電源ラインと、横方向の電源ライン間に設けられている複数のセルと、複数のセルを接続するセル間接続配線とを含む。例えばセルＣ１は、電源ラインＶＤＤ２及びＶＳＳに接続されたセルであるが、セル分割で、電源ラインＶＤＤ２に接続されたサブセルＣ１１及びＣ１２と、電源ラインＶＤＤ３にラインＬ１と接続されたサブセルＣ１３とに分割されている。このように、セル分割を行っても、電源ラインＬ１のような挿入の電源ラインを設けることにより、適切にサブセルに電源電圧を供給できる。
【００２３】
このように１つのセルを、電源を分離可能な複数のサブセルに分割するためのルールを、予めセル分割データ格納部１０２に格納しておく。例えば図１２に示すように、左側に示した探索対象のセルに、右側に示したような分割後のサブセル構成が対応付けられている。ここでは（ａ）乃至（ｄ）の４つの例を示しているが、数に制限はなく、予め電源を分離可能とされる複数の種類のセルについて、分割後のサブセル構成が対応付けられる。ステップＳ３では、図１２における左側のセルを探索し、検出した場合には対応付けられている右側のサブセル構成に置換することで、セル分割を実施する。
【００２４】
例えば、図１３に示すような回路について処理を行う場合、左端のレジスタ群（ラッチ、フリップフロップなど）と右端のレジスタ群との間の組み合わせ回路において、セル５０１乃至５０５については、セル分割データ格納部１０２に格納されている分割可能なセルのデータから、各々複数のサブセルで構成される等価論理回路に置換されて、図１４に示すような回路に変換される。図１４の例では、ＯＲ回路５０１は、ＮＯＲ回路及びインバータの直列接続構成５１１に置換されており、バッファ５０２は、２つのインバータの直列接続構成５１２に置換されており、ＡＮＤ回路５０３は、ＮＡＮＤ回路とインバータの直列接続構成５１３に置換されており、ＯＲ回路５０４は、ＮＯＲ回路とインバータの直列接続構成５１４に置換されており、ＡＮＤ回路５０５は、ＮＡＮＤ回路とインバータの直列接続構成５１５に置換されている。
【００２５】
次に、電圧設定部１０７は、変更後回路データ格納部１０４に格納されている変更後の回路データについて、設定データ格納部１０６に格納されている設定データに従って、最低動作保証電圧が所定の条件を満たすセルから伸びる各パスを当該セルからトレースしつつ、パス上のセル及びサブセル毎に段階的に低下させた電圧を設定する（ステップＳ５）。
【００２６】
最低動作保証電圧が所定の条件を満たすセルについては、例えば組み合わせ回路の最低動作保証電圧より高い最低保証電圧を有するセルである。例えば組み合わせ回路の最低動作保証電圧が０．５Ｖであり、レジスタの最低動作保証電圧が０．７Ｖであれば、レジスタは所定の条件を満たすセルとなる。最低動作保証電圧が０．８ＶのＲＡＭと０．７Ｖのレジスタの両方を含む場合には、レジスタもＲＡＭも所定の条件を満たすセルとなる。
【００２７】
図１４の回路例では、左端及び右端のレジスタが、所定の条件を満たすセルとなる。そして、パスをトレースする際には、１つ先のセル又はサブセルに向かってトレースすると、指定された電圧幅だけ下げられた電圧が設定される。指定電圧幅は、例えばユーザなどにより設定されるが、以下のような考え方の下設定される。すなわち、電源電圧と例えば入力電圧をハイと判断する閾値電圧との差より小さい電圧が設定される。より具体的には、０．１Ｖが、電源電圧と閾値電圧との差である場合には、例えば０．０５Ｖを指定電圧幅として用いる。図１５の左側に示すように、前段のセルでは、電源電圧１．０Ｖであり、前段のセルでは０．９Ｖ以上の入力電圧がハイと判断される。なお、前段のセルでは、０．１Ｖ以下の入力電圧についてはローと判断される。一方、図１５の右側に示すように、後段のセルでは、前段のセルの電源電圧１．０Ｖよりも０．１１Ｖ（＞上記の差０．１Ｖ）上げられた電源電圧１．１１Ｖが印加されており、１．０１Ｖ以上の入力電圧であればハイと判断される。前段のセルでは電源電圧が１．０Ｖなのでこれを超える電圧を後段のセルに入力することはない。従って、前段のセルでハイを出力しても、後段のセルではハイと判断されない。
【００２８】
一方、図１６の右側に示すように、後段のセルの電源電圧が前段のセルの電源電圧１．０Ｖよりも０．０５Ｖ（＜上記の差０．１Ｖ）だけ高い１．０５Ｖであり、０．９５Ｖ以上の入力電圧であればハイと判断される。前段のセルでは電源電圧が１．０Ｖなので前段のセルの出力がハイであれば１．０Ｖ程度の電圧が出力される。従って、０．９５Ｖ以上の電圧が後段のセルに入力されるので、前段の出力「ハイ」は後段でも「ハイ」と判断される。このように、電源電圧とハイと判断する閾値電圧との差よりも小さい値を指定電圧幅として用いる。すなわち、論理的に正しく動作しつつ、電力削減効果を見込めるようになる。１．０Ｖは、一例であって、デバイスやテクノロジの種類によって異なる。従って、それに合わせて指定電圧幅も変更される。
【００２９】
例えば、図１４のような変更後回路の場合、最初に所定の条件を満たすセルとしてレジスタが特定され、当該レジスタに低電圧且つ低周波数動作時の設定として最低動作保証電圧０．７Ｖが設定される（図１７）。
【００３０】
次に、各レジスタから伸びる各パスを、セル又はサブセル１段分トレースし、移行先のセル又はサブセルに対して、上記の例のように指定電圧幅０．０５Ｖだけ低い電源電圧０．６５Ｖを設定する。図１８に示すように、左端のレジスタから右側に１つだけ先のセル又はサブセルにトレースすると共に、右端のレジスタから左側に１つだけ先のセル又はサブセルにトレースすることになる。サブセル構成５１４内のＮＯＲ回路は、図１８では右側に近いサブセルであるが、左端最下段のレジスタから１段目のサブセルなので、０．６５Ｖが設定される。
【００３１】
また、パスのトレース停止条件としては、パスの次のセル又はサブセルに対して既に電源電圧が設定されている場合にはトレースを終了するという条件がある。左端最下段のレジスタからのパスに沿って電源電圧が設定された、サブセル構成５１５内のＮＡＮＤ回路の次のサブセルであるインバータには、右端最下段のレジスタからのパスに沿って電源電圧が設定されているので、両方向のパスのトレースは終了する。
【００３２】
次に、各パスの次のセル又はサブセルに移行して、さらに指定電圧幅０．０５Ｖだけ低い電源電圧０．６０Ｖを設定する。ここで注意すべきは、図１９に示すように、サブセル構成５１４内のＮＯＲ回路の次のセル又はサブセルは、サブセル構成５１４内のインバータだけではなく、サブセル構成５１３内のインバータをも含む。サブセル構成５１４内のインバータについては、右端のレジスタからのパスに沿って同一の電源電圧が設定されるが、ここでパスのトレースを終了する。一方、サブセル構成５１３内のインバータから先のトレースは続く。
【００３３】
さらに、各パスの次のセル又はサブセルに移行して、さらに０．０５Ｖだけ低い電源電圧０．５５Ｖを設定する。図１９の例では、電源電圧未設定のセル又はサブセルはサブセル構成５１３内のＮＡＮＤ回路のみであり、このＮＡＮＤ回路に０．５５Ｖが４つのパスについて同時に設定され、パストレースが完了する。そうすると、図２０に示すような電源電圧設定状態が得られるようになる。
【００３４】
なお、一般的に用意できる電源ラインの数には制限があり、（用意できる電源ラインの数−１）回だけ、パスのトレース中に電源電圧を下げることができる。また、たとえ電源ラインを用意できたとしても、組み合わせ回路の最低動作保証電圧を下回るような電源電圧まで下げることはしない。
【００３５】
このような電源電圧設定状態についてのデータは、変更後回路データ格納部１０４に格納される。なお、この段階で処理を終了させても良い。
【００３６】
次に、非クリティカルパス処理部１０８は、変更後回路データ格納部１０４に格納されている回路データ等を解析部１１０に出力して、ディレイ及び消費電力の見積もり処理を実行させる（ステップＳ７）。上で述べたように、解析部１１０は、従来から存在するツールであって、具体的な処理内容については説明を省略する。なお、ディレイ見積もりについては、Static Timing Analysisツールを使うのが一般的である。Synopsys社のPrimeTimeやCadence社のEncounter Timing Systemなどの製品が使用可能である。前者の製品については消費電力を見積もる機能をも有する。
【００３７】
ディレイ見積もり値については、例えばレジスタ間など、最低動作保証電圧が所定の条件を満たすとされたセル間の各パスについて算出する。また、非クリティカルパス処理部１０８は、解析部１１０から各パスのディレイ見積もり結果及び消費電力見積もり結果を受け取ると、データ格納部１０９に格納する。なお、ディレイ見積もり値と予め設定された基準値との差（ディレイ余裕値）を算出するようにしても良い。
【００３８】
また、非クリティカルパス処理部１０８は、各パスのディレイ見積もり値に基づきディレイ見積もり値が最も大きい又はそれに同等のクリティカルパスを特定し、それ以外の非クリティカルパスを特定する（ステップＳ９）。そして処理は端子Ａを介して図２２の処理フローに移行する。
【００３９】
なお、上で説明してきた回路例の場合、図２１の左上の最上段に位置するレジスタに関係するパス（実線）についてはクリティカルパスとして特定され、点線で示されたパスが非クリティカルパスとして特定されるものとする。
【００４０】
図２２の処理の説明に移行して、非クリティカルパス処理部１０８は、変更後回路データ格納部１０４に格納されている変更後回路において、特定された非クリティカルパスに、インバータ又はバッファを偶数段挿入する（ステップＳ１１）。非クリティカルパスが複数存在する場合には、非クリティカルパスを１つ選択する。また、挿入するインバータ又はバッファの段数は、インバータ等を挿入した後の非クリティカルパスにおける段数がクリティカルパスにおける段数を超えないように、設定する。なお、このような変更後の回路のデータは、例えばデータ格納部１０９に格納しておく。
【００４１】
例えば、上で述べた回路例においてインバータを２つ挿入した例を図２３に示す。図２３の例では、左下の最下段から数えて2番目に位置するレジスタから伸びる非クリティカルパスに２つのインバータを挿入している。この非クリティカルパスについてはセルの段数が少ないために、図１８で示したように、比較的右側に配置されたサブセル構成５１４内のサブセルに電源電圧が早期に設定されてしまう。
【００４２】
そして、非クリティカルパス処理部１０８は、電圧設定部１０７に対して、非クリティカルパスにインバータ等を挿入した後の回路に対して電圧設定処理を実施させる（ステップＳ１３）。すなわち、電圧設定部１０７は、最低動作保証電圧が所定の条件を満たすセルから伸びる各パスを当該セルからトレースしつつ、各パス上のセル及びサブセル１つに対して低下させた電圧を設定する。基本的動作はステップＳ５と同様であり、処理対象の回路の構成が異なる。
【００４３】
図２３に示すような回路の場合、最初のステップで、図２４に示すように電圧が設定される。最下段のパスに挿入された２つのインバータのため、サブセル構成５１４には電圧が設定されていない。次のステップでは、図２５に示すように電圧が設定される。インバータ等の挿入を行わなかった場合には、図１９に示すように第２ステップが終了した時点で電圧未設定のセルは１つだけであったが、図２５ではまだ３つ電圧未設定のセルが残っている。
【００４４】
第３ステップでは、図２６に示すように電圧が設定される。サブセル構成５１３内のＮＡＮＤ回路には４つのパスから同時に０．５５Ｖが設定され、サブセル構成５１４内のＮＯＲ回路には３つのパスから同時に０．５５Ｖが設定される。この段階でも１つ電圧未設定のセルが残る。すなわち、図２０で示すように、インバータ等の挿入を行わなかった場合には、最低設定電圧は０．５５Ｖであったが、このようにインバータ等を挿入すると、図２７に示すように、最低設定電圧が０．５Ｖとなる。
【００４５】
非クリティカルパス処理部１０８は、電圧設定部１０７から電源電圧設定状態についてのデータを受け取り、例えばデータ格納部１０９に格納しておく。
【００４６】
その後、非クリティカルパス処理部１０８は、データ格納部１０９に格納されている変更後の回路のデータ及び電源電圧設定状態についてのデータ等を、解析部１１０に出力して、ディレイ及び消費電力の見積もりを行わせる（ステップＳ１５）。非クリティカルパス処理部１０８は、解析部１１０からディレイ及び消費電力の見積もり結果を受け取り、データ格納部１０９に格納する。
【００４７】
そして、非クリティカルパス処理部１０８は、ディレイ及び消費電力の見積もり結果が、予め定められた条件を満たすか判断する（ステップＳ１７）。予め定められた条件としては、消費電力の見積もり結果が、これまでに見積もられた消費電力の最低値よりも小さい値であるという条件を含む。また、ディレイについては、インバータ等の挿入が、クリティカルパスのディレイに対して悪影響を及ぼさない、すなわちクリティカルパスのディレイが増加しないという条件を含む。なお、ディレイについての条件は、クリティカルパスだけではなく、非クリティカルパスについても条件を設定するようにしても良い。例えば、非クリティカルパスについてのディレイが所定割合又は所定時間以上増加しないといった条件を付加しても良い。
【００４８】
ディレイ及び消費電力の見積もり結果が予め定められた条件を満たさない場合には、インバータを挿入しないので処理はステップＳ２１に移行する。
【００４９】
一方、ディレイ及び消費電力の見積もり結果が予め定められた条件を満たす場合には、非クリティカルパス処理部１０８は、今回インバータ等の挿入を行った後の回路構成のデータ（電源電圧設定状態についてのデータを含む）を、変更後回路データ格納部１０４に格納する（ステップＳ１９）。インバータ等の挿入を行った後の回路構成のデータが、既に変更後回路データ格納部１０４に格納されている場合には、例えば、従前の回路構成のデータを削除した上で、今回インバータ等の挿入を行った後の回路構成のデータを格納する。但し、追加的にデータを格納して、最後に格納したデータを識別できるようにしても良い。
【００５０】
そして、非クリティカルパス処理部１０８は、未処理の非クリティカルパス又は挿入するインバータ等の個数、位置などの未処理のバリエーションが残っているか判断する（ステップＳ２１）。上で述べた処理では２つのインバータを挿入したが、例えば図２８のように４つのインバータを挿入したり、例えば図２９のように挿入する位置を変更するようにしても良い。図２９のような位置へインバータを挿入すると、サブセル構成５１４に対しての効果は維持されるが、サブセル構成５１５への効果はなくなってしまう。このため消費電力が削減できない場合もある。さらに、図３０に示すように、異なる非クリティカルパスに対して２つのインバータを挿入する場合もある。図３０の例では、サブセル構成５１４に対して効果がないので、消費電力削減効果は得られない可能性もある。このように予め定められたルールに従って得られるバリエーションについて総当たりで回路の変更を行ってディレイ及び消費電力の見積もりを実行する。
【００５１】
未処理の非クリティカルパスや未処理のバリエーションが残っている場合には処理はステップＳ１１に戻る。一方、未処理の非クリティカルパスも未処理のバリエーションも残っていない場合には、出力部１１１は、例えば変更後回路データ格納部１０４に格納されているインバータ等の挿入無しの回路データと、最も消費電力が少なく且つインバータ等の挿入有りの回路データとを、表示装置などに出力する（ステップＳ２３）。なお、インバータ等を挿入しても消費電力を削減できない場合には、インバータ等の挿入無しの回路データのみが出力されることになる。なお、消費電力のデータをも変更後回路データ格納部１０４に格納しておき、合わせて出力するようにしても良い。また、インバータ等の挿入有りの回路データのみを出力するようにしても良い。
【００５２】
このような処理を実施することで、消費電力をより削減することができるようになる。
【００５３】
上で述べた例では、図１に示すように本実施の形態を適用せずに単にレジスタの最低動作保証電圧０．７Ｖに下げるだけであれば、消費電力は４９２．９［ｕＷ］と見積もられる。一方、セル分割を行わずにステップＳ５の処理を実施すると、図３１に示すような電源電圧状態が設定される。このような電源電圧状態では、消費電力は４８２．２［ｕＷ］と見積もられる。さらに、本実施の形態のステップＳ５で処理を終了する場合、すなわちセル分割を行っただけの場合（図２０）、消費電力は４７６．９［ｕＷ］と見積もられる。なお、図３に示すようにレベルシフタを導入すると、消費電力は５６８．９［ｕＷ］と見積もられる。このように、ステップＳ５までを実行するだけでも十分効果がある。さらに、図２７のようにインバータを挿入した場合には、消費電力は４７６．５［ｕＷ］と見積もられ、ステップＳ５までを実行した場合よりも効果がある。
【００５４】
なお、これまでに示した電源電圧の設定状態については、低電圧動作時の電源電圧の設定状態を表している。また、この電源電圧の設定状態は、電源ラインの分離をも表しており、図２７に示すように、０．７Ｖから０．５５Ｖまでの電源電圧を用いる場合には、５本の電源ラインを用いることを示している。すなわち、図３２に模式的に示すように、セル又はサブセルは、最低電圧が０．７ＶのゾーンＡと、最低電圧が０．６５ＶのゾーンＢと、最低電圧が０．６ＶのゾーンＣと、最低電圧が０．５５ＶのゾーンＤと、最低電圧が０．５ＶのゾーンＥとに分けられる。ここで、同じ電源ラインにおいても電源を変化させることができるため、高電圧且つ高速駆動の場合には、同じ電源ラインに０．９Ｖを印加する。従って、ゾーンＡでは、電源電圧は０．７Ｖから０．９Ｖの間で変化し、ゾーンＢでは、電源電圧は０．６５Ｖから０．９Ｖの間で変化し、ゾーンＣでは、電源電圧は０．６Ｖから０．９Ｖの間で変化し、ゾーンＤでは、電源電圧は０．５５Ｖから０．９Ｖの間で変化し、ゾーンＥでは、電源電圧は０．５Ｖから０．９Ｖの間で変化する。
【００５５】
より具体的に電源電圧の時間変化及び周波数の時間変化を図３３を用いて説明する。図３３の下段は、周波数の時間変化を表しており、高速駆動の場合には１ＧＨｚとなっており、低速駆動の場合には５００ＭＨｚとなっている。高速駆動と低速駆動の間では、徐々に周波数が減少又は増加するようになっている。図３３の上段は、電源電圧の時間変化を表しているが、図３２で示したゾーン毎に、電源電圧の変化が異なる。ゾーンＡの場合には、最低でも０．７Ｖまでしか電源電圧は下がらないが、ゾーンＥの場合には、最低０．５Ｖまで電源電圧が下がる。このようにゾーン毎に最低電圧と最高電圧の間を、駆動周波数に応じて変化させる。本実施の形態を採用することで、より多くのセルがより低い電圧で動作するようになるので、消費電力が削減される。
【００５６】
なお、本実施の形態は、上で述べたようにレジスタなどだけではなくＲＡＭ等が含まれる場合にも適用可能である。図３４の場合には、ＲＡＭのマクロを複数のサブエレメントに分割した例を示している。図３４の例では、ＲＡＭのマクロは、ＲＡＭアレイと、アドレスデコーダ部Ｋと、ライトデータドライバ及びリードデータバッファ部Ｌとを含む。アドレスデコーダ部Ｋには、下側にレジスタが設けられており、ライトデータドライバ及びリードデータバッファ部Ｌにも、下側にレジスタが設けられている。ＲＡＭアレイには０．８Ｖが最低動作保証電圧として設定され、レジスタには０．７Ｖが最低動作保証電圧として設定される。そして、その他の部分についてセル分割のように電源分離可能なサブエレメントに分割する。そうすると、図３４に示すように、電源電圧０．８Ｖが設定される、ＲＡＭアレイのゾーンＧと、電源電圧０．７Ｖが設定される、レジスタのゾーンＩと、電源電圧０．７５Ｖが設定され且つドライバを含むゾーンＨと、電源電圧０．７Ｖが設定され且つアドレスデコーダのＡＮＤ回路を含むゾーンＪとに分割される。このようにすれば、複数の回路素子又はセル等を含むマクロのようなものであっても省電力化を図ることができるようになる。
【００５７】
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、処理フローについては処理結果が変わらない限り、処理順番を入れ替えたり、複数のステップを並列して実施する場合もある。
【００５８】
さらに、図５に示した設計支援装置１００の機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成とは一致しない場合もある。データの保存態様についても一例に過ぎない。
【００５９】
また、上では非クリティカルパスを見つけた後バリエーションについて自動的に検出する例を示したが、ユーザの指示を受けて、非クリティカルパスについて挿入するインバータの個数や位置を特定するようにしても良い。
【００６０】
なお、上で述べた設計支援装置１００は、コンピュータ装置であって、図３５に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００６１】
以上述べた本実施の形態をまとめると、以下のようになる。
【００６２】
本実施の形態に係る設計支援方法は、（Ａ）回路に含まれる１又は複数のエレメントのうち、異なる電源に接続する複数のサブエレメントに分割可能であると予め定められた種類のエレメントを特定し、（Ｂ）特定されたエレメントを、当該エレメントの種類について予め定められた複数のサブエレメントに分割し、（Ｃ）上記回路に含まれる１又は複数のエレメントのうち動作保証電圧について予め定められた条件を満たすエレメントから伸びる各パスを当該エレメントからトレース（エレメントバイエレメントでたどる）しつつ、当該パス上のエレメント及びサブエレメントに対して上記トレースにつれて低下させられた電源電圧を設定する処理を含む。
【００６３】
このようにすれば、一律にレベルシフタを導入するわけではないので高電圧且つ高速駆動を行う場合でもディレイが増加することが無く、低電圧且つ低速駆動においても、より低い電圧設定が可能となるため省電力化が図られる。
【００６４】
また、上で述べた設定処理において、上記条件を満たすエレメントから伸びるパス上で先に電源電圧の設定がなされているエレメント又はサブエレメントに達した場合には、当該パスについての探索を停止するようにしても良い。また、パス上のエレメント又はサブエレメントに対して設定する電源電圧が所定の下限電圧以上となるように電源電圧を設定する場合もある。さらに、設定する電源電圧の種類の数が予め定められた上限数に達した場合には、以降のパスの探索において電源電圧の変更を停止するようにしても良い。このようにすれば適切且つ効率的に電源電圧の設定がなされるようになる。
【００６５】
さらに、本設計支援方法は、（Ｄ）上で述べた設定する処理によって設定された電源電圧の第１の状態に基づき得られる各パスのディレイのデータに基づき特定される非クリティカルパス上に、インバータ又はバッファを挿入し、（Ｅ）インバータ又はバッファを挿入した後の回路に含まれ且つ動作保証電圧について予め定められた条件を満たすエレメントから伸びる各パスを当該エレメントからトレースしつつ、当該パス上のエレメント及びサブエレメントに対して上記トレースにつれて低下させられた電源電圧を設定し、（Ｆ）インバータ又はバッファを挿入した後の回路について設定された電源電圧の第２の状態に基づき得られる上記回路の消費電力が、第１の状態に基づき得られる上記回路の消費電力より少なく且つ第２の状態に基づき得られるディレイのデータが所定の条件を満たす場合には、インバータ又はバッファを挿入した後の回路の構成及び電源電圧の第２の状態のデータをデータ格納部に格納する処理をさらに含むようにしても良い。このようにすれば、非クリティカルパスについてディレイは増加するが、より省電力となるような電源電圧設定が可能となる場合がある。
【００６６】
なお、上で述べたような処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭなどの光ディスク、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。
【００６７】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００６８】
（付記１）
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置に、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割させ、
前記第１の記憶回路から前記経路をトレースさせるとともに、前記第２の記憶回路から前記経路をトレースさせ、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定させることを特徴とする設計支援プログラム。
【００６９】
（付記２）
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧が、所定の下限電圧以上になるように設定させることを特徴とする付記１記載の設計支援プログラム。
【００７０】
（付記３）
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
トレース対象の前記経路上で、既に新たな電源電圧の設定がされた回路素子がトレースされた場合、前記経路についてのトレースを停止させることを特徴とする付記１記載の設計支援プログラム。
【００７１】
（付記４）
前記設計支援プログラムにおいて、
前記設計支援装置に、
前記新たな設定電圧の設定をさせる場合、
設定された電源電圧の種類の数が所定数に達したとき、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧を電源電圧として設定させることを特徴とする付記１記載の設計支援プログラム。
【００７２】
（付記５）
前記設計支援プログラムにおいて、
前記設計支援装置はさらに、
前記新たな設定電圧を電源電圧として設定させた後、前記新たな設定電圧を電源電圧として設定された回路素子を含む経路のディレイ情報に基づき、前記新たな設定電圧を電源電圧として設定された回路素子を含む経路に、回路素子を挿入させ、
前記新たな設定電圧を電源電圧として設定されるとともに、回路素子が挿入された後の設計支援対象の回路の消費電力が、回路素子が挿入される前の設計支援対象の回路の消費電力よりも小さく、且つ、回路素子を挿入された経路のディレイが、設計支援対象の回路の最大動作周波数における許容ディレイよりも小さい場合、回路素子が挿入された後の設計支援対象の回路の接続情報を前記記憶部に記憶させることを特徴とする付記１記載の設計支援プログラム。
【００７３】
（付記６）
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部を有する設計支援装置が、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割し、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき前記第１の記憶回路から前記経路をトレースするとともに、前記第２の記憶回路から前記経路をトレースし、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定することを特徴とする設計支援方法。
【００７４】
（付記７）
設計支援対象の回路に含まれ、第１の記憶回路と第２の記憶回路の間を接続する経路上の回路素子のうち、複数の回路素子に分割可能である回路素子を特定する回路素子情報を記憶する記憶部と、
前記経路上の回路素子のいずれかを、前記記憶部に記憶された回路素子情報に基づき、複数の回路素子に分割する分割部と、
前記第１の記憶回路から前記経路をトレースするとともに、前記第２の記憶回路から前記経路をトレースするトレース部と、
トレース対象の前記経路に、動作が保証される動作保証電圧が所定の電圧条件を満たす回路素子が存在する場合、前記所定の電圧条件を満たす回路素子に対し、現在の設定電圧よりも所定の電圧だけ低下させた新たな設定電圧を電源電圧として設定する設定部を有することを特徴とする設計支援装置。
【符号の説明】
【００７５】
１００  設計支援装置
１０１  回路データ格納部
１０２  セル分割データ格納部
１０３  セル分割部
１０４  変更後回路データ格納部
１０５  入力部
１０６  設定データ格納部
１０７  電圧設定部
１０８  非クリティカルパス処理部
１０９  データ格納部
１１０  解析部
１１１  出力部
【図１】
2014067222.tif 000003
【図２】
2014067222.tif 000004
【図３】
2014067222.tif 000005
【図４】
2014067222.tif 000006
【図５】
2014067222.tif 000007
【図６】
2014067222.tif 000008
【図７】
2014067222.tif 000009
【図８】
2014067222.tif 000010
【図９】
2014067222.tif 000011
【図１０】
2014067222.tif 000012
【図１１】
2014067222.tif 000013
【図１２】
2014067222.tif 000014
【図１３】
2014067222.tif 000015
【図１４】
2014067222.tif 000016
【図１５】
2014067222.tif 000017
【図１６】
2014067222.tif 000018
【図１７】
2014067222.tif 000019
【図１８】
2014067222.tif 000020
【図１９】
2014067222.tif 000021
【図２０】
2014067222.tif 000022
【図２１】
2014067222.tif 000023
【図２２】
2014067222.tif 000024
【図２３】
2014067222.tif 000025
【図２４】
2014067222.tif 000026
【図２５】
2014067222.tif 000027
【図２６】
2014067222.tif 000028
【図２７】
2014067222.tif 000029
【図２８】
2014067222.tif 000030
【図２９】
2014067222.tif 000031
【図３０】
2014067222.tif 000032
【図３１】
2014067222.tif 000033
【図３２】
2014067222.tif 000034
【図３３】
2014067222.tif 000035
【図３４】
2014067222.tif 000036
【図３５】
2014067222.tif 000037