Перейти к содержанию

Самодельный IDE SSD на SD-картах

Наверное, нет смысла долго расписывать преимущества SSD (==Solid State Drive) в применении к домашним интернет-серверам, файл-серверам, технологическим компьютерам и т.п. Собственно, в промышленности SSD и DOC (==Disk-on-Chip) применяются уже давно. Так что пора переносить эту технологию и "в дом"! wink.gif

Сразу рассмотрю возможные альтернативы:
  1. USB-Flash. Сами по себе они всем хороши: нынче дешевы, объемны, быстры, и с каждым годом все объемистее и быстрее wink.gif . Однако, далеко не все мат. платы старше примерно 2000 года умеют загружаться с USB, также многие ОС не способны загрузиться с него, даже несмотря на поддержку BIOS.
  2. CompactFlash-карта через переходник CF->IDE. Вариант замечателен тем, что не требует никакой особой драйверной поддержки, должен работать со всем, что умеет использовать обычные IDE-диски. Однако сами CF-карты довольно дороги, и развиваются медленно: ведь сейчас, фактически, почти единственная область их применения - профессиональные фотокамеры, да и там они уже заменяются форматом SD. Плюс, самостоятельная сборка платы CF->IDE чревата пайкой 50-пинового разъема с шагом 1мм (с учетом двухрядности), что не всем под силу.
  3. Есть еще экзотические варианты адаптеров карт памяти типа SmartMedia или Memory Stick в форме 3.5" дискеты...
Так что очень перспективным вариантом самодельного SSD мне лично видится следующий:
  • Эмулятор IDE-диска на карте (картах) памяти SD Card через микроконтроллер семейства AVR.
  • С одного "конца" эмулирует IDE-накопитель. Достаточно реализовать режим PIO-0 (max. 3.3 МБ/с) хотя и такую скорость вряд ли можно будет из ATMegи выжать. Я надеюсь на хотя бы несколько сотен кБ/с. Зато время доступа будет приятным wink.gif . Вспомним, что в середине 90-х винчестеры имели как раз примерно такую реальную скорость обмена, плюс времена доступа в десятки миллисекунд. Для домашнего Инет-сервера с загружаемым раз в полгода Линуксом - вполне хватит.
  • Если правильно реализовать весь протокол опознания устройства и обмен по шине, то оно будет абсолютно эквивалентно IDE HDD для любого BIOS и ОС. Не потребуется спец. драйверов или каких-то изощрений.
  • С другого конца - одна или несколько SD-карт. Они сейчас стремительно растут в объемах и дешевеют. Слоты под них "малоножечные", и в крайнем случае могут быть выкушены из дешевых ($6) кардридеров. Есть даже вариант использовать mini/micro-SD, а в качестве слота для них припаять переходник mSD->SD.
  • Уже накопилось много "Б/У" карт небольших, по современным меркам, объемов, которые после замены на новые просто "отдыхают" на полках. Так что, думаю, есть смысл закладывать в устройство возможность использования нескольких (2...8) "чипселектов", и, соответственно, в софте предусматривать возможность "склеивания" карт в один логический том.
  • Как вариант: сделать даже не IDE-устройство, а ISA-плату, эмулирующую диск вместе с IDE-контроллером. Однако, такое не подключишь к современным PC...
  • Для ускорения обмена можно рассмотреть применение CPLD/FPGA, внешней (по отношению к микроконтроллеру) ОЗУ и т.п.
Конечно, идея IDE->SD не мне первому пришла:
http://www.sdcard.ru/memory/121#more-121
http://cgi.ebay.com.sg/ws/eBayISAPI.dll?Vi...exURL=#MRLOCATE
Однако, в наших краях это все экзотика. Плюс, в большинстве подобных устройств не предусмотрено более одной карты.

Итак.

Может, кто-то уже делал что-то подобное? Навскидку я ничего не нашел...

Или же заняться самому? Готовые библиотеки работы с SD/MMC имеются. Аппаратных никаких особых изысков не предвидится (если не пытаться выжимать UDMA-133 wink.gif ). Единственная неизученная толком область - собственно, эмуляция IDE. Но тут хотя бы документации много.

Что скажете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Серию SST85 не смотрели?
http://www.sst.com/products.xhtml/nand_flash_storage/
По любому будет дешевле ваших изысканий biggrin.gif

Цитата(GrayCat @ Nov 3 2008, 01:03) <{POST_SNAPBACK}>


Moderator:
Бездумное цитирование удалено.
Изменено пользователем zltigo

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Вот нашел инет-продавца таких штук:
http://www.dealextreme.com/details.dx/sku.1698
$13.44 +доставка ОТТУДА

Цитата(AlexandrY @ Nov 2 2008, 23:47) <{POST_SNAPBACK}>
Серию SST85 не смотрели?
http://www.sst.com/products.xhtml/nand_flash_storage/
По любому будет дешевле ваших изысканий biggrin.gif

Конечно дешевле... при тираже 10000шт. 07.gif Где у нас такое чудо можно купить поштучно? И то цена будет 20 евров/шт. минимум только за саму микросхему...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(GrayCat @ Nov 2 2008, 23:33) <{POST_SNAPBACK}>
Или же заняться самому? Готовые библиотеки работы с SD/MMC имеются. Аппаратных никаких особых изысков не предвидится (если не пытаться выжимать UDMA-133 wink.gif ). Единственная неизученная толком область - собственно, эмуляция IDE. Но тут хотя бы документации много.

Что скажете?

Заниматься этим с целью сделать устройство - бесполезная трата времени и сил. К тому времени, когда оно "задергает ножками", готовых решений уже будет как грязи, что законченных накопителей (причем сделанных "правильно", т.е. с грамотно реализованной стратегией использования блоков, чтобы ресурс был действительно значительный, а не сдохло бы через месяц из-за интенсивного износа в области FAT) , что переходников с карточек на IDE или SATA. BTW, уже второй раз вижу на iXBT упоминание о таком переходнике, но разом на шесть карт SD (6xSD->SATA, до 192 гигов общий объем, но стоит, правда, довольно существенно). И уж могу сказать с уверенностью, что пытаться что-то такое реализовать на AVR - абсолютно бесперспективное дело, будет крайне медленно и печально...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
лисапет.
трехколесный.

для SD/microSD есть это :
http://www.ixbt.com/storage/readers-p17-pretec.shtml
http://www.ixbt.com/storage/readers-p24-idm.shtml

хотя все равно дороже usb флешек.

платы без usb загрузки стремительно вымирают, давно таких не видел.

подумайте во что обойдется реализация быстрого IDE интерфейса с DMA и всеми наворотами...
Изменено пользователем ukpyr

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ukpyr @ Nov 3 2008, 22:01) <{POST_SNAPBACK}>
лисапет.
трехколесный.

для SD/microSD есть это :
http://www.ixbt.com/storage/readers-p17-pretec.shtml
http://www.ixbt.com/storage/readers-p24-idm.shtml

хотя все равно дороже usb флешек.

Цены и на карты, и, особенно, на "законченные" USB-флешки, очень и очень различаются. В разы. Причем производители говорят о чем угодно, изгаляются с корпусами как могут, красят во всевозможные цвета, но что до скоростных характеристик - куда там партизанам на допросе... Так что все это лотерея. Если вдруг кого интересует более-менее скоростной одностандартный "картовод" - http://www.dealextreme.com/details.dx/sku.6858
20 мб/сек на чтении дает, за три бакса самое оно...

Цитата
подумайте во что обойдется реализация быстрого IDE интерфейса с DMA и всеми наворотами...

Да уж ! © Заниматься разработкой такого изделия в единичном экземпляре "для себя" - это какая-то особо изощренная форма мазохизма. Для серийного производства - с фирмами, собаку съевшими на этой тематике, и высокопроизводительными китайцами, тиражирующими результат работы оных фирм - конкурировать совершенно нереально. Чтобы "для себя" разобраться и как-то использовать в своих разработках - тоже как-то не очень, весьма трудозатратно, а выхода на копейку...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата
Сразу рассмотрю возможные альтернативы:

Еще пару вариантов забыли добавить:
1. Использование давно используемых индустриальных решений решений IDE Flash Disk(Disk on chip и пр.) по ценам 100р@32M до примерно 1100р@1G
2. Использование уже доступных SSD по цене соизмеримой со стоимостью памяти на других носителях. 3700р@32Gb.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Ну во-о-от, сразу все в цену уперлись... wacko.gif А как же романтика?! 1111493779.gif

Вы же видели, я сам привел ссылки на подобные устройства, в т.ч. за $13 (блин, доставка дороже выйдет 07.gif ). Также я писал уже, что не собираюсь выжимать петабайты/сек; для нечастой загрузки Линукса вполне хватит пары сотен кБ/с в PIO-0, как у винчестеров середины 90-х.

Хотя, конечно, все это бред сивой кобылы, записанный с ее слов...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
АТМега даже PIO 0 не потянет - посмотрите диграммы обмена в стандарте IDE/ATAPI, не успеет. может какой-нибудь ARM с внешней шиной или интерфейс на CPLD.
несколько лет назад тут уже была похожая тема, кто-то сделал такой преобразователь на м8515, кое-как работал с нарушением стандарта.
Изменено пользователем ukpyr

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Я бы с удовольствием ради спортивного интереса заморочился бы с быстрым IDE с DMA и всеми наворотами. Не боги горшки обжигают. Потихоничку бы всё заработало как надо. Просто времени на это не то что нету, а воообще нет!

А ещё кэш прикрутить метров на 128.
Заложить сразу быстрый проц, чтоб рулил всё это.
Да, и карточек 6 чтоб было и организовать неконе подобие RAID0 на них.
Будет transfer rate на чтение невиданный просто!
Да и на запись получится прилично. +время доступа некислое.
Вполне конкурентноспособный продукт:-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
spartan3A + 8+10 SDHC+ 128MB ram на + PCI-E 1x == 256GB +CRC

можно повеселится
но думаю это будет дороже 256GB SSD sad.gif который уже стоит в пределах 500$

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(rokhan @ Dec 28 2008, 20:18) <{POST_SNAPBACK}>
spartan3A + 8+10 SDHC+ 128MB ram на + PCI-E 1x == 256GB +CRC

можно повеселится
но думаю это будет дороже 256GB SSD sad.gif который уже стоит в пределах 500$

Подобный проект имеет определенный смысл только в одном случае - когда нужно регистрировать действительно большой поток данных, скажем, от быстрого АЦП, и для этого нужно параллельное включение большого (>>20) числа флэшей. Но и то практичнее такой дивайс собрать на чипах флэш-памяти, а быстрый обмен с "внешним миром" сделать на связке гигабитных этернетов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Господа,

Кто-нибудь делал схему интерфейса microSD c процессором MPC5200?
Нужно от 2 до 8 GB вместо CF. Можно сыылочку на инфу.
Какие могут быть проблемы?
Заранее спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ukpyr @ Nov 4 2008, 03:16) <{POST_SNAPBACK}>
АТМега даже PIO 0 не потянет - посмотрите диграммы обмена в стандарте IDE/ATAPI, не успеет. может какой-нибудь ARM с внешней шиной или интерфейс на CPLD.
несколько лет назад тут уже была похожая тема, кто-то сделал такой преобразователь на м8515, кое-как работал с нарушением стандарта.

Это был я. Вот тема http://electronix.ru/forum/lofiversion/index.php/t24588.html
Ссылка на исходный код http://www.buiankin.narod.ru/ide/ide-mmc.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация