Communicating non-isochronous data over an isochronous channel
AssigneeCirrus Logic, Inc.
InventorsBradley A. Lambert, Gabriel Vogel, Yuchao Chen
Life of this patent
Estimating the term…
Abstract
Isochronous channels may be used for transporting non-isochronous data between components in an electronic device, such as when non-isochronous data is aggregated from multiple non-isochronous data streams to achieve a high peak-to-average bandwidth. The aggregated non-isochronous data sources may include data streams from general-purpose communications interfaces for interconnecting components or sub-systems of components within an electronic device. For example, I2C networks for control and programming of components may be connected to other I2C networks through an isochronous channel, such as a differential pair of Soundwire SWI3S wires.
Claims22
A method comprising:
- receiving a first data stream from a first component of a mobile device, the first data stream comprising first non-isochronous data having a first variable bandwidth, the first non-isochronous data having a second component of the mobile device as a destination;
- packaging the first non-isochronous data of the first data stream into first packaged data for transport over an isochronous channel;
- receiving a second data stream from a third component of the mobile device, the second data stream comprising second non-isochronous data having a second variable bandwidth, the second non-isochronous data having a fourth component as a destination;
- packaging the second non-isochronous data of the second data stream into second packaged data for transport over the isochronous channel;
- and
- transmitting the first packaged data and the second packaged data at a constant bandwidth by inserting null symbols in the first packaged data and the second packaged data over the isochronous channel, wherein the first packaged data and the second packaged data are selected for transmission over the isochronous channel based on a priority of the first component and the second component, respectively.
An apparatus, comprising:
- a memory;
- a bridge chip coupled to the memory, the bridge chip comprising logic circuitry configured to perform steps comprising:
- receiving a first data stream from a first component of a mobile device, the first data stream comprising first non-isochronous data having a first variable bandwidth, the first non-isochronous data having a second component of the mobile device as a destination;
- packaging the first non-isochronous data of the first data stream into first packaged data for transport over an isochronous channel;
- receiving a second data stream from a third component of the mobile device, the second data stream comprising second non-isochronous data having a second variable bandwidth, the second non-isochronous data having a fourth component as a destination;
- packaging the second non-isochronous data of the second data stream into second packaged data for transport over the isochronous channel;
- and
- transmitting the first packaged data and the second packaged data at a constant bandwidth by inserting null symbols in the first packaged data and the second packaged data over the isochronous channel, wherein the first packaged data and the second packaged data are selected for transmission over the isochronous channel based on a priority of the first component and the second component, respectively.
A mobile device, comprising:
- a printed circuit board comprising an isochronous channel;
- a first communications bridge chip on the printed circuit board configured to communicate on the isochronous channel;
- a first component on the printed circuit board local to the first communications bridge and coupled to the first communications bridge;
- a third component on the printed circuit board local to the first communications bridge and coupled to the first communications bridge;
- a second communications bridge chip on the printed circuit board configured to communicate with the first communications bridge through the isochronous channel;
- a second component on the printed circuit board remote from the first communications bridge and coupled to the second communications bridge;
- a fourth component on the printed circuit board remote from the first communications bridge and coupled to the second communications bridge,
- wherein the first communications bridge is configured to perform steps comprising:
- receiving a first data stream from the first component, the first data stream comprising first non-isochronous data having a first variable bandwidth, the first non-isochronous data having the second component of the mobile device as a destination;
- packaging the first non-isochronous data of the first data stream into first packaged data for transport over the isochronous channel;
- receiving a second data stream from the third component of the mobile device, the second data stream comprising second non-isochronous data having a second variable bandwidth, the second non-isochronous data having the fourth component as a destination;
- packaging the second non-isochronous data of the second data stream into second packaged data for transport over the isochronous channel;
- and
- transmitting the first packaged data and the second packaged data at a constant bandwidth by inserting null symbols in the first packaged data and the second packaged data, the transmitting being over the isochronous channel, wherein the first packaged data and the second packaged data are selected for transmission over the isochronous channel based on a priority of the first component and the second component, respectively.
Dependencies are inferred from the claim text.