Práce s DRAM

Dobrý den, nemáte někdo zkušenosti s připojením pamětí DRAM s mikrořadiči? Rád bych použil starší DRAM z vyřazeného PC o kapacitě cca 16MB k záznamu a přehrávání audio signálu (jednoduchá aplikace typu “nádražních hlášení”. Zkoušel jsem to s EPROM i s SRAM, to je v pohodě, ale problémem je malá kapacita a v případě EPROM taky problematické programování přímo v aplikaci. To by řešilo použití DRAM, ale nikdy jsem s nimi nedělal a hlavně mi není jasné, jak vyřešit refresh. Z datalistů nějakých pamětí se mi zdá, že některé potřebují externí refresh, některé si ho umí generovat sami. Ovládání je pomocí instrukcí. Dělal jste s tím někdo? Je to složité?
Díky!

Vlasťa

Řekl bych, že to není dobrý nápad. Zamyslel bych se spíš nad MMC nebo SD pamětí.

Priklanam sa k MMC, alebo SD, pripadne AT45DB161 (SO-8) ak by stacili 2MB.

Jo, dík. Jenže s MMC nebo SD mi to připadá ještě složitější, než s DRAM. Navíc si nejsem jistý, zda MMC karty by stačily rychlostí? Jednalo by se o vzorkování 22,1 kHz a 16-bit. převod. 2MB je málo. Potřebuji minimálně 8MB/16-bit., tedy 16MB “klasických” 8-bitových. Vl.

OK, pozměním tedy svůj dotaz takto: Máte někdo zkušenosti s připojením MMC nebo SD karet k mikrořadiči? :slight_smile:. Vl.

  1. 22,1 kHz a 16-bit. převod. to je datový tok 44,2KB/s. MMC karta běžně udělá 10MB/s
  2. Pro řízení MMC potřebuješ pouze tři signálové vodiče.

Já jsem se o to pouze zajímal a je toho na webu poměrně dost.

Chod na www.avrfreaks.net

daj si tam vyhladat MMC. Vyjde ti napriklad AVR Butterfly MP3 Player:

avrfreaks.net/index.php?modu … pe=project

a podobne projekty i s hotovymi kodmi.
Staci len pohladat.
Martin

OK, dík, už jsi mne skoro přesvědčil :slight_smile:. Já už jsem o těchto kartách samozřejmě uvažoval, jako o jedné z možností, ale trošku mne odradilo, že jsem nikde nesehnal nějakou aplikaci, na které by to bylo vysvětleno a mohl jsem se tedy od něčeho odpíchnost. Nevíš o něčem? Vl.

OK, díky, podívám se na to. Vl.

Tie DRAM nechaj odpocivat v pokoli.
MMC (SD) su rozhodne rychlejsie, dostupnejsie, vymenitelnejsie a hlavne omnoho omnoho mensie ako 16MB DRAM.
AT45 mozes taktovat rychlostou 66MHz. V pzudre So8 je to parada, ak ti saci kapacita.
Pre komunikaciu s MMC aj pre AT45 pouzi HW SPI a potom dosiahnes velmi dobru datovu priepustnost.
kvoli lahkej vymenitoelnosti i pre moznost pouzit FAT16 by som doporucil tu MMC. Velkostou jej DRAM nemozu konkurovat.
Okrem toho, ak chces ralizaciu typu nadrazne hlasenie, potrebujes mat ten zvukovy zaznam niekde ulozeny v pripade vypadku Ucc. A na to je DRAM uplne nevhodna. MMC ti riesi vsetky uvedene problemy.

Martin

No tak jo … :slight_smile:. Dostali jste mne. Tak trošku jsem čekal, že to tak dopadne, jen se mi nechtělo vše studovat od úplného začátku, protože to potřebuji mít hotové poměrně brzy a o formátu těchto karet a jejich použití nic nevím. Vl.

DOporučuju CF karty nebo HDD disky, pokud se jedná o “menší” (rozměrově) zařízení, tak SD nebo mikroSD karty…
Karty sice dokážou dát pěknej datovej tok, otázka je, jestli ten chudák kontrolér to ale bude stíhat načítat z karty a zároveˇn posílat do DAC…

Vzhledem k tomu, že MMC má rozhraní SPI, tak se vhodný procesor bude nudit.

Chci použít PIC16F877A nebo PIC18F452. Tam by neměl být problém, obě mají SPI. Vl.

Nevím co tu všichni máte proti SDRAM pamětem. Většina kvalitních procesorů za 100Kč již mají integrovaný řadič SDRAM pamětí a rozjet ji je potom otazka pěti minut. U SD karet musíte řešit veškerou komunikaci jak s kartou, tak i s jejím firmware a navíc u ní takovým procesorem velkou rychlost nedosáhnete. Naproti tomu u SDRAM paměti vůbec nic neřešíte, jen ji v procesoru povolíte a z jejího datasheetu opíšete hodnory jako CAS, RAS a podobné. Jak říkám, práce sotva na pět minut a méte hotovo. Následující práce spočívá pouze v přesunu dat na livovolnou adresu, paměť se totiž připojí přímo do paměťového prostoru procesoru.

A jinak ani použití DDR pamětí není problém .Pokud použijete hradlové pole, máte její ovládací “stroječek” přímo v knihovnách a tak jediné co musíte u DDR2 a vyšších řešit je kvalitní natahání spojů na desce.

Až budu mít chvilku, napíšu o práci s SDRAM pamětí článek na svůj web.

Zdeněk Novotný

Proti SDRAM tu neměl nikdo nic.
No jo, ale tady se řešilo použití DRAM u PIC16F877A nebo PIC18F452.
Článek by přišel vhod zejména u AVR. Připojit SDRAM k x51 jsem zkoušel. Naprosto bez problému. Jelo to na první pokus. (byla připojená k AT89S52)

:arrow_right: administrator: příspěvek byl upraven

Díky, už jsem skoro nedoufal, že by to mohlo jít. Je to přesně tak, jak píšeš, FAT tabulka, blokové přenosy atd., to je pro člověka, který to nikdy nedělal, běh na dlouhou trať. U DRAM bych potřeboval vědět, jak je to s refreší, popř. uvést nějaký příklad (algoritmus, aby to bylo použitelné kdekoliv). Pokud tomu správně rozumím, některé typy DRAM umí refresh generovat automaticky. Článek, který by popisoval práci s DRAM, bych velmi uvítal. Ale spíše by to chtělo prakticky - jak to rozjet. Vlasťa.

Ale ked si data ukladas len pre vlastnu pracu procesora na co ti je preboha FAT? V jednoduchosti je krasa.

Souhlasím. Pokud data na paměťové médium ukládáš jen jako “do vedlejší RAMky”, tak FAT je opravdu zbytečná věc. Pokud ale na paměťovku ukládáš data, jakoby soubory, tak použití FAT není nutností, ale je lepší, když se FAT použije, pro úpravu dat pak stačí paměťovku vrazit do kompu, v souborech se pohrabat, a může se pracovat dál.

Zkoušel jsem propojit HDD z kompu k 89S52 (v té době jsem avr neuměl), moc jsem toho ale nevyzkoušel… Plánuju pokusit se řídit disk nějakým AVRkem, s tim ze bych zkusil i FAT16. Nejdriv budu ale muset poridit poradne AVRko (mám tu jen mega8), a vetsi SRAM paměť :slight_smile: aby bylo data kam odkládat. Njaký SRAMky tu mám z desky z nějakýho PC, ty sou ale “jenom” 32kB. Mohlo by to ale stačit :slight_smile: