WO2014157712A1 - 演算処理装置およびその制御方法 - Google Patents
演算処理装置およびその制御方法 Download PDFInfo
- Publication number
- WO2014157712A1 WO2014157712A1 PCT/JP2014/059381 JP2014059381W WO2014157712A1 WO 2014157712 A1 WO2014157712 A1 WO 2014157712A1 JP 2014059381 W JP2014059381 W JP 2014059381W WO 2014157712 A1 WO2014157712 A1 WO 2014157712A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- return
- volatile
- program
- unit
- arithmetic processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B70/00—Technologies for an efficient end-user side electric power management and consumption
- Y02B70/10—Technologies improving the efficiency by using switched-mode power supplies [SMPS], i.e. efficient power electronics conversion e.g. power factor correction or reduction of losses in power supplies or efficient standby modes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B70/00—Technologies for an efficient end-user side electric power management and consumption
- Y02B70/30—Systems integrating technologies related to power network operation and communication or information technologies for improving the carbon footprint of the management of residential or tertiary loads, i.e. smart grids as climate change mitigation technology in the buildings sector, including also the last stages of power distribution and the control, monitoring or operating management systems at local level
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Definitions
- the present invention relates to an arithmetic processing device (normally off computer) in a case where a volatile component that stores internal information in a volatile storage element is connected to an arithmetic processing device (normally off computer) realized by a nonvolatile element.
- the present invention relates to a method for returning from power-off.
- Patent Document 1 discloses a method for saving the state of the component and a restart function after the power supply is completely shut off.
- Patent Document 1 state information for the suspend / resume function is stored using a non-volatile storage device outside the computer system core.
- the computer system disclosed in Patent Document 1 reads the internal state using a scan latch in a computer system component.
- the read internal state is stored in the save area and the power is shut off.
- Patent Document 2 discloses a “computer device” that saves the contents of a memory necessary for restoration and other input / output device information to an external storage device at the request of a user and restores the information when necessary.
- Patent Document 3 discloses an “information processing apparatus” that can eliminate inconsistencies between device management information before suspend processing and after resume processing, and improve system stability.
- the information processing apparatus disclosed in Patent Document 3 includes a CPU, a main memory, a nonvolatile memory, an interface unit, an expansion device, a user interface unit, and a bus as hardware.
- the nonvolatile memory stores a suspend processing program, a resume processing program, a device management table, and the like.
- the suspend processing program saves at least the contents of the main memory loaded with the program as suspend data in the nonvolatile memory before the system is terminated.
- the resume processing program restores the suspend data saved in the non-volatile memory at system startup to the main memory, detects one or more expansion devices connected to the interface, and compares the detection results with the device management table. Then, the device identification information of the expansion device that exists only in the device management table is deleted from the device management table.
- Patent Document 4 discloses a “semiconductor device” that can quickly shift to a standby mode with reduced power consumption while retaining internal information.
- the semiconductor device described in Patent Document 4 includes a latch circuit including a nonvolatile memory and a writing circuit, and writes volatile data of the latch circuit to the nonvolatile memory prior to power-off.
- the semiconductor device described in Patent Document 4 can save data at high speed by adding a nonvolatile memory cell without requiring a complicated transfer operation.
- Patent Document 5 discloses a “portable terminal” capable of providing a comfortable operating environment by eliminating power interruption immediately after startup.
- a portable terminal described in Patent Literature 5 includes a main control unit including a CPU and an input / output device, a ROM storing a program for operating the main control unit, a RAM storing a user application, a driving power source, A main battery, a power switch for turning on / off the power from the main battery, and a voltage detector for detecting the voltage of the main battery and sending voltage data to the main controller.
- the main control unit executes the user application when the voltage of the main battery becomes equal to or higher than the specified voltage within a predetermined time after the power is turned on, and turns off the power switch when the voltage of the main battery does not become higher than the specified voltage within the predetermined time.
- JP 2002-182803 A Japanese Patent Laid-Open No. 05-066951 JP 2012-174031 A JP 2004-133969 A Japanese Patent Laid-Open No. 10-040220
- Patent Document 1 When a memory element arranged separately from a circuit portion that holds an internal state is used as in Patent Document 1, a time delay and power consumption associated with data transfer occur. In particular, in Patent Document 1, when the power is turned on / off frequently, the time delay and power consumption associated with data transfer increase. In the computer device disclosed in Patent Document 2, since the central processing unit and the memory are composed of volatile elements, the contents of the memory must be saved in an external storage device and restored when necessary. Therefore, similarly to Patent Document 1, even in Patent Document 2, when power is turned on / off frequently, time delay and power consumption associated with data transfer increase.
- the contents of the main memory are saved as suspend data in the nonvolatile memory before the system is terminated, and the suspend data saved in the nonvolatile memory when the system is started is stored in the main memory. Must be restored to memory. Therefore, similarly to Patent Documents 1 and 2, even in Patent Document 3, when power is turned on / off frequently, time delay and power consumption associated with data transfer increase. Even in the semiconductor device disclosed in Patent Document 4, it is necessary to save volatile data to a nonvolatile memory when the power is turned off. Therefore, in Patent Document 4, when the power is turned on / off frequently, power consumption associated with data transfer increases. In the portable terminal disclosed in Patent Document 5, the CPU and RAM are composed of volatile elements.
- the portable terminal disclosed in Patent Document 4 simply detects the voltage of the main battery, and if the detected voltage is equal to or higher than the specified voltage, the initial for operating the user application program stored in the RAM. It simply performs processing and executes a user application program. Therefore, the data held in the arithmetic processing unit is not saved in an external device (for example, a non-volatile memory such as an external storage device) connected to the arithmetic processing unit, and continues even after the power is turned off and on. Thus, development of an arithmetic processing device capable of processing data is underway. Here, such an arithmetic processing device will be referred to as a “normally off computer” hereinafter.
- Such a normally-off computer includes a nonvolatile CPU having a nonvolatile register and a nonvolatile memory.
- the nonvolatile CPU may include a volatile register for storing data that may be lost when the power is turned off.
- a normally-off computer is an effective device for realizing a power-saving system because it can turn off the power and suppress leakage current when there is no arithmetic processing. For example, in a terminal that operates on a battery such as a sensor device, it is important to reduce the frequency of battery replacement in terms of maintenance, and the standby time of the sensor device is very long compared to the operation time. Therefore, the power saving effect by turning off the power when not in use is great, and it is particularly suitable to use the normally-off computer for the terminal.
- An object of the present invention is that a normally-off computer to which a volatile component (a component that is not compatible with a normally-off computer) is connected operates normally and at high speed even after the power is turned on / off. It is to provide technology to ensure.
- the arithmetic processing unit of the present invention is an arithmetic processing unit that has a nonvolatile register and can continuously process data even when the power is turned off and on without saving the data held in the device to an external device.
- a central processing unit including the non-volatile register, a connection unit between a volatile component that stores internal information in a volatile memory element, and a non-volatile device for storing a program for returning the volatile component from a power-off state.
- at least an inspection unit for notifying that the power supply potential in the arithmetic processing unit has reached the operating potential at the time of return.
- the central processing unit loads and executes the return program from the nonvolatile storage unit in response to a notification signal from the inspection unit.
- FIG. 1 is a block diagram illustrating an associated embedded system including a normally off computer with volatile components connected thereto.
- FIG. 2 is a block diagram showing a normally-off computer according to the first embodiment of the present invention capable of a mixed mounting system with volatile components.
- FIG. 3 is a sequence diagram for explaining a control method of the normally-off computer shown in FIG. 2 in which a mixed system with volatile components is possible.
- FIG. 4 is a block diagram showing a normally-off computer according to a second embodiment of the present invention capable of a mixed mounting system with a plurality of volatile components.
- FIG. 5 is a sequence diagram for explaining a control method of the normally-off computer shown in FIG. 4 capable of a mixed mounting system with a plurality of volatile components.
- FIG. 6 is a block diagram showing a normally-off computer according to the third embodiment of the present invention, which has a return time management unit for controlling the execution timing of the return means.
- FIG. 1 is a block diagram showing a related mixed loading system 10 in which normally-off computer compatible parts and normally-off computer non-compatible parts are mixed.
- the embedded system 10 is connected to a power source 14 via a power switch 12.
- the illustrated mixed loading system 10 includes a normally-off computer 20 and first and second volatile components 31 and 32.
- the normally-off computer 20 and the first and second volatile parts 31 and 32 are connected to each other via first and second connection parts 41 and 42, respectively.
- the normally-off computer 20 is composed of a CPU having a register and a memory. In the normally-off computer 20, all of the CPU registers and memories are composed of nonvolatile elements.
- each of the first and second volatile components 31 and 32 includes a normally-off computer non-compatible component including a volatile element as hardware (device).
- a normally-off computer non-compatible component including a volatile element as hardware (device) As described above, in the normally-off computer 20, even when the program is turned on / off at a desired timing during execution of the program, the code is resumed from immediately before the return.
- the first and second volatile parts 31 and 32 which are normally off computer non-corresponding parts the setting information is forgotten by the power off operation. Therefore, in the mixed loading system 10, if the normally-off computer 20 is accessed from the normally-off computer non-compatible parts 31, 32 after returning, incorrect data is transmitted / received and the entire system may cause an error. is there.
- the present invention ensures that normally-off computers connected with volatile components (parts that do not support normally-off computers) operate normally and at high speed even after power on / off operations are performed. It is a technique to do.
- the arithmetic processing unit according to the embodiment of the present invention has a non-volatile register, and continuously processes data even when the power is turned off and on without saving the data held in the device to an external device. It is an arithmetic processing device that can be used.
- An arithmetic processing unit includes a central processing unit that combines the non-volatile registers, a connection unit between a volatile component that stores internal information in a volatile storage element, and power-off of the volatile component. At least a nonvolatile storage unit for storing a program for returning from the state and an inspection unit for informing that the power supply potential in the arithmetic processing unit has reached the operating potential at the time of recovery. Then, the central processing unit loads and executes the volatile component return program from the nonvolatile storage unit in response to the notification signal from the inspection unit. More specifically, the central processing unit executes from the off point of a certain power switch (hardware) to the initial code based on the return program.
- a certain power switch hardware
- the central processing unit Since the arithmetic processing unit only needs to be able to process data after the power is turned off and on, the central processing unit stores data that may be lost when the power is turned off.
- Volatile registers for storage may be included. There may be a plurality of connection portions to the volatile component that stores the internal information in the volatile storage element. In order to reduce the number of parts (information amount: storage capacity) of the non-volatile storage unit, the return program from the OFF state corresponding to each of a plurality of connected volatile parts is less than that of the connected volatile parts. The number may be shared in the nonvolatile storage unit.
- the central processing unit can execute different processes by rewriting instructions and data stored in the non-volatile storage unit, so that versatility as the arithmetic processing device is enhanced. More preferably, there are two or more central processing units. In such a configuration, while one central processing unit executes the return program, the other central processing units resume execution of the code interrupted before the return by a notification signal from the inspection unit. As a result, the recovery time can be shortened.
- the arithmetic processing unit according to the embodiment of the present invention may include a transfer unit having a function of transferring data.
- the transfer unit autonomously transfers the data stored in the nonvolatile storage unit to the connection unit with the volatile component.
- the central processing unit may resume the code suspended before the return in parallel with the execution of the return program.
- the recovery time can be shortened.
- the connection portion with the volatile component may include an input terminal for receiving an operation signal inside the volatile component or an output signal notifying that the operation voltage has reached a predetermined threshold voltage. .
- the central processing unit prohibits access to the volatile component and execution of the return program during a period when the operating voltage inside the volatile component does not reach the predetermined threshold voltage.
- the arithmetic processing unit may have a monitoring unit that monitors the execution state of the return program.
- the central processing unit plans to execute the recovery program until receiving a signal indicating that the execution of the recovery program has been completed from the monitoring unit, or access necessary for executing the recovery program to the volatile component being executed. Access after power off is prohibited except for. Thereby, it is possible to prevent data from being exchanged between the volatile component and the processing unit prior to completion of the restoration of the volatile component.
- the arithmetic processing unit may include a detection unit that notifies that the execution of the return program has been completed.
- the central processing unit can be prevented from restarting the processing that was being executed before the power was turned off until it receives a signal from the detection unit indicating that the return program has been executed.
- a method of controlling an arithmetic processing unit stores a plurality of return programs corresponding to a return state for one volatile component in the nonvolatile storage unit, and a plurality of central processing units Alternatively, the return program may be selectively loaded and executed according to the return state. As a result, it is possible to realize a high-speed recovery and power saving by omitting a redundant recovery program.
- the method for controlling the arithmetic processing unit provides a plurality of return programs P (corresponding to the return state j for one volatile component i.
- the central processing unit responds to the result of the return program P (i, j) of the volatile component i executed in advance at the time of return.
- an optimal return program is selected from a plurality of return programs P (k, l) of other volatile parts k.
- the priority order corresponding to the return state of each return program is stored in the nonvolatile storage device together with the return program, and the central processing unit has a priority order at the time of return. Accordingly, the return program may be loaded from the nonvolatile storage device and executed. According to such a configuration, the recovery program P (k, l 1 ), P (k, l 2 ),... Of another volatile component k is obtained in accordance with data acquisition after recovery that can be acquired from a certain volatile component i.
- the arithmetic processing devices disclosed in Patent Documents 1 to 5 are arithmetic processing devices such as a CPU constituted by volatile registers.
- the embodiment of the present invention is an invention related to a return technique for an arithmetic processing device having a nonvolatile register.
- the arithmetic processing unit itself provided with the non-volatile register does not save the return program such as the suspend process or the resume process in the non-volatile memory. This is because the arithmetic processing unit according to the present embodiment can continuously execute the operation before the power is turned off as if nothing happened to the power on and off without saving the processing data. It is.
- the embodiment of the present invention is a technique related to an arithmetic processing device having a nonvolatile register, and even if it is used in a “mixed system” to which a volatile component having a volatile register is connected, This is a technique that allows the arithmetic processing apparatus having the above to operate normally (no system error occurs).
- FIG. 2 is a block diagram showing a normally-off computer 20A used in the mixed mounting system 10A that can be mounted together with the volatile component 30-i.
- FIG. 3 is a sequence diagram for explaining a control method of normally-off computer 20A.
- the normally-off computer 20A has a non-volatile register, and can continuously process data even when the power is turned off and on without saving the data held in the device to an external device.
- the normally-off computer 20A includes a non-volatile CPU 210 and a non-volatile memory 220.
- the nonvolatile CPU 210 includes a plurality of nonvolatile registers 212 without including a volatile register. However, the nonvolatile CPU 210 may include a volatile register (not shown) for storing data that may be lost when the power is turned off.
- the normally-off computer 20A has a connection part 40-i with the volatile component 30-i.
- the volatile component 30-i is composed of an input / output device.
- the nonvolatile memory 220 stores a program 222, data 224, a return program 226-i from the power-off state of the volatile component 30-i, and a return program control program 228.
- the non-volatile memory 220 functions as a non-volatile storage unit for storing the return program 226-i from the power-off state of the volatile component 30-i.
- the normally-off computer 20A further includes an internal potential monitoring device 230.
- the internal potential monitoring device 230 functions as a power supply voltage monitor circuit (inspection unit) that detects (informs) that the power supply potential inside the normally-off computer 20A has reached the operating potential at the time of recovery.
- the non-volatile CPU 210 of the normally-off computer 20 ⁇ / b> A receives the notification signal from the power supply voltage monitor circuit (inspection unit) 230 from the non-volatile memory 220 and returns the program control program 228 (recovery) of the volatile component (input / output device) 30-i.
- the program 226-i) is loaded and executed. That is, the non-volatile CPU 210 functions as a central processing unit that loads and executes the return program 226-i from the non-volatile storage unit 220 in response to a notification signal from the inspection unit 230.
- a normally off computer 20A is connected to a display device LCD (liquid crystal display) as a volatile component (input / output device) 30-i.
- the power source for the LCD 30-i is common to the normally-off computer 20A.
- conditions such as display brightness and resolution are held in an internal volatile register (not shown).
- the LCD 30-i performs setting of the volatile register and transmission / reception of display data via serial communication such as UART (Universal Asynchronous Receiver Transmitter) with the outside.
- UART Universal Asynchronous Receiver Transmitter
- the LCD 30-i loses the screen setting conditions set before the power is turned off and returns to the default setting.
- a device that stores setting information such as operating conditions as described above in a register including a volatile memory element is referred to as a “volatile device” herein. Therefore, in the illustrated example, the volatile component (input / output device) 30-i is a volatile device.
- the input / output device 30-i is indicated by “input / output device i”
- the return program 226-i from the power-off state of the input / output device 30-i is indicated by “return program P (i)”.
- the program 222 loaded on the non-volatile CPU 210 uses the input / output device i (step S101) and designates the return program P (i) (step S102).
- the program 222 defines the return program for the input / output device i as the return program P (i) in the nonvolatile memory 220 in the normally-off computer 20A.
- the user suppresses standby power by turning off the power of the entire mixed system 10A including the volatile device 30-i externally connected to the normally-off computer 20A at an arbitrary timing.
- the program 222 stops (step S103).
- the user turns on the power of the embedded system 10A during use and restarts the process.
- the internal potential monitoring device (power-supply voltage monitoring circuit) 230 detects that the power-supply potential of the normally-off computer 20A has reached the operating potential Vth (step) S104).
- the return program control program 228 loaded in the nonvolatile CPU 210 executes the return program P (i) from the power-off state of the display device 30-i stored in the nonvolatile memory 220.
- Step S105 the state of the display device 30-i is returned to the state before the power is turned off.
- the program 222 loaded in the non-volatile CPU 210 performs the processing that was executed before the power was turned off. It restarts (step S106).
- the nonvolatile CPU 210 is restored by a signal from the internal potential monitoring device 230 in the normally-off computer 20A notifying that the power supply voltage has reached the operating voltage Vth.
- the execution of the program P (i) is started, and the state of the input / output device i is restored until just before the stop.
- the nonvolatile CPU 210 resumes the program code that was being executed before the power was turned off.
- the display device 30-i is accessed after restarting the process that has been executed, the display device 30-i returns to the same state as before being turned off.
- the processing operation can be continued in the same manner as when the power on / off operation is not sandwiched. Therefore, the user can safely turn off the power at an arbitrary timing. Therefore, when it is determined that the operation is unnecessary, the user can frequently turn off the power to reduce the leakage current, thereby realizing power saving.
- effects of the first exemplary embodiment of the present invention will be described. After the normally-off computer 20A is restored from the power-off state, the normally-off computer 20A restarts the program according to the characteristics of the operation of the volatile component 30-i that cannot be made non-volatile. 226-i) is executed.
- the volatile component 30-i that cannot be made non-volatile is in a desired operation state or standby state, and is normally between the normally-off computer 20A and the volatile component 30-i that cannot be made non-volatile after restarting. Exchange of data is executed. For this reason, it is possible to prevent the entire embedded system 10A from causing an error due to erroneous transmission of data. Since the restart program (return program 226-i) of the volatile component 30-i is stored in the nonvolatile memory 220 in the normally-off computer 20A, the execution from the return is fast, and the normally-off computer Even in the mixed system 10A, the high-speed return characteristic which is the characteristic of 20A is not impaired.
- FIG. 4 is a block diagram showing a normally-off computer 20B used in a mixed loading system 10B capable of being mixed with first to m-th (m is an integer of 2 or more) volatile components 30-1 to 30-m. is there.
- FIG. 5 is a sequence diagram for explaining a control method of normally-off computer 20B.
- the normally-off computer 20B is connected to the first to m-th volatile components 30-1 to 30-m via the first to m-th connection portions 40-1 to 40-m, respectively.
- the normally-off computer 20B shown has the same configuration as that of the normally-off computer 20A shown in FIG.
- the nonvolatile memory 220A includes a program 222, data 224, and a plurality of return programs 226- (1-1), 226- from the power-off state of the first to m-th volatile components 30-1 to 30-m. (2-1),..., 226- (mn) and a return program control program 228A are stored.
- the non-volatile memory unit composed of the non-volatile memory 220A has a plurality of return programs P (i, j) corresponding to the return state j for one volatile component i and another volatile component k.
- a plurality of return programs P (k, l) corresponding to the return state l are stored.
- the return program control program 228A is an overall state control program that selects and controls one return program that returns each volatile component to an appropriate state for the state of the arithmetic processing unit 20B to be returned. work. Therefore, the nonvolatile storage unit 220A stores a plurality of return programs P (i, j), a plurality of return programs P (k, l), and an overall state control program 228A. The central processing unit 210 loads and executes the overall state control program 228A from the nonvolatile storage unit 220A at the time of return.
- the central processing unit 210 performs a plurality of restorations for the other volatile components k according to the result of the restoration program P (i, j) for the volatile components i executed in advance at the time of restoration.
- One optimal return program is selected from the program P (k, l).
- m is equal to 4
- the mixed mounting system 20B includes the first to fourth volatile parts 30-1, 30-2, 30-3, and 30-4.
- the first to fourth volatile components 30-1 to 30-4 are also referred to as first to fourth input / output devices or first to fourth volatile devices, respectively.
- communication devices network devices for Internet connection having volatile setting registers, respectively.
- a position sensor (GPS), an LCD, and a heating type flow sensor are connected.
- the power source of these modules is common to the normally-off computer 20B.
- an IP (Internet protocol) address is automatically set by DHCP (Dynamic Host Configuration Protocol).
- the connected network device 30-1 acquires the IP address from the DHCP server when starting to use the network, and returns the IP address when it ends.
- the network device 30-1 is configured by initialization step 1 for securing communication parameters on the hardware and communication at the physical layer, step 2 for obtaining an IP address by executing DHCP, and initial setting of the application program. Take three steps, Step 3.
- the network device 30-1 has been in a power-off state for a long time after the use of the network has been completed, and it is necessary to acquire an IP address when returning to the power-on state from there. Therefore, the non-volatile CPU 210 executes the return program P (1, A) that executes Step 2 and Step 3.
- the return program P (1, A) executes Step 2 and Step 3.
- the IP address obtained by the DHCP executed in step 2 is held in the nonvolatile memory 220A of the normally-off computer 20B. If the period between the second power-on and power-off is short, the IP address is also valid on the network, so the network device 30-1 uses the return program P (1, B) that does not execute step 2. You can return.
- the non-volatile storage unit 220A stores a plurality of return programs P (1, A) and P (1, B) corresponding to the return state for one volatile component 30-1.
- the nonvolatile CPU 210 selects the return program P (1, A) and the return program P (1, B) depending on the time during which the network device 30-1 is turned off. Therefore, the central processing unit 210 selectively loads and executes one specific return program from the plurality of return programs P (1, A) and P (1, B) according to the return state.
- the nonvolatile CPU 210 sets the return program P (1, B) as a specific return program.
- the central processing unit 210 selectively loads and executes one specific return program that can be returned from the plurality of return programs P (1, A), P (1, B) in the shortest time. Since the position sensor (second non-volatile device 30-2) is connected to the normally-off computer 20B, the return program P (2, A) of the second non-volatile device 30-2 is set to the first non-volatile state.
- the return programs P (1, A), P (1, B), and P (2, A) are preliminarily given over the return programs P (1, A) and P (1, B) of the device 30-1. Prioritize If the position information has changed between the first power-on and power-off and the second power-on and power-off, the return program P (2, A) is executed with priority. Since the normally-off computer 20B senses a change in the communication environment autonomously, it is possible to reduce the number of return man-hours due to invalidation of the IP address and the like and to save power. Thus, the non-volatile storage unit 220A stores a return program with a priority according to the return state of each return means.
- the central processing unit 210 loads and executes the return program from the nonvolatile storage unit 220A according to the priority order at the time of return.
- the LCD third volatile device 30-3) exchanges data with the normally computer 20B via the UART. Data can be transferred to and from the UART by writing data to the transmission / reception register (volatile register). However, during the writing and reading operations to the transmission / reception register (volatile register), the nonvolatile CPU 210 Surplus computing resources. Therefore, the non-volatile CPU 210 executes restoration processing for other volatile devices in parallel in a time-sharing manner, and speeds up the restoration.
- the heating type flow rate sensor (fourth volatile device 30-4) needs a certain idling time (time for the heater to warm up) when returning.
- a return waiting time other than the transmission parameter setting of the flow sensor 30-4 is set according to the return program control program 228A. Therefore, this idling time also uses a calculation resource such as the non-volatile CPU 210 for execution of a restoration program for other volatile devices.
- the nonvolatile CPU 210 sets the restoration program for the flow sensor 30-4 to restore other volatile devices. Executes prior to the program. This shortens the time from the start of recovery until all necessary volatile devices start up.
- the central processing unit 210 preferentially stores the return program P (i, j) for the volatile component i (the flow rate sensor 30-4 in this example) having the longest return time when returning. Load from 220A and execute.
- the plurality of volatile devices 30-1 to 30-m are communication devices for connecting to the Internet, position sensors (GPS), LCDs, and heating type flow rate sensors. It does not limit the type of sex device.
- the program 222 accesses each of the volatile devices 30-i (1 ⁇ i ⁇ m), information necessary for returning to the access time is used as information for returning to the return program P (i). It only needs to be stored inside.
- recovery information When information necessary for recovery of the volatile device 30-i (hereinafter referred to as recovery information) differs depending on the recovery condition (j), the recovery information is stored in the nonvolatile memory 220A as a recovery program P (i, Save as j).
- the return information (return program) is only required to be indexed by labeling with i and j.
- the procedures at the time of restoration of the first volatile device 30-1 and the second volatile device 30-2 are respectively referred to as a restoration program P (1, A) and a restoration program P (1 , B), designated as a return program P (2, A) (step S101A), and one optimal return program P (1, x) according to the return state for the first input / output device 30-1.
- the restart program (return program) is executed according to For this reason, the plurality of volatile components 30-1 to 30-m that cannot be made non-volatile are in a desired operation state or standby state and cannot be made non-volatile with the normally-off computer 20B after restarting. Normal data exchange is executed with 30-1 to 30-m. For this reason, it is possible to prevent the entire embedded system 10B from causing an error due to erroneous transmission of data. Since the restart program (recovery program) for the plurality of volatile components 30-1 to 30-m is stored in the nonvolatile memory 220A in the normally-off computer 20B, execution from the recovery is fast. Even in the mixed loading system 10B, the high-speed return characteristic which is the characteristic of the normally-off computer 20B is not impaired.
- FIG. 6 is a block diagram showing a mixed mounting system 10C in which a normally-off computer 20C and a volatile component (volatile device) 30A are mixed. Components having the same functions as those shown in FIG. 2 are denoted by the same reference numerals, and detailed description thereof is omitted for the sake of simplicity.
- the normally-off computer 20C further includes a DMA (Direct Memory Access) module 240 and a return time management unit 250 in addition to the nonvolatile CPU 210, the nonvolatile memory 220, and the internal potential monitoring device 230.
- DMA Direct Memory Access
- a combination of the nonvolatile CPU (central processing unit) 210, the nonvolatile memory 220, and the DMA module 240 is called a processing unit 260.
- the volatile component (volatile device) 30 ⁇ / b> A includes a processing unit 310 and an internal potential monitoring device 320.
- the processing unit 310 includes a plurality of volatile registers 312.
- Volatile component 20A and normally-off computer 20C are connected to each other via interface 40A and input port 40B.
- the combination of the interface 40A and the input port 40B serves as a connection unit.
- the volatile component 30A is composed of an output device such as an LCD.
- the DMA module 240 functions as a transfer unit having a function of transferring data.
- the transfer unit 240 autonomously transfers the data stored in the nonvolatile storage unit 220 to the interface (connection unit) 40A. Since the return of the output device 30A such as an LCD is only output of setting data from the normally-off computer 20C, bidirectional data communication is not necessary, and the return procedure (return program) is simple. That is, at the time of startup, the return is completed only by transmitting the setting data from the normally-off computer 20C to the connection unit (interface) 40A at a certain timing.
- the normally-off computer 20C is provided with the DMA module 240 specialized for data transfer, so that the data stored in the nonvolatile memory 220 can be transferred to the DMA module without using the nonvolatile CPU 210. 240 sends directly to the interface 40A. As a result, it is possible to simultaneously save the memory area by reducing the return program and reduce the execution power. Further, in preparation for the case where the volatile device 30A has an internal potential monitoring device (operating potential monitor) 320, as shown in FIG. 6, an input port 40B that allows the signal output to be read, and each internal voltage A return time management unit 250 that manages signals from the monitors 230 and 320 to control the execution timing of the return program is prepared in the normally-off computer 20C.
- an internal potential monitoring device operating potential monitor
- the return time management unit 250 functions as a monitoring unit that monitors the execution state of the return program. Until the central processing unit 210 receives a signal indicating that the execution of the return program has been completed from the monitoring unit 250, the central processing unit 210 does not access the non-volatile components that are scheduled to execute the return program or that are being executed. Access after power-off operation is prohibited.
- the return time management unit 250 functions as a detection unit that notifies that the execution of the return program has been completed. The central processing unit 210 does not resume the processing executed before the power is turned off until receiving a signal from the detection unit 250 notifying that the return program has been executed.
- the input port 40B serves as a terminal for receiving a signal that notifies the state of the operating voltage inside the volatile component 30A.
- This signal is sent to the non-volatile CPU 210 via the return time management unit (monitoring unit) 250.
- the nonvolatile CPU 210 prohibits access to the volatile device 30A whose operating voltage has not reached the predetermined threshold voltage and execution of the return program. Therefore, the central processing unit 210 prohibits access to the nonvolatile component 30A and execution of the return program during a period in which the operating voltage of the nonvolatile component 30A does not reach the predetermined threshold voltage.
- the operating voltage of the non-volatile component 30A is higher than that of the normally-off computer 20C, or the vise size is large and the electric capacity (capacitance) of the power supply line is large.
- the third embodiment is also effective when the power source is different between the normally-off computer 20C and the volatile device 30A.
- the mixed system 10C includes a plurality of nonvolatile devices 30A.
- the non-volatile CPU 210 secures a memory area for controlling and monitoring access to each volatile device 30A in the non-volatile memory 220, and the non-volatile CPU 210 is a volatile device in which inaccessibility is set. Access to 30A is prohibited.
- the execution of the program code executed before the return from the power-off (by the non-volatile CPU 210) is restarted before the return of all the volatile devices is completed. This makes it possible to improve the sensation speed of return to the user.
- the normally-off computer 20C After the normally-off computer 20C is restored from the power-off state, the normally-off computer 20C executes the restart program (return program) according to the operation characteristics of the volatile component 30A that cannot be made non-volatile until the program code is restarted from the program code before the stop. Running.
- the volatile component 30A that cannot be made non-volatile is in a desired operation state or standby state, and normal data is exchanged between the normally-off computer 20C and the volatile component 30A that cannot be made non-volatile after restarting. Is executed. For this reason, it is possible to prevent the entire embedded system 10C from causing an error due to erroneous transmission of data. Since the restart program (return program) of the volatile component 30A is stored in the non-volatile memory 220 in the normally-off computer 20C, the execution from the return is fast, and the characteristics of the normally-off computer 20C are high. A certain high-speed return characteristic is not impaired even in the mixed loading system 10C.
- the normally-off computer according to the fourth embodiment of the present invention has the same configuration as that of the embedded system 10C shown in FIG. 6 except that the nonvolatile CPU 210 includes a plurality of nonvolatile CPU cores (not shown). And operate. Even in the case of a normally-off computer comprising a plurality of nonvolatile CPU cores, the nonvolatile CPU 210 controls and monitors access to each volatile device in the nonvolatile memory 220, as in the third embodiment described above. The non-volatile CPU 210 prohibits access to a volatile device set to be inaccessible.
- the execution of the program code executed before the return from power-off by another non-volatile CPU core is executed before the return of all volatile devices is completed. It can be resumed, and the speed of experiencing the return to the user can be improved.
- the normally-off computer executes the restart program (recovery program) according to the operation characteristics of volatile components that cannot be made non-volatile. Yes.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Abstract
Description
しかしながら、半導体集積回路は、電源供給が停止されると、不揮発性メモリを除いて、その内部状態が消去されてしまう。
このため、電源オフに先立って、保持しておきたいデータを外部記憶装置等に退避する必要がある。たとえば、特許文献1に記載されているコンピュータ・システムは、その構成要素の状態を保存する方法と、電源が完全に遮断された後の再開機能とについて開示している。特許文献1に開示されたコンピュータ・システムでは、コンピュータ・システム・コアの外部にある不揮発性記憶装置を使用して、サスペンド/レジューム機能のための状態情報を記憶している。特許文献1に開示されているコンピュータ・システムは、内部状態をコンピュータ・システム構成要素内の走査ラッチを使用して読み取る。読み取った内部状態は退避憶域に保存され、電源が遮断される。
また、特許文献2は、利用者の要求により、復帰に必要なメモリの内容とその他入出力装置の情報を外部記憶装置に退避し、必要なときに復帰させる「コンピュータ装置」を開示している。
特許文献3は、サスペンド処理前とレジューム処理後のデバイス管理情報の不整合を解消して、システムの安定性を向上させることのできる「情報処理装置」を開示している。特許文献3に開示された情報処理装置は、ハードウェアとして、CPU、メインメモリ、不揮発性メモリ、インタフェース部、拡張デバイス、ユーザインタフェース部、およびバスを含む。不揮発性メモリには、サスペンド処理プログラム、レジューム処理プログラム、デバイス管理テーブルなどが格納されている。サスペンド処理プログラムは、システムの終了前に少なくとも、プログラムがロードされたメインメモリの内容をサスペンドデータとして不揮発性メモリに退避させる。レジューム処理プログラムは、システムの起動時に不揮発性メモリに退避されたサスペンドデータをメインメモリに復帰させるとともに、インタフェース部に接続された1以上の拡張デバイスを検出し、検出結果とデバイス管理テーブルとを比較し、デバイス管理テーブルにのみ存在する拡張デバイスのデバイス識別情報をデバイス管理テーブルから削除する。
特許文献4は、内部情報を保持しつつ、消費電力が低減された待機モードに高速に移行できる「半導体装置」を開示している。特許文献4に記載されている半導体装置は、不揮発メモリと書き込み回路とを備えたラッチ回路を備え、電源オフに先立ち、ラッチ回路の揮発的なデータを、不揮発メモリに書き込むことを特徴としている。特許文献4に記載の半導体装置は、不揮発メモリセルを付加することにより、複雑な転送動作が不要で高速にデータを退避できる。
特許文献5は、起動直後の電源断をなくし、快適な操作環境を提供することができる「携帯端末機」を開示している。特許文献5に記載されている携帯端末機は、CPUと入出力装置からなる主制御部と、主制御部を動作させるプログラムを記憶したROMと、ユーザアプリケーションを記憶したRAMと、駆動用電源となる主電池と、主電池から電源を入り切りする電源スイッチと、主電池の電圧を検出し主制御部に電圧データを送る電圧検出部とを備える。主制御部は、電源投入後から所定時間内に主電池の電圧が規定電圧以上になるとユーザアプリケーションを実行し、所定時間内に主電池の電圧が規定電圧以上にならないと電源スイッチを切る。
上記特許文献2に開示されたコンピュータ装置では、中央処理装置やメモリが揮発性素子で構成されているので、メモリの内容を外部記憶装置に退避し、必要なときに復帰させなればならない。そのため、上記特許文献1と同様に、特許文献2でも、電源のオン/オフを高頻度に行った場合には、データ転送に伴う時間遅延や消費電力が大きくなってしまう。
上記特許文献3に開示された情報処理装置においても、システムの終了前に、メインメモリの内容をサスペンドデータとして不揮発性メモリに退避させ、システムの起動時に不揮発性メモリに退避されたサスペンドデータをメインメモリに復帰させる必要がある。そのため、上記特許文献1、2と同様に、特許文献3でも、電源のオン/オフを高頻度に行った場合には、データ転送に伴う時間遅延や消費電力が大きくなってしまう。
上記特許文献4に開示された半導体装置においても、電源オフ時に、揮発的なデータを不揮発メモリに退避する必要がある。したがって、特許文献4においては、電源のオン/オフを高頻度に行った場合には、データ転送に伴う消費電力が大きくなってしまう。
上記特許文献5に開示された携帯端末機では、CPUやRAMが揮発性素子で構成されている。そして、特許文献4に開示された携帯端末機では、単に、主電池の電圧を検出し、その検出した電圧が規定電圧以上であれば、RAMに格納されたユーザアプリケーションプログラムを動作させるためのイニシャル処理を行い、ユーザアプリケーションプログラムを実行しているに過ぎない。
そこで、演算処理装置の内部で保有するデータを、当該演算処理装置に接続した外の装置(例えば、外部記憶装置などの不揮発性メモリ)に退避させずに、電源のオフ、オン動作後も継続してデータを処理出来る演算処理装置の開発が進められている。ここでは、そのような演算処理装置を、以降では「ノーマリーオフコンピュータ」と呼ぶことにする。このようなノーマリーオフコンピュータは、不揮発性レジスタを有する不揮発性CPUと、不揮発性メモリとを含む。尚、不揮発性CPUは、電源をオフしたときに消失しても構わないデータを保存するための揮発性レジスタを含んでもよい。
ノーマリーオフコンピュータは、演算処理がない場合に電源をオフにして、リーク電流を抑えることが出来るので、省電力なシステムを実現する有効な装置である。例えば、センサデバイスのように電池で動作する端末においては、メンテナンスの点で電池の交換頻度を下げることが重要であり、かつ、センサデバイスの待機時間が動作時間と比べると非常に長い。そのため、未使用時に電源オフによる省電力効果が大きく、端末に上記のノーマリーオフコンピュータを使うことが特に適している。
理想的には、システムを実現するハードウェア(デバイス)の揮発性素子をすべて不揮発性素子に交換して、ノーマリーオフコンピュータにすることが望ましい。しかしながら、実際のハードウェアは部品化・汎用化されているので、複数のデバイス(部品)が規格化されたインターフェースを通して相互接続して使用される。そのため、各部品で製造プロセスが違う問題から、すべての部品がノーマリーオフコンピュータシステムに対応した(電源のオン・オフ動作に対応できる)仕様にはなっていない。
このため、複雑な制御システムを動作させるボリュームの大きなハードウェアでは、複数のデバイス(部品)として、ノーマリーオフコンピュータ対応部品と、ノーマリーオフコンピュータ非対応部品とが混在する混載システムとなる。
ノーマリーオフコンピュータ対応部品では、プログラム実行中の好きなタイミングで電源をオン、オフしても、復帰直後からコードは復帰前から再開する。これに対して、ノーマリーオフコンピュータ非対応部品では、電源オフ動作によって設定情報を忘れてしまう。従って、上記混載システムでは、復帰後にノーマリーオフコンピュータ対応部品からノーマリーオフコンピュータ非対応部品にアクセスが入ると、間違ったデータの送受信が行われて、システム全体がエラーを起こす可能性がある。
本発明の課題は、揮発性部品(ノーマリーオフコンピュータ非対応部品)を接続されたノーマリーオフコンピュータが、電源のオン・オフ作業を実行した後でも、正常に、かつ、高速に動作することを保障するための技術を提供することにある。
図2は、揮発性部品との混載システムが可能な、本発明の第1の実施例に係るノーマリーオフコンピュータを示すブロック図である。
図3は、揮発性部品との混載システムが可能な、図2に示したノーマリーオフコンピュータの制御方法を説明するためのシーケンス図である。
図4は、複数の揮発性部品との混載システムが可能な、本発明の第2の実施例に係るノーマリーオフコンピュータを示すブロック図である。
図5は、複数の揮発性部品との混載システムが可能な、図4に示したノーマリーオフコンピュータの制御方法を説明するためのシーケンス図である。
図6は、復帰手段の実行タイミングを制御する復帰時期管理部を有する、本発明の第3の実施例に係るノーマリーオフコンピュータを示すブロック図である。
本発明の理解を容易にするために、本発明の関連技術について説明する。
図1は、ノーマリーオフコンピュータ対応部品と、ノーマリーオフコンピュータ非対応部品とが混在する、関連の混載システム10を示すブロック図である。
混載システム10は、電源スイッチ12を介して電源14に接続されている。図示の混載システム10は、ノーマリーオフコンピュータ20と、第1および第2の揮発性部品31、32とを含む。ノーマリーオフコンピュータ20と、第1および第2の揮発性部品31、32とは、それぞれ、第1および第2の接続部41、42を介して相互に接続されている。
図示はしないが、ノーマリーオフコンピュータ20は、レジスタを有するCPUと、メモリとから構成されている。ノーマリーオフコンピュータ20では、CPUのレジスタ、メモリのすべてが不揮発性素子で構成されている。
これに対して、第1および第2の揮発性部品31、32の各々は、ハードウェア(デバイス)として揮発性素子を含む、ノーマリーオフコンピュータ非対応部品からなる。
前述したように、ノーマリーオフコンピュータ20では、プログラム実行中の好きなタイミングでオン、オフしても、復帰直後からコードは復帰前から再開する。これに対して、ノーマリーオフコンピュータ非対応部品である第1およひ第2の揮発性部品31、32では、電源オフ動作によって設定情報を忘れてしまう。従って、混載システム10では、復帰後にノーマリーオフコンピュータ20からノーマリーオフコンピューター非対応部品31、32にアクセスが入ると、間違ったデータの送受信が行われて、システム全体がエラーを起こす可能性がある。
本発明は、揮発性部品(ノーマリーオフコンピュータ非対応部品)を接続されたノーマリーオフコンピュータが、電源のオン・オフ作業を実行した後でも、正常に、かつ、高速に動作することを保障するための技術である。
[実施の形態]
次に、本発明の実施の形態について説明する。
本発明の実施の形態に係る演算処理装置は、不揮発性レジスタを有し、装置内部で保有するデータを外部装置に退避させずに電源のオフ、オン動作を介しても継続してデータを処理出来る演算処理装置である。
本発明の実施の形態に係る演算処理装置は、上記不揮発性レジスタを合む中央演算部と、内部情報を揮発性記憶素子で保存する揮発性部品との接続部と、揮発性部品の電源オフ状態からの復帰プログラムを保存するための不揮発性記憶部と、復帰時に演算処理装置内の電源電位が動作電位に達したことを知らせる検査部と、を少なくとも有する。そして、中央演算部は、検査部からの通知信号によって、不揮発性記憶部から揮発性部品の復帰プログラムをロードし、実行する。詳述すると、中央演算部は、復帰プログラムをもとに、ある電源スイッチ(ハード)のオフ地点から初期コードまでを実行する。
尚、演算処理装置は、電源のオフ、オン動作後も継続してデータを処理出来れば良いので、前述したように、中央演算部は、電源をオフしたときに消失しても構わないデータを保存するための揮発性レジスタを含んでもよい。
内部情報を揮発性記憶素子で保存する揮発性部品との上記接続部は、複数あっても良い。不揮発性記憶部の部品数(情報量:記憶容量)を減らすために、接続された複数の揮発性部品のそれぞれに対応したオフ状態からの復帰プログラムを、接続されている揮発性部品よりも少ない数で、不揮発性記憶部において共用させても良い。
本発明の実施の形態に係る演算処理装置において、上記中央演算部は、不揮発性記憶部に保存する命令とデータを書き換えることで異なる処理を実行できるため、演算処理装置としての汎用性が高まる。なお、中央演算部は2つ以上あることがさらに望ましい。そのような構成の場合、検査部からの通知信号によって、1つの中央演算部が復帰プログラムを実行する間、それ以外の中央演算部に復帰前に中断したコードの実行を再開させる。これにより復帰時間を短縮化することが出来る。
また、本発明の実施の形態に係る演算処理装置は、データを転送する機能を有する転送部を有しても良い。この場合、検査部からの動作電位に達したことを知らせる信号に応答して、転送部は、自立的に不揮発性記憶部に保存されたデータを揮発性部品との接続部に転送する。その間、中央演算部が上記復帰プログラムの実行中に並行して復帰前に中断したコードを再開しても良い。この場合も復帰時間を短縮化することが出来る。
揮発性部品との上記接続部は、揮発性部品の内部の動作電圧、もしくは、動作電圧が所定の閾値電圧に達したことを通知する出力信号を受信するための入力端子を備えていても良い。そのような構成によって、中央演算部は、揮発性部品の内部の動作電圧が所定の閾値電圧に達していない期間中、揮発性部品へのアクセス、および、復帰プログラムの実行を禁止する。動作電圧の立ち上がりが演算処理装置よりも遅い揮発性部品を接続する場合の誤アクセス防止に有効である。
復帰プログラムの実行と復帰前に中断したコードの実行を並行して進める場合、本発明の実施の形態に係る演算処理装置は、復帰プログラムの実行状態を監視する監視部を持って良い。この場合、中央演算部は、監視部から復帰プログラムの実行が完了した信号を受け取るまで復帰プログラムを実行する予定、もしくは、実行中の前記揮発性部品に対して、復帰プログラムの実行に必要なアクセスを除いて電源のオフ動作後のアクセスを禁止する。これにより、揮発性部品の復帰完了に先行して、揮発性部品と演算処理装置の間でデータの授受が行われるのを防ぐことが出来る。
なお、本発明の実施の形態に係る演算処理装置は、復帰プログラムの実行がすべて完了したことを知らせる検知部を備えて良い。この場合、中央演算部は、検知部から復帰プログラムが実行完了したことを知らせる信号を受け取るまで、電源のオフ前に実行していた処理を再開しないようにできる。立ち上げ時間(応答性)に対する要求が厳しくない場合は、揮発性部品毎の復帰状態を逐次把握する必要がなくなり、制御回路、もしくは、制御プログラムが簡略化する。
本発明の実施の形態に係る演算処理装置を制御する方法は、一つの揮発性部品に対して復帰状態に応じた複数の復帰プログラムを上記不揮発性記憶部に保存し、中央演算部が、複数の復帰プログラムから復帰状態に応じて復帰プログラムを選択的にロードして実行しても良い。これにより、重複する復帰プログラムを省略して、復帰の高速化、および、省電力化を実現出来る。
また、接続する揮発性部品が複数ある場合、本発明の実施の形態に係る演算処理装置を制御する方法は、一つの揮発性部品iに対して復帰状態jに応じた複数の復帰プログラムP(i,j)と、他の1つの揮発性部品kに対して復帰状態lに応じた複数の復帰プログラムP(k,l)と、復帰すべき演算処理装置の状態に対して各復帰プログラムが適切な状態に復帰するプログラムを選択し制御する全体状態制御プログラムと、を共に上記不揮発性記憶部に保存し、中央演算部が、復帰時に全体状態制御プログラムを上記不揮発性記憶部からロードして実行する。なお、本発明の実施の形態に係る演算処理装置を制御する方法では、中央演算部が、復帰時に、先行して実施した揮発性部品iの復帰プログラムP(i,j)の結果に応じて、他の揮発性部品kの複数の復帰プログラムP(k,l)から最適な復帰プログラムを選択する。
本発明の実施の形態に係る演算処理装置を制御する方法は、各復帰プログラムの復帰状態に応じた優先順位を復帰プログラムと共に上記不揮発性記憶装置に保存し、中央演算部が、復帰時に優先順位に従って上記不揮発性記憶装置から復帰プログラムをロードして実行しても良い。このような構成によれば、ある揮発性部品iから取得出来る復帰後のデータ取得に従って、別の揮発性部品kの復帰プログラムP(k,l1)、P(k,l2),,,を選択することで、揮発性部品kの復帰に不必要な復帰プログラムを省略することが可能であり、復帰の高速化、および、省電力化を実現出来る。
次に、本発明の実施の形態に係る演算処理装置と、上述した特許文献1~5に開示されたCPUなとの演算処理装置との相違点について説明する。
特許文献1~5に開示された演算処理装置は、揮発性レジスタで構成されたCPUなどの演算処理装置である。
これに対して、本発明の実施の形態は、不揮発性レジスタを備えた演算処理装置に対しての復帰技術に関する発明である。不揮発性レジスタを備えた演算処理装置自体は、サスペンド処理やレジューム処理などの、復帰プログラムを不揮発性メモリに保存することはない。何故なら、本実施の形態に係る演算処理装置は、処理データを退避させずに、電源のオン、オフに対して何事もなかったかのように、電源のオフ前の動作を継続して実行出来るからである。
すなわち、本発明の実施の形態は、不揮発性レジスタを備えた演算処理装置に関する技術であって、揮発性レジスタを有する揮発性部品が接続された「混載システム」に使用しても、不揮発性レジスタを備えた演算処理装置が正常に動作するようにする(システムエラーを発生させない)技術である。
図2は、揮発性部品30−iとの混載が可能な混載システム10Aに用いられる、ノーマリーオフコンピュータ20Aを示すブロックである。図3は、ノーマリーオフコンピュータ20Aの制御方法を説明するためのシーケンス図である。
ノーマリーオフコンピュータ20Aは、不揮発性レジスタを有し、装置内部で保有するデータを外部装置に退避させずに電源のオフ、オン動作を介しても継続してデータを処理出来る。ノーマリーオフコピュータ20Aは、不揮発性CPU210と不揮発性メモリ220とを含む。図示の例では、不揮発性CPU210は、揮発性レジスタを含まずに複数の不揮発性レジスタ212を有する。しかしながら、不揮発性CPU210は、電源オフ時に消失しても構わないデータを保存するための揮発性レジスタ(図示せず)を含んでも良い。
ノーマリーオフコンピュータ20Aは、揮発性部品30−iとの接続部40−iを有する。図示の例では、揮発性部品30−iは入出力デバイスから成る。
不揮発性メモリ220は、プログラム222と、データ224と、揮発性部品30−iの電源オフ状態からの復帰プログラム226−iと、復帰プログラム制御プログラム228と、を保存している。
したがって、不揮発性メモリ220は、揮発性部品30−iの電源オフ状態からの復帰プログラム226−iを保存するための不揮発性記憶部として働く。
ノーマリーオフコンピュータ20Aは、内部電位監視装置230を更に備える。この内部電位監視装置230は、復帰時にノーマリーオフコンピュータ20Aの内部の電源電位が動作電位に達したことを検知する(知らせる)電源電圧モニタ回路(検査部)として働く。ノーマリーオフコンピュータ20Aの不揮発性CPU210は、電源電圧モニタ回路(検査部)230からの通知信号によって、不揮発性メモリ220から揮発性部品(入出力デバイス)30−iの復帰プログラム制御プログラム228(復帰プログラム226−i)をロードし、実行する。
すなわち、不揮発性CPU210は、検査部230からの通知信号によって不揮発性記憶部220から復帰プログラム226−iをロードし、実行する中央処理部として働く。
図示の例では、ノーマリーオフコンピュータ20Aには、揮発性部品(入出力デバイス)30−iとして、表示デバイスのLCD(liquid crystal display)が接続されている。また、LCD30−iへの電源ソースは、ノーマリーオフコンピュータ20Aと共通になっている。
LCD30−iでは、表示の輝度や解像度などの条件を内部の揮発性レジスタ(図示せず)に保有している。LCD30−iは、外部とはUART(Universal Asynchronous Receiver Transmitter)などのシリアル通信を介して上記揮発性レジスタの設定や表示データの授受を行っている。電源をオフにした際には、LCD30−iは、電源のオフ前に設定した画面の設定条件を喪失し、デフォルトの設定に戻ってしまう。
なお、上記のように動作条件などの設定情報を揮発性記憶素子からなるレジスタで保存しているデバイスを、ここでは「揮発性デバイス」と呼ぶことにする。したがって、図示の例では、揮発性部品(入出力デバイス)30−iが揮発性デバイスである。
次に、図2に加えて図3をも参照して、ノーマリーオフコンピュータ20Aを制御する制御方法について説明する。
ここでは、入出力デバイス30−iを「入出力デバイスi」で示し、入出力デバイス30−iの電源オフ状態からの復帰プログラム226−iを「復帰プログラムP(i)」で示すことにする。
図3に示されるように、不揮発性CPU210にロードされたプログラム222は、入出力デバイスiを利用し(ステップS101)、復帰プログラムP(i)を指定する(ステップS102)。換言すれば、プログラム222は、入出力デバイスi用の復帰プログラムを復帰プログラムP(i)として、ノーマリーオフコンピュータ20A内の不揮発性メモリ220中に定義する。
ユーザは、ノーマリーオフコンピュータ20Aと外部接続した揮発性デバイス30−iからなる混載システム10A全体を、任意のタイミングで未使用時に電源をオフさせて、待機電力を抑制する。これにより、プログラム222が停止する(ステップS103)。
また、ユーザは、使用時に混載システム10Aの電源をオンにして処理を再開する。
ノーマリーオフコンピュータ20Aが電源オフ状態から電源オン状態になる時、内部電位監視装置(電源電圧モニタ回路)230がノーマリーオフコンピュータ20Aの電源電位が動作電位Vthに達したことを検知する(ステップS104)。この検知をトリガとして、不揮発性CPU210にロードされた復帰プログラム制御プログラム228は、不揮発性メモリ220に保存してある表示デバイス30−iの電源オフ状態からの復帰プログラムP(i)を実行して(ステップS105)、表示デバイス30−iの状態を、電源がオフされる前の状態に復帰させる。復帰プログラム制御プログラム228の終了を確認、もしくは、表示デバイス30−i側からの設定レディー信号を受け取った後、不揮発性CPU210にロードされたプログラム222は、電源オフする前に実行していた処理を再開する(ステップS106)。
このように、ノーマリーオフコンピュータ20Aの復帰時には、ノーマリーオフコンピュータ20Aの内部にある内部電位監視装置230から、電源電圧が動作電圧Vthに達したことを通知する信号によって、不揮発性CPU210が復帰プログラムP(i)の実行を開始し、入出力デバイスiの状態を停止時直前まで復帰させる。そして、復帰を確認後、不揮発性CPU210は、電源オフ前に実行していたプログラムコードを再開する。
上述したように、実行していた処理を再開した後に、表示デバイス30−iにアクセスしても、上記表示デバイス30−iはオフする前と同じ状態に戻っているため、ノーマリーオフコンピュータ20Aは、混載システム10A全体の電源オン、電源オフを挟んでも、電源オン・オフ動作を挟まなかったときと同じように、処理動作を継続することが出来る。
従って、ユーザは任意のタイミングで安心して電源をオフにすることが出来るため、動作が不要と判断したときはこまめに電源を切ってリーク電流を削減し、省電力を実現することができる。
次に、本発明の第1の実施例の効果について説明する。
ノーマリーオフコンピュータ20Aの電源オフからの復帰後、停止前のプログラムコードから再開するまでに、ノーマリーオフコンピュータ20Aは、不揮発にできない揮発性部品30−iの動作の特性に従って再開プログラム(復帰プログラム226−i)を実行している。このため、不揮発にできない揮発性部品30−iは、所望の動作状態、もしくは、待機状態になっており、再開後にノーマリーオフコンピュータ20Aと不揮発にできない揮発性部品30−iとの間で正常なデータの授受が実行される。このため、データの誤送信によって混載システム10A全体がエラーを起こすことを防ぐことが出来る。揮発性部品30−iの再開プログラム(復帰プログラム226−i)は、ノーマリーオフコンピュータ20A内の不揮発性メモリ220に格納されているために、復帰からの実行が高速であり、ノーマリーオフコンピュータ20Aの特性である高速な復帰特性を、混載システム10Aであっても損なうこともない。
図4は、第1乃至第m(mは2以上の整数)の揮発性部品30−1~30−mとの混載が可能な混載システム10Bに用いられる、ノーマリーオフコンピュータ20Bを示すブロックである。図5は、ノーマリーオフコンピュータ20Bの制御方法を説明するためのシーケンス図である。
ノーマリーオフコンピュータ20Bは、第1乃至第mの揮発性部品30−1~30−mに、それぞれ、第1乃至第mの接続部40−1~40−mを介して接続されている。
図示のノーマリーオフコンピュータ20Bは、不揮発性メモリの構成が、図2に示したものと相違する点を除いて、図2に示したノーマリーオフコンピュータ20Aと同様の構成を有し、動作をする。従って、不揮発性メモリに220Aの参照符号を付してある。以下では、図2に示した構成要素と同様の機能を有するものには同一の参照符号を付して、説明の簡略化のためにそれらについての説明を省略する。
不揮発性メモリ220Aは、プログラム222と、データ224と、第1乃至第mの揮発性部品30−1~30−mの電源オフ状態からの複数の復帰プログラム226−(1−1)、226−(2−1)、・・・、226−(m−n)と、復帰プログラム制御プログラム228Aと、を保存している。図示の例では、複数の復帰プログラム226−(1−1)、226−(2−1)、・・・、226−(m−n)を、それぞれ、復帰プログラムP(1,1)、P(2,1)、・・・、P(m,n)として区別して示している。
したがって、不揮発性メモリ220Aから成る不揮発性記憶部は、一つの揮発性部品iに対して復帰状態jに応じた複数の復帰プログラムP(i,j)と、他のある揮発性部品kに対して復帰状態lに応じた複数の復帰プログラムP(k、l)とを保存している。ここで、i≠kであり、j≠lである。
復帰プログラム制御プログラム228Aは、後述するように、復帰すべき演算処理装置20Bの状態に対して、各揮発性部品を適切な状態に復帰する一つの復帰プログラムを選択し制御する全体状態制御プログラムとして働く。
したがって、不揮発性記憶部220Aは、複数の復帰プログラムP(i,j)と、複数の復帰プログラムP(k、l)と、全体状態制御プログラム228Aとを保存している。
中央演算部210は、復帰時に全体状態制御プログラム228Aを不揮発性記憶部220Aからロードして実行する。後述するように、中央演算部210は、復帰時に、先行して実施した揮発性部品i用の復帰プログラムP(i,j)の結果に応じて、他の揮発性部品k用の複数の復帰プログラムP(k,l)から一つの最適な復帰プログラムを選択する。
以下の説明では、mが4に等しく、混載システム20Bが第1乃至第4の揮発性部品30−1,30−2,30−3,および30−4を備えているとする。第1乃至第4の揮発性部品30−1~30−4は、それぞれ、第1乃至第4の入出力デバイス或いは第1乃至第4の揮発性デバイスとも呼ばれる。
具体的には、ノーマリーオフコンピュータ20Bには、第1乃至第4の揮発性デバイス30−1~30−4として、それぞれ、揮発性の設定レジスタを持つインターネット接続用の通信デバイス(ネットワークデバイス)、位置センサ(GPS)、LCD、および加熱型の流量センサが接続されている。これらのモジュールの電源ソースは、ノーマリーオフコンピュータ20Bと共通になっている。
第1の揮発性デバイス(ネットワークデバイス)30−1では、IP(internet protocol)アドレスをDHCP(Dynamic Host Configuration Protocol)で自動的に設定させている。接続されたネットワークデバイス30−1は、ネットワークの使用を開始するとき、IPアドレスをDHCPサーバから取得し、終了するとIPアドレスを戻す。ネットワークデバイス30−1は、ハードウェア上の通信パラメータの設定や物理層での通信を確保する初期化のステップ1と、DHCPを実行してIPアドレスを取得するステップ2、アプリケーションプログラムの初期設定であるステップ3という、3つのステップを踏む。
ネットワークデバイス30−1が、ネットワークの使用を終了してから長時間ある電源オフ状態にあり、そこから電源オン状態に復帰するときにはIPアドレスを取得する必要がある。そのため、不揮発性CPU210は、ステップ2、ステップ3を実行する復帰プログラムP(1,A)を実行する。
しばらくして2回目の電源オフ、電源オン動作を行う場合、ステップ2で実行したDHCPで獲得されるIPアドレスは、ノーマリーオフコンピュータ20Bの不揮発性メモリ220Aによって保持されている。2回目の電源オン、電源オフとの間の期間が短い場合は、IPアドレスがネットワーク上でも有効であるため、ネットワークデバイス30−1は、ステップ2を実行しない復帰プログラムP(1,B)で復帰することが出来る。
したがって、不揮発性記憶部220Aは、一つの揮発性部品30−1に対して復帰状態に応じた複数の復帰プログラムP(1,A)およびP(1,B)を保存している。
不揮発性CPU210は、復帰プログラムP(1,A)と復帰プログラムP(1、B)との選択を、ネットワークデバイス30−1が電源オフになっている時間に依存して実施する。
したがって、中央演算部210は、複数の復帰プログラムP(1、A)およびP(1、B)から復帰状態に応じて一つの特定の復帰プログラムを選択的にロードして実行する。
不揮発性CPU210は、2回目の電源オフ、電源オンとの間の期間が、あるネットワーク上のDHCPによるIPアドレスの更新サイクル期間より短い場合は、復帰プログラムP(1,B)を特定の復帰プログラムとして選択し、長い場合は、復帰プログラムP(1,A)を特定の復帰プログラムとして選択する、というように切り替える。このようにすることで、不必要なDHCPの実行処理を減らすことが出来るため、ノーマリーオフコンピュータ20B内での処理や通信量の低減による省電力化が実現出来る。
このように、中央演算部210は、複数の復帰プログラムP(1、A)、P(1、B)から最も短い時間で復帰できる一つの特定の復帰プログラムを選択的にロードして実行する。
ノーマリーオフコンピュータ20Bに位置センサ(第2の不揮発性デバイス30−2)が接続されているため、第2の不揮発性デバイス30−2の復帰プログラムP(2,A)を第1の不揮発性デバイス30−1の復帰プログラムP(1、A)、P(1、B)よりも優先するように、あらかじめ復帰プログラムP(1、A)、P(1、B)、P(2、A)に優先順位をつけておく。そして、1回目の電源オン、電源オフと、2回目の電源オン、電源オフ時で、位置情報が変っている場合に、優先して復帰プログラムP(2,A)を実行する。ノーマリーオフコンピュータ20Bが、通信環境の変化を自立的に感知するため、IPアドレスなどの無効化による戻り工数を低減し、省電力化を図ることが出来る。
このように、不揮発性記憶部220Aは、各復帰手段の復帰状態に応じた優先順位を付けた復帰プログラムを保存する。そして、中央演算部210は、復帰時に優先順位に従って復帰プログラムを不揮発性記憶部220Aからロードして実行する。
なお、LCD(第3の揮発性デバイス30−3)は、ノーマリーコンピュータ20BとUARTを介して、データをやり取りする。UARTには、送受信用レジスタ(揮発性レジスタ)にデータを書き込むことでデータの授受が可能であるが、送受信用レジスタ(揮発性レジスタ)への書き込みや読み出し動作の間は、不揮発性CPU210などの計算リソースが余る。従って、不揮発性CPU210は、時分割で並列して他の揮発性デバイスの復帰処理を実行し、復帰の高速化を図る。
加熱型の流量センサ(第4の揮発性デバイス30−4)は、復帰時にある程度のアイドリング時間(ヒータが温まる時間)が必要である。従って、復帰プログラム制御プログラム228Aに従って流量センサ30−4の設定パラメータを送信して設定する以外の復帰待機時間が発生する。
従って、このアイドリング時間も、不揮発性CPU210などの計算リソースを他の揮発性デバイスの復帰プログラムの実行に利用する。特に、アイドリング時間が復帰による制御パラメータの設定時間よりも長く、復帰させる必要のある揮発性デバイスが複数あるので、不揮発性CPU210は、流量センサ30−4の復帰プログラムを他の揮発性デバイスの復帰プログラムよりも優先して実行する。このことで、復帰開始から必要な揮発デバイスがすべて立ち上がるまでの時間を短縮することが出来る。
このように、中央演算部210は、復帰時間の最も長い揮発性部品i(本例では、流量センサ30−4)用の復帰プログラムP(i,j)を復帰時に優先的に不揮発性記憶部220Aからロードして実行する。
なお、第2の実施例では、複数の揮発性デバイス30−1~30−mを、インターネット接続用の通信デバイス、位置センサ(GPS)、LCD、加熱型の流量センサとしたが、接続する揮発性デバイスの種類を限定するものではない。プログラム222が各揮発性デバイス30−i(1≦i≦m)をアクセスした時に、このアクセス時への復帰に必要な情報を、復帰プログラムP(i)に復帰する情報として、不揮発性メモリ220A中に保存してあれば良い。
なお、揮発性デバイス30−iの復帰に必要な情報(以下、復帰情報と呼ぶ)が、復帰条件(j)によって異なる場合は、不揮発性メモリ220A中にその復帰情報を復帰プログラムP(i、j)として保存する。復帰情報(復帰プログラム)は、iとjでラベリングしてインデクス検索ができるようにしてあれば良い。
図5に示されるように、第1の揮発性デバイス30−1、第2の揮発性デバイス30−2の復帰時の手順を、それぞれ、復帰プログラムP(1,A)、復帰プログラムP(1,B)、復帰プログラムP(2,A)として指定し(ステップS101A)、第1の入出力デバイス30−1に対して復帰時の状態に合わせて一つの最適な復帰プログラムP(1,x)(xは、A又はB)が選択され、復帰プログラムP(1,x)と復帰プログラムP(2,A)の実行手順も、復帰時の状態やデバイスの復帰特性に合わせて最適化されていれば良い。
次に、本発明の第2の実施例の効果について説明する。
ノーマリーオフコンピュータ20Bの電源オフからの復帰後、停止前のプログラムコードから再開するまでに、ノーマリーオフコンピュータ20Bは、揮発にできない複数の揮発性部品30−1~30−mの動作の特性に従って再開プログラム(復帰プログラム)を実行している。このため、不揮発にできない複数の揮発性部品30−1~30−mは、所望の動作状態、もしくは、待機状態になっており、再開後にノーマリーオフコンピュータ20Bと不揮発にできない複数の揮発性部品30−1~30−mとの間で正常なデータの授受が実行される。このため、データの誤送信によって混載システム10B全体がエラーを起こすことを防ぐことが出来る。これら複数の揮発性部品30−1~30−m用の再開プログラム(復帰プログラム)は、ノーマリーオフコンピュータ20B内の不揮発性メモリ220Aに格納されているために、復帰からの実行が高速であり、ノーマリーオフコンピュータ20Bの特性である高速な復帰特性を、混載システム10Bであっても損なうこともない。
図6は、ノーマリーオフコンピュータ20Cと揮発性部品(揮発性デバイス)30Aとが混在した混載システム10Cを示すブロックである。
図2に示した構成要素と同様の機能を有するものには同一の参照符号を付し、説明の簡略化のために、それらの詳細な説明については省略する。
ノーマリーオフコンピュータ20Cは、不揮発性CPU210、不揮発性メモリ220、および内部電位監視装置230の他に、DMA(Direct Memory Access)モジュール240と復帰時期管理部250とを更に備える。不揮発性CPU(中央演算部)210と不揮発性メモリ220とDMAモジュール240との組み合わせは、処理部260と呼ばれる。
揮発性部品(揮発性デバイス)30Aは、処理部310と内部電位監視装置320とを備える。処理部310は、複数の揮発性レジスタ312を有する。揮発性部品20Aとノーマリーオフコンピュータ20Cとは、インターフェース40Aおよび入力ポート40Bを介して互いに接続されている。インターフェース40Aと入力ポート40Bとの組み合わせは、接続部として働く。図示の例では、揮発性部品30AがLCDなどの出力デバイスから成る。
DMAモジュール240は、データを転送する機能を有する転送部として働く。検査部230からの動作電位に達したことを知らせる信号に応答して、転送部240は、自立的に不揮発性記憶部220に保存されたデータをインターフェース(接続部)40Aに転送する。
LCDなどの出力デバイス30Aの復帰は、ノーマリーオフコンピュータ20Cからの設定データ出力のみであるので、双方向のデータ通信が必要ではなく、復帰手順(復帰プログラム)が単純である。すなわち、立ち上げ時にノーマリーオフコンピュータ20Cから接続部(インターフェース)40Aに設定データを一定のタイミングで送信するだけで復帰が完了する。
そこで、本第3の実施例では、ノーマリーオフコンピュータ20Cにデータ転送に特化したDMAモジュール240を具備させることで、不揮発性CPU210を使わずに不揮発性メモリ220に保存されたデータをDMAモジュール240によって、直接、インターフェース40Aに送り込む。これにより、復帰プログラムの縮小によるメモリ領域の節約と、実行電力の削減とを同時に実現できる。
また、揮発性デバイス30Aが内部電位監視装置(動作電位モニタ)320を有している場合に備えて、図6に示すように、その信号出力を読み取れるようにする入力ポート40Bと、各内部電圧モニタ230、320からの信号を管理して復帰プログラムの実行タイミングを制御する復帰時期管理部250とを、ノーマリーオフコンピュータ20Cの内部に用意しておく。
復帰時期管理部250は、復帰プログラムの実行状態を監視する監視部として働く。中央演算部210は、監視部250から復帰プログラムの実行が完了した信号を受け取るまで、復帰プログラムを実行する予定もしくは実行中の不揮発性部品に対して、復帰プログラムの実行に必要なアクセスを除いて電源のオフ動作後のアクセスを禁止する。
また、復帰時期管理部250は、復帰プログラムの実行がすべて完了したことを知らせる検知部として働く。中央演算部210は、上記検知部250から復帰プログラムが実行完了したことを知らせる信号を受け取るまで、電源のオフ前に実行していた処理を再開しない。
入力ポート40Bは、揮発性部品30A内部の動作電圧の状態を通知する信号を受信するための端子として働く。この信号は、復帰時期管理部(監視部)250を介して、不揮発性CPU210へ送られる。不揮発性CPU210は、動作電圧が所定の閾値電圧に達していない揮発性デバイス30Aへのアクセス、および、復帰プログラムの実行を禁止する。したがって、中央演算部210は、不揮発性部品30Aの動作電圧が所定の閾値電圧に達していない期間中、不揮発性部品30Aへのアクセスおよび復帰プログラムの実行を禁止する。
本第3の実施例では、不揮発性部品30Aの動作電圧がノーマリーオフコンピュータ20Cよりも高い、もしくは、バイスサイズが大きく電源線の電気容量(キャパシタンス)が大きい場合で、かつ、電源線内のインピーダンスが十分低くなっていない場合において、不揮発性部品30Aの動作電圧の立ち上がりがノーマリーオフコンピュータ20Cよりも遅くなってしまった揮発性デバイス30Aへの誤アクセスを防止する。
なお、本第3の実施例は、ノーマリーオフコンピュータ20Cと揮発性デバイス30Aで電源ソースが異なる場合にも同様に有効である。
なお、混載システム10Cが複数の不揮発性デバイス30Aを備えているとする。この場合、不揮発性CPU210は、不揮発性メモリ220に、各揮発性デバイス30Aへのアクセスを制御、監視するためのメモリ領域を確保し、不揮発性CPU210は、アクセス不可が設定されている揮発性デバイス30Aへのアクセスを禁止する。これにより、DMAモジュール240による復帰と並行しながら、(不揮発性CPU210による)電源オフからの復帰前に実行していたプログラムコードの実行を、すべての揮発性デバイスの復帰が終わる前から、再開することが可能になり、ユーザに対する復帰の体感速度を向上させることが出来る。
次に、本発明の第3の実施例の効果について説明する。
ノーマリーオフコンピュータ20Cの電源オフからの復帰後、停止前のプログラムコードから再開するまでに、ノーマリーオフコンピュータ20Cは、不揮発にできない揮発性部品30Aの動作の特性に従って再開プログラム(復帰プログラム)を実行している。このため、不揮発にできない揮発性部品30Aは、所望の動作状態、もしくは、待機状態になっており、再開後にノーマリーオフコンピュータ20Cと不揮発にできない揮発性部品30Aとの間で正常なデータの授受が実行される。このため、データの誤送信によって混載システム10C全体がエラーを起こすことを防ぐことが出来る。この揮発性部品30Aの再開プログラム(復帰プログラム)は、ノーマリーオフコンピュータ20C内の不揮発性メモリ220に格納されているために、復帰からの実行が高速であり、ノーマリーオフコンピュータ20Cの特性である高速な復帰特性を混載システム10Cであっても損なうこともない。
本発明の第4の実施例に係るノーマリーオフコンピュータは、不揮発性CPU210が複数の不揮発性CPUコア(図示せず)からなる点を除いて、図6に示した混載システム10Cと同様の構成を有し、動作をする。
複数の不揮発性CPUコアからなるノーマリーオフコンピュータである場合も、上述した第3の実施例と同様に、不揮発性CPU210は、不揮発性メモリ220に、各揮発性デバイスへのアクセスを制御、監視するためのメモリ領域を確保し、不揮発性CPU210は、アクセス不可が設定されている揮発性デバイスへのアクセスを禁止する。
ある不揮発性CPUコアによる復帰プログラムの実行と並行しながら、別の不揮発性CPUコアによる電源オフからの復帰前に実行していたプログラムコードの実行を、すべての揮発性デバイスの復帰が終わる前から再開することが可能になり、同じくユーザに対する復帰の体感速度を向上させることが出来る。
次に、本発明の第4の実施例の効果について説明する。
ノーマリーオフコンピュータの電源オフからの復帰後、停止前のプログラムコードから再開するまでに、ノーマリーオフコンピュータは、不揮発にできない揮発性部品の動作の特性に従って再開プログラム(復帰プログラム)を実行している。このため、不揮発にできない揮発性部品は、所望の動作状態、もしくは、待機状態になっており、再開後にノーマリーオフコンピュータと不揮発にできない揮発性部品との間で正常なデータの授受が実行される。このため、データの誤送信によって混載システム全体がエラーを起こすことを防ぐことが出来る。この揮発性部品の再開プログラム(復帰プログラム)は、ノーマリーオフコンピュータ内の不揮発性メモリに格納されているために、復帰からの実行が高速であり、ノーマリーオフコンピュータの特性である高速な復帰特性を、混載システムであっても損なうこともない。
以上、実施の形態(実施例)を参照して本願発明を説明したが、本願発明は上記実施の形態(実施例)に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
12 電源スイッチ
14 電源
20A、20B、20C ノーマリーオフコンピュータ(演算処理装置)
210 不揮発性CPU(中央演算部)
212 不揮発性レジスタ
220,220A 不揮発性メモリ(不揮発性記憶部)
222 プログラム
224 データ
226−i 復帰プログラム
226−(1−1)、226−(2−1)、226−(m−n) 復帰プログラム
228、228A 復帰プログラム制御プログラム
230 内部電位監視装置(検査部)
240 DMAモジュール(転送部)
250 復帰時期管理部(監視部;検知部)
260 処理部
30−i 入出力デバイス(揮発性部品;揮発性デバイス)
30−1~30−m 入出力デバイス(揮発性部品;揮発性デバイス)
30A 揮発性部品(揮発性デバイス)
310 処理部
312 揮発性レジスタ
320 内部電位監視装置
40−i 接続部
40−1~40−m 接続部
40A インターフェース
40B 入力ポート(端子)
この出願は、2013年3月25日に出願された、日本特許出願第2013−061982号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
Claims (14)
- 不揮発性レジスタを有し、装置内部で保有するデータを外部装置に退避させずに電源のオフ、オン動作を介しても継続してデータを処理出来る演算処理装置であって、
前記不揮発性レジスタを含む中央演算部と、
内部情報を揮発性記憶素子で保存する揮発性部品との接続部と、
前記揮発性部品の電源オフ状態からの復帰プログラムを保存するための不揮発性記憶部と、
復帰時に前記演算処理装置内の電源電位が動作電位に達したことを知らせる検査部と、
を少なくとも有し、
前記中央演算部は、前記検査部からの通知信号によって前記不揮発性記憶部から前記復帰プログラムをロードし、実行する、
ことを特徴とする演算処理装置。 - 前記中央演算部は、揮発性レジスタを含まずに前記不揮発性レジスタを有する、
請求項1に記載の演算処理装置。 - 前記接続部を複数有し、
前記不揮発性記憶部は、接続された複数の揮発性部品のそれぞれに対応した前記復帰プログラムを、揮発性部品の数と同じ、もしくは、それより少ない数だけ保存する、
ことを特徴とする請求項1又は2に記載の演算処理装置。 - 前記中央演算部は、前記不揮発性記憶部に保存された命令とデータに従って所定の処理を実行する、
ことを特徴とする請求項3に記載の演算処理装置。 - データを転送する機能を有する転送部を有し、
前記検査部からの動作電位に達したことを知らせる信号に応答して、前記転送部は、自立的に前記不揮発性記憶部に保存されたデータを前記接続部に転送する、
ことを特徴とする請求項3又は4に記載の演算処理装置。 - 前記復帰プログラムの実行状態を監視する監視部を含み、
前記中央演算部は、前記監視部から前記復帰プログラムの実行が完了した信号を受け取るまで、前記復帰プログラムを実行する予定もしくは実行中の前記揮発性部品に対して、前記復帰プログラムの実行に必要なアクセスを除いて電源のオフ動作後のアクセスを禁止する、
ことを特徴とする請求項3乃至5のいずれか1項に記載の演算処理装置。 - 前記復帰プログラムの実行がすべて完了したことを知らせる検知部を含み、
前記中央演算部は、前記検知部から前記復帰プログラムが実行完了したことを知らせる信号を受け取るまで、電源のオフ前に実行していた処理を再開しない、
ことを特徴とする請求項3乃至6のいずれか1項に記載の演算処理装置。 - 前記接続部は、揮発性部品内部の動作電圧の状態を通知する信号を受信するための端子を含み、
前記中央演算部は、前記揮発性部品内部の動作電圧が所定の閾値電圧に達していない期間中、前記揮発性部品へのアクセスおよび前記復帰プログラムの実行を禁止する、
ことを特徴とする請求項3乃至7のいずれか1項に記載の演算処理装置。 - 請求項1乃至8のいずれか1項に記載の演算処理装置を制御する方法であって、
一つの揮発性部品に対して復帰状態に応じた複数の復帰プログラムを前記不揮発性記憶部に保存し、
前記中央演算部が、前記複数の復帰プログラムから復帰状態に応じて一つの特定の復帰プログラムを選択的にロードして実行する、
演算処理装置の制御方法。 - 前記中央演算部が、前記複数の復帰プログラムから最も短い時間で復帰出来る前記特定の復帰プログラムを選択的にロードして実行する、
請求項9に記載の演算処理装置の制御方法。 - 請求項3乃至8のいずれか1項に記載の演算処理装置を制御する方法であって、
一つの揮発性部品iに対して復帰状態jに応じた複数の復帰プログラムP(i,j)と、他のある揮発性部品kに対して復帰状態lに応じた複数の復帰プログラムP(k,l)と、復帰すべき演算処理装置の状態に対して、各揮発性部品を適切な状態に復帰する一つの復帰プログラムを選択し制御する全体状態制御プログラムと、を前記不揮発性記憶部に保存し、
前記中央演算部が、復帰時に前記全体状態制御プログラムを前記不揮発性記憶部からロードして実行する、
演算処理装置の制御方法。 - 前記中央演算部が、復帰時に、先行して実施した揮発性部品i用の復帰プログラムP(i,j)の結果に応じて、他の揮発性部品k用の複数の復帰プログラムP(k,l)から最適な復帰プログラムを選択する、
ことを特徴とする請求項11に記載の演算処理装置の制御方法。 - 各復帰プログラムの復帰状態に応じた優先順位を付けた復帰プログラムを前記不揮発性記憶部に保存し、
前記中央演算部が、復帰時に前記優先順位に従って前記復帰プログラムを前記不揮発性記憶部からロードして実行する、
請求項11又は12に記載の演算処理装置の制御方法。 - 前記中央演算部が、復帰時間の最も長い揮発性部品iの復帰プログラムP(i,j)を復帰時に優先的に前記不揮発性記憶部からロードして実行する、
請求項11乃至13のいずれか1項に記載の演算処理装置の制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/777,690 US9870161B2 (en) | 2013-03-25 | 2014-03-24 | Computation processing device and control method thereof |
JP2015508820A JP6252799B2 (ja) | 2013-03-25 | 2014-03-24 | 演算処理装置およびその制御方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013-061982 | 2013-03-25 | ||
JP2013061982 | 2013-03-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014157712A1 true WO2014157712A1 (ja) | 2014-10-02 |
Family
ID=51624667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/059381 WO2014157712A1 (ja) | 2013-03-25 | 2014-03-24 | 演算処理装置およびその制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9870161B2 (ja) |
JP (1) | JP6252799B2 (ja) |
WO (1) | WO2014157712A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6280794B2 (ja) * | 2013-04-12 | 2018-02-14 | 株式会社半導体エネルギー研究所 | 半導体装置及びその駆動方法 |
KR102406571B1 (ko) * | 2017-12-28 | 2022-06-08 | 삼성전자주식회사 | 디스플레이 장치 및 그 동작방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0566951A (ja) * | 1991-09-09 | 1993-03-19 | Hitachi Ltd | コンピユータ装置 |
JPH1040220A (ja) * | 1996-07-19 | 1998-02-13 | Matsushita Electric Ind Co Ltd | 携帯端末機 |
JP2010086407A (ja) * | 2008-10-01 | 2010-04-15 | Rohm Co Ltd | 電子機器 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020026814A (ko) | 2000-10-02 | 2002-04-12 | 포만 제프리 엘 | 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치 |
JP2004133969A (ja) | 2002-10-08 | 2004-04-30 | Renesas Technology Corp | 半導体装置 |
JP2006092481A (ja) * | 2004-09-27 | 2006-04-06 | Fuji Xerox Co Ltd | 情報処理装置 |
US8250350B2 (en) * | 2008-08-26 | 2012-08-21 | Texas Digital And Multimedia Systems | Computer system with non-volatile write-protected memory based operating system and secure system architecture |
US8543850B2 (en) * | 2008-10-01 | 2013-09-24 | Rohm Co., Ltd. | Electronic device |
JP2010140325A (ja) | 2008-12-12 | 2010-06-24 | Panasonic Corp | マイクロコンピュータ制御装置 |
JP2012174031A (ja) | 2011-02-22 | 2012-09-10 | Sony Corp | 情報処理装置、情報処理装置の起動方法、プログラム |
JP2013149093A (ja) * | 2012-01-19 | 2013-08-01 | Toshiba Corp | 制御装置、制御方法、プログラムおよび電子機器 |
TWI620323B (zh) * | 2012-11-16 | 2018-04-01 | 半導體能源研究所股份有限公司 | 半導體裝置 |
KR102168169B1 (ko) * | 2014-01-07 | 2020-10-20 | 삼성전자주식회사 | 비휘발성 메모리 시스템의 메모리 맵핑 방법 및 이를 제공하는 시스템 |
JP6189267B2 (ja) * | 2014-08-20 | 2017-08-30 | 株式会社東芝 | 情報処理装置、方法およびプログラム |
-
2014
- 2014-03-24 US US14/777,690 patent/US9870161B2/en active Active
- 2014-03-24 JP JP2015508820A patent/JP6252799B2/ja not_active Expired - Fee Related
- 2014-03-24 WO PCT/JP2014/059381 patent/WO2014157712A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0566951A (ja) * | 1991-09-09 | 1993-03-19 | Hitachi Ltd | コンピユータ装置 |
JPH1040220A (ja) * | 1996-07-19 | 1998-02-13 | Matsushita Electric Ind Co Ltd | 携帯端末機 |
JP2010086407A (ja) * | 2008-10-01 | 2010-04-15 | Rohm Co Ltd | 電子機器 |
Non-Patent Citations (1)
Title |
---|
RYUSUKE NEBASHI ET AL.: "Investigation of stand -by power free electric system using non- volatile CPU", IPSJ SIG NOTES. EMB, KUMIKOMI SYSTEM, vol. 2012- EM, no. 25, 24 February 2012 (2012-02-24), pages 1 - 6 * |
Also Published As
Publication number | Publication date |
---|---|
US9870161B2 (en) | 2018-01-16 |
US20160274804A1 (en) | 2016-09-22 |
JPWO2014157712A1 (ja) | 2017-02-16 |
JP6252799B2 (ja) | 2017-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5777467B2 (ja) | 制御装置およびプログラム | |
JP5094666B2 (ja) | マルチプロセッサシステム及びその制御方法、並びに、コンピュータプログラム | |
US8019929B2 (en) | Data processing apparatus and data control circuit for use therein | |
JP2015064676A (ja) | 情報処理装置、半導体装置、情報処理方法およびプログラム | |
JP2004038529A (ja) | 情報処理装置 | |
US20130138933A1 (en) | Computer system | |
US9696779B2 (en) | Integrated circuit, electronic device and operation method thereof | |
US20140013140A1 (en) | Information processing apparatus and computer program product | |
JP2016143219A (ja) | 制御装置、制御装置の制御方法及びプログラム | |
JP6252799B2 (ja) | 演算処理装置およびその制御方法 | |
JP4421390B2 (ja) | 半導体集積回路 | |
JP6723941B2 (ja) | 制御装置および制御プログラム更新方法 | |
CN114661368B (zh) | 一种芯片及其启动方法 | |
US20140095859A1 (en) | Apparatus and method for managing register information in a processing system | |
JP5636276B2 (ja) | 半導体装置 | |
JP4711410B2 (ja) | 半導体集積回路 | |
JP5783348B2 (ja) | 制御装置、制御プログラム、画像形成装置 | |
JP2010055265A (ja) | システムlsi、システムlsiの制御方法、プログラム、及び記憶媒体 | |
JP5705185B2 (ja) | 通信装置及びその制御方法、並びに、コンピュータプログラム | |
TWI612428B (zh) | 積體電路、電子裝置與其運作方法 | |
JP2003005871A (ja) | データ処理装置のデータバックアップ方法および装置 | |
KR101283709B1 (ko) | 단말의 디스플레이 전원 제어 방법 및 이를 수행하는 단말 | |
JPH0981284A (ja) | 電源制御装置及び方法 | |
JP2018036804A (ja) | 情報処理装置および情報処理装置の制御方法 | |
JP5868535B2 (ja) | 画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14775154 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2015508820 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14777690 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14775154 Country of ref document: EP Kind code of ref document: A1 |