Ordinateur numérique de lancement de véhicule - Launch Vehicle Digital Computer

LVDC du manuel technique de l'unité d'instrument

Le Launch Vehicle Digital Computer ( LVDC ) était un ordinateur qui fournissait le pilote automatique de la fusée Saturn V du lancement à l' insertion en orbite terrestre . Conçu et fabriqué par l'Electronics Systems Center d' IBM à Owego, New York, c'était l'un des composants majeurs de l' Instrument Unit , équipant l' étage S-IVB des fusées Saturn V et Saturn IB . Le LVDC a également pris en charge la vérification avant et après le lancement du matériel Saturn. Il a été utilisé en conjonction avec l' adaptateur de données du véhicule de lancement (LVDA) qui a effectué le conditionnement du signal des entrées du capteur à l'ordinateur du véhicule de lancement.

Matériel

Le LVDC était capable d'exécuter 12190 instructions par seconde . À titre de comparaison, un microprocesseur de l'ère 2012 peut exécuter 4 instructions par cycle à 3 GHz, atteignant 12 milliards d'instructions par seconde, un million de fois plus rapidement.

Son horloge principale fonctionnait à 2,048 MHz, mais les opérations étaient effectuées en série par bits, avec 4 cycles requis pour traiter chaque bit, 14 bits par phase d'instruction et 3 phases par instruction, pour un temps de cycle d'instruction de base de 82 s (168 cycles d'horloge ) pour un simple ajout. Quelques instructions (telles que multiplier ou diviser) ont nécessité plusieurs multiples du cycle d'instructions de base pour s'exécuter.

La mémoire était sous la forme de syllabes de 13 bits , chacune avec un 14e bit de parité. Les instructions avaient une taille d'une syllabe, tandis que les mots de données avaient deux syllabes (26 bits). La mémoire principale était un noyau magnétique à accès aléatoire , sous la forme de modules de mémoire de 4 096 mots. Jusqu'à 8 modules fournissaient un maximum de 32 768 mots de mémoire. Des lignes à retard à ultrasons fournissaient un stockage temporaire.

Pour plus de fiabilité, le LVDC a utilisé une logique à triple redondance et un système de vote. L'ordinateur comprenait trois systèmes logiques identiques. Chaque système logique a été divisé en un pipeline à sept étages . À chaque étape du pipeline, un système de vote prendrait un vote majoritaire sur les résultats, le résultat le plus populaire étant transmis à l'étape suivante dans tous les pipelines. Cela signifiait que, pour chacun des sept étages, un module de l'un des trois pipelines pouvait tomber en panne et que le LVDC produirait toujours les résultats corrects. Le résultat était une fiabilité estimée à 99,6 % sur 250 heures de fonctionnement, ce qui était bien plus que les quelques heures requises pour une mission Apollo.

Avec quatre modules de mémoire, donnant une capacité totale de 16 384 mots, l'ordinateur pesait 72,5 livres (32,9 kg), mesurait 29,5 x 12,5 x 10,5 pouces (750 mm × 320 mm × 270 mm) et consommait 137 W.

Architecture logicielle et algorithmes

Les mots d'instruction LVDC ont été divisés en un champ d'opcode de 4 bits (bits les moins significatifs) et un champ d'adresse d'opérande de 9 bits (bits les plus significatifs). Cela lui laissait seize valeurs d'opcode possibles lorsqu'il y avait dix-huit instructions différentes : par conséquent, trois des instructions utilisaient la même valeur d'opcode et utilisaient deux bits de la valeur d'adresse pour déterminer quelle instruction était exécutée.

La mémoire a été divisée en "secteurs" de 256 mots. 8 bits de l'adresse spécifiée un mot dans un secteur, et le 9ème bit sélectionné entre le "secteur courant" sélectionnable par logiciel ou un secteur global appelé "mémoire résiduelle".

Les dix-huit instructions LVDC possibles étaient :

Instruction Code opération Une fonction
HOP 0000 Transférer l'exécution vers une autre partie du programme. Contrairement à une instruction 'saut' moderne, l'adresse de l'opérande ne spécifiait pas réellement l'adresse vers laquelle sauter, mais pointait vers une 'constante HOP' de 26 bits qui spécifiait l'adresse.
MPY 0001 Multipliez le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande par le contenu du registre de l'accumulateur. Cette instruction a pris quatre cycles d'instructions pour se terminer, mais n'a pas bloqué l'exécution du programme, de sorte que d'autres instructions ont pu s'exécuter avant la fin. Le résultat a été laissé dans un registre connu.
SUB 0010 Soustraire le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande du registre de l'accumulateur.
DIV 0011 Divisez le contenu de l'emplacement mémoire spécifié dans l'adresse d'opérande dans l'accumulateur. Cette instruction a nécessité huit cycles d'instructions, mais n'a pas bloqué l'exécution du programme.
TNZ 0100 Transfère l'exécution de l'instruction à l'adresse d'opérande spécifiée si le contenu de l'accumulateur n'est pas nul.
MPH 0101 Multipliez le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande par le contenu du registre de l'accumulateur. Contrairement à MPY, cette instruction arrête l'exécution jusqu'à ce que la multiplication soit terminée.
AND 0110 ET logiquement le contenu de l'accumulateur avec le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande.
ADD 0111 Ajoutez le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande au registre de l'accumulateur.
TRA 1000 Transférez l'exécution vers l'emplacement mémoire spécifié dans l'adresse de l'opérande. L'adresse se trouve dans le secteur d'instruction en cours ; le 9ème bit (résiduel) de l'opérande sélectionne la syllabe.
XOR 1001 XOR logiquement le contenu de l'accumulateur avec le contenu de l'emplacement mémoire spécifié dans l'adresse de l'opérande.
PIO 1010 Entrée ou sortie de processus : communiquez avec le matériel externe via l'adaptateur de données. "Les bits d'adresse de poids faible, A1 et A2, déterminent si l'opération est une instruction d'entrée ou de sortie. Les bits d'adresse de poids fort, A8 et A9, déterminent si le contenu des données est transféré depuis la mémoire principale, la mémoire résiduelle ou l'accumulateur."
STO 1011 Stockez le contenu du registre de l'accumulateur dans l'emplacement mémoire spécifié dans l'adresse de l'opérande.
TMI 1100 Transférer l'exécution à l'adresse d'opérande spécifiée si le contenu de l'accumulateur est négatif.
RSU 1101 Le contenu de l'accumulateur est soustrait du contenu de l'emplacement mémoire spécifié dans l'adresse d'opérande, et le résultat est laissé dans l'accumulateur.
SHR 01 1110 Le contenu de l'accumulateur est décalé d'un maximum de deux bits, en fonction d'une valeur dans l'adresse de l'opérande. Cette instruction peut également effacer l'accumulateur si les bits d'adresse de l'opérande sont à zéro.
CDS x0 1110 Changer de secteur de données.
EXM 11 1110 Transférez l'exécution à l'une des huit adresses dépendant de l'adresse de l'opérande, qui spécifie également les modifications apportées à l'adresse de l'opérande de l'instruction suivante avant son exécution.
CLA 1111 (Effacer l'accumulateur et) charger la mémoire.

Programmes et algorithmes

En vol, le LVDC a effectué une boucle de calcul majeure toutes les 2 secondes pour le guidage du véhicule, et une boucle mineure 25 fois par seconde pour le contrôle d'attitude. La boucle mineure est déclenchée par une interruption dédiée toutes les 40 ms et prend 18 ms pour s'exécuter.

Contrairement au logiciel Apollo Guidance Computer , le logiciel qui fonctionnait sur le LVDC semble avoir disparu. Bien que le matériel soit assez simple à émuler, les seules copies restantes du logiciel se trouvent probablement dans la mémoire centrale des LVDC de l' unité d' instruments des fusées Saturn V restantes exposées sur les sites de la NASA.

Interruptions

Le LVDC pourrait également répondre à un certain nombre d'interruptions déclenchées par des événements externes.

Pour un Saturn IB, ces interruptions étaient :

Bit de mot de données LVDC Une fonction
1 Interne à LVDC
2 De rechange
3 Erreur de mémoire simultanée
4 Interruption du décodeur de commande
5 Publication de référence d'orientation
6 Initiation manuelle de la coupure du moteur S-IVB
7 Coupure des moteurs hors-bord S-IB
8 Sortie moteur S-IVB
9 Interruption RCA-110A
10 Capteurs de niveau de carburant S-IB à sec
11 Interruption RCA-110A

Pour une Saturn V, ces interruptions étaient :

Bit de mot de données LVDC Une fonction
1 Interruption de boucle mineure
2 Interrupteur de sélection de commutateur
3 Interruption de l'unité d'interface informatique
4 Perte de contrôle temporaire
5 Interruption du récepteur de commande
6 Publication de référence d'orientation
7 Épuisement du propulseur S-II/coupure du moteur
8 Épuisement du propulseur S-IC/coupure du moteur
9 Sortie moteur S-IVB
dix Recyclage du programme (interruption RCA-110A)
11 Moteur S-IC Inboard Out
12 Commande LVDA/RCA-110A Interruption

Construction

Le LVDC mesurait environ 30 pouces (760 mm) de large, 12,5 pouces (320 mm) de haut et 10,5 pouces (270 mm) de profondeur et pesait 80 livres (36 kg). Le châssis était en alliage de magnésium-lithium LA 141, choisi pour sa rigidité élevée, son faible poids et ses bonnes caractéristiques d'amortissement des vibrations. Le châssis était divisé en une matrice 3 x 5 de cellules séparées par des parois à travers lesquelles du liquide de refroidissement circulait pour éliminer les 138 watts de puissance dissipée par l'ordinateur. Des fentes dans les parois cellulaires contenaient des "pages" d'électronique. La décision de refroidir le LVDC en faisant circuler du liquide de refroidissement à travers les parois de l'ordinateur était unique à l'époque et a permis au LVDC et au LVDA (refroidis partiellement à l'aide de cette technique) d'être placés dans un emplacement de plaque froide en raison de l'emballage tridimensionnel. Les plaques froides utilisées pour refroidir la plupart des équipements de l' unité d'instruments étaient inefficaces du point de vue de l'espace, bien que polyvalentes pour la variété d'équipements utilisés. L'alliage LA 141 avait été utilisé par IBM sur le clavier Gemini, les unités de lecture et l'ordinateur en petites quantités et le plus grand cadre du LVDC a été produit à partir des plus grandes billettes de LA 141 coulées à l'époque et ensuite usiné CNC dans le cadre .

Une page se composait de deux cartes de 2,5 à 3 pouces (64 à 76 mm) dos à dos et d'un cadre en magnésium-lithium pour conduire la chaleur vers le châssis. Les cartes à 12 couches contenaient des couches de signal, d'alimentation et de masse et les connexions entre les couches étaient réalisées par des trous métallisés.

Jusqu'à 35 carrés d'alumine de 0,3 x 0,3 x 0,07 pouces (7,6 mm × 7,6 mm × 1,8 mm) peuvent être soudés par refusion sur une carte. Ces carrés d'alumine avaient des conducteurs sérigraphiés sur la face supérieure et des résistances sérigraphiées sur la face inférieure. Des puces semi-conductrices de 0,025 x 0,025 pouces (0,64 mm × 0,64 mm), chacune contenant un transistor ou deux diodes, ont été soudées par refusion sur la face supérieure. Le module complet a été appelé un dispositif logique d'unité. Le dispositif logique d'unité (ULD) était une version plus petite du module Solid Logic Technology (SLT) d'IBM , mais avec des connexions à clip. Des billes de cuivre ont été utilisées pour les contacts entre les puces et les motifs conducteurs.

La hiérarchie de la structure électronique est indiquée dans le tableau suivant.

Emballage électronique LVDC
NIVEAU COMPOSANT MATÉRIEL TERME IBM
1 Transistor, diode 0,025 x 0,025 pouces (0,64 mm × 0,64 mm) de silicium -
2 Jusqu'à 14 transistors, diodes et résistances 0,3 x 0,3 x 0,07 pouces (7,6 mm × 7,6 mm × 1,8 mm) alumine ULD (Unité Logique Dispositif)
3 Jusqu'à 35 ULD Carte de circuit imprimé de 2,5 x 3 pouces (64 mm × 76 mm) MIB (carte d'interconnexion multicouche)
4 Deux MIB Cadre magnésium-lithium Page

Galerie

Voir également

Remarques

Les références

Liens externes