Saturn (Prozessor)
aus Wikipedia, der freien Enzyklopädie
Die Prozessorfamilie Saturn wurde von Hewlett-Packard in den 1980er Jahren zur Verwendung in programmierbaren Taschenrechnern entwickelt. Der erste Saturn-Prozessor wurde 1984 im HP-71B eingesetzt. Spätere Modelle der Saturn-Familie wurden in der beliebten HP-48-Serie verwendet.
[Bearbeiten] Architektur
Die Architektur des Saturn-Prozessors ist Nibble-basiert, das heißt der Kern verarbeitet die Daten 4-Bit-weise und rechnet intern mittels BCD.
Der Prozessor besitzt vier allgemein für Berechnungen verwendbare Register und fünf Kopierregister welche alle je 64 Bit breit sind. Auf die Daten in den vier Rechenregistern kann nibble-basierend zugegriffen werden, während der Kopierregister nur Schreib- und Lesezugriffe mit voller Registerbreite unterstützen. Die 64 Bit eines Rechenregisters (16 Nibble) speichern die Daten in einem speziellen, BCD-basierenden Floating-Point-Format. Dabei wird die Mantisse mit 12 BCD-Stellen und der Exponent mit 3 BCD-Stellen dargestellt. Dies ergibt in der 2er-Komplementärdarstellung einen maximalen Wertebereich von 10±499. Die Verwendung von BCD anstatt binärer Festkommaarithmetik reduziert Rundungsfehler bei der Umwandlung zwischen den binären und dezimalen Zahlensystemen.
Um einen effizienten Speicherzugriff zu gewährleisten ist auch dieser nibble-basierend. Die drei vorhandenen Zeigerregister inklusive dem Programmzähler, sind 20 Bit breit und adressieren pro Speicheradresse jeweils ein Nibble (4 Bit, eine BCD-Stelle). Damit kann die Saturn-CPU 1 MiNibbles adressieren, was einem Speicher von 512 KiBytes entspricht. Zusätzlicher externer Speicher welcher über diesen Adressraum hinaus geht, dies ist ab den Modellen HP-48GX der Fall, wird mittels Bankumschaltung adressiert.
In den neueren HP-Taschenrechnern wie dem HP-49G+ kommt kein Saturn-Prozessor mehr zu Anwendung, sondern die ARM-Architektur. Da allerdings umfangreiche und getestete Software auf der Saturn-Prozessorarchtiktur basiert, wird für noch nicht neu erstellte Systemroutinen (die Firmware ist verhältnismäßig einfach und sicher austauschbar und wird beständig weiterentwickelt) auf dem ARM-Prozessor die Saturn-Prozessorarchitektur softwaremäßig emuliert.
[Bearbeiten] Chipsatz und Applikationen
Der ursprüngliche Saturn-Prozessor gab der gesamten Architektur seinen Namen und produziert wurde die Prozessorfamilie von NEC Corporation. Spätere Prozessoren hatten ihren eigenen Codenamen:
Prozessor Codename | verwendet in Taschenrechner | Eigenschaften |
---|---|---|
Saturn | HP-71B, HP-18C, HP-28C | 640 kHz |
Bert | HP-10B, HP-20S, HP-21S | 640 kHz, 10 kB ROM, 256 Bytes RAM, LCD-Treiber |
Sacajawea | HP-14B, HP-22S, HP-32S, HP-32SII | 640 kHz, 16 kB ROM, 512 Bytes RAM, LCD-Treiber |
Lewis | HP-17B, HP-19B, HP-27S, HP-28S | 1 MHz, 64 kB ROM, LCD-Treiber, Speichercontroller, Infrarot-Schnittstelle |
Clarke | HP-48SX, HP-48S | 2 MHz, LCD-Treiber, Speichercontroller, UART und Infrarot-Schnittstelle |
Yorke | HP-48GX, HP-48G, HP-38G, HP-39G, HP-49G | 3,68 MHz, LCD-Treiber, Speichercontroller, UART und Infrarot-Schnittstelle |
Die Prozessorcodenamen sind inspiriert durch die Mitglieder der Lewis-und-Clark-Expedition.