Brevet FR2489987A1 — publié le 19820312

La présente invention est relative à une disposition de circuit apte à relever la présence de mauvais fonctionnements d'une pluralité de générateurs d'interruptions, placés suivant une connexion du type "daisy chain" et faisant partie du module préposé à la gestion des interruptions d'un système utilisant un microprocesseur de type commercial. Dans le cadre des applications téléphoniques gérées par un-système utilisant un microprocesseur de type commercial se présente le problème de relever en temps utile les erreurs commises par les différents modules du système dans le but d'en empêcher la propagation. Considérant par exemple le cas dans lequel le système est préposé à l'élaboration des codes exprimant les critères de taxation des usagers: dans ce cas si l'élaboration de ces critères est sujette à des erreurs on enregistre l'inconvénient que l'usager auquel se rapportent les critères est taxé d'une manière erronée, ce qui fait qu'il se révèle nécessaire de prévoir la présence de moyens aptes à relever la présence d'erreurs dans le but d'en empêcher la propagation (dans l'exem- ple considéré les erreurs se propagent jusqu'aux mémoires conte- nant les données de taxation des usagers). Le but de la présente invention est la réalisation d'une disposition de circuit particulièrement simple et économique apte à relever en temps utile la présence d'erreurs faites par une pluralité de générateurs d'interruptions faisant partie du module préposé à la gestion des interruptions d'un système uti- lisant un microprocesseur de type commercial. 24.89987 Dans ce but la disposition de circuit suivant l'invention prévoit la présence de moyens aptes à émettre un signal d'alarme - toutes les fois qu'ils reçoivent d'un générateur d'interrup- tions une requête d'interruption du programme opératif qui présente un degré de priorité inférieur ou égal à celui de la requête en phase de gestion. Il faut tenir compte du fait que l'unité centrale d'éla- boration (microprocesseur) émet un premier signal, ou bien un deuxième signal, lorsque commence, ou bien lorsque se termi- ne, la gestion d'une requête d'interruption du programme opé- ratif; il faut en outre tenir compte du fait que lorsque l'unité centrale d'élaboration émet le premier signal on enre- gistre l'émission d'un code exprimant l'indicatif du générateur d'interruption qui, à l'instant considéré, est prioritaire. La disposition de circuit suivant l'invention comprend - un registre apte à mémoriser le code émis par le géné- rateur d'interruption prioritaire en réponse à la réception du premier signal; - un comparateur dont la première entrée est connectée à la sortie du registre et dont la deuxième entrée est connectée à la sortie d'une mémoire à accès casuel, apte à émettre un signal d'alarme lorsque le code présent sur la première entrée exprime une priorité plus grande ou bien égale à celle du code présent sur la deuxième entrée; - une mémoire à accès casuel, présentant un nombre de lignes égal au nombre maximum de niveaux d'interruption prévu et chaque ligne étant apte à mémoriser un desdits codes, qui reçoit sur l'entrée des données les codes disponibles à la sortie du registre et sur l'entrée des adresses la configura- tion binaire disponible à la sortie d'un compteur; - un compteur du type "en avant en arrière" qui reçoit sur l'entrée de comptage en avant ledit premier signal, et sur l'entrée de comptage en arrière ledit deuxième signal. D'autres caractéristiques de l'invention apparaîtront à la lecture de la description suivante relative à un exemple non limitatif de réalisation et accompagnée de la figure unique ci- jointe qui montre le diagramme à blocs des organes préposés à x la gestion des interruptions ainsi que le diagramme à blocs de la disposition de circuit réalisée suivant l'invention. Dans la figure on a indiqué par UGI l'unité préposée à la gestion des interruptions dans un système utilisant un microprocesseur de type&commercial; cette unité comprend une pluralité de générateurs d'interruptions qui sont indiqués dans la technique spécifique par le sigle CTC. A chaque unité CTC parviennent les requêtes d'interruption transmises par un nombre préétabli d'unités périphériques up et dans la figure on considère une unité UGI apte à gérer un nombre maximum de 128 niveaux d'interruption. Les unités CTC sont connectées à l'unité centrale d'élé- boration CPU à travers le bus de données ainsi qu'à travers une unité de somme logique OR. Lorsqu'une unité périphérique générique up envoie à l'uni- té UGI une requête d'interruption du programme opératif, l'unité CTC intéressée détermine l'excitation de la sortie de ladite unité dé somme logique OR, à la suite de quoi l'unité centrale d'élaboration CPU reçoit l'information qu'une requête d'interrup- tion du programme opératif a été transmise. Lorsque l'unité CPU est disponible pour gérer cette requête d'interruption, elle émet un signal ia, exprimant l'acquisition de la requête, qui parvient à toutes les unités CTC. Celles-ci sont interconnectées suivant une connexion du type "daisy chain" qui attribue à chaque niveau d'interruption un degré préétabli de priorité de telle sorte que, dans le cas o plusieurs unités périphériques ont transmis en même-temps des requêtes d'interruption, seule l'unité CTC qui présente le degré de priorité supérieur a accès au bus de données. En particulier, en réponse à la réception du signal ia, l'unité CTC de priorité supérieure envoie au bus de données un code de 8- bits, que l'on appellera par la suite vecteur d'interruption, exprimant le degré de priorité du niveau d'interruption qui, suivant ladite chaîne, est destiné à être géré. On va maintenant décrire la disposition de circuit suivant l'invention laquelle est apte à contrôler la congruence de chaque vecteur d'interruption émis par les unité CTC. Plus préci- 4. sément elle est apte à émettre un signal d'alarme toutes les fois qu'elle reçoit un vecteur d'interruption exprimant un degré de priorité inférieur ou égal par rapport au vecteur d'interruption dont la requête est en phase de gestion. Il faut tenir compte du fait que le niveau d'interruption de priorité le plus élevé est caractérisé par un vecteur d'interruption constitué par un code de 8 bits présentant la valeur logique 0. Suivant l'invention ces codes à 8 bits parviennent à un registre RG, la sortie duquel parvient sur l'entrée a d'un comparateur CM à l'entrée-b duquel parviennent des vecteurs d'interruption disponibles à la sortie d'une mémoire à accès casuel RAM. L'unité RAM présente une capacité de mémorisation de 128 vecteurs et reçoit sur l'entrée des données la sortie du registre RG et sur l'entrée des adresses la sortie d'un compteur CN du type "en avant en arrière". L'unité CN reçoit sur l'entrée de comptage en avant le signal ia et sur l'entrée decomp3tage en arrière le signal ri. En correspondance avec le premier front du signal ia le registre RG mémorise le vecteur d'interruption relatif à une première requête d'interruption et en correspondance avec le deuxième front du signal ia l'unité CN augmente d'une unité adressant ainsi la ligne 1 de l'unité RAM qui contient une sé- quence d'impulsions présentant la valeur logique 1. En effet au moment de l'initialisation du système dn circuit approprié écrit cette configuration dans la ligne 1. L'unité CN est apte à émettre un signal d'alarme lorsqu'el- le relève la présence d'une condition a > b; dans la condition initiale, étant donné que a d'interruption mémorisé dans le registre RG dans la deuxième li- gne de l'unité RAM. Si, pendant l'exécution de la routine de gestion de cette première interruption, est reçu un deuxième vecteur (avec le signal'ïa indiqué précédemment), avec le premier front de ce signal ia le nouveau vecteur d'interruption est mémorisé dans le registre RG et appliqué sur l'entrée a du comparateur CM qui reçoit sur l'entrée b le vecteur d'interruption précédent qui avait été mémorisé dans la deuxième ligne de l'unité RAM. L'unité CM effectue donc la comparaison entre les codes présents à ses propres entrées et si les unités CTC fonction- nent d'une manière correcte, elle met en évidence la présence de la condition' aC b, ce qui fait qu'avec le deuxième front du signal ia est augmentée l'unité CN qui mémorice ce deuxième vecteur dans la troisième ligne de l'unité RAM. De cette façon est suspendue la routine de gestion de la première requête d'interruption et la routine de gestion de cette deuxième requête d'interruption est mise en train. Dans le cas o un troisième vecteur serait reçu avant que soit termi- née la routine de gestion de cette deuxième requête d'interrup- tion, onEffectuerait la comparaison indiquée ci-dessus suivant les modalités décrites, et si la comparaison met en évidence la présence de la condition aC b le compteur CN qui autorise l'écriture du troisième vecteur dans la quatrième ligne de l'uni- té RAM est augmenté. En supposant que la routine d'exécution de la troisième interruption soit achévée, l'unité CPU émet le signal ri qui fait décroître l'unité CN qui adresse par conséquent la troisiè- me ligne de l'unité RAM dans laquelle est mémorisé ledit deuxiè- me vecteur. La comparaison avec le vecteur d'interruption successif qui sera reçu sera donc effectuée avec le deuxième vecteur d'in- terruption dont la microroutine de gestion correspondante sera reprise à partir du point o elle avait été interrompue. Le signal ri a donc comme fonction de faire décroître l'unité CN dans le but d'adresser le vecteur d'interruption dont la micro- routine est destinée à être gérée à cet instant. La disposition de circuit suivant l'invention n'émet pas seulement un signal d'alarme Ai lorsque l'unité CM met en évi- dence la condition a_% b, mais elle émet aussi les signaux d'a- larme A2, respectivement A3, lorsque le compteur CM épuise son propre cycle de comptage en avant, respectivement en arrière. En effet, à cause d'un mauvais fonctionnement, à l'unité CN peuvent par exemple parvenir un nombre de signaux ri supé- rieur au nombre des signaux ia. L'excitation des sorties de l'unité CN exprimant l'épuisement du cycle de comptage en avant, respectivement en arrière, constitue donc une autre condition d'alarme. x REVENDICATIONS 1. Disposition de circuit apte à relever la présence de mauvais fonctionnements d'une pluralité de générateurs des signaux d'interruption (CTC) placés suivant une connexion du type "daisy chain" et faisant partie du module préposé à la gestion des interruptions d'un système utilisant un microprocesseur de type commercial qui émet un premier signal, ou bien un deuxième signal, lorsque commence, ou bien lorsque s'achève, la gestion d'une requête d'interruption du programme opératif, caractérisée par le fait qu'elle comprend: - - un registre (RG) apte à mémoriser le code émis par le générateur d'interruption prioritaire en réponse à la réception du premier signal; - un comparateur (CM) dont la première entrée (a) est connectée à la sortie du registre et dont la deuxième entrée est connectée à la sortie d'une mémoire à accès casuel (RAM), apte à émettre un signal d'alarme lorsque le code présent sur la première entrée est plus grand ou bien égal au code présent sur la deuxième entrée; - une mémoire à accès casuel (RPAM), présentant un nombre de lignes égal au nombre maximum de niveaux d'interruption prévu et chaque ligne étant apte à mémoriser un desdits codes, qui reçoit sur l'entrée des données les- codes disponibles à la sortie du registre.(RG) et sur l'entré des adresses la configu- ration binaire disponible à la sortie d'un compteur (CN); - un compteur (CN) du type "en avant en arrière" qui reçoit sur l'entrée de comptage en avant ledit premier signal et sur l'entrée de comptage en arrière ledit deuxième signal. - 2489987 8- 2. Disposition de cir.cuit suivant la revendication 1 caractérisée par le fait que l'excitation des sorties (A1, A2) dudit compteur (CN) exprimant l'épuisement du cycle de comptage en avant ou bien en arrière constitue un signal d'alarme.