(57)【要約】【課題】複数の回路ブロックの初期化動作におけるピーク電流の低減及びノイズ抑制を可能とするクロック生成技術を提供する。【解決手段】情報処理装置は、入力クロックからエッジの揃った複数種のクロックを生成するクロック生成手段と、複数種のクロックに対する複数種の遅延値を決定する遅延値決定手段と、遅延値決定手段で決定した遅延値に基づいて、複数種のクロックの各々に対して遅延処理を行う遅延設定手段と、遅延設定手段で遅延させた前記複数種のクロックを、対応する回路ブロックの初期化動作時に供給するか否かを制御する制御信号を生成する制御信号生成手段と、制御信号に基づいて、対応する回路ブロックへ供給するクロックを切り替えるクロック制御手段と、を有する。【選択図】図１
2015001832.tif 000002
【特許請求の範囲】
【請求項１】
入力クロックからエッジの揃った複数種のクロックを生成するクロック生成手段と、
前記複数種のクロックに対する複数種の遅延値を決定する遅延値決定手段と、
前記遅延値決定手段で決定した遅延値に基づいて、前記複数種のクロックの各々に対して遅延処理を行う遅延設定手段と、
前記遅延設定手段で遅延させた前記複数種のクロックを、対応する回路ブロックの初期化動作時に供給するか否かを制御する制御信号を生成する制御信号生成手段と、
前記制御信号に基づいて、対応する回路ブロックへ供給するクロックを切り替えるクロック制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記クロック制御手段は、前記対応する回路ブロックの初期化動作時に、前記入力クロックに遅延設定手段で遅延させた前記複数種のクロックの何れかに切り替えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記クロック生成手段は、前記複数種のクロックを、前記入力クロックと同一のクロックとして生成し、
前記遅延値決定手段は、前記複数種のクロックの各々に対して互いに異なる複数種の遅延値を決定する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記複数種の遅延値は、前記入力クロックの周期の１／２Ｎ（Ｎは２以上の整数）として決定される
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記クロック生成手段は、前記複数種のクロックを、前記入力したクロック信号の分周クロックであり互いに異なる分周クロックとして生成し、
前記遅延値決定手段は、前記複数種のクロックの各々に対して、それぞれのクロック周期の１／２Ｎ（Ｎは２以上の整数）を遅延値として決定する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項６】
前記遅延設定手段は、
互いに異なる遅延値を有する複数の遅延付加手段と、
前記複数の遅延付加手段の何れかに切り替える切替手段と、
を含む
ことを特徴とする請求項１乃至５の何れか一項に記載の情報処理装置。
【請求項７】
前記遅延付加手段は、遅延ロックループ（ＤＬＬ）を含むことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記遅延付加手段は、直列に接続された１以上の遅延素子を含むことを特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記回路ブロックは、電源電圧の供給及び遮断が制御可能な回路ブロックであることを特徴とする請求項１乃至８の何れか一項に記載の情報処理装置。
【請求項１０】
前記初期化動作の対象とする複数の回路ブロックをグループ化するグループ化手段を更に有することを特徴とする請求項１乃至９の何れか一項に記載の情報処理装置。
【請求項１１】
入力クロックからエッジの揃った複数種のクロックを生成するクロック生成工程と、
前記複数種のクロックに対する複数種の遅延値を決定する遅延値決定工程と、
前記遅延値決定工程で決定した遅延値に基づいて、前記複数種のクロックの各々に対して遅延処理を行う遅延設定工程と、
前記遅延設定工程で遅延させた前記複数種のクロックを、対応する回路ブロックの初期化動作時に供給するか否かを制御する制御信号を生成する制御信号生成工程と、
前記制御信号に基づいて、対応する回路ブロックへ供給するクロックを切り替えるクロック制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項１２】
コンピュータを、請求項１乃至１０の何れか一項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路ブロックに供給するクロック、特に、それぞれが電源電圧の供給及び遮断が制御可能な複数の回路ブロックに供給するクロックの生成技術に関するものである。
【背景技術】
【０００２】
半導体製造技術の進歩による素子の微細化に伴い、ＬＳＩ（Large Scale Integration）等の情報処理装置は、半導体プロセスの進化に伴い大規模化され、搭載されるトランジスタ数が飛躍的に増大してきている。また、ＬＳＩ等の情報処理装置には、高速動作や低消費電力等の性能向上が求められている。情報処理装置には一般に搭載するＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、演算器もしくは演算ユニット等の演算要素の数を増やすことで処理性能を向上させることができる。しかし、情報処理装置に搭載する演算要素の数を増やすと、消費電力が増大してしまう。
【０００３】
情報処理装置における消費電力には、機能動作により消費されるダイナミック電力と、搭載されているトランジスタに電源を供給するだけで消費されるスタティック電力とがある。ダイナミック電力は、システムクロックに同期して機能動作する際に消費される電力で、クロックエッジに同期して電流が消費される。スタティック電力は、トランジスタの寄生容量に充電される電荷とリーク電流のために消費される電力である。リーク電流を削減するには、電源電圧の供給及び遮断が制御可能な回路構造にする方法が有効である。そのため、ＬＳＩに搭載される電源制御可能な回路ブロックを増やすことで、低消費電力化を実現することが出来る。
【０００４】
ところで、電源制御可能な回路ブロックを処理に用いる場合には、電源が遮断状態から電源供給が復帰する際、対象となる回路ブロックの初期化動作を実行する。このとき、クロックに同期して一度に回路が動作するため通常動作時に比較しより大きな電流が流れ、特に、初期化動作時に用いられるクロックエッジで瞬間的に多くの電流が流れる。また、ＬＳＩに多数の演算要素を搭載した情報処理装置では、電源制御可能な回路ブロックが他種多様な形態で構成されるため、初期化動作もランダムに発生する。そのため、情報処理装置に構成された多数の回路ブロックが、同時に初期化動作を開始した場合、初期化動作用クロックに同期して瞬間的に大きな電流が流れ、信号にノイズ等が発生してしまう。
【０００５】
そこで、特許文献１では、情報処理装置での初期化動作時の瞬間的な電流を抑制するために、回路ブロック毎に初期化動作の開始タイミングを意図的にずらし、ピーク電流を抑える技術が提案されている。また、特許文献２では、情報処理装置の動作時にデータの転送を阻害しない範囲内で 一定量クロックタイミングをずらしてピーク電力を抑える技術が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−２４８５７９号公報
【特許文献２】特開２０１１−０３４４７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載の技術においては、初期化動作に使用する初期化動作用クロックを各回路ブロックに供給する際、サイクル単位でずらして生成している。そのため、システム全体での初期化動作に係る時間を増大させてしまい処理性能が劣化してしまう。また、特許文献２に記載の技術においては、動作時にデータの転送を阻害しない範囲内で一定量クロックタイミングをずらしてピーク電力を抑える。そのため、データ転送が可能となるような遅延調整を回路ブロック間のいたるところで行わなければならず実装に手間がかかる。また、通常動作用クロックの制約を受けるため、自由なタイミングで初期化動作用クロックを調整することが出来ない。 
本発明は、上述の問題点に鑑みなされたものであり、複数の回路ブロックの初期化動作におけるピーク電流の低減及びノイズ抑制を可能とするクロック生成技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の問題点を解決するため、本発明に係る情報処理装置は以下の構成を備える。すなわち、情報処理装置は、入力クロックからエッジの揃った複数種のクロックを生成するクロック生成手段と、前記複数種のクロックに対する複数種の遅延値を決定する遅延値決定手段と、前記遅延値決定手段で決定した遅延値に基づいて、前記複数種のクロックの各々に対して遅延処理を行う遅延設定手段と、前記遅延設定手段で遅延させた前記複数種のクロックを、対応する回路ブロックの初期化動作時に供給するか否かを制御する制御信号を生成する制御信号生成手段と、前記制御信号に基づいて、対応する回路ブロックへ供給するクロックを切り替えるクロック制御手段と、を有する。
【発明の効果】
【０００９】
本発明によれば、複数の回路ブロックの初期化動作におけるピーク電流の低減及びノイズ抑制を可能とするクロック生成技術を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係る情報処理装置の構成例を示す図である。
【図２】第１実施形態における情報処理装置の動作フローチャートである。
【図３】クロック生成部の構成例を示す図である。
【図４】初期化動作用クロックの遅延値設定の例を示す図である。
【図５】遅延値決定部の動作フローチャートである。
【図６】遅延設定部の構成例を示す図である。
【図７】初期化動作における各クロックの開始タイミングを説明する図である。
【図８】各回路ブロックに対するクロックの割り当ての例を示す図である。
【図９】遅延付加前後のクロックのタイミング例を示す図である。
【図１０】処理装置全体の構成を示すブロック図である。
【図１１】第２実施形態に係る情報処理装置の構成例を示す図である。
【図１２】クロック生成部の構成例を示す図である。
【図１３】遅延設定部の構成例を示す図である。
【図１４】電源制御可能な回路の構成を例示的に示す図である。
【発明を実施するための形態】
【００１１】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１２】
（第１実施形態）
本発明に係る情報処理装置の第１実施形態として、複数の回路ブロックを有する情報処理装置１００を例に挙げて以下に説明する。
【００１３】
＜装置構成＞
図１は、第１実施形態に係る情報処理装置１００の構成例を示す図である。ここでは、情報処理装置１００は、クロック生成部１０１、遅延値決定部１０２、遅延設定部１０３、制御信号生成部１０４、クロック制御部１０５、ＯＳＣ１０６、及び４つの回路ブロックＡ１０７〜Ｄ１１０を含む。
【００１４】
オシレータ（ＯＳＣ）１０６は、信号処理の基準となるクロックを生成する機能部である。具体的には、初期化動作のための基準クロックＣＬＫと、通常動作用クロックＣＬＫ４を生成する。
【００１５】
クロック生成部１０１は、初期化動作のための基準クロックＣＬＫから初期化動作時に使用されるエッジの揃った複数種のクロック（ここでは、ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を生成する。クロック生成部１０１は、生成したエッジの揃った複数種のクロックを遅延設定部１０３に供給する。また、クロック生成部１０１は、遅延値決定部１０２に、クロック情報１１１を送信される。クロック情報１１１には、クロック生成部で生成したクロックの周期（分周等含む）やクロック本数の情報が含まれる。
【００１６】
制御信号生成部１０４は、初期化動作時にクロック制御部１０５に送信することになる制御信号を生成する。なお、初期化動作時には、対象となる回路ブロックの初期化を行うため、外部（例えば後述のＣＰＵ１００１）からリセット信号が入力され初期化が実行される。例えば、回路ブロックＡ１０７、回路ブロックＢ１０８、回路ブロックＣ１０９、回路ブロックＤ１１０の各回路ブロックに対応したリセット信号（ＲＥＳＥＴ＿Ａ、ＲＥＳＥＴ＿Ｂ、ＲＥＳＥＴ＿Ｃ、ＲＥＳＥＴ＿Ｄ）が入力される。制御信号生成部１０４は、各回路ブロックに入力されたリセット信号に基づいて、初期化時のクロックを制御する制御信号を生成しクロック制御部１０５に送信する。また、制御信号生成部１０４は、初期化動作の対象となる回路ブロックの情報を保持しており、対象となる回路ブロックの情報１１３を遅延値決定部１０２に送信する。
【００１７】
ここで説明している初期化動作は、システム起動時のように情報処理装置１００の電源遮断状態から電源供給状態に変化した場合の他、情報処理装置１００の処理内容が切り替わる場合に実行される。例えば、情報処理装置１００に含まれる電源制御可能な回路ブロックに対する電源供給が電源遮断状態から電源供給状態に復帰するような場合も含まれる。
【００１８】
図１４は、電源制御可能な回路の構成を例示的に示す図である。例えば、電源電圧の供給及び遮断が制御可能な回路１４０１は、シリコン基板上に構成されたＬＳＩ回路の一部である。回路１４０１は、論理回路で構成される回路ブロック１４０２（ブロック内部の詳細は省略）と、電源を制御する電源制御部１４０３とを含むよう構成される。電源制御部１４０３は、入力信号１４０４の値に基づいて、回路ブロック１４０２に対して電源供給状態にするか電源遮断状態にするかを決定する。電源供給状態のときに回路ブロック１４０２が動作することになる。ここでは、回路ブロックＡ１０７、回路ブロックＢ１０８、回路ブロックＣ１０９、回路ブロックＤ１１０は、それぞれが、図１４に示す構成を含むものとする。
【００１９】
遅延値決定部１０２は、クロック生成部１０１が生成した各クロックに設定する遅延値情報１１２を生成し、遅延値情報１１２を遅延設定部１０３に送信する機能部である。詳細は後述するが、遅延値決定部１０２は、クロック生成部１０１から取得したクロック情報１１１及び、制御信号生成部１０４から取得した回路ブロックの情報１１３に基づいて、各クロックに設定する遅延値情報１１２を生成する。また、遅延値決定部１０２は、回路ブロック情報１１３に応じたクロック本数を決定し、クロック割り当て情報１１４として制御信号生成部１０４に送信するよう構成されている。
【００２０】
遅延設定部１０３は、遅延値決定部１０２で決定された遅延情報に基づき、各クロックに対して遅延を付加する機能部である。そして、遅延設定部１０３は、遅延を付加したクロックを、制御信号生成部１０４及びクロック制御部１０５に供給する。
【００２１】
クロック制御部１０５は、制御信号生成部１０４から送信された制御信号に基づき、初期化動作用クロック（ＣＬＫ０＿Ｄ、ＣＬＫ１＿Ｄ、ＣＬＫ２＿Ｄ、ＣＬＫ３＿Ｄ）と、通常動作用クロック（ＣＬＫ４）を切り替えて各回路ブロックに供給する。ここでは、回路ブロックＡ１０７に供給するクロックＣＬＫ＿Ａは、制御信号ＳＬ＿Ａにより、回路ブロックＢ１０８に供給するクロックＣＬＫ＿Ｂは、制御信号ＳＬ＿Ｂにより制御するものとする。同様に、回路ブロックＣ１０９に供給するクロックＣＬＫ＿Ｃは、制御信号ＳＬ＿Ｃにより、回路ブロックＤ１１０に供給するクロックＣＬＫ＿Ｄは、制御信号ＳＬ＿Ｄにより制御するものとする。
【００２２】
図１０は、情報処理装置１００を含む処理装置全体の構成を示すブロック図である。ＣＰＵ１００１は、処理装置全体の制御を司る機能部である。ＲＯＭ（Read Only Memory）１００２は、ブートプログラムなどを記憶している。ＲＡＭ（Random Access Memory）１００３は、例えばＣＰＵ１００１のワークエリアとして利用される機能部である。ハードディスクドライブ（ＨＤＤ）１００４は、ＯＳ（Operating System）、回路構成情報を作成するためのアプリケーション、並びに様々なデータを格納するための機能部である。
【００２３】
キーボード１００５及びマウス１００６は、ユーザからの指示を受け付けるユーザインタフェースとして機能する。表示制御部１００７は、内部にビデオメモリ及び表示コントローラを内蔵する。表示装置１００８は、表示制御部１００７からの映像信号を受信し、各種の情報を表示するための機能部である。インタフェース（Ｉ／Ｆ）１００９は、各種外部デバイスと接続するための機能部である。例えば、Ｉ／Ｆ１００９は、図１０に示した外部メモリ１０１０を接続することで、処理装置が作成した処理情報を外部メモリ１０１０に書き込むことが出来る。
【００２４】
図１０に示した処理装置に電源が投入されると、ＣＰＵ１００１は、ＲＯＭ１００２に格納されたブートプログラムを実行し、ＨＤＤ１００４に格納されたＯＳをＲＡＭ１００３にロードする。その後、処理情報を作成するアプリケーションを起動することで、所定の処理を行う装置として機能する。また、システム起動時に、情報処理装置１００に対しリセット信号が送信され、情報処理装置１００は電源遮断状態から電源供給状態となり初期化動作が実行される。
【００２５】
図３は、第１実施形態におけるクロック生成部の構成例を示す図である。図３（Ａ）は、異なる回路ブロック（回路ブロックＡ１０７〜回路ブロックＤ１１０）に供給する初期化動作用クロックを同一周期、同一位相で供給する場合の構成を示す図である。この場合、クロック生成部１０１からは、４つのクロック信号（ＣＬＫ０〜ＣＬＫ３）が同一周期、同一位相で出力される。一方、図３（Ｂ）は、異なる回路ブロック（回路ブロックＡ１０７〜回路ブロックＤ１１０）に供給する初期化動作用クロックに分周クロックを利用した場合の構成を示す図である。この場合、クロック生成部１０１からは、元のクロックＣＬＫ０及び、分周器３０２により分周された３つのクロック（ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）が出力される。
【００２６】
図４は、第１実施形態における初期化動作用クロックの遅延値設定の例を示す図である。図４（Ａ）は、同一周期、同一位相で供給する場合の遅延値設定の例である。一方、図４（Ｂ）は、分周クロックを利用する場合の遅延値設定の例である。
【００２７】
遅延値設定４０１では、ＣＬＫ１の遅延値が１／４周期、ＣＬＫ２の遅延値が１／８周期、ＣＬＫ３の遅延値が１／１６周期である初期化動作用クロックを設定することを示す。すなわち、ＣＬＫ０に対し、ＣＬＫ０のクロック周期の１／２Ｎ（Ｎは２以上の整数）が遅延値として設定されている。各クロックに対し異なる遅延値を設定することで、初期化動作用クロックの位相をずらすことが出来る。
【００２８】
一方、遅延値設定４０２は、各クロックに対し１／８周期毎に位相をずらす場合、遅延値設定４０３では、各クロックに対し１／１６周期毎に位相をずらす場合を示している。
【００２９】
図９は、遅延付加前後のクロックのタイミング例を示す図である。図９（Ａ）は、遅延設定部１０３に入力される、同一周期、同一位相の４つのクロック信号（ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を示している。そして、図９（Ｂ）は、遅延設定部１０３から出力される、それぞれが異なる遅延量（位相）を有する４つのクロック信号（ＣＬＫ０＿Ｄ、ＣＬＫ１＿Ｄ、ＣＬＫ２＿Ｄ、ＣＬＫ３＿Ｄ）を示している。
【００３０】
例えば、遅延設定部１０３の入力が図９（Ａ）のｔ１のタイミングで生成されていた場合、遅延設定部１０３の出力信号は、図９（Ｂ）のようになる。ＣＬＫ１＿Ｄは、ｔ１のタイミングでＣＬＫ０の位相を１／４周期ずらしたクロックであり、ＣＬＫ２＿Ｄは、１／８周期ずらしたクロックであり、ＣＬＫ３＿Ｄは、１／１６周期ずらしたクロックである。この場合、各クロックは同一周期であるため、ＣＬＫ１の立ち上がりエッジを遅延させてＣＬＫ１＿Ｄとすることで、他の入力クロック（ＣＬＫ０、ＣＬＫ２、ＣＬＫ３）の立ち上がりエッジをずらすことが出来る。また入力クロックは同一周期であるため、同時に立下りエッジもずらすことが出来る。ここでは、１／（２のべき乗）でクロックの位相調整を行っているが、立ち上がりエッジ、立下りエッジが重ならなければ上記設定以外の値で位相をずらしても良い。
【００３１】
ただし、例えば、ＣＬＫ１を１／４周期ずらしてＣＬＫ１＿Ｄを生成し、ＣＬＫ３を３／４周期ずらしてＣＬＫ３＿Ｄを生成した場合には、ＣＬＫ１＿ＤのクロックとＣＬＫ３＿Ｄのクロックは逆相となる。そのため、ＣＬＫ１＿Ｄの立下りエッジとＣＬＫ３＿Ｄの立ち上がりエッジ、ＣＬＫ１＿Ｄの立ち上がりエッジとＣＬＫ３＿Ｄの立下りエッジがそれぞれ重なる。そのため、別途、重なりの発生回避を考慮した設定が必要となる。
【００３２】
また、図４（Ｂ）の遅延値設定４０４では、ＣＬＫ０の遅延値がＣＬＫ０の１／４周期、ＣＬＫ１がＣＬＫ１の１／４周期、ＣＬＫ２の遅延値がＣＬＫ２の１／４周期、ＣＬＫ３の遅延値がＣＬＫ３の１／４周期で設定することを示している。同様に、遅延値設定４０５は、それぞれのクロックの１／８周期で位相をずらす例を示している。すなわち、それぞれのクロック周期の１／２Ｎ（Ｎは２以上の整数）が遅延値として設定されている。
【００３３】
図９（Ｃ）は、遅延設定部１０３に入力される、４つクロック信号（ＣＬＫ０、及び分周したＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を示している。そして、図９（Ｄ）は、遅延設定部１０３から出力される、それぞれが異なる遅延量（位相）を有する４つのクロック信号（ＣＬＫ０＿Ｄ、ＣＬＫ１＿Ｄ、ＣＬＫ２＿Ｄ、ＣＬＫ３＿Ｄ）を示している。
【００３４】
例えば、遅延設定部１０３の入力が図９（Ｃ）のｔ１のタイミングで生成されていた場合、分周クロックを用いているため、各クロック信号のクロック周期は異なる。ここでは、ＣＬＫ０の周期をＴとすると、ＣＬＫ１の周期は２Ｔ、ＣＬＫ２の周期は４Ｔ、ＣＬＫ３の周期は８Ｔとなる。ここで、例えば、遅延値設定４０１のように、ＣＬＫ１を１／４周期ずらし、ＣＬＫ３を１／１６周期ずらすと、クロックの立ち上がりエッジ同士が重なってしまう。そこで、分周クロックを用いる場合は、図４（Ｂ）に示すように各クロックに対し固定の遅延割合を設定することで重なりが生じないようにする。すなわち、ＣＬＫ０を１／４周期ずらしたＣＬＫ０＿Ｄ、ＣＬＫ１を１／４周期ずらしたＣＬＫ１＿Ｄ、ＣＬＫ２を１／４周期ずらしたＣＬＫ２＿Ｄ、ＣＬＫ３を１／４周期ずらしたＣＬＫ３＿Ｄを生成する。
【００３５】
このように、遅延設定部１０３で遅延付加されたクロックが、クロック制御部１０５を介して、各回路ブロック（ここでは、回路ブロックＡ〜Ｄ）のクロックとして割り当てられることになる。
【００３６】
＜装置の動作＞
図２は、第１実施形態における情報処理装置の動作例を示すフローチャートである。また、図７は、第１実施形態における初期化動作における各クロックの開始タイミングを説明する図である。
【００３７】
図７の最上段には、ＯＳＣ１０６から出力されるクロックである通常動作用クロック（ＣＬＫ４）及び初期化動作用クロック（ＣＬＫ）を示している。ここでは、初期化動作用クロックを通常動作用クロックの１／２の周波数（２倍の周期）のクロックとして説明しているが、その他の周波数のクロックであっても良く、同一であってもよい。そして、次に、ＣＬＫに基づいてクロック生成部１０１により出力されるクロック（ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を示している。更に、遅延設定部１０３により出力されるクロック（ＣＬＫ０＿Ｄ、ＣＬＫ１＿Ｄ、ＣＬＫ２＿Ｄ、ＣＬＫ３＿Ｄ）を示している。
【００３８】
併せて、回路ブロックＡ〜Ｄの各回路ブロックに対応したリセット信号（ＲＥＳＥＴ＿Ａ、ＲＥＳＥＴ＿Ｂ、ＲＥＳＥＴ＿Ｃ、ＲＥＳＥＴ＿Ｄ）の入力タイミングが示されている。そして、当該リセット信号に基づいて制御信号生成部１０４により生成される制御信号（ＳＬ＿Ａ、ＳＬ＿Ｂ、ＳＬ＿Ｃ、ＳＬ＿Ｄ）のタイミングを示す。
【００３９】
そして、図７の最下段には、クロック制御部１０５により出力されるクロック（ＣＬＫ＿Ａ、ＣＬＫ＿Ｂ、ＣＬＫ＿Ｃ、ＣＬＫ＿Ｄ）が示されている。なお、ＣＬＫ＿Ａは、ＳＬ＿Ａの立ち上がりタイミングで、出力されるクロックがＣＬＫ４からＣＬＫ０＿Ｄに切り替わった信号に相当する。同様に、ＣＬＫ＿Ｂは、ＳＬ＿Ｂの立ち上がりタイミングで、出力されるクロックがＣＬＫ４からＣＬＫ１＿Ｄに切り替わった信号に相当する。また、ＣＬＫ＿Ｃは、ＳＬ＿Ｃの立ち上がりタイミングで、出力されるクロックがＣＬＫ４からＣＬＫ２＿Ｄに切り替わった信号に相当する。そして、ＣＬＫ＿Ｄは、ＳＬ＿Ｄの立ち上がりタイミングで、出力されるクロックがＣＬＫ４からＣＬＫ３＿Ｄに切り替わった信号に相当する。
【００４０】
ステップＳ２０１では、情報処理装置１００は、処理に使用する基準クロック（ＣＬＫ）をＯＳＣ１０６からクロック生成部１０１に入力する。
【００４１】
ステップＳ２０２では、クロック生成部１０１は、Ｓ２０１で入力された基準クロックから、エッジの揃った複数種のクロックを生成する。つまり、前述したように、クロック生成部１０１は、４つの初期化動作用クロック（ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を生成する。以降の説明は、前述の図３（Ｂ）の分周クロックを用いた場合に対応する。
【００４２】
ステップＳ２０３では、遅延値決定部１０２は、初期化動作時のクロック情報１１１を取得する。そして、遅延値決定部１０２は、Ｓ２０２で生成したエッジの揃った複数種のクロックの情報をクロック生成部１０１から取得する。クロック情報１１１には、初期化動作用クロックとして使用可能なクロック本数、及びクロック周期、同期関係の情報が含まれる。ここでは、クロック本数が４本、ＣＬＫの分周クロックの情報を取得する。
【００４３】
ステップＳ２０４では、遅延値決定部１０２は、初期化動作時の回路ブロック情報１１３を取得する。そして、遅延値決定部１０２は、初期化動作の対象となる回路ブロック数の情報を制御信号生成部１０４から取得する。特に、電源電圧の供給及び遮断が制御可能な回路ブロックが含まれる場合、処理内容の切り替わり時には再度、回路ブロック情報を取得することになる。これは、電源遮断状態から電源供給が再開する際、処理内容により対象となる回路ブロックが異なるためである。
【００４４】
ステップＳ２０５では、遅延値決定部１０２は、各初期化動作用クロックに対して遅延値の決定を行う。遅延値の決定に関しては、図５を用いて詳細に説明する。
【００４５】
図５は、第１実施形態における遅延値決定部の動作例を示すフローチャートである。
【００４６】
ステップＳ５０１では、遅延値決定部１０２は、Ｓ２０３で取得したクロック情報と、Ｓ２０４で取得した回路ブロック情報から、初期化動作用クロック数と取得した回路ブロック数の比較を行う。
【００４７】
ステップＳ５０２では、遅延値決定部１０２は、Ｓ５０１で比較した結果、初期化動作用クロック数と回路ブロック数が等しいかを判定する。初期化動作用クロック数と回路ブロック数が等しい場合には、Ｓ５０５へと移行する。一方、等しくない場合には、Ｓ５０３へと移行する。ここでは、図１のように初期化動作用クロック数と回路ブロック数が等しい場合を説明するので、Ｓ５０５に移動する。
【００４８】
ステップＳ５０３では、遅延値決定部１０２は、初期化動作用クロック数と回路ブロック数の大小関係を判定する。初期化動作用クロック数の方が回路ブロック数よりも大きい場合には、Ｓ５０５へと移行する。一方、初期化動作用クロック数の方が回路ブロック数よりも小さい場合には、Ｓ５０４へと移行する。ここで、判定結果はクロック割り当て情報１１４として制御信号生成部１０４へと送信される。
【００４９】
ステップＳ５０４では、制御信号生成部１０４は、あらかじめ取得している回路ブロック情報から、回路ブロックのグループ設定を行う。つまり、クロック制御部１０５により設定可能な初期化動作用クロック数の方が回路ブロック数よりも小さいため、全ての回路ブロックに、別の初期化動作用クロックが割り当てられないため、グループ化を行うのである。ここでは、例えば、最優先に初期化動作用クロックを割り当てるグループと、次に割り当てるグループの優先順位を決定する。
【００５０】
図８は、各回路ブロックに対するクロックの割り当ての例を示す図である。例えば、初期化対象となる回路ブロックが５個あり、クロック数が４つの場合には、図８のように、最優先に初期化動作するグループを回路ブロック１、回路ブロック２、回路ブロック３、回路ブロック４を割り当て、次のグループに回路ブロック５を割り当てる。
【００５１】
この場合、最初に優先的に割り当てられたグループ１の処理が行われ、グループ１の回路ブロックの処理が終了した段階で、次に割り当てられたグループ２の処理を行う。この時、グループ単位処理で処理終了を検知し次の処理を開始しても良いし、グループを構成する回路ブロック単位で処理終了を検知し次の処理を開始するようにしても良い。ただし、あらかじめ初期化動作用クロックの個数を十分用意出来れば、初期化対象となる回路ブロックの割り当てが容易となり、グループ割り当ては不要となる。
【００５２】
なお、グループの決定は、各回路ブロックのゲート規模情報やリセットに必要な期間情報を元に決定するとよい。例えば、ゲート規模が大きいブロックを最優先に割り当てたり、リセット期間の短い回路ブロックを最優先に割り当てることが出来る。ただし、ユーザが指定した回路ブロックを優先的に割り当てても良いし、他の回路ブロック動作状態や前述の複数の情報を組み合わせて割り当てを決定しても良い。
【００５３】
ステップＳ５０５では、制御信号生成部１０４は、Ｓ５０４で設定したグループに対して、初期化動作用クロックの割り当てを行う。ここでは、グループ１に４個の回路ブロックが割り当てられているため、各回路ブロックに４つの何れの初期化動作用クロックを割り当てるかを決定する。
【００５４】
グループ内の回路ブロック数が４個以下であるため、図４（Ａ）の遅延値設定４０１〜４０３、及び、図４（Ｂ）の遅延値設定４０４〜４０５のいずれかの遅延値が各クロックに割り当てられる。同一周期、同一位相のクロックの場合には、図４（Ａ）の遅延値設定が利用され、分周クロックを利用する場合には、図４（Ｂ）の遅延値設定が利用されることになる。クロックの割り当ては、Ｓ５０４と同様に、各回路ブロックのゲート規模の情報やリセットに必要な期間の情報を元に優先順位を変更して割り当てても良い。
【００５５】
ステップＳ５０６では、遅延設定部１０３は、初期化動作用クロックの１つを選択する。ここでは、ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３のいずれか１つのクロックを選択する。
【００５６】
ステップＳ５０７では、遅延設定部１０３は、Ｓ５０６で選択したクロックに対する遅延値を取得する。例えば、ＣＬＫ０に対する遅延値を取得する。
【００５７】
ステップＳ５０８では、遅延設定部１０３は、初期化動作の対象となる回路ブロックに供給する全てのクロックに遅延値を取得したかを判定する。全てのクロックの遅延値が取得していない場合は、Ｓ５０６へと移行し、対象となる次のクロックの遅延値を取得する。そして、全てのクロックに対する遅延値の取得が完了すると、動作処理を終了する。
【００５８】
ステップＳ２０６では、遅延設定部１０３は、Ｓ２０５で取得した遅延値に基づき、各クロックに対し遅延を付加する。例えば、前述の分周クロックを用いた場合は、図４（Ｂ）の遅延値設定４０５のように、ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３に対して、それぞれのクロックの１／８周期の遅延を付加する。
【００５９】
なお、遅延値決定部１０２でクロック割り当て情報１１４から初期化動作用クロックの本数が決定され、処理する回路ブロック数が多い場合には、制御信号生成部１０４でグループが決定される。各回路ブロックへの初期化動作用クロックの割り当てが終了した時点で初期化動作用クロックへの切り替えが可能な状態となる。
【００６０】
尚、新たに初期化動作が必要な場合でも、初期化動作の前後で回路ブロックの数が同じであれば、新たな初期化動作用クロック割り当てる処理をバイパスすることも可能である。その場合は、処理が終了した回路ブロックの初期化動作用クロックを、新たな回路ブロックの初期化動作用クロックに割り当てるようにすれば良い。
【００６１】
図６は、第１実施形態における遅延設定部の構成例を示す図である。遅延値決定部１０２から取得した遅延値情報１１２は、各クロックの遅延付加部６０１、遅延付加部６０２、遅延付加部６０３、遅延付加部６０４に供給される。
【００６２】
遅延付加部６０２は、例えば、拡大図に示すように、遅延ロックループ（ＤＬＬ）６０５のように出力クロックを監視して配線遅延を補償する回路構成によって、特定位相をずらすことが出来る。また、遅延素子を直列に１以上並べて任意の遅延値を切替器（切替手段）で選択する構成でも良い。その他の遅延付加部６０１、遅延付加部６０３、遅延付加部６０４も同様の構成となる。
【００６３】
遅延付加部６０１は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ０を、ＣＬＫ０の１／８周期だけ遅延させたＣＬＫ０＿Ｄを出力する。同様に、遅延付加部６０２は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ１を、ＣＬＫ１の１／８周期だけ遅延させたＣＬＫ１＿Ｄを出力する。遅延付加部６０３は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ２を、ＣＬＫ２の１／８周期だけ遅延させたＣＬＫ２＿Ｄを出力する。遅延付加部６０４は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ３を、ＣＬＫ３の１／８周期だけ遅延させたＣＬＫ３＿Ｄを出力する。
【００６４】
ここでは、図７に示されるように、ＣＬＫ０は、Ｔ２１のタイミングにずれたＣＬＫ０＿Ｄ、ＣＬＫ１は、Ｔ２２のタイミングにずれたＣＬＫ１＿Ｄとなる。また、ＣＬＫ２は、Ｔ２３のタイミングにずれたＣＬＫ２＿Ｄ、ＣＬＫ３は、Ｔ２４のタイミングにずれたＣＬＫ３＿Ｄとなる。
【００６５】
ステップＳ２０７では、制御信号生成部１０４は、各回路ブロックへのリセット信号に基づいて、初期化時の制御信号を生成する。すなわち、制御信号生成部１０４は、リセット信号（ＲＥＳＥＴ＿Ａ、ＲＥＳＥＴ＿Ｂ、ＲＥＳＥＴ＿Ｃ、ＲＥＳＥＴ＿Ｄ）を受信すると、対象となる回路ブロックの初期化動作に必要なクロック数から制御信号を生成する。
【００６６】
回路ブロックＡ１０７のリセット信号ＲＥＳＥＴ＿Ａに基づき制御信号ＳＬ＿Ａを生成し、回路ブロックＢ１０８のリセット信号ＲＥＳＥＴ＿Ｂに基づき制御信号ＳＬ＿Ｂを生成する。同様に、回路ブロックＣ１０９のリセット信号ＲＥＳＥＴ＿Ｃに基づき制御信号ＳＬ＿Ｃを生成し、回路ブロックＤ１１０のリセット信号ＲＥＳＥＴ＿Ｄに基づき制御信号ＳＬ＿Ｄを生成する。なお、回路ブロックの初期化動作に必要なクロック数が終了した時点で制御信号はインアクティブになるように制御する。
【００６７】
なお、上記回路ブロックの他に回路ブロックＥが存在した場合には、前述のようにグループ処理が行われ、上記制御信号（ＳＬ＿Ａ、ＳＬ＿Ｂ、ＳＬ＿Ｃ、ＳＬ＿Ｄ）のいずれかの信号が回路ブロックＥの制御信号に割り当てられることになる。
【００６８】
ステップＳ２０８では、クロック制御部１０５は、Ｓ２０７で生成され受信した制御信号により、通常動作用クロックと初期化動作用クロックとの切り替えを行う。ここでは、回路ブロックＡ１０７では、通常動作時は、クロック生成部１０１で生成された通常動作用クロックＣＬＫ４が選択されている。一方、初期化動作時は、元の遅延処理された初期化動作用クロックＣＬＫ０＿Ｄが選択される。
【００６９】
同様に、回路ブロックＢ１０８では、通常動作時は、通常動作用クロックＣＬＫ４が選択され、初期化動作時は、元の遅延処理された初期化動作用クロックＣＬＫ１＿Ｄが選択される。回路ブロックＣ１０９では、通常動作時は、通常動作用クロックＣＬＫ４が選択され、初期化動作時は、元の遅延処理された初期化動作用クロックＣＬＫ２＿Ｄが選択される。回路ブロックＤ１１０では、通常動作時は、通常動作用クロックＣＬＫ４が選択され、初期化動作時は、元の遅延処理された初期化動作用クロックＣＬＫ３＿Ｄが選択される。
【００７０】
以上説明したように第１実施形態によれば、複数の回路ブロックの初期化動作時に各初期化動作用クロックの立上りエッジと立下りエッジの重なりを回避することで出来る。そのため、システム全体での初期化動作時のピーク電流を削減可能になると共にノイズの抑制も併せて可能になる。
【００７１】
この構成は、例えば、システム立ち上げ時の初期化動作における電源遮断状態から電源供給状態への変化タイミングに適用することが出来る。また、それぞれが電源電圧の供給及び遮断が制御可能な複数の回路ブロックを含み、データ処理内容によって使用する回路ブロックを切り替える情報処理装置に適用することも出来る。その場合、例えば、データ処理内容を変更する際に発生する、電源遮断状態から電源供給状態への変化タイミングに適用する。
【００７２】
なお、第１実施形態においては、分周クロックを使用する場合（図３（Ｂ）、図４（Ｂ）、図９（Ｄ）に相当）について説明したが、同一周期、同一位相のクロックを使用する構成でも実現可能である。その場合、図３（Ａ）、図４（Ａ）、図９（Ｂ）に示されるよう、各クロックに遅延を付加すると良い。さらに、この２つの手法を組み合わせることで、初期化動作用クロックの数を増やす構成としてもよい。
【００７３】
（第２実施形態）
本発明に係る情報処理装置の第２実施形態として、複数の回路ブロックを有する情報処理装置１００の他の例について以下に説明する。
【００７４】
＜装置構成＞
図１１は、第２実施形態に係る情報処理装置１００の構成例を示す図である。ここでは、クロック生成部１１０１、及び、遅延設定部１１０３に係る構成が図１と異なる。そのため、以下では、クロック生成部１１０１、及び、遅延設定部１１０３以外の構成についての説明は省略する。
【００７５】
クロック生成部１１０１は、基準クロックＣＬＫ、及び、通常動作用クロックＣＬＫ４の入力を受け付ける。そして、基準クロックＣＬＫに基づき、初期化動作時に使用されるエッジの揃った複数種のクロック（ここでは、ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３）を生成するよう構成されている。
【００７６】
そして、クロック生成部１１０１は、制御信号生成部１０４からの制御信号（ＳＬ＿Ａ、ＳＬ＿Ｂ、ＳＬ＿Ｃ、ＳＬ＿Ｄ）の入力を受け付けるよう構成されている。制御信号の入力に基づき、クロック生成部１１０１は、４つのクロック信号（ここでは、ＣＬＫ０＿Ｓ１、ＣＬＫ１＿Ｓ１、ＣＬＫ２＿Ｓ１、ＣＬＫ３＿Ｓ１）を出力する。例えば、ＣＬＫ０＿Ｓ１は、通常動作用クロック（ＣＬＫ４）とＣＬＫ０の何れかが選択されて生成されるクロックである。同様に、ＣＬＫ１＿Ｓ１は、通常動作用クロック（ＣＬＫ４）とＣＬＫ１の何れかが選択されて生成されるクロックである。ＣＬＫ２＿Ｓ１は、通常動作用クロック（ＣＬＫ４）とＣＬＫ２の何れかが選択されて生成されるクロックである。ＣＬＫ３＿Ｓ１は、通常動作用クロック（ＣＬＫ４）とＣＬＫ３の何れかが選択されて生成されるクロックである。
【００７７】
遅延設定部１１０３は、遅延値決定部１０２で決定した遅延値情報１１２を各クロック（ＣＬＫ０＿Ｓ１、ＣＬＫ１＿Ｓ１、ＣＬＫ２＿Ｓ１、ＣＬＫ３＿Ｓ１）に設定する。クロック生成部１１０１と同様に制御信号生成部１０４から初期化動作用クロックと通常動作用クロックを切り替えるための制御信号（ＳＬ＿Ａ、ＳＬ＿Ｂ、ＳＬ＿Ｃ、ＳＬ＿Ｄ）の入力を受け付けるように構成されている。制御信号に基づいて、初期化動作時には、初期化動作用クロックに遅延を付加したクロックが出力し、通常動作時は通常動作用クロックを出力する。
【００７８】
つまり、初期化動作時には、クロック（ＣＬＫ０＿Ｓ１、ＣＬＫ１＿Ｓ１、ＣＬＫ２＿Ｓ１、ＣＬＫ３＿Ｓ１）に対して遅延が付加されたクロック（ＣＬＫ０＿Ｓ２、ＣＬＫ１＿Ｓ２、ＣＬＫ２＿Ｓ２、ＣＬＫ３＿Ｓ２）を出力する。一方、通常動作時には、通常動作用クロック（ＣＬＫ４）をそのままＣＬＫ０＿Ｓ２〜ＣＬＫ３＿Ｓ２として出力する。
【００７９】
図１２は、第２実施形態におけるクロック生成部の構成例を示す図である。ここでは、異なる回路ブロック（回路ブロックＡ１０７〜回路ブロックＤ１１０）に供給する初期化動作用クロックに分周クロックを利用した場合の構成図を示している。
【００８０】
クロック生成部１１０１からは、内部の４つの選択器１２０１〜１２０４によって各回路ブロックに供給されるクロック（ＣＬＫ０＿Ｓ１、ＣＬＫ１＿Ｓ１、ＣＬＫ２＿Ｓ１、ＣＬＫ３＿Ｓ１）が出力される。
【００８１】
具体的には、選択器１２０１〜１２０４は、それぞれ、制御信号（ＳＬ＿Ａ、ＳＬ＿Ｂ、ＳＬ＿Ｃ、ＳＬ＿Ｄ）に基づいて初期化動作用クロックと通常動作用クロックの切り替えを行う。初期化動作時には初期化動作用クロックを選択する。すなわち、選択器１２０１は、制御信号ＳＬ＿Ａに基づいてＣＬＫ入力を選択し、選択器１２０２は、制御信号ＳＬ＿Ｂに基づいて分周クロック１２０５を選択する。同様に、選択器１２０３は、制御信号ＳＬ＿Ｃに基づいて分周クロック１２０６を選択し、選択器１２０４は、制御信号ＳＬ＿Ｄに基づいて分周クロック１２０７を選択する。一方、通常動作時には、選択器１２０１〜１２０４は、通常動作用クロックＣＬＫ４を選択する。
【００８２】
なお、ここでは説明を簡単にするため、通常動作用クロックが１本（ＣＬＫ４）の場合で説明しているが、通常動作用クロックが複数存在する構成でも良い。また、分周器３０２で生成した分周クロック１２０５〜１２０７を通常動作用クロックに使用するよう構成しても良い。更に、複数のクロック出力（例えば、ＣＬＫ１＿Ｓ１、ＣＬＫ２＿Ｓ１）に同一のクロックを割り当てても良い。
【００８３】
図１３は、第２実施形態における遅延設定部の構成例である。遅延値決定部１０２から取得した遅延値情報１１２は、各クロックの遅延付加部６０１、遅延付加部６０２、遅延付加部６０３、遅延付加部６０４に供給される。また、制御信号ＳＬ＿Ａは選択器１３０１に供給され、制御信号ＳＬ＿Ｂは選択器１３０２に供給される。同様に、制御信号ＳＬ＿Ｃは選択器１３０３に供給され、制御信号ＳＬ＿Ｄは選択器１３０４に供給される。
【００８４】
遅延付加部６０１〜６０４は、それぞれ、図６を参照して説明したように、出力クロックを監視して配線遅延を補償する回路構成によって構成することが出来る。
【００８５】
例えば、遅延付加部６０１は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ０＿Ｓ１を、ＣＬＫ０＿Ｓ１の１／８周期だけ遅延させたクロック１３０５を出力する。同様に、遅延付加部６０２は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ１＿Ｓ１を、ＣＬＫ１＿Ｓ１の１／８周期だけ遅延させたクロック１３０６を出力する。遅延付加部６０３は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ２＿Ｓ１を、ＣＬＫ２＿Ｓ１の１／８周期だけ遅延させたクロック１３０７を出力する。遅延付加部６０４は、遅延値決定部１０２から取得した遅延値情報１１２に基づいて、ＣＬＫ３＿Ｓ１を、ＣＬＫ３＿Ｓ１の１／８周期だけ遅延させたクロック１３０８を出力する。
【００８６】
選択器１３０１は、制御信号ＳＬ＿Ａに基づいて、初期化動作時には、クロック１３０５を選択し、通常動作時には、ＣＬＫ０＿Ｓ１を選択し、ＣＬＫ０＿Ｓ２として出力する。同様に、選択器１３０２は、制御信号ＳＬ＿Ｂに基づいて、初期化動作時には、クロック１３０６を選択し、通常動作時には、ＣＬＫ１＿Ｓ１を選択し、ＣＬＫ１＿Ｓ２として出力する。選択器１３０３は、制御信号ＳＬ＿Ｃに基づいて、初期化動作時には、クロック１３０７を選択し、通常動作時には、ＣＬＫ２＿Ｓ１を選択し、ＣＬＫ２＿Ｓ２として出力する。選択器１３０４は、制御信号ＳＬ＿Ｄに基づいて、初期化動作時には、クロック１３０８を選択し、通常動作時には、ＣＬＫ３＿Ｓ１を選択し、ＣＬＫ３＿Ｓ２として出力する。
【００８７】
したがって、遅延付加部６０４は、初期化動作時には、クロック生成部１１０１で生成され遅延設定部１１０３で遅延が付加されたクロックを出力することになる。一方、遅延付加部６０４は、通常動作時には、クロック生成部１１０１で生成されたクロックをそのまま（遅延を付加せず）出力することになる。
【００８８】
尚、第２実施形態では、クロック生成部１１０１で、初期化動作のための基準クロック及び、通常動作用クロックを入力して、制御信号生成部１０４の制御信号によりクロックを切り替えて制御している。更に、遅延設定部１１０３では、初期化動作時に遅延を付加する経路と通常動作用の経路を切り替えてクロックを生成する構成としている。ただし、クロック生成部１１０１の構成と遅延設定部１１０３の構成を１つの回路として構成しても良い。
【００８９】
例えば、上記構成のクロック生成部１１０１に入力している通常動作用クロック（ＣＬＫ４）を遅延設定部１１０３に入力する構成としても良い。この場合、初期化動作用クロックと通常動作用クロックの切り替えと、初期化動作用クロックの遅延付加を両方行う構成とする。この場合、制御信号生成部１０４で生成する制御信号は、遅延設定部１１０３にのみ供給すればよい。
【００９０】
以上説明したように第２実施形態によれば、複数の回路ブロックの初期化動作時に各初期化動作用クロックの立上りエッジと立下りエッジの重なりを回避することで出来る。そのため、システム全体での初期化動作時のピーク電流を削減可能になると共にノイズの抑制も併せて可能になる。
【００９１】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015001832.tif 000003
【図２】
2015001832.tif 000004
【図３】
2015001832.tif 000005
【図４】
2015001832.tif 000006
【図５】
2015001832.tif 000007
【図６】
2015001832.tif 000008
【図７】
2015001832.tif 000009
【図８】
2015001832.tif 000010
【図９】
2015001832.tif 000011
【図１０】
2015001832.tif 000012
【図１１】
2015001832.tif 000013
【図１２】
2015001832.tif 000014
【図１３】
2015001832.tif 000015
【図１４】
2015001832.tif 000016