INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
Ainsi, lorsque l'ensemble arrive à l'étape 28, la réponse ANS indiquéc par l'accumulatcur est telle que xx, 5 c'est-à-dire sous forme d'un nombre arrondi ou réglé représentant la valeur de P comme indiqué sur la figure 5, le double de cette valeur étant un nombre impair. Ainsi, dans l'étape 28, la réponse in diquée par l'accumulateur est simplement conservée dans le re gistre P comme indiqué par le tableau III.
Une fois calculée et conservée la valeur de P (qui reste dans l'aocumnlateur à la fin de l'étape 28), l'ensemble passe à l'étape 29 dans laquele la valour 2P est calculéc ot conservéc. Comme indiqué par les tableaux III et X, il suffit que la constante 2 soit lue pour la multiplication et le pro duit 2P apparaît en réponse dans l'accumulateur, cette répouse étant conservée dans le registre 2P.
Comme la quantité 2P est alors disponible, les quan bités élémentaires de variations progressives des vitesses suivant les axes X et Y, pendant chacune des périodes sueccssives #TN, peuvent être déterminées, lorsque ces vitesses doivent être modifiées de fagon uniforme par les guantités totales # PRX et # PRY, perdant une durée de 2P périodes. Ainsi, dans l'étape 30, le nombre #PRY est lu dans l'accumulatour et le nombre 2P est lu dans. son registre sous forme d'un facteur divisour de manière que le rapport #PRX/2P soit calculé et celui-ci repré- sente selon l'équ@tion (16) le nombre PRXI. Ce nombre apparaît dans le registre de réponse à la fin de l'étape 30 et il est.
acheminé de manière qu'il soit conservé dans le registre PRXI.
Lors de l'étape 31, des opérations analogues sont mi ses en ceuvre.pour le calcul de la quantité PRYI destiné à modifler la vitesse suivant l'axe Y au cours des périodes indi viduelle@ qui s'éceulent pendant l'intervalle 2P. En conséquen ce, le nombre PRYI est formé et conservé daus son registre.
L'étape 32 (tableaux III et X) permet la détermination du fnit que le changement des vitesses d'axos pendant le temps 2P doit être progressif, comme indiqué sur la figure 5, ou que le saut le plus important des vitesses lors de la tran sition du bloc Bn+1 au bloc Bn+2 est si faible que les dispo sitifs 21 et 31 d'asservissement peuvent les assurer sans variation progressive des nombres de vitesse.A titre d'exemple de détormination, on considère que, lorsque le saut le plus grand d'axe de vitesse est inférieur au changement A de vitesse qui peut être assuré par les dispositifs d'asservissement pendant une période #TN, l'augmentation progressive des nombres de vitesse n'est pas nécessaire et la durée 2P, comme indiqué sur la figure 5, peut constituer simplement une seule période # TN dans laquelle le sant le plus grand de vitesse d'axe est assuré pendant une seule période. En conséquence, dans l'é tape 32 du tableau III, le nombre #PRfa est lu dans l'accumu- laveur et le nombre A est soustrait de manière que ia différen- ce # PRfa - .A soit calculée.Lorsque la réponse n'est pas négative (indiquant que #PRfa est supérieur à A) l'ensemble passe à l'étape 35. Cependant, lorsque la réponse est négative (indiquant que # PRfa est inférieur à A) l'ensemble passe à l'étape 33.
Dans l'étape 33, k'accumulateur est effacé si bien que la réponse ANS indiquée est nulle et que la valeur est conservée dans les registres P, 2P et DECEL, si bien que tous les nombres correspondants ont une valeur nulle. L'ensemble passe alors à l'étape 36.
D'autre part, lorsqu'une augmentation progressive des vitesses est nécessaire pendant la dernière partie de l'exécution du bloc Bn+1, l'ensemble passe de l'étape 32 à l'étape 35 dans laquelle le nombre, 1 est lu dans l'accumulateur et est conservé dans l'indicateur DECEL à un bit. Cet indicateur indique ainsi que, lorsque le bloc Bn+1 devient le bloc Bn de la mémoire courante, l'augmentation de vitesse doit commencer lorsque le nombre de périodes écoulées ou boucles est égal au nombre actif LOOP@.
Après-l'étape 35, l'ensemble passe à l'étape 36 dans laquelle l'accumulateur est effacé et les nombres LOOPP, PC et P sont lus de manière gue la quantité LOOPS soit calculée suivant l'équation (18). La réponse ost conservéc dans le registre LOOPS (et devient LOOPB ensuite, après transfert dans la mémoire courante). L'ensemble passe alors à l'étape 27 dans laqueile la quantité 2P est lu et ajoutée à la réponse existante, représentant LOOPS dans l'accumulateur, la nouvelle réponse représentant la valeur LOOPF suivant l'équation (19), cette nouvelle réponse étant conservée, dans le registre LOOPF.
Les durées de LOOPS et LOOPF sont représentées sur la fi.gure 5.
Après la fin de ces opérations de préparation de données, l'ensemble passe à l'étape 38 dans laquelle le bit indicapteur de mémoire DRIND est mis à, 1 indiquant ainsi que le traitement des données du bloc Bn+1 a été terminé et que le transfert de la mémoire intermédiaire 69 à la mémoire courante 70 est possible, après la fin du bloc Bn en cours. On voit en conséquence que, chaque fois que l'indicatour DRIND devient un zéro au cours de l'étape 010 du cycle de transfert du sousprogramme d'asservissement, le sous-programme de préparation est mis en oeuvre et l'indicatour DRINK est établi à 1. Ensui- te, dans l'étape 39, l'ensemble passe au programme de surveillance du calculatour.
L'un des buts principaux de l'invention est de réaliser un système et un procédé perfectionnés pour modifier les informations contenues dans la base du système diun système d'or dinateur.
Un autre but de l'invention est de réaliser une instruction de commutation du système dans la microprogrammerie (appelée communément firmware) qui change, lors de son exécution, les informations contenues dans la base du système.
Encore un autre but de l'invention est de réaliser un système et un procédé pour modifier les informations contenues dans la base du système qui est située dans la mémoire principale et dans les registres bloc-notes.
Encore un autre but de l'invention est de raliser un mécanisme perfectionné de commutation de la base du système.
ainsi Ces buts que autres buts de l'invention ressortiron de la description du mode de réalisation préférentiel de l'invention considérée en combinaison avec les dessins annexés.
Conformément à iiinvention, il est prévu une instruction, indépendante du modèle, contenue dans la microprogrammerie pour modifier, lors de son exécution, les informations contenues dans la base du système qui est située à la fois dans la mémoire principale et dans les registres bloc-notes internes.
La base du système située à un emplacement, spécifié par le registre d'adresse limite BAR, de la mémoire principale, est copiée dans un nouvel emplacement de la mémoire principale avec des parties prédéterminées de ses informations modifiées. Ceci est facilement accompli par le système d'exploitation (cf demande de brevet précitée). L'instruction de commutation de la base du système transfère alors les informations contenues dans la base du système située au nouvel emplacement, à la base du système située à l'emplacement spécifié par le registre BAR, ainsi également qu'à la partie de la base du système qui se trouve dans la mémoire bloc-notes.
Les éléments nouveaux qui sont caractéristiques de l'invention sont énoncés plus particulièrement dans les revendications annexées. L'invention elle-meme, tant en ce qui concerne son organisation et son fonctionnement que d'autres buts et avantages quelle présente sera plus facilement comprise en se référant à la description ci-après considérée en combinaison avec les dessins annexés dans lesquels La Figure 1 est un schéma bloc d'un système de multiprogrammation utilisant l'invention La Figure 2 est une représentation schématique de diverses structures du matériel utilisées par l'invention La Figure 3 est une légende des termes utilisés pour les zones de stockage réservées dans les registres représentés sur la figure 2 La Figure 4 est une représentation schématique diun bloc de commande de processus La Figure 5 est une représentation schématique dsun système utilisé pour adresser un bloc de commande de processus La Figure 6 est une représentation schématique de la base du système de l'invention Les Figures 7A et 7B représentent schématiquement respectivement un seg ment de pile et un élément de pife La Figure 8 est une représentation schématique diun système utilisé pour adresser les segments G et en particulier la file d'attente des processus contenue dans te segment GO La Figure 9 est une représentation schématique éclatée d'un segment GO montrant la file d'attente des processus et les liaisons de pro cessus Les Figures I 0a à i 0e sont des schémas-blocs des structures du bloc de commande de processus (PCB}; Les Figures I la à 11r sont des schémas-blocs des structures de la base du système La Figure 1Z est une représentation schématique des moyens utilisés pour lladressage des segments des utilisateurs et du système, en utilisant les structures de la base du système et des blocs de commande de processus (PCB) Les Figures 13at - a2, 13b7 - b2 et 13c constituent une représentation schématique de l'unité de commande Les Figures 14al à 14i sont des organigrammes de l'unité distributeur en microprogrammerie La Figure 15a représente la structure de llinstruction de commutation de la base du système Les Figures 15a à 15c sont les organigrammes de ltinstruction de commuta tion de la base du système en microprogrammerie.
L'invention est utilisée typiquement dans le cadre du système matériel décrit ci-après coordonné par un système diexploitation matériel/microprogrammerie/logiciel. Sur la Figure 1 à laquelle on se référera, les soussystèmes de l'ordinateur comprennent le sous-système processeur 101, le sous-système de stockage 102 ou mémoire centrale, et un ou plusieurs jusqulà 32 - sous-systèmes périphériques 103. Le sous-système de traitement comprend une unité centrale (CPU} 104 et jusqu'à quatre unitésde contrôle Entrée/Sortie (tOC) 105. Chaque sous-système périphérique est constitué par une unité de contrôle de périphériques (PCU) 106, un certain nom bre d'adaptateurs de dispositifs (DA) 107 et jusqu'à 256 périphériques E/S 108.
Le sous-système de stockage 102 comprend de un à quatre modules de mémoire à semi-conducteur contenant chacun de 32 000 à 512 000 octets.
i - SOUS-SYSTEME PROCESSEUR Dans le sous-système processeur 101, l'unité centrale 104 exécute les opérations de traitement fondamentales pour le système et établit la jonction avec la mémoire 102. Le contrôleur E/S 105 commande tous les échanges d'informations entre le sous-système du stockage 102 et les dispositifs périphériques 103.
A - UNITE CENTRALE (CPU) L'unité centrale comporte un synchroniseur de mémoire principale 109, une mémoire tampon 110, divers éléments qui comprennent l'unité de calcul 111, et en option, les moyens d'émulation 112. Le synchroniseur de mémoire principale 109 résoud les conflits pour l'utilisation de la mémoire principale entre l'unité de calcul 111, la mémoire tampon 110 et le contrôleur E/S 105. Les conflits sont résolus sur la base de la priorité ci-après: le contrôleur E/S a la plus forte priorité suivi des opérations d'écriture en mémoire (de l'unité de calcul) et des opérations de lecture en mémoire (avec transfert dans la mémoire tampon).L'unité centrale comporte également l'unité de contrôle d'adresse 131, qui commande l'adressage de la mémoire principale, et la mémoire associative 132, utilisée pour stocker les adresses de la mémoire principale les plus récemment utilisées. La mémoire tampon 110 est une mémoire tampon rapide de petite capacité qui reproduit une région sélectée de la mémoire principale et fait la jonction avec l'unité de calcul pour réduire le temps d'accès moyen à la mémoire. Au cours de chaque cycle -de lecture en mémoire, la mémoire tampon et la mémoire principale sont toutes deux accédées. Si l'information à extraire est déjà dans la mémoire tampon, la lecture en mémoire principale est interrompue et les informations sont extrait es de la mémoire tampon. Autrement, la mémoire principale 102 est lue.
Chaque fois qu'une telle lecture est effectuée, L'unité centrale 104 extrait 32 octets qui contiennent l'information désirée. Cette information reste dans la mémoire tampon en vue de références futures à la mémoire. Etant donné que la mémoire tampon est transparente au logiciel, le programme contrôlant l'ordinateur à un moment donné quelconque ne peut pas déterminer si llinfor- mation qu'il traite a été extraite de la mémoire tampon ou de la mémoire principale.
L'unité de calcul 111 exécute toutes les opérations de traitement de données et de génération d'adresse à l'intérieur de l'unité centrale. Une mémoire morte de commande 130 prévue dans l'unité de calcul (cf le livre Microprogramming: Principles and Practices. Samir S. Husson Prentice Hall, Zinc.) contient la microprogrammerie qui initialise le système, commande l'unité centrale 104 et le contrôleur E/S 105 et décode un jeu d'instructions (non représenté).Facultativement, la mémoire morte peut fournir des instruc tions scientifiques, des routines d'essai, des ensembles de programmes dlémuiation ou des caractéristiques spécialisées qui étendent les capacités du sous-système processeur, Facultativement, unité centrale permet l'émulation des systèmes autres que le présent système. Les émulateurs 112 sont constitués par des éléments de microprogrammerie, de logiciel et, dans certains cas, de matériel B - CONTROLEUR ENTREE-SORTIE La partie du sous-système processeur constituée par le contrôleur E/S 105 établit une voie de données entre un sous-système périphérique 103 quelconque et le sous-système de stockage 102.Cette voie de données permet la mise en route des commandes périphériques et commande les transferts de données résultants. Un contrôleur E/S peut contrôler jusqu'à 32 unités de contrôle de canal (non représentés).
C - SOUS-SYSTEMES PERIPHERIQUES Dans un sous-système périphérique 103 (Fig. 1), l'unité de contrôle de périphérique (PCU) 106 est un processeur microprogrammé indépendant qui soulage la charge de llunité centrale 104 en commandant les dispositifs E/S 108 au cours des opérations d'Entrée/Sortie. L'unité de contrôle de périphérique 106 remplit cette fonction en exécutant des instructions contenues dans un programme de canal. Ce programme a pour résultat l'exécution d'opérations arithmétiques, logiques, de transfert, de décalage et de branchement dans l'unité de contrôle de périphériques.Il existe plusieurs types d'unités de contrôle de périphériques, en fonction du type de dispositif que chacune com mande, à savoir les unités d'enregistrement classiques, les mémoires de masse (à disques), les unités à bande magnétique, les système de communica tion, etc. .
Les adaptateurs de dispositifs 107 servent d'intermédiaires entre chacune des unités de contrôle de périphériques et les dispositifs qu'elle commande. Chaque adaptateur contient la microprogrammerie et la logique nécessai-~s ~jour réaliser les communications avec un type particulier de dispositif. Selon le type, un adaptateur 107 commande un ou plusieurs dispo sitifs.
La taille (PTSZ) 1103 d'une table P définit le nombre d'entrées de la table P.
Le champ PTSZ est un nombre positif de 8 bits qui peut typiquement être compris entre 0 et 255 pour indiquer le nombre d'entrées de la table P. Une exception "hors de table P" se produit si le numéro P est supérieur à PTSZ.
Chaque entrée de la table P 1205 définit l'adresse absolue d'un bloc de commande de processus (PCB) 1206 qui est obtenue en multipliant par 16 le poin teur de bloc PCB Un indicateur de présence P 1105 indique l'absence d'un bloc PCB/lorsqu'il est à l'état binaire 0 et indique la présence du bloc PCB lorsqu'il est mis à l'état binaire 1. (Lorsque l'indicateur de présence P 1105 est trouvé à l'état 0, une exception d'entrée de table P vacante se produit). Les bits 1 à 7 de l'indicateur de table P (Fig. 11) 1106 doivent être O (MBZ), autrement Il se produit une exception d'entrée de table P incorrecte.
A l'adresse BAR + 4 de la base du système 600 se trouve l'octet d e taille diun mot de table G (GTW) représenté en plus de détails sur la figure lid.
La taille et l'adresse d'une table de segments G 1212 (Fig. 12) sont définies par le contenu d'un mot de table G (GTW), La taille (GTSZ) 1108 de la table G 1212 définit le nombre d'entrées de la table G qui peut typiquement s'élever jusqu'à 256 entrées. Le champ GTSZ est un nombre entier positif de^8 bits.
La cellule d'exception du canal située à l'adresse BAR + 44 de la base du système 600 a un format qui est similaire à celui de la cellule d#excep tion du système précédemment décrit et contient le nom de système GD d'un sémaphore qui est utilisé pour transmettre des messages à des processus déterminés 1Orsqugureexception de canal se produit.
Un mot de file d'attente interne du processeur IPQW est situé à l'adresse commençant à BAR + 48 et les détails de son format sont représentés sur la figure 11h. Le mot IPQW désigne le sommet d'une file d'attente de processus prêts (Q/PR/RDY) telle que celles représentées sur la figure 9 et désignées par les références 905 et 805. La file d'attente des processus prêts (Q/PR/RDY) lie tous les processus qui sont à l'état prêt. Elle est référencée par le champ de tête de file Q/pR/RDY 1124 (Fig. 11h) du mot IPQW qui indique le sommet de la file d'attente des processus prêts. Le champ de tête de file Q/PR/RDY 1124 contient un nombre entier de 16 bits qui est le déplacement par rapport à la base du segment G n0 O, appelé segment GO, du premier octet de la file d'attente Q/PR/RDY.Si ce champ Q/PR/RDY est zéro, la file d'attente des processus prêts est considérée comme étant vide. Le champ MBZ 1123 doit être égal à zéro ; s'il en est autrement un contrôle du système se produit.
A I 'adresse BAR + 52 de la base du système 600, on a représenté les positions de stockage pour le comptage de relancesinitial et pour le comptage de relances courant dont le format est représenté en détail sur la figure 11 i. Le champ NFS 1125 est un champ de stockage non fonctionnel et n'est pas utilisé par la base du système. Le champ de comptage de relances initial 11126 et le champ de comptage de relances courant sont utilisés pour déterminer le nombre de fois où une relance d'instruction automatique est exécutée avant qu'une erreur machine soit produite,- pour créer une condition d'exception de défaillance machine. Ils sont chargés avec le même nombre par une instruction de restauration de comptage de relances (non représentée ici).
Le mot de processus en cours (RPW) représenté sur la figure 1 îj est mis en mémoire à l'adresse BAR + 56 de la base du système 600 et est utilisé pour garder# en mémoire le nom du processus en cours avec sa priorité dans le cas d'une architecture comportant un processeur unique. Les champs NFS 1128 et 11131, respectivement, sont des champs de mémoire non fonctionnels et peuvent être utilisés à des fins quelconques par des moyens quelconques de système, mais ils ne sont en général pas utilisés par la base du système. Le niveau de priorité d'un processus en cours est stocké dans le champ PRI 1129.Un bit de déroutement asynchrone ou bit d'alarme est mis en mémoire dans le champ AB 1130 tandis qu'un anneau de déroutement asynchrone est mis en mémoire dans le champ ARN 1132. Le nom logique J, P du processus en cours dans le cas dtune architecture à un seul processeur est mis en mémoire dans le champ J, P 1133.
Un mot pointeur de table diabsolutisation représenté sur la figure 17k est situé à l'adresse BAR + 60 de la base du système et est utilisé lors du chargement initial du système pour initialiser les adresses absolues dans le programme de chargement initial du système (ISL) en ajoutant le contenu du registre BAR à toutes les adresses absolues du programme ISL Le pointeur de table dlabsolutisation 1135 définit l'emplacement d'une table d'absolutisation (non représentée). La taille de la table diabsolutisation est indiquée par le champ ATSZ 1134.
Le mot de numéro de série du processeur représenté sur la figure 111 est un mot de quatre octets situé à l'adresse BAR + 64 et contient le numéro de série du processeur dans le champ de numéro de série du processeur 1136.
Un mot de limite supérieure de la mémoire principale représenté sur la figure 11m est situé à l'adresse BAR + 68 et indique dansle champ 1139 la limite supérieure de la mémoire principale en donnant l'adresse absolue du dernier mot disponible dans la mémoire principale: A l'adresse BAR + 72 se trouve un mot, représenté sur la figure 11n pour indiquer le numéro de canal (CN) de l'unité de chargement initial du système ISL (champ 1140) et le numéro de canal (CN) du dispositif matériel (champ 1141).
Le type et le sous-type d'un dispositif utilisé dans le système diordinateur sont représentés, dans un mot de type de dispositif matériel (Fig.110), respectivement par les champs 1143 et 1144, le champ RSU 1142 de ce mot étant réservé au logiciel; Ce mot se trouve dans la base du système à l'adres- se BAR + 76. Un mot similaire ayant un format type similaire représenté sur la figure 1 1p contient le type et le sous-type du dispositif utilisé pour le chargement initial. Ce mot se trouve à l'adresse BAR + 80.
Lorsqu'on appuie sur le bouton de "reprise" diun ordinateur une opération -V simulée est exécutée sur un sémaphore et l'état "prêt" est entré. Un pointeur indiquant ce sémaphore se trouve à l'adresse BAR + 84 de la base du système 600 et est appelé mot de cellule de relance. Ce mot a le format représenté sur la figure Ilq, Le format est similaire à celui du mot de cellule d'exception du système décrit ci-c+ us et contient le nom de système G, D d'un sémaphore respectivement dans le champ G 1149 et le champ D 1150. Le champ MBZ 1148 doit avoir la valeur 0.
Dans le cas où il y a plusieurs processeurs raccordés au système d'ordinateur, un mot est prévu dans la base du système à l'adresse BAR + 88 pour llextension multiprocesseur, les détails de ce mot sont représentés sur la figure loir.
Selon une autre caractéristique, l'invention concerne un système d'emmagasinage automatique du type décrit, dans lequel les extrêmités de réception et de sortie d'une paire de barres parallèles constituant chaque casier et servant simultanément comme rails pour la circulation des chariots, sont courbées vers l'extérieur l'une par rapport à l'autre et les extrêmités des rails du côté du casier de la cabine élévatrice sont aussi courbés vers l'extérieur l'une par rapport à l'autre, des galets de guidage dépassant à l'extérieur étant aussi utilisés sur chaque côté du chariot.
Cette combinaison est avantageuse pour obtenir le transfert d'une façon très douce du chariot à partir du casier vers la cabine élévatrice, ou inversement.
Selon une autre caractéristique, l'invention concerne un système d'emmagasinage automatique du type décrit, dans lequel chaque chariot comporte un dispositif d'entraînement incorporé avec une batterie, un relais de marche avant et un relais de marche arrière pour provoquer respectivement l'entraînement du chariot en marche avant et en marche arrière en réponse à des signaux de commande, et un relais de commande d'entraînement à grande vitesse pour l'entraînement du chariot à grande vitesse quand le chariot ne porte pas d'article.
Cette combinaison est avantageuse du fait que comme le chariot est alimenté de façon autonome par la batterie montée sur le chariot pour son déplacement dans un sens ou dans l'autre à une vitesse supérieure quand il ne porte pas d'article, il est inutile de prévoir des fils ou des rails conducteurs du type trolley dans chaque casier, comme cela était nécessaire dans les systèmes antérieurs, ce qui réduit le problème de l'usure des rails et du patin, qui existe avec les systèmes antérieurs, de sorte que non seulement l'installation du système est facilitée, mais qu'aussi l'entretien et l'inspection du système sont très simplifiés.