Hello, Guest the thread was called5.2k times and contains 58 replays

last post from HofMar at the

Unterschiedliche PLA Versionen bei CBM-II 600er und 700er Serie!?

  • Die Prüfsumme, die mein Brenner bei der -05 errechnet hat, entspricht aber der, die Commodore aufgedruckt hat.
    Das wird doch eher kein zufall sein, oder ?


    Zumindest die selbst erzeugten Dateien kann das Ding ja offenbar fehlerfrei brennen,
    die -04, die ich damit gebrannt habe funktioniert ja im CBM 610.


    Ja, das würde ich auch erst einmal so sehen. Die Prüfsumme 62E5 wäre demnach für ein 906114-05 bestätigt.


    Auf dem 906114-04 steht die Prüfsumme 649B drauf. Ich komme auf 6015 mit den gleichen Gleichungen aber dem Layout entsprechend geänderten Pins. Ist das auch Deine berechnete Prüfsumme?


    Die wesentlich geringere Prüfsumme könnte durch das Entfernen von evtl. deaktivierten Termen entstehen. Gesetzt der Fall es gab bei der Eintwicklung Probleme, wonach es Änderungen gab, können nicht mehr benötige - weil durch neue Terme ersetzte - deaktiviert werden. Diese zählen dann jedoch weiterhin in der Prüfsumme mit.


    Dies wurde bei der C64 PLA auch gemacht (siehe Fuses 320 bis 359 und 1160 bis 1199).


    Wurde nun mal eine "Bereinigung" durchgeführt, könnten diese deaktivierten Terme gänzlich entfallen sein. Die Prüfsumme ändert sich, die Funktion jedoch nicht. Da die Funktion gleich blieb wurde evtl. die nun falsche Prüfsumme beibehalten.


    Wäre eine, wenn auch merkwürdige, Erklärung ...

  • Hallo Martin,
    an der Stelle wird's wirklich interessant, denn:
    Die Prüfsumme, die mein ALL-03 beim Auslesen der PLA aus dem 610er erzeugt hat ist ... 6015.
    Damit sehe ich die ausgelesene JEDEC-Datei auch einfach mal als bestätigt an.


    Wie Commodore zu der aufgedrucken Prüfsumme gekommen ist, werden wir wohl nie erfahren.

  • Wie Commodore zu der aufgedrucken Prüfsumme gekommen ist, werden wir wohl nie erfahren.


    Prinzipiell hast Du damit leider Recht. :( Da gibt es dann nur zwei Möglichkeiten:
    1) Wir finden eine plausible Fusemap mit genau der aufgedruckten Prüfsumme entspricht (womit wir weiterhin keine richtige Bestätigung haben) oder
    2) wir finden einen (evtl. älteren) 906114-04, welcher noch die Fusemap mit der aufgedruckten Fusemap beinhaltet. Man müßte also alle ällteren 600er Boards mal abklappern.


    Das bei dem 906114-04 ein geändertes Verfahren zum Berechnen der Prüfsumme zum Einsatz kommt, halte ich bei der Bestätigung der Prüfsumme des 906114-05 für sehr unwahrscheinlich.


    Außerdem gibt es noch das Gerücht, daß es bei einem der CBM-II Geräten ein geändertes PLA geben soll. In der freien Wildbahn wurde es anscheinend noch nicht gesehen. Vielleicht entstammte es wirklich einer Vorserie oder nur den ersten Geräten. Immerhin hat der 600er eine niedrigere Nummer des 906114 und wir können davon ausgehen, daß die Entwicklung des 600er evtl. etwas vor dem 700er erfolgte. Die Coprozessor-Karte wurde erst mit dem 700er entwickelt. Evtl. ist da noch etwas von dessen Entwicklung zum 600er zurückgeflossen?


    In Deutschland haben wir zwar erstaunlich viele CBM-II (600er und 700er) gehabt, aber damit vermutlich auch einen späten Entwicklungsstand!


    Meine 610er haben leider sehr hohe Seriennummern. Diese wurden bei Steve auch mal eine zeitlang als letzte bekannte Seriennummern geführt.


    Sowohl Rev.2 (einmal vorhanden) als auch Rev. 3 sind identisch!


    Ein Revisionswechsel muß sich nicht am binären Inhalt wiederspiegeln. Es gibt noch ein weiters Mytherium bei Commodore. Die beiden RRIOTs für die ersten 2040 mit dem DOS 1.x sind auch identisch. D.h. der ROM-Inhalt von 901466-01 und 901466-02 sind gleich!


    Es wäre also mögich, daß hier nur der Herstellungsprozeß geändert wurde. Evtl. wurden bei der Rev. 3 andere PLAs als Grundlage verwendet als bei Rev. 2?

  • Hi,


    Es wäre also mögich, daß hier nur der Herstellungsprozeß geändert wurde. Evtl. wurden bei der Rev. 3 andere PLAs als Grundlage verwendet als bei Rev. 2?


    warscheinlich nicht habe zwei REV3 unterwelchem sich unter dem REV3 Aufkleber eine REV2 Aufkleber befindet also Überklebt... da würde ein nachbrennen dann warscheilicher sein...


    Gruß Jogi


  • Ein Revisionswechsel muß sich nicht am binären Inhalt wiederspiegeln. Es gibt noch ein weiters Mytherium bei Commodore. Die beiden RRIOTs für die ersten 2040 mit dem DOS 1.x sind auch identisch. D.h. der ROM-Inhalt von 901466-01 und 901466-02 sind gleich!


    Es wäre also mögich, daß hier nur der Herstellungsprozeß geändert wurde. Evtl. wurden bei der Rev. 3 andere PLAs als Grundlage verwendet als bei Rev. 2?


    Ich kann mir nicht vorstellen, das C= sich für den Herstellungsprozess der zugelieferten 82S100 interessiert hat! Die Aufkleber "Rev. X" waren allesamt
    immer auf einem 82S100 - nicht auf Teilen, die C= selbst produziert hat.


    ps: Ich würde hier Jogi recht geben... nur ist - wie bereits erwähnt - in meiner Rev.2 der exakt gleiche Inhalt wie in den Rev.3 - die ich bisher zum auslesen in die
    Finger bekommen habe!

  • Hi,


    ich war auch mal der Meinung ich hätte eine REV2. leider kam beim Rausschrauben unter der Platine der REV3. Aufkleber zum Vorschein war abgefallen...
    müsste evtl. meine zwei REV3. zu androsid senden von aussen als Eprom ausgelesen gibt es keinen unterschied..
    Gruß Jogi


    Hi Jogi,
    kannst Du gerne machen...
    Gruß


    ps: Bin am PIC dran.

  • Außerdem gibt es noch das Gerücht, daß es bei einem der CBM-II Geräten ein geändertes PLA geben soll. In der freien Wildbahn wurde es anscheinend noch nicht gesehen. Vielleicht entstammte es wirklich einer Vorserie oder nur den ersten Geräten. Immerhin hat der 600er eine niedrigere Nummer des 906114 und wir können davon ausgehen, daß die Entwicklung des 600er evtl. etwas vor dem 700er erfolgte. Die Coprozessor-Karte wurde erst mit dem 700er entwickelt. Evtl. ist da noch etwas von dessen Entwicklung zum 600er zurückgeflossen?

    Laut Berichten von Helmut Proxa waren die 700er erst später lieferbar als die 600er. Es geb da wohl irgendwelche Probleme mit den Mainboards.
    Das ging sogar so weit, daß 600er Boards in 700er Gehäuse gebaut wurden, damit man irgendwas ausliefern konnte.
    Einen solchen Rechner hat Steve Gray in seiner Sammlung.
    Ich meine, auch bei Helmut Proxa mal so ein zurechtgesägtes Mainboard gesehen zu haben.


    In Deutschland haben wir zwar erstaunlich viele CBM-II (600er und 700er) gehabt, aber damit vermutlich auch einen späten Entwicklungsstand!

    Das trifft aber nicht für alle Geräte zu. Der B715 von Steve Gray stammt ja auch aus Deutschland.
    Vermutlich sind in Deutschland nicht nur vergeleichsweise viele CBM-II Geräte vverkauft worden, sondern auch welche aus allen Stadien der Fertigung.


    Wir sollten Steve mal bitten, die PLA aus seinem B715 auszulesen.

  • warscheinlich nicht habe zwei REV3 unterwelchem sich unter dem REV3 Aufkleber eine REV2 Aufkleber befindet also Überklebt... da würde ein nachbrennen dann warscheilicher sein...


    Diese überklebte REV2 kann aber auch wieder ein "Tipfehler" sein. Toast_r hatte das bei einem 901614-05 auch berichtet (siehe Post #7). Dort war der Tipfehler bei der Prüfsumme.


    Bei einem "Nachbrennen" müßte die Prüfsumme größer werden. Jeder "gebrannte" Fuse erhöht die Prüfsumme. Da der Inhalt identisch ist, bleibt die Prüfsumme aber gleich.


    ich war auch mal der Meinung ich hätte eine REV2. leider kam beim Rausschrauben unter der Platine der REV3. Aufkleber zum Vorschein war abgefallen...


    Vielleicht haben wir alle noch gar keine REV.2 zu Gesicht bekommen? Evtl. kann das auch diese merkwürdige Prüfsumme 7E17 (welche kleiner als 7F5D ist) erklären.


    Es gibt im C64-PLA zwei Produktterme, welche eine falsche Eingangspolarität des /CAS-Leitung hatten, durch neue korrigierte ergänzt, und die alten falschen deaktiviert wurden. Diese kann man bedenkenlos entfernen. Damit kommt man dann auf eine Prüfsumme von 769F. Gesetzt der Fall, bei der Bereinigung wurde etwas falsch gemacht (das könnte die REV.2 sein), dann wurde das korrigiert und zu 7E17 geändert, welches wieder die gleiche Funktion hat.


    Ich kann mir kaum vorstellen, daß die Funktion des PLA vom C64 irgendwann mal geändert wurde. Das hätte Auswirkungen auf viele Dinge gehabt. Es kann sich also nur um deaktivierte Produktterme handeln, welche keine Auswirkung auf die Funktion haben.

  • Vielleicht haben wir alle noch gar keine REV.2 zu Gesicht bekommen? Evtl. kann das auch diese merkwürdige Prüfsumme 7E17 (welche kleiner als 7F5D ist) erklären.


    Es gibt im C64-PLA zwei Produktterme, welche eine falsche Eingangspolarität des /CAS-Leitung hatten und deaktiviert wurden. Diese kann man bedenkenlos entferden. Damit kommt man dann auf eine Prüfsumme von 769F. Gesetzt der Fall, bei der Bereinigung wurde etwas falsch gemacht (das könnte die REV.2 sein), dann wurde das korrigiert und zu 7E17 geändert, welches wieder die gleiche Funktion hat.


    Ist es nicht umgekehrt: Die Deaktivierung fand ja statt, in dem alle Fuses im Oder-Zweig der beiden Terme gebrannt wurden; d.h. die Prüfsumme hat
    sich um max. 0x1FC erhöht (Es war ja mind. das niedrigeste Bit gesetzt; daher 0xFE * 2!)
    Und: Die Differenz zw. der Rev.2 Prüfsumme und Rev.3 (ausgelesene Prüfsumme) ist: 0x146.


    Wir müssten die beiden Oder-Zweige also so verändern (aus 1 wieder 0 machen), so das eine um 0x146 niedrigere Prüfsumme rauskommt.


    Aber: Wozu? Dann wüssten wir was C= falsch gemacht hat - und hätten wahrscheinlich ein PLA das mit nix mehr funktioniert.

  • Ist es nicht umgekehrt: Die Deaktivierung fand ja statt, in dem alle Fuses im Oder-Zweig der beiden Terme gebrannt wurden; d.h. die Prüfsumme hat
    sich um max. 0x1FC erhöht


    Okay, betrachten wir die deaktivierten Fuses:

    Code
    1. L00320 0111111111010110011110101111111111111111*
    2. L01160 1011111111111111111111111111111111111111*


    beiden können bedenkenlos gegen

    Code
    1. L00320 0000000000000000000000000000000000000000*
    2. L01160 0000000000000000000000000000000000000000*


    getauscht werden. Und schon ist die Prüfsummer kleiner geworden.


    Nun können wir aber beliebige solcher Produkterme auch wieder mit deaktiviertem Inhalte hinzufügen:

    Code
    1. L00320 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11111111*
    2. L01160 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11111111*


    Ob das nun bei diesen Adressen oder bei völlig anderen passiert ist dabei egal.


    Ob das so passierte ist noch ungewiss. Möglich wäre es. Es stellt sich z.B. auch die Frage, warum diese fehlerhaften Produktterme überhaupt noch im PLA waren. Das muß aus einer sehr frühen Entwicklungszeit des C64 entstanden sein. Der Entwickler hatte keine Lust einen neuen PLA zu verwenden und baute die Korrektur eben um die fehlerhaften Produktterme herum. Das Design des PLS100 gab das her. Eine heutiger PLD-Compiler wird das vermutlich gar nicht mehr unterstützen. Daher halte ich es für möglich, daß man diesen Umstand beheben wollte, dann aber wieder neue Fehler einbaute, welche wieder korrigiert werden mußten.

  • Ich hatte gerade eine andere Idee:


    Nehmen wir an, das die erste Version der PLA falsch war.


    Für die Korrektur wurden die Zeilen


    L00320 0111111111010110011110101111111111111111*
    L01160 1011111111111111111111111111111111111111*


    deaktiviert.


    Nun die Annahme: Die Korrektur wurde nun einfach hinten dran gehängt im JEDEC
    in den - bis zu dieser Korrektur - noch freien Zeilen:


    L01200 und L01240!


    Der Grund für die Annahme ist einfach zu sehen, wenn man die "alten" und "neuen" Zeilen übereinanderschreibt:
    (Wegen der Übersichtlichkeit habe ich ein paar Blanks eingeführt.)


    L00320 01 111111110101100111101011111111 11111111*
    L01240 10 111111110101100111101011111111 11110111*


    L01160 10 111111111111111111111111111111 11111111*
    L01200 01 111111111111111111111111111111 01111111*


    Any ideas? (Wie man sieht sind die Zeilen nur durch eine geänderte Polarität in der ersten Zelle == !CAS anders!)

  • Nun die Annahme: Die Korrektur wurde nun einfach hinten dran gehängt im JEDEC
    in den - bis zu dieser Korrektur - noch freien Zeilen:


    Genau das habe ich schon oben geschrieben. Es ist in meinen Augen eine "andere Idee", sondern bestätigt den Hergang der aktuellen C64-PLA.


    Any ideas? (Wie man sieht sind die Zeilen nur durch eine geänderte Polarität in der ersten Zelle == !CAS anders!)


    Genau, es wurde nur die Polarität des /CAS Eingangs bei allen Zeilen geändert.


    Aber diese PLA (mit dieser ersten Korrektur) führt leider nur zur Prüfsummer 7F5D. Da die neue Prüfsummer kleiner ist, und jede gebrannte Fuse sich in einer Erhöhung der Prüfsumme wiederspiegelt, düften nicht alle Fuses dieses deaktivierten Bereiches gebrannt sein. Weiter weiß ich aktuell auch nicht.