Du hast die 6829 mehr oder weniger aufgegeben?
Ähm.
Nun ja, aufgegeben nicht, es haben sich halt die Prioritäten verschoben.
Ich habe mir auch ein paar von den finnischen SC64745P bestellt... du sagtest sie läuft mit 3MHz.
Läuft hier tadellos, ja.
Hast du mal das "Mapped Address Delay" gemessen?
Also es fehlt mir die Möglichkeit das zu messen.
Ich bin auch mehr der Software Mensch.
Mit Hardware beschäftige ich mich noch nicht sehr lange.
Irgendwelche weiteren Infos dazu gefunden inzwischen?
Nun die MMU 6829 habe ich aufgegeben zugunsten der MMU-16:
https://oe7twj.at/index.php?title=NitrOS9-Board
Die MMU 6829 ist zu schmal, zu wenig Tasks und auch schwer verfügbar.
Wie ist die Anpassung von (Nitr)OS-9 Level 2 gelaufen, ist das beherrschbar und reichen die Unterlagen?
Ja es läuft, aber nicht gut.
Die Performance von L2 ist sehr schlecht im Vergleich zu L1 unter Verwendung von der MMU.
Es ist beherrschbar, NitrOS ist sehr gut dokumentiert.
Das Problem ist die Art und Weise wie OS9 die Parameter übergibt.
Die gewünschte Operation liegt leider im Code Segment hinter dem OS/9 Aufruf.
Das ist völlig okay für L1 aber für L2 ist es schwierig da dran zu kommen und die Rücksprungadresse zu korrigieren.
Die Positron 9000 nutzt mehrere 6829 und die L2 Implementierung hat meinen Verdacht bestätigt.
Es kostet hunderte Zyklen um einen Taskwechsel zu machen.
Das macht es wenig attraktiv.
Aber ich habe sehr interessante Inspiration bekommen von jemanden der sich gut auskennt mit OS/9 L2 auf einer Positron 9000.
Eine Hardware Verbesserung der MMU erlaubt schnelle Schreib- und Leseoperationen in anderen Tasks vom Systemtask aus.
Es ist eine Art Glitch.
Man gibt ja in einem MMU Register an, nach wieviel Taktzyklen der Taskwechsel erfolgen soll.
Das sind 4 Bit.
Die oberen 4 Bit sind unbenutzt.
Nun die grandiose Idee die nicht von mir ist ...
Wenn die oberen 4 Bit 0 sind, arbeitet die MMU kompatibel wie auch jetzt.
Wenn da eine Zahl drin steht, dann macht die MMU nur einen ganzen kurzen Task Wechsel.
Die unteren 4 Bit stellen also die Verzögerung in Taktzyklen ein, die oberen 4 Bit stellen die Taskwechsel Aufenthaltszeit ein in Taktzyklen.
Mit anderen Worten, man kann zB. einen Ladebefehl oder Speicherbefehl ausführen und sofort zurückspringen.
Dabei sind die Taktzyklen so eingestellt, dass der Fetch des Befehl noch in der System Map passiert, aber die Speicheroperation im Zieltask.
der nächste Fetch ist bereits wieder in der System MAP.
So kann man ganz billig aus der User MAP lesen oder was rein schreiben.
Und zwar im gesamten 64K Bereich des User MAP Space.
Ohne dass ich mir kompliziert die MAP temporär anpassen muss.
Das möchte ich irgendwann in der MMU-16 implementieren.
Aber inzwischen habe ich mir eine FPGA Lösung angelacht.
Da ist eine Hardware Anpassung eben viel einfacher.
Sofern man VHDL beherrscht.
Daran mangelt es zur Zeit.
Das OS/9 SBC Ding ist völlig ins stocken geraten.
Das liegt zum einen an meinem Charakter zum anderen fehlt die Motivation weil es damals absolut niemanden interessiert hat was ich so mache.
Ich hab das Problem, dass ich Dinge schnell voran treibe, solange ich sie fesselnd finde.
Sobald ich alle Lösungen gefunden habe und weiß, ich kann es tun, verliere ich oft schnell das Interesse.
Speziell dann, wenn niemand da ist, der das Interesse befeuert.
Aber das Feuer ist nicht erloschen.
Ich träume immer noch von einer Positron 9000 artigen Hardware mit einer erweiterten MMU-16 und NitrOS-9 L2. ![biggrin :D](https://forum.classic-computing.de/images/smilies/emojione/1f606.png)
Ich hab interessante Inspiration bekommen von jemanden der sich gut auskennt mit OS/9 L2 auf einer Positron 9000.