Podłączenie RAM 62256 do 89C51/52 Atmela: Jak korzystać z portów równocześnie?

51 i zewnętrzny RAM





Poprzedni Następny
Wiadomość
Spis treści
From: "Jarek" <jarek_a_at_nospam_interia.pl>
Subject: 51 i zewnętrzny RAM
Date: Thu, 24 Aug 2000 01:21:52 +0200


Witam
Czy do 89C51/52 Atmela mogę podpiąć zewnętrzny RAM (np 62256)
ale w taki sposób, abym mógł korzystać jednocześnie z portów
do których jest ona podpięta ? Oczywiście jako pamięć programu
byłby wykorzystywany wewnętrzny flash.
Jeśli jest to możliwe proszę o podpowiedz jak to zrobić.

Z góry dzięki

Jarek



Poprzedni Następny
Wiadomość
Spis treści
From: "Juliusz" <jul_at_nospam_fom.pl>
Subject: Re: 51 i zewnętrzny RAM
Date: Thu, 24 Aug 2000 01:58:58 GMT



"Jarek" <jarek_a_at_nospam_interia.pl> wrote in message
news:39a463d5$1_at_nospam_news.vogel.pl...
Witam
Czy do 89C51/52 Atmela mogę podpiąć zewnętrzny RAM (np 62256)
ale w taki sposób, abym mógł korzystać jednocześnie z portów
do których jest ona podpięta ? Oczywiście jako pamięć programu
byłby wykorzystywany wewnętrzny flash.
Jeśli jest to możliwe proszę o podpowiedz jak to zrobić.

62256 zajmie ci polowe przestrzeni adresowej. Masz najstarszy bit adresu
wolny. Nim bedziesz sterowal druga polowka twoich rejestrow. Trzeba tam dac
jakies zatrzaski chociazby w stylu 573, 373 czy cos podobnego. Dalej trzeba
zrobic arbitraz magistrali z dekoderem adresow. Najlepiej na GAL-u to zrobic
i sterowac nim wejscia /OE oraz zatrzaskiwania tych latchy. Z tym, ze jesli
juz decydujesz sie na PLD to lepiej CPLD i od razu wszystko wsadzic do
jednej kostki.

Zeby bylo prosciej to dla zewnetrznych rejesterow nie uzywasz mlodszych
linii adresowych, bo i po co. Wszystkie scalaki, za wyjatkiem pamieci, beda
uaktywniane jesli A(15)=1 plus dowolna kombinacja A[8..14], z ktorej bedzie
wynikalo do ktorego scalaka gadasz.

Oczywiscie A(15) musi takze blokowac SRAM poprzez chocizby sterowanie
sygnalem /CE pamieci.

Ja proponuje jednak generowac wlasne /RD i /WR SRAM-u (bramkowac je) w
zaleznosci od wystawionego adresu. Na wykresach timingow dokladnie widac
kiedy procesor wystawia adres, a kiedy odbywa sie zapis czy odczyt.
Wystarczy nie wystawic /RD czy /WR do pamieci i jej magistrala danych jest w
stanie "Z" lub zapis sie nie odbywa. Nawet nie trzeba uzywac /CE. Daj go na
stale do GND.

Zrob tak:

A[0..15] i dane podlacz do pamieci normalnie przez latcha
A[15..12] podlacz do wejsc GAL'a (chyba wystarczy adresow ?)
/WR, /RD podlacz tez do GAL'a
ALE podlacz do wejscia CLK GAL'a

Magistrale scalakow podlacz razem jak tam chcesz

Z GAL'a wyprowadz sygnaly do henszejkow pamieci i zatrzaskow - wszystkich.
Tylko /CE pamieci daj do masy na stale.

Jak to zrobisz to powiem ci co dalej :-)

Juliusz




Poprzedni Następny
Wiadomość
Spis treści
From: "Jarek" <jarek_a_at_nospam_interia.pl>
Subject: Re: 51 i zewnętrzny RAM
Date: Thu, 24 Aug 2000 22:11:51 +0200


Użytkownik Juliusz <jul_at_nospam_fom.pl> w wiadomości do grup dyskusyjnych
napisał:Cj%o5.10624$Yl4.242571_at_nospam_news.tpnet.pl...

Witam, dzieki za odpowiedz.

62256 zajmie ci polowe przestrzeni adresowej. Masz najstarszy bit adresu
wolny. Nim bedziesz sterowal druga polowka twoich rejestrow. Trzeba tam
dac
jakies zatrzaski chociazby w stylu 573, 373 czy cos podobnego. Dalej
trzeba
zrobic arbitraz magistrali z dekoderem adresow. Najlepiej na GAL-u to
zrobic
i sterowac nim wejscia /OE oraz zatrzaskiwania tych latchy. Z tym, ze
jesli
juz decydujesz sie na PLD to lepiej CPLD i od razu wszystko wsadzic do
jednej kostki.

Wynika z tego, ze bedzie to 573, GAL, SRAM.
Raczej niechetnie zastosowalbym GAL'a ze wzgledu
na pobor pradu, a poza tym nie znam sie na GAL'ach,
nie mowiac o CPLD.
Prosciej jako pamiec danych chyba zastosowac cos po IIC. (EEPROM)
(Wiem, ze duuuuuzo wolniej, ale chyba zdecydowanie wygodniej)

Zrob tak:

A[0..15] i dane podlacz do pamieci normalnie przez latcha
A[15..12] podlacz do wejsc GAL'a (chyba wystarczy adresow ?)
/WR, /RD podlacz tez do GAL'a
ALE podlacz do wejscia CLK GAL'a

Czy przy takim polaczeniu linie portow P0 i P2 mozna w programie
wykorzystywac jako wejscia albo wyjscia ?

Jak to zrobisz to powiem ci co dalej :-)

Dzieki !!! Jesli beda dostepne P0 i P2 bez zadnych konsekwencji
to chyba sie zdecyduje na takie rozwiazanie. Gdyby tylko
mozna bylo bez GAL'a :) Ma to byc rozwiazanie "na stale"
raczej bez przekonfigurowywanie calosci. Jak napisales SRAM
bylby w gornej polowce adresow. W dolnej pamiec programu
4k dla 89c51, 8k dla 89c52, 20k dla 89c55.
Wlasciwie to starczyloby w zupelnosci 6264.
Moze jest jakies proste rozwiazanie komutacji tego wszystkiego ?


Jarek



Poprzedni Następny
Wiadomość
Spis treści
From: "Juliusz" <jul_at_nospam_fom.pl>
Subject: Re: 51 i zewnętrzny RAM
Date: Fri, 25 Aug 2000 00:10:45 GMT


Dzieki !!! Jesli beda dostepne P0 i P2 bez zadnych konsekwencji
to chyba sie zdecyduje na takie rozwiazanie. Gdyby tylko
mozna bylo bez GAL'a :) Ma to byc rozwiazanie "na stale"
raczej bez przekonfigurowywanie calosci. Jak napisales SRAM
bylby w gornej polowce adresow. W dolnej pamiec programu
4k dla 89c51, 8k dla 89c52, 20k dla 89c55.
Wlasciwie to starczyloby w zupelnosci 6264.
Moze jest jakies proste rozwiazanie komutacji tego wszystkiego ?

Chyba nie rozumiesz jak dziala C51 :-) Tym bardziej nie rozumiesz co
napisalem :-) To jest Harward, ma osobno pamiec programu i pamiec danych.
P0 i P2 nie da sie uzywac tak sobie. Dotatkowe porty beda wirtualne w
przestrzeni adresowej pamieci danych i dostepne przez MOVX.
Bez GAL'a sie nie obejdzie, bo nie poradzisz sobie z layoutem PCB przy
zastosowaniu dwudziestu TTL-i

Moze wez AT-Mega 103. Ma wystarczajaco duzo pamieci i linii we/wy :-)

Juliusz




Poprzedni Następny
Wiadomość
Spis treści
From: tzurek_at_nospam_kki.net.pl (=?iso-8859-2?B?VG9tZWsgr/NyYXdza2k=?=)
Subject: =?iso-8859-2?Q?RE:_51_i_zewn=EAtrzny_RAM?=
Date: 25 Aug 2000 06:35:30 +0200


Na 20 TTL'ach to można zaadresować, ale pocztę do św. Mikołaja :))


-----Original Message-----
From: owner-pl-misc-elektronika_at_nospam_newsgate.pl
[mailto:owner-pl-misc-elektronika_at_nospam_newsgate.pl]On Behalf Of Juliusz
Sent: Friday, August 25, 2000 2:11 AM
To: pl-misc-elektronika_at_nospam_newsgate.pl
Subject: Re: 51 i zewnętrzny RAM


Dzieki !!! Jesli beda dostepne P0 i P2 bez zadnych konsekwencji
to chyba sie zdecyduje na takie rozwiazanie. Gdyby tylko
mozna bylo bez GAL'a :) Ma to byc rozwiazanie "na stale"
raczej bez przekonfigurowywanie calosci. Jak napisales SRAM
bylby w gornej polowce adresow. W dolnej pamiec programu
4k dla 89c51, 8k dla 89c52, 20k dla 89c55.
Wlasciwie to starczyloby w zupelnosci 6264.
Moze jest jakies proste rozwiazanie komutacji tego wszystkiego ?

Chyba nie rozumiesz jak dziala C51 :-) Tym bardziej nie rozumiesz co
napisalem :-) To jest Harward, ma osobno pamiec programu i pamiec danych.
P0 i P2 nie da sie uzywac tak sobie. Dotatkowe porty beda wirtualne w
przestrzeni adresowej pamieci danych i dostepne przez MOVX.
Bez GAL'a sie nie obejdzie, bo nie poradzisz sobie z layoutem PCB przy
zastosowaniu dwudziestu TTL-i

Moze wez AT-Mega 103. Ma wystarczajaco duzo pamieci i linii we/wy :-)

Juliusz



--
!!! Najlepszy ZEWNETRZNY modem w Polsce !!!
Modem ZyXEL Omni 56K za 272,95 zl http://www.promocja.kki.pl

--
Chcesz otrzymywac newsy poczta elektroniczna ? Sprawdz http://www.newsgate.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Tomek" <tlodek_at_nospam_polbox.com>
Subject: =?iso-8859-2?Q?Re:_51_i_zewn=EAtrzny_RAM?=
Date: Sat, 26 Aug 2000 10:13:33 GMT


zajrzyj na uklad Dallasa DS5000 (T) ma osobne magistrale do obslugi pamieci
przez co nie zajmuje portow PO i P2. Cena nie byla bardzo kosmiczna.

Pozdrawiam
Tomek