ES2974420T3 - Circuito lógico programable de control de una instalación eléctrica, en particular una instalación nuclear y dispositivo asociado - Google Patents
Circuito lógico programable de control de una instalación eléctrica, en particular una instalación nuclear y dispositivo asociado Download PDFInfo
- Publication number
- ES2974420T3 ES2974420T3 ES18708146T ES18708146T ES2974420T3 ES 2974420 T3 ES2974420 T3 ES 2974420T3 ES 18708146 T ES18708146 T ES 18708146T ES 18708146 T ES18708146 T ES 18708146T ES 2974420 T3 ES2974420 T3 ES 2974420T3
- Authority
- ES
- Spain
- Prior art keywords
- programmable logic
- logic circuit
- functional block
- dedicated
- control device
- 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.)
- Active
Links
- 238000010616 electrical installation Methods 0.000 title claims abstract description 19
- 238000009434 installation Methods 0.000 title claims abstract description 12
- 230000006870 function Effects 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000012423 maintenance Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000013500 data storage Methods 0.000 claims description 5
- 239000000835 fiber Substances 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 239000013307 optical fiber Substances 0.000 description 4
- 230000004308 accommodation Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008672 reprogramming Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000009835 boiling Methods 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000009529 body temperature measurement Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 239000003112 inhibitor Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
-
- G—PHYSICS
- G21—NUCLEAR PHYSICS; NUCLEAR ENGINEERING
- G21D—NUCLEAR POWER PLANT
- G21D3/00—Control of nuclear power plant
-
- G—PHYSICS
- G21—NUCLEAR PHYSICS; NUCLEAR ENGINEERING
- G21D—NUCLEAR POWER PLANT
- G21D3/00—Control of nuclear power plant
- G21D3/001—Computer implemented control
-
- G—PHYSICS
- G21—NUCLEAR PHYSICS; NUCLEAR ENGINEERING
- G21D—NUCLEAR POWER PLANT
- G21D3/00—Control of nuclear power plant
- G21D3/008—Man-machine interface, e.g. control room layout
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17704—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
- H03K19/17708—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays
- H03K19/17716—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register
- H03K19/1772—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register with synchronous operation of at least one of the logical matrixes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17736—Structural details of routing resources
- H03K19/17744—Structural details of routing resources for input/output signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/17764—Structural details of configuration resources for reliability
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/17768—Structural details of configuration resources for security
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E30/00—Energy generation of nuclear origin
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E30/00—Energy generation of nuclear origin
- Y02E30/30—Nuclear fission reactors
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Plasma & Fusion (AREA)
- High Energy & Nuclear Physics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Programmable Controllers (AREA)
- Logic Circuits (AREA)
- Microcomputers (AREA)
Abstract
La invención se refiere a un circuito lógico programable (10) para controlar una instalación eléctrica, en particular una instalación nuclear, incluyendo el circuito lógico programable una unidad funcional (14) que comprende: - una pluralidad de tipos de bloque funcional (FB1, FBi, FBN) siendo adecuados dos tipos distintos de bloque funcional para ejecutar al menos una función distinta, - al menos un módulo de procesamiento adecuado para recibir al menos una secuencia (46) de bloques funcionales a ejecutar, - al menos una memoria interna (38) configurada para almacenar al menos dicha secuencia (46). Según la invención, el circuito lógico programable (10) comprende un único bloque funcional de cada tipo, siendo un bloque funcional determinado apto para ser llamado varias veces, y un módulo de ejecución (22) configurado para ejecutar el bloque o bloques funcionales llamados en serie, según dicha secuencia (46). (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Circuito lógico programare de control de una instalación eléctrica, en particular una instalación nuclear y dispositivo asociado
[0001]La presente invención se refiere a un circuito lógico programare de control de una instalación eléctrica,<en particular una instalación nuclear, comprendiendo el circuito lógico programa>r<e una unidad funcional que>comprende:
- una pluralidad de tipos de bloques funcionales, siendo dos tipos de bloques funcionales distintos capaces de ejecutar al menos una función distinta,
- al menos un módulo de tratamiento capaz de recibir al menos una secuencia de bloque o bloques funcionales para su ejecución, y
- al menos una memoria interna configurada para almacenar al menos dicha secuencia.
[0002]Además, la presente invención se refiere también a un dispositivo de control de una instalación eléctrica, en particular una instalación nuclear, comprendiendo el dispositivo de control al menos dicho circuito lógico programable.
[0003]El documento US 2015/0204944 A1 describe un circuito lógico programable de control de una instalación nuclear.
[0004]Por el documento EP 2988420 A1 se conoce un sistema de control de instalación eléctrica basado en una tarjeta electrónica que comprende dos circuitos lógicos programables FPGA (del inglésField Prngrammable Gate Array).
[0005]Un primer FPGA desempeña el papel de maestro y comprende un conjunto de bloques funcionales que comprende tantos bloques funcionales del mismo tipo, por ejemplo de tipo «Y», como el número de instancias de este tipo de bloque para una aplicación dada de instrumentación y control de una instalación nuclear. El segundo FPGA está conectado punto a punto con las entradas y la salida del primer FPGA y desempeña el papel de matriz de conexión física de los bloques funcionales del primer FPGA.
[0006]Para cada modificación de la aplicación de instrumentación y control considerada o en caso de cambio de aplicación de instrumentación y control, es necesaria una reprogramación en lenguaje de descripción de hardware VHDL (del inglésvery high speed integrated circuit (VHSIC) hardware description language (HDL))o Verilog y una recualificación del segundo FPGA que conecte entre sí los bloques funcionales.
[0007]De hecho, en un contexto de instrumentación y control de instalación nuclear, cada diseño de FPGA debe cualificarse con mucho detenimiento empleando procedimientos complejos de desarrollo y de verificación.
[0008]Dicha etapa de reprogramación en lenguaje de descripción de hardware, VHDL o Verilog, por ejemplo, requiere que el operador tenga conocimientos de este lenguaje, y la recualificación requiere tiempo y esfuerzos de verificación.
[0009]Con el fin de paliar estos inconvenientes se describe una solución en el documento EP 3107212 A1 basada en la implementación de una FPGA que comprende también un conjunto de bloques funcionales ejecutados en paralelo según varios ciclos sucesivos para obtener el resultado de una aplicación dada de instrumentación y control de una instalación nuclear. Según esta solución el circuito FPGA comprende al menos tantos bloques funcionales del mismo tipo como el número de instancias de este tipo de bloque. Además, en este documento, un transportador de datos permite hacer transitar valores binarios y analógicos entre los bloques funcionales que presentan cada uno una arquitectura específica que les permite respectivamente extraer del transportador y transmitir al transportador sus datos de entrada y de salida.
[0010]Sin embargo, esta solución requiere un número de bloques funcionales del mismo tipo importante y definido de manera empírica a partir de la experiencia adquirida en el diseño de sistemas de instrumentación y control de instalación nuclear. Además, la ejecución en paralelo de los bloques funcionales en el curso de varios ciclos sucesivos necesarios para obtener el resultado asociado a una aplicación requiere la implementación de una sincronización, especialmente por medio de temporizaciones, de manera que garantice el determinismo de los datos que transitan entre cada bloque funcional y entre cada ciclo.
[0011]El objeto de la invención es, por tanto, proponer una solución alternativa para la instrumentación y control de una instalación nuclear, basada en la implementación de un circuito lógico programable para la cual, en caso de cambio de aplicación de instrumentación y control, se evita una reprogramación en lenguaje VHDL o una recualificación del módulo de tratamiento, a la vez que se reduce el número de recursos lógicos implementados y se responde de manera más sencilla a las exigencias de demostración determinista de seguridad requeridas para un dispositivo de seguridad, tal como un dispositivo de control de una instalación nuclear.
[0012]Para este fin, la invención tiene por objeto un circuito lógico programable según la reivindicación 1.
[0013]El circuito lógico programable según la invención permite así reducir significativamente el número de recursos lógicos y, por tanto, el tamaño y el consumo energético del circuito lógico programable, a la vez que se garantiza el determinismo de la aplicación de instrumentación y control mediante la ejecución en serie de bloques funcionales denominados según su secuencia (es decir, orden) de ejecución en el curso de un único ciclo (correspondiendo un ciclo a un tiempo durante el cual los datos de entrada del circuito lógico programable se fijan en memoria y solo se reevaluarán en el ciclo siguiente). Dicho de otro modo, según la presente invención, para obtener el resultado de una aplicación de instrumentación y control dada se necesita un solo ciclo, correspondiente a la ejecución de la serie de bloques funcionales listada en la secuencia.
[0014]Según otros aspectos ventajosos de la invención, el circuito lógico programable es según cualquiera de las reivindicaciones 2 a 9.
[0015]La invención tiene también por objeto un dispositivo de control según la reivindicación 10.
[0016]Según otros aspectos ventajosos de la invención, el dispositivo de control es según cualquiera de las reivindicaciones 11 a 18.
[0017]Estas características y ventajas de la invención se desprenderán de la lectura de la descripción que se ofrece a continuación, proporcionada únicamente a modo de ejemplo no limitativo, y hecha en referencia a los dibujos adjuntos, en los que:
- la figura 1 es una representación esquemática de un circuito lógico programable según la invención;
- la figura 2 es una representación que ilustra un ejemplo de aplicación de instrumentación y control para su ejecución; - la figura 3 es una representación esquemática de la conexión del circuito lógico programable según la invención a un módulo de mantenimiento y de diagnóstico;
- la figura 4 es una representación esquemática de un dispositivo de control según la invención que comprende, según una realización, el circuito lógico programable de la figura 1;
- las figuras 5 y 6 representan respectivamente dos variantes de dispositivos de control que comprenden una pluralidad de circuitos lógicos programables representados en la figura 1.
[0018]En la figura 1, el circuito lógico programable 10 es un módulo de tratamiento (PM del inglésProcessing Module).Más en concreto, el circuito lógico programable 10 está hecho en forma de una estructura electrónica, tal como una red de puertas programables o FPGA (del inglésField-Programmable Gate Array).
[0019]Dicha FPGA 10 comprende un módulo 12 de control de las señales de entrada, una unidad funcional 14 (OPU del inglésOperating Unit)y un módulo 16 de control de las señales de salida.
[0020]La unidad funcional 14 comprende una pluralidad 18 de N tipos de bloques funcionales FB1, ... FBi, ..., FBn distintos conNun número entero e i el índice de tipo de bloque funcional comprendido entre uno y N.
[0021]Dos tipos de bloques funcionales distintos son capaces de ejecutar al menos una función distinta. Por «función» se entiende una función que puede ser implementada por una FPGA.
[0022]Según la presente invención, la unidad funcional comprende un solo bloque funcional de cada tipo.
[0023]Cada bloque funcional es cualificado además definitivamente durante el diseño del circuito lógico programable y, según la presente invención, en lo sucesivo será invocado únicamente para ser ejecutado en el curso de una aplicación de instrumentación y control sin que sea necesaria ninguna recualificación en caso de cambio/modificación de aplicación de instrumentación y control.
[0024]Cada instancia de bloque puede disponer además, si fuera necesario, de un espacio de memoria interna 20 dedicado de un módulo 22 de ejecución de la unidad funcional 14, que permite almacenar valores persistentes de un ciclo de ejecución a otro.
[0025]El conjunto de las funciones que pueden ser implementadas por una FPGA según la presente invención son así implementadas (es decir, programadas según una etapa preliminar) definitivamente en VHDL. Sus características se enumeran y memorizan, por ejemplo, dentro de un archivo de biblioteca 100 almacenado dentro de una memoria, no representada, de un generador automático 110 de datos de configuración de una central de mantenimiento 76 (ilustrada en la figura 3) alejada y distinta del circuito lógico programable 10 según la presente invención.
[0026]Dicho de otro modo, el archivo de biblioteca 100 describe las características de las funciones que pueden ser implementadas por cada bloque funcional tal como ha sido programado.
[0027]Dicho archivo de biblioteca 100 comprende por ejemplo para cada bloque funcional:
- su tipo,
- la descripción de al menos una función que es capaz de implementar,
- su identificador correspondiente a un código arbitrario predeterminado,
- su número y/o clase de entradas,
- su número y/o clase de salidas,
- su número y/o clase de parámetros que es capaz de usar.
[0028]Dicho archivo de biblioteca 100 es elaborado previamente y usado por un generador automático 110 de datos de configuración de la central de mantenimiento 76, que permite traducir automáticamente un conjunto de diagramas funcionales 120 en el programa de aplicación 34.
[0029]La figura 2 ilustra un diagrama funcional 120 de un ejemplo de aplicación de instrumentación y control para su ejecución. Dicha aplicación corresponde a la detección de temperatura límite en cuatro puntos distintos de un reactor nuclear.
[0030]Dicha aplicación es generada por un operador a partir de un editor gráfico conectado al generador automático 110 del programa de aplicación 34 sin requerir conocimientos especiales en el lenguaje de descripción de hardware VHDL o Verilog.
[0031]El generador automático 110 de programa de aplicación 34 es capaz de convertir los datos de dicho diagrama funcional 120 por el generador 110 de programa de aplicación 34 en al menos una secuencia 46 de bloques funcionales para su ejecución, de manera que cada bloque funcional de la secuencia implementa las funciones de acuerdo con las previamente programadas y clasificadas en el archivo de biblioteca 100.
[0032]Se necesitan cuatro tipos 24, 26, 28, 30 de bloques funcionales distintos para la implementación de dicha aplicación de instrumentación y control, en concreto, los cuatro tipos LIN, THR, VOTER y AND que están conectados gráficamente por enlaces orientados que representan las relaciones de causalidad entre bloques funcionales.
[0033]Expuesto con mayor precisión, el operador define gráficamente el número de señales de entrada de la aplicación de instrumentación y control, en concreto, E1, E2, E3 y E4 que corresponden, por ejemplo, a diferentes puntos de medida de un reactor nuclear.
[0034]Según esta aplicación de instrumentación y control, las señales eléctricas de los puntos Ei (i=1 a 4) pueden, cada una, a continuación ser convertidas por medio de un bloque funcional de tipo LIN en un dato físico, en este caso una temperatura.
[0035]Después, la temperatura obtenida en salida del bloque funcional 24 de tipo LIN se compara con un umbral de temperatura por medio de un bloque funcional 26 de tipo THR que tiene como parámetro este umbral de temperatura en concreto, por ejemplo 100°C.
[0036]La aplicación de instrumentación y control contemplada comprende a continuación una función de voto implementada por el bloque funcional 28 VOTER aplicada a las cuatro señales asociadas a cada punto de entrada. La función de voto es, por ejemplo, una función de voto 2/4 apta para confirmar o invalidar (es decir, resultado binario) la comparación con el umbral de temperatura, a partir del momento en que al menos dos comparaciones entre cuatro tienen el mismo resultado.
[0037]Finalmente, la aplicación de instrumentación y control contemplada puede tener en cuenta, por medio de un bloque funcional 30 AND, la activación de un botón pulsador 32 (que puede ser accionado manualmente por un operador) inhibidor de resultado. Dicho de otro modo, el bloque funcional 30 AND recibe dos entradas binarias que corresponden respectivamente a las señales de salida del botón pulsador 32 y del bloque funcional 28 VOTER y suministra en salida el resultado 33 binario del bloque funcional VOTER si el botón pulsador 32 no ha sido accionado, y si ha sido accionado, el resultado 33 binario contrario.
[0038]Así, para este ejemplo de aplicación de instrumentación y control, el archivo de biblioteca 100 usado por el generador automático 110 está, por ejemplo, en forma de la tabla siguiente:
[0039]En relación con la figura 1, el bloque funcional FB es, por ejemplo, de tipo LIN y se le asigna el código 0x01 en la tarjeta FPGA, el bloque funcional FBi=5 es de tipo THR y se le asigna el código 0x02, el bloque funcional FBi=12 es de tipo VOTER y se le asigna el código 0x03, y el bloque funcional FBi=18 es de tipo AND y se le asigna el código 0x04.
[0040]A partir del diagrama representado en la figura 2, y del archivo de biblioteca 100 descrito anteriormente, se genera automáticamente un conjunto de archivos informáticos de configuración que forman un programa de aplicación 34.
[0041]Dicho programa de aplicación 34 comprende especialmente:
- un archivo de configuración 36 de la memoria 38 de la unidad funcional 14 correspondiente a una tabla que asocia a al menos una señal de entrada/salida del circuito lógico programable 10 una dirección en su memoria,
- un archivo 40 de valor o valores de parámetros de bloque o bloques funcionales capaces de ejecutar al menos una función que usa un parámetro,
- un archivo 42 que recoge, para cada bloque funcional, la o las direcciones de memoria asignadas a una o más entradas de este bloque funcional,
- un archivo 44 que recoge, para cada bloque funcional, la o las direcciones de memoria asignadas a una o más salidas de este bloque funcional,
- una secuencia 46 de bloque o bloques funcionales para su ejecución.
[0042]La memoria 38 de la unidad funcional 14 comprende al menos dos espacios 48 y 50 de almacenamiento de datos dedicados respectivamente a datos binarios (booleanos codificados en dos bits distintos) y a datos analógicos (números flotantes codificados, por ejemplo, en treinta y dos bits). En una variante no representada, la memoria 38 de la unidad funcional 14 comprende además un espacio de almacenamiento de datos dedicado a los valores de parámetros del archivo 40.
[0043]El espacio 48 de almacenamiento de datos binarios está a su vez jerarquizado en al menos tres subespacios, que son: un primer subespacio 52 dedicado a los datos binarios de entradas del circuito lógico programable 10, un segundo subespacio 54 dedicado a los datos binarios temporales obtenidos durante la ejecución de la secuencia 46 y un tercer subespacio 56 dedicado a los datos binarios de salidas del circuito lógico programable.
[0044]Asimismo, el espacio 50 de almacenamiento de datos analógicos está a su vez jerarquizado en al menos tres subespacios, que son: un primer subespacio 58 dedicado a los datos de entrada analógicos del circuito lógico programable 10, un segundo subespacio 60 dedicado a los datos analógicos temporales obtenidos durante la ejecución de la secuencia 46 y un tercer subespacio 62 dedicado a los datos analógicos de salidas del circuito lógico programable.
[0045]El archivo de configuración 36 de la memoria 38 está configurado para ser leído por el módulo de ejecución 22 de la unidad funcional 14 en el curso de un único ciclo de ejecución de la aplicación de instrumentación y control (correspondiente, por ejemplo, a la representada en la figura 2).
[0046]Durante la ejecución de la secuencia 46, el módulo de ejecución 22 lee en el archivo de configuración 36 en el que están almacenados en la memoria 38 los valores de las entradas y salidas de la aplicación en su conjunto.
[0047]Dicho de otro modo, el archivo de configuración 36 es una tabla de asignación, en los diferentes subespacios (es decir, registros) de memoria, de las direcciones de memoria en las entradas y salidas del circuito lógico programable 10.
[0048]Los cinco valores de entradas son, según el ejemplo de aplicación de instrumentación y control representado en la figura 2, cuatro valores analógicos ina_E1, _ina_E2, ina_E3 e ina_E4 correspondientes a las señales eléctricas representativas de medidas de temperatura respectivamente en los puntos E1 a E4 y un valor binario inb_P1 representativo de la activación/desactivación del botón pulsador 32.
[0049]El valor de salida outb_ACT es suministrado después de la ejecución de los bloques funcionales según la secuencia 46 de bloques funcionales.
[0050]Así, para este ejemplo de aplicación de instrumentación y control ilustrado en la figura 2, el archivo de configuración 36 está, por ejemplo, en la forma de la tabla siguiente:
[0051]Según la presente invención, la secuencia 46 de bloque o bloques funcionales para su ejecución es un archivo informático que recoge, a partir de los enlaces de causalidad del diagrama, el orden de instanciación de los bloques funcionales para su ejecución en serie por el módulo de ejecución 22 de la unidad funcional 14 con el fin de realizar la aplicación de instrumentación y control deseada.
[0052]La secuencia 46 es un archivo informático, por ejemplo, representado en la forma de la tabla ordenada siguiente:
[0053] Dicho de otro modo, según la presente invención se ejecuta a la vez un solo bloque funcional FB (cuyo código se indica en el archivo de biblioteca descrito anteriormente), según las instancias sucesivas de la serie de bloques funcionales indicada en el archivo informático de secuencia 46 mostrado anteriormente.
[0054] Dicha ejecución en serie garantiza el determinismo de ejecución de la aplicación de instrumentación y control, ya que los datos de salida de cada bloque funcional se almacenan y/o reinyectan en la entrada del bloque funcional siguiente para las sucesivas instancias.
[0055] Según la técnica anterior, para realizar la aplicación de instrumentación y control representada en la figura 2, es necesario que el FPGA comprenda cuatro bloques funcionales de tipo LIN, cuatro bloques funcionales de tipo THR, un bloque funcional de tipo VOTER y un bloque funcional de tipo a Nd para un total de aproximadamente diez bloques funcionales distintos.
[0056]Por el contrario, según la presente invención se necesita un solo bloque funcional de cada tipo y es «invocado» cuantas veces sean necesarias según la aplicación de instrumentación y control para su ejecución. Así, en relación con el ejemplo de aplicación de la figura 2, el número de bloques funcionales necesarios para ejecutar dicha aplicación se reduce de diez a cuatro, lo que permite una reducción del tamaño del FPGA (es decir, optimización de la compacidad) y/o la posibilidad de integrar en él bloques funcionales que pueden ser invocados por otras aplicaciones de instrumentación y control.
[0057]Dicho de otro modo, la huella de hardware (por ejemplo, huella VHDL) del circuito lógico programable según la invención es única y permanente, de manera que un bloque funcional cualificado puede reutilizarse de una aplicación de instrumentación y control a otra. Según la invención, solo el programa de aplicación 34 es distinto de una aplicación de instrumentación y control a otra, siendo, por ejemplo, un mismo bloque funcional invocado en primera instancia para una primera aplicación de instrumentación y control y en última instancia para una segunda aplicación de instrumentación y control diferente de la primera.
[0058]El archivo informático 40 de valor o valores de parámetros de bloques funcionales comprende por su parte los valores de los parámetros necesarios durante la ejecución de la secuencia 46, estando estos valores de parámetros ordenados teniendo en cuenta la secuencia 46 de ejecución de los bloques funcionales.
[0059]El archivo informático 40 de valores de parámetros se representa, por ejemplo en la forma de la tabla ordenada siguiente:
[0060] Dicho de otro modo, para el ejemplo de aplicación de instrumentación y control representado en la figura 2, el mismo bloque funcional FBi=5 de tipo THR se instancia cuatro veces con el mismo valor de parámetro, que es una temperatura de 100°C.
[0061] Según otros ejemplos de aplicaciones de instrumentación y control, pueden asociarse valores diferentes de parámetros a las diferentes instancias del bloque funcional FBi=5 de tipo THR. Así, sin modificación de la huella de hardware (por ejemplo, huella VHDL), y en consecuencia sin recualificación del circuito programable, la presente invención permite un cambio de parámetro de un mismo bloque funcional durante la vida de un sistema de instrumentación y control, o de una aplicación a otra. Se facilita así la evolución de funcionamiento del circuito programable.
[0062] Además, como se indica anteriormente, el programa de aplicación 34 comprende también dos archivos informáticos 42 y 44 que recogen respectivamente para cada bloque funcional por una parte la o las direcciones de memoria 38 asignadas a uno o más operandos de entradas de este bloque funcional, y por otra parte la o las direcciones de memoria asignadas a uno o más operandos de salida de este bloque funcional.
[0063] En relación con la aplicación representada en la figura 2, estos dos archivos informáticos 42 y 44 tienen, por ejemplo, respectivamente la forma siguiente:
continuación
[0064]El módulo de ejecución 22 funciona así como una máquina de estados y distribuye y/o almacena automáticamente para cada instancia de bloque funcional los valores de entradas y de salida en las direcciones de memoria indicadas en los archivos 42 y 44 del programa de aplicación 34.
[0065]Un puntero permite que el módulo de ejecución 22 conozca para cada instancia de bloque funcional el emplazamiento de inicio de las direcciones de los valores de entradas y de salidas que se leen en los archivos 42 y 44. Al final de la ejecución de cada instancia de bloque funcional, este actualiza el puntero en función del número de valores de entrada leídos y del número de valores de salida generados, lo que permite que el módulo de ejecución 22 conozca las direcciones que se leerán en los archivos 42 y 44 para la instancia de bloque siguiente.
[0066]Dicho de otro modo, los archivos informáticos del programa de aplicación 34 tienen un efecto de sinergia de manera que el módulo de ejecución 22 está configurado para tenerlos en cuenta a todos en paralelo con el fin de implementar una ejecución en serie sin que se cree físicamente ningún enlace entre los diferentes bloques funcionales.
[0067]Así, en relación con el ejemplo de aplicación de instrumentación y control ilustrado en la figura 2, el módulo de ejecución 22 está configurado para leer la secuencia 46 y determinar cuál es el primer bloque funcional que se ha de ejecutar.
[0068]Este primer bloque es el bloque funcional FB, de tipo LIN, y el módulo de ejecución 22 se configura entonces para distribuir en entrada, de acuerdo con el archivo informático 42 asociado a los datos de entrada de cada bloque funcional, el valor analógico de ina_E1 que se memoriza en la dirección 0x0001 del subespacio 58 dedicado a los datos analógicos de entrada de la memoria 38.
[0069]Se ejecuta entonces el bloque funcional FB, de tipo LIN y el valor analógico de wa_a1 suministrado en salida se almacena en la dirección 0x0800 del subespacio de memoria 60 dedicado a los datos analógicos temporales de acuerdo con el archivo informático 44 asociado a los datos de salida de cada bloque funcional.
[0070]Después, el módulo de ejecución 22 se configura para leer la secuencia 46 y determinar cuál es el segundo bloque funcional que se ha de ejecutar. Este segundo bloque es el bloque funcional FBi=5 de tipo THR y se le asigna el código 0x02 en la tarjeta FPGA. El módulo de ejecución 22 se configura entonces para distribuir en entrada el valor de wa_a1 que se memoriza en la dirección 0x0800 así como el valor de parámetro 100,0 que es el siguiente valor en la pila de valores de parámetros analógicos.
[0071]Se ejecuta entonces el bloque funcional FB5 de tipo THR y el valor binario de wb_b1 suministrado en salida es escrito y almacenado, por el módulo de ejecución 22, en la dirección 0x0804 del subespacio 54 dedicado a los datos binarios temporales.
[0072]A continuación, de acuerdo con la secuencia 46, el tercer bloque funcional que se ha de ejecutar es de nuevo el bloque funcional FB, de tipo LIN. Durante esta segunda instancia de este mismo bloque funcional FB, de tipo LIN, el módulo de ejecución 22 se configura entonces para distribuir en entrada el valor analógico de ina_E2 que se memoriza en la dirección 0x0005 del subespacio 58 dedicado a los datos analógicos de entrada de la memoria 38.
[0073]Se ejecuta entonces el bloque funcional FB, de tipo LIN por segunda vez y el valor analógico de wa_a2 suministrado en salida se almacena en la dirección 0x0805 del subespacio de memoria 60 dedicado a los datos analógicos temporales, y así sucesivamente hasta que el conjunto de la secuencia 46 se haya ejecutado por completo (es decir, hasta que el código 0x00 de detención sea leído por el módulo de ejecución 22).
[0074]Así, según la presente invención se ejecuta un solo bloque funcional a la vez en un instante dado.
[0075]Según el ejemplo representado en la figura 1, la unidad funcional 14 comprende además una pluralidad 64 de M unidades de cálculo en coma flotante (FPU del inglés «floating point units»)paralelizables, con M un número entero.
[0076]Dichas unidades de cálculo son capaces, por ejemplo, de implementar cálculos de raíz cuadrada o de logaritmo y se paralelizan, para la implementación de cálculos complejos requeridos durante la ejecución de un bloque funcional tal como la determinación de la relación entre el flujo térmico de aparición de la crisis de ebullición y el flujo térmico real en el núcleo de un reactor denominada relación de flujo térmico crítico/RFTC (DBNR del inglésDeparture from Nucleate Boiling Ratio).Dicho conjunto de unidades de cálculo en coma flotante es compartido para el conjunto de los bloques funcionales de la unidad funcional 14 y permite acelerar la capacidad de cálculo de un bloque funcional cuando este está configurado para realizar un cálculo analógico complejo. En consecuencia, aumenta la escalabilidad del circuito lógico programable 10.
[0077]La unidad funcional 14 comprende también una interfaz 66 de entrada-salida capaz de recibir y de retransmitir respectivamente los datos de entrada ina_E1, ina_E2, ina_E3, ina_E4 y de salida inb_P1 y outb_ACT clasificados en el archivo de configuración 36, y asociados a la aplicación de instrumentación y control en su conjunto.
[0078]La interfaz 66 es capaz de recibir el programa de aplicación 34 por medio de un bus de configuración interna (ICB del inglésInternal Configuration Bus)conectado al módulo 12 de control de las señales de entrada y de transmitir a través de este mismo bus de datos los datos de control y de diagnóstico al módulo 16 de control de las señales de salida.
[0079]El módulo 12 de control de las señales de entrada y el módulo 16 de control de las señales de salida son externos a la unidad funcional 14 y pueden comunicarse con aparatos y/o circuitos externos al circuito lógico programable 10.
[0080]Este módulo de control de las señales de entrada 12 y este módulo de control de las señales de salida 16 son a su vez, cada uno, una máquina de estados que comprende uno o varios espacios de memoria dedicados respectivamente a datos analógicos y binarios no representados.
[0081]Entre estos espacios de memoria dedicados, algunos están dedicados al control de los datos de entrada y de salida intercambiados con una red de comunicación y capaces de recibir/transmitir datos emitidos/transmitidos de manera asíncrona con respecto al ciclo de funcionamiento del circuito lógico programable 10. Para ello, estos espacios de memoria dedicados específicamente a los datos de redes son registros de báscula o básculas síncronas (es decir, de doble puerto, del inglésflip-flop)de manera que almacenan los datos de redes recibidos/transmitidos durante el ciclo actual mientras los datos de redes recibidos/transmitidos durante el ciclo anterior son usados por la unidad funcional 14 en el curso del ciclo actual. El circuito lógico programable 10 posee así un cierto número de conectores de fibra óptica que permiten emitir/recibir estos datos en redes de comunicación.
[0082]Los módulos 12 y 16 están configurados especialmente para asegurar la comunicación con un módulo 68 de mantenimiento y de diagnóstico (SMD del inglésService Maintenance Diagnosis Module)representado en la figura 3.
[0083]Dicho módulo de mantenimiento y de diagnóstico 68 permite especialmente cargar, en el circuito lógico programable 10, el programa de aplicación 34 asociado a la aplicación que se va a ejecutar o realizar cambios de parámetros de bloques funcionales (por ejemplo, un cambio de umbral de temperatura de 100°C a 120°C), lanzar periódicamente tests de mantenimiento en el circuito lógico programable 10 o transferir del circuito lógico programable 10 según la invención al módulo de mantenimiento y de diagnóstico 68 datos de tratamiento. Estos intercambios de datos entre el circuito lógico programable 10 y el módulo de mantenimiento y de diagnóstico 68 están asegurados por medio de un enlace tal como un bus 70 conectado a la cara posterior (del inglésbackplane bus)de las cajas que alojan respectivamente el circuito lógico programable 10 y el módulo de mantenimiento y de diagnóstico 68.
[0084]El módulo de mantenimiento y de diagnóstico 68 comprende también un circuito lógico programable 72, por ejemplo FPGA, y un microprocesador 74, y es capaz de comunicarse según un procedimiento seguro con una central de mantenimiento 76 que comprende, por ejemplo, el generador automático 110, por medio de un enlace 78 de tipo Ethernet y un conmutador 80 capaz de comunicarse con otros dispositivos de control de instalación eléctrica, comprendiendo un dispositivo de control al menos un circuito lógico programable 10 según la invención tal como se describe anteriormente.
[0085]La central de mantenimiento 76 está, por ejemplo, alejada de la instalación eléctrica nuclear en la cual se implementa el circuito lógico programable 10. Dentro de esta central de mantenimiento 76, un operador de mantenimiento realiza por medio de un editor gráfico (que no requiere conocimientos previos en el lenguaje VHDL o Verilog) las aplicaciones de instrumentación y control que se van a implementar dentro de la instalación eléctrica nuclear, en forma de diagramas funcionales 120 como se representa, por ejemplo, en la figura 2. Como se indica anteriormente, los diagramas funcionales 120 se convierten a continuación en el programa de aplicación 34, por medio del generador automático 110 que usa el archivo de biblioteca 100 para garantizar que el programa de aplicación 34 se ejecutará sin afectar a la configuración cualificada del circuito lógico programable 10. El programa de aplicación 34 se carga a continuación por medio del módulo de mantenimiento y de diagnóstico 68 en el circuito lógico programable 10.
[0086]En las figuras 4 a 6 se representan respectivamente tres variantes de arquitecturas de dicho dispositivo de control 81.
[0087]En la figura 4, el dispositivo de control 81 es «mono-» circuito lógico programable 10. Dicho de otro modo, el dispositivo de control 81 comprende un alojamiento 82 (del inglésrack)que forma una caja, por ejemplo de tamaño 6U (siendo U la unidad de altura de un rack), en el que se integra un solo circuito lógico programable 10. El alojamiento 82 puede comprender además un módulo de alimentación 84, y módulos auxiliares, en concreto, uno o más módulos 86 dedicados a la adquisición de datos de entrada distintos, y uno o más módulos 88 dedicados a la publicación de datos de salida distintos, y uno o más módulos de mantenimiento y de diagnóstico 68 como se describe anteriormente. Además, el circuito lógico programable 10 comprende conectores (por ejemplo, siete conectores no representados) que permiten, por ejemplo mediante fibra o fibras ópticas, una conexión a una red de comunicación.
[0088]Puede establecerse una conexión del generador automático 110 de programa de aplicación 34 al dispositivo de control 81 a través del o de los módulos de mantenimiento y de diagnóstico 68, que está configurado especialmente para cargar la secuencia 46 de bloques funcionales que se va a ejecutar en el dispositivo de control 81 una vez que se establece dicha conexión.
[0089]Dentro del alojamiento 82, el circuito lógico programable 10 es maestro y controla la comunicación con los módulos auxiliares 86, 88, y 68 a través de un bus 70 que usa como ejemplo no limitativo enlaces de transmisión diferencial de baja tensión (M-LVDS del inglésMultipoint-Low Voltage Differential Signaling),que operan por ejemplo a 50 MHz, y dedicados respectivamente a los datos de entrada binarios y analógicos y a los datos de salida binarios y analógicos del circuito lógico programable 10. Ventajosamente, cada tipo de datos (entrada o salida) dispone de un enlace de transmisión independiente para los datos binarios y los datos analógicos. En este caso, se establecen así cuatro enlaces de transmisión diferencial de baja tensión.
[0090]Podrán implementarse numerosas variantes de realización no representadas sin salir por ello del alcance de la invención. Por ejemplo, los módulos 86 dedicados a la adquisición de los datos de entrada y los módulos 88 dedicados a la publicación de los datos de salida podrán alojarse en una misma tarjeta electrónica del tipo «GPIO» (del inglésgeneral purpose input-output)conocida por otra parte.
[0091]El módulo de alimentación 84 suministra una alimentación estabilizada en potencia a los otros módulos del alojamiento 82 y está configurado también para implementar una conversión de tensión, por ejemplo de 24 voltios de corriente continua a 5 voltios para alimentar cada módulo del alojamiento 82.
[0092]Las figuras 5 y 6 representan dos variantes de dispositivos de control 81 que comprenden una pluralidad de circuitos lógicos programables 10 representados en la figura 1.
[0093]Dicha arquitectura «multi-» circuitos lógicos programables 10 permite aumentar el número de interfaz de red por dispositivo de control, duplicar operaciones de instrumentación y control en al menos dos circuitos lógicos programables 10 con fines de control de seguridad que impone reglas de redundancia u optimizar el encaminamiento entre módulos dentro de un alojamiento 82.
[0094]En dicha arquitectura «multi-» circuitos lógicos programables 10, la pluralidad de circuitos lógicos programables 10 está sincronizada, con esta sincronización realizada por medio de un circuito lógico maestro 10a entre los circuitos lógicos programables 10, conectado a un reloj.
[0095]El circuito lógico programable maestro 10a puede especialmente emitir, por medio del módulo 12 de control de señales representado en la figura 1, un impulso de sincronización al principio y/o al final de ciclo (teniendo un ciclo, por ejemplo, una duración de 2 ms) y una petición de estado hacia los módulos 86 dedicados a datos de entrada distintos, los módulos 88 dedicados a datos de salida distintos o hacia los otros circuitos lógicos programables 10 con el fin de sincronizar y refrescar en cada ciclo los datos de entrada/salidas del ciclo siguiente (nueva iteración de la misma aplicación de instrumentación y control). En consecuencia, al contrario que los intercambios por redes de comunicación, estos intercambios de datos dentro de una misma pluralidad de circuitos lógicos programables se efectúan en un modo síncrono.
[0096]Así, todos los circuitos lógicos programares 10 de la pluralidad están configurados para funcionar simultáneamente dentro de un mismo ciclo.
[0097]En las figuras 5 y 6 se representan a modo de ilustración dos variantes no limitativas de dicha arquitectura «multi-» circuitos lógicos programables 10.
[0098]En la figura 5, tres circuitos lógicos programables, que comprenden un circuito lógico programable maestro 10a y otros dos circuitos lógicos programables 10, se alojan en el mismo alojamiento 82, de manera que los circuitos lógicos programables 10 y 10a pueden comunicarse entre sí y con los módulos auxiliares 86, 88, 68 del alojamiento 82 de manera síncrona. En la realización representada por la figura 5 los circuitos lógicos programables 10a y 10 se comunican entre sí de manera síncrona por fibra óptica 92, estando los conectores dedicados específicamente a esta comunicación entre circuitos lógicos programables dentro de una arquitectura «multi-» -circuitos. Además, el circuito lógico programable 10a maestro se comunica de manera síncrona con los módulos auxiliares 86, 88, 68 del alojamiento 82 por medio del bus 70.
[0099]En la figura 6 se representa una arquitectura de dispositivo de control 81 «multi-» circuito lógico programable 10a y 10 y «multi-» alojamientos 90A, 90B, 90C. Según esta arquitectura multi-circuito y multi-alojamiento, cada alojamiento 90A, 90B, 90C corresponde a una disposición descrita en la figura 4 (Mono-Circuit) o en la figura 5 (Multi-Circuit).
[0100]Cada alojamiento puede comprender además módulos auxiliares 86, 88, 68.
[0101]De forma preferida, uno de los alojamientos 90A es «maestro» y comprende el circuito lógico programable maestro 10a para el conjunto de los circuitos lógicos programables 10 del dispositivo de control 81 multicircuitos y multi- alojamientos, y asegura la sincronización de los módulos auxiliares 86, 88, 68 de su alojamiento por medio del bus 70A.
[0102]Los circuitos lógicos programables 10 del dispositivo de control 81 pueden comunicarse de un alojamiento a otro y dentro de un mismo alojamiento de manera síncrona por fibra óptica 92.
[0103]Cada alojamiento 90B, 90C «esclavo» del alojamiento maestro 90A comprende entre sus circuitos lógicos programables 10 un circuito lógico programable de sincronización 10b para sincronizar los módulos auxiliares 86, 88, 68 de su alojamiento por medio del bus 70B, 70C del alojamiento.
[0104]En las realizaciones de las figuras 5 y 6, y sin que sea una limitación del alcance de la invención, se implementa un solo módulo de mantenimiento y de diagnóstico 68 por dispositivo de control 81, independientemente del número de circuitos lógicos programables 10 o del número de alojamientos que comprenda.
[0105]En las realizaciones de las figuras 5 y 6, y sin que sea una limitación del alcance de la invención, solo el circuito lógico programable maestro 10a y los circuitos lógicos programables de sincronización 10b están conectados con los módulos auxiliares 86, 88, 68 de su alojamiento respectivo 90A, 90B, 90C por medio de su bus respectivo 70A, 70B, 70C. Los otros circuitos lógicos programables 10 de un alojamiento están conectados con los módulos auxiliares 86, 88, 68 de su alojamiento por medio, respectivamente, del circuito lógico programable maestro 10a o del circuito lógico programable de sincronización 10b, y de la red de fibra óptica 92. En esta configuración, un bus 70A, 70B, 70C comprende ventajosamente cuatro enlaces de transmisión diferencial de baja tensión (M-LVDS del inglésMultipoint-Low Voltage Differential Signaling),que operan por ejemplo a 50 MHz en cada sentido de transmisión.
[0106]En otra realización no representada, los buses 70A, 70B, 70C pueden dimensionarse de manera que permitan que cada circuito lógico programable 10 se conecte a los módulos auxiliares 86, 88, 68 de su alojamiento a través del bus 70A, 70B, 70C.
Claims (18)
1. Circuito lógico programare (10) de control de una instalación eléctrica, en particular una instalación nuclear, comprendiendo el circuito lógico programare una unidad funcional (14) que comprende:
- una pluralidad de tipos de bloques funcionales (FB1, FBi, FB<n>), siendo dos tipos de bloques funcionales distintos capaces de ejecutar al menos una función distinta,
- al menos un módulo de tratamiento capaz de recibir al menos una secuencia (46) de bloque o bloques funcionales para su ejecución, siendo la secuencia (46) de bloque o bloques funcionales para su ejecución un archivo informático que recoge un orden de instanciación de los bloques funcionales para su ejecución en serie con el fin de realizar una aplicación de instrumentación y control,
- al menos una memoria (38) interna configurada para almacenar al menos dicha secuencia (46), comprendiendo el circuito lógico programable un solo bloque funcional de cada tipo, de manera que un mismo bloque funcional puede ser invocado varias veces, y un módulo de ejecución (22) configurado para ejecutar en serie el o los bloques funcionales invocados según dicha secuencia (46).
2. Circuito lógico programable (10) según la reivindicación 1, en el que el circuito lógico programable (10) es de tipo FPGA.
3. Circuito lógico programable (10) según la reivindicación 1 o 2, en el que el módulo de ejecución (22) es una máquina de estados.
4. Circuito lógico programable (10) según cualquiera de las reivindicaciones anteriores, en el que la unidad funcional (14) comprende además una pluralidad (64) de unidades de cálculo en coma flotante (FPU) paralelizables.
5. Circuito lógico programable (PM) según cualquiera de las reivindicaciones anteriores, en el que al menos un módulo de tratamiento es capaz de recibir un programa de aplicación (34) correspondiente a un grupo de archivos informáticos de configuración que comprenden dicha secuencia y al menos otro archivo informático que pertenece al grupo que comprende:
- un archivo de configuración (36) de la memoria (38) correspondiente a una tabla que asocia a al menos una señal de entrada/salida del circuito lógico programable (PM) una dirección en su memoria (38),
- un archivo (40) de valor o valores de parámetros de bloque o bloques funcionales capaces de ejecutar al menos una función que usa un parámetro,
- un archivo (42) que recoge, para cada bloque funcional, la o las direcciones de memoria asignadas a una o más entradas de este bloque funcional,
- un archivo (44) que recoge, para cada bloque funcional, la o las direcciones de memoria asignadas a una o más salidas de este bloque funcional.
6. Circuito lógico programable (PM) según la reivindicación 5, en el que los valores de parámetros están ordenados dentro de su archivo (40) en función de dicha secuencia de bloque o bloques funcionales para su ejecución.
7. Circuito lógico programable (PM) según cualquiera de las reivindicaciones anteriores, en el que la memoria (38) comprende al menos dos espacios (48, 50) de almacenamiento de datos dedicados respectivamente a datos binarios y a datos analógicos.
8. Circuito lógico programable (PM) según la reivindicación 7, en el que cada espacio (48, 50) de almacenamiento comprende al menos tres subespacios dedicados:
- al menos un subespacio (52,58) dedicado a los datos de entradas del circuito lógico programable (10), - al menos un subespacio (56,62) dedicado a los datos de salidas del circuito lógico programable (10),
- al menos un subespacio (54,60) dedicado a datos temporales obtenidos durante la ejecución de dicha secuencia (46).
9. Circuito lógico programable (PM) según la reivindicación 8, en el que los subespacios (52, 58) dedicados a los datos de entrada o los subespacios dedicados (56, 62) a los datos de salida son registros de báscula o básculas síncronas.
10. Dispositivo de control de una instalación eléctrica, en particular una instalación nuclear,caracterizado porqueel dispositivo de control comprende al menos un circuito lógico programable (10) según cualquiera de las reivindicaciones anteriores 1 a 9.
11. Dispositivo de control de una instalación eléctrica según la reivindicación 10, en el que el dispositivo de control comprende una pluralidad de circuitos lógicos programables (10) según cualquiera de las reivindicaciones anteriores 1 a 9.
12. Dispositivo de control de una instalación eléctrica según las reivindicaciones 10 u 11 que comprende además:
- al menos un módulo de alimentación (84),
- módulos auxiliares entre uno o más módulos (86) dedicados a la adquisición de datos de entrada distintos, uno o más módulos (88) dedicados a la publicación de datos de salida distintos y uno o más módulos de mantenimiento y de diagnóstico (68), y
- un bus de comunicación (70) configurado para conectar el o los circuitos lógicos programables (10) a los módulos auxiliares (86, 88, 68).
13. Dispositivo de control de una instalación eléctrica según la reivindicación 12 en el que el bus de comunicación (70) comprende cuatro enlaces de transmisión diferencial de baja tensión (M-LVDS) dedicados respectivamente a los datos de entrada y a los datos de salida de cada circuito lógico programable (10) en cada sentido de transmisión.
14. Dispositivo de control de una instalación eléctrica según cualquiera de las reivindicaciones 11 a 13, que comprende una red de comunicación de fibra óptica (92) configurada para conectar la pluralidad de circuitos lógicos programables (10).
15. Dispositivo de control de una instalación eléctrica según cualquiera de las reivindicaciones 11 a 14, en el que un circuito lógico programable maestro (10a), entre la pluralidad de circuitos lógicos programables (10), puede ser conectado a un reloj y está configurado para sincronizar los otros circuitos lógicos programables de la pluralidad de circuitos lógicos programables (10) por medio de la red de comunicación de fibra óptica (92).
16. Dispositivo de control de una instalación eléctrica según la reivindicación 15, en el que el circuito lógico programable maestro (10a) está configurado también para sincronizar los módulos auxiliares por medio del bus de comunicación (70).
17. Dispositivo de control de una instalación eléctrica según cualquiera de las reivindicaciones 11 a 16, en el que la pluralidad de circuitos lógicos programables (10, 10a, 10b) está alojada en un mismo alojamiento (82).
18. Dispositivo de control de una instalación eléctrica según cualquiera de las reivindicaciones 11 a 17, en el que los circuitos lógicos programables (10, 10a, 10b) de la pluralidad de circuitos lógicos programables están separados en al menos dos alojamientos distintos (90<a>, 90<b>, 90<c>).
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1751903A FR3063855B1 (fr) | 2017-03-08 | 2017-03-08 | Circuit logique programmable de commande d'une installation electrique, en particulier une installation nucleaire, dispositif et procede de commande associes |
| PCT/EP2018/055817 WO2018162668A1 (fr) | 2017-03-08 | 2018-03-08 | Circuit logique programmable de commande d'une installation électrique, en particulier une installation nucléaire, dispositif et procédé de commande associés |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2974420T3 true ES2974420T3 (es) | 2024-06-27 |
Family
ID=59253631
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES18708146T Active ES2974420T3 (es) | 2017-03-08 | 2018-03-08 | Circuito lógico programable de control de una instalación eléctrica, en particular una instalación nuclear y dispositivo asociado |
Country Status (17)
| Country | Link |
|---|---|
| US (1) | US11043949B2 (es) |
| EP (1) | EP3593360B1 (es) |
| JP (1) | JP7282038B2 (es) |
| KR (1) | KR102471141B1 (es) |
| CN (1) | CN110520936B (es) |
| BR (1) | BR112019018565B1 (es) |
| CA (1) | CA3055466A1 (es) |
| ES (1) | ES2974420T3 (es) |
| FR (1) | FR3063855B1 (es) |
| HR (1) | HRP20240326T1 (es) |
| HU (1) | HUE066193T2 (es) |
| PL (1) | PL3593360T3 (es) |
| RS (1) | RS65358B1 (es) |
| RU (1) | RU2769961C2 (es) |
| UA (1) | UA125309C2 (es) |
| WO (1) | WO2018162668A1 (es) |
| ZA (1) | ZA201905889B (es) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11017907B2 (en) * | 2013-12-31 | 2021-05-25 | Nuscale Power, Llc | Nuclear reactor protection systems and methods |
| KR102514568B1 (ko) | 2016-12-30 | 2023-03-27 | 뉴스케일 파워, 엘엘씨 | 핵 반응기 보호 시스템 및 방법 |
| JP6954190B2 (ja) * | 2018-03-12 | 2021-10-27 | オムロン株式会社 | 制御システム、コントローラ、および制御方法 |
| JP7091986B2 (ja) * | 2018-10-05 | 2022-06-28 | オムロン株式会社 | 制御システム、制御方法、および開発支援プログラム |
| EP4016935A1 (en) * | 2020-12-15 | 2022-06-22 | Schneider Electric Industries SAS | Multipoint ethernet bus |
| CN116088405B (zh) * | 2022-12-28 | 2025-05-30 | 青岛华晟智能装备股份有限公司 | 输送管理方法、设备、输送系统及存储介质 |
| JP2024095855A (ja) * | 2022-12-29 | 2024-07-11 | Awl株式会社 | パイプライン処理システム、及びパイプライン処理プログラム |
| CN119718217B (zh) * | 2025-02-28 | 2025-05-23 | 苏州元脑智能科技有限公司 | 芯片物理信息获取方法、装置、电子设备及存储介质 |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2117978C1 (ru) * | 1996-09-24 | 1998-08-20 | Борис Германович Терехин | Программируемое устройство для логического управления электроприводами и сигнализацией |
| US6449732B1 (en) * | 1998-12-18 | 2002-09-10 | Triconex Corporation | Method and apparatus for processing control using a multiple redundant processor control system |
| JP3743487B2 (ja) * | 1999-07-14 | 2006-02-08 | 富士ゼロックス株式会社 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 |
| KR100399759B1 (ko) * | 2000-11-01 | 2003-09-29 | 한국과학기술원 | 원자력 발전소의 디지털 온라인 능동 시험 발전소 보호시스템 및 그 방법 |
| GB2374242B (en) * | 2001-04-07 | 2005-03-16 | Univ Dundee | Integrated circuit and related improvements |
| TWI234737B (en) * | 2001-05-24 | 2005-06-21 | Ip Flex Inc | Integrated circuit device |
| US6842669B2 (en) * | 2001-09-24 | 2005-01-11 | Westinghouse Electric Company Llc | Component interface module |
| US8109766B2 (en) * | 2003-10-03 | 2012-02-07 | Global Nuclear Fuel-Americas Llc | Method for predicted reactor simulation |
| JP4095576B2 (ja) * | 2004-05-17 | 2008-06-04 | 株式会社東芝 | プログラマブル論理回路を用いる汎用論理回路装置 |
| JP4442524B2 (ja) * | 2005-07-12 | 2010-03-31 | 株式会社ジェイテクト | 安全plc |
| US7725519B2 (en) * | 2005-10-05 | 2010-05-25 | Qualcom Incorporated | Floating-point processor with selectable subprecision |
| US7870299B1 (en) * | 2008-02-06 | 2011-01-11 | Westinghouse Electric Co Llc | Advanced logic system |
| US8040151B2 (en) * | 2008-12-19 | 2011-10-18 | Actel Corporation | Programmable logic device with programmable wakeup pins |
| JP2010226524A (ja) * | 2009-03-24 | 2010-10-07 | Fuji Xerox Co Ltd | プログラマブル論理回路、半導体集積回路装置、情報処理システムおよび制御プログラム |
| US8347044B2 (en) * | 2009-09-30 | 2013-01-01 | General Electric Company | Multi-processor based programmable logic controller and method for operating the same |
| JP5818762B2 (ja) * | 2012-09-14 | 2015-11-18 | 株式会社東芝 | プログラマブルロジックデバイス及びその検証方法 |
| US8694951B1 (en) * | 2012-10-02 | 2014-04-08 | Lsi Corporation | Core wrapping in the presence of an embedded wrapped core |
| JP2014225164A (ja) * | 2013-05-16 | 2014-12-04 | 富士通株式会社 | 伝送装置 |
| US11017907B2 (en) * | 2013-12-31 | 2021-05-25 | Nuscale Power, Llc | Nuclear reactor protection systems and methods |
| EP2988420B1 (en) | 2014-08-20 | 2021-03-10 | Framatome | Circuit arrangement for a safety i&c system |
| EP3082133B1 (en) * | 2015-04-14 | 2023-06-07 | General Electric Technology GmbH | Nuclear instrumentation and control system |
| PL3107212T3 (pl) * | 2015-06-16 | 2018-10-31 | Framatome | Bezpośrednio programowalna macierz bramek zawierająca wiele bloków funkcjonalnych oraz urządzenie sterujące dla elektrowni |
-
2017
- 2017-03-08 FR FR1751903A patent/FR3063855B1/fr active Active
-
2018
- 2018-03-08 US US16/492,112 patent/US11043949B2/en active Active
- 2018-03-08 RU RU2019128044A patent/RU2769961C2/ru active
- 2018-03-08 KR KR1020197028562A patent/KR102471141B1/ko active Active
- 2018-03-08 HR HRP20240326TT patent/HRP20240326T1/hr unknown
- 2018-03-08 RS RS20240368A patent/RS65358B1/sr unknown
- 2018-03-08 PL PL18708146.8T patent/PL3593360T3/pl unknown
- 2018-03-08 UA UAA201909682A patent/UA125309C2/uk unknown
- 2018-03-08 ES ES18708146T patent/ES2974420T3/es active Active
- 2018-03-08 BR BR112019018565-8A patent/BR112019018565B1/pt active IP Right Grant
- 2018-03-08 EP EP18708146.8A patent/EP3593360B1/fr active Active
- 2018-03-08 CN CN201880022058.2A patent/CN110520936B/zh active Active
- 2018-03-08 WO PCT/EP2018/055817 patent/WO2018162668A1/fr not_active Ceased
- 2018-03-08 JP JP2019548580A patent/JP7282038B2/ja active Active
- 2018-03-08 CA CA3055466A patent/CA3055466A1/fr active Pending
- 2018-03-08 HU HUE18708146A patent/HUE066193T2/hu unknown
-
2019
- 2019-09-06 ZA ZA2019/05889A patent/ZA201905889B/en unknown
Also Published As
| Publication number | Publication date |
|---|---|
| CA3055466A1 (fr) | 2018-09-13 |
| EP3593360A1 (fr) | 2020-01-15 |
| FR3063855A1 (fr) | 2018-09-14 |
| CN110520936A (zh) | 2019-11-29 |
| RU2019128044A3 (es) | 2021-05-06 |
| HRP20240326T1 (hr) | 2024-06-21 |
| KR20190127773A (ko) | 2019-11-13 |
| BR112019018565A2 (pt) | 2020-04-14 |
| ZA201905889B (en) | 2020-06-24 |
| RU2769961C2 (ru) | 2022-04-11 |
| CN110520936B (zh) | 2023-04-18 |
| US20210083671A1 (en) | 2021-03-18 |
| PL3593360T3 (pl) | 2024-05-27 |
| JP2020515130A (ja) | 2020-05-21 |
| RS65358B1 (sr) | 2024-04-30 |
| WO2018162668A1 (fr) | 2018-09-13 |
| KR102471141B1 (ko) | 2022-11-28 |
| BR112019018565B1 (pt) | 2023-11-07 |
| US11043949B2 (en) | 2021-06-22 |
| JP7282038B2 (ja) | 2023-05-26 |
| EP3593360B1 (fr) | 2024-01-03 |
| UA125309C2 (uk) | 2022-02-16 |
| FR3063855B1 (fr) | 2019-04-12 |
| RU2019128044A (ru) | 2021-03-09 |
| HUE066193T2 (hu) | 2024-07-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2974420T3 (es) | Circuito lógico programable de control de una instalación eléctrica, en particular una instalación nuclear y dispositivo asociado | |
| JPS5868109A (ja) | 機能拡張性を有するプログラマブルシ−ケンスコントロ−ラ | |
| RU171436U1 (ru) | Программируемый логический контроллер для территориально-распределенной системы управления | |
| CN103365809A (zh) | 安全信号处理系统 | |
| CN109842534A (zh) | 一种基于交换式fc仿真卡的设备测试验证方法 | |
| CN111538262B (zh) | 基于dsp和fpga的运载火箭计算机自检系统 | |
| CN212515798U (zh) | 一种箭载全三模冗余计算机体系架构 | |
| CN112232523B (zh) | 一种国产化人工智能计算设备 | |
| US20150204944A1 (en) | Programmable logic device and verification method therefor | |
| CN113553084B (zh) | 基于多fpga的在线配置系统及在线配置方法 | |
| RU101551U1 (ru) | Контроллер для управления сложным объектом | |
| EP3107212B1 (en) | Field programmable gate array comprising plurality of functional blocks and control device for a power plant | |
| CN105159195B (zh) | 冗余dcs系统及用于降低冗余dcs系统的核级cpu负荷的方法 | |
| KR101527674B1 (ko) | 백플레인, 이를 이용한 제어 시스템 및 방법 | |
| KR20060110362A (ko) | 프로그래머블 논리 회로 | |
| Jia et al. | Research on communication technology of complex system based on FPGA dual-port RAMs | |
| CN110929465A (zh) | 一种基于fpga工业器件可重构的可靠性设计系统与方法 | |
| RU77063U1 (ru) | Устройство сопряжения системы управления с объектом управления | |
| Marshall | Standardized SpaceWire solutions for next generation systems | |
| CN202748776U (zh) | 即时无缝备援系统 | |
| CN108170618A (zh) | 基于rs485总线的缓存结构及其软件控制方法 | |
| Carlier et al. | PROFIBUS-DP to G-64 configurable interface | |
| Tao et al. | Design and Implementation of Dynamic Reconfiguration Based on Heterogeneous Arrow Control Platform | |
| Montenegro et al. | Spacecraft area network (scan) for plug-and-play of devices | |
| Guzman et al. | High Reliable Remote Terminal Unit for Space Applications |