Guten Abend, Ich bin neu hier im Forum da ich mich in meiner Freizeit vermehrt wieder mit Eproms und Microcontroller beschäftige. Im Rahmen meines Studiums habe ich einige Berührungspunkte in diesen Bereichen gehabt. Nun ist das schon einige Zeit her und meine Kenntnisse sind etwas eingerostet. Aktuell möchte ich ein Kleines Projekt umsetzten bei dem ich ein paar Probleme habe. Ich möchte gerne ein Eprom mit der Kennung 27C512 umschalten. Dabei dachte ich daran mir einen 2. parallel zu diesem anzuschließen. Meine Frage ist, wie würdet ihr das realisieren und welchen Eingang müsste ich wie schalten. Leider sind mir die Kennung der einzelnen Eingänge nicht mehr ganz geläufig und ich erhoffe mir ein paar gute Ansätze. Freundliche Grüße Manu
Nennt sich chip enable und ist low aktiv. Theoretisch kann man zwei Chips huckepack machen und den CE dann schaltbar. Der andere inaktive wird dann gegen VCC gezogen. https://www.futurlec.com/Memory/27C512-100.shtml
:
Bearbeitet durch User
Wie meinen? Was willst Du tun? Meinst Du einen Adressdekoder, der den /CS des jeweiligen Eproms aktiviert? Manuel ". schrieb: > Leider sind mir die Kennung der einzelnen Eingänge nicht mehr ganz > geläufig Da hat man mal was ganz geniales eingeführt. Nennt sich 'Datenblatt'
Die andere Lösung wäre der 27C010/27C1001. Pin-Kompatibel mit größerem Gehäuse. Etwas zusätzliche Verdrahtung und fertig.
Ich habe mir das mit dem huckepack auch so gedacht. Also einen 3 polligen Stecker mit gemeinsamer Masse und dann schaltbar auf die beiden einzelnen CE. Das müsste also funktionieren. Das Datenblatt habe ich mir dafür schon angeguckt und musste feststellen das ich mit den einzelnen Bezeichnungen der Ausgänge nicht mehr ganz klar komme. Die Lösung die Dennis geschrieben hat ist mir derzeit leider zu hoch. Sie ist mit Sicherheit aber die elegantere Lösung
Manuel ". schrieb: > Das Datenblatt habe ich mir dafür schon angeguckt und musste feststellen > das ich mit den einzelnen Bezeichnungen > der Ausgänge nicht mehr ganz klar komme. eigentlich sollte dich nur /CE oder auch mal /CS genannt interessieren. bei low = 0V ist er ON, bei high = 5V ist er OFF also 2 pullups 1k bis 4,7k (oder 4,7k bis 10k nach Geschmack) vom /CE (oder /CS) nach +5V, der gewählte bekommt per Umschalter (1x UM) seine Leitung auf die ankommende /CS Leitung geschaltet, also kommendes /CS geht entweder auf EPROM1 oder EPROM2
1 | +5V |
2 | |
|
3 | ---
|
4 | | | R1 +5V |
5 | --- | |
6 | 1xUM_____|_____ /CS EPROM1 --- |
7 | / | | R2 |
8 | /CS kommt----- --- |
9 | ______________________________|________ /CS EPROM2 |
10 | |
11 | oder umgeschaltet |
12 | +5V |
13 | |
|
14 | ---
|
15 | | | R1 +5V |
16 | --- | |
17 | 1xUM_____|_____ /CS EPROM1 --- |
18 | | | R2 |
19 | /CS kommt----- --- |
20 | \______________________________|________ /CS EPROM2 |
Die eigentliche Frage: möchtest du vor Programmstart wählen, ob ROM1 oder ROM2 aktiv ist? Das ist i.a. sehr einfach. Oder möchtest du im laufenden Betrieb umschalten (beide Speicher das gleiche Programm, aber unterschiedliche Daten)? Letzteres ist etwas komplizierter und muss synchronisiert werden. Sowas wurde früher (tm) gerne z.B. in Autosteuergeräten gemacht, um mit verschieden Kennfeldern zu fahren.
Google nach "bank switching" z.B. beim C64. Ist die gleiche Technik, wurde dort verwendet um die ROMs in den RAM-Bereich einzublenden weil der 6510 nur 64K Speicher adressieren kann. Dadurch kann das Basic nur etwa 38K RAM verwenden, Spiele hingegen blenden das ROM sofort aus um den vollen RAM-Bereich nutzen zu können.
> Die Lösung die Dennis geschrieben hat ist mir derzeit leider zu hoch. > Sie ist mit Sicherheit aber die elegantere Lösung Der > der 27C010/27C1001 hat ein Adresspin mehr als der 27C512. Legt man da Low dran, kommt der Inhalt aus dem "unteren" Bereich des EPROM. Mit einem High da dran, der "obere" Bereich. So als wenn man zwei 27C512 haette. Nur sollte man waehrend der Rechner laeuft, daran natuerlich nicht herumschalten... Mit noch groesseren ERPROMs/Flash-ROMs kann man dann noch mehr "Baenke" vor dem Start auswaehlen. Wenn man nicht Huckepack-Loeten will, sicher die elegantere Alternative.
Vielen dank für die schnellen und auch hilfreichen antworten. Damit habe ich nicht gerechnet. Mein Vorhaben bezieht sich auf ein Vorgewähltes Eprom vor dem Programstart. Es dreht sich dabei um ein altes Steuergerät aus meinem Auto. Ich werde es die Tage mal zusammensetzten und gerne Berichten. Die variante bank switching klingt Interessant aber dafür reichen meine Kenntnisse leider noch nicht aus ;)
Man kann einen beliebig größeren Flash nehmen und dann die höheren Adreßleitungen umschalten. In der Regel macht die CPU Mumpitz, wenn man ihr den Programmspeicher unter den Füßen wegzieht, daher ist ein Reset danach sinnvoll. Ein Flash ist deutlich billiger als ein EPROM und einfacher zu brennen (keine UV-Lampe nötig).
Wenn Du die Timings beim Umschalten der Bänke beachtest oder evtl.
Waitstates einfügst wenn nötig, macht die CPU auch keinen Mumpitz. Wenn
man das richtig programmiert und die Umschalt-Sequenzen in allen EPROMs
an gleicher Stelle liegen, kann man auch einen aktiven Programm-EPROM
umschalten, ohne daß die CPU das bemerkt. Sollte die CPU schon sowas wie
eine Pipeline haben, muß die natürlich verworfen und neu geladen werden.
> ich brauchte zum Brennen nie eine UV Lampe, wie macht man das?
Mit Benzin, ist doch logisch! ;)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.