possible to interface with several devices?

I would like to build a sort of 'bump tracking' device. I'd collect data from a gps module @ 1-2Hz (~ 1kBps as far as I can gather though I will ignore some of the information) and an accelerometer @ 400Hz (10bit * 400hz < 0.5kBps), and log that data to a usb key via an FTDI VDIP1.

The way I envision doing it is using the VDIP1 in UART mode, using the hardware serial for the GPS and using a timer to read the accelerometer roughly every 2.5ms, give or take. It's not critical that I get exactly 400hz out of the accelerometer, or that I write that many values to the usb key. I just want to write roughly that many accelerometer samples punctuated every .5-1s by a chunk of GPS data.

I have worked with these sorts of devices individually but never together. Is arduino fast enough to do this? Is this reasonably doable?

Thanks.