MFA-CPU-68030

  • Nach langer Zeit ist mal wieder eine neue CPU-Platine fällig.

    Da mich die Motorola 68k schon seit meiner Atari ST Zeit interessiert, sollte es in diese Richtung gehen.

    Eine 68008 fand ich nicht so interessant, nach dem Motto darf's auch etwas mehr sein.


    Also sollten es richtige 32 Bits werden. Also 1,6 Kisten Bier. ;)

    Die '030 hat den integrierten Cache, die '040 die integrierte FPU, die aber keine trigonomische Funktionen der '882 kann. Deshalb bin ich bei der Kombi '030 mit '882 gelandet.


    Dann ging's um die Technologie. Bedrahtet und/oder SMD und wieviel.

    Da kommt dann die SMD-Nörgler-Fraktion ;) kleiner als 2,5mm kann ich nicht löten. (Bitte nicht ernst nehmen!! Ich habe auch in letzter Zeit SMD-Lötdefizite.)

    Also möglichst alles in THT und 1/10 Zoll Raster. Und wirklich, nach ein paar Voruntersuchungen scheint das zu klappen. Mit "nur" 2MB Speicher, über eine Erweiterungsplatine sind's dann 4MB.


    Die Support-Logik ist wieder in ein größeres CPLD eingeflossen. Durch den Sockel ist das auch im 1/10 Zoll Raster. Und es ist Retro, ein Xilinx XC9572, also komplett mit 5V versorgt.



    Und das ist dabei rausgekommen:

    (Der '882-Sockel ist noch nicht bestückt.)


    Dank Toast_r Leihstellung des '030 habe ich heute die ersten "Geh"-Versuche gemacht. Nach ein paar Problemen mit der Testumgebung konnte ich alle Test zur Zufriedenheit abgeschlossen.

     


    Schauen wir mal wie's weiter geht.



    Übrigens noch vielen Dank an Wolfgang von experiment-s.de mit dessen 68030 VHDL Modell ich das CPLD schnell entwickeln und sehr gut und umfassend simulieren konnte.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Die '030 hat den integrierten Cache, die '040 die integrierte FPU, die aber keine trigonomische Funktionen der '882 kann. Deshalb bin ich bei der Kombi '030 mit '882 gelandet.

    Endlich mal eine Europa-Karte mit 030 UND 882 !! Sehr schön !!! Und dann auch noch mit 50 MHz …

    Viele Grüße aus Aachen, Fritz


    Elektor SC/MP | Elzet-80 m & z280 | Mac IIcx | Quadra 700 | PowerBook 100 | Newton 100 | IBM XT/370 & AT/370 | IBM 5155, 5160, 5161, 5162, 5170 | Parsytec PowerXplorer, 2x MultiCluster XP, MultiCluster 3-64

  • Das ist ja der Hammer.sowas machst Du mal so nebenher.... kann da CP/M drauf laufen?

    Angedacht ist CP/M-68k. Was sonst geht muss man sehen.

    "mal so nebenher" ist relativ. Da stecken schon ein paar Denkstunden drin. Zuerst das mechanische (welche Bauteile und deren Platzierung) und dann eben das CPLD. Durch das 68k30 VHDL Modell ging das zum Glück schneller und genauer als erwartet.


    Wow! Der UART ist im CPLD?

    Gibt es das irgendwo im Git?

    Nein, die UART ist mit auf der MFA-Video-Serial. Auf der Karte ist nur CPU, FPU und RAM.

    Wenn die Sache mal stabil ist, geb' ich die Daten auch raus.


    Die Architektur ist auch am ST angelehnt? Ließe sich durch den CPLD zum ST compatible machen?

    Die Karte hat mit dem ST nichts zu tun. Was stellst du dir denn unter ST-kompatible vor? Auf der Karte ist keine Grafik, keine Floppy usw.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Die Karte hat mit dem ST nichts zu tun. Was stellst du dir denn unter ST-kompatible vor? Auf der Karte ist keine Grafik, keine Floppy usw.

    Natürlich fehlt die gesamte Peripherie ich dachte an grundsätzliches wie Speicherorganisation etc. natürlich wird es dazu nicht zu einem kompletten ST sondern maximal zu einem Teil davon. Aber du hast den Hintergrund indirekt schon beantwortet wenn CP/M 68k als Betriebssystem angedacht ist. Was ich mich nur frage ist das für einen 68030 nicht etwas zu, ja alt halt? Ist so in etwa wie ein P III mit Dos 6.22 oder so...

  • Ist Dein Design eigentlich flexibel in Bezug auf Taktfrequenzen ?

    Ja, auch deshalb das CPLD.

    Z.Zt. habe ich mit 50MHz kalkuliert, damit brauche ich bei RAM und EEPROM schon einige Waits. Beim IO-Zugriff (da ist der greise und lahme FDC 179x meine Referenz) habe ich 23 Waits.

    Ich will auch mit schnelleren RAMs (z.Zt. 55ns) testen um evtl. den synchronen Buszugriff zu ermoeglichen, der spart nochmal 2 Takte.


    Und FPU und CPU koennen auch asynchron laufen, dafuer sind 2 Oszillatoren auf der Karte vorhanden.

    Aber FPU ist noch ein eigenes Thema.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Speicherorganisation

    Das RAM beginnt bei 0 und geht dann linear bis TOP, max. 16MB.

    Das passt zu CPM-68k und entspricht m.W. auch dem ST.


    CPM-68k ist ja allgemein fuer die 680x0. Der 68030 hat sich ja so ergeben.

    Aber wenn du dich mit anderen Betriebssystemen fuer die 68k auskennst, koennen wir gerne darueber sprechen.

    Ich habe noch einen c't-68000 im Keller, anscheinend mit RTOS/Pearl. Auch 'ne Moeglichkeit.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Ist krass was hier immer gebaut wird ...

    und sieht schick aus !


    Wie ist das mit dem RAM Upgrade gedacht (Zusatzplatine) ? Will man das nicht evtl direkt an der CPU haben ?



    Und hier noch was für alle, die sich jetzt schon mal auf die Karte vorbereiten wollen und noch kein passendes Gehäuse haben.

    Modernes NT und I/O gibt es ja evtl schon irgendwo zum Nachbauen.


    https://www.kleinanzeigen.de/s-anzeige/raritaet-zwei-alte-mda-mfa-gehaeuse-fuer-platinen-zum-einschieben/2555643754-225-26777

    -- 1982 gab es keinen Raspberry Pi , aber Pi und Raspberries

  • Wie ist das mit dem RAM Upgrade gedacht (Zusatzplatine) ?

    Ja, genau, sieht dann so aus.


    Es gibt noch 2 weitere RAM-Platinen.

    Rechts auch fuer 4MB, aber in schnell (10ns). Links fuer 16MB, wenn lieferbar.

    Ist beides in TSSOP-II mit 0,8mm Pitch. Sollte man also loeten koennen.



    Will man das nicht evtl direkt an der CPU haben ?

    RAM gibt's nur auf der CPU-Platine. Externe Zugriffe sind nur fuer IO.

    Der Bus kriegt 32bit Daten und viele Adressen nicht hin.

    Meintest du das?


    UCSD-p System

    Bestimmt auch interessant.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Und hier noch was für alle, die sich jetzt schon mal auf die Karte vorbereiten wollen und noch kein passendes Gehäuse haben.

    Modernes NT und I/O gibt es ja evtl schon irgendwo zum Nachbauen.

    Wer Hardwarebedarf hat, sollte zuerst Toast_r fragen. Der hat m.W. noch Bestaende.

    ;------------------------------------
    ;----- ENABLE NMI INTERRUPTS
    (aus: IBM BIOS Source Listing)

  • Klar gibt's den Schaltplan, sonst waere das Layout schwierig geworden. ;)

    Viel Spass beim studieren.

  • RAM gibt's nur auf der CPU-Platine. Externe Zugriffe sind nur fuer IO.

    Der Bus kriegt 32bit Daten und viele Adressen nicht hin.

    Meintest du das?


    Ja, so in der Art. Auch daß dann ja jedes Byte "durch" diesen KonnektorIC müßte, was es bestimmt nicht schneller macht. Die Variante mit den aufsetzbaren RAMs mit bis zu 16MByte sieht auf jeden Fall gut aus. (OK, die MMU ist dann wahrscheinlich unbenutzt, aber bei CP/M sollte das vmtl eher egal sein.)

    -- 1982 gab es keinen Raspberry Pi , aber Pi und Raspberries

  • Klar gibt's den Schaltplan, sonst waere das Layout schwierig geworden. ;)

    Viel Spass beim studieren.

    Ganz ehrlich: von so einer Platine träume ich schon länger. Ganz pur, nur CPU/MMU/FPU & RAM. Alle anderen Dummheiten auf ein extra board, weil man sowieso keinen glücklich machen kann. Aber die Leute die Lästern, können dann ganz einfach ihre lieblings UARTs (68681/6850/16450/2681 etc.) dran schrauben. Und die graphik je nach Lust und Laune auch.


    Was mir "bisschen" fehlt, wären die restlichen Adressbits auf der Leiste ...

    Falls es irgendwie geht. Schlimmstenfalls quer dazu, sodass Du dein Speicherriegel Design nicht ändern musst :)

  • 32 Adressbits, und Du willst nur 16MByte? Meinst Du Cache? :)

    Mehr als 640kByte braucht keiner ! :mrgreen:

    Für CP/M-68k und UCSD p-System würde ich das auch glatt unterschreiben.

    Warum? CP/M-68K sollte doch mehr als 16MByte unterstützen, wenn Du die hast. UCSD P-System hängt von der version ab?

    Und so ein 68030 mit FPU und FORTRAN auf CP/M klingt für mich nach viel Spass, den man sich so in den '80-ern nicht so leisten konnte (als jedermann)