# ZRA 1

Der Zeiss-Rechen-Automat 1, kurz ZRA 1, war der erste serienmäßig hergestellte programmierbare Digitalrechner in der DDR. Er wurde beim VEB Carl Zeiss in Jena entwickelt und hergestellt.

## Geschichte

Bereits während der Erprobung des Relaisrechners OPREMA 1955 begannen die Entwickler Wilhelm Kämmerer und Herbert Kortum mit der Konzeption einer elektronischen Rechenanlage. Ziel der Entwicklung sollte ein leistungsfähiger Rechner mit wesentlich mehr Speicherplatz zur Bearbeitung wissenschaftlicher und technischer Aufgaben bei hoher Zuverlässigkeit sein. Die Programmerstellung sollte extern erfolgen, damit die Anlage während der Programmierung nicht stillstand, wie das bei der OPREMA der Fall war. So entstand der Plan für eine speicherprogrammierbare, bit-seriell arbeitende Ein-Adress-Maschine mit einer Wortlänge von 48 Bit. Kämmerer lieferte die theoretischen Grundlagen, während Kortum die Projektleitung übernahm. Beteiligt an der Entwicklung, Fertigung und Programmierung des ZRA 1 war Johannes Krötenheerdt von der Martin-Luther-Universität Halle-Wittenberg.

## Technische Daten

Da die zu dieser Zeit verfügbaren Transistoren für nicht zuverlässig genug erachtet wurden, entschied man sich für Halbleiter-Dioden und Ferrit-Ringkerne als Bauelemente für die logischen Schaltkreise sowie Elektronenröhren zur Signalaufbereitung und Verstärkung. Ende 1956 war der ZRA 1 im Wesentlichen fertig aufgebaut. Zu Schwierigkeiten kam es jedoch mit dem als Hauptspeicher vorgesehenen Scheibenspeicher. Dafür kam 1958 der von Nikolaus Joachim Lehmann an der TH Dresden entwickelte Trommelspeicher mit einer Kapazität von 4096 48-Bit-Worten zum Einsatz. Die Trommel rotierte mit 12.000 Umdrehungen pro Minute, was eine mittlere Zugriffszeit von 2,5 Millisekunden ermöglichte. Insgesamt kamen 12.000 Germaniumdioden (OA 170), 8500 Ferritkerne und 720 Elektronenröhren (PL84) sowie einige Relais zur Steuerung der Peripheriegeräte zum Einsatz. Als Eingabegerät diente ein Lochkartenleser, von dem Programme und Daten in den Hauptspeicher eingelesen wurden. Zur Ausgabe der Rechenergebnisse wurde das Druckwerk einer bestehenden Tabelliermaschine benutzt. Die Anlage benötigte einen Raum von wenigstens 6 × 8 m², die Leistungsaufnahme betrug 19 Kilowatt.
Strukturell handelte es sich um eine Von-Neumann-Architektur mit gemeinsamem Programm- und Datenspeicher. Als Ein-Adress-Maschine war ein Akkumulator, hier Rechenregister genannt, vorhanden. Zusätzlich zum Hauptspeicher gab es acht so genannte Schnellspeicher (Prozessorregister in heutiger Terminologie), in denen oft benötigte Operanden gespeichert werden konnten; damit umging man die relativ langen Zugriffszeiten des Trommelspeichers. Daneben war ein Programmzähler sowie Indexregister vorhanden, einen Stack gab es nicht.
Der Befehlssatz umfasste alle Befehlsgruppen heutiger CPUs:
* Transferbefehle zum Holen und Abspeichern von Daten im Hauptspeicher und den Prozessorregistern
* Arithmetische Anweisungen für die Grundrechenarten, jeweils mit Fest- und Gleitkommazahlen, Inkrementieren
* Die logischen Operationen Konjunktion und Disjunktion sowie Schiebeoperationen
* Testbefehle wie beispielsweise Ergebnis negativ. Als Besonderheit gab es Testbefehle zur Abfrage einiger Schalter auf dem Bedienfeld, womit sich von dort der Programmablauf beeinflussen ließ.
* Befehle für den Programmablauf, wie bedingte und unbedingte Sprünge, bedingter und unbedingter Programmhalt
* Ausgabebefehle für den Drucker – Eingabebefehle waren nicht erforderlich. Das einzige mögliche Eingabegerät, der Lochkartenleser, wurde manuell vom Bedienfeld gestartet.
Die Befehle und Daten wurden mit speziellen Lochern binär codiert auf Lochkarten gestanzt; eine Karte fasste zwölf Worte. Später wurde ein Compiler für eine Untermenge von Algol 60 entwickelt.
Einige Verarbeitungszeiten:
* Organisatorische Operationen: 0,5 bis 2,5 Millisekunden (ms)
* Festkommaoperation: Addition 3,8 ms, Multiplikation 7 ms, Division 14 ms
* Gleitkommaoperation: Addition 7 ms, Multiplikation 8 ms, Division 14 ms
Damit lässt sich eine mittlere Leistung von etwa 120 FLOPS abschätzen. Zum Vergleich: Ein im Jahr 2005 handelsüblicher PC leistet um drei Milliarden FLOPS.
Das Design der ZRA 1 entstand unter der Leitung von Gerd Böhnisch.

## Verwendung

1960 wurde der ZRA 1 auf der Leipziger Frühjahrsmesse ausgestellt. Gleichzeitig begann im Zeiss-Zweigwerk Saalfeld die Serienfertigung, dort wurden insgesamt 31 Anlagen hergestellt. Die Verteilung der Rechner auf die Institutionen erfolgte durch eine Kommission des Forschungsrates der DDR:
* 15 Computer kamen an Akademie- und Forschungsinstitute,
* 10 an Hochschulen (davon die erste bereits 1961 an die Technische Hochschule Magdeburg) und
* 7 Anlagen einschließlich des Prototyps wurden in der Industrie eingesetzt.
Ende 1963 wurde die Herstellung des Rechners zu Gunsten des vom VEB Elektronische Rechenmaschinen in Karl-Marx-Stadt entwickelten, voll transistorisierten Digitalrechners Robotron 100 eingestellt. Eine politische Entscheidung war die Einstellung der Arbeiten am Nachfolgemodell ZRA 2, die zu dieser Zeit schon weit fortgeschritten waren – die Entwicklung von Digitalrechnern sollte beim Kombinat Robotron konzentriert werden. Der Einsatz der Maschinen dauerte bis Ende der 1960er Jahre, als die Robotron 300, die ab 1968 gebaut wurden, in größerer Zahl verfügbar wurden.
Trotz der geringen Stückzahl hatte der ZRA 1 großen Einfluss auf die Informatik in der DDR, da viele Datenverarbeitungs-Fachkräfte der ersten Generation die ersten praktischen Erfahrungen mit Digitalrechnern auf einem ZRA 1 machten.