Hardware Bit-Vector for Energy-Harvesting Memory Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Battery-less energy-harvesting sensors face inefficiencies due to frequent power failures, which disrupt program states and require effective memory consistency to restore processing integrity.

Innovation Solution

Implementing hardware bit-vector schemes that combine compiler analysis with a hardware bit-vector stored in volatile memory to reduce write operations to non-volatile memory, enabling efficient undo-logging and filtering of writes to persistent memory, thereby maintaining program state consistency across checkpoints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If traditional logging schemes are used to restore program states after power failures, then memory consistency is maintained, but energy efficiency deteriorates due to excessive write operations to non-volatile memory

Engineering Contradiction:
Improveenergy efficiencyVSAvoidmemory consistency
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The logging system is segmented into two parts: a hardware bit-vector stored in volatile memory for tracking write operations, and selective logging to non-volatile memory only when necessary. This segmentation allows the system to maintain reliability through the bit-vector while reducing energy consumption by minimizing writes to non-volatile memory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hardware bit-vector is pre-configured with compiler analysis to identify which memory locations require logging. This preliminary action enables the system to quickly determine which writes need to be logged without performing exhaustive checks, thereby reducing energy consumption while maintaining memory consistency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If frequent writes are performed to non-volatile memory to ensure program state consistency, then reliability is improved, but productivity deteriorates due to the time-consuming nature of write operations

Engineering Contradiction:
Improveprogram state consistencyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The hardware bit-vector acts as an intermediary between the processor and non-volatile memory. It tracks which memory locations have been written and enables selective logging, serving as a mediator that reduces the frequency of writes to non-volatile memory while ensuring program state consistency is maintained.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the parameter of logging frequency by using the hardware bit-vector to identify only those writes that require persistent storage. This parameter change from frequent logging to selective logging improves productivity while maintaining the reliability needed for program state consistency.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If comprehensive logging of all write operations is implemented, then memory consistency is ensured, but device complexity increases due to the overhead of tracking and managing log entries

Engineering Contradiction:
Improvememory consistencyVSAvoidlogging overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The hardware bit-vector automatically tracks write operations to memory locations identified by compiler analysis. This self-service mechanism eliminates the need for software to manually track and manage log entries, reducing device complexity while ensuring memory consistency through automatic logging of relevant writes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical/software-based logging tracking system with a hardware-based bit-vector mechanism. This substitution reduces the overhead of tracking and managing log entries by using dedicated hardware circuitry, thereby reducing device complexity while maintaining reliable memory consistency.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11409617B2Hardware bit-vector techniques
Publication Date: 2022.08.09 ARM LTD
  • US11409617B2 patent drawing
  • US11409617B2 patent drawing
  • US11409617B2 patent drawing

AI summary

Various implementations described herein are related to a device having energy harvesting circuitry that experiences power failures. The device may include computing circuitry having a processor coupled to the energy harvesting circuitry. The processor may be configured to reduce a number of write operations to a log structure having a hardware bit-vector used by the computing circuitry to boost computational progress even with the power failures.