FR2503420A1 - Systeme decentralise modulaire de traitement de l'information - Google Patents
Systeme decentralise modulaire de traitement de l'information Download PDFInfo
- Publication number
- FR2503420A1 FR2503420A1 FR8121500A FR8121500A FR2503420A1 FR 2503420 A1 FR2503420 A1 FR 2503420A1 FR 8121500 A FR8121500 A FR 8121500A FR 8121500 A FR8121500 A FR 8121500A FR 2503420 A1 FR2503420 A1 FR 2503420A1
- Authority
- FR
- France
- Prior art keywords
- bus
- module
- modules
- information processing
- lines
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 33
- 230000015654 memory Effects 0.000 claims abstract description 119
- 230000002093 peripheral effect Effects 0.000 claims abstract description 45
- 238000012546 transfer Methods 0.000 claims description 31
- 238000004891 communication Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 12
- 238000000034 method Methods 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 230000006978 adaptation Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000000903 blocking effect Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 description 10
- 239000000872 buffer Substances 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 238000013479 data entry Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- NYQDCVLCJXRDSK-UHFFFAOYSA-N Bromofos Chemical compound COP(=S)(OC)OC1=CC(Cl)=C(Br)C=C1Cl NYQDCVLCJXRDSK-UHFFFAOYSA-N 0.000 description 1
- 241000935985 Certhiidae Species 0.000 description 1
- 241000703769 Culter Species 0.000 description 1
- 241001620634 Roger Species 0.000 description 1
- LEHOTFFKMJEONL-UHFFFAOYSA-N Uric Acid Chemical compound N1C(=O)NC(=O)C2=C1NC(=O)N2 LEHOTFFKMJEONL-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4213—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with asynchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/37—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/177—Initialisation or configuration control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
Abstract
SYSTEME DE TRAITEMENT DE L'INFORMATION DECENTRALISE ET MODULAIRE. LE SYSTEME COMPREND UN NOMBRE QUELCONQUE DE MODULES CALCULATEURS 2 AUTONOMES ET DE MEME PRIORITE ET UN NOMBRE QUELCONQUE DE MODULES PERIPHERIQUES 3 AUTONOMES ET DE MEME PRIORITE, CHAQUE MODULE 2, 3 COMPRENANT UN PROCESSEUR 5 AVEC UN BUS LOCAL ET UNE MEMOIRE. LES MODULES CALCULATEURS 2, QUI ASSURENT L'EXECUTION AUTONOME DE PROGRAMMES UTILISATEURS ET DE SERVICE PAR INTERPRETATION D'AU MOINS UN LANGAGE DE PROGRAMMATION, ET LES MODULES PERIPHERIQUES 3, QUI ASSURENT L'EXECUTION AUTONOME DES INSTRUCTIONS D'ENTREE-SORTIE OU DES CHAINES D'INSTRUCTIONS PRODUITES, FONCTIONNENT AVEC UNE MEMOIRE PRINCIPALE 4 DE CAPACITE QUELCONQUE SUR UN SYSTEME DE BUS 1 COMPLET. TOUS LES MODULES 2, 3 PEUVENT COMMUNIQUER ENTRE EUX.
Description
La présente invention concerne un système modulaire décentralisé
de traitemurit de l'information, couportant de.multiples modules cal-
culateurs, de multiples modules périphériques et des mémoires prin-
cipales, les modules calculateurs et périphériques pouvant être des systèmes complexes. En traitement de l'information, des tâches impliquent souvent de très nombreuses entrées-sorties ou un dialogue. Pour de telles
applications, on utilise souvent des systèmes de traitement de l'in-
formation constitués par de multiples processeurs, exploités avec des mémoires préincipales sur un système de bus. De tels systèmes de traitement de l'information comportent des systèmes d'exploitation qui, totalement ou partiellement, sont centralisés et présentent une
structure hiérarchique, c'est-à-dire que des affectations maitre-
esclave sont effectuées dans un cadre fixe. A un matériel modulaire correspond ainsi un système d'exploitation relativement rigide, qui
tient certes généralement compte de l'expansion du système de traite-
ment de l'information dans un cadre prédéterminé et jusqu'à une taille maximale, mais qui doit être modifié avec un coût relativement élevé
pour les expansions au-delà de cette taille.
De tels systèmes d'exploitation sont sensibles aux erreurs par
suite de leur complexité et présentent souvent des relations intem-
pestives entre leurs éléments, de sorte que la variation d'un élément se répercute sur d'autres éléments. Outre cet inconvénient essentiel, un autre inconvénient réside dans la nécessité d'utiliser un système d'exploitation préparé en conséquence pour permettre une expansion
du système, d'o des coûts inutilement élevés pour de petits systèmes.
Un autre inconvénient apparait quand l'expansion d'un système de
traitement de l'information impose une modification du système d'ex-
ploitation, avec de nouveau des coûts élevés. Le fait que l'expansion des systèmes multiprocesseurs précités n'est possible que dans un cadre prédéterminé fixe et jusqu'à une taille maximale doit également
être considéré comme un inconvénient.
L'invention a pour objet un système de traitement de l'informa-
tion qui, outre un matériel strictement modulaire, comporte un système d'exploitation strictement modulaire et permettant ainsi une expansion
illimitée par principe, sans modification du système d'exploitation.
Selon une caractéristique essentielle de l'invention, un nombre par principe quelconque de systèmes calculateurs autonomes et de même priorité, spécialisés en modules calculateurs ou en modules périphériques, et une mémoire principale de capacité par principe quelconque sont reliés à un système de bus bidirectionnel, asynchrone et commun, constitué par un bus d'adresse, un bus de donnée, un bus
d'accusé de réception et un bus de commande; et le système d'exploi-
tation du système de traitement de l'information est réparti entre les divers modules calculateurs et périphériques de façon que chaque module calculateur puisse assurer l'exécution autonome de programmes
utilisateur et de service par interprétation d'un langage de program-
mation au moins, tandis que les modules périphériques assurent l'exé-
cution autonome des instructions d'entrée-sortie et/ou des chaînes d'instructions produites, tous les modules pouvant communiquer entre eux. Les avantages du système de traitement de l'information selon l'invention résident essentiellement dans la possibilité d'expansion modulaire sans adaptation du système d'exploitation, résultant de la
division rationnelle du système d'exploitation entre des modules cal-
culateurs autonomes et de même priorité et de modules périphériques autonomes et de même priorité, qui sont exploités avec des mémoires principales sur un système de bus bidirectionnel, asynchrone et commun,
et peuvent communiquer entre eux.
Selon une autre caractéristique de l'invention, la connexion de tous les modules calculateurs et de tous les modules périphériques au système de bus bidirectionnel, asynchrone et commun s'effectue pour chacun par un dispositif de connexion de module, divisé en une partie active et une partie passive, de façon que le système de bus commun et les bus locaux des modules calculateurs et des modules périphériques forment une hiérarchie telle que le fonctionnement de tous les modules est par principe simultané et asynchrone; et la
mémoire principale est reliée au système de bus par au moins un dis-
gositif de connexion de mémoire, ne comportant qu'une partie passive.
Selon une autre caractéristique de l'invention, la réalisation de tous les dispositifs de connexion de module est identique pour la
connexion de modules calculateurs et celle de modules périphériques.
Selon une autre caractéristique de l'invention, la partie passive de chaque dispositif de connexion de module contient des registres de module, qui forment avec la mémoire principale un espace adresses commun. Selon une autre caractéristique de l'invention, le système
d'exploitation est réparti entre les modules calculateurs et péri-
phériques de façon que chacun d'eux contient uniquement les parties assurant la fonction du module et permettant une communication standard avec les autres modules. Selon une autre caractéristique de l'invention, les modules confient, pour l'exécution de programmes utilisateur et/ou de service, des taches à d'autres modules, à l'aide d'un langage d'ordres, chaque tâche contenant une information relative à l'emplacement o se trouvent la structure de données nécessaire à son exécution. On obtient ainsi des interfaces logiques
standards entre les bus locaux des modules calculateurs ou périphé-
riques et le système de bus commun, permettant une communication
standard à un niveau logique relativement élevé.
Selon une autre caractéristique de l'invention, chaque module calculateur et chaque module périphérique peuvent demander l'accès au bus par la partie active d'un dispositif de connexion de module, l'affectation s'effectuant successivement de façon que l'accès au bus soit toujours accordé, dans le même sens de module à module, au
module ayant demandé l'accès au bus et se trouvant être le plus pro-
che du dernier module ayant disposé dudit accès. Selon une autre
caractéristique de l'invention, chaque module peut, par un verrouil-
lage du bus, interdire la cession automatique de l'accès au bus, de sorte qu'un accès exclusif d'un module au bus est réalisable pendant un nombre quelconque d'opérations de transmission. Il en résulte une
stratégie d'affectation de bus, qui soutient la structure décentra-
lisée et rationnelle en modules autonomes et de même priorité en assurant la commande décentralisée de l'affectation de bus par les
divers modules eux-mêmes.
La répartition totale du système d'exploitation entre des modules spécialisés, qui ne contiennent que la partie dudit système
nécessaire à l'exécution de la fonction et d'une communication stan-
dard, présente les avantages suivants: les divers modules sont moins complexes et par suite moins sensibles aux défauts, et forment un
système homogène structuré. Selon une autre caractéristique de l'in-
vention, les modules calculateurs et périphériques reliés au système de bus, à l'exception de leurs fonctions particulières, présentent une réalisation structurelle similaire, de sorte que les parties essentielles des systèmes d'exploitation des divers modules sont similaires. Le système homogène structuré précité permet de mieux
tirer parti encore des avantages de cette similitude.
Selon une autre caractéristique de l'invention, la communica-
tion de module à module s'effectue exclusivement par des cellules mémoire disponibles dans l'espace adresses commun. Il en résulte la possibilité pour un module ne pouvant pas résoudre lui-même certaines tâches, de les transférer simplement, c'est-a-dire à un niveau
logique élevé, à un autre module spécialisé pour ce faire.
Selon une autre caractéristique de l'invention, l'addition de modules permet l'expansion du système sans adaptation du système d'exploitation. Selon une autre caractéristique de l'invention, le système est divisible par des coupleurs de bus en systêmes partiels asynchrones autonomes, interconnectés uniquement en cas de besoin,
l'affectation de priorités différentes aux systèmes partiels interdi-
sant un blocage du système; et le coupleur de bus contient en mémoire une représentation des adresses des modules calculateurs, modules périphériques et mémoires principales se trouvant dans le système
interconnecté. Une expansion du système est ainsi possible san'- monii-
fication ou adaptation du système d'exploitation. Selon une autre caractéristique particulièrement avantageuse de l'invention, le
branchement d'une configuration quelconque du système établit auto-
matiquement dans la mémoire principale des tables qui contiennent
une représentation précise de l'ensemble de la configuration du sys-
tème et sont chainées, l'adresse de début des tables chainées étant automatiquement transmise à chaque module. Il est ainsi possible de
lancer automatiquement, sans intervention de l'opérateur, une confi-
guration quelconque du système, puis de l'amener dans un état rer:;et-
tant le traitement de programmes utilisateur.
Selon une autre caractéristique de l'invention, chaque module calculateur traite plusieurs programmes utilisateur et/ou de service emboîtes. Selon une autre caractéristique de l'invention, chaque module périphérique gère plusieurs appareils périphériques de même
type. Il en résulte une meilleure répartition de la charge du système.
D'autres caractéristiques et avantages de l'invention seront
mieux compris à l'aide de la description détaillée ci-dessous d'un
exemple de réalisation de système de traitement de l'information et des dessins annexés sur lesquels:
la figure 1 représente une configuration de base du système de traite-
ment de l'information; la figure 2 représente le système de bus avec les connexions à un module et à une mémoire principale; la figure 3 représente un dispositif de connexion de module; la figure 4 représente les connexions d'un dispositif de commande de connexion de module actif au système de bus; la figure 5 représente les connexions d'un dispositif de commande de connexion de module passif au système de bus; la figure 6 représente un dispositif de connexion de mémoire; la figure 7 représente les connexions d'un dispositif de commande de connexion de mémoire au système de bus; la figure 8 représente une terminaison de bus; la figure 9 représente deux systèmes reliés par des coupleurs de bus; la figure 10 représente deux coupleurs de bus avec les connexions de bus correspondantes; et
la figure 11 représente une partie d'un système avec les tables cen-
trales stockées dans des mémoires principales.
Configuration de base La figure 1 représente une configuration de base possible d'un système modulaire de traitement de l'information. Un système de bus commun I réunit des modules calculateurs 2, des modules périphériques
3 et des mémoires principales 4. Les modules calculateurs 4 et péri-
phériques 3 contiennent chacun un processeur 5 et un dispositif de connexion de module 6; les modules périphériques 3 comportent en outre des interfaces 7 pour appareils périphériques 8, les inerfaces 7 et les appareils périphériques 8 pouvant être différents pour les divers
modules périphériques 3.
Système de bus Le système de bus 1 représenté à la figure 2 est constitué par un bus d'adresse 12, un bus de donnée 13, u nbus de signaux d'accusé
de réception 14 et un bus de commande 15.
Des modules calculateurs 2, des modules périphériques 3 et des mémoires principales 4 sont reliés à ce système de bus 1, comme le montre la figure 1. La connexion de chacun des modules calculateurs 2
et périphériques 3 s'effectue de la même façon, à l'aide d'un dispo-
sitif de connexion de module 6. La partie active 6a du dispositif de connexion de module 6 est reliée au bus d'adresse 12 par des l'gnes A, au bus de signaux d'accusé de réception 14 par des lignes B et au bus de commande 15 par des lignes C. La partie passive 6b du dispositif de connexion de module 6 est reliée au bus d'adresse 12 par des lignes E, au bus des signaux d'accusé de réception 14 par des lignes F et au bus de commande 15 par des lignes G. Le raccordement du dispositif de connexion de module 6 au bus de donnée 13 par les lignes D est
affecté aussi bien à la partie active 6a qu'à la partie passive 6b.
Les mémoires principales 4 sont reliées chacune au système de bus 1 par un dispositif de connexion de mémoire 11, ne comportant qu'une partie passive. Chaque mémoire principale est reliée au bus de donnée 13 par des lignes H, au bus d'adresse 12 par des lignes I, au bus de
signaux d'accusé de réception 14 par des lignes J et au bus de com-
mande 15 par des lignes K. Les parties passives 6b des dispositifs de connexion de module 6 contiennent des registres de module 18 qui, avec la mémoire 19, forment
un espace adresses commun.
Tous les dispositifs de connexion de module 6 ou dispositifs de connexion de mémoire 11 sont identiques pour tous les modules 2, 3 ou toutes les mémoires principales 4 et sont décrits ci-après à
l'aide des figures 3, 4, 5, 6 et 7.
Dispositif de connexion de module La figure 3 représente le système de bus 1, constitué par le bus d'adresse 12, le bus de donnée 13, le bus de signaux d'accusé de
réception 14 et le bus de commande 15, ainsi qu'un module 2, cons-
titué par un dispositif de connexion de module 6 et un processeur 5.
Les éléments essentiels du dispositif de connexion de module 6 ainsi que leurs liaisons entre eux ou avec le système de bus 1 et le
bus processeur 20 sont décrits ci-dessous.
Un registre d'adresse 21, appartenant à la partie active 6a du dispositif de connexion de module 6, est relié au bus d'adresse 12 par des lignes A et au bus processeur 20 par des lignes 22. Un dispositif de commande de connexion de module actif 23 est relié au bus de signaux d'accusé de réception 14 par des lignes B, au bus de commande 15 par des lignes C et au bus processeur 20 par des lignes 24; il est en outre relié par des lignes 25 à un registre d'état 26, lui-même interconnecté avec le bus processeur 20 par des lignes 27 et avec le dispositif de commande de connexion de module passif 29
par des lignes 28.
Des lignes D relient le bus de donnée 13 à une commande de sens de donnée 30, qui est reliée à un registre de sortie de donnée 32 par des lignes 31, un registre d'entrée de donnée 34 par des lignes 33 et aux registres de module 36 par des lignes 35. Le bus processeur 20 est relié au registre de donnée 32 par des lignes 37 et au registre d'entrée de donnée par des lignes 38. Des lignes E relient le bus d'adresse 12 à un tampon d'adresse 39, appartenant à la partie passive 6b du dispositif de connexion de module 6. Une première partie 40 des cellules mémoire du tampon d'adresse 39 est reliée par des lignes
41 à un comparateur 42, que des lignes 43 relient à un réseau d'in-
terrupteurs 44, qui ajuste l'adresse de module et est relié au bus processeur 20 par des lignes 60. Une seconde partie 45 des cellules mémoire du tampon d'adresse 39 est reliée par des lignes 46 à un
opérateur ET 47, dont la sortie est reliée par une ligne 48 au com-
parateur 42. Ce dernier commande par une ligne 49 le dispositif de commande de connexion de module passif 29. Des lignes 51 relient une troisième partie 50 des cellules mémoire du tampon d'adresse 39 et des lignes 52 relient le bus processeur 20 à une commande de sens 53, reliée aux registres de module 36 par des lignes 54. Le dispositif de commande de connexion de module passif 29 est relié par des lignes F au bus de signaux d'accusé de réception et par des lignes G au bus de commande 15; des lignes 56 attaquent enr outre la coanurde 253
et des lignes 55 les registres de module 36.
La figure 4 représente le bus de signaux d'accusé de réception 14, le bus de commande 15 et leurs liaisons C, B avec le dispositif
de commande de connexion de module actif 23 d'un dispositif de con-
nexion de module 6. Les lignes 57, 58, 59 constituent le bus de signaux d'accusé de réception 14, sur lequel sont transmis les signaux d 'accusé de réception d'un dispositif de commande de connexion de module passif sélecté. Le bus de commande 15 est constitué par les
lignes 61-67. Le rôle des lignes 61, 62, 63 et 67 consist-e à cor-
mander l'affectation de bus en liaison avec les dispositifs de com-
mande de connexion de module actifs 23.
La demande de bus s'effectue par des lignes 62. L'acces au bus est obtenu par des lignes 61, 61 n2 et la cession du bus par des lignes 61 1- La ligne 67 permet d'interdire la suppression de la liaison après un transfert. D'autres fonctions de la ligne 67 seront décrites ultérieurement. Les lignes 64 et 65 sont des lignes de
signal de synchronisation. La ligne 64 transmet le signal de synchro-
nisation maitre et la ligne 65 le signal de synchronization esclave.
L'information de lecture ou d'écriture est transmise par la ligne 66.
Comme le montre la figure 4, les lignes 57-59 et 61-67, à l'exception de la ligne 63, sont reliées au dispositif de commande de connexion de module actif par des lignes 57a-59a et 61a-67a. La
fonction de la ligne 63 sera décrite ultérieurement.
La figure 5 représente les lignes 57-59 et 61-67, qui constituent le bus de signaux d'accusé de réception 14 et le bus de commande 15, ainsi que leurs liaisons avec le dispositif de comma.nde de ccnnexicn de module passif 29. Seules les lignes 57-59 et Gi-67 sont relit:s au dispositif de commande de connexion de module passif 2' par des
lignes 57b-59b ou 63b-67b.
La figure 6 représente le système le b-us 1, constituC ipar le bus d'adresse 12, le bus de donnée 13, le bus de slsnau: "d'accust te réception 14 et le bus de commande 15, ainsi qu'une m.+:ire uric:- al, 4 avec un dispositif de connexion de mémoire 11, une mémoire 9 et
un contrôleur de mémoire 10.
Le dispositif de connexion de mémoire Il comprend un registre
d'entrée de donnée 68, un registre de sortie de donnée 69, un cir-
cuit 70 de production de la parité et de correction d'erreur, un registre d'adresse 71, un dispositif de commande de connexion de mémoire passif 73, un circuit convertisseur d'adresse et comparateur 72. Le bus de donnée 13 est relié par des lignes H au registre de sortie de donnée 68 et au registre d'entrée de donnée 69, que des lianes 74 et 75 relient à un circuit 70 de production de la parité et de correction d'erreur, qui est relié à la mémoire 9 par des lignes 76 et au dispositif de commande de connexion de mémoire 73
par des lignes 81.
Des lignes I transmettent l'adresse du bus d'adresse 12 au
registre d'adresse 71, que des lignes 77 relient à un circuit con-
vertisseur d'adresse et comparateur 72, qui transmet des adresses à la mémoire 9 par des lignes 78 et attaque le dispositif de commande de connexion de mémoire 73 par la ligne 79. Le dispositif de commande de connexion de mémoire 73 est relié au bus de signaux d'accusé de réception 14 par des lignes J, au bus de commande par des lignes K
et à la mémoire 9 par des lignes 80.
La figure 7 représente le raccordement du dispositif de com-
mande de connexion de mémoire 73 au bus de signaux d'accusé de récep-
tion 14 (lignes 57, 58, 59) et au bus de commande 15 (lignes 61-67) par les lignes 57c, 58c, 59c ou 63c-66c. Les lignes 61, 62 et 67 du
bus de commande demeurent libres.
La figure 8 représente un montage de terminaison 85 pour le système de bus 1. Il comprend un circuit 82 délivrant des signaux d'accusé de réception, un étage de temporisation 83 et un circuit 84 connectant la ligne 63 l'impulsion d'accès au bus arrivant sur la ligne 61. Outre une liaison avec la ligne 61 du premier dispositif de commande de connexion de module actif 23, la ligne 63 présente une liaison avec tous les dispositifs de commande de connexion de module passifs 29 et dispositifs de commande de connexion de mémoire
73.
Communication Le mode de communication des divers éléments du système de traitement de l'information entre eux est présenté ci-dessous
à l'aide des figures 1 à 8 et de leurs descriptions.
Il convient de noter d'abord qu'une communication ne peut être initialisée que par des éléments actifs, c'est-à-dire des modules calculateurs 2 ou périphériques 3. Il existe ainsi trois possibilités de transfert de données: a) écriture dans la mémoire principale b) lecture dans la mémoire principale; c) communication de module à module a) Ecriture dans la mémoire principale Pour permettre une écriture dans la mémoire principale 4 par un module calculateur 2 ou périphérique 3, le processeur interne 5 du module 2, 3 initialise un transfert de bus. Cette opération peut être effectuée par le bus processeur 20 (figure 3) qui, par les lignes 24, remet à 1 les indicateurs BF, WR et le cas échéant HL dans
le dispositif de commande de connexion de module actif 23. L'indica-
teur BF conduit ce dernier à demander l'accès au bus. Cette opération s'effectue par application à la ligne 62 (figure 4) d'un signal qui fait qu'un module 2, 3 disposant de l'accès au bus le cède après la fin de son transfert et délivre un signal a la ligne 61. Lorsqu'entre le module 2, 3 demandant l'accès au bus et le module 2, 3 cédant l'accès au bus se trouvent d'autres modules 2, 3 demandant l'accès au bus, ces derniers ne sont traités que successivement (stratégie circulaire). Lorsque le signal transmis par chaque module 2, 3 par l'entrée RRI et la sortie RRO atteint enfin par l'entrée RRI le module 2, 3 demandant l'accès au bus, ledit module ne délivre aucun signal
à la sortie RRO et obtient ainsi l'accès au bus.
Dès l'initialisation du transfert de bus, l'adresse est chargée dans le régistre d'adresse 21 par des lignes 22 (figure 3) et les données sont chargées à partir du bus processeur 20 dans le registre de donnée 32 par des lignes 37. L'accès au bus étant obtenue, le registre d'adresse 21 connecte les adresses au bus d'adresse 12 par des lignes A, le registre de sortie de donnée 32 connecte les données au bus de donnée 13 par des lignes 31, la commande de sens des données
et des lignes D, et le dispositif de commande de connexion de -
module actif 23 connecte les informations d'état WR et le cas échéant HL au bus de commande 15 par des lignes 66a, 67a (figure 4)-. Lorsque toutes les informations nécessaires sont appliquées au système de bus 1, le dispositif de commande de connexion de module actif 23
(figure 3) délivre par des lignes 64a (figure 4) un signal de synchro-
nisation maître sur la ligne 64 du bus de commande 15.
A partir de ce point, il est nécessaire de considérer séparé-
ment les opérations dans le dispositif de commande de connexion 6 et
dans la mémoire principale 4 adressée.
Mémoire principale 4 Dès que l'adresse se trouve sur le bus d'adresse 12 (figure 6), elle est appliquée par des lignes I, le tampon d'adresse 71 et des lignes 77 au circuit convertisseur d'adresse et comparateur 72. Ce dernier convertit l'adresse, puis détermine par une comparaison si la nouvelle adresse résultant de la conversion correspond à une adresse dans l'espace adresses de la mémoire 9. Dans l'affirmative, l'adresse calculée est connectée par la ligne 78 à la mémoire 9 et un signal est transmis par la ligne 79 au dispositif de commande de
connexion de mémoire 73. Lorsque la ligne 63 (figure 7) du bus de com-
mande 15 ne transmet aucun signal et le signal de synchronisation maître est appliqué Dar la ligne 64c et le signal d'écriture WR par la ligne 66c, le dispositif 73 délivre dans un premier pas un signal de commande aux lignes 81 (figure 6), produisant la lecture dans le circuit 70, à l'aide des lignes 75, des données appliquées au registre d'entrée de donnée 69 par des lignes H. Le circuit 70 ajoute des bits
de test aux données, puis écrit ces dernières dans la mémoire 9, pen-
dant un second pas dont le début est également signalé par le dispo-
sitif de commande de connexion de mémoire 73 au circuit 70 par un signal sur les lignes 81. L'instruction d'écriture dans la mémoire 9 connecte le dispositif de commande de connexion de mémoire 73 à la mémoire 9 par des lignes 80. La mémorisation s'effectue de la façon habituelle à l'aide du contrôleur 10 de mémoire. Lorsque les données et bits de test sont lus dans la mémoire 9, le dispositif de commande -12 de connexion de mémoire 73 applique un code de retour au bus de signaux d'accusé de réception 14, par les lignes 57c,-58c, 59c (figure 7),
et délivre le signal de synchronisation esclave sur la ligne 65c.
Dispositif de connexion de module 6 Après avoir appliqué toutes les informations sur le système de bus 1, le dispositif de connexion de module 6 attend un signal de
synchronisation esclave puis, après son arrivée, transfère les infor-
mations se trouvant sur le bus de signaux d'accusé de réception 14 dans le dispositif de commande de connexion de mémoire actif, par les lignes 57a, 58a, 59a (figure 4), les traduit, puis écrit par la ligne (figure 3) une information d'état dans le registre d'état 26, o elle est lue et traduite par le processeur 5, à l'aide des lignes 27
et du bus processeur 20.
La traduction de l'information d'état ne sera pas décrite plus en détail, car elle peut varier selon la réalisation du processeur 5
et le programme utilisateur.
Le signal de synchronisation maître est remis à 0 à l'arrivée du signal de synchronisation esclave et, lorsque la ligne 62 (figure 4)
transmet un signal, l'accès au bus est cédé par remise à 0 de l'indi-
cateur BF ou par un signal sur la ligne 61 n_, après l'effacement du signal de synchronisation esclave. L'accès au bus n'est toutefois pas
cédé quand l'indicateur HL est remis à 1 dans le dispositif de com-
mande de connexion de module actif 23 (figure 3). En d'autres termes, l'indicateur HL remis à 1 produit un verrouillage de bus et permet ainsi un accès exclusif à la mémoire principale 4 pendant plus d'un
cycle d'accès (accès "lecture-modification-écriture").
b) Lecture dans la mémoire principale Pour qu'un module calculateur 2 ou périphérique 3 puisse lire une information stockée dans la mémoire principale, il est nécessaire qu'il dispose d'abord de l'accès au bus. Les pas d'obtention de
l'accès au bus sont les mêmes que ceux décrits sous a), à l'excep-
tion de l'indicateur WR qui n'est pas remis à 1.
Lorsque le module 2, 3 devant lire dans la mémoire principale reçoit l'accès au bus, les adresses se trouvant déjà dans-le registre d'adresse 21 (figure 3) depuis l'initialisation du transfert de Lus
sont connectées par des lignes A au système de bus 1, et les informa-
tions d'état WR et le cas échéant HL sont transmises du dispositif de commande de connexion de module actif 23 au système de bus 1 par
des lignes 66a et 67a (figure 4). A partir de ce point, les opérations dans la mémoire principale
4 et le dispositif de connexion de module 6 sont considérées séparé-
ment. Mémoire principale 4 Les premiers pas sont de nouveau les mêmes que ceux décrits sous
a), jusqu'au point o le circuit convertisseur d'adresse et compara-
teur 72 a déterminé qu'il s'agit d'une adresse se trouvant dans la
mémoire 9.
Après l'arrivée du signal du circuit convertisseur d'adresse et comparateur 72 sur la ligne 79, la commande de connexion de mémoire 73 (figure 6) teste par les lignes 63c et 64c (figure 7 l'absence de signal sur la ligne 63 du bus de commande 15 et la présence d'un signal sur la ligne 64. Dans l'affirmative, et quand il détermine par
la ligne 66c qu'une lecture doit être effectuée dans la mémoire prin-
cipale, le dispositif de commande de connexion de mémoire 73 (figure 6) conduit par des lignes 80, 81 le circuit convertisseur d'adresse et comparateur 72, au cours d'un premier pas, à délivrer au circuit 70, par des lignes 76, les contenus de la mémoire 9 adressés par des lignes 78. Au cours d'un second pas, le circuit 70 teste la présence d'une erreur dans les données lues. Dans l'affirmative, le circuit 70 effectue une correction d'erreur chaque fois que possible. Les données corrigées sont également réécrites dans la mémoire 9. Une erreur non corrigible est signalée au dispositif de commande de connexion de
mémoire 73 par des lignes 81.
ADrès la fin de l'opération de correction d'erreur, et pendant
un troisième pas dont le début est commandé comme celui des deux pre-
miers pas par le dispositif de commande de connexion de mémoire 73 à l'aide de lignes 81, les données sont transmises du circuit 70 au registre de sortie de donnée 68 par des lignes 74, et par suite au
bus de donnée 13 par des lignes H. Le dispositif de commande de con-
nexion de mémoire 73 applique simultanément le code de retour au bus
de signaux d'accusé de réception, puis délivre le signal de synchro-
nisation esclave à la ligne 65 par-la ligne 65c (figure 7).
Dispositif de connexion de module 6 A partir de l'instant o le dispositif de connexion de module 6 a connecté toutes les informations (adresses, informations d'état) au système de bus 1, le dispositif de commande de connexion de module actif 23 attend une impulsion de synchronisation esclave. Lorsque
cette impulsion arrive par la ligne 65, 65a (figure 4), les informa-
tions d'état se trouvant sur le bus de signaux d'accusé de réception 14 sont transférées par des lignes B dans le dispositif de commande de connexion de module actif 23, puis traduites et le résultat est écrit par des lignes 25 (figure 3) dans le registre d'état 26, o le
processeur 5 les lit par des lignes 27 et le bus processeur 20.
Les données se trouvant sur le bus de donnée 13 sont simultané-
ment transférées au registre d'entrée de donnée 34, par des lignes D, la commande de sens des données 30 et des lignes 33, puis au bus
processeur 20 par des lignes 38.
L'affectation de l'accès au bus s'effectue de la façon décrite
au dernier alinéa sous a).
c) Communication de module a module
La communication entre deux modules 2, 3 exige que chaque proces-
seur 5 connaisse sa propre adresse, que le réseau d'interrupteurs 44 permet de sélecter librement. Cette adresse peut le cas échéant être
appelée par des lignes 60 et le bus processeur 20.
Lorsqu'un processeur initialise un transfert de bus, comportant en général plusieurs opérations d'écriture, a un module récepteur 2, 3, le dispositif de commande de connexion de module 23 doit assurer
l'accès au bus.Cette opération s'effectue de la façon décrite sous a).
L'indicateur HL est toujours remis à 1 dans le dispositif de commande de connexion de module actif 23 lors d'un transfert d'un module
émetteur 2, 3 à un module récepteur 2, 3.
Lorsque l'accès au bus est obtenu, les adresses et données écrites dès l'initialisation du transfert dans le registre d'adresse
21 ou le registre de données 32 du module émetteur 2, 3 sont appli-
quées avec les informations d'état WR, HL et le signal de synchroni-
sation maître légèrement retardé du dispositif de commande de connexion
de module actif 23 au système de bus 1, par des lignes A, D, C (fi-
gure 2). Les adresses sont ensuite transmises par le bus d'adresse 12 et la ligne E aux tampons d'adresse 39 (figure 3) de tous les modules (2, 3). Ces tampons transmettent une partie 45 des bits d'adresse, par des lignes 46, à un opérateur 47 qui, quand il s'agit d'une adresse de module, attaque par la ligne 48 un comparateur 42, qui reprend alors une partie 40 des bits d'adresse par la ligne 41, puis la compare à l'adresse qu'il reçoit du réseau d'interrupteurs 44 par
des lignes 43. En cas de coincidence, la ligne 49 transmet au dispo-
sitif de commande de connexion de module 29 du module récepteur 2, 3 un signal qui, en présence de l'information d'état WR, HL appliquée par les lignes 66b, 67b (figure 5), fait interroger le registre d'état 26 par le dispositif de commande de connexion de module passif 29 (figure 3) a l'aide des lignes 28, afin de déterminer si les registres de module 36sont vides. Lorsqu'il n'en est pas ainsi, le dispositif de commande de connexion de module passif 29 du module récepteur 2, 3 délivre le code de retour "module non prêt" au bus de signaux d'accusé de réception 14, et la ligne 65b applique le signal de synchronisation esclave à la ligne 65 du bus de commande 15. Lorsque les registres de module 36 sont vides, le dispositif de commande de connexion de module
passif 29 remet à 1 un indicateur P. La commande de sens 53, qui con-
necte normalement les lignes 52 aux lignes 54, est commutée par l'in-
dicateur P remis a 1, a l'aide de la ligne 56, de façon a relier les lignes 51 aux lignes 54. Au cours d'un pas de commande suivant, le dispositif de commande de connexion de module passif 29 provoque par la ligne 55 le transfert des données du bus de donnée 13, par des lignes D, la commande de sens des données 30 et des lignes 35, dans un registre de module 36a des registres de module 36, adressé par le bus d'adresse 12, la partie 50 du tampon d'adresse 39, des lignes 51, la commande de sens 53 et des lignes 54. Après le transfert des données dans le registre de module 36a, le dispositif de commande de connexion de module passif 29 applique le code de retour par les lignes F au bus de signaux d'accusé de réception 14 et délivre par la ligne 65b (figure 5) le signal de synchronisation esclave à la
ligne 65 du bus de commande 15.
Dès que le dispositif de commande de connexion de module actif 23 du module émetteur 2, 3 reçoit le signal de synchronisation esclave par la ligne 65a (figure 4), il reprend par des lignes B le code de retour se trouvant sur le bus de signaux d'accusé de réception 14, le traduit, écrit le résultat dans le registre d'état 26 oar la ligne
(figure 3), puis remet à 0 le signal de synchronisation maître.
L'indicateur HL remis à 1 interdit la cession de l'accès au bus, même quand il est demandé par un autre module 2, 3 (figure 2) sur la ligne ligne 62 (figure 4). La raison en est que l'information stockée dans le registre d'état doit d'abord être lue par le processeur 5 (figure
3), afin qu'il reçoive un accusé de réception de l'essai de transfert.
Comme précédemment indiqué, une communication entre le module émet-
teur 2, 3 et le module récepteur 2, 3 est constitué par plusieurs opérations d'écriture. Lorsque le processeur 5 du module émetteur 2, 3 a reçu par les données du registre d'état l'information qu'aucune
erreur n'est apparue pendant le premier essai d'écriture, il incré-
mente l'adresse, puis la transmet par le bus processeur 20 et la
ligne 22 au registre d'adresse 21 du dispositif de commande de con-
nexion de module actif 6a. De nouvelles données sont transmises au registre de sortie de donnée 32 par le bus processeur 20 et la ligne 37, puis une nouvelle opération d'écriture est effectuée, de la façon précédemment décrite. L'incrémentation de l'adresse sélecte le registre de module suivant dans le dispositif de connexion de module
passif 6b du module récepteur 2, 3. De nouvelles opérations d'écri-
ture peuvent suivre.
Lorsqu'une erreur est apparue pendant l'essai de transfert ou
quand il n'y a plus de données à transmettre, le dispositif de com-
mande de connexion de module actif 23 du modulé émetteur 2, 3 remet à o l'indicateur HL pour mettre fin au transfert. Le système de bus
1 est ainsi libéré pour l'accès par un autre module 2, 3.
Dès que l'indicateur HL est remis à 0, c'est-à-dire dès qu'au-
cun signal n'est plus transmis au dispositif de commande de connexion de module passif 29 du module récepteur 2, 3 (figure 2) par la ligne
67a (figure 4), des lignes 67 et des lignes b (figure 5), l'Vlica-
teur P est remis à 0 dans le dispositif de commande de connexion de module passif 29 (figure 3), de sorte que la commande de sens 53 est
commutée par la ligne 56 afin de permettre au processeur 5 d'inter-
roger les registres de module 36 par des lignes 54, des lignes 52 et
*S le bus processeur 20.
La remise à 0 de l'indicateur P dans le dispositif de connexion de module passif 29 stocke par des lignes 28, dans le registre d'état 26, une information qui assure que le module 2,3 n'accepte pas une demande de transfert d'un autre module 2,3 tant que le processeur 5 n'a pas interrogé le contenu des registres de module 36 par le bus
processeur 20, des lignes 52, la commande de sens 53 et des lignes 54.
Après avoir lu tous les registres de module 36, le processeur 5 efface par le bus processeur 20 et des lignes 27 l'information stockée dans le registre d'état 26, de sorte que les registres de module 36 et par
suite le module 2,3 peuvent de nouveau être sélectés.
Fonction du circuit de terminaison de bus 85 Chaque fois qu'un dispositif de commande de connexion de module actif 23 délivre un signal de synchronisation maître à la ligne 64 du bus de commande 15, un étage de temporisation 83 est déclenché dans le circuit de terminaison de bus 85 (figure 8), puis est remis à 0 dès qu'un signal de synchronisation esclave, délivré par un dispositif
de commande de connexion de module passif 29 ou un dispositif de con-
nexion de mémoire 73 quelconque, apparait sur la ligne 65. En l'absence du signal de synchronisation esclave pendant un inervalle de temps prédéterminé, l'étage de temporisation 83 attaque par la ligne 86 un circuit 82 de production d'un code de retour, qui délivre un code de retour "erreur d'adresse" sur les lignes 57, 58, 59 du bus de signaux d'accusé de réception 14. L'étage de temporisation 83 est remis à 0
simultanément par la ligne 87.
Le circuit de terminaison de bus 85 contient un circuit 84, dont le rôle consiste à délivrer une impulsion d'accès au bus sur les lignes 63 et 61 lors de la mise sous tension du système, et à commuter en service l'impulsion d'accès au bus de la ligne 61n à la ligne 61 par la ligne 63. Chaque fois qu'un signal apparaît sur la ligne 63, tous les dispositifs de commande de connexion de module passifs 29 et dispositifs de connexion de mémoire 73 ignorent toute demande. Coupleur de bus Pour l'expansion d'un système de traitement de l'information du type précédemment décrit, il est possible de le relier par des coupleurs de bus à un ou plusieurs autres systèmes de traitement de
l'information. La figure 9 représente un tel couplage de deux sys-
tèmes. Un premier système 88, constitué par le système de bus la, des modules calculateurs 2, des modules périphériques 3, des mémoires principales 4 et un circuit de terminaison de bus 85, est connecté par un coupleur de bus 90 à un second système 89, constitué par un
système de bus lb, des modules calculateurs 2, des modules périphé-
riques 3, des mémoires principales 4 et un circuit de terminaison de *bus 85, ce second système étant lui-même relié au premier système 88
par un coupleur de bus 91.
La figure 10 représente deux coupleurs de bus 90, 91, constitués
chacun par une mémoire 92a, 92b, un dispositif de commande de cou-
pleur de bus passif 93a, 93b et un dispositif de commande de coupleur de bus actif 94a, 94b. Le dispositif de commande de coupleur de bus passif 93a est relié par des lignes 95 au bus d'adresse 12a et par
des lignes 96 au bus de commande i5a d'un système de bus. Le dispo-
sitif de commande de coupleur de bus actif 94a, connecté au système de commande de coupleur de bus passif 93a, est relié par une ligne de commande 97 à uh commutateur de bus 98, par une ligne 99 au bus de commande 15b et par des lignes 114 au bus de signaux d'accusé de réception 14b d'un système de bus lb. Le dispositif de commande de coupleur de bus passif 93b est relié par des lignes 100 au bus d'adresse 12b et par des lignes 101
au bus de commande 15b d'un système de bus lb. Le dispositif de com-
mande de coupleur de bus actif 94b, connecté au dispositif de commande de coupleur de bus passif 93b, est relié par des lignes 102 au bus de commande 15a, par des lignes 115 au bus de signaux d'accusé de
réception 14a du système de bus la et par des lignes 103 au commuta-
teur de bus 98. Ce dernier est relié au bus d'adresse 12a par des lignes 104, au bus de donnée 13a par des lignes 105, au bus de signaux d'accusé de réception 14a par des lignes 106, au bus d'adresse 12b par des lignes 107, au bus de donnée 13b par des lignes 108 et à un bus
de signaux d'accusé de réception 14b par des lignes 109.
La mémoire 92a contient une représentation de toutes les adresses accessibles par le système de bus lb dans le système de trai- tement de l'information 89 (figure 9); réciproquement, la mémoire 92b (figure 10) contient une représentation de toutes les adresses pouvant être sélectées par le système de bus la dans le système de traitement
de l'information 88 (figure 9).
Un transfert entre un module 2,3 du système de traitement de
l'information 88 (figure 9) et un module 2,3 ou une mémoire princi-
pale 4 du système de traitement de l'information 89, par l'intermé-
diaire du coupleur de bus 90, est décrit brièvement ci-dessous à
l'aide des figures 9 et 10.
Lorsqu'un module 2,3 du système de traitement de l'information
88 (figure 9) en appliquant les adresses, les données et les infor-
mations d'état WR ou WR et le cas échéant HL au système de bus la, produit une demande de transfert à une adresse se trouvant dans la mémoire 92a du dispositif de commande de coupleur de bus passif 93a, ce dernier délivre immédiatement un signal de synchronisation esclave sur la ligne 65 et conduit le dispositif de commande de coupleur de bus actif 94a à obtenir l'accès au système de bus lb par des lignes 99. Lorsqu'il dispose de l'accès au bus, le dispositif de commande de coupleur de bus actif 94a produit la fermeture du commutateur de bus 98 par des lignes 97. Le bus d'adresse 12a, le bus de donnée 13a et le bus de signaux d'accusé de réception 14a sont ainsi connectés par des lignes 104, 105, 106 au commutateur de bus 98, et par des lignes 107, 108, 109 au bus d'adresse 12b, au bus de donnée 13b et au bus de signaux d'accusé de réception 14b. Le bus de commande 15a est relié au bus de commande 15b par des lignes 96, le dispositif de commande de coupleur de bus passif 93a, le dispositif de commande
de coupleur de bus actif 94a et des lignes 99.
Lorsque toutes les liaisons sont établies, le dispositif de
commande de coupleur de bus passif 93a se comporte avec le commuta-
teur de bus 98 comme un prolongement du bus la et le dispositif de commande de coupleur de bus actif 94a se comporte avec le commutateur de bus 98 comme un prolongement du bus lb, de sorte que le transfert
peut se poursuivre comme précédemment décrit sous a), b) ou c).
La liaison entre le système de bus la et le système de bus lb s'effectue par effacement du signal de synchronisation esclave sur le bus de commande 15b, de sorte que le dispositif de commande de cou-
pleur de bus passif 93a remet également à 0 le signal de synchronisa-
tion esclave sur le bus de commande 15a. (L'effacement du signal de synchronisation esclave signifie que l'accès au bus est disponible quand l'indicateur HL n'est pas remis à 1.) Un transfert entre un module 2,3 relié au système de bus lb et un module 2,3, ou une mémoire principale 4, exploité sur le système de bus la s'effectue de la façon précédemment décrite, par le coupleur
de bus 91.
Afin d'éviter un blocage du système dans le cas d'une demande simultanée de transfert des deux coupleurs de bus à l'autre bus, il convient d'affecter une priorité différente aux coupleurs de bus 90, 91 ou aux systèmes de traitement de l'information88, 89, de sorte que le coupleur de bus de priorité inférieure supprime la demande de transfert, afin de permettre l'exécution de l'autre transfert. Afin de déceler un conflit, les deux coupleurs de bus 90, 91 présentent une liaison (non représentée) et sont reliés par des lignes 114 et aux bus de signaux d'accusé de réception 14b, 14a pour résoudre les conflits. Il est possible de relier plusieurs coupleurs à un bus
ou d'effectuer le couplage sur plusieurs bus.
Procédé d'exploitation du système de traitement de l'information Quelques remarques préliminaires sont nécessaires avant de décrite un exemple de procédé d'exploitation du système de traitement
de l'information précédemment décrit.
Comme précédemment indiqué, le système de traitement de l'in-
formation considéré est un système flexible modulaire, constitué par plusieurs modules calculateurs 2, modules périphériques 3 et mémoires principales 4, ainsi qu'un circuit de terminaison de bus 85 et le cas échéant un ou plusieurs coupleurs de bus 90, 91, reliés entre eux par un système de bus 1 commun. Il n'y a pas de structure hiérarchique à l'intérieur de ce système. Aucune fonction maître-esclave n'est donc prédéterminée. Toutes les unités actives, c'est-à-dire les
modules calculateurs 2 et les modules périphériques 3, sont - indé-
pendanmment du fait qu'ils utilisent des mémoires principales com-
munes - des unités de calculateur parfaitement autonomes et de même priorité, qui s'affectent mutuellement des tâches selon les exi- gences du programme utilisateur. Les mémoires principales 4 peuvent être considérées comme des éléments passifs et ne comportent aucun
processeur propre.
Le nombre de modules 2,3 ou de mémoires principales 4 peut par principe être augmenté à volonté, car le système d'exploitation est réparti entre les modules calculateurs 2 et périphériques 3 de façon que chaque module 2, 3 contient uniquement les parties nécessaires pour sa fonction et pour assurer une communication standard. Dans le cas de structures importantes, il convient toutefois de diviser le système de bus 1 en systèmes partiels plus petits, par des coupleurs
de bus 90, 91, afin d'obtenir des temps acceptables d'accès au bus.
Les sytèmes partiels sont constitués par plusieurs modules calcula-
teurs 2, modules périphériques 3, mémoires principales 4, coupleurs de bus 90, 91 et par une terminaison de bus 85; leur fonctionnement est autonome pour l'essentiel, c'est-à-dire qu'ils n'interviennent qu'assez rarement dans d'autres systèmes partiels par des coupleurs de bus 90, 91, de sorte que les parties de bus sont découplées
presque totalement.
Un adressage global est en outre possible, c'est-à-dire que chaque cellule des mémoires principales 4 et chaque registre de module sont adressables par chaque élément actif (modules calculateurs 2 ou périphériques 3). Il en est évidemment de même dans d'autres systèmes
partiels, par l'intermédiaire des coupleurs de bus.
Lorsque des coupleurs de bus 90, 91 sont utilisés, il est nécessaire d'affecter une priorité différente aux divers systèmes
partiels pour éviter un blocage du système.
Le fonctionnement du système exige d'effectuer d'abord un pre-
mier démarrage pour définir l'ensemble du système, car au moment de la mise sous tension, les divers modules 2, 3 ne contiennent aucune
information sur les modules calculateurs 2, modules périphériques 3.
et mémoires principales 4 qui sont reliés au système de bus 1.
Le déroulement du premier démarrage est décrit ci-dessous à
l'aide des figures 1-10 et surtout de la figure 11.
La mise sous tension du système de traitement de l'information produit d'abord une remise à 0 du bus et de tous les modules 2,3, mémoires principales 4, coupleurs de bus 90, 91 et de la terminaison
de bus 85 qui lui sont reliés.
Dès qu'ils se trouvent dans un état initial défini électrique-
ment, les divers modules 2,3 démarrent un auto-test, pendant lequel l'aptitude fonctionnelle des mémoires internes et des interfaces
périphériques est contrôlée.
Lorsque les auto-tests sont terminés, un module 3X, qui s'est
identifié à l'aide de son adresse, assume provisoirement le pilotage.
Il recherche d'abord l'adresse initiale des mémoires principales 4
en effectuant des essais d'adressage par pas appropriés.
Dans le cas d'adresses n'existant pas dans la mémoire, la ter-
minaison de bus 85 délivre le code de retour "erreur d'adresse" au système de bus 1, après un retard prédéterminé, puis un nouvel essai est effectué avec une adresse modifiée. Dès que l'adresse initiale
des mémoires principales 4 est trouvée, le module 3X établit une pre-
mière table centrale 110 du système, commençant à l'adresse initiale, puis une seconde table centrale 111, dont l'adresse initiale est
stockée dans la première table centrale 110 du système.
Après l'établissement des tables 110, 111, le module 3X com-
mence à explorer systématiquement l'espace adresses des mémoires principales 4, afin de déterminer les adresses auxquelles des cellules
de mémoire sont effectivement disponibles. Dès que la première cel-
lule de mémoire disponible est trouvée, son adresse est stockée dans la table centrale 110 du système. Chaque adresse de l'espace adresses
des mémoires principales 4 est interrogée, car ledit espace peut pré-
senter des intervalles vides, du fait de mémoires non équipées par exemple. Lorsque pendant cette opération le module 3X atteint un intervalle vide, la longueur du bloc mémoir précédent 112 et l'adresse initiale du bloc mémoire suivant 113 sont stockées à la première adresse du bloc mémoire précédent 112. On obtient ainsi une chaîne
de renvois, implantée dans la première table centrale 110 du système.
A la fin de cette opération, c'est-à-dire après l'exploration totale de l'espace adresses de la mémoire principale, le module 3X
commence à envoyer à toutes les adresses de module possibles, y com-
pris la sienne, une information contenant l'adresse initiale de la première table centrale 110 du système et l'instruction d'écriture
dans la seconde table centrale 111. L'essai de transfert est inter-
rompu par la terminaison de bus 85 en l'absence de récepteur.
Les modules 2, 3, 3X sélectés par le module 3X mémorisent l'adresse initiale de la première table centrale 110, puis commencent à écrire dans la seconde table centrale 111 leur propre adresse et des informations spécifiques, telles que l'indication qu'il s'agit
d'un module calculateur 2 ou périphérique 3, et les appareils péri-
phériques 8 qu'ils desservent. On obtient ainsi une représentation complète de la structure d'ensemble dans la première 110 et dans la
seconde table centrale 111.
L'enregistrement des modules 2, 3, 3X dans la seconde table centrale 111 met fin au premier démarrage. A partir de cet instant, les modules 2, 3, 3X attendent des demandes de l'opérateur ou d'un
programme utilisateur.
La routine précédemment décrite de premier démarrage ou d'auto-
configuration permet de démarrer automatiquement une configuration quelconque du système, sans intervention de l'opérateur, par stockage
dans la mémoire principale d'une description de configuration acces-
sible à tous les éléments actifs, sous forme de tables chaînées.
Une sortie de diagnostic du système complet est effectuée simultané-
ment, car toutes les cellules de la mémoire principale 4 et tous les modules 2,3 sont adressés. Il est ainsi possible de raccorder dès l'origine au système des cellules mémoires et des modules non existants
ou défectueux.
L'autoconfiguration est évidemment possible aussi dans des sys-
tèmes comprenant des coupleurs de bus. La description de la configu-
ration du système couplé doit toutefois être mémorisée dans ce cas
dans les coupleurs de bus.
Exécution d'un programme utilisateur
Une routine de premier démarrage amène le système de traite-
ment de l'information dans un état o il peut traiter des programmes utilisateur. A l'aide d'un appareil d'entrée-sortie permettant le dialogue, une instruction de traitement d'un programme utilisateur est délivrée au module périphérique 3 correspondant, contenant l'interface logique d'opérateur. Au cours du pas suivant, le module périphérique 3 sélecté stocke dans la mémoire principale 4 le bloc de conduite de processus et conduit, à l'aide d'un langage d'ordres, un module calculateur 2 à préparer un interprétateur. Ce dernier charge un module périphérique 3 déterminé, désigné par l'opérateur, à charger dans la mémoire principale un programme utilisateur stocké dans un appareil périphérique donné, tel qu'une unité à disquette. Les blocs
de commande déjà établis sont complétés par cette opération.
Lorsque toutes les informations nécessaires à l'exécution d'un programme utilisateur se trouvent dans la mémoire principale, le module
calculateur 2 commence l'interprétation automatique du programme.
Lorsqu'au cours du programme apparaissent des tâches que l'interpré-
tateur ne peut pas exécuter lui-même, telles que des opérations d'entréesortie ou un changement du langage de programmation, le module calculateur 2 interprétateur charge automatiquement un autre module 2,3, spécialisé pour la tâche considérée, de reprednre cette
dernière et de la poursuivre avec l'interprétation du programme.
Pour le transfert d'une tâche d'un module 2,3 à un autre module 2,3, on utilise comme précédemment indiqué un langage d'ordres, à l'aide duquel un module émetteur 2,3 transmet une tâche à un module récepteur et lui indique simultanément o se trouvent les structures
de données nécessaires à l'exécution de la tâche.
Il ressort de ce qui précède que le transfert de tâches d'un module 2,3 à un autre module 2,3 présente une grande importance dans le système de traitement de l'information considéré, car les divers
modules 2,3 constituent des unités spécialisées relativement petites.
Il est donc nécessaire, comme le montre la description, que le
système constitue tant par le matériel que par le logiciel une unité
homogène, qui permet toutefois une expansion quelconque sans adap-
tation et avec conservation de la structure homogène. Bien entendu, diverses modifications peuvent être apportées par l'hommne
de l'art au principe et aux dispositifs qui viennent d'être décrits uniquement à titre d'exemples non limitatifs, sans
sortir du cadre de l'invention.
-2503420
Claims (16)
1. Système modulaire décentralisé de traitement de l'information, caractérisé en ce qu'un nombre par principe quelconque de systèmes calculateurs autonomes et de même priorité, spécialisés en modules calculateurs (2) ou en modules périphériques (3), et une mémoire principale (4) de capacité par principe quelconque sont reliés à un système de bus (1) bidirectionnel, asynchrone et commun, constitué par un bus d'adresse (12), un bus de donnée (13),-un bus de signaux d'accusé de réception (14) et un bus de commande (15); et le système d'exploitation du système de traitement de l'information est réparti entre les divers modules calculateurs (2) et périphériques (3) de façon que chaque module calculateur (2) puisse assurer l'exécution autonome de programmes utilisateur et de service par interprétation
d'un langage de programmation au moins, tandis que les modules péri-
phériques (3) assurent l'exécution autonome des intructions d'entrée-
sortie et/ou des chaînes d'instructions produites, tous les modules
(2,3) pouvant communiquer entre eux.
2. Système de traitement de l'information selon revendication 1, caractérisé en ce que la connexion de tous les modules calculateurs (2) et de tous les modules périphériques (3) au système de bus (1) bidirectionnel, asynchrone et commun s'effectue pour chacun par un dispositif de connexion de module (6), divisé en une partie active (6a) et une partie passive (6b), de façon que le système de bus (1) commun et les bus locaux (20) des modules calculateurs (2) et des
modules périphériques (3) forment une hiérarchie telle que le fonc-
tionnement de tous les modules (2,3) est par principe simultané et asynchrone; et la mémoire principale (4) est reliée au système de bus (1) par au moins un dispositif de connexion de mémoire (11) ne
comportant qu'une partie passive.
3. Système de traitement de l'information selon revendications 1
et 2, caractérisé par la réalisation identique de tous les disposi-
tifs de connexion de modules(6) pour la connexion de modules calcu-
lateurs (2) et de modules périphériques (3).
4. Système de traitement de l'information selon revendications 1
à 3, caractérisé en ce que la partie passive (6b) de chaque dispositif de connexion de module (6) contient des registres de module (36),
qui forment avec la mémoire principale (4) un espace adresses commun.
5. Système de traitement de l'information selon revendications 1
et 2, caractérisé en ce que chaque module calculateur (2) et chaque module périphérique (3) peuvent demander l'accès au bus par la partie active (6a) d'un dispositif de connexion de module (6), l'affectation s'effectuant successivement de façon que l'accès au bus soit toujours accordé, dans le même sens de module (2,3) à module (2,3), au module (2,3) ayant demandé l'accès au bus et se trouvant
être le plus proche du dernier module ayant disposé dudit accès.
6. Dispositif de traitement de l'information selon revendications
1 à 5, caractérisé en ce que chaque module (2,3) disposant de l'accès au bus le cède automatiquement après une opération de transmission, au cours de laquelle est transmise la quantité de données minimale
admissible dans le système.
7. Système de traitement de l'information selon revendications
1 à 6, caractérisé en ce que chaque module (2,3) peut, par un ver-
rouillage de bus, interdire la cession automatique de l'accès au bus,
de sorte qu'un accès exclusif d'un module (2,3) au bus est réalisa-
ble pendant un nombre quelconque d'opérations de transmission.
8. Système de traitement de l'information selon une quelconque des
revendications 1 à 7, caractérisé en ce que le système d'exploitation
est réparti entre les modules (2,3) de façon que chacun d'eux con-
tient uniquement les parties assurant sa fonction et permettant une
communication standard avec les autres modules (2,3).
9. Système de traitement de l'information selon une quelconque des
revendications 1 a 8, caractérisé en ce que pour l'exécution de pro-
grammes utilisateur et/ou de service, les modules (2,3) confient des tâches à d'autres modules (2,3), à l'aide d'un langage d'ordres, chaque tâche contenant une information relative a l'emplacement o
se trouvent les structures de données nécessaires a son exécution.
10. Système de traitement de l'information selon une quelconque des
revendications 1 à 9, caractérisé en ce que la communication de module
(2,3) à module (2,3) s'effectue exclusivement par des cellules mémoire
disponibles dans l'espace adresses commun.
11. Système de traitement de l'information selon une quelconque des
revendications 1 à 10, caractérisé en ce que l'addition de modules
(2,3) permet l'expansion du système sans adaptation du système d'ex-
ploitation.
12. Système de traitement de l'information selon une quelconque des
revendications 1 à 11, caractérisé en ce que le système est divisible
par des coupleurs de bus (90, 91) en systèmes partiels asynchrones
autonomes (88, 89), interconnectés uniquement en cas de besoin, l'af-
fectation de priorités différentes aux systèmes partiels (88, 89) interdisant un blocage du système; et le coupleur de bus (90, 91)
contient en mémoire une représentation des adresses des modules cal-
culateurs (2), modules périphériques (3) et mémoires principales (4)
se trouvant dans le système interconnecté.
13. Système de traitement de l'information selon une quelconque des
revendications 1 à 12, caractérisé en ce que le branchement d'une
configuration quelconque du système établit automatiquement dans la
mémoire principale (4) des tables (110, 111, 112, 113), qui contien-
nent une représentation précise-de l'ensemble de la configuration du système et sont chaînées, l'adresse initiale des tables chaînées
étant automatiquement transmise à chaque module (2,3).
14. Système de traitement de l'information selon une quelconque des
revendications 1 à 13, caractérisé en ce que chaque module calcula-
teur (2) traite plusieurs programmes utilisateur et/ou de service emboîtés.
15. Système de traitement de l'information selon une quelconque des
revendications 1 à 14, caractérisé en ce que chaque module pripb.Ié-
rique (3) gère plusieurs appareils périphériques (8) de même type.
16. Système de traitement de l'information selon une quelconque des
revendications 1 à 15, caractérisé en ce que les modules calculateurs
(2) et périphériques (3) reliés au système de bus (1), à l'exception
de leurs fonctions particulières, présentent une réalisation struc-
turelle similaire, de sorte que les parties essentielles des systèmes
d'exploitation des divers modules (2,3) sont similaires.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19813112693 DE3112693A1 (de) | 1981-03-31 | 1981-03-31 | Modular aufgebautes dezentrales datenverarbeitungssystem |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2503420A1 true FR2503420A1 (fr) | 1982-10-08 |
Family
ID=6128793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR8121500A Withdrawn FR2503420A1 (fr) | 1981-03-31 | 1981-11-17 | Systeme decentralise modulaire de traitement de l'information |
Country Status (7)
Country | Link |
---|---|
JP (1) | JPS57209561A (fr) |
DE (1) | DE3112693A1 (fr) |
FR (1) | FR2503420A1 (fr) |
GB (1) | GB2096369A (fr) |
IT (1) | IT1140489B (fr) |
NL (1) | NL8104891A (fr) |
SE (1) | SE8200314L (fr) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2538140B1 (fr) * | 1982-12-21 | 1988-06-24 | Thomson Csf Mat Tel | Dispositif de couplage de bus pour systeme de traitement de donnees a bus multiples |
DE3486451T2 (de) * | 1983-04-25 | 1997-09-25 | Cray Research Inc | Mehrprozessorsteuerung für Vektorrechner |
US4814983A (en) * | 1984-03-28 | 1989-03-21 | Daisy Systems Corporation | Digital computer for implementing event driven simulation algorithm |
US4751637A (en) * | 1984-03-28 | 1988-06-14 | Daisy Systems Corporation | Digital computer for implementing event driven simulation algorithm |
US4870704A (en) * | 1984-10-31 | 1989-09-26 | Flexible Computer Corporation | Multicomputer digital processing system |
GB2195038A (en) * | 1986-07-05 | 1988-03-23 | Narayanaswamy D Jayaram | A multi-microprocessor system with confederate processors |
US4916647A (en) * | 1987-06-26 | 1990-04-10 | Daisy Systems Corporation | Hardwired pipeline processor for logic simulation |
US4873656A (en) * | 1987-06-26 | 1989-10-10 | Daisy Systems Corporation | Multiple processor accelerator for logic simulation |
US4872125A (en) * | 1987-06-26 | 1989-10-03 | Daisy Systems Corporation | Multiple processor accelerator for logic simulation |
GB2433396B (en) | 2005-12-15 | 2010-06-23 | Bridgeworks Ltd | A bridge |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2025672A1 (de) * | 1969-07-09 | 1971-01-14 | Burroughs Corp , eine Gesellschaft n d Ges d Staates Michigan, Detroit, Mich (VStA) | Konfigurationsanzeiger fur periphere Einheiten in einer Datenverarbeitungsanlage |
US3662401A (en) * | 1970-09-23 | 1972-05-09 | Collins Radio Co | Method of program execution |
US3805247A (en) * | 1972-05-16 | 1974-04-16 | Burroughs Corp | Description driven microprogrammable multiprocessor system |
FR2389176A1 (fr) * | 1977-04-29 | 1978-11-24 | Int Computers Ltd | Dispositif de transmission de donnees |
EP0021365A2 (fr) * | 1979-06-26 | 1981-01-07 | Kabushiki Kaisha Toshiba | Système de traitement de données avec calculateur auxiliaire |
US4257099A (en) * | 1975-10-14 | 1981-03-17 | Texas Instruments Incorporated | Communication bus coupler |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4223380A (en) * | 1978-04-06 | 1980-09-16 | Ncr Corporation | Distributed multiprocessor communication system |
-
1981
- 1981-03-31 DE DE19813112693 patent/DE3112693A1/de not_active Withdrawn
- 1981-10-29 NL NL8104891A patent/NL8104891A/nl not_active Application Discontinuation
- 1981-11-12 IT IT24991/81A patent/IT1140489B/it active
- 1981-11-17 FR FR8121500A patent/FR2503420A1/fr not_active Withdrawn
- 1981-12-09 GB GB8137049A patent/GB2096369A/en not_active Withdrawn
-
1982
- 1982-01-20 SE SE8200314A patent/SE8200314L/xx not_active Application Discontinuation
- 1982-03-31 JP JP57051449A patent/JPS57209561A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2025672A1 (de) * | 1969-07-09 | 1971-01-14 | Burroughs Corp , eine Gesellschaft n d Ges d Staates Michigan, Detroit, Mich (VStA) | Konfigurationsanzeiger fur periphere Einheiten in einer Datenverarbeitungsanlage |
US3662401A (en) * | 1970-09-23 | 1972-05-09 | Collins Radio Co | Method of program execution |
US3805247A (en) * | 1972-05-16 | 1974-04-16 | Burroughs Corp | Description driven microprogrammable multiprocessor system |
US4257099A (en) * | 1975-10-14 | 1981-03-17 | Texas Instruments Incorporated | Communication bus coupler |
FR2389176A1 (fr) * | 1977-04-29 | 1978-11-24 | Int Computers Ltd | Dispositif de transmission de donnees |
EP0021365A2 (fr) * | 1979-06-26 | 1981-01-07 | Kabushiki Kaisha Toshiba | Système de traitement de données avec calculateur auxiliaire |
Non-Patent Citations (2)
Title |
---|
ELEKTRONISCHE RECHENANLAGEN, vol. 21, no. 4, août 1979, pages 171-183, M}nchen, DE * |
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 17, no. 3, aoùt 1974, pages 926-927, New York, US * |
Also Published As
Publication number | Publication date |
---|---|
GB2096369A (en) | 1982-10-13 |
JPS57209561A (en) | 1982-12-22 |
IT1140489B (it) | 1986-09-24 |
SE8200314L (sv) | 1982-10-01 |
IT8124991A0 (it) | 1981-11-12 |
DE3112693A1 (de) | 1982-10-14 |
NL8104891A (nl) | 1982-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7676639B2 (en) | Separate handling of read and write of read-modify-write | |
JPS60252978A (ja) | デ−タ処理システムア−キテクチヤ | |
FR2503420A1 (fr) | Systeme decentralise modulaire de traitement de l'information | |
JPH0789340B2 (ja) | バス間インターフェースにおいてアドレス・ロケーションの判定を行なう方法及び装置 | |
US7069305B2 (en) | Computer system and a data transfer method thereof using remote direct memory access | |
CA2250999A1 (fr) | Dispositif d'echange entre unites de traitement d'informations a processeurs interconnectes par un bus commun | |
KR100299127B1 (ko) | 비동기 전송모드 교환기의 주제어부 이중화 장치 및 방법 | |
FR2518781A1 (fr) | Ensemble de traitement reparti de donnees et controleur de transmissions | |
JP2003308288A (ja) | マイクロコンピュータシステム | |
AU734501B2 (en) | Small size inter-processor data transfer system | |
EP0813154A1 (fr) | Circuit pour transborder des données entre mémoires distantes et calculateur comprenant un tel circuit | |
JPS5843037A (ja) | デ−タ処理装置 | |
JPH0522307A (ja) | データ送信装置 | |
JPH027212B2 (fr) | ||
JPH0553787A (ja) | プログラム変更方式 | |
JP2004186782A (ja) | データ書き込み制御方法 | |
EP0441706B1 (fr) | Calculateur de missile | |
JP2944193B2 (ja) | データ受信装置 | |
JPS5846423A (ja) | ダイレクトメモリアクセス装置のインタ−フエイス回路 | |
JPS6130300B2 (fr) | ||
JPH07319840A (ja) | マルチcpu装置 | |
JPH06110824A (ja) | バスブリッジ装置 | |
JPS6223339B2 (fr) | ||
KR20010026255A (ko) | 이중화 시스템에서 프로그램 로딩 방법 | |
JPH088941A (ja) | 単方向ループ型伝送回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |