Für Ausbildungszwecke programmiere ich gerade einen ATMega168, der in etwa einem GAL nahekommt (allerdings nur 6 Eingänge, 8 Ausgänge). Wie dieses Teil immer weiter fortschreitet (ich bin ja wirklich doof und ich meine das auch so), fällt mir ein: Die absoluten Freaks emulieren doch alles mit allem !!! Jetzt hab ich mal im Internet gesucht, ob es so etwas wie einen GAL-Emulator auf einem AVR gibt aber habe nichts gefunden. Mein Term-Interpreter ist schon relativ weit fortgeschritten, aber um der Ehrlichkeit willen hab ich jetzt schon fast keine Lust mehr daran weiter zu werkeln, weil es immer mehr wird. Können kann das Teil: - Jede Kommunikation läuft über RS-232, es wird auf PC-Seite ausser einem Terminalprogramm nichts weiter benötigt (smile somit sollte das Teil sogar noch mit einem C-64 bedienbar sein) - Eingabe der Terme, speichern und laden der Terme im EEPROM - Aktuelle Anzeige der Terme - Anzeigen der Wahrheitstabelle - Term in Normalform interpretieren und je nach Pegel der Logik entsprechend einen Ausgangspegel anfahren Jetzt kommen nur noch die Ausgangsflipflops und das gesteuerte invertieren der Ein- und Ausgänge (aaaaaaber wie gesagt, die Lust schwindet). ----------------------------------- Lange Rede kurzer Sinn: Kennt jemand so etwas oder hat jemand so etwas schon mal gesehen ? Gruß, Ralph
Ein GAL kann mit einem AVR (oder einem beliebigen anderen µC) nicht realistisch nachgeahmt werden, da es erheblich schneller ist. So ein GAL hat eine Durchlaufverzögerung von (je nach Ausführung) allerhöchstens 25 nsec, d.h. auf geänderte Eingänge reagiert es in dieser Zeit. Das ist mit einem µC schlichtweg unmöglich. Und 25 nsec ist ein Wert von Steinzeit-GALs, schnellere Exemplare sind mit herunter bis auf 3.5 nsec nochmal erheblich schneller. Ob Dein Software-Emulator sich eignet, ein GAL in einer realen Schaltung zu ersetzen, hängt also ganz stark davon ab, welche Aufgabe es in dieser Schaltung hat. Nur wenn es sehr langsame Logik ersetzt, besteht eine Chance, daß eine Emulation verwendbare Resultate liefert. In den meisten Fällen aber dürfte die Emulation gleich mehrere Größenordnungen zu langsam sein -- und das wird der Grund sein, warum sich damit auch kaum jemand beschäftigt.
... das weiß ich doch alles !!!! Es dreht sich darum als "Unterrichtsmaterial" einen GAL zu simulieren (der im Moment etwa eine Verarbeitungsgeschwindigkeit von 30 kHz hat) um: - KV Tafeln und Minimierung zu lernen - Boolsche Schaltalgebra im allgemeinen - OHNE spezielle Software (wie bspw. das veraltete ABEL) einen Term auf einen Chip zu bekommen - sehen, wie ein D-FlipFlop realisiert ist ... um dann mit handangelegten Einsen und Nullen die Reaktion des Terms auch direkt anzuzeigen (beispielsweise an einem mit Logik realisierten Binär zu 7-Segment Dekoder). Hierfür nimmt man logischerweise GAL's (smile oder heutzutage mittlerweile auch schon FPGA oder CPLD - und hat das zusätzlich zur restlichen Schaltung mit implementiert) Das hier ... soll ein reines Lernprojekt sein ! Hrmpf ! Ralph PS: ... es ist halt immer schön, wenn so etwas nicht nur in grauer Theorie, auf dem Papier oder auf dem Bildschirm funktioniert, sondern wenn die LED dann auch wirklich leuchtet wie sie soll !
PS PS: ich dachte mir halt: All die schönen PC-Simulationen, die eben auch einen GAL oder einen FPGA simulieren müssen doch in etwas programmiert gewesen sein, aller Wahrscheinlichkeit nach in C oder (damit es schneller geht) in Maschinensprache. Dadurch hätte ich mir eben ein bisschen an Arbeit ersparen können !
Ralph S. schrieb: > Es dreht sich darum als "Unterrichtsmaterial" einen GAL zu simulieren > (der im Moment etwa eine Verarbeitungsgeschwindigkeit von 30 kHz hat) Gut, das ist was anderes. Schöne Idee.
Ralph S. schrieb: > Lange Rede kurzer Sinn: Kennt jemand so etwas oder hat jemand so etwas > schon mal gesehen ? Einen alten Gal Assembler nehmen und verstehen? Quälcode dafür gibt es. Der hilft dir zumindest bei QMC.
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.