Brevet FR2502814A1 — publié le 19821001

La présente invention concerne un procédé et un dispositif de contrôle des entrées d'un processeur de sécurité comprenant des circuits de traitement qui effectuent des opérations arithmétiques et logiques sur des opérandes donnés, des dispositifs d'entrée à sécurité orientée et pannes sécuritaires, des dispositifs d'adressage des dispositifs d'entrée, et des moyens de détection des erreurs d'adressage des dispositifs d'entrée, utilisant des dispositifs de détection d'erreur d'adressage déclenchés par les lignes de commande des dispositifs d'entrée. Plus précisément, l'invention consiste en un procédé de test sécuritaire des dérives hautes des lignes de commande de lecture des dispositifs d'entrée et des dérives basses des seuils de déclenchement des dispositifs d'entrée. De tels processeurs de sécurité sont par exemple utilisés dans les systèmes de transport, et en particulier dans l'aviation. Pour mieux comprendre l'invention, il convient au préalable de préciser le sens donné à certains termes employés dans la suite de la description. - (Etat de) panne : modification définitive d'un composant qui ne lui permet plus d'assurer sa fonction nominale. On considérera ici essentiellement des pannes "simples" n'affectant qu'un seul composant du processeur à la fois. - "Sécuritaire11 ou "de sécurité" : se dit d'un dispositif réalisé de façon que les signaux émis en cas de panne soient sans danger pour les processus commandés. Par extension, l'état d'un signal est sécuritaire s'il est sans danger pour les processus commandés. - "Sécurité orientée" : un dispositif de traitement d'information binaire est dit "à sécurité orientée si l'un des deux états binaires est toujours sécuritaire. On cherchera alors à réaliser ce dispositif de façon qu'une panne conduise nécessairement à cet état binaire sécuritaire. - Panne franche : panne d'un composant qui produit un signal erroné mais interprétable de façon unique en binaire. - Panne douteuse : panne d'un composant qui produit un signal affaibli qui peut être interprété comme un "1" ou un "O" suivant le seuil du composant qui le reçoit. - Déclenchement intempestif : tout changement d'état binaire d'un composant en l'absence d'un changement d'état binaire des lignes de commande du composant. La réalisation d'un processeur de sécurité demande la détection de tout signal erroné non sécuritaire sur les lignes de lecture des dispositifs d'entrée. Ces erreurs peuvent provenir d'erreurs d'adressage des dispositifs d'entrée, ou du déclenchement intempestif de dispositifs d'entrée non sélection nés par l'adressage, ou encore d'erreurs de lecture des lignes d'entrée par les dispositifs d'entrée. Suivant la technique actuelle, il est possible de détecter les pannes conduisant à ces erreurs en imposant des valeurs connues aux entrées et en vérifiant que la lecture reproduit bien ces valeurs pour toutes les adresses. Cette méthode permet de tester l'adressage, le déclenchement et la lecture, mais son inconvénient est de demander le contrôle des lignes d'entrée par le processeur lui-même. Quand ces lignes ont des niveaux logiques différents de ceux du processeur, ce contrôle est difficile à réaliser de façon sécuritaire. Par exemple, les entrées ont une logique 0/2/ V et le processeur une logique de 0/5 V. La technique actuelle permet de remplacer partiellement ces tests. Il est possible de vérifier l'adressage par un test interne, codage k/n des fils de commande par exemple. De plus, l'utilisation de signaux sécuritairement orientés et de dispositifs d'entrée à pannes sécuritaires permet d'assurer que toute erreur de lecture se traduira par le même état binaire sécuritaire sur la ligne de lecture. Cependant, le test des conditions de déclenchement des dispositifs d'entrée non sélectionnés n'était pas réalisé de façon sécuritaire. La présente invention a donc pour objet un procédé permettant de tester de façon sécuritaire les conditions de déclenchement des dispositifs d'entrée, tout en tirant pleinement profit des méthodes de sécurité orientée et de test d'adressage. Selon l'invention, on utilise des lignes de commande à trois états un état bas "O" qui correspond à O V, un état haut "1" qui correspond par exemple à 5 V et un état intermédiaire de test, par exemple "1/2", soit 2,5 V. Chaque ligne de commande sélectionnée par le démultiplexeur d'adressage des entrées contrôle les dispositifs d'entrée associés à l'adresse, ainsi que des dispositifs de codage permettant de vérifier si cette ligne est ou non sélectionnée. Ces dispositifs de codage et d'entrée ont des seuils de déclenchement étagés de façon que l'état "O" d'une ligne de commande ne les déclenche pas, l'état "1/2" déclenche seulement les dispositifs de codage, et l'état "1" déclenche les dispositifs de codage et les dispositifs d'entrée. La propriété avantageuse de l'invention réside dans la possibilité de détecter de façon sécuritaire toute panne simple conduisant au déclenchement intempestif d'un dispositif d'entrée. La détection de la dérive basse d'un seuil de déclenchement de dispositif d'entrée a lieu durant un test de fonctionnement de l'adressage et la détection de la dérive haute d'une ligne de commande a lieu pendant la lecture. En effet, le procédé permet de tester l'adressage par l'état de test "1/2" des lignes de commande, sans effectuer de lecture d'entrée, sauf en cas de dérive basse,en dessous de la tension de test, du seuil de déclenchement d'un dispositif d'entrée. Dans un processeur à sécurité orientée - si le signal d'entrée est à l'état sécuritaire, le déclenchement d'un dispositif d'entrée par la tension de test laissera la ligne de lecture dans l'état sécuritaire de non-déclenchement, - si le signal d'entrée est à l'état non sécuritaire, la ligne de lecture sera dans l'état non sécuritaire, qui est connu et détectable. Réciproquement, le fait que le seuil de déclenchement des dispositifs de codage soit inférieur au seuil des dispositifs d'entrée assure que la dérive vers le haut d'une ligne de commande sera détectée par le code (k/n) avant d'avoir provoqué le déclenchement intempestif d'une entrée. Ainsi les deux causes de déclenchement intempestif d'un dispositif d'entrée font l'objet d'un test. Une forme d'exécution de l'invention est décrite ci-après à titre d'exemple, en référence aux dessins annexés dans lesquels : - la figure 1 représente de façon schématique l'état actuel de la technique ; - la figure 2 représente un exemple de réalisation pratique d'un dispositif d'entrée - la figure 3 représente un exemple de réalisation pratique d'un dispositif de codage ; et, - la figure 4 représente de façon schématique le procédé et le dispositif conformes à l'invention. En se référant tout d'abord à la figure 1, on peut voir une réalisation selon la technique actuelle, avec sécurité orientée et codage (k/n) des adresses. La réalisation représentée correspond à cinq mots d'entrée de 4 bits, ce qui nécessite 20 dispositifs d'entrée tels que INP, connectés respectivement à 4 lignes de lecture L1 à L4 et à 5 lignes de commande Cl à C5. Chaque ligne de commande est en outre chargée par une résistance R'. La lecture s'effectue sur les lignes L1 à L4 qui sont à l'état haut (5 V) pour une entrée basse sécuritaire (O V), et qui sont forcées à l'état bas (O V) par le dispositif INP pour une entrée haute (24 V). Un dispositif INL, commandé par les lignes Dl et D10 , précharge les lignes de lecture qui sont remises en forme par un buffer IND et lues en D100. Les dispositifs d'entrée INP sont à sécurité orientée et panne sécu ritaire. Autrement dit, seule une entrée haute permet de forcer à l'état bas une ligne de lecture, et toute panne physiquement possible sur les composants d'un INP ne peut se traduire que par l'impossibilité de forcer la ligne de lecture à ltétat bas, ce qui est sécuritaire. A titre d'exemple, on a représenté sur la figure 2 un mode de réalisation possible d'un tel dispositif d'entrée INP à panne sécuritaire. il s'agit en l'occurrence d'une entrée inversée forçant la ligne de lecture à l'état bas par la décharge d'une capacité C2 qui a été chargée par l'état haut (24 V) de l'entrée. Ainsi, toute panne ne peut que dégrader la charge et la décharge de la capacité C2 et empêcher par conséquent l'établissement de l'état bas, non sécuritaire, de la ligne de lecture. La sélection d'un mot est effectuée par un démultiplexeur d'adresse IFD opérant sur A102 et transmise par les lignes de commande Cl à C5. Des dispositifs de codage INF permettent de réaliser un code 2/4 sur ces lignes de commande. I1 y a dans l'exemple représenté 5 mots d'entrée de 4 bits, mais le codage 2/4 permet d'adresser jusqu'd 70 mots de 4 bits avec un processeur de 12 bits. Un tel dispositif de codage INF peut être réalisé de façon très simple, par exemple comme représenté sur la figure 3. Les dispositifs de codage INF sont associés a 4 lignes de lecture T1 à T4. Deux de ces lignes sont forcées à l'état bas quand une des lignes de commande Cl à C5 est à l'état haut. Les lignes T1 à T4 de lecture des dispositifs de codage INF sont préchargées par un dispositif IFL, analogue au dispositif INL, commande par les lignes Dl et Dll. Les lig#nes T1 à T4 sont en outre remises en forme par un buffer INE et lues en D101. Le code 2/4 sur D101 permet de détecter l'absence d'adressage et l'adressage multiple, et de vérifier qu'une ligne de commande haute unique est bien celle désirée. Cependant, il est impossible, dans cette réalisation, de détecter l'abaissement du seuil de déclenchement d'un dispositif d'entree INP ou la dérive haute d'une sortie d'adressage de IFD. Or, si un dispositif d'entrée INP se déclenche quand il n'est pas adressé, il pourra injecter un signal non sécuritaire indétectable sur la ligne de lecture correspondante. La figure 4 représente le principe de l'invention appliqué à la réalisation précédente. Sur cette figure, on a pour des raisons de simplification, omis de représenter les éléments se trouvant à l'intérieur du bloc A et qui sont identiques à ceux du bloc A correspondant de la figure 1. Conformément à l'invention, on obtient un troisième état sur les lignes de commande C1 à C5 au moyen d'un dispositif de test IFT alimentant par des lignes de test LT1 a LT5 des résistances R qui forment avec les résistances R' un diviseur de tension permettant d'affaiblir la tension haute d'adressage par commande de la ligne de contrôle LTO. Ce dispositif IFT peut par exemple être constitué par un hexuple buffer à collecteur ouvert type SN74 LS 06. Des buffers IDD, disposés entre le démultiplexeur d'adressage IFD et les lignes de commande C1 à C sont en outre prévus pour effectuer une remise en forme indépendante de chacune de ces lignes de commande. Quand le dispositif IFT met à l'état bas (O V) les 5 lignes LT1 à LT5, les tensions sur les 5 lignes de commande C1 à C5 sont affaiblies dans le rapport R/(R + R'). Dans l'application décrite ici, R = R' de sorte que le rapport R/(R + R') est égal à 1/2. Le troisième état, dit état intermédiaire ou de test, correspond donc ici a une tension des lignes de commande de 2,5 V. Quand le dispositif IFD met à l'état haut (5 V) les 5 lignes LT1 à LT5, les tensions sur les lignes de commande sont les tensions nominales 15 V. Les trois états de chaque ligne de commande C sont donc les suivants (C) = "O" si (IDD) = O et (LTO) = O ou 1. (C) = "1/2" si (IDD) = 1 et (LTO) = O. (C) = "1" si (IDD) = 1 et (LTO) = 1. Le seuil de déclenchement des dispositifs de codage INF est choisi inférieur au seuil des INP diminué dans le rapport R/(R + R'), soit 1/2 dans l'exemple décrit ici. A l'état de test (LTO) = O, seuls les dispositifs de codage INF sont déclenchés quand une ligne de commande est sélectionnée. v l'état nominal (LTO) = 1, la sélection d'une ligne de commande déclenche les dispositifs de codage et d'entrée associés. Le bon fonctionnement du déclenchement des entrées correspond à l'ordre croissant : état "O", seuil des INF, état "1/2", seuil des INP, état "1". Un état de processeur susceptible d'entraîner un déclenchement intemr pestif se traduit par une violation de cet ordre qui peut être détectée à l'état de test (LTO) = O. De plus, comme les buffers IDD permettent une remise en forme indépendante de chaque ligne de commande, une panne simple douteuse affecte au plus une de ces lignes de commande. Afin de détecter rapidement les pannes simples et d'éviter ainsi des pannes multiples indétectables, le processeur doit effectuer périodiquement, grâce à l'utilisation des lignes D1, D10 et D11, les traitements suivants sur les lignes de commande, de lecture et de test des moyens d'entrée réalisés selon 1 'invention - Dynamisation de INL avec vérification de la sortie (D100) de IND. On vérifie ainsi que suivant l'état du fil de contrôle (Dl), les quatre lignes L1 à L4 sont simultanément hautes, ou sélectivement hautes en transmettant le mot (D10) qui dynamise IND. Il y a donc 32 états des entrées de INL. - Dynamisation de IFL par (Dl) et (D11) avec vérification de la sortie de INE (D101), suivant le même principe que ci-dessus. - Dynamisation de IFD, IFT étant dans l'état "test", avec vérification et décodage du code 2/4 en sortie de INE pour le comparer à l'adresse apportée par A102. On effectue la détection des signaux non sécuritaires en sortie de IND engendrés par des déclenchements intempestifs d'entrées. Cette dynamisation est effectuée avant chaque lecture et après modification des entrées. La sécurité vis-à-vis d'une panne simple est alors obtenue - Panne de INL ou IND : détectable par la comparaison de (D10) et (D1OO) pour (Dl) = 1 et (C(i)) = O. - Panne de IFL ou INE : détectable par la comparaison de (dol) et (D1Oî) pour (Dl) e 1 et (C(i)) = O. - Panne franche de IFD : détectable par le code 2/4 sur (D101), qui permet de vérifier qu'une seule ligne est adressée et que cette ligne est bien la ligne désirée. - Panne douteuse de IFD : le signal est remis en forme par les buffers IDD, ce qui équivaut à une panne franche de IFD. - Panne franche de IFT collage à l'état de test : les dispositifs d'entrée INP ne se déclenchent plus et les lignes L1 à L4 restent à l'état de veille, qui est sécuritaire en sécurité orientée, collage à l'état nominal : détecté pendant un cycle de test si une entrée est à l'état non sécuritaire. - Panne douteuse de IFT, conduisant à l'état de test "O, 1/2" sur certaines lignes de commande et à l'état nominal "0,1" sur d'autres. Cet état de panne est sécuritaire, car il peut empêcher une lecture pendant l'adressage, ce qui est sécuritaire, ou provoquer une lecture pendant le test, ce qui est détecté si les entrées ne sont pas toutes à l'état sécuritaire. - Panne franche d'un buffer IDD : cette panne a les mêmes conséquences qu'une panne franche ou douteuse de IFD, et elle est détectée par le code 2/4. - Panne douteuse d'un buffer IDD : cet état de panne est sécuritaire, car il provoque, soit le non respect du code 2/4, soit la non lecture d'une ou ou plusieurs entrées, ce qui est sécuritaire. - Panne d'un dispositif de codage INF : la panne simple d'un INF conduit nécessairement à la violation du code 2/4. - Panne d'un dispositif d'entrée INP : la baisse du seuil de déclenchement est détectée à l'état "test" de la ligne de commande selon l'invention et toute autre panne est sécuritaire selon la sécurité orientée. Le procédé conforme à l'invention permet donc bien en définitive de réaliser un test sécuritaire des conditions de déclenchement des dispositifs d'entrée. Bien que l'on ait décrit dans ce qui précède, et représenté sur les dessins, les caractéristiques essentielles de l'invention appliquées à un mode de réalisation préféré de celle-ci, il est évident que l'homme de l'art peut y apporter toute mofification de forme ou de détail qu'il juge utile sans pour autant sortie du cadre de ladite invention. REVENDICATIONS 1. Procédé de contrôle des entrées d'un processeur de sécurité comprenant des circuits de traitement qui effectuent des opérations arithmétiques et logiques sur des opérandes donnés, des dispositifs d'entrée (INP) à sécurité orientée et pannes sécuritaires, des dispositifs d'adressage (IFD) des dispositifs d'entrée, et des moyens de détection des erreurs d'adressage des dispositifs d'entrée, utilisant des dispositifs de détection d'erreur d'adressage (INF) déclenchés par les lignes de commande (C1 ... C5) des dispositifs d'entrée, caractérisé en ce que les lignes (C1 ...C5) de commande des dispositifs d'entrée (INP) ont trois états logiques, à savoir, un état haut, un état bas et un état intermédiaire, le seuil de déclenchement des dispositifs de détection d'erreur d'adressage (INF) étant situé entre l'état bas et l'état intermédiaire, tandis que le seuil de déclenchement des dispositifs d'entrée (flip) est situé entre l'état intermédiaire et l'état haut, et en ce que toute panne des dispositifs d'adressage (IFI)) ou des dispositifs d'entrée (INP) qui modifie cet ordre est soit sécuritaire, soit détectable sur les lignes de lecture (L1...L4) des entrées à sécurité orientée ou sur les sorties des dispositifs de détection d'erreur d'adressage (INF), 2.Dispositif pour la mise en oeuvre du procédé selon la revendication 1, caractérisé en ce qu'il comprend un dispositif de test (IFT) alimentant par des lignes de test (LT1... LT5) des résistances (R) agissant en diviseur de tension sur les lignes de commande (C1...C5) des dispositifs d'entrée (INP), la ligne de contrôle (LTO) de ce dispositif de test (IFT) permettant de choisir entre un état nominal à deux niveaux logiques de la ligne de commande, et un état de test où le signal en sortie du dispositif d'adressage (IFD) est divisé pour former un niveau intermédiaire sur une ligne de commande adressée, et en ce que des dispositif de remise en forme (IDD) remettent en forme independanr ment chaque ligne de commande (C1...C5) sortant du dispositif d'adressage (IFD). 3. Dispositif selon la revendication 2, caractérisé en ce que les dispositifs de détection d'erreur d'adressage sont constitués par des dispositifs (INF) de codage k/n, chaque ligne de commande (C1...C5) des dispositifs d'entrée (INP) contrôlant k dispositifs de codage (INF), et en ce que la dérive haute d'une sortie du dispositif d'adressage (IFD) sera détectée comme une erreur d'adressage par vérification du code k/n sur les lignes de lecture (T1...T4) des dispositifs de codage k/n.