IP Library Granted Patent US 10,754,746
Granted Patent B2
US 10,754,746 · App. 15/813,479 · Granted Aug 25, 2020

Virtual processor enabling unobtrusive observation of legacy systems for analytics in SoC

Inventors: Andrew William Berner (Waterford, NY); Tab Mong (Erie, PA); Richard Gawrelski (Amsterdam, NY)
Assignee: General Electric Company
G06F11/3013G05B23/00G06F9/45558G06F11/3003G06F11/3058G06F11/3089G06F11/3452G06F15/7867G06F16/2465G06F11/008G06F11/0754G06F2009/45591G06F2201/815
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,754,746
App. No.
15/813,479
Granted
Aug 25, 2020
Kind
B2
Abstract

The example embodiments are directed to a system and method for a virtual processor that enables unobtrusive observation of legacy systems for analytics in a system-on-chip (SoC) environment. In one example, the method includes implementing a virtual processor in field programmable gate array (FPGA) programmable logic, the virtual processor comprising a virtual version of a target system, capturing one or more operational parameters in volatile memory of the virtual processor using an access controller configured to provide direct access to the volatile memory of the virtual processor, streaming the one or more operational parameters to the embedded processor, storing the one or more operational parameters in volatile memory of the embedded processor, and performing in-situ monitoring using the one or more operational parameters.

Claims (41)

1. A computing system comprising:

a virtual processor implemented in field programmable gate array (FPGA) programmable logic, the virtual processor comprising a virtual version of a target system;

a memory device storing instructions; and

an embedded processor coupled to the FPGA programmable logic configured to execute the instructions, wherein the executed instructions cause the embedded processor to:

capture one or more operational parameters of at least one hardware device of the target system, the at least one hardware device being external to the embedded processor and external to the FPGA programmable logic, in volatile memory of the virtual processor using an access controller configured to provide direct access to the volatile memory of the virtual processor, wherein the operational parameters comprise one or more of a temperature, speed, or fluid level of at least a portion of the at least one hardware device;

stream the one or more operational parameters to the embedded processor;

store the one or more operational parameters in volatile memory of the embedded processor; and

perform in-situ monitoring using the one or more operational parameters, the performance of the in-situ monitoring comprising identifying one or more variations of the operational parameters for the at least one hardware device prior to failure of the target system.

2. The computing system of claim 1 , wherein the monitoring is performed in real time while the target system is running, and

the monitoring further comprises one or more of condition-based maintenance, prognostics health monitoring, or scheduled-based maintenance.

3. The computing system of claim 1 , wherein the one or more operational parameters stored in the volatile memory of the embedded processor are continuously updated based on the operational parameters in the volatile memory of the virtual processor.

4. The computing system of claim 1 , wherein the one or more operational parameters are streamed to the embedded processor using a using a direct memory access (DMA) channel.

5. The computing system of claim 1 , wherein the virtual processor implemented in FPGA logic is instead implemented in Application Specific Integrated Circuit (ASIC) logic.

6. The computing system of claim 1 , wherein the one or more operational parameters stored in the volatile memory of the embedded processor is written into the volatile memory via a DMA transfer.

7. The computing system of claim 1 , wherein the hardware and operations of the target system are emulated in software.

8. The computing system of claim 1 , wherein the one or more operational parameters are sampled at a sampling rate of a central processing unit (CPU) corresponding to the virtual processor.

9. The computing system of claim 1 , wherein the system is a system-on-chip (SoC) comprising one or more parallel processing cores.

10. A computer-implemented method of forming a system-on-chip (SoC), comprising:

implementing a virtual processor in field programmable gate array (FPGA) programmable logic, the virtual processor comprising a virtual version of a target system;

coupling the FPGA programmable logic to an embedded processor;

capturing one or more operational parameters of at least one hardware device of the target system, the at least one hardware device being external to the embedded processor and external to the FPGA programmable logic, in volatile memory of the virtual processor using an access controller configured to provide direct access to the volatile memory of the virtual processor, wherein the operational parameters comprise one or more of a temperature, speed, or fluid level of at least a portion of the at least one hardware device;

streaming the one or more operational parameters to the embedded processor;

storing the one or more operational parameters in volatile memory of the embedded processor; and

performing in-situ monitoring using the one or more operational parameters, the performing of the in-situ monitoring comprising identifying one or more variations of the operational parameters for the at least one hardware device prior to failure of the target system.

11. The computer-implemented method of claim 10 , wherein the monitoring is performed in real time while the target system is running, and

the monitoring further comprises one or more of condition-based maintenance, prognostics health monitoring, or scheduled-based maintenance.

12. The computer-implemented method of claim 10 , wherein the one or more operational parameters stored in the volatile memory of the embedded processor are continuously updated based on the operational parameters in the volatile memory of the virtual processor.

13. The computer-implemented method of claim 10 , wherein the one or more operational parameters are streamed to the embedded processor using a using a direct memory access (DMA) channel.

14. The computer-implemented method of claim 10 , wherein the virtual processor implemented in FPGA logic is instead implemented in Application Specific Integrated Circuit (ASIC) logic.

15. The computer-implemented method of claim 10 , wherein the one or more operational parameters stored in the volatile memory of the embedded processor is written into the volatile memory via a DMA transfer.

16. The computer-implemented method of claim 10 , wherein the hardware and operations of the target system are emulated in software.

17. The computer-implemented method of claim 10 , wherein the one or more operational parameters are sampled at a sampling rate of a central processing unit (CPU) corresponding to the virtual processor.

18. The computer-implemented method of claim 10 , wherein the embedded processor further comprises one or more processing cores.

19. The computer-implemented method of claim 10 , wherein the volatile memory of the virtual processor is completely emulated in the embedded processor.

20. A non-transitory computer readable medium having stored therein instructions that when executed cause a computer to perform a method comprising:

implementing a virtual processor in field programmable gate array (FPGA) programmable logic, the virtual processor comprising a virtual version of a target system;

coupling the FPGA programmable logic to an embedded processor;

capturing one or more operational parameters of at least one hardware device of the target system, the at least one hardware device being external to the embedded processor and external to the FPGA programmable logic, in volatile memory of the virtual processor using an access controller configured to provide direct access to the volatile memory of the virtual processor, wherein the operational parameters comprise one or more of a temperature, speed, or fluid level of at least a portion of the at least one hardware device;

streaming the one or more operational parameters to the embedded processor;

storing the one or more operational parameters in volatile memory of the embedded processor; and

performing in-situ monitoring using the one or more operational parameters, the performing of the in-situ monitoring comprising identifying one or more variations of the operational parameters for the at least one hardware device prior to failure of the target system.

Assignments (4)
SECURITY INTEREST Recorded Mar 2, 2026
From: INNOVATEPRO MANAGEMENT USA LLC
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 073942/0369 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2026
From: GE VERNOVA ELECTRIFICATION SOFTWARE HOLDINGS LLC
To: INNOVATEPRO MANAGEMENT USA LLC
Reel/Frame 073924/0810 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2023
From: GENERAL ELECTRIC COMPANY
To: GE DIGITAL HOLDINGS LLC
Reel/Frame 065612/0085 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2017
From: BERNER, ANDREW WILLIAM; MONG, TAB; GAWRELSKI, RICHRD
To: GENERAL ELECTRIC COMPANY
Reel/Frame 044134/0053 →
Continuity (1)
Related Publication 20190146821A1 · May 16, 2019