Hypercache 030 - Turboboard mit Seitenwagen

Die kleine Firma »Pro-VME« befaßt sich hauptsächlich mit industriellen VMEbus-Anwendungen. Jetzt haben sich die bekannten Hardware-Beschleuniger »Hypercache« und »Hypercache+« zum »Hypercache 030« weiterentwickelt. Einer der Entwickler berichtet von seinen Erfahrungen.

Die Hardware des »Hypercache 030« enthält einen »Motorola MC68030«-Prozessor, einen 16 KByte großen Hardware-Cache, der zur Verbesserung der Leistungsfähigkeit nach Daten und Instruktions-Cache aufgeteilt ist, sowie einen Steckplatz für einen mathematischen Coprozessor (FPU, Floating Point Unit). Besonderer Clou: Die FPU wird sowohl als Register-Coprozessor an der Stelle in den Adreßraum eingeblendet, an der sich auch die Atari-FPU befindet, als auch in naher Zukunft mit den dafür von Motorola dafür vorgesehenen Line-F-Opcodes direkt über den 68030 ansprechbar sein. Diese Vielseitigkeit erfordert aber einen zusätzlichen Hardware-Aufwand, den »Pro-VME« nicht scheute. Damit der Benutzer auch weiterhin Programme verwenden kann, die entgegen der 68030-Kon-ventionen programmiert sind, ist zusätzlich ein 68000-Prozessor auf der Karte untergebracht. Wegen des großen Platzbedarfs (20 x 20 cm) ist der Einbau dieser Karte nur in »Mega ST«-Computern sinnvoll. Der interne Mega-ST-Busstecker bleibt frei, so daß vorhandene Grafikkarten weiterhin Platz haben. Ein wichtiger Vorteil des Hypercache 030 gegenüber verfügbaren 68020-Karten: die integrierte MMU (Memory Management Unit). Das Laufen eines Unix-Derivates im ST ist ohne diese MMU nahezu undenkbar.

Vom Vorlaut zur Serie

Bereits seit Februar 1990 gab es mehrere Prototypen mit 16 MHz, seit Mai 1990 die Serienmodelle mit 25 MHz. Auch das 33-MHz-Board gibt es bereits als Prototyp. Eine geschickte Synchronisation des Hypercache 030 mit dem restlichen ST macht weitere Überlegungen, mit welcher Taktfrequenz der 68030 läuft, überflüssig. Die zwei erstgenannten Geräte standen der Redaktion seit ihrer Entwicklung zur Modifikation der Betriebssystem-Software zur Verfügung, für die Pro-VME als bisher einziger Hersteller eines 68020- oder 68030-Boards eine offizielle Lizenz besitzt. Obwohl natürlich während der Entwicklungszeit die Hardware und Software noch einige Änderungen erfahren mußte, die insbesondere auf die Erhaltung der Betriebssicherheit im DMA-Betrieb ausgerichtet waren, erwies sich das Ergebnis als zufriedenstellend. (Über das BUS-Timing in Atari ST-Computern wissen Entwickler ein Lied zu singen.) Aber in der Mai-Release der Hard-und Software wurden die entscheidenden Probleme gefunden und ausgemerzt, so daß diese ab sofort als Serienversion zu haben ist.

Seitdem wurden verschiedene Software-Pakete auf dieser Karte getestet — zugegeben mit wechselndem Erfolg. »Signum2« stürzt ab, »Script« dagegen läuft. Allerdings hat »Application Systems« eine 68030-feste Signum-Version bereits angekündigt. »Turbo C V2.0« läuft zur Hochform auf — die Übersetzungszeiten werden deutlich verkürzt — macht aber Probleme mit der Fließkommabibliothek. Mit »Wordplus«, »BS-Handel«, »Adimens« konnten keine Probleme gefunden werden.

Viele Programme laufen

Im Gegenteil, diese Programme liefen deutlich schneller. Leider funktionierte die Briefkopf- und Telefonfunktion von »Ist-Address« unter dem 68030 nicht mehr. »ST Pascal Plus« lief ohne Probleme. »GfA-Assembler«, »GfA-Basic 3.07«, der Basic-Compiler und dessen Compilate hatten keine 68030-spezifischen Probleme. »Omikron Basic« verabschiedete sich allerdings terroristisch mit vier Bomben.

Auch das beliebte Kopierprogramm »FCOPY 3.0« vertrug sich im Text nicht mit dem 68030-Board — der Grund dürfte in den Fcopy- eigenen Floppy-Routinen liegen, die die Caches unberücksichtigt lassen. Der Shareware-Systemmonitor »Sysmon« hingegen tut seinen Dienst still und zuverlässig, Aus ungeklärter Ursache funktioniert sogar der Systemmonitor »Templmon« zur Zufriedenheit.

»Calamus«, sicher ein Programm, dessen Benutzer sich besonders für eine Beschleunigung interessieren, stand in der Version 1.09 zur Verfügung. Es zeigte eine erhöhte Neigung zu »unvorhergesehenen Fällen«. Im Gegensatz zu anderen Programmen, die keinerlei Probleme mit Festplattenzugriffen hatten, scheint die getestete Calamus-Version gelegentlich Schwierigkeiten damit zu haben: Das DTP-Programm erzeugte beim Speichern Files, die nicht mehr eingelesen werden konnten. Allerdings wurde von »DMC« bereits frühzeitig darauf hingewiesen, daß die getestete Version keine besonderen 68030-Anpassungen erfahren hat. »Calamus S« habe diese Probleme nicht mehr Die Operationen von Calamus wie Zeilenumbruch, Bild aufbau, Vergrößern und Scrollen waren dagegen ange nehm schnell anzuschauen Das Arbeiten mit dem stand festen Calamus für den 68030 wird eine Freude sein.

Gut schlug sich das Assembler-/Reassembler-Paket »Easyrider«, welches vol vom Cache profitierte um die Übersetzungszeiten eines 56 000-Zeilen-Assembler-Programmes, immerhin rund 1,6 MByte ASCII-Text, von rund 80 auf 25 s inklusive aller Diskzugriffe zusammenschrumpfen ließ.

Wer die Geschwindigkeit auf die Spitze treiben will und »Turbo ST V1.8« lädt, wird enttäuscht. Das System wird ziemlich bombig. Dies trat bei allen von uns getesteten Software-Beschleunigern auf. Es scheint, daß zugunsten der Geschwindigkeit etwas gegeizt wurde, zu Lasten der Lauffähigkeit von Programmen.

Entgegen anderslautenden Annahmen läuft auf diesem Board sogar der Editor »Tempus« — durchaus nicht selbstverständlich, denn der Programmierer bedient sich eines kritischen Verfahrens zur Adressierung des Editorspeichers. Der Editor »Edison« läuft ohnehin — die Autoren haben offenbar von vorne-herein auf Kompatibilität geachtet.

Die Grenzen des Wachstums...

Wenn man den Realitäten ins Auge sieht, dann muß man erkennen, daß ein Mega ST durch den Einbau einer Beschleunigerkarte natürlich kein TT wird. Dies sollte auch nicht das Ziel sein. Natürlich bleibt bei allen 68020- und 68030-Karten für die ST-Serie der Zugriff auf den 16 Bit breiten ST-Hauptspeicher ein Nadelöhr, durch das alle 32-Bit-Zugriffe des 68030 in zwei Häppchen gereicht werden. Dies kann im Fall des Hypercache 030 zwar in vielen Fällen durch die 32 Bit breiten Caches vermieden werden, aber eben nicht immer. Der »Rest-ST« wird für das schnelle Board zum bremsenden Seitenwagen. Natürlich ändert sich auch nichts an der Beschränkung auf die bekannten drei Bildschirmauflösungen. Und natürlich müssen sich CPU und SHIFTER nach wie vor im Zugriff auf den Hauptspeicher abwechseln. Denn der Bildspeicher liegt im Hauptspeicher. Daß die Leistungsfähigkeit des Boards gebremst wird, ist nicht zu vermeiden. Jedenfalls nicht, solange man nicht einen ganz neuen ST baut, und zwar mit 32 Bit Bussystem. Das macht aber Atari bereits mit dem TT.

Für den Hypercache 030 und den TT gelten viele Einschränkungen auch gemeinsam: Die Compiler werden sicher in Zukunft noch besser an den 68030 angepaßt werden müssen. Die Programmhersteller werden sicher in Zukunft etwas besser darauf achten, daß sich ihre Produkte mit anderen Prozessoren vertragen. Fast immer scheitert ein nicht lauffähiges Programm daran, daß es TRAP-Handler benutzt, die sich nicht um die bei den Weiterentwicklungen des MC68000 geänderten Stackformate kümmern. Ebensolche Probleme kann es geben, wenn die prozessorinternen Cache-Speicher in der Programmierung nicht oder nicht richtig berücksichtigt werden. Zum Beispiel sollte das Cache-Control-Register des 68030 vor allen DMA-Operationen gerettet, die Caches dann ausgeschaltet und gelöscht und nach der DMA-Operation das Cache-Control-Register wiederhergestellt werden. Zum Beispiel sollte man wissen, daß der MC68030 drei (in Zahlen 3) Stackpointer hat. Viele Abstürze und Probleme wären leicht zu vermeiden, wenn Programmierer etwas disziplinierter schrieben — aber das betrifft eigentlich die meisten Inkompatibilitäten von Software. Programme mit den oben genannten Mängeln laufen natürlich auf keinem 68030-System, egal ob Hypercache oder TT. Von selbstmodifizierendem Code ganz zu schweigen — dieser scheitert sofort, wenn die getrennten Caches aktiv sind.

Besonders für »Power-User»

In der Rechenleistung liegt die Karte eindeutig vorne. Mit rund 6600 Dhrystones pro Sekunde (V2.1, Turbo C 1.1) ist sie eine interessante Erweiterung für alle, die vor allem Rechenleistung brauchen und bereits einen Mega ST haben, den sie auch behalten wollen. Für Otto Normalverbraucher ist diese Karte sicher nichts. Ebenso würde ein Spielefanatiker wahrscheinlich mit den Inkompatibilitäten der Spiele zum 68030 verzweifeln. Ein Wordplus- und Adimens-Benutzer wird sicherlich keinen allzu großen Gewinn aus der Geschwindigkeit der Karte ziehen. Kurzum — diese Karte ist für alle diejenigen, die Rechenleistung wirklich brauchen — für alle anderen kostet sie einfach zuviel. Für 2498 Mark wird die Karte von Pro-VME angeboten, inklusive Einbau anstelle der früheren CPU und Funktionstest.

Viele der Anforderungen von Entwicklern und Universitäten an die Geschwindigkeit werden durchaus von dieser Karte erfüllt.

Insbesondere lassen sich hier Anwendungen entwickeln, die alle Prozessorfähigkeiten des 68030 ausreizen und damit auch tauglich für die neuen Atari-TT-Maschinen sind. Der Atari ST verwandelt sich mit Hypercache 030 in eine vollwertige Entwicklungsmaschine für das Zielsystem Atari TT. Damit ist sie ihren Preis wert: Mein Bedarf an Grafik ist klein, ich arbeite lieber beschleunigt und vor allem prozessorseitig TT-kompatibel. Andere mögen andere Prioritäten setzen. Jedenfalls möchte ich diese Karte gegen nichts tauschen — außer es ist noch schneller für noch weniger Geld. Eine Alternative mit vergleichbarer Leistung ist aber nirgends in Sicht. (uw)

Pro-VME, Postfach 1236, 6903 Neckargemünd l

TOS und der 68030

Obwohl der MC 68030 schon einige Zeit auf dem Markt ist, brauchten die Entwickler von Beschleunigerkarten eine ganze Weile, bis diese Prozessor-Typen Einzug auf diesen Karten hielten. Der Grund liegt in Ataris Betriebssystem TOS und einigen kleinen Unterschieden der Prozessoren begründet. Zum einen banden die Entwickler des Atari ST einen mathematischen Coprozessor nicht wie von Motorola empfohlen über die sogenannten Line-F-Opcodes in das System ein. Sie benötigten diese Opcodes für eigene Routinen. So muß ein Coprozessor beim Atari normalerweise über Register im Adreßraum angesprochen werden.

Diese und noch andere Schwierigkeiten mußten von den Entwicklern erst aus dem Weg geräumt werden, indem sie das TOS einer »Verjüngungskur« unterzogen.

Vergleichswerte Quick-lndex 2.1
(ST, 68000, 8 MHz, TOS 1.4 = 100%)
Benchmark Hypercache 030 Atari TT 030
25 MHz*
ST-RAM
32 MHz
ST-RAM/TT-RAM
CPU-Memory
CPU-Register
Division
Shift
DOS-Output
String-Output
Scroll
GEM-Dialog
495%
632%
792%
2687%
225%
249%
147%
332%
497%/716%
827%
1024%
3534%
225%
218%
297%
225%
Dhrystone V2.1, Turbo-C V1.1
(ST, 68000, 8 MHz, 1582/s)
Dhry/s 6604 4434/7426

Die Vergleichswerte, die wir unter »Quick Index 2.1« ermittelten, sprechen eine deutliche Sprache


Normen B. Kowalewski
Aus: ST-Magazin 10 / 1990, Seite 54

Links

Copyright-Bestimmungen: siehe Über diese Seite