Hallo Besucher, der Thread wurde 4,7k mal aufgerufen und enthält 26 Antworten

letzter Beitrag von 0xdeadbeef am

PLL-Ersatz für Longboard

  • Zugebenermaßen ist es keine neue Idee, einen ICS525-01 ("configurable clock") zu benutzen, um einen Ersatz für den 8701 zu basteln. Aber ich habe mich gefragt, ob es nicht auch sinnvoll wäre, einen PLL-Ersatz für Longboards zu haben. Zwar haben die älteren Board eine diskret aufgebaute echte PLL, aber so richtig zeitgemäß ist die Schaltung nicht mehr, die ICs werden auch langsam knapp und die Schaltung steht auch nicht in dem Ruf, eine wirklich stabile und saubere Frequenz zu erzeugen.

    Jedenfalls ist mein Plan, den 74LS629N auslöten, denn dann kann man PHI_COLOR und DOT_CLOCK über den Sockel einspeisen. Theoretisch könnte man auch den Quarz vom Board benutzen, aber nicht den Trimmer, denn der ist bei den alten Boards ein Poti, das den VCO im 74LS629 beeinflußt. Für den Augenblick fand ich es sicherer auch gleich einen modernen Quarz auf die Platine zu packen.


    Wahnsinnig viel Platz ist da zumindest bei meinem 250407 nicht (Kondensatoren im Weg), und irgendwie ist es mir selbst bei Mouser nicht gelungen, einen deutlich kleineren Quarz mit 17.7344MHz zu finden (nur echte Oszillatoren, die man aber wohl nicht ohne weiteres trimmen kann). Durch den vergleichsweise riesigen HC49 und den Trimmer muß man etwas kreativ werden. Ich hoffe, daß man mit dieser gewöhnungsbedürftigen Form an den Kondensatoren vorbeikommt. Alternativ könnte man den IC und die Kondensatoren auf der anderen Seite bestücken, aber zweiseitig bestückte Platine versuche ich zu vermeiden.

    Herausgekommen ist jedenfalls erstmal das hier (WIP):


    forum64.de/wcf/index.php?attachment/255969/    forum64.de/wcf/index.php?attachment/255970/


    Weil der PAL/NTSC-Jumper nicht auf den 74LS629N geht, habe ich den Jumper auf das Board gepackt. Wenn man den Jumper schließt, wird der Teiler für NTSC eingestellt, ansonsten für PAL. So funktioniert die Schaltung auch, wenn man einen NTSC-Quarz bestückt.
    Ist aber alles Theorie. Ich ringe derzeit noch mit mir, ob ich nicht doch noch einen kleineren Quarz auftue oder ob ich nicht doch auf zweiseitige Bestückung wechsle. Oder doch einen Oszillator ohne Trimmer benutze. Scheint beim SmaCK ja auch zu tun. Schön ist das Ding jedenfalls so nicht.

  • irgendwie ist es mir selbst bei Mouser nicht gelungen, einen deutlich kleineren Quarz mit 17.7344MHz zu finden

    D.h. 4-5mm Höhe sind noch zu viel?


    (die Bilder-Links in deinem Post funktionieren nicht)

  • Habe mich zu einem Kompromiß durchgerungen. Zum einen habe ich einem bedrahteten HC49 entschieden, denn die sind einfacher zu bekommen und haben wegen der Anschlüsse eine kleinere Grundfläche.
    Um Platz einzusparen, habe ich die Kondensatoren auf die Unterseite verbannt. Das sieht schon erheblich besser aus.


      


    Ich will aber nicht leugnen, daß das ein grenzwertiges Design ist. Das Metallgehäuse des Quarzes ist viel zu nahe an den Pins des ICS525. Die Kondensatoren auf der Unterseite stellen außerdem eine gewisse Kurzschlußgefahr dar.

    Also werde ich wohl doch noch eine Iteration machen müssen, den IC auf die Unterseite schieben und die Kondensatoren alle auf die Oberseite.

    Macht mich nachdenklich, daß ich für sowas Kleines schon so viele Iterationen brauche. Mein Großprojekt werde ich vermutlich nie fertig kriegen ;)

  • Dann führe ich meinen Monolog mal fort: ein weiterer Iterationsschritt, hoffentlich der letzte...


     


    Habe die Kondensatoren jetzt doch auf der Unterseite gelassen, aber in 0603 geändert.
    Auf der Oberseite sind nur die Sachen, die dort sein müssen: der Quarz, der PLA/NTSC-Jumper und der Trimmer.

  • Weil ich jetzt schon mal dabei war, habe ich noch zwei Versionen fürs Shortboard (MOS8701) gemacht (eine mit Quarz, Trimmer und Jumper, eine ohne alles) und die Platinen in China bestellt. Da meine ICS525er auch noch aus dem Land der Mitte unterwegs sind, wird die nächsten Wochen wohl erstmal nichts passieren und ich kann mich meinem unrealistischen Mega-Projekt widmen ;)

  • Ich bin ein absoluter Freund von Ersatzschaltungen, diese Projekte sichern

    das Überleben unserer C64 auch dann noch wenn keine originalen IC's mehr

    verfügbar sind, oder der Preis jeglichen Rahmen sprengt.

    (In der Bucht sind grad SID's für 115€) o.O


    Daher find ich gut, und solltest du irgendwann in die Verlegenheit kommen

    zu viele dieser Ersatzschaltungen zu haben... Marktplatz!


    Mfg Jood

  • Also komplett aufgebaute werde ich nicht verkaufen. Habe auch nur fünf ICs bestellt. Platinen könnte ich gegen Unkostenpauschale abgeben, wenn es mal soweit ist und ich die Prototypen getestet habe. Allerdings ist es bei so kleinen Platinen u.U. nicht teurer, sie gleich selber bei OSHpark zu bestellen. Die Gerberdateien usw. werde ich zur Verfügung stellen, wenn die Prototypen funktionieren.

  • mir gefällt das mit dem '629 Ersatz! Ich mag nur den ICS nicht löten. Ich könnte zwar, aber macht einfach keine Freude.


    Gibt ja auch PCB Fertiger, die SMD vorbestücken. Das wäre fein, wenn es einen gäbe, der den ICS da drauf packt und dann nebenbei die restlichen SMDs auf der zweiten Seite. Die andere Seite, plus die bedrahteten Bauteile mache ich dann gerne selbst :)

    Code: Floppy Fehlerkanal abfragen - Ausserdem kann ich bei "drive not ready" den I: und N: Befehl verwenden und notfalls den Kopf manuell zurückschieben. Und Finger weg vom Stepper!
    1. 10 open1,8,15 : rem 8 ist die Geräteadresse und das kann man bei Bedarf natürlich anpassen
    2. 20 get#1,a$:?a$;:ifst<>64goto20 : rem Das CLOSE 1 am Ende kann man sich sparen, weil beim RUN automatisch ein CLOSE ALL ausgeführt wird.
    3. RUN
  • mir gefällt das mit dem '629 Ersatz!

    Das finde ich auch clever gelöst. Lässt sich auch sehr für Neuaufbauten einsetzen. Für meine KU-Boards hatte ich einen Adapter für TolB oder SmaCK vorgesehen, der in vorhandene Löcher passt. Aber das ist bisher nur ein Stapel Fassungen und entsprechend plump. Direkt an den Platz des 629 wäre viel eleganter, scheitert aber an der "falschen" Pinbelegung, also wäre auch da ein Stapel oder ein Zwischenplatine notwendig. Alternative wäre ein LumaTolB oder eine andere VIC-basierte Lösung, aber auch das nur mit Zwischensockel und ich seh mich noch nicht 25 Euro dafür ausgeben.


    Das ist ein "Drop-in"-lösung mit gleichem oder ähnlichem Footprint in der Tat das Optimum. Da käme für mich allerdings nur die Komplettlösung in Frage...

  • Offen gestanden ist die Löterei von solchen SMD-Bauteilen mit sehr engem Pinabstand jetzt auch nicht meine Lieblingstätigkeit. Da gibt es bei mir immer erst satte Kurzschlüsse zwischen den Pins, die ich dann mit Entlötlitze und Flußmittel entfernen muß.

    Die Chinesen rennen einem zwar mit Angeboten zur Bestückung die Tür ein, aber das ist auf jeden Fall mehr Aufwand als die reine Platinenfertigung. Für den Augenblick war es mir das nicht wert. Und Geld will ich damit aus diversen Gründen keins verdienen (müßte einen Nebenjob anmelden, trotzdem wäre die Versteuerung von solchem Kleinkram fast unmöglich, außerdem habe ich nur eine "non-Profit"-Lizenz von Diptrace usw.).

    Aber das ist ja jetzt keine komplexe Schaltung und ich werde sowieso alles mit einer freien Lizenz veröffentlichen. Also falls das Ding überhaupt funktioniert, kann ja immer noch jemand eine Sammelbestellung organisieren o.ä.


    BTW: der ICS525 ist bei Mouser als Einzelstück extrem teuer (8€ oder so). Deshalb habe ich ja auch beim Chinesen bestellt und hoffe mal, daß ich da auch was Funktionstüchtiges kriege...

  • Deshalb habe ich ja auch beim Chinesen bestellt und hoffe mal, daß ich da auch was Funktionstüchtiges kriege...

    Naja, wenigstens einen hätte ich schon aus einer zuverlässigen und sicheren Quelle genommen. Dann kannst Du wohl sicher gehen, das es der IC nicht ist... Sonst bleibt immer die Ungewissheit der China Teile!

  • Na ja, was soll sich sagen. Die Risiken kenne ich durchaus, aber ganz so einfach ist das mit den sicheren Quellen auch nicht. Auch vermeintlich sichere Quellen haben schon Fälschungen an Endkunden verkauft. Bei den FTDI-Chips waren die Lieferketten zeitweise so verseucht mit Plagiaten, daß sie angeblich auch von Mouser usw. verkauft wurden. Und die Grenzen sind eh fließend. Reichelt verschickt ja fast durch die Bank Noname-Versionen von ICs, obwohl Datenblätter von TI, NXP usw. verlinkt sind. Die Grundfunktionen sind natürlich gegeben, aber auch Derivate von Standardbauteilen haben je nach Hersteller eigene Detailspezifkationen, also kauft man auch da die Katze im Sack. Und Völkner hat mir zumindest schon mal völlig andere Teile in der gleichen Bauform geliefert, was ich erst festgestellt habe, als meine Schaltung nicht funktioniert hat. Hätte die Funktion grob gestimmt, hätte ich es vermutlich nicht bemerkt. Die Beschriftungen sind bei kleinen SMD-Teilen ja eher kryptisch.

    Meine negativen Erfahrungen mit chinesischen Händlern halten sich dagegen in Grenzen. Hatte eigentlich nur einmal gefälschte FTDIs und da habe ich mein Geld anstandslos zurückbekommen.


    Ansonsten ist meine Hoffnung/Annahme, daß sich Fälscher auf Sachen konzentrieren, mit denen man Geld verdienen kann. Also entweder über hohe Stückzahlen oder hohe Preise. Vor allem muß es aber eine einfache/preiswerte Möglichkeit zur Fälschung geben. Diese PLLs von ICS/IDT/Renesas (fröhliche Übernahmeorgie) sind aus meiner Sicht zu speziell, zu (analog) komplex und auch nicht teuer genug, um das Ziel von Fälschern zu sein. Die FTDI-Chips können Fälscher mit billigen Mikrocontrollern nachbauen, sauteure Präzisionsspannungsquellen werden mit billigen Versionen im anderen Gehäuse gefälscht usw., aber einen ICS525 kann man nicht ohne weiteres durch Teile von der Stange ersetzen.

  • Ich habe die Platinen (habe auch noch zwei Ersatzschaltungen für den 8701 entworfen) schon seit Mai rumliegen, aber mein 250466+-Projekt hat mehr oder weniger alle meine Retro-Energie aufgesaugt. Letztes Wochenende konnte ich mich aber doch überwinden, von jeder meiner drei Platinen eine Version auszubauen und zumindest mal die Longboard-Version in Betrieb zu nehmen.


     


    Die gute Nachricht ist, daß die Schaltung erstmal tut. Sind allerdings ziemlich üble Störungen (Mehrfachreflektionen? Keine Ahngung) auf beiden Frequenzausgängen - die Screenshots oben sind mit Ferritkernen ("BEAD 4-90") gemacht, die die Situation erheblich verbessern. Man sieht trotzdem noch, daß es ein gewisses Übersprechen zwischen den Ausgängen gibt, aber ich denke das ist unter den gegebenen Bedingungen OK.


    Mit dem Trimmer ist es mir gelungen, die Frequenz ziemlich genau auf 17.7344MHz einzustellen - wobei das Verhalten mich überrascht hat. Die Auswirkung des Trimmers auf die Frequenz ist minimal, aber die Auswirkung auf das Tastverhältnis ist deutlich größer. Hoffe mal, das gibt keine Probleme. Den Dot Clock messe ich unter diesen Bedingungen als 7.881973MHz, was genau der Erwartung entspricht (f_XTAL * 4 / 9 für PAL).

    Auch nach längerer Messung beträgt die Standardabweichung von der Mittenfrequenz in beiden Fällen unter 500mHz.


    Zu beachten: die Messungen unten sind aus den Daten des Scopes berechnet und werden von der Abtastfrequenz beeinflußt (5GSa/s -> Jitter mindestens 200ps). Die Messung links oben stammt von einem eingebauten HW-Frequenzzähler (7 Stellen) und ist sehr viel genauer. Die Zeitbasis meines Scopes ist mit 1ppm spezifiziert, sollte also keinen dramatischen Einfluß auf die Messung haben.


    --> Sieht erstmal gut aus. Jetzt müßte ich mal den 74LS629N aus meinem ollen C64 auslöten und mal schauen, wie sich meine Ersatzschaltung so macht. Aber vorher will ich noch die beiden anderen (ShortBoard-)Versionen testen. Kann also alles noch etwas dauern.

  • So, habe jetzt auch die Shortboard-Varianten und den NTSC-Teiler ausgetestet. Bei der einen Shortboardvariante mußte ich den Schaltplan ändern (Layout bleibt gleich), weil die Invertierung der PAL-Einstellung vom Mainboard mit dem angedachten PNP-Transistor ums Verrecken nicht funktioniert hat und ich einen N-FET nehmen mußte. Für die PAL-Variante könnte man allerdings auch einfach den Transistor unbestückt lassen.

    Wie auch immer: ich will später noch eine Seite mit Bildern und ein paar salbungsvollen Worten dafür basteln, aber zumindest habe ich jetzt mal alles in ein Repository geklatscht:

    https://bitbucket.org/fade0ff/c64-pll-replacement

  • Hatte heute einen After-Work-Motivationsschub und habe mal die beiden Shortboard-Versionen in einem 469er Board ausprobiert. Was soll ich sagen? Beide liefen auf Anhieb ;) OK, hatte sie ja vorher extern getestet, aber trotzdem schön.

    Links die Version, die den Quarz, Trimmer und PAL-Jumper des Boards benutzt, rechts die autarke Version mit eigenem Quarz, Trimmer und Jumper:

     


    Als ich schon mal dabei war, dachte ich mir, ich könnte ja auch mal den 8701 des Shortboards in meinem Meßaufbau für die Shortboard-PLLs messen.

    Achtung, nur für starke Nerven:

     


    Die Frequenzstabilität über einen längeren Zeitraum ist zwar OK (der Hardware-Counter mittelt ja über sehr viele Perioden), aber der Periodenjitter der Dot Clock ist einigermaßen erschütternd. Von den teils abenteuerlichen Signalformen mal ganz abgesehen. OK, mein Aufbau in einem Steckboard ist nicht optimal, aber mit genau dem gleichen Aufbau messe ich bei meinen Ersatz-PLLs extrem steilfllankige und rechteckförmige Signale. Der einzige Unterschied sind die für den echten 8701 zusätzlich notwendigen Verbindungen.