USB functionality: As a host and device simultaneously + some other stuff

Recently, I am thinking about a project in which I need to preprocess
images (A simple thresholding and maybe morphologic analysis using
opencv) coming from 3xps3 eye cameras (using an USB HUB) and send
results to a PC again using USB interface, however,
* can beagleboard act as a host and device simultaneously on different
* My aim is to achieve 60fps @ SIF for each camera, does this sound
realistic? (I am not sure how to calculate whether this is possible or

Currently, I do not own a Beagleboard, I am trying to assess whether
Beagleboard is the thing I am looking for so I'd appreciate any help.

My other option is reviving my old p4 pc and using a crossover cable
to the one I am currently using but my old pc does not have a DSP chip
on it, hence this option does not look so good.

If these are not possible to achieve using Beagleboard, I am also open
to suggestions


For those interested I can share my idea and if I can manage to make
it happen I can send step by step progress.

First question is how big is each frame. 60fps on 480 Mbps (60MB/s) usb bus gives you < 1MB per frame. Whether this is ok depends on format. If you are trying to send 3 streams now you are <300kB/frame. Sounds a bit iffy at a decent resolution.