Section courante

A propos

Section administrative du site

Introduction

Le IBM 1620 Data Processing System est un ordinateur scientifique développé et commercialisé par International Business Machines Corporation (IBM) à partir de 1959. Conçu pour proposer une solution de calcul scientifique relativement économique par rapport aux grands ordinateurs IBM de l'époque, il était principalement destiné aux universités, laboratoires, établissements d'enseignement, centres de recherche, entreprises d'ingénierie et petites organisations scientifiques ayant besoin d'effectuer des calculs complexes sans disposer des moyens nécessaires pour acquérir une installation informatique beaucoup plus importante.

Le IBM 1620 fut annoncé le 21 octobre 1959. Il occupait une position particulière dans le catalogue IBM : plutôt que de viser prioritairement le traitement administratif et commercial, comme le IBM 1401 apparu à la même période, le 1620 était surtout orienté vers le calcul scientifique, mathématique et technique.

L'une des caractéristiques les plus remarquables du IBM 1620 est son architecture. Il ne repose pas sur un microprocesseur, puisque les microprocesseurs intégrés sur une seule puce n'existaient pas encore commercialement en 1959. Son unité centrale est construite à partir de circuits transistorisés, notamment des modules électroniques IBM de type SMS (Standard Modular System).

Le 1620 n'est pas non plus un ordinateur binaire conventionnel utilisant des mots d'une longueur fixe. Son architecture travaille directement sur des chiffres décimaux codés en binaire et permet de manipuler des champs numériques de longueur variable. Cette conception était particulièrement intéressante pour les calculs scientifiques nécessitant des nombres possédant différentes précisions.

La mémoire principale utilise des tores magnétiques, une technologie courante dans les ordinateurs des années 1950 et 1960. Dans sa configuration de base, le IBM 1620 Model I possède 20 000 positions décimales. Cette capacité pouvait être portée à 40 000 ou 60 000 positions grâce à l'ajout d'une unité d'entreposage IBM 1623.

Il faut donc éviter de traduire directement cette capacité en « 20 Ko de RAM ». La mémoire du 1620 n'est pas organisée en octets de huit bits comme celle d'un ordinateur moderne. Chaque position représente essentiellement un chiffre décimal accompagné de bits supplémentaires, notamment pour le marquage et le contrôle de parité. La documentation IBM parle ainsi de *core storage positions* ou de positions de mémoire.

Le Model I possède un cycle de mémoire de 20 microsecondes. Les données sont accessibles directement dans la mémoire à tores, et les opérations du processeur travaillent largement de mémoire à mémoire. Contrairement aux microprocesseurs modernes, le programmeur ne dispose pas d'un ensemble conventionnel de registres généraux dans lesquels charger les opérandes avant de réaliser les calculs.

L'une des particularités les plus célèbres du premier IBM 1620 concerne la manière dont certaines opérations arithmétiques sont effectuées. Sur le Model I, l'addition et la multiplication utilisent notamment des tables de consultation placées en mémoire plutôt que de dépendre entièrement de circuits arithmétiques spécialisés.

Cette technique permit de simplifier une partie de l'électronique nécessaire à la construction de la machine. Elle contribua également à l'apparition du surnom humoristique CADET, parfois développé comme Can't Add, Doesn't Even Try, faisant référence à l'utilisation de tables en mémoire pour effectuer certaines opérations arithmétiques. Cette expression est toutefois un surnom historique et non une désignation officielle d'IBM.

Le système possède une architecture à deux adresses. Une instruction complète occupe normalement 12 positions décimales : deux positions pour le code de l'opération, cinq pour l'adresse P et cinq pour l'adresse Q. L'adresse P désigne généralement une destination et l'adresse Q une source ou une autre valeur utilisée par l'instruction.

L'organisation décimale du 1620 présente un autre avantage : les nombres ne sont pas nécessairement limités à une taille fixe de 8, 16, 32 ou 64 bits. Les champs numériques peuvent avoir une longueur variable, ce qui permet au programmeur d'adapter la précision des calculs à ses besoins.

Le IBM 1620 était également proposé avec différentes fonctions optionnelles. Selon la configuration, il pouvait notamment recevoir des fonctions d'adressage indirect, de division automatique et de calcul en virgule flottante. Ces possibilités augmentaient considérablement son intérêt pour les applications scientifiques.

Les entrées et sorties pouvaient être effectuées au moyen de plusieurs périphériques. L'un des éléments caractéristiques de la configuration de base était une machine à écrire de console, permettant à l'opérateur d'interagir avec le système. Le IBM 1620 pouvait également être associé à des lecteurs et perforateurs de bandes de papier, à des lecteurs/perforateurs de cartes, à des imprimantes, à des unités de disques et même à un traceur graphique.

Le IBM 1621 Paper Tape Unit permettait par exemple de lire et de perforer des bandes de papier à huit pistes. Le IBM 1622 Card Read-Punch permettait quant à lui d'utiliser les traditionnelles cartes perforées IBM à 80 colonnes. Ces supports pouvaient contenir des programmes et des données.

Pour l'impression, le système pouvait notamment être associé à l'IBM 1443 Printer, offrant suivant sa configuration des lignes de 120 ou 144 caractères. Pour les applications graphiques et scientifiques, le IBM 1627 Plotter permettait de tracer graphiquement les résultats numériques produits par les programmes.

L'utilisation d'un traceur était particulièrement intéressante dans un environnement scientifique ou d'ingénierie. Les résultats de calculs pouvaient ainsi être transformés en courbes et graphiques sans que l'utilisateur ait à reporter manuellement de longues séries de valeurs numériques.

Des systèmes d'entreposage sur disque furent également disponibles. Les configurations plus évoluées pouvaient notamment exploiter des unités de disques telles que le IBM 1311, donnant au système un accès direct à des quantités de données beaucoup plus importantes que celles pouvant être conservées dans la mémoire principale.

Le IBM 1620 joua également un rôle important dans l'enseignement de la programmation. Son coût relativement accessible à l'échelle des ordinateurs scientifiques de son époque permit à de nombreuses universités d'acquérir une machine et de donner aux étudiants un accès direct à un véritable ordinateur.

Plusieurs environnements de programmation furent proposés. L'un des principaux était le 1620 Symbolic Programming System (SPS), permettant de programmer la machine à l'aide d'un langage symbolique plutôt que de devoir écrire directement les codes numériques des instructions.

Le FORTRAN occupa également une place très importante dans l'écosystème du 1620. Ce langage était particulièrement adapté aux calculs scientifiques et techniques. IBM développa plusieurs systèmes FORTRAN pour la machine, dont 1620 FORTRAN II. La documentation IBM montre notamment que certaines versions du compilateur nécessitaient une configuration comportant 40 000 positions de mémoire, ainsi qu'un lecteur/perforateur de cartes et certaines fonctions matérielles.

Cette association avec FORTRAN renforça considérablement l'intérêt du 1620 dans les universités. Les étudiants, ingénieurs et scientifiques pouvaient écrire leurs formules et algorithmes dans un langage beaucoup plus proche de la notation mathématique que le langage machine.

IBM développa par la suite une seconde version importante de l'ordinateur, le IBM 1620 Model II, introduit en 1962. Bien qu'il reste compatible avec les programmes du premier modèle, son architecture interne fut sensiblement améliorée.

Le Model II possède notamment une mémoire plus rapide, avec un cycle de 10 microsecondes, soit la moitié des 20 microsecondes du Model I. Certaines opérations arithmétiques furent également améliorées matériellement. En particulier, l'addition et la soustraction bénéficient de circuits arithmétiques dédiés plutôt que de dépendre de la table d'addition utilisée par le premier modèle.

La multiplication continue néanmoins à employer une table de consultation en mémoire. Le Model II intègre également certaines fonctions qui étaient optionnelles sur le premier modèle, ce qui en fait une version plus performante et plus complète du système original.

Les variantes du 1620 furent aussi utilisées dans des systèmes spécialisés. Des versions modifiées de l'architecture servirent notamment au IBM 1710 Process Control System, destiné au contrôle et à la surveillance de procédés industriels. Cette utilisation montre que l'architecture ne se limita pas aux universités et aux laboratoires.

Le IBM 1620 connut ainsi une carrière relativement longue pour une machine introduite à la fin des années 1950. Environ 2 000 systèmes furent produits avant le retrait de la gamme en 1970. Son successeur dans le domaine des petits ordinateurs scientifiques IBM fut notamment le IBM 1130, introduit au milieu des années 1960.

Le IBM 1620 occupe aujourd'hui une place particulière dans l'histoire de l'informatique. Son architecture décimale inhabituelle, son utilisation de mémoire à tores magnétiques, son recours aux tables arithmétiques sur le premier modèle et sa forte présence dans les établissements d'enseignement en font l'une des machines scientifiques les plus reconnaissables du début des années 1960.

Fiche technique

Voici les caractéristiques du «1620» de «IBM» :

Spécification Description
Fabricant IBM
Modèle IBM 1620 Data Processing System
Date d'annonce 21 octobre 1959
Introduction du Model II 1962
Type Ordinateur scientifique et de traitement de données
Pays d'origine États-Unis
Technologie Ordinateur transistorisé
Microprocesseur Aucun ; la machine précède l'apparition des microprocesseurs
Technologie logique Circuits transistorisés utilisant notamment les modules IBM SMS (Standard Modular System)
Architecture numérique Décimale, codée en binaire
Organisation des données Champs numériques de longueur variable
Architecture des instructions Architecture principalement à deux adresses
Longueur normale d'une instruction 12 chiffres : code opération de 2 chiffres + adresse P de 5 chiffres + adresse Q de 5 chiffres
Registres généraux accessibles au programmeur Pas de registres généraux conventionnels ; opérations principalement mémoire à mémoire
Mémoire principale Mémoire à tores magnétiques
Mémoire de base 20 000 positions décimales
Extension mémoire 40 000 ou 60 000 positions décimales selon configuration
Cycle mémoire du Model I 20 μs
Cycle mémoire du Model II 10 μs
Arithmétique du Model I Certaines opérations, notamment addition et multiplication, utilisent des tables de consultation en mémoire
Arithmétique du Model II Addition et soustraction réalisées matériellement ; multiplication conservant une table de consultation
Virgule flottante Disponible comme fonction matérielle optionnelle
Division Option sur certaines configurations du Model I ; intégrée au Model II
Entrée/sortie de console Machine à écrire de console
Bande de papier IBM 1621 Paper Tape Unit
Cartes perforées IBM 1622 Card Read-Punch, cartes de 80 colonnes
Imprimante Notamment IBM 1443 Printer
Traceur graphique IBM 1627 Plotter
Extension de mémoire Model I IBM 1623 Core Storage Unit
Mémoire du Model II IBM 1625 Core Storage Unit
Entreposage sur disque Disponible avec certaines configurations, notamment autour du IBM 1311
Langage symbolique SPS - 1620 Symbolic Programming System
Langages de haut niveau Notamment FORTRAN et FORTRAN II
Utilisation principale Calcul scientifique, mathématiques, ingénierie, recherche et enseignement
Production totale Environ 2 000 systèmes
Fin de commercialisation 1970
Successeur notable IBM 1130


Dernière mise à jour : Dimanche, le 30 Mai 2021