mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bauteile für einfache MMU gesucht


Autor: Eric (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich hatte vor einen 64KB Adressraum (Z80) auf 1MB zu erweitern, indem 
ich die 4 höchstwertigen bits der Adresse an einen 16x8 bit RAM anlege 
(ähnlich wie hier beschrieben: MMU).

In der Theorie soweit kein Problem, aber es scheitert an den passenden 
Bauteilen: fast alle in frage kommenden Chips der 74er Reihe werden 
inzwischen nichtmehr hergestellt und sind nirgens erhältlich. Ich möchte 
möglichst auch keinen wesentlich größeren Chip benutzen, wo dann alles 
bis auf die ersten 16byte ungenutzt bleibt.

Der einzige noch verfügbare Chip in der Richtung den ich bis jetzt 
gefunden hab, ist der 74HC 670 (4x4bit register file) und die getrennten 
Daten Ein- und Ausgänge vereinfachen sogar die Ansteuerung, allerdings 
wären 8 davon + Kontrollschaltung für die 16x8bit nötig, doch etwas zu 
viel.

Hat jemand Ideen/Vorschläge, wie sich das möglichst elegant umsetzen 
lässt?

Autor: Winfried J. (Firma: Nisch-Aufzüge) (winne)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
74LS138
74HC138

Autor: Eric (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht wirklich das was ich gesucht hab. Zumindest wüsste ich nicht, wie 
ich das damit umsetzen sollte (Anhand der Adresse verschiedene Chips 
auswählen kann ich damit, aber es fehlt das eigentliche Problem: die 
Tabelle um die logische Adresse in eine physikalische umzusetzen.)

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

sollte es für deinen Zweck nicht einfacher sein die zusätzlichen 
Adressbits über OUT .. an einen Treiber mit Latch auszugeben, und so 
verschiedene Pages zu realisieren.

Sascha

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die übliche Methode ist ein CPLD, z.B. GAL20V8 als Adreßdekoder. Damit 
wird alles in 32kB-Häppchen aufgeteilt.
Die unteren 32kB bleiben immer gleich, für Stack, Interrupts usw. Und in 
die oberen 32kB wird dann über ein IO-Register eines der restlichen 
Häppchen eingeblendet.
Man muß also vor jedem Zugriff auf die oberen 32kB immer erstmal die 
richtige Page auswählen.
Es könnte allerdings schwer werden, nen C-Compiler zu finden, der 
Banking überhaupt unterstützt.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.