APEXC - APEXC

L' APE (X) C , ou tout usage électronique (X) Computer série a été conçue par Andrew Donald Booth au Birkbeck College , Londres au début des années 1950. Son travail sur la série APE (X) C a été parrainé par la British Rayon Research Association . Bien que les conventions de dénomination ne soient pas claires, il semble que le premier modèle appartienne à la BRRA. Selon Booth, le X signifiait X-company.

L'une des séries était également connue sous le nom d'APE (X) C ou ordinateur à rayons X électroniques tout usage et était située à Birkbeck.

Contexte

À partir de 1943, Booth a commencé à travailler sur la détermination des structures cristallines à l' aide des données de diffraction des rayons X. Les calculs impliqués étaient extrêmement fastidieux et il y avait beaucoup d'incitation à automatiser le processus et il a développé un ordinateur analogique pour calculer les espacements réciproques du diagramme de diffraction.

En 1947, avec sa collaboratrice et future épouse Kathleen Britten , il passa quelques mois avec l'équipe de von Neumann , qui était à la pointe de la recherche informatique à l'époque.

ARC et SEC

Booth a conçu un ordinateur électromécanique, l' ARC (Automatic Relay Computer), à la fin des années 1940 (1947-1948). Plus tard, ils ont construit un ordinateur électronique expérimental appelé SEC ( Simple Electronic Computer , conçu vers 1948-1949) - et enfin, la série APE (X) C (All-Purpose Electronic Computer).

Les ordinateurs ont été programmés par Kathleen.

La série APE (X) C

La série APE (X) C comprenait les machines suivantes:

Une seule de chacune de ces machines a été construite, à l'exception des HEC (et peut-être MAC) qui étaient des machines commerciales produites en assez grand nombre pour l'époque, autour de 150. Elles étaient de conception similaire, avec diverses petites différences, principalement en I / O équipement. L'APEHC était une machine à cartes perforées tandis que l'APEXC, l'APERC et l'APENC étaient des téléscripteurs ( clavier et imprimante , plus lecteur de bande papier et perforatrice). En outre, l'UCC avait 8k mots de stockage, au lieu de 1k mot pour d'autres machines, et le MAC utilisait des diodes de germanium en remplacement de nombreuses vannes.

Machines de la British Tabulating Machine Company

Image
Prototype de l'ordinateur électronique BTM Hollerith 1

En mars 1951, la British Tabulating Machine Company (BTM) a envoyé une équipe dans l'atelier d'Andrew Booth. Ils ont ensuite utilisé sa conception pour créer le Hollerith Electronic Computer 1 (HEC 1) avant la fin de 1951. L'ordinateur était une copie directe des circuits d'Andrew Booth avec des interfaces d'entrée / sortie supplémentaires. Le HEC 2 était le HEC 1 avec des boîtiers métalliques plus intelligents et a été construit pour le Business Efficiency Exhibition en 1953. Une version légèrement modifiée du HEC 2 a ensuite été commercialisée sous le nom de HEC2M et 8 ont été vendus. Le HEC2M a été remplacé par le HEC4. Environ 100 HEC4 ont été vendus à la fin des années 1950.

Le HEC utilisait des cartes perforées standard ; le HEC 4 avait également une imprimante, et il comportait plusieurs instructions (comme diviser ) et des registres introuvables sur l'APEXC.

Description technique

Un émulateur pour la série APEXC a été développé par MESS . Ils décrivent son fonctionnement comme suit:

L'APEXC est une machine incroyablement simple.


Les mots d'instruction et de données ont toujours une longueur de 32 bits. Le processeur utilise l'arithmétique entière avec une représentation complémentaire de 2. Les adresses ont une longueur de 10 bits. L'APEXC n'a pas de RAM , sauf pour un accumulateur 32 bits et un registre de données 32 bits (utilisé avec l'accumulateur 32 bits pour implémenter des instructions de décalage 64 bits et contenir le résultat 64 bits d'une multiplication ). Les instructions et les données sont stockées dans deux tambours magnétiques , pour un total de 32 pistes magnétiques circulaires de 32 mots. Puisque la vitesse de rotation est de 3750 tr / min (62,5 tours par seconde), la vitesse d'exécution du programme peut aller d'aussi haut que le maximum théorique de 1 kIPS à moins de 100IPS si les instructions et les données du programme ne sont pas contiguës. De nos jours, beaucoup disent qu'une calculatrice de poche est plus rapide.
Une bizarrerie est qu'il n'y a pas de compteur de programme : chaque instruction machine comprend l'adresse de l'instruction suivante. Cette conception peut sembler étrange, mais c'est le seul moyen d'obtenir des performances optimales avec cette mémoire à cylindre.
Le code machine est composé de 15 instructions uniquement, à savoir addition , soustraction , multiplication, chargement (3 variantes), stockage (2 variantes), branche conditionnelle , décalage de bits arithmétique à droite, rotation de bits à droite, entrée de carte perforée, sortie de carte perforée , arrêt de la machine et changement de banque (qui n'est jamais utilisé sur l'APEXC, car il ne dispose que de 1024 mots de stockage et les adresses ont une longueur de 10 bits). Un mode dit vectoriel permet de répéter 32 fois la même opération avec 32 emplacements mémoire successifs. Notez l'absence de bits et / ou / xor et de division. Notez également l'absence de modes d'adressage indirect: la modification dynamique des opcodes est le seul moyen de le simuler.
Une autre bizarrerie est que le bus mémoire et l' ALU ont une largeur de 1 bit. Il y a une horloge binaire de 64 kHz et une horloge de mots de 2 kHz, et chaque mémoire de mot et opération arithmétique est décomposée en 32 opérations de mémoire 1 bit et arithmétiques: cela prend 32 cycles de bits, pour un total de 1 cycle de mot.
Le processeur est assez efficace: la plupart des instructions ne prennent que 2 cycles de mots (1 pour l'extraction, 1 pour la lecture de l'opérande et l'exécution), à l'exception des magasins, des décalages et des multiplications. Le processeur APEXC est qualifié de RISC ; il n'y a pas d'autre mot adéquat.
Notez qu'il n'y a pas de mémoire morte (ROM), et donc pas de chargeur d'amorçage ou de programme de démarrage par défaut. On pense qu'aucun système exécutif ou d' exploitation n'a jamais été écrit pour l'APEXC, bien qu'il y ait eu des bibliothèques de sous - programmes pour les tâches courantes d'arithmétique, d'E / S et de débogage. Le fonctionnement de la machine est normalement effectué via un panneau de commande qui permet à l'utilisateur de démarrer, d'arrêter et de reprendre l' unité centrale de traitement , et de modifier les registres et la mémoire lorsque l'unité centrale est arrêtée. Lors du démarrage de la machine, l' adresse de la première instruction du programme à exécuter doit être entrée dans le panneau de commande, puis l'interrupteur de marche doit être enfoncé. La plupart des programmes se terminent par une instruction d'arrêt, qui permet à l'opérateur de vérifier l'état de la machine, d'exécuter éventuellement des procédures de débogage post-mortem (une routine de vidage de mémoire est décrite dans un livre de programmation APEXC), puis d'entrer l'adresse d'un autre programme et exécuter.

Deux périphériques d'E / S étaient pris en charge: un lecteur de bande papier et une perforatrice de bande papier. La sortie du perforateur peut être envoyée à une unité d'imprimante («téléscripteur») lorsque cela est souhaitable. La sortie de l'imprimante est émulée et s'affiche à l'écran. L'entrée de bande était soit générée par ordinateur par l'APEXC, soit tapée à la main avec un clavier spécial à 32 touches (chaque ligne de bande avait 5 trous de données (<-> bits), ce qui donne 32 valeurs différentes).

Lectures complémentaires

  • Andrew D. Booth Développements techniques: Le développement d'APE (X) .C. (in Automatic Computing Machinery ), Tables mathématiques et autres aides au calcul (MTAC) Volume 8, Numéro 46, avril 1954

Références