Brevet FR2014655A1 — publié le 19700417

La présents invention concerne dss systèmes de traitement de données et utilise une première unité de traitement centrale ayant une section de commande comprenant un circuit de détection d'erreurs, une section de traitement de données, une unité de récupération d'enregistrement connectée à la première unité de traitement centrale pour conserver un profil de l'état de cette unité de traitement mis à Jour avant qu'une erreur soit détectée dans la première unité de traitement centrale, une seconde unité de traitement centrale ayant une section de commande et une section de traitement de données et une mémoire principale commune eux deux unités de traitement centrals. La section de traitement de données de la seconde unité de traitement centrale est connecte à l'unité de récupération d'enregistrement pour recevoir les donnés en prove nuance de cette section, et la section de commande de la seconde unité de trai tsment rspond aux. circuits ds détection d'erreurs de la première unité de traitement centrale pour provoquer, lorsqu'une erreur est détectée, le traitement du profil de la première unité de traitement centrale dans la section ds traitement de donnes ds la seconde unité de traitement centrale dans une forme qui peut strie emmagasinée. et l'emmagasinage de ce profil traité dans la mémoire principale sous commande de la seconde unité de traitement centrale. Le terme *profil" est utilisé pour représenter toutes les données contenues dans uns unité de traitement centrale qui doivent être introduites dans une unité de traitement centrale vide pour lui permettre de continuer à exécuter le programme en cours à partir du stade auquel le profil est formé en supposant naturellement qu'elle a accès à la mémoire appropriée et qu'elle peut traiter le programme particulier. Normalement la seconde unité de traitement centrale aura des tâches a exécuter qui lui appartiennent en propre et ainsi aura sa propre unité de récu opération d'enregistrement afin qu'elle puisse se vider d'ellemême pour traiter le profil de la première unité de traitement centrale et puisse revenir à ces taches lorsque le profil est traité et emmagasiné. Dans un tel cas il est possible de disposer la seconde unité de traitement centrale afin qu'elle traite et emmagasine son propre profil et passe ensuite aux tâches de la première unité de traitement centrale en utilisant le profil de cette première unité de traitement centrale qu'elle a déjà traitée et emmagasinée. De plus, le système peut être symétrique dans la mesure où la première unité de traitement centrale peut être disposée pour traiter et emmagasiner le profil de la seconde unité de traitement centrale. Puisqu'un profil emmagasiné est constitué simplement de données, il peut être introduit dans le système comme une procédure de diagnostic. On notera que dans la plupart des cas le profil d'une unité de traitement centrale comprendra un état de toutes les interruptions en cours, qu'elles soient masquées ou non et ces données d'interruption sont traitées pour les emmagasiner sans affecter de façon importante l'état de l'interruption en cours de l'unité de traitement centrale. Le système peut avoir plus de deux unités de traitement centrales si c'est nécessaire. La présente invention sera décrite à titre d'exemple en se référant à l'une de ses réalisations représentés sur le dessin qui repr8sente un bloc diagramme du système sous une forme très simplifiée. Le système sélectionné pour la description est totalement symétrique et n'a que deux unités de treitement centrales 10, Il qui peuvent fonctionner en multiprogrammation. puisqu' il n'y a pas trop de difficulté à comprendre comment les unités de traitement centrales peuvent être incorporées dans le système. Les systèmes non sym8triques conformément à l'invention sont simplement des systèmes symgtriques dens lesquels les unités appropridss sont omises. Un système ds traitement ds données symétrique, comprenant deux unités de traitement centrals. réalisé conformément à la présente invention comme représenté sur les dessins, comprend: (a) une mémoire principale 12; (b) deux unités de traitement centrales 10 et 11; et (c) deux unités de récupération d'enregistrement 13 et 14. Les données peuvent être extraites d= la mémoire principale 12 par l'une ou l'autre des unités de traitement centrales 10 ou 11 dans les cas normaux. mais les unités de récupération d'enregistrement 13 et 14 n'ont pas accès à la mémoire principale 12 hormis par l'intermédiaire d'une des unités de traitement centrales. Pour la préssnte invention, les unités de traitement centrales sont considurées comme comprenant trois sections: ta) une section de commande 15, 16 comprenant des circuits de détsction d'erreur; (b) une section de traitement de données 17, 18; et (c) une section d'emmagasinage des interruptions en cours 19, 20 comprenant une rangée de bascules. Cette division de chaque unité de traitement centrale est telle que les contenus des sections de commande 15, 16 ne font pas partie du profil de l'unité de traitement centrale associée 10, 11, la section de traitement de données 17, 18 ne contient que les données pour le programme en cours pour cette unité de traitement centrale 10, 11, et les donnes dans les bascules d'interruption 19, 20 concernent les autres programmes avec lesquels cette unité de traitement centrale 10. 11 est utilisée et peut très bisn être masquée. En conséquence, chaque unité de récupération d1enregistrement 13, 14 comprend: (a) une section 21, 22 pour emmagasiner le profil de la section de traitement de donnés (b) une section 23, 24 pour emmagasiner le profil de la section d'emma vinage des interruptions en cours. On suppose que chaque unité de traitement centrale 10, 11 peut réaliser la ré-exécution d'instructions et ainsi le circuit de détection d'erreurs comporte deux parties: (a) une partie pour détecter les erreurs dans la circulation des données dans l'unité de traitement centrale, (b) une partie sensible à la détection répétée d'erreurs ou à une panne de l'alimentation de puissance, ou à d'autres défauts permanents pour indiquer que l'unité de trattement centrale est inutilisable. La partie de détection sert à empêcher la mis à Jour de l'unité de récuperation d'enregistrement associée et à déclencher la ré-exécution d'instructions lorsqu'une erreur est detecte et la partie de signalisation agit sur la section de commande ds l'autre unité de traitement centrale pour traiter et emmagasiner le profil d'une unité de traitement centrale qui semble inutilisable. Chaque unité de récupération d'enregistrement et chaque unité de traitement centrale sot montes de telle façon que la mise à jour de données mauvaises est empêchez. Le fonctionnement du système est le suivant: Lorsqu'une erreur apparaît dans une des unités de traitement centrale, par exemple l'unité de traitement centrale 10, son dernier profil exact est placé dans son unité de récupération d'enregistrement 13 et on fait une réexécution d'instruction. Lorsque l'erreur détectée ne disparaît pas, la partie de signalisation de la section de commande 15 arrête le fonctionnement de l'unité de traitement centrale 10 et avertit la section de commande 16 de l'unité de traitement centrale 11. L'unité de traitement centrale 11 termine ses opérations en cours et envoie le contenu de sa section de travail dans la mémoire principale 12 d'une manière classique comme elle le ferait pour une commutation de tâches. Elle n'envoie pas le contenu de sa section d'emmagasinage des interruptions en cours 20. Ensuite l'unité de traitement centrale 11 accède à l'unité 13 pour extraire le profil de l'unité de traitement centrale 10 pour transformer le profil total en une chaîne de données ordonnée et introduire cette chaîne de données est dans la mémoire principale 12. Une fois que la chaîne de données kmmagasinee, l'unité de traitement centrale Il peut revenir à ses propres tâches. On notera que le profil total de l'unité de traitement centrale 10 contient les interruptions en cours associées à l'unité de traitement centrale 10 au moment de la panne et le masquage de ces interruptions. Cependant cette information n'approche pas la section d'emmagasinage des interruptions en cours 20 de l'unité de traitement centrale 11 ne passant que par la section de traitement de données 18 de l'unité de traitement centrale 11. De plus, les interruptions masquées qui seront ignorées par l'unité de traitement centrale 10 ne sont pas ignorées par l'unité de traitement centrale 11, un compte strict étant fait de toutesles interruptions en cours dans l'ordre de priorité et du masquage associe. Puisque le système est symétrique, des pannes de l'unité de traitement centrale 11 peuvent être traitées de la même manière par l'unité de traitement centrale 10. De plus, il est possible de réaliser l'unité de traitement centrale 10 de sorte qu'elle envoie son propre profil et qu'elle prenne ensuite les taches de l'unité de traitement centrale defectueuse en partant du profil emmagasine de cette unité de traitement centrale défectueuse. Ainsi que cela a déjà eté dit, le système peut comprendre trois ou plusieurs unité s de traitement centrales couplées de cette façon, mais le fonctionnement d'un tel système n'a pas besoin d'être décrit ici. De même il y a peu de choses à dire pour les systèmes non symétriques. Sous sa forme la plus simple, l'unité de traitement centrale 11 peut être une unité de traite- ment centrale de faible capacité n'ayant pas d'autres fonctions que la récupé- ration du profil de l'unité de traitement centrale 10. Dans ce cas l'unité de traitement centrale n'aura pas d'unité de récupération d'enregistrement et pas de section d'emmagasinage des interruptions en cours, entant donné qu'il ne peut Jamais prendre l'étant de l'unité de traitement centrale défectueuse 10. De plus, on pense qu'un tel montage n'aura pas beaucoup d'intérêt puisque, avec très peu de dispositifs supplémentaires, la seconde unité de traitement centrale Il peut réaliser au moins certaines tâches de routines. On doit aussi notsr que puisqu'un profil total peut être réduit, à une chaine ordonnée de données, il est possible de tester une unité de traitement centrale d'un système comme on l'a décrit précédemment, à partir des données emmagasinées comme mesure de diagnostic. Bien que l'on ait décrit dans ce qui précède et représente sur le dessin, les caractéristiques essentielles de l'invention, appliques à un mode de réalisation préfré de celle-ci, il est évident que l'homme de l'art peut y apporter toutes modifications de forme ou de détail qu'il Juge utiles, sans pour autant sortir du cadre de ladite invention. REVENDICATIONS 1.- Système de traitement de données caractérisé en ce qu'il comprend une première unité de traitement centrale ayant une section de commandes comprenant un circuit de détection d'erreurs, et une section de traitement de don nets; une unité de récupération d'enregistrement connectée à la première unite de traitement centrale pour conserver un profil de cette unité mis à Jour avant qu'une erreur soit détectés dans la première unité de traitement centrale; une seconde unité de traitement centrale ayant une section de commande et une section de traitement de donnes; et une mémoire principale commune aux deux unités de traitement centrale, dans laquelle la section de traitement de données de la seconde unité de traitement centrale est connectée à l'unité de récupération d'enregistrement pour recevoir les donnés à partir de cette unite et la section de commande de la seconde unité de traitement centrale répond au circuit de détection d'erreurs de la première unité de traitement centrale pour provoquer, lorsqu'une erreur est détectée, le traitement du profil de la première unité de traitement centrale dans la section de traitement de données de la seconde unité de traitement centrale pour obtenir une forme emmagasinable et l'emmagasinage de ce profil traite dans la mémoire principale sous commande de la seconde unité de traitement centrale. 2.- Un système selon la revendication 1, dans lequel la première unité de traitement centrale peut fonctionner en multiprogrammation et comprend une section d'emmagasinage des interruptions en cours, dont le contenu associé à son masquage s'il y en a un. fait partie de son profil. 3.- Un système selon la revendication 1 ou la revendication 2 dans lequel la seconde unité de traitement centrale comprend une section d'interruption en cours, isolés du profil de la première unité de traitement centrale, un moyen entant prévu pour que la seconde unité de traitement centrale envoie le profil de sa section de traitement de données dans la mémoire principale avant le traitement du profil de la première unité de traitement centrale. 4.- Un système selon la revendication 3 dang lequel la seconde unité de traitement centrale est munie d'une unité de récupération d'enregistrement et d'un circuit de détection /erreurs, le montage étant tel que la première unité de traitement centrale peut traiter le profil de la seconde ce qui rend le système symétrique. 5.- Un système selon les revendications precedentas dans lequel la première unité de traitement centrale au moins a la possibilité de r8-executer une instruction. 6.- Un système selon les revendications précédentes, comprenant d'autres unités de traitement centrales.