IP Library Granted Patent US 9,213,616
Granted Patent B2
US 9,213,616 · App. 13/749,641 · Granted Dec 15, 2015

Automated test platform utilizing status register polling with temporal ID

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,213,616
App. No.
13/749,641
Granted
Dec 15, 2015
Kind
B2
Abstract

A segmented subsystem, for use within an automated test platform, includes a first subsystem segment configured to execute one or more instructions within the first subsystem segment. A second subsystem segment is configured to execute one or more instructions within the second subsystem segment. The first subsystem segment includes: a first functionality, a second functionality, and a status polling engine. The status polling engine is configured to: determine a first status for the first functionality and a second status for the second functionality, and generate a consolidated status indicator for the first subsystem segment based, at least in part, upon the first status for the first functionality and the second status for the second functionality.

Claims (54)

1. A segmented subsystem, for use within an automated test platform, comprising:

a first subsystem segment configured to execute one or more instructions within the first subsystem segment; and

a second subsystem segment configured to execute one or more instructions within the second subsystem segment;

wherein the first subsystem segment includes:

a first functionality,

a second functionality, wherein the first and second functionality are software functionality, and

a status polling engine,

wherein the status polling engine is configured to:

determine a first status for the first functionality read from a first status register within the first subsystem segment and a second status for the second functionality read from a second status register within the first

subsystem segment,

associate a first temporal ID with the first status for the first functionality and associate a second temporal ID with the second status for the functionality, and

generate and store a consolidated status indicator for the first subsystem segment in a third register within the first subsystem segment based, at least in part, upon the first temporal ID with the first status for the first functionality and the second temporal ID with the second status for the second functionality, and

wherein the first subsystem segment further includes a status mirroring engine configured to provide the consolidated status indicator to a remote memory system.

2. The segmented subsystem of claim 1 wherein the first functionality includes the first status register associated with the first functionality and the status polling engine is further configured to read the first status register to determine the first status for the first functionality.

3. The segmented subsystem of claim 1 wherein the second functionality includes the second status register associated with the second functionality and the status polling engine is further configured to read the second status register to determine the second status for the second functionality.

4. The segmented subsystem of claim 1 wherein the remote memory system is accessible by one or more CPU subsystems included within the automated test platform.

5. The segmented subsystem of claim 1 wherein the first subsystem segment includes a first DMA engine configured to allow the first subsystem segment to read data from and/or write data to the remote memory system.

6. The segmented subsystem of claim 5 wherein providing the consolidated status indicator to a remote memory system includes writing the consolidated status indicator to the remote memory system using the first DMA engine.

7. The segmented subsystem of claim 1 further comprising at least a third subsystem segment configured to execute one or more instructions within the third subsystem segment.

8. The segmented subsystem of claim 1 wherein the segmented subsystem is a segmented instrument subsystem.

9. The segmented subsystem of claim 8 wherein the segmented instrument subsystem includes instrument hardware configured to interface with one or more devices under test.

10. The segmented subsystem of claim 1 wherein the segmented subsystem is a segmented digital signal processing subsystem.

11. The segmented subsystem of claim 1 wherein the segmented subsystem includes a PCIe interface configured to couple the segmented subsystem with a PCIe-based event fabric.

12. A segmented subsystem, for use within an automated test platform, comprising:

a first subsystem segment configured to execute one or more instructions within the first subsystem segment; and

a second subsystem segment configured to execute one or more instructions within the second subsystem segment;

wherein the first subsystem segment includes:

a first functionality including a first status register associated with the first functionality,

a second functionality including a second status register associated with the second functionality, wherein the first and second functionality are software functionality, and

a status polling engine,

wherein the status polling engine is configured to:

read the first status register associated with the first functionality to determine a first status for the first functionality,

read the second status register associated with the second functionality to determine a second status for the second functionality,

associate a first temporal ID with the first status for the first functionality and associate a second temporal ID with the second status for the second functionality, and

generate and store a consolidated status indicator for the first subsystem segment in a third register within the first subsystem segment based, at least in part, upon the first temporal ID with the first status for the first functionality and the second temporal ID with the second status for the second functionality, and

wherein the first subsystem segment further includes a status mirroring engine configured to provide the consolidated status indicator to a remote memory system.

13. The segmented subsystem of claim 12 wherein providing the consolidated status indicator to a remote memory system includes writing the consolidated status indicator to the remote memory system using a first DMA engine configured to allow the first subsystem segment to read data from and/or write data to the remote memory system.

14. A segmented subsystem, for use within an automated test platform, comprising:

a first subsystem segment configured to execute one or more instructions within the first subsystem segment; and

a second subsystem segment configured to execute one or more instructions within the second subsystem segment;

wherein the first subsystem segment includes:

a first functionality,

a second functionality, wherein the first and second functionality are software functionality,

a status polling engine, and

a status mirroring engine,

wherein the status polling engine is configured to:

determine a first status for the first functionality read from a first status register within the first subsystem segment and a second status for the second functionality read from a second status register within the first subsystem segment,

associate a first temporal ID with the first status for the first functionality,

associate a second temporal ID with the second status for the second functionality, and

generate and store a consolidated status indicator for the first subsystem segment in a third register within the first subsystem segment based, at least in part, upon the first temporal ID with the first status for the first functionality and the second temporal ID with the second status for the second functionality, and

wherein the status mirroring engine is configured to:

provide the consolidated status indicator to a remote memory system.

15. The segmented subsystem of claim 14 wherein the first functionality includes the first status register associated with the first functionality and the status polling engine is further configured to read the first status register to determine the first status for the first functionality.

16. The segmented subsystem of claim 14 wherein the second functionality includes the second status register associated with the second functionality and the status polling engine is further configured to read the second status register to determine the second status for the second functionality.

Assignments (9)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS, RECORDED AT REEL 047185, FRAME 0624 Recorded Mar 7, 2024
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS AGENT
To: XCERRA CORPORATION
Reel/Frame 066762/0811 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT STATEMENT THAT THIS DOCUMENT SERVES AS AN OATH/DECLARATION PREVIOUSLY RECORDED ON REEL 047185 FRAME 0628. ASSIGNOR(S) HEREBY CONFIRMS THE PATENT SECURITY AGREEMENT. Recorded Nov 28, 2018
From: XCERRA CORPORATION
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 047675/0354 →
PATENT SECURITY AGREEMENT Recorded Oct 2, 2018
From: XCERRA CORPORATION
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0624 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT PATENT NUMBER 7261561 AND REPLACE WITH PATENT NUMBER 7231561 PREVIOUSLY RECORDED ON REEL 034660 FRAME 0188. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT. Recorded Feb 11, 2016
From: XCERRA CORPORATION; EVERETT CHARLES TECHNOLOGIES LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 037824/0372 →
CHANGE OF NAME Recorded Aug 26, 2015
From: LTX-CREDENCE CORPORATION
To: XCERRA CORPORATION
Reel/Frame 036473/0270 →
SECURITY AGREEMENT Recorded Dec 18, 2014
From: XCERRA CORPORATION; EVERETT CHARLES TECHNOLOGIES LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 034660/0188 →
RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Dec 18, 2014
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: XCERRA CORPORATION; EVERETT CHARLES TECHNOLOGIES LLC
Reel/Frame 034660/0394 →
CHANGE OF NAME Recorded May 27, 2014
From: LTX-CREDENCE CORPORATION
To: XCERRA CORPORATION
Reel/Frame 033032/0768 →
SECURITY AGREEMENT Recorded Jan 17, 2014
From: LTX-CREDENCE CORPORATION; EVERETT CHARLES TECHNOLOGIES LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 032086/0476 →