Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.sci.electronics > #210648 > unrolled thread

Simulator für PAL/GAL

Started byChristian Zietz <newsgroup.1001@chz.xyz>
First post2016-07-03 21:19 +0200
Last post2016-07-04 10:14 +0000
Articles 11 — 7 participants

Back to article view | Back to de.sci.electronics


Contents

  Simulator für PAL/GAL Christian Zietz <newsgroup.1001@chz.xyz> - 2016-07-03 21:19 +0200
    Re: Simulator für PAL/GAL Johann Klammer <klammerj@NOSPAM.a1.net> - 2016-07-04 00:33 +0200
      Re: Simulator für PAL/GAL Christian Zietz <newsgroup.1001@chz.xyz> - 2016-07-04 18:07 +0200
    Re: Simulator für PAL/GAL "MaWin" <me@private.net> - 2016-07-04 01:15 +0200
      Re: Simulator für PAL/GAL Christian Zietz <newsgroup.1001@chz.xyz> - 2016-07-04 21:06 +0200
        Re: Simulator für PAL/GAL Hanno Foest <hurga-news2@tigress.com> - 2016-07-04 22:39 +0200
      Re: Simulator für PAL/GAL Christian Zietz <newsgroup.1001@chz.xyz> - 2016-07-04 18:13 +0200
        Re: Simulator für PAL/GAL Hanno Foest <hurga-news2@tigress.com> - 2016-07-04 19:05 +0200
    Re: Simulator für PAL/GAL Gerhard Hoffmann <ghf@hoffmann-hochfrequenz.de> - 2016-07-04 09:25 +0200
      Re: Simulator für PAL/GAL R.Kiefer.SPAEM@gmx.de (Ralf Kiefer) - 2016-07-04 15:31 +0200
    Re: Simulator für PAL/GAL "Peter Heitzer" <peter.heitzer@rz.uni-regensburg.de> - 2016-07-04 10:14 +0000

#210648 — Simulator für PAL/GAL

FromChristian Zietz <newsgroup.1001@chz.xyz>
Date2016-07-03 21:19 +0200
SubjectSimulator für PAL/GAL
Message-ID<dtt6qcFplk4U1@mid.individual.net>
Hallo,

ich habe ein PAL auf einer alten Platine reverse-engineered. Natürlich
war die Security-Fuse durchgebrannt, sodass ich aus dem Verhalten,
beobachtet mit einem Logikanalyzer, Rückschlüsse ziehen musste.

Ich denke, ich habe die korrekten Gleichungen gefunden, würde das aber
gerne verifizieren. Gibt es einen handlichen Simulator für PALs/GALs?
(Bevorzugt ohne eine riesige CPLD-Entwicklungsumgebung herunterladen zu
müssen, die nebenbei auch noch PAL/GAL beherrscht.) Ich stelle mir vor,
die Eingangssignale, die ich gemessen habe, der Simulation vorzusetzen,
um zu sehen, ob meine aufgestellten Gleichungen dieselben
Ausgangssignale produzieren wie in der Realität.

Grüße
Christian
-- 
Christian Zietz  -  CHZ-Soft  -  czietz (at) gmx.net
WWW: http://www.chzsoft.de/
PGP/GnuPG-Key-ID: 0x52CB97F66DA025CA / 0x6DA025CA

[toc] | [next] | [standalone]


#210655

FromJohann Klammer <klammerj@NOSPAM.a1.net>
Date2016-07-04 00:33 +0200
Message-ID<nlc3sn$478$1@gioia.aioe.org>
In reply to#210648
On 07/03/2016 09:19 PM, Christian Zietz wrote:
> Hallo,
> 
> ich habe ein PAL auf einer alten Platine reverse-engineered. Natürlich
> war die Security-Fuse durchgebrannt, sodass ich aus dem Verhalten,
> beobachtet mit einem Logikanalyzer, Rückschlüsse ziehen musste.
> 
> Ich denke, ich habe die korrekten Gleichungen gefunden, würde das aber
> gerne verifizieren. Gibt es einen handlichen Simulator für PALs/GALs?
> (Bevorzugt ohne eine riesige CPLD-Entwicklungsumgebung herunterladen zu
> müssen, die nebenbei auch noch PAL/GAL beherrscht.) Ich stelle mir vor,
> die Eingangssignale, die ich gemessen habe, der Simulation vorzusetzen,
> um zu sehen, ob meine aufgestellten Gleichungen dieselben
> Ausgangssignale produzieren wie in der Realität.
> 
> Grüße
> Christian
> 
<https://github.com/ezrec/galpal>
..und icarus verilog...
geht mit 22V10 16R8... definitiv weiss Ich nur dass dass 22V10 geht, 
16R8 hab' ich nicht versucht..
..du hast nicht gesagt welches PAL? 

es gab auch noch was in python...
galemu glaube ich...
Da musste man einen tabulator vor dem stimulus haben, sonst hat er 
den input nicht gesehen. 
<http://freecode.com/projects/galemu>
weiss nicht ob das inzwischen besser ist...

[toc] | [prev] | [next] | [standalone]


#210693

FromChristian Zietz <newsgroup.1001@chz.xyz>
Date2016-07-04 18:07 +0200
Message-ID<dtvfteF2o7gU1@mid.individual.net>
In reply to#210655
Johann Klammer schrieb:

> ..du hast nicht gesagt welches PAL? 

PAL16L8, also rein kombinatorische Logik, aber mit der Tücke, dass ein
Ausgang auch wieder in die Eingangsmatrix zurückgeführt wird. Damit muss
der jeweilige Simulator also klarkommen.

Ich gucke mir Deine Vorschläge und die der anderen Mal an, vielen Dank.

Grüße
Christian
-- 
Christian Zietz  -  CHZ-Soft  -  czietz (at) gmx.net
WWW: http://www.chzsoft.de/
PGP/GnuPG-Key-ID: 0x52CB97F66DA025CA / 0x6DA025CA

[toc] | [prev] | [next] | [standalone]


#210657

From"MaWin" <me@private.net>
Date2016-07-04 01:15 +0200
Message-ID<nlc6aa$cra$1@news.albasani.net>
In reply to#210648
"Christian Zietz" <newsgroup.1001@chz.xyz> schrieb im Newsbeitrag 
news:dtt6qcFplk4U1@mid.individual.net...

> Ich denke, ich habe die korrekten Gleichungen gefunden, würde das aber
> gerne verifizieren.

Vielleicht hilft:
http://dreamjam.co.uk/emuviews/elec/pal.php
http://dreamjam.co.uk/emuviews/pal/index.html
-- 
MaWin, Manfred Winterhoff, mawin at gmx dot net
Homepage http://www.oocities.org/mwinterhoff/
dse-FAQ: http://dse-faq.elektronik-kompendium.de/

[toc] | [prev] | [next] | [standalone]


#210685

FromChristian Zietz <newsgroup.1001@chz.xyz>
Date2016-07-04 21:06 +0200
Message-ID<dtvqeeF4vrfU1@mid.individual.net>
In reply to#210657
Hanno Foest schrieb:

> Am 04.07.2016 18:13 schrieb Christian Zietz:
>> Die Schwierigkeit bei meinem PAL ist allerdings, dass ein Ausgang wieder
>> in die Eingangsmatrix zurückgeführt ist.

> Das war mein Test-PAL (aus einem +D Disketteninterface für den Sinclair 
> ZX Spectrum) damals auch. Alle Eingangswerte durchpermutieren lassen, 
> und dann auf mehreren Metern Matrixausdruck schauen, ab wann sich etwas 
> permanent ändert. Der Rest war etwas scharfes nachdenken :)

Dann war Dein PAL so zurückgekoppelt, dass es anfängt zu schwingen, also
sowas wie Out = !Out ? Das ist in meinem Fall anders, dort hält sich der
Ausgang selbst "high". Vereinfacht gesagt steht dort offenbar folgendes
drin:

Out = (Bedingung1 && Out) || (Bedingung2).

Solange Bedingung1 nicht erfüllt ist, folgt der Ausgang Bedingung2. Ist
Bedingung1 jedoch erfüllt, geht der Ausgang zwar mit Bedingung2 auf
"high" aber ggf. erst mit Bedingung1 wieder auf "low".

> Später hab ich dann noch mal PROMs zu GAL konvertiert, erst mit einem 
> Programm für Quine-McCluskey und später noch mal mit dem "Espresso 
> heuristic logic minimizer". Ein steinaltes DOS-Programm, was auf 
> heutigen Rechnern bzw. Emulatoren praktisch verzögerungsfrei das 
> Resultat liefert.

Espresso -- aber die Windows-Version -- habe ich auch verwendet und
Minilog, das wohl denselben Algorithmus eingebaut hat aber manchmal
schönere Lösungen gefunden hat. Bloß: Mit sowas wie oben geschildert
kommen die nicht klar.

Christian
-- 
Christian Zietz  -  CHZ-Soft  -  czietz (at) gmx.net
WWW: http://www.chzsoft.de/
PGP/GnuPG-Key-ID: 0x52CB97F66DA025CA / 0x6DA025CA

[toc] | [prev] | [next] | [standalone]


#210700

FromHanno Foest <hurga-news2@tigress.com>
Date2016-07-04 22:39 +0200
Message-ID<dtvvrnF64j3U1@mid.individual.net>
In reply to#210685
Am 04.07.2016 um 21:06 schrieb Christian Zietz:

>> Das war mein Test-PAL (aus einem +D Disketteninterface für den Sinclair
>> ZX Spectrum) damals auch. Alle Eingangswerte durchpermutieren lassen,
>> und dann auf mehreren Metern Matrixausdruck schauen, ab wann sich etwas
>> permanent ändert. Der Rest war etwas scharfes nachdenken :)
>
> Dann war Dein PAL so zurückgekoppelt, dass es anfängt zu schwingen, also
> sowas wie Out = !Out ?

Nee, ich wüßte jetzt auch nicht, wozu das gut sein könnte.

Da war einfach ein Flipflop in Gattern implementiert. Bei Ansprechen 
einer bestimmten Adresse wurde es gesetzt, und bei Ansprechen einer 
bestimmten anderen Adresse zurückgesetzt. Alle anderen Adressen ließen 
es unbeeindruckt. Zeil der Übung: Einblenden eines externen (EP)ROM 
anstelle es im Rechner eingebauten System-ROMs als Befehlserweiterung. 
Die eine Adresse blendet es ein, die andere wieder aus.

>> Später hab ich dann noch mal PROMs zu GAL konvertiert, erst mit einem
>> Programm für Quine-McCluskey und später noch mal mit dem "Espresso
>> heuristic logic minimizer". Ein steinaltes DOS-Programm, was auf
>> heutigen Rechnern bzw. Emulatoren praktisch verzögerungsfrei das
>> Resultat liefert.
>
> Espresso -- aber die Windows-Version -- habe ich auch verwendet und
> Minilog, das wohl denselben Algorithmus eingebaut hat aber manchmal
> schönere Lösungen gefunden hat. Bloß: Mit sowas wie oben geschildert
> kommen die nicht klar.

Klar. Aber mit einer reinen Speichermatrix wie der eines PROM kann man 
eh keine Flipflops bauen.

In der c't fand man weiland Kleinanzeigen von Leuten, die 
PAL-Reverseengineering angeboten haben. Ich hab mich immer gefragt, ob 
die Leute eine entsprechende (selbstgeschriebene?) Soft benutzt, oder 
das halbautomatisch mit scharfem Draufgucken erledigt haben. 
Einschränkungen wie "rein kombinatorische Logik" standen zumindest nicht 
dabei.

Hanno

[toc] | [prev] | [next] | [standalone]


#210688

FromChristian Zietz <newsgroup.1001@chz.xyz>
Date2016-07-04 18:13 +0200
Message-ID<dtvg8rF2rs1U1@mid.individual.net>
In reply to#210657
MaWin schrieb:

> Vielleicht hilft:
> http://dreamjam.co.uk/emuviews/elec/pal.php
> http://dreamjam.co.uk/emuviews/pal/index.html

Ah, das kannte ich nicht. Ich habe mir einen einfacheren, weniger
universellen Aufbau selbstgebaut. Anhand des Schaltplans ließ sich
sagen, welche Pins Ein- und Ausgänge sind. So konnte ich die Eingänge
über einen Zähler mit sämtlichen möglichen Bitpattern versorgen, wie es
die obige Schaltung auch (automatisiert) macht.

Die Schwierigkeit bei meinem PAL ist allerdings, dass ein Ausgang wieder
in die Eingangsmatrix zurückgeführt ist. Damit kommen die Programme, mit
denen ich aus den Pattern die (minimierten) Logikgleichungen
rekonstruiert habe, nicht gut zurecht. Ich vermute, das gilt für das
obige Programm auch. Ich schaue es mir trotzdem mal genauer an, vielen Dank.

Grüße
Christian
-- 
Christian Zietz  -  CHZ-Soft  -  czietz (at) gmx.net
WWW: http://www.chzsoft.de/
PGP/GnuPG-Key-ID: 0x52CB97F66DA025CA / 0x6DA025CA

[toc] | [prev] | [next] | [standalone]


#210710

FromHanno Foest <hurga-news2@tigress.com>
Date2016-07-04 19:05 +0200
Message-ID<dtvja9F3g2nU1@mid.individual.net>
In reply to#210688
Am 04.07.2016 18:13 schrieb Christian Zietz:

> Ah, das kannte ich nicht. Ich habe mir einen einfacheren, weniger
> universellen Aufbau selbstgebaut. Anhand des Schaltplans ließ sich
> sagen, welche Pins Ein- und Ausgänge sind. So konnte ich die Eingänge
> über einen Zähler mit sämtlichen möglichen Bitpattern versorgen, wie es
> die obige Schaltung auch (automatisiert) macht.

Ich hab ähnliches mal mit einem Kommilitonen vor so 25 Jahren gemacht. 
Die Hardware war ein "universeller IC-Tester", IIRC von ELV.

> Die Schwierigkeit bei meinem PAL ist allerdings, dass ein Ausgang wieder
> in die Eingangsmatrix zurückgeführt ist. Damit kommen die Programme, mit
> denen ich aus den Pattern die (minimierten) Logikgleichungen
> rekonstruiert habe, nicht gut zurecht.

Das war mein Test-PAL (aus einem +D Disketteninterface für den Sinclair 
ZX Spectrum) damals auch. Alle Eingangswerte durchpermutieren lassen, 
und dann auf mehreren Metern Matrixausdruck schauen, ab wann sich etwas 
permanent ändert. Der Rest war etwas scharfes nachdenken :)

Später hab ich dann noch mal PROMs zu GAL konvertiert, erst mit einem 
Programm für Quine-McCluskey und später noch mal mit dem "Espresso 
heuristic logic minimizer". Ein steinaltes DOS-Programm, was auf 
heutigen Rechnern bzw. Emulatoren praktisch verzögerungsfrei das 
Resultat liefert.

Hanno

[toc] | [prev] | [next] | [standalone]


#210664

FromGerhard Hoffmann <ghf@hoffmann-hochfrequenz.de>
Date2016-07-04 09:25 +0200
Message-ID<dtuhaqF2qr2U1@mid.individual.net>
In reply to#210648
Am 03.07.2016 um 21:19 schrieb Christian Zietz:
> Hallo,
>
> ich habe ein PAL auf einer alten Platine reverse-engineered. Natürlich
> war die Security-Fuse durchgebrannt, sodass ich aus dem Verhalten,
> beobachtet mit einem Logikanalyzer, Rückschlüsse ziehen musste.
>
> Ich denke, ich habe die korrekten Gleichungen gefunden, würde das aber
> gerne verifizieren. Gibt es einen handlichen Simulator für PALs/GALs?
> (Bevorzugt ohne eine riesige CPLD-Entwicklungsumgebung herunterladen zu
> müssen, die nebenbei auch noch PAL/GAL beherrscht.) Ich stelle mir vor,
> die Eingangssignale, die ich gemessen habe, der Simulation vorzusetzen,
> um zu sehen, ob meine aufgestellten Gleichungen dieselben
> Ausgangssignale produzieren wie in der Realität.


WIMRE konnte der PALASM von MMI / AMD / TI / NS / Lattice die
Gleichungen auch simulieren (oder die Parallelprodukte)

Ich habe damals hauptsächlich CUPL benutzt oder LOG/IC von
Isdata ??? aus .de

Die gängigen Pal-Programmer konnten die Testvektoren auch an
die programmierten Chips anlegen und durchexerzieren.

Wenn man die Gleichungen hat ist es auch keine grosse Sache mehr
das in VHDL umzuformulieren.

Gruß, Gerhard


[toc] | [prev] | [next] | [standalone]


#210686

FromR.Kiefer.SPAEM@gmx.de (Ralf Kiefer)
Date2016-07-04 15:31 +0200
Message-ID<1mpvbom.15c1lkf754etN%R.Kiefer.SPAEM@gmx.de>
In reply to#210664
Gerhard Hoffmann wrote:

> Ich habe damals hauptsächlich CUPL benutzt oder LOG/IC von
> Isdata ??? aus .de

LOG/iC existiert noch, ist frei verfügbar (damals ein richtig teures
Produkt), hat aber ein paar kleine Tücken in einer neueren
Windows-Umgebung. 8.3 ist zwingend notwendig, eben der
Betriebssystem-Standard. Und den Anweisungen aus dem "Install_ger" ist
Folge zu leisten. Zusatz: das "Ausführen in" muß sehr kurz sein. Lange
Pfadnamen sind nicht vorgesehen.

Ich habe es gerade probiert, aber irgendwas ist ja immer: weitere
merkwürdige Fehlermeldungen. Vielleicht sollte ich es auf einer
Windows-95-Kiste, also unter MS-DOS einrichten.

Gruß, Ralf

[toc] | [prev] | [next] | [standalone]


#210677

From"Peter Heitzer" <peter.heitzer@rz.uni-regensburg.de>
Date2016-07-04 10:14 +0000
Message-ID<dtur7iF1kc2U1@mid.individual.net>
In reply to#210648
Christian Zietz <newsgroup.1001@chz.xyz> wrote:
>Hallo,

>ich habe ein PAL auf einer alten Platine reverse-engineered. Natürlich
>war die Security-Fuse durchgebrannt, sodass ich aus dem Verhalten,
>beobachtet mit einem Logikanalyzer, Rückschlüsse ziehen musste.

>Ich denke, ich habe die korrekten Gleichungen gefunden, würde das aber
>gerne verifizieren. Gibt es einen handlichen Simulator für PALs/GALs?
>(Bevorzugt ohne eine riesige CPLD-Entwicklungsumgebung herunterladen zu
>müssen, die nebenbei auch noch PAL/GAL beherrscht.) Ich stelle mir vor,
>die Eingangssignale, die ich gemessen habe, der Simulation vorzusetzen,
>um zu sehen, ob meine aufgestellten Gleichungen dieselben
>Ausgangssignale produzieren wie in der Realität.
Vielleicht
http://www.atmel.com/tools/WINCUPL.aspx
(keine Ahnung, ob unter neuerem als WinXP lauffähig)
oder 
PALASM 
PALASM ist eine reine DOS Software, die aber unter DOSBox 
(https://www.dosbox.com/) laufen sollte.

-- 
Dipl.-Inform(FH) Peter Heitzer, peter.heitzer@rz.uni-regensburg.de

[toc] | [prev] | [standalone]


Back to top | Article view | de.sci.electronics


csiph-web