(57)【特許請求の範囲】
【請求項１】
それぞれ独自の規定電圧を超える供給電圧の電力供給を受けることで動作可能状態となり、バスマスタからのアクセスに応じて機能動作する複数の機能動作手段と、
複数の供給電圧を切り替えて前記機能動作手段へ電力供給する電力供給手段と、
前記電力供給手段から前記機能動作手段への供給電圧を切り替え制御する電力制御手段と、
前記電力供給手段からの前記供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵと、
前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵであるか否かを判定する種別判定手段と、
前記機能動作手段に対する前記バスマスタからのアクセスの有無を検出し、前記規定電圧が前記供給電圧よりも高い該機能動作手段に対して該バスマスタからアクセスがあると、該機能動作手段に代わって該アクセスに対して所定の代理応答を該バスマスタに行い、前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵ以外のバスマスタであると前記種別判定手段が判定すると、該バスマスタに対してＮＧ応答を行うとともに、該機能動作手段に不正アクセスがあった旨を該サブＣＰＵに対して通知する代理応答手段と、
を備えていることを特徴とするデータ処理装置。
【請求項２】
前記データ処理装置は、
複数の前記機能動作手段のうち、前記規定電圧が前記供給電圧よりも高い機能動作手段を判定する判定手段を備え、
前記代理応答手段は、
前記規定電圧が前記供給電圧よりも高いと前記判定手段が判定した前記機能動作手段に対して前記バスマスタからアクセスがあると、該バスマスタに対して代理応答を行うことを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記データ処理装置は、
前記電力供給手段からの前記供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵと、
前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵであるか否かを判定する種別判定手段と、
を備え、
前記代理応答手段は、
前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵであると前記種別判定手段が判定すると、該サブＣＰＵに対してＮＧ応答を行うことを特徴とする請求項１記載のデータ処理装置。
【請求項４】
前記データ処理装置は、
前記供給電圧が前記規定電圧よりも低い前記機能動作手段に対して前記バスマスタから発生したアクセスがリードアクセスであるか否かを判定するアクセス判定手段を備え、
前記代理応答手段は、
前記供給電圧が前記規定電圧よりも低い前記機能動作手段に対して前記バスマスタによって行われたアクセスが前記リードアクセスであると前記アクセス判定手段が判定すると、該バスマスタに対してＮＧ応答を行うことを特徴とする請求項１記載のデータ処理装置。
【請求項５】
データ処理部でデータ処理されたデータに基づいて被記録媒体に画像形成する画像形成装置において、前記データ処理部として、請求項１から請求項４のいずれかに記載のデータ処理装置を搭載していることを特徴とする画像形成装置。
【請求項６】
それぞれ独自の規定電圧を超える供給電圧の電力供給を受けることで動作可能状態となってバスマスタからのアクセスに応じて機能動作する複数の機能動作手段に、複数の供給電圧を切り替えて電力供給する電力供給処理ステップと、
前記電力供給処理ステップによる前記機能動作手段への供給電圧を切り替え制御する電力制御処理ステップと、
前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが、前記電力供給手段からの前記供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵであるか否かを判定する種別判定ステップと、
前記機能動作手段に対する前記バスマスタからのアクセスの有無を検出し、前記規定電圧が前記供給電圧よりも高い該機能動作手段に対して該バスマスタからアクセスがあると、該機能動作手段に代わって該アクセスに対して所定の代理応答を該バスマスタに行い、前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵ以外のバスマスタであると前記種別判定ステップによって判定されると、該バスマスタに対してＮＧ応答を行うとともに、該機能動作手段に不正アクセスがあった旨を該サブＣＰＵに対して通知する代理応答処理ステップと、
を有していることを特徴とする省電力制御方法。
【請求項７】
コンピュータに、
それぞれ独自の規定電圧を超える供給電圧の電力供給を受けることで動作可能状態となってバスマスタからのアクセスに応じて機能動作する複数の機能動作手段に、複数の供給電圧を切り替えて電力供給する電力供給処理と、
前記電力供給処理による前記機能動作手段への供給電圧を切り替え制御する電力制御処理と、
前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが、前記電力供給手段からの前記供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵであるか否かを判定する種別判定処理と、
前記機能動作手段に対する前記バスマスタからのアクセスの有無を検出し、前記規定電圧が前記供給電圧よりも高い該機能動作手段に対して該バスマスタからアクセスがあると、該機能動作手段に代わって該アクセスに対して所定の代理応答を該バスマスタに行い、前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対してアクセスした前記バスマスタが前記サブＣＰＵ以外のバスマスタであると前記種別判定ステップによって判定されると、該バスマスタに対してＮＧ応答を行うとともに、該機能動作手段に不正アクセスがあった旨を該サブＣＰＵに対して通知する代理応答処理と、
を実行させることを特徴とする省電力制御プログラム。
【請求項８】
請求項７記載の省電力制御プログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体に関し、詳細には、低電圧動作時に、低電圧では動作不可能なモジュールに対する不正アクセスに対して適切に対応するデータ処理装置、画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体に関する。
【背景技術】
【０００２】
複写装置、ファクシミリ装置、プリンタ装置、スキャナ装置、コンピュータ等のデータ処理装置、特に、複写機能、ファクシミリ機能、プリント機能、スキャナ機能、データ転送機能等の複数の機能が組み込まれている複合装置においては、使用されている状態でなくても、電力が投入され状態での消費電力が大きいことから、従来から、消費電力を削減するために、電力の投入後に、使用されずに待機状態となっている時間が一定時間経過すると、ネットワークからの要求、動作要求操作（操作表示部の電源ボタン等のボタン操作、ＡＤＦ（Auto Document Feeder）への原稿のセット操作、圧板の開閉操作等）等を検知する復帰検知部等の一部の機能部分にのみ電力の供給を行い、その他の各部への電力の供給を停止して、または、供給電圧を下げて、消費電力を削減する省電力モードを備えている。
【０００３】
また、近年、データ処理装置は、データ処理を行うのに複数のモジュールを搭載したＡＳＩＣ（Application Specific Integrated Circuit）等の半導体集積回路を搭載してメインＣＰＵ（Central Processing Unit ）の制御下で各種データ処理を行っている。
【０００４】
さらに、近年、省電力モードを備えたデータ処理装置においては、メインＣＰＵへの電力の供給をも停止して、消費電力のより一層の削減を図るために、メインＣＰＵの他に、省電力モード復帰要因が発生した際にメインＣＰＵを起動させるサブＣＰＵを設けるとともに、省電力モードに入るときの復帰条件を記憶する不揮発性記憶媒体を設け、メインＣＰＵを含めた各部への電力の供給を停止、または、低電圧供給する省電力モードに入るが、サブＣＰＵへの電力の供給を継続するデータ処理装置が出現してきている。
【０００５】
そして、ＡＳＩＣは、複数のモジュールを搭載しており、省電力モード時に電力の供給が停止されるモジュールと電力が供給され続けるモジュールがあって、省電力モードにおいて、電力の供給が停止されているモジュールに不正にあるいは誤って処理命令が実行されると、不正なメモリアクセスやレジスタアクセスが発生して、データが破壊されたり、誤動作を生じたりするおそれがある。
【０００６】
そして、従来から、中央処理装置（ＣＰＵ等）と内部バスを介して接続された第１の回路（モジュール等）と、モジュールの動作を選択的に停止させる停止制御回路とを含んでおり、モジュールの動作が停止中に、中央処理装置からモジュールを用いる命令が発行されると、停止制御回路が、動作停止信号を中央処理装置に発行して、中央処理装置が、動作停止信号を受け取ると、モジュールの動作停止状態を解除してから命令の実行動作を開始させる技術が提案されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記公報記載の従来技術にあっては、モジュールの停止中に中央処理装置から命令が発行されると、該モジュールへの動作停止状態を解除してから命令の実行動作を開始させているため、上記技術をＡＳＩＣ等の半導体集積回路に適用すると、省電力モードで低電圧動作時に、低電圧動作が不可能なモジュールにサブＣＰＵ等のバスマスタからアクセスが発生すると、該モジュールへの電力の供給を再開した後に、該モジュールを動作させることとなる。
【０００８】
ところが、複数のモジュールを搭載するＡＳＩＣ（半導体集積回路）において、供給電力の電圧が低下されていて該低電力状態では動作不可能なモジュールに動作命令が発行された場合に、該アクセスを検知して、電圧を高く制御しても、該電圧が該モジュールの動作可能な規定の電圧（規定電圧）に達して、その後、リセットを解除し、内蔵ＰＬＬ（Phase Locked  Loop）がロックして、動作可能になるまでに、数ｕｓ〜数ｍｓの時間を要するため、サブＣＰＵ等のバスマスタは、その間、該モジュールにアクセスすることができず、利用性が悪いという問題があった。
【０００９】
また、近年のＡＳＩＣの内部バスは複雑化しているため、ＣＰＵが誤って動作を停止しているモジュールにアクセスし、モジュールからの応答が無い場合は、内部バスがロックしてシステムが動作不能に陥る場合がある。このような場合に、上記公報記載の従来技術を適用すると、例外処理ルーチンを実行することができず、ソフトウェアの不具合の解析を行うことができないという問題があった。
【００１０】
例えば、図４に示すように、ＡＳＩＣ１００と高電圧と低電圧の電力を供給可能な電源供給部１１０がボード上に実装されており、ＡＳＩＣ１００が、電源制御部１０１と複数のモジュールＭＡ、ＭＢ、ＭＣを搭載している。そして、電源供給部１１０は、ＡＳＩＣ１００の電圧制御部１０１からの電圧制御信号ＶＳによってＡＳＩＣ１００に供給するＡＳＩＣ電力ＡＰの電圧を高電圧と低電圧に制御する。モジュールＭＡは、ＡＳＩＣ電力ＡＰが高電圧の場合に限り動作可能なモジュールであり、モジュールＭＢ及びモジュールＭＣは、高電圧及び低電圧で動作可能なモジュールである。いま、図５に示すような電圧制御信号ＶＳのタイミングで電源供給部１１０からＡＳＩＣ電力ＡＰを切り替えた場合、タイミングＴ１では、ＡＳＩＣ１００全体の電力が切断されており、タイミングＴ２で、ＡＳＩＣ１００全体に、ＡＳＩＣ電力ＡＰとして、全てのモジュールＭＡ〜ＭＣが動作可能な高電圧Ｖｈが電源供給部１１０から供給される。また、タイミングＴ３で、ＡＳＩＣ１００の電圧制御部１０１が、ＡＳＩＣ電力ＡＰの電圧（供給電圧）を低電圧Ｖｌに制御する電圧制御信号ＶＳを電源供給部１１０に出力すると、電源供給部１１０は、高電圧ＶｈのＡＳＩＣ電力ＡＰから低電圧ＶｌのＡＳＩＣ電力ＡＰへの切り替えを開始して、タイミングＴ４で、モジュールＭＡが動作不可能で、モジュールＭＢ、ＭＣが動作可能な低電圧ＶｌのＡＳＩＣ電力ＡＰに切り替えてＡＳＩＣ１００に供給する。次に、タイミングＴ５で、ＡＳＩＣ１００の電圧制御部１０１が、ＡＳＩＣ電力ＡＰの供給電圧を高電圧Ｖｈに制御する電圧制御信号ＶＳを電源供給部１１０に出力すると、電源供給部１１０は、低電圧ＶｌのＡＳＩＣ電力ＡＰから高電圧ＶｈのＡＳＩＣ電力ＡＰへの切り替えを開始して、タイミングＴ６で、全てのモジュールＭＡ〜ＭＣが動作可能な高電圧ＶｈのＡＳＩＣ電力ＡＰに切り替えてＡＳＩＣ１００に供給する。ここで、期間Ｔａ１及び期間Ｔａ３は、全モジュールＭＡ、ＭＢ、ＭＣが動作可能な期間であるが、期間Ｔａ２は、モジュールＭＢ、ＭＣのみが動作可能で、モジュールＭＡが動作不可能となる。
【００１１】
ところが、ＳＡＴＡ（シリアルＡＴＡ、Serial Advanced Technology Attachment）モジュール、ＰＣＩ（Peripheral Component Interconnect） Express（以下、ＰＣＩｅという。）モジュール等の高速シリアルインターフェース及びＤＤＲ−ＳＤＲＡＭ（Double-Data-Rate Synchronous Dynamic Random Access Memory）モジュール等の一定の動作周波数を必要とするモジュールは、消費電力を削減するために、その動作周波数が下げられて供給電圧が一定の電圧（規定電圧）よりも低下すると、正常な動作が不可能となる。
【００１２】
したがって、ＡＳＩＣ１００がＳＡＴＡ、ＰＣＩｅ、ＤＤＲ−ＳＤＲＡＭ等の一定の動作周波数を必要とするモジュールを搭載している場合に、電源供給部１１０から供給するＡＳＩＣ電力ＡＰの電圧を低く制御し、同時に動作周波数を下げて、消費電力を低減している状態で、ＣＰＵ等のバスマスタが誤って、低電圧動作時に動作不可能なモジュールにアクセスすることがある。この場合、上記公報記載の従来技術のように、電圧制御部がバスマスタのアクセスを検知して、電圧を高く制御しても、電圧がアクセス先のモジュールが動作可能な電圧に達して、その後にリセットを解除し、内蔵ＰＬＬがロックして、動作可能になるまでに、数ｕｓ〜数ｍｓの時間を要するため、その間、バスマスタはアクセス先のモジュールにアクセスすることができず、利用性が悪いという問題があった。
【００１３】
また、近年のＡＳＩＣの内部バスは複雑化しているため、サブＣＰＵ等のバスマスタが、誤って、動作を停止しているモジュールにアクセスして、モジュールからの応答が無い場合、内部バスがロックしてシステムが動作不能に陥る場合がある。この場合、上記公報記載の従来技術のような停止制御回路によるモジュールの動作停止状態を解除してからアクセスを実行するという例外処理ルーチンを実行することができず、ソフトウェアの不具合を解析することができないという問題があった。
【００１４】
そこで、本発明は、複数の電圧に切り替えて供給される供給電圧のうち、規定電圧を超える供給電圧の電力供給を受けると、動作可能状態となって、バスマスタからのアクセスに応じてその機能を実行する複数の機能動作手段のうち、該供給電圧によって動作の停止している機能動作手段へのバスマスタからのアクセスによって、内部バスがロックして動作が停止することを防止するとともに、不正なメモリアクセスやレジスタアクセスによるデータ破壊及び不正なデータの読み出しによる動作の継続を適切に防止するデータ処理装置、画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【００１５】
本発明は、上記目的を達成するために、それぞれ独自の規定電圧を超える供給電圧の電力供給を受けることで動作可能状態となってバスマスタからのアクセスに応じて機能動作する複数の機能動作手段に、複数の供給電圧を切り替えて電力供給し、該機能動作手段に対するバスマスタからのアクセスの有無を検出して、該規定電圧が該供給電圧よりも高い該機能動作手段に対してバスマスタからアクセスがあると、該機能動作手段に代わって該アクセスに対して所定の代理応答を該バスマスタに行うことを特徴としている。
【００１６】
また、本発明は、複数の前記機能動作手段のうち、前記規定電圧が前記供給電圧よりも高い機能動作手段を判定して、前記規定電圧が前記供給電圧よりも高い前記機能動作手段に対して前記バスマスタからアクセスがあると、該バスマスタに対して代理応答を行うことを特徴としてもよい。
【発明の効果】
【００１７】
本発明によれば、複数の電圧に切り替えて供給される供給電圧のうち、規定電圧を超える供給電圧の電力供給を受けると、動作可能状態となって、バスマスタからのアクセスに応じてその機能を実行する複数の機能動作手段のうち、該供給電圧によって動作の停止している機能動作手段へのバスマスタからのアクセスによって、内部バスがロックして動作が停止することを防止することができるとともに、不正なメモリアクセスやレジスタアクセスによるデータ破壊及び不正なデータの読み出しによる動作の継続を適切に防止することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施例を適用した複合装置の要部ブロック構成図。
【図２】ＡＳＩＣの詳細なブロック構成図。
【図３】ＡＳＩＣ電力電圧と各モジュールの動作状態を示す図。
【図４】従来のＡＳＩＣと電源供給部の一例を示すブロック構成図。
【図５】電圧制御信号、ＡＳＩＣ電力及びＡＳＩＣの各モジュールの動作タイミングを示す図。
【発明を実施するための形態】
【００１９】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の必須の構成要件ではない。
【実施例１】
【００２０】
図１〜図３は、本発明のデータ処理装置、画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体の一実施例を示す図であり、図１は、本発明のデータ処理装置、画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体の一実施例を適用した複合装置１の要部ブロック構成図である。
【００２１】
図１において、複合装置１は、エンジン部２、コントローラ３を備えているとともに、図示しない操作表示部、ファクシミリ通信部、ネットワーク通信部及びハードディスク等を備えている。操作表示部は、各種操作を行う操作キー及び必要な情報を表示するディスプレイ等を備えており、ファクシミリ通信部は、外部公衆回線等を利用してファクシミリ通信を行う。ネットワーク通信部は、ＬＡＮ（Local Area Network）等のネットワークを介して画像データ等のデータの転送を行う。
【００２２】
エンジン部２は、スキャナ、プロッタ等のエンジンを総称したものである。スキャナは、例えば、ＣＣＤ（Charge Coupled Device ）を利用したイメージスキャナ等が利用されており、一般に、ＡＤＦ（自動原稿送り装置）を備えている。ＡＤＦには、複数枚の原稿がセットされ、ＡＤＦは、セットされた原稿を１枚ずつスキャナの原稿読み取り位置に送給する。スキャナは、ＡＤＦから搬送されてきた原稿を走査し、原稿の画像を所定の解像度で読み取って、２値化してコントローラユニット３に出力する。プロッタは、例えば、電子写真式記録装置等であり、プロッタは、記録紙に、スキャナで読み取られた原稿の画像や図示しないファクシミリ通信部やネットワーク通信部で受信した受信画像等を記録出力するとともに、必要なレポートを記録紙に記録出力する。
【００２３】
コントローラ３は、メインＣＰＵ（Central Processing Unit ）１０、操作表示Ｉ／Ｆ１１、オプションＩ／Ｆ１２、メインメモリ（ＭＥＭ）１３、メインＲＯＭ１４、ＮＶＲＡＭ（Nonvolatile Random Access Memory）１５、ＡＳＩＣ１６及びサブＲＯＭ１７等を搭載しており、複合装置１の全体の制御、描画、通信、操作表示部から入力データや操作表示部への表示データの制御等を行う。
【００２４】
メインＲＯＭ１４は、複合装置１としての基本制御プログラムや必要なシステムデータを格納しており、メインメモリ１３は、ＲＡＭ（Random Access Memory）等で構成されて、メインＣＰＵ１０のワークメモリとして利用されるとともに、画像データ等のデータの一時保管を行う。
【００２５】
ＮＶＲＡＭ１５は、複合装置１の電力が切られているときにも記憶内容を保持するメモリであり、複合装置１の電力がオフの際にも保持する必要のあるシステム設定等のデータがメインＣＰＵ１０の制御下で格納される。
【００２６】
メインＣＰＵ１０は、メインＲＯＭ１４内のプログラムに基づいてメインメモリ１３をワークメモリとして利用して、複合装置１の各部を制御して、複合装置１としての処理を実行する。
【００２７】
操作表示Ｉ／Ｆ１１には、操作表示部が接続され、操作表示Ｉ／Ｆ１１は、操作表示部からの入力データをメインＣＰＵ１０に渡して、メインＣＰＵ１０からの表示データ等を操作表示部に出力する。
【００２８】
オプションＩ／Ｆ１２は、ファクシミリやプリンタアプリケーション等のオプションユニットを接続するインターフェースである。
【００２９】
ＡＳＩＣ（データ処理装置）１６は、サブＣＰＵ２１を備えているとともに、図２に示すように、ＳＲＡＭ（Static ＲＡＭ ）２２、ローカルバスコントローラ２３、ＤＤＲ−ＳＤＲＡＭコントローラ２４、ＵＡＲＴ（調歩同期式シリアル通信回線）２５、ＧＩＯ（汎用入出力ポート：General Purpose Input/Output）２６、割り込みコントローラ２７、タイマ部２８、ネットワークコントローラ２９、ＵＳＢ（Universal Serial Bus）デバイスコントローラ３０、ＰＣＩｅ（Peripheral Component Interconnect Express）コントローラ３１及びＳＡＴＡコントローラ３２、代理応答部３３及び電源制御部３４等を備えており、上記各部は、内部バス３５や各種信号線により接続されている。機能動作手段であるネットワークコントローラ２９及びＵＳＢデバイスコントローラ３０は、ＤＭＡＣ（Direct Memory Access Controller ：ＤＭＡコントローラ）を内蔵してＳＲＡＭ２２やＰＣＩｅ上のデータの送受信を行う。
【００３０】
サブＲＯＭ１７は、ＡＳＩＣ１６のサブＣＰＵ２１が実行する基本アプリケーションプログラム、本発明の省電力制御プログラム及び必要なデータを格納しており、サブＣＰＵ２１は、サブＲＯＭ１７のプログラムに基づいて、メインＣＰＵ１０が動作停止時に複合装置１全体を制御するとともに、バスマスタとして各モジュールへのアクセス制御を行う。
【００３１】
ＳＲＡＭ２２は、サブＣＰＵ２１のワークデータ等を格納し、ローカルバスコントローラ２３は、ＡＩＳＣ１６の外部のサブＲＯＭ１７やＲＡＭ等のメモリへのアクセス制御を行う。
【００３２】
ＤＤＲ−ＳＤＲＡＭコントローラ（機能動作手段）２４は、ＡＳＩＣ１６の外部のＤＤＲ−ＳＤＲＡＭへのアクセス制御を行い、ＵＡＲＴ２５は、ＵＡＲＴ（調歩同期式シリアル通信回線）の通信制御を行う。
【００３３】
ＧＩＯ部２６は、汎用入出力ポートで、特に、省電力モード時に、操作表示部の電源ボタンの押下やエンジン部２のＡＤＦに紙がセットされたか、圧板が動作したか等の省電力モード復帰要因の発生の有無を監視するための入力ポートを有している。
【００３４】
割り込みコントローラ２７は、ＡＳＩＣ１６の内部、外部からの割り込みを監視し、サブＣＰＵ２１に割り込み例外処理を発生させる。
【００３５】
タイマ部２８は、インターバルタイマ及びサブＣＰＵ２１の暴走を監視するウオッチドックタイマ機能を有している。
【００３６】
ネットワークコントローラ２９は、イーサネット（Ethernet：登録商標）形態のＬＡＮ（Local Area Network）等のネットワークに接続されており、ネットワークには、パーソナルコンピュータ等が接続されている。ネットワークコントローラ２９は、イーサネットの通信制御を行う。
【００３７】
ＵＳＢデバイスコントローラ３０には、パーソナルコンピュータやメモリ等のＵＳＢデバイスが接続され、ＵＳＢデバイスコントローラ３０は、接続されるＵＳＢデバイスとの間でデータの授受を行う。
【００３８】
ＰＣＩｅコントローラ（機能動作手段）３１には、ＰＣＩｅバスが接続され、ＰＣＩｅコントローラ３１は、ＰＣＩｅバスを使用したＰＣＩｅ通信制御を行う。本実施例の複合装置１では、ＰＣＩｅバスによってメインＣＰＵ１０とＡＳＩＣ１６とが接続されている。
【００３９】
ＳＡＴＡコントローラ（機能動作手段）３２は、シリアルＡＴＡの通信制御を行い、ＡＩＳＣ１６の外部のハードディスク、ＮＡＮＤ  Ｆｌａｓｈコントローラ等へのアクセス制御を行う。また、ＳＡＴＡコントローラ３２は、内部にＤＭＡＣ（Direct Memory Access Controller ：ＤＭＡコントローラ）を内蔵し、ＤＭＡＣは、バスマスタとして、内部バス３５を介してＤＤＲ−ＳＤＲＡＭ、ＳＲＡＭ、ＰＣＩｅ上のデータの送受信を行う。
【００４０】
代理応答部（代理応答手段）３３は、供給電力電圧が規定電圧よりも低く、動作が停止している状態のＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１、または、ＳＡＴＡコントローラ３２等のモジュール（機能動作手段）へのサブＣＰＵ２１等のバスマスタからアクセスが発生した場合に適宜に代理応答を行い、アクセスをしてきた該バスマスタに対して不正なアクセスがある旨を通知する。代理応答部３３は、ＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１、または、ＳＡＴＡコントローラ３２等のモジュールのうちどのモジュールへのアクセスに対して代理応答するかについては、電源制御部３４からの制御信号BUS_CTLにより制御される。
【００４１】
電源制御部（電力制御手段）３４は、電圧制御信号ＶＳによって、ＡＳＩＣ１６外部の電源供給部（電力供給手段）４０がＡＳＩＣ１６へ供給するＡＳＩＣ電力ＡＰの電圧を段階的に制御する。また、電源制御部３４は、段階的に電圧制御したＡＳＩＣ電力ＡＰの電圧に応じて、ＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１、ＳＡＴＡコントローラ３２等のモジュールのうちどのモジュールへのアクセスに対して代理応答するかを、制御信号BUS_CTLにより、代理応答部３３に通知し、また、代理応答部３３の動作の開始を制御する。上記代理応答部３３及び電源制御部３４は、全体として、判定手段及びアクセス判定手段として機能している。
【００４２】
そして、ＡＳＩＣ１６は、ＩＯ端子、内部論理回路、その他専用の電源電力を必要とするが、ＡＳＩＣ１６には、ＡＳＩＣ１６と同じボード上に搭載されている電源供給部４０からＡＳＩＣ電力ＡＰが供給され、この電源供給部４０から供給されるＡＳＩＣ電力ＡＰは、ＡＳＩＣ１６の内部論理回路のコア電圧である。ＡＳＩＣ１６の内部論理回路の最大動作周波数は、半導体プロセス、電源電圧、動作温度によって決定されるため、電源電圧が下がると、最大周波数が低下する特徴を有している。すなわち、ＡＳＩＣ１６の内部論理回路の動作周波数を下げること、電源電圧を下げることができ、その結果、低消費電力でＡＳＩＣ１６を動作させることができる。
【００４３】
複合装置１は、ＲＯＭ、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory ）、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory ）、ＣＤ−ＲＷ（Compact Disc Rewritable ）、ＤＶＤ（Digital Video Disk）、ＳＤ（Secure Digital）カード、ＭＯ（Magneto-Optical Disc）等のコンピュータが読み取り可能な記録媒体に記録されている本発明の省電力制御方法を実行する省電力制御プログラムを読み込んで、ＡＳＩＣ１６のサブＣＰＵ２１が参照するサブＲＯＭ１７に導入することで、ＡＳＩＣ１６が、後述する省電力時に、モジュールＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１、ＳＡＴＡコントローラ３２及びその他のモジュールのうち、ＡＳＩＣ電力ＡＰの供給電圧が規定電圧に満たないために動作が停止しているモジュールに対してアクセスがあった場合の対応処理を適切に行うデータ処理装置として構築されている。この省電力制御プログラムは、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
【００４４】
次に、本実施例の作用を説明する。本実施例の複合装置１は、省電力モード時に供給電圧が規定電圧に満たないモジュールにバスマスタからアクセスがあると、該アクセスに対して適切に代理応答して、内部バス３５がロックして動作が停止することを防止するとともに、不正なメモリアクセスやレジスタアクセスによるデータ破壊や不正なデータの読み出しによる動作の継続を適切に防止する。
【００４５】
すなわち、複合装置１は、メイン電源が投入されている通常状態においては、例えば、エンジン部２のスキャナで読み取った原稿の画像データを、コントローラ３で必要な画像処理を施した後、エンジン部２のプロッタで用紙に画像出力する等の画像処理を施す。
【００４６】
そして、複合装置１は、メイン電源が投入されてから動作要求が無い状態で予め設定されている所定の待ち時間が経過すると、主要各部への電力の供給を削減または停止する省電力モードを備えており、省電力モードにおいては、メインＣＰＵ１０への通電を遮断して、ＡＳＩＣ１６のサブＣＰＵ２１への通電を行ってサブＣＰＵ２１が省電力モード時に必要な複合装置１の全体の制御を行うとともに、ＡＳＩＣ１６内部においては、電源制御部３４が、モジュールへのＡＳＩＣ電力ＡＰの電圧を複数の電圧（本実施例では、高電圧Ｖｈ、中電圧Ｖｍ、低電圧Ｖｌの３つの電圧として、以下説明する。）に切り替え制御するとともに、供給電圧がそのモジュールの規定電圧に満たないで動作が停止しているモジュールにサブＣＰＵ２１やＤＭＡＣ等のバスマスタから誤ってまたは不正にアクセスが発生すると、代理応答部３３がアクセスのあったモジュールに変わって代理応答することで、該アクセスに対する適正な対処を行う。
【００４７】
すなわち、ＡＳＩＣ１６の内部論理回路であるモジュールの最大動作周波数は、半導体プロセス、電源電圧、動作温度によって決定されるため、電源電圧が下がると、最大周波数が低下する特徴を有している。すなわち、ＡＳＩＣ１６のモジュールの動作周波数を下げること、電源電圧を下げることができ、その結果、低消費電力でＡＳＩＣ１６を動作させることができる。
【００４８】
いま、ＡＳＩＣ１６の搭載しているモジュールが、図３に示すように、動作可能状態と動作不可能状態にあるものとする。すなわち、ＡＳＩＣ電力ＡＰの供給電圧（コア電圧）が、高電圧Ｖｈの１．２Ｖ、中電圧Ｖｍの１．０Ｖ及び低電圧Ｖｌの０．９５Ｖに切り替えられる場合、ＤＤＲ−ＳＤＲＡＭコントローラ２４が、高電圧Ｖｈの１．２Ｖでのみ動作可能、中電圧Ｖｍの１．０Ｖ及び低電圧Ｖｌの０．９５Ｖでは、動作不可能、ＰＣＩｅコントローラ３１及びＳＡＴＡコントローラ３２が、高電圧Ｖｈの１．２Ｖ及び中電圧Ｖｍの１．０Ｖで動作可能、低電圧Ｖｌの０．９５Ｖで、動作不可能、その他のモジュールが、高電圧Ｖｈの１．２Ｖ、中電圧Ｖｍの１．０Ｖ及び低電圧Ｖｌの０．９５Ｖの全ての電圧で動作可能であるものとする。
【００４９】
ＡＳＩＣ１６の各モジュールが、図３に示したような規定電圧状態である場合、複合装置１の通常動作モードにおいて、電源制御部３４が、電圧制御信号ＶＳによって高電圧Ｖｈを電源供給部４０に要求すると、電源供給部４０は、コア電圧が１．２Ｖの高電圧ＶｈであるＡＳＩＣ電力をＡＳＩＣ１６に供給する。この場合、ＡＳＩＣ１６の全てのモジュールが動作可能状態となる。
【００５０】
複合装置１は、待機状態において所定の待ち時間が経過して、第１省電力モードに移行すると、サブＣＰＵ２１が、電圧制御部３４の内部レジスタにアクセスし、コア電圧を中電圧Ｖｍの１．００Ｖに下げる手順を実行する。このコア電圧を中電圧Ｖｍに下げる手順では、電圧制御部３４が、電圧制御信号ＶＳによってＡＳＩＣ電力ＡＰのコア電圧を、中電圧Ｖｍに下げる旨を電源供給部４０に通知し、電源供給部４０は、コア電圧が１．０Ｖの中電圧ＶｍであるＡＳＩＣ電力をＡＳＩＣ１６に供給する。この場合、図３から分かるように、ＡＳＩＣ１６のモジュールのうち、ＤＤＲ−ＳＤＲＡＭコントローラ２４のみが動作不可能状態となり、他のモジュールは、動作可能状態となる。そこで、電源制御部３４は、代理応答部３３に、第１省電力モードにおいてＤＤＲ−ＳＤＲＡＭコントローラ２４へのアクセスがサブＣＰＵ２１等のバスマスタからあると、代理応答を開始させるために、ＤＤＲ−ＳＤＲＡＭコントローラ２４へのアクセスに対する代理応答を指示する制御信号BUS_CTLをアサートして、代理応答部３３の動作を開始させる。
【００５１】
さらに、複合装置１は、待機状態においてさらに待ち時間が経過して、第２省電力モードに移行すると、サブＣＰＵ２１が、電圧制御部３４の内部レジスタにアクセスし、コア電圧を低電圧Ｖｌの０．９５Ｖに下げる手順を実行する。電圧制御部３４は、電圧制御信号ＶＳによってＡＳＩＣ電力ＡＰのコア電圧を、低電圧Ｖｌに下げる旨を電源供給部４０に通知し、電源供給部４０は、コア電圧が０．９５Ｖの低電圧ＶｌであるＡＳＩＣ電力をＡＳＩＣ１６に供給する。この場合、図３から分かるように、ＡＳＩＣ１６のモジュールのうち、ＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１及びＳＡＴＡコントローラ３２が動作不可能状態となり、その他のモジュールは、動作可能状態となる。そこで、電源制御部３４は、代理応答部３３に、第１省電力モードにおいてＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１及びＳＡＴＡコントローラ３２のいずれかに対するアクセスがサブＣＰＵ２１等のバスマスタからあると、代理応答を開始させるために、ＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１及びＳＡＴＡコントローラ３２へのアクセスに対する代理応答を指示する制御信号BUS_CTLをアサートして、代理応答部３３の動作を開始させる。
【００５２】
そして、代理応答部３３は、省電力モードのときに、サブＣＰＵ２１等のバスマスタがＤＤＲ−ＳＤＲＡＭコントローラ２４のレジスタ空間またはメモリ空間へアクセスすると、アクセスしたバスマスタに対して、バスプロトコル上のＮＧ応答、または、ＯＫ応答を返す代理応答を行う。
【００５３】
特に、代理応答部３３は、複合装置１の備えている複数の省電力モード（本実施例では、第１省電力モードと第２省電力モード）において、電圧制御部３４からの制御信号BUS_CTLに応じて、動作不可能なモジュールと動作可能なモジュールを判定し、サブＣＰＵ２１等のバスマスタがアクセスしてきたモジュールが動作不可能なモジュールであるか、動作可能なモジュールであるかを判定して、バスマスタに対してバスプロトコル上のＮＧ応答、または、ＯＫ応答を返す代理応答を行う。
【００５４】
例えば、代理応答部３３は、第１省電力モードのときに、サブＣＰＵ２１等のバスマスタが、第１省電力モードで動作不可能なＤＤＲ−ＳＤＲＡＭコントローラ２４のレジスタ空間またはメモリ空間へアクセスすると、アクセスしてきたバスマスタに対してバスプロトコル上のＮＧ応答を返す代理応答を行い、第２省電力モードのときに、サブＣＰＵ２１等のバスマスタが、第２省電力モードで動作不可能なＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１またはＳＡＴＡコントローラ３２のレジスタ空間またはメモリ空間へアクセスすると、アクセスしてきたバスマスタに対してバスプロトコル上のＮＧ応答、または、ＯＫ応答を返す代理応答を行う。
【００５５】
また、代理応答部３３は、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定し、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１の場合には、サブＣＰＵ２１に対して、ＮＧ応答を返す代理応答を行う。この場合、サブＣＰＵ２１は、ＮＧ応答を受け取ると、内部でバスエラー例外を発生させ、例外処理ルーチンを実行する。
【００５６】
さらに、代理応答部３３は、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定し、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１以外のバスマスタ（例えば、ＤＭＡＣ）である場合には、該バスマスタに対して、ＮＧ応答を返すとともに、サブＣＰＵ２１に対して例外処理割り込みを発生させてもよい。この場合、サブＣＰＵ２１は、代理応答部３３からの割り込みによって例外処理ルーチンを実行する。
【００５７】
また、代理応答部３３は、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定し、動作不可能なモジュールにアクセスしたバスマスタがサブＣＰＵ２１以外のバスマスタ（例えば、ＤＭＡＣ）である場合には、該バスマスタに対して、ＯＫ応答を返すとともに、サブＣＰＵ２１に対して例外処理を発生させるようにしてもよい。この場合、サブＣＰＵ２１は、代理応答部３３からの割り込みによって例外処理ルーチンを実行する。
【００５８】
さらに、代理応答部３３は、バスマスタによる動作不可能なモジュールへのアクセスが、ライトアクセスであるか、リードアクセスであるかのアクセス判定を行って、ライトアクセスときには、ＯＫ応答を返し、リードアクセスのときには、ＮＧ応答を返す代理応答を行ってもよい。
【００５９】
このように、本実施例の複合装置１は、ＡＳＩＣ１６のそれぞれ独自の規定電圧を超える供給電圧の電力供給を受けることで動作可能状態となってバスマスタからのアクセスに応じて機能動作するＤＤＲ−ＳＤＲＡＭコントローラ２４、ＰＣＩｅコントローラ３１、ＳＡＴＡコントローラ３２その他の複数のモジュール（機能動作手段）に、電圧制御部３４の制御によって、電源供給部４０から複数の供給電圧を切り替えて電力供給し、該モジュールに対するバスマスタからのアクセスの有無を検出して、該規定電圧が該供給電圧よりも高いモジュールに対してバスマスタからアクセスがあると、代理応答部３３が、該モジュールに代わって該アクセスに対して所定の代理応答を該バスマスタに行っている。
【００６０】
したがって、複数の電圧に切り替えられる電力供給を受けて各種機能を実行しバスマスタからのアクセスに応じて動作する複数のモジュールのうち、ＡＳＩＣ電力ＡＰの電圧によって動作の停止しているモジュールへのバスマスタからのアクセスによって、内部バス３５がロックして動作が停止することを防止することができるとともに、不正なメモリアクセスやレジスタアクセスによるデータ破壊や不正なデータの読み出しによる動作の継続を適切に防止することができる。
【００６１】
また、本実施例の複合装置１は、代理応答部３３が、ＡＳＩＣ１６の複数のモジュールのうち、規定電圧が電源供給部４０からの供給電圧よりも高いモジュールを判定して、該規定電圧が該供給電圧よりも高いモジュールに対してバスマスタからアクセスがあると、該バスマスタに対して代理応答を行う。
【００６２】
したがって、供給電圧と規定電圧から動作停止状態となっているモジュールを適切に判断して、動作停止状態となっているモジュールに対してアクセスがあった場合にのみ、代理応答することができ、内部バス３５がロックして動作が停止することを防止することができるとともに、不正なメモリアクセスやレジスタアクセスによるデータ破壊や不正なデータの読み出しによる動作の継続をより一層適切に防止することができる。
【００６３】
さらに、本実施例の複合装置１は、ＡＳＩＣ１６が、電源供給部４０からの供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵ２１を備えており、代理応答部３３が、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定して、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタが該サブＣＰＵ２１であると、該サブＣＰＵ２１に対してＮＧ応答を行っている。
【００６４】
したがって、サブＣＰＵ２１に対して、サブＣＰＵ２１による不正なデータアクセスが発生したことを通知して、不正なメモリアクセスやレジスタアクセスによるデータ破壊を防止することができるとともに、不正なデータを読み出したことを通知して、不具合が発生した記録を残すことができ、不具合発生の解析に利用することができる。
【００６５】
また、本実施例の複合装置１は、ＡＳＩＣ１６が、電源供給部４０からの供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵ２１を備えており、代理応答部３３が、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定して、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタがサブＣＰＵ２１以外のバスマスタであると、該バスマスタに対してＮＧ応答を行うとともに、該モジュールに不正アクセスがあった旨をサブＣＰＵ２１に対して通知している。
【００６６】
したがって、サブＣＰＵ２１に対してバスマスタによる不正なデータアクセスが発生したことを通知して、不正なメモリアクセスやレジスタアクセスによるデータ破壊を防止することができるとともに、不正なデータを読み出したことを通知して、不具合が発生した記録を残すことができ、不具合発生の解析に利用することができる。
【００６７】
さらに、本実施例の複合装置１は、ＡＳＩＣ１６が、電源供給部４０からの供給電圧が最も低い電圧状態においても各種制御処理を行うサブＣＰＵ２１を備えており、代理応答部３３が、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタがサブＣＰＵ２１であるか否かを判定して、規定電圧が供給電圧よりも高いモジュールに対してアクセスしたバスマスタがサブＣＰＵ２１以外のバスマスタであると、該バスマスタに対してＯＫ応答を行うとともに、該モジュールに不正アクセスがあった旨をサブＣＰＵ２１に対して通知している。
【００６８】
したがって、サブＣＰＵ２１以外の不正アクセスのあったモジュールに対してＯＫ応答を返すことで、動作終了をさせて、不正なメモリアクセスやレジスタアクセスによるデータ破壊を防止することができるとともに、不正なデータを読み出したことを通知して、不具合が発生した記録を残すことができ、不具合発生の解析に利用することができる。
【００６９】
また、本実施例の複合装置１は、代理応答部３３が、電源供給部４０からの供給電圧が規定電圧よりも低いモジュールに対してバスマスタから発生したアクセスがリードアクセスであるか否かを判定し、該供給電圧が該規定電圧よりも低いモジュールに対してバスマスタによって行われたアクセスがリードアクセスであると、該バスマスタに対してＮＧ応答を行っている。
【００７０】
したがって、リードアクセスの場合に限りＮＧ応答を返して動作終了することを要求するバスマスタに対して、適切に動作を終了させることができ、不正なメモリアクセスやレジスタアクセスによるデータ破壊を防止することができる。
【００７１】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００７２】
本発明は、低電圧動作時に、低電圧では動作不可能なモジュールに対する不正アクセスに対して適切に対応するＡＳＩＣ等のデータ処理装置、該データ処理装置を搭載する画像形成装置、省電力制御方法、省電力制御プログラム及び記録媒体に利用することができる。
【符号の説明】
【００７３】
１  複合装置
２  エンジン部
３  コントローラ
１０  メインＣＰＵ
１１  操作表示Ｉ／Ｆ
１２  オプションＩ／Ｆ
１３  メインメモリ（ＭＥＭ）
１４  メインＲＯＭ
１５  ＮＶＲＡＭ
１６  ＡＳＩＣ
１７  サブＲＯＭ
２１  サブＣＰＵ
２２  ＳＲＡＭ
２３  ローカルバスコントローラ
２４  ＤＤＲ−ＳＤＲＡＭコントローラ
２５  ＵＡＲＴ
２６  ＧＩＯ
２７  割り込みコントローラ
２８  タイマ部
２９  ネットワークコントローラ
３０  ＵＳＢデバイスコントローラ
３１  ＰＣＩｅコントローラ
３２  ＳＡＴＡコントローラ
３３  代理応答部
３４  電源制御部
３５  内部バス
ＶＳ  電圧制御信号
ＡＰ  ＡＳＩＣ電力
BUS_CTL  制御信号
【先行技術文献】
【特許文献】
【００７４】
【特許文献１】特開２００４−１５２３２１号公報
【図１】
0005644429.tif 000002
【図２】
0005644429.tif 000003
【図３】
0005644429.tif 000004
【図４】
0005644429.tif 000005
【図５】
0005644429.tif 000006