Dual On-Chip Memory Architecture for Reusable Instructions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computing systems are limited by off-chip memory, which restricts memory bandwidth performance and dominates power consumption due to frequent data and instruction retrieval and storage.
Innovation Solution
Incorporating a processing unit integrated circuit with on-chip compute circuitry and dual on-chip memory, where the first on-chip memory stores reusable data and instructions, and the second on-chip memory caches data and instructions from off-chip memory, reducing the need for frequent off-chip access and minimizing power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by stationary object
If data and instructions are stored in off-chip memory, then storage capacity is sufficient, but memory bandwidth performance is limited and power consumption increases
Solution Approach 1:
The memory system is segmented into multiple on-chip memory banks (first through fourth memory banks) that store different types of data (reusable data, input data, intermediate data, output data). This segmentation allows parallel access to different memory banks, improving memory bandwidth performance while keeping data close to the processing units, thereby reducing power consumption compared to a single off-chip memory.
Solution Approach 2:
The patent implements a hierarchical memory structure where on-chip memory banks are nested within the processing unit chip, and further nested memory structures are used within banks (e.g., memory banks containing multiple memory arrays). This nested architecture provides both fast on-chip access for high bandwidth and sufficient storage capacity, while minimizing the need for power-consuming off-chip memory accesses.
2Productivity
If data is frequently accessed from off-chip memory, then storage capacity is adequate, but memory bandwidth utilization increases power consumption
Solution Approach 1:
The system pre-loads data into on-chip memory banks before it is needed for processing. The memory controller anticipates data access patterns and loads reusable data, input data, and intermediate data into the appropriate on-chip memory banks in advance, so that when processing units need the data, it is already available on-chip, eliminating the need for power-consuming off-chip accesses during critical processing operations.
Solution Approach 2:
The on-chip memory banks serve as intermediary storage between the processing units and off-chip memory. Instead of processing units directly accessing off-chip memory (which consumes high power), they access the on-chip memory banks as intermediaries. The memory controller manages this intermediary layer, transferring data between off-chip memory and on-chip banks as needed, thereby shielding processing units from power-consuming off-chip accesses.
3Use of energy by stationary object
If on-chip memory is used to store reusable data, then power consumption decreases, but memory bandwidth performance must be optimized
Solution Approach 1:
Each on-chip memory bank is further segmented into multiple memory arrays (e.g., first memory array, second memory array within each bank), allowing parallel access to multiple arrays simultaneously. This segmentation within banks increases the effective memory bandwidth available to processing units while maintaining the power-saving benefit of on-chip storage, as multiple banks can be accessed in parallel without requiring off-chip memory accesses.
Data Source
AI summary
A computing system can include an off-chip memory and processing unit integrated circuitry. The processing unit IC can include on-chip compute circuitry, a first on-chip memory and a second on-chip memory. The off-chip memory can be configured to store instructions and data The first on-chip memory can be configured to store reusable portions of the instructions and or data for use by the on-chip compute circuitry. The second on-chip memory configured to cache portions of instruction and data for current use by the on-chip compute circuitry.


