SoC Resource Partitioning via Dedicated Microcontroller

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multi-processor system-on-chip (SoC) technologies face challenges in efficiently partitioning and provisioning resources among multiple operating systems without impacting performance, leading to increased complexity, cost, and power consumption due to the need for virtualization software and additional architectural changes.

Innovation Solution

A method is implemented within the SoC to partition, provision, and protect shared resources using a separate microcontroller with additional partitioning and provisioning hardware logic, eliminating the need for virtualization software and allowing each operating system to operate independently with guaranteed bandwidth and performance, without architectural changes or processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtualization software is used to partition resources among multiple operating systems, then resource sharing capability is improved, but system complexity and cost increase

Engineering Contradiction:
Improveresource sharing capabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the virtualization management functionality from the main processors and places it in a dedicated configuration microcontroller. This separation removes the complexity of running virtualization software on the guest operating systems, while still enabling resource partitioning and sharing capabilities. The microcontroller handles configuration and management tasks, allowing the main processors to focus on executing guest OS workloads without the overhead of virtualization software.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If virtualization software is used to partition resources among multiple operating systems, then resource sharing capability is improved, but power consumption increases

Engineering Contradiction:
Improveresource sharing capabilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The virtualization management functions are extracted from the power-hungry main processors and implemented in a low-power configuration microcontroller. This dedicated controller handles resource partitioning and management tasks, allowing the main processors to enter low-power states when not actively processing guest OS workloads, thereby reducing overall power consumption while maintaining resource sharing capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of operation

If processors operate in SMP mode to coordinate requests between multiple guest OSs, then resource coordination is improved, but performance degrades due to unnecessary cache snoop requests

Engineering Contradiction:
Improveresource coordinationVSAvoidperformance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements domain-specific resource allocation where each guest operating system is assigned a specific domain with dedicated resources. This local quality approach allows each domain to operate independently without requiring global SMP coordination, eliminating unnecessary cache snoop requests between domains while maintaining efficient resource coordination within each domain through hardware-based isolation.

Inventive Principle:
Principle #3Local quality

4Adaptability or versatility

If SMP architecture is used to connect multiple processors to shared memory, then resource sharing is improved, but bandwidth and power consumption of interconnect increase

Engineering Contradiction:
Improveresource sharingVSAvoidinterconnect power consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent implements domain-based resource allocation where resources are partitioned into distinct domains, each associated with a specific processor or group of processors. This local quality approach reduces interconnect traffic by allowing processors to access resources within their domain without requiring broad interconnect arbitration, thereby reducing bandwidth consumption and power usage while maintaining resource sharing capabilities across domains.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8893267B1System and method for partitioning resources in a system-on-chip (SoC)
Publication Date: 2014.11.18 AMPERE COMPUTING LLC
  • US8893267B1 patent drawing
  • US8893267B1 patent drawing
  • US8893267B1 patent drawing

AI summary

In a system-on-chip (SoC), a method is provided for partitioning access to resources. A plurality of processors is provided, including a configuration master (CM) processor, a memory, a plurality of OSs, and accessible resources. The method creates a mapping table with a plurality of entries, each entry cross-referencing a range of destination addresses with a domain ID, where each domain ID is associated with a corresponding processor. Access requests to the resource are accepted from the plurality of processors. Each access request includes a domain ID and a destination address. A mapping table is consulted to determine the range of destination addresses associated with the access request domain IDs. The accesses are authorized in response to the access request destination addresses matching the range of destination addresses in the mapping table, and the authorized access requests are sent to the destination addresses of the requested resources.