Direct Application Execution from Nonvolatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing semiconductor nonvolatile memory systems, such as flash memory in portable devices, face inefficiencies in managing and executing applications due to the need for loading and reassembling applications in RAM, which consumes resources and delays updates, especially in time-critical situations.

Innovation Solution

A processor-based device architecture that allows direct execution of applications from a semiconductor nonvolatile memory by storing the application and database in a contiguous, linear fashion, using a code manager software to manage the application and leverage meta-information, thereby eliminating the need for RAM usage and reducing startup times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If applications are loaded and reassembled in RAM before execution, then applications can be executed on the target device, but RAM resources are consumed and startup time is increased

Engineering Contradiction:
Improveapplication execution capabilityVSAvoidstartup time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The application is pre-processed and stored in executable form directly in the nonvolatile memory in a format that can be executed without loading into RAM. The code is organized with proper segment headers and relocation information pre-configured during compilation or linking, enabling direct execution from nonvolatile memory.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts the requirement for RAM loading by separating the application code storage from execution memory. The application is stored in executable form in nonvolatile memory and executed directly, removing the intermediate RAM loading and reassembly step that traditionally consumed time and resources.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If applications are loaded and reassembled in RAM before execution, then applications can be executed on the target device, but RAM resources are exhausted

Engineering Contradiction:
Improveapplication execution capabilityVSAvoidRAM resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The application is pre-processed and stored in executable form directly in the nonvolatile memory in a format that can be executed without loading into RAM. The code is organized with proper segment headers and relocation information pre-configured during compilation or linking, enabling direct execution from nonvolatile memory.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts the requirement for RAM loading by separating the application code storage from execution memory. The application is stored in executable form in nonvolatile memory and executed directly, removing the intermediate RAM loading and reassembly step that traditionally consumed time and resources.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If applications are stored in executable form on flash memory, then direct execution is possible, but the application and database must be managed separately

Engineering Contradiction:
Improveexecution efficiencyVSAvoidapplication management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The invention merges the application code and database into a single contiguous storage structure in nonvolatile memory. The application is stored with its associated database in a unified format, allowing the entire application package to be managed as one unit and executed directly without separate loading operations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The nonvolatile memory structure is designed to serve multiple functions: storing application code in executable form, storing associated database, and enabling direct execution. The same storage medium handles both code and data, reducing management overhead.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7904897B2Executing applications from a semiconductor nonvolatile memory
Publication Date: 2011.03.08 MICRON TECHNOLOGY INC
  • US7904897B2 patent drawing
  • US7904897B2 patent drawing
  • US7904897B2 patent drawing

AI summary

A processor-based device (e.g., a wireless device) may include a processor and a semiconductor nonvolatile memory to directly execute an application (e.g., an execute-in-place application) using an associated database. Within a flash memory, in one embodiment, an executable program may be separately stored in a non-fragmented manner from a resident database that includes program management information for use in an execution that does not involve a random access memory, saving time and resources.