Сделан пока только 1 Logical unit - RAM-драйв (как самый простой для реализации). "Диск" лежит в SDRAM.
Код для работы с QSPI и SD/MMC так же уже почти готов (я его давно написал, когда с FatFs возился).
Т.к. вся эта возня была нужна только для того, чтобы иметь возможность хранить и обновлять прошивку ПЛИС без программатора, то "рамдиск" весьма натурально пригодится - на этапе наладки-постройки этой самой прошивки менять её придётся очень часто и каждый раз дрючить флэш-память это нехорошо. Ежели результат компиляции будет автоматически сохраняться на этом диске (сие решается простым прописыванием пути к файлу), то обновление прошивки можно сделать чисто нажатием кнопки. Или даже посидеть-подумать и пусть оно обновляется вообще само, как только файл изменился.
Никаких оптимизаций нет, в консоль валится куча отладочного мусора, скорость записи около 740 килобайт/с; без отладки так и вовсе около мега в секунду (с учётом того, что это USB FS -- вовсе не так уж плохо).
В процессе написания и отладки слоя SCSI выяснил, что Windows 7 - истеричка с обсессивно-компульсивным расстройством, побуждающим её переспрашивать и переспрашивать Capacity подключённых носителей. Казалось бы, в процессе работы этот параметр меняется совсем не так часто, но нет - пока привод инициализируется, полсотни раз может спросить одно и то же: Какаяёмкость?какаяёмкость?какаяёмкость?к