Dynamic SRAM Sharing in System-on-Chip Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In System-on-Chip (SOC) devices, SRAMs allocated to different functional modules often remain idle due to non-simultaneous access, leading to underutilization and high production costs due to the substantial chip area occupied by memory blocks.

Innovation Solution

A memory sharing method that calculates the total memory capacity of a module group and allocates SRAMs dynamically, allowing a target module to access SRAMs from other functional modules when their combined capacity meets the target's requirements, thereby reducing the number of implemented SRAMs and lowering production costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If SRAMs are allocated to each functional module in SOC devices, then each module has dedicated memory access, but the total chip area is substantially occupied by memory blocks (about 70% area)

Engineering Contradiction:
Improvededicated memory accessVSAvoidchip area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

Multiple SRAMs from different functional modules are merged into a shared memory pool that can be accessed by any module. The memory management unit consolidates control over these SRAMs, allowing them to function as a unified resource rather than isolated dedicated memories, thereby reducing total memory footprint while maintaining access reliability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

SRAMs are designed to serve multiple functions and multiple functional modules simultaneously. A single SRAM can be allocated to different modules at different times based on system needs, making the memory resource universal rather than dedicated to a single module, thus reducing the overall number of SRAMs required.

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

2Ease of operation

If SRAMs are distributed in different functional modules, then each module has independent memory, but the SRAMs remain idle when not accessed, causing underutilization

Engineering Contradiction:
Improveindependent memoryVSAvoidmemory utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The memory allocation system dynamically assigns SRAMs to functional modules based on real-time access patterns and system demands. Instead of static dedicated allocation, the memory management unit continuously monitors and reallocates memory resources, ensuring that SRAMs are actively utilized by whichever module currently needs them, thereby eliminating idle time and improving overall productivity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The memory management unit enables functional modules to self-allocate memory resources from the shared pool based on their immediate needs. Modules can independently access and utilize available SRAMs without requiring permanent dedicated assignment, allowing the system to automatically optimize memory utilization across all modules while maintaining operational independence.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If dedicated SRAMs are assigned to each functional module, then memory allocation is simple, but the total number of SRAMs is high, increasing production costs

Engineering Contradiction:
Improvememory allocationVSAvoidnumber of SRAMs
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

A memory management unit acts as an intermediary between functional modules and the shared SRAM pool. This mediator handles the complexity of memory allocation, addressing, and access control, allowing multiple modules to efficiently share a reduced number of SRAMs. The intermediary manages the increased complexity of dynamic allocation, enabling cost reduction through fewer physical SRAMs while maintaining allocation simplicity through centralized control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7743221B2Memory sharing method for sharing SRAM in an SOC device
Publication Date: 2010.06.22 AUTOCHIPS
  • US7743221B2 patent drawing
  • US7743221B2 patent drawing
  • US7743221B2 patent drawing

AI summary

A memory sharing method for at least a functional module and a target module is disclosed. The functional module includes at least a static random access memory (SRAM), the memory sharing method includes the steps of calculating a memory capacity of the functional module; if a total memory capacity of a module group satisfies a memory capacity requirement of the target module, allocating the SRAM of the module group, wherein the module group comprises at least one functional module; and accessing the SRAM of the functional module of the module group by utilizing the target module.