połączenie

Oct 27, 2011 14 Replies

Witam.



Posiadam pamięć 16MB * 8 bitów, którą obsługuję z poziomu FPGA, wszystko ładnie działa. Problem w tym że potrzebuję zapisywać tam dane 16-to bitowe. Zamiast dzielić słowo 16-to bitowe na dwa kawałki pomyślałem czy nie można by dołożyć drugiej takiej samej pamięci i połączyć je "równolegle", równocześnie je adresując i do jednej zapisywać młodsze 8 bitów a do drugiej starsze. Czy to ma prawo działać??



Pozdrawiam.


Dnia Thu, 27 Oct 2011 09:13:04 +0200, Viki napisał(a):

Jak najbardziej, powszechna praktyka. Chociażby przyjrzyj się modułom pamięci komputerowych, które mają 64-bitową magistralę danych.

30 lat temu, w atarynkach, łączyło się tak kostki 1-bitowe aby otrzymać 8 bitów ;)

c.

Użytkownik "Cezar" snipped-for-privacy@BEZtlen.pl napisał w wiadomości news:j8b28n$1mi$ snipped-for-privacy@inews.gazeta.pl...

3x prawda.

Do Amigi też były rozszerzenia na 4 kościach 4-bitowych, albo 16 kościach 1-bitowych.

koleś który programuje FPGA zadaje takie pytania... niezłe.

Największe pamięci SDRAM jakie udało mi się znaleźć w sieci to kostki o organizacji: 32 Meg x 4 x 4 banks.

formatting link
Z tego wynika że jeśli połącze ich nawet kilka równolegle (co decyduje o szerokości słowa) to i tak nie przeskoczę objętości 32MB. Jak w takim razie uzyskać pojemność np. 128MB?? Czy da się to zrobić wykorzystując jeden sterownik dla tej pamięci w FPGA?? Proszę o jakieś sugestie.

Pozdrawiam.

Spokojnie, jestem amatorem. Kiedyś w ten sposób połączyłem do AVR-ka dwie kostki z pamięci SIMM i układ działał (transfer niestety żółwi), wolałem się upewnić czy z SDRAM-em będzie podobnie. Na FPGA mam zaliczone dopiero kilka automatów FSM, driver wygenerowałem i działa, uważam to za wielki sukces:))

Pozdrawiam.

Użytkownik "Viki" snipped-for-privacy@gazeta.pl napisał w wiadomości news:j8c2cd$4n2$ snipped-for-privacy@inews.gazeta.pl...

Rzucę ci dwa hasła: dekoder adresów, sygnał EN tychże pamięci.

W skrócie działa to tak, że z kombinacji bitów które Ci zostały (np. 4) robisz dekoder adresu, który aktywuje jeden z 16 układów (podpięty do niższych bitów) poprzez wystawienie dla niego sygnału EN.

Użytkownik "identifikator: 20110701" snipped-for-privacy@go2.pl napisał w wiadomości news:j8btnb$iue$ snipped-for-privacy@news.onet.pl...

Że tak to ujmę "przygadał kocioł garnkowi", większość twoich wystąpień na tej grupie ma dużo gorszy charakter, że przypomnę dzisiejsze pytanie o "instalację bez instalacji".

Rozumiem że EN to to samo co CS. Jeśli tak to ten sposób obsługi już wcześniej wydumałem:) ale zawsze lubię zweryfikować swoje filozofie z fachowcami bo nigdy nie wiadomo czy nie ma innego prostszego sposobu:)

Pozdrawiam.

W dniu 27.10.2011 20:24, Viki pisze:

A czemu był żółwi ? Podłączałem pamięci DRAM 44256 do ATmega128 (obsługa sprzętowa jako zewnętrzny RAM) i do ATmega32 (obsługa programowa). W jednym i drugim przypadku odświeżanie na przerwaniach. Działało to jak burza, a wąskim gardłem to bardziej był uC niż pamięci.

Pozdrawiam Grzegorz

Ja uzyskałem transfer (obsługa programowa) coś ok. 200K. Zgadzam się że wąskim gardłem w tym przypadku jest procek, dlatego robię to obecnie na FPGA.

Pozdrawiam.

Użytkownik "Viki" snipped-for-privacy@gazeta.pl napisał w wiadomości news:j8c980$r41$ snipped-for-privacy@inews.gazeta.pl...

Tak, wybacz z pamięci pisałem.

To jest chyba najprostszy sposób, gdyż większość linii jest podłączona równolegle. Poza tym polecam jakąś książkę do przedmiotu "podstawy układów cyfrowych" dla studiów elektronicznych, albo informatycznych. Zapobiegnie to wielu sytuacjom, w których odkrywa się koło od nowa. Polecam np. "Podstawy elektroniki cyfrowej" Józefa Kalisza, z uwagi na niską cenę, częste uaktualnienia i przekrój począwszy od bramek logicznych aż do VHDL-a.

Jak już będziesz łączyć te pamięci równolegle zwróć uwagę na pojemności obciążające piny FPGA. Przy niskich prędkościach to nie będzie miało znaczenia, ale jakbyś chciał wykorzystać pełen potencjał kostek, to możesz musieć powstawiać bufory. Właśnie z tego powodu na płytach serwerowych mających wiele gniazd na pamięci trzeba stosować moduły buforowane.

pzdr. j.

In the darkest hour on Thu, 27 Oct 2011 20:33:46 +0200, Marcin Wasilewski snipped-for-privacy@adres.pl screamed:

Lubię to. ;-)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required