Witajcie! Mam problem: chcialbym w swoim projekcie uzyc pamieci od komputera. Bo jest tania i jest jej sporo (chodzi mi o sampler 1 milion probek 16 bit/ sek). Przetwornik mam taki, ze sie go taktuje zegarkiem i on co 8 cykli wystawia nowa wartosc. Teraz trzeba ja wsadzic do pamieci. Czy ktos wie, od czego zaczac? Jak zorganizowac kontroler pamieci? Mozna cos takiego kupic, czy kombinowac cos na Atmega na piechote? Najlepiej byloby miec sterownik, ktory zamienilby pamiec DRAM w widoczna jako zwyczajna SRAM i uwolnil mnie od calego bawienia sie w odswiezanie, przeploty, casybiforrasy i takie tam. Jakis punkt zaczepienia mi jest potrzebny zanim zaczne sam projektowac (moze niepotrzebnie) jakis wyszukany uklad... Z gory dzieki za pomoc. Pzdr, POKREC
DRAM od komputera
Sep 27, 2007
8 Replies
Spinacz biurowy, pokrec snipped-for-privacy@wywalto.poczta.onet.pl>!
Ja tam nie wiem, ale Google po wpisaniu DRAM AVR wypluwa kilka linków.
formatting link
To może ci się przydać.
formatting link
To też fajne.
Spinacz biurowy, pokrec snipped-for-privacy@wywalto.poczta.onet.pl>!
Ja tam nie wiem, ale Google po wpisaniu DRAM AVR wypluwa kilka linków.
formatting link
To może ci się przydać.
formatting link
To też fajne. Piszą że to nie będzie demon szybkości, ale wygląda na to że się da.
Dzieki!
Wiem, ze sie da, ale jak wtloczyc w taka pamiec dane z predkoscia miliona probek na sekunde? Odczyt moze sobie isc z dowolna predkoscia, ale zapis musi byc dosc zwawy. Coz, dzieki w kazdym razie za info. Pzdr, POKREC.
a AVR potrafi z taka predkoscia? bez malego CPLD/FPGA to raczej sie nie uda.. chyba ze jakeigos ARMa z kontrolerem SDRAM wziac, moze to byc tansza alternatywa niz avr+cpld
Użytkownik pokrec napisał:
Tzn. jak sporo ma być tej pamięci ? Musisz brać pod uwagę to, że 8-mio bitowa ATmega ma 16-to bitową przestrzeń adresową dla zewnętrznej pamięci danych więc jeśli tej pamięci będzie więcej niż 64KB to trzeba będzie ją "pobankować". W przypadku jak rozwiążesz sprzętowe połączenie DRAM do np. ATmega128 (co nie powinno być aż tak trudne - odpowiednia ilość 75LS157 i prosty układ opóźniający sygnały MUX i CAS), to powinno się udać wycisnąć te 1Ms/s. Odświeżanie podczas zapisu będzie się robić samo :-). Jeśli odczyt będzie wystarczająco szybki to też pamięć będzie odświeżana. Ewentualnie odświeżanie można zrealizować na przerwaniu. Można oczywiście programowo generować wszystkie sygnały dla pamięci DRAM. Z tego co sobie wstępnie rozpisałem kawałek kodu to dla pamięci
64K (ośmiobitowa magistrala adresowa) dałoby radę zapisać te 1Ms/s przy popędzaniu ATmegi kwarcem 16MHz. Przy większej pamięci może być problem, bo trzeba jeszcze dodatkowych rozkazów do wystawiania starszych bitów adresu. Z drugiej strony pamięci SRAM nie są aż tak kosmicznie drogie i zastanawiam się czy to jest gra warta świeczki.Pozdrawiam Grzegorz
[ciach]
Dzieki, myslalem o czyms raczej blizej 0,5 - 1 GB niz 64 KB...
1GB SRAM-u zaczyna juz kosztowac ;-) Nie mowiac o lutowaniu do kupy tysiaca, czy dwoch tys. scalakow (mozna spokojnie zapomniec). 512 KB SRAM-u, to taka kosteczke mam w szufladzie i kosztowala cos 20 zl, powiedzmy, ze w porownaniu z robota i certoleniem sie ze sterowaniem SRAM-u, roznica kilkunastozlotowa na czesciach to rzecz pomijalna w tym momencie, nawet bym Wam tylka nie zawracal, ale ja myslalem raczej o czyms takim, zeby pojsc do sklepu komputerowego, kupic 512 MB DDR i to zastosowac jakos. W kompach to te pamieci maja transfery dosc porzadne, wiec myslalem sobie... Pzdr, POKREC.
No to zapomnij o Atmegach. Moduł DDR DIMM to około 100 linii sygnałowych i taktować to musisz minimum 100MHz.
Bez jakiegos FPGA raczej sie nie obejdzie. Układy Altery i Xilinxa mają bloki IO specjalnie przystosowane dla DDR
Najlepiej poczytaj sobie troche o tym:
formatting link
Specyfikacja DDR
formatting link
Greg(G.Kasprowicz) pisze:
Do tego zastosowania wystarczy w zupełności AT91RM9200. Kosztuje poniżej
100 zł/szt, do tego wystarczy dołożyć ulubioną pamięć SDRAM i jako pamięć programu np. szeregową kostkę DataFlash.Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required