1. A USB class aware protocol module operating with an xHCI controller to transfer data to a device attached to a Superspeed Universal Serial Bus 3.0 (USB), the protocol module comprising: a set of registers and buffers including one or more registers and one or more buffers, the set modeling an interface for data transfer over a register oriented bus to the device, the set of registers and buffers receiving commands associated with data transfers to the device and the data for transfer to the device; one or more processors configured to process the data contained in the set of registers and buffers in accordance with the commands contained in the set of registers and buffers and a USB class protocol corresponding to the device and produce processed data, and optimize the processed data for transfer over the USB to the attached device by the xHCI controller; and transfer rings for directing the optimized and processed data over the USB to the is device under the control of the xHCI controller.