|
@@ -30,9 +30,9 @@ In this context, we employ a custom-built board featuring a 32-bit ARM Cortex-M3
|
|
|
For the power management system, we use a TI BQ25570-based board configured with $V_h$ = 4.9V and $V_l$ = 3.4V.
|
|
For the power management system, we use a TI BQ25570-based board configured with $V_h$ = 4.9V and $V_l$ = 3.4V.
|
|
|
% For the power management system, we use a TI BQ25570-based board with power-on and power-off thresholds of 4.9 V and 3.4 V, respectively.
|
|
% For the power management system, we use a TI BQ25570-based board with power-on and power-off thresholds of 4.9 V and 3.4 V, respectively.
|
|
|
% A TI BQ25570 based board is used for the power management system, with power-on and off thresholds of 4.9V and 3.4V, respectively.
|
|
% A TI BQ25570 based board is used for the power management system, with power-on and off thresholds of 4.9V and 3.4V, respectively.
|
|
|
-We empirically select 22 uF and 220 uF capacitors for C1 and C2, respectively, as smaller capacitors fail to provide a reliable voltage for stable checkpoint and recovery.
|
|
|
|
|
|
|
+We empirically select 22uF and 220uF capacitors for C1 and C2, respectively, as smaller capacitors fail to provide a reliable voltage for checkpoint and recovery.
|
|
|
% We empirically select 22uF and 220uF capacitors for C1 and C2, respectively, as these are the minimum capacitor sizes for stable checkpoint and recovery.
|
|
% We empirically select 22uF and 220uF capacitors for C1 and C2, respectively, as these are the minimum capacitor sizes for stable checkpoint and recovery.
|
|
|
-Sec.~\ref{sec:other_architectures} evaluates the generality of our model across different architectures, such as systems with Magnetic RAM (MRAM) and a 16-bit core (e.g., MSP430).
|
|
|
|
|
|
|
+Sec.~\ref{sec:other_architectures} evaluates the generality of our model across different architectures, such as systems with different NVM (e.g., Magnetic RAM, MRAM) and a 16-bit core (e.g., MSP430).
|
|
|
|
|
|
|
|
% In this work, our goal is to model the buffering effects of these capacitors and evaluate their implications on software designs.
|
|
% In this work, our goal is to model the buffering effects of these capacitors and evaluate their implications on software designs.
|
|
|
% (Recent studies present the need for better computing capability~\cite{bakarProtean2023a})
|
|
% (Recent studies present the need for better computing capability~\cite{bakarProtean2023a})
|
|
@@ -107,7 +107,8 @@ This indicates that much smaller energy may be used for the useful computation c
|
|
|
\begin{figure}
|
|
\begin{figure}
|
|
|
\centering
|
|
\centering
|
|
|
\includegraphics[width=\linewidth]{figs/plot_expr_5_cropped.pdf}
|
|
\includegraphics[width=\linewidth]{figs/plot_expr_5_cropped.pdf}
|
|
|
- \caption{Distribution of energy consumed in a power cycle in different capacitor sizes (1mA current supply).}
|
|
|
|
|
|
|
+ % \caption{Distribution of energy consumed in a power cycle in different capacitor sizes (1mA current supply).}
|
|
|
|
|
+ \caption{Distribution of energy consumed in a power cycle.}
|
|
|
\label{fig:power_distribution}
|
|
\label{fig:power_distribution}
|
|
|
\end{figure}
|
|
\end{figure}
|
|
|
|
|
|
|
@@ -176,10 +177,10 @@ This makes $V_{ES}$ not a reliable indicator for the imminent power-off.
|
|
|
|
|
|
|
|
% Modern MCUs can operate on wide range of operating voltages (e.g., from 1.7V to 3.6V for STM32L5 and MSP430).
|
|
% Modern MCUs can operate on wide range of operating voltages (e.g., from 1.7V to 3.6V for STM32L5 and MSP430).
|
|
|
|
|
|
|
|
-Fig.~\ref{fig:sub_voltage_execution} presents the ratio of the times executed under sub-normal voltage to the total execution times, averaged over 30 measurements.
|
|
|
|
|
-The x-axis represents different capacitor sizes and the colors indicate the voltage levels at which the system stops operation.
|
|
|
|
|
|
|
+Fig.~\ref{fig:sub_voltage_execution} presents the ratio of the times executed under sub-normal voltages to the total execution times, averaged over 30 measurements.
|
|
|
|
|
+The x-axis represents capacitor sizes and the colors indicate the voltage levels at which the system stops operation.
|
|
|
We evaluate a range of stop voltages from 1.7V to 2.5V since not all components in the computing system may function at the lowest voltage level (Sec.~\ref{sec:sub_normal_execution}).
|
|
We evaluate a range of stop voltages from 1.7V to 2.5V since not all components in the computing system may function at the lowest voltage level (Sec.~\ref{sec:sub_normal_execution}).
|
|
|
-Also, we examine two cases with different input currents of 1 mA (Fig.~\ref{fig:sub_voltage_execution_1mA}) and 3 mA (Fig.~\ref{fig:sub_voltage_execution_3mA}), to assess the impact of input power.
|
|
|
|
|
|
|
+Also, we examine two cases with input currents of 1mA (Fig.~\ref{fig:sub_voltage_execution_1mA}) and 3mA (Fig.~\ref{fig:sub_voltage_execution_3mA}), to assess the impact of input power.
|
|
|
|
|
|
|
|
The figure shows that a significant portion of MCU operation occurs at sub-normal voltages.
|
|
The figure shows that a significant portion of MCU operation occurs at sub-normal voltages.
|
|
|
For example, when 470uF capacitor is used at 1mA input current (Fig.~\ref{fig:sub_voltage_execution_1mA}), 82.8\% of computation takes place \emph{after} the power-off threshold.
|
|
For example, when 470uF capacitor is used at 1mA input current (Fig.~\ref{fig:sub_voltage_execution_1mA}), 82.8\% of computation takes place \emph{after} the power-off threshold.
|
|
@@ -220,7 +221,7 @@ At the same time, they are likely to operate at sub-normal voltages, as checkpoi
|
|
|
\caption{External FRAM.}
|
|
\caption{External FRAM.}
|
|
|
\label{fig:fram_drror}
|
|
\label{fig:fram_drror}
|
|
|
\end{subfigure}
|
|
\end{subfigure}
|
|
|
- \caption{Incorrectly functioning components at sub-normal voltage.}
|
|
|
|
|
|
|
+ \caption{Incorrect operations at sub-normal voltages.}
|
|
|
\label{fig:adc_and_fram_error}
|
|
\label{fig:adc_and_fram_error}
|
|
|
\end{figure}
|
|
\end{figure}
|
|
|
|
|
|