IP Library Granted Patent US 9,699,100
Granted Patent B2
US 9,699,100 · App. 14/996,748 · Granted Jul 4, 2017

Lossless time based data acquisition and control in a distributed system

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,699,100
App. No.
14/996,748
Granted
Jul 4, 2017
Kind
B2
Abstract

Systems and methods for mapping an iterative time-based data acquisition (DAQ) operation to an isochronous data transfer channel of a network. A time-sensitive buffer (TSB) associated with the isochronous data transfer channel of the network may be configured. A data rate clock may and a local buffer may be configured. A functional unit may be configured to initiate continuous performance of the iterative time-based DAQ operation, transfer data to the local buffer, initiate transfer of the data between the local buffer and the TSB at a configured start time, and repeat the transferring and initiating transfer in an iterative manner, thereby transferring data between the local buffer and the TSB. The TSB may be configured to communicate data over the isochronous data transfer channel of the network, thereby mapping the iterative time-based DAQ operation to the isochronous data transfer channel of the network.

Claims (61)

1. A method for configuring the mapping of a time-based data acquisition to an isochronous data transfer channel of a network, the method comprising:

configuring a local buffer for receiving data from the time-based data acquisition, comprising configuring a size of the local buffer, wherein the size of the local buffer is based on a transfer frequency of a first buffer and a data rate of the time-based data acquisition;

configuring buffer size of the first buffer for receiving data from the local buffer, wherein the first buffer is associated with the isochronous data transfer channel of the network; and

configuring a functional unit to:

initiate continuous performance of the time-based data acquisition, wherein the time-based data acquisition is performed according to a first clock, wherein the data from the continuous performance of the time-based data acquisition is stored in the local buffer; and

initiate continuous transfer of the data from the local buffer to the first buffer, wherein the transfer from the local buffer to the first buffer is performed according to the first clock.

2. The method of claim 1 ,

wherein the isochronous data transfer channel has an associated bandwidth, wherein configuring the first buffer reserves the associated bandwidth.

3. The method of claim 1 , further comprising:

configuring the transfer frequency of the first buffer.

4. The method of claim 1 , further comprising:

configuring a start time for continuous transfer of data from the local buffer to the first buffer, wherein the start time is based on the buffer size of the first buffer, a data rate of the time-based data acquisition, and a start time of the time-based data acquisition.

5. The method of claim 4 ,

wherein the start time of the time-based data acquisition is in phase with a global clock of the network.

6. The method of claim 1 ,

wherein configuring the functional unit to initiate continuous transfer of the data from the local buffer to the first buffer comprises configuring the functional unit to perform a data integrity process during the continuous transfer, thereby preventing data loss.

7. The method of claim 6 ,

wherein configuring the functional unit to perform the data integrity process comprises configuring the functional unit to embed forward error correction code.

8. A system for mapping a time-based data acquisition to an isochronous data transfer channel of a network, the system comprising:

a functional unit;

a first clock, coupled to the functional unit;

a local buffer, coupled to the functional unit, and configured to receive data from the time-based data acquisition, wherein a size of the local buffer is based on a transfer frequency of a first buffer and a data rate of the time-based data acquisition; and

the first buffer, coupled to the functional unit and the local buffer, and configured to receive data from the local buffer, wherein the first buffer is associated with the isochronous data transfer channel;

wherein the functional unit is configured to:

initiate continuous performance of the time-based data acquisition, wherein the time-based data acquisition is performed according to the first clock, wherein the data from the continuous performance of the time-based data acquisition is stored in the local buffer; and

initiate continuous transfer of the data from the local buffer to the first buffer, wherein the transfer from the local buffer to the first buffer is performed according to the first clock.

9. The system of claim 8 ,

wherein the isochronous data transfer channel has an associated bandwidth, wherein configuring the first buffer reserves the associated bandwidth.

10. The system of claim 8 , further comprising:

wherein a start time for continuous transfer of data from the local buffer to the first buffer is based on a buffer size of the first buffer, a data rate of the time-based data acquisition, and a start time of the time-based data acquisition;

wherein to initiate continuous performance of the time-based data acquisition, the functional unit is further configured to initiate continuous performance of the time-based data acquisition based on the start time of the time-based data acquisition; and

wherein to initiate continuous transfer of the data from the local buffer to the first buffer, the functional unit is further configured to initiate continuous transfer of the data from the local buffer to the first buffer based on the start time for continuous transfer.

11. The system of claim 10 ,

wherein the start time of the time-based data acquisition is in phase with a global clock of the network.

12. The system of claim 8 ,

wherein to initiate continuous transfer of the data from the local buffer to the first buffer, the functional unit is further configured to perform a data integrity process during the continuous transfer, thereby preventing data loss.

13. The system of claim 12 ,

wherein to perform the data integrity process, the functional unit is further configured to embed forward error correction code.

14. A non-transitory computer readable memory medium storing program instructions executable by a processor to:

configure a local buffer for receiving data from a time-based data acquisition;

configure a first buffer for receiving data from the local buffer, wherein the first buffer is coupled to an isochronous data transfer channel of a network;

configure a size of the local buffer, wherein the size of the local buffer is based on a transfer frequency of the first buffer and a data rate of the time-based data acquisition; and

configure a functional unit to:

initiate continuous performance of the time-based data acquisition according to a first clock, wherein data from the continuous performance of the time-based data acquisition is stored in the local buffer; and

initiate continuous transfer of the data from the local buffer to the first buffer according to the first clock; and

provide the data from the first buffer to the isochronous data channel isochronously.

15. The non-transitory computer readable memory medium of claim 14 ,

wherein the isochronous data transfer channel has an associated bandwidth, wherein configuring the first buffer reserves the associated bandwidth.

16. The non-transitory computer readable memory medium of claim 14 ,

wherein the instructions are further executable by the processor to:

configure the transfer frequency of the first buffer.

17. The non-transitory computer readable memory medium of claim 14 ,

wherein the instructions are further executable by the processor to:

configure a start time for continuous transfer of data from the local buffer to the first buffer, wherein the start time is based on a buffer size of the first buffer, a data rate of the time-based data acquisition, and a start time of the time-based data acquisition.

18. The non-transitory computer readable memory medium of claim 17 ,

wherein the start time of the time-based data acquisition is in phase with a global clock of the network.

19. The non-transitory computer readable memory medium of claim 14 ,

wherein to configure the functional unit to initiate continuous transfer of the data from the local buffer to the first buffer, the instructions are further executable by the processor to:

configure the functional unit to perform a data integrity process during the continuous transfer, thereby preventing data loss.

20. The non-transitory computer readable memory medium of claim 19 ,

wherein to configured to the functional unit to perform the data integrity process, the instructions are further executable by the processor to configure the functional unit to embed forward error correction code.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2016
From: CHANDHOKE, SUNDEEP; ODOM, BRIAN KEITH
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 037501/0343 →