JUS
Jan G. Oblonsky, l'un des premiers étudiants de Svoboda et développeur d'EPOS-1, le rappelle ainsi (Eloge: Antonin Svoboda, 1907-l980, IEEE Annals of the History of Computing Vol. 2. No. 4, October 1980):
L'idée originale a été avancée par Svoboda lors de son cours de développement informatique en 1950, lorsque, expliquant la théorie de la construction de multiplicateurs, il a remarqué que dans le monde analogique, il n'y a pas de différence structurelle entre un additionneur et un multiplicateur (la seule différence réside dans l'application les échelles appropriées à l'entrée et à la sortie), tandis que leurs implémentations numériques sont des structures complètement différentes. Il a invité ses élèves à essayer de trouver un circuit numérique qui effectuerait la multiplication et l'addition avec une facilité comparable. Quelque temps plus tard, l'un des étudiants, Miroslav Valach, a approché Svoboda avec l'idée de coder, qui est devenu connu sous le nom de système de classe résiduelle.
Pour comprendre son travail, vous devez vous rappeler ce qu'est la division des nombres naturels. Évidemment, en utilisant des nombres naturels, nous ne pouvons pas représenter des fractions, mais nous pouvons effectuer une division avec reste. Il est facile de voir qu'en divisant différents nombres par le même m donné, le même reste peut être obtenu, auquel cas ils disent que les nombres originaux sont comparables modulo m. Évidemment, il peut y avoir exactement 10 résidus - de zéro à neuf. Les mathématiciens ont rapidement remarqué qu'il est possible de créer un système de numération où, au lieu des nombres traditionnels, ce sont les restes de division qui apparaîtront, puisqu'ils peuvent être additionnés, soustraits et multipliés de la même manière. En conséquence, tout nombre peut être représenté par un ensemble de nombres non pas au sens habituel du terme, mais un ensemble de tels restes.
Pourquoi de telles perversions, facilitent-elles vraiment quelque chose ? En fait, comment deviendra-t-il lorsqu'il s'agira d'effectuer des opérations mathématiques. Il s'est avéré qu'il est beaucoup plus facile pour la machine d'effectuer des opérations non pas avec des nombres, mais avec des restes, et voici pourquoi. Dans le système des classes résiduelles, chaque nombre, à plusieurs chiffres et très long dans le système positionnel habituel, est représenté comme un tuple de nombres à un chiffre, qui sont les restes de la division du nombre original par la base du RNS (un tuple de nombres premiers entre eux).
Comment le travail va-t-il s'accélérer lors d'une telle transition ? Dans un système positionnel conventionnel, les opérations arithmétiques sont effectuées séquentiellement bit par bit. Dans ce cas, les transferts sont formés vers le bit le plus significatif suivant, ce qui nécessite des mécanismes matériels complexes pour leur traitement, ils fonctionnent, en règle générale, lentement et séquentiellement (il existe diverses méthodes d'accélération, multiplicateurs matriciels, etc., mais cela, dans dans tous les cas, est un circuit non trivial et encombrant).
Le RNS a maintenant la capacité de paralléliser ce processus: toutes les opérations sur les résidus pour chaque base sont effectuées séparément, indépendamment et en un seul cycle d'horloge. Évidemment, cela accélère plusieurs fois tous les calculs, de plus, les restes sont par définition à un bit et, par conséquent, calculent les résultats de leur addition, multiplication, etc. ce n'est pas nécessaire, il suffit de les flasher dans la mémoire de la table d'opération et de les lire à partir de là. En conséquence, les opérations sur les nombres dans RNS sont des centaines de fois plus rapides que l'approche traditionnelle ! Pourquoi ce système n'a-t-il pas été mis en œuvre immédiatement et partout ? Comme d'habitude, cela ne se passe qu'en théorie - les calculs réels peuvent se heurter à une nuisance telle qu'un débordement (lorsque le nombre final est trop grand pour être mis dans un registre), l'arrondi dans RNS est également très simple, ainsi que la comparaison de nombres (à proprement parler, RNS n'est pas le système positionnel et les termes "plus ou moins" n'y ont aucun sens). C'est sur la solution de ces problèmes que Valakh et Svoboda se sont concentrés, car les avantages promis par le SOC étaient déjà très importants.
Pour maîtriser les principes de fonctionnement des machines SOC, considérons un exemple (ceux qui ne s'intéressent pas aux mathématiques peuvent l'omettre):
La traduction inverse, c'est-à-dire la restauration de la valeur positionnelle du nombre à partir des résidus, est plus gênante. Le problème est que nous devons en fait résoudre un système de n comparaisons, ce qui conduit à de longs calculs. La tâche principale de nombreuses études dans le domaine du RNS est d'optimiser ce processus, car il sous-tend un grand nombre d'algorithmes, dans lesquels, sous une forme ou une autre, la connaissance de la position des nombres sur la droite numérique est nécessaire. En théorie des nombres, la méthode pour résoudre le système de comparaisons indiqué est connue depuis très longtemps et consiste en une conséquence du théorème des restes chinois déjà mentionné. La formule de transition est assez lourde, et nous ne la donnerons pas ici, nous notons seulement que dans la plupart des cas cette traduction est tentée d'éviter, en optimisant les algorithmes de manière à rester dans le RNS jusqu'à la fin.
Un avantage supplémentaire de ce système est que de manière tabulaire et également en un cycle dans le RNS, vous pouvez effectuer non seulement des opérations sur des nombres, mais aussi sur des fonctions arbitrairement complexes représentées sous la forme d'un polynôme (si, bien sûr, le résultat ne dépasse pas le domaine de représentation). Enfin, le SOC présente un autre avantage important. On peut introduire des motifs supplémentaires et ainsi obtenir la redondance nécessaire au contrôle des erreurs, de manière naturelle et simple, sans encombrer le système à triple redondance.
De plus, le RNS permet d'effectuer le contrôle dès le processus même du calcul, et pas seulement lorsque le résultat est écrit en mémoire (comme le font les codes correcteurs d'erreurs dans le système numérique conventionnel). En général, c'est généralement le seul moyen de contrôler l'ALU en cours de travail, et non le résultat final en RAM. Dans les années 1960, un processeur occupait une armoire ou plusieurs, contenait plusieurs milliers d'éléments individuels, des contacts soudés et détachables, ainsi que des kilomètres de conducteurs - une source garantie d'interférences diverses, de pannes et de pannes, et incontrôlées. Le passage au SOC a permis d'augmenter de centaines de fois la stabilité du système aux pannes.
En conséquence, la machine SOK avait des avantages colossaux.
- La tolérance aux pannes la plus élevée possible "prêt à l'emploi" avec un contrôle automatique intégré de l'exactitude de chaque opération à chaque étape - de la lecture des nombres à l'arithmétique et à l'écriture dans la RAM. Je pense qu'il est inutile d'expliquer que pour les systèmes de défense antimissile, c'est peut-être la qualité la plus importante.
-
Le maximum de parallélisme théorique possible des opérations (en principe, absolument toutes les opérations arithmétiques dans le RNS pourraient être effectuées en un cycle, sans prêter aucune attention à la profondeur de bits des nombres d'origine) et la vitesse des calculs impossible à atteindre par toute autre méthode. Encore une fois, il n'est pas nécessaire d'expliquer pourquoi les ordinateurs de défense antimissile étaient censés être aussi efficaces que possible.
Ainsi, les machines SOK ont simplement supplié leur utilisation comme ordinateur de défense anti-missile, il ne pouvait y avoir rien de mieux qu'elles à cette fin à cette époque, mais de telles machines devaient encore être construites dans la pratique et toutes les difficultés techniques devaient être contournées. Les Tchèques y ont fait face avec brio.
Le résultat de cinq années de recherche a été l'article de Wallach "Origine du code et du système de nombres des classes restantes", publié en 1955 dans la collection "Stroje Na Zpracovani Informaci", vol. 3, Nakl. CSAV, à Prague. Tout était prêt pour le développement de l'ordinateur. En plus de Wallach, Svoboda a attiré plusieurs étudiants et étudiants diplômés plus talentueux dans le processus, et le travail a commencé. De 1958 à 1961, environ 65% des composants de la machine, nommés EPOS I (du tchèque elektronkovy počitač středni - ordinateur moyen), étaient prêts. L'ordinateur était censé être produit dans les installations de l'usine ARITMA, mais, comme dans le cas de SAPO, l'introduction d'EPOS I ne s'est pas faite sans difficultés, notamment dans le domaine de la production de la base d'éléments.
Manque de ferrites pour l'unité de mémoire, mauvaise qualité des diodes, manque d'équipement de mesure - ce ne sont là qu'une liste incomplète des difficultés auxquelles Svoboda et ses étudiants ont dû faire face. La quête maximale était d'obtenir une chose aussi élémentaire qu'une bande magnétique, l'histoire de son acquisition s'inspire également d'un petit roman industriel. Premièrement, en Tchécoslovaquie, il était absent en tant que classe; il n'était tout simplement pas produit, car ils n'avaient aucun équipement pour cela. Deuxièmement, dans les pays du CAEM, la situation était similaire - à ce moment-là, seule l'URSS produisait d'une manière ou d'une autre la bande. Non seulement c'était d'une qualité terrifiante (en général, le problème avec les périphériques et surtout avec la maudite bande de l'ordinateur aux cassettes compactes a hanté les Soviétiques jusqu'à la fin, quiconque a eu la chance de travailler avec la bande soviétique a un énorme nombre d'histoires sur la façon dont il a été déchiré, versé, etc.), de sorte que les communistes tchèques, pour une raison quelconque, n'ont pas attendu l'aide de leurs collègues soviétiques et personne ne leur a donné de ruban.
En conséquence, le ministre de l'Ingénierie générale Karel Poláček a alloué une subvention de 1,7 million de couronnes pour l'extraction de bande en Occident, cependant, en raison d'obstacles bureaucratiques, il s'est avéré que les devises étrangères pour ce montant ne pouvaient pas être libérées dans la limite du ministère de l'Ingénierie générale pour les importations de technologie. Pendant que nous traitions ce problème, nous avons manqué la date limite de commande pour 1962 et avons dû attendre toute l'année 1963. Enfin, ce n'est que lors de la Foire internationale de Brno en 1964, à la suite de négociations entre la Commission d'État pour le développement et la coordination de la science et de la technologie et la Commission d'État pour la gestion et l'organisation, qu'il a été possible de réaliser l'importation de mémoires sur bande ensemble avec l'ordinateur ZUSE 23 (ils ont refusé de vendre la bande de Tchécoslovaquie séparément en raison de l'embargo, j'ai dû acheter un ordinateur entier au Suisse neutre et en retirer les lecteurs magnétiques).
POS 1
EPOS I était un ordinateur modulaire à tube unicast. Malgré le fait qu'il appartenait techniquement à la première génération de machines, certaines des idées et technologies utilisées étaient très avancées et n'ont été massivement mises en œuvre que quelques années plus tard dans les machines de deuxième génération. EPOS I se composait de 15 000 transistors au germanium, 56 000 diodes au germanium et 7 800 tubes à vide, selon la configuration, il avait une vitesse de 5 à 20 kIPS, ce qui n'était pas mal à l'époque. La voiture était équipée de claviers tchèques et slovaques. Langage de programmation - autocode EPOS I et ALGOL 60.
Les registres de la machine ont été collectés sur les lignes à retard magnétostrictives nickel-acier les plus avancées de ces années. Il était beaucoup plus froid que les tubes à mercure Strela et a été utilisé dans de nombreuses conceptions occidentales jusqu'à la fin des années 1960, car une telle mémoire était bon marché et relativement rapide, elle a été utilisée par LEO I, diverses machines Ferranti, IBM 2848 Display Control et de nombreux autres premiers terminaux vidéo. (un fil stocke généralement 4 chaînes de caractères = 960 bits). Il a également été utilisé avec succès dans les premières calculatrices électroniques de bureau, notamment les calculatrices programmables Friden EC-130 (1964) et EC-132, Olivetti Programma 101 (1965) et les calculatrices programmables Litton Monroe Epic 2000 et 3000 (1967).
En général, la Tchécoslovaquie à cet égard était un endroit incroyable - quelque chose entre l'URSS et l'Europe occidentale à part entière. D'une part, au milieu des années 1950, il y avait même des problèmes avec les lampes (rappelez-vous qu'elles étaient également en URSS, mais pas à un degré aussi négligé), et Svoboda a construit les premières machines sur la technologie monstrueusement dépassée des années 1930 - relais, d'autre part, au début des années 1960, des lignes à retard en nickel assez modernes sont devenues disponibles pour les ingénieurs tchèques, qui ont commencé à être utilisées dans les développements nationaux 5 à 10 ans plus tard (au moment de leur obsolescence en Occident, par exemple, le domestique Iskra-11 ", 1970, et" Electronics-155 ", 1973, et ce dernier était considéré comme si avancé qu'il avait déjà reçu une médaille d'argent à l'Exposition des réalisations économiques).
EPOS I, comme vous pouvez le deviner, était décimal et disposait de périphériques riches. De plus, Svoboda a fourni plusieurs solutions matérielles uniques dans l'ordinateur qui étaient bien en avance sur leur temps. Les opérations d'E / S dans un ordinateur sont toujours beaucoup plus lentes que de travailler avec de la RAM et de l'ALU, il a été décidé d'utiliser le temps d'inactivité du processeur, pendant que le programme qu'il exécutait accédait à des lecteurs externes lents, pour lancer un autre programme indépendant - au total, de cette façon, il était possible d'exécuter jusqu'à 5 programmes en parallèle ! Il s'agissait de la première implémentation au monde de multiprogrammation utilisant des interruptions matérielles. Par ailleurs, un partage du temps externe (lancement parallèle de programmes fonctionnant avec différents modules machines indépendants) et interne (pipelining pour l'opération de division, le plus laborieux) a été mis en place, ce qui a permis de multiplier par plusieurs la productivité.
Cette solution innovante est à juste titre considérée comme le chef-d'œuvre architectural de Freedom et n'a été massivement appliquée dans les ordinateurs industriels en Occident que quelques années plus tard. La commande par ordinateur multiprogrammation EPOS I a été développée alors que l'idée même de temps partagé n'en était qu'à ses balbutiements, même dans la littérature électrique professionnelle de la seconde moitié des années 1970, elle est encore qualifiée de très avancée.
L'ordinateur était équipé d'un panneau d'information pratique, sur lequel il était possible de suivre l'avancement des processus en temps réel. La conception supposait initialement que la fiabilité des composants principaux n'était pas idéale, de sorte qu'EPOS I pouvait corriger les erreurs individuelles sans interrompre le calcul en cours. Une autre caractéristique importante était la possibilité d'échanger à chaud des composants, ainsi que de connecter divers périphériques d'E/S et d'augmenter le nombre de tambours ou de périphériques de stockage magnétiques. De par sa structure modulaire, EPOS I a une large gamme d'applications: du traitement de données de masse et de l'automatisation du travail administratif aux calculs scientifiques, techniques ou économiques. De plus, il était gracieux et assez beau, les Tchèques, contrairement à l'URSS, pensaient non seulement aux performances, mais aussi au design et à la commodité de leurs voitures.
Malgré les demandes urgentes du gouvernement et les subventions financières d'urgence, le ministère de la Construction mécanique générale n'a pas été en mesure de fournir la capacité de production nécessaire à l'usine de VHJ ZJŠ Brno, où l'EPOS I devait être produit. cette série répondrait aux besoins de l'économie nationale jusqu'en 1970 environ. Au final, tout s'est avéré beaucoup plus triste, les problèmes de composants n'ont pas disparu, de plus, la puissante entreprise TESLA est intervenue dans le jeu, ce qui était terriblement peu rentable pour produire des voitures tchèques.
Au printemps 1965, en présence de spécialistes soviétiques, des tests d'État réussis d'EPOS I ont été effectués, au cours desquels sa structure logique, dont la qualité correspondait au niveau mondial, était particulièrement appréciée. Malheureusement, l'ordinateur est devenu l'objet de critiques infondées de la part de certains "experts" en informatique qui ont tenté de faire adopter la décision d'importer des ordinateurs, par exemple, a écrit le président de la Commission slovaque de l'automatisation Jaroslav Michalica (Dovážet, nebo vyrábět samočinné počítače ? Dans: Rudé právo, 13.ubna 1966, art. 3.):
À l'exception des prototypes, pas un seul ordinateur n'a été produit en Tchécoslovaquie. Du point de vue du développement mondial, le niveau technique de nos ordinateurs est très bas. Par exemple, la consommation d'énergie d'EPOS I est très élevée et s'élève à 160-230 kW. Un autre inconvénient est qu'il ne dispose que de logiciels en code machine et n'est pas équipé du nombre de programmes requis. La construction d'un ordinateur pour une installation à l'intérieur nécessite un gros investissement de construction. De plus, nous n'avons pas totalement assuré l'importation de l'étranger de bande magnétique, sans laquelle EPOS I est totalement inutile.
C'était une critique offensante et infondée, car aucun des défauts indiqués n'était directement lié à EPOS - sa consommation d'énergie dépendait uniquement de la base de l'élément utilisé et pour une machine à lampe était tout à fait adéquate, les problèmes avec la bande étaient généralement plus politiques que techniques, et l'installation de tout ordinateur central dans la pièce et est maintenant associée à sa préparation minutieuse et est assez difficile. Le logiciel n'avait aucune chance de sortir de nulle part - il avait besoin de voitures de production. L'ingénieur Vratislav Gregor s'y oppose:
Le prototype EPOS I a parfaitement fonctionné pendant 4 ans dans des conditions inadaptées en trois équipes sans climatisation. Ce premier prototype de notre machine résout des tâches difficiles à résoudre sur d'autres ordinateurs en Tchécoslovaquie … par exemple, surveiller la délinquance juvénile, analyser des données phonétiques, en plus de tâches plus petites dans le domaine des calculs scientifiques et économiques qui ont une application pratique importante. Au niveau des outils de programmation, EPOS I est équipé d'ALGOL… Pour le troisième EPOS I, environ 500 programmes d'E/S, tests, etc. ont été développés. Aucun autre utilisateur d'un ordinateur importé n'a jamais eu de programmes à notre disposition de manière aussi opportune et en telle quantité.
Malheureusement, au moment où le développement et l'acceptation d'EPOS I ont été achevés, il était vraiment très obsolète et VÚMS, sans perdre de temps, a commencé en parallèle à construire sa version entièrement transistorisée.
POS 2
EPOS 2 est en développement depuis 1960 et représente le summum des ordinateurs de deuxième génération au monde. La conception modulaire a permis aux utilisateurs d'adapter l'ordinateur, comme la première version, au type spécifique de tâches à résoudre. La vitesse de fonctionnement moyenne était de 38,6 kIPS. A titre de comparaison: le puissant ordinateur central bancaire Burroughs B5500 - 60 kIPS, 1964; CDC 1604A, la légendaire machine Seymour Cray, qui a également été utilisée à Doubna dans des projets nucléaires soviétiques, avait une puissance de 81 kIPS, voire la moyenne de sa gamme d'IBM 360/40, dont une série a ensuite été clonée en URSS, développé en 1965, dans les problèmes scientifiques n'a donné que 40 kIPS ! Selon les normes du début des années 1960, l'EPOS 2 était une voiture haut de gamme à égalité avec les meilleurs modèles occidentaux.
La répartition du temps dans EPOS 2 était toujours contrôlée non pas par un logiciel, comme dans de nombreux ordinateurs étrangers, mais par du matériel. Comme toujours, il y avait un plug avec la maudite bande, mais ils ont accepté de l'importer de France, et plus tard TESLA Pardubice a maîtrisé sa production. Pour l'ordinateur, son propre système d'exploitation, ZOS, a été développé et il a été flashé dans la ROM. Le code ZOS était le langage cible pour FORTRAN, COBOL et RPG. Les tests du prototype EPOS 2 en 1962 ont été concluants, mais à la fin de l'année, l'ordinateur n'était pas terminé pour les mêmes raisons que l'EPOS 1. En conséquence, la production a été reportée à 1967. Depuis 1968, ZPA Čakovice produit en série EPOS 2 sous la désignation ZPA 600, et depuis 1971 - dans une version améliorée du ZPA 601. La production en série des deux ordinateurs a pris fin en 1973. Le ZPA 601 était partiellement compatible avec le logiciel de la gamme de machines soviétiques MINSK 22. Un total de 38 modèles ZPA ont été fabriqués, qui étaient l'un des systèmes les plus fiables au monde. Ils ont été utilisés jusqu'en 1978. Toujours en 1969, un prototype du petit ordinateur ZPA 200 a été fabriqué, mais n'est pas entré en production.
Pour en revenir à TESLA, il convient de noter que leur leadership a vraiment saboté le projet EPOS de toutes ses forces et pour une raison simple. En 1966, ils ont demandé au Comité central de Tchécoslovaquie des allocations d'un montant de 1, 1 milliard de couronnes pour l'achat d'ordinateurs centraux franco-américains Bull-GE et n'avaient pas du tout besoin d'un ordinateur domestique simple, pratique et bon marché. La pression par le biais du Comité central a conduit au fait que non seulement une campagne a été lancée pour discréditer les travaux de Svoboda et de son institut (vous avez déjà vu une citation de ce genre, et elle n'a été publiée nulle part, mais dans le principal organe de presse de Parti communiste de Tchécoslovaquie Rudé právo), mais aussi à la fin Le ministère de la Construction mécanique générale a reçu l'ordre de limiter la production de deux EPOS I, au total, avec le prototype, 3 pièces ont finalement été fabriquées.
EPOS 2 a également eu du succès, la société TESLA a fait de son mieux pour montrer que cette machine était inutile, et à travers la direction de la DG ZPA (Instrument and Automation Factories, à laquelle appartenait VÚMS) a poussé l'idée d'un concours ouvert entre les développement de Liberty et du plus récent mainframe TESLA 200. Le fabricant français d'ordinateurs BULL était En 1964, avec le fabricant italien Olivetti, les Américains ont acheté General Electric, ils ont lancé le développement d'un nouveau mainframe BULL Gamma 140. Cependant, sa sortie pour l'américain marché a été annulé, car les Yankees ont décidé qu'il rivaliserait en interne avec leur propre General Electric GE 400. En conséquence, le projet est resté en suspens, mais des représentants de TESLA sont apparus avec succès et pour 7 millions de dollars, ils ont acheté un prototype et les droits à sa production (en conséquence, TESLA a non seulement produit une centaine de ces ordinateurs, mais a également réussi à en vendre plusieurs en URSS !). C'est cette voiture de troisième génération appelée TESLA 200 qui devait battre la malheureuse EPOS.
TESLA avait un ordinateur débogué en série complètement fini avec un ensemble complet de tests et de logiciels, VÚMS n'avait qu'un prototype avec un ensemble incomplet de périphériques, un système d'exploitation inachevé et des lecteurs avec une fréquence de bus 4 fois inférieure à ceux installés sur le mainframe français. Après un essai préliminaire, les résultats EPOS ont été, comme prévu, décevants, mais l'ingénieux programmeur Jan Sokol a considérablement modifié l'algorithme de tri régulier, les employés, travaillant 24 heures sur 24, ont pensé au matériel, ont mis la main sur quelques disques rapides similaire à TESLA, et par conséquent, EPOS 2 a gagné un mainframe français beaucoup plus puissant !
Lors de l'évaluation des résultats du premier tour, Sokol, lors d'une discussion avec la ZPA, a évoqué les conditions défavorables de la compétition, d'accord avec la direction. Cependant, sa plainte a été rejetée avec les mots "après le combat, chaque soldat est un général". Malheureusement, la victoire de l'EPOS n'affecta pas beaucoup son destin, en grande partie à cause de l'époque malheureuse - c'était en 1968, les chars soviétiques traversaient Prague, supprimant le printemps de Prague, et VÚMS, toujours célèbre pour son extrême libéralisme (d'où d'ailleurs, a récemment fui avec Svoboda) la moitié des meilleurs ingénieurs en Occident) n'était, pour le moins, n'était pas tenu en haute estime par les autorités.
Mais alors commence la partie la plus intéressante de notre histoire - comment les développements tchèques ont formé la base des premiers véhicules de défense antimissile soviétiques et quelle fin peu glorieuse les attendait à la fin, mais nous en parlerons la prochaine fois.