Chip select

Gast #70528
Hallo...

Ich habe vor an einen Atmega128 64kB SRAM dranzuhaengen. Nun ist es ja
so, dass die ersten 4kB nicht genutzt werden koennen, d.h. 4kB internes
SRAM + 60kB externes SRAM.
Der Addressdecoder vom Atmega128 erzeugt ja auch die Signale /RD und
/WR. Was ich meine: Wenn ich in den unteren 4kB bin, wird direkt
gelesen und dementsprechend oben.
Ich moechte aber noch ein Display+ein paar Latches ansteuern. Das
moechte ueber eine Adresse machen.
Wie kann ich jetzt das ganze aufbauen? Eine Addressdekodierung ist
wahrscheinlich Plicht (wenn man jetzt keine extra Port Pins dazu nutzen
moechte). Nur was fuer einen Trick gibt es um da jetzt noch ein Paar
Adressen zu bekommen, die ich fuer diesen Fall verbrachen koennte?

Danke.
Alex
Gast #70529
Hi.

Ich denke mal, dass es leider nicht ohne Einbußen beim externen
Speicher gehen wird.
Ich würd mir erstmal überlegen, ob du wirklich 60kB SRAM brauchst. Wenn
nicht, dann würd ich an deiner Stelle ein 32kB RAM nehmen und das auf
die Adressen 0x8000 - 0xFFFF legen. Dann hast du immerhin auch 32kB
externen Speicher und zusätzlich noch genügend Portleitungen um andere
Sachen über die Adresse selektieren zu können.

Konkret könnte es so ausschauen:
32kB SRAM:
  0x8000 - 0xFFFF
  höchstes Adressbit A15 über einen inverter als Chipselect fürs
  RAM verwenden.
sonstige Peripherie:
  Nimm nen 74xx138 (1-of-8 Decoder) und leg zum Beispiel die
  Addressleitungen A14,A13,A12 auf die 3 Steuerleitungen.
  Das Chipselect von deinem RAM gibst du noch auf einen Enable
  Eingang der High-Active ist - dann können das RAM und deine anderen
  Peripheriebausteine nicht gleichzeitig "chipselected" sein.

mfg
Andreas

--

Andreas Auer                    aauer1 (at) sbox.tugraz.at
Student of Telematics           http://home.pages.at/aauer1
Graz University of Technology

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.