ES2569518T3 - Aparato de procesamiento o de control intrínsecamente seguro - Google Patents

Aparato de procesamiento o de control intrínsecamente seguro Download PDF

Info

Publication number
ES2569518T3
ES2569518T3 ES03732589.1T ES03732589T ES2569518T3 ES 2569518 T3 ES2569518 T3 ES 2569518T3 ES 03732589 T ES03732589 T ES 03732589T ES 2569518 T3 ES2569518 T3 ES 2569518T3
Authority
ES
Spain
Prior art keywords
unit
processing
processing unit
vital
check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03732589.1T
Other languages
English (en)
Inventor
Vittorio Manoni
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alstom Ferroviaria SpA
Original Assignee
Alstom Ferroviaria SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alstom Ferroviaria SpA filed Critical Alstom Ferroviaria SpA
Application granted granted Critical
Publication of ES2569518T3 publication Critical patent/ES2569518T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16—Error detection or correction of the data by redundancy in hardware
    • G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • B—PERFORMING OPERATIONS; TRANSPORTING
    • B61—RAILWAYS
    • B61L—GUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L17/00—Switching systems for classification yards
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0748—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a remote unit communicating with a single-box computer node experiencing an error/fault
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796—Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16—Error detection or correction of the data by redundancy in hardware
    • G06F11/1629—Error detection by comparing the output of redundant processing systems
    • G06F11/1637—Error detection by comparing the output of redundant processing systems using additional compare functionality in one or some but not all of the redundant processing components
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16—Error detection or correction of the data by redundancy in hardware
    • G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2017—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where memory access, memory control or I/O control functionality is redundant
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16—Error detection or correction of the data by redundancy in hardware
    • G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/835—Timestamp

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Programmable Controllers (AREA)
  • Safety Devices In Control Systems (AREA)

Abstract

Un aparato de procesamiento o de control intrínsecamente seguro que tiene una unidad de procesamiento con - un primer procesador y una memoria que contiene un programa predeterminado de procesamiento de datos y/o de control; - por lo menos un puerto de entrada para datos de entrada recibidos desde por lo menos una unidad remota; - por lo menos un puerto de salida para datos de salida a transmitir a por lo menos una unidad remota bajo el control de dicha primera unidad de procesamiento; caracterizado por que - la primera unidad de procesamiento comprende además medios para generar códigos únicos para la comprobación funcional de las etapas de procesamiento o recepción o transmisión que se llevan a cabo (denominadas palabras de comprobación) y un puerto para la transmisión de las palabras de comprobación generadas en cada etapa; - está dispuesta además una unidad de comprobación y protección funcional, que consiste en una segunda unidad de procesamiento segura, con una memoria que contiene un programa para comprobar las etapas funcionales de la primera unidad de procesamiento y un programa para comprobar la corrección de los códigos de control funcionales (denominados palabras de comprobación) y la secuencia temporal de los mismos; - unidad de comprobación y protección funcional que comunica, mediante un puerto de transmisión recepción, con la primera unidad de procesamiento, y genera señales de activación para ésta cuando las palabras de comprobación son correctas; - mientras que dicha unidad de comprobación y protección funcional genera señales para desactivar la actividad de la primera unidad de procesamiento y/o para forzar a la primera unidad de procesamiento a la transmisión de datos de salida predeterminados para un control seguro de la unidad remota, o la mencionada unidad de comprobación y protección funcional genera por sí misma datos de salida predeterminados para un control seguro de la unidad remota o señales para activar/desactivar funciones vitales de la unidad remota o de la primera unidad de procesamiento que son transmitidas a la unidad remota y/o a la primera unidad de procesamiento; unidad de comprobación y protección que está dotada de dos procesadores independientes, siendo uno de los dos procesadores para la ejecución de dicho programa para comprobar las etapas funcionales de la primera unidad de procesamiento y siendo el otro de dichos dos procesadores para ejecutar el mencionado programa para comprobar la corrección de los códigos de control funcionales (denominados palabras de comprobación) y la secuencia temporal de los mismos.

Description

5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Aparato de procesamiento o de control intrmsecamente seguro
Esta invencion se refiere a un aparato de procesamiento o de control intrmsecamente seguro segun el preambulo de la reivindicacion 1.
Actualmente, los sistemas ferroviarios regulares estan controlados por aparatos de control basados en ordenador.
Esta disposicion proporciona considerables ventajas relacionadas con la logica del sistema. La logica del sistema es reproducida por un conjunto de algoritmos, y en particular por un conjunto de ecuaciones booleanas. Los estados de los diversos elementos de maniobras tales como senales, conmutadores, circuitos de via, etc. se controlan en forma de variables booleanas, a partir de las cuales el ordenador determina el estado que dichos elementos deberan adoptar en vista de la llegada de un tren o de una nueva situacion. Los nuevos estados se disponen asimismo como variables booleanas a transmitir como datos digitales a los accionadores locales de los diferentes elementos de maniobras, accionadores que transforman las variables recibidas en correspondientes senales de control a transmitir a los elementos accionados por los mismos.
En este caso, esta tarea de calculo requiere cierta potencia, pero no requiere de hecho una construccion de hardware dedicada de la unidad de procesamiento. Por lo tanto, se obtendnan ventajas de la utilizacion de unidades de procesamiento consistentes en hardware comercial, no espedfico de la aplicacion.
Sin embargo, la utilizacion de hardware comercial no se recomienda actualmente para unidades de control central de sistemas ferroviarios, que requieren niveles de seguridad intrmseca en la determinacion de controles vitales.
Se encuentra un problema similar en los dispositivos de control de unidades operativas, tales como los subsistemas graficos digitales, que sustituyen los bien conocidos paneles, o en subsistemas de entrada de datos, tales como teclados, o en el control de otras unidades operativas que requieren la utilizacion de unidades de procesamiento dedicadas.
Se conoce por el documento US 4.553.200 un aparato seguro de procesamiento o de control acorde con el preambulo de la reivindicacion 1. De acuerdo con este documento, las funciones de un procesador principal se controlan vitalmente mediante un controlador vital. El procesador principal genera palabras de control, denominadas palabras de comprobacion, durante la ejecucion de un programa. Las palabras de comprobacion son examinadas por el controlador vital para determinar la correccion de la secuencia de palabras de comprobacion generada por el procesador principal. El controlador vital comprende un procesador convencional que ejecuta un programa para examinar la secuencia de palabras de comprobacion, y activa o desactiva la salida del procesador principal en funcion de si la secuencia de palabras de comprobacion es o no correcta. El procesador principal y el procesador del controlador vital son procesadores convencionales. El controlador vital no esta disenado para ejecutar tareas con el fin de estimar los riesgos de una obsolescencia de los datos en la memoria cache del procesador principal.
En todos los casos anteriores, existen dos niveles de problemas. En primer lugar, es necesario forzar de manera segura la salida de la unidad de control a un estado de seguridad siempre que se produzcan fallos en alguna unidad involucrada en la generacion de salida de datos de control. Un segundo aspecto consiste en que los procesadores ultrarrapidos disponibles actualmente tienen una memoria cache que puede almacenar los datos de entrada de ciclos de procesamiento ocurridos antes del ciclo en curso por lo que, como resultado de fallos aleatorios o sistematicos, las unidades de procesamiento del microprocesador pueden generar datos de control de salida a partir de datos de entrada relativos a ciclos pasados, obsoletos, lo que tiene como resultado consecuencias graves.
La invencion esta destinada a dar a conocer un aparato de control intrmsecamente seguro que pueda utilizar hardware no seguro, de bajo coste y alta potencia, para ejecutar calculos relacionados con la logica del sistema, es decir para determinar los datos de control del sistema a partir de datos de entrada, asegurando al mismo tiempo la ejecucion intrmsecamente segura de funciones vitales.
La invencion consigue los objetivos anteriores disponiendo un aparato acorde con el preambulo de la reivindicacion 1, que comprende ademas la combinacion de caractensticas de la parte caracterizante de la reivindicacion 1.
En este caso, la primera unidad de procesamiento se compone de un hardware comercial no intrmsecamente seguro, mientras que la unidad de comprobacion y proteccion esta fabricada de un hardware dedicado propietario y proporciona funciones de comprobacion en la primera unidad de procesamiento, que permiten comprobar la correccion de todas las operaciones disenadas para actuar sobre las funciones vitales del sistema, siempre que se detecten fallos de funcionamiento.
Se pueden disponer varios modos de comprobacion y ejecucion de funciones, para conseguir el nivel de seguridad deseado. Estos modos dependen de las funciones previstas de la unidad de procesamiento y de las unidades operativas controladas por esta.
Sin embargo, para proporcionar mayor flexibilidad y reducir costes de fabricacion, se han proporcionado unidades de comprobacion y proteccion con un subsistema de comprobacion, un subsistema de proteccion y una unidad para la
5
10
15
20
25
30
35
40
45
50
55
interconexion con la unidad o unidades operativas, lo que vana en funcion del hardware de las unidades operativas. Los subsistemas de comprobacion y proteccion son siempre sustancialmente identicos en lo que se refiere a su construccion. Sin embargo, los programas de comprobacion de las unidades de procesamiento pueden ser diferentes.
De acuerdo con una realizacion preferida, la unidad de comprobacion y proteccion funcional tiene dos unidades independientes con dos procesadores independientes y se compone de una subunidad de comprobacion, que lleva a cabo funciones de comprobacion funcional sobre la primera unidad de procesamiento, ejecutando un programa de comprobacion, y de una subunidad de proteccion que lleva a cabo solamente funciones de verificacion sobre palabras de comprobacion y sobre la secuencia de las mismas, y que controla en las unidades la activacion/desactivacion de las funciones vitales de la unidad remota.
Para asegurar un funcionamiento intrmsecamente seguro, la subunidad de comprobacion esta programada asimismo de tal modo que genera un flujo de palabras de comprobacion que describe su estado funcional y que estan relacionadas unicamente con las etapas de comprobacion ejecutadas, palabras de comprobacion que son transmitidas a la subunidad de proteccion para una comprobacion de correccion y de secuencia.
Sin embargo, para evitar la posibilidad de utilizar datos de entrada de ciclos de procesamiento anteriores, la subunidad de comprobacion esta programada de tal modo que genera una unica marca de tiempo para cada ciclo de ejecucion del programa de procesamiento de la primera unidad de procesamiento. Esta marca de tiempo se cambia/incrementa en cada inicio del ciclo de procesamiento de la primera unidad de procesamiento y es transmitida por la subunidad de comprobacion a la primera unidad de procesamiento en el inicio de cada ciclo de procesamiento de esta primera unidad de procesamiento.
La primera unidad de procesamiento tiene una memoria para los datos de entrada a procesar, habitualmente la memoria cache del procesador, cuyos datos se marcan con la marca de tiempo del ciclo de procesamiento actual, mientras que todos los datos de entrada marcados con las marcas de tiempo de ciclos de procesamiento anteriores se eliminan de la memoria. Por lo tanto, la memoria se actualiza o restablece en cada ciclo de procesamiento, y solamente se mantienen los datos marcados con la marca de tiempo del ciclo actual, mientras que los datos de ciclos anteriores son eliminados.
Con el fin de que los datos de entrada se procesen por lo menos una vez, una mejora de la invencion dispone que todos los datos introducidos en la primera unidad de procesamiento se marquen con las marcas de tiempo de los ciclos tanto actual como siguiente, y que se procesen tanto en el ciclo actual como en el siguiente.
La condicion de seguridad se puede obtener, por ejemplo, disponiendo que la unidad de comprobacion y proteccion actue sobre una interfaz para transmitir/amplificar la salida de datos de control de la unidad de procesamiento, en cuanto se detecta el fallo de funcionamiento de la unidad de procesamiento, impidiendo de ese modo la transmision de datos a la unidad operativa.
Este puede ser el caso de un subsistema de procesamiento de graficos para el control de monitores de video. Mientras la unidad de procesamiento lleva a cabo la tarea de transformar los datos de entrada en sfmbolos graficos relacionados con datos de entrada y de generar senales de control de monitor de video, por medio de adaptadores graficos asociados al mismo, la unidad de comprobacion y proteccion comprueba las etapas de proceso ejecutadas por la unidad de procesamiento, en base al flujo de palabras de comprobacion y, si siempre que se detecte una inconsistencia, impide cualquier transmision/amplificacion de la salida de datos de visualizacion de la unidad de procesamiento a los monitores de video. En este caso, los adaptadores graficos no estan conectados directamente a entradas de monitor de video, sino a traves de una interfaz de transmision/amplificacion de la unidad de comprobacion y proteccion, que esta controlada por la propia unidad de comprobacion y proteccion.
Se puede disponer una disposicion similar para la comprobacion de seguridad intrmseca de datos o controles introducidos desde un teclado. En este caso, la comprobacion funcional se lleva a cabo directamente desde el teclado y el control se transmite solamente a la unidad de procesamiento si la comprobacion de correccion desde el teclado ha tenido resultados positivos. Si se ha obtenido un resultado negativo se desactiva el teclado, o la conexion entre el teclado y la unidad de procesamiento. En este ejemplo, la unidad de procesamiento tiene la funcion de recibir el control de entrada del teclado y de generar una imagen en el monitor de video.
Para esta funcion de eco, en la realizacion que se describe y se muestra en la presente memoria, el control de los monitores de video y la utilizacion de los teclados estan implementados para una unica subunidad de procesamiento, con una unica unidad de comprobacion y proteccion.
Otro ejemplo de aplicacion del aparato de control de seguridad intrmseca de la invencion consiste en un ordenador logico central, es decir un ordenador cuya funcion es controlar todo el sistema, mientras que las funciones secundarias, tales como funciones graficas y de entrada de teclado estan asignadas a subunidades de procesamiento tal como la mencionada anteriormente.
Cuando se utilizan estos ordenadores, y por razones de seguridad, el proceso se lleva a cabo en dos canales independientes, con un control sincronizado. Esto tiene la finalidad de asegurar que el conjunto requerido de datos
5
10
15
20
25
30
35
40
45
50
de control esta siempre listo a la salida, y que esta inmediatamente operativo y efectivo un canal de procesamiento en cuanto se produce un fallo en el otro canal. Por lo tanto, tanto las entradas como el procesamiento se manejan en paralelo, mientras que la transmision de datos de salida se permite solamente desde una de las dos unidades de procesamiento.
Una vez mas, el procesamiento se lleva a cabo por una unidad de microprocesador basada en hardware comercial, mientras que la unidad de comprobacion y proteccion no solo comprueba que cada unidad de procesamiento funciona correctamente, sino que determina asimismo que canal esta activado actualmente para la transmision de datos de salida, mientras mantiene el otro canal de procesamiento en estado listo y operativo. La redundancia de los canales de calculo es controlada de manera intrmsecamente segura por la unidad de comprobacion y proteccion.
Es posible y recomendable disponer unidades de comprobacion y proteccion independientes para cada una de las dos unidades de procesamiento paralelas, unidades de comprobacion y proteccion que comunican entre sf para controlar la sincronizacion de las funciones de calculo de ambos canales de procesamiento y controlar la redundancia de los datos de salida, tal como se ha mencionado anteriormente, incluso en la salida.
Otras mejoras de la invencion constituiran el tema de las reivindicaciones dependientes.
Las caractensticas de la invencion y las ventajas derivadas de la misma resultaran mas evidentes a partir de la siguiente descripcion de unas pocas realizaciones no limitativas, que se muestran en los dibujos adjuntos, en los cuales:
La figura 1 muestra un diagrama de un tfpico sistema de estacion, controlado por un sistema informatico.
La figura 2 muestra un subsistema de procesamiento de graficos y entrada de teclado para la denominada interfaz virtual hombre maquina (VMMI, Virtual Man-Machine Interface) que da a conocer esta invencion, y que comprende una unidad de procesamiento y una unidad de comprobacion y proteccion.
La figura 3 muestra un diagrama de bloques mas detallado de la unidad de comprobacion y proteccion del subsistema VMMI que se muestra en la figura 2.
La figura 4 y la figura 5 muestran diagramas de bloques mas detallados de los subsistemas de comprobacion y de proteccion que forman la unidad de proteccion y de comprobacion que se muestra en la figura 3.
La figura 6 muestra un diagrama de bloques de la seccion de aplicacion, es decir la interfaz con las unidades remotas de la unidad de comprobacion y proteccion, que se muestra en las figuras anteriores.
La figura 7 muestra un diagrama de bloques de la arquitectura de ordenador logico central (CLC, Central Logic Computer), que incluye dos canales paralelos de calculo, un ordenador logico central N (CLC N) y un ordenador logico central B (CLC B), cada uno de los cuales tiene una unidad de comprobacion y proteccion, disenada para controlar de manera intrmsecamente segura la redundancia de los dos canales de calculo.
La figura 8 muestra un diagrama de bloques mas detallado de la arquitectura de las dos unidades de comprobacion y proteccion, denominadas unidades de control vital del ordenador logico central (CLCVCU, Central Logic Computer Vital Control Units).
La figura 9 muestra un diagrama mas detallado de la figura 8.
La figura 10 muestra un diagrama de flujo de los datos del ordenador logico central (CLC) entre los dos canales de procesamiento (CLC N y CLC B).
La figura 11 muestra un diagrama de bloques detallado de la tarjeta de comprobacion y proteccion de la unidad de comprobacion y proteccion de una de las dos unidades de procesamiento del ordenador logico central.
La figura 12 muestra un diagrama de tiempo de las etapas decisivas del ciclo de procesamiento del ordenador logico central de respaldo en caliente, de dos canales.
Aunque el ejemplo de las figuras se refiere a unidades de procesamiento y/o de control de un sistema de estacion ferroviaria, no se debera interpretar que esta invencion esta limitada por el mismo, dado que es aplicable a cualquier aparato de procesamiento que tenga que llevar a cabo funciones intrmsecamente seguras y utilice hardware no intrmsecamente seguro para desarrollar algoritmos de procesamiento.
Haciendo referencia a la figura 1, el sistema que se muestra en el diagrama de bloques comprende multiples elementos de maniobras, tales como circuitos de vfas, senales, conmutadores y otros elementos accionadores remotos, por ejemplo modulos 2, 2', 2'' de generacion/recepcion de codigos (MGRC), que controlan los circuitos de las vfas, un modulo 3 de gestion de entrada/salida vitales (VIOMM, vital input/output management module), ordenadores de logica de zona (ZLC, zone logic computers) 4, 4', 44'', que comunican con un ordenador logico central (CLC). La comunicacion se produce por medio de diferentes tipos de redes, indicadas por los numerales 5 y 6, y definidas como Fnet (Field Network, red de campo) y Znet (Zone Network, red de zona) respectivamente. El ordenador logico central 1 comunica ademas con un terminal de operador 7, o OT, con un sistema 8 de
5
10
15
20
25
30
35
40
45
50
55
mantenimiento y diagnosticos, denominado MDS-GS y con una o varias interfaces vitales hombre maquina 9, 9', denominadas VMMI. En este caso, la comunicacion se produce mediante una red de comunicacion 10 indicada como Cnet (Central Network, red central).
Tal como resulta evidente y se describira en mayor detalle a continuacion, el ordenador logico central 1 (CLC) tiene un funcionamiento de respaldo en caliente de doble canal. Esto significa que, tal como se muestra en la figura 1, el ordenador 1 se compone de dos ordenadores logicos centrales 101, 20l (CLC N y CLC B) que llevan a cabo funciones paralelas de recogida de datos de entrada desde accionadores o unidades remotas 2, 2', 2'', 3, 4, 4', 4'', 7, 8, 9 y procesamiento de las mismas para generar datos de salida. Ademas, controlan las comunicaciones en las diferentes redes de comunicacion 5, 6, 10 con diferentes protocolos y diferentes modos de seguridad.
Las salidas de los dos canales de procesamiento de los ordenadores logicos centrales 101, 201 se controlan con una operacion de respaldo seguro y en caliente, que significa que ambos ordenadores adquieren datos de entrada y los procesan, pero uno de los dos ordenadores no es activado para transmitir datos de salida. Sin embargo, el ordenador desactivado esta dispuesto para asumir la funcion del ordenador activado, ya sea cuando se le ordena hacerlo o cuando se produzca un fallo de funcionamiento en el ordenador activado.
Ademas, varios subsistemas o accionadores dedicados entre los descritos en la presente memoria pueden tener una estructura de hardware/software segun esta invencion, es decir, comprender una unidad de procesamiento basada en hardware comercial no intrmsecamente seguro, que esta asociada con una unidad de comprobacion y proteccion que comprueba la ejecucion adecuada de funciones mediante la unidad de procesamiento y, despues de esta comprobacion del funcionamiento adecuado, actua sobre interfaces o accionadores disenados para determinar la recuperacion segura de las unidades remotas u operativas controladas por la unidad de procesamiento, teniendo de ese modo el conjunto de hardware y software de procesamiento no intrmsecamente seguro y el hardware y software de comprobacion y proteccion funcionando en un modo intrmsecamente seguro.
Un primer ejemplo de estos subsistemas de procesamiento dedicados, segun la invencion, es el subsistema de interfaz vital hombre maquina (VMMI), que esta indicado por los numerales 9, 9' en la figura 1, y se muestra en mayor detalle en el diagrama de la figura 2.
El sistema se compone de una unidad de procesamiento (unidad de procesamiento de graficos, GPU) 109. Esta unidad de procesamiento esta disenada especialmente para la comunicacion, el procesamiento y la generacion de imagenes. La unidad de graficos GPU 109 utiliza hardware comercial y tiene una arquitectura multiprocesador basada en un bus de interfaz de componentes perifericos compacta (CPCI, Compact Peripheral Component Interface). Esta disposicion permite utilizar la capacidad de calculo, flexibilidad y configurabilidad del subsistema, reduciendo al mismo tiempo los costes de desarrollo y fabricacion. La unidad GPU 109 es asimismo adaptable a cualesquiera desarrollos y mejoras futuras, en vista de las expectativas de desarrollo de los dispositivos basados en bus CPCI. La unidad GPU no tiene caractensticas intrmsecamente seguras.
La interaccion con otros subsistemas del sistema, tal como se muestra en la figura 1, se proporciona por un canal Ethernet 10/100 Mbit/s que es redundante en cuanto a disponibilidad, y permite conectar al subsistema de la lmea CNET 10 del sistema. La informacion del subsistema se proporciona al operador por medio de pantallas graficas 11. Cada subsistema de VMMI 9 puede manejar hasta dos pantallas graficas independientes 11, 11'; cada pantalla grafica puede representar un cuadro sinoptico o ciertas especificaciones definidas en la etapa de configuracion. Si se requiere un mayor numero de pantallas o estaciones de trabajo de operador, el sistema se configurara de tal modo que tenga multiples interfaces vitales VMMI 9, tal como se muestra en la figura 1.
La interfaz de operador presenta ademas un teclado funcional 12, que permite entradas de control vital y no vital.
La informacion de estado del subsistema y los resultados de las pruebas de autodiagnostico se transmiten a traves de la red CNET 10. Una poca informacion de diagnostico concisa, particularmente en relacion con el teclado funcional, se transmite al operador por medio de una pantalla alfanumerica, que esta integrada en el teclado funcional 12.
La unidad de procesamiento de graficos 109 se compone, a su vez, de varios modulos que realizan varias funciones.
209 indica una unidad de alimentacion que proporciona las tensiones requeridas a las diversas unidades.
Las tarjetas VMMIMAIN 1 y VMMIMAIN 2 (Vital Man Machine Interface Main, interfaz vital hombre maquina principal), indicadas por los numerales 309 y 309', son tarjetas CPCI 6U de una sola ranura, que estan definidas como CPU perifericas. Estas tarjetas son identicas, excepto por el hecho de que solamente una de ellas esta conectada a la unidad de comprobacion y proteccion 119, denominada IPU (Interface and Peripheral Unit, unidad de interfaz y perifericos). Habitualmente, las tarjetas utilizan un procesador Intel Pentium, o superior.
Las tarjetas VMMIMAIN 309, 309' pueden utilizar potencialmente diversos sistemas operativos. El nivel de seguridad requerido para operaciones vitales de procesamiento llevadas a cabo por la unidad de VMMIMAIN prohube la utilizacion de un sistema operativo multitarea, siendo las operaciones estrictamente dclicas y secuenciales. Por lo tanto, se requiere un entorno DOS para esta tarjeta.
5
10
15
20
25
30
35
40
45
50
55
Las tarjetas CPU perifericas tienen un puente particular, denominado puente no transparente (ver, por ejemplo, DEC21554) que permite que el sistema sea visto por el bus CPCI 409 como un solo agente PCI. El bus PCI es accedido por medio de un puente que puede generar ciclos de "lectura de lmea" y "lectura multiple" PCI, que proporcionan un alto rendimiento de lectura de bloques de datos del bus CPCI.
Una interfaz EIDE (no mostrada) permite que las unidades VMMIMAIN 309, 309' sean conectadas a un disco duro EIDE para arranque de fabrica y configuracion BIOS. Alternativamente, la configuracion BIOS se puede realizar por medio de una interfaz de disquete. Esta disponible un canal 509 RS232 EIA RS232 en serie para permitir la conexion con el conjunto de IPU 119.
Las tarjetas VMMIMAIN 309, 309' estan disenadas para llevar a cabo las funciones siguientes:
- Capa de seguridad FSFB/2. FSFB/2 es una capa del protocolo de comunicacion que se utiliza para transmitir informacion vital entre los diferentes subsistemas, tal como se muestra en la figura 1.
- Reconstruccion de imagen de memoria de pantalla en funcion de la vista seleccionada y del estado de los elementos de maniobras, recibido por el subsistema CLC 1.
- Comprobar la imagen visualizada actualmente, en base al valor de la palabra de codigo y al estado de la memoria de pantalla.
- Eco de entrada. Visualizar el eco de las pulsaciones tecleadas por el operador en el teclado funcional 12.
- Analisis sintactico y construccion de control. La VMMIMAIN comprueba que la secuencia de pulsaciones pertenece una secuencia de control valida y, tras el reconocimiento de la pulsacion ENTRAR, conforma y transmite al area de eco el control visualizado actualmente.
- Comprobacion de integridad de los datos de configuracion. En cada ciclo se vuelve a comprobar si hay corrupcion en una parte de los datos de configuracion.
Funciones de diagnostico
La tarjeta de comunicacion vital hombre maquina (VMMICOM, Vital Man Machine Communication), indicada por el numeral 609 en la figura 2, es una tarjeta CPCI 6U de una ranura, definida como una CPU de sistema. La tarjeta VMMICOM 609 esta asignada todas las funciones de comprobacion en comunicaciones de bajo nivel con subsistemas externos, incluyendo el almacenamiento masivo. La disponibilidad de una ranura PMC o PC-MIP (no mostrada en detalle) es una caractenstica preferida. El bus PCI es accedido por medio de un puente que puede generar ciclos de "lectura de lmea" y "lectura multiple" PCI, que proporcionan un alto rendimiento de lectura de bloques de datos del bus CPCI 409. La tarjeta lleva a cabo la funcion de controlar los accesos al bus CPCI 409. Una interfaz EIDE (no mostrada) permite que las tarjetas VMMICOM 609, 309' sean conectadas a un disco duro EIDE para el arranque de fabrica de la tarjeta y la configuracion BIOS. Alternativamente, la configuracion BIOS se puede realizar por medio de interfaces de disquete. La tarjeta VMMICOM 609 requiere una gran area de memoria para el intercambio de paginas de pantalla. La seccion de intercambio permite almacenar las paginas de pantalla que no se visualizan actualmente; esta unidad no tiene necesariamente una correspondencia ffsica, biumvoca, con un componente, pero no solo se puede disponer como una expansion de memoria del bus CPCI, sino que se asigna asimismo como un recurso interno, a cada unidad de VMMiCoM 609 y unidad de VMMIMAIN 309, 309'. La seccion de intercambio se tiene que componer de RAM y tener un tamano tal como para contener 15 MB para que se visualice cada vista de estacion.
La unidad de memoria de interfaz vital hombre maquina (VMMIMU, Vital Man Machine Interface Memory Unit), indicada por 709, esta disenada para soportar dispositivos para almacenar datos de configuracion del subsistema y del codigo de aplicacion utilizado por los diferentes microprocesadores de la seccion de procesamiento de graficos GPU 9. En una realizacion preferida particular, los dispositivos de almacenamiento satisfacen los siguientes requisitos mmimos: formato PCMCIA II; velocidad de transferencia de datos hacia/desde flash = 4 MB/s; tamano de hasta 1 GB, que puede variar en funcion de la aplicacion. La tarjeta VMMIMU puede estar dispuesta en un formato CPCI 6U, 3U, con el panel 6U estando ajustado en la misma, o en un formato PCI subordinado (PMC o PC-MIP).
La tarjeta VMMIMU 709 permite el acceso frontal a 2 discos flash ATA 2 en un formato de tarjeta de memoria PCMCIA II (no mostrado). Los dos discos flash contienen por separado los datos de configuracion del sistema y el software de aplicacion, asegurando de ese modo la independencia entre datos de codigo y datos de aplicacion.
Se accede al almacenamiento masivo, en modo solo lectura, cuando el subsistema se conecta o en durante un restablecimiento.
La tarjeta controladora CNET 809 pone a disposicion la interfaz 10/100 baseT Ethernet redundante, y permite la conexion de la unidad de procesamiento de graficos GPU 9 con el conmutador central de la red CNET, asegurando de ese modo la redundancia ffsica de la lmea de comunicacion. La tarjeta CNET puede estar dispuesta en un formato CPCI 6U, 3U, con el panel 6U estando montado en la misma, o en un formato PCI subordinado (PMC o PC- MIP). No esta instalado ningun software de aplicacion en la tarjeta controladora CNET. La redundancia de conexion
5
10
15
20
25
30
35
40
45
50
55
esta controlada totalmente mediante controladores de bajo nivel, asociando una unica direccion de IP, correspondiente a una unica pila logica TCP, a ambos canales, por lo que esta funcion no necesita estar controlada mediante un software de aplicacion.
La tarjeta SVGA 909, 909' esta disenada para transferir el video procesado por la VMMIMAIN 309, 309' a pantallas graficas 11, 11', y es un recurso exclusivo de la tarjeta VMMIMAlN 309, 309'. Preferentemente, los controladores de video en uso satisfacen los siguientes requisitos mmimos: SGRAM (Synchronous Graphics RAM, RAM smcrona grafica) de 4 MB, una resolucion de 1600x1200 pfxeles y 256 colores (8 bits por pixel); una interfaz PCI (formato PMC, PC-MIP o CPCI). La conexion esta dispuesta en la parte frontal, por medio de un conector RS343A VAG estandar.
Las tarjetas SVGA 909 se conectan con las salidas de los monitores 11, 11' por medio de una interfaz de comunicacion que es supervisada por la unidad de comprobacion y proteccion.
La unidad de comprobacion y proteccion IPU 119 esta disenada especialmente para funciones de proteccion y utiliza hardware propietario, ad hoc, a diferencia de la unidad de procesamiento de graficos GPU 109. Esta disposicion esta determinada por la necesidad de obtener un macro-componente seguro que pueda llevar a cabo funciones de proteccion, y por la necesidad de implementar ciertas soluciones de hardware con modos vitales que no puede asegurar el hardware comercial, tal como se describe mas adelante. La unidad de comprobacion y proteccion 119 esta disenada para controlar los resultados de procesamiento de la unidad de procesamiento GPU y para proteger el sistema contra fallos relacionados con seguridad. Esta incluye algunas funciones de hardware intrmsecamente seguras, por lo que se compone de tarjetas fabricadas especialmente.
Por lo tanto, mientras que la unidad de procesamiento de graficos GPU, indicada por el numeral 109, solamente lleva a cabo funciones de comprobacion, la unidad de comprobacion y proteccion IPU, indicada por el numeral 119, lleva a cabo todas las funciones de proteccion, asf como las funciones de comprobacion relacionadas con la gestion de las pantallas 11, 11' y de la tarjeta funcional 12.
La unidad de comprobacion y proteccion, que se denomina unidad de interfaz y perifericos (IPU) esta indicada por el numeral 119 como una fuente de alimentacion 219 y dos modulos principales: el modulo de unidad de control vital de interfaz vital hombre maquina (VMMIVCU, Vital Man Machine Interface Vital Control Unit), indicado como 319, y el modulo de aplicacion de interfaz vital hombre maquina (VMMIAP, Vital Man Machine Interface Application module), indicado por el numeral 419.
El modulo VMMIVCU 319 es un modulo propietario esta disenado para funciones tanto de comprobacion como de proteccion. Este modulo tiene la funcion de concentrar todas las palabras de comprobacion proporcionadas por el subsistema, comprobar la secuencia adecuada de las mismas y proporcionar a la GPU una marca de tiempo apropiada, asf como una contribucion vital para el comportamiento de las operaciones de procesamiento de graficos, contribucion vital que se utiliza posteriormente durante la transmision de variables vitales remotas para certificar un funcionamiento adecuado; la VMMIVCU controla la interfaz RS232 en serie 509 para la conexion de la unidad de procesamiento de graficos GPU 9 y la interfaz no vital con el teclado funcional 12;
La VMMIVCU esta interconectada con el modulo 419 aplicacion del VMMIAP por medio de un puerto digital de proposito general 719. El modulo de VMMIAP 419 permite especializar la IPU para la aplicacion espedfica de interfaz vital hombre maquina VMMI. Particularmente, el modulo actua como una interfaz ffsica con el teclado funcional, tal como se muestra mediante el bloque funcional 519, y con las pantallas graficas, tal como se muestra mediante los bloques funcionales 619, 619'. El modulo de VMMIAP recibe directamente tensiones para los monitores de video 11, 11' y la interfaz al teclado funcional 12 desde la seccion de proteccion sobre el modulo de VMMIVCU 319, tal como se describe en mayor detalle a continuacion.
Las figuras 3 a 5 muestran en mayor detalle las estructuras y caractensticas de las unidades componentes de la unidad de comprobacion y proteccion 119.
Tal como resulta evidente a partir de estas figuras, el modulo de comprobacion y proteccion VMMIVCU 319 se compone de dos secciones independientes, una primera seccion de comprobacion 1319 y otra seccion, denominada controlador de potencia vital 2 (VITAL POWER CONTROLLER 2, VPC2) que esta dedicada a la funcion de proteccion y esta indicada mediante el numeral 2319. El principio de esta arquitectura de unidad de microprocesador intrmsecamente segura se conoce, por ejemplo, por la memoria US 4.553.200, que se contempla como parte de esta descripcion.
En la figura 4, los bloques funcionales del modulo de VMMIVCU 319 que pertenecen a la seccion de comprobacion 1319 se muestran en gris.
La logica de procesamiento de la VMMIVCU se obtiene ffsicamente por medio de un procesador Intel 80386, indicado por el numeral 20. Esta disposicion proporciona a la potencia de procesamiento necesaria, utilizando un procesador de arquitectura simple. La logica de procesamiento de la VMMIVCU lleva a cabo las funciones siguientes:
5
10
15
20
25
30
35
40
45
50
Sincronizar los procesos de las unidades de procesamiento de graficos GPU, y de la unidad de comprobacion y proteccion IPU 119. Cada ciclo de procesamiento, la logica de la VMMIVCU 319 produce una marca de tiempo vital, que se denomina VSN (Vital Sequence Number, numero de secuencia vital) del subsistema. El VSN es un valor que progresa, un ciclo tras otro, por medio de una sucesion predeterminada de estados. El VSN es utilizado como una referencia temporal por todos los modulos de la seccion de comprobacion, tanto de la unidad de procesamiento de graficos GPU como de la unidad de comprobacion y proteccion IPU. Tal como se explica mejor en la descripcion funcional, la marca de tiempo VSN proporciona proteccion contra la presencia de datos obsoletos en los procesadores que utilizan una memoria cache, y en particular en la tarjeta de VMMIMAIN 309, 309'.
La comunicacion con la unidad de procesamiento GPU 109 se produce por medio de la lmea de comunicacion RS232 asmcrona dedicada y proporciona la transmision de la informacion siguiente:
desde la GPU a la IPU: las palabras de comprobacion producidas por algoritmos vitales residentes en GEA. La CPU 20 refleja esta informacion al modulo de proteccion VCP2 2319;
desde la IPU a la GPU: todos los datos obtenidos del teclado funcional, asf como la marca de tiempo VSN generada por la unidad de comprobacion y proteccion IPU en cada ciclo de procesamiento.
La CPU 386 20 transmite las palabras de comprobacion producidas por los algoritmos contenidos en la unidad de procesamiento de graficos GPU y la unidad de comprobacion y proteccion IPU, por medio de una memoria de dos puertos 22, a la seccion de proteccion VPC2 2319. Los accesos de memoria estan sincronizados con la ayuda de indicadores;
La seccion de comprobacion 1319 comunica con el modulo de aplicacion (VMMIAP) 419. Esta comunicacion se produce a traves de un puerto digital paralelo de proposito general 719 y la informacion intercambiada incluye: el estado codificado de la tecla ENTRAR, obtenido por el VMMIAP; el resultado de las pruebas de diagnostico no vitales llevadas a cabo sobre amplificadores de video.
Se obtiene la comunicacion mediante la lmea de comunicacion RS232 asmcrona dedicada 23 y proporciona la transmision de la siguiente informacion: los datos de pulsaciones no vitales, obtenidos por la VMMIVCU desde el teclado funcional 12; los datos dirigidos a la pantalla del teclado funcional 12, proporcionados por la VMMIVCU;
Esta dispuesto asimismo un divisor polinomial 24, para llevar a cabo funciones de division polinomial por hardware. Esta funcion es utilizada ampliamente por algoritmos dedicados de generacion de palabras de comprobacion (ver la memoria US 4.553.200) y se utiliza asimismo, tal como se describe a continuacion en mayor detalle, para generar marcas de tiempo VSN. La implementacion por hardware del algoritmo de division polinomial permite acelerar todos los algoritmos vitales que residen en la logica de la VMMIVCU.
Se utiliza una EEPROM flash 25 para contener el codigo de aplicacion y los datos de configuracion utilizados por la logica de procesamiento de la VMMIVCU.
La memoria de dos puertos 22 actua como una interfaz ffsica entre la logica de comprobacion 1319 y la logica de proteccion 2319. La informacion intercambiada a traves de este area, asf como ciertos parametros de configuracion e indicadores de sincronizacion, son solamente las palabras de comprobacion producidas por los algoritmos que residen en las diferentes logicas de la seccion de comprobacion.
El modulo de VMMIVCU 319 tiene unos pocos puertos de E/S para funciones no vitales, tales como el control de estado de abordo y LEDs de diagnosticos, y como puertos para la descarga de SW.
En la figura 5, los bloques funcionales de la seccion de proteccion 2319 se muestran en gris. Esta seccion incluye el modulo VPC2 que se interconecta con la CPU 20 de la seccion de comprobacion por medio de una memoria de dos puertos. El componente VPC2 tiene solamente la funcion de proporcionar tension de salida vital si esta presente en su entrada el flujo previsto de palabras de comprobacion; este componente consiste en un microprocesador 8085 que ejecuta la logica de comprobacion de palabras de comprobacion 30 (figura 3) y un filtro vital intrmsecamente seguro 31.
Como resultado de la validacion mediante la logica residente en el microprocesador 30, se generan dos senales hacia el filtro vital 31, que tienen caractensticas precisas de forma de onda (ondas cuadradas con diferentes frecuencias y ciclos de trabajo). Estas senales son utilizadas por el filtro vital para la generacion de potencia 32, de 1,5 W a 12V.
La tension vital se genera solamente si la seccion de comprobacion proporciona dclicamente, cada 50 ms, las denominadas palabras de comprobacion, utilizando la memoria compartida 22.
En cada ciclo de 50 ms, denominado ciclo de re-comprobacion, la seccion de proteccion 2319 obtiene las diversas palabras de comprobacion proporcionadas por la seccion de comprobacion 1319 y procesa palabras de comprobacion proporcionando al mismo tiempo la tension vital, en base a su valor, actuando sobre el filtro activo.
5
10
15
20
25
30
35
40
45
50
55
Como resultado de la validacion mediante la logica residente en el microprocesador 8085, se generan dos senales hacia el filtro vital 31, que tienen caractensticas precisas de forma de onda (ondas cuadradas con diferentes frecuencias y ciclos de trabajo, a 5 kHz y 500 Hz respectivamente, que tienen una relacion de fases bien definida). Estas senales se utilizan para generar una tension vital utilizada por el VMMIAP. Cada 50 ms, las formas de onda se regeneran dclicamente en base a las palabras de comprobacion recibidas por la seccion de comprobacion.
Durante la comprobacion de correccion o consistencia, la logica de verificacion de palabras de comprobacion consume palabras de comprobacion de manera destructiva, asegurando de ese modo que un conjunto determinado no puede ser utilizado mas de una vez. El bloque 31 de filtro vital activo (AVF, Active Vital Filter) garantiza la disposicion de la frecuencia de salida de 5 kHz (la senal de activacion es transmitida solamente al VG (Vital Generator, generador vital) 32 si las dos frecuencias de entrada procedentes de la logica de verificacion de palabras de comprobacion tienen las caractensticas esperadas de frecuencia y ciclo de trabajo. El bloque esta realizado con circuitos analogicos de seguridad intrmseca. La salida del filtro activo se utiliza como una senal de activacion para el generador vital (VG) 32; este es un suministro de potencia que se supone genera una tension vital de +12,5 VDC, con una salida continua disponible maxima de 1,5 W. En el generador esta implementado un circuito de conversion CC-CC de seguridad intrmseca, que tiene caractensticas tales que asegura solamente la generacion de tension vital cuando el filtro activo 31 proporciona una senal de activacion.
El modulo de aplicacion de interfaz vital hombre maquina (VMMIAP) 419 consiste en una tarjeta propietaria que lleva a cabo funciones espedficas de aplicacion de VMMI. En particular, esta tarjeta controla la adquisicion del estado de la tecla ENTRAR desde el teclado funcional; el suministro de alimentacion al teclado funcional 12; y asegura el aislamiento de las interfaces con el operador, cuando no hay tension vital.
El modulo 419 de aplicacion del VMMIAP recibe de la seccion de proteccion 2319 la tension generada de forma segura como una autorizacion de funcionamiento del subsistema. Este modulo utiliza la tension vital para hacer funcionar amplificadores de video 619, 619' y los circuitos de interfaz 519 con la tecla ENTRAR del teclado funcional 12.
Cuando la seccion de proteccion 2319 no proporciona autorizacion, el modulo 419 asegura que si se detecta un conjunto de palabras de comprobacion erroneas, la tension vital cae por debajo de un umbral predeterminado dentro de un tiempo maximo de 400 ms. Esto permite: cancelar una imagen erronea en un tiempo de respuesta predeterminado de 1 s, que incluye los tiempos de ciclo del subsistema, y desactivar controles vitales, desactivandose los circuitos de deteccion del estado de la tecla ENTRAR.
La interfaz con la tarjeta VMMIVCU se compone de un puerto de E/S digital 719 del VMMIAP de proposito general (figura 2).
En la figura 6 se muestra un diagrama de bloques funcional del bloque 419 de aplicacion del VMMIAP, que destaca en gris los bloques funcionales relacionados con la seguridad.
El numeral 27 indica los circuitos de preparacion de la tension vital asignados al VMMIAP 419. Estos circuitos tienen solamente la funcion de generar tensiones espedficas para amplificadores de video 619, 619' y para la interfaz con las teclas vitales del teclado funcional 12, desde la tension vital de 12 V generada por el VPC2 2319 al modulo 319 de la VMMIVCU. La interfaz vital 519 con el teclado funcional 12 esta disenada para interactuar con un circuito de codificacion de la tecla ENTRAR, que no se muestra en detalle y esta montado en el teclado funcional 12 para detectar el estado de la misma. El teclado funcional 12 tiene tanto controles de funcionamiento normal como controles de emergencia. Las teclas estan divididas en conjuntos homogeneos, en funcion de sus funciones; los diversos conjuntos estan dispuestos de izquierda a derecha, segun una logica de entrada de control. La logica de adquisicion del estado de la tecla ENTRAR esta disenada con criterios intnnsecamente seguros. El FK integra ademas una pantalla alfanumerica, dos timbres y una tecla de activacion de tres posiciones. La arquitectura del teclado funcional se compone de tres tableros diferentes, conectados por un cable plano, un tablero que contiene los botones y la tecla; un tablero que contiene la pantalla LCD; un tablero de control que es una CPU y utiliza el microprocesador Intel 80C51FA1 de 16 MHz.
La interfaz se compone ffsicamente de 4 lmeas EIA en serie 422, que se utilizan como sigue:
INV_OPEN: codificacion de 32 bits de estado de tecla abierto.
INV_CLOSED: codificacion de 32 bits de estado de tecla cerrado.
BIT_CLOCK, WORD_CLOCK: utilizado para transmitir informacion de sincronismo (bits y palabras).
El suministro de potencia a los receptores diferenciales utilizados para el canal de datos es proporcionado por el VPC2. Por lo tanto, un fallo del VPC2 impide la generacion de controles vitales, interceptando la codificacion del estado de la tecla ENTRAR. La tarjeta VMMIAP 419 transfiere la tension de 5 V al teclado funcional 12. Los amplificadores 619, 619' tienen la funcion de amplificar las senales de video R/G/B transmitidas a los monitores de video. Estos se hacen funcionar mediante la tension vital generada por el VPC2 2319. La ausencia de tension vital hace que las senales de video desaparezcan. El modulo de VMMIAP 419 contiene 6 amplificadores 619, 619', por lo que puede controlar las senales de componentes de tres colores para dos pantallas graficas.
5
10
15
20
25
30
35
40
45
50
55
60
El VMMIAP 419 incluye asimismo un modulo 29 de diagnostico de la senal de video, que muestrea el nivel de la senal a la salida de los amplificadores de video 619, 619', sincronizado con la senal de sincronizacion de video en cuanto se actualiza la primera lmea de p^xeles del video. Esta lmea se controla asimismo con un color blanco brillante asignado por el software de aplicacion; al leer la senal de video generada cuando se visualiza la primera lmea, se realiza un equilibrio de color adecuado.
El funcionamiento del sistema indicado anteriormente es como sigue:
El sistema puede visualizar las vistas sinopticas que el operador selecciona por medio del teclado funcional. Las vistas son reconstruidas por la unidad de procesamiento de graficos GPU 109 en base a los datos recibidos por el ordenador logico central CLC, indicado por el numeral 1 en la figura 1. El teclado funcional permite generar controles vitales y no vitales, cuyo eco se visualiza en los monitores, y que se transmiten a la unidad de procesamiento de graficos GPU 109 para su transmision al ordenador logico central CLC 1.
Durante este proceso, la unidad de comprobacion y proteccion 119 de la VMMIVCU lleva a cabo operaciones de comprobacion y proteccion. En primer lugar, durante cada ciclo de procesamiento del ordenador logico central, que dura aproximadamente 500 ms, se generan palabras de comprobacion de certificacion cada 50 ms para datos transmitidos a la unidad de procesamiento de graficos GPU 109, asf como palabras de comprobacion para la re- comprobacion de las vistas graficas reconstruidas a partir de estos y presentes en la memoria de pantalla. La unidad de procesamiento de graficos ejecuta ademas una operacion de volver a comprobar los datos de configuracion del sistema, y el codigo de procesamiento de aplicacion contenido en las memorias de VMMIMU, y genera una palabra de comprobacion invariante interna. Se genera asimismo una palabra de comprobacion invariante como resultado de una comprobacion de consistencia de los datos de entrada frente a los datos visualizados por los monitores 11, es decir, los datos de salida de la unidad de procesamiento. Todas las palabras de comprobacion son ademas asociadas, es decir marcadas, con la marca de tiempo VSN del ciclo de procesamiento en ejecucion. Las palabras de comprobacion generadas de este modo se transmiten mediante la seccion de comprobacion 1319 de la unidad de comprobacion y proteccion de la VMMIVCU a la seccion de proteccion VPC2 2319, que solamente lleva a cabo una verificacion de palabras de comprobacion. Si las palabras de comprobacion son incorrectas, la seccion de proteccion corta la tension vital a los amplificadores 619, 619' que reciben senales de los controladores graficos SVGA 909 de la unidad de procesamiento de graficos 109, impidiendo de ese modo que estas senales sean visualizadas.
Las marcas de tiempo VSN tienen el efecto de impedir que permanezcan en la memoria cache del procesador de la unidad de procesamiento de graficos datos de ciclos de procesamiento anteriores, de manera que los datos de salida calculados por la unidad de procesamiento de graficos no puedan ser inconsistentes con la situacion actual. En este caso, las marcas de tiempo VSN permiten evitar este inconveniente. Los datos vitales se asignan a un numero VSN en un esquema XOR, que identifica exclusivamente el ciclo de procesamiento actual. Por lo tanto, la vida util de los datos marcados sera igual al ciclo de procesamiento.
Esta funcion se lleva a cabo mediante un generador de marcas de tiempo que es una caractenstica de la seccion de comprobacion. La generacion de marcas de tiempo y la comunicacion de las mismas a la unidad de procesamiento de graficos y/o a la unidad de control del teclado funcional 12 representan el inicio de un nuevo ciclo de procesamiento, y permiten la sincronizacion de los diversos procesos del sistema.
La marca de tiempo VSN pertenece a una secuencia pseudoaleatoria generada por sucesivas divisiones polinomiales a partir de una semilla asignada. Este modo de generacion asegura la variacion de un numero suficiente de bits entre dos VSN sucesivos.
Se generan marcas de tiempo en un modo de calculo redundante con un diagnostico de ruptura del tiempo vital. La deteccion del funcionamiento adecuado del generador de marcas de tiempo VSN esta basada en las propiedades algebraicas de la operacion de division polinomial de cadena binaria, que consiste en que la funcion de division polinomial sobre una cadena de N bits se puede simular mediante un calculo matricial. En este caso, los algoritmos de comprobacion incluyen la determinacion de una palabra de comprobacion invariante y la transmision de la misma a la seccion de proteccion, de manera que esta certifica el funcionamiento adecuado del generador de marcas VSNG.
En relacion con el teclado funcional, se generan palabras de comprobacion que estiman la correccion de la tecla ENTRAR, es decir la tecla que pulsa el operador para indicar su voluntad de transmitir un control vital. En este caso, el control vital se marca en tiempo y se valida mediante la seccion de proteccion antes de ser transmitido a la unidad de procesamiento de graficos GPU 109 para ser transmitido posteriormente al ordenador logico central CLC 1. Las marcas de tiempo aseguran que el control transmitido esta sincronizado con el ciclo de procesamiento de la unidad de procesamiento de graficos GPU 109 y con el ordenador logico central CLC 1. Si se descubre que la marca de tiempo de control es inconsistente con una de las unidades de procesamiento de graficos, entonces el control no se transmite o ejecuta. El control se vuelve a comprobar ademas y, como resultado, se generan las palabras de comprobacion, asimismo generando palabras de codigo en funcion de las pulsaciones del teclado funcional, que se envfan como tales a la unidad de proteccion para su validacion. Si las palabras de comprobacion son erroneas, la seccion de proteccion actua sobre el generador de potencia del modulo de VMMIAP 419 y corta la tension vital al teclado.
5
10
15
20
25
30
35
40
45
50
55
De nuevo haciendo referencia a la figura 1, el subsistema de ordenador logico central CLC, indicado por el numeral 1, esta disenado especialmente para el procesamiento seguro de la logica del sistema, en base al estado de los elementos de maniobras 2, 2', 2'', 3, 4, 4', 4'' y a los controles introducidos por los operadores 7, 9, 9'.
El subsistema CLC 1 se diseno como una aplicacion general para satisfacer todos los requisitos de control para maniobras ffsicamente diferentes, posiblemente gestionadas por diferentes diagramas de criterios. Por lo tanto, el sistema fue disenado para ejecutar cualquier logica del sistema definida por ecuaciones booleanas. Este es un subsistema dclico, y el tiempo de ciclo en el que se basa la actualizacion del estado de salida vital se denomina ciclo principal y dura 500 ms. Las ecuaciones booleanas utilizadas para determinar la logica de un cierto sistema se definen en fabrica, en funcion de la topograffa de la estacion, y de reglas de manipulacion aplicables, y son traducidas ademas a estructuras de datos, por medio de herramientas de configuracion especiales. La estructura de datos relacionada con las ecuaciones permite configurar el subsistema para cualquier aplicacion sin necesidad de realizar cambios en el software de procesamiento. El CLC 1 esta conectado con los otros subsistemas mediante las redes CNET 10, ZNET 6 y FNET 5. A traves de estos canales, y utilizando protocolos propietarios adecuados a nivel de aplicacion, el CLC 1 puede intercambiar con los mismos variables relacionadas con la logica e informacion de diagnostico. El ordenador logico central 1 es una unidad esencial para llevar a cabo las funciones principales del sistema. Por lo tanto, para proporcionar una alta disponibilidad, este se compone de dos unidades de procesamiento simetricas 101, 201, dispuestas en una configuracion de respaldo en caliente, tal como se muestra en las figuras 1, y 7 a 10. Las dos unidades de procesamiento 101, 201 se denominan CLC N (ordenador logico central - normal) y CLC B (ordenador logico central - respaldo). Las dos unidades de procesamiento 101, 201 pueden llevar a cabo de forma individual y segura las funciones del CLC 1, y en particular la adquisicion de entradas en paralelo y la solucion independiente de las ecuaciones booleanas, pero los resultados de las mismas se transmiten solamente de manera mutuamente excluyente desde una de las dos unidades de procesamiento 101,201.
Cada unidad de procesamiento 101,201 puede adoptar los siguientes estados operacionales:
Operativo: la unidad de procesamiento operativa es la que determina el nuevo estado de las variables de salida, en base a los datos recibidos, y transmite estas variables a las unidades remotas 2, 3, 4, 7, 8, 9;
Disponible: la unidad de procesamiento disponible lleva a cabo las mismas operaciones que la unidad operativa, excepto que, una vez que se han resuelto las ecuaciones, alinea sus salidas y su estado interno con los de su unidad de procesamiento gemela y se impide que transmita las salidas a las unidades remotas. Siempre que la unidad de procesamiento "operativa" falla, esta unidad esta lista para sustituirla, y para entrar en el modo "operativo".
Inactivo: este estado describe la inicializacion de una unidad de procesamiento, y puede ser adoptado por una unidad como resultado de la deteccion de un fallo, o cuando el sistema se conecta;
Apagado: sistema desconectado.
El ordenador logico central CLC 1 incluye un dispositivo que permite asociar el estado "operativo" a solamente una de las dos unidades de procesamiento 101, 201, N y B, de tal modo que la transmision de variables vitales solamente puede estar controlada por una de las dos unidades, mientras que la otra esta alineada con la primera.
Con un funcionamiento normal, cada unidad de procesamiento 101, 201 genera variables de estado externas e internas de manera independiente. Las variables anteriores pueden diferir debido a que pueden ser utilizados diferentes valores de entrada, dado que el proceso de adquisicion de entrada es totalmente independiente. Para evitar este desajuste de la logica del sistema y asegurar la continuidad del funcionamiento cuando se conmuta entre las dos unidades de procesamiento, estas ultimas intercambian mutuamente de manera dclica las variables de estado externas e internas determinadas por cada una de ellas, y seleccionan y utilizan el mismo conjunto de variables, que pueden ser el conjunto generado localmente o el conjunto recibido desde la otra unidad.
Las funciones de intercambio de datos y de alineamiento utilizan unidades de comunicacion dedicadas internas que conectan las dos unidades de procesamiento CLC N 101 y CLC B 201. El proceso de conmutacion, es decir, la transicion de la unidad de procesamiento desde el estado "disponible" al estado "operativo" se puede producir como resultado de:
un fallo: la unidad de procesamiento 101, 201 anteriormente "disponible" detecta un 'fallo' en la unidad de procesamiento anteriormente "operativa" (101, 201), y ocupa su lugar;
una solicitud: la unidad de procesamiento 101, 201 en el estado "disponible" conmuta al estado "operativo" y viceversa. Esto se determina mediante un control de conmutacion manual, local o remoto, o como resultado de una solicitud automatica que se proporciona para impedir que una unidad de procesamiento 101, 201 permanezca en el estado "disponible" mas alla de un cierto periodo, lo que puede obstaculizar la plena detectabilidad de fallos latentes en la unidad no utilizada. La solicitud automatica provoca asimismo una conmutacion cuando la unidad "operativa" esta en una situacion de funcionamiento "peor" que la unidad "disponible". En este caso, la unidad "operativa" 101, 201 solicitara la conmutacion para utilizar los datos producidos por la unidad de procesamiento 101,201 con menor grado de degradacion.
5
10
15
20
25
30
35
40
45
50
55
Los anteriores modos de control de redundancia se muestran graficamente en el esquema de la figura 10.
El ordenador logico central CLC 1 incluye una interfaz de diagnostico basico denominada BDI e indicada por el numeral 301. Por medio de esta interfaz, el operador puede reunir informacion basica acerca del estado de las unidades de procesamiento, el CLC N 101 y el CLC B 201, y puede configurar una de estas al estado "operativo".
El subsistema soportara funciones de diagnostico para permitir la deteccion de fallos. Ademas, el ordenador logico central CLC 1 gestionara variables de registro historico de eventos, ya cableadas en la logica, y unas pocas variables de monitorizacion que son utiles para una comprobacion de funcionamiento adecuado. Esta informacion sera transferida al sistema de diagnostico y mantenimiento MDS GS 8, junto con la informacion de diagnostico general del ordenador logico central CLC y otros nodos conectados a las redes ZNET 5 y FNET 6, que no pueden comunicar directamente con el sistema de diagnosticos y mantenimiento DMS GS 8.
El ordenador logico central CLC 1 tendra interfaces para conectarlas con la red redundante CNET 10, y con multiples redes redundantes ZNET 5 y FNET 6. Por medio de estas redes, tanto la unidad de procesamiento 101 CLC N como la unidad de procesamiento 201 CLC B obtienen en paralelo entradas remotas vitales y no vitales desde los diferentes nodos y desde las diferentes unidades remotas 2, 3, 4, 7, 9, y transmiten a estas el valor de las salidas determinadas dclicamente. Cabe senalar que la fase de transmision esta disenada solamente para la unidad de procesamiento 101, 201 "operativa".
Obviamente, cada unidad de procesamiento 101, 201 podra conectar con cualquiera de las lmeas que forman cada red. Las redes CNET, ZNET y FNET son redes de comunicacion cerradas, y son compartidas solamente por aplicaciones propietarias. Esta disposicion permite reducir las intrusiones no autorizadas y realizar predicciones del trafico de red.
La utilizacion de una arquitectura redundante para el ordenador logico central CLC 1 involucra la necesidad de asociar un 'estado' de funcionamiento a cada una de las dos unidades de procesamiento que lo componen, el CLC normal 101 y el CLC de respaldo 201. Este estado tiene que ser detectado de manera segura por cada unidad de procesamiento 101,201, dado que esta funcion involucra la seleccion de los datos producidos por la seccion local de calculo o por la de la otra unidad de procesamiento. Ademas, se impedira que las unidades de procesamiento 101, 201 evaluen de manera no alineada.
Para controlar la redundancia, cada unidad de procesamiento 101, 201 esta dotada de un circuito de proteccion VPC2, indicado por el numeral 2319, que es identico al circuito de la seccion de proteccion 2319 del ejemplo anterior, y de un conmutador estatico, indicado por el numeral 401 en la figura 8. Cada seccion de proteccion VPC2 2319 recibe en su entrada las diversas certificaciones para confirmar el funcionamiento adecuado de las partes vitales de cada unidad de procesamiento y proporciona a su salida una tension vital. Si el flujo de certificacion es correcto, sin interrupciones, las unidades de procesamiento 101, 201 proporcionan una tension vital de salida a su propia seccion de proteccion VPC2 2319, pero despues de estas esta dispuesto un conmutador estatico 401 para permitir solamente la salida de tension a una de las dos unidades de procesamiento 101, 201. Por lo tanto, se obtienen dos bifurcaciones, en las que puede o no estar presente una tension vital, y la deteccion de esta tension despues del conmutador 401 permite determinar si la unidad de procesamiento 101, 201 esta o no en el estado "operativo".
Las figuras 7 a 9 describen en mayor detalle la arquitectura que permite las funciones anteriores.
El ordenador logico central CLC 1 es un subsistema redundante compuesto de dos unidades de procesamiento 101, 201 logicas, denominadas CLC N y CLC B, que son identicas tanto en relacion con el hardware como con el software. Estas unidades se pueden diferenciar solamente por medio de un identificador HW adecuado, que es relefdo mediante procedimientos de software.
Tal como se ha descrito anteriormente, las dos unidades de procesamiento 101, 201 pueden llevar a cabo las diversas funciones incluso cuando la unidad gemela esta ausente (un funcionamiento independiente).
Cada unidad de procesamiento 101, 201 se compone, a su vez, de dos conjuntos, denominados: unidad de procesamiento logico (LPU, Logic Processing Unit), indicada por el numeral 40, y unidad de proteccion y sincronizacion (PSU, Protection and Synchronization Unit), indicada por el numeral 41, que estan interconectadas adecuadamente, y disenadas cada una para una tarea particular.
El conjunto de LPU 40 lleva a cabo funciones de comunicacion y resolucion de ecuaciones, y consiste en tarjetas comerciales basadas en buses CPCI (interfaz de componentes perifericos compacta), que estan equipados con microprocesadores Intel Pentium. Esta disposicion permite utilizar la potencia de calculo, flexibilidad y configurabilidad del subsistema, reduciendo al mismo tiempo los costes de desarrollo y fabricacion. Este conjunto es adaptable asimismo a cualesquiera mejoras y desarrollos futuros, en vista de las expectativas de desarrollo de gran disponibilidad de los dispositivos basados en bus CPCI.
El conjunto PSU es una unidad de comprobacion y proteccion 41 que lleva a cabo funciones de comprobacion y proteccion, y se compone de tarjetas dedicadas basadas en microprocesadores INTEL 80385 y 8085. Esta disposicion surge por la necesidad de implementar ciertas soluciones de hardware con modos vitales que no pueden
5
10
15
20
25
30
35
40
45
50
ser asegurados por hardware comercial. Una tarea basica del conjunto PSU 41 es sincronizar sus respectivas unidades de procesamiento 101, 201 y comprobar el funcionamiento adecuado de las mismas, incluyendo su alineamiento con la otra unidad de procesamiento.
La unidad LPU 40 obtiene de su unidad de comprobacion y proteccion PSU las senales de activacion necesarias para el funcionamiento adecuado y transmite a esta el resultado de sus funciones.
El conjunto LPU o unidad informatica 40 es la seccion de unidad de procesamiento que calcula la logica del sistema ferroviario, mientras que los resultados de este calculo se certifican mediante palabras de comprobacion que se transfieren, a su vez, a la unidad de comprobacion y proteccion PSU 41 para su validacion.
La arquitectura de la unidad de comprobacion y validacion corresponde sustancialmente a la de la misma unidad que se ha descrito haciendo referencia a la realizacion de las figuras 2 a 6, y se compone de una seccion de proteccion y de una seccion de hardware y software de aplicacion espedfica, siendo la aplicacion en este caso el control de redundancia de los dos canales informaticos proporcionados por las dos unidades informaticas LPU.
Ambas unidades de procesamiento, CLC N 101 y CLC B 202, tienen interfaces para la conexion del subsistema con la red redundante cNeT 10, y con multiples redes redundantes ZNET 5 y FNET 6. Por medio de estas redes, las dos unidades de procesamiento 101, 201 obtienen en paralelo entradas remotas vitales y no vitales de los diferentes nodos y de las diferentes unidades remotas, mientras que solamente se activa la transmision de la unidad de procesamiento "operativa".
La figura 7 muestra las tarjetas o subunidades individuales que componen cada una de las unidades de procesamiento 101,201. La tarjeta controladora FNET 140 es de hecho una tarjeta de soporte de PMC, que puede alojar hasta dos modulos de alojamiento PMC, para su utilizacion para la conexion con dos redes ZNET redundantes, o bien con dos redes FNET redundantes, dado que utilizan el mismo tipo de soporte de transmision y el mismo modo de comunicacion.
El ordenador logico central CLC 1 contiene otras interfaces para la conexion entre las unidades de procesamiento N 101 y B 201, interfaces que permiten el intercambio de datos resultantes, el procedimiento de alineamiento y el sincronismo entre las dos partes.
Ademas, el ordenador logico central CLC 1 tiene una interfaz 310 de operador BDI local que tiene que estar conectada adecuadamente para el control de los dispositivos, y de las entradas y salidas no vitales que lo componen.
El sistema tiene un dispositivo que puede diferenciar, durante la configuracion, el ordenador logico central CLC 1 en las dos unidades de procesamiento CLC N 101 y CLC B 201. Esta funcion esta proporcionada por un identificador de hardware externo (puente), accesible sin extraer las tarjetas, que permite identificar nominalmente los dos aparatos. Este identificador es el unico elemento de diferenciacion de las dos unidades de procesamiento 101,201, que por lo ademas podnan ser identicas, en terminos tanto de HW como de SW. Cada unidad de procesamiento incluira HW de seguridad intrmseca, para la adquisicion vital de esta entrada, de tal modo que el software de procesamiento puede asociar el nombre a la unidad de procesamiento 101, 201 en la que esta cargado.
Tal como se ha mencionado anteriormente, la unidad LPU 40 tiene las funciones principales de comunicar con los subsistemas externos, procesar la logica del sistema e intercambiar con el subsistema redundante las variables calculadas. Todas estas funciones, que se consideran vitales, se certifican mediante una palabra de comprobacion transferida a la unidad de comprobacion y proteccion PSU 41.
La unidad LPU 40 tiene las interfaces siguientes:
una interfaz Ethernet externa de 10/100 Mbit/s de dos puertos, que se utiliza para conectar la red central CNET 10 del sistema, controlada logicamente por la tarjeta CLCCOM (Central Logic Computer Commmunication, comunicacion del ordenador logico central) 42 y montada en la tarjeta de "controlador CNET" 43;
multiples interfaces RS485 redundantes externas, para la conexion a las redes ZNET y FNET 5 y 6, que estan controladas logicamente por la tarjeta CLCCOM 42 y montadas en multiples tarjetas de soporte de pMc (incluyendo la CLCCOM);
una interfaz Ethernet externa de 10/100 Mbit/s 44, que se utiliza para intercambiar datos con la unidad de LPU B (o N) 40, controlada por la tarjeta de CLCMAIN (Central Logic Computer Main, ordenador logico central principal) 45;
una interfaz RS232 en serie interna 46 para la conexion a la unidad de comprobacion y proteccion PSU 41, controlada por la tarjeta CLCMAIN 45.
La configuracion basica incluye las siguientes tarjetas, todas equipadas con una interfaz de bus CPCI:
La tarjeta CLCCOM 42 esta disenada para funciones de comunicacion de protocolo de bajo nivel para las diversas redes redundantes (CNET, FNET, ZNET) y tiene ademas que soportar un modulo de alojamiento PMC;
5
10
15
20
25
30
35
40
45
50
el soporte de PMC es utilizado para anadir hasta dos modulos de alojamiento PMC, es dedr, pequenas tarjetas comerciales que pueden manejar dos redes redundantes cada una, por medio de una interfaz RS485;
La tarjeta CLCMAIN 25 esta disenada para codificar y descodificar variables remotas (es decir, el nivel de transporte del protocolo en uso), para calcular la logica del sistema y para intercambio de datos;
La tarjeta controladora CNET 43 es una controladora Ethernet de dos puertos de 10/100 Mbit. La tarjeta controladora CNET 43 se utiliza para la conexion con la red CNET 10 y esta controlada, a traves de la CPCI, por medio de la tarjeta CLCCOM 42.
La tarjeta CLCMU 47 se utiliza como soporte para el almacenamiento masivo de la unidad LPU 40.
Todos los componentes de la unidad LPU 40 estan disponibles en el mercado. Esto permite escalar la potencia de calculo en funcion de las necesidades reales del sistema y utilizar una arquitectura actualizable en vista de las futuras innovaciones relacionadas con CPCI.
La tarjeta CLCCOM 42 es una unica tarjeta Eurocard 6U equipada con un microprocesador INTEL Pentium o superior. Esta disenada especialmente para la funcion vital NON de completar el protocolo de comunicacion de bajo nivel con redes centrales de comunicacion externas. El intercambio de datos con los nodos o las unidades remotas conectadas a la red CNET 10 puede estar basado en el protocolo UDP/IP, mientras que el intercambio de datos con los nodos o las unidades remotas conectadas a las redes ZNET y FNET 5 y 6 se basa en el protocolo HDLC, en modo maestro-esclavo, con la CLCCOM actuando como maestro. Las transmisiones a traves de las redes estaran controladas exclusivamente por la CLCCOM de una de las dos unidades de procesamiento 101, 201, N o B, es decir la "operativa", mientras que ambas tarjetas reciben simultaneamente datos del exterior.
La tarjeta introducida en un bastidor con un bus CPCI lleva a cabo asimismo funciones de monitorizacion y arbitraje sobre el bus (tarjeta "de sistema") y gestiona la fase de configuracion inicial.
La tarjeta CLCCOM 42 realiza asimismo la funcion de tarjeta de soporte de PMC, con la tarea de soportar ffsicamente un modulo de expansion de alojamiento PMC que puede controlar dos redes redundantes, del tipo ZNET o FNET, 5 o 6, por medio de una conexion RS485. Si el sistema esta configurado teniendo multiples redes ZNET y FNET, el CLC se conecta a las mismas por medio de modulos PMC adicionales montados en tarjetas de soporte de PMC especiales. Estas tarjetas y la tarjeta controladora CNET 43 estan controladas logicamente por la CLCCOM, que por lo tanto es responsable de todas las funciones de monitorizacion en las comunicaciones de bajo nivel con los subsistemas externos.
Desde un punto de vista funcional, la tarjeta CLCCOM 42 esta dedicada especialmente a funciones no vitales. La funcion de proteccion de datos vitales, en los sentidos tanto de transmision como de recepcion, esta asignada a la tarjeta CLCMAIN 45.
El sistema operativo VxWorks 5.X, de la firma Wind River, esta instalado en la tarjeta CLCCOM: la utilizacion de un sistema operativo comercial no tiene impacto directo en la seguridad, dado que no se asignan funciones vitales a la tarjeta. La CLCCOM interactua solamente con las otras tarjetas de la unidad LPU por medio del bus CPCI.
La tarjeta CLCMAIN 45 es una sola tarjeta Eurocard 6U equipada con una CPU INTEL Pentium o superior. Habitualmente, tiene las siguientes funciones principales:
Gestion a nivel de aplicacion de protocolos de comunicacion propietarios que se utilizan para transmitir datos en las redes CNET, FNET y ZNET;
Procesamiento de logica del sistema;
Intercambio de datos entre las unidades LPU N y B, es decir, de aquellos que pertenecen a las unidades de procesamiento N y B;
Intercambio de datos con la correspondiente unidad de comprobacion y proteccion PSU 41, es decir, transmision de certificaciones que confirman el funcionamiento correcto de las funciones vitales individuales y recepcion de toda la informacion sobre alineamiento logico y marcas de tiempo;
Funciones de diagnostico
La tarjeta CLCMU 47 esta disenada para almacenar datos de configuracion de subsistemas y el codigo de aplicacion utilizado por los diferentes microprocesadores. Se accede al almacenamiento masivo, en modo solo lectura, cuando el subsistema se conecta o durante un restablecimiento.
La tarjeta CLCMU 47 es una unica tarjeta Eurocard 6U que aloja dos discos flash de tarjeta de memoria PCMCIA, que contienen por separado los datos de configuracion del sistema y el software de aplicacion, asegurando de ese modo la independencia entre los datos de codigo y los datos de aplicacion. Alternativamente, la funcion llevada a cabo por la tarjeta CLCMU 47 puede ser realizada por la tarjeta CLCCOM 42, por medio de un modulo de alojamiento PMC, utilizado en otro caso para comunicaciones de lmea en serie.
5
10
15
20
25
30
35
40
45
50
Los datos de software y/o de configuracion se actualizan reprogramando memorias flash. Esto se puede realizar en la fabrica o in situ, utilizando una herramienta de desarrollo portatil.
La unidad de comprobacion y proteccion PSU 41 esta disenada para comprobar y proteger actividades vitales, y para controlar la redundancia de las dos unidades de procesamiento 101, 201. La unidad de comprobacion y proteccion PSU 41 tiene asimismo la funcion de controlar entradas y salidas locales, incluyendo las del panel BDI 401, de obtener el identificador HW y de detectar la tension vital suministrada por su propia unidad LPU 40 y por la LPU gemela.
La funcion de proteccion proporcionada en la unidad de comprobacion y proteccion PSU 41 utiliza las certificaciones (palabras de comprobacion) producidas por todos los algoritmos de las unidades de procesamiento 101, 201, tanto los producidos por la propia unidad de comprobacion y proteccion PSU 41 como los producidos por su propia unidad informatica LPU 40. Cuando el flujo previsto de palabras de comprobacion falta o esta modificado, la funcion de proteccion impide cualquier generacion de tension vital.
Otra funcion importante de la unidad de comprobacion y proteccion PSU 41 es el control de redundancia, que implica una comprobacion del alineamiento entre las dos unidades de procesamiento de respaldo en caliente 101, 201. Esta disposicion impide la posibilidad de que una unidad de procesamiento de respaldo 101, 201 que cambia al estado "operativo" incurra en un fallo de alineamiento, y provoque por lo tanto una discontinuidad logica en el sistema.
La unidad de comprobacion y proteccion PSU 41 tiene asimismo la funcion de generar un valor pseudoaleatorio, denominado VSN, que es utilizado como una marca de tiempo. Este valor identifica de manera unica el ciclo de procesamiento actual y se utiliza para marcar los datos vitales en el conjunto de calculo LEA 40, dado que la presencia de HW comercial que utiliza una memoria cache no permite asegurar una actualizacion continua de variables cada ciclo.
La unidad de comprobacion y proteccion PSU 41 tiene las siguientes interfaces internas:
la interfaz en serie RS232 46 para la conexion con la unidad informatica LPU 40 de la correspondiente unidad de procesamiento, interfaz que esta controlada por la seccion de control CLCVCU (unidad de control vital del ordenador logico central) 141;
la interfaz en serie RS485, que se utiliza para controlar el alineamiento y la sincronizacion logica con la unidad de comprobacion y proteccion PSU remota, estando controlada esta interfaz por la CLCVCU 141;
un canal 49, que se utiliza para transmitir y recibir sincronismo de hardware con la otra unidad de procesamiento, controlada por la CLCVCU 141.
La unidad de comprobacion y proteccion PSU 41 se compone ffsicamente de las tarjetas siguientes:
Una unidad de control vital del ordenador logico central (CLCVCU) 141, que esta disenada para funciones de comprobacion y proteccion, con la funcion de concentrar todas las palabras de comprobacion proporcionadas por las unidades de procesamiento 101, 201 a las que pertenece, para comprobar la secuencia de las mismas, para controlar la redundancia y para dotar a la unidad informatica LPU 40 de la marca de tiempo VSN correcta y de la contribucion vital, a utilizar posteriormente cuando se transmitan variables vitales remotas para certificar el funcionamiento adecuado de las mismas;
Una tarjeta 241 de aplicacion de ordenador logico central (CLCAP, Central Logic Computer Application), a traves de la cual se proporcionan ciertas soluciones de hardware espedficas por subsistema. En particular, este modulo actua como una interfaz con el panel de BDI 401, y como una interfaz para leer el identificador del HW y para detectar la tension vital. Ademas, esta tarjeta contiene algunos de los circuitos disenados para control de redundancia no vital.
Tal como resulta evidente a partir de la figura 8, la tarjeta CLCVCU tiene la misma, o sustancialmente la misma construccion y funciones que la VMMIVCU descrita en la realizacion anterior de las figuras 1 a 6. La estructura y gestion de palabras de comprobacion, incluyendo disposiciones de validacion, se describe en detalle, por ejemplo, en la memoria US 4.553.200, mencionada anteriormente en relacion con la realizacion anterior. La tarjeta CLCVCU 141 es una unica tarjeta Eurocard 6U con una construccion dedicada, es decir no basada en hardware comercial, que lleva a cabo funciones de comprobacion y proteccion. La seccion de comprobacion tiene la funcion de:
gestionar entradas y salidas no vitales;
controlar la adquisicion del identificador de HW y de la tension vital utilizando circuitos HW de seguridad intrmseca, impresos en la tarjeta CLCAP 241;
gestionar palabras de comprobacion y pasarlas a la seccion de proteccion, con un sincronismo bien definido; actualizar el valor de la marca de tiempo VSN en cada ciclo; transmitir la senal de inclusion a la seccion de proteccion;
5
10
15
20
25
30
35
40
45
50
controlar la redundancia y toda la logica de alineamiento y deteccion de estados, utilizando asimismo los circuitos impresos en la tarjeta ClCaP 241;
controlar la logica de conmutacion no vital, por medio de un conmutador estatico que, con una de las unidades de procesamiento de respaldo 101,201, activa solamente la transmision de tension vital a una de las dos unidades de procesamiento 101, 201 paralelas;
generar la senal vital de activacion a transmitir con las variables vitales remotas;
controlar las comunicaciones con la unidad informatica LPU 40, y mas precisamente con la tarjeta CLCMAIN 45;
controlar el intercambio de informacion con la CLCVCU 141 de la otra unidad de procesamiento 101, 201, incluyendo la senal de sincronismo de HW.
La senal de proteccion se obtiene asimismo utilizando el circuito VPC2 indicado anteriormente, con el que se puede generar una tension vital solamente si la seccion de comprobacion proporciona dclicamente las palabras de comprobacion correctas, utilizando una memoria compartida, y la senal de inclusion, por medio de un conmutador situado en la tarjeta CLCAP 241 y controlado por la CLCVCU 141. Por lo tanto, habitualmente la seccion de proteccion, en cada ciclo de nueva comprobacion, es decir cada 50 ms:
obtiene las diversas palabras de comprobacion proporcionadas por la seccion de comprobacion;
procesa palabras de comprobacion y proporciona una tension vital en base al valor de las mismas y a la senal de inclusion.
En la figura 8, la tarjeta CLCVCU de HW se ha dividido en varios bloques funcionales diferentes, agrupados en secciones de comprobacion y de proteccion, bloques que se consideraran individualmente a continuacion.
La logica de comprobacion 141 de la CLCVCU se obtiene ffsicamente por medio de un procesador Intel 80386.
La logica de comprobacion de la CLCVCU lleva a cabo las funciones siguientes:
Sincronizar los procesos de la unidad informatica LPU 40 y de la unidad de comprobacion y proteccion PSU 41. En cada ciclo de procesamiento, la logica de comprobacion produce una nueva marca de tiempo VSN (numero de secuencia vital) que define el avance temporal del subsistema. Los valores de VSN progresan, ciclo a ciclo, a traves de una sucesion predeterminada de estados, utilizando un divisor polinomial (PD, Polynomial Divider). Los valores de marca de tiempo VSN proporcionan proteccion contra la presencia de datos obsoletos en los procesadores que utilizan una memoria cache, tales como el Pentium utilizado en el CLCMAIN 45 en la unidad informatica LPU 40. (Se debe observar que el procesador 80386 no tiene memoria cache).
Sincronizacion de hardware de los dos microprocesadores 80386 en las tarjetas de comprobacion y proteccion CLCVCU de las dos unidades de procesamiento 101, 201 utilizando una conexion dedicada.
Comunicacion con la unidad informatica LPU 40. La comunicacion con la unidad informatica LPU 40 se produce en la lmea de comunicacion RS232 asmcrona propietaria, permitiendo la transmision de la siguiente informacion:
de la unidad informatica LPU 40 a la unidad de comprobacion y proteccion PSU 41, las palabras de comprobacion producidas por los algoritmos vitales residentes en la unidad informatica LPU, asf como informacion de diagnostico adicional;
de la PSU unidad de proteccion y de comprobacion 41 a la unidad informatica LPU 40: el valor de marca de tiempo del numero de secuencia vital (VSN) actualizado dclicamente, las variables vitales necesarias para el calculo adecuado de logica del sistema y para la transmision de variables vitales remotas, informacion de estado y otros datos de diagnostico.
La verificacion y comunicacion de palabras de comprobacion con el VPC2 indicado por el mismo numeral 2319 que en la realizacion anterior. La logica de comprobacion 1319 transmite las palabras de comprobacion producidas por los algoritmos contenidos en la unidad informatica LPU 40 y en el conjunto de comprobacion y proteccion PSU 41, a traves de una memoria de dos puertos, a la seccion de proteccion VPC2 2319. Los accesos a la memoria de dos puertos se sincronizan con la ayuda de indicadores.
Deteccion de estado de entradas no vitales locales y control de salidas no vitales locales, con la ayuda de circuitos especiales impresos en la tarjeta de aplicacion CLCAP 241.
Deteccion de estado de entradas vitales, con la ayuda de circuitos especiales impresos en la tarjeta de aplicacion CLCAP 241.
Comunicacion con el modulo de aplicacion por medio de circuitos especiales impresos en la CLCAP 241. Esta comunicacion se produce a traves de un bus interno, y la informacion intercambiada incluye:
5
10
15
20
25
30
35
40
45
50
variables de estado para entradas y salidas no vitales; la variable de inclusion y la comprobacion vital de la misma;
las variables vitales utilizadas para detectar la presencia de tension vital en la bifurcacion local y en la bifurcacion remota;
la variable vital asociada con la funcion de relectura del identificador de HW, asf como otras posibles variables asociadas con el estado de entradas vitales adicionales;
solicitud de conmutacion e informacion relacionada con la redundancia;
En general, la logica de comprobacion en el 80386 certifica las operaciones de todo el subsistema y controla la redundancia de las mismas.
La seccion de comprobacion 1319 de la tarjeta CLCVCU 141 de la unidad de comprobacion y proteccion PSU 41 incluye ademas:
Una EEPROM flash 25 que, como memoria no volatil, es utilizada para contener el codigo de aplicacion y los datos de configuracion utilizados por la logica de procesamiento de la tarjeta de comprobacion y proteccion CLCVCU 141.
Un divisor polinomial PD. Este dispositivo lleva a cabo la funcion de division polinomial utilizando hardware. Esta funcion es ampliamente utilizada, por ejemplo para la generacion de marcas de tiempo VSN, es decir para la funcion de generador de VSN (VSNG, VSN Generator), o para la generacion de palabras de comprobacion. Al implementar el algoritmo de division polinomial en forma de hardware, se proporciona una aceleracion de los algoritmos vitales que residen en la tarjeta CLCVCU 141.
Una memoria de dos puertos. La memoria de dos puertos actua como una interfaz ffsica entre la logica de comprobacion 1319 y la logica de proteccion 2139. La informacion intercambiada a traves de este area, asf como ciertos parametros de configuracion e indicadores de sincronizacion, son las palabras de comprobacion producidas por los algoritmos que residen en las diferentes logicas de la seccion de comprobacion. 1319
Una interfaz de comunicacion RS232 46. Esta interfaz permite comunicaciones con la unidad informatica LPU 40, y mas precisamente con la tarjeta CLCMAIN 45 de la misma. Se utiliza un protocolo propietario y se controla la transmision mediante la propia tarjeta CLCVCU 141.
Una interfaz de comunicacion RS485 48, 49. Esta interfaz permite la comunicacion entre las dos tarjetas CLCVCU 141 de las dos unidades de procesamiento 101, 201 y es utilizada para el intercambio de informacion relativa al proceso de alineamiento de logicas entre estas dos unidades de procesamiento 101,201.
Un puerto E/S hacia la tarjeta de aplicacion CLCAP 241. Esta interfaz controla la recepcion y transmision de datos, desde y hacia la tarjeta CLCAP 241, a traves de un bus interno adecuado.
La seccion de proteccion (VPC2) 2319. La seccion de proteccion proporciona solamente una tension vital de salida cuando se detecta en su entrada el flujo previsto de palabras de comprobacion. Consiste en un microprocesador 8085 y un filtro vital intrmsecamente seguro. Como resultado de la validacion mediante la logica residente en el microprocesador 8085, se generan dos senales hacia el filtro vital, que tienen caractensticas precisas de forma de onda (ondas cuadradas con frecuencias y ciclos de trabajo diferentes), y se utilizan para generar una tension detectable por medio de la tarjeta de aplicacion CLCAP 241. La salida de potencia del filtro vital es de 1,5 W a 12,5 V. Cada 50 ms, las formas de onda se regeneran dclicamente en base a las palabras de comprobacion recibidas por la seccion de comprobacion, intercambiando datos con la "memoria de dos puertos". Ademas, la parte de filtro activo, situada en la unidad de proteccion VPC2 2319 para generar la tension vital, requiere asimismo una senal de activacion, definida como Inclusion 51, con la que se puede controlar la funcion de respaldo en caliente. Debido al hecho de que solamente una de las dos unidades de procesamiento puede transmitir tension vital, esta unidad, antes de su comprobacion, es controlada por un conmutador estatico 401 que permite conectar una de las dos unidades de procesamiento 101,201, N o B, a una carga simulada 50.
El conmutador estatico 401 esta controlado mediante un circuito que esta distribuido en ambas tarjetas de aplicacion CLCAP 241 y mediante una logica interna o transmitiendo controles desde la seccion de comprobacion 1319.
La placa de aplicacion CLCAP 241 lleva a cabo funciones espedficas del CLC utilizando soluciones propietarias, es decir de hardware no comercial, sin utilizar microprocesadores y, en muchos casos, se tiene incluso que es la interfaz de circuitos de algunas funciones proporcionadas por la tarjeta de comprobacion y proteccion CLCVCU 141. Particularmente, el modulo comprende:
el conmutador de inclusion 51, desde el cual el filtro vital de la seccion de proteccion VPC2 2319 recibe la senal de inclusion;
los circuitos AOVD 52 utilizados para la adquisicion segura de tension vital;
5
10
15
20
25
30
35
40
45
50
55
los circuitos 54 para la adquisicion segura de identificador de HW (asf como otras entradas vitales); los circuitos 53 para el control no vital de entrada y de salida.
Las figuras 9 y 10 muestran la logica y el desglose de circuito de las tarjetas de comprobacion y proteccion CLCVCU 141 y las tarjetas de aplicacion CLCAP 241, donde los bloques oscuros pertenecen a la tarjeta de aplicacion CLCAP 241. La "carga simulada" 50 que se muestra en las figuras, ejemplifica la parte terminal de las dos bifurcaciones de tension vital, que necesita alguna carga simulada, manteniendo al mismo tiempo el aislamiento electrico. El "control de redundancia", indicado en general como 60 en la figura 9, se interpuso entre las dos unidades de procesamiento 101, 201, dado que el circuito esta distribuido entre las dos tarjetas CLCAP(N) y CLCAP(B), tal como resulta evidente por la figura 10.
El conmutador de inclusion 51 es un conmutador estatico que recibe un control de inclusion en su entrada desde la logica de ordenador 1319 de la seccion de comprobacion situada en el 80386 y, en base a este control, transmite la senal de inclusion que permite el funcionamiento adecuado del filtro activo. A continuacion, se vuelve a comprobar el valor de inclusion transmitido, para permitir que la logica de ordenador 1319 compruebe su correccion. La senal proporcionada por este conmutador se vuelve a comprobar mediante HW de seguridad intrmseca, que asegura la adquisicion segura del estado de salida no excitado.
La tarjeta AOVD 52 incluye dispositivos que permiten la deteccion segura de la situacion de corte de alimentacion despues del conmutador 401. La unidad de comprobacion y proteccion PSU 41 de cada unidad de procesamiento 101, 201 tiene un dispositivo AOVD, disenado para detectar tension vital a la salida de su bifurcacion y a la salida de la bifurcacion de la unidad de procesamiento gemela 152, 252. La deteccion del estado de corte de alimentacion permite certificar el posible fallo de una unidad de procesamiento 101, 201 y el funcionamiento adecuado del control de redundancia.
La unidad de control de redundancia, que se muestra en general en la figura 9, donde esta indicada por el numeral 60, se compone de un circuito que esta distribuido habitualmente en dos modulos de aplicacion, tal como se indica con 160 en la figura 10, y esta disenada para el control de operaciones de conmutacion entre las dos unidades de procesamiento 101, 201 ClC N/B.
La conmutacion se puede producir como resultado de un "fallo" o de una "solicitud". En el primer caso, el "control de redundancia" detecta la falta de tension vital a continuacion de los generadores de potencia y fuerza automaticamente el estado cerrado del conmutador estatico 401 de la unidad de procesamiento 101, 201 que no estaba suministrando tension a la tarjeta de aplicacion CLCAP 241. En el segundo caso, la logica que reside en el 80396 de la seccion de comprobacion 1319 controla el conmutador estatico 401 de una de las dos unidades de procesamiento 101,201 al estado cerrado, tras una solicitud manual (transmitida por medio de un panel BDI 301) o en base a logica interna.
La funcion de control de redundancia puede tener un funcionamiento independiente siempre que se detecte tension, ya sea a la salida de la bifurcacion de la unidad de procesamiento N 101 o a la salida de la bifurcacion de la unidad de procesamiento B 201, transmitiendo directamente un control de bloqueo sobre el generador de potencia vital de la seccion de proteccion 2319.
El modulo de aplicacion integra los dispositivos 54 que se utilizan para la adquisicion segura del identificador de HW de cada unidad de procesamiento 101, 201, y se indican en las figuras 9 y 10 como ID HW N e ID HW B, y con el numeral 54. Estos dispositivos pueden detectar vitalmente el identificador de cada unidad de procesamiento 101, 201, releyendo adecuadamente puertos configurados de puentes externos que permiten diferenciar las dos unidades de procesamiento 101, 201 CLC N y B. Los puentes estan conectados a la placa base del bastidor en el que estan conectadas las tarjetas CLCVCU y ClCAP 141 y 241.
El modo de aplicacion CLCAP 241 integra puertos no vitales de entrada y de salida que se utilizan para la adquisicion de los botones del panel BDI 301 y para controlar las luces y los timbres dispuestos en el mismo panel, con la finalidad de la aplicacion CLC.
Las figuras 11 y 12 representan el funcionamiento del ordenador logico central CLC 1 en forma grafica. El ordenador logico central CLC 1 tiene un funcionamiento dclico cuyo periodo equivale a un ciclo principal, que dura 500 ms. En cada ciclo principal, el ordenador logico central tiene que llevar a cabo todas sus funciones, y especialmente recibir datos desde nodos remotos, es decir unidades remotas, determinar el nuevo estado de salida, comprobar y certificar su propio funcionamiento y transmitir el nuevo estado de salida a los diferentes nodos remotos, es decir unidades remotas. Se asocia un valor de tiempo VSN diferente, o marca de tiempo, a cada ciclo principal, utilizando un algoritmo generador de secuencias pseudoaleatorias. El valor de marca de tiempo VSN esta asociado con las variables vitales utilizadas en las unidades informaticas LPU 40 de las dos unidades de procesamiento 101, 201, para asegurar la actualidad de los datos incluso cuando se utiliza HW comercial.
En la arquitectura del sistema indicada anteriormente, el ordenador logico central CLC 1 tiene una configuracion de respaldo en caliente, para conseguir una elevada disponibilidad de misiones del subsistema. El respaldo en caliente (para unidades de procesamiento 101, 201 CLCN/CLCB) requiere lo siguiente:
5
10
15
20
25
30
35
40
45
50
Las unidades de procesamiento 101,201 CLCN y CLCB tienen un funcionamiento independiente seguro;
Las unidades de procesamiento 101, 201 CLCN y CLCB se alinean continuamente para asegurar la continuidad de funcionamiento cuando se conmuta entre ambas;
las situaciones de fallo que provocan la perdida de ambas unidades de procesamiento 101, 201 CLCN y CLCB son lo suficientemente excepcionales.
El control de redundancia en las unidades de procesamiento 101, 201 CLCN/CLCB implica que estas unidades de procesamiento 101, 201 funcionan en paralelo por medio de fases de adquisicion de entrada y calculo de logica del sistema. Sin embargo, la transmision de las salida se asigna, para cada ciclo, solamente a una de las unidades de procesamiento 101 o 201, es decir a aquella que detecta una tension vital en su propia bifurcacion y no detecta ninguna en la bifurcacion de la otra unidad de procesamiento 101, 201 gemela. Esta condicion corresponde a la definicion de estado "operativo" de la unidad de procesamiento 101, 201. La otra unidad de procesamiento 101, 201 solamente es funcional y esta "disponible" si esta alineada adecuadamente con la "operativa".
La figura 10 muestra el ciclo de procesamiento del ordenador logico central CLC 1 en forma grafica.
A continuacion se describen las funciones principales a completar en cada ciclo principal, tal como se indica en la figura 10.
Recepcion de entrada
La fase de recepcion implica una operacion de descodificacion sobre los datos recibidos desde subsistemas externos y la adquisicion de entradas locales. Esta etapa se lleva a cabo en paralelo y en modo independiente por las dos unidades de procesamiento 101, 201 CLC N y CLC B, y todas las variables relevantes de ecuaciones booleanas se marcan con la marca de tiempo del ciclo en curso (VSNi). Cada unidad de procesamiento 101, 201 comprueba las variables vitales recibidas desde cada nodo remoto, es decir desde cada unidad remota; cuando se detecta una recepcion erronea o fallida, estas variables tienen que ser normalizadas, es decir ajustadas a un estado restrictivo para el sistema. La recepcion de variables vitales se certificara y la palabra de comprobacion generada sera utilizada como una confirmacion de funcionamiento adecuado de la unidad de procesamiento. Se obtienen datos de entrada mediante las unidades informaticas LPU 40, a las que la unidad de comprobacion y proteccion PSU 41 transmite marcas de tiempo generadas por la misma al inicio del ciclo de procesamiento principal del ordenador logico central CLC 1. Sin embargo, la unidad informatica LPU 40 calcula variables de entrada y datos de memoria relacionados con la configuracion del sistema, y genera palabras de comprobacion a transmitir a la unidad de comprobacion y proteccion PSU 41, es decir a la tarjeta de comprobacion 141 para validacion, a traves de la seccion de proteccion 2319, que reside en la propia tarjeta CLCVCU 141. Un flujo erroneo de palabras de comprobacion recibidas y validadas por la seccion de proteccion 2319 desencadena un procedimiento de seguridad, tal como se ha mencionado anteriormente.
Calculo de logica
El calculo de logica consiste en el procesamiento seguro de ecuaciones booleanas que describen la logica del sistema espedfico. Las entradas utilizadas por la logica son las entradas adquiridas por la funcion de "recepcion de entrada" y las variables de estado internas obtenidas a partir del ciclo de procesamiento anterior, es decir las marcadas con la marca de tiempo del ciclo anterior. Se utilizan algunas variables temporales, denominadas variables actuales (CR, current variables), para la resolucion de las ecuaciones. Todas las variables de entrada de las ecuaciones se marcan con el VSNi y se calcula la logica independientemente del estado de las dos unidades de procesamiento 101, 201. La logica es calculada por las unidades informaticas LPU 40 de las dos unidades de procesamiento, bajo la supervision de la unidad de comprobacion y proteccion PSU 41, en relacion con las marcas de tiempo y con las palabras de comprobacion generadas dclicamente durante el ciclo. Habitualmente, un ciclo de generacion y verificacion de palabras de comprobacion es un submultiplo de la duracion del ciclo principal, es decir del orden de unos 50 ms.
Las variables vitales de salida y de estado (denominadas asimismo VAR/AL) obtenidas a partir de la funcion de calculo ejecutada en las unidades informaticas LPU 30 se marcan adecuadamente no con el valor VSNi actual, sino con una marca de tiempo, es decir la marca de tiempo futura, es decir VSN i+1, y con un valor que esta asociado con el nombre de la unidad de procesamiento generadora (CLCN o CLCB) 101,201.
La funcion de calculo genera una palabra de comprobacion que contribuye a certificar el funcionamiento adecuado de las unidades informaticas LPU 40, y la proporciona a la unidad de comprobacion y proteccion PSU 41.
Intercambio de VAL/AL (variables vitales de salida y de estado) y DL (Degradation Level, nivel de degradacion).
Las variables de VAL/AL se intercambian mutuamente entre las dos unidades informaticas LPU 40 antes de cualquier utilizacion de las mismas. Las variables de intercambio se marcan en funcion del nombre de la unidad de procesamiento 101, 201 generadora y de la contribucion temporal VSNi+1.
5
10
15
20
25
30
35
40
45
50
Ademas de las variables de alineamiento, las dos unidades de procesamiento 101, 201 CLCN y CLCB intercambian informacion acerca de su estado de funcionamiento, y mas exactamente del valor de su nivel de degradacion (DL).
Progreso de VSN, seleccion de conjuntos de datos y generacion de mascara de inclusion.
Al comienzo de cada ciclo principal, la unidad de comprobacion y proteccion PSU 41 transmite el nuevo valor de marca de tiempo (VSNi+1) a la unidad informatica LPU 40, y este valor es utilizado para marcar las nuevas variables recibidas de unidades remotas.
En cada ciclo principal, cada unidad de procesamiento 101, 201 tiene dos conjuntos de datos: uno de estos esta determinado por la funcion de calculo de su propia unidad informatica LPU 40, y el otro esta determinado por la unidad informatica LPU 40 de la otra unidad de procesamiento 101, 201 gemela. En base a la evaluacion de su propio estado ("operativo", "disponible" y "apagado"), cada una de las dos unidades de procesamiento 101, 202 seleccionara uno de los dos conjuntos de datos, del que extrae las variables de salida remotas vitales a transmitir y las variables de estado internas a utilizar para el siguiente calculo. Esta seleccion debera satisfacer los criterios siguientes:
si la unidad de procesamiento 101, 201 esta en el estado "disponible", entonces selecciona los datos generados por la otra unidad de procesamiento 101,201;
en todos los demas casos, la unidad de procesamiento 101, 201 selecciona datos generados localmente.
En base a esta seleccion, se genera una mascara de datos que permitira que la unidad de procesamiento 101, 201 "emita" el conjunto de variables adecuado. Asimismo, un funcionamiento adecuado es la unica condicion para que la unidad de procesamiento 101, 201 "operativa" genere una mascara de inclusion, es decir una senal de activacion de transmision vital, mientras que en la unidad de procesamiento 101, 201 "disponible" esta limitada asimismo a una condicion de alineamiento adecuada. En cualquier caso, solamente la unidad de procesamiento 101, 201 "operativa" se asigna a la tarea de transmitir variables vitales a nodos remotos, es decir a unidades remotas.
Eliminacion de la mascara
Una vez que se ha seleccionado el conjunto disponible que se debe utilizar, y antes de transmitir variables vitales remotas, mediante las redes CNET, ZNET y FNET, se eliminara en estas variables la mascara de datos y estas contendran solamente la marca de tiempo actual (VSNi+1). Esta operacion se lleva a cabo mediante la funcion de eliminacion de la mascara.
Transmision de salida
La etapa de transmision de salida incluye tanto el nivel de aplicacion como niveles inferiores. Para salidas del nivel de aplicacion vital, se utiliza un protocolo de seguridad, y la contribucion del tiempo actual (VSN) asf como la mascara de inclusion se asocian a estas salidas. Si las variables a transmitir son de tipo no vital, puede ser utilizado un protocolo de transmision no seguro. En unos pocos casos, estas variables pueden estar en sf mismas controladas por un protocolo de transmision seguro. La informacion de diagnostico se transmite utilizando un protocolo dedicado, definido como DIAGL.
Estados y transiciones
El control de redundancia entre las unidades de procesamiento CLC N y CLC B, 101 y 201, requiere una definicion de los posibles estados de funcionamiento de las unidades de procesamiento 101, 201 individuales. Tal como se ha indicado anteriormente, se han definido los estados siguientes:
"Apagado"
"Inactivo"
"Operativo"
"Disponible"
Los requisitos logicos del ordenador central CLC disponen que solamente una unidad de procesamiento 101, 201 esta en el estado "operativo", y que la otra puede permanecer "disponible" si es alineada dclicamente con la unidad de procesamiento 101, 201 "operativa". La determinacion de estados para cada unidad de procesamiento 101, 201 esta asociada ffsicamente con la presencia o ausencia de tension vital a la salida de los conmutadores estaticos 401 en ambas tarjetas de comprobacion y proteccion CLCVCU 141 de la unidad de comprobacion y proteccion PSU 41. Gracias a circuitos especiales, denominados AOVD (Absence Of Voltage Detection, ausencia de deteccion de tension) 52 y a un procedimiento denominado prueba de AOVD local (LAT, Local AOVD Test) y prueba de AOVD remota (RAT, Remote AOVD Test), que puede determinar de manera segura la ausencia de tension en la bifurcacion local y en la bifurcacion remota, puede ser detectado el estado de cada una de las dos unidades de procesamiento 101, 201 gemelas. Si se asocia un valor "0" a la ausencia de tension y un valor "1" a la presencia de tension, los estados admitidos son:
5
10
15
20
25
30
35
40
45
LAT/RAT
Descripcion
0-0
Los dos subsistemas estan inactivos
1-0
El subsistema local esta en el estado "operativo", mientras que el subsistema remoto esta "inactivo" o "disponible".
0-1
El subsistema remoto esta en el estado "operativo", mientras que el subsistema local esta "inactivo" o "disponible".
(1-1)
Un caso que genera una palabra de comprobacion de restablecimiento, admitido solamente durante unos pocos milisegundos.
Tal como se ha mencionado anteriormente, solamente una unidad de procesamiento 101, 201 puede estar en el estado "operativo", de manera que no se admite el resultado de prueba LAT/RAT = 1-1. Este estado se puede producir solamente durante unos pocos milisegundos en la fase de conmutacion; si permanece y es detectado por la prueba LAT/RAT, provocara la generacion de una palabra de comprobacion erronea y el restablecimiento del ordenador logico central.
La unidad de procesamiento 101, 201 "disponible" puede cambiar al estado "operativo" por medio de la operacion de conmutacion, que se puede llevar a cabo como resultado de un "fallo" o de una "solicitud". El modo de conmutacion sera tal que asegure la continuidad de los estados de salida vitales.
Si la conmutacion es el resultado de un fallo, la unidad de procesamiento 101, 201 "disponible", cuando esta alineada adecuadamente, se cambia automaticamente al estado "operativo", siempre que la otra unidad de procesamiento 101, 202, como resultado de su fallo, abandone el estado "operativo" para pasar al estado "inactivo".
Cuando la conmutacion es el resultado de una solicitud, se proporciona un control manual, es decir un boton en el panel BDI, mediante el cual se puede cambiar una unidad de procesamiento 101, 201 del estado "disponible" al estado "operativo", mientras que la otra unidad de procesamiento se cambia automaticamente del estado "operativo" al estado "disponible". Durante el proceso de encendido, puede ser utilizado el mismo boton para seleccionar la unidad de procesamiento que se debe cambiar al estado "operativo". La operacion de conmutacion puede ser asimismo solicitada por la logica debido a razones de diagnostico, o para hacer que la unidad de procesamiento 101, 201 funcione de manera mas eficiente. De hecho, se asocia un nivel de degradacion (DL) a cada unidad de procesamiento 101, 201 CLCN y CLCB, por lo que se insta una conmutacion a peticion cuando la unidad de procesamiento 101, 201 "operativa" detecta un nivel de degradacion (DL) que es mayor que el de la unidad "disponible". (Cuanto mayor es el DL, mayor es el nivel de no disponibilidad de la unidad de procesamiento 101, 201.)
La figura 11 muestra las diversas transiciones entre estados.
El principio inventivo se muestra claramente en la descripcion de las diferentes realizaciones.
Dispositivos basados en microprocesador con arquitecturas no intrmsecamente seguras reciben la caractenstica de intrmsecamente seguros asociandolos con dispositivos de procesamiento adicionales intrmsecamente seguros, que estan disenados para comprobar el proceso del primer dispositivo en todas las fases relevantes, es decir vitales. Los primeros dispositivos de procesamiento estan programados y construidos para llevar a cabo procesamiento logico para funciones de control y/o de monitorizacion, y para llevar a cabo otras funciones, tal como generacion de imagenes a partir de datos de entrada o generacion de control de entrada o, tal como en el caso de la ultima realizacion, para calcular algoritmos que generan datos de salida o controles en base a datos de entrada o controles en base a logicas predeterminadas y previamente programadas. Las primeras unidades de procesamiento estan programadas ademas para llevar a cabo etapas de generacion de palabras de comprobacion, para la transmision dclica de palabras de comprobacion a las unidades de comprobacion y proteccion asociadas. A continuacion, solamente las ultimas llevan a cabo la funcion de comprobar el flujo de funcionamiento de las primeras unidades de procesamiento y validacion de palabras de comprobacion, y generan datos de comprobacion vital que se transmiten a las primeras unidades de procesamiento para permitir la ejecucion de los ciclos de procesamiento y/o llevar a cabo operaciones de seguridad que bloquean o conmutan las salidas de las unidades de procesamiento a condiciones o conjuntos de datos en salidas de seguridad predeterminadas.
Las unidades de comprobacion y proteccion se componen de dos secciones de microprocesador, estando una disenada exclusivamente para el control funcional de las unidades de procesamiento, y estando la otra disenada exclusivamente para la comprobacion y validacion de las palabras de comprobacion recibidas. En principio, esta arquitectura se conoce ya a partir del documento que se ha mencionado varias veces en la presente memoria. Las unidades de comprobacion y proteccion incluyen asimismo secciones espedficas de aplicacion, que estan disenadas para aplicaciones objetivo de la unidad de procesamiento, y aseguran que se llevan a cabo funciones de seguridad espedficas para dichas aplicaciones, cuando se detectan fallos en el flujo de palabras de comprobacion,
tal como apagar los monitores, o cuando se conmutan senales de activacion de transmision de una a otra de las unidades de procesamiento de logica del ordenador central de dos canales. La arquitectura de la unidad de comprobacion y procesamiento permite obtener sustancialmente la misma seccion de comprobacion y proteccion para cualquier tipo de aplicacion, sustancialmente con el mismo programa de comprobacion y procesamiento, 5 estando al mismo tiempo la unidad de comprobacion y procesamiento adaptada para el uso espedfico, gracias a la seccion de aplicacion, que esta disenada expresamente para satisfacer las especificaciones del hardware que depende de las unidades de procesamiento o esta servido por estas.
Obviamente, la invencion no se limita la descripcion y a las figuras anteriores, sino que se puede variar considerablemente, especialmente en relacion con su construccion, sin apartarse de las explicaciones inventivas 10 dadas a conocer anteriormente y reivindicadas a continuacion.

Claims (22)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Un aparato de procesamiento o de control intrmsecamente seguro que tiene una unidad de procesamiento con
    - un primer procesador y una memoria que contiene un programa predeterminado de procesamiento de datos y/o de control;
    - por lo menos un puerto de entrada para datos de entrada recibidos desde por lo menos una unidad remota;
    - por lo menos un puerto de salida para datos de salida a transmitir a por lo menos una unidad remota bajo el control de dicha primera unidad de procesamiento;
    caracterizado por que
    - la primera unidad de procesamiento comprende ademas medios para generar codigos unicos para la comprobacion funcional de las etapas de procesamiento o recepcion o transmision que se llevan a cabo (denominadas palabras de comprobacion) y un puerto para la transmision de las palabras de comprobacion generadas en cada etapa;
    - esta dispuesta ademas una unidad de comprobacion y proteccion funcional, que consiste en una segunda unidad de procesamiento segura, con una memoria que contiene un programa para comprobar las etapas funcionales de la primera unidad de procesamiento y un programa para comprobar la correccion de los codigos de control funcionales (denominados palabras de comprobacion) y la secuencia temporal de los mismos;
    - unidad de comprobacion y proteccion funcional que comunica, mediante un puerto de transmision recepcion, con la primera unidad de procesamiento, y genera senales de activacion para esta cuando las palabras de comprobacion son correctas;
    - mientras que dicha unidad de comprobacion y proteccion funcional genera senales para desactivar la actividad de la primera unidad de procesamiento y/o para forzar a la primera unidad de procesamiento a la transmision de datos de salida predeterminados para un control seguro de la unidad remota, o la mencionada unidad de comprobacion y proteccion funcional genera por sf misma datos de salida predeterminados para un control seguro de la unidad remota o senales para activar/desactivar funciones vitales de la unidad remota o de la primera unidad de procesamiento que son transmitidas a la unidad remota y/o a la primera unidad de procesamiento;
    unidad de comprobacion y proteccion que esta dotada de dos procesadores independientes, siendo uno de los dos procesadores para la ejecucion de dicho programa para comprobar las etapas funcionales de la primera unidad de procesamiento y siendo el otro de dichos dos procesadores para ejecutar el mencionado programa para comprobar la correccion de los codigos de control funcionales (denominados palabras de comprobacion) y la secuencia temporal de los mismos.
  2. 2. Un aparato segun la reivindicacion 1, caracterizado por que la unidad de comprobacion y proteccion funcional tiene dos unidades independientes con dos procesadores independientes y se compone de una subunidad de comprobacion, que lleva a cabo funciones de comprobacion funcional sobre la primera unidad de procesamiento, ejecutando un programa de comprobacion, y una subunidad de proteccion que solamente lleva a cabo funciones de verificacion sobre palabras de comprobacion y sobre la secuencia de las mismas, y que controla las unidades para la activacion/desactivacion de las funciones vitales de la unidad remota.
  3. 3. Un aparato segun la reivindicacion 2, caracterizado por que la subunidad de comprobacion esta programada asimismo de tal modo que genera por sf misma un flujo de palabras de comprobacion que describen su estado funcional y que estan relacionadas unicamente con las etapas de comprobacion ejecutadas, palabras de comprobacion que se transmiten a la subunidad de proteccion para una comprobacion de correccion y de secuencia.
  4. 4. Un aparato segun la reivindicacion 2, caracterizado por que la subunidad de comprobacion esta programada para generar datos vitales de activacion para la primera unidad de procesamiento, y para transmitirlos a la misma con el fin de permitir la consecucion adecuada de sus funciones.
  5. 5. Un aparato segun la reivindicacion 2, caracterizado por que la primera unidad de procesamiento ejecuta sucesivos ciclos de procesamiento que tienen una duracion predeterminada, y por que la subunidad de comprobacion esta programada de tal modo que genera una unica marca de tiempo para cada ciclo de ejecucion del programa de procesamiento de la primera unidad de procesamiento, marca de tiempo que cambia/aumenta en cada comienzo del ciclo de procesamiento de la primera unidad de procesamiento, estando dispuesta una lmea de comunicacion entre la subunidad de comprobacion y la primera unidad de procesamiento, a traves de la cual la unidad de procesamiento transmite la marca de tiempo al inicio de cada ciclo de procesamiento.
  6. 6. Un aparato segun la reivindicacion 5, caracterizado por que la unidad de comprobacion y proteccion inicia el ciclo de procesamiento de la primera unidad de procesamiento transmitiendo la marca de tiempo actual.
    5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
  7. 7. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que la primera unidad de procesamiento tiene una memoria para los datos de entrada a procesar, habitualmente la memoria cache del procesador, datos que se marcan con la marca de tiempo del ciclo de procesamiento actual, mientras que todos los datos de entrada marcados con marcas de tiempo de ciclos de procesamiento anteriores se borran de la memoria.
  8. 8. Un aparato segun una o varias de las reivindicaciones anteriores 4 a 7, caracterizado por que todos los datos introducidos en la primera unidad de procesamiento se marcan con las marcas de tiempo de los ciclos tanto actual como siguiente, para el procesamiento repetido de los mismos mediante la primera unidad de procesamiento.
  9. 9. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que la unidad de comprobacion y proteccion funcional tiene interfaces de comprobacion vital desde la unidad remota.
  10. 10. Un aparato segun la reivindicacion 9, caracterizado por que las interfaces de comprobacion vital se componen de unidades para transmitir y/o amplificar todas las salidas de datos desde la primera unidad de procesamiento, siendo dichas unidades de transmision y/o amplificacion activadas/desactivadas por la unidad de comprobacion y proteccion, en base al resultado de la verificacion de la correccion y de la secuencia de las palabras de comprobacion.
  11. 11. Un aparato segun la reivindicacion 10, caracterizado por que las interfaces de comprobacion vital de las unidades remotas se componen de fuentes de alimentacion para dichas unidades remotas, que se controlan para el suministro de tension vital mediante la unidad de comprobacion y proteccion, en base al resultado de la verificacion de la correccion y de la secuencia de las palabras de comprobacion.
  12. 12. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que la primera unidad de procesamiento tiene unidades de control de la unidad remota, que transmiten datos de salida a la unidad remota por medio de interfaces de transmision/amplificacion de la unidad de comprobacion y proteccion.
  13. 13. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que tiene dos primeras unidades de procesamiento en las que se ejecutan programas para controlar y comprobar por lo menos una unidad remota y/o multiples unidades remotas diferentes y/o por lo menos parcialmente identicas, estando asociada una unidad de comprobacion y proteccion dedicada a cada una de dichas dos primeras unidades de procesamiento, y siendo identicas dichas dos primeras unidades de procesamiento y estando programadas con el mismo programa de procesamiento, programa de procesamiento que se ejecuta simultaneamente y en paralelo mediante dichas dos unidades de procesamiento, mientras que estan dispuestos medios para sincronizar las unidades de comprobacion y proteccion y una interfaz de activacion, que se utiliza para activar la transmision de datos de salida de cada una de dichas dos primeras unidades de procesamiento a la unidad o unidades remotas, interfaz de activacion que tiene un funcionamiento intrmsecamente seguro y activa el estado operativo para la unidad de transmision de solamente una de dichas dos primeras unidades de procesamiento.
  14. 14. Un aparato segun la reivindicacion 13, caracterizado por que cada unidad de comprobacion y proteccion, asociada a una de dichas dos primeras unidades de procesamiento respectivamente, incluye una subunidad para detectar tension vital en la unidad de transmision de cada una de las dos primeras unidades de procesamiento y un conmutador estatico, para suministrar tension vital a las unidades de transmision, estando dotadas cada una de las subunidades de deteccion de tension vital de sensores de deteccion de tension vital, para detectar la tension vital en ambas unidades de transmision de dichas dos primeras unidades de procesamiento.
  15. 15. Un aparato segun la reivindicacion 14, caracterizado por que cada una de las subunidades de comprobacion y proteccion tiene una unidad de control de redundancia, que tiene entradas para datos de presencia de tension vital procedentes de las dos subunidades de deteccion de tension vital, asociadas con una de las dos subunidades de comprobacion y proteccion respectivamente, y salidas para controlar el corte del suministro de tension vital a una de las dos unidades de transmision, en funcion de los datos de presencia de tension vital recibidos.
  16. 16. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que genera imagenes correspondientes a los datos recibidos desde por lo menos una o varias unidades remotas, estando programada la primera unidad de procesamiento para la recepcion de datos, la interpretacion de datos en relacion con un mapa de configuracion del sistema de unidades remotas almacenado en la misma, y para la generacion de datos de reconstruccion de imagenes a partir de datos de entrada, consistiendo dicha primera unidad de procesamiento en una tarjeta de microprocesador y uno o varios adaptadores graficos, mientras que la unidad de comprobacion y proteccion tiene una tarjeta para amplificar/transmitir las senales del adaptador grafico a monitores de video, estando conectadas las salidas de los adaptadores graficos de la unidad de procesamiento a dicha tarjeta de amplificacion/transmision, estando conectada esta ultima a un suministro de tension vital a traves de un conmutador vital controlado por la seccion de proteccion en base a la correccion de las palabras de comprobacion recibidas.
  17. 17. Un aparato segun una o varias de las reivindicaciones anteriores 14 a 16, caracterizado por que la unidad de procesamiento es un generador de controles a partir de entradas de teclado, estando el teclado conectado a una unidad de procesamiento para transformar controles graficos o alfanumericos en datos de control y para transmitirlos a una unidad de procesamiento que forma una seccion de la unidad de comprobacion y proteccion, cuya interfaz
    5
    10
    15
    20
    25
    30
    esta conectada al suministro de tension vital por medio de un conmutador vital controlado por la unidad de comprobacion y proteccion.
  18. 18. Un aparato segun la reivindicacion 17 cuando depende de la reivindicacion 16, caracterizado por que la unidad de procesamiento es un adaptador de procesamiento de graficos segun la reivindicacion 16, que genera en la pantalla ecos de controles de entrada de teclado, estando dotada la unidad de comprobacion y proteccion de una tarjeta de interfaz para la conexion de los adaptadores graficos de las unidades de procesamiento a monitores, y de una interfaz para la conexion del teclado de control con la unidad de procesamiento.
  19. 19. Un aparato segun las reivindicaciones 13 a 15, caracterizado por que las dos unidades de procesamiento son dos ordenadores logicos centrales paralelos, cada uno de los cuales forma uno de los dos canales de procesamiento paralelos de un ordenador logico central, disenado en particular para el control de sistemas de estacion ferroviaria.
  20. 20. Un aparato segun la reivindicacion 19, caracterizado por que cada una de las dos unidades de procesamiento esta conectada a una unidad de comprobacion y proteccion, dichas unidades comunicando para una comprobacion de sincronizacion, mediante comparar las marcas de tiempo generadas por las mismas, y estando conectadas dichas unidades de comprobacion y proteccion a sensores de tension vital que detectan la tension vital en dos unidades de transmision de datos de salida, estando integradas cada una de las ultimas en una de las dos unidades de procesamiento, y activando dicha unidad de comprobacion y proteccion la unidad de transmision de solamente una de las dos unidades de procesamiento, en base al resultado de la deteccion de tension vital en la misma, y en base a la verificacion de las palabras de comprobacion procedentes de las dos unidades de procesamiento.
  21. 21. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que forma parte de un sistema que comprende una o varias unidades remotas, que son por lo menos parcialmente diferentes y/o por lo menos parcialmente identicas, y comunican con al aparato, a saber con la unidad de procesamiento del mismo, teniendo dicho aparato una memoria para almacenar datos de configuracion del sistema y una memoria para un programa de gestion de la unidad de procesamiento, y teniendo un programa para comprobar los datos de configuracion y/o el programa de procesamiento, que genera palabras de comprobacion de correccion de los datos de configuracion y del codigo del programa de procesamiento, que se envfan para comprobar la correccion a la unidad de comprobacion y proteccion funcional, comprobandose los datos de configuracion y/o el codigo del programa de procesamiento en conjuntos parciales y sucesivos de datos y/o de codigo, dispuestos en un numero predeterminado de ciclos sucesivos de ejecucion del programa.
  22. 22. Un aparato segun una o varias de las reivindicaciones anteriores, caracterizado por que se ejecutan multiples ciclos sucesivos para la generacion de palabras de comprobacion funcionales y la verificacion de palabras de comprobacion, los cuales se repiten a frecuencias correspondientes a submultiplos de la duracion total del ciclo de procesamiento.
ES03732589.1T 2002-05-03 2003-04-29 Aparato de procesamiento o de control intrínsecamente seguro Expired - Lifetime ES2569518T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
ITSV20020018 2002-05-03
IT2002SV000018A ITSV20020018A1 (it) 2002-05-03 2002-05-03 Dispositivo di elaborazione o comando operante in sicurezza intrinseca
PCT/EP2003/050132 WO2003093999A2 (en) 2002-05-03 2003-04-29 Inherently fail safe processing or control apparatus

Publications (1)

Publication Number Publication Date
ES2569518T3 true ES2569518T3 (es) 2016-05-11

Family

ID=29287875

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03732589.1T Expired - Lifetime ES2569518T3 (es) 2002-05-03 2003-04-29 Aparato de procesamiento o de control intrínsecamente seguro

Country Status (9)

Country Link
US (1) US7328369B2 (es)
EP (1) EP1573543B1 (es)
CN (1) CN1846198B (es)
AU (1) AU2003238521A1 (es)
CA (1) CA2484720C (es)
ES (1) ES2569518T3 (es)
HU (1) HUE028808T2 (es)
IT (1) ITSV20020018A1 (es)
WO (1) WO2003093999A2 (es)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040255106A1 (en) * 2003-06-10 2004-12-16 Rothman Michael A. Recovery of operating system configuration data by firmware of computer system
ITTO20040325A1 (it) * 2004-05-14 2004-08-14 Ansaldo Segnalamento Ferroviario Spa Dispositivo per la trasmissione sicura di dati verso boe per la segnalazione ferroviaria
EP1672505A3 (en) * 2004-12-20 2012-07-04 BWI Company Limited S.A. Fail-silent node architecture
EP1764694B1 (fr) * 2005-09-16 2008-07-30 Siemens Transportation Systems S.A.S. Procédé et système de contrôle redondant de calculateurs sécurisés
US7643307B2 (en) * 2005-09-29 2010-01-05 International Business Machines Corporation Fail safe redundant power supply in a multi-node computer system
US7546185B2 (en) 2005-12-30 2009-06-09 Canadian National Railway Company System and method for computing railcar switching solutions using an available space search logic assigning different orders of preference to classification tracks
US7742849B2 (en) 2005-12-30 2010-06-22 Canadian National Railway Company System and method for computing car switching solutions in a switchyard using car ETA as a factor
US8055397B2 (en) 2005-12-30 2011-11-08 Canadian National Railway Company System and method for computing rail car switching sequence in a switchyard
US7818101B2 (en) 2005-12-30 2010-10-19 Canadian National Railway Company System and method for computing rail car switching solutions in a switchyard using an iterative method
US7457691B2 (en) 2005-12-30 2008-11-25 Canadian National Railway Company Method and system for computing rail car switching solutions in a switchyard based on expected switching time
US7657348B2 (en) 2005-12-30 2010-02-02 Canadian National Railway Company System and method for computing rail car switching solutions using dynamic classification track allocation
US7792616B2 (en) 2005-12-30 2010-09-07 Canadian National Railway Company System and method for computing rail car switching solutions in a switchyard including logic to re-switch cars for block size
US7742848B2 (en) 2005-12-30 2010-06-22 Canadian National Railway Company System and method for computing rail car switching solutions in a switchyard including logic to re-switch cars for block pull time
US8060263B2 (en) 2005-12-30 2011-11-15 Canadian National Railway Company System and method for forecasting the composition of an outbound train in a switchyard
US7565228B2 (en) 2005-12-30 2009-07-21 Canadian National Railway Company System and method for computing railcar switching solutions in a switchyard using empty car substitution logic
US7747362B2 (en) 2005-12-30 2010-06-29 Canadian National Railway Company System and method for computing rail car switching solutions by assessing space availability in a classification track on the basis of block pull time
US7596433B2 (en) 2005-12-30 2009-09-29 Canadian National Railway Company System and method for computing rail car switching solutions in a switchyard with partially occupied classification track selection logic
US7751952B2 (en) 2005-12-30 2010-07-06 Canadian National Railway Company System and method for computing rail car switching solutions in a switchyard including logic to re-switch cars for arrival rate
US8525842B1 (en) * 2006-06-16 2013-09-03 Nvidia Corporation System and method for utilizing semaphores in a graphics pipeline
US8726565B2 (en) * 2006-08-30 2014-05-20 Deere & Company Sheet mulch assembly for an agricultural drip irrigation system
JP2008139917A (ja) * 2006-11-30 2008-06-19 Yokogawa Electric Corp 機器点検システム
CN100524239C (zh) * 2006-12-15 2009-08-05 英业达股份有限公司 储存装置的数据保护方法
US20090076628A1 (en) * 2007-09-18 2009-03-19 David Mark Smith Methods and apparatus to upgrade and provide control redundancy in process plants
US8328143B2 (en) * 2008-01-17 2012-12-11 Lockheed Martin Corporation Method for isolation of vital functions in a centralized train control system
DE102008060011A1 (de) * 2008-11-25 2010-05-27 Pilz Gmbh & Co. Kg Sicherheitssteuerung und Verfahren zum Steuern einer automatisierten Anlage
US7859245B2 (en) * 2009-04-27 2010-12-28 Ansaldo Sts Usa, Inc. Apparatus, system and method for outputting a vital output for a processor
US8565361B2 (en) * 2009-08-21 2013-10-22 Aviat U.S., Inc. Synchronization distribution in microwave backhaul networks
SE538207C2 (sv) 2009-09-23 2016-04-05 Abb Technology Ltd Säkerhetsarrangemang
CN102044158B (zh) * 2009-10-21 2013-03-27 上海麦士格瑞交通智能技术有限公司 基于通用通讯标准的交通信号控制系统
US8862934B2 (en) * 2009-12-02 2014-10-14 Nec Corporation Redundant computing system and redundant computing method
US20110302660A1 (en) * 2010-06-02 2011-12-08 Rupaka Mahalingaiah Method and apparatus for securing digital devices with locking clock mechanism
US8589723B2 (en) * 2010-12-22 2013-11-19 Intel Corporation Method and apparatus to provide a high availability solid state drive
US8714494B2 (en) * 2012-09-10 2014-05-06 Siemens Industry, Inc. Railway train critical systems having control system redundancy and asymmetric communications capability
US9233698B2 (en) * 2012-09-10 2016-01-12 Siemens Industry, Inc. Railway safety critical systems with task redundancy and asymmetric communications capability
DE102012216744A1 (de) * 2012-09-19 2014-04-03 Siemens Aktiengesellschaft Steuerung von Schienenfahrzeugen
FR3002054B1 (fr) * 2013-02-08 2015-03-13 Thales Sa Dispositif de securisation d'une application client pour un systeme d'affichage de symbologie du type client-serveur
CN103529747A (zh) * 2013-10-24 2014-01-22 中铁隧道集团有限公司 凿岩台车故障处理系统
IN2013CH05539A (es) 2013-12-02 2015-06-12 Infosys Ltd
US9397792B2 (en) 2013-12-06 2016-07-19 Intel Corporation Efficient link layer retry protocol utilizing implicit acknowledgements
US9325449B2 (en) * 2013-12-06 2016-04-26 Intel Corporation Lane error detection and lane removal mechanism to reduce the probability of data corruption
US9618909B2 (en) * 2013-12-20 2017-04-11 Thales Canada Inc Safety assurance of multiple redundant systems
US9628382B2 (en) 2014-02-05 2017-04-18 Intel Corporation Reliable transport of ethernet packet data with wire-speed and packet data rate match
US10520529B2 (en) * 2016-03-23 2019-12-31 Cooper Technologies Company Adapters for testing electrical equipment
CN105739299B (zh) * 2016-04-29 2020-01-07 固安信通信号技术股份有限公司 基于二乘二取二安全冗余系统的控制装置
CN106059725A (zh) * 2016-07-21 2016-10-26 中铁二院重庆勘察设计研究院有限责任公司 一种导轨电车车载双机热备系统
DE102016014417B4 (de) * 2016-12-03 2020-03-26 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Schaltung zur überwachung eines datenverarbeitungssystems
CN107590009B (zh) * 2017-08-31 2020-12-01 深圳市恒扬数据股份有限公司 用于主机运行过程的故障处理方法及装置
CN108508295A (zh) * 2018-03-29 2018-09-07 北京润科通用技术有限公司 一种开关量故障注入系统及方法
CN108469807A (zh) * 2018-03-29 2018-08-31 北京润科通用技术有限公司 一种mvb总线故障注入系统及方法
EP3549842B9 (en) * 2018-04-06 2025-08-13 Hitachi Rail GTS Deutschland GmbH Train traffic control system and method for safe displaying a state indication of a route and train control system
CN108860223B (zh) 2018-05-31 2020-11-06 北京全路通信信号研究设计院集团有限公司 一种数据处理系统及方法
JP2021004788A (ja) * 2019-06-26 2021-01-14 株式会社デンソー センサ装置
CN112540884B (zh) * 2019-09-23 2024-04-05 西安诺瓦星云科技股份有限公司 热备份效果检测方法、装置、系统和计算机可读介质
CA3157233A1 (en) * 2019-12-09 2021-06-17 Alon Green System and method for vehicle control
CN111030937A (zh) * 2019-12-16 2020-04-17 迈普通信技术股份有限公司 一种报文的转发方法、装置及存储介质
CN113156299A (zh) * 2021-05-10 2021-07-23 上海博茵堡电子科技有限公司 一种主从结构的电路通断检查装置
US11789806B2 (en) * 2021-07-01 2023-10-17 Fort Robotics, Inc. Method for encoded diagnostics in a functional safety system
WO2023164180A1 (en) * 2022-02-24 2023-08-31 Advanced Rail Systems, Llc Railroad computing system and device
CN115114153A (zh) * 2022-06-21 2022-09-27 平安普惠企业管理有限公司 一种流程测试方法、装置、设备及介质
EP4548328A1 (de) * 2022-08-31 2025-05-07 Siemens Mobility GmbH Vorrichtung zur steuerung eines verkehrssystems, stellbares element eines verkehrssystems, verkehrssystem

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59146069A (ja) * 1983-02-08 1984-08-21 Canon Inc 光源安定化装置
US5125090A (en) 1983-11-10 1992-06-23 Sasib S.P.A. Apparatus for vitally sensing binary data for a vital processor implemented with non-vital hardware
US4553200A (en) 1983-11-10 1985-11-12 General Signal Corporation Modular output driver for vital processor systems
GB8729901D0 (en) * 1987-12-22 1988-02-03 Lucas Ind Plc Dual computer cross-checking system
GB8803044D0 (en) * 1988-02-10 1988-03-09 Salplex Ltd Information handling & control systems
US4964126A (en) * 1988-09-30 1990-10-16 Massachusetts Institute Of Technology Fault tolerant signal processing machine and method
US5008805A (en) * 1989-08-03 1991-04-16 International Business Machines Corporation Real time, fail safe process control system and method
DE4005393A1 (de) * 1990-02-21 1991-08-22 Standard Elektrik Lorenz Ag Einrichtung zur signaltechnisch sicheren darstellung eines meldebildes
US5630056A (en) * 1994-09-20 1997-05-13 Stratus Computer, Inc. Digital data processing methods and apparatus for fault detection and fault tolerance
US5671348A (en) * 1995-06-06 1997-09-23 General Railway Signal Corporation Non-vital turn off of vital output circuit
US5771178A (en) * 1995-06-12 1998-06-23 Scully Signal Company Fail-safe fluid transfer controller
KR100206887B1 (ko) * 1995-12-31 1999-07-01 구본준 프로그램 오동작 방지를 위한 씨피유
JP2830857B2 (ja) * 1996-09-09 1998-12-02 三菱電機株式会社 データストレージシステム及びデータストレージ管理方法
US5812102A (en) * 1997-03-12 1998-09-22 Union Switch & Signal Inc. Vital monitoring system for seven-segment display used in railroad applications
US6058491A (en) * 1997-09-15 2000-05-02 International Business Machines Corporation Method and system for fault-handling to improve reliability of a data-processing system
DE19801137A1 (de) * 1998-01-14 1999-07-22 Siemens Ag Fehlersichere Prozesseingabe und Prozessausgabe
US6173414B1 (en) * 1998-05-12 2001-01-09 Mcdonnell Douglas Corporation Systems and methods for reduced error detection latency using encoded data
US6223304B1 (en) * 1998-06-18 2001-04-24 Telefonaktiebolaget Lm Ericsson (Publ) Synchronization of processors in a fault tolerant multi-processor system
US6510531B1 (en) * 1999-09-23 2003-01-21 Lucent Technologies Inc. Methods and systems for testing parallel queues

Also Published As

Publication number Publication date
CA2484720C (en) 2016-06-14
ITSV20020018A1 (it) 2003-11-03
EP1573543A2 (en) 2005-09-14
HUE028808T2 (en) 2017-01-30
AU2003238521A8 (en) 2003-11-17
WO2003093999A3 (en) 2006-05-18
CN1846198B (zh) 2010-06-09
EP1573543B1 (en) 2016-02-03
AU2003238521A1 (en) 2003-11-17
US7328369B2 (en) 2008-02-05
CA2484720A1 (en) 2003-11-13
US20050149795A1 (en) 2005-07-07
CN1846198A (zh) 2006-10-11
WO2003093999A2 (en) 2003-11-13

Similar Documents

Publication Publication Date Title
CN1846198B (zh) 自动防故障的处理或控制装置
CN101694588B (zh) 一种二乘二取二主备控制切换系统和方法
US5068851A (en) Apparatus and method for documenting faults in computing modules
EP0306252B1 (en) Fault tolerant computer system input/output interface
JPH07507893A (ja) プロセス制御コンピュータ用保安フロントエンド通信システムおよび方法
CN113791937B (zh) 一种数据同步冗余系统及其控制方法
JP2008009795A (ja) 診断装置,回線診断方法及び回線診断プログラム
ES2309687T3 (es) Procedimiento y sistema de control redundante para ordenadores seguros.
CN113204767A (zh) 一种bmc启动方法、装置、设备及可读存储介质
ES2837444T3 (es) Procedimiento para el intercambio de mensajes entre dispositivos relevantes para la seguridad
JP3208060B2 (ja) 並列二重系電子連動装置
ES2215753T3 (es) Diseño de placa madre con linea comun vme virtual, tolerante a fallos.
RU2569576C1 (ru) Управляющий модуль
Grunske Transformational patterns for the improvement of safety properties in architectural specification
ES2217013T3 (es) Modulo electronico integrado con logica central duplicada y alimentacion de fallos del hardware con fines de comprobacion.
JP2008009794A (ja) プログラマブル電子制御装置及びプログラマブル電子装置の通信制御方法
CN116506082B (zh) 一种应用于应答器传输模块的二取二系统
JP4140615B2 (ja) データ通信方法及び安全システム
David et al. Development of a fault tolerant computer system for the HERMES space shuttle
JPH06245280A (ja) 情報伝送装置
RU50929U1 (ru) Устройство с защитой информации для бортовых информационно-управляющих систем подвижного состава
KR20030094913A (ko) 계층적 구조를 지원하는 직렬 버스형 형상 인식 및 경보장치
KR100606888B1 (ko) 이동통신 시스템에서 디지털 송수신기 보드 제어 이중화장치 및 방법
CN101098211A (zh) 发送控制装置、接收控制装置、以及通信系统
CN118426958A (zh) 一种用于轨道交通信号控制系统的云平台系统