Dynamic FPGA Resource Allocation for Data Acquisition Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data acquisition systems for industrial equipment require time-consuming and resource-intensive processes to update measurement configurations, involving firmware revisions and equipment downtime, making it difficult to dynamically change or add monitoring parameters.

Innovation Solution

A dynamically configurable data acquisition system that uses a computing device with a processor and memory, coupled with a field-programmable gate array (FPGA) and digital signal processors (DSPs), allowing for on-the-fly configuration of measurement calculations without firmware upgrades or system interruptions, by allocating resources among signal processing cores and DSPs to support various measurement algorithms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional firmware update approach is used to change measurement configurations, then system reliability is improved through tested firmware revisions, but productivity deteriorates due to equipment downtime and curtailment of service

Engineering Contradiction:
Improvesystem reliabilityVSAvoidproductivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system is segmented into multiple processing channels (first processing channel and second processing channel) that can operate independently. The measurement configuration is divided into standard measurements handled by the first channel and non-standard measurements handled by the second channel, allowing parallel processing without mutual interference and enabling configuration changes without system downtime.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The beta testing feature allows non-standard measurements to be tested in advance in a controlled manner through the second processing channel before full integration. This preliminary action enables validation of new measurement configurations without disrupting the standard measurement operations, ensuring reliability while preparing for future productivity improvements.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If firmware revision process is followed to implement new measurement configurations, then measurement precision is improved through tested algorithms, but loss of time increases due to testing and installation procedures

Engineering Contradiction:
Improvemeasurement precisionVSAvoidloss of time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system maintains continuous operation of the first processing channel for standard measurements while the second processing channel handles non-standard measurements and beta testing. This continuity ensures that measurement precision is maintained for critical standard measurements while allowing time-consuming testing and configuration changes to occur parallelly without interruption.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The second processing channel acts as an intermediary for testing and implementing non-standard measurements. It serves as a buffer that allows measurement precision improvements to be developed and tested without interfering with the primary measurement operations, thereby reducing the time loss associated with traditional firmware update cycles.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If resource allocation is dynamically adjusted to support multiple measurement algorithms, then adaptability is improved for various measurement configurations, but device complexity increases due to multiple DSPs and signal processing cores

Engineering Contradiction:
ImproveadaptabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Multiple digital signal processors (DSPs) and signal processing cores are designed with universal functionality to handle both standard and non-standard measurements. Each DSP can be dynamically allocated to different measurement algorithms based on demand, providing adaptability without requiring dedicated hardware for each function, thereby managing device complexity through resource virtualization.

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

Solution Approach 2:

The system implements dynamic resource allocation where the assignment of DSPs and signal processing cores to measurement algorithms can change in real-time based on the measurement configuration requirements. This dynamic adaptability allows the system to handle diverse measurement tasks efficiently while maintaining a manageable level of device complexity through flexible resource management rather than fixed dedicated hardware.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2951737B1Method and system for use in dynamically configuring data acquisition systems
Publication Date: 2024.08.28 BAKER HUGHES CO
  • EP2951737B1 patent drawingFigure 1
  • EP2951737B1 patent drawingFigure 2
  • EP2951737B1 patent drawingFigure 3

AI summary

A data acquisition system (DAS) (200) includes a plurality of processors (215/412/413/414) comprising at least one first processor (215) and a plurality of second processors (414). The at least one first processor is configured to receive at least one configuration file (502) and generate at least one measurement data application (506/507) from the at least one configuration file. The DAS also includes a field-programmable gate array (FPGA) (408) coupled to the plurality of processors. The FPGA is configured to receive the at least one measurement data application and allocate at least a portion (413) of one of the FPGA and at least one second processor of the plurality of second processors to calculate measurement data (556/558/562) at least partially based on the at least one measurement data application and an availability of the at least a portion of the FPGA.