Universal peripheral extender for communicatively connecting peripheral I/O devices and smart host devices
AssigneeKingston Digital, Inc.
InventorBen Wei Chen
Life of this patent
Estimating the term…
Abstract
A universal peripheral extender architecture, system, and method is disclosed that addresses the need of communicatively connecting peripheral I/O devices and the smart host devices in legacy, medical, and industrial applications. As disclosed, a universal peripheral extender includes an I/O device translation & management module that has a device-side utility, a host-side I/O device translation & management utility, and a host/device translation & management scheduler utility.
Claims11
A universal peripheral extender system, comprising:
- a universal peripheral extender, including:
- a computing device;
- an I/O device translation & management module;
- a plurality of I/O interfaces;
- an energy storing unit;
- a power management/charging unit;
- and
- a plurality of interface connections,
- wherein the I/O device translation & management module comprises:
- a device-side utility of the I/O device translation & management module;
- a host-side I/O device translation & management utility of the I/O device translation & management module;
- and
- a host/device translation & management scheduler utility;
- at least one interface channel;
- at least one smart host;
- at least one peripheral I/O device;
- at least one power source;
- and
- at least one corresponding application utility associated with at least one target I/O device, respectively;
- wherein the universal peripheral extender is communicatively coupled, via the at least one interface channel to:
- the at least one smart host, the target I/O device, and the at least one peripheral I/O device, respectively;
- wherein the at least one peripheral I/O device includes an interface connection communicatively coupled to the at least one interface channel;
- wherein the corresponding application utility associated with the target I/O device is installed in the at least one smart host to perform a function of the target I/O device,
- wherein the I/O device translation & management module including the device-side utility, that in response to execution, causes the computing device to perform operations comprising:
- enumerating the target I/O device;
- conducting a check to determine if the target I/O device is present;
- in response to the target I/O device not being present, returning the operations to the enumerating the target I/O device;
- in response to the target I/O device being present, adding the target I/O device to an endpoint list;
- issuing a RESET command to the target I/O device;
- obtaining a Descriptor from the target I/O device;
- assigning a device address to the target I/O device;
- obtaining a Descriptor table from the target I/O device;
- conducting a check to determine if the target I/O device is serviceable;
- in response to the target I/O device not being serviceable, then encountering an error and the process returns to the enumerating the target I/O device;
- in response to the target I/O device not being serviceable, then activating configurations on the target I/O device;
- configuring target I/O device attributes in target I/O device translation & management tables;
- interacting with the targeted I/O device;
- launching a host/device translation & management scheduler;
- conducting a check to determine if the application utility is to end;
- in response to the application utility ending, the application utility exits;
- in response to the application utility continuing, conducting another check to determine if the host session ends;
- in response to the host session ending, returning the operation to enumerating the target I/O device;
- and
- in response to the host session continuing, continue interacting with the target I/O device.
A universal peripheral extender system, comprising:
- a universal peripheral extender, including:
- a computing device;
- an I/O device translation & management module;
- a plurality of I/O interfaces;
- an energy storing unit;
- a power management/charging unit;
- and
- a plurality of interface connections,
- wherein the I/O device translation & management module comprises:
- a device-side utility of the I/O device translation & management module;
- a host-side I/O device translation & management utility of the I/O device translation & management module;
- and
- a host/device translation & management scheduler utility;
- at least one interface channel;
- at least one smart host;
- at least one peripheral I/O device;
- at least one power source;
- and
- at least one corresponding application utility associated with a least one target device, respectively;
- wherein the universal peripheral extender is communicatively coupled, via the at least one interface channel to:
- the at least one smart host, the target I/O device, and the at least one peripheral I/O device, respectively;
- wherein the at least one peripheral I/O device includes an interface connection communicatively coupled to the at least one interface channel;
- wherein the corresponding application utility associated with the target I/O device is installed in the at least one smart host to perform a function of the target device;
- wherein the I/O device translation & management module including the a host-side I/O device translation & management utility, that in response to execution, causes the computing device to perform further operations comprising:
- listening to the interface;
- conducting a check is to determine if the universal peripheral extender is discovered by the at least one smart host;
- in response to the universal peripheral extender not being discovered by the at least one smart host, returning the operation to waiting in a loop to the listening to the interface;
- in response to the universal peripheral extender being discovered by the at least one smart host, configuring host/device attributes in host/device translation & management tables;
- waiting for the smart host request;
- in response to receiving the smart host request, starting a host session;
- processing the smart host request;
- launching a host/device translation & management scheduler;
- conducting a check to determine if the host session ends;
- in response to the host session not ending, returning the operation to the waiting for the smart host request;
- in response to the host session ending, returning to the listening to the interface;
- and
- restarting the operations.
A universal peripheral extender system, comprising:
- a universal peripheral extender, including:
- a computing device;
- an I/O device translation & management module;
- a plurality of I/O interfaces;
- an energy storing unit;
- a power management/charging unit;
- and
- a plurality of interface connections,
- wherein the I/O device translation & management module comprises:
- a device-side utility of the I/O device translation & management module;
- a host-side I/O device translation & management utility of the I/O device translation & management module;
- and
- a host/device translation & management scheduler utility;
- at least one interface channel;
- at one smart host;
- at least one peripheral I/O device;
- at least one power source;
- and
- at least one corresponding application utility associated with at least one target I/O device, respectively;
- wherein the universal peripheral extender is communicatively coupled, via the at least one interface channel to:
- the at least one smart host, the target I/O device, and the at least one peripheral I/O device, respectively;
- wherein the at least one peripheral I/O device includes an interface connection communicatively coupled to the at least one interface channel;
- wherein the corresponding application utility associated with the target I/O device is installed in the at least one smart host to perform a function of the target I/O device;
- wherein the I/O device translation & management module including the host/device translation & management scheduler utility, that in response to execution, causes the computing device to perform further operations comprising:
- looking up the host/device translation & management tables;
- conducting a check to determine if the at least one smart host and the target I/O device are compatible;
- in response to the at least one smart host and the target I/O device not being compatible, ending the host session;
- in response to the at least one smart host and the target I/O device being compatible, processing and scheduling host-side request from the at least one smart host;
- translating the smart host request for the target I/O device;
- passing the request to the target I/O device on the device-side;
- waiting for the target I/O device response and translating the device response for the at least one smart host;
- passing the response back to the at least one smart host on the host-side;
- conducting a check to determine if there is a command to end the host session;
- in response to the host session not ending, returning to processing and scheduling the host-side request;
- in response to a command to end the host session, ending the host session and exiting.
A universal peripheral extender, comprising:
- an I/O device translation & management module including:
- a device-side utility;
- a host-side I/O device translation & management utility;
- and
- a host/device translation & management scheduler utility;
- wherein executing the device-side utility of the I/O device translation & management module causes a computing device of the universal peripheral extender to perform operations comprising:
- enumerating the target I/O device;
- conducting a check to determine if the target I/O device is present;
- in response to the target I/O device not being present, returning the operations to the enumerating the target I/O device;
- in response to the target I/O device being present, adding the target I/O device to an endpoint list;
- issuing a RESET command to the target I/O device;
- obtaining a Descriptor from the target I/O device;
- assigning a device address to the target I/O device;
- obtaining a Descriptor table from the target I/O device;
- conducting a check to determine if the target I/O device is serviceable;
- in response to the target I/O device not being serviceable, then encountering an error and the process returns to the enumerating the target I/O device;
- in response to the target I/O device not being serviceable, then activating configurations on the target I/O device;
- configuring target I/O device attributes in target I/O device translation & management tables;
- interacting with the targeted I/O device;
- launching a host/device translation & management scheduler;
- conducting a check to determine if the application utility is to end;
- in response to the application utility ending, the application utility exits;
- in response to the application utility continuing, conducting another check to determine if the host session ends;
- in response to the host session ending, returning the operation to enumerating the target I/O device;
- and
- in response to the host session continuing, continue interacting with the target I/O device.
A universal peripheral extender, comprising:
- an I/O device translation & management module including:
- a device-side utility;
- a host-side I/O device translation & management utility;
- and
- a host/device translation & management scheduler utility;
- wherein executing the host-side I/O device translation & management utility of the I/O device translation & management module causes the computing device of the universal peripheral extender to perform operations comprising:
- listening to an interface;
- conducting a check is to determine if the universal peripheral extender is discovered by a smart host;
- in response to the universal peripheral extender not being discovered by the smart host, returning the operation to waiting in a loop to the listening to the interface;
- in response to the universal peripheral extender being discovered by the smart host, configuring host/device attributes in host/device translation & management tables;
- waiting for a smart host request;
- in response to receiving the smart host request, starting a host session;
- processing the smart host request;
- launching a host/device translation & management scheduler;
- conducting a check to determine if the host session ends;
- in response to the host session not ending, returning the operation to the waiting for the smart host request;
- in response to the host session ending, returning to the listening to the interface;
- and
- restarting the operations.
A universal peripheral extender, comprising:
- an I/O device translation & management module including:
- a device-side utility;
- a host-side I/O device translation & management utility;
- and
- a host/device translation & management scheduler utility;
- wherein executing the host/device translation & management scheduler utility of the I/O device translation & management module causes the computing device of the universal peripheral extender to perform further operations comprising:
- looking up host/device translation & management tables;
- conducting a check to determine if a smart host and a target I/O device are compatible;
- in response to the smart host and the target I/O device not being compatible, ending the host session;
- in response to the smart host and the target I/O device being compatible, processing and scheduling host-side request from a smart host;
- translating a smart host request for the target I/O device;
- passing the smart host request to the target I/O device on the device-side;
- waiting for the target I/O device response and translating the device response for the smart host;
- passing the target I/O device response back to the smart host on the host-side;
- conducting a check to determine if there is a command to end the host session;
- in response to the host session not ending, returning to processing and scheduling the host-side request;
- in response to a command to end the host session, ending the host session and exiting.
A non-transitory computer-readable medium storing executable instructions to communicatively connect a target I/O device and a smart host by an I/O device translation & management module of a universal peripheral extender so that, in response to execution, cause a computing device of the universal peripheral extender to execute a device-side utility of the I/O device translation & management module to perform operations comprising:
- enumerating the target I/O device;
- conducting a check to determine if the target I/O device is present;
- in response to the target I/O device not being present, returning the operations to the enumerating the target I/O device;
- in response to the target I/O device being present, adding the target I/O device to an endpoint list;
- issuing a RESET command to the target I/O device;
- obtaining a Descriptor from the target I/O device;
- assigning a device address to the target I/O device;
- obtaining a Descriptor table from the target I/O device;
- conducting a check to determine if the target I/O device is serviceable;
- in response to the target I/O device not being serviceable, then encountering an error and the process returns to the enumerating the target I/O device;
- in response to the target I/O device not being serviceable, then activating configurations on the target I/O device;
- configuring target I/O device attributes in target I/O device translation & management tables;
- interacting with the targeted I/O device;
- launching a host/device translation & management scheduler;
- conducting a check to determine if the application utility is to end;
- in response to the application utility ending, the application utility exits;
- in response to the application utility continuing, conducting another check to determine if the host session ends;
- in response to the host session ending, returning the operation to enumerating the target I/O device;
- and
- in response to the host session continuing, continue interacting with the target I/O device.
Dependencies are inferred from the claim text.