Shared Vector Operator Architecture for Multi-Core Scalar Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processors that implement vector operations suffer from idle states and occupy large semiconductor chip surface area due to the need for extensive circuits, leading to inefficiencies and increased space requirements.

Innovation Solution

A processor architecture where a shared vector operator processes vector operations across multiple cores, with each core also having a scalar operator for scalar operations, and a scheduler to manage instruction delivery and prioritize processing, along with a register merger to enhance vector register efficiency by merging and resizing registers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a processor provides vector processing capability, then processing speed for vector operations is improved, but the processor occupies a large space on semiconductor chip surface

Engineering Contradiction:
Improveprocessing speedVSAvoidchip surface area
Core Design Contradiction:
SpeedVSArea of stationary object

Solution Approach 1:

The patent merges vector processing capability into a shared resource that can be accessed by multiple scalar processing cores. Instead of each core having its own vector processor, the vector operator is consolidated and shared across multiple cores, reducing the total circuit area while maintaining vector processing speed when needed.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared vector operator is designed to serve multiple scalar cores, making it a universal resource that can handle vector operations for any of the cores. This multi-functional design allows one vector processor to replace what would otherwise require multiple separate vector processors, reducing chip area while preserving processing capability.

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

2Adaptability or versatility

If a processor provides vector processing capability, then vector operations can be performed, but the processor experiences idle states and reduced efficiency

Engineering Contradiction:
Improvevector processing capabilityVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system dynamically allocates the shared vector operator to different scalar cores based on the current execution needs. The vector processor transitions between serving different cores or remaining idle only when no vector operations are pending, optimizing resource utilization and reducing idle states through dynamic task assignment.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The shared vector operator is designed to maintain continuous useful action by quickly transitioning between serving different scalar cores. When one core finishes its vector operations, the vector processor immediately becomes available for the next core that needs vector processing, minimizing idle time and maintaining continuous productive operation.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If vector processing is implemented, then multiple data can be operated on by single instruction, but scalar operations are delayed until vector operations complete

Engineering Contradiction:
Improvevector operation throughputVSAvoidscalar operation delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The processing architecture is segmented into independent scalar processing cores and a separate shared vector operator. This segmentation allows scalar and vector operations to proceed independently without blocking each other, as each scalar core can execute scalar instructions while the vector operator handles vector instructions separately, eliminating the delay where scalar operations must wait for vector operations to complete.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11042502B2Vector processing core shared by a plurality of scalar processing cores for scheduling and executing vector instructions
Publication Date: 2021.06.22 KWANGWOON UNIVERSITY INDUSTRY ACADEMIC COLLABORATION FOUNDATION
  • US11042502B2 patent drawing
  • US11042502B2 patent drawing
  • US11042502B2 patent drawing

AI summary

An operation processing apparatus is provided. The operation processing apparatus includes a vector operator and cores. The vector operator processes a vector operation with respect to an instruction that uses the vector operation, and each core includes a scalar operator that processes a scalar operation with respect to an instruction that does not use the vector operation. The vector operator is shared by the cores.