FR 2490366 A1 19820319 FR 8116805 A 19810904 La présente invention est relative à un circuit apte à rele- ver les erreurs commises par les unités constituant un système d' élabo- ration de données gouverné par un microprocesseur de type commercial et apte en outre à identifier l'organe dont le mauvais fonctionnement a été la cause de l'erreur. Dans le cadre de quelques systèmes d'élaboration de données gouvernés par un microprocesseur de type commercial se présente le problème de relever en temps utile la présence d'erreurs commises par les différents modules du système d'élabo- ration dans le but d'en empêcher la propagation. C'est là le cas des systèmes d'élaboration de données gouvernés par un microprocesseur de type commercial appliqués dans des systèmes téléphoniques. Si on considère par exemple le cas o le système dont il a été question ci-dessus est 1-5 préposé à l'élaboration des codes exprimant les critères de taxation des usagers, et si l'élaboration de ces critères est atteinte d'erreurs, on a comme inconvénient le fait que l'usager auquel se rapportent les critères est taxé d'une manière erronée, à la suite de quoi il devient nécessaire de prévoir la présence de moyens aptes à relever la présence de ces erreurs, ainsi qu'à interdire le microprocesseur jusqu'à ce qu'on ait rétabli le fonctionnement correct de l'organe qui avait commis l'erreur, dans le but d'en empêcher la propagation (dans l'exemple considéré les erreurs se propagent jusqu'aux mémoires contenant les données de taxation des usagers). Dans le but de satisfaire les exigences indiquées ci- dessus, quelques solutions connues prévoient le triplement de la plus grande partie des unités du système d'élaboration (telles que, par exemple, l'unité centrale d'élaboration, les unités de mémoire, l'unité d'entrée-sortie etc.) et elles prévoient en outre la présence de moyens aptes à relever la présence de mauvais fonctionnements sur la base d'une estimation majoritaire des sorties des différentes unités. Ces moyens sont indiqués dans la technique spécifique par le terme "voter" et ils sont aptes à émettre un signal d'alarme lorsque les signaux correspondent à la-sortie d'une unité générique diffèrent des signaux fournis en sortie par l'autre couple d'unités. Ce type de solution est surtout utilisé dans les systèmes installés à bord de satellites (qui par conséquent ne sont pas réparables) mais il présente un certain nombre d'inconvénients, s'il est utilisé dans des systèmes réparables, parmi lesquels - coût particulièrement élevé-à cause du fait que les unités dont il a été question ci-dessus sont triplées et qu'on introduit le "voter"; - pour garantir le même degré de fiabilité obtenu avec les unités triplées le "voter" doit être à son tour triplé; - dans les systèmes réparables il est en outre néces- saire de prévoir la présence de moyens aptes à mettre en évidence l'unité dans laquelle s'est manifesté le mauvais fonctionnement; - il est nécessaire de tripler le générateur des signaux de synchronisation ainsi que de prévoir la présence de moyens de synchronisation des trois générateurs. Le but de la présente invention est la réalisation d'une disposition de circuit particulièrement simple et écono- mique apte à garantir au système d'élaboration un degré de fiabilité comparable à celui qui peut être obtenu au moyen de la technique connue et apte en outre à réduire sensiblement les inconvénients spécifiés ci-dessus. La présente invention est donc relative à une disposi- tion de circuit apte à relever la présence de.mauvais fonction- nementsdans un système d'élaboration de données constitué par un bus de données auquel est connecté un microprocesseur de type commercial, une unité préposée à la gestion des interrup- tions, une unité préposée au transfert direct de données et une unité de mémoire. La disposition de circuit prévoit la présence en conbi- naison des éléments caractéristiques suivants: 3.- - des premiers moyens aptes à émettre un signal d'alarme lorsqu'ils relèvent la présence d'un mauvais fonction- nement dans le microprocesseur; - des deuxièmes moyens aptes à émettre un signal d'alarme lorsqu'ils relèvent la présence d'un mauvais fonctionnement dans l'unité préposée à la gestion des interruptions; - des troisièmes moyens aptes à émettre un signal d'alarme lorsqu'ils relèvent la présence d'un mauvais fonction- nement dans l'unité préposée au transfert direct de données; - des quatrièmes moyens aptes à émettre un signal d'alarme lorsqu'ils relèvent la présence d'un mauvais fonction- nement dans l'unité de mémoire; - une unité de diagnostic laquelle est apte à mettre à zéro et à déconnecter du bus des données l'unité centrale d'élaboration en réponse à la réception d'un desdits signaux d'alarmes et qui est apte en outre à se connecter au bus des données et à exécuter des programmes de diagnostic ayant pour - but de localiser l'organe dont le mauvais fonctionnement a provoqué l'émission du signal d'alarme ainsi qu'apte à se déconnecter du bus des données et à rétablir la connexion de l'unité centrale d'élaboration au bus des données lorsqu'elle relève le fonctionnement correct de toutes les unités du système d'élaboration. Les circuits constituent la disposition de circuit suivant l'invention sont ainsi une fraction des circuits du système d'élaboration des données contrairement à la solution connue indiquée précédemment laquelle exige l'emploi d'un nombre de circuits qui devient le double de ceux qui constituent le système d'élaboration. D'autres caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante, rela- tive à un exemple non limitatif de réalisation et accompagnée de la figure 1 ci-jointe qui montre avec un trait épais les circuits du système d'élaboration de données et avec un trait mince les circuits de la disposition de circuit réalisée suivant l'invention. Dans la figure 1 on a indiqué avec un trait épais les circuits du système d'élaboration de données lequel est constitué par un bus de données B1 auquel aboutissent les unités spéci- fiées ci-dessous: 4 une unité centrale d'élaboration CPU1 laquelle est connectée au bus des données B1 au moyen de premiers organes d'envoi de signaux; - une unité Préposée à la gestion des interruptions INT; - une unité préposée à. la gestion du tranfert direct de données DMA; - une unité de mémoire MEM. La disposition de circuit suivant l'invention est illustrée avec un trait mince et elle prévoit la présence de moyens aptes à émettre un-signal d'alarme en réponse au relève- ment d'un mauvais fonctionnement dans chacune des unités spécifiées ci-dessus. D'une manière particulière on a associé à l'unité centrale d'élaboration CPU des premiers moyens PM constitués par une autre.. unité centrale d'élaboration CPU2 laquelle opère d'une manière synchrone avec l'unité CPU1, ce qui fait qu'elles reçoivent toutes les deux enentréeles impulsions de synchroni- sation CK1 engendrées par une première unité de synchronisation UT Les signaux disponibles à la sortie des unités CPU1 et CPU2 parviennent en entrée à un circuit de comparaison CFR apte à émettre un signal d'alarme A1 lorsqu'il relève le manque d'identité des signaux présents à ses propres entrées. Ainsi si une des deux unités CPU élabore une donnée d'une manière erronée les signaux qu'elle émet en sortie dif- fèrent des signaux émis par ltautreé,-unité d'élaboration et cet événement est relevé par l'unité CFR qui excite la sortie A1. A I"'unité préposée à la gestion des interruptions INT sont associés des deuxièmes moyens SM aptes à émettre un signal d'alarme A2 lorsqu'ils reçoivent, d'un des générateurs des signaux d'interruption, une requête d'interruption du programmme opératif dont la priorité devient inférieure, ou bien égale, par rapport à celle des requêtes en phase de gestion. Un xemple de réalisation des deuxièmes moyensSM est illustré dans la demande française déposée le 28/8/1981 sous le n 81/16457. A l'unité préposée au transfert direct de données DMA sont associés des troisièmes moyens TM aptes à émettre un signal d'alarme A3 lorsque3:le bit de parité des données entrant dans - cette unité DMA, diffère du bit de parité des données sortant de la même unité. Les troisièmes moyens sont en. outre aptes &.émettre un -5 signal d'alarme A4 lorsque le bit de parité de l'adresse i-ème, calculé sur la base de l'adresse i-l disponible pendant le tranfert de 'la donnée di1, diffère du. bit de parité de l'adresse i-ème fourni en sortie avec ladonnée di. Un exemple de réalisation des-troisièmes moyens TM est illus- tré dansla demande française déposée le 28/8/,.1981 sous len 81/16456. A l'unité de mémoire MEM:sont associés des quatrièmes moyens QM aptes à relever la présence de mauvais fonctionnements en effectuant des contrôles de parité soit sur les données, soit sur les aaresses et aptes en outre.à émettre un signai d'alarme S15 A5 lorsque le relèvement donne un résultat positif. Ces quatrièmes moyens OM ne sont pas décrits dans le détail parce qu'ils utilisent des structures de circuit connues du techni- cien de cette branche.. Les signaux d'alarmes A1 - A5 parviennent à une unité de somme logique OR prévue dans l'unité de diagnostic UDG laquelle comprend aussi un bus de données B2 auquel aboutissent les unités suivantes: - une unité centrale d'élaboration CPU3; - une unité de mémoire MM de dimensions limitées; une unité. d'entrée sortie I/O à laquelle aboutit. un canal de communication avec un.poste d'opérateur (non illustré). L'unité CPU3 reçoit en entrée les signaux de synchroni- sation CK2 disponibles à la sortie d'une deuxième unité de synchronisation UT2-qui est asynchrone par rapport à ladite unité UT1. Le but'des. données B2 de l'unité de diagnostic est connecté au bus des données B1 du système d'élaboration au moyen de deuxièmes organes de transfert de signaux qui sont rendus aptes par un premier circuit bistable FF1. L'unité FF1 est commutée à l'état ON, respectivement à l'état OFF, par un premier signal CI, respectivement C2, émis par le programme opératif de l'unité de diagnostic. Lesdits premiers organes de transfert de signaux qui connectent les unités CPU1 et CPU2 au bus de données B1 sont par contre rendus aptes par un deuxième circuit bistable FF2 qui est commuté à l'état ON par le signal qui correspond à la sortie de ladite unité de somme logique OR et à l'état OFF par un troisième signal C3 émis par le programme opératif de l'unité de diagnostic. Lorsqu'à l'entrée de l'unité OR parvient un signal d'alarme on enregistre la commutation de l'unité FF dont la i sortie rend inaptes lesdits premiers organes d'envoi de signaux (déconnectant les unités CPU1 et CPU2 du bus des données), met à zéro les unités CPU1 et CPU2 lesquelles devront ainsi reprendre le programme opératif depuis le début, et engendre une requête d'interruption pour l'unité CPU. L'unité CPU3, en réponse à la réception de la requête d'interruption, met en train l'exécution d'un programme de diagnostic dans la première instruction duquel est prévue- l'émission du signal C1 qui provoque la commutation de FF1 laquelle rend aptes lesdits deuxièmes organes de transfert de signaux (en connectant ainsi l'unité de diagnostic au bus des données du système d'élaboration). Les impulsions de synchronisation engendrées par l'unité UT2 sont donc envoyées sur le bus des données du système d'élabo- ration avec un certain retard par rapport à la déconnexion de l'unité UT1 permettant ainsi d'effectuer les opérations de "rafraîchissement" des unités de mémoire sans créer de conflits dus aux opérations de déconnexion-connexion de deux séquences d'impulsions de synchronisation synchrones entre elles. Une fois que le programme de diagnostic exécuté par l'unité CUP3 a localisé l'organe dont le mauvais fonctionnement a provoqué l'alarme Ai et une fois que cet organe a été remplacé sur la base des informations parvenues au poste d'opérateur, le programme exécuté par l'unité CPU3 s'achève par une instruction particulière qui prévoit l'émission dudit signal C2 apte à provoquer la commutation à l'état OFF de l'unité FF1, laquelle déconnecte l'unité de diagnostic UDG du bus des données B1 du système d'élaboration. 7. Cette instruction est suivie d'une autre instruction qui prévoit l'émission du signal C3 qui provoque la commutation à l'état OFF de l'unité FF2 laquelle connecte au bus des données B1 du système d'élaboration ledit couple d'unités centrales d'élaboration CPUl et CPU2. Même dans ce cas il, ne se déclare pas de conflits relatifs aux impulsions de synchronisation qui parviennent au bus des données-du système d'élaboration parce que les opérations de déconnexion-connexion des deux séquences d'impulsions sont effectuées de façon à faire passer une courte marge de temps. L'unité de diagnostic UDG, en plus des unités indiquées ci-dessus, prévoit la présence d'une unité ADG apte à exécuter des programmes d'autodiagnostic de l'unité UDG pendant l'inter- valle de temps pendant lequel sont absents les signaux d'alarme àl'entrée-de l'unité OR. Si l'unité ADG met en évidence la présence d'un mauvais fonctionnement elle excite sa propre sortie, engendrant une requête d'interruption qui ne peut pas être masquée pour les unités CPU1 et CPU2 lesquelles assument elles-mêmes les fonctions de diagnostics en utilisant les mémoires et l'unité d'entrée- sortie du système d'élaboration. Au moyen de la disposition de circuit suivant l'inven- tion on atteint un degré de fiabilité comparable à celui que l'on peut obtenir au moyen de la technique connue indiquée précédemment, en ajoutant aux circuits du système d'élaboration un nombre limité de circuits. Il s'en suit en effet que c'est seulement l'unité centrale d'élaboration qui est triplée, tandis que les autres circuits représentent une fraction de l'ensemble des circuits du système d'élaboration. - REVENDICATIONS - 1. Circuit apte à relever la présence de mauvais fonc- tionnements dans un système d'élaboration de données constitué par un bus de données auquel est connectée une première unité centrale d'élaboration (CPU1) au moyen de premiers organes d'envoi de signaux, une unité (INT) préposée à la gestion des interruptions, une unité (D+MA)'préposée au transfert direct de données et une unité de mémoire (MEM), caractérisée par le fait qu'elle comprend: - des premiers moyens (PM) aptes à émettre un signal d'alarme (A1) lorsqu'ils relèvent la présence d'un mauvais fonctionnement dans l'unité centrale d'élaboration (CPU1); - des deuxièmes moyens (SM) aptes à émettre un signal d'alarme (A2) lorsqu'ils relèvent la présence d'un mauvais fonctionnement dans l'unité (INT) préposée à la gestion des interruptions; - des troisièmes moyens (TM) aptes à émettre un signal d'alarme (A3 - A4) lorsqu'ils relèvent la présence d'un mauvais fonctionnement dans l'unité (DMA) préposée au transfert direct de données; - des quatrièmes moyens (QM) aptes à émettre un signal d'alarme (A5) lorsqu'ils relèvent la présence d'un mauvais fonctionnement dans l'unité de mémoire (MEM); - une unité de diagnostic (UDG) laquelle est apte à mettre à zéro et à déconnecter du bus des données l'unité centrale d'élaboration. (CPU) en réponse à la réception d'un desdits signaux d'alarme et qui est apte en outre à se connecter au bus des données et à exécuter des programmes de diagnostic ayant pour but de localiser l'organe dont la mauvais fonction- 2490Q66 9. nement a provoqué l'émission du signal d'alarme, ainsi apte à. se déconnecter du bus des données et à rétablir la connexion de l'unité centrale d'élaboration (CPU1) au bus des données lorsqu'elle relève- le fonctionnement correct de toutes les unités du système d'élaboration. 2. Disposition de circuit suivant la revendication 1, caractérisée par le fait que lesdits premiers moyens (PM) comprennent une deuxième unité centrale d'élaboration (CPU2) opérant d'une maniêre synchrone avec ladite première unité centrale d'élaboration (CPU1), et un circuit de comparaison (CFR) alimenté par les signaux qui correspondent aux sorties de ladite première et de ladite deuxième unité centrale d'élaboration (CPU1 et CPU2); apte à émettre un signal d'alarme (A1), lorsqu'il relève le manque d'identité des signaux présents à ses propres entrées. 3. Disposition de circuit suivant la revendication 1, caractérisée par le fait que ladite unité de diagnostic (UDG) comprend un bus de données, connecté au bus des données du système d'élaboration au moyen de deuxièmes organes d'envoi de signaux, auquel sont connectées les unités suivantes une troisième unité centrale d'élaboration (CPU3) laquelle est alimentée par les impulsions fournies par une deuxième unité de synchronisation (UT2) - une unité de mémoire (MM); - une unité.d'entrée- sortie (I/O) et comprenant en outre: - une unité de somme logique (OR) alimentée par les signaux d'alarme (Al - A5) indiqués ci-dessus, dont la sortie parvient sur l'entrée des requêtes d'interruptions de la troi- sième unité centrale d'élaboration (CPU3); - un premier circuit bistable (FF1), (lui est commuté à l'état ON, respectivement à l'état OEF, par un premier signal (C1), respectivement par un deuxième signal (C2), dont l'émission est prévue au début du programme de diagnostic, respectivement après que ce programme de diagnostic relève le fonctionnement correct de l'organe qui avait provoqué l'émission dudit signal d'alarme, dont le signal de sortie rend aptes, ou bien rend inaptes, lesdits deuxièmes organes d'envoi de signaux. - un deuxième:circuit bistable (FF2), commuté à l'état ON, respectivement à l'état OFF, par l'excitation de la sortie de ladite unité de.somme logique (OR), respectivement par un troisième signal (C3) émis par le programme de diagnostic en un instant qui suit l'émission du deuxième'signal (C2), dont le signal de sortie parvient sur l'entrée de mise à. zéro de ladite première et de ladite deuxième unité centrale d'élabora- tion (CPU1 et CPU2)', ainsi que sur. l'entrée d'autorisation destits premiers organes d'envoi de signaux. 4. Disposition de circuit suivant la revendication 3, caractérisée par le fait que l'unité de diagnostic (UDG) prévoit la présence d'une unité. d'autodiagnostic ('ADG) apte à émettre un signal d'alarme lorsqu'ellerelève la présence d'un mauvais fonctionnement dans l'un des organes-de l'unité de diagnostic, ainsi que par le fait que ce signal d'alarme parvient sur l'entrée des requêtes d'interruption de ladite première et de ladite deuxième unité centrale d'élaboration (CPU4 et CPU2). o.