(57)【特許請求の範囲】
【請求項１】
ＣＰＵコアと、ＰＣＩ Expressインタフェースと、前記ＰＣＩ Expressインタフェースのリンクの状態に応じて、複数の電源ドメインの各々に対する電力供給を個別に制御可能な電源制御手段と、を有する半導体集積回路であって、
通常状態から省電力状態に遷移するとき、前記電源制御手段は、前記ＣＰＵコアが前記リンクを省電力状態へ遷移させた後に前記ＣＰＵコアを含む電源ドメインの電源を落とし、
前記リンクに接続されているデバイスが復帰要因を検出したとき前記リンクを通常状態に遷移させ、前記ＣＰＵコアを含む電源ドメインへの電力供給を再開する、
ことを特徴とする半導体集積回路。
【請求項２】
請求項１に記載された半導体集積回路において、
前記ＣＰＵコアは、前記遷移させる動作と並行して、システムの設定情報を記憶手段に退避し、前記電力供給が再開されたとき、前記記憶手段に退避しておいたシステムの設定情報を取り出す、ことを特徴とする半導体集積回路。
【請求項３】
ＣＰＵコアと、ＰＣＩ Expressインタフェースと、前記ＰＣＩ Expressインタフェースのリンクの状態に応じて、複数の電源ドメインの各々に対する電力供給を個別に制御可能な電源制御手段と、を有する半導体集積回路の省電力制御方法であって、
前記ＣＰＵコアが前記リンクを通常状態から省費電力状態に遷移させた後に前記電源制御手段が前記ＣＰＵコアを含む電源ドメインの電源を落とす工程と、前記リンクに接続されているデバイスが復帰要因を検出したとき前記電源制御手段が前記リンクを通常状態に遷移させ、前記ＣＰＵコアを含む電源ドメインへの電力供給を再開する工程と、
を有することを特徴とする半導体集積回路の省電力制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＣＩ Expressインタフェースを有する半導体集積回路及びその省電力制御方法に関する。
【背景技術】
【０００２】
デジタル複写機、デジタル複合機（ＭＦＰ：マルチ・ファンクション・プリンタ）等の画像形成装置では、ＣＰＵ、画像処理モジュール、メモリなどの各デバイス間の接続手段としてＰＣＩ（Peripheral Component Interconnect：登録商標）に代表されるパラレル方式のインタフェースが使用されている。しかし、パラレル方式のインタフェースでは、レーシングやスキューなどの問題があり、高速・高画質の画像形成装置に使用するには、転送レートが不十分になってきているため、最近では、高速シリアルインタフェースであるＰＣＩ Express（登録商標：以下、ＰＣＩｅと言う）を画像形成装置に使用することが提案されている（特許文献１参照）。
【０００３】
ＰＣＩｅは、リンクと呼ばれる通信路を介してデバイス間を相互接続するための規格であり、ＰＣＩＳＩＧ（Peripheral Component Interconnect Special Interest Group）によって規定されている。
【０００４】
ＰＣＩｅの規格においては、電力管理（パワーマネマネージメント）に関する規格として、ソフトウェアによる省電力状態への遷移の他に、ハードウェアによるＡＳＰＭ（Active State Power Management）が規定されている。ＡＳＰＭでは、ＰＣＩｅインタフェース回路内のコンフィギュレーションレジスタのＡＳＰＭの制御ビットがイネーブルの場合に、一定のアイドル期間の経過により、通常状態（アクティブステート）から省電力状態であるＬ０ｓ、Ｌ１に遷移する。通信の必要が生じた場合、リンクの状態はハードウェアにより省電力状態から通常状態に戻される。これにより、ソフトウェアの介在なしに、リンクのアイドル期間中の無駄な電力消費を低減することで、こまめな省電力制御が可能となるため、消費電力低減に大きな効果がある。
【０００５】
しかし、省電力状態であるＬ０ｓ、Ｌ１から通常状態への復帰には数μsec程度の復帰時間が必要となるため、画像読取部からメモリへのデータ書き込みのような、等時性（Isochronous）の必要なデータ転送において、画像データの転送開始時や転送中に省電力状態に遷移することは異常画像の発生につながる虞がある。そのため、画像読取部からメモリへのデータ伝送路となるＰＣＩｅのリンクではＡＳＰＭを利用することができず、省電力機能を活用することができないという問題がある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、このような問題を解決するためになされたものであり、その目的は、ＰＣＩ
Expressインタフェースを有する半導体集積回路において、省電力状態での消費電力の削減、及び省電力状態から通常状態への復帰時間の短縮を実現することである。
【課題を解決するための手段】
【０００７】
本発明は、ＣＰＵコアと、ＰＣＩ Expressインタフェースと、前記ＰＣＩ Expressインタフェースのリンクの状態に応じて、複数の電源ドメインの各々に対する電力供給を個別に制御可能な電源制御手段と、を有する半導体集積回路であって、通常状態から省電力状態に遷移するとき、前記電源制御手段は、前記ＣＰＵコアが前記リンクを省電力状態へ遷移させた後に前記ＣＰＵコアを含む電源ドメインの電源を落とし、前記リンクに接続されているデバイスが復帰要因を検出したとき前記リンクを通常状態に遷移させ、前記ＣＰＵコアを含む電源ドメインへの電力供給を再開する、ことを特徴とする。
また、本発明は、ＣＰＵコアと、ＰＣＩ Expressインタフェースと、前記ＰＣＩ Expressインタフェースのリンクの状態に応じて、複数の電源ドメインの各々に対する電力供給を個別に制御可能な電源制御手段と、を有する半導体集積回路の省電力制御方法であって、前記ＣＰＵコアが前記リンクを通常状態から省費電力状態に遷移させた後に前記電源制御手段が前記ＣＰＵコアを含む電源ドメインの電源を落とす工程と、前記リンクに接続されているデバイスが復帰要因を検出したとき前記電源制御手段が前記リンクを通常状態に遷移させ、前記ＣＰＵコアを含む電源ドメインへの電力供給を再開する工程と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ＰＣＩ Expressインタフェースを有する半導体集積回路において、通常状態から省電力状態に遷移するとき、電源制御手段がＣＰＵコアの電源を落とすことができるので、省電力状態での大幅な電力の削減が可能になる。また、ＣＰＵコアは電源制御に関与していないため、電源オフ前の状態への復帰に注力することで、システムの立ち上がりを早めることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態の画像処理装置を示すブロック図である。
【図２】本発明の第２の実施形態の画像処理装置を示すブロック図である。
【図３】本発明の第３の実施形態の画像処理装置を示すブロック図である。
【図４】本発明の第４の実施形態の画像処理装置を示すブロック図である。
【図５】Ｌ０ｓのエントリーの設定は一方向のみ可能であることを説明するための図である。
【図６】本発明の第５の実施形態のＡＳＩＣを示すブロック図である。
【図７】本発明の第６の実施形態の半導体装置を示すブロック図である。
【図８】本発明の第７の実施形態の半導体装置を示すブロック図である。
【図９】本発明の第８の実施形態の半導体装置を示すブロック図である。
【図１０】本発明の第９の実施形態の半導体装置を示すブロック図である。
【図１１】本発明の第９の実施形態の半導体装置の動作を説明するためのタイミング図である。
【図１２】本発明の第９の実施形態の半導体装置の動作を説明するためのタイミング図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面を参照しながら説明する。
［第１の実施形態］
図１は本発明の第１の実施形態の画像処理装置を示すブロック図である。この画像処理装置はデジタル複合機の一部として構成されており、ＣＰＵ１００、操作パネル１０１、スキャナ１０２、ＡＳＩＣ（Application Specific Integrated Circuit：特定用途向け集積回路）１０３，１０４及び１０６、並びにメモリ１０５からなる。
【００１１】
ＣＰＵ１００とＡＳＩＣ１０３との間、及びＡＳＩＣ１０３とＡＳＩＣ１０４との間は、いずれもＰＣＩｅリンク１０７により接続されている。ＡＳＩＣ１０６は操作パネル１０１に対するインタフェースモジュールである。
【００１２】
ＣＰＵ１００は、この画像処理装置全体の制御などを行う機能を有する。また、ＣＰＵ１００はＰＣＩｅインタフェース（Ｉ／Ｆ）回路１０９を内蔵しており、ＰＣＩｅインタフェース回路１０９はコンフィギュレーションレジスタ１０９ａを内蔵している。なお、図示を省略したが、ＣＰＵ１００には、その動作時に使用するプログラムを記憶したＲＯＭ、及びワークエリアとなるＲＡＭが接続されている。
【００１３】
操作パネル１０１は各種操作キー及びＬＣＤパネルを備えており、ユーザが画像形成装置を使用するときに、各種指示を入力するために用いられる。スキャナ１０２は、ユーザによりセットされた原稿の画像データを読み取り、画像データを生成する。
【００１４】
ＡＳＩＣ１０４はＰＣＩｅインタフェース回路１１２を内蔵しており、ＰＣＩｅインタフェース回路１１２はコンフィギュレーションレジスタ１１２ａを内蔵している。ＡＳＩＣ１０４は、スキャナ１０２から入力された画像データに所定の画像処理を施し、ＰＣＩｅリンク１０７を介してＡＳＩＣ１０３へ転送する。
【００１５】
ＡＳＩＣ１０３はＰＣＩｅインタフェース回路１１１を内蔵している。ＰＣＩｅインタフェース回路１１１は、コンフィギュレーションレジスタ１１１ａを内蔵している。ＡＳＩＣ１０３は、ＡＳＩＣ１０４から転送されてきた画像データに所定の画像処理を施し、ＰＣＩｅリンク１０７を介してメモリ１０５へ転送する。
【００１６】
以上の構成を有する画像処理装置において、ユーザがスキャナ１０２に原稿をセットし、操作パネル１０１のスタートボタンを押下すると、それがＡＳＩＣ１０６で検出され、ＣＰＵ１００に伝達される。画像読取開始の指示を認識したＣＰＵ１００は、ＰＣＩｅインタフェース回路１０９〜１１２内のコンフィギュレーションレジスタ１０９ａ〜１１２ａの内のリンクコントロールレジスタのＡＳＰＭの制御ビットのＬ０ｓ／Ｌ１のエントリーを“ディセーブル”に設定する。この設定は各デバイスのリンク能力レジスタ（Link Capabilities Register）のＡＳＰＭのサポートビット、即ちデバイスがＡＳＰＭのＬ０ｓ、Ｌ１をサポートしているか否かを示すレジスタのビットに従う。これにより、ＰＣＩｅリンク１０７上で７μsec以上のアイドルサイクルが発生した場合にも、Ｌ０ｓ／Ｌ１には遷移しないため、スキャナ１０２からの画像データを正常にメモリ１０５に格納することができる。
【００１７】
ここで、ＣＰＵ１００内のＰＣＩｅインタフェース回路１０９、及びＡＳＩＣ１０３内の下流（ダウンストリーム）側のＰＣＩｅインタフェース回路１１１がＰＣＩｅの階層におけるルートコンプレックスであり、ＡＳＩＣ１０３内の上流（アップストリーム）側のＰＣＩｅインタフェース回路１１０、及びＡＳＩＣ１０４内の上流（アップストリーム）側のＰＣＩｅインタフェース回路１１２がエンドポイントである。
【００１８】
ＰＣＩｅインタフェース回路１０９内のリンクコントロールレジスタのＡＳＰＭの制御ビットは、ＣＰＵ１００がレジスタに直接的にアクセスすることで設定する。また、ＰＣＩｅインタフェース回路１１０内のリンクコントロールレジスタのＡＳＰＭの制御ビットは、ＣＰＵ１００が、ＰＣＩｅインタフェース回路１０９内に設けられたコンフィグレーションアドレスレジスタ、コンフィギュレーションデータレジスタをウィンドウとして、コンフィギュレーションレジスタ１１０ａ内のリンクコントロールレジスタにアクセスすることにより設定する。つまり、ルートコンプレックス内のコンフィギュレーションアドレスレジスタ、コンフィギュレーションデータレジスタ経由でエンドポイント内のコンフィギュレーションレジスタにアクセスする。なお、これらのアクセス手順は既知であるため、詳細な説明は省略する。
【００１９】
同様に、ＰＣＩｅインタフェース回路１１１内、及びＰＣＩｅインタフェース回路１１２内のリンクコントロールレジスタのＡＳＰＭの制御ビットは、ＣＰＵ１００が、ルートコンプレックスであるＰＣＩｅインタフェース回路１１１内のコンフィギュレーションレジスタアドレスレジスタ、コンフィギュレーションデータレジスタをウィンドウとしてアクセスし、設定する。
【００２０】
このように、本発明の第１の実施形態の画像処理装置によれば、画像読取開始の指示に基づいてＡＳＰＭ機能をディセーブルにするので、異常画像を発生させることなく、ＡＳＰＭによる消費電力の削減が可能になる。
【００２１】
［第２の実施形態］
図２は本発明の第２の実施形態の画像処理装置を示すブロック図である。この図において、図１と同一の部分には図１と同じ参照符号を付した。
【００２２】
この画像処理装置は、ＣＰＵ１００、スキャナ１０２、ＡＳＩＣ１０３及び２００、並びにメモリ１０５からなる。ＡＳＩＣ２００は、それぞれルートコンプレックス、エンドポイントであるＰＣＩｅインタフェース回路２０３、２０４に加えて、ＤＭＡ（Direct Memory Access）コントローラ（以下、ＤＭＡＣと言う）２０１及び割込みコントローラ２０２を備えている。
【００２３】
ＤＭＡＣ２０１は、スキャナ１０２からＡＳＩＣ１０４に転送され、ＡＳＩＣ１０４からＰＣＩｅリンク１０７を介してＡＳＩＣ２００に転送されてきた画像データをＰＣＩｅリンク１０７及びＣＰＵ１００を介してメモリ１０５に転送する。割込みコントローラ２０２は、ＤＭＡＣ２０１が予めＣＰＵ１００により設定された所定量の画像データの転送を完了したときに、ＰＣＩｅリンク１０７を介してＣＰＵ１００に割込み信号を送出する。
【００２４】
即ちＤＭＡＣ２０１を使用した転送の場合、ＣＰＵ１００のソフトウェアは予めＡＳＩＣ１０４からのデータ転送量を把握しており、ＤＭＡＣ２０１に対してそれに合わせた設定を行う。従って、ＤＭＡＣ２０１の転送の完了は、スキャナ１０２から送出された画像データが全てメモリ１０５に転送されたことを示す。
【００２５】
ＤＭＡＣ２０１からの転送完了割込み要因がアサートされると、割込みコントローラ２０２はＰＣＩｅインタフェース回路２０４に割込みの発行を要求する。ＰＣＩｅインタフェース回路２０４回路はＣＰＵ１００に対してＭＳＩ（Message signaled Interrupt）割込みを発行し、ＤＭＡＣ２０１からの画像データの転送完了をソフトウェアに通知する。ソフトウェアはこれを見て、第１の実施形態と同様に、ＰＣＩｅインタフェース回路１０９〜１１２内のコンフィギュレーションレジスタ１０９ａ〜１１２ａにコンフィギュレーションライトアクセスを行い、それぞれのリンクコントロールレジスタのＡＳＰＭの制御ビットのＬ０ｓ／Ｌ１のエントリーを“イネーブル”に設定する。
【００２６】
このように、本発明の第２の実施形態によれば、スキャナ１０２で生成された画像データのＡＳＩＣ２００におけるＤＭＡ転送完了に基づいて、再度、ＡＳＰＭをイネーブルにすることにより、画像データ転送時を除く全ての期間でＡＳＰＭによる消費電力の削減を行うことが可能になる。
【００２７】
［第３の実施形態］
図３は本発明の第３の実施形態の画像処理装置を示すブロック図である。この図において、図１と同一の部分には図１と同じ参照符号を付した。
【００２８】
この画像処理装置は、ＣＰＵ１００、スキャナ１０２、ＡＳＩＣ１０３及び３００、並びにメモリ１０５からなる。ＡＳＩＣ３００は、それぞれルートコンプレックス、エンドポイントであるＰＣＩｅインタフェース回路３０３、３０４に加えて、タイマ３０１及び割込みコントローラ３０２を備えている。
【００２９】
タイマ３０１は、所定の基準クロックをカウントしており、ＰＣＩｅインタフェース回路３０３に画像データが入力されているときは、その回路で生成される画像データのライン周期やフレーム周期を有する画像データ検知信号によりリセットされる。また、予め定められた一定時間カウント（タイムアップ）すると、割込みコントローラ３０２にタイムアップ信号を送出する。割込みコントローラ３０２は、タイマ３０１からのタイムアップ信号を受けたときに、図２（第２の実施形態）の割込みコントローラ２０２と同様に、ＰＣＩｅリンク１０７を介してＣＰＵ１００に割込み信号を送出する。
【００３０】
ＣＰＵ１００は、この割込み信号を受信すると、第２の実施形態と同様に、ＰＣＩｅインタフェース回路１０９〜１１２内のコンフィギュレーションレジスタ１０９ａ〜１１２ａにコンフィギュレーションライトアクセスを行い、それぞれのリンクコントロールレジスタのＡＳＰＭの制御ビットのＬ０ｓ／Ｌ１のエントリーを“イネーブル”に設定する。これにより、スキャナ１０２からの画像データの転送完了後にＡＳＰＭを“イネーブル”に設定することが出来る。
【００３１】
本発明の第３の実施形態では、ＡＳＩＣ３００にＤＭＡＣを実装せずに、ＡＳＩＣ３００からメモリ１０５のアドレスを直接指定して転送するように構成しており、ＡＳＩＣ３００は、スキャナ１０２からの画像データの転送終了のタイミングを知ることができない。そこで、ＡＳＩＣ３００内にタイマ３０１を設け、ＡＳＩＣ１０４からの画像データの入力を監視し、一定期間入力が無い場合に転送が完了したと判断し、ＣＰＵ１００に割込み信号を送出する。そして、その割込みに基づいて、ＡＳＰＭを“イネーブル”に設定するので、ＡＳＩＣ３００が画像データ転送の終了を知る術が無い場合でも、再度、ＡＳＰＭを“イネーブル”にすべきタイミングを知り、そのタイミングで実行することができる。
【００３２】
［第４の実施形態］
図４は本発明の第４の実施形態の画像処理装置を示すブロック図である。この図において、図１と同一の部分には図１と同じ参照符号を付した。
【００３３】
この画像処理装置は、ＣＰＵ１００、スキャナ１０２、ＡＳＩＣ４０１及び４０２、並びにメモリ１０５からなる。ＡＳＩＣ４０１はスキャナ入力インタフェース回路４０３、及びエンドポイントであるＰＣＩｅインタフェース回路４０４を備えている。また、ＡＳＩＣ４０２は、それぞれルートコンプレックス、エンドポイントであるＰＣＩｅインタフェース回路４０５、４０６に加えて、タイマ４０７及びレジスタアクセス回路４０８を備えている。
【００３４】
スキャナ入力インタフェース回路４０３は、スキャナ１０２から送出された画像データが入力されると、そのライン周期やフレーム周期で、画像データ検知信号をタイマ４０７及びレジスタアクセス回路４０８へ送出する。タイマ４０７は、基準クロックをカウントしており、画像データ検知信号によりリセットされる。また、予め定められた一定時間カウント（タイムアップ）すると、レジスタアクセス回路４０８にタイムアップ信号を送出する。
【００３５】
レジスタアクセス回路４０８は、ＡＳＩＣ４０２内のＰＣＩｅインタフェース回路４０５及び４０６内のコンフィギュレーションレジスタ４０５ａ及び４０６ａにアクセスすることができる。また、また、ルートコンプレックスであるＰＣＩｅインタフェース回路４０５内のコンフィギュレーションアドレスレジスタ、コンフィギュレーションデータレジスタ経由で、エンドポイントであるＰＣＩｅインタフェース回路４０４内のコンフィギュレーションレジスタ４０４ａにアクセスすることができる。しかし、ＡＳＩＣ４０２はＣＰＵ１００に対するエンドポイントデバイスであるため、ＡＳＩＣ４０２内のレジスタアクセス回路４０８からルートコンプレックスであるＰＣＩｅインタフェース回路１０９内のコンフィギュレーションレジスタ１０９ａにアクセスすることはできない。
【００３６】
以上の構成を有する本実施形態の画像処理装置において、スキャナインタフェース回路４０３は、スキャナ１０２で生成された画像データが入力されると、画像データ検知信号をタイマ４０７及びレジスタアクセス回路４０８に送出する。
【００３７】
レジスタアクセス回路４０８は、画像データ検知信号を受け取ると、ＰＣＩｅインタフェース回路４０６内のコンフィギュレーションレジスタ４０６ａにコンフィギュレーションライトアクセスして、Ｔｘ（ＡＳＩＣ４０２からＣＰＵ１００へのリンク）のＬ０ｓのエントリーを“ディセーブル”に設定する。また、ルートコンプレックスであるＰＣＩｅインタフェース回路４０５内のコンフィギュレーションレジスタ４０５ａをウィンドウとして、エンドポイントであるＰＣＩｅインタフェース回路４０４内のコンフィギュレーションレジスタ４０４ａにコンフィギュレーションライトアクセスして、Ｔｘ（ＡＳＩＣ４０１から４０２へのリンク）のＬ０ｓのエントリーを“ディセーブル”に設定する。
【００３８】
ここで、Ｌ０ｓはＡＳＰＭで定義された省電力状態の一つであり、図５に示すように、
片方向ずつ（送信側のみ）“イネーブル／ディセーブル”の設定ができる。Ｒｘ（図４の
場合、ＡＳＩＣ４０２から４０１へのリンク、及びＣＰＵ１００からＡＳＩＣ４０２へのリンク）は、画像データの転送方向とは逆であるため、Ｌ０ｓのエントリーは“イネーブル”のままでよい。なお、この動作は、デバイスがＬ０ｓのみサポートし、Ｌ１をサポートしていない場合、或いはＬ１がディセーブルに設定されている場合が前提である。なぜなら、Ｌ０Ｓ、Ｌ１の双方がイネーブルとなっている場合、７μsec経過後、より深い省電力状態であるＬ１に遷移してしまうからである。Ｌ１をディセーブルにしなければならない状況としては、復帰に非常に時間がかかってしまい（デバイス依存）、レジスタアクセス回路でイネーブル／ディセーブルを制御したとしても、画像データの転送に支障が出てしまう場合などが考えられる。
【００３９】
これにより、スキャナ１０２からメモリ１０５に向かうデータパスは省電力状態（Ｌ０ｓ）には入らず、常にアクティブ状態（Ｌ０）なので、画像データは滞りなく転送される。このとき、ＣＰＵ１００からＡＳＩＣ４０１に向かうデータパスはＡＳＰＭが“イネーブル”のままなので、特に転送すべきパケットがなければ規定のアイドルサイクルの後にＬ０ｓに遷移する。
【００４０】
スキャナ入力インタフェース４０３にスキャナ１０２から画像データが一定期間入力されなり、その結果、タイマ４０７に画像データ検知信号が一定期間入力されなくなると、タイマ４０７はレジスタアクセス回路４０８にタイムアップ信号を送出する。レジスタアクセス回路４０８は、タイムアップ信号を受け取ると、ＰＣＩｅインタフェース回路４０６内のコンフィギュレーションレジスタ４０６ａにアクセスし、ＴｘのＬ０ｓのエントリーを“イネーブル”に設定する。また、ルートコンプレックスであるＰＣＩｅインタフェース回路４０５内のコンフィギュレーションアドレスレジスタ、コンフィギュレーションデータレジスタ経由で、エンドポイントであるＰＣＩｅインタフェース回路４０４内のコンフィグレーションレジスタ４０４ａにアクセスを行い、ＴｘのＬ０ｓのエントリーを“イネーブル”に設定する。
【００４１】
これにより、全てのＰＣＩｅリンク１０７の双方向のパスのＬ０ｓのエントリーが“イネーブル”となるため、アイドル時には省電力状態に入るようになる。ここで、タイマ４０７のタイムアップ時間はＣＰＵ１００のソフトウェアから設定可能であり、スキャナ１０２にセットされる原稿のページ間隔などの要因を基に、システムに合わせた最適な値（最小値）を設定することで、省電力状態の期間を最長にすることができる。なお、Ｌ０ｓのエントリーの“ディセーブル”は、あくまでも、等時性が必要な転送の邪魔をしないために一時的に“ディセーブル”にするものであり、等時性を必要としない通常のデータ転送においては、“イネーブル”で使用し、必要に応じて通常状態（Ｌ０）への遷移、Ｌ０ｓへの復帰を行う。
【００４２】
このように、本発明の第４の実施形態によれば、ＡＳＩＣ４０２にレジスタアクセス回路４０８を設け、ＣＰＵ１００が介在することなく、ＡＳＰＭの“ディセーブル”を設定するので、極めて短時間で設定することができる。このため、画像データがＡＳＩＣ４０１に入力される直前まで、省電力状態を維持することができる。また、画像データの転送終了次第、直ちに省電力状態に遷移することができる。つまり、ＣＰＵ１００が介在した場合には実現不可能な、極めて短期間の省電力制御を実現することができる。さらに、ＡＳＰＭを再度“イネーブル”にするまでの期間をシステムに応じた最適な期間に設定することで、ＡＳＰＭによる省電力効果を最大限に引き出すことができる。
【００４３】
［第５の実施形態］
図６は本発明の第５の実施形態のＡＳＩＣを示すブロック図である。このＡＳＩＣは、例えば図１の画像処理装置におけるＡＳＩＣ１０３、１０４などに用いることができる。
【００４４】
ＡＳＩＣ６０１は、ＰＣＩｅインタフェース回路６０２、クロックジェネレータ６０３、及び機能モジュール６０４ａ〜６０４ｃを有する。機能モジュール６０４ｂ、６０４ｃには、それぞれ外部デバイス６０５，６０６が接続されている。
【００４５】
ＰＣＩｅインタフェース回路６０２は、コンフィギュレーションレジスタ６０２ａ、及びＬＴＳＳＭレジスタ６０２ｂを有する。ＬＴＳＳＭレジスタ６０２ｂは、ＬＴＳＳＭの状態（ステート）を示すレジスタである。ＬＴＳＳＭはＰＣＩｅのリンクの状態を示すものとしてＰＣＩｅの規格で定義されている。ＬＴＳＳＭの状態は、ＬＴＳＳＭと呼ばれるステートマシンのステート（Ｌ０、Ｌ０ｓ、Ｌ１、Ｌ２等）で表現される。
【００４６】
クロックジェネレータ６０３は、ＡＳＩＣ６０１の外部のＳＳＣＧ（スペクトラム拡散クロック発生器）６０７から供給されるクロックと、ＬＴＳＳＭレジスタ６０２ｂの出力信号（ステータス信号）とが入力される２個のアンド回路６０３ａ，６０３ｂを持っており、その出力がクロックとして、それぞれ機能モジュール６０４ｂ、６０４ｃに供給される。従って、機能モジュール６０４ｂ，６０４ｃは、ＰＣＩｅのＬＴＳＳＭの状態に応じてクロックの供給／停止を受ける。一方、機能モジュール６０４ａには、ＳＳＣＧ６０７から供給されるクロックがそのまま供給される。
【００４７】
ＡＳＩＣ６０１の外部にもクロックジェネレータ６０３の内部と同様、ＳＳＣＧ６０７から供給されるクロックと、ＬＴＳＳＭレジスタ６０２ｂの出力とが入力される２個のアンド回路６０９，６１０が設けられており、その出力がクロックとして、外部デバイス６０５，６０６に供給される。従って、外部デバイス６０５，６０６も、それぞれに接続されている機能モジュール６０４ｂ，６０４ｃと同様、ＰＣＩｅのＬＴＳＳＭの状態に応じてクロックの供給／停止を受ける。
【００４８】
ＬＴＳＳＭで定義された状態のうち、Ｌ０ｓ、Ｌ１、Ｌ２は低消費電力（省電力）状態であり、これらの状態にいることを示す信号をＬＴＳＳＭレジスタ６０２ｂからアンド回路６０３ａ，６０３ｂに出力し、ＳＳＣＧ６０７からのクロックをマスクすることにより、ＰＣＩｅのリンクの状態に応じて、ＡＳＩＣ６０１内の所定の機能モジュールへのクロック供給を止めることができる。これにより、ＡＳＩＣA６０１の消費電力を削減できる。前述のように、ＰＣＩｅではＡＳＰＭと呼ばれる、ＣＰＵが介在しない、ハードウェアによる自動的な省電力状態への遷移が規定されているので、ソフトウェアによる煩雑な制御を行わなくても、動的なクロックゲーティングが可能となり、ＡＳＩＣ６１０内のこまめな省電力制御が実現できる。
【００４９】
また、ＬＴＳＳＭレジスタ６０２ｂの出力信号（ステータス信号）をＡＳＩＣ６０１の外部に出力し、基板上でクロックのマスクを行うことにより、基板上の外部デバイス６０５，６０６に対するクロックの供給を停止することで、ＡＳＩＣ６０１のみならず、基板レベルでの消費電力の削減が可能になる。
【００５０】
［第６の実施形態］
図７は本発明の第６の実施形態の半導体装置を示すブロック図である。この半導体装置は、例えば図１の画像処理装置におけるＡＳＩＣ１０３、ＣＰＵ１００などに用いることができる。
【００５１】
この半導体装置は、ＰＣＩｅリンク７０４により接続された半導体集積回路７０１及び半導体集積回路７０２を有する。半導体集積回路７０１にはメモリ７０３が接続されている。
【００５２】
半導体集積回路７０１は、ＣＰＵコア７０１ａと、ルートコンプレックスであるＰＣＩｅインタフェース回路７０１ｂとを有する。半導体集積回路７０２はＡＳＩＣであり、アービタ７０５と、それぞれがアービタ７０５に接続された機能モジュール７０６〜７０９、及びエンドポイントであるＰＣＩｅインタフェース回路７１０とを有する。半導体集積回路７０１内のＰＣＩｅインタフェース回路７０１ｂと、半導体集積回路７０２内のＰＣＩｅインタフェース回路７１０とが、ＰＣＩｅリンク７０４により接続されている。
【００５３】
また、半導体集積回路７０２は、ＰＣＩｅインタフェース回路７１０に内蔵されたＬＴ
ＳＳＭレジスタ７１０ａからのステータス信号７１２に基づいて、半導体集積回路７０２
内の電源ドメインＡ，Ｂ，Ｃに対する電力供給（電源オン／オフ）を個別に制御可能な電源制御部７１１を備えている。つまり、電源制御部７１１は、電源ドメインＡに含まれる機能モジュール７０６及び７０７、電源ドメインＢに含まれる機能モジュール７０７及び７０８、電源ドメインＣに含まれるＰＣＩｅインタフェース回路７１０及び電源制御部７１１に対し、電源ドメイン内では共通に、電源ドメイン毎には個別にオン／オフの制御ができる。
【００５４】
第５の実施形態（図６）のようなクロックゲーティングにより消費電力の削減では、リーク電流による電力消費までは抑えられない。本実施形態では、ＬＴＳＳＭのステートを示すステータス信号７１２を電源制御部７１１に入力し、電源制御に利用することで、チップ内のリーク電流の削減を実現できる。特に、ＡＳＰＭが有効になっている場合には、ＰＣＩｅリンクのアイドルを検出し、ハードウェアにより自動的に遷移するため、ソフトが意識することなく、こまめな消費電力の削減を行うことができる。
【００５５】
前述したように、ＰＣＩｅでは、ＬＴＳＳＭのステートにより、復帰にかかる時間が異なる。つまり、浅い省エネ状態からの復帰に比べて、深い省エネ状態からの復帰には長い時間を要する。本実施形態では、復帰に時間がかかると問題のあるモジュール、時間がかかっても問題の無いモジュール、電源を落としてはいけないモジュールで電源ドメインを分け、ＬＴＳＳＭのステート毎に各電源ドメインへの供給を制御する（例えばＬＴＳＳＭ＝Ｌ０ｓのときは、“電源ドメインＡ”の電源を落とし、ＬＴＳＳＭ＝Ｌ１の場合は、“電源ドメインＡ”と“電源ドメインＢ”の電源を落とす等）ことで、機能へ影響を与えることなく、最適な電源制御を行うことができる。
【００５６】
［第７の実施形態］
図８は本発明の第７の実施形態の半導体装置を示すブロック図である。この半導体装置は、ＰＣＩｅリンク８０４により接続された半導体集積回路８０１及び半導体集積回路８０２を有する。半導体集積回路８０１にはメモリ８０３が接続されており、半導体集積回路８０２はネットワーク８０５に接続されている。
【００５７】
半導体集積回路８０１は、ＳｏＣ（System on Chip）からなり、アービタ８０６と、それぞれがアービタ８０６に接続されたＣＰＵコア８０７、メモリコントローラ８０８、及び機能モジュール８０９〜８１０と、ルートコンプレックスであるＰＣＩｅインタフェース回路８１１と、ＰＣＩｅインタフェース回路８１１に内蔵されたＬＴＳＳＭレジスタ８１１ａからのステータス信号８１３に基づいて、半導体集積回路８０１内の電源ドメインＡ，Ｂに対する電力供給（電源オン／オフ）を個別に制御可能な電源制御部８１２を備えている。
【００５８】
つまり、電源制御部８１２は、電源ドメインＡに含まれるアービタ８０６、ＣＰＵコア８０７、メモリコントローラ８０８、及び機能モジュール８０９〜８１０、電源ドメインＢに含まれるＰＣＩｅインタフェース回路８１１及び電源制御部８１２に対し、各電源ドメイン内では共通に、電源ドメイン毎には個別にオン／オフの制御ができる。
【００５９】
半導体集積回路８０２は、アービタ８０２ａと、それぞれがアービタ８０２ａに接続されたエンドポイントであるＰＣＩｅインタフェース回路８０２ｂ、ＵＳＢインタフェース回路８０２ｃ、及びイーサネット（登録商標）インタフェース回路８０２ｄを備えている。ＰＣＩｅインタフェース回路８０２ｂは、ＰＣＩｅリンク８０４により、半導体集積回路８０１内のＰＣＩｅインタフェース回路８１１に接続されており、イーサネット（登録商標）インタフェース回路８０２ｄはＬＡＮ８０５に接続されている。
【００６０】
この半導体装置が画像形成装置に搭載されている場合、画像形成装置が低消費電力状態に遷移する時、半導体集積回路８０１内のＣＰＵコア８０７はＰＣＩｅインタフェース回路８１１にアクセスし、ＰＣＩｅリンク８０４をＬ１状態に遷移させる。並行して、ＣＰＵコア８０７はシステムの設定情報をメモリ８０３に待避し、電源オフへの遷移の準備を行う（ＳＴＲ：Suspend to ＲＡＭ）。
【００６１】
ＣＰＵコア８０７の電源オフの準備が整ったら、電源ドメインＡの電源を落とす。このとき、メモリ８０３、及び半導体集積回路８０１内の電源ドメインＢには電源が供給されたままである。
【００６２】
半導体集積回路８０２は、復帰要因を監視し、イーサネット（登録商標）インタフェース回路８０４ｄ、ＵＳＢインタフェース回路８０２ｃなどに接続されたホストから画像形成装置に要求があった場合、これを検出し、ＰＣＩｅインタフェース回路８０２ｂがＰＣＩｅリンク８０４経由でＰＭＥ（Power Management Event）メッセージを半導体集積回路８０１に発行する。
【００６３】
半導体集積回路８０１と、その対向デバイスである半導体集積回路８０２との間のＰＣＩｅリンク８０４はアクティブな状態であるＬ０へと遷移する。電源制御部８１２では、このＬ０への遷移をトリガとして、電源ドメインＡへの電力の供給を再開する。ＣＰＵコア８０７はメモリ８０３に待避してあったシステム設定情報を取り出して、電源オフ前の状態に復帰する。
【００６４】
本発明の第７の実施形態では、省エネからの復帰をハードウェアで行っているため、ＣＰＵコア８０７の電源を落とすことができるので、大幅な電力の削減が可能になる。また、ソフトウェアは電源制御に関与していないため、電源オフ前の状態への復帰に注力できるので、システムとして、早く立ち上がることができる。即ち、電源オフ状態からの復帰に、ソフトウェアを介在させず、ＬＴＳＳＭのステート情報を利用しているため、ＣＰＵコアを内蔵する構成において、ＣＰＵコア自体も電源を落とすことが可能になる。更には、電源復帰にソフトウェアが介在しないため、復帰にかかる時間が短く、機器の動作に影響を与えずに、こまめな消費電力の削減が可能となる。
【００６５】
［第８の実施形態］
図９は本発明の第８の実施形態の半導体装置を示すブロック図である。この図において、図８（第７の実施形態）と同一又は対応する部分には、図８と同じ参照符号を付した。
【００６６】
本実施形態の半導体装置では、半導体装置８０１内の機能モジュール８１４を電源ドメインＣ、電源制御部８１２を電源ドメインＤ、ビーコン（Beacon）検出部８１５を電源ドメインＥとした。また、半導体装置８０２内のＵＳＢインタフェース回路８０２ｃにパーソナルコンピュータ（以下、ＰＣ）８１６を接続した。
【００６７】
即ちＰＣ８１５からのリクエスト（プリント出力など）に関する機能モジュール８１４を電源ドメインＣとして独立させ、ＰＣＩｅインタフェース部分では、ビーコン検出部８１５を電源ドメインＥとして独立させている。
【００６８】
本実施形態の半導体装置において、ＰＣ８１６からのリクエストが一定期間無い場合、あるいは、ＰＣ８１６側のリクエストが終了し、ＰＣ８１６内のドライバがＰＣＩｅリンク８０４を省エネ状態に遷移させても構わないと判断した場合、ＰＣＩｅインタフェース回路８０２ｂ内のＬＴＳＳＭをＬ２に遷移させる。
【００６９】
常に電力が供給される電源ドメインＤに配置された電源制御部８１２は、ＰＣＩｅリンク８０４のＬ２への遷移を検知すると、電源ドメインＢ、電源ドメインＣへの電力の供給を止める。この時、他の機能で使用予定の電源ドメインＡ、及び、半導体集積回路８０２からのビーコンを検出するビーコン検出部８１５のある電源ドメインＥには電力が供給されている。
【００７０】
ＰＣ８１６からリクエストが発生すると、半導体集積回路８０２は半導体集積回路８０１にビーコンを送出する。ビーコン検出部８１５は電源制御部８１２にビーコンを検出したことを伝え、電源制御部８１２は電源ドメインＣ、電源ドメインＢへの電力供給を再開する。電源を供給されたＰＣＩｅインタフェース回路８１１は、リンクトレーニングを行い、ＰＣＩｅリンク８０４をアクティブな状態であるＬ０に遷移させる。
【００７１】
このような構成にすることにより、例えばプリント出力時のみ、必要な関連回路に電力を供給し、それ以外では電力を供給しないので画像形成装置の消費電力を効果的に削減することができる。
【００７２】
［第９の実施形態］
図１０は本発明の第９の実施形態の半導体装置を示すブロック図である。この半導体装置は、ＰＣＩｅリンク９０３により接続された半導体集積回路９０１及び半導体集積回路９０２を有する。
【００７３】
半導体集積回路９０１は、レジスタバス９０４と、エンドポイントであるＰＣＩｅインタフェース回路９０５と、電源制御部９０６と、機能モジュール９０７〜９１０と、アンド回路９１１〜９１４とを有する。また、半導体集積回路９０２は、ＣＰＵコア９０２ａと、ルートコンプレックスであるＰＣＩｅインタフェース回路９０２ｂとを有する。半導体集積回路９０１内のＰＣＩｅインタフェース回路９０５と、半導体集積回路９０２内のＰＣＩｅインタフェース回路９０２ｂとがＰＣＩｅリンク９０３により接続されている。
【００７４】
電源制御部９０６は、ＰＣＩｅインタフェース回路９０５内のＬＴＳＳＭレジスタ９０５ａから出力されるステータス信号９１５に応じて、アンド回路９１１〜９１４の各々の一方の入力に制御信号を送出する。アンド回路９１１〜９１４のそれぞれの他方の入力には、機能モジュール９０７〜９１０の出力が供給される。レジスタバス９０４には、アンド回路９１１〜９１４の出力と、ＰＣＩｅインタフェース回路９０５とが接続されている。
【００７５】
図１１及び図１２は、本実施形態の半導体装置の動作を説明するためのタイミング図である。ここでは、一般的なリクエストのやり取りのプロトコルの例としてＯＣＰ（Open Core Protocol）のやりとりを示している。
【００７６】
図１１に示すように、マスタが発行するリクエストコマンド（MCmd）に対して、スレーブが受け取れる状態であれば、コマンド受領信号（SCmdAccept）をアサートする。つまり、マスタからのリクエストを示す信号とターゲットのリクエスト受付信号とが、共に有効な場合に転送が成立する。図１１では、ｔ1のタイミングで転送が成立する。
【００７７】
一方、図１２に示すように、通常、レジスタアクセスにおいては、リクエストを待たせる要因が無いため、冗長なサイクルを無くす目的でコマンド受領信号（SCmdAccept）をアサートした状態、つまりターゲットのリクエスト受付信号を常に有効にした状態に固定して実装する場合が多い。この場合、ｔ1のタイミングで転送が成立する。
【００７８】
ところが、レジスタインタフェースを持つ機能モジュールの電源が落とされた場合（あるいは、クロックゲーティングされた場合）、機能モジュールはレジスタアクセスに応答できないにも関わらず、コマンド受領信号（SCmdAccept）はアサートされたままの状態となってしまう（リテンションフリップフロップ、あるいは、クロックゲーティングにおいては通常のフリップフロップで出力が固定される）。即ち、ターゲットとなる機能モジュールの電源が落ちている時に、リクエスト受付信号が有効になっていると、実際にはリクエストが受け付けられていないにも関わらず、マスタはリクエストが受け付けられたと認識してしまう。この結果、レジスタライト時には所望の設定をしたつもりなのにできていないといった制御上の不整合を引き起こし、レジスタリード時には、リードデータを待ってタイムアウトエラーが発生してしまうという不具合が起こる。
【００７９】
そこで、本実施形態では、機能モジュール９０７〜９１０のコマンド受領信号（SCmdAccept）をアサートした状態に固定されている場合、ＬＴＳＳＭのステートを示すステータス信号９１５に応じて電源制御部９０６から出力される信号をアンドゲート９１１〜９１４に供給することにより、機能モジュール９０７〜９１０から出力されるコマンド受領信号（SCmdAccept）をマスクすることで、電力が供給されていない（あるいは、クロックが供給されていない）電源ドメインへのレジスタライト時の不整合や、レジスタリードアクセス時のリードデータ待ちによるハングアップを起こすことなく、機能モジュールの電源を落とすことができるようにした。即ち、リクエスト受付信号を電源制御信号でマスクすることで、省エネ状態の機能モジュールへのレジスタアクセス時に、制御上の不整合やエラーが発生することを防止することができる。
【符号の説明】
【００８０】
１００・・・ＣＰＵ、１０１・・・操作パネル、１０２・・・スキャナ、１０３，１０４，１０６，２００，３００，４０１，４０２，６０１・・・ＡＳＩＣ、１０７・・・ＰＣＩｅリンク、１０９〜１１２，２０３，２０４，３０３，３０４，４０４〜４０６，６０２，７１０・・・ＰＣＩｅインタフェース回路、１０９ａ〜１１２ａ，２０３ａ，２０４ａ，３０３ａ，３０４ａ，４０４ａ〜４０６ａ，６０２ａ・・・コンフィギュレーションレジスタ、２０１・・・ＤＭＡＣ、２０２，３０２・・・割込みコントローラ、３０１，４０７・・・タイマ、４０８・・・レジスタアクセス回路、６０２ｂ，７１０ａ，８１１ａ，９０５ａ・・・ＬＴＳＳＭレジスタ、６０３ａ，６０３ｂ，６０９，６１０・・・アンド回路、７０２，８０１，９０１・・・半導体集積回路、７１１，８１２，９０６・・・電源制御部、７１２，８１３，９１５・・・ＬＴＳＳＭのステータス信号、８０７・・・ＣＰＵコア。
【先行技術文献】
【特許文献】
【００８１】
【特許文献１】特開２００５−２１０６５３号公報
【図１】
0005522279.tif 000002
【図２】
0005522279.tif 000003
【図３】
0005522279.tif 000004
【図４】
0005522279.tif 000005
【図５】
0005522279.tif 000006
【図６】
0005522279.tif 000007
【図７】
0005522279.tif 000008
【図８】
0005522279.tif 000009
【図９】
0005522279.tif 000010
【図１０】
0005522279.tif 000011
【図１１】
0005522279.tif 000012
【図１２】
0005522279.tif 000013