Forum: FPGA, VHDL & Co. Flash Bank-Switch


von Thomas (Gast)


Lesenswert?

Hallo,

ich möchte mit einem8-fach DIP-Switch das Bank-Switching machen. Wie
muss die Schaltung dazu aussehen ??

gruß, thomas

von Weihnachtsmann (Gast)


Lesenswert?

Hallo

Was willst du denn genau damit machen?

Gruss

Weihnachtsmann

von Thomas (Gast)


Lesenswert?

ich habe "ein" flash programm das verschiedene HW versionen und filter
verwendet. dieses müss aber vor programm start schon festgelegt sein. in
der anzeige steht dann von 00-FF alles, also alle 256 möglichkeiten der
8 DIP schalter. wie kann so etwas realisiert oder möglich sein. sind
doch nicht etwa 256 progs oder ??

gruß, thomas

von Thomas (Gast)


Lesenswert?

edit: also es steht je nach auswahl ein Hex wert (OO-FF)

von Jörn K. (joern)


Lesenswert?

Wie breit ist deine Adressbus bzw. wieviel Speicherplatz brauchst du für
deine HW Versionen und Filter?

von Thomas (Gast)


Lesenswert?

adressbus [21..0] Speicherplatz weiss ich leider nicht ... das programm
ist nur funktionsfähig compiliert vorliegend, ich das cpld im prinzip
kopieren, ist aber schriebgeschützt .. :(

von Thomas (Gast)


Lesenswert?

help

von Marius Schmidt (Gast)


Lesenswert?

ich verstehe nicht wo das Problem ist?

Nimm einfach deinen dip schalter und schließe ihn an die hohen address
pins des flash speichers an [21..13], dann verbinde [12..0] mit dem
gerät das code ausführen soll und fertig!

Dann hast du 256 pages zu je 4096 bytes die du per dip schalter
auswählen kannst, du musst nur sicherstellen, das das Gerät welches das
Programm ausführt beim umschalten auch reseted wird oder noch im reset
status ist.

von Thomas (Gast)


Lesenswert?

das gerät ist übrigens ein Gameboy und der benötigt Adresse[15:0] für
die Programmabfrage. Also hab ich nur 6 freie Leitung zur Verfügung.

von Marius Schmidt (Gast)


Lesenswert?

Was genau baust du denn? eine flash karte für deinen gameboy? Warum
benutzt du noch einen alten gameboy? der GBA ist viel besser und
einfacher zu programmieren :P

Naja egal, also wenn er soviel Addressraum benötigt kannst du halt nur
64 bänke machen und brauchst einen 6-fach DIP-Schalter oder du nimmst
einen größeren Speicher der mehr address-leitungen hat. Dein Speicher
scheint ja 2 Mb groß zu sein und jedes gameboy ROM ist dann 32kb groß
(32kb * 64 bänke = 2048kb)

Das Prinzip ist halt das du die hohen address-signale über schalter
anwählst um damit die pages um zu schalten, der Gameboy bekommt davon
nix mit und befindet sich dann auf einmal ganz woanders im Speicher
ohne es zu merken, deshalb bekommst du bestimmt auch ganz lustige
Ergebnisse wenn du während des Betriebes die DIP-Schalter betätigst ;)

Ich bin selber dabei eine Speicherkarte für einen Pokemon Mini zum
laufen zu bekommen (http://pokeme.shizzle.it/), das ist noch etwas
komplizierter dank multiplexed address bus.
Bankswitching hat die zwar noch nicht aber ich möchte das im CPLD
machen, den ich bereits für das ent-multiplexing benutze, weil das halt
eleganter ist als DIP-Schalter (bei einer CPLD lösung muss das
Bankswitching aber auch im Programm-Code erfolgen, zB durch eine
Kombination aus mehreren Lese- und Schreibzugriffen (So wird das
normalerweise gehandhabt)).

von Thomas (Gast)


Lesenswert?

1: Ich nutze den GBA
2: Ich nutze den GBA mit multiplexed Bus (funktioniert)
3: Ich weiss nicht, ob die DIP-Schalter  bei meinem (ich habe nur eine
kompilierte Fassung) Programm was mit dem Bank-Switching zu tun haben
oder wozu die dienen. Ich weiss nur, dass sie alle 8 irgendetwas
bewirken und zwar umschaltung von filtern, HW-Versionen, Flash-Burner
starten etc .... und auch beim aufstarten nach dem GB Logo eine
unterschiedlich Version anzeigen (Ox XX, also von 00-FF)

Gruß, thomas

von Marius S. (lupin) Benutzerseite


Lesenswert?

tja dann kann ich dir auch nicht weiter helfen. warum willst du dir
sowas überhaupt selber bauen? es gibt doch gute GBA flash karten für
wenig geld. Ich hatte mal eine F2A Ultra 256 mbit karte, aber die hab
ich irgendwie zusammen mit meinen GBA verloren :(

von Thomas (Gast)


Lesenswert?

sowas kann man nicht kaufen ... ich will doch daten von extern da rein
bringen !! und dann zB als tacho usw an mein fahrrad bauen !!

gruß, thomas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.