SoC Architecture Generation via Shared Array Resource Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for SoC architecture design face challenges in optimizing module division, leading to suboptimal performance and potential rework, as they rely heavily on designer experience and do not effectively manage array usage across processes, which can result in exceeding chip area and performance constraints.

Innovation Solution

An architecture generating device that identifies declaration statements for arrays across multiple processes and generates a hardware specification file by replacing them with shared arrays, allowing for efficient resource sharing and optimizing hardware specification generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple separate arrays are used for different processes, then each process can operate independently, but the chip area increases and resource efficiency decreases

Engineering Contradiction:
Improveresource efficiencyVSAvoidchip area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent merges multiple separate arrays that are used by different processes into a single shared array. The declaration statement identifying unit detects arrays declared in different processes, and the specification generating unit replaces them with a shared array that multiple processes can access, thereby reducing total memory usage while maintaining process independence

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal shared array that serves multiple processes simultaneously. Instead of dedicating separate arrays to each process, a single array structure is designed to be accessed by multiple processes through controlled interfaces, making the memory resource multi-functional and reducing overall chip area requirements

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

2Adaptability or versatility

If module division is conducted based on designer experience, then design flexibility is maintained, but optimal performance cannot be guaranteed and rework increases

Engineering Contradiction:
Improvedesign flexibilityVSAvoidperformance optimization
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The patent implements an automated feedback mechanism where the declaration statement identifying unit analyzes the hardware specification file, identifies arrays used across multiple processes, and the specification generating unit automatically generates optimized module divisions. This closed-loop approach provides feedback on resource usage patterns and automatically adjusts the architecture to achieve optimal performance while maintaining design flexibility

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent enables the design system to self-optimize by automatically analyzing the hardware specification, identifying optimization opportunities in array usage, and generating optimized module divisions without requiring manual intervention. The system serves itself by detecting and correcting suboptimal architecture decisions, reducing rework while maintaining flexibility

Inventive Principle:
Principle #25Self-service

3Area of stationary object

If arrays are shared across multiple processes, then chip area is reduced and resource efficiency improves, but array access management becomes more complex

Engineering Contradiction:
Improvechip areaVSAvoidarray access management
Core Design Contradiction:
Area of stationary objectVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary shared array structure with controlled access mechanisms. The declaration statement identifying unit detects arrays used by multiple processes, and the specification generating unit creates a shared array with defined access protocols. This intermediary structure manages the complexity of simultaneous access by providing a standardized interface that multiple processes can use without direct conflict

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10303832B2Architecture generating device
Publication Date: 2019.05.28 MITSUBISHI ELECTRIC CORP
  • US10303832B2 patent drawing
  • US10303832B2 patent drawing
  • US10303832B2 patent drawing

AI summary

A specification editing unit edits a hardware specification file in order to replace a plurality of arrays used in a plurality of processes with a shared array. If a post-edit hardware specification file does not satisfy constraint, a specification transforming unit transforms the hardware specification file so that the plurality of processes are executed in a parallel manner. An architecture generating unit generates an architecture file expressing an architecture of an SoC (System On Chip) having hardware corresponding to the hardware specification file.