MIL-STD-1750A (kurz 1750A) bezeichnet eine US-amerikanische Normierung, die eine 16-Bit-Befehlssatzarchitektur (, ISA) für mikroprozessorgesteuerte Systeme in der Avionik, der Luft- und Raumfahrt sowie in militärischen Waffensystemen standardisiert. Die Norm wurde am 2. Juli 1980 vom Verteidigungsministerium der Vereinigten Staaten unter Federführung der United States Air Force (USAF) verabschiedet.
Im Unterschied zu kommerziellen Halbleiterentwicklungen wie dem Intel 8086 oder Motorola 68000 legte MIL-STD-1750A kein konkretes physikalisches Chipdesign fest, sondern definierte ausschließlich das funktionale Programmiermodell, die Registerstruktur, das Speicher- und Interruptverhalten sowie die mathematischen Operationen. Dies ermöglichte es zahlreichen Halbleiterherstellern, zueinander softwarekompatible, aber technologisch grundlegend unterschiedliche Prozessoren – insbesondere für den Einsatz unter extremen Strahlungs- und Temperaturbedingungen – zu fertigen.
Geschichte und Entwicklungshintergrund
Softwarekrise der militärischen Avionik in den 1970er-Jahren Zu Beginn der 1970er-Jahre führte die rasante Einführung digitaler Bordelektronik in Kampfflugzeugen, Lenkwaffen und Radarsystemen zu gravierenden logistischen und wirtschaftlichen Problemen. Rüstungsunternehmen entwickelten für jedes neue Projekt maßgeschneiderte, proprietäre Computerarchitekturen. Dies führte dazu, dass innerhalb der US-Streitkräfte hunderte inkompatible Prozessortypen und Assemblersprachen nebeneinander existierten.
Softwareänderungen, Fehlerbehebungen oder Portierungen auf neuere Hardware erforderten regelmäßig eine komplette Neuentwicklung von Programmen und Testwerkzeugen. Die Instandhaltungs- und Lebenszykluskosten für Software überstiegen bald die eigentlichen Beschaffungskosten der Hardware um ein Vielfaches.
Standardisierungsinitiative der US-Streitkräfte Um dieser Fragmentierung entgegenzuwirken, initiierte das US-Militär eine koordinierte Standardisierungsinitiative auf zwei Ebenen: Auf der Softwareebene sollte eine einheitliche Hochsprache geschaffen werden, was zur Weiterentwicklung von JOVIAL (J73) und schließlich zur Definition der Programmiersprache Ada führte. Auf der Hardwareebene beauftragte die Aeronautical Systems Division (ASD) auf der Wright-Patterson Air Force Base in Ohio eine Expertengruppe mit dem Entwurf einer universellen Befehlssatzarchitektur für fliegende Rechnersysteme.
Das Ergebnis dieser Standardisierung wurde am 2. Juli 1980 als MIL-STD-1750 (USAF) veröffentlicht und kurz darauf durch Nachbesserungen (Notice 1 im Mai 1982) als MIL-STD-1750A etabliert.
Das Konzept der herstellerunabhängigen Architektur Der strategische Kerngedanke von MIL-STD-1750A bestand darin, die Spezifikation bewusst von der Halbleitertechnik zu entkoppeln. Das US-Verteidigungsministerium schrieb vor, welche Ergebnisse Instruktionen bei bestimmten Operanden liefern mussten, überließ den Herstellern jedoch die schaltungstechnische Auslegung auf Gatterebene.
Dieser Ansatz brachte mehrere strategische Vorteile: Wettbewerb und Zweitquellen (): Verschiedene Halbleiterhersteller konnten um Lieferverträge konkurrieren, ohne dass bereits geschriebene und zertifizierte Software modifiziert werden musste. Technologische Flexibilität: Der Befehlssatz konnte je nach Einsatzszenario in Bipolartechnik, Standard-CMOS, Galliumarsenid (GaAs) oder strahlungsresistenten Spezialverfahren wie Silicon-on-Sapphire (SoS) bzw. Silicon on Insulator (SOI) realisiert werden. Langzeitverfügbarkeit: Veraltete Bausteine konnten durch technologisch modernere Re-Implementierungen ersetzt werden, während die missionskritische Software unverändert lauffähig blieb.
Der Standard fand auch außerhalb des US-Militärs weite Verbreitung und wurde von zivilen Raumfahrtagenturen wie der NASA und der ESA als De-facto-Standard für wissenschaftliche Satelliten und Raumsonden übernommen.
Architektur und technische Konzeption
MIL-STD-1750A ist als 16-Bit-Register-Register-Maschine ausgelegt, deren Befehlssatz auf deterministische Echtzeitverarbeitung und numerische Berechnungen ausgelegt ist.
Registerstruktur und Adressierung Dem Programmierer stehen 16 universelle 16-Bit-Allzweckregister zur Verfügung (, R0 bis R15). Die Register R1 bis R15 können für indizierte Adressierungen herangezogen werden, während R12 bis R15 als Basisregister für segmentierte Speicherzugriffe dienen.
Die meisten Maschinenbefehle besitzen eine Wortbreite von 16 Bit; komplexere Instruktionen mit direkten Operanden oder Adressangaben nutzen eine 16-Bit-Erweiterung (Gesamtlänge 32 Bit). Vorzeichenbehaftete Ganzzahlen werden im Zweierkomplement verarbeitet (16 Bit einfach, 32 Bit doppelt breit).
Speicherverwaltung und Speicherschutz (MMU und BPU) Im Basismodell besitzt die CPU einen linearen Adressraum von 64 K-Worten (entsprechend 128 Kilobyte). Um den steigenden Anforderungen komplexerer Avionikprogramme gerecht zu werden, spezifiziert die Norm eine optionale Speicherverwaltungseinheit (, MMU): Die MMU unterteilt den Speicher in Seiten () zu je 4 K-Worten und erweitert den adressierbaren physikalischen Gesamtspeicher über ein 512-Eintrags-Mapping-Register auf 1 Mega-Wort (2 Megabyte). Sie unterstützt eine logische Trennung zwischen Befehls- () und Datenspeicher (). Eine optionale Block Protection Unit (BPU) stellt schlüsselbasierte Zugriffsberechtigungen () bereit, um Code- und Datenblöcke vor unberechtigten Schreibzugriffen zu schützen.
Mathematische Formate und Gleitkommaarithmetik Da der Standard vor der Verabschiedung der heute universellen Norm IEEE 754 (1985) formuliert wurde, definiert MIL-STD-1750A eigenständige Gleitkommaformate: Einfache Genauigkeit (32 Bit): 24-Bit-Mantisse im Zweierkomplement und 8-Bit-Exponent. Erweiterte Genauigkeit (48 Bit): 40-Bit-Mantisse im Zweierkomplement und 8-Bit-Exponent.
Diese Formate ermöglichten hochexakte Berechnungen für Flugbahn- und Waffenleitsysteme direkt auf Hardwareebene ohne Software-Emulation.
Ein-/Ausgabe und Interrupt-System Die Ein- und Ausgabe erfolgt über einen eigenständigen 16-Bit-I/O-Adressraum mit dedizierten Steuerbefehlen (XIO, und VIO, ). Das Interrupt-Subsystem stellt 16 priorisierte, fest vektorisierte Interrupt-Kanäle bereit, was extrem kurze Latenzzeiten für zeitkritische Reaktionen im Flugbetrieb ermöglicht.
Halbleiterimplementierungen
Zahlreiche Halbleiterhersteller brachten ab 1982 eigene Implementierungen auf den Markt:
Fairchild F9450: 1985 stellte Fairchild Semiconductor mit dem F9450 einen der ersten vollintegrierten Ein-Chip-Mikroprozessoren nach 1750A vor. Er wurde in bipolarer I³L-Technologie gefertigt und integrierte die Gleitkommaeinheit direkt auf dem Chip. Wegen der thermischen Verlustleistung der Bipolartransistoren kam ein spezielles Keramikgehäuse aus Berylliumoxid zum Einsatz. Honeywell HX1750: Honeywell fertigte hochgradig strahlungsgehärtete Versionen in Silicon-on-Insulator-CMOS-Technologie (SOI), die Taktraten bis 40 MHz erreichten und gegen den Single Event Latch-up immun waren. Marconi / GEC-Plessey / Dynex MAS281 & MA31750: In Europa entwickelte Marconi (später GEC-Plessey bzw. Dynex) hochgradig strahlungsgehärtete Chipsätze und SoCs in Silicon-on-Sapphire-Technologie (SoS), die über Jahrzehnte den Standard für ESA-Missionscomputer bildeten. Weitere Anbieter: Unter anderem produzierten auch UTMC (UT1750AR), Performance Semiconductor (später Pyramid Semiconductor PACE P1750A) sowie Delco Electronics (Magic-V-Rechner) kompatible Prozessoren.
Einsatzbereiche
Militärische Luftfahrt In Kampfflugzeugen und Hubschraubern übernahm der Prozessor zentrale Aufgaben in der Flugregelung (Fly-by-wire), Waffensteuerung und Sensorik: General Dynamics F-16 Fighting Falcon (Digital Flight Control System und Feuerleitrechner) McDonnell Douglas F/A-18 Hornet (Flugsteuerungsrechner RFCS) Boeing AH-64D Apache Longbow (Bordcomputer und Missionssteuerung) IAI Lavi (israelischer Prototyp-Abfangjäger)
Raumfahrtmissionen Aufgrund der hohen Strahlungstoleranz gegen Kosmische Strahlung und Teilchenstrahlung bildete der 1750A-Standard über zwei Jahrzehnte das Rückgrat der interplanetaren Raumfahrt: Rosetta (Kometensonde der ESA; Steuerung von Orbiter und Subsystemen) Mars Express und Venus Express (primäre Steuer- und Navigationsrechner) Cassini-Huygens (Lageregelungs- und Triebwerkssteuerung bei NASA/ESA) Envisat (Erdbeobachtungssatellit; das Synthetic-Aperture-Radar-Instrument ASAR nutzte 42 MA31750-Prozessoren) Earth Observing System der NASA (Einsatz auf den Satelliten Aqua, Aura und Terra)
Softwareunterstützung
Die Softwareentwicklung erfolgte vorwiegend in zwei standardisierten Sprachen: JOVIAL (J73): Die bis in die 1980er-Jahre dominierende Standardprogrammiersprache der US Air Force für Missionssoftware. Ada: Gemäß den Richtlinien des US-Verteidigungsministeriums entstanden validierte Ada-Cross-Compiler (unter anderem von DDC-I und Tartan Labs).
Als Echtzeitbetriebssysteme (RTOS) kamen spezialisierte Mikrokernel und Adaptionen industrieller Systeme wie VxWorks zum Einsatz.
Nachfolge und Vermächtnis
Mitte der 1980er-Jahre begannen Arbeiten an einem Nachfolgestandard namens MIL-STD-1750B, der erweiterte Adressierungsmodi und zusätzliche Instruktionen vorsah. Dieser Standard wurde jedoch nicht mehr flächendeckend ratifiziert, da die rasante Weiterentwicklung kommerzieller RISC-Architekturen die militärische Sonderentwicklung technisch überholte.
1994 leitete das US-Verteidigungsministerium unter Verteidigungsminister William Perry die sogenannte Perry-Initiative ein. Diese schrieb vor, künftig vorrangig auf kommerzielle Standards (, COTS) zurückzugreifen, anstatt proprietäre militärische Architekturen zu finanzieren. Moderne 32-Bit-RISC-Prozessoren mit strahlungsgehärteten Varianten – insbesondere SPARC (ERC32, LEON), MIPS (Mongoose-V) und PowerPC (RAD6000, RAD750) – lösten den 1750A-Standard ab.
Im August 1996 wurde MIL-STD-1750A durch die Veröffentlichung von Notice 5 offiziell für Neuentwicklungen für inaktiv erklärt (). Aufgrund extrem langer Lebenszyklen in der Luft- und Raumfahrt werden 1750A-Systeme jedoch weiterhin gewartet oder als synthetisierbare IP-Cores auf FPGAs emuliert.
Siehe auch MIL-STD-1553 (Militärischer Feldbusstandard für Avioniksysteme) RAD750 (PowerPC-basierter Raumfahrtprozessor)
Literatur
Weblinks QuickSearch-Datenbank des US-Verteidigungsministeriums für MIL-Standards (englisch)
Kategorie:Mikroprozessor Kategorie:Militärische Luftfahrt Kategorie:Raumfahrttechnik