Shared Memory Pool for Neural Simulator Components
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing neural network simulators face challenges in dynamically allocating memory resources to components, leading to inefficiencies and limited flexibility in hardware implementations, as they often rely on pre-allocated memory that cannot accommodate varying memory requirements of different neuron types.
Innovation Solution
A shared memory pool architecture is implemented in hardware simulators, allowing dynamic allocation of memory to components based on determined resource requirements, enabling flexible memory usage and accommodating changes in state variable sizes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If pre-allocated memory is used in hardware simulators, then memory allocation is simple and fixed, but flexibility and adaptability to varying memory requirements of different neuron types are limited
Solution Approach 1:
The patent implements a dynamic memory allocation system where memory is not statically assigned but dynamically distributed to neuron components based on their actual requirements. The shared memory pool can be reallocated during simulation runtime, allowing the system to adapt to varying memory needs of different neuron types while maintaining hardware efficiency.
Solution Approach 2:
The shared memory pool serves multiple neuron types and components simultaneously, providing a universal memory resource that can be allocated to different parts of the neural network as needed. This multi-functional memory architecture replaces dedicated memory blocks with a single pool that serves all components, increasing versatility without proportionally increasing overall complexity.
2Productivity
If dedicated memory is allocated to each neuron component, then memory access is fast and direct, but memory resource utilization efficiency decreases due to unused allocated memory
Solution Approach 1:
The patent merges individual memory allocations for different neuron components into a single shared memory pool. This consolidation eliminates wasted memory space across multiple dedicated allocations and improves overall resource utilization efficiency, as memory can be dynamically assigned to components that need it rather than remaining allocated but unused.
Solution Approach 2:
The system dynamically changes memory allocation parameters based on the actual needs of neuron components during simulation. By adjusting the amount of memory allocated to each component in real-time rather than using fixed allocations, the system optimizes resource utilization efficiency while adapting to varying computational requirements.
Data Source
AI summary
Aspects of the present disclosure provide methods and apparatus for allocating memory in an artificial nervous system simulator implemented in hardware. According to certain aspects, memory resource requirements for one or more components of an artificial nervous system being simulated may be determined and portions of a shared memory pool (which may include on-chip and/or off-chip RAM) may be allocated to the components based on the determination.


