LPC1830-Xplorer as demo for a custom USB device

I'm at my first tries with Cortex-M and USB. I have the need to build an USB device that should be able to interface with an SPI device that outputs data at around 1MBps. This USB device should be a device that could permit a user to control from a PC, the SPI device and read the data from the SPI device. Moreover the data outputted from the SPI device should be saved on an SD card (that should be accessible through USB).

Just to be clear, the layout should look like this:

[ PC ]-------USB-------[ MY_CUSTOM_DEVICE ]---SPI---[ SPI_DEVICE ]

|

+---- [SD_CARD]

My requirements are:

- control the SPI device with a PC through the USB

- read the data produced by the SPI device (1MBps) with a PC through the USB

- store the data produced by the SPI device on an SD card

- access the SD card with a PC through USB

I was thinking of using the LPC1830-Xplorer board as a demo board to start developing the firmware.

Given that I'm at my first USB device project, I'm looking for feedbacks/opinions/suggestions if it's possible to satisfy all the requirements with this hardware.