Dynamic Memory Map Configuration for Network-on-Chip Traffic Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network on Chip (NoC) systems face challenges in efficiently managing multiple memory channels and interleaving memory regions, leading to suboptimal performance and flexibility in memory mapping, especially in applications requiring high bandwidth and large memory buffers.

Innovation Solution

An apparatus and method that utilize a data store to track access activity and defining information for multiple access parameter sets, including channel information, interleaving details, and quality of service, to determine the appropriate access parameter set for an input address and provide channel information, enabling dynamic configuration of memory maps and traffic balancing across channels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a fixed memory map configuration is used in NoC systems, then device complexity is reduced, but adaptability and flexibility for different memory types and applications deteriorate

Engineering Contradiction:
Improvememory map configurationVSAvoidmemory mapping flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic memory map configuration by storing multiple access parameter sets (different memory map configurations) in a data store and selecting the appropriate set based on access activity information. This allows the NoC system to adapt its memory mapping dynamically at runtime rather than being fixed, resolving the contradiction between device complexity and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes parameters by storing multiple access parameter sets with different channel numbers, location information, and interleaving information. The determination block selects different parameter sets based on the input address and access activity, enabling the system to adapt to different memory types and applications without increasing hardware complexity.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If multiple access parameter sets are stored and dynamically selected, then adaptability and performance are improved, but device complexity and configuration overhead increase

Engineering Contradiction:
Improvememory mapping flexibilityVSAvoidconfiguration structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The determination block serves multiple functions: it receives the input address, determines the appropriate access parameter set based on access activity information, and provides channel information. This multi-functional approach improves adaptability without proportionally increasing device complexity, as a single block handles multiple configuration tasks.

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

Solution Approach 2:

Instead of implementing complex dynamic reconfiguration logic, the system stores multiple pre-configured access parameter sets in a data store. The determination block simply selects and copies the appropriate pre-defined configuration based on the input address, reducing the complexity of the configuration mechanism while maintaining high adaptability.

Inventive Principle:
Principle #26Copying

3Productivity

If static channel allocation is used, then device complexity is minimized, but productivity and load balancing performance deteriorate

Engineering Contradiction:
Improvememory access performanceVSAvoidchannel management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system dynamically changes channel allocation parameters by storing multiple access parameter sets with different channel numbers and location information. The determination block selects different channel configurations based on the input address and access activity, enabling load balancing across channels without requiring complex real-time channel management logic.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Multiple channel configurations and interleaving parameters are pre-configured in the data store before runtime. The determination block simply selects the appropriate pre-configured channel allocation based on the input address, achieving productive load balancing without complex runtime channel management.

Inventive Principle:
Principle #10Preliminary action

4Manufacturing precision

If interleaving information is stored for multiple access parameter sets, then manufacturing precision and memory access efficiency are improved, but device complexity increases

Engineering Contradiction:
Improvememory access precisionVSAvoidinterleaving configuration
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

Interleaving information for multiple access parameter sets is stored in the data store and copied/selected based on the input address. This approach achieves precise memory access control for different memory types without requiring complex interleaving logic, as the appropriate interleaving configuration is selected from pre-stored options.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10419432B2Method and apparatus for use with different memory maps
Publication Date: 2019.09.17 STMICROELECTRONICS INT NV
  • US10419432B2 patent drawing
  • US10419432B2 patent drawing
  • US10419432B2 patent drawing

AI summary

An apparatus has a data store configured to store access activity information. The access activity information indicates which one or more of a plurality of different access parameter sets is active. The data store is also configured to store access defining information, which defines, at least for each active access parameter set, a number of channels, location information of said channels, and interleaving information associated with said channels.