Does any USB controller card exist that fully offloads I/O from the host CPU

controllerhardwareusb

In the hard drive controller card market – the higher-end (LSI, 3Ware) cards have their own on-board CPU and RAM, and take care of interacting with the hard drive, only notifying the system's CPU after the data has been transferred completely.

Is there a card that provides equivalent functionality for USB peripherals? (So that multi-gigabyte data transfers to a USB-connected device would have negligible CPU overhead, as with the above-mentioned SAS/SATA cards?

I'm aware that a cheap card can support DMA. And that 1394 cards can support DMA. I'm inquiring about the existence a card that fully implements the protocol, manages the bus, and transfers the data itself, only handing off data blocks to the host OS when they're fully off the wire.

Best Answer

Basically any USB controller with DMA will offload bulk data transfers to the on-chip DMA controller instead of doing CPU PIO. From what I've seen most controllers do not have DMA, it's difficult to find.

Related Topic