IP Library Granted Patent US 9,799,302
Granted Patent B2
US 9,799,302 · App. 14/927,336 · Granted Oct 24, 2017

Systems and methods for transmitting video, network, and USB signals over extension media

Inventors: Sukhdeep Singh Hundal (Surrey, CA); Terence Carl Sosniak (Aldergrove, CA); David Patrick Frey (Burnaby, CA)
Assignee: Icron Technologies Corporation
G09G5/006G06F13/385G06F13/4081G06F13/4247G09G2370/10G09G2370/12G09G2370/14
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,799,302
App. No.
14/927,336
Granted
Oct 24, 2017
Kind
B2
Abstract

In some embodiments, systems, devices, and methods are provided that allow a host device to communicate video information, network information, and USB information over USB via a USB host controller. The video information and the network information are encapsulated within USB and communicated by the USB host controller. In some embodiments, the USB information communicated by the USB host controller is further communicated over a non-USB extension medium by an upstream facing port device and one or more downstream facing port devices.

Claims (55)

1. A system for communication of at least USB information and video information via an extension medium, the system comprising:

a host computing device that includes:

a graphics processing unit (GPU);

a network interface controller (NIC); and

a USB host controller;

an upstream facing port device (UFP device) configured to be coupled to the host computing device via USB, wherein the UFP device includes:

a network connection engine configured to receive encapsulated network data, extract network data from the encapsulated network data, and transmit the network data via a network; and

a downstream facing port device (DFP device) configured to be coupled to the UFP device via an extension medium, wherein the DFP device includes:

a video device emulation engine configured to receive USB information and extract video information encapsulated therein; and

a video source emulation engine configured to receive the extracted video information and to transmit an output video signal to a video sink;

wherein the USB host controller is configured to:

receive video data directly from a frame buffer of the GPU, encapsulate the video data in USB for transmission to the DFP device via the UFP device and the extension medium, and address the video data encapsulated in USB to the video device emulation engine using a first route string; and

receive network data directly from a buffer of the NIC, encapsulate the network data in USB for transmission to the UFP device, and address the network data encapsulated in USB to the network connection engine using a second route string.

2. The system of claim 1 , wherein a port of the video device emulation engine in the first route string and a port of the network connection engine in the second route string are at the same hub level.

3. The system of claim 1 , wherein the output video signal is selected from the group consisting of a DisplayPort signal, an HDMI signal, a VGA signal, and a DVI signal.

4. An upstream facing port device (UFP device), comprising:

a USB upstream facing port;

a USB function;

a network interface; and

a repeater/forwarder engine configured to:

receive a USB packet via the USB upstream facing port;

in response to determining that the USB packet includes a route string that indicates that the USB packet is intended for the USB function, provide the USB packet to the USB function; and

in response to determining that the USB packet includes a route string that indicates that the USB packet is intended for a remote USB function accessible via a downstream facing port device (DFP device), transmit the USB packet to the DFP device via the network interface;

wherein the route string that indicates that the USB packet is intended for the USB function is a first route string, wherein the route string that indicates that the USB packet is intended for a remote USB function accessible via a DFP device is a second route string, and wherein a port of the USB function indicated by the first route string and a port of the remote USB function indicated by the second route string are at the same hub level.

5. The UFP device of claim 4 , wherein the USB function includes a network connection engine configured to:

receive the USB packet from the repeater/forwarder engine;

extract a network packet from the USB packet; and

transmit the network packet via the network interface.

6. The UFP device of claim 5 , wherein the network connection engine is further configured to:

receive a network packet from the network interface;

encapsulate the network packet in a second USB packet having a route string that indicates that the second USB packet is intended for a host; and

provide the second USB packet to the repeater/forwarder engine.

7. The UFP device of claim 4 , wherein transmitting the USB packet to the DFP device via the network interface comprises determining a network address of the DFP device based on the route string.

8. The UFP device of claim 4 , wherein the remote USB function is a video device emulation engine.

9. The UFP device of claim 4 , wherein the remote USB function is a USB hub or a USB device.

10. A method, comprising:

receiving, by a UFP device from a host, a USB packet via a USB upstream facing port;

determining, by the UFP device, a destination for information carried by the USB packet based on a route string in the USB packet;

providing, by the UFP device, the USB packet to a local USB function in response to determining that the route string is a first route string associated with the local USB function; and

providing, by the UFP device, the USB packet to a downstream facing port device (DFP device) via a network interface in response to determining that the route string is a second route string associated with a remote USB function provided by the DFP device;

wherein a port of the local USB function in the first route string and a port of the remote USB function in the second route string are at the same hub level.

11. The method of claim 10 , further comprising:

receiving, by the local USB function, the USB packet;

extracting, by the local USB function, a network packet from the USB packet; and

transmitting, by the local USB function, the network packet via the network interface.

12. The method of claim 11 , further comprising:

receiving, by the UFP device via the network interface, an incoming network packet;

determining, by the UFP device, whether the incoming network packet includes network data or USB extension data;

in response to determining that the incoming network packet includes network data, providing the incoming network packet to the local USB function; and

in response to determining that the incoming network packet includes USB extension data, providing the incoming network packet to a USB extension engine.

13. The method of claim 12 , wherein the determination of whether the incoming network packet includes network data or USB data is based on a destination port in the incoming network packet.

14. The method of claim 12 , wherein the determination of whether the incoming network packet includes network data or USB data is based on a source device address in the incoming network packet.

15. The method of claim 10 , wherein providing the USB packet to a downstream facing port device (DFP device) via a network interface further comprises:

providing the USB packet to a first DFP device via the network interface in response to determining that the second route string is associated with a first remote USB function provided by the first DFP device; and

providing the USB packet to a second DFP device via the network interface in response to determining that the second route string is associated with a second remote USB function provided by the second DFP device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2026
From: ICRON TECHNOLOGIES CORPORATION
To: SYNCBRIDGE TECHNOLOGIES CORPORATION
Reel/Frame 075756/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2016
From: HUNDAL, SUKHDEEP SINGH; SOSNIAK, TERENCE CARL; FREY, DAVID PATRICK
To: ICRON TECHNOLOGIES CORPORATION
Reel/Frame 037414/0254 →
Continuity (2)
Provisional Application 62072328 · Oct 29, 2014
Related Publication 20160125838A1 · May 5, 2016