Projektvorschlag VLB Speichererweiterungskarte?

  • Hallo Allerseits,

    Ich habe mal wieder so eine "verrückte Idee" und dachte mir ich nerve euch mal damit! Dieses mal ist es sogar richtig Retro...


    Mit dem VLB Bus stand ja zum ersten mal seit dem 286er wieder der mehr oder weniger komplette Prozessorbus für externe Anschlüsse zur Verfügung. Da drängt sich natürlich die Frage auf was man damit so machen könnte...

    Neben den Historischen tatsächlich umgesetzten Karten kommt mir da die Idee einer Speichererweiterungskarte. Über den Sinn lässt sich natürlich streiten betrachten wir es einfach mal als Machbarkeitsstudie. Wäre es möglich über VLB RAM gleichwertig zum direkt aus dem Board verbauten anzubinden?

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Phu, da bin ich überfragt. Aber ich denke, dass der RAM dort, wo er momentan sitzt schon optimal platziert ist. Denn der Prozessor an sich hat ja keinen Speichercontroller. Dieser sitzt auf dem Board am Prozessorbus. Man müsste also einen eigenen Speichercontroller designen, der im optimalfalle mit dem on Board kommuniziert.

    Ich denke eine Umsetzung ist so gut wie nicht möglich. Zumindest nicht ohne das Mainboard auch dafür anzupassen.

    Nicht umsonst gab es properitäre Speicherkarten für manche 386er und auch 486er. Das war aber weder ISA noch VLB.

  • Wäre schon möglich.


    Wenn Stefan307 das machen will, nur zu!

    Bin gespannt wann er uns die Tolle Karte vorstellt.

    Na das hilft ja wirklich weiter...

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Wäre es möglich über VLB RAM gleichwertig zum direkt aus dem Board verbauten anzubinden?

    Wenn du einen eigenen Chipsatz entwickelst, bestimmt. :D


    Mich würden die Gedankengänge interessieren, die zu der Idee geführt haben. Wunsch nach so viel RAM wie möglich?

  • Wäre es möglich über VLB RAM gleichwertig zum direkt aus dem Board verbauten anzubinden?

    Wenn du einen eigenen Chipsatz entwickelst, bestimmt. :D


    Mich würden die Gedankengänge interessieren, die zu der Idee geführt haben. Wunsch nach so viel RAM wie möglich?

    Ne einfach nur der Gedanke das VLB ja wieder und zum letzten Mal eine direkte Verbindung zur CPU darstellt!

    So ganz ist mir aber der Einwand bezüglich Speichercontroller Chipsatz nicht klar.

    XT und AT Speichererweiterungskarten haben keinen eigenen Controller bzw. Die wenigen Logic Chips die da drauf sind würde ich jetzt nicht als solchen bezeichnen. Das eine AT Karte auch in einem 386er prinzipiell funktioniert hatte wir vor Jahren schon hier angesprochen als es um mein Intel 386er Mainboard ging, Natürlich mit dem Flaschenhals ISA Bus. Jetzt hat mir ja gerade matze79 mehrfach erklärt das es zwischen 3 und 486keinen großen Unterschied gibt?! Dann würde eine AT Speichererweiterungskarte auch auf einem 486 VLB Board funktionieren, natürlich viel zu langsam. Logischer nächster Schritt VLB nutzen um den direkten Zugang zur CPU mit voller Bandbreite herzustellen...


    Und ja ich weiß mittlerweile das es zwischen 3 und 486 gerade beim 8 und 16 bit Adresszugriff erhebliche Unterschiede gibt...

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Ne einfach nur der Gedanke das VLB ja wieder und zum letzten Mal eine direkte Verbindung zur CPU darstellt!

    So ganz ist mir aber der Einwand bezüglich Speichercontroller Chipsatz nicht klar.

    XT und AT Speichererweiterungskarten haben keinen eigenen Controller

    Zunächst, so "direkt" wie das gern dargestellt wird, ist VL auch nicht an die CPU angebunden. Ebenso haben die Ähnlichkeiten zwischen 3- und 486ern auch ihre Grenzen.

    Und, der Speicher auf ISA Erweiterungskarten wird direkt an die Adressleitungen angebunden, die am ISA Bus vorliegen.

    Wenn dich die technische Thematik des VL Bus im einzelnen interessiert kann ich dir dieses Buch empfehlen:


    https://www.amazon.de/-/en/dp/3772364136

  • Hm, die Idee hat mich in sofern getriggert, als dass ich mal schnell überlegt habe, ob das überhaupt möglich ist.


    Theoretisch sollte das möglich sein, da du absolut Recht damit hast, dass VLB nur ein breiter, schneller ISA-Bus ist, der wieder mit vollem CPU-FSB läuft.


    Allerdings glaube ich, ist es deutlich komplexer. Soweit ich die 486-Architektur richtig verstanden habe, steckt in der Northbridge der Speichercontroller, der nicht mehr nur pure Adress-Decodierung durchführt, sondern auch Signale aufbereitet (deshalb können frühe 486-Boards kein EDO, späte schon, unabhängig von der CPU) und den 2nd-Level-Cache verwaltet. Ich denke mal, das Mindestmaß, was auf einem Mainboard oder einer RAM-Karte stattfinden muss ist eine Übersetzung der Bus-Adresse in Row/Column Adressen, ggf. Datenpufferung sowie bei DRAM definitiv Refresh (der kommt nämlich vom Speichercontroller, nicht von der CPU).


    Theoretisch müsstest du mit einem FPGA (oder wenn es nicht gerade um EDO, SDRAM oder DDR geht sogar mit einem CPLD oder etwas diskreter Logik) problemlos einen Speichercontroller nachbilden können, der zwischen dem CPU-FSB und DRAM/SRAM-Chips, FPM, EDO oder gar SDRAM oder DDR(x) vermittelt (was in der Tat ein Benefit wäre), müsstest aber ggf. mit DIP-Schaltern (wie auch bei alten Karten) die Startadresse (für Parallelbetrieb mit SIMM-Modulen auf dem Board) und Größe festlegen, und damit das Ganze mit dem 2nd-Level-Cache reden kann auch einen eigenen ebensolchen implementieren.


    Aktuell würde ich sagen, der Aufwand ist hoch für eine kleine Nische (nur für VLB, was ja damals schon kein großer Wurf in Sachen Verbreitung war). Wenn es für dich interessant ist, warum nicht einfach mal probieren? Und irgendwer anders freut sich vielleicht auch darüber. Ich glaube nur nicht, dass das viele sein werden (kann mich aber irren).

    Arbeitspferde: Xeon E5-2683v3/32GB/GTX1650 Super/1TB NVMe+8TB HDD und Q6600/8GB/GTX460/1TB SSD+4GB+2GB HDDs

    Retro Maschinen:

    P2-450/256MB/128GB SSD/TNT2-M64+2xVoodoo2/Soundblaster 16+Yamaha DB50XG

    Commodore PC20-II/V20+8087/XTCF lite 256MB/Tandy Sound

    286-16/287-8/4MB/256MB CF/ET3000/Aztech NX-II

    Amiga 500/1MB/Gotek/Vortex AT-once Plus 286 + Amiga 500/1MB

    Pentium 166/FAST Video Machine+DDPR+YUV Board

    Projekt-Rechner: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64

    Projekte: USB RetroArduInput

  • Völlig normale 30 pol Simms wären ja völlig ausreichend... Alles andere fällt ja auch völlig aus der Zeit. Das die CPU keinen eigenen Speichercontroller hat ist hier ja eigentlich ein Vorteil, die weiß ja überhaupt nicht von wo die Daten komen die sie Adressiert. Der L2 Cache sitzt wenn das Schema stimmt zwischen Prozessor und DRAM Steuerung der wäre also auch egal wo die Daten herkommen.

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Wüsste nicht wozu ich das brauche, ich kann auch einfach 4x32Mb FPM Module in den 486 stopfen.

    Die sind ebenfalls 32bit angebunden :whistling:


    Über den Sinn lässt sich natürlich streiten betrachten wir es einfach mal als Machbarkeitsstudie

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Die Logiken und Leitungen, die für Kohärenz zwischen den Cache, im kompliziertesten Fall ist dieser als Write Back ausgeführt, und RAM sorgen, liegen im Chipsatz und gehen nicht über den Bus.

    D.h. falls es geht, wäre dieser Speicher uncached und damit wenig erstrebenswert.


    Oder Du entwickelst eine Cachelogik direkt auf den Chipsatz der Karte, am besten gleich mit PB Cache und Support für SDRAM. Dann könnte man vielleicht neue Rekorde in den Benchmarks aufstellen.

    Der Grafikchip müsste dann noch auf die Karte, damit Du am VLB mehr als 33MHz fahren kannst. Sonst lohnt das nicht.

  • Die Logiken und Leitungen, die für Kohärenz zwischen den Cache, im kompliziertesten Fall ist dieser als Write Back ausgeführt, und RAM sorgen, liegen im Chipsatz und gehen nicht über den Bus.

    D.h. falls es geht, wäre dieser Speicher uncached und damit wenig erstrebenswert.


    Oder Du entwickelst eine Cachelogik direkt auf den Chipsatz der Karte, am besten gleich mit PB Cache und Support für SDRAM. Dann könnte man vielleicht neue Rekorde in den Benchmarks aufstellen.

    Der Grafikchip müsste dann noch auf die Karte, damit Du am VLB mehr als 33MHz fahren kannst. Sonst lohnt das nicht.

    Man könnte vielleicht einfach moderne SRAMs auf dieser Karte betreiben. Da erledigt sich der Bedarf für einen Cache und ebenso für eine Refreshlogik. D.h. man muss "nur" die Anbindung an den VLB realisieren. So ein wenig wie bei modernen Amiga Accelerators. Die nutzen ja auch alle SRAM mit 12ns oder weniger.

    root42 auf YouTube


    80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, GUSar Lite & TNDY & SnarkBarker, PC MIDI Card + SC55 + MT-32, XT CF Lite, OSSC 1.6

  • Die Logiken und Leitungen, die für Kohärenz zwischen den Cache, im kompliziertesten Fall ist dieser als Write Back ausgeführt, und RAM sorgen, liegen im Chipsatz und gehen nicht über den Bus.

    D.h. falls es geht, wäre dieser Speicher uncached und damit wenig erstrebenswert.

    Das ist in der tat ein Einwand, Cache gab es zu XT und AT Zeiten natürlich noch nicht würde im Umkehrschluss auch bedeuten das eine AT RAM Karte in einem 386er mit Cache nicht mehr funktioniert oder man diesen Bereich bewusst aus der Cachable Area heraushalten müsste.

    Das könnte ich mit meinen 386ern in der Tat mal ausprobieren...

    Man könnte vielleicht einfach moderne SRAMs auf dieser Karte betreiben. Da erledigt sich der Bedarf für einen Cache und ebenso für eine Refreshlogik. D.h. man muss "nur" die Anbindung an den VLB realisieren. So ein wenig wie bei modernen Amiga Accelerators. Die nutzen ja auch alle SRAM mit 12ns oder weniger.

    Logische Konsequenz wäre dann ja eher gleich eine Pentium Turbokarte ...

    Ne da hat Matze schon recht das führt sich irgendwann ad absurdum.

    Dann eher einen weg finden die Speichersockel zu Erweitern oder Module mit hoher Kapazität "entwickeln" die keine seltenen Chips benötigen...

    386SX- 20 Mhz "Erster eigener Rechner!2" NoName Komponenten

    486DX -30 "Industrie PC" auf Steckkarte

    Super Sockel 7 Gigabyte GA-5AA 3Dfx Voodoo 3500 TV

    AMD "Geode" ebenfalls Steckkarte für Backplane

    3x IBM Netvista 8364 "ThinRetroSystem" 1-2 von denen würde ich tauschen...


    "und noch so einiges mehr... "

  • Dein Chipset muss auch überhaupt Größere Kapazitäten unterstützen.

    Viele Boards kommen nicht mal mit 128Mb RAM klar.

    Was mit Standard FPM PS/2 Simms machbar ist. (4x32Mb)

    Ich hab auch bisher nur ein Board gefunden was 4x64Mb aufnimmt.


    Wohl bemerkt ist der RAM dann auch nicht mehr gecached.

    Sollte man Windows 95 ausführen merkt man das am 486 auf jedenfall stärker.


    Und Unix werden die wenigsten hier nutzen, wo man wirklich einen nutzen von mehr RAM hat.

    совок

    Einmal editiert, zuletzt von matze79 ()

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!