Adaptive Computing Platform Distributed Memory Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing devices face limitations in processing power due to constraints on execution memory facilities, particularly in Ambient Intelligence applications where high data rate communication and flexible resource utilization are required, necessitating an adaptive computing platform that can leverage external non-volatile memory resources for enhanced processing capabilities.
Innovation Solution
An adaptive computing platform that utilizes distributed external memory resources as non-volatile memory blocks, allowing for scalable and flexible execution-in-place capabilities by adjusting the interface with different external memory technologies, enabling seamless program execution across various memory types and locations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If computing devices use internal execution memory facilities, then processing speed is maintained, but processing power is limited by memory capacity constraints
Solution Approach 1:
The system divides execution memory into internal memory (for active processing) and external distributed memory blocks (for storage and extended execution). Program code is segmented and distributed across multiple external memory blocks, allowing the processor to execute instructions from both internal and external memory, thereby expanding processing power beyond internal memory constraints.
Solution Approach 2:
The invention extends the memory space from a single internal memory dimension to a multi-dimensional distributed architecture by adding external memory blocks at different physical locations. This creates a hierarchical memory structure where execution can occur across multiple spatial dimensions, effectively increasing available execution memory capacity.
2Adaptability or versatility
If the system uses fixed memory interface configuration, then device complexity is reduced, but adaptability to different memory technologies is limited
Solution Approach 1:
The system implements a universal memory interface architecture that can accommodate multiple types of non-volatile memory technologies (phase-change memory, resistive RAM, magnetic memory, etc.) through a common interface protocol. This multi-functional interface design allows the same hardware architecture to work with different memory types without requiring separate dedicated interfaces for each technology.
Solution Approach 2:
The memory interface configuration is made dynamic and adaptive rather than fixed. The system can dynamically adjust interface parameters and select appropriate memory blocks based on real-time requirements, memory type detection, and performance characteristics. This dynamic adaptation enables versatility across different memory technologies while managing complexity through intelligent control.
3Ease of operation
If program code is stored in a single memory location, then access simplicity is maintained, but execution flexibility and mobility are reduced
Solution Approach 1:
Program code is divided into multiple segments that can be distributed across different memory blocks at various physical locations. Each segment can be independently accessed and executed, allowing the system to maintain simple access patterns within each memory block while achieving execution flexibility across multiple locations through coordinated segment retrieval and processing.
Data Source
AI summary
Example embodiments of the invention are disclosed for an adaptive computing platform wherein a reader/writer device uses distributed, external memory resources as non-volatile memory blocks to provide distributed execution-in-place capability for the reader/writer device, such as a mobile phone, to enhance the processing power of the device. The execution architecture of the reader/writer device is scalable and adaptive to accommodate variations in the speed, size, and other characteristics of different external memory blocks it uses as it moves from one external memory block to another.


