(57)【要約】【課題】ＳｏＣにおいて、バスマスタとクロック生成回路間の配線が長くなると、ＣＴＳバッファやリピータが複数必要になる。その結果、ＳｏＣ内での遅延ばらつきが増大し、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの適正なタイミングを維持することができず、正常なデータの送受信が行なえない。そのため、基本クロックとクロック同期化信号の遅延ばらつきを解消するクロック同期化回路及び半導体集積回路が、望まれる。【解決手段】図１に示すクロック同期化回路は、基本クロックと、基本クロックとシステムクロックとを同期させる第１の同期化信号と、システムクロックの分周比に関する情報を含む選択信号と、を受け付け、選択信号に基づき第１の同期化信号を所定時間保持し、基本クロックに同期させて、基本クロックとシステムクロックとを同期させる第２の同期化信号を出力する。【選択図】図１
2012181724.tif 000002
【特許請求の範囲】
【請求項１】
基本クロックと、前記基本クロックとシステムクロックとを同期させる第１の同期化信号と、前記システムクロックの分周比に関する情報を含む選択信号と、を受け付け、
前記選択信号に基づき前記第１の同期化信号を所定時間保持すると共に、前記基本クロックに同期させて、前記基本クロックと前記システムクロックとを同期させる第２の同期化信号を出力することを特徴とするクロック同期化回路。
【請求項２】
さらに、データ入力を受け付け前記基本クロックに同期してデータ出力が可能な保持回路をｎ（但し、ｎは１以上の整数）段直列接続し、
前記選択信号に基づいて、前記ｎ段接続した保持回路のデータ入力を、前記第１の同期化信号と、前記ｎ段接続した保持回路であって直前に接続された保持回路のデータ出力の、いずれかに切り替える選択回路と、
を含む請求項１のクロック同期化回路。
【請求項３】
前記システムクロックの分周比に応じて、前記保持回路を直列接続する段数が定まる請求項１又は２のクロック同期化回路。
【請求項４】
さらに、前記第２の同期化信号を出力するか否かを決定する制御信号に基づいて前記第２の同期化信号の出力又は停止を行なう請求項１乃至３いずれか一に記載のクロック同期化回路。
【請求項５】
前記所定時間は、前記基本クロックの周期に前記分周比を乗じた時間である請求項１乃至４いずれか一に記載のクロック同期化回路。
【請求項６】
請求項１乃至５いずれか一に記載のクロック同期化回路と、
前記基本クロックと、前記第１の同期化信号と、前記システムクロックを生成するクロック生成回路と、
前記基本クロックと前記第２の同期化信号に基づき動作するバスマスタと、
を含むことを特徴とする半導体集積回路。
【請求項７】
前記基本クロックの配線は、前記クロック生成回路に接続される配線と前記バスマスタに接続される配線にクロック分岐点で分岐し、
前記クロック分岐点から前記バスマスタの前記基本クロックの入力端子間に実施されるＣＴＳ（Ｃｌｏｃｋ  Ｔｒｅｅ  Ｓｙｎｔｈｅｓｉｓ）により、前記基本クロックと前記第２の同期化信号との遅延差がほぼ解消する範囲に前記クロック同期化回路がレイアウトされる請求項６の半導体集積回路。
【請求項８】
ｍ（但し、ｍは２以上の整数）段の直列接続した前記クロック同期化回路を含む請求項６又は７の半導体集積回路。
【請求項９】
さらに、バス上が転送データで占有されているか否かを検出するバストランザクションモニターを含み、
前記バストランザクションモニターは、前記バスが転送データにより占有されていない場合には、前記クロック同期化回路に対して前記第２の同期化信号の出力を停止させる請求項６乃至８いずれか一に記載の半導体集積回路。
【請求項１０】
さらに、前記システムクロックの周波数変更要求を受け付けると、前記クロック生成回路に対して、前記システムクロックの分周比の変更要求を行うクロック周波数変更シーケンサを含み、
前記クロック生成回路は、前記バストランザクションモニターにより前記バスが転送データにより占有されていないことを検出した場合に、前記システムクロックの分周比の変更を行なう請求項９の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック同期化回路及び半導体集積回路に関する。特に、基本クロックとシステムクロックの同期を実現するクロック同期化信号を生成するクロック同期化回路に関する。
【背景技術】
【０００２】
年々、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に対する高速化の要求が高まっている。そのため、ＣＰＵの基本クロック周波数は上昇の一途である。また、ＣＰＵの高速化を実現するため、ＣＰＵにおけるプロセスは微細化し、ＣＰＵの動作電圧は低下する傾向にある。プロセスが微細化し、電源電圧が低下する状況下では、チップ内における遅延ばらつきを考慮したタイミング設計がより重要となる。
【０００３】
一方、ＣＰＵと、各種バス、メモリ、通信モジュール等のコントローラを同一のチップに集積する半導体集積回路のＳｏＣ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）化が進行している。１チップに高度な機能を備えるＳｏＣは、占有面積が削減できシステムを小型化できることや、小型化に伴う低消費電力化、部品点数の削減など利点が多いためである。
【０００４】
ＳｏＣでは、ＣＰＵと、コントローラやデバイス等との間でデータの送受信が必要であり、バスを介してこれらは接続されることになる。具体的には、図２に示すように、ＣＰＵとＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）モジュール、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ）モジュール等がバスを介して接続される。図２に示す構成においては、ＣＰＵがバスマスタとなり、ＵＳＢモジュール及びＵＡＲＴモジュールがスレーブデバイスとなる。
【０００５】
上述のように、ＣＰＵの基本クロック周波数は上昇の一途をたどっているが、バスを駆動するシステムクロックはＣＰＵの基本クロックと同程度まで高速であることが要求される訳ではない。そのため、システムクロックは基本クロックと比較して低速に設計される。しかし、データの効率的な送受信のためには、基本クロックとシステムクロックは同期している必要がある。
【０００６】
図３は、ＣＰＵの基本クロックＣＬＫと、システムクロックＳＹＳ＿ＣＬＫと、転送データのタイミングの一例を示す図である。例えば、図３に示すデータの転送タイミングにおいては、ＣＰＵは基本クロックの立ち上がりエッジでデータを出力し、バスに接続されたスレーブデバイスはバスに供給されるシステムクロックＳＹＳ＿ＣＬＫの立ち上がりエッジでデータを取り込む。その際に、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期がなされていないと、データの取得が行えない場合が想定される。より具体的には、図３のｔ１〜ｔ２に示す期間よりも両クロックの立ち上がりエッジのタイミングが外れると正常なデータ転送が行えない。
【０００７】
ここで、特許文献１において、基本クロックとシステムクロックの同期化を実現するクロック同期化信号を生成する回路が開示されている。図４に、特許文献１で開示されているクロック同期化信号生成回路を示す（特許文献１の図４）。特許文献１で開示されたクロック同期化信号生成回路は、基本クロックＣＬＫを受け付け、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫを同期させるクロック同期化信号ＣＬＫＥＮを出力する。その際に、システムクロックＳＹＳ＿ＣＬＫの分周比に応じてクロック同期化信号ＣＬＫＥＮを出力するタイミングを変更する。
【０００８】
また、非特許文献１では、基本クロック及びシステムクロックをクロック同期化信号により同期させ、バスアクセスを実現するＣＰＵアーキテクチャが開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第３７３９４３１号公報
【非特許文献】
【００１０】
【非特許文献１】ＡＲＭ社、“Cortex-A9 Technical Reference Manual”、２００８年３月３１日、［online］、［平成23年2月14日検索］、インターネット〈URL：http://infocenter.arm.com/help/topic/com.arm.doc.ddi0388e/DDI0388E_cortex_a9_r2p0_trm.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【００１１】
以下の分析は、本発明の観点からなされたものである。
【００１２】
ＳｏＣには、バスマスタ及びスレーブデバイスが存在しており、バスマスタは基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮを必要とし、スレーブデバイスはシステムクロックＳＹＳ＿ＣＬＫを必要とする。そのため、ＳｏＣでは、ＰＬＬ回路等で生成したクロックから、基本クロックＣＬＫ、システムクロックＳＹＳ＿ＣＬＫ、クロック同期化信号ＣＬＫＥＮを生成するクロック生成回路が用いられる。クロック生成回路の詳細については後述する。
【００１３】
クロック生成回路が生成する基本クロックＣＬＫ及びクロック同期化信号ＣＬＫＥＮは、バスマスタがこれらの信号を受け付けた時に、データの送受信が正常に行えるタイミングを維持していなければならない。そのため、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの遅延ばらつきによる影響を最小限に抑える必要がある。そこで、クロック生成回路を、ＣＰＵ等のバスマスタの近傍に配置することが行われる。
【００１４】
しかし、近年のＳｏＣでは複数のバスマスタを備えることが多く、そのような場合には、全てのバスマスタの近傍にクロック生成回路を配置できない。その結果、バスマスタとクロック生成回路間の配線が長くなってしまう。バスマスタとクロック生成回路間の配線が長くなると、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの遅延ばらつきを解消するため、ＣＴＳ（Ｃｌｏｃｋ  Ｔｒｅｅ  Ｓｙｎｔｈｅｓｉｓ）が実施され、基本クロックＣＬＫの配線に対してＣＴＳバッファが挿入される。さらに、電気的な減衰を補うためリピータ（バッファ）が使用されることもある。
【００１５】
しかし、このようなＣＴＳバッファやリピータを複数使用すると、ＳｏＣ内での遅延ばらつきが増大する。その結果、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの適正なタイミングを維持することができず、データの送受信を正常に行うことができないという問題がある。
【００１６】
本発明の一側面において、基本クロックとクロック同期化信号の遅延ばらつきを解消するクロック同期化回路及び半導体集積回路が、望まれる。
【課題を解決するための手段】
【００１７】
本発明の第１の視点によれば、基本クロックと、前記基本クロックとシステムクロックとを同期させる第１の同期化信号と、前記システムクロックの分周比に関する情報を含む選択信号と、を受け付け、前記選択信号に基づき前記第１の同期化信号を所定時間保持すると共に、前記基本クロックに同期させて、前記基本クロックと前記システムクロックとを同期させる第２の同期化信号を出力するクロック同期化回路が提供される。
【００１８】
本発明の第２の視点によれば、上述のクロック同期化回路と、前記基本クロックと、前記第１の同期化信号と、前記システムクロックを生成するクロック生成回路と、前記基本クロックと前記第２の同期化信号に基づき動作するバスマスタと、を含む半導体集積回路が提供される。
【発明の効果】
【００１９】
本発明の各視点によれば、基本クロックとクロック同期化信号の遅延ばらつきを解消するクロック同期化回路及び半導体集積回路が、提供される。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態の概要を説明するための図である。
【図２】ＳｏＣ内のＣＰＵと各デバイスの接続の一例を示す図である。
【図３】基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫと転送データのタイミングの一例を示す図である。
【図４】従来のクロック同期化信号を生成する回路の回路図である（特許文献１の図４）。
【図５】クロック生成回路の内部構成の一例を示す図である。
【図６】図５に示すクロック生成回路において、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの周期が等しい場合の出力波形の一例を示す図である。
【図７】図５に示すクロック生成回路において、システムクロックＳＹＳ＿ＣＬＫの分周比が２分周である場合の出力波形の一例を示す図である。
【図８】図５に示すクロック生成回路において、システムクロックＳＹＳ＿ＣＬＫの分周比が３分周である場合の出力波形の一例を示す図である。
【図９】図５に示すクロック生成回路において、システムクロックＳＹＳ＿ＣＬＫの分周比が４分周である場合の出力波形の一例を示す図である。
【図１０】ＳｏＣにおけるバスマスタ、スレーブデバイス、クロック生成回路の接続の一例を示す図である。
【図１１】ゲーティングクロックＧＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの関係を説明するための図である。
【図１２】ＳｏＣ内のＣＰＵとクロック生成回路の配置とクロック分岐点の関係を示す図である。
【図１３】ＣＰＵとクロック生成回路間における基本クロックＣＬＫの配線に対するＣＴＳを説明するための図である。
【図１４】本発明の第１の実施形態に係るクロック同期化回路の内部構成の一例を示す図である。
【図１５】基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの周期が等しい場合の各信号の入出力のタイミングを示す図である。
【図１６】システムクロックＳＹＳ＿ＣＬＫの分周比が２分周である場合の各信号の入出力のタイミングを示す図である。
【図１７】システムクロックＳＹＳ＿ＣＬＫの分周比が３分周である場合の各信号の入出力のタイミングを示す図である。
【図１８】ＣＬＫＥＮ＿ＣＴＲＬ信号を変化させた時の各信号の入出力のタイミングを示す図である。
【図１９】図１４に示すクロック同期化回路を含む半導体集積回路の内部構成の一例を示した図である。
【図２０】複数のクロック同期化回路を含む半導体集積回路の内部構成の一例を示す図である。
【図２１】図２０に示す半導体集積回路の各信号の入出力の一例を示すタイミングチャートである。
【図２２】本発明の第２の本実施形態に係る半導体集積回路の内部構成の一例を示す図である。
【図２３】図２２に示す半導体集積回路の各信号の入出力の一例を示すタイミングチャートである。
【図２４】本発明の第３の本実施形態に係る半導体集積回路の内部構成の一例を示す図である。
【図２５】図２４に示す半導体集積回路の各信号の入出力の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００２１】
初めに、図１を用いて実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００２２】
上述のように、バスマスタとクロック生成回路間の配線が長くなると、ＣＴＳバッファやリピータが複数必要になる。ＣＴＳバッファやリピータの遅延量は、一定の範囲でばらつき、このようなＣＴＳバッファやリピータを複数使用すると、ＳｏＣ内での遅延ばらつきが増大する。その結果、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの適正なタイミングを維持することができなくなる。そのため、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの遅延ばらつきを解消するクロック同期化回路及び半導体集積回路が、望まれる。
【００２３】
そこで、図１に示すクロック同期化回路を提供する。図１に示すクロック同期化回路は、基本クロックと、基本クロックとシステムクロックとを同期させる第１の同期化信号と、システムクロックの分周比に関する情報を含む選択信号と、を受け付け、選択信号に基づき第１の同期化信号を所定時間保持し、基本クロックに同期させて、基本クロックとシステムクロックとを同期させる第２の同期化信号を出力する。
【００２４】
図１に示すクロック同期化回路は、基本クロックとシステムクロックを同期させるための第１の同期化信号を受け付ける。基本クロックと第１の同期化信号を受け付けたクロック同期化回路では、選択信号に含まれる情報に基づいて、第１の同期化信号を所定の時間保持し、基本クロックと同期させ、第２の同期化信号として出力する。その結果、基本クロックと第１の同期化信号の間で遅延差（スキュー）が生じていても、クロック同期化回路において、基本クロックと同期した第２の同期化信号を出力することで、基本クロックと第２の同期化信号間の遅延差を解消できる。
【００２５】
また、クロック同期化回路において、第１の同期化信号を保持する時間は、システムクロックの分周比に基づいて決定する。即ち、第１の同期化信号自身が、システムクロックの分周比に基づいて生成される。そこで、クロック同期化回路において第１の同期化信号の周期に相当する時間、第１の同期化信号を遅延させ第２の同期化信号として出力すれば、基本クロックと第２の同期化信号の同期は維持される。
【００２６】
このようなクロック同期化回路を少なくても１以上、バスマスタとクロック生成回路間に配置することで、クロック分岐点からバスマスタまでの基本クロック及びクロック同期化信号の配線が短くなり、チップ内における遅延ばらつきの影響を減少させることができる。その結果、基本クロックとシステムクロックの同期が図れ、正常なデータの送受信が実現できる。
【００２７】
次に、ＳｏＣにおける基本クロックＣＬＫ、システムクロックＳＹＳ＿ＣＬＫ、クロック同期化信号ＣＬＫＥＮを生成するクロック生成回路について説明する。特許文献１において開示されたクロック同期化信号生成回路と分周回路を用いてクロック生成回路を構成することができる。図５は、クロック生成回路１０の内部構成の一例を示す図である。図５に示すクロック生成回路１０はＰＬＬ回路等で生成した基本クロックＣＬＫを受け付け、特許文献１で開示されたクロック同期化信号生成回路１１の出力信号をインバータＩＮＶ０１により反転し、クロック同期化信号ＣＬＫＥＮとして出力する。さらに、分周回路１２で基本クロックＣＬＫを受け付け、システムクロックＳＹＳ＿ＣＬＫとして出力する。
【００２８】
クロック生成回路１０は、基本クロックＣＬＫに対するシステムクロックＳＹＳ＿ＣＬＫの分周比に応じてクロック同期化信号ＣＬＫＥＮの出力タイミングを変更する。図６乃至図９は、クロック生成回路１０において、システムクロックＳＹＳ＿ＣＬＫの分周比を変更した場合の出力波形の一例を示す図である。図６は、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫが同周期である場合の波形であり、図７は、システムクロックＳＹＳ＿ＣＬＫは２分周である場合の波形であり、図８は、システムクロックＳＹＳ＿ＣＬＫは３分周である場合の波形であり、図９は、システムクロックＳＹＳ＿ＣＬＫは４分周である場合の波形である。図６乃至図９の各波形は、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの立ち上がりで同期し、両クロックが同期するタイミングに先立ってクロック同期化信号ＣＬＫＥＮがアクティブになる。なお、図６乃至図９の各波形におけるクロック同期化信号ＣＬＫＥＮはハイアクティブである。
【００２９】
次に、ＳｏＣにおけるバスマスタ、スレーブデバイス、クロック生成回路の関係について説明する。図１０は、ＳｏＣにおけるバスマスタ、スレーブデバイス、クロック生成回路の接続の一例を示す図である。図１０においては、バスマスタとなるＣＰＵが基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮを受け付け、スレーブデバイスはクロック生成回路からシステムクロックＳＹＳ＿ＣＬＫを受け付ける。なお、図１０では、スレーブデバイスがクロック生成回路から直接システムクロックＳＹＳ＿ＣＬＫを受け付けているが、バス調停回路のような制御回路を備える場合には、バスに供給されたシステムクロックＳＹＳ＿ＣＬＫを間接的に受け付ける形態であっても良い。なお、以降の説明においては、システムクロックＳＹＳ＿ＣＬＫはバスに直接供給するものとする。
【００３０】
ＣＰＵは、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮをクロックゲーティングセルでこれらのクロックを受け付ける。クロックゲーティングセルでは、ゲーティングクロックＧＣＬＫを生成し、バスインターフェイス回路に供給することで、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期化とバスインターフェイス回路における低消費電力化を実現する（図１１参照）。以上のような構成により、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期を実現する。
【００３１】
ここで、図６乃至図９の各波形を再度検証する。図６乃至図９に示す波形はクロック生成回路１０から出力される波形のタイミングを示すものであるが、このタイミングはバスマスタ及びスレーブデバイスが受け付ける時点で維持されていなければならない。図６乃至図９の各波形から、クロック同期化信号ＣＬＫＥＮは基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの立ち上がりエッジ（両クロックの同期タイミング）より基本クロックの１周期前にアクティブになることが分かる。このことは、クロック同期化信号ＣＬＫＥＮをアクティブに設定できるタイミングが基本クロックＣＬＫの周期に依存することを意味する。
【００３２】
即ち、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫが同期するタイミングにおいて、基本クロックＣＬＫの１周期より前にクロック同期化信号ＣＬＫＥＮがアクティブになるとバスマスタ側の同期がとれない。例えば、図９においては、時刻ｔ５において基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期をとるためには、クロック同期化信号ＣＬＫＥＮは時刻ｔ４とｔ５の間でアクティブにならなければならず、時刻ｔ４以前にアクティブになるとバスマスタ側で同期がとれないことになる。従って、クロック生成回路１０から出力された時点では基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングが正しく維持されていたとしても、バスマスタとクロック生成回路１０間の配線等の影響により両信号のタイミングがずれると正常なデータの入出力が実現できない。
【００３３】
上述のように、近年のＣＰＵは高速化が顕著であり、基本クロックＣＬＫは高速であるため基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持することが困難になってきている。一方、システムクロックＳＹＳ＿ＣＬＫについては基本クロックＣＬＫよりも低速であるので、時刻ｔ３からｔ５の間でクロック同期化信号ＣＬＫＥＮがアクティブになれば良い。そのため、バスマスタとクロック生成回路１０間の配線の影響と比較して、クロック生成回路１０とスレーブデバイス間の配線の影響は軽微であると言える。以上のことから、バスマスタにおいて、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持することがデータ転送においては必要となる。
【００３４】
基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持する方法としては、バスマスタとクロック生成回路を近接して配置することが考えられる。
【００３５】
図１２は、バスマスタであるＣＰＵとクロック生成回路１０の配置とクロック分岐点の関係を示す図である。図１２に示すように、クロック生成回路１０で受け付ける基本クロックＣＬＫはＰＬＬ回路により生成され、特許文献１で開示されたクロック同期化信号生成回路のフリップフロップによって、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの同期が行われる。その後、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮは、それぞれＣＰＵに配線される。その配線の際に、ＣＰＵとクロック生成回路が近接していれば、配線の影響を抑制することができ、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのチップ内における遅延ばらつきの影響は最小限に抑制することができる。
【００３６】
一方、近年のＳｏＣでは、バスマスタを複数備えることが多く、そのような場合には、全てのバスマスタの近傍にクロック生成回路１０を配置することができない。そこで、図１３に示すように、ＣＰＵとクロック生成回路間における基本クロックＣＬＫの配線に対してＣＴＳを実施し、ＣＰＵが基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮを受け付けるタイミングを調整する。さらに、クロック同期化信号ＣＬＫＥＮの配線が長い場合には、リピータが使用されることもある。
【００３７】
また、基本クロックＣＬＫの配線に使用されるＣＴＳバッファとクロック同期化信号ＣＬＫＥＮの配線に使用するリピータそれぞれの遅延量は、一定の範囲でばらつき、そのようなＣＴＳバッファとリピータを複数使用すると、ＳｏＣ内の遅延ばらつきが増大する。その結果、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの適正なタイミングを維持することができず、データの送受信を正常に行うことができない可能性がある。
【００３８】
［第１の実施形態］
次に、本発明の第１の実施形態について、図面を用いてより詳細に説明する。図１４は、本実施形態に係るクロック同期化回路２０の内部構成の一例を示す図である。
【００３９】
図１４に示すクロック同期化回路２０は、フリップフロップ２１と、フリップフロップ２２１乃至２２ｎ（但し、ｎは１以上の整数、以下同じ）と、マルチプレクサ２３１乃至２３ｎと、ＡＮＤ回路２４と、セレクタ２５から構成されている。
【００４０】
クロック同期化回路２０は、基本クロックＣＬＫと、クロック生成回路１０の出力するクロック同期化信号ＩＣＬＫＥＮ（第１の同期化信号に相当）と、システムクロックの分周比に関する情報を含むＣＬＫＤＩＶ信号と、クロック同期化回路２０の出力許可又は停止を制御するＣＬＫＥＮ＿ＣＴＲＬ信号を受け付ける。また、クロック同期化回路２０からはクロック同期化信号ＯＣＬＫＥＮ（第２の同期化信号に相当）を出力する。
【００４１】
フリップフロップ２２１乃至２２ｎは、マルチプレクサ２３１乃至２３ｎを介して直列に接続されており、フリップフロップ２２ｎで、クロック同期化信号ＩＣＬＫＥＮを受け付ける。また、フリップフロップ２２１乃至２２ｎのデータ出力端子はマルチプレクサ２３１乃至２３ｎの入力端子に接続される。
【００４２】
マルチプレクサ２３１乃至２３ｎの他の入力端子は、クロック同期化信号ＩＣＬＫＥＮと接続されている。マルチプレクサ２３１乃至２３ｎの出力は、セレクタ２５が出力する制御信号により切り替えられる。
【００４３】
ＡＮＤ回路２４は、マルチプレクサ２３１の出力とＣＬＫＥＮ＿ＣＴＲＬ信号を受け付け、フリップフロップ２１のデータ入力端子に演算結果を出力する。
【００４４】
フリップフロップ２１は、ＡＮＤ回路２４の出力をデータ入力端子で受け付け、データ出力端子からクロック同期化信号ＯＣＬＫＥＮとして出力する。フリップフロップ２１とフリップフロップ２２１乃至２２ｎのクロック端子には基本クロックＣＬＫが入力される。
【００４５】
セレクタ２５は、ＣＬＫＤＩＶ信号を受け付け、ＣＬＫＤＩＶ信号に含まれる情報に基づいてマルチプレクサ２３１乃至２３ｎの出力を切り替える。具体的には、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫが同じ周期であれば、マルチプレクサ２３１の出力をクロック同期化信号ＩＣＬＫＥＮ側に切り替える。システムクロックＳＹＳ＿ＣＬＫの分周比が２分周であれば、マルチプレクサ２３１の出力はフリップフロップ２２１のデータ出力を選択し、マルチプレクサ２３２の出力はクロック同期化信号ＩＣＬＫＥＮを選択する。さらに、システムクロックＳＹＳ＿ＣＬＫの分周比が３分周であれば、マルチプレクサ２３１の出力はフリップフロップ２２１のデータ出力、マルチプレクサ２３２の出力はフリップフロップ２２２のデータ出力、マルチプレクサ２３３の出力はクロック同期化信号ＩＣＬＫＥＮを選択する。このように、システムクロックＳＹＳ＿ＣＬＫの分周比に応じてマルチプレクサの出力を切り替える。
【００４６】
なお、フリップフロップ２２１乃至２２ｎとマルチプレクサ２３１乃至２３ｎの個数はシステムクロックＳＹＳ＿ＣＬＫの分周比によって定まる。例えば、システムクロックＳＹＳ＿ＣＬＫの分周比として４分周まで対応する必要があれば、フリップフロップを４段直列に接続する。
【００４７】
次に、クロック同期化回路２０の動作について説明する。図１５は、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫが等しい（分周比が１）場合の各信号の入出力のタイミングを示す図である。
【００４８】
この場合には、分周比が１であるので、マルチプレクサ２３１の出力はクロック同期化信号ＩＣＬＫＥＮが選択される。また、ＣＬＫＥＮ＿ＣＴＲＬ信号がＨレベルであるため、ＡＮＤ回路２４ではマルチプレクサ２３１の出力を遮断することはない。その結果、フリップフロップ２１において、マルチプレクサ２３１及びＡＮＤ回路２４を介して受け付けたクロック同期化信号ＩＣＬＫＥＮを基本クロックＣＬＫの周期に相当する期間遅延させてクロック同期化信号ＯＣＬＫＥＮを出力する。
【００４９】
図１６は、システムクロックＳＹＳ＿ＣＬＫの分周比が２分周である場合の各信号の入出力のタイミングを示す図である。この場合には、分周比が２であるので、マルチプレクサ２３１の出力はフリップフロップ２２１のデータ出力を選択し、マルチプレクサ２３２の出力はクロック同期化信号ＩＣＬＫＥＮを選択する。その結果、クロック同期化信号ＩＣＬＫＥＮはフリップフロップ２２１とフリップフロップ２１においてそれぞれ基本クロックＣＬＫの周期に相当する期間遅延されてクロック同期化信号ＯＣＬＫＥＮとして出力される。
【００５０】
システムクロックＳＹＳ＿ＣＬＫの分周比が３分周である場合も同様に、クロック同期化信号ＩＣＬＫＥＮは、フリップフロップ２２１及び２２２とフリップフロップ２１において、それぞれ基本クロックＣＬＫの周期に相当する期間遅延されてクロック同期化信号ＯＣＬＫＥＮとして出力される（図１７参照）。
【００５１】
このように、クロック同期化信号ＩＣＬＫＥＮは、基本クロックＣＬＫの周期に分周比を乗じた期間遅延されてクロック同期化信号ＯＣＬＫＥＮとして出力される。また、クロック同期化回路２０において、クロック同期化信号ＩＣＬＫＥＮを遅延する時間は、クロック同期化信号ＩＣＬＫＥＮの周期に相当する。例えば、図１７に示す波形は、システムクロックＳＹＳ＿ＣＬＫの分周比が３分周である場合であるが、この場合には基本クロックＣＬＫの３周期に相当する時間、クロック同期化信号ＩＣＬＫＥＮを遅延させている。この時間は、クロック同期化信号ＩＣＬＫＥＮの周期に等しい。
【００５２】
図１８は、ＣＬＫＥＮ＿ＣＴＲＬ信号を変化させた時の各信号の入出力のタイミングを示す図である。ＣＬＫＥＮ＿ＣＴＲＬ信号をＬレベルに設定すると、ＡＮＤ回路２４の出力はＬレベルとなるため、クロック同期化信号ＯＣＬＫＥＮもＬレベルとなる（時刻ｔ６）。ＣＬＫＥＮ＿ＣＴＲＬ信号を再びＨレベルに設定すれば、クロック同期化信号ＯＣＬＫＥＮの出力も復帰する（時刻ｔ７）。
【００５３】
次に、クロック同期化回路２０を用いたＳｏＣのレイアウトについて説明する。上述のように、近年のＳｏＣ内においては、複数のバスマスタを含むことも多く、そのような場合には、全てのバスマスタの近傍にクロック生成回路１０を配置することができない。その結果、バスマスタとクロック生成回路間１０の配線が長くなってしまい、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持するのが困難となる。
【００５４】
そこで、クロック同期化回路２０をバスマスタの近傍に配置し、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの遅延ばらつきの解消を実現する。図１９は、クロック同期化回路２０を含む半導体集積回路１の内部構成の一例を示した図である。
【００５５】
図１９に示す半導体集積回路１は、クロック生成回路１０と、クロック同期化回路２０と、ＣＰＵ３０と、ＰＬＬ回路４０と、リピータＲ１と、ＣＴＳバッファＣＴＳ１及びＣＴＳ２から構成されている。
【００５６】
クロック生成回路１０は、図５を用いて説明した回路である。クロック同期化回路２０は、図１４を用いて説明した回路である。そのため、両回路の説明は省略する。
【００５７】
ＣＰＵ３０は、半導体集積回路１におけるバスマスタとして機能する。ＰＬＬ回路４０は、基本クロックＣＬＫを生成し、クロック生成回路１０に供給する。
【００５８】
図１９に示す半導体集積回路１は、ＣＰＵ３０とクロック生成回路１０の間にクロック同期化回路２０を備えており、クロック同期化回路２０をＣＰＵ３０の近傍に配置することで、クロック分岐点からのクロック同期化信号ＣＬＫＥＮの配線を短くすることができる。そのため、チップ内ばらつきの影響を減少させることができる。
【００５９】
なぜなら、クロック生成回路１０で生成されたクロック同期化信号ＣＬＫＥＮはクロック同期化回路２０のフリップフロップ２１において基本クロックＣＬＫと同期して出力される。従って、ＣＰＵ３０とクロック生成回路１０間の基本クロックＣＬＫの配線上における分岐点Ｓ１が基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのばらつきの基点となり、分岐点Ｓ１がＣＰＵ３０に近ければ、基本クロックＣＬＫとクロック同期化信号間ＣＬＫＥＮの遅延ばらつきの範囲は減少する。
【００６０】
遅延ばらつきの範囲が狭くなれば、ＣＰＵ３０とクロック同期化回路２０間の配線に対してＣＴＳの実施及びリピータの挿入によって、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮがＣＰＵ３０に到着するタイミングが維持できる。
【００６１】
また、単独のクロック同期化回路２０では、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持できない場合であっても、クロック同期化回路２０を複数用いることで、両信号のタイミングを維持することができる。
【００６２】
図２０は、複数のクロック同期化回路２０を配置した半導体集積回路１ａの内部構成の一例を示す図である。図２０に示す半導体集積回路１ａにおいては、ＣＰＵ３０とクロック生成回路間１０が離れて配置され、単独のクロック同期化回路２０では基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持できないものとする。そのような場合には、複数のクロック同期化回路２０を基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの間に配置する。
【００６３】
その結果、クロック分岐点Ｓ１乃至Ｓ３が基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮの遅延ばらつきの基点となるため、各クロック同期化回路（２０、２０ａ、２０ｂ）の間でＣＴＳを実施すれば、基本クロックＣＬＫとクロック同期化信号ＣＬＫＥＮのタイミングを維持しつつＣＰＵ３０に両信号を供給することが可能になる。
【００６４】
図２１は、図２０に示す半導体集積回路１ａの各信号の入出力の一例を示すタイミングチャートである。図２１に示すように、クロック同期化回路２０の接続段数分、クロック同期化信号ＣＬＫＥＮが遅延してＣＰＵ３０に供給されていくが、各クロック同期化回路（２０、２０ａ、２０ｂ）では入力されたクロック同期化信号ＩＣＬＫＥＮと基本クロックＣＬＫとの同期を維持しつつ、クロック同期化信号ＯＬＫＥＮを出力していくので、システムクロックＳＹＳ＿ＣＬＫと正しく同期をとることができる。
【００６５】
以上のように、クロック同期化回路を少なくても１以上、バスマスタとクロック生成回路間に配置することで、クロック同期化信号ＣＬＫＥＮの分岐バスが短くなり、チップ内における遅延ばらつきの影響を減少させることができる。その結果、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期が図れ、正常なデータの送受信を実現する。
【００６６】
［第２の実施形態］
続いて、第２の実施形態について図面を参照して詳細に説明する。図２２は、本実施形態に係る半導体集積回路２の内部構成の一例を示す図である。図２２において図２０と同一構成要素には、同一の符号を表し、その説明を省略する。
【００６７】
図２０に示す半導体集積回路１ａと半導体集積回路２の相違点は、バストランザクションモニター５０を備える点である。バストランザクションモニター５０は、ＣＰＵ３０の演算回路３１から発行されるＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号と、バス上のトランザクションの有無を示すＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号を受け付ける。
【００６８】
ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号が、Ｈレベルに設定されると演算回路３１からバスインターフェイス回路３２を介してデータ送受信の指示がされたことを意味する。ＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号が、Ｈレベルに設定されていると、バスがデータの送受信のため占有されていることを意味する。
【００６９】
バストランザクションモニター５０から、各クロック同期化回路（２０、２０ａ、２０ｂ）に対してＣＬＫＥＮ＿ＣＴＲＬ信号を出力する。バストランザクションモニター５０は、ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号及びＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号が共にＬレベルであれば、バス上で送受信すべきデータは存在しないものとしてＣＬＫＥＮ＿ＣＴＲＬ信号をＬレベルに設定する。
【００７０】
図２３は、図２２に示す半導体集積回路２の各信号の入出力の一例を示すタイミングチャートである。図２３を用いて、半導体集積回路２の動作について説明する。
【００７１】
ＣＰＵ３０においてキャッシュがヒットした場合などは、バスに対してアクセスをする必要がない。そのため、ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号及びＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号がＬレベルになる（時刻ｔ８）。ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号及びＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号がＬレベルに設定されると、バストランザクションモニター５０は、ＣＬＫＥＮ＿ＣＴＲＬ信号をＬレベルに設定する。ＣＬＫＥＮ＿ＣＴＲＬ信号がＬレベルに設定されると、各クロック同期化回路（２０、２０ａ、２０ｂ）では、クロック同期化信号ＯＣＬＫＥＮの出力を停止する（図１８参照）。
【００７２】
クロック同期化信号ＯＣＬＫＥＮがＬレベルに設定されると、クロックゲーティングセルによるゲーティングクロックＧＣＬＫの生成が行われず、バスインターフェイス回路３２によるバスへのアクセスは停止する。
【００７３】
一方、ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号及びＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号が共にＬレベル以外であれば、バス上で送受信すべきデータは存在するのでＣＬＫＥＮ＿ＣＴＲＬ信号はＨレベルに設定する（時刻ｔ９）。
【００７４】
以上のように、半導体集積回路２においてバスアクセスが必要な時に限り、クロック同期化信号ＯＣＬＫＥＮがアクティブになるため、バスインターフェイス回路３２の動作電力が低減できる。
【００７５】
［第３の実施形態］
続いて、第３の実施形態について図面を参照して詳細に説明する。図２４は、本実施形態に係る半導体集積回路３の内部構成の一例を示す図である。図２４において図２２と同一構成要素には、同一の符号を表し、その説明を省略する。
【００７６】
半導体集積回路２と半導体集積回路３との相違点は、クロック周波数変更シーケンサ６０を備える点である。
【００７７】
クロック周波数変更シーケンサ６０は、ＣＰＵ３０の演算回路３１から出力されるＦＲＥＱ＿ＣＨＧ信号を受け付ける。ＣＰＵ３０は、ＦＲＥＱ＿ＣＨＧ信号を用いてクロック周波数変更シーケンサ６０に対し、システムクロックＳＹＳ＿ＣＬＫの周波数の変更（分周比の変更）を要求する。
【００７８】
また、クロック生成回路１０ａとクロック周波数変更シーケンサ６０は、Ｆｒｅｑ＿Ｃｈｇ＿Ｒｅｑ信号とＦｒｅｑ＿Ｃｈｇ＿Ａｃｋ信号を使ってシステムクロックＳＹＳ＿ＣＬＫの周波数を変更する際のハンドシェイクを行う。さらに、クロック生成回路１０ａとバストランザクションモニター５０ａ間でも、Ｃｌｋ＿Ｓｔｏｐ＿Ｒｅｑ信号とＣｌｋ＿Ｓｔｏｐ＿Ａｃｋ信号によりハンドシェイクを行う。
【００７９】
図２５は、半導体集積回路３の各信号の入出力の一例を示すタイミングチャートである。図２５を用いて、半導体集積回路３の動作について説明する。ＣＰＵ３０から、システムクロックＳＹＳ＿ＣＬＫの周波数を変更する場合には、ＦＲＥＱ＿ＣＨＧ信号をクロック周波数変更シーケンサ６０に対して発行する。ＦＲＥＱ＿ＣＨＧ信号を受け付けたクロック周波数変更シーケンサ６０では、Ｆｒｅｑ＿Ｃｈｇ＿Ｒｅｑ信号をアサートすることで、クロック生成回路１０ａに対して周波数変更要求を行う（時刻ｔ１０）。
【００８０】
Ｆｒｅｑ＿Ｃｈｇ＿Ｒｅｑ信号を受け付けた、クロック生成回路１０ａはＣｌｋ＿Ｓｔｏｐ＿Ｒｅｑをアサートすることで、バストランザクションモニター５０ａに対してクロック停止を要求する（時刻ｔ１１）。
【００８１】
バストランザクションモニター５０ａでは、ＢＩＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号及びＣＰＵ＿ＴＲＡＮＳＡＣＴＩＯＮ信号がＬレベルの際に、ＣＬＫＥＮ＿ＣＴＲＬ信号をＬレベルに設定する。ＣＬＫＥＮ＿ＣＴＲＬ信号がＬレベルに設定されると、クロック同期化信号ＯＣＬＫＥＮが出力されず、バスインターフェイス回路３２におけるデータ転送は停止する。その後、バストランザクションモニター５０ａでは、Ｃｌｋ＿Ｓｔｏｐ＿Ａｃｋ信号をアサートする（時刻ｔ１２）。
【００８２】
クロック生成回路１０ａでは、Ｃｌｋ＿Ｓｔｏｐ＿Ａｃｋ信号がアサートされるとシステムクロックＳＹＳ＿ＣＬＫの出力を停止する。その後、システムクロックＳＹＳ＿ＣＬＫの周波数を変更後、Ｆｒｅｑ＿Ｃｈｇ＿Ａｃｋ信号をアサートし、Ｃｌｋ＿Ｓｔｏｐ＿Ｒｅｑ信号のアサートを解除する（時刻ｔ１３）。
【００８３】
クロック周波数変更シーケンサ６０では、Ｆｒｅｑ＿Ｃｈｇ＿Ａｃｋ信号がアサートされると、Ｆｒｅｑ＿Ｃｈｇ＿Ｒｅｑ信号のアサートを解除し、Ｆｒｅｑ＿Ｃｈｇ＿Ａｃｋ信号のアサートが解除されるのを待つ。Ｆｒｅｑ＿Ｃｈｇ＿Ａｃｋ信号のアサートが解除されると、システムクロックＳＹＳ＿ＣＬＫの周波数変更シーケンスが終了する（時刻ｔ１４）。また、バストランザクションモニター５０はＣｌｋ＿Ｓｔｏｐ＿Ｒｅｑ信号のアサートが解除されるのを待って、Ｃｌｋ＿Ｓｔｏｐ＿Ａｃｋ信号のアサートを解除する。
【００８４】
なお、本実施形態においてはＣＰＵ３０からシステムクロックＳＹＳ＿ＣＬＫの周波数変更要求がなされる場合について説明したが、これに限定されるものではなく、他の回路等からシステムクロックＳＹＳ＿ＣＬＫの周波数変更要求がなされることもある。
【００８５】
以上のように、本実施形態においては、クロック周波数変更シーケンサ６０とバストランザクションモニター５０ａを使用し、バス上にトランザクションがない状況下でシステムクロックＳＹＳ＿ＣＬＫを変更する。クロック周波数変更シーケンサ６０とバストランザクションモニター５０ａにより、システムクロックＳＹＳ＿ＣＬＫの周波数変更シーケンスに対応することで、ハードウェアによる高速なシステムクロックＳＹＳ＿ＣＬＫの周波数変更を実現する。
【００８６】
一方、ＣＰＵ３０が直接、システムクロックＳＹＳ＿ＣＬＫの周波数を変更する場合には、ＳＬＥＥＰコマンド等によってＣＰＵ３０の動作を制限し、システムクロックＳＹＳ＿ＣＬＫを変更する必要がある。ＳＬＥＥＰコマンド等を使用せず、ＣＰＵ３０がバスにアクセスしている最中にシステムクロックＳＹＳ＿ＣＬＫの周波数を変更すると、基本クロックＣＬＫとシステムクロックＳＹＳ＿ＣＬＫの同期がとれなくなり、データの送受信が正常に行えなくなるためである。そのため、ソフトウェアによるシステムクロックＳＹＳ＿ＣＬＫの周波数変更には、ＳＬＥＥＰコマンド等の実行が必要となり、システムクロックＳＹＳ＿ＣＬＫの切り替えに時間を要することになる。
【００８７】
なお、上記の特許文献等の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００８８】
１、１ａ、２、３  半導体集積回路
１０、１０ａ  クロック生成回路
１１  クロック同期化信号生成回路
１２  分周回路
２０、２０ａ、２０ｂ、２０ｃ  クロック同期化回路
２１、２２１〜２２ｎ  フリップフロップ
２３１〜２３ｎ  マルチプレクサ
２４  ＡＮＤ回路
２５  セレクタ
３０  ＣＰＵ
３１  演算回路
３２  バスインターフェイス回路
４０  ＰＬＬ回路
５０、５０ａ  バストランザクションモニター
６０  クロック周波数変更シーケンサ
ＩＮＶ０１  インバータ
Ｒ１〜Ｒ３  リピータ
ＣＴＳ１〜ＣＴＳ６  ＣＴＳバッファ
【図１】
2012181724.tif 000003
【図２】
2012181724.tif 000004
【図３】
2012181724.tif 000005
【図４】
2012181724.tif 000006
【図５】
2012181724.tif 000007
【図６】
2012181724.tif 000008
【図７】
2012181724.tif 000009
【図８】
2012181724.tif 000010
【図９】
2012181724.tif 000011
【図１０】
2012181724.tif 000012
【図１１】
2012181724.tif 000013
【図１２】
2012181724.tif 000014
【図１３】
2012181724.tif 000015
【図１４】
2012181724.tif 000016
【図１５】
2012181724.tif 000017
【図１６】
2012181724.tif 000018
【図１７】
2012181724.tif 000019
【図１８】
2012181724.tif 000020
【図１９】
2012181724.tif 000021
【図２０】
2012181724.tif 000022
【図２１】
2012181724.tif 000023
【図２２】
2012181724.tif 000024
【図２３】
2012181724.tif 000025
【図２４】
2012181724.tif 000026
【図２５】
2012181724.tif 000027