CN107678887B - Method and system for maintaining state-based energy distribution in a non-volatile processor - Google Patents

Method and system for maintaining state-based energy distribution in a non-volatile processor Download PDF

Info

Publication number
CN107678887B
CN107678887B CN201710932362.8A CN201710932362A CN107678887B CN 107678887 B CN107678887 B CN 107678887B CN 201710932362 A CN201710932362 A CN 201710932362A CN 107678887 B CN107678887 B CN 107678887B
Authority
CN
China
Prior art keywords
energy
time
backup
data
maintenance
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
CN201710932362.8A
Other languages
Chinese (zh)
Other versions
CN107678887A (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.)
Capital Normal University
Original Assignee
Capital Normal University
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 Capital Normal University filed Critical Capital Normal University
Priority to CN201710932362.8A priority Critical patent/CN107678887B/en
Publication of CN107678887A publication Critical patent/CN107678887A/en
Application granted granted Critical
Publication of CN107678887B publication Critical patent/CN107678887B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Power Sources (AREA)

Abstract

The invention relates to a method and a system for energy distribution based on a maintenance state in a nonvolatile processor, wherein the energy distribution method comprises the following steps: constructing an energy distribution model according to available energy stored in a capacitor after the system is powered down; acquiring system energy recovery time according to the sampling data of the environment energy; calculating a path from the energy interrupt point to the farthest point at which the instruction can be executed according to the available energy; nodes in the screening path, of which the sum of the continued execution energy and the backup energy is smaller than the available energy stored in the system capacitor, are used as available backup points, and the maintenance time and the continued execution time are calculated according to the energy distribution model; comparing the sum of the maintaining time and the continuous execution time with the system energy recovery time, and if the sum is greater than the system energy recovery time, maintaining data; if the calculated profit is less than the calculated profit, the profit of the available backup point under the condition of data maintenance and the profit under the condition of not maintaining direct backup are compared, and the data maintenance or the data backup is determined according to the comparison result.

Description

Method and system for maintaining state-based energy distribution in a non-volatile processor
Technical Field
The invention belongs to the technical field of energy distribution, and particularly relates to a maintenance-state-based energy distribution method and system in a nonvolatile processor.
Background
Along with the very fast development of thing networking, wearable equipment such as intelligent bracelet and intelligent wrist-watch have obtained extensive application. Most wearable devices are capable of detecting physiological data such as heart rate, body temperature, and respiratory rate of a user in real time. Typically, wearable devices are powered by equipped rechargeable batteries. The rechargeable battery has the problem of frequent charging, and the rechargeable battery with larger volume is not suitable for the medical wearable device.
In order to solve the power supply problem of the medical wearable equipment, people also utilize an energy collecting system to convert the energy of the surrounding environment such as solar energy, wind energy, body temperature and the like into electric energy for use, so that the medical wearable equipment realizes self-energy supply, and further obtains the effect of working for a super-long time. However, there is a problem that the energy of the surrounding environment is converted into electric energy, and the power supply is unstable, which may cause frequent power failure of the wearable device. When the wearable device is powered down, the conventional processor needs to perform multiple rollback operations on the executed process, so that the backup overhead is greatly increased.
A non-volatile processor may solve the above problems. When power is lost, the energy stored in the capacitor can support the backup of volatile data into the nonvolatile memory, and after the energy is recovered, the data is copied back to the processor for continuous execution. Although conventional non-volatile processors can perform operations that produce correct data results, they still suffer from the following problems: frequent data backup and recovery causes the system to consume a large amount of energy; after power is lost, the system is in a suspended state without any execution operations.
Disclosure of Invention
In order to solve the above problems in the prior art, the present invention provides a method and a system for maintaining-state-based energy distribution in a non-volatile processor.
The technical scheme adopted by the invention is as follows: a method for maintaining state-based energy allocation in a non-volatile processor includes the steps of:
constructing an energy distribution model according to available energy stored in a capacitor after the system is powered down, wherein the energy distribution model comprises maintenance energy, continuous execution energy and backup energy;
acquiring system energy recovery time according to the sampling data of the environment energy;
calculating a path from the energy break point to the farthest point at which the instruction can be executed according to the available energy stored in the capacitor;
the node in the screening path, of which the sum of the continued execution energy and the backup energy is less than the available energy stored in the system capacitor, is used as an available backup point, and the node maintenance time and the continued execution time are obtained through detailed calculation according to the energy distribution model and are continuously executed;
comparing the sum of the maintaining time and the continuing execution time with the system energy recovery time, and if the sum of the maintaining time and the continuing execution time is greater than the system energy recovery time, maintaining the data; and if the sum of the maintaining time and the continuing execution time is less than the system energy recovery time, calculating the profit of the available backup point under the condition of data maintaining and the profit under the condition of not maintaining direct backup, comparing the profits, and determining to maintain or backup the data according to the comparison result.
Further, the specific process of obtaining the system energy recovery time in the step is as follows: sampling environment energy within a period of time to obtain an energy trace signal; the energy trace signal may then be filtered into a pulse train under a threshold. And taking the maximum pulse width in the pulse sequence as the energy recovery time of the system.
Further, the execution time for continuing is as follows: t isextend-exe=TcycNum, where the execution continues, TcycRepresenting the total time of a single instruction execution cycle, and Num representing the number of instructions in an execution path;
the continuous execution energy is as follows: eextend-exe=Pmax*Textend-exeIn the formula, PmaxRepresents the maximum power required to execute an instruction in a single clock cycle;
the data backup energy is as follows: ebackup=Sbackup*E0In the formula, SbackupIndicating the size of the data stack of the backup node, E0Representing the energy consumed to backup a unit of data;
the maintenance energy is: ereten=Eavail-Eextend-exe-EbackupIn the formula, EavailRepresenting the available energy stored in the system capacitor;
the maintenance time is as follows: t isreten=Ereten/PretenIn the formula, PretenRepresenting the power consumed by the system while it is in the maintenance state.
Further, the determination of the available backup points uses the following principle: the sum of the system continuous execution energy and the backup energy is less than the available energy stored in the system capacitor.
Further, the step maintains the data if the sum of the maintaining time and the continuing execution time is larger than the system energy recovery time, and selects the point with the smallest data stack as the best backup point.
Further, the benefit of the available backup point in the case of data maintenance is:
Profitreten=ETTreten1*Probreten1+ETTreten2*Probreten2+ETTreten3*Probreten3
in the formula (I), the compound is shown in the specification,
Figure BDA0001428852810000031
in the formula, ETTreten1Represents the ratio of the program execution time to the total time in the case where the system achieves energy recovery during data maintenance, where the total time represents the sum of the program execution time and the maintenance time; probreten1Representing the probability of occurrence of a situation in which the system achieves energy recovery during data maintenance;
Figure BDA0001428852810000032
in the formula, ETTreten2The ratio of the sum of the program execution time and the continuous execution time to the total time when the system obtains energy recovery during the continuous execution of the data is shown, wherein the total time represents the sum of the program execution time, the maintaining time and the continuous execution time; probreten2Representing the probability of occurrence of a situation in which the system achieves energy recovery during continued execution of the data;
Figure BDA0001428852810000033
in the formula, ETTreten3The ratio of the sum of the program execution time and the continuous execution time to the total time under the condition that the system does not obtain energy recovery in the data maintenance and continuous execution periods is shown, wherein the total time represents the sum of the program execution time, the maintenance time, the continuous execution time, the backup time, the pause time and the recovery time; probreten3Indicating the probability of the occurrence of a situation where the system does not achieve energy recovery during both data maintenance and continued execution.
Further, the available backup points benefit Profit without maintaining direct backupbackupComprises the following steps:
Figure BDA0001428852810000034
in the formula, ETTbackupThe ratio of the program execution time and the total time of the system for directly backing up the data without data maintenance is shown, and the total time here represents the sum of the program execution time, the continuous execution time, the backup time, the pause time and the recovery time, namely the program calculation rate.
Further, if the sum of the maintaining time and the continuing execution time is less than the system energy recovery time, calculating the profit of the available backup point under the condition of data maintaining and the profit under the condition of not maintaining direct backup, comparing the profits, and determining to maintain or backup the data according to the comparison result. If the profit of the available backup point under the condition of data maintenance is larger than the profit of the available backup point under the condition of not maintaining direct backup, the system maintains the data; and if the profit of the available backup point in the case of data maintenance is larger than the profit of the available backup point in the case of not maintaining direct backup, the system performs data backup.
A maintenance-state-based energy distribution system in a nonvolatile processor comprises an energy distribution model building module, a system energy recovery time calculation module, a path calculation module, a time calculation module, a comparison module and a profit calculation module; the energy distribution model building module is used for building an energy distribution model according to available energy stored in the capacitor after the system is powered down; the system energy recovery time decision module is used for obtaining system energy recovery time according to the sampling data of the environmental energy; the path calculation module is used for calculating a path from the energy interruption point to the farthest point where the instruction can be executed according to the available energy stored in the capacitor. The time calculation module is used for screening nodes in a path, the sum of the continued execution energy and the backup energy of which is less than the available energy stored in the system capacitor, and the nodes are used as available backup points, and node maintenance time and continued execution time are obtained through detailed calculation according to an energy distribution model; the profit module calculates the profit of the available backup point under the condition of data maintenance and the profit under the condition of not maintaining direct backup; the comparison module is used for comparing the sum of the maintaining time and the continuous execution time with the size of the system energy recovery time, and also comparing the profit of the available backup point under the condition of data maintenance with the profit under the condition of not maintaining direct backup.
Due to the adoption of the technical scheme, the invention has the beneficial effects that: the maintenance-state-based energy distribution method in the nonvolatile processor can avoid unnecessary waste of limited available energy after power failure in the embedded system, strive for time for the system to wait for energy recovery, effectively avoid expensive expenses of data backup and recovery, and simultaneously realize maximum execution efficiency.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the invention, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
FIG. 1 is a flowchart of a method for maintaining state-based power allocation in a non-volatile processor according to an embodiment of the present invention;
FIG. 2 is a diagram of an energy distribution model provided by an embodiment of the present invention;
FIG. 3 is a schematic diagram of determining system energy recovery time according to an embodiment of the present invention;
FIG. 4 is a partial enlarged view of FIG. 3 at magnifier F;
FIG. 5 is a schematic diagram of a selection of available backup points according to an embodiment of the present invention;
FIG. 6 is a schematic view of a life cycle provided by an embodiment of the present invention;
fig. 7 is a schematic diagram of selecting an optimal backup point when the possibility of power restoration is very high for maintaining data and the like.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be described in detail below. It is obvious that the described embodiments are only a part of the embodiments of the present invention, not all of them. All other embodiments, which can be derived by a person skilled in the art from the examples given herein without any inventive step, are within the scope of the present invention.
As shown in FIG. 1, the present invention provides a method for maintaining state-based energy allocation in a non-volatile processor, comprising the steps of:
s1, as shown in fig. 2, constructing an energy distribution model according to the available energy stored in the capacitor after the system is powered down, where the energy distribution model includes maintaining energy, continuing to execute energy, and backing up energy.
The maintenance energy is the energy for maintaining the volatile data, the continuous execution energy is the energy for executing the program from the energy power-down node to the optimal backup point, and the backup energy is the energy for backing up the volatile data to the nonvolatile memory.
S2, obtaining system energy recovery time, which comprises the following steps:
sampling environment energy within a period of time to obtain an energy trace signal; the energy trace signal may then be filtered into a pulse train under a threshold. And taking the maximum pulse width in the pulse sequence as the energy recovery time of the system.
For example, within a period of time, sampling WiFi signals, which are transmitted in the form of data packets, to obtain a certain amount of sampled data; and screening is performed according to the set threshold value to obtain a pulse sequence, as shown in fig. 3. A detailed view of a partial pulse train is shown in FIG. 4, with the maximum pulse width in the pulse train being the system energy recovery time (T)on)。
And S3, calculating a path from the energy interruption point to the farthest point where the instruction can be executed according to the available energy stored in the capacitor.
And S4, a node in the screening path, wherein the sum of the continued execution energy and the backup energy is less than the available energy stored in the system capacitor, is used as an available backup point. Maximum power (P) required to execute an instruction in a single clock cyclemax) And the time (T) for the program to continue execution from the energy interrupt point to the backup pointextend-exe) Multiplying to calculate an energy (E) to perform to the backup pointextend-exe) (ii) a And according to the data stack size (S) of the backup nodebackup) And the energy E consumed for backing up the unit data0Energy consumption (E) for data backup is availablebackup) (ii) a Thereby obtaining data maintenance energy (E) according to the energy distribution model calculationreten). Finally, the hold time (T)reten) And continued execution time (T)extend-exe) The method can be obtained according to the known consumed energy and execution power, and comprises the following specific processes:
continue to execute energy Eextend-exeComprises the following steps: eextend-exe=Pmax*Textend-exe
In the formula, Textend-exeThe total time (T) of a cycle can be executed by a single instructioncyc) And the number of instructions in the execution path (Num).
Backup energy EbackupComprises the following steps: ebackup=Sbackup*E0
In the formula, SbackupCan be obtained by off-line instruction analysis.
Maintenance energy EretenComprises the following steps: ereten=Eavail-Eextend-exe-Ebackup
=Preten*Treten
In the formula, EavailRepresenting available energy stored in the system capacitor, PretenRepresents the power consumed by the system in the maintenance state, TretenIndicating the data retention time.
Maintenance time TretenComprises the following steps: t isreten=Ereten/Preten
Continue execution time Textend-exeComprises the following steps: t isextend-exe=Eextend-exe/Pmax=Tcyc*Num。
The determination of the available backup points adopts the following principle: the system continues to execute energy (E)extend-exe) And backup energy (E)backup) The sum is less than the available energy (E) stored in the system capacitoravail)。
As shown in fig. 5, for the time from T to T + TmAt points A, B and C, continued execution at points a and B, and during the energy interrupt period of (C)extend-exe+Ebackup<EavailIf the point A and the point B can be used as available backup points; continued execution at point C Eextend-exe+Ebackup>EavailPoint C cannot be an available backup point. E at the time tbackup<EavailAnd also as a usable backup point.
The concept of a life cycle is illustrated by fig. 6. The time from the last outage to the system recovering from the energy outage again is defined as the life cycle. A lifecycle can be divided into two parts, the first part being the normal execution time (T)norm-exe) (ii) a The second part represents the time from energy interruption to system energy recovery, and can be further divided into a maintenance time (T)reten) Program continued execution time (T)extend-exe) Data backup time (T)backup) Dwell time (T)pause) And recovery time (T)recov). Generally, upon an energy outage, the system first maintains a time (T)reten) To wait for power to be supplied. If the chance of obtaining energy recovery during data maintenance is small, the system consumes time (T)extend-exe) And executing to the optimal backup point position. Saving volatile data to non-volatile memory requires a backup time (T)backup). System pause time (T) after data backuppause) (ii) a Once the energy is restored, the system copies the data and resumes execution, the system performing this operation time (T)recov) And then recovering. Through all the operations, the system execution is recovered.
S5, maintaining time (T)reten) And continued execution time (T)extend-exe) Sum andsystem energy recovery time TonAnd comparing, and performing data maintenance or data backup according to a comparison result.
If the time (T) is maintainedreten) And continued execution time (T)extend-exe) The sum is greater than the system energy recovery time (T)on) I.e., there is a high probability of maintaining the data until the system is powered back up, the system power recovery does not require saving volatile data to non-volatile memory. In this case, the system can be operated continuously and power failure can be minimized. Although the likelihood of waiting for power in this situation is very high, it is still necessary to reserve energy for data backup in case the power supply is not restored. And the point with the smallest data stack is selected as the optimal backup point so as to minimize backup energy consumption.
As shown in fig. 7, data maintenance time, continued execution time, and data size of each point are given for both available backup points A, B and t. The maintenance time (T) is satisfied at all three available backup pointsreten) And continued execution time (T)extend-exe) The sum is greater than the system energy recovery time (T)on) However, the amount of backup data at the available backup point a is the smallest, and therefore, the available backup point a is selected as the best backup point.
If the time (T) is maintainedreten) And continued execution time (T)extend-exe) The sum is less than the system energy recovery time (T)on) Then, the following steps are adopted:
1) calculating the Profit (Profit) of an available backup point in the case of data maintenancereten) And revenue without maintaining direct backup (Profit)backup)。
The gains of the available backup points in the case of data maintenance are:
Profitreten=ETTreten1*Probreten1+ETTreten2*Probreten2+ETTreten3*Probreten3
in the formula (I), the compound is shown in the specification,
Figure BDA0001428852810000081
in the formula, ETTreten1Representing program execution time T with system energy recovery during data maintenancenorm-exeRatio to total time, where total time represents program execution time Tnorm-exeAnd a holding time TretenAnd (4) summing. Probreten1Indicating the probability of occurrence of a situation where the system achieves energy recovery during data maintenance.
Figure BDA0001428852810000082
In the formula, ETTreten2Representing program execution time T in the case where the system achieves energy recovery during continued execution of the datanorm-exeAnd continuing to execute time Textend-exeThe ratio of the sum to the total time, where the total time represents the program execution time Tnorm-exeAnd a holding time TretenAnd continuing to execute time Textend-exeAnd (4) summing. Probreten2Indicating the probability of occurrence of a situation in which the system achieves energy recovery during continued execution of the data.
Figure BDA0001428852810000083
In the formula, ETTreten3Represents the program execution time T under the condition that the system does not obtain energy recovery during the data maintenance and the continuous executionnorm-exeAnd continuing to execute time Textend-exeThe ratio of the sum to the total time, where the total time represents the program execution time Tnorm-exeAnd a holding time TretenAnd continuing to execute the time Textend-exeBackup time TbackupA rest time TpauseAnd a recovery time TrecovAnd (4) summing. Probreten3Indicating the probability of the occurrence of a situation where the system does not achieve energy recovery during both data maintenance and continued execution.
The benefits of an available backup point without maintaining a direct backup are:
Figure BDA0001428852810000084
in the formula, ETTbackupThe ratio of the program execution time and the total time of the system for directly backing up the data without data maintenance is shown, and the total time here represents the sum of the program execution time, the continuous execution time, the backup time, the pause time and the recovery time, namely the program calculation rate.
2) Revenue for available backup points with data maintenance (Profit)reten) And revenue without maintaining direct backup (Profit)backup) And comparing, and determining to perform data maintenance or data backup according to a comparison result.
If backup points are available for Profit in the case of data maintenance (Profit)reten) Greater than the Profit of the available backup point without maintaining a direct backup (Profit)backup) If so, the system maintains the data; if backup points are available for Profit in the case of data maintenance (Profit)reten) Greater than the Profit of the available backup point without maintaining a direct backup (Profit)backup) If the system does not maintain the data, the data is directly backed up.
The energy distribution method based on the maintenance state in the nonvolatile processor can solve the problem that the data backup and recovery operation is frequently carried out after the system is powered off. The maintenance time of volatile data is prolonged as far as possible to wait until the system recovers power supply, so that the aim of continuously executing the system is fulfilled, and the execution efficiency of the system is improved.
The energy distribution method based on the maintenance state in the nonvolatile processor maintains volatile data for as long as possible after the system is powered off by using the maintenance state so as to increase the probability of waiting for power restoration, so that the program is executed forward as much as possible, and the following two aims can be realized: firstly, if the system is powered back up during maintenance, the number of system energy failures can be minimized, and expensive backup and recovery overhead is avoided; second, if the chance of system power restoration is small during maintenance, fast data restoration and computing energy efficiency maximization are achieved by selecting the most profitable backup point for forward execution of the program.
The invention also provides a maintenance state-based energy distribution system in the nonvolatile processor, which comprises an energy distribution model building module, a system energy recovery time decision module, a path calculation module, a time calculation module, a comparison module and a profit calculation module.
The energy distribution model building module is used for building an energy distribution model according to available energy stored in the capacitor after the system is powered down, and the built energy distribution model comprises energy maintenance, energy continuous execution and energy backup.
And the system energy recovery time decision module is used for obtaining the system energy recovery time according to the sampling data of the environmental energy.
The path calculation module is used for calculating a path from the energy interruption point to the farthest point capable of being executed according to the available energy stored in the capacitor.
And the time calculation module is used for screening nodes in the path, the sum of the continued execution energy and the backup energy of which is less than the available energy stored in the system capacitor, and the nodes are used as available backup points, and node maintenance time and continued execution time are obtained through detailed calculation according to the energy distribution model.
The comparison module is used for comparing the sum of the maintaining time and the continuous execution time with the system energy recovery time, and if the sum of the maintaining time and the continuous execution time is greater than the system energy recovery time, performing data backup; if the sum of the maintenance time and the continued execution time is less than the system energy recovery time, the profit module calculates the profit of the available backup point in the case of data maintenance and the profit in the case of not maintaining direct backup.
The comparison module also comprises a comparison module for comparing the profit of the available backup point under the condition of data maintenance and the profit under the condition of not maintaining direct backup, if the profit of the available backup point under the condition of data maintenance is larger than the profit of the available backup point under the condition of not maintaining direct backup, the system maintains the data; and if the profit of the available backup point in the case of data maintenance is larger than the profit of the available backup point in the case of not maintaining direct backup, the system performs data backup.
The above description is only for the specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.

Claims (9)

1. A method for maintaining state-based power allocation in a non-volatile processor, comprising the steps of:
constructing an energy distribution model according to available energy stored in a capacitor after the system is powered down, wherein the energy distribution model comprises maintenance energy, continuous execution energy and backup energy;
acquiring system energy recovery time according to the sampling data of the environment energy;
calculating a path from the energy break point to the farthest point at which the instruction can be executed according to the available energy stored in the capacitor;
nodes in the screening path, of which the sum of the continued execution energy and the backup energy is smaller than the available energy stored in the system capacitor, are used as available backup points, and the maintenance time and the continued execution time are calculated according to the energy distribution model;
comparing the sum of the maintaining time and the continuing execution time with the system energy recovery time, and if the sum of the maintaining time and the continuing execution time is greater than the system energy recovery time, maintaining the data; if the sum of the maintaining time and the continuing execution time is less than the system energy recovery time, calculating the profit of the available backup point under the condition of data maintaining and the profit under the condition of not maintaining direct backup, comparing the profits, and determining to maintain or backup the data according to the comparison result;
the detailed decomposition of the energy distribution model is as follows: the maintenance energy represents energy consumed for maintaining the volatile data after the system is powered off; the continued execution energy represents the energy consumed by the system from the energy interrupt point execution to the backup point; backup energy represents the energy consumed by the system to backup volatile data to non-volatile memory.
2. The method of claim 1, wherein the step of obtaining the system energy recovery time comprises: sampling environment energy within a period of time to obtain an energy trace signal; and then, filtering the energy trace signal into a pulse sequence under the action of a certain threshold, and taking the maximum pulse width in the pulse sequence as the system energy recovery time.
3. The method of claim 1, wherein the continue execution time is: t isextend-exe=TcycNum, wherein TcycRepresenting the total time of a single instruction execution cycle, and Num representing the number of instructions in an execution path;
the continuous execution energy is as follows: eextend-exe=Pmax*Textend-exeIn the formula, PmaxRepresents the maximum power required to execute an instruction in a single clock cycle;
the data backup energy is as follows: ebackup=Sbackup*E0In the formula, SbackupIndicating the size of the data stack of the backup node, E0Representing the energy consumed to backup a unit of data;
the maintenance energy is: ereten=Eavail-Eextend-exe-EbackupIn the formula, EavailRepresenting the available energy stored in the system capacitor;
the maintenance time is as follows: t isreten=Ereten/PretenIn the formula, PretenRepresenting the power consumed by the system while it is in the maintenance state.
4. A method for maintenance-based energy allocation in a non-volatile processor as claimed in claim 1, 2 or 3, wherein said determination of available backup points uses the following principle: the sum of the system continuous execution energy and the backup energy is less than the available energy stored in the system capacitor.
5. A method for maintenance-based energy allocation in a non-volatile processor as claimed in claim 1, 2 or 3, wherein said step of maintaining data if the sum of the maintenance time and the continued execution time is greater than the system energy recovery time, and selecting the point with the smallest data stack as the best backup point.
6. A method for maintenance-based energy allocation in a non-volatile processor as claimed in claim 1, 2 or 3, wherein the available backup points have the following benefits in the case of data maintenance:
Profitreten1=ETTreten1*Probreten1+ETTreten2*Probreten2+ETTreten3*Probreten3
in the formula (I), the compound is shown in the specification,
Figure FDA0002425258610000021
in the formula, ETTreten1Represents the ratio of the program execution time to the total time in the case where the system achieves energy recovery during data maintenance, where the total time represents the sum of the program execution time and the maintenance time; probreten1Representing the probability of occurrence of a situation in which the system achieves energy recovery during data maintenance; t isnorm-exeFor program execution time, TretenTo maintain the time, TonThe system energy recovery time;
Figure FDA0002425258610000031
in the formula, ETTreten2Represents the ratio of the sum of the program execution time and the continued execution time to the total time in the case where the system achieves energy recovery during the continued execution of the data, where the total time represents the programThe sum of the sequence execution time, the maintenance time, and the continuation execution time; probreten2Representing the probability of occurrence of a situation in which the system achieves energy recovery during continued execution of the data; t isextend-exeContinuing to execute the program;
Figure FDA0002425258610000032
in the formula, ETTreten3The ratio of the sum of the program execution time and the continuous execution time to the total time under the condition that the system does not obtain energy recovery in the data maintenance and continuous execution periods is shown, wherein the total time represents the sum of the program execution time, the maintenance time, the continuous execution time, the backup time, the pause time and the recovery time; probreten3Representing the probability of occurrence of a situation in which the system does not obtain energy recovery during both data maintenance and continued execution; t isbackupFor backup time, TpauseFor dwell time, TrecovTo the recovery time.
7. The method for maintenance-based energy allocation in a non-volatile processor as claimed in claim 1, 2 or 3, wherein the available backup point earns Profit without maintaining a direct backupbackupComprises the following steps:
Figure FDA0002425258610000033
in the formula, ETTbackupRepresents the ratio of the program execution time to the total time for which the system directly backs up data without data maintenance, where the total time represents the sum of the program execution time, the resume execution time, the backup time, the pause time, and the restore time, Tnorm-exeFor program execution time, Textend-exeFor the program to continue execution time, TbackupFor backup time, TpauseFor dwell time, TrecovTo the recovery time.
8. The maintenance-state-based energy allocation method in a nonvolatile processor as claimed in claim 1, 2 or 3, wherein if the sum of the maintenance time and the continued execution time is less than the system energy recovery time, the step of calculating the profit of the available backup point in the case of performing data maintenance and the profit of the available backup point in the case of not maintaining direct backup, comparing the profit, determining whether to perform data maintenance or data backup according to the comparison result, and if the profit of the available backup point in the case of performing data maintenance is greater than the profit of the available backup point in the case of not maintaining direct backup, the system performing data maintenance; and if the profit of the available backup point in the case of data maintenance is larger than the profit of the available backup point in the case of not maintaining direct backup, the system performs data backup.
9. A maintenance-state-based energy distribution system in a nonvolatile processor is characterized by comprising an energy distribution model building module, a system energy recovery time decision module, a path calculation module, a time calculation module, a comparison module and a profit calculation module;
the energy distribution model building module is used for building an energy distribution model according to available energy stored in the capacitor after the system is powered down;
the system energy recovery time decision module is used for obtaining system energy recovery time according to the sampling data of the environmental energy; the path calculation module is used for calculating a path from the energy interruption point to the farthest point at which the instruction can be executed according to the available energy stored in the capacitor;
the time calculation module is used for calculating node maintenance time and continuous execution time according to the energy distribution model in detail to obtain a node, and taking the node as an available backup point according to the node with the sum of the continuous execution energy and the backup energy in the path smaller than the available energy stored in the system capacitor;
the profit module calculates the profit of the available backup point under the condition of data maintenance and the profit under the condition of not maintaining direct backup;
the comparison module is used for comparing the sum of the maintaining time and the continuous execution time with the size of the system energy recovery time, and also comparing the profit of the available backup point under the condition of data maintenance with the profit under the condition of not maintaining direct backup.
CN201710932362.8A 2017-10-09 2017-10-09 Method and system for maintaining state-based energy distribution in a non-volatile processor Active CN107678887B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710932362.8A CN107678887B (en) 2017-10-09 2017-10-09 Method and system for maintaining state-based energy distribution in a non-volatile processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710932362.8A CN107678887B (en) 2017-10-09 2017-10-09 Method and system for maintaining state-based energy distribution in a non-volatile processor

Publications (2)

Publication Number Publication Date
CN107678887A CN107678887A (en) 2018-02-09
CN107678887B true CN107678887B (en) 2020-07-10

Family

ID=61138769

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710932362.8A Active CN107678887B (en) 2017-10-09 2017-10-09 Method and system for maintaining state-based energy distribution in a non-volatile processor

Country Status (1)

Country Link
CN (1) CN107678887B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108920304A (en) * 2018-06-20 2018-11-30 首都师范大学 The dual threshold method and device for maintaining state are realized in non-volatile memory
CN109144214B (en) 2018-08-06 2022-05-03 交叉信息核心技术研究院(西安)有限公司 Energy management system, method, electronic device, device and nonvolatile processor
CN110968458B (en) * 2019-11-26 2022-03-29 山东大学 Backup system and method based on reinforcement learning and oriented to nonvolatile processor
CN111737053B (en) * 2020-06-22 2024-01-05 山东大学 Nonvolatile processor backup method and system based on instruction analysis
CN111782149A (en) * 2020-06-30 2020-10-16 联想(北京)有限公司 Information processing method and information processing device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844101A (en) * 2017-01-16 2017-06-13 山东大学 Backup method and system are optimized based on the NVP performances that Cache is perceived

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100584338B1 (en) * 2003-09-17 2006-05-26 삼성전자주식회사 Method and system for updating software

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844101A (en) * 2017-01-16 2017-06-13 山东大学 Backup method and system are optimized based on the NVP performances that Cache is perceived

Also Published As

Publication number Publication date
CN107678887A (en) 2018-02-09

Similar Documents

Publication Publication Date Title
CN107678887B (en) Method and system for maintaining state-based energy distribution in a non-volatile processor
CN103906210B (en) A kind of distribution type photovoltaic power generation device sensor network nodes dormancy dispatching method
WO2018137355A1 (en) System having black start function, and black start method therefor
Kumar et al. Energy harvesting earliest deadline first scheduling algorithm for increasing lifetime of real time systems
CN111737053B (en) Nonvolatile processor backup method and system based on instruction analysis
Hussein et al. Adaptive energy management for self-sustainable wearables in mobile health
CN106249840A (en) Power saving non-volatile microprocessor
US10884483B2 (en) Autonomous C-state algorithm and computational engine alignment for improved processor power efficiency
CN103237338B (en) A kind of non-volatile sensing net node system based on pulse direct current powering mode
Zhu et al. Energy-aware sensing in data-intensive field systems using supercapacitor energy buffer
Daulby et al. Improving the forward progress of transient systems
Akhunov et al. Adamica: Adaptive multicore intermittent computing
Karimi et al. Energy-adaptive real-time sensing for batteryless devices
CN106844103B (en) Non-volatile processor spare capacity setting, Memory Backup method and system
CN116169702B (en) Large-scale energy storage charging and discharging method and model based on reinforcement learning algorithm
CN111352796B (en) Method and device for acquiring electric quantity by intelligent wearable equipment
JP5452461B2 (en) Charging system, charging method and program
Wang et al. Communication-aware task scheduling for energy-harvesting nonvolatile processors
CN106407048B (en) Input/output communication interface, the data backup and resume method based on the interface
Gong et al. Retention state-enabled and progress-driven energy management for self-powered nonvolatile processors
Ma et al. Evaluating tradeoffs in granularity and overheads in supporting nonvolatile execution semantics
Prauzek et al. Self-learning for day-night mode energy strategy for solar powered environmental WSN nodes
CN106560761A (en) Computer system and method for providing both main power and auxiliary power on a single power bus
Li et al. Power solutions of a vibration-powered sensor node
Ma et al. Nonvolatile processor architecture exploration for energy-harvesting application scenarios

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
GR01 Patent grant
GR01 Patent grant