That is a very interesting idea. The USB stick might also behave as a storage device and constain the host [PC, Mac, Linux ...] application that makes use of the "coprocessor". It would raise some interesting class driver issues, but but not insurmountable. If you're at EE Live!, I'd welcome a chat on this topic.
Yes, application dependent. Are there applications that don't fit efficiently on a standard CPU that might fit better on dedicated hardware connected as a 'stick' via USBV 3.0.
One example would be to have an FPGA co-processor that could be configured for different algorithms. You could stream data to it over the USB connection. If the algorithm needed lots of input data, many parallel processors (you could fit 100s on an FPGA) and a small amount of local memory it could be much faster than using the CPU.
DrFPGA: I am not quite sure what you have in mind. Obviously you can create a USB 3.0 enabled device with any amount of computing power. Whether the overhead of the protocol would be too great to offset the advantage of sending off some data for processing is entirely application dependent.
I'm interested in the new applications the higher data transfer rate will create. For example, is this fast enough to allow co-processing across the USB 3.0 connection? Could we see USB 3.0 sticks with specialized processors on the stick that would be faster than the host CPU?
A Book For All Reasons Bernard Cole1 Comment Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...