JP2016115075A - Processing system and method for controlling processing system - Google Patents
Processing system and method for controlling processing system Download PDFInfo
- Publication number
- JP2016115075A JP2016115075A JP2014252296A JP2014252296A JP2016115075A JP 2016115075 A JP2016115075 A JP 2016115075A JP 2014252296 A JP2014252296 A JP 2014252296A JP 2014252296 A JP2014252296 A JP 2014252296A JP 2016115075 A JP2016115075 A JP 2016115075A
- Authority
- JP
- Japan
- Prior art keywords
- subsystem
- main system
- main
- cpu
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Power Sources (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、メインシステムとサブシステムとを有する処理システムにおけるスリープ状態からの復帰技術に関するものである。 The present invention relates to a technology for returning from a sleep state in a processing system having a main system and a subsystem.
メインシステムとサブシステムとを有するシステムの構成において、サブシステムのブートアップ方法として、メインシステムがサブシステムのブートプログラムの展開を行い、サブシステムのブートタイミングを制御する、という従来技術がある。具体的には、メインシステムが、サブシステムのブートプラグラムを展開した後にサブシステムのリセットを解除する制御を行っている(特許文献1)。 In the configuration of a system having a main system and a subsystem, as a boot up method of the subsystem, there is a conventional technique in which the main system expands the boot program of the subsystem and controls the boot timing of the subsystem. Specifically, the main system performs control to release the reset of the subsystem after expanding the boot program of the subsystem (Patent Document 1).
また、メインシステムとサブシステムとを有するシステムの構成において、システムのSleep状態における消費電力を低減させる従来技術がある。具体的には、Sleep移行時にメインシステムのメモリに保持されているメインCPUのブートプログラムと、サブシステム内のメインメモリに保持されているサブCPUのブートプログラムと、をメインシステム内の不揮発性メモリに記録する。その後、サブシステム内のメモリの電源を切断している(特許文献2)。 In addition, there is a conventional technique for reducing power consumption in the sleep state of a system in a system configuration including a main system and a subsystem. Specifically, the main CPU boot program held in the main system memory during the sleep transition and the sub CPU boot program held in the main memory in the sub-system are stored in the non-volatile memory in the main system. To record. Thereafter, the power supply of the memory in the subsystem is turned off (Patent Document 2).
特許文献1では、メインシステムがサブシステムのブートを制御すると、メインシステムが起動してからでないとサブシステムの起動ができないので、システム全体の起動が遅くなるという課題がある。Sleep状態からの復帰に関して、システムメモリをセルフリフレッシュ状態にして値を保持し、Sleep復帰時間を早くすることが一般的に知られている。しかし、メインシステム起動後にサブシステムが起動するシステムでは、サブシステムのシステムメモリをセルフリフレッシュ状態に保持しても、サブシステムの起動はメインシステムの起動後となるので、Sleep復帰に時間を要する。 In Patent Document 1, if the main system controls the booting of the subsystem, the subsystem cannot be activated until the main system is activated, which causes a problem that the activation of the entire system is delayed. Regarding recovery from the sleep state, it is generally known that the system memory is set in the self-refresh state and the value is held to shorten the sleep recovery time. However, in a system in which the subsystem is activated after the main system is activated, even if the system memory of the subsystem is held in the self-refresh state, the subsystem is activated after the activation of the main system.
特許文献2では、Sleep移行時にサブシステム内のメモリの電源を切断するので、Sleep状態の消費電力の低減は実現しているものの、特許文献1と同様に、メインシステム起動後にサブシステムが起動するシステムであるため、サブシステムの起動はメインシステム起動後となり、Sleep復帰に時間を要する。 In Patent Document 2, since the power of the memory in the subsystem is turned off at the time of Sleep transition, the power consumption in the Sleep state is reduced. However, as in Patent Document 1, the subsystem is started after the main system is started. Since it is a system, the subsystem is activated after the main system is activated, and it takes time to return to Sleep.
本発明はこのような問題に鑑みてなされたものであり、主従関係にあるメインシステムとサブシステムとを有する処理システムにおいて、スリープ状態から復帰する場合に、メインシステムの起動を待つことなくサブシステムの起動を可能にする技術を提供する。 The present invention has been made in view of such a problem. In a processing system having a main system and a sub system in a master-slave relationship, the subsystem does not wait for the main system to start when returning from the sleep state. The technology that enables the start of is provided.
本発明の一様態は、サブシステムと、該サブシステムを制御するメインシステムと、を有する処理システムであって、前記サブシステムは、スリープモードに移行する条件が満たされると、前記サブシステムが管理するサブシステムメモリに格納されているサブシステム用のブートイメージを、前記メインシステムが管理するメインシステムメモリに書き込むように制御し、前記メインシステムは、前記スリープモードから通常動作のモードに移行する場合には、前記メインシステムメモリに書き込んだサブシステム用のブートイメージを、前記サブシステムメモリに書き込むよう制御し、前記サブシステムは、該サブシステムメモリに書き込んだブートイメージを用いてブートを行うことを特徴とする。 One aspect of the present invention is a processing system having a subsystem and a main system that controls the subsystem, and the subsystem manages when a condition for entering a sleep mode is satisfied. The boot image for the subsystem stored in the subsystem memory to be controlled is written to the main system memory managed by the main system, and the main system shifts from the sleep mode to the normal operation mode. The subsystem boot image written to the main system memory is controlled to be written to the subsystem memory, and the subsystem performs boot using the boot image written to the subsystem memory. Features.
本発明の構成によれば、主従関係にあるメインシステムとサブシステムとを有する処理システムにおいて、スリープ状態から復帰する場合に、メインシステムの起動を待つことなくサブシステムの起動を可能にする。 According to the configuration of the present invention, in a processing system having a main system and a subsystem in a master-slave relationship, the subsystem can be activated without waiting for the activation of the main system when returning from the sleep state.
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の1つである。 Preferred embodiments of the present invention will be described below with reference to the accompanying drawings. The embodiment described below shows an example when the present invention is specifically implemented, and is one of the specific examples of the configurations described in the claims.
[第1の実施形態]
先ず、本実施形態に係る処理システムの構成例について、図1のブロック図を用いて説明する。以下では、処理システムが、プリント機能及びスキャナ機能を有する複合機である場合について説明するが、サブシステムと、該サブシステムを制御するメインシステムと、を有する処理システムであって、
・ サブシステムは、スリープモードに移行する条件が満たされると、サブシステムが管理するサブシステムメモリに格納されているサブシステム用のブートイメージを、メインシステムが管理するメインシステムメモリに書き込むように制御する
・ メインシステムは、スリープモードから通常動作のモードに移行する場合には、メインシステムメモリに書き込んだサブシステム用のブートイメージを、サブシステムメモリに書き込むように制御する
・ サブシステムは、サブシステムメモリに書き込まれたブートイメージを用いてブートを行う
ような処理システムであれば、如何なる機器であっても構わない。また、このような処理システムを複合機に適用した場合であっても、該複合機の構成は図1に示した構成に限るものではなく、以下に説明する複合機の動作と同様以上の動作が可能な構成であれば、如何なる構成を採用しても構わない。
[First Embodiment]
First, a configuration example of a processing system according to the present embodiment will be described with reference to the block diagram of FIG. In the following, a case where the processing system is a multifunction machine having a print function and a scanner function will be described.
-When the condition for entering the sleep mode is satisfied, the subsystem controls to write the boot image for the subsystem stored in the subsystem memory managed by the subsystem to the main system memory managed by the main system. When the main system shifts from the sleep mode to the normal operation mode, it controls the boot image for the subsystem written in the main system memory to be written in the subsystem memory. Any device may be used as long as it is a processing system that boots using a boot image written in a memory. Further, even when such a processing system is applied to a multi-function peripheral, the configuration of the multi-function peripheral is not limited to the configuration shown in FIG. Any configuration may be adopted as long as the configuration is possible.
メインシステム101は、主にCPU(CentralProcessingUnit)で構成されており、メインシステムROM109やメインシステムDRAM105に格納されているコンピュータプログラムやデータを用いて処理を実行することで処理システム全体の動作制御を行うと共に、メインシステム101が行うものとして後述する各処理を実行する。例えば、メインシステム101は、処理システムをスリープモードに移行させるための指示が入力された場合には、該処理システムをスリープモードに移行させるための動作制御を行う。また、メインシステム101は、サブシステム102の動作制御(サブシステム102のブートプログラムの展開やサブシステム102の初期設定等)をも行う。メインシステム101の詳細については、図2を用いて後述する。
The
サブシステム102は、CPUや画像処理回路を搭載しているSoC(SystemOnChip)であって、メインシステム101に対して従属関係にあり、メインシステム101がサブシステム102の各種設定や動作制御を行う。サブシステム102は、サブシステムROM104やサブシステムDRAM106に格納されているコンピュータプログラムやデータを用いて処理を実行することで、例えば、該サブシステム102に接続されているプリンタ部111やスキャナ部112の動作制御を行うと共に、サブシステム102が行うものとして後述する各処理を実行する。サブシステム102の詳細については、図3を用いて後述する。
The
電源制御部103は、処理システム全体の電源制御を担い、CPLD(ComplexProgrammableLogicDevice)で構成される。電源制御部103は、電源部107に対して電源をオンにするよう指示したり、オフにするよう指示したりすることで、スリープモード等の動作モードにおける電源状態を制御する。また、電源制御部103は、処理システムがスリープモードにある状態(スリープ状態)に、該スリープ状態からの復帰要因を検知すると、メインシステム101に対して割り込み信号を出力する。
The
電源部107は、DC/DCコンバータ等で構成され、処理システムの各機能部に必要な複数種類の電源の生成を行う。また、電源部107は、電源制御部103によって制御され、複数種類電源のオンやオフを実行し、スリープモード等の各動作モードの電源状態を生成する。
The
メインシステムROM109は、メインシステム101と接続されており、メインシステム101が処理対象とする処理プログラムやデータが格納されている、書き換え可能なフラッシュROM(ReadOnlyMemory)である。メインシステム101は、電源が投入されると、まずメインシステムROM109内に格納されている処理プログラム及びデータを用いて処理を実行する。
The
メインシステムHDD(ハードディスクドライブ)108は、HDD(HardDiskDrive)等の大容量記憶装置の一例であり、メインシステム101及びサブシステム102を動作せるためのOS(OperatingSystem)やアプリケーションプログラム、データなどが保存されている。
The main system HDD (hard disk drive) 108 is an example of a mass storage device such as an HDD (Hard Disk Drive), and stores an OS (Operating System), application programs, data, and the like for operating the
メインシステムDRAM105は、メインシステム101と接続されており、メインシステムROM109やメインシステムHDD108からロードされたOSや処理プログラムを展開するためのエリアや、メインシステム101が各種の処理を実行する際に用いるワークエリア、サブシステム102から出力されたコンピュータプログラムやデータを格納するためのエリア等の各種のエリアを有する。
The
操作部110は、各種の情報表示を行う表示画面、該表示画面上のタッチ位置を検知するためのタッチパネル、ハードキーなどを有するユーザインターフェースである。
The
プリンタ部111は、サブシステム102から供給されたデータに基づいて紙などの記録媒体上に画像や文字を印刷する。
The
スキャナ部112は、紙などの記録媒体に記録されている情報を画像として読み取り、該読み取った画像をサブシステム102に対して出力する。
The
サブシステムROM104は、サブシステム102と接続されており、サブシステム102が処理対象とする処理プログラムやデータが格納されている、書き換えが可能なフラッシュROM(ReadOnlyMemory)である。
The
サブシステムDRAM106は、サブシステム102と接続されており、サブシステムROM104やメインシステムHDD108からロードされたOSや処理プログラムを展開するためのエリアや、サブシステム102が各種の処理を実行する際に用いるワークエリア、メインシステム101から出力されたコンピュータプログラムやデータを格納するためのエリア等の各種のエリアを有する。
The
次に、メインシステム101の構成例について、図2のブロック図を用いて説明する。なお、図2に示した構成は、メインシステム101に適用可能な構成の一例に過ぎず、以下に説明するメインシステム101の動作と同等以上の動作を実現可能な構成であれば、如何なる構成を採用しても構わない。
Next, a configuration example of the
CPU201は、メインシステム101の動作制御を行うものであり、以下でメインシステム101が行うものとして説明する処理は何れも、このCPU201によって実行される。CPU201は、メインシステムROM109やメインシステムDRAM105に格納されているコンピュータプログラムやデータを用いて処理を実行することで、メインシステム101が行うものとして後述する各処理を実行する。例えば、CPU201は、処理システムの電源を立ち上げた際には、メインシステムROM109に格納されているコンピュータプログラムやデータを用いて処理を実行することでブートを行い、メインシステムDRAM105に展開されたOSやアプリケーションプログラムを実行する。また、CPU201は、メインシステム101が有するものとして後述するそれぞれのIF(インターフェース)部の動作制御をも行う。
The
HDDIF部202は、メインシステムHDD108にアクセスするためのI/Fモジュールである。
The
操作部IF部203は、操作部110にアクセスするためのI/Fモジュールであり、例えば、メインシステムHDD108に格納されているGUI(グラフィカルユーザインターフェース)等の表示画面のデータに基づく表示画面を操作部IF部203を介して操作部110に送出したり、ユーザが操作部110に対して行った操作内容を操作部IF部203を介してCPU201に通知したりすることができる。
The operation unit IF
電源制御IF部207は、電源制御部103と接続するためのIFモジュールであり、メインシステム101の電源状態を電源制御部103へ通知したり、電源制御部103からの上記割り込み信号を受信したりすることができる。
The power control IF
ネットワークIF部208は、例えばLANカード等で実現され、メインシステム101をLAN等のネットワークに接続するためのものであり、該ネットワーク上の外部機器との間でデバイス情報や画像データ等の送受信を行うことができる。
The network IF
メインROMIF部204は、メインシステムROM109にアクセスするためのI/Fモジュールである。
The
メインDRAMIF部205は、メインシステムDRAM105にアクセスするためのI/Fモジュールである。メインDRAMIF部205は、メインシステムDRAM105の設定や制御を行うためのレジスタを備えており、該レジスタの設定はCPU201が行う。例えば、メインシステムDRAM105をセルフリフレッシュ状態に設定する場合は、CPU201がメインDRAMIF部205のレジスタを設定することで、メインシステムDRAM105にセルフリフレッシュコマンドを発行することができる。
The main DRAM IF
サブシステムIF部206は、メインシステム101にサブシステム102を接続するためのI/Fモジュールである。具体的には、サブシステムIF部206は、PCIExpressで構成され、ルートコンプレックスがメインシステム101で、エンドポイントがサブシステム102となる。
The subsystem IF
次に、サブシステム102の構成例について、図3のブロック図を用いて説明する。なお、図3に示した構成は、サブシステム102に適用可能な構成の一例に過ぎず、以下に説明するサブシステム102の動作と同等以上の動作を実現可能な構成であれば、如何なる構成を採用しても構わない。
Next, a configuration example of the
メインCPU301は、画像処理部307の設定や画像データ制御を行う。メインCPU301は、サブシステムDRAM106に展開されたOSやアプリケーションプログラムを実行する。
The
サブCPU302は、画像処理を行う機能の制御を行う。サブCPU302は、サブシステムROM104に格納されているコンピュータプログラムやデータを用いて処理を実行する。
The
レジスタ部303は、サブシステム102の設定や制御に関わるレジスタである。レジスタ部303は、メインCPU301からの読み書きが可能であり、特に、メインCPU301のリセットを制御することができる。
The
画像処理部307は、各種画像処理を行う回路であり、メインCPU301によって設定、制御され各種画像処理を行う。例えば、プリンタ部111によって印刷される画像に対する補正処理を行ったり、スキャナ部112が読み取った画像に対して各種の画像処理(補正、加工、編集等)を施したりする。
The
プリンタIF部309は、サブシステム102にプリンタ部111を接続するためのもので、プリンタ部111との間のデータ通信はこのプリンタIF部309を介して行われる。
The printer IF
スキャナIF部308は、サブシステム102にスキャナ部112を接続するためのもので、スキャナ部112との間のデータ通信はこのスキャナIF部308を介して行われる。
The scanner IF
サブROMIF部304は、サブシステムROM104にアクセスするためのI/Fモジュールである。
The
サブDRAMIF部305は、サブシステムDRAM106にアクセスするためのI/Fモジュールである。サブDRAMIF部305は、サブシステムDRAM106の設定や制御を行うためのレジスタを備えており、メインCPU301、サブCPU302、のいずれもレジスタ設定することが可能である。
The sub DRAM IF
メインシステムIF部306は、サブシステム102にメインシステム101を接続するためのI/Fモジュールである。具体的には、メインシステムIF部306は、PCIExpressで構成され、ルートコンプレックスがメインシステム101で、エンドポイントがサブシステム102となる。
The main system IF
次に、処理システムの電源をオンにした場合に、メインシステム101、サブシステム102、電源制御部103、のそれぞれが行う処理について、図4のフローチャートを用いて説明する。本フローチャートのステップS401、S404、S405における処理は電源制御部103によって実行若しくは制御される。また、ステップS402、S406〜S409、S418における処理は、メインシステム101のCPU201が、メインシステムROM109に保存されているコンピュータプログラムやデータ、メインシステムDRAM105に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。また、ステップSS410〜S412,S416〜S418の処理は、サブシステム102(メインCPU301、サブCPU302)が、サブシステムROM104に保存されているコンピュータプログラムやデータ、サブシステムDRAM106に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。
Next, processing performed by the
処理システムの電源をオンにすると、電源部107から電源が供給されるため、ステップS401では、電源制御部103の電源が投入され、ステップS402では、メインシステム101の電源が投入される。
When the processing system is turned on, power is supplied from the
ステップS404では、電源制御部103は、サブシステム102に電源を供給するよう、電源部107に指示する。これにより電源部107から電源が供給されるため、ステップS410では、サブシステム102の電源が投入されて、サブCPU302のリセットが解除される。
In step S <b> 404, the power
また、ステップS405では、電源制御部103は、今回の電源のオンが、「電源がオフ状態にある処理システムの電源をオンにした」(電源投入)ものであるのか、それともスリープモードからの復帰(Sleep復帰)によるものであるのか、を示す信号である復帰フラグ信号を、サブシステム102に対して送信する。ここでは、今回の電源のオンが、「電源がオフ状態にある処理システムの電源をオンにした」(電源投入)ものである。
In step S405, the power
ステップS406では、メインシステム101のCPU201は、メインシステム101の初期化を実行する。具体的には、CPU201は、メインシステムROM109に格納されているコンピュータプログラムやデータをメインシステムDRAM105に読み出し、該コンピュータプログラムやデータを用いて処理を実行することで、IO設定、割り込みの初期化、メインシステムHDD108に格納してあるOSイメージの展開等を行う。
In step S406, the
ステップS407では、メインシステム101のCPU201は、サブシステムDRAM106にアクセスするための初期設定を行う。より具体的には、CPU201は、サブシステムIF部206を介してサブシステム102にアクセスし、サブシステム102のサブCPU302に、サブDRAMIF部305のレジスタ設定を行うよう、指示する。これによりサブシステム102のサブCPU302は、サブDRAMIF部305のレジスタ設定を行う。
In step S <b> 407, the
ステップS408では、メインシステム101のCPU201は、メインシステムHDD108からサブシステム102用(メインCPU301用)のブートイメージを読み出し、該読み出したブートイメージをサブシステムIF部206を介してサブシステム102に対して送出し、サブシステム102に該読み出したブートイメージをサブシステムDRAM106に展開させるよう制御する。
In step S <b> 408, the
ステップS409では、メインシステム101のCPU201は、サブシステムIF部206を介してサブシステム102のメインCPU301に、該メインCPU301のリセットを解除させる。詳細には、CPU201は、サブシステムIF部206を介してサブシステム102にアクセスし、サブシステム102のメインCPU301に、レジスタ部303のレジスタ設定を行わせる。
In step S409, the
ステップS411では、サブシステム102のサブCPU302は、サブシステムROM104に格納されているコンピュータプログラム(ブートプログラム)やデータを用いて処理を実行することで、ブートを行う。
In step S <b> 411, the
ステップS412では、サブシステム102のサブCPU302は、ステップS405においてメインシステム101から送信された復帰フラグ信号を受信すると、該復帰フラグ信号が格納されるレジスタを読み出す。復帰フラグ信号はサブCPU302のGPIO(GeneralPerposeIO)に入力される。
In step S412, when the
ステップS416では、サブCPU302のブート制御処理は終了し、ステップS409におけるメインシステム101によるメインCPU301のリセット解除設定制御により、メインCPU301のリセットが解除される。
In step S416, the boot control process of the
ステップS417では、メインCPU301は、リセットベクタに設定されているサブシステムDRAM106から、展開されているブートイメージを用いて処理を実行することで、ブートを開始する。
In step S417, the
ステップS418では、メインシステム101とサブシステム102との間で初期化シーケンスを実行する。具体的には、メインシステム101のCPU201とメインCPU301との間でCPU間通信を行い、メインCPU301が画像処理部307へのレジスタ設定を行う。
In step S418, an initialization sequence is executed between the
以上説明した電源投入時の制御処理によって、電源投入時にメインシステム101によって、サブシステムDRAM106にメインCPU301のブートイメージを展開し、メインCPU301のリセットを解除し、メインCPU301のブートタイミングを制御することができる。
With the above-described control process when the power is turned on, the
次に、図4のフローチャートに従った処理の後、即ち、電源がオンになった後で、処理システムをスリープモードに移行させる場合に、メインシステム101、サブシステム102、電源制御部103、のそれぞれが行う処理について、図5のフローチャートを用いて説明する。本フローチャートのステップS502、S509、S511における処理は電源制御部103によって実行若しくは制御される。また、ステップS501、S504、S505、S507、S508における処理は、メインシステム101のCPU201が、メインシステムROM109に保存されているコンピュータプログラムやデータ、メインシステムDRAM105に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。また、ステップS503、S512〜S514における処理は、サブシステム102(メインCPU301、サブCPU302)が、サブシステムROM104に保存されているコンピュータプログラムやデータ、サブシステムDRAM106に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。図5のフローチャートの場合、サブシステム102は、メインシステム101及び電源制御部103からの制御を受けるのみである。
Next, after the processing according to the flowchart of FIG. 4, that is, after the power is turned on, when the processing system is shifted to the sleep mode, the
ステップS501では、メインシステム101のCPU201は、スリープモードに移行するための条件が満たされたか否かを判断する。例えば、ある一定時間ユーザからの操作が無い場合やデータ処理リクエストが無い場合に、この条件が満たされたと判断する。この条件が満たされた場合には、処理はステップS504に進み、満たされていない場合には、ステップS501で待機する。
In step S501, the
ステップS502では、電源制御部103は、メインシステム101のCPU201からのスリープモードへの移行指示を待機する。
In step S502, the power
ステップS503では、サブシステム102は、メインシステム101及び電源制御部103からの指示を待機する。
In step S503, the
ステップS504では、メインシステム101のCPU201は、サブシステムIF部206を介してサブシステム102のメインCPU301に対し、サブシステム102のレジスタ部303へアクセスしてメインCPU301にリセットをかけさせる。この処理は、サブシステムDRAM106内のメインCPU301用のブートイメージをメインシステムDRAM105に書き込んでいる間に、メインCPU301がサブシステムDRAM106にアクセスしないようにするためである。
In step S504, the
ステップS512では、ステップS504における処理により、メインCPU301はリセット状態となる。
In step S512, the
ステップS513では、サブシステム102のサブCPU302は、メインシステム101のCPU201から、「サブシステムDRAM106に格納されているメインCPU301用のブートイメージをメインシステムDRAM105に書き込む」旨の指示を受けると、サブシステムDRAM106に格納されているメインCPU301用のブートイメージを、メインシステムIF部306を介してメインシステム101に転送し、該メインシステム101に対し、該ブートイメージをメインシステムDRAM105に書き込むよう、指示する。具体的には、メインCPU301用のブートイメージやレジスタ部303の各種レジスタ設定値を書き込むよう、メインシステム101に指示する。この指示は、「サブシステムDRAM106に格納されているメインCPU301用のブートイメージをメインシステムDRAM105に書き込む」ことを直接的に示す指示であっても良いし、スリープモードに移行する旨を示すことで間接的に「サブシステムDRAM106に格納されているメインCPU301用のブートイメージをメインシステムDRAM105に書き込む」ことを指示するものであっても良い。
In step S513, when the
ステップS505では、メインシステム101のCPU201は、ステップS513においてサブシステム102から受けた指示に応じて、サブシステム102から受けたメインCPU301用のブートイメージをメインシステムDRAM105に書き込む。 ステップS507では、メインシステム101のCPU201は、メインシステムDRAM105をセルフリフレッシュ状態に移行させる。これにより、メインシステム101はスリープ状態となる。
In step S505, the
ステップS508では、メインシステム101のCPU201は、メインシステム101がスリープ状態になったことを電源制御部103に通知する。
In step S508, the
ステップS509では、電源制御部103は、メインシステム101のCPU201から、該メインシステム101がスリープ状態になった旨を受信したか否かを判断する。この判断の結果、受信した場合には、処理はステップS511に進み、受信していない場合には、ステップS509で待機する。
In step S509, the power
ステップS511では、電源制御部103は、電源部107を制御して、スリープモード時の電源状態に設定する。
In step S511, the
以上説明した、図5のフローチャートに従った処理を行うことで、処理システムをスリープモードに移行させることができると共に、処理システムの電源をオンにした時にサブシステムDRAM106に展開したメインCPU301用のブートイメージを、該サブシステムDRAM106からメインシステムDRAM105に移動させることができる。
By performing the processing according to the flowchart of FIG. 5 described above, the processing system can be shifted to the sleep mode, and the boot for the
スリープモードに移行した状態における処理システムの各機能部における電源状態を図6に示す。スリープモードに移行した状態では、メインシステムROM109、メインシステムHDD108、サブシステム102、サブシステムROM104、サブシステムDRAM106、プリンタ部111、スキャナ部112の電源がオフ(OFF)となり、それ以外はオン(ON)となる。また、メインシステムDRAM105はセルフリフレッシュ状態である。
FIG. 6 shows the power supply state in each functional unit of the processing system in the state of shifting to the sleep mode. In the state shifted to the sleep mode, the
次に、スリープモードに移行した処理システムを、通常動作モードに移行させる(スリープ状態から復帰させる)場合に、メインシステム101、サブシステム102、電源制御部103、のそれぞれが行う処理について、図7のフローチャートを用いて説明する。本フローチャートのステップS701、S704、S706における処理は、電源制御部103によって実行若しくは制御される。また、ステップS702、S705、S707、S708、S717における処理は、メインシステム101のCPU201が、メインシステムROM109に保存されているコンピュータプログラムやデータ、メインシステムDRAM105に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。また、ステップS709〜S711、S713,S716,S717における処理は、サブシステム102(メインCPU301、サブCPU302)が、サブシステムROM104に保存されているコンピュータプログラムやデータ、サブシステムDRAM106に格納されているコンピュータプログラムやデータを用いて処理を実行することで実行若しくは制御される。
Next, the processing performed by each of the
ステップS701では、電源制御部103は、スリープ状態からの復帰要因が発生したか否かを判断する。例えば、ユーザが操作部110を操作して何らかの操作入力を行うと、操作部110はスリープ復帰信号を電源制御部103に対して出力するので、電源制御部103は、該スリープ復帰信号を受信すると、スリープ状態からの復帰要因が発生したと判断する。スリープ状態からの復帰要因が発生したと判断した場合には、処理はステップS704に進み、発生していないと判断した場合には、ステップS701で待機する。
In step S701, the power
ステップS704では、電源制御部103は、電源部107に対してメインシステム101への電源投入を指示すると共に、メインシステム101に対してスリープ復帰割り込み信号を出力する。これによりメインシステム101には電源が投入されることになる。
In step S <b> 704, the power
ステップS702では、メインシステム101のCPU201は、電源制御部103からのスリープ復帰割り込み信号を受信する。
In step S <b> 702, the
ステップS705では、メインシステム101のCPU201は、電源制御部103に対して、サブシステム102への電源投入を指示する。
In step S <b> 705, the
ステップS706では、電源制御部103は、メインシステム101のCPU201からサブシステム102への電源投入の指示を受けると、サブシステム102などに電源投入を行うために、電源部107に電源投入を指示する。これによりサブシステム102には、電源が投入されることになる。
In step S706, when the
ステップS707では、メインシステム101のCPU201は、スリープモードから通常動作モードに移行させるための処理として、まず、メインシステムDRAM105のセルフリフレッシュを解除する。
In step S707, the
ステップS708では、メインシステム101のCPU201は、メインシステム101全体の初期化処理を行う。
In step S708, the
ステップS709〜S711、S717の各ステップにおける処理はそれぞれ、上記のステップS410〜S412、S418と同様であるため、これらのステップに係る説明は省略する。 The processes in steps S709 to S711 and S717 are the same as those in steps S410 to S412 and S418, respectively, and thus description of these steps is omitted.
ステップS713では、サブシステム102のサブCPU302は、上記のステップS513においてメインシステムDRAM105に書き込んだメインCPU301用のブートイメージの転送要求を、メインシステムIF部306を介してメインシステム101に送信する。メインシステム101は、この転送要求に応じて、上記のステップS513においてメインシステムDRAM105に書き込んだメインCPU301用のブートイメージを読み出し、該読み出したブートイメージをサブシステムIF部206を介してサブシステム102に対して送出する。サブシステム102のサブCPU302は、メインシステム101から送出されたブートイメージを、サブシステムDRAM106に書き込む。
In step S713, the
ステップS716では、メインCPU301は、ステップS713でサブシステムDRAM106に書き込んだブートイメージを用いて処理を実行することで、ブートを開始する。
In step S716, the
このように、本実施形態によれば、処理システムがスリープ状態から復帰する場合に、メインシステム101の起動を待つことなく、サブシステム102を起動させることが可能となる。
Thus, according to this embodiment, when the processing system returns from the sleep state, the
図8(a)に、処理システムの電源をオンにした時の簡易タイミングチャートを、図8(b)に、スリープ状態から復帰させる時の簡易タイミングチャートを示す。図8(a)では、メインシステム101が起動し、メインCPU301のリセット解除によってサブシステム102が起動を始める。図8(b)では、メインシステム101がスリープ状態からの復帰処理を開始するとほぼ同時に、サブシステム102も起動を始めることができる。また、図8(c)に、本実施形態とは異なる従来の起動タイミングチャートを示す。従来の起動シーケンスでは、メインシステム101がスリープ状態からの復帰処理を行い、サブシステム102の初期化を実行してからメインCPU301のリセットを解除する。メインCPU301のリセットを解除した時点からサブシステム102はブートを開始するので、システム全体の起動時間が遅くなる。図8(b)では、図8(c)のようにメインシステム101の起動を待つ必要がないので、スリープ状態からの復帰時間を短縮することが可能となる。さらに、サブCPU302の処理がサブシステムROM104を使用する前提であるならば、システムとしてのコスト増加なしで、スリープ状態からの復帰時間を短縮することが可能となる。
FIG. 8A shows a simplified timing chart when the processing system is turned on, and FIG. 8B shows a simplified timing chart when returning from the sleep state. In FIG. 8A, the
[第2の実施形態]
第1の実施形態では、CPU201による制御に応じて、サブCPU302がサブシステムDRAM106内のメインCPU301用ブートイメージをメインシステムDRAM105に書き込みするよう、CPU201に指示する構成であった。これに対し、本実施形態では、サブシステムDRAM106内のメインCPU301用ブートイメージをメインシステムDRAM105に書き込むための専用DMACがサブシステム102に備わっている。以下では第1の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとする。
[Second Embodiment]
In the first embodiment, the
本実施形態に係るサブシステム102の構成例について、図9のブロック図を用いて説明する。図9において図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。図9に示した構成は、図2に示した構成にDMAC900を追加したものとなる。
A configuration example of the
次に、図4のフローチャートに従った処理の後、即ち、電源がオンになった後で、処理システムをスリープモードに移行させる場合に、メインシステム101、サブシステム102、電源制御部103、のそれぞれが行う処理について、図10のフローチャートを用いて説明する。図10において、図5に示した処理ステップと同じ処理ステップには同じ参照番号を付しており、該処理ステップに係る説明は省略する。
Next, after the processing according to the flowchart of FIG. 4, that is, after the power is turned on, when the processing system is shifted to the sleep mode, the
ステップS513では、サブシステム102のサブCPU302が、サブシステムDRAM106に格納されているメインCPU301用のブートイメージを、メインシステムIF部306を介して、メインシステム101に転送していた。これに対し、ステップS1113では、DMAC900が、サブシステムDRAM106に格納されているメインCPU301用のブートイメージを、メインシステムIF部306を介して、メインシステム101に転送する。
In
次に、スリープモードに移行した処理システムを、通常動作モードに移行させる(スリープ状態から復帰させる)場合に、メインシステム101、サブシステム102、電源制御部103、のそれぞれが行う処理について、図11のフローチャートを用いて説明する。図11において、図7に示した処理ステップと同じ処理ステップには同じ参照番号を付しており、該処理ステップに係る説明は省略する。
Next, the processing performed by each of the
ステップS713では、サブシステム102のサブCPU302が、上記のステップS513においてメインシステムDRAM105に書き込んだメインCPU301用のブートイメージを、メインシステム101から受け取ってサブシステムDRAM106に書き込んでいた。これに対し、ステップS1214では、DMAC900が、上記のステップS1113においてメインシステムDRAM105に書き込んだメインCPU301用のブートイメージを、メインシステム101から受け取ってサブシステムDRAM106に書き込む。
In step S713, the
このように、本実施形態によれば、DMAC900でメインCPU301用のブートイメージを書き込み、展開することで、Sleep起動時間、Sleep復帰時間を短縮することが可能となる。
As described above, according to the present embodiment, the boot activation time and the sleep recovery time can be shortened by writing and developing the boot image for the
また、以上説明した各実施形態によれば、主従関係にあるメインシステムとサブシステムとを有する処理システムにおいて、スリープ状態から復帰する場合に、メインシステムの起動を待つことなくサブシステムの起動を可能にする。これにより、スリープ状態からの復帰時間を短くすることが可能となる。 Further, according to each of the embodiments described above, in a processing system having a main system and a subsystem that are in a master-slave relationship, the subsystem can be activated without waiting for the activation of the main system when returning from the sleep state. To. As a result, the return time from the sleep state can be shortened.
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
101:メインシステム 102:サブシステム 105:メインシステムDRAM 106:サブシステムDRAM 101: Main system 102: Subsystem 105: Main system DRAM 106: Subsystem DRAM
Claims (4)
前記サブシステムは、スリープモードに移行する条件が満たされると、前記サブシステムが管理するサブシステムメモリに格納されているサブシステム用のブートイメージを、前記メインシステムが管理するメインシステムメモリに書き込むように制御し、
前記メインシステムは、前記スリープモードから通常動作のモードに移行する場合には、前記メインシステムメモリに書き込んだサブシステム用のブートイメージを、前記サブシステムメモリに書き込むよう制御し、
前記サブシステムは、該サブシステムメモリに書き込んだブートイメージを用いてブートを行うことを特徴とする処理システム。 A processing system having a subsystem and a main system that controls the subsystem,
When the condition for entering the sleep mode is satisfied, the subsystem writes the boot image for the subsystem stored in the subsystem memory managed by the subsystem into the main system memory managed by the main system. Control to
When the main system shifts from the sleep mode to the normal operation mode, the boot image for the subsystem written in the main system memory is controlled to be written in the subsystem memory,
The processing system, wherein the subsystem performs booting using a boot image written in the subsystem memory.
前記サブシステムは、スリープモードに移行する条件が満たされると、前記サブシステムが管理するサブシステムメモリに格納されているサブシステム用のブートイメージを、前記メインシステムが管理するメインシステムメモリに書き込むように制御し、
前記メインシステムは、前記スリープモードから通常動作のモードに移行する場合には、前記メインシステムメモリに書き込んだサブシステム用のブートイメージを、前記サブシステムメモリに書き込むよう制御し、
前記サブシステムは、該サブシステムメモリに書き込んだブートイメージを用いてブートを行う
ことを特徴とする処理システムの制御方法。 A processing system control method comprising: a subsystem; and a main system that controls the subsystem.
When the condition for entering the sleep mode is satisfied, the subsystem writes the boot image for the subsystem stored in the subsystem memory managed by the subsystem into the main system memory managed by the main system. Control to
When the main system shifts from the sleep mode to the normal operation mode, the boot image for the subsystem written in the main system memory is controlled to be written in the subsystem memory,
A processing system control method, wherein the subsystem performs booting using a boot image written in the subsystem memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014252296A JP2016115075A (en) | 2014-12-12 | 2014-12-12 | Processing system and method for controlling processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014252296A JP2016115075A (en) | 2014-12-12 | 2014-12-12 | Processing system and method for controlling processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016115075A true JP2016115075A (en) | 2016-06-23 |
Family
ID=56140114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014252296A Pending JP2016115075A (en) | 2014-12-12 | 2014-12-12 | Processing system and method for controlling processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016115075A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019055511A (en) * | 2017-09-20 | 2019-04-11 | ブラザー工業株式会社 | Electronic apparatus |
-
2014
- 2014-12-12 JP JP2014252296A patent/JP2016115075A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019055511A (en) * | 2017-09-20 | 2019-04-11 | ブラザー工業株式会社 | Electronic apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5460167B2 (en) | Information processing apparatus, control method for information processing apparatus, and control program | |
JP5780769B2 (en) | Data processing apparatus, control method and program thereof, and storage medium | |
JP6570227B2 (en) | Information processing apparatus including main system and subsystem | |
JP2014215957A (en) | Information processing system, information processing device, start control method, and program | |
JP6164938B2 (en) | Image forming apparatus, control method therefor, and program | |
JP6141240B2 (en) | Printing apparatus, storage control apparatus connected to printing apparatus, printing apparatus control method and program | |
JP6207295B2 (en) | Printing apparatus and control method thereof | |
US9967417B2 (en) | Managing apparatus power states | |
JP6597417B2 (en) | Electronic device, recovery method and program | |
US10033895B2 (en) | Printing apparatus having plurality of power states and control method therefor | |
JP5970867B2 (en) | Information processing apparatus, image forming apparatus, and program | |
JP2016115075A (en) | Processing system and method for controlling processing system | |
JP2018078485A (en) | Information processing apparatus and starting method of information processing apparatus | |
JP6362326B2 (en) | Printing apparatus and printing apparatus control method | |
JP2015215684A (en) | Information processing apparatus and information processing program | |
JP2011059426A (en) | Image forming apparatus | |
JP6703049B2 (en) | Information processing apparatus and method of controlling information processing apparatus | |
JP5051881B2 (en) | COMMUNICATION CONTROL DEVICE, IMAGE FORMING DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM | |
JP6842641B2 (en) | Image forming device | |
JP2017059051A (en) | Information processing device and control method thereof, and program | |
JP2010068355A (en) | Electronic apparatus and method of controlling the same | |
JP6752651B2 (en) | Information processing systems, methods and programs in information processing systems | |
JP2016110513A (en) | Information processor, control method for information processor, program, and recording medium | |
JP6532240B2 (en) | Information processing apparatus and control method thereof | |
JP2013233809A (en) | Information processing device and method and program for controlling the same |