CN109144214B - Energy management system, method, electronic device, device and nonvolatile processor - Google Patents

Energy management system, method, electronic device, device and nonvolatile processor Download PDF

Info

Publication number
CN109144214B
CN109144214B CN201810884579.0A CN201810884579A CN109144214B CN 109144214 B CN109144214 B CN 109144214B CN 201810884579 A CN201810884579 A CN 201810884579A CN 109144214 B CN109144214 B CN 109144214B
Authority
CN
China
Prior art keywords
information
power
instruction
time
write
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.)
Active
Application number
CN201810884579.0A
Other languages
Chinese (zh)
Other versions
CN109144214A (en
Inventor
马恺声
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cross Information Core Technology Research Institute (xi'an) Co Ltd
Original Assignee
Cross Information Core Technology Research Institute Xi'an Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cross Information Core Technology Research Institute Xi'an Co ltd filed Critical Cross Information Core Technology Research Institute Xi'an Co ltd
Priority to CN201810884579.0A priority Critical patent/CN109144214B/en
Publication of CN109144214A publication Critical patent/CN109144214A/en
Priority to PCT/CN2019/097149 priority patent/WO2020029789A1/en
Priority to US16/703,583 priority patent/US11422818B2/en
Application granted granted Critical
Publication of CN109144214B publication Critical patent/CN109144214B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3844Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring 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
    • G06F11/3062Monitoring 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 where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Neurology (AREA)
  • Power Sources (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)

Abstract

The application provides an energy management system, a method, electronic equipment, a device and a nonvolatile processor, wherein the method comprises the steps of carrying out prediction calculation based on at least one of received power supply information, power storage information and power failure information of the electronic equipment at least one moment, and outputting at least one of a data bit width instruction, a starting instruction or a write strategy instruction or/and service quality prediction information; and performing energy management on the operation of the processor according to the at least one instruction or/and the service quality prediction information. According to the method and the device, the data transmission bit width or the data write-in strategy and the operation starting duration are obtained by predicting the future electric energy input or power-off moment, so that the operation of the processor can be ensured to be matched with the obtained expected energy, the retention time of the nonvolatile element is dynamically adjusted to be matched with the electric energy condition according to the write strategy, and the service quality is matched with the minimum service quality requested in advance.

Description

Energy management system, method, electronic device, device and nonvolatile processor
Technical Field
The present disclosure relates to the field of energy management technologies, and in particular, to an energy management system, an energy management method, an electronic device, an electronic apparatus, a non-volatile processor, and a computer-readable storage medium.
Background
The rapid development of internet of things devices and wireless communication technologies enables, for example, wearable devices or implantable devices with high performance and small size to be developed rapidly, the demand for high performance means the increase of energy consumption of a system, the development speed of the current battery is far behind the increase of the demand for energy consumption, and the problems of large volume, heavy weight and high maintenance cost still exist in battery power supply. For this reason, the wearable device or the implantable device usually realizes self-powered by collecting external energy, however, self-powered has the defects of limited energy, drastic change and difficult prediction, and therefore, the nodes of the internet of things need to optimize energy utilization efficiency by reasonably storing and utilizing the limited collected energy and reasonably managing energy according to the energy requirements of different loads.
In the nodes of the internet of things, besides signal processing and control operations inside the processor, there are operations of data communication and information interaction between the processor and peripheral devices, such as reading sensor information from a sensor back into the processor, writing and reading data in a memory chip, and transmitting and receiving data through a radio frequency unit. These result in a high demand for power from the processor. In a self-powered system, each atomic operation must be guaranteed to be completed with sufficient energy. Therefore, the energy management devices of the system need to be able to provide such support. Therefore, scientific and reasonable energy management is very important.
Disclosure of Invention
In view of the above-mentioned prior related drawbacks, it is an object of the present application to provide an energy management system, an energy management method, an electronic device, an electronic apparatus, a nonvolatile processor, and a computer-readable storage medium for energy management in a manner that utilizes low cost.
To achieve the above and other related objects, a first aspect of the present application provides an energy management system, which is applied to an electronic device having a processor, and includes a prediction module and an execution module. The prediction module performs prediction calculation based on at least one of the received power supply information, the received power storage information and the received power failure information of the electronic equipment at least one moment, and outputs at least one of a data bit width instruction, a start instruction or a write strategy instruction or/and service quality prediction information; the execution module is used for carrying out energy management on the operation of the processor according to at least one instruction or/and service quality prediction information output by the prediction module.
A second aspect of the present application provides an electronic device comprising the energy management system of the first aspect.
A third aspect of the present application provides a non-volatile processor comprising the energy management system of the first aspect described above.
A fourth aspect of the present application provides an electronic device comprising the energy management system of the first aspect described above.
A fifth aspect of the present application provides an energy management method applied in an electronic device having a processor, the method comprising the steps of: extracting at least one of power supply information, power storage information and power failure information of the electronic equipment at least one moment; performing prediction calculation according to the at least one information and outputting at least one instruction or/and service quality prediction information in a data bit width instruction, a starting instruction or a write strategy instruction; and performing energy management on the operation of the processor according to the at least one instruction or/and the service quality prediction information.
A sixth aspect of the present application provides a computer-readable storage medium storing a computer program for energy management, wherein the computer program is configured to execute the energy management method of the fifth aspect.
As described above, the energy management system, the energy management method, the electronic device, the electronic apparatus, the nonvolatile processor, and the computer-readable storage medium according to the present application obtain the data transmission bit width or the data write strategy and the operation start timing by predicting the future power input or power off time, thereby ensuring that the operation of the processor matches the expected energy obtained by the processor, dynamically adjusting the retention time of the nonvolatile element to match the power condition according to the write strategy, and matching the service quality to the minimum service quality requested in advance.
Drawings
Fig. 1 is a schematic diagram of a framework of an energy management system according to an embodiment of the present invention.
Fig. 2 is a schematic diagram of a neural network of a prediction module in an embodiment of the energy management system of the present application.
FIG. 3 is a schematic diagram of another neural network of the prediction module of the energy management system of the present application in one embodiment.
Fig. 4 is a circuit block diagram of a feature extraction module in an embodiment of the energy management system of the present application.
FIG. 5 is a schematic diagram of a prediction module of the energy management system of the present application in one embodiment.
FIG. 6 is a schematic diagram of a prediction module of the energy management system of the present application in another embodiment.
Fig. 7 is a schematic diagram of a prediction module of the energy management system according to still another embodiment of the present invention.
FIG. 8 is a diagram illustrating the relationship between the write current and the write pulse width of the write strategy according to an embodiment of the present invention.
Fig. 9 is a schematic diagram of an execution module of the energy management system according to an embodiment of the present application.
Fig. 10 is a block diagram of another embodiment of the energy management system of the present application.
Fig. 11 is a schematic diagram of an electronic device according to an embodiment of the present application.
Fig. 12 is a schematic diagram of an electronic device according to another embodiment of the present application.
FIG. 13 is a flow chart of an embodiment of the energy management method of the present application.
Fig. 14 is a flowchart illustrating step S11 in an embodiment of the energy management method of the present application.
Fig. 15 is a flowchart illustrating step S11 in another embodiment of the energy management method of the present application.
Fig. 16 is a flowchart illustrating step S11 in the energy management method according to still another embodiment of the present application.
FIG. 17 is a block diagram illustrating an approximate computing architecture according to an embodiment of the present application.
FIG. 18 is a circuit diagram illustrating a write operation according to an embodiment of the present application.
Fig. 19 is a diagram illustrating a hardware architecture of a neural network module according to an embodiment of the present invention.
Fig. 20 is a diagram illustrating a hardware architecture of a neural network module according to another embodiment of the present invention.
Detailed Description
The following description of the embodiments of the present application is provided for illustrative purposes, and other advantages and capabilities of the present application will become apparent to those skilled in the art from the present disclosure. In the following description, reference is made to the accompanying drawings that describe several embodiments of the application. It is to be understood that other embodiments may be utilized and that compositional and operational changes may be made without departing from the spirit and scope of the present application. The following detailed description is not to be taken in a limiting sense, and the scope of embodiments of the present application is defined only by the claims of the patent of the present application. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.
Although the terms first, second, etc. may be used herein to describe various elements in some instances, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first threshold may be referred to as a second threshold, and similarly, a second threshold may be referred to as a first threshold, without departing from the scope of the various described embodiments.
Also, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context indicates otherwise. For example, the term "at least one time" in this application includes a time and a plurality of times. As used herein, a phrase referring to "at least one of a list of items refers to any combination of those items, including a single member. By way of example, "at least one of a, b, or c" is intended to encompass: a. b, c, a-b, a-c, b-c and a-b-c.
It will be further understood that the terms "comprises," "comprising," "includes" and/or "including," when used in this specification, specify the presence of stated features, steps, operations, elements, components, items, species, and/or groups, but do not preclude the presence, or addition of one or more other features, steps, operations, elements, components, species, and/or groups thereof. The terms "or" and/or "as used herein are to be construed as inclusive or meaning any one or any combination. It should be understood that the term "and/or" herein is merely one type of association relationship that describes an associated object, meaning that three relationships may exist, e.g., a and/or B may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" herein generally indicates that the former and latter related objects are in an "or" relationship.
It should be understood that the term "instructions" may also be broadly interpreted in this application to mean instructions, data, information, signals, or any combination thereof, and the like. The "Nonvolatile" or "Nonvolatile" are both expressed by the same concept, and the corresponding english language is Nonvolatile.
In internet of things devices such as wearable devices or implantable devices, for example, the cost of replacing batteries, the safety of batteries, the volume of battery compartments, the charging time and the timeliness are all factors to be considered, and many devices desire the volume of batteries in the system to be as small as possible or even no batteries, so self-powered systems including an ambient energy harvesting power supply or a data acquisition device have come to be developed, especially with the development of Nonvolatile Processors (NVPs), so that the ambient energy harvesting power supply is popularized in the use of wearable devices. Non-volatile processors can handle unstable input power by backing up the computational state, and can ensure that systems using these processors are allowed to operate without a battery or super capacitor in a very short time frame as compared to a battery.
Although the non-volatile processor can ensure that the program is continuously executed under the condition of unstable power supply to some extent, when the power supply of the data acquisition device is unstable, the processor in the existing data acquisition device cannot process the latest acquired data, ensure the data accuracy, recover calculation or backup calculation and the like. Of course, the full use of energy may increase the number of backup operations, but also result in more energy being wasted in unnecessary backup and restore operations, and if an energy saving strategy is adopted, this may result in unnecessary leakage of the capacitor, and in addition, the capacitor cannot store newly collected energy even at full charge, and will also delay the service response time. There is a need for optimization of energy management, such as predicting future energy input to better allocate resources for a subsequent task, and predicting outage duration to reduce reserve time and power for backup operations.
To this end, the present application provides an energy management system that seeks to increase the efficiency of power usage, the computational efficiency of the processor and reduce backup energy, while maintaining the most basic quality of service, etc. The energy management system is applied to electronic equipment with a processor. In an embodiment, the processor is, for example, but not limited to, a non-volatile processor (NVP), and in other embodiments, the processor may be a general processor, such as any commercially available processor, controller, microcontroller or state machine without departing from the inventive concepts and concepts disclosed herein. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
In embodiments provided herein, the electronic device is an internet of things device, e.g., a wearable device or an implantable device, such as a wearable electronic device may include any type of electronic device that may be worn on a limb of a user. The wearable electronic device may be secured to a human limb such as a wrist, ankle, arm, or leg. Such electronic devices include, but are not limited to, health or fitness assistant devices, digital music players, smart phones, computing devices or display exercise or other activity monitors, time-tellable devices, devices capable of measuring biometric parameters of a wearer or user, and the like. Such as a blood glucose test device or the like.
As one example, the wearable electronic device may be implemented in the form of a wearable health assistant that provides health-related information (real-time or non-real-time) to the user, an authorized third party, and/or an associated monitoring device. The device may be configured to provide health-related information or data, such as, but not limited to, heart rate data, blood pressure data, temperature data, blood oxygen saturation data, diet/nutrition information, medical reminders, health-related reminders or information, or other health-related data. The associated monitoring device may be, for example, a tablet computing device, a telephone, a personal digital assistant, a computer, or the like.
As another example, the electronic device may be configured in the form of a wearable communication device. The wearable communication device may include a processor coupled to or in communication with a memory, one or more communication interfaces, output devices (such as a display and speakers), and one or more input devices. One or more communication interfaces may provide electronic communication between the communication device and any external communication network, device, or platform, such as, but not limited to, a wireless interface, a bluetooth interface, a USB interface, a Wi-Fi interface, a TCP/IP interface, a network communication interface, or any conventional communication interface. In addition to communication, the wearable communication device may provide information, messages, video, operational commands, etc. regarding the time, health, status, or externally connected or communicating devices and/or software running on such devices (and may receive any of the above from an external device).
Referring to fig. 1, which is a schematic diagram illustrating a framework of an embodiment of the energy management system of the present application, as shown in the figure, the energy management system 1 includes: a prediction module 10 and an execution module 11.
The prediction module 10 performs prediction calculation based on at least one kind of received Power supply information (Power Sensing), Power storage information (Stored Energy Sensing), and Power failure information (Power output Sensing) of the electronic device at least one time, and outputs at least one kind of instruction of a data bit width instruction (Bitwidth), a Start instruction (System Start), or a Write strategy instruction (Write Configuration) or/and quality of service prediction information (Predicted QoS); the execution module 11 performs energy management on the operation of the processor according to at least one instruction or/and Service Quality prediction information output by the prediction module, and the energy management system of the present application obtains a data transmission bit width or a data write strategy and a time for starting the operation by predicting a future power input or power off time, so as to ensure that the operation of the processor matches with an expected energy obtained by the processor, dynamically adjusts a retention time of a nonvolatile element to match with a power condition according to the write strategy, and matches a Quality of Service (QoS) with a minimum (most basic) Service Quality requested in advance.
In one embodiment, the prediction module 10 is based on receiving power supply information, power storage information, and power outage information for one or more times of the electronic device.
In the embodiment, the time may be different time periods, and may be divided into a plurality of time levels according to different requirements, such as 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc., it should be noted that the above time is exemplary, and in different implementation situations, the time is not limited thereto.
For example, the prediction module 10 predicts the power supply information of the last 10 historical moments of the electronic device, the power storage information of the last 10 historical moments of the electronic device, or the power failure information of the last 10 historical moments of the electronic device based on the received power supply information, the received power storage information, or the received power failure information of the electronic device. In an example, the power supply information of the last 10 historical moments of the electronic device is the last 10 continuous power-on times, or the power storage information of the last 10 historical moments of the electronic device is the remaining power of the last 10 moments, or the power failure information of the last 10 historical moments of the electronic device is the power failure duration of the last 10 moments.
In one embodiment, the prediction module 10 obtains the power supply information of the electronic device at least one time when a feature extraction module detects that the electronic device is powered on or during a power-on cycle.
In another embodiment, the prediction module 10 obtains the power storage information of the electronic device at least one time when the electronic device is powered on or during a power-on cycle by using a feature extraction module.
In another embodiment, the prediction module 10 obtains the power-off information of the electronic device at least at one moment by a feature extraction module when the power-off of the electronic device is detected or during a power-on period.
In an embodiment, the power supply information is power supply information of the electronic device, the power supply information is generated by a self-powered system of the electronic device, such as an energy harvester, which obtains energy from human body movement, for example, vibration energy from actions or behaviors of walking or limb swinging, jumping, pressing (such as pressure obtained by a small energy harvester implanted in a shoe during running), breathing, and the like, and converts the vibration energy into electric energy, and in other cases, the energy may also come from a natural environment, such as solar energy and the like. The energy harvested by the energy harvester needs to be processed from AC to DC or DC to DC and then the harvested energy is temporarily stored in off-chip or even on-chip capacitors, which are mainly used to support data rather than to store energy.
In an embodiment, the power storage information is power information stored in a battery or a power storage capacitor of the electronic device, such as the stored power information is obtained in real time or intermittently under the assumption that power consumption is constant.
In an embodiment, the power failure information is information of interruption of power input in the electronic device due to insufficient power supply, energy exhaustion, human factors (such as human setting or human damage) or unforeseen accidents, and the like, such as information of time of power failure and duration of power failure. In one embodiment, 10 levels of power down time may be set, for example, 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc. for different periods of time.
In an embodiment, the prediction module 10 performs a prediction calculation on at least one of the received power supply information, the power storage information, and the power failure information of the electronic device at least one time by using one or more neural networks, and outputs at least one of a data bit width instruction, a start instruction, or a write strategy instruction, or/and service quality prediction information. In one example, the neural network is, for example, a feed-forward neural network that is trained offline or online back propagation.
Referring to a neural network shown in fig. 2, fig. 2 is a schematic diagram of a neural network of a prediction module in an embodiment of the energy management system of the present application, as shown in the drawing, in the embodiment, the neural network is, for example, a feed-forward neural network, the feed-forward neural network includes 1 Input Layer (Input Layer), 2 Hidden layers (Hidden layers 1,2), and 1 Output Layer (Output Layer), each Layer has 10 neurons, each neuron has 10 outputs, and power supply information, power storage information, or power failure information of 10 time instants (from On time _1 to On time _10) received from a non-volatile Shifter (NV shift) is used for predicting future generated power or time of possible interruption. Without being limited thereto, in other possible embodiments, as shown in fig. 3, which is another neural network diagram of the prediction module in an embodiment of the energy management system of the present application, as shown in fig. 3, the feed-forward neural network may include more Hidden layers (Hidden layers 1,2 … … N), and each Layer may also include more or less neurons (N). The neural network shown in fig. 3 is an off-line trained neural network or an on-line back propagation trained neural network.
In one embodiment, the prediction module 10 obtains power supply information, power storage information, or power failure information at one or more times by a feature extraction module, and the feature extraction module transmits the information as a detection result (Sensing Results) to the prediction module 10. Referring to fig. 4, which is a circuit block diagram of a feature extraction module in an embodiment of the energy management system of the present application, as shown in the figure, the feature extraction module 2 includes: the system comprises a detection unit, an energy storage unit and a power-off sensing unit, wherein the characteristic extraction module is in communication connection with the energy management system.
In this embodiment, the feature extraction module as a front-end circuit includes, for example, a battery or a power supply including a charging device, one end of the power supply is grounded, the other end of the power supply is connected to an Rs resistor, the Rs resistor serves as a detection element, and the Rs resistor and a 6-bit ADC converter in fig. 4 constitute a detection unit for detecting and acquiring the power supply information (Input power sensing) provided by the electronic device, where the power supply information is power-on information of the electronic device and the power supply information is generated by a self-powered system of the electronic device, and the Rs resistor and the 6-bit ADC converter constitute the detection unit in this embodiment.
In this embodiment, the energy storage unit is configured to acquire Stored energy information (Stored energy sensing) by acquiring a voltage difference (voltage drop) between two ends of the energy storage element, which is indicated by a dotted arrow in the diagram, that is, the remaining energy of the energy storage element; the energy storage element is a grounding capacitor C1 in FIG. 4. The capacitor C1 and the ADC converter in fig. 4 constitute the detection unit described in this embodiment.
In this embodiment, the Power-off sensing unit is configured to acquire Power-off information (Power-off sensing) including Power-off time by collecting a voltage difference between two ends of the discharging element, which is indicated by a dotted arrow in the figure. The discharging element is a leakage capacitor C2 in fig. 4, one end of the leakage capacitor C2 is connected via a DC-DC converter, a Charge Breaker (Charge Breaker) and an LDO device, and the other end of the leakage capacitor C2 is grounded. In a specific implementation, the leakage capacitor C2 is charged each time during a recovery operation controlled by a charge-breaker. The DC-DC converter, LDO device, charge breaker, leakage capacitor C2 and ADC converter in fig. 4 constitute an inductance-breaking sensing unit. As shown in fig. 4. By charging the leakage capacitor each time during a recovery operation controlled by the LDO device as shown in fig. 4, the voltage of the capacitor is checked when the electronic device recovers from a power outage, and the system power-off time can be calculated from the voltage drop detected by the ADC.
In one embodiment, the prediction module 10 includes one or more nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter), and the power supply information, the power storage information, and the power outage information received by the prediction module 10 at one or more times by the electronic device are stored in the nonvolatile shift units, respectively.
The prediction module 10 in this application uses approximation calculations to make predictions to achieve dynamic matching of the energy dissipation curve to the input energy curve. Referring to fig. 5, which is a schematic diagram of a prediction module of the energy management system according to an embodiment of the present application, as shown in the figure, in an embodiment, the prediction module 10 includes an approximate calculation unit 100, and the approximate calculation unit 100 is configured to perform an approximate calculation according to the power supply information and the power storage information to predict and output the data bit width instruction and the start instruction. In the present embodiment, the approximation calculation unit 100 includes a future energy predictor 1001 and a bit width predictor 1002.
The future energy predictor 1001 predicts a future Power-on Time (Power-on Time) and a Power Confidence (Confidence) of the electronic device based on the Power supply information (Power Sensing). In this embodiment, the future energy predictor 1001 has one or more nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter), and the future energy predictor 1001 stores the received power supply information of the electronic device at one or more time points into the nonvolatile shift units. In this embodiment, the future energy predictor 1001 stores the received power supply information of the electronic device 10 times into the nonvolatile shift unit.
In this embodiment, taking the last 10 consecutive power-on times of the electronic device received by the future energy predictor 1001 via a feedforward neural network as an example, a counter (not shown) is used to calculate the power-on time, and the counter pushes the last calculated power-on time to the nonvolatile shifter to replace the earliest power-on time.
In this embodiment, by configuring a fully connected feed-forward neural network with 2 hidden layers, setting 10 neurons per layer, outputting 10 potential energy levels (energy levels) for the 10 neurons of the layer, translating each energy level for a power-on time, each output indicating a power-on confidence, where the highest value is output as the predicted energy level and its confidence when the power-on confidence is very different from the other confidences. In one case, if the first few predicted energization confidences are within the 10% interval, the energy levels for the predicted future energization times are weighted averaged, and the corresponding energization confidences are also averaged.
The bit width predictor 1002 is configured to perform approximate calculation according to the future power-on time, the power-on confidence level, and the received power storage information (Stored Energy Sensing) of the electronic device to predict an output data bit width instruction (Bitwidth) and a Start Threshold (System Start Stored Energy Threshold). The bit width predictor 1002 dynamically collects the bit width required for dynamically predicting the execution module 11 during each boot interval, thereby reducing processor computation and backup costs and reducing response time.
In this embodiment, the bit width predictor 1002 performs prediction by using a feedforward neural network to output a data bit width instruction and a start threshold, the feedforward neural network of the bit width predictor 1002 receives an energy level of a future power-on time, a power-on confidence and a stored energy level included in power storage information as inputs, the feedforward neural network includes 1 input layer, 2 hidden layers and 1 output layer, each layer has 10 neurons, each neuron has 10 outputs, the output layer outputs 2 kinds of information, that is, outputs the data bit width instruction and the start threshold, wherein 8 outputs of the output layer are used as outputs of the data bit width instruction, and 1 output of the output layer is used as an output of the start threshold.
In this embodiment, when the input layer of the feedforward neural network of the bit width predictor 1002 receives 10 potential energy levels (energy levels) output by the future energy predictor 1001 and the power-on confidence corresponding to each energy level, the input layer calculates an output start threshold by using the prediction of 2 hidden layers to give an indication of whether the execution module 11 is started or not.
For example, if the predicted potential input energy level is relatively low and there is not enough stored energy in the buffer capacitor, the execution module 11 is deactivated; if the predicted potential input energy is high, but the received power-on confidence is low, then the execution module 11 is instructed to boot only if the stored energy level is high enough to reach the prediction threshold; if the predicted potential input energy is high and the confidence of power-on is high, even if the stored energy is low, the execution module 11 is instructed to start (predictor outputs a very low threshold) to get better forward progress and QoS satisfaction. In one example, the energization confidence ratio is relatively low, e.g., less than 30%, and the energization confidence ratio is relatively high, e.g., greater than 70%. But not limited to this, the threshold of the power-on confidence can be dynamically adjusted according to the actual situation under the circumstance of knowing the innovative idea of the present application.
In this embodiment, the feedforward neural network of the bit width predictor 1002 is further configured to determine the bit width of the output data through prediction, that is, perform approximate calculation according to the 10 potential energy levels (energy levels) output by the future energy predictor 1001 and the power-on confidence corresponding to each energy level received by the input layer of the feedforward neural network of the bit width predictor 1002, so as to predict and determine an appropriate bit width of the output data, and determine the precision with which the execution module 11 performs the operation at which energy level.
In this embodiment, the process of performing approximate calculation by the feed-forward neural network configured as the bit width predictor 1002 according to the future power-on time, the power-on confidence and the power storage information of the electronic device to obtain the data bit width instruction is as follows:
firstly, carrying out prediction calculation according to the future power-on time, the power-on confidence coefficient and the power storage information of the electronic equipment to obtain approximate configuration data (approximate Config); in this embodiment, when 10 potential energy levels (energy levels) and the power-on confidence corresponding to each energy level are received through the neural network configured as the bit width predictor, the approximate configuration data is calculated by prediction of 2 hidden layers, and the approximate configuration data includes bit width information obtained by the bit width predictor through the neural network according to future power-on time, power-on confidence and power storage information prediction calculation, such as how many bits of bit width the processor needs to calculate, so as to determine the correct or proper bit width configuration.
Then, the approximate configuration data (approximate Config) is identified according to preset approximate indicating data (ACEN), and when the approximate configuration data can be approximately calculated, approximate calculation is carried out to generate a data bit width instruction (Bitwidth). In the present embodiment, the approximation indicating data (ACEN) is preset, specifically, data that can be approximated through programmer identification setting, and the data includes a data buffer (data buffer) or an image (image), but does not include a basic variable, such as an index in a "for" loop.
Referring to FIG. 17, a schematic diagram of an approximate computing architecture for a process of obtaining data bit width instructions according to an embodiment of the present application is shown, where the approximate computing architecture includes a 5-stage pipeline processor architecture, and a dynamic architecture approximation control unit controls the approximate computing of the pipeline processing architecture. As shown in the figure, a neural network configured as a future Energy predictor is used for predicting and calculating the future Power-on time and the Power-on confidence coefficient of the electronic equipment according to the Power supply information (Input Power), then a neural network configured as a bit width predictor is used for predicting and calculating according to the future Power-on time, the Power-on confidence coefficient and the Power storage information (Stored Energy) of the electronic equipment to obtain approximate configuration data (approximate configuration), then a bit called ACEN is added to each approximate configuration data through an approximate control unit preset with an approximate designation data (ACEN) interface to identify whether the approximate configuration data can be approximated during operation, the dynamic architecture approximation control unit reads the approximate designation data (ACEN) and the obtained approximate configuration data (approximate configuration) from two operators in an instruction, if an operator is determined to be approximated, but the other operator can not be approximated, the instruction can not be approximated, if both operators can be approximated, the data bit width instruction (Bitwidth) is generated to enable the processor to utilize the processor architecture of the 5-stage pipeline to carry out approximation calculation, and further, the calculation (operation) precision of the processor is controlled. As can be seen from the above, a bit width predictor is configured to be activated at the beginning of a programmer-predefined loop in the main program, which is typically a loop for a new frame to be processed. The configured bit width predictor is used to determine the appropriate bit width to complete the loop operation of the entire program during this power-up cycle.
In an embodiment, the dynamic architecture approximation control unit is, for example, an approximation bit width controller disposed in a processor or an execution module, and the approximation bit width controller is configured to control the precision of an operation according to a data bit width instruction (Bitwidth) configured as a neural network output of a bit width predictor when the data bit width instruction is received; in this embodiment, the approximate bit width controller has one or more nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter), into which the approximate bit width controller stores the received data bit width instruction.
The processor is used for calculating and processing the sensing data or the interaction data acquired by the electronic equipment. In some examples, the processing of the sensed data, such as the wearable device, generates user data that may be transmitted by the wireless module or displayed by the display device by processing the collected heart rate data, blood pressure data, temperature data, blood oxygen saturation data, diet/nutrition information, medical reminders, health-related reminders or information, or other health-related data.
In some examples, the processing of the interaction data may be such as by a user operating a wearable device to respond to an event notification generated by a host device. The wearable device can receive notifications of events from the host device and present reminders and prompts for responses to the user. If the user responds to the prompt, the wearable device may transmit the response to the host device. For example, a user may respond to a phone call, text message, or other communication received at a host device.
In one embodiment, to avoid the electronic device producing a low quality data output, such as data below 20dB, the corresponding data of 20dB and above is generally considered to be a reasonable quality data. Prediction module 10 in the present application also includes a quality of service predictor to predict potential output quality of a program of an electronic device based on bit width predictor 1002 and a power down prediction. Referring to fig. 6, which is a schematic diagram of a prediction module of the energy management system according to another embodiment of the present application, as shown in the figure, the prediction module 10 further includes a quality of service predictor 101, where the quality of service predictor 101 is configured to perform prediction calculation according to the data bit width instruction and the power failure information to obtain Predicted QoS (Predicted QoS); when the service quality prediction information meets a first threshold, outputting the service quality prediction information to the execution module 11, and when the starting threshold meets the first threshold, outputting a starting instruction to the execution module 11; the outage information includes an outage confidence level, which in one embodiment is obtained by a prediction from an outage predictor.
The quality of service predictor 101 obtains the approximate bit width and the average power outage prediction confidence during the processing of the frame data as input. In an embodiment, the QoS predictor 101 performs prediction calculation according to the data bit width instruction (Bitwidth) and the Power failure information (Power output Sensing) to obtain Predicted QoS; and outputs to the execution module 11 when the quality of service prediction information (Predicted QoS) satisfies a first Threshold Y, and outputs to the execution module 11 a Start instruction (System Start) when the Start Threshold (System Start Stored Energy Threshold) satisfies the first Threshold Y. Wherein the outage information includes an outage Confidence level (Confidence), and the outage Confidence level may be generated by an outage predictor. In this embodiment, the first threshold Y is, for example, 20dB, but is not limited thereto, and different thresholds Y may be set in different implementation states, for example, for different types of electronic devices. In one embodiment, the qos predictor 101 performs qos prediction by a neural network including 2 hidden layers.
Since more electric energy is dissipated in high bit width operation (high calculation accuracy of a processor) than in low bit width (low calculation accuracy of the processor), in the present application, the execution module 11 is controlled to start the stored energy threshold, that is, the service quality predictor 101 shown in fig. 5 is used to control the starting time of the execution module 11 so as to achieve the purpose of alleviating the problem of low quality output under the condition of reasonable energy management, the starting time of the execution module 11 is delayed by controlling the parameter of the first threshold Y until sufficient energy exists in the energy storage capacitor to restart the execution module 11, and thus, high quality data operation or output is ensured under the mechanism of reasonable energy management.
Although many electronic devices are powered by an unstable power source (e.g., an energy harvester in a self-powered system) with the aid of non-volatile elements, the backup operation of the electronic device while in operation still consumes a significant amount of power, especially when the power source is intermittent. Therefore, if the power-off information can be obtained in advance by a certain technique, the NVM (Non-volatile memory) retention time can be shortened from a very long time (e.g. more than 10 years) to a time only slightly longer than the power-off time, so that the necessary energy can be saved during the data backup operation. Thus, the prediction module 10 of the energy management system of the present application includes a backup prediction unit 102. Referring to fig. 7, which is a schematic diagram illustrating a prediction module of the energy management system according to another embodiment of the present application, as shown in the figure, the backup prediction unit 102 includes a power outage predictor 1021 and a backup time predictor 1022.
The power failure predictor 1021 is used for predicting future power failure time and power failure confidence according to the power failure information output by the feature extraction module; in this embodiment, the Outage predictor 1021 is configured to predict a future Outage Time (Power-off Time) and an Outage Confidence (Confidence) according to the Outage information (Power output Sensing) at multiple times output by the feature extraction module; in one example, the power outage information is information of power input interruption in the electronic device due to factors such as insufficient energy supply, energy exhaustion, human setting or unpredictable accidents, and the like, such as information of a time node of the power outage and a duration of the power outage. In one embodiment, 10 levels of power down time may be set, for example, 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc. for different periods of time.
In one example, the power outage information may be collected by a power outage sensing unit of the feature extraction module, such as a DC-DC converter, an LDO device, a Charge Breaker (Charge Breaker), a leakage capacitor C2 and an ADC converter in fig. 4, which constitute the power outage sensing unit, and the system power outage time may be calculated by a voltage drop detected by the ADC by charging the leakage capacitor each time during a recovery operation controlled by the Charge Breaker (Charge Breaker) as shown in fig. 4 and checking the voltage of the capacitor when the electronic device recovers from a power outage. In particular, as shown in the power-off sensing unit portion of fig. 4. Each time the system is powered up (before resuming operation), the leakage capacitor charges at a fully stable voltage. When a power failure occurs, the voltage on the leakage capacitor drops with the passage of time, and the detected power-off time can be obtained by measuring the remaining voltage in the leakage capacitor after the next power-on.
In this embodiment, the Power Outage predictor 1021 has a nonvolatile shift unit, such as a nonvolatile Shifter (NV Shifter), and the Power Outage predictor 1021 stores the received Power Outage information (Power Outage Sensing) of one or more time instants of the electronic device into the nonvolatile shift unit. In one example, the last 10 consecutive power-down messages received by the power-down predictor 1021 for the electronic device are taken as an example, and a counter (not shown) is used to calculate the power-down time, and the counter pushes the last calculated power-down time to a non-volatile shifter to replace the earliest power-down time.
In this embodiment, the outage predictor 1021 has a fully connected feedforward neural network with 1 input layer, 2 hidden layers, and 1 output layer, each layer is configured with 10 neurons, the input layer is used for receiving outage information such as 10 historical outage times from the nonvolatile shift unit, and the output layer outputs future outage times (Power-off times) and outage Confidence levels (Confidence) corresponding to each future outage Time, which are predicted to be 10 outage Time levels, for example, after calculation through the 2 hidden layers of the feedforward neural network.
Since there is usually a block/distributed non-volatile memory (NVM) in the electronic device, this makes the system often consume a lot of standby energy in the data backup operation, and for these unnecessary consumption, the standby energy can be reduced by improving the backup retention time, thereby realizing the control of energy saving. For this reason, in the present application, the reasonable write strategy can be determined by predicting the power-off time, in other words, how much write current is used at what time to decide the time of data backup.
The backup Time predictor 1022 is configured to generate a Write strategy instruction (Write Configuration) and a Write strategy Confidence (Confidence) according to the future Power-off Time (Power-off Time) and the Power-off Confidence (Confidence), and output the Write strategy instruction to the execution module 11 when the Write strategy Confidence satisfies a second threshold; the write strategy command includes at least one of write current and write time information for performing a write operation. The writing time is a data writing time duration, in a specific implementation, the data writing time duration is determined by a writing pulse width, and the writing current and the writing pulse width can affect a retention (holding or backup) time of the written data. In this embodiment, the write strategy command is configured to include a Retention Time of write data or is a Retention Time (Retention Time) strategy, and the write strategy can control to improve the backup Retention Time to reduce the backup energy, thereby achieving the purpose of saving energy.
In the embodiment, the backup time predictor 1022 obtains the write strategy command and the write strategy confidence by receiving the future power-off time and the power-off confidence through a Neural Network, specifically, the Neural Network is, for example, a feed-forward Neural Network (feed-forward Neural Network), which is a Neural Network trained offline or a Neural Network trained online in a back propagation manner, and the feed-forward Neural Network has a Network structure as shown in fig. 3 or fig. 4. For example, the neural network is configured as a time backup predictor for prediction computation to obtain Write strategy instructions (Write Configuration) and Write strategy Confidence (Confidence).
In one embodiment, the backup time predictor 1022 is further configured to perform a prediction calculation according to the future power-off time and the power-off confidence level, and obtain the write strategy command by balancing the write current and the write time in the write strategy command. In this embodiment, the purpose of balancing the write current and the write time in the write strategy command is to find an optimal write strategy, that is, to perform a data write operation with the minimum write current and the shortest write time.
Referring to fig. 8, which is a schematic diagram showing a relationship between a write current and a write pulse width of a write strategy according to an embodiment of the present invention, as shown in fig. 8, when the write strategy determines that a retention time of write data is 10ms, a curve composed of square points in fig. 8 is used to distribute the write current and the write pulse width, and the trade-off between the write current and the write time in the curve is the write current and the write pulse width using coordinates of a vertex (i.e., a point a indicated by an arrow in fig. 8) at the upper right corner of a small square illustrated in fig. 8; accordingly, when the write strategy determines that the retention time of the written data is 1 day, the write current and the write pulse width distributed by a curve composed of dots in fig. 8 are adopted, and the trade-off between the write current and the write time in the curve is the write current and the write pulse width which are adopted by a vertex coordinate point (i.e., a point b indicated by an arrow in fig. 8) at the upper right corner of the large square illustrated in fig. 8; similarly, when the write strategy determines that the retention time of the written data is 1 minute or 1 second, the write current and the write pulse width distributed by a curve composed of a regular triangle point and an inverted triangle point in fig. 8 are adopted, and the trade-off write current and the write pulse width are respectively adopted in the curve at the vertex of the upper right corner of the square illustrated in fig. 8 (i.e., the point c or the point d indicated by the arrow in fig. 8).
Since the write current and write pulse width of the data can affect the retention (hold or backup) time of the written data, a write current is provided in this application, see FIG. 18, which is a schematic diagram of a write operation circuit in one embodiment of this application, as shown, different currents are generated by a current mirror according to the write current and write time determined from the write strategy command, different times are determined by a counter, and the selection of the current is controlled by the write data MUX array shown in FIG. 18 to determine how much current to write the data, such as I shown in the figure1To I8The 8-way circuit shown selects different time lengths through the illustrated write time comparator to determine how much time is used to write data.
In FIG. 18, IrefIs the base current of the current mirror, and the secondary I is generated by changing the W/L ratio (the width-length ratio of the transistor channel can determine the amplification factor of the current mirror) of the current mirror composed of PMOS transistors1To I8In the present embodiment, the maximum current change rate is from 1 day to 10 ms. Depending on the predicted write current configuration in the illustration, different currents may be selected in the MUX array, the write current being connected to "Bit" or "Bit B" (the write data may be changed by flipping the current direction of "Bit" or "Bit B"), depending on the input of the "write data" signal. The other row of "Bit" or "Bit B" controls the write time, as compared to the predicted write time configuration according to the illustration by a high frequency 4-Bit counter (sub ns per cycle) that is disconnected from Ground (GND) to terminate the write operation once the counter reaches the preset write time. In this embodiment, data is written into a Memory by performing the write operation, where the Memory is a Non-volatile Memory (NVM), such as STT-RAM (Shared Memory Technology Random Access Memory).
Referring to fig. 7, when the write strategy confidence satisfies a second threshold X, which is a preset power failure confidence, the backup time predictor 1022 outputs the write strategy instruction to the execution module 11, and when the power failure confidence obtained by the backup time predictor 1022 through neural network prediction is greater than the preset power failure confidence X, the backup time predictor 1022 sends the write strategy instruction to the execution module 11. The second threshold value X may be set to different values in different implementation states, including the medium of the storage device in which data is written, such as STT-RAM (Shared Memory Technology Random Access Memory) or the like; in addition, these different implementation states may be different in the data content that the processor requires to record, and so on.
In one embodiment, when the outage predictor 1021 predicts that the outage time is short, such as the outage time is less than 50ms or the outage confidence is less than 80%, the system can run using the stored energy without a backup operation, i.e., the backup time predictor 1022 does not send a write strategy instruction to the execution module 11.
In another embodiment, when a Memory in the electronic device is, for example, a Static Random-Access Memory (SRAM) with low standby power consumption, due to low standby power consumption of the Memory, backup may not be needed when the power-off time is, for example, between 50ms and 0.2s, that is, the backup time predictor 1022 does not send the write policy instruction to the execution module 11.
In an embodiment, the execution module 11 is a part of a processor of the electronic device, and the processor is a Nonvolatile processor (NVP) for calculating and processing the sensing data acquired by the electronic device.
Referring to fig. 9, which is a schematic diagram of an execution module of the energy management system of the present application in an embodiment, as shown in the figure, the execution module 11 includes a near start controller 110, an approximate bit width controller 111, and a retention time controller 112.
The approximate bit width controller 111 is configured to control the calculation precision of the processor according to a data bit width instruction (Bitwidth) when receiving the data bit width instruction output by the prediction module 10; in the present embodiment, the approximate bit width controller 111 has one or more nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter), into which the approximate bit width controller 111 stores the received data bit width instruction. In some examples, the processor is configured to calculate and process the sensed or interaction data acquired by the electronic device.
In some examples, the processing of the sensed data, such as the wearable device, generates user data that may be transmitted by the wireless module or displayed by the display device by processing the collected heart rate data, blood pressure data, temperature data, blood oxygen saturation data, diet/nutrition information, medical reminders, health-related reminders or information, or other health-related data.
In some examples, the processing of the interaction data may be such as by a user operating a wearable device to respond to an event notification generated by a host device. The wearable device can receive notifications of events from the host device and present reminders and prompts for responses to the user. If the user responds to the prompt, the wearable device may transmit the response to the host device. For example, a user may respond to a phone call, text message, or other communication received at a host device.
The Start controller 110 is configured to Start the processor when receiving a Start instruction (System Start) output by the prediction module 10; in one embodiment, the start-up controller 110 has one or more non-volatile shift cells, such as a non-volatile Shifter (NV Shifter), into which the start-up controller 110 stores received start-up instructions. In this embodiment, the Start Controller 110 is, for example, an NVP Start Trigger (NVP Start Trigger Controller).
The retention time controller 112 is configured to execute a Write operation according to at least one of Write current and Write time included in a Write strategy command (Write Configuration) when receiving the Write strategy command output by the prediction module 10. In this embodiment, the retention time controller 112 has one or more non-volatile shift cells, such as a non-volatile Shifter (NV Shifter), into which the retention time controller 112 stores the received write strategy instructions. The retention time controller 112 performs a write operation according to the received write strategy command, in an example, data written to the memory of the electronic device by the write operation is, for example, calculation or processing data of the processor, or a backup calculation state is recorded.
The execution module 11 also receives quality of service prediction information (Predicted QoS) output by the prediction module 10 to cause the processor to predict potential output quality of the electronic device running program based on dynamic bit width execution approximation and different approximation methods in dynamic backup data retention time, so that the result of the entire energy management system has quality of service control.
In an embodiment, the prediction module 10 performs prediction calculation based on the received Power supply information (Power Sensing), Power storage information (Stored Energy Sensing), and Power failure information (Power output Sensing) at multiple times of the electronic device, and outputs a data bit width instruction (Bitwidth), a System Start instruction (System Start) or Write policy instruction (Write Configuration), and Predicted QoS (Predicted QoS), respectively; the execution module 11 performs energy management on the operation of the processor according to at least one instruction or/and the service quality prediction information output by the prediction module 10. Referring to fig. 10, which is a schematic diagram of a framework in another embodiment of the energy management system of the present application, in the embodiment shown in fig. 10, the energy management system includes an execution module 11 and a prediction module 10, where the prediction module 10 is connected to a feature extraction module, which includes the approximate calculation unit, a backup prediction unit, and a quality of service predictor 101, and the approximate calculation unit includes a future energy predictor 1001 and an approximate bit width predictor 1002; the backup prediction unit comprises a power failure predictor 1021 and a backup time predictor 1022; the execution module 11 comprises a start controller 110 and an approximate bit width controller 111 connected to the approximate bit width predictor 1002, and a retention time controller 112 connected to the backup time predictor 1022.
In this embodiment, the prediction module 10 performs prediction calculation on the received power supply information, power storage information, and power failure information of the electronic device at multiple times by using a neural network, and outputs a data bit width instruction, a start instruction, or a write strategy instruction, and service quality prediction information. The time Multiplexing may also be referred to as time-series Multiplexing (or time-division Multiplexing), and is used to implement multiple kinds of prediction calculation in different time periods through a hardware architecture of a neural network predictor, that is, to implement the prediction calculation of multiple small-scale neural networks in different time periods, thereby achieving the purpose of saving hardware cost and area.
In an embodiment, the time-multiplexed hardware architecture of the prediction module 10 is a hardware architecture in which a plurality of prediction calculations share one neural network module in different time periods, and in an embodiment, the prediction module 10 includes a neural network module 41 and a timing control module 42. The timing control module 42 is used for controlling the timing of the prediction calculation of the neural network module 41 outputting the at least one instruction or/and the qos prediction information based on the received at least one information. Referring to fig. 19, which is a schematic diagram illustrating a hardware architecture of a neural network module according to an embodiment of the present disclosure, as shown in the drawing, the neural network module 41 includes a neural network unit 411 and a one-time prediction state machine 412, wherein the neural network unit 411 includes a neuron register 4110, a weight register 4112 storing a plurality of weights, a plurality of selectors 4113 for selecting data input or output, and a multiply-accumulate unit 4114. The one-time prediction state machine 412 is used to control the timing of the neural network unit 411 receiving the at least one information for one-time prediction calculation. The neural network module 41 shown in fig. 19 is a serial architecture, and the one-time prediction state machine 412 controls the corresponding selector 4113 to select a weight value and the source neuron and the target neuron to be activated from the weight value register 4112 according to the input of the neural network unit 411, and then delivers the weight value and the source neuron and the target neuron to a Multiply-and-Accumulate (MAC) unit 4114 after calculation, and then writes back the neurons in the neural network unit until all the neurons in the input layer, the hidden layer and the output layer are processed. The weight value pre-stored in the weight value register 4112 is obtained by training.
In this embodiment, the weight register 4112 includes a Nonvolatile shift unit or a Nonvolatile storage unit for storing the weight corresponding to each prediction calculation, where the Nonvolatile shift unit is a Nonvolatile Shifter (NV shift), and the Nonvolatile storage unit is a Nonvolatile memory (NVM).
In this embodiment, the one-time prediction state machine 412 has a nonvolatile shift unit or a nonvolatile storage unit for storing a timing control program, and specifically, the timing control program is used for controlling the output timing of each selector 4113. The nonvolatile shift unit is a nonvolatile shifter, and the nonvolatile storage unit is a nonvolatile memory.
The timing control module 42 is configured to control the neural network module 41 to output a timing of prediction calculation of a data bit width instruction (Bitwidth), a System Start instruction (System Start) or a Write policy instruction (Write Configuration) based on at least one of the received Power supply information (Power Sensing), the received Power storage information (Stored Energy Sensing), and the received Power failure information (Power output Sensing), so as to ensure that the plurality of types of prediction calculation can share one neural network module, in other words, one prediction hardware (one neural network architecture) can be used to complete functions of all the predictors.
Referring to fig. 20, a hardware architecture diagram of a neural network module in another embodiment of the present application is shown, and in the embodiment shown in fig. 20, in order to enable multiple types of prediction calculation to be completed in one hardware architecture at different times, the hardware architecture is further specified in the present application. As shown, the neural network module 41 further includes a softmax state machine 413 and a determination unit 414 (i.e., a portion shown in fig. 20 where OR is 0) configured in the multiply-accumulate unit. In this embodiment, to normalize the hardware architecture, a number of virtual connections are constructed in the network of the neural network module 41 to normalize the neural network topology by inserting 0 connection Weights (i.e., Weights 1, Weights 2 … … Weights 5 of the weight registers shown in FIG. 20).
In the embodiment shown in FIG. 20, the one-time prediction state machine 412 includes a non-volatile shift unit for storing a timing control program. The schematic of the one-shot prediction state machine 412 controlling the timing of the one-shot prediction computation of the information that the neural network element receives the input is represented by the dashed arrow shown in FIG. 20; the schematic of the timing control module 42 controlling the timing of the neural network modules is represented by the dotted arrows shown in fig. 20.
When the neural network module 41 performs one prediction (for example, prediction of future on-off time or prediction of future power-off time), the one-time prediction state machine 412 controls the selector to output the selected weight value and the source neuron and the target neuron which need to be activated to the judging unit 414 after one calculation, and whether any input of the judging unit 414 is 0 or not is determined by the judging unit 414, if any input is 0, the multiplier is bypassed, and if any input is not 0, the multiplier multiplies and accumulates the inputs, and then the neurons in the neural network unit 411 are written back until all neurons in the input layer, the hidden layer and the output layer are processed. Finally, the softmax layer is executed under the control of the softmax state machine 413. After all steps are performed by the predictor, the output of the predictor is then selected to be stored in a non-volatile shift unit 415 in the execution module, and some of the output is updated in a non-volatile memory (NVM)415 shown in fig. 6 (e.g., the timing control module also controls the neural network module to update the power down information in one power up cycle, or the timing control module controls the neural network module to update the power up information in one power down cycle) for the next other prediction, such as power down prediction confidence or power up confidence. In this embodiment, the multiplier and the adder in the multiply-accumulate unit are a floating-point multiplier and a floating-point adder.
In this embodiment, the timing control module 42 includes a nonvolatile shift unit or a nonvolatile memory unit for storing a timing control program, where the nonvolatile shift unit is a nonvolatile shifter and the nonvolatile memory unit is a nonvolatile memory.
In an embodiment, the neural network module implements multiple prediction calculations through a multiplexing hardware architecture, and implements output of at least one of a data bit width instruction (Bitwidth), a Start instruction (System Start), or a Write policy instruction (Write Configuration) or/and Predicted QoS (Predicted QoS) to perform energy management on operations of the processor. In this embodiment, the neural network module 111 performs the following prediction calculation in a prediction calculation process based on the received at least one of the power supply information, the power storage information, and the power failure information of the electronic device at least one time:
(1) predicting and calculating to obtain future Power-on Time and Power-on Confidence (Confidence) of the electronic equipment based on the received Power supply information;
(2) performing prediction calculation based on the received future power-on time, power-on confidence and power storage information (Stored Energy Sensing) to obtain a data bit width instruction and a Start instruction (System Start);
(3) performing prediction calculation based on the received data bit width instruction and Power failure information (Power Outage Sensing) to obtain service quality prediction information;
(4) predicting and calculating the future Power-off time and the Power-off confidence of the electronic equipment based on the received Power-off information (Power Outage Sensing);
(5) and performing prediction calculation based on the received future power-off time and the power-off confidence coefficient to obtain a write strategy instruction and a write strategy confidence coefficient.
The neural network prediction module based on time multiplexing obtains data transmission bit width or a data write strategy and operation starting time by predicting future electric energy input or power-off time, so that the operation of a processor can be ensured to be matched with expected energy obtained by the processor, the retention time of a nonvolatile element is dynamically adjusted to be matched with the electric energy condition according to the write strategy, and the service quality is matched with the minimum service quality requested in advance; in addition, the neural network predictor based on time multiplexing is used for realizing various prediction calculations in different time periods through the hardware architecture of one neural network predictor, in other words, the neural network predictor based on time multiplexing realizes the prediction calculations of a plurality of small-scale neural networks in different time periods, thereby achieving the purpose of saving hardware cost and area.
Referring to fig. 10, as shown in the figure, the future energy predictor 1001 obtains Power supply information (Power Sensing) at multiple times from the feature extraction module, predicts the Power supply information, and then outputs future Power-on Time (Power-on Time) and Power Confidence (Confidence) of the electronic device to the bit width predictor 1002; meanwhile, the feature extraction module outputs Power storage information (Stored Energy) to the bit width predictor 1002, the bit width predictor 1002 is configured to perform approximate calculation according to the future Power-on Time (Power-on Time), the Power-on Confidence (Confidence) and the Power storage information (Stored Energy), and output a data bit width instruction (Bitwidth) to the quality of service predictor 101 and the approximate bit width controller 111; meanwhile, the bit width predictor 1002 also predicts an output Start Threshold (System Start Stored Energy Threshold) according to a future Power-on Time (Power-on Time), a Power-on Confidence (Confidence) and a feature extraction module output Power storage information (Stored Energy), and outputs a Start instruction (System Start) to the Start controller 110 when the Start Threshold (System Start Stored Energy Threshold) satisfies a Threshold Y.
The Start controller 110 is configured to Start the processor when receiving a Start instruction (System Start) output by the prediction module 10.
The approximate bit width controller 111 is configured to control the calculation accuracy of the processor according to a data bit width instruction (Bitwidth) output by the bit width predictor 1002 when receiving the data bit width instruction.
The Power-off predictor 1021 is configured to predict according to the Power-off information (Power-off Sensing) output by the feature extraction module, and then output a future Power-off Time (Power-off Time) to the backup Time predictor 1022, and simultaneously output a Power-off Confidence (Confidence) to the backup Time predictor 1022 and the service quality predictor 101, respectively, where the backup Time predictor 1022 is configured to generate a Write strategy instruction (Write Configuration) and a Write strategy Confidence (Confidence) according to the future Power-off Time (Power-off Time) and the Power-off Confidence (Confidence), and output the Write strategy instruction to the retention Time controller 112 when the Write strategy Confidence meets a threshold X.
The retention time controller 112 is configured to execute a Write operation according to at least one information of a Write current and a Write time included in a Write strategy command (Write Configuration) when receiving the Write strategy command (Write Configuration) output by the backup time predictor 1022.
The service quality predictor 101 performs prediction calculation according to the data bit width instruction (Bitwidth) and the outage Confidence (Confidence) output by the outage predictor 1021 to obtain Predicted QoS (Predicted QoS), so that the processor predicts the potential output quality of the running program of the electronic device based on different approximation methods in dynamic bit width execution approximation and dynamic backup data retention time, and the result of the whole energy management system has service quality control.
In summary, the energy management system of the present application obtains the data transmission bit width or the data write strategy and the operation start time by predicting the future power input or power off time, so as to ensure that the operation of the processor matches the expected energy obtained by the processor, dynamically adjust the retention time of the nonvolatile element to match the power condition according to the write strategy, and match the service quality with the minimum (most basic) service quality requested in advance.
The present application further provides an electronic device including the energy management system described in the above embodiment, and in an embodiment, the electronic device is, for example, a chip, and each module involved in the above energy management system (the structure shown in fig. 10) is embedded in the chip, and the modules include a future energy predictor 1001, an approximate bit width predictor 1002, a power-off predictor 1021, a backup time predictor 1022, a quality of service predictor 101, a start controller 110, an approximate bit width controller 111, and a retention time controller 112. These devices are integrated in a chip in the form of a logic processing unit or a logic circuit, and the chip may exhibit various packaging structures depending on the requirements applied to different electronic devices.
In one embodiment, the chip is, for example, a microprocessor chip, the microprocessor is a Nonvolatile processor (NVP), and an architecture of the Nonvolatile processor includes a future energy predictor 1001, an approximate bit width predictor 1002, a power-off predictor 1021, a backup time predictor 1022, a quality of service predictor 101, a start controller 110, an approximate bit width controller 111, and a retention time controller 112. The processor may be any commercially available processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
In one embodiment, the electronic device is, for example, a circuit board or a card on which an integrated circuit or a chip is disposed. The circuit board is, for example, a double-layer PCB board or a multi-layer PCB board.
The application also provides a Nonvolatile Processors (NVPs), which includes the above energy management system. The nonvolatile processor is a microprocessor chip, and each module involved in the energy management system (the structure shown in fig. 10) is built in the microprocessor chip, and the modules include a future energy predictor 1001, an approximate bit width predictor 1002, a power-off predictor 1021, a backup time predictor 1022, a quality of service predictor 101, a start controller 110, an approximate bit width controller 111, and a retention time controller 112. These devices are integrated in a microprocessor chip in the form of a logic processing unit or logic circuit, which may present a variety of packaging structures depending on the requirements applied to different electronic devices.
Referring to fig. 11, which is a schematic view of an embodiment of the electronic device of the present application, as shown in the figure, the electronic device 3 includes a processor 31 and the energy management system 30. In one embodiment, the processor 31 is a non-volatile processor (NVP), but is not limited thereto, and in other embodiments, the processor may be a general processor, such as any commercially available processor, controller, microcontroller or state machine, without departing from the inventive concepts and concepts disclosed herein. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
In embodiments provided herein, the electronic device is an internet of things device, e.g., a wearable device or an implantable device, such as a wearable electronic device may include any type of electronic device that may be worn on a limb of a user. The wearable electronic device may be secured to a human limb such as a wrist, ankle, arm, or leg. Such electronic devices include, but are not limited to, health or fitness assistant devices, digital music players, smart phones, computing devices or display exercise or other activity monitors, time-tellable devices, devices capable of measuring biometric parameters of a wearer or user, and the like. Such as a blood glucose test device or the like.
As one example, the wearable electronic device may be implemented in the form of a wearable health assistant that provides health-related information (real-time or non-real-time) to the user, an authorized third party, and/or an associated monitoring device. The device may be configured to provide health-related information or data, such as, but not limited to, heart rate data, blood pressure data, temperature data, blood oxygen saturation data, diet/nutrition information, medical reminders, health-related reminders or information, or other health-related data. The associated monitoring device may be, for example, a tablet computing device, a telephone, a personal digital assistant, a computer, or the like.
As another example, the electronic device may be configured in the form of a wearable communication device. The wearable communication device may include a processor coupled to or in communication with a memory, one or more communication interfaces, output devices (such as a display and speakers), and one or more input devices. One or more communication interfaces may provide electronic communication between the communication device and any external communication network, device, or platform, such as, but not limited to, a wireless interface, a bluetooth interface, a USB interface, a Wi-Fi interface, a TCP/IP interface, a network communication interface, or any conventional communication interface. In addition to communication, the wearable communication device may provide information, messages, video, operational commands, etc. regarding the time, health, status, or externally connected or communicating devices and/or software running on such devices (and may receive any of the above from an external device).
Please refer to fig. 12, which is a schematic diagram of an electronic device according to another embodiment of the present application. As shown, in an embodiment, the electronic device further comprises a power supply means 32 for generating or storing electrical energy. In this embodiment, the power supply device 32 is, for example, a battery or a self-powered system, which includes an energy harvester, and the energy harvester obtains energy from human body movement, such as vibration energy from actions or behaviors of walking or swinging, jumping, pressing (such as pressure obtained by a small energy harvester implanted in a shoe during running), breathing, etc., and converts the vibration energy into electric energy, and in other cases, the energy may come from the natural environment, such as solar energy, etc. The electrical energy harvested by the power supply unit 32 needs to be processed from AC to DC or DC to DC and then the harvested energy is temporarily stored in off-chip or even on-chip capacitors, which are used primarily to support data rather than to store energy.
In one embodiment, as shown in fig. 12, the electronic device further includes one or more sensing devices 33, and the one or more sensing devices 33 are configured to sense at least one of geographical location information, ambient light information, ambient magnetic field information, sound information, temperature information, humidity information, pressure sensing information, acceleration information, ultraviolet information, blood glucose information, alcohol concentration information, pulse information, heart rate information, respiration information, and exercise amount information.
In embodiments, the sensors may include various electronic, mechanical, electromechanical, optical, or other devices that provide information related to external conditions around the wearable device. In some embodiments, the sensor may provide a digital signal to the processing subsystem, for example, on a streaming basis or in response to polling by the processing subsystem, as desired. Any type of environmental sensor and combination of environmental sensors may be used; by way of example, accelerometers, magnetometers, gyroscopes and GPS receivers are shown.
Some environmental sensors may provide information about the location and/or motion of the wearable device. For example, an accelerometer may sense acceleration (relative to free fall) along one or more axes, e.g., using piezoelectric or other components in conjunction with associated electronics to generate a signal. A magnetometer may sense an ambient magnetic field (e.g., the earth's magnetic field) and generate a corresponding electrical signal that may be interpreted as a compass direction. Gyroscopic sensors may sense rotational motion in one or more directions, for example using one or more MEMS (micro-electromechanical systems) gyroscopes and associated control and sensing circuitry. A Global Positioning System (GPS) receiver may determine a location based on signals received from GPS satellites.
Other sensors may be included in addition to or in place of these examples. For example, the sound sensor may incorporate a microphone along with associated circuitry and/or program code to determine, for example, decibel levels of ambient sound, and may also include a temperature sensor, a proximity sensor, an ambient light sensor, a biometric sensor/physiological characteristic sensor such as a heartbeat, respiration, pulse, blood glucose, alcohol concentration detection sensor, and the like. In some embodiments, physiological or biometric sensors may be used to verify the identity of the wearer of the wearable device.
In one embodiment, as shown in FIG. 12, the electronic device further includes a storage device 34 for storing data output by the processor. In some examples, the storage device 34 is, for example, a Non-volatile memory (NVM), a Read-only memory (ROM), a Random Access Memory (RAM), an EEPROM, a CD-ROM or other magnetic storage device, a magnetic disk storage device or other magnetic storage device, a flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium.
In one embodiment, as shown in fig. 12, the electronic device further includes a wireless communication module 35 for sending data output by the processor or receiving data wirelessly transmitted by an external device. The communication interface of the wireless communication module is such as, but not limited to, a wireless interface, a bluetooth interface, a USB interface, a Wi-Fi interface, a TCP/IP interface, a network communication interface, or any conventional communication interface.
The present application further provides an energy management method applied to an electronic device having a processor, where in an embodiment, the processor is a Nonvolatile processor (NVP).
In embodiments provided herein, the electronic device is an internet of things device, e.g., a wearable device or an implantable device, such as a wearable electronic device may include any type of electronic device that may be worn on a limb of a user. The wearable electronic device may be secured to a human limb such as a wrist, ankle, arm, or leg. Such electronic devices include, but are not limited to, health or fitness assistant devices, digital music players, smart phones, computing devices or display exercise or other activity monitors, time-tellable devices, devices capable of measuring biometric parameters of a wearer or user, and the like. Such as a blood glucose test device or the like.
In an embodiment, please refer to corresponding descriptions in the embodiments described in fig. 1 to 12 for a description of the electronic device, which is not described herein again. Referring to fig. 13, a flow chart of an embodiment of the energy management method of the present application is shown, as shown, the energy management method includes the following steps:
step S10, extracting at least one of Power supply information (Power Sensing), Power storage information (Stored Energy Sensing), and Power failure information (Power output Sensing) of the electronic device at least one time. In the embodiment, the time may be different time periods, and may be divided into a plurality of time levels according to different requirements, such as 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc., it should be noted that the above time is exemplary, and in different implementation situations, the time is not limited thereto.
In one embodiment, the power supply information, the power storage information and the power failure information at one or more moments of the electronic device are extracted, for example, the power supply information, the power storage information and the power failure information at the last 10 historical moments of the electronic device are extracted to the prediction module for prediction. In an example, the power supply information of the last 10 historical moments of the electronic device is the last 10 continuous power-on times, or the power storage information of the last 10 historical moments of the electronic device is the remaining power of the last 10 moments, or the power failure information of the last 10 historical moments of the electronic device is the power failure duration of the last 10 moments.
In an embodiment of the step S10, the power supply information of the electronic device at least at one moment is obtained by a feature extraction module when the electronic device is powered on or during a power-on cycle.
In another embodiment of the step S10, the power storage information of the electronic device at least at one moment is obtained by a feature extraction module when the electronic device is powered on or during a power-on cycle.
In another embodiment of the step S10, power-off information of the electronic device at least at one moment is obtained by a feature extraction module when the electronic device is detected to be powered off or during a power-on period.
In an embodiment, the power supply information is power supply information of the electronic device, the power supply information is generated by a self-powered system of the electronic device, such as an energy harvester, which obtains energy from human body movement, for example, vibration energy from actions or behaviors of walking or limb swinging, jumping, pressing (such as pressure obtained by a small energy harvester implanted in a shoe during running), breathing, and the like, and converts the vibration energy into electric energy, and in other cases, the energy may also come from a natural environment, such as solar energy and the like. The energy harvested by the energy harvester needs to be processed from AC to DC or DC to DC and then the harvested energy is temporarily stored in off-chip or even on-chip capacitors, which are mainly used to support data rather than to store energy.
In an embodiment, the power storage information is power information stored in a battery or a power storage capacitor of the electronic device, such as the stored power information is obtained in real time or intermittently under the assumption that power consumption is constant.
In an embodiment, the power failure information is information of interruption of power input in the electronic device due to insufficient power supply, energy exhaustion, human factors (such as human setting or human damage) or unforeseen accidents, and the like, such as information of time of power failure and duration of power failure. In one embodiment, 10 levels of power down time may be set, for example, 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc. for different periods of time.
In one embodiment, the extraction of the Power supply information (Power Sensing), the Power storage information (Stored Energy Sensing), and the Power failure information (Power output Sensing) of the electronic device at least at one time may be implemented according to the circuit of the feature extraction module shown in fig. 4.
In an embodiment, the step of extracting the power supply information of the electronic device at least at one moment is to acquire the power supply information of the electronic device by collecting a current value flowing through a detection element or voltage values at two ends of the detection element; the power supply information is power-on information of the electronic equipment, and the power supply information is generated by a self-powered system of the electronic equipment. In the embodiment shown in fig. 4, the feature extraction module as a front-end circuit includes, for example, a battery or a power supply including a charging device, one end of the power supply is grounded, the other end of the power supply is connected to an Rs resistor, the Rs resistor serves as a detection element, and the Rs resistor and a 6-bit ADC converter in fig. 4 constitute the detection unit in the present embodiment for detecting and acquiring the power supply information, wherein the Rs resistor and the Rs resistor are used as detection elements to acquire a current value flowing through the Rs resistor or a voltage value at two ends of the Rs resistor and provide power supply information to the electronic device.
In an embodiment, the step of extracting the power storage information of the electronic device at least one moment is to acquire the power storage information of the electronic device by acquiring a voltage drop of an energy storage element, that is, acquiring the power storage information, that is, the remaining power of the energy storage element, by acquiring a voltage difference (voltage drop) between two ends of the energy storage element. In the embodiment shown in fig. 4, the energy storage element is a grounded capacitor C1 in fig. 4. The capacitor C1 and the ADC converter in fig. 4 constitute the detection unit described in this embodiment.
In an embodiment, the step of extracting the power failure information of the electronic device at least one moment is to acquire the power failure information by collecting a voltage drop across a discharging element, specifically, the voltage of a capacitor is checked when the electronic device recovers from the power failure, and the system power failure time can be calculated by the detected voltage drop. In the embodiment shown in fig. 4, the power failure sensing unit is configured to acquire power failure information including power failure time by collecting a voltage difference across the power discharging element. The discharging element is a leakage capacitor C2 in fig. 4, one end of the leakage capacitor C2 is connected via a DC-DC converter, a Charge Breaker (Charge Breaker) and an LDO device, and the other end of the leakage capacitor C2 is grounded. In a specific implementation, the leakage capacitor C2 is charged each time during a recovery operation controlled by a charge-breaker. The DC-DC converter, LDO device, charge breaker, leakage capacitor C2 and ADC converter in fig. 4 constitute an inductance-breaking sensing unit. As shown in fig. 4. By charging the leakage capacitor each time during a recovery operation controlled by the LDO device as shown in fig. 4, the voltage of the capacitor is checked when the electronic device recovers from a power outage, and the system power-off time can be calculated from the voltage drop detected by the ADC.
In one embodiment, the extracted power supply information, power storage information, and power failure information (i.e., Sensing Results information shown in fig. 4) at one or more times of the electronic device are stored in respective nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter).
Next, step S11 is executed to perform prediction calculation according to at least one of the Power supply information (Power Sensing), the Power storage information (Stored Energy Sensing), and the Power failure information (Power output Sensing), and output at least one of a data bit width instruction (Bitwidth), a System Start instruction (System Start), and a Write policy instruction (Write Configuration) or/and quality of service prediction information (Predicted QoS).
In one embodiment, the step S11 is executed to perform a prediction calculation by using at least one of power supply information, power storage information, and power failure information of one or more neural networks at the at least one time, and output at least one of a data bit width instruction, a start instruction, or a write strategy instruction, or/and qos prediction information. In one example, the neural network is, for example, a feed-forward neural network that is trained offline or online back propagation.
Referring to a neural network shown in fig. 2, fig. 2 is a schematic diagram of a neural network of a prediction module in an embodiment of the energy management system of the present application, as shown in the drawing, in the embodiment, the neural network is, for example, a feed-forward neural network, the feed-forward neural network includes 1 Input Layer (Input Layer), 2 Hidden layers (Hidden layers 1,2), and 1 Output Layer (Output Layer), each Layer has 10 neurons, each neuron has 10 outputs, and power supply information, power storage information, or power failure information of 10 time instants (from On time _1 to On time _10) received from a non-volatile Shifter (NV shift) is used for predicting future generated power or time of possible interruption. Without being limited thereto, in other possible embodiments, as shown in fig. 3, the feedforward neural network may include more Hidden layers (Hidden layers 1,2 … … N) and each Layer may include more or less neurons (N), as well as another neural network structure. The neural network shown in fig. 3 is an off-line trained neural network or an on-line back propagation trained neural network.
In step S11, a prediction calculation is performed according to the at least one information, and at least one of the data bit width command, the start command, or the write strategy command, or/and the QoS prediction information is outputted, that is, by executing step S11, the data transmission bit width, the data write strategy, and the time for starting the calculation are obtained by predicting the future power input or power off time, and the predicted information is provided to the processor, so as to ensure that the calculation of the processor matches the expected energy obtained by the processor, dynamically adjust the retention time of the nonvolatile element to match the power condition according to the write strategy, and match the Quality of Service (QoS) to the minimum (most basic) QoS requested in advance.
In an embodiment, the step of performing a prediction calculation according to at least one of the Power supply information (Power Sensing), the Power storage information (Stored Energy Sensing), and the Power failure information (Power output Sensing) and outputting at least one of a data bit width instruction, a start instruction, or a write strategy instruction or/and qos prediction information includes performing an approximation calculation according to the Power supply information and the Power storage information to predict and output the data bit width instruction and the start instruction. Referring to fig. 14, which is a flowchart illustrating step S11 in an embodiment of the energy management method of the present application, as shown in the drawing, in the present embodiment, the step S11 further includes:
step S110, predicting future electrifying time and electrifying confidence coefficient according to the power supply information; in the present embodiment, the last 10 consecutive power-on times of the electronic device received by a feedforward neural network are taken as an example, and a counter (not shown) is used to calculate the power-on time, and the counter pushes the last calculated power-on time to the nonvolatile shifter to replace the earliest power-on time.
In this embodiment, by configuring a fully connected feed-forward neural network with 2 hidden layers, setting 10 neurons per layer, outputting 10 potential energy levels (energy levels) for the 10 neurons of the layer, translating each energy level for a power-on time, each output indicating a power-on confidence, where the highest value is output as the predicted energy level and its confidence when the power-on confidence is very different from the other confidences. In one case, if the first few predicted energization confidences are within the 10% interval, the energy levels for the predicted future energization times are weighted averaged, and the corresponding energization confidences are also averaged.
Step S111, performing approximate calculation according to the future power-on time, the power-on confidence and the received power storage information (Stored Energy Sensing) of the electronic device to predict an output data bit width instruction (Bitwidth) and a Start Threshold (System Start Stored Energy Threshold).
In this embodiment, the data bit width instruction and the start threshold are output by performing prediction through a feed-forward neural network, the feed-forward neural network receives, as inputs, an energy level of a future power-on time, a power-on confidence and a stored energy level included in power storage information, the feed-forward neural network includes 1 input layer, 2 hidden layers and 1 output layer, each layer has 10 neurons, each neuron has 10 outputs, and the output layer outputs 2 information, that is, an output data bit width instruction and a start threshold, wherein 8 outputs of the output layer are used as outputs of the data bit width instruction, and 1 output of the output layer is used as an output of the start threshold.
In this embodiment, the feedforward neural network predicts and determines an output data bit width by predicting, and specifically, performs an approximate calculation according to 10 potential energy levels (energy levels) received by an input layer of the feedforward neural network and a power-on confidence corresponding to each energy level to predict and determine an appropriate output data bit width, so as to determine an accuracy with which the processor performs an operation at which energy level, that is, dynamically collect a bit width required during each power-on interval, thereby reducing processor calculation and backup costs and shortening response time.
In this embodiment, the process of performing approximate calculation according to the future power-on time, the power-on confidence and the power storage information of the electronic device to obtain the data bit width instruction includes:
firstly, carrying out prediction calculation according to the future power-on time, the power-on confidence coefficient and the power storage information of the electronic equipment to obtain approximate configuration data (approximate Config); in this embodiment, when 10 potential energy levels (energy levels) and the power-on confidence corresponding to each energy level are received through the neural network configured as the bit width predictor, the approximate configuration data is calculated by prediction of 2 hidden layers, and the approximate configuration data includes bit width information obtained by the bit width predictor through the neural network according to future power-on time, power-on confidence and power storage information prediction calculation, such as how many bits of bit width the processor needs to calculate, so as to determine the correct or proper bit width configuration.
Then, the approximate configuration data (approximate Config) is identified according to preset approximate indicating data (ACEN), and when the approximate configuration data can be approximately calculated, approximate calculation is carried out to generate a data bit width instruction (Bitwidth). In the present embodiment, the approximation indicating data (ACEN) is preset, specifically, data that can be approximated through programmer identification setting, and the data includes a data buffer (data buffer) or an image (image), but does not include a basic variable, such as an index in a "for" loop.
The process of performing the approximate calculation according to the future power-on time, the power-on confidence and the power storage information of the electronic device to obtain the data bit width instruction may be implemented by the approximate calculation architecture described in the foregoing embodiment with reference to fig. 17, which is not described herein again.
Step S112, outputting a start instruction to the processor when the start threshold satisfies the first threshold, in this embodiment, when an input layer of a feedforward neural network receives 10 potential energy levels (energy levels) and a power-on confidence corresponding to each energy level, the input layer calculates and outputs the start threshold by using the prediction of 2 hidden layers as an indication of whether to start.
For example, if the predicted potential input energy level is relatively low and there is insufficient stored energy in the buffer capacitor, then no start-up is performed; if the predicted potential input energy is high, but the received energization confidence is low, then a startup is indicated only if the stored energy level is high enough to reach the prediction threshold; if the predicted potential input energy is high and the confidence of power-on is high, even if the stored energy is low, a startup is indicated (very low threshold of predictor output) for better forward progress and QoS satisfaction. In one example, the energization confidence ratio is relatively low, e.g., less than 30%, and the energization confidence ratio is relatively high, e.g., greater than 70%. But not limited to this, the threshold of the power-on confidence can be dynamically adjusted according to the actual situation under the circumstance of knowing the innovative idea of the present application.
In one embodiment, to avoid the electronic device producing a low quality data output, such as data below 20dB, the corresponding data of 20dB and above is generally considered to be a reasonable quality data. Referring to fig. 15, which is a flowchart illustrating a step S11 of the energy management method according to another embodiment of the present application, as shown, the step S11 further includes:
step S113, carrying out prediction calculation according to the data bit width instruction and outage information to obtain Predicted QoS (Predicted QoS), wherein the outage information comprises outage confidence; in one embodiment, the outage confidence is obtained by a outage predictor.
In the present embodiment, the approximate bit width and the average power outage prediction confidence are obtained during the frame data as input processing. In this embodiment, the first threshold is, for example, 20dB, but is not limited thereto, and different thresholds may be set in different implementation states, for example, for different types of electronic devices.
Step S114, outputting the Predicted QoS to the processor when the QoS prediction information satisfies a first threshold.
Because more electric energy is dissipated in high bit width operation (high calculation precision of a processor) than in low bit width (low calculation precision of the processor), the processor is controlled to start and store an energy threshold value in the application, the purpose of relieving the problem of low-quality output is achieved under the condition of reasonable energy management, the starting time of the processor is delayed by controlling the parameter of the first threshold value until enough energy exists in the energy storage capacitor to restart the processor, and high-quality data operation or output is ensured under the mechanism of reasonable energy management.
Although many electronic devices are powered by an unstable power source (e.g., an energy harvester in a self-powered system) with the aid of non-volatile elements, the backup operation of the electronic device while in operation still consumes a significant amount of power, especially when the power source is intermittent. Therefore, if the power-off information can be obtained in advance by a certain technique, the NVM (Non-volatile memory) retention time can be shortened from a very long time (e.g. more than 10 years) to a time only slightly longer than the power-off time, so that the necessary energy can be saved during the data backup operation. In addition, since the electronic device usually has a block/distributed non-volatile memory (NVM), this makes the system often consume a large amount of standby energy during data backup operation, and for these unnecessary consumption, the standby energy can be reduced by improving the backup retention time, thereby realizing the control of energy saving. For this reason, in the present application, the reasonable write strategy can be determined by predicting the power-off time, in other words, how much write current is used at what time to decide the time of data backup. Referring to fig. 16, which is a flowchart illustrating a step S11 of the energy management method according to another embodiment of the present application, as shown in the drawing, the step S11 further includes:
step S110', predicting the future power-off time and the power-off confidence coefficient of the electronic equipment according to the power-off information; in this embodiment, a future Power-off Time (Power-off Time) and a Power-off Confidence (Confidence) are predicted according to the Power-off information (Power-off Sensing) at the plurality of times; in one example, the power outage information is information of power input interruption in the electronic device due to factors such as insufficient energy supply, energy exhaustion, human setting or unpredictable accidents, and the like, such as information of a time node of the power outage and a duration of the power outage. In one embodiment, 10 levels of power down time may be set, for example, 10ms, 100ms, 1s, 2s, 3s, 10s, 1 minute, 10 minutes, 1 hour, 1 day, etc. for different periods of time.
In one example, the power outage information may be collected by a power outage sensing unit of a feature extraction module shown in fig. 4, for example, a DC-DC converter, an LDO device, a Charge Breaker (Charge Breaker), a leakage capacitor C2 and an ADC converter in fig. 4 constitute a power outage sensing unit, and the system power outage time may be calculated by a voltage drop detected by the ADC by charging the leakage capacitor each time during a recovery operation controlled by the Charge Breaker (Charge Breaker) as shown in fig. 4 and checking the voltage of the capacitor when the electronic device recovers from a power outage. In particular, as shown in the power-off sensing unit portion of fig. 4. Each time the system is powered up (before resuming operation), the leakage capacitor charges at a fully stable voltage. When a power failure occurs, the voltage on the leakage capacitor drops with the passage of time, and the detected power-off time can be obtained by measuring the remaining voltage in the leakage capacitor after the next power-on. In this embodiment, the received Power-off information (Power output Sensing) of the electronic device at one or more time points is stored in the nonvolatile shift unit. In one example, the last 10 consecutive power-off messages received from the electronic device are used to calculate the power-off time by a counter (not shown), which pushes the last calculated power-off time to the non-volatile shifter to replace the earliest power-off time.
In the present embodiment, by configuring a fully connected feedforward neural network having 1 input layer, 2 hidden layers, and 1 output layer, each layer is provided with 10 neurons, the input layer is used to receive Power outage information such as 10 historical Power outage times from the nonvolatile shift unit, and future Power outage times (Power-off times) of, for example, 10 Power outage Time levels and Power outage Confidence levels (Confidence) corresponding to each future Power outage Time are predicted by the output layer output after calculation through the 2 hidden layers of the feedforward neural network.
Step S111', generating a write strategy command and a write strategy confidence coefficient according to the future power-off time and the power-off confidence coefficient; the write strategy command includes at least one of write current and write time for writing data. The writing time is a data writing time duration, in a specific implementation, the data writing time duration is determined by a writing pulse width, and the writing current and the writing pulse width can affect a retention (holding or backup) time of the written data. In this embodiment, the write strategy command is configured to include a Retention Time of write data or is a Retention Time (Retention Time) strategy, and the write strategy can control to improve the backup Retention Time to reduce the backup energy, thereby achieving the purpose of saving energy.
In an embodiment, the step S111' is further configured to perform a prediction calculation according to the future power-off time and the power-off confidence level, and obtain the write strategy command by balancing write current and write time in the write strategy command. In this embodiment, the purpose of balancing the write current and the write time in the write strategy command is to find an optimal write strategy, that is, to perform a data write operation with the minimum write current and the shortest write time.
As shown in fig. 8, when the write strategy determines that the retention time of the written data is 10ms, the write current and the write pulse width are distributed by using a curve composed of square points in fig. 8, and the trade-off between the write current and the write pulse width is the write current and the write pulse width using the coordinates of the vertex of the upper right corner of the small square illustrated in fig. 8 (i.e., the point a indicated by the arrow in fig. 8); accordingly, when the write strategy determines that the retention time of the written data is 1 day, the write current and the write pulse width distributed by a curve composed of dots in fig. 8 are adopted, and the trade-off between the write current and the write time in the curve is the write current and the write pulse width which are adopted by a vertex coordinate point (i.e., a point b indicated by an arrow in fig. 8) at the upper right corner of the large square illustrated in fig. 8; similarly, when the write strategy determines that the retention time of the written data is 1 minute or 1 second, the write current and the write pulse width distributed by a curve composed of a regular triangle point and an inverted triangle point in fig. 8 are adopted, and the trade-off write current and the write pulse width are respectively adopted in the curve at the vertex of the upper right corner of the square illustrated in fig. 8 (i.e., the point c or the point d indicated by the arrow in fig. 8).
Since the write current and write pulse width of the data can affect the retention (hold or backup) time of the written data, a write current is provided in this application, see FIG. 18, which is a schematic diagram of a write operation circuit in one embodiment of this application, as shown, different currents are generated by a current mirror according to the write current and write time determined from the write strategy command, different times are determined by a counter, and the selection of the current is controlled by the write data MUX array shown in FIG. 18 to determine how much current to write the data, such as I shown in the figure1To I8The 8-way circuit shown selects different time lengths through the illustrated write time comparator to determine how much time is used to write data.
In FIG. 18, IrefIs the base current of the current mirror, and the secondary I is generated by changing the W/L ratio (the width-length ratio of the transistor channel can determine the amplification factor of the current mirror) of the current mirror composed of PMOS transistors1To I8In the present embodiment, the maximum current change rate is from 1 day to 10 ms. Depending on the predicted write current configuration in the illustration, different currents may be selected in the MUX array, the write current being connected to "Bit" or "Bit B" (the write data may be changed by flipping the current direction of "Bit" or "Bit B"), depending on the input of the "write data" signal. The other row of "Bit" or "Bit B" controls the write time, as compared to the predicted write time configuration according to the illustration by a high frequency 4-Bit counter (sub ns per cycle) that is disconnected from Ground (GND) to terminate the write operation once the counter reaches the preset write time. In this embodiment, data is written into a Memory by performing the write operation, where the Memory is a Non-volatile Memory (NVM), such as STT-RAM (Shared Memory Technology Random Access Memory).
And step S112', outputting the write strategy command to the processor when the write strategy confidence coefficient meets a second threshold value. In this embodiment, the write strategy instruction is output to the processor when the write strategy confidence level meets a second threshold value X, where the second threshold value X is a preset power failure confidence level, and the write strategy instruction is sent to the processor when the power failure confidence level obtained through neural network prediction is greater than the preset power failure confidence level X. The second threshold value X may be set to different values in different implementation states, including the medium of the storage device in which data is written, such as STT-RAM (Shared Memory Technology Random Access Memory) or the like; in addition, these different implementation states may be different in the data content that the processor requires to record, and so on.
In the present embodiment, the above steps S111 'to S112' are implemented by a Neural Network, such as a feed forward Neural Network (feed forward Neural Network), which is a Neural Network trained offline or a Neural Network trained online in a back propagation manner, and the feed forward Neural Network has a Network structure as shown in fig. 2 or fig. 3. For example, the neural network is configured as a time backup predictor for prediction computation to obtain Write strategy instructions (Write Configuration) and Write strategy Confidence (Confidence).
In one embodiment, when the power down time is predicted to be short, such as the power down time is less than 50ms or the power down confidence is below 80%, the system can run using the stored energy without a backup operation, i.e., the backup time predictor 1022 does not send a write strategy instruction to the processor.
In another embodiment, when a Memory in the electronic device is, for example, a Static Random-Access Memory (SRAM) with low standby power consumption, due to low standby power consumption of the Memory, backup may not be needed when the power-off time is, for example, between 50ms and 0.2s, that is, the backup time predictor 1022 does not send the write policy instruction to the processor.
In an embodiment, the processor is a Nonvolatile processor (NVP) for calculating and processing the sensing data acquired by the electronic device.
Finally, step S12 is executed to perform energy management on the operation of the processor according to the at least one instruction or/and QoS prediction information, specifically, to perform energy management on the operation of the processor according to at least one instruction or/and QoS prediction information (Predicted QoS) of the data bit width instruction (Bitwidth), the System Start instruction (System Start), or the Write strategy instruction (Write Configuration). Specifically, the method comprises the following steps: when the data bit width instruction is received, controlling the calculation precision of the processor according to the data bit width instruction; starting the work of the processor when the starting instruction is received; and when the write strategy command is received, executing write operation according to at least one information of write current and write time contained in the write strategy command.
In one embodiment, the processor includes a near start controller 110, an approximate bit width controller 111, and a retention time controller 112.
The approximate bit width controller 111 is configured to control the calculation precision of the processor according to a data bit width instruction (Bitwidth) when receiving the data bit width instruction; in the present embodiment, the approximate bit width controller 111 has one or more nonvolatile shift units, such as a nonvolatile Shifter (NV Shifter), into which the approximate bit width controller 111 stores the received data bit width instruction. In some examples, the processor is configured to calculate and process the sensed or interaction data acquired by the electronic device.
In some examples, the processing of the sensed data, such as the wearable device, generates user data that may be transmitted by the wireless module or displayed by the display device by processing the collected heart rate data, blood pressure data, temperature data, blood oxygen saturation data, diet/nutrition information, medical reminders, health-related reminders or information, or other health-related data.
In some examples, the processing of the interaction data may be such as by a user operating a wearable device to respond to an event notification generated by a host device. The wearable device can receive notifications of events from the host device and present reminders and prompts for responses to the user. If the user responds to the prompt, the wearable device may transmit the response to the host device. For example, a user may respond to a phone call, text message, or other communication received at a host device.
The Start controller 110 is used to Start the processor when receiving the Start instruction (System Start); in one embodiment, the start-up controller 110 has one or more non-volatile shift cells, such as a non-volatile Shifter (NV Shifter), into which the start-up controller 110 stores received start-up instructions. In this embodiment, the Start Controller 110 is, for example, an NVP Start Trigger (NVP Start Trigger Controller).
The retention time controller 112 is configured to execute a Write operation according to at least one of Write current and Write time included in the Write strategy command (Write Configuration) when receiving the Write strategy command. In this embodiment, the retention time controller 112 has one or more non-volatile shift cells, such as a non-volatile Shifter (NV Shifter), into which the retention time controller 112 stores the received write strategy instructions. The retention time controller 112 performs a write operation according to the received write strategy command, in an example, data written to the memory of the electronic device by the write operation is, for example, calculation or processing data of the processor, or a backup calculation state is recorded.
The processor also receives the quality of service prediction information (Predicted QoS) to cause the processor to perform different approximation methods in approximation and dynamic backup data retention time based on dynamic bit width to predict potential output quality of an electronic device running a program such that the results of the entire energy management system have quality of service control.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be in the form of an indirect coupling or communication connection through some interfaces, devices or units.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The present application also provides a computer readable storage medium storing a computer program for energy management, which when executed implements any of the energy management methods described above.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application.
In the embodiments provided herein, the computer-readable and writable storage medium may include Read-only memory (ROM), random-access memory (RAM), EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, flash memory, a usb disk, a removable hard disk, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. It should be understood, however, that computer-readable-writable storage media and data storage media do not include connections, carrier waves, signals, or other transitory media, but are intended to be non-transitory, tangible storage media. Disk and disc, as used in this application, includes Compact Disc (CD), laser disc, optical disc, Digital Versatile Disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers.
In summary, according to the energy management system, the energy management method, the electronic device, the electronic apparatus, and the computer-readable storage medium provided by the present application, a prediction calculation is performed based on at least one of received power supply information, power storage information, and power failure information of the electronic device at least one time, and at least one of a data bit width instruction, a start instruction, or a write strategy instruction, or/and service quality prediction information is output; and performing energy management on the operation of the processor according to the at least one instruction or/and the service quality prediction information. According to the method and the device, the data transmission bit width or the data write strategy and the operation starting time are obtained by predicting the future electric energy input or power-off time, so that the operation of the processor can be ensured to be matched with the obtained expected energy, the retention time of the nonvolatile element is dynamically adjusted to be matched with the electric energy condition according to the write strategy, and the service quality is matched with the minimum service quality requested in advance.
The above embodiments are merely illustrative of the principles and utilities of the present application and are not intended to limit the application. Any person skilled in the art can modify or change the above-described embodiments without departing from the spirit and scope of the present application. Accordingly, it is intended that all equivalent modifications or changes which can be made by those skilled in the art without departing from the spirit and technical concepts disclosed in the present application shall be covered by the claims of the present application.

Claims (27)

1. An energy management system for use in an electronic device having a processor, comprising:
the prediction module is used for performing prediction calculation based on at least one of the received power supply information, the received power storage information and the received power failure information of the electronic equipment at least one moment, and outputting at least one of a data bit width instruction, a starting instruction or a write strategy instruction or/and service quality prediction information; wherein the data bit width instruction is used for controlling the calculation precision of the processor; the starting instruction is used for starting the work of the processor; the write strategy instruction is used for controlling the processor to execute at least one write operation of write current and write time; and
the execution module is used for carrying out energy management on the operation of the processor according to at least one instruction or/and service quality prediction information output by the prediction module; the execution module comprises:
the approximate bit width controller is used for controlling the calculation precision of the processor according to the data bit width instruction when receiving the data bit width instruction output by the prediction module;
the starting controller is used for starting the processor to work when receiving the starting instruction output by the prediction module;
and the retention time controller is used for executing write operation according to at least one information of write current and write time contained in the write strategy command when receiving the write strategy command output by the prediction module.
2. The energy management system of claim 1, wherein the prediction module receives at least one of power supply information, power storage information, and power outage information for the electronic device at least one time via a feature extraction module, the feature extraction module comprising:
the detection unit is used for acquiring power supply information of the electronic equipment by acquiring a current value flowing through a detection element or voltage values at two ends of the detection element;
the energy storage unit is used for acquiring the electricity storage information of the electronic equipment by acquiring the voltage drop of an energy storage element; and/or
And the power failure sensing unit is used for acquiring the power failure information by acquiring the voltage drop at two ends of a power leakage element.
3. The energy management system of claim 1, wherein the prediction module comprises one or more non-volatile shift units.
4. The energy management system according to claim 1, wherein the prediction module performs prediction calculation on at least one of power supply information, power storage information and power failure information received at least one time of the electronic device by means of one or more neural networks, and outputs at least one of a data bit width instruction, a start instruction or a write strategy instruction or/and service quality prediction information.
5. The energy management system according to claim 1, 3 or 4, wherein the prediction module comprises an approximate calculation unit for performing approximate calculation according to the power supply information and the power storage information to predict and output the data bit width instruction and the start instruction.
6. The energy management system of claim 5, wherein the approximate computation unit comprises:
a future energy predictor that predicts a future power-on time and a power-on confidence of the electronic device based on the power supply information;
and the bit width predictor is used for performing approximate calculation according to the future power-on time, the power-on confidence coefficient and the received power storage information of the electronic equipment so as to predict the bit width instruction of the output data and the starting threshold value.
7. The energy management system according to claim 6, wherein the prediction module further comprises a quality of service predictor, configured to perform prediction calculation according to the data bit width instruction and the power failure information to obtain quality of service prediction information; outputting the service quality prediction information to the execution module when the service quality prediction information meets a first threshold, and outputting a starting instruction to the execution module when the starting threshold meets the first threshold; the power outage information includes a power outage confidence.
8. The energy management system of claim 1, 3 or 4, wherein the prediction module comprises a backup prediction unit comprising:
a power outage predictor that predicts a future power outage time and a power outage confidence level of the electronic device based on the power outage information;
the backup time predictor is used for generating a write strategy instruction and a write strategy confidence coefficient according to the future power failure time and the power failure confidence coefficient and outputting the write strategy instruction to the execution module when the write strategy confidence coefficient meets a second threshold value; the write strategy command includes at least one of write current and write time for writing data.
9. The energy management system of claim 1, wherein the execution module comprises one or more non-volatile shift units.
10. The energy management system of claim 1, wherein the processor is a non-volatile processor.
11. An electronic device, characterized in that it comprises an energy management system according to any one of claims 1-10.
12. A non-volatile processor comprising the energy management system of any of claims 1-10.
13. An electronic device comprising a processor the energy management system of any of claims 1-10.
14. The electronic device of claim 13, further comprising power supply means for generating or storing electrical energy.
15. The electronic device of claim 13, further comprising one or more sensing devices for sensing at least one of geographic location information, ambient light information, ambient magnetic field information, sound information, temperature information, humidity information, stress-induced information, acceleration information, ultraviolet information, blood glucose information, alcohol concentration information, pulse information, heart rate information, respiration information, and motion amount information.
16. The electronic device of claim 13, further comprising a storage device for storing data output by the processor.
17. The electronic device of claim 13, further comprising a wireless communication module for transmitting data output by the processor or receiving data wirelessly transmitted by an external device.
18. The electronic device of claim 13, wherein the processor is a non-volatile processor.
19. The electronic device of claim 13, wherein the electronic device is a wearable electronic device or a human implanted device.
20. An energy management method applied to an electronic device with a processor is characterized by comprising the following steps:
extracting at least one of power supply information, power storage information and power failure information of the electronic equipment at least one moment;
performing prediction calculation according to the at least one information and outputting at least one instruction or/and service quality prediction information in a data bit width instruction, a starting instruction or a write strategy instruction; wherein the data bit width instruction is used for controlling the calculation precision of the processor; the starting instruction is used for starting the work of the processor; the write strategy instruction is used for controlling the processor to execute at least one write operation of write current and write time;
performing energy management on the operation of the processor according to the at least one instruction or/and the QoS prediction information, including:
when the data bit width instruction is received, controlling the calculation precision of the processor according to the data bit width instruction;
starting the work of the processor when the starting instruction is received; and
and when the write strategy command is received, executing write operation according to at least one information of write current and write time contained in the write strategy command.
21. The energy management method according to claim 20, wherein the step of extracting at least one of power supply information, power storage information, and power failure information of the electronic device at least one time comprises:
acquiring power supply information of the electronic equipment by acquiring a current value flowing through a detection element or voltage values at two ends of the detection element;
acquiring the electricity storage information of the electronic equipment by acquiring the voltage drop of an energy storage element; and/or
And acquiring the power failure information by acquiring the voltage drop at two ends of a power leakage element.
22. The energy management method according to claim 20, wherein said step of performing a prediction calculation based on said at least one information and outputting at least one of a data bit width instruction, a boot instruction, or a write strategy instruction or/and qos prediction information comprises performing a prediction calculation based on said at least one information by means of one or more neural networks and outputting at least one of a data bit width instruction, a boot instruction, or a write strategy instruction or/and qos prediction information.
23. The energy management method according to claim 20 or 22, wherein said step of performing a prediction calculation according to said at least one information and outputting at least one of a data bit width instruction, a startup instruction or a write strategy instruction or/and a service quality prediction information comprises performing an approximation calculation according to said power supply information and power storage information to predict and output said data bit width instruction and startup instruction.
24. The energy management method according to claim 20, wherein said step of performing a prediction calculation according to said at least one information and outputting at least one of a data bit width instruction, a start instruction, or a write strategy instruction, or/and qos prediction information comprises:
predicting future electrifying time and electrifying confidence coefficient according to the power supply information;
performing approximate calculation according to the future power-on time, the power-on confidence coefficient and the received power storage information of the electronic equipment to predict a bit width instruction of output data to the processor and output a starting threshold value;
and outputting a starting instruction to the processor when the starting threshold value meets a first threshold value.
25. The energy management method according to claim 24, wherein said step of performing approximate calculations based on said power storage information, said future power-on time and power-on confidence to predict output data bit width instructions and start-up thresholds comprises:
performing prediction calculation according to the data bit width instruction and outage information to obtain service quality prediction information, wherein the outage information comprises outage confidence;
and outputting the service quality prediction information to the processor when the service quality prediction information meets the first threshold.
26. The energy management method according to claim 20 or 22, wherein said step of performing a prediction calculation according to said at least one information and outputting at least one of a data bit width instruction, a start instruction, or a write strategy instruction, or/and qos prediction information comprises:
predicting the future power-off time and the power-off confidence coefficient of the electronic equipment according to the power-off information;
generating a write strategy instruction and a write strategy confidence coefficient according to the future power-off time and the power-off confidence coefficient, wherein the write strategy instruction comprises at least one of information of write current and write time of write data;
and outputting the write strategy instruction when the write strategy confidence coefficient meets a second threshold value.
27. A computer-readable storage medium storing a computer program for energy management, wherein the computer program, when executed, implements the energy management method of any of claims 20-26.
CN201810884579.0A 2018-08-06 2018-08-06 Energy management system, method, electronic device, device and nonvolatile processor Active CN109144214B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810884579.0A CN109144214B (en) 2018-08-06 2018-08-06 Energy management system, method, electronic device, device and nonvolatile processor
PCT/CN2019/097149 WO2020029789A1 (en) 2018-08-06 2019-07-22 Energy management system and method, and electronic device, electronic apparatus and non-volatile processor
US16/703,583 US11422818B2 (en) 2018-08-06 2019-12-04 Energy management system and method, electronic device, electronic apparatus, and nonvolatile processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810884579.0A CN109144214B (en) 2018-08-06 2018-08-06 Energy management system, method, electronic device, device and nonvolatile processor

Publications (2)

Publication Number Publication Date
CN109144214A CN109144214A (en) 2019-01-04
CN109144214B true CN109144214B (en) 2022-05-03

Family

ID=64791723

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810884579.0A Active CN109144214B (en) 2018-08-06 2018-08-06 Energy management system, method, electronic device, device and nonvolatile processor

Country Status (3)

Country Link
US (1) US11422818B2 (en)
CN (1) CN109144214B (en)
WO (1) WO2020029789A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144214B (en) * 2018-08-06 2022-05-03 交叉信息核心技术研究院(西安)有限公司 Energy management system, method, electronic device, device and nonvolatile processor
US11205900B2 (en) * 2019-01-14 2021-12-21 Samsung Electronics Co., Ltd. Device and method with power control
CN110943368B (en) * 2019-11-14 2021-09-14 武汉凌云光电科技有限责任公司 Apparatus, system and method for reliably controlling output power of semiconductor laser
CN110968458B (en) * 2019-11-26 2022-03-29 山东大学 Backup system and method based on reinforcement learning and oriented to nonvolatile processor
CN113069089B (en) * 2020-01-06 2022-08-26 华为技术有限公司 Electronic device
CN111669624B (en) * 2020-05-08 2023-01-03 广州微算互联信息技术有限公司 Cloud mobile phone control method and system
CN112084089B (en) * 2020-09-04 2022-07-08 山东英信计算机技术有限公司 Method, device and equipment for determining upper limit of power consumption of data center node and storage medium
CN112241318B (en) * 2020-11-03 2024-05-24 中国航空工业集团公司西安航空计算技术研究所 Processor heartbeat counting method for eliminating characterization blind spots
US20230119984A1 (en) * 2021-10-16 2023-04-20 Nana Wilberforce System and Method for Development of an AI Computational Intelligence Platform for Energy Resilience in Buildings
CN114506311B (en) * 2022-02-22 2023-06-20 燕山大学 Variable time domain prediction energy management method and device, automobile and storage medium
CN115509626B (en) * 2022-11-07 2024-02-02 首都师范大学 Method and device for realizing energy prediction-based pause state setting in nonvolatile processor
CN116600175B (en) * 2023-07-18 2023-10-20 荣耀终端有限公司 Frame loss prediction method and electronic equipment
US11988416B1 (en) * 2024-01-12 2024-05-21 Shenzhen University Shallow geothermal energy efficient utilization and storage system and method based on deep learning optimization

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5625751A (en) * 1994-08-30 1997-04-29 Electric Power Research Institute Neural network for contingency ranking dynamic security indices for use under fault conditions in a power distribution system
US20060182262A1 (en) * 2005-02-15 2006-08-17 Goldman Stuart O Auxiliary power conservation for telecommunications site
US7630843B2 (en) * 2006-09-21 2009-12-08 Intel Corporation Method, apparatus, and system for power source failure prediction
CN101132595A (en) * 2007-09-29 2008-02-27 清华大学 Energy management method for wireless network measurement
JP5166211B2 (en) * 2008-10-30 2013-03-21 株式会社日立製作所 Device using non-volatile memory as main memory
US8108720B2 (en) * 2009-09-28 2012-01-31 At&T Intellectual Property I, L.P. Methods, systems and products for detecting failing power supplies
US8954017B2 (en) * 2011-08-17 2015-02-10 Broadcom Corporation Clock signal multiplication to reduce noise coupled onto a transmission communication signal of a communications device
US9583941B2 (en) * 2011-09-26 2017-02-28 Nec Corporation Power connection control system and method
CN103237338B (en) * 2013-03-08 2016-10-26 清华大学 A kind of non-volatile sensing net node system based on pulse direct current powering mode
CN103955355B (en) * 2013-03-18 2016-12-28 清华大学 A kind of segmentation parallel compression method being applied in non-volatile processor and system
US10079507B2 (en) * 2013-06-28 2018-09-18 Intel Corporation Techniques for adaptive demand/response energy management of electronic systems
US10606718B1 (en) * 2013-12-19 2020-03-31 Amdocs Development Limited System, method, and computer program for managing fault recovery in network function virtualization (Nfv) based networks
EP3079062A1 (en) * 2015-04-09 2016-10-12 Zentrum Mikroelektronik Dresden AG Electronic system and method for estimating and predicting a failure of that electronic system
TWI522794B (en) * 2015-06-10 2016-02-21 國立成功大學 Energy-efficient nonvolatile microprocessor
US10061376B2 (en) * 2015-06-26 2018-08-28 Intel Corporation Opportunistic power management for managing intermittent power available to data processing device having semi-non-volatile memory or non-volatile memory
JP2017017822A (en) * 2015-06-30 2017-01-19 ルネサスエレクトロニクス株式会社 Semiconductor device and failure detection method
WO2017111833A1 (en) * 2015-12-26 2017-06-29 Intel Corporation Reusable device management in machine-to-machine systems
US11009836B2 (en) * 2016-03-11 2021-05-18 University Of Chicago Apparatus and method for optimizing quantifiable behavior in configurable devices and systems
CN106407048B (en) * 2016-05-25 2019-04-05 清华大学 Input/output communication interface, the data backup and resume method based on the interface
CN106570585B (en) * 2016-05-25 2019-10-18 清华大学 A kind of method for scheduling task and energy management apparatus towards self-power supply system
CN106627225B (en) * 2016-12-22 2018-10-19 清华大学 Method for predicting residual discharge energy of series battery pack for electric automobile
CN106844103B (en) * 2017-01-16 2019-05-21 山东大学 Non-volatile processor spare capacity setting, Memory Backup method and system
CN106844101B (en) * 2017-01-16 2019-05-21 山东大学 NVP performance optimization backup method and system based on Cache perception
KR20180084358A (en) * 2017-01-17 2018-07-25 삼성전자주식회사 Method and apparatus for estimating state of battery
CN107678887B (en) * 2017-10-09 2020-07-10 首都师范大学 Method and system for maintaining state-based energy distribution in a non-volatile processor
US10970146B2 (en) * 2018-03-09 2021-04-06 Seagate Technology Llc Adaptive fault prediction analysis of computing components
US10289464B1 (en) * 2018-07-18 2019-05-14 Progressive Casualty Insurance Company Robust event prediction
US11418053B2 (en) * 2018-07-19 2022-08-16 Telefonaktiebolaget Lm Ericsson (Publ) Method and devices for optimizing backup power control using machine learning
CN109144214B (en) * 2018-08-06 2022-05-03 交叉信息核心技术研究院(西安)有限公司 Energy management system, method, electronic device, device and nonvolatile processor
CN109101100B (en) * 2018-08-06 2021-10-01 清华大学 Data bit width prediction method and system and applicable electronic equipment
US11126490B2 (en) * 2018-10-12 2021-09-21 Vixtera, Inc. Apparatus and methods for fault detection in a system consisted of devices connected to a computer network
EP3878073B1 (en) * 2018-11-06 2024-04-24 Telefonaktiebolaget LM Ericsson (publ) Methods, apparatus and machine-readable mediums for mitigating power failures in a communication network
US20210409962A1 (en) * 2020-06-26 2021-12-30 T-Mobile Usa, Inc. Flow controller resource allocation
US20220021608A1 (en) * 2021-09-23 2022-01-20 Kshitij Arun Doshi Software defined networking with en-route computing

Also Published As

Publication number Publication date
WO2020029789A1 (en) 2020-02-13
US20200110614A1 (en) 2020-04-09
CN109144214A (en) 2019-01-04
US11422818B2 (en) 2022-08-23

Similar Documents

Publication Publication Date Title
CN109144214B (en) Energy management system, method, electronic device, device and nonvolatile processor
US11446551B2 (en) Device power saving during exercise
EP3114542B1 (en) Device power saving during exercise
US10667212B2 (en) Power management of a personal area fabric
CN106329614B (en) Method for controlling a plurality of batteries and electronic device for implementing the method
KR101531449B1 (en) Methods and apparatuses for controlling invocation of a sensor
US9620000B2 (en) Wearable system and method for balancing recognition accuracy and power consumption
KR20180047654A (en) Method for recognizing user activity and electronic device for the same
US10289458B2 (en) Multi-function button for wearable device
KR20190064295A (en) Apparatus and method for manegementing consumption power in a electrolic device
JP2020537213A (en) Methods for reducing terminal power consumption, and terminals
CN109116968B (en) Write strategy control method and system and applicable electronic equipment
CN109116967B (en) Neural network predictor based on time multiplexing and electronic equipment suitable for neural network predictor
US9356459B2 (en) Method for charging battery and electronic device thereof
CN109101100B (en) Data bit width prediction method and system and applicable electronic equipment
KR20180058419A (en) Mobile device for providing exercise contents and wearable device connected therewith
CN106994238B (en) Data processing method and electronic device for executing the same
JP2022008797A (en) Method for reducing power consumption of terminal, and terminal
US11557898B2 (en) Method and devices for processing sensor data by applying one or more processing pipelines to the sensor data
CN111796928A (en) Terminal resource optimization method and device, storage medium and terminal equipment
CN114402179A (en) Runtime evaluation of sensors

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20190508

Address after: 710077 Room 101, Block B, Yunhui Valley, 156 Tiangu Eighth Road, New Town, Yuhua Street Software, Xi'an High-tech Zone, Shaanxi Province

Applicant after: Cross Information Core Technology Research Institute (Xi'an) Co., Ltd.

Address before: 100084 Tsinghua Yuan, Beijing, Haidian District

Applicant before: Tsinghua University

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant