IP Library Granted Patent US 9,497,099
Granted Patent B2
US 9,497,099 · App. 14/219,057 · Granted Nov 15, 2016

Voting architecture for safety and mission critical systems

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,497,099
App. No.
14/219,057
Granted
Nov 15, 2016
Kind
B2
Abstract

A fault-tolerant failsafe computer voting system includes a switch module that generates a first copy of a first data packet and a second copy of the first data packet and that communicates the first copy and the second copy. The system also includes a first voting module that generates a first packet signature based on the first copy and communicates the first packet signature. The system further includes a second voting module that generates a second packet signature based on the second copy and communicates the second packet signature.

Claims (43)

1. A fault-tolerant failsafe computer voting system comprising:

a switch module that generates a first copy of a first data packet and a second copy of the first data packet and that communicates the first copy and the second copy;

a first voting module that generates a first packet signature based on the first copy and communicates the first packet signature; and

a second voting module that generates a second packet signature based on the second copy and communicates the second packet signature;

wherein the first voting module generates a first voting signal based on a comparison between the first packet signature and the second packet signature and the second voting module generates a second voting signal based on a comparison between the first packet signature and the second packet signature; and

wherein the first voting module communicates the first copy based on the first voting signal and the second voting signal.

2. The system of claim 1 wherein the first voting module includes a first incoming voting module and wherein the second voting module includes a second incoming voting module.

3. The system of claim 2 wherein the switch module communicates the first copy to the first incoming voting module and the second copy to the second incoming voting module.

4. The system of claim 3 wherein the first incoming voting module generates the first packet signature and communicates the first packet signature to the second incoming voting module and wherein the second incoming voting module generates the second packet signature and communicates the second packet signature to the first incoming voting module.

5. The system of claim 4 wherein the first incoming voting module determines whether the first packet signature is identical to the second packet signature and wherein the second incoming voting module determines whether the second packet signature is identical to the first packet signature.

6. The system of claim 5 wherein the first incoming voting module generates the first voting signal in response to a determination that the first packet signature is identical to the second packet signature and wherein the second incoming voting module generates the second voting signal in response to a determination that the second packet signature is identical to the first packet signature.

7. The system of claim 1 wherein the first voting module communicates the first copy to a processing module.

8. The fault-tolerant failsafe computer voting system of claim 1 wherein the first voting module and the second voting module are identical and comprise separate components.

9. A fault-tolerant failsafe computer voting system comprising:

a first processing module that generates a first outgoing data packet and communicates the first outgoing data packet;

a second processing module that generates a second outgoing data packet and communicates the second outgoing data packet;

a first voting module that generates a first packet signature based on first outgoing data packet and communicates the first packet signature; and

a second voting module that generates a second packet signature based on the second outgoing data packet and communicates the second packet signature;

wherein the first voting module generates a first voting signal based on a comparison between the first packet signature and the second packet signature and the second voting module generates a second voting signal based on a comparison between the first packet signature and the second packet signature; and

wherein the first voting module communicates the first outgoing data packet based on the first voting signal and the second voting signal.

10. The system of claim 9 wherein the first voting module includes a first outgoing voting module and wherein the second voting module includes a second outgoing voting module.

11. The system of claim 10 wherein the first processing module communicates the first outgoing data packet to the first outgoing voting module and the second processing module communicates the second outgoing data packet to the second outgoing voting module.

12. The system of claim 11 wherein the first outgoing voting module generates the first packet signature and communicates the first packet signature to the second outgoing voting module and wherein the second outgoing voting module generates the second packet signature and communicates the second packet signature to the first outgoing voting module.

13. The system of claim 12 wherein the first outgoing voting module determines whether the first packet signature is identical to the second packet signature and wherein the second outgoing voting module determines whether the second packet signature is identical to the first packet signature.

14. The system of claim 13 wherein the first outgoing voting module generates the first voting signal in response to a determination that the first packet signature is identical to the second packet signature and wherein the second outgoing voting module generates the second voting signal in response to a determination that the second packet signature is identical to the first packet signature.

15. The system of claim 9 wherein the first voting module communicates the first outgoing packet to a switch module based on header information included with the first outgoing data packet.

16. The fault-tolerant failsafe computer voting system of claim 9 wherein the first processing module and the second processing module are identical and comprise separate components, and the first voting module and the second voting module are identical and comprise separate components.

17. A fault-tolerant failsafe computer voting method comprising:

generating a first copy of a first data packet and a second copy of the first data packet;

communicating the first copy and the second copy;

generating a first packet signature based on the first copy;

communicating the first packet signature;

generating a second packet signature based on the second copy;

communicating the second packet signature;

generating a first voting signal based on a comparison between the first packet signature and the second packet signature;

generating a second voting signal based on a comparison between the first packet signature and the second packet signature; and

communicating the first copy based on the first voting signal and the second voting signal.

18. The method of claim 17 further comprising determining whether the first packet signature is identical to the second packet signature.

19. The method of claim 18 further comprising generating the first voting signal in response to a determination that the first packet signature is identical to the second packet signature.

20. The method of claim 17 further comprising determining whether the second packet signature is identical to the first packet signature.

21. The method of claim 20 further comprising generating the second voting signal in response to a determination that the second packet signature is identical to the first packet signature.

22. The fault-tolerant failsafe computer voting method of claim 20 wherein the communicating the first packet signature and the second packet signature further comprises communicating the first packet signature to first components and communicating the second packet signature to identical, separate second components.

23. The method of claim 17 further comprising communicating the first copy to a processing module.

Assignments (10)
PATENT SECURITY AGREEMENT Recorded Jun 30, 2025
From: CREELED, INC.; PENGUIN SOLUTIONS CORPORATION (DE); SMART EMBEDDED COMPUTING, INC.; SMART HIGH RELIABILITY SOLUTIONS LLC; SMART MODULAR TECHNOLOGIES, INC.; PENGUIN COMPUTING, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071755/0001 →
RELEASE OF PATENT SECURITY INTEREST RECORDED AT R/F 058983/0001 Recorded Jun 25, 2025
From: CITIZENS BANK, N.A.
To: SMART MODULAR TECHNOLOGIES, INC.; SMART EMBEDDED COMPUTING, INC.; SMART HIGH RELIABILITY SOLUTIONS LLC; CREELED, INC.
Reel/Frame 071725/0207 →
RELEASE OF SECURITY INTEREST Recorded Feb 7, 2022
From: BANK OF AMERICA, N.A., AS AGENT
To: SMART EMBEDDED COMPUTING, INC.
Reel/Frame 058913/0097 →
RELEASE OF SECURITY INTEREST AT REEL 050471 FRAME 0912 Recorded Feb 7, 2022
From: BARCLAYS BANK PLC
To: SMART EMBEDDED COMPUTING, INC.
Reel/Frame 058961/0005 →
SECURITY INTEREST Recorded Feb 7, 2022
From: SMART MODULAR TECHNOLOGIES, INC.; SMART HIGH RELIABILITY SOLUTIONS, LLC; SMART EMBEDDED COMPUTING, INC.; CREELED, INC.
To: CITIZENS BANK, N.A.
Reel/Frame 058983/0001 →
SECURITY INTEREST Recorded Dec 23, 2020
From: SMART EMBEDDED COMPUTING INC.
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 054739/0137 →
CHANGE OF NAME Recorded Jun 24, 2020
From: ARTESYN EMBEDDED COMPUTING, INC.
To: SMART EMBEDDED COMPUTING, INC.
Reel/Frame 053023/0953 →
SECURITY AGREEMENT Recorded Sep 24, 2019
From: SMART EMBEDDED COMPUTING, INC.
To: BARCLAYS BANK PLC
Reel/Frame 050471/0912 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2015
From: VAANANEN, PASI JUKKA PETTERI; CORNES, MARTIN PETER JOHN
To: ARTESYN EMBEDDED COMPUTING, INC.
Reel/Frame 036967/0811 →
CHANGE OF NAME Recorded Nov 5, 2015
From: EMERSON NETWORK POWER - EMBEDDED COMPUTING, INC.
To: ARTESYN EMBEDDED COMPUTING, INC.
Reel/Frame 037053/0938 →