IP Library Granted Patent US 9,792,250
Granted Patent B1
US 9,792,250 · App. 14/691,769 · Granted Oct 17, 2017

System on chip module configured for event-driven architecture

Inventors: Kevin Robbins (Albuquerque, NM); Charles E. Brady (Albuquerque, NM); Tad A. Ashlock (Albuquerque, NM)
Assignee: National Technology & Engineering Solutions of Sandia, LLC
G06F15/7821G06F9/546
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 9,792,250
App. No.
14/691,769
Granted
Oct 17, 2017
Kind
B1
Abstract

A system on chip (SoC) module is described herein, wherein the SoC modules comprise a processor subsystem and a hardware logic subsystem. The processor subsystem and hardware logic subsystem are in communication with one another, and transmit event messages between one another. The processor subsystem executes software actors, while the hardware logic subsystem includes hardware actors, the software actors and hardware actors conform to an event-driven architecture, such that the software actors receive and generate event messages and the hardware actors receive and generate event messages.

Claims (25)

1. A computing device comprising:

a system on chip (SoC) module, the SoC module comprises:

a processor subsystem, the processor subsystem comprises:

a processor; and

memory that comprises:

 an event broker component that is executed by the processor, the event broker component configured to detect receipt of a predefined event message at the processor subsystem; and

 a process that conforms to an event-driven architecture, wherein the event broker component is further configured to cause the processor to execute the process responsive to the event broker component detecting receipt of the predefined event message at the processor subsystem, the process configured to cause the processor to generate an output event message responsive to the processor executing the process; and

a hardware logic subsystem, the hardware logic subsystem comprises:

event broker logic that is configured to detect receipt of a predefined second event message at the hardware logic subsystem; and

a hardware logic module that conforms to the event-driven architecture, wherein the event broker logic is further configured to trigger operation of the hardware logic module responsive to the event broker logic detecting receipt of the predefined second event message, the hardware logic module configured to generate a second output event message responsive to being triggered;

wherein the processor subsystem and the hardware logic subsystem are configured to communicate with one another.

2. The computing device of claim 1 , further comprising a shared memory pool, where the processor subsystem and the hardware logic subsystem are configured to communicate with one another by way of the shared memory pool.

3. The computing device of claim 1 , further comprising a communications bus, where the processor subsystem and the hardware logic subsystem are configured to communicate with one another by way of the communications bus.

4. The computing device of claim 1 , the output event message is the predefined second event message, and wherein the event broker component is configured to receive the predefined second event message and direct the predefined second event message to the hardware logic subsystem.

5. The computing device of claim 1 , the second output event message is the predefined event message, and wherein the event broker logic is configured to receive the predefined event message and direct the predefined event message to the processor subsystem.

6. The computing device of claim 1 , the event broker component is further configured to receive a third predefined event message, determine that the third predefined event message is to be provided to the hardware logic subsystem, and cause the third predefined event message to be directed to the event broker logic of the hardware logic subsystem.

7. The computing device of claim 6 , the memory comprising a second process that conforms to the event-driven architecture, the event broker component is further configured to cause the processor to execute the second process responsive to the event broker component receiving the third predefined event message, the second process configured to cause the processor to generate a third output event message responsive to the processor executing the second process.

8. The computing device of claim 7 , the hardware logic subsystem comprising a second hardware logic module that conforms to the event-driven architecture, the event broker logic configured to receive the third predefined event message and trigger the second hardware logic module responsive to the event broker logic receiving the third predefined event message, the second hardware logic module configured to generate the third output event message when triggered.

9. The computing device of claim 1 , the event broker logic is further configured to receive a third predefined event message, determine that the third predefined event message is to be provided to the processor subsystem, and cause the third predefined event message to be directed to the event broker component of the processor subsystem.

10. The computing device of claim 9 , the memory comprising a second process that conforms to the event-driven architecture, the event broker component is further configured to cause the processor to execute the second process responsive to the event broker component receiving the third predefined event message, the processor is configured to perform certain functionality responsive to executing the second process.

11. The computing device of claim 10 , the hardware logic subsystem comprising a second hardware logic module that conforms to the event-driven architecture, the event broker logic configured to cause the second hardware logic module to execute responsive to the event broker logic receiving the third predefined event message, the second hardware logic module configured to perform the certain functionality.

12. A System on Chip (SoC) module comprising:

a processor subsystem; and

a field programmable gate array (FPGA) fabric that is in communication with the processor subsystem, the processor subsystem and the FPGA fabric configured with event-driven functionality, the processor subsystem configured to generate first event messages and cause the first event messages to be accessible to the FPGA fabric, the FPGA fabric configured to generate second event messages and cause the second event messages to be accessible to the processor subsystem.

13. The computing device of claim 1 , wherein the hardware logic subsystem is a field programmable gate array (FPGA) fabric.

Assignments (3)
CHANGE OF NAME Recorded Aug 10, 2017
From: SANDIA CORPORATION
To: NATIONAL TECHNOLOGY & ENGINEERING SOLUTIONS OF SANDIA, LLC
Reel/Frame 043514/0618 →
CONFIRMATORY LICENSE Recorded Dec 29, 2015
From: SANDIA CORPORATION
To: U.S. DEPARTMENT OF ENERGY
Reel/Frame 037395/0958 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2015
From: ROBBINS, KEVIN; BRADY, CHARLES E.; ASHLOCK, TAD A.
To: SANDIA CORPORATION
Reel/Frame 035693/0626 →