Processor Coprocessor FIFO Interface Hardware Signals

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current techniques for connecting processor cores to coprocessors are suboptimal due to issues with dark silicon and reduced system throughput, particularly in handling backlogs and deferring coprocessor work, and involve complex coordination logic and increased power consumption.

Innovation Solution

The use of dedicated hardware signals to manage a first-in first-out (FIFO) structure that facilitates the transfer of control information and data between multiple computational processors, allowing for efficient push, pop, and peek transactions, and managing contention through serialization of operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If direct connection between core and coprocessor is used, then simple interface is achieved, but system throughput is reduced due to dark silicon and inability to handle backlog

Engineering Contradiction:
Improveinterface complexityVSAvoidsystem throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

A FIFO buffer is introduced as an intermediary component between the processor core and coprocessor. The FIFO decouples the core from the coprocessor, allowing the core to write work items to the FIFO without waiting for coprocessor completion. This enables the core to continue executing other instructions while the coprocessor processes work items at its own pace, eliminating dark silicon and improving system throughput without significantly increasing interface complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If common memory with work queue is used, then backlog handling is improved, but coordination logic complexity and power consumption increase

Engineering Contradiction:
Improvebacklog handling capabilityVSAvoidcoordination logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The coordination logic is extracted from the processor core and implemented as dedicated hardware signals within the FIFO interface. Instead of requiring the core to poll configuration registers or manage work queue coordination through complex software logic, the FIFO includes dedicated push and pop signals that automatically manage work item transfer. This extraction of coordination logic from the core reduces both the complexity of coordination logic and power consumption while maintaining backlog handling capability.

Inventive Principle:
Principle #2Taking out (Extraction)

3Device complexity

If coprocessor executes one unit of work at a time, then simple coprocessor architecture is maintained, but system throughput is reduced

Engineering Contradiction:
Improvecoprocessor architecture complexityVSAvoidsystem throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The FIFO buffer pre-stores multiple work items before the coprocessor begins execution. The core can populate the FIFO with multiple work items in advance, creating a backlog of pending operations. The coprocessor then executes these pre-loaded work items sequentially without requiring complex multi-threading or interrupt handling, maintaining simple coprocessor architecture while improving system throughput by eliminating idle periods between work items.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10614023B2Processor core to coprocessor interface with FIFO semantics
Publication Date: 2020.04.07 ORACLE INT CORP
  • US10614023B2 patent drawing
  • US10614023B2 patent drawing
  • US10614023B2 patent drawing

AI summary

Techniques are provided for exchanging dedicated hardware signals to manage a first-in first-out (FIFO). In an embodiment, a first processor initiates content transfer into the FIFO. The first processor activates a first hardware signal that is reserved for indicating that content resides within the FIFO. A second processor activates a second hardware signal that is reserved for indicating that content is accepted. The second hardware signal causes the first hardware signal to be deactivated. This exchange of hardware signals demarcates a FIFO transaction, which is mediated by interface circuitry of the FIFO.