PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Memory Erweiterung für µC



Mobius
23.04.2005, 12:48
Hi!
Da ich seit geraumer Zeit mit der Idee spiele, die Memory-Blöcke, die ich aus einem 486er gerettet habe zu verbauen, habe ich mir endlich die Zeit genommen und ein Schaltplan zusammengebastelt, um 3 Stück eines 32X8 SRAMs mit möglichst wenigen Pins anzusteuern.

Gut, zu der Idee:
Ich habe ein Shift Register, der in beide Richtungen arbeitet (74LS299). Die Andresse wir durch zwei 8 bit D-Latches auf die Pins aller Speicher gelegt (14 bit addr, 1 bit bleibt unbenutzt). Der richtige Speicher wird durch zwei Datenleitungen ausgewählt und die Daten mit dem Shift Register wieder zum µC hinausgeschiftet (einach, indem ich den extension-Pin von diesem Benutzte, welches normalerweise da ist, um zwei oder mehrer solcher Register zu kombinieren).

Der Vorteil:
Das ganze nimmt "nur" einen Port in Anspruch und ist (mehr oder weniger) erweiterbar und anpassbar. In diesen Blöcken kann man z.b. Karten abspeichern, oder die Tastenschläge einer Tastatur, welche dann, wenn die Speicher voll sind in einem Zug auf eine Festplatte überspielt werden können.
Auch kann man statt SRAM-Blöcken auch EPROMs auf die gleiche Weise ansteuern und so große Mengen an statischen Daten abrufen (wie zum Beispiel, vorgefertigte Texte für Text-To-Speech chip oder SMS-Warnungen, Charakter Tabellen für LCDs, usw.)

Ideen, Bemerkungen, Kritik ist erwünscht ;)
MfG
Mobius

P.S.: Könnte bitte jemand, der gerade Lust und Zeit hat die Logik-Schaltung überprüfen? Eigentlich müsste es so gehen, doch vier (oder mehr) Augen sehen mehr und finden Fehler schneller. Danke ;)

P.P.S.: Ach, ja, wieso ich nicht einfach I²C-SRAMs kaufe? Weil die Kostenlos waren und ich Verschwendung hasse :D O:)

[edit:]
Bild upgedatet, nachdem ich bemerkt habe, dass ich statt NAND- AND-Gattern genommen habe... Irren ist menschlich... (mist, ich hätte mich nicht irren dürfen) :D

gerrylix
16.08.2005, 10:54
Ich find das die Schaltung ganz super funzt. Ich würd trotzdem den 19erPin beim IC2 nich offen lassen. Das is nie gut.
Is aber nur so ne Idee.

Ich hoffe ich hab auch nix übersehen.
Ich wünsch dir jetzt schon viel Spass beim Löten =D>

gerald

PicNick
16.08.2005, 16:21
Du wirst dir das schon überlegt haben. Ich sag nur, was mir auffällt:


Du shiftest 8 Bit als addr hi rüber auf der Data-bus
schaltest auf addr lo
Nochmal 8 Bit als addr lo auf der Data-bus

Dann enablest du die memory, und die legt jetzt IHRE Daten auf den Bus

Aber einer von den Latchen ist doch immer aktiv , dh. hieße, diese memorydaten ändern die adresse, was zum Chaos führen würden.

Was hab ich übersehen ?