(57)【要約】【課題】節電機能を有するバス回路を持つデータ処理装置置において、効果的な省電力化と節電状態からの安全な復帰とを両立できるようにする。【解決手段】節電制御部３６は、節電状態のときにはＩ／Ｏインタフェース部３５がバス４０を使用できないような状態に設定しておく。節電状態のときにＩ／Ｏインタフェース部３５が転送対象データを受信した際には、データ受信信号Ｓ３を出力する。節電制御部３６は、データ受信信号Ｓ３を検知すると、節電状態からの復帰処理を行なってから、バス４０を使用可能状態にし、Ｉ／Ｏインタフェース部３５に転送対象データの転送を許可する。【選択図】図１
2006276978.tif 000002
【特許請求の範囲】
【請求項１】
信号を送受信するための信号線を複数のデバイスで共有しつつ、一方のデバイスから他方のデバイスへデータを送受信するデータ処理方法であって、
前記データ処理を行なうデータ処理装置が節電状態のときには転送対象データを送信する前記デバイスが前記信号線を使用できないような状態に設定しておくステップと、
前記節電状態のときに前記転送対象データを受信した際には、当該所定のデバイスに前記信号線の使用権を与えるステップと、
前記節電状態のときに前記転送対象データを受信した際には、前記データ処理装置を前記節電状態から復帰させるステップと、
前記データ処理装置が前記節電状態から復帰したときに、前記転送対象を送信する前記デバイスが前記信号線を使用できる状態に設定するステップと
を有することを特徴とするデータ処理方法。
【請求項２】
信号を送受信するための信号線を複数のデバイスで共有しつつ、一方のデバイスから他方のデバイスへデータを送受信するデータ処理装置であって、
前記データ処理を行なうデータ処理装置が節電状態のときには転送対象データを送信する前記デバイスが前記信号線を使用できないような状態に設定しておき、前記節電状態のときに前記転送対象データを受信した際には、前記データ処理装置を前記節電状態から復帰させ、当該所定のデバイスに前記信号線の使用権を与えるとともに、前記転送対象データを送信する前記デバイスが前記信号線を使用できる状態に設定する制御部
を備えたことを特徴とするデータ処理装置。
【請求項３】
前記制御部は、
前記データ処理装置が節電状態のときに前記転送対象データを受信した際には、前記信号線の使用権を前記所定のデバイスに与える使用権制御部と、
当該データ処理装置が節電状態のときには前記信号線を使用状態に設定しておき、前記節電状態のときに前記転送対象データを受信した際には、前記データ処理装置を前記節電状態から復帰させ、前記データ処理装置が前記節電状態から復帰したときに前記信号線を前記使用状態から未使用状態に設定することで、前記信号線の使用権を与えられた前記所定のデバイスが、前記信号線を使用可能にする信号線制御部と
を有することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記信号線制御部は、
前記デバイスから発せられるデータ転送要求を監視するデータ転送要求監視部と、
前記データ処理装置が前記節電状態のときに前記データ転送要求監視部が前記データ転送要求を検知したときに前記データ処理装置を前記節電状態から復帰させる復帰処理部と
を有することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記復帰処理部は、
前記節電状態から復帰させるための節電解除要求を行なう割込要求を送る割込要求送信部と、
前記節電解除要求に応答した節電解除通知を受け取る節電解除通知受信部と
を有し、
前記節電解除通知受信部が受信する前記節電解除通知に応答して、前記信号線を前記使用状態から未使用状態に設定する
ことを特徴とする請求項３または４に記載のデータ処理装置。
【請求項６】
前記信号線制御部は、当該信号線制御部単独で前記信号線を使用してデータ転送を行なうことで前記信号線を使用状態に設定する
ことを特徴とする請求項３〜５の内の何れか１項に記載のデータ処理装置。
【請求項７】
画像信号を処理して所定の出力媒体に画像を形成する画像形成装置において、
信号を送受信するための信号線を複数のデバイスで共有しつつ、一方のデバイスから他方のデバイスへ所定のデータを送受信することで前記画像信号に対して画像処理を施すデータ処理部であって、当該データ処理部が節電状態のときには前記信号線を使用状態に設定しておき、前記節電状態のときに転送対象データを受信した際には、当該所定のデバイスに前記信号線の使用権を与えるとともに前記データ処理部を前記節電状態から復帰させ、前記信号線を前記使用状態から未使用状態に設定することで、前記信号線の使用権を与えられた前記所定のデバイスが前記信号線を使用可能にする制御部と、
前記データ処理部により処理された画像信号に基づいて、前記所定の出力媒体上に画像を形成する画像記録部と
を備えていることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理方法およびデータ処理装置並びに画像形成装置に関する。より詳細には、プリンタや複写機などの画像処理機能を有する画像処理装置などのデータ処理装置や、画像処理装置を有する画像形成装置などに用いて好適な省電力（節電）制御が可能な仕組みにおける、データ転送と節電機能の関わりに関する。
【背景技術】
【０００２】
近年では種々の電子機器において、様々な節電（省電力化ともいわれる）技術が用いられるとともに、効率の良い節電技術が求められており、様々な仕組みが考えられている。
【０００３】
たとえば、近年、環境に優しい製品の要求が強まり、プリンタや複写機などの電子機器においても待機時の消費電力削減の要求が一層大きくなっている。
【０００４】
この省電力化の仕組みにおいては、たとえばデータ転送が行なわれない期間は省電力モード（節電モードやスリープモードともいう）へ以降し、データ転送が検知された場合に省電力モードを解除することにより、通常モードでのデータ転送を可能にしつつ、省電力化を図る仕組みが考えられている。
【０００５】
なお、装置における“節電”とは、装置の極一部が動作可能にセットされ、他の大部分が電源断（オフ）の状態にあり、動作不能の状態にあることを意味する。
【０００６】
ここで、効率の良い節電技術の中身としては、たとえば、装置の使用中に必要に応じて節電を行なうことや、節電移行後には、できるだけ深い節電状態にするなどの、節電状態そのものに関わるもの（第１の節電技術という）と、節電状態からの復帰に関わるもの（第２の節電技術（特に復帰技術）という）に大別することができる。
【０００７】
第２の節電技術に関しては、たとえば、節電モードからの復帰に、割込信号を利用する仕組みが提案されている（たとえば特許文献１，２を参照）。
【０００８】
【特許文献１】特開２００１−１８００８３号公報
【特許文献２】特開２００１−３３７８３８号公報
【０００９】
たとえば、特許文献１に記載の仕組みは、所定時間以上データ転送要求信号が出力されないと制御部へのクロック供給を停止させるスリープモードへ遷移させ、外部のホストコンピュータなどからデータを受信するとスリープモードを解除する専用の機能部を設ける仕組みとしている。また、この専用の機能部は、通信インタフェースにＩ／Ｏ機器が接続されている場合に、Ｉ／Ｏ機器から所定時間以上データ転送要求信号が出力されないと、制御部などへの電源供給を停止させる電源停止モードへ遷移させ、Ｉ／Ｏ機器からデータを受信すると電源停止モードを解除する仕組みとしている。
【００１０】
こうすることで、大幅に省電力を図るとともに、節電状態からの復帰時には、復帰処理が終了するまで上位装置に対してデータ送信を待機させることで、効率よい省電力制御とデータ送信が速やかに立ち上がり、正常に通信を行なうことができるようにしている。
【００１１】
また、特許文献２に記載の仕組みは、入力信号から所定の条件に従い入力信号のパターンを生成し、入力信号パターンと所定のパターンデータとを比較して両者が一致した場合に割込信号を発生させる専用の機能部を設けることで、制御部の動作を停止させて省電力化を図るスリープモードから起動状態に復帰させるための割込みの発生条件を、種々の環境変化に対応させる仕組みにしている。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、特許文献１，２に記載の仕組みは、前述のような制御を行なうための専用の機能部を設ける必要があるため、汎用性に乏しい。たとえば、外部のＩ／Ｏ機器からデータを受信した際、データ転送を開始する前に割込みを発生する機能は、汎用のインタフェース基板には用意されていないため、通信インタフェース部に、ＡＳＩＣ（Application Specific Integrated Circuit ；特定用途向けＩＣ）などのカスタマイズ部品を設計する必要がある。
【００１３】
一方で、コンピュータのインタフェースに見られる通り、新しいインタフェースが短期間に出てくるために、カスタマイズ部品の作り替えが短期間に発生してしまい、その都度カスタマイズ部品を設計すると、投資額が嵩むという問題がある。
【００１４】
他方で、投資額を抑制した場合には、カスタマイズ部品を使用しなければよいのであるが、その場合、汎用の通信インタフェース部品を使用せざるを得ず、先に指摘した通り、汎用の通信インタフェース部品には、データを受信した際、データ転送を開始する前に割込みを発生する機能を持たない。
【００１５】
結果的には、汎用の通信インタフェース部品を使用した場合でも、装置が節電状態にあるときに他のデバイスから確実にデータ受信できるようにするには、あまり深い節電状態に入れることができない、という問題が生じる。あまり深い節電状態に入れてしまうと、節電状態中にいきなりデータ転送を開始しようとしてしまい、たとえば節電状態から復帰していないメモリとの間でのデータ書込みや読出しがなされようとするので、装置が異常になるからである。つまり、投資額を抑制した場合には、汎用品を使用せざるを得ず、省電力化を効果的に実現することと、節電状態からの正常な復帰を安全に実現することの両立が困難になるという問題が生じる。
【００１６】
本発明は、上記事情に鑑みてなされたものであり、汎用品を用いても、省電力化を効果的に実現することができるとともに、節電状態からの復帰を適切に行なうことのできる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明に係る仕組みにおいては、先ず、データ処理を行なうデータ処理装置が節電状態のときには転送対象データを送信（転送）するデバイスが信号線を使用できないような状態に設定しておく。そして、節電状態のときにあるデバイスから転送対象データを受信した際には、データ処理装置を節電状態から復帰させるとともに、そのデバイスに信号線の使用権を与え、データ処理装置が節電状態から復帰したときに、転送対象データを送信するデバイスが信号線を使用できる状態に設定する。
【００１８】
たとえば、受信したデータを転送するデバイスが信号線を使用できないような状態に設定するには、信号線を使用状態に設定する手法を採るのがよい。この場合、全体としては、装置が節電状態のときには信号線を使用状態に設定しておき（信号線使用禁止ステップという）、節電状態のときに任意のデバイスからデータを受信した際には、装置を節電状態から復帰させ（節電復帰ステップという）、そのデバイスに信号線の使用権を与える（使用権設定ステップ）。また、データ処理装置が節電状態から復帰したときに信号線を使用状態から未使用状態に設定する（信号線使用許可ステップという）。使用権設定ステップと信号線使用許可ステップとでは、データ転送に必要な箇所の節電状態を解除する。
【００１９】
つまり、本発明に係る仕組みにおいては、節電の制御に際して、信号線の使用状態をも制御することで、省電力化を効果的に実現することと、節電状態からの正常な復帰を安全に実現することの両立を図る。
【００２０】
好ましくは、節電復帰ステップにて、同時に使用権設定ステップを実行して、デバイスに信号線の使用権を与えておき、その後の信号線使用許可ステップにて、信号線を使用状態から未使用状態に設定するのがよい。
【００２１】
もちろん、信号線使用許可ステップにて、同時に使用権設定ステップを実行することで、信号線使用許可ステップにて信号線を使用状態から未使用状態に設定する動作とデバイスへの信号線の使用権の付与を同時に行なうようにしてもよい。
【００２２】
本発明においては、共用の信号線をあるデバイスが使用中のときに、他のデバイスはその信号線を使用できないことを前提とする。このように、信号線を使用状態にするか否の仕組みは、信号線を複数のデバイスで共有する場合に基本的に使用される仕組みである。そして、装置が節電状態のときには信号線を使用状態に設定しておくことで、装置が節電状態のときにデータ転送要求を受け付けても、節電状態から通常状態に適切に戻るまでは、たとえ信号線の使用権がデータ転送要求を発したデバイスに付与されたとしても、実際のデータ転送の開始を禁止する。つまり、節電中は、信号線を使用状態としておくことで、他のデバイスがデータ転送を行なうことができないような仕組みにする。
【発明の効果】
【００２３】
本発明によれば、節電の制御に際して、節電中は信号線を使用状態にすることで節電中にデータ転送がなされることを回避することができる。よって、省電力化を効果的に実現することと節電状態からの正常な復帰を安全に実現することの両立を図ることができる。
【００２４】
加えて、信号線を使用状態にするか否の仕組みは、信号線を複数のデバイスで共有する場合に基本的に使用される仕組みであり、特許文献１，２に記載の仕組みとは異なり、通信インタフェース部に特殊な構成を必要としない。換言すれば、通信インタフェース部に汎用品を用いても、省電力化を効果的に実現することができるとともに、節電状態からの復帰を適切に行なうことができる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して本発明の実施形態について詳細に説明する。
【００２６】
＜データ処理装置の概要＞
図１は、本発明に係るデータ処理装置の一実施形態の構成例を示す図である。本実施形態のデータ処理装置３は、信号を送受信するためのバス（Ｂｕｓ；共有信号線）４０を複数のデバイスで共有しつつ、一方のデバイスから他方のデバイスへデータを送受信することで所定のデータ処理を行なうものである。バス４０は、メモリ用のバスであるメモリバスとＩ／Ｏデバイス用のバスであるＩ／Ｏバスとを含む。
【００２７】
ここで、本実施形態のデータ処理装置３は、当該データ処理装置３の全体を制御するコントローラ部３１と、当該データ処理装置３内の他のデバイスや図示しない外部のＩ／Ｏ（入出力）デバイスとの間のインタフェース機能をなすＩ／Ｏインタフェース部３５と、節電機能に関わる信号線制御部の一例である節電制御部３６とが、バス４０を共有するように構成されている。Ｉ／Ｏインタフェース部３５としては、１つに限らず複数が設けられてよい。
【００２８】
コントローラ部３１は、たとえば、ＣＰＵ（Central Processing Unit ）３１ａや、ＲＯＭ（Read Only Memory）およびＤＲＡＭ（Dynamic RAM ）を含むＲＡＭ（Random Access Memory）３１ｂを有するメモリ部や、あるいはＤＭＡＣ（Direct Memory Access Controller ）３１ｃを有する。ＣＰＵ３１ａは、種々のクロック信号を生成するＰＬＬ（Phase Locked Loop ；位相同期）回路３１ｄを内蔵している。
【００２９】
また、コントローラ部３１は、バス４０の使用要求を受けてバス要求を調停する、つまりバス４０の使用権を制御する使用権制御部３２を有する。使用権制御部３２は、Ｉ／Ｏインタフェース部３５からのデータ受信信号Ｓ３やその他のデバイス（節電制御部３６やＤＭＡＣを含む）からのデータ受信信号を受け付けると、複数のデバイスでの競合使用が起きないようにバス調停を行なって、何れか１つのデバイスのみにバス４０の使用権を示すバス使用許可信号Ｓ４を送る。
【００３０】
なお、データ受信信号Ｓ３は、Ｉ／Ｏインタフェース部３５が節電中に転送すべきデータを受け付けたことを示すものであればよく、たとえば、データ受信をトリガとしてデータ転送要求信号ＲＥＱを生成してもよいし、データ受信をトリガとして送出データがあることを示すデータ有効信号ＤＶ（Data Valid）を生成してもよい。
【００３１】
本実施形態では、データ処理装置３が節電状態のときにＩ／Ｏインタフェース部３５が外部のＩ／Ｏ装置からデータを受信した際の節電状態からの復帰とデータ転送の開始に着目して、図では、データ受信信号Ｓ３やバス使用許可信号Ｓ４を、Ｉ／Ｏインタフェース部３５についてのみ示す。
【００３２】
また、コントローラ部３１は、複数のデバイス間で使用される１つの資源（リソース）であるバス４０を使用したいという要求が複数存在する場合に、それらを調停してそれぞれの要求を満たしていくアービトレーション（Arbitration ）処理を行なうバス調停部（バスアービタ）や、バス４０やその他の信号のインタフェース機能をなすブリッジ部などが設けられることもある。本構成例では、先にも説明したように、使用権制御部３２が、バス調停部の機能を担当することになる。なお、ＤＭＡＣ３１ｃがバス調停部の機能を担当してもよい。
【００３３】
また、コントローラ部３１は、節電状態からの復帰処理を行なう節電解除処理部３４を有する。節電解除処理部３４は、先ず、節電モードからの復帰指示を示す節電解除要求信号（節電解除トリガ）Ｓ１を受け付ける節電解除トリガ検出部３４ａを有する。節電解除要求の一例としては、ＳＭＩ（System Management Interrupt ）割込みが用いられ、コントローラ部３１には、節電解除要求信号Ｓ１としての割込信号ＳＭＩ用の入力端子ＳＭＩＩを有する。また、節電解除処理部３４は、節電解除トリガ検出部３４ａが受信した節電解除要求に応答した節電解除通知信号Ｓ２を発する節電解除通知送信部３４ｂを有する。節電解除通知信号Ｓ２としては、たとえばスリープ信号や節電信号（あるいは節電解除信号）が用いられ、コントローラ部３１には、その節電解除通知信号Ｓ２用の出力端子Ｓ２Ｏを有する。使用権制御部３２や節電解除処理部３４は、たとえば、ＣＰＵ３１ａが、それら機能を担当するように構成するのがよい。
【００３４】
節電制御部３６は、装置が節電状態（節電モードへの移行段階から完全に復帰するまでを含む）のときには、複数のバスデバイスが共用するバス４０を使用してバスデバイスの一例である汎用Ｉ／Ｏ＿ＬＳＩ１５６が他のバスデバイスにデータを転送することを禁止する機能を持っている。たとえば、データ処理装置３が節電状態のときにはバス４０を使用状態に設定しておき、節電状態のときに所定のデバイスからデータを受信した際には、データ処理装置３を節電状態から復帰させ、この後、データ処理装置３が節電状態から復帰したときにバス４０を使用状態から未使用状態に設定する機能を有している。
【００３５】
ここで、あるデバイスがバス４０を使用中には、他のデバイスはそのバス４０を使用できない。つまり、ある瞬間にバス４０バスを使用できるのは１つのデバイスだけである。なお、“バス”は、コンピュータなどが利用する様々なデバイスの間で信号を送受信するために設けた信号線やそれに付随する回路の総称であり、データを格納する場所を示すアドレスバスと、実際に処理する情報を伝送するデータバスの何れをも含む。通常は１６ビットや３２ビットなど、一定幅のビット数の信号を並行して伝送する。また、バスの形態や目的により、幾つかに分類できるが、本実施形態においては、解決課題の観点から、たとえばＣＰＵ内でレジスタと演算器などを結ぶローカルバスは問題とせずに、ＣＰＵ３１ａとメモリ部３１ｂや各種インタフェースとを接続する、あるいはコンピュータに拡張カードを装着するための拡張バスなどに着目する。
【００３６】
節電制御部３６は、Ｉ／Ｏデバイス（本例ではＩ／Ｏインタフェース部３５）から発せられるデータ受信信号Ｓ３を監視するデータ転送要求監視部３７と、データ処理装置３が節電状態のときにデータ転送要求監視部３７がデータ受信信号Ｓ３を検知したときにデータ処理装置３を節電状態から復帰させる復帰処理部３８とを有している。また、節電解除要求信号Ｓ１としての割込信号ＳＭＩ用の出力端子ＳＭＩＯと、節電解除通知信号Ｓ２用の入力端子Ｓ２Ｉを有する。
【００３７】
データ転送要求監視部３７は、データ受信信号Ｓ３を検知すると、そのことを復帰処理部３８に通知する。これを受けて、復帰処理部３８は、節電解除トリガ検出部３４ａへの入力信号である節電解除要求信号Ｓ１（としての割込信号ＳＭＩ）を出力端子ＳＭＩＯから発する。つまり、節電制御部３６は、外部のＩ／Ｏデバイスからのデータ転送要求に対応するデータ受信信号Ｓ３から節電解除トリガ検出部３４ａへの節電解除要求信号Ｓ１を作ることで、データ処理装置３の節電状態の解除を行なう。
【００３８】
また、復帰処理部３８は、データ処理装置３が節電状態のときには、復帰処理部３８単独でバス４０を使用してデータ転送を行なうことでバス４０を使用状態に設定する。また、復帰処理部３８は、節電解除通知信号Ｓ２をコントローラ部３１から入力端子Ｓ２Ｉで受け取ると、バス４０を使用状態から未使用状態に設定する。
【００３９】
つまり、復帰処理部３８は、バスマスタデバイスとターゲットデバイスの両機能を持つ、換言すれば、バスマスタデバイスとターゲットデバイスが同一のデバイスで構成されるものであり、バスマスタデバイスからターゲットデバイスへのバス４０を介したデータアクセスを行なうことでバス４０を使用状態に設定し、節電状態から解除されると、バスマスタデバイスからターゲットデバイスへのバス４０を介したデータアクセスを中止することで、バス４０を他のデバイスに開放する。
【００４０】
＜データ処理装置の節電処理の概要＞
図２は、図１に示したデータ処理装置３における節電処理手順の概要を示したフローチャートである。
【００４１】
通常状態中に所定の条件にてデータ処理装置３が節電モードへの移行指示がなされると、節電モードからの復帰に必要な最低限の機能部分やデータ破壊防止用の回路（たとえばＤＲＡＭのリフレッシュ回路など）など必要最低限の部分のみを動作させ、コントローラ部３１だけでなく復帰処理部３８を含むデータ処理装置３の大部分が節電状態に入る（Ｓ１）。
【００４２】
節電モードからの復帰に必要な最低限の機能部分としては、Ｉ／Ｏインタフェース部３５における外部機器からのデータを受け付ける機能に関わる機能部分（データ受信部やデータ受信信号Ｓ３を生成する機能部分）や、節電制御部３６や、節電解除トリガ検出部３４ａなどである。
【００４３】
処理装置３が節電中には、バスマスタデバイスからターゲットデバイスへのデータアクセスをバス４０にて行なうことで（つまりバスアクセスにて）バス４０を使用状態として、他のデバイスがバス４０を使用してデータ転送を行なうことができないように設定する（Ｓ２）。復帰処理部３８は、Ｉ／Ｏインタフェース部３５が外部のＩ／Ｏ装置からデータ転送を要求されたことを示すデータ受信信号Ｓ３を、データ転送要求監視部３７が検知するまで待機する（Ｓ５−ＮＯ）。
【００４４】
Ｉ／Ｏインタフェース部３５は、データ処理装置３が節電中に、外部のＩ／Ｏ装置からデータを受信すると（Ｓ３−ＹＥＳ）、データ受信信号Ｓ３をコントローラ部３１の使用権制御部３２に送る（Ｓ４）。これを受けて、コントローラ部３１の使用権制御部３２は、Ｉ／Ｏインタフェース部３５に対して、バス使用許可信号Ｓ４を送ることでバス４０の使用権を与える（Ｓ４）。Ｉ／Ｏインタフェース部３５は、バス４０の使用権を与えられても、復帰処理部３８によってバス４０が使用されているので、バス４０の使用状態が解除されるまではデータ転送ができない（Ｓ１０−ＮＯ）。
【００４５】
復帰処理部３８は、データ処理装置３が節電状態にあるときに、Ｉ／Ｏインタフェース部３５が外部のＩ／Ｏ装置からデータ転送を要求されると（Ｓ５−ＹＥＳ）、そのことを示すデータ転送要求監視部３７が検知したデータ受信信号Ｓ３に基づきコントローラ部３１の節電解除トリガ検出部３４ａに節電解除要求信号Ｓ１を送る（Ｓ６）。コントローラ部３１は、節電解除トリガ検出部３４ａにて節電解除要求信号Ｓ１を受け取ると、節電制御部３６を節電状態から復帰させ通常状態に戻した後に、節電解除通知送信部３４ｂにて節電解除通知信号Ｓ２を復帰処理部３８に送る（Ｓ７）。
【００４６】
復帰処理部３８は、節電解除要求信号Ｓ１に応答した節電解除通知信号Ｓ２を節電解除通知送信部３４ｂから受け取ってから、節電制御部３６を節電状態から復帰させ通常状態に戻す（Ｓ８）。また、復帰処理部３８は、節電状態の解除が完全に完了すると、バス４０を使用状態から未使用状態に設定する（バス４０の使用状態を解除する）ことで、Ｉ／Ｏインタフェース部３５にデータ転送を許諾する（Ｓ９）。
【００４７】
つまり、復帰処理部３８は、Ｉ／Ｏインタフェース部３５（つまり外部のＩ／Ｏデバイス）とメモリ部もしくはＩ／Ｏインタフェース部３５やバス４０を介したＩ／Ｏデバイス間でデータ転送を行なう前に、データ処理装置３のデータ転送に必要な箇所を、節電状態から所定の順で段階的に復帰させる。
【００４８】
Ｉ／Ｏインタフェース部３５は、既にバス４０の使用権を与えられているので、復帰処理部３８によってバス４０の使用状態が解除される（つまりバスがアイドル状態になる）と（Ｓ１０−ＹＥＳ）、コントローラ部３１のメモリなどへ、外部のＩ／Ｏ装置から受信したデータの転送を直ちに開始する（Ｓ１１）。
【００４９】
以上のステップを踏むことで、データ処理装置３は安全に節電状態へと移行することが可能であると同時に、節電中に意図しないデータ転送がバス４０上で行なわれることを防ぐことができる。結果として、データ処理装置３を安全に節電状態に入れ、また、必要に応じて安全に復帰させた後にデータ転送を開始することができる。
【００５０】
＜データ処理システムの全体構成；ＰＣＩ利用＞
図３は、本発明に係る画像形成装置を備えたデータ処理システムの一実施形態の構成例を示す図である。本実施形態のデータ処理システム１は、本発明に係るデータ処理装置３を画像処理装置として備えた画像形成装置の一実施形態として、画像形成部３００を有するプリンタの構成にしている。
【００５１】
図３では、ＣＰＵやメモリを利用してソフトウエア的に画像形成処理を行なう機能を持つ画像形成装置２を構成する、すなわちパーソナルコンピュータなどのコンピュータ（電子計算機）の機能を利用して画像形成処理をソフトウエア的に実現する場合のハードウエア構成の一例を示している。
【００５２】
データ処理装置３は、複数のデバイスで共有する信号線（図１のバス４０に相当）として、ＰＣＩ（Peripheral Component Interconnect ）バスを利用した構成としている。ただし、これは一例であって、本発明に係るデータ処理装置は、ＰＣＩバス以外の共有信号線で構成されていてもよいし、プリンタに限らず、ＣＰＵなどの制御装置により制御されるあらゆる装置であってよく、様々なデータ処理装置を用いて、データ処理システムを構築することができる。
【００５３】
図示するように、本実施形態のデータ処理システム１は、データ処理装置３を含みプリンタとして構成された画像形成装置２と、他の外部装置５とが通信ネットワーク９により接続されて構成されている。外部装置５としては、たとえば、パーソナルコンピュータ（ＰＣ；Personal Computer）やその他の電子計算機で構成されたホスト装置が用いられる。図示した例では、２台のホスト装置５ａ，５ｂが通信ネットワーク９に接続されている状態を示しているが、その台数は２台に限らず、１台であってもよいし、３台以上であってもよい。
【００５４】
画像形成装置２は、内部コントローラ部１００を主要部とするデータ処理装置３と、処理済みの画像を所定の出力媒体（たとえば印刷用紙）に出力する画像形成部３００とを備えている。
【００５５】
図示を割愛するが、たとえば、スキャナ装置などの画像読取部をも設けることで、画像形成装置２を複写装置として構成することもできる。また、図示を割愛するが、カスタマーインタフェースをなす機能部としての指示入力部と、操作時のガイダンス画面や処理結果などの所定の情報をカスタマーに提示する表示出力部とが設けられる。
【００５６】
内部コントローラ部１００は、パーソナルコンピュータなどの電子計算機と同様の構成にしている。画像形成部３００に、画像形成処理を行なわせるに当たって、電子計算機の仕組みを利用することで、その機能を実現するプログラムコードに基づき電子計算機を用いてソフトウエア的に画像形成処理機能を実現することができるようになる。ソフトウエアにより画像形成処理機能を実行させる仕組みとすることで、ハードウエアの変更を伴うことなく、処理手順などを容易に変更できる利点を享受できるようになる。
【００５７】
電子計算機に一連の画像形成処理機能をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ（組込マイコンなど）、あるいは、ＣＰＵ、論理回路、記憶装置などの機能を１つのチップ上に搭載して所望のシステムを実現するＳＯＣ（System On a Chip：システムオンチップ）、または、各種のプログラムをインストールすることで各種の機能を実行することが可能な汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【００５８】
記録媒体は、コンピュータのハードウエア資源に備えられている読取装置に対して、プログラムの記述内容に応じて、磁気、光、電気などのエネルギの変化状態を引き起こして、それに対応する信号の形式で、読取装置にプログラムの記述内容を伝達できるものである。
【００５９】
たとえば、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクＦＤを含む）、光ディスク（ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory ）、ＤＶＤ（Digital Versatile Disc）を含む）、光磁気ディスク（ＭＤ（Mini Disc ）を含む）、または半導体メモリなどよりなるパッケージメディア（可搬型の記憶媒体）により構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭやハードディスクなどで構成されてもよい。
【００６０】
また、ソフトウエアを構成するプログラムは、記録媒体を介して提供されることに限らず、有線あるいは無線などの通信網を介して提供されてもよい。
【００６１】
たとえば、画像形成処理機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、ハードウエア処理回路にて構成する場合と同様の効果は達成される。この場合、記憶媒体から読み出されたプログラムコード自体が画像形成処理機能を実現する。
【００６２】
また、コンピュータが読み出したプログラムコードを実行することで、画像形成処理を行なう機能が実現されるだけでなく、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（Operating Systems ；基本ソフト）などが実際の処理の一部または全部を行ない、その処理により画像形成処理を行なう機能が実現される場合であってもよい。
【００６３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって画像形成処理を行なう機能が実現される場合であってもよい。
【００６４】
なお、画像形成処理を行なう機能を実現するプログラムコードを記述したファイルとしてプログラムが提供されるが、この場合、一括のプログラムファイルとして提供されることに限らず、コンピュータで構成されるシステムのハードウエア構成に応じて、個別のプログラムモジュールとして提供されてもよい。
【００６５】
内部コントローラ部１００は、演算制御機能の中心を司るものであって、システム全体の制御を行なうＣＰＵ１１０と、データを記憶するメインメモリ部１２０と、メインメモリ部１２０からＣＰＵ１１０へのデータの読み込みを高速化するためのキャッシュメモリ（Cache Memory）１３０とを備えている。
【００６６】
また内部コントローラ部１００は、バス調停制御部１４０と、各機能部との間のインタフェース機能をなすインタフェース部（Ｉ／Ｆ部）１５０と、本実施形態の特徴部分である節電制御処理を行なう節電制御部１６０とを有する。
【００６７】
図１との対応では、ＣＰＵ１１０、メインメモリ部１２０、キャッシュメモリ１３０、およびバス調停制御部１４０とで、コントローラ部３１が構成される。また、インタフェース部１５０がＩ／Ｏインタフェース部３５に対応する。また、節電制御部１６０が、節電制御部３６に対応する。
【００６８】
メインメモリ部１２０としては、随時書込みおよび読出しが可能であるとともに揮発性の記憶部の一例であるＲＡＭを用いている。特に本実施形態では、ＲＡＭの一態様であるＤＲＡＭとして、第１ＤＲＡＭ１２２および第２ＤＲＡＭ１２４の２つを用いている。
【００６９】
メインメモリ部１２０は、プログラム制御変数や各種処理のためのデータなどを格納する。また、メインメモリ部１２０は、所定のアプリケーションプログラムによって取得した電子ドキュメント（文字データのみに限らず画像データを含んでよい）や自装置で取得した画像データ、さらには外部から取得した電子データなどを一時的に格納する領域を含んでいる。
【００７０】
なお、図では図示を割愛しているが、記憶部として、ＲＡＭ以外にも、制御プログラムやパラメータなどを格納する読出専用の不揮発性の記憶部であるＲＯＭが設けられる。
【００７１】
上記において“揮発性の記憶部”とは、データ処理装置３の電源がオフされた場合には、記憶内容を消滅してしまう形態の記憶部を意味する。一方、“不揮発性の記憶部”とは、データ処理装置３のメイン電源がオフされた場合でも、記憶内容を保持し続ける形態の記憶部を意味する。記憶内容を保持し続けることができるものであればよく、半導体製のメモリ素子自体が不揮発性を有するものに限らず、バックアップ電源を備えることで、揮発性のメモリ素子を“不揮発性”を呈するように構成するものであってもよい。また、半導体製のメモリ素子により構成することに限らず、磁気ディスクや光ディスクなどの媒体を利用して構成してもよい。たとえば、ハードディスク装置を不揮発性の記憶部として利用できる。
【００７２】
バス調停制御部１４０は、バス調停回路を用いてバス要求を調停するアーキテクチャを採用するために用いられており、一例として、バス調停を行なうバスアービタ１４２と、バスアービタ１４２とＣＰＵ１１０やメインメモリ部１２０などとの間に介在してデータの受け渡しを中継するバスブリッジ部１４４とを有している。
【００７３】
メインメモリ部１２０や図示を割愛したＲＯＭはメモリバス１５８にてバスブリッジ部１４４に接続され、インタフェース部１５０や節電制御部１６０は、Ｉ／Ｏバス１５９にてバスブリッジ部１４４に接続されている。メモリバス１５８およびＩ／Ｏバス１５９は、アドレスバスとデータバスとを含む。
【００７４】
なお、バスアービタ１４２は、本実施形態のように、バスブリッジ部１４４の外部に独立した回路として設ける場合もあるし、図示を割愛するが、バスブリッジ部１４４に内臓される場合もある。
【００７５】
また本実施形態では、ＣＰＵ１１０およびメインメモリ部１２０の双方に節電機能が設けられるものとするが、これに限定されず、たとえば、ＣＰＵ１１０のみに節電機能があってもよい。メインメモリ部１２０はメモリコントローラを含むメモリ装置を広く指し、メモリコントローラに節電機能を設けた場合にも、ここでいう節電機能付きのメモリに含まれる。なお、メモリコントローラは、メインメモリ部１２０内にあることに限らず、たとえばバスブリッジ部１４４に配されることもある。
【００７６】
インタフェース部１５０としては、画像形成部３００などの画像機器とのインタフェースを司るビデオＩ／Ｆ部１５２と、外部のＩ／Ｏ装置（図ではホスト装置５ａや通信ネットワーク９と接続されるその他の機器）とのインタフェースを司るＩ／Ｏ＿ＡＳＩＣ（特定用途向けＩＣ）１５４と、Ｉ／Ｏ＿ＡＳＩＣ１５４では提供できていない新たなＩ／Ｆ＿ＬＳＩである汎用Ｉ／Ｏ＿ＬＳＩ１５６とを有している。
【００７７】
なお、Ｉ／Ｏ＿ＡＳＩＣ１５４と節電制御部１６０との間の汎用バス１５７、メインメモリ部１２０とバスブリッジ部１４４との間のメモリバス１５８、あるいはビデオＩ／Ｆ部１５２、Ｉ／Ｏ＿ＡＳＩＣ１５４、および汎用Ｉ／Ｏ＿ＬＳＩ１５６とバスブリッジ部１４４との間のＩ／Ｏバス１５９もインタフェース部１５０に含まれるものと考えてもよい。
【００７８】
Ｉ／Ｏ＿ＡＳＩＣ１５４は、たとえばインターネットなどのネットワークとの間の通信データの受け渡しを仲介するネットワークＩ／Ｆ部１５４ａ、シリアルデータの受け渡しを仲介するＵＳＢ（Universal Serial Bus）＿Ｉ／Ｆ部１５４ｂ、およびパラレルデータの受け渡しを仲介するパラレルＩ／Ｆ部１５４ｃの各インタフェース機能部を有する。
【００７９】
また、Ｉ／Ｏ＿ＡＳＩＣ１５４は、各Ｉ／Ｆ部１５４ａ，１５４ｂ，１５４ｃを介して外部のＩ／Ｏ装置（ホスト装置５ａなど）からデータを受信したときに、ＣＰＵ１１０に割込みを発生させて節電状態から復帰させる機能を持ち、ＣＰＵ１１０が節電状態から完全に復帰してから所望のデータ転送を開始する。
【００８０】
汎用Ｉ／Ｏ＿ＬＳＩ１５６は、Ｉ／Ｏ＿ＡＳＩＣ１５４が関知しない外部Ｉ／Ｏ装置とのインタフェースを司るもので、節電制御部１６０が存在しない場合において、これをＰＣＩ（Peripheral Component Interconnect ）のＩ／Ｏバス１５９に直接接続した場合には、Ｉ／Ｏ＿ＡＳＩＣ１５４を利用した節電復帰機能を有効に活用することができないので、結果的には、汎用Ｉ／Ｏ＿ＬＳＩ１５６を介してのデータ受信ができるように、ＣＰＵ１１０を浅い節電モードにしか入れることしかできない。この問題を解決するために、本実施形態では、節電制御部１６０を設けている。
【００８１】
節電制御部１６０は、ＰＣＩマスタデバイスである第１節電制御部１６２と、ＰＣＩターゲットデバイスである第２節電制御部１６４とを有して構成されている。主に第２節電制御部１６４が、図１に示したデータ転送要求監視部３７および復帰処理部３８の機能を担うが、節電中にＩ／Ｏバス１５９使用状態にするのは、第１節電制御部１６２と第２節電制御部１６４との共同作業による。
【００８２】
インタフェース部１５０内の各Ｉ／Ｆ部１５２〜１５６や節電制御部１６０内の各節電制御部１６２，１６４などの各ＰＣＩデバイスは、Ｉ／Ｏバス１５９と接続されている。また、バスアービタ１４２とインタフェース部１５０内の各Ｉ／Ｆ部１５２〜１５６や第１節電制御部１６２などの各ＰＣＩデバイスとの間では、要求信号ＮＲＥＱと許可信号ＮＧＮＴの受け渡しがある。たとえば、バス調停制御部１４０のバスアービタ１４２は、各ＰＣＩデバイスからの要求信号ＮＲＥＱを対応するＮＲＥＱ入力端子（図中に０〜３の参照子を付して示す）で受け、対応するＮＧＮＴ出力端子（図中に０〜３の参照子を付して示す）から、唯一のデバイスにのみ許可信号ＮＧＮＴを与える。ＰＣＩデバイスは許可信号ＮＧＮＴを受け取った場合にのみＩ／Ｏバス１５９の使用権を得、Ｉ／Ｏバス１５９を使用することが可能となる。
【００８３】
なお、ＮＲＥＱ０，ＮＧＮＴ０は第１節電制御部１６２用であり、ＮＲＥＱ１，ＮＧＮＴ１は汎用Ｉ／Ｏ＿ＬＳＩ１５６用であり、ＮＲＥＱ２，ＮＧＮＴ２はＩ／Ｏ＿ＡＳＩＣ１５４用であり、ＮＲＥＱ３，ＮＧＮＴ３はビデオＩ／Ｆ部１５２用である。
【００８４】
また、本実施形態においては、ＳＭＩ割込みを利用するＩ／Ｏ＿ＡＳＩＣ１５４をも搭載した構成としており、Ｉ／Ｏ＿ＡＳＩＣ１５４は、節電中にＰＣＩバスの使用が必要な場合には割込信号ＮＳＭＩを先に出す仕組みができているため、節電制御部１６０にＩ／Ｏ＿ＡＳＩＣ１５４の割込信号ＮＳＭＩを入力して内部状態との矛盾が発生しないようにしている。具体的には、Ｉ／Ｏ＿ＡＳＩＣ１５４のＮＳＭＩ端子と第２節電制御部１６４のＮＳＭＩ入力端子（図ではＮＳＭＩＩと記す）との間は、割込信号ＮＳＭＩの受け渡しがある。また、第２節電制御部１６４のＮＳＭＩ出力端子（図ではＮＳＭＩＯと記す）とＣＰＵ１１０のＮＳＭＩ端子との間では、割込信号ＮＳＭＩの受け渡しがある。さらに、第２節電制御部１６４のＮＱＡＫ端子とＣＰＵ１１０のＮＱＡＫ端子との間では節電信号ＮＱＡＣＫの受け渡しがある。
【００８５】
たとえば、 詳細は後述するが、Ｉ／Ｏ＿ＡＳＩＣ１５４がホスト装置５ａからデータを受信したら第２節電制御部１６４を介してＣＰＵ１１０にＳＭＩ割込みを行ない、ＣＰＵ１１０に節電復帰動作を開始させて節電信号ＮＱＡＣＫをネゲートしてスリープモードから完全に復帰させ、これに応じて汎用Ｉ／Ｏ＿ＬＳＩ１５６を介したＩ／Ｏバス１５９へのデータ転送を可能にする。
【００８６】
また、詳細は後述するが、本実施形態特有の機能として、節電制御部１６０は、節電（スリープ）モード中はＩ／Ｏバス１５９を使用状態（ビジー状態）としておく。この節電中のバス使用状態を作る方策として、バスマスタデバイスである第１節電制御部１６２からターゲットデバイスである第２節電制御部１６４へのデータアクセスを行なうことで実現する。なお、バスマスタデバイス（第１節電制御部１６２）とターゲットデバイス（第２節電制御部１６４）とは、本実施形態のように、独立したデバイスで構成されることに限らず、同一のデバイスで構成されていてもよい。同一のデバイスで構成すれば、よりコンパクトになる。
【００８７】
また、第２節電制御部１６４は、汎用Ｉ／Ｏ＿ＬＳＩ１５６とバスアービタ１４２との間の要求信号ＮＲＥＱ１を監視しており、汎用Ｉ／Ｏ＿ＬＳＩ１５６がホスト装置５ｂからデータを受信したら、第２節電制御部１６４を介してＣＰＵ１１０にＳＭＩ割込みを行なう。これにより、ＣＰＵ１１０に節電復帰動作を開始させてスリープモードから完全に復帰させるともに、Ｉ／Ｏバス１５９のビジー状態を解除する。このとき、第１節電制御部１６２は、バスアービタ１４２にバス要求（要求信号ＮＲＥＱ０）を送り、バスアービタ１４２はこの要求信号ＮＲＥＱ０に対するバス許諾通知（許可信号ＮＧＮＴ１）を汎用Ｉ／Ｏ＿ＬＳＩ１５６に送るようにし、これに応じて汎用Ｉ／Ｏ＿ＬＳＩ１５６を介したＩ／Ｏバス１５９へのデータ転送ができるようにする（詳細は後述する）。
【００８８】
なお、本実施形態においては、節電モード移行中のバスパーキングを汎用Ｉ／Ｏ＿ＬＳＩ１５６以外にする。これは、Ｉ／Ｏ＿ＡＳＩＣ１５４が対応できない外部Ｉ／Ｏ装置用のインタフェース部である汎用Ｉ／Ｏ＿ＬＳＩ１５６がパーキングデバイスである場合には、既にＰＣＩバスが獲得できているために要求信号ＮＲＥＱを出力することなくデータ転送をしてもよいことがＰＣＩの仕様で唄われており、結果として不具合を起こしてしまう問題を回避するためである。
【００８９】
このような構成において、プリンタとして構成された画像形成装置２は、リモートのホスト装置（パーソナルコンピュータ）５ａとネットワークＩ／Ｆ部１５４ａを介して接続され通信ネットワーク９から印刷ジョブを受け付ける。あるいはスタンドアローンのホスト装置５ａにＵＳＢ＿Ｉ／Ｆ部１５４ｂまたはパラレルＩ／Ｆ部１５４ｃを介して接続され、ホスト装置５ａから印刷ジョブを受け付ける。あるいは、スタンドアローンのホスト装置５ｂに汎用Ｉ／Ｏ＿ＬＳＩ１５６を介して接続され、ホスト装置５ｂから印刷ジョブを受け付ける。
【００９０】
＜節電中にデータ転送されることの問題説明＞
図４および図５は、節電中にデータ転送されることの問題を説明する図である。ここで、図４は、節電制御部１６０を設けない場合における節電機能の問題点を説明する図である。また、図５は、図４における節電機能の問題を解決する一手法を説明する図である。
【００９１】
図３に示したデータ処理装置３において、消費電力を削減する一手法として、Ｉ／Ｏ＿ＡＳＩＣ１５４や節電制御部１６０を設けることなく、図４（Ａ）に示すように、ＣＰＵ１１０やメインメモリ部１２０内のＤＲＡＭ１２２，１２４をスリープモードやセルフリフレッシュモードなどといった回路素子に組み込まれた省エネ機能を使用する方法を採る。これは、省電力化の手法として一般的に知られた手法である。
【００９２】
一方、図４（Ｂ）に示すように、ＣＰＵ１１０をスリープモードなどの深い節電状態（最も省エネ効果が高い状態）に入れた場合には、データバスが動作することだけでは節電を解除する条件とはならないため、結果として、メインメモリ部１２０内のＤＲＡＭ１２２，１２４のセルフリフレッシュを解除せずにデータ書込みを実施してしまうことが起こり得る。この場合、データが破棄される現象や、キャッシュメモリ１３０がコヒーレンシ（一貫性）を維持するためのバススヌープ（Bus Snoop ）を行なわないために、キャッシュメモリ１３０内データとＤＲＡＭ１２２，１２４内のデータとの間に不整合が生じる現象が発生する。
【００９３】
この問題を回避するべく、本実施形態では、図５（Ａ）に示すように、外部Ｉ／Ｏ装置とのインタフェースを司るＩ／Ｏ＿ＡＳＩＣ１５４を設けることが考えられる。これは、外部Ｉ／Ｏ装置からデータを受信した際、データ転送を開始する前に割込みを発生する機能は、汎用にＩ／Ｆ部品にはないため、ＡＳＩＣなどのカスタマイズ部品を設計する必要があるためである。なお、このような仕組みにする際には、たとえば、特開２００１−１８００８３号公報や特開２００１−３３７８３８号公報（特に前者）に記載の仕組みを利用するとよい。
【００９４】
図５（Ｂ）は、この場合の節電モード移行と復帰動作の処理手順の一例を示している。図示するように、通常モード時にはＣＰＵ１１０をフルパワーにしておき、節電モード設定がされると、ＣＰＵ１１０をスリープ状態とする節電状態に移行するとともに、Ｉ／Ｏ＿ＡＳＩＣ１５４は節電モードに移行する。
【００９５】
Ｉ／Ｏ＿ＡＳＩＣ１５４は、節電モード中に、ホスト装置５ａからデータを受信したらＣＰＵ１１０にＳＭＩ割込みを掛け、ＣＰＵ１１０をスリープモードからフルパワー状態に復帰させ、Ｉ／Ｏ＿ＡＳＩＣ１５４との間で節電復帰処理を行なう。
【００９６】
これにより、Ｉ／Ｏ＿ＡＳＩＣ１５４が、通常モードになると、メインメモリ部１２０（ＤＲＡＭ１２２，１２４）との間でのＤＭＡ（Direct Memory Access）転送を開始可能にする。これに応じてホスト装置５ａはＩ／Ｏ＿ＡＳＩＣ１５４を介してＩ／Ｏバス１５９にデータを転送することでＣＰＵ１１０へのデータ転送が可能になる。
【００９７】
しかしながら、パーソナルコンピュータのインタフェースに見られる通り、新しいインタフェースが短期間に出てくるために、Ｉ／Ｏ＿ＡＳＩＣ１５４などのカスタマイズ部品の作り替えが短期間に発生してしまうことがある。この場合、カスタマイズ部品の作り替えのための投資額が嵩むという問題がある。
【００９８】
一方で、投資額を抑制した場合には、Ｉ／Ｏ＿ＡＳＩＣ１５４を使用しなければよいのであるが、その場合、汎用のＩ／Ｆ部品を使用せざるを得ず、先に指摘した通り、汎用のＩ／Ｆ部品には、データを受信した際、データ転送を開始する前に割込みを発生する機能を持たない。このため、結果的には、汎用のＩ／Ｆ部品を使用した場合でも、ＣＰＵ１１０が節電状態にあるときに外部Ｉ／Ｏ装置を始めとする他のデバイスから確実にデータを受信できるように、あまり深い節電状態に入れることができない、という問題が生じる。
【００９９】
この問題を回避するべく、本実施形態では、図３に示したように、節電制御部１６０を設けている。この節電制御部１６０は、Ｉ／Ｏ＿ＡＳＩＣ１５４とＣＰＵ１１０との間の割込信号ＮＳＭＩの受け渡しに介在して節電状態からの復帰に寄与するだけでなく、汎用Ｉ／Ｏ＿ＬＳＩ１５６を介して外部Ｉ／Ｏ装置からデータを受信した際の節電状態からの復帰に寄与する点に特徴を有している。
【０１００】
特に、本実施形態の節電制御部１６０は、節電状態にあるときにはデータバス（たとえば図３のＩ／Ｏバス１５９）を使用状態（ビジー状態）とすることで、外部装置５との間でのデータ転送を行なうことができないようにしておき、汎用Ｉ／Ｏ＿ＬＳＩ１５６が外部装置５からデータを受信すると、節電状態からの復帰動作を開始し、完全に復帰したときにデータバスの使用状態（ビジー状態）を解除することで、データ処理装置３内部のバスデバイスと外部装置５との間でのデータ転送を許可する点に特徴を有する。以下、この点を中心に、節電制御部１６０の機能について詳細に説明する。
【０１０１】
＜節電制御部の機能説明＞
節電制御部１６０は、データ処理装置３が節電状態にあるときに、外部のＩ／Ｏデバイスがデータ転送要求を出した際、節電状態を完全に解除してからデータ転送を開始可能にすることで、汎用のＩ／Ｆ部品を用いても、深い節電状態から確実かつ安全に復帰し、かつその深い節電状態中にいきなりデータ転送されてしまうことを防止する。こうすることで、汎用部品を使用して、新しい機能を実現しつつカスタマイズ部品を使用した時と遜色ない低消費電力を実現しつつ、確実かつ安全な復帰を実現できるようにする。
【０１０２】
具体的には、汎用部品が有するＤＭＡ機能用の信号線を使用してデータ転送の開始タイミングを検出して節電の復帰を行なうと同時に、この信号線を制御することで節電状態から復帰した後にデータ転送を開始することで問題を解決する。特に、先にも述べたが、節電状態にあるときにはデータバスを使用状態とすることで、節電状態中にいきなりデータ転送されてしまうことを防止する。
【０１０３】
このため、内部コントローラ部１００には、入力データの処理などを行なうＣＰＵ１１０と、データの蓄積などを担うメインメモリ部１２０と、データを外部と通信する機能を有するＩ／Ｏインタフェース回路（Ｉ／Ｏデバイス）としてのインタフェース部１５０を構成要素として備える。
【０１０４】
そして、ＣＰＵ１１０やメインメモリ部１２０などに節電機能を設けるとともに、節電制御部１６０にてその節電状態を制御するようにし、節電中にインタフェース部１５０が外部機器からデータを受信すると、インタフェース部１５０とメインメモリ部１２０間あるいはインタフェース部１５０内の各Ｉ／Ｏデバイス間でデータ転送を行なう前に、節電制御部１６０は、データ転送に必要な箇所の節電状態を解除する。
【０１０５】
節電の解除は、典型的には、節電制御部１６０に設けられる節電解除トリガ検出機能への信号入力によって行なう。この節電解除トリガ検出機能への入力信号は、たとえばＩ／Ｏデバイスのデータ転送要求信号から作成する。また、節電制御部１６０は、節電中に汎用Ｉ／Ｏ＿ＬＳＩ１５６がデータ転送要求（要求信号ＮＲＥＱ）を出した際、節電状態が完全に解除されたことの通知をＣＰＵ１１０から受けてから汎用Ｉ／Ｏ＿ＬＳＩ１５６にデータ転送処理を許可するようにする。
【０１０６】
一例としては、本実施形態では、先にも述べたが、汎用Ｉ／Ｏ＿ＬＳＩ１５６とバスアービタ１４２との間の要求信号ＮＲＥＱ１を第２節電制御部１６４にて監視することで節電解除トリガ検出機能を実現するとともに、第１節電制御部１６２と第２節電制御部１６４との間でのＩ／Ｏバス１５９を介したデータアクセスを止めることで、汎用Ｉ／Ｏ＿ＬＳＩ１５６によるＩ／Ｏバス１５９の使用を可能にする。
【０１０７】
つまり、第２節電制御部１６４が、汎用Ｉ／Ｏ＿ＬＳＩ１５６からデータ転送要求（要求信号ＮＲＥＱ１）を受け取るデータ転送要求受信部と、ＣＰＵ１１０あるいはメインメモリ部１２０が節電状態のときに汎用Ｉ／Ｏ＿ＬＳＩ１５６がデータ転送要求を受け取った際にＣＰＵ１１０に節電解除要求を行なうための割込要求（割込信号ＮＳＭＩ）を送る割込要求送信部と、ＣＰＵ１１０から節電解除通知（節電信号ＮＱＡＣＫ）を受け取る節電解除通知受信部と、データバスの使用状態を制御するバス使用状態制御部の各機能を持ち、節電解除通知に応じて汎用Ｉ／Ｏ＿ＬＳＩ１５６にデータ転送を許諾することで、確実かつ安全な節電状態からの復帰を実現する。
【０１０８】
こうすることで、インタフェース部１５０としては、Ｉ／Ｏ＿ＡＳＩＣ１５４に限らず、通常の汎用のものとしての汎用Ｉ／Ｏ＿ＬＳＩ１５６を使用することで、新しい機能を実現できるようになる。それでいて、カスタマイズ部品としてのＩ／Ｏ＿ＡＳＩＣ１５４を使用した時と遜色ない低消費電力を実現するとともに、節電状態（深い節電状態でも問題ない）を確実に解除してから、データ転送を安全に開始することができるようになる。
【０１０９】
なお、本実施形態の内部コントローラ部１００は、Ｉ／Ｏ＿ＡＳＩＣ１５４をも備えている。このことにより、ＣＰＵ１１０からの節電移行指示に伴って節電状態へ移行し、データ転送要求を受け取ったときにＣＰＵ１１０に節電解除要求を行なうための割込要求（割込信号ＮＳＭＩ）を送り、ＣＰＵ１１０から節電解除通知（節電信号ＮＱＡＣＫ）を受け、これに応じてデータ転送を開始する機能も持っている。
【０１１０】
＜節電制御部の基本機能；構成の概要＞
図６は、節電制御部１６０の基本的な作用を説明するために、図３に示したデータ処理装置３の各機能部の構成を組み替えて示した概念図である。
【０１１１】
この概念図に示すデータ処理装置３は、図３におけるインタフェース部１５０の各ＰＣＩデバイスをＩ／Ｏデバイス部１７０に置き換えている。また、説明を簡単にするため、バス調停制御部１４０を取り外し、その代わりに、バス調停を行なう機能を持ちＤＭＡ転送を制御する制御部としてのＤＭＡＣ１８０を設けている。
【０１１２】
ＣＰＵ１１０と、ＤＲＡＭ１２６を有するメインメモリ部１２０と、Ｉ／Ｏデバイス部１７０と、ＤＭＡＣ１８０とが、アドレスバス（Address Bus ）１９１およびデータバス（Data Bus）１９２（纏めてバス１９０ともいう）を介して相互に接続されている。
【０１１３】
また、ＣＰＵ１１０と節電制御部１６０およびＤＭＡＣ１８０との間には、バスマスタとなるデバイスがバスを使用中であることを示すビジー信号ＮＢＵＳＹの受け渡しがある。なお、このビジー信号ＮＢＵＳＹのポートはプルアップ抵抗１１４によりプルアップされている。
【０１１４】
また、ＣＰＵ１１０と節電制御部１６０との間には、ＣＰＵ１１０が節電中であることを示すスリープ信号ＮＳＬＥＥＰと割込信号ＮＳＭＩの受け渡しがある。この構成では、ＣＰＵ１１０は節電中であることを示すＮＳＬＥＥＰ信号を節電制御部１６０に出力し、ＣＰＵ１１０は節電制御部１６０からのＳＭＩ割込みによって節電状態から復帰するものとする。
【０１１５】
また、Ｉ／Ｏデバイス部１７０と節電制御部１６０およびＤＭＡＣ１８０の間にデータの要求信号ＤＲＥＱの受け渡しがある。また、Ｉ／Ｏデバイス部１７０とＤＭＡＣ１８０の間にデータ転送の許可信号ＮＤＡＣＫの受け渡しがある。この構成では、通常の使用において、ＤＭＡＣ１８０は要求信号ＤＲＥＱがアサートされると、アドレスバス１９１およびデータバス１９２の調停を行なう。ＤＭＡＣ１８０は、アドレスバス１９１およびデータバス１９２の使用権を得ると、予め設定されたアドレスをアドレスバス１９１に出力すると同時に、許可信号ＮＤＡＣＫをアサートする。これを受けて、Ｉ／Ｏデバイス部１７０は、データバス１９２に対してデータを出力する。この際には、ＤＭＡＣ１８０は、Ｉ／Ｏデバイス部１７０からの出力データがメインメモリ部１２０のＤＲＡＭ１２６に書き込まれるよう、ＤＲＡＭ制御信号をコントロールすることで、ＣＰＵ１１０を介さないＤＭＡ転送を実現する。
【０１１６】
＜節電制御部の基本機能；作用の概要＞
＜節電モードへの遷移動作＞
図７は、図３に示した構成（図６に示した構成でも同様である）における節電モードへの遷移を示すフローチャートである。先ず、システム全体が節電モードに移行する際には、図７に示すように、節電制御部１６０に対してＩ／Ｏ＿ＡＳＩＣ１５４との間の汎用バス１５７経由でプリパワーセーブモードへの移行を指示する（Ｓ２０）。具体的には、節電制御部１６０内に設けた図示しないレジスタへの設定を行なう。これと前後して、Ｉ／Ｏ＿ＡＳＩＣ１５４を初めとする各デバイスに対して節電モードへの移行設定を行なう（Ｓ２１）。これらの節電モード移行準備が整ったら最後にＣＰＵ１１０を節電モードへ移行する（Ｓ２２）。このフローに従って設定を行なうと、ＣＰＵ１１０の節電信号ＮＱＡＣＫがＨレベルからＬレベルに遷移し、この遷移によってＣＰＵ１１０が節電モードへ移行したことを節電制御部１６０は検知することができる。
【０１１７】
＜システムの状態と信号の相関関係＞
図８は、図６に示した構成におけるシステムの状態と信号の相関関係を示す図である。図示するように、たとえばＣＰＵ１１０がＤＲＡＭ１２６へアクセスする際には、バス１９０が使用中であることを他のデバイスに知らしめるためにビジー信号ＮＢＵＳＹをアサートする。
【０１１８】
たとえば、通常状態においてデータ転送がなければ、Ｉ／Ｏデバイス部１７０およびバス１９０はともにアイドル（Idle）状態にある。なお、アイドル状態とは、全てのバスマスタがバスアクセスを要求しない期間である。
【０１１９】
ここで、Ｉ／Ｏデバイス部１７０が外部機器からデータを受信すると（ｔ１０）、受信データを転送するために、ＤＭＡ転送要求信号である要求信号ＤＲＥＱをアサート（Ｈレベルに）する（ｔ１２）。ＤＭＡＣ１８０は、要求信号ＤＲＥＱを受け取ると、バス１９０の調停を行なうとともに、要求信号ＤＲＥＱに対して許可信号ＮＤＡＣＫ（Ｌレベル）を返す（ｔ１４）。
【０１２０】
Ｉ／Ｏデバイス部１７０は、許可信号ＮＤＡＣＫを受け取ると、ビジー信号ＮＢＵＳＹをアサート（Ｌレベルに）してバス１９０が他のデバイスに使用されないようにしてから、データ転送を開始する（ｔ１６）。この後、Ｉ／Ｏデバイス部１７０は、データ転送が完了すると、ビジー信号ＮＢＵＳＹをネゲート（Ｈレベルに）することで、バス１９０が他のデバイスで使用可能にする（ｔ１７）。これにより、Ｉ／Ｏデバイス部１７０およびバス１９０はともにアイドル（Idle）状態に戻る。このとき、Ｉ／Ｏデバイス部１７０は、ＤＭＡ転送要求信号である要求信号ＤＲＥＱをネゲート（Ｌレベルに）し（ｔ１８）、これを受けて、ＤＭＡＣ１８０は、許可信号ＮＤＡＣＫをネゲート（Ｈレベルに）する（ｔ１９）。
【０１２１】
＜節電状態への移行＞
この後、システム全体を節電モードへ移行させる場合には、システム（ソフトウエア）は、先ず、節電移行処理において、ビジー信号ＮＢＵＳＹをアサートしバス１９０が他のデバイスに使用されないようにして（ｔ２０〜ｔ２４）、節電制御部１６０の状態をプリパワーセーブ（Pre-Power Save）モードに変更し（ｔ２２）、最後にＣＰＵ１１０を節電状態に変更する（ｔ２８）。
【０１２２】
このとき、節電制御部１６０は、プリパワーセーブモードに移行すると（ｔ２２）、ビジー信号ＮＢＵＳＹをアサートし（ｔ２６）、バス１９０が他のデバイスに使用されないようにする。
【０１２３】
ＣＰＵ１１０が節電状態に入ると（ｔ２８）、スリープ信号ＮＳＬＥＥＰがアサートされ、このスリープ信号ＮＳＬＥＥＰが遷移することで、節電制御部１６０は、パワーセーブ（Power Save）モードへと移行する（ｔ２９）。節電制御部１６０は、パワーセーブモードへ移行しても、ビジー信号ＮＢＵＳＹをアサートした状態を維持することで、バス１９０が他のデバイスに使用されないようにする。
【０１２４】
なお、節電状態に移行する際には、図示しないＩ／Ｏバスクロックを停止させ、コントローラ部３１内の図示を割愛したＤＲＡＭなどへのデータ転送が行なわれないようにする。また、コントローラ部３１内の図示を割愛したＣＰＵが節電状態に入ったら、さらに、ＣＰＵ内部の図示を割愛したＰＬＬ回路の動作を停止させる。ＰＬＬ回路の動作が停止したら、ＣＰＵへのクロック供給自体も停止させることで、最も消費電力の少ない状態となり、システム全体が深い節電状態となる。
【０１２５】
＜節電状態からの復帰＞
この後、節電中にＩ／Ｏデバイス部１７０がデータを受信すると（ｔ３０）、受信データを転送するために、要求信号ＤＲＥＱをアサート（Ｈレベルに）する（ｔ３２）。ＤＭＡＣ１８０は、要求信号ＤＲＥＱを受け取ると、バス１９０の調停を行なうとともに、要求信号ＤＲＥＱに対して許可信号ＮＤＡＣＫ（Ｌレベル）を返すが（ｔ３４）、一方でビジー信号ＮＢＵＳＹがアサートされているためデータ転送自体行なうことができず、ビジー信号ＮＢＵＳＹがネゲートされるのを待つこととなる。
【０１２６】
一方、節電制御部１６０は、要求信号ＤＲＥＱを監視しており、この要求信号ＤＲＥＱがアサートされると、ウェークアップ（Wake Up ）モードに移行し（ｔ３５）、ＣＰＵ１１０に対して節電復帰を催すために、割込信号ＮＳＭＩをアサート（Ｌレベルに）する（ｔ３５）。
【０１２７】
ＣＰＵ１１０は、割込信号ＮＳＭＩがアサートされると、節電復帰処理を行なう（ｔ３７〜ｔ３９）。この節電復帰処理の一例としては、たとえば、節電中（ＣＰＵ１１０をスリープモードにしたときなど）にＣＰＵ１１０内部のＰＬＬ回路を停止した場合、節電復帰時にはソフトウエア的な処理を開始する前に、ＰＬＬをリロックするなどのハードウエア的な処理がある。
【０１２８】
節電復帰処理が完了するとき、ＣＰＵ１１０は、スリープ信号ＮＳＬＥＥＰをネゲートすると同時に、節電復帰のためのスイッチ（ＳＷ；SWwitch ）処理を行なう（ｔ３９）。このＣＰＵ１１０が節電状態から復帰するときには、ソフトウエアおよびハードウエアを通常状態に戻すための（つまり節電復帰のための）処理を行なう。本例では、ＣＰＵ１１０へのＳＭＩ割込みを発生させてＳＭＩハンドラ内でソフトウエア的な節電復帰処理を行なう（ｔ３８；ソフトウエアの状態部のＳＭＩハンドラを参照）。
【０１２９】
一方、節電制御部１６０は、スリープ信号ＮＳＬＥＥＰがネゲートされたことを検出して、ビジー信号ＮＢＵＳＹをネゲート（Ｈレベルに）して（ｔ４０）、通常状態に移行する（ｔ４１）。このとき、許可信号ＮＤＡＣＫが既にアサートされている、つまりＩ／Ｏデバイス部１７０はＤＭＡＣ１８０から転送許可（許可信号ＮＤＡＣＫ）を既に得ている。よって、Ｉ／Ｏデバイス部１７０は、ビジー信号ＮＢＵＳＹがネゲートされたら改めてビジー信号ＮＢＵＳＹをアサートして他のデバイスにバスが使用されることがないようにしてからデータ転送を開始する（ｔ４２）。
【０１３０】
この後、Ｉ／Ｏデバイス部１７０は、データ転送が完了すると、ビジー信号ＮＢＵＳＹをネゲート（Ｈレベルに）することで、バス１９０が他のデバイスで使用可能にする（ｔ４７）。これにより、Ｉ／Ｏデバイス部１７０およびバス１９０はともにアイドル（Idle）状態に戻る。このとき、Ｉ／Ｏデバイス部１７０は、ＤＭＡ転送要求信号である要求信号ＤＲＥＱをネゲート（Ｌレベルに）し（ｔ４８）、これを受けて、ＤＭＡＣ１８０は、許可信号ＮＤＡＣＫをネゲート（Ｈレベルに）する（ｔ４９）。
【０１３１】
＜ＰＣＩインタフェースでの処理例＞
次に、図３に示したようにＰＣＩインタフェースを用いた場合における、具体的な節電処理について説明する。
【０１３２】
＜節電処理の問題点＞
図９は、ＰＣＩインタフェースを用いた場合における節電処理の問題点を説明する図である。通常、１つのバスを複数のデバイスが共有して使用する場合、バスの使用権を獲得していないデバイスはその出力をハイインピーダンス（Ｈｉ−Ｚ）状態として、バスの使用権を獲得したデバイス（マスタデバイス）およびそれに対して応答する必要があるデバイス（ターゲットデバイス）のみが信号線を駆動することで、バス信号の衝突を回避するようになっている。
【０１３３】
従来のパーソナルコンピュータ内部のインタフェースであるＩＳＡ（Industry Standard Architecture）バスなどでは、誰もバスを使用していないとき（アイドル状態）にはバス信号をドライブするデバイスがないことからハイインピーダンス状態となってしまい誤動作することを回避するため、プルアップもしくはプルダウン処理を行なっている。
【０１３４】
一方、ＰＣＩバスにおいは、アイドル状態のときにも何れかのＰＣＩ接続デバイスに対してバス調停器（アービタ）がバス使用許可信号（許可信号ＮＧＮＴ）をアサートし、許可信号ＮＧＮＴをアサートされたＰＣＩデバイスはデータ転送の有無に関わらず必ずＰＣＩバス信号をドライブするように求められている。
【０１３５】
ここで、アービタに着目すると、何れのＰＣＩデバイスからもバス使用権獲得要求（要求信号ＮＲＥＱ）がない状態であったとしても、何れか１つのＰＣＩデバイスに対して許可信号ＮＧＮＴをアサートする点に特徴がある。転送するデータがないにも関わらず許可信号ＮＧＮＴをアサートされたＰＣＩデバイスは、ＰＣＩ制御信号を非アクティブ（データ転送を行なわない状態、かつ、ＰＣＩ信号をドライブした状態）に、その他の信号（データ線等）をＨレベルもしくはＬレベルにする。
【０１３６】
なお、ＰＣＩ規格では、許可信号ＮＧＮＴをアサートされていながらデータ転送を行なわない状態をバスパーキングと呼び、ＰＣＩバスを非アクティブ状態に駆動するＰＣＩデバイスをパーキングデバイスと呼ぶ。また、バスアービタは、パーキングデバイス以外のＰＣＩデバイスからＰＣＩバス使用権獲得要求（要求信号ＮＲＥＱ）がない限り、パーキングデバイスへの許可信号ＮＧＮＴを継続して出す仕様となっている。
【０１３７】
ここで、パーキングデバイスとなっているＰＣＩデバイスに着目すると、バスパーキング状態にあるときにデータ転送を行ないたい場合、既に許可信号ＮＧＮＴがアサートされているために、直ちにデータ転送を始めてもよいことになっている。許可信号ＮＧＮＴがネゲートされているときにデータ転送を行ないたい場合、先ず要求信号ＮＲＥＱを出し、許可信号ＮＧＮＴがアサートされてからデータ転送を行なう、という手順と比較すると、パーキングデバイスがデータ転送を行なう場合には（既にバス獲得できているので）バス獲得を行なう必要がない分、早くデータ転送を開始できるというメリットがある。
【０１３８】
たとえば、ネットワークからデータの受信を行なう場合、ＰＣＩバスを使用するのはネットワークＩ／Ｆデバイスとなる。１つの受信データをＰＣＩバスを使用してＤＲＡＭに転送した後、一度ＰＣＩバスはアイドル状態となる。このとき、パーキングデバイスがネットワークＩ／Ｆデバイスであれば、次にネットワークからデータを受信したら、直ちにＰＣＩバスを使用してＤＲＡＭにデータ転送を行なうことができる。通常、同じＰＣＩデバイスが繰り返してＰＣＩバスを使うことが多いことから、パーキングデバイスには最後にＰＣＩバスを使用したデバイス（以下ラストデバイスという）を選択するよう、アービタを構成することが望ましい。
【０１３９】
＜問題点の具体例＞
図９を参照して、具体的に説明する。ここで、図９（Ａ）は、パーキングデバイスに特定のデバイスを選択した場合のＰＣＩバス動作を示し、図９（Ｂ）は、パーキングデバイスにラストデバイスを選択した場合のＰＣＩバス動作を示している。
【０１４０】
ＰＣＩバスがアイドル状態のとき、パーキングデバイス以外のＰＣＩデバイスがデータ転送をしたいとする。先ず、バスを使用したいデバイスが、要求信号ＮＲＥＱをアービタに出し許可信号ＮＧＮＴを待つ動作（アービトレーション）が行なわれる。アービトレーションでバスを獲得すると、第１のデータ転送Ａが行なわれ、バスがアイドルになる。
【０１４１】
このとき、アービタの構成に因るが、図９（Ａ）に示すように、ある決められた特定のＰＣＩデバイスをパーキングデバイスにした場合、第２のデータ転送Ｂに先立ってアービトレーションが必要となる（Ｔａ〜Ｔｂ）。
【０１４２】
一方、図９（Ｂ）に示すように、パーキングデバイスにラストデバイスを選ぶようにアービタを構成した場合には、第２のデータ転送Ｂを開始する前のアイドル状態から既にＰＣＩバスの使用権を獲得しているので、直ちにデータ転送を行なうことができるようになる。よって、前者（図９（Ａ）の動作）に対して後者（図９（Ｂ）の動作）は、Ｔａ〜Ｔｂ期間のアービトレーションが不要な分だけ高速なデータ転送が可能となる。
【０１４３】
パーキングデバイスに何を選択するかは、アービタの構成で決まるのであるが、性能的な点からは、ラストデバイスをパーキングデバイスとするのが望ましいことが分かる。
【０１４４】
しかしながら、図９（Ｂ）の動作に示したように、ラストデバイスをパーキングデバイスにすると、節電中にいきなりデータ転送が開始されてしまう虞れがある。すなわち、図９（Ｂ）に示す動作から分かるように、ラストデバイスをパーキングデバイスとした場合には、パーキングデバイスが外部からのデータ受信などによってデータ転送を開始したい場合には、アービトレーションなしにデータ転送が可能となる。
【０１４５】
このことは、換言すると、アイドル中に許可信号ＮＧＮＴを貰っていれば、要求信号ＮＲＥＱを出すこともなくデータ転送ができることを意味する。しかしながら、ＣＰＵやメモリが節電中（ＰＣＩはアイドル）に、ＰＣＩバス経由でメモリへのデータ転送が行なわれてしまった場合には、メモリへデータが書き込まれない、あるいは、メモリへの書き込みは正常に行なわれたとしてもＣＰＵ用のキャッシュメモリと不整合を起す、などの問題が発生する。
【０１４６】
汎用のＰＣＩデバイスを用いてこのような問題を回避する方法としては、たとえば、ＰＣＩデータ転送開始タイミングを検出する手段として要求信号ＮＲＥＱを利用すること、すなわち、ＰＣＩバスアービタへの要求信号ＮＲＥＱを制御することで、節電中にデータ転送が行なわれることを防止する方式を採用することが考えられるが、ラストデバイスをパーキングデバイスにすると、要求信号ＮＲＥＱが出ないため実現できないことになる。
【０１４７】
これを回避する方法としては、たとえば、許可信号ＮＧＮＴをマスクしている間は汎用Ｉ／Ｏ＿Ｉ／Ｆ以外のデバイス（ブリッジ；Bridgeなど）に信号ＮＧＮＴを与えてバスパーキングする、あるいはパーキングデバイスをＣＰＵにするなど、節電解除が行なわれてからしかＰＣＩバスを使用しないデバイスをパーキングデバイスとする方式を採ることが考えられる。
【０１４８】
しかしながら、図９で説明した通り、同じＰＣＩデバイスが連続してＰＣＩバスを使用する場合においては、その都度、アービトレーションが入ってしまうために、バス転送性能が低下するという問題が避けられない。
【０１４９】
そこで、本実施形態では、節電状態の制御の際に、バスの状態をも制御することで、ラストデバイスがパーキングデバイスであっても、節電中にデータ転送が行なわれることを確実に防止するとともに、同じＰＣＩデバイスが連続してＰＣＩバスを使用する場合に、アービトレーションなしにデータ転送ができる仕組みにする。以下、具体的に説明する。
【０１５０】
＜ＰＣＩデバイスにおける節電制御部の機能；作用の概要＞
図１０は、図３に示した構成におけるシステムの状態と信号の相関関係を示す図である。なお、ラストデバイスにしたときに従来であれば節電復帰が適切にできない点に着目して、以下の説明ではラストデバイスをパーキングデバイスとすることを前提とする。
【０１５１】
基本的には、システムが通常の状態においては、汎用Ｉ／Ｏ＿ＬＳＩ１５６がデータを受信した場合には、要求信号ＮＲＥＱおよび許可信号ＮＧＮＴを用いてＩ／Ｏバス１５９の使用権の獲得要求および許可を得た後に、Ｉ／Ｏバス１５９を使用してデータ転送を行なう。次に、システムが節電移行処理に入ると、システム全体を節電状態に入れるための各種処理が行なわれる。
【０１５２】
一連の処理の中には、Ｉ／Ｏバス１５９上に接続された各種デバイスへの設定も含まれ得る。節電移行処理の最後に、節電制御部１６０に対して節電状態への移行設定を行なう。節電制御部１６０は節電状態への移行設定が行なわれると、Ｉ／Ｏバス１５９の使用権を獲得し、節電制御部１６０自身に対するデータアクセスを行なう動作を開始する。節電制御部１６０は、このアクセス時にはデータ転送完了応答（完了信号ＮＴＲＤＹ＝Ｌ）を返さない。これと並行して、スイッチ処理によって、ＣＰＵ１１０を節電状態へ移行させる。
【０１５３】
たとえば、通常状態においてデータ転送がなければ、Ｉ／Ｏデバイス部１７０およびバス１９０はともにアイドル（Idle）状態にある。ここで、Ｉ／Ｏデバイス部１７０は、外部機器からデータを受信すると（ｔ５０）、受信データを転送するために、要求信号ＮＲＥＱ１をアサート（Ｌレベルに）してバス要求をバスアービタ１４２に出す（ｔ５２〜ｔ５６）。バスアービタ１４２は、要求信号ＮＲＥＱ１を受け取ると、要求信号ＮＲＥＱ１に対して許可信号ＮＧＮＴ１（Ｌレベル）を返す（ｔ５４）。汎用Ｉ／Ｏ＿ＬＳＩ１５６は、バスアービタ１４２から許可信号ＮＧＮＴ１を受け取ると、Ｉ／Ｏバス１５９の使用権を獲得するフレーム信号ＮＦＲＡＭＥをアサート（Ｌレベルに）してＩ／Ｏバス１５９が他のデバイスに使用されないようにしてから（ｔ５５〜ｔ５８）、データ転送を開始する（ｔ５７）。
【０１５４】
このとき（ｔ５５〜ｔ５９）、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、バスアービタ１４２に対して、デバイスの存在応答（デバイス選択信号ＮＤＥＶＳＥＬ＝Ｌ）や、Ｉ／Ｏバス１５９の使用を開始する開始信号ＮＩＲＤＹ（＝Ｌレベル）およびデータ転送完了応答（完了信号ＮＴＲＤＹ＝Ｌ）を規定時間内に返して、バスサイクルにウェイトを掛ける。完了信号ＮＴＲＤＹがネゲート（Ｈレベルに）なると、Ｉ／Ｏバス１５９の状態はアイドル状態になる。
【０１５５】
＜節電状態への移行＞
この後、システム全体を節電モードへ移行させる場合には、Ｉ／Ｏ＿ＡＳＩＣ１５４内の節電機能を有効にする、割込信号ＮＳＭＩ（ＣＰＵ１１０を節電状態から復帰させるための割込み入力信号線）のみを有効にする、などシステム全体を節電状態に入れるための処理を行なう。
【０１５６】
この処理において、ＣＰＵ１１０は先ず、要求信号ＮＣＰＵＲＥＱをアサート（Ｌレベルに）してバス要求をバスアービタ１４２に出す（ｔ６０）。バスアービタ１４２は、要求信号ＮＣＰＵＲＥＱを受け取ると、要求信号ＮＣＰＵＲＥＱに対して許可信号ＮＧＮＴ１をネゲート（Ｈレベルに）するとともに（ｔ６１）、許可信号ＮＣＰＵＧＮＴをアサート（Ｌレベルに）する（ｔ６２）ことで、Ｉ／Ｏバス１５９が他のデバイスに使用されないようにＩ／Ｏバス１５９をビジー状態にする（ｔ６３）。
【０１５７】
この後、ＣＰＵ１１０は、フレーム信号ＮＦＲＡＭＥをアサート（Ｌレベルに）して、節電制御部１６０にデータ転送を行なって、第１節電制御部１６２内に設けられた図示しないパワーセーブレジスタに節電モードへの移行を指示する値を書き込み、節電制御部１６０の状態をプリパワーセーブモードに変更する（ｔ６４）。このとき（ｔ６３〜ｔ６４）、ＣＰＵ１１０は、バスアービタ１４２に対して、デバイスの存在応答（デバイス選択信号ＮＤＥＶＳＥＬ＝Ｌ）や、Ｉ／Ｏバス１５９の使用を開始する開始信号ＮＩＲＤＹ（＝Ｌレベル）およびデータ転送完了応答（完了信号ＮＴＲＤＹ＝Ｌ）を規定時間内に返して、バスサイクルにウェイトを掛ける。完了信号ＮＴＲＤＹがネゲート（Ｈレベルに）なると、Ｉ／Ｏバス１５９の状態はアイドル状態になる。
【０１５８】
第１節電制御部１６２は、パワーセーブレジスタへの節電モード移行指示の書込みが行なわれると、要求信号ＮＲＥＱ０をアサート（Ｌレベルに）して、Ｉ／Ｏバス１５９の使用要求をバスアービタ１４２に出す（ｔ６５）。バスアービタ１４２は、要求信号ＮＲＥＱ０を受け取ると、要求信号ＮＲＥＱ０に対して許可信号ＮＣＰＵＧＮＴをネゲート（Ｈレベルに）するとともに（ｔ６６）、許可信号ＮＧＮＴ０をアサート（Ｌレベルに）する（ｔ６７）ことで、Ｉ／Ｏバス１５９が他のデバイスに使用されないようにＩ／Ｏバス１５９をビジー状態にする（ｔ６８）。
【０１５９】
ここで、バスアービタ１４２が許可信号ＮＧＮＴ０をアサートすると、第１節電制御部１６２は、フレーム信号ＮＦＲＡＭＥをアサートして第２節電制御部１６４へのアクセスを行なう（ｔ６９）。このとき、第２節電制御部１６４は、第１節電制御部１６２からのアクセスに対してデバイスの存在応答（デバイス選択信号ＮＤＥＶＳＥＬ＝Ｌ）を行なうが、データ転送完了応答（完了信号ＮＴＲＤＹ＝Ｌ）を行なわないことで、第１節電制御部１６２から第２節電制御部１６４へのアクセスでＩ／Ｏバス１５９の状態をビジー状態に維持する（ｔ７０，ｔ７１以降）。つまり、節電モード期間中は、節電制御部１６０は、Ｉ／Ｏバス１５９を獲得したまま完了信号ＮＴＲＤＹを返さない状態を保持することにより、バスサイクルにウェイトを掛け続けているのと実質的に同じ動作を行なう。
【０１６０】
また、バスアービタ１４２のパーキングデバイスにラストデバイス（本例では節電制御部１６０に相当する）が選ばれていれば、第１節電制御部１６２への許可信号ＮＧＮＴ０がアサートされたままになる。一方、節電移行処理の最後にＣＰＵ１１０が節電状態に入ると、ＣＰＵ１１０は、節電信号ＮＱＡＣＫをアサート（Ｌレベルに）する（ｔ７２）。
【０１６１】
第２節電制御部１６４が節電信号ＮＱＡＣＫのアサートを検知すると、節電制御部１６０はパワーセーブモードへと移行する（ｔ７３）。このとき、節電制御部１６０がパワーセーブモードへ移行しても、ビジー信号ＮＢＵＳＹをアサートした状態を維持することで、Ｉ／Ｏバス１５９が他のデバイスに使用されないようにする。
【０１６２】
＜節電状態からの復帰＞
この節電モード状態において、汎用Ｉ／Ｏ＿ＬＳＩ１５６がデータを受信すると、Ｉ／Ｏバス１５９の使用権を獲得するために要求信号ＮＲＥＱ１をアサートするし、バスアービタ１４２は、この要求信号ＮＲＥＱ１に対して予め設定されたアービトレーションアルゴリズムに従ってバス使用権を与える。たとえば、Ｉ／Ｏデバイス部１７０は、節電モード中にデータを受信すると（ｔ７４）、通常状態と同様に、受信データを転送するために、要求信号ＮＲＥＱ１をアサート（Ｌレベルに）してバス要求をバスアービタ１４２に出す（ｔ７５）。
【０１６３】
バスアービタ１４２は、要求信号ＮＲＥＱ１を受け取ると、許可信号ＮＧＮＴ０をネゲート（Ｈレベルに）にするとともに（ｔ７８）、通常状態と同様に許可信号ＮＧＮＴ１をアサート（Ｌレベルに）にする（ｔ７９）。しかしながら、このときＩ／Ｏバス１５９はビジー状態にあるため、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、バスアービタ１４２から許可信号ＮＧＮＴ１を受け取っても、データ転送を開始できないので、Ｉ／Ｏバス１５９のビジー状態が解除されるのを待つこととなる。
【０１６４】
一方、節電制御部１６０は、汎用Ｉ／Ｏ＿ＬＳＩ１５６が要求信号ＮＲＥＱ１をアサートしたことを検出すると、ＣＰＵ１１０に対してＳＭＩ割込みを発生させ、ＣＰＵ１１０を節電状態から復帰させる。ＣＰＵ１１０は、節電から復帰すると、節電信号ＮＱＡＣＫをネゲートする。節電制御部１６０は、節電移行処理時から継続していた自身に対するＰＣＩアクセスに対して完了信号ＮＴＲＤＹを返すことでＩ／Ｏバス１５９の転送サイクルを正常に終了させる。
【０１６５】
たとえば、第２節電制御部１６４は、汎用Ｉ／Ｏ＿ＬＳＩ１５６の要求信号ＮＲＥＱ１を監視しており、この要求信号ＮＲＥＱ１がアサートされると、ウェークアップ（Wake Up ）モードに移行し（ｔ７６）、ＣＰＵ１１０に対して節電復帰を催すために、割込信号ＮＳＭＩをアサート（Ｌレベルに）する（ｔ７７）。
【０１６６】
ＣＰＵ１１０は、割込信号ＮＳＭＩがアサートされると、節電復帰処理を行なう（ｔ８０〜ｔ８２）。ＣＰＵ１１０は、節電復帰動作を開始し、完全に節電状態から復帰すると、節電信号ＮＱＡＣＫをネゲートすると同時に、節電復帰のためのスイッチ（ＳＷ；SWwitch ）処理を行なう（ｔ８２）。このＣＰＵ１１０が節電状態から復帰するときには、ソフトウエアおよびハードウエアを通常状態に戻すための（つまり節電復帰のための）処理を行なう。
【０１６７】
本例でも、ＣＰＵ１１０へのＳＭＩ割込みを発生させてＳＭＩハンドラ内でソフトウエア的な節電復帰処理を行なう（ｔ８８；ソフトウエアの状態部のＳＭＩハンドラを参照）。ＳＭＩハンドラ内でのソフトウエア的な節電復帰処理が完了すると、ＳＭＩハンドラ（ここでは第２節電制御部１６４）は、割込信号ＮＳＭＩをネゲート（Ｈレベルに）する（ｔ９０）。これにより、節電制御部１６０は、ウェークアップモードから通常モードに移行する。
【０１６８】
一方、第２節電制御部１６４は、節電信号ＮＱＡＣＫがネゲートされたことを検出すると、第１節電制御部１６２から第２節電制御部１６４へのＰＣＩバスアクセスに対して完了信号ＮＴＲＤＹを所定期間アサートすることで、節電中に継続していたバスビジー状態を解除する（ｔ８４〜ｔ８６）。
【０１６９】
このとき、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、バスアービタ１４２から転送許可（許可信号ＮＧＮＴ１）を既に得ているので、データ転送を直ぐに開始することができる。よって、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、Ｉ／Ｏバス１５９のバスビジー状態が解除された後には、Ｉ／Ｏバス１５９の使用権を獲得するフレーム信号ＮＦＲＡＭＥをアサート（Ｌレベルに）してＩ／Ｏバス１５９が他のデバイスに使用されないようにしてから（ｔ９２〜ｔ９４）、データ転送を開始する（ｔ９３）。
【０１７０】
このとき（ｔ９２〜ｔ９５）、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、バスアービタ１４２に対して、デバイスの存在応答（デバイス選択信号ＮＤＥＶＳＥＬ＝Ｌ）や、Ｉ／Ｏバス１５９の使用を開始する開始信号ＮＩＲＤＹ（＝Ｌレベル）およびデータ転送完了応答（完了信号ＮＴＲＤＹ＝Ｌ）を規定時間内に返して、バスサイクルにウェイトを掛ける。完了信号ＮＴＲＤＹがネゲート（Ｈレベルに）なると、Ｉ／Ｏバス１５９の状態はアイドル状態になる（ｔ９５）。
【０１７１】
このような処理手順を踏むことで、ＰＣＩデバイスにおける節電制御において、アービタ（本例ではバスアービタ１４２）のパーキングデバイスをラストデバイスに設定することで、バス性能の低下を招くことなくデータ転送を実現することができる。加えて、節電状態から完全に復帰した後にデータ転送を開始するようにすることができ、システム状態が節電中に汎用Ｉ／Ｏ（本例では汎用Ｉ／Ｏ＿ＬＳＩ１５６）によりＰＣＩバス転送が行なわれることを防ぐことができる。
【０１７２】
つまり、節電状態におけるＩ／Ｏバス１５９に対するバス調停の結果として、節電状態ではバス利用権が汎用Ｉ／Ｏ＿ＬＳＩ１５６以外のＰＣＩデバイス（特に本例ではラストデバイスである節電制御部１６０）に与えられ、節電状態から完全に復帰したときに汎用Ｉ／Ｏ＿ＬＳＩ１５６に与えられることで、節電状態から完全に復帰したときに初めてデータ転送が開始される。
【０１７３】
以上の動作を行なうことで、汎用Ｉ／Ｏ＿ＬＳＩ１５６を使用しながら、システムを深い節電モードに移行していたとしても、システムが節電モードから復帰してから通常のＰＣＩデータ転送を開始するため、従来懸念されていた不具合が発生しなくなる。
【０１７４】
汎用Ｉ／Ｏ＿ＬＳＩがパーキングデバイスである場合には、既にＰＣＩバスが獲得できているために要求信号ＮＲＥＱを出力することなくデータ転送をしてもよいことがＰＣＩの仕様で唄われており、従来であれば結果として不具合を起こしてしまう問題が起こるが、節電モード移行中のバスパーキングを汎用Ｉ／Ｏ＿ＬＳＩ以外にするとともに、その汎用Ｉ／Ｏ＿ＬＳＩ以外のもの（本例では節電制御部１６０）でバスを使用状態に設定することで、この問題を解消することができる。
【０１７５】
加えて、パーキングデバイスにラストデバイスを選ぶようにアービタを構成することで、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、データ転送（図補充￥１の第２のデータ転送Ｂ）を開始する前のアイドル状態から既にＰＣＩバスの使用権を獲得しているので、アービトレーションなしに、直ちにデータ転送を行なうことができるようになる。
【０１７６】
また、節電制御部１６０としては、要求信号ＮＲＥＱなどのデータ受信信号Ｓ３の監視やバスの使用状態の制御などの機能を新たに持てばよく、さほど大掛かりな回路構成を必要としないので、低価格で簡便な回路を追加することで、Ｉ／Ｏ＿ＡＳＩＣ１５４などのカスタマイズ部品を使用した時と同等に高い省エネ効果を得ることができる。
【０１７７】
＜状態遷移図と真理値表＞
図１１は、図１０に示した節電制御部１６０の動作状態の概要を説明する図であり、図１１（Ａ）は、図１０に示した動作を行なう節電制御部１６０の状態遷移図、図１１（Ｂ）は、節電制御動作時の入出力信号の真理値表である。
【０１７８】
電源投入状態およびシステムが通常の動作状態にあるときには通常動作シーケンスにある。このとき、第２節電制御部１６４は、ＮＳＭＩ入力端子に入力されたＩ／Ｏ＿ＡＳＩＣ１５４からの割込信号ＮＳＭＩをそのままＮＳＭＯ出力端子からＣＰＵ１１０に向けて出力する。これは、既存のＩ／Ｏ＿ＡＳＩＣ１５４が節電状態から復帰する際に割込信号ＮＳＭＩをアサートする仕組みが組み込まれているためである。
【０１７９】
次に、節電制御部１６０に対して節電移行設定が行なわれると、プリパワーセーブシーケンスへと移行する。このとき、節電制御部１６０は、要求信号ＮＲＥＱをアサートしてＩ／Ｏバス１５９の獲得動作を行なう。節電制御部１６０は、Ｉ／Ｏバス１５９の使用権を獲得すると、自分自身（自デバイス）に対する読出しもしくは書込みのアクセスを行なう。このとき、節電制御部１６０は、読出しもしくは書込みの各アクセスに対して、デバイス選択信号ＮＤＥＶＳＥＬのみをバスアービタ１４２に返し、完了信号ＮＴＲＤＹを返さない。こうすることで、Ｉ／Ｏバス１５９を使用中の状態（以下ＰＣＩアクセス状態ものいう）を保持することができる。
【０１８０】
次に、ＣＰＵ１１０が節電信号ＮＱＡＣＫをアサートすると、節電制御部１６０は、パワーセーブシーケンスへと移行し、Ｉ／Ｏバス１５９は節電制御部１６０が獲得した状態を継続する。
【０１８１】
次に、節電制御部１６０は、Ｉ／Ｏ＿ＡＳＩＣ１５４がデータを受信したためにＮＳＭＩ入力端子への割込信号ＮＳＭＩがアサートされるか、または汎用Ｉ／Ｏ＿ＬＳＩ１５６がデータを受信したためにＮＲＥＱ入力端子への要求信号ＮＲＥＱがアサートされると、ウェークアップシーケンスへと移行する。このシーケンスに進むと、節電制御部１６０は、割込信号ＮＳＭＩをアサートして、ＮＳＭＩ出力端子からＣＰＵ１１０に伝えることで、ＣＰＵ１１０を節電状態から復帰させる。これによってＣＰＵ１１０が節電状態から復帰すると、ＣＰＵ１１０は節電信号ＮＱＡＣＫをネゲートする。
【０１８２】
節電制御部１６０は、節電信号ＮＱＡＣＫのネゲートを検出すると、通常動作シーケンスへと移行すると同時に、完了信号ＮＴＲＤＹを返してプリパワーセーブから継続していたＰＣＩアクセスを正常に終了させる。その結果、汎用Ｉ／Ｏ＿ＬＳＩ１５６は、システムが節電状態から完全に復帰した後にデータ転送を行なうことができる。
【０１８３】
以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【０１８４】
また、上記の実施形態は、クレーム（請求項）にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
【０１８５】
たとえば、上記実施形態においては、データ処理装置３が節電中には節電制御部１６０自身がＩ／Ｏバス１５９にアクセスを行なう、より具体的には第１節電制御部１６２と第２節電制御部１６４との間でＩ／Ｏバス１５９を使用してデータ転送（読出や書込み）を行なうことでバスサイクルをビジー状態にし、そのビジー状態の間は、他のデバイスがＩ／Ｏバス１５９を使用することができない構成として説明しているが、汎用Ｉ／Ｏ＿ＬＳＩ１５６を除くバスブリッジ部１４４を含むＰＣＩデバイスが節電制御部１６０に対するＰＣＩアクセスをＩ／Ｏバス１５９を使用して行なうことでも、同様にバスサイクルをビジー状態にすることができる。
【０１８６】
また、上記実施形態においては、汎用Ｉ／Ｏ＿インタフェースが１つ（汎用Ｉ／Ｏ＿ＬＳＩ１５６）しか接続されていないケースにのみ着目して説明しているが、同様な仕組みを拡張することで、複数の汎用Ｉ／Ｏ＿インタフェースが接続されたシステムにおいても、容易な回路構成の変更によって対応することができる。
【０１８７】
また、節電状態中や節電状態からの復帰時に、Ｉ／Ｏバス１５９を適切に制御する機能を節電制御部１６０にて実行していたが、このような動作を行なうものである限り、どのような構成を採用してもよい。たとえば、図示を割愛するが、プルアップもしくはプルダウンを適切に処理する方式や、バスホールド機能を有したバスバッファを用いる方式などを採ることもできる。
【０１８８】
また、上記実施形態では、節電制御部１６０をバス調停制御部１４０とは別の構成要素（機能ブロック）として説明したが、ＰＣＩバスアービタとして機能するバス調停制御部１４０（特にバスアービタ１４２）に機能を付加し、その同一回路内にバス調停機能と節電機能とを実装する構成を採ることもできる。あるいは、Ｉ／Ｏ＿ＡＳＩＣ１５４の中に節電制御部１６０の機能を実装する構成を採ることもできる。
【０１８９】
また、ＰＣＩバスを使用したデータ転送はマスタデバイス（イニシエータともいう）とターゲットデバイスの２つのデバイス間で行なわれるものであるため、図３では、節電制御部１６０をマスタデバイスとして機能する第１節電制御部１６２とターゲットデバイスとして機能する第２節電制御部１６４とに分けて示したが、同様な動作は、図１２に示す変形例のように、１つのデバイスでなる節電制御部１６０にても行なうことができる。
【０１９０】
すなわち、図３では、ＰＣＩバスに慣れ親しんだ人に直感的に分かるように、イニシエータとターゲットを明確に区別しているが、図１２に示す変形例のように、物理的に１つのデバイスで実現しても何ら問題がない。これは、節電中にＩ／Ｏバス１５９をビジー状態にするためには、
１）Ｉ／Ｏバス１５９の使用権を獲得する、
２）フレーム信号ＮＦＲＡＭＥをアサートして、Ｉ／Ｏバス１５９の使用を開始する開始信号ＮＩＲＤＹおよびデバイス選択信号ＮＤＥＶＳＥＬを規定時間内に返してバスサイクルにウェイトを掛ける、
というステップを踏めばよいことになるからである。
【０１９１】
さらに、節電状態から復帰するイベント（上記実施形態ではＣＰＵ１１０からの節電信号ＮＱＡＣＫがＬからＨに遷移）が発生したら、
４）完了信号ＮＴＲＤＹを返す、
という動作を行なうことで、Ｉ／Ｏバス１５９のビジー状態を解除することができる。
【０１９２】
このとき、全ての信号はバス接続となっているので、信号をドライブするデバイスが唯一であればよいため、あえてイニシエータとターゲット（図＠８では、第１節電制御部１６２と第２節電制御部１６４）に分ける必要はない。
【０１９３】
また、上記実施形態では、データ処理装置３に画像処理を行なわせ画像形成部３００にて画像を印刷用紙などに出力するプリンタを画像形成装置２の一例に説明したが、節電機能を有するＣＰＵやＤＲＡＭなどを採用するデータ処理装置や画像形成装置であればどのようなものでもよい。
【図面の簡単な説明】
【０１９４】
【図１】本発明に係るデータ処理装置の一実施形態の構成例を示す図である。
【図２】図１に示したデータ処理装置における節電処理手順の概要を示したフローチャートである。
【図３】本発明に係る画像形成装置を備えたデータ処理システムの一実施形態の構成例を示す図である。
【図４】節電中にデータ転送されることの問題を説明する図である。
【図５】図４における節電機能の問題を解決する一手法を説明する図である。
【図６】節電制御部の基本的な作用を説明するために、図３に示したデータ処理装置の各機能部の構成を組み替えて示した概念図である。
【図７】図３に示した構成での節電モードへの遷移を示すフローチャートである。
【図８】図６に示した構成でのシステムの状態と信号の相関関係を示す図である。
【図９】ＰＣＩインタフェースを用いた場合における節電処理の問題点を説明する図である。
【図１０】図３に示した構成におけるシステムの状態と信号の相関関係を示す図である。
【図１１】図１０に示した節電制御部の動作状態の概要を説明する図である。
【図１２】本発明に係るデータ処理システムの変形例を示す図である。
【符号の説明】
【０１９５】
１…データ処理システム、２…画像形成装置、３…データ処理装置、５…外部装置、９…通信ネットワーク、３１…コントローラ部、３２…使用権制御部、３４…節電解除処理部、３４ａ…節電解除トリガ検出部、３４ｂ…節電解除通知送信部、３５…Ｉ／Ｏインタフェース部、３６…節電制御部、３７…データ転送要求監視部、３８…復帰処理部、１００…内部コントローラ部、１１０…ＣＰＵ、１２０…メインメモリ部、１２２，１２４，１２６…ＤＲＡＭ、１４０…バス調停制御部、１４２…バスアービタ、１４４…バスブリッジ部、１５０…インタフェース部、１５６…汎用Ｉ／Ｏ＿ＬＳＩ、１５８…メモリバス、１５９…Ｉ／Ｏバス、１６０…節電制御部、１６２…第１節電制御部、１６４…第２節電制御部、３００…画像形成部
【図１】
2006276978.tif 000003
【図２】
2006276978.tif 000004
【図３】
2006276978.tif 000005
【図４】
2006276978.tif 000006
【図５】
2006276978.tif 000007
【図６】
2006276978.tif 000008
【図７】
2006276978.tif 000009
【図８】
2006276978.tif 000010
【図９】
2006276978.tif 000011
【図１０】
2006276978.tif 000012
【図１１】
2006276978.tif 000013
【図１２】
2006276978.tif 000014