Forum: Mikrocontroller und Digitale Elektronik zwischen 2 speicherbänken umschalten mit chipselect


von Thomas K. (techmek)


Lesenswert?

Hallo,
da ich weder im Internet noch hier konkrete Informationen zu meinem 
Problem gefunden habe versuch ich´s direkt.


Gleich im Voraus meine Erklärung wird vermutlich ein ziemliches 
Durcheinander sein. Leider kann ich es nicht anders beschreiben.

Zu meinem Vorhaben:
Ich habe einen etwas in die Jahre gekommenen Yamaha SY77 
Synthesizer(jeder der Ihn kennt weis was er Wert ist).
Schon seit einiger Zeit versuche ich einen Weg zu finden zwischen den 
internen SRAM´s und ein paar(gleiche Anzahl, gleicher Typ) von mir 
selbst besorgten den CS umzuschalten. Ich bin kein Elektroniker aber bin 
bastlerisch veranlagt daher bitte verständniss für meine Frage.

Auf dem Board sind insgesamt 4 HM62256LP IC´s in 28 pin DIP Bauweise 
vorhanden wovon mind. 1 für Systemeinstellung und entweder 2 oder alle 
drei weiteren als Voicespeicher verwendet werden.

Ich hatte es schon hinbekommen das ich mithilfe eines 3 Wege Schalters 
immerhin schon zwischen 1 Paar IC´s umschalten konnte. 2 auf dem Board, 
2 weitere paralell zu diesen und Chipselect am 3 Wege Schalter, 
Schalterstellung 1 CS auf erstem Paar, Schalterstellung 2 CS auf 2 Paar.

Es waren nach jeweiligen Neustarten des Synthis immerhin schon 
unterschiedliche Voices jeweils auf den gleichen Speicherplätzen. Beim 
Umschalten im Betrieb ist der Synthi abgestürzt daher das neu 
einschalten.


Ich weis nicht mal genau wieviele von den IC´s konkret den Internen 
Voice Speicher beinhalten.
Das werd ich noch rausfinden.

Mein Ziel ist es die zusätzlichen SRAM´s(IC´s vermutlich 2 oder 3) 
paralell zu den vorhanden zu schalten und anhand des Chipselects 
zwischen diesen 2 Speicherbänken umzuschalten so das ich den internen 
Speicher zunächst einmal verdoppeln kann. Später vielleicht weitere 
paralell... Aber eins nach dem anderen.

Die eigentliche Frage:
Wie ist es möglich zwischen den 2 Bänken umzuschalten so das ich alle 2 
oder 3 CS Signale gleichzeitig auf die paralell verbauten IC´s 
umschalten kann. Am besten mit einem Taster.

Aber ich würde mich über jede weitere Hilfe freuen.

Vielen Dank fürs Lesen

Grüße
Thomas

von Achim M. (minifloat)


Lesenswert?

Thomas Koppany schrieb:
> Wie ist es möglich zwischen den 2 Bänken umzuschalten so das ich alle 2
> oder 3 CS Signale gleichzeitig auf die paralell verbauten IC´s
> umschalten kann. Am besten mit einem Taster.

Du brauchst...
1. einen Dekadenzähler
2. Invertierer
3. Oder-Gatter
... die gibt es alle aus der 74xxer Logikserie.

Der Zähler gibt an seinen Q-Ausgängen vor, welche Speicherbank aktiv 
sein soll. Die Q-Ausgänge werden logisch invertiert und mit den 
Original-CS-Signalen Oder-Verknüpft. Damit hast du CS-Signale, die nur 
aktiv werden, wenn sie selektiert sind. Warum negiert und dann ver|t und 
nicht ver&et? Das sind halt low-aktive Signale und ja, es gibt immer 
mindestens noch eine äquivalente Lösung. Ich hätt jetz nen kleinen CPLD 
hergenommen...

von oszi40 (Gast)


Lesenswert?

So ganz einfach wirds wohl nicht, da die zusätzlichen RAMs auch den Bus 
belasten? Inwiefern die Bustreiber oder die CPU das mitmacht wird wohl 
erst ein Versuch zeigen. Außerdem sollten sie zeitlich zu den anderen 
passen.

von Achim M. (minifloat)


Lesenswert?

Man könnte für die Voice-Dinger auch größere Speicher hernehmen, falls 
es das gibt. Dort muss dann nur die Adresse umgeschaltet werden.

von Thomas K. (techmek)


Lesenswert?

Wow !!!
Vielen Dank für all eure Antworten als erstes mal. Experimentieren werde 
ich auf jeden Fall noch(gehöre auf jeden Fall zu learning by doing 
Menschen).

Das mit der Bus Belastung habe ich gar nicht bedacht. Falls es 
tatsächlich ein Problem darstellt.

Größere RAM´s hatte ich mir schon überlegt aber erstens habe ich keine 
des gleichen Typs gefunden und andereseits wär dann doch der Adressraum 
größer wodurch das ohne Umwege auch nicht ginge... Oder??? ...

Mein Chef der in der Elektrobranche arbeitet hat gemeint das hier ein 
Multiplexer hilfreich wäre.

Wenn es weiter hilft könnte ich ein Datenblatt des Boards und ein Bild 
davon hier hochladen(Ich denke das würde gegen keine Regeln verstoßen) 
damit Ihr eine bessere Vorstellung habt.

Grüße
Thomas

von Thomas K. (techmek)


Lesenswert?

Noch etwas kurz. Hab vorher mal am CS an den IC´s Spannung gemessen. 
Merkwürdigerweise(für mich zumindest) liegt in jedem Zustand Spannung an 
den CS an(4,3 - 5 V). Egal ob Preset, Card oder Internal Speicher 
angewählt ist. Eigentlich hätte ich erwartet das zumindest im Card Modus 
am Synthi an den IC´s 0V anliegen würden.

Das andere ist das diese Speicher dem Datenblatt zufolge Low Aktiv sind. 
Das heist doch das 0V anliegen müsste wenn Zugriff erfolgt. Oder????

Vielleicht interpretier ich einige Sachen nicht ganz korrekt.
Muß am CS eigentlich ein kontniuirliches Signal anliegen? Entweder 
dauerhaft 0 oder dauerhaft 1(0V, 5V)?

Danke weiterhin.

von Jim M. (turboj)


Lesenswert?

Thomas Koppany schrieb:
> Muß am CS eigentlich ein kontniuirliches Signal anliegen?

Nein, das muss nur beim Zugriff anliegen. Ohne Oszi wird man nix sehen.

von Achim M. (minifloat)


Lesenswert?

Jim Meba schrieb:
> Ohne Oszi wird man nix sehen.

Doch, bei Zugriff 4,3V :)
Im zeitlichen Mittel wird das auch so stimmen.
Und ja, die CS sind typischerweise low-aktiv. Schau ruhig mal ins 
Datenblatt deiner Ramsteine.

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.