logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Dysk SSD zbudowany z kart SD

Ajaha 26 Wrz 2008 14:27 5958 11
  • #1 5573482
    Ajaha
    Poziom 11  
    Witam wszystkich
    Ostatnio szukajac pewnych informacji na temat obslugi kart sd z poziomu mikrokontrolera natknalem sie na dosc ciekawe urzadzenie. Niestety linka nie posiadam, wiec opisze co i jak. Byl to jakis taki uklad umozliwiajacy podlaczenie 4 kart sd. Po podlaczeniu tych kart urzadzenie moglo pracowac jako dysk twardy.
    No i tak mnie naszla chec zrobienia czegos takiego (albo przynajmniej rozeznania tematu). Chcialbym zeby mozna bylo podlaczyc 8 kart a nie 4 jak bylo w tamtym projekcie moze na jakims atmelu.
    Czy ktos ma jakies doswiadczenie w tym temacie lub moglby sluzyc jakas konstruktywna rada?
  • #3 5573707
    marenc
    Poziom 24  
    Sztuczny MBR i obsługa każdej karty jako osobnej partycji ... jeżeli chodzi o dostęp do danych to ma to sens, ale traci się on, jeżeli chodzi o kopiowanie, przenoszenie danych pomiędzy kartami czy innym HDD.

    Generalnie dołączam się do pytania "mirekk36" ;)
  • #4 5573994
    Ajaha
    Poziom 11  
    Ogolnie to jestem w trakcie budowania i obslugiwania takiego ukladu z jedna karta, ale przygotowanie teoretyczne juz zakonczylem i uwazam ze mam dosyc wiedzy zeby sobie z tym poradzic, tylko jestem troche spowolniony zakupem czesci przez moja firme:)
  • #5 5574282
    Klima
    Poziom 31  
    A jak chcesz taki dysk podłączyć? Przez ATA, SATA, USB? Proponuję np. 8 kart połączonych jak w RAID ileśtam (odpada problem podziału danych - każdy pakiet zapisywany na kolejnej karcie). Weź pod uwagę sposób zapisu na kartach SD - wynika z nich, że twój mikrokontroler musiałby mieć pewną ilość ramu na bufory - na każdą kartę oddzielnie - żeby zapisywać dane całymi stronami. Szczerze mówiąc, nie wiem, jakie są rozmiary stron w SD. Z odczytem nie ma tego problemu. Polecam jakiegoś ARMa, bo tanie i popularne, a ramu powinno wystarczyć. Jak chcesz AVR, to tylko te największe mają sensowną (choć i tak chyba za małą) ilość ramu. Jak chcesz Atmela, to wybierz np. AT91SAM7S. Taki AT91SAM7S128 ma 32k ramu, wbudowane USB i kosztuje 21 zł netto. Są też większe i mniejsze.
  • #6 5574641
    Ajaha
    Poziom 11  
    Wiec tak, myslalem o zwyklym interfejsie ATA bo wydaje mi sie ze z tym bym sobie poradzil w najprostszy sposob, ale mysle ze SATA tez nie bylby glupim pomyslem. Zapis i odczyt z karty sd odbywa sie blokowo (np blok o rozmiarze 512 bajtow), jezeli chodzi o RAM to owszem tez myslalem ze bedzie go troche potrzeba ale taki zamysl ze moze jakis kawalek pamieci z tych kart moglby robic za RAM. Jezeli taki pomysl by nie przeszedl to do zwyklego AVR (np Atmega 128, Atmega 256) mozna dolozyc kostke ramu.
  • #7 5574969
    migod
    Poziom 21  
    Przykładowa implementacja czytnika kart SDHC poprzez USB z użyciem AT91SAM7S oraz włączonym DMA daje przepustowość ok. 140kb/s (kwarc 48MHz). Przy czym wąskim gardłem są operacje na karcie, a nie przepustowość USB. Nie trzeba nikomu tłumaczyć jak to niewiele w porównaniu do 10 - 40MB/s lub więcej osiąganych w przypadku typowych transmisji dyskowych.

    Jakiś czas temu widziałem ciekawe rozwiązanie - mieszące się w obudowie dysku 2.5" dwie karty CF, których pojemności obecnie przekraczają już 32GB, a magistrala jest zdaje się zgodna z ATA no i prędkości zapisu są znacznie większe.
    http://www.sansdigital.com/compact-flash-storage/cr2t.html

    Na allegro za to pełno czytników na pojedynczą kartę CF i wyprowadzenia ATA. Koszty zakupu są bardzo niskie. Na miejscu kolegi zainteresowałbym się własnie czymś takim.

    Mnie początkowy zapał zrobienia czegoś własnego i uzyskania porównywalnych przepustowości szybko przeszedł, choć owszem - jest i działa i satysfakcja jakaś tam jest.

    pozdrowił,
    --
    migod
  • #8 5575118
    Fyszo
    Poziom 37  
    Ajaha napisał:
    jezeli chodzi o RAM to owszem tez myslalem ze bedzie go troche potrzeba ale taki zamysl ze moze jakis kawalek pamieci z tych kart moglby robic za RAM.


    Tak się nie da ...
    Minimum 512 na fizyczny zapis bloku a jeszcze przecież struktury Fatu musisz zmieścić... wyjdzie kilka kB na 1 kartę.
  • #9 5579106
    Klima
    Poziom 31  
    Fyszo napisał:
    a jeszcze przecież struktury Fatu musisz zmieścić... wyjdzie kilka kB na 1 kartę.

    Nie no, przecież on chce sam dysk zrobić, a FAT to już "wyższa warstwa". On tylko czytać i zapisywać sektory musi.
  • #10 5581331
    Ajaha
    Poziom 11  
    Cytat:
    Jakiś czas temu widziałem ciekawe rozwiązanie - mieszące się w obudowie dysku 2.5" dwie karty CF, których pojemności obecnie przekraczają już 32GB, a magistrala jest zdaje się zgodna z ATA no i prędkości zapisu są znacznie większe


    Mniej wiecej o takie urzadzenie chodzi tylko po pierwsze na kartach SD a po drugie zeby mozna bylo przylaczyc 8 kart.

    Cytat:
    Mnie początkowy zapał zrobienia czegoś własnego i uzyskania porównywalnych przepustowości szybko przeszedł, choć owszem - jest i działa i satysfakcja jakaś tam jest


    Ja chcialbym sie najpierw skupic na zbudowaniu fizycznego urzadzenia ktore umozliwialoby zapis i odczyt a dopiero pozniej martwic sie o przepustowosci.

    Cytat:
    Nie no, przecież on chce sam dysk zrobić, a FAT to już "wyższa warstwa". On tylko czytać i zapisywać sektory musi.


    W koncowym efekcie fajnie by bylo wrzucic obsluge FAT'u i jest to gdzies w moich zalozeniach, ale najpierw musze zbudowac urzadzenie po najprostszej linii a pozniej je upgrejdowac.
    Ponizej zamieszczam obrazek dysku 2,5 calowego zbudowanego w oparciu o karty SD. Ja bym chcial zbudowac takie cos podobnego tylko na 8 kart wiec co za tym idzie musi to byc wieksze czyli do pelnowymiarowego dysku twardego 3,5 cala.
    Dysk SSD zbudowany z kart SD
  • #11 5581467
    piotr_go
    Konstruktor DIY elektronika
    Najlepiej do tego celu nadaje sie fpga, tylko wtedy uzyskasz najwyższą prędkość na jaką pozwolą karty.
  • #12 5593077
    Fakiros
    Poziom 13  
    A czy predkość obsługi tu jest istotna ? bo jezeli zalezy ci na szybkim transferze z kart to proponuje wybrac jakis uC z wbudowanym HW kontrolerem kart SD, i ATA. Ewentualnie proponuję jakies FPGA. W innym przypadku przy odsludze SW mozna spodziewac sie znacznych spadkow transferow, nawet przy 32 bitowych uC, nie mowiac juz o 8bitowcach.
REKLAMA