Qibo made a nice AVR based USB SD card reader (doh, note – you need to register to view the projects on AVR Freaks) –

his project is for studying USB interface and MassStorage protocol.
Perhaps, because I should not using AVR device which has no extended bus,
or should not using SD card as the medium but others which has parallel interface. The speed of this work is quite slow, Read 370KB/s and Write 195KB/s.
But this project is quite simple for studying USB.

The function of this board is USB SD card reader. Since It adopt MassStorage protocol, It will be treated as a removable disk when plug in the computer, just like a flsh disk.

Using the attached code it will be shown as a hard disk, because I can use the function of the hard disk (eg, partition). Of course just change a character of the code it will be a removable disk.

:: AVR Freaks – USB SD Card Reader Link.