SDRAM do ARM Cortex M4

Witam, potrzebuję pomocy kogoś, kto ma doświadczenie przy podłączaniu swojego processora do 32-bitowej kostki pamięci SDRAM. Używam procka ARM/CortexM4 firmy NXP, oznaczenie procka LPC4088 i pojedynczej kostki pamięci SDRAM firmy ISSI model IS42S32800D-7. Datasheet pamięci:

formatting link
Tam wyczytałem że pamięć moja jest 256 megabit, zorganizowana w 4 banki po

64 megabitowe tablice po 4096 wiersze i 512 kolumn słów 32-bitowych. Kostka ma 2 piny do wyboru banku (BA0 i BA1), 32 piny danych (D0-D32) i 4 bity maski bajtów danych (DQM0-DQM3). Kostka ma tylko 12 pinów wyboru adresu wiersza z których 9 służy do wyboru kolumny. Datasheet procesora:
formatting link
Na stronie 190 jest tam tabelka 135, którą próbuję zaimplementować w swoim kodzie… Z tego co rozumiem, są tam 4 części tabelki, dwie pierwsze dla konfiguracji z 16-bitową szyną danych i dwie dla mojej konfiguracji z 32-bitową szyną danych. Ponieważ mam jedną kostkę 32-bitową (a nie np. 2 kostki 16-bit ani nie 4 kostki 8 –bit) to skupiam się na wierszu tabelki opisanym „256Mbits (8M x 32)” ale wtedy otrzymuję konfigurację 4 banki po 13 bitów dla wyboru wiersza i 8 bitów dla wyboru kolumny. Ale w opisie kostki pamięci mam 12 pinów dla wyboru wiersza i 9 dla wyboru kolumny więc nie obsłużę 13 bitów adresu wiersza bo brak mi A12. Czego ja tu nie rozumiem?
Reply to
Pszemol
Loading thread data ...

Patrzę sobie właśnie na notę aplikacyjną dla innego proca (LPC32xx)

formatting link
widzę tam na stronie 23, rozdział 2.11, że zalecają niestandardowe ustawienia dla liczby bitów wierszy i kolumn, niedozwolone w standardowym User Manual procesora...

Dla kostek 32-bitowych o gęstości 256Mbit (8M x 32) proponują ustawienie takie jak dla kostek 16-bitowych 128Mbit!

Ustawiłem 1 0 010 01 jak dla 128Mbit (8M x 16), 4 bank, 12 row, 9 colums i działa...

No co za skórkowańcy... Jak z tym żyć panie premierze?? Jak żyć? :-)

Reply to
Pszemol

W dniu 2016-03-28 o 21:45, Pszemol pisze:

get over it :) NXP daje w miarę realne datasheety, TI to w przypadku bardziej skomplikowanych układów lista pobożnych życzeń :)

a.

Reply to
Artur Miller

Ta tabelka wyglada dziwnie, ale chyba da sie ja rozsadnie przeczytac:

32 bitowe slowo i kosc 128Mbit (8M x 16) oznacza faktycznie dwie kosci -- dwie zeby dostac 32 bitowe slowo z dwu 16 bitowych kawalkow. Liczac linie adresowe widac ze to jedyna sensowna interpretacja, w przeciwnym razie linii adresowych byloby za duzo.

No a dla procesora dwie kosci 128Mbit z 16 bitowym slowem to prawie to samo co jedna 256Mbit z 32 bitowym slowem.

Reply to
Waldek Hebisch

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.