Accueil🇫🇷Chercher

Apollo Abort Guidance System

Le système AGS (Abort Guidance System) était l'ordinateur de secours utilisé en cas de déaillance du système de guidage principal du module lunaire du programme Apollo. Il était conçu pour être mis en œuvre en mode dégradé, durant les phases d'alunissage, de décollage, ou de rendez-vous en orbite lunaire. En tant que système de secours, il n'était pas prévu pour gérer un alunissage. Il était en revanche capable de faciliter un amarrage en orbite.

Les différents composants de AGS (Abort Guidance System)

DĂ©veloppement

Le système AGS a été développé par la société TRW, d'une manière totalement séparée du système de guidage principal (PGNCS) et entre autres de l'ordinateur principal (AGC). C'est historiquement le premier système de guidage à faire usage d'une centrale inertielle de type strapdown (c'est-à-dire sans cardans rotatifs). C'est également le seul système du programme Apollo à posséder cette particularité. Si cette conception ne lui permet pas d'être aussi précis que ses homologues à cardan, elle est suffisante pour une navigation assistée par le télescope optique (AOT) et le radar de rendez-vous. Le principal intérêt du strapdown réside dans sa faible masse et son encombrement réduit.

Description

L'AGS comprend les composants suivants :

  • l'AEA, Abort Electronic Assembly : le calculateur ;
  • l'ASA, Abort Sensor Assembly : une centrale inertielle de type strapdown ;
  • le DEDA, Data Entry and Display Assembly : une interface utilisateur, similaire au DSKY de l'AGC.

Le calculateur utilisĂ© Ă©tait un MARCO 4418, mesurant 12,7 x 20,3 60,33 centimètres. Sa masse Ă©tait de 14,83 kg, et il consommait 90 watts. La prĂ©sence d'une interface mĂ©moire sĂ©rie le rendait en moyenne plus lent que l'AGC. Cependant, certaines opĂ©rations Ă©taient effectuĂ©es plus rapidement par l'AGS, en raison de diffĂ©rences d'architecture entre les deux machines.

Le calculateur possédait les caractéristiques suivantes :

  • une taille mĂ©moire de 4096 mots. Les 2048 premiers mots constituaient la mĂ©moire vive (RAM), les 2048 derniers la mĂ©moire morte (ROM). La construction similaire des deux types de mĂ©moire rendait le ratio de celles-ci adaptable au besoin ;

Registres

Le calculateur possédait les registres suivants :

  • A : l'accumulateur (18 bits) ;
  • M : le registre mĂ©moire (18 bits), contenant les donnĂ©es transfĂ©rĂ©es entre la mĂ©moire et l'unitĂ© de calcul ;
  • Q : le registre multiplicateur/quotient (18 bits), contenant la moitiĂ© de poids le plus faible du rĂ©sultat d'une opĂ©ration de multiplication ou de quotient. Il est Ă©galement possible de s'en servir comme d'une extension du registre A (accumulateur) ;
  • le registre d'indexation (3 bits), utilisĂ© pour les index d'adressage ;
  • le registre d'adresse (12 bits), contenant l'adresse mĂ©moire demandĂ©e par l'unitĂ© de calcul ;
  • le registre d'opcode (5 bits), contenant le code d'instruction pendant son exĂ©cution ;
  • le compteur ordinal (12 bits) ;
  • le compteur de cycles, ou registre a dĂ©calage (5 bits), contrĂ´lant les instructions de dĂ©calage ;
  • deux timers, fournissant le contrĂ´le des timings ;
  • treize registres d'entrĂ©e.

Les données y sont notées sur la base du complément à deux, le premier bit des registres désigne donc habituellement le signe du nombre.

Instructions

Les instructions du calculateur Ă©taient sous la forme suivante :

opcode (5 bits)  +  index (1 bit)  +  adresse (12 bits)

Le bit d'index indique un adressage indexé. Le processeur avait un set de 27 instructions :

ADD : le contenu de la zone mémoire spécifiée est ajouté au registre A (accumulateur) ;

ADZ (Add and Zero) : identique à l'instruction ADD, avec remise à zéro de la zone mémoire ;

SUB (Subtract) : le contenu de la zone mémoire spécifiée est soustrait au registre A (accumulateur) ;

SUZ (Subtract and Zero) : identique à l'instruction SUB, avec remise à zéro de la zone mémoire ;

MPY (Multiply) : le contenu du registre A est multiplié par le contenu de la mémoire. La moitié la plus significative du résultat est stockée dans le registre A, la moins significative dans le registre Q ;

MPR (Multiply and Round) : identique Ă  l'instruction MPY, le contenu du registre A Ă©tant arrondi en lui ajoutant 1 si le bit de poids fort du registre Q est 1 ;

MPZ (Multiply and Zero) : identique à l'instruction MPR, avec remise à zéro de la mémoire ;

DVP (Divide) : le contenu concaténé des registres A et Q est divisé par le contenu de la mémoire. Le résultat est stocké dans le registre A, et arrondi (sauf si arrondir provoquerait un dépassement mémoire) ;

COM (Complement Accumulator) : le contenu du registre A est remplacé par son complément à deux. Si le contenu du registre A est positif, nul ou égal à -1, il n'est pas modifié ;

CLA (Clear and Add) : la mémoire est copiée dans le registre A ;

CLZ (Clear, Add and Zero) : identique à CLA, avec remise a zéro de la mémoire ;

LDQ (Load Q Register) : la mémoire est copiée dans le registre Q ;

STO (Store Accumulator) : le contenu du registre A est copié en mémoire ;

STQ (Store Q Register) : le contenu du registre Q est copié en mémoire ;

ALS N (Arithmetic Left Shift) : le contenu du registre A est décalé vers la gauche de N bits ;

LLS N (Long Left Shift) : le contenu concaténé du registre A et des 17 derniers bits du registre Q est décalé vers la gauche de N bits. Le signe du registre Q (premier bit) est rendu identique au signe du registre A ;

LRS N (Long Right Shift) : similaire à LLS, mais le contenu est décalé vers la droite ;

TRA (Transfer) : l'instruction suivante est chargée depuis la mémoire ;

TSQ (Transfer and Set Q) : le contenu du registre Q est remplacé par l'adresse supérieure à la zone mémoire spécifiée. L'instruction suivante est ensuite chargée depuis la mémoire ;

TMI (Transfer on Minus Accumulator) : si le contenu du registre A est négatif, l'instruction suivante est chargée depuis la mémoire ;

TOV (Transfer on Overflow) : si l'indicateur de débordement mémoire est à l'état haut, l'instruction suivante est chargée depuis la mémoire ;

AXT N (Address to Index) : le registre d'indexation prend la valeur N ;

TIX (Test Index and Transfer) : si le registre d'indexation est positif, il est décrémenté, puis l'instruction suivante est chargée depuis la mémoire ;

DLY (Delay) : l’exécution s'arrête jusqu'à la réception d'un signal de timing. L'instruction suivante est par la suite chargée depuis la mémoire ;

INP (Input) : le contenu du registre d'entrée à l'adresse mémoire spécifiée est placé dans le registre A. Selon le registre sélectionné, il y a ou non remise à zéro du registre d'entrée ;

OUT (Output) : le contenu du registre A est placé dans le registre de sortie à l'adresse mémoire spécifiée.

Notes et références

Traductions

Bibliographie

Voir aussi

Articles connexes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.