Event-Driven Data Linkage for Heterogeneous FPGA X86 Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In FPGA+X86 architecture systems, data synchronization between heterogeneous platforms is inefficient, leading to prolonged processing times as the X86 platform waits for feedback from the FPGA platform, limiting overall system performance.

Innovation Solution

A data linkage method and apparatus driven by events, where a data linkage module on the X86 platform forwards data packets to the FPGA platform for processing without waiting for feedback, using a buffer to store shared information copies and manage aging expiration, allowing synchronous data acquisition and operation instruction completion messaging.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the X86 platform waits for feedback from the FPGA platform after sending operation instructions, then data consistency between platforms is ensured, but processing time is prolonged and system performance is reduced

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the X86 platform send operation instructions to the FPGA platform and immediately continue processing without waiting for feedback. The FPGA platform processes instructions asynchronously in the background, completing operations before the X86 platform needs the results. This eliminates waiting time while ensuring data consistency through proactive instruction execution and result availability.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If data sets are stored on the FPGA platform to reduce cross-platform information inquiries, then overall system performance is improved, but the X86 platform cannot acquire data synchronously without waiting for FPGA feedback

Engineering Contradiction:
Improvesystem performanceVSAvoiddata acquisition speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent implements feedback mechanisms where the FPGA platform sends completion notifications back to the X86 platform after executing operation instructions. This feedback loop allows the X86 platform to know when data operations are complete and can proceed with synchronous data acquisition at appropriate moments, combining the benefits of asynchronous processing with coordinated data access timing.

Inventive Principle:
Principle #23Feedback

3Reliability

If the X86 platform initiates most data acquisitions to ensure data availability, then data consistency is maintained, but processing efficiency is reduced due to frequent interrupt operations

Engineering Contradiction:
Improvedata availabilityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the data acquisition initiation flexible rather than static. The system dynamically determines whether the X86 or FPGA platform should initiate data acquisitions based on real-time needs and operational state. The FPGA platform can autonomously send data to the X86 platform when data is ready, reducing the need for frequent X86-initiated interrupt operations while maintaining data availability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9250986B2Method and apparatus for data linkage between heterogeneous platforms
Publication Date: 2016.02.02 NEUSOFT CORP
  • US9250986B2 patent drawing
  • US9250986B2 patent drawing
  • US9250986B2 patent drawing

AI summary

The present invention provides a method for data linkage driven by an event, used for data interaction between a first platform and a second platform. The second platform stores shared information and the method comprises: determining which platform the received event is from; forwarding a data packet from the second platform to the first platform for logical operation processing when the received event is from the second platform; when the received event is information from the first platform that at least includes a shared information operation instruction resulting from logic operation processing of data packets in the first platform, returning a shared information operation instruction completion message to the first platform, meanwhile forwarding the shared information operation instruction to the second platform so as to complete the shared information operation on the second platform. Therefore, the first platform acquires data synchronously without waiting for feedback of the second platform.