Цитата(DmitryR @ Mar 30 2012, 10:27)

Мы делали SATA, правда slave, и мне видится что это подъемная задача, особенно если не заморачиваться всякими NCQ. PCIe мастер (root) есть только в дорогих ПЛИС, и мне непонятно как вы SSD подключите по PCIe. А SATA можно сделать ПЛИС начального уровня. Чтобы писать файлы операционку конечно надо, вот тут у вас будет небольшая сложность - придется для выбранной операционки к вашему самодельному SATA мастеру написать драйвер, что может стать самой гемморойной частью проекта.
Наиболее сложной частью в SATA является LINK, он аналогичен уровню DATA_LINK в PCIe, но в современных ПЛИС PCIe уже существует в виде hard блока. Для ПЛИС Xilinx IP Core PCIe входит в состав CORE Generator и не требует отдельной лицензии. IP Core для SATA нужно покупать у других компаний, например у Snowbush. Когда то я пытался изучить вопрос как сделать самостоятельно SATA, но не смог. Так что мне интересно, как удалось сделать SATA в ПЛИС и главное какая ПЛИС и сколько ресурсов занимает контроллер, хотя бы приблизительно.
А для решения поставленной автором задачи напрашивается применение ARM. Там уже всё есть, включая soft. У нас на фирме эксперименты с ARM проводятся, например получили ввод данных на скорости 600 Мбайт/с через PCIe v2.0 x2.