IP Library › Granted Patent US 11,792,446
Granted Patent B2
US 11,792,446 · App. 17/091,865 · Granted Oct 17, 2023

Methods and apparatus to reduce audio streaming latency between audio and gigabit ethernet subsystems

Inventors: Satheesh Chellappan (Folsom, CA); Kishore Kasichainula (Phoenix, AZ); Frank Baehren (Pforzheim, DE)
Assignee: Intel Corporation
H04N21/233G06F9/30003H04L65/75H04L65/80
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 11,792,446
App. No.
17/091,865
Granted
Oct 17, 2023
Kind
B2
Abstract

Example methods, apparatus, systems and articles of manufacture to reduce audio streaming latency between audio and Gigabit Ethernet subsystems are disclosed herein. An example integrated circuit disclosed herein to process an audio stream associated with an endpoint device on a network includes an Ethernet subsystem to access the network and an audio subsystem to process audio data associated with the audio stream. The disclosed example integrated circuit also includes a direct hardware path between the Ethernet subsystem and the audio subsystem to exchange audio data between the Ethernet subsystem and the audio subsystem without the audio data being processed by a first software driver that is to provide access to the Ethernet subsystem or a second software driver that is to provide access to the audio subsystem.

Claims (28)

1. An integrated circuit to process a data stream associated with an endpoint device on a network, the integrated circuit comprising:

a precision time protocol timer source including a first precision time protocol timer and a second precision time protocol timer;

a first subsystem configured to access the network, the first subsystem associated with a first driver to be executed by a host to provide access to the first subsystem, the first subsystem to maintain the first precision time protocol timer;

a second subsystem configured to process data associated with the data stream, the second subsystem associated with a second driver to be executed by the host to provide access to the second subsystem, the second subsystem to maintain the second precision time protocol timer, the second precision time protocol timer to be synchronized with the first precision time protocol timer, the second subsystem to communicate with the endpoint device to synchronize the data stream with the precision time protocol timer source of the integrated circuit; and

circuitry configured to offload the data stream from a first data path to a second data path to exchange the data associated with the data stream between the first subsystem and the second subsystem, the first data path to include the first driver and the second driver, the second data path to bypass the first driver and the second driver.

2. The integrated circuit of claim 1 , wherein the data stream is a first data stream, the second subsystem is also to process a second data stream associated with the endpoint device, and the second subsystem is to communicate with the endpoint device to synchronize the second data stream with the precision time protocol timer source of the integrated circuit.

3. The integrated circuit of claim 1 , further including a clock to drive the first subsystem, the second subsystem and the circuitry, wherein the first precision time protocol timer is based on an external time reference, and the second precision time protocol timer is to synchronize with the first precision time protocol timer based on a first value of the clock and a second value of the first precision time protocol timer.

4. The integrated circuit of claim 3 , wherein the second precision time protocol timer is based on a second time reference different from the clock of the integrated circuit and the external time reference associated with the first precision time protocol timer.

5. The integrated circuit of claim 1 , wherein the circuitry includes a shared memory to be accessed by the first subsystem and the second subsystem, the shared memory to store a circular ring of work descriptors and a payload section including payload buffers, respective ones of the work descriptors to point to respective ones of the payload buffers, the payload buffers to store the data associated with the data stream, ones of the work descriptors to include a respective ownership bit, and the first subsystem is to set the respective ownership bit of a first one of the work descriptors to indicate that first data stored in a respective first one of the payload buffers is to be processed by the second subsystem.

6. The integrated circuit of claim 1 , wherein the data stream is an audio data stream to convey audio data, the first subsystem corresponds to an Ethernet subsystem to access the network based on an Ethernet protocol, and the second subsystem corresponds to an audio subsystem that is to process the audio data of the audio data stream.

7. An apparatus to process a data stream associated with an endpoint device on a network, the apparatus comprising:

a precision time protocol timer source including a first precision time protocol timer and a second precision time protocol timer; first means for accessing the network, the first means associated with a first driver to be executed by a host to provide access to the first means, the first means to maintain the first precision time protocol timer;

second means for processing data associated with the data stream, the second means associated with a second driver to be executed by the host to provide access to the second means, the second means to maintain the second precision time protocol timer, the second precision time protocol timer to be synchronized with the first precision time protocol timer, the second means to communicate with the endpoint device to synchronize the data stream with the precision time protocol timer source; and

third means for offloading the data stream from a first data path to a second data path to exchange the data associated with the data stream between the first means and the second means, the first data path to include the first driver and the second driver, the second data path to bypass the first driver and the second driver.

8. The apparatus of claim 7 , wherein the data stream is a first data stream, the second means is also to process a second data stream associated with the endpoint device, and the second means is to communicate with the endpoint device to synchronize the second data stream with the precision time protocol timer source.

9. The apparatus of claim 7 , further including a clock to drive the first means, the second means and the third means, wherein the first precision time protocol timer is based on an external time reference, and the second precision time protocol timer is to synchronize with the first precision time protocol timer based on a first value of the clock and a second value of the first precision time protocol timer.

10. The apparatus of claim 9 , wherein the second precision time protocol timer is based on a second time reference different from the clock of the apparatus and the external time reference associated with the first precision time protocol timer.

11. The apparatus of claim 7 , wherein the third means includes a shared memory to be accessed by the first means and the second means, the shared memory to store a circular ring of work descriptors and a payload section including payload buffers, respective ones of the work descriptors to point to respective ones of the payload buffers, the payload buffers to store the data associated with the data stream, ones of the work descriptors to include a respective ownership bit, and the first means is to set the respective ownership bit of a first one of the work descriptors to indicate that first data stored in a respective first one of the payload buffers is to be processed by the second means.

12. A system comprising: a peripheral device; an integrated circuit including:

a precision time protocol timer source including a first precision time protocol timer and a second precision time protocol timer;

a first subsystem configured to access a network, the first subsystem associated with a first driver to be executed to provide access to the first subsystem, the first subsystem to maintain the first precision time protocol timer;

a second subsystem configured to process data included in a data stream associated with the peripheral device, the second subsystem associated with a second driver to be executed to provide access to the second subsystem, the second subsystem to maintain the second precision time protocol timer, the second precision time protocol timer to be synchronized with the first precision time protocol timer, the second subsystem to communicate with the peripheral device to synchronize the data stream with the precision time protocol timer source of the integrated circuit; and

circuitry configured to offload the data stream from a first data path to a second data path to exchange the data between the first subsystem and the second subsystem, the first data path to include the first driver and the second driver, the second data path to bypass the first driver and the second driver; and a host device configured to: execute the first driver to access the first subsystem; and execute the second driver to access the second subsystem.

13. The system of claim 12 , wherein the data stream is a first data stream, the second subsystem is also to process a second data stream associated with the peripheral device, and the second subsystem is to communicate with the peripheral device to synchronize the second data stream with the precision time protocol timer source of the integrated circuit.

14. The system of claim 12 , further including a clock to drive the first subsystem, the second subsystem and the circuitry, wherein the first precision time protocol timer is based on an external time reference, and the second precision time protocol timer is to synchronize with the first precision time protocol timer based on a first value of the clock and a second value of the first precision time protocol timer.

15. The system of claim 14 , wherein the second precision time protocol timer is based on a second time reference different from the clock of the integrated circuit and the external time reference associated with the first precision time protocol timer.

16. The system of claim 12 , wherein the circuitry includes a shared memory to be accessed by the first subsystem and the second subsystem, the shared memory to store a circular ring of work descriptors and a payload section including payload buffers, respective ones of the work descriptors to point to respective ones of the payload buffers, the payload buffers to store the data associated with the data stream, ones of the work descriptors to include a respective ownership bit, and the first subsystem is to set the respective ownership bit of a first one of the work descriptors to indicate that first data stored in a respective first one of the payload buffers is to be processed by the second subsystem.

17. The system of claim 12 , wherein the data stream is an audio data stream to convey audio data, the first subsystem corresponds to an Ethernet subsystem to access the network based on an Ethernet protocol, and the second subsystem corresponds to an audio subsystem that is to process the audio data of the audio data stream.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2021
From: CHELLAPPAN, SATHEESH; KASICHAINULA, KISHORE; BAEHREN, FRANK
To: INTEL CORPORATION
Reel/Frame 057798/0666 →
Continuity (2)
Continuation 16235934 · Dec 28, 2018
Related Publication 20210266610A1 · Aug 26, 2021