JP5705185B2 - COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM - Google Patents
COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM Download PDFInfo
- Publication number
- JP5705185B2 JP5705185B2 JP2012203535A JP2012203535A JP5705185B2 JP 5705185 B2 JP5705185 B2 JP 5705185B2 JP 2012203535 A JP2012203535 A JP 2012203535A JP 2012203535 A JP2012203535 A JP 2012203535A JP 5705185 B2 JP5705185 B2 JP 5705185B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- power saving
- communication device
- saving state
- program
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Power Sources (AREA)
Description
本発明は、通信装置及びその制御方法、並びに、コンピュータプログラムに関する。 The present invention relates to a communication apparatus, a control method therefor, and a computer program.
近年、様々な情報処理機器において低消費電力化が求められている。そこで機器の消費電力を低減させるために、通常のアプリケーション処理を行う通常モードとは別に、通常モードよりも消費電力を低減させた省電力モードを有する機器が増加している。 In recent years, low power consumption is required in various information processing devices. Therefore, in order to reduce the power consumption of devices, apart from the normal mode in which normal application processing is performed, there are an increasing number of devices having a power saving mode in which the power consumption is reduced compared to the normal mode.
省電力モード時の動作には様々なものがあるが、一般に、機器を構成する一部の回路、装置の動作電圧を低下、あるいは電源の供給を停止することにより消費電力の低減を図る。これにより、機器の一部機能を利用していない場合や、待機時などにおいて、機器を省電力モードにすることによって効果的に消費電力を低減することができる。 There are various types of operations in the power saving mode. Generally, power consumption is reduced by lowering the operating voltage of some circuits and devices constituting the device or stopping the supply of power. Thereby, when a part of the function of the device is not used or during standby, the power consumption can be effectively reduced by putting the device in the power saving mode.
省電力モード時における消費電力を低減する技術として、省電力モード時において動作電圧の低いSRAMに配置したプログラムを実行し、その他のメモリを省電力の状態にするものが提案されている(特許文献1、特許文献2を参照)。 As a technique for reducing power consumption in the power saving mode, a technique has been proposed in which a program arranged in an SRAM having a low operating voltage is executed in the power saving mode and other memories are put into a power saving state (Patent Literature). 1, see Patent Document 2).
これらの提案技術では、通常モード時においてはSDRAMに配置されたプログラムおよびデータを用いて実行する。そして省電力モード時においては、SDRAMにはアクセスせずに、SDRAMよりも動作電圧の低いSRAMに配置されたプログラムおよびデータのみを使用して省電力モード用のプログラムを実行する。これにより、SDRAMをセルフ・リフレッシュのような省電力状態にできるため、省電力モード時における消費電力を低減することができる。 In these proposed techniques, the program and data arranged in the SDRAM are executed in the normal mode. In the power saving mode, the program for the power saving mode is executed using only the program and data arranged in the SRAM having an operating voltage lower than that of the SDRAM without accessing the SDRAM. As a result, the SDRAM can be put into a power saving state such as self-refreshing, so that power consumption in the power saving mode can be reduced.
一方で、様々な組込機器やPCにおいて、複数のプロセッサ、あるいは複数のコアを搭載したマルチプロセッサ/マルチコアシステムが近年増加してきており、今後この傾向は加速していくものとみられる。このようなマルチプロセッサ/マルチコアシステムにおいても、低消費電力化が求められている。
共有メモリを持つマルチプロセッサ/マルチコアシステムでは、複数のプロセッサ/コアから共有メモリに対してアクセスが行われる。そのため、省電力モード時に共有メモリを省電力状態にする場合、省電力モード移行時に全てのプロセッサ/コアからの共有メモリへのアクセスを停止した後で省電力状態にする必要がある。共有メモリへのアクセスを停止していないプロセッサ/コアがあった場合、共有メモリに対しての不正なアクセスやデータの不整合が発生し、システムが正常に動作しなくなる虞がある。 In a multiprocessor / multicore system having a shared memory, the shared memory is accessed from a plurality of processors / cores. Therefore, when the shared memory is set to the power saving state in the power saving mode, it is necessary to stop the access to the shared memory from all the processors / cores at the time of shifting to the power saving mode and to set the power saving state. If there is a processor / core that has not stopped access to the shared memory, unauthorized access to the shared memory or data inconsistency may occur, and the system may not operate normally.
さらに、省電力モードから通常モードに復帰する際においても、共有メモリを通常状態にした後に、各プロセッサ/コアは共有メモリへのアクセスを開始しなくてはならない。 Further, when returning from the power saving mode to the normal mode, each processor / core must start access to the shared memory after setting the shared memory to the normal state.
そこで、マルチプロセッサ/マルチコアシステムにおいて、省電力モードに移行する際、あるいは通常モードに復帰する際に、共有メモリへのアクセスを安全に停止/開始する省電力モード制御が求められる。 Therefore, in a multiprocessor / multicore system, when shifting to the power saving mode or returning to the normal mode, power saving mode control for safely stopping / starting access to the shared memory is required.
そこで上記問題を解決するための本発明は通信装置であって、
第1のプロセッサを有し、所定のアプリケーション機能を実現する第1のシステムと、
第2のプロセッサを有し、前記通信装置が省電力状態であっても外部装置と通信する第2のシステムと、
前記第1のシステムが前記第2のシステムを介すことなくアクセスし、かつ、前記第2のシステムが前記第1のシステムを介すことなくアクセスする第1のメモリと、
前記第2のシステムが前記第1のシステムを介すことなくアクセスする第2のメモリと
を有し、
前記通信装置が前記第1のメモリの停止を伴う省電力状態に移行する場合、前記第2のシステムが、前記第1のシステムからの指示に従って前記第1のメモリから前記第2のメモリにアクセス先を切替えると、前記第1のシステムと前記第2のシステムとのいずれもが、前記第1のメモリへのアクセスを停止し、
前記第2のシステムは、前記第1のメモリへのアクセスを停止すると、前記第2のシステムが前記第1のメモリへのアクセスを停止したことを通知する信号を前記第1のシステムに対して送信し、
前記通信装置は、前記信号が送信されると前記省電力状態に移行する
ことを特徴とする。
Therefore, the present invention for solving the above problem is a communication device,
A first system having a first processor and realizing a predetermined application function;
A second system having a second processor and communicating with an external device even when the communication device is in a power saving state;
A first memory that the first system accesses without going through the second system , and the second system accesses without going through the first system ;
A second memory that the second system accesses without going through the first system ;
When the communication device shifts to a power saving state that involves stopping the first memory , the second system accesses the second memory from the first memory in accordance with an instruction from the first system. When the destination is switched, both the first system and the second system stop accessing the first memory ,
When the second system stops access to the first memory, a signal is sent to the first system notifying that the second system has stopped accessing the first memory. Send
The communication device shifts to the power saving state when the signal is transmitted .
本発明によれば、マルチプロセッサ/マルチコアシステムにおいて、省電力モードに移行する際、あるいは通常モードに復帰する際に、共有メモリへのアクセスを安全に停止/開始する省電力モード制御を提供することができる。 According to the present invention, it is possible to provide a power saving mode control for safely stopping / starting access to a shared memory when shifting to a power saving mode or returning to a normal mode in a multiprocessor / multicore system. Can do.
<実施形態1>
本発明の実施形態1における情報処理システムの構成図を図1に示す。図1において、情報処理システム101はメインシステム102、サブシステム103、SDRAM104、CPU間通信レジスタ105、ROM106、SRAM107、SRAM108から構成される。
<Embodiment 1>
FIG. 1 shows a configuration diagram of an information processing system in Embodiment 1 of the present invention. In FIG. 1, an
メインシステム102は、メインCPU109とアプリケーション機能部113を有する。アプリケーション機能部113は、アプリケーション機能を実現するために、メインCPU109によって制御されるハードウェア装置である。
The
例えば、情報処理システム101が印刷装置であれば、アプリケーション機能として印刷が実現され、印刷エンジンなどがアプリケーション機能部113に相当する。メインCPU109がSDRAM104上に配置された通常モード用プログラムを実行し、アプリケーション機能部113を制御することで、メインシステム102は通常モード時においてアプリケーション機能を実現する。
For example, if the
サブシステム103は、サブCPU110と通信部111とを含む。サブCPU110がSDRAM104に配置された通常モード用プログラムを実行し、通信部111を制御することで、ネットワーク112上の他の装置との通信を行うことができる。
The
SDRAM104は、メインシステム102とサブシステム103からアクセスすることができる第1の共有メモリである。SDRAM104は、メインシステム102とサブシステム103からアクセス可能な通常状態と、アクセスすることができない代わりに消費電力を低下させた省電力状態とを有する。情報処理システム101が第1のモードである通常モード時には、SDRAM104には通常の電力供給が行われ通常状態をとる。情報処理システム101が第2のモードである省電力モード時には、SDRAM104は省電力状態をとる。メインシステム102は、SDRAM104を通常動作状態から省電力動作状態への状態遷移と、省電力動作状態から通常動作状態への状態遷移との制御を行う。
The SDRAM 104 is a first shared memory that can be accessed from the
SDRAM104の省電力状態はセルフリフレッシュモードであっても、電源が供給されない状態であってもよい。以降では、セルフリフレッシュモードとして説明する。またSDRAM104には、メインシステム102とサブシステム103の通常モード用のプログラムおよびデータが配置される。
The power saving state of the SDRAM 104 may be a self-refresh mode or a state where no power is supplied. Hereinafter, the self-refresh mode will be described. In the
CPU間通信レジスタ105は、メインCPU109とサブCPU110との間のCPU間通信を中継する。一方のCPUがCPU間通信レジスタ105に所定の命令を書き込むと、もう一方のCPUに割り込みが発生し、もう一方のCPUは所定の命令を読み込むことができる。CPU間通信レジスタ105を介して、メインシステム102とサブシステム103は通信を行う。
The inter-CPU communication register 105 relays inter-CPU communication between the
ROM106はメインシステム102からアクセス可能なメモリである。ROM106には、起動時にSDRAM104、SRAM107、SRAM108に展開され実行されるメインシステム102とサブシステム103のプログラムおよびデータが格納されている。
The
SRAM107はメインシステム102からアクセス可能なメモリである。SRAM107には、メインシステム102の省電力モード用のプログラムおよびデータが配置される。SRAM108はメインシステム102とサブシステム103からアクセス可能な第2の共有メモリである。SRAM108には、サブシステム103の割り込みベクタと割り込みハンドラ、さらに省電力モード用プログラムおよびデータが配置される。
The SRAM 107 is a memory accessible from the
まず、情報処理システム101の起動時の処理を説明する。メインシステム102は最初にROM106上に配置されたプログラムを実行する。メインCPU109は実行を開始すると、まず、ROM106に配置されたメインシステム102とサブシステム103の通常モード用プログラムおよびデータをSDRAM104上に展開する。続いてメインシステム102の省電力モード用のプログラムをSRAM107上に展開し、サブシステム103の省電力モード用のプログラムをSRAM108上に展開する。
First, processing at the time of starting the
メインシステム102はその後、SDRAM104上に配置したプログラムの実行を開始して、サブシステムを起動する。サブシステム103が起動されると、サブシステム103はSRAM108に配置されたベクタテーブルのリセットベクタを参照し、SDRAM104に配置された通常モード用プログラムにジャンプする。
After that, the
サブシステム103は通常モード用プログラムの実行を開始すると、CPU間通信レジスタ105を介して、メインシステム102に実行を開始したことを通知する。これらの処理を終えるとメイン情報処理システム101とサブシステム102は通常モード用のプログラムを開始し、情報処理システム101は通常モードの処理を行う。
When the sub-system 103 starts executing the normal mode program, the
情報処理システム101が通常モードであるとき、メインシステム102とサブシステム103はSDRAM104に配置された通常モード用プログラムを実行する。メインシステム102はアプリケーション機能を実現する。サブシステム103の通常モード用のプログラムは、組み込みOSと複数の通常モード用タスクと通常モード用割り込みプログラムとから構成される。組み込みOSは複数の通常モード用タスクの中から実行するタスクを決定し、組み込みOSが実行するタスクを切り替えることによって、サブシステム103は処理を行う。
When the
サブシステム103で割り込みが発生した際には、SRAM108上の割り込みハンドラからSDRAM104上の通常モード用割り込みプログラムにジャンプすることによって割り込みに対する処理を行う。サブシステム103への割り込みは、CPU間通信レジスタ105や通信部111から発生する。
When an interrupt occurs in the
通信部111のDMA転送先は通常モード時においてSDRAM104上の領域を使用する。また、通常モードにおいてサブCPU110がプログラムを実行する上で使用するスタックポインタはSDRAM104の領域を用いる。
The DMA transfer destination of the communication unit 111 uses an area on the
発明の実施形態1では、メインシステム102からの指示により情報処理システム101が省電力モードに移行する。省電力モードに移行する条件としては、アプリケーション機能の動作が停止してから一定時間経過後や、ユーザが指示した場合などが想定される。情報処理システム101が省電力モードの際は、サブシステム103が通信部111を動作させる。そして、通信部111がネットワーク112からの特定パケットを受信すると、情報処理システム101は省電力モードから通常モードへと復帰する。
In the first embodiment of the invention, the
以降で、本発明の実施形態1における情報処理システム101の通常モードから省電力モードへの移行方法と、情報処理システム101の省電力モードから通常モードへの復帰方法について説明する。
Hereinafter, a method for shifting the
まず、通常モードから省電力モード移行方法について説明する。図2のシーケンス図は、情報処理システム101が通常モードから省電力モードに移行する際のメインシステム102とサブシステム103の処理のやりとりを示す。メインシステム102とサブシステム103間の通信はCPU間通信レジスタ105を用いて行われる。情報処理システム101が通常モードから省電力モードに移行する際、まずメインシステム102がサブシステム103に対して、ステップS201で省電力モード移行要求を送信する。
First, a method for shifting from the normal mode to the power saving mode will be described. The sequence diagram of FIG. 2 shows the exchange of processing between the
サブシステム103は省電力モード移行要求を受信すると、ステップS202でSDRAM104へのアクセスを停止し、SRAM108に配置された省電力モード用プログラムの実行を開始する。サブシステム103は省電力モード用プログラムの実行を開始した後に、ステップS203において、省電力モード移行要求に対する応答として、メインシステム102へ省電力モード移行完了を通知する。
When the
このときのメインシステム102とサブシステム103の処理の詳細を次に述べる。図3はメインシステム102が省電力モードに移行する際のフローチャートである。図3で示される省電力モードに移行するためのプログラムは、ステップS301からステップS303はSDRAM104に配置され、ステップS304からステップS306はSRAM107に配置される。
Details of processing of the
まず、ステップS301でメインシステム102はCPU間通信レジスタ105を介してサブシステム103に省電力モード移行要求を送信する。その後、ステップS302でサブシステム103からの省電力モード移行完了の通知を待つ。メインシステム102はCPU間通信レジスタ105を介してサブシステム103から省電力モード移行完了の通知を受信する(第1の受信)。
First, in step S301, the
受信後、メインシステム102はSDRAM104をセルリフレッシュモードで動作できるように、ステップS303でSDRAM104に配置されたプログラムからSRAM107に配置されたプログラムにジャンプする。メインシステム102とサブシステム103はそれ以降、SDRAM104にアクセスしないため、ステップS304でメモリ制御を行ってSDRAM104をセルフリフレッシュモードにする。メインシステム102はさらに消費電力を低下させるために、ステップS305でアプリケーション機能部を省電力状態にし、さらにステップS306でメインCPU109のクロックをダウンする。以上の省電力モード移行処理を終えると、省電力モード用プログラムの実行を開始し省電力モードとなる。
After reception, the
図4のフローチャートに、サブシステム103が省電力モード移行要求を受信してから省電力モードに移行完了するまでの動作を示す。図4に示されるステップS401からステップS408の処理は、SDRAM104上に配置され、ステップS409からステップS410の処理は、SRAM108に配置されている。これらの処理はSDRAM104に配置されたプログラムとSRAM108に配置されたプログラムからなる切替タスクによって実行される。
The flowchart in FIG. 4 shows operations from when the
サブシステム103はCPU間通信レジスタ105を介してステップS401で省電力モード移行要求を受信する(第2の受信)。続いて、省電力モード時においてSDRAM104にアクセスしないようにするために、ステップS402からステップS407において、SDRAM104へのアクセスを停止する処理を行った後、SRAM108に配置されたプログラムを実行する。
In step S401, the
ステップS402で省電力モードにおいてSDRAM104に配置されたタスクにディスパッチしないようにする。サブシステムは組み込みOSのタスクスケジューリング機能を停止、あるいは切替タスクの優先度を十分に上げることによりSDRAM104に配置されたタスクが実行されないようにする。さらにステップS403で割り込みも禁止する。
In step S402, the task is not dispatched to the task arranged in the
続いてステップS404において、通信部111のDMA転送先をSDRAM104上からSRAM108上に変更する。このとき必要に応じて、通信部111のDMA転送を一時的に停止する。また、通信部111で送信前パケットが残っている場合、通常モードでの処理を再開したときにパケットを送信しても情報が古いため、送信前パケットをキャンセルする。
In step S404, the DMA transfer destination of the communication unit 111 is changed from the
ステップS405でスタックポインタを変更する。まず、通常モードに復帰した際に元のスタックポインタの位置に戻せるようにするために、現在のスタックポインタをSDRAM104上に保存する。それから、スタックポインタをSRAM108上の所定のアドレスに移動する。これにより、サブシステム103のアクセス先のSDRAM104からSRAM108への切替制御を実現できる。
In step S405, the stack pointer is changed. First, the current stack pointer is stored on the
ステップS406でCPU間通信レジスタ105と通信部111に関する割り込みハンドラから省電力モード用プログラムにジャンプするようにし、SDRAM104へのアクセスしないようにする。SDRAM104へのアクセスができなくなる前に、サブCPU110のキャッシュ上のデータをSDRAM104に書き込んでいないと、通常モードへ復帰した場合、データの不整合が発生する可能性がある。そこで、ステップS407でキャッシュのフラッシュを行い、キャッシュがフラッシュされるまで十分に待つ。
In step S406, the interrupt handler for the
ステップS408でSRAM108上に配置された省電力モード用プログラムへジャンプ、またはSRAM108上に配置された関数をコールすることで省電力モード用プログラムの実行を開始する。これにより、SDRAM104へのアクセスは発生しなくなる。
In step S408, execution of the power saving mode program is started by jumping to the power saving mode program arranged on the
ステップS408までの処理を行うと、サブシステム103はステップS409において、CPU間通信レジスタ105を介してメインシステム102に省電力モード移行完了を通知する。最後に、サブシステム103はステップS410でCPU間通信レジスタ105と通信部111の割り込みを許可する。これにより、通信部111で再びパケットを受信できるようになる。また、ステップS404でDMA転送を一時的に停止した場合、ここで通信部111のDMA転送の再開を行う。
When the processing up to step S408 is performed, the
これらの処理を行うことでサブシステム103は省電力モードに移行することができる。以降の省電力モード時の処理においてもサブシステム103は切替タスクにて処理を続ける。
By performing these processes, the
次に本発明の実施形態1における、メインシステム102とサブシステム103の省電力モード時における動作について説明する。メインシステム102は、サブシステム103からの通常モードへ復帰する条件を満たしたことの通知を受信するまで待つ。
Next, operations in the power saving mode of the
一方で、サブシステム103はネットワーク112を介して外部の他の装置からのパケットを通信部111で受信する。そして特定のパケットが受信されるまで受信し続ける。サブシステム103は、特定パケットを受信すると、通常モード復帰処理を開始する。
On the other hand, the
以降では、情報処理システム101が省電力モードから通常モードへ復帰する処理について説明する。
Hereinafter, a process in which the
図5に、情報処理システム101が省電力モードから通常モードへ復帰する際のメインシステム102とサブシステム103のシーケンスを示す。メインシステム102とサブシステム103の通信はCPU間通信レジスタ105を介して行われる。
FIG. 5 shows a sequence of the
省電力モード時において、サブシステム103は通常モードへの復帰するか否かを判定している。サブシステム103は通常モードへの復帰条件として特定パケットを受信すると、ステップS501でメインシステム102に通常モード復帰要求を送信する。
メインシステム102は通常モード移行要求を受信すると、ステップS502においてSDRAM104を通常状態にする。SDRAM104を通常状態にすることにより、SDRAM104へ記憶されたデータへのアクセスが可能となる。
In the power saving mode, the
When the
メインシステム102は、SDRAM104をアクセス可能な状態にすると、ステップS503でサブシステム103にSDRAM104が通常状態になったことの通知を行う。サブシステム103は、SDRAM104が通常状態になったことの通知を受信すると、ステップS504でSRAM108上でのプログラム実行から、SDRAM104に配置された通常モード用のプログラムへと切り替える。
When the
サブシステム103は通常モードへの移行を完了すると、ステップS505でメインシステム102へ通常モード移行完了の通知を行い、情報処理システム101は通常モードへの復帰を完了する。
When the transition to the normal mode is completed, the
このときのメインシステム102とサブシステム103の処理の詳細を次に述べる。図6にメインシステム102が省電力モードから通常モードに復帰する際のフローチャートを示す。図6に示される処理のステップS601からステップS604のプログラムは、SRAM107に配置されており、ステップS605からステップS607のプログラムはSDRAM104に配置される。いずれのプログラムもメインCPU109によって実行される。
Details of processing of the
メインシステム102はステップS601でサブシステム103から通常モード復帰要求を受信すると、ステップS602でメインCPU109のクロックを上げ、さらにステップS603でアプリケーション機能部を通常状態にする。そしてメインシステム102はステップS604においてセルフリフレッシュモードであるSDRAM104を通常状態に戻し、SDRAM104へのアクセスを可能にする。
When the
メインシステム102はSDRAM104にアクセス可能になると、ステップS605においてSDRAM上に配置されたプログラムの実行を開始する。メインシステム102はステップS606で、サブシステム103にSDRAM104を通常状態にしたことを通知する。
When the
その後、ステップS607でメインシステム102はサブシステム103からの通常モード移行完了の通知を待つ。メインシステム102が、ステップS607でサブシステム103から通常モード移行完了を受信すると、通常モード用のプログラムを実行し、情報処理システム101は通常モードへの復帰を完了する。
Thereafter, in step S607, the
図7にサブシステム103が省電力モードから通常モードに復帰する際のフローチャートを示す。ステップS701からステップS704の処理はSRAM108に配置されており、ステップS704からステップS710の処理はSDRAM104に配置されている。これらの処理も引き続き、切替タスク内で行う。
FIG. 7 shows a flowchart when the
サブシステム103は省電力モード時において、特定パケットを受信し、通常モードへの復帰条件を満たすと、まず、ステップS701でメインシステム102に通常モード復帰要求を送信する。その後、ステップS702でサブシステム103はメインシステム102からSDRAM104を通常状態にした通知を待つ。
When the
サブシステム103は、ステップS702でメインシステム102からSDRAM104を通常状態にしたことの通知を受信すると、ステップS703からS707でSDRAM104上に配置されたプログラムおよびデータを使った実行への切替を行う。
When the
ステップS703でCPU間通信レジスタ105と通信部111に関する割り込みを禁止する。その後、サブシステム103は、ステップS704でSRAM108に配置されたプログラムからSDRAM104上に配置されたプログラムへジャンプ、または関数のコールを行う。
In step S703, interrupts relating to the
続いてステップS705でスタックポインタを、省電力モードに移行する際に保存しておいたSDRAM104上のアドレスに戻す。さらにサブシステム104は、ステップS706でCPU間通信レジスタ105と通信部111からの割り込みのハンドラを通常モード用のプログラムにジャンプするように切り替え、ステップS707で通信部111のDMA転送先をSDRAM104上に戻す。DMA転送先を変更する際に、必要に応じてDMA転送の一時停止を行う。これにより通信部111の通信準備が整い、サブシステム103のアクセス先のSRAM108からSDRAM104への切替制御を実現できる。
In step S705, the stack pointer is returned to the address stored in the
サブシステム103はこれらの切り替え処理を終えると、ステップS708においてメインシステム102に通常モードへの復帰を完了した通知を行う。
After completing these switching processes, the
続いて、サブシステム103は通信部111における通信を再開するために、ステップS709でCPU間通信レジスタ105と通信部111の割り込みの許可する。さらにステップS710で組み込みOSのタスクのスケジューリングを有効にする。これにより切替タスクはその処理を終えて、他のタスクが実行される。これにより通常モードに復帰し、通常モード時の処理を再開する。
Subsequently, in order to resume communication in the communication unit 111, the
<実施形態2>
本発明の実施形態2のシステム構成図は、実施形態1と同様に図1で示される。実施形態2と実施形態1の異なる点は、通常モードから省電力モードに移行する際のサブシステム103の処理、および省電力モードから通常モードに移行する際のサブシステム103の処理である。メインシステム102とサブシステム103とのやりとりのシーケンス、およびメインシステム102の処理については実施形態1と同じである。
<Embodiment 2>
A system configuration diagram of Embodiment 2 of the present invention is shown in FIG. The differences between the second embodiment and the first embodiment are the processing of the
サブシステム103が通常モードから省電力モードに移行し、省電力モードで所定のパケットを受信後、省電力モードから通常モードに復帰する処理の説明をする。尚、実施形態1と同じである点については説明を省略する。
A description will be given of processing in which the
サブシステム103における省電力モードへの移行、省電力モード時の処理、通常モードへの復帰は、移行タスク、省電力モードタスク、復帰タスクによって実行される。それぞれのフローチャートを図8、図9、図10に示す。移行タスクと復帰タスクはSDRAM104に配置され、省電力モードタスクはSRAM108に配置される。
Transition to the power saving mode, processing in the power saving mode, and return to the normal mode in the
まず、通常モードから省電力モードに移行する際は、サブシステム103において移行タスクが実行される。図8を用いて、移行タスクのフローチャートについて説明する。
First, when shifting from the normal mode to the power saving mode, a shift task is executed in the
サブシステム103はCPU間通信レジスタ105を介してステップS801で省電力モード移行要求を受信する。ステップS802からステップS805の処理は、実施形態1のステップS403からステップS406と同様である。
In step S801, the
ステップS805までの処理を行った後、SRAM108に配置されたプログラムの実行を開始するために、ステップS806で移行タスクから省電力モードタスクにタスク実行を切り替える。省電力モードタスクはSRAM108に配置されている。
After performing the processing up to step S805, the task execution is switched from the transition task to the power saving mode task in step S806 in order to start the execution of the program arranged in the
省電力モードタスクに切り替わった後の処理を、図9のフローチャートを用いて説明する。省電力モードタスクは、まずステップS901において組み込みOSのタスクスケジューリング機能の停止、あるいは省電力モードタスクの優先度を十分に上げるなどして、SDRAM104に配置されたタスクにディスパッチしないようにする。ステップS902でキャッシュのフラッシュを行い、フラッシュ完了まで十分に待つ。これにより、SDRAM104へのアクセスを停止することができる。SDRAM104へのアクセスを停止できると、ステップS903においてメインシステムに省電力モード移行完了を通知する。
The processing after switching to the power saving mode task will be described with reference to the flowchart of FIG. First, in step S901, the power saving mode task is not dispatched to a task arranged in the
省電力モード移行の最後の処理としてステップS904でCPU間通信レジスタ105と通信部111の割り込みを許可する。これにより、実施形態1と同様に、通信部111でパケット受信を再開でき、省電力モードの移行が完了する。情報処理システム101は省電力モードとして処理を行う。
As a final process for shifting to the power saving mode, an interrupt between the
省電力モード時において、サブシステム103で実行される省電力モードタスクは所定のパケットの受信をステップS905で待つ。省電力モードタスクは通信部111からネットワーク112を介して、所定のパケットを受信すると、省電力モードから通常モードへの復帰処理を行う。
In the power saving mode, the power saving mode task executed by the
復帰処理について図9のステップS906から説明する。これらの処理は引き続き、省電力モードタスクで行われる。省電力モードタスクは、所定パケット受信後、ステップS906において通常モード復帰要求を、メインシステム102に送信する。その後、ステップS907でサブシステム103はメインシステム102からSDRAM104を通常状態にした通知を待つ。
The return process will be described from step S906 in FIG. These processes are continuously performed in the power saving mode task. After receiving the predetermined packet, the power saving mode task transmits a normal mode return request to the
サブシステム103は通知を受信後、ステップS908でCPU間通信レジスタ105と通信部111に関する割り込みを禁止する。その後、サブシステム103は、ステップS909でタスクのスケジューリングを再開させるとともに、ステップS910で復帰タスクにタスクを切り替える。
After receiving the notification, the
通常モードへの復帰処理の続きを、図10を用いて説明する。図10は復帰タスクの処理のフローチャートである。復帰タスクはSDRAM104に配置されている。
復帰タスクの処理、ステップS1001からステップS1005の処理は、実施形態1におけるステップS705からステップS709と同じである。ステップS1005までの処理を行い、復帰タスクはその処理を終え、他のタスクが実行されることによって、通常モード用のプログラムを再開する。これにより情報処理システム101は通常モードへの復帰を完了する。
The continuation of the process for returning to the normal mode will be described with reference to FIG. FIG. 10 is a flowchart of the return task processing. The return task is arranged in the
The process of the return task, the process from step S1001 to step S1005, is the same as the process from step S705 to step S709 in the first embodiment. The process up to step S1005 is performed, the return task finishes the process, and the other task is executed to restart the normal mode program. Thereby, the
以上の各実施形態によれば、マルチプロセッサ/マルチコアシステムが省電力モードに移行する際に、共有メモリへの不正なアクセスや、共有メモリのデータの不整合を生じさせることなく、共有メモリを省電力状態にすることができる。また、通常モードに移行する際においても、共有メモリへの不正なアクセスや、共有メモリのデータの不整合を生じることなく、共有メモリへのアクセスを再開することができる。 According to each of the above embodiments, when the multiprocessor / multicore system shifts to the power saving mode, the shared memory can be saved without causing unauthorized access to the shared memory or inconsistent data in the shared memory. Can be in power state. In addition, even when shifting to the normal mode, access to the shared memory can be resumed without causing unauthorized access to the shared memory and inconsistency of data in the shared memory.
[その他の実施形態]
本発明の目的は、前述した機能を実現するコンピュータプログラムのコードを記録した記憶媒体を、システムに供給し、そのシステムがコンピュータプログラムのコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたコンピュータプログラムのコード自体が前述した実施形態の機能を実現し、そのコンピュータプログラムのコードを記憶した記憶媒体は本発明を構成する。また、そのプログラムのコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
[Other Embodiments]
The object of the present invention can also be achieved by supplying a storage medium storing a computer program code for realizing the above-described functions to the system, and the system reading and executing the computer program code. In this case, the computer program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the computer program code constitutes the present invention. In addition, the operating system (OS) running on the computer performs part or all of the actual processing based on the code instruction of the program, and the above-described functions are realized by the processing. .
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたコンピュータプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。そして、そのコンピュータプログラムのコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。 Furthermore, you may implement | achieve with the following forms. That is, the computer program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer. Then, based on the instruction of the code of the computer program, the above-described functions are realized by the CPU or the like provided in the function expansion card or function expansion unit performing part or all of the actual processing.
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するコンピュータプログラムのコードが格納されることになる。 When the present invention is applied to the above storage medium, the computer program code corresponding to the flowchart described above is stored in the storage medium.
101 システム
102 メインシステム
103 サブシステム
104 SDRAM
105 CPU間通信レジスタ
106 ROM
107 SRAM
108 SRAM
109 メインCPU
110 サブCPU
111 通信部
112 ネットワーク
101
105
107 SRAM
108 SRAM
109 Main CPU
110 Sub CPU
Claims (15)
第1のプロセッサを有し、所定のアプリケーション機能を実現する第1のシステムと、
第2のプロセッサを有し、前記通信装置が省電力状態であっても外部装置と通信する第2のシステムと、
前記第1のシステムが前記第2のシステムを介すことなくアクセスし、かつ、前記第2のシステムが前記第1のシステムを介すことなくアクセスする第1のメモリと、
前記第2のシステムが前記第1のシステムを介すことなくアクセスする第2のメモリと、
を有し、
前記通信装置が前記第1のメモリの停止を伴う省電力状態に移行する場合、前記第2のシステムが、前記第1のシステムからの指示に従って前記第1のメモリから前記第2のメモリにアクセス先を切替えると、前記第1のシステムと前記第2のシステムとのいずれもが、前記第1のメモリへのアクセスを停止し、
前記第2のシステムは、前記第1のメモリへのアクセスを停止すると、前記第2のシステムが前記第1のメモリへのアクセスを停止したことを通知する信号を前記第1のシステムに対して送信し、
前記通信装置は、前記信号が送信されると前記省電力状態に移行する
ことを特徴とする通信装置。 A communication device,
A first system having a first processor and realizing a predetermined application function;
A second system having a second processor and communicating with an external device even when the communication device is in a power saving state;
A first memory that the first system accesses without going through the second system , and the second system accesses without going through the first system ;
A second memory that the second system accesses without going through the first system ;
Have
When the communication device shifts to a power saving state that involves stopping the first memory , the second system accesses the second memory from the first memory in accordance with an instruction from the first system. When the destination is switched, both the first system and the second system stop accessing the first memory ,
When the second system stops access to the first memory, a signal is sent to the first system notifying that the second system has stopped accessing the first memory. Send
The communication apparatus shifts to the power saving state when the signal is transmitted .
前記通信装置の前記省電力状態を解除すると判定した場合に、前記第2のシステムは、前記第1のシステムに対して前記第1のメモリの動作の停止を解除するための信号を送信することを特徴とする請求項3に記載の通信装置。 The second system determines whether to cancel the power saving state of the communication device,
When determining to cancel the power saving state of the communication device, the second system, sending a signal for releasing the stop of the operation of the first memory to the first system The communication device according to claim 3.
第2のプロセッサを有し、前記通信装置が省電力状態であっても外部装置と通信する第2のシステムと、
前記第1のシステムが前記第2のシステムを介すことなくアクセスし、かつ、前記第2のシステムが前記第1のシステムを介すことなくアクセスする第1のメモリと、
前記第2のシステムが前記第1のシステムを介すことなくアクセスする第2のメモリと
を有する通信装置の制御方法であって、
前記通信装置が前記第1のメモリの停止を伴う省電力状態に移行する場合、前記第2のシステムが、前記第1のシステムからの指示に従って前記第1のメモリから前記第2のメモリにアクセス先を切替えると、前記第1のシステムと前記第2のシステムとのいずれもが、前記第1のメモリへのアクセスを停止する工程を備え、
前記第2のシステムは、前記第1のメモリへのアクセスを停止すると、前記第2のシステムが前記第1のメモリへのアクセスを停止したことを通知する信号を前記第1のシステムに対して送信し、
前記通信装置は、前記信号が送信されると前記省電力状態に移行する
ことを特徴とする通信装置の制御方法。 A first system having a first processor and realizing a predetermined application function;
A second system having a second processor and communicating with an external device even when the communication device is in a power saving state;
A first memory that the first system accesses without going through the second system , and the second system accesses without going through the first system ;
A control method for a communication device, wherein the second system has a second memory that is accessed without going through the first system ,
When the communication device shifts to a power saving state that involves stopping the first memory , the second system accesses the second memory from the first memory in accordance with an instruction from the first system. When the destination is switched, the first system and the second system both include a step of stopping access to the first memory ,
When the second system stops access to the first memory, a signal is sent to the first system notifying that the second system has stopped accessing the first memory. Send
The communication device control method, wherein the communication device shifts to the power saving state when the signal is transmitted .
第2のプロセッサを有し、前記通信装置が省電力状態であっても外部装置と通信する第2のシステムと、
前記第1のシステムが前記第2のシステムを介すことなくアクセスし、かつ、前記第2のシステムが前記第1のシステムを介すことなくアクセスする第1のメモリと、
前記第2のシステムが前記第1のシステムを介すことなくアクセスする第2のメモリと、
を有する通信装置において、
前記通信装置が前記第1のメモリの停止を伴う省電力状態に移行する場合、前記第2のシステムが、前記第1のシステムからの指示に従って前記第1のメモリから前記第2のメモリにアクセス先を切替えると、前記第1のシステムと前記第2のシステムとのいずれにも、前記第1のメモリへのアクセスを停止させ、
前記第2のシステムが前記第1のメモリへのアクセスを停止すると、前記第2のシステムに、前記第2のシステムが前記第1のメモリへのアクセスを停止したことを通知する信号を前記第1のシステムに対して送信させ、
前記信号が送信されると、前記通信装置に、前記省電力状態に移行させる
ためのコンピュータプログラム。 A first system having a first processor and realizing a predetermined application function;
A second system having a second processor and communicating with an external device even when the communication device is in a power saving state;
A first memory that the first system accesses without going through the second system , and the second system accesses without going through the first system ;
A second memory that the second system accesses without going through the first system ;
In a communication device having
When the communication device shifts to a power saving state that involves stopping the first memory , the second system accesses the second memory from the first memory in accordance with an instruction from the first system. When the destination is switched, the access to the first memory is stopped for both the first system and the second system ,
When the second system stops accessing the first memory, a signal is sent to the second system notifying that the second system has stopped accessing the first memory. Send to one system,
A computer program for causing the communication device to shift to the power saving state when the signal is transmitted .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012203535A JP5705185B2 (en) | 2012-09-14 | 2012-09-14 | COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012203535A JP5705185B2 (en) | 2012-09-14 | 2012-09-14 | COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008249133A Division JP5094666B2 (en) | 2008-09-26 | 2008-09-26 | Multiprocessor system, control method therefor, and computer program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2013030178A JP2013030178A (en) | 2013-02-07 |
| JP5705185B2 true JP5705185B2 (en) | 2015-04-22 |
Family
ID=47787098
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012203535A Expired - Fee Related JP5705185B2 (en) | 2012-09-14 | 2012-09-14 | COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5705185B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB201721734D0 (en) * | 2017-12-22 | 2018-02-07 | Nordic Semiconductor Asa | Inter-processor communication |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000105639A (en) * | 1998-09-29 | 2000-04-11 | Sony Corp | Power saving circuit |
| JP4271520B2 (en) * | 2003-07-22 | 2009-06-03 | 株式会社リコー | Image forming apparatus |
| JP4396817B2 (en) * | 2003-11-10 | 2010-01-13 | 日本電気株式会社 | Mobile terminal with communication function having multiple CPU configuration and control method thereof |
| JP2005157620A (en) * | 2003-11-25 | 2005-06-16 | Matsushita Electric Ind Co Ltd | Semiconductor integrated circuit |
| JP2005295532A (en) * | 2004-03-12 | 2005-10-20 | Matsushita Electric Ind Co Ltd | Wireless communication terminal apparatus and wireless communication function control method |
| JP4773693B2 (en) * | 2004-06-07 | 2011-09-14 | キヤノン株式会社 | Memory control system |
| US7730335B2 (en) * | 2004-06-10 | 2010-06-01 | Marvell World Trade Ltd. | Low power computer with main and auxiliary processors |
| JP2006221381A (en) * | 2005-02-09 | 2006-08-24 | Sharp Corp | Processor system and image forming apparatus provided with the processor system |
| JP2006259906A (en) * | 2005-03-15 | 2006-09-28 | Ricoh Co Ltd | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, POWER SAVE CONTROL METHOD, POWER SAVE CONTROL PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM |
| JP4765392B2 (en) * | 2005-04-28 | 2011-09-07 | セイコーエプソン株式会社 | projector |
| JP4310709B2 (en) * | 2005-10-21 | 2009-08-12 | コニカミノルタビジネステクノロジーズ株式会社 | Information processing device |
| CN101375530B (en) * | 2006-02-08 | 2014-03-19 | 日本电气株式会社 | Portable mobile terminal and communicating method |
| JP4463216B2 (en) * | 2006-02-09 | 2010-05-19 | 日本電気株式会社 | Wireless communication terminal with power saving function |
-
2012
- 2012-09-14 JP JP2012203535A patent/JP5705185B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2013030178A (en) | 2013-02-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5094666B2 (en) | Multiprocessor system, control method therefor, and computer program | |
| JP5323828B2 (en) | Virtual machine control device, virtual machine control program, and virtual machine control circuit | |
| JP4938080B2 (en) | Multiprocessor control device, multiprocessor control method, and multiprocessor control circuit | |
| JP5229326B2 (en) | Power consumption control method, power consumption control program and information processing system in multi-core CPU | |
| US20110107344A1 (en) | Multi-core apparatus and load balancing method thereof | |
| US20160048199A1 (en) | Electronic device | |
| JP2000330806A (en) | Computer system | |
| JP2006221381A (en) | Processor system and image forming apparatus provided with the processor system | |
| JP2011150653A (en) | Multiprocessor system | |
| JP2011095916A (en) | Electronic apparatus | |
| WO2016033755A1 (en) | Task handling apparatus and method, and electronic device | |
| JP5124430B2 (en) | Virtual machine migration method, server, and program | |
| JP6380261B2 (en) | Electronic equipment and power supply control program | |
| JP5705185B2 (en) | COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM | |
| JP2020127184A (en) | Electronic equipment including a device connected to a PCI device and capable of shifting to a power saving state, and a control method thereof | |
| JP5704176B2 (en) | Processor processing method and processor system | |
| JP2015215684A (en) | Information processing apparatus and information processing program | |
| JP5783348B2 (en) | Control device, control program, and image forming apparatus | |
| JP6252799B2 (en) | Arithmetic processing device and control method thereof | |
| US20080307190A1 (en) | System and Method for Improved Virtual Real Memory | |
| JP5823097B2 (en) | Electronic circuit, image forming apparatus, and DDR-SDRAM initialization method | |
| JP5231496B2 (en) | Information processing apparatus and suspend / resume method thereof | |
| JP2014059661A (en) | Information processing device, method of controlling the same, and program | |
| JP2013196112A (en) | Memory system and method for controlling power saving of the same | |
| JP2006260092A (en) | Information processing device or data transfer control device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121115 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130703 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130705 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130902 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140221 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140422 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140916 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141029 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20141125 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150126 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150224 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 5705185 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
| LAPS | Cancellation because of no payment of annual fees |